From: pascale.noyret Date: Thu, 24 Jun 2021 12:28:59 +0000 (+0200) Subject: suppression X-Git-Url: http://git.salome-platform.org/gitweb/?a=commitdiff_plain;h=360f2f55eeccb1a10684a840ead6e78a1701a8bb;p=tools%2Feficas.git suppression --- diff --git a/Adao/ADAO_Cata_V0_V7_7_0.py b/Adao/ADAO_Cata_V0_V7_7_0.py deleted file mode 100755 index b9e8c02b..00000000 --- a/Adao/ADAO_Cata_V0_V7_7_0.py +++ /dev/null @@ -1,1261 +0,0 @@ -#-*-coding:iso-8859-1-*- -# -# Copyright (C) 2008-2015 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 -# -# Author: Jean-Philippe Argaud, jean-philippe.argaud@edf.fr, EDF R&D - -# -------------------------------------------------------- -# Generated by AdaoCatalogGenerator on 2015-10-08 07:57:55 -# -------------------------------------------------------- - -import os, re -import Accas -from Accas import * - -JdC = JDC_CATA ( - code = 'ADAO', - execmodul = None, - regles = ( AU_MOINS_UN ('ASSIMILATION_STUDY','CHECKING_STUDY'), AU_PLUS_UN ('ASSIMILATION_STUDY','CHECKING_STUDY')), - ) -VERSION_CATALOGUE='V7_7_0' - -def NoCheckInNS(filename): - return 1 -NoCheckInNS.info = "" -def DirectOperatorInNS(filename): - if os.path.exists(filename): - fc = open(filename, 'r').readlines() - cr = re.compile("^def[\s]*DirectOperator[\s]*\(") - for ln in fc: - if cr.match(ln): return 1 - cr = re.compile("^DirectOperator[\s]*=") - for ln in fc: - if cr.match(ln): return 1 - return 0 -DirectOperatorInNS.info = u"The Python file has to contain explicitly a \"DirectOperator\" function definition with only one vector as argument." -def TangentOperatorInNS(filename): - if os.path.exists(filename): - fc = open(filename, 'r').readlines() - cr = re.compile("^def[\s]*TangentOperator[\s]*\(") - for ln in fc: - if cr.match(ln): return 1 - cr = re.compile("^TangentOperator[\s]*=") - for ln in fc: - if cr.match(ln): return 1 - return 0 -TangentOperatorInNS.info = u"The Python file has to contain explicitly a \"TangentOperator\" function definition with only one pair of vectors as argument." -def AdjointOperatorInNS(filename): - if os.path.exists(filename): - fc = open(filename, 'r').readlines() - cr = re.compile("^def[\s]*AdjointOperator[\s]*\(") - for ln in fc: - if cr.match(ln): return 1 - cr = re.compile("^AdjointOperator[\s]*=") - for ln in fc: - if cr.match(ln): return 1 - return 0 -AdjointOperatorInNS.info = u"The Python file has to contain explicitly an \"AdjointOperator\" function definition with only one pair of vectors as argument." - -def F_VectorSerie(statut, fv=NoCheckInNS) : return FACT( - statut = statut, - FROM = SIMP(statut = "o", typ = "TXM", into=("String", "Script", ), defaut="Script"), - SCRIPT_DATA = BLOC ( condition = " FROM in ( 'Script', ) ", - SCRIPT_FILE = SIMP(statut = "o", typ = "FichierNoAbs", validators=[OnlyStr(), FileExtVal('py'), FunctionVal(fv)], fr="En attente d'un nom de fichier script, avec ou sans le chemin complet pour le trouver, contenant si ariable interne de meme nom que le concept parent", ang="Waiting for a script file name, with or without the full path to find it, containing if necessary the definition of an internal variable of the same name as the parent concept"), - ), - STRING_DATA = BLOC ( condition = " FROM in ( 'String', ) ", - STRING = SIMP(statut = "o", typ = "TXM", fr="En attente d'une chaine de caractères entre guillements. Pour construire un vecteur ou une matrice, ce doit être une suite de nombres, utilisant un espace ou une virgule pour séparer deux éléments et un point-virgule pour séparer deux lignes", ang="Waiting for a string in quotes. To build a vector or a matrix, it has to be a float serie, using a space or comma to separate two elements in a line, a semi-colon to separate rows"), - ), - SCRIPTWITHFUNCTIONS_DATA = BLOC ( condition = " FROM in ( 'ScriptWithFunctions', ) ", - SCRIPTWITHFUNCTIONS_FILE = SIMP(statut = "o", typ = "FichierNoAbs", validators=[OnlyStr(), FileExtVal('py'), FunctionVal(DirectOperatorInNS), FunctionVal(TangentOperatorInNS), FunctionVal(AdjointOperatorInNS)], fr="En attente d'un nom de fichier script, avec ou sans le chemin complet pour le trouver, contenant en variables internes trois fonctions de calcul nommées DirectOperator, TangentOperator et AdjointOperator", ang="Waiting for a script file name, with or without the full path to find it, containing as internal variables three computation functions named DirectOperator, TangentOperator and AdjointOperator"), - ), - SCRIPTWITHONEFUNCTION_DATA = BLOC ( condition = " FROM in ( 'ScriptWithOneFunction', ) ", - SCRIPTWITHONEFUNCTION_FILE = SIMP(statut = "o", typ = "FichierNoAbs", validators=[OnlyStr(), FileExtVal('py'), FunctionVal(DirectOperatorInNS)], fr="En attente d'un nom de fichier script, avec ou sans le chemin complet pour le trouver, contenant en variable interne une seule fonction de calcul nommée DirectOperator", ang="Waiting for a script file name, with or without the full path to find it, containing as internal variable only one function named DirectOperator"), - DifferentialIncrement = SIMP(statut="o", typ = "R", val_min=0, val_max=1, defaut=0.01, fr="Incrément de la perturbation dX pour calculer la dérivée, construite en multipliant X par l'incrément en évitant les valeurs nulles", ang="Increment of dX perturbation to calculate the derivative, build multiplying X by the increment avoiding null values"), - CenteredFiniteDifference = SIMP(statut="o", typ = "I", into=(0, 1), defaut=0, fr="Formulation centrée (1) ou décentrée (0) pour la méthode des différences finies", ang="Centered (1) or uncentered (0) formulation for the finite differences method"), - EnableMultiProcessing = SIMP(statut="f", typ = "I", into=(0, 1), defaut=0, fr="Calculs élémentaires effectués en séquentiel (0) ou en parallèle (1) dans la méthode des différences finies", ang="Elementary calculations done sequentially (0) or in parallel (1) in the finite differences method"), - NumberOfProcesses = SIMP(statut="f", typ = "I", val_min=0, defaut=0, fr="Nombre de processus parallèles, 0 pour un contrôle automatique", ang="Number of parallel processes, 0 for automatic control"), - ), - SCRIPTWITHSWITCH_DATA = BLOC ( condition = " FROM in ( 'ScriptWithSwitch', ) ", - SCRIPTWITHSWITCH_FILE = SIMP(statut = "o", typ = "FichierNoAbs", validators=[OnlyStr(), FileExtVal('py')], fr="En attente d'un nom de fichier script, avec ou sans le chemin complet pour le trouver, contenant un switch pour les calculs direct, tangent et adjoint", ang="Waiting for a script file name, with or without the full path to find it, containing a switch for direct, tangent and adjoint computations"), - ), - TEMPLATE_DATA = BLOC (condition = " FROM in ( 'Template', ) ", - Template = SIMP(statut = "o", typ = "TXM", min=1, max=1, defaut = "AnalysisPrinter", into=("AnalysisPrinter", "AnalysisSaver", "AnalysisPrinterAndSaver")), - AnalysisPrinter = BLOC (condition = " Template == 'AnalysisPrinter' ", - ValueTemplate = SIMP(statut = "o", typ = "TXM", min=1, max=1, defaut = "import numpy\nxa=numpy.ravel(ADD.get('Analysis')[-1])\nprint 'Analysis:',xa" ), - ), - AnalysisSaver = BLOC (condition = " Template == 'AnalysisSaver' ", - ValueTemplate = SIMP(statut = "o", typ = "TXM", min=1, max=1, defaut = "import numpy\nxa=numpy.ravel(ADD.get('Analysis')[-1])\nf='/tmp/analysis.txt'\nprint 'Analysis saved in \"%s\"'%f\nnumpy.savetxt(f,xa)" ), - ), - AnalysisPrinterAndSaver = BLOC (condition = " Template == 'AnalysisPrinterAndSaver' ", - ValueTemplate = SIMP(statut = "o", typ = "TXM", min=1, max=1, defaut = "import numpy\nxa=numpy.ravel(ADD.get('Analysis')[-1])\nprint 'Analysis:',xa\nf='/tmp/analysis.txt'\nprint 'Analysis saved in \"%s\"'%f\nnumpy.savetxt(f,xa)" ), - ), - ), - ) - -def F_Function(statut, fv=NoCheckInNS) : return FACT( - statut = statut, - FROM = SIMP(statut = "o", typ = "TXM", into=("ScriptWithOneFunction", "ScriptWithFunctions", "ScriptWithSwitch", "FunctionDict", ), defaut="ScriptWithOneFunction"), - SCRIPT_DATA = BLOC ( condition = " FROM in ( 'Script', ) ", - SCRIPT_FILE = SIMP(statut = "o", typ = "FichierNoAbs", validators=[OnlyStr(), FileExtVal('py'), FunctionVal(fv)], fr="En attente d'un nom de fichier script, avec ou sans le chemin complet pour le trouver, contenant si nécessaire la définition d'une variable interne de même nom que le concept parent", ang="Waiting for a script file name, with or without the full path to find it, containing if necessary the definition of an internal variable of the same name as the parent concept"), - ), - STRING_DATA = BLOC ( condition = " FROM in ( 'String', ) ", - STRING = SIMP(statut = "o", typ = "TXM", fr="En attente d'une chaine de caractères entre guillements. Pour construire un vecteur ou une matrice, ce doit être une suite de nombres, utilisant un espace ou une virgule pour séparer deux éléments et un point-virgule pour séparer deux lignes", ang="Waiting for a string in quotes. To build a vector or a matrix, it has to be a float serie, using a space or comma to separate two elements in a line, a semi-colon to separate rows"), - ), - SCRIPTWITHFUNCTIONS_DATA = BLOC ( condition = " FROM in ( 'ScriptWithFunctions', ) ", - SCRIPTWITHFUNCTIONS_FILE = SIMP(statut = "o", typ = "FichierNoAbs", validators=[OnlyStr(), FileExtVal('py'), FunctionVal(DirectOperatorInNS), FunctionVal(TangentOperatorInNS), FunctionVal(AdjointOperatorInNS)], fr="En attente d'un nom de fichier script, avec ou sans le chemin complet pour le trouver, contenant en variables internes trois fonctions de calcul nommées DirectOperator, TangentOperator et AdjointOperator", ang="Waiting for a script file name, with or without the full path to find it, containing as internal variables three computation functions named DirectOperator, TangentOperator and AdjointOperator"), - ), - SCRIPTWITHONEFUNCTION_DATA = BLOC ( condition = " FROM in ( 'ScriptWithOneFunction', ) ", - SCRIPTWITHONEFUNCTION_FILE = SIMP(statut = "o", typ = "FichierNoAbs", validators=[OnlyStr(), FileExtVal('py'), FunctionVal(DirectOperatorInNS)], fr="En attente d'un nom de fichier script, avec ou sans le chemin complet pour le trouver, contenant en variable interne une seule fonction de calcul nommée DirectOperator", ang="Waiting for a script file name, with or without the full path to find it, containing as internal variable only one function named DirectOperator"), - DifferentialIncrement = SIMP(statut="o", typ = "R", val_min=0, val_max=1, defaut=0.01, fr="Incrément de la perturbation dX pour calculer la dérivée, construite en multipliant X par l'incrément en évitant les valeurs nulles", ang="Increment of dX perturbation to calculate the derivative, build multiplying X by the increment avoiding null values"), - CenteredFiniteDifference = SIMP(statut="o", typ = "I", into=(0, 1), defaut=0, fr="Formulation centrée (1) ou décentrée (0) pour la méthode des différences finies", ang="Centered (1) or uncentered (0) formulation for the finite differences method"), - EnableMultiProcessing = SIMP(statut="f", typ = "I", into=(0, 1), defaut=0, fr="Calculs élémentaires effectués en séquentiel (0) ou en parallèle (1) dans la méthode des différences finies", ang="Elementary calculations done sequentially (0) or in parallel (1) in the finite differences method"), - NumberOfProcesses = SIMP(statut="f", typ = "I", val_min=0, defaut=0, fr="Nombre de processus parallèles, 0 pour un contrôle automatique", ang="Number of parallel processes, 0 for automatic control"), - ), - SCRIPTWITHSWITCH_DATA = BLOC ( condition = " FROM in ( 'ScriptWithSwitch', ) ", - SCRIPTWITHSWITCH_FILE = SIMP(statut = "o", typ = "FichierNoAbs", validators=[OnlyStr(), FileExtVal('py')], fr="En attente d'un nom de fichier script, avec ou sans le chemin complet pour le trouver, contenant un switch pour les calculs direct, tangent et adjoint", ang="Waiting for a script file name, with or without the full path to find it, containing a switch for direct, tangent and adjoint computations"), - ), - TEMPLATE_DATA = BLOC (condition = " FROM in ( 'Template', ) ", - Template = SIMP(statut = "o", typ = "TXM", min=1, max=1, defaut = "AnalysisPrinter", into=("AnalysisPrinter", "AnalysisSaver", "AnalysisPrinterAndSaver")), - AnalysisPrinter = BLOC (condition = " Template == 'AnalysisPrinter' ", - ValueTemplate = SIMP(statut = "o", typ = "TXM", min=1, max=1, defaut = "import numpy\nxa=numpy.ravel(ADD.get('Analysis')[-1])\nprint 'Analysis:',xa" ), - ), - AnalysisSaver = BLOC (condition = " Template == 'AnalysisSaver' ", - ValueTemplate = SIMP(statut = "o", typ = "TXM", min=1, max=1, defaut = "import numpy\nxa=numpy.ravel(ADD.get('Analysis')[-1])\nf='/tmp/analysis.txt'\nprint 'Analysis saved in \"%s\"'%f\nnumpy.savetxt(f,xa)" ), - ), - AnalysisPrinterAndSaver = BLOC (condition = " Template == 'AnalysisPrinterAndSaver' ", - ValueTemplate = SIMP(statut = "o", typ = "TXM", min=1, max=1, defaut = "import numpy\nxa=numpy.ravel(ADD.get('Analysis')[-1])\nprint 'Analysis:',xa\nf='/tmp/analysis.txt'\nprint 'Analysis saved in \"%s\"'%f\nnumpy.savetxt(f,xa)" ), - ), - ), - ) - -def F_Matrix(statut, fv=NoCheckInNS) : return FACT( - statut = statut, - FROM = SIMP(statut = "o", typ = "TXM", into=("String", "Script", ), defaut="Script"), - SCRIPT_DATA = BLOC ( condition = " FROM in ( 'Script', ) ", - SCRIPT_FILE = SIMP(statut = "o", typ = "FichierNoAbs", validators=[OnlyStr(), FileExtVal('py'), FunctionVal(fv)], fr="En attente d'un nom de fichier script, avec ou sans le chemin complet pour le trouver, contenant si nécessaire la définition d'une variable interne de même nom que le concept parent", ang="Waiting for a script file name, with or without the full path to find it, containing if necessary the definition of an internal variable of the same name as the parent concept"), - ), - STRING_DATA = BLOC ( condition = " FROM in ( 'String', ) ", - STRING = SIMP(statut = "o", typ = "TXM", fr="En attente d'une chaine de caractères entre guillements. Pour construire un vecteur ou une matrice, ce doit être une suite de nombres, utilisant un espace ou une virgule pour séparer deux éléments et un point-virgule pour séparer deux lignes", ang="Waiting for a string in quotes. To build a vector or a matrix, it has to be a float serie, using a space or comma to separate two elements in a line, a semi-colon to separate rows"), - ), - SCRIPTWITHFUNCTIONS_DATA = BLOC ( condition = " FROM in ( 'ScriptWithFunctions', ) ", - SCRIPTWITHFUNCTIONS_FILE = SIMP(statut = "o", typ = "FichierNoAbs", validators=[OnlyStr(), FileExtVal('py'), FunctionVal(DirectOperatorInNS), FunctionVal(TangentOperatorInNS), FunctionVal(AdjointOperatorInNS)], fr="En attente d'un nom de fichier script, avec ou sans le chemin complet pour le trouver, contenant en variables internes trois fonctions de calcul nommées DirectOperator, TangentOperator et AdjointOperator", ang="Waiting for a script file name, with or without the full path to find it, containing as internal variables three computation functions named DirectOperator, TangentOperator and AdjointOperator"), - ), - SCRIPTWITHONEFUNCTION_DATA = BLOC ( condition = " FROM in ( 'ScriptWithOneFunction', ) ", - SCRIPTWITHONEFUNCTION_FILE = SIMP(statut = "o", typ = "FichierNoAbs", validators=[OnlyStr(), FileExtVal('py'), FunctionVal(DirectOperatorInNS)], fr="En attente d'un nom de fichier script, avec ou sans le chemin complet pour le trouver, contenant en variable interne une seule fonction de calcul nommée DirectOperator", ang="Waiting for a script file name, with or without the full path to find it, containing as internal variable only one function named DirectOperator"), - DifferentialIncrement = SIMP(statut="o", typ = "R", val_min=0, val_max=1, defaut=0.01, fr="Incrément de la perturbation dX pour calculer la dérivée, construite en multipliant X par l'incrément en évitant les valeurs nulles", ang="Increment of dX perturbation to calculate the derivative, build multiplying X by the increment avoiding null values"), - CenteredFiniteDifference = SIMP(statut="o", typ = "I", into=(0, 1), defaut=0, fr="Formulation centrée (1) ou décentrée (0) pour la méthode des différences finies", ang="Centered (1) or uncentered (0) formulation for the finite differences method"), - EnableMultiProcessing = SIMP(statut="f", typ = "I", into=(0, 1), defaut=0, fr="Calculs élémentaires effectués en séquentiel (0) ou en parallèle (1) dans la méthode des différences finies", ang="Elementary calculations done sequentially (0) or in parallel (1) in the finite differences method"), - NumberOfProcesses = SIMP(statut="f", typ = "I", val_min=0, defaut=0, fr="Nombre de processus parallèles, 0 pour un contrôle automatique", ang="Number of parallel processes, 0 for automatic control"), - ), - SCRIPTWITHSWITCH_DATA = BLOC ( condition = " FROM in ( 'ScriptWithSwitch', ) ", - SCRIPTWITHSWITCH_FILE = SIMP(statut = "o", typ = "FichierNoAbs", validators=[OnlyStr(), FileExtVal('py')], fr="En attente d'un nom de fichier script, avec ou sans le chemin complet pour le trouver, contenant un switch pour les calculs direct, tangent et adjoint", ang="Waiting for a script file name, with or without the full path to find it, containing a switch for direct, tangent and adjoint computations"), - ), - TEMPLATE_DATA = BLOC (condition = " FROM in ( 'Template', ) ", - Template = SIMP(statut = "o", typ = "TXM", min=1, max=1, defaut = "AnalysisPrinter", into=("AnalysisPrinter", "AnalysisSaver", "AnalysisPrinterAndSaver")), - AnalysisPrinter = BLOC (condition = " Template == 'AnalysisPrinter' ", - ValueTemplate = SIMP(statut = "o", typ = "TXM", min=1, max=1, defaut = "import numpy\nxa=numpy.ravel(ADD.get('Analysis')[-1])\nprint 'Analysis:',xa" ), - ), - AnalysisSaver = BLOC (condition = " Template == 'AnalysisSaver' ", - ValueTemplate = SIMP(statut = "o", typ = "TXM", min=1, max=1, defaut = "import numpy\nxa=numpy.ravel(ADD.get('Analysis')[-1])\nf='/tmp/analysis.txt'\nprint 'Analysis saved in \"%s\"'%f\nnumpy.savetxt(f,xa)" ), - ), - AnalysisPrinterAndSaver = BLOC (condition = " Template == 'AnalysisPrinterAndSaver' ", - ValueTemplate = SIMP(statut = "o", typ = "TXM", min=1, max=1, defaut = "import numpy\nxa=numpy.ravel(ADD.get('Analysis')[-1])\nprint 'Analysis:',xa\nf='/tmp/analysis.txt'\nprint 'Analysis saved in \"%s\"'%f\nnumpy.savetxt(f,xa)" ), - ), - ), - ) - -def F_DiagonalSparseMatrix(statut, fv=NoCheckInNS) : return FACT( - statut = statut, - FROM = SIMP(statut = "o", typ = "TXM", into=("String", "Script", ), defaut="String"), - SCRIPT_DATA = BLOC ( condition = " FROM in ( 'Script', ) ", - SCRIPT_FILE = SIMP(statut = "o", typ = "FichierNoAbs", validators=[OnlyStr(), FileExtVal('py'), FunctionVal(fv)], fr="En attente d'un nom de fichier script, avec ou sans le chemin complet pour le trouver, contenant si nécessaire la définition d'une variable interne de même nom que le concept parent", ang="Waiting for a script file name, with or without the full path to find it, containing if necessary the definition of an internal variable of the same name as the parent concept"), - ), - STRING_DATA = BLOC ( condition = " FROM in ( 'String', ) ", - STRING = SIMP(statut = "o", typ = "TXM", fr="En attente d'une chaine de caractères entre guillements. Pour construire un vecteur ou une matrice, ce doit être une suite de nombres, utilisant un espace ou une virgule pour séparer deux éléments et un point-virgule pour séparer deux lignes", ang="Waiting for a string in quotes. To build a vector or a matrix, it has to be a float serie, using a space or comma to separate two elements in a line, a semi-colon to separate rows"), - ), - SCRIPTWITHFUNCTIONS_DATA = BLOC ( condition = " FROM in ( 'ScriptWithFunctions', ) ", - SCRIPTWITHFUNCTIONS_FILE = SIMP(statut = "o", typ = "FichierNoAbs", validators=[OnlyStr(), FileExtVal('py'), FunctionVal(DirectOperatorInNS), FunctionVal(TangentOperatorInNS), FunctionVal(AdjointOperatorInNS)], fr="En attente d'un nom de fichier script, avec ou sans le chemin complet pour le trouver, contenant en variables internes trois fonctions de calcul nommées DirectOperator, TangentOperator et AdjointOperator", ang="Waiting for a script file name, with or without the full path to find it, containing as internal variables three computation functions named DirectOperator, TangentOperator and AdjointOperator"), - ), - SCRIPTWITHONEFUNCTION_DATA = BLOC ( condition = " FROM in ( 'ScriptWithOneFunction', ) ", - SCRIPTWITHONEFUNCTION_FILE = SIMP(statut = "o", typ = "FichierNoAbs", validators=[OnlyStr(), FileExtVal('py'), FunctionVal(DirectOperatorInNS)], fr="En attente d'un nom de fichier script, avec ou sans le chemin complet pour le trouver, contenant en variable interne une seule fonction de calcul nommée DirectOperator", ang="Waiting for a script file name, with or without the full path to find it, containing as internal variable only one function named DirectOperator"), - DifferentialIncrement = SIMP(statut="o", typ = "R", val_min=0, val_max=1, defaut=0.01, fr="Incrément de la perturbation dX pour calculer la dérivée, construite en multipliant X par l'incrément en évitant les valeurs nulles", ang="Increment of dX perturbation to calculate the derivative, build multiplying X by the increment avoiding null values"), - CenteredFiniteDifference = SIMP(statut="o", typ = "I", into=(0, 1), defaut=0, fr="Formulation centrée (1) ou décentrée (0) pour la méthode des différences finies", ang="Centered (1) or uncentered (0) formulation for the finite differences method"), - EnableMultiProcessing = SIMP(statut="f", typ = "I", into=(0, 1), defaut=0, fr="Calculs élémentaires effectués en séquentiel (0) ou en parallèle (1) dans la méthode des différences finies", ang="Elementary calculations done sequentially (0) or in parallel (1) in the finite differences method"), - NumberOfProcesses = SIMP(statut="f", typ = "I", val_min=0, defaut=0, fr="Nombre de processus parallèles, 0 pour un contrôle automatique", ang="Number of parallel processes, 0 for automatic control"), - ), - SCRIPTWITHSWITCH_DATA = BLOC ( condition = " FROM in ( 'ScriptWithSwitch', ) ", - SCRIPTWITHSWITCH_FILE = SIMP(statut = "o", typ = "FichierNoAbs", validators=[OnlyStr(), FileExtVal('py')], fr="En attente d'un nom de fichier script, avec ou sans le chemin complet pour le trouver, contenant un switch pour les calculs direct, tangent et adjoint", ang="Waiting for a script file name, with or without the full path to find it, containing a switch for direct, tangent and adjoint computations"), - ), - TEMPLATE_DATA = BLOC (condition = " FROM in ( 'Template', ) ", - Template = SIMP(statut = "o", typ = "TXM", min=1, max=1, defaut = "AnalysisPrinter", into=("AnalysisPrinter", "AnalysisSaver", "AnalysisPrinterAndSaver")), - AnalysisPrinter = BLOC (condition = " Template == 'AnalysisPrinter' ", - ValueTemplate = SIMP(statut = "o", typ = "TXM", min=1, max=1, defaut = "import numpy\nxa=numpy.ravel(ADD.get('Analysis')[-1])\nprint 'Analysis:',xa" ), - ), - AnalysisSaver = BLOC (condition = " Template == 'AnalysisSaver' ", - ValueTemplate = SIMP(statut = "o", typ = "TXM", min=1, max=1, defaut = "import numpy\nxa=numpy.ravel(ADD.get('Analysis')[-1])\nf='/tmp/analysis.txt'\nprint 'Analysis saved in \"%s\"'%f\nnumpy.savetxt(f,xa)" ), - ), - AnalysisPrinterAndSaver = BLOC (condition = " Template == 'AnalysisPrinterAndSaver' ", - ValueTemplate = SIMP(statut = "o", typ = "TXM", min=1, max=1, defaut = "import numpy\nxa=numpy.ravel(ADD.get('Analysis')[-1])\nprint 'Analysis:',xa\nf='/tmp/analysis.txt'\nprint 'Analysis saved in \"%s\"'%f\nnumpy.savetxt(f,xa)" ), - ), - ), - ) - -def F_Vector(statut, fv=NoCheckInNS) : return FACT( - statut = statut, - FROM = SIMP(statut = "o", typ = "TXM", into=("String", "Script", ), defaut="Script"), - SCRIPT_DATA = BLOC ( condition = " FROM in ( 'Script', ) ", - SCRIPT_FILE = SIMP(statut = "o", typ = "FichierNoAbs", validators=[OnlyStr(), FileExtVal('py'), FunctionVal(fv)], fr="En attente d'un nom de fichier script, avec ou sans le chemin complet pour le trouver, contenant si nécessaire la définition d'une variable interne de même nom que le concept parent", ang="Waiting for a script file name, with or without the full path to find it, containing if necessary the definition of an internal variable of the same name as the parent concept"), - ), - STRING_DATA = BLOC ( condition = " FROM in ( 'String', ) ", - STRING = SIMP(statut = "o", typ = "TXM", fr="En attente d'une chaine de caractères entre guillements. Pour construire un vecteur ou une matrice, ce doit être une suite de nombres, utilisant un espace ou une virgule pour séparer deux éléments et un point-virgule pour séparer deux lignes", ang="Waiting for a string in quotes. To build a vector or a matrix, it has to be a float serie, using a space or comma to separate two elements in a line, a semi-colon to separate rows"), - ), - SCRIPTWITHFUNCTIONS_DATA = BLOC ( condition = " FROM in ( 'ScriptWithFunctions', ) ", - SCRIPTWITHFUNCTIONS_FILE = SIMP(statut = "o", typ = "FichierNoAbs", validators=[OnlyStr(), FileExtVal('py'), FunctionVal(DirectOperatorInNS), FunctionVal(TangentOperatorInNS), FunctionVal(AdjointOperatorInNS)], fr="En attente d'un nom de fichier script, avec ou sans le chemin complet pour le trouver, contenant en variables internes trois fonctions de calcul nommées DirectOperator, TangentOperator et AdjointOperator", ang="Waiting for a script file name, with or without the full path to find it, containing as internal variables three computation functions named DirectOperator, TangentOperator and AdjointOperator"), - ), - SCRIPTWITHONEFUNCTION_DATA = BLOC ( condition = " FROM in ( 'ScriptWithOneFunction', ) ", - SCRIPTWITHONEFUNCTION_FILE = SIMP(statut = "o", typ = "FichierNoAbs", validators=[OnlyStr(), FileExtVal('py'), FunctionVal(DirectOperatorInNS)], fr="En attente d'un nom de fichier script, avec ou sans le chemin complet pour le trouver, contenant en variable interne une seule fonction de calcul nommée DirectOperator", ang="Waiting for a script file name, with or without the full path to find it, containing as internal variable only one function named DirectOperator"), - DifferentialIncrement = SIMP(statut="o", typ = "R", val_min=0, val_max=1, defaut=0.01, fr="Incrément de la perturbation dX pour calculer la dérivée, construite en multipliant X par l'incrément en évitant les valeurs nulles", ang="Increment of dX perturbation to calculate the derivative, build multiplying X by the increment avoiding null values"), - CenteredFiniteDifference = SIMP(statut="o", typ = "I", into=(0, 1), defaut=0, fr="Formulation centrée (1) ou décentrée (0) pour la méthode des différences finies", ang="Centered (1) or uncentered (0) formulation for the finite differences method"), - EnableMultiProcessing = SIMP(statut="f", typ = "I", into=(0, 1), defaut=0, fr="Calculs élémentaires effectués en séquentiel (0) ou en parallèle (1) dans la méthode des différences finies", ang="Elementary calculations done sequentially (0) or in parallel (1) in the finite differences method"), - NumberOfProcesses = SIMP(statut="f", typ = "I", val_min=0, defaut=0, fr="Nombre de processus parallèles, 0 pour un contrôle automatique", ang="Number of parallel processes, 0 for automatic control"), - ), - SCRIPTWITHSWITCH_DATA = BLOC ( condition = " FROM in ( 'ScriptWithSwitch', ) ", - SCRIPTWITHSWITCH_FILE = SIMP(statut = "o", typ = "FichierNoAbs", validators=[OnlyStr(), FileExtVal('py')], fr="En attente d'un nom de fichier script, avec ou sans le chemin complet pour le trouver, contenant un switch pour les calculs direct, tangent et adjoint", ang="Waiting for a script file name, with or without the full path to find it, containing a switch for direct, tangent and adjoint computations"), - ), - TEMPLATE_DATA = BLOC (condition = " FROM in ( 'Template', ) ", - Template = SIMP(statut = "o", typ = "TXM", min=1, max=1, defaut = "AnalysisPrinter", into=("AnalysisPrinter", "AnalysisSaver", "AnalysisPrinterAndSaver")), - AnalysisPrinter = BLOC (condition = " Template == 'AnalysisPrinter' ", - ValueTemplate = SIMP(statut = "o", typ = "TXM", min=1, max=1, defaut = "import numpy\nxa=numpy.ravel(ADD.get('Analysis')[-1])\nprint 'Analysis:',xa" ), - ), - AnalysisSaver = BLOC (condition = " Template == 'AnalysisSaver' ", - ValueTemplate = SIMP(statut = "o", typ = "TXM", min=1, max=1, defaut = "import numpy\nxa=numpy.ravel(ADD.get('Analysis')[-1])\nf='/tmp/analysis.txt'\nprint 'Analysis saved in \"%s\"'%f\nnumpy.savetxt(f,xa)" ), - ), - AnalysisPrinterAndSaver = BLOC (condition = " Template == 'AnalysisPrinterAndSaver' ", - ValueTemplate = SIMP(statut = "o", typ = "TXM", min=1, max=1, defaut = "import numpy\nxa=numpy.ravel(ADD.get('Analysis')[-1])\nprint 'Analysis:',xa\nf='/tmp/analysis.txt'\nprint 'Analysis saved in \"%s\"'%f\nnumpy.savetxt(f,xa)" ), - ), - ), - ) - -def F_Dict(statut, fv=NoCheckInNS) : return FACT( - statut = statut, - FROM = SIMP(statut = "o", typ = "TXM", into=("String", "Script", ), defaut="Script"), - SCRIPT_DATA = BLOC ( condition = " FROM in ( 'Script', ) ", - SCRIPT_FILE = SIMP(statut = "o", typ = "FichierNoAbs", validators=[OnlyStr(), FileExtVal('py'), FunctionVal(fv)], fr="En attente d'un nom de fichier script, avec ou sans le chemin complet pour le trouver, contenant si nécessaire la définition d'une variable interne de même nom que le concept parent", ang="Waiting for a script file name, with or without the full path to find it, containing if necessary the definition of an internal variable of the same name as the parent concept"), - ), - STRING_DATA = BLOC ( condition = " FROM in ( 'String', ) ", - STRING = SIMP(statut = "o", typ = "TXM", fr="En attente d'une chaine de caractères entre guillements. Pour construire un vecteur ou une matrice, ce doit être une suite de nombres, utilisant un espace ou une virgule pour séparer deux éléments et un point-virgule pour séparer deux lignes", ang="Waiting for a string in quotes. To build a vector or a matrix, it has to be a float serie, using a space or comma to separate two elements in a line, a semi-colon to separate rows"), - ), - SCRIPTWITHFUNCTIONS_DATA = BLOC ( condition = " FROM in ( 'ScriptWithFunctions', ) ", - SCRIPTWITHFUNCTIONS_FILE = SIMP(statut = "o", typ = "FichierNoAbs", validators=[OnlyStr(), FileExtVal('py'), FunctionVal(DirectOperatorInNS), FunctionVal(TangentOperatorInNS), FunctionVal(AdjointOperatorInNS)], fr="En attente d'un nom de fichier script, avec ou sans le chemin complet pour le trouver, contenant en variables internes trois fonctions de calcul nommées DirectOperator, TangentOperator et AdjointOperator", ang="Waiting for a script file name, with or without the full path to find it, containing as internal variables three computation functions named DirectOperator, TangentOperator and AdjointOperator"), - ), - SCRIPTWITHONEFUNCTION_DATA = BLOC ( condition = " FROM in ( 'ScriptWithOneFunction', ) ", - SCRIPTWITHONEFUNCTION_FILE = SIMP(statut = "o", typ = "FichierNoAbs", validators=[OnlyStr(), FileExtVal('py'), FunctionVal(DirectOperatorInNS)], fr="En attente d'un nom de fichier script, avec ou sans le chemin complet pour le trouver, contenant en variable interne une seule fonction de calcul nommée DirectOperator", ang="Waiting for a script file name, with or without the full path to find it, containing as internal variable only one function named DirectOperator"), - DifferentialIncrement = SIMP(statut="o", typ = "R", val_min=0, val_max=1, defaut=0.01, fr="Incrément de la perturbation dX pour calculer la dérivée, construite en multipliant X par l'incrément en évitant les valeurs nulles", ang="Increment of dX perturbation to calculate the derivative, build multiplying X by the increment avoiding null values"), - CenteredFiniteDifference = SIMP(statut="o", typ = "I", into=(0, 1), defaut=0, fr="Formulation centrée (1) ou décentrée (0) pour la méthode des différences finies", ang="Centered (1) or uncentered (0) formulation for the finite differences method"), - EnableMultiProcessing = SIMP(statut="f", typ = "I", into=(0, 1), defaut=0, fr="Calculs élémentaires effectués en séquentiel (0) ou en parallèle (1) dans la méthode des différences finies", ang="Elementary calculations done sequentially (0) or in parallel (1) in the finite differences method"), - NumberOfProcesses = SIMP(statut="f", typ = "I", val_min=0, defaut=0, fr="Nombre de processus parallèles, 0 pour un contrôle automatique", ang="Number of parallel processes, 0 for automatic control"), - ), - SCRIPTWITHSWITCH_DATA = BLOC ( condition = " FROM in ( 'ScriptWithSwitch', ) ", - SCRIPTWITHSWITCH_FILE = SIMP(statut = "o", typ = "FichierNoAbs", validators=[OnlyStr(), FileExtVal('py')], fr="En attente d'un nom de fichier script, avec ou sans le chemin complet pour le trouver, contenant un switch pour les calculs direct, tangent et adjoint", ang="Waiting for a script file name, with or without the full path to find it, containing a switch for direct, tangent and adjoint computations"), - ), - TEMPLATE_DATA = BLOC (condition = " FROM in ( 'Template', ) ", - Template = SIMP(statut = "o", typ = "TXM", min=1, max=1, defaut = "AnalysisPrinter", into=("AnalysisPrinter", "AnalysisSaver", "AnalysisPrinterAndSaver")), - AnalysisPrinter = BLOC (condition = " Template == 'AnalysisPrinter' ", - ValueTemplate = SIMP(statut = "o", typ = "TXM", min=1, max=1, defaut = "import numpy\nxa=numpy.ravel(ADD.get('Analysis')[-1])\nprint 'Analysis:',xa" ), - ), - AnalysisSaver = BLOC (condition = " Template == 'AnalysisSaver' ", - ValueTemplate = SIMP(statut = "o", typ = "TXM", min=1, max=1, defaut = "import numpy\nxa=numpy.ravel(ADD.get('Analysis')[-1])\nf='/tmp/analysis.txt'\nprint 'Analysis saved in \"%s\"'%f\nnumpy.savetxt(f,xa)" ), - ), - AnalysisPrinterAndSaver = BLOC (condition = " Template == 'AnalysisPrinterAndSaver' ", - ValueTemplate = SIMP(statut = "o", typ = "TXM", min=1, max=1, defaut = "import numpy\nxa=numpy.ravel(ADD.get('Analysis')[-1])\nprint 'Analysis:',xa\nf='/tmp/analysis.txt'\nprint 'Analysis saved in \"%s\"'%f\nnumpy.savetxt(f,xa)" ), - ), - ), - ) - -def F_ScalarSparseMatrix(statut, fv=NoCheckInNS) : return FACT( - statut = statut, - FROM = SIMP(statut = "o", typ = "TXM", into=("String", "Script", ), defaut="String"), - SCRIPT_DATA = BLOC ( condition = " FROM in ( 'Script', ) ", - SCRIPT_FILE = SIMP(statut = "o", typ = "FichierNoAbs", validators=[OnlyStr(), FileExtVal('py'), FunctionVal(fv)], fr="En attente d'un nom de fichier script, avec ou sans le chemin complet pour le trouver, contenant si nécessaire la définition d'une variable interne de même nom que le concept parent", ang="Waiting for a script file name, with or without the full path to find it, containing if necessary the definition of an internal variable of the same name as the parent concept"), - ), - STRING_DATA = BLOC ( condition = " FROM in ( 'String', ) ", - STRING = SIMP(statut = "o", typ = "TXM", defaut="1.", fr="En attente d'une chaine de caractères entre guillements. Pour construire un vecteur ou une matrice, ce doit être une suite de nombres, utilisant un espace ou une virgule pour séparer deux éléments et un point-virgule pour séparer deux lignes", ang="Waiting for a string in quotes. To build a vector or a matrix, it has to be a float serie, using a space or comma to separate two elements in a line, a semi-colon to separate rows"), - ), - SCRIPTWITHFUNCTIONS_DATA = BLOC ( condition = " FROM in ( 'ScriptWithFunctions', ) ", - SCRIPTWITHFUNCTIONS_FILE = SIMP(statut = "o", typ = "FichierNoAbs", validators=[OnlyStr(), FileExtVal('py'), FunctionVal(DirectOperatorInNS), FunctionVal(TangentOperatorInNS), FunctionVal(AdjointOperatorInNS)], fr="En attente d'un nom de fichier script, avec ou sans le chemin complet pour le trouver, contenant en variables internes trois fonctions de calcul nommées DirectOperator, TangentOperator et AdjointOperator", ang="Waiting for a script file name, with or without the full path to find it, containing as internal variables three computation functions named DirectOperator, TangentOperator and AdjointOperator"), - ), - SCRIPTWITHONEFUNCTION_DATA = BLOC ( condition = " FROM in ( 'ScriptWithOneFunction', ) ", - SCRIPTWITHONEFUNCTION_FILE = SIMP(statut = "o", typ = "FichierNoAbs", validators=[OnlyStr(), FileExtVal('py'), FunctionVal(DirectOperatorInNS)], fr="En attente d'un nom de fichier script, avec ou sans le chemin complet pour le trouver, contenant en variable interne une seule fonction de calcul nommée DirectOperator", ang="Waiting for a script file name, with or without the full path to find it, containing as internal variable only one function named DirectOperator"), - DifferentialIncrement = SIMP(statut="o", typ = "R", val_min=0, val_max=1, defaut=0.01, fr="Incrément de la perturbation dX pour calculer la dérivée, construite en multipliant X par l'incrément en évitant les valeurs nulles", ang="Increment of dX perturbation to calculate the derivative, build multiplying X by the increment avoiding null values"), - CenteredFiniteDifference = SIMP(statut="o", typ = "I", into=(0, 1), defaut=0, fr="Formulation centrée (1) ou décentrée (0) pour la méthode des différences finies", ang="Centered (1) or uncentered (0) formulation for the finite differences method"), - EnableMultiProcessing = SIMP(statut="f", typ = "I", into=(0, 1), defaut=0, fr="Calculs élémentaires effectués en séquentiel (0) ou en parallèle (1) dans la méthode des différences finies", ang="Elementary calculations done sequentially (0) or in parallel (1) in the finite differences method"), - NumberOfProcesses = SIMP(statut="f", typ = "I", val_min=0, defaut=0, fr="Nombre de processus parallèles, 0 pour un contrôle automatique", ang="Number of parallel processes, 0 for automatic control"), - ), - SCRIPTWITHSWITCH_DATA = BLOC ( condition = " FROM in ( 'ScriptWithSwitch', ) ", - SCRIPTWITHSWITCH_FILE = SIMP(statut = "o", typ = "FichierNoAbs", validators=[OnlyStr(), FileExtVal('py')], fr="En attente d'un nom de fichier script, avec ou sans le chemin complet pour le trouver, contenant un switch pour les calculs direct, tangent et adjoint", ang="Waiting for a script file name, with or without the full path to find it, containing a switch for direct, tangent and adjoint computations"), - ), - TEMPLATE_DATA = BLOC (condition = " FROM in ( 'Template', ) ", - Template = SIMP(statut = "o", typ = "TXM", min=1, max=1, defaut = "AnalysisPrinter", into=("AnalysisPrinter", "AnalysisSaver", "AnalysisPrinterAndSaver")), - AnalysisPrinter = BLOC (condition = " Template == 'AnalysisPrinter' ", - ValueTemplate = SIMP(statut = "o", typ = "TXM", min=1, max=1, defaut = "import numpy\nxa=numpy.ravel(ADD.get('Analysis')[-1])\nprint 'Analysis:',xa" ), - ), - AnalysisSaver = BLOC (condition = " Template == 'AnalysisSaver' ", - ValueTemplate = SIMP(statut = "o", typ = "TXM", min=1, max=1, defaut = "import numpy\nxa=numpy.ravel(ADD.get('Analysis')[-1])\nf='/tmp/analysis.txt'\nprint 'Analysis saved in \"%s\"'%f\nnumpy.savetxt(f,xa)" ), - ), - AnalysisPrinterAndSaver = BLOC (condition = " Template == 'AnalysisPrinterAndSaver' ", - ValueTemplate = SIMP(statut = "o", typ = "TXM", min=1, max=1, defaut = "import numpy\nxa=numpy.ravel(ADD.get('Analysis')[-1])\nprint 'Analysis:',xa\nf='/tmp/analysis.txt'\nprint 'Analysis saved in \"%s\"'%f\nnumpy.savetxt(f,xa)" ), - ), - ), - ) - -def ObservationErrorInNS(filename): - if os.path.exists(filename): - fc = open(filename, 'r').readlines() - cr = re.compile("^ObservationError[\s]*=") - for ln in fc: - if cr.match(ln): return 1 - return 0 -ObservationErrorInNS.info = u"The Python file has to contain explicitly a \"ObservationError\" variable." -def F_ObservationError(statut, fv=NoCheckInNS) : return FACT( - statut=statut, - Stored = SIMP(statut="o", typ = "I", into=(0, 1), defaut=0, fr="Choix de stockage interne ou non du concept parent", ang="Choice of the storage or not of the parent concept"), - INPUT_TYPE = SIMP(statut="o", typ = "TXM", into=("Matrix", "ScalarSparseMatrix", "DiagonalSparseMatrix", ), defaut="ScalarSparseMatrix"), - Matrix = BLOC ( condition = " INPUT_TYPE in ( 'Matrix', ) ", - data = F_Matrix("o", fv), - ), - ScalarSparseMatrix = BLOC ( condition = " INPUT_TYPE in ( 'ScalarSparseMatrix', ) ", - data = F_ScalarSparseMatrix("o", fv), - ), - DiagonalSparseMatrix = BLOC ( condition = " INPUT_TYPE in ( 'DiagonalSparseMatrix', ) ", - data = F_DiagonalSparseMatrix("o", fv), - ), - ) - -def ObservationInNS(filename): - if os.path.exists(filename): - fc = open(filename, 'r').readlines() - cr = re.compile("^Observation[\s]*=") - for ln in fc: - if cr.match(ln): return 1 - return 0 -ObservationInNS.info = u"The Python file has to contain explicitly a \"Observation\" variable." -def F_Observation(statut, fv=NoCheckInNS) : return FACT( - statut=statut, - Stored = SIMP(statut="o", typ = "I", into=(0, 1), defaut=0, fr="Choix de stockage interne ou non du concept parent", ang="Choice of the storage or not of the parent concept"), - INPUT_TYPE = SIMP(statut="o", typ = "TXM", into=("Vector", "VectorSerie", ), defaut="Vector"), - Vector = BLOC ( condition = " INPUT_TYPE in ( 'Vector', ) ", - data = F_Vector("o", fv), - ), - VectorSerie = BLOC ( condition = " INPUT_TYPE in ( 'VectorSerie', ) ", - data = F_VectorSerie("o", fv), - ), - ) - -def BackgroundErrorInNS(filename): - if os.path.exists(filename): - fc = open(filename, 'r').readlines() - cr = re.compile("^BackgroundError[\s]*=") - for ln in fc: - if cr.match(ln): return 1 - return 0 -BackgroundErrorInNS.info = u"The Python file has to contain explicitly a \"BackgroundError\" variable." -def F_BackgroundError(statut, fv=NoCheckInNS) : return FACT( - statut=statut, - Stored = SIMP(statut="o", typ = "I", into=(0, 1), defaut=0, fr="Choix de stockage interne ou non du concept parent", ang="Choice of the storage or not of the parent concept"), - INPUT_TYPE = SIMP(statut="o", typ = "TXM", into=("Matrix", "ScalarSparseMatrix", "DiagonalSparseMatrix", ), defaut="ScalarSparseMatrix"), - Matrix = BLOC ( condition = " INPUT_TYPE in ( 'Matrix', ) ", - data = F_Matrix("o", fv), - ), - ScalarSparseMatrix = BLOC ( condition = " INPUT_TYPE in ( 'ScalarSparseMatrix', ) ", - data = F_ScalarSparseMatrix("o", fv), - ), - DiagonalSparseMatrix = BLOC ( condition = " INPUT_TYPE in ( 'DiagonalSparseMatrix', ) ", - data = F_DiagonalSparseMatrix("o", fv), - ), - ) - -def ObservationOperatorInNS(filename): - if os.path.exists(filename): - fc = open(filename, 'r').readlines() - cr = re.compile("^ObservationOperator[\s]*=") - for ln in fc: - if cr.match(ln): return 1 - return 0 -ObservationOperatorInNS.info = u"The Python file has to contain explicitly a \"ObservationOperator\" variable." -def F_ObservationOperator(statut, fv=NoCheckInNS) : return FACT( - statut=statut, - Stored = SIMP(statut="o", typ = "I", into=(0, 1), defaut=0, fr="Choix de stockage interne ou non du concept parent", ang="Choice of the storage or not of the parent concept"), - INPUT_TYPE = SIMP(statut="o", typ = "TXM", into=("Matrix", "Function", ), defaut="Function"), - Matrix = BLOC ( condition = " INPUT_TYPE in ( 'Matrix', ) ", - data = F_Matrix("o", fv), - ), - Function = BLOC ( condition = " INPUT_TYPE in ( 'Function', ) ", - data = F_Function("o", fv), - ), - ) - -def CheckingPointInNS(filename): - if os.path.exists(filename): - fc = open(filename, 'r').readlines() - cr = re.compile("^CheckingPoint[\s]*=") - for ln in fc: - if cr.match(ln): return 1 - return 0 -CheckingPointInNS.info = u"The Python file has to contain explicitly a \"CheckingPoint\" variable." -def F_CheckingPoint(statut, fv=NoCheckInNS) : return FACT( - statut=statut, - Stored = SIMP(statut="o", typ = "I", into=(0, 1), defaut=0, fr="Choix de stockage interne ou non du concept parent", ang="Choice of the storage or not of the parent concept"), - INPUT_TYPE = SIMP(statut="o", typ = "TXM", into=("Vector", ), defaut="Vector"), - Vector = BLOC ( condition = " INPUT_TYPE in ( 'Vector', ) ", - data = F_Vector("o", fv), - ), - ) - -def ControlInputInNS(filename): - if os.path.exists(filename): - fc = open(filename, 'r').readlines() - cr = re.compile("^ControlInput[\s]*=") - for ln in fc: - if cr.match(ln): return 1 - return 0 -ControlInputInNS.info = u"The Python file has to contain explicitly a \"ControlInput\" variable." -def F_ControlInput(statut, fv=NoCheckInNS) : return FACT( - statut=statut, - Stored = SIMP(statut="o", typ = "I", into=(0, 1), defaut=0, fr="Choix de stockage interne ou non du concept parent", ang="Choice of the storage or not of the parent concept"), - INPUT_TYPE = SIMP(statut="o", typ = "TXM", into=("Vector", "VectorSerie", ), defaut="Vector"), - Vector = BLOC ( condition = " INPUT_TYPE in ( 'Vector', ) ", - data = F_Vector("o", fv), - ), - VectorSerie = BLOC ( condition = " INPUT_TYPE in ( 'VectorSerie', ) ", - data = F_VectorSerie("o", fv), - ), - ) - -def BackgroundInNS(filename): - if os.path.exists(filename): - fc = open(filename, 'r').readlines() - cr = re.compile("^Background[\s]*=") - for ln in fc: - if cr.match(ln): return 1 - return 0 -BackgroundInNS.info = u"The Python file has to contain explicitly a \"Background\" variable." -def F_Background(statut, fv=NoCheckInNS) : return FACT( - statut=statut, - Stored = SIMP(statut="o", typ = "I", into=(0, 1), defaut=0, fr="Choix de stockage interne ou non du concept parent", ang="Choice of the storage or not of the parent concept"), - INPUT_TYPE = SIMP(statut="o", typ = "TXM", into=("Vector", "VectorSerie", ), defaut="Vector"), - Vector = BLOC ( condition = " INPUT_TYPE in ( 'Vector', ) ", - data = F_Vector("o", fv), - ), - VectorSerie = BLOC ( condition = " INPUT_TYPE in ( 'VectorSerie', ) ", - data = F_VectorSerie("o", fv), - ), - ) - -def AlgorithmParametersInNS(filename): - if os.path.exists(filename): - fc = open(filename, 'r').readlines() - cr = re.compile("^AlgorithmParameters[\s]*=") - for ln in fc: - if cr.match(ln): return 1 - return 0 -AlgorithmParametersInNS.info = u"The Python file has to contain explicitly a \"AlgorithmParameters\" variable." -def F_AlgorithmParameters(statut, fv=NoCheckInNS) : return FACT( - statut=statut, - - INPUT_TYPE = SIMP(statut="o", typ = "TXM", into=("Dict", ), defaut="Dict"), - Dict = BLOC ( condition = " INPUT_TYPE in ( 'Dict', ) ", - data = F_Dict("o", fv), - ), - ) - -def EvolutionErrorInNS(filename): - if os.path.exists(filename): - fc = open(filename, 'r').readlines() - cr = re.compile("^EvolutionError[\s]*=") - for ln in fc: - if cr.match(ln): return 1 - return 0 -EvolutionErrorInNS.info = u"The Python file has to contain explicitly a \"EvolutionError\" variable." -def F_EvolutionError(statut, fv=NoCheckInNS) : return FACT( - statut=statut, - Stored = SIMP(statut="o", typ = "I", into=(0, 1), defaut=0, fr="Choix de stockage interne ou non du concept parent", ang="Choice of the storage or not of the parent concept"), - INPUT_TYPE = SIMP(statut="o", typ = "TXM", into=("Matrix", "ScalarSparseMatrix", "DiagonalSparseMatrix", ), defaut="ScalarSparseMatrix"), - Matrix = BLOC ( condition = " INPUT_TYPE in ( 'Matrix', ) ", - data = F_Matrix("o", fv), - ), - ScalarSparseMatrix = BLOC ( condition = " INPUT_TYPE in ( 'ScalarSparseMatrix', ) ", - data = F_ScalarSparseMatrix("o", fv), - ), - DiagonalSparseMatrix = BLOC ( condition = " INPUT_TYPE in ( 'DiagonalSparseMatrix', ) ", - data = F_DiagonalSparseMatrix("o", fv), - ), - ) - -def UserDataInitInNS(filename): - if os.path.exists(filename): - fc = open(filename, 'r').readlines() - cr = re.compile("^UserDataInit[\s]*=") - for ln in fc: - if cr.match(ln): return 1 - return 0 -UserDataInitInNS.info = u"The Python file has to contain explicitly a \"UserDataInit\" variable." -def F_UserDataInit(statut, fv=NoCheckInNS) : return FACT( - statut=statut, - - INPUT_TYPE = SIMP(statut="o", typ = "TXM", into=("Dict", ), defaut="Dict"), - Dict = BLOC ( condition = " INPUT_TYPE in ( 'Dict', ) ", - data = F_Dict("o", fv), - ), - ) - -def EvolutionModelInNS(filename): - if os.path.exists(filename): - fc = open(filename, 'r').readlines() - cr = re.compile("^EvolutionModel[\s]*=") - for ln in fc: - if cr.match(ln): return 1 - return 0 -EvolutionModelInNS.info = u"The Python file has to contain explicitly a \"EvolutionModel\" variable." -def F_EvolutionModel(statut, fv=NoCheckInNS) : return FACT( - statut=statut, - Stored = SIMP(statut="o", typ = "I", into=(0, 1), defaut=0, fr="Choix de stockage interne ou non du concept parent", ang="Choice of the storage or not of the parent concept"), - INPUT_TYPE = SIMP(statut="o", typ = "TXM", into=("Matrix", "Function", ), defaut="Function"), - Matrix = BLOC ( condition = " INPUT_TYPE in ( 'Matrix', ) ", - data = F_Matrix("o", fv), - ), - Function = BLOC ( condition = " INPUT_TYPE in ( 'Function', ) ", - data = F_Function("o", fv), - ), - ) - -def F_UserPostAnalysis(statut, fv=NoCheckInNS) : return FACT( - statut = statut, - FROM = SIMP(statut = "o", typ = "TXM", into=("String", "Script", "Template", ), defaut="Template"), - SCRIPT_DATA = BLOC ( condition = " FROM in ( 'Script', ) ", - SCRIPT_FILE = SIMP(statut = "o", typ = "FichierNoAbs", validators=[OnlyStr(), FileExtVal('py'), FunctionVal(fv)], fr="En attente d'un nom de fichier script, avec ou sans le chemin complet pour le trouver, contenant si nécessaire la définition d'une variable interne de même nom que le concept parent", ang="Waiting for a script file name, with or without the full path to find it, containing if necessary the definition of an internal variable of the same name as the parent concept"), - ), - STRING_DATA = BLOC ( condition = " FROM in ( 'String', ) ", - STRING = SIMP(statut = "o", typ = "TXM", fr="En attente d'une chaine de caractères entre guillements. Pour construire un vecteur ou une matrice, ce doit être une suite de nombres, utilisant un espace ou une virgule pour séparer deux éléments et un point-virgule pour séparer deux lignes", ang="Waiting for a string in quotes. To build a vector or a matrix, it has to be a float serie, using a space or comma to separate two elements in a line, a semi-colon to separate rows"), - ), - SCRIPTWITHFUNCTIONS_DATA = BLOC ( condition = " FROM in ( 'ScriptWithFunctions', ) ", - SCRIPTWITHFUNCTIONS_FILE = SIMP(statut = "o", typ = "FichierNoAbs", validators=[OnlyStr(), FileExtVal('py'), FunctionVal(DirectOperatorInNS), FunctionVal(TangentOperatorInNS), FunctionVal(AdjointOperatorInNS)], fr="En attente d'un nom de fichier script, avec ou sans le chemin complet pour le trouver, contenant en variables internes trois fonctions de calcul nommées DirectOperator, TangentOperator et AdjointOperator", ang="Waiting for a script file name, with or without the full path to find it, containing as internal variables three computation functions named DirectOperator, TangentOperator and AdjointOperator"), - ), - SCRIPTWITHONEFUNCTION_DATA = BLOC ( condition = " FROM in ( 'ScriptWithOneFunction', ) ", - SCRIPTWITHONEFUNCTION_FILE = SIMP(statut = "o", typ = "FichierNoAbs", validators=[OnlyStr(), FileExtVal('py'), FunctionVal(DirectOperatorInNS)], fr="En attente d'un nom de fichier script, avec ou sans le chemin complet pour le trouver, contenant en variable interne une seule fonction de calcul nommée DirectOperator", ang="Waiting for a script file name, with or without the full path to find it, containing as internal variable only one function named DirectOperator"), - DifferentialIncrement = SIMP(statut="o", typ = "R", val_min=0, val_max=1, defaut=0.01, fr="Incrément de la perturbation dX pour calculer la dérivée, construite en multipliant X par l'incrément en évitant les valeurs nulles", ang="Increment of dX perturbation to calculate the derivative, build multiplying X by the increment avoiding null values"), - CenteredFiniteDifference = SIMP(statut="o", typ = "I", into=(0, 1), defaut=0, fr="Formulation centrée (1) ou décentrée (0) pour la méthode des différences finies", ang="Centered (1) or uncentered (0) formulation for the finite differences method"), - EnableMultiProcessing = SIMP(statut="f", typ = "I", into=(0, 1), defaut=0, fr="Calculs élémentaires effectués en séquentiel (0) ou en parallèle (1) dans la méthode des différences finies", ang="Elementary calculations done sequentially (0) or in parallel (1) in the finite differences method"), - NumberOfProcesses = SIMP(statut="f", typ = "I", val_min=0, defaut=0, fr="Nombre de processus parallèles, 0 pour un contrôle automatique", ang="Number of parallel processes, 0 for automatic control"), - ), - SCRIPTWITHSWITCH_DATA = BLOC ( condition = " FROM in ( 'ScriptWithSwitch', ) ", - SCRIPTWITHSWITCH_FILE = SIMP(statut = "o", typ = "FichierNoAbs", validators=[OnlyStr(), FileExtVal('py')], fr="En attente d'un nom de fichier script, avec ou sans le chemin complet pour le trouver, contenant un switch pour les calculs direct, tangent et adjoint", ang="Waiting for a script file name, with or without the full path to find it, containing a switch for direct, tangent and adjoint computations"), - ), - TEMPLATE_DATA = BLOC (condition = " FROM in ( 'Template', ) ", - Template = SIMP(statut = "o", typ = "TXM", min=1, max=1, defaut = "AnalysisPrinter", into=("AnalysisPrinter", "AnalysisSaver", "AnalysisPrinterAndSaver")), - AnalysisPrinter = BLOC (condition = " Template == 'AnalysisPrinter' ", - ValueTemplate = SIMP(statut = "o", typ = "TXM", min=1, max=1, defaut = "import numpy\nxa=numpy.ravel(ADD.get('Analysis')[-1])\nprint 'Analysis:',xa" ), - ), - AnalysisSaver = BLOC (condition = " Template == 'AnalysisSaver' ", - ValueTemplate = SIMP(statut = "o", typ = "TXM", min=1, max=1, defaut = "import numpy\nxa=numpy.ravel(ADD.get('Analysis')[-1])\nf='/tmp/analysis.txt'\nprint 'Analysis saved in \"%s\"'%f\nnumpy.savetxt(f,xa)" ), - ), - AnalysisPrinterAndSaver = BLOC (condition = " Template == 'AnalysisPrinterAndSaver' ", - ValueTemplate = SIMP(statut = "o", typ = "TXM", min=1, max=1, defaut = "import numpy\nxa=numpy.ravel(ADD.get('Analysis')[-1])\nprint 'Analysis:',xa\nf='/tmp/analysis.txt'\nprint 'Analysis saved in \"%s\"'%f\nnumpy.savetxt(f,xa)" ), - ), - ), - ) - -def F_InitChoice() : return ("Background", - "BackgroundError", - "Observation", - "ObservationError", - "ObservationOperator", - "EvolutionModel", - "EvolutionError", - "AlgorithmParameters", - "UserPostAnalysis", - ) - -def F_Init(statut) : return FACT(statut = statut, - INIT_FILE = SIMP(statut = "o", typ = "FichierNoAbs", validators=[OnlyStr(), FileExtVal('py')]), - TARGET_LIST = SIMP(statut = "o", typ = "TXM", min=1, max="**", into=F_InitChoice(), validators=(VerifExiste(2))), - ) - -def F_ObserverTemplate() : return BLOC(condition = " NodeType == 'Template' ", - Template = SIMP(statut = "o", typ = "TXM", min=1, max=1, defaut = "ValuePrinter", into=("ValuePrinter", "ValueSeriePrinter", "ValueSaver", "ValueSerieSaver", "ValuePrinterAndSaver", "ValueSeriePrinterAndSaver", "ValueGnuPlotter", "ValueSerieGnuPlotter", "ValuePrinterAndGnuPlotter", "ValueSeriePrinterAndGnuPlotter", "ValuePrinterSaverAndGnuPlotter", "ValueSeriePrinterSaverAndGnuPlotter", "ValueMean", "ValueStandardError", "ValueVariance", "ValueL2Norm", "ValueRMS")), - ValuePrinter = BLOC (condition = " Template == 'ValuePrinter' ", - ValueTemplate = SIMP(statut = "o", typ = "TXM", min=1, max=1, defaut = "print info, var[-1]", fr="Imprime sur la sortie standard la valeur courante de la variable", ang="Print on standard output the current value of the variable" ), - ), - ValueSeriePrinter = BLOC (condition = " Template == 'ValueSeriePrinter' ", - ValueTemplate = SIMP(statut = "o", typ = "TXM", min=1, max=1, defaut = "print info, var[:]", fr="Imprime sur la sortie standard la série des valeurs de la variable", ang="Print on standard output the value serie of the variable" ), - ), - ValueSaver = BLOC (condition = " Template == 'ValueSaver' ", - ValueTemplate = SIMP(statut = "o", typ = "TXM", min=1, max=1, defaut = "import numpy, re\nv=numpy.array(var[-1], ndmin=1)\nglobal istep\ntry:\n istep += 1\nexcept:\n istep = 0\nf='/tmp/value_%s_%05i.txt'%(info,istep)\nf=re.sub('\s','_',f)\nprint 'Value saved in \"%s\"'%f\nnumpy.savetxt(f,v)", fr="Enregistre la valeur courante de la variable dans un fichier du répertoire '/tmp' nommé 'value...txt' selon le nom de la variable et l'étape d'enregistrement", ang="Save the current value of the variable in a file of the '/tmp' directory named 'value...txt' from the variable name and the saving step" ), - ), - ValueSerieSaver = BLOC (condition = " Template == 'ValueSerieSaver' ", - ValueTemplate = SIMP(statut = "o", typ = "TXM", min=1, max=1, defaut = "import numpy, re\nv=numpy.array(var[:], ndmin=1)\nglobal istep\ntry:\n istep += 1\nexcept:\n istep = 0\nf='/tmp/value_%s_%05i.txt'%(info,istep)\nf=re.sub('\s','_',f)\nprint 'Value saved in \"%s\"'%f\nnumpy.savetxt(f,v)", fr="Enregistre la série des valeurs de la variable dans un fichier du répertoire '/tmp' nommé 'value...txt' selon le nom de la variable et l'étape", ang="Save the value serie of the variable in a file of the '/tmp' directory named 'value...txt' from the variable name and the saving step" ), - ), - ValuePrinterAndSaver = BLOC (condition = " Template == 'ValuePrinterAndSaver' ", - ValueTemplate = SIMP(statut = "o", typ = "TXM", min=1, max=1, defaut = "import numpy, re\nv=numpy.array(var[-1], ndmin=1)\nprint info,v\nglobal istep\ntry:\n istep += 1\nexcept:\n istep = 0\nf='/tmp/value_%s_%05i.txt'%(info,istep)\nf=re.sub('\s','_',f)\nprint 'Value saved in \"%s\"'%f\nnumpy.savetxt(f,v)", fr="Imprime sur la sortie standard et, en même temps, enregistre dans un fichier la valeur courante de la variable", ang="Print on standard output and, in the same time, save in a file the current value of the variable" ), - ), - ValueSeriePrinterAndSaver = BLOC (condition = " Template == 'ValueSeriePrinterAndSaver' ", - ValueTemplate = SIMP(statut = "o", typ = "TXM", min=1, max=1, defaut = "import numpy, re\nv=numpy.array(var[:], ndmin=1)\nprint info,v\nglobal istep\ntry:\n istep += 1\nexcept:\n istep = 0\nf='/tmp/value_%s_%05i.txt'%(info,istep)\nf=re.sub('\s','_',f)\nprint 'Value saved in \"%s\"'%f\nnumpy.savetxt(f,v)", fr="Imprime sur la sortie standard et, en même temps, enregistre dans un fichier la série des valeurs de la variable", ang="Print on standard output and, in the same time, save in a file the value serie of the variable" ), - ), - ValueGnuPlotter = BLOC (condition = " Template == 'ValueGnuPlotter' ", - ValueTemplate = SIMP(statut = "o", typ = "TXM", min=1, max=1, defaut = "import numpy, Gnuplot\nv=numpy.array(var[-1], ndmin=1)\nglobal ifig, gp\ntry:\n ifig += 1\n gp(' set style data lines')\nexcept:\n ifig = 0\n gp = Gnuplot.Gnuplot(persist=1)\n gp(' set style data lines')\ngp('set title \"%s (Figure %i)\"'%(info,ifig))\ngp.plot( Gnuplot.Data( v, with_='lines lw 2' ) )", fr="Affiche graphiquement avec Gnuplot la valeur courante de la variable", ang="Graphically plot with Gnuplot the current value of the variable" ), - ), - ValueSerieGnuPlotter = BLOC (condition = " Template == 'ValueSerieGnuPlotter' ", - ValueTemplate = SIMP(statut = "o", typ = "TXM", min=1, max=1, defaut = "import numpy, Gnuplot\nv=numpy.array(var[:], ndmin=1)\nglobal ifig, gp\ntry:\n ifig += 1\n gp(' set style data lines')\nexcept:\n ifig = 0\n gp = Gnuplot.Gnuplot(persist=1)\n gp(' set style data lines')\ngp('set title \"%s (Figure %i)\"'%(info,ifig))\ngp.plot( Gnuplot.Data( v, with_='lines lw 2' ) )", fr="Affiche graphiquement avec Gnuplot la série des valeurs de la variable", ang="Graphically plot with Gnuplot the value serie of the variable" ), - ), - ValuePrinterAndGnuPlotter = BLOC (condition = " Template == 'ValuePrinterAndGnuPlotter' ", - ValueTemplate = SIMP(statut = "o", typ = "TXM", min=1, max=1, defaut = "print info, var[-1]\nimport numpy, Gnuplot\nv=numpy.array(var[-1], ndmin=1)\nglobal ifig,gp\ntry:\n ifig += 1\n gp(' set style data lines')\nexcept:\n ifig = 0\n gp = Gnuplot.Gnuplot(persist=1)\n gp(' set style data lines')\ngp('set title \"%s (Figure %i)\"'%(info,ifig))\ngp.plot( Gnuplot.Data( v, with_='lines lw 2' ) )", fr="Imprime sur la sortie standard et, en même temps, affiche graphiquement avec Gnuplot la valeur courante de la variable", ang="Print on standard output and, in the same time, graphically plot with Gnuplot the current value of the variable" ), - ), - ValueSeriePrinterAndGnuPlotter = BLOC (condition = " Template == 'ValueSeriePrinterAndGnuPlotter' ", - ValueTemplate = SIMP(statut = "o", typ = "TXM", min=1, max=1, defaut = "print info, var[:] \nimport numpy, Gnuplot\nv=numpy.array(var[:], ndmin=1)\nglobal ifig,gp\ntry:\n ifig += 1\n gp(' set style data lines')\nexcept:\n ifig = 0\n gp = Gnuplot.Gnuplot(persist=1)\n gp(' set style data lines')\ngp('set title \"%s (Figure %i)\"'%(info,ifig))\ngp.plot( Gnuplot.Data( v, with_='lines lw 2' ) )", fr="Imprime sur la sortie standard et, en même temps, affiche graphiquement avec Gnuplot la série des valeurs de la variable", ang="Print on standard output and, in the same time, graphically plot with Gnuplot the value serie of the variable" ), - ), - ValuePrinterSaverAndGnuPlotter = BLOC (condition = " Template == 'ValuePrinterSaverAndGnuPlotter' ", - ValueTemplate = SIMP(statut = "o", typ = "TXM", min=1, max=1, defaut = "print info, var[-1]\nimport numpy, re\nv=numpy.array(var[-1], ndmin=1)\nglobal istep\ntry:\n istep += 1\nexcept:\n istep = 0\nf='/tmp/value_%s_%05i.txt'%(info,istep)\nf=re.sub('\s','_',f)\nprint 'Value saved in \"%s\"'%f\nnumpy.savetxt(f,v)\nimport Gnuplot\nglobal ifig,gp\ntry:\n ifig += 1\n gp(' set style data lines')\nexcept:\n ifig = 0\n gp = Gnuplot.Gnuplot(persist=1)\n gp(' set style data lines')\ngp('set title \"%s (Figure %i)\"'%(info,ifig))\ngp.plot( Gnuplot.Data( v, with_='lines lw 2' ) )", fr="Imprime sur la sortie standard et, en même temps, enregistre dans un fichier et affiche graphiquement la valeur courante de la variable ", ang="Print on standard output and, in the same, time save in a file and graphically plot the current value of the variable" ), - ), - ValueSeriePrinterSaverAndGnuPlotter = BLOC (condition = " Template == 'ValueSeriePrinterSaverAndGnuPlotter' ", - ValueTemplate = SIMP(statut = "o", typ = "TXM", min=1, max=1, defaut = "print info, var[:] \nimport numpy, re\nv=numpy.array(var[:], ndmin=1)\nglobal istep\ntry:\n istep += 1\nexcept:\n istep = 0\nf='/tmp/value_%s_%05i.txt'%(info,istep)\nf=re.sub('\s','_',f)\nprint 'Value saved in \"%s\"'%f\nnumpy.savetxt(f,v)\nimport Gnuplot\nglobal ifig,gp\ntry:\n ifig += 1\n gp(' set style data lines')\nexcept:\n ifig = 0\n gp = Gnuplot.Gnuplot(persist=1)\n gp(' set style data lines')\ngp('set title \"%s (Figure %i)\"'%(info,ifig))\ngp.plot( Gnuplot.Data( v, with_='lines lw 2' ) )", fr="Imprime sur la sortie standard et, en même temps, enregistre dans un fichier et affiche graphiquement la série des valeurs de la variable", ang="Print on standard output and, in the same, time save in a file and graphically plot the value serie of the variable" ), - ), - ValueMean = BLOC (condition = " Template == 'ValueMean' ", - ValueTemplate = SIMP(statut = "o", typ = "TXM", min=1, max=1, defaut = "import numpy\nprint info, numpy.nanmean(var[-1])", fr="Imprime sur la sortie standard la moyenne de la valeur courante de la variable", ang="Print on standard output the mean of the current value of the variable" ), - ), - ValueStandardError = BLOC (condition = " Template == 'ValueStandardError' ", - ValueTemplate = SIMP(statut = "o", typ = "TXM", min=1, max=1, defaut = "import numpy\nprint info, numpy.nanstd(var[-1])", fr="Imprime sur la sortie standard l'écart-type de la valeur courante de la variable", ang="Print on standard output the standard error of the current value of the variable" ), - ), - ValueVariance = BLOC (condition = " Template == 'ValueVariance' ", - ValueTemplate = SIMP(statut = "o", typ = "TXM", min=1, max=1, defaut = "import numpy\nprint info, numpy.nanvar(var[-1])", fr="Imprime sur la sortie standard la variance de la valeur courante de la variable", ang="Print on standard output the variance of the current value of the variable" ), - ), - ValueL2Norm = BLOC (condition = " Template == 'ValueL2Norm' ", - ValueTemplate = SIMP(statut = "o", typ = "TXM", min=1, max=1, defaut = "import numpy\nv = numpy.matrix( numpy.ravel( var[-1] ) )\nprint info, float( numpy.linalg.norm(v) )", fr="Imprime sur la sortie standard la norme L2 de la valeur courante de la variable", ang="Print on standard output the L2 norm of the current value of the variable" ), - ), - ValueRMS = BLOC (condition = " Template == 'ValueRMS' ", - ValueTemplate = SIMP(statut = "o", typ = "TXM", min=1, max=1, defaut = "import numpy\nv = numpy.matrix( numpy.ravel( var[-1] ) )\nprint info, float( numpy.sqrt((1./v.size)*(v*v.T)) )", fr="Imprime sur la sortie standard la racine de la moyenne des carrés (RMS), ou moyenne quadratique, de la valeur courante de la variable", ang="Print on standard output the root mean square (RMS), or quadratic mean, of the current value of the variable" ), - ), - ) - -def F_Observers(statut) : return FACT( - statut=statut, - SELECTION = SIMP(statut="o", defaut=[], typ="TXM", min=0, max="**", validators=NoRepeat(), into=(['Analysis', 'Innovation', 'InnovationAtCurrentState', 'CurrentState', 'CurrentOptimum', 'IndexOfOptimum', 'SimulatedObservationAtBackground', 'SimulatedObservationAtCurrentState', 'SimulatedObservationAtOptimum', 'SimulatedObservationAtCurrentOptimum', 'BMA', 'OMA', 'OMB', 'CostFunctionJ', 'CostFunctionJb', 'CostFunctionJo', 'GradientOfCostFunctionJ', 'GradientOfCostFunctionJb', 'GradientOfCostFunctionJo', 'SigmaObs2', 'SigmaBck2', 'APosterioriCorrelations', 'APosterioriCovariance', 'APosterioriStandardDeviations', 'APosterioriVariances', 'Residu'])), - Analysis = BLOC (condition=" 'Analysis' in set(SELECTION) ", - Analysis_data = FACT(statut = "o", - Scheduler = SIMP(statut = "f", typ = "TXM"), - Info = SIMP(statut = "o", typ = "TXM", defaut = "Analysis"), - NodeType = SIMP(statut = "o", typ = "TXM", min=1, max=1, defaut = "Template", into=("String", "Script", "Template")), - PythonScript = BLOC (condition = " NodeType == 'String' ", - Value = SIMP(statut = "o", typ = "TXM") - ), - UserFile = BLOC (condition = " NodeType == 'Script' ", - Value = SIMP(statut = "o", typ = "FichierNoAbs", validators=[OnlyStr(), FileExtVal('py')]) - ), - ObserverTemplate = F_ObserverTemplate(), - ), - ), - Innovation = BLOC (condition=" 'Innovation' in set(SELECTION) ", - Innovation_data = FACT(statut = "o", - Scheduler = SIMP(statut = "f", typ = "TXM"), - Info = SIMP(statut = "o", typ = "TXM", defaut = "Innovation"), - NodeType = SIMP(statut = "o", typ = "TXM", min=1, max=1, defaut = "Template", into=("String", "Script", "Template")), - PythonScript = BLOC (condition = " NodeType == 'String' ", - Value = SIMP(statut = "o", typ = "TXM") - ), - UserFile = BLOC (condition = " NodeType == 'Script' ", - Value = SIMP(statut = "o", typ = "FichierNoAbs", validators=[OnlyStr(), FileExtVal('py')]) - ), - ObserverTemplate = F_ObserverTemplate(), - ), - ), - InnovationAtCurrentState = BLOC (condition=" 'InnovationAtCurrentState' in set(SELECTION) ", - InnovationAtCurrentState_data = FACT(statut = "o", - Scheduler = SIMP(statut = "f", typ = "TXM"), - Info = SIMP(statut = "o", typ = "TXM", defaut = "InnovationAtCurrentState"), - NodeType = SIMP(statut = "o", typ = "TXM", min=1, max=1, defaut = "Template", into=("String", "Script", "Template")), - PythonScript = BLOC (condition = " NodeType == 'String' ", - Value = SIMP(statut = "o", typ = "TXM") - ), - UserFile = BLOC (condition = " NodeType == 'Script' ", - Value = SIMP(statut = "o", typ = "FichierNoAbs", validators=[OnlyStr(), FileExtVal('py')]) - ), - ObserverTemplate = F_ObserverTemplate(), - ), - ), - CurrentState = BLOC (condition=" 'CurrentState' in set(SELECTION) ", - CurrentState_data = FACT(statut = "o", - Scheduler = SIMP(statut = "f", typ = "TXM"), - Info = SIMP(statut = "o", typ = "TXM", defaut = "CurrentState"), - NodeType = SIMP(statut = "o", typ = "TXM", min=1, max=1, defaut = "Template", into=("String", "Script", "Template")), - PythonScript = BLOC (condition = " NodeType == 'String' ", - Value = SIMP(statut = "o", typ = "TXM") - ), - UserFile = BLOC (condition = " NodeType == 'Script' ", - Value = SIMP(statut = "o", typ = "FichierNoAbs", validators=[OnlyStr(), FileExtVal('py')]) - ), - ObserverTemplate = F_ObserverTemplate(), - ), - ), - CurrentOptimum = BLOC (condition=" 'CurrentOptimum' in set(SELECTION) ", - CurrentOptimum_data = FACT(statut = "o", - Scheduler = SIMP(statut = "f", typ = "TXM"), - Info = SIMP(statut = "o", typ = "TXM", defaut = "CurrentOptimum"), - NodeType = SIMP(statut = "o", typ = "TXM", min=1, max=1, defaut = "Template", into=("String", "Script", "Template")), - PythonScript = BLOC (condition = " NodeType == 'String' ", - Value = SIMP(statut = "o", typ = "TXM") - ), - UserFile = BLOC (condition = " NodeType == 'Script' ", - Value = SIMP(statut = "o", typ = "FichierNoAbs", validators=[OnlyStr(), FileExtVal('py')]) - ), - ObserverTemplate = F_ObserverTemplate(), - ), - ), - IndexOfOptimum = BLOC (condition=" 'IndexOfOptimum' in set(SELECTION) ", - IndexOfOptimum_data = FACT(statut = "o", - Scheduler = SIMP(statut = "f", typ = "TXM"), - Info = SIMP(statut = "o", typ = "TXM", defaut = "IndexOfOptimum"), - NodeType = SIMP(statut = "o", typ = "TXM", min=1, max=1, defaut = "Template", into=("String", "Script", "Template")), - PythonScript = BLOC (condition = " NodeType == 'String' ", - Value = SIMP(statut = "o", typ = "TXM") - ), - UserFile = BLOC (condition = " NodeType == 'Script' ", - Value = SIMP(statut = "o", typ = "FichierNoAbs", validators=[OnlyStr(), FileExtVal('py')]) - ), - ObserverTemplate = F_ObserverTemplate(), - ), - ), - SimulatedObservationAtBackground = BLOC (condition=" 'SimulatedObservationAtBackground' in set(SELECTION) ", - SimulatedObservationAtBackground_data = FACT(statut = "o", - Scheduler = SIMP(statut = "f", typ = "TXM"), - Info = SIMP(statut = "o", typ = "TXM", defaut = "SimulatedObservationAtBackground"), - NodeType = SIMP(statut = "o", typ = "TXM", min=1, max=1, defaut = "Template", into=("String", "Script", "Template")), - PythonScript = BLOC (condition = " NodeType == 'String' ", - Value = SIMP(statut = "o", typ = "TXM") - ), - UserFile = BLOC (condition = " NodeType == 'Script' ", - Value = SIMP(statut = "o", typ = "FichierNoAbs", validators=[OnlyStr(), FileExtVal('py')]) - ), - ObserverTemplate = F_ObserverTemplate(), - ), - ), - SimulatedObservationAtCurrentState = BLOC (condition=" 'SimulatedObservationAtCurrentState' in set(SELECTION) ", - SimulatedObservationAtCurrentState_data = FACT(statut = "o", - Scheduler = SIMP(statut = "f", typ = "TXM"), - Info = SIMP(statut = "o", typ = "TXM", defaut = "SimulatedObservationAtCurrentState"), - NodeType = SIMP(statut = "o", typ = "TXM", min=1, max=1, defaut = "Template", into=("String", "Script", "Template")), - PythonScript = BLOC (condition = " NodeType == 'String' ", - Value = SIMP(statut = "o", typ = "TXM") - ), - UserFile = BLOC (condition = " NodeType == 'Script' ", - Value = SIMP(statut = "o", typ = "FichierNoAbs", validators=[OnlyStr(), FileExtVal('py')]) - ), - ObserverTemplate = F_ObserverTemplate(), - ), - ), - SimulatedObservationAtOptimum = BLOC (condition=" 'SimulatedObservationAtOptimum' in set(SELECTION) ", - SimulatedObservationAtOptimum_data = FACT(statut = "o", - Scheduler = SIMP(statut = "f", typ = "TXM"), - Info = SIMP(statut = "o", typ = "TXM", defaut = "SimulatedObservationAtOptimum"), - NodeType = SIMP(statut = "o", typ = "TXM", min=1, max=1, defaut = "Template", into=("String", "Script", "Template")), - PythonScript = BLOC (condition = " NodeType == 'String' ", - Value = SIMP(statut = "o", typ = "TXM") - ), - UserFile = BLOC (condition = " NodeType == 'Script' ", - Value = SIMP(statut = "o", typ = "FichierNoAbs", validators=[OnlyStr(), FileExtVal('py')]) - ), - ObserverTemplate = F_ObserverTemplate(), - ), - ), - SimulatedObservationAtCurrentOptimum = BLOC (condition=" 'SimulatedObservationAtCurrentOptimum' in set(SELECTION) ", - SimulatedObservationAtCurrentOptimum_data = FACT(statut = "o", - Scheduler = SIMP(statut = "f", typ = "TXM"), - Info = SIMP(statut = "o", typ = "TXM", defaut = "SimulatedObservationAtCurrentOptimum"), - NodeType = SIMP(statut = "o", typ = "TXM", min=1, max=1, defaut = "Template", into=("String", "Script", "Template")), - PythonScript = BLOC (condition = " NodeType == 'String' ", - Value = SIMP(statut = "o", typ = "TXM") - ), - UserFile = BLOC (condition = " NodeType == 'Script' ", - Value = SIMP(statut = "o", typ = "FichierNoAbs", validators=[OnlyStr(), FileExtVal('py')]) - ), - ObserverTemplate = F_ObserverTemplate(), - ), - ), - BMA = BLOC (condition=" 'BMA' in set(SELECTION) ", - BMA_data = FACT(statut = "o", - Scheduler = SIMP(statut = "f", typ = "TXM"), - Info = SIMP(statut = "o", typ = "TXM", defaut = "BMA"), - NodeType = SIMP(statut = "o", typ = "TXM", min=1, max=1, defaut = "Template", into=("String", "Script", "Template")), - PythonScript = BLOC (condition = " NodeType == 'String' ", - Value = SIMP(statut = "o", typ = "TXM") - ), - UserFile = BLOC (condition = " NodeType == 'Script' ", - Value = SIMP(statut = "o", typ = "FichierNoAbs", validators=[OnlyStr(), FileExtVal('py')]) - ), - ObserverTemplate = F_ObserverTemplate(), - ), - ), - OMA = BLOC (condition=" 'OMA' in set(SELECTION) ", - OMA_data = FACT(statut = "o", - Scheduler = SIMP(statut = "f", typ = "TXM"), - Info = SIMP(statut = "o", typ = "TXM", defaut = "OMA"), - NodeType = SIMP(statut = "o", typ = "TXM", min=1, max=1, defaut = "Template", into=("String", "Script", "Template")), - PythonScript = BLOC (condition = " NodeType == 'String' ", - Value = SIMP(statut = "o", typ = "TXM") - ), - UserFile = BLOC (condition = " NodeType == 'Script' ", - Value = SIMP(statut = "o", typ = "FichierNoAbs", validators=[OnlyStr(), FileExtVal('py')]) - ), - ObserverTemplate = F_ObserverTemplate(), - ), - ), - OMB = BLOC (condition=" 'OMB' in set(SELECTION) ", - OMB_data = FACT(statut = "o", - Scheduler = SIMP(statut = "f", typ = "TXM"), - Info = SIMP(statut = "o", typ = "TXM", defaut = "OMB"), - NodeType = SIMP(statut = "o", typ = "TXM", min=1, max=1, defaut = "Template", into=("String", "Script", "Template")), - PythonScript = BLOC (condition = " NodeType == 'String' ", - Value = SIMP(statut = "o", typ = "TXM") - ), - UserFile = BLOC (condition = " NodeType == 'Script' ", - Value = SIMP(statut = "o", typ = "FichierNoAbs", validators=[OnlyStr(), FileExtVal('py')]) - ), - ObserverTemplate = F_ObserverTemplate(), - ), - ), - CostFunctionJ = BLOC (condition=" 'CostFunctionJ' in set(SELECTION) ", - CostFunctionJ_data = FACT(statut = "o", - Scheduler = SIMP(statut = "f", typ = "TXM"), - Info = SIMP(statut = "o", typ = "TXM", defaut = "CostFunctionJ"), - NodeType = SIMP(statut = "o", typ = "TXM", min=1, max=1, defaut = "Template", into=("String", "Script", "Template")), - PythonScript = BLOC (condition = " NodeType == 'String' ", - Value = SIMP(statut = "o", typ = "TXM") - ), - UserFile = BLOC (condition = " NodeType == 'Script' ", - Value = SIMP(statut = "o", typ = "FichierNoAbs", validators=[OnlyStr(), FileExtVal('py')]) - ), - ObserverTemplate = F_ObserverTemplate(), - ), - ), - CostFunctionJb = BLOC (condition=" 'CostFunctionJb' in set(SELECTION) ", - CostFunctionJb_data = FACT(statut = "o", - Scheduler = SIMP(statut = "f", typ = "TXM"), - Info = SIMP(statut = "o", typ = "TXM", defaut = "CostFunctionJb"), - NodeType = SIMP(statut = "o", typ = "TXM", min=1, max=1, defaut = "Template", into=("String", "Script", "Template")), - PythonScript = BLOC (condition = " NodeType == 'String' ", - Value = SIMP(statut = "o", typ = "TXM") - ), - UserFile = BLOC (condition = " NodeType == 'Script' ", - Value = SIMP(statut = "o", typ = "FichierNoAbs", validators=[OnlyStr(), FileExtVal('py')]) - ), - ObserverTemplate = F_ObserverTemplate(), - ), - ), - CostFunctionJo = BLOC (condition=" 'CostFunctionJo' in set(SELECTION) ", - CostFunctionJo_data = FACT(statut = "o", - Scheduler = SIMP(statut = "f", typ = "TXM"), - Info = SIMP(statut = "o", typ = "TXM", defaut = "CostFunctionJo"), - NodeType = SIMP(statut = "o", typ = "TXM", min=1, max=1, defaut = "Template", into=("String", "Script", "Template")), - PythonScript = BLOC (condition = " NodeType == 'String' ", - Value = SIMP(statut = "o", typ = "TXM") - ), - UserFile = BLOC (condition = " NodeType == 'Script' ", - Value = SIMP(statut = "o", typ = "FichierNoAbs", validators=[OnlyStr(), FileExtVal('py')]) - ), - ObserverTemplate = F_ObserverTemplate(), - ), - ), - GradientOfCostFunctionJ = BLOC (condition=" 'GradientOfCostFunctionJ' in set(SELECTION) ", - GradientOfCostFunctionJ_data = FACT(statut = "o", - Scheduler = SIMP(statut = "f", typ = "TXM"), - Info = SIMP(statut = "o", typ = "TXM", defaut = "GradientOfCostFunctionJ"), - NodeType = SIMP(statut = "o", typ = "TXM", min=1, max=1, defaut = "Template", into=("String", "Script", "Template")), - PythonScript = BLOC (condition = " NodeType == 'String' ", - Value = SIMP(statut = "o", typ = "TXM") - ), - UserFile = BLOC (condition = " NodeType == 'Script' ", - Value = SIMP(statut = "o", typ = "FichierNoAbs", validators=[OnlyStr(), FileExtVal('py')]) - ), - ObserverTemplate = F_ObserverTemplate(), - ), - ), - GradientOfCostFunctionJb = BLOC (condition=" 'GradientOfCostFunctionJb' in set(SELECTION) ", - GradientOfCostFunctionJb_data = FACT(statut = "o", - Scheduler = SIMP(statut = "f", typ = "TXM"), - Info = SIMP(statut = "o", typ = "TXM", defaut = "GradientOfCostFunctionJb"), - NodeType = SIMP(statut = "o", typ = "TXM", min=1, max=1, defaut = "Template", into=("String", "Script", "Template")), - PythonScript = BLOC (condition = " NodeType == 'String' ", - Value = SIMP(statut = "o", typ = "TXM") - ), - UserFile = BLOC (condition = " NodeType == 'Script' ", - Value = SIMP(statut = "o", typ = "FichierNoAbs", validators=[OnlyStr(), FileExtVal('py')]) - ), - ObserverTemplate = F_ObserverTemplate(), - ), - ), - GradientOfCostFunctionJo = BLOC (condition=" 'GradientOfCostFunctionJo' in set(SELECTION) ", - GradientOfCostFunctionJo_data = FACT(statut = "o", - Scheduler = SIMP(statut = "f", typ = "TXM"), - Info = SIMP(statut = "o", typ = "TXM", defaut = "GradientOfCostFunctionJo"), - NodeType = SIMP(statut = "o", typ = "TXM", min=1, max=1, defaut = "Template", into=("String", "Script", "Template")), - PythonScript = BLOC (condition = " NodeType == 'String' ", - Value = SIMP(statut = "o", typ = "TXM") - ), - UserFile = BLOC (condition = " NodeType == 'Script' ", - Value = SIMP(statut = "o", typ = "FichierNoAbs", validators=[OnlyStr(), FileExtVal('py')]) - ), - ObserverTemplate = F_ObserverTemplate(), - ), - ), - SigmaObs2 = BLOC (condition=" 'SigmaObs2' in set(SELECTION) ", - SigmaObs2_data = FACT(statut = "o", - Scheduler = SIMP(statut = "f", typ = "TXM"), - Info = SIMP(statut = "o", typ = "TXM", defaut = "SigmaObs2"), - NodeType = SIMP(statut = "o", typ = "TXM", min=1, max=1, defaut = "Template", into=("String", "Script", "Template")), - PythonScript = BLOC (condition = " NodeType == 'String' ", - Value = SIMP(statut = "o", typ = "TXM") - ), - UserFile = BLOC (condition = " NodeType == 'Script' ", - Value = SIMP(statut = "o", typ = "FichierNoAbs", validators=[OnlyStr(), FileExtVal('py')]) - ), - ObserverTemplate = F_ObserverTemplate(), - ), - ), - SigmaBck2 = BLOC (condition=" 'SigmaBck2' in set(SELECTION) ", - SigmaBck2_data = FACT(statut = "o", - Scheduler = SIMP(statut = "f", typ = "TXM"), - Info = SIMP(statut = "o", typ = "TXM", defaut = "SigmaBck2"), - NodeType = SIMP(statut = "o", typ = "TXM", min=1, max=1, defaut = "Template", into=("String", "Script", "Template")), - PythonScript = BLOC (condition = " NodeType == 'String' ", - Value = SIMP(statut = "o", typ = "TXM") - ), - UserFile = BLOC (condition = " NodeType == 'Script' ", - Value = SIMP(statut = "o", typ = "FichierNoAbs", validators=[OnlyStr(), FileExtVal('py')]) - ), - ObserverTemplate = F_ObserverTemplate(), - ), - ), - APosterioriCorrelations = BLOC (condition=" 'APosterioriCorrelations' in set(SELECTION) ", - APosterioriCorrelations_data = FACT(statut = "o", - Scheduler = SIMP(statut = "f", typ = "TXM"), - Info = SIMP(statut = "o", typ = "TXM", defaut = "APosterioriCorrelations"), - NodeType = SIMP(statut = "o", typ = "TXM", min=1, max=1, defaut = "Template", into=("String", "Script", "Template")), - PythonScript = BLOC (condition = " NodeType == 'String' ", - Value = SIMP(statut = "o", typ = "TXM") - ), - UserFile = BLOC (condition = " NodeType == 'Script' ", - Value = SIMP(statut = "o", typ = "FichierNoAbs", validators=[OnlyStr(), FileExtVal('py')]) - ), - ObserverTemplate = F_ObserverTemplate(), - ), - ), - APosterioriCovariance = BLOC (condition=" 'APosterioriCovariance' in set(SELECTION) ", - APosterioriCovariance_data = FACT(statut = "o", - Scheduler = SIMP(statut = "f", typ = "TXM"), - Info = SIMP(statut = "o", typ = "TXM", defaut = "APosterioriCovariance"), - NodeType = SIMP(statut = "o", typ = "TXM", min=1, max=1, defaut = "Template", into=("String", "Script", "Template")), - PythonScript = BLOC (condition = " NodeType == 'String' ", - Value = SIMP(statut = "o", typ = "TXM") - ), - UserFile = BLOC (condition = " NodeType == 'Script' ", - Value = SIMP(statut = "o", typ = "FichierNoAbs", validators=[OnlyStr(), FileExtVal('py')]) - ), - ObserverTemplate = F_ObserverTemplate(), - ), - ), - APosterioriStandardDeviations = BLOC (condition=" 'APosterioriStandardDeviations' in set(SELECTION) ", - APosterioriStandardDeviations_data = FACT(statut = "o", - Scheduler = SIMP(statut = "f", typ = "TXM"), - Info = SIMP(statut = "o", typ = "TXM", defaut = "APosterioriStandardDeviations"), - NodeType = SIMP(statut = "o", typ = "TXM", min=1, max=1, defaut = "Template", into=("String", "Script", "Template")), - PythonScript = BLOC (condition = " NodeType == 'String' ", - Value = SIMP(statut = "o", typ = "TXM") - ), - UserFile = BLOC (condition = " NodeType == 'Script' ", - Value = SIMP(statut = "o", typ = "FichierNoAbs", validators=[OnlyStr(), FileExtVal('py')]) - ), - ObserverTemplate = F_ObserverTemplate(), - ), - ), - APosterioriVariances = BLOC (condition=" 'APosterioriVariances' in set(SELECTION) ", - APosterioriVariances_data = FACT(statut = "o", - Scheduler = SIMP(statut = "f", typ = "TXM"), - Info = SIMP(statut = "o", typ = "TXM", defaut = "APosterioriVariances"), - NodeType = SIMP(statut = "o", typ = "TXM", min=1, max=1, defaut = "Template", into=("String", "Script", "Template")), - PythonScript = BLOC (condition = " NodeType == 'String' ", - Value = SIMP(statut = "o", typ = "TXM") - ), - UserFile = BLOC (condition = " NodeType == 'Script' ", - Value = SIMP(statut = "o", typ = "FichierNoAbs", validators=[OnlyStr(), FileExtVal('py')]) - ), - ObserverTemplate = F_ObserverTemplate(), - ), - ), - Residu = BLOC (condition=" 'Residu' in set(SELECTION) ", - Residu_data = FACT(statut = "o", - Scheduler = SIMP(statut = "f", typ = "TXM"), - Info = SIMP(statut = "o", typ = "TXM", defaut = "Residu"), - NodeType = SIMP(statut = "o", typ = "TXM", min=1, max=1, defaut = "Template", into=("String", "Script", "Template")), - PythonScript = BLOC (condition = " NodeType == 'String' ", - Value = SIMP(statut = "o", typ = "TXM") - ), - UserFile = BLOC (condition = " NodeType == 'Script' ", - Value = SIMP(statut = "o", typ = "FichierNoAbs", validators=[OnlyStr(), FileExtVal('py')]) - ), - ObserverTemplate = F_ObserverTemplate(), - ), - ), - ) - -def AlgorithmParametersInNS(filename): - if os.path.exists(filename): - fc = open(filename, 'r').readlines() - cr = re.compile("^AlgorithmParameters[\s]*=") - for ln in fc: - if cr.match(ln): return 1 - return 0 -AlgorithmParametersInNS.info = u"The Python file has to contain explicitly an \"AlgorithmParameters\" variable." -def F_AlgorithmParameters(statut, algos_names, fv=NoCheckInNS) : return FACT( - statut = statut, - Algorithm = SIMP(statut="o", typ = "TXM", into = algos_names ), - Parameters = SIMP(statut="f", typ = "TXM", into=("Defaults", "Dict") ), - Dict = BLOC ( condition = " Parameters == 'Dict' ", - statut="f", - data = F_Dict("o", fv), - ), - Parameters3DVAR = BLOC (condition = " (Parameters == 'Defaults') and (Algorithm == '3DVAR') ", - statut="f", - Bounds = SIMP(statut="f", typ="TXM", fr="Liste des valeurs de bornes"), - CostDecrementTolerance = SIMP(statut="f", typ="R", min=1, max=1, defaut=1e-07, fr="Diminution relative minimale du cout lors de l'arrêt"), - GradientNormTolerance = SIMP(statut="f", typ="R", min=1, max=1, defaut=1e-05, fr="Maximum des composantes du gradient lors de l'arrêt"), - MaximumNumberOfSteps = SIMP(statut="f", typ="I", val_min=-1, min=1, max=1, defaut=15000, fr="Nombre maximal de pas d'optimisation"), - Minimizer = SIMP(statut="f", typ="TXM", min=1, max=1, defaut="LBFGSB", into=['LBFGSB', 'TNC', 'CG', 'NCG', 'BFGS'], fr="Minimiseur utilisé"), - NumberOfSamplesForQuantiles = SIMP(statut="f", typ="I", val_min=1, min=1, max=1, defaut=100, fr="Nombre d'échantillons simulés pour le calcul des quantiles"), - ProjectedGradientTolerance = SIMP(statut="f", typ="R", val_min=-1, min=1, max=1, defaut=-1.0, fr="Maximum des composantes du gradient projeté lors de l'arrêt"), - Quantiles = SIMP(statut="f", typ="TXM", max="**", into=None, fr="Liste des valeurs de quantiles"), - SetSeed = SIMP(statut="f", typ="TXM", fr="Graine fixée pour le générateur aléatoire"), - SimulationForQuantiles = SIMP(statut="f", typ="TXM", min=1, max=1, defaut="Linear", into=['Linear', 'NonLinear'], fr="Type de simulation pour l'estimation des quantiles"), - StoreSupplementaryCalculations = SIMP(statut="f", typ="TXM", max="**", into=['APosterioriCorrelations', 'APosterioriCovariance', 'APosterioriStandardDeviations', 'APosterioriVariances', 'BMA', 'OMA', 'OMB', 'CostFunctionJ', 'CurrentState', 'CurrentOptimum', 'IndexOfOptimum', 'Innovation', 'InnovationAtCurrentState', 'CostFunctionJAtCurrentOptimum', 'SigmaObs2', 'MahalanobisConsistency', 'SimulationQuantiles', 'SimulatedObservationAtBackground', 'SimulatedObservationAtCurrentState', 'SimulatedObservationAtOptimum', 'SimulatedObservationAtCurrentOptimum'], fr="Liste de calculs supplémentaires à stocker et/ou effectuer"), - ), - Parameters4DVAR = BLOC (condition = " (Parameters == 'Defaults') and (Algorithm == '4DVAR') ", - statut="f", - Bounds = SIMP(statut="f", typ="TXM", fr="Liste des valeurs de bornes"), - ConstrainedBy = SIMP(statut="f", typ="TXM", min=1, max=1, defaut="EstimateProjection", into=['EstimateProjection'], fr="Prise en compte des contraintes"), - CostDecrementTolerance = SIMP(statut="f", typ="R", min=1, max=1, defaut=1e-07, fr="Diminution relative minimale du cout lors de l'arrêt"), - EstimationOf = SIMP(statut="f", typ="TXM", min=1, max=1, defaut="State", into=['State', 'Parameters'], fr="Estimation d'etat ou de parametres"), - GradientNormTolerance = SIMP(statut="f", typ="R", min=1, max=1, defaut=1e-05, fr="Maximum des composantes du gradient lors de l'arrêt"), - MaximumNumberOfSteps = SIMP(statut="f", typ="I", val_min=-1, min=1, max=1, defaut=15000, fr="Nombre maximal de pas d'optimisation"), - Minimizer = SIMP(statut="f", typ="TXM", min=1, max=1, defaut="LBFGSB", into=['LBFGSB', 'TNC', 'CG', 'NCG', 'BFGS'], fr="Minimiseur utilisé"), - ProjectedGradientTolerance = SIMP(statut="f", typ="R", val_min=-1, min=1, max=1, defaut=-1.0, fr="Maximum des composantes du gradient projeté lors de l'arrêt"), - StoreSupplementaryCalculations = SIMP(statut="f", typ="TXM", max="**", into=['BMA', 'CurrentState', 'CostFunctionJ', 'IndexOfOptimum', 'CurrentOptimum', 'CostFunctionJAtCurrentOptimum'], fr="Liste de calculs supplémentaires à stocker et/ou effectuer"), - ), - ParametersBlue = BLOC (condition = " (Parameters == 'Defaults') and (Algorithm == 'Blue') ", - statut="f", - NumberOfSamplesForQuantiles = SIMP(statut="f", typ="I", val_min=1, min=1, max=1, defaut=100, fr="Nombre d'échantillons simulés pour le calcul des quantiles"), - Quantiles = SIMP(statut="f", typ="TXM", max="**", into=None, fr="Liste des valeurs de quantiles"), - SetSeed = SIMP(statut="f", typ="TXM", fr="Graine fixée pour le générateur aléatoire"), - SimulationForQuantiles = SIMP(statut="f", typ="TXM", min=1, max=1, defaut="Linear", into=['Linear', 'NonLinear'], fr="Type de simulation pour l'estimation des quantiles"), - StoreSupplementaryCalculations = SIMP(statut="f", typ="TXM", max="**", into=['APosterioriCorrelations', 'APosterioriCovariance', 'APosterioriStandardDeviations', 'APosterioriVariances', 'BMA', 'OMA', 'OMB', 'CurrentState', 'CostFunctionJ', 'Innovation', 'SigmaBck2', 'SigmaObs2', 'MahalanobisConsistency', 'SimulationQuantiles', 'SimulatedObservationAtBackground', 'SimulatedObservationAtCurrentState', 'SimulatedObservationAtOptimum'], fr="Liste de calculs supplémentaires à stocker et/ou effectuer"), - ), - ParametersDerivativeFreeOptimization = BLOC (condition = " (Parameters == 'Defaults') and (Algorithm == 'DerivativeFreeOptimization') ", - statut="f", - CostDecrementTolerance = SIMP(statut="f", typ="R", min=1, max=1, defaut=1e-07, fr="Diminution relative minimale du cout lors de l'arrêt"), - MaximumNumberOfFunctionEvaluations = SIMP(statut="f", typ="I", val_min=-1, min=1, max=1, defaut=15000, fr="Nombre maximal de d'évaluations de la function"), - MaximumNumberOfSteps = SIMP(statut="f", typ="I", val_min=-1, min=1, max=1, defaut=15000, fr="Nombre maximal de pas d'optimisation"), - Minimizer = SIMP(statut="f", typ="TXM", min=1, max=1, defaut="POWELL", into=['POWELL', 'SIMPLEX'], fr="Minimiseur utilisé"), - QualityCriterion = SIMP(statut="f", typ="TXM", min=1, max=1, defaut="AugmentedWeightedLeastSquares", into=['AugmentedWeightedLeastSquares', 'AWLS', 'DA', 'WeightedLeastSquares', 'WLS', 'LeastSquares', 'LS', 'L2', 'AbsoluteValue', 'L1', 'MaximumError', 'ME'], fr="Critère de qualité utilisé"), - StateVariationTolerance = SIMP(statut="f", typ="R", min=1, max=1, defaut=0.0001, fr="Variation relative maximale de l'état lors de l'arrêt"), - StoreSupplementaryCalculations = SIMP(statut="f", typ="TXM", max="**", into=['CurrentState', 'CostFunctionJ', 'SimulatedObservationAtBackground', 'SimulatedObservationAtCurrentState', 'SimulatedObservationAtOptimum'], fr="Liste de calculs supplémentaires à stocker et/ou effectuer"), - ), - ParametersEnsembleBlue = BLOC (condition = " (Parameters == 'Defaults') and (Algorithm == 'EnsembleBlue') ", - statut="f", - SetSeed = SIMP(statut="f", typ="TXM", fr="Graine fixée pour le générateur aléatoire"), - StoreSupplementaryCalculations = SIMP(statut="f", typ="TXM", max="**", into=['CurrentState', 'Innovation', 'SimulatedObservationAtBackground', 'SimulatedObservationAtCurrentState', 'SimulatedObservationAtOptimum'], fr="Liste de calculs supplémentaires à stocker et/ou effectuer"), - ), - ParametersExtendedBlue = BLOC (condition = " (Parameters == 'Defaults') and (Algorithm == 'ExtendedBlue') ", - statut="f", - NumberOfSamplesForQuantiles = SIMP(statut="f", typ="I", val_min=1, min=1, max=1, defaut=100, fr="Nombre d'échantillons simulés pour le calcul des quantiles"), - Quantiles = SIMP(statut="f", typ="TXM", max="**", into=None, fr="Liste des valeurs de quantiles"), - SetSeed = SIMP(statut="f", typ="TXM", fr="Graine fixée pour le générateur aléatoire"), - SimulationForQuantiles = SIMP(statut="f", typ="TXM", min=1, max=1, defaut="Linear", into=['Linear', 'NonLinear'], fr="Type de simulation pour l'estimation des quantiles"), - StoreSupplementaryCalculations = SIMP(statut="f", typ="TXM", max="**", into=['APosterioriCorrelations', 'APosterioriCovariance', 'APosterioriStandardDeviations', 'APosterioriVariances', 'BMA', 'OMA', 'OMB', 'CurrentState', 'CostFunctionJ', 'Innovation', 'SigmaBck2', 'SigmaObs2', 'MahalanobisConsistency', 'SimulationQuantiles', 'SimulatedObservationAtBackground', 'SimulatedObservationAtCurrentState', 'SimulatedObservationAtOptimum'], fr="Liste de calculs supplémentaires à stocker et/ou effectuer"), - ), - ParametersExtendedKalmanFilter = BLOC (condition = " (Parameters == 'Defaults') and (Algorithm == 'ExtendedKalmanFilter') ", - statut="f", - Bounds = SIMP(statut="f", typ="TXM", fr="Liste des valeurs de bornes"), - ConstrainedBy = SIMP(statut="f", typ="TXM", min=1, max=1, defaut="EstimateProjection", into=['EstimateProjection'], fr="Prise en compte des contraintes"), - EstimationOf = SIMP(statut="f", typ="TXM", min=1, max=1, defaut="State", into=['State', 'Parameters'], fr="Estimation d'etat ou de parametres"), - StoreSupplementaryCalculations = SIMP(statut="f", typ="TXM", max="**", into=['APosterioriCorrelations', 'APosterioriCovariance', 'APosterioriStandardDeviations', 'APosterioriVariances', 'BMA', 'CurrentState', 'CostFunctionJ', 'Innovation'], fr="Liste de calculs supplémentaires à stocker et/ou effectuer"), - ), - ParametersKalmanFilter = BLOC (condition = " (Parameters == 'Defaults') and (Algorithm == 'KalmanFilter') ", - statut="f", - EstimationOf = SIMP(statut="f", typ="TXM", min=1, max=1, defaut="State", into=['State', 'Parameters'], fr="Estimation d'etat ou de parametres"), - StoreSupplementaryCalculations = SIMP(statut="f", typ="TXM", max="**", into=['APosterioriCorrelations', 'APosterioriCovariance', 'APosterioriStandardDeviations', 'APosterioriVariances', 'BMA', 'CurrentState', 'CostFunctionJ', 'Innovation'], fr="Liste de calculs supplémentaires à stocker et/ou effectuer"), - ), - ParametersLinearLeastSquares = BLOC (condition = " (Parameters == 'Defaults') and (Algorithm == 'LinearLeastSquares') ", - statut="f", - StoreSupplementaryCalculations = SIMP(statut="f", typ="TXM", max="**", into=['OMA', 'CurrentState', 'CostFunctionJ', 'SimulatedObservationAtCurrentState', 'SimulatedObservationAtOptimum'], fr="Liste de calculs supplémentaires à stocker et/ou effectuer"), - ), - ParametersNonLinearLeastSquares = BLOC (condition = " (Parameters == 'Defaults') and (Algorithm == 'NonLinearLeastSquares') ", - statut="f", - Bounds = SIMP(statut="f", typ="TXM", fr="Liste des valeurs de bornes"), - CostDecrementTolerance = SIMP(statut="f", typ="R", min=1, max=1, defaut=1e-07, fr="Diminution relative minimale du cout lors de l'arrêt"), - GradientNormTolerance = SIMP(statut="f", typ="R", min=1, max=1, defaut=1e-05, fr="Maximum des composantes du gradient lors de l'arrêt"), - MaximumNumberOfSteps = SIMP(statut="f", typ="I", val_min=-1, min=1, max=1, defaut=15000, fr="Nombre maximal de pas d'optimisation"), - Minimizer = SIMP(statut="f", typ="TXM", min=1, max=1, defaut="LBFGSB", into=['LBFGSB', 'TNC', 'CG', 'NCG', 'BFGS', 'LM'], fr="Minimiseur utilisé"), - ProjectedGradientTolerance = SIMP(statut="f", typ="R", val_min=-1, min=1, max=1, defaut=-1.0, fr="Maximum des composantes du gradient projeté lors de l'arrêt"), - StoreSupplementaryCalculations = SIMP(statut="f", typ="TXM", max="**", into=['BMA', 'OMA', 'OMB', 'CurrentState', 'CostFunctionJ', 'Innovation', 'SimulatedObservationAtCurrentState', 'SimulatedObservationAtOptimum'], fr="Liste de calculs supplémentaires à stocker et/ou effectuer"), - ), - ParametersParticleSwarmOptimization = BLOC (condition = " (Parameters == 'Defaults') and (Algorithm == 'ParticleSwarmOptimization') ", - statut="f", - BoxBounds = SIMP(statut="f", typ="TXM", fr="Liste des valeurs de bornes d'incréments de paramètres"), - GroupRecallRate = SIMP(statut="f", typ="R", val_min=0.0, val_max=1.0, min=1, max=1, defaut=0.5, fr="Taux de rappel au meilleur insecte du groupe (entre 0 et 1)"), - MaximumNumberOfSteps = SIMP(statut="f", typ="I", val_min=1, min=1, max=1, defaut=50, fr="Nombre maximal de pas d'optimisation"), - NumberOfInsects = SIMP(statut="f", typ="I", val_min=-1, min=1, max=1, defaut=100, fr="Nombre d'insectes dans l'essaim"), - QualityCriterion = SIMP(statut="f", typ="TXM", min=1, max=1, defaut="AugmentedWeightedLeastSquares", into=['AugmentedWeightedLeastSquares', 'AWLS', 'AugmentedPonderatedLeastSquares', 'APLS', 'DA', 'WeightedLeastSquares', 'WLS', 'PonderatedLeastSquares', 'PLS', 'LeastSquares', 'LS', 'L2', 'AbsoluteValue', 'L1', 'MaximumError', 'ME'], fr="Critère de qualité utilisé"), - SetSeed = SIMP(statut="f", typ="TXM", fr="Graine fixée pour le générateur aléatoire"), - StoreSupplementaryCalculations = SIMP(statut="f", typ="TXM", max="**", into=['BMA', 'OMA', 'OMB', 'CurrentState', 'CostFunctionJ', 'Innovation', 'SimulatedObservationAtBackground', 'SimulatedObservationAtCurrentState', 'SimulatedObservationAtOptimum'], fr="Liste de calculs supplémentaires à stocker et/ou effectuer"), - SwarmVelocity = SIMP(statut="f", typ="R", val_min=0.0, min=1, max=1, defaut=1.0, fr="Vitesse de groupe imposée par l'essaim"), - ), - ParametersQuantileRegression = BLOC (condition = " (Parameters == 'Defaults') and (Algorithm == 'QuantileRegression') ", - statut="f", - Bounds = SIMP(statut="f", typ="TXM", fr="Liste des valeurs de bornes"), - CostDecrementTolerance = SIMP(statut="f", typ="R", min=1, max=1, defaut=1e-06, fr="Maximum de variation de la fonction d'estimation lors de l'arrêt"), - MaximumNumberOfSteps = SIMP(statut="f", typ="I", val_min=1, min=1, max=1, defaut=15000, fr="Nombre maximal de pas d'optimisation"), - Minimizer = SIMP(statut="f", typ="TXM", min=1, max=1, defaut="MMQR", into=['MMQR'], fr="Minimiseur utilisé"), - Quantile = SIMP(statut="f", typ="R", val_min=0.0, val_max=1.0, min=1, max=1, defaut=0.5, fr="Quantile pour la regression de quantile"), - StoreSupplementaryCalculations = SIMP(statut="f", typ="TXM", max="**", into=['BMA', 'OMA', 'OMB', 'CurrentState', 'CostFunctionJ', 'Innovation', 'SimulatedObservationAtBackground', 'SimulatedObservationAtCurrentState', 'SimulatedObservationAtOptimum'], fr="Liste de calculs supplémentaires à stocker et/ou effectuer"), - ), - ParametersUnscentedKalmanFilter = BLOC (condition = " (Parameters == 'Defaults') and (Algorithm == 'UnscentedKalmanFilter') ", - statut="f", - Alpha = SIMP(statut="f", typ="R", val_min=0.0001, val_max=1.0, min=1, max=1, defaut=1.0, fr=""), - Beta = SIMP(statut="f", typ="R", min=1, max=1, defaut=2.0, fr=""), - Bounds = SIMP(statut="f", typ="TXM", fr="Liste des valeurs de bornes"), - ConstrainedBy = SIMP(statut="f", typ="TXM", min=1, max=1, defaut="EstimateProjection", into=['EstimateProjection'], fr="Prise en compte des contraintes"), - EstimationOf = SIMP(statut="f", typ="TXM", min=1, max=1, defaut="State", into=['State', 'Parameters'], fr="Estimation d'etat ou de parametres"), - Kappa = SIMP(statut="f", typ="I", val_max=2, min=1, max=1, defaut=0, fr=""), - Reconditioner = SIMP(statut="f", typ="R", val_min=0.001, val_max=10.0, min=1, max=1, defaut=1.0, fr=""), - StoreSupplementaryCalculations = SIMP(statut="f", typ="TXM", max="**", into=['APosterioriCorrelations', 'APosterioriCovariance', 'APosterioriStandardDeviations', 'APosterioriVariances', 'BMA', 'CurrentState', 'CostFunctionJ', 'Innovation'], fr="Liste de calculs supplémentaires à stocker et/ou effectuer"), - ), - ParametersAdjointTest = BLOC (condition = " (Parameters == 'Defaults') and (Algorithm == 'AdjointTest') ", - statut="f", - AmplitudeOfInitialDirection = SIMP(statut="f", typ="R", min=1, max=1, defaut=1.0, fr="Amplitude de la direction initiale de la dérivée directionnelle autour du point nominal"), - EpsilonMinimumExponent = SIMP(statut="f", typ="I", val_min=-20, val_max=0, min=1, max=1, defaut=-8, fr="Exposant minimal en puissance de 10 pour le multiplicateur d'incrément"), - InitialDirection = SIMP(statut="f", typ="TXM", fr="Direction initiale de la dérivée directionnelle autour du point nominal"), - ResiduFormula = SIMP(statut="f", typ="TXM", min=1, max=1, defaut="ScalarProduct", into=['ScalarProduct'], fr="Formule de résidu utilisée"), - SetSeed = SIMP(statut="f", typ="TXM", fr="Graine fixée pour le générateur aléatoire"), - StoreSupplementaryCalculations = SIMP(statut="f", typ="TXM", max="**", into=['CurrentState', 'Residu', 'SimulatedObservationAtCurrentState'], fr="Liste de calculs supplémentaires à stocker et/ou effectuer"), - ), - ParametersFunctionTest = BLOC (condition = " (Parameters == 'Defaults') and (Algorithm == 'FunctionTest') ", - statut="f", - NumberOfPrintedDigits = SIMP(statut="f", typ="I", val_min=0, min=1, max=1, defaut=5, fr="Nombre de chiffres affichés pour les impressions de réels"), - NumberOfRepetition = SIMP(statut="f", typ="I", val_min=1, min=1, max=1, defaut=1, fr="Nombre de fois où l'exécution de la fonction est répétée"), - SetDebug = SIMP(statut="f", typ="I", min=1, max=1, defaut=0, fr="Activation du mode debug lors de l'exécution"), - StoreSupplementaryCalculations = SIMP(statut="f", typ="TXM", max="**", into=['CurrentState', 'SimulatedObservationAtCurrentState'], fr="Liste de calculs supplémentaires à stocker et/ou effectuer"), - ), - ParametersGradientTest = BLOC (condition = " (Parameters == 'Defaults') and (Algorithm == 'GradientTest') ", - statut="f", - AmplitudeOfInitialDirection = SIMP(statut="f", typ="R", min=1, max=1, defaut=1.0, fr="Amplitude de la direction initiale de la dérivée directionnelle autour du point nominal"), - AmplitudeOfTangentPerturbation = SIMP(statut="f", typ="R", val_min=1e-10, val_max=1.0, min=1, max=1, defaut=0.01, fr="Amplitude de la perturbation pour le calcul de la forme tangente"), - EpsilonMinimumExponent = SIMP(statut="f", typ="I", val_min=-20, val_max=0, min=1, max=1, defaut=-8, fr="Exposant minimal en puissance de 10 pour le multiplicateur d'incrément"), - InitialDirection = SIMP(statut="f", typ="TXM", fr="Direction initiale de la dérivée directionnelle autour du point nominal"), - ResiduFormula = SIMP(statut="f", typ="TXM", min=1, max=1, defaut="Taylor", into=['Norm', 'TaylorOnNorm', 'Taylor'], fr="Formule de résidu utilisée"), - SetSeed = SIMP(statut="f", typ="TXM", fr="Graine fixée pour le générateur aléatoire"), - StoreSupplementaryCalculations = SIMP(statut="f", typ="TXM", max="**", into=['CurrentState', 'Residu', 'SimulatedObservationAtCurrentState'], fr="Liste de calculs supplémentaires à stocker et/ou effectuer"), - ), - ParametersLinearityTest = BLOC (condition = " (Parameters == 'Defaults') and (Algorithm == 'LinearityTest') ", - statut="f", - AmplitudeOfInitialDirection = SIMP(statut="f", typ="R", min=1, max=1, defaut=1.0, fr="Amplitude de la direction initiale de la dérivée directionnelle autour du point nominal"), - AmplitudeOfTangentPerturbation = SIMP(statut="f", typ="R", val_min=1e-10, val_max=1.0, min=1, max=1, defaut=0.01, fr="Amplitude de la perturbation pour le calcul de la forme tangente"), - EpsilonMinimumExponent = SIMP(statut="f", typ="I", val_min=-20, val_max=0, min=1, max=1, defaut=-8, fr="Exposant minimal en puissance de 10 pour le multiplicateur d'incrément"), - InitialDirection = SIMP(statut="f", typ="TXM", fr="Direction initiale de la dérivée directionnelle autour du point nominal"), - ResiduFormula = SIMP(statut="f", typ="TXM", min=1, max=1, defaut="CenteredDL", into=['CenteredDL', 'Taylor', 'NominalTaylor', 'NominalTaylorRMS'], fr="Formule de résidu utilisée"), - SetSeed = SIMP(statut="f", typ="TXM", fr="Graine fixée pour le générateur aléatoire"), - StoreSupplementaryCalculations = SIMP(statut="f", typ="TXM", max="**", into=['CurrentState', 'Residu', 'SimulatedObservationAtCurrentState'], fr="Liste de calculs supplémentaires à stocker et/ou effectuer"), - ), - ParametersSamplingTest = BLOC (condition = " (Parameters == 'Defaults') and (Algorithm == 'SamplingTest') ", - statut="f", - QualityCriterion = SIMP(statut="f", typ="TXM", min=1, max=1, defaut="AugmentedWeightedLeastSquares", into=['AugmentedWeightedLeastSquares', 'AWLS', 'AugmentedPonderatedLeastSquares', 'APLS', 'DA', 'WeightedLeastSquares', 'WLS', 'PonderatedLeastSquares', 'PLS', 'LeastSquares', 'LS', 'L2', 'AbsoluteValue', 'L1', 'MaximumError', 'ME'], fr="Critère de qualité utilisé"), - SampleAsExplicitHyperCube = SIMP(statut="f", typ="TXM", max="**", into=None, fr="Points de calcul définis par un hyper-cube dont on donne la liste des échantillonages de chaque variable comme une liste"), - SampleAsIndependantRandomVariables = SIMP(statut="f", typ="TXM", max="**", into=None, fr="Points de calcul définis par un hyper-cube dont les points sur chaque axe proviennent de l'échantillonage indépendant de la variable selon la spécification ['distribution',[parametres],nombre]"), - SampleAsMinMaxStepHyperCube = SIMP(statut="f", typ="TXM", max="**", into=None, fr="Points de calcul définis par un hyper-cube dont on donne la liste des échantillonages de chaque variable par un triplet [min,max,step]"), - SampleAsnUplet = SIMP(statut="f", typ="TXM", max="**", into=None, fr="Points de calcul définis par une liste de n-uplet"), - SetDebug = SIMP(statut="f", typ="I", min=1, max=1, defaut=0, fr="Activation du mode debug lors de l'exécution"), - SetSeed = SIMP(statut="f", typ="TXM", fr="Graine fixée pour le générateur aléatoire"), - StoreSupplementaryCalculations = SIMP(statut="f", typ="TXM", max="**", into=['CostFunctionJ', 'CurrentState', 'InnovationAtCurrentState', 'SimulatedObservationAtCurrentState'], fr="Liste de calculs supplémentaires à stocker et/ou effectuer"), - ), - ParametersTangentTest = BLOC (condition = " (Parameters == 'Defaults') and (Algorithm == 'TangentTest') ", - statut="f", - AmplitudeOfInitialDirection = SIMP(statut="f", typ="R", min=1, max=1, defaut=1.0, fr="Amplitude de la direction initiale de la dérivée directionnelle autour du point nominal"), - AmplitudeOfTangentPerturbation = SIMP(statut="f", typ="R", val_min=1e-10, val_max=1.0, min=1, max=1, defaut=0.01, fr="Amplitude de la perturbation pour le calcul de la forme tangente"), - EpsilonMinimumExponent = SIMP(statut="f", typ="I", val_min=-20, val_max=0, min=1, max=1, defaut=-8, fr="Exposant minimal en puissance de 10 pour le multiplicateur d'incrément"), - InitialDirection = SIMP(statut="f", typ="TXM", fr="Direction initiale de la dérivée directionnelle autour du point nominal"), - ResiduFormula = SIMP(statut="f", typ="TXM", min=1, max=1, defaut="Taylor", into=['Taylor'], fr="Formule de résidu utilisée"), - SetSeed = SIMP(statut="f", typ="TXM", fr="Graine fixée pour le générateur aléatoire"), - StoreSupplementaryCalculations = SIMP(statut="f", typ="TXM", max="**", into=['CurrentState', 'Residu', 'SimulatedObservationAtCurrentState'], fr="Liste de calculs supplémentaires à stocker et/ou effectuer"), - ), - ) - -def F_variables(statut) : return FACT( - statut=statut, - regles = ( MEME_NOMBRE ('NAMES', 'SIZES')), - NAMES = SIMP(statut="o", typ="TXM", max="**", validators=NoRepeat()), - SIZES = SIMP(statut="o", typ="I", val_min=1, max="**") - ) -def ChDir(dirname): - os.chdir(os.path.abspath(dirname)) - return 1 -ChDir.info = u"This has to be a regular directory path." - -ASSIMILATION_STUDY = PROC(nom="ASSIMILATION_STUDY", - op=None, - repetable = "n", - StudyName = SIMP(statut="o", typ = "TXM", defaut="ADAO Calculation Case"), - StudyRepertory = SIMP(statut="f", typ = "Repertoire", validators=FunctionVal(ChDir), min=1, max=1), - Debug = SIMP(statut="f", typ = "I", into=(0, 1), defaut=0), - AlgorithmParameters = F_AlgorithmParameters("o",("3DVAR", "4DVAR", "Blue", "DerivativeFreeOptimization", "EnsembleBlue", "ExtendedBlue", "ExtendedKalmanFilter", "KalmanFilter", "LinearLeastSquares", "NonLinearLeastSquares", "ParticleSwarmOptimization", "QuantileRegression", "UnscentedKalmanFilter", ), AlgorithmParametersInNS), - Background = F_Background("o", BackgroundInNS), - BackgroundError = F_BackgroundError("o", BackgroundErrorInNS), - Observation = F_Observation("o", ObservationInNS), - ObservationError = F_ObservationError("o", ObservationErrorInNS), - ObservationOperator = F_ObservationOperator("o"), - EvolutionModel = F_EvolutionModel("f"), - EvolutionError = F_EvolutionError("f", EvolutionErrorInNS), - ControlInput = F_ControlInput("f"), - UserDataInit = F_Init("f"), - UserPostAnalysis = F_UserPostAnalysis("o"), - InputVariables = F_variables("f"), - OutputVariables = F_variables("f"), - Observers = F_Observers("f") - ) - -CHECKING_STUDY = PROC(nom="CHECKING_STUDY", - op=None, - repetable = "n", - StudyName = SIMP(statut="o", typ = "TXM", defaut="ADAO Checking Case"), - StudyRepertory = SIMP(statut="f", typ = "Repertoire", validators=FunctionVal(ChDir), min=1, max=1), - Debug = SIMP(statut="f", typ = "I", into=(0, 1), defaut=0), - AlgorithmParameters = F_AlgorithmParameters("o", ("AdjointTest", "FunctionTest", "GradientTest", "LinearityTest", "ObserverTest", "SamplingTest", "TangentTest", ), AlgorithmParametersInNS), - CheckingPoint = F_CheckingPoint("o", CheckingPointInNS), - BackgroundError = F_BackgroundError("f", BackgroundErrorInNS), - Observation = F_Observation("f", ObservationInNS), - ObservationError = F_ObservationError("f", ObservationErrorInNS), - ObservationOperator = F_ObservationOperator("o"), - UserDataInit = F_Init("f"), - Observers = F_Observers("f") - ) diff --git a/Adao/ADAO_Cata_V0_V8_3_0_DEV.py b/Adao/ADAO_Cata_V0_V8_3_0_DEV.py deleted file mode 100755 index 78beda68..00000000 --- a/Adao/ADAO_Cata_V0_V8_3_0_DEV.py +++ /dev/null @@ -1,1270 +0,0 @@ -#-*-coding:iso-8859-1-*- -# -# Copyright (C) 2008-2017 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 -# -# Author: Jean-Philippe Argaud, jean-philippe.argaud@edf.fr, EDF R&D - -# -------------------------------------------------------- -# Generated by AdaoCatalogGenerator on 2017-03-06 09:14:06 -# -------------------------------------------------------- - -import os, re -import Accas -from Accas import * - -JdC = JDC_CATA ( - code = 'ADAO', - execmodul = None, - regles = ( AU_MOINS_UN ('ASSIMILATION_STUDY','CHECKING_STUDY'), AU_PLUS_UN ('ASSIMILATION_STUDY','CHECKING_STUDY')), - ) -VERSION_CATALOGUE='V8_3_0' - -def NoCheckInNS(filename): - return 1 -NoCheckInNS.info = "" -def DirectOperatorInNS(filename): - if os.path.exists(filename): - fc = open(filename, 'r').readlines() - cr = re.compile("^def[\s]*DirectOperator[\s]*\(") - for ln in fc: - if cr.match(ln): return 1 - cr = re.compile("^DirectOperator[\s]*=") - for ln in fc: - if cr.match(ln): return 1 - return 0 -DirectOperatorInNS.info = u"The Python file has to contain explicitly a \"DirectOperator\" function definition with only one vector as argument." -def TangentOperatorInNS(filename): - if os.path.exists(filename): - fc = open(filename, 'r').readlines() - cr = re.compile("^def[\s]*TangentOperator[\s]*\(") - for ln in fc: - if cr.match(ln): return 1 - cr = re.compile("^TangentOperator[\s]*=") - for ln in fc: - if cr.match(ln): return 1 - return 0 -TangentOperatorInNS.info = u"The Python file has to contain explicitly a \"TangentOperator\" function definition with only one pair of vectors as argument." -def AdjointOperatorInNS(filename): - if os.path.exists(filename): - fc = open(filename, 'r').readlines() - cr = re.compile("^def[\s]*AdjointOperator[\s]*\(") - for ln in fc: - if cr.match(ln): return 1 - cr = re.compile("^AdjointOperator[\s]*=") - for ln in fc: - if cr.match(ln): return 1 - return 0 -AdjointOperatorInNS.info = u"The Python file has to contain explicitly an \"AdjointOperator\" function definition with only one pair of vectors as argument." - -def F_VectorSerie(statut, fv=NoCheckInNS) : return FACT( - statut = statut, - FROM = SIMP(statut = "o", typ = "TXM", into=("String", "Script", ), defaut="Script"), - SCRIPT_DATA = BLOC ( condition = " FROM in ( 'Script', ) ", - SCRIPT_FILE = SIMP(statut = "o", typ = "FichierNoAbs", validators=[OnlyStr(), FileExtVal('py'), FunctionVal(fv)], fr="En attente d'un nom de fichier script, avec ou sans le chemin complet pour le trouver, contenant si nécessaire la définition d'une variable interne de même nom que le concept parent", ang="Waiting for a script file name, with or without the full path to find it, containing if necessary the definition of an internal variable of the same name as the parent concept"), - ), - STRING_DATA = BLOC ( condition = " FROM in ( 'String', ) ", - STRING = SIMP(statut = "o", typ = "TXM", fr="En attente d'une chaine de caractères entre guillements. Pour construire un vecteur ou une matrice, ce doit être une suite de nombres, utilisant un espace ou une virgule pour séparer deux éléments et un point-virgule pour séparer deux lignes", ang="Waiting for a string in quotes. To build a vector or a matrix, it has to be a float serie, using a space or comma to separate two elements in a line, a semi-colon to separate rows"), - ), - SCRIPTWITHFUNCTIONS_DATA = BLOC ( condition = " FROM in ( 'ScriptWithFunctions', ) ", - SCRIPTWITHFUNCTIONS_FILE = SIMP(statut = "o", typ = "FichierNoAbs", validators=[OnlyStr(), FileExtVal('py'), FunctionVal(DirectOperatorInNS), FunctionVal(TangentOperatorInNS), FunctionVal(AdjointOperatorInNS)], fr="En attente d'un nom de fichier script, avec ou sans le chemin complet pour le trouver, contenant en variables internes trois fonctions de calcul nommées DirectOperator, TangentOperator et AdjointOperator", ang="Waiting for a script file name, with or without the full path to find it, containing as internal variables three computation functions named DirectOperator, TangentOperator and AdjointOperator"), - ), - SCRIPTWITHONEFUNCTION_DATA = BLOC ( condition = " FROM in ( 'ScriptWithOneFunction', ) ", - SCRIPTWITHONEFUNCTION_FILE = SIMP(statut = "o", typ = "FichierNoAbs", validators=[OnlyStr(), FileExtVal('py'), FunctionVal(DirectOperatorInNS)], fr="En attente d'un nom de fichier script, avec ou sans le chemin complet pour le trouver, contenant en variable interne une seule fonction de calcul nommée DirectOperator", ang="Waiting for a script file name, with or without the full path to find it, containing as internal variable only one function named DirectOperator"), - DifferentialIncrement = SIMP(statut="o", typ = "R", val_min=0, val_max=1, defaut=0.01, fr="Incrément de la perturbation dX pour calculer la dérivée, construite en multipliant X par l'incrément en évitant les valeurs nulles", ang="Increment of dX perturbation to calculate the derivative, build multiplying X by the increment avoiding null values"), - CenteredFiniteDifference = SIMP(statut="o", typ = "I", into=(0, 1), defaut=0, fr="Formulation centrée (1) ou décentrée (0) pour la méthode des différences finies", ang="Centered (1) or uncentered (0) formulation for the finite differences method"), - EnableMultiProcessing = SIMP(statut="f", typ = "I", into=(0, 1), defaut=0, fr="Calculs élémentaires effectués en séquentiel (0) ou en parallèle (1) dans la méthode des différences finies", ang="Elementary calculations done sequentially (0) or in parallel (1) in the finite differences method"), - NumberOfProcesses = SIMP(statut="f", typ = "I", val_min=0, defaut=0, fr="Nombre de processus parallèles, 0 pour un contrôle automatique", ang="Number of parallel processes, 0 for automatic control"), - ), - SCRIPTWITHSWITCH_DATA = BLOC ( condition = " FROM in ( 'ScriptWithSwitch', ) ", - SCRIPTWITHSWITCH_FILE = SIMP(statut = "o", typ = "FichierNoAbs", validators=[OnlyStr(), FileExtVal('py')], fr="En attente d'un nom de fichier script, avec ou sans le chemin complet pour le trouver, contenant un switch pour les calculs direct, tangent et adjoint", ang="Waiting for a script file name, with or without the full path to find it, containing a switch for direct, tangent and adjoint computations"), - ), - TEMPLATE_DATA = BLOC (condition = " FROM in ( 'Template', ) ", - Template = SIMP(statut = "o", typ = "TXM", min=1, max=1, defaut = "AnalysisPrinter", into=("AnalysisPrinter", "AnalysisSaver", "AnalysisPrinterAndSaver")), - AnalysisPrinter = BLOC (condition = " Template == 'AnalysisPrinter' ", - ValueTemplate = SIMP(statut = "o", typ = "TXM", min=1, max=1, defaut = "import numpy\nxa=numpy.ravel(ADD.get('Analysis')[-1])\nprint 'Analysis:',xa" ), - ), - AnalysisSaver = BLOC (condition = " Template == 'AnalysisSaver' ", - ValueTemplate = SIMP(statut = "o", typ = "TXM", min=1, max=1, defaut = "import numpy\nxa=numpy.ravel(ADD.get('Analysis')[-1])\nf='/tmp/analysis.txt'\nprint 'Analysis saved in \"%s\"'%f\nnumpy.savetxt(f,xa)" ), - ), - AnalysisPrinterAndSaver = BLOC (condition = " Template == 'AnalysisPrinterAndSaver' ", - ValueTemplate = SIMP(statut = "o", typ = "TXM", min=1, max=1, defaut = "import numpy\nxa=numpy.ravel(ADD.get('Analysis')[-1])\nprint 'Analysis:',xa\nf='/tmp/analysis.txt'\nprint 'Analysis saved in \"%s\"'%f\nnumpy.savetxt(f,xa)" ), - ), - ), - ) - -def F_Function(statut, fv=NoCheckInNS) : return FACT( - statut = statut, - FROM = SIMP(statut = "o", typ = "TXM", into=("ScriptWithOneFunction", "ScriptWithFunctions", "ScriptWithSwitch", "FunctionDict", ), defaut="ScriptWithOneFunction"), - SCRIPT_DATA = BLOC ( condition = " FROM in ( 'Script', ) ", - SCRIPT_FILE = SIMP(statut = "o", typ = "FichierNoAbs", validators=[OnlyStr(), FileExtVal('py'), FunctionVal(fv)], fr="En attente d'un nom de fichier script, avec ou sans le chemin complet pour le trouver, contenant si nécessaire la définition d'une variable interne de même nom que le concept parent", ang="Waiting for a script file name, with or without the full path to find it, containing if necessary the definition of an internal variable of the same name as the parent concept"), - ), - STRING_DATA = BLOC ( condition = " FROM in ( 'String', ) ", - STRING = SIMP(statut = "o", typ = "TXM", fr="En attente d'une chaine de caractères entre guillements. Pour construire un vecteur ou une matrice, ce doit être une suite de nombres, utilisant un espace ou une virgule pour séparer deux éléments et un point-virgule pour séparer deux lignes", ang="Waiting for a string in quotes. To build a vector or a matrix, it has to be a float serie, using a space or comma to separate two elements in a line, a semi-colon to separate rows"), - ), - SCRIPTWITHFUNCTIONS_DATA = BLOC ( condition = " FROM in ( 'ScriptWithFunctions', ) ", - SCRIPTWITHFUNCTIONS_FILE = SIMP(statut = "o", typ = "FichierNoAbs", validators=[OnlyStr(), FileExtVal('py'), FunctionVal(DirectOperatorInNS), FunctionVal(TangentOperatorInNS), FunctionVal(AdjointOperatorInNS)], fr="En attente d'un nom de fichier script, avec ou sans le chemin complet pour le trouver, contenant en variables internes trois fonctions de calcul nommées DirectOperator, TangentOperator et AdjointOperator", ang="Waiting for a script file name, with or without the full path to find it, containing as internal variables three computation functions named DirectOperator, TangentOperator and AdjointOperator"), - ), - SCRIPTWITHONEFUNCTION_DATA = BLOC ( condition = " FROM in ( 'ScriptWithOneFunction', ) ", - SCRIPTWITHONEFUNCTION_FILE = SIMP(statut = "o", typ = "FichierNoAbs", validators=[OnlyStr(), FileExtVal('py'), FunctionVal(DirectOperatorInNS)], fr="En attente d'un nom de fichier script, avec ou sans le chemin complet pour le trouver, contenant en variable interne une seule fonction de calcul nommée DirectOperator", ang="Waiting for a script file name, with or without the full path to find it, containing as internal variable only one function named DirectOperator"), - DifferentialIncrement = SIMP(statut="o", typ = "R", val_min=0, val_max=1, defaut=0.01, fr="Incrément de la perturbation dX pour calculer la dérivée, construite en multipliant X par l'incrément en évitant les valeurs nulles", ang="Increment of dX perturbation to calculate the derivative, build multiplying X by the increment avoiding null values"), - CenteredFiniteDifference = SIMP(statut="o", typ = "I", into=(0, 1), defaut=0, fr="Formulation centrée (1) ou décentrée (0) pour la méthode des différences finies", ang="Centered (1) or uncentered (0) formulation for the finite differences method"), - EnableMultiProcessing = SIMP(statut="f", typ = "I", into=(0, 1), defaut=0, fr="Calculs élémentaires effectués en séquentiel (0) ou en parallèle (1) dans la méthode des différences finies", ang="Elementary calculations done sequentially (0) or in parallel (1) in the finite differences method"), - NumberOfProcesses = SIMP(statut="f", typ = "I", val_min=0, defaut=0, fr="Nombre de processus parallèles, 0 pour un contrôle automatique", ang="Number of parallel processes, 0 for automatic control"), - ), - SCRIPTWITHSWITCH_DATA = BLOC ( condition = " FROM in ( 'ScriptWithSwitch', ) ", - SCRIPTWITHSWITCH_FILE = SIMP(statut = "o", typ = "FichierNoAbs", validators=[OnlyStr(), FileExtVal('py')], fr="En attente d'un nom de fichier script, avec ou sans le chemin complet pour le trouver, contenant un switch pour les calculs direct, tangent et adjoint", ang="Waiting for a script file name, with or without the full path to find it, containing a switch for direct, tangent and adjoint computations"), - ), - TEMPLATE_DATA = BLOC (condition = " FROM in ( 'Template', ) ", - Template = SIMP(statut = "o", typ = "TXM", min=1, max=1, defaut = "AnalysisPrinter", into=("AnalysisPrinter", "AnalysisSaver", "AnalysisPrinterAndSaver")), - AnalysisPrinter = BLOC (condition = " Template == 'AnalysisPrinter' ", - ValueTemplate = SIMP(statut = "o", typ = "TXM", min=1, max=1, defaut = "import numpy\nxa=numpy.ravel(ADD.get('Analysis')[-1])\nprint 'Analysis:',xa" ), - ), - AnalysisSaver = BLOC (condition = " Template == 'AnalysisSaver' ", - ValueTemplate = SIMP(statut = "o", typ = "TXM", min=1, max=1, defaut = "import numpy\nxa=numpy.ravel(ADD.get('Analysis')[-1])\nf='/tmp/analysis.txt'\nprint 'Analysis saved in \"%s\"'%f\nnumpy.savetxt(f,xa)" ), - ), - AnalysisPrinterAndSaver = BLOC (condition = " Template == 'AnalysisPrinterAndSaver' ", - ValueTemplate = SIMP(statut = "o", typ = "TXM", min=1, max=1, defaut = "import numpy\nxa=numpy.ravel(ADD.get('Analysis')[-1])\nprint 'Analysis:',xa\nf='/tmp/analysis.txt'\nprint 'Analysis saved in \"%s\"'%f\nnumpy.savetxt(f,xa)" ), - ), - ), - ) - -def F_Matrix(statut, fv=NoCheckInNS) : return FACT( - statut = statut, - FROM = SIMP(statut = "o", typ = "TXM", into=("String", "Script", ), defaut="Script"), - SCRIPT_DATA = BLOC ( condition = " FROM in ( 'Script', ) ", - SCRIPT_FILE = SIMP(statut = "o", typ = "FichierNoAbs", validators=[OnlyStr(), FileExtVal('py'), FunctionVal(fv)], fr="En attente d'un nom de fichier script, avec ou sans le chemin complet pour le trouver, contenant si nécessaire la définition d'une variable interne de même nom que le concept parent", ang="Waiting for a script file name, with or without the full path to find it, containing if necessary the definition of an internal variable of the same name as the parent concept"), - ), - STRING_DATA = BLOC ( condition = " FROM in ( 'String', ) ", - STRING = SIMP(statut = "o", typ = "TXM", fr="En attente d'une chaine de caractères entre guillements. Pour construire un vecteur ou une matrice, ce doit être une suite de nombres, utilisant un espace ou une virgule pour séparer deux éléments et un point-virgule pour séparer deux lignes", ang="Waiting for a string in quotes. To build a vector or a matrix, it has to be a float serie, using a space or comma to separate two elements in a line, a semi-colon to separate rows"), - ), - SCRIPTWITHFUNCTIONS_DATA = BLOC ( condition = " FROM in ( 'ScriptWithFunctions', ) ", - SCRIPTWITHFUNCTIONS_FILE = SIMP(statut = "o", typ = "FichierNoAbs", validators=[OnlyStr(), FileExtVal('py'), FunctionVal(DirectOperatorInNS), FunctionVal(TangentOperatorInNS), FunctionVal(AdjointOperatorInNS)], fr="En attente d'un nom de fichier script, avec ou sans le chemin complet pour le trouver, contenant en variables internes trois fonctions de calcul nommées DirectOperator, TangentOperator et AdjointOperator", ang="Waiting for a script file name, with or without the full path to find it, containing as internal variables three computation functions named DirectOperator, TangentOperator and AdjointOperator"), - ), - SCRIPTWITHONEFUNCTION_DATA = BLOC ( condition = " FROM in ( 'ScriptWithOneFunction', ) ", - SCRIPTWITHONEFUNCTION_FILE = SIMP(statut = "o", typ = "FichierNoAbs", validators=[OnlyStr(), FileExtVal('py'), FunctionVal(DirectOperatorInNS)], fr="En attente d'un nom de fichier script, avec ou sans le chemin complet pour le trouver, contenant en variable interne une seule fonction de calcul nommée DirectOperator", ang="Waiting for a script file name, with or without the full path to find it, containing as internal variable only one function named DirectOperator"), - DifferentialIncrement = SIMP(statut="o", typ = "R", val_min=0, val_max=1, defaut=0.01, fr="Incrément de la perturbation dX pour calculer la dérivée, construite en multipliant X par l'incrément en évitant les valeurs nulles", ang="Increment of dX perturbation to calculate the derivative, build multiplying X by the increment avoiding null values"), - CenteredFiniteDifference = SIMP(statut="o", typ = "I", into=(0, 1), defaut=0, fr="Formulation centrée (1) ou décentrée (0) pour la méthode des différences finies", ang="Centered (1) or uncentered (0) formulation for the finite differences method"), - EnableMultiProcessing = SIMP(statut="f", typ = "I", into=(0, 1), defaut=0, fr="Calculs élémentaires effectués en séquentiel (0) ou en parallèle (1) dans la méthode des différences finies", ang="Elementary calculations done sequentially (0) or in parallel (1) in the finite differences method"), - NumberOfProcesses = SIMP(statut="f", typ = "I", val_min=0, defaut=0, fr="Nombre de processus parallèles, 0 pour un contrôle automatique", ang="Number of parallel processes, 0 for automatic control"), - ), - SCRIPTWITHSWITCH_DATA = BLOC ( condition = " FROM in ( 'ScriptWithSwitch', ) ", - SCRIPTWITHSWITCH_FILE = SIMP(statut = "o", typ = "FichierNoAbs", validators=[OnlyStr(), FileExtVal('py')], fr="En attente d'un nom de fichier script, avec ou sans le chemin complet pour le trouver, contenant un switch pour les calculs direct, tangent et adjoint", ang="Waiting for a script file name, with or without the full path to find it, containing a switch for direct, tangent and adjoint computations"), - ), - TEMPLATE_DATA = BLOC (condition = " FROM in ( 'Template', ) ", - Template = SIMP(statut = "o", typ = "TXM", min=1, max=1, defaut = "AnalysisPrinter", into=("AnalysisPrinter", "AnalysisSaver", "AnalysisPrinterAndSaver")), - AnalysisPrinter = BLOC (condition = " Template == 'AnalysisPrinter' ", - ValueTemplate = SIMP(statut = "o", typ = "TXM", min=1, max=1, defaut = "import numpy\nxa=numpy.ravel(ADD.get('Analysis')[-1])\nprint 'Analysis:',xa" ), - ), - AnalysisSaver = BLOC (condition = " Template == 'AnalysisSaver' ", - ValueTemplate = SIMP(statut = "o", typ = "TXM", min=1, max=1, defaut = "import numpy\nxa=numpy.ravel(ADD.get('Analysis')[-1])\nf='/tmp/analysis.txt'\nprint 'Analysis saved in \"%s\"'%f\nnumpy.savetxt(f,xa)" ), - ), - AnalysisPrinterAndSaver = BLOC (condition = " Template == 'AnalysisPrinterAndSaver' ", - ValueTemplate = SIMP(statut = "o", typ = "TXM", min=1, max=1, defaut = "import numpy\nxa=numpy.ravel(ADD.get('Analysis')[-1])\nprint 'Analysis:',xa\nf='/tmp/analysis.txt'\nprint 'Analysis saved in \"%s\"'%f\nnumpy.savetxt(f,xa)" ), - ), - ), - ) - -def F_DiagonalSparseMatrix(statut, fv=NoCheckInNS) : return FACT( - statut = statut, - FROM = SIMP(statut = "o", typ = "TXM", into=("String", "Script", ), defaut="String"), - SCRIPT_DATA = BLOC ( condition = " FROM in ( 'Script', ) ", - SCRIPT_FILE = SIMP(statut = "o", typ = "FichierNoAbs", validators=[OnlyStr(), FileExtVal('py'), FunctionVal(fv)], fr="En attente d'un nom de fichier script, avec ou sans le chemin complet pour le trouver, contenant si nécessaire la définition d'une variable interne de même nom que le concept parent", ang="Waiting for a script file name, with or without the full path to find it, containing if necessary the definition of an internal variable of the same name as the parent concept"), - ), - STRING_DATA = BLOC ( condition = " FROM in ( 'String', ) ", - STRING = SIMP(statut = "o", typ = "TXM", fr="En attente d'une chaine de caractères entre guillements. Pour construire un vecteur ou une matrice, ce doit être une suite de nombres, utilisant un espace ou une virgule pour séparer deux éléments et un point-virgule pour séparer deux lignes", ang="Waiting for a string in quotes. To build a vector or a matrix, it has to be a float serie, using a space or comma to separate two elements in a line, a semi-colon to separate rows"), - ), - SCRIPTWITHFUNCTIONS_DATA = BLOC ( condition = " FROM in ( 'ScriptWithFunctions', ) ", - SCRIPTWITHFUNCTIONS_FILE = SIMP(statut = "o", typ = "FichierNoAbs", validators=[OnlyStr(), FileExtVal('py'), FunctionVal(DirectOperatorInNS), FunctionVal(TangentOperatorInNS), FunctionVal(AdjointOperatorInNS)], fr="En attente d'un nom de fichier script, avec ou sans le chemin complet pour le trouver, contenant en variables internes trois fonctions de calcul nommées DirectOperator, TangentOperator et AdjointOperator", ang="Waiting for a script file name, with or without the full path to find it, containing as internal variables three computation functions named DirectOperator, TangentOperator and AdjointOperator"), - ), - SCRIPTWITHONEFUNCTION_DATA = BLOC ( condition = " FROM in ( 'ScriptWithOneFunction', ) ", - SCRIPTWITHONEFUNCTION_FILE = SIMP(statut = "o", typ = "FichierNoAbs", validators=[OnlyStr(), FileExtVal('py'), FunctionVal(DirectOperatorInNS)], fr="En attente d'un nom de fichier script, avec ou sans le chemin complet pour le trouver, contenant en variable interne une seule fonction de calcul nommée DirectOperator", ang="Waiting for a script file name, with or without the full path to find it, containing as internal variable only one function named DirectOperator"), - DifferentialIncrement = SIMP(statut="o", typ = "R", val_min=0, val_max=1, defaut=0.01, fr="Incrément de la perturbation dX pour calculer la dérivée, construite en multipliant X par l'incrément en évitant les valeurs nulles", ang="Increment of dX perturbation to calculate the derivative, build multiplying X by the increment avoiding null values"), - CenteredFiniteDifference = SIMP(statut="o", typ = "I", into=(0, 1), defaut=0, fr="Formulation centrée (1) ou décentrée (0) pour la méthode des différences finies", ang="Centered (1) or uncentered (0) formulation for the finite differences method"), - EnableMultiProcessing = SIMP(statut="f", typ = "I", into=(0, 1), defaut=0, fr="Calculs élémentaires effectués en séquentiel (0) ou en parallèle (1) dans la méthode des différences finies", ang="Elementary calculations done sequentially (0) or in parallel (1) in the finite differences method"), - NumberOfProcesses = SIMP(statut="f", typ = "I", val_min=0, defaut=0, fr="Nombre de processus parallèles, 0 pour un contrôle automatique", ang="Number of parallel processes, 0 for automatic control"), - ), - SCRIPTWITHSWITCH_DATA = BLOC ( condition = " FROM in ( 'ScriptWithSwitch', ) ", - SCRIPTWITHSWITCH_FILE = SIMP(statut = "o", typ = "FichierNoAbs", validators=[OnlyStr(), FileExtVal('py')], fr="En attente d'un nom de fichier script, avec ou sans le chemin complet pour le trouver, contenant un switch pour les calculs direct, tangent et adjoint", ang="Waiting for a script file name, with or without the full path to find it, containing a switch for direct, tangent and adjoint computations"), - ), - TEMPLATE_DATA = BLOC (condition = " FROM in ( 'Template', ) ", - Template = SIMP(statut = "o", typ = "TXM", min=1, max=1, defaut = "AnalysisPrinter", into=("AnalysisPrinter", "AnalysisSaver", "AnalysisPrinterAndSaver")), - AnalysisPrinter = BLOC (condition = " Template == 'AnalysisPrinter' ", - ValueTemplate = SIMP(statut = "o", typ = "TXM", min=1, max=1, defaut = "import numpy\nxa=numpy.ravel(ADD.get('Analysis')[-1])\nprint 'Analysis:',xa" ), - ), - AnalysisSaver = BLOC (condition = " Template == 'AnalysisSaver' ", - ValueTemplate = SIMP(statut = "o", typ = "TXM", min=1, max=1, defaut = "import numpy\nxa=numpy.ravel(ADD.get('Analysis')[-1])\nf='/tmp/analysis.txt'\nprint 'Analysis saved in \"%s\"'%f\nnumpy.savetxt(f,xa)" ), - ), - AnalysisPrinterAndSaver = BLOC (condition = " Template == 'AnalysisPrinterAndSaver' ", - ValueTemplate = SIMP(statut = "o", typ = "TXM", min=1, max=1, defaut = "import numpy\nxa=numpy.ravel(ADD.get('Analysis')[-1])\nprint 'Analysis:',xa\nf='/tmp/analysis.txt'\nprint 'Analysis saved in \"%s\"'%f\nnumpy.savetxt(f,xa)" ), - ), - ), - ) - -def F_Vector(statut, fv=NoCheckInNS) : return FACT( - statut = statut, - FROM = SIMP(statut = "o", typ = "TXM", into=("String", "Script", ), defaut="Script"), - SCRIPT_DATA = BLOC ( condition = " FROM in ( 'Script', ) ", - SCRIPT_FILE = SIMP(statut = "o", typ = "FichierNoAbs", validators=[OnlyStr(), FileExtVal('py'), FunctionVal(fv)], fr="En attente d'un nom de fichier script, avec ou sans le chemin complet pour le trouver, contenant si nécessaire la définition d'une variable interne de même nom que le concept parent", ang="Waiting for a script file name, with or without the full path to find it, containing if necessary the definition of an internal variable of the same name as the parent concept"), - ), - STRING_DATA = BLOC ( condition = " FROM in ( 'String', ) ", - STRING = SIMP(statut = "o", typ = "TXM", fr="En attente d'une chaine de caractères entre guillements. Pour construire un vecteur ou une matrice, ce doit être une suite de nombres, utilisant un espace ou une virgule pour séparer deux éléments et un point-virgule pour séparer deux lignes", ang="Waiting for a string in quotes. To build a vector or a matrix, it has to be a float serie, using a space or comma to separate two elements in a line, a semi-colon to separate rows"), - ), - SCRIPTWITHFUNCTIONS_DATA = BLOC ( condition = " FROM in ( 'ScriptWithFunctions', ) ", - SCRIPTWITHFUNCTIONS_FILE = SIMP(statut = "o", typ = "FichierNoAbs", validators=[OnlyStr(), FileExtVal('py'), FunctionVal(DirectOperatorInNS), FunctionVal(TangentOperatorInNS), FunctionVal(AdjointOperatorInNS)], fr="En attente d'un nom de fichier script, avec ou sans le chemin complet pour le trouver, contenant en variables internes trois fonctions de calcul nommées DirectOperator, TangentOperator et AdjointOperator", ang="Waiting for a script file name, with or without the full path to find it, containing as internal variables three computation functions named DirectOperator, TangentOperator and AdjointOperator"), - ), - SCRIPTWITHONEFUNCTION_DATA = BLOC ( condition = " FROM in ( 'ScriptWithOneFunction', ) ", - SCRIPTWITHONEFUNCTION_FILE = SIMP(statut = "o", typ = "FichierNoAbs", validators=[OnlyStr(), FileExtVal('py'), FunctionVal(DirectOperatorInNS)], fr="En attente d'un nom de fichier script, avec ou sans le chemin complet pour le trouver, contenant en variable interne une seule fonction de calcul nommée DirectOperator", ang="Waiting for a script file name, with or without the full path to find it, containing as internal variable only one function named DirectOperator"), - DifferentialIncrement = SIMP(statut="o", typ = "R", val_min=0, val_max=1, defaut=0.01, fr="Incrément de la perturbation dX pour calculer la dérivée, construite en multipliant X par l'incrément en évitant les valeurs nulles", ang="Increment of dX perturbation to calculate the derivative, build multiplying X by the increment avoiding null values"), - CenteredFiniteDifference = SIMP(statut="o", typ = "I", into=(0, 1), defaut=0, fr="Formulation centrée (1) ou décentrée (0) pour la méthode des différences finies", ang="Centered (1) or uncentered (0) formulation for the finite differences method"), - EnableMultiProcessing = SIMP(statut="f", typ = "I", into=(0, 1), defaut=0, fr="Calculs élémentaires effectués en séquentiel (0) ou en parallèle (1) dans la méthode des différences finies", ang="Elementary calculations done sequentially (0) or in parallel (1) in the finite differences method"), - NumberOfProcesses = SIMP(statut="f", typ = "I", val_min=0, defaut=0, fr="Nombre de processus parallèles, 0 pour un contrôle automatique", ang="Number of parallel processes, 0 for automatic control"), - ), - SCRIPTWITHSWITCH_DATA = BLOC ( condition = " FROM in ( 'ScriptWithSwitch', ) ", - SCRIPTWITHSWITCH_FILE = SIMP(statut = "o", typ = "FichierNoAbs", validators=[OnlyStr(), FileExtVal('py')], fr="En attente d'un nom de fichier script, avec ou sans le chemin complet pour le trouver, contenant un switch pour les calculs direct, tangent et adjoint", ang="Waiting for a script file name, with or without the full path to find it, containing a switch for direct, tangent and adjoint computations"), - ), - TEMPLATE_DATA = BLOC (condition = " FROM in ( 'Template', ) ", - Template = SIMP(statut = "o", typ = "TXM", min=1, max=1, defaut = "AnalysisPrinter", into=("AnalysisPrinter", "AnalysisSaver", "AnalysisPrinterAndSaver")), - AnalysisPrinter = BLOC (condition = " Template == 'AnalysisPrinter' ", - ValueTemplate = SIMP(statut = "o", typ = "TXM", min=1, max=1, defaut = "import numpy\nxa=numpy.ravel(ADD.get('Analysis')[-1])\nprint 'Analysis:',xa" ), - ), - AnalysisSaver = BLOC (condition = " Template == 'AnalysisSaver' ", - ValueTemplate = SIMP(statut = "o", typ = "TXM", min=1, max=1, defaut = "import numpy\nxa=numpy.ravel(ADD.get('Analysis')[-1])\nf='/tmp/analysis.txt'\nprint 'Analysis saved in \"%s\"'%f\nnumpy.savetxt(f,xa)" ), - ), - AnalysisPrinterAndSaver = BLOC (condition = " Template == 'AnalysisPrinterAndSaver' ", - ValueTemplate = SIMP(statut = "o", typ = "TXM", min=1, max=1, defaut = "import numpy\nxa=numpy.ravel(ADD.get('Analysis')[-1])\nprint 'Analysis:',xa\nf='/tmp/analysis.txt'\nprint 'Analysis saved in \"%s\"'%f\nnumpy.savetxt(f,xa)" ), - ), - ), - ) - -def F_Dict(statut, fv=NoCheckInNS) : return FACT( - statut = statut, - FROM = SIMP(statut = "o", typ = "TXM", into=("String", "Script", ), defaut="Script"), - SCRIPT_DATA = BLOC ( condition = " FROM in ( 'Script', ) ", - SCRIPT_FILE = SIMP(statut = "o", typ = "FichierNoAbs", validators=[OnlyStr(), FileExtVal('py'), FunctionVal(fv)], fr="En attente d'un nom de fichier script, avec ou sans le chemin complet pour le trouver, contenant si nécessaire la définition d'une variable interne de même nom que le concept parent", ang="Waiting for a script file name, with or without the full path to find it, containing if necessary the definition of an internal variable of the same name as the parent concept"), - ), - STRING_DATA = BLOC ( condition = " FROM in ( 'String', ) ", - STRING = SIMP(statut = "o", typ = "TXM", fr="En attente d'une chaine de caractères entre guillements. Pour construire un vecteur ou une matrice, ce doit être une suite de nombres, utilisant un espace ou une virgule pour séparer deux éléments et un point-virgule pour séparer deux lignes", ang="Waiting for a string in quotes. To build a vector or a matrix, it has to be a float serie, using a space or comma to separate two elements in a line, a semi-colon to separate rows"), - ), - SCRIPTWITHFUNCTIONS_DATA = BLOC ( condition = " FROM in ( 'ScriptWithFunctions', ) ", - SCRIPTWITHFUNCTIONS_FILE = SIMP(statut = "o", typ = "FichierNoAbs", validators=[OnlyStr(), FileExtVal('py'), FunctionVal(DirectOperatorInNS), FunctionVal(TangentOperatorInNS), FunctionVal(AdjointOperatorInNS)], fr="En attente d'un nom de fichier script, avec ou sans le chemin complet pour le trouver, contenant en variables internes trois fonctions de calcul nommées DirectOperator, TangentOperator et AdjointOperator", ang="Waiting for a script file name, with or without the full path to find it, containing as internal variables three computation functions named DirectOperator, TangentOperator and AdjointOperator"), - ), - SCRIPTWITHONEFUNCTION_DATA = BLOC ( condition = " FROM in ( 'ScriptWithOneFunction', ) ", - SCRIPTWITHONEFUNCTION_FILE = SIMP(statut = "o", typ = "FichierNoAbs", validators=[OnlyStr(), FileExtVal('py'), FunctionVal(DirectOperatorInNS)], fr="En attente d'un nom de fichier script, avec ou sans le chemin complet pour le trouver, contenant en variable interne une seule fonction de calcul nommée DirectOperator", ang="Waiting for a script file name, with or without the full path to find it, containing as internal variable only one function named DirectOperator"), - DifferentialIncrement = SIMP(statut="o", typ = "R", val_min=0, val_max=1, defaut=0.01, fr="Incrément de la perturbation dX pour calculer la dérivée, construite en multipliant X par l'incrément en évitant les valeurs nulles", ang="Increment of dX perturbation to calculate the derivative, build multiplying X by the increment avoiding null values"), - CenteredFiniteDifference = SIMP(statut="o", typ = "I", into=(0, 1), defaut=0, fr="Formulation centrée (1) ou décentrée (0) pour la méthode des différences finies", ang="Centered (1) or uncentered (0) formulation for the finite differences method"), - EnableMultiProcessing = SIMP(statut="f", typ = "I", into=(0, 1), defaut=0, fr="Calculs élémentaires effectués en séquentiel (0) ou en parallèle (1) dans la méthode des différences finies", ang="Elementary calculations done sequentially (0) or in parallel (1) in the finite differences method"), - NumberOfProcesses = SIMP(statut="f", typ = "I", val_min=0, defaut=0, fr="Nombre de processus parallèles, 0 pour un contrôle automatique", ang="Number of parallel processes, 0 for automatic control"), - ), - SCRIPTWITHSWITCH_DATA = BLOC ( condition = " FROM in ( 'ScriptWithSwitch', ) ", - SCRIPTWITHSWITCH_FILE = SIMP(statut = "o", typ = "FichierNoAbs", validators=[OnlyStr(), FileExtVal('py')], fr="En attente d'un nom de fichier script, avec ou sans le chemin complet pour le trouver, contenant un switch pour les calculs direct, tangent et adjoint", ang="Waiting for a script file name, with or without the full path to find it, containing a switch for direct, tangent and adjoint computations"), - ), - TEMPLATE_DATA = BLOC (condition = " FROM in ( 'Template', ) ", - Template = SIMP(statut = "o", typ = "TXM", min=1, max=1, defaut = "AnalysisPrinter", into=("AnalysisPrinter", "AnalysisSaver", "AnalysisPrinterAndSaver")), - AnalysisPrinter = BLOC (condition = " Template == 'AnalysisPrinter' ", - ValueTemplate = SIMP(statut = "o", typ = "TXM", min=1, max=1, defaut = "import numpy\nxa=numpy.ravel(ADD.get('Analysis')[-1])\nprint 'Analysis:',xa" ), - ), - AnalysisSaver = BLOC (condition = " Template == 'AnalysisSaver' ", - ValueTemplate = SIMP(statut = "o", typ = "TXM", min=1, max=1, defaut = "import numpy\nxa=numpy.ravel(ADD.get('Analysis')[-1])\nf='/tmp/analysis.txt'\nprint 'Analysis saved in \"%s\"'%f\nnumpy.savetxt(f,xa)" ), - ), - AnalysisPrinterAndSaver = BLOC (condition = " Template == 'AnalysisPrinterAndSaver' ", - ValueTemplate = SIMP(statut = "o", typ = "TXM", min=1, max=1, defaut = "import numpy\nxa=numpy.ravel(ADD.get('Analysis')[-1])\nprint 'Analysis:',xa\nf='/tmp/analysis.txt'\nprint 'Analysis saved in \"%s\"'%f\nnumpy.savetxt(f,xa)" ), - ), - ), - ) - -def F_ScalarSparseMatrix(statut, fv=NoCheckInNS) : return FACT( - statut = statut, - FROM = SIMP(statut = "o", typ = "TXM", into=("String", "Script", ), defaut="String"), - SCRIPT_DATA = BLOC ( condition = " FROM in ( 'Script', ) ", - SCRIPT_FILE = SIMP(statut = "o", typ = "FichierNoAbs", validators=[OnlyStr(), FileExtVal('py'), FunctionVal(fv)], fr="En attente d'un nom de fichier script, avec ou sans le chemin complet pour le trouver, contenant si nécessaire la définition d'une variable interne de même nom que le concept parent", ang="Waiting for a script file name, with or without the full path to find it, containing if necessary the definition of an internal variable of the same name as the parent concept"), - ), - STRING_DATA = BLOC ( condition = " FROM in ( 'String', ) ", - STRING = SIMP(statut = "o", typ = "TXM", defaut="1.", fr="En attente d'une chaine de caractères entre guillements. Pour construire un vecteur ou une matrice, ce doit être une suite de nombres, utilisant un espace ou une virgule pour séparer deux éléments et un point-virgule pour séparer deux lignes", ang="Waiting for a string in quotes. To build a vector or a matrix, it has to be a float serie, using a space or comma to separate two elements in a line, a semi-colon to separate rows"), - ), - SCRIPTWITHFUNCTIONS_DATA = BLOC ( condition = " FROM in ( 'ScriptWithFunctions', ) ", - SCRIPTWITHFUNCTIONS_FILE = SIMP(statut = "o", typ = "FichierNoAbs", validators=[OnlyStr(), FileExtVal('py'), FunctionVal(DirectOperatorInNS), FunctionVal(TangentOperatorInNS), FunctionVal(AdjointOperatorInNS)], fr="En attente d'un nom de fichier script, avec ou sans le chemin complet pour le trouver, contenant en variables internes trois fonctions de calcul nommées DirectOperator, TangentOperator et AdjointOperator", ang="Waiting for a script file name, with or without the full path to find it, containing as internal variables three computation functions named DirectOperator, TangentOperator and AdjointOperator"), - ), - SCRIPTWITHONEFUNCTION_DATA = BLOC ( condition = " FROM in ( 'ScriptWithOneFunction', ) ", - SCRIPTWITHONEFUNCTION_FILE = SIMP(statut = "o", typ = "FichierNoAbs", validators=[OnlyStr(), FileExtVal('py'), FunctionVal(DirectOperatorInNS)], fr="En attente d'un nom de fichier script, avec ou sans le chemin complet pour le trouver, contenant en variable interne une seule fonction de calcul nommée DirectOperator", ang="Waiting for a script file name, with or without the full path to find it, containing as internal variable only one function named DirectOperator"), - DifferentialIncrement = SIMP(statut="o", typ = "R", val_min=0, val_max=1, defaut=0.01, fr="Incrément de la perturbation dX pour calculer la dérivée, construite en multipliant X par l'incrément en évitant les valeurs nulles", ang="Increment of dX perturbation to calculate the derivative, build multiplying X by the increment avoiding null values"), - CenteredFiniteDifference = SIMP(statut="o", typ = "I", into=(0, 1), defaut=0, fr="Formulation centrée (1) ou décentrée (0) pour la méthode des différences finies", ang="Centered (1) or uncentered (0) formulation for the finite differences method"), - EnableMultiProcessing = SIMP(statut="f", typ = "I", into=(0, 1), defaut=0, fr="Calculs élémentaires effectués en séquentiel (0) ou en parallèle (1) dans la méthode des différences finies", ang="Elementary calculations done sequentially (0) or in parallel (1) in the finite differences method"), - NumberOfProcesses = SIMP(statut="f", typ = "I", val_min=0, defaut=0, fr="Nombre de processus parallèles, 0 pour un contrôle automatique", ang="Number of parallel processes, 0 for automatic control"), - ), - SCRIPTWITHSWITCH_DATA = BLOC ( condition = " FROM in ( 'ScriptWithSwitch', ) ", - SCRIPTWITHSWITCH_FILE = SIMP(statut = "o", typ = "FichierNoAbs", validators=[OnlyStr(), FileExtVal('py')], fr="En attente d'un nom de fichier script, avec ou sans le chemin complet pour le trouver, contenant un switch pour les calculs direct, tangent et adjoint", ang="Waiting for a script file name, with or without the full path to find it, containing a switch for direct, tangent and adjoint computations"), - ), - TEMPLATE_DATA = BLOC (condition = " FROM in ( 'Template', ) ", - Template = SIMP(statut = "o", typ = "TXM", min=1, max=1, defaut = "AnalysisPrinter", into=("AnalysisPrinter", "AnalysisSaver", "AnalysisPrinterAndSaver")), - AnalysisPrinter = BLOC (condition = " Template == 'AnalysisPrinter' ", - ValueTemplate = SIMP(statut = "o", typ = "TXM", min=1, max=1, defaut = "import numpy\nxa=numpy.ravel(ADD.get('Analysis')[-1])\nprint 'Analysis:',xa" ), - ), - AnalysisSaver = BLOC (condition = " Template == 'AnalysisSaver' ", - ValueTemplate = SIMP(statut = "o", typ = "TXM", min=1, max=1, defaut = "import numpy\nxa=numpy.ravel(ADD.get('Analysis')[-1])\nf='/tmp/analysis.txt'\nprint 'Analysis saved in \"%s\"'%f\nnumpy.savetxt(f,xa)" ), - ), - AnalysisPrinterAndSaver = BLOC (condition = " Template == 'AnalysisPrinterAndSaver' ", - ValueTemplate = SIMP(statut = "o", typ = "TXM", min=1, max=1, defaut = "import numpy\nxa=numpy.ravel(ADD.get('Analysis')[-1])\nprint 'Analysis:',xa\nf='/tmp/analysis.txt'\nprint 'Analysis saved in \"%s\"'%f\nnumpy.savetxt(f,xa)" ), - ), - ), - ) - -def ObservationErrorInNS(filename): - if os.path.exists(filename): - fc = open(filename, 'r').readlines() - cr = re.compile("^ObservationError[\s]*=") - for ln in fc: - if cr.match(ln): return 1 - return 0 -ObservationErrorInNS.info = u"The Python file has to contain explicitly a \"ObservationError\" variable." -def F_ObservationError(statut, fv=NoCheckInNS) : return FACT( - statut=statut, - Stored = SIMP(statut="f", typ = "I", into=(0, 1), defaut=0, fr="Choix de stockage interne ou non du concept parent", ang="Choice of the storage or not of the parent concept"), - INPUT_TYPE = SIMP(statut="o", typ = "TXM", into=("Matrix", "ScalarSparseMatrix", "DiagonalSparseMatrix", ), defaut="ScalarSparseMatrix"), - Matrix = BLOC ( condition = " INPUT_TYPE in ( 'Matrix', ) ", - data = F_Matrix("o", fv), - ), - ScalarSparseMatrix = BLOC ( condition = " INPUT_TYPE in ( 'ScalarSparseMatrix', ) ", - data = F_ScalarSparseMatrix("o", fv), - ), - DiagonalSparseMatrix = BLOC ( condition = " INPUT_TYPE in ( 'DiagonalSparseMatrix', ) ", - data = F_DiagonalSparseMatrix("o", fv), - ), - ) - -def ObservationInNS(filename): - if os.path.exists(filename): - fc = open(filename, 'r').readlines() - cr = re.compile("^Observation[\s]*=") - for ln in fc: - if cr.match(ln): return 1 - return 0 -ObservationInNS.info = u"The Python file has to contain explicitly a \"Observation\" variable." -def F_Observation(statut, fv=NoCheckInNS) : return FACT( - statut=statut, - Stored = SIMP(statut="f", typ = "I", into=(0, 1), defaut=0, fr="Choix de stockage interne ou non du concept parent", ang="Choice of the storage or not of the parent concept"), - INPUT_TYPE = SIMP(statut="o", typ = "TXM", into=("Vector", "VectorSerie", ), defaut="Vector"), - Vector = BLOC ( condition = " INPUT_TYPE in ( 'Vector', ) ", - data = F_Vector("o", fv), - ), - VectorSerie = BLOC ( condition = " INPUT_TYPE in ( 'VectorSerie', ) ", - data = F_VectorSerie("o", fv), - ), - ) - -def BackgroundErrorInNS(filename): - if os.path.exists(filename): - fc = open(filename, 'r').readlines() - cr = re.compile("^BackgroundError[\s]*=") - for ln in fc: - if cr.match(ln): return 1 - return 0 -BackgroundErrorInNS.info = u"The Python file has to contain explicitly a \"BackgroundError\" variable." -def F_BackgroundError(statut, fv=NoCheckInNS) : return FACT( - statut=statut, - Stored = SIMP(statut="f", typ = "I", into=(0, 1), defaut=0, fr="Choix de stockage interne ou non du concept parent", ang="Choice of the storage or not of the parent concept"), - INPUT_TYPE = SIMP(statut="o", typ = "TXM", into=("Matrix", "ScalarSparseMatrix", "DiagonalSparseMatrix", ), defaut="ScalarSparseMatrix"), - Matrix = BLOC ( condition = " INPUT_TYPE in ( 'Matrix', ) ", - data = F_Matrix("o", fv), - ), - ScalarSparseMatrix = BLOC ( condition = " INPUT_TYPE in ( 'ScalarSparseMatrix', ) ", - data = F_ScalarSparseMatrix("o", fv), - ), - DiagonalSparseMatrix = BLOC ( condition = " INPUT_TYPE in ( 'DiagonalSparseMatrix', ) ", - data = F_DiagonalSparseMatrix("o", fv), - ), - ) - -def ObservationOperatorInNS(filename): - if os.path.exists(filename): - fc = open(filename, 'r').readlines() - cr = re.compile("^ObservationOperator[\s]*=") - for ln in fc: - if cr.match(ln): return 1 - return 0 -ObservationOperatorInNS.info = u"The Python file has to contain explicitly a \"ObservationOperator\" variable." -def F_ObservationOperator(statut, fv=NoCheckInNS) : return FACT( - statut=statut, - Stored = SIMP(statut="f", typ = "I", into=(0, 1), defaut=0, fr="Choix de stockage interne ou non du concept parent", ang="Choice of the storage or not of the parent concept"), - INPUT_TYPE = SIMP(statut="o", typ = "TXM", into=("Matrix", "Function", ), defaut="Function"), - Matrix = BLOC ( condition = " INPUT_TYPE in ( 'Matrix', ) ", - data = F_Matrix("o", fv), - ), - Function = BLOC ( condition = " INPUT_TYPE in ( 'Function', ) ", - data = F_Function("o", fv), - ), - ) - -def CheckingPointInNS(filename): - if os.path.exists(filename): - fc = open(filename, 'r').readlines() - cr = re.compile("^CheckingPoint[\s]*=") - for ln in fc: - if cr.match(ln): return 1 - return 0 -CheckingPointInNS.info = u"The Python file has to contain explicitly a \"CheckingPoint\" variable." -def F_CheckingPoint(statut, fv=NoCheckInNS) : return FACT( - statut=statut, - Stored = SIMP(statut="f", typ = "I", into=(0, 1), defaut=0, fr="Choix de stockage interne ou non du concept parent", ang="Choice of the storage or not of the parent concept"), - INPUT_TYPE = SIMP(statut="o", typ = "TXM", into=("Vector", ), defaut="Vector"), - Vector = BLOC ( condition = " INPUT_TYPE in ( 'Vector', ) ", - data = F_Vector("o", fv), - ), - ) - -def ControlInputInNS(filename): - if os.path.exists(filename): - fc = open(filename, 'r').readlines() - cr = re.compile("^ControlInput[\s]*=") - for ln in fc: - if cr.match(ln): return 1 - return 0 -ControlInputInNS.info = u"The Python file has to contain explicitly a \"ControlInput\" variable." -def F_ControlInput(statut, fv=NoCheckInNS) : return FACT( - statut=statut, - Stored = SIMP(statut="f", typ = "I", into=(0, 1), defaut=0, fr="Choix de stockage interne ou non du concept parent", ang="Choice of the storage or not of the parent concept"), - INPUT_TYPE = SIMP(statut="o", typ = "TXM", into=("Vector", "VectorSerie", ), defaut="Vector"), - Vector = BLOC ( condition = " INPUT_TYPE in ( 'Vector', ) ", - data = F_Vector("o", fv), - ), - VectorSerie = BLOC ( condition = " INPUT_TYPE in ( 'VectorSerie', ) ", - data = F_VectorSerie("o", fv), - ), - ) - -def BackgroundInNS(filename): - if os.path.exists(filename): - fc = open(filename, 'r').readlines() - cr = re.compile("^Background[\s]*=") - for ln in fc: - if cr.match(ln): return 1 - return 0 -BackgroundInNS.info = u"The Python file has to contain explicitly a \"Background\" variable." -def F_Background(statut, fv=NoCheckInNS) : return FACT( - statut=statut, - Stored = SIMP(statut="f", typ = "I", into=(0, 1), defaut=0, fr="Choix de stockage interne ou non du concept parent", ang="Choice of the storage or not of the parent concept"), - INPUT_TYPE = SIMP(statut="o", typ = "TXM", into=("Vector", "VectorSerie", ), defaut="Vector"), - Vector = BLOC ( condition = " INPUT_TYPE in ( 'Vector', ) ", - data = F_Vector("o", fv), - ), - VectorSerie = BLOC ( condition = " INPUT_TYPE in ( 'VectorSerie', ) ", - data = F_VectorSerie("o", fv), - ), - ) - -def AlgorithmParametersInNS(filename): - if os.path.exists(filename): - fc = open(filename, 'r').readlines() - cr = re.compile("^AlgorithmParameters[\s]*=") - for ln in fc: - if cr.match(ln): return 1 - return 0 -AlgorithmParametersInNS.info = u"The Python file has to contain explicitly a \"AlgorithmParameters\" variable." -def F_AlgorithmParameters(statut, fv=NoCheckInNS) : return FACT( - statut=statut, - - INPUT_TYPE = SIMP(statut="o", typ = "TXM", into=("Dict", ), defaut="Dict"), - Dict = BLOC ( condition = " INPUT_TYPE in ( 'Dict', ) ", - data = F_Dict("o", fv), - ), - ) - -def EvolutionErrorInNS(filename): - if os.path.exists(filename): - fc = open(filename, 'r').readlines() - cr = re.compile("^EvolutionError[\s]*=") - for ln in fc: - if cr.match(ln): return 1 - return 0 -EvolutionErrorInNS.info = u"The Python file has to contain explicitly a \"EvolutionError\" variable." -def F_EvolutionError(statut, fv=NoCheckInNS) : return FACT( - statut=statut, - Stored = SIMP(statut="f", typ = "I", into=(0, 1), defaut=0, fr="Choix de stockage interne ou non du concept parent", ang="Choice of the storage or not of the parent concept"), - INPUT_TYPE = SIMP(statut="o", typ = "TXM", into=("Matrix", "ScalarSparseMatrix", "DiagonalSparseMatrix", ), defaut="ScalarSparseMatrix"), - Matrix = BLOC ( condition = " INPUT_TYPE in ( 'Matrix', ) ", - data = F_Matrix("o", fv), - ), - ScalarSparseMatrix = BLOC ( condition = " INPUT_TYPE in ( 'ScalarSparseMatrix', ) ", - data = F_ScalarSparseMatrix("o", fv), - ), - DiagonalSparseMatrix = BLOC ( condition = " INPUT_TYPE in ( 'DiagonalSparseMatrix', ) ", - data = F_DiagonalSparseMatrix("o", fv), - ), - ) - -def UserDataInitInNS(filename): - if os.path.exists(filename): - fc = open(filename, 'r').readlines() - cr = re.compile("^UserDataInit[\s]*=") - for ln in fc: - if cr.match(ln): return 1 - return 0 -UserDataInitInNS.info = u"The Python file has to contain explicitly a \"UserDataInit\" variable." -def F_UserDataInit(statut, fv=NoCheckInNS) : return FACT( - statut=statut, - - INPUT_TYPE = SIMP(statut="o", typ = "TXM", into=("Dict", ), defaut="Dict"), - Dict = BLOC ( condition = " INPUT_TYPE in ( 'Dict', ) ", - data = F_Dict("o", fv), - ), - ) - -def EvolutionModelInNS(filename): - if os.path.exists(filename): - fc = open(filename, 'r').readlines() - cr = re.compile("^EvolutionModel[\s]*=") - for ln in fc: - if cr.match(ln): return 1 - return 0 -EvolutionModelInNS.info = u"The Python file has to contain explicitly a \"EvolutionModel\" variable." -def F_EvolutionModel(statut, fv=NoCheckInNS) : return FACT( - statut=statut, - Stored = SIMP(statut="f", typ = "I", into=(0, 1), defaut=0, fr="Choix de stockage interne ou non du concept parent", ang="Choice of the storage or not of the parent concept"), - INPUT_TYPE = SIMP(statut="o", typ = "TXM", into=("Matrix", "Function", ), defaut="Function"), - Matrix = BLOC ( condition = " INPUT_TYPE in ( 'Matrix', ) ", - data = F_Matrix("o", fv), - ), - Function = BLOC ( condition = " INPUT_TYPE in ( 'Function', ) ", - data = F_Function("o", fv), - ), - ) - -def F_UserPostAnalysis(statut, fv=NoCheckInNS) : return FACT( - statut = statut, - FROM = SIMP(statut = "o", typ = "TXM", into=("String", "Script", "Template", ), defaut="Template"), - SCRIPT_DATA = BLOC ( condition = " FROM in ( 'Script', ) ", - SCRIPT_FILE = SIMP(statut = "o", typ = "FichierNoAbs", validators=[OnlyStr(), FileExtVal('py'), FunctionVal(fv)], fr="En attente d'un nom de fichier script, avec ou sans le chemin complet pour le trouver, contenant si nécessaire la définition d'une variable interne de même nom que le concept parent", ang="Waiting for a script file name, with or without the full path to find it, containing if necessary the definition of an internal variable of the same name as the parent concept"), - ), - STRING_DATA = BLOC ( condition = " FROM in ( 'String', ) ", - STRING = SIMP(statut = "o", typ = "TXM", fr="En attente d'une chaine de caractères entre guillements. Pour construire un vecteur ou une matrice, ce doit être une suite de nombres, utilisant un espace ou une virgule pour séparer deux éléments et un point-virgule pour séparer deux lignes", ang="Waiting for a string in quotes. To build a vector or a matrix, it has to be a float serie, using a space or comma to separate two elements in a line, a semi-colon to separate rows"), - ), - SCRIPTWITHFUNCTIONS_DATA = BLOC ( condition = " FROM in ( 'ScriptWithFunctions', ) ", - SCRIPTWITHFUNCTIONS_FILE = SIMP(statut = "o", typ = "FichierNoAbs", validators=[OnlyStr(), FileExtVal('py'), FunctionVal(DirectOperatorInNS), FunctionVal(TangentOperatorInNS), FunctionVal(AdjointOperatorInNS)], fr="En attente d'un nom de fichier script, avec ou sans le chemin complet pour le trouver, contenant en variables internes trois fonctions de calcul nommées DirectOperator, TangentOperator et AdjointOperator", ang="Waiting for a script file name, with or without the full path to find it, containing as internal variables three computation functions named DirectOperator, TangentOperator and AdjointOperator"), - ), - SCRIPTWITHONEFUNCTION_DATA = BLOC ( condition = " FROM in ( 'ScriptWithOneFunction', ) ", - SCRIPTWITHONEFUNCTION_FILE = SIMP(statut = "o", typ = "FichierNoAbs", validators=[OnlyStr(), FileExtVal('py'), FunctionVal(DirectOperatorInNS)], fr="En attente d'un nom de fichier script, avec ou sans le chemin complet pour le trouver, contenant en variable interne une seule fonction de calcul nommée DirectOperator", ang="Waiting for a script file name, with or without the full path to find it, containing as internal variable only one function named DirectOperator"), - DifferentialIncrement = SIMP(statut="o", typ = "R", val_min=0, val_max=1, defaut=0.01, fr="Incrément de la perturbation dX pour calculer la dérivée, construite en multipliant X par l'incrément en évitant les valeurs nulles", ang="Increment of dX perturbation to calculate the derivative, build multiplying X by the increment avoiding null values"), - CenteredFiniteDifference = SIMP(statut="o", typ = "I", into=(0, 1), defaut=0, fr="Formulation centrée (1) ou décentrée (0) pour la méthode des différences finies", ang="Centered (1) or uncentered (0) formulation for the finite differences method"), - EnableMultiProcessing = SIMP(statut="f", typ = "I", into=(0, 1), defaut=0, fr="Calculs élémentaires effectués en séquentiel (0) ou en parallèle (1) dans la méthode des différences finies", ang="Elementary calculations done sequentially (0) or in parallel (1) in the finite differences method"), - NumberOfProcesses = SIMP(statut="f", typ = "I", val_min=0, defaut=0, fr="Nombre de processus parallèles, 0 pour un contrôle automatique", ang="Number of parallel processes, 0 for automatic control"), - ), - SCRIPTWITHSWITCH_DATA = BLOC ( condition = " FROM in ( 'ScriptWithSwitch', ) ", - SCRIPTWITHSWITCH_FILE = SIMP(statut = "o", typ = "FichierNoAbs", validators=[OnlyStr(), FileExtVal('py')], fr="En attente d'un nom de fichier script, avec ou sans le chemin complet pour le trouver, contenant un switch pour les calculs direct, tangent et adjoint", ang="Waiting for a script file name, with or without the full path to find it, containing a switch for direct, tangent and adjoint computations"), - ), - TEMPLATE_DATA = BLOC (condition = " FROM in ( 'Template', ) ", - Template = SIMP(statut = "o", typ = "TXM", min=1, max=1, defaut = "AnalysisPrinter", into=("AnalysisPrinter", "AnalysisSaver", "AnalysisPrinterAndSaver")), - AnalysisPrinter = BLOC (condition = " Template == 'AnalysisPrinter' ", - ValueTemplate = SIMP(statut = "o", typ = "TXM", min=1, max=1, defaut = "import numpy\nxa=numpy.ravel(ADD.get('Analysis')[-1])\nprint 'Analysis:',xa" ), - ), - AnalysisSaver = BLOC (condition = " Template == 'AnalysisSaver' ", - ValueTemplate = SIMP(statut = "o", typ = "TXM", min=1, max=1, defaut = "import numpy\nxa=numpy.ravel(ADD.get('Analysis')[-1])\nf='/tmp/analysis.txt'\nprint 'Analysis saved in \"%s\"'%f\nnumpy.savetxt(f,xa)" ), - ), - AnalysisPrinterAndSaver = BLOC (condition = " Template == 'AnalysisPrinterAndSaver' ", - ValueTemplate = SIMP(statut = "o", typ = "TXM", min=1, max=1, defaut = "import numpy\nxa=numpy.ravel(ADD.get('Analysis')[-1])\nprint 'Analysis:',xa\nf='/tmp/analysis.txt'\nprint 'Analysis saved in \"%s\"'%f\nnumpy.savetxt(f,xa)" ), - ), - ), - ) - -def F_InitChoice() : return ("Background", - "BackgroundError", - "Observation", - "ObservationError", - "ObservationOperator", - "EvolutionModel", - "EvolutionError", - "AlgorithmParameters", - "UserPostAnalysis", - ) - -def F_Init(statut) : return FACT(statut = statut, - INIT_FILE = SIMP(statut = "o", typ = "FichierNoAbs", validators=[OnlyStr(), FileExtVal('py')]), - TARGET_LIST = SIMP(statut = "o", typ = "TXM", min=1, max="**", into=F_InitChoice(), validators=(VerifExiste(2))), - ) - -def F_ObserverTemplate() : return BLOC(condition = " NodeType == 'Template' ", - Template = SIMP(statut = "o", typ = "TXM", min=1, max=1, defaut = "ValuePrinter", into=("ValuePrinter", "ValueAndIndexPrinter", "ValueSeriePrinter", "ValueSaver", "ValueSerieSaver", "ValuePrinterAndSaver", "ValueIndexPrinterAndSaver", "ValueSeriePrinterAndSaver", "ValueGnuPlotter", "ValueSerieGnuPlotter", "ValuePrinterAndGnuPlotter", "ValueSeriePrinterAndGnuPlotter", "ValuePrinterSaverAndGnuPlotter", "ValueSeriePrinterSaverAndGnuPlotter", "ValueMean", "ValueStandardError", "ValueVariance", "ValueL2Norm", "ValueRMS")), - ValuePrinter = BLOC (condition = " Template == 'ValuePrinter' ", - ValueTemplate = SIMP(statut = "o", typ = "TXM", min=1, max=1, defaut = "print(str(info)+\" \"+str(var[-1]))", fr="Imprime sur la sortie standard la valeur courante de la variable", ang="Print on standard output the current value of the variable" ), - ), - ValueAndIndexPrinter = BLOC (condition = " Template == 'ValueAndIndexPrinter' ", - ValueTemplate = SIMP(statut = "o", typ = "TXM", min=1, max=1, defaut = "print(str(info)+(\" index %i:\"%(len(var)-1))+\" \"+str(var[-1]))", fr="Imprime sur la sortie standard la valeur courante de la variable, en ajoutant son index", ang="Print on standard output the current value of the variable, adding its index" ), - ), - ValueSeriePrinter = BLOC (condition = " Template == 'ValueSeriePrinter' ", - ValueTemplate = SIMP(statut = "o", typ = "TXM", min=1, max=1, defaut = "print(str(info)+\" \"+str(var[:]))", fr="Imprime sur la sortie standard la série des valeurs de la variable", ang="Print on standard output the value series of the variable" ), - ), - ValueSaver = BLOC (condition = " Template == 'ValueSaver' ", - ValueTemplate = SIMP(statut = "o", typ = "TXM", min=1, max=1, defaut = "import numpy, re\nv=numpy.array(var[-1], ndmin=1)\nglobal istep\ntry:\n istep += 1\nexcept:\n istep = 0\nf='/tmp/value_%s_%05i.txt'%(info,istep)\nf=re.sub('\s','_',f)\nprint('Value saved in \"%s\"'%f)\nnumpy.savetxt(f,v)", fr="Enregistre la valeur courante de la variable dans un fichier du répertoire '/tmp' nommé 'value...txt' selon le nom de la variable et l'étape d'enregistrement", ang="Save the current value of the variable in a file of the '/tmp' directory named 'value...txt' from the variable name and the saving step" ), - ), - ValueSerieSaver = BLOC (condition = " Template == 'ValueSerieSaver' ", - ValueTemplate = SIMP(statut = "o", typ = "TXM", min=1, max=1, defaut = "import numpy, re\nv=numpy.array(var[:], ndmin=1)\nglobal istep\ntry:\n istep += 1\nexcept:\n istep = 0\nf='/tmp/value_%s_%05i.txt'%(info,istep)\nf=re.sub('\s','_',f)\nprint('Value saved in \"%s\"'%f)\nnumpy.savetxt(f,v)", fr="Enregistre la série des valeurs de la variable dans un fichier du répertoire '/tmp' nommé 'value...txt' selon le nom de la variable et l'étape", ang="Save the value series of the variable in a file of the '/tmp' directory named 'value...txt' from the variable name and the saving step" ), - ), - ValuePrinterAndSaver = BLOC (condition = " Template == 'ValuePrinterAndSaver' ", - ValueTemplate = SIMP(statut = "o", typ = "TXM", min=1, max=1, defaut = "import numpy, re\nv=numpy.array(var[-1], ndmin=1)\nprint(str(info)+\" \"+str(v))\nglobal istep\ntry:\n istep += 1\nexcept:\n istep = 0\nf='/tmp/value_%s_%05i.txt'%(info,istep)\nf=re.sub('\s','_',f)\nprint('Value saved in \"%s\"'%f)\nnumpy.savetxt(f,v)", fr="Imprime sur la sortie standard et, en même temps enregistre dans un fichier, la valeur courante de la variable", ang="Print on standard output and, in the same time save in a file, the current value of the variable" ), - ), - ValueIndexPrinterAndSaver = BLOC (condition = " Template == 'ValueIndexPrinterAndSaver' ", - ValueTemplate = SIMP(statut = "o", typ = "TXM", min=1, max=1, defaut = "import numpy, re\nv=numpy.array(var[-1], ndmin=1)\nprint(str(info)+(\" index %i:\"%(len(var)-1))+\" \"+str(v))\nglobal istep\ntry:\n istep += 1\nexcept:\n istep = 0\nf='/tmp/value_%s_%05i.txt'%(info,istep)\nf=re.sub('\s','_',f)\nprint('Value saved in \"%s\"'%f)\nnumpy.savetxt(f,v)", fr="Imprime sur la sortie standard et, en même temps enregistre dans un fichier, la valeur courante de la variable, en ajoutant son index", ang="Print on standard output and, in the same time save in a file, the current value of the variable, adding its index" ), - ), - ValueSeriePrinterAndSaver = BLOC (condition = " Template == 'ValueSeriePrinterAndSaver' ", - ValueTemplate = SIMP(statut = "o", typ = "TXM", min=1, max=1, defaut = "import numpy, re\nv=numpy.array(var[:], ndmin=1)\nprint(str(info)+\" \"+str(v))\nglobal istep\ntry:\n istep += 1\nexcept:\n istep = 0\nf='/tmp/value_%s_%05i.txt'%(info,istep)\nf=re.sub('\s','_',f)\nprint('Value saved in \"%s\"'%f)\nnumpy.savetxt(f,v)", fr="Imprime sur la sortie standard et, en même temps, enregistre dans un fichier la série des valeurs de la variable", ang="Print on standard output and, in the same time, save in a file the value series of the variable" ), - ), - ValueGnuPlotter = BLOC (condition = " Template == 'ValueGnuPlotter' ", - ValueTemplate = SIMP(statut = "o", typ = "TXM", min=1, max=1, defaut = "import numpy, Gnuplot\nv=numpy.array(var[-1], ndmin=1)\nglobal ifig, gp\ntry:\n ifig += 1\n gp(' set style data lines')\nexcept:\n ifig = 0\n gp = Gnuplot.Gnuplot(persist=1)\n gp(' set style data lines')\ngp('set title \"%s (Figure %i)\"'%(info,ifig))\ngp.plot( Gnuplot.Data( v, with_='lines lw 2' ) )", fr="Affiche graphiquement avec Gnuplot la valeur courante de la variable", ang="Graphically plot with Gnuplot the current value of the variable" ), - ), - ValueSerieGnuPlotter = BLOC (condition = " Template == 'ValueSerieGnuPlotter' ", - ValueTemplate = SIMP(statut = "o", typ = "TXM", min=1, max=1, defaut = "import numpy, Gnuplot\nv=numpy.array(var[:], ndmin=1)\nglobal ifig, gp\ntry:\n ifig += 1\n gp(' set style data lines')\nexcept:\n ifig = 0\n gp = Gnuplot.Gnuplot(persist=1)\n gp(' set style data lines')\ngp('set title \"%s (Figure %i)\"'%(info,ifig))\ngp.plot( Gnuplot.Data( v, with_='lines lw 2' ) )", fr="Affiche graphiquement avec Gnuplot la série des valeurs de la variable", ang="Graphically plot with Gnuplot the value series of the variable" ), - ), - ValuePrinterAndGnuPlotter = BLOC (condition = " Template == 'ValuePrinterAndGnuPlotter' ", - ValueTemplate = SIMP(statut = "o", typ = "TXM", min=1, max=1, defaut = "print(str(info)+\" \"+str(var[-1]))\nimport numpy, Gnuplot\nv=numpy.array(var[-1], ndmin=1)\nglobal ifig,gp\ntry:\n ifig += 1\n gp(' set style data lines')\nexcept:\n ifig = 0\n gp = Gnuplot.Gnuplot(persist=1)\n gp(' set style data lines')\ngp('set title \"%s (Figure %i)\"'%(info,ifig))\ngp.plot( Gnuplot.Data( v, with_='lines lw 2' ) )", fr="Imprime sur la sortie standard et, en même temps, affiche graphiquement avec Gnuplot la valeur courante de la variable", ang="Print on standard output and, in the same time, graphically plot with Gnuplot the current value of the variable" ), - ), - ValueSeriePrinterAndGnuPlotter = BLOC (condition = " Template == 'ValueSeriePrinterAndGnuPlotter' ", - ValueTemplate = SIMP(statut = "o", typ = "TXM", min=1, max=1, defaut = "print(str(info)+\" \"+str(var[:]))\nimport numpy, Gnuplot\nv=numpy.array(var[:], ndmin=1)\nglobal ifig,gp\ntry:\n ifig += 1\n gp(' set style data lines')\nexcept:\n ifig = 0\n gp = Gnuplot.Gnuplot(persist=1)\n gp(' set style data lines')\ngp('set title \"%s (Figure %i)\"'%(info,ifig))\ngp.plot( Gnuplot.Data( v, with_='lines lw 2' ) )", fr="Imprime sur la sortie standard et, en même temps, affiche graphiquement avec Gnuplot la série des valeurs de la variable", ang="Print on standard output and, in the same time, graphically plot with Gnuplot the value series of the variable" ), - ), - ValuePrinterSaverAndGnuPlotter = BLOC (condition = " Template == 'ValuePrinterSaverAndGnuPlotter' ", - ValueTemplate = SIMP(statut = "o", typ = "TXM", min=1, max=1, defaut = "print(str(info)+\" \"+str(var[-1]))\nimport numpy, re\nv=numpy.array(var[-1], ndmin=1)\nglobal istep\ntry:\n istep += 1\nexcept:\n istep = 0\nf='/tmp/value_%s_%05i.txt'%(info,istep)\nf=re.sub('\s','_',f)\nprint('Value saved in \"%s\"'%f)\nnumpy.savetxt(f,v)\nimport Gnuplot\nglobal ifig,gp\ntry:\n ifig += 1\n gp(' set style data lines')\nexcept:\n ifig = 0\n gp = Gnuplot.Gnuplot(persist=1)\n gp(' set style data lines')\ngp('set title \"%s (Figure %i)\"'%(info,ifig))\ngp.plot( Gnuplot.Data( v, with_='lines lw 2' ) )", fr="Imprime sur la sortie standard et, en même temps, enregistre dans un fichier et affiche graphiquement la valeur courante de la variable ", ang="Print on standard output and, in the same, time save in a file and graphically plot the current value of the variable" ), - ), - ValueSeriePrinterSaverAndGnuPlotter = BLOC (condition = " Template == 'ValueSeriePrinterSaverAndGnuPlotter' ", - ValueTemplate = SIMP(statut = "o", typ = "TXM", min=1, max=1, defaut = "print(str(info)+\" \"+str(var[:]))\nimport numpy, re\nv=numpy.array(var[:], ndmin=1)\nglobal istep\ntry:\n istep += 1\nexcept:\n istep = 0\nf='/tmp/value_%s_%05i.txt'%(info,istep)\nf=re.sub('\s','_',f)\nprint('Value saved in \"%s\"'%f)\nnumpy.savetxt(f,v)\nimport Gnuplot\nglobal ifig,gp\ntry:\n ifig += 1\n gp(' set style data lines')\nexcept:\n ifig = 0\n gp = Gnuplot.Gnuplot(persist=1)\n gp(' set style data lines')\ngp('set title \"%s (Figure %i)\"'%(info,ifig))\ngp.plot( Gnuplot.Data( v, with_='lines lw 2' ) )", fr="Imprime sur la sortie standard et, en même temps, enregistre dans un fichier et affiche graphiquement la série des valeurs de la variable", ang="Print on standard output and, in the same, time save in a file and graphically plot the value series of the variable" ), - ), - ValueMean = BLOC (condition = " Template == 'ValueMean' ", - ValueTemplate = SIMP(statut = "o", typ = "TXM", min=1, max=1, defaut = "import numpy\nprint(str(info)+\" \"+str(numpy.nanmean(var[-1])))", fr="Imprime sur la sortie standard la moyenne de la valeur courante de la variable", ang="Print on standard output the mean of the current value of the variable" ), - ), - ValueStandardError = BLOC (condition = " Template == 'ValueStandardError' ", - ValueTemplate = SIMP(statut = "o", typ = "TXM", min=1, max=1, defaut = "import numpy\nprint(str(info)+\" \"+str(numpy.nanstd(var[-1])))", fr="Imprime sur la sortie standard l'écart-type de la valeur courante de la variable", ang="Print on standard output the standard error of the current value of the variable" ), - ), - ValueVariance = BLOC (condition = " Template == 'ValueVariance' ", - ValueTemplate = SIMP(statut = "o", typ = "TXM", min=1, max=1, defaut = "import numpy\nprint(str(info)+\" \"+str(numpy.nanvar(var[-1])))", fr="Imprime sur la sortie standard la variance de la valeur courante de la variable", ang="Print on standard output the variance of the current value of the variable" ), - ), - ValueL2Norm = BLOC (condition = " Template == 'ValueL2Norm' ", - ValueTemplate = SIMP(statut = "o", typ = "TXM", min=1, max=1, defaut = "import numpy\nv = numpy.matrix( numpy.ravel( var[-1] ) )\nprint(str(info)+\" \"+str(float( numpy.linalg.norm(v) )))", fr="Imprime sur la sortie standard la norme L2 de la valeur courante de la variable", ang="Print on standard output the L2 norm of the current value of the variable" ), - ), - ValueRMS = BLOC (condition = " Template == 'ValueRMS' ", - ValueTemplate = SIMP(statut = "o", typ = "TXM", min=1, max=1, defaut = "import numpy\nv = numpy.matrix( numpy.ravel( var[-1] ) )\nprint(str(info)+\" \"+str(float( numpy.sqrt((1./v.size)*(v*v.T)) )))", fr="Imprime sur la sortie standard la racine de la moyenne des carrés (RMS), ou moyenne quadratique, de la valeur courante de la variable", ang="Print on standard output the root mean square (RMS), or quadratic mean, of the current value of the variable" ), - ), - ) - -def F_Observers(statut) : return FACT( - statut=statut, - SELECTION = SIMP(statut="o", defaut=[], typ="TXM", min=0, max="**",homo="SansOrdreNiDoublon", validators=NoRepeat(), into=(['Analysis', 'Innovation', 'InnovationAtCurrentState', 'CurrentState', 'CurrentOptimum', 'IndexOfOptimum', 'SimulatedObservationAtBackground', 'SimulatedObservationAtCurrentState', 'SimulatedObservationAtOptimum', 'SimulatedObservationAtCurrentOptimum', 'BMA', 'OMA', 'OMB', 'CostFunctionJ', 'CostFunctionJb', 'CostFunctionJo', 'GradientOfCostFunctionJ', 'GradientOfCostFunctionJb', 'GradientOfCostFunctionJo', 'SigmaObs2', 'SigmaBck2', 'APosterioriCorrelations', 'APosterioriCovariance', 'APosterioriStandardDeviations', 'APosterioriVariances', 'Residu'])), - #SELECTION = SIMP(statut="o", defaut=[], typ="TXM", min=0, max="**", validators=NoRepeat(), into=(['Analysis', 'Innovation', 'InnovationAtCurrentState', 'CurrentState', 'CurrentOptimum', 'IndexOfOptimum', 'SimulatedObservationAtBackground', 'SimulatedObservationAtCurrentState', 'SimulatedObservationAtOptimum', 'SimulatedObservationAtCurrentOptimum', 'BMA', 'OMA', 'OMB', 'CostFunctionJ', 'CostFunctionJb', 'CostFunctionJo', 'GradientOfCostFunctionJ', 'GradientOfCostFunctionJb', 'GradientOfCostFunctionJo', 'SigmaObs2', 'SigmaBck2', 'APosterioriCorrelations', 'APosterioriCovariance', 'APosterioriStandardDeviations', 'APosterioriVariances', 'Residu'])), - Analysis = BLOC (condition=" 'Analysis' in set(SELECTION) ", - Analysis_data = FACT(statut = "o", - Scheduler = SIMP(statut = "f", typ = "TXM"), - Info = SIMP(statut = "o", typ = "TXM", defaut = "Analysis"), - NodeType = SIMP(statut = "o", typ = "TXM", min=1, max=1, defaut = "Template", into=("String", "Script", "Template")), - PythonScript = BLOC (condition = " NodeType == 'String' ", - Value = SIMP(statut = "o", typ = "TXM") - ), - UserFile = BLOC (condition = " NodeType == 'Script' ", - Value = SIMP(statut = "o", typ = "FichierNoAbs", validators=[OnlyStr(), FileExtVal('py')]) - ), - ObserverTemplate = F_ObserverTemplate(), - ), - ), - Innovation = BLOC (condition=" 'Innovation' in set(SELECTION) ", - Innovation_data = FACT(statut = "o", - Scheduler = SIMP(statut = "f", typ = "TXM"), - Info = SIMP(statut = "o", typ = "TXM", defaut = "Innovation"), - NodeType = SIMP(statut = "o", typ = "TXM", min=1, max=1, defaut = "Template", into=("String", "Script", "Template")), - PythonScript = BLOC (condition = " NodeType == 'String' ", - Value = SIMP(statut = "o", typ = "TXM") - ), - UserFile = BLOC (condition = " NodeType == 'Script' ", - Value = SIMP(statut = "o", typ = "FichierNoAbs", validators=[OnlyStr(), FileExtVal('py')]) - ), - ObserverTemplate = F_ObserverTemplate(), - ), - ), - InnovationAtCurrentState = BLOC (condition=" 'InnovationAtCurrentState' in set(SELECTION) ", - InnovationAtCurrentState_data = FACT(statut = "o", - Scheduler = SIMP(statut = "f", typ = "TXM"), - Info = SIMP(statut = "o", typ = "TXM", defaut = "InnovationAtCurrentState"), - NodeType = SIMP(statut = "o", typ = "TXM", min=1, max=1, defaut = "Template", into=("String", "Script", "Template")), - PythonScript = BLOC (condition = " NodeType == 'String' ", - Value = SIMP(statut = "o", typ = "TXM") - ), - UserFile = BLOC (condition = " NodeType == 'Script' ", - Value = SIMP(statut = "o", typ = "FichierNoAbs", validators=[OnlyStr(), FileExtVal('py')]) - ), - ObserverTemplate = F_ObserverTemplate(), - ), - ), - CurrentState = BLOC (condition=" 'CurrentState' in set(SELECTION) ", - CurrentState_data = FACT(statut = "o", - Scheduler = SIMP(statut = "f", typ = "TXM"), - Info = SIMP(statut = "o", typ = "TXM", defaut = "CurrentState"), - NodeType = SIMP(statut = "o", typ = "TXM", min=1, max=1, defaut = "Template", into=("String", "Script", "Template")), - PythonScript = BLOC (condition = " NodeType == 'String' ", - Value = SIMP(statut = "o", typ = "TXM") - ), - UserFile = BLOC (condition = " NodeType == 'Script' ", - Value = SIMP(statut = "o", typ = "FichierNoAbs", validators=[OnlyStr(), FileExtVal('py')]) - ), - ObserverTemplate = F_ObserverTemplate(), - ), - ), - CurrentOptimum = BLOC (condition=" 'CurrentOptimum' in set(SELECTION) ", - CurrentOptimum_data = FACT(statut = "o", - Scheduler = SIMP(statut = "f", typ = "TXM"), - Info = SIMP(statut = "o", typ = "TXM", defaut = "CurrentOptimum"), - NodeType = SIMP(statut = "o", typ = "TXM", min=1, max=1, defaut = "Template", into=("String", "Script", "Template")), - PythonScript = BLOC (condition = " NodeType == 'String' ", - Value = SIMP(statut = "o", typ = "TXM") - ), - UserFile = BLOC (condition = " NodeType == 'Script' ", - Value = SIMP(statut = "o", typ = "FichierNoAbs", validators=[OnlyStr(), FileExtVal('py')]) - ), - ObserverTemplate = F_ObserverTemplate(), - ), - ), - IndexOfOptimum = BLOC (condition=" 'IndexOfOptimum' in set(SELECTION) ", - IndexOfOptimum_data = FACT(statut = "o", - Scheduler = SIMP(statut = "f", typ = "TXM"), - Info = SIMP(statut = "o", typ = "TXM", defaut = "IndexOfOptimum"), - NodeType = SIMP(statut = "o", typ = "TXM", min=1, max=1, defaut = "Template", into=("String", "Script", "Template")), - PythonScript = BLOC (condition = " NodeType == 'String' ", - Value = SIMP(statut = "o", typ = "TXM") - ), - UserFile = BLOC (condition = " NodeType == 'Script' ", - Value = SIMP(statut = "o", typ = "FichierNoAbs", validators=[OnlyStr(), FileExtVal('py')]) - ), - ObserverTemplate = F_ObserverTemplate(), - ), - ), - SimulatedObservationAtBackground = BLOC (condition=" 'SimulatedObservationAtBackground' in set(SELECTION) ", - SimulatedObservationAtBackground_data = FACT(statut = "o", - Scheduler = SIMP(statut = "f", typ = "TXM"), - Info = SIMP(statut = "o", typ = "TXM", defaut = "SimulatedObservationAtBackground"), - NodeType = SIMP(statut = "o", typ = "TXM", min=1, max=1, defaut = "Template", into=("String", "Script", "Template")), - PythonScript = BLOC (condition = " NodeType == 'String' ", - Value = SIMP(statut = "o", typ = "TXM") - ), - UserFile = BLOC (condition = " NodeType == 'Script' ", - Value = SIMP(statut = "o", typ = "FichierNoAbs", validators=[OnlyStr(), FileExtVal('py')]) - ), - ObserverTemplate = F_ObserverTemplate(), - ), - ), - SimulatedObservationAtCurrentState = BLOC (condition=" 'SimulatedObservationAtCurrentState' in set(SELECTION) ", - SimulatedObservationAtCurrentState_data = FACT(statut = "o", - Scheduler = SIMP(statut = "f", typ = "TXM"), - Info = SIMP(statut = "o", typ = "TXM", defaut = "SimulatedObservationAtCurrentState"), - NodeType = SIMP(statut = "o", typ = "TXM", min=1, max=1, defaut = "Template", into=("String", "Script", "Template")), - PythonScript = BLOC (condition = " NodeType == 'String' ", - Value = SIMP(statut = "o", typ = "TXM") - ), - UserFile = BLOC (condition = " NodeType == 'Script' ", - Value = SIMP(statut = "o", typ = "FichierNoAbs", validators=[OnlyStr(), FileExtVal('py')]) - ), - ObserverTemplate = F_ObserverTemplate(), - ), - ), - SimulatedObservationAtOptimum = BLOC (condition=" 'SimulatedObservationAtOptimum' in set(SELECTION) ", - SimulatedObservationAtOptimum_data = FACT(statut = "o", - Scheduler = SIMP(statut = "f", typ = "TXM"), - Info = SIMP(statut = "o", typ = "TXM", defaut = "SimulatedObservationAtOptimum"), - NodeType = SIMP(statut = "o", typ = "TXM", min=1, max=1, defaut = "Template", into=("String", "Script", "Template")), - PythonScript = BLOC (condition = " NodeType == 'String' ", - Value = SIMP(statut = "o", typ = "TXM") - ), - UserFile = BLOC (condition = " NodeType == 'Script' ", - Value = SIMP(statut = "o", typ = "FichierNoAbs", validators=[OnlyStr(), FileExtVal('py')]) - ), - ObserverTemplate = F_ObserverTemplate(), - ), - ), - SimulatedObservationAtCurrentOptimum = BLOC (condition=" 'SimulatedObservationAtCurrentOptimum' in set(SELECTION) ", - SimulatedObservationAtCurrentOptimum_data = FACT(statut = "o", - Scheduler = SIMP(statut = "f", typ = "TXM"), - Info = SIMP(statut = "o", typ = "TXM", defaut = "SimulatedObservationAtCurrentOptimum"), - NodeType = SIMP(statut = "o", typ = "TXM", min=1, max=1, defaut = "Template", into=("String", "Script", "Template")), - PythonScript = BLOC (condition = " NodeType == 'String' ", - Value = SIMP(statut = "o", typ = "TXM") - ), - UserFile = BLOC (condition = " NodeType == 'Script' ", - Value = SIMP(statut = "o", typ = "FichierNoAbs", validators=[OnlyStr(), FileExtVal('py')]) - ), - ObserverTemplate = F_ObserverTemplate(), - ), - ), - BMA = BLOC (condition=" 'BMA' in set(SELECTION) ", - BMA_data = FACT(statut = "o", - Scheduler = SIMP(statut = "f", typ = "TXM"), - Info = SIMP(statut = "o", typ = "TXM", defaut = "BMA"), - NodeType = SIMP(statut = "o", typ = "TXM", min=1, max=1, defaut = "Template", into=("String", "Script", "Template")), - PythonScript = BLOC (condition = " NodeType == 'String' ", - Value = SIMP(statut = "o", typ = "TXM") - ), - UserFile = BLOC (condition = " NodeType == 'Script' ", - Value = SIMP(statut = "o", typ = "FichierNoAbs", validators=[OnlyStr(), FileExtVal('py')]) - ), - ObserverTemplate = F_ObserverTemplate(), - ), - ), - OMA = BLOC (condition=" 'OMA' in set(SELECTION) ", - OMA_data = FACT(statut = "o", - Scheduler = SIMP(statut = "f", typ = "TXM"), - Info = SIMP(statut = "o", typ = "TXM", defaut = "OMA"), - NodeType = SIMP(statut = "o", typ = "TXM", min=1, max=1, defaut = "Template", into=("String", "Script", "Template")), - PythonScript = BLOC (condition = " NodeType == 'String' ", - Value = SIMP(statut = "o", typ = "TXM") - ), - UserFile = BLOC (condition = " NodeType == 'Script' ", - Value = SIMP(statut = "o", typ = "FichierNoAbs", validators=[OnlyStr(), FileExtVal('py')]) - ), - ObserverTemplate = F_ObserverTemplate(), - ), - ), - OMB = BLOC (condition=" 'OMB' in set(SELECTION) ", - OMB_data = FACT(statut = "o", - Scheduler = SIMP(statut = "f", typ = "TXM"), - Info = SIMP(statut = "o", typ = "TXM", defaut = "OMB"), - NodeType = SIMP(statut = "o", typ = "TXM", min=1, max=1, defaut = "Template", into=("String", "Script", "Template")), - PythonScript = BLOC (condition = " NodeType == 'String' ", - Value = SIMP(statut = "o", typ = "TXM") - ), - UserFile = BLOC (condition = " NodeType == 'Script' ", - Value = SIMP(statut = "o", typ = "FichierNoAbs", validators=[OnlyStr(), FileExtVal('py')]) - ), - ObserverTemplate = F_ObserverTemplate(), - ), - ), - CostFunctionJ = BLOC (condition=" 'CostFunctionJ' in set(SELECTION) ", - CostFunctionJ_data = FACT(statut = "o", - Scheduler = SIMP(statut = "f", typ = "TXM"), - Info = SIMP(statut = "o", typ = "TXM", defaut = "CostFunctionJ"), - NodeType = SIMP(statut = "o", typ = "TXM", min=1, max=1, defaut = "Template", into=("String", "Script", "Template")), - PythonScript = BLOC (condition = " NodeType == 'String' ", - Value = SIMP(statut = "o", typ = "TXM") - ), - UserFile = BLOC (condition = " NodeType == 'Script' ", - Value = SIMP(statut = "o", typ = "FichierNoAbs", validators=[OnlyStr(), FileExtVal('py')]) - ), - ObserverTemplate = F_ObserverTemplate(), - ), - ), - CostFunctionJb = BLOC (condition=" 'CostFunctionJb' in set(SELECTION) ", - CostFunctionJb_data = FACT(statut = "o", - Scheduler = SIMP(statut = "f", typ = "TXM"), - Info = SIMP(statut = "o", typ = "TXM", defaut = "CostFunctionJb"), - NodeType = SIMP(statut = "o", typ = "TXM", min=1, max=1, defaut = "Template", into=("String", "Script", "Template")), - PythonScript = BLOC (condition = " NodeType == 'String' ", - Value = SIMP(statut = "o", typ = "TXM") - ), - UserFile = BLOC (condition = " NodeType == 'Script' ", - Value = SIMP(statut = "o", typ = "FichierNoAbs", validators=[OnlyStr(), FileExtVal('py')]) - ), - ObserverTemplate = F_ObserverTemplate(), - ), - ), - CostFunctionJo = BLOC (condition=" 'CostFunctionJo' in set(SELECTION) ", - CostFunctionJo_data = FACT(statut = "o", - Scheduler = SIMP(statut = "f", typ = "TXM"), - Info = SIMP(statut = "o", typ = "TXM", defaut = "CostFunctionJo"), - NodeType = SIMP(statut = "o", typ = "TXM", min=1, max=1, defaut = "Template", into=("String", "Script", "Template")), - PythonScript = BLOC (condition = " NodeType == 'String' ", - Value = SIMP(statut = "o", typ = "TXM") - ), - UserFile = BLOC (condition = " NodeType == 'Script' ", - Value = SIMP(statut = "o", typ = "FichierNoAbs", validators=[OnlyStr(), FileExtVal('py')]) - ), - ObserverTemplate = F_ObserverTemplate(), - ), - ), - GradientOfCostFunctionJ = BLOC (condition=" 'GradientOfCostFunctionJ' in set(SELECTION) ", - GradientOfCostFunctionJ_data = FACT(statut = "o", - Scheduler = SIMP(statut = "f", typ = "TXM"), - Info = SIMP(statut = "o", typ = "TXM", defaut = "GradientOfCostFunctionJ"), - NodeType = SIMP(statut = "o", typ = "TXM", min=1, max=1, defaut = "Template", into=("String", "Script", "Template")), - PythonScript = BLOC (condition = " NodeType == 'String' ", - Value = SIMP(statut = "o", typ = "TXM") - ), - UserFile = BLOC (condition = " NodeType == 'Script' ", - Value = SIMP(statut = "o", typ = "FichierNoAbs", validators=[OnlyStr(), FileExtVal('py')]) - ), - ObserverTemplate = F_ObserverTemplate(), - ), - ), - GradientOfCostFunctionJb = BLOC (condition=" 'GradientOfCostFunctionJb' in set(SELECTION) ", - GradientOfCostFunctionJb_data = FACT(statut = "o", - Scheduler = SIMP(statut = "f", typ = "TXM"), - Info = SIMP(statut = "o", typ = "TXM", defaut = "GradientOfCostFunctionJb"), - NodeType = SIMP(statut = "o", typ = "TXM", min=1, max=1, defaut = "Template", into=("String", "Script", "Template")), - PythonScript = BLOC (condition = " NodeType == 'String' ", - Value = SIMP(statut = "o", typ = "TXM") - ), - UserFile = BLOC (condition = " NodeType == 'Script' ", - Value = SIMP(statut = "o", typ = "FichierNoAbs", validators=[OnlyStr(), FileExtVal('py')]) - ), - ObserverTemplate = F_ObserverTemplate(), - ), - ), - GradientOfCostFunctionJo = BLOC (condition=" 'GradientOfCostFunctionJo' in set(SELECTION) ", - GradientOfCostFunctionJo_data = FACT(statut = "o", - Scheduler = SIMP(statut = "f", typ = "TXM"), - Info = SIMP(statut = "o", typ = "TXM", defaut = "GradientOfCostFunctionJo"), - NodeType = SIMP(statut = "o", typ = "TXM", min=1, max=1, defaut = "Template", into=("String", "Script", "Template")), - PythonScript = BLOC (condition = " NodeType == 'String' ", - Value = SIMP(statut = "o", typ = "TXM") - ), - UserFile = BLOC (condition = " NodeType == 'Script' ", - Value = SIMP(statut = "o", typ = "FichierNoAbs", validators=[OnlyStr(), FileExtVal('py')]) - ), - ObserverTemplate = F_ObserverTemplate(), - ), - ), - SigmaObs2 = BLOC (condition=" 'SigmaObs2' in set(SELECTION) ", - SigmaObs2_data = FACT(statut = "o", - Scheduler = SIMP(statut = "f", typ = "TXM"), - Info = SIMP(statut = "o", typ = "TXM", defaut = "SigmaObs2"), - NodeType = SIMP(statut = "o", typ = "TXM", min=1, max=1, defaut = "Template", into=("String", "Script", "Template")), - PythonScript = BLOC (condition = " NodeType == 'String' ", - Value = SIMP(statut = "o", typ = "TXM") - ), - UserFile = BLOC (condition = " NodeType == 'Script' ", - Value = SIMP(statut = "o", typ = "FichierNoAbs", validators=[OnlyStr(), FileExtVal('py')]) - ), - ObserverTemplate = F_ObserverTemplate(), - ), - ), - SigmaBck2 = BLOC (condition=" 'SigmaBck2' in set(SELECTION) ", - SigmaBck2_data = FACT(statut = "o", - Scheduler = SIMP(statut = "f", typ = "TXM"), - Info = SIMP(statut = "o", typ = "TXM", defaut = "SigmaBck2"), - NodeType = SIMP(statut = "o", typ = "TXM", min=1, max=1, defaut = "Template", into=("String", "Script", "Template")), - PythonScript = BLOC (condition = " NodeType == 'String' ", - Value = SIMP(statut = "o", typ = "TXM") - ), - UserFile = BLOC (condition = " NodeType == 'Script' ", - Value = SIMP(statut = "o", typ = "FichierNoAbs", validators=[OnlyStr(), FileExtVal('py')]) - ), - ObserverTemplate = F_ObserverTemplate(), - ), - ), - APosterioriCorrelations = BLOC (condition=" 'APosterioriCorrelations' in set(SELECTION) ", - APosterioriCorrelations_data = FACT(statut = "o", - Scheduler = SIMP(statut = "f", typ = "TXM"), - Info = SIMP(statut = "o", typ = "TXM", defaut = "APosterioriCorrelations"), - NodeType = SIMP(statut = "o", typ = "TXM", min=1, max=1, defaut = "Template", into=("String", "Script", "Template")), - PythonScript = BLOC (condition = " NodeType == 'String' ", - Value = SIMP(statut = "o", typ = "TXM") - ), - UserFile = BLOC (condition = " NodeType == 'Script' ", - Value = SIMP(statut = "o", typ = "FichierNoAbs", validators=[OnlyStr(), FileExtVal('py')]) - ), - ObserverTemplate = F_ObserverTemplate(), - ), - ), - APosterioriCovariance = BLOC (condition=" 'APosterioriCovariance' in set(SELECTION) ", - APosterioriCovariance_data = FACT(statut = "o", - Scheduler = SIMP(statut = "f", typ = "TXM"), - Info = SIMP(statut = "o", typ = "TXM", defaut = "APosterioriCovariance"), - NodeType = SIMP(statut = "o", typ = "TXM", min=1, max=1, defaut = "Template", into=("String", "Script", "Template")), - PythonScript = BLOC (condition = " NodeType == 'String' ", - Value = SIMP(statut = "o", typ = "TXM") - ), - UserFile = BLOC (condition = " NodeType == 'Script' ", - Value = SIMP(statut = "o", typ = "FichierNoAbs", validators=[OnlyStr(), FileExtVal('py')]) - ), - ObserverTemplate = F_ObserverTemplate(), - ), - ), - APosterioriStandardDeviations = BLOC (condition=" 'APosterioriStandardDeviations' in set(SELECTION) ", - APosterioriStandardDeviations_data = FACT(statut = "o", - Scheduler = SIMP(statut = "f", typ = "TXM"), - Info = SIMP(statut = "o", typ = "TXM", defaut = "APosterioriStandardDeviations"), - NodeType = SIMP(statut = "o", typ = "TXM", min=1, max=1, defaut = "Template", into=("String", "Script", "Template")), - PythonScript = BLOC (condition = " NodeType == 'String' ", - Value = SIMP(statut = "o", typ = "TXM") - ), - UserFile = BLOC (condition = " NodeType == 'Script' ", - Value = SIMP(statut = "o", typ = "FichierNoAbs", validators=[OnlyStr(), FileExtVal('py')]) - ), - ObserverTemplate = F_ObserverTemplate(), - ), - ), - APosterioriVariances = BLOC (condition=" 'APosterioriVariances' in set(SELECTION) ", - APosterioriVariances_data = FACT(statut = "o", - Scheduler = SIMP(statut = "f", typ = "TXM"), - Info = SIMP(statut = "o", typ = "TXM", defaut = "APosterioriVariances"), - NodeType = SIMP(statut = "o", typ = "TXM", min=1, max=1, defaut = "Template", into=("String", "Script", "Template")), - PythonScript = BLOC (condition = " NodeType == 'String' ", - Value = SIMP(statut = "o", typ = "TXM") - ), - UserFile = BLOC (condition = " NodeType == 'Script' ", - Value = SIMP(statut = "o", typ = "FichierNoAbs", validators=[OnlyStr(), FileExtVal('py')]) - ), - ObserverTemplate = F_ObserverTemplate(), - ), - ), - Residu = BLOC (condition=" 'Residu' in set(SELECTION) ", - Residu_data = FACT(statut = "o", - Scheduler = SIMP(statut = "f", typ = "TXM"), - Info = SIMP(statut = "o", typ = "TXM", defaut = "Residu"), - NodeType = SIMP(statut = "o", typ = "TXM", min=1, max=1, defaut = "Template", into=("String", "Script", "Template")), - PythonScript = BLOC (condition = " NodeType == 'String' ", - Value = SIMP(statut = "o", typ = "TXM") - ), - UserFile = BLOC (condition = " NodeType == 'Script' ", - Value = SIMP(statut = "o", typ = "FichierNoAbs", validators=[OnlyStr(), FileExtVal('py')]) - ), - ObserverTemplate = F_ObserverTemplate(), - ), - ), - ) - -def AlgorithmParametersInNS(filename): - if os.path.exists(filename): - fc = open(filename, 'r').readlines() - cr = re.compile("^AlgorithmParameters[\s]*=") - for ln in fc: - if cr.match(ln): return 1 - return 0 -AlgorithmParametersInNS.info = u"The Python file has to contain explicitly an \"AlgorithmParameters\" variable." -def F_AlgorithmParameters(statut, algos_names, fv=NoCheckInNS) : return FACT( - statut = statut, - Algorithm = SIMP(statut="o", typ = "TXM", into = algos_names ), - Parameters = SIMP(statut="f", typ = "TXM", into=("Defaults", "Dict") ), - Dict = BLOC ( condition = " Parameters == 'Dict' ", - statut="f", - data = F_Dict("o", fv), - ), - Parameters3DVAR = BLOC (condition = " (Parameters == 'Defaults') and (Algorithm == '3DVAR') ", - statut="f", - Bounds = SIMP(statut="f", typ="TXM", fr="Liste des valeurs de bornes"), - CostDecrementTolerance = SIMP(statut="f", typ="R", min=1, max=1, defaut=1e-07, fr="Diminution relative minimale du cout lors de l'arrêt"), - GradientNormTolerance = SIMP(statut="f", typ="R", min=1, max=1, defaut=1e-05, fr="Maximum des composantes du gradient lors de l'arrêt"), - MaximumNumberOfSteps = SIMP(statut="f", typ="I", val_min=-1, min=1, max=1, defaut=15000, fr="Nombre maximal de pas d'optimisation"), - Minimizer = SIMP(statut="f", typ="TXM", min=1, max=1, defaut="LBFGSB", into=['LBFGSB', 'TNC', 'CG', 'NCG', 'BFGS'], fr="Minimiseur utilisé"), - NumberOfSamplesForQuantiles = SIMP(statut="f", typ="I", val_min=1, min=1, max=1, defaut=100, fr="Nombre d'échantillons simulés pour le calcul des quantiles"), - ProjectedGradientTolerance = SIMP(statut="f", typ="R", val_min=-1, min=1, max=1, defaut=-1.0, fr="Maximum des composantes du gradient projeté lors de l'arrêt"), - Quantiles = SIMP(statut="f", typ="TXM", max="**", into=None, fr="Liste des valeurs de quantiles"), - SetSeed = SIMP(statut="f", typ="TXM", fr="Graine fixée pour le générateur aléatoire"), - SimulationForQuantiles = SIMP(statut="f", typ="TXM", min=1, max=1, defaut="Linear", into=['Linear', 'NonLinear'], fr="Type de simulation pour l'estimation des quantiles"), - StoreSupplementaryCalculations = SIMP(statut="f", typ="TXM", max="**", into=['APosterioriCorrelations', 'APosterioriCovariance', 'APosterioriStandardDeviations', 'APosterioriVariances', 'BMA', 'OMA', 'OMB', 'CostFunctionJ', 'CostFunctionJb', 'CostFunctionJo', 'CurrentState', 'CurrentOptimum', 'IndexOfOptimum', 'Innovation', 'InnovationAtCurrentState', 'CostFunctionJAtCurrentOptimum', 'SigmaObs2', 'MahalanobisConsistency', 'SimulationQuantiles', 'SimulatedObservationAtBackground', 'SimulatedObservationAtCurrentState', 'SimulatedObservationAtOptimum', 'SimulatedObservationAtCurrentOptimum'], fr="Liste de calculs supplémentaires à stocker et/ou effectuer"), - ), - Parameters4DVAR = BLOC (condition = " (Parameters == 'Defaults') and (Algorithm == '4DVAR') ", - statut="f", - Bounds = SIMP(statut="f", typ="TXM", fr="Liste des valeurs de bornes"), - ConstrainedBy = SIMP(statut="f", typ="TXM", min=1, max=1, defaut="EstimateProjection", into=['EstimateProjection'], fr="Prise en compte des contraintes"), - CostDecrementTolerance = SIMP(statut="f", typ="R", min=1, max=1, defaut=1e-07, fr="Diminution relative minimale du cout lors de l'arrêt"), - EstimationOf = SIMP(statut="f", typ="TXM", min=1, max=1, defaut="State", into=['State', 'Parameters'], fr="Estimation d'etat ou de parametres"), - GradientNormTolerance = SIMP(statut="f", typ="R", min=1, max=1, defaut=1e-05, fr="Maximum des composantes du gradient lors de l'arrêt"), - MaximumNumberOfSteps = SIMP(statut="f", typ="I", val_min=-1, min=1, max=1, defaut=15000, fr="Nombre maximal de pas d'optimisation"), - Minimizer = SIMP(statut="f", typ="TXM", min=1, max=1, defaut="LBFGSB", into=['LBFGSB', 'TNC', 'CG', 'NCG', 'BFGS'], fr="Minimiseur utilisé"), - ProjectedGradientTolerance = SIMP(statut="f", typ="R", val_min=-1, min=1, max=1, defaut=-1.0, fr="Maximum des composantes du gradient projeté lors de l'arrêt"), - StoreSupplementaryCalculations = SIMP(statut="f", typ="TXM", max="**", into=['BMA', 'CurrentState', 'CostFunctionJ', 'CostFunctionJb', 'CostFunctionJo', 'IndexOfOptimum', 'CurrentOptimum', 'CostFunctionJAtCurrentOptimum'], fr="Liste de calculs supplémentaires à stocker et/ou effectuer"), - ), - ParametersBlue = BLOC (condition = " (Parameters == 'Defaults') and (Algorithm == 'Blue') ", - statut="f", - NumberOfSamplesForQuantiles = SIMP(statut="f", typ="I", val_min=1, min=1, max=1, defaut=100, fr="Nombre d'échantillons simulés pour le calcul des quantiles"), - Quantiles = SIMP(statut="f", typ="TXM", max="**", into=None, fr="Liste des valeurs de quantiles"), - SetSeed = SIMP(statut="f", typ="TXM", fr="Graine fixée pour le générateur aléatoire"), - SimulationForQuantiles = SIMP(statut="f", typ="TXM", min=1, max=1, defaut="Linear", into=['Linear', 'NonLinear'], fr="Type de simulation pour l'estimation des quantiles"), - StoreSupplementaryCalculations = SIMP(statut="f", typ="TXM", max="**", into=['APosterioriCorrelations', 'APosterioriCovariance', 'APosterioriStandardDeviations', 'APosterioriVariances', 'BMA', 'OMA', 'OMB', 'CurrentState', 'CostFunctionJ', 'CostFunctionJb', 'CostFunctionJo', 'Innovation', 'SigmaBck2', 'SigmaObs2', 'MahalanobisConsistency', 'SimulationQuantiles', 'SimulatedObservationAtBackground', 'SimulatedObservationAtCurrentState', 'SimulatedObservationAtOptimum'], fr="Liste de calculs supplémentaires à stocker et/ou effectuer"), - ), - ParametersDerivativeFreeOptimization = BLOC (condition = " (Parameters == 'Defaults') and (Algorithm == 'DerivativeFreeOptimization') ", - statut="f", - Bounds = SIMP(statut="f", typ="TXM", fr="Liste des valeurs de bornes"), - CostDecrementTolerance = SIMP(statut="f", typ="R", min=1, max=1, defaut=1e-07, fr="Diminution relative minimale du cout lors de l'arrêt"), - MaximumNumberOfFunctionEvaluations = SIMP(statut="f", typ="I", val_min=-1, min=1, max=1, defaut=15000, fr="Nombre maximal d'évaluations de la fonction"), - MaximumNumberOfSteps = SIMP(statut="f", typ="I", val_min=-1, min=1, max=1, defaut=15000, fr="Nombre maximal de pas d'optimisation"), - Minimizer = SIMP(statut="f", typ="TXM", min=1, max=1, defaut="BOBYQA", into=['BOBYQA', 'COBYLA', 'NEWUOA', 'POWELL', 'SIMPLEX', 'SUBPLEX'], fr="Minimiseur utilisé"), - QualityCriterion = SIMP(statut="f", typ="TXM", min=1, max=1, defaut="AugmentedWeightedLeastSquares", into=['AugmentedWeightedLeastSquares', 'AWLS', 'DA', 'WeightedLeastSquares', 'WLS', 'LeastSquares', 'LS', 'L2', 'AbsoluteValue', 'L1', 'MaximumError', 'ME'], fr="Critère de qualité utilisé"), - StateVariationTolerance = SIMP(statut="f", typ="R", min=1, max=1, defaut=0.0001, fr="Variation relative maximale de l'état lors de l'arrêt"), - StoreSupplementaryCalculations = SIMP(statut="f", typ="TXM", max="**", into=['CurrentState', 'CostFunctionJ', 'CostFunctionJb', 'CostFunctionJo', 'CostFunctionJAtCurrentOptimum', 'CurrentOptimum', 'IndexOfOptimum', 'InnovationAtCurrentState', 'BMA', 'OMA', 'OMB', 'SimulatedObservationAtBackground', 'SimulatedObservationAtCurrentOptimum', 'SimulatedObservationAtCurrentState', 'SimulatedObservationAtOptimum'], fr="Liste de calculs supplémentaires à stocker et/ou effectuer"), - ), - ParametersEnsembleBlue = BLOC (condition = " (Parameters == 'Defaults') and (Algorithm == 'EnsembleBlue') ", - statut="f", - SetSeed = SIMP(statut="f", typ="TXM", fr="Graine fixée pour le générateur aléatoire"), - StoreSupplementaryCalculations = SIMP(statut="f", typ="TXM", max="**", into=['CurrentState', 'Innovation', 'SimulatedObservationAtBackground', 'SimulatedObservationAtCurrentState', 'SimulatedObservationAtOptimum'], fr="Liste de calculs supplémentaires à stocker et/ou effectuer"), - ), - ParametersExtendedBlue = BLOC (condition = " (Parameters == 'Defaults') and (Algorithm == 'ExtendedBlue') ", - statut="f", - NumberOfSamplesForQuantiles = SIMP(statut="f", typ="I", val_min=1, min=1, max=1, defaut=100, fr="Nombre d'échantillons simulés pour le calcul des quantiles"), - Quantiles = SIMP(statut="f", typ="TXM", max="**", into=None, fr="Liste des valeurs de quantiles"), - SetSeed = SIMP(statut="f", typ="TXM", fr="Graine fixée pour le générateur aléatoire"), - SimulationForQuantiles = SIMP(statut="f", typ="TXM", min=1, max=1, defaut="Linear", into=['Linear', 'NonLinear'], fr="Type de simulation pour l'estimation des quantiles"), - StoreSupplementaryCalculations = SIMP(statut="f", typ="TXM", max="**", into=['APosterioriCorrelations', 'APosterioriCovariance', 'APosterioriStandardDeviations', 'APosterioriVariances', 'BMA', 'OMA', 'OMB', 'CurrentState', 'CostFunctionJ', 'CostFunctionJb', 'CostFunctionJo', 'Innovation', 'SigmaBck2', 'SigmaObs2', 'MahalanobisConsistency', 'SimulationQuantiles', 'SimulatedObservationAtBackground', 'SimulatedObservationAtCurrentState', 'SimulatedObservationAtOptimum'], fr="Liste de calculs supplémentaires à stocker et/ou effectuer"), - ), - ParametersExtendedKalmanFilter = BLOC (condition = " (Parameters == 'Defaults') and (Algorithm == 'ExtendedKalmanFilter') ", - statut="f", - Bounds = SIMP(statut="f", typ="TXM", fr="Liste des valeurs de bornes"), - ConstrainedBy = SIMP(statut="f", typ="TXM", min=1, max=1, defaut="EstimateProjection", into=['EstimateProjection'], fr="Prise en compte des contraintes"), - EstimationOf = SIMP(statut="f", typ="TXM", min=1, max=1, defaut="State", into=['State', 'Parameters'], fr="Estimation d'etat ou de parametres"), - StoreSupplementaryCalculations = SIMP(statut="f", typ="TXM", max="**", into=['APosterioriCorrelations', 'APosterioriCovariance', 'APosterioriStandardDeviations', 'APosterioriVariances', 'BMA', 'CurrentState', 'CostFunctionJ', 'CostFunctionJb', 'CostFunctionJo', 'Innovation'], fr="Liste de calculs supplémentaires à stocker et/ou effectuer"), - ), - ParametersKalmanFilter = BLOC (condition = " (Parameters == 'Defaults') and (Algorithm == 'KalmanFilter') ", - statut="f", - EstimationOf = SIMP(statut="f", typ="TXM", min=1, max=1, defaut="State", into=['State', 'Parameters'], fr="Estimation d'etat ou de parametres"), - StoreSupplementaryCalculations = SIMP(statut="f", typ="TXM", max="**", into=['APosterioriCorrelations', 'APosterioriCovariance', 'APosterioriStandardDeviations', 'APosterioriVariances', 'BMA', 'CurrentState', 'CostFunctionJ', 'CostFunctionJb', 'CostFunctionJo', 'Innovation'], fr="Liste de calculs supplémentaires à stocker et/ou effectuer"), - ), - ParametersLinearLeastSquares = BLOC (condition = " (Parameters == 'Defaults') and (Algorithm == 'LinearLeastSquares') ", - statut="f", - StoreSupplementaryCalculations = SIMP(statut="f", typ="TXM", max="**", into=['OMA', 'CurrentState', 'CostFunctionJ', 'CostFunctionJb', 'CostFunctionJo', 'SimulatedObservationAtCurrentState', 'SimulatedObservationAtOptimum'], fr="Liste de calculs supplémentaires à stocker et/ou effectuer"), - ), - ParametersNonLinearLeastSquares = BLOC (condition = " (Parameters == 'Defaults') and (Algorithm == 'NonLinearLeastSquares') ", - statut="f", - Bounds = SIMP(statut="f", typ="TXM", fr="Liste des valeurs de bornes"), - CostDecrementTolerance = SIMP(statut="f", typ="R", min=1, max=1, defaut=1e-07, fr="Diminution relative minimale du cout lors de l'arrêt"), - GradientNormTolerance = SIMP(statut="f", typ="R", min=1, max=1, defaut=1e-05, fr="Maximum des composantes du gradient lors de l'arrêt"), - MaximumNumberOfSteps = SIMP(statut="f", typ="I", val_min=-1, min=1, max=1, defaut=15000, fr="Nombre maximal de pas d'optimisation"), - Minimizer = SIMP(statut="f", typ="TXM", min=1, max=1, defaut="LBFGSB", into=['LBFGSB', 'TNC', 'CG', 'NCG', 'BFGS', 'LM'], fr="Minimiseur utilisé"), - ProjectedGradientTolerance = SIMP(statut="f", typ="R", val_min=-1, min=1, max=1, defaut=-1.0, fr="Maximum des composantes du gradient projeté lors de l'arrêt"), - StoreSupplementaryCalculations = SIMP(statut="f", typ="TXM", max="**", into=['BMA', 'OMA', 'OMB', 'CurrentState', 'CostFunctionJ', 'CostFunctionJb', 'CostFunctionJo', 'Innovation', 'SimulatedObservationAtCurrentState', 'SimulatedObservationAtOptimum'], fr="Liste de calculs supplémentaires à stocker et/ou effectuer"), - ), - ParametersParticleSwarmOptimization = BLOC (condition = " (Parameters == 'Defaults') and (Algorithm == 'ParticleSwarmOptimization') ", - statut="f", - BoxBounds = SIMP(statut="f", typ="TXM", fr="Liste des valeurs de bornes d'incréments de paramètres"), - GroupRecallRate = SIMP(statut="f", typ="R", val_min=0.0, val_max=1.0, min=1, max=1, defaut=0.5, fr="Taux de rappel au meilleur insecte du groupe (entre 0 et 1)"), - MaximumNumberOfFunctionEvaluations = SIMP(statut="f", typ="I", val_min=-1, min=1, max=1, defaut=15000, fr="Nombre maximal d'évaluations de la fonction"), - MaximumNumberOfSteps = SIMP(statut="f", typ="I", val_min=0, min=1, max=1, defaut=50, fr="Nombre maximal de pas d'optimisation"), - NumberOfInsects = SIMP(statut="f", typ="I", val_min=-1, min=1, max=1, defaut=100, fr="Nombre d'insectes dans l'essaim"), - QualityCriterion = SIMP(statut="f", typ="TXM", min=1, max=1, defaut="AugmentedWeightedLeastSquares", into=['AugmentedWeightedLeastSquares', 'AWLS', 'AugmentedPonderatedLeastSquares', 'APLS', 'DA', 'WeightedLeastSquares', 'WLS', 'PonderatedLeastSquares', 'PLS', 'LeastSquares', 'LS', 'L2', 'AbsoluteValue', 'L1', 'MaximumError', 'ME'], fr="Critère de qualité utilisé"), - SetSeed = SIMP(statut="f", typ="TXM", fr="Graine fixée pour le générateur aléatoire"), - StoreSupplementaryCalculations = SIMP(statut="f", typ="TXM", max="**", into=['BMA', 'OMA', 'OMB', 'CurrentState', 'CostFunctionJ', 'CostFunctionJb', 'CostFunctionJo', 'Innovation', 'SimulatedObservationAtBackground', 'SimulatedObservationAtCurrentState', 'SimulatedObservationAtOptimum'], fr="Liste de calculs supplémentaires à stocker et/ou effectuer"), - SwarmVelocity = SIMP(statut="f", typ="R", val_min=0.0, min=1, max=1, defaut=1.0, fr="Vitesse de groupe imposée par l'essaim"), - ), - ParametersQuantileRegression = BLOC (condition = " (Parameters == 'Defaults') and (Algorithm == 'QuantileRegression') ", - statut="f", - Bounds = SIMP(statut="f", typ="TXM", fr="Liste des valeurs de bornes"), - CostDecrementTolerance = SIMP(statut="f", typ="R", min=1, max=1, defaut=1e-06, fr="Maximum de variation de la fonction d'estimation lors de l'arrêt"), - MaximumNumberOfSteps = SIMP(statut="f", typ="I", val_min=1, min=1, max=1, defaut=15000, fr="Nombre maximal de pas d'optimisation"), - Minimizer = SIMP(statut="f", typ="TXM", min=1, max=1, defaut="MMQR", into=['MMQR'], fr="Minimiseur utilisé"), - Quantile = SIMP(statut="f", typ="R", val_min=0.0, val_max=1.0, min=1, max=1, defaut=0.5, fr="Quantile pour la regression de quantile"), - StoreSupplementaryCalculations = SIMP(statut="f", typ="TXM", max="**", into=['BMA', 'OMA', 'OMB', 'CurrentState', 'CostFunctionJ', 'CostFunctionJb', 'CostFunctionJo', 'Innovation', 'SimulatedObservationAtBackground', 'SimulatedObservationAtCurrentState', 'SimulatedObservationAtOptimum'], fr="Liste de calculs supplémentaires à stocker et/ou effectuer"), - ), - ParametersUnscentedKalmanFilter = BLOC (condition = " (Parameters == 'Defaults') and (Algorithm == 'UnscentedKalmanFilter') ", - statut="f", - Alpha = SIMP(statut="f", typ="R", val_min=0.0001, val_max=1.0, min=1, max=1, defaut=1.0, fr=""), - Beta = SIMP(statut="f", typ="R", min=1, max=1, defaut=2.0, fr=""), - Bounds = SIMP(statut="f", typ="TXM", fr="Liste des valeurs de bornes"), - ConstrainedBy = SIMP(statut="f", typ="TXM", min=1, max=1, defaut="EstimateProjection", into=['EstimateProjection'], fr="Prise en compte des contraintes"), - EstimationOf = SIMP(statut="f", typ="TXM", min=1, max=1, defaut="State", into=['State', 'Parameters'], fr="Estimation d'etat ou de parametres"), - Kappa = SIMP(statut="f", typ="I", val_max=2, min=1, max=1, defaut=0, fr=""), - Reconditioner = SIMP(statut="f", typ="R", val_min=0.001, val_max=10.0, min=1, max=1, defaut=1.0, fr=""), - StoreSupplementaryCalculations = SIMP(statut="f", typ="TXM", max="**", into=['APosterioriCorrelations', 'APosterioriCovariance', 'APosterioriStandardDeviations', 'APosterioriVariances', 'BMA', 'CurrentState', 'CostFunctionJ', 'CostFunctionJb', 'CostFunctionJo', 'Innovation'], fr="Liste de calculs supplémentaires à stocker et/ou effectuer"), - ), - ParametersAdjointTest = BLOC (condition = " (Parameters == 'Defaults') and (Algorithm == 'AdjointTest') ", - statut="f", - AmplitudeOfInitialDirection = SIMP(statut="f", typ="R", min=1, max=1, defaut=1.0, fr="Amplitude de la direction initiale de la dérivée directionnelle autour du point nominal"), - EpsilonMinimumExponent = SIMP(statut="f", typ="I", val_min=-20, val_max=0, min=1, max=1, defaut=-8, fr="Exposant minimal en puissance de 10 pour le multiplicateur d'incrément"), - InitialDirection = SIMP(statut="f", typ="TXM", fr="Direction initiale de la dérivée directionnelle autour du point nominal"), - ResiduFormula = SIMP(statut="f", typ="TXM", min=1, max=1, defaut="ScalarProduct", into=['ScalarProduct'], fr="Formule de résidu utilisée"), - SetSeed = SIMP(statut="f", typ="TXM", fr="Graine fixée pour le générateur aléatoire"), - StoreSupplementaryCalculations = SIMP(statut="f", typ="TXM", max="**", into=['CurrentState', 'Residu', 'SimulatedObservationAtCurrentState'], fr="Liste de calculs supplémentaires à stocker et/ou effectuer"), - ), - ParametersFunctionTest = BLOC (condition = " (Parameters == 'Defaults') and (Algorithm == 'FunctionTest') ", - statut="f", - NumberOfPrintedDigits = SIMP(statut="f", typ="I", val_min=0, min=1, max=1, defaut=5, fr="Nombre de chiffres affichés pour les impressions de réels"), - NumberOfRepetition = SIMP(statut="f", typ="I", val_min=1, min=1, max=1, defaut=1, fr="Nombre de fois où l'exécution de la fonction est répétée"), - SetDebug = SIMP(statut="f", typ="I", min=1, max=1, defaut=0, fr="Activation du mode debug lors de l'exécution"), - StoreSupplementaryCalculations = SIMP(statut="f", typ="TXM", max="**", into=['CurrentState', 'SimulatedObservationAtCurrentState'], fr="Liste de calculs supplémentaires à stocker et/ou effectuer"), - ), - ParametersGradientTest = BLOC (condition = " (Parameters == 'Defaults') and (Algorithm == 'GradientTest') ", - statut="f", - AmplitudeOfInitialDirection = SIMP(statut="f", typ="R", min=1, max=1, defaut=1.0, fr="Amplitude de la direction initiale de la dérivée directionnelle autour du point nominal"), - AmplitudeOfTangentPerturbation = SIMP(statut="f", typ="R", val_min=1e-10, val_max=1.0, min=1, max=1, defaut=0.01, fr="Amplitude de la perturbation pour le calcul de la forme tangente"), - EpsilonMinimumExponent = SIMP(statut="f", typ="I", val_min=-20, val_max=0, min=1, max=1, defaut=-8, fr="Exposant minimal en puissance de 10 pour le multiplicateur d'incrément"), - InitialDirection = SIMP(statut="f", typ="TXM", fr="Direction initiale de la dérivée directionnelle autour du point nominal"), - ResiduFormula = SIMP(statut="f", typ="TXM", min=1, max=1, defaut="Taylor", into=['Norm', 'TaylorOnNorm', 'Taylor'], fr="Formule de résidu utilisée"), - SetSeed = SIMP(statut="f", typ="TXM", fr="Graine fixée pour le générateur aléatoire"), - StoreSupplementaryCalculations = SIMP(statut="f", typ="TXM", max="**", into=['CurrentState', 'Residu', 'SimulatedObservationAtCurrentState'], fr="Liste de calculs supplémentaires à stocker et/ou effectuer"), - ), - ParametersLinearityTest = BLOC (condition = " (Parameters == 'Defaults') and (Algorithm == 'LinearityTest') ", - statut="f", - AmplitudeOfInitialDirection = SIMP(statut="f", typ="R", min=1, max=1, defaut=1.0, fr="Amplitude de la direction initiale de la dérivée directionnelle autour du point nominal"), - AmplitudeOfTangentPerturbation = SIMP(statut="f", typ="R", val_min=1e-10, val_max=1.0, min=1, max=1, defaut=0.01, fr="Amplitude de la perturbation pour le calcul de la forme tangente"), - EpsilonMinimumExponent = SIMP(statut="f", typ="I", val_min=-20, val_max=0, min=1, max=1, defaut=-8, fr="Exposant minimal en puissance de 10 pour le multiplicateur d'incrément"), - InitialDirection = SIMP(statut="f", typ="TXM", fr="Direction initiale de la dérivée directionnelle autour du point nominal"), - ResiduFormula = SIMP(statut="f", typ="TXM", min=1, max=1, defaut="CenteredDL", into=['CenteredDL', 'Taylor', 'NominalTaylor', 'NominalTaylorRMS'], fr="Formule de résidu utilisée"), - SetSeed = SIMP(statut="f", typ="TXM", fr="Graine fixée pour le générateur aléatoire"), - StoreSupplementaryCalculations = SIMP(statut="f", typ="TXM", max="**", into=['CurrentState', 'Residu', 'SimulatedObservationAtCurrentState'], fr="Liste de calculs supplémentaires à stocker et/ou effectuer"), - ), - ParametersSamplingTest = BLOC (condition = " (Parameters == 'Defaults') and (Algorithm == 'SamplingTest') ", - statut="f", - QualityCriterion = SIMP(statut="f", typ="TXM", min=1, max=1, defaut="AugmentedWeightedLeastSquares", into=['AugmentedWeightedLeastSquares', 'AWLS', 'AugmentedPonderatedLeastSquares', 'APLS', 'DA', 'WeightedLeastSquares', 'WLS', 'PonderatedLeastSquares', 'PLS', 'LeastSquares', 'LS', 'L2', 'AbsoluteValue', 'L1', 'MaximumError', 'ME'], fr="Critère de qualité utilisé"), - SampleAsExplicitHyperCube = SIMP(statut="f", typ="TXM", max="**", into=None, fr="Points de calcul définis par un hyper-cube dont on donne la liste des échantillonages de chaque variable comme une liste"), - SampleAsIndependantRandomVariables = SIMP(statut="f", typ="TXM", max="**", into=None, fr="Points de calcul définis par un hyper-cube dont les points sur chaque axe proviennent de l'échantillonage indépendant de la variable selon la spécification ['distribution',[parametres],nombre]"), - SampleAsMinMaxStepHyperCube = SIMP(statut="f", typ="TXM", max="**", into=None, fr="Points de calcul définis par un hyper-cube dont on donne la liste des échantillonages de chaque variable par un triplet [min,max,step]"), - SampleAsnUplet = SIMP(statut="f", typ="TXM", max="**", into=None, fr="Points de calcul définis par une liste de n-uplet"), - SetDebug = SIMP(statut="f", typ="I", min=1, max=1, defaut=0, fr="Activation du mode debug lors de l'exécution"), - SetSeed = SIMP(statut="f", typ="TXM", fr="Graine fixée pour le générateur aléatoire"), - StoreSupplementaryCalculations = SIMP(statut="f", typ="TXM", max="**", into=['CostFunctionJ', 'CostFunctionJb', 'CostFunctionJo', 'CurrentState', 'InnovationAtCurrentState', 'SimulatedObservationAtCurrentState'], fr="Liste de calculs supplémentaires à stocker et/ou effectuer"), - ), - ParametersTangentTest = BLOC (condition = " (Parameters == 'Defaults') and (Algorithm == 'TangentTest') ", - statut="f", - AmplitudeOfInitialDirection = SIMP(statut="f", typ="R", min=1, max=1, defaut=1.0, fr="Amplitude de la direction initiale de la dérivée directionnelle autour du point nominal"), - AmplitudeOfTangentPerturbation = SIMP(statut="f", typ="R", val_min=1e-10, val_max=1.0, min=1, max=1, defaut=0.01, fr="Amplitude de la perturbation pour le calcul de la forme tangente"), - EpsilonMinimumExponent = SIMP(statut="f", typ="I", val_min=-20, val_max=0, min=1, max=1, defaut=-8, fr="Exposant minimal en puissance de 10 pour le multiplicateur d'incrément"), - InitialDirection = SIMP(statut="f", typ="TXM", fr="Direction initiale de la dérivée directionnelle autour du point nominal"), - ResiduFormula = SIMP(statut="f", typ="TXM", min=1, max=1, defaut="Taylor", into=['Taylor'], fr="Formule de résidu utilisée"), - SetSeed = SIMP(statut="f", typ="TXM", fr="Graine fixée pour le générateur aléatoire"), - StoreSupplementaryCalculations = SIMP(statut="f", typ="TXM", max="**", into=['CurrentState', 'Residu', 'SimulatedObservationAtCurrentState'], fr="Liste de calculs supplémentaires à stocker et/ou effectuer"), - ), - ) - -def F_variables(statut) : return FACT( - statut=statut, - regles = ( MEME_NOMBRE ('NAMES', 'SIZES')), - NAMES = SIMP(statut="o", typ="TXM", max="**", validators=NoRepeat()), - SIZES = SIMP(statut="o", typ="I", val_min=1, max="**") - ) -def ChDir(dirname): - os.chdir(os.path.abspath(dirname)) - return 1 -ChDir.info = u"This has to be a regular directory path." - -ASSIMILATION_STUDY = PROC(nom="ASSIMILATION_STUDY", - op=None, - repetable = "n", - StudyName = SIMP(statut="o", typ = "TXM", defaut="ADAO Calculation Case"), - StudyRepertory = SIMP(statut="f", typ = "Repertoire", validators=FunctionVal(ChDir), min=1, max=1), - Debug = SIMP(statut="f", typ = "I", into=(0, 1), defaut=0), - AlgorithmParameters = F_AlgorithmParameters("o",("3DVAR", "4DVAR", "Blue", "DerivativeFreeOptimization", "EnsembleBlue", "ExtendedBlue", "ExtendedKalmanFilter", "KalmanFilter", "LinearLeastSquares", "NonLinearLeastSquares", "ParticleSwarmOptimization", "QuantileRegression", "UnscentedKalmanFilter", ), AlgorithmParametersInNS), - Background = F_Background("o", BackgroundInNS), - BackgroundError = F_BackgroundError("o", BackgroundErrorInNS), - Observation = F_Observation("o", ObservationInNS), - ObservationError = F_ObservationError("o", ObservationErrorInNS), - ObservationOperator = F_ObservationOperator("o"), - EvolutionModel = F_EvolutionModel("f"), - EvolutionError = F_EvolutionError("f", EvolutionErrorInNS), - ControlInput = F_ControlInput("f"), - UserDataInit = F_Init("f"), - UserPostAnalysis = F_UserPostAnalysis("o"), - InputVariables = F_variables("f"), - OutputVariables = F_variables("f"), - Observers = F_Observers("f") - ) - -CHECKING_STUDY = PROC(nom="CHECKING_STUDY", - op=None, - repetable = "n", - StudyName = SIMP(statut="o", typ = "TXM", defaut="ADAO Checking Case"), - StudyRepertory = SIMP(statut="f", typ = "Repertoire", validators=FunctionVal(ChDir), min=1, max=1), - Debug = SIMP(statut="f", typ = "I", into=(0, 1), defaut=0), - AlgorithmParameters = F_AlgorithmParameters("o", ("AdjointTest", "FunctionTest", "GradientTest", "LinearityTest", "ObserverTest", "SamplingTest", "TangentTest", ), AlgorithmParametersInNS), - CheckingPoint = F_CheckingPoint("o", CheckingPointInNS), - BackgroundError = F_BackgroundError("f", BackgroundErrorInNS), - Observation = F_Observation("f", ObservationInNS), - ObservationError = F_ObservationError("f", ObservationErrorInNS), - ObservationOperator = F_ObservationOperator("o"), - UserDataInit = F_Init("f"), - Observers = F_Observers("f") - ) diff --git a/Adao/README_CATALOGUE.txt b/Adao/README_CATALOGUE.txt deleted file mode 100644 index f4d3dbd0..00000000 --- a/Adao/README_CATALOGUE.txt +++ /dev/null @@ -1,4 +0,0 @@ -#-*-coding:iso-8859-1-*- -# -Les catalogues presents dans cette directory sont des catalogues de tests. -Le catalogue final utilisé dans le module Adao de Salome peut être différent diff --git a/Adao/casVide.py b/Adao/casVide.py deleted file mode 100644 index 61056b40..00000000 --- a/Adao/casVide.py +++ /dev/null @@ -1 +0,0 @@ -Dico = {'ASSIMILATION_STUDY': {'ObservationError': {'INPUT_TYPE': None, 'ScalarSparseMatrix': {'data': {'FROM': None, 'STRING_DATA': {'STRING': None}}}}, 'Observation': {'INPUT_TYPE': None, 'Vector': {'data': {'FROM': 'String', 'STRING_DATA': {'STRING': '22'}}}}, 'BackgroundError': {'INPUT_TYPE': 'DiagonalSparseMatrix', 'DiagonalSparseMatrix': {'data': {'FROM': 'String', 'STRING_DATA': {'STRING': 'prefs.py'}}}}, 'ObservationOperator': {'Function': {'data': {'SCRIPTWITHONEFUNCTION_DATA': {'CenteredFiniteDifference': None, 'SCRIPTWITHONEFUNCTION_FILE': None, 'DifferentialIncrement': None}, 'FROM': None}}, 'INPUT_TYPE': None}, 'UserPostAnalysis': {'TEMPLATE_DATA': {'AnalysisPrinter': {'ValueTemplate': None}, 'Template': None}, 'FROM': None}, 'StudyName': None, 'Background': {'INPUT_TYPE': None, 'Vector': {'data': {'FROM': 'String', 'STRING_DATA': {'STRING': 'prefs.py'}}}}, 'AlgorithmParameters': {'Algorithm': '4DVAR'}}} \ No newline at end of file diff --git a/Adao/configuration_Adao.py b/Adao/configuration_Adao.py deleted file mode 100644 index 41d53bf1..00000000 --- a/Adao/configuration_Adao.py +++ /dev/null @@ -1,64 +0,0 @@ -# -*- coding: utf-8 -*- -# -# Copyright (C) 2007-2021 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 -# - -""" -""" -# Modules Python -# print "passage dans la surcharge de configuration pour Adao" -import os, sys, string, types, re - - -# Modules Eficas - - -#from Editeur import Eficas_utils -from InterfaceQT4 import configuration - -# Classe de base permettant de lire, afficher -# et sauvegarder les fichiers utilisateurs -class CONFIG(configuration.configBase): - - def __init__(self,appli,repIni): - - self.labels_eficas=['lang','rep_cata','catalogues','closeAutreCommande','closeFrameRechercheCommande','closeEntete','taille'] - configuration.configBase.__init__(self,appli,repIni) - - #self.rep_user = os.environ["HOME"] - self.rep_user = os.path.expanduser("~") - self.appli = appli - self.code = appli.code - # self.lang = "fr" - self.rep_ini = repIni - self.rep_mat=" " # Compatbilite Aster - self.savedir = self.rep_user - self.generator_module = "generator_adao" - self.convert_module = "convert_adao" - - # Format des catalogues... - # (code, version, catalogue, formatIn, formatOut) - # Il faut les mettre dans un tuple - #self.catalogues = (("ADAO", "V0", os.path.join(self.rep_ini, 'ADAO_Cata_V0.py'), "adao"),) - -def make_config(appli,rep): - return CONFIG(appli,rep) - diff --git a/Adao/monCode_Cata.py b/Adao/monCode_Cata.py deleted file mode 100644 index 2f370716..00000000 --- a/Adao/monCode_Cata.py +++ /dev/null @@ -1,25 +0,0 @@ -# -*- coding: utf-8 -*- -from Accas import * - -JdC = JDC_CATA (code = 'ADAO', - execmodul = None, - ) -JdC = JDC_CATA (code = 'ADAO', - execmodul = None, - regles = ( AU_MOINS_UN ('ASSIMILATION_STUDY','CHECKING_STUDY'), AU_PLUS_UN ('ASSIMILATION_STUDY','CHECKING_STUDY')), - ) - - -ASSIMILATION_STUDY = PROC(nom="ASSIMILATION_STUDY", op=None, repetable = "n", - Study_name = SIMP(statut="o", typ = "TXM"), - Study_repertory = SIMP(statut="f", typ = "Repertoire", min=1, max=1), - Debug = SIMP(statut="o", typ = "I", into=(0, 1), defaut=0), - Algorithm = SIMP(statut="o", typ = "TXM", into=("3DVAR", "Blue", "EnsembleBlue", "KalmanFilter", "LinearLeastSquares", "NonLinearLeastSquares", "ParticleSwarmOptimization", "QuantileRegression", )), - Background = FACT(statut="o", - regles=(UN_PARMI('SCRIPT_DATA_FILE','VECTOR_STRING'),), - Stored = SIMP(statut="o", typ = "I", into=(0, 1), defaut=0, fr="Choix de stockage interne ou non du concept parent", ang="Choice of the storage or not of the parent concept"), - SCRIPT_DATA_FILE = SIMP(statut = "f", typ = "FichierNoAbs", validators=(OnlyStr()), fr="En attente d'un nom de fichier script, avec ou sans le chemin complet pour le trouver, contenant la définition d'une variable interne de même nom que le concept parent", ang="Waiting for a script file name, with or without the full path to find it, containing the definition of an internal variable of the same name as the parent concept"), - VECTOR_STRING = SIMP(statut = "f", typ = "TXM", fr="En attente d'une chaine de caractères entre guillements. Pour construire un vecteur, ce doit être une suite de nombres, utilisant un espace ou une virgule pour séparer deux éléments et un point-virgule pour séparer deux lignes", ang="Waiting for a string in quotes. To build a vector, it has to be a float serie, using a space or comma to separate two elements in a line, a semi-colon to separate rows"), - ), - -) diff --git a/Adao/prefs.py b/Adao/prefs.py deleted file mode 100644 index 507e52b0..00000000 --- a/Adao/prefs.py +++ /dev/null @@ -1,22 +0,0 @@ -# Copyright (C) 2007-2021 EDF R&D -# -# 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 -# -code="Adao" -import sys, os -if os.path.dirname(os.path.abspath(__file__)) not in sys.path : - sys.path.insert(0,os.path.dirname(os.path.abspath(__file__))) diff --git a/Adao/prefs_Adao.py b/Adao/prefs_Adao.py deleted file mode 100644 index a3dfcf0b..00000000 --- a/Adao/prefs_Adao.py +++ /dev/null @@ -1,39 +0,0 @@ -# -*- coding: utf-8 -*- -import os,sys - -# repIni sert a localiser le fichier editeur.ini - -repIni=os.path.dirname(os.path.abspath(__file__)) -INSTALLDIR=os.path.join(repIni,'..') -sys.path[:0]=[INSTALLDIR] - - -# Codage des strings qui accepte les accents (en remplacement de 'ascii') -encoding='iso-8859-1' - -# Choix des catalogues -# format du Tuple (code,version,catalogue,formatOut, finit par defaut eventuellement) -catalogues = ( -# ('Adao','V1',os.path.join(repIni,'ADAO_Cata_V1.py'),'python','python'), -# ('Adao','V770',os.path.join(repIni,'ADAO_Cata_V0_V7_7_0.py'),'python','python'), - ('Adao','V83',os.path.join(repIni,'ADAO_Cata_V0_V8_3_0_DEV.py'),'dicoImbrique','dico'), -# ('Adao','dico',os.path.join(repIni,'ADAO_Cata_V0_V8_3_0_DEV.py'),'dico','dico'), -# ('Adao','V83',os.path.join(repIni,'ADAO_Cata_V0_V8_3_0_DEV.py'),'python','python'), -# ('Adao','V833',os.path.join(repIni,'ADAO_Cata_PN.py'),'python','python'), -# ('Adao','V751',os.path.join(repIni,'ADAO_Cata_V0_V7_5_1.py'),'python','python'), - ('Adao','V05',os.path.join(repIni,'ADAO_Cata_V0_V8_3_0_DEV.py'),'python','python'), - ('Adao','V95',os.path.join(repIni,'ADAO_Cata_V0_pour_V9_5_0.py'),'python','python'), -) - -# lang indique la langue utilisee pour les chaines d'aide : fr ou ang -#lang='ang' -lang='fr' - -closeAutreCommande = True -closeFrameRechercheCommande = True -#closeEntete = True -closeArbre = True -translatorFichier = os.path.join(repIni,'Adao') -nombreDeBoutonParLigne=1 -#dumpXSD=True -#afficheIhm=False diff --git a/Adao/properties.py b/Adao/properties.py deleted file mode 100644 index f8ee7110..00000000 --- a/Adao/properties.py +++ /dev/null @@ -1,5 +0,0 @@ -# ====================================================================== -# VERSION DU CODE -#---------------------------------------------------------------------- -version = "6.6" -date = "19/09/2012" diff --git a/Adao/qtDico.py b/Adao/qtDico.py deleted file mode 100755 index 09866c03..00000000 --- a/Adao/qtDico.py +++ /dev/null @@ -1,37 +0,0 @@ -#!/usr/bin/env python -# -*- coding: utf-8 -*- -# Copyright (C) 2007-2021 EDF R&D -# -# 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 -# -""" - Ce module sert à lancer EFICAS configuré pour Code_Aster -""" -# Modules Python - -# Modules Eficas -import prefs -name='prefs_'+prefs.code -__import__(name) - -from InterfaceQT4 import eficas_go - -dico=eficas_go.lanceEficas_param(code=prefs.code,fichier="/local00/home/A96028/GitEficas/eficas/Adao/exemple01.comm",version="V760",macro="ASSIMILATION_STUDY") -#print dico - -import pprint -pprint.pprint(dico) diff --git a/Adao/qtEficas_Adao.py b/Adao/qtEficas_Adao.py deleted file mode 100755 index 05eaee9a..00000000 --- a/Adao/qtEficas_Adao.py +++ /dev/null @@ -1,36 +0,0 @@ -#!/usr/bin/env python -# -*- coding: utf-8 -*- -# Copyright (C) 2007-2017 EDF R&D -# -# 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 -# -""" -""" -# Modules Python - -# Modules Eficas -import prefs -name='prefs_'+prefs.code -__import__(name) - -#import sys -#reload(sys) -#sys.setdefaultencoding('latin1') - -from InterfaceQT4 import eficas_go -print eficas_go -eficas_go.lanceEficas(code=prefs.code) diff --git a/Aide/CMakeLists.txt b/Aide/CMakeLists.txt deleted file mode 100644 index 00d42795..00000000 --- a/Aide/CMakeLists.txt +++ /dev/null @@ -1,39 +0,0 @@ -# -*- coding: utf-8 -*- -# CONFIGURATION MANAGEMENT OF EDF VERSION -# ====================================================================== -# COPYRIGHT (C) 2007 - 2012 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# -# -# ====================================================================== - -# Installation des fichiers d'aide : Open TURNS -if (WITH_OPENTURNS) - install ( FILES eficas_OPENTURNS_STUDY.adp - DESTINATION ${CMAKE_INSTALL_PREFIX}/Aide - ) - add_subdirectory ( fichiers_OPENTURNS_STUDY ) -endif (WITH_OPENTURNS) - - -install ( - DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}/fichiers_EFICAS - DESTINATION ${CMAKE_INSTALL_PREFIX}/Aide -) - - -### Local Variables: -### mode: cmake -### End: diff --git a/Aide/eficas_OPENTURNS_STUDY.adp b/Aide/eficas_OPENTURNS_STUDY.adp deleted file mode 100644 index db67cb4e..00000000 --- a/Aide/eficas_OPENTURNS_STUDY.adp +++ /dev/null @@ -1,5 +0,0 @@ - - - - diff --git a/Aide/fichiers_ASTER/CMakeLists.txt b/Aide/fichiers_ASTER/CMakeLists.txt deleted file mode 100644 index b9b71c94..00000000 --- a/Aide/fichiers_ASTER/CMakeLists.txt +++ /dev/null @@ -1,34 +0,0 @@ -# -*- coding: utf-8 -*- -# CONFIGURATION MANAGEMENT OF EDF VERSION -# ====================================================================== -# COPYRIGHT (C) 2007 - 2012 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# -# -# ====================================================================== - -# Installation des fichiers d'aide : Aster -if (WITH_ASTER) - install ( DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR} - DESTINATION ${CMAKE_INSTALL_PREFIX}/Aide - FILES_MATCHING PATTERN *.txt PATTERN *.html - PATTERN CMakeLists.txt EXCLUDE - PATTERN CVS EXCLUDE - ) -endif (WITH_ASTER) - -### Local Variables: -### mode: cmake -### End: diff --git a/Aide/fichiers_ASTER/INSTALL.txt b/Aide/fichiers_ASTER/INSTALL.txt deleted file mode 100644 index eb759325..00000000 --- a/Aide/fichiers_ASTER/INSTALL.txt +++ /dev/null @@ -1,52 +0,0 @@ - - - - - Installation Standard d Eficas - - - - -

-1- Installation standard -

- -Pour installer EFICAS a partir de la distribution : .tgz
-faire :
-
tar xzvf .tgz

- -ce qui a pour effet de créer un répertoire de nom V1EficasV1_16a4AsterSTA9. -

- -Pour modifier l'emplacement de la doc, le chemin d'accès à Acrobat Reader, -les catalogues, il faut modifier le fichier -
editeur.ini
-dans le répertoire Aster ou utiliser le sous-menu "Parametres Eficas" du men Options . -

-ATTENTION :
-Si Eficas est installé dans un répertoire particulier d'administration -dans lequel les utilisateurs n'ont pas le droit d'écriture,
- il faut que l'administrateur lance Eficas pour générer -les fichiers et catalogues compilés .pyc -

- - -2- Utilisation d'Eficas -
-
-Pour utiliser Eficas, aller dans le répertoire Aster et faire : -
python eficas_aster.py -
-
-3- Installation avec un noyau pré-installé -
-
-Aller dans le répertoire Aster du répertoire Eficas -et modifier le fichier prefs.py comme suit : -Mettre dans la variable CODE_PATH le chemin absolu vers -le répertoire contenant les deux répertoires Noyau et Validation que vous voulez -utiliser à la place de ceux fournis dans la livraison d'Eficas -
-Pour changer les catalogues, modifier le fichier editeur.ini dans le répertoire Aster - - diff --git a/Aide/fichiers_ASTER/NEWS.txt b/Aide/fichiers_ASTER/NEWS.txt deleted file mode 100644 index 43eadb0e..00000000 --- a/Aide/fichiers_ASTER/NEWS.txt +++ /dev/null @@ -1,107 +0,0 @@ -Version 6.5 (05/2012): -
- Comptabible avec la version 6.5 de Salome -

-Version 6.4 (12/2011): -
- Le numero de version d Eficas est celui de Salome. Ainsi la version 6.4 d Eficas est livree avec Salome 6.4 et tourne -dans cette version. -

-Version 2.O (12/2009): - fusion des versions d Eficas pour Code_Aster, Outils Metiers et OpenTURNS -

-Version 1.17 (12/2009): -
- Mise en synchronisation avec la version 10.0 de Code_Aster de decembre 2009. -

- Version en QT4 -
- La version TK est figee -

- -Version 1.16 (6/2009): -
- Mise en synchronisation avec la version 9.3 de Code_Aster de mai 2007. -

- - -Version 1.13 (6/2008): -
- Mise en synchronisation avec la version 9.2 de Code_Aster de mai 2007. -

- -Version 1.12 (6/2007): -
- Mise en synchronisation avec la version 9.1 de Code_Aster de mai 2007. -

- -Version 1.11 (12/2006): -
- Mise en synchronisation avec la version 8.4 de Code_Aster de decembre 2006. - Première version du Traducteur de V7 en V8 -

- -Version 1.10 (6/2006): -
- Mise en synchronisation avec la version 8.3 de Code_Aster de juin 2006. -

- -Version 1.9 (12/2005): -
- Mise en synchronisation avec la version 8.2 de Code_Aster de decembre 2005. -

- -Version 1.8 (6/2005): -
- Mise en synchronisation avec la version 8.1 de Code_Aster de mai 2005. - Les includes et poursuites peuvent etre édités. Introduction de la notation - scientifique pour les flottants. -

- -Version 1.7 : (12/2004) -
- Mise en synchronisation avec la version STA7 de Code_Aster (7.4). - Les formules changent et deviennent des formules au sens python. - Disparition des PARAMETRE-EVAL - Les touches raccourcis (CtrlC par exple) sont activées et paramétrables dans prefs.py. -

- -Version 1.6 : (05/2004) -
- Mise en synchronisation avec la version STA7 de Code_Aster (7.2.26) - Evolution de la saisie des valeurs pour definir une fonction (EO2003-241) : - - Saisie des valeurs sous forme de tuple. - - Si une valeur est selectionnée, l'insertion se fera après cette valeur - et non en fin de liste -

- -Version 1.5 (10/2003): -
- Mise en synchronisation avec la version STA7 de Code_Aster d'octobre 2003 (7.2) - Introduction des validateurs de mots cles simples -

- -Version 1.4 (5/2003): -
- Mise en synchronisation avec la version STA7 de Code_Aster de mai 2003 (7.1) - Possibilité de donner un nom de fichier en argument lors de l'ouverture d'EFICAS (EO2003-060) - Correction d'une anomalie dans la fonctionnalité de commentarisation des commandes (AO2003-041) - Ajout du bouton de documentation dans le panneau FORMULE (AO2002-447) - Selection automatique du concept quand il n'en existe qu'un (EO2002-162) -

- -Version 1.3 (11/2002): -
- Mise en synchronisation avec la version STA6 de Code_Aster de septembre 2002 - Ajout de la possibilité de visualiser les INCLUDE, INCLUDE_MATERIAU et POURSUITE (popup - sur click droit de la souris sur l'icone de la commande) - Possibilité d'afficher la liste des commandes par groupe (menu option->affichage commandes) - Reprise profonde du mécanisme de gestion des fichiers inclus (voir menus d'AIDE pour plus de détails) - Corrections diverses -

- -Version 1.2 (5/2002): -
- Reconception de la version 1.1 : décomposition en packages Python - Mise en synchronisation avec la version STA6 de Code_Aster de fevrier 2002 -

diff --git a/Aide/fichiers_ASTER/cata.txt b/Aide/fichiers_ASTER/cata.txt deleted file mode 100644 index 0973bf9b..00000000 --- a/Aide/fichiers_ASTER/cata.txt +++ /dev/null @@ -1,29 +0,0 @@ - - - - - -Personnaliser Eficas - - - - - -
-sous la directory $HOME/.eficas_install, dans le fichier editeur_salome.ini, l'utilisateur peut redefinir les variables suivantes : -:
-
exec_acrobat
Cette variable contient le chemin d 'acces au lecteur pdf. -
elle contient par exemple exec_acrobat = 'acroread'
-
savedir
Cette variable contient la directory initiale pour l ouverture de fichiers. -
elle contient par exemple savedir = '/local/noyret/Eficas_ASTER'
-
catalogue
-Cette variable permet de surcharger la liste des catalogues accessibles ou de changer le catalogue par defaut.
-C'est une liste de tuples (code,version,catalogue,formatOut avec éventuellement "defaut) -
Pour Code_Aster, elle sera par exemple de la forme :
-catalogues=[('ASTER','STA9.8', '/local/noyret/Eficas/Aster/Cata/cataSTA9', 'python'),
- ('ASTER','STA10.3', '/local/noyret/Eficas/Aster/Cata/cataSTA10', 'python'),
- ('ASTER','STA11', '/local/noyret/Eficas/Aster/Cata/cataSTA11', 'python', 'defaut')] -
-Attention : il est possible certes d ajouter un catalogue a la liste mais il est necessaire que la directory contienne -l'ensemble des elements constitutifs du catalogue ASTER : ops.py, macro, sd ... - diff --git a/Aide/fichiers_ASTER/faqs.txt b/Aide/fichiers_ASTER/faqs.txt deleted file mode 100644 index cb1a82d5..00000000 --- a/Aide/fichiers_ASTER/faqs.txt +++ /dev/null @@ -1,59 +0,0 @@ -
-------------------------------------------------------------------------------------------------------------- - FAQs et Limitations d'EFICAS -------------------------------------------------------------------------------------------------------------- - -
-
- -1. Mots réservés : -
- - Tous les mots du langage Python sont des mots réservés. - On ne peut donc pas appeler une variable ou un concept 'fin' ou 'dir' - Pour la liste complète de ces mots-clés, veuillez vous référer à la - documentation Python -
-
- -2. Concepts réentrants : -
- - Ne pas indiquer par un '&' devant son nom qu'un concept est utilisé comme - concept réentrant. En effet EFICAS le sait ! -

- -3. Carte commentaire : -
- - La carte commentaire est désormais le '#' (dièse) au lieu du '%' (pourcent) - Les commentaires sont gérés comme des objets de même niveau que les - commandes ; il n'est plus possible de placer des commentaires "dans" - une commande. Attention, lors de la traduction d'un fichier de version 5 - en 6, les commentaires "dans" les commandes seront perdus. - -

-4. Nommer le concept produit par un opérateur : -
- - Vous ne pouvez nommer le concept produit d'un opérateur que lorsque - celui-ci aura été entièrement et correctement rempli. - -

-5. Règle de rémanence dans les mots-clés facteurs répétés : - - La règle de rémanence qui permettait pour certains mots-clés facteurs - et pour certains de leurs mots-clés simples de ne pas répeter la valeur - de ces derniers dans toutes les occurrences du mot-clé facteur n'est pas - connue d'EFICAS. - En conséquence, vous devez répéter les mots-clés simples concernés dans - toutes les occurrences des mots-clés facteurs. - -

-6. Besoin d'aide ? -
- - La documentation d'utilisation d'EFICAS a pris un peu de retard sur le produit ... - Néanmoins, vous disposez sur la plupart des panneaux contextuels ( les panneaux à - droite de l'arbre) d'une aide en ligne que vous pouvez activer en maintenant le - bouton droit de votre souris enfoncé. diff --git a/Aide/fichiers_ASTER/includes.txt b/Aide/fichiers_ASTER/includes.txt deleted file mode 100644 index aadbb81d..00000000 --- a/Aide/fichiers_ASTER/includes.txt +++ /dev/null @@ -1,49 +0,0 @@ -Les macros INCLUDE, INCLUDE_MATERIAU et POURSUITE ont un fonctionnement spécial.
-Les concepts produits par ces macros sont obtenus par une interpretation séparée -du fichier de commandes correspondant. Les concepts produits sont ensuite inclus -dans le contexte du jeu de commandes principal.
-La mise à jour du jeu de commandes et de ses includes et poursuites -est presque complètement automatique. Cependant dans quelques cas particuliers -le mécanisme de mise à jour peut être pris en défaut. - -

-Les principes retenus sont les suivants : -

- -1- Un fichier invalide n'est pas du tout pris en compte meme si quelques -commandes de ce fichier sont valides -

- -2- Il est possible de visualiser (bouton droit de la souris sur l'icone de -la macro -> menu View) le contenu de ces types de macros. Le bouton (icone -loupe) permet de visualiser le source du fichier inclus. -

- -3- Les fichiers inclus sont mémorisés en fonction de leur UNITE -pour les INCLUDE, du nom de matériau pour les INCLUDE_MATERIAU et comme poursuite -pour une POURSUITE (il n'est pas possible d'avoir plus d'une POURSUITE par fichier). -ATTENTION : comme on s'appuie sur l'UNITE pour memoriser les fichers inclus il est -conseillé d'utiliser des numéros d'UNITE différents sinon la reactualisation sera -faite avec le meme fichier pour des INCLUDE différents. -

- -4- Pour changer les fichiers inclus, il faut passer par l'onglet FICHIER, modifier -le nom du fichier et appuyer sur le bouton Valider. Il est possible en passant par -cet onglet de forcer la prise en compte d'un fichier include partiellement valide -ce qui n'est pas possible lors de l'import initial. Pour changer un fichier INCLUDE -contenu dans un INCLUDE ou dans une POURSUITE, il faut editer l'INCLUDE ou la POURSUITE -englobante (voir 6.) et passer par l'onglet FICHIER. -

- -5- Le nom d'un fichier INCLUDE_MATERIAU est construit à partir des valeurs des mots-clés -de la commande, il n'est donc jamais demandé explicitement à l'utilisateur. - -

-6- Il est possible d'editer un fichier include ou poursuite. Pour cela, il suffit d'utiliser -l'entrée "Edit" du menu contextuel de l'étape en question (bouton droit de la souris). -Le fichier include ou poursuite en cours d'edition apparaitra dans un onglet distinct. -Les modifications dans un fichier include ou poursuite sont normalement propagées au fichier -principal et aux autres includes et poursuites. Il est cependant possible que quelques cas -tordus ne soient pas correctement traités. Dans le doute, une demande de rapport de validation -peut permettre de réactualiser l'état des différents fichiers. - diff --git a/Aide/fichiers_ASTER/index.html b/Aide/fichiers_ASTER/index.html deleted file mode 100644 index 500c7531..00000000 --- a/Aide/fichiers_ASTER/index.html +++ /dev/null @@ -1,19 +0,0 @@ - - - - -EFICAS - - - - -

EFICAS

-
- -

Evolution des versions -

Personnaliser Eficas -

FAQ -

Macros INCLUDE, INCLUDE_MATERIAU et POURSUITE - - - diff --git a/Aide/fichiers_EFICAS/cata.html b/Aide/fichiers_EFICAS/cata.html deleted file mode 100644 index fd4cb87d..00000000 --- a/Aide/fichiers_EFICAS/cata.html +++ /dev/null @@ -1,54 +0,0 @@ - - - - - Personnaliser Eficas - - - - - -



-

-

Les fichiers de -configuration d'Eficas

-

Les -fichiers sont dans placés dans $HOME/.config/Eficas/NomDuCode -(ASTER, CARMEL3D...)

-

Dans le fichier editeur_salome.ini, l'utilisateur peut redéfinir -les variables suivantes : :

-
-
exec_acrobat
- Cette variable contient le chemin d 'accès au lecteur pdf.
elle - contient par exemple exec_acrobat = '/usr/bin/evince'
- par défaut, Eficas utilise xdg-open pour ouvrir les fichiers selon - la configuration du sytème.
-
-
- savedir
- Cette variable contient la directory initiale pour l'ouverture de - fichiers.
elle contient par exemple savedir = - '/local/noyret/Eficas_ASTER'
-
-
- catalogues
- Cette variable permet de surcharger la liste des catalogues - accessibles ou de changer le catalogue par défaut.
Elle doit - avoir la forme d'une liste de tuples - (code,version,catalogue,formatOut avec éventuellement "defaut) -
Prenons l'exemple de Code_Aster :
-
catalogues=(
- ('ASTER','STA9.8', '/local/noyret/Eficas/Aster/Cata/cataSTA9', - 'python'),
('ASTER','STA10.3', - '/local/noyret/Eficas/Aster/Cata/cataSTA10', 'python'), -
('ASTER','STA11', '/local/noyret/Eficas/Aster/Cata/cataSTA11', - 'python', 'defaut')
- )
-
Attention : il est possible certes d'ajouter un catalogue à la - liste mais il est nécessaire que la directory contienne l'ensemble -
- des éléments constitutifs du catalogue ASTER : ops.py, macro, sd - .. Cette variable est surtout utile pour restreindre les choix
- ou changer le catalogue par défaut.
- - \ No newline at end of file diff --git a/Aide/fichiers_EFICAS/faqs.html b/Aide/fichiers_EFICAS/faqs.html deleted file mode 100644 index 52167bce..00000000 --- a/Aide/fichiers_EFICAS/faqs.html +++ /dev/null @@ -1,62 +0,0 @@ - - - - - - - - - - - -

FAQ d'EFICAS

-



-

-

1. Mots réservés :

-

Tous les mots du langage Python sont des mots réservés. On ne -peut donc pas appeler une variable ou un concept 'fin' ou 'dir' ou -'eval'. Pour la liste complète de ces mots-clés, veuillez vous -référer à la documentation Python.

-

De plus, tous les noms de classe ou de concepts utilisés par -Eficas lui-même sont également réservés. C'est le cas de MCSIMP, -SIMP ou BLOC. Cette liste est évolutive

-



-

-



-

-

2. Nommer le concept produit par un opérateur :

-

Vous ne pouvez nommer le concept produit d'un opérateur que -lorsque celui-ci aura été entièrement et correctement rempli.

-



-

-

3. Les règles

-

* -AU_MOINS_UN: un au moins des mots clefs de la liste doit être -présent (il peut y en avoir plusieurs)

-

* -UN_PARMI: un seul des mots clefs de la liste doit être présent (il -ne peut pas y en avoir plusieurs)

-

* -EXCLUS: si l'un des mots clefs est présent, les autres sont absents.

-

* -ENSEMBLE: si l'un des mots clefs est présent, tous les autres -doivent l'être également

-

* -PRESENT-PRESENT: si le PREMIER des mots clefs est présent, tous les -autres doivent l'être également

-

* -PRESENT-ABSENT: si le PREMIER des mots clefs est présent, tous les -autres doivent être absents

-



-

-



-

-



-

- - \ No newline at end of file diff --git a/Aide/fichiers_EFICAS/includes.html b/Aide/fichiers_EFICAS/includes.html deleted file mode 100644 index b3a56e90..00000000 --- a/Aide/fichiers_EFICAS/includes.html +++ /dev/null @@ -1,54 +0,0 @@ - - - - - - - - - - - -

Les commandes INCLUDE, -INCLUDE_MATERIAU et POURSUITE ont un fonctionnement spécial.

-

Les concepts produits -sont obtenus par une interprétation séparée du fichier de -commandes correspondant. Ils sont ensuite inclus dans le contexte du -jeu de commandes principal. La mise à jour du jeu de commandes et de -ses includes et poursuites est presque complètement automatique. -Cependant dans quelques cas particuliers, le mécanisme de mise à -jour peut être pris en défaut.

-


-

-

Les principes retenus sont les suivants -:

-


-

-

1- Un fichier invalide n'est pas du -tout pris en compte même si quelques commandes de ce fichier sont -valides

-


-

-

2- Il est possible de visualiser le -fichier inclus : bouton Edit

-


-

-

3- Pour Code_Aster, les fichiers inclus -sont mémorisés en fonction de leur UNITE.

-

ATTENTION : il est donc fortement -conseillé d'utiliser des numéros d'UNITE différents.

-


-

-

4- Les modifications dans -un fichier include ou poursuite sont normalement propagées au -fichier principal et aux autres includes et poursuites. Il est -cependant possible que quelques cas tordus ne soient pas correctement -traités. Dans le doute, une demande de rapport de validation peut -permettre de réactualiser l'état des différents fichiers.

- - \ No newline at end of file diff --git a/Aide/fichiers_EFICAS/index.html b/Aide/fichiers_EFICAS/index.html deleted file mode 100644 index 98d338e1..00000000 --- a/Aide/fichiers_EFICAS/index.html +++ /dev/null @@ -1,33 +0,0 @@ - - - - - EFICAS - - - - - - -

EFICAS

-
-

Evolution des versions -

-

Personnaliser Eficas -

-

FAQ -

-

Macros INCLUDE, INCLUDE_MATERIAU et -POURSUITE -

-



-

- - diff --git a/Aide/fichiers_EFICAS/news.html b/Aide/fichiers_EFICAS/news.html deleted file mode 100644 index 1e6d3f70..00000000 --- a/Aide/fichiers_EFICAS/news.html +++ /dev/null @@ -1,64 +0,0 @@ - - - - - - - - - - - -

Rappel -Les versions d'Eficas -sont synchrones avec les versions de Salomé. Les informations sur -les fiches correctives de chaque version se trouvent dans la lettre -d'information Salomé.

-


-

-

Eficas 7-3

-

-La grande nouveauté de cette -version est la possibilité de nommer les concepts directement dans -l'arbre d'étude, sans avoir à passer par l'onglet « nommer -concept Â» qui reste cependant accessible. De même, pour -améliorer l'ergonomie, les blocs conditionnels sont maintenant -systématiquement dépliés dans l'arbre d'étude pour éviter une -manipulation obligatoire.

-

-Un nouveau type « SalomeEntry Â» -a été introduit qui permet de sélectionner un objet dans l'arbre -d'étude Salome sans qu'aucune vérification de type ne soit faite.

-


-

-

Eficas 7-2

-

Un -nouveauté pour les utilisateurs : l'internationalisation de -l'IHM et la création des fichiers pour la traduction en anglais.

-

Un -type booléen (True/False et non plus 0/1) a été introduit et peut -être utilisé dans les catalogues.

-

La -possibilité de copier des concepts avec leur nom d'un fichier à -l'autre a été implémentée.

-

Les -noms de concepts autres que les concepts ASTER ne sont désormais -plus limités en taille.

-

Concernant -Code_Aster, le mécanisme des remontées d'erreur pour les fichiers -POURSUITE et INCLUDE qui fonctionnait mal, a été revu

-

Enfin, -la remontée des erreurs du générateur spécifique à Carmel est -affichée dans une fenêtre d'Eficas. -

-

Un -bouton Run a été mis en place pour les utilisateurs MAP. Il faut -cependant que le fichier soit valide (et ait été sauvegardé) pour -que cette fonction soit accessible

- - \ No newline at end of file diff --git a/Aide/fichiers_OPENTURNS_STUDY/CMakeLists.txt b/Aide/fichiers_OPENTURNS_STUDY/CMakeLists.txt deleted file mode 100644 index f5e9dc02..00000000 --- a/Aide/fichiers_OPENTURNS_STUDY/CMakeLists.txt +++ /dev/null @@ -1,34 +0,0 @@ -# -*- coding: utf-8 -*- -# CONFIGURATION MANAGEMENT OF EDF VERSION -# ====================================================================== -# COPYRIGHT (C) 2007 - 2012 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# -# -# ====================================================================== - -# Installation des fichiers d'aide : Open TURNS -if (WITH_OPENTURNS) - install ( DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR} - DESTINATION ${CMAKE_INSTALL_PREFIX}/Aide - FILES_MATCHING PATTERN *.txt PATTERN *.html - PATTERN CMakeLists.txt EXCLUDE - PATTERN CVS EXCLUDE - ) -endif (WITH_OPENTURNS) - -### Local Variables: -### mode: cmake -### End: diff --git a/Aide/fichiers_OPENTURNS_STUDY/EficasGui.txt b/Aide/fichiers_OPENTURNS_STUDY/EficasGui.txt deleted file mode 100644 index b6a6ad18..00000000 --- a/Aide/fichiers_OPENTURNS_STUDY/EficasGui.txt +++ /dev/null @@ -1,38 +0,0 @@ - - - - What is the EFICAS Graphical User Interface? - - -

- What is the EFICAS Graphical User Interface? -

- -
-EFICAS is an open source software which proposes a graphical user interface to OpenTURNS.
-EFICAS enables to the User to lead an uncertainty study without having to learn the python statements.
-
-Eficas is structured in two parts :
-
    -
  • 1. Part 1 defines the calculus function (the wrapper definition);
  • -
  • 2. Part 2 defines the uncertainty study using a previously defined model.
  • -
-note that Part 1 must be fulfilled before Part 2.
-
-
-It has been made with the following objectives : -
    -
  • 1. to ease the use of Open TURNS, avoiding to the User writing the python statements;
  • -
  • 2. to ease the learning of the python statements by generating the python script after the study has been graphically defined.
  • -
-
-
-When used, the EFICAS GUI generates :
- -
  • 1. the file.comm which contains all the information declared in the EFICAS GUI.
  • -
  • 2. the file.py which is the python script associated to the study and that can be launched through a python session.
  • - - - - - diff --git a/Aide/fichiers_OPENTURNS_STUDY/UncertaintyStudy.txt b/Aide/fichiers_OPENTURNS_STUDY/UncertaintyStudy.txt deleted file mode 100644 index e3635625..00000000 --- a/Aide/fichiers_OPENTURNS_STUDY/UncertaintyStudy.txt +++ /dev/null @@ -1,190 +0,0 @@ - - - - DEFINITION OF THE UNCERTAINTY STUDY - - - - -

    - DEFINITION OF THE UNCERTAINTY STUDY -

    - - -

    -Limitations of the EFICAS GUI
    -

    -EFICAS version 2.0 has the following limitations : -
      -
    • on models :
        -
      • - the calculus fucntion f has to have a scalar output variable, which means that f : R^n --> R;
      • -
      • - only one model can be defined within a study;
      • - <\ul> -
      • on the input random vector : the probabilistic input variables must be independent or with a normal copula dependence structure;
      • -
      • on sample manipulation : there is no statistical functionalities except the evaluation of some correlation coefficients whithin the Central Uncertainty criteria evaluation;
      • -
      • on response surface tools : there is no possibility to create a polynomial response surface nor a polynomial chaos expansion.
      • -
      • on CRITERIA : only one criteria can be defined within a study. -
      -
      - -

      Define your uncertainty study

      - -To perform a uncertainty study through the EFICAS Graphical User Interface, you need to follow these steps. -As some concepts need other ones to be created, you have to respect the given order in the study definition. Note that only the two first steps (Step 1 and Step 2) may be exchanged. - - -
        -
      • Step 1 : Define the 1D distribution pool you'll need within the study.
        -This step defines all the 1D distributions that will be affected to probabilistic variables of the uncertainty study. To have information on distributions, see the Use Cases guide or User Manual Guide. -
        -
        • - create a DISTRIBUTION : -
          • 1. click on SansNom (which is the case study which still has no named until you save it);
          • -
          • 2. click on "Nouvelle Commande" on the upright of the board;
          • -
          • 3. click on DISTRIBUTION. -
        • -
          -
        • - fulfill the DISTRIBUTION : -
          • 1. click on Kind and choose a probabilistic distribution;
          • -
          • 2. click on the just created field named by the chosen distribution;
          • -
          • 3. give some values to each parameter of the distribution. In the Histogram case, give one by one the couples (class bandwith, class height) by typing : class bandwith, class height.
          • -
        • -
          -
        • name the DISTRIBUTION : -
          • 1. click on DISTRIBUTION;
          • -
          • 2. click on "Name Concept" on the upright of the board;
          • -
          • 3. give a name to the DISTRIBUTION
          • -
        • -
          -
        • - create another DISTRIBUTION :
          • 1. click on the last DISTRIBUTION you created;
          • -
          • 2. click on "Nouvelle Commande" on the upright of the board;
          • -
          • 3. click on DISTRIBUTION.
          • -
        • -
          -
        • - visualise the probabilistic density function of the DISTRIBUTION : -
          • 1. right click on DISTRIBUTION;
          • -
          • 2. click on Graphique.
          • -
        • -
        -
        -
        - - -
      • Step 2 : Define your model.
        -This step gives the link towards the calculus function through which uncertainties will be propagated. The model is described thanks to an xml file To have information on wrappers, see Wrapper Guide. -
        • - create a MODEL : -
          • 1. click on the last DISTRIBUTION you created;
          • -
          • 2. click on "Nouvelle Commande" on the upright of the board;
          • -
          • 3. click on MODEL.
          -
        • -
          -
        • - fulfill the MODEL : -
          • 1. click on FileName;
          • -
          • 2. give the adress of the file.xml corresponding to your calculus function. -
        • -
        - -
        -
        - - -
      • Step 3 : Define the probabilistic input variables.
        -This step associates a probabilistic distribution function previously defined in Step 1 to each variable defined in the model. -
        • - create a VARIABLE : -
          • 1. click on the last DISTRIBUTION you created;
          • -
          • 2. click on "Nouvelle Commande" on the upright of the board;
          • -
          • 3. click on VARIABLE.
          • -

        • -
        • - fulfill the VARIABLE : -
          • 1. click on ModelVariable;
          • -
          • 2. choose a variable within the list of the variables coming from the previously defined model;
          • -
          • 3. click on Distribution;
          • -
          • 4. choose a distribution among the ones previously defined in Step 1 (correctly fulfilled and named).
          • -

        • -
        • - create another VARIABLE : -
          • 1. click on the last VARIABLE you created;
          • -
          • 2. click on "Nouvelle Commande" on the upright of the board;
          • -
          • 3. click on VARIABLE.
          • -
        • -

        - -
      • Step 4 : Define the dependance structure of the probabilistic input variables.
        -This step defines the structure dependence of the probabilistic input variables previously declared. -
          -
        • - create a CORRELATION :
          • 1. click on the last VARIABLE you created;
          • -
          • 2. click on "Nouvelle Commande" on the upright of the board;
          • -
          • 3. click on CORRELATION.

          -
        • - fulfill the CORRELATION :
          • 1. click on Copula;
          • -
          • 2. choose a copula within Normal copula and Independent one;
          • -
          • 3. In case of Normal copula, give the correlation matrix by clicking on CorrelationMatrix.
          • -

        - - -
      • Step 5 : Define the criteria you will evaluate.
        -This step defines the criteria which will be evakluated by the uncertainty study. To have more information on criterias, see the Reference Guide.
        -
        • - - create a CRITERIA :
          • 1. click on the last VaRIABLE you created;
          • -
          • 2. click on "Nouvelle Commande" on the upright of the board;
          • -
          • 3. click on CRITERIA;
          -
        • - fulfill the CRITERIA :
          • 1. click on CRITERIA;
          • -
          • 2. choose a specific criteria among the three proposed ones.

          -The following steps are described just below.

        • - -
        • CRITERIA MinMax :
          -This criteria aims at evaluating some extreme values of the output variable of interest, which is the output variable of the model. To have more information on the different methods, see the Use Cases Guide. -
            -
          • - 3. click on MinMax;
          • -
          • - 4. click on the just created field Method which defines how input probabilistic variables will be generated;
          • -
          • - 5. click on the just created field corresponding to the chosen Method;
          • -
          • - 6. fulfill the required fields;
          • -
          • - 7. The Results are the extreme values evaluated on the output variable onf interest.
          • -

        • - -
        • CRITERIA Central Uncertainty :
          -This criteria aims at evaluating some central probabilistic carateristics of the output variable of interest. To have more information on the different methods, see the Use Cases Guide. -
          • - 3. click on CentralUncertainty;
          • -
          • - 4. click on the just created field Method which defines how the central probabilistic caracteristics will be evaluated and choose one;
          • -
          • - 5. click on the just created field corresponding to the chosen Method;
          • -
          • - 6. fulfill the required fields;
          • -
          • - 7. The Results are the mean, standard deviation whatever the chosen Method and in the case of a Radom sampling Method, also some empirical quantiles previoulsy defined, the evaluation of some correlation coefficients (PCC, PRCC, SRC and SRRC) and the kernel smoothing of the probabilistic density function of the output variable of interest.
          • -

        • - - -
        • CRITERIA Threshold Exceedance :
          -This criteria aims at evaluating the probability that the ouput variable of interest exceeds or remaines under a define threshold. To have more information on the different methods, see the Use Cases Guide. -
          • - 3. click on Threshold Exceedence;
          • -
          • - 4. click on the just created field Method which defines how the central probabilistic caracteristics will be evaluated;
          • -
          • - 5. define the Event : click on Threshold and fulfill it; click on the ComparisonOperator and fulfill it;
          • -
          • - 6. define the probability evaluation Method : click on Method and choose one;
          • -
          • - 7. fulfill the required fields. In the FORM and SORM cases, it is possible to perform some importance sampling around the design point : the importance distribution is the standard Normal distribution defined int he stansard space, with independent components, unit variance and centered around the design point.
          • -
          • - 8. The Results are the following ones :
            in the case of a Simulation Method, the probability evaluation with the standard deviation and the coefficient of vrariation of its estimator, the confidence interval defined previously, the final number of simulation used for the evaluation, the convergence graph of the estimator; in the case of a FORM Method, the probability evaluation, the associated design point, the Hasofer reliability index, the importance factors also drawed in a graph, the sensitivity factors evaluated on the FORM probability estimation and on the Hasofer reliability index and the calls number of the model; in the case of a SORM Method, the probability evaluation, the associated design point, the Hasofer, Tvedt and HohenBichler reliability indexes, the importance factors also drawed in a graph, the sensitivity factors evaluated on the Hasofer reliability index and the calls number of the model. -
          • -

        - -

        -General rules -

        -
          -
        • To erase a concept, right click on it and click on Supprimer.
        • -
        • While the concept is not colored in green, you have not completely fulfilled the concepts. The orange color means a concept needs to be named.
        • -
        • To fulfill a list of values (v1, v2, ..., vn), type the whole values separated by coma. For example, to fulfill (1,2,3) in the field Levels of an Experiment plane, type : 1,2,3.
        • -
        • To fulfill a list of list of values, type one by one each list of values as previously described. For example, ((v1,v2), (v3,v4)), type : v1,v2 then "entered", v3,v4 then 'entered". This is the case in the Histogramm distribution.
        • -
        • Files names or graphics impression are given without their extensions. Open TURNS will authomatically provide the .eps, .png and .fig formats.
        • -
        -

        - - -

        -Save and Run your uncertainty study -

        -Once correctly fulfilled, the study can be saved under a specific name chosen by the User, for example "myStudy".
        -Then, two files are authomatically created : -
          -
        • - a myStudy.comm which contains all the information declared in the EFICAS GUI. This file myStudy.comm may be opened once more within EFICAS.
        • -
        • - a myStudy.py which is the corresponding python script. The python script is generated given that each concept has been correctly and entirely fulfilled.
        • -
        -To run your uncertainty analyses, you nedd to type "python myStudy.py" or "python -i myStudy.py" in your shell. All the graphs are created in the repertory where the python session has been launched. -To have more information on how to modify the python script, see the Use Cases Guide. -
        - - - diff --git a/Aide/fichiers_OPENTURNS_STUDY/index.html b/Aide/fichiers_OPENTURNS_STUDY/index.html deleted file mode 100644 index 0d5bf822..00000000 --- a/Aide/fichiers_OPENTURNS_STUDY/index.html +++ /dev/null @@ -1,17 +0,0 @@ - - - - -EFICAS - - - - -

        EFICAS

        -
        - -

        What is the EFICAS Graphical User Interface -

        Definition of the uncertainty study - - - diff --git a/Atmo/README.txt b/Atmo/README.txt deleted file mode 100644 index 8d99a232..00000000 --- a/Atmo/README.txt +++ /dev/null @@ -1,12 +0,0 @@ -pyxbgen -u modele_atmo.xsd -m atmo --write-for-customization -/local/PyXB-1.2.6/scripts/pyxbgen -u modele_atmo_test1.xsd -m atmo1 --write-for-customization -/local/PyXB-1.2.6/scripts/pyxbgen -u modele_atmo_test2.xsd -m atmo2 --write-for-customization -/local/PyXB-1.2.6/scripts/pyxbgen -u modele_atmo_test3.xsd -m atmo3 --write-for-customization -/local/PyXB-1.2.6/scripts/pyxbgen -u modele_atmo_test4.xsd -m atmo4 --write-for-customization - -/local/PyXB-1.2.6/scripts/pyxbgen -u modele_atmo.xsd -m atmo --write-for-customization -/local/PyXB-1.2.6/scripts/pyxbgen -u model_atmo_ext.xsd -m atmo_ext --write-for-customization - - -/local/PyXB-1.2.6/scripts/pyxbgen -u modele_atmo.xsd -m atmo --write-for-customization --default-namespace-public --archive-to-file=model_atmo.wxsd -/local/PyXB-1.2.6/scripts/pyxbgen -u model_atmo_ext.xsd -m atmo_ext --write-for-customization --archive-path=.:+ diff --git a/Atmo/atmo.py b/Atmo/atmo.py deleted file mode 100644 index bd5f0818..00000000 --- a/Atmo/atmo.py +++ /dev/null @@ -1,2 +0,0 @@ -# -*- coding: utf-8 -*- -from raw.atmo import * diff --git a/Atmo/cata-v0.xml b/Atmo/cata-v0.xml deleted file mode 100755 index db5781c4..00000000 --- a/Atmo/cata-v0.xml +++ /dev/null @@ -1,62 +0,0 @@ - - - - - - - - - I - - - knotsmphm/s - TXM - - - manualtypeAtypeB - TXM - - - - I - - - feetmeters - TXM - - Measurement == 'manual' - - - - - open countryurban or forestopen watermanual - TXM - - - - I - - - cm - incm - TXM - - Ground_roughness == 'manual' - - - - - clearpartly cloudedovercloudedmanual - TXM - - - - 10 - I - - Cover_type == 'manual' - - - - - diff --git a/Atmo/cata-v0_test.xml b/Atmo/cata-v0_test.xml deleted file mode 100755 index 6bcffb8b..00000000 --- a/Atmo/cata-v0_test.xml +++ /dev/null @@ -1,60 +0,0 @@ - - - - - - - - - - I - - - knotsmphm/s - TXM - - - manualtypeAtypeB - TXM - - - - I - - - feetmeters - TXM - - - - - - open countryurban or forestopen watermanual - TXM - - - - I - - - cm - incm - TXM - - - - - - clearpartly cloudedovercloudedmanual - TXM - - - - 10 - I - - - - - - diff --git a/Atmo/cata_V0.py b/Atmo/cata_V0.py deleted file mode 100755 index 91f3589a..00000000 --- a/Atmo/cata_V0.py +++ /dev/null @@ -1,85 +0,0 @@ -# -*- coding: utf-8 -*- -# -# Copyright (C) 2012-2013 EDF -# -# This file is part of SALOME HYDRO module. -# -# SALOME HYDRO module is free software: you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation, either version 3 of the License, or -# (at your option) any later version. -# -# SALOME HYDRO module 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 General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with SALOME HYDRO module. If not, see . - -import types -from Accas import * - - -class Tuple: - def __init__(self,ntuple): - self.ntuple=ntuple - - def __convert__(self,valeur): - if type(valeur) == types.StringType: - return None - if len(valeur) != self.ntuple: - return None - return valeur - - def info(self): - return "Tuple de %s elements" % self.ntuple - - __repr__=info - __str__=info - -JdC = JDC_CATA(regles = (UN_PARMI('Atmos',)), - ) - - - -Atmos = PROC( - nom = "Atmos", op = None, - fr = u"Définition d'un cas d'étude Atmosphérique", - ang = u"Definition of study case", - Wind = FACT( statut='f', - Wind_Speed = SIMP(statut = "o", typ = 'I', sug=20), - Speed_Unit = SIMP(statut = "o", typ = 'TXM', - into = ('knots','mph','m/s'), - defaut = 'mph'), - Measurement = SIMP(statut = "o", typ = 'TXM', - into = ( 'Manual', 'TypeA', 'TypeB'),), - b_enter_mesure = BLOC(condition = 'MEASUREMENT == "Manual"', - Value = SIMP(statut = "o", typ = 'I'), - Unit = SIMP(statut = "o", typ = 'TXM', into = ('feet', 'meters')), - ), - ), - Ground = FACT( statut='o', - Ground_Roughness = SIMP(statut='o',typ='TXM', - into=('Open Country', 'Urban Or Forest', 'Open Water', 'Manual') - ), - b_enter_ground = BLOC(condition = 'Ground_Roughness == "Manual"', - Input_Roughness = SIMP(statut = "o", typ = 'I'), - Unit = SIMP(statut = "o", typ = 'TXM', into = ('in', 'cm'), defaut='cm') - ), - - ), - Cover = FACT( statut='o', - Cover_type = SIMP(statut='o',typ='TXM', into=('Manual', 'Clear','Partly Cloudy','Complete Cover',),), - b_enter_cover = BLOC(condition = 'Cover_type == "Manual"', - Cover_Value = SIMP(statut = "o", typ = 'I',val_max=10), - ), - ), - - ZONE = FACT ( statut='o', - max='**', - Distance = SIMP(statut='o',typ='R'), - Resolution = SIMP(statut='o',typ='R'), - Ratio = SIMP(statut='o',typ='R'), - ), -) diff --git a/Atmo/cata_atmo_test1.py b/Atmo/cata_atmo_test1.py deleted file mode 100755 index e846e382..00000000 --- a/Atmo/cata_atmo_test1.py +++ /dev/null @@ -1,43 +0,0 @@ -# -*- coding: utf-8 -*- -# -# Copyright (C) 2012-2013 EDF -# -# This file is part of SALOME HYDRO module. -# -# SALOME HYDRO module is free software: you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation, either version 3 of the License, or -# (at your option) any later version. -# -# SALOME HYDRO module 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 General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with SALOME HYDRO module. If not, see . - -import types -from Accas import * - - - -JdC = JDC_CATA(code='Atmos',regles = (UN_PARMI('Wind',)), - ) - - -Wind = PROC( nom="Wind", op = None, - Wind_Speed1 = SIMP(statut = "o", typ = 'I'), - Mesure1 = FACT( statut='f', - Value1 = SIMP(statut = "o", typ = 'I'), - Unit1 = SIMP(statut = "o", typ = 'I'), - ), - B_enter_mesure = BLOC(condition = 'Wind_Speed1 == 1', - Wind_Speed = SIMP(statut = "o", typ = 'I'), - Mesure = FACT( statut='f', max='**', - Value = SIMP(statut = "o", typ = 'I'), - Unit = SIMP(statut = "o", typ = 'I'), - ), - ), -) - diff --git a/Atmo/cata_modele_subst.xml b/Atmo/cata_modele_subst.xml deleted file mode 100755 index bdca1a91..00000000 --- a/Atmo/cata_modele_subst.xml +++ /dev/null @@ -1,39 +0,0 @@ - - - - - - - - - - I - - - - I - - - feetmeters - TXM - - - - - I - - - - I - - - feetmeters - TXM - - - Wind_Speed == 1 - - - - - diff --git a/Atmo/cata_reduit.py b/Atmo/cata_reduit.py deleted file mode 100755 index 7c2ec736..00000000 --- a/Atmo/cata_reduit.py +++ /dev/null @@ -1,35 +0,0 @@ -# -*- coding: utf-8 -*- -# -# Copyright (C) 2012-2013 EDF -# -# This file is part of SALOME HYDRO module. -# -# SALOME HYDRO module is free software: you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation, either version 3 of the License, or -# (at your option) any later version. -# -# SALOME HYDRO module 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 General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with SALOME HYDRO module. If not, see . - -import types -from Accas import * - - - -JdC = JDC_CATA(regles = (UN_PARMI('Atmos',)), - ) - - - -Atmos = PROC( - nom = "Atmos", op = None, - fr = u"Définition d'un cas d'étude Atmosphérique", - ang = u"Definition of study case", - Wind_Speed = SIMP(statut = "o", typ = 'I'), -) diff --git a/Atmo/cata_test_fact.py b/Atmo/cata_test_fact.py deleted file mode 100755 index 42de4a7e..00000000 --- a/Atmo/cata_test_fact.py +++ /dev/null @@ -1,41 +0,0 @@ -# -*- coding: utf-8 -*- -# -# Copyright (C) 2012-2013 EDF -# -# This file is part of SALOME HYDRO module. -# -# SALOME HYDRO module is free software: you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation, either version 3 of the License, or -# (at your option) any later version. -# -# SALOME HYDRO module 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 General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with SALOME HYDRO module. If not, see . - -import types -from Accas import * - - - -JdC = JDC_CATA(code='Atmos',regles = (UN_PARMI('Wind',)), - ) - - -Wind = PROC( nom="Wind", op = None, - Niveau1SIMP = SIMP(statut = "o", typ = 'I'), - Niveau1Fact = FACT( statut='o', max=4, - Niveau2SIMP = SIMP(statut = "o", typ = 'I'), - Niveau2Fact = FACT( statut='o', max=4, - Niveau3SIMP = SIMP(statut = "o", typ = 'I'), - Niveau3Fact = FACT(statut = "o", - Niveau4SIMP = SIMP(statut = "o", typ = 'I'), - ), - ), - ), -) - diff --git a/Atmo/cata_test_fact_genere.xsd b/Atmo/cata_test_fact_genere.xsd deleted file mode 100644 index 06a1f004..00000000 --- a/Atmo/cata_test_fact_genere.xsd +++ /dev/null @@ -1,43 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/Atmo/cata_test_types.py b/Atmo/cata_test_types.py deleted file mode 100755 index d0f75fe8..00000000 --- a/Atmo/cata_test_types.py +++ /dev/null @@ -1,77 +0,0 @@ -# -*- coding: utf-8 -*- -# -# Copyright (C) 2012-2013 EDF -# -# This file is part of SALOME HYDRO module. -# -# SALOME HYDRO module is free software: you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation, either version 3 of the License, or -# (at your option) any later version. -# -# SALOME HYDRO module 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 General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with SALOME HYDRO module. If not, see . - -import types -from Accas import * - - - -JdC = JDC_CATA(code='Atmos',regles = (UN_PARMI('Wind',)), - ) -Wind = PROC( nom="Wind", op = None, - FACTA = FACT( statut='o', - VinAetBnotC = SIMP(statut = "o", typ = 'I'), - SousFactInAetBnotC = FACT( statut='o', - S1 = SIMP(statut = "o", typ = 'I'), - S2 = SIMP(statut = "o", typ = 'I'), - ), - ), - FACTB = FACT( statut='o', - VinAetBnotC = SIMP(statut = "o", typ = 'I'), - SousFactInAetBnotC = FACT( statut='o', - S1 = SIMP(statut = "o", typ = 'I'), - S2 = SIMP(statut = "o", typ = 'I'), - ), - ), - FACTC = FACT( statut='o', - VinAetBnotC = SIMP(statut = "o", typ = 'R'), - SousFactInAetBnotC = FACT( statut='o', - S1 = SIMP(statut = "o", typ = 'I'), - S2 = SIMP(statut = "o", typ = 'R'), - ), - ), - FACTD = FACT( statut='o', - # identique FACTC - # donc pas de creation de Type mais utilisation de ceux de FACTC - VinAetBnotC = SIMP(statut = "o", typ = 'R'), - SousFactInAetBnotC = FACT( statut='o', - S1 = SIMP(statut = "o", typ = 'I'), - S2 = SIMP(statut = "o", typ = 'R'), - ), - ), - FACTE = FACT( statut='o', - S3 = SIMP(statut = "o", typ = 'I'), - BinEetFNotG = BLOC(condition="S3 == 0", - S4 = SIMP(statut = "o", typ = 'I'), - ), - ), - FACTF = FACT( statut='o', - S3 = SIMP(statut = "o", typ = 'I'), - BinEetFNotG = BLOC(condition="S3 == 0", - S4 = SIMP(statut = "o", typ = 'I'), - ), - ), - FACTG = FACT( statut='o', - S3 = SIMP(statut = "o", typ = 'I'), - BinEetFNotG = BLOC(condition="S3 == 1", - S4 = SIMP(statut = "o", typ = 'I'), - ), - ), -) - diff --git a/Atmo/configuration_Atmo.py b/Atmo/configuration_Atmo.py deleted file mode 100644 index 6a8cc458..00000000 --- a/Atmo/configuration_Atmo.py +++ /dev/null @@ -1,43 +0,0 @@ -# -*- coding: utf-8 -*- -# maConfiguration MANAGEMENT OF EDF VERSION -# ====================================================================== -# COPYRIGHT (C) 1991 - 2002 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# -# -# ====================================================================== -""" - Ce module sert pour charger les paramètres de configuration d'EFICAS -""" -# Modules Python -from InterfaceQT4 import configuration -import os - - -class CONFIG(configuration.configBase): - - #----------------------------------- - def __init__(self,appli,repIni): - #----------------------------------- - - self.labels_user=['catalogues','lang'] - self.labels_eficas=['lang','rep_cata','catalogues'] - self.afficheOptionnelVide=True - configuration.configBase.__init__(self,appli,repIni) - - -def make_config(appli,rep): - return CONFIG(appli,rep) - diff --git a/Atmo/creeAtmo.py b/Atmo/creeAtmo.py deleted file mode 100644 index 9301c918..00000000 --- a/Atmo/creeAtmo.py +++ /dev/null @@ -1,3 +0,0 @@ -import atmo_reduit -monElt=atmo_reduit.Wind_Speed(3) -monAtmo=atmo_reduit.Atmos(monElt) diff --git a/Atmo/cree_essai1_fact_xml.py b/Atmo/cree_essai1_fact_xml.py deleted file mode 100644 index 0d51a13c..00000000 --- a/Atmo/cree_essai1_fact_xml.py +++ /dev/null @@ -1,23 +0,0 @@ -# -*- coding: utf-8 -*- -import raw.cata_genere_fact as mdm -s1=mdm.T_Niveau1SIMP(1) -s2=mdm.T_Niveau2SIMP(2) -s31=mdm.T_Niveau3SIMP(3) -s4=mdm.T_Niveau4SIMP(4) -s32=mdm.T_Niveau3SIMP(5) -s6=mdm.T_Niveau4SIMP(6) - -f31=mdm.T_Niveau3Fact(s4) -f32=mdm.T_Niveau3Fact(s6) - -#f2=mdm.T_Niveau2Fact(s31,f31) -f2=mdm.T_Niveau2Fact(s32,f32) -# ligne suivante nonok ? -#f2=mdm.T_Niveau2Fact(s31,f31,s32,f32) -#f2=mdm.T_Niveau2Fact(s31) # ok --> s obligatoire et f facultatif -#f2=mdm.T_Niveau2Fact(f31) # nok -f1=mdm.T_Niveau1Fact(s2,f2) -wind=mdm.T_Wind(s1,f1) -jdd=mdm.Atmos(wind) -#print (jdd.toxml()) -print(jdd.toDOM().toprettyxml()) diff --git a/Atmo/essai1_fact.xml b/Atmo/essai1_fact.xml deleted file mode 100644 index 2266d6ba..00000000 --- a/Atmo/essai1_fact.xml +++ /dev/null @@ -1,16 +0,0 @@ - - - - 1 - - 2 - - 5 - - 6 - - - - - - diff --git a/Atmo/essai2_fact.xml b/Atmo/essai2_fact.xml deleted file mode 100644 index 3d771100..00000000 --- a/Atmo/essai2_fact.xml +++ /dev/null @@ -1,20 +0,0 @@ - - - - 1 - - 2 - - 3 - - 4 - - 5 - - 6 - - - - - - diff --git a/Atmo/ex_jdc.xml b/Atmo/ex_jdc.xml deleted file mode 100755 index e0743ea4..00000000 --- a/Atmo/ex_jdc.xml +++ /dev/null @@ -1,23 +0,0 @@ - - - - - 20 - mph - manual - - 10 - meters - - - - manual - - 30 - cm - - - - clear - - diff --git a/Atmo/ex_jdc_bis.xml b/Atmo/ex_jdc_bis.xml deleted file mode 100644 index 0813afde..00000000 --- a/Atmo/ex_jdc_bis.xml +++ /dev/null @@ -1 +0,0 @@ -50mphmanual10metersmanual30cmclear \ No newline at end of file diff --git a/Atmo/lire_ex.py b/Atmo/lire_ex.py deleted file mode 100644 index 47abf2c6..00000000 --- a/Atmo/lire_ex.py +++ /dev/null @@ -1,16 +0,0 @@ -from atmo import * - -myatmo=CreateFromDocument(open('./ex_jdc.xml').read()) -myatmo.toxml() - -print myatmo.toDOM().toprettyxml() -print myatmo.Wind.Wind_Speed - -myWind=myatmo.Wind -myWind.Wind_Speed=50 -myatmo.Wind=myWind -print myatmo.toDOM().toprettyxml() - -file=open('./ex_jdc_bis.xml','w');file.write(myatmo.toxml());file.close() -myatmobis=CreateFromDocument(open('./ex_jdc_bis.xml').read()) -print myatmobis.toDOM().toprettyxml() diff --git a/Atmo/modele_atmo.xsd b/Atmo/modele_atmo.xsd deleted file mode 100755 index 1678dc99..00000000 --- a/Atmo/modele_atmo.xsd +++ /dev/null @@ -1,70 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/Atmo/modele_atmo_reduit.xsd b/Atmo/modele_atmo_reduit.xsd deleted file mode 100755 index e6446526..00000000 --- a/Atmo/modele_atmo_reduit.xsd +++ /dev/null @@ -1,13 +0,0 @@ - - - - - - - - - - - - - diff --git a/Atmo/modele_atmo_test1.py b/Atmo/modele_atmo_test1.py deleted file mode 100644 index 15f7322c..00000000 --- a/Atmo/modele_atmo_test1.py +++ /dev/null @@ -1,26 +0,0 @@ -import raw.atmo1 as mdm - -my_Wind_Speed=mdm.T_Wind_Speed(0) -my_Value=mdm.T_Value(0) -my_Unit=mdm.T_Unit(0) -my_Mesure=mdm.T_Mesure(my_Value,my_Unit) -my_B_enter_mesure=mdm.T_B_enter_mesure(my_Wind_Speed,my_Mesure) -my_Wind_Speed1=mdm.T_Wind_Speed1(1) -my_Value1=mdm.T_Value1(1) -my_Unit1=mdm.T_Unit1(1) -my_Mesure1=mdm.T_Mesure1(my_Value1,my_Unit1) - -my_Wind=mdm.T_Wind(my_Wind_Speed1,my_Mesure1,my_B_enter_mesure) -my_Atmos=mdm.Atmos(my_Wind) -xmls=my_Atmos.toxml() -xmls=my_Atmos.toDOM().toprettyxml() - -open('modele_atmo_test1.xml', 'w').write(xmls) - -# ou -# liste=[my_Value1,my_Unit1] -# my_Mesure1=mdm.T_Mesure1(*liste) - -# my_Wind=mdm.T_Wind(my_Wind_Speed1,my_Mesure1,my_B_enter_mesure) -# my_Atmos=mdm.Atmos(my_Wind) -# my_Atmos.toxml() diff --git a/Atmo/modele_atmo_test1.xsd b/Atmo/modele_atmo_test1.xsd deleted file mode 100755 index 65e701a7..00000000 --- a/Atmo/modele_atmo_test1.xsd +++ /dev/null @@ -1,62 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/Atmo/modele_atmo_test2.py b/Atmo/modele_atmo_test2.py deleted file mode 100644 index 79108459..00000000 --- a/Atmo/modele_atmo_test2.py +++ /dev/null @@ -1,27 +0,0 @@ -import raw.atmo2 as mdm - -my_Wind_Speed=mdm.T_Wind_Speed(0) -my_Value=mdm.T_Value(0) -my_Unit=mdm.T_Unit(0) -my_Mesure=mdm.T_Mesure(my_Value,my_Unit) -# my_B_enter_mesure=mdm.T_B_enter_mesure(my_Wind_Speed,my_Mesure) - -my_Wind_Speed1=mdm.T_Wind_Speed1(1) -my_Value1=mdm.T_Value1(1) -my_Unit1=mdm.T_Unit1(1) -my_Mesure1=mdm.T_Mesure1(my_Value1,my_Unit1) - -# my_Wind=mdm.T_Wind(my_Wind_Speed1,my_Mesure1) -# my_Wind.append(my_Wind_Speed) -# my_Wind.append(my_Mesure) -# ou -# my_Wind.extend([my_Wind_Speed,my_Mesure]) -# ou -my_Wind=mdm.T_Wind(my_Wind_Speed1,my_Mesure1,my_Wind_Speed,my_Mesure) - - -my_Atmos=mdm.Atmos(my_Wind) -xmls=my_Atmos.toxml() -xmls=my_Atmos.toDOM().toprettyxml() - -open('modele_atmo_test2.xml', 'w').write(xmls) diff --git a/Atmo/modele_atmo_test2.xsd b/Atmo/modele_atmo_test2.xsd deleted file mode 100755 index eac7c63a..00000000 --- a/Atmo/modele_atmo_test2.xsd +++ /dev/null @@ -1,59 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/Atmo/modele_atmo_test3.py b/Atmo/modele_atmo_test3.py deleted file mode 100644 index ad37948b..00000000 --- a/Atmo/modele_atmo_test3.py +++ /dev/null @@ -1,27 +0,0 @@ -import raw.atmo3 as mdm - -my_Wind_Speed=mdm.T_Wind_Speed(0) -my_Value=mdm.T_Value(0) -my_Unit=mdm.T_Unit(0) -my_Mesure=mdm.T_Mesure(my_Value,my_Unit) -#on peut instancier l'élément global directement -my_B_enter_mesure=mdm.B_enter_mesure(my_Wind_Speed,my_Mesure) -my_Wind_Speed1=mdm.T_Wind_Speed1(1) -my_Value1=mdm.T_Value1(1) -my_Unit1=mdm.T_Unit1(1) -my_Mesure1=mdm.T_Mesure1(my_Value1,my_Unit1) - -my_Wind=mdm.T_Wind(my_Wind_Speed1,my_Mesure1,my_B_enter_mesure) -my_Atmos=mdm.Atmos(my_Wind) -xmls=my_Atmos.toxml() -xmls=my_Atmos.toDOM().toprettyxml() - -open('modele_atmo_test3.xml', 'w').write(xmls) - -# ou -# liste=[my_Value1,my_Unit1] -# my_Mesure1=mdm.T_Mesure1(*liste) - -# my_Wind=mdm.T_Wind(my_Wind_Speed1,my_Mesure1,my_B_enter_mesure) -# my_Atmos=mdm.Atmos(my_Wind) -# my_Atmos.toxml() diff --git a/Atmo/modele_atmo_test3.xsd b/Atmo/modele_atmo_test3.xsd deleted file mode 100755 index b79cdcf2..00000000 --- a/Atmo/modele_atmo_test3.xsd +++ /dev/null @@ -1,60 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/Atmo/modele_atmo_test4.py b/Atmo/modele_atmo_test4.py deleted file mode 100644 index 54b99be3..00000000 --- a/Atmo/modele_atmo_test4.py +++ /dev/null @@ -1,37 +0,0 @@ -import raw.atmo4 as mdm - -my_Wind_Speed=mdm.T_Wind_Speed(0) -my_Value=mdm.T_Value(0) -my_Unit=mdm.T_Unit(0) -my_Mesure=mdm.T_Mesure(my_Value,my_Unit) -# my_B_enter_mesure=mdm.T_B_enter_mesure(my_Wind_Speed,my_Mesure) - -my_Wind_Speed1=mdm.T_Wind_Speed1(1) -my_Value1=mdm.T_Value1(1) -my_Unit1=mdm.T_Unit1(1) -my_Mesure1=mdm.T_Mesure1(my_Value1,my_Unit1) - -# my_Wind=mdm.T_Wind(my_Wind_Speed1,my_Mesure1) -# my_Wind.append(my_Wind_Speed) -# my_Wind.append(my_Mesure) -# ou -# my_Wind.extend([my_Wind_Speed,my_Mesure]) -# ou -my_Wind=mdm.T_Wind(my_Wind_Speed1,my_Mesure1,my_Wind_Speed,my_Mesure) - - -my_Atmos=mdm.Atmos(my_Wind) -xmls=my_Atmos.toxml() -xmls=my_Atmos.toDOM().toprettyxml() - -open('modele_atmo_test4.xml', 'w').write(xmls) - -import pyxb -class T_Wind_Speed2 (pyxb.binding.datatypes.int): - - """An atomic simple type.""" - - _ExpandedName = pyxb.namespace.ExpandedName(mdm.Namespace, u'T_Wind_Speed2') - _XSDLocation = pyxb.utils.utility.Location('', 0, 0) - _Documentation = None -mdm.Namespace.addCategoryObject('typeBinding', u'T_Wind_Speed2', T_Wind_Speed2) diff --git a/Atmo/modele_atmo_test4.xsd b/Atmo/modele_atmo_test4.xsd deleted file mode 100755 index 87fa0e38..00000000 --- a/Atmo/modele_atmo_test4.xsd +++ /dev/null @@ -1,57 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/Atmo/modele_atmo_test_fact.py b/Atmo/modele_atmo_test_fact.py deleted file mode 100755 index d5fa7f25..00000000 --- a/Atmo/modele_atmo_test_fact.py +++ /dev/null @@ -1,33 +0,0 @@ -import raw.cata_test_fact as mdm -import pyxb -pyxb.GlobalValidationConfig._setContentInfluencesGeneration(pyxb.GlobalValidationConfig.ALWAYS) -pyxb.GlobalValidationConfig._setInvalidElementInContent(pyxb.GlobalValidationConfig.RAISE_EXCEPTION) -pyxb.GlobalValidationConfig._setOrphanElementInContent(pyxb.GlobalValidationConfig.RAISE_EXCEPTION) - -s1=mdm.T_Niveau1SIMP(1) -s2=mdm.T_Niveau2SIMP(2) -s3=mdm.T_Niveau3SIMP(3) -s4=mdm.T_Niveau4SIMP(4) -s5=mdm.T_Niveau3SIMP(5) -s6=mdm.T_Niveau4SIMP(6) - -monF1Niveau3=mdm.T_Niveau3Fact(s4) -monF2Niveau3=mdm.T_Niveau3Fact(s6) -#print monF1Niveau3, monF2Niveau3 - -monF1Niveau2=mdm.T_Niveau2Fact(s3,monF1Niveau3) -#monF1Niveau2.Niveau3Fact=(monF1Niveau3,monF2Niveau3) -#monF1Niveau2.append(s4) -#monF1Niveau2.append(monF2Niveau3) -#monF1Niveau2=mdm.T_Niveau2Fact(s3,monF1Niveau3,s4,monF2Niveau3) - -#monF1Niveau2=mdm.T_Niveau2Fact() -print (dir(monF1Niveau2)) -print monF1Niveau2.Niveau3Fact - - - -#my_Atmos=mdm.Atmos(my_Wind) -#xmls=my_Atmos.toxml() -#xmls=my_Atmos.toDOM().toprettyxml() - diff --git a/Atmo/modele_subst.xsd b/Atmo/modele_subst.xsd deleted file mode 100755 index 01841afb..00000000 --- a/Atmo/modele_subst.xsd +++ /dev/null @@ -1,58 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/Atmo/modele_subst_genere_parEficas.xsd b/Atmo/modele_subst_genere_parEficas.xsd deleted file mode 100644 index b5467ffb..00000000 --- a/Atmo/modele_subst_genere_parEficas.xsd +++ /dev/null @@ -1,62 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/Atmo/prefs.py b/Atmo/prefs.py deleted file mode 100644 index fd87ecf9..00000000 --- a/Atmo/prefs.py +++ /dev/null @@ -1,22 +0,0 @@ -# Copyright (C) 2007-2012 EDF R&D -# -# 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 -# -code="Atmo" -import sys, os -if os.path.dirname(os.path.abspath(__file__)) not in sys.path : - sys.path.insert(0,os.path.dirname(os.path.abspath(__file__))) diff --git a/Atmo/prefs_Atmo.py b/Atmo/prefs_Atmo.py deleted file mode 100644 index 12f59438..00000000 --- a/Atmo/prefs_Atmo.py +++ /dev/null @@ -1,47 +0,0 @@ -# -*- coding: utf-8 -*- -# maConfiguration MANAGEMENT OF EDF VERSION -# ====================================================================== -# COPYRIGHT (C) 1991 - 2002 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# -# -# ====================================================================== - -import os,sys -# repIni sert a localiser le fichier editeur.ini -# Obligatoire -repIni=os.path.dirname(os.path.abspath(__file__)) -INSTALLDIR=os.path.join(repIni,'..') -sys.path[:0]=[INSTALLDIR] - - -# lang indique la langue utilisee pour les chaines d'aide : fr ou ang -lang='fr' - -# Codage des strings qui accepte les accents (en remplacement de 'ascii') -encoding='iso-8859-1' - -# -#typeDeCata='XML' -catalogues=( - ('Atmo','V2017',os.path.join(repIni,'cata_reduit.py'),'python','python'), -) -nombreDeBoutonParLigne=4 -simpleClic=True -closeFrameRechercheCommande=True -boutonDsMenuBar=False -closeArbre=True -afficheListesPliees=False -afficheCommandesPliees = False diff --git a/Atmo/properties.py b/Atmo/properties.py deleted file mode 100644 index 1d328a46..00000000 --- a/Atmo/properties.py +++ /dev/null @@ -1,24 +0,0 @@ -#@ MODIF properties Accas DATE 11/06/2008 AUTEUR aster M.ADMINISTRATEUR -# RESPONSABLE D6BHHHH J-P.LEFEBVRE -# ====================================================================== -# COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# IDENTIFICATION DU GESTIONNAIRE DE COMMANDE ACCAS A PARTIR -# DE LA VERSION DU CODE_ASTER ASSOCIE -#---------------------------------------------------------------------- -version = "1.2" -date = "25/05/2010" -exploit = False diff --git a/Atmo/qtEficasAtmo.py b/Atmo/qtEficasAtmo.py deleted file mode 100755 index 91140d97..00000000 --- a/Atmo/qtEficasAtmo.py +++ /dev/null @@ -1,38 +0,0 @@ -#!/usr/bin/env python -# -*- coding: utf-8 -*- -# Copyright (C) 2007-2013 EDF R&D -# -# 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 -# -""" - Ce module sert a lancer EFICAS configure pour MAP -""" -# Modules Python -# Modules Eficas -import prefs -name='prefs_'+prefs.code -__import__(name) - -import sys -reload(sys) -sys.setdefaultencoding('latin1') -import os -sys.path.append(os.path.join(os.path.abspath(os.path.dirname(__file__)),'..')) - -import prefs -from InterfaceQT4 import eficas_go -eficas_go.lanceEficas(code=prefs.code) diff --git a/CMakeLists.txt b/CMakeLists.txt deleted file mode 100644 index 164af95d..00000000 --- a/CMakeLists.txt +++ /dev/null @@ -1,157 +0,0 @@ -# -*- coding: utf-8 -*- -# CONFIGURATION MANAGEMENT OF EDF VERSION -# ====================================================================== -# COPYRIGHT (C) 1991 - 2002 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# -# -# ====================================================================== - -cmake_minimum_required ( VERSION 2.8 ) - -project ( Eficas CXX C ) - -# Definition du chemin d'acces aux modules additionnels -set ( CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} "${CMAKE_SOURCE_DIR}/CMakeModules" ) - -# Detection de Python -find_package ( PythonInterp REQUIRED ) -if (PYTHONINTERP_FOUND) - string ( RANDOM tmpPyScript ) - set ( tmpPyScript "${tmpPyScript}.py" ) - file ( WRITE ${tmpPyScript} -"# Automaticaly generated by CMake. Do NOT edit. Changes will be lost -import sys -print ('%d.%d' % ( sys.version_info[0], sys.version_info[1] )) -" ) - get_source_file_property ( PYSCRIPT_LOC ${tmpPyScript} LOCATION ) - execute_process ( COMMAND ${PYTHON_EXECUTABLE} ${PYSCRIPT_LOC} - OUTPUT_VARIABLE PYTHON_VERSION - #ERROR_QUIET - OUTPUT_STRIP_TRAILING_WHITESPACE ) - file ( REMOVE ${tmpPyScript} ) -endif (PYTHONINTERP_FOUND) -message ( STATUS "Using Python version ${PYTHON_VERSION}" ) -# Detection de QT5 -find_package ( Qt5 COMPONENTS Core REQUIRED ) - -FIND_PACKAGE(Qt5LinguistTools) -GET_TARGET_PROPERTY(QT_LRELEASE_EXECUTABLE Qt5::lrelease LOCATION) -MARK_AS_ADVANCED(QT_LRELEASE_EXECUTABLE) - -# Detection de PyQt5 -if (NOT PYQT5_FOUND) - execute_process ( COMMAND ${PYTHON_EXECUTABLE} -c "\"import PyQt5\"" - RESULT_VARIABLE _res - OUTPUT_VARIABLE _trashout - ERROR_VARIABLE _trasherr - ) - if (NOT _res) - message ( STATUS "Looking for Python package PyQt5 - found" ) - set ( PYQT5_FOUND 1 CACHE INTERNAL "True if Python package PyQt5 is here" ) - else (NOT _res) - message ( STATUS "Looking for Python package PyQt5 - not found" ) - set ( PYQT5_FOUND 0 CACHE INTERNAL "True if Python package PyQt5 is here" ) - endif (NOT _res) -endif (NOT PYQT5_FOUND) - -if (NOT PYQT5_FOUND) - message ( FATAL_ERROR "Python package PyQt5 is REQUIRED" ) -endif (NOT PYQT5_FOUND) - -# Detection de PYUIC5 -find_program ( PYUIC5 NAMES pyuic5 - DOC "Path to the pyuic5 compilation tool" - ) -if (NOT PYUIC5) - message ( FATAL_ERROR "pyuic5 tool is REQUIRED" ) -endif (NOT PYUIC5) - -# Definition des options de CMake -option ( WITH_ALL_PACKAGES "Install all package files" OFF ) -option ( WITH_CARMEL "Install CARMEL files" OFF ) -option ( WITH_SEP "Install SEP files" OFF ) -option ( WITH_ZCRACKS "Install ZCRACKS files" OFF ) -option ( WITH_TELEMAC_CATA "Install TELEMAC files" OFF ) -option ( IN_SALOME_CONTEXT "Configure Eficas for use in Salome" OFF ) - -set ( _OPTIONLIST - WITH_CARMEL - WITH_TELEMAC_CATA - ) - -if (WITH_ALL_PACKAGES) - foreach ( _opt ${_OPTIONLIST} ) - set ( ${_opt} ON ) - endforeach ( _opt ) -endif (WITH_ALL_PACKAGES) - - -# Verification: au moins une option doit etre selectionnee -set ( _VALIDOPT FALSE ) -foreach ( _opt ${_OPTIONLIST} ) - if ( ${_opt} ) - set ( _VALIDOPT TRUE ) - string ( REPLACE WITH_ "" _opt2 ${_opt} ) - message ( STATUS "Will install package ${_opt2}" ) - endif ( ${_opt} ) -endforeach ( _opt ) -if ( NOT ${_VALIDOPT} ) - message ( FATAL_ERROR "At least one option within ${_OPTIONLIST} must be selected" ) -endif ( NOT ${_VALIDOPT} ) - - - -# Parcours recursif des sous-repertoires -add_subdirectory ( Accas ) -add_subdirectory ( Aide ) -add_subdirectory ( Editeur ) -add_subdirectory ( Efi2Xsd ) -add_subdirectory ( Extensions ) -add_subdirectory ( Ihm ) -install ( DIRECTORY InterfaceQT4 DESTINATION ${CMAKE_INSTALL_PREFIX} ) -add_subdirectory ( Noyau ) -add_subdirectory ( UiQT5 ) -add_subdirectory ( Validation ) -add_subdirectory ( convert ) -add_subdirectory ( generator ) -add_subdirectory ( Traducteur ) - - -# Installation des fichiers : CARMEL -if (WITH_CARMEL) - add_subdirectory ( Carmel3D ) - add_subdirectory ( CarmelCND ) - add_subdirectory ( CarmelCS ) -endif (WITH_CARMEL) - - -# Installation des fichiers : ZCracks -if (WITH_ZCRACKS) - add_subdirectory ( ZCracks ) -endif (WITH_ZCRACKS) - -# Installation des fichiers : Telemac -if (WITH_TELEMAC_CATA) - add_subdirectory ( Telemac ) -endif (WITH_TELEMAC_CATA) - -if (BUILD_DOC) - add_subdirectory ( Doc ) -endif (BUILD_DOC) - -### Local Variables: -### mode: cmake -### End: diff --git a/CMakeModules/FindOpenTURNS.cmake b/CMakeModules/FindOpenTURNS.cmake deleted file mode 100644 index c16a56e6..00000000 --- a/CMakeModules/FindOpenTURNS.cmake +++ /dev/null @@ -1,235 +0,0 @@ -# - Try to find OpenTURNS -# Once done this will define -# -# OpenTURNS_FOUND - system has OT -# OpenTURNS_INCLUDE_DIR - the OT include directory -# OpenTURNS_INCLUDE_DIRS - the OT include directory and dependencies include directories -# OpenTURNS_LIBRARY - Where to find the OT library -# OpenTURNS_LIBRARIES - Link these to use OT -# OpenTURNS_WRAPPER_DIR - Wrappers directory -# OpenTURNS_WRAPPER_DEFINITIONS - Compiler switches required for using OT wrapper -# OpenTURNS_MODULE_DIR - OT module directory -# OpenTURNS_MODULE_DEFINITIONS - Compiler switches required for using OT module -# OpenTURNS_SWIG_INCLUDE_DIR - the OT include directory to swig interface -# -# Copyright (c) 2009 Mathieu Lapointe -# Copyright (c) 2010 Julien Schueller -# -# Redistribution and use is allowed according to the terms of the New -# BSD license. -# For details see the accompanying COPYING-CMAKE-SCRIPTS file. -# - -include (CheckFunctionExists) -include (CheckIncludeFile) -include (CheckIncludeFileCXX) -include (FindPackageHandleStandardArgs) - -# check dependencies -find_package(LibXml2 2.6.27) -find_package(PythonLibs ${PYTHON_VERSION}) - -# test if variables are not already in cache -if (NOT (OpenTURNS_INCLUDE_DIR - AND OpenTURNS_SWIG_INCLUDE_DIR - AND OpenTURNS_INCLUDE_DIRS - AND OpenTURNS_LIBRARY - AND OpenTURNS_LIBRARIES - AND OpenTURNS_WRAPPER_DIR - AND OpenTURNS_PYTHON_MODULE_DIR - AND OpenTURNS_MODULE_DIR)) - - # set include dir - if (NOT OpenTURNS_INCLUDE_DIR) - find_path (OpenTURNS_INCLUDE_DIR - NAMES - OT.hxx - HINTS - ${OPENTURNS_DIR} - /usr - /usr/local - /opt - PATH_SUFFIXES - include/openturns - DOC - "OpenTURNS include directory" - ) - endif () - - # set swig include dir - if (NOT OpenTURNS_SWIG_INCLUDE_DIR) - set(OpenTURNS_SWIG_INCLUDE_DIR "${OpenTURNS_INCLUDE_DIR}/swig") - endif () - - # dependencies includes - if (NOT OpenTURNS_INCLUDE_DIRS) - set (OpenTURNS_INCLUDE_DIRS ${OpenTURNS_INCLUDE_DIR}) - list (APPEND OpenTURNS_INCLUDE_DIRS ${LIBXML2_INCLUDE_DIR}) - list (APPEND OpenTURNS_INCLUDE_DIRS ${PYTHON_INCLUDE_DIRS}) - endif () - - # check for library directory - if (NOT OpenTURNS_LIBRARY) - find_library (OpenTURNS_LIBRARY - NAMES - OT - HINTS - ${OPENTURNS_DIR} - /usr - /usr/local - /opt - PATH_SUFFIXES - lib/openturns - DOC - "OpenTURNS library location" - ) - endif () - - # find dependent libraries - if (NOT OpenTURNS_LIBRARIES) - set (OpenTURNS_LIBRARIES ${OpenTURNS_LIBRARY} ${LIBXML2_LIBRARIES} ${PYTHON_LIBRARIES}) - list (APPEND OpenTURNS_LIBRARIES ${LIBXML2_LIBRARIES}) - list (APPEND OpenTURNS_LIBRARIES ${PYTHON_LIBRARIES}) - endif () - - # retrieve path to lib - get_filename_component (OpenTURNS_LIBRARY_PATH ${OpenTURNS_LIBRARY} PATH) - - # retrieve install path - set (OpenTURNS_INSTALL_PATH "${OpenTURNS_LIBRARY_PATH}/../..") - - # find wrappers dir - if (NOT OpenTURNS_WRAPPER_DIR) - find_path (OpenTURNS_WRAPPER_DIR - NAMES - wrapper.xml wrapper.dtd - HINTS - ${OPENTURNS_DIR} - ${OpenTURNS_INSTALL_PATH} - /usr - /usr/local - /opt - PATH_SUFFIXES - share/openturns/wrappers - DOC - "OpenTURNS wrappers location" - ) - endif () - - # set wrapper definitions - if (NOT OpenTURNS_WRAPPER_DEFINITIONS) - set(OpenTURNS_WRAPPER_DEFINITIONS) - check_include_file_cxx (pthread.h HAVE_PTHREAD_H) - if (HAVE_PTHREAD_H) - list (APPEND OpenTURNS_WRAPPER_DEFINITIONS -DHAVE_PTHREAD_H) - endif () - endif () - - # find python module dir - if (NOT OpenTURNS_PYTHON_MODULE_DIR) - find_path (OpenTURNS_PYTHON_MODULE_DIR - NAMES - openturns.pth - HINTS - ${OPENTURNS_DIR} - ${OpenTURNS_INSTALL_PATH} - /usr - /usr/local - /opt - PATH_SUFFIXES - lib/python${PYTHON_VERSION}/site-packages - DOC - "OpenTURNS python module location" - ) - endif () - - - # find module directory - if (NOT OpenTURNS_MODULE_DIR) - set (OpenTURNS_MODULE_DIR - ${OpenTURNS_LIBRARY_PATH}/module - ) - endif () - - # set module definitions - if (NOT OpenTURNS_MODULE_DEFINITIONS) - set (OpenTURNS_MODULE_DEFINITIONS) - - # check for STDC_HEADERS - check_include_file (stdlib.h HAVE_STDLIB_H) - check_include_file (stdarg.h HAVE_STDARG_H) - check_include_file (string.h HAVE_STRING_H) - check_include_file (float.h HAVE_FLOAT_H) - check_function_exists (memchr HAVE_MEMCHR) - check_function_exists (free HAVE_FREE) - check_include_file (ctype.h HAVE_CTYPE_H) - if(HAVE_STDLIB_H AND HAVE_STDARG_H AND HAVE_STRING_H AND HAVE_FLOAT_H AND HAVE_MEMCHR AND HAVE_FREE AND HAVE_CTYPE_H) - list (APPEND OpenTURNS_MODULE_DEFINITIONS -DSTDC_HEADERS_H=1) - else () - list (APPEND OpenTURNS_MODULE_DEFINITIONS -DSTDC_HEADERS_H=0) - endif () - - # this macro checks a header and defines the corresponding macro - macro(check_include_files_define_macro header_file) - # get macro name from header_file - string(TOUPPER ${header_file} macro_name) - string(REGEX REPLACE "[/.]" "_" macro_name ${macro_name}) - set(macro_name HAVE_${macro_name}) - # check for header - check_include_file(${header_file} ${macro_name}) - # define macro - if(${macro_name}) - list (APPEND OpenTURNS_MODULE_DEFINITIONS -D${macro_name}=1) - else() - list (APPEND OpenTURNS_MODULE_DEFINITIONS -D${macro_name}=0) - endif() - endmacro() - - # check for some headers - check_include_files_define_macro(sys/types.h) - check_include_files_define_macro(sys/stat.h) - check_include_files_define_macro(stdlib.h) - check_include_files_define_macro(string.h) - check_include_files_define_macro(memory.h) - check_include_files_define_macro(strings.h) - check_include_files_define_macro(inttypes.h) - check_include_files_define_macro(stdint.h) - check_include_files_define_macro(unistd.h) - check_include_files_define_macro(dlfcn.h) - check_include_files_define_macro(stdbool.h) - check_include_files_define_macro(regex.h) - - endif () - -endif () - -# handle the QUIETLY and REQUIRED arguments and set OpenTURNS_FOUND to TRUE if -# all listed variables are TRUE -find_package_handle_standard_args (OpenTURNS DEFAULT_MSG - OpenTURNS_LIBRARY - OpenTURNS_INCLUDE_DIR - OpenTURNS_SWIG_INCLUDE_DIR - OpenTURNS_INCLUDE_DIRS - OpenTURNS_LIBRARIES - OpenTURNS_WRAPPER_DIR - OpenTURNS_PYTHON_MODULE_DIR - OpenTURNS_MODULE_DIR -) - -mark_as_advanced ( - OpenTURNS_LIBRARY - OpenTURNS_INCLUDE_DIR - OpenTURNS_SWIG_INCLUDE_DIR - OpenTURNS_INCLUDE_DIRS - OpenTURNS_LIBRARIES - OpenTURNS_WRAPPER_DIR - OpenTURNS_WRAPPER_DEFINITIONS - OpenTURNS_MODULE_DIR - OpenTURNS_PYTHON_MODULE_DIR - OpenTURNS_MODULE_DEFINITIONS -) - - -### Local Variables: -### mode: cmake -### End: diff --git a/CMakeModules/FindSphinx.cmake b/CMakeModules/FindSphinx.cmake deleted file mode 100644 index fa0bc8e9..00000000 --- a/CMakeModules/FindSphinx.cmake +++ /dev/null @@ -1,11 +0,0 @@ -find_program(SPHINX_EXECUTABLE NAMES sphinx-build - HINTS - $ENV{SPHINX_DIR} - PATH_SUFFIXES bin - DOC "Sphinx documentation generator" -) -include(FindPackageHandleStandardArgs) -find_package_handle_standard_args(Sphinx DEFAULT_MSG - SPHINX_EXECUTABLE -) -mark_as_advanced(SPHINX_EXECUTABLE) diff --git a/Carmel3D/CMakeLists.txt b/Carmel3D/CMakeLists.txt deleted file mode 100644 index 2f241464..00000000 --- a/Carmel3D/CMakeLists.txt +++ /dev/null @@ -1,33 +0,0 @@ -# -*- coding: utf-8 -*- -# CONFIGURATION MANAGEMENT OF EDF VERSION -# ====================================================================== -# COPYRIGHT (C) 1991 - 2002 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# -# -# ====================================================================== - - -install ( FILES - qtEficas_Carmel3D.py prefs_CARMEL3D.py prefs.py configuration_CARMEL3D.py - Carmel3D_Cata_frequentiel_V0.py opsCarmel.py ajoutGroupe.py - DESTINATION ${CMAKE_INSTALL_PREFIX}/Carmel3D - ) - -add_subdirectory (materiaux) - -### Local Variables: -### mode: cmake -### End: diff --git a/Carmel3D/Carmel3D_Cata_V0.py b/Carmel3D/Carmel3D_Cata_V0.py deleted file mode 100644 index 6fe6de90..00000000 --- a/Carmel3D/Carmel3D_Cata_V0.py +++ /dev/null @@ -1,553 +0,0 @@ -# -*- coding: utf-8 -*- -# -------------------------------------------------- -# Copyright (C) 2007-2013 EDF R&D -# -# 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 -import sys -from Accas import * -import types -from decimal import Decimal -# repertoire ou sont stockés le catalogue carmel3d -# et les fichiers de donnees des materiaux de reference -from prefs_CARMEL3D import repIni - -#print "catalogue carmel" -#print "repIni = ", repIni - -# Version du catalogue -VERSION_CATA = "2.3.1 for harmonic problems" -# -------------------------------------------------- -# definition d une classe pour les materiaux -# definition d une classe pour les sources -# definition d une classe pour les groupes de mailles -# -------------------------------------------------- -class material ( ASSD ) : pass -class source ( ASSD ) : pass -class grmaille ( ASSD ) : pass - -#CONTEXT.debug = 1 -# -------------------------------------------------- -# déclaration du jeu de commandes : 1ere instruction du catalogue obligatoire -#--------------------------------------------------- - -JdC = JDC_CATA ( code = 'CARMEL3D', -# execmodul = None, - regles =( - AU_MOINS_UN ('MATERIAL','INCLUDE'), - ENSEMBLE ('SOURCE','MESHGROUP'), - ), - ) # Fin JDC_CATA -##========================================================= -# création d'une macro pour traiter les INCLUDE -# -#---------------------------------------------------------- - -import opsCarmel -INCLUDE = MACRO ( nom = "INCLUDE", - op = None, - UIinfo = { "groupes" : ( "Gestion du travail", ) }, - sd_prod = opsCarmel.INCLUDE, - op_init = opsCarmel.INCLUDE_context, - fichier_ini = 1, - - FileName = SIMP ( statut = "o", - typ = ('Fichier', 'comm Files (*.comm);;All Files (*)',), - fr = u"bibliothèque des matériaux", - ang = "material library file", - ), - - ) # Fin MACRO - -# -------------------------------------------------- -# definition de groupe de mailles -# il est associe a un materiau ou a une source -#--------------------------------------------------- - -MESHGROUP = OPER (nom = "MESHGROUP", - op = None, - repetable = 'n', - UIinfo= {"groupes":("Definition",)}, - fr= u"attribution d'un matériau ou d'une source à un groupe du maillage", - ang = "mesh group association to material or source", - sd_prod= grmaille, - regles =( - EXCLUS ('MATERIAL','SOURCE'), - ), - -# ---------------------------------------------------------- -# le mot cle SIMP doit etre facultatif sinon la recuperation -# des groupes de mailles sous SALOME ne fonctionne pas car -# le concept ne peut pas etre nomme car non valide -#----------------------------------------------------------- - MATERIAL = SIMP (statut="f", - typ=(material,), - ang="name of the linked material", - fr =u"nom du matériau associé", - ), - SOURCE = SIMP (statut="f", - typ=(source,), - ang="name of the linked source", - fr =u"nom de la source associée", - ), - ) - - -#====================================================================== -# le fichier .PHYS contient 3 blocs et jusqu'a 3 niveaux de sous-blocs -# -#====================================================================== -# 1er bloc : bloc VERSION -# ce bloc est volontairement cache dans l IHM -#=================================================== - -VERSION = PROC ( nom = "VERSION", - op = None, - repetable = 'n', - UIinfo= {"groupes":("CACHE",)}, - ang= "version block definition", - -#---------------------- -# Liste des parametres -#---------------------- - - NUM = SIMP (statut="o", - typ="I", - defaut=1, - ang="version number of the physical model", - into=( 1,), - ), - FILETYPE = SIMP (statut="o", - typ="TXM", - defaut="PHYS", - ang="file type", - into=( "PHYS",), - ), - -) # Fin PROC VERSION - -#=================================================================== -# 2eme bloc : bloc MATERIALS -#=================================================================== -# definition des matériaux utilisateurs -# a partir des materiaux de reference ou de materiaux generiques -#------------------------------------------------------------------- -# -MATERIAL = OPER (nom = "MATERIAL", - op = None, - repetable = 'n', - ang= "material block definition", - fr= u"définition d'un matériau", - sd_prod= material, - regles=EXCLUS('PERMITTIVITY','CONDUCTIVITY'), - -#--------------------------------------------------------------------- -# liste des matériaux de reference fournis par THEMIS et des -# materiaux generiques (les materiaux generiques peuvent etre utilises -# si aucun materiau de reference ne convient) -#--------------------------------------------------------------------- -# debut commentaire PN pour que le fichier materiaux soit valide -# TYPE = SIMP(statut='o', - MAT_REF = SIMP(statut='f', - typ='TXM', - into=( -# matériaux génériques - "DIELECTRIC", - "CONDUCTOR", - "ZINSULATOR","ZSURFACIC", - "NILMAT","EM_ISOTROPIC","EM_ANISOTROPIC", - ), - ang = "generic materials list", - fr = u"liste des matériaux génériques", - ), - -############################################################################## -# Remarque generale a tous les materiaux : -# pour conserver l'affichage scientifique le nombre derriere l'exposant doit -# etre strictement superieur au nombre de decimales -# - -##---------------------------------------------------------------------------------------------- -# Données de perméabilité, utilisée pour les diélectriques, conducteurs et impédances de surface -#----------------------------------------------------------------------------------------------- - #HAS_PERMEABILITY = BLOC(condition="TYPE in ('DIELECTRIC','CONDUCTOR','ZSURFACIC')", - -#------------------------------------------------ -# sous bloc niveau 2 : PERMEABILITY -#------------------------------------------------ -# - PERMEABILITY = FACT ( statut="f", - ang ="Permeability properties", - fr =u"propriétés de perméabilité du matériau", - HOMOGENEOUS = SIMP (statut="o", - typ="TXM", - defaut="TRUE", - into = ("TRUE","FALSE"), - ang = "the material is homogeneous or not", - fr = u"le matériau est homogène ou non", - ), - ISOTROPIC = SIMP (statut="o", - typ="TXM", - defaut="TRUE", - into = ("TRUE","FALSE"), - ang = "the material is isotropic or not", - fr = u"le matériau est isotrope ou non", - ), - HOMOGENEOUS_ISOTROPIC_PROPERTIES = BLOC (condition="HOMOGENEOUS=='TRUE' and ISOTROPIC=='TRUE'", - TYPE_LAW = SIMP (statut="o", - typ="TXM", - defaut="LINEAR_REAL", - into = ("LINEAR_REAL","NONLINEAR"), - ang = "harmonic or time-domain linear or nonlinear law only for homogeneous and isotropic materials", - fr = u"loi linéaire (fréquentielle ou temporelle) ou non (homogène et isotrope seulement)", - ), - VALUE = SIMP (statut="o", - typ="C", - defaut=('RI',1,0), - ang = "Relative linear permeability value, also used at first nonlinear iteration", - fr = u"Valeur de la perméabilité relative à l'air utilisée pour une loi linéaire ou pour la première itération non-linéaire", - ), - NONLINEAR_LAW_PROPERTIES = BLOC (condition="LAW=='NONLINEAR'", - NATURE = SIMP (statut="o", - typ="TXM", - defaut="MARROCCO", - into = ("SPLINE","MARROCCO","MARROCCO+SATURATION"), - ang = "nature law", - fr = u"nature de la loi", - ), - SPLINE_LAW_PROPERTIES = BLOC (condition="NATURE=='SPLINE'", - FILENAME = SIMP (statut="o", - typ=("FichierNoAbs",'All Files (*)',), # l'existence du fichier n'est pas vérifiée - ang="data file name", - fr =u"nom du fichier contenant les mesures expérimentales B(H)", - ), - ), # Fin BLOC SPLINE_PROPERTIES - MARROCCO_LAW_PROPERTIES = BLOC (condition="NATURE in ('MARROCCO','MARROCCO+SATURATION')", - ALPHA = SIMP (statut="o", - typ="R", - defaut=0, - val_min=0, - ang="alpha parameter", - fr =u"paramètre alpha de la loi de Marrocco" , - ), - TAU = SIMP (statut="o", - typ="R", - defaut=0, - val_min=0, - ang="tau parameter", - fr =u"paramètre tau de la loi de Marrocco" , - ), - C = SIMP (statut="o", - typ="R", - defaut=0, - val_min=0, - ang="c parameter", - fr =u"paramètre c de la loi de Marrocco" , - ), - EPSILON = SIMP (statut="o", - typ="R", - defaut=0, - val_min=0, - ang="epsilon parameter", - fr =u"paramètre epsilon de la loi de Marrocco" , - ), - ), # Fin BLOC MARROCCO_LAW_PROPERTIES - SATURATION_LAW_PROPERTIES = BLOC (condition="NATURE=='MARROCCO+SATURATION'", - BMAX = SIMP (statut="o", - typ="R", - defaut=0, - val_min=0, - ang="intersection B", - fr = u"valeur de B marquant la fin de la loi de Marrocco et le début du raccord à la loi de saturation", - ), - HSAT = SIMP (statut="o", - typ="R", - defaut=0, - val_min=0, - ang="H value", - fr = u"valeur de H définissant la loi de saturation", - ), - BSAT = SIMP (statut="o", - typ="R", - defaut=0, - val_min=0, - ang="B value", - fr = u"valeur de B définissant la loi de saturation", - ), - JOIN = SIMP (statut="o", - typ="TXM", - defaut="SPLINE", - into= ("SPLINE","PARABOLIC","LINEAR"), - ang="type of join between laws", - fr =u"type de raccord entre la loi choisie et la loi de saturation" , - ), - ), # Fin BLOC SATURATION_LAW_PROPERTIES - APPLIEDTO = SIMP (statut="o", - typ="TXM", - into=("B(H)&H(B)","B(H)","H(B)"), - defaut="B(H)&H(B)", - ang="join applied to", - fr =u"Le raccord tel que défini est appliqué à la courbe B(H) seulement, à la courbe H(B) seulement ou aux deux courbes à la fois. Dans les deux premiers cas, le raccord de la courbe H(B) est inversé numériquement à partir du raccord défini pour la courbe B(H), et vice-versa.", - ), - ), # Fin BLOC NONLINEAR_LAW_PROPERTIES - ), # Fin BLOC HOMOGENEOUS_ISOTROPIC_PROPERTIES - ), # fin FACT PERMEABILITY - #), # Fin BLOC HAS_PERMEABILITY - -##------------------------------------------------------------------ -# Données de permittivité, utilisée pour les diélectriques seulement -#------------------------------------------------------------------- - #HAS_PERMITTIVITY = BLOC(condition="TYPE == 'DIELECTRIC'", - -#------------------------------------------------ -# sous bloc niveau 2 : PERMITTIVITY -#------------------------------------------------ - PERMITTIVITY = FACT ( statut="f", - ang ="Permittivity properties", - fr = u"propriétés de permittivité du matériau", - HOMOGENEOUS = SIMP (statut="o", - typ="TXM", - defaut="TRUE", - into = ("TRUE","FALSE"), - ang = "the material is homogeneous or not", - fr = u"le matériau est homogène ou non", - ), - ISOTROPIC = SIMP (statut="o", - typ="TXM", - defaut="TRUE", - into = ("TRUE","FALSE"), - ang = "the material is isotropic or not", - fr = u"le matériau est isotrope ou non", - ), - HOMOGENEOUS_ISOTROPIC_PROPERTIES = BLOC (condition="HOMOGENEOUS=='TRUE' and ISOTROPIC=='TRUE'", - LAW = SIMP (statut="o", - typ="TXM", - defaut="LINEAR", - into = ("LINEAR",), - ang = "linear law", - fr = u"loi linéaire", - ), - VALUE = SIMP (statut="o", - typ="C", - defaut=('RI',1,0), - ang = "enter a complex relative value", - fr = u"saisir une valeur complexe relative", - ), - ), # Fin BLOC HOMOGENEOUS_ISOTROPIC_PROPERTIES - ), # fin FACT PERMITTIVITY - - #), # Fin BLOC HAS_PERMITTIVITY - -##---------------------------------------------------------------------------------------------- -# Données de conductivité, utilisée pour les conducteurs et impédances de surface -#----------------------------------------------------------------------------------------------- - #HAS_CONDUCTIVITY = BLOC(condition="TYPE in ('CONDUCTOR','ZSURFACIC')", -#------------------------------------------------ -# sous bloc niveau 2 : CONDUCTIVITY -#------------------------------------------------ - CONDUCTIVITY = FACT ( statut="f", - ang ="Permittivity properties", - fr = u"propriétés de permittivité du matériau", - HOMOGENEOUS = SIMP (statut="o", - typ="TXM", - defaut="TRUE", - into = ("TRUE","FALSE"), - ang = "the material is homogeneous or not", - fr = u"le matériau est homogène ou non", - ), - ISOTROPIC = SIMP (statut="o", - typ="TXM", - defaut="TRUE", - into = ("TRUE","FALSE"), - ang = "the material is isotropic or not", - fr = u"le matériau est isotrope ou non", - ), - HOMOGENEOUS_ISOTROPIC_PROPERTIES = BLOC (condition="HOMOGENEOUS=='TRUE' and ISOTROPIC=='TRUE'", - LAW = SIMP (statut="o", - typ="TXM", - defaut="LINEAR", - into = ("LINEAR",), - ang = "linear law", - fr = u"loi linéaire", - ), - VALUE = SIMP (statut="o", - typ="C", - defaut=('RI',1,0), - ang = "enter a complex relative value", - fr = u"saisir une valeur complexe relative", - ), - ), # Fin BLOC HOMOGENEOUS_ISOTROPIC_PROPERTIES - ), # fin FACT CONDUCTIVITY - - #), # Fin BLOC HAS_CONDUCTICITY - -################################################################################################### -#--------------------------------------------- -# sous bloc niveau 1 -#--------------------------------------- -# matériau generique de type ZINSULATOR -#--------------------------------------- - -# aucun parametre a saisir pour ce materiau - - -################################################################################################### -#--------------------------------------------- -# sous bloc niveau 1 -#--------------------------------------------- -# matériau generique de type NILMAT (fictif) -#--------------------------------------------- - -# aucun parametre a saisir pour ce materiau - - -################################################################################################### -#---------------------------------------------------------- -# sous bloc niveau 1 : EM_ISOTROPIC_FILES -#------------------------------------------------- -# matériau isotropique non homogene generique -#------------------------------------------------- - EM_ISOTROPIC_properties=BLOC(condition="TYPE=='EM_ISOTROPIC'", - - CONDUCTIVITY_File = SIMP (statut="o", - typ=("FichierNoAbs",'MED Files (*.med)',), - ang="CONDUCTIVITY MED data file name", - fr = u"nom du fichier MED CONDUCTIVITY", - ), - PERMEABILITY_File = SIMP (statut="o", - typ=("FichierNoAbs",'MED Files (*.med)',), - ang="PERMEABILITY MED data file name", - fr = u"nom du fichier MED PERMEABILITY", - ), - ), # fin bloc EM_ISOTROPIC_properties - - -#--------------------------------------------------- -# matériau anisotropique non homogene generique -#--------------------------------------------------- - EM_ANISOTROPIC_properties=BLOC(condition="TYPE=='EM_ANISOTROPIC'", - - PERMEABILITY_File = SIMP (statut="o", - #typ=("Fichier",'.mater Files (*.mater)'), # le fichier doit exister dans le répertoire d'où on lancer Eficas si le fichier est défini par un nom relatif, ce qui est trop contraignant - #typ=("Fichier",'.mater Files (*.mater)','Sauvegarde'), # Le fichier peut ne pas exister, mais on propose de le sauvegarder et d'écraser un fichier existant : pas approprié - typ=("FichierNoAbs",'.mater Files (*.mater)'), # l'existence du fichier n'est pas vérifiée, mais on peut le sélectionner quand même via la navigateur. C'est suffisant et permet une bibliothèque de matériaux. - ang="PERMEABILITY .mater data file name", - fr ="nom du fichier .mater PERMEABILITY", - ), - CONDUCTIVITY_File = SIMP (statut="o", - typ=("FichierNoAbs",'.mater Files (*.mater)'), - ang="CONDUCTIVITY .mater data file name", - fr ="nom du fichier .mater CONDUCTIVITY", - ), - ), # fin bloc EM_ANISOTROPIC_properties - - -) # fin OPER MATERIAL - -#=================================================================== -# 3eme bloc : bloc SOURCES -#==================================================================== -# definition des differentes sources qui seront dans le bloc SOURCES -#------------------------------------------------------------------- -# - -SOURCE = OPER ( nom = "SOURCE", - op = None, - repetable = 'n', - ang = "source definition", - fr = u"définition d'une source", - sd_prod = source, - regles = (UN_PARMI('STRANDED_INDUCTOR','HPORT','EPORT'), # choix d'un type de source - UN_PARMI('WAVEFORM_CONSTANT','WAVEFORM_SINUS'), # choix d'une forme de source - ), - -#---------------------------------------------------------- -# sous bloc niveau 1 : stranded inductor source -##--------------------------------------------------------- - STRANDED_INDUCTOR = FACT(statut='f', - ang="Stranded inductor source", - fr=u"source de type inducteur bobiné", - NTURNS = SIMP (statut="o", - typ="I", - defaut=1, - ang="number of turns in the inductor", - fr= u"nombre de tours dans l'inducteur bobiné", - ), - TYPE = SIMP (statut="o", - typ="TXM", - defaut="CURRENT", - into=("CURRENT",), - fr= u"source de type courant", - ang="current source type", - ), - ), # FIN de FACT STRANDED_INDUCTOR - HPORT = FACT(statut='f', - ang="Magnetic port source", - fr=u"source de type port magnétique", - TYPE = SIMP (statut="o", - typ="TXM", - into=("VOLTAGE","CURRENT"), - fr= u"source de type tension ou courant", - ang="voltage or current source type", - ), - ), # FIN de FACT HPORT - EPORT = FACT(statut='f', - ang="Electric port source", - fr=u"source de type port électrique", - TYPE = SIMP (statut="o", - typ="TXM", - into=("VOLTAGE","CURRENT"), - fr= u"source de type tension ou courant", - ang="voltage or current source type", - ), - ), # FIN de FACT EPORT - WAVEFORM_CONSTANT = FACT(statut='f', - ang="constant source", - fr=u"source constante", - AMPLITUDE = SIMP (statut="o", - typ="R", - defaut=1, - ang = "enter the source magnitude value, in A or V units", - fr = u"saisir la valeur de l'amplitude de la source, en unités A ou V", - ), - ), # FIN de FACT WAVEFORM_CONSTANT - WAVEFORM_SINUS = FACT(statut='f', - ang="sinus variation source", - fr=u"source variant avec une forme sinusoïdale, définie par son amplitude, sa fréquence et sa phase", - AMPLITUDE = SIMP (statut="o", - typ="R", - defaut=1, - ang = "enter the source magnitude value, in A or V units", - fr = u"saisir la valeur de l'amplitude de la source, en unités A ou V", - ), - FREQUENCY = SIMP (statut="o", - typ="R", - defaut=50.0, - ang = "enter the source frequency value, in Hz units", - fr = u"saisir la valeur de la fréquence de la source, en Hz", - ), - PHASE = SIMP (statut="o", - typ="R", - defaut=0.0, - ang = "enter the source phase value, in degrees units", - fr = u"saisir la valeur de la phase de la source, en degrés", - ), - ), # FIN de FACT WAVEFORM_SINUS -) # Fin OPER SOURCE diff --git a/Carmel3D/Carmel3D_Cata_frequentiel_V0.py b/Carmel3D/Carmel3D_Cata_frequentiel_V0.py deleted file mode 100755 index a90c5626..00000000 --- a/Carmel3D/Carmel3D_Cata_frequentiel_V0.py +++ /dev/null @@ -1,552 +0,0 @@ -# -*- coding: utf-8 -*- -# -------------------------------------------------- -# Copyright (C) 2007-2013 EDF R&D -# -# 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 -import sys -from Accas import * -import types -from decimal import Decimal -# repertoire ou sont stockés le catalogue carmel3d -# et les fichiers de donnees des materiaux de reference -from prefs_CARMEL3D import repIni - -#print "catalogue carmel" -#print "repIni = ", repIni - -# Version du catalogue -VERSION_CATA = "2.3.1 for harmonic problems" -# -------------------------------------------------- -# definition d une classe pour les materiaux -# definition d une classe pour les sources -# definition d une classe pour les groupes de mailles -# -------------------------------------------------- -class material ( ASSD ) : pass -class source ( ASSD ) : pass -class grmaille ( ASSD ) : pass - -#CONTEXT.debug = 1 -# -------------------------------------------------- -# déclaration du jeu de commandes : 1ere instruction du catalogue obligatoire -#--------------------------------------------------- - -##========================================================= -JdC = JDC_CATA ( code = 'CARMEL3D', -# execmodul = None, - regles =( - AU_MOINS_UN ('MATERIAL','INCLUDE'), - AU_MOINS_UN ('SOURCE','INCLUDE'), - AU_MOINS_UN ('MESHGROUP'), - ), - ) # Fin JDC_CATA -##========================================================= -# création d'une macro pour traiter les INCLUDE -# -#---------------------------------------------------------- - -import opsCarmel -INCLUDE = MACRO ( nom = "INCLUDE", - op = None, - UIinfo = { "groupes" : ( "Gestion du travail", ) }, - sd_prod = opsCarmel.INCLUDE, - op_init = opsCarmel.INCLUDE_context, - fichier_ini = 1, - - FileName = SIMP ( statut = "o", - typ = ('Fichier', 'comm Files (*.comm);;All Files (*)',), - fr = u"bibliothèque des matériaux", - ang = "material library file", - ), - - ) # Fin MACRO -# -------------------------------------------------- -# definition de groupe de mailles -# il est associe a un materiau ou a une source -#--------------------------------------------------- - -MESHGROUP = OPER (nom = "MESHGROUP", - op = None, - repetable = 'n', - UIinfo= {"groupes":("Definition",)}, - fr= u"attribution d'un matériau ou d'une source à un groupe du maillage", - ang = "mesh group association to material or source", - sd_prod= grmaille, - regles =( - EXCLUS ('MATERIAL','SOURCE'), - ), - -# ---------------------------------------------------------- -# le mot cle SIMP doit etre facultatif sinon la recuperation -# des groupes de mailles sous SALOME ne fonctionne pas car -# le concept ne peut pas etre nomme car non valide -#----------------------------------------------------------- - MATERIAL = SIMP (statut="f", - typ=(material,), - ang="name of the linked material", - fr =u"nom du matériau associé", - ), - SOURCE = SIMP (statut="f", - typ=(source,), - ang="name of the linked source", - fr =u"nom de la source associée", - ), - ) - - -#====================================================================== -# le fichier .PHYS contient 3 blocs et jusqu'a 3 niveaux de sous-blocs -# -#====================================================================== -# 1er bloc : bloc VERSION -# ce bloc est volontairement cache dans l IHM -#=================================================== - -VERSION = PROC ( nom = "VERSION", - op = None, - repetable = 'n', - UIinfo= {"groupes":("CACHE",)}, - ang= "version block definition", - -#---------------------- -# Liste des parametres -#---------------------- - - NUM = SIMP (statut="o", - typ="I", - defaut=1, - ang="version number of the physical model", - into=( 1,), - ), - FILETYPE = SIMP (statut="o", - typ="TXM", - defaut="PHYS", - ang="file type", - into=( "PHYS",), - ), - -) # Fin PROC VERSION - -#=================================================================== -# 2eme bloc : bloc MATERIALS -#=================================================================== -# definition des matériaux utilisateurs -# a partir des materiaux de reference ou de materiaux generiques -#------------------------------------------------------------------- -# -MATERIAL = OPER (nom = "MATERIAL", - op = None, - repetable = 'n', - ang= "material block definition", - fr= u"définition d'un matériau", - sd_prod= material, - regles=EXCLUS('PERMITTIVITY','CONDUCTIVITY'), - -#--------------------------------------------------------------------- -# liste des matériaux de reference fournis par THEMIS et des -# materiaux generiques (les materiaux generiques peuvent etre utilises -# si aucun materiau de reference ne convient) -#--------------------------------------------------------------------- - TYPE = SIMP(statut='o', - typ='TXM', - into=( -# matériaux génériques - "DIELECTRIC", - "CONDUCTOR", - "ZINSULATOR","ZSURFACIC", - "NILMAT","EM_ISOTROPIC","EM_ANISOTROPIC", - ), - ang = "generic materials list", - fr = u"liste des matériaux génériques", - ), - -############################################################################## -# Remarque generale a tous les materiaux : -# pour conserver l'affichage scientifique le nombre derriere l'exposant doit -# etre strictement superieur au nombre de decimales -# - -##---------------------------------------------------------------------------------------------- -# Données de perméabilité, utilisée pour les diélectriques, conducteurs et impédances de surface -#----------------------------------------------------------------------------------------------- - #HAS_PERMEABILITY = BLOC(condition="TYPE in ('DIELECTRIC','CONDUCTOR','ZSURFACIC')", - -#------------------------------------------------ -# sous bloc niveau 2 : PERMEABILITY -#------------------------------------------------ -# - PERMEABILITY = FACT ( statut="f", - ang ="Permeability properties", - fr =u"propriétés de perméabilité du matériau", - HOMOGENEOUS = SIMP (statut="o", - typ="TXM", - defaut="TRUE", - into = ("TRUE","FALSE"), - ang = "the material is homogeneous or not", - fr = u"le matériau est homogène ou non", - ), - ISOTROPIC = SIMP (statut="o", - typ="TXM", - defaut="TRUE", - into = ("TRUE","FALSE"), - ang = "the material is isotropic or not", - fr = u"le matériau est isotrope ou non", - ), - HOMOGENEOUS_ISOTROPIC_PROPERTIES = BLOC (condition="HOMOGENEOUS=='TRUE' and ISOTROPIC=='TRUE'", - LAW = SIMP (statut="o", - typ="TXM", - defaut="LINEAR", - into = ("LINEAR","NONLINEAR"), - ang = "harmonic or time-domain linear or nonlinear law only for homogeneous and isotropic materials", - fr = u"loi linéaire (fréquentielle ou temporelle) ou non (homogène et isotrope seulement)", - ), - VALUE = SIMP (statut="o", - typ="C", - defaut=('RI',1,0), - ang = "Relative linear permeability value, also used at first nonlinear iteration", - fr = u"Valeur de la perméabilité relative à l'air utilisée pour une loi linéaire ou pour la première itération non-linéaire", - ), - NONLINEAR_LAW_PROPERTIES = BLOC (condition="LAW=='NONLINEAR'", - NATURE = SIMP (statut="o", - typ="TXM", - defaut="MARROCCO", - into = ("SPLINE","MARROCCO","MARROCCO+SATURATION"), - ang = "nature law", - fr = u"nature de la loi", - ), - SPLINE_LAW_PROPERTIES = BLOC (condition="NATURE=='SPLINE'", - FILENAME = SIMP (statut="o", - typ=("FichierNoAbs",'All Files (*)',), # l'existence du fichier n'est pas vérifiée - ang="data file name", - fr =u"nom du fichier contenant les mesures expérimentales B(H)", - ), - ), # Fin BLOC SPLINE_PROPERTIES - MARROCCO_LAW_PROPERTIES = BLOC (condition="NATURE in ('MARROCCO','MARROCCO+SATURATION')", - ALPHA = SIMP (statut="o", - typ="R", - defaut=0, - val_min=0, - ang="alpha parameter", - fr =u"paramètre alpha de la loi de Marrocco" , - ), - TAU = SIMP (statut="o", - typ="R", - defaut=0, - val_min=0, - ang="tau parameter", - fr =u"paramètre tau de la loi de Marrocco" , - ), - C = SIMP (statut="o", - typ="R", - defaut=0, - val_min=0, - ang="c parameter", - fr =u"paramètre c de la loi de Marrocco" , - ), - EPSILON = SIMP (statut="o", - typ="R", - defaut=0, - val_min=0, - ang="epsilon parameter", - fr =u"paramètre epsilon de la loi de Marrocco" , - ), - ), # Fin BLOC MARROCCO_LAW_PROPERTIES - SATURATION_LAW_PROPERTIES = BLOC (condition="NATURE=='MARROCCO+SATURATION'", - BMAX = SIMP (statut="o", - typ="R", - defaut=0, - val_min=0, - ang="intersection B", - fr = u"valeur de B marquant la fin de la loi de Marrocco et le début du raccord à la loi de saturation", - ), - HSAT = SIMP (statut="o", - typ="R", - defaut=0, - val_min=0, - ang="H value", - fr = u"valeur de H définissant la loi de saturation", - ), - BSAT = SIMP (statut="o", - typ="R", - defaut=0, - val_min=0, - ang="B value", - fr = u"valeur de B définissant la loi de saturation", - ), - JOIN = SIMP (statut="o", - typ="TXM", - defaut="SPLINE", - into= ("SPLINE","PARABOLIC","LINEAR"), - ang="type of join between laws", - fr =u"type de raccord entre la loi choisie et la loi de saturation" , - ), - ), # Fin BLOC SATURATION_LAW_PROPERTIES - APPLIEDTO = SIMP (statut="o", - typ="TXM", - into=("B(H)&H(B)","B(H)","H(B)"), - defaut="B(H)&H(B)", - ang="join applied to", - fr =u"Le raccord tel que défini est appliqué à la courbe B(H) seulement, à la courbe H(B) seulement ou aux deux courbes à la fois. Dans les deux premiers cas, le raccord de la courbe H(B) est inversé numériquement à partir du raccord défini pour la courbe B(H), et vice-versa.", - ), - ), # Fin BLOC NONLINEAR_LAW_PROPERTIES - ), # Fin BLOC HOMOGENEOUS_ISOTROPIC_PROPERTIES - ), # fin FACT PERMEABILITY - #), # Fin BLOC HAS_PERMEABILITY - -##------------------------------------------------------------------ -# Données de permittivité, utilisée pour les diélectriques seulement -#------------------------------------------------------------------- - #HAS_PERMITTIVITY = BLOC(condition="TYPE == 'DIELECTRIC'", - -#------------------------------------------------ -# sous bloc niveau 2 : PERMITTIVITY -#------------------------------------------------ - PERMITTIVITY = FACT ( statut="f", - ang ="Permittivity properties", - fr = u"propriétés de permittivité du matériau", - HOMOGENEOUS = SIMP (statut="o", - typ="TXM", - defaut="TRUE", - into = ("TRUE","FALSE"), - ang = "the material is homogeneous or not", - fr = u"le matériau est homogène ou non", - ), - ISOTROPIC = SIMP (statut="o", - typ="TXM", - defaut="TRUE", - into = ("TRUE","FALSE"), - ang = "the material is isotropic or not", - fr = u"le matériau est isotrope ou non", - ), - HOMOGENEOUS_ISOTROPIC_PROPERTIES = BLOC (condition="HOMOGENEOUS=='TRUE' and ISOTROPIC=='TRUE'", - LAW = SIMP (statut="o", - typ="TXM", - defaut="LINEAR", - into = ("LINEAR",), - ang = "linear law", - fr = u"loi linéaire", - ), - VALUE = SIMP (statut="o", - typ="C", - defaut=('RI',1,0), - ang = "enter a complex relative value", - fr = u"saisir une valeur complexe relative", - ), - ), # Fin BLOC HOMOGENEOUS_ISOTROPIC_PROPERTIES - ), # fin FACT PERMITTIVITY - - #), # Fin BLOC HAS_PERMITTIVITY - -##---------------------------------------------------------------------------------------------- -# Données de conductivité, utilisée pour les conducteurs et impédances de surface -#----------------------------------------------------------------------------------------------- - #HAS_CONDUCTIVITY = BLOC(condition="TYPE in ('CONDUCTOR','ZSURFACIC')", -#------------------------------------------------ -# sous bloc niveau 2 : CONDUCTIVITY -#------------------------------------------------ - CONDUCTIVITY = FACT ( statut="f", - ang ="Permittivity properties", - fr = u"propriétés de permittivité du matériau", - HOMOGENEOUS = SIMP (statut="o", - typ="TXM", - defaut="TRUE", - into = ("TRUE","FALSE"), - ang = "the material is homogeneous or not", - fr = u"le matériau est homogène ou non", - ), - ISOTROPIC = SIMP (statut="o", - typ="TXM", - defaut="TRUE", - into = ("TRUE","FALSE"), - ang = "the material is isotropic or not", - fr = u"le matériau est isotrope ou non", - ), - HOMOGENEOUS_ISOTROPIC_PROPERTIES = BLOC (condition="HOMOGENEOUS=='TRUE' and ISOTROPIC=='TRUE'", - LAW = SIMP (statut="o", - typ="TXM", - defaut="LINEAR", - into = ("LINEAR",), - ang = "linear law", - fr = u"loi linéaire", - ), - VALUE = SIMP (statut="o", - typ="C", - defaut=('RI',1,0), - ang = "enter a complex relative value", - fr = u"saisir une valeur complexe relative", - ), - ), # Fin BLOC HOMOGENEOUS_ISOTROPIC_PROPERTIES - ), # fin FACT CONDUCTIVITY - - #), # Fin BLOC HAS_CONDUCTICITY - -################################################################################################### -#--------------------------------------------- -# sous bloc niveau 1 -#--------------------------------------- -# matériau generique de type ZINSULATOR -#--------------------------------------- - -# aucun parametre a saisir pour ce materiau - - -################################################################################################### -#--------------------------------------------- -# sous bloc niveau 1 -#--------------------------------------------- -# matériau generique de type NILMAT (fictif) -#--------------------------------------------- - -# aucun parametre a saisir pour ce materiau - - -################################################################################################### -#---------------------------------------------------------- -# sous bloc niveau 1 : EM_ISOTROPIC_FILES -#------------------------------------------------- -# matériau isotropique non homogene generique -#------------------------------------------------- - EM_ISOTROPIC_properties=BLOC(condition="TYPE=='EM_ISOTROPIC'", - - CONDUCTIVITY_File = SIMP (statut="o", - typ=("FichierNoAbs",'MED Files (*.med)',), - ang="CONDUCTIVITY MED data file name", - fr = u"nom du fichier MED CONDUCTIVITY", - ), - PERMEABILITY_File = SIMP (statut="o", - typ=("FichierNoAbs",'MED Files (*.med)',), - ang="PERMEABILITY MED data file name", - fr = u"nom du fichier MED PERMEABILITY", - ), - ), # fin bloc EM_ISOTROPIC_properties - - -#--------------------------------------------------- -# matériau anisotropique non homogene generique -#--------------------------------------------------- - EM_ANISOTROPIC_properties=BLOC(condition="TYPE=='EM_ANISOTROPIC'", - - PERMEABILITY_File = SIMP (statut="o", - #typ=("Fichier",'.mater Files (*.mater)'), # le fichier doit exister dans le répertoire d'où on lancer Eficas si le fichier est défini par un nom relatif, ce qui est trop contraignant - #typ=("Fichier",'.mater Files (*.mater)','Sauvegarde'), # Le fichier peut ne pas exister, mais on propose de le sauvegarder et d'écraser un fichier existant : pas approprié - typ=("FichierNoAbs",'.mater Files (*.mater)'), # l'existence du fichier n'est pas vérifiée, mais on peut le sélectionner quand même via la navigateur. C'est suffisant et permet une bibliothèque de matériaux. - ang="PERMEABILITY .mater data file name", - fr ="nom du fichier .mater PERMEABILITY", - ), - CONDUCTIVITY_File = SIMP (statut="o", - typ=("FichierNoAbs",'.mater Files (*.mater)'), - ang="CONDUCTIVITY .mater data file name", - fr ="nom du fichier .mater CONDUCTIVITY", - ), - ), # fin bloc EM_ANISOTROPIC_properties - - -) # fin OPER MATERIAL - -#=================================================================== -# 3eme bloc : bloc SOURCES -#==================================================================== -# definition des differentes sources qui seront dans le bloc SOURCES -#------------------------------------------------------------------- -# - -SOURCE = OPER ( nom = "SOURCE", - op = None, - repetable = 'n', - ang = "source definition", - fr = u"définition d'une source", - sd_prod = source, - regles = (UN_PARMI('STRANDED_INDUCTOR','HPORT','EPORT'), # choix d'un type de source - UN_PARMI('WAVEFORM_CONSTANT','WAVEFORM_SINUS'), # choix d'une forme de source - ), - -#---------------------------------------------------------- -# sous bloc niveau 1 : stranded inductor source -##--------------------------------------------------------- - STRANDED_INDUCTOR = FACT(statut='f', - ang="Stranded inductor source", - fr=u"source de type inducteur bobiné", - NTURNS = SIMP (statut="o", - typ="I", - defaut=1, - ang="number of turns in the inductor", - fr= u"nombre de tours dans l'inducteur bobiné", - ), - TYPE = SIMP (statut="o", - typ="TXM", - defaut="CURRENT", - into=("CURRENT",), - fr= u"source de type courant", - ang="current source type", - ), - ), # FIN de FACT STRANDED_INDUCTOR - HPORT = FACT(statut='f', - ang="Magnetic port source", - fr=u"source de type port magnétique", - TYPE = SIMP (statut="o", - typ="TXM", - into=("VOLTAGE","CURRENT"), - fr= u"source de type tension ou courant", - ang="voltage or current source type", - ), - ), # FIN de FACT HPORT - EPORT = FACT(statut='f', - ang="Electric port source", - fr=u"source de type port électrique", - TYPE = SIMP (statut="o", - typ="TXM", - into=("VOLTAGE","CURRENT"), - fr= u"source de type tension ou courant", - ang="voltage or current source type", - ), - ), # FIN de FACT EPORT - WAVEFORM_CONSTANT = FACT(statut='f', - ang="constant source", - fr=u"source constante", - AMPLITUDE = SIMP (statut="o", - typ="R", - defaut=1, - ang = "enter the source magnitude value, in A or V units", - fr = u"saisir la valeur de l'amplitude de la source, en unités A ou V", - ), - ), # FIN de FACT WAVEFORM_CONSTANT - WAVEFORM_SINUS = FACT(statut='f', - ang="sinus variation source", - fr=u"source variant avec une forme sinusoïdale, définie par son amplitude, sa fréquence et sa phase", - AMPLITUDE = SIMP (statut="o", - typ="R", - defaut=1, - ang = "enter the source magnitude value, in A or V units", - fr = u"saisir la valeur de l'amplitude de la source, en unités A ou V", - ), - FREQUENCY = SIMP (statut="o", - typ="R", - defaut=50.0, - ang = "enter the source frequency value, in Hz units", - fr = u"saisir la valeur de la fréquence de la source, en Hz", - ), - PHASE = SIMP (statut="o", - typ="R", - defaut=0.0, - ang = "enter the source phase value, in degrees units", - fr = u"saisir la valeur de la phase de la source, en degrés", - ), - ), # FIN de FACT WAVEFORM_SINUS -) # Fin OPER SOURCE diff --git a/Carmel3D/Carmel3D_Cata_frequentiel_V1.py b/Carmel3D/Carmel3D_Cata_frequentiel_V1.py deleted file mode 100644 index b70bb964..00000000 --- a/Carmel3D/Carmel3D_Cata_frequentiel_V1.py +++ /dev/null @@ -1,903 +0,0 @@ -# -*- coding: utf-8 -*- -# -------------------------------------------------- -# Copyright (C) 2007-2013 EDF R&D -# -# 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 -import sys -from Accas import * -import types -from decimal import Decimal -# repertoire ou sont stockés le catalogue carmel3d -# et les fichiers de donnees des materiaux de reference -from prefs_CARMEL3D import repIni - -class Tuple: - def __init__(self,ntuple): - self.ntuple=ntuple - - def __convert__(self,valeur): - if type(valeur) == types.StringType: - return None - if len(valeur) != self.ntuple: - return None - return valeur - - def info(self): - return "Tuple de %s elements" % self.ntuple - - - -#print "catalogue carmel" -#print "repIni = ", repIni - -# Version du catalogue -VERSION_CATA = "Code_Carmel3D 2.4.0 for harmonic problems" -# -------------------------------------------------- -# definition d une classe pour les materiaux -# definition d une classe pour les sources -# definition d une classe pour les groupes de mailles -# -------------------------------------------------- -class material ( ASSD ) : pass -class source ( ASSD ) : pass -class grmaille ( ASSD ) : pass -class stranded_inductor_geometry ( ASSD ) : pass -class macro_groupe ( ASSD ) : pass - -#CONTEXT.debug = 1 -# -------------------------------------------------- -# déclaration du jeu de commandes : 1ere instruction du catalogue obligatoire -#--------------------------------------------------- - -##========================================================= -JdC = JDC_CATA ( code = 'CARMEL3D', - execmodul = None, - regles =( - AU_MOINS_UN ('PARAMETERS'), - AU_PLUS_UN ('PARAMETERS'), - AU_MOINS_UN ('SOLVEUR'), - AU_PLUS_UN ('SOLVEUR'), - AU_MOINS_UN ('POST_COMMANDS'), - AU_PLUS_UN ('POST_COMMANDS'), - AU_MOINS_UN ('MATERIAL','INCLUDE'), - AU_MOINS_UN ('SOURCE','INCLUDE'), - AU_MOINS_UN ('MESHGROUP'), - ), - ) # Fin JDC_CATA - -import opsCarmel - -#====================================================================== -# 1er bloc : bloc VERSION -# ce bloc est volontairement cache dans l IHM -#=================================================== - -VERSION = PROC ( nom = "VERSION", - op = None, - repetable = 'n', - UIinfo= {"groupes":("CACHE",)}, - ang= "version block definition", - -#---------------------- -# Liste des parametres -#---------------------- - - NUM = SIMP (statut="o", - typ="I", - defaut=1, - ang="version number of the physical model", - into=( 1,), - ), - FILETYPE = SIMP (statut="o", - typ="TXM", - defaut="PHYS", - ang="file type", - into=( "PHYS",), - ), - -) # Fin PROC VERSION - -PARAMETERS= PROC ( nom = "PARAMETERS", - op = None, - repetable = 'n', - UIinfo = { "groupes" : ( "1) Parametres", ) }, - ang= "General parameters for this study", - fr= u"Paramètres généraux de l'étude", -#---------------------- -# Liste des parametres -#---------------------- - RepCarmel=SIMP(typ='Repertoire', statut='o', - ang= "Code_Carmel3D executables directory", - fr= u"Répertoire contenant les programmes de Code_Carmel3D", - ), - Fichier_maillage = SIMP (statut="o", typ=("FichierNoAbs",'All Files (*)',), # l'existence du fichier n'est pas vérifiée - ang="Mesh file path (relative, aka file name, or absolute path).", - fr =u"Emplacement du fichier contenant le maillage (relatif, i.e., nom du fichier, ou absolu, i.e., chemin complet).", - ), - - Echelle_du_maillage = SIMP (statut='o', typ="TXM", defaut= "Millimetre", into = ("Metre", "Millimetre"), - ang="Mesh geometry units.", - fr =u"Unités géométriques du maillage.", - ), - - Formulation=SIMP(statut='o', typ='TXM', into=("TOMEGA","APHI"), - ang="Problem formulation.", - fr =u"Formulation du problème.", - ), - - FREQUENCY = SIMP (statut="o", - typ="R", - defaut=50.0, - ang = "enter the source frequency value, in Hz units", - fr = u"saisir la valeur de la fréquence de la source, en Hz", - val_min=0.0, - ), - - Realiser_topologie_gendof = SIMP (statut='o', typ="TXM", defaut="TRUE", into=("TRUE", "FALSE"), - ang="Build topology (.car file) using gendof.exe.", - fr =u"Construction de la topologie (fichier .car) en éxécutant gendof.exe.", - ), - Resoudre_probleme = SIMP (statut='o', typ="TXM", defaut="TRUE", into=("TRUE", "FALSE"), - ang="Solve the problem using fcarmel.exe.", - fr =u"Résolution du problème en éxécutant fcarmel.exe.", - ), - - Realiser_post_traitement_aposteriori = SIMP (statut='o', typ="TXM", defaut="TRUE", into=("TRUE", "FALSE"), - ang="Make post-processing using postprocess.exe.", - fr =u"Réalisation du post-traitement en éxécutant postprocess.exe.", - ), -) # Fin PROC PARAMETERS - -SOLVEUR = PROC ( nom ="SOLVEUR", - op=None, - repetable = 'n', - UIinfo= {"groupes":("1) Parametres",)}, - ang= "Solver parameters for this study", - fr= u"Paramètres liés au solveur de l'étude", - - Type= SIMP (statut="o", - typ="TXM", - into=("Solveur_lineaire"), - defaut='Solveur_lineaire', - ang="Linear solver only for harmonic problems.", - fr =u"Solveur linéaire seulement pour les problèmes fréquentiels.", - ), - - Solveur_lineaire=BLOC(condition="Type=='Solveur_lineaire'", - ang="This block contains whole linear solver properties.", - fr =u"Ce bloc contient toutes les propriétés du solveur linéaire.", - Methode_lineaire=SIMP(statut='o', typ='TXM', into=("Methode iterative BICGCR", "Methode directe MUMPS"), - ang="Algorithm used for this linear solver.", - fr =u"Méthode (algorithme) utilisée par ce solveur linéaire.", - ), - - Parametres_methode_iterative_BICGCR=BLOC(condition="Methode_lineaire=='Methode iterative BICGCR'", - ang="This block contains whole BICGCR algorithm properties used for the linear solver.", - fr =u"Ce bloc contient toutes les propriétés de la méthode BICGCR utilisée par le solveur linéaire.", - Precision=SIMP(statut='o', typ='R', defaut=1e-9, - ang="Accuracy on linear computations.", - fr =u"Précision du calcul linéaire.", - ), - Nombre_iterations_max=SIMP(statut='o', typ='I',defaut=10000, - ang="Maximal number of iterations.", - fr =u"Nombre maximal d'itérations.", - ), - Preconditionneur=SIMP(statut='f', typ='TXM', into=("Jacobi"), defaut='Jacobi', - ang="Preconditioner choice. Jacobi only.", - fr =u"Choix du préconditioneur. Jacobi disponible seulement.", - ), - ), - - Parametres_methode_directe_MUMPS=BLOC(condition="Methode_lineaire=='Methode directe MUMPS'", - ang="This block contains whole MUMPS properties used for the linear solver.", - fr =u"Ce bloc contient toutes les propriétés de la méthode MUMPS utilisée par le solveur linéaire.", - Type_de_matrice=SIMP(statut='o', typ='I', defaut=2, - ang="Matrix type (symetry). 2: symetric. Please refer to MUMPS documentation.", - fr =u"Type de matrice (symétrie). Choisir 2 pour une matrice symétrique. Expliqué dans la documentation MUMPS.", - ), - ICNTL_Control_Parameters=SIMP(statut='o', typ='I', defaut=7, - ang="ICNTL control parameter. Please refer to MUMPS documentation.", - fr =u"Paramètre de contrôle ICNTL. Expliqué dans la documentation MUMPS.", - ), - CNTL_Control_Parameters=SIMP(statut='o', typ='I', defaut=5, - ang="CNTL control parameter. Please refer to MUMPS documentation.", - fr =u"Paramètre de contrôle CNTL. Expliqué dans la documentation MUMPS.", - ), - ), - ), - ) - -POST_COMMANDS = PROC ( nom = "POST_COMMANDS", - op = None, - repetable = 'n', - UIinfo = { "groupes" : ( "1) Parametres", ) }, - ang= "post-processing commands .cmd or .post file", - fr= u"fichiers .cmd ou .post de commandes de post-traitement", - # Sous-parties, moins indentées pour améliorer la lisibilité - # Grandeurs globales - GLOBAL = FACT ( statut="f", - ang ="Post-processing of global quantities", - fr =u"Post-traitement des grandeurs globales", - ), - # Carte de tous les champs possibles - VISU = FACT ( statut="f", - ang ="Post-processing of field maps", - fr =u"Post-traitement des cartes de champ", - VISU_Format=SIMP(statut='o', typ='TXM', into=("MED", "VTK"), defaut="MED"), - VISU_Type=SIMP(statut='o', typ='TXM', into=("ELEMENT", "NOEUD"), defaut="ELEMENT"), - ), - # Ligne de coupe - CUTLINE = FACT ( statut="f", - ang = "Post-processing of one cutline", - fr = u"Post-traitement d'une ligne de coupe", - first_point = SIMP(statut='o', - typ = Tuple(3),validators = VerifTypeTuple(('R','R','R')), - ang="First point of the cutline (cartesian coordinates).", - fr=u"Point de départ (premier point) de la ligne de coupe (coordonnées cartésiennes).", - ), - - last_point = SIMP(statut='o', typ='R', min=3, max=3, - ang="Last point of the cutline (cartesian coordinates).", - fr=u"Point d'arrivée (dernier point) de la ligne de coupe (coordonnées cartésiennes)." - ), - number_of_points = SIMP(statut='o', typ='I', - ang="Number of points of the cutline.", - fr=u"Nombre de points de la ligne de coupe." - ), - name = SIMP(statut='o', typ='TXM', - ang="Name of the cutline, used in the output filename.", - fr=u"Nom de la ligne de coupe, utilisé dans le nom du fichier de sortie." - ), - field = SIMP(statut='o', typ='TXM', into=("H", "B", "J", "E"), - ang="Field on which the cutline is applied.", - fr=u"Champ pour lequel la ligne de coupe est définie." - ), - ), - # Plan de coupe - CUTPLANE = FACT ( statut="f", - ang = "Post-processing of one cutplane", - fr = u"Post-traitement d'un plan de coupe", - normal_vector = SIMP(statut='o', typ='TXM', into=("Ox", "Oy", "Oz"), - ang="Cutplane normal vector, i.e., perpendicular axis, 3 possible cartesian values: Ox, Oy, Oz.", - fr=u"Vecteur normal au plan de coupe, i.e., son axe perpendiculaire, parmi les 3 valeurs cartésiennes Ox, Oy et Oz." - ), - plane_position = SIMP(statut='o', typ='R', - ang="Cutplane position, i.e., its coordinate along the normal vector axis.", - fr=u"Position du plan de coupe, i.e., coordonnée le long de l'axe de vecteur normal." - ), - number_of_points = SIMP(statut='o', typ='I', min=2, max=2, - ang="Number of points on the cutplane, which define a cartesian grid along its canonical directions, e.g., Ox and Oy if plane normal to Oz.", - fr=u"Nombre de points sur le plan de coupe dans les deux directions (grille cartésienne), e.g., Ox et Oy si le plan est normal à Oz." - ), - name = SIMP(statut='o', typ='TXM', - ang="Name of the cutplane, used in the output filename.", - fr=u"Nom du plan de coupe, utilisé dans le nom du fichier de sortie." - ), - field = SIMP(statut='o', typ='TXM', into=("H", "B", "J", "E"), - ang="Field on which the cutplane is applied.", - fr=u"Champ pour lequel le plan de coupe est défini." - ), - ), - -) # Fin PROC POST_COMMANDS - - -#====================================================================== -# le fichier .PHYS contient 3 blocs et jusqu'a 3 niveaux de sous-blocs -# -#====================================================================== - -#=================================================================== -# 2eme bloc : bloc MATERIALS -#=================================================================== -# definition des matériaux utilisateurs -# a partir des materiaux de reference ou de materiaux generiques -#------------------------------------------------------------------- - -MATERIAL = OPER (nom = "MATERIAL", - op = None, - repetable = 'n', - UIinfo = { "groupes" : ( "2) Proprietes", ) }, - ang= "real material block definition", - fr= u"définition d'un matériau réel", - sd_prod= material, - # regles=EXCLUS('PERMITTIVITY','CONDUCTIVITY'), - -#--------------------------------------------------------------------- -# liste des matériaux de reference fournis par THEMIS et des -# materiaux generiques (les materiaux generiques peuvent etre utilises -# si aucun materiau de reference ne convient) -#--------------------------------------------------------------------- - TYPE = SIMP(statut='o', - typ='TXM', - into=( -# matériaux génériques - "DIELECTRIC", - "CONDUCTOR", - "ZINSULATOR","ZSURFACIC", - "NILMAT","EM_ISOTROPIC","EM_ANISOTROPIC", - ), - ang = "generic materials list", - fr = u"liste des matériaux génériques", - ), - -############################################################################## -# Remarque generale a tous les materiaux : -# pour conserver l'affichage scientifique le nombre derriere l'exposant doit -# etre strictement superieur au nombre de decimales -# - -##---------------------------------------------------------------------------------------------- -# Données de perméabilité, utilisée pour les diélectriques, conducteurs et impédances de surface -#----------------------------------------------------------------------------------------------- - #HAS_PERMEABILITY = BLOC(condition="TYPE in ('DIELECTRIC','CONDUCTOR','ZSURFACIC')", - -#------------------------------------------------ -# sous bloc niveau 2 : PERMEABILITY -#------------------------------------------------ -# - PERMEABILITY_properties = BLOC (condition="TYPE=='DIELECTRIC' or TYPE=='CONDUCTOR'", - PERMEABILITY = FACT ( statut="o", - ang ="Permeability properties", - fr =u"propriétés de perméabilité du matériau", - HOMOGENEOUS = SIMP (statut="o", - typ="TXM", - defaut="TRUE", - into = ("TRUE","FALSE"), - ang = "the material is homogeneous or not", - fr = u"le matériau est homogène ou non", - ), - ISOTROPIC = SIMP (statut="o", - typ="TXM", - defaut="TRUE", - into = ("TRUE","FALSE"), - ang = "the material is isotropic or not", - fr = u"le matériau est isotrope ou non", - ), - HOMOGENEOUS_ISOTROPIC_PROPERTIES = BLOC (condition="HOMOGENEOUS=='TRUE' and ISOTROPIC=='TRUE'", - LAW = SIMP (statut="o", - typ="TXM", - defaut="LINEAR", - into = ("LINEAR","NONLINEAR"), - ang = "harmonic or time-domain linear or nonlinear law only for homogeneous and isotropic materials", - fr = u"loi linéaire (fréquentielle ou temporelle) ou non (homogène et isotrope seulement)", - ), - VALUE = SIMP (statut="o", - typ="C", - defaut=1, - ang = "Relative linear permeability value, also used at first nonlinear iteration", - fr = u"Valeur de la perméabilité relative à l'air utilisée pour une loi linéaire ou pour la première itération non-linéaire", - ), - - NONLINEAR_LAW_PROPERTIES = BLOC (condition="LAW=='NONLINEAR'", - NATURE = SIMP (statut="o", - typ="TXM", - defaut="MARROCCO", - into = ("SPLINE","MARROCCO","MARROCCO+SATURATION"), - ang = "nature law", - fr = u"nature de la loi", - ), - SPLINE_LAW_PROPERTIES = BLOC (condition="NATURE=='SPLINE'", - FILENAME = SIMP (statut="o", - typ=("FichierNoAbs",'All Files (*)',), # l'existence du fichier n'est pas vérifiée - ang="data file name", - fr =u"nom du fichier contenant les mesures expérimentales B(H)", - ), - ), # Fin BLOC SPLINE_PROPERTIES - MARROCCO_LAW_PROPERTIES = BLOC (condition="NATURE in ('MARROCCO','MARROCCO+SATURATION')", - ALPHA = SIMP (statut="o", - typ="R", - defaut=0, - val_min=0, - ang="alpha parameter", - fr =u"paramètre alpha de la loi de Marrocco" , - ), - TAU = SIMP (statut="o", - typ="R", - defaut=0, - val_min=0, - ang="tau parameter", - fr =u"paramètre tau de la loi de Marrocco" , - ), - C = SIMP (statut="o", - typ="R", - defaut=0, - val_min=0, - ang="c parameter", - fr =u"paramètre c de la loi de Marrocco" , - ), - EPSILON = SIMP (statut="o", - typ="R", - defaut=0, - val_min=0, - ang="epsilon parameter", - fr =u"paramètre epsilon de la loi de Marrocco" , - ), - ), # Fin BLOC MARROCCO_LAW_PROPERTIES - SATURATION_LAW_PROPERTIES = BLOC (condition="NATURE=='MARROCCO+SATURATION'", - BMAX = SIMP (statut="o", - typ="R", - defaut=0, - val_min=0, - ang="intersection B", - fr = u"valeur de B marquant la fin de la loi de Marrocco et le début du raccord à la loi de saturation", - ), - HSAT = SIMP (statut="o", - typ="R", - defaut=0, - val_min=0, - ang="H value", - fr = u"valeur de H définissant la loi de saturation", - ), - BSAT = SIMP (statut="o", - typ="R", - defaut=0, - val_min=0, - ang="B value", - fr = u"valeur de B définissant la loi de saturation", - ), - JOIN = SIMP (statut="o", - typ="TXM", - defaut="SPLINE", - into= ("SPLINE","PARABOLIC","LINEAR"), - ang="type of join between laws", - fr =u"type de raccord entre la loi choisie et la loi de saturation" , - ), - ), # Fin BLOC SATURATION_LAW_PROPERTIES - APPLIEDTO = SIMP (statut="o", - typ="TXM", - into=("B(H)&H(B)","B(H)","H(B)"), - defaut="B(H)&H(B)", - ang="join applied to", - fr =u"Le raccord tel que défini est appliqué à la courbe B(H) seulement, à la courbe H(B) seulement ou aux deux courbes à la fois. Dans les deux premiers cas, le raccord de la courbe H(B) est inversé numériquement à partir du raccord défini pour la courbe B(H), et vice-versa.", - ), - ), # Fin BLOC NONLINEAR_LAW_PROPERTIES - ), # Fin BLOC HOMOGENEOUS_ISOTROPIC_PROPERTIES - ), - ),# fin FACT PERMEABILITY - - -##---------------------------------------------------------------------------------------------- -# Données de conductivité, utilisée pour les conducteurs et impédances de surface -#----------------------------------------------------------------------------------------------- - #HAS_CONDUCTIVITY = BLOC(condition="TYPE in ('CONDUCTOR','ZSURFACIC')", -#------------------------------------------------ -# sous bloc niveau 2 : CONDUCTIVITY -#------------------------------------------------ - - CONDUCTIVITY_properties= BLOC (condition="TYPE=='CONDUCTOR'", - CONDUCTIVITY = FACT ( statut="o", - ang ="Permittivity properties", - fr = u"propriétés de permittivité du matériau", - HOMOGENEOUS = SIMP (statut="o", - typ="TXM", - defaut="TRUE", - into = ("TRUE","FALSE"), - ang = "the material is homogeneous or not", - fr = u"le matériau est homogène ou non", - ), - ISOTROPIC = SIMP (statut="o", - typ="TXM", - defaut="TRUE", - into = ("TRUE","FALSE"), - ang = "the material is isotropic or not", - fr = u"le matériau est isotrope ou non", - ), - HOMOGENEOUS_ISOTROPIC_PROPERTIES = BLOC (condition="HOMOGENEOUS=='TRUE' and ISOTROPIC=='TRUE'", - LAW = SIMP (statut="o", - typ="TXM", - defaut="LINEAR", - into = ("LINEAR",), - ang = "linear law", - fr = u"loi linéaire", - ), - VALUE = SIMP (statut="o", - typ="C", - defaut=1, - ang = "enter a complex relative value", - fr = u"saisir une valeur complexe relative", - ), - ), # Fin BLOC HOMOGENEOUS_ISOTROPIC_PROPERTIES - ), - - ), - - - # fin FACT CONDUCTIVITY - - - -################################################################################################### -#--------------------------------------------- -# sous bloc niveau 1 -#--------------------------------------- -# matériau generique de type ZINSULATOR -#--------------------------------------- - -# aucun parametre a saisir pour ce materiau - - -################################################################################################### -#--------------------------------------------- -# sous bloc niveau 1 -#--------------------------------------------- -# matériau generique de type NILMAT (fictif) -#--------------------------------------------- - -# aucun parametre a saisir pour ce materiau - - -################################################################################################### -#---------------------------------------------------------- -# sous bloc niveau 1 : EM_ISOTROPIC_FILES -#------------------------------------------------- -# matériau isotropique non homogene generique -#------------------------------------------------- - EM_ISOTROPIC_properties=BLOC(condition="TYPE=='EM_ISOTROPIC'", - regles =( - AU_MOINS_UN ('CONDUCTIVITY_File','PERMEABILITY_File'), - ), - CONDUCTIVITY_File = SIMP (statut="f", - typ=("FichierNoAbs",'MED Files (*.med)',), - ang="CONDUCTIVITY MED data file name", - fr = u"nom du fichier MED CONDUCTIVITY", - ), - PERMEABILITY_File = SIMP (statut="f", - typ=("FichierNoAbs",'MED Files (*.med)',), - ang="PERMEABILITY MED data file name", - fr = u"nom du fichier MED PERMEABILITY", - ), - ), # fin bloc EM_ISOTROPIC_properties - - -#--------------------------------------------------- -# matériau anisotropique non homogene generique -#--------------------------------------------------- - EM_ANISOTROPIC_properties=BLOC(condition="TYPE=='EM_ANISOTROPIC'", - regles =( - AU_MOINS_UN ('CONDUCTIVITY_File','PERMEABILITY_File'), - ), - PERMEABILITY_File = SIMP (statut="f", - #typ=("Fichier",'.mater Files (*.mater)'), # le fichier doit exister dans le répertoire d'où on lancer Eficas si le fichier est défini par un nom relatif, ce qui est trop contraignant - #typ=("Fichier",'.mater Files (*.mater)','Sauvegarde'), # Le fichier peut ne pas exister, mais on propose de le sauvegarder et d'écraser un fichier existant : pas approprié - typ=("FichierNoAbs",'.mater Files (*.mater)'), # l'existence du fichier n'est pas vérifiée, mais on peut le sélectionner quand même via la navigateur. C'est suffisant et permet une bibliothèque de matériaux. - ang="PERMEABILITY .mater data file name", - fr ="nom du fichier .mater PERMEABILITY", - ), - CONDUCTIVITY_File = SIMP (statut="f", - typ=("FichierNoAbs",'.mater Files (*.mater)'), - ang="CONDUCTIVITY .mater data file name", - fr ="nom du fichier .mater CONDUCTIVITY", - ), - ), # fin bloc EM_ANISOTROPIC_properties - - -#------------------------------------------------------------------ -# Données de permittivité, utilisée pour les diélectriques seulement -#------------------------------------------------------------------- - #HAS_PERMITTIVITY = BLOC(condition="TYPE == 'DIELECTRIC'", - -#------------------------------------------------ -# sous bloc niveau 2 : PERMITTIVITY -#------------------------------------------------ - - Utiliser_la_permittivite = SIMP (statut='o', - typ='TXM', - into = ("OUI","NON"), - defaut="NON", - ang ="Optionnaly use permittivity or not (default)", - fr = u"Utilisation optionnelle de la permittivité du matériau. Pas d'utilisation par défaut.", - ), - PERMITTIVITY_properties = BLOC (condition="Utiliser_la_permittivite=='OUI'", - PERMITTIVITY = FACT ( statut="o", - ang ="Permittivity properties", - fr = u"propriétés de permittivité du matériau", - HOMOGENEOUS = SIMP (statut="o", - typ="TXM", - defaut="TRUE", - into = ("TRUE","FALSE"), - ang = "the material is homogeneous or not", - fr = u"le matériau est homogène ou non", - ), - ISOTROPIC = SIMP (statut="o", - typ="TXM", - defaut="TRUE", - into = ("TRUE","FALSE"), - ang = "the material is isotropic or not", - fr = u"le matériau est isotrope ou non", - ), - HOMOGENEOUS_ISOTROPIC_PROPERTIES = BLOC (condition="HOMOGENEOUS=='TRUE' and ISOTROPIC=='TRUE'", - LAW = SIMP (statut="o", - typ="TXM", - defaut="LINEAR", - into = ("LINEAR",), - ang = "linear law", - fr = u"loi linéaire", - ), - VALUE = SIMP (statut="o", - typ="C", - defaut=1, - ang = "enter a complex relative value", - fr = u"saisir une valeur complexe relative", - ), - ), # Fin BLOC HOMOGENEOUS_ISOTROPIC_PROPERTIES - ), - ),# fin FACT PERMITTIVITY - - ) # fin OPER MATERIAL - - - -############################################################################## -# Remarque generale a tous les materiaux : -# pour conserver l'affichage scientifique le nombre derriere l'exposant doit -# etre strictement superieur au nombre de decimales - - -#=================================================================== -# 3eme bloc : bloc SOURCES -#==================================================================== -# definition des differentes sources qui seront dans le bloc SOURCES -#------------------------------------------------------------------- - - - -SOURCE = OPER ( nom = "SOURCE", - op = None, - repetable = 'n', - UIinfo = { "groupes" : ( "2) Proprietes", ) }, - ang = "source definition", - fr = u"définition d'une source", - sd_prod = source, -# regles = (UN_PARMI('STRANDED_INDUCTOR','HPORT','EPORT'), # choix d'un type de source -# UN_PARMI('WAVEFORM_CONSTANT','WAVEFORM_SINUS'), # choix d'une forme de source - - -#---------------------------------------------------------- -# sous bloc niveau 1 : stranded inductor source -##--------------------------------------------------------- - Type=SIMP(statut='o', - typ='TXM', - into=("STRANDED_INDUCTOR", "HPORT", "EPORT"), - ang = "Source type", - fr = u"Type de source", - ), - - STRANDED_INDUCTOR_properties = BLOC (condition="Type=='STRANDED_INDUCTOR'", - STRANDED_INDUCTOR = FACT(statut='o', - ang="Stranded inductor source", - fr=u"source de type inducteur bobiné", - NTURNS = SIMP (statut="o", - typ="I", - defaut=1, - ang="number of turns in the inductor", - fr= u"nombre de tours dans l'inducteur bobiné", - ), - TYPE = SIMP (statut="o", - typ="TXM", - defaut="CURRENT", - into=("CURRENT",), - fr= u"source de type courant", - ang="current source type", - ), - ), - ),# FIN de FACT STRANDED_INDUCTOR - HPORT_properties = BLOC (condition="Type=='HPORT'", - HPORT = FACT(statut='o', - ang="Magnetic port source", - fr=u"source de type port magnétique", - TYPE = SIMP (statut="o", - typ="TXM", - into=("VOLTAGE","CURRENT"), - fr= u"source de type tension ou courant", - ang="voltage or current source type", - ), - ), - ),# FIN de FACT HPORT - EPORT_properties = BLOC (condition="Type=='EPORT'", - EPORT = FACT(statut='o', - ang="Electric port source", - fr=u"source de type port électrique", - TYPE = SIMP (statut="o", - typ="TXM", - into=("VOLTAGE","CURRENT"), - fr= u"source de type tension ou courant", - ang="voltage or current source type", - ), - ), - ),# FIN de FACT EPORT - - Signal=SIMP(statut='o', - typ='TXM', - into=("WAVEFORM_CONSTANT", "WAVEFORM_SINUS"), - ang = "Signal type, i.e., source evolution shape", - fr = u"Type de signal, i.e., forme de la source", - ), - WAVEFORM_CONSTANT_properties = BLOC (condition="Signal=='WAVEFORM_CONSTANT'", - WAVEFORM_CONSTANT = FACT(statut='o', - ang="constant source", - fr=u"source constante", - AMPLITUDE = SIMP (statut="o", - typ="R", - defaut=1, - ang = "enter the source magnitude value, in A or V units", - fr = u"saisir la valeur de l'amplitude de la source, en unités A ou V", - ), - ), - ),# FIN de FACT WAVEFORM_CONSTANT - - WAVEFORM_SINUS_properties = BLOC (condition="Signal=='WAVEFORM_SINUS'", - WAVEFORM_SINUS = FACT(statut='o', - ang="sinus variation source", - fr=u"source variant avec une forme sinusoïdale, définie par son amplitude, sa fréquence et sa phase", - AMPLITUDE = SIMP (statut="o", - typ="R", - defaut=1, - ang = "enter the source magnitude value, in A or V units", - fr = u"saisir la valeur de l'amplitude de la source, en unités A ou V", - ), - FREQUENCY = SIMP (statut="o", - typ="R", - defaut=0.0, - ang = "enter the source frequency value, in Hz units", - fr = u"saisir la valeur de la fréquence de la source, en Hz", - ), - PHASE = SIMP (statut="o", - typ="R", - defaut=0.0, - ang = "enter the source phase value, in degrees units", - fr = u"saisir la valeur de la phase de la source, en degrés", - ), - ), - ),# FIN de FACT WAVEFORM_SINUS - - -)# Fin OPER SOURCE - - -STRANDED_INDUCTOR_GEOMETRY=OPER(nom="STRANDED_INDUCTOR_GEOMETRY", - op=None, - repetable = 'n', - sd_prod=stranded_inductor_geometry, - UIinfo = { "groupes" : ( "2) Proprietes", ) }, - ang = "Geometry properties (shape, direction, etc.) for this stranded inductor", - fr = u"Propriétés géométriques de cet inducteur bobiné, e.g., forme, direction, sens", - - Forme=SIMP(statut='o', typ="TXM", into=("Droit", "Circulaire"), - ang = "Stranded inductor shape. Straight or circular.", - fr = u"Forme de l'inducteur bobiné (complet ou morceau) : droit ou circulaire.", - ), - Propriete= BLOC (condition="Forme=='Circulaire'", - Centre=SIMP(statut='o',typ='R',min=3,max=3, - ang = "Circular stranded inductor rotation center (cartesian coordinates).", - fr = u"Centre de rotation, en coordonnées cartésiennes, de l'inducteur bobiné (complet ou morceau) circulaire.", - ), - ), - Direction=SIMP(statut='o',typ='R',min=3,max=3, - ang = "Stranded inductor direction (or rotation) axis for the straight (circular) inductor (cartesian coordinates).", - fr = u"Axe indiquant la direction de l'inducteur bobiné droit, ou l'axe de rotation (support : Centre) de l'inducteur circulaire, en coordonnées cartésiennes.", - ), - Section=SIMP(statut='o', typ='R', - ang = "Stranded inductor section (m^2).", - fr = u"Section de l'inducteur bobiné, en m^2.", - ), -) - -#========================================================= -# création d'une macro pour traiter les INCLUDE -# -#---------------------------------------------------------- - -INCLUDE = MACRO ( nom = "INCLUDE", - op = None, - UIinfo = { "groupes" : ( "3) Bibliotheque", ) }, - sd_prod = opsCarmel.INCLUDE, - op_init = opsCarmel.INCLUDE_context, - fichier_ini = 1, - ang = "Used in order to add external material, source, etc. libraries to the study.", - fr = u"Permet d'utiliser des bibliothèques de matériaux, sources, etc., dans l'étude.", - - FileName = SIMP ( statut = "o", - typ = ('Fichier', 'comm Files (*.comm);;All Files (*)',), - fr = u"Emplacement du fichier (chemin absolu ou relatif) contenant la bibliothèque des matériaux, etc.", - ang = "material library file (full or relative path)", - ), - - ) # Fin MACRO - -MESHGROUP = OPER (nom = "MESHGROUP", - op = None, - repetable = 'n', - UIinfo= {"groupes":("4) Maillage",)}, - fr= u"attribution d'un matériau ou d'une source à un groupe du maillage", - ang = "mesh group association to material or source", - sd_prod= grmaille, - regles =( - EXCLUS ('MATERIAL','SOURCE'), - ), - -# ---------------------------------------------------------- -# le mot cle SIMP doit etre facultatif sinon la recuperation -# des groupes de mailles sous SALOME ne fonctionne pas car -# le concept ne peut pas etre nomme car non valide -#----------------------------------------------------------- - Domaine = SIMP (statut="f", - typ=(grmaille, 'TXM'), - defaut="default", - ang="Domain used with stranded inductors or topological holes.", - fr =u"Domaine utilisé par les inducteurs bobinés ou les trous topologiques.", - ), - - MATERIAL = SIMP (statut="f", - typ=(material), - ang="name of the linked real or imaginary material", - fr =u"nom du matériau réel ou imaginaire associé", - ), - SOURCE = SIMP (statut="f", - typ=(source,), - ang="name of the linked source", - fr =u"nom de la source associée", - ), - STRANDED_INDUCTOR_GEOMETRY = SIMP ( statut="f", - typ=(stranded_inductor_geometry), - ang="name of the linked stranded inductor geometry", - fr =u"nom de la géométrie d'inducteur bobiné associée", - ) - ) - -# -------------------------------------------------- -# definition de macro-groupe de mailles -# il est associe a un materiau, source ou inducteur bobiné en morceaux -#--------------------------------------------------- - -MACRO_GROUPE = OPER (nom="MACRO_GROUPE", - op=None, - repetable='n', - sd_prod=macro_groupe, - UIinfo = { "groupes" : ( "4) Maillage", ) }, - fr=u"Macro-groupe = liste de groupes de maillage, e.g., inducteur bobiné en morceaux.", - ang=u"Macro-groupe = liste of mesh groups, e.g., stranded inductor defined as several parts.", - regles =( - EXCLUS ('MATERIAL','SOURCE'), - ), - Domaine = SIMP (statut='f', - typ=(grmaille, 'TXM'), - defaut="default", - ang="Domain used with stranded inductors or topological holes.", - fr =u"Domaine utilisé par les inducteurs bobinés ou les trous topologiques.", - ), - - MATERIAL = SIMP (statut="f", - typ=(material,), - ang="name of the linked real or imaginary material", - fr =u"nom du matériau réel ou imaginaire associé", - ), - SOURCE = SIMP (statut="f", - typ=(source,), - ang="name of the linked source", - fr =u"nom de la source associée", - ), - LISTE_MESHGROUP=SIMP(statut='f',# facultatif pour l'acquisition automatique des groupes du maillage - typ=(grmaille,), - min=1,max=100, - ang="Ordered list of associated mesh groups, e.g., stranded inductor parts or topological hole parts.", - fr =u"Liste ordonnée de groupes de maillage associés entre eux, e.g., morceaux d'un inducteur bobiné ou d'un trou topologique.", - ), -) # Fin OPER diff --git a/Carmel3D/E24 b/Carmel3D/E24 deleted file mode 100644 index bc906b35..00000000 --- a/Carmel3D/E24 +++ /dev/null @@ -1,13 +0,0 @@ - 0. 0. - 1000.000 1.200000 - 1200.000 1.270000 - 1600.000 1.350000 - 3000.000 1.520000 - 6000.000 1.660000 - 10000.00 1.750000 - 20000.00 1.900000 - 30000.00 2.000000 - 49944.66 2.101082 - 80000.00 2.200000 - 132000.0 2.300000 - 250000.0 2.400000 diff --git a/Carmel3D/FEV1000 b/Carmel3D/FEV1000 deleted file mode 100644 index 7324073a..00000000 --- a/Carmel3D/FEV1000 +++ /dev/null @@ -1,31 +0,0 @@ - 0.0000000 0.0000000 - 54.38605 0.5687161 - 125.0879 0.9107189 - 217.0004 1.133191 - 336.4865 1.285649 - 491.8185 1.394206 - 693.7501 1.474002 - 956.2611 1.534492 - 1297.525 1.581962 - 1741.169 1.620847 - 2317.906 1.654481 - 3067.663 1.685556 - 4042.348 1.716430 - 5309.438 1.749361 - 6956.655 1.786698 - 9098.037 1.831067 - 11881.83 1.882414 - 15500.77 1.931322 - 20205.39 1.976478 - 26321.39 2.017967 - 34272.19 2.056381 - 44608.23 2.092746 - 58045.08 2.128448 - 75512.98 2.165203 - 98221.27 2.205061 - 127742.0 2.250466 - 166119.0 2.304362 - 216009.1 2.370358 - 280866.3 2.452947 - 308952.9 2.488242 - diff --git a/Carmel3D/FEV470 b/Carmel3D/FEV470 deleted file mode 100644 index d3281a2f..00000000 --- a/Carmel3D/FEV470 +++ /dev/null @@ -1,31 +0,0 @@ - 0. 0. - 40.28202 0.3233068 - 80.56404 0.6466137 - 133.2969 0.8959763 - 196.5763 1.092960 - 272.5116 1.235844 - 363.6339 1.322937 - 472.9807 1.364753 - 604.1969 1.403417 - 761.6563 1.442002 - 950.6076 1.479882 - 1177.349 1.516478 - 1449.439 1.551293 - 1775.947 1.583937 - 2167.756 1.614135 - 2637.928 1.641730 - 3202.133 1.666674 - 3879.180 1.689014 - 4691.636 1.708866 - 5666.584 1.726406 - 6836.521 1.741841 - 8240.445 1.755403 - 9925.154 1.767332 - 11946.81 1.777868 - 14372.79 1.787249 - 17283.96 1.795704 - 20777.38 1.803454 - 24969.48 1.810715 - 30000.00 1.817699 - 33000.00 1.821469 - diff --git a/Carmel3D/FEV600 b/Carmel3D/FEV600 deleted file mode 100644 index 5281d05d..00000000 --- a/Carmel3D/FEV600 +++ /dev/null @@ -1,31 +0,0 @@ - 0. 0. - 40.28202 0.5217850 - 80.56404 1.043570 - 133.2969 1.219489 - 196.5763 1.330541 - 272.5116 1.406615 - 363.6339 1.461884 - 472.9807 1.503975 - 604.1969 1.537396 - 761.6563 1.565024 - 950.6076 1.588824 - 1177.349 1.610226 - 1449.439 1.630343 - 1775.947 1.650098 - 2167.756 1.670444 - 2637.928 1.693085 - 3202.133 1.718405 - 3879.180 1.746379 - 4691.636 1.776860 - 5666.584 1.809549 - 6836.521 1.843973 - 8240.445 1.879470 - 9925.154 1.915191 - 11946.81 1.950107 - 14372.79 1.983036 - 17283.96 2.012676 - 20777.38 2.037636 - 24969.48 2.056473 - 30000.00 2.067699 - 33000.00 2.071469 - diff --git a/Carmel3D/FEV800 b/Carmel3D/FEV800 deleted file mode 100644 index 810c3ab6..00000000 --- a/Carmel3D/FEV800 +++ /dev/null @@ -1,30 +0,0 @@ - 0. 0. - 40.28202 0.3324555 - 80.56404 0.6649110 - 133.2969 0.9138392 - 196.5763 1.111536 - 272.5116 1.260901 - 363.6339 1.364212 - 472.9807 1.422949 - 604.1969 1.451498 - 761.6563 1.480342 - 950.6076 1.510200 - 1177.349 1.540614 - 1449.439 1.571091 - 1775.947 1.601134 - 2167.756 1.630277 - 2637.928 1.658111 - 3202.133 1.684309 - 3879.180 1.708632 - 4691.636 1.730937 - 5666.584 1.751169 - 6836.521 1.769348 - 8240.445 1.785560 - 9925.154 1.799934 - 11946.81 1.812635 - 14372.79 1.823846 - 17283.96 1.833761 - 20777.38 1.842578 - 24969.48 1.850493 - 30000.00 1.857699 - 33000.00 1.861469 diff --git a/Carmel3D/HA600 b/Carmel3D/HA600 deleted file mode 100644 index 4c4a877c..00000000 --- a/Carmel3D/HA600 +++ /dev/null @@ -1,30 +0,0 @@ - 0. 0. - 40.28202 0.3951843 - 80.56404 0.7903686 - 133.2969 0.9716319 - 196.5763 1.095780 - 272.5116 1.185383 - 363.6339 1.252692 - 472.9807 1.304966 - 604.1969 1.346809 - 761.6563 1.381319 - 950.6076 1.410688 - 1177.349 1.436551 - 1449.439 1.460186 - 1775.947 1.483959 - 2167.756 1.510788 - 2637.928 1.540831 - 3202.133 1.574084 - 3879.180 1.610407 - 4691.636 1.649490 - 5666.584 1.690835 - 6836.521 1.733738 - 8240.445 1.777294 - 9925.154 1.820413 - 11946.81 1.861850 - 14372.79 1.900252 - 17283.96 1.934193 - 20777.38 1.962221 - 24969.48 1.982877 - 30000.00 1.994699 - 33000.00 1.998469 diff --git a/Carmel3D/M600_65 b/Carmel3D/M600_65 deleted file mode 100644 index cfc3f3ba..00000000 --- a/Carmel3D/M600_65 +++ /dev/null @@ -1,30 +0,0 @@ - 0. 0. - 0.1676396E-03 0.2082807E-05 - 0.3352792E-03 0.4165609E-05 - 0.7823178E-03 0.9719718E-05 - 0.1676395E-02 0.2082782E-04 - 0.3464548E-02 0.4304356E-04 - 0.7040854E-02 0.8747321E-04 - 0.1419346E-01 0.1763252E-03 - 0.2849867E-01 0.3540000E-03 - 0.5710909E-01 0.7092333E-03 - 0.1143299 0.1419235E-02 - 0.2287715 0.2837381E-02 - 0.4576545 0.5666269E-02 - 0.9154205 0.1129461E-01 - 1.830952 0.2243500E-01 - 3.662015 0.4426165E-01 - 7.324139 0.8618276E-01 - 14.64838 0.1637067 - 29.29687 0.2975280 - 58.59383 0.5032464 - 117.1877 0.7693985 - 234.3755 1.046909 - 468.7509 1.279960 - 937.5016 1.447085 - 1875.003 1.563602 - 3750.004 1.671697 - 7500.005 1.775926 - 15000.00 1.854134 - 30000.00 1.897699 - 33000.00 1.901469 diff --git a/Carmel3D/M6X2ISO1 b/Carmel3D/M6X2ISO1 deleted file mode 100644 index e6facc82..00000000 --- a/Carmel3D/M6X2ISO1 +++ /dev/null @@ -1,16 +0,0 @@ - 0. 0. - 477.0000 1.100000 - 922.9141 1.633186 - 1337.513 1.756419 - 4292.604 1.852735 - 6366.000 1.880000 - 7958.000 1.900000 - 15915.00 1.980000 - 23873.00 2.020000 - 31830.00 2.045000 - 47746.00 2.080000 - 64329.63 2.111715 - 86767.84 2.145308 - 148638.1 2.239294 - 238700.0 2.355000 - 318300.0 2.420000 diff --git a/Carmel3D/M6X_epsilon.mater b/Carmel3D/M6X_epsilon.mater deleted file mode 100644 index c1c50ef0..00000000 --- a/Carmel3D/M6X_epsilon.mater +++ /dev/null @@ -1 +0,0 @@ - 1.0 diff --git a/Carmel3D/M6X_homog_mu.mater b/Carmel3D/M6X_homog_mu.mater deleted file mode 100644 index 57d6c245..00000000 --- a/Carmel3D/M6X_homog_mu.mater +++ /dev/null @@ -1 +0,0 @@ - 1.5331206E4-j.1.6906576E4 1.9440262E3-j.2.6880635E1 1.6315E1 diff --git a/Carmel3D/M6X_homog_sigma.mater b/Carmel3D/M6X_homog_sigma.mater deleted file mode 100644 index 6597c154..00000000 --- a/Carmel3D/M6X_homog_sigma.mater +++ /dev/null @@ -1 +0,0 @@ - 0.0 diff --git a/Carmel3D/M6X_lineaire_mu.mater b/Carmel3D/M6X_lineaire_mu.mater deleted file mode 100644 index 8698c6b7..00000000 --- a/Carmel3D/M6X_lineaire_mu.mater +++ /dev/null @@ -1 +0,0 @@ - 1.60000E4 2.0000E3 3.0000E1 diff --git a/Carmel3D/M6X_lineaire_sigma.mater b/Carmel3D/M6X_lineaire_sigma.mater deleted file mode 100644 index a4cfcedc..00000000 --- a/Carmel3D/M6X_lineaire_sigma.mater +++ /dev/null @@ -1 +0,0 @@ - 1.492537313E6. diff --git a/Carmel3D/M6X_mu.mater b/Carmel3D/M6X_mu.mater deleted file mode 100644 index fa1141c2..00000000 --- a/Carmel3D/M6X_mu.mater +++ /dev/null @@ -1,22 +0,0 @@ - 0. 0. 0. 0. - 625.9739 1.572659 477.0000 0.7020000 - 796.0000 1.665000 796.0000 1.170000 - 1719.099 1.786521 1591.000 1.310000 - 3183.000 1.810000 3183.000 1.430000 - 3979.000 1.830000 3979.000 1.475000 - 4775.000 1.850000 4775.000 1.510000 - 5570.000 1.865000 5570.000 1.540000 - 6366.000 1.880000 6366.000 1.570000 - 7958.000 1.900000 7958.000 1.620000 - 11937.00 1.950000 11937.00 1.695000 - 15915.00 1.980000 15915.00 1.760000 - 19098.00 2.000000 19098.00 1.810000 - 31830.00 2.045000 31830.00 1.930000 - 47746.00 2.080000 47746.00 2.010000 - 63662.00 2.110000 63662.00 2.070000 - 79577.00 2.145000 79577.00 2.120000 - 111041.0 2.200000 111041.0 2.190000 - 143200.0 2.240000 143200.0 2.255000 - 198900.0 2.310000 198900.0 2.325000 - 238700.0 2.355000 238700.0 2.360000 - 318300.0 2.420000 318300.0 2.420000 diff --git a/Carmel3D/__init__.py b/Carmel3D/__init__.py deleted file mode 100644 index 40a96afc..00000000 --- a/Carmel3D/__init__.py +++ /dev/null @@ -1 +0,0 @@ -# -*- coding: utf-8 -*- diff --git a/Carmel3D/ajoutGroupe.py b/Carmel3D/ajoutGroupe.py deleted file mode 100644 index fed8ea8d..00000000 --- a/Carmel3D/ajoutGroupe.py +++ /dev/null @@ -1,203 +0,0 @@ -# -*- coding: iso-8859-1 -*- - -import re # module interne utilisé pour vérifier la validité du nom du maillage - -concept_re=re.compile(r'[a-zA-Z_]\w*$') # nom de maillage valide s'il correspond à un identifiant (variable) Python possible. Basé sur Ihm/I_Etape.py:nommeSd, qui fait foi - -def handleAjoutGroupSansFiltre(editor,listeGroup): - """code_Carmel temporel : obtention des groupes de maille du maillage selectionne dans Salome - Les groupes de mailles ne sont pas filtrés. - La creation du MESH_GROUPE n'est donc pas typé. - ATTENTION! Le nom devenant un concept, i.e. une variable Python, certains signes sont interdits dans le nom du groupe, - e.g. les signes moins (-), plus (+), etc. Une erreur est retournee en ce cas. - """ - # retourne le dernier element du JdC, ou None si le JdC est vide, afin de savoir a quelle place ajouter les MESH_GROUPE (en dernier) - debug = True - try: - dernier=editor.tree.racine.children[-1] - except: - dernier=None - for groupe in listeGroup: # parcours de la liste de tous les groupes de maille trouves (volumiques et les autres), puis ecriture du MESHGROUP systématique sans analyse de nom multiple - if debug: print 'groupe=', groupe - if not concept_re.match(groupe): # Le nom du groupe de maillage doit etre un identificateur Python - raise ValueError, "Ce nom de groupe ("+groupe+") ne peut pas etre utilise car il ne peut pas servir de concept a cause de caracteres interdits, e.g. signes moins (-), plus (+), etc." - try: # test de conformite du nom pour un concept, i.e. une variable Python - #exec(groupe+'=None') # le test consiste a tenter de creer une variable, initialisee a None, a partir du nom, e.g. toto=None est bon mais toto-foo=None ne fonctionne pas. - # creation du groupe MESH_GROUPE - if dernier != None: - new_node = dernier.append_brother("MESHGROUP",'after') - else: - new_node=editor.tree.racine.appendChild("MESHGROUP",pos='first') - test,mess = new_node.item.nommeSd(groupe) # precision du nom (de concept) du groupe - if debug: print u"ce nom de groupe ("+groupe+") est utilise..." - dernier=new_node # mise a jour du dernier noeud du JdC, afin de rajouter les autres MESH_GROUPE eventuels a sa suite - except: - raise ValueError, "Ce nom de groupe ("+groupe+") pose un probleme inconnu" - -def handleAjoutGroupAvecFiltre(editor,listeGroup): - """CARMEL3D : obtention des groupes de maille du maillage selectionne dans Salome - Les groupes de mailles sont filtres en utilisant une liste des prefixes autorises pour code Code_Carmel3D, - i.e. un nom de groupe de mailles est DIEL_toto_foo par exemple, qui deviendra toto_foo. - La creation du MESH_GROUPE est type (materiau ou source), d'après le prefixe. - ATTENTION! Le nom devenant un concept, i.e. une variable Python, certains signes sont interdits dans le nom du groupe, - e.g. les signes moins (-), plus (+), etc. Une erreur est retournee en ce cas. - """ - from string import join - debug = False #True - listePrefixesMateriaux = ('DIEL', 'NOCOND','COND', 'ZS', 'ZJ', 'NILMAT') # liste des prefixes pour les materiaux - listePrefixesSourcesHorsInducteur = ('EPORT', 'HPORT') # liste des prefixes pour les sources - listePrefixesInducteurBobine = ('CURRENT', ) # listes des prefixes autorises pour definir la geometrie d'un inducteur bobiné complet ou en morceaux - listePrefixesTrous = ('TOPO', ) # listes des prefixes autorises pour definir la geometrie d'un trou complet ou en morceaux - listePrefixesBBK = ('BBK', ) # listes des prefixes autorises pour definir le groupe d'éléments servant de boîte englobante dans laquelle est calculée K (inducteur bobiné ou topo). - listePrefixes = listePrefixesMateriaux + listePrefixesSourcesHorsInducteur +listePrefixesInducteurBobine + listePrefixesTrous + listePrefixesBBK # liste de tous les prefixes autorises - listePrefixesGroupesMultiples = ('CURRENT', 'TOPO' ) # listes des prefixes autorises pour groupes multiples, i.e. plusieurs groupes de mailles associes en une seule caracteistique materiau ou source - if debug: - print "listePrefixes=", listePrefixes - print "listePrefixesGroupesMultiples=", listePrefixesGroupesMultiples - sep = '_' # separateur entre le prefixe et le nom reel du groupe (qui peut lui aussi contenir ce separateur) - dictGroupesMultiples = {} # dictionnaire contenant les noms reels possibles de groupes multiples et leur occurence dans la liste, i.e. 1 par defaut et > 1 pour une groupe multiple, e.g. pour un inducteur bobine en plusieurs morceaux CURRENT_toto_1, CURRENT_toto_2, ce dictionnaire contiendra 'toto':2 - for groupe in listeGroup: - partiesGroupe = groupe.split(sep) # parties du nom, separees initialement par le separateur du prefixe, e.g. 'CURRENT_toto_foo' devient ['CURRENT','toto','foo'] et 'toto' devient ['toto'] - prefix = partiesGroupe[0] # prefixe possible de ce nom, ou nom lui-meme - if len(partiesGroupe) >= 3 and prefix in listePrefixesGroupesMultiples: # prefixe existant et autorise - nomGroupeMultiple = partiesGroupe[1] # nom possible d'un groupe multiple - if dictGroupesMultiples.has_key(nomGroupeMultiple): # comptage du nombre d'occurrences de ce nom de groupe multiple possible - dictGroupesMultiples[nomGroupeMultiple]['nombre'] += 1 - dictGroupesMultiples[nomGroupeMultiple]['membres'].append(join(partiesGroupe[1:], sep)) - else: - dictGroupesMultiples[nomGroupeMultiple] = {'type': prefix,'nombre':1, 'membres':[join(partiesGroupe[1:], sep)]} - for groupe in dictGroupesMultiples.keys(): # recherche de tous les groupes multiples. Boucle ignorée si aucun groupe multiple. - dictGroupesMultiples[groupe]['membres'].sort() # tri alphabétique des membres du groupe multiple, qui est l'ordre lu par gendof.exe/MED (ordre lexicographique). - dictGroupesMultiples[groupe]['membres'] = tuple(dictGroupesMultiples[groupe]['membres']) # transformation en tuple, qui est le format attendu par le catalogue (LISTE_MESHGROUP) - if debug: - print "dictGroupesMultiples=", dictGroupesMultiples - # retourne le dernier element du JdC, ou None si le JdC est vide, afin de savoir a quelle place ajouter les MESH_GROUPE (en dernier) - try: - dernier=editor.tree.racine.children[-1] - except: - dernier=None - for groupe in listeGroup: # parcours de la liste de tous les groupes de maille trouves (volumiques et les autres), puis ecriture du MESHGROUP systématique sans analyse de nom multiple - if debug: print 'groupe=', groupe - partiesGroupe = groupe.split(sep) # parties du nom, separees initialement par le separateur du prefixe, e.g. 'CURRENT_toto_foo' devient ['CURRENT','toto','foo'] et 'toto' devient ['toto'] - if len(partiesGroupe) == 1: # pas de prefixe - print u"ERREUR: ce nom de groupe ("+groupe+") ne peut pas etre utilise car il n'a pas de prefixe" - elif len(partiesGroupe) >= 2 and partiesGroupe[0] in listePrefixes: # prefixe existant et autorise - prefix = partiesGroupe[0] # prefixe possible de ce nom, ou nom lui-meme - nom = partiesGroupe[1] # nom du groupe ou du macro-groupe si défini. - nomReel = join(partiesGroupe[1:], sep) # reconstruction du nom reel, i.e. sans le prefixe, pour la plupart des groupes - if prefix in listePrefixesBBK: nomReel = groupe # pour la boite englobante, il faut le nom avec préfixe - if not concept_re.match(nomReel): # Le nom du groupe de maillage doit etre un identificateur Python - raise ValueError, "Ce nom de groupe ("+nomReel+") ne peut pas etre utilise car il ne peut pas servir de concept a cause de caracteres interdits, e.g. signes moins (-), plus (+), etc." - try: # test de conformite du nom pour un concept, i.e. une variable Python - #exec(nomReel+'=None') # le test consiste a tenter de creer une variable, initialisee a None, a partir du nom, e.g. toto=None est bon mais toto-foo=None ne fonctionne pas. - # creation du groupe MESH_GROUPE - if dernier != None: - new_node = dernier.append_brother("MESHGROUP",'after') - else: - new_node=editor.tree.racine.appendChild("MESHGROUP",pos='first') - test,mess = new_node.item.nommeSd(nomReel) # precision du nom (de concept) du groupe - if debug: print u"ce nom de groupe ("+nomReel+") est utilise..." - if prefix in listePrefixesMateriaux: # ce groupe est associe a un materiau - new_node.appendChild('MATERIAL') # on rajoute la propriete de materiau, qu'il suffit d'associer ensuite a la liste des materiaux presents - if debug: print u" et c'est un materiau." - elif prefix in listePrefixesSourcesHorsInducteur: # ce groupe est associe a une source - new_node.appendChild('SOURCE') # on rajoute la propriete de la source, qu'il suffit d'associer ensuite a la liste des sources presentes - if debug: print u" et c'est une source." - elif prefix in listePrefixesInducteurBobine: # ce groupe est associe a une source - new_node.appendChild('STRANDED_INDUCTOR_GEOMETRY') # on rajoute la propriete de géométrie de l'inducteur bobiné - if debug: print u" et c'est un inducteur bobine dont on definit la geometrie." - if nom not in dictGroupesMultiples.keys(): # il ne fait pas partie d'un macro-groupe. La source est définie ici, ainsi que le domaine. - new_node.appendChild('SOURCE') # on rajoute la propriete de la source, qu'il suffit d'associer ensuite a la liste des sources presentes - new_node.appendChild('Domaine') # on rajoute la propriete du domaine (default automatique), qu'il suffit d'associer ensuite a la liste des domaines présents - if debug: print u" et c'est une source en un seul morceau." - else: # ce cas ne devrait pas se produire - pass - dernier=new_node # mise a jour du dernier noeud du JdC, afin de rajouter les autres MESH_GROUPE eventuels a sa suite - except: - raise ValueError, "Ce nom de groupe ("+nomReel+") pose un probleme inconnu" - #print u"ERREUR: ce nom de groupe ("+nomReel+") ne peut pas etre utilise car il ne peut pas servir de concept a cause de caractères interdits, e.g. signes moins (-), plus (+), etc." - else: # prefixe existant mais non autorise - print u"ERREUR: ce nom de groupe ("+groupe+") ne peut pas etre utilise car son prefixe ("+partiesGroupe[0]+") n'est pas dans la liste autorisee "+str(listePrefixes) - if len(dictGroupesMultiples) > 0: # on a des groupes à nom multiples, e.g., inducteur bobiné en morceaux. - for groupe, contenu in dictGroupesMultiples.iteritems(): # parcours de la liste de tous les groupes de maille trouves (volumiques et les autres), et sélection des groupes à nom multiple - if debug: print 'groupe, contenu=', groupe, contenu - nomReel = groupe - prefix = contenu['type'] - try: # test de conformite du nom pour un concept, i.e. une variable Python - exec(nomReel+'=None') # le test consiste a tenter de creer une variable, initialisee a None, a partir du nom, e.g. toto=None est bon mais toto-foo=None ne fonctionne pas. - # creation du groupe MACRO_GROUPE - if dernier != None: - new_node = dernier.append_brother("MACRO_GROUPE",'after') - else: - new_node=editor.tree.racine.appendChild("MACRO_GROUPE",pos='first') - test,mess = new_node.item.nommeSd(nomReel) # precision du nom (de concept) du groupe - if debug: print u"ce nom de groupe ("+nomReel+") est utilise..." - if debug: print u" et on ajoute la liste LISTE_MESHGROUP." - node_list=new_node.appendChild('LISTE_MESHGROUP') # Ajout de la liste des membres du groupe multiple - if debug: - print 'Liste possible pour LISTE_MESHGROUP :' - print '_____________________' - print node_list.item.getListePossible(()) - print '_____________________' - print dir(node_list.item) - listeNom=node_list.item.getSdAvantDuBonType() - listeObjet=[] - for nom in listeNom: - if nom in dictGroupesMultiples[groupe]['membres']: - #--> transformation du nom en objet - obj,valide=node_list.item.evalValeur(nom) - listeObjet.append(obj) - node_list.item.setValeur(listeObjet) - node_list.affichePanneau() - if prefix in listePrefixesMateriaux: # ce groupe est associe a un materiau - new_node.appendChild('MATERIAL') # on rajoute la propriete de materiau, qu'il suffit d'associer ensuite a la liste des materiaux presents - if debug: print u" et c'est un materiau." - elif prefix in listePrefixesSourcesHorsInducteur: # ce groupe est associe a une source - new_node.appendChild('SOURCE') # on rajoute la propriete de la source, qu'il suffit d'associer ensuite a la liste des sources presentes - if debug: print u" et c'est une source hors inducteur." - elif prefix in listePrefixesInducteurBobine: # ce groupe est associe a une source - new_node.appendChild('SOURCE') # on rajoute la propriete de la source, qu'il suffit d'associer ensuite a la liste des sources presentes - new_node.appendChild('Domaine') # on rajoute la propriete du domaine (default automatique), qu'il suffit d'associer ensuite a la liste des domaines présents - if debug: print u" et c'est une source inducteur." - elif prefix in listePrefixesTrous: # ce groupe est associe a un trou - new_node.appendChild('Domaine') # on rajoute la propriete du domaine (default automatique), qu'il suffit d'associer ensuite a la liste des domaines présents - if debug: print u" et c'est un trou." - else: # ce cas ne devrait pas se produire - pass - dernier=new_node # mise a jour du dernier noeud du JdC, afin de rajouter les autres MESH_GROUPE eventuels a sa suite - except: - print u"ERREUR: ce nom de groupe ("+nomReel+") ne peut pas etre utilise car il ne peut pas servir de concept a cause de caractères interdits, e.g. signes moins (-), plus (+), etc." - -def handleAjoutGroupFiltre(editor,listeGroup): - """CARMEL3D : obtention des groupes de maille du maillage selectionne dans Salome - Les groupes de mailles sont filtres en utilisant une liste des prefixes autorises pour code Code_Carmel3D, - i.e. un nom de groupe de mailles est DIEL_toto_foo par exemple, qui deviendra toto_foo. - La creation du MESH_GROUPE est type (materiau ou source), d'après le prefixe. - ATTENTION! Le nom devenant un concept, i.e. une variable Python, certains signes sont interdits dans le nom du groupe, - e.g. les signes moins (-), plus (+), etc. Une erreur est retournee en ce cas. - """ - from string import join - debug = True - #print 'DEBUG listeGroup manuel' # Il faut aussi commenter la ligne Msg,listeGroup=self.ChercheGrpMailleInSalome() dans la routine ChercheGrpMaille de qtEficas.py - #listeGroup = ['DIEL_air', 'COND_plaque', 'CURRENT_bobine' ] # cas-test plaque Rodger avec DIEL_ - #listeGroup = ['NOCOND_air', 'COND_plaque', 'CURRENT_bobine' ] # cas-test plaque Rodger - #listeGroup = ['DIEL_air', 'COND_plaque', 'NOCOND_noyau', 'CURRENT_bobine_1', 'CURRENT_bobine_2', 'CURRENT_bobine_3' ] - #listeGroup = ['DIEL_air', 'COND_plaque', 'NOCOND_noyau', 'CURRENT_bobine' ] - #listeGroup = ['BBK_bobine', 'DIEL_air', 'COND_plaque', 'NOCOND_noyau', 'CURRENT_bobine' ] # avec BBK - #listeGroup = ['EPORT+_dom', 'EPORT-_dom', 'H', 'COND_cyl', 'EPORT_dom'] # cas-test CSS_Tempimpo - #listeGroup= ['BBK_spire', 'CURRENT_spire_4', 'NOCOND_air', 'CURRENT_spire_3', 'CURRENT_spire_1', 'CURRENT_spire_2'] # cas-test spire_dans l'air en 4 morceaux - #listeGroup= ['BBK_bobine', 'CURRENT_ind_2', 'DIEL_air', 'CURRENT_ind_8', 'CURRENT_ind_6', 'CURRENT_ind_1', 'CURRENT_ind_3', 'CURRENT_ind_7', 'CURRENT_ind_5', 'CURRENT_ind_4', 'BBK_topo', 'COND_plaque', 'TOPO_trou_1', 'TOPO_trou_3', 'TOPO_trou_2', 'TOPO_trou_8', 'TOPO_trou_4', 'TOPO_trou_7', 'TOPO_trou_5', 'TOPO_trou_6'] # cas-test T.E.A.M. Workshop 7 - if debug: - print "listeGroup=", listeGroup - version_catalogue = editor.maConfiguration.appli.readercata.version_code # détermination si le catalogue est fréquentiel ou temporel, d'après la deuxième entrée de la liste catalogues dans prefs_CARMEL3D.py - if debug: - print "Version catalogue=", version_catalogue - type_code = version_catalogue.split(' ')[0] # on garde le premier mot de la version du catalogue : 'frequentiel' ou 'temporel' - if debug: - print "Type de code=", type_code - if type_code not in ('frequentiel', 'temporel'): # test de cohérence du type de code - raise ValueError("Ce catalogue n'est ni frequentiel ni temporel") - if type_code == 'frequentiel': - handleAjoutGroupAvecFiltre(editor, listeGroup) - if type_code == 'temporel': - handleAjoutGroupSansFiltre(editor, listeGroup) diff --git a/Carmel3D/configuration_CARMEL3D.py b/Carmel3D/configuration_CARMEL3D.py deleted file mode 100644 index 2d52f6f1..00000000 --- a/Carmel3D/configuration_CARMEL3D.py +++ /dev/null @@ -1,43 +0,0 @@ -# -*- coding: utf-8 -*- -# Copyright (C) 2007-2013 EDF R&D -# -# 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 -# -""" - Ce module sert pour charger les paramètres de configuration d'EFICAS -""" -# Modules Python -import configuration -import os - - -class CONFIG(configuration.configBase): - - #----------------------------------- - def __init__(self,appli,repIni): - #----------------------------------- - - self.labels_user=['exec_acrobat', 'catalogues','savedir'] - self.labels_eficas=['path_doc','exec_acrobat','lang','rep_cata','catalogues'] - - self.INSTALLDIR =os.path.dirname(__file__) - configuration.configBase.__init__(self,appli,repIni) - - -def make_config(appli,rep): - return CONFIG(appli,rep) - diff --git a/Carmel3D/materiaux/ACIER_TEAM13 b/Carmel3D/materiaux/ACIER_TEAM13 deleted file mode 100644 index 27b9f3b3..00000000 --- a/Carmel3D/materiaux/ACIER_TEAM13 +++ /dev/null @@ -1,28 +0,0 @@ -# B(H) curve from T.E.A.M. Workshop 13 -# New measures, last table from the notice (COMPEL 1995) -# Measures from B=0 to 1.8 T, saturation J_s=2.16T -# Hmod Bmod -0.0 0.0 -45.0 0.0250 -75.0 0.0500 -120.0 0.1000 -173.0 0.2000 -201.0 0.3000 -222.0 0.4000 -240.0 0.5000 -250.0 0.6000 -265.0 0.7000 -280.0 0.8000 -300.0 0.9000 -330.0 1.0000 -365.0 1.1000 -415.0 1.2000 -500.0 1.3000 -640.0 1.4000 -890.0 1.5000 -1150.0 1.5500 -1940.0 1.6000 -3100.0 1.6500 -4370.0 1.7000 -6347.0 1.7500 -8655.0 1.8000 diff --git a/Carmel3D/materiaux/CMakeLists.txt b/Carmel3D/materiaux/CMakeLists.txt deleted file mode 100644 index f6163590..00000000 --- a/Carmel3D/materiaux/CMakeLists.txt +++ /dev/null @@ -1,35 +0,0 @@ -# -*- coding: utf-8 -*- -# CONFIGURATION MANAGEMENT OF EDF VERSION -# ====================================================================== -# COPYRIGHT (C) 1991 - 2002 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# -# -# ====================================================================== - - -install ( FILES - ACIER_TEAM13 E24 FEV470 FEV600 FEV800 FEV1000 HA600 M600_65 M6X2ISO1 - M6X_epsilon.mater M6X_mu.mater M6X_sigma.mater - M6X_homogene_mu.mater M6X_homogene_sigma.mater - M6X_lineaire_mu.mater M6X_lineaire_sigma.mater - materiaux.comm - DESTINATION ${CMAKE_INSTALL_PREFIX}/Carmel3D/materiaux - ) - - -### Local Variables: -### mode: cmake -### End: diff --git a/Carmel3D/materiaux/E24 b/Carmel3D/materiaux/E24 deleted file mode 100644 index bc906b35..00000000 --- a/Carmel3D/materiaux/E24 +++ /dev/null @@ -1,13 +0,0 @@ - 0. 0. - 1000.000 1.200000 - 1200.000 1.270000 - 1600.000 1.350000 - 3000.000 1.520000 - 6000.000 1.660000 - 10000.00 1.750000 - 20000.00 1.900000 - 30000.00 2.000000 - 49944.66 2.101082 - 80000.00 2.200000 - 132000.0 2.300000 - 250000.0 2.400000 diff --git a/Carmel3D/materiaux/FEV1000 b/Carmel3D/materiaux/FEV1000 deleted file mode 100644 index 7324073a..00000000 --- a/Carmel3D/materiaux/FEV1000 +++ /dev/null @@ -1,31 +0,0 @@ - 0.0000000 0.0000000 - 54.38605 0.5687161 - 125.0879 0.9107189 - 217.0004 1.133191 - 336.4865 1.285649 - 491.8185 1.394206 - 693.7501 1.474002 - 956.2611 1.534492 - 1297.525 1.581962 - 1741.169 1.620847 - 2317.906 1.654481 - 3067.663 1.685556 - 4042.348 1.716430 - 5309.438 1.749361 - 6956.655 1.786698 - 9098.037 1.831067 - 11881.83 1.882414 - 15500.77 1.931322 - 20205.39 1.976478 - 26321.39 2.017967 - 34272.19 2.056381 - 44608.23 2.092746 - 58045.08 2.128448 - 75512.98 2.165203 - 98221.27 2.205061 - 127742.0 2.250466 - 166119.0 2.304362 - 216009.1 2.370358 - 280866.3 2.452947 - 308952.9 2.488242 - diff --git a/Carmel3D/materiaux/FEV470 b/Carmel3D/materiaux/FEV470 deleted file mode 100644 index d3281a2f..00000000 --- a/Carmel3D/materiaux/FEV470 +++ /dev/null @@ -1,31 +0,0 @@ - 0. 0. - 40.28202 0.3233068 - 80.56404 0.6466137 - 133.2969 0.8959763 - 196.5763 1.092960 - 272.5116 1.235844 - 363.6339 1.322937 - 472.9807 1.364753 - 604.1969 1.403417 - 761.6563 1.442002 - 950.6076 1.479882 - 1177.349 1.516478 - 1449.439 1.551293 - 1775.947 1.583937 - 2167.756 1.614135 - 2637.928 1.641730 - 3202.133 1.666674 - 3879.180 1.689014 - 4691.636 1.708866 - 5666.584 1.726406 - 6836.521 1.741841 - 8240.445 1.755403 - 9925.154 1.767332 - 11946.81 1.777868 - 14372.79 1.787249 - 17283.96 1.795704 - 20777.38 1.803454 - 24969.48 1.810715 - 30000.00 1.817699 - 33000.00 1.821469 - diff --git a/Carmel3D/materiaux/FEV600 b/Carmel3D/materiaux/FEV600 deleted file mode 100644 index 5281d05d..00000000 --- a/Carmel3D/materiaux/FEV600 +++ /dev/null @@ -1,31 +0,0 @@ - 0. 0. - 40.28202 0.5217850 - 80.56404 1.043570 - 133.2969 1.219489 - 196.5763 1.330541 - 272.5116 1.406615 - 363.6339 1.461884 - 472.9807 1.503975 - 604.1969 1.537396 - 761.6563 1.565024 - 950.6076 1.588824 - 1177.349 1.610226 - 1449.439 1.630343 - 1775.947 1.650098 - 2167.756 1.670444 - 2637.928 1.693085 - 3202.133 1.718405 - 3879.180 1.746379 - 4691.636 1.776860 - 5666.584 1.809549 - 6836.521 1.843973 - 8240.445 1.879470 - 9925.154 1.915191 - 11946.81 1.950107 - 14372.79 1.983036 - 17283.96 2.012676 - 20777.38 2.037636 - 24969.48 2.056473 - 30000.00 2.067699 - 33000.00 2.071469 - diff --git a/Carmel3D/materiaux/FEV800 b/Carmel3D/materiaux/FEV800 deleted file mode 100644 index 810c3ab6..00000000 --- a/Carmel3D/materiaux/FEV800 +++ /dev/null @@ -1,30 +0,0 @@ - 0. 0. - 40.28202 0.3324555 - 80.56404 0.6649110 - 133.2969 0.9138392 - 196.5763 1.111536 - 272.5116 1.260901 - 363.6339 1.364212 - 472.9807 1.422949 - 604.1969 1.451498 - 761.6563 1.480342 - 950.6076 1.510200 - 1177.349 1.540614 - 1449.439 1.571091 - 1775.947 1.601134 - 2167.756 1.630277 - 2637.928 1.658111 - 3202.133 1.684309 - 3879.180 1.708632 - 4691.636 1.730937 - 5666.584 1.751169 - 6836.521 1.769348 - 8240.445 1.785560 - 9925.154 1.799934 - 11946.81 1.812635 - 14372.79 1.823846 - 17283.96 1.833761 - 20777.38 1.842578 - 24969.48 1.850493 - 30000.00 1.857699 - 33000.00 1.861469 diff --git a/Carmel3D/materiaux/HA600 b/Carmel3D/materiaux/HA600 deleted file mode 100644 index 4c4a877c..00000000 --- a/Carmel3D/materiaux/HA600 +++ /dev/null @@ -1,30 +0,0 @@ - 0. 0. - 40.28202 0.3951843 - 80.56404 0.7903686 - 133.2969 0.9716319 - 196.5763 1.095780 - 272.5116 1.185383 - 363.6339 1.252692 - 472.9807 1.304966 - 604.1969 1.346809 - 761.6563 1.381319 - 950.6076 1.410688 - 1177.349 1.436551 - 1449.439 1.460186 - 1775.947 1.483959 - 2167.756 1.510788 - 2637.928 1.540831 - 3202.133 1.574084 - 3879.180 1.610407 - 4691.636 1.649490 - 5666.584 1.690835 - 6836.521 1.733738 - 8240.445 1.777294 - 9925.154 1.820413 - 11946.81 1.861850 - 14372.79 1.900252 - 17283.96 1.934193 - 20777.38 1.962221 - 24969.48 1.982877 - 30000.00 1.994699 - 33000.00 1.998469 diff --git a/Carmel3D/materiaux/M600_65 b/Carmel3D/materiaux/M600_65 deleted file mode 100644 index cfc3f3ba..00000000 --- a/Carmel3D/materiaux/M600_65 +++ /dev/null @@ -1,30 +0,0 @@ - 0. 0. - 0.1676396E-03 0.2082807E-05 - 0.3352792E-03 0.4165609E-05 - 0.7823178E-03 0.9719718E-05 - 0.1676395E-02 0.2082782E-04 - 0.3464548E-02 0.4304356E-04 - 0.7040854E-02 0.8747321E-04 - 0.1419346E-01 0.1763252E-03 - 0.2849867E-01 0.3540000E-03 - 0.5710909E-01 0.7092333E-03 - 0.1143299 0.1419235E-02 - 0.2287715 0.2837381E-02 - 0.4576545 0.5666269E-02 - 0.9154205 0.1129461E-01 - 1.830952 0.2243500E-01 - 3.662015 0.4426165E-01 - 7.324139 0.8618276E-01 - 14.64838 0.1637067 - 29.29687 0.2975280 - 58.59383 0.5032464 - 117.1877 0.7693985 - 234.3755 1.046909 - 468.7509 1.279960 - 937.5016 1.447085 - 1875.003 1.563602 - 3750.004 1.671697 - 7500.005 1.775926 - 15000.00 1.854134 - 30000.00 1.897699 - 33000.00 1.901469 diff --git a/Carmel3D/materiaux/M6X2ISO1 b/Carmel3D/materiaux/M6X2ISO1 deleted file mode 100644 index e6facc82..00000000 --- a/Carmel3D/materiaux/M6X2ISO1 +++ /dev/null @@ -1,16 +0,0 @@ - 0. 0. - 477.0000 1.100000 - 922.9141 1.633186 - 1337.513 1.756419 - 4292.604 1.852735 - 6366.000 1.880000 - 7958.000 1.900000 - 15915.00 1.980000 - 23873.00 2.020000 - 31830.00 2.045000 - 47746.00 2.080000 - 64329.63 2.111715 - 86767.84 2.145308 - 148638.1 2.239294 - 238700.0 2.355000 - 318300.0 2.420000 diff --git a/Carmel3D/materiaux/M6X_epsilon.mater b/Carmel3D/materiaux/M6X_epsilon.mater deleted file mode 100644 index c1c50ef0..00000000 --- a/Carmel3D/materiaux/M6X_epsilon.mater +++ /dev/null @@ -1 +0,0 @@ - 1.0 diff --git a/Carmel3D/materiaux/M6X_homogene_mu.mater b/Carmel3D/materiaux/M6X_homogene_mu.mater deleted file mode 100644 index 57d6c245..00000000 --- a/Carmel3D/materiaux/M6X_homogene_mu.mater +++ /dev/null @@ -1 +0,0 @@ - 1.5331206E4-j.1.6906576E4 1.9440262E3-j.2.6880635E1 1.6315E1 diff --git a/Carmel3D/materiaux/M6X_homogene_sigma.mater b/Carmel3D/materiaux/M6X_homogene_sigma.mater deleted file mode 100644 index 6597c154..00000000 --- a/Carmel3D/materiaux/M6X_homogene_sigma.mater +++ /dev/null @@ -1 +0,0 @@ - 0.0 diff --git a/Carmel3D/materiaux/M6X_lineaire_mu.mater b/Carmel3D/materiaux/M6X_lineaire_mu.mater deleted file mode 100644 index 8698c6b7..00000000 --- a/Carmel3D/materiaux/M6X_lineaire_mu.mater +++ /dev/null @@ -1 +0,0 @@ - 1.60000E4 2.0000E3 3.0000E1 diff --git a/Carmel3D/materiaux/M6X_lineaire_sigma.mater b/Carmel3D/materiaux/M6X_lineaire_sigma.mater deleted file mode 100644 index a4cfcedc..00000000 --- a/Carmel3D/materiaux/M6X_lineaire_sigma.mater +++ /dev/null @@ -1 +0,0 @@ - 1.492537313E6. diff --git a/Carmel3D/materiaux/M6X_mu.mater b/Carmel3D/materiaux/M6X_mu.mater deleted file mode 100644 index fa1141c2..00000000 --- a/Carmel3D/materiaux/M6X_mu.mater +++ /dev/null @@ -1,22 +0,0 @@ - 0. 0. 0. 0. - 625.9739 1.572659 477.0000 0.7020000 - 796.0000 1.665000 796.0000 1.170000 - 1719.099 1.786521 1591.000 1.310000 - 3183.000 1.810000 3183.000 1.430000 - 3979.000 1.830000 3979.000 1.475000 - 4775.000 1.850000 4775.000 1.510000 - 5570.000 1.865000 5570.000 1.540000 - 6366.000 1.880000 6366.000 1.570000 - 7958.000 1.900000 7958.000 1.620000 - 11937.00 1.950000 11937.00 1.695000 - 15915.00 1.980000 15915.00 1.760000 - 19098.00 2.000000 19098.00 1.810000 - 31830.00 2.045000 31830.00 1.930000 - 47746.00 2.080000 47746.00 2.010000 - 63662.00 2.110000 63662.00 2.070000 - 79577.00 2.145000 79577.00 2.120000 - 111041.0 2.200000 111041.0 2.190000 - 143200.0 2.240000 143200.0 2.255000 - 198900.0 2.310000 198900.0 2.325000 - 238700.0 2.355000 238700.0 2.360000 - 318300.0 2.420000 318300.0 2.420000 diff --git a/Carmel3D/materiaux/M6X_sigma.mater b/Carmel3D/materiaux/M6X_sigma.mater deleted file mode 100644 index e69de29b..00000000 diff --git a/Carmel3D/materiaux/materiaux.comm b/Carmel3D/materiaux/materiaux.comm deleted file mode 100644 index 3a5f08f8..00000000 --- a/Carmel3D/materiaux/materiaux.comm +++ /dev/null @@ -1,270 +0,0 @@ - -AIR=MATERIAL(TYPE='DIELECTRIC', - PERMEABILITY=_F(HOMOGENEOUS='TRUE', - ISOTROPIC='TRUE', - LAW='LINEAR', - VALUE=1,), - PERMITTIVITY=_F(HOMOGENEOUS='TRUE', - ISOTROPIC='TRUE', - LAW='LINEAR', - VALUE=1,),); - -ALU=MATERIAL(TYPE='CONDUCTOR', - PERMEABILITY=_F(HOMOGENEOUS='TRUE', - ISOTROPIC='TRUE', - LAW='LINEAR', - VALUE=1,), - CONDUCTIVITY=_F(HOMOGENEOUS='TRUE', - ISOTROPIC='TRUE', - LAW='LINEAR', - VALUE=Decimal('3.448E+7'),),); - -ACIER_NOIR=MATERIAL(TYPE='CONDUCTOR', - PERMEABILITY=_F(HOMOGENEOUS='TRUE', - ISOTROPIC='TRUE', - LAW='LINEAR', - VALUE=Decimal('1.0E+2'),), - CONDUCTIVITY=_F(HOMOGENEOUS='TRUE', - ISOTROPIC='TRUE', - LAW='LINEAR', - VALUE=Decimal('6.00000E+6'),),); - -ACIER_CIMBLOT=MATERIAL(TYPE='CONDUCTOR', - PERMEABILITY=_F(HOMOGENEOUS='TRUE', - ISOTROPIC='TRUE', - LAW='LINEAR', - VALUE=Decimal('50.0000'),), - CONDUCTIVITY=_F(HOMOGENEOUS='TRUE', - ISOTROPIC='TRUE', - LAW='LINEAR', - VALUE=Decimal('3.00000E+6'),),); - -ACIER_PE=MATERIAL(TYPE='CONDUCTOR', - PERMEABILITY=_F(HOMOGENEOUS='TRUE', - ISOTROPIC='TRUE', - LAW='LINEAR', - VALUE=Decimal('70'),), - CONDUCTIVITY=_F(HOMOGENEOUS='TRUE', - ISOTROPIC='TRUE', - LAW='LINEAR', - VALUE=Decimal('1.75000E+6'),),); - -ACIER_TEAM13_mesures=MATERIAL(TYPE='DIELECTRIC', - PERMEABILITY=_F(HOMOGENEOUS='TRUE', - ISOTROPIC='TRUE', - LAW='NONLINEAR', - VALUE=2376, - NATURE='SPLINE', - FILENAME='ACIER_TEAM13', - APPLIEDTO='B(H)&H(B)',), - PERMITTIVITY=_F(HOMOGENEOUS='TRUE', - ISOTROPIC='TRUE', - LAW='LINEAR', - VALUE=('RI',1,0,),),); - -ACIER_TEAM13_Marrocco=MATERIAL(TYPE='DIELECTRIC', - PERMEABILITY=_F(HOMOGENEOUS='TRUE', - ISOTROPIC='TRUE', - LAW='NONLINEAR', - VALUE=2376, - NATURE='MARROCCO+SATURATION', - ALPHA=9.98, - TAU=106000.0, - C=0.0119, - EPSILON=0.000467, - BMAX=1.85, - HSAT=47732.7, - BSAT=2.22, - JOIN='PARABOLIC', - APPLIEDTO='B(H)&H(B)',), - PERMITTIVITY=_F(HOMOGENEOUS='TRUE', - ISOTROPIC='TRUE', - LAW='LINEAR', - VALUE=('RI',1,0,),),); - -BRONZE=MATERIAL(TYPE='CONDUCTOR', - PERMEABILITY=_F(HOMOGENEOUS='TRUE', - ISOTROPIC='TRUE', - LAW='LINEAR', - VALUE=3.0,), - CONDUCTIVITY=_F(HOMOGENEOUS='TRUE', - ISOTROPIC='TRUE', - LAW='LINEAR', - VALUE=Decimal('1.00000E+6'),),); - -CUIVRE=MATERIAL(TYPE='CONDUCTOR', - PERMEABILITY=_F(HOMOGENEOUS='TRUE', - ISOTROPIC='TRUE', - LAW='LINEAR', - VALUE=1.0,), - CONDUCTIVITY=_F(HOMOGENEOUS='TRUE', - ISOTROPIC='TRUE', - LAW='LINEAR', - VALUE=Decimal('5.85E+7'),),); - -E24=MATERIAL(TYPE='DIELECTRIC', - PERMEABILITY=_F(HOMOGENEOUS='TRUE', - ISOTROPIC='TRUE', - LAW='NONLINEAR', - VALUE=Decimal('1.0'), - NATURE='SPLINE', - FILENAME='E24', - APPLIEDTO='B(H)&H(B)',), - PERMITTIVITY=_F(HOMOGENEOUS='TRUE', - ISOTROPIC='TRUE', - LAW='LINEAR', - VALUE=Decimal('1.0'),),); - -HA600=MATERIAL(TYPE='DIELECTRIC', - PERMEABILITY=_F(HOMOGENEOUS='TRUE', - ISOTROPIC='TRUE', - LAW='NONLINEAR', - VALUE=Decimal('1.0'), - NATURE='SPLINE', - FILENAME='HA600', - APPLIEDTO='B(H)&H(B)',), - PERMITTIVITY=_F(HOMOGENEOUS='TRUE', - ISOTROPIC='TRUE', - LAW='LINEAR', - VALUE=Decimal('1.0'),),); - -INCONEL600=MATERIAL(TYPE='CONDUCTOR', - PERMEABILITY=_F(HOMOGENEOUS='TRUE', - ISOTROPIC='TRUE', - LAW='LINEAR', - VALUE=1.01,), - CONDUCTIVITY=_F(HOMOGENEOUS='TRUE', - ISOTROPIC='TRUE', - LAW='LINEAR', - VALUE=Decimal('9.7000E+5'),),); - -FERRITEB30=MATERIAL(TYPE='DIELECTRIC', - PERMEABILITY=_F(HOMOGENEOUS='TRUE', - ISOTROPIC='TRUE', - LAW='LINEAR', - VALUE=Decimal('1.10E+3'),), - PERMITTIVITY=_F(HOMOGENEOUS='TRUE', - ISOTROPIC='TRUE', - LAW='LINEAR', - VALUE=1.0,),); - -FERRITE_Ni_Zn=MATERIAL(TYPE='CONDUCTOR', - PERMEABILITY=_F(HOMOGENEOUS='TRUE', - ISOTROPIC='TRUE', - LAW='LINEAR', - VALUE=Decimal('15.0000'),), - CONDUCTIVITY=_F(HOMOGENEOUS='TRUE', - ISOTROPIC='TRUE', - LAW='LINEAR', - VALUE=Decimal('0.0000010000'),),); - -FERRITE_Mn_Zn=MATERIAL(TYPE='CONDUCTOR', - PERMEABILITY=_F(HOMOGENEOUS='TRUE', - ISOTROPIC='TRUE', - LAW='LINEAR', - VALUE=Decimal('1.25E+3'),), - CONDUCTIVITY=_F(HOMOGENEOUS='TRUE', - ISOTROPIC='TRUE', - LAW='LINEAR', - VALUE=Decimal('10'),),); - -FEV470=MATERIAL(TYPE='DIELECTRIC', - PERMEABILITY=_F(HOMOGENEOUS='TRUE', - ISOTROPIC='TRUE', - LAW='NONLINEAR', - VALUE=Decimal('1.0'), - NATURE='SPLINE', - FILENAME='FEV470', - APPLIEDTO='B(H)&H(B)',), - PERMITTIVITY=_F(HOMOGENEOUS='TRUE', - ISOTROPIC='TRUE', - LAW='LINEAR', - VALUE=Decimal('1.0'),),); - -FEV600=MATERIAL(TYPE='DIELECTRIC', - PERMEABILITY=_F(HOMOGENEOUS='TRUE', - ISOTROPIC='TRUE', - LAW='NONLINEAR', - VALUE=Decimal('1.0'), - NATURE='SPLINE', - FILENAME='FEV600', - APPLIEDTO='B(H)&H(B)',), - PERMITTIVITY=_F(HOMOGENEOUS='TRUE', - ISOTROPIC='TRUE', - LAW='LINEAR', - VALUE=Decimal('1.0'),),); - -FEV800=MATERIAL(TYPE='DIELECTRIC', - PERMEABILITY=_F(HOMOGENEOUS='TRUE', - ISOTROPIC='TRUE', - LAW='NONLINEAR', - VALUE=Decimal('1.0'), - NATURE='SPLINE', - FILENAME='FEV800', - APPLIEDTO='B(H)&H(B)',), - PERMITTIVITY=_F(HOMOGENEOUS='TRUE', - ISOTROPIC='TRUE', - LAW='LINEAR', - VALUE=Decimal('1.0'),),); - -FEV1000=MATERIAL(TYPE='DIELECTRIC', - PERMEABILITY=_F(HOMOGENEOUS='TRUE', - ISOTROPIC='TRUE', - LAW='NONLINEAR', - VALUE=Decimal('1.0'), - NATURE='SPLINE', - FILENAME='FEV1000', - APPLIEDTO='B(H)&H(B)',), - PERMITTIVITY=_F(HOMOGENEOUS='TRUE', - ISOTROPIC='TRUE', - LAW='LINEAR', - VALUE=Decimal('1.0'),),); - -M600_65=MATERIAL(TYPE='DIELECTRIC', - PERMEABILITY=_F(HOMOGENEOUS='TRUE', - ISOTROPIC='TRUE', - LAW='NONLINEAR', - VALUE=Decimal('1.0'), - NATURE='SPLINE', - FILENAME='M600_65', - APPLIEDTO='B(H)&H(B)',), - PERMITTIVITY=_F(HOMOGENEOUS='TRUE', - ISOTROPIC='TRUE', - LAW='LINEAR', - VALUE=Decimal('1.0'),),); - -#M6X=MATERIAL(TYPE='EM_ANISOTROPIC', -# PERMEABILITY_File='M6X_mu.mater', -# CONDUCTIVITY_File='M6X_sigma.mater',); - -M6X2ISO1=MATERIAL(TYPE='CONDUCTOR', - PERMEABILITY=_F(HOMOGENEOUS='TRUE', - ISOTROPIC='TRUE', - LAW='NONLINEAR', - VALUE=Decimal('1.0'), - NATURE='SPLINE', - FILENAME='M6X2ISO1', - APPLIEDTO='B(H)&H(B)',), - CONDUCTIVITY=_F(HOMOGENEOUS='TRUE', - ISOTROPIC='TRUE', - LAW='LINEAR', - VALUE=Decimal('1.724E+6'),),); - -#M6X_LINEAIRE=MATERIAL(TYPE='EM_ANISOTROPIC', -# PERMEABILITY_File='M6X_lineaire_mu.mater', -# CONDUCTIVITY_File='M6X_lineaire_sigma.mater',); - -#M6X_HOMOGENE=MATERIAL(TYPE='EM_ANISOTROPIC', -# PERMEABILITY_File='M6X_homogene_mu.mater', -# CONDUCTIVITY_File='M6X_homogene_sigma.mater',); - -POTASSE=MATERIAL(TYPE='CONDUCTOR', - PERMEABILITY=_F(HOMOGENEOUS='TRUE', - ISOTROPIC='TRUE', - LAW='LINEAR', - VALUE=Decimal('1.0'),), - CONDUCTIVITY=_F(HOMOGENEOUS='TRUE', - ISOTROPIC='TRUE', - LAW='LINEAR', - VALUE=Decimal('71.43'),),); -#CHECKSUM:614994a51cd56f24959331e5ef1c7a98 -:FIN CHECKSUM diff --git a/Carmel3D/opsCarmel.py b/Carmel3D/opsCarmel.py deleted file mode 100644 index 2fce8f8c..00000000 --- a/Carmel3D/opsCarmel.py +++ /dev/null @@ -1,38 +0,0 @@ -# -*- coding: iso-8859-1 -*- -# Copyright (C) 2007-2013 EDF R&D -# -# 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 -# - -def INCLUDE(self,FileName,**args): - """ - Fonction sd_prod pour la macro INCLUDE - """ - if hasattr(self,'change_fichier'): - delattr(self,'change_fichier') - delattr(self,'fichier_ini') - - self.makeIncludeCarmel(fichier=FileName) - -def INCLUDE_context(self,d): - """ - Fonction op_init pour macro INCLUDE - """ - for k,v in self.g_context.items(): - d[k]=v - - diff --git a/Carmel3D/prefs.py b/Carmel3D/prefs.py deleted file mode 100644 index a69b761b..00000000 --- a/Carmel3D/prefs.py +++ /dev/null @@ -1,22 +0,0 @@ -# Copyright (C) 2007-2013 EDF R&D -# -# 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 -# -code="CARMEL3D" -import sys, os -if os.path.dirname(os.path.abspath(__file__)) not in sys.path : - sys.path.insert(0,os.path.dirname(os.path.abspath(__file__))) diff --git a/Carmel3D/prefs_CARMEL3D.py b/Carmel3D/prefs_CARMEL3D.py deleted file mode 100644 index 41e26ee1..00000000 --- a/Carmel3D/prefs_CARMEL3D.py +++ /dev/null @@ -1,39 +0,0 @@ -# -*- coding: utf-8 -*- -# Copyright (C) 2007-2013 EDF R&D -# -# 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 - -# repIni sert a localiser le fichier editeur.ini -repIni=os.path.dirname(os.path.abspath(__file__)) - -# lang indique la langue utilisee pour les chaines d'aide : fr ou ang -lang='fr' - -# Codage des strings qui accepte les accents (en remplacement de 'ascii') -encoding='utf-8' - -# Choix des catalogues -# format du Tuple (code,version,catalogue,formatOut, finit par defaut Ăventuellement) -catalogues = ( - -# catalogue avec generation Phys et materiaux reels - ('CARMEL3D','temporel (dev)',os.path.join(repIni,'Carmel3D_Cata_temporel_V0.py'),'CARMEL3DTV0','defaut'), - ('CARMEL3D','frequentiel',os.path.join(repIni,'Carmel3D_Cata_frequentiel_V1.py'),'CARMEL3DFV0','defaut') -) diff --git a/Carmel3D/properties.py b/Carmel3D/properties.py deleted file mode 100644 index a168a59f..00000000 --- a/Carmel3D/properties.py +++ /dev/null @@ -1,25 +0,0 @@ -#@ MODIF properties Accas DATE 02/06/2010 AUTEUR aster M.ADMINISTRATEUR -# maConfiguration MANAGEMENT OF EDF VERSION -# RESPONSABLE D6BHHHH J-P.LEFEBVRE -# ====================================================================== -# COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# IDENTIFICATION DU GESTIONNAIRE DE COMMANDE ACCAS A PARTIR -# DE LA VERSION DU CODE_ASTER ASSOCIE -#---------------------------------------------------------------------- -version = "10.1.27" -date = "02/06/2010" -exploit = False diff --git a/Carmel3D/qtEficas_Carmel3D.py b/Carmel3D/qtEficas_Carmel3D.py deleted file mode 100755 index 46452183..00000000 --- a/Carmel3D/qtEficas_Carmel3D.py +++ /dev/null @@ -1,33 +0,0 @@ -#!/usr/bin/env python -# -*- coding: utf-8 -*- -# Copyright (C) 2007-2013 EDF R&D -# -# 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 -# - -""" - Ce module sert à lancer EFICAS configuré pour Carmel -""" -# Modules Python -# Modules Eficas - -import sys,os -sys.path.append(os.path.join(os.path.abspath(os.path.dirname(__file__)),'..')) - -import prefs -from InterfaceQT4 import eficas_go -eficas_go.lanceEficas(code=prefs.code) diff --git a/Carmel3D/style.py b/Carmel3D/style.py deleted file mode 100644 index d4855725..00000000 --- a/Carmel3D/style.py +++ /dev/null @@ -1,66 +0,0 @@ -# -*- coding: utf-8 -*- -""" -Pour modifier le style d'EFICAS il faut ajouter un fichier style.py qui contiendra les -informations sur le style voulu dans son repertoire Eficas_install. - -La methode la plus simple consiste à modifier directement les attributs de l'objet style dans le -fichier style.py d'Eficas_install. Exemple:: - - style.background='yellow' - -pour modifier la couleur du background. - -Il existe une autre méthode qui peut être utilisée quand on veut modifier plusieurs propriétés à la fois. - -Le fichier style.py doit définir une nouvelle classe qui dérive de la classe de base STYLE avec des attributs -de classe qui définiront le nouveau style (par exemple, si on veut modifier le background):: - - class STYLE(STYLE): - background='yellow' - -Il faut ensuite instancier cette classe, dans ce meme fichier, en donnant le nom style à l'objet cree:: - - style=STYLE() - -Tous les attributs de classe possibles sont visibles dans le module Editeur/basestyle.py:: - - background='gray90' - foreground='black' - entry_background='white' - list_background='white' - list_select_background='#00008b' - list_select_foreground='grey' - tooltip_background="yellow" - - standard = ("Helvetica",12) - standard_italique = ("Helvetica",12,'italic') - standard_gras = ("Helvetica",12,'bold') - standard_gras_souligne = ("Helvetica",12,'bold','underline') - - canvas = ('Helvetica',10) - canvas_italique = ('Helvetica',10,'italic') - canvas_gras = ("Helvetica",10,'bold') - canvas_gras_italique = ("Helvetica",12,'bold','italic') - - standard12 = ("Helvetica",14) - standard12_gras = ("Helvetica",14,'bold') - standard12_gras_italique = ( "Helvetica",14,'bold','italic') - - -Le fichier style.py contenu dans le répertoire Aster permet de spécifier des propriétés globales pour une installation. -Les modifications de style contenues dans ce fichier et dans le fichier style.py d'Eficas_install -sont prises en compte dans cet ordre. -""" - -p1=10 -p2=14 -f1="Helvetica" - -style.background='gray90' -style.foreground='black' -style.standard = (f1,p1) -style.standard_italique = (f1,p1,'italic') -style.standard_gras = (f1,p1,'bold') -style.canvas_italique = (f1,p1,'italic') -style.canvas_gras = (f1,p1,'bold') -style.statusfont = (f1,p2) diff --git a/CataTestXSD/Exemple Catalogue 2 (1.1).xml b/CataTestXSD/Exemple Catalogue 2 (1.1).xml deleted file mode 100755 index 4bdc5dfb..00000000 --- a/CataTestXSD/Exemple Catalogue 2 (1.1).xml +++ /dev/null @@ -1,196 +0,0 @@ - - - - - - - - - - - - - 21 - - I - - carte - - - - - dsd - - TXM - - carte_flux_r - - - - - - - 1 2 - - - I - - maille - - - - - RESULTAT - ETAT_INIT - - - - I - NoRepeat - - - I - NoRepeat - - - - - R - NoRepeat - - - R - NoRepeat - - - R - NoRepeat - - - - - - CONCEPT - CONCEPT2 - - - - - T_classeUtilisateur - NoRepeat - - - TXM - - - - 1 - - I - - - - - OUI - NON - - - - - - - - - TXM - - - - - I - - - - I - - - - - - - - PETIT - - - - - PETIT - PETIT - - - TXM - - - - - 0 - - I - - - - - ANALYTIQUE - SACANTE - DEKKER - NEWTON_ID - BRENT - - - TXM - - - T_classeUtilisateur - - - - - - - - - - - - C_NOM_CHAM_INTO(phenomene='CONTRAINTE',categorie='lin') - - - TXM - NoRepeat - - - - "DEFORMATION in ('PETIT','PETIT_REAC','GROT_GDEP')" - - - - - - 12 13 - 12 13 - 22 23 - 33 - - - - - 12 13 1415 16 17 - 22 23 2425 26 27 - 12 13 1415 16 17 - 32 33 3435 36 37 - 42 43 4445 46 47 - <2 3 4 - - - - - diff --git a/CataTestXSD/Test_Catalogue_(1.1).xml b/CataTestXSD/Test_Catalogue_(1.1).xml deleted file mode 100755 index d12d3d1e..00000000 --- a/CataTestXSD/Test_Catalogue_(1.1).xml +++ /dev/null @@ -1,210 +0,0 @@ - - - - - - - - - - - - - 21 - - I - - carte - - - - - dsd - - TXM - - carte_flux_r - - - - - - - 1 2 - - - I - - maille - - - - - RESULTAT - ETAT_INIT - - - - I - NoRepeat - - - I - NoRepeat - - - - - R - NoRepeat - - - R - NoRepeat - - - R - NoRepeat - - - - - - CONCEPT - CONCEPT2 - - - - - classeUtilisateur - NoRepeat - - - TXM - - - - 1 - - I - - - - - OUI Avec Des Blancs - NON - - - - - - - - - TXM - - - - - I - - - - I - - - - - - - - PETIT - - - - - PETIT - PETIT - - - TXM - - - - - 0 - - I - - - - - ANALYTIQUE - SACANTE - DEKKER - NEWTON_ID - BRENT - - - TXM - - - classeUtilisateur - - - - - - - - - - - - C_NOM_CHAM_INTO(phenomene='CONTRAINTE',categorie='lin') - - - TXM - NoRepeat - - - - "DEFORMATION in ('PETIT','PETIT_REAC','GROT_GDEP')" - - - - - - - 12 13 - - 12 13 - 22 23 - 33 - - - I - - - - 12 13 1415 16 17 - - 22 23 2425 26 27 - 12 13 1415 16 17 - 32 33 3435 36 37 - 42 43 4445 46 47 - 2 3 4 - - tuple - - - a ab bc c - - a1 a1b1 b1c1 c1 - a2b2 b2 b2 b22c1 c1 - - TXM - - - - diff --git a/CataTestXSD/cata_TestXSD_genere.xsd b/CataTestXSD/cata_TestXSD_genere.xsd deleted file mode 100644 index f6be7bb6..00000000 --- a/CataTestXSD/cata_TestXSD_genere.xsd +++ /dev/null @@ -1,55 +0,0 @@ - - - - > - - - > - - - - - - - - - - > - - - > - - - > - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/CataTestXSD/cata_test1.py b/CataTestXSD/cata_test1.py deleted file mode 100644 index 21178984..00000000 --- a/CataTestXSD/cata_test1.py +++ /dev/null @@ -1,23 +0,0 @@ -# coding: utf-8 - -from Accas import * - -JdC = JDC_CATA (code = 'testXSD', - execmodul = None, - ) -PROC1=PROC(nom='PROC1',op=None, - description = SIMP(statut='f', typ='TXM', defaut=''), - milieu = SIMP(statut='o', typ='TXM', defaut='File'), - FactNiveauHaut = FACT(statut='f', max="**", - source = SIMP(statut='o', typ='TXM', into=['File','Dico','Value'],defaut='File'), - b_source_valeur = BLOC(condition="source == 'Value'", - simpDuBloc = SIMP(statut = "o", typ = 'R'), - ), - FactNiveauDuBas= FACT( statut = 'o', max='**', - diameter = SIMP(statut='o', typ='R', val_min = 0), - thickness = SIMP(statut='o', typ='R', val_min = 0), - ), - - ), -); - diff --git a/CataTestXSD/cata_test1.xml b/CataTestXSD/cata_test1.xml deleted file mode 100755 index ffb2dc79..00000000 --- a/CataTestXSD/cata_test1.xml +++ /dev/null @@ -1,37 +0,0 @@ - - - - - - - - 13 - 14 - - 15 - 10 - - I - - - 22 23 - 24 25 - I - - - 33 - 31 32 33 34 - I - - - 42 - I - - - - - diff --git a/CataTestXSD/configuration_TestXSD.py b/CataTestXSD/configuration_TestXSD.py deleted file mode 100644 index 0ce59dad..00000000 --- a/CataTestXSD/configuration_TestXSD.py +++ /dev/null @@ -1,52 +0,0 @@ -# -*- coding: utf-8 -*- -# -# Copyright (C) 2008-2016 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 -# - -""" - Ce module sert pour charger les paramètres de configuration d'EFICAS -""" -# Modules Python -import os, sys, string, types, re - - -# Modules Eficas -from InterfaceQT4 import configuration - -# Classe de base permettant de lire, afficher -# et sauvegarder les fichiers utilisateurs - -class CONFIG(configuration.configBase): - - def __init__(self,appli,repIni): - - self.labels_eficas=['lang','rep_cata','catalogues','closeAutreCommande','closeFrameRechercheCommande','closeEntete','taille'] - configuration.configBase.__init__(self,appli,repIni) - - self.rep_user = os.environ["HOME"] - self.appli = appli - self.code = appli.code - self.rep_ini = repIni - self.savedir = self.rep_user - -def make_config(appli,rep): - return CONFIG(appli,rep) - diff --git a/CataTestXSD/prefs.py b/CataTestXSD/prefs.py deleted file mode 100644 index e3fb9913..00000000 --- a/CataTestXSD/prefs.py +++ /dev/null @@ -1,22 +0,0 @@ -# Copyright (C) 2007-2012 EDF R&D -# -# 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 -# -code="TestXSD" -import sys, os -if os.path.dirname(os.path.abspath(__file__)) not in sys.path : - sys.path.insert(0,os.path.dirname(os.path.abspath(__file__))) diff --git a/CataTestXSD/prefs_TestXSD.py b/CataTestXSD/prefs_TestXSD.py deleted file mode 100644 index c8e48d1c..00000000 --- a/CataTestXSD/prefs_TestXSD.py +++ /dev/null @@ -1,48 +0,0 @@ -# -*- coding: utf-8 -*- -# CONFIGURATION MANAGEMENT OF EDF VERSION -# ====================================================================== -# COPYRIGHT (C) 1991 - 2002 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# -# -# ====================================================================== - -import os,sys -# repIni sert a localiser le fichier editeur.ini -# Obligatoire -repIni=os.path.dirname(os.path.abspath(__file__)) -INSTALLDIR=os.path.join(repIni,'..') -sys.path[:0]=[INSTALLDIR] - - -# lang indique la langue utilisee pour les chaines d'aide : fr ou ang -lang='en' - -# Codage des strings qui accepte les accents (en remplacement de 'ascii') -encoding='iso-8859-1' -docPath=repIni - -# -#typeDeCata='XML' -catalogues=( -# ('TestXSD','TestXSDPY',os.path.join(repIni,'cata_test1.xml'),'python','python'), -# ('TestXSD','TestXSD',os.path.join(repIni,'cata_test1.xml'),'python','xml'), - ('TestXSD','TestXSDPY',os.path.join(repIni,'cata_test1.py'),'python','python'), -) -withXSD=True -#dumpXSD=True -#afficheIhm=False - - diff --git a/CataTestXSD/properties.py b/CataTestXSD/properties.py deleted file mode 100644 index 1d328a46..00000000 --- a/CataTestXSD/properties.py +++ /dev/null @@ -1,24 +0,0 @@ -#@ MODIF properties Accas DATE 11/06/2008 AUTEUR aster M.ADMINISTRATEUR -# RESPONSABLE D6BHHHH J-P.LEFEBVRE -# ====================================================================== -# COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# IDENTIFICATION DU GESTIONNAIRE DE COMMANDE ACCAS A PARTIR -# DE LA VERSION DU CODE_ASTER ASSOCIE -#---------------------------------------------------------------------- -version = "1.2" -date = "25/05/2010" -exploit = False diff --git a/CataTestXSD/qtEficas_TestXSD.py b/CataTestXSD/qtEficas_TestXSD.py deleted file mode 100755 index 05eaee9a..00000000 --- a/CataTestXSD/qtEficas_TestXSD.py +++ /dev/null @@ -1,36 +0,0 @@ -#!/usr/bin/env python -# -*- coding: utf-8 -*- -# Copyright (C) 2007-2017 EDF R&D -# -# 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 -# -""" -""" -# Modules Python - -# Modules Eficas -import prefs -name='prefs_'+prefs.code -__import__(name) - -#import sys -#reload(sys) -#sys.setdefaultencoding('latin1') - -from InterfaceQT4 import eficas_go -print eficas_go -eficas_go.lanceEficas(code=prefs.code) diff --git a/CataTestXSD/raw/__init__.py b/CataTestXSD/raw/__init__.py deleted file mode 100644 index e69de29b..00000000 diff --git a/CataTestXSD/raw/cata_genere.py b/CataTestXSD/raw/cata_genere.py deleted file mode 100644 index c6c5d076..00000000 --- a/CataTestXSD/raw/cata_genere.py +++ /dev/null @@ -1,472 +0,0 @@ -# ./raw/cata_genere.py -# -*- coding: utf-8 -*- -# PyXB bindings for NM:933a854d4f58913558dd4662ff8be8d029ebb4db -# Generated 2018-11-08 16:02:25.664950 by PyXB version 1.2.6 using Python 2.7.9.final.0 -# Namespace http://chercheurs.edf.com/logiciels/testXSD - -from __future__ import unicode_literals -import pyxb -import pyxb.binding -import pyxb.binding.saxer -import io -import pyxb.utils.utility -import pyxb.utils.domutils -import sys -import pyxb.utils.six as _six -# Unique identifier for bindings created at the same time -_GenerationUID = pyxb.utils.utility.UniqueIdentifier('urn:uuid:4d842c7c-e367-11e8-85d3-308d996bd755') - -# Version of PyXB used to generate the bindings -_PyXBVersion = '1.2.6' -# Generated bindings are not compatible across PyXB versions -if pyxb.__version__ != _PyXBVersion: - raise pyxb.PyXBVersionError(_PyXBVersion) - -# A holder for module-level binding classes so we can access them from -# inside class definitions where property names may conflict. -_module_typeBindings = pyxb.utils.utility.Object() - -# Import bindings for namespaces imported into schema -import pyxb.binding.datatypes - -# NOTE: All namespace declarations are reserved within the binding -Namespace = pyxb.namespace.NamespaceForURI('http://chercheurs.edf.com/logiciels/testXSD', create_if_missing=True) -Namespace.configureCategories(['typeBinding', 'elementBinding']) - -def CreateFromDocument (xml_text, default_namespace=None, location_base=None): - """Parse the given XML and use the document element to create a - Python instance. - - @param xml_text An XML document. This should be data (Python 2 - str or Python 3 bytes), or a text (Python 2 unicode or Python 3 - str) in the L{pyxb._InputEncoding} encoding. - - @keyword default_namespace The L{pyxb.Namespace} instance to use as the - default namespace where there is no default namespace in scope. - If unspecified or C{None}, the namespace of the module containing - this function will be used. - - @keyword location_base: An object to be recorded as the base of all - L{pyxb.utils.utility.Location} instances associated with events and - objects handled by the parser. You might pass the URI from which - the document was obtained. - """ - - if pyxb.XMLStyle_saxer != pyxb._XMLStyle: - dom = pyxb.utils.domutils.StringToDOM(xml_text) - return CreateFromDOM(dom.documentElement, default_namespace=default_namespace) - if default_namespace is None: - default_namespace = Namespace.fallbackNamespace() - saxer = pyxb.binding.saxer.make_parser(fallback_namespace=default_namespace, location_base=location_base) - handler = saxer.getContentHandler() - xmld = xml_text - if isinstance(xmld, _six.text_type): - xmld = xmld.encode(pyxb._InputEncoding) - saxer.parse(io.BytesIO(xmld)) - instance = handler.rootObject() - return instance - -def CreateFromDOM (node, default_namespace=None): - """Create a Python instance from the given DOM node. - The node tag must correspond to an element declaration in this module. - - @deprecated: Forcing use of DOM interface is unnecessary; use L{CreateFromDocument}.""" - if default_namespace is None: - default_namespace = Namespace.fallbackNamespace() - return pyxb.binding.basis.element.AnyCreateFromDOM(node, default_namespace) - - -# Atomic simple type: {http://chercheurs.edf.com/logiciels/testXSD}T_description -class T_description (pyxb.binding.datatypes.string): - - """An atomic simple type.""" - - _ExpandedName = pyxb.namespace.ExpandedName(Namespace, 'T_description') - _XSDLocation = pyxb.utils.utility.Location('/home/A96028/QT5GitEficasTravail/eficas/CataTestXSD/cata_TestXSD_genere.xsd', 3, 1) - _Documentation = None -T_description._InitializeFacetMap() -Namespace.addCategoryObject('typeBinding', 'T_description', T_description) -_module_typeBindings.T_description = T_description - -# Atomic simple type: {http://chercheurs.edf.com/logiciels/testXSD}T_milieu -class T_milieu (pyxb.binding.datatypes.string): - - """An atomic simple type.""" - - _ExpandedName = pyxb.namespace.ExpandedName(Namespace, 'T_milieu') - _XSDLocation = pyxb.utils.utility.Location('/home/A96028/QT5GitEficasTravail/eficas/CataTestXSD/cata_TestXSD_genere.xsd', 6, 1) - _Documentation = None -T_milieu._InitializeFacetMap() -Namespace.addCategoryObject('typeBinding', 'T_milieu', T_milieu) -_module_typeBindings.T_milieu = T_milieu - -# Atomic simple type: {http://chercheurs.edf.com/logiciels/testXSD}T_source -class T_source (pyxb.binding.datatypes.string, pyxb.binding.basis.enumeration_mixin): - - """An atomic simple type.""" - - _ExpandedName = pyxb.namespace.ExpandedName(Namespace, 'T_source') - _XSDLocation = pyxb.utils.utility.Location('/home/A96028/QT5GitEficasTravail/eficas/CataTestXSD/cata_TestXSD_genere.xsd', 9, 1) - _Documentation = None -T_source._CF_enumeration = pyxb.binding.facets.CF_enumeration(value_datatype=T_source, enum_prefix=None) -T_source.File = T_source._CF_enumeration.addEnumeration(unicode_value='File', tag='File') -T_source.Dico = T_source._CF_enumeration.addEnumeration(unicode_value='Dico', tag='Dico') -T_source.Value = T_source._CF_enumeration.addEnumeration(unicode_value='Value', tag='Value') -T_source._InitializeFacetMap(T_source._CF_enumeration) -Namespace.addCategoryObject('typeBinding', 'T_source', T_source) -_module_typeBindings.T_source = T_source - -# Atomic simple type: {http://chercheurs.edf.com/logiciels/testXSD}T_simpDuBloc -class T_simpDuBloc (pyxb.binding.datatypes.float): - - """An atomic simple type.""" - - _ExpandedName = pyxb.namespace.ExpandedName(Namespace, 'T_simpDuBloc') - _XSDLocation = pyxb.utils.utility.Location('/home/A96028/QT5GitEficasTravail/eficas/CataTestXSD/cata_TestXSD_genere.xsd', 16, 1) - _Documentation = None -T_simpDuBloc._InitializeFacetMap() -Namespace.addCategoryObject('typeBinding', 'T_simpDuBloc', T_simpDuBloc) -_module_typeBindings.T_simpDuBloc = T_simpDuBloc - -# Atomic simple type: {http://chercheurs.edf.com/logiciels/testXSD}T_diameter -class T_diameter (pyxb.binding.datatypes.float): - - """An atomic simple type.""" - - _ExpandedName = pyxb.namespace.ExpandedName(Namespace, 'T_diameter') - _XSDLocation = pyxb.utils.utility.Location('/home/A96028/QT5GitEficasTravail/eficas/CataTestXSD/cata_TestXSD_genere.xsd', 19, 1) - _Documentation = None -T_diameter._InitializeFacetMap() -Namespace.addCategoryObject('typeBinding', 'T_diameter', T_diameter) -_module_typeBindings.T_diameter = T_diameter - -# Atomic simple type: {http://chercheurs.edf.com/logiciels/testXSD}T_thickness -class T_thickness (pyxb.binding.datatypes.float): - - """An atomic simple type.""" - - _ExpandedName = pyxb.namespace.ExpandedName(Namespace, 'T_thickness') - _XSDLocation = pyxb.utils.utility.Location('/home/A96028/QT5GitEficasTravail/eficas/CataTestXSD/cata_TestXSD_genere.xsd', 22, 1) - _Documentation = None -T_thickness._InitializeFacetMap() -Namespace.addCategoryObject('typeBinding', 'T_thickness', T_thickness) -_module_typeBindings.T_thickness = T_thickness - -# Complex type {http://chercheurs.edf.com/logiciels/testXSD}T_FactNiveauDuBas with content type ELEMENT_ONLY -class T_FactNiveauDuBas (pyxb.binding.basis.complexTypeDefinition): - """Complex type {http://chercheurs.edf.com/logiciels/testXSD}T_FactNiveauDuBas with content type ELEMENT_ONLY""" - _TypeDefinition = None - _ContentTypeTag = pyxb.binding.basis.complexTypeDefinition._CT_ELEMENT_ONLY - _Abstract = False - _ExpandedName = pyxb.namespace.ExpandedName(Namespace, 'T_FactNiveauDuBas') - _XSDLocation = pyxb.utils.utility.Location('/home/A96028/QT5GitEficasTravail/eficas/CataTestXSD/cata_TestXSD_genere.xsd', 30, 1) - _ElementMap = {} - _AttributeMap = {} - # Base type is pyxb.binding.datatypes.anyType - - # Element {http://chercheurs.edf.com/logiciels/testXSD}diameter uses Python identifier diameter - __diameter = pyxb.binding.content.ElementDeclaration(pyxb.namespace.ExpandedName(Namespace, 'diameter'), 'diameter', '__httpchercheurs_edf_comlogicielstestXSD_T_FactNiveauDuBas_httpchercheurs_edf_comlogicielstestXSDdiameter', False, pyxb.utils.utility.Location('/home/A96028/QT5GitEficasTravail/eficas/CataTestXSD/cata_TestXSD_genere.xsd', 32, 3), ) - - - diameter = property(__diameter.value, __diameter.set, None, None) - - - # Element {http://chercheurs.edf.com/logiciels/testXSD}thickness uses Python identifier thickness - __thickness = pyxb.binding.content.ElementDeclaration(pyxb.namespace.ExpandedName(Namespace, 'thickness'), 'thickness', '__httpchercheurs_edf_comlogicielstestXSD_T_FactNiveauDuBas_httpchercheurs_edf_comlogicielstestXSDthickness', False, pyxb.utils.utility.Location('/home/A96028/QT5GitEficasTravail/eficas/CataTestXSD/cata_TestXSD_genere.xsd', 33, 3), ) - - - thickness = property(__thickness.value, __thickness.set, None, None) - - _ElementMap.update({ - __diameter.name() : __diameter, - __thickness.name() : __thickness - }) - _AttributeMap.update({ - - }) -_module_typeBindings.T_FactNiveauDuBas = T_FactNiveauDuBas -Namespace.addCategoryObject('typeBinding', 'T_FactNiveauDuBas', T_FactNiveauDuBas) - - -# Complex type {http://chercheurs.edf.com/logiciels/testXSD}T_FactNiveauHaut with content type ELEMENT_ONLY -class T_FactNiveauHaut (pyxb.binding.basis.complexTypeDefinition): - """Complex type {http://chercheurs.edf.com/logiciels/testXSD}T_FactNiveauHaut with content type ELEMENT_ONLY""" - _TypeDefinition = None - _ContentTypeTag = pyxb.binding.basis.complexTypeDefinition._CT_ELEMENT_ONLY - _Abstract = False - _ExpandedName = pyxb.namespace.ExpandedName(Namespace, 'T_FactNiveauHaut') - _XSDLocation = pyxb.utils.utility.Location('/home/A96028/QT5GitEficasTravail/eficas/CataTestXSD/cata_TestXSD_genere.xsd', 36, 1) - _ElementMap = {} - _AttributeMap = {} - # Base type is pyxb.binding.datatypes.anyType - - # Element {http://chercheurs.edf.com/logiciels/testXSD}simpDuBloc uses Python identifier simpDuBloc - __simpDuBloc = pyxb.binding.content.ElementDeclaration(pyxb.namespace.ExpandedName(Namespace, 'simpDuBloc'), 'simpDuBloc', '__httpchercheurs_edf_comlogicielstestXSD_T_FactNiveauHaut_httpchercheurs_edf_comlogicielstestXSDsimpDuBloc', False, pyxb.utils.utility.Location('/home/A96028/QT5GitEficasTravail/eficas/CataTestXSD/cata_TestXSD_genere.xsd', 27, 3), ) - - - simpDuBloc = property(__simpDuBloc.value, __simpDuBloc.set, None, None) - - - # Element {http://chercheurs.edf.com/logiciels/testXSD}source uses Python identifier source - __source = pyxb.binding.content.ElementDeclaration(pyxb.namespace.ExpandedName(Namespace, 'source'), 'source', '__httpchercheurs_edf_comlogicielstestXSD_T_FactNiveauHaut_httpchercheurs_edf_comlogicielstestXSDsource', False, pyxb.utils.utility.Location('/home/A96028/QT5GitEficasTravail/eficas/CataTestXSD/cata_TestXSD_genere.xsd', 38, 3), ) - - - source = property(__source.value, __source.set, None, None) - - - # Element {http://chercheurs.edf.com/logiciels/testXSD}FactNiveauDuBas uses Python identifier FactNiveauDuBas - __FactNiveauDuBas = pyxb.binding.content.ElementDeclaration(pyxb.namespace.ExpandedName(Namespace, 'FactNiveauDuBas'), 'FactNiveauDuBas', '__httpchercheurs_edf_comlogicielstestXSD_T_FactNiveauHaut_httpchercheurs_edf_comlogicielstestXSDFactNiveauDuBas', False, pyxb.utils.utility.Location('/home/A96028/QT5GitEficasTravail/eficas/CataTestXSD/cata_TestXSD_genere.xsd', 40, 3), ) - - - FactNiveauDuBas = property(__FactNiveauDuBas.value, __FactNiveauDuBas.set, None, None) - - _ElementMap.update({ - __simpDuBloc.name() : __simpDuBloc, - __source.name() : __source, - __FactNiveauDuBas.name() : __FactNiveauDuBas - }) - _AttributeMap.update({ - - }) -_module_typeBindings.T_FactNiveauHaut = T_FactNiveauHaut -Namespace.addCategoryObject('typeBinding', 'T_FactNiveauHaut', T_FactNiveauHaut) - - -# Complex type {http://chercheurs.edf.com/logiciels/testXSD}T_PROC1 with content type ELEMENT_ONLY -class T_PROC1 (pyxb.binding.basis.complexTypeDefinition): - """Complex type {http://chercheurs.edf.com/logiciels/testXSD}T_PROC1 with content type ELEMENT_ONLY""" - _TypeDefinition = None - _ContentTypeTag = pyxb.binding.basis.complexTypeDefinition._CT_ELEMENT_ONLY - _Abstract = False - _ExpandedName = pyxb.namespace.ExpandedName(Namespace, 'T_PROC1') - _XSDLocation = pyxb.utils.utility.Location('/home/A96028/QT5GitEficasTravail/eficas/CataTestXSD/cata_TestXSD_genere.xsd', 43, 1) - _ElementMap = {} - _AttributeMap = {} - # Base type is pyxb.binding.datatypes.anyType - - # Element {http://chercheurs.edf.com/logiciels/testXSD}description uses Python identifier description - __description = pyxb.binding.content.ElementDeclaration(pyxb.namespace.ExpandedName(Namespace, 'description'), 'description', '__httpchercheurs_edf_comlogicielstestXSD_T_PROC1_httpchercheurs_edf_comlogicielstestXSDdescription', False, pyxb.utils.utility.Location('/home/A96028/QT5GitEficasTravail/eficas/CataTestXSD/cata_TestXSD_genere.xsd', 45, 3), ) - - - description = property(__description.value, __description.set, None, None) - - - # Element {http://chercheurs.edf.com/logiciels/testXSD}milieu uses Python identifier milieu - __milieu = pyxb.binding.content.ElementDeclaration(pyxb.namespace.ExpandedName(Namespace, 'milieu'), 'milieu', '__httpchercheurs_edf_comlogicielstestXSD_T_PROC1_httpchercheurs_edf_comlogicielstestXSDmilieu', False, pyxb.utils.utility.Location('/home/A96028/QT5GitEficasTravail/eficas/CataTestXSD/cata_TestXSD_genere.xsd', 46, 3), ) - - - milieu = property(__milieu.value, __milieu.set, None, None) - - - # Element {http://chercheurs.edf.com/logiciels/testXSD}FactNiveauHaut uses Python identifier FactNiveauHaut - __FactNiveauHaut = pyxb.binding.content.ElementDeclaration(pyxb.namespace.ExpandedName(Namespace, 'FactNiveauHaut'), 'FactNiveauHaut', '__httpchercheurs_edf_comlogicielstestXSD_T_PROC1_httpchercheurs_edf_comlogicielstestXSDFactNiveauHaut', False, pyxb.utils.utility.Location('/home/A96028/QT5GitEficasTravail/eficas/CataTestXSD/cata_TestXSD_genere.xsd', 47, 3), ) - - - FactNiveauHaut = property(__FactNiveauHaut.value, __FactNiveauHaut.set, None, None) - - _ElementMap.update({ - __description.name() : __description, - __milieu.name() : __milieu, - __FactNiveauHaut.name() : __FactNiveauHaut - }) - _AttributeMap.update({ - - }) -_module_typeBindings.T_PROC1 = T_PROC1 -Namespace.addCategoryObject('typeBinding', 'T_PROC1', T_PROC1) - - -# Complex type {http://chercheurs.edf.com/logiciels/testXSD}T_testXSD with content type ELEMENT_ONLY -class T_testXSD (pyxb.binding.basis.complexTypeDefinition): - """Complex type {http://chercheurs.edf.com/logiciels/testXSD}T_testXSD with content type ELEMENT_ONLY""" - _TypeDefinition = None - _ContentTypeTag = pyxb.binding.basis.complexTypeDefinition._CT_ELEMENT_ONLY - _Abstract = False - _ExpandedName = pyxb.namespace.ExpandedName(Namespace, 'T_testXSD') - _XSDLocation = pyxb.utils.utility.Location('/home/A96028/QT5GitEficasTravail/eficas/CataTestXSD/cata_TestXSD_genere.xsd', 50, 1) - _ElementMap = {} - _AttributeMap = {} - # Base type is pyxb.binding.datatypes.anyType - - # Element {http://chercheurs.edf.com/logiciels/testXSD}PROC1 uses Python identifier PROC1 - __PROC1 = pyxb.binding.content.ElementDeclaration(pyxb.namespace.ExpandedName(Namespace, 'PROC1'), 'PROC1', '__httpchercheurs_edf_comlogicielstestXSD_T_testXSD_httpchercheurs_edf_comlogicielstestXSDPROC1', True, pyxb.utils.utility.Location('/home/A96028/QT5GitEficasTravail/eficas/CataTestXSD/cata_TestXSD_genere.xsd', 52, 3), ) - - - PROC1 = property(__PROC1.value, __PROC1.set, None, None) - - _ElementMap.update({ - __PROC1.name() : __PROC1 - }) - _AttributeMap.update({ - - }) -_module_typeBindings.T_testXSD = T_testXSD -Namespace.addCategoryObject('typeBinding', 'T_testXSD', T_testXSD) - - -testXSD = pyxb.binding.basis.element(pyxb.namespace.ExpandedName(Namespace, 'testXSD'), T_testXSD, location=pyxb.utils.utility.Location('/home/A96028/QT5GitEficasTravail/eficas/CataTestXSD/cata_TestXSD_genere.xsd', 54, 17)) -Namespace.addCategoryObject('elementBinding', testXSD.name().localName(), testXSD) - - - -T_FactNiveauDuBas._AddElement(pyxb.binding.basis.element(pyxb.namespace.ExpandedName(Namespace, 'diameter'), T_diameter, scope=T_FactNiveauDuBas, location=pyxb.utils.utility.Location('/home/A96028/QT5GitEficasTravail/eficas/CataTestXSD/cata_TestXSD_genere.xsd', 32, 3))) - -T_FactNiveauDuBas._AddElement(pyxb.binding.basis.element(pyxb.namespace.ExpandedName(Namespace, 'thickness'), T_thickness, scope=T_FactNiveauDuBas, location=pyxb.utils.utility.Location('/home/A96028/QT5GitEficasTravail/eficas/CataTestXSD/cata_TestXSD_genere.xsd', 33, 3))) - -def _BuildAutomaton (): - # Remove this helper function from the namespace after it is invoked - global _BuildAutomaton - del _BuildAutomaton - import pyxb.utils.fac as fac - - counters = set() - states = [] - final_update = None - symbol = pyxb.binding.content.ElementUse(T_FactNiveauDuBas._UseForTag(pyxb.namespace.ExpandedName(Namespace, 'diameter')), pyxb.utils.utility.Location('/home/A96028/QT5GitEficasTravail/eficas/CataTestXSD/cata_TestXSD_genere.xsd', 32, 3)) - st_0 = fac.State(symbol, is_initial=True, final_update=final_update, is_unordered_catenation=False) - states.append(st_0) - final_update = set() - symbol = pyxb.binding.content.ElementUse(T_FactNiveauDuBas._UseForTag(pyxb.namespace.ExpandedName(Namespace, 'thickness')), pyxb.utils.utility.Location('/home/A96028/QT5GitEficasTravail/eficas/CataTestXSD/cata_TestXSD_genere.xsd', 33, 3)) - st_1 = fac.State(symbol, is_initial=False, final_update=final_update, is_unordered_catenation=False) - states.append(st_1) - transitions = [] - transitions.append(fac.Transition(st_1, [ - ])) - st_0._set_transitionSet(transitions) - transitions = [] - st_1._set_transitionSet(transitions) - return fac.Automaton(states, counters, False, containing_state=None) -T_FactNiveauDuBas._Automaton = _BuildAutomaton() - - - - -T_FactNiveauHaut._AddElement(pyxb.binding.basis.element(pyxb.namespace.ExpandedName(Namespace, 'simpDuBloc'), T_simpDuBloc, scope=T_FactNiveauHaut, location=pyxb.utils.utility.Location('/home/A96028/QT5GitEficasTravail/eficas/CataTestXSD/cata_TestXSD_genere.xsd', 27, 3))) - -T_FactNiveauHaut._AddElement(pyxb.binding.basis.element(pyxb.namespace.ExpandedName(Namespace, 'source'), T_source, scope=T_FactNiveauHaut, location=pyxb.utils.utility.Location('/home/A96028/QT5GitEficasTravail/eficas/CataTestXSD/cata_TestXSD_genere.xsd', 38, 3))) - -T_FactNiveauHaut._AddElement(pyxb.binding.basis.element(pyxb.namespace.ExpandedName(Namespace, 'FactNiveauDuBas'), T_FactNiveauDuBas, scope=T_FactNiveauHaut, location=pyxb.utils.utility.Location('/home/A96028/QT5GitEficasTravail/eficas/CataTestXSD/cata_TestXSD_genere.xsd', 40, 3))) - -def _BuildAutomaton_ (): - # Remove this helper function from the namespace after it is invoked - global _BuildAutomaton_ - del _BuildAutomaton_ - import pyxb.utils.fac as fac - - counters = set() - cc_0 = fac.CounterCondition(min=0, max=1, metadata=pyxb.utils.utility.Location('/home/A96028/QT5GitEficasTravail/eficas/CataTestXSD/cata_TestXSD_genere.xsd', 39, 3)) - counters.add(cc_0) - cc_1 = fac.CounterCondition(min=0, max=1, metadata=pyxb.utils.utility.Location('/home/A96028/QT5GitEficasTravail/eficas/CataTestXSD/cata_TestXSD_genere.xsd', 40, 3)) - counters.add(cc_1) - states = [] - final_update = set() - symbol = pyxb.binding.content.ElementUse(T_FactNiveauHaut._UseForTag(pyxb.namespace.ExpandedName(Namespace, 'source')), pyxb.utils.utility.Location('/home/A96028/QT5GitEficasTravail/eficas/CataTestXSD/cata_TestXSD_genere.xsd', 38, 3)) - st_0 = fac.State(symbol, is_initial=True, final_update=final_update, is_unordered_catenation=False) - states.append(st_0) - final_update = set() - final_update.add(fac.UpdateInstruction(cc_0, False)) - symbol = pyxb.binding.content.ElementUse(T_FactNiveauHaut._UseForTag(pyxb.namespace.ExpandedName(Namespace, 'simpDuBloc')), pyxb.utils.utility.Location('/home/A96028/QT5GitEficasTravail/eficas/CataTestXSD/cata_TestXSD_genere.xsd', 27, 3)) - st_1 = fac.State(symbol, is_initial=False, final_update=final_update, is_unordered_catenation=False) - states.append(st_1) - final_update = set() - final_update.add(fac.UpdateInstruction(cc_1, False)) - symbol = pyxb.binding.content.ElementUse(T_FactNiveauHaut._UseForTag(pyxb.namespace.ExpandedName(Namespace, 'FactNiveauDuBas')), pyxb.utils.utility.Location('/home/A96028/QT5GitEficasTravail/eficas/CataTestXSD/cata_TestXSD_genere.xsd', 40, 3)) - st_2 = fac.State(symbol, is_initial=False, final_update=final_update, is_unordered_catenation=False) - states.append(st_2) - transitions = [] - transitions.append(fac.Transition(st_1, [ - ])) - transitions.append(fac.Transition(st_2, [ - ])) - st_0._set_transitionSet(transitions) - transitions = [] - transitions.append(fac.Transition(st_1, [ - fac.UpdateInstruction(cc_0, True) ])) - transitions.append(fac.Transition(st_2, [ - fac.UpdateInstruction(cc_0, False) ])) - st_1._set_transitionSet(transitions) - transitions = [] - transitions.append(fac.Transition(st_2, [ - fac.UpdateInstruction(cc_1, True) ])) - st_2._set_transitionSet(transitions) - return fac.Automaton(states, counters, False, containing_state=None) -T_FactNiveauHaut._Automaton = _BuildAutomaton_() - - - - -T_PROC1._AddElement(pyxb.binding.basis.element(pyxb.namespace.ExpandedName(Namespace, 'description'), T_description, scope=T_PROC1, location=pyxb.utils.utility.Location('/home/A96028/QT5GitEficasTravail/eficas/CataTestXSD/cata_TestXSD_genere.xsd', 45, 3))) - -T_PROC1._AddElement(pyxb.binding.basis.element(pyxb.namespace.ExpandedName(Namespace, 'milieu'), T_milieu, scope=T_PROC1, location=pyxb.utils.utility.Location('/home/A96028/QT5GitEficasTravail/eficas/CataTestXSD/cata_TestXSD_genere.xsd', 46, 3))) - -T_PROC1._AddElement(pyxb.binding.basis.element(pyxb.namespace.ExpandedName(Namespace, 'FactNiveauHaut'), T_FactNiveauHaut, scope=T_PROC1, location=pyxb.utils.utility.Location('/home/A96028/QT5GitEficasTravail/eficas/CataTestXSD/cata_TestXSD_genere.xsd', 47, 3))) - -def _BuildAutomaton_2 (): - # Remove this helper function from the namespace after it is invoked - global _BuildAutomaton_2 - del _BuildAutomaton_2 - import pyxb.utils.fac as fac - - counters = set() - cc_0 = fac.CounterCondition(min=0, max=1, metadata=pyxb.utils.utility.Location('/home/A96028/QT5GitEficasTravail/eficas/CataTestXSD/cata_TestXSD_genere.xsd', 45, 3)) - counters.add(cc_0) - cc_1 = fac.CounterCondition(min=0, max=1, metadata=pyxb.utils.utility.Location('/home/A96028/QT5GitEficasTravail/eficas/CataTestXSD/cata_TestXSD_genere.xsd', 47, 3)) - counters.add(cc_1) - states = [] - final_update = None - symbol = pyxb.binding.content.ElementUse(T_PROC1._UseForTag(pyxb.namespace.ExpandedName(Namespace, 'description')), pyxb.utils.utility.Location('/home/A96028/QT5GitEficasTravail/eficas/CataTestXSD/cata_TestXSD_genere.xsd', 45, 3)) - st_0 = fac.State(symbol, is_initial=True, final_update=final_update, is_unordered_catenation=False) - states.append(st_0) - final_update = set() - symbol = pyxb.binding.content.ElementUse(T_PROC1._UseForTag(pyxb.namespace.ExpandedName(Namespace, 'milieu')), pyxb.utils.utility.Location('/home/A96028/QT5GitEficasTravail/eficas/CataTestXSD/cata_TestXSD_genere.xsd', 46, 3)) - st_1 = fac.State(symbol, is_initial=True, final_update=final_update, is_unordered_catenation=False) - states.append(st_1) - final_update = set() - final_update.add(fac.UpdateInstruction(cc_1, False)) - symbol = pyxb.binding.content.ElementUse(T_PROC1._UseForTag(pyxb.namespace.ExpandedName(Namespace, 'FactNiveauHaut')), pyxb.utils.utility.Location('/home/A96028/QT5GitEficasTravail/eficas/CataTestXSD/cata_TestXSD_genere.xsd', 47, 3)) - st_2 = fac.State(symbol, is_initial=False, final_update=final_update, is_unordered_catenation=False) - states.append(st_2) - transitions = [] - transitions.append(fac.Transition(st_0, [ - fac.UpdateInstruction(cc_0, True) ])) - transitions.append(fac.Transition(st_1, [ - fac.UpdateInstruction(cc_0, False) ])) - st_0._set_transitionSet(transitions) - transitions = [] - transitions.append(fac.Transition(st_2, [ - ])) - st_1._set_transitionSet(transitions) - transitions = [] - transitions.append(fac.Transition(st_2, [ - fac.UpdateInstruction(cc_1, True) ])) - st_2._set_transitionSet(transitions) - return fac.Automaton(states, counters, False, containing_state=None) -T_PROC1._Automaton = _BuildAutomaton_2() - - - - -T_testXSD._AddElement(pyxb.binding.basis.element(pyxb.namespace.ExpandedName(Namespace, 'PROC1'), T_PROC1, scope=T_testXSD, location=pyxb.utils.utility.Location('/home/A96028/QT5GitEficasTravail/eficas/CataTestXSD/cata_TestXSD_genere.xsd', 52, 3))) - -def _BuildAutomaton_3 (): - # Remove this helper function from the namespace after it is invoked - global _BuildAutomaton_3 - del _BuildAutomaton_3 - import pyxb.utils.fac as fac - - counters = set() - cc_0 = fac.CounterCondition(min=0, max=None, metadata=pyxb.utils.utility.Location('/home/A96028/QT5GitEficasTravail/eficas/CataTestXSD/cata_TestXSD_genere.xsd', 51, 2)) - counters.add(cc_0) - states = [] - final_update = set() - final_update.add(fac.UpdateInstruction(cc_0, False)) - symbol = pyxb.binding.content.ElementUse(T_testXSD._UseForTag(pyxb.namespace.ExpandedName(Namespace, 'PROC1')), pyxb.utils.utility.Location('/home/A96028/QT5GitEficasTravail/eficas/CataTestXSD/cata_TestXSD_genere.xsd', 52, 3)) - st_0 = fac.State(symbol, is_initial=True, final_update=final_update, is_unordered_catenation=False) - states.append(st_0) - transitions = [] - transitions.append(fac.Transition(st_0, [ - fac.UpdateInstruction(cc_0, True) ])) - st_0._set_transitionSet(transitions) - return fac.Automaton(states, counters, True, containing_state=None) -T_testXSD._Automaton = _BuildAutomaton_3() - diff --git a/CataTests/CataAZ.py b/CataTests/CataAZ.py deleted file mode 100755 index b6e6494e..00000000 --- a/CataTests/CataAZ.py +++ /dev/null @@ -1,210 +0,0 @@ -# coding: utf-8 -import types -from Accas import * - -class grno(GEOM): - """ - Classe servant à définir le nom d'un groupe de noeuds dans le fichier de commande - En clair : un chaine de longueur 24. - """ - def __convert__(cls,valeur): - """ - Fonction de verification de la longueur de la chaine - """ - if isinstance(valeur, (str,unicode)) and len(valeur.strip()) <= 24: - return valeur.strip() - raise ValueError(_(u'On attend une chaine de caractères (de longueur <= 24).')) - __convert__ = classmethod(__convert__) - -class grma(GEOM): - """ - Classe servant à définir le nom d'un groupe de mailles dans le fichier de commande - En clair : un chaine de longueur 24. - """ - def __convert__(cls,valeur): - """ - Fonction de verification de la longueur de la chaine - """ - if isinstance(valeur, (str,unicode)) and len(valeur.strip()) <= 24: - return valeur.strip() - raise ValueError(_(u'On attend une chaine de caractères (de longueur <= 24).')) - __convert__ = classmethod(__convert__) - - -class Tuple: - def __init__(self,ntuple): - self.ntuple=ntuple - - def __convert__(self,valeur): - if type(valeur) == types.StringType: return None - if len(valeur) != self.ntuple: return None - return valeur - - def info(self): - return "Tuple de %s elements" % self.ntuple - - __repr__=info - __str__=info - -class ObjetUtilisateur(ASSD): pass - - -JdC = JDC_CATA(code='PATTERNS', - execmodul=None, - ) - - -EXAMPLE = PROC (nom = 'EXAMPLE', - op=None, - - TITRE = SIMP(statut ='o', typ = 'TXM', defaut = 'Mon Etude',), - TITRE2 = SIMP(statut ='f', typ = 'TXM', ), -) -CREEOBJET = OPER (nom="CREEOBJET", - op=None, - sd_prod=ObjetUtilisateur, - UIinfo={"groupes":("Group1",)}, - - TITLE = SIMP(statut ='o', typ = 'TXM', defaut = '',), - RB1 = SIMP(statut ='o', typ = 'I', into = [1,2,3],), - RB2 = SIMP(statut ='o', typ = 'I', into = [1,2,3,4,5,6,],), - CB = SIMP(statut ='o', typ = 'I', into = [1,2,3,4,5,6,7,8,9],), - MBool = SIMP(statut ='o', typ = bool,), - MFile = SIMP(statut ='o', typ = ('Fichier','All Files (*)')), - MDir = SIMP(statut ='o', typ = 'Repertoire'), - Reel1 = SIMP(statut ='o', typ = 'R'), - Compl = SIMP(statut ='o', typ = 'C'), - Tuple2 = SIMP(statut ='o', typ = Tuple(2), validators=VerifTypeTuple(('R','R'))), - Tuple3 = SIMP(statut ='o', typ = Tuple(3), validators=VerifTypeTuple(('R','R','R'))), - InSalome = SIMP(statut ='o', typ = SalomeEntry), - - LTITLE = SIMP(statut ='o', typ = 'TXM', max='**', defaut = '',), - LRB2 = SIMP(statut ='o', typ = 'I', max = '**', into = [1,2,3,4,5,6,],), - LCB = SIMP(statut ='o', typ = 'I', max = '**', homo="SansOrdreNiDoublon", into = [1,2,3,4,5,6,7,8,9],), - LReel1 = SIMP(statut ='o', typ = 'R', max = "**"), - LCompl = SIMP(statut ='o', typ = 'C', max = "**"), - LTuple2 = SIMP(statut ='o', typ = Tuple(2), validators=VerifTypeTuple(('R','R')), max = "**"), - LTuple3 = SIMP(statut ='o', typ = Tuple(3), validators=VerifTypeTuple(('R','R','R')), max = "**"), - LInSalome = SIMP(statut ='o', typ = SalomeEntry, max="**"), - - LREEL = SIMP(statut ='f', typ = 'R', max='**', defaut = '',), -) - -UTILISEOBJET = PROC (nom="UTILISEOBJET", - op=None, - UIinfo={"groupes":("Group1",)}, - Obj = SIMP (statut ='o', typ = ObjetUtilisateur,) -) - -ESSAI_FACT=OPER(nom="ESSAI_FACT", - sd_prod=ObjetUtilisateur, - op=None, - fr="Affectation de caractéristiques à des éléments de structure", - regles = (AU_MOINS_UN('Poutre','Barre'), - EXCLUS('Discret','Discret_2D'),), - Info = SIMP(statut='f',typ='I', defaut= 1 ,into=(1,2) ), - Verif = SIMP(statut='f',typ='TXM',validators=NoRepeat(),max='**',into=("Maille","Noeud") ), -# -# ============================================================================== - Poutre = FACT(statut= 'f',max= '**', - Section = SIMP(statut= 'o',typ= 'TXM' ,into= ("GENERALE","RECTANGLE","CERCLE") ), - - b_generale = BLOC(condition = " Section == 'GENERALE'", - regles = (UN_PARMI('Maille','GroupeMailles'),), - Maille = SIMP(statut= 'f',typ= 'TXM' ,validators= NoRepeat(),max= '**'), - GroupeMailles = SIMP(statut= 'f',typ= grma,validators= NoRepeat(),max= '**'), - - Vari = SIMP(statut= 'f',typ= 'TXM',into= ("CONSTANT","HOMOTHETIQUE"),defaut= "CONSTANT"), - - b_constant = BLOC(condition = "Vari == 'CONSTANT'", - regles = (PRESENT_ABSENT('Table','Cara'), - PRESENT_PRESENT('Table','Nom'), - PRESENT_PRESENT('Cara','Valeur'),), - Table = SIMP(statut= 'f',typ='TXM'), - Nom = SIMP(statut= 'f',typ= 'TXM'), - Cara = SIMP(statut= 'o',typ= 'TXM',min= 4 ,max= 5, - fr= "A,IY,IZ,JX sont des paramètres obligatoires", - validators= [NoRepeat(), Compulsory(['A','IY','IZ','JX'])], - into= ("A","IY","IZ","AY","AZ","EY","EZ","JX","RY","RZ","RT","JG","IYR2","IZR2","AI") ), - Valeur = SIMP(statut= 'f',typ= 'R',min= 4 ,max= 15), - ), - ), - b_rectangle = BLOC(condition = "Section == 'RECTANGLE'", - regles = (UN_PARMI('Maille','GroupeMailles'),), - Maille = SIMP(statut= 'f',typ= 'TXM' ,validators= NoRepeat(),max= '**'), - GroupeMailles = SIMP(statut= 'f',typ= grma,validators= NoRepeat(),max= '**'), - Vari = SIMP(statut= 'f',typ= 'TXM',into= ("CONSTANT","HOMOTHETIQUE","AFFINE"),defaut= "CONSTANT"), - b_constant = BLOC(condition = "Vari == 'CONSTANT'", - Cara = SIMP(statut= 'o',typ= 'TXM',min= 1 ,max= 4, - validators = [NoRepeat(), - OrVal( [AndVal( [Compulsory(['H']),Absent(['HY','HZ','EPY','EPZ'])] ), - AndVal( [Compulsory(['HY','HZ']),Together(['EPY','EPZ']),Absent(['H','EP'])] )] )], - into= ("H","EP", "HY","HZ","EPY","EPZ"),), - Valeur = SIMP(statut= 'o',typ= 'R',min= 1 ,max= 4), - ), - - Metrique = SIMP(statut= 'f',typ= 'TXM',defaut= "NON",into= ("OUI","NON") ), - Fcx = SIMP(statut= 'f',typ= 'R'), - Tuyau = SIMP(statut= 'f',typ= 'I',val_max= 10,defaut= 3), - ), - ), -# -# ============================================================================== - Barre = FACT(statut='f',max='**', - regles = (UN_PARMI('Maille','GroupeMailles'),), - Maille = SIMP(statut='f',typ='TXM' ,validators=NoRepeat(),max='**'), - GroupeMailles = SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - Section = SIMP(statut='o',typ='TXM',into=("GENERALE","RECTANGLE","CERCLE") ), - b_generale = BLOC(condition = "Section=='GENERALE'", - regles = (PRESENT_ABSENT('Table','Cara'), - PRESENT_PRESENT('Table','Nom'), - PRESENT_PRESENT('Cara','Valeur')), - Table = SIMP(statut='f',typ='TXM'), - Nom = SIMP(statut='f',typ='TXM',validators=LongStr(1,24) ), - Cara = SIMP(statut='f',typ='TXM',into=("A",) ), - Valeur = SIMP(statut='f',typ='R',min=1,max=1 ), - ), - b_rectangle = BLOC(condition = "Section=='RECTANGLE'", - Cara = SIMP(statut='o',typ='TXM', min=1, max=4, - validators = [NoRepeat(), - OrVal( [AndVal( [Compulsory(['H']),Absent(['HY','HZ','EPY','EPZ'])] ), - AndVal( [Compulsory(['HY','HZ']),Together(['EPY','EPZ']),Absent(['H','EP'])] )] )], - into=("H","EP","HZ","HY","EPY","EPZ"), ), - Valeur = SIMP(statut='o',typ='R',min=1,max=4 ), ), - b_cercle = BLOC(condition = "Section=='CERCLE'", - Cara = SIMP(statut='o',typ='TXM',validators=[NoRepeat(),Compulsory(['R'])],min=1,max=2,into=("R","EP") ), - Valeur = SIMP(statut='o',typ='R',min=1,max=2 ), ), - ), -# -# ============================================================================== - Discret = FACT(statut='f',max='**', - REPERE = SIMP(statut='f',typ='TXM',into=("LOCAL","GLOBAL") ), - AMOR_HYST = SIMP(statut='f',typ='R' ), - SYME = SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON"),), - b_SYME_OUI = BLOC(condition="SYME=='OUI'", - fr="SYMETRIQUE: Affectation de matrices de rigidité, de masse ou d'amortissement à des mailles ou noeuds", - Cara = SIMP(statut='o',typ='TXM',validators=NoRepeat(),max=1,defaut="None", - into = ("K_T_D_N", "K_T_D_L", "K_TR_D_N", "K_TR_D_L", "K_T_N", "K_T_L", "K_TR_N", "K_TR_L", - "M_T_D_N", "M_T_D_L", "M_TR_D_N", "M_TR_D_L", "M_T_N", "M_T_L", "M_TR_N", "M_TR_L", - "A_T_D_N", "A_T_D_L", "A_TR_D_N", "A_TR_D_L", "A_T_N", "A_T_L", "A_TR_N", "A_TR_L",),), - # Affection des caractéristiques de RIGIDITE/AMORTISSEMENT/MASSE - b_AK_T_D_N = BLOC(condition = "((Cara=='K_T_D_N')or(Cara=='A_T_D_N'))", - fr = "Noeud: 3 valeurs (triangulaire supérieure par colonne)", - regles = (UN_PARMI('Maille','GroupeMailles','Noeud','GROUP_NO'),), - Noeud = SIMP(statut='f',typ='TXM' ,validators=NoRepeat(),max='**'), - GROUP_NO = SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'), - Maille = SIMP(statut='f',typ='TXM' ,validators=NoRepeat(),max='**'), - GroupeMailles = SIMP(statut='f',typ=grma,validators=NoRepeat(),homo='SansOrdreNiDoublon',max='**'), - Valeur = SIMP(statut='o',typ='R',min=3 ,max=3 ),), - ), - ), -# -# ============================================================================== - Discret_2D = FACT(statut='f',max='**', - REPERE = SIMP(statut='f',typ='TXM',into=("LOCAL","GLOBAL") ), - AMOR_HYST = SIMP(statut='f',typ='R' ), - SYME = SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON"),), - ), -) - - diff --git a/CataTests/Elementary_Lists_52996_Cata.py b/CataTests/Elementary_Lists_52996_Cata.py deleted file mode 100644 index f3cc11c8..00000000 --- a/CataTests/Elementary_Lists_52996_Cata.py +++ /dev/null @@ -1,86 +0,0 @@ -# coding: utf-8 - -from Accas import * - -#class myMesh(ASSD): pass -class myModel(ASSD): pass - -JdC = JDC_CATA(code='PATTERNS', - execmodul=None, - regles=(#AU_PLUS_UN('DEBUT', 'POURSUITE'), - AU_PLUS_UN('ALL_LISTS'), - #AU_PLUS_UN('FIN'), - A_CLASSER(('DEBUT', 'POURSUITE'), 'FIN') - ) -) - -class grma(): - def __convert__(cls,valeur): - if isinstance(valeur, (str,unicode)) and len(valeur.strip()) <= 24 : #and ("item" in (valeur.strip())) - return valeur.strip() - raise ValueError("Name length does not contain \"test\" and is longer than allowed, 24") - __convert__ = classmethod(__convert__) - -def mySeveral(suffix,num): - out=list() - for i in range(1,num+1): - out.append(suffix+str(i).zfill(2)) - return out - -switch_facultatif=True #change 'o' to 'f' of some widgets in the loop -#empty_defauts=True - -def myBloc(num): - myNum=str(num).zfill(2) - list_item_body="Item_"+myNum+"_" - defauts0=["","",True,"'phenomena_"+myNum+"'",mySeveral(list_item_body,2)] #presence of default values - defauts_mask=[False,False,True,True,True] #switch off defaults of some types - defauts=list() - for id0 in range(len(defauts0)): - if defauts_mask[id0]: - item=", defaut="+str(defauts0[id0]) - else: - item="" - defauts.append(item) - #print defauts - - opt=['o','o','o','o','o'] #initial default obligation of items in FACT groups - #make different widgets optional, one by one: - myLen=len(opt) - if switch_facultatif: - make_f=(num)%myLen - opt[make_f]='f' - #print opt - #if empty_defauts: - # clean_defaut=num%myLen - - myString="BLOC(condition=\"MESH==\'mesh_"+myNum+"'\""+defauts[0]+", AFFE=FACT(statut='"+opt[1]+"'"+defauts[1]+", ALL=SIMP(statut='"+opt[2]+"', typ=bool,ang='ALL "+myNum+" help EN'"+defauts[2]+"),PHENOMENA=SIMP(statut='"+opt[3]+"',typ='TXM',into=mySeveral('phenomena_',"+str(num)+")"+defauts[3]+"), MODELISATION=SIMP(statut='"+opt[4]+"',typ='TXM', min=2,max='**',into=mySeveral('"+list_item_body+"',"+str(num*4)+")"+defauts[4]+", ang='Input "+myNum+" list EN', fr='Input "+myNum+" list FR'),),)" - print myString - return eval(myString) - -ALL_LISTS=OPER(nom="ALL_LISTS",op=18,sd_prod=myModel, - UIinfo={"groupes":("Group1",)}, - ang="Model mesh definition EN", - reentrant='n', - #regles=(AU_MOINS_UN('LIST_O_CHECKTEXT','LIST_F_CHECKTEXT','LIST_O_ANY','LIST_F_ANY')), - - #LIST_O_NOREPEAT_CHECKTEXT=SIMP(statut='o',typ=grma,validators=NoRepeat(),min=3, max='**'), - #LIST_F_NOREPEAT_CHECKTEXT=SIMP(statut='f',typ=grma,validators=NoRepeat(),min=3, max='**'), - #LIST_F_REPEAT_CHECKTEXT=SIMP(statut='f',typ=grma,min=3, max='**'), - #LIST_O_REPEAT_CHECKTEXT=SIMP(statut='o',typ=grma,min=3, max='**'), - - #LIST_F_NOREPEAT_ANYTEXT=SIMP(statut='f',typ='TXM',validators=NoRepeat(),min=3, max='**'), - #LIST_O_NOREPEAT_ANYTEXT=SIMP(statut='o',typ='TXM',min=3,validators=NoRepeat(), max='**'), - #LIST_O_REPEAT_ANYTEXT=SIMP(statut='o',typ='TXM',min=3, max='**'), - #LIST_F_REPEAT_ANYTEXT=SIMP(statut='f',typ='TXM',min=3, max='**'), - - #LIST_O_NOREPEAT_CHECKTEXT_ADD=SIMP(statut='o',typ=grma,validators=NoRepeat(), into=("item01","text01","item02","text02","item03","text03",), min=3, max='**'), - #LIST_F_REPEAT_ANYTEXT_ADD=SIMP(statut='f',typ=grma,validators=NoRepeat(), into=("item01","text01","item02","text02","item03","text03",), min=3, max='**'), - - LIST_O_NOREPEAT_CHECKTEXT_ADD_NODEFAUT=SIMP(statut='o',typ=grma,validators=NoRepeat(), into=("item01","text01","item02","text02","item03","text03","item04","text04",), min=3, max='**'), - #LIST_O_NOREPEAT_CHECKTEXT_ADD_DEFAUT=SIMP(statut='o',typ=grma,validators=NoRepeat(), into=("item01","text01","item02","text02","item03","text03",), defaut=('item01','item02','item03'), min=3, max='**'), -) - -Classement_Commandes_Ds_Arbre=('DEBUT','MESH_TYPES','ALL_LISTS','FIN') - -Ordre_Des_Commandes = ('DEBUT','MESH_TYPES','ALL_LISTS','FIN') diff --git a/CataTests/Elementary_Lists_53000_Cata.py b/CataTests/Elementary_Lists_53000_Cata.py deleted file mode 100644 index 0dbba473..00000000 --- a/CataTests/Elementary_Lists_53000_Cata.py +++ /dev/null @@ -1,52 +0,0 @@ -# coding: utf-8 -from Accas import * - -#class myMesh(ASSD): pass -class myModel(ASSD): pass - -JdC = JDC_CATA(code='PATTERNS', - execmodul=None, - regles=(#AU_PLUS_UN('DEBUT', 'POURSUITE'), - AU_PLUS_UN('ALL_LISTS'), - #AU_PLUS_UN('FIN'), - A_CLASSER(('DEBUT', 'POURSUITE'), 'FIN') - ) -) - - -ALL_LISTS=OPER(nom="ALL_LISTS",op=18,sd_prod=myModel, - UIinfo={"groupes":("Group1",)}, - ang="Model mesh definition EN", - reentrant='n', - LIST_O_NOREPEAT_CHECKTEXT_ADD_DEFAUT=SIMP(statut='o',typ="TXM",validators=NoRepeat(), - into=("item01","text01","item02","text02","item03","text03","item04","text04","item05","text05",), - defaut=('item01','item02','item03'), - homo="SansOrdreNiDoublon", - min=3, max='**'), - - #regles=(AU_MOINS_UN('LIST_O_CHECKTEXT','LIST_F_CHECKTEXT','LIST_O_ANY','LIST_F_ANY')), - - #LIST_O_NOREPEAT_CHECKTEXT=SIMP(statut='o',typ=grma,validators=NoRepeat(),min=3, max='**'), - #LIST_F_NOREPEAT_CHECKTEXT=SIMP(statut='f',typ=grma,validators=NoRepeat(),min=3, max='**'), - #LIST_F_REPEAT_CHECKTEXT=SIMP(statut='f',typ=grma,min=3, max='**'), - #LIST_O_REPEAT_CHECKTEXT=SIMP(statut='o',typ=grma,min=3, max='**'), - - #LIST_F_NOREPEAT_ANYTEXT=SIMP(statut='f',typ='TXM',validators=NoRepeat(),min=3, max='**'), - #LIST_O_NOREPEAT_ANYTEXT=SIMP(statut='o',typ='TXM',min=3,validators=NoRepeat(), max='**'), - #LIST_O_REPEAT_ANYTEXT=SIMP(statut='o',typ='TXM',min=3, max='**'), - #LIST_F_REPEAT_ANYTEXT=SIMP(statut='f',typ='TXM',min=3, max='**'), - - #LIST_O_NOREPEAT_CHECKTEXT_ADD=SIMP(statut='o',typ=grma,validators=NoRepeat(), into=("item01","text01","item02","text02","item03","text03",), min=3, max='**'), - #LIST_F_REPEAT_ANYTEXT_ADD=SIMP(statut='f',typ=grma,validators=NoRepeat(), into=("item01","text01","item02","text02","item03","text03",), min=3, max='**'), - - #LIST_O_NOREPEAT_CHECKTEXT_ADD_NODEFAUT=SIMP(statut='o',typ=grma,validators=NoRepeat(), into=("item01","text01","item02","text02","item03","text03","item04","text04",), min=3, max='**'), - - - #LIST_O_SANSORDRENODOUBLON_CHECKTEXT_DEFAUT=SIMP(statut='o',typ=grma,homo="SansOrdreNiDoublon", into=("item01","text01","item02","text02","item03","text03",), defaut=('item01','item02','item03'), min=3, max='**'), -) - - - -Classement_Commandes_Ds_Arbre=('DEBUT','MESH_TYPES','ALL_LISTS','FIN') - -Ordre_Des_Commandes = ('DEBUT','MESH_TYPES','ALL_LISTS','FIN') diff --git a/CataTests/Elementary_Lists_53013_Cata.py b/CataTests/Elementary_Lists_53013_Cata.py deleted file mode 100644 index cf371ff2..00000000 --- a/CataTests/Elementary_Lists_53013_Cata.py +++ /dev/null @@ -1,59 +0,0 @@ -# coding: utf-8 -from Accas import * - -class myModel(ASSD): pass - -JdC = JDC_CATA(code='PATTERNS', - execmodul=None, - regles=(#AU_PLUS_UN('DEBUT', 'POURSUITE'), - AU_PLUS_UN('ALL_LISTS'), - #AU_PLUS_UN('FIN'), - A_CLASSER(('DEBUT', 'POURSUITE'), 'FIN') - ) -) - -class grma(): - def __convert__(cls,valeur): - if isinstance(valeur, (str,unicode)) and len(valeur.strip()) <= 12 and ("item" in (valeur.strip()).lower()): # - return valeur.strip() - raise ValueError("Name length does not contain \"test\" and is longer than allowed, 12") - __convert__ = classmethod(__convert__) - -def mySeveral(suffix,num): - out=list() - for i in range(1,num+1): - out.append(suffix+str(i).zfill(2)) - return out - -ALL_LISTS=OPER(nom="ALL_LISTS",op=18,sd_prod=myModel, - UIinfo={"groupes":("Group1",)}, - fr="All lists definition FR", - ang="All lists definition EN", - reentrant='n', - #regles=(AU_MOINS_UN('LIST_O_CHECKTEXT','LIST_F_CHECKTEXT','LIST_O_ANY','LIST_F_ANY')), - - L1_LIST_O_NOREPEAT_CHECKTEXT=SIMP(statut='o',typ=grma,validators=NoRepeat(),min=3, max='**', ang='Obligatory, No Repetitions, checked text, EN'), - L2_LIST_F_NOREPEAT_CHECKTEXT=SIMP(statut='f',typ=grma,validators=NoRepeat(),min=3, max='**', ang='Optional, No Repetitions, checked text, EN'), - L3_LIST_F_REPEAT_CHECKTEXT=SIMP(statut='f',typ=grma,min=3, max='**',ang='Optional, Allowed Repetitions, checked text, EN'), - L4_LIST_O_REPEAT_CHECKTEXT=SIMP(statut='o',typ=grma,min=3, max='**',ang='Obligatory, Allowed Repetitions, checked text, EN'), - - L5_LIST_F_NOREPEAT_ANYTEXT=SIMP(statut='f',typ='TXM',validators=NoRepeat(),min=3, max='**',ang='Optional, No Repetitions, any text, EN'), - L6_LIST_O_NOREPEAT_ANYTEXT=SIMP(statut='o',typ='TXM',min=3,validators=NoRepeat(), max='**',ang='Obligatory, No Repetitions, any text, EN'), - L7_LIST_O_REPEAT_ANYTEXT=SIMP(statut='o',typ='TXM',min=3, max='**',ang='Obligatory, Allowed Repetitions, any text, EN'), - L8_LIST_F_REPEAT_ANYTEXT=SIMP(statut='f',typ='TXM',min=3, max='**',ang='Optional, Allowed Repetitions, any text, EN'), - - L9_LIST_O_NOREPEAT_CHECKTEXT_ADD=SIMP(statut='o',typ=grma,validators=NoRepeat(), into=("item01","text01","item02","text02","item03","text03",), min=3, max='**',ang='With spare list, Obligatory, No Repetitions, checked text, EN',), - L10_LIST_F_REPEAT_ANYTEXT_ADD=SIMP(statut='f',typ='TXM', into=("item01","text01","item02","text02","item03","text03",), min=3, max='**',ang='With spare list, Optional, Allowed Repetitions, any text, EN'), - L11_LIST_O_REPEAT_CHECKTEXT_ADD_NODEFAUT=SIMP(statut='o',typ=grma, into=("item01","text01","item02","text02","item03","text03","item04","text04"),ang='With spare list, obligatory, No Repetitions, checked text, no default values, EN', min=3, max='**'), - L12_LIST_O_NOREPEAT_CHECKTEXT_ADD_DEFAUT=SIMP(statut='o',typ=grma,validators=NoRepeat(), into=("item01","text01","item02","text02","item03","text03","item04","text04","item05","text05",), defaut=('item01','item02','item03'), min=3, max='**',ang='With spare list, Obligatory, No Repetitions, checked text, with default values EN'), - - L13_LIST_F_SANSORDRENODOUBLON_ANYTEXT_NODEFAUT=SIMP(statut='f',typ='TXM',homo="SansOrdreNiDoublon", into=("item01","text01","item02","text02","item03","text03",), min=3, max='**',ang='With check boxes, Optional, any text, no defaults, EN'), - L14_LIST_O_SANSORDRENODOUBLON_CHECKTEXT_NODEFAUT=SIMP(statut='o',typ=grma,homo="SansOrdreNiDoublon", into=("item01","text01","item02","text02","item03","text03",), min=3, max='**',ang='With check boxes, Obligatory, checked text, EN'), - L15_LIST_O_SANSORDRENODOUBLON_CHECKTEXT_DEFAUT=SIMP(statut='o',typ=grma,homo="SansOrdreNiDoublon", into=("item01","text01","item02","text02","item03","text03","item02","text02","item01","text01",), defaut=('item01','item02','item03'), min=3, max='**', ang='With check boxes, Obligatory, checked text, with default values, EN'), -) - - - -Classement_Commandes_Ds_Arbre=('DEBUT','MESH_TYPES','ALL_LISTS','FIN') - -Ordre_Des_Commandes = ('DEBUT','MESH_TYPES','ALL_LISTS','FIN') diff --git a/CataTests/Elementary_Lists_53036_Cata.py b/CataTests/Elementary_Lists_53036_Cata.py deleted file mode 100644 index 5cdc0faa..00000000 --- a/CataTests/Elementary_Lists_53036_Cata.py +++ /dev/null @@ -1,59 +0,0 @@ -# coding: utf-8 -from Accas import * - -class myModel(ASSD): pass - -JdC = JDC_CATA(code='PATTERNS', - execmodul=None, - regles=(#AU_PLUS_UN('DEBUT', 'POURSUITE'), - AU_PLUS_UN('ALL_LISTS'), - #AU_PLUS_UN('FIN'), - A_CLASSER(('DEBUT', 'POURSUITE'), 'FIN') - ) -) - -class grma(): - def __convert__(cls,valeur): - if isinstance(valeur, (str,unicode)) and len(valeur.strip()) <= 12 and ("item" in (valeur.strip()).lower()): # - return valeur.strip() - raise ValueError("Name length does not contain \"item\" and is longer than allowed, 12") - __convert__ = classmethod(__convert__) - -def mySeveral(suffix,num): - out=list() - for i in range(1,num+1): - out.append(suffix+str(i).zfill(2)) - return out - -ALL_LISTS=OPER(nom="ALL_LISTS",op=18,sd_prod=myModel, - UIinfo={"groupes":("Group1",)}, - fr="All lists definition FR", - ang="All lists definition EN", - reentrant='n', - #regles=(AU_MOINS_UN('LIST_O_CHECKTEXT','LIST_F_CHECKTEXT','LIST_O_ANY','LIST_F_ANY')), - - L1_LIST_O_NOREPEAT_CHECKTEXT=SIMP(statut='o',typ=grma,validators=NoRepeat(),min=3, max='**', ang='Obligatory, No Repetitions, checked text, EN'), - L2_LIST_F_NOREPEAT_CHECKTEXT=SIMP(statut='f',typ=grma,validators=NoRepeat(),min=3, max='**', ang='Optional, No Repetitions, checked text, EN'), - L3_LIST_F_REPEAT_CHECKTEXT=SIMP(statut='f',typ=grma,min=3, max='**',ang='Optional, Allowed Repetitions, checked text, EN'), - L4_LIST_O_REPEAT_CHECKTEXT=SIMP(statut='o',typ=grma,min=3, max='**',ang='Obligatory, Allowed Repetitions, checked text, EN'), - - L5_LIST_F_NOREPEAT_ANYTEXT=SIMP(statut='f',typ='TXM',validators=NoRepeat(),min=3, max='**',ang='Optional, No Repetitions, any text, EN'), - L6_LIST_O_NOREPEAT_ANYTEXT=SIMP(statut='o',typ='TXM',min=3,validators=NoRepeat(), max='**',ang='Obligatory, No Repetitions, any text, EN'), - L7_LIST_O_REPEAT_ANYTEXT=SIMP(statut='o',typ='TXM',min=3, max='**',ang='Obligatory, Allowed Repetitions, any text, EN'), - L8_LIST_F_REPEAT_ANYTEXT=SIMP(statut='f',typ='TXM',min=3, max='**',ang='Optional, Allowed Repetitions, any text, EN'), - - L9_LIST_O_NOREPEAT_CHECKTEXT_ADD=SIMP(statut='o',typ=grma,validators=NoRepeat(), into=("item01","text01","item02","text02","item03","text03",), min=3, max='**',ang='With spare list, Obligatory, No Repetitions, checked text, EN',), - L10_LIST_F_REPEAT_ANYTEXT_ADD=SIMP(statut='f',typ='TXM', into=("item01","text01","item02","text02","item03","text03",), min=3, max='**',ang='With spare list, Optional, Allowed Repetitions, any text, EN'), - L11_LIST_O_REPEAT_CHECKTEXT_ADD_NODEFAUT=SIMP(statut='o',typ=grma, into=("item01","text01","item02","text02","item03","text03","item04","text04"),ang='With spare list, obligatory, No Repetitions, checked text, no default values, EN', min=3, max='**'), - L12_LIST_O_NOREPEAT_CHECKTEXT_ADD_DEFAUT=SIMP(statut='o',typ=grma,validators=NoRepeat(), into=("item01","text01","item02","text02","item03","text03","item04","text04","item05","text05",), defaut=('item01','item02','item03'), min=3, max='**',ang='With spare list, Obligatory, No Repetitions, checked text, with default values EN'), - - L13_LIST_F_SANSORDRENODOUBLON_ANYTEXT_NODEFAUT=SIMP(statut='f',typ='TXM',homo="SansOrdreNiDoublon", into=("item01","text01","item02","text02","item03","text03",), min=3, max='**',ang='With check boxes, Optional, any text, no defaults, EN'), - L14_LIST_O_SANSORDRENODOUBLON_CHECKTEXT_NODEFAUT=SIMP(statut='o',typ=grma,homo="SansOrdreNiDoublon", into=("item01","text01","item02","text02","item03","text03",), min=3, max='**',ang='With check boxes, Obligatory, checked text, EN'), - L15_LIST_O_SANSORDRENODOUBLON_CHECKTEXT_NOREPEAT_DEFAUT=SIMP(statut='o',typ=grma,homo="SansOrdreNiDoublon", into=("item01","text01","item02","text02","item03","text03","item03","text03","item02","text02","item01","text01",), defaut=('item01','item02','item03'), min=3, max='**', ang='With check boxes, Obligatory, checked text, with default values, EN'), #validators=NoRepeat(), -) - - - -Classement_Commandes_Ds_Arbre=('DEBUT','MESH_TYPES','ALL_LISTS','FIN') - -Ordre_Des_Commandes = ('DEBUT','MESH_TYPES','ALL_LISTS','FIN') diff --git a/CataTests/Elementary_Lists_Cata.py b/CataTests/Elementary_Lists_Cata.py deleted file mode 100755 index 92d20b35..00000000 --- a/CataTests/Elementary_Lists_Cata.py +++ /dev/null @@ -1,59 +0,0 @@ -# coding: utf-8 -from Accas import * - -class myModel(ASSD): pass - -JdC = JDC_CATA(code='PATTERNS', - execmodul=None, - regles=(#AU_PLUS_UN('DEBUT', 'POURSUITE'), - AU_PLUS_UN('ALL_LISTS'), - #AU_PLUS_UN('FIN'), - A_CLASSER(('DEBUT', 'POURSUITE'), 'FIN') - ) -) - -class grma(): - def __convert__(cls,valeur): - if isinstance(valeur, (str,unicode)) and len(valeur.strip()) <= 12 and ("item" in (valeur.strip()).lower()): # - return valeur.strip() - raise ValueError("Name length does not contain \"test\" and is longer than allowed, 12") - __convert__ = classmethod(__convert__) - -def mySeveral(suffix,num): - out=list() - for i in range(1,num+1): - out.append(suffix+str(i).zfill(2)) - return out - -ALL_LISTS=OPER(nom="ALL_LISTS",op=18,sd_prod=myModel, - UIinfo={"groupes":("Group1",)}, - fr="All lists definition FR", - ang="All lists definition EN", - reentrant='n', - #regles=(AU_MOINS_UN('LIST_O_CHECKTEXT','LIST_F_CHECKTEXT','LIST_O_ANY','LIST_F_ANY')), - - L1_LIST_O_NOREPEAT_CHECKTEXT=SIMP(statut='o',typ=grma,validators=NoRepeat(),min=3, max='**', ang='Obligatory, No Repetitions, checked text, EN'), - L2_LIST_F_NOREPEAT_CHECKTEXT=SIMP(statut='f',typ=grma,validators=NoRepeat(),min=3, max='**', ang='Optional, No Repetitions, checked text, EN'), - L3_LIST_F_REPEAT_CHECKTEXT=SIMP(statut='f',typ=grma,min=3, max='**',ang='Optional, Allowed Repetitions, checked text, EN'), - L4_LIST_O_REPEAT_CHECKTEXT=SIMP(statut='o',typ=grma,min=3, max='**',ang='Obligatory, Allowed Repetitions, checked text, EN'), - - L5_LIST_F_NOREPEAT_ANYTEXT=SIMP(statut='f',typ='TXM',validators=NoRepeat(),min=3, max='**',ang='Optional, No Repetitions, any text, EN'), - L6_LIST_O_NOREPEAT_ANYTEXT=SIMP(statut='o',typ='TXM',min=3,validators=NoRepeat(), max='**',ang='Obligatory, No Repetitions, any text, EN'), - L7_LIST_O_REPEAT_ANYTEXT=SIMP(statut='o',typ='TXM',min=3, max='**',ang='Obligatory, Allowed Repetitions, any text, EN'), - L8_LIST_F_REPEAT_ANYTEXT=SIMP(statut='f',typ='TXM',min=3, max='**',ang='Optional, Allowed Repetitions, any text, EN'), - - L9_LIST_O_NOREPEAT_CHECKTEXT_ADD=SIMP(statut='o',typ=grma,validators=NoRepeat(), into=("item01","text01","item02","text02","item03","text03",), min=3, max='**',ang='With spare list, Obligatory, No Repetitions, checked text, EN',), - L10_LIST_F_REPEAT_ANYTEXT_ADD=SIMP(statut='f',typ='TXM', into=("item01","text01","item02","text02","item03","text03",), min=3, max='**',ang='With spare list, Optional, Allowed Repetitions, any text, EN'), - L11_LIST_O_REPEAT_CHECKTEXT_ADD_NODEFAUT=SIMP(statut='o',typ=grma, into=("item01","text01","item02","text02","item03","text03","item04","text04"),ang='With spare list, obligatory, No Repetitions, checked text, no default values, EN', min=3, max='**'), - L12_LIST_O_NOREPEAT_CHECKTEXT_ADD_DEFAUT=SIMP(statut='o',typ=grma,validators=NoRepeat(), into=("item01","text01","item02","text02","item03","text03","item04","text04","item05","text05",), defaut=('item01','item02','item03'), min=3, max='**',ang='With spare list, Obligatory, No Repetitions, checked text, with default values EN'), - - L13_LIST_F_SANSORDRENODOUBLON_ANYTEXT_NODEFAUT=SIMP(statut='f',typ='TXM',homo="SansOrdreNiDoublon", into=("item01","text01","item02","text02","item03","text03",), min=3, max='**',ang='With check boxes, Optional, any text, no defaults, EN'), - L14_LIST_O_SANSORDRENODOUBLON_CHECKTEXT_NODEFAUT=SIMP(statut='o',typ=grma,homo="SansOrdreNiDoublon", into=("item01","text01","item02","text02","item03","text03",), min=3, max='**',ang='With check boxes, Obligatory, checked text, EN'), - L15_LIST_O_SANSORDRENODOUBLON_CHECKTEXT_DEFAUT=SIMP(statut='o',typ=grma,homo="SansOrdreNiDoublon", into=("item01","text01","item02","text02","item03","text03",), defaut=('item01','item02','item03'), min=3, max='**', ang='With check boxes, Obligatory, checked text, with default values, EN'), -) - - - -Classement_Commandes_Ds_Arbre=('DEBUT','MESH_TYPES','ALL_LISTS','FIN') - -Ordre_Des_Commandes = ('DEBUT','MESH_TYPES','ALL_LISTS','FIN') diff --git a/CataTests/Global_Condition_Cata.py b/CataTests/Global_Condition_Cata.py deleted file mode 100755 index 02396340..00000000 --- a/CataTests/Global_Condition_Cata.py +++ /dev/null @@ -1,53 +0,0 @@ -# coding: utf-8 -from Accas import * -#class myModel(ASSD): pass - -JdC = JDC_CATA(code='GLOB_COND', - execmodul=None, - regles=(AU_PLUS_UN('TYPES',), - AU_PLUS_UN('INITS',), - AU_PLUS_UN('DATAS',), - #A_CLASSER('TYPES','INITS','DATAS') - ) -); - -TYPES=PROC(nom='TYPES',op=None,UIinfo={"groupes":("Global_Workflow",)}, #sd_prod=myModel, - MODE=SIMP( - typ='TXM', - statut='o', - position='global_jdc', - into=("MANUAL","AUTOMATIC","MIXED"), - defaut="AUTOMATIC", - ), -); - -liste_condition=('INITS', 'DATAS') - -INITS=PROC(nom='INITS',op=None,UIinfo={"groupes":("INI_param",)}, - ini_manual=BLOC(condition="MODE == 'MANUAL'", - Informer=SIMP(statut='o',typ='TXM', defaut="INITS MANUAL"), - ), - ini_auto=BLOC(condition="MODE == 'AUTOMATIC'", - Informer=SIMP(statut='o', typ='TXM', defaut="INITS AUTOMATIC",), - ), - ini_mixed=BLOC(condition="MODE == 'MIXED'", - Informer=SIMP(statut='o',typ='TXM', defaut="INITS MIXED",), - ), -); -DATAS=PROC(nom='DATAS',op=None,UIinfo={"groupes":("DATAS",)}, - data_manual=BLOC(condition="MODE == 'MANUAL'", - Informer=SIMP(statut='o',typ='TXM', defaut="DATAS MANUAL", - ), - ), - data_auto=BLOC(condition="MODE == 'AUTOMATIC'", - Informer=SIMP(statut='o', typ='TXM', defaut="DATAS AUTOMATIC", - ), - ), - data_mixed=BLOC(condition="MODE == 'MIXED'", - Informer=SIMP(statut='o',typ='TXM', defaut="DATAS MIXED", - ), - ), -); - -Classement_Commandes_Ds_Arbre=('TYPES','INITS','DATAS') -Ordre_Des_Commandes = ('TYPES','INITS','DATAS') diff --git a/CataTests/Many_Concepts_52983_Cata.py b/CataTests/Many_Concepts_52983_Cata.py deleted file mode 100644 index 70f099ac..00000000 --- a/CataTests/Many_Concepts_52983_Cata.py +++ /dev/null @@ -1,39 +0,0 @@ -# coding: utf-8 - -from Accas import * - -#class myMesh(ASSD): pass -class myModel(ASSD): pass - -JdC = JDC_CATA(code='PATTERNS', - execmodul=None, - regles=(UN_PARMI('DEBUT', 'POURSUITE'), - AU_MOINS_UN('FIN'), - A_CLASSER(('DEBUT', 'POURSUITE'), 'FIN'))) - -DEBUT=PROC(nom="DEBUT", op=68, repetable='n', UIinfo={"groupes":("Group1",)}, ang="Debut Eng help", - PAR_LOT=SIMP(ang="Debut Par Lot help En",statut='o',typ=bool, defaut=True), -) -AFFE_MODELE=OPER(nom="AFFE_MODELE",op=None,sd_prod=myModel, - UIinfo={"groupes":("Group1",)}, - ang="Model mesh definition EN", - MESH=SIMP(statut='o',typ='TXM',into=("mesh_01","mesh_02","mesh_03","mesh_04",) , defaut="mesh_01"), - #reentrant='n', - #regles=(AU_MOINS_UN('AFFE','AFFE_SOUS_STRUC'),UN_PARMI('MAILLAGE','GRILLE')), - - - block_mesh_01=BLOC(condition="MESH=='mesh_01'", - AFFE=FACT(statut='o', - ALL=SIMP(statut='o', typ=bool,ang='ALL 01 help EN', defaut=True), - PHENOMENA=SIMP(statut='o',typ='TXM',into=('phenomena_01','phenomena_02',), defaut='phenomena_01'), - #MODELISATION=SIMP(statut='o',typ='TXM', min=2,max='**', into=("mesh_01","mesh_02","mesh_03","mesh_04",) ,ang='Input 01 list EN', fr='Input 01 list FR'), - MODELISATION=SIMP(statut='o',typ='TXM', min=2,max='**', into=('Item_01_01','Item_01_02',) ,ang='Input 01 list EN', fr='Input 01 list FR'), - ), - ), -) -FIN=PROC(nom="FIN",op=9999,repetable='n',ang="Finish help EN",UIinfo={"groupes":("Group1",)}, - FORMAT_HDF =SIMP(ang="Save HDF EN",statut='f',typ='TXM',defaut="NON",into=("OUI","NON",) ), -) - -Classement_Commandes_Ds_Arbre=('DEBUT','MESH','AFFE_MODELE','FIN') -Ordre_Des_Commandes = ('DEBUT','MESH','AFFE_MODELE','FIN') diff --git a/CataTests/Many_Concepts_52988_Cata.py b/CataTests/Many_Concepts_52988_Cata.py deleted file mode 100644 index 52d4f10f..00000000 --- a/CataTests/Many_Concepts_52988_Cata.py +++ /dev/null @@ -1,76 +0,0 @@ -# coding: utf-8 - -from Accas import * - -class myMesh(ASSD): pass -class myModel(ASSD): pass - -JdC = JDC_CATA(code='PATTERNS', - execmodul=None, - regles=(AU_PLUS_UN('DEBUT', 'POURSUITE'), - AU_PLUS_UN('AFFE_MODELE'), - AU_PLUS_UN('FIN'), - A_CLASSER(('DEBUT', 'POURSUITE'), 'FIN'))) - -def mySeveral(suffix,num): - out=list() - for i in range(1,num+1): - out.append(suffix+str(i).zfill(2)) - return out - -switch_facultatif=True #change 'o' to 'f' of some widgets in the loop -empty_defauts=True - -def myBloc(num): - myNum=str(num).zfill(2) - list_item_body="Item_"+myNum+"_" - defauts0=["","",True,"'phenomena_"+myNum+"'",mySeveral(list_item_body,2)] #presence of default values - defauts_mask=[False,False,True,True,True] #switch off defaults of some types - defauts=list() - for id0 in range(len(defauts0)): - if defauts_mask[id0]: - item=", defaut="+str(defauts0[id0]) - else: - item="" - defauts.append(item) - #print defauts - - opt=['o','o','o','o','o'] #initial default obligation of items in FACT groups - #make some widgets optional: - myLen=len(opt) - if switch_facultatif: - make_f=(num)%myLen - opt[make_f]='f' - #print opt - if empty_defauts: - clean_defaut=num%myLen - - myString="BLOC(condition=\"MESH==\'mesh_"+myNum+"'\""+defauts[0]+", AFFE=FACT(statut='"+opt[1]+"'"+defauts[1]+", ALL=SIMP(statut='"+opt[2]+"', typ=bool,ang='ALL "+myNum+" help EN'"+defauts[2]+"),PHENOMENA=SIMP(statut='"+opt[3]+"',typ='TXM',into=mySeveral('phenomena_',"+str(num)+")"+defauts[3]+"), MODELISATION=SIMP(statut='"+opt[4]+"',typ='TXM', min=2,max='**',into=mySeveral('"+list_item_body+"',"+str(num*4)+")"+defauts[4]+", ang='Input "+myNum+" list EN', fr='Input "+myNum+" list FR'),),)" - print myString - return eval(myString) - -DEBUT=PROC(nom="DEBUT", op=10, repetable='n', UIinfo={"groupes":("Group1",)}, ang="Debut Eng help", - PAR_LOT=SIMP(ang="Debut Par Lot help En",statut='o',typ=bool, defaut=True), -); - -AFFE_MODELE=OPER(nom="AFFE_MODELE",op=18,sd_prod=myModel, - UIinfo={"groupes":("Group1",)}, - ang="Model mesh definition EN", - reentrant='n', - regles=(AU_MOINS_UN('APPROVED')), - MESH=SIMP(statut='o',typ='TXM',into=mySeveral("mesh_",4) ,defaut="mesh_01"), - APPROVED=SIMP(statut="o", typ=bool), - block_mesh_01=myBloc(1), - block_mesh_02=myBloc(2), - block_mesh_03=myBloc(3), - block_mesh_04=myBloc(4), -) - - -FIN=PROC(nom="FIN",op=9999,repetable='n',ang="Finish help EN",UIinfo={"groupes":("Group1",)}, - FORMAT_HDF =SIMP(ang="Save HDF EN",statut='f',typ='TXM',defaut="NON",into=("OUI","NON",) ), -); - -Classement_Commandes_Ds_Arbre=('DEBUT','MESH_TYPES','AFFE_MODELE','FIN') - -Ordre_Des_Commandes = ('DEBUT','MESH_TYPES','AFFE_MODELE','FIN') diff --git a/CataTests/Many_Concepts_52989_Cata.py b/CataTests/Many_Concepts_52989_Cata.py deleted file mode 100644 index 930d9e89..00000000 --- a/CataTests/Many_Concepts_52989_Cata.py +++ /dev/null @@ -1,77 +0,0 @@ -# coding: utf-8 - -from Accas import * - -#class myMesh(ASSD): pass -class myModel(ASSD): pass - -JdC = JDC_CATA(code='PATTERNS', - execmodul=None, - regles=(AU_PLUS_UN('DEBUT', 'POURSUITE'), - AU_PLUS_UN('AFFE_MODELE'), - AU_PLUS_UN('FIN'), - A_CLASSER(('DEBUT', 'POURSUITE'), 'FIN'))) - -def mySeveral(suffix,num): - out=list() - for i in range(1,num+1): - out.append(suffix+str(i).zfill(2)) - return out - -switch_facultatif=True #change 'o' to 'f' of some widgets in the loop -#empty_defauts=True - -def myBloc(num): - myNum=str(num).zfill(2) - list_item_body="Item_"+myNum+"_" - defauts0=["","",True,"'phenomena_"+myNum+"'",mySeveral(list_item_body,2)] #presence of default values - defauts_mask=[False,False,True,True,True] #switch off defaults of some types - defauts=list() - for id0 in range(len(defauts0)): - if defauts_mask[id0]: - item=", defaut="+str(defauts0[id0]) - else: - item="" - defauts.append(item) - #print defauts - - opt=['o','o','o','o','o'] #initial default obligation of items in FACT groups - #make different widgets optional, one by one: - myLen=len(opt) - if switch_facultatif: - make_f=(num)%myLen - opt[make_f]='f' - #print opt - #if empty_defauts: - # clean_defaut=num%myLen - - myString="BLOC(condition=\"MESH==\'mesh_"+myNum+"'\""+defauts[0]+", AFFE=FACT(statut='"+opt[1]+"'"+defauts[1]+", ALL=SIMP(statut='"+opt[2]+"', typ=bool,ang='ALL "+myNum+" help EN'"+defauts[2]+"),PHENOMENA=SIMP(statut='"+opt[3]+"',typ='TXM',into=mySeveral('phenomena_',"+str(num)+")"+defauts[3]+"), MODELISATION=SIMP(statut='"+opt[4]+"',typ='TXM', min=2,max='**',into=mySeveral('"+list_item_body+"',"+str(num*4)+")"+defauts[4]+", ang='Input "+myNum+" list EN', fr='Input "+myNum+" list FR'),),)" - print myString - return eval(myString) - -DEBUT=PROC(nom="DEBUT", op=10, repetable='n', UIinfo={"groupes":("Group1",)}, ang="Debut Eng help", - PAR_LOT=SIMP(ang="Debut Par Lot help En",statut='o',typ=bool, defaut=True), -); - -AFFE_MODELE=OPER(nom="AFFE_MODELE",op=18,sd_prod=myModel, - UIinfo={"groupes":("Group1",)}, - ang="Model mesh definition EN", - reentrant='n', - regles=(AU_MOINS_UN('APPROVED')), - MESH=SIMP(statut='o',typ='TXM',into=mySeveral("mesh_",4) ,defaut="mesh_01"), - APPROVED=SIMP(statut="f", typ=bool), # presence of this item will validate the whole group - PAR_LOT=SIMP(ang="Debut Par Lot help En",statut='o',typ='I', defaut=True), - block_mesh_01=myBloc(1), - block_mesh_02=myBloc(2), - block_mesh_03=myBloc(3), - block_mesh_04=myBloc(4), -) - - -FIN=PROC(nom="FIN",op=9999,repetable='n',ang="Finish help EN",UIinfo={"groupes":("Group1",)}, - FORMAT_HDF =SIMP(ang="Save HDF EN",statut='f',typ='TXM',defaut="NON",into=("OUI","NON",) ), -); - -Classement_Commandes_Ds_Arbre=('DEBUT','MESH_TYPES','AFFE_MODELE','FIN') - -Ordre_Des_Commandes = ('DEBUT','MESH_TYPES','AFFE_MODELE','FIN') diff --git a/CataTests/Many_Concepts_52992_Cata.py b/CataTests/Many_Concepts_52992_Cata.py deleted file mode 100644 index 13145b96..00000000 --- a/CataTests/Many_Concepts_52992_Cata.py +++ /dev/null @@ -1,76 +0,0 @@ -# coding: utf-8 - -from Accas import * - -#class myMesh(ASSD): pass -class myModel(ASSD): pass - -JdC = JDC_CATA(code='PATTERNS', - execmodul=None, - regles=(AU_PLUS_UN('DEBUT', 'POURSUITE'), - AU_PLUS_UN('AFFE_MODELE'), - AU_PLUS_UN('FIN'), - A_CLASSER(('DEBUT', 'POURSUITE'), 'FIN'))) - -def mySeveral(suffix,num): - out=list() - for i in range(1,num+1): - out.append(suffix+str(i).zfill(2)) - return out - -switch_facultatif=True #change 'o' to 'f' of some widgets in the loop -#empty_defauts=True - -def myBloc(num): - myNum=str(num).zfill(2) - list_item_body="Item_"+myNum+"_" - defauts0=["","",True,"'phenomena_"+myNum+"'",mySeveral(list_item_body,2)] #presence of default values - defauts_mask=[False,False,True,True,False] #switch off defaults of some types - defauts=list() - for id0 in range(len(defauts0)): - if defauts_mask[id0]: - item=", defaut="+str(defauts0[id0]) - else: - item="" - defauts.append(item) - #print defauts - - opt=['o','o','o','o','o'] #initial default obligation of items in FACT groups - #make different widgets optional, one by one: - myLen=len(opt) - if switch_facultatif: - make_f=(num)%myLen - opt[make_f]='f' - #print opt - #if empty_defauts: - # clean_defaut=num%myLen - - myString="BLOC(condition=\"MESH==\'mesh_"+myNum+"'\""+defauts[0]+", AFFE=FACT(statut='"+opt[1]+"'"+defauts[1]+", ALL=SIMP(statut='"+opt[2]+"', typ=bool,ang='ALL "+myNum+" help EN'"+defauts[2]+"),PHENOMENA=SIMP(statut='"+opt[3]+"',typ='TXM',into=mySeveral('phenomena_',"+str(num)+")"+defauts[3]+"), MODELISATION=SIMP(statut='"+opt[4]+"',typ='TXM', min=4,max='**',into=mySeveral('"+list_item_body+"',"+str(num*4)+")"+defauts[4]+", ang='Input "+myNum+" list EN', fr='Input "+myNum+" list FR'),),)" - print myString - return eval(myString) - -DEBUT=PROC(nom="DEBUT", op=10, repetable='n', UIinfo={"groupes":("Group1",)}, ang="Debut Eng help", - PAR_LOT=SIMP(ang="Debut Par Lot help En",statut='o',typ=bool, defaut=True), -); - -AFFE_MODELE=OPER(nom="AFFE_MODELE",op=18,sd_prod=myModel, - UIinfo={"groupes":("Group1",)}, - ang="Model mesh definition EN", - reentrant='n', - regles=(AU_MOINS_UN('APPROVED')), - MESH=SIMP(statut='o',typ='TXM',into=mySeveral("mesh_",4) ,defaut="mesh_01"), - APPROVED=SIMP(statut="f", typ=bool), # presence of this item will validate the whole group - block_mesh_01=myBloc(1), - block_mesh_02=myBloc(2), - block_mesh_03=myBloc(3), - block_mesh_04=myBloc(4), -) - - -FIN=PROC(nom="FIN",op=9999,repetable='n',ang="Finish help EN",UIinfo={"groupes":("Group1",)}, - FORMAT_HDF =SIMP(ang="Save HDF EN",statut='f',typ='TXM',defaut="NON",into=("OUI","NON",) ), -); - -Classement_Commandes_Ds_Arbre=('DEBUT','MESH_TYPES','AFFE_MODELE','FIN') - -Ordre_Des_Commandes = ('DEBUT','MESH_TYPES','AFFE_MODELE','FIN') diff --git a/CataTests/Matrix_Cata.py b/CataTests/Matrix_Cata.py deleted file mode 100644 index 0e47d7b1..00000000 --- a/CataTests/Matrix_Cata.py +++ /dev/null @@ -1,87 +0,0 @@ -# coding: utf-8 -from Accas import * - -class loi ( ASSD ) : pass -class variable ( ASSD ) : pass - -class Matrice: - def __init__(self,nbLigs=None,nbCols=None,methodeCalculTaille=None,formatSortie="ligne",valSup=None,valMin=None,structure=None): - self.nbLigs=nbLigs - self.nbCols=nbCols - self.methodeCalculTaille=methodeCalculTaille - self.formatSortie=formatSortie - self.valSup=valSup - self.valMin=valMin - self.structure=structure - - def __convert__(self,valeur): - # Attention ne verifie pas grand chose - if type(valeur) != types.ListType : - return None - return valeur - - def info(self): - return "Matrice %s x %s" % (self.nbLigs, self.nbCols) - - __repr__=info - __str__=info - - - -class myModel(ASSD): pass - -JdC = JDC_CATA(code='PATTERNS', - execmodul=None, - regles=(AU_MOINS_UN ( 'CORRELATION' ), - ) -) - -DETERMINISTICVARIABLE = OPER ( nom = "DETERMINISTICVARIABLE", - sd_prod = variable, - op = None, - fr = "Variable deterministe", - ang = "Deterministic variable", - - N = SIMP ( statut = 'o', typ = "TXM", fr = "Nom", ang = "Name", defaut = "Var1" ), - T = SIMP ( statut = 'o', defaut = "in", into = ( "in" , "out", ), typ = "TXM", fr = "Type", ang = "Type" ), - R = SIMP ( statut = 'o', defaut = 0, typ = "I", fr = "Rang", ang = "Rank" ), -) - -DISTRIBUTION = OPER ( nom = "DISTRIBUTION", - sd_prod = loi, - op = 68, - fr = "Definitions des lois marginales utilisees par les variables d'entree", - - R = SIMP ( statut = "o", typ = "R", max = 1, val_min = 0., fr = "Parametre R de la loi | R > 0", ang = "R parameter | R > 0", defaut = 0.5 ), - # T > R - T = SIMP ( statut = "o", typ = "R", max = 1, val_min = 0., fr = "Parametre T de la loi | T > R", ang = "T parameter | T > R", defaut = 0.7 ), - A = SIMP ( statut = "o", typ = "R", max = 1, fr = "Borne inferieure du support de la loi", ang = "Support lower bound", defaut = 0.1 ), - # B > A - B = SIMP ( statut = "o", typ = "R", max = 1, fr = "Borne superieure du support de la loi", ang = "Support upper bound", defaut = 0.3 ), -) - -VARIABLE = PROC ( nom = "VARIABLE", - op = None, - docu = "", - fr = "Variable probabiliste", - ang = "Probabilistic variable", - - ModelVariable = SIMP ( statut = "o", typ = ( variable, ), fr = "Variable d'entrée du modèle", ang = "Input variable of the model" ), - Distribution = SIMP ( statut = "o", typ = ( loi, ), fr = "Modélisation probabiliste", ang = "Probabilistic modelisation" ), -) - -CORRELATION = PROC ( nom = 'CORRELATION', - op = None, - docu = "", - fr = "Correlation entre variables", - ang = "Variable correlation", - - CorrelationMatrix = SIMP ( statut = "o", typ = Matrice(nbLigs=None, - nbCols=None, - methodeCalculTaille='nbDeVariables', - valSup=1, - valMin=-1, - structure="symetrique"), - fr = "Matrice de correlation entre les variables d'entree", - ang = "Correlation matrix for input variables" ), -) diff --git a/CataTests/Nested_Cond_52945_Cata.py b/CataTests/Nested_Cond_52945_Cata.py deleted file mode 100644 index 9d3b119d..00000000 --- a/CataTests/Nested_Cond_52945_Cata.py +++ /dev/null @@ -1,61 +0,0 @@ -# coding: utf-8 - -from Accas import * - -class loi(): pass - -JdC = JDC_CATA (code = 'PATTERNS', - execmodul = None, - ) -use_and=False #switch off second condition about MAX_ROWS while it does not work for blocks greater than 2 -def cond2(myMax=False): - if use_and: - if myMax: - out= " and MAX_ROWS>="+str(myMax) - else: - out="" - else: - out="" - print out - return out - -PROC_01 = PROC(nom = "PROC_01",op = None, ang="Help for PROC_01 EN", - MAX_ROWS=SIMP(statut='o',typ='I',val_min=1,val_max=8, defaut=8), - PROCGROUP1=SIMP(statut='o',typ='TXM',into=("1A","2A","add new row",)), - wideblock1=BLOC(condition='PROCGROUP1=="add new row"'+cond2(1), - PROCGROUP2=SIMP(statut='o',typ='TXM',into=("1A","add new row","3A",)), - wideblock2=BLOC(condition='PROCGROUP2=="add new row"'+cond2(2), - PROCGROUP3=SIMP(statut='o',typ='TXM',into=("1","2","add new row",)), - PROCGROUP689=SIMP(statut='o',typ='TXM',), - wideblock3=BLOC(condition='PROCGROUP3=="add new row"'+cond2(3), - PROCGROUP4=SIMP(statut='o',typ='TXM',into=("1","add new row","3",)), - wideblock4=BLOC(condition='PROCGROUP4=="add new row"'+cond2(4), - PROCGROUP5=SIMP(statut='o',typ='TXM',into=("add new row","2","3",)), - wideblock5=BLOC(condition='PROCGROUP5=="add new row"'+cond2(5), - PROCGROUP6=SIMP(statut='o',typ='TXM',into=("1","2","add new row",)), - wideblock6=BLOC(condition='PROCGROUP6=="add new row"'+cond2(6), - PROCGROUP7=SIMP(statut='o',typ='TXM',into=("1","add new row","3",)), - wideblock7=BLOC(condition='PROCGROUP7=="add new row"'+cond2(7), - PROCGROUP8=SIMP(statut='o',typ='TXM',into=("add new row","2","3",)), - wideblock8=BLOC(condition='PROCGROUP8=="add new row"'+cond2(8), - ) - ) - ) - ) - ) - ) - ) - ) -) - -#LEV1 = OPER( nom = "LEV1", -# sd_prod=loi, -# op=68, -# fr='LEV1 FR', -# Boolean01=SIMP( statut = 'o',typ = bool, defaut=True, fr = 'Bool mandatory FR', ang = 'Bool mandatory EN'), -# SelectedItem=SIMP(statut = 'o',typ = 'TXM', into=["01_01","01_02","01_03","01_04"], fr="FR"), -#) - -Classement_Commandes_Ds_Arbre=('PROC_01',) - -Ordre_Des_Commandes = ('PROC_01',) diff --git a/CataTests/Nested_Cond_52946_Cata.py b/CataTests/Nested_Cond_52946_Cata.py deleted file mode 100644 index fef5edf0..00000000 --- a/CataTests/Nested_Cond_52946_Cata.py +++ /dev/null @@ -1,62 +0,0 @@ -# coding: utf-8 - -from Accas import * - -class loi(): pass - -JdC = JDC_CATA (code = 'PATTERNS', - execmodul = None, - ) -use_and=True #switch off second condition about MAX_ROWS while it does not work for blocks greater than 2 -def cond2(myMax=False): - if use_and: - if myMax: - out= " and MAX_ROWS>="+str(myMax) - else: - out="" - else: - out="" - print out - return out - -PROC_01 = PROC(nom = "PROC_01",op = None, ang="Help for PROC_01 EN", - MAX_ROWS=SIMP(statut='o',typ='I',val_min=1,val_max=8, defaut=8), - PROCGROUP1=SIMP(statut='o',typ='TXM',into=("1","2","add new row",)), - wideblock1=BLOC(condition='PROCGROUP1=="add new row"'+cond2(1), - PROCGROUP2=SIMP(statut='o',typ='TXM',into=("1","add new row","3",)), - #wideblock2=BLOC(condition='PROCGROUP2=="add new row"', - wideblock2=BLOC(condition='MAX_ROWS == 8', - #wideblock2=BLOC(condition='PROCGROUP2=="add new row" and (MAX_ROWS > 2)', - PROCGROUP3=SIMP(statut='o',typ='TXM',into=("1","2","add new row",)), - wideblock3=BLOC(condition='PROCGROUP3=="add new row"'+cond2(3), - PROCGROUP4=SIMP(statut='o',typ='TXM',into=("1","add new row","3",)), - wideblock4=BLOC(condition='PROCGROUP4=="add new row"'+cond2(4), - PROCGROUP5=SIMP(statut='o',typ='TXM',into=("add new row","2","3",)), - wideblock5=BLOC(condition='PROCGROUP5=="add new row"'+cond2(5), - PROCGROUP6=SIMP(statut='o',typ='TXM',into=("1","2","add new row",)), - wideblock6=BLOC(condition='PROCGROUP6=="add new row"'+cond2(6), - PROCGROUP7=SIMP(statut='o',typ='TXM',into=("1","add new row","3",)), - wideblock7=BLOC(condition='PROCGROUP7=="add new row"'+cond2(7), - PROCGROUP8=SIMP(statut='o',typ='TXM',into=("add new row","2","3",)), - wideblock8=BLOC(condition='PROCGROUP8=="add new row"'+cond2(8), - ) - ) - ) - ) - ) - ) - ) - ) -) - -#LEV1 = OPER( nom = "LEV1", -# sd_prod=loi, -# op=68, -# fr='LEV1 FR', -# Boolean01=SIMP( statut = 'o',typ = bool, defaut=True, fr = 'Bool mandatory FR', ang = 'Bool mandatory EN'), -# SelectedItem=SIMP(statut = 'o',typ = 'TXM', into=["01_01","01_02","01_03","01_04"], fr="FR"), -#) - -Classement_Commandes_Ds_Arbre=('PROC_01',) - -Ordre_Des_Commandes = ('PROC_01',) diff --git a/CataTests/Nested_Cond_52947_Cata.py b/CataTests/Nested_Cond_52947_Cata.py deleted file mode 100644 index bf3be39e..00000000 --- a/CataTests/Nested_Cond_52947_Cata.py +++ /dev/null @@ -1,17 +0,0 @@ -# coding: utf-8 - -from Accas import * - -class loi(): pass - -JdC = JDC_CATA (code = 'PATTERNS', - execmodul = None, - ) - -PROC_01 = PROC(nom = "PROC_01",op = None, ang="Help for PROC_01 EN", - PROCGROUP1=SIMP(statut='o',typ='TXM',into=("a1","a2","a3",)), -) - -Classement_Commandes_Ds_Arbre=('PROC_01',) - -Ordre_Des_Commandes = ('PROC_01',) diff --git a/CataTests/Nested_Cond_52948_Cata.py b/CataTests/Nested_Cond_52948_Cata.py deleted file mode 100644 index 81f216f8..00000000 --- a/CataTests/Nested_Cond_52948_Cata.py +++ /dev/null @@ -1,21 +0,0 @@ -# coding: utf-8 - -from Accas import * - -class loi(ASSD): pass - -JdC = JDC_CATA (code = 'PATTERNS', - execmodul = None, - ) - -PER_01 = OPER( nom = "PER_01", - sd_prod=loi, - op=68, - fr='LEV1 FR', - Boolean01=SIMP( statut = 'o',typ = bool, defaut=True, fr = 'Bool mandatory FR', ang = 'Bool mandatory EN'), - SelectedItem=SIMP(statut = 'o',typ = 'TXM', into=["01_01","01_02","01_03","01_04"], fr="FR"), -) - -#Classement_Commandes_Ds_Arbre=('OPER_01',) - -#Ordre_Des_Commandes = ('OPER_01',) diff --git a/CataTests/Nested_Cond_52949_Cata.py b/CataTests/Nested_Cond_52949_Cata.py deleted file mode 100644 index d09011a3..00000000 --- a/CataTests/Nested_Cond_52949_Cata.py +++ /dev/null @@ -1,19 +0,0 @@ -# coding: utf-8 - -from Accas import * - -JdC = JDC_CATA (code = 'PATTERNS', - execmodul = None, - ) - -PROC_01 = PROC(nom = "PROC_01",op = None, ang="Help for PROC_01 EN", - MAX_ROWS=SIMP(statut='o',typ='I',val_min=1,val_max=8, defaut=8), - PROCGROUP1=SIMP(statut='o',typ='TXM',into=("1","2","add new row",)), - wideblock1=BLOC(condition='PROCGROUP1 in "add new row"', - PROCGROUP2=SIMP(statut='o',typ='TXM',into=("1","add new row","3",)), - ) -) - -Classement_Commandes_Ds_Arbre=('PROC_01',) - -Ordre_Des_Commandes = ('PROC_01',) diff --git a/CataTests/Nested_Cond_52952_Cata.py b/CataTests/Nested_Cond_52952_Cata.py deleted file mode 100644 index 47a8d7c5..00000000 --- a/CataTests/Nested_Cond_52952_Cata.py +++ /dev/null @@ -1,60 +0,0 @@ -# coding: utf-8 - -from Accas import * - -class loi(): pass - -JdC = JDC_CATA (code = 'PATTERNS', - execmodul = None, - ) -use_and=False #switch off second condition about MAX_ROWS while it does not work for blocks greater than 2 -def cond2(myMax=False): - if use_and: - if myMax: - out= " and MAX_ROWS>="+str(myMax) - else: - out="" - else: - out="" - #print out - return out - -PROC_01 = PROC(nom = "PROC_01",op = None, ang="Help for PROC_01 EN", - MAX_ROWS=SIMP(statut='o',typ='I',val_min=1,val_max=8, defaut=8), - PROCGROUP1=SIMP(statut='o',typ='TXM',into=("1","2","add new row",)), - wideblock1=BLOC(condition='PROCGROUP1=="add new row"'+cond2(1), - PROCGROUP2=SIMP(statut='o',typ='TXM',into=("1","add new row","3",)), - wideblock2=BLOC(condition='PROCGROUP2=="add new row"'+cond2(2), - PROCGROUP3=SIMP(statut='o',typ='TXM',into=("1","2","add new row",)), - wideblock3=BLOC(condition='PROCGROUP3=="add new row"'+cond2(3), - PROCGROUP4=SIMP(statut='o',typ='TXM',into=("1","add new row","3",)), - wideblock4=BLOC(condition='PROCGROUP4=="add new row"'+cond2(4), - PROCGROUP5=SIMP(statut='o',typ='TXM',into=("add new row","2","3",)), - wideblock5=BLOC(condition='PROCGROUP5=="add new row"'+cond2(5), - PROCGROUP6=SIMP(statut='o',typ='TXM',into=("1","2","add new row",)), - wideblock6=BLOC(condition='PROCGROUP6=="add new row"'+cond2(6), - PROCGROUP7=SIMP(statut='o',typ='TXM',into=("1","add new row","3",)), - wideblock7=BLOC(condition='PROCGROUP7=="add new row"'+cond2(7), - PROCGROUP8=SIMP(statut='o',typ='TXM',into=("add new row","2","3",)), - wideblock8=BLOC(condition='PROCGROUP8=="add new row"'+cond2(8), - ) - ) - ) - ) - ) - ) - ) - ) -) - -#LEV1 = OPER( nom = "LEV1", -# sd_prod=loi, -# op=68, -# fr='LEV1 FR', -# Boolean01=SIMP( statut = 'o',typ = bool, defaut=True, fr = 'Bool mandatory FR', ang = 'Bool mandatory EN'), -# SelectedItem=SIMP(statut = 'o',typ = 'TXM', into=["01_01","01_02","01_03","01_04"], fr="FR"), -#) - -Classement_Commandes_Ds_Arbre=('PROC_01',) - -Ordre_Des_Commandes = ('PROC_01',) diff --git a/CataTests/Separate_Blocks_52958_Cata.py b/CataTests/Separate_Blocks_52958_Cata.py deleted file mode 100644 index 1327a3fb..00000000 --- a/CataTests/Separate_Blocks_52958_Cata.py +++ /dev/null @@ -1,29 +0,0 @@ -# coding: utf-8 - -from Accas import * - -JdC = JDC_CATA (code = 'PATTERNS', - execmodul = None, - ) -def several(suffix,num): - out=list() - for i in range(1,num+1): - out.append(suffix+str(i).zfill(2)) - return out - -NUMERICAL_PARAMETERS=PROC(nom = "NUMERICAL_PARAMETERS", op=None, ang="Help for NUMERICAL_PARAMETERS, English version", - #Equations=SIMP(statut = 'o',typ = 'TXM',into=("EF","VF","BS"),defaut="EF"), - Solver_definition=FACT(statut = 'o', - Solver = SIMP(statut = 'o',typ = 'TXM', into=several("Solver_",12), defaut="Solver_06"), - ) -) -PASCALE=PROC(nom = "PASCALE", op=None, ang="Help for NUMERICAL_PARAMETERS, English version", - Equations=SIMP(statut = 'o',typ = 'TXM',into=("EF","VF","BS"),defaut="EF"), - Solver_definition=FACT(statut = 'o', - Solver = SIMP(statut = 'o',typ = 'TXM', into=several("Solver_",12), defaut="Solver_06"), - ) -) - -Classement_Commandes_Ds_Arbre=('NUMERICAL_PARAMETERS',) - -Ordre_Des_Commandes = ('NUMERICAL_PARAMETERS',) diff --git a/CataTests/Separate_Blocks_52963_Cata.py b/CataTests/Separate_Blocks_52963_Cata.py deleted file mode 100644 index c115196f..00000000 --- a/CataTests/Separate_Blocks_52963_Cata.py +++ /dev/null @@ -1,40 +0,0 @@ -# coding: utf-8 - -from Accas import * - -JdC = JDC_CATA (code = 'PATTERNS', - execmodul = None, - ) -def mySeveral(suffix,num): - out=list() - for i in range(1,num+1): - out.append(suffix+str(i).zfill(2)) - return out - -def myFact(num): - myNum=str(num).zfill(2) - list_item_body="Item_"+myNum+"_" - myString="FACT(statut = 'f', List_"+myNum+" = SIMP(statut = 'o',typ = 'TXM', into=mySeveral('"+list_item_body+"',12), defaut='"+list_item_body+myNum+"'),Real_"+myNum+" = SIMP(statut = 'o',typ = 'R', defaut = "+str(num/100.)+", ang='Real "+myNum+" help EN'),Integer_"+myNum+" = SIMP(statut = 'o',typ = 'I', defaut = "+str(100+num)+",ang='Max_Iter "+myNum+" help EN'))" - print myString - return eval(myString) - - -PROC_01=PROC(nom = "PROC_01", op=None, ang="Help for PROC_01, English version",fr="Help for PROC_01, French version", docu="", - Radio_01=SIMP(statut = 'f',typ = 'TXM',into=("EF","VF","BS"),defaut="EF"), - FACT_01=myFact(1), - FACT_02=myFact(2), - FACT_03=myFact(3), - FACT_04=myFact(4), - FACT_05=myFact(5), - FACT_06=myFact(6), - FACT_07=myFact(7), - FACT_08=myFact(8), - FACT_09=myFact(9), - FACT_10=myFact(10), - FACT_11=myFact(11), - FACT_12=myFact(12), -) - -Classement_Commandes_Ds_Arbre=('PROC_01',) - -Ordre_Des_Commandes = ('PROC_01',) diff --git a/CataTests/Separate_Blocks_52966_Cata.py b/CataTests/Separate_Blocks_52966_Cata.py deleted file mode 100644 index baef1eb1..00000000 --- a/CataTests/Separate_Blocks_52966_Cata.py +++ /dev/null @@ -1,48 +0,0 @@ -# coding: utf-8 - -from Accas import * - -JdC = JDC_CATA (code = 'PATTERNS', - execmodul = None, - ) -def mySeveral(suffix,num): - out=list() - for i in range(1,num+1): - out.append(suffix+str(i).zfill(2)) - return out - -switch_facultatif=False #change 'o' to 'f' of some widgets in the loop - -def myFact(num): - opt=['o','f','o','o'] - if switch_facultatif: - myLen=len(opt) - make_f=(num-1)%myLen - opt[make_f]='f' - #print opt - myNum=str(num).zfill(2) - list_item_body="Item_"+myNum+"_" - myString="FACT(statut = '"+opt[0]+"', List_"+myNum+" = SIMP(statut = '"+opt[1]+"',typ = 'TXM', into=mySeveral('"+list_item_body+"',12), defaut='"+list_item_body+myNum+"'),Real_"+myNum+" = SIMP(statut = '"+opt[2]+"',typ = 'R', defaut = "+str(num/100.)+", ang='Real "+myNum+" help EN'),Integer_"+myNum+" = SIMP(statut = '"+opt[3]+"',typ = 'I', defaut = "+str(100+num)+",ang='Max_Iter "+myNum+" help EN'))" - print myString - return eval(myString) - - -PROC_01=PROC(nom = "PROC_01", op=None, ang="Help for PROC_01, English version",fr="Help for PROC_01, French version", docu="", - Radio_01=SIMP(statut = 'o',typ = 'TXM',into=("EF","VF","BS"),defaut="EF"), - FACT_01=myFact(1), - FACT_02=myFact(2), - FACT_03=myFact(3), - FACT_04=myFact(4), - FACT_05=myFact(5), - FACT_06=myFact(6), - FACT_07=myFact(7), - FACT_08=myFact(8), - FACT_09=myFact(9), - FACT_10=myFact(10), - FACT_11=myFact(11), - FACT_12=myFact(12), -) - -Classement_Commandes_Ds_Arbre=('PROC_01',) - -Ordre_Des_Commandes = ('PROC_01',) diff --git a/CataTests/Separate_Blocks_52972_Cata.py b/CataTests/Separate_Blocks_52972_Cata.py deleted file mode 100644 index 88927e49..00000000 --- a/CataTests/Separate_Blocks_52972_Cata.py +++ /dev/null @@ -1,66 +0,0 @@ -# coding: utf-8 - -from Accas import * - -JdC = JDC_CATA (code = 'PATTERNS', - execmodul = None, - ) -def mySeveral(suffix,num): - out=list() - for i in range(1,num+1): - out.append(suffix+str(i).zfill(2)) - return out - -switch_facultatif=True #change 'o' to 'f' of some widgets in the loop -empty_defauts=True - -def myFact(num): - myNum=str(num).zfill(2) - list_item_body="Item_"+myNum+"_" - - defauts0=["","'"+list_item_body+myNum+"'", str(num/100.), str(100+num), "'Text_"+myNum+"'" ] #presence of default values - defauts_mask=[False,True,True,False,True] #switch off defaults of some types - defauts=list() - for id0 in range(len(defauts0)): - if defauts_mask[id0]: - item=", defaut="+defauts0[id0] - else: - item="" - defauts.append(item) - print defauts - - opt=['o','o','o','o','o'] #initial default obligation of items in FACT groups - #make some widgets optional: - myLen=len(opt) - if switch_facultatif: - make_f=(num)%myLen - opt[make_f]='f' - #print opt - if empty_defauts: - clean_defaut=num%myLen - - - myString="FACT(statut = '"+opt[0]+"', List_"+myNum+" = SIMP(statut = '"+opt[1]+"',typ = 'TXM', into=mySeveral('"+list_item_body+"',12)"+defauts[1]+"),Real_"+myNum+" = SIMP(statut = '"+opt[2]+"',typ = 'R'"+defauts[2]+", ang='Real "+myNum+" help EN'),Integer_"+myNum+" = SIMP(statut = '"+opt[3]+"',typ = 'I'"+defauts[3]+",ang='Integer "+myNum+" help EN'),Text_"+myNum+" = SIMP(statut = '"+opt[4]+"',typ = 'TXM'"+defauts[4]+",ang='Text "+myNum+" help EN'))" - print myString - return eval(myString) - - -PROC_01=PROC(nom = "PROC_01", op=None, ang="Help for PROC_01, English version",fr="Help for PROC_01, French version", docu="", - Radio_01=SIMP(statut = 'o',typ = 'TXM',into=("EF","VF","BS"),defaut="EF"), - FACT_01=myFact(1), - FACT_02=myFact(2), - FACT_03=myFact(3), - FACT_04=myFact(4), - FACT_05=myFact(5), - #FACT_06=myFact(6), - #FACT_07=myFact(7), - #FACT_08=myFact(8), - #FACT_09=myFact(9), - #FACT_10=myFact(10), - #FACT_11=myFact(11), - #FACT_12=myFact(12), -) - -Classement_Commandes_Ds_Arbre=('PROC_01',) - -Ordre_Des_Commandes = ('PROC_01',) diff --git a/CataTests/Separate_Blocks_52975_Cata.py b/CataTests/Separate_Blocks_52975_Cata.py deleted file mode 100644 index 88927e49..00000000 --- a/CataTests/Separate_Blocks_52975_Cata.py +++ /dev/null @@ -1,66 +0,0 @@ -# coding: utf-8 - -from Accas import * - -JdC = JDC_CATA (code = 'PATTERNS', - execmodul = None, - ) -def mySeveral(suffix,num): - out=list() - for i in range(1,num+1): - out.append(suffix+str(i).zfill(2)) - return out - -switch_facultatif=True #change 'o' to 'f' of some widgets in the loop -empty_defauts=True - -def myFact(num): - myNum=str(num).zfill(2) - list_item_body="Item_"+myNum+"_" - - defauts0=["","'"+list_item_body+myNum+"'", str(num/100.), str(100+num), "'Text_"+myNum+"'" ] #presence of default values - defauts_mask=[False,True,True,False,True] #switch off defaults of some types - defauts=list() - for id0 in range(len(defauts0)): - if defauts_mask[id0]: - item=", defaut="+defauts0[id0] - else: - item="" - defauts.append(item) - print defauts - - opt=['o','o','o','o','o'] #initial default obligation of items in FACT groups - #make some widgets optional: - myLen=len(opt) - if switch_facultatif: - make_f=(num)%myLen - opt[make_f]='f' - #print opt - if empty_defauts: - clean_defaut=num%myLen - - - myString="FACT(statut = '"+opt[0]+"', List_"+myNum+" = SIMP(statut = '"+opt[1]+"',typ = 'TXM', into=mySeveral('"+list_item_body+"',12)"+defauts[1]+"),Real_"+myNum+" = SIMP(statut = '"+opt[2]+"',typ = 'R'"+defauts[2]+", ang='Real "+myNum+" help EN'),Integer_"+myNum+" = SIMP(statut = '"+opt[3]+"',typ = 'I'"+defauts[3]+",ang='Integer "+myNum+" help EN'),Text_"+myNum+" = SIMP(statut = '"+opt[4]+"',typ = 'TXM'"+defauts[4]+",ang='Text "+myNum+" help EN'))" - print myString - return eval(myString) - - -PROC_01=PROC(nom = "PROC_01", op=None, ang="Help for PROC_01, English version",fr="Help for PROC_01, French version", docu="", - Radio_01=SIMP(statut = 'o',typ = 'TXM',into=("EF","VF","BS"),defaut="EF"), - FACT_01=myFact(1), - FACT_02=myFact(2), - FACT_03=myFact(3), - FACT_04=myFact(4), - FACT_05=myFact(5), - #FACT_06=myFact(6), - #FACT_07=myFact(7), - #FACT_08=myFact(8), - #FACT_09=myFact(9), - #FACT_10=myFact(10), - #FACT_11=myFact(11), - #FACT_12=myFact(12), -) - -Classement_Commandes_Ds_Arbre=('PROC_01',) - -Ordre_Des_Commandes = ('PROC_01',) diff --git a/CataTests/a b/CataTests/a deleted file mode 100644 index 0018d1d5..00000000 --- a/CataTests/a +++ /dev/null @@ -1,110 +0,0 @@ -ESSAI_FACT=OPER(nom="ESSAI_FACT", - sd_prod=ObjetUtilisateur, - op=None, - fr=tr("Affectation de caractéristiques à des éléments de structure"), - regles = (AU_MOINS_UN('Poutre','Barre'), - EXCLUS('Discret','Discret_2D'),), - Info = SIMP(statut='f',typ='I', defaut= 1 ,into=(1,2) ), - Verif = SIMP(statut='f',typ='TXM',validators=NoRepeat(),max='**',into=("Maille","Noeud") ), -# -# ============================================================================== - Poutre = FACT(statut= 'f',max= '**', - Section = SIMP(statut= 'o',typ= 'TXM' ,into= ("GENERALE","RECTANGLE","CERCLE") ), - - b_generale = BLOC(condition = " Section == 'GENERALE'", - regles = (UN_PARMI('Maille','GroupeMailles'),), - Maille = SIMP(statut= 'f',typ= ma ,validators= NoRepeat(),max= '**'), - GroupeMailles = SIMP(statut= 'f',typ= grma,validators= NoRepeat(),max= '**'), - - Vari = SIMP(statut= 'f',typ= 'TXM',into= ("CONSTANT","HOMOTHETIQUE"),defaut= "CONSTANT"), - - b_constant = BLOC(condition = "Vari == 'CONSTANT'", - regles = (PRESENT_ABSENT('Table','Cara'), - PRESENT_PRESENT('Table','Nom'), - PRESENT_PRESENT('Cara','Valeur'),), - Table = SIMP(statut= 'f',typ='TXM'), - Nom = SIMP(statut= 'f',typ= 'TXM'), - Cara = SIMP(statut= 'o',typ= 'TXM',min= 4 ,max= 5, - fr= tr("A,IY,IZ,JX sont des paramètres obligatoires"), - validators= [NoRepeat(), Compulsory(['A','IY','IZ','JX'])], - into= ("A","IY","IZ","AY","AZ","EY","EZ","JX","RY","RZ","RT","JG","IYR2","IZR2","AI") ), - Valeur = SIMP(statut= 'f',typ= 'R',min= 4 ,max= 15), - ), - ), - b_rectangle = BLOC(condition = "Section == 'RECTANGLE'", - regles = (UN_PARMI('Maille','GroupeMailles'),), - Maille = SIMP(statut= 'f',typ= ma ,validators= NoRepeat(),max= '**'), - GroupeMailles = SIMP(statut= 'f',typ= grma,validators= NoRepeat(),max= '**'), - Vari = SIMP(statut= 'f',typ= 'TXM',into= ("CONSTANT","HOMOTHETIQUE","AFFINE"),defaut= "CONSTANT"), - b_constant = BLOC(condition = "Vari == 'CONSTANT'", - Cara = SIMP(statut= 'o',typ= 'TXM',min= 1 ,max= 4, - validators = [NoRepeat(), - OrVal( [AndVal( [Compulsory(['H']),Absent(['HY','HZ','EPY','EPZ'])] ), - AndVal( [Compulsory(['HY','HZ']),Together(['EPY','EPZ']),Absent(['H','EP'])] )] )], - into= ("H","EP", "HY","HZ","EPY","EPZ"),), - Valeur = SIMP(statut= 'o',typ= 'R',min= 1 ,max= 4), - ), - - Metrique = SIMP(statut= 'f',typ= 'TXM',defaut= "NON",into= ("OUI","NON") ), - Fcx = SIMP(statut= 'f',typ= 'R'), - Tuyau = SIMP(statut= 'f',typ= 'I',val_max= 10,defaut= 3), - ), - ), -# -# ============================================================================== - Barre = FACT(statut='f',max='**', - regles = (UN_PARMI('Maille','GroupeMailles'),), - Maille = SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), - GroupeMailles = SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - Section = SIMP(statut='o',typ='TXM',into=("GENERALE","RECTANGLE","CERCLE") ), - b_generale = BLOC(condition = "Section=='GENERALE'", - regles = (PRESENT_ABSENT('Table','Cara'), - PRESENT_PRESENT('Table','Nom'), - PRESENT_PRESENT('Cara','Valeur')), - Table = SIMP(statut='f',typ=table_sdaster), - Nom = SIMP(statut='f',typ='TXM',validators=LongStr(1,24) ), - Cara = SIMP(statut='f',typ='TXM',into=("A",) ), - Valeur = SIMP(statut='f',typ='R',min=1,max=1 ), - ), - b_rectangle = BLOC(condition = "Section=='RECTANGLE'", - Cara = SIMP(statut='o',typ='TXM', min=1, max=4, - validators = [NoRepeat(), - OrVal( [AndVal( [Compulsory(['H']),Absent(['HY','HZ','EPY','EPZ'])] ), - AndVal( [Compulsory(['HY','HZ']),Together(['EPY','EPZ']),Absent(['H','EP'])] )] )], - into=("H","EP","HZ","HY","EPY","EPZ"), ), - Valeur = SIMP(statut='o',typ='R',min=1,max=4 ), ), - b_cercle = BLOC(condition = "Section=='CERCLE'", - Cara = SIMP(statut='o',typ='TXM',validators=[NoRepeat(),Compulsory(['R'])],min=1,max=2,into=("R","EP") ), - Valeur = SIMP(statut='o',typ='R',min=1,max=2 ), ), - ), -# -# ============================================================================== - Discret = FACT(statut='f',max='**', - REPERE = SIMP(statut='f',typ='TXM',into=("LOCAL","GLOBAL") ), - AMOR_HYST = SIMP(statut='f',typ='R' ), - SYME = SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON"),), - b_SYME_OUI = BLOC(condition="SYME=='OUI'", - fr=tr("SYMETRIQUE: Affectation de matrices de rigidité, de masse ou d'amortissement à des mailles ou noeuds"), - Cara = SIMP(statut='o',typ='TXM',validators=NoRepeat(),max=1,defaut="None", - into = ("K_T_D_N", "K_T_D_L", "K_TR_D_N", "K_TR_D_L", "K_T_N", "K_T_L", "K_TR_N", "K_TR_L", - "M_T_D_N", "M_T_D_L", "M_TR_D_N", "M_TR_D_L", "M_T_N", "M_T_L", "M_TR_N", "M_TR_L", - "A_T_D_N", "A_T_D_L", "A_TR_D_N", "A_TR_D_L", "A_T_N", "A_T_L", "A_TR_N", "A_TR_L",),), - # Affection des caractéristiques de RIGIDITE/AMORTISSEMENT/MASSE - b_AK_T_D_N = BLOC(condition = "((Cara=='K_T_D_N')or(Cara=='A_T_D_N'))", - fr = tr("Noeud: 3 valeurs (triangulaire supérieure par colonne)"), - regles = (UN_PARMI('Maille','GroupeMailles','Noeud','GROUP_NO'),), - Noeud = SIMP(statut='f',typ=no ,validators=NoRepeat(),max='**'), - GROUP_NO = SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'), - Maille = SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), - GroupeMailles = SIMP(statut='f',typ=grma,validators=NoRepeat(),homo='SansOrdreNiDoublon',max='**'), - Valeur = SIMP(statut='o',typ='R',min=3 ,max=3 ),), - ), - ), -# -# ============================================================================== - Discret_2D = FACT(statut='f',max='**', - REPERE = SIMP(statut='f',typ='TXM',into=("LOCAL","GLOBAL") ), - AMOR_HYST = SIMP(statut='f',typ='R' ), - SYME = SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON"),), - ), -) diff --git a/CataTests/cata_diapo.py b/CataTests/cata_diapo.py deleted file mode 100644 index 0c5268ef..00000000 --- a/CataTests/cata_diapo.py +++ /dev/null @@ -1,48 +0,0 @@ -# coding: utf-8 - -from Accas import * -class Tuple: - def __init__(self,ntuple): - self.ntuple=ntuple - - def __convert__(self,valeur): - import types - if type(valeur) == types.StringType: - return None - if len(valeur) != self.ntuple: - return None - return valeur - - def info(self): - return "Tuple de %s elements" % self.ntuple - - __repr__=info - __str__=info - - - -class forme ( ASSD ) : pass - -JdC = JDC_CATA (code = 'MED', - execmodul = None, - ) - -FORME_GEOMETRIQUE=OPER(nom='FORME_GEOMETRIQUE',sd_prod =forme ,op=None, - Forme=SIMP(statut="o",typ='TXM',into=[ 'carre', 'cercle', 'triangle' ],defaut='carre'), - bloc_pour_Carre = BLOC (condition = "Forme=='carre'", - Cote=SIMP(statut="o",typ='I'), ) , # fin bloc_pour_carre - bloc_pour_cercle = BLOC (condition ="Forme=='cercle'", - rayon=SIMP(statut="o",typ='I'), ) , # fin bloc_pour_cercle - - DE_NOMBREUSES_WIDGETS= FACT(statut="o", - Stop_Criteria = SIMP(statut = 'o',typ = Tuple(3),validators = VerifTypeTuple(('R','R','R'))), - Fichier_Med = SIMP( statut = 'o', typ = ('Fichier', 'Med Files (*.med);;All Files (*)',),), - ListeDeChoixPlusGrande=SIMP(statut="o",typ='TXM',into=['a','b,','c','d','e','f','g','h'], - homo="SansOrdreNiDoublon",), - Un_Parametre_Facultatif=SIMP(statut="f",typ='TXM') - - ), - Couleur=SIMP(statut = 'f',typ='TXM'), - Matiere=SIMP(statut = 'f',typ='TXM'), -); - diff --git a/CataTests/cata_med.py b/CataTests/cata_med.py deleted file mode 100644 index 4640f81e..00000000 --- a/CataTests/cata_med.py +++ /dev/null @@ -1,29 +0,0 @@ -# coding: utf-8 - -from Accas import * - -JdC = JDC_CATA (code = 'MED', - execmodul = None, - ) -FAS=PROC(nom='FAS',op=None, - FAMILY_MESH_NAME_REF = FACT(statut='o', max='**', - - NAME=SIMP(statut="o",typ='TXM'), - ELEM=FACT(statut="f", max="**", - NUM=SIMP(statut="o",typ='TXM',), - NAME=SIMP(statut="o",typ='TXM',), - ATT=FACT(statut="f", - NBR=SIMP(statut="o", max=1 , typ = 'I'), - DES=SIMP(statut="o", max="**", typ = 'TXM'), - IDE=SIMP(statut="o", max="**", typ = 'I'), - VAL=SIMP(statut="o", max="**", typ = 'I'), - ), - GRO=FACT(statut="f", - NBR=SIMP(statut="o", max=1 , typ = 'I'), - NOM=SIMP(statut="o", max="**", typ='TXM'), - ), - ), - ), -); - - diff --git a/CataTests/configuration_MED.py b/CataTests/configuration_MED.py deleted file mode 100644 index 9a068500..00000000 --- a/CataTests/configuration_MED.py +++ /dev/null @@ -1,43 +0,0 @@ -# -*- coding: utf-8 -*- -# maConfiguration MANAGEMENT OF EDF VERSION -# ====================================================================== -# COPYRIGHT (C) 1991 - 2002 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# -# -# ====================================================================== -""" - Ce module sert pour charger les paramètres de configuration d'EFICAS -""" -# Modules Python -from InterfaceQT4 import configuration -import os - - -class CONFIG(configuration.configBase): - - #----------------------------------- - def __init__(self,appli,repIni): - #----------------------------------- - - self.labels_user=['catalogues','lang'] - self.labels_eficas=['lang','rep_cata','catalogues'] - - configuration.configBase.__init__(self,appli,'.Eficas_monCode') - - -def make_config(appli,rep): - return CONFIG(appli,rep) - diff --git a/CataTests/images/essaiAster.png b/CataTests/images/essaiAster.png deleted file mode 100644 index d01c5de8..00000000 Binary files a/CataTests/images/essaiAster.png and /dev/null differ diff --git a/CataTests/items_integer_space.txt b/CataTests/items_integer_space.txt deleted file mode 100644 index 8e17136e..00000000 --- a/CataTests/items_integer_space.txt +++ /dev/null @@ -1,2 +0,0 @@ -"4" "3" "2" "1" -"4" "5" "6" "7" \ No newline at end of file diff --git a/CataTests/monCode_qtEficas.py b/CataTests/monCode_qtEficas.py deleted file mode 100755 index 7bbb62b3..00000000 --- a/CataTests/monCode_qtEficas.py +++ /dev/null @@ -1,33 +0,0 @@ -#!/usr/bin/env python -# -*- coding: utf-8 -*- -# Copyright (C) 2007-2012 EDF R&D -# -# 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 -# -""" - Ce module sert a lancer EFICAS configure pour Code_Aster -""" -# Modules Python -# Modules Eficas - -import sys,os -sys.path.append(os.path.join(os.path.abspath(os.path.dirname(__file__)),'..')) - -from PyQt4.QtCore import * -import prefs -from InterfaceQT4 import eficas_go -eficas_go.lanceEficas(code=prefs.code) diff --git a/CataTests/prefs.py b/CataTests/prefs.py deleted file mode 100644 index 2e9d0a2e..00000000 --- a/CataTests/prefs.py +++ /dev/null @@ -1,22 +0,0 @@ -# Copyright (C) 2007-2012 EDF R&D -# -# 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 -# -code="MED" -import sys, os -if os.path.dirname(os.path.abspath(__file__)) not in sys.path : - sys.path.insert(0,os.path.dirname(os.path.abspath(__file__))) diff --git a/CataTests/prefs_MED.py b/CataTests/prefs_MED.py deleted file mode 100644 index 2fc3062e..00000000 --- a/CataTests/prefs_MED.py +++ /dev/null @@ -1,48 +0,0 @@ -# -*- coding: utf-8 -*- -# maConfiguration MANAGEMENT OF EDF VERSION -# ====================================================================== -# COPYRIGHT (C) 1991 - 2002 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# -# -# ====================================================================== - -import os,sys -# repIni sert a localiser le fichier editeur.ini -# Obligatoire -repIni=os.path.dirname(os.path.abspath(__file__)) -INSTALLDIR=os.path.join(repIni,'..') -sys.path[:0]=[INSTALLDIR] - - -# lang indique la langue utilisee pour les chaines d'aide : fr ou ang -lang='en' - -# Codage des strings qui accepte les accents (en remplacement de 'ascii') -encoding='iso-8859-1' -docPath=repIni - -# -catalogues=( - #('med','med',os.path.join(repIni,'cata_med.py'),'dico','python'), - ('med','med',os.path.join(repIni,'CataAZ.py'),'python','python'), -) - -simpleClic=True -nombreDeBoutonParLigne = 4 -dicoImages={ -'CREEOBJET' : os.path.join(repIni,'images/essaiAster.png') -} - diff --git a/CataTests/prefs_monCode.py b/CataTests/prefs_monCode.py deleted file mode 100644 index 319c6599..00000000 --- a/CataTests/prefs_monCode.py +++ /dev/null @@ -1,68 +0,0 @@ -# -*- coding: utf-8 -*- -# maConfiguration MANAGEMENT OF EDF VERSION -# ====================================================================== -# COPYRIGHT (C) 1991 - 2002 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# -# -# ====================================================================== - -import os,sys -# repIni sert a localiser le fichier editeur.ini -# Obligatoire -repIni=os.path.dirname(os.path.abspath(__file__)) -INSTALLDIR=os.path.join(repIni,'..') -sys.path[:0]=[INSTALLDIR] - - -# lang indique la langue utilisee pour les chaines d'aide : fr ou ang -lang='en' - -# Codage des strings qui accepte les accents (en remplacement de 'ascii') -encoding='iso-8859-1' -docPath=repIni - -# -catalogues=( - ('monCode','med',os.path.join(repIni,'CataAZ.py'),'python','python'), -# ('monCode','53036',os.path.join(repIni,'Elementary_Lists_53036_Cata.py'),'dico','python'), -# ('monCode','53033',os.path.join(repIni,'Tuples_Cata.py'),'dico','python'), -# ('monCode','53031',os.path.join(repIni,'Tuples_Cata.py'),'dico','python'), -# ('monCode','53030',os.path.join(repIni,'Tuples_Cata.py'),'dico','python'), -# ('monCode','53020',os.path.join(repIni,'Nested_Cond_52945_Cata.py'),'dico','python'), -# ('monCode','53013',os.path.join(repIni,'Elementary_Lists_53013_Cata.py'),'dico','python'), -# ('monCode','53000',os.path.join(repIni,'Elementary_Lists_53030_Cata.py'),'dico','python'), -# ('monCode','52996',os.path.join(repIni,'Elementary_Lists_52996_Cata.py'),'dico','python'), -# ('monCode','52992',os.path.join(repIni,'Many_Concepts_52992_Cata.py'),'dico','python'), -# ('monCode','52989',os.path.join(repIni,'Many_Concepts_52989_Cata.py'),'dico','python'), -# ('monCode','52988',os.path.join(repIni,'Many_Concepts_52988_Cata.py'),'dico','python'), -# ('monCode','52985',os.path.join(repIni,'fin_52985_Cata.py'),'dico','python'), -# ('monCode','52983',os.path.join(repIni,'Many_Concepts_52983_Cata.py'),'dico','python'), -# ('monCode','52975',os.path.join(repIni,'Separate_Blocks_52975_Cata.py'),'dico','python'), -# ('monCode','52972',os.path.join(repIni,'Separate_Blocks_52972_Cata.py'),'dico','python'), -# ('monCode','52958',os.path.join(repIni,'Separate_Blocks_52958_Cata.py'),'dico','python'), -# ('monCode','52952',os.path.join(repIni,'Nested_Cond_52952_Cata.py'),'dico','python'), -# ('monCode','52949',os.path.join(repIni,'Nested_Cond_52949_Cata.py'),'dico','python'), -# ('monCode','52947',os.path.join(repIni,'Nested_Cond_52947_Cata.py'),'dico','python'), -# ('monCode','52946',os.path.join(repIni,'Nested_Cond_52946_Cata.py'),'dico','python'), -# ('monCode','52945',os.path.join(repIni,'Nested_Cond_52945_Cata.py'),'dico','python'), -# ('monCode','Global',os.path.join(repIni,'Global_Condition_Cata.py'),'dico','python'), -## resolu ('monCode','52948',os.path.join(repIni,'Nested_Cond_52948_Cata.py'),'dico','python'), -# pb d afffichage des optionnels ('monCode','52963',os.path.join(repIni,'Separate_Blocks_52963_Cata.py'),'dico','python'), -# pb d afffichage des optionnels ('monCode','52966',os.path.join(repIni,'Separate_Blocks_52966_Cata.py'),'dico','python'), - -# ('monCode','test',os.path.join(repIni,'monCode_Cata1.py'),'dico','python'), -) - diff --git a/CataTests/properties.py b/CataTests/properties.py deleted file mode 100644 index 1d328a46..00000000 --- a/CataTests/properties.py +++ /dev/null @@ -1,24 +0,0 @@ -#@ MODIF properties Accas DATE 11/06/2008 AUTEUR aster M.ADMINISTRATEUR -# RESPONSABLE D6BHHHH J-P.LEFEBVRE -# ====================================================================== -# COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# IDENTIFICATION DU GESTIONNAIRE DE COMMANDE ACCAS A PARTIR -# DE LA VERSION DU CODE_ASTER ASSOCIE -#---------------------------------------------------------------------- -version = "1.2" -date = "25/05/2010" -exploit = False diff --git a/CataTests/qtEficas_AZ.py b/CataTests/qtEficas_AZ.py deleted file mode 100755 index de3797de..00000000 --- a/CataTests/qtEficas_AZ.py +++ /dev/null @@ -1,32 +0,0 @@ -#!/usr/bin/env python -# -*- coding: utf-8 -*- -# Copyright (C) 2007-2012 EDF R&D -# -# 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 -# -""" - Ce module sert a lancer EFICAS configure pour Code_Aster -""" -# Modules Python -# Modules Eficas - -import sys,os -sys.path.append(os.path.join(os.path.abspath(os.path.dirname(__file__)),'..')) - -import prefs -from InterfaceQT4 import eficas_go -eficas_go.lanceEficas(code=prefs.code) diff --git a/CataTests/qtEficas_Med.py b/CataTests/qtEficas_Med.py deleted file mode 100755 index de3797de..00000000 --- a/CataTests/qtEficas_Med.py +++ /dev/null @@ -1,32 +0,0 @@ -#!/usr/bin/env python -# -*- coding: utf-8 -*- -# Copyright (C) 2007-2012 EDF R&D -# -# 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 -# -""" - Ce module sert a lancer EFICAS configure pour Code_Aster -""" -# Modules Python -# Modules Eficas - -import sys,os -sys.path.append(os.path.join(os.path.abspath(os.path.dirname(__file__)),'..')) - -import prefs -from InterfaceQT4 import eficas_go -eficas_go.lanceEficas(code=prefs.code) diff --git a/CatasDeTests/cataUserASSDMultiple.py b/CatasDeTests/cataUserASSDMultiple.py deleted file mode 100644 index 0ab28b6f..00000000 --- a/CatasDeTests/cataUserASSDMultiple.py +++ /dev/null @@ -1,69 +0,0 @@ -# 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, re -import Accas -from Accas import * -monFichier=os.path.abspath(__file__) - -JdC = JDC_CATA ( - code='Essai' - ) -VERSION_CATALOGUE='V_0' - -# tout est Facultatif car sinon, on ne peut pas supprimer et c 'est ce qu on veut tester - -class composant(ASSD):pass -class modeleNumDuCompo(UserASSD):pass -class spatialRegion(UserASSD):pass -class meshIdentifier(spatialRegion):pass -class meshGroup(spatialRegion,UserASSDMultiple):pass - - -Spatial_Aspects = PROC(nom='Spatial_Aspects', - Spatial_Discretization = FACT( statut='f', max="**", - Mesh_Name = SIMP(statut='o', typ=(meshIdentifier,'createObject')), - GroupIdentifier = SIMP(statut='o', typ=(meshGroup,'createObject'),max='**',), - ), -) - -Component = OPER(nom='Component', sd_prod=composant, - Identifier = SIMP(statut='o', typ=(modeleNumDuCompo,'createObject'),), - ModelType = SIMP(statut='o', typ='TXM', into = ('Particles', 'Fields'), position='inGetAttribut'), - MeshIdentifiers = SIMP(statut='o', max ='**', typ = meshIdentifier), - BC = FACT( statut='f', max="**", - MeshName = SIMP(statut='o', typ=(meshIdentifier)), - GroupIdentifier = SIMP(statut='o', typ=(meshGroup),filtre=('getParentUnique=meshName'), max='**',), - ), -) - -Interactions = PROC(nom='Interactions', - Interaction = FACT( max = '**', - origine = SIMP(typ=modeleNumDuCompo, statut='o'), - destination = SIMP(typ=modeleNumDuCompo, statut='o'), - monBloc_FFFF = BLOC ( - condition = 'getEficasAttribut(origine,"ModelType") == "Fields" and getEficasAttribut(destination,"ModelType") == "Fields"' , - termeLE = SIMP(typ='TXM', statut='o', into = ['Fields1','Fields2']), - ), - monBloc_FFP = BLOC ( - condition = 'getEficasAttribut(origine,"ModelType") == "Particles" and getEficasAttribut(destination,"ModelType") == "Fields"' , - termeLE = SIMP(typ='TXM', statut='o', into = ['ParticleFields1','ParticleFields2']), - ), - ), -) diff --git a/CatasDeTests/cata_proc.py b/CatasDeTests/cata_proc.py deleted file mode 100644 index 19984c0f..00000000 --- a/CatasDeTests/cata_proc.py +++ /dev/null @@ -1,50 +0,0 @@ -# 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, re -import Accas -from Accas import * - -JdC = JDC_CATA ( - code = 'Map2', - ) -VERSION_CATALOGUE='V_0' - -class classCL(ASSD): pass - -class Surface_Elementaire(UserASSD): pass - -def creeSurfaceElementaire(MC) : - # PNPN pour qu eric puisse tester - MC.creeObjetClasse(Surface_Elementaire) - return - - -CL=OPER(nom = 'CL', sd_prod=classCL, - Unite = SIMP(statut='o',typ='I',defaut=1), -) -MODELE_NUM = PROC( nom = 'MODELE_NUM', - MCA = SIMP(statut='o',typ='TXM'), - Condition = SIMP(statut='o',typ=classCL), -) -MODELE_NUM2 = PROC( nom = 'MODELE_NUM2', - surface_Elementaire=SIMP(statut= 'o',typ= 'TXM',max='**', siValide=creeSurfaceElementaire), - essai=SIMP(statut = 'f', typ = Surface_Elementaire), -) - diff --git a/CatasDeTests/prefs.py b/CatasDeTests/prefs.py deleted file mode 100644 index 540898b5..00000000 --- a/CatasDeTests/prefs.py +++ /dev/null @@ -1,22 +0,0 @@ -# Copyright (C) 2007-2012 EDF R&D -# -# 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 -# -code="Essai" -import sys, os -if os.path.dirname(os.path.abspath(__file__)) not in sys.path : - sys.path.insert(0,os.path.dirname(os.path.abspath(__file__))) diff --git a/CatasDeTests/prefs_Essai.py b/CatasDeTests/prefs_Essai.py deleted file mode 100644 index 66852da1..00000000 --- a/CatasDeTests/prefs_Essai.py +++ /dev/null @@ -1,56 +0,0 @@ -# -*- coding: utf-8 -*- -# maConfiguration MANAGEMENT OF EDF VERSION -# ====================================================================== -# COPYRIGHT (C) 1991 - 2002 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# -# -# ====================================================================== - -import os,sys -# repIni sert a localiser le fichier editeur.ini -# Obligatoire -repIni=os.path.dirname(os.path.abspath(__file__)) -INSTALLDIR=os.path.join(repIni,'..') -sys.path[:0]=[INSTALLDIR] - - -# lang indique la langue utilisee pour les chaines d'aide : fr ou ang -lang='fr' - -# Codage des strings qui accepte les accents (en remplacement de 'ascii') -encoding='iso-8859-1' - -# -#typeDeCata='XML' -catalogues=( -# ('Essai','V2017',os.path.join(repIni,'cata_bloc_ambigu.py'),'python','xml'), -# ('Essai','V2017',os.path.join(repIni,'cata_blocs.py'),'python','xml'), -# ('Essai','V2017',os.path.join(repIni,'cata_blocs_alter.py'),'python','xml'), - ('Essai','V2017',os.path.join(repIni,'cata_proc.py'),'python','python'), -# ('Essai','V2017',os.path.join(repIni,'cata_condition_2MC.py'),'python','python'), -# ('Essai','V2017',os.path.join(repIni,'cata_bloc_V0.py'),'python','xml'), -# ('Essai','V2017',os.path.join(repIni,'cata_global.py'),'python','python'), -) -#nombreDeBoutonParLigne=4 -simpleClic=True -#closeFrameRechercheCommande=True -boutonDsMenuBar=False -#closeArbre=True -afficheListesPliees=False -#withXSD=True -afficheCommandesPliees = False -#dumpXSD=True -#afficheIhm=False diff --git a/CatasDeTests/qtEficasEssai.py b/CatasDeTests/qtEficasEssai.py deleted file mode 100755 index f16668ba..00000000 --- a/CatasDeTests/qtEficasEssai.py +++ /dev/null @@ -1,35 +0,0 @@ -#!/usr/bin/env python -# -*- coding: utf-8 -*- -# Copyright (C) 2007-2013 EDF R&D -# -# 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 -# -""" - Ce module sert a lancer EFICAS configure pour MAP -""" -# Modules Python -# Modules Eficas -import prefs -name='prefs_'+prefs.code -__import__(name) - -import os, sys -sys.path.append(os.path.join(os.path.abspath(os.path.dirname(__file__)),'..')) - -import prefs -from InterfaceQT4 import eficas_go -eficas_go.lanceEficas(code=prefs.code) diff --git a/Doc/CMakeLists.txt b/Doc/CMakeLists.txt deleted file mode 100755 index 12067fce..00000000 --- a/Doc/CMakeLists.txt +++ /dev/null @@ -1,33 +0,0 @@ -find_package(Sphinx REQUIRED) - -if(NOT DEFINED SPHINX_THEME) - set(SPHINX_THEME basic) -endif() - -if(NOT DEFINED SPHINX_THEME_DIR) - set(SPHINX_THEME_DIR) -endif() - -# configured documentation tools and intermediate build results -set(BINARY_BUILD_DIR "${CMAKE_CURRENT_BINARY_DIR}/_build") - -# Sphinx cache with pickled ReST documents -set(SPHINX_CACHE_DIR "${CMAKE_CURRENT_BINARY_DIR}/_doctrees") - -# HTML output directory -set(SPHINX_HTML_DIR "${CMAKE_CURRENT_BINARY_DIR}/html") - -configure_file( - "${CMAKE_CURRENT_SOURCE_DIR}/conf.py.in" - "${BINARY_BUILD_DIR}/conf.py" - @ONLY) - -add_custom_target(EFICAS_NOUVEAUdoc ALL - ${SPHINX_EXECUTABLE} - -q -b html - -d "${SPHINX_CACHE_DIR}" - "${CMAKE_CURRENT_SOURCE_DIR}" - "${SPHINX_HTML_DIR}" - COMMENT "Building HTML documentation with Sphinx") - -INSTALL(DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/html/ DESTINATION ${CMAKE_INSTALL_PREFIX}/Doc/) diff --git a/Doc/Makefile b/Doc/Makefile deleted file mode 100644 index d4a29d88..00000000 --- a/Doc/Makefile +++ /dev/null @@ -1,153 +0,0 @@ -# Makefile for Sphinx documentation -# - -# You can set these variables from the command line. -SPHINXOPTS = -SPHINXBUILD = sphinx-build -PAPER = -BUILDDIR = _build - -# Internal variables. -PAPEROPT_a4 = -D latex_paper_size=a4 -PAPEROPT_letter = -D latex_paper_size=letter -ALLSPHINXOPTS = -d $(BUILDDIR)/doctrees $(PAPEROPT_$(PAPER)) $(SPHINXOPTS) . -# the i18n builder cannot share the environment and doctrees with the others -I18NSPHINXOPTS = $(PAPEROPT_$(PAPER)) $(SPHINXOPTS) . - -.PHONY: help clean html dirhtml singlehtml pickle json htmlhelp qthelp devhelp epub latex latexpdf text man changes linkcheck doctest gettext - -help: - @echo "Please use \`make ' where is one of" - @echo " html to make standalone HTML files" - @echo " dirhtml to make HTML files named index.html in directories" - @echo " singlehtml to make a single large HTML file" - @echo " pickle to make pickle files" - @echo " json to make JSON files" - @echo " htmlhelp to make HTML files and a HTML help project" - @echo " qthelp to make HTML files and a qthelp project" - @echo " devhelp to make HTML files and a Devhelp project" - @echo " epub to make an epub" - @echo " latex to make LaTeX files, you can set PAPER=a4 or PAPER=letter" - @echo " latexpdf to make LaTeX files and run them through pdflatex" - @echo " text to make text files" - @echo " man to make manual pages" - @echo " texinfo to make Texinfo files" - @echo " info to make Texinfo files and run them through makeinfo" - @echo " gettext to make PO message catalogs" - @echo " changes to make an overview of all changed/added/deprecated items" - @echo " linkcheck to check all external links for integrity" - @echo " doctest to run all doctests embedded in the documentation (if enabled)" - -clean: - -rm -rf $(BUILDDIR)/* - -html: - $(SPHINXBUILD) -b html $(ALLSPHINXOPTS) $(BUILDDIR)/html - @echo - @echo "Build finished. The HTML pages are in $(BUILDDIR)/html." - -dirhtml: - $(SPHINXBUILD) -b dirhtml $(ALLSPHINXOPTS) $(BUILDDIR)/dirhtml - @echo - @echo "Build finished. The HTML pages are in $(BUILDDIR)/dirhtml." - -singlehtml: - $(SPHINXBUILD) -b singlehtml $(ALLSPHINXOPTS) $(BUILDDIR)/singlehtml - @echo - @echo "Build finished. The HTML page is in $(BUILDDIR)/singlehtml." - -pickle: - $(SPHINXBUILD) -b pickle $(ALLSPHINXOPTS) $(BUILDDIR)/pickle - @echo - @echo "Build finished; now you can process the pickle files." - -json: - $(SPHINXBUILD) -b json $(ALLSPHINXOPTS) $(BUILDDIR)/json - @echo - @echo "Build finished; now you can process the JSON files." - -htmlhelp: - $(SPHINXBUILD) -b htmlhelp $(ALLSPHINXOPTS) $(BUILDDIR)/htmlhelp - @echo - @echo "Build finished; now you can run HTML Help Workshop with the" \ - ".hhp project file in $(BUILDDIR)/htmlhelp." - -qthelp: - $(SPHINXBUILD) -b qthelp $(ALLSPHINXOPTS) $(BUILDDIR)/qthelp - @echo - @echo "Build finished; now you can run "qcollectiongenerator" with the" \ - ".qhcp project file in $(BUILDDIR)/qthelp, like this:" - @echo "# qcollectiongenerator $(BUILDDIR)/qthelp/EFICASdoc.qhcp" - @echo "To view the help file:" - @echo "# assistant -collectionFile $(BUILDDIR)/qthelp/EFICASdoc.qhc" - -devhelp: - $(SPHINXBUILD) -b devhelp $(ALLSPHINXOPTS) $(BUILDDIR)/devhelp - @echo - @echo "Build finished." - @echo "To view the help file:" - @echo "# mkdir -p $$HOME/.local/share/devhelp/EFICASdoc" - @echo "# ln -s $(BUILDDIR)/devhelp $$HOME/.local/share/devhelp/EFICASdoc" - @echo "# devhelp" - -epub: - $(SPHINXBUILD) -b epub $(ALLSPHINXOPTS) $(BUILDDIR)/epub - @echo - @echo "Build finished. The epub file is in $(BUILDDIR)/epub." - -latex: - $(SPHINXBUILD) -b latex $(ALLSPHINXOPTS) $(BUILDDIR)/latex - @echo - @echo "Build finished; the LaTeX files are in $(BUILDDIR)/latex." - @echo "Run \`make' in that directory to run these through (pdf)latex" \ - "(use \`make latexpdf' here to do that automatically)." - -latexpdf: - $(SPHINXBUILD) -b latex $(ALLSPHINXOPTS) $(BUILDDIR)/latex - @echo "Running LaTeX files through pdflatex..." - $(MAKE) -C $(BUILDDIR)/latex all-pdf - @echo "pdflatex finished; the PDF files are in $(BUILDDIR)/latex." - -text: - $(SPHINXBUILD) -b text $(ALLSPHINXOPTS) $(BUILDDIR)/text - @echo - @echo "Build finished. The text files are in $(BUILDDIR)/text." - -man: - $(SPHINXBUILD) -b man $(ALLSPHINXOPTS) $(BUILDDIR)/man - @echo - @echo "Build finished. The manual pages are in $(BUILDDIR)/man." - -texinfo: - $(SPHINXBUILD) -b texinfo $(ALLSPHINXOPTS) $(BUILDDIR)/texinfo - @echo - @echo "Build finished. The Texinfo files are in $(BUILDDIR)/texinfo." - @echo "Run \`make' in that directory to run these through makeinfo" \ - "(use \`make info' here to do that automatically)." - -info: - $(SPHINXBUILD) -b texinfo $(ALLSPHINXOPTS) $(BUILDDIR)/texinfo - @echo "Running Texinfo files through makeinfo..." - make -C $(BUILDDIR)/texinfo info - @echo "makeinfo finished; the Info files are in $(BUILDDIR)/texinfo." - -gettext: - $(SPHINXBUILD) -b gettext $(I18NSPHINXOPTS) $(BUILDDIR)/locale - @echo - @echo "Build finished. The message catalogs are in $(BUILDDIR)/locale." - -changes: - $(SPHINXBUILD) -b changes $(ALLSPHINXOPTS) $(BUILDDIR)/changes - @echo - @echo "The overview file is in $(BUILDDIR)/changes." - -linkcheck: - $(SPHINXBUILD) -b linkcheck $(ALLSPHINXOPTS) $(BUILDDIR)/linkcheck - @echo - @echo "Link check complete; look for any errors in the above output " \ - "or in $(BUILDDIR)/linkcheck/output.txt." - -doctest: - $(SPHINXBUILD) -b doctest $(ALLSPHINXOPTS) $(BUILDDIR)/doctest - @echo "Testing of doctests in the sources finished, look at the " \ - "results in $(BUILDDIR)/doctest/output.txt." diff --git a/Doc/ajouter_une_commande.rst b/Doc/ajouter_une_commande.rst deleted file mode 100644 index d33ee01a..00000000 --- a/Doc/ajouter_une_commande.rst +++ /dev/null @@ -1,88 +0,0 @@ -Add a command -============= - -Eficas allows you to create or edit a dataset. Remember it is always possible to save (or read) invalid datasets. -Building dataset consists of adding new commands, entering parameter values and if necessary naming concepts. -see : :ref:`concept-label`. -| -Eficas provides two different widgets : first one allows you to manage commands, second one to enter values for each command. -You can navigate between widgets using arrows or pushbutton. - -.. image:: images/CommandeBouton.png - :align: right - -Command widget shows up at file creation (if the new file is created empty ) or when clicking on : - - - - - - - - - - - - - - -Enter commands ---------------- - -Eficas main widget provided two distinct areas: The left side always contains the dataset explorer as a tree view. The right widget contains all commands the user is allowed to select. -If a dataset consists of a single command, tree view area is not displayed. - -.. image:: images/ChoixCommande.png - :align: center - -| - -To have command's **documentation** (if available), **simple-click** on the command. - -.. image:: images/Documentation1.png - :align: center - -| - - -To **add** the command **click twice.** The new command is added after the current command (highlighted in the tree view). In case of impossibility, a message is displayed. - -.. image:: images/Ordre.png - :align: center - -| - - - -If the dataset must comply with building :ref:`rules-label`, a specific icon appears in the command widget. - -.. image:: images/Regles.png - :align: center - -| - - -The user also can choose the way the commands are sorted, either by alphabetical order, either by fonctionnalities. -Last type of sorting commands is called 'by modelisation' that is to say logical order to prepare data for the code. - -.. image:: images/Groupes.png - :align: center - -| - - -The content filtering system is very simple : only commands containing the expression are shown. - -.. image:: images/FiltreCommande.png - :align: center - -| - - - -The user can use "Find", which is a filter widget to find a concept or command position in the dataset. The pushbutton "next/suivant" shows the next matching concept/command. - -.. image:: images/FindConcept.png - :align: center - - diff --git a/Doc/color_chart.rst b/Doc/color_chart.rst deleted file mode 100644 index 74b5eef4..00000000 --- a/Doc/color_chart.rst +++ /dev/null @@ -1,24 +0,0 @@ -Color chart -=========== - -a very simple colors chart helps the user to know if a item is valid or not : - -* In the Dataset tree view - - - green square : valid objects (Dataset, Command, Concept ...) - - red square : unvalid objects - - **yellow square** : valid **Concept** the user must name - - green diamond : valid group keywords - - red diamond : unvalid group keywords - - green circle : valid keywords - - red circle : unvalid keywords - -* In the input data form widget - - green circle : valid keywords or unvalid objects - - red circle : unvalid keywords or unvalid objects - -* In the rules part - - - red is for unobserved rules - - black is for observed rules - diff --git a/Doc/commentaires_parametres.rst b/Doc/commentaires_parametres.rst deleted file mode 100644 index 65928bc3..00000000 --- a/Doc/commentaires_parametres.rst +++ /dev/null @@ -1,46 +0,0 @@ -Parameters and comments -======================== - -Parameters ------------ -The users can define parameters. As parameters, Eficas accepts : - -- Real -- String -- Integer -- List - -A parameter's definition can use existing parameters such as : -eps=sqrt((((W / NX) ** 2) + ((H / NY) ** 2))) - -right-click menus on tree items allows you to add a parameter. - -.. image:: images/Parametres.png - :align: center - - -Pushing on "Parametres" Pushbutton opens a dialog containing all already existing parameters. You can define as many parameters as needed -at once. - -.. image:: images/Parametres1.png - :align: center - - -to use a parameter, just type its name. - -.. image:: images/Parametres2.png - :align: center - - -Comments ---------- - -Comments may refer to : - -- user annotation. In this case, background label is white. -- generated comment. In this case, background label is light grey. - - -.. image:: images/Commentaire.png - :align: center - diff --git a/Doc/conf.py b/Doc/conf.py deleted file mode 100644 index a242a882..00000000 --- a/Doc/conf.py +++ /dev/null @@ -1,247 +0,0 @@ -# -*- coding: utf-8 -*- -# -# Eficas documentation build configuration file, created by -# sphinx-quickstart on Thu Oct 1 10:55:47 2015. -# -# This file is execfile()d with the current directory set to its containing dir. -# -# Note that not all possible configuration values are present in this -# autogenerated file. -# -# All configuration values have a default; values that are commented out -# serve to show the default. - -import sys, os - -# If extensions (or modules to document with autodoc) are in another directory, -# add these directories to sys.path here. If the directory is relative to the -# documentation root, use os.path.abspath to make it absolute, like shown here. -#sys.path.insert(0, os.path.abspath('.')) - -# -- General configuration ----------------------------------------------------- - -# If your documentation needs a minimal Sphinx version, state it here. -#needs_sphinx = '1.0' - -# Add any Sphinx extension module names here, as strings. They can be extensions -# coming with Sphinx (named 'sphinx.ext.*') or your custom ones. -extensions = [] - -# Add any paths that contain templates here, relative to this directory. -templates_path = ['_templates'] - -# The suffix of source filenames. -source_suffix = '.rst' - -# The encoding of source files. -#source_encoding = 'utf-8-sig' - -# The master toctree document. -master_doc = 'index' - -# General information about the project. -project = u'Eficas' -copyright = u'2015, Pascale Noyret' - -# The version info for the project you're documenting, acts as replacement for -# |version| and |release|, also used in various other places throughout the -# built documents. -# -# The short X.Y version. -version = '7.7' -# The full version, including alpha/beta/rc tags. -release = '7.7.0' - -# The language for content autogenerated by Sphinx. Refer to documentation -# for a list of supported languages. -#language = None - -# There are two options for replacing |today|: either, you set today to some -# non-false value, then it is used: -#today = '' -# Else, today_fmt is used as the format for a strftime call. -#today_fmt = '%B %d, %Y' - -# List of patterns, relative to source directory, that match files and -# directories to ignore when looking for source files. -exclude_patterns = ['_build'] - -# The reST default role (used for this markup: `text`) to use for all documents. -#default_role = None - -# If true, '()' will be appended to :func: etc. cross-reference text. -#add_function_parentheses = True - -# If true, the current module name will be prepended to all description -# unit titles (such as .. function::). -#add_module_names = True - -# If true, sectionauthor and moduleauthor directives will be shown in the -# output. They are ignored by default. -#show_authors = False - -# The name of the Pygments (syntax highlighting) style to use. -pygments_style = 'sphinx' - -# A list of ignored prefixes for module index sorting. -#modindex_common_prefix = [] - - -# -- Options for HTML output --------------------------------------------------- - -# The theme to use for HTML and HTML Help pages. See the documentation for -# a list of builtin themes. -html_theme = 'basic' - -# Theme options are theme-specific and customize the look and feel of a theme -# further. For a list of options available for each theme, see the -# documentation. -#html_theme_options = {} - -# Add any paths that contain custom themes here, relative to this directory. -#html_theme_path = [] - -# The name for this set of Sphinx documents. If None, it defaults to -# " v documentation". -#html_title = None - -# A shorter title for the navigation bar. Default is the same as html_title. -#html_short_title = None - -# The name of an image file (relative to this directory) to place at the top -# of the sidebar. -#html_logo = None - -# The name of an image file (within the static path) to use as favicon of the -# docs. This file should be a Windows icon file (.ico) being 16x16 or 32x32 -# pixels large. -#html_favicon = None - -# Add any paths that contain custom static files (such as style sheets) here, -# relative to this directory. They are copied after the builtin static files, -# so a file named "default.css" will overwrite the builtin "default.css". -html_static_path = ['_static'] - -# If not '', a 'Last updated on:' timestamp is inserted at every page bottom, -# using the given strftime format. -#html_last_updated_fmt = '%b %d, %Y' - -# If true, SmartyPants will be used to convert quotes and dashes to -# typographically correct entities. -#html_use_smartypants = True - -# Custom sidebar templates, maps document names to template names. -#html_sidebars = {} - -# Additional templates that should be rendered to pages, maps page names to -# template names. -#html_additional_pages = {} - -# If false, no module index is generated. -#html_domain_indices = True - -# If false, no index is generated. -#html_use_index = True - -# If true, the index is split into individual pages for each letter. -#html_split_index = False - -# If true, links to the reST sources are added to the pages. -#html_show_sourcelink = True - -# If true, "Created using Sphinx" is shown in the HTML footer. Default is True. -#html_show_sphinx = True - -# If true, "(C) Copyright ..." is shown in the HTML footer. Default is True. -#html_show_copyright = True - -# If true, an OpenSearch description file will be output, and all pages will -# contain a tag referring to it. The value of this option must be the -# base URL from which the finished HTML is served. -#html_use_opensearch = '' - -# This is the file name suffix for HTML files (e.g. ".xhtml"). -#html_file_suffix = None - -# Output file base name for HTML help builder. -htmlhelp_basename = 'Eficasdoc' - - -# -- Options for LaTeX output -------------------------------------------------- - -latex_elements = { -# The paper size ('letterpaper' or 'a4paper'). -#'papersize': 'letterpaper', - -# The font size ('10pt', '11pt' or '12pt'). -#'pointsize': '10pt', - # get rid off blank pages - 'classoptions': ',openany,oneside', - 'babel' : '\\usepackage[english]{babel}', - - - -# Additional stuff for the LaTeX preamble. -#'preamble': '', -} - -# Grouping the document tree into LaTeX files. List of tuples -# (source start file, target name, title, author, documentclass [howto/manual]). -latex_documents = [ - ('index', 'Eficas.tex', u'Eficas Documentation', - u'Pascale Noyret', 'manual'), -] - -# The name of an image file (relative to this directory) to place at the top of -# the title page. -#latex_logo = None - -# For "manual" documents, if this is true, then toplevel headings are parts, -# not chapters. -#latex_use_parts = False - -# If true, show page references after internal links. -#latex_show_pagerefs = False - -# If true, show URL addresses after external links. -#latex_show_urls = False - -# Documents to append as an appendix to all manuals. -#latex_appendices = [] - -# If false, no module index is generated. -#latex_domain_indices = True - - -# -- Options for manual page output -------------------------------------------- - -# One entry per manual page. List of tuples -# (source start file, name, description, authors, manual section). -man_pages = [ - ('index', 'eficasdoc', u'Eficas Documentation', - [u'Pascale Noyret'], 1) -] - -# If true, show URL addresses after external links. -#man_show_urls = False - - -# -- Options for Texinfo output ------------------------------------------------ - -# Grouping the document tree into Texinfo files. List of tuples -# (source start file, target name, title, author, -# dir menu entry, description, category) -texinfo_documents = [ - ('index', 'Eficas', u'Eficas Documentation', - u'Pascale Noyret', 'Eficas', 'One line description of project.', - 'Miscellaneous'), -] - -# Documents to append as an appendix to all manuals. -#texinfo_appendices = [] - -# If false, no module index is generated. -#texinfo_domain_indices = True - -# How to display URL addresses: 'footnote', 'no', or 'inline'. -#texinfo_show_urls = 'footnote' diff --git a/Doc/conf.py.in b/Doc/conf.py.in deleted file mode 100644 index 40afd7b2..00000000 --- a/Doc/conf.py.in +++ /dev/null @@ -1,247 +0,0 @@ -# -*- coding: utf-8 -*- -# -# Eficas documentation build configuration file, created by -# sphinx-quickstart on Thu Oct 1 10:55:47 2015. -# -# This file is execfile()d with the current directory set to its containing dir. -# -# Note that not all possible configuration values are present in this -# autogenerated file. -# -# All configuration values have a default; values that are commented out -# serve to show the default. - -import sys, os - -# If extensions (or modules to document with autodoc) are in another directory, -# add these directories to sys.path here. If the directory is relative to the -# documentation root, use os.path.abspath to make it absolute, like shown here. -#sys.path.insert(0, os.path.abspath('.')) - -# -- General configuration ----------------------------------------------------- - -# If your documentation needs a minimal Sphinx version, state it here. -#needs_sphinx = '1.0' - -# Add any Sphinx extension module names here, as strings. They can be extensions -# coming with Sphinx (named 'sphinx.ext.*') or your custom ones. -extensions = [] - -# Add any paths that contain templates here, relative to this directory. -templates_path = ['_templates'] - -# The suffix of source filenames. -source_suffix = '.rst' - -# The encoding of source files. -#source_encoding = 'utf-8-sig' - -# The master toctree document. -master_doc = 'index' - -# General information about the project. -project = u'Eficas' -copyright = u'2015, Pascale Noyret' - -# The version info for the project you're documenting, acts as replacement for -# |version| and |release|, also used in various other places throughout the -# built documents. -# -# The short X.Y version. -version = '7.7' -# The full version, including alpha/beta/rc tags. -release = '7.7.0' - -# The language for content autogenerated by Sphinx. Refer to documentation -# for a list of supported languages. -#language = None - -# There are two options for replacing |today|: either, you set today to some -# non-false value, then it is used: -#today = '' -# Else, today_fmt is used as the format for a strftime call. -#today_fmt = '%B %d, %Y' - -# List of patterns, relative to source directory, that match files and -# directories to ignore when looking for source files. -exclude_patterns = ['_build'] - -# The reST default role (used for this markup: `text`) to use for all documents. -#default_role = None - -# If true, '()' will be appended to :func: etc. cross-reference text. -#add_function_parentheses = True - -# If true, the current module name will be prepended to all description -# unit titles (such as .. function::). -#add_module_names = True - -# If true, sectionauthor and moduleauthor directives will be shown in the -# output. They are ignored by default. -#show_authors = False - -# The name of the Pygments (syntax highlighting) style to use. -pygments_style = 'sphinx' - -# A list of ignored prefixes for module index sorting. -#modindex_common_prefix = [] - - -# -- Options for HTML output --------------------------------------------------- - -# The theme to use for HTML and HTML Help pages. See the documentation for -# a list of builtin themes. -html_theme = '@SPHINX_THEME@' - -# Theme options are theme-specific and customize the look and feel of a theme -# further. For a list of options available for each theme, see the -# documentation. -#html_theme_options = {} - -# Add any paths that contain custom themes here, relative to this directory. -html_theme_path = ['@SPHINX_THEME_DIR@'] - -# The name for this set of Sphinx documents. If None, it defaults to -# " v documentation". -#html_title = None - -# A shorter title for the navigation bar. Default is the same as html_title. -#html_short_title = None - -# The name of an image file (relative to this directory) to place at the top -# of the sidebar. -#html_logo = None - -# The name of an image file (within the static path) to use as favicon of the -# docs. This file should be a Windows icon file (.ico) being 16x16 or 32x32 -# pixels large. -#html_favicon = None - -# Add any paths that contain custom static files (such as style sheets) here, -# relative to this directory. They are copied after the builtin static files, -# so a file named "default.css" will overwrite the builtin "default.css". -html_static_path = ['_static'] - -# If not '', a 'Last updated on:' timestamp is inserted at every page bottom, -# using the given strftime format. -#html_last_updated_fmt = '%b %d, %Y' - -# If true, SmartyPants will be used to convert quotes and dashes to -# typographically correct entities. -#html_use_smartypants = True - -# Custom sidebar templates, maps document names to template names. -#html_sidebars = {} - -# Additional templates that should be rendered to pages, maps page names to -# template names. -#html_additional_pages = {} - -# If false, no module index is generated. -#html_domain_indices = True - -# If false, no index is generated. -#html_use_index = True - -# If true, the index is split into individual pages for each letter. -#html_split_index = False - -# If true, links to the reST sources are added to the pages. -#html_show_sourcelink = True - -# If true, "Created using Sphinx" is shown in the HTML footer. Default is True. -#html_show_sphinx = True - -# If true, "(C) Copyright ..." is shown in the HTML footer. Default is True. -#html_show_copyright = True - -# If true, an OpenSearch description file will be output, and all pages will -# contain a tag referring to it. The value of this option must be the -# base URL from which the finished HTML is served. -#html_use_opensearch = '' - -# This is the file name suffix for HTML files (e.g. ".xhtml"). -#html_file_suffix = None - -# Output file base name for HTML help builder. -htmlhelp_basename = 'EFICAS_NOUVEAUdoc' - - -# -- Options for LaTeX output -------------------------------------------------- - -latex_elements = { -# The paper size ('letterpaper' or 'a4paper'). -#'papersize': 'letterpaper', - -# The font size ('10pt', '11pt' or '12pt'). -#'pointsize': '10pt', - # get rid off blank pages - 'classoptions': ',openany,oneside', - 'babel' : '\\usepackage[english]{babel}', - - - -# Additional stuff for the LaTeX preamble. -#'preamble': '', -} - -# Grouping the document tree into LaTeX files. List of tuples -# (source start file, target name, title, author, documentclass [howto/manual]). -latex_documents = [ - ('index', 'Eficas.tex', u'Eficas Documentation', - u'Pascale Noyret', 'manual'), -] - -# The name of an image file (relative to this directory) to place at the top of -# the title page. -#latex_logo = None - -# For "manual" documents, if this is true, then toplevel headings are parts, -# not chapters. -#latex_use_parts = False - -# If true, show page references after internal links. -#latex_show_pagerefs = False - -# If true, show URL addresses after external links. -#latex_show_urls = False - -# Documents to append as an appendix to all manuals. -#latex_appendices = [] - -# If false, no module index is generated. -#latex_domain_indices = True - - -# -- Options for manual page output -------------------------------------------- - -# One entry per manual page. List of tuples -# (source start file, name, description, authors, manual section). -man_pages = [ - ('index', 'eficasdoc', u'Eficas Documentation', - [u'Pascale Noyret'], 1) -] - -# If true, show URL addresses after external links. -#man_show_urls = False - - -# -- Options for Texinfo output ------------------------------------------------ - -# Grouping the document tree into Texinfo files. List of tuples -# (source start file, target name, title, author, -# dir menu entry, description, category) -texinfo_documents = [ - ('index', 'Eficas', u'Eficas Documentation', - u'Pascale Noyret', 'Eficas', 'One line description of project.', - 'Miscellaneous'), -] - -# Documents to append as an appendix to all manuals. -#texinfo_appendices = [] - -# If false, no module index is generated. -#texinfo_domain_indices = True - -# How to display URL addresses: 'footnote', 'no', or 'inline'. -#texinfo_show_urls = 'footnote' diff --git a/Doc/eficas_icons.rst b/Doc/eficas_icons.rst deleted file mode 100644 index 8766460d..00000000 --- a/Doc/eficas_icons.rst +++ /dev/null @@ -1,28 +0,0 @@ -.. _icons-label: - -======================= -Using icons in Eficas -======================= - -Icons ------ - -Icons are used because they are presumed to save time, but all actions can be accessed from menus. -Eficas use a small set of icons. Hopefully, users are familiar with. However, all icons are labelled. - - -.. image:: images/Icons.png - :align: center - - - - -Shortcuts ---------- - -Eficas keybord shortcuts require the user to press a sequence of keys. -These sequences contain 'Ctrl' for common shortcuts as "Ctrl+C", Alt for accessing action of menu, and 'Shift' for specific actions. Note that 'Shift D' allows expanding/collapsing items - - - - diff --git a/Doc/eficas_in_salome.rst b/Doc/eficas_in_salome.rst deleted file mode 100644 index 6dbe7da1..00000000 --- a/Doc/eficas_in_salome.rst +++ /dev/null @@ -1,40 +0,0 @@ -.. _salome-label: - -Eficas in Salome (For Aster) -============================ - -Launching Eficas in Salome ---------------------------- -First activate Eficas module - -.. image:: images/LctDsSalome.png - :align: center - - -Use Eficas. When a file is saved, Eficas will create an associated entry in the object browser. -It is possible to use the file in other modules (see appropriate module's documentation). - -.. image:: images/ArbreSalome.png - :align: center - -Structural Element -------------------- - -Eficas is able to create "structural element" in GEOM or in SMESH in order to -validate data. - -- Create your geometry - -.. image:: images/SalomePylone.png - :align: center - -- Create your Eficas dataseat, and define for example a beam , with AFFE-CARA-ELEM. - -- Click on "View3D". Eficas shows you the result in GEOM and creates "beams" . - Be aware : these "structural elements" are not "geometry elements". You can't use it. - It's also possible to verify normals orientation. - -.. image:: images/SalomePyloneSE.png - :align: center - - diff --git a/Doc/eficas_notions.rst b/Doc/eficas_notions.rst deleted file mode 100644 index ec2e75af..00000000 --- a/Doc/eficas_notions.rst +++ /dev/null @@ -1,67 +0,0 @@ -.. _concept-label: - -Eficas Concepts -================ - -Commands in the Data Set (or JDC Jeu De Commandes ) ---------------------------------------------------- - -A dataset is made of a collection of commands. Each command have parameters (keywords). They can return concept or not: - -* Command not returning concept : they are described as "PROC" in catalogs. - - - example: - - DEBUT() is a proc. - - for ASTER, it initializes memory and files. - -* Command returning a concept : - The concept has a specific type (defined in the catalog) and a name (given by the user). These commandes are described as "OPER" in catalogs. - - - example : - - MONMAIL=LIRE_MAILLAGE(UNITE=20); - - This line creates a new concept MONMAIL of type "maillage", which can be re-used as entry for another keyword. - - When an object is valid, the user has to named it. In tree view, a yellow square shows valid objects that have to be nammed. - -Commands are composed of keywords, or groups of keywords. These items are associated according to rules or conditions. -They are described in the catalog. - - -Keywords ---------- - -* Group of keywords (mot-clef facteur ) - - This is a list of keywords which jointly have a meaning for the code. - It is composed of group of keywords and simple keywords. - Some are mandatory, repeatable. - This list can depend on conditionnal rules. - - -* Simple keyword (mot-clef simple) . - - This is a parameter. It also can be mandatory or not. - It has attributes. - - -Attributes of a keyword ---------------------------- - -a parameter (simple keyword or "mot-clef simple") has : - -- a type : real, string, complex, integer, matrix, file (existing or allready existing), directory or a concept class which is defined in the catalog. -- a cardinality. - -a parameter (simple keyword or "mot-clef simple") should have : - -- a default value -- a short documentation -- a long documentation -- an interval of values -- a set of discrete values - - -Input data panel depends on both these attributes. Eficas ensures that data are valid. It forces the user to enter a list if needed, it verifies the input type. It displays only possible values. - - - diff --git a/Doc/eficas_presentation.rst b/Doc/eficas_presentation.rst deleted file mode 100644 index 45357f53..00000000 --- a/Doc/eficas_presentation.rst +++ /dev/null @@ -1,26 +0,0 @@ -What's Eficas -============== - -Name's origin -------------- -Eficas is the acronym of ' **E**\ diteur de **FI**\ chier de **C**\ ommandes et **A**\ nalyseur **S**\ émantique'. -That means that Eficas allows users to write a parameter file for a code. -It handles with syntax and semantic. -It avoids misuse of commands which are not allowed in a given context. -It insures integrity of the file. - -General Behaviour ------------------- -* Catalogs - -Eficas can be used by multiple codes and handles with multiple versions of each code. It is customized with files named "Catalogs (or Catalogues)" : It contains all commands for a code. Each command has a name and parameters which are defined by developpers. - - -* Outputs - -Eficas's output is a commands file (dataset file or Jeux De Données) ".comm". It may be able to produce various file formats such as .xml, .py or specific format. However, you always must have a '.comm" output: this is the only format Eficas is able to reread. - -Both commands Files and Catalogs are python file. So you have to remind some -:ref:`python-label` - - diff --git a/Doc/eficas_rules.rst b/Doc/eficas_rules.rst deleted file mode 100644 index 63c71df8..00000000 --- a/Doc/eficas_rules.rst +++ /dev/null @@ -1,119 +0,0 @@ -.. _rules-label: - -=============================== -Eficas rules -=============================== - -All the rules can be combinated, creating more complicated rules. - -AU_MOINS_UN ------------ - - AU_MOINS_UN rule obliges the user to create at least one concept of the list. More than one can be created. - -- Example - - Keyword POUTRE in OPER AFFE_CARA_ELEM contains the rule : - - regles=(AU_MOINS_UN( - 'POUTRE','COQUE','DISCRET','CABLE','BARRE','MASSIF','ASSE_GRIL','GRILLE'),) - -- That means if AFFE_CARA_ELEM is used in the JDC, the user must select one at least of the Keyword between POUTRE, COQUE, DISCRET, CABLE, BARRE, MASSIF, ASSE_GRIL, GRILLE : - - * If the user doesn't select any of these keywords, AFFE_CARA_ELEM is unvalid. - * If he selects POUTRE, AFFE_CARA_ELEM is valid. - * If he selects both POUTRE and DISCRET, AFFE_CARA_ELEM is valid. - - -UN_PARMI --------- - - AU_MOINS_UN rule obliges the user to create one and only one concept of the list. - -- Example - - Oper AFFE_CHAR_MECA contains the rules : - - regles=(UN_PARMI('VECT_Y','ANGL_VRIL'), - -- That means if AFFE_CHAR_MECA is used in the JDC, the user must select VECT_Y or ANGL_VRIL. - - * If the user doesn't select any of these keywords, DEFI_GROUP is unvalid. - * If he selects only VECT_Y, DEFI_GROUP is valid. - * Eficas will not proposed the keyword ANGL_VRIL if VECT_Y already exists. - - -EXCLUS --------- - - EXCLUS means that, if one of the keyword is created, the other won't be allowed. - - - Example : - DEFI_SQUELETTE contains the rules : - - EXCLUS('SOUS_STRUC','SECTEUR') - -- That means if DEFI_SQUELETTE is used in the JDC - - * If the user doesn't select any of these keywords, DEFI_SQUELETTE is valid. - * If he selects only SOUS_STRUC, DEFI_SQUELETTE is valid. - * If he selects only SECTEUR, DEFI_SQUELETTE is valid. - * Eficas will not proposed the keyword SECTEUR if SOUS_STRUC already exists. - -ENSEMBLE --------- - - the rule means that if one keyword is selected, the others have to be also. - the keywords order is not meaningful. - -- Example - - GRILLE in AFFE_CARA_ELEM, contains : - - ENSEMBLE('ORIG_AXE','AXE') - -- That means if GRILLE is used in the JDC - - * If the user doesn't select any of these keywords, GRILLE is valid. - * If he selects only ORIG_AXE, GRILLE is invalid. - * If he selects both ORIG_AXE and AXE, GRILLE is valid. - -PRESENT_PRESENT ---------------- - - the rule means that if the FIRST keyword is selected, the others have to be also. - -- Example - - MACRO_MISS_3D contains the rule - - PRESENT_PRESENT('FREQ_MIN','FREQ_MAX','FREQ_PAS') - -- That means if MACRO_MISS_3D is used in the JDC - - * If the user doesn't select any of these keywords, GRILLE is valid. - * If he selects only FREQ_MAX, GRILLE is valid. - * If he selects only FREQ_PAS, GRILLE is valid. - * If he selects only FREQ_MIN, GRILLE is invalid. - * If he selects both FREQ_MIN, FREQ_MAX and FREQ_PAS, GRILLE is valid. - - -PRESENT_ABSENT ---------------- - - the rule means that if the FIRST keyword is selected, the others aren't allowed. - -- Example - FORCE_COQUE in AFFE_CHAR_MECA contains - - regles=( PRESENT_ABSENT('FX','PRES','F1','F2','F3','MF1','MF2'), - -- That means if FORCE_COQUE is used in the JDC - - * If the user doesn't select any of these keywords, FORCE_COQUE is valid. - * If he selects only FX, FORCE_COQUE is valid. - * If he selects both PRES and F1, FORCE_COQUE is valid. - - - - diff --git a/Doc/images/ArbreSalome.png b/Doc/images/ArbreSalome.png deleted file mode 100644 index f9819f07..00000000 Binary files a/Doc/images/ArbreSalome.png and /dev/null differ diff --git a/Doc/images/ChoixCata.png b/Doc/images/ChoixCata.png deleted file mode 100644 index adc17bf4..00000000 Binary files a/Doc/images/ChoixCata.png and /dev/null differ diff --git a/Doc/images/ChoixCode.png b/Doc/images/ChoixCode.png deleted file mode 100644 index 0f265322..00000000 Binary files a/Doc/images/ChoixCode.png and /dev/null differ diff --git a/Doc/images/ChoixCommande.png b/Doc/images/ChoixCommande.png deleted file mode 100644 index 737ee735..00000000 Binary files a/Doc/images/ChoixCommande.png and /dev/null differ diff --git a/Doc/images/CommandeBouton.png b/Doc/images/CommandeBouton.png deleted file mode 100644 index 990f8831..00000000 Binary files a/Doc/images/CommandeBouton.png and /dev/null differ diff --git a/Doc/images/Commentaire.png b/Doc/images/Commentaire.png deleted file mode 100644 index 22dc4e99..00000000 Binary files a/Doc/images/Commentaire.png and /dev/null differ diff --git a/Doc/images/DataMenu.png b/Doc/images/DataMenu.png deleted file mode 100644 index 5376bd40..00000000 Binary files a/Doc/images/DataMenu.png and /dev/null differ diff --git a/Doc/images/DblClickOnOptional.png b/Doc/images/DblClickOnOptional.png deleted file mode 100644 index 333d79fc..00000000 Binary files a/Doc/images/DblClickOnOptional.png and /dev/null differ diff --git a/Doc/images/Documentation1.png b/Doc/images/Documentation1.png deleted file mode 100644 index f332d959..00000000 Binary files a/Doc/images/Documentation1.png and /dev/null differ diff --git a/Doc/images/DoubleFleche.png b/Doc/images/DoubleFleche.png deleted file mode 100644 index 7834570e..00000000 Binary files a/Doc/images/DoubleFleche.png and /dev/null differ diff --git a/Doc/images/Duplication.png b/Doc/images/Duplication.png deleted file mode 100644 index ca22d72d..00000000 Binary files a/Doc/images/Duplication.png and /dev/null differ diff --git a/Doc/images/Erreur.png b/Doc/images/Erreur.png deleted file mode 100644 index 8be418e1..00000000 Binary files a/Doc/images/Erreur.png and /dev/null differ diff --git a/Doc/images/FichiersEtRepertoires.png b/Doc/images/FichiersEtRepertoires.png deleted file mode 100644 index 5f38cf95..00000000 Binary files a/Doc/images/FichiersEtRepertoires.png and /dev/null differ diff --git a/Doc/images/FiltreCommande.png b/Doc/images/FiltreCommande.png deleted file mode 100644 index 6ebf78c1..00000000 Binary files a/Doc/images/FiltreCommande.png and /dev/null differ diff --git a/Doc/images/FindConcept.png b/Doc/images/FindConcept.png deleted file mode 100644 index d2d55ec7..00000000 Binary files a/Doc/images/FindConcept.png and /dev/null differ diff --git a/Doc/images/GererFichiers.png b/Doc/images/GererFichiers.png deleted file mode 100644 index 3434e230..00000000 Binary files a/Doc/images/GererFichiers.png and /dev/null differ diff --git a/Doc/images/GererMCS.png b/Doc/images/GererMCS.png deleted file mode 100644 index 67a72591..00000000 Binary files a/Doc/images/GererMCS.png and /dev/null differ diff --git a/Doc/images/Groupes.png b/Doc/images/Groupes.png deleted file mode 100644 index 9abcf80d..00000000 Binary files a/Doc/images/Groupes.png and /dev/null differ diff --git a/Doc/images/Icons.png b/Doc/images/Icons.png deleted file mode 100644 index f6582e62..00000000 Binary files a/Doc/images/Icons.png and /dev/null differ diff --git a/Doc/images/Import.png b/Doc/images/Import.png deleted file mode 100644 index 2b932552..00000000 Binary files a/Doc/images/Import.png and /dev/null differ diff --git a/Doc/images/LctDsSalome.png b/Doc/images/LctDsSalome.png deleted file mode 100644 index 59057700..00000000 Binary files a/Doc/images/LctDsSalome.png and /dev/null differ diff --git a/Doc/images/ListeEtTuple.png b/Doc/images/ListeEtTuple.png deleted file mode 100644 index 807771dd..00000000 Binary files a/Doc/images/ListeEtTuple.png and /dev/null differ diff --git a/Doc/images/Main.png b/Doc/images/Main.png deleted file mode 100644 index 003ca74b..00000000 Binary files a/Doc/images/Main.png and /dev/null differ diff --git a/Doc/images/Matrice.png b/Doc/images/Matrice.png deleted file mode 100644 index 0d2ec7a3..00000000 Binary files a/Doc/images/Matrice.png and /dev/null differ diff --git a/Doc/images/Menus.png b/Doc/images/Menus.png deleted file mode 100644 index d19eff3c..00000000 Binary files a/Doc/images/Menus.png and /dev/null differ diff --git a/Doc/images/Multi.png b/Doc/images/Multi.png deleted file mode 100644 index 0c500fbd..00000000 Binary files a/Doc/images/Multi.png and /dev/null differ diff --git a/Doc/images/NomPython.png b/Doc/images/NomPython.png deleted file mode 100644 index d24e6f0a..00000000 Binary files a/Doc/images/NomPython.png and /dev/null differ diff --git a/Doc/images/NommerObjet.png b/Doc/images/NommerObjet.png deleted file mode 100644 index 5bb63fe8..00000000 Binary files a/Doc/images/NommerObjet.png and /dev/null differ diff --git a/Doc/images/Nouveau.png b/Doc/images/Nouveau.png deleted file mode 100644 index 0ef1e48a..00000000 Binary files a/Doc/images/Nouveau.png and /dev/null differ diff --git a/Doc/images/OptionnelCommande.png b/Doc/images/OptionnelCommande.png deleted file mode 100644 index e76a567f..00000000 Binary files a/Doc/images/OptionnelCommande.png and /dev/null differ diff --git a/Doc/images/OptionnelCommande1.png b/Doc/images/OptionnelCommande1.png deleted file mode 100644 index a6395998..00000000 Binary files a/Doc/images/OptionnelCommande1.png and /dev/null differ diff --git a/Doc/images/OptionnelParametersAdao.png b/Doc/images/OptionnelParametersAdao.png deleted file mode 100644 index e04ffc03..00000000 Binary files a/Doc/images/OptionnelParametersAdao.png and /dev/null differ diff --git a/Doc/images/OptionnelParametersAdao1.png b/Doc/images/OptionnelParametersAdao1.png deleted file mode 100644 index e6dfc05a..00000000 Binary files a/Doc/images/OptionnelParametersAdao1.png and /dev/null differ diff --git a/Doc/images/Ordre.png b/Doc/images/Ordre.png deleted file mode 100644 index 6c1c4252..00000000 Binary files a/Doc/images/Ordre.png and /dev/null differ diff --git a/Doc/images/Ouvrir.png b/Doc/images/Ouvrir.png deleted file mode 100644 index 1ad549ec..00000000 Binary files a/Doc/images/Ouvrir.png and /dev/null differ diff --git a/Doc/images/Parametres.png b/Doc/images/Parametres.png deleted file mode 100644 index 185fed8a..00000000 Binary files a/Doc/images/Parametres.png and /dev/null differ diff --git a/Doc/images/Parametres1.png b/Doc/images/Parametres1.png deleted file mode 100644 index 6c9029d9..00000000 Binary files a/Doc/images/Parametres1.png and /dev/null differ diff --git a/Doc/images/Parametres2.png b/Doc/images/Parametres2.png deleted file mode 100644 index 7561fcb4..00000000 Binary files a/Doc/images/Parametres2.png and /dev/null differ diff --git a/Doc/images/Poubelle.png b/Doc/images/Poubelle.png deleted file mode 100644 index 26cd6cc4..00000000 Binary files a/Doc/images/Poubelle.png and /dev/null differ diff --git a/Doc/images/Recents.png b/Doc/images/Recents.png deleted file mode 100644 index 09365701..00000000 Binary files a/Doc/images/Recents.png and /dev/null differ diff --git a/Doc/images/Regles.png b/Doc/images/Regles.png deleted file mode 100644 index 508f0109..00000000 Binary files a/Doc/images/Regles.png and /dev/null differ diff --git a/Doc/images/Roue.png b/Doc/images/Roue.png deleted file mode 100644 index bcabda6d..00000000 Binary files a/Doc/images/Roue.png and /dev/null differ diff --git a/Doc/images/Run.png b/Doc/images/Run.png deleted file mode 100644 index d4ce89ae..00000000 Binary files a/Doc/images/Run.png and /dev/null differ diff --git a/Doc/images/SalomePylone.png b/Doc/images/SalomePylone.png deleted file mode 100644 index 3aff78cd..00000000 Binary files a/Doc/images/SalomePylone.png and /dev/null differ diff --git a/Doc/images/SalomePyloneSE.png b/Doc/images/SalomePyloneSE.png deleted file mode 100644 index 1be99b77..00000000 Binary files a/Doc/images/SalomePyloneSE.png and /dev/null differ diff --git a/Doc/images/Scripts.png b/Doc/images/Scripts.png deleted file mode 100644 index e49a2b56..00000000 Binary files a/Doc/images/Scripts.png and /dev/null differ diff --git a/Doc/images/SelectAllInList.png b/Doc/images/SelectAllInList.png deleted file mode 100644 index 2bd91a57..00000000 Binary files a/Doc/images/SelectAllInList.png and /dev/null differ diff --git a/Doc/images/ShowAllValues.png b/Doc/images/ShowAllValues.png deleted file mode 100644 index b9ca58e9..00000000 Binary files a/Doc/images/ShowAllValues.png and /dev/null differ diff --git a/Doc/images/TPXO.png b/Doc/images/TPXO.png deleted file mode 100644 index fbc67540..00000000 Binary files a/Doc/images/TPXO.png and /dev/null differ diff --git a/Doc/images/ToolTipOnButton.png b/Doc/images/ToolTipOnButton.png deleted file mode 100644 index 1861b2d3..00000000 Binary files a/Doc/images/ToolTipOnButton.png and /dev/null differ diff --git a/Doc/images/ToolTipOnLabel.png b/Doc/images/ToolTipOnLabel.png deleted file mode 100644 index 2e369c6d..00000000 Binary files a/Doc/images/ToolTipOnLabel.png and /dev/null differ diff --git a/Doc/images/ToolTipOnLineEdit.png b/Doc/images/ToolTipOnLineEdit.png deleted file mode 100644 index c2ab10d8..00000000 Binary files a/Doc/images/ToolTipOnLineEdit.png and /dev/null differ diff --git a/Doc/images/ToolTipOnRed.png b/Doc/images/ToolTipOnRed.png deleted file mode 100644 index 441d51c3..00000000 Binary files a/Doc/images/ToolTipOnRed.png and /dev/null differ diff --git a/Doc/images/Zero.png b/Doc/images/Zero.png deleted file mode 100644 index 96381c7b..00000000 Binary files a/Doc/images/Zero.png and /dev/null differ diff --git a/Doc/index.rst b/Doc/index.rst deleted file mode 100644 index d67712ea..00000000 --- a/Doc/index.rst +++ /dev/null @@ -1,35 +0,0 @@ -.. EFICAS documentation master file, created by sphinx-quickstart on Wed Sep 14 11:40:32 2011. - You can adapt this file completely to your liking, but it should at least - contain the root `toctree` directive. - -Welcome to EFICAS's documentation! -================================== - -This documentation covers the usage of Eficas as data setting tool. -This is intended for end users who want to use Eficas and not for developpers who want to write a catalog. - -The usage of Eficas for a particular code is not described in this guide. Refer to -code documentation to know how to use Eficas more specifically. - -Contents: - -.. toctree:: - :maxdepth: 1 - - eficas_presentation - lancer_eficas - nouveau_JDC - ajouter_une_commande - parametrer_une_commande - color_chart - commentaires_parametres - eficas_icons - widgetInDetails - eficas_notions - eficas_rules - python_rules - eficas_in_salome - - - - diff --git a/Doc/lancer_eficas.rst b/Doc/lancer_eficas.rst deleted file mode 100644 index 1eab8dd7..00000000 --- a/Doc/lancer_eficas.rst +++ /dev/null @@ -1,33 +0,0 @@ -Running Eficas -============== - -In Eficas, many common commands can be invoked via menus, toolbar buttons as well as keyboard shortcuts. -As in many GUI, a menu widget can be either a pull-down menu or a standalone context menu. Pull-down menus are shown by the menu bar when the user clicks on the respective item or presses the specified shortcut key. Context menus are usually invoked by some special keyboard key or by right-clicking. -Eficas allows you to write (and reread) an unvalid file. At any time, you can save your works. - - -- Eficas is mainly available in Salome, and often from code's modules (for example for Aster or Adao). Otherwise, see how to launch : :ref:`salome-label`. -- To run Eficas standalone, use command line : python Code/qtEficas_Code. -- On Windows, use .bat to run Eficas. - -*If Eficas is installed on your machine only for one specific code and one specific version of this code, skeep the two next steps.* - - - -Choose a Code ... ------------------- - -Unless you have started Eficas for a specific code, Eficas will ask you to choose the code you want to work with, -each time you click on "Nouveau/New" or "Ouvrir/Open" in the "Fichier/File" menu. - -.. image:: images/ChoixCode.png - :align: center - -and a version of the Code ----------------------------- - -if many catalogs (ie many versions ) are available, Eficas will ask you to select one. - -.. image:: images/ChoixCata.png - :align: center - diff --git a/Doc/nouveau_JDC.rst b/Doc/nouveau_JDC.rst deleted file mode 100644 index cc2dc9f9..00000000 --- a/Doc/nouveau_JDC.rst +++ /dev/null @@ -1,79 +0,0 @@ -First step -=========== - -Build a new dataset. ---------------------- -Launch Eficas and choose "Nouveau/New" in "File" menu. - -.. image:: images/Nouveau.png - :align: center - -For some codes (Telemac or PSEN), simulation dataset are pre-filled with mandatory keywords. Users complete the dataset with values -and add new commands if needed. In this case, the window that allows to :ref:`form-label` appears. - - -Open an existing dataset. ---------------------------- -Launch Eficas and choose "Open/Ouvrir" in "File" menu. It shows up a file Open/Save dialog window. - -.. image:: images/Ouvrir.png - :align: center - -Open a "Recently Used" dataset. --------------------------------- -To open a document that you recently used, click "File" , point to "Recently Opened", and then click the item that you want to open. - -.. image:: images/Recents.png - :align: center - -To clear the contents of the list, click 'Delete' item. - - -Data/Jdc Menu. ----------------- - -.. image:: images/DataMenu.png - :align: center - -- Why is dataset unvalid? - Click on Validation Report item. - -- "Rules for dataset" displays the rules you have to respect when building a dataset - - -- "Source File" item allows to check the source file. - -- "Result File" item allows to check the .comm result. - It allows you to save the dataset in a file (for Adao Study for example) - -- "Comment" item add a comment at the beginning of the dataset. - -- "Parameters" allows you to manage parameters for the dataset. - -Open Multiple dataset. ----------------------- - -You can open multiple datasets. Each file is associated with a different page and is shown by clicking on its tab. - -.. image:: images/Multi.png - :align: center - - -Open twice the same dataset. ----------------------------- -You can open twice the same dataset (in order to create a copy and rename it). Eficas warns you : - -.. image:: images/Duplication.png - :align: center - -In case of duplication, Eficas does not assure coherency between the two copies. - - -The dataset is valid. ---------------------- -Once the dataset is valid, you can lauch your code (in particulary PSEN, Carmel). Use 'run' icon -or choose "Run" in the menubar. - -.. image:: images/Run.png - :align: center - diff --git a/Doc/parametrer_une_commande.rst b/Doc/parametrer_une_commande.rst deleted file mode 100644 index d4368876..00000000 --- a/Doc/parametrer_une_commande.rst +++ /dev/null @@ -1,171 +0,0 @@ -.. _form-label: - -=============== -Edit a command -=============== - -Each command has to be setted up. Eficas generates a data entry form. -This form varies dynamicaly, depending on the context : rules and already existing values. - -This widget appears by selecting (clicking) on a command (first level in the tree view). - -.. image:: images/DoubleFleche.png - :align: right - -You can navigate from command to command using the arrows buttons: - - -The command widget --------------------- - -this widget is divided vertically into three separate areas : - - the tree view, - - the form widget - - the optional keywords. - -When needed, views provide scrollbar so that the entire information can be viewed. - -A bottom widget provides a horizontal bar for presenting documentation as the status bar is used to display error or warning messages. - -.. image:: images/Main.png - :align: center - -| -| - -Edit values -------------- - -Eficas uses many different widgets in order to help you to choose values : - -- Line editors for simple values -- Entry lists widgets -- Popup lists -- Group boxes of button - -see :ref:`features-label` to know more about each widget. - - -.. image:: images/Erreur.png - :align: center -Eficas does not let you enter invalid values. It checks the type and the cardinality of the value. -It ensures that the value is in the value domain or proposes a set of discrete values. -Data entered is checked against a set of rules. Errors are displayed in red to draw attention. - - -Form construction is dynamic ----------------------------- - -The form is updated according to values. It asks for the field depending on what's selected. - -In the example below: - -- if value of 'Initial_Conditions' is 'Zero Elevation', no additional data is needed - -.. image:: images/Zero.png - :align: center - -- if value of 'Initial_Conditions' is 'TPXO satellite altimetry', you have to fill 'Ascii_Database_For_Tide' - -.. image:: images/TPXO.png - :align: center - -Displaying optional keyword ------------------------------- - -When you create a new command, the widget opens with the optional keywords of this command. - -.. image:: images/OptionnelCommande.png - :align: center - -When entering in a "group keyword", the optional keywords list is updated to show optional keyword for this specific "group keyword". - -.. image:: images/OptionnelCommande1.png - :align: center - - -By clicking on command label ("INITIALIZATION") or on keyword label ("Input_files"), the corresponding optional keywords list is displayed. - -Sometimes, when a user enters a value for a keyword, optional keywords are dependents on this value. Optional keywords list is updated. -This is the case for conditionnal keywords - -.. image:: images/OptionnelParametersAdao.png - :align: center - - -.. image:: images/OptionnelParametersAdao1.png - :align: center - -Adding/Deleting an optional keyword ------------------------------------- - -Optional keywords (if any) are in the right part of the "command window". Just double-click on the checkbox to add the keyword. -The input data form is redisplayed and the list of possible optional keywords will be updated (for example, if two keywords cannot be simultaneously present). - -.. image:: images/DblClickOnOptional.png - :align: center - -.. image:: images/Poubelle.png - :align: right -To delete a keyword (or a command), just click the garbage icon : - -| -Naming Concepts ---------------- - -The icon for a command may be one of three colors: green, yellow or red. These colors represent the status of the command and the color meanings is : - - red for unvalid command, - - green for valid command, - - yellow for commands which have to be named. - -.. image:: images/NommerObjet.png - :align: center - -Tooltips --------- - -**Use tooltips to have information.** - -- Tooltips on **labels** display **information about the keyword**. Double-click on the label to display this information in the comment area, at the bottom of the window. This is useful for long text. *(You also can double-click on the keyword in the tree dataset.)* - -.. image:: images/ToolTipOnLabel.png - :align: center - -- Tooltips on **lineEdit** (one-line text editor) display **suggestion** for the input value. Suggestion are not very frequent. They are not default values, because you have to enter it explicitely. - -.. image:: images/ToolTipOnLineEdit.png - :align: center - -- Tooltips on **Red point** display **information about the validity** for the keyword or for the group of keywords. -By double-clicking on the "red point" a window displaying the same information appears. It should be usefull if text -is too long to be read at one sitting. - -.. image:: images/ToolTipOnRed.png - :align: center - -- Tooltips on **Commands Button** explain what the icon/button represents, and which action is activated by clicking. - -.. image:: images/ToolTipOnButton.png - :align: center - - -Context Menus --------------- -In the dataset tree, context menus (invoked by right-clicking) allow user to : - -- create comments in the tree -- create parameter -- comment the command itself -- delete the node - -.. image:: images/Menus.png - :align: center - -Some commands have associated scripts. They are easy to identify because the "run" icon is present : - -.. image:: images/Roue.png - :align: right - - -.. image:: images/Scripts.png - :align: center diff --git a/Doc/python_rules.rst b/Doc/python_rules.rst deleted file mode 100644 index 19a8ee34..00000000 --- a/Doc/python_rules.rst +++ /dev/null @@ -1,39 +0,0 @@ -.. _python-label: - -=============================== -rules for python syntax -=============================== - -Variable names and identifiers are similar to those in many other languages : ----------------------------------------------------------------------------- - -* They start with a letter (A_Z or a-z) or underscore "_"". -* They are followed by letters, numbers or underscores. -* They are case-sensitive. -* A string is a sequence of caracters enclosed by a matching pair of single or double quotes. - -Eficas does not allow you to use uncorrect names : - -.. image:: images/NomPython.png - -Some identifiers are reserved words : -------------------------------------- - -* You can't use words of the python language as identifiers. -* Eficas itself uses identifiers which become reserved words. For example, you can't use the following words, even if it would make some interesting names: - - BLOC, EXCLUS, OPER, ASSD, - - EVAL, FACT, FORM, JDC, - - REGLE, VALIDATOR, - - ETAPE, ENTITE - -Python's way for assigning values to variables: -------------------------------------------------- - -* Keep in mind that ".comm" are python files. The simplest form of assignement is : variable = value -* The hash character (#) starts a comment -* Tuples are enclosed in parentheses. -* Lists are enclosed in bracked. -* In tuples or lists, a ',' follows each item especially the last one. - -.. image:: images/ListeEtTuple.png - diff --git a/Doc/widgetInDetails.rst b/Doc/widgetInDetails.rst deleted file mode 100644 index ae4dbe1f..00000000 --- a/Doc/widgetInDetails.rst +++ /dev/null @@ -1,70 +0,0 @@ -.. _features-label: - -======================== -Some Widgets Features -======================== - -File or Directory ------------------ - -+-------------------------------------+--------------------------------------------------+ -| a File parameter has to be : | if catalog's description is : | -+=====================================+==================================================+ -|an existing file | type='Fichier' | -+-------------------------------------+--------------------------------------------------+ -|a directory | type='Repertoire' | -+-------------------------------------+--------------------------------------------------+ -|an existing file with specific suffix| type='Fichier','JDC Files (*.comm);;All Files (*)| -+-------------------------------------+--------------------------------------------------+ -|a non-allready existing file | type=('Fichier',"",'Sauvegarde'), | -+-------------------------------------+--------------------------------------------------+ -|a simple string | type='FichierNoAbs' | -+-------------------------------------+--------------------------------------------------+ - -The following widget allows users to enter a directory (first) or a file. Magnifier icon is not avalaible when a directory is required. - -.. image:: images/FichiersEtRepertoires.png - -- to open a file explorer, click on the corresponding icon. If a file suffix is required, content of the directory is filtered before being shown in the dialog, using a semicolon-separated list of filters specified. - -- to view file content, click on magnifier icon. It uses xdg-open, which is a desktop-independent tool for opening files (according to suffix convention). - - -List ------ -List widgets have a toolbar down, under values area. - -.. image:: images/ShowAllValues.png - -- Use the Up or Down arrows to move the selection in the list -- Use the Plus (or Minus) icon to add (delete) a new line -- Use the magnifier icon to see all the values in a modal widget - -| - -If lists are not ordered, it is possible to select all values by clicking the button on the right. - -.. image:: images/SelectAllInList.png - - - -Import data from file ------------------------ - -Data import icon provide access to data from ASCII text files. -Select the character that separates values in your text file and values you want to import. - -.. image:: images/Import.png - :align: center - - -Matrix -------- -Sometimes, matrix dimensions depend on the number of others parameters (for example, correlation matrix). -If a new variable is entered or if the name changes, matrix becomes invalid. -Users have to redisplay the header by pushing the refresh icon. - -.. image:: images/Matrice.png - - - diff --git a/Efi2Xsd/AccasXsd.py b/Efi2Xsd/AccasXsd.py deleted file mode 100755 index 0f63f0d2..00000000 --- a/Efi2Xsd/AccasXsd.py +++ /dev/null @@ -1,1485 +0,0 @@ -#!/usr/bin/env python -# -*- coding: utf-8 -*- -# Copyright (C) 2007-2021 EDF R&D -# -# 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 sys,os -import types -import Accas -import imp -from copy import deepcopy, copy -import traceback - -# CONTEXT est accessible (__init__.py de Noyau) - -#import raw.efficas as efficas -sys.path.insert(0,os.path.abspath(os.path.join(os.getcwd(),'..'))) - -# ds l init du SIMP il manque siValide et fenetreIhm - -from .mapDesTypes import dictSIMPEficasXML, dictSIMPXMLEficas -from .mapDesTypes import dictFACTEficasXML, dictFACTXMLEficas -from .mapDesTypes import dictPROCEficasXML, dictPROCXMLEficas -from .mapDesTypes import dictOPEREficasXML, dictOPERXMLEficas -from .mapDesTypes import dictBLOCEficasXML, dictBLOCXMLEficas -from .mapDesTypes import dictPourCast, dictNomsDesTypes -from .mapDesTypes import listeParamDeTypeTypeAttendu, listeParamDeTypeStr, dictPourCast -from .mapDesTypes import listeParamTjsSequence, listeParamSelonType -from .mapDesTypes import Tuple - -PourTraduction = False - -from .balisesXSD import * - -# ----------------- -class X_definition: -# ----------------- - def adjoint(self, liste1, liste2): - #print ('adjoint', liste1, liste2) - l=[] - for elt1 in liste1: - for elt2 in liste2: - newListe=deepcopy(elt1) - if elt2 != []: newListe.append(elt2) - l.append(newListe) - return l - - def adjointUnMot(self, liste1, mot): - l=[] - for elt1 in liste1: - newListe=deepcopy(elt1) - newListe.append(mot) - l.append(newListe) - return l - - def remplaceListeParContenuEtVide(self, liste1, liste2): - listeFinale=[] - for elt1 in liste1 : - for eltListe in liste2: - newListe=deepcopy(elt1) - if eltListe!=[] :newListe+=eltListe - if newListe not in listeFinale : listeFinale.append(newListe) - return listeFinale - - - def fusionne2Listes(self, liste1, liste2): - #print ('fusionne2Liste', liste1, liste2) - listeFinale=[] - for elt1 in liste1 : - for eltListe in liste2: - newListe=deepcopy(elt1) - if eltListe!=[] :newListe.append(eltListe) - listeFinale.append(newListe) - #print (listeFinale) - return listeFinale - - def getNomDuCodeDumpe(self): - if hasattr(self,'nomDuCodeDumpe') : return - obj=self - while ( not hasattr(obj,'nomDuCodeDumpe') ): obj=obj.pere - self.nomDuCodeDumpe = obj.nomDuCodeDumpe - self.code=obj.code - - def getXPathComplet(self): - obj=self - textePath='/'+self.code+":"+self.nom - while ( hasattr(obj,'pere') ): - obj=obj.pere - if isinstance(obj, X_BLOC) : continue - textePath= '/'+ self.code + ":" + obj.nom + textePath - textePath='.' + textePath - return textePath - - def getXPathSansSelf(self): - obj=self - textePath='' - while ( hasattr(obj,'pere') ): - obj=obj.pere - if isinstance(obj, X_BLOC) : continue - textePath= self.code + ":" + obj.nom + '/' + textePath - textePath='./'+ self.code + ":" + textePath - return textePath - - def getNomCompletAvecBloc(self): - obj=self - texteNom=self.nom - while ( hasattr(obj,'pere') ): - texteNom=obj.pere.nom+'_'+texteNom - obj=obj.pere - return texteNom - - def metAJourPyxb(self,nomDuTypePyxb) : - self.aCreer=False - self.nomDuTypePyxb=nomDuTypePyxb - cata = CONTEXT.getCurrentCata() - nom='T_'+self.nom - if (hasattr (self, 'nomXML')) and self.nomXML != None : nom='T_'+self.nomXML - if not (nom in cata.dictTypesXSD.keys()) : - cata.dictTypesXSD[nom] = [self,] - else : - cata.dictTypesXSD[nom].append(self) - - def definitNomDuTypePyxb(self,forceACreer=False,debug=False): - #if self.nom == 'SubgridScaleModel' : debug=True - #print ('definitNomDuTypePyxb', self, self.nom,self.nomComplet(),forceACreer) - #PNPN - if hasattr(self,'nomDuTypePyxb') : self.aCreer = False; return self.nomDuTypePyxb - #debug=False - if debug : print ('definitNomDuTypePyxb traitement pour ', self.nom) - self.aCreer = True - cata = CONTEXT.getCurrentCata() - nom='T_'+self.nom - if (hasattr (self, 'nomXML')) and self.nomXML != None : nom='T_'+self.nomXML - if not (nom in cata.dictTypesXSD.keys()) : - if debug : print ('definitNomDuTypePyxb encore jamais traite ', self.nom , ' a pour type' , nom) - cata.dictTypesXSD[nom] = [self,] - self.nomDuTypePyxb=nom - return nom - - if nom == 'T_Consigne' : return nom - - if not forceACreer : - self.aCreer = False - listePossible=cata.dictTypesXSD[nom] - indice=0 - while (indice < len(listePossible)) : - objAComparer=listePossible[indice] - if debug : print (self.compare) - if self.compare(objAComparer) : - self.nomDuTypePyxb=objAComparer.nomDuTypePyxb - if debug : print (self, objAComparer) - if debug : print (type(self), type(objAComparer)) - if debug : print ('definitNomDuTypePyxb', self.nom , 'type identique', objAComparer.nomDuTypePyxb ) - # c est nul pour la comparaison mais cela permet d etre ok dans le dictionnaire passe a Accas - cata.dictTypesXSD[nom].append(self) - if self.label != 'SIMP' : - if objAComparer not in list(cata.dictTypesXSDJumeaux.keys()) : cata.dictTypesXSDJumeaux[objAComparer]=[self,] - else : cata.dictTypesXSDJumeaux[objAComparer].append(self) - return objAComparer.nomDuTypePyxb - indice += 1 - self.aCreer = True - cata.dictTypesXSD[nom].append(self) - nomAlter='T_'+self.nom+'_'+str(indice) - if (hasattr (self, 'nomXML')) and self.nomXML != None : - nomAlter='T_'+self.nomXML+'_'+str(indice) - self.nomDuTypePyxb=nomAlter - return nomAlter - - -# ---------------------------------------- -class X_compoFactoriseAmbigu(X_definition): -# ---------------------------------------- - - def __init__(self,nom,listeDeCreation,pere, debug=True): - - if debug : - for i in listeDeCreation : print (i.nom) - self.label='BlocAmbigu' - self.nom=nom - self.pere=pere - self.statut='f' - self.entites={} - self.mcXSD=[] - self.typesXSDDejaDumpes=[] - self.ordre_mc=[] - self.lesConditions = 'Possible Conditions : ' - for mc in listeDeCreation : - if hasattr(mc, 'condition'):self.lesConditions += '\n\t\t\t\t\t\t' + mc.condition - self.mcXSD.append(mc) - self.ordre_mc.append(mc.nom) - - if debug : print (self.mcXSD) - if debug : print (self.ordre_mc) - self.construitEntites(self.mcXSD) - self.constructionArbrePossibles() - lesPossibles=deepcopy(self.arbrePossibles) - if debug : print ('lesPossibles ', lesPossibles) - - self.getNomDuCodeDumpe() - self.nomDuTypePyxb = self.definitNomDuTypePyxb() - if debug : print (self.nomDuTypePyxb) - self.texteSimple = '' - self.texteComplexeVenantDesFils = '' - self.texteComplexe = debutTypeSubstDsBlocFactorise.format(self.nomDuTypePyxb) - # on enleve [] des possibles puisque l elt sera optionnel - lesPossibles.remove([]) - if debug : print ('________________ init de compoAmbigu',self.nom, lesPossibles) - if debug : print ('self.entites', self.entites) - self.mcXSD=self.factoriseEtCreeDump(lesPossibles,nomAppel='Root') - if debug : print ('self.mcXSD',self.mcXSD) - self.texteComplexe += finTypeSubstDsBlocFactorise - self.texteComplexe +=self.texteComplexeVenantDesFils - #print ('fin pour prepareDumpXSD pour', self.nom) - - def compare(self,autreMC): - if self.label != autreMC.label : return False - #PN : le bug est la - # arbre des possibles identiques mais les types different - # comment faire ? - #print (self.arbrePossibles) - #print (autreMC.arbrePossibles) - #if self.arbrePossibles== autreMC.arbrePossibles : return True - return False - - def construitEntites(self, laListe): - for mc in laListe : - if mc.nom in self.entites.keys() : self.entites[mc.nom].append(mc) - else : self.entites[mc.nom] = [mc,] - if mc.label == 'BLOC' or mc.label == 'BlocAmbigu': - self.ajouteLesMCFilsAEntite(mc) - - - def ajouteLesMCFilsAEntite(self,blocMc): - for mcFilsNom in blocMc.entites.keys(): - if mcFilsNom == 'Consigne' or mcFilsNom == 'blocConsigne' : continue - if mcFilsNom not in self.entites.keys(): self.entites[mcFilsNom]=[] - if blocMc.label == 'BlocAmbigu' : - for mc in blocMc.entites[mcFilsNom] : - self.entites[mcFilsNom].append(mc) - if mc.label == 'BLOC' or mc.label == 'BlocAmbigu': - self.ajouteLesMCFilsAEntite(mc) - else : - self.entites[mcFilsNom].append(blocMc.entites[mcFilsNom]) - if blocMc.entites[mcFilsNom].label == 'BLOC' or blocMc.entites[mcFilsNom].label == 'BlocAmbigu': - self.ajouteLesMCFilsAEntite(blocMc.entites[mcFilsNom]) - - - - - def constructionArbrePossibles(self, debug = False): - if debug : print ('construction pour FACT ambigu _______________', self.nom) - toutesLesLignes=[[]] - for child in self.mcXSD : - if not hasattr(child, 'arbrePossibles') : child.construitArbrePossibles() - if child.label != 'BLOC' : - toutesLesLignes = deepcopy(self.fusionne2Listes(toutesLesLignes, child.arbrePossibles)) - else : - toutesLesLignes = deepcopy(self.fusionne2Listes(toutesLesLignes, [child.nom, []])) - - lignesAGarder=[] - for ligne in toutesLesLignes: - blocContenus=[] - aAjouter=True - for mc in ligne : - objMC=self.entites[mc][0] - if objMC.label == 'BLOC' : - blocContenus.append(objMC) - for b in blocContenus : - for frere in blocContenus[blocContenus.index(b)+1:]: - if b.isDisjoint(frere) : continue - aAjouter=False - break - if not aAjouter : break - if aAjouter and ligne not in lignesAGarder : - lignesAGarder.append(ligne) - - #print ("______________________________________") - #for l in lignesAGarder : print (l) - #print (len(lignesAGarder)) - #print ("______________________________________") - self.arbrePossibles=[] - for ligne in lignesAGarder : - #print ('lignesAGarder', ligne) - for newLigne in self.deploye(ligne): - #print (newLigne) - if newLigne not in self.arbrePossibles : self.arbrePossibles.append(newLigne) - #for l in self.arbrePossibles : print (l) - #print ("______________________________________") - - - def deploye (self, ligne): - toutesLesLignes=[[]] - for mc in ligne : - #print ( 'mc in deploye', mc) - objMC=self.entites[mc][0] - #print ( 'nom', objMC.nom, objMC.label) - if objMC.label == 'BLOC' or objMC.label == 'BlocAmbigu': - toutesLesLignes = deepcopy(self.remplaceListeParContenuEtVide(toutesLesLignes, objMC.arbrePossibles)) - else : - toutesLesLignes = deepcopy(self.adjointUnMot(toutesLesLignes,mc )) - return toutesLesLignes - - def construitArbrePossibles(self): - # inutile car on a deja l arbre mais appele parfois - #print ('dans X_factCompoAmbigu ne fait rien', self.nom, self.arbrePossibles) - pass - - def dumpXsd(self, dansFactorisation=False, multiple = False, first=False): - # on ne fait rien, tout a ete fait dans le init - self.texteElt=substDsSequence.format(self.code,self.nomDuTypePyxb,0,1, self.lesConditions) - - def nomComplet(self) : - print ('dans nomComplet pourquoi ?',self, self.nom) - - - def factoriseEtCreeDump(self, laListe, indent=2 ,nomAppel=None, debug=False): - if debug : print ('_______________________________ factoriseEtCreeDump') - if debug : print(self.nom, laListe, indent, nomAppel) - maListeRetour=[] - aReduire={} - - if [] in laListe : - declencheChoiceAvecSeqVid=True - while [] in laListe : laListe.remove([]) - #min=0 - else : - declencheChoiceAvecSeqVid=False - #min=1 - - - - for ligne in laListe : - if ligne[0] in aReduire.keys(): - if len(ligne) == 1 :aReduire[ligne[0]].append([]) - else : aReduire[ligne[0]].append(ligne[1:]) - else : - if len(ligne) == 1 : aReduire[ligne[0]]=[[]] - else : aReduire[ligne[0]]=[ligne[1:],] - - - if debug : print ('la Liste', laListe, declencheChoiceAvecSeqVid) - if debug : print (aReduire) - if len(aReduire.keys()) == 1 : - if declencheChoiceAvecSeqVid == False : - creeChoice=False - creeSequence=True - self.texteComplexe += '\t'*(indent) + debSequenceDsBloc; indent=indent+1 - else : - creeChoice=True - creeSequence=False - # pour regler le souci du 1er Niveau - self.texteComplexe += '\t'*indent + debutChoiceDsBloc; indent=indent+1 - #if min == 1 : self.texteComplexe += '\t'*indent + debutChoiceDsBloc; indent=indent+1 - #else : self.texteComplexe += '\t'*indent + debutChoiceDsBlocAvecMin.format(min); indent=indent+1 - else : - #self.texteComplexe += '\t'*indent + debutChoiceDsBlocAvecMin.format(min); indent=indent+1 - self.texteComplexe += '\t'*indent + debutChoiceDsBloc; indent=indent+1 - creeChoice=True - creeSequence=False - - if debug : print ('creeSequence', creeSequence, aReduire) - for nomMC in aReduire.keys(): - if debug : print (nomMC) - listeSuivante=aReduire[nomMC] - if creeChoice and listeSuivante != [[]] : - self.texteComplexe += '\t'*(indent) + debSequenceDsBloc; indent=indent+1 - self.ajouteAuxTextes(nomMC,indent) - if listeSuivante == [[]] : continue # Est-ce toujours vrai ? - if len(listeSuivante) == 1 : self.ajouteAuxTextes(listeSuivante[0],indent) - else : self.factoriseEtCreeDump(listeSuivante, indent+int(creeSequence),nomMC) - if creeChoice : indent=indent -1 ; self.texteComplexe += '\t'*(indent) + finSequenceDsBloc - - if declencheChoiceAvecSeqVid : - self.texteComplexe += '\t'*indent + debSequenceDsBloc - self.texteComplexe += '\t'*indent + finSequenceDsBloc - if creeChoice : indent=indent -1 ; self.texteComplexe += '\t'*indent + finChoiceDsBloc - if creeSequence : indent=indent -1 ; self.texteComplexe += '\t'*(indent) + finSequenceDsBloc - - #if doitFermerSequence : indent=indent-1;self.texteComplexe += '\t'*(indent) + finSequenceDsBloc - #print (self.texteSimple) - #print ('______',' self.texteComplexe') - #print (self.texteComplexe) - #print ('_____', 'self.texteComplexeVenantDesFils') - #print (self.texteComplexeVenantDesFils) - #print ('fin pour _______________________________', self.nom) - return (maListeRetour) - - - def ajouteAuxTextes(self,nomMC,indent,debug=False) : - if debug : - print ('______________________________________________________') - print ('ajouteAuxTextes', nomMC, self.nom) - # for i in self.entites.keys() : print (self.entites[i][0].nom) - if (indent > 3) : indent = indent - 3 - - # PN change le 17 fevrier . Est-ce normal d arriver la ? - # if faut traiter les Blocs exclusifs qui donnent des choices de sequences - # mais celles-ci risquent d etre ambigues - while (isinstance(nomMC,list)) : - nomMC=nomMC[0] - - if nomMC == 'Consigne' or nomMC == 'blocConsigne' : return - if debug : print (nomMC, 'dans ajoute vraiment aux textes', self.entites ) - if len(self.entites[nomMC]) == 1: - mc=self.entites[nomMC][0] - mc.dumpXsd(dansFactorisation=True) - self.texteComplexe += '\t'*(indent) + mc.texteElt - if mc.aCreer : self.texteComplexeVenantDesFils += mc.texteComplexe - if mc.aCreer : self.texteSimple += mc.texteSimple - if mc.aCreer : mc.aCreer=False - return - - leType=type(self.entites[nomMC][0]) - for e in (self.entites[nomMC][1:]) : - if type(e) != leType: - print ('Projection XSD impossible, changez un des ', nomMC) - exit() - - # cette boucle ne fonctionne que pour des SIMP - resteATraiter=copy(self.entites[nomMC]) - #print ('________resteATraiter', resteATraiter) - listePourUnion=[] - first=1 - while resteATraiter != [] : - nvlListeATraiter=[] - mc=resteATraiter[0] - listePourUnion.append(mc) - for autre in resteATraiter[1:]: - if not (mc.compare(autre)) : nvlListeATraiter.append(autre) - resteATraiter=copy(nvlListeATraiter) - - if len(listePourUnion) == 1: - mc=listePourUnion[0] - mc.dumpXsd(dansFactorisation=True,multiple=False,first=first) - self.texteComplexe += '\t'*(indent) + mc.texteElt - if mc.aCreer : self.texteComplexeVenantDesFils += mc.texteComplexe - if mc.aCreer : self.texteSimple += mc.texteSimple - for mcIdent in self.entites[nomMC][1:]: mcIdent.metAJourPyxb(mc.nomDuTypePyxb) - if mc.aCreer : mc.aCreer=False - return - - # on ajoute le nom de l element - if not (isinstance(self.entites[nomMC][0], Accas.SIMP)) : - sontTousDisjoint=True - index=1 - if debug : print ('on cherche si ils sont disjoints : ',self.entites[nomMC]) - for mc in self.entites[nomMC] : - if debug : print ('compare mc' , mc, ' avec :') - for mcFrere in self.entites[nomMC][index:]: - ok = mc.isDisjoint(mcFrere) - if not ok : - sontTousDisjoint=False - break - if not(sontTousDisjoint) : break - index+=1 - if not sontTousDisjoint: - print ('2 blocs freres ont le meme nom et ne sont pas disjoints : pas encore traite') - print ('Projection XSD impossible, changez un des ', nomMC) - exit() - self.fusionneDsUnChoix(nomMC,indent) - if debug : print ('self.nom', self.nom) - if debug : print ('self.texteComplexe' , self.texteComplexe) - if debug : print ('self.texteSimple' , self.texteSimple) - if debug : print ('self.texteElt' , self.texteElt) - if debug : print ('________________________') - return - - - if hasattr(self.entites[nomMC][0], 'dejaDumpe') : # on a deja cree le type - if debug : print (self.entites[nomMC][0].nomDuTypePyxb, ' deja dumpe') - else : - if debug : print ('appel de dumpXsd') - self.entites[nomMC][0].dejaDumpe=True - self.entites[nomMC][0].dumpXsd(dansFactorisation=True,multiple=True,first=first) - if debug : print (self.entites[nomMC][0].nomDuTypePyxb) - - texteDocUnion='\n' - i=1 - for mc in self.entites[nomMC]: - if mc.ang != '' : texteDocUnion += str(i) + '- ' + mc.ang + ' or \n'; i=i+1 - elif mc .fr != '' : texteDocUnion += str(i) + '- ' + mc.fr + ' ou \n'; i=i+1 - if texteDocUnion == '\n' : - self.texteComplexe += '\t'*(indent) + self.entites[nomMC][0].texteElt - else : - texteDocUnion = texteDocUnion[0:-4] - debutTexteEltUnion = self.entites[nomMC][0].texteElt.split('maxOccurs=')[0] - self.texteComplexe += '\t'*(indent)+ reconstitueUnion.format(debutTexteEltUnion,texteDocUnion) - if self.entites[nomMC][0].nomDuTypePyxb in self.typesXSDDejaDumpes : return - self.typesXSDDejaDumpes.append(self.entites[nomMC][0].nomDuTypePyxb) - if debug : print ('et la j ajoute les definitions de type', self.entites[nomMC][0].nomDuTypePyxb) - - nomTypePyxbUnion=self.entites[nomMC][0].nomDuTypePyxb - texteSimpleUnion = debutSimpleType.format(nomTypePyxbUnion) - texteSimpleUnion += debutUnion - texteSimpleUnion += '\t'*(indent)+self.entites[nomMC][0].texteSimplePart2 - texteSimplePart1 = self.entites[nomMC][0].texteSimplePart1 - for e in listePourUnion[1:] : - e.dumpXsd(dansFactorisation=True,multiple=True,first=False) - # si on ext un mc simple la ligne suivante est inutile - # en revanche on ajoute le texte a tous les coups - #self.texteComplexeVenantDesFils += e.texteComplexe - e.metAJourPyxb(nomTypePyxbUnion) - texteSimpleUnion += '\t'*(indent) + e.texteSimplePart2 - texteSimplePart1 += e.texteSimplePart1 - texteSimpleUnion += finUnion - texteSimpleUnion +=fermeSimpleType - self.texteSimple += texteSimplePart1 + texteSimpleUnion - if debug : - print ('______________') - print (self.texteSimple) - print ('______________') - #print ('self.texteSimple', self.texteSimple) - - def fusionneDsUnChoix(self, nomMC,indent, debug=False): - if debug : print ('_________________________________', self.nom, self, nomMC,indent) - if debug : print (self.texteComplexe) - texteDocUnion='\n' - texteComplexe='' - texteComplexeVenantDesFils='' - texteSimple='' - mcRef= self.entites[nomMC][0] - # max = 1 : a priori les choix sont exclusifs - if (hasattr (mcRef, 'aDejaEteDumpe')) : - if debug : print ("je passe la NORMALEMENT car j ai deja ete dumpe") - return - leNomDuTypePyxb = mcRef.definitNomDuTypePyxb(forceACreer=True) - if debug : print ('nomMC', nomMC) - for mc in self.entites[nomMC]: - if debug : print ('------------', mc) - # on laisse dansFactorisation a False car ce n est pas comme une fusion de bloc - mc.texteComplexe = '' - mc.texteSimple = '' - mc.texteElt = '' - mc.dumpXsd(dansFactorisationDeFusion=True) - if debug : print ('texteSimple\n', mc.texteSimple, '\n fin\n') - if debug : print ('texteComplexeVenantDesFils\n',mc.texteComplexeVenantDesFils, '\n fin\n') - if debug : print ('texteComplexe\n', mc.texteComplexe, '\n fin\n') - if mc.ang != '' : texteDocUnion += str(i) + '- ' + mc.ang + ' or \n'; i=i+1 - elif mc .fr != '' : texteDocUnion += str(i) + '- ' + mc.fr + ' ou \n'; i=i+1 - texteComplexe += mc.texteComplexe - texteComplexeVenantDesFils += mc.texteComplexeVenantDesFils - texteSimple += mc.texteSimple - - if debug : print ('______________________________') - if debug : print ('textecomplexeVenantDesFils : \n' ,texteComplexeVenantDesFils ) - if debug : print ('______________________________') - if debug : print ('______________________________') - if debug : print ('textecomplexe : \n' ,texteComplexe ) - if debug : print ('______________________________') - self.entites[nomMC][0].aDejaEteDumpe=True - - self.texteElt = eltCompoDsSequence.format(nomMC, self.nomDuCodeDumpe,mcRef.nomDuTypePyxb,1,1) - self.texteDuFact = debutTypeCompo.format(self.entites[nomMC][0].nomDuTypePyxb) - self.texteDuFact += debutChoiceDsBloc - self.texteDuFact += texteComplexe - self.texteDuFact += finChoiceDsBloc - self.texteDuFact += finTypeCompo - self.texteSimple += texteSimple - self.texteComplexeVenantDesFils += texteComplexeVenantDesFils - self.texteComplexeVenantDesFils += self.texteDuFact - self.texteComplexe += self.texteElt - if debug : print ('______________________________') - if debug : print ('texteSimple : \n' ,self.texteSimple ) - if debug : print ('______________________________') - self.entites[nomMC][0].aDejaEteDumpe=True - - - -# ---------------------------------------- -class X_definitionComposee (X_definition): -# ------------------------------------------ - - def creeTexteComplexeVenantDesFils(self,dansFactorisation=False,debug=False): - texteComplexeVenantDesFils="" - blocsDejaDumpes=set() - #for nom in self.ordre_mc: - # mcFils = self.entites[nom] - if debug : print ('creeTexteComplexeVenantDesFils', self.nom) - if self.nom == 'LeProc' : debug = True - for mcFils in self.mcXSD : - #print (mcFils,mcFils.nom) - if mcFils.nom == 'B1_B2' :debug=True - else : debug=False - if not (isinstance(mcFils, Accas.BLOC)) : - mcFils.dumpXsd(dansFactorisation) - self.texteComplexe += mcFils.texteElt - if mcFils.aCreer : self.texteSimple += mcFils.texteSimple - if mcFils.aCreer : texteComplexeVenantDesFils += mcFils.texteComplexe - else : - if hasattr(mcFils,'nomXML') and mcFils.nomXML in blocsDejaDumpes and mcFils.nomXML != None : continue - if hasattr(mcFils,'nomXML') and mcFils.nomXML != None: blocsDejaDumpes.add(mcFils.nomXML) - mcFils.dumpXsd(dansFactorisation) - self.texteComplexe += mcFils.texteElt - if mcFils.aCreer : self.texteSimple += mcFils.texteSimple - if mcFils.aCreer : texteComplexeVenantDesFils += mcFils.texteComplexe - return texteComplexeVenantDesFils - - def dumpXsd(self, dansFactorisation=False, dansFactorisationDeFusion = False, multiple = False, first=True, debug=False): - if PourTraduction : print (self.nom) - # le prepareDump est appele sur les fils - if not (self.dejaPrepareDump) : self.prepareDumpXSD() - - self.getNomDuCodeDumpe() - if first : - if multiple : self.nomDuTypePyxb = self.definitNomDuTypePyxb(forceACreer=True) - else : self.nomDuTypePyxb = self.definitNomDuTypePyxb() - self.texteSimple = "" # on n ajoute pas de type simple - - self.traduitMinMax() - # pour accepter les PROC et ... - # - if debug : print ('dumpXsd', self.nom, self.aCreer) - if self.aCreer or dansFactorisationDeFusion: - if not dansFactorisationDeFusion : self.texteComplexe = debutTypeCompo.format(self.nomDuTypePyxb) - if isinstance(self,X_OPER) or isinstance(self,X_PROC) : - self.texteComplexe += debutTypeCompoEtape.format(self.code) - self.texteComplexe += debutTypeCompoSeq - texteComplexeVenantDesFils= self.creeTexteComplexeVenantDesFils(dansFactorisation) - if not dansFactorisationDeFusion : - self.texteComplexe = texteComplexeVenantDesFils + self.texteComplexe - self.texteComplexeVenantDesFils = '' - else : - self.texteComplexeVenantDesFils = texteComplexeVenantDesFils - # la fin de l oper est traitee dans le dumpXSD de X_OPER - if not isinstance(self,X_OPER ) : self.texteComplexe += finTypeCompoSeq - if isinstance(self,X_PROC) : self.texteComplexe += finTypeCompoEtape - if not isinstance(self,X_OPER ) and not dansFactorisationDeFusion: self.texteComplexe += finTypeCompo - else : - self.texteComplexe = "" - - if self.ang != "" : self.texteElt=eltCompoDsSequenceWithHelp.format(self.nom,self.nomDuCodeDumpe,self.nomDuTypePyxb,self.minOccurs,self.maxOccurs, self.ang) - elif self.fr != "" : self.texteElt=eltCompoDsSequenceWithHelp.format(self.nom,self.nomDuCodeDumpe,self.nomDuTypePyxb,self.minOccurs,self.maxOccurs, self.fr) - else : self.texteElt=eltCompoDsSequence.format(self.nom,self.nomDuCodeDumpe,self.nomDuTypePyxb,self.minOccurs,self.maxOccurs) - #print ('------------------------------------------------',self.nom) - #print (self.texteComplexe) - - def traduitMinMax(self): - # ______________________ - # valable pour PROC et OPER - self.minOccurs = 0 - self.maxOccurs = 1 - - def compare(self,autreMC): - if self.label != autreMC.label : return False - if hasattr(self,'nomXML') and hasattr(autreMC,'nomXML') and self.nomXML==autreMC.nomXML and self.nomXML != None : return True - for attr in ( 'regles', 'fr', 'defaut', 'min' ,'max', 'position' , 'docu' ) : - val1=getattr(self,attr) - val2=getattr(autreMC,attr) - if val1 != val2 : return False - if len(self.entites) != len(autreMC.entites) : return False - for defFille in self.entites.keys(): - if defFille not in autreMC.entites.keys() : return False - if not self.entites[defFille].compare(autreMC.entites[defFille]) : return False - return True - - def prepareDumpXSD(self): - self.dejaPrepareDump=True - self.inUnion=False - self.tousLesFils=[] - self.mcXSD=[] - for nomMC in self.ordre_mc: - mc=self.entites[nomMC] - self.mcXSD.append(mc) - mc.prepareDumpXSD() - self.chercheListesDeBlocsNonDisjoints() - for l in list(self.listeDesBlocsNonDisjoints) : - if not(self.besoinDeFactoriserTrivial(l)) : self.listeDesBlocsNonDisjoints.remove(l) - else : self.factorise(l) - - def chercheListesDeBlocsNonDisjoints(self): - self.listeDesBlocsNonDisjoints=[] - for nomChild in self.ordre_mc : - child=self.entites[nomChild] - if child.label != 'BLOC' : continue - if self.listeDesBlocsNonDisjoints == [] : - self.listeDesBlocsNonDisjoints.append([child]) - continue - vraimentIndependant=True - for liste in list(self.listeDesBlocsNonDisjoints): - independant=True - for bloc in liste : - if bloc.isDisjoint(child) : continue - if bloc.estLeMemeQue(child) : continue - independant=False - vraimentIndependant=False - if not (independant) : - liste.append(child) - if vraimentIndependant: - self.listeDesBlocsNonDisjoints.append([child]) - # on nettoye la liste des blocs tous seuls - for l in list(self.listeDesBlocsNonDisjoints) : - if len(l) ==1 : self.listeDesBlocsNonDisjoints.remove(l) - - def estLeMemeQue(self,autreMC): - if hasattr(self,'nomXML') and hasattr(autreMC,'nomXML') and self.nomXML==autreMC.nomXML and self.nomXML != None: return True - return False - - def aUnPremierCommunDansLesPossibles(self, laListe) : - # fonctionne avec liste de mc ou une liste(mc,index) - import types - mesPremiers=set() - for elt,index in laListe : - if not type(e) == types.ListType : - if elt.nom in mesPremiers : return True - mesPremiers.add(elt.nom) - else : - if elt[0].nom in mesPremiers : return True - mesPremiers.add(elt[0].nom) - return False - - def besoinDeFactoriserTrivial(self,laListe): - # tout faux - # a revoir - return True - besoin=False - lesPremiers=set() - for mcBloc in laListe : - mc=mcBloc.mcXSD[0] - if mc.label == 'BLOC' : return True - if not(mc.statut=='o') : return True - if mc.nom in lesPremiers : return True - lesPremiers.add(mc.nom) - return False - - def factorise(self,liste,debug=False): - self.listeConstruction=liste - nomDebut=liste[0].nom - indexDebut=self.mcXSD.index(liste[0]) - nomFin=liste[-1].nom - indexFin=self.mcXSD.index(liste[-1]) + 1 - nom=nomDebut+'_'+nomFin - if debug : print ('___________ dans factorise', nom) - listeAFactoriser=[] - for i in range(indexDebut, indexFin) : - listeAFactoriser.append(self.mcXSD[i]) - - newListe=self.mcXSD[0:indexDebut] - - monEltFacteur=X_compoFactoriseAmbigu(nom,listeAFactoriser,self) - newListe.append(monEltFacteur) - newListe=newListe+self.mcXSD[indexFin:] - self.mcXSD=newListe - if debug :print ('___________ fin fin factorise', nom) - - def construitTousLesFils(self): - for nomChild in self.ordre_mc : - if nomChild == 'Consigne' or nomChild == 'blocConsigne' : continue - child=self.entites[nomChild] - if child.label != 'BLOC' : - self.tousLesFils.append(child.nom) - else: - if child.tousLesFils == [] : child.construitTousLesFils() - for nomPetitFils in child.tousLesFils : self.tousLesFils.append(nomPetitFils) - #print ('construitArbreEntier pour ', self.nom, self.tousLesFils) - - - def isDisjoint(self, mc1) : - if self.tousLesFils == [] : self.construitTousLesFils() - if not (hasattr(mc1, 'tousLesFils')) : mc1.tousLesFils = [] - if mc1.tousLesFils == [] : mc1.construitTousLesFils() - for fils in mc1.tousLesFils : - if fils in self.tousLesFils : return False - return True - - - - -# --------------------------------- -class X_FACT (X_definitionComposee): -#--------- ------------------------ -#Un FACT avec max=** doit se projeter en XSD sous forme d'une sequence a cardinalite 1 et -# l'element qui porte la repetition du FACT - def traduitMinMax(self): - if self.max == '**' or self.max == float('inf') : self.maxOccurs="unbounded" - else : self.maxOccurs = self.max - self.minOccurs = self.min - if self.statut =='f' : self.minOccurs=0 - if self.statut =='o' and self.min < 2: self.minOccurs=1 - - def construitArbrePossibles(self): - if self.statut == 'f' : - self.arbrePossibles = (self.nom,[]) - self.arbreMCPossibles = (self,None) - else : - self.arbrePossibles = (self.nom,) - self.arbreMCPossibles = (self,) - #print ('XFACT arbre des possibles de ' ,self.nom, self.arbrePossibles) - - - -# --------------------------------- -class X_OPER (X_definitionComposee): -# --------------------------------- - def dumpXsd(self, dansFactorisation=False, multiple = False, first=False): - X_definitionComposee.dumpXsd(self,dansFactorisation) - self.texteComplexe += finTypeCompoSeq - self.texteComplexe += attributeNameName - self.texteComplexe += attributeTypeForASSD - self.texteComplexe += attributeTypeUtilisateurName.format(self.sd_prod.__name__) - self.texteComplexe += finTypeCompoEtape - self.texteComplexe += finTypeCompo - - - cata = CONTEXT.getCurrentCata() - if self.sd_prod.__name__ not in list(cata.dictTypesASSDorUserASSDCrees) : - cata.dictTypesASSDorUserASSDCrees[self.sd_prod.__name__]=[self,] - else : - cata.dictTypesASSDorUserASSDCrees[self.sd_prod.__name__].append(self) - - -# ---------------------------------- -class X_PROC (X_definitionComposee): -#----------------------------------- - pass - -#----------------------------------- -class X_BLOC (X_definitionComposee): -#----------------------------------- - def dumpXsd(self, dansFactorisation=False, multiple = False, first=False, debug = False): - if debug : print ('X_BLOC dumpXsd', self.nom) - self.tousLesFils=[] - if self.nom == 'blocConsigne' : - self.texteComplexe = "" - self.texteSimple = "" - self.nomDuTypePyxb = "NonTraiteConsigne" - self.texteSimpleVenantDesFils = "" - self.aCreer = False - self.texteElt = "" - - return - self.getNomDuCodeDumpe() - # dans ce cas les blocs successifs sont identiques et on ne dumpe que le 1er - - self.nomDuTypePyxb = self.definitNomDuTypePyxb() - self.texteSimple = "" # on n ajoute pas de type simple - - # Pour les blocs le minOccurs vaut 0 et le max 1 - if self.aCreer : - self.texteComplexe = debutTypeSubst.format(self.nomDuTypePyxb) - texteComplexeVenantDesFils=self.creeTexteComplexeVenantDesFils(dansFactorisation) - self.texteComplexe = texteComplexeVenantDesFils + self.texteComplexe - self.texteComplexe += finTypeSubst - - else : - self.texteComplexe = "" - - self.texteElt=substDsSequence.format(self.code,self.nomDuTypePyxb,0,1,'condition : ' +self.condition) - - #print ('------------------------------------------------') - - def compare(self,autreMC): - if self.label != autreMC.label : return False - if self.inUnion == True or autreMC.inUnion == True : return False - if hasattr(self,'nomXML') and hasattr(autreMC,'nomXML') and self.nomXML==autreMC.nomXML and self.nomXML != None : return True - for attr in ( 'condition', 'regles', ): - val1=getattr(self,attr) - val2=getattr(autreMC,attr) - if val1 != val2 : return False - if len(self.entites) != len(autreMC.entites) : return False - for defFille in self.entites.keys(): - if defFille not in autreMC.entites.keys() : return False - if not self.entites[defFille].compare(autreMC.entites[defFille]) : return False - return True - - def construitArbrePossibles(self): - self.arbrePossibles=[[],] - #print ('X_BLOC je construis l arbre des possibles pour ', self.nom) - for child in self.mcXSD : - if not hasattr(child, 'arbrePossibles') : child.construitArbrePossibles() - #print (child.nom, child.label, child.arbrePossibles) - if child.label == 'BLOC' : - self.arbrePossibles = deepcopy(self.remplaceListeParContenuEtVide(self.arbrePossibles, child.arbrePossibles)) - elif child.label == 'BlocAmbigu': - #print ("je passe par la pour", self.nom, child.nom, self.arbrePossibles, child.arbrePossibles) - self.arbrePossibles = deepcopy(self.remplaceListeParContenuEtVide(self.arbrePossibles, child.arbrePossibles)) - #print ('resultat', self.arbrePossibles) - else : - self.arbrePossibles = deepcopy(self.adjoint(self.arbrePossibles, child.arbrePossibles)) - self.arbrePossibles.append([]) # un bloc n est pas obligatoire - #print ('arbre des possibles de ' ,self.nom, self.arbrePossibles) - - -#-------------------------------- -class X_SIMP (X_definition): -#-------------------------------- - def dumpXsd(self, dansFactorisation=False, multiple=False, first=False, debug=False): - #debug = True - #if PourTraduction : print (self.nom) - if debug : print ('X_SIMP dumpXsd pour', self.nom, '___________________________') - self.prepareDumpXSD() - # si inUnion la comparaison est fausse : on cree le nomDuType - if multiple : self.inUnion=True - #print ('exploreObjet SIMP') - self.getNomDuCodeDumpe() - self.aCreer = True - self.texteComplexe = "" - self.texteSimple = "" - self.texteElt = "" - if self.nom =='Consigne' : return - - # --> homonymie on peut utiliser genealogie ? - self.nomDuTypeDeBase = self.traduitType() - if debug : print ('nomDuTypeDeBase', self.nomDuTypeDeBase) - if debug : print ('multiple', multiple, 'first', first) - if not multiple : - self.nomDuTypePyxb = self.definitNomDuTypePyxb() - else : - if first : - # on force la creation - self.nomDuTypePyxb = self.definitNomDuTypePyxb() - self.aCreer = True - else : - self.nomDuTypePyxb='NonDetermine' - - if debug : print ('nomDuTypePyxb', self.nomDuTypePyxb) - if debug : print ('aCreer', self.aCreer) - - - # on se sert des listes ou non pour la gestion des minOccurs /maxOccurs est > 0 - if self.statut =='f' : minOccurs = 0 - else : minOccurs = 1 - if dansFactorisation : minOccurs = 1 - - if self.suisUneMatrice : - self.dumpSpecifiqueMatrice(minOccurs) - return - - if self.suisUnTuple : - self.dumpSpecifiqueTuple(minOccurs) - return - - if self.avecBlancs and self.max > 1 : - self.dumpSpecifiqueTexteAvecBlancs(minOccurs,multiple) - return - - #print ('minOccurs',minOccurs) - # le defaut est dans l elt Name -> tester la coherence d existence avec Accas - # regles Accas - - # pas d elt si on est dans multiple - # sauf si on est le '1er' dans un element ambigu - if not multiple : - #print ('je passe la pas multiple') - texteAide = "" - if self.ang != '' : texteAide = self.ang - else : texteAide = self.fr - if self.intoXML and self.into : - if self.intoXML != self.into : - #print ('je passe la pour ', self.nom) - texteAide :texteAide = texteAide+'\nPossible choices for '+ self.nom + 'at this place : \n'+str(self.into)+'\n' - - if self.defaut : - if self.max > 1 or self.max == '**' or self.max == float('inf') : - txtDefaut="" - for val in self.defaut : txtDefaut+=str(val) + " " - # cela ne fonctionne pas tres bien. a revoir - txtDefaut+=txtDefaut[0:-1] - if not('TXM' in (self.type)) : - # a revoir pour les tuples avec defaut - if texteAide != '' : self.texteElt = eltDsSequenceWithDefautAndHelp.format(self.nom,self.code,self.nomDuTypePyxb,minOccurs,1,txtDefaut,texteAide) - else : self.texteElt = eltDsSequenceWithDefaut.format(self.nom,self.code,self.nomDuTypePyxb,minOccurs,1,txtDefaut) - else : - texteAide += texteAide+'\ndefault Value in MDM : \n'+txtDefaut - self.texteElt = eltDsSequenceWithHelp.format(self.nom,self.code,self.nomDuTypePyxb,minOccurs,1,texteAide) - else : - if str(self.defaut) == 'True' : txtDefaut = 'true' - elif str(self.defaut) == 'False' : txtDefaut = 'false' - else : txtDefaut = str(self.defaut) - if texteAide != '' : self.texteElt = eltDsSequenceWithDefautAndHelp.format(self.nom,self.code,self.nomDuTypePyxb,minOccurs,1,txtDefaut,texteAide) - else : self.texteElt = eltDsSequenceWithDefaut.format(self.nom,self.code,self.nomDuTypePyxb,minOccurs,1,txtDefaut) - else : - if texteAide != '' : self.texteElt = eltDsSequenceWithHelp.format(self.nom,self.code,self.nomDuTypePyxb,minOccurs,1,texteAide) - else : self.texteElt = eltDsSequence.format(self.nom,self.code,self.nomDuTypePyxb,minOccurs,1) - elif first: - # l'aide est geree a la fusion - self.texteElt = eltDsSequence.format(self.nom,self.code,self.nomDuTypePyxb,1,1) - - # self.aCreer est mis a jour ds definitNomDuTypePyxb - # ou si elt est le 1er d une liste identique - if debug : print ('je suis aCreer', self.aCreer) - if not self.aCreer : return - - typeATraduire=self.type[0] - - self.texteSimplePart1="" - if not(isinstance(typeATraduire,str)) and not(isinstance(typeATraduire,Accas.Tuple)) and issubclass(typeATraduire, Accas.UserASSD) : - cata = CONTEXT.getCurrentCata() - if len(self.type) == 2 and self.type[1]=='createObject' : suffixe = 'C' - else : suffixe = 'U' - #print (cata.listeUserASSDDumpes) - #print (typeATraduire.__name__) - #print (typeATraduire.__name__ in cata.listeUserASSDDumpes) - if typeATraduire.__name__ not in cata.listeUserASSDDumpes : - cata.listeUserASSDDumpes.add(typeATraduire.__name__) - if issubclass(typeATraduire, Accas.UserASSDMultiple) : - self.texteSimplePart1 = defUserASSDMultiple.format(typeATraduire.__name__) - if cata.definitUserASSDMultiple == False : - cata.definitUserASSDMultiple = True - cata.texteSimple = cata.texteSimple + defBaseXSDUserASSDMultiple - else : - self.texteSimplePart1 = defUserASSD.format(typeATraduire.__name__) - if cata.definitUserASSD == False : - cata.definitUserASSD = True - cata.texteSimple = cata.texteSimple + defBaseXSDUserASSD - if typeATraduire.__name__+'_'+suffixe not in cata.listeUserASSDDumpes : - cata.texteSimple = cata.texteSimple + defUserASSDOrUserASSDMultiple.format(typeATraduire.__name__, suffixe,typeATraduire.__name__) - cata.listeUserASSDDumpes.add(typeATraduire.__name__+'_'+suffixe) - - - if not multiple : self.texteSimple += debutSimpleType.format(self.nomDuTypePyxb) - else : self.texteSimple += debutSimpleTypeSsNom - # On est dans une liste - if self.max > 1 or self.max == '**' or self.max == float('inf') or hasattr(self.type[0], 'ntuple') : - self.texteSimple += debutTypeSimpleListe - self.texteSimple += "\t\t\t\t"+debutRestrictionBase.format(self.nomDuTypeDeBase) - if self.val_min != float('-inf') : self.texteSimple += "\t\t\t\t"+minInclusiveBorne.format(self.val_min) - if self.val_max != float('inf') and self.val_max != '**' : self.texteSimple +="\t\t\t\t"+ maxInclusiveBorne.format(self.val_max) - if self.into != None: - # PN --> traduction des into - into=self.into - if self.intoXML != None : into = self.intoXML - for val in into : self.texteSimple += "\t\t\t\t"+enumeration.format(val) - if PourTraduction : - for val in into : print (str(val)) - self.texteSimple += fermeBalisesMileu - if self.max !=1 and self.max != '**' and self.max != float('inf') : self.texteSimple += maxLengthTypeSimple.format(self.max) - if self.min !=1 and self.min != float('-inf') : self.texteSimple += minLengthTypeSimple.format(self.min) - self.texteSimple += fermeRestrictionBase - else : - # ou pas - self.texteSimple += debutRestrictionBase.format(self.nomDuTypeDeBase) - if self.val_min != float('-inf') : self.texteSimple += minInclusiveBorne.format(self.val_min) - if self.val_max != float('inf') and self.val_max != '**' : self.texteSimple += maxInclusiveBorne.format(self.val_max) - if self.into != None: - into=self.into - if self.intoXML != None : into = self.intoXML - for val in into : self.texteSimple += enumeration.format(val) - if PourTraduction : - for val in into : print (str(val)) - self.texteSimple += fermeRestrictionBase - self.texteSimple += fermeSimpleType - self.texteSimplePart2 = self.texteSimple - self.texteSimple = self.texteSimplePart1 + self.texteSimplePart2 - - - def dumpSpecifiqueTexteAvecBlancs(self,minOccurs,multiple): - # attention multiple non traite - # pour l instant on n a pas max =1 et on ne traite pas les into - - texteAide = "" - if self.ang != '' : texteAide = self.ang - elif self.fr != '' : texteAide = self.fr - - self.texteElt = eltDsSequenceWithHelp.format(self.nom,self.code,self.nomDuTypePyxb,minOccurs,1,texteAide) - txtDefaut="" - # Pas de Defaut pour les string en XSD - # max sert pour la taille de la liste - if self.defaut : texteAide += ' Valeur par defaut dans le comm : '+str(self.defaut) - if texteAide != '' : self.texteElt = eltDsSequenceWithHelp.format(self.nom,self.code,self.nomDuTypePyxb,minOccurs,1,texteAide) - else : self.texteElt = eltDsSequence.format(self.nom,self.code,self.nomDuTypePyxb,minOccurs,1) - - - if self.max == '**' or self.max == float('inf') : max='unbounded' - else : max = self.max - - if self.max > 1 : # juste au cas ou on traite 1 pareil - self.texteSimple = '' - cata = CONTEXT.getCurrentCata() - if self.nomDuTypePyxb in cata.listeTypeTXMAvecBlancs: return - cata.listeTypeTXMAvecBlancs.add(self.nomDuTypePyxb) - self.texteSimple = complexChaineAvecBlancs.format(self.nomDuTypePyxb,max,self.nomDuTypePyxb) - if self.intoXML != None : into = self.intoXML - else : into = self.into - if into == None : - self.texteSimple += typeEltChaineAvecBlancSansInto.format(self.nomDuTypePyxb) - else : - self.texteSimple += debutChaineAvecBlancsInto.format(self.nomDuTypePyxb) - for val in into : self.texteSimple += milieuChaineAvecBlancsInto.format(val) - self.texteSimple += finChaineAvecBlancsInto - - - def dumpSpecifiqueTuple(self,minOccurs): - self.nomDuTypeDeBase = self.traduitType() - tousPareil=True - # il faut gerer l aide et les defaut - if self.defaut : print ('il faut tester le defaut') - if self.max == '**' or self.max == float('inf') : max='unbounded' - else : max = self.max - self.texteElt = tupleNonHomogeneElt.format(self.nom,self.code,self.nomDuTypePyxb,minOccurs,max) - leType=self.nomDuTypeDeBase[0] - for leTypeComp in self.nomDuTypeDeBase[1:] : - if leTypeComp != leType : - tousPareil = False - break; - #if tousPareil : - #PN PN a statuer - # self.texteSimple += debutSimpleType.format(self.nomDuTypePyxb) - # self.texteSimple += debutTypeSimpleListe - # self.texteSimple += "\t\t\t\t"+debutRestrictionBase.format(leType) - # if self.val_min != float('-inf') : self.texteSimple += "\t\t\t\t"+minInclusiveBorne.format(self.val_min) - # if self.val_max != float('inf') and self.val_max != '**' : self.texteSimple +="\t\t\t\t"+ maxInclusiveBorne.format(self.val_max) - # if self.into != None: - # into=self.into - # if self.intoXML != None : into = self.intoXML - # for val in into : self.texteSimple += "\t\t\t\t"+enumeration.format(val) - # if PourTraduction : - # for val in into : print (str(val)) - # self.texteSimple += fermeBalisesMileu - # if self.max !=1 and self.max != '**' and self.max != float('inf') : self.texteSimple += maxLengthTypeSimple.format(self.max) - # if self.min !=1 and self.min != float('-inf') : self.texteSimple += minLengthTypeSimple.format(self.min) - # self.texteSimple += fermeSimpleType - # return - - self.texteSimple = '' - complexeTypeTuple = tupleDebutComplexeType.format(self.nomDuTypePyxb) - num = 1 - for leType in self.nomDuTypeDeBase : - self.texteSimple += tupleNonHomogeneSimpleType.format(self.nomDuTypePyxb,str(num),leType) - complexeTypeTuple += tupleMilieuComplexeType.format(str(num),self.nomDuTypePyxb,str(num)) - num = num + 1 - complexeTypeTuple += tupleFinComplexeType - self.texteSimple += complexeTypeTuple - - - def dumpSpecifiqueMatrice(self,minOccurs): - # if faut traiter le defaut - typeDeMatrice =self.type[0] - - self.texteSimple += debutSimpleType.format(self.nomDuTypePyxb+'_element') - self.texteSimple += debutRestrictionBase.format(self.nomDuTypeDeBase) - if typeDeMatrice.typEltInto != None: - for val in typeDeMatrice.typEltInto : self.texteSimple += enumeration.format(val) - self.texteSimple += fermeRestrictionBase - self.texteSimple += fermeSimpleType - nom=self.nomDuTypePyxb - nbCols=typeDeMatrice.nbCols - nbLigs=typeDeMatrice.nbCols - self.texteSimple += matriceSimpleType.format(nom,nom,nbCols,nom,self.code,nom,nbLigs,nbLigs,nom,self.code,nom,self.min,self.max) - self.texteElt = eltMatrice.format(self.nom,self.code,self.nomDuTypePyxb,minOccurs,1) - - - def prepareDumpXSD(self): - self.inUnion=False - if self.statut == 'f' : self.arbrePossibles = (self.nom,[]) - else : self.arbrePossibles = (self.nom,) - self.mcXSD=[] - - - - def traduitType(self,debug=False): - # il faut traduire le min et le max - # il faut ajouter les regles - # il faut gerer les types tuple et fichier - # on ne paut pas tester le type qui depend du cataloge - if hasattr(self.type[0], 'typElt') : - #print ('je suis une Matrice de ' ,dictNomsDesTypes[self.type[0].typElt]) - self.suisUneMatrice = True - # on presume que le type de l elt est un ASSD - if self.type[0].typElt not in dictNomsDesTypes.keys(): return 'xs:string' - return dictNomsDesTypes[self.type[0].typElt] - else : - self.suisUneMatrice = False - if hasattr(self.type[0], 'ntuple') : - self.suisUnTuple = True - # Pour l instant pas de into dans les tuples non homogenes et pas de reference - # sinon, il faudra faire un for sur la suite avec les createObjet - leType=self.validators.typeDesTuples[0] - enRetour=[] - for i in range(self.type[0].ntuple): - enRetour.append(dictNomsDesTypes[self.validators.typeDesTuples[i]]) - return enRetour - #typeATraduire=leType - else : - self.suisUnTuple = False - typeATraduire=self.type[0] - if not (typeATraduire in list(dictNomsDesTypes.keys())) : - #if (isinstance(typeATraduire, Accas.ASSD) or issubclass(typeATraduire, Accas.ASSD)) : - if (not(isinstance(typeATraduire,str)) and issubclass(typeATraduire, Accas.ASSD)) : - # cas d une creation - cata = CONTEXT.getCurrentCata() - # PNPNPN a Revoir pour la creation des keyrefs - if len(self.type) == 2 and self.type[1]=='createObject' : - if typeATraduire.__name__ not in list(cata.dictTypesASSDorUserASSDCrees) : - cata.dictTypesASSDorUserASSDCrees[typeATraduire.__name__]=[self,] - else : - cata.dictTypesASSDorUserASSDCrees[typeATraduire.__name__].append(self) - if issubclass(typeATraduire, Accas.UserASSD) : return typeATraduire.__name__+'_C' - else : return 'xs:string' - - # cas d une consommation - if typeATraduire not in list(cata.dictTypesASSDorUserASSDUtilises) : - cata.dictTypesASSDorUserASSDUtilises[typeATraduire]=[self,] - else : - cata.dictTypesASSDorUserASSDUtilises[typeATraduire].append(self,) - if issubclass(typeATraduire, Accas.UserASSD) : return typeATraduire.__name__+'_U' - else : return 'xs:string' - else : return ('YYYYY') - return dictNomsDesTypes[typeATraduire] - - def traduitValMinValMax(self): - self.maxInclusive=self.val_max - self.minInclusive=self.val_min - if self.val_min == float('-inf') and val_max== float('inf') : return - #print ('il faut affiner le type du SIMP ', self.nom) - if self.val_max == '**' or self.val_max == float('inf') : self.maxInclusive=None - else : self.maxInclusive = self.val_max - if self.val_min == '**' or self.val_max == float('-inf') : self.maxInclusive=None - else : self.minInclusive = self.val_min - - def traduitMinMax(self): - if self.min == 1 and self.max == 1 : return - #print ('il faut creer une liste ' , self.nom) - - def compare(self,autreMC): - if self.label != autreMC.label : return False - if self.inUnion == True or autreMC.inUnion == True : return False - if hasattr(self,'nomXML') and hasattr(autreMC,'nomXML') and self.nomXML==autreMC.nomXML and self.nomXML != None : return True - listeAComparer = [ 'type', 'defaut', 'min' ,'max' ,'val_min' , 'val_max' ] - if self.intoXML != None : listeAComparer.append('intoXML') - else : listeAComparer.append('into') - if (hasattr (self, 'nomXML')) and self.nomXML != None : nomUtil=self.nomXML - for attr in listeAComparer : - val1=getattr(self,attr) - val2=getattr(autreMC,attr) - if val1 != val2 : return False - return True - - def construitArbrePossibles(self): - if self.statut == 'f' : - self.arbrePossibles = (self.nom,[]) - else : - self.arbrePossibles = (self.nom,) - #print ('SIMP arbre des possibles de ' ,self.nom, self.arbrePossibles) - - -#----------------- -class X_JDC_CATA : -#----------------- - - def dumpXsd(self, avecEltAbstrait, debug = True): - cata = CONTEXT.getCurrentCata() - if debug : print ('avecEltAbstrait -------------------', avecEltAbstrait) - - if debug : print ('self.importedBy -------------------', self.importedBy) - if debug : print ('self.code -------------------', self.code) - - self.texteSimple = "" - self.texteComplexe = "" - self.texteCata = "" - self.texteDeclaration = "" - self.texteInclusion = "" - self.texteElt = "" - self.texteTypeAbstrait = "" - - if self.implement == "" : - self.nomDuCodeDumpe = self.code - self.implement = self.code - self.nomDuXsdPere = self.code - else : - self.implement,self.nomDuXsdPere=self.implement.split(':') - self.nomDuCodeDumpe = self.implement - - if debug : print ('self.implement -------------------', self.implement) - if debug : print ('self.nomDuCodeDumpe -------------------', self.nomDuCodeDumpe) - if debug : print ('self.nomDuXsdPere -------------------', self.nomDuXsdPere) - - self.nomDuTypePyxb = 'T_'+self.nomDuCodeDumpe - self.dumpLesCommandes() - - if self.implement == self.code : - self.texteCata += eltAbstraitCataPPal.format(self.code) - if 0 : pass - else : self.texteCata += eltCataPPal.format(self.code,self.code,self.code) - else : - self.texteCata += eltAbstraitCataFils.format(self.implement,self.nomDuXsdPere,self.nomDuXsdPere) - if 0 : pass - else : self.texteCata += eltCataFils.format(self.implement,self.nomDuXsdPere,self.nomDuXsdPere,self.nomDuXsdPere) - self.texteInclusion += includeCata.format(self.nomDuXsdPere) - - - self.texteCata += eltCata.format(self.implement,self.implement,self.implement,self.implement,self.nomDuXsdPere) - #if self.implement == self.code : - # self.texteCata += debutTypeCata.format(self.nomDuCodeDumpe) - #else : - # self.texteCata += debutTypeCataExtension.format(self.nomDuCodeDumpe) - # self.texteCata += debutExtension.format(self.code,self.nomDuCodeDumpe) - # self.texteInclusion += includeCata.format(self.nomDuXsdPere) - - - - #for codeHeritant in self.importedBy: - # self.texteCata += eltCodeSpecDsCata.format(codeHeritant) - # self.texteTypeAbstrait += eltAbstrait.format(codeHeritant,codeHeritant,self.code,codeHeritant) - - #if self.implement != "" : self.texteCata = self.texteCata + finExtension + finTypeCompo - #else : self.texteCata += finTypeCata - - #if self.implement != "" : - # self.texteElt=implementeAbstrait.format(self.nomDuCodeDumpe,self.code,self.nomDuTypePyxb,self.code,self.nomDuCodeDumpe) - #else : - # self.texteElt = eltCata.format(self.nomDuCodeDumpe,self.code, self.nomDuTypePyxb) - - if self.implement == self.code : - self.texteXSD = texteDebut.format(self.code,self.code,self.code,self.code,self.code,self.code) - elif self.nomDuXsdPere == self.code : - self.texteXSD = texteDebutNiveau2.format(self.code,self.implement,self.code,self.code,self.code, self.code,self.code,self.code,self.code,self.code) - else : - self.texteXSD = texteDebutNiveau3.format(self.code,self.implement,self.code,self.nomDuXsdPere,self.code,self.code,self.code, self.code,self.code,self.code,self.code,self.code) - - if self.texteInclusion != "" : self.texteXSD += self.texteInclusion - self.texteXSD += self.texteSimple - self.texteXSD += self.texteComplexe - - #if self.texteTypeAbstrait != "" : self.texteXSD += self.texteTypeAbstrait - self.texteXSD += self.texteCata - #self.texteXSD += self.texteElt - - toutesLesKeys=set() - texteKeyRef = "" - # Pour le nom des key_ref en creation : le type ( une seule key-ref par type. facile a retrouver) - for clef in self.dictTypesASSDorUserASSDCrees: - existeASSD=0 - texteDesFields="" - for unOper in self.dictTypesASSDorUserASSDCrees[clef]: - if not(isinstance(unOper, Accas.OPER)) : continue - existeASSD=1 - texteDesFields+=texteFieldUnitaire.format(self.code, unOper.nom) - if existeASSD : texteDesFields=texteDesFields[0:-2] - texteDesUserASSD='' - existeunUserASSD=0 - for unSimp in self.dictTypesASSDorUserASSDCrees[clef]: - if not (isinstance(unSimp, Accas.SIMP)) : continue - texteDesUserASSD += unSimp.getXPathSansSelf() + " | " - #print (unSimp.getXPathSansSelf()) - #texteFieldUnitaire='/'+self.code+":"+unSimp.nom - existeunUserASSD=1 - if existeunUserASSD: - if existeASSD : texteDesFields = texteDesFields + texteDesUserASSD[0:-2] +"/>\n\t\t" - else: texteDesFields = texteDesUserASSD[0:-2] - #print (texteDesUserASSD) - #print (texteDesFields) - if texteDesFields != "" : - texteKeyRef += producingASSDkeyRefDeclaration.format( clef ,texteDesFields) - - - # Pour le nom des key-ref en utilisation : la genealogie complete ( une key-ref par utilisation et on retrouve facilement la ) - for clef in self.dictTypesASSDorUserASSDUtilises: - for unSimp in self.dictTypesASSDorUserASSDUtilises[clef]: - # il faut la genealogie - texteKeyRef += UsingASSDkeyRefDeclaration.format(unSimp.getNomCompletAvecBloc(), unSimp.type[0].__name__,self.code, unSimp.type[0].__name__,unSimp.getXPathComplet() ) - - #PNPN on debranche les keyref le temps de bien reflechir a leur forme - #if texteKeyRef != '' : - # self.texteXSD = self.texteXSD[0:-3]+'>\n' - # self.texteXSD += texteKeyRef - # self.texteXSD += fermeEltCata - - - - #if not PourTraduction : print (self.texteXSD) - - import pprint - #pprint.pprint (cata.dictTypesXSDJumeaux) - #for k in cata.dictTypesXSDJumeaux: - # print (k.nom, k.nomComplet()) - # print (cata.dictTypesXSDJumeaux[k][0].nom, cata.dictTypesXSDJumeaux[k][0].nomComplet()) - - #pprint.pprint (cata.dictTypesXSD) - #for k in cata.dictTypesXSD: - # print (k) - # print (cata.dictTypesXSD) - - dico = {} - for k in list(cata.dictTypesXSD.keys()): - dico[k]={} - different=False - for definition in cata.dictTypesXSD[k] : - if definition.label == 'BLOC' or definition.label == 'BlocAmbigu':continue - if definition.nomDuTypePyxb != 'T_'+definition.nom : different=True - listeATraiter=[definition.geneaCompleteSousFormeDeListe(),] - while listeATraiter != [] : - listeGenea=listeATraiter[0] - listeATraiter=listeATraiter[1:] - txtNomComplet='' - indexMC=0 - for MC in listeGenea: - txtNomComplet=txtNomComplet+'_'+MC.nom - if MC in list(cata.dictTypesXSDJumeaux.keys()) : - for MCJumeau in cata.dictTypesXSDJumeaux[MC]: - # attention nvlleGenalogie n a pas de sens en Accas - nvlleGenalogie=listeGenea[:indexMC]+MCJumeau.geneaCompleteSousFormeDeListe() - listeATraiter.append(nvlleGenalogie) - indexMC=indexMC+1 - dico[k][txtNomComplet]=definition.nomDuTypePyxb - if dico[k]== {} or (not different) : del dico[k] - import pprint - #pprint.pprint(dico) - # PN reflechir a ce *** de nom - #if dico != {} : self.texteXSD += texteAnnotation.format(self.nomDuCodeDumpe,str(dico)) - if dico != {} : self.texteXSD += texteAnnotation.format(str(dico)) - - #import pprint - #if (not PourTraduction) and (dico != {}) : pprint.pprint(dico) - print ('__________________________ decommenter pour le texteXSD________________________') - #print (dico) - #print (self.texteXSD) - self.texteXSD += texteFin - return self.texteXSD - - - def dumpLesCommandes(self): - cata = CONTEXT.getCurrentCata() - fichierCataSourceExt=os.path.basename(cata.cata.__file__) - fichierCataSource, extension=os.path.splitext(fichierCataSourceExt) - importCataSource=__import__(fichierCataSource,{},{}) - - texte="" - for m in sys.modules: - monModule=sys.modules[m] - try : - if m in ('os', 'sys', 'inspect', 'six', 'pickle', 'codecs') : continue - if m in ('cPickle', 'pprint', 'dis', '_sre', 'encodings.aliases'): continue - if m in ('numbers', 'optparse', 'binascii', 'posixpath') : continue - if m in ('_locale', '_sysconfigdata_nd', 'gc', 'functools') : continue - if m in ('posixpath', 'types', 'posix', 'prefs') : continue - if m in ('warnings', 'types', 'posix', 'prefs') : continue - if monModule.__name__[0:15] == '_sysconfigdata_' : continue - if monModule.__name__ == '__future__' : continue - if monModule.__name__[0:3] == 'Ihm' : continue - if monModule.__name__[0:5] == 'numpy' : continue - if monModule.__name__[0:5] == 'Noyau' : continue - if monModule.__name__[0:5] == 'Accas' : continue - if monModule.__name__[0:7] == 'convert' : continue - if monModule.__name__[0:7] == 'Efi2Xsd' : continue - if monModule.__name__[0:7] == 'Editeur' : continue - if monModule.__name__[0:9] == 'generator' : continue - if monModule.__name__[0:10] == 'Validation' : continue - if monModule.__name__[0:10] == 'Extensions' : continue - if monModule.__name__[0:12] == 'InterfaceQT4' : continue - if monModule.__name__ == fichierCataSource : continue - texte= texte + "try : import "+ monModule.__name__ + " \n" - texte= texte + "except : pass \n" - texte= texte + "try : from "+ monModule.__name__ + ' import * \n' - texte= texte + "except : pass \n" - except : - pass - - newModule=imp.new_module('__main__') - exec (texte, newModule.__dict__) - allClassToDump=[] - for i in dir(importCataSource): - if i not in dir(newModule): - allClassToDump.append(importCataSource.__dict__[i]) - - - self.texteSimple = '' - self.texteComplexe = '' - for c in allClassToDump : - if not(isinstance(c, Accas.OPER)) and not(isinstance(c, Accas.PROC)) : continue - c.nomDuCodeDumpe=self.nomDuCodeDumpe - c.code=self.implement - c.dumpXsd() - - self.texteSimple += c.texteSimple - self.texteComplexe += c.texteComplexe - if c.ang != '' : c.texteElt = eltEtapeWithHelp.format(c.nom,self.implement,c.nomDuTypePyxb,self.implement,c.ang) - elif c.fr != '' : c.texteElt = eltEtapeWithHelp.format(c.nom,self.implement,c.nomDuTypePyxb,self.implement,c.fr) - else : c.texteElt = eltEtape.format(c.nom,self.implement,c.nomDuTypePyxb,self.implement) - self.texteCata += c.texteElt diff --git a/Efi2Xsd/CMakeLists.txt b/Efi2Xsd/CMakeLists.txt deleted file mode 100644 index e3ce0580..00000000 --- a/Efi2Xsd/CMakeLists.txt +++ /dev/null @@ -1,32 +0,0 @@ -# -*- coding: utf-8 -*- -# CONFIGURATION MANAGEMENT OF EDF VERSION -# ====================================================================== -# COPYRIGHT (C) 1991 - 2002 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# -# -# ====================================================================== - -# Installation de tous les fichiers Python du repertoire et des sous-repertoires (sauf CVS) -install ( DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR} - DESTINATION ${CMAKE_INSTALL_PREFIX} - FILES_MATCHING PATTERN *.py - PATTERN CVS EXCLUDE - ) - - -### Local Variables: -### mode: cmake -### End: diff --git a/Efi2Xsd/MCAccasXML.py b/Efi2Xsd/MCAccasXML.py deleted file mode 100755 index c6937f8b..00000000 --- a/Efi2Xsd/MCAccasXML.py +++ /dev/null @@ -1,681 +0,0 @@ -#!/usr/bin/env python -# -*- coding: utf-8 -*- -# Copyright (C) 2007-2021 EDF R&D -# -# 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 sys,os -import inspect -import traceback -def trace(): - traceback.print_stack() -#import raw.efficas as efficas -import types - -sys.path.insert(0,os.path.abspath(os.path.join(os.getcwd(),'..'))) - -try : - import pyxb - import pyxb.binding - import pyxb.binding.basis - #import pyxb.utils.utility - #import pyxb.utils.domutils -except : pass - -from Accas import A_ASSD - -class X_OBJECT: -# ------------- - - def delObjPyxb(self, debug=False): - if not self.cata or not self.cata.modeleMetier : return - if self.nom == 'Consigne' : return None - trouve = False - - if debug : print ('--------------- in delObjPyxb pour ' , self.nom) - if debug : print (self.perePyxb.objPyxb.orderedContent()) - if debug : print (list(map(lambda o:o.value, self.perePyxb.objPyxb.orderedContent()))) - - elt=pyxb.binding.basis.ElementContent(self.objPyxb, instance=self.perePyxb.objPyxb, tag=pyxb.namespace.ExpandedName(self.cata.modeleMetier.Namespace, self.nom)) - if debug : print ('element moi = ', elt, 'id de moi = ', id(self.objPyxb), self.objPyxb) - if (elt.elementDeclaration.isPlural()): - if debug : print ('je suis Plural') - # monIndexInOrderedContent=0 - # for c in self.perePyxb.objPyxb.orderedContent(): - # if isinstance(c._Content__value,list) and isinstance(c._Content__value[0], type(self.objPyxb)): monIndexInOrderedContent += 1 - # listeObjetsAccas=self.parent.getChild(self.nom,restreint='oui') - # if len(listeObjetsAccas) == 1 : monIndex=0 - # else : monIndex=listeObjetsAccas.index(self) - # listeObjetsPyxb=getattr(self.perePyxb.objPyxb,elt.elementDeclaration._ElementDeclaration__key) - # listeObjetsPyxb.pop(monIndex) - # self.perePyxb.objPyxb.orderedContent().pop(monIndexInOrderedContent) - for c in self.perePyxb.objPyxb.orderedContent(): - trouve=False - if isinstance(c._Content__value,list) and isinstance(c._Content__value[0],type(self.objPyxb)): - monIndex=c.value.index(self.objPyxb) - trouve = True - if trouve : break - if not trouve : print ("************ pas trouve au delete"); return - listeObjetsPyxb=getattr(self.perePyxb.objPyxb,elt.elementDeclaration._ElementDeclaration__key) - listeObjetsPyxb.pop(monIndex) - # si dernier ? - else : - newOrderedContent = [] - for i in self.perePyxb.objPyxb.orderedContent(): - if id(self.objPyxb) == id(i._Content__value) : trouve = True ;continue - newOrderedContent.append(i) - if not trouve : print ('elt a supprimer ', self.nom, 'non trouve') - for i in range(len(newOrderedContent)): - self.perePyxb.objPyxb.orderedContent()[i]=newOrderedContent[i] - self.perePyxb.objPyxb.orderedContent().pop(len(newOrderedContent)) - - setattr(self.perePyxb.objPyxb,elt.elementDeclaration._ElementDeclaration__key,None) - if debug : print (list(map(lambda o:o.value, self.perePyxb.objPyxb.orderedContent()))) - - - - def addObjPyxb(self,indiceDsLeContenu,debug=False): - if not self.cata or not self.cata.modeleMetier : return - if debug :print ('_____________ addObjPyxb ds X_OBJECT', self.nom, indiceDsLeContenu) - # adherence Accas sur le parent - parent=self.parent - while (parent.isBLOC()): - if parent != self.parent : indiceDsLeContenu += parent.rangDsPyxb() - parent=parent.parent - self.perePyxb=parent - - if debug :print ('indiceDsLeContenu',indiceDsLeContenu) - if debug :print (pyxb.namespace.ExpandedName(self.cata.modeleMetier.Namespace, self.nom)) - - #if self.objPyxb ! = None : self.objPyxb.objAccas=self - elt=pyxb.binding.basis.ElementContent(self.objPyxb, instance=self.perePyxb.objPyxb, tag=pyxb.namespace.ExpandedName(self.cata.modeleMetier.Namespace, self.nom)) - self.perePyxb.objPyxb.orderedContent().insert(indiceDsLeContenu,elt) - if (elt.elementDeclaration.isPlural()): - # je suis donc un MCList - listeObjetsAccas=self.parent.getChild(self.nom,restreint='oui') - if len(listeObjetsAccas) == 1 : monIndex=1 - else : monIndex=listeObjetsAccas.index(self) - listeObjetsPyxb=getattr(self.perePyxb.objPyxb,elt.elementDeclaration._ElementDeclaration__key) - listeObjetsPyxb.insert(monIndex,self.objPyxb) - else : - setattr(self.perePyxb.objPyxb,elt.elementDeclaration._ElementDeclaration__key,self.objPyxb) - if debug : print (list(map(lambda o:o.value, self.perePyxb.objPyxb.orderedContent()))) - if debug : print ('fin _____________ addObjPyxb ds X_OBJECT', self.nom, indiceDsLeContenu) - - - def rangDsPyxb(self): - monRangEnAccas=self.parent.mcListe.index(self) - rangEnPyxb=0 - for frere in self.parent.mcListe[0: monRangEnAccas] : - rangEnPyxb += frere.longueurDsArbre() - return rangEnPyxb - - -class X_MCSIMP(X_OBJECT): -# ----------------------- - - def buildObjPyxb(self, debug=True) : - if not self.cata or not self.cata.modeleMetier : return - if self.nom == 'Consigne' : return None - if debug : print (self.definition.nomComplet()) - if debug : print ('_______________ X_MCSIMP buildObjPyxb', self.nom, self,self.valeur) - if debug and self.objPyxbDeConstruction == None : print (self.nom, ' pas de pyxb') - elif debug : print ('objPyxbDeConstruction', self.objPyxbDeConstruction) - - if self.objPyxbDeConstruction != None : - self.objPyxb = self.objPyxbDeConstruction - self.maClasseModeleMetier =type(self.objPyxb) - self.objPyxbDeConstruction = None - if issubclass(self.maClasseModeleMetier, self.cata.modeleMetier.pyxb.binding.basis.STD_union): - self.needFactory=True - self.maClasseModeleMetierFactory=getattr(self.maClasseModeleMetier,'Factory') - else : self.needFactory=False - else : - self.monNomClasseModeleMetier ='T_'+self.nom - if hasattr(self.definition,'nomXML') and self.definition.nomXML != None : self.monNomClasseModeleMetier='T_'+self.definition.nomXML - if self.monNomClasseModeleMetier in list(self.cata.DicoNomTypeDifferentNomElt.keys()) : - nomComplet=self.definition.nomComplet() - if nomComplet in list(self.cata.DicoNomTypeDifferentNomElt[self.monNomClasseModeleMetier].keys()): - self.monNomClasseModeleMetier=self.cata.DicoNomTypeDifferentNomElt[self.monNomClasseModeleMetier][nomComplet] - if debug : print ('Pour', self.nom, ' le type est ', self.monNomClasseModeleMetier) - self.maClasseModeleMetier=getattr(self.cata.modeleMetier,self.monNomClasseModeleMetier) - - if self.waitMatrice() : - #PNPN : Attention rien ne relie les objets listeObjPyxb a un objAccas - # 27/04 je ne sais pas si cela posera pb - self.listeLines = [] - self.maClasseModeleMetier=getattr(self.cata.modeleMetier,self.monNomClasseModeleMetier) - self.maClasseModeleMetier_line=getattr(self.cata.modeleMetier,self.monNomClasseModeleMetier+'_line') - if debug : print ('Matrice de type ', self.maClasseModeleMetier) - for v in self.valeur: - l=self.maClasseModeleMetier_line(v) - self.listeLines.append(l) - self.objPyxb=self.maClasseModeleMetier(*self.listeLines) - #if self.objPyxb !=None : self.objPyxb.objAccas=self - if debug : print ('Matrice ', self.nom, self.objPyxb) - return - if self.waitTuple() : - self.objPyxb = [] - self.maClasseModeleMetier=getattr(self.cata.modeleMetier,self.monNomClasseModeleMetier) - # if faut traiter l autre cas - # et optimiser - if self.definition.max !=1 : - for v in self.valeur : - if debug : print ('je traite ', v) - listeConstruction=[] - for i in range(self.combienEltDsTuple()): - num=i+1 - maClasseElt=getattr(self.cata.modeleMetier,self.monNomClasseModeleMetier+'_n'+str(num)) - listeConstruction.append(maClasseElt(v[i])) - self.objPyxb.append(self.maClasseModeleMetier(*listeConstruction)) - if debug : print (self.objPyxb) - return - if self.waitChaineAvecBlancs() and self.definition.max > 1: - self.maClasseModeleMetier=getattr(self.cata.modeleMetier,self.monNomClasseModeleMetier) - print (self.valeur) - self.objPyxb = self.maClasseModeleMetier(*self.valeur) - if debug : print ('X_MCSIMP', self.nom, self.objPyxb, ) - if debug : print ('__________ fin X_MCSIMP', self.objPyxb, self.nom, self, self.maClasseModeleMetier,self.valeur) - return - - - if issubclass(self.maClasseModeleMetier, self.cata.modeleMetier.pyxb.binding.basis.STD_union): - if debug : print ('needFactory') - self.needFactory=True - self.maClasseModeleMetierFactory=getattr(self.maClasseModeleMetier,'Factory') - else : self.needFactory=False - - if self.valeur != None : - if self.needFactory : - if self.definition.max > 1 : - # PNPN A corriger - # self.objPyxb=self.maClasseModeleMetier(self.valeur) - self.objPyxb=self.maClasseModeleMetierFactory(self.valeur) - else : self.objPyxb=self.maClasseModeleMetierFactory(self.valeur) - else : self.objPyxb=self.maClasseModeleMetier(self.valeur) - else : - if self.needFactory : self.objPyxb=None - else : self.objPyxb=self.maClasseModeleMetier(_validate_constraints=False) - - - #if self.objPyxb !=None : self.objPyxb.objAccas=self - if debug : print ('X_MCSIMP', self.nom, self.objPyxb, ) - if debug : print ('__________ fin X_MCSIMP', self.objPyxb, self.nom, self, self.maClasseModeleMetier,self.valeur) - - - def setValeurObjPyxb(self,newVal, debug=False): - if not self.cata or not self.cata.modeleMetier : return - if debug : print (' ___________________________ dans setValeurObjPyxb MCSIMP ', self.nom, newVal) - if debug : print (' self.perePyxb = ', self.perePyxb.nom) - if debug : print (self.nom , ' a pour pere', self.perePyxb, self.perePyxb.nom, self.perePyxb.objPyxb) - if debug : print ('debut du setValeurObjPyxb pour ', self.nom, self.perePyxb.objPyxb.orderedContent()) - - #if newVal != None : nvlObj=self.maClasseModeleMetier(newVal) - if newVal != None : - if self.needFactory : nvlObj=self.maClasseModeleMetierFactory(newVal) - else : nvlObj=self.maClasseModeleMetier(newVal) - else : - if self.needFactory : nvlObj =None - else : nvlObj=self.maClasseModeleMetier(_validate_constraints=False) - self.val=newVal - if debug : print ('fin du setValeurObjPyxb pour ', self.nom, self.perePyxb.objPyxb.orderedContent()) - - if inspect.isclass(newVal) and issubclass(newVal,A_ASSD) : - newVal = newVal.nom - setattr(self.perePyxb.objPyxb,self.nom,nvlObj) - trouve=False - indice=0 - for i in self.perePyxb.objPyxb.orderedContent(): - if i.elementDeclaration.id() == self.nom: - #if isinstance(i._Content__value, self.maClasseModeleMetier) : - self.perePyxb.objPyxb.orderedContent()[indice]=self.perePyxb.objPyxb.orderedContent()[-1] - del(self.perePyxb.objPyxb.orderedContent()[-1]) - trouve=True - break - indice+=1 - if not trouve : print ('Attention souci au changement de valeur de ', self.nom) - self.objPyxb=nvlObj - #self.objPyxb.objAccas=self - if debug : print ('fin du setValeurObjPyxb pour ', self.nom, self.perePyxb.objPyxb.orderedContent()) - - - - -class X_MCCOMPO(X_OBJECT) : -# ------------------------- -# - def buildObjPyxb(self,mc_list, debug=False) : - if not self.cata or not self.cata.modeleMetier : return - - #if self.nom == 'Scenario_data' : debug=1 - if debug : print ('X_MCCOMPO', self.nom) - deepDebug=False - self.listArg=[] - self.dicoArg={} - for objAccas in mc_list : - if objAccas.nature == 'MCBLOC' : - self.exploreBLOC(objAccas) - elif objAccas.nature == 'MCList' : - if objAccas[0].definition.max > 1 : - self.listArg.append(objAccas) # les MCList n ont pas objPyxb - self.dicoArg[objAccas.nom]=[] - for fils in objAccas : - fils.perePyxb=self - self.dicoArg[objAccas.nom].append(fils.objPyxb) - else : - objAccas[0].perePyxb=self - self.dicoArg[objAccas.nom]=objAccas[0].objPyxb - self.listArg.append(objAccas[0].objPyxb) - else : - if objAccas.nom == 'Consigne' : continue - print ('______________', objAccas.nom, objAccas.objPyxb) - self.listArg.append(objAccas.objPyxb) - self.dicoArg[objAccas.nom]=objAccas.objPyxb - objAccas.perePyxb=self - - if debug : print('X_MCCOMPO -- listArg ---',self.nom,self.listArg) - if debug : print('X_MCCOMPO -- dicoArg ---',self.nom,self.dicoArg) - - - self.monNomClasseModeleMetier='T_'+self.nom - if self.monNomClasseModeleMetier in list(self.cata.DicoNomTypeDifferentNomElt.keys()) : - self.nomComplet=self.definition.nomComplet() - self.monNomClasseModeleMetier=self.cata.DicoNomTypeDifferentNomElt[self.monNomClasseModeleMetier][self.nomComplet] - self.maClasseModeleMetier=getattr(self.cata.modeleMetier,self.monNomClasseModeleMetier) - - # PN : Ne doit-on pas tester avant - if self.objPyxbDeConstruction != None : - self.objPyxb = self.objPyxbDeConstruction - self.objPyxbDeConstruction = None - if debug : print ('je passe dans le if pour ', self.nom, self.objPyxb, self) - if debug : print ('X_MCCOMPO', self, self.nom, self.objPyxb,self.listArg,self.objPyxb.orderedContent()) - else : - if debug : print (self.listArg) - if debug : print (self.maClasseModeleMetier) - # self.objPyxb=self.maClasseModeleMetier(*self.listArg) - self.objPyxb=self.maClasseModeleMetier(**self.dicoArg) - if deepDebug : - print ('debut de __________ new ordered content') - for o in self.objPyxb.orderedContent(): - print ('o', o) - print ('value', o.value) - print ('type', type(o.value)) - print ('id', id(o.value)) - print ('fin __________ new ordered content') - print ('debut de __________ listArg') - for obj in self.listArg: - print ('obj',obj) - print ('type obj', type(obj)) - print ('id(obj)', id(obj)) - print ('fin __________ listArg') - - newOrderedContent=[] - if debug : print ('list Arg') - for obj in self.listArg: - if debug : - print ('obj',obj) - print ('type obj', type(obj)) - print ('id(obj)', id(obj)) - - # on teste le caractere pluriel - if isinstance(obj, list): - for c in self.objPyxb.orderedContent() : - if hasattr (c,'value') and c.value == obj : - newOrderedContent.append(c) - continue - if (hasattr(obj, 'nature')) : # attention on a un object Accas et non un pyxb car les MCList n ont pas de objPyxb - max=obj[0].definition.max - else : max = 1 - if max == 1 : - #if not(issubclass(type(obj), pyxb.binding.basis.enumeration_mixin) ): - # newOrderedContent.append(self.objPyxb.orderedContent()[list(map(lambda o:id(o.value), self.objPyxb.orderedContent())).index(id(obj))] ) - #else : - # newOrderedContent.append(self.objPyxb.orderedContent()[list(map(lambda o:type(o.value), self.objPyxb.orderedContent())).index(type(obj))] ) - # PN 22 sept 2020 . pourquoi pas toujours l id. le tyoe ne convient pas en cas d union d enum - newOrderedContent.append(self.objPyxb.orderedContent()[list(map(lambda o:id(o.value), self.objPyxb.orderedContent())).index(id(obj))] ) - else : # element Pural - for c in self.objPyxb.orderedContent() : - if isinstance(c._Content__value,list) and isinstance(c._Content__value[0], type(obj[0].objPyxb)): newOrderedContent.append(c) - - for i in range(len(self.listArg)): - self.objPyxb.orderedContent()[i]=newOrderedContent[i] - debug=True - if debug : print ('X_MCCOMPO', self, self.nom, self.objPyxb) - if debug : print ('X_MCCOMPO', self.listArg) - if debug : print ('X_MCCOMPO', newOrderedContent) - if debug : print ( 'X_MCCOMPO',self.objPyxb.orderedContent()) - if debug : print ('fin buildObjetPyxb _______________________________________') - # assert(self.objPyxb.validateBinding()) - - - def exploreBLOC(self,objAccas,debug=False): - if debug : print (' ds exploreBLOC', objAccas.nom) - laListeSsLesBlocs=[] - for fils in objAccas.mcListe: - if fils.nature == 'MCBLOC' : - self.exploreBLOC(fils) - elif fils.nature == 'MCList' : - #print ('exploreBLOC des MCList', fils.nom) - self.dicoArg[fils.nom]=[] - if fils[0].definition.max > 1 : - #print ('ajout de ', fils) - self.listArg.append(fils) # les MCList n ont pas objPyxb - for objFils in fils : - objFils.perePyxb=self - self.dicoArg[fils.nom].append(objFils.objPyxb) - else: - fils[0].perePyxb=self - self.dicoArg[fils.nom]=fils[0].objPyxb - self.listArg.append(fils[0].objPyxb) - else : - if fils.nom == "Consigne" : continue - self.listArg.append(fils.objPyxb) - self.dicoArg[fils.nom]=fils.objPyxb - fils.perePyxb=self - if debug : print (fils.nom ,' est un SIMP a pour pere Pyxb', self, self.nom) - if debug : print ('fin ds exploreBLOC', objAccas .nom) - - - - -class X_MCBLOC (X_MCCOMPO): -# -------------------------- - def buildObjPyxb(self,mc_list,debug=False): - if not self.cata or not self.cata.modeleMetier : return - if debug : print ('X_MCBLOC buildObjPyxb', self.nom, self, mc_list, 'ne fait rien') - self.perePyxb=None - self.objPyxb=None - - def addObjPyxb(self, indiceDsLeContenu, debug=False): - if not self.cata or not self.cata.modeleMetier : return - if debug : print ('X_MCBLOC addObjPyxb', self.nom, self, self.mcListe, indiceDsLeContenu) - rangDeLObjet=indiceDsLeContenu - for obj in self.mcListe: - obj.addObjPyxb( rangDeLObjet) - rangDeLObjet=rangDeLObjet+obj.longueurDsArbre() - - def delObjPyxb(self, debug=False): - if not self.cata or not self.cata.modeleMetier : return - if debug : print ('X_MCBLOC delObjPyxb', self.nom, ' --------------------------') - for obj in self.mcListe: - obj.delObjPyxb() - if debug : print ('fin X_MCBLOC delObjPyxb --------------------------') - -class X_MCLIST (X_MCCOMPO): -# -------------------------- - - def buildObjPyxb(self,mc_list, debug=False): - if debug : print ('X_MCLIST buildObjPyxb ne fait rien', self.nom, self, mc_list) - pass - - def addObjPyxb(self,indiceDsLeContenu, debug=False): - if debug : print ('X_MCLIST addObjPyxb', self.nom, indiceDsLeContenu) - rangDeLObjet=indiceDsLeContenu - for objFils in self : - objFils.addObjPyxb(rangDeLObjet) - rangDeLObjet= rangDeLObjet + 1 - - def delObjPyxb(self, debug=False): - if not self.cata or not self.cata.modeleMetier : return - if debug : print ('X_MCLIST delObjPyxb', self.nom, ' --------------------------') - for obj in self: - obj.delObjPyxb() - if debug : print ('fin X_MCLIST delObjPyxb --------------------------') - - -class X_MCFACT (X_MCCOMPO): -# ------------------------- - pass - -class X_ETAPE(X_MCCOMPO) : -# ------------------------- - - def metAJourNomASSD(self, nom,debug=False): - if not self.cata or not self.cata.modeleMetier : return - if debug : print ('X_ETAPE metAJourLesAttributs', self.nom, nom,' --------------------------') - self.objPyxb.sdName=nom - -class X_JDC (X_MCCOMPO): -# --------------------- - - def __init__(self): - self.perePyxb=None - if not self.cata or not self.cata.modeleMetier : return - #if hasattr(self.cata,'DicoNomTypeDifferentNomElt') : print ('jkllllllllllllllll') - if not(hasattr(self.cata,'DicoNomTypeDifferentNomElt')) : self.cata.DicoNomTypeDifferentNomElt={} - self.monNomClasseModeleMetier=self.code - self.maClasseModeleMetier=getattr(self.cata.modeleMetier,self.monNomClasseModeleMetier) - self.objPyxb=self.maClasseModeleMetier() - #self.objPyxb.objAccas=self - pyxb.GlobalValidationConfig._setContentInfluencesGeneration(pyxb.GlobalValidationConfig.NEVER) - pyxb.GlobalValidationConfig._setInvalidElementInContent(pyxb.GlobalValidationConfig.RAISE_EXCEPTION) - pyxb.GlobalValidationConfig._setOrphanElementInContent(pyxb.GlobalValidationConfig.RAISE_EXCEPTION) - - - - def enregistreEtapePyxb(self,etape,indice=0): - # ne fonctionne pas : a reecrire avec les fonctions addObjPyxb et ReconstruitPerePyxb - # ne contient pas indice pour l insant - # print ( 'hhhhhhhhhhhhhhh enregistreEtapePyxb hhhhhhhhhhhhhhhhhhhhhhhhh') - # print ('enregistre ds ',self, etape.nom, 'indice = ', indice) - if not self.cata.modeleMetier : return - self.objPyxb.append(etape.objPyxb) - etape.perePyxb = self - - #print (self.objPyxb.orderedContent()) - #if indice != (len(self.objPyxb.orderedContent()) ) : - # tampon=self.objPyxb.orderedContent()[-1] - # for i in reversed(range(len(self.objPyxb.orderedContent()))): - # self.objPyxb.orderedContent()[i]=self.objPyxb.orderedContent()[i-1] - # if i == indice + 1 : break - # self.objPyxb.orderedContent()[indice]=tampon - - #print (self.objPyxb.orderedContent()) - #try: - # self.objPyxb.validateBinding() - #except pyxb.ValidationError as e: - # print(e.details()) - - def toXml(self,fichier=None, debug=False): - if debug : print ('ds to XML') - if not self.cata or not self.cata.modeleMetier : return - if debug : print (' to xml ***************',self.objPyxb,'***************',) - if debug : print (' to xml ***************',self,'***************',) - if debug : print (' to xml ***************',self.objPyxb.orderedContent(),'***************',) - if debug : print(self.objPyxb.toDOM().toprettyxml()) - if debug : print(self.objPyxb.toxml()) - return (self.objPyxb.toDOM().toprettyxml()) - - - def analyseFromXML(self,debug=False): - print ("je suis ds analyseFromXML -- > appel ds analyseXML de I_JDC.py") - if self.procedure == "" : return - self.objPyxb=self.cata.modeleMetier.CreateFromDocument(self.procedure) - if not hasattr(self.cata.modeleMetier,'AccasUserAssd'): - from Accas import UserASSD - self.cata.modeleMetier.AccasUserAssd=UserASSD - for contentObjEtape in self.objPyxb.orderedContent(): - objEtape=contentObjEtape.value - objEtape.dictArgs=(self.pyxbToDict(objEtape)) - objEtape.monNomClasseAccas=objEtape._ExpandedName.localName() - objEtape.monNomClasseAccas=objEtape.monNomClasseAccas[2:] - # doute sur les 2 lignes suivantes : objEtape peut etre contentObjEtape 2juin20 - objEtape.dictPyxb['objEnPyxb']=objEtape - objEtape.dictArgs['dicoPyxbDeConstruction']=objEtape.dictPyxb - if debug : print ('dicoPyxbDeConstruction', objEtape.dictArgs['dicoPyxbDeConstruction']) - maClasseAccas=getattr(self.cata,objEtape.monNomClasseAccas) - if debug : print ( 'hhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhh') - if debug : print ('maClasseAccas ', maClasseAccas) - if debug : print ('objEtape ', objEtape , type(objEtape)) - if debug : print ('nomClasseAccas ',objEtape.monNomClasseAccas, type(objEtape.monNomClasseAccas)) - if debug : print ('_ExpandedName ', objEtape._ExpandedName, type(objEtape._ExpandedName)) - if debug : print ('dictArgs ',objEtape.dictArgs) - if debug : print ('dictPyxb ',objEtape.dictPyxb) - # attention au call d Oper qui renomme l objet pyxb - if hasattr(objEtape,'sdName') : - if debug and hasattr(objEtape,'sdName') :print ('sdName',objEtape.sdName) - objAccasEtape=maClasseAccas(nomXML=objEtape.sdName, **(objEtape.dictArgs)) - else : objAccasEtape=maClasseAccas(**(objEtape.dictArgs)) - if debug : print ( 'hhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhh') - - - def pyxbToDict(self,objAAnalyser, debug=True): - # la transformation de l objAAnalyser en type lu par eficas ne fonctionne pas pour tout - if objAAnalyser is None: return - if debug : print ('debut pour_____________________________ ',objAAnalyser) - dictArgs = {} - # traitement SIMP - # --------------- - # a revoir pour les matrices - # et les tuples - debug = 1 - if isinstance(objAAnalyser, pyxb.binding.basis.simpleTypeDefinition): - if debug : print ('je suis un MCSimple', objAAnalyser) - # traitement scalaire - objAAnalyser.dictPyxb=objAAnalyser - if not (isinstance(objAAnalyser,pyxb.binding.basis.STD_list)): - if debug : print ('je suis un scalaire') - if isinstance(objAAnalyser,self.cata.modeleMetier.AccasUserAssd) or isinstance(objAAnalyser,self.cata.modeleMetier.AccasUserAssdMultiple): - if debug : print ('je suis un UserASSD') - laClassePyxbUserAssd=type(objAAnalyser) - return self.creeUserAssd(objAAnalyser,laClassePyxbUserAssd) - if isinstance(objAAnalyser, pyxb.binding.datatypes.boolean) : return bool(objAAnalyser) - if isinstance(objAAnalyser, str) : return str(objAAnalyser) - if isinstance(objAAnalyser, int) : return int(objAAnalyser) - if isinstance(objAAnalyser, float): return float(objAAnalyser) - if isinstance(objAAnalyser, pyxb.binding.basis.enumeration_mixin): return str(objAAnalyser) - return objAAnalyser - else : - if debug : print ('je suis une liste') - laListe=[] - # liste homogene - if len(objAAnalyser)>0: - if issubclass(objAAnalyser[0].__class__,self.cata.modeleMetier.AccasUserAssd) or issubclass(objAAnalyser[0].__class__,self.cata.modeleMetier.AccasUserAssdMultiple): estUnUserASSDorUserASSDMultiple = True - else : estUnUserASSDorUserASSDMultiple=False - else : estUnUserASSDorUserASSDMultiple=False - if debug : print ('estUnUserASSDorUserASSDMultiple', estUnUserASSDorUserASSDMultiple) - for obj in objAAnalyser : - if estUnUserASSDorUserASSDMultiple: - laClassePyxbUserAssd=obj.__class__ - laListe.append(self.creeUserAssd(obj,laClassePyxbUserAssd)) - elif isinstance(obj, str): laListe.append (str(obj)) - elif isinstance(obj, int): laListe.append (int(obj)) - elif isinstance(obj, float): laListe.append (float(obj)) - elif isinstance(obj, pyxb.binding.basis.enumeration_mixin): laListe.append(str(obj)) - else : laListe.append(obj) - return (laListe) - # if debug : print ('je suis Plural') - # ou ? return objAAnalyser - #if isinstance(objAAnalyser, types.StringTypes): return pyxb.utils.utility.QuotedEscaped(objAAnalyser,) - #pour une enum getattr(value dans le type) - # return pythonLiteral(ReferenceFacet(facet=value, **kw)) - #print ('je suis un mot complexe') - # traitement FACT ou BLOC - # ------------------------ - # il faut traiter les fact multiples - objAAnalyser.dictPyxb = {} - objAAnalyser.dictPyxb['objEnPyxb']=objAAnalyser - #for expandedName, elementDeclaration in objAAnalyser._ElementMap.items(): - # objPyxbName = expandedName.localName() - # objPyxbValue = getattr(objAAnalyser, objPyxbName) - for objEltContentFils in objAAnalyser.orderedContent(): - objPyxbValue = objEltContentFils.value - objPyxbName = objEltContentFils.elementDeclaration.id() - elementDeclaration = objEltContentFils.elementDeclaration - #if objPyxbValue == None or objPyxbValue == [] : continue - if elementDeclaration.isPlural(): - if objPyxbName not in list(dictArgs.keys()) : dictArgs[objPyxbName]=[] - if objPyxbName not in list(objAAnalyser.dictPyxb.keys()) : objAAnalyser.dictPyxb[objPyxbName]=[] - dictArgs[objPyxbName].append(self.pyxbToDict(objPyxbValue)) - objAAnalyser.dictPyxb[objPyxbName].append(objPyxbValue.dictPyxb) - else: - dictArgs[objPyxbName] = self.pyxbToDict(getattr(objAAnalyser, objPyxbName)) - objAAnalyser.dictPyxb[objPyxbName] = objPyxbValue.dictPyxb - # print ('ajout dans dictPyxb', objPyxbName, objPyxbValue.dictPyxb) - #print ('avec la valeur', 'de', objAAnalyser.dictPyxb[objPyxbName]) - - #print ("***********************************") - #print ('pyxbToDict fin pour ********** ', objAAnalyser) - #print ('pyxbToDict ', objAAnalyser, objAAnalyser.dictPyxb) - #print ('pyxbToDict fin pour ********** ', objAAnalyser) - #print ("***********************************") - #print (dictArgs) - #print (dictPyxb) - #for i in dictArgs.keys(): print (i, " ", dictArgs[i], " ", type(dictArgs[i])) - #print ('fin pour ',objAAnalyser) - return dictArgs - - def creeUserAssd(self,objAAnalyser,laClassePyxbUserAssd,debug=True): - - enCreation=False - if debug : print ('creeUserAssd ', objAAnalyser, ' ',laClassePyxbUserAssd) - leTypeIntermediaire=laClassePyxbUserAssd.XsdSuperType() - if debug : print ('leTypeIntermediaire ', leTypeIntermediaire) - if debug : print ('leTypeIntermediaire ', leTypeIntermediaire.XsdSuperType()) - if leTypeIntermediaire.__name__[-2:]== '_C' : enCreation = True - elif leTypeIntermediaire.__name__[-2:] != '_U' : print ('pb avec', laClassePyxbUserAssd); return None #exit() - nomClasseAccasUserAssd=leTypeIntermediaire.XsdSuperType().__name__ - if debug : print ('nomClasseAccasUserAssd', nomClasseAccasUserAssd) - laClasseAccas=getattr(self.cata,nomClasseAccasUserAssd) - print (laClasseAccas) - if not(enCreation): - if str(objAAnalyser) in self.g_context.keys():return self.g_context[str(objAAnalyser)] - else : - obj=laClasseAccas() - self.g_context[str(objAAnalyser)]=obj - return obj - if str(objAAnalyser) in self.g_context.keys(): - if isinstance(self.g_context[str(objAAnalyser)],laClasseAccas): - return self.g_context[str(objAAnalyser)] - else : - nvlObj=laClasseAccas() - oldObj=self.g_context[str(objAAnalyser)] - nvlObj.transfere(oldObj) - self.g_context[str(objAAnalyser)]=nvlObj - return nvlObj - else : - obj=laClasseAccas() - self.g_context[str(objAAnalyser)]=obj - return obj - -# def analyseContent(self,objAAnalyser): -# objAAnalyser.dictArgs={} -# for objContenu in objAAnalyser.content(): -# #print ('j analyse ', objContenu) -# objContenu.monNomClasseModeleMetier=str(objContenu.__class__).split('.')[-1] -# objContenu.monNomClasseAccas=objContenu.monNomClasseModeleMetier[2:-2] -# #maClasseAccas=classeAccasPere.entites[objContenu.monNomClasseAccas] -# if objContenu._IsSimpleTypeContent(): -# print (objContenu.monNomClasseAccas,objContenu.pythonLiteral()) -# print (objContenu.monNomClasseAccas,objContenu.xsdLiteral()) -# #chaine=objContenu.pythonLiteral().split('(')[1].split(')')[0] -# print (dir(objContenu)) -# objAAnalyser.dictArgs[objContenu.monNomClasseAccas]=None -# #objAAnalyser.dictArgs[objContenu.monNomClasseAccas]=objContenu.pythonLiteral() -# else : -# self.analyseContent(objContenu) -# objAAnalyser.dictArgs[objContenu.monNomClasseAccas]=objContenu.dictArgs - #print ( '________________') - #print (objAAnalyser.monNomClasseAccas) - #for i in objAAnalyser.dictArgs : print (i, objAAnalyser.dictArgs[i]) - #print ( '________________') - - - -if __name__ == "__main__": - print ('a faire') diff --git a/Efi2Xsd/ModeleEficas/Exemple Catalogue 2 (1.1).xml b/Efi2Xsd/ModeleEficas/Exemple Catalogue 2 (1.1).xml deleted file mode 100755 index c80f763a..00000000 --- a/Efi2Xsd/ModeleEficas/Exemple Catalogue 2 (1.1).xml +++ /dev/null @@ -1,176 +0,0 @@ - - - - - - - - - - - - - 21 - - I - - carte - - - - - dsd - - TXM - - carte_flux_r - - - - - - - 1 2 - - - I - - maille - - - - - RESULTAT - ETAT_INIT - - - - I - NoRepeat - - - I - NoRepeat - - - - - R - NoRepeat - - - R - NoRepeat - - - R - NoRepeat - - - - - - CONCEPT - CONCEPT2 - - - - - classeUtilisateur - NoRepeat - - - TXM - - - - 1 - - I - - - - - OUI - NON - - - - - - - - - TXM - - - - - I - - - - I - - - - - - - - PETIT - - - - - PETIT - PETIT - - - TXM - - - - - 0 - - I - - - - - ANALYTIQUE - SACANTE - DEKKER - NEWTON_ID - BRENT - - - TXM - - - classeUtilisateur - - - - - - - - - - - - C_NOM_CHAM_INTO(phenomene='CONTRAINTE',categorie='lin') - - - TXM - NoRepeat - - - - "DEFORMATION in ('PETIT','PETIT_REAC','GROT_GDEP')" - - - - diff --git a/Efi2Xsd/ModeleEficas/Model Efficas (1.1) v6 ext.xsd b/Efi2Xsd/ModeleEficas/Model Efficas (1.1) v6 ext.xsd deleted file mode 100755 index 22e488ec..00000000 --- a/Efi2Xsd/ModeleEficas/Model Efficas (1.1) v6 ext.xsd +++ /dev/null @@ -1,58 +0,0 @@ - - - - - - - - - - - - - - - - - - - - La portée pouurait devenir un attribut de SIMP. Une autre solution consisterait a créer un SIMPG pour distinguer les @nom uniques des SIMP a portée globale des autres. - - - - - - - - - - - - - - La valeur -1 equivaut à oo - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/Efi2Xsd/ModeleEficas/Model Efficas (1.1) v6.xsd b/Efi2Xsd/ModeleEficas/Model Efficas (1.1) v6.xsd deleted file mode 100755 index 2492a38b..00000000 --- a/Efi2Xsd/ModeleEficas/Model Efficas (1.1) v6.xsd +++ /dev/null @@ -1,732 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - SIMP devrait être selectionné que si .//SIMP[portee='Global'] - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - SIMP devrait être selectionné que si .//SIMP[portee='Global'] - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - SIMP devrait être selectionné que si .//SIMP[portee='Global'] - - - - - - - - - - - - - - - - - - - La valeur -1 equivaut à oo - - - - - - - - - - - - - - SIMP devrait être selectionné que si .//SIMP[portee='Global'] - - - - - - - - - - - - - - - - - - - - - - - - La portée pouurait devenir un attribut de SIMP. Une autre solution consisterait a créer un SIMPG pour distinguer les @nom uniques des SIMP a portée globale des autres. - - - - - - - - - - - - - - La valeur -1 equivaut à oo - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Référence une position dans un fichier maître contenant une liste de références à des pages de documentations - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/Efi2Xsd/ModeleEficas/Model Efficas (1.1) v7 ext.xsd b/Efi2Xsd/ModeleEficas/Model Efficas (1.1) v7 ext.xsd deleted file mode 100755 index 0b531868..00000000 --- a/Efi2Xsd/ModeleEficas/Model Efficas (1.1) v7 ext.xsd +++ /dev/null @@ -1,56 +0,0 @@ - - - - - - - - - - - - - - - - - - - La portée pouurait devenir un attribut de SIMP. Une autre solution consisterait a créer un SIMPG pour distinguer les @nom uniques des SIMP a portée globale des autres. - - - - - - - - - - - - - - La valeur -1 equivaut à oo - - - - - - - - - - - - - - - - diff --git a/Efi2Xsd/ModeleEficas/Model Efficas (1.1) v7.xsd b/Efi2Xsd/ModeleEficas/Model Efficas (1.1) v7.xsd deleted file mode 100755 index 0f1838fc..00000000 --- a/Efi2Xsd/ModeleEficas/Model Efficas (1.1) v7.xsd +++ /dev/null @@ -1,731 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - SIMP devrait être selectionné que si .//SIMP[portee='Global'] - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - SIMP devrait être selectionné que si .//SIMP[portee='Global'] - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - SIMP devrait être selectionné que si .//SIMP[portee='Global'] - - - - - - - - - - - - - - - - - - - La valeur -1 equivaut à oo - - - - - - - - - - - - - - SIMP devrait être selectionné que si .//SIMP[portee='Global'] - - - - - - - - - - - - - - - - - - - - - - - - La portée pouurait devenir un attribut de SIMP. Une autre solution consisterait a créer un SIMPG pour distinguer les @nom uniques des SIMP a portée globale des autres. - - - - - - - - - - - - - - La valeur -1 equivaut à oo - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Référence une position dans un fichier maître contenant une liste de références à des pages de documentations - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/Efi2Xsd/ModeleEficas/Model Efficas (1.1) v8 ext.xsd b/Efi2Xsd/ModeleEficas/Model Efficas (1.1) v8 ext.xsd deleted file mode 100755 index f6db1fc5..00000000 --- a/Efi2Xsd/ModeleEficas/Model Efficas (1.1) v8 ext.xsd +++ /dev/null @@ -1,56 +0,0 @@ - - - - - - - - - - - - - - - - - - - La portée pouurait devenir un attribut de SIMP. Une autre solution consisterait a créer un SIMPG pour distinguer les @nom uniques des SIMP a portée globale des autres. - - - - - - - - - - - - - - La valeur -1 equivaut à oo - - - - - - - - - - - - - - - - diff --git a/Efi2Xsd/ModeleEficas/Model Efficas (1.1) v8.xsd b/Efi2Xsd/ModeleEficas/Model Efficas (1.1) v8.xsd deleted file mode 100755 index 822cf3b4..00000000 --- a/Efi2Xsd/ModeleEficas/Model Efficas (1.1) v8.xsd +++ /dev/null @@ -1,724 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - SIMP devrait être selectionné que si .//SIMP[portee='Global'] - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - SIMP devrait être selectionné que si .//SIMP[portee='Global'] - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - SIMP devrait être selectionné que si .//SIMP[portee='Global'] - - - - - - - - - - - - - - - - - - - La valeur -1 equivaut à oo - - - - - - - - - - - - - - SIMP devrait être selectionné que si .//SIMP[portee='Global'] - - - - - - - - - - - - - - - - - - - - - - - - La portée pouurait devenir un attribut de SIMP. Une autre solution consisterait a créer un SIMPG pour distinguer les @nom uniques des SIMP a portée globale des autres. - - - - - - - - - - - - - - La valeur -1 equivaut à oo - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Référence une position dans un fichier maître contenant une liste de références à des pages de documentations - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/Efi2Xsd/ModeleEficas/Model Efficas (1.1) v9 ext.xsd b/Efi2Xsd/ModeleEficas/Model Efficas (1.1) v9 ext.xsd deleted file mode 100755 index 39322ca8..00000000 --- a/Efi2Xsd/ModeleEficas/Model Efficas (1.1) v9 ext.xsd +++ /dev/null @@ -1,55 +0,0 @@ - - - - - - - - - - - - - - - - - - La portée pouurait devenir un attribut de SIMP. Une autre solution consisterait a créer un SIMPG pour distinguer les @nom uniques des SIMP a portée globale des autres. - - - - - - - - - - - - - - La valeur -1 equivaut à oo - - - - - - - - - - - - - - - - diff --git a/Efi2Xsd/ModeleEficas/Model Efficas (1.1) v9.xsd b/Efi2Xsd/ModeleEficas/Model Efficas (1.1) v9.xsd deleted file mode 100755 index 96ade997..00000000 --- a/Efi2Xsd/ModeleEficas/Model Efficas (1.1) v9.xsd +++ /dev/null @@ -1,744 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - SIMP devrait être selectionné que si .//SIMP[portee='Global'] - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - SIMP devrait être selectionné que si .//SIMP[portee='Global'] - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - SIMP devrait être selectionné que si .//SIMP[portee='Global'] - - - - - - - - - - - - - - - - - - - La valeur -1 equivaut à oo - - - - - - - - - - - - - - SIMP devrait être selectionné que si .//SIMP[portee='Global'] - - - - - - - - - - - - - - - - - - - - - - - - La portée pouurait devenir un attribut de SIMP. Une autre solution consisterait a créer un SIMPG pour distinguer les @nom uniques des SIMP a portée globale des autres. - - - - - - - - - - - - - - La valeur -1 equivaut à oo - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Référence une position dans un fichier maître contenant une liste de références à des pages de documentations - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - les TXM peuvent contenir des espaces, pour créer une liste de TXM, il faut donc répéter le nom de la balise. - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/Efi2Xsd/README.txt b/Efi2Xsd/README.txt deleted file mode 100644 index b4fae481..00000000 --- a/Efi2Xsd/README.txt +++ /dev/null @@ -1,12 +0,0 @@ -# pour verification Git -pyxbgen -u model.xsd -m efficas --write-for-customization -/local/PyXB-1.2.6/scripts/pyxbgen -u model.xsd -m efficas --write-for-customization -/local/PyXB-1.2.6/scripts/pyxbgen -u model_ext.xsd -m efficas_ext --write-for-customization - - -/local/PyXB-1.2.6/scripts/pyxbgen -u model.xsd -m efficas --write-for-customization --default-namespace-public --archive-to-file=model.wxsd -/local/PyXB-1.2.6/scripts/pyxbgen -u model_ext.xsd -m efficas_ext --write-for-customization --archive-path=.:+ - -#Comment EF -#comment PN -#Essai WebDav1 diff --git a/Efi2Xsd/ReadmeFichiers.txt b/Efi2Xsd/ReadmeFichiers.txt deleted file mode 100644 index c55cf370..00000000 --- a/Efi2Xsd/ReadmeFichiers.txt +++ /dev/null @@ -1,18 +0,0 @@ -AccasXsd.py - contient les classes qui font le lien entre les classes de definition Accas et les classes pyxb generees a partir du XSD genere a partir du catalogue - -balises.py - contient les balises necessaires pour generer le xsd metier a partir du catalogue eficas (ou .py ou en .xsd) - -efficas.py - contient le modele genere par pyxb a partir du XSD eficas - a priori inutile - -mapDesTypes.py - fait le lien bidirectionnel entre les types ACCAS et les types XSD - -MCAccasXsd.py - contient les classes qui font le lien entre les classes objet Accas et les classes pyxb generees a partir du XSD genere a partir du catalogue - -readerEfiXsd.py - contient les classes qui font le lien entre les classes de definition Accas et les classes pyxb generees a partir du modele eficas XSD diff --git a/Efi2Xsd/XMLSchema(1.1)_efv1.xsd b/Efi2Xsd/XMLSchema(1.1)_efv1.xsd deleted file mode 100644 index e451b844..00000000 --- a/Efi2Xsd/XMLSchema(1.1)_efv1.xsd +++ /dev/null @@ -1,1901 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -]> - - - - Part 1 version: structures.xsd (rec-20120405) - Part 2 version: datatypes.xsd (rec-20120405) - - - - - The schema corresponding to this document is normative, - with respect to the syntactic constraints it expresses in the - XML Schema Definition Language. The documentation (within 'documentation' elements) - below, is not normative, but rather highlights important aspects of - the W3C Recommendation of which this is a part. - - See below (at the bottom of this document) for information about - the revision and namespace-versioning policy governing this - schema document. - - - - - - The simpleType element and all of its members are defined - towards the end of this schema document. - - - - - Get access to the xml: attribute groups for xml:lang - as declared on 'schema' and 'documentation' below - - - - - - - This type is extended by almost all schema types - to allow attributes from other namespaces to be - added to user schemas. - - - - - - - - - - - - This type is extended by all types which allow annotation - other than <schema> itself - - - - - - - - - - - - - - - - - - - - - - - - This group is for the - elements which occur freely at the top level of schemas. - All of their types are based on the "annotated" type by extension. - - - - - - - - - - - - This group is for the - elements which can self-redefine (see <redefine> below). - - - - - - - - - - - - A utility type, not for public use - - - - - - - - - - A utility type, not for public use - - - - - - - - - - A utility type, not for public use - - #all or (possibly empty) subset of {extension, restriction} - - - - - - - - - - - - - - - - A utility type, not for public use - - - - - - - - - - - - A utility type, not for public use - - #all or (possibly empty) subset of {extension, restriction, list, union} - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - for maxOccurs - - - - - - - - - - - - - for all particles - - - - - - - - for element, group and attributeGroup, - which both define and reference - - - - - - - - 'complexType' uses this - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - This branch is short for - <complexContent> - <restriction base="xs:anyType"> - ... - </restriction> - </complexContent> - - - - - - - - - - - - - - - - Will be restricted to required or prohibited - - - - - - Not allowed if simpleContent child is chosen. - May be overridden by setting on complexContent child. - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - This choice is added simply to - make this a valid restriction per the REC - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Overrides any setting on complexType parent. - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - This choice is added simply to - make this a valid restriction per the REC - - - - - - - - - - - - - - - - - No typeDefParticle group reference - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - A utility type, not for public use - - #all or (possibly empty) subset of {substitution, extension, - restriction} - - - - - - - - - - - - - - - - - - - - - - - - The element element can be used either - at the top level to define an element-type binding globally, - or within a content model to either reference a globally-defined - element or type or declare an element-type binding locally. - The ref form is not allowed at the top level. - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - This type is used for 'alternative' elements. - - - - - - - - - - - - - - - - - - group type for explicit groups, named top-level groups and - group references - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - group type for the three kinds of group - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - This choice with min/max is here to - avoid a pblm with the Elt:All/Choice/Seq - Particle derivation constraint - - - - - - - - - - - - - - - - - - - - - - - Only elements allowed inside - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - simple type for the value of the 'namespace' attr of - 'any' and 'anyAttribute' - - - - Value is - ##any - - any non-conflicting WFXML/attribute at all - - ##other - - any non-conflicting WFXML/attribute from - namespace other than targetNS - - ##local - - any unqualified non-conflicting WFXML/attribute - - one or - - any non-conflicting WFXML/attribute from - more URI the listed namespaces - references - (space separated) - - ##targetNamespace or ##local may appear in the above list, to - refer to the targetNamespace of the enclosing - schema or an absent targetNamespace respectively - - - - - A utility type, not for public use - - - - - - - A utility type, not for public use - - - - - - - - - - - - - - - - - - A utility type, not for public use - - - - - - - - - - A utility type, not for public use - - - - - - - - - - - - - - - - - - - A utility type, not for public use - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - A subset of XPath expressions for use -in selectors - A utility type, not for public -use - - - - - - - - - - - - - - - - - - - - A subset of XPath expressions for use -in fields - A utility type, not for public -use - - - - - - - - - - - - - - - - - - - - - - - - The three kinds of identity constraints, all with - type of or derived from 'keybase'. - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - A utility type, not for public use - - A public identifier, per ISO 8879 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - notations for use within schema documents - - - - - - - Not the real urType, but as close an approximation as we can - get in the XML representation - - - - - - - - - In keeping with the XML Schema WG's standard versioning policy, - the material in this schema document will persist at the URI - http://www.w3.org/2012/04/XMLSchema.xsd. - - At the date of issue it can also be found at the URI - http://www.w3.org/2009/XMLSchema/XMLSchema.xsd. - - The schema document at that URI may however change in the future, - in order to remain compatible with the latest version of XSD - and its namespace. In other words, if XSD or the XML Schema - namespace change, the version of this document at - http://www.w3.org/2009/XMLSchema/XMLSchema.xsd will change accordingly; - the version at http://www.w3.org/2012/04/XMLSchema.xsd will not change. - - Previous dated (and unchanging) versions of this schema document - include: - - http://www.w3.org/2012/01/XMLSchema.xsd - (XSD 1.1 Proposed Recommendation) - - http://www.w3.org/2011/07/XMLSchema.xsd - (XSD 1.1 Candidate Recommendation) - - http://www.w3.org/2009/04/XMLSchema.xsd - (XSD 1.1 Candidate Recommendation) - - http://www.w3.org/2004/10/XMLSchema.xsd - (XSD 1.0 Recommendation, Second Edition) - - http://www.w3.org/2001/05/XMLSchema.xsd - (XSD 1.0 Recommendation, First Edition) - - - - - - - - A utility type, not for public use - - - - - - - - - - - - - - - - - - - - #all or (possibly empty) subset of {restriction, extension, union, list} - - - A utility type, not for public use - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Can be restricted to required or forbidden - - - - - - - - - - - - - - - - - Required at the top level - - - - - - - - - - - - - - - - - - Forbidden when nested - - - - - - - - - - - - - - - - - An abstract element, representing facets in general. - The facets defined by this spec are substitutable for - this element, and implementation-defined facets should - also name this as a substitution-group head. - - - - - - - - - - - - - - - - - base attribute and simpleType child are mutually - exclusive, but one or other is required - - - - - - - - - - - - - - - itemType attribute and simpleType child are mutually - exclusive, but one or other is required - - - - - - - - - - - - - - - - - memberTypes attribute must be non-empty or there must be - at least one simpleType child - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - In keeping with the XML Schema WG's standard versioning policy, - this schema document will persist at the URI - http://www.w3.org/2012/04/datatypes.xsd. - - At the date of issue it can also be found at the URI - http://www.w3.org/2009/XMLSchema/datatypes.xsd. - - The schema document at that URI may however change in the future, - in order to remain compatible with the latest version of XSD - and its namespace. In other words, if XSD or the XML Schema - namespace change, the version of this document at - http://www.w3.org/2009/XMLSchema/datatypes.xsd will change accordingly; - the version at http://www.w3.org/2012/04/datatypes.xsd will not change. - - Previous dated (and unchanging) versions of this schema document - include: - - http://www.w3.org/2012/01/datatypes.xsd - (XSD 1.1 Proposed Recommendation) - - http://www.w3.org/2011/07/datatypes.xsd - (XSD 1.1 Candidate Recommendation) - - http://www.w3.org/2009/04/datatypes.xsd - (XSD 1.1 Candidate Recommendation) - - http://www.w3.org/2004/10/datatypes.xsd - (XSD 1.0 Recommendation, Second Edition) - - http://www.w3.org/2001/05/datatypes.xsd - (XSD 1.0 Recommendation, First Edition) - - - - diff --git a/Efi2Xsd/XSD_TODO.txt b/Efi2Xsd/XSD_TODO.txt deleted file mode 100644 index b8688603..00000000 --- a/Efi2Xsd/XSD_TODO.txt +++ /dev/null @@ -1,318 +0,0 @@ -- Ajouter sous commandes un élément optionnel qui permet de déclarer une liste de PROC|OPER qui à la création d'un jeu de données apparaissent par défaut - -- Dans le SIMP plageValeur ajouter un attribut du into pour indiquer si le into est contraignant ou non - -- Définir au niveau de commande un élément MACRO qui est équivalent à un OPER a qui est associé deux fonctions, une à l'initialisation et une au changement de valeur - -- Dans le SIMP si max_occurs==1 --> La valeur optionelle par défaut et la valeur optionnelle suggerée ne peuvent pas être une liste 'T_list_..) - Ca n'a plus de sens le type T_list a été supprimé ! cf plus bas - -- Dans le SIMP, le into est forcément une liste de type typeAttendu (même avec une seule valeur) - Ce problème a été traité - -- Dans le SIMP, si le type attendu est un type utilisateur il ne peut y avoir ni de valeur par défaut ni de valeur suggérée ni de into - -- Le tuple est défini par une longueur n et une liste de taille n de noms de type simple et/ou de noms de classes utilisateur - --> T_I TXM 3 14 - - -- Le type du type Attendu des SIMPs doit être homogène à celui utilisé pour définir valeurDef et plageValeur/into (pas forcément borne...) - -- Comment mutualiser un type XSD via eficas cf. ADAO - -- SIMP : Lorsque le maxOccurences est > 1 Le type des est forcément une T_list_ en revanche le nomTypeAttendu ne contient jamais le mot 'list'. - Lorsque le SIMP est une liste, le into attend une sequence de listes, Sugg et Def attendent une liste (et pas une sequence). - -- Lorsque le type du SIMP est un tuple et que le maxOccurences > 1, il s'agit donc d'une "liste de tuples". valeurDef et valeurSugg attendent une liste de tuples. Le plageur peut acceuillir plusieurs qui comprennent chacun une liste de tuples. - -- Si on veut garder la cohérence entre le SIMP list (avec maxOccurences > 1) et les valdef/sugg et into quelque soit le type (typesimple, matrice et surtout tuples) il paraît necessaire de définir les listes de types sous forme de séquences d'élements même pour les typesimples. - Cela permet également de définir des TXM avec des blancs - -Ex 1.0 pour un type simple : - - 12 - 12 - 13 - - -Ex 1.1 pour un type simple : - - 1213 - 1213 - 2223 - - -Ex 1.2 pour un type tuple : - - 12 13 1415 16 17 - 22 23 2425 26 27 - 12 13 1415 16 17 - 32 33 3435 36 37 - 42 43 4445 46 47 - - -Le typeSimple ne peut plus être une liste xsd et les types T_list_xxxx disparaissent (ce qui est cohérent avec les noms de type T_nomTypeAttendu. -Ce type de description est néanmoins plus verbeux lorsque le nombre d'élements de la liste (et du into aussi) est grand. - -Ex 2.1 pour un type simple (exprimé en type list xsd): - - 12 13 - 12 13 - 22 23 - - -Ex 2.2 pour un tuple (un type complexe ne peut pas être exprimé en type list xsd): - - 12 13 1415 16 17 - 22 23 2425 26 27 - 12 13 1415 16 17 - 32 33 3435 36 37 - 42 43 4445 46 47 - - -Ex 3.1 pour un type simple (la validation des éléments de la liste n'est pas possible en xsd) : - - 12 13 - 12 13 - 22 23 - - -Ex 3.2 (idem 2.2, idem 1.2) - - 12 13 1415 16 17 - 22 23 2425 26 27 - 12 13 1415 16 17 - 32 33 3435 36 37 - 42 43 4445 46 47 - - - - -Réflexion : Utiliser un groupe de substitution pour les BLOC : Oui ! - -- BorneSup et borneInf sur un SIMP list (maxOccurences >1) définit la borne de chacun des éléments de la liste : dans ce cadre le typesimple ne pourrait pas être un T_list_xxxx - -- Les SIMPs de liste de complexes peuvent être définies comme un T_list_C qui est en fait une liste de double - -- Les SIMPs de liste de TXM ne peuvent pas être définie comme des listes car le sépérateurs des listes est le caractère blanc mais les TXM eficas peuvent contenir des blancs. - -Ex 3.1 pour un type simple (la validation des éléments de la liste n'est pas possible en xsd) : - - 12 13 - 12 13 - 22 23 - - -Ex 3.2 (idem 2.2, idem 1.2) - - a ab b - 22 23 2425 26 27 - 12 13 1415 16 17 - 32 33 3435 36 37 - 42 43 4445 46 47 - tuple - - - -- Un catalogue Eficas peut contenir un espace de règles qui s'appliquent aux PROC/OPER parmi lesquelles peuvent appraitre : - -- AU_MOINS_UN rule obliges the user to create at least one concept of the list. More than one can be created. - -qui devrait être mappé en XSD sous forme de -On pourrait imposer PROC min=1 et pas de règle de validation - ou -autoriser PROC min=0 et ajouter une validation sur le jeux de données pour vérifier qu'apparait au moins un élément. - -- UN_PARMI rule obliges the user to create one and only one concept of the list. - -Un et un seul élement de la liste A B doit apparaître indépendement de tous les autres éléments. - -qui devrait être mappé en XSD sous forme de et toujours avec des - -- EXCLUS means that, if one of the keyword is created, the other won't be allowed. - -qui devrait être mappé en XSD sous forme de et toujours avec des - -- ENSEMBLE the rule means that if one keyword is selected, the others have to be also. - the keywords order is not meaningful. - -Dans ce cas de figure deux éléments A et B qui sont ensemble peuvent apparaître n'importe où dans le jdeux de données mais si l'un existe l'autre doit exister aussi. D'autres éléments C D E peuvent s'intercaller n'importe où. - -Le mapping XSD pourrait être un choice 0..n avec tous les éléments accéssibles + deux règles de validation. -Si A -> B et Si B ->A. - -- PRESENT_PRESENT - the rule means that if the FIRST keyword is selected, the others have to be also. - -A -> B et C et D mais B-/-> A... - -La solution est de même type que précédement. - -- PRESENT_ABSENT - - the rule means that if the FIRST keyword is selected, the others aren't allowed. -Si A -> !B et !C et !D - -Même type de mapping. - -- A_CLASSER - -A avant B -> Quelques soient les éléments qui apparaissent le A doit toujours être avant le B - -Ici le composant XSD a utiliser est une séquence et non un choice : la Séquence serait du type : - - [Groupe C D E ] * - - A - - [Groupe C D E ] * - - B - - [Groupe C D E ] * - -Conclusion : Le type de composant XSD dépend des règles - - -Exemple CATA ASTER : -DEBUT -POURSUITE -DEBUTFIN -POURSUITEFIN - - -- Ajouter la notion de INTO_SUG dans SIMP/plage_valeur ---------------------------------- -Efficas V6. -from EFFI import * - -T_list_TXM([u'a', u'b', u'e']) -t2=typesimple(["a","b","e"]) -ti=typesimple(T_list_I([4,5,6])) -print t2._ExpandedName.localName() - -o1=CreateFromDocument(open('../cata_test1.xml').read()) - -o1.commandes[0].PROC[0].FACT[0].SIMP[2].plageValeur -o1.commandes[0].PROC[0].FACT[0].SIMP[2].plageValeur.into.typesimple[0] -a=SIMP(nom="myname",typeAttendu=typeAttendu('I')) - -a.valeurDef=T_typeAttendu(typesimple([1,2,3])) -a.valeurDef.typesimple[0]._ExpandedName.localName() - - -a.valeurDef=T_typeAttendu([1,2,3]) -a.valeurDef.typesimple[0]._ExpandedName.localName() - -a.valeurDef=T_typeAttendu(1) -a.valeurDef.typesimple[0]._ExpandedName.localName() - -a.valeurDef=T_typeAttendu([1]) -a.valeurDef.typesimple[0]._ExpandedName.localName() - -a.valeurDef=T_typeAttendu(T_C([3,4])) - -print into([1,2,3], [4,5,6], 4).content() -print into([1,2,3], [4,5,6], 4).toxml() -o2=CreateFromDocument(into([1,2,3], [4,5,6], 4).toxml()) ->>> o2.toxml() -u'1 2 34 5 64' - -#Selon la norme XSDL si on utilise l'attribut xsi:type="ns1:T_list_I" dans l'élément -# T_list_I doit hérité de typesimple or typesimple est une union dans le Eficas-Xsd -# L'utilisisation de xsi:type peut être aussi faite conjointement avec l'attribut memberTypes d'une union. - - - - -o2=CreateFromDocument(u'1 2 34 5 64') - -o1=CreateFromDocument(open('../Med/Catalogues/Cata_MED_FAM_test_v9.xml').read()) - -o2=CreateFromDocument(open('../CataTestXSD/Test_Catalogue_(1.1).xml').read()) - - -pyxb.exceptions_.SchemaValidationError: Unexpected top-level element override -pyxb union memberTypes xsi:type - - -import pyxb -pyxb.RequireValidWhenGenerating(False) -print pur_ord.toDOM().toprettyxml() - - -a=TXM("Essai de chaine") -a.PythonLiteral -a.SimpleTypeDefinition -b=nomTypeAttendu("TXM") -#Seul le nom du type attendu est necessaire pour construire le SIMP -c=SIMP(b) -d=valeurDef(a) -c.valeurDef=d -c.plageValeur.into.append(d) -c.plageValeur.into.append(into(TXM("Essai de chaine 2"))) -c.toxml() -c._performValidation() - -#Namespaces et catégories - -Namespace.schemas() -print Namespace.categories() -Namespace.categoryMap('typeBinding') -Namespace.typeBindings() -Namespace.categoryMap('elementBinding') -Namespace.elementBindings() -Namespace.AvailableNamespaces() - -o3=CreateFromDocument(open('../CataTestXSD/Test_Catalogue_(1.1)_NoXsi.xml').read()) -#Groupe de substitution, il pourrait y avoir UN_PARMI... -o3.commandes[0].PROC[0].regles.EXCLUS[0] -o3.commandes[0].PROC[0].regles.content() -o3.commandes[0].PROC[0].regles.UN_PARMI existe même si -o3.commandes[0].PROC[0].regles.UN_PARMI[0] n'existe pas et renvoi une erreur -o3.commandes[0].PROC[0].regles.content() renvoie le contenu independament de l'élément contenant : EXLCUS, UN_PARMI .... -UN_PARMI("MC1") est possible sans passer par T_UN_PARMI car l'élément global existe. -o3.commandes[0].PROC[0].regles.append(UN_PARMI("MC1")) -o3.commandes[0].PROC[0].regles.content() n'a pas changé pourquoi ? -o3.commandes[0].PROC[0].regles.toxml() -u'RESULTATETAT_INIT' -o3.commandes[0].PROC[0].regles.UN_PARMI.append(UN_PARMI("MC1")) parceque l'on avait ajouter l'élément au mauvais endroit -o3.commandes[0].PROC[0].regles.toxml() -u'RESULTATETAT_INITMC1' -o3.commandes[0].PROC[0].regles.content() n'a pas changé, pourquoi ? -[[u'RESULTAT'], [u'ETAT_INIT']] -o3.commandes[0].PROC[0]._finalizeContentModel() -o3.commandes[0].PROC[0].regles.content() toujours pas changé ?? -[[u'RESULTAT'], [u'ETAT_INIT']] - -o3.commandes[0].PROC[0].regles.validateBinding() -_performValidation() indique si la validation est active ou non. - -essai=T_regles('RESULTATETAT_INIT') ne marche pas ? -essai=T_regles(_from_xml=u'RESULTATETAT_INITMC1') car il faut préciser le keyword _from_xml= -essai.toxml() pas possible car pas de start tag -essai.content() contenu suspect notre construction n'a pas du marcher -[] - essai.EXCLUS[:] est vide, la construction n'a pas fonctionnée -[] -En effet, ceci est normal car le keyword _from_xml=True|False - - -#La configuration de la validation ... -dir(o3.commandes[0].PROC[0].regles._validationConfig) -['ALWAYS', 'GIVE_UP', 'IGNORE_ONCE', 'MIXED_ONLY', 'NEVER', 'RAISE_EXCEPTION', '_ValidationConfig__contentInfluencesGeneration', '_ValidationConfig__forBinding', '_ValidationConfig__forDocument', '_ValidationConfig__getContentInfluencesGeneration', '_ValidationConfig__getInvalidElementInContent', '_ValidationConfig__getOrphanElementInContent', '_ValidationConfig__invalidElementInContent', '_ValidationConfig__orphanElementInContent', '__class__', '__delattr__', '__dict__', '__doc__', '__format__', '__getattribute__', '__hash__', '__init__', '__module__', '__new__', '__reduce__', '__reduce_ex__', '__repr__', '__setattr__', '__sizeof__', '__str__', '__subclasshook__', '__weakref__', '_getForBinding', '_getForDocument', '_setContentInfluencesGeneration', '_setForBinding', '_setForDocument', '_setInvalidElementInContent', '_setOrphanElementInContent', 'contentInfluencesGeneration', 'copy', 'forBinding', 'forDocument', 'invalidElementInContent', 'orphanElementInContent'] - - -TODO: TESTER REF avec deux éléments différents ou un même élément partagé entre plusieurs éléments contenant. - - -dir(pyxb.utils.domutils.logging) -open('genout.xhtml', 'w').write(xmls) -toxml(encoding=None, bds=None, root_only=False, element_name=None) - -_IsSimpleTypeContent() --> Pour un ComplexType SimpleContent --> utiliser value pour obtenir la valeur du simpletype - - -UN MODEL DE CONTENU : all, choice, seq, group .... -_CF_ : Constraining Facets -CT : Content Type -STD : Simple Type Definition -FAC : Finite Automate With Counter -CSC : Cooperative Super Calling : Classe qui hérite de plusieurs implémentation de la même méthode et qui les appelle -CTD : Complex Type Definition -STD : Simple Yype Definition diff --git a/Efi2Xsd/XSL/Eficas2Xsd.xslt b/Efi2Xsd/XSL/Eficas2Xsd.xslt deleted file mode 100755 index 92a75f72..00000000 --- a/Efi2Xsd/XSL/Eficas2Xsd.xslt +++ /dev/null @@ -1,789 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/Efi2Xsd/XSL/MED_FAM_gen.xsd b/Efi2Xsd/XSL/MED_FAM_gen.xsd deleted file mode 100644 index 4dc86bd7..00000000 --- a/Efi2Xsd/XSL/MED_FAM_gen.xsd +++ /dev/null @@ -1,82 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/Efi2Xsd/XSL/MED_FAM_v2_gen.xsd b/Efi2Xsd/XSL/MED_FAM_v2_gen.xsd deleted file mode 100644 index cce4d5b6..00000000 --- a/Efi2Xsd/XSL/MED_FAM_v2_gen.xsd +++ /dev/null @@ -1,158 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/Efi2Xsd/XSL/MappingMapToXMLSchema_1_1__ef.xslt b/Efi2Xsd/XSL/MappingMapToXMLSchema_1_1__ef.xslt deleted file mode 100755 index 92a75f72..00000000 --- a/Efi2Xsd/XSL/MappingMapToXMLSchema_1_1__ef.xslt +++ /dev/null @@ -1,789 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/Efi2Xsd/XSL/Saxon.cmd b/Efi2Xsd/XSL/Saxon.cmd deleted file mode 100644 index 50048709..00000000 --- a/Efi2Xsd/XSL/Saxon.cmd +++ /dev/null @@ -1 +0,0 @@ -saxonb-xslt -s:../Cata_MED_FAM.xml -xsl:MappingMapToXMLSchema_1_1__ef.xslt PrefixName=med UserNameSpace='http://chercheurs.edf.com/logiciels/' diff --git a/Efi2Xsd/__init__.py b/Efi2Xsd/__init__.py deleted file mode 100644 index 5b4f0e3b..00000000 --- a/Efi2Xsd/__init__.py +++ /dev/null @@ -1,19 +0,0 @@ -# -*- coding: utf-8 -*- -# Copyright (C) 2007-2021 EDF R&D -# -# 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 -# diff --git a/Efi2Xsd/balisesXSD.py b/Efi2Xsd/balisesXSD.py deleted file mode 100644 index bde29bf2..00000000 --- a/Efi2Xsd/balisesXSD.py +++ /dev/null @@ -1,149 +0,0 @@ -texteDebut='\n\n' -texteDebutNiveau2='\n\n' -texteDebutNiveau3='\n\n' -texteFin='' - -#texteAnnotation= '\t\n\t\t\n\t\t{}\n\t\t\n\t\t\n\t\n\t\n' -texteAnnotation= '\t\n\t\t\n\t\t{}\n\t\t\n\t\t\n\t\n\t\n' - -# SIMP -debutSimpleType = '\t\n' -debutSimpleTypeSsNom = '\t\n' -fermeSimpleType = '\t\n' -debutRestrictionBase = '\t\t\n' -fermeRestrictionBase = '\t\t\n' -enumeration = '\t\t\t\n' -maxInclusiveBorne = '\t\t\t\n' -minInclusiveBorne = '\t\t\t\n' - -debutTypeSimpleListe = '\t\t\n\t\t\t\n\t\t\t\t\n\t\t\t\t\t\n' -finTypeSimpleListe = '\t\t\n\t\t\t\n\t\t\t\t\n\t\t\t\t\t\n' -fermeBalisesMileu = '\t\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\n\t\t\t \n' - -maxLengthTypeSimple = '\t\t\t\n' -minLengthTypeSimple = '\t\t\t\n' -eltDsSequence = '\t\t\t\n' -eltDsSequenceWithHelp = '\t\t\t\n\t\t\t\t\n\t\t\t\t\t{}\n\t\t\t\t\n\t\t\t\n' -eltDsSequenceWithDefautAndHelp = '\t\t\t\n\t\t\t\t\n\t\t\t\t\t{}\n\t\t\t\t\n\t\t\t\n' -eltDsSequenceWithDefaut = '\t\t\t\n' -UsingASSDkeyRefDeclaration = '\n\t \n\t\t\n\t\t\n\t\n' -# -# -# -# - - # - # - - - - -# COMPO -debutTypeCompo = '\t\n' -debutTypeCompoEtape = '\t \n\t \n' -finTypeCompoEtape = '\t \n\t \n' -debutTypeCompoSeq = '\t\t\n' -finTypeCompoSeq = '\t\t\n' -finTypeCompo = '\t\n' -eltCompoDsSequence = '\t\t\t\n' -eltCompoDsSequenceWithHelp = '\t\t\t\n' -#name="{}" type="{}:{}" minOccurs="{}" maxOccurs="{}">\n\t\t\t\t\n\t\t\t\t\t{}\n\t\t\t\t\n\t\t\t\n' -#eltCompoDsSequenceInExtension = '\t\t\t\n' - -# ETAPE -eltEtape = '\t\n' -eltEtapeWithHelp = '\t\n\t\t\t\t\n\t\t\t\t\t{}\n\t\t\t\t\n\t\t\t\n' - -# BLOC -debutTypeSubst = '\t \n\t\t\n' -finTypeSubst = '\t\t\n\t\n' -substDsSequence = '\t\t\t\n\t\t\t\t\n\t\t\t\t\t{}\n\t\t\t\t\n\t\t\t\n' -#choiceDsBloc = '\t\t\t\n' -debutChoiceDsBloc = '\t\t\n' -debutChoiceDsBlocAvecMin = '\n' -finChoiceDsBloc = '\t\t\n' -debSequenceDsBloc = '\n' -finSequenceDsBloc = '\n' -debutTypeSubstDsBlocFactorise = '\t\n' -finTypeSubstDsBlocFactorise = '\t\n' -debutUnion = '\t\t\t\n' -finUnion = '\t\t\t\n' -reconstitueUnion = '{} maxOccurs="1">\n\t\t\t\t\n\t\t\t\t\t{}\n\t\t\t\t\n\t\t\t\n' - - - -# User OR ASSD -attributeNameName = '\t\t\n' -attributeTypeForASSD = '\t\t\n' -attributeTypeUtilisateurName = '\t\t\n' -producingASSDkeyRefDeclaration='\t\n\t\t\n\t\t\n\t\n' -texteFieldUnitaire="./{}:{}/@name |" -defBaseXSDUserASSD='\t\n\t\t\n\t\t\n\t\n' -defBaseXSDUserASSDMultiple='\t\n\t\t\n\t\t\n\t\n' - -defUserASSDMultiple='\t\n\t\t\n\t\t\n\t\n' -defUserASSD ='\t\n\t\t\n\t\t\n\t\n' - -defUserASSDOrUserASSDMultiple='\t\n\t\t\n\t\t\n\t\n' - - -# CATA -debutTypeCata = '\t\n\t\t\n' -debutTypeCataExtension = '\t\n' -finTypeCata = '\t\t\n\t\n' -finSchema = '' -#eltCata = '\t\n' -#eltCodeSpecDsCata = '\t\t\t\n' -#fermeEltCata = '\t\n' -includeCata = '\n\n' - - -# EXTENSION -debutExtension = '\t\t\n\t\t\n\t\t\n' -finExtension = '\t\t\n\t\t\n\t\t\n' - -# TYPE ABSTRAIT -eltAbstraitCataPPal = '\t\n' -eltAbstraitCataFils = '\t\n\t\t\n\t\t\t\n\t\t\n\t\n' -eltCataPPal = '\t\n' -eltCataPPalWithHelp = '\t\n\t\t\t\t\n\t\t\t\t\t{}\n\t\t\t\t\n\t\t\t\n' -eltCataFils = '\t\n' -eltCataFilsWithHelp = '\t\n\t\t\t\t\n\t\t\t\t\t{}\n\t\t\t\t\n\t\t\t\n' - -eltCata = '\t\n\t\t\n\t\t \n\t\t\t\n\t\t \n\t\t\n' - -#\n\t\n' -#implementeAbstrait = '\t\n' - -# MATRICE oldVersion -# (_matrix ou pas ?) -#matriceSimpleType = '\t\n\t\t\n\t\t\t\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\n\t\t\t\n\t\t\t\n\t\t\n\t\n' -#matriceSimpleType = '\t\n\t\t\n\t\t\t\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\n\t\t\t\n\t\t\t\n\t\t\n\t\n' -#matriceSimpleType +='\t\n\t\t\n\t\t\t\t\n\t\t\n\t\n\t\n' -#matriceSimpleType +='\t\n\t\t\n\t\t\t\t\n\t\t\n\t\n\t\n' -#matriceSimpleType +='\t\n\t\t\n\t\t\t\t\n\t\t\n\t' -#eltMatrice = ' ' - -# TUPLE -tupleNonHomogeneSimpleType = '\t\n\t\t\n\t\t\n' -tupleNonHomogeneElt = '\t\t\t\n' -tupleDebutComplexeType = '\t\n\t\t' -tupleMilieuComplexeType = '\n\t\t\t' -tupleFinComplexeType = '\n\t\t\n\t\n' - -# MATRICE -eltMatrice = '\t\t\t \n' -matriceSimpleType = '\t\n\t\t\n\t\t\t\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\n\t\t\t\n\t\t\t\n\t\t\n\t\n' -matriceSimpleType +='\t\n\t\t\n\t\t\t\n\t\t \n\t\n' -matriceSimpleType +='\t \n\t\t\n\t\n' - -# CHAINES AVEC BLANC -debutChaineAvecBlancsInto = '\t\n\t\t\n' -milieuChaineAvecBlancsInto = '\t\t\t\n' -finChaineAvecBlancsInto = '\t\t\n\t\t\n' - -complexChaineAvecBlancs = '\t\n\t\t\n\t\t\t\t\n\t\t\t\n\t\n' - -typeEltChaineAvecBlancSansInto = '\t\t\n\t\t\t\n\t\t\t\n\t\t' -if __name__ == '__main__' : - print ('ne fait rien') diff --git a/Efi2Xsd/efficas.py b/Efi2Xsd/efficas.py deleted file mode 100644 index 3304e8af..00000000 --- a/Efi2Xsd/efficas.py +++ /dev/null @@ -1,2 +0,0 @@ -# -*- coding: utf-8 -*- -from raw.efficas import * diff --git a/Efi2Xsd/mapDesTypes.py b/Efi2Xsd/mapDesTypes.py deleted file mode 100755 index 5d8126db..00000000 --- a/Efi2Xsd/mapDesTypes.py +++ /dev/null @@ -1,117 +0,0 @@ -class Tuple: - def __init__(self,ntuple): - self.ntuple=ntuple - - def __convert__(self,valeur): - if type(valeur) == types.StringType: - return None - if len(valeur) != self.ntuple: - return None - return valeur - - def info(self): - return "Tuple de %s elements" % self.ntuple - - __repr__=info - __str__=info - - - -def inverseDico(dicoSource) : -#--------------------------- - dicoInverse = {} - for (clef,valeur) in dicoSource.items(): - if not(type(valeur) is tuple): - dicoInverse[valeur]=clef - continue - (elt,att)=valeur - if elt not in dicoInverse : dicoInverse[elt]={} - dicoInverse[elt][att]=clef - return dicoInverse - -dictSIMPEficasXML= { 'typ' : 'nomTypeAttendu', - 'statut' : 'statut', - 'min' : 'minOccurences', - 'max' : 'maxOccurences', - 'homo' : 'homo' , - 'position' : 'portee', - 'validators' : 'validators' , - 'sug' : 'valeurSugg', - 'defaut' : 'valeurDef' , - 'into' : ('plageValeur','into'), - 'val_min' : ('plageValeur','borneInf'), - 'val_max' : ('plageValeur','borneSup'), - 'ang' : ('doc','ang'), - 'fr' : ('doc','fr',), - 'docu' : ('doc','docu'), - } - -dictSIMPXMLEficas= inverseDico(dictSIMPEficasXML) - - - -dictFACTEficasXML = { 'statut' : 'statut', - 'min' : 'minOccurences', - 'max' : 'maxOccurences', - 'ang' : ('doc','ang'), - 'fr' : ('doc','fr',), - 'docu' : ('doc','docu'), - 'regles' : 'regles', - 'validators' : 'validators' , - } - -dictFACTXMLEficas = inverseDico(dictFACTEficasXML) - -dictBLOCEficasXML = { 'statut' : 'statut', - 'ang' : ('doc','ang'), - 'fr' : ('doc','fr',), - 'regles' : 'regles', - 'condition' : 'condition' , - } - -dictBLOCXMLEficas = inverseDico(dictBLOCEficasXML) - -dictPROCEficasXML = { 'nom' : 'nom', - 'regles' : 'regles', - 'ang' : ('doc','ang'), - 'fr' : ('doc','fr',), - 'docu' : ('doc','docu'), - } - -dictPROCXMLEficas = inverseDico(dictPROCEficasXML) - -dictOPEREficasXML = dictPROCEficasXML -dictOPERXMLEficas = dictPROCXMLEficas - -dictPourCast = { 'I' : int, 'R' : float, 'bool' : bool , } -dictNomsDesTypes = { 'I' : 'xs:int', 'R' : 'xs:float', bool : 'xs:boolean' , 'TXM' : 'xs:string', 'Fichier' : 'xs:string', 'Repertoire':'xs:string', 'FichierNoAbs' : 'xs:string', 'FichierOuRepertoire':'xs:string' } - -listeParamDeTypeTypeAttendu = ( 'defaut', 'sug', 'val_min', 'val_max', 'into', 'intoSug') -listeParamDeTypeStr = ('fr', 'docu', 'ang', 'nom' ) - -listeParamTjsSequence = ('into' , 'intoSug') -listeParamSelonType = ('defaut', 'sug', 'into', 'intoSug') - -if __name__ == "__main__": - import pprint - pp=pprint.PrettyPrinter(indent=4) - print ('dictSIMPEficasXML') - pp.pprint(dictSIMPEficasXML) - print ('\n\n') - print ('dictSIMPXMLEficas') - pp.pprint(dictSIMPXMLEficas) - print ('\n\n') - print ('dictFACTEficasXML') - pp.pprint(dictFACTEficasXML) - print ('\n\n') - print ('dictFACTXMLEficas') - pp.pprint(dictFACTXMLEficas) - print ('\n\n') - print ('dictPROCEficasXML') - pp.pprint(dictPROCEficasXML) - print ('\n\n') - print ('dictPROCXMLEficas') - pp.pprint(dictPROCXMLEficas) - print ('\n\n') - print ('dictNomsDesTypes') - pp.pprint(dictNomsDesTypes ) diff --git a/Efi2Xsd/model.xsd b/Efi2Xsd/model.xsd deleted file mode 120000 index 9b381ef3..00000000 --- a/Efi2Xsd/model.xsd +++ /dev/null @@ -1 +0,0 @@ -ModeleEficas/Model Efficas (1.1) v9.xsd \ No newline at end of file diff --git a/Efi2Xsd/readerEfiXsd.py b/Efi2Xsd/readerEfiXsd.py deleted file mode 100755 index b519e99a..00000000 --- a/Efi2Xsd/readerEfiXsd.py +++ /dev/null @@ -1,311 +0,0 @@ -#!/usr/bin/env python -# -*- coding: utf-8 -*- -import sys,os -import raw.efficas as efficas -import types - -sys.path.insert(0,os.path.abspath(os.path.join(os.getcwd(),'..'))) - - -from Accas import * - - -# ds l init du SIMP il manque siValide et fenetreIhm - -from mapDesTypes import dictSIMPEficasXML, dictSIMPXMLEficas -from mapDesTypes import dictFACTEficasXML, dictFACTXMLEficas -from mapDesTypes import dictPROCEficasXML, dictPROCXMLEficas -from mapDesTypes import dictOPEREficasXML, dictOPERXMLEficas -from mapDesTypes import dictBLOCEficasXML, dictBLOCXMLEficas -from mapDesTypes import dictPourCast -from mapDesTypes import listeParamDeTypeTypeAttendu, listeParamDeTypeStr, dictPourCast -from mapDesTypes import listeParamTjsSequence, listeParamSelonType - - -# ------------------------------ -class objetDefinitionAccas: -# ------------------------------ - - def argumentXMLToEficas(self): - # --------------------------- - # Attention, pas de validation pour l instant - # il faut verifier la coherence entre les types contenus dans defaut, sug ... et le typeAttendu - # tout cela dans une fonction verifie pas faite -) - - # Recuperation parametres - self.dictArgsEficas={} - for nomXMLArg in dir(self) : - if nomXMLArg in self.dictATraiter : - nomEficasArg=self.dictATraiter[nomXMLArg] - argu=getattr(self,nomXMLArg) - if argu==None : continue - - if type(nomEficasArg) == types.DictionaryType: - for nomXML in list(nomEficasArg.keys()): - arguDecoupe=getattr(argu,nomXML) - nomEficasDecoupe=nomEficasArg[nomXML] - if arguDecoupe == None : continue - self.dictArgsEficas[nomEficasDecoupe]=arguDecoupe - else : - self.dictArgsEficas[nomEficasArg] = argu - - # Cast dans le bon type des parametres si necessaire - if 'min' in list(self.dictArgsEficas.keys()): - self.dictArgsEficas['min']=int(self.dictArgsEficas['min']) - - if 'max' in list(self.dictArgsEficas.keys()): - if self.dictArgsEficas['max']== -1 : self.dictArgsEficas['max']="**" - else : self.dictArgsEficas['max']=int(self.dictArgsEficas['max']) - - for param in list(self.dictArgsEficas.keys()): - if param in listeParamDeTypeStr : - self.dictArgsEficas[param]=unicode(self.dictArgsEficas[param]) - - # En 2.7 a revoir en 3 ? necessaire - self.nomObj=str(self.nom) - - def getAccasEquivalent(self): - # --------------------------- - return self.nomObj, self.objAccas -# - -# --------------------------------------------------------- -class objetComposeDefinitionAccas (objetDefinitionAccas): -# --------------------------------------------------------- - def exploreArbre(self,cata): - # -------------------------- - liste=[] - for obj in self.content(): liste.append(obj) - #liste.reverse() - # PNPNPN essayer de comprendre reverse ou non - - for obj in liste: - if hasattr(obj,'explore') : obj.explore(cata) - if hasattr(obj,'getAccasEquivalent') : - nom,objetAccas=obj.getAccasEquivalent() - self.dictArgsEficas[nom]=objetAccas - -# ---------------------------------------------------- -class monSIMP (efficas.T_SIMP, objetDefinitionAccas): -# ---------------------------------------------------- - - def explore(self,cata): - # -------------------- - #print ("je passe dans explore pour SIMP ", self.nom) - self.dictATraiter= dictSIMPXMLEficas - self.argumentXMLToEficas() - #print (self.dictArgsEficas) - - - self.objAccas=A_SIMP.SIMP(**self.dictArgsEficas) - self.objAccas.nom=self.nomObj - - def argumentXMLToEficas(self): - # ---------------------------- - #print self.nom - objetDefinitionAccas.argumentXMLToEficas(self) - - if self.attendTuple() : - #nbDElts=type(listeDElt[0]) - print self.nomTypeAttendu - - - self.traiteLesSequences() - #self.convertitLesTypes() - - def attendListe(self): - # --------------- - if 'max' in self.dictArgsEficas : - if self.dictArgsEficas['max'] > 1 : return True - if self.dictArgsEficas['max'] == "**" : return True - return False - - def attendTuple(self): - # ----------------- - if self.dictArgsEficas['typ'] != 'tuple' : return False - return True - - def attendTXM(self): - # ---------------- - if self.dictArgsEficas['typ'] == 'TXM' : return True - return False - - - def traiteLesSequences(self): - # --------------------------- - listeDeListe=self.attendListe() - for param in listeParamTjsSequence : - if param in self.dictArgsEficas : - if listeDeListe == False: - #print ('________________________________') - listeDElt=[] - for i in range(len(self.dictArgsEficas[param])): - # ou typesimple ? - # ici on ne sait pas si on est un type simple ou complexe ? - listeDElt.append(self.dictArgsEficas[param][i].content()[0]) - listeRetour=self.convertitListeDsLeBonType(listeDElt) - #print (listeRetour) - #print ('________________________________') - self.dictArgsEficas[param]=listeRetour - else : - listeResultat=[] - # on transforme en liste pour traiter chaque elt de la liste - for i in range(len(self.dictArgsEficas[param])): - if self.dictArgsEficas[param][i].typesimple != None : - lesElts=self.dictArgsEficas[param][i].typesimple - else : - lesElts=self.dictArgsEficas[param][i].content() - if (not(isinstance(lesElts,list)) and not (isinstance(lesElts,tuple))): - lesElts=(lesElts,) - lesEltsTransformes=self.convertitListeDsLeBonType(lesElts) - lesEltsTransformes=self.convertitListeDsLeBonType(lesElts) - listeResultat.append(lesEltsTransformes) - self.dictArgsEficas[param]=listeResultat - #print ('fin de traiteLesSequences pour', self.nom, ' param :', param, 'listeResultat',self.dictArgsEficas[param]) - - - def convertitListeDsLeBonType(self,listeDElt): - # ------------------------------------------- - # Cas des Tuples non traites - typeAttendu = self.dictArgsEficas['typ'] - if typeAttendu in list(dictPourCast.keys()): - nouvelleListe=[] - castDsLeTypeAttendu=dictPourCast[typeAttendu] - for valeurACaster in listeDElt : - val=castDsLeTypeAttendu(valeurACaster) - nouvelleListe.append(val) - return nouvelleListe - elif self.attendTuple() : - nbDElts=type(listeDElt[0]).n - - else : return listeDElt - - - - def convertitLesTypes(self): - # ------------------------ - # Cas des Tuples non traites - # Cas des fonctions utilisateurs non traites - - typeAttendu = self.dictArgsEficas['typ'] - if typeAttendu in list(dictPourCast.keys()): - castDsLeTypeAttendu=dictPourCast[typeAttendu] - for param in listeParamDeTypeTypeAttendu : - if param in list(self.dictArgsEficas.keys()): - if param in listeParamEnListeSelonType or param in listeParamTjsEnListe : - print ('typeAttendu',typeAttendu) - print (self.dictArgsEficas[param]) - print (self.dictArgsEficas[param].content()) - print (self.dictArgsEficas[param].content()) - return - valeurACaster=self.dictArgsEficas[param].typesimple - if not isinstance(valeurACaster, (list, tuple)) : - val=castDsLeTypeAttendu(valeurACaster) - self.dictArgsEficas[param]=val - else : - liste=[] - for val in valeurACaster : liste.append(castDsLeTypeAttendu(val)) - self.dictArgsEficas[param]=liste - - -# ------------------------------------------------------- -class monFACT(efficas.T_FACT, objetComposeDefinitionAccas): -# ------------------------------------------------------- - def explore(self,cata): - # -------------------- - #print "je passe dans explore pour FACT ", self.nom - - self.dictATraiter= dictFACTXMLEficas - self.argumentXMLToEficas() - self.exploreArbre(cata) - self.objAccas=A_FACT.FACT(**self.dictArgsEficas) - - -# --------------------------------------------------------- -class monPROC(efficas.T_PROC, objetComposeDefinitionAccas): -# --------------------------------------------------------- - def explore(self,cata): - # -------------------- - print "je passe dans explore pour PROC ", self.nom - self.dictATraiter= dictPROCXMLEficas - self.argumentXMLToEficas() - self.exploreArbre(cata) - self.dictArgsEficas['op']=None - - self.objAccas=A_PROC.PROC(**self.dictArgsEficas) - setattr(cata, self.nomObj,self.objAccas) - cata.contexteXML[self.nomObj]=self.objAccas - -# --------------------------------------------------------- -class monOPER(efficas.T_OPER, objetComposeDefinitionAccas): -# --------------------------------------------------------- - def explore(self,cata): -# ------------------------ - print "je passe dans explore pour OPER", self.nom - self.cata=cata - self.dictATraiter= dictOPERXMLEficas - self.argumentXMLToEficas() - self.exploreArbre(cata) - - textCreationClasse='class '+str(self.typeCree)+'(ASSD): pass\n' - exec(textCreationClasse,globals()) - maClasseCreee=globals()[self.typeCree] - self.dictArgsEficas['sd_prod'] = maClasseCreee - cata.contexteXML[self.typeCree] = maClasseCreee - - self.dictArgsEficas['op'] = None - self.objAccas=A_OPER.OPER(**self.dictArgsEficas) - setattr(cata, self.nomObj,self.objAccas) - cata.contexteXML[self.nomObj] = self.objAccas - -# --------------------------------------------------------- -class monBLOC(efficas.T_BLOC, objetComposeDefinitionAccas): -# --------------------------------------------------------- - def explore(self,cata): -# ------------------------ - print ('je passe dans explore pour BLOC', self.nom) - self.cata=cata - self.dictATraiter= dictBLOCXMLEficas - self.argumentXMLToEficas() - self.exploreArbre(cata) - self.objAccas=A_BLOC.BLOC(**self.dictArgsEficas) - setattr(cata, self.nomObj,self.objAccas) - cata.contexteXML[self.nomObj] = self.objAccas - -# ------------------------------ -class monCata(efficas.T_cata): -# ------------------------------ - def exploreCata(self): - # PNPNPN --> il faut revoir ce mecanisme - self.modeleMetier = None - # On positionne le contexte ACCAS - self.JdC = JDC_CATA (code = 'Atmo', execmodul = None,) - self.contexteXML={} - objAExplorer=self.commandes[0] - for obj in objAExplorer.content(): - if hasattr(obj,'explore') : obj.explore(self) - #print dir(self.JdC) - - - #def dumpXSD(self): - # for etape in self.contexteXML.values() : - # etape.dumpXSD() - -efficas.T_SIMP._SetSupersedingClass(monSIMP) -efficas.T_FACT._SetSupersedingClass(monFACT) -efficas.T_PROC._SetSupersedingClass(monPROC) -efficas.T_OPER._SetSupersedingClass(monOPER) -efficas.T_BLOC._SetSupersedingClass(monBLOC) -efficas.T_cata._SetSupersedingClass(monCata) - -if __name__ == "__main__": -# print dir(efficas) -# print dir(efficas.T_SIMP) - - #xml = open('cata_test1.xml').read() - with open('cata.xml') as fd : - xml=fd.read() - SchemaMed = efficas.CreateFromDocument(xml) - SchemaMed.exploreCata() - #SchemaMed.dumpXSD() - diff --git a/InterfaceQT4/__init__.py b/InterfaceQT4/__init__.py deleted file mode 100644 index 57dacc3f..00000000 --- a/InterfaceQT4/__init__.py +++ /dev/null @@ -1,23 +0,0 @@ -# -*- coding: utf-8 -*- -# Copyright (C) 2007-2021 EDF R&D -# -# 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 -# -""" - Ce package contient les fonctionnalites necessaires - pour l'editeur graphique QT -""" diff --git a/InterfaceQT4/browser.py b/InterfaceQT4/browser.py deleted file mode 100644 index 525e0cd5..00000000 --- a/InterfaceQT4/browser.py +++ /dev/null @@ -1,1017 +0,0 @@ -# -*- coding: utf-8 -*- -# Copyright (C) 2007-2021 EDF R&D -# -# 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 -# - -from __future__ import absolute_import -from __future__ import print_function -try : - from builtins import str - from builtins import range -except : pass - -import re -import types,sys,os -import traceback -from . import typeNode - - -from PyQt5.QtWidgets import QTreeWidget , QTreeWidgetItem, QApplication, QMessageBox -from PyQt5.QtGui import QIcon -from PyQt5.QtCore import Qt - -from Extensions.i18n import tr -from .gereRegles import GereRegles -from .monChoixCommande import MonChoixCommande - -#------------------------------------------ -class JDCTree( QTreeWidget,GereRegles ): -#------------------------------------------ - - def __init__( self, jdc_item, QWParent): - #---------------------------------------- - self.editor = QWParent - self.plie=False - if self.editor.widgetTree !=None : - QTreeWidget.__init__(self, self.editor.widgetTree ) - self.editor.verticalLayout_2.addWidget(self) - if self.editor.enteteQTree=='complet': - self.headerItem().setText(0, "Commande ") - self.headerItem().setText(1, "Concept/Valeur") - else : - self.headerItem().setText(0, "Commande ") - self.setColumnWidth(0,200) - self.setExpandsOnDoubleClick(False) - self.setSelectionMode(3) - else : - QTreeWidget.__init__(self, None ) - self.item = jdc_item - self.tree = self - self.appliEficas = self.editor.appliEficas - self.childrenComplete=[] - self.racine=self.item.itemNode(self,self.item) - - self.itemCourant=None - - self.itemClicked.connect(self.handleOnItem) - self.itemCollapsed.connect(self.handleCollapsedItem) - self.itemExpanded.connect(self.handleExpandedItem) - - self.node_selected = self.racine - self.inhibeExpand = True - self.expandItem(self.racine) - self.inhibeExpand = False - if self.racine.children !=[] : - if self.editor.maConfiguration.afficheCommandesPliees : self.racine.children[0].plieToutEtReaffiche() - else : self.racine.children[0].deplieToutEtReaffiche() - self.racine.children[0].fenetre.donnePremier() - else : - self.racine.affichePanneau() - - def contextMenuEvent(self,event) : - #--------------------------------- - coord = event.globalPos() - item = self.currentItem() - self.handleContextMenu(item,coord) - - def handleContextMenu(self,item,coord): - #------------------------------------- - """ - Private slot to show the context menu of the listview. - - @param itm the selected listview item (QListWidgetItem) - @param coord the position of the mouse pointer (QPoint) - Attention : existeMenu permet de savoir si un menu est associe a cet item - """ - #print ("handleContextMenu") - if item == None : return - self.itemCourant = item - if item.existeMenu == 0 : return - - if item.menu == None: - item.createPopUpMenu() - # PNPN reflechir a qqchose de generique pour remplacer cette fonctionnalite - #if item.menu != None: - # if item.item.getNom() == "DISTRIBUTION" and item.item.isValid() : - # item.Graphe.setEnabled(1) - # item.menu.exec_(coord) - - - def handleCollapsedItem(self,item): - #---------------------------------- - #print ("dans CollapsedItem", self.inhibeExpand ) - if self.inhibeExpand == True : return - - # On traite le cas de l item non selectionne - self.itemCourant = item - itemParent = item - while not (hasattr (itemParent,'getPanel')) : itemParent=itemParent.treeParent - if self.tree.node_selected != itemParent : - item.setExpanded(False) - return - - item.setPlie() - item.plieToutEtReaffiche() - item.select() - - def handleExpandedItem(self,item): - #---------------------------------- - #print ("handleExpandedItem pour ", item.item.nom, self.inhibeExpand) - #import traceback - #traceback.print_stack() - if self.inhibeExpand == True : return - - self.itemCourant = item - self.inhibeExpand = True - itemParent = item - while not (hasattr (itemParent,'getPanel')) : - if itemParent.plie==True : itemParent.setDeplie() - itemParent=itemParent.treeParent - if self.tree.node_selected != itemParent : - item.setExpanded(True) - self.inhibeExpand = False - return - item.deplieToutEtReaffiche() - self.inhibeExpand = False - - - def handleOnItem(self,item,int): - #---------------------------------- - #print ("je passe dans handleOnItem pour ",self, item.item.nom, item, item.item, item.item.getLabelText()) - - from InterfaceQT4 import composimp - self.inhibeExpand = True - self.itemCourant = item - itemParent = item - - while not (hasattr (itemParent,'getPanel')) : - if itemParent.plie==True : itemParent.setDeplie() - itemAvant=itemParent - itemParent=itemParent.treeParent - - if itemParent.fenetre != self.editor.fenetreCentraleAffichee : - estUneFeuille=(isinstance(item,composimp.Node)) - # il faut afficher le parent - # Attention - Specification particuliere pour MT qui permet de nn afficher qu 1 niveau - # le catalogue contient cette indication dans fenetreIhm - if estUneFeuille and itemParent.fenetreIhm=='deplie1Niveau' : - itemAvant.afficheCeNiveau() - return - if estUneFeuille : itemParent.affichePanneau() - elif self.editor.maConfiguration.afficheCommandesPliees : itemParent.plieToutEtReafficheSaufItem(item) - else : itemParent.affichePanneau() - - - elif (isinstance(item,composimp.Node)) and item.fenetre : item.fenetre.rendVisible() - elif itemParent!=item: self.tree.handleExpandedItem(item) - - # aide - try : - fr = item.item.getFr() - chaineDecoupee= fr.split('\n') - if len(chaineDecoupee) > 3 : - txt='\n'.join(chaineDecoupee[0:2])+'...\nfull help : double clicked on validity chip of '+ str(item.item.nom)+ ' in central widget' - else : txt=fr - if self.editor: self.editor.afficheCommentaire(str(txt)) - except: - pass - - item.select() - self.inhibeExpand = False - - - def choisitPremier(self,name): - #---------------------------- - self.editor.layoutJDCCHOIX.removeWidget(self.racine.fenetre) - self.racine.fenetre.close() - new_node=self.racine.appendBrother(name,'after') - -# type de noeud -COMMENT = "COMMENTAIRE" -PARAMETERS = "PARAMETRE" - -#------------------------------------------ -class JDCNode(QTreeWidgetItem,GereRegles): -#------------------------------------------ - def __init__( self, treeParent, item, itemExpand=False, ancien=False ): - #---------------------------------------------------------------------- - #print ("creation d'un noeud : ", item, " ",item.nom,"", treeParent, self) - #self.a=0 - - - self.item = item - self.vraiParent = treeParent - self.treeParent = treeParent - self.tree = self.treeParent.tree - self.editor = self.treeParent.editor - self.appliEficas = treeParent.appliEficas - self.JESUISOFF = 0 - self.firstAffiche = True - self.childrenComplete=[] - - - from InterfaceQT4 import compocomm - from InterfaceQT4 import compoparam - from InterfaceQT4 import composimp - if (isinstance(self.item,compocomm.COMMTreeItem)) : name = tr("Commentaire") - elif (isinstance(self.item,compoparam.PARAMTreeItem)) : name = tr(str(item.getLabelText()[0])) - else : name = tr(item.getLabelText()[0]) - if item.nom != tr(item.nom) : name = str(tr(item.nom)+" :") - value = tr(str(item.getText() ) ) - - # si specialisation de la fenetre - if self.item.object.definition == None : self.fenetreIhm = None - # Cas des listes de mots_clefs - else : self.fenetreIhm = self.item.object.definition.fenetreIhm - - if self.editor.enteteQTree=='complet':mesColonnes=(name,value) - else : mesColonnes=(name,) - - if self.treeParent.plie==True : - self.plie = True - self.appartientAUnNoeudPlie = True - if self.treeParent.item.isMCList() : self.appartientAUnNoeudPlie = self.treeParent.appartientAUnNoeudPlie - else : - self.plie = False - self.appartientAUnNoeudPlie = False - - #if item.nom == "POUTRE" :print "creation d'un noeud : ", item, " ",item.nom,"", self.treeParent, self.appartientAUnNoeudPlie , self.plie - - if ancien and itemExpand : self.plie = False - if ancien and not itemExpand : self.plie = True - if (isinstance(self.item,composimp.SIMPTreeItem)) : self.plie=False - - from InterfaceQT4 import compobloc - from InterfaceQT4 import compomclist - - ajoutAuParentduNoeud=0 - self.treeParent=treeParent - while (isinstance(self.treeParent,compobloc.Node) or ( isinstance(self.treeParent,compomclist.Node) and self.treeParent.item.isMCList())) : - self.treeParent.childrenComplete.append(self) - self.treeParent=self.treeParent.vraiParent - self.treeParent.childrenComplete.append(self) - - - if (isinstance(self,compobloc.Node) or (isinstance(self,compomclist.Node) and self.item.isMCList()) or ( hasattr(self.item.parent,'inhibeValidator') and isinstance(self,compomclist.Node) and self.item.parent.inhibeValidator)) : - # Le dernier or ne sert que lorsqu'on est en train de creer une liste par les validator - QTreeWidgetItem.__init__(self,None,mesColonnes) - else : - QTreeWidgetItem.__init__(self,self.treeParent,mesColonnes) - - self.setToolTip(0,self.item.getFr()) - self.setToolTip(1,self.item.getFr()) - repIcon=self.appliEficas.repIcon - - couleur=self.item.getIconName() - monIcone = QIcon(repIcon+"/" + couleur + ".png") - - self.setIcon(0,monIcone) - - self.children = [] - self.buildChildren() - self.menu=None - self.existeMenu=1 - - self.item.connect("valid",self.onValid,()) - self.item.connect("supp" ,self.onSupp,()) - self.item.connect("add" ,self.onAdd,()) - self.item.connect("redessine" ,self.onRedessine,()) - - self.state="" - self.fenetre=None - try : - if self.item.getObject().isBLOC() : - self.setExpanded(True) - self.plie=False - except : - pass - - - def buildChildren(self,posInsertion=10000): - #------------------------------------------ - """ Construit la liste des enfants de self """ - """ Se charge de remettre les noeuds Expanded dans le meme etat """ - #print ("*********** buildChildren ",self,self.item, self.item.nom) - #print (poum) - - self.listeItemExpanded=[] - self.listeItemPlie=[] - - for enfant in self.childrenComplete : - if enfant.plie : self.listeItemPlie.append(enfant.item) - else : self.listeItemExpanded.append(enfant.item) - - for enfant in self.childrenComplete : - parent = enfant.treeParent - parent.removeChild(enfant) - enfant.JESUISOFF=1 - - - self.children = [] - self.childrenComplete = [] - sublist = self.item._getSubList() - ind=0 - - for item in sublist : - itemExpand=False - ancien=False - if item in self.listeItemExpanded : itemExpand=True; ancien=True - if item in self.listeItemPlie : itemExpand=False; ancien=True - nouvelItem=item.itemNode(self,item,itemExpand,ancien) - self.children.append(nouvelItem) - - #print ("fin *********** buildChildren ",self,self.item, self.item.nom, self.children) - - - def chercheNoeudCorrespondant(self,objSimp): - #------------------------------------------- - sublist = self.item._getSubList() - for node in self.childrenComplete: - if node.item.object==objSimp : return node - return None - - - def afficheCeNiveau(self): - #------------------------- - #print ('afficheCeNiveau pour ', self.item.nom, self.item.getLabelText()) - for indiceWidget in range(self.editor.widgetCentraleLayout.count()): - widget=self.editor.widgetCentraleLayout.itemAt(indiceWidget) - self.editor.widgetCentraleLayout.removeItem(widget) - if self.editor.fenetreCentraleAffichee != None : - self.editor.widgetCentraleLayout.removeWidget(self.editor.fenetreCentraleAffichee) - self.editor.fenetreCentraleAffichee.setParent(None) - self.editor.fenetreCentraleAffichee.close() - self.editor.fenetreCentraleAffichee.deleteLater() - - from monWidgetNiveauFact import MonWidgetNiveauFact, MonWidgetNiveauFactTableau - maDefinition = self.item.get_definition() - monObjet = self.item.object - if maDefinition.fenetreIhm=='Tableau' : self.maFenetreCadre=MonWidgetNiveauFactTableau(self,self.editor,maDefinition,monObjet) - else : self.maFenetreCadre=MonWidgetNiveauFact(self,self.editor,maDefinition,monObjet) - - self.fenetre = self.maFenetreCadre - self.editor.widgetCentraleLayout.addWidget(self.maFenetreCadre) - self.editor.fenetreCentraleAffichee=self.maFenetreCadre - self.select() - #print ('fin afficheCeNiveau pour ', self.item.nom) - - - def getPanelModifie(self): - #------------------------- - - if self.fenetreIhm == None : return None - if self.fenetreIhm =='deplie1Niveau': - from InterfaceQT4.monWidgetCommandeDeplie1Niveau import MonWidgetCommandeDeplie1Niveau - return MonWidgetCommandeDeplie1Niveau (self,self.editor ,self.item.object) - return None - - - def affichePanneau(self) : - #------------------------- - #print ('_________________ds affichePanneau pour', self.item.nom) - # pour l instant pas d inactif - if not(self.item.isActif()) : - from .monWidgetInactif import MonWidgetInactif - self.fenetre = MonWidgetInactif(self,self.editor) - else: - itemParent=self - while not (hasattr (itemParent,'getPanel')) : itemParent=itemParent.treeParent - if itemParent != self : - #print ('j appelle affichePanneau pour ', itemParent.item.nom , 'par', self.item.nom) - itemParent.affichePanneau() - #print ('fin _________________ds affichePanneau pour', self.item.nom) - return - - self.fenetre = self.getPanelModifie() - if self.fenetre == None : self.fenetre=self.getPanel() - self.editor.restoreSplitterSizes() - - for indiceWidget in range(self.editor.widgetCentraleLayout.count()): - widget = self.editor.widgetCentraleLayout.itemAt(indiceWidget) - self.editor.widgetCentraleLayout.removeItem(widget) - - # ceinture et bretelle - #print 'old fenetre = ',self.editor.fenetreCentraleAffichee - if self.editor.fenetreCentraleAffichee != None : - try : - self.editor.widgetCentraleLayout.removeWidget(self.editor.fenetreCentraleAffichee) - self.editor.fenetreCentraleAffichee.setParent(None) - self.editor.fenetreCentraleAffichee.close() - self.editor.fenetreCentraleAffichee.deleteLater() - except : - pass - - self.editor.widgetCentraleLayout.addWidget(self.fenetre) - #print ("j ajoute ", self.fenetre, self.fenetre.node.item.nom) - self.editor.fenetreCentraleAffichee=self.fenetre - self.tree.node_selected= self - - if self.editor.first : - if not(isinstance(self.fenetre,MonChoixCommande)): self.editor.first=False - self.tree.inhibeExpand=True - self.tree.expandItem(self) - self.tree.inhibeExpand=False - #print( '_________________fin affichePanneau pour', self.item.nom) - - - def createPopUpMenu(self): - #------------------------- - #implemente dans les noeuds derives si necessaire - self.existeMenu = 0 - - def commentIt(self): - #------------------------- - """ - Cette methode a pour but de commentariser la commande pointee par self - """ - # On traite par une exception le cas ou l'utilisateur final cherche a desactiver - # (commentariser) un commentaire. - try : - pos=self.treeParent.children.index(self) - commande_comment = self.item.getObjetCommentarise() - # On signale a l editeur du panel (le JDCDisplay) une modification - self.editor.initModif() - self.treeParent.buildChildren() - self.treeParent.children[pos].select() - self.treeParent.children[pos].affichePanneau() - except Exception as e: - traceback.print_exc() - QMessageBox.critical( self.editor, "TOO BAD",str(e)) - - def unCommentIt(self): - #------------------------- - """ - Realise la decommentarisation de self - """ - try : - pos=self.treeParent.children.index(self) - commande,nom = self.item.unComment() - self.editor.initModif() - self.treeParent.buildChildren() - self.treeParent.children[pos].select() - self.treeParent.children[pos].affichePanneau() - except Exception as e: - QMessageBox.critical( self.editor, "Erreur !",str(e)) - - def addComment( self, after=True ): - #----------------------------------- - """ - Ajoute un commentaire a l'interieur du JDC : - """ - self.editor.initModif() - if after: - pos = 'after' - else: - pos = 'before' - return self.appendBrother( COMMENT, pos ) - - def addParameters( self, after=True ): - #------------------------------------- - """ - Ajoute un parametre a l'interieur du JDC : - """ - self.editor.initModif() - if after: pos = 'after' - else: pos = 'before' - child=self.appendBrother( PARAMETERS, pos ) - return child - - - def select( self ): - #------------------ - """ - Rend le noeud courant (self) selectionne et deselectionne - tous les autres - """ - #print "select pour", self.item.nom - for item in self.tree.selectedItems() : - item.setSelected(0) - self.tree.setCurrentItem( self ) - - #------------------------------------------------------------------ - # Methodes de creation et destruction de noeuds - #------------------------------------------------------------------ - - def appendBrother(self,name,pos='after',plier=False): - #---------------------------------------------------- - """ - Permet d'ajouter un objet frere a l'objet associe au noeud self - par defaut on l'ajoute immediatement apres - Methode externe - """ - self.editor.initModif() - - from InterfaceQT4 import compojdc - if (isinstance(self.treeParent, compojdc.Node)) and not self.verifiePosition(name,pos) : return 0 - - if self.treeParent != self.vraiParent : - index = self.vraiParent.children.index(self) - if pos == 'before' : index = index - elif pos == 'after' : index = index +1 - return self.vraiParent.appendChild(name,pos=index,plier=plier) - else : - index = self.treeParent.children.index(self) - if pos == 'before': index = index - elif pos == 'after' : index = index +1 - else: - print(pos, tr(" n'est pas un index valide pour appendBrother")) - return 0 - return self.treeParent.appendChild(name,pos=index,plier=plier) - - def verifiePosition(self,name,pos,aLaRacine=False): - #---------------------------------------------------- - if name not in self.editor.readercata.Classement_Commandes_Ds_Arbre : return True - indexName=self.editor.readercata.Classement_Commandes_Ds_Arbre.index(name) - - etapes=self.item.getJdc().etapes - if etapes == [] : return True - - if aLaRacine == False :indexOu=etapes.index(self.item.object) - else : indexOu=0 - - if pos=="after" : indexOu = indexOu+1 - for e in etapes[:indexOu] : - nom=e.nom - if nom not in self.editor.readercata.Classement_Commandes_Ds_Arbre : continue - indexEtape=self.editor.readercata.Classement_Commandes_Ds_Arbre.index(nom) - if indexEtape > indexName : - comment=tr('le mot clef ')+name+tr(' doit etre insere avant ')+nom - QMessageBox.information( None,tr('insertion impossible'),comment, ) - return False - for e in etapes[indexOu:] : - nom=e.nom - if nom not in self.editor.readercata.Classement_Commandes_Ds_Arbre : continue - indexEtape=self.editor.readercata.Classement_Commandes_Ds_Arbre.index(nom) - if indexEtape < indexName : - comment=tr('le mot clef ')+name+tr(' doit etre insere apres ')+nom - QMessageBox.information( None,tr('insertion impossible'),comment, ) - return False - return True - - def appendChild(self,name,pos=None,plier=False): - #------------------------------------------------ - """ - Methode pour ajouter un objet fils a l'objet associe au noeud self. - On peut l'ajouter en debut de liste (pos='first'), en fin (pos='last') - ou en position intermediaire. - Si pos vaut None, on le place a la position du catalogue. - """ - #print ("************** appendChild ",self.item.getLabelText(), pos, plier) - #import traceback - #traceback.print_stack() - - - self.editor.initModif() - if pos == 'first' : index = 0 - elif pos == 'last' : index = len(self.children) - elif type(pos) == int : index = pos # position fixee - elif type(pos) == object : index = self.item.getIndex(pos) +1 # pos est un item. Il faut inserer name apres pos - elif type(name) == object : index = self.item.getIndexChild(name.nom) - else : index = self.item.getIndexChild(name) - - # si on essaye d inserer a la racine - if (isinstance(self.treeParent,JDCTree) and index==0) : - verifiePosition=self.verifiePosition(name,'first',aLaRacine=True) - if not verifiePosition : return 0 - - self.tree.inhibeExpand = True - obj = self.item.addItem(name,index) # emet le signal 'add' - if obj is None : obj=0 - if obj == 0 :return 0 - - try : - #if 1 : - child = self.children[index] - if plier == True : child.setPlie() - else : child.setDeplie() - except : - child=self.children[index] - - try : - if len(obj) > 1 : self.buildChildren() - except : pass - - self.tree.inhibeExpand=False - #print (" fin append child") - return child - - def deplace(self): - #----------------- - self.editor.initModif() - index = self.treeParent.children.index(self) - 1 - if index < 0 : index =0 - ret=self.treeParent.item.deplaceEntite(self.item.getObject()) - - def delete(self): - #---------------- - """ - Methode externe pour la destruction de l'objet associe au noeud - """ - self.editor.initModif() - index = self.vraiParent.children.index(self) - 1 - if index < 0 : index =0 - - recalcule=0 - if self.item.nom == "VARIABLE" : - recalcule=1 - jdc=self.item.jdc - - ret,commentaire=self.vraiParent.item.suppItem(self.item) - if ret==0 : self.editor.afficheInfos(commentaire,Qt.red) - else : self.editor.afficheInfos(commentaire) - self.treeParent.buildChildren() - if self.treeParent.childrenComplete : toselect=self.treeParent.childrenComplete[index] - else : toselect=self.treeParent - - if recalcule : jdc.recalculeEtatCorrelation() - if ret==0 : - if self.treeParent.childrenComplete : - notdeleted=self.treeParent.childrenComplete[index+1] - notdeleted.select() - else : - toselect.select() - - from InterfaceQT4 import compojdc - # cas ou on detruit dans l arbre sans affichage - if isinstance(self.treeParent,compojdc.Node) : - toselect.affichePanneau() - else : - if self.treeParent.fenetre== None : return - #print "J appelle reaffiche de browser apres delete" - self.treeParent.fenetre.reaffiche(toselect) - - def deleteMultiple(self,liste=()): - #-------------------------------- - """ - Methode externe pour la destruction d une liste de noeud - """ - from InterfaceQT4 import compojdc - self.editor.initModif() - index=9999 - recalcule=0 - jdc=self.treeParent - parentPosition=jdc - while not(isinstance(jdc,compojdc.Node)): - jdc=jdc.treeParent - for noeud in liste : - if not( isinstance(noeud.treeParent, compojdc.Node)): continue - if noeud.item.nom == "VARIABLE" : recalcule=1 - if noeud.treeParent.children.index(noeud) < index : index=noeud.treeParent.children.index(noeud) - if index < 0 : index =0 - - # Cas ou on detruit dans une ETape - if index == 9999 : - parentPosition=self.treeParent - while not(isinstance(parentPosition, compojdc.Node)): - index=parentPosition.treeParent.children.index(parentPosition) - parentPosition=parentPosition.treeParent - - for noeud in liste: - noeud.treeParent.item.suppItem(noeud.item) - - jdc.buildChildren() - if recalcule : jdc.recalculeEtatCorrelation() - try : toselect=parentPosition.children[index] - except : toselect=jdc - toselect.select() - toselect.affichePanneau() -# -# ------------------------------------------------------------------ - - def onValid(self): - #----------------- - if self.JESUISOFF==1 : return - - if hasattr(self,'fenetre') and self.fenetre: - try : self.fenetre.setValide() - except : pass - - # PNPN lignes suivantes a repenser - #if (self.item.nom == "VARIABLE" or self.item.nom == "DISTRIBUTION") and self.item.isValid(): - # self.item.jdc.recalculeEtatCorrelation() - #print (hasattr(self.item,'forceRecalcul')) - #if hasattr(self.item,'forceRecalcul') : self.forceRecalculChildren(self.item.forceRecalcul) - self.editor.initModif() - - self.updateNodeValid() - self.updateNodeLabel() - self.updateNodeTexte() - - - def onAdd(self,object): - #---------------------- - #print ("onAdd pour ", self.item.nom, object) - if self.JESUISOFF == 1 : return - self.editor.initModif() - self.updateNodes() - if hasattr(self.item,'jdc'): self.item.jdc.aReafficher=True - - def onSupp(self,object): - #----------------------- - #print ("onSup pour ", self.item.nom, object) - #import traceback - #traceback.print_stack() - if self.JESUISOFF==1 : return - self.editor.initModif() - self.updateNodes() - if hasattr(self.item,'jdc'): self.item.jdc.aReafficher=True - - def onRedessine(self): - #--------------------- - #print ('!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!je passe dans onRedessine pour', self.item.nom) - self.affichePanneau() - - def updateNodeValid(self): - #----------------------- - """Cette methode remet a jour la validite du noeud (icone) - Elle appelle isValid - """ - repIcon = self.appliEficas.repIcon - couleur = self.item.getIconName() - monIcone = QIcon(repIcon+"/" + couleur + ".png") - self.setIcon(0,monIcone) - #print (self.item.nom) - - - - def updateNodeLabel(self): - #------------------------- - """ Met a jour le label du noeud """ - #print ("NODE updateNodeLabel", self.item.getLabelText()) - labeltext,fonte,couleur = self.item.getLabelText() - # PNPN a reflechir - if self.item.nom != tr(self.item.nom) : labeltext = str(tr(self.item.nom)+" :") - self.setText(0, tr(labeltext)) - - def updateNodeLabelInBlack(self): - #------------------------------- - if hasattr(self.appliEficas,'noeudColore'): - self.appliEficas.noeudColore.setForeground(0,Qt.black) - self.appliEficas.noeudColore.updateNodeLabel - - def updateNodeLabelInBlue(self): - #------------------------------- - if hasattr(self.appliEficas,'noeudColore'): self.appliEficas.noeudColore.setForeground(0,Qt.black) - self.setForeground(0,Qt.blue) - labeltext,fonte,couleur = self.item.getLabelText() - if self.item.nom != tr(self.item.nom) : labeltext = str(tr(self.item.nom)+" :") - self.setText(0, labeltext) - self.appliEficas.noeudColore=self - - def updatePlusieursNodeLabelInBlue(self,liste): - #---------------------------------------------- - if hasattr(self.appliEficas,'listeNoeudsColores'): - for noeud in self.appliEficas.listeNoeudsColores: - noeud.setTextColor( 0,Qt.black) - noeud.updateNodeLabel() - self.appliEficas.listeNoeudsColores=[] - for noeud in liste : - noeud.setTextColor( 0,Qt.blue ) - labeltext,fonte,couleur = noeud.item.getLabelText() - noeud.setText(0, labeltext) - self.appliEficas.listeNoeudsColores.append(noeud) - - def updateNodeTexteInBlack(self): - #-------------------------------- - """ Met a jour les noms des SD et valeurs des mots-cles """ - self.setTextColor( 1,Qt.black ) - value = self.item.getText() - self.setText(1, value) - - def updateNodeTexte(self): - #---------------------------- - """ Met a jour les noms des SD et valeurs des mots-cles """ - value = self.item.getText() - self.setText(1, value) - - - def updateNodeTexteInBlue(self): - #-------------------------------- - self.setTextColor( 1,Qt.blue ) - value = self.item.getText() - self.setText(1, value) - - def updateNodes(self): - #-------------------------------- - #print 'NODE updateNodes', self.item.getLabelText() - self.buildChildren() - - def updateValid(self) : - #---------------------- - """Cette methode a pour but de mettre a jour la validite du noeud - et de propager la demande de mise a jour a son parent - """ - #print "NODE updateValid", self.item.getLabelText() - self.updateNodeValid() - try : self.treeParent.updateValid() - except: pass - - def updateTexte(self): - #---------------------- - """ Met a jour les noms des SD et valeurs des mots-cles """ - #print "NODE updateTexte", self.item.getLabelText() - self.updateNodeTexte() - if self.isExpanded() : - for child in self.children: - if child.isHidden() == false : child.updateTexte() - - - def forceRecalculChildren(self,niveau): - #-------------------------------------- - if self.state == 'recalcule' : - self.state = "" - return - self.state='recalcule' - if hasattr(self.item,'object'): - self.item.object.state="modified" - for child in self.children: - if niveau > 0 : child.forceRecalculChildren(niveau - 1) - - - - def doPaste(self,node_selected,pos='after'): - #-------------------------------------------- - """ - Declenche la copie de l'objet item avec pour cible - l'objet passe en argument : node_selected - """ - objet_a_copier = self.item.getCopieObjet() - child=node_selected.doPasteCommande(objet_a_copier,pos) - if self.editor.fenetreCentraleAffichee : self.editor.fenetreCentraleAffichee.node.affichePanneau() - self.updateNodeLabelInBlack() - return child - - def doPasteCommande(self,objet_a_copier,pos='after'): - #----------------------------------------------------- - """ - Realise la copie de l'objet passe en argument qui est necessairement - un onjet - """ - child=None - try : - #if 1 : - child = self.appendBrother(objet_a_copier,pos) - except : - pass - return child - - def doPastePremier(self,objet_a_copier): - #--------------------------------------- - """ - Realise la copie de l'objet passe en argument (objet_a_copier) - """ - objet = objet_a_copier.item.getCopieObjet() - child = self.appendChild(objet,pos='first') - return child - - def plieToutEtReafficheSaufItem(self, itemADeplier): - #--------------------------------------------------- - self.inhibeExpand=True - from InterfaceQT4 import compojdc - if (isinstance(self, compojdc.Node)) : - self.affichePanneau() - self.inhibeExpand=False - return - self.editor.deplier = False - for item in self.children : - # il ne faut pas plier les blocs - from InterfaceQT4 import compobloc - if (isinstance(item,compobloc.Node)) : continue - item.setPlie() - if item==itemADeplier : - itemADeplier.setDeplie() - self.affichePanneau() - self.inhibeExpand=False - - def plieToutEtReaffiche(self): - #----------------------------- - #print ('plieToutEtReaffiche', self.item.getNom()) - from InterfaceQT4 import compojdc - if (isinstance(self, compojdc.Node)) : self.affichePanneau(); return - self.inhibeExpand=True - self.editor.deplier = False - for item in self.children : - # il ne faut pas plier les blocs - from InterfaceQT4 import compobloc - if (isinstance(item,compobloc.Node)) : continue - item.setPlie() - self.affichePanneau() - #print ("fin plieToutEtReaffiche", self.item.getNom()) - - def deplieToutEtReaffiche(self): - #----------------------------- - self.editor.deplier = True - for item in self.children : - item.setDeplie() - self.affichePanneau() - - def setPlie(self): - #----------------- - #print "je mets inhibeExpand a true dans setPlie" - #print ("je suis dans plieTout", self.item.getNom()) - from . import compojdc - if self.fenetre == self.editor.fenetreCentraleAffichee and isinstance(self.treeParent,compojdc.Node): - return - self.tree.inhibeExpand=True - self.tree.collapseItem(self) - self.setPlieChildren() - self.tree.inhibeExpand=False - #print "je mets inhibeExpand a false dans setPlie" - - - # on ne plie pas au niveau 1 - # self.plie=False - # for item in self.children : - # item.appartientAUnNoeudPlie=False - - def setPlieChildren(self): - #----------------------------- - self.plie=True - from InterfaceQT4 import composimp - if isinstance(self,composimp.Node) : return - for c in self.children : - c.setPlieChildren() - #print "dans setPlieChildren appartientAUnNoeudPlie=True ", c, c.item.getLabelText()[0] - c.appartientAUnNoeudPlie=True - c.plie=True - #print "dans setPlieChildren plie", c.item.nom - # 01/2018 PNPN : boucle sur MT __ La ligne suivante ne me semble pas necessaire - #if not (isinstance(c,composimp.Node)) :c.setExpanded(False) - - # Pour les blocs et les motcles list - # on affiche un niveau de plus - from InterfaceQT4 import compobloc - from InterfaceQT4 import compomclist - if (isinstance(self,compobloc.Node) or ( isinstance(self,compomclist.Node) and self.item.isMCList())) : - niveauPere=self.treeParent - while (isinstance(niveauPere,compobloc.Node) or (isinstance(niveauPere,compomclist.Node) and niveauPere.item.isMCList())) : - niveauPere=niveauPere.treeParent - for c in self.children : - c.appartientAUnNoeudPlie=niveauPere.appartientAUnNoeudPlie - #print ("dans setPlieChildren appartientAUnNoeudPlie=True ", c, c.item.getLabelText()[0], "mis a la valeur ", niveauPere.appartientAUnNoeudPlie) - c.setExpanded(False) - - - def setDeplie(self): - #----------------------------- - #print "dans setPlieChildren pour", self.item.nom - #print "je mets inhibeExpand a true dans setDeplie" - self.tree.inhibeExpand=True - self.plie=False - self.tree.expandItem(self) - self.setDeplieChildren() - self.tree.inhibeExpand=False - #print "je mets inhibeExpand a false dans setDePlie" - - def setDeplieChildren(self): - #----------------------------- - #print "dans setDeplieChildren appartientAUnNoeudPlie=False ", self.item.getLabelText() - for c in self.children : - c.setDeplieChildren() - #print "dans setDeplieChildren ", c.item.nom - c.appartientAUnNoeudPlie=False - c.setExpanded(True) - c.plie=False - - def selectAvant(self): - #----------------------------- - i=self.item.jdc.etapes.index(self.item.object) - try : cherche=self.item.jdc.etapes[i-1] - except : cherche=self.item.jdc.etapes[-1] - node=None - for i in self.tree.racine.children : - if i.item.object== cherche : - node=i - break - if node : - node.affichePanneau() - node.select() - - def selectApres(self): - #--------------------- - i=self.item.jdc.etapes.index(self.item.object) - try : cherche=self.item.jdc.etapes[i+1] - except : cherche=self.item.jdc.etapes[0] - node=None - for i in self.tree.racine.children : - if i.item.object== cherche : - node=i - break - if node : - node.affichePanneau() - node.select() diff --git a/InterfaceQT4/compobloc.py b/InterfaceQT4/compobloc.py deleted file mode 100644 index d0235243..00000000 --- a/InterfaceQT4/compobloc.py +++ /dev/null @@ -1,57 +0,0 @@ -# -*- coding: utf-8 -*- -# Copyright (C) 2007-2021 EDF R&D -# -# 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 -# - - -from __future__ import absolute_import -from Editeur import Objecttreeitem - -from . import compofact -from . import browser -from . import typeNode - - -class Node(browser.JDCNode,typeNode.PopUpMenuNodeMinimal): - - - def createPopUpMenu(self): - typeNode.PopUpMenuNodeMinimal.createPopUpMenu(self) - - - def getPanelGroupe(self,parentQt,commande): - maDefinition=self.item.get_definition() - monObjet=self.item.object - monNom=self.item.nom - maCommande=commande - if hasattr(parentQt,'niveau'): self.niveau=parentQt.niveau+1 - else : self.niveau=1 - from .monWidgetBloc import MonWidgetBloc - widget=MonWidgetBloc(self,self.editor,parentQt,maDefinition,monObjet,self.niveau,maCommande) - - -class BLOCTreeItem(compofact.FACTTreeItem): - itemNode=Node - - def isCopiable(self): - return 0 - - -import Accas -treeitem = BLOCTreeItem -objet = Accas.MCBLOC diff --git a/InterfaceQT4/compocomm.py b/InterfaceQT4/compocomm.py deleted file mode 100644 index f5a0c655..00000000 --- a/InterfaceQT4/compocomm.py +++ /dev/null @@ -1,118 +0,0 @@ -# -*- coding: utf-8 -*- -# Copyright (C) 2007-2021 EDF R&D -# -# 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 -# - -from __future__ import absolute_import - - -from Editeur import Objecttreeitem -from . import browser -from . import typeNode -from Extensions.i18n import tr -from Extensions.eficas_exception import EficasException - - -class Node(browser.JDCNode,typeNode.PopUpMenuNodePartiel): - def getPanel( self ): - """ - """ - from .monWidgetCommentaire import MonWidgetCommentaire - return MonWidgetCommentaire(self,self.editor,self.item.object) - - def createPopUpMenu(self): - typeNode.PopUpMenuNodePartiel.createPopUpMenu(self) - from PyQt5.QtWidgets import QAction - self.Decommente = QAction(tr("decommenter"),self.tree) - self.Decommente.triggered.connect(self.decommenter) - self.Decommente.setStatusTip(tr("Decommente la commande ")) - - if hasattr(self.item,'unComment'): - self.menu.addAction(self.Decommente) - - def decommenter(self) : - item= self.tree.currentItem() - item.unCommentIt() - - def updateNodeLabel(self) : - """ - """ - debComm=self.item.getText() - self.setText(1,tr(debComm)) - - -class COMMTreeItem(Objecttreeitem.ObjectTreeItem): - itemNode=Node - - def init(self): - self.setFunction = self.setValeur - - def getIconName(self): - """ - Retourne le nom de l'icone associee au noeud qui porte self, - dependant de la validite de l'objet - NB : un commentaire est toujours valide ... - """ - return "ast-white-percent" - - def getLabelText(self): - """ Retourne 3 valeurs : - - le texte a afficher dans le noeud representant l'item - - la fonte dans laquelle afficher ce texte - - la couleur du texte - """ - return tr('Commentaire'),None,None - - def getValeur(self): - """ - Retourne la valeur de l'objet Commentaire cad son texte - """ - return self.object.getValeur() or '' - - def getText(self): - texte = self.object.valeur - texte = texte.split('\n')[0] - if len(texte) < 25 : - return texte - else : - return texte[0:24] - - def setValeur(self,valeur): - """ - Affecte valeur a l'objet COMMENTAIRE - """ - self.object.setValeur(valeur) - - def getSubList(self): - """ - Retourne la liste des fils de self - """ - return [] - - - def getObjetCommentarise(self): - """ - La methode getObjetCommentarise() de la classe compocomm.COMMTreeItem - surcharge la methode getObjetCommentarise de la classe Objecttreeitem.ObjectTreeItem - elle a pour but d'empecher l'utilisateur final de commentariser un commentaire. - """ - raise EficasException( 'Impossible de commentariser un commentaire' ) - -import Extensions -treeitem =COMMTreeItem -objet = Extensions.commentaire.COMMENTAIRE diff --git a/InterfaceQT4/compocommandecomm.py b/InterfaceQT4/compocommandecomm.py deleted file mode 100644 index a6ac1686..00000000 --- a/InterfaceQT4/compocommandecomm.py +++ /dev/null @@ -1,94 +0,0 @@ -# -*- coding: utf-8 -*- -# Copyright (C) 2007-2021 EDF R&D -# -# 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 -# -from __future__ import absolute_import -import traceback - -from Editeur import Objecttreeitem -from Extensions.eficas_exception import EficasException -from . import compocomm - -class COMMANDE_COMMTreeItem(Objecttreeitem.ObjectTreeItem): - itemNode=compocomm.Node - - def init(self): - self.setFunction = self.setValeur - - def getIconName(self): - """ - Retourne le nom de l'icone associee au noeud qui porte self, - dependant de la validite de l'objet - NB : une commande commentarisee est toujours valide ... - """ - if self.isValid(): - return "ast-green-percent" - else: - return "ast-red-percent" - - def getLabelText(self): - """ Retourne 3 valeurs : - - le texte a afficher dans le noeud representant l'item - - la fonte dans laquelle afficher ce texte - - la couleur du texte - """ - return 'commentaire' - - def getValeur(self): - """ - Retourne la valeur de la commande commentarisee cad son texte - """ - return self.object.getValeur() or '' - - def getText(self): - texte = self.object.valeur - texte = texte.split('\n')[0] - if len(texte) < 25 : - return texte - else : - return texte[0:24] - - def setValeur(self,valeur): - """ - Afefcte valeur a l'objet commande commentarisee - """ - self.object.setValeur(valeur) - - def getSubList(self): - """ - Retourne la liste des fils de self - """ - return [] - - def unComment(self): - """ - Demande a l'objet commande commentarisee de se decommentariser. - Si l'operation s'effectue correctement, retourne l'objet commande - et eventuellement le nom de la sd produite, sinon leve une exception - """ - try: - commande,nom = self.object.unComment() - #self.parent.children[pos].select() - except Exception as e: - traceback.print_exc() - raise EficasException(e) - return commande,nom - -import Accas -treeitem =COMMANDE_COMMTreeItem -objet = Accas.COMMANDE_COMM diff --git a/InterfaceQT4/compofact.py b/InterfaceQT4/compofact.py deleted file mode 100644 index 0f5c93ed..00000000 --- a/InterfaceQT4/compofact.py +++ /dev/null @@ -1,153 +0,0 @@ -# -*- coding: utf-8 -*- -# Copyright (C) 2007-2021 EDF R&D -# -# 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 -# - -from __future__ import absolute_import -from InterfaceQT4 import browser -from InterfaceQT4 import typeNode -from Extensions.i18n import tr - - -from Editeur import Objecttreeitem -import traceback - - -class Node(browser.JDCNode,typeNode.PopUpMenuNodePartiel): - - def getPanelGroupe(self,parentQt,commande): - # ---------------------------------------- - maDefinition=self.item.get_definition() - monObjet=self.item.object - monNom=self.item.nom - maCommande=commande - if hasattr(parentQt,'niveau'): self.niveau=parentQt.niveau+1 - else : self.niveau=1 - if hasattr(self,'plie') and self.plie==True : - from InterfaceQT4.monWidgetFactPlie import MonWidgetFactPlie - widget=MonWidgetFactPlie(self,self.editor,parentQt,maDefinition,monObjet,self.niveau,maCommande) - elif self.editor.maConfiguration.afficheFirstPlies and self.firstAffiche: - self.firstAffiche = False - self.setPlie() - from InterfaceQT4.monWidgetFactPlie import MonWidgetFactPlie - widget=MonWidgetFactPlie(self,self.editor,parentQt,maDefinition,monObjet,self.niveau,maCommande) - else: - from InterfaceQT4.monWidgetFact import MonWidgetFact - widget=MonWidgetFact(self,self.editor,parentQt,maDefinition,monObjet,self.niveau,maCommande) - return widget - - - def createPopUpMenu(self): - # ------------------------ - typeNode.PopUpMenuNodeMinimal.createPopUpMenu(self) - - -class FACTTreeItem(Objecttreeitem.ObjectTreeItem): - itemNode=Node - - def isExpandable(self): - # ---------------------- - return 1 - - def getText(self): - # ---------------- - return '' - - def getLabelText(self): - # ---------------------- - """ Retourne 3 valeurs : - - le texte à afficher dans le noeud representant l'item - - la fonte dans laquelle afficher ce texte - - la couleur du texte - """ - # None --> fonte et couleur par defaut - if not(hasattr(self.object,'getLabelText')): return self.object.nom,None,None - return self.object.getLabelText(),None,None - - def isValid(self): - # ---------------- - return self.object.isValid() - - def isCopiable(self): - # ---------------- - return 1 - - def getIconName(self): - # ---------------- - if self.object.isValid() : return "ast-green-los" - elif self.object.isOblig(): return "ast-red-los" - else : return "ast-yel-los" - - #PNPN ???? - #def keys(self): - # keys=self.object.mc_dict - # return keys - - def getSubList(self): - # ---------------- - """ - Reactualise la liste des items fils stockes dans self.sublist - """ - liste=self.object.mcListe - sublist=[None]*len(liste) - # suppression des items lies aux objets disparus - for item in self.sublist: - old_obj=item.getObject() - if old_obj in liste: - pos=liste.index(old_obj) - sublist[pos]=item - else: - pass # objets supprimes ignores - # ajout des items lies aux nouveaux objets - pos=0 - for obj in liste: - if sublist[pos] is None: - # nouvel objet : on cree un nouvel item - def setFunction(value, object=obj): - object.setval(value) - item = self.makeObjecttreeitem(self.appliEficas, obj.nom + " : ", obj, setFunction) - sublist[pos]=item - pos=pos+1 - - self.sublist=sublist - return self.sublist - - def addItem(self,name,pos): - objet = self.object.addEntite(name,pos) - return objet - - def suppItem(self,item) : - """ - Cette methode a pour fonction de supprimer l'item passee en argument - des fils de l'item FACT qui est son pere - - item = item du MOCLE a supprimer du MOCLE pere - - item.getObject() = MCSIMP ou MCBLOC - """ - itemobject=item.getObject() - if itemobject.isOblig() : - return (0, tr('Impossible de supprimer un mot-cle obligatoire ')) - - if self.object.suppEntite(itemobject): - message = tr("Mot-cle %s supprime")+ itemobject.nom - return (1, message) - else: - return (0,tr('Pb interne : impossible de supprimer ce mot-cle')) - -import Accas -objet = Accas.MCFACT -treeitem = FACTTreeItem diff --git a/InterfaceQT4/compoformule.py b/InterfaceQT4/compoformule.py deleted file mode 100644 index ebd48714..00000000 --- a/InterfaceQT4/compoformule.py +++ /dev/null @@ -1,196 +0,0 @@ -# -*- coding: utf-8 -*- -# Copyright (C) 2007-2021 EDF R&D -# -# 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 -# - -""" -Ce module contient les classes permettant de definir les objets graphiques -representant un objet de type FORMULE, cad le panneau et l'item de l'arbre -d'EFICAS -""" - -from __future__ import absolute_import -from . import compooper -from . import browser -from . import typeNode - - -class FormuleNode(browser.JDCNode,typeNode.PopUpMenuNode): - - def getPanel(self): - from .monWidgetFormule import MonWidgetFormule - return MonWidgetFormule(self,self.editor,self.item.object) - - - def createPopUpMenu(self): - typeNode.PopUpMenuNode.createPopUpMenu(self) - - -class FORMULETreeItem(compooper.EtapeTreeItem): - """ - Classe servant a definir l'item porte par le noeud de l'arbre d'EFICAS - qui represente la FORMULE - """ - itemNode=FormuleNode - - def init(self): - self.setFunction = self.setValeur - -# --------------------------------------------------------------------------- -# API de FORMULE pour l'arbre -# --------------------------------------------------------------------------- - def getSubList(self): - """ - Retourne la liste des fils de self - On considere que FORMULE n'a pas de fils - --> modification par rapport a MACRO classique - """ - # dans EFICAS on ne souhaite pas afficher les mots-cles fils de FORMULE - # de facon traditionnelle - return [] - - def getIconName(self): - """ - Retourne le nom de l'icone a afficher dans l'arbre - Ce nom depend de la validite de l'objet - """ - if self.object.isActif(): - if self.object.isValid(): - return "ast-green-square" - else: - return "ast-red-square" - else: - return "ast-white-text" - - def getLabelText(self): - """ Retourne 3 valeurs : - - le texte a afficher dans le noeud representant l'item - - la fonte dans laquelle afficher ce texte - - la couleur du texte - """ - return self.labeltext,None,None - #if self.object.isActif(): - # None --> fonte et couleur par defaut - # return tr(self.labeltext),None,None - #else: - # return tr(self.labeltext),None,None - #return self.labeltext,fontes.standard_italique,None - -# --------------------------------------------------------------------------- -# Methodes permettant la modification et la lecture des attributs -# du parametre = API graphique de la FORMULE pour Panel et EFICAS -# --------------------------------------------------------------------------- - - def getNom(self): - """ - Retourne le nom de la FORMULE - """ - return self.object.getNom() - - def getType(self): - """ - Retourne le type de la valeur retournee par la FORMULE - """ - return self.object.type_retourne - - def getArgs(self): - """ - Retourne les arguments de la FORMULE - """ - args="" - for mot in self.object.mcListe: - if mot.nom == 'NOM_PARA': - args=mot.valeur - break - if args : - if args[0] == "(" and args[-1] ==")": - args=args[1:-1] - # transforme en tuple si ce n est pas deja le casa - try : - args=args.split(',') - except : - pass - return args - - def getCorps(self): - """ - Retourne le corps de la FORMULE - """ - corps="" - for mot in self.object.mcListe: - if mot.nom == 'VALE': - corps=mot.valeur - break - return corps - - - def getListeTypesAutorises(self): - """ - Retourne la liste des types autorises pour les valeurs de sortie - d'une FORMULE - """ - return self.object.l_types_autorises - - def saveFormule(self,new_nom,new_typ,new_arg,new_exp): - """ - Verifie si (new_nom,new_typ,new_arg,new_exp) definit bien une FORMULE - licite : - - si oui, stocke ces parametres comme nouveaux parametres de la - FORMULE courante et retourne 1 - - si non, laisse les parametres anciens de la FORMULE inchanges et - retourne 0 - """ - test,erreur = self.object.verifFormule_python(formule=(new_nom,new_typ,new_arg, - new_exp)) - if test : - # la formule est bien correcte : on sauve les nouveaux parametres - test=self.object.updateFormulePython(formule=(new_nom,new_typ,new_exp,new_arg)) - return test,erreur - -# --------------------------------------------------------------------------- -# Acces aux methodes de verification de l'objet FORM_ETAPE -# --------------------------------------------------------------------------- - - def verifNom(self,nom): - """ - Lance la verification du nom passe en argument - """ - return self.object.verifNom(nom) - - def verifArguments(self,arguments): - """ - Lance la verification des arguments passes en argument - """ - return self.object.verifArguments('('+arguments+')') - - def verifFormule(self,formule): - """ - Lance la verification de FORMULE passee en argument - """ - return self.object.verifFormule(formule=formule) - - - def verifFormule_python(self,formule): - """ - Lance la verification de FORMULE passee en argument - """ - return self.object.verifFormule_python(formule=formule) - -import Accas -treeitem =FORMULETreeItem -objet = Accas.FORM_ETAPE diff --git a/InterfaceQT4/compojdc.py b/InterfaceQT4/compojdc.py deleted file mode 100644 index 3c9e5a39..00000000 --- a/InterfaceQT4/compojdc.py +++ /dev/null @@ -1,135 +0,0 @@ -# -*- coding: utf-8 -*- -# Copyright (C) 2007-2021 EDF R&D -# -# 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 -# - -from __future__ import absolute_import -from Editeur import Objecttreeitem -from . import browser -from . import typeNode -from Extensions.i18n import tr - - -class Node(browser.JDCNode,typeNode.PopUpMenuRacine): - - def getPanel(self): - from .monChoixCommande import MonChoixCommande - return MonChoixCommande(self,self.item, self.editor) - - - def createPopUpMenu(self): - typeNode.PopUpMenuRacine.createPopUpMenu(self) - - def addParameters(self,apres): - param=self.appendChild("PARAMETRE",pos=0) - return param - - - -class JDCTreeItem(Objecttreeitem.ObjectTreeItem): - itemNode=Node - - def isExpandable(self): - return 1 - - def getText(self): - return " " - - def getLabelText(self): - # None --> fonte et couleur par defaut - return tr(self.object.nom),None,None - - def getJdc(self): - """ - Retourne l'objet pointe par self - """ - return self.object - - def getIconName(self): - if self.object.isValid(): - return "ast-green-square" - else: - return "ast-red-square" - - #def keys(self): - # if self.object.etapes_niveaux != []: - # return range(len(self.object.etapes_niveaux)) - # else: - # return range(len(self.object.etapes)) - - def addItem(self,name,pos): - cmd = self._object.addEntite(name,pos) - return cmd - - def suppItem(self,item) : - # item = item de l'ETAPE a supprimer du JDC - # item.getObject() = ETAPE ou COMMENTAIRE - # self.object = JDC - - itemobject=item.getObject() - if self.object.suppEntite(itemobject): - if itemobject.nature == "COMMENTAIRE" : - message = tr("Commentaire supprime") - else : - message = tr("Commande %s supprimee",itemobject.nom) - return 1,message - else: - message=tr("Pb interne : impossible de supprimer cet objet") - return 0,message - - def getSubList(self): - """ - Retourne la liste des items fils de l'item jdc. - Cette liste est conservee et mise a jour a chaque appel - """ - if self.object.etapes_niveaux != []: - liste = self.object.etapes_niveaux - else: - liste = self.object.etapes - sublist=[None]*len(liste) - # suppression des items lies aux objets disparus - for item in self.sublist: - old_obj=item.getObject() - if old_obj in liste: - pos=liste.index(old_obj) - sublist[pos]=item - else: - pass # objets supprimes ignores - # ajout des items lies aux nouveaux objets - pos=0 - for obj in liste: - if sublist[pos] is None: - # nouvel objet : on cree un nouvel item - item = self.makeObjecttreeitem(self.appliEficas, obj.nom + " : ", obj) - sublist[pos]=item - pos=pos+1 - - self.sublist=sublist - return self.sublist - - def getLNomsEtapes(self): - """ Retourne la liste des noms des etapes de self.object""" - return self.object.getLNomsEtapes() - - def getListeCmd(self): - listeCmd = self.object.niveau.definition.getListeCmd() - return listeCmd - -import Accas -treeitem =JDCTreeItem -objet = Accas.JDC diff --git a/InterfaceQT4/compomacro.py b/InterfaceQT4/compomacro.py deleted file mode 100644 index 330f8283..00000000 --- a/InterfaceQT4/compomacro.py +++ /dev/null @@ -1,179 +0,0 @@ -# -*- coding: utf-8 -*- -# Copyright (C) 2007-2021 EDF R&D -# -# 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 -# - -# Modules Python -from __future__ import absolute_import -import os,sys -import types -import traceback - -# Modules Eficas -from Editeur import Objecttreeitem -from Extensions.i18n import tr -from InterfaceQT4 import compooper -from InterfaceQT4 import browser -from InterfaceQT4 import typeNode - - -class MACRONode(browser.JDCNode,typeNode.PopUpMenuNode): - - def getPanel(self): - from .monWidgetCommande import MonWidgetCommande - return MonWidgetCommande (self,self.editor ,self.item.object) - - - def createPopUpMenu(self): - typeNode.PopUpMenuNode.createPopUpMenu(self) - -# def view3D(self) : -# from Editeur import TroisDPal -# troisD=TroisDPal.TroisDPilote(self.item,self.editor.appliEficas) -# troisD.envoievisu() - - - -class MACROTreeItem(compooper.EtapeTreeItem): -# """ Cette classe herite d'une grande partie des comportements -# de la classe compooper.EtapeTreeItem -# """ - itemNode=MACRONode - -# ------------------------------------ -# Classes necessaires a INCLUDE -# ------------------------------------ - -class INCLUDETreeItemBase(MACROTreeItem): - - def __init__(self,appliEficas, labeltext, object, setFunction): - MACROTreeItem.__init__(self,appliEficas, labeltext, object, setFunction) - - def isCopiable(self): - return 0 - - -class INCLUDENode(browser.JDCNode,typeNode.PopUpMenuNode): - - def getPanel(self): - from .monWidgetCommande import MonWidgetCommande - return MonWidgetCommande (self,self.editor ,self.item.object) - - def createPopUpMenu(self): - typeNode.PopUpMenuNode.createPopUpMenu(self) - - def makeEdit(self): #,appliEficas,node - if self.item.object.text_converted == 0: - # Le texte du fichier inclus n'a pas pu etre converti par le module convert - msg=tr("Le fichier de commande n'a pas pu etre converti pour etre editable par Eficas\n\n") - msg=msg+self.item.object.text_error - return - - if not hasattr(self.item.object,"jdc_aux") or self.item.object.jdc_aux is None: - #L'include n'est pas initialise - self.item.object.buildInclude(None,"") - - # On cree un nouvel onglet dans le bureau - self.editor.vm.displayJDC( self.item.object.jdc_aux , self.item.object.jdc_aux.nom ) - - -class INCLUDETreeItem(INCLUDETreeItemBase): - itemNode=INCLUDENode - - -# ------------------------------------ -# Classes necessaires a POURSUITE -# ------------------------------------ - -class POURSUITENode(browser.JDCNode, typeNode.PopUpMenuNode): - - def getPanel(self): - from .monWidgetCommande import MonWidgetCommande - return MonWidgetCommande (self,self.editor ,self.item.object) - - def createPopUpMenu(self): - typeNode.PopUpMenuNode.createPopUpMenu(self) - - def makeEdit(self): #,appliEficas,node - if self.item.object.text_converted == 0: - msg=tr("Le fichier de commande n'a pas pu etre converti pour etre editable par Eficas\n\n") - msg=msg+self.item.object.text_error - return - - if not hasattr(self.item.object,"jdc_aux") or self.item.object.jdc_aux is None: - text="""DEBUT() - FIN()""" - self.object.buildPoursuite(None,text) - - # On cree un nouvel onglet dans le bureau - self.editor.vm.displayJDC( self.item.object.jdc_aux , self.item.object.jdc_aux.nom) - -class POURSUITETreeItem(INCLUDETreeItemBase): - itemNode=POURSUITENode - - -# ---------------------------------------- -# Classes necessaires a INCLUDE MATERIAU -# ---------------------------------------- - - -class MATERIAUNode(MACRONode): - - def getPanel(self): - from .monWidgetCommande import MonWidgetCommande - return MonWidgetCommande (self,self.editor ,self.item.object) - - def createPopUpMenu(self): - typeNode.PopUpMenuNode.createPopUpMenu(self) - - def makeView(self) : - if hasattr(self.item.object,'fichier_ini') and self.item.object.fichier_ini==None: - QMessageBox.information( self,tr("Include vide"),tr("L'include doit etre correctement initialise pour etre visualise")) - return - f = open(self.item.object.fichier_ini, "rb") - texte = f.read() - f.close() - from desVisu import DVisu - monVisuDialg=DVisu(parent=self.editor.appliEficas,fl=0) - monVisuDialg.TB.setText(texte) - monVisuDialg.show() - - -class INCLUDE_MATERIAUTreeItem(INCLUDETreeItemBase): - itemNode=MATERIAUNode - -# ------------------------------------ -# TreeItem -# ------------------------------------ - - -def treeitem(appliEficas, labeltext, object, setFunction=None): - """ Factory qui retourne l'item adapte au type de macro : - INCLUDE, POURSUITE, MACRO - """ - if object.nom == "INCLUDE_MATERIAU": - return INCLUDE_MATERIAUTreeItem(appliEficas, labeltext, object, setFunction) - elif object.nom == "INCLUDE" or object.nom== "DICTDATA": - return INCLUDETreeItem(appliEficas, labeltext, object, setFunction) - elif object.nom == "POURSUITE": - return POURSUITETreeItem(appliEficas, labeltext, object, setFunction) - else: - return MACROTreeItem(appliEficas, labeltext, object, setFunction) - -import Accas -objet=Accas.MACRO_ETAPE diff --git a/InterfaceQT4/compomclist.py b/InterfaceQT4/compomclist.py deleted file mode 100644 index 15e2a11f..00000000 --- a/InterfaceQT4/compomclist.py +++ /dev/null @@ -1,218 +0,0 @@ -# -*- coding: utf-8 -*- -# Copyright (C) 2007-2021 EDF R&D -# -# 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 -# - -from __future__ import absolute_import -import types -import traceback - -from . import compofact -from . import browser -from . import typeNode -from Extensions.i18n import tr - -from Editeur import Objecttreeitem -from Noyau.N_OBJECT import ErrorObj - - -class Node(browser.JDCNode,typeNode.PopUpMenuNodeMinimal): - - def createPopUpMenu(self): - typeNode.PopUpMenuNodeMinimal.createPopUpMenu(self) - - def getPanelGroupe(self,parentQt,commande): - maDefinition=self.item.get_definition() - monObjet=self.item.object - monNom=self.item.nom - maCommande=commande - if hasattr(parentQt,'niveau'): self.niveau=parentQt.niveau+1 - else : self.niveau=1 - # attention si l objet est une mclist on utilise bloc - if not (monObjet.isMCList()) : - if hasattr(self,'plie') and self.plie==True : - from InterfaceQT4.monWidgetFactPlie import MonWidgetFactPlie - widget=MonWidgetFactPlie(self,self.editor,parentQt,maDefinition,monObjet,self.niveau,maCommande) - elif self.editor.maConfiguration.afficheFirstPlies and self.firstAffiche: - self.firstAffiche = False - self.setPlie() - from InterfaceQT4.monWidgetFactPlie import MonWidgetFactPlie - widget=MonWidgetFactPlie(self,self.editor,parentQt,maDefinition,monObjet,self.niveau,maCommande) - else: - from InterfaceQT4.monWidgetFact import MonWidgetFact - widget=MonWidgetFact(self,self.editor,parentQt,maDefinition,monObjet,self.niveau,maCommande) - else : - from InterfaceQT4.monWidgetBloc import MonWidgetBloc - widget=MonWidgetBloc(self,self.editor,parentQt,maDefinition,monObjet,self.niveau,maCommande) - return widget - - - - def doPaste(self,node_selected,pos): - objet_a_copier = self.item.getCopieObjet() - # before est un effet de bord heureux sur l index - child=self.appendBrother(objet_a_copier,'before') - if self.editor.fenetreCentraleAffichee : self.editor.fenetreCentraleAffichee.node.affichePanneau() - self.update_NodeLabelInBlack() - self.parent().buildChildren() - return child - - - -class MCListTreeItem(Objecttreeitem.SequenceTreeItem,compofact.FACTTreeItem): - """ La classe MCListTreeItem joue le role d'un adaptateur pour les objets - du noyau Accas instances de la classe MCLIST. - Elle adapte ces objets pour leur permettre d'etre integres en tant que - noeuds dans un arbre graphique (voir treewidget.py et ObjectTreeItem.py). - Cette classe delegue les appels de methode et les acces - aux attributs a l'objet du noyau soit manuellement soit - automatiquement (voir classe Delegate et attribut object). - """ - itemNode=Node - - def init(self): - # Si l'objet Accas (MCList) a moins d'un mot cle facteur - # on utilise directement ce mot cle facteur comme delegue - self.updateDelegate() - - def updateDelegate(self): - if len(self._object) > 1: - self.setDelegate(self._object) - else: - self.setDelegate(self._object.data[0]) - - def panel(self,jdcdisplay,pane,node): - """ Retourne une instance de l'objet panneau associe a l'item (self) - Si la liste ne contient qu'un mot cle facteur, on utilise le panneau - FACTPanel. - Si la liste est plus longue on utilise le panneau MCLISTPanel. - """ - if len(self._object) > 1: - return MCLISTPanel(jdcdisplay,pane,node) - elif isinstance(self._object.data[0],ErrorObj): - return compoerror.ERRORPanel(jdcdisplay,pane,node) - else: - return compofact.FACTPanel(jdcdisplay,pane,node) - - def isExpandable(self): - if len(self._object) > 1: - return Objecttreeitem.SequenceTreeItem.isExpandable(self) - else: - return compofact.FACTTreeItem.isExpandable(self) - - def getSubList(self): - self.updateDelegate() - if len(self._object) <= 1: - self._object.data[0].alt_parent=self._object - return compofact.FACTTreeItem.getSubList(self) - - liste=self._object.data - sublist=[None]*len(liste) - # suppression des items lies aux objets disparus - for item in self.sublist: - old_obj=item.getObject() - if old_obj in liste: - pos=liste.index(old_obj) - sublist[pos]=item - else: - pass # objets supprimes ignores - # ajout des items lies aux nouveaux objets - pos=0 - for obj in liste: - if sublist[pos] is None: - # nouvel objet : on cree un nouvel item - def setFunction(value, object=obj): - object=value - item = self.makeObjecttreeitem(self.appliEficas, obj.nom + " : ", obj, setFunction) - sublist[pos]=item - #Attention : on ajoute une information supplementaire pour l'actualisation de - # la validite. L'attribut parent d'un MCFACT pointe sur le parent de la MCLISTE - # et pas sur la MCLISTE elle meme ce qui rompt la chaine de remontee des - # informations de validite. alt_parent permet de remedier a ce defaut. - obj.alt_parent=self._object - pos=pos+1 - - self.sublist=sublist - return self.sublist - - def getIconName(self): - if self._object.isValid(): - return "ast-green-los" - elif self._object.isOblig(): - return "ast-red-los" - else: - return "ast-yel-los" - - def getDocu(self): - """ Retourne la clef de doc de l'objet pointe par self """ - return self.object.getDocu() - - def isCopiable(self): - if len(self._object) > 1: - return Objecttreeitem.SequenceTreeItem.isCopiable(self) - else: - return compofact.FACTTreeItem.isCopiable(self) - - def isMCFact(self): - """ - Retourne 1 si l'objet pointe par self est un MCFact, 0 sinon - """ - return len(self._object) <= 1 - - def isMCList(self): - """ - Retourne 1 si l'objet pointe par self est une MCList, 0 sinon - """ - return len(self._object) > 1 - - def getCopieObjet(self): - return self._object.data[0].copy() - - def addItem(self,obj,pos): - #print "compomclist.addItem",obj,pos - if len(self._object) <= 1: - return compofact.FACTTreeItem.addItem(self,obj,pos) - - o= self.object.addEntite(obj,pos) - return o - - def suppItem(self,item): - """ - Retire un objet MCFACT de la MCList (self.object) - """ - #print "compomclist.suppItem",item - obj=item.getObject() - if len(self._object) <= 1: - return compofact.FACTTreeItem.suppItem(self,item) - - if self.object.suppEntite(obj): - if len(self._object) == 1: self.updateDelegate() - message = "Mot-clef " + obj.nom + " supprime" - return (1,message) - else: - return (0,tr('Impossible de supprimer ce mot-clef')) - - -import Accas -objet = Accas.MCList - -def treeitem(appliEficas,labeltext,object,setFunction): - """ Factory qui produit un objet treeitem adapte a un objet - Accas.MCList (attribut objet de ce module) - """ - return MCListTreeItem(appliEficas,labeltext,object,setFunction) diff --git a/InterfaceQT4/compooper.py b/InterfaceQT4/compooper.py deleted file mode 100644 index fd59ff45..00000000 --- a/InterfaceQT4/compooper.py +++ /dev/null @@ -1,280 +0,0 @@ -#-*- coding: iso-8859-1 -*- -# Copyright (C) 2007-2021 EDF R&D -# -# 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 -# -from __future__ import absolute_import -try : - from builtins import str -except : pass - -import os -import tempfile - -from Extensions.i18n import tr -from Extensions.eficas_exception import EficasException - -from Editeur import Objecttreeitem -from . import browser -from . import typeNode - -class Node(browser.JDCNode, typeNode.PopUpMenuNode): - - - def select(self): - browser.JDCNode.select(self) - self.treeParent.tree.openPersistentEditor(self,1) - self.monWidgetNom=self.treeParent.tree.itemWidget(self,1) - self.monWidgetNom.returnPressed.connect(self.nomme) - if self.item.getIconName() == "ast-red-square" : self.monWidgetNom.setDisabled(True) - #else : self.monWidgetNom.setFocus() ;self.monWidgetNom.setDisabled(False) - - def nomme(self): - nom=str(self.monWidgetNom.text()) - self.editor.initModif() - test,mess = self.item.nommeSd(nom) - if (test== 0): - self.editor.afficheInfos(mess,'red') - old=self.item.getText() - self.monWidgetNom.setText(old) - else : - self.editor.afficheCommentaire(tr("Nommage du concept effectue")) - self.onValid() - try : - self.fenetre.LENom.setText(nom) - except : - pass - - - def getPanel(self): - from .monWidgetCommande import MonWidgetCommande - return MonWidgetCommande(self,self.editor,self.item.object) - - def createPopUpMenu(self): - typeNode.PopUpMenuNode.createPopUpMenu(self) - -# def view3D(self) : -# from Editeur import TroisDPal -# troisD=TroisDPal.TroisDPilote(self.item,self.editor.appliEficas) -# troisD.envoievisu() - - -class EtapeTreeItem(Objecttreeitem.ObjectTreeItem): - """ La classe EtapeTreeItem est un adaptateur des objets ETAPE du noyau - Accas. Elle leur permet d'etre affichés comme des noeuds - d'un arbre graphique. - Cette classe a entre autres deux attributs importants : - - _object qui est un pointeur vers l'objet du noyau - - object qui pointe vers l'objet auquel sont délégués les - appels de méthode et les acces aux attributs - Dans le cas d'une ETAPE, _object et object pointent vers le - meme objet. - """ - itemNode=Node - - def isExpandable(self): - return 1 - - def getIconName(self): - """ - Retourne le nom de l'icone a afficher dans l'arbre - Ce nom depend de la validite de l'objet - """ - if not self.object.isActif(): - return "ast-white-square" - elif self.object.isValid(): - return "ast-green-square" - else: - valid=self.validChild() - valid= valid * self.validRegles("non") - if self.reste_val != {} : valid=0 - if valid==0 : - return "ast-red-square" - else : - try : - # on traite ici le cas d include materiau - # print self.object.definition.nom - if self.object.fichier_ini != self.object.nom_mater : - return "ast-red-square" - except : - pass - return "ast-yellow-square" - - def getLabelText(self): - """ Retourne 3 valeurs : - - le texte a afficher dans le noeud représentant l'item - - la fonte dans laquelle afficher ce texte - - la couleur du texte - """ - return self.labeltext,None,None - #if self.object.isActif(): - # None --> fonte et couleur par défaut - # return self.labeltext,None,None - #else: - # return self.labeltext, None, None #CS_pbruno todo - - #def get_objet(self,name) : - # for v in self.object.mcListe: - # if v.nom == name : return v - # return None - - # def getType_sd_prod(self): - # """ - # Retourne le nom du type du concept résultat de l'étape - # """ - # sd_prod=self.object.getType_produit() - # if sd_prod: - # return sd_prod.__name__ - # else: - # return "" - - def addItem(self,name,pos): - mcent = self._object.addEntite(name,pos) - return mcent - - - def suppItem(self,item) : - # item : item du MOCLE de l'ETAPE a supprimer - # item.getObject() = MCSIMP, MCFACT, MCBLOC ou MCList - itemobject=item.getObject() - if itemobject.isOblig() : - return (0,tr('Impossible de supprimer un mot-clef obligatoire ')) - if self.object.suppEntite(itemobject): - message = tr("Mot-clef %s supprime " , itemobject.nom) - return (1,message) - else : - return (0,tr('Pb interne : impossible de supprimer ce mot-clef')) - - def getText(self): - try: - return self.object.getSdname() - except: - return '' - - # PNPN ???? - #def keys(self): - # keys=self.object.mc_dict - # return keys - - def getSubList(self): - """ - Reactualise la liste des items fils stockes dans self.sublist - """ - if self.isActif(): - liste=self.object.mcListe - else: - liste=[] - - sublist=[None]*len(liste) - # suppression des items lies aux objets disparus - for item in self.sublist: - old_obj=item.getObject() - if old_obj in liste: - pos=liste.index(old_obj) - sublist[pos]=item - else: - pass # objets supprimes ignores - - # ajout des items lies aux nouveaux objets - pos=0 - for obj in liste: - if sublist[pos] is None: - # nouvel objet : on cree un nouvel item - def setFunction(value, object=obj): - object.setval(value) - item = self.makeObjecttreeitem(self.appliEficas, obj.nom + " : ", obj, setFunction) - sublist[pos]=item - pos=pos+1 - - self.sublist=sublist - return self.sublist - - def isValid(self): - return self.object.isValid() - - def isCopiable(self): - """ - Retourne 1 si l'objet est copiable, 0 sinon - """ - return 1 - - def updateDeplace(self,item): - if item.sd and item.sd.nom: - self.object.sd=item.sd - self.object.sd.nom=item.sd.nom - - def update(self,item): - if item.sd and item.sd.nom: - self.nommeSd(item.sd.nom) - - def nommeSd(self,nom): - """ Lance la méthode de nommage de la SD """ - oldnom="" - if self.object.sd != None : - oldnom=self.object.sd.nom - test,mess= self.object.nommeSd(nom) - if test:self.object.parent.resetContext() - if (test and oldnom in self.appliEficas.dict_reels ): - self.appliEficas.dict_reels[nom]=self.appliEficas.dict_reels[oldnom] - return test,mess - - def isReentrant(self): - return self.object.isReentrant() - - def getNomsSdOperReentrant(self): - return self.object.getNomsSdOperReentrant() - - def getObjetCommentarise(self): - """ - Cette méthode retourne un objet commentarisé - représentatif de self.object - """ - # Format de fichier utilisé - format=self.appliEficas.formatFichierIn - return self.object.getObjetCommentarise(format) - - def getObjetCommentarise_BAK(self): - """ - Cette méthode retourne un objet commentarisé - représentatif de self.object - """ - import generator,Accas - # Format de fichier utilisé - format=self.appliEficas.format_fichier - g=generator.plugins[format]() - texte_commande = g.gener(self.object,format='beautifie') - # Il faut enlever la premiere ligne vide de texte_commande que - # rajoute le generator - rebut,texte_commande = texte_commande.split('\n',1) - # on construit l'objet COMMANDE_COMM repésentatif de self mais non - # enregistré dans le jdc - commande_comment = Accas.COMMANDE_COMM(texte=texte_commande,reg='non', - parent=self.object.parent) - commande_comment.niveau = self.object.niveau - commande_comment.jdc = commande_comment.parent = self.object.jdc - - pos=self.object.parent.etapes.index(self.object) - parent=self.object.parent - self.object.parent.suppEntite(self.object) - parent.addEntite(commande_comment,pos) - - return commande_comment - - -import Accas -treeitem = EtapeTreeItem -objet = Accas.ETAPE diff --git a/InterfaceQT4/compoparam.py b/InterfaceQT4/compoparam.py deleted file mode 100644 index ca9b1c02..00000000 --- a/InterfaceQT4/compoparam.py +++ /dev/null @@ -1,155 +0,0 @@ -# -*- coding: utf-8 -*- -# Copyright (C) 2007-2021 EDF R&D -# -# 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 -# -""" - Ce module contient les classes permettant de definir les objets graphiques - representant un objet de type PARAMETRE, cad le panneau et l'item de l'arbre - d'EFICAS -""" -from __future__ import absolute_import -try : - from builtins import str -except : pass - - -# import modules Python -import types -from Extensions.i18n import tr - -# import modules EFICAS -from Editeur import Objecttreeitem -from . import browser -from . import typeNode - - -class Node(browser.JDCNode,typeNode.PopUpMenuNodePartiel): - def getPanel(self): - """ - """ - from .monWidgetParam import MonWidgetParam - return MonWidgetParam(self, self.editor,self.item.object) - - def createPopUpMenu(self): - typeNode.PopUpMenuNodePartiel.createPopUpMenu(self) - self.menu.removeAction(self.Documentation) - - def doPaste(self,node_selected,pos='after'): - return None - - - -class PARAMTreeItem(Objecttreeitem.ObjectTreeItem): - """ - Classe servant a definir l'item porte par le noeud de l'arbre d'EFICAS - qui represente le PARAMETRE - """ - itemNode=Node - - def init(self): - self.setFunction = self.setValeur - -# --------------------------------------------------------------------------- -# API du PARAMETRE pour l'arbre -# --------------------------------------------------------------------------- - - def getIconName(self): - """ - Retourne le nom de l'icone associee au noeud qui porte self, - dependant de la validite de l'objet - NB : un PARAMETRE est toujours valide ... - """ - if self.isActif(): - if self.isValid(): - return "ast-green-square" - else: - return "ast-red-square" - else: - return "ast-white-square" - - def getLabelText(self): - """ Retourne 3 valeurs : - - le texte a afficher dans le noeud representant l'item - - la fonte dans laquelle afficher ce texte - - la couleur du texte - """ - return tr('PARAMETRE'),None,None - - def getText(self): - """ - Retourne le texte a afficher apres le nom de la commande (ici apres 'parametre') - Ce texte est tronque a 25 caracteres - """ - texte=self.object.nom+"="+str(self.object.valeur) - if type(self.object.valeur) == list : - texte=self.nom+' = [' - for l in self.object.valeur : - texte=texte+str(l) +"," - texte=texte[0:-1]+']' - texte = texte.split('\n')[0] - if len(texte) < 25 : - return texte - else : - return texte[0:24]+'...' - - def getSubList(self): - """ - Retourne la liste des fils de self - """ - return [] - -# --------------------------------------------------------------------------- -# Methodes permettant la modification et la lecture des attributs -# du parametre = API graphique du PARAMETRE pour Panel et EFICAS -# --------------------------------------------------------------------------- - - def getValeur(self): - """ - Retourne la valeur de l'objet PARAMETRE cad son texte - """ - if self.object.valeur is None: return '' - else: return self.object.valeur - - def getNom(self): - """ - Retourne le nom du parametre - """ - return self.object.nom - - def setValeur(self,new_valeur): - """ - Affecte valeur a l'objet PARAMETRE - """ - self.object.setValeur(new_valeur) - - def setNom(self,new_nom): - """ - Renomme le parametre - """ - self.object.setNom(new_nom) - #self.object.setAttribut('nom',new_nom) - - def getFr(self): - """ - Retourne le fr associe au parametre, cad la bulle d'aide pour EFICAS - """ - return tr("Definition d'un parametre") - -import Extensions.parametre -treeitem =PARAMTreeItem -objet = Extensions.parametre.PARAMETRE diff --git a/InterfaceQT4/compoproc.py b/InterfaceQT4/compoproc.py deleted file mode 100644 index f4088abc..00000000 --- a/InterfaceQT4/compoproc.py +++ /dev/null @@ -1,43 +0,0 @@ -# -*- coding: utf-8 -*- -# Copyright (C) 2007-2021 EDF R&D -# -# 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 -# -from __future__ import absolute_import -from Editeur import Objecttreeitem -from . import compooper -from . import browser -from . import typeNode - - -class Node(browser.JDCNode,typeNode.PopUpMenuNode): - - def getPanel(self): - #print "getPanel de compoproc" - from .monWidgetCommande import MonWidgetCommande - return MonWidgetCommande(self,self.editor,self.item.object) - - def createPopUpMenu(self): - typeNode.PopUpMenuNode.createPopUpMenu(self) - - -class ProcEtapeTreeItem(compooper.EtapeTreeItem): - itemNode=Node - -import Accas -treeitem = ProcEtapeTreeItem -objet = Accas.PROC_ETAPE diff --git a/InterfaceQT4/composimp.py b/InterfaceQT4/composimp.py deleted file mode 100644 index 9a78ba63..00000000 --- a/InterfaceQT4/composimp.py +++ /dev/null @@ -1,829 +0,0 @@ -# -*- coding: iso-8859-1 -*- -# Copyright (C) 2007-2021 EDF R&D -# -# 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 -# -# Modules Python -from __future__ import absolute_import -from __future__ import print_function -try : - from builtins import str -except : pass - -import types,os - -from copy import copy,deepcopy -import traceback -from InterfaceQT4 import typeNode - -# Modules Eficas -from Editeur import Objecttreeitem -from InterfaceQT4 import browser -from Noyau.N_CR import justifyText -from Accas import SalomeEntry -from Accas import ASSD -from Accas import UserASSD -from Accas import UserASSDMultiple - -class Node(browser.JDCNode,typeNode.PopUpMenuNodeMinimal): - - def createPopUpMenu(self): - typeNode.PopUpMenuNodeMinimal.createPopUpMenu(self) - - - def getPanelGroupe(self,parentQt,maCommande): - #print (self,self.item.nom, ) - maDefinition=self.item.get_definition() - monObjet=self.item.object - monNom=self.item.nom - - # label informatif - if monObjet.isInformation(): - from InterfaceQT4.monWidgetInfo import MonWidgetInfo - widget=MonWidgetInfo(self,maDefinition,monNom,monObjet,parentQt,maCommande) - self.widget=widget - return widget - - - # Attention l ordre des if est important - # Attention il faut gerer les blocs et les facteurs - # a gerer comme dans composimp - # Gestion des matrices - if self.item.waitMatrice (): - from InterfaceQT4.monWidgetMatrice import MonWidgetMatrice - widget=MonWidgetMatrice(self,maDefinition,monNom,monObjet,parentQt,maCommande) - self.widget=widget - return widget - - #print "____________________________", monNom, self.item.waitCo() - #print "____________________________", monNom, self.item.waitAssd() - # Gestion d'une seule valeur (eventuellement un tuple ou un complexe) - if maDefinition.into != [] and maDefinition.into != None: - if type(maDefinition.into) ==types.FunctionType : monInto=maDefinition.into() - else : monInto = maDefinition.into - - - if maDefinition.max == 1 : - - # A verifier - if maDefinition.intoSug != [] and maDefinition.intoSug != None: - from InterfaceQT4.monWidgetCBIntoSug import MonWidgetCBIntoSug - widget=MonWidgetCBIntoSug(self,maDefinition,monNom,monObjet,parentQt,maCommande) - elif maDefinition.into != [] and maDefinition.into != None: - if maDefinition.fenetreIhm=='menuDeroulant' : - from InterfaceQT4.monWidgetCB import MonWidgetCB - widget=MonWidgetCB(self,maDefinition,monNom,monObjet,parentQt,maCommande) - elif len(monInto) < 4 : - from InterfaceQT4.monWidgetRadioButton import MonWidgetRadioButton - widget=MonWidgetRadioButton(self,maDefinition,monNom,monObjet,parentQt,maCommande) - elif len(monInto) < 7 : - from InterfaceQT4.monWidget4a6RadioButton import MonWidget4a6RadioButton - widget=MonWidget4a6RadioButton(self,maDefinition,monNom,monObjet,parentQt,maCommande) - else : - from InterfaceQT4.monWidgetCB import MonWidgetCB - widget=MonWidgetCB(self,maDefinition,monNom,monObjet,parentQt,maCommande) - - elif self.item.waitBool() : - from InterfaceQT4.monWidgetSimpBool import MonWidgetSimpBool - widget=MonWidgetSimpBool(self,maDefinition,monNom,monObjet,parentQt,maCommande) - elif self.item.waitFichier(): - from InterfaceQT4.monWidgetSimpFichier import MonWidgetSimpFichier - widget=MonWidgetSimpFichier(self,maDefinition,monNom,monObjet,parentQt,maCommande) - - # PNPNPN - a faire - elif self.item.waitDate(): - from InterfaceQT4.monWidgetDate import MonWidgetDate - widget=MonWidgetDate(self,maDefinition,monNom,monObjet,parentQt,maCommande) - elif self.item.waitHeure(): - from InterfaceQT4.monWidgetHeure import MonWidgetHeure - widget=MonWidgetHeure(self,maDefinition,monNom,monObjet,parentQt,maCommande) - - elif self.item.waitTuple() : - num=self.item.object.definition.type[0].ntuple - nomDeLaClasse = 'MonWidgetSimpTuple'+str(num) - nomDuFichier = 'InterfaceQT4.monWidgetSimpTupleN' - try : - #if 1 : - _temp = __import__(nomDuFichier, globals(), locals(), [nomDeLaClasse], 0) - #print (_temp) - MonWidgetSimpTuple = getattr(_temp,nomDeLaClasse) - except : - print ("Pas de Tuple de longueur : ", num) - # print ("Prevenir la maintenance ") - widget=MonWidgetSimpTuple(self,maDefinition,monNom,monObjet,parentQt,maCommande) - - elif self.item.waitComplex(): - from InterfaceQT4.monWidgetSimpComplexe import MonWidgetSimpComplexe - widget=MonWidgetSimpComplexe(self,maDefinition,monNom,monObjet,parentQt,maCommande) - - elif self.item.waitCo(): - if len(self.item.getSdAvantDuBonType()) == 0 : - from InterfaceQT4.monWidgetUniqueSDCO import MonWidgetUniqueSDCO - widget=MonWidgetUniqueSDCO(self,maDefinition,monNom,monObjet,parentQt,maCommande) - else : - from InterfaceQT4.monWidgetSDCOInto import MonWidgetSDCOInto - widget=MonWidgetSDCOInto(self,maDefinition,monNom,monObjet,parentQt,maCommande) - elif self.item.waitAssd(): - - # PN - pour ne pas appeller trop souvent self.item.getSdAvantDuBonType() - if not (self.item.waitUserAssdOrAssdMultipleEnCreation()) : maListe=self.item.getSdAvantDuBonType() - if self.item.waitUserAssdOrAssdMultipleEnCreation() : - from InterfaceQT4.monWidgetCreeUserAssd import MonWidgetCreeUserAssd - widget=MonWidgetCreeUserAssd(self,maDefinition,monNom,monObjet,parentQt,maCommande) - #elif len(self.item.getSdAvantDuBonType()) == 0 : - elif len(maListe) == 0 : - from InterfaceQT4.monWidgetVide import MonWidgetVide - widget=MonWidgetVide(self,maDefinition,monNom,monObjet,parentQt,maCommande) - #elif len(self.item.getSdAvantDuBonType()) < 4 : - elif len(maListe) < 4 : - from InterfaceQT4.monWidgetRadioButton import MonWidgetRadioButtonSD - widget=MonWidgetRadioButtonSD(self,maDefinition,monNom,monObjet,parentQt,maCommande) - #elif len(self.item.getSdAvantDuBonType()) < 7 : - elif len(maListe) < 7 : - from InterfaceQT4.monWidget4a6RadioButton import MonWidget4a6RadioButtonSD - widget=MonWidget4a6RadioButtonSD(self,maDefinition,monNom,monObjet,parentQt,maCommande) - else : - from InterfaceQT4.monWidgetCB import MonWidgetCBSD - widget=MonWidgetCBSD(self,maDefinition,monNom,monObjet,parentQt,maCommande) - - elif self.item.waitSalome() and self.editor.salome: - from InterfaceQT4.monWidgetSimpSalome import MonWidgetSimpSalome - widget=MonWidgetSimpSalome(self,maDefinition,monNom,monObjet,parentQt,maCommande) - - elif self.item.waitTxm(): - from InterfaceQT4.monWidgetSimpTxt import MonWidgetSimpTxt - widget=MonWidgetSimpTxt(self,maDefinition,monNom,monObjet,parentQt,maCommande) - else : - from InterfaceQT4.monWidgetSimpBase import MonWidgetSimpBase - widget=MonWidgetSimpBase(self,maDefinition,monNom,monObjet,parentQt,maCommande) - - # Gestion des listes - else : - if maDefinition.intoSug != [] and maDefinition.intoSug != None: - if self.item in self.editor.listeDesListesOuvertes or not(self.editor.afficheListesPliees) : - from InterfaceQT4.monWidgetIntoSug import MonWidgetIntoSug - widget=MonWidgetIntoSug(self,maDefinition,monNom,monObjet,parentQt,maCommande) - else : - from InterfaceQT4.monWidgetPlusieursPlie import MonWidgetPlusieursPlie - widget=MonWidgetPlusieursPlie(self,maDefinition,monNom,monObjet,parentQt,maCommande) - #if maDefinition.into != [] and maDefinition.into != None: - # Attention pas fini --> on attend une liste de ASSD avec ordre - elif self.item.waitAssd() and self.item.isListSansOrdreNiDoublon(): - listeAAfficher = self.item.getSdAvantDuBonType() - if len(listeAAfficher) == 0: - from InterfaceQT4.monWidgetVide import MonWidgetVide - widget = MonWidgetVide(self,maDefinition,monNom,monObjet,parentQt,maCommande) - else : - from InterfaceQT4.monWidgetPlusieursInto import MonWidgetPlusieursInto - widget=MonWidgetPlusieursInto(self,maDefinition,monNom,monObjet,parentQt,maCommande) - elif self.item.waitAssd() and not self.item.waitUserAssdOrAssdMultipleEnCreation() : - listeAAfficher = self.item.getSdAvantDuBonType() - # a changer selon UserASSD ou UserASSDMultiple - mctype=maDefinition.type[0] - enable_salome_selection = self.editor.salome and \ - (('grma' in repr(mctype)) or ('grno' in repr(mctype)) or ('SalomeEntry' in repr(mctype)) or \ - (hasattr(mctype, "enable_salome_selection") and mctype.enable_salome_selection)) - if enable_salome_selection: - from InterfaceQT4.monWidgetPlusieursBase import MonWidgetPlusieursBase - widget=MonWidgetPlusieursBase(self,maDefinition,monNom,monObjet,parentQt,maCommande) - elif len(listeAAfficher) == 0: - from InterfaceQT4.monWidgetVide import MonWidgetVide - widget = MonWidgetVide(self,maDefinition,monNom,monObjet,parentQt,maCommande) - elif self.item in self.editor.listeDesListesOuvertes or not(self.editor.afficheListesPliees) : - from InterfaceQT4.monWidgetPlusieursASSDIntoOrdonne import MonWidgetPlusieursASSDIntoOrdonne - widget=MonWidgetPlusieursASSDIntoOrdonne(self,maDefinition,monNom,monObjet,parentQt,maCommande) - else : - from InterfaceQT4.monWidgetPlusieursPlie import MonWidgetPlusieursPlieASSD - widget=MonWidgetPlusieursPlieASSD(self,maDefinition,monNom,monObjet,parentQt,maCommande) - elif self.item.waitTuple() : - if self.item.object.definition.fenetreIhm == 'Tableau' : - from InterfaceQT4.monWidgetTableau import MonWidgetTableau - widget=MonWidgetTableau(self,maDefinition,monNom,monObjet,parentQt,maCommande) - else : - num=self.item.object.definition.type[0].ntuple - nomDeLaClasse = 'MonWidgetPlusieursTuple'+str(num) - nomDuFichier = 'InterfaceQT4.monWidgetPlusieursTupleN' - try: - _temp = __import__(nomDuFichier, globals(), locals(), [nomDeLaClasse], 0) - MonWidgetPlusieursTuple = getattr(_temp,nomDeLaClasse) - except : - print ("Pas de Tuple de longueur : ", num) - print ("Prevenir la maintenance ") - widget=MonWidgetPlusieursTuple(self,maDefinition,monNom,monObjet,parentQt,maCommande) - - elif self.item.hasInto(): - if self.item.isListSansOrdreNiDoublon(): - - if self.item in self.editor.listeDesListesOuvertes or not(self.editor.afficheListesPliees) : - from InterfaceQT4.monWidgetPlusieursInto import MonWidgetPlusieursInto - widget=MonWidgetPlusieursInto(self,maDefinition,monNom,monObjet,parentQt,maCommande) - else : - from InterfaceQT4.monWidgetPlusieursPlie import MonWidgetPlusieursPlie - widget=MonWidgetPlusieursPlie(self,maDefinition,monNom,monObjet,parentQt,maCommande) - else : - if self.item in self.editor.listeDesListesOuvertes or not(self.editor.afficheListesPliees) : - from InterfaceQT4.monWidgetPlusieursIntoOrdonne import MonWidgetPlusieursIntoOrdonne - widget=MonWidgetPlusieursIntoOrdonne(self,maDefinition,monNom,monObjet,parentQt,maCommande) - else : - from InterfaceQT4.monWidgetPlusieursPlie import MonWidgetPlusieursPlie - widget=MonWidgetPlusieursPlie(self,maDefinition,monNom,monObjet,parentQt,maCommande) - else : - if self.item.waitUserAssdOrAssdMultipleEnCreation() : - from InterfaceQT4.monWidgetPlusieursCreeUserAssd import MonWidgetPlusieursCreeUserAssd - widget=MonWidgetPlusieursCreeUserAssd(self,maDefinition,monNom,monObjet,parentQt,maCommande) - elif self.item in self.editor.listeDesListesOuvertes or not(self.editor.afficheListesPliees) : - from InterfaceQT4.monWidgetPlusieursBase import MonWidgetPlusieursBase - widget=MonWidgetPlusieursBase(self,maDefinition,monNom,monObjet,parentQt,maCommande) - else : - from InterfaceQT4.monWidgetPlusieursPlie import MonWidgetPlusieursPlie - widget=MonWidgetPlusieursPlie(self,maDefinition,monNom,monObjet,parentQt,maCommande) - - self.widget=widget - return widget - - -class SIMPTreeItem(Objecttreeitem.AtomicObjectTreeItem): - itemNode=Node - - def init(self) : - self.expandable = 0 - - - #----------------------------------------------- - # - # Methodes liees aux informations sur le Panel - # ou au mot-clef simple - # - #----------------------------------------------- - # isList - # hasInto - # getMinMax - # getMultiplicite - # getIntervalle - # getListeValeurs - # getListePossible - - def isList(self): - """ - Cette methode indique si le mot cle simple attend une liste (valeur de retour 1) - ou s'il n'en attend pas (valeur de retour 0) - - Deux cas principaux peuvent se presenter : avec validateurs ou bien sans. - Dans le cas sans validateur, l'information est donnee par l'attribut max - de la definition du mot cle. - Dans le cas avec validateur, il faut combiner l'information precedente avec - celle issue de l'appel de la methode isList sur le validateur.On utilisera - l'operateur ET pour effectuer cette combinaison (AndVal). - """ - is_a_list=0 - min,max = self.getMinMax() - assert (min <= max) - if max > 1 : - is_a_list=1 - # Dans le cas avec validateurs, pour que le mot cle soit considere - # comme acceptant une liste, il faut que max soit superieur a 1 - # ET que la methode isList du validateur retourne 1. Dans les autres cas - # on retournera 0 (n'attend pas de liste) - if self.definition.validators : - is_a_list= self.definition.validators.isList() * is_a_list - return is_a_list - - def isListSansOrdreNiDoublon(self): - if self.definition.homo=="SansOrdreNiDoublon" : return 1 - return 0 - - - def hasInto(self): - """ - Cette methode indique si le mot cle simple propose un choix (valeur de retour 1) - ou s'il n'en propose pas (valeur de retour 0) - - Deux cas principaux peuvent se presenter : avec validateurs ou bien sans. - Dans le cas sans validateur, l'information est donnee par l'attribut into - de la definition du mot cle. - Dans le cas avec validateurs, pour que le mot cle soit considere - comme proposant un choix, il faut que into soit present OU - que la methode hasInto du validateur retourne 1. Dans les autres cas - on retournera 0 (ne propose pas de choix) - """ - has_an_into=0 - if self.definition.into: - has_an_into=1 - elif self.definition.validators : - has_an_into= self.definition.validators.hasInto() - return has_an_into - - def hasIntoSug(self): - if self.definition.intoSug: return 1 - return 0 - - - def getMinMax(self): - """ Retourne les valeurs min et max de la definition de object """ - return self.object.getMinMax() - - def getMultiplicite(self): - """ A preciser. - Retourne la multiplicite des valeurs affectees a l'objet - represente par l'item. Pour le moment retourne invariablement 1. - """ - return 1 - - def getIntervalle(self): - """ - Retourne le domaine de valeur attendu par l'objet represente - par l'item. - """ - return self.object.getintervalle() - - def getListeValeurs(self) : - """ Retourne la liste des valeurs de object """ - valeurs=self.object.getListeValeurs() - try : - if "R" in self.object.definition.type: - clef=self.object.getNomConcept() - if clef in self.appliEficas.dict_reels: - if type(valeurs) == tuple: - valeurs_reelles=[] - for val in valeurs : - if val in self.appliEficas.dict_reels[clef]: - valeurs_reelles.append(self.appliEficas.dict_reels[clef][val]) - else : - valeurs_reelles.append(val) - else : - if valeurs in self.appliEficas.dict_reels[clef]: - valeurs_reelles=self.appliEficas.dict_reels[clef][valeurs] - valeurs=valeurs_reelles - except : - pass - return valeurs - - def getListePossible(self,listeActuelle=[]): - if hasattr(self.definition.validators,'into'): - valeurspossibles = self.definition.validators.into - else: - valeurspossibles = self.get_definition().into - - if listeActuelle==[] : return valeurspossibles - - #On ne garde que les items valides - listevalideitem=[] - if type(valeurspossibles) in (list,tuple) : - pass - else : - valeurspossibles=(valeurspossibles,) - for item in valeurspossibles: - encorevalide=self.valideItem(item) - if encorevalide : - listevalideitem.append(item) - - #on ne garde que les choix possibles qui passent le test de valideListePartielle - listevalideliste=[] - for item in listevalideitem: - encorevalide=self.valideListePartielle(item,listeActuelle) - if encorevalide : - listevalideliste.append(item) - #print listevalideliste - return listevalideliste - - def getListePossibleAvecSug(self,listeActuelle=[]): - if hasattr(self.definition,'intoSug'): - valeurspossibles = self.definition.intoSug - else: - return listeActuelle - - if listeActuelle==[] : return valeurspossibles - valeurspossibles = valeurspossibles+listeActuelle - - #On ne garde que les items valides - listevalideitem=[] - if type(valeurspossibles) in (list,tuple) : - pass - else : - valeurspossibles=(valeurspossibles,) - for item in valeurspossibles: - encorevalide=self.valideItem(item) - if encorevalide : - listevalideitem.append(item) - - #on ne garde que les choix possibles qui passent le test de valideListePartielle - listevalideliste=[] - for item in listevalideitem: - encorevalide=self.valideListePartielle(item,listeActuelle) - if encorevalide : - listevalideliste.append(item) - return listevalideliste - - def getListeParamPossible(self): - liste_param=[] - l1,l2=self.jdc.getParametresFonctionsAvantEtape(self.getEtape()) - for param in self.object.jdc.params: - if param.nom not in l1 : continue - encorevalide=self.valideItem(param.valeur) - if encorevalide: - type_param=param.valeur.__class__.__name__ - for typ in self.definition.type: - if typ=='R': - liste_param.append(param) - if typ=='I' and type_param=='int': - liste_param.append(param) - if typ=='TXM' and type_param=='str': - liste_param.append(repr(param)) - if ('grma' in repr(typ)) and type_param=='str': - liste_param.append(param.nom) - return liste_param - - #-------------------------------------------------- - # - # Methodes liees a la validite des valeurs saisies - # - #--------------------------------------------------- - # valideItem - # valideListePartielle - # valideListeComplete - # infoErreurItem - # infoErreurListe - # isInIntervalle - # isValid - - def valideItem(self,item): - """ - La validation est realisee directement par l'objet - """ - return self.object.valideItem(item) - - def valideListePartielle(self,item,listecourante): - #On protege la liste en entree en la copiant - valeur=list(listecourante) - if item : valeur.append(item) - return self.object.validValeurPartielle(valeur) - - def valideListeComplete (self,valeur): - return self.object.validValeur(valeur) - - def infoErreurItem(self) : - commentaire="" - if self.definition.validators : - commentaire=self.definition.validators.infoErreurItem() - return commentaire - - def aide(self) : - commentaire="" - if self.definition.validators : - commentaire=self.definition.validators.aide() - return commentaire - - def infoErreurListe(self) : - commentaire="" - if self.definition.validators : - commentaire=self.definition.validators.infoErreurListe() - return commentaire - - def isInIntervalle(self,valeur): - """ - Retourne 1 si la valeur est dans l'intervalle permis par - l'objet represente par l'item. - """ - return self.valideItem(valeur) - - def isValid(self): - valide=self.object.isValid() - return valide - - #-------------------------------------------------- - # - # Autres ... - # - #--------------------------------------------------- - # getIconName - # getText - # setValeurCo - # getSdAvantDuBonType - - - def getIconName(self): - if self.appliEficas.maConfiguration.differencieSiDefaut and self.isValid(): - if self.object.definition.defaut != None : - if self.object.valeur == self.object.definition.defaut : return "ast-green-dark-ball" - if self.object.definition.max > 1 and list(self.object.valeur) == list(self.object.definition.defaut) : return "ast-green-dark-ball" - return "ast-green-ball" - elif self.isValid(): - return "ast-green-ball" - elif self.object.isOblig(): - return "ast-red-ball" - else: - return "ast-yel-ball" - - def getText(self): - """ - Classe SIMPTreeItem - Retourne le texte a afficher dans l'arbre representant la valeur de l'objet - pointe par self - """ - if self.waitUserAssdMultiple() or self.object.waitUserAssd() or self.object.waitAssd(): return self.object.nom - text = self.object.getText() - if text == None : text="" - return text - - - def setValeurCo(self,nomCo): - """ - Affecte au MCS pointe par self l'objet de type CO et de nom nom_co - """ - ret = self.object.setValeurCo(nomCo) - #print "setValeurCo",ret - return ret - - def getSdAvantDuBonType(self): - """ - Retourne la liste des noms des SD presentes avant l'etape qui contient - le MCS pointe par self et du type requis par ce MCS - """ - # A changer pour tenir compte des UserASSDMultiple - # ici on passe par parent pour avoir le bon type - #if self.waitUserAssdMultiple() : - # l=self.object.parent.getSdCreeParObjetAvecFiltre(self.object) - # return l - if self.waitUserAssdMultiple() : - l=self.object.getUserAssdPossible() - return l - a=self.object.etape.parent.getSdAvantDuBonType(self.object.etape,self.object.definition.type) - if self.waitUserAssd() : l=self.jdc.getSdCreeParObjet(self.object.definition.type) - else :l=[] - return a+l - - def getSdAvantDuBonTypePourTypeDeBase(self): - a=self.object.jdc.getSdAvantDuBonTypePourTypeDe_Base(self.object.etape,"LASSD") - return a - - def deleteValeurCo(self,valeur=None): - """ - Supprime la valeur du mot cle (de type CO) - il faut propager la destruction aux autres etapes - """ - if not valeur : valeur=self.object.valeur - # XXX faut il vraiment appeler delSdprod ??? - #self.object.etape.parent.delSdprod(valeur) - self.object.etape.parent.deleteConcept(valeur) - - #----------------------------------------------- - # - # Methodes liees au type de l objet attendu - # - #----------------------------------------------- - # waitCo - # waitGeom - # waitComplex - # waitReel - # waitAssd - # getType - - def waitCo(self): - """ - Methode booleenne qui retourne 1 si l'objet pointe par self - attend un objet de type ASSD qui n'existe pas encore (type CO()), - 0 sinon - """ - return self.object.waitCo() - - def waitFichier(self): - maDefinition=self.object.definition - try : - if ('Repertoire' in maDefinition.type[0]) or ('Fichier' in maDefinition.type[0]) : - return 1 - except : - return 0 - - def waitGeom(self): - """ - Methode booleenne qui retourne 1 si l'objet pointe par self - attend un objet GEOM, 0 sinon - """ - return self.object.waitGeom() - - def waitTxm(self): - return self.object.waitTxm() - - - def waitComplex(self): - """ Methode booleenne qui retourne 1 si l'objet pointe par self - attend un complexe, 0 sinon """ - if 'C' in self.object.definition.type: - return 1 - else: - return 0 - - def waitReel(self): - """ Methode booleenne qui retourne 1 si l'objet pointe par self - attend un reel, 0 sinon """ - if 'R' in self.object.definition.type: - return 1 - else: - return 0 - - def waitTuple(self) : - return self.object.waitTuple() - - def waitDate(self): - """ Methode booleenne qui retourne 1 si l'objet pointe par self - attend un reel, 0 sinon """ - if 'DateHHMMAAAA' in self.object.definition.type: - return 1 - else: - return 0 - - def waitHeure(self): - """ Methode booleenne qui retourne 1 si l'objet pointe par self - attend un reel, 0 sinon """ - if 'HeureHHMMSS' in self.object.definition.type: - return 1 - else: - return 0 - - - - def waitTuple(self): - """ Methode booleenne qui retourne 1 si l'objet pointe par self - attend un Tuple, 0 sinon """ - for ss_type in self.object.definition.type: - if repr(ss_type).find('Tuple') != -1 : - return 1 - return 0 - - def waitMatrice(self): - """ Methode booleenne qui retourne 1 si l'objet pointe par self - attend un Tuple, 0 sinon """ - for ss_type in self.object.definition.type: - if repr(ss_type).find('Matrice') != -1 : - return 1 - return 0 - - def waitAssd(self): - """Methode booleenne qui retourne 1 si l'objet pointe par self - attend un objet de type ASSD ou derive, 0 sinon """ - return self.object.waitAssd() - - def waitAssdOrTypeBase(self) : - boo=0 - if len(self.object.definition.type) > 1 : - if self.waitReel() : - boo = 1 - if 'I' in self.object.definition.type : - boo = 1 - return boo - - def waitSalome(self): - monType = self.object.definition.type[0] - if 'grma' in repr(monType) : return True - if 'grno' in repr(monType) : return True - try : - if issubclass(monType, SalomeEntry) : return True - except : - pass - return False - - def getType(self): - """ - Retourne le type de valeur attendu par l'objet represente par l'item. - """ - return self.object.getType() - - #----------------------------------------------------- - # - # Methodes liees a l evaluation de la valeur saisie - # - #----------------------------------------------------- - # evalValeur - # evalValeurItem - # isCO - # traiteReel - - def evalValeur(self,valeur): - """ Lance l'interpretation de 'valeur' (chaine de caracteres) comme valeur de self : - - retourne l'objet associe si on a pu interpreter (entier, reel, ASSD,...) - - retourne 'valeur' (chaine de caracteres) sinon - """ - newvaleur=self.evalVal(valeur) - return newvaleur,1 - - - def evalValeurItem(self,valeur): - """ Lance l'interpretation de 'valeur' qui doit ne pas etre un tuple - - va retourner la valeur de retour et la validite - selon le type de l objet attendu - - traite les reels et les parametres - """ - #print "evalValeurItem",valeur - if valeur==None or valeur == "" : - return None,0 - validite=1 - if self.waitReel(): - valeurinter = self.traiteReel(valeur) - if valeurinter != None : - valeurretour,validite= self.object.evalValeur(valeurinter) - else: - valeurretour,validite= self.object.evalValeur(valeur) - elif self.waitGeom(): - valeurretour,validite = valeur,1 - else : - valeurretour,validite= self.object.evalValeur(valeur) - - if validite == 0: - if (type(valeur) == bytes or type(valeur) == str )and self.object.waitTxm(): - essai_valeur="'" + valeur + "'" - valeurretour,validite= self.object.evalValeur(essai_valeur) - - if hasattr(valeurretour,'__class__'): - #if valeurretour.__class__.__name__ in ('PARAMETRE','PARAMETRE_EVAL'): - if valeurretour.__class__.__name__ in ('PARAMETRE',): - validite=1 - - #if self.waitCo(): - # CCAR : il ne faut pas essayer de creer un concept - # il faut simplement en chercher un existant ce qui a du etre fait par self.object.evalValeur(valeur) - #try: - #valeurretour=Accas.CO(valeur) - #except: - #valeurretour=None - #validite=0 - # on est dans le cas ou on a evalue et ou on n'aurait pas du - if self.object.waitTxm() : - if type(valeurretour) != bytes: - valeurretour=str(valeur) - validite=1 - return valeurretour,validite - - def isCO(self,valeur=None): - """ - Indique si valeur est un concept produit de la macro - Cette methode n'a de sens que pour un MCSIMP d'une MACRO - Si valeur vaut None on teste la valeur du mot cle - """ - # Pour savoir si un concept est un nouveau concept de macro - # on regarde s'il est present dans l'attribut sdprods de l'etape - # ou si son nom de classe est CO. - # Il faut faire les 2 tests car une macro non valide peut etre - # dans un etat pas tres catholique avec des CO pas encore types - # et donc pas dans sdprods (resultat d'une exception dans typeSDProd) - if not valeur:valeur=self.object.valeur - if valeur in self.object.etape.sdprods:return 1 - #if type(valeur) is not types.InstanceType:return 0 - if type(valeur) is not object:return 0 - if valeur.__class__.__name__ == 'CO':return 1 - return 0 - - def isParam(self,valeur) : - for param in self.jdc.params: - if (repr(param) == valeur): - return 1 - return 0 - - def traiteReel(self,valeur): - """ - Cette fonction a pour but de rajouter le '.' en fin de chaine pour un reel - ou de detecter si on fait reference a un concept produit par DEFI_VALEUR - ou un EVAL ... - """ - valeur = valeur.strip() - liste_reels = self.getSdAvantDuBonType() - if valeur in liste_reels: - return valeur - if len(valeur) >= 3 : - if valeur[0:4] == 'EVAL' : - # on a trouve un EVAL --> on retourne directement la valeur - return valeur - if valeur.find('.') == -1 : - # aucun '.' n'a ete trouve dans valeur --> on en rajoute un a la fin - if (self.isParam(valeur)): - return valeur - else: - if valeur.find('e') != -1: - # Notation scientifique ? - try : - r=eval(valeur) - return valeur - except : - return None - else : - return valeur+'.' - else: - return valeur - - -import Accas -treeitem = SIMPTreeItem -objet = Accas.MCSIMP diff --git a/InterfaceQT4/configuration.py b/InterfaceQT4/configuration.py deleted file mode 100644 index d7971bc9..00000000 --- a/InterfaceQT4/configuration.py +++ /dev/null @@ -1,258 +0,0 @@ -# -*- coding: utf-8 -*- -# Copyright (C) 2007-2021 EDF R&D -# -# 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 -# -""" - Ce module sert pour charger les parametres de configuration d'EFICAS -""" -# Modules Python -from __future__ import absolute_import -try : - from builtins import str - from builtins import range - from builtins import object -except : pass - -import os, sys, types, re -import traceback -from Editeur.Eficas_utils import read_file -from Extensions.i18n import tr - - -class configBase(object): - - #------------------------------- - def __init__(self,appliEficas,repIni): - #------------------------------- - - # Classe de base permettant de lire, afficher - # et sauvegarder les fichiers utilisateurs - # On a deux directories : la directory generale (Repertoire d install + Nom du code - # Par exemple : ~/Install_Eficas/EficasV1_14/Openturns_Wrapper - # et la directorie de l utilisateur - # HOME/.Eficas_Openturns - # Le fichier prefs.py va etre lu dans la directory generale - # puis surcharge eventuellement par celui contenu dans ${PREFS_CATA_$CODE} - # par celui de l utilisateur - # le fichier de catalogue va etre lu dans la directory de l utilisateur s il exite - # dans le fichier general sinon - - self.appliEficas = appliEficas - self.code = appliEficas.code - self.salome = appliEficas.salome - if self.salome : self.name="editeur_salome.ini" - else : self.name="editeur.ini" - self.rep_mat = None - self.repIni = repIni - - if self.code == None : self.code='' - if sys.platform[0:5]=="linux" : - self.rep_user = os.path.join(os.environ['HOME'],'.config/Eficas',self.code) - else : - self.rep_user = os.path.join('C:/','.config/Eficas',self.code) - - - self.setValeursParDefaut() - - if self.code != '' : - self.lectureFichierIniStandard() - self.lectureFichierIniIntegrateur() - self.lectureFichierIniUtilisateur() - - if self.boutonDsMenuBar: - self.closeAutreCommande = True - self.closeFrameRechercheCommande = True - - #Particularite des schemas MAP - if hasattr(self,'make_ssCode'): self.make_ssCode(self.ssCode) - - #if self.appliEficas: self.parent=appliEficas.top - #else: self.parent=None - - if not os.path.isdir(self.savedir) : - if sys.platform[0:5]=="linux" : - self.savedir=os.environ['HOME'] - else: - self.savedir='C:/' - - - - def setValeursParDefaut(self): - #----------------------------- - - # Valeurs par defaut - if not os.path.isdir(self.rep_user) : os.makedirs(self.rep_user) - self.path_doc = os.path.abspath(os.path.join(self.repIni,'..','Doc')) - self.exec_acrobat = 'acroread' - nomDir="Eficas_"+self.code - if sys.platform[0:5]=="linux" : - self.savedir = os.path.abspath(os.path.join(os.environ['HOME'],nomDir)) - else: - self.savedir = os.path.abspath('C:/') - self.modeNouvCommande='initial' - self.affiche="alpha" - self.closeAutreCommande = False - self.closeFrameRechercheCommande = False - self.closeFrameRechercheCommandeSurPageDesCommandes = False - self.closeEntete = False - self.closeArbre = False - self.demandeLangue=False - self.suiteTelemac=False - self.nombreDeBoutonParLigne=0 - self.translatorFichier=None - self.dicoImages= {} - self.dicoIcones= {} - self.afficheCommandesPliees = True - self.afficheFirstPlies = False - self.simpleClic = False - self.afficheOptionnelVide=False - self.afficheListesPliees=True - self.boutonDsMenuBar=False - self.ficIcones=None - self.repIcones=None - self.differencieSiDefaut=False - self.typeDeCata='Python' - self.closeParenthese=False - self.closeOptionnel=False - self.afficheFactOptionnel=False - self.enleverActionStructures=False - self.enleverPoubellePourCommande=False - self.enleverParametres=False - self.enleverSupprimer=False - self.ajoutExecution=False - self.utilParExtensions=[] - self.rendVisiblesLesCaches=False - self.pasDeMCOptionnels=False - - self.dumpXSD=False - self.withXSD=False - self.afficheIhm=True - - - - - #-------------------------------------- - def lectureFichierIniStandard(self): - #-------------------------------------- - - name='prefs_'+self.appliEficas.code - try : - prefsCode=__import__(name) - except : - self.catalogues=[] - print ('pas de fichier de prefs') - return - for k in dir(prefsCode): - if (k[0:1] != "__" and k[-1:-2] !='__'): - valeur=getattr(prefsCode,k) - setattr(self,k,valeur) - - - - #-------------------------------------- - def lectureFichierIniIntegrateur(self): - #-------------------------------------- - # Verifie l'existence du fichier "standard" - # appelle la lecture de ce fichier - clef="PREFS_CATA_"+self.code - try : - repIntegrateur=os.path.abspath(os.environ[clef]) - except : - return - - fic_ini_integrateur=os.path.join(repIntegrateur,self.name) - if not os.path.isfile(fic_ini_integrateur): return - txt = read_file(fic_ini_integrateur) - d=locals() - try: - exec(txt, d) - except : - try : - from PyQt5.QtWidgets import QMessageBox - QMessageBox.critical( None, tr("Import du fichier de Configuration"), - tr("Erreur a la lecture du fichier de configuration %s " , str(fic_ini_integrateur))) - except : - print("Erreur a la lecture du fichier de configuration %s " , str(fic_ini_integrateur)) - return - self.labels_eficas.append('rep_aide') - for k in self.labels_eficas : - try : - setattr(self,k,d[k]) - except : - pass - #Glut pour les repertoires materiaux - #et pour la doc - for k in d : - if (k[0:8]=="rep_mat_") or (k[0:8]=="rep_doc_"): - setattr(self,k,d[k]) - - - #-------------------------------------- - def lectureFichierIniUtilisateur(self): - #-------------------------------------- - # Surcharge les parametres standards par les parametres utilisateur s'ils existent - self.fic_ini_utilisateur = os.path.join(self.rep_user,self.name) - if not os.path.isfile(self.fic_ini_utilisateur): return - - txt = read_file(self.fic_ini_utilisateur) - d=locals() - try: - exec(txt, d) - except : - l=traceback.format_exception(sys.exc_info()[0],sys.exc_info()[1],sys.exc_info()[2]) - try : - from PyQt5.QtWidgets import QMessageBox - QMessageBox.critical( None, tr("Import du fichier de Configuration"), - tr("Erreur a la lecture du fichier de configuration %s " , str(fic_ini_integrateur))) - except : - print ("Erreur a la lecture du fichier de configuration %s " , str(fic_ini_integrateur)) - for k in self.labels_user : - try : - setattr(self,k,d[k]) - except : - pass - for k in d : - if (k[0:8]=="rep_mat_") or (k[0:8]=="rep_doc_"): - setattr(self,k,d[k]) - - #-------------------------------------- - def saveParams(self): - #-------------------------------------- - # sauvegarde - # les nouveaux parametres dans le fichier de configuration utilisateur - # - texte="" - for clef in self.labels_user : - if hasattr(self,clef): - valeur=getattr(self,clef) - texte= texte + clef+" = " + repr(valeur) +"\n" - #Glut pour les repertoires materiaux - #et pour la doc - for k in dir(self): - if (k[0:8]=="rep_mat_") or (k[0:8]=="rep_doc_"): - valeur=getattr(self,k) - texte= texte + k+" = " + repr(valeur) +"\n" - - f=open(self.fic_ini_utilisateur,'w+') - f.write(texte) - f.close() -# - - -def makeConfig(appliEficas,rep): - return configBase(appliEficas,rep) diff --git a/InterfaceQT4/editor.py b/InterfaceQT4/editor.py deleted file mode 100755 index 4769c915..00000000 --- a/InterfaceQT4/editor.py +++ /dev/null @@ -1,1205 +0,0 @@ -# -*- coding: utf-8 -*- -# Copyright (C) 2007-2021 EDF R&D -# -# 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 -# -from __future__ import absolute_import -from __future__ import print_function -try : - from builtins import str - from builtins import range -except : pass - -import types,sys,os, re -import subprocess -import traceback - - -from PyQt5.QtWidgets import QWidget, QMessageBox, QFileDialog, QApplication, QSplitter, QLabel -from PyQt5.QtGui import QPalette -from PyQt5.QtCore import QProcess, QFileInfo, QTimer, Qt, QDir, QSize - -import traceback - -# Modules Eficas -from Extensions.i18n import tr - -from Editeur import session -from Editeur import comploader -from Editeur import Objecttreeitem -from InterfaceQT4 import browser - -from desBaseWidget import Ui_baseWidget -from InterfaceQT4.monViewTexte import ViewText -from monWidgetCreeParam import MonWidgetCreeParam - -DictExtensions= {"MAP" : ".map", "TELEMAC" : '.cas'} -debug = False - - -from InterfaceQT4.editorSsIhm import JDCEditorSsIhm - - -class JDCEditor(JDCEditorSsIhm,Ui_baseWidget,QWidget): -# ----------------------------------------- # - """ - Editeur de jdc - """ - -# ---------------------------------------- -# Methodes faisant appel a ssIhm -# ---------------------------------------- - - def __init__ (self,appliEficas,fichier = None, jdc=None, QWParent=None, units = None, include=0): - #------------------------------------------------------------------------------------------------ - - - QWidget.__init__(self,None) - self.setupUi(self) - - self.inhibeSplitter=0 - self.widgetOptionnel=None - self.fenetreCentraleAffichee=None - self.dejaDansPlieTout=False - self.listeDesListesOuvertes=set() - if appliEficas!=None and hasattr(appliEficas,"statusBar"): self.sb = appliEficas.statusBar() - else : self.sb = None - self.QWParent=QWParent - - JDCEditorSsIhm. __init__ (self,appliEficas,fichier, jdc,units,include) - if self.jdc: - comploader.chargerComposants() - self.jdc_item=Objecttreeitem.makeObjecttreeitem( self, "nom", self.jdc ) - - - # Particularites IHM : met la fenetre a jour - - self.initSplitterSizes() - - #self.affiche=self.appliEficas.maConfiguration.affiche - - self.afficheListesPliees=self.maConfiguration.afficheListesPliees - if self.code in ['MAP','CARMELCND','PSEN'] : self.maConfiguration.afficheCommandesPliees=False - if self.code in ['MAP',]: self.fermeArbre() - # self.widgetTree.close() - # self.widgetTree=None - - if self.maConfiguration.closeArbre : self.fermeArbre() - if self.maConfiguration.closeOptionnel : self.fermeOptionnel() - if self.maConfiguration.boutonDsMenuBar : self.appliEficas.remplitIconesCommandes() - - - self.formatFichierOut = self.appliEficas.formatFichierOut - self.formatFichierIn = self.appliEficas.formatFichierIn - - self.node_selected = [] - self.deplier = True - self.message='' - self.afficheApresInsert=False - if self.maConfiguration.closeArbre : self.afficheApresInsert=True - if self.code in ['Adao','ADAO','MAP'] : self.afficheApresInsert=True - if self.code in ['TELEMAC',] : self.enteteQTree='premier' - else : self.enteteQTree='complet' - if self.code in ['Adao','ADAO','TELEMAC','VP'] : self.affichePlie=True - else : self.affichePlie=False - - self.Commandes_Ordre_Catalogue =self.readercata.Commandes_Ordre_Catalogue - - if self.appliEficas.readercata.demandeCatalogue==True : - nomFichierTranslation='translatorFichier'+'_'+str(self.appliEficas.readercata.labelCode) - if hasattr(self.appliEficas.maConfiguration,nomFichierTranslation) : - translatorFichier=getattr(self.appliEficas.maConfiguration,nomFichierTranslation) - from Extensions import localisation - localisation.localise(None,self.appliEficas.langue,translatorFichier=translatorFichier) - - - if self.jdc_item and self.appliEficas.ssIhm==False : - self.tree = browser.JDCTree( self.jdc_item, self ) - self.appliEficas.construitMenu() - - self.adjustSize() - - - #-------------------------------# - def readFile(self, fn): - #--------------------------------# - """ - Public slot to read the text from a file. - @param fn filename to read from (string or QString) - """ - - jdc=JDCEditorSsIhm.readFile(self, fn) - - # Particularites IHM : met le titre de la fenetre a jour -# qApp.restoreOverrideCursor() - if self.fileInfo!= None : self.lastModified = self.fileInfo.lastModified() - nouveauTitre=self.titre+" "+os.path.basename(self.fichier) - self.appliEficas.setWindowTitle(nouveauTitre) - - return jdc - -# --------------------------------------------- -# Methodes Inchangees -# --------------------------------------------- -# _newJDC -# _newJDCInclude -# __generateTempFilename -# getSource -# generDico -# viewJdcSource -# viewJdcPy -# viewJdcRapport -# getFileName -# initModif -# writeFile -# getTextJDC -# verifieChecksum -# getChecksum -# getDico -# chercheGroupes -# chercheDico -# saveFileLegerAs - -# --------------------------------------------- -# Methodes Surchargees -# --------------------------------------------- - - #-----------------------------------------------------------------------# - def _viewText(self, txt, caption = "FILE_VIEWER",largeur=1200,hauteur=600): - #--------------------------------------------------------------------# - w = ViewText( self.QWParent,self ,caption,txt,largeur,hauteur) - w.show() - - #--------------------------------# - def informe(self,titre,txt,critique=True): - #--------------------------------# - if critique : - self.afficheInfos(tr(txt),Qt.red) - QMessageBox.critical( self, tr(titre), tr(txt)) - else : - QMessageBox.warning( self, tr(titre),tr(txt)) - - #--------------------------------# - def ajoutCommentaire(self): - #--------------------------------# - if self.tree.selectedItems()==[] : - QMessageBox.warning( self, tr("Pas de noeud selectionne"),tr("Selectionnez un Noeud \nLe commentaire sera place apres le noeud selectionne")) - return - noeudAvantCommentaire=self.tree.selectedItems()[0] - if noeudAvantCommentaire ==self.tree.racine : - self.tree.racine.appendChild("COMMENTAIRE",pos=0) - return - noeudAvantCommentaire.addComment(True) - - - #----------------------------------------------# - def _viewTextExecute(self, txt, prefix, suffix): - #----------------------------------------------# - self.w = ViewText( self.QWParent ) - self.w.setWindowTitle( "execution" ) - self.monExe=QProcess(self.w) - pid=self.monExe.pid() - nomFichier = self.__generateTempFilename(prefix, suffix = ".sh") - f=open(nomFichier,'w') - f.write(txt) - f.close() - self.monExe.readyReadStandardOutput.connect( self.readFromStdOut) - self.monExe.readyReadStandardError.connect( self.readFromStdErr) - exe='sh ' + nomFichier - self.monExe.start(exe) - self.monExe.closeWriteChannel() - self.w.exec_() - try: - commande="rm "+ nomFichier - os.system(commande) - except : - pass - - def readFromStdErr(self): - a=self.monExe.readAllStandardError() - self.w.view.append(str(a.data())) - - def readFromStdOut(self) : - a=self.monExe.readAllStandardOutput() - self.w.view.append(str(a.data())) - - - #-----------------------# - def gestionParam(self): - #-----------------------# - w = MonWidgetCreeParam( self) - w.show() - - - #----------------# - def closeIt(self): - #----------------# - """ - Public method called by the viewmanager to finally get rid of us. - """ - if self.jdc: self.jdc.supprime() - self.close() - - #----------------------------------------------# - def afficheInfos(self,message,couleur=Qt.black): - #----------------------------------------------# - if couleur=='red' : couleur = Qt.red - if self.sb: - mapalette=self.sb.palette() - mapalette.setColor( QPalette.WindowText, couleur ) - self.sb.setPalette( mapalette ); - self.sb.showMessage(message,4000) - self.couleur=couleur - - #------------------------------# - def afficheAlerte(self,titre,message): - #------------------------------# - # appele par I_MACRO_ETAPE - QMessageBox.information( self, titre, message) - - #-----------------------------------# - def afficheCommentaire(self,message): - #-----------------------------------# - self.labelCommentaire.setText(message) - QTimer.singleShot(6000, self.rendInvisible) - - #----------------------# - def rendInvisible(self): - #----------------------# - self.labelCommentaire.setText("") - - #---------------------------------------# - def chercheNoeudSelectionne(self,copie=1): - #---------------------------------------# - """ - appele par Cut et Copy pour positionner self.node_selected - """ - self.node_selected=[] - if len(self.tree.selectedItems()) == 0 : return - self.node_selected=self.tree.selectedItems() - - - #---------------------# - def handleSupprimer(self): - #---------------------# - self.chercheNoeudSelectionne() - if len(self.node_selected) == 0 : return - self.QWParent.noeud_a_editer = [] - if self.node_selected[0]==self.tree.racine: return - if len(self.node_selected) == 1 : self.node_selected[0].delete() - else : self.node_selected[0].deleteMultiple(self.node_selected) - - #---------------------# - def handleRechercher(self): - #---------------------# - from .monRecherche import DRecherche - monRechercheDialg=DRecherche(parent=self,fl=0) - monRechercheDialg.show() - - - #--------------------------------# - def handleRechercherDsCatalogue(self): - #-----------------------------# - from .monRechercheCatalogue import DRechercheCatalogue - monRechercheDialg=DRechercheCatalogue(self.QWParent,self) - monRechercheDialg.show() - - #---------------------# - def handleDeplier(self): - #---------------------# - if self.tree == None : return - #self.tree.collapseAll() - if self.deplier : - #print "je plie" - self.tree.expandItem(self.tree.topLevelItem(0)) - self.deplier = False - if self.fenetreCentraleAffichee != None : - if hasattr(self.fenetreCentraleAffichee.node,'plieToutEtReaffiche'): - self.fenetreCentraleAffichee.node.plieToutEtReaffiche() - else: - #print "je deplie" - self.tree.expandItem(self.tree.topLevelItem(0)) - self.deplier = True - if self.fenetreCentraleAffichee != None : - if hasattr(self.fenetreCentraleAffichee.node,'deplieToutEtReaffiche'): - self.fenetreCentraleAffichee.node.deplieToutEtReaffiche() - - #---------------------# - def handleEditCut(self): - #---------------------# - """ - Stocke dans Eficas.noeud_a_editer le noeud a couper - """ - #print "handleEditCut" - self.chercheNoeudSelectionne() - self.QWParent.edit="couper" - self.QWParent.noeud_a_editer = self.node_selected - - #-----------------------# - def handleEditCopy(self): - #-----------------------# - """ - Stocke dans Eficas.noeud_a_editer le noeud a copier - """ - self.chercheNoeudSelectionne() - if len(self.node_selected) == 0 : return - if len(self.node_selected) == 1 : self.node_selected[0].updateNodeLabelInBlue() - else : self.node_selected[0].updatePlusieursNodeLabelInBlue(self.node_selected) - self.QWParent.edit="copier" - self.QWParent.noeud_a_editer = self.node_selected - - #------------------------# - def handleEditPaste(self): - #------------------------# - """ - Lance la copie de l'objet place dans self.QWParent.noeud_a_editer - Ne permet que la copie d'objets de type Commande ou MCF - """ - self.chercheNoeudSelectionne() - if (not(hasattr(self.QWParent,'noeud_a_editer'))) or len(self.QWParent.noeud_a_editer)==0: - QMessageBox.information( self, - tr("Copie impossible"), - tr("Veuillez selectionner un objet a copier")) - return - if len(self.node_selected) != 1 : - QMessageBox.information( self, - tr("Copie impossible"), - tr("Veuillez selectionner un seul objet : la copie se fera apres le noeud selectionne")) - return - noeudOuColler=self.node_selected[0] - - if len(self.QWParent.noeud_a_editer)!=1: - #self.handleEditPasteMultiple() - QMessageBox.information( self, tr("Copie impossible"), tr("Aucun Objet n a ete copie ou coupe")) - return - - noeudACopier=self.QWParent.noeud_a_editer[0] - - if (self.QWParent.edit != "couper"): - #print (noeudOuColler.item.parent.getChild(noeudOuColler.item.nom)) - try: - if noeudOuColler == self.tree.racine : - child=noeudOuColler.doPastePremier(noeudACopier) - else : - child=noeudACopier.doPaste(noeudOuColler,'after') - - if child==None or child==0: - QMessageBox.critical( self,tr( "Copie refusee"),tr('Eficas n a pas reussi a copier l objet')) - self.message = '' - self.afficheInfos("Copie refusee",Qt.red) - if noeudACopier.treeParent.editor != noeudOuColler.treeParent.editor: - try : - nom=noeudACopier.item.sd.nom - child.item.nommeSd(nom) - except : - pass - return - self.initModif() - child.select() - except : - traceback.print_exc() - QMessageBox.critical( self,tr( "Copie refusee"),tr('Copie refusee pour ce type d objet')) - self.message = '' - self.afficheInfos("Copie refusee",Qt.red) - return - - # il faut declarer le JDCDisplay_courant modifie - # suppression eventuelle du noeud selectionne - # si possible on renomme l objet comme le noeud couper - - if (self.QWParent.edit == "couper"): - if noeudACopier.treeParent.editor != noeudOuColler.treeParent.editor: - QMessageBox.critical( self, tr("Deplacement refuse"),tr('Deplacement refuse entre 2 fichiers. Seule la copie est autorisee ')) - - #if 1: - try : - # indexNoeudACopier=noeudACopier.treeParent.children.index(noeudACopier) - indexNoeudACopier=self.getTreeIndex(noeudACopier) - noeudACopier.treeParent.item.deplaceEntite(indexNoeudACopier,indexNoeudOuColler,pos) - noeudACopier.treeParent.buildChildren() - - #else: - except: - pass - self.QWParent.noeud_a_editer=[] - - # on rend la copie a nouveau possible en liberant le flag edit - self.QWParent.edit="copier" - noeudACopier.select() - - #----------------------------------# - def handleDeplaceMultiple(self): - #----------------------------------# - pass - - #----------------------------------# - def handleEditPasteMultiple(self): - #----------------------------------# - - # On ne garde que les niveaux "Etape" - # On insere dans l'ordre du JDC - listeNoeudsACouper=[] - listeIndex=[] - listeChild=[] - listeItem=[] - from InterfaceQT4 import compojdc - noeudOuColler=self.node_selected[0] - if not (isinstance(noeudOuColler.treeParent, compojdc.Node)): - QMessageBox.information( self, - tr("Copie impossible a cet endroit",), - tr("Veuillez selectionner une commande, un parametre, un commentaire ou une macro")) - return - indexNoeudOuColler=noeudOuColler.treeParent.children.index(noeudOuColler) - - for noeud in self.QWParent.noeud_a_editer : - if not (isinstance(noeud.treeParent, compojdc.Node)): continue - indexInTree=noeud.treeParent.children.index(noeud) - indice = 0 - for index in listeIndex: - if index < indexInTree : indice = indice +1 - listeIndex.insert(indice, indexInTree) - listeNoeudsACouper.insert(indice, noeud) - - noeudJdc=noeudOuColler.treeParent - dejaCrees=0 - # on les cree a l'envers parcequ'on ajoute a NoeudOuColler - listeIndex.reverse() - for index in listeIndex: - indexTravail=index - if indexNoeudOuColler < index: - indexTravail=indexTravail+dejaCrees - noeudOuColler=noeudJdc.children[indexNoeudOuColler] - noeud=noeudJdc.children[indexTravail] - child=noeud.doPaste(noeudOuColler) - listeChild.append(child) - dejaCrees=dejaCrees+1 - - self.QWParent.noeud_a_editer = [] - for i in range(len(listeIndex)): - noeud=noeudJdc.children[indexNoeudOuColler+1+i] - self.QWParent.noeud_a_editer.append(noeud) - - listeASupprimer=[] - if self.QWParent.edit !="couper" : return - - for index in listeIndex: - indexTravail=index - if indexNoeudOuColler < index: - indexTravail=indexTravail+(len(listeIndex)) - noeud=noeudJdc.children[indexTravail] - - listeItem.append(noeud.item) - listeASupprimer.append(noeud) - - for i in range(len(listeChild)): - self.tree.item.suppItem(listeItem[i]) - listeChild[i].item.update(listeItem[i]) - - self.QWParent.noeud_a_editer = [] - - #----------------------------------# - def handleAjoutEtape(self,nomEtape): - #----------------------------------# - self.chercheNoeudSelectionne() - if len(self.node_selected) == 0 or self.node_selected[0] == self.tree.racine : - nodeOuAjouter=self.tree.racine - nouveau=nodeOuAjouter.appendChild(nomEtape,pos='first') - else : - nodeOuAjouter=self.node_selected[0] - if nodeOuAjouter != self.tree.racine : - while nodeOuAjouter.treeParent != self.tree.racine: - nodeOuAjouter=nodeOuAjouter.treeParent - nouveau=nodeOuAjouter.appendBrother(nomEtape) - try : - self.node_selected[0].setSelected(False) - except : pass - nouveau.setSelected(True) - nouveau.affichePanneau() - - - #---------------------------# - def getFileVariable(self) : - #---------------------------# - titre = tr("Choix d'un fichier XML") - texte = tr("Le fichier contient une commande MODEL\n") - texte = texte+tr('Donnez le nom du fichier XML qui contient la description des variables') - QMessageBox.information( self, titre,tr(texte)) - - fichier = QFileDialog.getOpenFileName(self.appliEficas, - tr('Ouvrir Fichier'), - self.appliEficas.maConfiguration.savedir, - tr('Wrapper Files (*.xml);;''All Files (*)')) - return fichier - - #------------# - def run(self): - #------------# - fonction="run"+self.code - if fonction in JDCEditor.__dict__: JDCEditor.__dict__[fonction](self,) - - #------------# - def saveRun(self): - #------------# - fonction="saveRun"+self.code - if fonction in JDCEditor.__dict__: JDCEditor.__dict__[fonction](self,) - - -# --------------------------------------------- -# Methodes Non Crees dans ssIHM -# --------------------------------------------- - #---------------# - def runVP(self): - #---------------# - texte=self.getTextJDC("MAPVp",pourRun=1) - print (texte) - - #---------------# - def runMAP(self): - #---------------# - - if not(self.jdc.isValid()): - QMessageBox.critical( self, tr( "Execution impossible "),tr("le JDC doit etre valide pour une execution MAP")) - return - if len(self.jdc.etapes) != 1 : - QMessageBox.critical( self, tr("Execution impossible "),tr("le JDC doit contenir un et un seul composant")) - return - if self.modified or self.fichier==None : - self.fichierMapInput = self.__generateTempFilename(prefix = "map_run", suffix = ".map") - texte=self.getTextJDC("MAP") - self.writeFile( self.fichierMapInput, txt = texte) - else : - self.fichierMapInput=self.fichier - composant=self.jdc.etapes[0].nom.lower()[0:-5] - - - # :TRICKY: to determine if a component requires SALOME, loads the component from Eficas catalog - # then instantiate corresponding class and call getUseSalome() method - try: - from mapengine.spec import factory - mapComponent = factory.new(composant)[0] - - command = "map" - if mapComponent.getUseSalome(): - command += " -r sappli" - textePython=(command + " run -n "+composant +" -i "+self.fichierMapInput) - - #textePython="ls -l" - self._viewTextExecute( textePython,"map_run",".sh") - #try: - # commande="rm "+self.fichierMapInput - # os.system(commande) - #except : - # pass - except Exception as e: - print((traceback.print_exc())) - - #-------------------# - def runZCRACKS(self): - #-------------------# - if not(self.jdc.isValid()): - QMessageBox.critical( self, tr( "Execution impossible "),tr("le JDC doit etre valide pour une execution ")) - return - if self.modified or self.fichier==None : - #if 1: - self.fichierZcracksInput = self.__generateTempFilename(prefix = "zcracks_run", suffix = ".z7p") - texte=self.getTextJDC("ZCRACKS",pourRun=1) - self.writeFile( self.fichierZcracksInput, txt = texte) - else : - self.fichierZcracksInput=self.fichier - try : - #commande ="Zrun -zp " - commande="more " - textePython=(commande + self.fichierZcracksInput) - self._viewTextExecute( textePython,"run_zcracks",".sh") - except Exception as e: - print((traceback.print_exc())) - - #-------------------# - def runCARMELCND(self): - #-------------------# - #if not(self.jdc.isValid()): - # QMessageBox.critical( self, tr( "Execution impossible "),tr("le JDC doit etre valide pour une execution ")) - # return - if self.modified or self.fichier==None : - QMessageBox.critical( self, tr( "Execution impossible "),tr("Sauvegarder SVP avant l'execution ")) - return - if not hasattr(self,'generator'): texte=self.getTextJDC(self.formatFichierOut) - from PrepareRunCarmel import prepareRunCarmel - fichierGenerique=os.path.basename(self.fichier).split(".")[0] - repMed=os.path.dirname(self.fichier) - repExeCarmel=self.generator.get_repExeCarmel() - textePython=prepareRunCarmel(repExeCarmel,repMed,fichierGenerique) - nomFichier = self.__generateTempFilename("carmel_run", suffix = ".sh") - f=open(nomFichier,'w') - f.write(textePython) - f.close() - commande="xterm -e sh "+nomFichier +"\n" - os.system(commande) - - #-------------------# - def runCarmelCS(self): - #-------------------# - try : - commande="runSession pilotyacsCS.py" - os.system(commande) - except Exception as e: - print((traceback.print_exc())) - - #-----------------------------------------------------# - def determineNomFichier(self,path,extension): - #-----------------------------------------------------# - if self.appliEficas.code in DictExtensions: - chaine1=DictExtensions[self.appliEficas.code]+" (*."+DictExtensions[self.appliEficas.code]+");;" - extensions= tr(chaine1+ "All Files (*)") - else : - extensions= tr("JDC (*.comm);;" "All Files (*)") - - if self.appliEficas.code == "MAP" : - extensions = extensions + ";; Run (*.input);;" - - fn = QFileDialog.getSaveFileName( self, - tr("sauvegarde"), path, - extensions,None, - QFileDialog.DontConfirmOverwrite) - if fn == None : return (0, None) - fn=fn[0] - if fn=='': return (0, None) - - ext = QFileInfo(fn).suffix() - if ext == '': fn+=extension - - if QFileInfo(fn).exists(): - msgBox = QMessageBox(self) - msgBox.setWindowTitle(tr("Sauvegarde du Fichier")) - msgBox.setText(tr("Le fichier")+ " "+str(fn)+ " " +tr("existe deja")) - msgBox.addButton(tr("&Ecraser"),0) - msgBox.addButton(tr("&Abandonner"),1) - abort=msgBox.exec_() - if abort == 1 : return (0, "") - return (1,fn) - - #-----------------# - def saveRunMAP(self): - #-----------------# - extension=".input" - if not(self.jdc.isValid()): - QMessageBox.critical( self, tr( "Sauvegarde de l'input impossible "), - tr("Un JdC valide est necessaire pour creer un .input") - ) - return - try : - composant=self.jdc.etapes[0].nom.lower()[0:-5] - except : - QMessageBox.critical( self, tr( "Sauvegarde de l'input impossible "), - tr("Choix du composant obligatoire") - ) - return - if hasattr(self.maConfiguration, "savedir"): path=self.maConfiguration.savedir - else : path='C:/' - - monNomFichier="" - if self.fichier is not None and self.fichier != "" : - maBase=str(QFileInfo(self.fichier).baseName())+".input" - monPath=str(QFileInfo(self.fichier).absolutePath()) - monNomFichier=os.path.join(monPath,maBase) - elif hasattr(self,'monNomFichierInput'): - monNomFichier=self.monNomFichierInput - - - monDialog=QFileDialog(self.appliEficas) - monDialog.setDirectory (path) - monDialog.setWindowTitle ("Save") - - for c in monDialog.children(): - if isinstance(c,QDialogButtonBox): - for b in c.children(): - if isinstance(b,QPushButton): - avant=b.text() - if avant=="&Open": b.setText("Save") - mesFiltres= "input Map (*.input);;All Files (*)" - monDialog.setNameFilters(mesFiltres) - if monNomFichier!="" : monDialog.selectFile(monNomFichier) - BOk=monDialog.exec_() - if BOk==0: return - fn=str(monDialog.selectedFiles()[0]) - if fn == "" or fn == None : return - if not fn.endswith(".input"): - fn += ".input" - self.monNomFichierInput=fn - - if not hasattr(self, 'fichierMapInput') or not self.fichierMapInput or not os.path.exists(self.fichierMapInput): - self.fichierMapInput = self.__generateTempFilename(prefix = "map_run", suffix = ".map") - texte=self.getTextJDC("MAP") - self.writeFile( self.fichierMapInput, txt = texte) - - cmd = ("map gen -t dat -n " + composant + " -i " + self.fichierMapInput + " -o " + fn) - p = subprocess.Popen(cmd, shell=True, stdout=subprocess.PIPE) - (output, err) = p.communicate() - - - #-----------------# - def saveRunPSEN(self): - #-----------------# - #print ("saveRunPSEN") - self.saveFile() - - - - #-----------------------------------------# - def handleAjoutGroup(self,listeGroup): - #-----------------------------------------# - try : - #if 1: - from ajoutGroupe import handleAjoutGroupFiltre - #print listeGroup - handleAjoutGroupFiltre(self,listeGroup) - #print "apres handleAjoutGroupFiltre" - except : - #else : - pass - - - #-----------------------------------------------------------------# - def saveCompleteFile(self, path = None, saveas= 0,formatLigne="beautifie"): - #-----------------------------------------------------------------# - extension='.casR' - fn = self.fichierComplet - #saveas=True # Pour forcer le nom - self.generator=self.maConfiguration.mesGenerators.plugins[self.formatFichierOut]() - if self.fichierComplet is None or saveas: - if path is None: path=self.maConfiguration.savedir - bOK, fn=self.determineNomFichier(path,extension) - if bOK == 0 : return (0, None) - if fn == None : return (0, None) - if fn== '' : return (0, None) - - ulfile = os.path.abspath(fn) - self.appliEficas.maConfiguration.savedir=os.path.split(ulfile)[0] - fn = QDir.toNativeSeparators(fn) - - self.fichierComplet = os.path.splitext(fn)[0]+extension - - if hasattr(self.generator, "writeComplet"): - self.generator.writeComplet(self.fichierComplet,self.jdc,config=self.appliEficas.maConfiguration,appliEficas=self.appliEficas) - - if self.salome : self.appliEficas.addJdcInSalome( self.fichierComplet) - - self.modified = 0 - nouveauTitre=self.titre+" "+str(os.path.basename(self.fichierComplet)) - self.appliEficas.setWindowTitle(nouveauTitre) - return (1, self.fichierComplet) - - #-----------------------------------------------------------------# - def saveFile(self, path = None, saveas= 0,formatLigne="beautifie"): - #-----------------------------------------------------------------# - """ - Public slot to save the text to a file. - - @param path directory to save the file in (string or QString) - @return tuple of two values (boolean, string) giving a success indicator and - the name of the saved file - """ - - self.modified=1 - if not self.modified and not saveas: - return (0, None) # do nothing if text wasn't changed - - if self.appliEficas.code in DictExtensions : - extension=DictExtensions[self.appliEficas.code] - else : - extension='.comm' - - newName = None - fn = self.fichier - if self.fichier is None or saveas: - if path is None: path=self.maConfiguration.savedir - bOK, fn=self.determineNomFichier(path,extension) - if bOK == 0 : return (0, None) - if fn == None : return (0, None) - if fn== '' : return (0, None) - - ulfile = os.path.abspath(fn) - self.appliEficas.maConfiguration.savedir=os.path.split(ulfile)[0] - fn = QDir.toNativeSeparators(fn) - newName = fn - - - if not (self.writeFile(fn,formatLigne=formatLigne)): return (0, None) - self.fichier = fn - self.modified = False - if self.fileInfo is None or saveas: - self.fileInfo = QFileInfo(self.fichier) - self.fileInfo.setCaching(0) - self.lastModified = self.fileInfo.lastModified() - if newName is not None: - self.appliEficas.addToRecentList(newName) - self.tree.racine.item.getObject().nom=os.path.basename(newName) - self.tree.racine.updateNodeLabel() - - - if self.jdc.cata.modeleMetier:self.jdc.toXml(self.fichier) - if self.jdc.cata.modeleMetier and self.jdc.isValid(): - if self.generator != self.XMLgenerator : - self.XMLgenerator.gener(self.jdc) - self.XMLgenerator.writeDefault(fn) - - if self.jdc.isValid() != 0 and hasattr(self.generator, "writeDefault"): - #if hasattr(self.generator, "writeDefault"): - self.generator.writeDefault(fn) - elif self.code=="TELEMAC" and hasattr(self.generator, "writeDefault"): - msgBox = QMessageBox(None) - msgBox.setWindowTitle(tr("Fichier .cas invalide / incomplet")) - msgBox.setText(tr("Le fichier .cas est invalide / incomplet")) - msgBox.addButton(tr("&Sauvegarder"),1) - msgBox.addButton(tr("&Quitter sans sauvegarder"),0) - msgBox.addButton(tr("&Annuler"),2) - res=msgBox.exec_() - if res == 0 : - self.generator.writeDefault(fn) - return (1, self.fichier) - if res == 2 : return (0, None) - if self.appliEficas.salome : self.appliEficas.close() - else : sys.exit(1) - - if self.salome : - self.appliEficas.addJdcInSalome( self.fichier) - self.modified = 0 - nouveauTitre=self.titre+" "+str(os.path.basename(self.fichier)) - self.appliEficas.setWindowTitle(nouveauTitre) - - return (1, self.fichier) -# - - #----------------------------------------------# - def sauveLigneFile(self): - #----------------------------------------------# - self.modified=1 - return self.saveFile(formatLigne="Ligne") - - - #----------------------------------------------# - def saveFileAs(self, path = None,fileName=None): - #----------------------------------------------# - """ - Public slot to save a file with a new name. - - @param path directory to save the file in (string or QString) - @return tuple of two values (boolean, string) giving a success indicator and - the name of the saved file - """ - if fileName != None : - self.fichier = fileName - return self.saveFile() - return self.saveFile(path,1,"beautifie") - - - - #---------------------------------------------# - def getFile(self,unite=None,fic_origine = ''): - #---------------------------------------------# - # appele par I_JDC - ulfile = None - jdcText = "" - - titre = "" - - if unite : - titre = tr("Choix unite %d ", unite) - texte = tr("Le fichier %s contient une commande INCLUDE \n", str(fic_origine)) +"\n" - texte = texte+ tr("Donnez le nom du fichier correspondant a l unite logique ") + repr(unite) - labeltexte = tr('Fichier pour unite ') + repr( unite) - else: - titre = tr("Choix d'un fichier de poursuite") - texte = tr("Le fichier %s contient une commande POURSUITE\n", fic_origine) - texte = texte+tr('Donnez le nom du fichier dont vous \n voulez faire une poursuite') - - QMessageBox.information( self, titre,texte) - fn = QFileDialog.getOpenFileName(self.appliEficas, - titre, - self.appliEficas.maConfiguration.savedir) - - # ce retour est impose par le getFile d'I_JDC - if fn== '' : return None," " - if not fn : return (0, " ") - fn=fn[0] - - ulfile = os.path.abspath(fn) - self.appliEficas.maConfiguration.savedir=os.path.split(ulfile)[0] - - # On utilise le convertisseur defini par formatFichierIn - source=self.getSource(ulfile) - if source: - # On a reussia convertir le fichier self.ulfile - jdcText = source - else: - # Une erreur a ete rencontree - jdcText = '' - return ulfile, jdcText - - #-----------------------------------# - def updateJdc(self, etape,texte): - #------------------------------------# - # ajoute une etape de JdC a partir d un texte - CONTEXT.setCurrentStep(etape) - etape.buildIncludeEtape(texte) - if not (etape.text_included_converted) : - QMessageBox.information( self, - tr("Impossible d importer le texte"), - etape.text_included_error) - - self.tree.racine.buildChildren() - - #-----------------------------------# - def updateJdcEtape(self, itemApres,texte): - #------------------------------------# - # ajoute une etape de JdC a partir d un texte - monItem=itemApres - etape=monItem.item.object - - CONTEXT.setCurrentStep(etape) - try : - ok=etape.buildIncludeEtape(texte) - except : - ok=0 - if not ok : - QMessageBox.information( self, - tr("Import texte"), - tr("Impossible d importer le texte")) - self.tree.racine.buildChildren() - return ok - - #-------------------------------------------# - def updateJdcAfterEtape(self, etape,texte): - #--------------------------------------------# - # ajoute une etape de JdC a partir d un texte - CONTEXT.setCurrentStep(etape) - try : - ok=etape.buildIncludeEtape(texte,doitEtreValide=0) - except : - ok=0 - if not ok : - QMessageBox.information( self, - tr("Import texte"), - tr("Impossible d importer le texte")) - self.tree.racine.buildChildren() - return ok - - - #-------------------------------------# - def deleteEtape(self,etape): - #-------------------------------------# - # dans le JDC - self.jdc.suppEntite(etape) - - - #----------------------------------------- - def initSplitterSizes(self, nbWidget=3): - #----------------------------------------- - #print ("je passe ds initSplitterSizes", nbWidget) - - if self.code in [ 'Adao', 'ADAO','MAP' ] : self.splitterSizes3=[1,1550,300] - #elif self.code in [ 'MAP'] : self.splitterSizes3=[700,300] - else : self.splitterSizes3=[150,1000,300] - - if self.code in [ 'Adao', 'ADAO','MAP' ] : self.splitterSizes2=[5,1500] - else : self.splitterSizes2=[300,1000] - - - #----------------------------------------- - def restoreSplitterSizes(self,nbWidget=3): - #---------------------------------------- - - #traceback.print_stack() - #print ("je passe ds restoreSplitterSizes") - if not(hasattr(self,'splitter')) : return - if nbWidget==2 : newSizes=self.splitterSizes2 - if nbWidget==3 : newSizes=self.splitterSizes3 - #self.inhibeSplitter = 1 - #print (newSizes) - self.splitter.setSizes(newSizes) - #self.inhibeSplitter = 0 - QApplication.processEvents() - # seule la fentetre du milieu est necessaire - self.splitter.widget(1).resizeEvent=self.saveSplitterSizes - - #----------------------------------------- - def saveSplitterSizes(self,event): - #----------------------------------------- - #print ("je passe ds saveSplitterSizes") - if self.inhibeSplitter : return - if self.widgetOptionnel == None : self.splitterSizes2 = self.splitter.sizes()[0:2] - else : self.splitterSizes3 = self.splitter.sizes()[0:3] - - #------------------------ - def fermeOptionnel(self): - #------------------------ - if self.widgetOptionnel == None : return - - self.inhibeSplitter=1 - self.widgetOptionnel.setParent(None) - self.widgetOptionnel.close() - self.widgetOptionnel.deleteLater() - self.widgetOptionnel=None - self.inhibeSplitter=0 - self.restoreSplitterSizes(2) - - #------------------------ - def ajoutOptionnel(self): - #------------------------ - #if len(self.splitterSizes) == 2 : self.splitterSizes.append(self.oldSizeWidgetOptionnel) - #else : self.splitterSizes[2] = self.oldSizeWidgetOptionnel # ceinture pour les close bizarres - #self.splitterSizes[1] = self.splitterSizes[1] - self.splitterSizes[2] - - self.restoreSplitterSizes(3) - - - #------------------------ - def fermeArbre(self): - #------------------------ - #print (self.widgetTree) - self.oldWidgetTree=self.widgetTree - self.widgetTree.hide() - #self.widgetTree=None - - #------------------------ - def ouvreArbre(self): - #------------------------ - #print ('je passe la') - #print (self.widgetTree) - #self.widgetTree=self.oldWidgetTree - self.widgetTree.show() - #self.restoreSplitterSizes(3) - - #----------------------- - def getEtapeCourante(self) : - #----------------------- - if len(self.tree.selectedItems()) != 1 : return None - etape=self.tree.selectedItems()[0].item.object.getEtape() - return etape - #----------------------------- - def getTreeIndex(self,noeud): - #---------------------------- - indexNoeud=-1 - if noeud in noeud.treeParent.children : - indexNoeud=noeud.treeParent.children.index(noeud) - else : - if hasattr(noeud,'vraiParent') : - noeudVrai = noeud - noeudVraiParent = noeud.vraiParent - while noeudVraiParent != noeud.treeParent and hasattr(noeudVraiParent,'vraiParent') : - noeudVrai = noeudVraiParent - noeudVraiParent = noeudVraiParent.vraiParent - pass - if noeudVraiParent == noeud.treeParent : - indexNoeud=noeud.treeParent.children.index(noeudVrai) - pass - pass - pass - return indexNoeud - - #-------------------# Pour execution avec output et error dans le bash - def runPSEN(self): - #-------------------# - - #if self.modified or self.fichier==None : self.saveFile() - self.saveFile() - - #lancement avec le .bat - path1 = os.path.abspath(os.path.join(os.path.abspath(__file__), '../','../','PSEN_Eficas','PSEN')) - WrapperFilePath = os.path.join(path1, 'PSSEWrapper.py') - import subprocess - p = subprocess.Popen(['python',WrapperFilePath]) - (out,err)=p.communicate() - print (out) - print (err) - - #-------------------# Pour execution avec output et error dans le bash - def runPSEN_N1(self): - #-------------------# - - - self.saveFile() - path1 = os.path.abspath(os.path.join(os.path.abspath(__file__), '../','../','ProcessOutputs_Eficas','TreatOutputs')) - sys.path.append(path1) - - if not(self.jdc.isValid()): - QMessageBox.information( self, tr( "Unvalid JDC"),tr("incorrect keywords will be ignored")) - if 'dicoImbrique' in generator.plugins: - self.generator=generator.plugins['dicoImbrique']() - jdc_formate=self.generator.gener(self.jdc) - dico=self.generator.Dico - - ###to delete - #fileDico = r'C:\Logiciels DER\PSEN_V16\Code\ProcessOutputs_Eficas\TreatOutputs\dicoN1.py' - fileDico = os.path.join(path1, 'dicoN1.py') #r'C:\Logiciels DER\PSEN_V16\Code\ProcessOutputs_Eficas\TreatOutputs\dicoN1.py' - f = open( str(fileDico), 'w') - f.write("Dico =" + str(dico) ) - f.close() - ### - - - print ('in runPSEN_N1', dico) - print (dico) - from Run import run - run(dico) - #res,txt_exception=run(dico) - #if res : QMessageBox.information( self, tr("fin de script run"), txt_exception) - #else : QMessageBox.critical( self, tr("Erreur fatale script run"), txt_exception) - - #-------------------# Pour execution avec output et error dans le bash - def process_N1(self): - #-------------------# - - path1 = os.path.abspath(os.path.join(os.path.abspath(__file__), '../','../','ProcessOutputs_Eficas','TreatOutputs')) - sys.path.append(path1) - - - if 'dicoImbrique' in generator.plugins: - self.generator=generator.plugins['dicoImbrique']() - jdc_formate=self.generator.gener(self.jdc) - dico=self.getDico() #generator.Dico - - - for k in dico['CONTINGENCY_PROCESSING']: - #print (k) - if k[0:19] == 'Component_List_For_' or k[0:21] =='Contingency_List_For_' : - newK=k.replace('__',' ') - l="'"+str(newK)+"'" - dico['CONTINGENCY_PROCESSING'][l]=dico['CONTINGENCY_PROCESSING'][k] - del dico['CONTINGENCY_PROCESSING'][k] - - ###to delete - fileDico = os.path.join(path1, 'dicoN1_process.py') - f = open( str(fileDico), 'w') - f.write("Dico =" + str(dico) ) - f.close() - ### - return dico - - #return self.getDico() - - #-------------------# Pour execution avec output et error dans le bash - def process_VP(self): - #-------------------# - if 'dicoImbrique' in generator.plugins: - self.generator=generator.plugins['dicoImbrique']() - jdc_formate=self.generator.gener(self.jdc) - dico=self.getDico() #generator.Dico - return dico - -if __name__ == "__main__": - print ('in main') diff --git a/InterfaceQT4/editorSsIhm.py b/InterfaceQT4/editorSsIhm.py deleted file mode 100755 index 419092b9..00000000 --- a/InterfaceQT4/editorSsIhm.py +++ /dev/null @@ -1,1118 +0,0 @@ -# -*- coding: utf-8 -*- -# Copyright (C) 2007-2021 EDF R&D -# -# 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 -# -from __future__ import absolute_import -from __future__ import print_function -try : - from builtins import str - from builtins import range -except : pass - -import types,sys,os, re -import subprocess -import traceback - - -import traceback - -# Modules Eficas - -import convert, generator -from Editeur import session -from Editeur import comploader -from Editeur import Objecttreeitem - -DictExtensions= {"MAP" : ".map", "TELEMAC" : '.cas'} -debug = False - - - -class JDCEditorSsIhm : -# ------------------- # - """ - Editeur de jdc - """ - -# --------------------------------------------- -# Methodes Communes ou appelees depuis avec Ihm -# --------------------------------------------- - - def __init__ (self,appliEficas,fichier = None, jdc = None, units = None, include=0 ): - #-----------------------------------------------------------------------------------# - # paticularisee avec Ihm - - if debug : print ('dans le init de JDCEditorSsIhm') - self.appliEficas = appliEficas - self.fichier = fichier - self.fichierComplet = fichier - if fichier != None : self.extensionFichier = os.path.splitext(fichier)[1] - else : self.extensionFichier = None - self.jdc = jdc - self.first = True - self.jdc_item = None - self.dicoNouveauxMC = {} - self.dicoNouveauxFact = {} - self.dict_reels = {} - self.liste_simp_reel = [] - - if self.appliEficas != None : self.salome = self.appliEficas.salome - else : self.salome = 0 - - # ces attributs sont mis a jour par definitCode appelee par newEditor - self.code = self.appliEficas.maConfiguration.code - self.maConfiguration = self.appliEficas.maConfiguration - - - if not hasattr ( self.appliEficas, 'readercata') or self.appliEficas.readercata.demandeCatalogue==True or self.appliEficas.multi==True: - if self.maConfiguration.typeDeCata == 'XML' : - from InterfaceQT4 import readercataXML as readercata - else : - from InterfaceQT4 import readercata - self.readercata = readercata.ReaderCata( self, self.appliEficas ) - self.appliEficas.readercata=self.readercata - self.appliEficas.code=self.code - else : - self.readercata=self.appliEficas.readercata - if self.readercata.fichierCata == None : return #Sortie Salome - self.titre=self.readercata.titre - - self.formatFichierOut = self.appliEficas.formatFichierOut - self.formatFichierIn = self.appliEficas.formatFichierIn - - #if self.appliEficas.maConfiguration.dumpXSD==True : self.appliEficas.dumpXsd() - self.dict_reels={} - self.liste_simp_reel=[] - self.dicoNouveauxMC={} - self.dicoNouveauxFact={} - - - try: - self.maConfiguration.generator_module - _module = __import__(self.maConfiguration.generator_module) - info = _module.entryPoint() - generator.plugins.addEntryPoint(info) - except: - pass - - try: - self.maConfiguration.convert_module - #print self.maConfiguration.convert_module - _module = __import__(self.maConfiguration.convert_module) - info = _module.entryPoint() - convert.plugins.addEntryPoint(info) - except : - pass - - self.maConfiguration.mesGenerators = generator - self.maConfiguration.mesconvertisseurs = convert - try : self.XMLgenerator=generator.plugins['xml']() - except : self.XMLgenerator=None - - - if self.formatFichierOut in generator.plugins.keys(): - self.generator = generator.plugins[self.formatFichierOut]() - - - self.fileInfo = None - self.lastModified = 0 - - self.modified = False - self.isReadOnly = False - - #------- construction du jdc -------------- - - - self.nouveau=0 - if self.fichier is not None: # fichier jdc fourni - if jdc==None : - #print ('PNPN : chgt try en if') - try : - #if 1 : - self.jdc = self.readFile(self.fichier) - except : - print ("mauvaise lecture du fichier") - if self.salome : - try : self.appliEficas.addJdcInSalome( self.fichier) - except : print ("mauvais enregistrement dans Salome") - else : - self.jdc=jdc - - if self.jdc is not None and units is not None: - self.jdc.recorded_units=units - self.jdc.old_recorded_units=units - - else: - if not self.jdc: # nouveau jdc - if not include : self.jdc = self._newJDC(units=units) - else : self.jdc = self._newJDCInclude(units=units) - self.nouveau=1 - - if self.jdc: - self.jdc.editor = self - self.jdc.lang = self.appliEficas.langue - self.jdc.aReafficher=False - txt_exception = None - if not jdc: - if self.extensionFichier == '.xml' : - if self.appliEficas.maConfiguration.withXSD: self.jdc.analyseXML() - else : print ('run MDM with -x option (MDM for XML)'); exit() - else : self.jdc.analyse() - txt_exception = self.jdc.cr.getMessException() - if txt_exception : - self.jdc = None - self.informe('pb chargement jdc',txt_exception) - #else: - #comploader.chargerComposants() - #self.jdc_item=Objecttreeitem.makeObjecttreeitem( self, "nom", self.jdc ) - - #-------------------------------# - def readFile(self, fn): - #--------------------------------# - """ - Public slot to read the text from a file. - @param fn filename to read from (string or QString) - """ - - # charge un JDC - # paticularisee avec Ihm - - fn = str(fn) - jdcName=os.path.basename(fn) - - # Il faut convertir le contenu du fichier en fonction du format - formatIn=self.appliEficas.formatFichierIn - if self.extensionFichier == '.xml' and self.appliEficas.maConfiguration.withXSD: formatIn='xml' - if formatIn in convert.plugins: - # Le convertisseur existe on l'utilise - p=convert.plugins[formatIn]() - p.readfile(fn) - - if p.text=="" : self.nouveau=1 - #print ('PNPN --> CIST a faire') - - if formatIn != 'xml': - pareil,texteNew=self.verifieChecksum(p.text) - if not pareil : self.informe(("fichier modifie"),("Attention! fichier change hors EFICAS"),False) - p.text=texteNew - memeVersion,texteNew=self.verifieVersionCataDuJDC(p.text) - if memeVersion == 0 : texteNew=self.traduitCatalogue(texteNew) - p.text=texteNew - text=p.convert('exec',self.appliEficas) - if not p.cr.estvide(): self.afficheInfos("Erreur a la conversion",'red') - else: - text=p.text - else : - self.afficheInfos("Type de fichier non reconnu",'red') - self.informe( "Type de fichier non reconnu", - "EFICAS ne sait pas ouvrir le type de fichier " + self.appliEficas.formatFichierIn) - return None - - CONTEXT.unsetCurrentStep() - - #jdc=self.readercata.cata[0].JdC(procedure=text, - jdc=self.readercata.cata.JdC(procedure=text, - appliEficas=self.appliEficas, - cata=self.readercata.cata, - cata_ord_dico=self.readercata.cata_ordonne_dico, - nom=jdcName, - rep_mat=self.maConfiguration.rep_mat - ) - self.modified = False - return jdc - - - #--------------------------------# - def _newJDC( self ,units = None): - #--------------------------------# - """ - Initialise un nouveau JDC vierge - """ - self.modified=1 - CONTEXT.unsetCurrentStep() - - texte="" - if self.code == "CARMELCND" : texte=self._newJDCCND() - if self.code == "ZCRACKS" : texte=self._newZCRACKS() - if self.code == "PSEN" : texte = self._newPSEN() - if self.code == "PSEN_N1" : texte = self._newPSEN_N1() - - if hasattr(self.readercata.cata,'TEXTE_NEW_JDC') : texte=self.readercata.cata.TEXTE_NEW_JDC - - - jdc=self.readercata.cata.JdC( procedure =texte, - appliEficas=self.appliEficas, - cata=self.readercata.cata, - cata_ord_dico=self.readercata.cata_ordonne_dico, - rep_mat=self.maConfiguration.rep_mat - ) - - jdc.lang = self.appliEficas.langue - if units is not None: - jdc.recorded_units=units - jdc.old_recorded_units=units - # chgt le 15/10/19 - # Attention positionne contexte ? - # est ce qu on ne doit pas changer le format en Accas si on vient d accas ? - jdc.editor=self - return jdc - - #--------------------------------# - def _newJDCInclude( self ,units = None): - #--------------------------------# - """ - Initialise un nouveau JDC vierge - """ - import Extensions.jdc_include - JdC_aux=Extensions.jdc_include.JdC_include - CONTEXT.unsetCurrentStep() - - #jaux=self.readercata.cata[0].JdC( procedure="", - jaux=self.readercata.cata.JdC( procedure="", - appliEficas=self.appliEficas, - cata=self.readercata.cata, - cata_ord_dico=self.readercata.cata_ordonne_dico, - rep_mat=self.maConfiguration.rep_mat, - ) - jaux.editor=self - jaux.analyse() - - J=JdC_aux( procedure="", - appliEficas=self.appliEficas, - cata=self.readercata.cata, - cata_ord_dico=self.readercata.cata_ordonne_dico, - jdc_pere=jaux, - rep_mat=self.maConfiguration.rep_mat, - ) - J.editor=self - J.analyse() - if units is not None: - J.recorded_units=units - J.old_recorded_units=units - return J - - - - #-----------------------# - def getSource(self,file): - #-----------------------# - - # Il faut convertir le contenu du fichier en fonction du format - if self.formatFichierIn in convert.plugins : - # Le convertisseur existe on l'utilise - p=convert.plugins[self.formatFichierIn]() - p.readfile(file) - text=p.convert('execnoparseur') - if not p.cr.estvide(): - self.afficheInfos("Erreur a la conversion",'red') - return text - else: - # Il n'existe pas c'est une erreur - self.afficheInfos("Type de fichier non reconnu",'red') - self.informe( "Type de fichier non reconnu", - "EFICAS ne sait pas ouvrir le type de fichier " + self.appliEficas.formatFichierIn) - return None - - #----------------------------------------------# - def __generateTempFilename(self, prefix, suffix): - #----------------------------------------------# - import tempfile - (fd, filename) = tempfile.mkstemp(prefix=prefix, suffix=suffix) - os.close(fd) - return filename - - #-----------------------# - def generDico(self): - #-----------------------# - if 'dico' in generator.plugins: - self.generator=generator.plugins['dico']() - #print (self.generator) - jdc_formate=self.generator.gener(self.jdc) - #print (jdc_formate) - dico=self.generator.Dico - #print (dico) - return dico - - #-----------------------# - def viewJdcSource(self): - #-----------------------# - if self.fichier == None : return - if os.path.isfile(self.fichier): - f=open(self.fichier,'r') - texteSource=f.read() - f.close() - self._viewText(texteSource, "JDC_SOURCE") - else : - self._viewText("file doesn't exist", "JDC_SOURCE") - - - #-----------------------# - def viewJdcPy(self): - #-----------------------# - strSource = str( self.getTextJDC(self.formatFichierOut) ) - self._viewText(strSource, "JDC_RESULTAT") - - #-----------------------# - def viewJdcRapport(self): - #-----------------------# - # on ajoute les regles - strRapport = str( self.jdc.report() ) - self._viewText(strRapport, "JDC_RAPPORT") - - #-----------------------# - def viewJdcRegles(self): - #-----------------------# - # on ajoute les regles - texte_global, test_global = self.jdc.verifRegles() - self._viewText(texte_global, "JDC_REGLES") - - #-----------------------# - def getJdcRapport(self): - #-----------------------# - # on ajoute les regles - strRapport = str( self.jdc.report() ) - return strRapport - - #---------------------# - def getFileName(self): - #---------------------# - return self.fichier - - #-------------------# - def initModif(self): - #-------------------# - """ - Met l'attribut modified a 'o' : utilise par Eficas pour savoir - si un JDC doit etre sauvegarde avant destruction ou non - """ - self.modified = True - - - #--------------------------------------------------# - def writeFile(self, fn, txt = None,formatLigne="beautifie"): - #--------------------------------------------------# - """ - Public slot to write the text to a file. - - @param fn filename to write to string - @return flag indicating success - """ - - fn = str(fn) - - if txt == None : - txt = self.getTextJDC(self.formatFichierOut,formatLigne=formatLigne) - eol = '\n' - if len(txt) >= len(eol): - if txt[-len(eol):] != eol: - txt += eol - else: - txt += eol - txt=self.ajoutVersionCataDsJDC(txt) - if self.code != 'PSEN' and self.code != 'PSEN_N1' : checksum=self.getChecksum(txt) - else : checksum='' - txt=txt+checksum - if self.code=="TELEMAC" : return 1 - try: - f = open(fn, 'w') - f.write(txt) - f.close() - return 1 - except IOError as why: - print('Sauvegarde du Fichier', 'Le fichier'+str(fn) + 'n a pas pu etre sauvegarde :' , str(why)) - self.afficheInfos('Le fichier'+str(fn) + 'n a pas pu etre sauvegarde ' , 'red') - return 0 - - - #-----------------------------------------------------------# - def getTextJDC(self,format = None,pourRun=0,formatLigne="beautifie"): - #-----------------------------------------------------------# - if self.code == "MAP" and not(format in generator.plugins): format = "MAP" - if format == None : format = self.formatFichierOut - if format in generator.plugins: - - # Le generateur existe on l'utilise - self.generator=generator.plugins[format]() - try : - jdc_formate=self.generator.gener(self.jdc,format=formatLigne,config=self.appliEficas.maConfiguration,appliEficas=self.appliEficas) - if pourRun : jdc_formate=self.generator.textePourRun - if self.code == 'TELEMAC' : jdc_formate=self.generator.texteDico - except ValueError as e: - self.informe( "Erreur a la generation",str(e),'red') - return - - if not self.generator.cr.estvide(): - self.informe("Erreur a la generation","EFICAS ne sait pas convertir ce JDC",'red') - return "" - else: - return jdc_formate - else: - # Il n'existe pas c'est une erreur - self.informe("Format inconnu", self.format + " non reconnu" ) - return "" - - #------------------------------# - def verifieChecksum(self,text): - #------------------------------# - # Attention : souci sous Windows - # - indexDeb=text.find("#CHECKSUM:") - if indexDeb < 0 : return 1, text - indexFin=text.find(":FIN CHECKSUM") - checkAvant=text[indexDeb:indexFin+13] - textJDC=text[0:indexDeb]+text[indexFin+13:-1] - if self.code != 'PSEN' and self.code != 'PSEN_N1': - checksum=self.getChecksum(textJDC) - pareil=(checkAvant==checksum) - else : - pareil=1 - return pareil, textJDC - - #---------------------------# - def getChecksum(self,texte): - #---------------------------# - try : - import haslib - newtexte=texte.replace('"','\\"') - hash_checksum = hashlib.md5() - hash_checksum.update(newtexte.encode('utf-8')) - checksum = hash_checksum.hexdigest() - ligne = ligne="#CHECKSUM:"+checksum+":FIN CHECKSUM" - except : - try : - newtexte=texte.replace('"','\\"') - commande='echo "'+newtexte+'"|md5sum' - a=os.popen(commande) - checksum=a.read() - a.close() - except : - checksum='Fichier trop long \n' - ligne="#CHECKSUM:"+checksum[0:-1]+":FIN CHECKSUM" - return ligne - - #----------------------# - def getDico(self): - #---------------------# - if 'dicoImbrique' in generator.plugins: - self.generator=generator.plugins['dicoImbrique']() - #print (self.generator) - jdc_formate=self.generator.gener(self.jdc) - dico=self.generator.Dico - return dico - else : - self.afficheInfos(tr("Format %s non reconnu" , 'Dictionnaire Imbrique' ),'red') - return "" - - #-----------------------------------------# - def chercheGroupes(self): - #-----------------------------------------# - listeMA,listeNO=self.getTextJDC("GroupMA") - return listeMA,listeNO - - #-----------------------------------------# - def chercheDico(self): - #-----------------------------------------# - dicoCourant={} - format = self.appliEficas.formatFichierOut - if format in generator.plugins: - # Le generateur existe on l'utilise - self.generator=generator.plugins[format]() - jdc_formate=self.generator.gener(self.jdc,format='beautifie',config=self.appliEficas.maConfiguration) - dicoCourant=self.generator.dico - return dicoCourant - - #-----------------------------------------------------------------# - def saveFileLegerAs(self, fileName = None) : - #-----------------------------------------------------------------# - if fileName != None : - self.fichier = fileName - return self.saveFileLeger(fileName) - return self.saveFileLeger() - - #-----------------------------------------------------------------# - def saveFileComplet(self, fichier = None, formatLigne="beautifie"): - #-----------------------------------------------------------------# - fn = fichier - self.generator=generator.plugins[self.format]() - print (self.generator) - if hasattr(self.generator, "writeComplet"): - self.generator.writeComplet(fichier,self.jdc,config=self.appliEficas.maConfiguration,appliEficas=self.appliEficas) - - -# --------------------------------------------- -# Methodes Surchargees par avecIhm -# --------------------------------------------- - - #--------------------------------# - def ajoutCommentaire(self): - #--------------------------------# - print ('pas programme sans Ihm') - print ('prevenir la maintenance du besoin') - - - #--------------------------------------# - def informe(self,titre,txt,critique=True): - #--------------------------------------# - # methode differenre avec et sans ihm - if critique : print ('!!!!!!!!!!!!!!!!!!!!!!!!!!!') - print (titre) - print (txt) - if critique : print ('!!!!!!!!!!!!!!!!!!!!!!!!!!!') - - #--------------------------------------# - def afficheInfos(self,txt,couleur=None): - #--------------------------------------# - # methode differenre avec et sans ihm - print (txt) - - #-----------------------------------------------------------------------# - def _viewText(self, txt, caption = "FILE_VIEWER",largeur=1200,hauteur=600): - #--------------------------------------------------------------------# - print ('_____________________________') - print (txt) - print ('_____________________________') - - - #-----------------------------------------------------------------# - def saveFile(self, fichier, formatLigne="beautifie"): - #-----------------------------------------------------------------# - """ - Public slot to save the text to a file. - - @param path directory to save the file in (string or QString) - @return tuple of two values (boolean, string) giving a success indicator and - the name of the saved file - """ - - - self.fichierOut = fichier - if self.appliEficas.maConfiguration.fichierXML !=None : self.jdc.analyseXML() - if not (self.writeFile(fichier,formatLigne=formatLigne)): return (0, None) - if self.jdc.cata.modeleMetier and self.jdc.isValid(): - if self.generator != self.XMLgenerator : - self.XMLgenerator.gener(self.jdc) - self.XMLgenerator.writeDefault(fichier) - return(1,self.fichier) - if self.jdc.isValid() and hasattr(self.generator, "writeDefault"): - self.generator.writeDefault(fichier) - elif self.code=="TELEMAC" and hasattr(self.generator, "writeDefault"): - self.generator.writeDefault(fichier) - self.modified = 0 - return (1, self.fichier) -# - - #----------------------------------------------# - def sauveLigneFile(self): - #----------------------------------------------# - self.modified=1 - return self.saveFile(formatLigne="Ligne") - - - #-----------------------------------# - def updateJdc(self, itemApres,texte): - #------------------------------------# - # ajoute une etape de JdC a partir d un texte - monItem=itemApres - etape=monItem.item.object - CONTEXT.setCurrentStep(etape) - etape.buildIncludeInclude(texte) - self.tree.racine.buildChildren() - - #-----------------------------------# - def updateJdcEtape(self, itemApres,texte): - #------------------------------------# - # ajoute une etape de JdC a partir d un texte - monItem=itemApres - etape=monItem.item.object - CONTEXT.set_current_step(etape) - try : - ok=etape.build_includeEtape(texte) - except : - ok=0 - if not ok : - QMessageBox.information( self, - tr("Import texte"), - tr("Impossible d importer le texte")) - self.tree.racine.build_children() - return ok - - - - #-------------------------------------# - def deleteEtape(self,etape): - #-------------------------------------# - # dans le JDC - self.jdc.suppentite(etape) - - #-------------------------------------# - def deleteMC(self,etape,MCFils,listeAvant=()): - #-------------------------------------# - # dans le JDC - ouChercher=etape - for mot in listeAvant : - ouChercher=ouChercher.getChild(mot,restreint="oui") - monMC=ouChercher.getChild(MCFils,restreint="oui") - if monMC != None : ouChercher.suppentite(monMC) - ouChercher.state='changed' - ouChercher.isvalid() - - #--------------------------------------------------------# - def ajoutMC(self,etape,MCFils,valeurs,listeAvant=()): - #--------------------------------------------------------# - # dans le JDC - debug=False - if debug : print ('ajoutMC', etape,MCFils,valeurs,listeAvant) - ouChercher=etape - if debug : print (ouChercher) - for mot in listeAvant : - ouChercher=ouChercher.getChild(mot,restreint="oui") - monMC=ouChercher.getChild(MCFils,restreint="oui") - if monMC == None : monMC = ouChercher.addEntite(MCFils) - monMC.valeur=valeurs - monMC.val=valeurs - monMC.state='changed' - monMC.isvalid() - return 1 - - #--------------------------------------------------------# - def ajoutMCinMCFactUnique(self,etape,MCFils,valeurs,listeAvant=()): - # Attention si +sieursMCFACT - #--------------------------------------------------------# - # dans le JDC - debug=False - if debug : print ('ajoutMC', etape,MCFils,valeurs,listeAvant) - ouChercher=etape - if debug : print (ouChercher) - for mot in listeAvant : - ouChercher=ouChercher.getChild(mot,restreint="oui") - # Attention si +sieursMCFACT - ouChercher=ouChercher[0] - if debug : print (ouChercher) - monMC=ouChercher.getChild(MCFils,restreint="oui") - if monMC == None : monMC = ouChercher.addEntite(MCFils) - monMC.valeur=valeurs - monMC.val=valeurs - monMC.state='changed' - monMC.isValid() - return 1 - - #----------------------------------------------# - def ajoutMCFact(self,etape,MCFils,listeAvant=()): - #----------------------------------------------# - # dans le JDC - ouChercher=etape - for mot in listeAvant : - ouChercher=ouChercher.getChild(mot,restreint="oui") - monMC=etape.getChild(ouChercher,restreint="oui") - if monMC== None : monMC= ouChercher.addEntite(MCFils) - monMC.isvalid() - - #-----------------------------------------------------------------# - def setValeurMCSimpInEtape(self,etape,listeAvant,valeur): - #-----------------------------------------------------------------# - # pour VP - monObj=etape - for mot in listeAvant : - monObj=monObj.getChild(mot,restreint="oui") - if monObj==None : return False - if monObj == None : return False - if monObj.valeur != valeur : - # PNPN le setValeur fait des bugs --> pourquoi - #monObj.setValeur(valeur) - monObj.valeur=valeur - monObj.isValid() - return True - - #-------------------------------------------------# - def getValeur(self,nomEtape,MCFils,listeAvant=()): - #-------------------------------------------------# - # dans le JDC - - debug=0 - ouChercher=None - for e in self.jdc.etapes: - if e.nom == nomEtape : ouChercher=e; break - if debug : print ('etape trouvee', ouChercher) - if ouChercher==None : return None - for mot in listeAvant : - ouChercher=ouChercher.getChild(mot,restreint="oui") - if debug : print (mot, ouChercher) - if ouChercher==None : return None - monMC=ouChercher.getChild(MCFils,restreint="oui") - if debug : print ('monMC', monMC) - if monMC== None : return None - return monMC.valeur - - #-------------------------------------------------# - def getMCDsEtape(self,etape,MCFils,listeAvant=()): - #-------------------------------------------------# - # dans le JDC - - if etape==None : return None - ouChercher=etape - debug=0 - for mot in listeAvant : - ouChercher=ouChercher.getChild(mot,restreint="oui") - if debug : print (mot, ouChercher) - if ouChercher==None : return None - monMC=ouChercher.getChild(MCFils,restreint="oui") - if debug : print ('monMC', monMC) - return monMC - - #-----------------------------------------------------------# - def setValeur(self,nomEtape,MCFils,valeur,listeAvant=()): - #--------------------------------------------------------# - # dans le JDC - - ouChercher=None - for e in self.jdc.etapes: - if e.nom == nomEtape : ouChercher=e; break - if ouChercher==None : return None - for mot in listeAvant : - ouChercher=ouChercher.getChild(mot,restreint="oui") - #print (mot, ouChercher) - if ouChercher==None : return None - monMC=ouChercher.getChild(MCFils,restreint="oui") - monMC.set_valeur(valeur) - monMC.isvalid() - - #-----------------------------------------------------------# - def changeIntoMC(self,etape,MCFils,valeurs, listeAvant=()): - #-----------------------------------------------------------# - # dans le JDC - ouChercher=etape - if isinstance (etape, str): - ouChercher=None - for e in self.jdc.etapes: - if e.nom == etape : ouChercher=e; break - if ouChercher==None : return - - for mot in listeAvant : - ouChercher=ouChercher.getChild(mot,restreint="oui") - if ouChercher==None : return - monMC=ouChercher.getChild(MCFils,restreint="oui") - if monMC== None : monMC= ouChercher.addEntite(MCFils) - - monMC.definition.into=valeurs - from Noyau.N_VALIDATOR import IntoProtocol - monMC.definition.intoProto = IntoProtocol("into", into=monMC.definition.into, val_min=monMC.definition.val_min, val_max=monMC.definition.val_max) - monMC.state='changed' - monMC.isvalid() - - #-------------------------------------------------------------------# - def reCalculeValiditeMCApresChgtInto(self,nomEtape,MCFils,listeAvant=()): - #-------------------------------------------------------------------# - # dans le JDC - for e in self.jdc.etapes: - if e.nom == nomEtape : ouChercher=e; break - - for mot in listeAvant : - try : - ouChercher=ouChercher.getChild(mot,restreint="oui") - # Le mot clef n est pas la - except : return 0 - try : - monMC=ouChercher.getChild(MCFils,restreint="oui") - # Le mot clef n est pas la - except : return 0 - if monMC == None : return 0 - - if hasattr(monMC.definition,'into') : - if type(monMC.definition.into) ==types.FunctionType : maListeDeValeur=monMC.definition.into() - else : maListeDeValeur=monMC.definition.into - else : - return 0 - - monMC.state='changed' - return 1 - - def dumpXsd(self, avecEltAbstrait = False): - #-----------------------------------------# - texteXSD = self.readercata.cata.JdC.dumpXsd(avecEltAbstrait) - return texteXSD - - def dumpStructure(self): - #----------------------------# - texteStructure = self.readercata.cata.JdC.dumpStructure() - return texteStructure - - #-------------------------------------# - def changeDefautDefMC(self,nomEtape,listeMC,valeurs): - #-------------------------------------# - # dans le MDD - - #if isinstance (etape, str): - # for e in self.jdc.etapes: - # if e.nom == etape : etape=e; break - #if etape == None : return - definitionEtape=getattr(self.jdc.cata,nomEtape) - #definitionEtape=getattr(self.jdc.cata[0],nomEtape) - ouChercher=definitionEtape - if len(listeMC) > 1 : - - for mc in listeMC[0:-1]: - mcfact=ouChercher.entites[mc] - ouChercher=mcfact - - mcAccas=ouChercher.entites[listeMC[-1]] - mcAccas.defaut=valeurs - return 1 - - #------------------------------------------------# - def changeIntoDefMC(self,etape,listeMC,valeurs): - #------------------------------------------------# - # dans le MDD - #definitionEtape=getattr(self.jdc.cata[0],nomEtape) - #definitionEtape=getattr(self.jdc.cata,nomEtape) - print ( 'changeIntoDefMC ',etape,listeMC,valeurs) - ouChercher=getattr(self.jdc.cata,etape.nom) - - #if len(listeMC) > 1 : - # for mc in listeMC[0:-1]: - # mcfact=ouChercher.entites[mc] - # ouChercher=mcfact - #mcAccas=ouChercher.entites[listeMC[-1]] - - for mc in listeMC : - mcAccas=ouChercher.entites[mc] - ouChercher=mcAccas - if ouChercher == None : return 0 - - if hasattr(mcAccas,'into') : oldValeurs=mcAccas.into - else : oldValeurs=None - - if oldValeurs==valeurs : return 1 - mcAccas.into=valeurs - from Noyau.N_VALIDATOR import IntoProtocol - mcAccas.intoProto = IntoProtocol("into", into=valeurs, val_min=mcAccas.val_min, val_max=mcAccas.val_max) - return 1 - - #-------------------------------------------------------------# - def deleteDefinitionMC(self,etape,listeAvant,nomDuMC): - #-------------------------------------------------------------# - # dans le MDD - #print 'in deleteDefinitionMC', etape,listeAvant,nomDuMC - if isinstance (etape, str): - for e in self.jdc.etapes: - if e.nom == etape : etape=e; break - if etape == None : return - #definitionEtape=getattr(self.jdc.cata[0],etape) - definitionEtape=getattr(self.jdc.cata,etape) - ouChercher=definitionEtape - for k in listeAvant : - ouChercher=ouChercher.entites[k] - MCADetruire=ouChercher.entites[nomDuMC] - ouChercher.ordre_mc.remove(nomDuMC) - print ('remove de ', nomDuMC) - del ouChercher.entites[nomDuMC] - del self.dicoNouveauxMC[nomDuMC] - - - #-------------------------------------------------------------# - def ajoutDefinitionMC(self,nomEtape,listeAvant,nomDuMC,typ,**args): - #-------------------------------------------------------------# - # dans le MDD - #definitionEtape=getattr(self.jdc.cata[0],nomEtape) - definitionEtape=getattr(self.jdc.cata,nomEtape) - ouChercher=definitionEtape - for k in listeAvant : - ouChercher=ouChercher.entites[k] - from Accas import A_SIMP - Nouveau=A_SIMP.SIMP(typ,**args) - Nouveau.pere=ouChercher - Nouveau.nom=nomDuMC - #Nouveau.ordre_mc=[] - ouChercher.entites[nomDuMC]=Nouveau - ouChercher.ordre_mc.append(nomDuMC) - #print ('ajout de ', nomDuMC) - #traceback.print_stack() - # ajout CIST sauvegarde - if nomDuMC in self.dicoNouveauxMC : del self.dicoNouveauxMC[nomDuMC] - self.dicoNouveauxMC[nomDuMC]=('ajoutDefinitionMC',nomEtape,listeAvant,nomDuMC,typ,args) - #print self.dicoNouveauxMC - - #---------------------------------------------------------------------# - def ajoutDefinitionMCFact(self,nomEtape,listeAvant,nomDuMC,listeMC,**args): - #---------------------------------------------------------------------# - # dans le MDD - print ('ajoutDefinitionMCFact', nomDuMC) - #definitionEtape=getattr(self.jdc.cata[0],nomEtape) - definitionEtape=getattr(self.jdc.cata,nomEtape) - ouChercher=definitionEtape - for k in listeAvant : - ouChercher=ouChercher.entites[k] - from Accas import A_SIMP - for mc in listeMC : - nomMC=mc[0] - typMC=mc[1] - argsMC=mc[2] - nouveauMC=A_SIMP.SIMP(typMC,**argsMC) - nouveauMC.nom=nomMC - args[nomMC]=nouveauMC - from Accas import A_FACT - nouveauFact=A_FACT.FACT(**args) - nouveauFact.pere=ouChercher - nouveauFact.nom=nomDuMC - from Editeur.autre_analyse_cata import traite_entite - traite_entite(nouveauFact,[]) - ouChercher.entites[nomDuMC]=nouveauFact - ouChercher.ordre_mc.append(nomDuMC) - self.dicoNouveauxFact[nomDuMC]=('ajoutDefinitionMC',nomEtape,listeAvant,nomDuMC,listeMC,args) - #print self.dicoNouveauxMC - - #----------------------------------------------------# - - #----------------------------------------------------# - def changeIntoMCandSet(self,etape,listeMC,into,valeurs): - #----------------------------------------------------# - # dans le MDD et le JDC - - self.changeIntoDefMC(etape,listeMC,into) - - if isinstance (etape, str): - for e in self.jdc.etapes: - if e.nom == etape : etape=e; break - if etape == None : return - - ouChercher = etape - for mot in listeMC[:-1] : - ouChercher=ouChercher.getChild(mot,restreint="oui") - if ouChercher==None : return - MCFils=listeMC[-1] - monMC=ouChercher.getChild(MCFils,restreint="oui") - if monMC== None : monMC= etape.addEntite(MCFils) - - monMC.definition.into=into - monMC.valeur=valeurs - monMC.val=valeurs - monMC.state='changed' - monMC.isvalid() - - #-------------------------------------# - def ajoutVersionCataDsJDC(self,txt): - #-------------------------------------# - #if not hasattr(self.readercata.cata[0],'VERSION_CATALOGUE'): return txt - if not hasattr(self.readercata.cata,'VERSION_CATALOGUE'): return txt - ligneVersion="#VERSION_CATALOGUE:"+self.readercata.cata.VERSION_CATALOGUE+":FIN VERSION_CATALOGUE\n" - texte=txt+ligneVersion - return texte - - #-------------------------------------# - def verifieVersionCataDuJDC(self,text): - #-------------------------------------# - memeVersion=False - indexDeb=text.find("#VERSION_CATALOGUE:") - indexFin=text.find(":FIN VERSION_CATALOGUE") - if indexDeb < 0 : - self.versionCataDuJDC="sans" - textJDC=text - else : - self.versionCataDuJDC=text[indexDeb+19:indexFin] - textJDC=text[0:indexDeb]+text[indexFin+23:-1] - - self.versionCata="sans" - if hasattr(self.readercata.cata,'VERSION_CATALOGUE'): self.versionCata=self.readercata.cata.VERSION_CATALOGUE - - if self.versionCata==self.versionCataDuJDC : memeVersion=True - return memeVersion,textJDC - - #-------------------------------# - def traduitCatalogue(self,texte): - #-------------------------------# - nomTraducteur="traduit"+self.readercata.code+self.versionCataDuJDC+"To"+self.versionCata - sys.path.append(os.path.abspath(os.path.join(os.path.dirname(os.path.abspath(__file__)),"../Traducteur"))) - try : - traducteur=__import__(nomTraducteur) - monTraducteur=traducteur.MonTraducteur(texte) - nouveauTexte=monTraducteur.traduit() - return nouveauTexte - except : - return texte - - -# Methodes a resorber -# il faut mettre a jour les catalogues avec -# TEXTE_NEW_JDC -# - - #---------------------------# - def _new_CF(self): - #---------------------------# - texte="CONDUITE_FORCEE();" - return texte - - #---------------------------# - def _newPSEN(self): - #---------------------------# - texte="DIRECTORY() ; PSSE_PARAMETERS() ; SIMULATION() ; sansnom=DISTRIBUTION() ; sansnom=DISTRIBUTION() ; CORRELATION() ;" - #texte="" - return texte - - #---------------------------# - def _newPSEN_N1(self): - #---------------------------# - texte="CASE_SELECTION();N_PROCESSING_OPTIONS();CONTINGENCY_OPTIONS();CONTINGENCY_SELECTION();\nCONTINGENCY_PROCESSING(); " - #texte="CONTINGENCY_SELECTION();\nCONTINGENCY_PROCESSING(); " - return texte - - #---------------------------# - def _newZCRACKS(self): - #---------------------------# - texte="MAILLAGES();REMESHING();" - return texte - - - #---------------------------# - def _newJDCCND(self): - #---------------------------# - extensions=tr('Fichiers Med (*.med);;''Tous les Fichiers (*)') - - #if self.salome == 0 : - QMessageBox.information( self, - tr("Fichier Med"), - tr("Veuillez selectionner un fichier Med")) - QSfichier = QFileDialog.getOpenFileName(self.appliEficas, - caption='Fichier Med', - filter=extensions) - QSfichier=QSfichier[0] - self.fichierMED=QSfichier - from acquiertGroupes import getGroupes - erreur,self.listeGroupes,self.nomMaillage,self.dicoCoord=getGroupes(self.fichierMED) - if erreur != "" : print ("a traiter") - texteComm="COMMENTAIRE(u'Cree - fichier : "+self.fichierMED +" - Nom Maillage : "+self.nomMaillage+"');\nPARAMETRES()\n" - texteSources="" - texteCond="" - texteNoCond="" - texteVcut="" - texteZs="" - for groupe in self.listeGroupes : - if groupe[0:8]=='CURRENT_': - texteSources +=groupe[8:]+"=SOURCE(" - texteSources +="VecteurDirecteur=(1.0,2.0,3.0,),);\n" - if groupe[0:5]=='COND_': texteCond +=groupe[5:]+"=CONDUCTEUR();\n" - if groupe[0:7]=='NOCOND_': texteNoCond +=groupe[7:]+"=NOCOND();\n" - if groupe[0:5]=='VCUT_': texteVcut +='V_'+groupe[5:]+"=VCUT();\n" - if groupe[0:3]=='ZS_': texteZs +=groupe[3:]+"=ZS();\n" - texte=texteComm+texteSources+texteCond+texteNoCond+texteVcut+texteZs - self.newTexteCND=texte - self.modified=1 - return texte - - -if __name__ == "__main__": - print ('a faire') diff --git a/InterfaceQT4/eficas_go.py b/InterfaceQT4/eficas_go.py deleted file mode 100755 index f233f328..00000000 --- a/InterfaceQT4/eficas_go.py +++ /dev/null @@ -1,353 +0,0 @@ -#!/usr/bin/env python -# -*- coding: utf-8 -*- -# Copyright (C) 2007-2021 EDF R&D -# -# 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 -# - -# Modules Python -from __future__ import absolute_import -from __future__ import print_function -try : - from builtins import str -except : pass - - -import sys,os -repIni = os.path.abspath(os.path.join(os.path.dirname(os.path.abspath(__file__)),"..")) -ihmQTDir = os.path.join(repIni,"UiQT5") -editeurDir = os.path.join(repIni,"Editeur") -ihmDir = os.path.join(repIni,"InterfaceQT4") - -if ihmDir not in sys.path : sys.path.append(ihmDir) -if ihmQTDir not in sys.path : sys.path.append(ihmQTDir) -if editeurDir not in sys.path : sys.path.append(editeurDir) - -if sys.version_info[0] < 3: - print("Must be using Python 3") - sys.exit() - -def lanceEficas(code=None, multi=False, langue='en', labelCode=None): -#------------------------------------------------------------------- - """ - Lance l'appli EFICAS avec Ihm - """ - try : - from PyQt5.QtWidgets import QApplication - except : - print('Please, set qt environment') - return - - from Editeur import session - options = session.parse(sys.argv) - if options.code != None : code=options.code - - from InterfaceQT4.qtEficas import Appli - app = QApplication(sys.argv) - - Eficas=Appli(code=code,salome=0,multi=multi,langue=langue,labelCode=labelCode) - Eficas.show() - - res=app.exec_() - sys.exit(res) - -def getEficasSsIhm(code=None, multi=False, langue='en', labelCode=None,forceXML=False, genereXSD=False, fichierCata=None): -#------------------------------------------------------------------------------------------------------------------------- - """ - Lance l'appli EFICAS sans Ihm - """ - from Editeur import session - options = session.parse(sys.argv) - if options.code != None : code=options.code - if forceXML : options.withXSD=True - - from InterfaceQT4.qtEficasSsIhm import AppliSsIhm - Eficas=AppliSsIhm(code=code, salome=0, multi=multi, langue=langue, labelCode=labelCode, genereXSD=genereXSD, fichierCata=fichierCata) - return Eficas - - - -def genereXSD(code=None): -#------------------------ - from Editeur import session - options = session.parse(sys.argv) - if code != None : options.code = code - if options.fichierCata == None : - print ('Use -c cata_name.py') - return - - monEficasSsIhm = getEficasSsIhm(code=options.code,genereXSD=True) - monEditor=monEficasSsIhm.getEditor() - #texteXSD=monEficasSsIhm.dumpXsd(avecEltAbstrait=options.avecEltAbstrait) - texteXSD=monEditor.dumpXsd(avecEltAbstrait=options.avecEltAbstrait) - - fichierCataTrunc=os.path.splitext(os.path.basename(options.fichierCata))[0] - #if fichierCataTrunc[0:4] in ('cata','Cata'): fichierCataTrunc=fichierCataTrunc[4:] - #if fichierCataTrunc[0] in ('_','-') : fichierCataTrunc=fichierCataTrunc[1:] - fileXSD = fichierCataTrunc + '.xsd' - - f = open( str(fileXSD), 'w') - f.write(str(texteXSD)) - -def genereXML(code=None): -#----------------------- - from Editeur import session - options=session.parse(sys.argv) - if code != None : options.code = code - if options.fichierCata == None : - print ('Use -c cata_name.py') - return - try : fichier=options.comm[0] - except : fichier=None - if fichier==None : - print ('comm file is needed') - return - - monEficasSsIhm = getEficasSsIhm(code=options.code, forceXML=True) - - from .editorSsIhm import JDCEditorSsIhm - monEditeur=JDCEditorSsIhm(monEficasSsIhm,fichier) - print (options) - if options.fichierXMLOut == None : - fichierXMLOut=fichier[:fichier.rfind(".")]+'.xml' - else : - fichierXMLOut=options.fichierXMLOut - if not(monEditeur.jdc.isValid()): - print ('Fichier comm is not valid') - return - #print ('Fichier comm is not valid') - monEditeur.XMLgenerator.gener(monEditeur.jdc) - monEditeur.XMLgenerator.writeDefault(fichierXMLOut) - -def genereStructure(code=None): -#------------------------------ - from Editeur import session - options=session.parse(sys.argv) - if code != None : options.code = code - if options.fichierCata == None : - print ('Use -c cata_name.py') - return - - monEficasSsIhm = getEficasSsIhm(code=options.code,genereXSD=True) - monEditor=monEficasSsIhm.getEditor() - texteStructure=monEditor.dumpStructure() - - fichierCataTrunc=os.path.splitext(os.path.basename(options.fichierCata))[0] - fileStructure = fichierCataTrunc + '.txt' - f = open( str(fileStructure), 'w') - f.write(str(texteStructure)) - f.close() - - -def validateDataSet(code=None): -#------------------------------ - from Editeur import session - options=session.parse(sys.argv) - if code != None : options.code = code - if options.fichierCata == None : - print ('Use -c cata_name.py') - return - fichier=options.comm[0] - if fichier==None : - print ('comm file is needed') - return - from .editorSsIhm import JDCEditorSsIhm - monEficasSsIhm = getEficasSsIhm(code=options.code) - monEditeur=JDCEditorSsIhm(monEficasSsIhm,fichier) - if not (monEditeur.jdc.isValid()) : print (monEditeur.getJdcRapport()) - else : print ('Jdc is valid') - return monEditeur.jdc.isValid() - -def validateFonction(laFonction, debug=False): -#------------------------------- - # ici un singleton pour avoir l editor, le catalogue et... - monEficasSsIhm = getEficasSsIhm(code='Essai') - monEditor=monEficasSsIhm.getEditor() - #print ('_______ validateFonction', laFonction, laFonction.__name__) - from functools import wraps - from collections import OrderedDict - from inspect import getargspec - @wraps(laFonction) - def fonctionValidee(*args, **kwargs): - laFonctionName = laFonction.__name__ - if debug : print('Appel {} avec args={} et kwargs={}'.format( laFonction.__name__, args, kwargs)) - laDefDeLaFonctionDansAccas = getattr(monEditor.readercata.cata,laFonctionName) - objConstruit = laDefDeLaFonctionDansAccas.makeObjetPourVerifSignature(*args,**kwargs) - if (objConstruit.isValid()) : - ret = laFonction(*args, **kwargs) - return ret - else : - print ('mauvais arguments') - print (objConstruit.CR()) - return None - return fonctionValidee - - #maClasseAccas=getattr(self.cata,objEtape.monNomClasseAccas) - return fonctionValidee - - return laFonction - -def createFromDocumentAccas(fichierCata=None,fichier=None,code=None): -#------------------------------------------------------------ - if fichier == None : print ('file is needed'); return None - if fichierCata == None : print ('cata file is needed'); return None - - from Noyau.N_OBJECT import activeSurcharge - activeSurcharge() - - from .editorSsIhm import JDCEditorSsIhm - monEficasSsIhm = getEficasSsIhm(code='Essai', fichierCata=fichierCata) - monEditeur=JDCEditorSsIhm(monEficasSsIhm,fichier) - return monEditeur.jdc - #from Noyau - - -# --------------------------- toutes les fonctions après sont obseletes -def lanceEficas_ssIhm(code=None,fichier=None,ssCode=None,version=None,debug=False,langue='en'): - """ - Lance l'appli EFICAS SsIhm - """ - # Analyse des arguments de la ligne de commande - print ('deprecated') - from Editeur import session - options=session.parse(sys.argv) - if version!=None and options.version == None : options.version=version - if fichier == None : fichier=options.comm[0] - if code == None : code=options.code - - from .qtEficas import Appli - Eficas=Appli(code=code,salome=0,ssCode=ssCode,ssIhm=True,langue=langue) - - from .ssIhm import QWParentSSIhm - parent=QWParentSSIhm(code,Eficas,version) - - from . import readercata - if not hasattr ( Eficas, 'readercata'): - monreadercata = readercata.ReaderCata( parent, Eficas ) - Eficas.readercata=monreadercata - - from .editor import JDCEditor - monEditeur=JDCEditor(Eficas,fichier) - return monEditeur - -def lanceEficas_ssIhm_chercheGroupes(code=None,fichier=None,ssCode=None,version=None): - print ('deprecated') - monEditeur=lanceEficas_ssIhm(code,fichier,ssCode,version) - print((monEditeur.chercheGroupes())) - -def lanceEficas_ssIhm_cherche_cr(code=None,fichier=None,ssCode=None,version=None): - print ('deprecated') - monEditeur=lanceEficas_ssIhm(code,fichier,ssCode,version) - print((monEditeur.jdc.cr)) - -def lanceEficas_ssIhm_reecrit(code=None,fichier=None,ssCode=None,version=None,ou=None,cr=False,debug=False,leger=False,langue='ang'): - print ('deprecated') - #print 'lanceEficas_ssIhm_reecrit', fichier - monEditeur=lanceEficas_ssIhm(code,fichier,ssCode,version,langue=langue) - if ou == None : - fileName=fichier.split(".")[0]+"_reecrit.comm" - fn=fichier.split(".")[0]+"_cr.txt" - else : - f=fichier.split(".")[0]+"_reecrit.comm" - f1=os.path.basename(f) - fn=fichier.split(".")[0]+"_cr.txt" - f2=os.path.basename(fn) - fileName=os.path.join(ou,f1) - fileCr=os.path.join(ou,f2) - debut=False - if debug : - import cProfile, pstats, StringIO - pr = cProfile.Profile() - pr.enable() - monEditeur.saveFileAs(fileName=fileName) - pr.disable() - s = StringIO.StringIO() - sortby = 'cumulative' - ps = pstats.Stats(pr, stream=s).sort_stats(sortby) - ps.print_stats() - print (s.getValue()) - - elif not leger : monEditeur.saveFileAs(fileName=fileName) - else : monEditeur.saveFileLegerAs(fileName=fileName) - if cr: - f = open(fileCr, 'w') - f.write(str(monEditeur.jdc.report())) - f.close() - -def lanceEficas_param(code='Adao',fichier=None,version='V0',macro='ASSIMILATION_STUDY'): - """ - Lance l'appli EFICAS pour trouver les noms des groupes - """ - print ('deprecated') - # Analyse des arguments de la ligne de commande - from Editeur import session - options=session.parse(sys.argv) - - from .qtEficas import Appli - - from .ssIhm import QWParentSSIhm - Eficas=QWParentSSIhm(code,version) - - from . import readercata - if not hasattr ( Eficas, 'readercata'): - monreadercata = readercata.ReaderCata( parent, Eficas ) - Eficas.readercata=monreadercata - - from .editor import JDCEditor - monEditeur=JDCEditor(Eficas,fichier) - texte=loadJDC(fichier) - parameters=getJdcParameters(texte,macro) - return parameters - - -def getJdcParameters(jdc,macro): - """ - This function converts the data from the specified macro of the - specified jdc text to a python dictionnary whose keys are the - names of the data of the macro. - """ - print ('deprecated') - context = {} - source = "def args_to_dict(**kwargs): return kwargs \n" - source+= "%s = _F = args_to_dict \n"%macro - source+= "parameters="+jdc+" \n" - source+= "context['parameters'] = parameters \n" - code = compile(source, 'file.py', 'exec') - eval(code) - parameters = context['parameters'] - return parameters - -def loadJDC(filename): - """ - This function loads the text from the specified JdC file. A JdC - file is the persistence file of Eficas (*.comm). - """ - print ('deprecated') - fcomm=open(filename,'r') - jdc = "" - for line in fcomm.readlines(): - if not (line[0]=='#'): - jdc+="%s"%line - - # Warning, we have to make sure that the jdc comes as a simple - # string without any extra spaces/newlines - return jdc.strip() - -if __name__ == "__main__": - import sys - sys.path.insert(0,os.path.abspath(os.path.join(os.getcwd(),'..'))) - lanceEficas(code=None,multi=True) diff --git a/InterfaceQT4/eficas_goWeb.py b/InterfaceQT4/eficas_goWeb.py deleted file mode 100755 index 8ac4f277..00000000 --- a/InterfaceQT4/eficas_goWeb.py +++ /dev/null @@ -1,63 +0,0 @@ -#!/usr/bin/env python -# -*- coding: utf-8 -*- -# Copyright (C) 2007-2021 EDF R&D -# -# 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 -# - -# Modules Python -from __future__ import absolute_import -from __future__ import print_function -try : - from builtins import str -except : pass - - -import sys,os -repIni = os.path.abspath(os.path.join(os.path.dirname(os.path.abspath(__file__)),"..")) -ihmQTDir = os.path.join(repIni,"UiQT5") -editeurDir = os.path.join(repIni,"Editeur") -ihmDir = os.path.join(repIni,"InterfaceQT4") - -if ihmDir not in sys.path : sys.path.append(ihmDir) -if ihmQTDir not in sys.path : sys.path.append(ihmQTDir) -if editeurDir not in sys.path : sys.path.append(editeurDir) - - -def lanceEficas(code=None, multi=False, langue='en', labelCode=None): -#------------------------------------------------------------------- - """ - Lance l'appli EFICAS avec Ihm - """ - try : - from PyQt5.QtWidgets import QApplication - except : - print('Please, set qt environment') - return - - from Editeur import session - options = session.parse(sys.argv) - if options.code != None : code=options.code - - from InterfaceQT4.qtEficas import Appli - app = QApplication(sys.argv) - - Eficas=Appli(code=code,salome=0,multi=multi,langue=langue,labelCode=labelCode) - Eficas.show() - - res=app.exec_() - sys.exit(res) diff --git a/InterfaceQT4/feuille.py b/InterfaceQT4/feuille.py deleted file mode 100644 index 1111d88f..00000000 --- a/InterfaceQT4/feuille.py +++ /dev/null @@ -1,283 +0,0 @@ -# -*- coding: utf-8 -*- -# Copyright (C) 2007-2021 EDF R&D -# -# 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 -# -# Modules Python -from __future__ import absolute_import -try : - from builtins import str -except : - pass -import types,os -import traceback - -from PyQt5.QtWidgets import QToolButton ,QWidget -from PyQt5.QtGui import QFont, QFontMetrics, QFontInfo, QPalette -from PyQt5.QtCore import Qt - -from Extensions.i18n import tr - -from .gereIcones import ContientIcones -from .gereIcones import FacultatifOuOptionnel -from .qtSaisie import SaisieValeur - -nomMax=230 -# empirique les metrics ne fonctionnent pas -# ---------------------------------------------------------------------- # -class Feuille(QWidget,ContientIcones,SaisieValeur,FacultatifOuOptionnel): -# --------------------------------------------------------------------- # - - - def __init__(self,node,monSimpDef,nom,objSimp,parentQt,commande): - #print ("Feuille", monSimpDef,nom,objSimp) - QWidget.__init__(self,None) - self.node=node - self.node.fenetre=self - - # on se positionne pour les icones - #os.chdir(os.path.abspath(os.path.join(os.path.dirname(__file__)))) - self.setupUi(self) - self.prendLeFocus=0 - - maPolice= QFont("Times", 10) - self.setFont(maPolice) - self.setFocusPolicy(Qt.StrongFocus) - - self.parentQt=parentQt - self.editor=self.node.editor - self.appliEficas=self.editor.appliEficas - self.repIcon=self.appliEficas.repIcon - self.monSimpDef=monSimpDef - self.nom=nom - self.objSimp=objSimp - self.node.fenetre=self - self.maCommande=commande - - self.aRedimensionner=0 - self.setSuggestion() - self.setValeurs() - self.setNom() - self.setValide() - self.setIconePoubelle() - self.setIconesFichier() - self.setIconesSalome() - self.setIconesGenerales() - self.setCommentaire() - self.setZoneInfo() - - - def setNom(self): - self.debutToolTip="" - nomTraduit=tr(self.objSimp.nom) - #metrix= QFontMetrics(self.label.font()) - #maxLongueur = self.label.width() - 2 - #print ('______________________') - #print (nomTraduit) - #print (self.label.font().pixelSize()) - #longueur2 = metrix.boundingRect(nomTraduit).width() - longueur=QFontMetrics(self.label.font()).width(nomTraduit) - if longueur >= nomMax : - nouveauNom=self.formate(nomTraduit) - self.label.setText(nouveauNom) - else : - self.label.setText(nomTraduit) - #clidedText = metrics.elidedText(text, Qt.ElideRight, label.width()); - #if (clippedText != nomTraduit): self.label.setToolTip(nomTraduit) - #self.label.setText(clippedText) - - #def agrandit(self): - # inutile pour certains widgets - # if self.height() < 40 : - # self.setMinimumHeight(50) - # self.resize(self.width(),200) - - #def mousePressEvent(self, event): - #print 'mousePressEvent' - #import inspect - #print (inspect.getmro(self.__class__)) - #self.__class__.mousePressEvent(self, event) - - - - def setValeurs(self): - # print "passe dans setValeurs pour ", self.objSimp.nom - # print "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!" - pass - - def finCommentaire(self): - return "" - - - def finCommentaireListe(self): - commentaire="" - mc = self.node.item.get_definition() - d_aides = { 'TXM' : 'chaines de caractere', - 'R' : 'reels', - 'I' : 'entiers', - 'C' : 'complexes'} - type = mc.type[0] - if not type in d_aides : - if mc.min == mc.max: - commentaire=tr("Entrez ")+str(mc.min)+tr(" valeurs ")+'\n' - else : - if mc.max != "**" : - commentaire=tr("entre ")+str(mc.min)+tr(" et ")+str(mc.max)+tr(" valeurs ")+'\n' - else : - commentaire="" - else : - if mc.min == mc.max: - commentaire=tr("Entrez ")+str(mc.min)+" "+tr(d_aides[type])+'\n' - elif mc.max == float('inf') : - commentaire=tr("Entrez une liste de ") +" "+tr(d_aides[type])+'\n' - else : - commentaire=tr("Entrez entre ")+"\n"+str(mc.min)+(" et ")+str(mc.max) +" " +tr(d_aides[type])+'\n' - aideval=self.node.item.aide() - commentaire=commentaire + tr(aideval) - return str(commentaire) - - - def setSuggestion(self): - if self.monSimpDef.getSug() != None and self.monSimpDef.getSug() != "": - suggere=str('

        suggestion : ')+str(self.monSimpDef.getSug())+"

        " - if hasattr(self,'lineEditVal'): self.lineEditVal.setToolTip(suggere) - - def setCommentaire(self): - c = self.debutToolTip - #if self.node.item.definition.validators : c+=self.node.item.definition.validators.aide() - self.aide=c - if self.objSimp.getFr() != None and self.objSimp.getFr() != "": - #c2 = '

        '+c+self.objSimp.getFr().decode('latin-1','replace')+"

        " - c2 = '

        '+c+self.objSimp.getFr() - #c2 = '

        '+c+self.objSimp.getFr()+"

        " - self.label.setToolTip(c2) - #self.aide=self.objSimp.getFr().decode('latin-1','ignore')+" "+c - self.aide=self.objSimp.getFr()+" "+c - else : - c+=self.finCommentaire() - if c != "" and c != None : - self.aide=c - #c=str('

        ')+c+"

        " - c=str('

        ')+c+"

        " - self.label.setToolTip(c) - - if self.editor.maConfiguration.differencieSiDefaut : - self.label.setToolTip('defaut : ' + tr(str(self.node.item.object.definition.defaut))) - - - - def showEvent(self, event): - if self.prendLeFocus==1 : - self.activateWindow() - "il faut deriver le showEvent pour" , self.nom - self.prendLeFocus=0 - QWidget.showEvent(self,event) - - def aideALaSaisie(self): - mc = self.node.item.get_definition() - mctype = mc.type[0] - d_aides = { 'TXM' : tr("chaine de caractere"), - 'R' : tr("reel"), - 'I' : tr("entier"), - 'C' : tr("complexe"), - 'Matrice' : tr(u'Matrice'), - 'Fichier' : tr(u'fichier'), - 'FichierNoAbs' : tr(u'fichier existant'), - 'Repertoire' : tr(u'repertoire')} - - if mc.min == mc.max: commentaire=tr("Entrez ")+" "+str(mc.min)+" " - else : commentaire=tr("Entrez entre ")+str(mc.min)+tr(" et ")+str(mc.max) + " " - - try : - if issubclass(mctype,object) : ctype = getattr(mctype, 'help_message', tr("Type de base inconnu")) - else : ctype = str(mcType) - except: - ctype = d_aides.get(mctype, tr("Type de base inconnu")) - if ctype == tr("Type de base inconnu") and "Tuple" in str(mctype): ctype=str(mctype) - if ctype == tr("Type de base inconnu") and "bool" in str(mctype): ctype='bool' - - if mc.max!=1 : - if ctype == 'chaine de caractere' and mc.max>1 : ctype = 'chaines de caractere' - else : ctype = ctype + 's' - commentaire+=ctype - return commentaire - - def setZoneInfo(self): - # info=str(self.nom)+' ' - # if self.monSimpDef.getFr() != None and self.monSimpDef.getFr() != "": info+=self.monSimpDef.getSug() +" " - # if self.monSimpDef.getSug() != None and self.monSimpDef.getSug() != "": info+="Valeur suggeree : "self.monSimpDef.getSug() - pass - - def reaffiche(self): - - if self.editor.jdc.aReafficher==True : - self.parentQt.reaffiche() - - #PN PN PN pas satisfaisant - #nodeAVoir=self.parentQt.node.chercheNoeudCorrespondant(self.objSimp) - #print nodeAVoir.fenetre - #print "nodeAVoir.fenetre.isVisible()", nodeAVoir.fenetre.isVisible() - #if nodeAVoir.fenetre.isVisible() : return - #self.editor.fenetreCentraleAffichee.rendVisibleNoeud(nodeAVoir) - #nodeAVoir.fenetre.setFocus() - # return # on est bien postionne - - if self.objSimp.isValid() and hasattr(self, 'AAfficher'): - nodeAVoir=self.parentQt.node.chercheNoeudCorrespondant(self.objSimp) - try : - index=self.editor.fenetreCentraleAffichee.listeAffichageWidget.index(nodeAVoir.fenetre.AAfficher) - if (index==len(self.editor.fenetreCentraleAffichee.listeAffichageWidget)-1) : - try : - nodeAVoir.fenetre.setValeursApresBouton() - except : - pass - else : - self.editor.fenetreCentraleAffichee.afficheSuivant(nodeAVoir.fenetre.AAfficher) - except : - pass - else : - if self.objSimp.isValid() and hasattr(self, 'AAfficher'): - try : - self.setValeursApresBouton() - except : - pass - self.editor.fenetreCentraleAffichee.afficheSuivant(self.AAfficher) - else : - if hasattr(self, 'AAfficher'): self.AAfficher.setFocus(7) - - def reaffichePourDeplier(self): - self.parentQt.reaffiche() - - def rendVisible(self): - pass - - #def enterEvent(self,event): - # print "je passe dans enterEvent", self.nom - # QWidget.enterEvent(self,event) - - def traiteClicSurLabel(self,texte): - #aide=self.aide.encode('latin-1', 'ignore').decode('latin-1')+"\n"+self.aideALaSaisie().encode('latin-1', 'ignore').decode('latin-1') - try : - aide=self.aide+"\n"+self.aideALaSaisie() - except : - aide=self.aideALaSaisie() - self.editor.afficheCommentaire(aide) - - def formate(self,t): - l=len(t)//2 - newText=t[0:l]+'-\n'+t[l:] - return newText diff --git a/InterfaceQT4/gereIcones.py b/InterfaceQT4/gereIcones.py deleted file mode 100644 index 0a17b742..00000000 --- a/InterfaceQT4/gereIcones.py +++ /dev/null @@ -1,428 +0,0 @@ -# -*- coding: utf-8 -*- -# Copyright (C) 2007-2021 EDF R&D -# -# 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 -# -# Modules Python -from __future__ import absolute_import -from __future__ import print_function -try : - from builtins import str - from builtins import object -except : pass - -import types,os,re,sys -import traceback -import inspect - -from PyQt5.QtWidgets import QMessageBox, QFileDialog , QMenu, QPushButton, QTreeView ,QListView, QAbstractItemView -from PyQt5.QtGui import QIcon -from PyQt5.QtCore import QFileInfo, Qt, QSize, QVariant - - -from Extensions.i18n import tr -listeSuffixe=('bmp','png','jpg' ,'txt','med') - - -class FacultatifOuOptionnel(object): - - def setReglesEtAide(self): - listeRegles=() - try : - listeRegles = self.node.item.getRegles() - except : - pass - if hasattr(self,"RBRegle"): - if listeRegles==() : self.RBRegle.close() - else : - icon3=QIcon(self.repIcon+"/lettreRblanc30.png") - self.RBRegle.setIcon(icon3) - self.RBRegle.clicked.connect(self.viewRegles) - - cle_doc=None - if not hasattr(self,"RBInfo"):return - icon=QIcon(self.repIcon+"/point-interrogation30.png") - self.RBInfo.setIcon(icon) - - from .monWidgetCommande import MonWidgetCommande - if isinstance(self,MonWidgetCommande) and self.editor.code =="MAP": - self.cle_doc = self.chercheDocMAP() - else : - self.cle_doc = self.node.item.getDocu() - if self.cle_doc == None : self.RBInfo.close() - else : self.RBInfo.clicked.connect (self.viewDoc) - - - def chercheDocMAP(self): - try : - clef=self.editor.maConfiguration.adresse+"/" - except : - return None - for k in self.editor.readercata.cata.JdC.dict_groupes: - if self.obj.nom in self.editor.readercata.cata.JdC.dict_groupes[k]: - clef+=k - break - clef+="/"+ self.obj.nom[0:-5].lower()+"/spec_"+self.obj.nom[0:-5].lower()+".html" - - return clef - - def viewDoc(self): - try : - if sys.platform[0:5]=="linux" : cmd="xdg-open "+self.cle_doc - else : cmd="start "+self.cle_doc - os.system(cmd) - except: - QMessageBox.warning( self,tr( "Aide Indisponible"),tr( "l'aide n est pas installee ")) - - def viewRegles(self): - self.node.appellebuildLBRegles() - - - def setIconePoubelle(self): - if not(hasattr(self,"RBPoubelle")):return - - if self.node.item.object.isOblig() and not( hasattr(self.node.item.object,'isDeletable') ): - icon=QIcon(self.repIcon+"/deleteRondVide.png") - self.RBPoubelle.setIcon(icon) - return - icon=QIcon(self.repIcon+"/deleteRond.png") - self.RBPoubelle.setIcon(icon) - self.RBPoubelle.clicked.connect(self.aDetruire) - - def setIconesSalome(self): - if not (hasattr(self,"RBSalome")): return - from Accas import SalomeEntry - mc = self.node.item.get_definition() - mctype = mc.type[0] - enable_salome_selection = self.editor.salome and \ - (('grma' in repr(mctype)) or ('grno' in repr(mctype)) or ('SalomeEntry' in repr(mctype)) or \ - (hasattr(mctype, "enable_salome_selection") and mctype.enable_salome_selection)) - - if enable_salome_selection: - icon=QIcon(self.repIcon+"/flecheSalome.png") - self.RBSalome.setIcon(icon) - self.RBSalome.pressed.connect(self.BSalomePressed) - -#PNPN --> Telemac A revoir surement -# cela ou le catalogue grpma ou salomeEntry - if not(('grma' in repr(mctype)) or ('grno' in repr(mctype))) or not(self.editor.salome): - if hasattr(self,"RBSalomeVue") : self.RBSalomeVue.close() - else : - icon1=QIcon(self.repIcon+"/eye.png") - self.RBSalomeVue.setIcon(icon1) - self.RBSalomeVue.clicked.connect(self.BView2DPressed) - else: - self.RBSalome.close() - self.RBSalomeVue.close() - - - def setIconesFichier(self): - if not ( hasattr(self,"BFichier")): return - mc = self.node.item.get_definition() - mctype = mc.type[0] - if mctype == "FichierOuRepertoire": - self.BFichierOuRepertoire=self.BFichier - self.BFichierOuRepertoire.clicked.connect(self.BFichierOuRepertoirePressed) - self.BVisuFichier.close() - elif mctype == "Repertoire": - self.BRepertoire=self.BFichier - self.BRepertoire.clicked.connect(self.BRepertoirePressed) - self.BVisuFichier.close() - else : - self.BFichier.clicked.connect(self.BFichierPressed) - self.BVisuFichier.clicked.connect(self.BFichierVisu) - - - - def setIconesGenerales(self): - repIcon=self.node.editor.appliEficas.repIcon - if hasattr(self,"BVisuListe") : - fichier=os.path.join(repIcon, 'plusnode.png') - icon = QIcon(fichier) - self.BVisuListe.setIcon(icon) - if hasattr(self,"RBDeplie") : - fichier=os.path.join(repIcon, 'plusnode.png') - icon = QIcon(fichier) - self.RBDeplie.setIcon(icon) - if hasattr(self,"RBPlie") : - fichier=os.path.join(repIcon, 'minusnode.png') - icon = QIcon(fichier) - self.RBPlie.setIcon(icon) - if hasattr(self,"BVisuFichier") : - fichier=os.path.join(repIcon, 'visuFichier.png') - icon = QIcon(fichier) - self.BVisuFichier.setIcon(icon) - - - - def setRun(self): - if hasattr(self.editor.appliEficas, 'mesScripts') : - if self.editor.code in self.editor.appliEficas.mesScripts : - self.dict_commandes_mesScripts=self.appliEficas.mesScripts[self.editor.code].dict_commandes - if self.obj.nom in self.dict_commandes_mesScripts : - self.ajoutScript() - icon=QIcon(self.repIcon+"/roue.png") - if hasattr(self,"RBRun"):self.RBRun.setIcon(icon) - return - if hasattr(self,"RBRun"): self.RBRun.close() - if hasattr(self,"CBScripts"): self.CBScripts.close() - - - def aDetruire(self): - self.node.delete() - - def setValide(self): - if not(hasattr (self,'RBValide')) : return - couleur=self.node.item.getIconName() - monIcone = QIcon(self.repIcon+"/" + couleur + ".png") - self.RBValide.setIcon(monIcone) - - # il faut chercher la bonne fenetre - def rendVisible(self): - #print "je passe par rendVisible de FacultatifOuOptionnel" - #print self - #print self.node.fenetre - #print "return pour etre sure" - return - #PNPN - newNode=self.node.treeParent.chercheNoeudCorrespondant(self.node.item.object) - #print newNode - self.editor.fenetreCentraleAffichee.scrollAreaCommandes.ensureWidgetVisible(newNode.fenetre) - #newNode.fenetre.setFocus() - - - def ajoutScript(self): - if not hasattr(self,'CBScripts') : return # Cas des Widgets Plies - self.dictCommandes={} - listeCommandes=self.dict_commandes_mesScripts[self.obj.nom] - if type(listeCommandes) != tuple: listeCommandes=(listeCommandes,) - i=0 - for commande in listeCommandes : - conditionSalome=commande[3] - if (self.appliEficas.salome == 0 and conditionSalome == True): continue - self.CBScripts.addItem(commande[1]) - self.dictCommandes[commande[1]]=i - i=i+1 - self.CBScripts.activated.connect(self.choixSaisi) - - def choixSaisi(self): - fction=str(self.CBScripts.currentText()) - numero= self.dictCommandes[fction] - self.node.appelleFonction(numero,nodeTraite=self.node) - #self.reaffiche() - -class ContientIcones(object): - - def BFichierVisu(self): - fichier=self.lineEditVal.text() - if fichier == None or str(fichier)=="" : return - from .monViewTexte import ViewText - try : - if sys.platform[0:5]=="linux" : - #cmd="xdg-open "+ str(fichier) - #changer pour marcher dans l'EDC - #cmd="gedit "+ str(fichier) - from os.path import splitext - fileName,extension = splitext(fichier) - if extension in self.parentQt.editor.appliEficas.maConfiguration.utilParExtensions: - cmd=self.parentQt.editor.appliEficas.maConfiguration.utilParExtensions[extension] + " " + str(fichier) - else: cmd="xdg-open "+ str(fichier) - os.system(cmd) - else : - os.startfile(str(fichier)) - except: - try : - fp=open(fichier) - txt=fp.read() - nomFichier=QFileInfo(fichier).baseName() - maVue=ViewText(self,entete=nomFichier) - maVue.setText(txt) - maVue.show() - fp.close() - except: - QMessageBox.warning( None, - tr("Visualisation Fichier "), - tr("Impossibilite d'afficher le Fichier"),) - - def BFichierPressed(self): - mctype = self.node.item.get_definition().type - if len(mctype) > 1: - filters = mctype[1] - elif hasattr(mctype[0], "filters"): - filters = mctype[0].filters - else: - filters = "" - if len(mctype) > 2 and mctype[2] == "Sauvegarde": - fichier = QFileDialog.getSaveFileName(self.appliEficas, - tr('Use File'), - self.appliEficas.maConfiguration.savedir, - filters) - else: - #print(filters) - fichier = QFileDialog.getOpenFileName(self.appliEficas, - tr('Ouvrir Fichier'), - self.appliEficas.maConfiguration.savedir, - filters) - - fichier=fichier[0] - if not(fichier == ""): - ulfile = os.path.abspath(fichier) - self.appliEficas.maConfiguration.savedir=os.path.split(ulfile)[0] - self.lineEditVal.setText(fichier) - self.editor.afficheCommentaire(tr("Fichier selectionne")) - self.LEvaleurPressed() - if (QFileInfo(fichier).suffix() in listeSuffixe ): - self.image=fichier - if (not hasattr(self,"BSelectInFile")): - try : - self.BSelectInFile = QPushButton(self) - self.BSelectInFile.setMinimumSize(QSize(140,40)) - self.BSelectInFile.setObjectName("BSelectInFile") - self.gridLayout.addWidget(self.BSelectInFile,1,1,1,1) - self.BSelectInFile.setText(tr("Selection")) - self.BSelectInFile.clicked.connect(self.BSelectInFilePressed) - except : - pass - else : - self.BSelectInFile.setVisible(1) - - elif hasattr(self, "BSelectInFile"): - self.BSelectInFile.setVisible(0) - - def BFichierOuRepertoirePressed(self): - self.fileName="" - self.file_dialog=QFileDialog() - self.file_dialog.setFileMode(QFileDialog.Directory); - self.file_dialog.setFileMode(QFileDialog.Directory|QFileDialog.ExistingFiles) - self.file_dialog.setOption(QFileDialog.DontUseNativeDialog,True); - self.file_dialog.setWindowTitle('Choose File or Directory') - self.explore(self.file_dialog) - self.file_dialog.exec_() - if self.fileName == "" : return - self.lineEditVal.setText(self.fileName) - self.LEvaleurPressed() - - - def explore(self,widget): - for c in widget.children() : - if isinstance(c, QTreeView) : - c.clicked.connect (self.changeBoutonOpen) - self.monTreeView=c - try : - if c.text() == "&Open" : self.monBoutonOpen=c - except : pass - self.explore(c) - - - def changeBoutonOpen(self): - self.monBoutonOpen.setEnabled(True) - self.monBoutonOpen.setText("Choose") - self.monBoutonOpen.clicked.connect(self.monBoutonOpenClicked) - index = self.monTreeView.currentIndex(); - self.fileName2 = self.monTreeView.model().data(index) - - def monBoutonOpenClicked(self): - try : - self.fileName=self.file_dialog.selectedFiles()[0] - except : - self.fileName=self.file_dialog.directory().absolutePath() - self.file_dialog.close() - self.file_dialog=None - - def BRepertoirePressed(self): - directory = QFileDialog.getExistingDirectory(self.appliEficas, - directory = self.appliEficas.maConfiguration.savedir, - options = QFileDialog.ShowDirsOnly) - - if not (directory == "") : - absdir = os.path.abspath(directory) - self.appliEficas.maConfiguration.savedir = os.path.dirname(absdir) - self.lineEditVal.setText(directory) - self.LEvaleurPressed() - - def BSelectInFilePressed(self): - from monSelectImage import MonSelectImage - MonSelectImage(file=self.image,parent=self).show() - - - - def BSalomePressed(self): - self.editor.afficheCommentaire("") - selection=[] - commentaire="" - genea=self.node.item.getGenealogie() - kwType = self.node.item.get_definition().type[0] - for e in genea: - if "GROUP_NO" in e: kwType = "GROUP_NO" - if "GROUP_MA" in e: kwType = "GROUP_MA" - - if 'grno' in repr(kwType): kwType = "GROUP_NO" - if 'grma' in repr(kwType): kwType = "GROUP_MA" - - if kwType in ("GROUP_NO","GROUP_MA"): - selection, commentaire = self.appliEficas.selectGroupFromSalome(kwType,editor=self.editor) - - mc = self.node.item.get_definition() - - if (isinstance(mc.type,tuple) and len(mc.type) > 1 and "(*.med)" in mc.type[1] ): - selection, commentaire = self.appliEficas.selectMeshFile(editor=self.editor) - #print selection, commentaire - if commentaire != "" : - QMessageBox.warning( None, - tr("Export Med vers Fichier "), - tr("Impossibilite d exporter le Fichier"),) - return - else : - self.lineEditVal.setText(str(selection)) - return - - from Accas import SalomeEntry - if inspect.isclass(kwType) and issubclass(kwType, SalomeEntry): - selection, commentaire = self.appliEficas.selectEntryFromSalome(kwType,editor=self.editor) - - if commentaire !="" : - self.editor.afficheInfos(tr(str(commentaire))) - if selection == [] : return - - min,max=self.node.item.getMinMax() - if max > 1 : - self.ajoutNValeur(selection) - return - - monTexte="" - for geomElt in selection: monTexte=geomElt+"," - monTexte= monTexte[0:-1] - self.lineEditVal.setText(str(monTexte)) - self.LEvaleurPressed() - - def BView2DPressed(self): - try : - # cas d un Simp de base - valeur=self.lineEditVal.text() - except : - valeur=self.textSelected - valeur = str(valeur) - if valeur == str("") : return - if valeur : - ok, msgError = self.appliEficas.displayShape(valeur) - if not ok: - self.editor.afficheInfos(msgError,Qt.red) - - def BParametresPressed(self): - liste=self.node.item.getListeParamPossible() - from monListeParamPanel import MonListeParamPanel - MonListeParamPanel(liste=liste,parent=self).show() diff --git a/InterfaceQT4/gereListe.py b/InterfaceQT4/gereListe.py deleted file mode 100644 index 84a27c5b..00000000 --- a/InterfaceQT4/gereListe.py +++ /dev/null @@ -1,341 +0,0 @@ -# -*- coding: utf-8 -*- -# Copyright (C) 2007-2021 EDF R&D -# -# 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 -# -# Modules Python - -from __future__ import absolute_import -try : - from builtins import str - from builtins import object -except : pass - -import types,os -import traceback - - -from PyQt5.QtWidgets import QLineEdit, QLabel, QFileDialog, QMessageBox -from PyQt5.QtCore import QEvent, Qt, QTimer -from PyQt5.QtGui import QIcon, QPalette - -from Extensions.i18n import tr -from InterfaceQT4.monViewTexte import ViewText - - -# ---------------------- # -class LECustom(QLineEdit): -# ---------------------- # - def __init__(self,parent,parentQt,i): - """ - Constructor - """ - QLineEdit.__init__(self,parent) - - self.parentQt=parentQt - self.num=i - self.dansUnTuple=False - self.numDsLaListe=-1 - self.parentTuple=None - self.valeur=None - self.aEuLeFocus=True - - def focusInEvent(self,event): - #print ("dans focusInEvent de LECustom") - self.parentQt.aEuLeFocus=True - self.aEuLeFocus=True - self.parentQt.lineEditEnCours=self - self.parentQt.numLineEditEnCours=self.num - self.parentQt.textSelected=self.text() - self.setStyleSheet("border: 2px solid gray") - QLineEdit.focusInEvent(self,event) - - def focusOutEvent(self,event): - #print ('focusOutEvent', self.aEuLeFocus) - self.setStyleSheet("border: 0px") - if self.dansUnTuple : self.setStyleSheet("background:rgb(235,235,235); border: 0px;") - elif self.num % 2 == 1 : self.setStyleSheet("background:rgb(210,210,210)") - else : self.setStyleSheet("background:rgb(235,235,235)") - if self.aEuLeFocus: - self.aEuLeFocus=False - self.litValeur() - if self.dansUnTuple : self.parentTuple.getValeur() - QLineEdit.focusOutEvent(self,event) - - - def litValeur(self): - #print ("dans litValeur de LECustom") - self.aEuLeFocus=False - val=str(self.text()) - if str(val)=="" or val==None : - self.valeur=None - return - try : - valeur=eval(val,{}) - except : - try : - d=self.parentQt.parentQt.objSimp.jdc.getContexteAvant(self.parentQt.objSimp. etape) - valeur=eval(val,d) - except : - valeur=val - self.valeur=valeur - #print ('self.valeur', self.valeur) - - - def clean(self): - self.setText("") - - def getValeur(self): - #return self.text() - self.litValeur() - return self.valeur - - def setValeur(self,valeur): - self.setText(valeur) - - - -# --------------------------- # -class LECustomTuple(LECustom): -# --------------------------- # - def __init__(self,parent): - # index sera mis a jour par TupleCustom - parentQt=parent.parent().parent().parent() - LECustom. __init__(self,parent,parentQt,0) - #print (dir(self)) - -# ---------------------------- # -class MonLabelListeClic(QLabel): -# ---------------------------- # - def __init__(self,parent): - QLabel.__init__(self,parent) - self.parent=parent - - def event(self,event) : - if event.type() == QEvent.MouseButtonRelease: - self.texte=self.text() - self.parent.traiteClicSurLabelListe(self.texte) - return QLabel.event(self,event) - -# ------------- # -class GereListe(object): -# ------------- # - def __init__(self): - self.connecterSignaux() - - def connecterSignaux(self): - if hasattr(self,'RBHaut'): - self.RBHaut.clicked.connect(self.hautPushed) - self.RBBas.clicked.connect(self.basPushed) - self.RBMoins.clicked.connect(self.moinsPushed) - self.RBPlus.clicked.connect(self.plusPushed) - self.RBVoisListe.clicked.connect(self.voisListePushed) - if hasattr(self,'PBAlpha'): - self.PBCata.clicked.connect(self.cataPushed) - self.PBAlpha.clicked.connect(self.alphaPushed) - self.PBFind.clicked.connect(self.findPushed) - self.LEFiltre.returnPressed.connect(self.LEFiltreReturnPressed) - if hasattr(self, 'PBValideFeuille'): - self.PBValideFeuille.clicked.connect(self.changeValeur) - - def filtreListe(self): - l=[] - if self.filtre != "" : - for i in self.listeAAfficher : - if i.find(self.filtre) == 0 :l.append(i) - self.listeAAfficher=l - if self.alpha : self.listeAAfficher.sort() - - def LEFiltreReturnPressed(self): - self.filtre= self.LEFiltre.text() - self.prepareListeResultatFiltre() - - def findPushed(self): - self.filtre= self.LEFiltre.text() - self.prepareListeResultatFiltre() - - def alphaPushed(self): - #print "alphaPushed" ,self.alpha - if self.alpha == 1 : return - self.alpha=1 - self.prepareListeResultat() - - def cataPushed(self): - if self.alpha == 0 : return - self.alpha=0 - self.prepareListeResultat() - - def hautPushed(self): - #print ('hautPushed') - if self.numLineEditEnCours == 0 : return - if self.numLineEditEnCours == 1 : return - else : numEchange=self.numLineEditEnCours-1 - self.echange(self.numLineEditEnCours,numEchange) - self.lineEditEnCours.setFocus(True) - self.scrollArea.ensureWidgetVisible(self.lineEditEnCours) - - - def basPushed(self): - #print ('hautPushed') - if self.numLineEditEnCours == 0 : return - if self.numLineEditEnCours == self.indexDernierLabel : return - else : numEchange=self.numLineEditEnCours+1 - self.echange(self.numLineEditEnCours,numEchange) - self.lineEditEnCours.setFocus(True) - self.scrollArea.ensureWidgetVisible(self.lineEditEnCours) - - def echange(self,num1,num2): - # on donne le focus au a celui ou on a bouge - # par convention le 2 - #print ('echange') - nomLineEdit=self.nomLine+str(num1) - #print (nomLineEdit) - courant=getattr(self,nomLineEdit) - valeurAGarder=courant.text() - nomLineEdit2=self.nomLine+str(num2) - #print (nomLineEdit2) - courant2=getattr(self,nomLineEdit2) - courant.setText(courant2.text()) - courant2.setText(valeurAGarder) - # pour monWidgetCreeUserAssd - self.num1=num1 - self.num2=num2 - self.changeValeur(changeDePlace=False) - self.numLineEditEnCours=num2 - self.lineEditEnCours=courant2 - self.lineEditEnCours.setFocus(True) - - def moinsPushed(self): - # on supprime le dernier - #print ('moinsPushed') - if self.numLineEditEnCours == 0 : return - if self.indexDernierLabel == 0 : return - if self.numLineEditEnCours==self.indexDernierLabel : - nomLineEdit=self.nomLine+str(self.indexDernierLabel) - courant=getattr(self,nomLineEdit) - courant.clean() - else : - for i in range (self.numLineEditEnCours, self.indexDernierLabel): - aRemonter=i+1 - nomLineEdit=self.nomLine+str(aRemonter) - courant=getattr(self,nomLineEdit) - valeurARemonter=courant.getValeur() - nomLineEdit=self.nomLine+str(i) - courant=getattr(self,nomLineEdit) - if valeurARemonter != None : courant.setValeur(valeurARemonter) - else : courant.clean() - nomLineEdit=self.nomLine+str(self.indexDernierLabel) - courant=getattr(self,nomLineEdit) - courant.clean() - self.changeValeur(changeDePlace=False,oblige=True) - self.setValide() - - def plusPushed(self): - #print ('plusPushed gereliste') - if self.indexDernierLabel == self.monSimpDef.max: - if len(self.listeValeursCourantes) < self.monSimpDef.max : self.chercheLigneVide() - else : self.editor.afficheInfos('nb max de valeurs : '+str(self.monSimpDef.max)+' atteint',Qt.red) - return - self.ajoutLineEdit() - self.descendLesLignes() - self.chercheLigneVide() - QTimer.singleShot(1, self.rendVisibleLigne) - - def chercheLigneVide(self): - #print ('chercheLigneVide') - for i in range(self.indexDernierLabel) : - nomLineEdit=self.nomLine+str(i+1) - courant=getattr(self,nomLineEdit) - valeur=courant.getValeur() - if valeur=="" or valeur == None : - courant.setFocus(True) - self.estVisible=courant - - def descendLesLignes(self): - #print ('descendLesLignes') - if self.numLineEditEnCours==self.indexDernierLabel : return - nomLineEdit=self.nomLine+str(self.numLineEditEnCours+1) - courant=getattr(self,nomLineEdit) - valeurADescendre=courant.getValeur() - courant.clean() - for i in range (self.numLineEditEnCours+1, self.indexDernierLabel): - aDescendre=i+1 - nomLineEdit=self.nomLine+str(aDescendre) - courant=getattr(self,nomLineEdit) - valeurAGarder=courant.getValeur() - courant.setValeur(valeurADescendre) - valeurADescendre=valeurAGarder - self.changeValeur(changeDePlace=False) - if hasattr (self, 'lineEditEnCours') :self.scrollArea.ensureWidgetVisible(self.lineEditEnCours) - - def voisListePushed(self): - texteValeurs="" - for v in self.node.item.getListeValeurs(): - texteValeurs+=str(v)+", " - entete="Valeurs pour "+self.nom - f=ViewText(self,self.editor,entete,texteValeurs[0:-2]) - f.show() - - - def selectInFile(self): - init=str( self.editor.maConfiguration.savedir) - fn = QFileDialog.getOpenFileName(self.node.appliEficas, - tr("Fichier de donnees"), - init, - tr('Tous les Fichiers (*)',)) - fn=fn[0] - if fn == None : return - if fn == "" : return - ulfile = os.path.abspath(fn) - self.editor.maConfiguration.savedir=os.path.split(ulfile)[0] - - from .monSelectVal import MonSelectVal - MonSelectVal(file=fn,parent=self).show() - - def noircirResultatFiltre(self): - filtre=str(self.LEFiltre.text()) - for cb in self.listeCbRouge: - palette = QPalette(Qt.red) - palette.setColor(QPalette.WindowText,Qt.black) - cb.setPalette(palette) - t=cb.text() - cb.setText(t) - self.LEFiltre.setText("") - self.listeCbRouge = [] - - -# ----------- # -class GerePlie(object): -# ----------- # - - def gereIconePlier(self): - if not(hasattr(self,'BFermeListe')) : return - self.editor.listeDesListesOuvertes.add(self.node.item) - repIcon=self.node.editor.appliEficas.repIcon - if not (self.editor.afficheListesPliees): - fichier=os.path.join(repIcon, 'empty.png') - icon = QIcon(fichier) - self.BFermeListe.setIcon(icon) - return - fichier=os.path.join(repIcon, 'minusnode.png') - icon = QIcon(fichier) - self.BFermeListe.setIcon(icon) - self.BFermeListe.clicked.connect( self.selectWidgetPlie) - - def selectWidgetPlie(self): - self.editor.listeDesListesOuvertes.remove(self.node.item) - self.reaffichePourDeplier() diff --git a/InterfaceQT4/gereRegles.py b/InterfaceQT4/gereRegles.py deleted file mode 100644 index 49aef48c..00000000 --- a/InterfaceQT4/gereRegles.py +++ /dev/null @@ -1,70 +0,0 @@ -# -*- coding: utf-8 -*- -# Copyright (C) 2007-2021 EDF R&D -# -# 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 -# - -from __future__ import absolute_import -try : - from builtins import object -except : pass - -from PyQt5.QtCore import Qt -from .monViewRegles import ViewRegles -from Extensions.i18n import tr - -class GereRegles(object) : - - def appellebuildLBRegles(self): - from .browser import JDCTree - if isinstance(self,JDCTree): - self.appellebuildLBReglesForJdC() - else : - self.appellebuildLBReglesForCommand() - self.buildLBRegles(self.listeRegles,self.listeNomsEtapes) - self.afficheRegles() - - def appellebuildLBReglesForCommand(self): - self.listeRegles = self.item.getRegles() - self.listeNomsEtapes = self.item.getMcPresents() - - def appellebuildLBReglesForJdC(self): - self.listeRegles=self.item.getRegles() - self.listeNomsEtapes = self.item.getLNomsEtapes() - - - def buildLBRegles(self,listeRegles,listeNomsEtapes): - self.liste=[] - if len(listeRegles) > 0: - for regle in listeRegles : - texteRegle=regle.getText() - texteMauvais,test = regle.verif(listeNomsEtapes) - for ligne in texteRegle.split("\n") : - if ligne == "" : continue - if ligne[0]=="\t" : ligne=" "+ligne[1:] - if test : - self.liste.append((ligne,Qt.black)) - else : - self.liste.append((ligne,Qt.red)) - self.liste.append(("",Qt.red)) - if self.liste==[] : self.liste.append(("pas de regle de construction pour ce jeu de commandes",Qt.black)) - - - def afficheRegles(self): - titre="Regles pour "+self.item.nom - w = ViewRegles( self.editor,self.liste,titre ) - w.exec_() diff --git a/InterfaceQT4/gereTraduction.py b/InterfaceQT4/gereTraduction.py deleted file mode 100644 index 29aa8b4e..00000000 --- a/InterfaceQT4/gereTraduction.py +++ /dev/null @@ -1,86 +0,0 @@ -# Copyright (C) 2007-2021 EDF R&D -# -# 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 -# -from __future__ import absolute_import -try : - from builtins import str -except : pass - -from PyQt5.QtWidgets import QFileDialog, QApplication - -import os -from Extensions.i18n import tr - - -def traduction(directPath,editor,version): - if version == "V9V10" : - from Traducteur import traduitV9V10 - suffixe="v10.comm" - if version == "V10V11" : - from Traducteur import traduitV10V11 - suffixe="v11.comm" - if version == "V11V12" : - from Traducteur import traduitV11V12 - suffixe="v12.comm" - - fn = QFileDialog.getOpenFileName( - editor.appliEficas, - tr('Traduire Fichier'), - directPath , - tr('Fichiers JDC (*.comm);;''Tous les Fichiers (*)')) - - - fn=fn[0] - FichieraTraduire=str(fn) - if (FichieraTraduire == "" or FichieraTraduire == () ) : return - i=FichieraTraduire.rfind(".") - Feuille=FichieraTraduire[0:i] - FichierTraduit=Feuille+suffixe - - i=Feuille.rfind("/") - directLog=Feuille[0:i] - log=directLog+"/convert.log" - os.system("rm -rf "+log) - os.system("rm -rf "+FichierTraduit) - - QApplication.setOverrideCursor(QCursor(Qt.WaitCursor)) - if version == "V9V10" : traduitV9V10.traduc(FichieraTraduire,FichierTraduit,log) - if version == "V10V11" : traduitV10V11.traduc(FichieraTraduire,FichierTraduit,log) - if version == "V11V12" : traduitV11V12.traduc(FichieraTraduire,FichierTraduit,log) - QApplication.setOverrideCursor(QCursor(Qt.ArrowCursor)) - - Entete=tr("Fichier Traduit : %s\n\n",str(FichierTraduit)) - if os.stat(log)[6] != 0 : - f=open(log) - texte= f.read() - f.close() - else : - texte = Entete - commande="diff "+FichieraTraduire+" "+FichierTraduit+" >/dev/null" - try : - if os.system(commande) == 0 : - texte = texte + tr("Pas de difference entre le fichier origine et le fichier traduit") - except : - pass - - from .monVisu import DVisu - titre = "conversion de "+ FichieraTraduire - monVisuDialg=DVisu(parent=editor.appliEficas,fl=0) - monVisuDialg.setWindowTitle(titre) - monVisuDialg.TB.setText(texte) - monVisuDialg.show() diff --git a/InterfaceQT4/getVersion.py b/InterfaceQT4/getVersion.py deleted file mode 100644 index a4976d08..00000000 --- a/InterfaceQT4/getVersion.py +++ /dev/null @@ -1,55 +0,0 @@ -# -*- coding: utf-8 -*- -# Copyright (C) 2007-2021 EDF R&D -# -# 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 -# -# Management of EFICAS version numbering. -# A version has at least major and minor numbers, for easier comparison. - -__version = { - 'major': 9, - 'minor': 3 - } - -def getEficasVersion(): - """ - Return the EFICAS current version number. - """ - return "%s.%s"%(getMajor(),getMinor()) -# - -def getSalomeVersion(): - """ - Return the SALOME version number to which current EFICAS version is related. - """ - return getEficasVersion() -# - -def getMajor(): - return __version['major'] -# - -def getMinor(): - return __version['minor'] -# - -def getBaseVersion(): - """ - Returns [ major, minor ] array of integers. - """ - return [ getMajor(), getMinor() ] -# diff --git a/InterfaceQT4/groupe.py b/InterfaceQT4/groupe.py deleted file mode 100644 index 93b2225c..00000000 --- a/InterfaceQT4/groupe.py +++ /dev/null @@ -1,216 +0,0 @@ -# Copyright (C) 2007-2021 EDF R&D -# -# 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 -# -# Modules Python -# Modules Eficas - -from __future__ import absolute_import -from __future__ import print_function -from PyQt5.QtWidgets import QWidget, QSpacerItem, QSizePolicy -from PyQt5.QtCore import Qt - -from Extensions.i18n import tr - -from .gereIcones import FacultatifOuOptionnel -import Accas -import traceback - - -# Import des panels - -class Groupe(QWidget,FacultatifOuOptionnel): - """ - """ - def __init__(self,node,editor,parentQt,definition,obj,niveau,commande=None): - #print ("groupe : ",self.node.item.nom," ",self.node.fenetre) - QWidget.__init__(self,None) - self.node=node - self.node.fenetre=self - self.setupUi(self) - self.editor=editor - self.obj=obj - self.niveau=niveau - self.definition=definition - self.parentQt=parentQt - self.maCommande=commande - self.listeFocus=[] - self.appliEficas=self.editor.appliEficas - self.repIcon=self.appliEficas.repIcon - self.jdc=self.node.item.getJdc() - self.setIconePoubelle() - self.setIconesGenerales() - self.setRun() - self.setValide() - self.setReglesEtAide() - self.afficheMots() - self.listeMCAAjouter=[] - self.dictMCVenantDesBlocs={} - if hasattr(self,'RBDeplie') : self.RBDeplie.clicked.connect(self.setDeplie) - if hasattr(self,'RBPlie') : self.RBPlie.clicked.connect( self.setPlie) - - self.setAcceptDrops(True) - #if hasattr (self, 'commandesLayout'): - # print (' j ajoute un spacer dans ', self.node.item.nom) - # spacerItem = QSpacerItem(20, 5, QSizePolicy.Minimum, QSizePolicy.Expanding) - # self.commandesLayout.addItem(spacerItem) - - def donneFocus(self): - for fenetre in self.listeFocus: - if fenetre==None : return - if fenetre.node.item.isValid() == 0 : - fenetre.prendLeFocus=1 - fenetre.hide() - fenetre.show() - - - def afficheMots(self): - #print ("ds afficheMots ",self.node.item.nom,self.node.plie) - for node in self.node.children: - # non return mais continue car il faut tenir compte des blocs - if node.appartientAUnNoeudPlie==True : continue - widget=node.getPanelGroupe(self,self.maCommande) - #print ("widget pour ", node.item.nom, widget) - self.listeFocus.append(node.fenetre) - #print "fin pour " , self.node.item.nom - - - def calculOptionnel(self): - self.listeMc=[] - self.listeMcRegle=[] - self.dictToolTipMc={} - genea =self.obj.getGenealogie() - # Attention : les mots clefs listes (+sieurs fact ) - # n ont pas toutes ces methodes - try : - #if 1 : - self.listeMc = self.obj.getListeMcOrdonnee(genea,self.jdc.cata_ordonne_dico) - listeNomsPresents=self.obj.dictMcPresents() - for regle in self.obj.getRegles(): - (monToolTip,regleOk)=regle.verif(listeNomsPresents) - if regleOk : continue - for mc in regle.mcs : - self.listeMcRegle.append(mc) - self.dictToolTipMc[mc]=monToolTip - except : - #print ('in except') - #print (self) - return - - def afficheOptionnel(self): - if self.editor.maConfiguration.closeOptionnel : return - liste,liste_rouge=self.ajouteMCOptionnelDesBlocs() - self.monOptionnel=self.editor.widgetOptionnel - self.monOptionnel.afficheOptionnel(liste,liste_rouge,self) - - - def ajouteMCOptionnelDesBlocs(self): - self.dictMCVenantDesBlocs={} - i=0 - self.calculOptionnel() - liste=self.listeMc - liste_rouge=self.listeMcRegle - for MC in self.listeMc : self.dictMCVenantDesBlocs[MC]=self - # ce cas est le cas machine tournant sr le plie - try : - while i < self.commandesLayout.count(): - from .monWidgetBloc import MonWidgetBloc - widget=self.commandesLayout.itemAt(i).widget() - i=i+1 - if not(isinstance(widget,MonWidgetBloc)) : continue - widget.calculOptionnel() - listeW,listeW_rouge=widget.ajouteMCOptionnelDesBlocs() - for MC in widget.dictMCVenantDesBlocs: - if MC in self.dictMCVenantDesBlocs: print ("Pb Sur les MC" ) - else : self.dictMCVenantDesBlocs[MC]=widget.dictMCVenantDesBlocs[MC] - liste=liste+listeW - liste_rouge=liste_rouge+listeW_rouge - except : - pass - return (liste,liste_rouge) - - - def reaffiche(self,nodeAVoir=None): - #print "dans reaffiche de groupe.py", nodeAVoir - self.parentQt.reaffiche(nodeAVoir) - - def recalculeListeMC(self,listeMC): - #print "pas si peu utile" - #on ajoute et on enleve - listeNode=[] - for name in listeMC : - nodeAEnlever=self.node.appendChild(name) - if nodeAEnlever.item.isMCList(): - nodeAEnlever=nodeAEnlever.children[-1] - listeNode.append(nodeAEnlever) - self.afficheOptionnel() - self.monOptionnel.affiche(self.listeMc) - if len(listeNode) == 0 : return - if len(listeNode) == 1 : - listeNode[0].delete() - self.editor.afficheInfos("") - return - for noeud in listeNode: - noeud.treeParent.item.suppItem(noeud.item) - noeud.treeParent.buildChildren() - self.editor.afficheInfos("") - - def ajoutMC(self,texteListeNom): - listeNom=texteListeNom.split("+")[1:] - firstNode=None - for nom in listeNom: - if nom not in self.dictMCVenantDesBlocs: - #print "bizarre, bizarre" - self.editor.initModif() - nouveau=self.node.appendChild(nom) - else : - self.editor.initModif() - widget=self.dictMCVenantDesBlocs[nom] - nouveau=widget.node.appendChild(nom) - if firstNode==None : firstNode=nouveau - if nouveau == None or nouveau == 0 : - self.editor.afficheInfos(tr('insertion impossible a cet endroit pour '+nom),Qt.red) - try : - self.reaffiche(firstNode) - if firstNode!=None and firstNode !=0 and firstNode.item!=None : firstNode.select() - except : - pass - - - def setPlie(self): - self.node.setPlie() - self.reaffiche(self.node) - - def setDeplie(self): - #print ('je passe ds setDeplie de groupe', self.obj.nom) - self.node.firstDeplie = False - self.node.setDeplie() - self.reaffiche(self.node) - - - def traiteClicSurLabel(self,texte): - if self.editor.code != "CARMELCND" : self.afficheOptionnel() - try : - fr = self.node.item.getFr() - self.editor.afficheCommentaire(str(fr)) - except : - pass - - - - def propageChange(self,leType,donneLefocus): - self.parentQt.propageChange(leType,donneLefocus) diff --git a/InterfaceQT4/monBoutonValide.py b/InterfaceQT4/monBoutonValide.py deleted file mode 100644 index 12767af9..00000000 --- a/InterfaceQT4/monBoutonValide.py +++ /dev/null @@ -1,72 +0,0 @@ -#!/usr/bin/env python -# -*- coding: utf-8 -*- -# Copyright (C) 2007-2021 EDF R&D -# -# 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 -# - -from __future__ import absolute_import -import re -import os - - -from PyQt5.QtWidgets import QToolButton, QToolTip -from Extensions.i18n import tr - -class MonBoutonValide(QToolButton) : - - def __init__(self,parent): - QToolButton.__init__(self,parent) - while( not(hasattr(parent,'node'))): - parent= parent.parent() - self.parent=parent - - def mouseDoubleClickEvent(self, event): - #print "dans mouseDoubleClickEvent" - strAide=self.parent.node.item.object.getFr() - if hasattr(self.parent.node.item.object.definition, 'defaut') : - strAide+='\ndefaut : \n'+str(self.parent.node.item.object.definition.defaut) - strRapport=str(self.parent.node.item.object.report()) - self.parent.editor._viewText(strAide+"\n"+strRapport, "JDC_RAPPORT") - - def mousePressEvent(self, event): - #print "dans mousePressEvent" - if self.parent.node.item.object.isValid() : - myToolTip=tr("objet valide") - if self.parent.editor.maConfiguration.differencieSiDefaut : - if hasattr(self.parent.node.item.object.definition, 'defaut') : - if self.parent.node.item.object.valeur != self.parent.node.item.object.definition.defaut : - myToolTip+='\ndefaut : \n'+str(self.parent.node.item.object.definition.defaut) - - QToolTip.showText(event.globalPos(),myToolTip ) - else : - t="" - texte=self.parent.node.item.object.report().report() - deb=1 - for l in texte.split('\n')[2:-2]: - if re.match('^[\t !]*$',l) : continue - if re.match('^ *Fin Mot-cl',l) : continue - if re.match('^ *D?but Mot-cl',l) : continue - if re.match('^ *Mot-cl',l) : continue - l=l.replace('!','') - if deb : - deb=0 - t=l - else : - t=t+'\n'+l - myToolTip=tr(t) - QToolTip.showText(event.globalPos(),myToolTip ) diff --git a/InterfaceQT4/monChoixCata.py b/InterfaceQT4/monChoixCata.py deleted file mode 100644 index 646aab02..00000000 --- a/InterfaceQT4/monChoixCata.py +++ /dev/null @@ -1,49 +0,0 @@ -# -*- coding: utf-8 -*- -# Copyright (C) 2007-2021 EDF R&D -# -# 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 -# -# Modules Python -# Modules Eficas - -from __future__ import absolute_import -from desChoixCata import Ui_DChoixCata -from PyQt5.QtWidgets import QDialog - -from Extensions.i18n import tr -# Import des panels - -class MonChoixCata(Ui_DChoixCata,QDialog): - """ - """ - def __init__(self, QWparent, listeCata, title = None): - QDialog.__init__(self, QWparent) - self.setModal(True) - self.setupUi(self) - self.CBChoixCata.addItems(listeCata) - self.TLNb.setText(tr("%d versions du catalogue sont disponibles", len(listeCata))) - if title is not None: - self.setWindowTitle(tr(title)) - self.buttonOk.clicked.connect(self.cataChoisi) - self.buttonCancel.clicked.connect(self.sortSansChoix) - - - def sortSansChoix(self): - QDialog.reject(self) - - def cataChoisi(self): - QDialog.accept(self) diff --git a/InterfaceQT4/monChoixCode.py b/InterfaceQT4/monChoixCode.py deleted file mode 100644 index bae07cf3..00000000 --- a/InterfaceQT4/monChoixCode.py +++ /dev/null @@ -1,113 +0,0 @@ -# -*- coding: utf-8 -*- -# Copyright (C) 2007-2021 EDF R&D -# -# 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 -# -# Modules Python -# Modules Eficas - -from __future__ import absolute_import -try : - from builtins import str -except : pass - -import os,sys,re -from desChoixCode import Ui_ChoixCode -from PyQt5.QtWidgets import QDialog, QRadioButton, QGroupBox, QButtonGroup -from PyQt5.QtGui import QPalette -from PyQt5.QtCore import QProcess, QFileInfo, Qt, QSize - - -# Import des panels - -class MonChoixCode(Ui_ChoixCode,QDialog): - """ - Classe definissant le panel associe aux mots-cles qui demandent - a l'utilisateur de choisir une seule valeur parmi une liste de valeurs - discretes - """ - def __init__(self, appliEficas=None): - QDialog.__init__(self,parent=appliEficas,flags=Qt.Window) - self.setModal(True) - self.setupUi(self) - self.appliEficas=appliEficas - self.verifieInstall() - self.code=None - self.buttonBox.accepted.disconnect(self.accept) - self.buttonBox.accepted.connect(self.choisitCode) - # self.pB_OK.clicked.connect(self.choisitCode) - #self.pB_cancel.clicked.connect(self.sortie) - - def sortie(self): - QDialog.reject(self) - - def verifieInstall(self): - self.groupCodes=QButtonGroup(self.groupBox) - vars=list(os.environ.items()) - listeCode=('Adao','Carmel3D','CarmelCND','CF','MAP','MT','PSEN','PSEN_N1','Telemac','ZCracks',) - for code in listeCode: - dirCode=os.path.abspath(os.path.join(os.path.abspath(__file__),'../..',code)) - try : - l=os.listdir(dirCode) - bouton=QRadioButton(self.groupBox) - bouton.setText(code) - self.groupCodes.addButton(bouton) - self.vlBouton.addWidget(bouton) - except : - clef="PREFS_CATA_"+code - try : - repIntegrateur=os.path.abspath(os.environ[clef]) - l=os.listdir(repIntegrateur) - bouton=QRadioButton(self.groupBox) - bouton.setText(code) - bouton.show() - self.groupCodes.addButton(bouton) - except : - pass - listeCodesIntegrateur=[] - for k,v in vars: - if re.search('^PREFS_CATA_',k) != None and k[11:] not in listeCode: - listeCodesIntegrateur.append(k[11:]) - for code in listeCodesIntegrateur: - try : - clef="PREFS_CATA_"+code - repIntegrateur=os.path.abspath(os.environ[clef]) - l=os.listdir(repIntegrateur) - bouton=QRadioButton(self) - bouton.setText(code) - bouton.show() - self.groupCodes.addButton(bouton) - except : - pass - self.appliEficas.listeCode=self.appliEficas.listeCode+listeCodesIntegrateur - - def choisitCode(self): - bouton=self.groupCodes.checkedButton() - if bouton==None : return - code=str(bouton.text()) - codeUpper=code.upper() - self.appliEficas.code=codeUpper - try : - dirCode=os.path.abspath(os.path.join(os.path.abspath(__file__),'../..',code)) - l=os.listdir(dirCode) - sys.path.insert(0,dirCode) - except : - clef="PREFS_CATA_"+code - repIntegrateur=os.path.abspath(os.environ[clef]) - l=os.listdir(repIntegrateur) - sys.path.insert(0,repIntegrateur) - self.close() diff --git a/InterfaceQT4/monChoixCommande.py b/InterfaceQT4/monChoixCommande.py deleted file mode 100644 index d5cfa2f0..00000000 --- a/InterfaceQT4/monChoixCommande.py +++ /dev/null @@ -1,358 +0,0 @@ -# Copyright (C) 2007-2021 EDF R&D -# -# 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 -# -# Modules Python -# Modules Eficas - -from __future__ import absolute_import -try : - from builtins import str -except : pass - -from desChoixCommandes import Ui_ChoixCommandes -from PyQt5.QtWidgets import QWidget, QAction ,QButtonGroup, QRadioButton, QLabel , QPushButton, QSpacerItem, QSizePolicy, QGridLayout -from PyQt5.QtGui import QIcon, QPixmap -from PyQt5.QtCore import QSize, QRect - -from Extensions.i18n import tr -import os - - -# Import des panels - -class MonChoixCommande(Ui_ChoixCommandes,QWidget): - """ - """ - def __init__(self,node, jdc_item, editor): - QWidget.__init__(self,parent=None) - self.setupUi(self) - - self.repIcon=os.path.join( os.path.dirname(os.path.abspath(__file__)),'..','Editeur','icons') - iconeFile=os.path.join(self.repIcon,'lettreRblanc30.png') - icon = QIcon(iconeFile) - self.RBRegle.setIcon(icon) - self.RBRegle.setIconSize(QSize(21, 31)) - - self.item = jdc_item - self.node = node - self.editor = editor - self.simpleClic=self.editor.maConfiguration.simpleClic - self.jdc = self.item.object.getJdcRoot() - debutTitre=self.editor.titre - self.listeWidget=[] - self.dicoCmd={} - if self.editor.fichier != None : - nouveauTitre=debutTitre+" "+os.path.basename(self.editor.fichier) - else : - nouveauTitre=debutTitre - self.editor.appliEficas.setWindowTitle(nouveauTitre) - - - self.RBalpha.clicked.connect(self.afficheAlpha) - self.RBGroupe.clicked.connect(self.afficheGroupe) - self.RBOrdre.clicked.connect(self.afficheOrdre) - self.RBClear.clicked.connect(self.clearFiltre) - self.RBCasse.toggled.connect(self.ajouteRadioButtons) - self.LEFiltre.returnPressed.connect(self.ajouteRadioButtons) - self.LEFiltre.textChanged.connect(self.ajouteRadioButtons) - - if self.node.tree.item.getRegles() == () : - self.RBRegle.close() - self.labelRegle.close() - else : - self.RBRegle.clicked.connect(self.afficheRegle) - - if self.editor.readercata.Ordre_Des_Commandes == None : self.RBOrdre.close() - - - #self.editor.labelCommentaire.setText("") - if self.editor.widgetOptionnel!= None : - self.editor.fermeOptionnel() - self.editor.widgetOptionnel=None - self.name=None - - self.boolAlpha=0 - self.boolGroupe=0 - self.boolOrdre=0 - if self.editor.maConfiguration.affiche=="alpha" : - self.boolAlpha==1; - self.RBalpha.setChecked(True); - self.afficheAlpha() - elif self.editor.maConfiguration.affiche=="groupe" : - self.boolGroupe==1; - self.RBGroupe.setChecked(True); - self.afficheGroupe() - elif self.editor.maConfiguration.affiche=="ordre" : - self.boolOrdre==1; - self.RBOrdre.setChecked(True); - self.afficheOrdre() - if self.editor.maConfiguration.closeFrameRechercheCommandeSurPageDesCommandes == True : self.frameAffichage.close() - - if self.editor.widgetTree != None : self.editor.restoreSplitterSizes(2) - else: self.editor.restoreSplitterSizes(3) - - def afficheRegle(self): - self.node.tree.appellebuildLBRegles() - - def afficheAlpha(self): - self.boolAlpha=1 - self.boolGroupe=0 - self.boolOrdre=0 - self.ajouteRadioButtons() - - def afficheGroupe(self): - self.boolAlpha=0 - self.boolGroupe=1 - self.boolOrdre=0 - self.ajouteRadioButtons() - - def afficheOrdre(self): - self.boolAlpha=0 - self.boolGroupe=0 - self.boolOrdre=1 - self.ajouteRadioButtons() - - def insereNoeudApresClick(self,event): - #print self.editor.Classement_Commandes_Ds_Arbre - #if self.editor.Classement_Commandes_Ds_Arbre!= () : self.chercheOu() - #print ('dans insereNoeudApresClick') - nodeCourrant=self.node.tree.currentItem() - if nodeCourrant==None: nodeCourrant=self.node.tree.racine - if self.name != None : - plier=self.editor.maConfiguration.afficheCommandesPliees - if nodeCourrant==self.node : nouveau=self.node.appendChild(self.name,'first',plier) - else : nouveau=nodeCourrant.appendBrother(self.name,plier=plier) - else : - nouveau = 0 - if nouveau == 0 : return # on n a pas insere le noeud - nouveau.setDeplie() - #if self.editor.afficheApresInsert==True : nouveau.plieToutEtReaffiche() - if self.editor.afficheApresInsert == True : - #if self.editor.affichePlie==True: nouveau.plieToutEtReaffiche() - if self.editor.maConfiguration.afficheCommandesPliees ==True: nouveau.plieToutEtReaffiche() - else : nouveau.deplieToutEtReaffiche() - nouveau.fenetre.donnePremier() - #nouveau.deplieToutEtReaffiche() - else : - self.node.setSelected(False) - nouveau.setSelected(True) - self.node.tree.setCurrentItem(nouveau) - if event != None : event.accept() - - - - def creeListeCommande(self,filtre): - listeGroupes,dictGroupes=self.jdc.getGroups() - sensibleALaCasse=self.RBCasse.isChecked() - if "CACHE" in dictGroupes: aExclure=list(dictGroupes["CACHE"]) - else: aExclure=[] - listeACreer=[] - listeEtapesDejaPresentes=[] - if self.editor.maConfiguration.rendVisiblesLesCaches : - for e in self.jdc.etapes: - listeEtapesDejaPresentes.append(e.nom) - for c in aExclure : - if c not in listeEtapesDejaPresentes : aExclure.remove(c) - for e in self.jdc.etapes: - print (e.nom) - print (e.definition.repetable) - if e.definition.repetable == 'n' : aExclure.append(e.nom) - print (aExclure) - for l in self.jdc.getListeCmd(): - print (l) - if l not in aExclure : - if sensibleALaCasse and (filtre != None and not filtre in l) : continue - if (not sensibleALaCasse) and filtre != None and (not filtre in l) and (not filtre.upper() in l) : continue - listeACreer.append(l) - return listeACreer - - def ajouteRadioButtons(self): - if self.editor.maConfiguration.nombreDeBoutonParLigne != 0 : - self.ajoutePushButtons() - return - filtre=str(self.LEFiltre.text()) - if filtre==str("") : filtre=None - if hasattr(self,'buttonGroup') : - for b in self.buttonGroup.buttons(): - self.buttonGroup.removeButton(b) - b.setParent(None) - b.close() - else : - self.buttonGroup = QButtonGroup() - for w in self.listeWidget : - w.setParent(None) - w.close() - self.listeWidget=[] - if self.boolAlpha==1 : - liste=self.creeListeCommande(filtre) - for cmd in liste : - self.dicoCmd[tr(cmd)]=cmd - rbcmd=(QRadioButton(tr(cmd))) - self.buttonGroup.addButton(rbcmd) - self.commandesLayout.addWidget(rbcmd) - #if self.simpleClic : rbcmd.mouseReleaseEvent=self.insereNoeudApresClick - #else : rbcmd.mouseDoubleClickEvent=self.insereNoeudApresClick - #self.buttonGroup.buttonClicked.connect(self.rbClique) - if not(self.simpleClic ): rbcmd.mouseDoubleClickEvent=self.insereNoeudApresClick - if self.simpleClic : - self.buttonGroup.buttonClicked.connect(self.rbCliqueEtInsere) - else : - self.buttonGroup.buttonClicked.connect(self.rbClique) - elif self.boolGroupe==1 : - listeGroupes,dictGroupes=self.jdc.getGroups() - for grp in listeGroupes: - if grp == "CACHE" : continue - label=QLabel(self) - text=tr('

        Groupe : '+tr(grp)+'

        ') - label.setText(text) - self.listeWidget.append(label) - aAjouter=1 - sensibleALaCasse=self.RBCasse.isChecked() - for cmd in dictGroupes[grp]: - if sensibleALaCasse and (filtre != None and not filtre in cmd) : continue - if (not sensibleALaCasse) and filtre != None and (not filtre in cmd) and (not filtre.upper() in cmd) : continue - if aAjouter == 1 : - self.commandesLayout.addWidget(label) - aAjouter=0 - self.dicoCmd[tr(cmd)]=cmd - rbcmd=(QRadioButton(tr(cmd))) - self.buttonGroup.addButton(rbcmd) - self.commandesLayout.addWidget(rbcmd) - if not(self.simpleClic ): rbcmd.mouseDoubleClickEvent=self.insereNoeudApresClick - if self.simpleClic : - self.buttonGroup.buttonClicked.connect(self.rbCliqueEtInsere) - else : - self.buttonGroup.buttonClicked.connect(self.rbClique) - label2=QLabel(self) - label2.setText(" ") - self.listeWidget.append(label2) - self.commandesLayout.addWidget(label2) - elif self.boolOrdre==1 : - listeFiltre=self.creeListeCommande(filtre) - liste=[] - if self.editor.readercata.Ordre_Des_Commandes == None : Ordre_Des_Commandes=listeFiltre - else : Ordre_Des_Commandes=self.editor.readercata.Ordre_Des_Commandes - for cmd in Ordre_Des_Commandes : - if cmd in listeFiltre : - liste.append(cmd) - for cmd in liste : - self.dicoCmd[tr(cmd)]=cmd - rbcmd=(QRadioButton(tr(cmd))) - self.buttonGroup.addButton(rbcmd) - self.commandesLayout.addWidget(rbcmd) - if not(self.simpleClic ): rbcmd.mouseDoubleClickEvent=self.insereNoeudApresClick - if self.simpleClic : - self.buttonGroup.buttonClicked.connect(self.rbCliqueEtInsere) - else : - self.buttonGroup.buttonClicked.connect(self.rbClique) - - - - def ajoutePushButtons(self): - if hasattr(self,'buttonGroup') : - for b in self.buttonGroup.buttons(): - self.buttonGroup.removeButton(b) - b.setParent(None) - b.close() - else : - self.buttonGroup = QButtonGroup() - self.buttonGroup.buttonClicked.connect(self.rbCliqueEtInsere) - for w in self.listeWidget : - w.setParent(None) - w.close() - self.listeWidget=[] - - if not hasattr(self,'maGrilleBouton') : - #self.commandesLayout.close() - self.maGrilleBouton=QGridLayout() - self.maGrilleBouton.setSpacing(20) - self.verticalLayout.addLayout(self.maGrilleBouton) - col=-1 - ligne = 0 - - if self.boolAlpha==1 : - liste=self.creeListeCommande(None) - elif self.boolOrdre: - liste=self.creeListeCommande(None) - listeFiltre=self.creeListeCommande(None) - liste=[] - if self.editor.readercata.Ordre_Des_Commandes == None : Ordre_Des_Commandes=listeFiltre - else : Ordre_Des_Commandes=self.editor.readercata.Ordre_Des_Commandes - for cmd in Ordre_Des_Commandes : - if cmd in listeFiltre : - liste.append(cmd) - for cmd in liste : - col=col+1 - if col == self.editor.maConfiguration.nombreDeBoutonParLigne : - col=0 - ligne=ligne+1 - self.dicoCmd[tr(cmd)]=cmd - rbcmd=QPushButton(tr(cmd)) - rbcmd.setGeometry(QRect(40, 20, 211, 71)) - rbcmd.setMaximumSize(QSize(250, 81)) - rbcmd.setStyleSheet("background-color : rgb(66, 165, 238);\n" -"/*border-style : outset;*/\n" -"border-radius : 20px;\n" -"border-width : 30 px;\n" -"border-color : beige;\n" -"text-align : center") - #print ('self.editor.maConfiguration.dicoImages', self.editor.maConfiguration.dicoImages) - if cmd in self.editor.maConfiguration.dicoImages : - fichier=self.editor.maConfiguration.dicoImages[cmd] - icon = QIcon() - icon.addPixmap(QPixmap(fichier), QIcon.Normal, QIcon.Off) - rbcmd.setIcon(icon) - rbcmd.setIconSize(QSize(48, 48)) - - self.buttonGroup.addButton(rbcmd) - self.maGrilleBouton.addWidget(rbcmd,ligne,col) - - def clearFiltre(self): - self.LEFiltre.setText("") - self.ajouteRadioButtons() - - def rbCliqueEtInsere(self,id): - self.rbClique(id) - self.insereNoeudApresClick(None) - - def rbClique(self,id): - - try : - self.name=self.dicoCmd[id.text()] - except : - try : - self.name=self.dicoCmd[str(id.text())] - except : - print ('pb d accent : contacter la maintenance') - - definitionEtape=getattr(self.jdc.cata,self.name) - #commentaire=getattr(definitionEtape,self.jdc.lang) - try : - commentaire=getattr(definitionEtape,self.jdc.lang) - except : - try : - commentaire=getattr(definitionEtape,"ang") - except : - commentaire="" - self.editor.afficheCommentaire(commentaire) - - - - def setValide(self): - #PNPN a priori pas d icone mais peut-etre a faire - pass diff --git a/InterfaceQT4/monChoixLangue.py b/InterfaceQT4/monChoixLangue.py deleted file mode 100644 index ae217256..00000000 --- a/InterfaceQT4/monChoixLangue.py +++ /dev/null @@ -1,57 +0,0 @@ -# -*- coding: utf-8 -*- -# Copyright (C) 2007-2021 EDF R&D -# -# 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 -# -# Modules Python -# Modules Eficas - -from __future__ import absolute_import -import os,sys,re -from desChoixLangue import Ui_ChoixLangue - -from PyQt5.QtWidgets import QDialog, QRadioButton, QGroupBox, QButtonGroup -from PyQt5.QtGui import QPalette -from PyQt5.QtCore import QProcess, QFileInfo, Qt, QSize - - -# Import des panels - -class MonChoixLangue(Ui_ChoixLangue,QDialog): - """ - Classe definissant le panel associe aux mots-cles qui demandent - a l'utilisateur de choisir une seule valeur parmi une liste de valeurs - discretes - """ - def __init__(self, appliEficas=None): - QDialog.__init__(self,appliEficas) - self.setModal(True) - self.setupUi(self) - self.appliEficas=appliEficas - self.installLangue() - self.code=None - self.pB_OK.clicked.connect(self.choisitLangue) - - - def installLangue(self): - if self.appliEficas.langue == 'fr' : self.rbFrancais.setChecked(True) - else : self.rbEnglish.setChecked(True) - - def choisitLangue(self): - if self.rbFrancais.isChecked() : self.appliEficas.langue='fr' - else : self.appliEficas.langue ='ang' - self.close() diff --git a/InterfaceQT4/monFonctionPanel.py b/InterfaceQT4/monFonctionPanel.py deleted file mode 100644 index a5e0b371..00000000 --- a/InterfaceQT4/monFonctionPanel.py +++ /dev/null @@ -1,200 +0,0 @@ -# -*- coding: utf-8 -*- -# Copyright (C) 2007-2021 EDF R&D -# -# 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 -# -# Modules Python -from __future__ import absolute_import -try : - from builtins import str - from builtins import range -except : pass - -import types,os -from PyQt5.QtCore import Qt - - -# Modules Eficas -from .qtSaisie import SaisieValeur -from monPlusieursBasePanel import MonPlusieursBasePanel - -from Extensions.i18n import tr - -# Import des panels - -class MonFonctionPanel(MonPlusieursBasePanel): -# Classe definissant le panel associee aux mots-cles qui demandent -# a l'utilisateur de choisir une seule valeur parmi une liste de valeurs -# discretes - def __init__(self,node, parent = None,name = None,fl = 0): - #print "MonFonctionPanel" - self.node=node - self.setNbValeurs() - MonPlusieursBasePanel.__init__(self,node,parent,name,fl) - - def setNbValeurs(self): - self.nbValeurs = 1 - if self.node.item.waitTuple()== 1 : - for a in self.node.item.definition.type : - try : - self.nbValeurs = a.ntuple - break - except : - pass - genea=self.node.item.getGenealogie() - self.nbValeursASaisir=self.nbValeurs - if "VALE" in genea: self.nbValeurs=2 - if "VALE_C" in genea: self.nbValeurs=3 - - - def decoupeListeValeurs(self,liste): - #decoupe la liste des valeurs en n ( les x puis les y) - l_valeurs=[] - if ((len(liste)% self.nbValeursASaisir != 0 and (len(liste)% self.nbValeurs))): - message=tr("La cardinalite n'est pas correcte, la derniere valeur est ignoree") - self.editor.afficheInfos(message,Qt.red) - i=0 - while ( i < len(liste) ) : - try : - t=tuple(liste[i:i+self.nbValeurs]) - i=i+self.nbValeurs - except: - t=tuple(liste[i:len(liste)]) - l_valeurs.append(t) - return l_valeurs - - def buildLBValeurs(self,listeValeurs=None): - self.LBValeurs.clear() - if listeValeurs== None : - listeValeurs=self.node.item.getListeValeurs() - if self.node.item.waitTuple()== 1 : - listeATraiter=listeValeurs - for valeur in listeATraiter: - str_valeur=str(valeur) - self.LBValeurs.addItem(str_valeur) - else : - for valeur in self.decoupeListeValeurs(listeValeurs): - if type(valeur) == tuple: - TupleEnTexte="(" - for val in valeur : - TupleEnTexte = TupleEnTexte + str(self.politique.getValeurTexte(val)) +", " - TupleEnTexte = TupleEnTexte[0:-2] +")" - self.LBValeurs.addItem(TupleEnTexte) - else : - self.LBValeurs.addItem(str(valeur)) - - - def ajout1Valeur(self,liste=[]): - # Pour etre appele a partir du Panel Importer (donc plusieurs fois par AjouterNValeur) - validite=1 - if liste == [] : - if self.node.item.waitTuple()== 1 : - liste=SaisieValeur.TraiteLEValeurTuple(self) - if liste == [''] : return - else : - liste,validite=SaisieValeur.TraiteLEValeur(self) - if validite == 0 : return - if liste ==[] : return - - if (self.node.item.waitTuple()== 1 and len(liste) != self.nbValeurs): - commentaire = str(liste) - commentaire += tr(" n est pas un tuple de ") - commentaire += str(self.nbValeursASaisir) - commentaire += tr(" valeurs") - self.LEValeur.setText(str(liste)) - self.editor.afficheInfos(commentaire,Qt.red) - return - - if self.node.item.waitTuple()== 1 : - liste2=tuple(liste) - liste=liste2 - - index=self.LBValeurs.currentRow() - if ((self.LBValeurs.isItemSelected(self.LBValeurs.item(index )) == 0) and (index > 0 )): - index=0 - else : - index=self.LBValeurs.currentRow() + 1 - indexListe=index*self.nbValeurs - if index == 0 : indexListe=len(self.listeValeursCourantes) - - listeVal=[] - for valeur in self.listeValeursCourantes : - listeVal.append(valeur) - if self.node.item.waitTuple()== 1 : - indexListe = index - validite,comm,comm2,listeRetour=self.politique.ajoutTuple(liste,index,listeVal) - else : - validite,comm,comm2,listeRetour=self.politique.ajoutValeurs(liste,index,listeVal) - self.Commentaire.setText(tr(comm2)) - if not validite : - self.editor.afficheInfos(comm,Qt.red) - else: - self.LEValeur.setText("") - l1=self.listeValeursCourantes[:indexListe] - l3=self.listeValeursCourantes[indexListe:] - if self.node.item.waitTuple()== 1 : - listeATraiter=listeRetour - else : - listeATraiter=self.decoupeListeValeurs(listeRetour) - for valeur in listeATraiter : - if type(valeur) == tuple: - TupleEnTexte="(" - for val in valeur : - TupleEnTexte = TupleEnTexte + str(self.politique.getValeurTexte(val)) +", " - str_valeur = TupleEnTexte[0:-2] +")" - else : - str_valeur=str(valeur) - self.LBValeurs.insertItem(index,str_valeur) - item=self.LBValeurs.item(index) - item.setSelected(1) - self.LBValeurs.setCurrentItem(item) - index=index+1 - self.listeValeursCourantes=l1+listeRetour+l3 - self.buildLBValeurs(self.listeValeursCourantes) - - - def ajoutNValeur(self,liste) : - if len(liste)%self.nbValeurs != 0 : - texte="Nombre de valeur incorrecte" - #self.Commentaire.setText(texte) - self.editor.afficheInfos(texte,Qt.red) - return - listeDecoupee=self.decoupeListeValeurs(liste) - for vals in listeDecoupee : - self.ajout1Valeur(vals) - - def sup1Valeur(self): - index=self.LBValeurs.currentRow() - if index == None : return - removed_item = self.LBValeurs.takeItem(index) - text = removed_item.text()[1:-1] # Remove the parenthesis - self.LEValeur.setText(text) - listeVal=[] - indexInterdit=[] - for i in range(self.nbValeurs): - indexAOter=index*self.nbValeurs + i - indexInterdit.append(indexAOter) - if self.node.item.waitTuple()== 1 : - indexInterdit=[index] - - i=0 - for valeur in self.listeValeursCourantes : - if not (i in indexInterdit) : - listeVal.append(valeur) - i = i+1 - self.listeValeursCourantes=listeVal - listeValeurs=self.listeValeursCourantes diff --git a/InterfaceQT4/monGroupeOptionnel.py b/InterfaceQT4/monGroupeOptionnel.py deleted file mode 100644 index bb4b34e0..00000000 --- a/InterfaceQT4/monGroupeOptionnel.py +++ /dev/null @@ -1,187 +0,0 @@ -# Copyright (C) 2007-2021 EDF R&D -# -# 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 -# -# Modules Python -# Modules Eficas - -from __future__ import absolute_import -from PyQt5.QtWidgets import QCheckBox, QWidget, QLabel, QPushButton -from PyQt5.QtCore import Qt, QRect -from PyQt5.QtGui import QPalette - -from Extensions.i18n import tr -from desGroupeOptionnel import Ui_groupeOptionnel -from desPBOptionnelMT import Ui_customPB - - -# Import des panels - -class MonRBButtonCustom(QCheckBox): - - def __init__(self,texte,monOptionnel,parent=None,couleur=None): - QCheckBox.__init__(self,tr(texte),parent) - self.mousePressed=True - self.monOptionnel=monOptionnel - self.setToolTip(tr("clicker: affichage aide, double-click: ajout")) - if couleur != None : - mapalette=self.palette() - mapalette.setColor( QPalette.WindowText, couleur ) - mapalette.setColor( QPalette.Base, Qt.green ) - self.setPalette( mapalette ); - self.setText(tr(texte)) - try : - monToolTip=monOptionnel.parentMC.dictToolTipMc[texte] - self.setToolTip(monToolTip) - except : - pass - - - def mouseDoubleClickEvent(self, event): - #print "dans mouseDoubleClickEvent", self - if self not in self.monOptionnel.dicoCb: - event.accept() - return - listeCheckedMC="+"+self.monOptionnel.dicoCb[self] - self.monOptionnel.parentMC.ajoutMC(listeCheckedMC) - event.accept() - - - def mousePressEvent(self, event): - if not( event.button() != Qt.RightButton) : - event.accept() - return - if self.monOptionnel.cbPressed != None : - self.monOptionnel.cbPressed.setChecked(False) - self.monOptionnel.cbPressed=self - if self.mousePressed == False : - self.mousePressed=True - else : - self.mousePressed=False - self.ajoutAideMC() - QCheckBox.mousePressEvent(self, event) - event.accept() - - def ajoutAideMC(self): - try : - maDefinition = self.monOptionnel.parentMC.definition.entites[self.texte] - maLangue = self.monOptionnel.parentMC.jdc.lang - if hasattr(maDefinition,maLangue): - self.monAide = getattr(maDefinition,self.monOptionnel.parentMC.jdc.lang) - else : - self.monAide = "" - except : - self.monAide = "" - self.monOptionnel.parentMC.editor.afficheCommentaire(self.monAide) - -class MonPBButtonCustom(QWidget,Ui_customPB): - - def __init__(self,texte,monOptionnel,parent=None,couleur=None): - QWidget.__init__(self) - self.setupUi(self) - if couleur != None : - self.monPb.setText(texte) - self.monPb.setStyleSheet('QPushButton {background-color: #A3C1DA; color: red;}') - #mapalette=self.monPb.palette() - #mapalette.setColor( QPalette.ButtonText, Qt.red ) - #self.monPb.setPalette( mapalette ) - self.monPb.update() - #self.update() - try : - monToolTip=monOptionnel.parentMC.dictToolTipMc[texte] - self.monPb.setToolTip(monToolTip) - except : - pass - self.monPb.setText(texte) - self.monPb.clicked.connect(self.ajoutMC) - - self.texte=texte - self.monOptionnel=monOptionnel - self.definitAideMC() - self.setToolTip(self.monAide) - - def ajoutMC (self) : - listeCheckedMC="+"+self.monOptionnel.dicoCb[self] - self.monOptionnel.parentMC.ajoutMC(listeCheckedMC) - - def definitAideMC(self): - try : - maDefinition = self.monOptionnel.parentMC.definition.entites[self.texte] - maLangue = self.monOptionnel.parentMC.jdc.lang - if hasattr(maDefinition,maLangue): - self.monAide = getattr(maDefinition,self.monOptionnel.parentMC.jdc.lang) - except : - self.monAide = "" - -class MonGroupeOptionnel (QWidget,Ui_groupeOptionnel): - """ - """ - def __init__(self,liste,liste_rouge,parentQt,parentMC): - #print ("dans init de monWidgetOptionnel ", parentQt, liste,parentMC) - QWidget.__init__(self,None) - self.setupUi(self) - self.listeChecked=[] - self.dicoCb={} - self.mousePressed=False - self.cbPressed=None - self.cb=None - self.parentQt=parentQt - self.parentMC=parentMC - - - if liste != [] : - self.affiche(liste,liste_rouge) - self.afficheTitre() - elif self.parentQt.parentQt.maConfiguration.afficheOptionnelVide != False : - self.afficheTitre() - self.MCOptionnelLayout.insertWidget(0,QLabel(tr('Pas de MC Optionnel'))) - else : - self.frameLabelMC.close() - #print "dans fin de monWidgetOptionnel ", parentQt - - - def afficheTitre(self): - labeltext,fonte,couleur = self.parentMC.node.item.getLabelText() - #print (labeltext) - l=tr(labeltext) - li=[] - while len(l) > 25: - li.append(l[0:24]) - l=l[24:] - li.append(l) - texte="" - for l in li : texte+=l+"\n" - texte=texte[0:-1] - self.MCLabel.setText(texte) - - def affiche(self,liste,liste_rouge): - #print ("dans Optionnel ____ affiche", liste,liste_rouge) - self.dicoCb={} - liste.reverse() - for mot in liste : - #if mot in liste_rouge : print ('je dois afficher en rouge' , mot) - couleur=None - if mot in liste_rouge : couleur=Qt.red - if self.parentQt.parentQt.maConfiguration.simpleClic == False : - cb = MonRBButtonCustom(mot,self,couleur=couleur) - cb.clicked.connect(cb.ajoutAideMC) - else : - cb = MonPBButtonCustom(mot,self,couleur=couleur) - - self.MCOptionnelLayout.insertWidget(0,cb) - self.dicoCb[cb]=mot - self.scrollAreaCommandesOptionnelles.horizontalScrollBar().setSliderPosition(0) diff --git a/InterfaceQT4/monLabelClic.py b/InterfaceQT4/monLabelClic.py deleted file mode 100644 index 9e998cb8..00000000 --- a/InterfaceQT4/monLabelClic.py +++ /dev/null @@ -1,51 +0,0 @@ -#!/usr/bin/env python -# -*- coding: utf-8 -*- -# Copyright (C) 2007-2021 EDF R&D -# -# 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 -# - -from __future__ import print_function -from __future__ import absolute_import - -import os - - -from PyQt5.QtWidgets import QLabel, QFrame -from PyQt5.QtCore import QEvent -from Extensions.i18n import tr - -#from Extensions.i18n import tr - -class MonLabelClic(QLabel) : - - def __init__(self,parent): - QLabel.__init__(self,parent) - # Pas propre mais impossible de faire fonctionner isinstance sur Groupe, MonWidgetCommande - # PNPNPN ? a ameliorer - if isinstance (parent,QFrame): parent=parent.parent() - while not( hasattr(parent,'traiteClicSurLabel')) : - try : parent=parent.parent() - except : print ("pb avec MonLabelClic"); break - self.parent=parent - - - def event(self,event) : - if event.type() == QEvent.MouseButtonRelease: - self.texte=self.text() - self.parent.traiteClicSurLabel(self.texte) - return QLabel.event(self,event) diff --git a/InterfaceQT4/monLayoutBouton.py b/InterfaceQT4/monLayoutBouton.py deleted file mode 100644 index 441710db..00000000 --- a/InterfaceQT4/monLayoutBouton.py +++ /dev/null @@ -1,65 +0,0 @@ -# Copyright (C) 2007-2021 EDF R&D -# -# 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 -# -# Modules Python -# Modules Eficas - -from __future__ import absolute_import -try : - from builtins import str -except : pass - -from PyQt5.QtWidgets import QButtonGroup, QToolButton -from PyQt5.QtGui import QIcon, QPixmap -from Extensions.i18n import tr - - -#---------------------- -class MonLayoutBouton : -#---------------------- - -# ------------------------------- - def __init__(self,appliEficas): -# ------------------------------- - - self.appliEficas = appliEficas - self.buttonGroup = QButtonGroup() - - for etape in self.appliEficas.readercata.cata.JdC.commandes : - nomEtape = etape.nom - toolButton = QToolButton(self.appliEficas.toolBarCommande) - icon = QIcon() - if nomEtape in self.appliEficas.maConfiguration.dicoIcones: - fichier = self.appliEficas.maConfiguration.dicoIcones[nomEtape] - icon.addPixmap(QPixmap(fichier), QIcon.Normal, QIcon.Off) - toolButton.setIcon(icon) - else : - try : label = nomEtape[0:3] - except : label = nomEtape - toolButton.setText(label) - - action = self.appliEficas.toolBarCommande.addWidget(toolButton) - action.setVisible(True) - toolButton.setObjectName(nomEtape) - toolButton.setToolTip(tr(nomEtape)) - self.buttonGroup.addButton(toolButton) - - self.buttonGroup.buttonClicked.connect(self.rbCliqueEtInsere) - - def rbCliqueEtInsere(self,id): - self.appliEficas.handleAjoutEtape(id.objectName()) diff --git a/InterfaceQT4/monRecherche.py b/InterfaceQT4/monRecherche.py deleted file mode 100644 index 4e597c91..00000000 --- a/InterfaceQT4/monRecherche.py +++ /dev/null @@ -1,63 +0,0 @@ -# -*- coding: utf-8 -*- -# Copyright (C) 2007-2021 EDF R&D -# -# 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 -# -# Modules Python -# Modules Eficas - -from __future__ import absolute_import -from desRecherche import Ui_desRecherche -from PyQt5.QtWidgets import QDialog -from PyQt5.QtCore import Qt - - -# Import des panels - -class DRecherche(Ui_desRecherche ,QDialog): - """ - """ - def __init__(self,parent = None , name = None,fl = 0): - QDialog.__init__(self,parent) - self.parentQT=parent - self.tree=self.parentQT.tree - self.setupUi(self) - self.PBSuivant.setDefault(True) - self.PBSuivant.setAutoDefault(False) - self.PBSuivant.clicked.connect( self.suivantClicked) - self.LERecherche.returnPressed.connect(self.recherche) - self.surLigne=0 - self.listeTrouvee=() - self.nodeSurligne=None - - def suivantClicked(self): - #if self.motAChercher!=self.LERecherche.text(): self.recherche() - if self.listeTrouvee=={} : return - if self.surLigne > len(self.listeTrouvee) -1 : return - if self.nodeSurligne!=None : self.nodeSurligne.updateNodeTexteInBlack() - #self.listeTrouvee[self.surLigne].updateNodeTexteInBlue() - #self.nodeSurligne=self.listeTrouvee[self.surLigne] - self.listeTrouvee[self.surLigne].select() - self.listeTrouvee[self.surLigne].affichePanneau() - self.surLigne=self.surLigne+1 - self.PBSuivant.setFocus() - if self.surLigne == len(self.listeTrouvee): self.surLigne=0 - - def recherche(self): - self.motAChercher=self.LERecherche.text() - self.listeTrouvee=self.tree.findItems(self.motAChercher,Qt.MatchContains|Qt.MatchRecursive,1) - self.surLigne=0 diff --git a/InterfaceQT4/monRechercheCatalogue.py b/InterfaceQT4/monRechercheCatalogue.py deleted file mode 100644 index 825db551..00000000 --- a/InterfaceQT4/monRechercheCatalogue.py +++ /dev/null @@ -1,86 +0,0 @@ -# -*- coding: utf-8 -*- -# Copyright (C) 2007-2021 EDF R&D -# -# 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 -# -# Modules Python -# Modules Eficas - -from __future__ import absolute_import -try : - from builtins import str -except : pass - -from desRechercheCatalogue import Ui_desRechercheCatalogue -from PyQt5.QtWidgets import QDialog, QCompleter -from PyQt5.QtCore import Qt - -from Extensions.i18n import tr - -# Import des panels - -class DRechercheCatalogue (Ui_desRechercheCatalogue ,QDialog): - """ - """ - def __init__(self,parent,editor ): - QDialog.__init__(self,parent) - #self.setModal(True) - self.setupUi(self) - self.editor=editor - self.CBRecherche.setEditable(True) - self.CBRecherche.lineEdit().returnPressed.connect(self.rechercheCB) - self.CBRecherche.currentIndexChanged.connect(self.rechercheCB) - self.CBRecherche.currentTextChanged.connect(self.rechercheCB) - - self.initRecherche() - - def initRecherche(self): - listeChoix=list(self.editor.readercata.dicoInverse.keys()) - self.CBRecherche.addItem("") - for choix in listeChoix: - self.CBRecherche.addItem(choix) - monCompleteur=QCompleter(listeChoix,self) - monCompleteur.setCompletionMode(QCompleter.PopupCompletion) - self.CBRecherche.setCompleter(monCompleteur) - - - def rechercheCB(self): - motAChercher=self.CBRecherche.lineEdit().text() - self.recherche(motAChercher) - - - def recherche(self,motAChercher): - if str(motAChercher)=="" or str(motAChercher) == None : return - if str(motAChercher) not in self.editor.readercata.dicoInverse:return - try : - #if 1 : - genea= self.editor.readercata.dicoInverse[str(motAChercher)] - listeGenea=[] - for t in genea : listeGenea.append(t[0]) - listeGenea.reverse() - texte='' - i=0 - for mc in listeGenea : - ligne = i*' '+str(mc) + ' / '+tr(str(mc))+'\n' - i=i+1 - texte += ligne - self.teGenea.setText(texte) - self.teDoc.setText(getattr(genea[0][1],self.editor.appliEficas.langue)) - - - except : - pass diff --git a/InterfaceQT4/monSelectVal.py b/InterfaceQT4/monSelectVal.py deleted file mode 100644 index e3cb4a87..00000000 --- a/InterfaceQT4/monSelectVal.py +++ /dev/null @@ -1,135 +0,0 @@ -# -*- coding: utf-8 -*- -# Copyright (C) 2007-2021 EDF R&D -# -# 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 -# -# Modules Python -# Modules Eficas - -from __future__ import absolute_import -try : - from builtins import str -except : pass - -from desSelectVal import Ui_DSelVal -from Extensions.i18n import tr - -from PyQt5.QtWidgets import QDialog, QFileDialog, QMessageBox -from PyQt5.QtCore import QTimer, Qt -from PyQt5.QtGui import QPalette - -class DSelVal(Ui_DSelVal,QDialog): - def __init__(self,parent ,modal ) : - QDialog.__init__(self,parent) - self.setupUi(self) - -class MonSelectVal(DSelVal): - """ - Classe definissant le panel associe aux mots-cles qui demandent - a l'utilisateur de choisir une seule valeur parmi une liste de valeurs - discretes - """ - def __init__(self,file,parent,name = None,fl = 0): - #print "MonSelectVal" - self.parent=parent - DSelVal.__init__(self,parent,0) - self.separateur=" " - self.texte=" " - self.textTraite="" - self.file=str(file) - self.readVal() - self.initVal() - self.connecterSignaux() - - def connecterSignaux(self) : - self.Bespace.clicked.connect(self.selectEsp) - self.BpointVirgule.clicked.connect(self.selectPoint) - self.Bvirgule.clicked.connect(self.selectVir) - self.BImportSel.clicked.connect(self.BImportSelPressed) - self.BImportTout.clicked.connect(self.BImportToutPressed) - self.parent.editor.sb.messageChanged.connect(self.messageAChanger) - - def connecterSignauxQT4(self) : - self.connect(self.Bespace,SIGNAL("clicked()"),self.selectEsp) - self.connect(self.BpointVirgule,SIGNAL("clicked()"),self.selectPoint) - self.connect(self.Bvirgule,SIGNAL("clicked()"),self.selectVir) - self.connect(self.BImportSel,SIGNAL("clicked()"),self.BImportSelPressed) - self.connect(self.BImportTout,SIGNAL("clicked()"),self.BImportToutPressed) - self.connect(self.parent.editor.sb,SIGNAL("messageChanged(QString)"),self.messageAChanger) - - def messageAChanger(self): - message=self.parent.editor.sb.currentMessage() - mapalette=self.sb.palette() - mapalette.setColor( QPalette.Text,Qt.red ) - self.sb.setPalette( mapalette ) - self.sb.setText(message) - QTimer.singleShot(3000, self.efface) - - def efface(self): - self.sb.setText("") - - def readVal(self): - if self.file == "" : return - try : - f = open(self.file, "r") - self.texte = f.read() - f.close() - except : - QMessageBox.warning( self,tr( "Fichier Indisponible"),tr( "Lecture impossible")) - self.texte="" - return - - def initVal(self): - self.TBtext.clear() - self.TBtext.setText(self.texte) - - def selectEsp(self): - self.separateur=" " - - def selectVir(self): - self.separateur="," - - def selectPoint(self): - self.separateur=";" - - def BImportSelPressed(self): - - texte = self.TBtext.textCursor().selectedText() - textTraite=texte.replace(u'\u2029',"\n") - self.textTraite=str(textTraite) - self.traitement() - - def BImportToutPressed(self): - self.textTraite=self.texte - self.traitement() - - def traitement(self): - if self.textTraite == "" : return - if self.textTraite[-1]=="\n" : self.textTraite=self.textTraite[0:-1] - self.textTraite=self.textTraite.replace("\n",self.separateur) - liste1=self.textTraite.split(self.separateur) - liste=[] - for val in liste1 : - if val != '' and val != ' ' and val != self.separateur : - val=str(val) - try : - #if 1 : - val2=eval(val,{}) - liste.append(val2) - except : - pass - self.parent.ajoutNValeur(liste) diff --git a/InterfaceQT4/monViewRegles.py b/InterfaceQT4/monViewRegles.py deleted file mode 100644 index b84d6640..00000000 --- a/InterfaceQT4/monViewRegles.py +++ /dev/null @@ -1,51 +0,0 @@ -# -*- coding: utf-8 -*- -# Copyright (C) 2007-2021 EDF R&D -# -# 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 -# -# Modules Python -from __future__ import absolute_import -import types,os -import traceback - -from Extensions.i18n import tr -from PyQt5.QtCore import Qt -from PyQt5.QtWidgets import QDialog, QListWidgetItem -from desViewRegles import Ui_viewRegles - -# ------------------------------------ # -class ViewRegles(Ui_viewRegles,QDialog): -# ------------------------------------ # - """ - Classe permettant la visualisation de texte - """ - def __init__(self,parent,liste,entete=None): - QDialog.__init__(self,parent) - self.setupUi(self) - self.setModal(False) - self.bclose.clicked.connect(self.close) - - if entete != None : self.setWindowTitle (entete) - for ligne in liste : - texte=ligne[0] - couleur=ligne[1] - if couleur==Qt.black : - self.LBRegles.addItem(texte) - else : - monItem=QListWidgetItem(texte) - monItem.setForeground(Qt.red) - self.LBRegles.addItem(monItem) diff --git a/InterfaceQT4/monViewTexte.py b/InterfaceQT4/monViewTexte.py deleted file mode 100644 index d16903b8..00000000 --- a/InterfaceQT4/monViewTexte.py +++ /dev/null @@ -1,81 +0,0 @@ -# -*- coding: utf-8 -*- -# Copyright (C) 2007-2021 EDF R&D -# -# 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 -# -# Modules Python -from __future__ import absolute_import -try : - from builtins import str -except : pass - -import types,os -import traceback - -from Extensions.i18n import tr - -from PyQt5.QtWidgets import QDialog, QMessageBox, QFileDialog -from PyQt5.QtCore import QSize -from desViewTexte import Ui_dView - -# ------------------------------- # -class ViewText(Ui_dView,QDialog): -# ------------------------------- # - """ - Classe permettant la visualisation de texte - """ - def __init__(self,parent,editor=None,entete=None,texte=None,largeur=600,hauteur=600): - QDialog.__init__(self,parent) - self.editor=editor - self.setupUi(self) - - self.resize( QSize(largeur,hauteur).expandedTo(self.minimumSizeHint()) ) - self.bclose.clicked.connect(self.close) - self.bsave.clicked.connect(self.saveFile ) - - if entete != None : self.setWindowTitle (entete) - if entete != None : self.setText (texte) - - - def setText(self, txt ): - self.view.setText(txt) - - def saveFile(self): - #recuperation du nom du fichier - if self.editor != None : - dir=self.editor.appliEficas.maConfiguration.savedir - else: - dir='/tmp' - fn = QFileDialog.getSaveFileName(None, - tr("Sauvegarder le fichier"), - dir) - fn=fn[0] - if fn == "" : return - if fn == None : return (0, None) - - ulfile = os.path.abspath(fn) - if self.editor != None : - self.editor.appliEficas.maConfiguration.savedir=os.path.split(ulfile)[0] - try: - f = open(fn, 'w') - f.write(str(self.view.toPlainText())) - f.close() - return 1 - except IOError as why: - QMessageBox.critical(self, tr("Sauvegarder le fichier"), - tr('Le fichier')+str(fn) + tr('n a pas pu etre sauvegarde : ') + str(why)) - return diff --git a/InterfaceQT4/monVisu.py b/InterfaceQT4/monVisu.py deleted file mode 100644 index 209ebc79..00000000 --- a/InterfaceQT4/monVisu.py +++ /dev/null @@ -1,42 +0,0 @@ -# -*- coding: utf-8 -*- -# Copyright (C) 2007-2021 EDF R&D -# -# 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 -# -# Modules Python -# Modules Eficas - -from __future__ import absolute_import -from desVisu import Ui_DVisu -from PyQt5.QtWidgets import QDialog - - -# Import des panels - -class DVisu(Ui_DVisu, QDialog): - """ - """ - def __init__(self,parent = None , name = None,fl = 0): - QDialog.__init__(self,parent) - self.setModal(True) - self.setupUi(self) - - def on_buttonCancel_clicked(self): - QDialog.reject(self) - - def on_buttonOk_clicked(self): - QDialog.accept(self) diff --git a/InterfaceQT4/monWidget4a6RadioButton.py b/InterfaceQT4/monWidget4a6RadioButton.py deleted file mode 100644 index f189312f..00000000 --- a/InterfaceQT4/monWidget4a6RadioButton.py +++ /dev/null @@ -1,51 +0,0 @@ -# -*- coding: utf-8 -*- -# Copyright (C) 2007-2021 EDF R&D -# -# 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 -# -# Modules Python -from __future__ import absolute_import -import types,os - -# Modules Eficas -from Extensions.i18n import tr - -from .monWidgetRadioButton import MonWidgetRadioButtonCommun -from desWidget4a6RadioButton import Ui_Widget4a6RadioButton - - -class MonWidget4a6RadioButton (Ui_Widget4a6RadioButton,MonWidgetRadioButtonCommun): - - def __init__(self,node,monSimpDef,nom,objSimp,parentQt,commande): - #print "dans le init de MonWidget4a6RadioButton",self - if type(monSimpDef.into) ==types.FunctionType : self.maListeDeValeur=monSimpDef.into() - else : self.maListeDeValeur=monSimpDef.into - MonWidgetRadioButtonCommun.__init__(self,node,monSimpDef,nom,objSimp,parentQt,commande) - - def setMaxI(self): - self.maxI=6 - - -class MonWidget4a6RadioButtonSD (Ui_Widget4a6RadioButton,MonWidgetRadioButtonCommun): - - def __init__(self,node,monSimpDef,nom,objSimp,parentQt,commande): - #print "dans le init de MonWidget4a6RadioButton",self - self.maListeDeValeur=node.item.getSdAvantDuBonType() - MonWidgetRadioButtonCommun.__init__(self,node,monSimpDef,nom,objSimp,parentQt,commande) - - def setMaxI(self): - self.maxI=6 diff --git a/InterfaceQT4/monWidget4a6RadioButtonSD.py b/InterfaceQT4/monWidget4a6RadioButtonSD.py deleted file mode 100644 index e98f4d0b..00000000 --- a/InterfaceQT4/monWidget4a6RadioButtonSD.py +++ /dev/null @@ -1,39 +0,0 @@ -# -*- coding: utf-8 -*- -# Copyright (C) 2007-2021 EDF R&D -# -# 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 -# -# Modules Python -from __future__ import absolute_import -import types,os - -# Modules Eficas -from Extensions.i18n import tr - -from .monWidgetRadioButton import MonWidgetRadioButtonCommun -from desWidget4a6RadioButton import Ui_Widget4a6RadioButton - - -class MonWidget4a6RadioButtonSD (Ui_Widget4a6RadioButton,MonWidgetRadioButtonCommun): - - def __init__(self,node,monSimpDef,nom,objSimp,parentQt,commande): - #print "dans le init de MonWidget4a6RadioButton",self - self.maListeDeValeur=node.item.getSdAvantDuBonType() - MonWidgetRadioButtonCommun.__init__(self,node,monSimpDef,nom,objSimp,parentQt,commande) - - def setMaxI(self): - self.maxI=6 diff --git a/InterfaceQT4/monWidgetBloc.py b/InterfaceQT4/monWidgetBloc.py deleted file mode 100644 index fe19d6fd..00000000 --- a/InterfaceQT4/monWidgetBloc.py +++ /dev/null @@ -1,39 +0,0 @@ -# Copyright (C) 2007-2021 EDF R&D -# -# 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 -# -# Modules Python -# Modules Eficas - -from __future__ import absolute_import -from desWidgetBloc import Ui_WidgetBloc -from .groupe import Groupe -from Extensions.i18n import tr -# Import des panels - -class MonWidgetBloc(Ui_WidgetBloc,Groupe): - """ - """ - def __init__(self,node,editor,parentQt,definition, obj, niveau,commande): - #print ("bloc : ",node.item.nom) - Groupe.__init__(self,node,editor,parentQt, definition,obj,niveau,commande) - #if self.editor.maConfiguration.afficheCommandesPliees ==True: self.node.plieToutEtReaffiche() - self.parentQt.commandesLayout.insertWidget(-1,self,1) - - - def afficheOptionnel(self): - return diff --git a/InterfaceQT4/monWidgetCB.py b/InterfaceQT4/monWidgetCB.py deleted file mode 100644 index d464661f..00000000 --- a/InterfaceQT4/monWidgetCB.py +++ /dev/null @@ -1,101 +0,0 @@ -# -*- coding: utf-8 -*- -# Copyright (C) 2007-2020 EDF R&D -# -# 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 -# -# Modules Python -from __future__ import absolute_import -try : - from builtins import str -except : pass - -import types,os - -# Modules Eficas -from Extensions.i18n import tr - -from InterfaceQT4.feuille import Feuille -from desWidgetCB import Ui_WidgetCB -from InterfaceQT4.politiquesValidation import PolitiqueUnique -from InterfaceQT4.qtSaisie import SaisieValeur - -from PyQt5.QtWidgets import QComboBox, QCompleter -from PyQt5.QtCore import Qt, QEvent - - -class MonWidgetCBCommun (Feuille): - - def __init__(self,node,monSimpDef,nom,objSimp,parentQt,commande): - Feuille.__init__(self,node,monSimpDef,nom,objSimp,parentQt,commande) - self.politique=PolitiqueUnique(self.node,self.editor) - self.determineChoix() - self.setValeursApresBouton() - self.CBChoix.currentIndexChanged.connect(self.choixSaisi) - self.CBChoix.wheelEvent=self.wheelEvent - self.parentQt.commandesLayout.insertWidget(-1,self) - self.maCommande.listeAffichageWidget.append(self.CBChoix) - self.AAfficher=self.CBChoix - - - def setValeursApresBouton(self): - if self.objSimp.getValeur()==None : - self.CBChoix.setCurrentIndex(-1) - self.CBChoix.lineEdit().setText(tr("Select")) - return - valeur=self.objSimp.getValeur() - if not(type(valeur) == str) : valeur=str(valeur) - self.CBChoix.setCurrentIndex(self.CBChoix.findText(valeur)) - - def determineChoix(self): - listeChoix=[] - if self.maListeDeValeur == None : self.maListeDeValeur=[] - for choix in self.maListeDeValeur: - if not(type(choix) == str) : choix=str(choix) - listeChoix.append(choix) - self.CBChoix.addItem(choix) - self.CBChoix.setEditable(True) - monCompleteur=QCompleter(listeChoix,self) - monCompleteur.setCompletionMode(QCompleter.PopupCompletion) - self.CBChoix.setCompleter(monCompleteur) - - def choixSaisi(self): - self.CBChoix.lineEdit().setStyleSheet(("\n" -"QLineEdit {\n" -" font : italic ;\n" -" background: rgb(235,235,235);\n" -" }")) - valeur=str(self.CBChoix.currentText()) - SaisieValeur.LEvaleurPressed(self,valeur) - self.reaffiche() - - def wheelEvent(self, event): - # Sinon poum sur les fenetres trop longues - # lorsque la widget attrape le wheelevent - event.ignore() - - -class MonWidgetCB (Ui_WidgetCB, MonWidgetCBCommun): - - def __init__(self,node,monSimpDef,nom,objSimp,parentQt,commande): - self.maListeDeValeur = monSimpDef.into - MonWidgetCBCommun. __init__(self,node,monSimpDef,nom,objSimp,parentQt,commande) - -class MonWidgetCBSD (Ui_WidgetCB,MonWidgetCBCommun): - - def __init__(self,node,monSimpDef,nom,objSimp,parentQt,commande): - self.maListeDeValeur = node.item.getSdAvantDuBonType() - MonWidgetCBCommun.__init__(self,node,monSimpDef,nom,objSimp,parentQt,commande) diff --git a/InterfaceQT4/monWidgetCBIntoSug.py b/InterfaceQT4/monWidgetCBIntoSug.py deleted file mode 100644 index d8bcf98a..00000000 --- a/InterfaceQT4/monWidgetCBIntoSug.py +++ /dev/null @@ -1,57 +0,0 @@ -# -*- coding: utf-8 -*- -# Copyright (C) 2007-2020 EDF R&D -# -# 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 -# -# Modules Python -from __future__ import absolute_import -try : - from builtins import str -except : pass - -import types,os - -# Modules Eficas -from Extensions.i18n import tr - -from .feuille import Feuille -from .politiquesValidation import PolitiqueUnique -from .qtSaisie import SaisieValeur -from desWidgetCBIntoSug import Ui_WidgetCBIntoSug - -from PyQt5.QtWidgets import QComboBox, QCompleter -from PyQt5.QtCore import Qt - -from monWidgetCB import MonWidgetCBCommun -from monWidgetIntoSug import GereAjoutDsPossible - - -class MonWidgetCBIntoSug (MonWidgetCBCommun, Ui_WidgetCBIntoSug,GereAjoutDsPossible): - def __init__(self,node,monSimpDef,nom,objSimp,parentQt,commande): - self.maListeDeValeur=monSimpDef.into - if node.item.hasIntoSug() : self.maListeDeValeur = node.item.getListePossibleAvecSug([]) - if hasattr(node.item,'suggestion') : self.maListeDeValeur += node.item.suggestion - MonWidgetCBCommun. __init__(self,node,monSimpDef,nom,objSimp,parentQt,commande) - self.lineEditVal.returnPressed.connect(self.LEValeurAjouteDsPossible) - - def ajouteValeurPossible(self,valeur): - self.CBChoix.addItem(valeur) - # on ne sait pas si on a deja ajouté une valeur - try : self.node.item.suggestion.append(valeur) - except : self.node.item.suggestion = (valeur,) - self.lineEditVal.setText('') - self.CBChoix.setCurrentIndex(self.CBChoix.findText(valeur)); diff --git a/InterfaceQT4/monWidgetCBSD.py b/InterfaceQT4/monWidgetCBSD.py deleted file mode 100644 index 98553fda..00000000 --- a/InterfaceQT4/monWidgetCBSD.py +++ /dev/null @@ -1,77 +0,0 @@ -# -*- coding: utf-8 -*- -# Copyright (C) 2007-2021 EDF R&D -# -# 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 -# -# Modules Python -from __future__ import absolute_import -try : - from builtins import str -except : pass - -import types,os - -# Modules Eficas -from Extensions.i18n import tr - -from .feuille import Feuille -from desWidgetCB import Ui_WidgetCB -from .politiquesValidation import PolitiqueUnique -from .qtSaisie import SaisieValeur - - -from PyQt5.QtWidgets import QComboBox, QCompleter - - -class MonWidgetCB (Ui_WidgetCB,Feuille): - - def __init__(self,node,monSimpDef,nom,objSimp,parentQt,commande): - Feuille.__init__(self,node,monSimpDef,nom,objSimp,parentQt,commande) - self.politique=PolitiqueUnique(self.node,self.editor) - self.determineChoix() - self.setValeursApresBouton() - self.CBChoix.currentIndexChanged.connect(self.choixSaisi) - - self.parentQt.commandesLayout.insertWidget(-1,self) - self.maCommande.listeAffichageWidget.append(self.CBChoix) - #print self.objSimp.isOblig() - - - def setValeursApresBouton(self): - if self.objSimp.getValeur()==None : - self.CBChoix.setCurrentIndex(-1) - return - valeur=self.objSimp.getValeur() - if not(type(valeur) == str) : valeur=str(valeur) - self.CBChoix.setCurrentIndex(self.CBChoix.findText(valeur)) - - def determineChoix(self): - self.CBChoix.currentIndexChanged.connect(self.choixSaisi) - - for choix in self.monSimpDef.into: - if not(type(choix) == str) : choix=str(choix) - self.CBChoix.currentIndexChanged.connect(self.choixSaisi) - self.CBChoix.addItem(choix) - self.CBChoix.setEditable(True) - monCompleteur=QCompleter(listeChoix,self) - monCompleteur.setCompletionMode(QCompleter.PopupCompletion) - self.CBChoix.setCompleter(monCompleteur) - - def choixSaisi(self): - valeur=str(self.CBChoix.currentText()) - SaisieValeur.LEvaleurPressed(self,valeur) - self.reaffiche() diff --git a/InterfaceQT4/monWidgetCommande.py b/InterfaceQT4/monWidgetCommande.py deleted file mode 100644 index 3ad181e4..00000000 --- a/InterfaceQT4/monWidgetCommande.py +++ /dev/null @@ -1,308 +0,0 @@ -# Copyright (C) 2007-2021 EDF R&D -# -# 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 -# -# Modules Python -# Modules Eficas -from __future__ import absolute_import -try : - from builtins import str -except : pass - -import types - -from desWidgetCommande import Ui_WidgetCommande -from .groupe import Groupe -from .gereIcones import FacultatifOuOptionnel - -from PyQt5.QtWidgets import QApplication, QWidget, QSpacerItem, QSizePolicy, QRadioButton -from PyQt5.QtGui import QFont, QIcon -from PyQt5.QtCore import QTimer -from PyQt5.QtCore import Qt - - - -from Extensions.i18n import tr -import Accas -import os - - -# Import des panels - -class MonWidgetCommande(Ui_WidgetCommande,Groupe): - """ - """ - def __init__(self,node,editor,etape): - - self.listeAffichageWidget=[] - self.inhibe=0 - self.ensure=0 - editor.inhibeSplitter=1 - Groupe.__init__(self,node,editor,None,etape.definition,etape,1,self) - spacerItem = QSpacerItem(21, 500, QSizePolicy.Expanding, QSizePolicy.Expanding) - self.verticalLayoutCommande.addItem(spacerItem) - editor.inhibeSplitter=0 - - # Gestion du nom de L OPER si il est nomme - if not(hasattr(etape.definition,'sd_prod')) or (etape.definition.sd_prod==None): self.LENom.close() - elif (hasattr(etape.definition,'sd_prod') and type(etape.definition.sd_prod)== types.FunctionType):self.LENom.close() - elif (hasattr(etape, 'sdnom')) and etape.sdnom != "sansnom" and etape.sdnom != None: - self.LENom.setText(etape.sdnom) - else : - self.LENom.setText("") - if hasattr(self,'LENom'): self.LENom.returnPressed.connect(self.nomChange) - self.racine=self.node.tree.racine - if self.node.item.getIconName() == "ast-red-square" : self.LENom.setDisabled(True) - - # Gestion de la doc de l objet - if node.item.getFr() != "" : - self.labelDoc.setText(node.item.getFr()) - nouvelleSize=self.frameAffichage.height()+60 - self.frameAffichage.setMinimumHeight(nouvelleSize) - self.frameAffichage.resize(self.frameAffichage.width(),nouvelleSize) - else : self.labelDoc.close() - - - # Gestion du nom de l etape - maPolice= QFont("Times", 10,) - self.setFont(maPolice) - self.labelNomCommande.setText(tr(self.obj.nom)) - - - # Gestion du Frame d affichage des autres commandes - if self.editor.maConfiguration.closeAutreCommande == True : self.closeAutreCommande() - else : - self.bCatalogue.clicked.connect(self.afficheCatalogue) - self.bAvant.clicked.connect(self.afficheAvant) - self.bApres.clicked.connect(self.afficheApres) - - if self.editor.maConfiguration.closeFrameRechercheCommande==True : - self.frameAffichage.close() - self.closeAutreCommande() - - - self.setAcceptDrops(True) - self.etablitOrdre() - - if self.editor.maConfiguration.enleverPoubellePourCommande : - self.RBPoubelle.close() # JDC Fige - - if self.editor.maConfiguration.pasDeMCOptionnels : - return # Pas de MC Optionnels pour Carmel - - from .monWidgetOptionnel import MonWidgetOptionnel - if self.editor.widgetOptionnel!= None : - self.monOptionnel=self.editor.widgetOptionnel - else : - self.editor.inhibeSplitter=1 - self.monOptionnel=MonWidgetOptionnel(self.editor) - self.editor.widgetOptionnel=self.monOptionnel - self.editor.splitter.addWidget(self.monOptionnel) - self.editor.ajoutOptionnel() - self.editor.inhibeSplitter=0 - self.monOptionnel=self.editor.widgetOptionnel - self.afficheOptionnel() - - #print "fin init de widget Commande" - - - def closeAutreCommande(self): - self.bCatalogue.close() - self.bAvant.close() - self.bApres.close() - - def donnePremier(self): - #print "dans donnePremier" - QApplication.processEvents() - if self.listeAffichageWidget != [] : - self.listeAffichageWidget[0].setFocus(7) - QApplication.processEvents() - #print self.focusWidget() - - - def focusNextPrevChild(self, next): - # on s assure que ce n est pas un chgt de fenetre - #print "je passe dans focusNextPrevChild" - if self.editor.fenetreCentraleAffichee != self : return True - f = self.focusWidget() - if f not in self.listeAffichageWidget : - i=0 - while not hasattr (f,'AAfficher') : - if f==None :i=-1; break - f = f.parentWidget() - if hasattr(f,'AAfficher') : f=f.AAfficher - if i != -1 : i=self.listeAffichageWidget.index(f) - else :i=self.listeAffichageWidget.index(f) - if (i==len(self.listeAffichageWidget) -1) and next and not self.inhibe: - try : - self.listeAffichageWidget[1].setFocus(7) - w=self.focusWidget() - self.inhibe=1 - w.focusPreviousChild() - self.inhibe=0 - return True - except : - pass - #print self.listeAffichageWidget - #print "souci ds focusNextPrevChild" - if i==0 and next==False and not self.inhibe: - if hasattr(self.editor.fenetreCentraleAffichee,'scrollArea'): - self.editor.fenetreCentraleAffichee.scrollArea.ensureWidgetVisible(self.listeAffichageWidget[-1]) - self.listeAffichageWidget[-2].setFocus(7) - self.inhibe=1 - w=self.focusWidget() - w.focusNextChild() - self.inhibe=0 - return True - if i==0 and next==True and not self.inhibe: - self.listeAffichageWidget[0].setFocus(7) - self.inhibe=1 - w=self.focusWidget() - w.focusNextChild() - self.inhibe=0 - return True - if i>0 and next==False and not self.inhibe: - if isinstance(self.listeAffichageWidget[i-1],QRadioButton): - self.listeAffichageWidget[i-1].setFocus(7) - return True - return QWidget.focusNextPrevChild(self, next) - - def etablitOrdre(self): - i=0 - while(i +1 < len(self.listeAffichageWidget)): - self.setTabOrder(self.listeAffichageWidget[i],self.listeAffichageWidget[i+1]) - i=i+1 - # si on boucle on perd l'ordre - - def afficheSuivant(self,f): - #print ('ds afficheSuivant') - try : - i=self.listeAffichageWidget.index(f) - next=i+1 - except : - next=1 - if (next==len(self.listeAffichageWidget) ): next =0 - #self.f=next - #QTimer.singleShot(1, self.rendVisible) - try : - self.listeAffichageWidget[next].setFocus(7) - except : - pass - - def nomChange(self): - nom = str(self.LENom.text()) - nom = nom.strip() - if nom == '' : return # si pas de nom, on ressort sans rien faire - test,mess = self.node.item.nommeSd(nom) - self.editor.afficheCommentaire(mess) - - #Notation scientifique - if test : - from .politiquesValidation import Validation - validation=Validation(self.node,self.editor) - validation.ajoutDsDictReelEtape() - - def afficheOptionnel(self): - # N a pas de parentQt. doit donc etre redefini - if self.editor.maConfiguration.closeOptionnel : self.editor.fermeOptionnel() - liste,liste_rouge=self.ajouteMCOptionnelDesBlocs() - #print "dans afficheOptionnel", self.monOptionnel - # dans le cas ou l insertion n a pas eu leiu (souci d ordre par exemple) - #if self.monOptionnel == None : return - self.monOptionnel.parentCommande=self - self.monOptionnel.titre(self.obj.nom) - self.monGroupe=self.monOptionnel.afficheOptionnel(liste,liste_rouge,self) - - - def focusInEvent(self,event): - #print "je mets a jour dans focusInEvent de monWidget Commande " - self.afficheOptionnel() - - - def reaffiche(self,nodeAVoir=None): - # Attention delicat. les appels de fonctions ne semblent pas pouvoir etre supprimes! - self.avantH=self.editor.fenetreCentraleAffichee.scrollAreaCommandes.horizontalScrollBar().sliderPosition() - self.avantV=self.editor.fenetreCentraleAffichee.scrollAreaCommandes.verticalScrollBar().sliderPosition() - self.inhibeExpand=True - self.node.affichePanneau() - #QTimer.singleShot(1, self.recentre) - if nodeAVoir != None and nodeAVoir!=0: - self.f=nodeAVoir.fenetre - if self.f==None : - newNode=nodeAVoir.treeParent.chercheNoeudCorrespondant(nodeAVoir.item.object) - self.f = newNode.fenetre - if self.f != None and self.f.isVisible() : self.inhibeExpand=False; return - if self.f != None : self.rendVisible() - else : self.recentre() - else : self.recentre() - self.inhibeExpand=False - - - - def recentre(self): - QApplication.processEvents() - s=self.editor.fenetreCentraleAffichee.scrollAreaCommandes - s.horizontalScrollBar().setSliderPosition(self.avantH) - s.verticalScrollBar().setSliderPosition(self.avantV) - - def rendVisible(self): - QApplication.processEvents() - self.f.setFocus(7) - self.editor.fenetreCentraleAffichee.scrollAreaCommandes.ensureWidgetVisible(self.f) - - def afficheCatalogue(self): - if self.editor.widgetOptionnel != None : self.monOptionnel.hide() - self.racine.affichePanneau() - if self.node : self.node.select() - else : self.racine.select() - - def afficheApres(self): - self.node.selectApres() - - def afficheAvant(self): - self.node.selectAvant() - - def setValide(self): - if not(hasattr (self,'RBValide')) : return - icon = QIcon() - if self.node.item.object.isValid() : icon=QIcon(self.repIcon+"/ast-green-ball.png") - else : icon=QIcon(self.repIcon+"/ast-red-ball.png") - nomIcone = self.node.item.getIconName() - if nomIcone == "ast-yellow-square" : icon=QIcon(self.repIcon+"/ast-yel-ball.png") - if nomIcone == "ast-red-square" : self.LENom.setDisabled(True) - - self.LENom.setDisabled(False) - self.RBValide.setIcon(icon) - - - def propageChange(self,typeChange,donneLeFocus): - aReecrire=self.propageChangeEnfant(self.node.item.object,typeChange) - if aReecrire : self.node.affichePanneau() - if hasattr(donneLeFocus.node.fenetre, 'selectionneDernier') : - QApplication.processEvents() - self.editor.fenetreCentraleAffichee.scrollAreaCommandes.ensureWidgetVisible(donneLeFocus.node.fenetre) - donneLeFocus.node.fenetre.selectionneDernier() - - def propageChangeEnfant(self,mc, typeChange): - for enfant in mc.mcListe: - if enfant.nature == 'MCSIMP' : - if enfant.waitUserAssd(): - if enfant.definition.type[0] == typeChange: return True - else : - if enfant.nature == 'MCList' : enfant=enfant[0] - if self.propageChangeEnfant(enfant, typeChange) : return True - return False diff --git a/InterfaceQT4/monWidgetCommandeDeplie1Niveau.py b/InterfaceQT4/monWidgetCommandeDeplie1Niveau.py deleted file mode 100644 index 006d3b00..00000000 --- a/InterfaceQT4/monWidgetCommandeDeplie1Niveau.py +++ /dev/null @@ -1,150 +0,0 @@ -# Copyright (C) 2007-2021 EDF R&D -# -# 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 -# -# Modules Python -# Modules Eficas -from __future__ import absolute_import -try : - from builtins import str -except : pass -import types, os -import traceback - -from PyQt5.QtGui import QIcon -from InterfaceQT4.monWidgetCommande import MonWidgetCommande -from PyQt5.QtWidgets import QSpacerItem, QSizePolicy - -class MonWidgetCommandeDeplie1Niveau(MonWidgetCommande): -# Attention au MCLIST qui ne sont pas des MCFACT -# il faut donc surcharger un certain nb de fonction ici pour eux - - - def __init__(self,node,editor,etape): - #print ("debut de ---------------------- init de MonWidgetCommandeDeplie1Niveau ",node.item.nom) - MonWidgetCommande.__init__(self,node,editor,etape) - self.node.plieToutEtReaffiche=self.plieToutEtReaffiche - spacerItem = QSpacerItem(21, 600, QSizePolicy.Expanding, QSizePolicy.Expanding) - self.verticalLayoutCommande.addItem(spacerItem) - - def afficheMots(self): - # Attention - # Attention --> cette methode surcharge les methodes des Nodes Fils - # Attention - #print ("debut de ---------------------- ds afficheMots de MonWidgetCommandeDeplie1Niveau ",self.node.item.nom) - #traceback.print_stack() - repIcon=self.editor.appliEficas.repIcon - fichier=os.path.join(repIcon, 'deleteRondVide.png') - icon = QIcon(fichier) - for node in self.node.children: - - node.plie=True - node.setPlieChildren() - if node.appartientAUnNoeudPlie==True : continue - - node.plieToutEtReaffiche = self.plieToutEtReaffiche - node.deplieToutEtReaffiche = self.deplieToutEtReaffiche - node.affichePanneau = self.affichePanneau - node.getPanel = self.getPanel - - widget=node.getPanelGroupe(self,self.maCommande) - self.listeFocus.append(node.fenetre) - - try : - node.fenetre.RBDeplie.setCheckable(False) - node.fenetre.RBDeplie.setEnabled(False) - node.fenetre.RBDeplie.setIcon(icon) - except : pass - - if node.item.object.isMCList() : - node.setDeplie = self.setDepliePourMCList - - for c in node.children : - c.setDeplie = self.setDepliePourNode - c.plieToutEtReaffiche = self.plieToutEtReaffiche - c.deplieToutEtReaffiche = self.deplieToutEtReaffiche - c.getPanel = self.getPanel - c.affichePanneau = self.affichePanneau - try : - c.fenetre.RBDeplie.setCheckable(False) - c.fenetre.RBDeplie.setEnabled(False) - c.fenetre.RBDeplie.setIcon(icon) - except : - pass - else : - node.setDeplie=self.setDepliePourNode - - #print ("fin ------------------------ afficheMots de MonWidgetCommandeDeplie1Niveau ",self.node.item.nom) - - def afficheSuivant(self,aAfficher): - fenetre=self.node.tree.itemCourant.fenetre - fenetre.afficheSuivant(aAfficher) - - def setDepliePourNode(self): - noeudCourant=self.node.tree.itemCourant - noeudCourant.setDeplieChildren() - if self.editor.fenetreCentraleAffichee == noeudCourant.fenetre : return - noeudCourant.afficheCeNiveau() - pass - - -# -------------------------------------------- Methodes qui surchargent les noeuds fils - - def setDepliePourMCList(self): - #print ('je surcharge setDeplie pour MCList') - pass - - def setPlieChildren(self): - #print ('je surcharge setPlieChildren') - pass - - def setDeplieChildren(self): - #print ('je surcharge setDeplieChildren') - pass - - def plieToutEtReaffiche(self): - #print ('je surcharge plieToutEtReaffiche', self.node.item.nom) - pass - - def deplieToutEtReaffiche(self): - #print ('je surcharge deplieToutEtReaffiche', self.node.tree.itemCourant.item.getLabelText()) - pass - - def plieToutEtReafficheSaufItem(self): - #print ('je surcharge plieToutEtReaffiche', self.node.tree.itemCourant.item.getLabelText()) - pass - - def affichePanneau(self): - #print ('je surcharge affichePanneau', self.node.tree.itemCourant.item.getLabelText()) - node=self.node.tree.itemCourant - while ( not (hasattr(node,'fenetreIhm')) or node.treeParent.fenetreIhm != 'deplie1Niveau') : - node=node.treeParent - self.node.tree.setCurrentItem(node) - - item=node.item - if item.getLabelText()[0] == self.editor.fenetreCentraleAffichee.labelNomCommande.text(): - return - node.setDeplieChildren() - node.afficheCeNiveau() - self.editor.fenetreCentraleAffichee.labelNomCommande.setText(item.getLabelText()[0]) - self.editor.fenetreCentraleAffichee.labelDoc.setText(item.getFr()) - - - - def getPanel (self): - #print ('surcharge ds getPanel') - pass diff --git a/InterfaceQT4/monWidgetCommentaire.py b/InterfaceQT4/monWidgetCommentaire.py deleted file mode 100644 index 31f016b9..00000000 --- a/InterfaceQT4/monWidgetCommentaire.py +++ /dev/null @@ -1,96 +0,0 @@ -# Copyright (C) 2007-2021 EDF R&D -# -# 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 -# -# Modules Python -# Modules Eficas - -from __future__ import absolute_import -try : - from builtins import str -except : pass - -from PyQt5.QtWidgets import QWidget -from PyQt5.QtCore import Qt - -from desWidgetCommentaire import Ui_WidgetCommentaire -from .gereIcones import FacultatifOuOptionnel -from Extensions.i18n import tr -import Accas -import os - - -# Import des panels - -class MonWidgetCommentaire(QWidget,Ui_WidgetCommentaire,FacultatifOuOptionnel): - """ - """ - def __init__(self,node,editor,commentaire): - QWidget.__init__(self,None) - self.node=node - self.node.fenetre=self - self.setupUi(self) - self.editor=editor - self.appliEficas=self.editor.appliEficas - self.repIcon=self.appliEficas.repIcon - self.setIconePoubelle() - self.remplitTexte() - self.monOptionnel=None - - self.commentaireTE.textChanged.connect(self.TexteCommentaireEntre) - if self.editor.code in ['MAP','CARMELCND'] : self.bCatalogue.close() - else : self.bCatalogue.clicked.connect(self.afficheCatalogue) - if self.editor.code in ['Adao','MAP','ADAO'] : - self.bAvant.close() - self.bApres.close() - else : - self.bAvant.clicked.connect(self.afficheAvant) - self.bApres.clicked.connect(self.afficheApres) - self.editor.fermeOptionnel() - - - def afficheApres(self): - self.node.selectApres() - - def afficheAvant(self): - self.node.selectAvant() - - - def afficheCatalogue(self): - self.node.tree.racine.affichePanneau() - if self.node : self.node.select() - else : self.node.tree.racine.select() - - def remplitTexte(self): - texte=self.node.item.getValeur() - self.commentaireTE.setText(texte) - if self.editor.code == "CARMELCND" and texte[0:16]=="Cree - fichier :" : - self.commentaireTE.setReadOnly(True) - self.commentaireTE.setStyleSheet("background:rgb(244,244,244);\n" "border:0px;\n") - self.commentaireTE.setToolTip(tr("Valeur non modifiable")) - else : - self.commentaireTE.setReadOnly(False) - - def donnePremier(self): - self.commentaireTE.setFocus(7) - - - def TexteCommentaireEntre(self): - texte=str(self.commentaireTE.toPlainText()) - self.editor.initModif() - self.node.item.setValeur(texte) - self.node.updateNodeTexte() diff --git a/InterfaceQT4/monWidgetCreeParam.py b/InterfaceQT4/monWidgetCreeParam.py deleted file mode 100644 index a1df6da6..00000000 --- a/InterfaceQT4/monWidgetCreeParam.py +++ /dev/null @@ -1,160 +0,0 @@ -# -*- coding: utf-8 -*- -# Copyright (C) 2007-2021 EDF R&D -# -# 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 -# -# Modules Python -from __future__ import absolute_import -try : - from builtins import object -except : pass - -import types,os,re -pattern_name = re.compile(r'^[^\d\W]\w*\Z') - -# Modules Eficas - -from PyQt5.QtWidgets import QDialog, QMessageBox -from PyQt5.QtCore import Qt -from Extensions.i18n import tr -from desWidgetCreeParam import Ui_desWidgetCreeParam - - -class MonWidgetCreeParam(Ui_desWidgetCreeParam,QDialog): - """ - """ - def __init__(self,editor, name = None,fl = 0): - self.editor=editor - self.editor.afficheInfos("") - QDialog.__init__(self,editor) - self.setupUi(self) - self.connecterSignaux() - self.dejaExistant=0 - self.listeTousParam=self.editor.jdc.params - self.dictListe={} - self.initToutesVal() - - def connecterSignauxQT4(self) : - self.connect(self.lineEditVal,SIGNAL("returnPressed()"),self.lineEditValReturnPressed) - self.connect(self.lineEditNom,SIGNAL("returnPressed()"),self.lineEditNomReturnPressed) - - def connecterSignaux(self) : - self.lineEditVal.returnPressed.connect(self.lineEditValReturnPressed) - self.lineEditNom.returnPressed.connect(self.lineEditNomReturnPressed) - self.LBParam.itemDoubleClicked.connect(self.paramClicked) - - def paramClicked(self,item): - if self.editor.nodeEnCours == None : - QMessageBox.warning( self, tr("Pas de Mot-Clef"),tr("Attention! selectionnez un mot-clef")) - return - param= self.dictListe[item.text()] - self.editor.nodeEnCours.lineEditVal.setText(param) - self.editor.nodeEnCours.LEvaleurPressed() - - - def creeParametre(self): - nom=str(self.lineEditNom.text()) - val=str(self.lineEditVal.text()) - if val == "" or None : return - if nom == "" or None : return - if len(self.editor.tree.selectedItems()) == 0 : - itemAvant=self.editor.tree.racine - else : - itemAvant=self.editor.tree.selectedItems()[0] - param=itemAvant.addParameters(True) - param.item.setNom(nom) - #PN self.val permet d entrer du texte - param.item.setValeur(self.val) - param.updateNodeTexte() - param.updateNodeValid() - self.LBParam.addItem((repr(param.item.object))) - self.dictListe[repr(param.item.object)] = param.item.object.nom - self.lineEditVal.setText("") - self.lineEditNom.setText("") - self.lineEditNom.setFocus(True) - - - - def lineEditValReturnPressed(self): - qtVal=self.lineEditVal.text() - valString=str(self.lineEditVal.text()) - self.val="" - contexte={} - exec("from math import *", contexte) - jdc=self.editor.jdc - if jdc == None : - self.editor.afficheInfos(tr(u"La Creation de parametre n est possible que dans un jeu de donnees"),Qt.red) - return - - for p in jdc.params : - try: - tp=p.nom+'='+str(repr(p.valeur)) - exec(tp, contexte) - except : - pass - monTexte="monParam="+valString - try : - exec(monTexte, contexte) - self.val=valString - except : - try : - monTexte="monParam='"+valString+"'" - self.val="'"+valString+"'" - except : - self.editor.afficheInfos(tr("Valeur incorrecte"),Qt.red) - if self.lineEditNom.text()!="" and self.dejaExistant==False : self.creeParametre() - - - def lineEditNomReturnPressed(self): - qtNom=self.lineEditNom.text() - nom=str(qtNom) - if not pattern_name.match(nom) : - self.lineEditNom.setText("") - commentaire=nom + tr(" n est pas un identifiant correct\n ") - self.editor.afficheInfos(commentaire,Qt.red) - for p in self.editor.jdc.params : - if p.nom==nom : - commentaire=nom + tr(" existe deja\n ") - self.editor.afficheInfos(commentaire,Qt.red) - return - - if self.lineEditVal.text()!="" : self.creeParametre() - self.lineEditVal.setFocus(Qt.OtherFocusReason) - - - def initToutesVal(self): - self.LBParam.clear() - for param in self.listeTousParam : - self.LBParam.addItem((repr(param))) - self.dictListe[repr(param)] = param.nom - - - - def valideParam(self): - if self.LBParam.selectedItems()== None : return - lParam=[] - for indice in range(len(self.LBParam.selectedItems())): - i=self.LBParam.selectedItems()[indice].text() - param=self.dictListe[i] - lParam.append(param) - - try : - self.panel.ajoutNValeur(lParam) - except : - for p in lParam : - self.panel.ajout1Valeur(p) - self.close() diff --git a/InterfaceQT4/monWidgetCreeUserAssd.py b/InterfaceQT4/monWidgetCreeUserAssd.py deleted file mode 100644 index b26fe3be..00000000 --- a/InterfaceQT4/monWidgetCreeUserAssd.py +++ /dev/null @@ -1,59 +0,0 @@ -# -*- coding: utf-8 -*- -# Copyright (C) 2007-2020 EDF R&D -# -# 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 -# -# Modules Python -from __future__ import absolute_import -import types,os - - -# Modules Eficas -from Extensions.i18n import tr -from .monWidgetSimpTxt import MonWidgetSimpTxt -from .monWidgetPlusieursBase import MonWidgetPlusieursBase -from copy import copy,deepcopy -from PyQt5.QtCore import Qt - - - -class MonWidgetCreeUserAssd ( MonWidgetSimpTxt): - def __init__(self,node,monSimpDef,nom,objSimp,parentQt,commande): - MonWidgetSimpTxt. __init__(self,node,monSimpDef,nom,objSimp,parentQt,commande) - #self.lineEditVal.returnPressed.connect(self.LEValeurAjouteDsPossible) - - def LEvaleurPressed(self): - try : - if str(self.lineEditVal.text())=="" or str(self.lineEditVal.text())==None : return - except : pass - valeurEntree = str(self.lineEditVal.text()) - if valeurEntree == self.oldValeurTexte : return - if self.oldValeurTexte == "" : enCreation = True - else : enCreation = False - if enCreation : validite,commentaire=self.objSimp.creeUserASSDetSetValeur(valeurEntree) - else : validite,commentaire=self.objSimp.renommeSdCree(valeurEntree) - if not enCreation : self.node.updateNodeTexte() - #PNPNPN -- signal update sur les fils ou ? - if commentaire != "" : - if validite : - self.editor.afficheCommentaire(commentaire) - self.oldValeurTexte = self.lineEditVal.text() - else : - self.editor.afficheInfos(commentaire,Qt.red) - self.lineEditVal.setText("") - self.oldValeurTexte="" - self.parentQt.propageChange(self.objSimp.definition.type[0],self) diff --git a/InterfaceQT4/monWidgetDate.py b/InterfaceQT4/monWidgetDate.py deleted file mode 100644 index f2dcdc3b..00000000 --- a/InterfaceQT4/monWidgetDate.py +++ /dev/null @@ -1,50 +0,0 @@ -# -*- coding: utf-8 -*- -# Copyright (C) 2007-2021 EDF R&D -# -# 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 -# -# Modules Python -from __future__ import absolute_import -import types,os - -# Modules Eficas -from Extensions.i18n import tr - -from .feuille import Feuille -from .monWidgetSimpTuple import MonWidgetSimpTuple -from desWidgetDate import Ui_WidgetDate - - -class MonWidgetDate (Ui_WidgetDate,MonWidgetSimpTuple): - - def __init__(self,node,monSimpDef,nom,objSimp,parentQt,commande): - self.nbValeurs=3 - MonWidgetSimpTuple.__init__(self,node,monSimpDef,nom,objSimp,parentQt,commande) - if self.objSimp.isImmuable() : - self.lineEditVal1.setDisabled(True) - self.lineEditVal2.setDisabled(True) - self.lineEditVal3.setDisabled(True) - self.lineEditVal1.setStyleSheet(QString.fromUtf8("background:rgb(244,244,244);\n" "border:0px;\n")) - self.lineEditVal2.setStyleSheet(QString.fromUtf8("background:rgb(244,244,244);\n" "border:0px;\n")) - self.lineEditVal3.setStyleSheet(QString.fromUtf8("background:rgb(244,244,244);\n" "border:0px;\n")) - self.lineEditVal1.setToolTip(tr("Valeur non modifiable")) - self.lineEditVal2.setToolTip(tr("Valeur non modifiable")) - self.lineEditVal3.setToolTip(tr("Valeur non modifiable")) - else : - self.maCommande.listeAffichageWidget.append(self.lineEditVal1) - #self.maCommande.listeAffichageWidget.append(self.lineEditVal2) - #self.maCommande.listeAffichageWidget.append(self.lineEditVal3) diff --git a/InterfaceQT4/monWidgetFact.py b/InterfaceQT4/monWidgetFact.py deleted file mode 100644 index 8bf1c5dc..00000000 --- a/InterfaceQT4/monWidgetFact.py +++ /dev/null @@ -1,93 +0,0 @@ -# Copyright (C) 2007-2021 EDF R&D -# -# 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 -# -# Modules Python -from __future__ import absolute_import -from PyQt5.QtCore import Qt, QTimer -from PyQt5.QtWidgets import QWidget - - -# Modules Eficas - -from .groupe import Groupe -from desWidgetFact import Ui_WidgetFact -from desWidgetFactTableau import Ui_WidgetFactTableau -from Extensions.i18n import tr -# Import des panels - -# PN 18 mai 2020 : affiche systematique des optionnels -class MonWidgetFactCommun(Groupe): - """ - """ - def __init__(self,node,editor,parentQt,definition, obj, niveau,commande): - #print ("fact : ",node.item.nom) - Groupe.__init__(self,node,editor,parentQt, definition,obj,niveau,commande) - labeltext,fonte,couleur = self.node.item.getLabelText() - self.GroupBox.setText(tr(labeltext)) - #self.GroupBox.setTextInteractionFlags(Qt.TextSelectableByMouse) - self.parentQt.commandesLayout.insertWidget(-1,self) - self.doitAfficherOptionnel=True - min,max=obj.getMinMax() - if max < 2 and hasattr(self, 'RBPlus') : self.RBPlus.close() - if max > 1 and hasattr(self, 'RBPlus') : self.RBPlus.clicked.connect(self.ajouteMCParPB) - - def enterEvent(self,event): - #print "enterEvent ", self.node.item.getLabelText()[0] - self.doitAfficherOptionnel=True - QWidget.enterEvent(self,event) - QTimer.singleShot(500, self.delayAffiche) - - def leaveEvent(self,event): - #print "leaveEvent", self.node.item.getLabelText()[0] - #self.doitAfficherOptionnel=False - QWidget.leaveEvent(self,event) - - def delayAffiche(self): - #print "delayAffiche, self.doitAfficherOptionnel = ", self.doitAfficherOptionnel - if self.doitAfficherOptionnel and self.editor.code != "CARMELCND" :self.afficheOptionnel() - - def ajouteMCParPB(self): - texteListeNom="+"+self.obj.nom - parentOuAjouter=self.parentQt - from .monWidgetBloc import MonWidgetBloc - while (parentOuAjouter and isinstance(parentOuAjouter, MonWidgetBloc)) : - parentOuAjouter=parentOuAjouter.parentQt - parentOuAjouter.ajoutMC(texteListeNom) - - -# def reaffiche(self, nodeAVoir=None): -# print ('ds reaffiche : ', self.obj.nom, self.node.firstDeplie) -# if self.node.editor.maConfiguration.afficheFirstPlies and self.node.firstDeplie: -# self.node.firstDeplie =False -# self.node.setPlie() -# Groupe.reaffiche(self,nodeAVoir) - - - -class MonWidgetFact(Ui_WidgetFact,MonWidgetFactCommun): - #def __init__(self,node,editor,parentQt,definition, obj, niveau,commande,insertIn=1): - # MonWidgetFactCommun.__init__(self,node,editor,parentQt, definition,obj,niveau,commande,insertIn) - def __init__(self,node,editor,parentQt,definition, obj, niveau,commande): - MonWidgetFactCommun.__init__(self,node,editor,parentQt, definition,obj,niveau,commande) - -class MonWidgetFactTableau(Ui_WidgetFact,MonWidgetFactCommun): - #def __init__(self,node,editor,parentQt,definition, obj, niveau,commande,insertIn=1): - # MonWidgetFactCommun.__init__(self,node,editor,parentQt, definition,obj,niveau,commande,insertIn) - def __init__(self,node,editor,parentQt,definition, obj, niveau,commande): - MonWidgetFactCommun.__init__(self,node,editor,parentQt, definition,obj,niveau,commande) - MonWidgetFactTableau.__init__(self,node,editor,parentQt, definition,obj,niveau,commande) diff --git a/InterfaceQT4/monWidgetFactPlie.py b/InterfaceQT4/monWidgetFactPlie.py deleted file mode 100644 index 51066dca..00000000 --- a/InterfaceQT4/monWidgetFactPlie.py +++ /dev/null @@ -1,40 +0,0 @@ -# Copyright (C) 2007-2021 EDF R&D -# -# 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 -# -# Modules Python -# Modules Eficas - -from __future__ import absolute_import -from desWidgetFactPlie import Ui_WidgetFactPlie -from .groupe import Groupe -from Extensions.i18n import tr -# Import des panels - -class MonWidgetFactPlie(Ui_WidgetFactPlie,Groupe): - """ - """ - #def __init__(self,node,editor,parentQt,definition, obj, niveau,commande,insertIn=-1): - def __init__(self,node,editor,parentQt,definition, obj, niveau,commande): - #print "fact plie : ",node.item.nom - node.fenetreAAfficher=self - Groupe.__init__(self,node,editor,parentQt, definition,obj,niveau,commande) - self.groupBox.setText(self.node.item.getLabelText()[0]) - self.parentQt.commandesLayout.insertWidget(-1,self) - - def traiteClicSurLabel(self,texte): - return diff --git a/InterfaceQT4/monWidgetFormule.py b/InterfaceQT4/monWidgetFormule.py deleted file mode 100644 index cff39488..00000000 --- a/InterfaceQT4/monWidgetFormule.py +++ /dev/null @@ -1,203 +0,0 @@ -# Copyright (C) 2007-2021 EDF R&D -# -# 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 -# -# Modules Python -# Modules Eficas - -from __future__ import absolute_import -try : - from builtins import str -except : pass - -from desWidgetFormule import Ui_WidgetFormule -from .gereIcones import FacultatifOuOptionnel - -from PyQt5.QtWidgets import QWidget -from PyQt5.QtGui import QIcon -from PyQt5.QtCore import Qt - - -from Extensions.i18n import tr -import Accas -import os - - -# Import des panels - -class MonWidgetFormule(QWidget,Ui_WidgetFormule,FacultatifOuOptionnel): - """ - """ - def __init__(self,node,editor,etape): - #print "MonWidgetFormule ", self - QWidget.__init__(self,None) - self.node=node - self.node.fenetre=self - self.editor=editor - self.appliEficas=self.editor.appliEficas - self.repIcon=self.appliEficas.repIcon - self.setupUi(self) - - - self.setIconePoubelle() - self.setIconesGenerales() - self.setValeurs() - self.setValide() - - - if self.editor.code in ['MAP','CARMELCND'] : self.bCatalogue.close() - else : self.bCatalogue.clicked.connect(self.afficheCatalogue) - if self.editor.code in ['Adao','MAP','ADAO'] : - self.bAvant.close() - self.bApres.close() - else : - self.bAvant.clicked.connect(self.afficheAvant) - self.bApres.clicked.connect(self.afficheApres) - self.LENom.returnPressed.connect(self.nomChange) - self.LENomFormule.returnPressed.connect(self.nomFormuleSaisi) - self.LENomsArgs.returnPressed.connect(self.argsSaisis) - self.LECorpsFormule.returnPressed.connect(self.FormuleSaisie) - - - - self.racine=self.node.tree.racine - self.monOptionnel=None - self.editor.fermeOptionnel() - #print "fin init de widget Commande" - - - def donnePremier(self): - self.listeAffichageWidget[0].setFocus(7) - - - def setValeurs(self): - self.LENomFormule.setText(self.node.item.getNom()) - self.LECorpsFormule.setText(self.node.item.getCorps()) - texte_args="" - if self.node.item.getArgs() != None : - for i in self.node.item.getArgs() : - if texte_args != "" : texte_args = texte_args +"," - texte_args=texte_args + i - self.LENomsArgs.setText(texte_args) - - - def nomChange(self): - nom = str(self.LENom.text()) - self.LENomFormule.setText(nom) - self.nomFormuleSaisi() - - - def afficheCatalogue(self): - if self.editor.widgetOptionnel != None : self.monOptionnel.hide() - self.racine.affichePanneau() - if self.node : self.node.select() - else : self.racine.select() - - def afficheApres(self): - self.node.selectApres() - - def afficheAvant(self): - self.node.selectAvant() - - def setValide(self): - if not(hasattr (self,'RBValide')) : return - icon = QIcon() - if self.node.item.object.isValid() : - icon=QIcon(self.repIcon+"/ast-green-ball.png") - else : - icon=QIcon(self.repIcon+"/ast-red-ball.png") - if self.node.item.getIconName() == "ast-yellow-square" : - icon=QIcon(self.repIcon+"/ast-yel-ball.png") - self.RBValide.setIcon(icon) - - - def nomFormuleSaisi(self): - nomFormule = str(self.LENomFormule.text()) - if nomFormule == '' : return - self.LENom.setText(nomFormule) - test,erreur = self.node.item.verifNom(nomFormule) - if test : - commentaire=nomFormule+tr(" est un nom valide pour une FORMULE") - self.editor.afficheInfos(commentaire) - else : - commentaire=nomFormule+tr(" n'est pas un nom valide pour une FORMULE") - self.editor.afficheInfos(commentaire,Qt.red) - return - if str(self.LENomsArgs.text()) != "" and str(self.LECorpsFormule.text())!= "" : self.BOkPressedFormule() - self.LENomsArgs.setFocus(7) - - def argsSaisis(self): - arguments = str(self.LENomsArgs.text()) - if arguments == '' : return - test,erreur = self.node.item.verifArguments(arguments) - if test: - commentaire=tr("Argument(s) valide(s) pour une FORMULE") - self.editor.afficheInfos(commentaire) - else: - commentaire=tr("Argument(s) invalide(s) pour une FORMULE") - self.editor.afficheInfos(commentaire,Qt.red) - if str(self.LECorpsFormule.text()) != "" and str(self.LENomFormule.text())!= "" : self.BOkPressedFormule() - self.LECorpsFormule.setFocus(7) - - def FormuleSaisie(self): - nomFormule = str(self.LENomFormule.text()) - arguments = str(self.LENomsArgs.text()) - expression = str(self.LECorpsFormule.text()) - if expression == '' : return - test,erreur = self.node.item.verifFormule_python((nomFormule,"REEL",arguments,expression)) - - if test: - commentaire=tr("Corps de FORMULE valide") - self.editor.afficheInfos(commentaire) - else: - commentaire=tr("Corps de FORMULE invalide") - self.editor.afficheInfos(commentaire,Qt.red) - if str(self.LENomsArgs.text()) != "" and str(self.LENomFormule.text())!= "" : self.BOkPressedFormule() - - def BOkPressedFormule(self): - #print dir(self) - #if self.parent.modified == 'n' : self.parent.initModif() - - nomFormule = str(self.LENomFormule.text()) - test,erreur = self.node.item.verifNom(nomFormule) - if not test : - self.editor.afficheInfos(erreur,Qt.red) - return - - arguments = str(self.LENomsArgs.text()) - test,erreur = self.node.item.verifArguments(arguments) - if not test : - self.editor.afficheInfos(erreur,Qt.red) - return - - expression = str(self.LECorpsFormule.text()) - test,erreur = self.node.item.verifFormule_python((nomFormule,"REEL",arguments,expression)) - if not test : - self.editor.afficheInfos(erreur,Qt.red) - return - - test=self.node.item.object.updateFormulePython(formule=(nomFormule,"REEL",arguments,expression)) - test,erreur = self.node.item.saveFormule(nomFormule,"REEL",arguments,expression) - if test : - self.node.onValid() - self.node.update_valid() - commentaire = "Formule saisie" - self.editor.afficheInfos(commentaire) - else: - commentaire ="Formule incorrecte : " + erreur - self.editor.afficheInfos(commentaire,Qt.red) - self.editor.initModif() diff --git a/InterfaceQT4/monWidgetHeure.py b/InterfaceQT4/monWidgetHeure.py deleted file mode 100644 index b95cf974..00000000 --- a/InterfaceQT4/monWidgetHeure.py +++ /dev/null @@ -1,35 +0,0 @@ -# -*- coding: utf-8 -*- -# Copyright (C) 2007-2021 EDF R&D -# -# 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 -# -# Modules Python -from __future__ import absolute_import -import types,os - -# Modules Eficas -from Extensions.i18n import tr - -from .feuille import Feuille -from .monWidgetSimpBase import MonWidgetSimpBase -from desWidgetHeure import Ui_WidgetHeure - - -class MonWidgetHeure (Ui_WidgetHeure,MonWidgetSimpBase): - - def __init__(self,node,monSimpDef,nom,objSimp,parentQt,commande): - MonWidgetSimpBase.__init__(self,node,monSimpDef,nom,objSimp,parentQt,commande) diff --git a/InterfaceQT4/monWidgetInactif.py b/InterfaceQT4/monWidgetInactif.py deleted file mode 100644 index 3a920c1a..00000000 --- a/InterfaceQT4/monWidgetInactif.py +++ /dev/null @@ -1,85 +0,0 @@ -# Copyright (C) 2007-2021 EDF R&D -# -# 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 -# -# Modules Python -# Modules Eficas - -from __future__ import absolute_import -from PyQt5.QtWidgets import QWidget - -from Extensions.i18n import tr -from desWidgetInactif import Ui_WidgetInactif -import Accas -import os - - -# Import des panels - -class MonWidgetInactif(QWidget,Ui_WidgetInactif): - """ - """ - def __init__(self,node,editor): - QWidget.__init__(self,None) - self.node=node - self.editor=editor - self.setupUi(self) - from .monWidgetOptionnel import MonWidgetOptionnel - if self.editor.widgetOptionnel!= None : - self.monOptionnel=self.editor.widgetOptionnel - else : - self.monOptionnel=MonWidgetOptionnel(self) - self.editor.widgetOptionnel=self.monOptionnel - self.editor.splitter.addWidget(self.monOptionnel) - self.editor.restoreSplitterSizes() - self.afficheOptionnel() - self.bAvant.clicked.connect(self.afficheAvant) - self.bApres.clicked.connect(self.afficheApres) - self.bCatalogue.clicked.connect(self.afficheCatalogue) - self.labelNomCommande.setText(tr(self.node.item.nom)) - self.labelNomCommande.setEnabled(False) - - def traiteClicSurLabel(self): - pass - - def donnePremier(self): - pass - - def setValide(self): - pass - - def afficheOptionnel(self): - # N a pas de parentQt. doit donc etre redefini - if self.editor.maConfiguration.closeOptionnel : return - liste=[] - #print "dans afficheOptionnel", self.monOptionnel - # dans le cas ou l insertion n a pas eu leiu (souci d ordre par exemple) - #if self.monOptionnel == None : return - self.monOptionnel.parentMC=self - self.monOptionnel.afficheOptionnelVide() - - - def afficheCatalogue(self): - if self.editor.widgetOptionnel != None : self.monOptionnel.hide() - self.node.tree.racine.affichePanneau() - self.node.tree.racine.select() - - def afficheApres(self): - self.node.selectApres() - - def afficheAvant(self): - self.node.selectAvant() diff --git a/InterfaceQT4/monWidgetInfo.py b/InterfaceQT4/monWidgetInfo.py deleted file mode 100644 index a8f6a028..00000000 --- a/InterfaceQT4/monWidgetInfo.py +++ /dev/null @@ -1,46 +0,0 @@ -# -*- coding: utf-8 -*- -# Copyright (C) 2007-2021 EDF R&D -# -# 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 -# -# Modules Python -from __future__ import absolute_import -try : - from builtins import str -except : pass - -import types,os - -# Modules Eficas -from PyQt5.QtWidgets import QWidget -from Extensions.i18n import tr - -from desWidgetInformation import Ui_WidgetInformative - - -class MonWidgetInfo (Ui_WidgetInformative,QWidget): -# c est juste la taille des differents widgets de base qui change - - def __init__(self,node,monSimpDef,nom,objSimp,parentQt,commande): - QWidget.__init__(self,None) - self.setupUi(self) - valeur=node.item.getValeur() - self.lineEditVal.setText(str(valeur)) - self.lineEditVal.setReadOnly(True) - parentQt.commandesLayout.insertWidget(-1,self) - - commande.listeAffichageWidget.append(self.lineEditVal) diff --git a/InterfaceQT4/monWidgetIntoSug.py b/InterfaceQT4/monWidgetIntoSug.py deleted file mode 100644 index e4db00ad..00000000 --- a/InterfaceQT4/monWidgetIntoSug.py +++ /dev/null @@ -1,71 +0,0 @@ -# -*- coding: utf-8 -*- -# Copyright (C) 2007-2021 EDF R&D -# -# 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 -# -# Modules Python -from __future__ import absolute_import -try : - from builtins import str - from builtins import range -except : pass - -import types,os - -# Modules Eficas -from PyQt5.QtWidgets import QCheckBox, QScrollBar, QFrame, QApplication, QLabel -from PyQt5.QtWidgets import QSizePolicy,QSpacerItem -from PyQt5.QtGui import QPalette, QFont -from PyQt5.QtCore import Qt - -from Extensions.i18n import tr - -from desWidgetIntoSug import Ui_WidgetIntoSug -from monWidgetPlusieursInto import MonWidgetPlusieursInto - -class GereAjoutDsPossible: - def LEValeurAjouteDsPossible(self): - text=str(self.lineEditVal.text()) - if text == "" : return - # il faudrait essauer d en obtenir un reel, un tuple ou ... - # si cela est utilise pour autre chose que Telemac - # tout devrait etre fait ici - if not isinstance(text,str) : - self.lineEditVal.setText("") - return - if self.node.item.hasIntoSug() : - self.maListeDeValeur=list(self.node.item.getListePossibleAvecSug([])) - self.maListeDeValeur.insert(0,text) - else : - try : - self.monSimpDef.intoSug.insert(0,text) - except : - self.monSimpDef.intoSug=list(self.monSimpDef.intoSug) - self.monSimpDef.intoSug.insert(0,text) - # selon si on est une liste ou un combo - try : self.ajouteValeurPossible(text) - except : self.setValeurs() - -class MonWidgetIntoSug (Ui_WidgetIntoSug, MonWidgetPlusieursInto,GereAjoutDsPossible): -# Attention Attention -# cette wdget ne fonctionne actuellement que pour Telemac -# on attend du texte . on n essaye pas de transformer - - def __init__(self,node,monSimpDef,nom,objSimp,parentQt,commande): - - MonWidgetPlusieursInto.__init__(self,node,monSimpDef,nom,objSimp,parentQt,commande) - self.lineEditVal.returnPressed.connect(self.LEValeurAjouteDsPossible) diff --git a/InterfaceQT4/monWidgetMatrice.py b/InterfaceQT4/monWidgetMatrice.py deleted file mode 100644 index 02fb9311..00000000 --- a/InterfaceQT4/monWidgetMatrice.py +++ /dev/null @@ -1,264 +0,0 @@ -# -*- coding: utf-8 -*- -# Copyright (C) 2007-2021 EDF R&D -# -# 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 -# -# Modules Python -from __future__ import absolute_import -from __future__ import print_function -try : - from builtins import str - from builtins import range -except : pass - -import types,os,sys - -# Modules Eficas -from Extensions.i18n import tr -from .feuille import Feuille -from Extensions.eficas_exception import EficasException - - -from desWidgetMatrice import Ui_desWidgetMatrice - -from PyQt5.QtCore import QSize, Qt -from PyQt5.QtWidgets import QTableWidgetItem, QTableWidget -from PyQt5.QtGui import QIcon, QColor -from PyQt5.QtWidgets import QMessageBox - - -class MonWidgetMatrice (Ui_desWidgetMatrice,Feuille): -# c est juste la taille des differents widgets de base qui change - - def __init__(self,node,monSimpDef,nom,objSimp,parentQt,commande): - Feuille.__init__(self,node,monSimpDef,nom,objSimp,parentQt,commande) - self.monType = self.node.item.object.definition.type[0] - parentQt.commandesLayout.insertWidget(-1,self) - self.nbLigs=0 - self.nbCols=0 - self.creeColonnes() - self.connecterSignaux() - self.initialValeur() - - - def connecterSignaux(self) : - self.TBMatrice.itemChanged.connect(self.itemChanged) - self.PBrefresh.clicked.connect( self.acceptVal) - self.TBMatrice.focusOutEvent=self.monFocusOutEvent - - - def monFocusOutEvent(self,event): - self.acceptVal() - QTableWidget.focusOutEvent(self.TBMatrice,event) - - - def itemChanged(self): - monItem=self.TBMatrice.currentItem() - if monItem==None : return - texte=monItem.text() - if texte=="" : return - boolOk, commentaire = self.monType.verifItem(texte,self.node.item.object) - if not boolOk : - self.editor.afficheInfos(tr(commentaire),Qt.red) - monItem.setText("") - return - if self.monType.coloree : self.coloreItem(monItem,texte) - - - def coloreItem(self,monItem,texte): - if texte in self.monType.dictCouleurs.keys() : - monItem.setBackground(self.monType.dictCouleurs[texte]) - else : - i=self.monType.indiceCouleur%20 - newCouleur=QColor(*self.monType.listeCouleurs[i]) - #monItem.setBackground(Qt.red) - monItem.setBackground(newCouleur) - self.monType.dictCouleurs[texte]=newCouleur - self.monType.indiceCouleur+=1 - - - - def creeColonnes(self): - if self.monType.methodeCalculTaille != None : - try: - MonWidgetMatrice.__dict__[self.monType.methodeCalculTaille](*(self,)) - except : - QMessageBox.critical( self, tr("Mauvaise execution "),tr( "impossible d executer la methode ") + monType.methodeCalculTaille ) - return - else : - self.nbLigs=self.monType.nbLigs - self.nbCols=self.monType.nbCols - self.TBMatrice.setColumnCount(self.nbCols) - self.TBMatrice.setRowCount(self.nbLigs) - if self.nbLigs <15 : taille = 50 - else : taille = 30 - for i in range(self.nbLigs) : - self.TBMatrice.setRowHeight(i,taille) - for i in range(self.nbCols) : - self.TBMatrice.setColumnWidth(i,taille) - if self.monType.listeHeaders != None : - self.TBMatrice.setHorizontalHeaderLabels(self.monType.listeHeaders[0]) - self.TBMatrice.setVerticalHeaderLabels(self.monType.listeHeaders[1]) - else : - self.TBMatrice.verticalHeader().hide() - self.TBMatrice.horizontalHeader().hide() - # self.TBMatrice.setFixedSize(self.nbCols*20+10,self.nbLigs*20+10) - - - def initialValeur(self): - liste=self.node.item.getValeur() - if liste == None : return - dejaAffiche=0 - if (len(liste)) != self.nbLigs : - QMessageBox.critical( self,tr( "Mauvaise dimension de matrice"),tr( "le nombre de ligne n est pas egal a ") + str(self.nbLigs)) - for i in range(self.nbLigs): - inter=liste[i] - if (len(inter)) != self.nbCols : - QMessageBox.critical( self, tr("Mauvaise dimension de matrice"), tr("le nombre de colonne n est pas egal a ") + str(self.nbCols)) - raise EficasException('dimension') - for j in range(self.nbCols): - self.TBMatrice.setItem(i,j,QTableWidgetItem(str(liste[i][j]))) - if self.monType.coloree : self.coloreItem(self.TBMatrice.item(i,j),str(liste[i][j])) - - def acceptVal(self): - liste=[] - for i in range(self.nbLigs): - listeCol=[] - for j in range(self.nbCols): - monItem=self.TBMatrice.item(i,j) - if monItem : texte=monItem.text() - else : texte = '' - if texte != '' : val=self.monType.convertItem(texte) - else : val = None - listeCol.append(val) - liste.append(listeCol) - self.node.item.setValeur(liste) - - -class MonWidgetMatriceOT (MonWidgetMatrice): - - def __init__(self,node,monSimpDef,nom,objSimp,parentQt,commande): - monWidgetMatrice.__init__(self,node,monSimpDef,nom,objSimp,parentQt,commande) - - def connecterSignaux(self) : - self.TBMatrice.itemChanged.connect(self.itemChanged) - self.PBrefresh.clicked.connect( self.afficheEntete) - - - def afficheEntete(self): - self.objSimp.changeEnteteMatrice() - self.TBMatrice.clear() - if self.node.item.getValeur()== None: self.initialSsValeur() - else : - try : self.initialValeur() - except : self.initialSsValeur() - self.node.item.object.state='changed' - self.node.item.object.parent.state='changed' - self.setValide() - self.parentQt.setValide() - self.node.item.jdc.isValid() - - - def itemChanged(self): - monItem=self.TBMatrice.currentItem() - if monItem==None : return - texte=monItem.text() - if texte=="" : return - try : - val=float(str(texte)) - ok=True - except : - ok=False - if ok == False : - self.editor.afficheInfos(tr("Entrer un float SVP"),Qt.red) - monItem.setText("") - return - if self.monType.valSup != None : - if val > self.monType.valSup : - self.editor.afficheInfos(tr("Entrer un float inferieur a ") + repr(self.monType.valSup),Qt.red) - monItem.setText("") - return - if self.monType.valMin != None : - if val < self.monType.valMin : - self.editor.afficheInfos(tr("Entrer un float superieur a ") + repr(self.monType.valMin),Qt.red) - monItem.setText("") - return - self.editor.afficheInfos("") - if self.monType.structure != None: MonWidgetMatrice.__dict__[self.monType.structure](*(self,)) - self.acceptVal() - - - - def creeColonnes(self): - if self.monType.methodeCalculTaille != None : - try: - MonWidgetMatrice.__dict__[self.monType.methodeCalculTaille](*(self,)) - except : - QMessageBox.critical( self, tr("Mauvaise execution "),tr( "impossible d executer la methode ") + monType.methodeCalculTaille ) - return - else : - self.nbLigs=self.monType.nbLigs - self.nbCols=self.monType.nbCols - - - def nbDeVariables(self): - # uniquement pour OT - jdc=self.node.item.object.jdc - etape=self.node.item.object.etape - self.listeVariables=jdc.getVariables(etape) - if self.listeVariables == [] : - QMessageBox.critical( self, tr("Mauvaise Commande "),tr( "Aucune variable connue")) - return - self.TBMatrice.setColumnCount(len(self.listeVariables)) - self.TBMatrice.setRowCount(len(self.listeVariables)) - self.nbLigs=len(self.listeVariables) - self.nbCols=len(self.listeVariables) - - - def initialSsValeur(self): - # uniquement pour OT - self.listeVariables=[] - for row in range(self.nbLigs): - for column in range(self.nbCols): - if row == column : - initialFloat=1 - else : - initialFloat=0 - self.TBMatrice.setItem(row,column,QTableWidgetItem(str(initialFloat))) - header =[] - for var in liste[0]: header .append(str(var)) - self.TBMatrice.setVerticalHeaderLabels(header) - self.TBMatrice.setHorizontalHeaderLabels(header) - - def initialValeur(self): - # uniquement pour OT - liste=self.node.item.getValeur() - dejaAffiche=0 - if (len(liste)) != self.nbLigs +1 : - QMessageBox.critical( self,tr( "Mauvaise dimension de matrice"),tr( "le nombre de ligne n est pas egal a ") + str(self.nbLigs)) - raise EficasException('dimension') - for i in range(self.nbLigs): - inter=liste[i+1] - if (len(inter)) != self.nbCols : - QMessageBox.critical( self, tr("Mauvaise dimension de matrice"), tr("le nombre de colonne n est pas egal a ") + str(self.nbCols)) - raise EficasException('dimension') - for j in range(self.nbCols): - self.TBMatrice.setItem(i,j,QTableWidgetItem(str(liste[i][j]))) - header =[] - for var in liste[0]: header .append(str(var)) - self.TBMatrice.setVerticalHeaderLabels(header) - self.TBMatrice.setHorizontalHeaderLabels(header) diff --git a/InterfaceQT4/monWidgetNiveauFact.py b/InterfaceQT4/monWidgetNiveauFact.py deleted file mode 100644 index c12e5bac..00000000 --- a/InterfaceQT4/monWidgetNiveauFact.py +++ /dev/null @@ -1,179 +0,0 @@ -# Copyright (C) 2007-2021 EDF R&D -# -# 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 -# -# Modules Python -# Modules Eficas - -from __future__ import absolute_import -try : - from builtins import str -except : pass - -import types - -from desWidgetNiveauFact import Ui_WidgetNiveauFact -from InterfaceQT4.monWidgetOptionnel import MonWidgetOptionnel -from InterfaceQT4.groupe import Groupe - -from PyQt5.QtWidgets import QWidget -from PyQt5.QtGui import QIcon - - -from Extensions.i18n import tr -import Accas -import os - - -# Import des panels - -class MonWidgetNiveauFact(Ui_WidgetNiveauFact,Groupe): - """ - """ - def __init__(self,node,editor,definition,obj): - self.listeAffichageWidget=[] - self.listeBoutonAChanger=[] - Groupe.__init__(self,node,editor,None,definition,obj,1,self) - from InterfaceQT4 import composimp - if isinstance(self.node ,composimp.Node): - widget=self.node.getPanelGroupe(self,self.maCommande) - self.listeBoutonAChanger.append(widget.RBValide) - self.afficheOptionnel() - self.inhibe=False - self.labelDoc.setText(self.node.item.getFr()) - self.labelNomCommande.setText(self.node.item.getLabelText()[0]) - - def reaffiche(self,nodeAVoir=None): - self.node.setDeplieChildren() - self.node.afficheCeNiveau() - self.editor.fenetreCentraleAffichee.labelDoc.setText(self.node.item.getFr()) - self.editor.fenetreCentraleAffichee.labelNomCommande.setText(self.node.item.getLabelText()[0]) - - def getPanel(self): - # necessaire pour handleOnItem de browser.py - # non appele - pass - - def donnePremier(self): - #print "dans donnePremier" - QApplication.processEvents() - if self.listeAffichageWidget != [] : - self.listeAffichageWidget[0].setFocus(7) - QApplication.processEvents() - #print self.focusWidget() - - - def focusNextPrevChild(self, next): - # on s assure que ce n est pas un chgt de fenetre - #print "je passe dans focusNextPrevChild" - if self.editor.fenetreCentraleAffichee != self : return True - f=self.focusWidget() - - if f not in self.listeAffichageWidget : - i=0 - while not hasattr (f,'AAfficher') : - if f==None :i=-1; break - f=f.parentWidget() - if hasattr(f,'AAfficher') : f=f.AAfficher - if i != -1 : i=self.listeAffichageWidget.index(f) - else :i=self.listeAffichageWidget.index(f) - if (i==len(self.listeAffichageWidget) -1) and next and not self.inhibe: - try : - self.listeAffichageWidget[1].setFocus(7) - w=self.focusWidget() - self.inhibe=1 - w.focusPreviousChild() - self.inhibe=0 - return True - except : pass - - if i==0 and next==False and not self.inhibe: - if hasattr(self.editor.fenetreCentraleAffichee,'scrollArea'): - self.editor.fenetreCentraleAffichee.scrollArea.ensureWidgetVisible(self.listeAffichageWidget[-1]) - self.listeAffichageWidget[-2].setFocus(7) - self.inhibe=1 - w=self.focusWidget() - w.focusNextChild() - self.inhibe=0 - return True - - if i==0 and next==True and not self.inhibe: - self.listeAffichageWidget[0].setFocus(7) - self.inhibe=1 - w=self.focusWidget() - w.focusNextChild() - self.inhibe=0 - return True - - if i>0 and next==False and not self.inhibe: - if isinstance(self.listeAffichageWidget[i-1],QRadioButton): - self.listeAffichageWidget[i-1].setFocus(7) - return True - return QWidget.focusNextPrevChild(self, next) - - def etablitOrdre(self): - # si on boucle on perd l'ordre - i=0 - while(i +1 < len(self.listeAffichageWidget)): - self.setTabOrder(self.listeAffichageWidget[i],self.listeAffichageWidget[i+1]) - i=i+1 - - def afficheSuivant(self,f): - #print ('ds afficheSuivant') - try : - i=self.listeAffichageWidget.index(f) - next=i+1 - except : - next=1 - if (next==len(self.listeAffichageWidget) ): next =0 - try : - self.listeAffichageWidget[next].setFocus(7) - except : - pass - - - def afficheOptionnel(self): - # N a pas de parentQt. doit donc etre redefini - #print ('ds afficheOptionnel') - if self.editor.maConfiguration.closeOptionnel : return - if self.editor.widgetOptionnel!= None : - self.monOptionnel=self.editor.widgetOptionnel - else : - self.editor.inhibeSplitter=1 - self.monOptionnel=MonWidgetOptionnel(self.editor) - self.editor.widgetOptionnel=self.monOptionnel - self.editor.splitter.addWidget(self.monOptionnel) - self.editor.ajoutOptionnel() - self.editor.inhibeSplitter=0 - self.monOptionnel.vireTous() - - - liste,liste_rouge=self.ajouteMCOptionnelDesBlocs() - self.monOptionnel.parentCommande=self - self.monOptionnel.titre(self.obj.nom) - self.monGroupe=self.monOptionnel.afficheOptionnel(liste,liste_rouge,self) - - def setValide(self): - Groupe.setValide(self) - for bouton in self.listeBoutonAChanger: - couleur=self.node.item.getIconName() - monIcone = QIcon(self.repIcon+"/" + couleur + ".png") - bouton.setIcon(monIcone) - -class MonWidgetNiveauFactTableau(MonWidgetNiveauFact): - def __init__(self,node,editor,definition,obj): - MonWidgetNiveauFact.__init__(self,node,editor,definition,obj) diff --git a/InterfaceQT4/monWidgetOptionnel.py b/InterfaceQT4/monWidgetOptionnel.py deleted file mode 100644 index cc2360bb..00000000 --- a/InterfaceQT4/monWidgetOptionnel.py +++ /dev/null @@ -1,93 +0,0 @@ -# Copyright (C) 2007-2021 EDF R&D -# -# 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 -# -# Modules Python -# Modules Eficas - -from __future__ import absolute_import -from PyQt5.QtWidgets import QCheckBox, QWidget -from PyQt5.QtCore import Qt - -from Extensions.i18n import tr -from desWidgetOptionnel import Ui_WidgetOptionnel -from .monGroupeOptionnel import MonGroupeOptionnel - - -# Import des panels -class MonWidgetOptionnel (QWidget,Ui_WidgetOptionnel): - def __init__(self,parentQt): - #print ("dans init de monWidgetOptionnel ", parentQt ) - QWidget.__init__(self,None) - self.setupUi(self) - self.dicoMCWidgetOptionnel={} - self.parentQt=parentQt - - def afficheOptionnel(self,liste,liste_rouge,MC): - #print ('afficheOptionnel MonWidgetOptionnel',self, liste,MC.node.item.nom) - self.vireLesAutres(MC) - - if MC.node.item.nom in self.dicoMCWidgetOptionnel : - #print (MC.node.item.nom) - self.dicoMCWidgetOptionnel[MC.node.item.nom].close() - self.dicoMCWidgetOptionnel[MC.node.item.nom].setParent(None) - self.dicoMCWidgetOptionnel[MC.node.item.nom].deleteLater() - del self.dicoMCWidgetOptionnel[MC.node.item.nom] - if liste==[] : return - groupe = MonGroupeOptionnel(liste,liste_rouge,self,MC) - self.groupesOptionnelsLayout.insertWidget(0,groupe) - self.dicoMCWidgetOptionnel[MC.node.item.nom]=groupe - return groupe - - def vireLesAutres(self,MC): - #print( "je passe dans vireLesAutres") - genea =MC.obj.getGenealogie() - #print (genea) - for k in list(self.dicoMCWidgetOptionnel.keys()): - #print (k) - #if k not in genea : print ( k) - if k not in genea : - self.dicoMCWidgetOptionnel[k].close() - del self.dicoMCWidgetOptionnel[k] - #print( "fin vireLesAutres") - - def vireTous(self): - for k in list(self.dicoMCWidgetOptionnel.keys()): - self.dicoMCWidgetOptionnel[k].close() - del self.dicoMCWidgetOptionnel[k] - - def afficheOptionnelVide(self): - self.GeneaLabel.setText("") - for k in list(self.dicoMCWidgetOptionnel.keys()): - self.dicoMCWidgetOptionnel[k].close() - del self.dicoMCWidgetOptionnel[k] - - def titre(self,MC): - if self.parentCommande.node.editor.maConfiguration.closeFrameRechercheCommande==True : - self.frameLabelCommande.close() - return - labeltext,fonte,couleur = self.parentCommande.node.item.getLabelText() - l=tr(labeltext) - li=[] - while len(l) > 25: - li.append(l[0:24]) - l=l[24:] - li.append(l) - texte="" - for l in li : texte+=l+"\n" - texte=texte[0:-2] - self.GeneaLabel.setText(tr("Options pour \n") +texte) diff --git a/InterfaceQT4/monWidgetParam.py b/InterfaceQT4/monWidgetParam.py deleted file mode 100644 index 905bbe34..00000000 --- a/InterfaceQT4/monWidgetParam.py +++ /dev/null @@ -1,146 +0,0 @@ -# Copyright (C) 2007-2021 EDF R&D -# -# 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 -# -# Modules Python -# Modules Eficas - -from __future__ import absolute_import -try : - from builtins import str -except : pass - -from desWidgetParam import Ui_WidgetParam -from InterfaceQT4.gereIcones import FacultatifOuOptionnel -from PyQt5.QtWidgets import QWidget, QMessageBox -from PyQt5.QtGui import QIcon - -from Extensions.i18n import tr -from Extensions.eficas_exception import EficasException -import Accas -import os, re -import types - -pattern_name = re.compile(r'^[^\d\W]\w*\Z') - - -# Import des panels - -class MonWidgetParam(QWidget,Ui_WidgetParam,FacultatifOuOptionnel): - """ - """ - def __init__(self,node,editor,commentaire): - QWidget.__init__(self,None) - self.node=node - self.node.fenetre=self - self.setupUi(self) - self.editor=editor - self.appliEficas=self.editor.appliEficas - self.repIcon=self.appliEficas.repIcon - - self.setIconePoubelle() - if not(self.node.item.object.isValid()) : - icon=QIcon(self.repIcon+"/ast-red-ball.png") - self.RBValide.setIcon(icon) - - self.remplit() - #if self.editor.code in ['MAP','CARMELCND','CF'] : self.bCatalogue.close() - if self.editor.code in ['MAP','CARMELCND'] : self.bCatalogue.close() - else : self.bCatalogue.clicked.connect(self.afficheCatalogue) - - self.lineEditVal.returnPressed.connect(self.LEvaleurPressed) - self.lineEditNom.returnPressed.connect(self.LENomPressed) - self.bAvant.clicked.connect(self.afficheAvant) - self.bApres.clicked.connect(self.afficheApres) - self.bVerifie.clicked.connect(self.verifiePressed) - - self.editor.fermeOptionnel() - - - def afficheCatalogue(self): - self.node.tree.racine.affichePanneau() - if self.node : self.node.select() - else : self.node.tree.racine.select() - - def remplit(self): - nom=self.node.item.getNom() - self.lineEditNom.setText(nom) - - valeur=self.node.item.getValeur() - if valeur == None : - self.lineEditVal.clear() - elif type(valeur) == list : - texte="[" - for l in valeur : - texte=texte+str(l) +"," - texte=texte[0:-1]+"]" - self.lineEditVal.setText(texte) - else : - self.lineEditVal.setText(str(valeur)) - - - def donnePremier(self): - self.lineEditVal.setFocus(7) - - def LEvaleurPressed(self): - if self.verifiePressed() == False : - QMessageBox.warning( self,tr( "Modification Impossible"),tr( "le parametre n'est pas valide")) - nom=str(self.lineEditNom.text()) - val=str(self.lineEditVal.text()) - self.node.item.setNom(nom) - self.node.item.setValeur(val) - self.node.updateTexte() - - def LENomPressed(self): - self.LEvaleurPressed() - - def verifiePressed(self): - nomString=str(self.lineEditNom.text()) - if not pattern_name.match(nomString) : - self.LECommentaire.setText(nomString + tr(" n est pas un identifiant correct")) - return False - - valString=str(self.lineEditVal.text()) - - contexte={} - exec("from math import *", contexte) - jdc=self.node.item.getJdc() - for p in jdc.params : - try: - tp=p.nom+'='+str(repr(p.valeur)) - exec(tp, contexte) - except exc : - pass - - monTexte=nomString+"="+valString - try : - exec(monTexte, contexte) - except (ValueError,TypeError, NameError,RuntimeError,ZeroDivisionError) as exc: - self.LECommentaire.setText(tr("Valeur incorrecte: ")+str(exc)) - return False - except : - self.LECommentaire.setText(tr("Valeur incorrecte ")) - return False - - self.LECommentaire.setText(tr("Valeur correcte ")) - return True - - def afficheApres(self): - self.node.selectApres() - - def afficheAvant(self): - self.node.selectAvant() diff --git a/InterfaceQT4/monWidgetPlusieursASSDIntoOrdonne.py b/InterfaceQT4/monWidgetPlusieursASSDIntoOrdonne.py deleted file mode 100644 index 5bb4ab30..00000000 --- a/InterfaceQT4/monWidgetPlusieursASSDIntoOrdonne.py +++ /dev/null @@ -1,65 +0,0 @@ -# -*- coding: utf-8 -*- -# Copyright (C) 2007-2021 EDF R&D -# -# 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 -# -# Modules Python -from __future__ import absolute_import -try : - from builtins import str -except : pass - -import types,os,sys - -# Modules Eficas -from Extensions.i18n import tr -from .monWidgetPlusieursIntoOrdonne import MonWidgetPlusieursIntoOrdonne -from .politiquesValidation import PolitiquePlusieurs - -from six.moves import range -from PyQt5.QtWidgets import QScrollBar - - - -class MonWidgetPlusieursASSDIntoOrdonne (MonWidgetPlusieursIntoOrdonne): - - def __init__(self,node,monSimpDef,nom,objSimp,parentQt,commande): - self.numLineEditEnCours=0 - MonWidgetPlusieursIntoOrdonne.__init__(self,node,monSimpDef,nom,objSimp,parentQt,commande) - - - - def prepareListeResultat(self): - for i in self.listeLE: i.close() - self.listeLE=[] - self.vScrollBar = self.scrollArea.verticalScrollBar() - self.listeAAfficher = self.node.item.getSdAvantDuBonType() - - if len(self.listeAAfficher) == 0 : - self.ajoutLE(0) - return - - - if len(self.listeAAfficher)*30 > 400 : self.resize(self.width(),200) - else : self.resize(self.width(),len(self.listeAAfficher)*30) - self.politique=PolitiquePlusieurs(self.node,self.editor) - for i in range(1,len(self.listeAAfficher)+1): self.ajoutLE(i) - for i in range(len(self.listeAAfficher)): - nomLE="lineEditVal"+str(i+1) - courant=getattr(self,nomLE) - courant.setText(str(self.listeAAfficher[i])) - self.vScrollBar.triggerAction(QScrollBar.SliderToMinimum) diff --git a/InterfaceQT4/monWidgetPlusieursBase.py b/InterfaceQT4/monWidgetPlusieursBase.py deleted file mode 100644 index 882ea440..00000000 --- a/InterfaceQT4/monWidgetPlusieursBase.py +++ /dev/null @@ -1,328 +0,0 @@ -# -*- coding: utf-8 -*- -# Copyright (C) 2007-2021 EDF R&D -# -# 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 -# -# Modules Python -from __future__ import absolute_import -try : - from builtins import str - from builtins import object -except : pass - -import types,os,sys - -from six.moves import range -from PyQt5.QtGui import QIcon -from PyQt5.QtWidgets import QApplication, QMessageBox, QScrollArea -from PyQt5.QtCore import QTimer, QSize, Qt - -# Modules Eficas -from Extensions.i18n import tr - -from InterfaceQT4.feuille import Feuille -from desWidgetPlusieursBase import Ui_WidgetPlusieursBase -from InterfaceQT4.politiquesValidation import PolitiquePlusieurs -from InterfaceQT4.qtSaisie import SaisieValeur -from InterfaceQT4.gereListe import GereListe -from InterfaceQT4.gereListe import GerePlie -from InterfaceQT4.gereListe import LECustom - -dicoLongueur={2:95,3:125,4:154,5:183,6:210,float('inf'):210} -hauteurMax=253 - -class MonWidgetPlusieursBase (Ui_WidgetPlusieursBase,Feuille,GereListe,GerePlie): - - def __init__(self,node,monSimpDef,nom,objSimp,parentQt,commande): - #print "MonWidgetPlusieursBase", nom - self.inFocusOutEvent=False - self.nomLine="lineEditVal" - self.inInit=True - self.indexDernierLabel=0 - self.numLineEditEnCours=0 - self.listeAffichageWidget=[] - self.dictLE={} - Feuille.__init__(self,node,monSimpDef,nom,objSimp,parentQt,commande) - GereListe.__init__(self) - self.gereIconePlier() - self.BSelectFichier.clicked.connect(self.selectInFile) - - repIcon=self.node.editor.appliEficas.repIcon - fichier=os.path.join(repIcon, 'arrow_up.png') - icon = QIcon(fichier) - self.RBHaut.setIcon(icon) - self.RBHaut.setIconSize(QSize(32, 32)) - fichier2=os.path.join(repIcon, 'arrow_down.png') - icon2 = QIcon(fichier2) - self.RBBas.setIcon(icon2) - fichier3=os.path.join(repIcon, 'file-explorer.png') - icon3 = QIcon(fichier2) - self.BSelectFichier.setIcon(icon3) - self.BSelectFichier.setIconSize(QSize(32, 32)) - icon=QIcon(self.repIcon+"/MoinsBleu.png") - self.RBMoins.setIcon(icon) - icon=QIcon(self.repIcon+"/PlusBleu.png") - self.RBPlus.setIcon(icon) - icon=QIcon(self.repIcon+"/verre-loupe-icone-6087-64.png") - self.RBVoisListe.setIcon(icon) - - - self.listeValeursCourantes=self.node.item.getListeValeurs() - if self.monSimpDef.max != "**" and self.monSimpDef.max < 7: - hauteurMax=dicoLongueur[self.monSimpDef.max] - else : - hauteurMax=220 - # if self.monSimpDef.max == self.monSimpDef.min : self.setMaximumHeight(hauteur) - self.resize(self.width(),hauteurMax) - self.setMinimumHeight(hauteurMax) - self.finCommentaireListe() - self.parentQt.commandesLayout.insertWidget(-1,self) - self.maCommande.listeAffichageWidget.append(self.lineEditVal1) - self.AAfficher=self.lineEditVal1 - self.inInit=False - # PNPN a completer __ si tuple le type des tuples sinon le tuple - # trop moche - #self.monCommentaireLabel.setText(self.finCommentaireListe()) - self.monCommentaireLabel.setText("") - self.scrollArea.leaveEvent = self.leaveEventScrollArea - self.inhibeChangeValeur = False - self.dejaAverti = False - - - def setValeurs(self): - self.vScrollBar = self.scrollArea.verticalScrollBar() - self.politique=PolitiquePlusieurs(self.node,self.editor) - # construction du min de valeur a entrer - if self.monSimpDef.max == "**" : aConstruire=7 - elif self.monSimpDef.max == float('inf'): aConstruire=7 - else : aConstruire=self.monSimpDef.max - - for i in range(1,aConstruire): - self.ajoutLineEdit() - QApplication.processEvents() - self.scrollArea.ensureWidgetVisible(self.lineEditVal1) - self.listeValeursCourantes=self.node.item.getListeValeurs() - index=1 - for valeur in self.listeValeursCourantes : - val=self.politique.getValeurTexte(valeur) - nomLineEdit="lineEditVal"+str(index) - if hasattr(self,nomLineEdit) : - courant=getattr(self,nomLineEdit) - if 'R' in self.objSimp.definition.type and str(val) != repr(val) : courant.setText(repr(val)) - else : courant.setText(str(val)) - self.dictLE[index]=val - else : - self.ajoutLineEdit(val) - index=index+1 - # ajout d'une ligne vide ou affichage commentaire - if self.indexDernierLabel < self.monSimpDef.max : self.ajoutLineEdit() - else : self.scrollArea.setToolTip('nb max de valeurs atteint') - #self.adjustSize() - #self.vScrollBar.triggerAction(QScrollBar.SliderToMinimum) - - - def ajoutLineEdit(self,valeur=None,): - print ('ajoutLineEdit plusieursBase') - #print ('self.indexDernierLabel', self.indexDernierLabel) - self.indexDernierLabel=self.indexDernierLabel+1 - nomLineEdit="lineEditVal"+str(self.indexDernierLabel) - if hasattr(self,nomLineEdit) : - self.indexDernierLabel=self.indexDernierLabel-1 - return - nouveauLE = LECustom(self.scrollArea,self,self.indexDernierLabel) - self.verticalLayoutLE.insertWidget(self.indexDernierLabel-1,nouveauLE) - nouveauLE.setText("") - if self.indexDernierLabel % 2 == 1 : nouveauLE.setStyleSheet("background:rgb(210,210,210)") - else : nouveauLE.setStyleSheet("background:rgb(235,235,235)") - nouveauLE.setFrame(False) - nouveauLE.returnPressed.connect(self.changeValeur) - - setattr(self,nomLineEdit,nouveauLE) - self.listeAffichageWidget.append(nouveauLE) - self.etablitOrdre() - if valeur != None : - nouveauLE.setText(str(valeur)) - self.dictLE[self.indexDernierLabel] = valeur - else : - self.dictLE[self.indexDernierLabel] = None - # deux lignes pour que le ensureVisible fonctionne - self.estVisible=nouveauLE - if self.inInit==False :QTimer.singleShot(1, self.rendVisibleLigne) - - def etablitOrdre(self): - i=0 - while(i +1 < len(self.listeAffichageWidget)): - self.listeAffichageWidget[i].setFocusPolicy(Qt.StrongFocus) - self.setTabOrder(self.listeAffichageWidget[i],self.listeAffichageWidget[i+1]) - i=i+1 - # si on boucle on perd l'ordre - - - def rendVisibleLigne(self): - QApplication.processEvents() - self.estVisible.setFocus() - self.scrollArea.ensureWidgetVisible(self.estVisible,0,0) - - - def finCommentaire(self): - return self.finCommentaireListe() - - def ajout1Valeur(self,valeur=None): - print ('ajout1Valeur plusieursBase') - if valeur == None : return - liste,validite=SaisieValeur.TraiteLEValeur(self,str(valeur)) - if validite == 0 : return - if liste ==[] : return - listeVal=[] - for valeur in self.listeValeursCourantes : listeVal.append(valeur) - validite,comm,comm2,listeRetour=self.politique.ajoutValeurs(liste,-1,listeVal) - if (comm2 != "" and comm != None) : return comm2 - if validite : - self.listeValeursCourantes=self.listeValeursCourantes+listeRetour - if len(self.listeValeursCourantes) > self.monSimpDef.min : - self.node.item.setValeur(self.listeValeursCourantes) - self.reaffiche() - return None - else : - return(comm2+" "+comm) - - def reaffiche(self): - # A priori, on ne fait rien - pass - - - def ajoutNValeur(self,liste): - #print ('ajoutNValeur plusieursBase') - #---------------------------- - # attention quand on charge par un fichier, on ne peut pas se contenter d ajouter N fois 1 valeur - # car alors le temps de verification devient prohibitif reconstructu=ion et verification a - # chaque valeur. d ou l ajout de ajoutNTuple a politique plusieurs - - - listeFormatee=list(liste) - - min,max=self.node.item.getMinMax() - if self.objSimp.valeur == None : listeComplete=listeFormatee - else : listeComplete =self.objSimp.valeur + listeFormatee - - if len(listeComplete) > max : - texte=tr("Nombre maximum de valeurs ")+str(max)+tr(" atteint") - self.editor.afficheInfos(texte,Qt.red) - return - - validite,comm,comm2,listeRetour= self.politique.ajoutNTuple(listeComplete) - if not validite : - self.editor.affiche_infos(texte,Qt.red) - return - - # on calcule le dernier lineedit rempli avant de changer la valeur - if self.objSimp.valeur != None : indexDernierRempli=len(self.objSimp.valeur) - else : indexDernierRempli=0 - - self.politique.recordValeur(listeComplete) - - indexDernierRempli=0 - while ( indexDernierRempli < len(liste) ) : - texte=liste[indexDernierRempli] - if indexDernierRempli < self.indexDernierLabel: - nomLineEdit="lineEditVal"+str(indexDernierRempli+1) - courant=getattr(self,nomLineEdit) - courant.setText(str(texte)) - else : - self.ajoutLineEdit(texte) - indexDernierRempli = indexDernierRempli + 1 - - - def changeValeur(self,changeDePlace=True,oblige=False): - #print ('achangeValeur plusieursBase', self) - #import traceback - #traceback.print_stack() - if self.inhibeChangeValeur : return - self.inhibeChangeValeur = True - donneFocus=None - derniereValeur=None - self.listeValeursCourantes = [] - fin=self.indexDernierLabel - if (not('TXM' in self.objSimp.definition.type)) and not (self.dejaAverti): - for i in range (1, fin): - nomLineEdit="lineEditVal"+str(i) - courant=getattr(self,nomLineEdit) - valeur=courant.text() - lval=valeur.split(',') - if len (lval) > 1 : - self.dejaAverti = True - QMessageBox.warning(self,tr('"," used'), 'Perhaps, character "," is used in ' +str( valeur) + 'intead of "."') - break - # msgBox = QMessageBox() - # msgBox.setText("separator ',' ") - # msgBox.setInformativeText("Do you want to enter " + str (lval) + "?") - # msgBox.setInformativeText (" you want to enter " + str (lval) + "?") - # msgBox.setStandardButtons( QMessageBox.Ok | QMessageBox.Cancel) - # msgBox.setDefaultButton(QMessageBox.Ok) - #ret = msgBox.exec() - # tres dicutable 20210401 j enleve la boucle - # if faut remtrre self.inhibeChangeValeur si on la reactive - # if ret == 1024: - # courant.setText(lval[0]) - # self.ajoutNValeur(lval[1:]) - # self.listeValeursCourantes = [] - - - for i in range (1, self.indexDernierLabel+1): - nomLineEdit="lineEditVal"+str(i) - courant=getattr(self,nomLineEdit) - valeur=courant.text() - if valeur != None and valeur != "" : - commentaire=self.ajout1Valeur(valeur) - if (commentaire != None ): - self.editor.afficheInfos(commentaire,Qt.red) - courant.setText("") - donneFocus=courant - self.reaffiche() - return - else : - self.editor.afficheInfos("") - elif donneFocus==None : donneFocus=courant - - nomDernierLineEdit="lineEditVal"+str(self.indexDernierLabel) - dernier=getattr(self,nomDernierLineEdit) - derniereValeur=dernier.text() - if changeDePlace: - if donneFocus != None : - donneFocus.setFocus() - self.scrollArea.ensureWidgetVisible(donneFocus) - elif self.indexDernierLabel < self.monSimpDef.max : - self.ajoutLineEdit() - if self.listeValeursCourantes == [] : return - min,max = self.node.item.getMinMax() - if len(self.listeValeursCourantes) < self.monSimpDef.min : - self.editor.afficheInfos(tr('nb min de valeurs : ')+str( self.monSimpDef.min)) - if len(self.listeValeursCourantes) < min and oblige==True: return - if len(self.listeValeursCourantes) > max : return - retour=self.node.item.setValeur(self.listeValeursCourantes) - if len(self.listeValeursCourantes) == self.monSimpDef.max : - self.editor.afficheInfos(tr('nb max de valeurs atteint')) - self.setValide() - self.reaffiche() - self.inhibeChangeValeur = False - - def leaveEventScrollArea(self,event): - #print ('achangeValeur plusieursBase') - self.changeValeur(changeDePlace=False) - QScrollArea.leaveEvent(self.scrollArea,event) - -# Avertissement quand on quitte le widget diff --git a/InterfaceQT4/monWidgetPlusieursCreeUserAssd.py b/InterfaceQT4/monWidgetPlusieursCreeUserAssd.py deleted file mode 100644 index 056cf3e5..00000000 --- a/InterfaceQT4/monWidgetPlusieursCreeUserAssd.py +++ /dev/null @@ -1,184 +0,0 @@ -# -*- coding: utf-8 -*- -# Copyright (C) 2007-2020 EDF R&D -# -# 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 -# -# Modules Python -from __future__ import absolute_import -import types,os - - -# Modules Eficas -from Extensions.i18n import tr -from .monWidgetSimpTxt import MonWidgetSimpTxt -from .monWidgetPlusieursBase import MonWidgetPlusieursBase -from copy import copy,deepcopy -from PyQt5.QtCore import Qt - - - -class MonWidgetPlusieursCreeUserAssd ( MonWidgetPlusieursBase): - def __init__(self,node,monSimpDef,nom,objSimp,parentQt,commande): - MonWidgetPlusieursBase. __init__(self,node,monSimpDef,nom,objSimp,parentQt,commande) - self.etablitOrdre() - self.scrollArea.leaveEvent = self.leaveEventScrollArea - self.RBHaut.close() - self.RBBas.close() - - def ajout1Valeur(self,valeur=None): - if not valeur in list(self.dictValeurs.keys()): - validite,commentaire=self.objSimp.creeUserASSDetSetValeur(valeur) - MonWidgetPlusieursBase.ajout1Valeur(self,valeur) - - def changeValeur(self,changeDePlace=False,oblige=False ): - #print ('dans changeValeur du CreeUserAssd', changeDePlace, self.numLineEditEnCours) - #import traceback - #traceback.print_stack() - self.changeUnLineEdit=False - valeur = self.lineEditEnCours.text() - if self.numLineEditEnCours in list(self.dictLE.keys()) : - oldValeurUserAssd = self.dictLE[self.numLineEditEnCours] - if oldValeurUserAssd == None or oldValeurUserAssd == "" : - enCreation = True - oldValeurUserAssd == True - else : enCreation = False - else : - enCreation = True - oldValeurUserAssd = None - - if oldValeurUserAssd and oldValeurUserAssd.nom == valeur : - self.selectionneNext() - return - - if valeur != "" : - if not enCreation : - validite, commentaire=self.node.item.renommeSdCreeDsListe(oldValeurUserAssd,valeur) - if commentaire != "" and not validite: - self.editor.afficheInfos(commentaire,Qt.red) - self.lineEditEnCours.setText(oldValeurUserAssd.nom) - nomDernierLineEdit="lineEditVal"+str(self.numLineEditEnCours+1) - dernier=getattr(self,nomDernierLineEdit) - dernier.setFocus() - return - - validite, objASSD, commentaire=self.objSimp.creeUserASSD(valeur) - if commentaire != "" and not validite: - self.editor.afficheInfos(commentaire,Qt.red) - self.lineEditEnCours.setText("") - if objASSD : objASSD.supprime(self.objSimp) - return - else: - validite = 1 - objASSD=None - commentaire = "" - - # on relit tout pour tenir compte des lignes blanches - oldValeur=self.objSimp.valeur - liste=[] - for i in range (1, self.indexDernierLabel+1): - if i == self.numLineEditEnCours and objASSD : liste.append(objASSD) - elif self.dictLE[i] != None and self.dictLE[i] != "" : liste.append(self.dictLE[i]) - validite=self.node.item.setValeur(liste) - if not validite : - self.objSimp.valeur=oldValeur - self.objSimp.state='changed' - self.setValide() - if objASSD : objASSD.supprime(self.objSimp) - self.lineEditEnCours.setText(oldValeurUserASSD.nom) - return - - validite=self.node.item.isValid() - if validite : - self.dictLE[self.numLineEditEnCours] = objASSD - self.node.item.rattacheUserASSD(objASSD) - if self.indexDernierLabel < len(liste) : self.ajoutLineEdit() - nomDernierLineEdit="lineEditVal"+str(self.numLineEditEnCours+1) - self.listeValeursCourantes=liste - dernier=getattr(self,nomDernierLineEdit) - dernier.setFocus() - else : - self.editor.afficheInfos('ajout impossible' ,Qt.red) - if objASSD : objASSD.supprime(self.objSimp) - self.lineEditEnCours.setText("") - self.parentQt.propageChange(self.objSimp.definition.type[0],self) - - def selectionneDernier(self): - index=len(self.listeValeursCourantes) - self.listeAffichageWidget[index].setFocus() - - def leaveEventScrollArea(self,event): - pass - -# def echangeDeuxValeurs(self): -# self.changeUnLineEdit=False -# obj1=self.dictLE[self.num1] -# obj2=self.dictLE[self.num2] -# self.dictLE[self.num1]=obj2 -# self.dictLE[self.num2]=obj1 -# nomLineEdit=self.nomLine+str(self.num1) -# courant=getattr(self,nomLineEdit) -# if self.dictLE[self.num1] != None : courant.setText(self.dictLE[self.num1].nom) -# else : courant.setText("") -# nomLineEdit=self.nomLine+str(self.num2) -# courant=getattr(self,nomLineEdit) -# if self.dictLE[self.num2] != None : courant.setText(self.dictLE[self.num2].nom) -# else : courant.setText("") -# liste=[] -# for i in list(self.dictLE.keys()): -# if self.dictLE[i] != None and self.dictLE[i] != "" : liste.append(self.dictLE[i]) -# validite=self.node.item.setValeur(liste) -# self.listeValeursCourantes=liste -# courant.setFocus(True) - - def descendLesLignes(self): - self.changeUnLineEdit=False - if self.numLineEditEnCours==self.indexDernierLabel : return - nouvelleValeur=None - for i in range (self.numLineEditEnCours+1, self.indexDernierLabel): - valeurAGarder=self.dictLE[i] - self.dictLE[i]=nouvelleValeur - nomLineEdit=self.nomLine+str(i) - courant=getattr(self,nomLineEdit) - if nouvelleValeur != None : courant.setText(nouvelleValeur.nom) - else : courant.setText("") - nouvelleValeur=valeurAGarder - - - def moinsPushed(self): - if self.numLineEditEnCours == 0 : return - if self.indexDernierLabel == 0 : return - objASSD=self.dictLE[self.numLineEditEnCours] - if objASSD : objASSD.supprime(self.objSimp) - self.lineEditEnCours.setText("") - self.dictLE[self.numLineEditEnCours]=None - - for i in range (self.numLineEditEnCours, self.indexDernierLabel-1): - self.dictLE[i]= self.dictLE[i+1] - nomLineEdit=self.nomLine+str(i) - courant=getattr(self,nomLineEdit) - if self.dictLE[i] != None : courant.setText(self.dictLE[i].nom) - else : courant.setText("") - nomLineEdit=self.nomLine+str(self.indexDernierLabel) - courant=getattr(self,nomLineEdit) - courant.setText("") - self.dictLE[self.indexDernierLabel]=None - liste=[] - for i in list(self.dictLE.keys()): - if self.dictLE[i] != None and self.dictLE[i] != "" : liste.append(self.dictLE[i]) - print (liste) - validite=self.node.item.setValeur(liste) - self.listeValeursCourantes=liste diff --git a/InterfaceQT4/monWidgetPlusieursInto.py b/InterfaceQT4/monWidgetPlusieursInto.py deleted file mode 100644 index 5aedcafa..00000000 --- a/InterfaceQT4/monWidgetPlusieursInto.py +++ /dev/null @@ -1,266 +0,0 @@ -# -*- coding: utf-8 -*- -# Copyright (C) 2007-2021 EDF R&D -# -# 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 -# -# Modules Python -from __future__ import absolute_import -try : - from builtins import str - from builtins import range -except : pass - -import types,os - -# Modules Eficas -from PyQt5.QtWidgets import QCheckBox, QScrollBar, QFrame, QApplication, QLabel -from PyQt5.QtWidgets import QSizePolicy,QSpacerItem -from PyQt5.QtGui import QPalette, QFont -from PyQt5.QtCore import Qt - -from Extensions.i18n import tr - -from InterfaceQT4.feuille import Feuille -from desWidgetPlusieursInto import Ui_WidgetPlusieursInto -from InterfaceQT4.politiquesValidation import PolitiquePlusieurs -from InterfaceQT4.qtSaisie import SaisieValeur -from InterfaceQT4.gereListe import GerePlie -from InterfaceQT4.gereListe import GereListe - -class MonWidgetPlusieursInto (Ui_WidgetPlusieursInto,Feuille,GerePlie,GereListe): - - def __init__(self,node,monSimpDef,nom,objSimp,parentQt,commande): - - self.index=1 - self.alpha=0 - self.listeCB=[] - self.listeCbRouge=[] - self.listeValeursCourantes=node.item.getListeValeurs() - if self.listeValeursCourantes == None : self.listeValeursCourantes=[] - - Feuille.__init__(self,node,monSimpDef,nom,objSimp,parentQt,commande) - GereListe.__init__(self) - - self.parentQt.commandesLayout.insertWidget(-1,self) - self.CBCheck.stateChanged.connect(self.changeTout) - - self.gereIconePlier() - self.editor.listeDesListesOuvertes.add(self.node.item) - self.inhibe=False - #self.finCommentaireListe() - - if self.listeAAfficher== None or self.listeAAfficher==[] : - spacerItem = QSpacerItem(30, 20, QSizePolicy.Fixed, QSizePolicy.Minimum) - self.CBLayout.addItem(spacerItem) - nouveauCommentaire=QLabel() - maPolice= QFont("Times", 16) - nouveauCommentaire.setFont(maPolice); - nouveauCommentaire.setText(tr('Pas de valeurs possibles')) - self.CBLayout.addWidget(nouveauCommentaire) - spacerItem2 = QSpacerItem(40, 70, QSizePolicy.Fixed, QSizePolicy.Minimum) - self.CBLayout.addItem(spacerItem2) - - if len(self.listeAAfficher) < 30 and hasattr(self,'frameRecherche') : self.frameRecherche.close() - if len(self.listeAAfficher) == len(self.listeValeursCourantes) : self.CBCheck.setChecked(True) - if len(self.listeAAfficher) < 10 : - self.setMinimumHeight(len(self.listeAAfficher)*22+55) - else : - self.setMinimumHeight(300) - - # try except si la liste des possibles est vide - # prevoir qqchose - try : - self.maCommande.listeAffichageWidget.append(self.lineEditVal1) - except : - pass - - - def changeTout(self,int): - #print ('changeTout') - if self.inhibe : return - self.inhibe=True - if not(self.CBCheck.isChecked()) : - min,max = self.node.item.getMinMax() - if max < len(self.listeAAfficher) : - commentaire=tr('impossible de tout selectionner : max =')+str(max) - self.editor.afficheInfos(commentaire,Qt.red) - self.inhibe=False - return - for i in range(len(self.listeAAfficher)): - nomCB="lineEditVal"+str(i+1) - courant=getattr(self,nomCB) - courant.setChecked(True) - self.CBCheck.setChecked(False) - else : - for i in range(len(self.listeAAfficher)): - nomCB="lineEditVal"+str(i+1) - courant=getattr(self,nomCB) - courant.setChecked(False) - self.CBCheck.setChecked(True) - self.inhibe=False - self.changeValeur() - - def setValeurs(self): - #print ('setValeurs') - self.listeValeursCourantes =self.node.item.getValeur() - if self.listeValeursCourantes == None : self.listeValeursCourantes=[] - #print ("ds set Valeur", self.listeValeursCourantes, self.node.item.getValeur()) - self.politique=PolitiquePlusieurs(self.node,self.editor) - self.vScrollBar = self.scrollArea.verticalScrollBar() - - if hasattr(self.node.item.definition.validators,'set_MCSimp'): - obj=self.node.item.getObject() - self.node.item.definition.validators.set_MCSimp(obj) - if self.node.item.isValid() == 0 : - liste=[] - for item in self.listeValeursCourantes: - if self.node.item.definition.validators.verifItem(item)==1: - liste.append(item) - self.listeAAfficher=self.node.item.getListePossible(liste) - else: - self.listeAAfficher=self.node.item.getListePossible([]) - else : - self.listeAAfficher=self.node.item.getListePossible([]) - - if self.node.item.hasIntoSug() : self.listeAAfficher=self.node.item.getListePossibleAvecSug([]) - - - if self.objSimp.waitAssd() : - self.listeAAfficher=self.node.item.getSdAvantDuBonType() - if self.listeAAfficher== None or self.listeAAfficher==[] : self.listeAAfficher=[] - - #if len(self.listeAAfficher)*20 > 400 : self.setMinimumHeight(400) - #else : self.setMinimumHeight(len(self.listeAAfficher)*30) - - self.PourEtreCoche=[] - if self.objSimp.waitUserAssd() : - for concept in self.listeValeursCourantes: self.PourEtreCoche.append(concept) - elif self.objSimp.waitAssd() : - for concept in self.listeValeursCourantes: self.PourEtreCoche.append(concept.nom) - else : - for val in self.listeValeursCourantes: self.PourEtreCoche.append(val) - - maListe=[] - for i in self.listeAAfficher: maListe.append(i) - if self.alpha==1 : maListe.sort() - for i in range(1,len(maListe)+1): self.ajoutCB(i) - - self.inhibe=True - for i in range(len(maListe)): - nomCB="lineEditVal"+str(i+1) - courant=getattr(self,nomCB) - courant.setText(str(maListe[i])) - if maListe[i] in self.PourEtreCoche : courant.setChecked(True) - else : courant.setChecked(False) - - courant.toggled.connect(self.changeValeur) - self.inhibe=False - - self.vScrollBar.triggerAction(QScrollBar.SliderToMinimum) - - - def ajoutCB(self,index,valeur=None): - #print ('ajoutCB') - nomCB="lineEditVal"+str(index) - if hasattr(self,nomCB) : return - nouveauCB = QCheckBox(self.scrollArea) - self.CBLayout.insertWidget(index-1,nouveauCB) - self.listeCB.append(nouveauCB) - nouveauCB.setText("") - if index % 2 == 1 : nouveauCB.setStyleSheet("background:rgb(210,210,210)") - else : nouveauCB.setStyleSheet("background:rgb(240,240,240)") - self.vScrollBar.triggerAction(QScrollBar.SliderToMaximum) - nouveauCB.setFocus() - setattr(self,nomCB,nouveauCB) - - - - def ajout1Valeur(self,valeur=None): - #print ('ajout1Valeur') - if valeur == None : return - liste,validite=SaisieValeur.TraiteLEValeur(self,str(valeur)) - if validite == 0 : return - if liste ==[] : return - listeVal=[] - for valeur in self.listeValeursCourantes : listeVal.append(valeur) - validite,comm,comm2,listeRetour=self.politique.ajoutValeurs(liste,-1,listeVal) - if (comm2 != "" and comm != None) : return comm2 - if validite : - self.listeValeursCourantes=self.listeValeursCourantes+listeRetour - return None - else : - return(comm2+" "+comm) - - - - def changeValeur(self): - #def changeValeur(self,changeDePlace=False,oblige=True, numero=None): - #print ('changeValeur') - if self.inhibe == True: return - if hasattr(self,'LEFiltre') :self.noircirResultatFiltre() - self.listeValeursCourantesAvant=self.listeValeursCourantes - self.listeValeursCourantes = [] - - for i in range (1,len(self.listeAAfficher)+1): - nomLineEdit="lineEditVal"+str(i) - courant=getattr(self,nomLineEdit) - if not (courant.isChecked()):continue - valeur=courant.text() - if valeur != None and valeur != "" : - commentaire=self.ajout1Valeur(valeur) - if (commentaire != None ): - self.editor.afficheInfos(commentaire,Qt.red) - self.listeValeursCourantesAvant=self.listeValeursCourantes - self.setValeurs() - - min,max = self.node.item.getMinMax() - if len(self.listeValeursCourantes) < min : - self.editor.afficheInfos(tr("Nombre minimal de valeurs : ") + str(min),Qt.red) - elif len(self.listeValeursCourantes) > max : - self.editor.afficheInfos(tr("Nombre maximal de valeurs : ") + str(max),Qt.red) - - if self.listeValeursCourantes== [] : self.node.item.setValeur([]) - else : self.node.item.setValeur(self.listeValeursCourantes) - - # Exception pour PSEN - if min==0 and self.listeValeursCourantes== []: self.node.item.setValeur([]) - self.setValide() - self.reaffiche() - - - def prepareListeResultatFiltre(self): - #print ('prepareListeResultatFiltre') - filtre=str(self.LEFiltre.text()) - for cb in self.listeCB: - texte=cb.text() - if texte.find(filtre) == 0 : - palette = QPalette(Qt.red) - palette.setColor(QPalette.WindowText,Qt.red) - cb.setPalette(palette) - t=cb.text() - cb.setText(t) - self.listeCbRouge.append(cb) - - def prepareListeResultat(self): - #print ('prepareListeResultat') - self.clearAll() - self.setValeurs() - - def clearAll(self): - #print ('clearAll') - for cb in self.listeCB : - cb.setText("") diff --git a/InterfaceQT4/monWidgetPlusieursIntoOrdonne.py b/InterfaceQT4/monWidgetPlusieursIntoOrdonne.py deleted file mode 100644 index 5012faaf..00000000 --- a/InterfaceQT4/monWidgetPlusieursIntoOrdonne.py +++ /dev/null @@ -1,306 +0,0 @@ -# -*- coding: utf-8 -*- -# Copyright (C) 2007-2021 EDF R&D -# -# 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 -# -# Modules Python -from __future__ import absolute_import -try : - from builtins import str - from builtins import range -except : pass - -import types,os,sys -import traceback - -# Modules Eficas -from .feuille import Feuille -from desWidgetPlusieursIntoOrdonne import Ui_WidgetPlusieursIntoOrdonne -from .politiquesValidation import PolitiquePlusieurs -from .qtSaisie import SaisieValeur -from .gereListe import GereListe -from .gereListe import GerePlie -from .gereListe import LECustom -from .gereListe import MonLabelListeClic -from Extensions.i18n import tr - -from PyQt5.QtWidgets import QFrame, QApplication, QScrollBar -from PyQt5.QtCore import QTimer, QSize, Qt -from PyQt5.QtGui import QIcon, QPalette - - -class MonWidgetPlusieursIntoOrdonne (Ui_WidgetPlusieursIntoOrdonne, Feuille,GereListe,GerePlie): - - def __init__(self,node,monSimpDef,nom,objSimp,parent,commande): - self.nomLine="LEResultat" - self.listeLE=[] - self.ouAjouter=0 - self.numLineEditEnCours=0 - self.alpha=0 - self.filtre="" - Feuille.__init__(self,node,monSimpDef,nom,objSimp,parent,commande) - GereListe.__init__(self) - #self.finCommentaireListe() - self.gereIconePlier() - self.listeValeursCourantes=self.node.item.getListeValeurs() - try : - self.maCommande.listeAffichageWidget.append(self.lineEditVal1) - except : - # cas ou on ne peut rien ajouter - pass - self.prepareListeResultat() - if len(self.listeAAfficher) < 20 : self.frameRecherche2.close() - if len(self.listeAAfficher) < 20 : self.frameRecherche.close() - self.adjustSize() - #if sys.platform[0:5]!="linux": - repIcon=self.node.editor.appliEficas.repIcon - fichier=os.path.join(repIcon, 'arrow_up.png') - icon = QIcon(fichier) - self.RBHaut.setIcon(icon) - self.RBHaut.setIconSize(QSize(32, 32)) - fichier2=os.path.join(repIcon, 'arrow_down.png') - icon2 = QIcon(fichier2) - self.RBBas.setIcon(icon2) - icon=QIcon(self.repIcon+"/MoinsBleu.png") - self.RBMoins.setIcon(icon) - icon=QIcon(self.repIcon+"/PlusBleu.png") - self.RBPlus.setIcon(icon) - icon=QIcon(self.repIcon+"/verre-loupe-icone-6087-64.png") - self.RBVoisListe.setIcon(icon) - - self.PBClean.clicked.connect(self.cleanListeResultatFiltre) - self.parentQt.commandesLayout.insertWidget(-1,self) - self.listeRouge=[] - - - def prepareListeResultat(self): - for i in self.listeLE: i.close() - self.listeLE=[] - self.vScrollBar = self.scrollArea.verticalScrollBar() - self.listeValeursCourantes=self.node.item.getListeValeurs() - if hasattr(self.node.item.definition.validators,'set_MCSimp'): - obj=self.node.item.getObject() - self.node.item.definition.validators.set_MCSimp(obj) - if self.node.item.isValid() == 0 : - liste=[] - for item in self.listeValeursCourantes: - if self.node.item.definition.validators.verifItem(item)==1: liste.append(item) - self.listeAAfficher=self.node.item.getListePossible(liste) - else: - self.listeAAfficher=self.node.item.getListePossible([]) - else : - self.listeAAfficher=self.node.item.getListePossible(self.listeValeursCourantes) - - if self.listeAAfficher==[] : - self.ajoutLE(0) - return - self.filtreListe() - if len(self.listeAAfficher)*20 > 400 : self.setMinimumHeight(400) - else : - if self.monSimpDef.min > len(self.listeAAfficher) : self.setMinimumHeight(self.monSimpDef.min*30+300) - elif self.monSimpDef.max > len(self.listeAAfficher) : self.setMinimumHeight(400) - else : self.setMinimumHeight(len(self.listeAAfficher)*30+30) - self.setMinimumHeight(300) - self.adjustSize() - - self.politique=PolitiquePlusieurs(self.node,self.editor) - for i in range(1,len(self.listeAAfficher)+1): self.ajoutLE(i) - for i in range(len(self.listeAAfficher)): - nomLE="lineEditVal"+str(i+1) - courant=getattr(self,nomLE) - courant.setText(str(self.listeAAfficher[i])) - self.vScrollBar.triggerAction(QScrollBar.SliderToMinimum) - if len(self.listeAAfficher) < 15 and hasattr(self,'frameRecherche') : self.frameRecherche.close() - if len(self.listeAAfficher) < 15 and hasattr(self,'frameRecherche2') : self.frameRecherche2.close() - - - def setValeurs(self,first=True): - self.listeValeursCourantes=self.node.item.getListeValeurs() - if first : - if self.monSimpDef.max == "**" or self.monSimpDef.max == float('inf') : aConstruire=7 - else : aConstruire=self.monSimpDef.max - if len(self.listeValeursCourantes) > aConstruire : aConstruire=len(self.listeValeursCourantes) - self.indexDernierLabel = aConstruire - for i in range(1,aConstruire+1): self.ajoutLEResultat(i) - index=1 - for val in self.listeValeursCourantes : - nomLE="LEResultat"+str(index) - courant=getattr(self,nomLE) - courant.setText(str(val)) - courant.setReadOnly(True) - index=index+1 - while (index < self.indexDernierLabel) : - nomLE="LEResultat"+str(index) - courant=getattr(self,nomLE) - courant.setText("") - courant.setReadOnly(True) - index=index+1 - #self.prepareListeResultat() - - def moinsPushed(self): - self.ouAjouter=self.ouAjouter-1 - GereListe.moinsPushed(self) - self.setValeurs(first=False) - - def prepareListeResultatFiltre(self): - for i in self.listeRouge : - nomLE="lineEditVal"+str(i+1) - courant=getattr(self,nomLE) - texte=courant.text() - palette = QPalette(Qt.black) - palette.setColor(QPalette.WindowText,Qt.black) - courant.setPalette(palette) - courant.setText(texte) - - self.listeRouge = [] - filtre=str(self.LEFiltre.text()) - if filtre == '' : return - for i in range(len(self.listeAAfficher)): - nomLE="lineEditVal"+str(i+1) - courant=getattr(self,nomLE) - texte=courant.text() - if texte.find(filtre) == 0 : - palette = QPalette(Qt.red) - palette.setColor(QPalette.WindowText,Qt.red) - courant.setPalette(palette) - courant.setText(texte) - self.listeRouge.append(i) - - def cleanListeResultatFiltre(self): - self.LEFiltre.setText('') - self.prepareListeResultatFiltre() - - def ajoutLEResultat (self,index,valeur=None): - #print ('ajoutLEResultat', index, valeur) - nomLE="LEResultat"+str(index) - if not (hasattr(self,nomLE)) : - nouveauLE = LECustom(self.scrollAreaRE,self,index) - nouveauLE.setFrame(False) - self.CBChoisis.insertWidget(self.ouAjouter,nouveauLE) - self.ouAjouter=self.ouAjouter+1 - nouveauLE.setReadOnly(True) - if index % 2 == 1 : nouveauLE.setStyleSheet("background:rgb(210,210,210)") - else : nouveauLE.setStyleSheet("background:rgb(240,240,240)") - self.vScrollBarRE = self.scrollAreaRE.verticalScrollBar() - self.vScrollBarRE.triggerAction(QScrollBar.SliderToMaximum) - setattr(self,nomLE,nouveauLE) - self.estVisibleRE=nouveauLE - else : - nouveauLE=getattr(self,nomLE) - - if valeur == None : nouveauLE.setText("") - else : nouveauLE.setText(str(valeur)) - - def ajoutLE(self,index,valeur=None): - #print ('ajoutLE') - nomLE="lineEditVal"+str(index) - nouveauLE = MonLabelListeClic(self) - #self.CBLayout.addWidget(nouveauLE) - self.CBLayout.insertWidget(index -1,nouveauLE) - self.listeLE.append(nouveauLE) - nouveauLE.setFrameShape(QFrame.NoFrame) - QApplication.processEvents() - nouveauLE.setText("") - if index % 2 == 1 : nouveauLE.setStyleSheet("background:rgb(210,210,210)") - else : nouveauLE.setStyleSheet("background:rgb(240,240,240)") - self.vScrollBar.triggerAction(QScrollBar.SliderToMaximum) - nouveauLE.setFocus() - setattr(self,nomLE,nouveauLE) - - def ajoutLineEdit(self): - #print ('ajoutLineEdit') - self.indexDernierLabel=self.indexDernierLabel+1 - self.ajoutLEResultat (self.indexDernierLabel) - - - def traiteClicSurLabelListe(self,valeur): - if valeur == None : return - liste,validite=SaisieValeur.TraiteLEValeur(self,str(valeur)) - if validite == 0 : return - if liste ==[] : return - listeVal=[] - - self.listeValeursCourantes=self.node.item.getListeValeurs() - min,max = self.node.item.getMinMax() - if len(self.listeValeursCourantes) +1 > max : - self.editor.afficheInfos(tr("Nombre maximal de valeurs : ") + str(max),Qt.red) - return - else : - self.editor.afficheInfos("") - - affiche=False - for i in range(1,self.indexDernierLabel+1): - nomLE="LEResultat"+str(i) - courant=getattr(self,nomLE) - if str(courant.text())==str("") : - courant.setText(valeur) - courant.setReadOnly(True) - affiche=True - self.estVisibleRE=courant - QTimer.singleShot(1, self.rendVisibleLigneRE) - break - - if affiche == False: - self.indexDernierLabel = self.indexDernierLabel+1 - self.ajoutLEResultat (self.indexDernierLabel,str(valeur)) - self.vScrollBarRE.triggerAction(QScrollBar.SliderToMaximum) - QTimer.singleShot(1, self.rendVisibleLigneRE) - self.changeValeur() - self.setValeurs(first=False) - - def changeValeur(self,changeDePlace=False,oblige=False): -#def changeValeur(self,changeDePlace=False,oblige=False, numero=None): -#PN les 2 arg sont pour que la signature de ma fonction soit identique a monWidgetPlusieursBase - print ('changeValeur de objet') - listeVal=[] - for i in range(1,self.indexDernierLabel+1): - nomLE="LEResultat"+str(i) - courant=getattr(self,nomLE) - valeur=courant.text() - if str(valeur)=="" : continue - liste,validite=SaisieValeur.TraiteLEValeur(self,str(valeur)) - listeVal.append(str(valeur)) - - validite,comm,comm2,listeRetour=self.politique.ajoutValeurs(listeVal,-1,[]) - - - self.listeValeursCourantes=self.node.item.getListeValeurs() - min,max = self.node.item.getMinMax() - if len(self.listeValeursCourantes) < min : - self.editor.afficheInfos(tr("Nombre minimal de valeurs : ") + str(min),Qt.red) - else : - self.editor.afficheInfos("") - - if len(listeRetour) == 0 : - self.node.item.setValeur(None) - elif validite : - self.node.item.setValeur(listeRetour) - else : - commentaire=comm+" "+comm2 - self.editor.afficheInfos(commentaire,Qt.red) - self.setValide() - self.reaffiche() - print ('changeValeur de objet') -# - def rendVisibleLigneRE(self): - QApplication.processEvents() - self.estVisibleRE.setFocus() - self.scrollArea.ensureWidgetVisible(self.estVisibleRE,0,0) -# - def rendVisibleLigne(self): - self.estVisibleRE=self.estVisible - #rendVisibleLigneRE() diff --git a/InterfaceQT4/monWidgetPlusieursPlie.py b/InterfaceQT4/monWidgetPlusieursPlie.py deleted file mode 100644 index 424f5055..00000000 --- a/InterfaceQT4/monWidgetPlusieursPlie.py +++ /dev/null @@ -1,122 +0,0 @@ -# -*- coding: utf-8 -*- -# Copyright (C) 2007-2021 EDF R&D -# -# 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 -# -# Modules Python -from __future__ import absolute_import -try : - from builtins import str -except : pass - -import types,os,sys,re - -from PyQt5.QtWidgets import QFrame -from PyQt5.QtCore import QTimer, QSize, Qt -from PyQt5.QtGui import QIcon, QBrush, QColor - -from Extensions.i18n import tr - -from .feuille import Feuille -from desWidgetPlusieursPlie import Ui_WidgetPlusieursPlie - -from .politiquesValidation import PolitiquePlusieurs -from .qtSaisie import SaisieValeur - -pattern_blanc = re.compile(r"^\s*$") - - -class MonWidgetPlusieursPlie (Ui_WidgetPlusieursPlie,Feuille): - - def __init__(self,node,monSimpDef,nom,objSimp,parentQt,commande): - #print ("MonWidgetPlusieursBase", nom) - Feuille.__init__(self,node,monSimpDef,nom,objSimp,parentQt,commande) - self.parentQt.commandesLayout.insertWidget(-1,self) - self.AAfficher=self.lineEditVal - self.maCommande.listeAffichageWidget.append(self.lineEditVal) - if self.node.item.hasInto() : - self.lineEditVal.setReadOnly(True) - self.lineEditVal.setStyleSheet("background:rgb(235,235,235);\n") - self.lineEditVal.setToolTip("Ensemble discret de valeurs possibles, pas de Saisie Manuelle") - #self.lineEditVal.setPen(QtGui.QColor(0,0,200)) - #b=QBrush(Qt.DiagCrossPattern) - #b.setColor(QColor(255,100,0)) - #self.lineEditVal.setBrush(b) - else : - self.lineEditVal.returnPressed.connect(self.valeurEntree) - self.BVisuListe.clicked.connect(self.selectWidgetDeplie) - - - def setValeurs(self): - self.listeValeursCourantes=self.node.item.getListeValeurs() - if self.listeValeursCourantes != [] : self.lineEditVal.setText(str(self.listeValeursCourantes)) - else : self.lineEditVal.setText("") - self.politique=PolitiquePlusieurs(self.node,self.editor) - return - - def selectWidgetDeplie(self): - self.editor.listeDesListesOuvertes.add(self.node.item) - self.reaffichePourDeplier() - - def valeurEntree(self): - valeurTexte=self.lineEditVal.text() - #print (valeurTexte[0]) - #print (valeurTexte[-1]) - if valeurTexte[0] == '[' or valeurTexte[0] == '(' : valeurTexte = valeurTexte[1:] - if valeurTexte[-1] == ']' or valeurTexte[-1] == ')' : valeurTexte = valeurTexte[:-1] - #print (valeurTexte) - listeValeursBrutes=valeurTexte.split(',') - if listeValeursBrutes == [] or listeValeursBrutes == None : - self.lineEditVal.setText(str(self.listeValeursCourantes)) - return - listeValeur=[] - for v in listeValeursBrutes: - if v == None or pattern_blanc.match(v) : - self.editor.afficheInfos(str(listeValeur)+' Valeurs saisies incorrectes',Qt.red) - return - liste,validite=SaisieValeur.TraiteLEValeur(self,str(v)) - if not validite : - self.editor.afficheInfos(str(listeValeur) +' Valeurs saisies incorrectes',Qt.red) - return - listeValeur.append(liste[0]) - validite,comm,comm2,listeRetour=self.politique.ajoutValeurs(listeValeur,-1,[]) - if validite : - self.node.item.setValeur(listeValeur) - self.node.item.isValid() - self.setValeurs() - else : - self.editor.afficheInfos(str(listeValeur) + ' ' +comm,Qt.red) - self.lineEditVal.setText('') - -class MonWidgetPlusieursPlieASSD (MonWidgetPlusieursPlie): - - def __init__(self,node,monSimpDef,nom,objSimp,parentQt,commande): - MonWidgetPlusieursPlie.__init__(self,node,monSimpDef,nom,objSimp,parentQt,commande) - self.lineEditVal.setReadOnly(True) - - def setValeurs(self): - self.listeValeursCourantes=self.node.item.getListeValeurs() - self.politique=PolitiquePlusieurs(self.node,self.editor) - if self.listeValeursCourantes == [] : self.lineEditVal.setText(""); return - txt="[" - for elt in self.listeValeursCourantes : - txt= txt+ (str(elt)) + "," - txt= txt + "]" - self.lineEditVal.setText(txt) - - def valeurEntree(self): - pass diff --git a/InterfaceQT4/monWidgetPlusieursTuple.py b/InterfaceQT4/monWidgetPlusieursTuple.py deleted file mode 100644 index 7a7ffd3f..00000000 --- a/InterfaceQT4/monWidgetPlusieursTuple.py +++ /dev/null @@ -1,545 +0,0 @@ -# -*- coding: utf-8 -*- -# Copyright (C) 2007-2021 EDF R&D -# -# 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 -# -# Modules Python -from __future__ import absolute_import -try : - from builtins import str - from builtins import range - from builtins import object -except : pass - -import types,os,sys - -from six.moves import range -from PyQt5.QtWidgets import QFrame,QApplication, QFrame, QWidget -from PyQt5.QtGui import QIcon -from PyQt5.QtCore import QSize, Qt, QTimer - -from Extensions.i18n import tr - - -from InterfaceQT4.feuille import Feuille -from InterfaceQT4.politiquesValidation import PolitiquePlusieurs -from InterfaceQT4.qtSaisie import SaisieValeur -from InterfaceQT4.gereListe import GereListe -from InterfaceQT4.gereListe import LECustom -from Tuple2 import Ui_Tuple2 -from Tuple3 import Ui_Tuple3 -from Tuple4 import Ui_Tuple4 -from Tuple5 import Ui_Tuple5 -from Tuple6 import Ui_Tuple6 -from Tuple7 import Ui_Tuple7 -from Tuple8 import Ui_Tuple8 -from Tuple9 import Ui_Tuple9 -from Tuple10 import Ui_Tuple10 - - -#-------------------------- -class TupleCustom(object) : -#-------------------------- - - def __init__(self,tailleTuple,parent,parentQt,index): - #------------------------------------------------- - QWidget.__init__(self,parent) - self.setupUi(self) - self.tailleTuple=tailleTuple - self.parent=parent - self.parentQt=parentQt - self.valeur=[] - self.index=index - self.inFocusOutEvent=False - - - for i in range(self.tailleTuple): - nomLE="lineEditVal_"+str(i+1) - courant=getattr(self,nomLE) - courant.num=index - courant.dansUnTuple=True - courant.returnPressed.connect(self.valueChange) - courant.numDsLaListe = i+1 - courant.tupleCustomParent=self - courant.parentTuple = self - - - def valueChange(self): - #---------------------- - - listeVal=[] - for i in range(self.tailleTuple): - nomLE="lineEditVal_"+str(i+1) - courant=getattr(self,nomLE) - val=str(courant.text()) - - if str(val)=="" or val==None : - if not self.inFocusOutEvent : courant.setFocus() - return - - try : - valeur=eval(val,{}) - except : - try : - d=self.parentQt.objSimp.jdc.getContexteAvant(self.parentQt.objSimp. etape) - valeur=eval(val,d) - except : - valeur=val - listeVal.append(valeur) - self.valeur=listeVal - self.parentQt.changeValeur() - - - def setValeur(self,value): - #---------------------- - - listeVal=[] - valeurNulle=True - for i in range(self.tailleTuple): - nomLE="lineEditVal_"+str(i+1) - courant=getattr(self,nomLE) - try : - if str(value[i]) != "" : valeurNulle=False - except : - pass - - try : - courant.setText(str(value[i])) - except : - courant.setText("") - val=str(courant.text()) - try : - valeur=eval(val,{}) - except : - try : - d=self.parentQt.objSimp.jdc.getContexteAvant(self.parentQt.objSimp. etape) - valeur=eval(val,d) - except : - valeur=val - listeVal.append(valeur) - if valeurNulle == True : self.valeur=None - else : self.valeur=listeVal - - def getValeurbad(self): - #---------------------- - self.valeur=[] - vide=True - print (self.tailleTuple) - for i in range(self.tailleTuple): - nomLE="lineEditVal_"+str(i+1) - courant=getattr(self,nomLE) - self.valeur.append(courant.valeur) - if courant.valeur!= None : vide = False - if vide : self.valeur=[] - return self.valeur - - def getValeur(self): - #---------------------- - return self.valeur - - - def text(self): - #-------------- - return self.valeur - - def setText(self,value): - #----------------------- - self.setValeur(value) - - def clean(self): - #------------------- - self.valeur=None - for i in range(self.tailleTuple): - nomLE="lineEditVal_"+str(i+1) - courant=getattr(self,nomLE) - courant.setText("") - - def finCommentaire(self): - #------------------- - return self.finCommentaireListe() - - -#------------------------------------------------- -class TupleCustom2(QWidget,Ui_Tuple2,TupleCustom): -#------------------------------------------------- - def __init__(self,tailleTuple,parent,parentQt,index): - #------------------- - TupleCustom.__init__(self,tailleTuple,parent,parentQt,index) - if self.parentQt.editor.maConfiguration.closeParenthese : - self.label_5.close() - self.label_7.close() - - -#------------------------------------------------- -class TupleCustom3(QWidget,Ui_Tuple3,TupleCustom): -#------------------------------------------------- - def __init__(self,tailleTuple,parent,parentQt,index): - #------------------- - TupleCustom.__init__(self,tailleTuple,parent,parentQt,index) - -#------------------------------------------------- -class TupleCustom4(QWidget,Ui_Tuple4,TupleCustom): -#------------------------------------------------- - def __init__(self,tailleTuple,parent,parentQt,index): - #------------------- - TupleCustom.__init__(self,tailleTuple,parent,parentQt,index) - -#------------------------------------------------- -class TupleCustom5(QWidget,Ui_Tuple5,TupleCustom): -#------------------------------------------------- - def __init__(self,tailleTuple,parent,parentQt,index): - #------------------- - TupleCustom.__init__(self,tailleTuple,parent,parentQt,index) - -#------------------------------------------------- -class TupleCustom6(QWidget,Ui_Tuple6,TupleCustom): -#------------------------------------------------- - def __init__(self,tailleTuple,parent,parentQt,index): - #------------------- - TupleCustom.__init__(self,tailleTuple,parent,parentQt,index) - -#------------------------------------------------- -class TupleCustom7(QWidget,Ui_Tuple7,TupleCustom): -#------------------------------------------------- - def __init__(self,tailleTuple,parent,parentQt,index): - #------------------- - TupleCustom.__init__(self,tailleTuple,parent,parentQt,index) - -#------------------------------------------------- -class TupleCustom8(QWidget,Ui_Tuple8,TupleCustom): -#------------------------------------------------- - def __init__(self,tailleTuple,parent,parentQt,index): - #------------------- - TupleCustom.__init__(self,tailleTuple,parent,parentQt,index) - -#------------------------------------------------- -class TupleCustom9(QWidget,Ui_Tuple9,TupleCustom): -#------------------------------------------------- - def __init__(self,tailleTuple,parent,parentQt,index): - #------------------- - TupleCustom.__init__(self,tailleTuple,parent,parentQt,index) - -#------------------------------------------------- -class TupleCustom10(QWidget,Ui_Tuple10,TupleCustom): -#------------------------------------------------- - def __init__(self,tailleTuple,parent,parentQt,index): - #------------------- - TupleCustom.__init__(self,tailleTuple,parent,parentQt,index) - if self.parentQt.editor.maConfiguration.closeParenthese : - self.label_5.close() - self.label_7.close() - - - - - -# -------------------------------------------- # -class MonWidgetPlusieursTuple(Feuille,GereListe): -# -------------------------------------------- # - - def __init__(self, node, monSimpDef, nom, objSimp, parentQt, commande): - #----------------------------------------------------- - - self.indexDernierLabel=0 - self.numLineEditEnCours=0 - self.nomLine="TupleVal" - self.listeAffichageWidget=[] - Feuille.__init__(self,node,monSimpDef,nom,objSimp,parentQt,commande) - GereListe.__init__(self) - self.finCommentaireListe() - self.politique=PolitiquePlusieurs(self.node,self.editor) - self.parentQt.commandesLayout.insertWidget(-1,self) - - #if sys.platform[0:5]!="linux": - if 1 : - #Pour MT - repIcon=self.node.editor.appliEficas.repIcon - fichier=os.path.join(repIcon, 'arrow_up.png') - icon = QIcon(fichier) - self.RBHaut.setIcon(icon) - self.RBHaut.setIconSize(QSize(32, 32)) - fichier2=os.path.join(repIcon, 'arrow_down.png') - icon2 = QIcon(fichier2) - self.RBBas.setIcon(icon2) - fichier3=os.path.join(repIcon, 'file-explorer.png') - icon3 = QIcon(fichier3) - self.BSelectFichier.setIcon(icon3) - self.BSelectFichier.setIconSize(QSize(32, 32)) - self.BSelectFichier.clicked.connect(self.selectInFile) - - - - - def ajoutLineEdit(self,valeur=None,inInit=False): - #------------------------------------------------ - self.indexDernierLabel=self.indexDernierLabel+1 - nomLineEdit=self.nomLine+str(self.indexDernierLabel) - if hasattr(self,nomLineEdit) : - self.indexDernierLabel=self.indexDernierLabel-1 - return - - nomCustomTuple='TupleCustom'+str(self.nbValeurs) - laClasseDuTuple=globals()[nomCustomTuple] - nouveauLE=laClasseDuTuple(self.nbValeurs,self.scrollArea,self,self.indexDernierLabel) - - #if self.nbValeurs == 2 : nouveauLE = TupleCustom2(self.nbValeurs,self.scrollArea,self,self.indexDernierLabel) - #else : nouveauLE = TupleCustom3(self.nbValeurs,self.scrollArea,self,self.indexDernierLabel) - - self.verticalLayoutLE.insertWidget(self.indexDernierLabel-1,nouveauLE) - setattr(self,nomLineEdit,nouveauLE) - if valeur != None : nouveauLE.setValeur(valeur) - - for i in range(self.nbValeurs) : - num=i+1 - nomLineEdit='lineEditVal_'+str(num) - lineEditVal=getattr(nouveauLE,nomLineEdit) - self.listeAffichageWidget.append(lineEditVal) - #self.listeAffichageWidget.append(nouveauLE.lineEditVal_1) - #self.listeAffichageWidget.append(nouveauLE.lineEditVal_2) - #if self.nbValeurs == 3 : self.listeAffichageWidget.append(nouveauLE.lineEditVal_3) - - self.etablitOrdre() - - # deux lignes pour que le ensureVisible fonctionne - self.estVisible=nouveauLE.lineEditVal_1 - if inInit==False :QTimer.singleShot(1, self.rendVisibleLigne) - - def etablitOrdre(self): - # --------------------- - i=0 - while(i +1 < len(self.listeAffichageWidget)): - self.listeAffichageWidget[i].setFocusPolicy(Qt.StrongFocus) - self.setTabOrder(self.listeAffichageWidget[i],self.listeAffichageWidget[i+1]) - i=i+1 - - - def setValeurs(self): - # --------------------- - if self.editor.code == 'PSEN' : self.RBListePush() - valeurs=self.node.item.getValeur() - min,max=self.node.item.getMinMax() - if max == "**" or max > 8 : aCreer= 8 - else : aCreer=max - - if valeurs == () or valeurs == None : - for i in range(aCreer): self.ajoutLineEdit(inInit=True) - return - - for v in valeurs: - self.ajoutLineEdit(v,inInit=True) - - for i in range(len(valeurs),aCreer) : self.ajoutLineEdit(inInit=True) - - def rendVisibleLigne(self): - # ------------------------- - QApplication.processEvents() - self.estVisible.setFocus(True) - self.scrollArea.ensureWidgetVisible(self.estVisible,0,0) - - - def changeValeur(self,changeDePlace=False,oblige=True): - # ----------------------------------------------------- - #Pour compatibilite signature - #print ('dschangeValeur', self.indexDernierLabel) - - aLeFocus=self.focusWidget() - listeComplete=[] - libre=False - #print (self.indexDernierLabel) - for i in range(self.indexDernierLabel) : - nom=self.nomLine+str(i+1) - courant=getattr(self,nom) - valeurTuple=courant.valeur - if valeurTuple == None or valeurTuple== "" or valeurTuple==[]: - libre=True - continue - validite,comm,comm2,listeRetour= self.politique.ajoutTuple(valeurTuple,listeComplete) - if not validite: - if comm2 != '' : comm += " " + comm2 - self.editor.afficheInfos(comm+" "+str(self.objSimp.definition.validators.typeDesTuples),Qt.red) - return - listeComplete.append(tuple(courant.valeur)) - #print ('listeComplete', listeComplete) - if listeComplete == [] : listeComplete=None - self.node.item.setValeur(listeComplete) - - if changeDePlace : return - min,max=self.node.item.getMinMax() - if self.indexDernierLabel == max : self.editor.afficheInfos(tr('Nb maximum de valeurs atteint')) - if self.indexDernierLabel < max and libre==False : - self.ajoutLineEdit() - self.listeAffichageWidget[-2].setFocus(True) - else : - try : - QApplication.processEvents() - w=self.listeAffichageWidget[self.listeAffichageWidget.index(aLeFocus)+1] - w.setFocus(True) - self.scrollArea.ensureWidgetVisible(w,0,0) - except : - pass - - def echange(self,num1,num2): - # on donne le focus au a celui ou on a bouge - # par convention le 2 - nomLineEdit=self.nomLine+str(num1) - courant=getattr(self,nomLineEdit) - valeurAGarder=courant.getValeur() - nomLineEdit2=self.nomLine+str(num2) - courant2=getattr(self,nomLineEdit2) - courant.setText(courant2.text()) - courant2.setText(valeurAGarder) - self.changeValeur(changeDePlace=True) - self.numLineEditEnCours=num2 - self.lineEditEnCours=courant2 - courant2.lineEditVal_1.setFocus(True) - - def ajoutNValeur(self,liste): - #---------------------------- - # attention quand on charge par un fichier, on ne peut pas se contenter d ajouter N fois 1 valeur - # car alors le temps de verification devient prohibitif reconstructu=ion et verification a - # chaque valeur. d ou l ajout de ajoutNTuple a politique plusieurs - - if len(liste)%self.nbValeurs != 0 : - texte="Nombre incorrect de valeurs" - self.editor.afficheInfos(tr(texte),Qt.red) - return - - i=0 - longueur=len(liste)//self.nbValeurs - increment=self.nbValeurs - listeFormatee=[liste[k*increment:(k+1)*increment] for k in range(longueur)] - listeFormatee=tuple(listeFormatee) - - min,max=self.node.item.getMinMax() - if self.objSimp.valeur == None : listeComplete=listeFormatee - else : listeComplete =self.objSimp.valeur + listeFormatee - - if len(listeComplete) > max : - texte=tr("Nombre maximum de valeurs ")+str(max)+tr(" atteint") - self.editor.afficheInfos(texte,Qt.red) - return - - validite,comm,comm2,listeRetour= self.politique.ajoutNTuple(listeComplete) - if not validite : - self.editor.afficheInfos(comm+comm2,Qt.red) - return - - # on calcule le dernier lineedit rempli avant de changer la valeur - if self.objSimp.valeur != None : indexDernierRempli=len(self.objSimp.valeur) - else : indexDernierRempli=0 - - self.politique.recordValeur(listeComplete) - - while ( i < len(liste) ) : - try : - t=tuple(liste[i:i+self.nbValeurs]) - except: - t=tuple(liste[i:len(liste)]) - i=i+self.nbValeurs - if indexDernierRempli < self.indexDernierLabel: - - nomLEARemplir=self.nomLine+str(indexDernierRempli+1) - LEARemplir=getattr(self,nomLEARemplir) - for n in range(self.nbValeurs) : - nomLineEdit='lineEditVal_'+str(n+1) - lineEditVal=getattr(LEARemplir,nomLineEdit) - lineEditVal.setText(str(t[n])) - else : - # ne pas appeler ajoutLineEdit(t,False ) pb de boucle pb du a etablitOrdre et a listeWidgetAffichage qui bouge - self.indexDernierLabel=self.indexDernierLabel+1 - nomLineEdit=self.nomLine+str(self.indexDernierLabel) - - nomCustomTuple='TupleCustom'+str(self.nbValeurs) - laClasseDuTuple=globals()[nomCustomTuple] - nouveauLE=laClasseDuTuple(self.nbValeurs,self.scrollArea,self,self.indexDernierLabel) - - self.verticalLayoutLE.insertWidget(self.indexDernierLabel-1,nouveauLE) - setattr(self,nomLineEdit,nouveauLE) - nouveauLE.setValeur(t) - - for n in range(self.nbValeurs) : - nomLineEdit='lineEditVal_'+str(n+1) - lineEditVal=getattr(nouveauLE,nomLineEdit) - self.listeAffichageWidget.append(lineEditVal) - indexDernierRempli = indexDernierRempli+1 - - self.etablitOrdre() - - - - def RBListePush(self): - #---------------------- - # PN a rendre generique avec un truc tel prerempli - # pour l instant specifique PSEN - - if self.editor.code == 'VP' : return - if self.objSimp.valeur != None and self.objSimp.valeur != [] : return - if not hasattr(self.editor.readercata.cata,'sd_ligne') : self.editor.readercata.cata.sd_ligne=None - if not hasattr(self.editor.readercata.cata,'sd_generateur') : self.editor.readercata.cata.sd_generateur=None - if not hasattr(self.editor.readercata.cata,'sd_transfo') : self.editor.readercata.cata.sd_transfo=None - if not hasattr(self.editor.readercata.cata,'sd_charge') : self.editor.readercata.cata.sd_charge=None - if not hasattr(self.editor.readercata.cata,'sd_moteur') : self.editor.readercata.cata.sd_moteur=None - if self.objSimp.definition.validators.typeDesTuples[0]==self.editor.readercata.cata.sd_ligne : - val=[] - if hasattr(self.objSimp.jdc,'LineDico'): - for k in self.objSimp.jdc.LineDico : - try : - valeur=self.objSimp.jdc.getConcept(k) - val.append((valeur,0)) - except : - pass - self.node.item.setValeur(val) - if self.objSimp.definition.validators.typeDesTuples[0]==self.editor.readercata.cata.sd_generateur : - val=[] - if hasattr(self.objSimp.jdc,'MachineDico'): - for k in self.objSimp.jdc.MachineDico : - try : - valeur=self.objSimp.jdc.getConcept(k) - val.append((valeur,0)) - except : - pass - self.node.item.setValeur(val) - if self.objSimp.definition.validators.typeDesTuples[0]==self.editor.readercata.cata.sd_transfo : - val=[] - if hasattr(self.objSimp.jdc,'TransfoDico'): - for k in self.objSimp.jdc.TransfoDico : - try : - valeur=self.objSimp.jdc.getConcept(k) - val.append((valeur,0)) - except : - pass - self.node.item.setValeur(val) - if self.objSimp.definition.validators.typeDesTuples[0]==self.editor.readercata.cata.sd_charge : - val=[] - if hasattr(self.objSimp.jdc,'LoadDico'): - for k in self.objSimp.jdc.LoadDico : - try : - valeur=self.objSimp.jdc.getConcept(k) - val.append((valeur,0)) - except : - pass - self.node.item.setValeur(val) - if self.objSimp.definition.validators.typeDesTuples[0]==self.editor.readercata.cata.sd_moteur : - val=[] - if hasattr(self.objSimp.jdc,'MotorDico'): - for k in self.objSimp.jdc.MotorDico : - try : - valeur=self.objSimp.jdc.getConcept(k) - val.append((valeur,0)) - except : - pass - self.node.item.setValeur(val) diff --git a/InterfaceQT4/monWidgetPlusieursTupleN.py b/InterfaceQT4/monWidgetPlusieursTupleN.py deleted file mode 100644 index c68c7c72..00000000 --- a/InterfaceQT4/monWidgetPlusieursTupleN.py +++ /dev/null @@ -1,74 +0,0 @@ -# -*- coding: utf-8 -*- -# Copyright (C) 2007-2021 EDF R&D -# -# 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 -# -# Modules Python -from __future__ import absolute_import -import types,os - -# Modules Eficas - -from .feuille import Feuille -from .monWidgetPlusieursTuple import MonWidgetPlusieursTuple -from desWidgetPlusieursTuple import Ui_WidgetPlusieursTuple - - -class MonWidgetPlusieursTuple2 (Ui_WidgetPlusieursTuple,MonWidgetPlusieursTuple): - def __init__(self,node,monSimpDef,nom,objSimp,parentQt,commande): - self.nbValeurs=2 - MonWidgetPlusieursTuple.__init__(self,node,monSimpDef,nom,objSimp,parentQt,commande) - -class MonWidgetPlusieursTuple3 (Ui_WidgetPlusieursTuple,MonWidgetPlusieursTuple): - def __init__(self,node,monSimpDef,nom,objSimp,parentQt,commande): - self.nbValeurs=3 - MonWidgetPlusieursTuple.__init__(self,node,monSimpDef,nom,objSimp,parentQt,commande) - -class MonWidgetPlusieursTuple4 (Ui_WidgetPlusieursTuple,MonWidgetPlusieursTuple): - def __init__(self,node,monSimpDef,nom,objSimp,parentQt,commande): - self.nbValeurs=4 - MonWidgetPlusieursTuple.__init__(self,node,monSimpDef,nom,objSimp,parentQt,commande) - -class MonWidgetPlusieursTuple5 (Ui_WidgetPlusieursTuple,MonWidgetPlusieursTuple): - def __init__(self,node,monSimpDef,nom,objSimp,parentQt,commande): - self.nbValeurs=5 - MonWidgetPlusieursTuple.__init__(self,node,monSimpDef,nom,objSimp,parentQt,commande) - -class MonWidgetPlusieursTuple6 (Ui_WidgetPlusieursTuple,MonWidgetPlusieursTuple): - def __init__(self,node,monSimpDef,nom,objSimp,parentQt,commande): - self.nbValeurs=6 - MonWidgetPlusieursTuple.__init__(self,node,monSimpDef,nom,objSimp,parentQt,commande) - -class MonWidgetPlusieursTuple7 (Ui_WidgetPlusieursTuple,MonWidgetPlusieursTuple): - def __init__(self,node,monSimpDef,nom,objSimp,parentQt,commande): - self.nbValeurs=7 - MonWidgetPlusieursTuple.__init__(self,node,monSimpDef,nom,objSimp,parentQt,commande) - -class MonWidgetPlusieursTuple8 (Ui_WidgetPlusieursTuple,MonWidgetPlusieursTuple): - def __init__(self,node,monSimpDef,nom,objSimp,parentQt,commande): - self.nbValeurs=8 - MonWidgetPlusieursTuple.__init__(self,node,monSimpDef,nom,objSimp,parentQt,commande) - -class MonWidgetPlusieursTuple9 (Ui_WidgetPlusieursTuple,MonWidgetPlusieursTuple): - def __init__(self,node,monSimpDef,nom,objSimp,parentQt,commande): - self.nbValeurs=9 - MonWidgetPlusieursTuple.__init__(self,node,monSimpDef,nom,objSimp,parentQt,commande) - -class MonWidgetPlusieursTuple10 (Ui_WidgetPlusieursTuple,MonWidgetPlusieursTuple): - def __init__(self,node,monSimpDef,nom,objSimp,parentQt,commande): - self.nbValeurs=10 - MonWidgetPlusieursTuple.__init__(self,node,monSimpDef,nom,objSimp,parentQt,commande) diff --git a/InterfaceQT4/monWidgetRadioButton.py b/InterfaceQT4/monWidgetRadioButton.py deleted file mode 100644 index 67fcdf16..00000000 --- a/InterfaceQT4/monWidgetRadioButton.py +++ /dev/null @@ -1,152 +0,0 @@ -# -*- coding: utf-8 -*- -# Copyright (C) 2007-2021 EDF R&D -# -# 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 -# -# Modules Python -from __future__ import absolute_import -from __future__ import print_function -try : - from builtins import str -except : pass - -import types,os - -from PyQt5.QtCore import Qt -from PyQt5.QtWidgets import QWidget - -# Modules Eficas - -from Extensions.i18n import tr - -from .feuille import Feuille -from desWidgetRadioButton import Ui_WidgetRadioButton -from .politiquesValidation import PolitiqueUnique -from .qtSaisie import SaisieValeur - - -class MonWidgetRadioButtonCommun (Feuille): - def __init__(self,node,monSimpDef,nom,objSimp,parentQt,commande): - self.setMaxI() - Feuille.__init__(self,node,monSimpDef,nom,objSimp,parentQt,commande) - self.politique=PolitiqueUnique(self.node,self.editor) - self.dict_bouton={} - self.determineChoix() - self.setValeursApresBouton() - self.parentQt.commandesLayout.insertWidget(-1,self) - self.AAfficher=self.radioButton_1 - self.maCommande.listeAffichageWidget.append(self.radioButton_1) - - - def setValeursApresBouton(self): - if self.objSimp.getValeur()==None : return - valeur=self.objSimp.getValeur() - if not(isinstance(valeur, str)) : valeur = str(valeur) - try : - self.dict_bouton[valeur].setChecked(True) - self.dict_bouton[valeur].setFocus(True) - except : - pass - - def determineChoix(self): - self.horizontalLayout.setAlignment(Qt.AlignLeft) - i=1 - j=len(self.maListeDeValeur) - if j > self.maxI : - print ("poumbadaboum") - return - while i < j+1 : - nomBouton="radioButton_"+str(i) - bouton=getattr(self,nomBouton) - valeur=self.maListeDeValeur[i-1] - if not(isinstance(valeur, str)) : valeur = str(valeur) - bouton.setText(tr(valeur)) - self.dict_bouton[valeur]=bouton - bouton.clicked.connect(self.boutonclic) - bouton.keyPressEvent=self.keyPressEvent - setattr(self,nomBouton,bouton) - i=i+1 - while i < self.maxI +1 : - nomBouton="radioButton_"+str(i) - bouton=getattr(self,nomBouton) - bouton.close() - i=i+1 - - def boutonclic(self): - for valeur in self.dict_bouton: - if self.dict_bouton[valeur].isChecked(): - SaisieValeur.LEvaleurPressed(self,valeur) - self.reaffiche() - - - def keyPressEvent(self, event): - if event.key() == Qt.Key_Right : self.selectSuivant(); return - if event.key() == Qt.Key_Left : self.selectPrecedent(); return - if event.key() == Qt.Key_Return or event.key() == Qt.Key_Space : self.checkFocused(); return - QWidget.keyPressEvent(self,event) - - def selectSuivant(self): - aLeFocus=self.focusWidget() - nom=aLeFocus.objectName()[12:] - i=int(nom)+1 - if i == len(self.maListeDeValeur) +1 : i=1 - nomBouton="radioButton_"+str(i) - courant=getattr(self,nomBouton) - courant.setFocus(True) - - def selectPrecedent(self): - aLeFocus=self.focusWidget() - nom=aLeFocus.objectName()[12:] - i=int(nom)-1 - if i == 0 : i= len(self.maListeDeValeur) - nomBouton="radioButton_"+str(i) - courant=getattr(self,nomBouton) - courant.setFocus(True) - - def checkFocused(self): - aLeFocus=self.focusWidget() - nom=aLeFocus.objectName()[12:] - i=int(nom) - if i > 0 and i <= len(self.maListeDeValeur): - nomBouton="radioButton_"+str(i) - courant=getattr(self,nomBouton) - if not courant.isChecked(): - courant.setChecked(True) - self.boutonclic() - - -class MonWidgetRadioButton (Ui_WidgetRadioButton,MonWidgetRadioButtonCommun): - def __init__(self,node,monSimpDef,nom,objSimp,parentQt,commande): - #print "MonWidgetRadioButton ", self - if type(monSimpDef.into) ==types.FunctionType : self.maListeDeValeur=monSimpDef.into() - else : self.maListeDeValeur=monSimpDef.into - - MonWidgetRadioButtonCommun.__init__(self,node,monSimpDef,nom,objSimp,parentQt,commande) - - def setMaxI(self): - self.maxI=3 - - -class MonWidgetRadioButtonSD (Ui_WidgetRadioButton,MonWidgetRadioButtonCommun): - - def __init__(self,node,monSimpDef,nom,objSimp,parentQt,commande): - #print "dans le init de MonWidgetRadioButtonSD",self - self.maListeDeValeur=node.item.getSdAvantDuBonType() - MonWidgetRadioButtonCommun.__init__(self,node,monSimpDef,nom,objSimp,parentQt,commande) - - def setMaxI(self): - self.maxI=3 diff --git a/InterfaceQT4/monWidgetSDCOInto.py b/InterfaceQT4/monWidgetSDCOInto.py deleted file mode 100644 index d07252b1..00000000 --- a/InterfaceQT4/monWidgetSDCOInto.py +++ /dev/null @@ -1,96 +0,0 @@ -# -*- coding: utf-8 -*- -# Copyright (C) 2007-2021 EDF R&D -# -# 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 -# -# Modules Python -from __future__ import absolute_import -try : - from builtins import str -except : pass - -import types,os - -# Modules Eficas -from PyQt5.QtWidgets import QLineEdit -from PyQt5.QtCore import Qt -from Extensions.i18n import tr - -from .feuille import Feuille -from desWidgetSDCOInto import Ui_WidgetSDCOInto -from .qtSaisie import SaisieSDCO -from .politiquesValidation import PolitiqueUnique - - - -class MonWidgetSDCOInto (Ui_WidgetSDCOInto,Feuille,SaisieSDCO): - - def __init__(self,node,monSimpDef,nom,objSimp,parentQt,commande): - #print "MonWidgetSDCOInto init" - Feuille.__init__(self,node,monSimpDef,nom,objSimp,parentQt,commande) - self.politique=PolitiqueUnique(self.node,self.editor) - self.parentQt.commandesLayout.insertWidget(-1,self) - self.maCommande.listeAffichageWidget.append(self.LESDCO) - self.AAficher=self.LESDCO - self.initLBSDCO() - - self.LESDCO.returnPressed.connect(self.LESDCOReturnPressed) - self.LBSDCO.itemDoubleClicked.connect(self.LBSDCODoubleClicked ) - - def LESDCOReturnPressed(self) : - self.LBSDCO.clearSelection() - SaisieSDCO.LESDCOReturnPressed(self) - - - def initLBSDCO(self): - listeNomsSDCO = self.node.item.getSdAvantDuBonType() - for aSDCO in listeNomsSDCO: - self.LBSDCO.insertItem( 1,aSDCO) - valeur = self.node.item.getValeur() - if valeur != "" and valeur != None : - self.LESDCO.setText(str(valeur.nom)) - - - def LBSDCODoubleClicked(self): - """ - Teste si la valeur fournie par l'utilisateur est une valeur permise : - - si oui, l'enregistre - - si non, restaure l'ancienne valeur - """ - nomConcept=str(self.LBSDCO.currentItem().text()) - self.LESDCO.clear() - self.editor.initModif() - anc_val = self.node.item.getValeur() - test_CO=self.node.item.isCO(anc_val) - - valeur,validite=self.node.item.evalValeur(nomConcept) - test = self.node.item.setValeur(valeur) - if not test : - commentaire = tr("impossible d'evaluer : ") + valeur - elif validite: - commentaire = tr("Valeur du mot-clef enregistree") - if test_CO: - # il faut egalement propager la destruction de l'ancien concept - self.node.item.deleteValeurCo(valeur=anc_val) - self.node.item.object.etape.getType_produit(force=1) - self.node.item.object.etape.parent.resetContext() - self.LESDCO.setText(nomConcept) - else : - commentaire = self.node.item.getCr() - self.reset_old_valeur(anc_val,mess=mess) - self.editor.afficheInfos(commentaire,Qt.red) - self.Commentaire.setText(tr(commentaire)) diff --git a/InterfaceQT4/monWidgetSimpBase.py b/InterfaceQT4/monWidgetSimpBase.py deleted file mode 100644 index 5f545c0a..00000000 --- a/InterfaceQT4/monWidgetSimpBase.py +++ /dev/null @@ -1,114 +0,0 @@ -# -*- coding: utf-8 -*- -# Copyright (C) 2007-2021 EDF R&D -# -# 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 -# -# Modules Python -from __future__ import absolute_import -try : - from builtins import str -except : pass - -import types,os - -# Modules Eficas -from PyQt5.QtWidgets import QLineEdit -from PyQt5.QtCore import Qt -from Extensions.i18n import tr - -from .feuille import Feuille -from desWidgetSimpBase import Ui_WidgetSimpBase -from .politiquesValidation import PolitiqueUnique -from .qtSaisie import SaisieValeur - - -class MonWidgetSimpBase (Ui_WidgetSimpBase,Feuille): - - def __init__(self,node,monSimpDef,nom,objSimp,parentQt,commande): - Feuille.__init__(self,node,monSimpDef,nom,objSimp,parentQt,commande) - self.parentQt.commandesLayout.insertWidget(-1,self,1) - self.setFocusPolicy(Qt.StrongFocus) - if monSimpDef.homo == 'constant' : self.lineEditVal.setReadOnly(True) - if monSimpDef.homo == 'constant' : self.lineEditVal.setStyleSheet("background:rgb(210,235,235);\n" "border:0px;") - else : self.lineEditVal.returnPressed.connect(self.LEvaleurPressed) - self.AAfficher=self.lineEditVal - self.maCommande.listeAffichageWidget.append(self.lineEditVal) - self.lineEditVal.focusInEvent=self.monFocusInEvent - self.lineEditVal.focusOutEvent=self.monFocusOutEvent - - - def monFocusInEvent(self,event): - self.editor.nodeEnCours = self - QLineEdit.focusInEvent(self.lineEditVal,event) - - def monFocusOutEvent(self,event): - if self.oldValeurTexte != self.lineEditVal.text(): - self.oldValeurTexte= self.lineEditVal.text() - self.LEvaleurPressed() - QLineEdit.focusOutEvent(self.lineEditVal,event) - - - def setValeurs(self): - #print ("dans setValeurs") - self.politique=PolitiqueUnique(self.node,self.editor) - valeur=self.node.item.getValeur() - valeurTexte=self.politique.getValeurTexte(valeur) - chaine="" - - if valeurTexte != None : - from decimal import Decimal - if isinstance(valeurTexte,Decimal): - chaine=str(valeurTexte) - elif repr(valeurTexte.__class__).find("PARAMETRE") > 0: - chaine = repr(valeur) - else : - #PN ???? - #try : - # chaine=QString("").setNum(valeurTexte) - #except : - chaine=str(valeurTexte) - self.oldValeurTexte=chaine - self.lineEditVal.setText(chaine) - - - def finCommentaire(self): - mc = self.objSimp.definition - d_aides = { 'TXM' : tr(u"Une chaine de caracteres est attendue. "), - 'R' : tr(u"Un reel est attendu. "), - 'I' : tr(u"Un entier est attendu. "), - 'Matrice' : tr(u'Une Matrice est attendue. '), - 'Fichier' : tr(u'Un fichier est attendu. '), - 'FichierNoAbs' : tr(u'Un fichier est attendu. '), - 'Repertoire' : tr(u'Un repertoire est attendu. '), - 'FichierOuRepertoire' : tr(u'Un repertoire ou un fichier est attendu. '), - 'Heure' : tr(u'Heure sous la forme HH:MM'), - 'Date' : tr(u'Date sous la forme JJ/MM/AA')} - if mc.type[0] != type: - commentaire = d_aides.get(mc.type[0], tr("Type de base inconnu")) - else : commentaire="" - return commentaire - - - def LEvaleurPressed(self): - # pour les soucis d encoding - try : - if str(self.lineEditVal.text())=="" or str(self.lineEditVal.text())==None : return - except : pass - SaisieValeur.LEvaleurPressed(self) - #self.parentQt.donneFocus() - self.setValeurs() - self.reaffiche() diff --git a/InterfaceQT4/monWidgetSimpBool.py b/InterfaceQT4/monWidgetSimpBool.py deleted file mode 100644 index 7545a315..00000000 --- a/InterfaceQT4/monWidgetSimpBool.py +++ /dev/null @@ -1,60 +0,0 @@ -# -*- coding: utf-8 -*- -# Copyright (C) 2007-2021 EDF R&D -# -# 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 -# -# Modules Python -from __future__ import absolute_import -import types,os - -# Modules Eficas -from PyQt5.QtWidgets import QRadioButton -from Extensions.i18n import tr - -from .feuille import Feuille -from desWidgetSimpBool import Ui_WidgetSimpBool -from .politiquesValidation import PolitiqueUnique -from .qtSaisie import SaisieValeur - - -class MonWidgetSimpBool (Ui_WidgetSimpBool,Feuille): - - def __init__(self,node,monSimpDef,nom,objSimp,parentQt,commande): - Feuille.__init__(self,node,monSimpDef,nom,objSimp,parentQt,commande) - self.politique=PolitiqueUnique(self.node,self.editor) - self.RBTrue.clicked.connect(self.boutonTrueClic) - self.RBFalse.clicked.connect(self.boutonFalseClic) - self.parentQt.commandesLayout.insertWidget(-1,self) - self.maCommande.listeAffichageWidget.append(self.RBTrue) - self.AAfficher=self.RBTrue - - def setValeurs(self): - valeur=self.node.item.getValeur() - if valeur == None : return - if valeur == True : self.RBTrue.setChecked(True) - if valeur == False : self.RBFalse.setChecked(True) - if self.monSimpDef.homo == 'constant' : - if valeur == True : self.RBFalse.setDisabled(True) - else : self.RBTrue.setDisabled(True) - - def boutonTrueClic(self): - SaisieValeur.LEvaleurPressed(self,True) - self.reaffiche() - - def boutonFalseClic(self): - SaisieValeur.LEvaleurPressed(self,False) - self.reaffiche() diff --git a/InterfaceQT4/monWidgetSimpComplexe.py b/InterfaceQT4/monWidgetSimpComplexe.py deleted file mode 100644 index 4f60eb7b..00000000 --- a/InterfaceQT4/monWidgetSimpComplexe.py +++ /dev/null @@ -1,173 +0,0 @@ -# -*- coding: utf-8 -*- -# Copyright (C) 2007-2021 EDF R&D -# -# 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 -# -# Modules Python -from __future__ import absolute_import -try : - from builtins import str -except : pass - -import types,os, locale - -# Modules Eficas -from PyQt5.QtWidgets import QLineEdit, QRadioButton -from PyQt5.QtCore import Qt - - -from Extensions.i18n import tr - -from .feuille import Feuille -from desWidgetSimpComplexe import Ui_WidgetSimpComplexe -from .politiquesValidation import PolitiqueUnique -from .qtSaisie import SaisieValeur - - -class MonWidgetSimpComplexe (Ui_WidgetSimpComplexe,Feuille): - - def __init__(self,node,monSimpDef,nom,objSimp,parentQt,commande): - Feuille.__init__(self,node,monSimpDef,nom,objSimp,parentQt,commande) - self.parentQt.commandesLayout.insertWidget(-1,self) - self.setFocusPolicy(Qt.StrongFocus) - self.LEImag.returnPressed.connect(self.LEImagRPressed) - self.LEReel.returnPressed.connect(self.LEReelRPressed) - self.RBRI.clicked.connect(self.valeurPressed ) - self.RBMP.clicked.connect(self.valeurPressed ) - self.LEComp.returnPressed.connect(self.LECompRPressed) - self.maCommande.listeAffichageWidget.append(self.LEComp) - #self.maCommande.listeAffichageWidget.append(self.RBRI) - #self.maCommande.listeAffichageWidget.append(self.RBMP) - #self.maCommande.listeAffichageWidget.append(self.LEReel) - #self.maCommande.listeAffichageWidget.append(self.LEImag) - - - def setValeurs(self): - self.politique=PolitiqueUnique(self.node,self.editor) - valeur=self.node.item.getValeur() - if valeur == None or valeur == '' : return - if type(valeur) not in (list,tuple) : - self.LEComp.setText(str(valeur)) - else : - typ_cplx,x1,x2=valeur - self.LEReel.setText(str(x1)) - self.LEImag.setText(str(x2)) - if typ_cplx == "RI" : - self.RBRI.setChecked(1) - else : - self.RBMP.setChecked(1) - - def LECompRPressed(self) : - self.LEReel.clear() - self.LEImag.clear() - commentaire=tr("expression valide") - valeur = str(self.LEComp.text()) - d={} - try : - v=eval(valeur,d) - except : - commentaire=tr("expression invalide") - self.editor.afficheInfos(commentaire,Qt.red) - return - try : - i=v.imag - self.editor.afficheInfos(commentaire) - self.valeurPressed() - except : - commentaire=tr("l expression n est pas de la forme a+bj") - self.editor.afficheInfos(commentaire,Qt.red) - - def LEReelRPressed(self): - self.LEComp.clear() - commentaire=tr("expression valide") - valeur = str(self.LEReel.text()) - try : - a=locale.atof(valeur) - self.editor.afficheInfos(commentaire) - except : - commentaire=tr("expression invalide") - self.editor.afficheInfos(commentaire,Qt.red) - if self.LEImag.text()!="" : self.valeurPressed() - - def LEImagRPressed(self): - self.LEComp.clear() - commentaire=tr("expression valide") - valeur = str(self.LEImag.text()) - try : - a=locale.atof(valeur) - self.editor.afficheInfos(commentaire) - except : - commentaire=tr("expression invalide") - self.editor.afficheInfos(commentaire,Qt.red) - if self.LEReel.text()!="" : self.valeurPressed() - - def finCommentaire(self): - commentaire="valeur de type complexe" - return commentaire - - def getValeurComp(self): - commentaire=tr("expression valide") - valeur = str(self.LEComp.text()) - d={} - try : - v=eval(valeur,d) - except : - commentaire=tr("expression invalide") - self.editor.afficheInfos(commentaire,Qt.red) - return None - try : - i=v.imag - except : - commentaire=tr("expression n est pas de la forme a+bj") - self.editor.afficheInfos(commentaire,Qt.red) - return None - return v - - - def valeurPressed(self): - if self.LEComp.text()== "" and (self.LEReel.text()=="" or self.LEImag.text()=="") : - return - if self.LEComp.text()== "" : valeur = self.getValeurRI() - else : - if self.LEReel.text() != "" or self.LEImag.text() != "" : - commentaire=tr("entrer une seule valeur SVP") - self.editor.afficheInfos(commentaire,Qt.red) - return - valeur= self.getValeurComp() - self.politique.recordValeur(valeur) - self.reaffiche() - self.parentQt.donneFocus() - - def getValeurRI(self): - """ - Retourne le complexe saisi par l'utilisateur - """ - l=[] - if (self.RBMP.isChecked() == 1 ) : - l.append("MP") - elif (self.RBRI.isChecked() == 1) : - l.append("RI") - else : - commentaire=tr("saisir le type de complexe") - self.editor.afficheInfos(commentaire,Qt.red) - return None - try : - l.append(locale.atof(str(self.LEReel.text()))) - l.append(locale.atof(str(self.LEImag.text()))) - except : - return None - return repr(tuple(l)) diff --git a/InterfaceQT4/monWidgetSimpFichier.py b/InterfaceQT4/monWidgetSimpFichier.py deleted file mode 100644 index 0b81e44b..00000000 --- a/InterfaceQT4/monWidgetSimpFichier.py +++ /dev/null @@ -1,43 +0,0 @@ -# -*- coding: utf-8 -*- -# Copyright (C) 2007-2021 EDF R&D -# -# 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 -# -# Modules Python -from __future__ import absolute_import -import types,os,sys - -# Modules Eficas -from PyQt5.QtGui import QIcon -from PyQt5.QtCore import QSize -from Extensions.i18n import tr - -from desWidgetSimpFichier import Ui_WidgetSimpFichier -from .monWidgetSimpBase import MonWidgetSimpBase - - -class MonWidgetSimpFichier (Ui_WidgetSimpFichier,MonWidgetSimpBase): -# c est juste la taille des differents widgets de base qui change - - def __init__(self,node,monSimpDef,nom,objSimp,parentQt,commande): - MonWidgetSimpBase.__init__(self,node,monSimpDef,nom,objSimp,parentQt,commande) - if sys.platform[0:5]!="linux" : - repIcon=self.node.editor.appliEficas.repIcon - fichier=os.path.join(repIcon, 'file-explorer.png') - icon = QIcon(fichier) - self.BFichier.setIcon(icon) - self.BFichier.setIconSize(QSize(32, 32)) diff --git a/InterfaceQT4/monWidgetSimpSalome.py b/InterfaceQT4/monWidgetSimpSalome.py deleted file mode 100644 index 41e0632f..00000000 --- a/InterfaceQT4/monWidgetSimpSalome.py +++ /dev/null @@ -1,63 +0,0 @@ -# -*- coding: utf-8 -*- -# Copyright (C) 2007-2021 EDF R&D -# -# 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 -# -# Modules Python -from __future__ import absolute_import -try : - from builtins import str -except : pass - -import types,os - - - -from PyQt5.QtWidgets import QLineEdit -from PyQt5.QtCore import Qt - -from Extensions.i18n import tr - -from .feuille import Feuille -from desWidgetSimpSalome import Ui_WidgetSimpSalome -from .politiquesValidation import PolitiqueUnique -from .qtSaisie import SaisieValeur - - -class MonWidgetSimpSalome (Ui_WidgetSimpSalome,Feuille): - - def __init__(self,node,monSimpDef,nom,objSimp,parentQt,commande): - Feuille.__init__(self,node,monSimpDef,nom,objSimp,parentQt,commande) - self.parentQt.commandesLayout.insertWidget(-1,self,1) - self.setFocusPolicy(Qt.StrongFocus) - self.politique=PolitiqueUnique(self.node,self.editor) - self.lineEditVal.returnPressed.connect(self.LEvaleurPressed) - self.AAfficher=self.lineEditVal - self.maCommande.listeAffichageWidget.append(self.lineEditVal) - - - def LEvaleurPressed(self): - if str(self.lineEditVal.text())=="" or str(self.lineEditVal.text())==None : return - SaisieValeur.LEvaleurPressed(self) - self.parentQt.donneFocus() - self.setValeurs() - self.reaffiche() - - - def setValeurs(self): - valeur=self.node.item.getValeur() - if valeur != None : self.lineEditVal.setText(str(valeur)) diff --git a/InterfaceQT4/monWidgetSimpTuple.py b/InterfaceQT4/monWidgetSimpTuple.py deleted file mode 100644 index c5e99ec0..00000000 --- a/InterfaceQT4/monWidgetSimpTuple.py +++ /dev/null @@ -1,98 +0,0 @@ -# -*- coding: utf-8 -*- -# Copyright (C) 2007-2021 EDF R&D -# -# 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 -# -# Modules Python -from __future__ import absolute_import -try : - from builtins import str - from builtins import range -except : pass - -import types,os - -from PyQt5.QtCore import Qt - -# Modules Eficas -from Extensions.i18n import tr - -from InterfaceQT4.feuille import Feuille -from InterfaceQT4.politiquesValidation import PolitiqueUnique -from InterfaceQT4.qtSaisie import SaisieValeur - - -class MonWidgetSimpTuple(Feuille): - - def __init__(self,node,monSimpDef,nom,objSimp,parentQt,commande): - Feuille.__init__(self,node,monSimpDef,nom,objSimp,parentQt,commande) - self.politique=PolitiqueUnique(self.node,self.editor) - self.parentQt.commandesLayout.insertWidget(-1,self) - self.setFocusPolicy(Qt.StrongFocus) - - def setValeurs(self): - valeur=self.node.item.getValeur() - for i in range(self.nbValeurs) : - nomLineEdit="lineEditVal"+str(i+1) - courant=getattr(self,nomLineEdit) - if valeur !=None: courant.setText(str(valeur[i])) - setattr(self,nomLineEdit,courant) - courant.returnPressed.connect(self.valeursPressed) - - def valeursPressed(self): - aLeFocus=self.focusWidget() - self.editor.afficheInfos("") - texteValeur="" - for i in range(self.nbValeurs) : - nomLineEdit="lineEditVal"+str(i+1) - courant=getattr(self,nomLineEdit) - if courant.text()=="" or courant.text()==None : - courant.setFocus(True) - return - s=str(courant.text()) - if hasattr(self.objSimp.definition.validators, 'typeDesTuples'): - if self.objSimp.definition.validators.typeDesTuples[i] == "R" : - if (s.find('.')== -1 and s.find('e')== -1 and s.find('E')==-1) : - s=s+'.0' - courant.setText(s) - if self.objSimp.definition.validators.typeDesTuples[i] == "TXM" : - if s[0]!='"' and s[0] != "'": - if s[-1]=="'": s="'"+s - else : s='"'+s - if s[-1]!='"' and s[-1] != "'": - if s[0]=="'": s=s+"'" - else : s=s+'"' - courant.setText(s) - texteValeur+=str(courant.text()) - #print (texteValeur) - if i+1 != self.nbValeurs : texteValeur+=',' - validite,commentaire=self.politique.recordValeur(texteValeur) - if not validite:self.editor.afficheInfos(commentaire+" "+str(self.objSimp.definition.validators.typeDesTuples),Qt.red) - - # Passage au champ suivant - nom=aLeFocus.objectName()[11:] - try : - i=int(nom)+1 - except : - try : - i=i+1 - except : - return - if i == self.nbValeurs +1 : i=1 - nomLineEdit="lineEditVal"+str(i) - courant=getattr(self,nomLineEdit) - courant.setFocus(True) diff --git a/InterfaceQT4/monWidgetSimpTuple3.py b/InterfaceQT4/monWidgetSimpTuple3.py deleted file mode 100644 index 23d4640e..00000000 --- a/InterfaceQT4/monWidgetSimpTuple3.py +++ /dev/null @@ -1,52 +0,0 @@ -# -*- coding: utf-8 -*- -# Copyright (C) 2007-2021 EDF R&D -# -# 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 -# -# Modules Python -from __future__ import absolute_import -import types,os - -# Modules Eficas -#from PyQt4.QtGui import * -#from PyQt4.QtCore import * -from Extensions.i18n import tr - -from .feuille import Feuille -from .monWidgetSimpTuple import MonWidgetSimpTuple -from desWidgetTuple3 import Ui_WidgetTuple3 - - -class MonWidgetSimpTuple3 (Ui_WidgetTuple3,MonWidgetSimpTuple): - - def __init__(self,node,monSimpDef,nom,objSimp,parentQt,commande): - self.nbValeurs=3 - MonWidgetSimpTuple.__init__(self,node,monSimpDef,nom,objSimp,parentQt,commande) - if self.objSimp.isImmuable() : - self.lineEditVal1.setDisabled(True) - self.lineEditVal2.setDisabled(True) - self.lineEditVal3.setDisabled(True) - self.lineEditVal1.setStyleSheet("background:rgb(244,244,244);\n" "border:0px;\n") - self.lineEditVal2.setStyleSheet("background:rgb(244,244,244);\n" "border:0px;\n") - self.lineEditVal3.setStyleSheet("background:rgb(244,244,244);\n" "border:0px;\n") - self.lineEditVal1.setToolTip(tr("Valeur non modifiable")) - self.lineEditVal2.setToolTip(tr("Valeur non modifiable")) - self.lineEditVal3.setToolTip(tr("Valeur non modifiable")) - else : - self.maCommande.listeAffichageWidget.append(self.lineEditVal1) - #self.maCommande.listeAffichageWidget.append(self.lineEditVal2) - #self.maCommande.listeAffichageWidget.append(self.lineEditVal3) diff --git a/InterfaceQT4/monWidgetSimpTupleN.py b/InterfaceQT4/monWidgetSimpTupleN.py deleted file mode 100644 index adeeb73c..00000000 --- a/InterfaceQT4/monWidgetSimpTupleN.py +++ /dev/null @@ -1,103 +0,0 @@ -# -*- coding: utf-8 -*- -# Copyright (C) 2007-2021 EDF R&D -# -# 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 -# -# Modules Python -from __future__ import absolute_import -import types,os - -# Modules Eficas -#from PyQt4.QtGui import * -#from PyQt4.QtCore import * -from Extensions.i18n import tr - -from InterfaceQT4.feuille import Feuille -from InterfaceQT4.monWidgetSimpTuple import MonWidgetSimpTuple -from desWidgetTuple2 import Ui_WidgetTuple2 -from desWidgetTuple3 import Ui_WidgetTuple3 -from desWidgetTuple4 import Ui_WidgetTuple4 -from desWidgetTuple5 import Ui_WidgetTuple5 -from desWidgetTuple6 import Ui_WidgetTuple6 -from desWidgetTuple7 import Ui_WidgetTuple7 -from desWidgetTuple8 import Ui_WidgetTuple8 -from desWidgetTuple9 import Ui_WidgetTuple9 -from desWidgetTuple10 import Ui_WidgetTuple10 - - -class MonWidgetSimpTuple2 (Ui_WidgetTuple2,MonWidgetSimpTuple): - def __init__(self,node,monSimpDef,nom,objSimp,parentQt,commande): - self.nbValeurs=2 - MonWidgetSimpTuple.__init__(self,node,monSimpDef,nom,objSimp,parentQt,commande) - if self.objSimp.isImmuable() : - self.lineEditVal1.setDisabled(True) - self.lineEditVal2.setDisabled(True) - self.lineEditVal1.setStyleSheet("background:rgb(244,244,244);\n" "border:0px;\n") - self.lineEditVal2.setStyleSheet("background:rgb(244,244,244);\n" "border:0px;\n") - self.lineEditVal1.setToolTip(tr("Valeur non modifiable")) - self.lineEditVal2.setToolTip(tr("Valeur non modifiable")) - else : - self.maCommande.listeAffichageWidget.append(self.lineEditVal1) - -class MonWidgetSimpTuple3 (Ui_WidgetTuple3,MonWidgetSimpTuple): - def __init__(self,node,monSimpDef,nom,objSimp,parentQt,commande): - self.nbValeurs=3 - MonWidgetSimpTuple.__init__(self,node,monSimpDef,nom,objSimp,parentQt,commande) - if self.objSimp.isImmuable() : - self.lineEditVal1.setDisabled(True) - self.lineEditVal2.setDisabled(True) - self.lineEditVal1.setStyleSheet("background:rgb(244,244,244);\n" "border:0px;\n") - self.lineEditVal2.setStyleSheet("background:rgb(244,244,244);\n" "border:0px;\n") - self.lineEditVal1.setToolTip(tr("Valeur non modifiable")) - self.lineEditVal2.setToolTip(tr("Valeur non modifiable")) - else : - self.maCommande.listeAffichageWidget.append(self.lineEditVal1) - -class MonWidgetSimpTuple4 (Ui_WidgetTuple4,MonWidgetSimpTuple): - def __init__(self,node,monSimpDef,nom,objSimp,parentQt,commande): - self.nbValeurs=4 - MonWidgetSimpTuple.__init__(self,node,monSimpDef,nom,objSimp,parentQt,commande) - -class MonWidgetSimpTuple5 (Ui_WidgetTuple5,MonWidgetSimpTuple): - def __init__(self,node,monSimpDef,nom,objSimp,parentQt,commande): - self.nbValeurs=5 - MonWidgetSimpTuple.__init__(self,node,monSimpDef,nom,objSimp,parentQt,commande) - -class MonWidgetSimpTuple6 (Ui_WidgetTuple6,MonWidgetSimpTuple): - def __init__(self,node,monSimpDef,nom,objSimp,parentQt,commande): - self.nbValeurs=6 - MonWidgetSimpTuple.__init__(self,node,monSimpDef,nom,objSimp,parentQt,commande) - -class MonWidgetSimpTuple7 (Ui_WidgetTuple7,MonWidgetSimpTuple): - def __init__(self,node,monSimpDef,nom,objSimp,parentQt,commande): - self.nbValeurs=7 - MonWidgetSimpTuple.__init__(self,node,monSimpDef,nom,objSimp,parentQt,commande) - -class MonWidgetSimpTuple8 (Ui_WidgetTuple8,MonWidgetSimpTuple): - def __init__(self,node,monSimpDef,nom,objSimp,parentQt,commande): - self.nbValeurs=8 - MonWidgetSimpTuple.__init__(self,node,monSimpDef,nom,objSimp,parentQt,commande) - -class MonWidgetSimpTuple9 (Ui_WidgetTuple9,MonWidgetSimpTuple): - def __init__(self,node,monSimpDef,nom,objSimp,parentQt,commande): - self.nbValeurs=9 - MonWidgetSimpTuple.__init__(self,node,monSimpDef,nom,objSimp,parentQt,commande) - -class MonWidgetSimpTuple10 (Ui_WidgetTuple10,MonWidgetSimpTuple): - def __init__(self,node,monSimpDef,nom,objSimp,parentQt,commande): - self.nbValeurs=10 - MonWidgetSimpTuple.__init__(self,node,monSimpDef,nom,objSimp,parentQt,commande) diff --git a/InterfaceQT4/monWidgetSimpTxt.py b/InterfaceQT4/monWidgetSimpTxt.py deleted file mode 100644 index b3f45bec..00000000 --- a/InterfaceQT4/monWidgetSimpTxt.py +++ /dev/null @@ -1,35 +0,0 @@ -# -*- coding: utf-8 -*- -# Copyright (C) 2007-2021 EDF R&D -# -# 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 -# -# Modules Python -from __future__ import absolute_import -import types,os - -# Modules Eficas -from Extensions.i18n import tr - -from desWidgetSimpTxt import Ui_WidgetSimpTxt -from .monWidgetSimpBase import MonWidgetSimpBase - - -class MonWidgetSimpTxt (Ui_WidgetSimpTxt,MonWidgetSimpBase): -# c est juste la taille des differents widgets de base qui change - - def __init__(self,node,monSimpDef,nom,objSimp,parentQt,commande): - MonWidgetSimpBase.__init__(self,node,monSimpDef,nom,objSimp,parentQt,commande) diff --git a/InterfaceQT4/monWidgetTableau.py b/InterfaceQT4/monWidgetTableau.py deleted file mode 100644 index aaeca35b..00000000 --- a/InterfaceQT4/monWidgetTableau.py +++ /dev/null @@ -1,72 +0,0 @@ -# -*- coding: utf-8 -*- -# Copyright (C) 2007-2021 EDF R&D -# -# 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 -# -# Modules Python -from __future__ import absolute_import -import types,os - -# Modules Eficas - -from PyQt5.QtWidgets import QLabel, QSizePolicy, QSpacerItem -from PyQt5.QtCore import QSize - -from InterfaceQT4.feuille import Feuille -from InterfaceQT4.monWidgetPlusieursTuple import MonWidgetPlusieursTuple -from desWidgetPlusieursTuple import Ui_WidgetPlusieursTuple -from desWidgetTableau import Ui_WidgetTableau - -maxLen=3 - - -class MonWidgetTableau (Ui_WidgetTableau,MonWidgetPlusieursTuple): - def __init__(self,node,monSimpDef,nom,objSimp,parentQt,commande): - self.nbValeurs=len(monSimpDef.homo) - MonWidgetPlusieursTuple.__init__(self,node,monSimpDef,nom,objSimp,parentQt,commande) - - sizePolicy = QSizePolicy(QSizePolicy.Preferred, QSizePolicy.Fixed) - sizePolicy.setHorizontalStretch(0) - sizePolicy.setVerticalStretch(0) - - - for i in range(len(monSimpDef.homo)): - nomCol='LECol'+str(i+1) - objCol=QLabel(self) - objCol.setMinimumSize(QSize(80, 25)) - objCol.setText(monSimpDef.homo[i]) - self.LATitre.addWidget(objCol) - setattr(self,nomCol,objCol) - spacerItem = QSpacerItem(40, 20, QSizePolicy.Expanding, QSizePolicy.Minimum) - self.LATitre.addItem(spacerItem) - - - -# monObjTitreCol=getattr(self,nomCol) -# monObjTitreCol.setText(monSimpDef.homo[i]) - -# for i in range(maxLen-len(monSimpDef.homo)): -# index=i+len(monSimpDef.homo)+1 -# nomCol='LECol'+str(index) -# monObjTitreCol=getattr(self,nomCol) -# monObjTitreCol.close() - - self.resize(self.width(),1800) - - def ajoutLineEdit(self,valeur=None,inInit=False): - hauteurAvant=(self.frame.height()) - MonWidgetPlusieursTuple.ajoutLineEdit(self,valeur,inInit) diff --git a/InterfaceQT4/monWidgetUniqueSDCO.py b/InterfaceQT4/monWidgetUniqueSDCO.py deleted file mode 100644 index 4cc423dc..00000000 --- a/InterfaceQT4/monWidgetUniqueSDCO.py +++ /dev/null @@ -1,49 +0,0 @@ -# -*- coding: utf-8 -*- -# Copyright (C) 2007-2021 EDF R&D -# -# 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 -# -# Modules Python -from __future__ import absolute_import -import types,os - -# Modules Eficas -from PyQt4.QtGui import * -from PyQt4.QtCore import * -from Extensions.i18n import tr - -from .feuille import Feuille -from desWidgetUniqueSDCO import Ui_WidgetUniqueSDCO -from .politiquesValidation import PolitiqueUnique -from .qtSaisie import SaisieSDCO - - - - -class MonWidgetUniqueSDCO (Ui_WidgetUniqueSDCO,Feuille,SaisieSDCO): - - def __init__(self,node,monSimpDef,nom,objSimp,parentQt,commande): - #print "dans MonWidgetSDCO" - Feuille.__init__(self,node,monSimpDef,nom,objSimp,parentQt,commande) - self.politique=PolitiqueUnique(self.node,self.editor) - self.parentQt.commandesLayout.insertWidget(-1,self) - self.maCommande.listeAffichageWidget.append(self.LESDCO) - self.AAficher=self.LESDCO - - valeur = self.node.item.getValeur() - if valeur != "" and valeur != None : self.LESDCO.setText(valeur.nom) - self.connect(self.LESDCO,SIGNAL("returnPressed()"),self.LESDCOReturnPressed) diff --git a/InterfaceQT4/monWidgetVide.py b/InterfaceQT4/monWidgetVide.py deleted file mode 100644 index a924bd19..00000000 --- a/InterfaceQT4/monWidgetVide.py +++ /dev/null @@ -1,40 +0,0 @@ -# -*- coding: utf-8 -*- -# Copyright (C) 2007-2021 EDF R&D -# -# 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 -# -# Modules Python -from __future__ import absolute_import -import types,os - -# Modules Eficas -from Extensions.i18n import tr - -from .feuille import Feuille -from desWidgetVide import Ui_WidgetVide -from InterfaceQT4.politiquesValidation import PolitiqueUnique - -class MonWidgetVide (Ui_WidgetVide,Feuille): - - def __init__(self,node,monSimpDef,nom,objSimp,parentQt,commande): - - Feuille.__init__(self,node,monSimpDef,nom,objSimp,parentQt,commande) - self.politique=PolitiqueUnique(self.node,self.editor) - t=self.node.item.object.definition.type[0].__name__ - self.lineEditVal.setText('Attend un objet de type '+t+'. Il faut en créer') - self.parentQt.commandesLayout.insertWidget(-1,self) - #PN il faut remplir le type diff --git a/InterfaceQT4/politiquesValidation.py b/InterfaceQT4/politiquesValidation.py deleted file mode 100644 index bf20a1dd..00000000 --- a/InterfaceQT4/politiquesValidation.py +++ /dev/null @@ -1,294 +0,0 @@ -# -*- coding: utf-8 -*- -# Copyright (C) 2007-2021 EDF R&D -# -# 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 -# -# Modules Python -from __future__ import absolute_import -try : - from builtins import range -except : pass - -import types -from Accas import PARAMETRE -from Extensions.i18n import tr - - -#------------------ -class Validation(object) : -#------------------ - def __init__(self,node,parent) : - self.node=node - self.parent=parent - - - def testeUneValeur(self,valeurentree): - commentaire = None - #import traceback - #traceback.print_stack() - valeur,validite=self.node.item.evalValeur(valeurentree) - if not validite : - commentaire = "impossible d'evaluer : %s " %repr(valeurentree) - return valeur,validite,commentaire - if self.node.item.waitTxm() and not( type(valeur) == str) : valeur=str(valeur) - - testtype,commentaire = self.node.item.object.verifType(valeur) - if not testtype : - return valeur,0,commentaire - - valide=self.node.item.valideItem(valeur) - if type(valide) == tuple: - validite,commentaire=valide - else : - validite=valide - commentaire=" " - - if not validite and commentaire is None: - commentaire = "impossible d'evaluer : %s " %repr(valeurentree) - #print ('ds testeUneValeur', valeur, validite, commentaire) - return valeur, validite, commentaire - -# ---------------------------------------------------------------------------------------- -# Methodes utilisees pour la manipulation des items en notation scientifique -# a mettre au point -# ---------------------------------------------------------------------------------------- - def setValeurTexte(self,texteValeur) : - try : - if "R" in self.node.item.object.definition.type: - if texteValeur[0] != "'": - clef=eval(texteValeur) - if str(clef) != str(texteValeur) : - self.node.item.object.initModif() - clefobj=self.node.item.object.getNomConcept() - if not clefobj in self.parent.appliEficas.dict_reels: - self.parent.appliEficas.dict_reels[clefobj] = {} - self.parent.appliEficas.dict_reels[clefobj][clef]=texteValeur - self.parent.appliEficas.dict_reels[clefobj] - if clefobj=="" : - if not self.node.item.object.etape in self.parent.appliEficas.dict_reels : - self.parent.appliEficas.dict_reels[self.node.item.object.etape] = {} - self.parent.appliEficas.dict_reels[self.node.item.object.etape][clef]=texteValeur - self.node.item.object.finModif() - except: - pass - - def getValeurTexte(self,valeur) : - valeurTexte=valeur - if valeur == None : return valeur - from decimal import Decimal - if isinstance(valeur,Decimal) : - if self.node.waitTxm() and not self.isParam(valeur) : return "'"+str(valeur)+"'" - else : return(valeur) - if "R" in self.node.item.object.definition.type: - clefobj=self.node.item.object.getNomConcept() - if clefobj in self.parent.appliEficas.dict_reels: - if valeur in self.parent.appliEficas.dict_reels[clefobj] : - valeurTexte=self.parent.appliEficas.dict_reels[clefobj][valeur] - else : - if str(valeur).find('.') == -1 and str(valeur).find('e') == -1 and str(valeur).find('E'): - # aucun '.' n'a ete trouve dans valeur --> on en rajoute un a la fin - if (self.isParam(valeur)): - return valeur - else: - try : - val2=eval(str(valeur)+'.') - except : - pass - return valeurTexte - - def isParam(self,valeur) : - for param in self.node.item.jdc.params: - if ((repr(param) == repr(valeur)) or (str(param)==str(valeur))): - return 1 - return 0 - - def ajoutDsDictReel(self,texteValeur): - # le try except est necessaire pour saisir les parametres - # on enleve l erreur de saisie 00 pour 0 - if str(texteValeur)== '00' : return - try : - if "R" in self.node.item.object.definition.type: - if str(texteValeur)[0] != "'": - clef=eval(texteValeur) - if str(clef) != str(texteValeur) : - clefobj=self.node.item.object.getNomConcept() - if not clefobj in self.parent.appliEficas : - self.parent.appliEficas.dict_reels[clefobj] = {} - self.parent.appliEficas.dict_reels[clefobj][clef]=texteValeur - if clefobj=="" : - if not self.node.item.object.etape in self.parent.appliEficas.dict_reels : - self.parent.appliEficas.dict_reels[self.node.item.object.etape] = {} - self.parent.appliEficas.dict_reels[self.node.item.object.etape][clef]=texteValeur - - except: - pass - - def ajoutDsDictReelEtape(self): - try: - if self.node.item.object in self.parent.appliEficas.dict_reels: - self.parent.appliEficas.dict_reels[self.node.item.sdnom]=self.parent.appliEficas.dict_reels[self.node.item.object] - del self.parent.appliEficas.dict_reels[self.node.item.object] - except : - pass - - -#------------------------------------ -class PolitiqueUnique(Validation) : -#------------------------------------ - """ - classe servant pour les entrees ne demandant qu un mot clef - """ - def __init__(self,node,parent): - Validation.__init__(self,node,parent) - - def recordValeur(self,valeurentree): - if self.parent.modified == 'n' : self.parent.initModif() - ancienneVal = self.node.item.getValeur() - valeur,validite,commentaire =self.testeUneValeur(valeurentree) - if validite and ('R' in self.node.item.object.definition.type) and not(isinstance(valeur,PARAMETRE)) : - s=valeurentree - if (s.find('.')== -1 and s.find('e')== -1 and s.find('E')==-1) : s=s+'.' - valeur,validite,commentaire =self.testeUneValeur(s) - if validite : - validite=self.node.item.setValeur(valeur) - if self.node.item.isValid(): - commentaire = tr("Valeur du mot-cle enregistree") - #commentaire = "Valeur du mot-cle enregistree" - self.setValeurTexte(str(valeurentree)) - else: - cr = self.node.item.getCr() - commentaire = tr("Valeur du mot-cle non autorisee ")+cr.getMessFatal() - self.node.item.setValeur(ancienneVal) - return validite, commentaire - - -#-------------------------------------- -class PolitiquePlusieurs(Validation): -#-------------------------------------- - """ - classe servant pour les entrees ne demandant qu un mot clef - """ - def __init__(self,node,parent) : - #print "ds PolitiquePlusieurs" - self.node=node - self.parent=parent - #print self.node - #print self.parent - - - def ajoutValeurs(self,listevaleur,index,listecourante): - listeRetour=[] - commentaire="Nouvelle valeur acceptee" - commentaire2="" - valide=1 - if listevaleur==None: return - if listevaleur=="": return - if not( type(listevaleur) in (list,tuple)) : - listevaleur=tuple(listevaleur) - # on verifie que la cardinalite max n a pas ete atteinte - min,max = self.node.item.getMinMax() - if len(listecourante) + len(listevaleur) > max : - commentaire="La liste atteint le nombre maximum d'elements : "+ str(max) +" ,ajout refuse" - return False,commentaire,commentaire2,listeRetour - - for valeur in listevaleur : - # On teste le type de la valeur - valeurScientifique=valeur - valide=self.node.item.valideItem(valeur) - if not valide : - try : - valeur,valide=self.node.item.evalValeur(valeur) - valide,commentaire2 = self.node.item.object.verifType(valeur) - except : - #return testtype,commentaire,"",listeRetour - pass - if not valide: - if commentaire.find("On attend un chaine") > 1 : - commentaire="Valeur "+str(valeur)+ " incorrecte : ajout a la liste refuse: On attend une chaine de caracteres < 8" - else : - commentaire="Valeur "+str(valeur)+ " incorrecte : ajout a la liste refuse" - if commentaire2== "" :commentaire2=self.node.item.infoErreurItem() - return valide,commentaire,commentaire2,listeRetour - - # On valide la liste obtenue - encorevalide=self.node.item.valideListePartielle(valeur,listecourante) - if not encorevalide : - commentaire2=self.node.item.infoErreurListe() - # On traite le cas ou la liste n est pas valide pour un pb de cardinalite - min,max = self.node.item.getMinMax() - if len(listecourante) + 1 >= max : - commentaire="La liste atteint le nombre maximum d'elements : "+ str(max) +" ,ajout refuse" - return valide,commentaire,commentaire2,listeRetour - if len(listecourante) + 1 > min : - commentaire="" - return valide,commentaire,commentaire2,listeRetour - # On ajoute la valeur testee a la liste courante et a la liste acceptee - self.ajoutDsDictReel(valeurScientifique) - listecourante.insert(index,valeur) - index=index+1 - listeRetour.append(valeur) - - return valide,commentaire,commentaire2,listeRetour - - def ajoutTuple(self,valeurTuple,listecourante): - listeRetour=[] - commentaire="Nouvelle valeur acceptee" - commentaire2="" - valide=1 - if valeurTuple==None: return - if valeurTuple==['']: return - # On teste le type de la valeur - valide=self.node.item.valideItem(valeurTuple) - if not valide : - try : - valeur,valide=self.node.item.evalValeur(valeurTuple) - valide = self.node.item.valideItem(valeur) - except : - pass - if not valide: - commentaire="Valeur "+str(valeurTuple)+ " incorrecte : ajout a la liste refuse" - commentaire2=self.node.item.infoErreurItem() - return valide,commentaire,commentaire2,listeRetour - - # On valide la liste obtenue - encorevalide=self.node.item.valideListePartielle(valeurTuple,listecourante) - if not encorevalide : - commentaire2=self.node.item.infoErreurListe() - return valide,commentaire,commentaire2,listeRetour - listeRetour.append(valeurTuple) - return valide,commentaire,commentaire2,listeRetour - - def ajoutNTuple(self,liste): - commentaire="Nouvelles valeurs acceptee" - commentaire2="" - valide=self.node.item.valideListePartielle(None,liste) - print ('uuuuuuuuuuu',valide) - if not valide : - commentaire2=self.node.item.infoErreurListe() - return valide,commentaire,commentaire2 - - def recordValeur(self,liste,dejaValide=True): - ancienneVal = self.node.item.getValeur() - validite=self.node.item.setValeur(liste) - if validite : self.node.item.initModif() - if self.node.item.isValid(): - commentaire = tr("Valeur du mot-cle enregistree") - else: - cr = self.node.item.getCr() - commentaire = tr("Valeur du mot-cle non autorisee ")+cr.getMessFatal() - self.node.item.setValeur(ancienneVal) - return validite, commentaire diff --git a/InterfaceQT4/qtEficas.py b/InterfaceQT4/qtEficas.py deleted file mode 100755 index 32896393..00000000 --- a/InterfaceQT4/qtEficas.py +++ /dev/null @@ -1,1028 +0,0 @@ -#!/usr/bin/env python -# -*- coding: iso-8859-1 -*- -# Copyright (C) 2007-2021 EDF R&D -# -# 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 -# - -from __future__ import absolute_import -from __future__ import print_function -try : - from builtins import str -except : pass - -import os, sys - - -from PyQt5.QtWidgets import QApplication, QMainWindow, QGridLayout, QBoxLayout, QMenu, QAction, QMessageBox -from PyQt5.QtGui import QIcon -from PyQt5.QtCore import Qt, QSize - - -from Editeur import session -from myMain import Ui_Eficas -from InterfaceQT4.viewManager import MyViewManager -from InterfaceQT4.qtEficasSsIhm import AppliSsIhm - -from Extensions.i18n import tr -from Extensions.eficas_exception import EficasException -from Extensions import param2 - - -class Appli(AppliSsIhm,Ui_Eficas,QMainWindow): - """ - Class implementing the main user interface. - """ - def __init__(self,code=None,salome=1,parent=None, multi=False,langue='en',ssIhm=False, labelCode=None): - """ - Constructor - """ - print ('langue en') - if ssIhm == True : - print ('mauvaise utilisation de la classe Appli. Utiliser AppliSsIm SVP') - exit() - - AppliSsIhm.__init__(self,code,salome,parent,multi=multi,langue=langue,ssIhm=True, labelCode=labelCode) - QMainWindow.__init__(self,parent) - Ui_Eficas.__init__(self) - - self.ssIhm=False - self.multi=multi - self.demande=multi # voir PSEN - - - if self.multi == False : - self.definitCode(code,None) - if code==None: return - else : - self.definitCode(code,None) - if code==None: return - print ('il faut trouver le chemin du code') - return - - self.suiteTelemac=False - if hasattr (self, 'maConfiguration') : - if self.maConfiguration.demandeLangue : - from InterfaceQT4.monChoixLangue import MonChoixLangue - widgetLangue = MonChoixLangue(self) - ret=widgetLangue.exec_() - self.suiteTelemac=self.maConfiguration.suiteTelemac - - - if not self.salome and hasattr (self, 'maConfiguration') and hasattr(self.maConfiguration,'lang') : self.langue=self.maConfiguration.lang - from Extensions import localisation - app=QApplication - if hasattr (self, 'maConfiguration') : localisation.localise(None,self.langue,translatorFichier=self.maConfiguration.translatorFichier) - self.setupUi(self) - - #if parent != None : self.parentCentralWidget = parent.centralWidget() - #else : self.parentCentralWidget = None - - if not self.salome : - if hasattr (self, 'maConfiguration') and hasattr(self.maConfiguration,'taille') : self.taille=self.maConfiguration.taille - else : self.taille=1700 - - self.resize(self.taille,self.height()) - - - icon = QIcon(self.repIcon+"/parametres.png") - self.actionParametres.setIcon(icon) - if hasattr (self, 'maConfiguration') and self.maConfiguration.boutonDsMenuBar : - self.frameEntete.setMaximumSize(QSize(16777215,100)) - self.frameEntete.setMinimumSize(QSize(0,100)) - if hasattr (self, 'maConfiguration') and self.maConfiguration.enleverActionStructures : - self.enleverActionsStructures() - if hasattr (self, 'maConfiguration') and self.maConfiguration.enleverParametres : - self.enleverParametres() - if hasattr (self, 'maConfiguration') and self.maConfiguration.enleverSupprimer : - self.enleverSupprimer() - - - self.myQtab.removeTab(0) - self.blEnteteGlob = QBoxLayout(2,self.frameEntete) - self.blEnteteGlob.setSpacing(0) - self.blEnteteGlob.setContentsMargins(0,0,0,0) - - self.blEntete = QBoxLayout(0) - self.blEntete.insertWidget(0,self.toolBar) - self.blEntete.insertWidget(0,self.menubar) - self.blEnteteGlob.insertLayout(0,self.blEntete) - - - - if hasattr (self, 'maConfiguration') and self.maConfiguration.boutonDsMenuBar : - self.blEnteteCommmande = QBoxLayout(0) - self.blEnteteCommmande.insertWidget(0,self.toolBarCommande) - self.toolBarCommande.setIconSize(QSize(96,96)) - self.blEnteteGlob.insertLayout(-1,self.blEnteteCommmande) - else : - self.toolBarCommande.close() - - - if hasattr (self, 'maConfiguration') and self.maConfiguration.closeEntete==True and self.salome: self.closeEntete() - - eficas_root_dir = os.path.dirname(os.path.dirname(os.path.abspath(__file__))) - - self.viewmanager = MyViewManager(self) - self.recentMenu=QMenu(tr('&Recents')) - #self.menuFichier.insertMenu(self.actionOuvrir,self.recentMenu) - - # actionARemplacer ne sert que pour l insert Menu - self.menuFichier.insertMenu(self.actionARemplacer ,self.recentMenu) - self.menuFichier.removeAction(self.actionARemplacer) - self.connecterSignaux() - self.toolBar.addSeparator() - - - if self.code != None : self.construitMenu() - - self.setWindowTitle(self.VERSION_EFICAS) - try : - #if 1 : - #print ('attention try devient if 1') - self.ouvreFichiers() - except EficasException as exc: - #except: - print ("je suis dans le except") - if self.salome == 0 : exit() - - #self.adjustSize() - - def closeEntete(self): - self.menuBar().close() - self.toolBar.close() - self.frameEntete.close() - - def definitCode(self,code,ssCode) : - self.code=code - self.ssCode=ssCode - if self.code==None : - self.cleanPath() - from InterfaceQT4.monChoixCode import MonChoixCode - widgetChoix = MonChoixCode(self) - ret=widgetChoix.exec_() - #widgetChoix.show() - if self.code == None:return # pour le cancel de la fenetre choix code - AppliSsIhm.definitCode(self,self.code,ssCode) - - #PN --> pb d exception qui font planter salome - # plus supporte en python 3 - #app=QApplication - #if hasattr(prefsCode,'encoding'): - # import sys - # reload(sys) - # sys.setdefaultencoding(prefsCode.encoding) - - def construitMenu(self): - self.initPatrons() - self.initRecents() - self.initAides() - for intituleMenu in ("menuTraduction","menuOptions","menuMesh","menuExecution","menuN1"): - if hasattr(self,intituleMenu): - menu=getattr(self,intituleMenu) - menu.setAttribute(Qt.WA_DeleteOnClose) - menu.close() - delattr(self,intituleMenu) - for intituleAction in ("actionExecution","actionSaveRun"): - if hasattr(self,intituleAction): - action=getattr(self,intituleAction) - self.toolBar.removeAction(action) - if self.code.upper() in Appli.__dict__: - Appli.__dict__[self.code.upper()](self,) - if self.suiteTelemac : self.lookSuiteTelemac() - self.metMenuAJourUtilisateurs() - if hasattr (self, 'maConfiguration') and self.maConfiguration.ajoutExecution : - self.ajoutExecution() - - def initAides(self): - #print "je passe la" - repAide=os.path.dirname(os.path.abspath(__file__)) - fileName='index.html' - self.docPath=repAide+"/../Aide" - if hasattr(self,'maConfiguration') and hasattr(self.maConfiguration,'docPath') : self.docPath=self.maConfiguration.docPath - if hasattr(self,'maConfiguration') and hasattr(self.maConfiguration,'fileName'):fileName=self.maConfiguration.fileName - self.fileDoc=os.path.join(self.docPath,fileName) - self.actionCode.setText(tr("Aide specifique ")+str(self.code)) - if not os.path.isfile(self.fileDoc) : - self.fileDoc="" - self.docPath="" - self.actionCode.setEnabled(False) - return - - self.actionCode.setEnabled(True) - self.menuAide.addAction(self.actionCode) - - def newN1(self): - ssCode=None - code="PSEN_N1" - self.cleanPath() - dirCode=os.path.abspath(os.path.join(os.path.abspath(__file__),'../..',"ProcessOutputs_Eficas")) - sys.path.insert(0,dirCode) - self.code=code - self.definitCode(code,ssCode) - self.initRecents() - self.multi=True - self.demande=False - self.fileNew() - - def newPSEN(self): - ssCode=None - code="PSEN" - self.cleanPath() - dirCode=os.path.abspath(os.path.join(os.path.abspath(__file__),'../..',code)) - sys.path.insert(0,dirCode) - self.code=code - self.definitCode(code,ssCode) - self.multi=True - self.demande=False - self.fileNew() - - def ajoutN1(self): - return - self.menuN1 = self.menubar.addMenu(tr("Process Output")) - self.actionN1 = QAction(self) - self.actionN1.setText(tr("Process Output")) - self.menuN1.addAction(self.actionN1) - self.actionN1.triggered.connect(self.newN1) - - - if hasattr(self,'actionOpenProcess'):return - - self.actionOpenProcess = QAction(self) - self.actionOpenProcess.setText(tr("Open Process_Output File")) - self.menuN1.addAction(self.actionOpenProcess) - self.actionOpenProcess.triggered.connect(self.openProcess) - - def ajoutExecution(self): - self.menuExecution = self.menubar.addMenu(tr("&Run")) - self.actionExecution = QAction(self) - if sys.platform[0:5]=="linux": - icon6 = QIcon(self.repIcon+"/roue.png") - self.actionExecution.setIcon(icon6) - else : - self.actionExecution.setText(tr("Run")) - self.actionExecution.setObjectName("actionExecution") - self.menuExecution.addAction(self.actionExecution) - if not(self.actionExecution in self.toolBar.actions()): - self.toolBar.addAction(self.actionExecution) - self.actionExecution.setText(tr("Run")) - self.actionExecution.triggered.connect(self.run) - - def ajoutSauveExecution(self): - self.actionSaveRun = QAction(self) - icon7 = QIcon(self.repIcon+"/export_MAP.png") - self.actionSaveRun.setIcon(icon7) - self.actionSaveRun.setObjectName("actionSaveRun") - self.menuExecution.addAction(self.actionSaveRun) - if not(self.actionSaveRun in self.toolBar.actions()): - self.toolBar.addAction(self.actionSaveRun) - self.actionSaveRun.setText(tr("Save Run")) - self.actionSaveRun.triggered.connect(self.saveRun) - - def griserActionsStructures(self): - self.actionCouper.setEnabled(False) - self.actionColler.setEnabled(False) - self.actionCopier.setEnabled(False) - self.actionSupprimer.setEnabled(False) - - def enleverActionsStructures(self): - self.toolBar.removeAction(self.actionCopier) - self.toolBar.removeAction(self.actionColler) - self.toolBar.removeAction(self.actionCouper) - self.menuEdition.removeAction(self.actionCouper) - self.menuEdition.removeAction(self.actionCopier) - self.menuEdition.removeAction(self.actionColler) - - - def enleverParametres(self): - self.toolBar.removeAction(self.actionParametres) - self.menuJdC.removeAction(self.actionParametres) - - def enleverSupprimer(self): - self.toolBar.removeAction(self.actionSupprimer) - - def enlevernewInclude(self): - self.actionNouvel_Include.setVisible(False) - - def enleverRechercherDsCatalogue(self): - self.actionRechercherDsCatalogue.setVisible(False) - - def connectRechercherDsCatalogue(self): - if hasattr(self,'rechercherDejaLa') : return - self.rechercherDejaLa=True - self.actionRechercherDsCatalogue.triggered.connect(self.handleRechercherDsCatalogue) - - def ajoutSortieComplete(self): - if hasattr(self,'actionSortieComplete') : return - self.actionSortieComplete = QAction(self) - self.actionSortieComplete.setText(tr("Sortie Complete")) - self.menuFichier.insertAction(self.actionEnregistrer_sous,self.actionSortieComplete) - self.actionSortieComplete.triggered.connect(self.handleSortieComplete) - - - def MT(self): - self.enlevernewInclude() - self.toolBar.addSeparator() - - - def ZCRACKS(self): - self.enlevernewInclude() - self.toolBar.addSeparator() - self.ajoutExecution() - - self.menuOptions = self.menubar.addMenu("menuOptions") - self.menuOptions.addAction(self.actionParametres_Eficas) - self.menuOptions.setTitle(tr("Options")) - - def ADAO(self): - self.enleverActionsStructures() - self.enlevernewInclude() - - def ASTER(self) : - self.menuTraduction = self.menubar.addMenu("menuTraduction") - self.menuTraduction.addAction(self.actionTraduitV11V12) - self.menuTraduction.addAction(self.actionTraduitV10V11) - self.menuTraduction.addAction(self.actionTraduitV9V10) - self.menuTraduction.setTitle(tr("Traduction")) - - self.menuFichier.addAction(self.actionSauveLigne) - - self.menuOptions = self.menubar.addMenu("menuOptions") - self.menuOptions.addAction(self.actionParametres_Eficas) - self.menuOptions.addAction(self.actionLecteur_Pdf) - self.menuOptions.setTitle(tr("Options")) - - def CARMEL3D(self): - #if self.salome == 0 : return - self.enlevernewInclude() - self.menuMesh = self.menubar.addMenu(tr("Gestion Maillage")) - self.menuMesh.setObjectName("Mesh") - self.menuMesh.addAction(self.actionChercheGrpMaille) - #self.griserActionsStructures() - - def CARMELCND(self): - self.enlevernewInclude() - self.enleverRechercherDsCatalogue() - self.ajoutExecution() - self.ajoutSauveExecution() - self.griserActionsStructures() - - def MAP(self): - self.enlevernewInclude() - self.toolBar.addSeparator() - self.ajoutExecution() - self.ajoutSauveExecution() - self.menuOptions = self.menubar.addMenu("menuOptions") - self.menuOptions.addAction(self.actionParametres_Eficas) - self.menuOptions.setTitle(tr("Options")) - - def MAPIDENTIFICATION(self): - self.enlevernewInclude() - self.enleverSupprimer() - #self.ajoutExecution() - self.enleverRechercherDsCatalogue() - self.enleverActionsStructures() - self.enleverParametres() - - def PSEN(self): - try : self.action_Nouveau.triggered.disconnect(self.fileNew) - except : pass - try : self.action_Nouveau.triggered.disconnect(self.newPSEN) - except : pass - - self.action_Nouveau.triggered.connect(self.newPSEN) - self.enleverActionsStructures() - self.enleverParametres() - self.enleverRechercherDsCatalogue() - self.enlevernewInclude() - self.ajoutExecution() - self.ajoutN1() - self.ajoutHelpPSEN() - self.ajoutIcones() - - def PSEN_N1(self): - self.enleverActionsStructures() - self.enleverParametres() - self.enleverRechercherDsCatalogue() - self.enlevernewInclude() - self.ajoutExecution() - self.ajoutIcones() - - def TELEMAC(self): - self.enleverActionsStructures() - self.enlevernewInclude() - self.connectRechercherDsCatalogue() - self.ajoutSortieComplete() - - def lookSuiteTelemac(self): - self.enleverActionsStructures() - self.enlevernewInclude() - self.enleverParametres() - self.enleverSupprimer() - self.enleverRechercherDsCatalogue() - - def ajoutHelpPSEN(self): - self.actionParametres_Eficas.setText('Help PSEN') - self.actionParametres_Eficas.triggered.connect(self.aidePSEN) - - def VIMMP(self): - #print ('PN : todo connecter RechercherDsCatalogue') - pass - - - def ChercheGrpMesh(self): - Msg,listeGroup=self.ChercheGrpMeshInSalome() - if Msg == None : - self.viewmanager.handleAjoutGroup(listeGroup) - else : - print ("il faut gerer les erreurs") - - def ChercheGrpMaille(self): - # Normalement la variable self.salome permet de savoir si on est ou non dans Salome - try: - Msg,listeGroup=self.ChercheGrpMailleInSalome() # recherche dans Salome - #Msg = None; listeGroup = None # recherche manuelle, i.e., sans Salome si ligne precedente commentee - except: - raise ValueError('Salome non ouvert') - if Msg == None : - self.viewmanager.handleAjoutGroup(listeGroup) - else : - print ("il faut gerer les erreurs") - - - def ChercheGrp(self): - #Msg,listeGroup=self.ChercheGrpMailleInSalome() - #if Msg == None : - # self.viewmanager.handleAjoutGroup(listeGroup) - #else : - #print "il faut gerer " - pass - - - def ajoutIcones(self) : - # Pour pallier les soucis de repertoire d icone - #print self.repIcon - icon = QIcon(self.repIcon+"/new_file.png") - self.action_Nouveau.setIcon(icon) - icon1 = QIcon(self.repIcon+"/ouvrir.png") - self.actionOuvrir.setIcon(icon1) - icon2 = QIcon(self.repIcon+"/save.png") - self.actionEnregistrer.setIcon(icon2) - icon6 = QIcon(self.repIcon+"/delete.png") - self.actionSupprimer.setIcon(icon6) - icon7 = QIcon(self.repIcon+"/roue.png") - self.actionExecution.setIcon(icon7) - - - - - def connecterSignauxQT4(self) : - self.connect(self.recentMenu,SIGNAL('aboutToShow()'),self.handleShowRecentMenu) - - self.connect(self.action_Nouveau,SIGNAL("triggered()"),self.fileNew) - self.connect(self.actionNouvel_Include,SIGNAL("triggered()"),self.newInclude) - self.connect(self.actionOuvrir,SIGNAL("triggered()"),self.fileOpen) - self.connect(self.actionEnregistrer,SIGNAL("triggered()"),self.fileSave) - self.connect(self.actionEnregistrer_sous,SIGNAL("triggered()"),self.fileSaveAs) - self.connect(self.actionFermer,SIGNAL("triggered()"),self.fileClose) - self.connect(self.actionFermer_tout,SIGNAL("triggered()"),self.fileCloseAll) - self.connect(self.actionQuitter,SIGNAL("triggered()"),self.fileExit) - - self.connect(self.actionEficas,SIGNAL("triggered()"),self.aidePPal) - self.connect(self.actionVersion,SIGNAL("triggered()"),self.version) - self.connect(self.actionParametres,SIGNAL("triggered()"),self.gestionParam) - - self.connect(self.actionCouper,SIGNAL("triggered()"),self.editCut) - self.connect(self.actionCopier,SIGNAL("triggered()"),self.editCopy) - self.connect(self.actionColler,SIGNAL("triggered()"),self.editPaste) - self.connect(self.actionSupprimer,SIGNAL("triggered()"),self.supprimer) - self.connect(self.actionRechercher,SIGNAL("triggered()"),self.rechercher) - self.connect(self.actionDeplier_replier,SIGNAL("triggered()"),self.handleDeplier) - - self.connect(self.actionRapport_de_Validation,SIGNAL("triggered()"),self.jdcRapport) - self.connect(self.actionRegles_du_JdC,SIGNAL("triggered()"),self.jdcRegles) - self.connect(self.actionFichier_Source,SIGNAL("triggered()"),self.jdcFichierSource) - self.connect(self.actionFichier_Resultat,SIGNAL("triggered()"),self.visuJdcPy) - - - - - # Pour Aster - self.actionTraduitV9V10 = QAction(self) - self.actionTraduitV9V10.setObjectName("actionTraduitV9V10") - self.actionTraduitV9V10.setText(tr("TraduitV9V10")) - self.actionTraduitV10V11 = QAction(self) - self.actionTraduitV10V11.setObjectName("actionTraduitV10V11") - self.actionTraduitV10V11.setText(tr("TraduitV10V11")) - self.actionTraduitV11V12 = QAction(self) - self.actionTraduitV11V12.setObjectName("actionTraduitV11V12") - self.actionTraduitV11V12.setText(tr("TraduitV11V12")) - self.actionSauveLigne = QAction(self) - self.actionSauveLigne.setText(tr("Sauve Format Ligne")) - - #self.connect(self.actionParametres_Eficas,SIGNAL("triggered()"),self.optionEditeur) - self.connect(self.actionLecteur_Pdf,SIGNAL("triggered()"),self.optionPdf) - self.connect(self.actionTraduitV9V10,SIGNAL("triggered()"),self.traductionV9V10) - self.connect(self.actionTraduitV10V11,SIGNAL("triggered()"),self.traductionV10V11) - self.connect(self.actionTraduitV11V12,SIGNAL("triggered()"),self.traductionV11V12) - self.connect(self.actionSauveLigne,SIGNAL("triggered()"),self.sauveLigne) - - - # Pour Carmel - self.actionChercheGrpMaille = QAction(self) - self.actionChercheGrpMaille.setText(tr("Acquiert groupe mailles")) - self.connect(self.actionChercheGrpMaille,SIGNAL("triggered()"),self.ChercheGrpMaille) - - # Pour CarmelCND - self.actionChercheGrp = QAction(self) - self.actionChercheGrp.setText(tr("Acquisition Groupe Maille")) - self.connect(self.actionChercheGrp,SIGNAL("triggered()"),self.ChercheGrp) - - # Pour Aide - self.actionCode = QAction(self) - self.actionCode.setText(tr("Specificites Maille")) - self.connect(self.actionCode,SIGNAL("triggered()"),self.aideCode) - - def connecterSignaux(self) : - - self.recentMenu.aboutToShow.connect(self.handleShowRecentMenu) - self.action_Nouveau.triggered.connect(self.fileNew) - self.actionNouvel_Include.triggered.connect(self.newInclude) - self.actionOuvrir.triggered.connect(self.fileOpen) - self.actionEnregistrer.triggered.connect(self.fileSave) - self.actionEnregistrer_sous.triggered.connect(self.fileSaveAs) - self.actionFermer.triggered.connect(self.fileClose) - self.actionFermer_tout.triggered.connect(self.fileCloseAll) - self.actionQuitter.triggered.connect(self.fileExit) - - self.actionEficas.triggered.connect(self.aidePPal) - self.actionVersion.triggered.connect(self.version) - self.actionParametres.triggered.connect(self.gestionParam) - self.actionCommentaire.triggered.connect(self.ajoutCommentaire) - - self.actionCouper.triggered.connect(self.editCut) - self.actionCopier.triggered.connect(self.editCopy) - self.actionColler.triggered.connect(self.editPaste) - self.actionSupprimer.triggered.connect(self.supprimer) - self.actionRechercher.triggered.connect(self.rechercher) - self.actionDeplier_replier.triggered.connect(self.handleDeplier) - - self.actionRapport_de_Validation.triggered.connect(self.jdcRapport) - self.actionRegles_du_JdC.triggered.connect(self.jdcRegles) - self.actionFichier_Source.triggered.connect(self.jdcFichierSource) - self.actionFichier_Resultat.triggered.connect(self.visuJdcPy) - self.actionAfficher_l_Arbre.triggered.connect(self.ouvreArbre) - self.actionCacher_l_Arbre.triggered.connect(self.fermeArbre) - - - # Pour Aster - self.actionTraduitV9V10 = QAction(self) - self.actionTraduitV9V10.setObjectName("actionTraduitV9V10") - self.actionTraduitV9V10.setText(tr("TraduitV9V10")) - self.actionTraduitV10V11 = QAction(self) - self.actionTraduitV10V11.setObjectName("actionTraduitV10V11") - self.actionTraduitV10V11.setText(tr("TraduitV10V11")) - self.actionTraduitV11V12 = QAction(self) - self.actionTraduitV11V12.setObjectName("actionTraduitV11V12") - self.actionTraduitV11V12.setText(tr("TraduitV11V12")) - self.actionSauveLigne = QAction(self) - self.actionSauveLigne.setText(tr("Sauve Format Ligne")) - - #self.actionParametres_Eficas.triggered.connect(self.optionEditeur) - self.actionTraduitV9V10.triggered.connect(self.traductionV9V10) - self.actionTraduitV10V11.triggered.connect(self.traductionV10V11) - self.actionTraduitV11V12.triggered.connect(self.traductionV11V12) - self.actionSauveLigne.triggered.connect(self.sauveLigne) - - # Pour Carmel - self.actionChercheGrpMaille = QAction(self) - self.actionChercheGrpMaille.setText(tr("Acquiert Groupe Maille")) - - # Pour CarmelCND - self.actionChercheGrp = QAction(self) - self.actionChercheGrp.setText(tr("Accquisition Groupe Maille")) - self.actionChercheGrp.triggered.connect(self.ChercheGrp) - - # Pour Aide - self.actionCode = QAction(self) - self.actionCode.setText(tr("Specificites Maille")) - self.actionCode.triggered.connect(self.aideCode) - self.connectRechercherDsCatalogue() - - - def handleDeplier(self): - self.viewmanager.handleDeplier() - - def ajoutCommentaire(self): - self.viewmanager.ajoutCommentaire() - - def ouvreFichiers(self) : - # Ouverture des fichiers de commandes donnes sur la ligne de commande - cwd=os.getcwd() - self.dir=cwd - for study in session.d_env.studies: - os.chdir(cwd) - d=session.getUnit(study,self) - self.viewmanager.handleOpen(fichier=study["comm"],units=d) - - - def getSource(self,file): - # appele par Editeur/session.py - import convert - p=convert.plugins['python']() - p.readfile(file) - texte=p.convert('execnoparseur') - return texte - - def initPatrons(self) : - # Mise a jour du menu des fichiers recemment ouverts - from Editeur import listePatrons - if not(self.code in listePatrons.sous_menus) : - if hasattr(self,"menuPatrons"): - self.menuPatrons.setAttribute(Qt.WA_DeleteOnClose) - self.menuPatrons.close() - delattr(self,"menuPatrons") - return - if (not hasattr(self,"menuPatrons")): - self.menuPatrons = QMenu(self.menubar) - self.menuPatrons.setObjectName("menuPatrons") - self.menubar.addAction(self.menuPatrons.menuAction()) - self.menuPatrons.setTitle(tr("Patrons")) - else : - self.menuPatrons.clear() - self.listePatrons = listePatrons.listePatrons(self.code) - idx = 0 - for nomSsMenu in self.listePatrons.liste: - ssmenu=self.menuPatrons.addMenu(nomSsMenu) - for fichier in self.listePatrons.liste[nomSsMenu]: - id = ssmenu.addAction(fichier) - self.ficPatrons[id]=fichier - self.id.triggered.connect(self.handleOpenPatrons) - # self.Patrons.setItemParameter(id,idx) - idx=idx+1 - - def initRecents(self): - self.recent = [] - try : - #if sys.platform[0:5]=="linux" : - #rep=os.path.join(os.environ['HOME'],'.config/Eficas',self.code) - rep=os.path.join(os.path.expanduser("~"),'.config/Eficas',self.code) - #else : - # rep=os.path.join('C:/','.config/Eficas',self.code) - monFichier=rep+"/listefichiers_"+self.code - index=0 - f=open(monFichier) - while ( index < 9) : - ligne=f.readline() - if ligne != "" : - l=(ligne.split("\n"))[0] - self.recent.append(l) - index=index+1 - except : - pass - - try : f.close() - except : pass - - def addToRecentList(self, fn): - while fn in self.recent: self.recent.remove(fn) - self.recent.insert(0,fn) - if len(self.recent) > 9: - self.recent = self.recent[:9] - - - def addToRecentListQT4(self, fn): - """ - Public slot to add a filename to the list of recently opened files. - - @param fn name of the file to be added - """ - self.recent.removeAll(fn) - self.recent.prepend(fn) - if len(self.recent) > 9: - self.recent = self.recent[:9] - index=0 - self.sauveRecents() - - def sauveRecents(self) : - try : - rep=self.maConfiguration.rep_user - monFichier=rep+"/listefichiers_"+self.code - except : - return - try : - f=open(monFichier,'w') - if len(self.recent) == 0 : return - index=0 - while ( index < len(self.recent)): - ligne=str(self.recent[index])+"\n" - f.write(ligne) - index=index+1 - except : - pass - try : - f.close() - except : - pass - - - - def traductionV11V12(self): - from .gereTraduction import traduction - traduction(self.maConfiguration.repIni,self.viewmanager,"V11V12") - - def traductionV10V11(self): - from .gereTraduction import traduction - traduction(self.maConfiguration.repIni,self.viewmanager,"V10V11") - - def traductionV9V10(self): - from .gereTraduction import traduction - traduction(self.maConfiguration.repIni,self.viewmanager,"V9V10") - - def version(self) : - from .monVisu import DVisu - titre = tr("version ") - monVisuDialg=DVisu(parent=self,fl=0) - monVisuDialg.setWindowTitle(titre) - if self.code != None : monVisuDialg.TB.setText(self.VERSION_EFICAS +tr(" pour ") + self.code) - else : monVisuDialg.TB.setText(self.VERSION_EFICAS ) - monVisuDialg.adjustSize() - monVisuDialg.show() - - def aidePPal(self) : - repAide=os.path.dirname(os.path.abspath(__file__)) - maD=os.path.join( repAide,'..','Doc') - try : - indexAide=os.path.join(maD,'index.html') - if sys.platform[0:5]=="linux" : cmd="xdg-open "+indexAide - else : cmd="start "+indexAide - os.system(cmd) - except: - QMessageBox.warning( self,tr( "Aide Indisponible"),tr( "l'aide n est pas installee ")) - - def aidePSEN(self) : - repAide=os.path.dirname(os.path.abspath(__file__)) - maD=os.path.join( repAide,'..','Doc') - try : - indexAide=os.path.join(maD,'index.html') - if sys.platform[0:5]=="linux" : cmd="xdg-open "+indexAide - else : cmd="start "+indexAide - os.system(cmd) - except: - QMessageBox.warning( self,tr( "Aide Indisponible"),tr( "l'aide n est pas installee ")) - - def aideCode(self) : - if self.code==None : return - try : - #if 1 : - if sys.platform[0:5]=="linux" : cmd="xdg-open "+self.fileDoc - else : cmd="start "+self.fileDoc - os.system(cmd) - except: - #else: - QMessageBox.warning( self,tr( "Aide Indisponible"),tr( "l'aide n est pas installee ")) - - - def optionEditeur(self) : - try : - name='monOptions_'+self.code - except : - QMessageBox.critical( self,tr( "Parametrage"),tr( "Veuillez d abord choisir un code")) - return - try : - #if 1: - optionCode=__import__(name) - except : - #else : - QMessageBox.critical( self, tr("Parametrage"), tr("Pas de possibilite de personnalisation de la configuration ")) - return - monOption=optionCode.Options(parent=self,modal = 0 ,configuration=self.maConfiguration) - monOption.show() - - def optionPdf(self) : - from monOptionsPdf import OptionPdf - monOption=OptionPdf(parent=self,modal = 0 ,configuration=self.maConfiguration) - monOption.show() - - def handleSortieComplete(self): - return self.viewmanager.saveCompleteCurrentEditor() - - def handleShowRecentMenu(self): - """ - Private method to set up recent files menu. - """ - self.recentMenu.clear() - - for rp in self.recent: - id = self.recentMenu.addAction(rp) - self.ficRecents[id]=rp - id.triggered.connect(self.handleOpenRecent) - self.recentMenu.addSeparator() - self.recentMenu.addAction(tr('&Effacer'), self.handleClearRecent) - - def handleOpenPatrons(self): - idx=self.sender() - fichier=self.repIni+"/../Editeur/Patrons/"+self.code+"/"+self.ficPatrons[idx] - self.viewmanager.handleOpen(fichier=fichier, patron = 1) - - def handleOpenRecent(self): - idx=self.sender() - fichier=self.ficRecents[idx] - self.viewmanager.handleOpen(fichier=fichier, patron =0 ) - - def handleClearRecent(self): - self.recent = [] - self.sauveRecents() - - def handleRechercherDsCatalogue(self): - if not self.viewmanager : return - self.viewmanager.handleRechercherDsCatalogue() - - def fileNew(self): - try: - self.viewmanager.newEditor() - except EficasException as exc: - msg = str(exc) - if msg != "": QMessageBox.warning(self, tr(u"Erreur"), msg) - - def openProcess(self): - ssCode=None - code="PSEN_N1" - self.cleanPath() - dirCode=os.path.abspath(os.path.join(os.path.abspath(__file__),'../..',"ProcessOutputs_Eficas")) - sys.path.insert(0,dirCode) - self.code=code - self.definitCode(code,ssCode) - self.multi=True - self.demande=False - self.initRecents() - self.fileOpen() - - - def fileOpen(self): - try: - self.viewmanager.handleOpen() - except EficasException as exc: - msg = str(exc) - if msg != "": - QMessageBox.warning(self, tr(u"Erreur"), msg) - - def sauveLigne(self): - return self.viewmanager.sauveLigneCurrentEditor() - - def fileSave(self): - return self.viewmanager.saveCurrentEditor() - - def fileSaveAs(self): - return self.viewmanager.saveAsCurrentEditor() - - def fileClose(self): - self.viewmanager.handleClose(texte='&Fermer') - - def fileCloseAll(self): - self.viewmanager.handleCloseAll(texte='&Fermer') - - def fileExit(self): - # On peut sortir sur Abort - res=self.viewmanager.handleCloseAll() - if (res != 2) : - self.close() - return res - - def editCopy(self): - self.viewmanager.handleEditCopy() - - def editCut(self): - self.viewmanager.handleEditCut() - - def editPaste(self): - self.viewmanager.handleEditPaste() - - def rechercher(self): - self.viewmanager.handleRechercher() - - def run(self): - self.viewmanager.run() - - def saveRun(self): - self.viewmanager.saveRun() - - - def supprimer(self): - self.viewmanager.handleSupprimer() - - def jdcFichierSource(self): - self.viewmanager.handleViewJdcFichierSource() - - def jdcRapport(self): - self.viewmanager.handleViewJdcRapport() - - def jdcRegles(self): - self.viewmanager.handleViewJdcRegles() - - def gestionParam(self): - self.viewmanager.handleGestionParam() - - def visuJdcPy(self): - self.viewmanager.handleViewJdcPy() - - def ouvreArbre(self): - self.viewmanager.ouvreArbre() - - def fermeArbre(self): - self.viewmanager.fermeArbre() - - def newInclude(self): - self.viewmanager.newIncludeEditor() - - def cleanPath(self): - for pathCode in self.ListePathCode: - try: - aEnlever=os.path.abspath(os.path.join(os.path.dirname(__file__),'..',pathCode)) - sys.path.remove(aEnlever) - except : - pass - for pathCode in self.listeAEnlever: - try: - sys.path.remove(aEnlever) - except : - pass - - - def closeEvent(self,event): - res=self.fileExit() - if res==2 : event.ignore() - - - def remplitIconesCommandes(self): - if self.maConfiguration.boutonDsMenuBar == False : return - if not hasattr(self, 'readercata') : return - from monLayoutBouton import MonLayoutBouton - if hasattr(self,'monLayoutBoutonRempli') : return - self.monLayoutBoutonRempli=MonLayoutBouton(self) - - def handleAjoutEtape(self,nomEtape): - self.viewmanager.handleAjoutEtape(nomEtape) - - def metMenuAJourUtilisateurs(self): - self.lesFonctionsUtilisateurs={} - if self.code not in self.mesScripts : return - if not hasattr(self.mesScripts[self.code],'dict_menu') : return - for monMenu in iter(self.mesScripts[self.code].dict_menu.items()) : - titre,lesFonctions= monMenu - self.menuOptions = self.menubar.addMenu("menuOptions") - self.menuOptions.setTitle(tr(titre)) - for elt in lesFonctions : - laFonctionUtilisateur, label, lesArguments = elt - action = QAction(self) - action.setText(label) - #action.triggered.connect(self.appelleFonctionUtilisateur) - self.menuOptions.addAction(action) - self.lesFonctionsUtilisateurs[action]=(laFonctionUtilisateur, lesArguments) - self.menuOptions.triggered.connect(self.handleFonctionUtilisateur) - - - def handleFonctionUtilisateur(self,action) : - (laFonctionUtilisateur, lesArguments)=self.lesFonctionsUtilisateurs[action] - self.viewmanager.handleFonctionUtilisateur(laFonctionUtilisateur, lesArguments) - -if __name__=='__main__': - - # Modules Eficas - rep=os.path.abspath(os.path.join(os.path.dirname(os.path.abspath(__file__),'..','Adao'))) - sys.path.append(rep) - from Adao import prefs - from Adao import prefs_Adao - - from Editeur import import_code - from Editeur import session - - # Analyse des arguments de la ligne de commande - options=session.parse(sys.argv) - code=options.code - - - app = QApplication(sys.argv) - #app.setMainWidget(mw) (qt3) - Eficas=Appli() - Eficas.show() - - #mw.ouvreFichiers() - #mw.show() - - res=app.exec_() - sys.exit(res) diff --git a/InterfaceQT4/qtEficasSsIhm.py b/InterfaceQT4/qtEficasSsIhm.py deleted file mode 100755 index b72fa260..00000000 --- a/InterfaceQT4/qtEficasSsIhm.py +++ /dev/null @@ -1,203 +0,0 @@ -# -*- coding: iso-8859-1 -*- -# Copyright (C) 2007-2021 EDF R&D -# -# 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 -# - - -from __future__ import absolute_import -from __future__ import print_function -try : - from builtins import str -except : pass - -import os, sys - -from Extensions.eficas_exception import EficasException -from Extensions import param2 - -from InterfaceQT4.getVersion import getEficasVersion -from InterfaceQT4.viewManagerSsIhm import MyViewManagerSsIhm - -from Editeur import session - - -class AppliSsIhm: - """ - Class implementing the main user interface. - """ - def __init__(self,code=None,salome=1,parent=None,multi=False,langue='fr',ssIhm=True,labelCode=None,genereXSD=False,fichierCata=None): - """ - Constructor - """ - version=getEficasVersion() - self.VERSION_EFICAS="Eficas QT5 Salome " + version - self.labelCode=labelCode - - self.salome=salome - self.ssIhm=True - self.code=code - self.genereXSD=genereXSD - - self.dict_reels={} - self.fichierIn=None - self.fichierOut=None - - self.recent = [] - self.ficRecents={} - self.mesScripts={} - self.listeAEnlever=[] - self.ListePathCode=['Adao','ADAO','Carmel3D','Telemac','CF','MAP','ZCracks', 'SEP','SPECA','PSEN_Eficas','PSEN_N1'] - self.listeCode=['Adao','ADAO','Carmel3D','Telemac','CF','MAP','ZCracks', 'SEP','SPECA','PSEN_Eficas','PSEN_N1'] - self.repIcon=os.path.join( os.path.dirname(os.path.abspath(__file__)),'..','Editeur','icons') - - if fichierCata== None: self.fichierCata=session.d_env.fichierCata - else : self.fichierCata=fichierCata - if session.d_env.labelCode : self.labelCode=session.d_env.labelCode - self.withXSD=session.d_env.withXSD - - if self.salome: - import Accas - try : - import eficasSalome - Accas.SalomeEntry = eficasSalome.SalomeEntry - except : - print ('eficas hors salome') - - self.multi=multi - if self.multi : - print ('pas de multi sans ihm') - - - if langue=='fr': self.langue=langue - else : self.langue="ang" - - if self.multi == False : - self.definitCode(code,None) - if code==None: return - - self.suiteTelemac=False - self.viewmanager=MyViewManagerSsIhm(self) - - - def definitCode(self,code,ssCode) : - self.code=code - self.ssCode=ssCode - if self.code == None:return # pour le cancel de la fenetre choix code - - try : - name='prefs_'+self.code - prefsCode=__import__(name) - self.repIni=prefsCode.repIni - except : - self.repIni=os.path.dirname(os.path.abspath(__file__)) - - - if ssCode != None : - self.formatFichierOut = ssCode #par defaut - prefsCode.NAME_SCHEME = ssCode - else : - self.formatFichierIn = "python" #par defaut - self.formatFichierOut = "python" #par defaut - - nameConf='configuration_'+self.code - try : - configuration=__import__(nameConf) - self.maConfiguration = configuration.make_config(self,self.repIni) - except : - from InterfaceQT4.configuration import makeConfig - #self.maConfiguration = configuration.makeConfig(self,prefsCode.repIni) - self.maConfiguration = makeConfig(self,self.repIni) - - if hasattr (self,'maConfiguration') and self.maConfiguration.translatorFichier : - from Extensions import localisation - localisation.localise(None,self.langue,translatorFichier=self.maConfiguration.translatorFichier) - if self.withXSD : self.maConfiguration.withXSD=True - - - def getSource(self,file): - # appele par Editeur/session.py - import convert - p=convert.plugins['python']() - p.readfile(file) - texte=p.convert('execnoparseur') - return texte - - - def initEditor(self,fichier = None,jdc = None, units = None,include=0): - if (hasattr(self, 'editor')) and self.editor != None : - print ('un seul editeur par application') - sys.exit() - self.editor = self.viewmanager.getNewEditorNormal() - - def initEditorNormal(self,fichier = None,jdc = None, units = None,include=0): - if (hasattr(self, 'editor')) and self.editor != None : - print ('un seul editeur par application') - sys.Exit() - #self.editor = JDCEditorSsIhm(self,fichier, jdc, self.myQtab,units=units,include=include) - self.editor = self.viewmanager.getNewEditorNormal() - - - def fileNew(self): - self.editor=self.initEditor() - - def getEditor(self): - if (hasattr(self, 'editor')) and self.editor != None : return self.editor - self.initEditor() - return self.editor - - def fileOpen(self,fichier): - fichierIn = os.path.abspath(fichier) - try: - monEditor=self.viewmanager.handleOpen(fichierIn) - except EficasException as exc: - print ('poum') - monEditor=None - return monEditor - - def fileSave(self): - if self.editor == None : return False - ok, newName = editor.saveFileAs() - print ('ok, newName ',ok, newName) - - def fileSaveAs(self,fileName): - if self.editor == None : return False - ok = editor.saveFileAs() - print ('ok ',ok) - - def dumpXsd(self, avecEltAbstrait = False): - currentCata = CONTEXT.getCurrentCata() - texteXSD = currentCata.dumpXsd( avecEltAbstrait) - return texteXSD - #if self.maConfiguration.afficheIhm==False : exit() - #else : return texteXSD - - -#,self.fileSaveAs -#,self.fileClose -#,self.fileExit -#,self.jdcRapport -#,self.jdcRegles -#,self.jdcFichierSource -#,self.visuJdcPy - - - -if __name__=='__main__': - - # Modules Eficas - monEficas= AppliSsIhm(code='Adao',salome=0,labelCode='V83') diff --git a/InterfaceQT4/qtEficas_with_log.py b/InterfaceQT4/qtEficas_with_log.py deleted file mode 100644 index ad1b229b..00000000 --- a/InterfaceQT4/qtEficas_with_log.py +++ /dev/null @@ -1,612 +0,0 @@ -# -*- coding: iso-8859-1 -*- -# Copyright (C) 2007-2021 EDF R&D -# -# 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, sys - - -from PyQt4.QtGui import * -from PyQt4.QtCore import * -from myMain import Ui_Eficas -from viewManager import MyTabview -from getVersion import getEficasVersion - -from Extensions.i18n import tr -from Extensions.eficas_exception import EficasException - -from Editeur import session -import Accas - - -class Appli(Ui_Eficas,QMainWindow): - """ - Class implementing the main user interface. - """ - def __init__(self,code=None,salome=0,parent=None,ssCode=None,multi=False,langue='fr'): - """ - Constructor - """ - QMainWindow.__init__(self,parent) - Ui_Eficas.__init__(self) - self.setupUi(self) - - version=getEficasVersion() - self.VERSION_EFICAS="Eficas QT4 "+version - self.salome=salome - self.ihm="QT" - self.top = self #(pour CONFIGURATION) - self.QWParent=None #(Pour lancement sans IHM) - self.code=code - self.indice=0 - self.dict_reels={} - self.recent = QStringList() - self.ficRecents={} - self.listeAEnlever=[] - self.ListeCode=['Aster','Carmel3D','Cuve2dg','Openturns_Study','Openturns_Wrapper','MAP'] - myFilter = MyEventFilter() - self.installEventFilter(myFilter) - - - self.repIcon=os.path.join( os.path.dirname(os.path.abspath(__file__)),'../Editeur/icons') - self.multi=multi - if langue=='fr': self.langue=langue - else : self.langue="ang" - if self.multi == False : - self.definitCode(code,ssCode) - if code==None: return - - eficas_root_dir = os.path.dirname(os.path.dirname(os.path.abspath(__file__))) - self.ajoutIcones() - - self.viewmanager = MyTabview(self) - self.recentMenu=self.menuFichier.addMenu(tr('&Recents')) - self.connecterSignaux() - if self.code != None : self.construitMenu() - - - self.ouvreFichiers() - self.setWindowTitle(self.VERSION_EFICAS) - - #def eventFilter(QObject watched, QEvent e) : - #def eventFilter(watched, e) : - # print "hhhhhhhhhhhhhhhhhhhhhh" - # return QMainWindow.eventFilter(watched, e) - - def definitCode(self,code,ssCode) : - self.code=code - self.ssCode=ssCode - if self.code==None : - self.cleanPath() - from monChoixCode import MonChoixCode - widgetChoix = MonChoixCode(self) - ret=widgetChoix.exec_() - import sys - if self.code == None:return # pour le cancel de la fenetre choix code - name='prefs_'+self.code - prefsCode=__import__(name) - - self.repIni=prefsCode.repIni - if ssCode != None : - self.format_fichier= ssCode #par defaut - prefsCode.NAME_SCHEME=ssCode - else : - self.format_fichier="python" #par defaut - - nameConf='configuration_'+self.code - configuration=__import__(nameConf) - self.CONFIGURATION = configuration.make_config(self,prefsCode.repIni) - self.CONFIGStyle = None - if hasattr(configuration,'make_config_style'): - self.CONFIGStyle = configuration.make_config_style(self,prefsCode.repIni) - if hasattr(prefsCode,'encoding'): - import sys - reload(sys) - sys.setdefaultencoding(prefsCode.encoding) - - def construitMenu(self): - self.initPatrons() - self.initRecents() - self.initAides() - for intituleMenu in ("menuTraduction","menuOptions","menuMesh","menuExecution"): - if hasattr(self,intituleMenu): - menu=getattr(self,intituleMenu) - menu.setAttribute(Qt.WA_DeleteOnClose) - menu.close() - delattr(self,intituleMenu) - for intituleAction in ("actionExecution","actionSaveRun",): - if hasattr(self,intituleAction): - action=getattr(self,intituleAction) - self.toolBar.removeAction(action) - if self.code in Appli.__dict__.keys(): - listeTexte=apply(Appli.__dict__[self.code],(self,)) - - def initAides(self): - #print "je passe la" - repAide=os.path.dirname(os.path.abspath(__file__)) - fileName='index.html' - self.docPath=repAide+"/../Aide" - if hasattr(self,'CONFIGURATION') and hasattr(self.CONFIGURATION,'docPath') : self.docPath=self.CONFIGURATION.docPath - if hasattr(self,'CONFIGURATION') and hasattr(self.CONFIGURATION,'fileName'):fileName=self.CONFIGURATION.fileName - self.fileDoc=os.path.join(self.docPath,fileName) - self.actionCode.setText(tr("Aide specifique ")+str(self.code)) - if not os.path.isfile(self.fileDoc) : - self.fileDoc="" - self.docPath="" - self.actionCode.setEnabled(False) - return - - self.actionCode.setEnabled(True) - self.menuAide.addAction(self.actionCode) - - def MAP(self): - self.menuExecution = self.menubar.addMenu(QApplication.translate("Eficas", "Execution", None, QApplication.UnicodeUTF8)) - self.actionExecution = QAction(self) - icon6 = QIcon(self.repIcon+"/compute.png") - self.actionExecution.setIcon(icon6) - self.actionExecution.setObjectName("actionExecution") - self.menuExecution.addAction(self.actionExecution) - if not(self.actionExecution in self.toolBar.actions()): - self.toolBar.addAction(self.actionExecution) - self.actionExecution.setText(QApplication.translate("Eficas", "Execution ", None, QApplication.UnicodeUTF8)) - self.connect(self.actionExecution,SIGNAL("activated()"),self.run) - - self.actionSaveRun = QAction(self) - icon7 = QIcon(self.repIcon+"/export_MAP.png") - self.actionSaveRun.setIcon(icon7) - self.actionSaveRun.setObjectName("actionSaveRun") - self.menuExecution.addAction(self.actionSaveRun) - if not(self.actionSaveRun in self.toolBar.actions()): - self.toolBar.addAction(self.actionSaveRun) - self.actionSaveRun.setText(QApplication.translate("Eficas", "Save Run", None, QApplication.UnicodeUTF8)) - self.connect(self.actionSaveRun,SIGNAL("activated()"),self.saveRun) - - self.menuOptions = self.menubar.addMenu("menuOptions") - self.menuOptions.addAction(self.actionParametres_Eficas) - self.menuOptions.setTitle(tr("Options")) - - - def ASTER(self) : - self.menuTraduction = self.menubar.addMenu("menuTraduction") - self.menuTraduction.addAction(self.actionTraduitV7V8) - self.menuTraduction.addAction(self.actionTraduitV8V9) - self.menuTraduction.addAction(self.actionTraduitV9V10) - self.menuTraduction.setTitle(tr("Traduction")) - - self.menuOptions = self.menubar.addMenu("menuOptions") - self.menuOptions.addAction(self.actionParametres_Eficas) - self.menuOptions.addAction(self.actionLecteur_Pdf) - self.menuOptions.setTitle(tr("Options")) - - def CARMEL3D(self): - #if self.salome == 0 : return - self.menuMesh = self.menubar.addMenu("menuMesh") - self.menuMesh.setObjectName("Mesh") - self.menuMesh.addAction(self.actionChercheGrpMaille) - - def ChercheGrpMesh(self): - Msg,listeGroup=self.ChercheGrpMeshInSalome() - if Msg == None : - self.viewmanager.handleAjoutGroup(listeGroup) - else : - print "il faut gerer les erreurs" - - def ChercheGrpMaille(self): - Msg,listeGroup=self.ChercheGrpMailleInSalome() - if Msg == None : - self.viewmanager.handleAjoutGroup(listeGroup) - else : - print "il faut gerer les erreurs" - - - def ajoutIcones(self) : - # Pour pallier les soucis de repertoire d icone - icon = QIcon(self.repIcon+"/New24.png") - self.action_Nouveau.setIcon(icon) - icon1 = QIcon(self.repIcon+"/Open24.png") - self.action_Ouvrir.setIcon(icon1) - icon2 = QIcon(self.repIcon+"/Save24.png") - self.actionEnregistrer.setIcon(icon2) - icon3 = QIcon(self.repIcon+"/Cut24.png") - self.actionCouper.setIcon(icon3) - icon4 = QIcon(self.repIcon+"/Copy24.png") - self.actionCopier.setIcon(icon4) - icon5 = QIcon(self.repIcon+"/Paste24.png") - self.actionColler.setIcon(icon5) - icon6 = QIcon(self.repIcon+"/Delete24.png") - self.actionSupprimer.setIcon(icon6) - - - - def connecterSignaux(self) : - self.connect(self.recentMenu,SIGNAL('aboutToShow()'),self.handleShowRecentMenu) - - self.connect(self.action_Nouveau,SIGNAL("activated()"),self.fileNew) - self.connect(self.actionNouvel_Include,SIGNAL("activated()"),self.NewInclude) - self.connect(self.action_Ouvrir,SIGNAL("activated()"),self.fileOpen) - self.connect(self.actionEnregistrer,SIGNAL("activated()"),self.fileSave) - self.connect(self.actionEnregistrer_sous,SIGNAL("activated()"),self.fileSaveAs) - self.connect(self.actionFermer,SIGNAL("activated()"),self.fileClose) - self.connect(self.actionFermer_tout,SIGNAL("activated()"),self.fileCloseAll) - self.connect(self.actionQuitter,SIGNAL("activated()"),self.fileExit) - - self.connect(self.actionEficas,SIGNAL("activated()"),self.aidePPal) - self.connect(self.actionVersion,SIGNAL("activated()"),self.version) - - self.connect(self.actionCouper,SIGNAL("activated()"),self.editCut) - self.connect(self.actionCopier,SIGNAL("activated()"),self.editCopy) - self.connect(self.actionColler,SIGNAL("activated()"),self.editPaste) - self.connect(self.actionSupprimer,SIGNAL("activated()"),self.supprimer) - self.connect(self.actionRechercher,SIGNAL("activated()"),self.rechercher) - self.connect(self.actionDeplier_replier,SIGNAL("activated()"),self.Deplier) - - self.connect(self.actionRapport_de_Validation,SIGNAL("activated()"),self.jdcRapport) - self.connect(self.actionFichier_Source,SIGNAL("activated()"),self.jdcFichierSource) - self.connect(self.actionFichier_Resultat,SIGNAL("activated()"),self.visuJdcPy) - - - #self.connect(self.helpIndexAction,SIGNAL("activated()"),self.helpIndex) - #self.connect(self.helpContentsAction,SIGNAL("activated()"),self.helpContents) - - # Pour Aster - self.actionTraduitV7V8 = QAction(self) - self.actionTraduitV7V8.setObjectName("actionTraduitV7V8") - self.actionTraduitV8V9 = QAction(self) - self.actionTraduitV8V9.setObjectName("actionTraduitV8V9") - self.actionTraduitV9V10 = QAction(self) - self.actionTraduitV9V10.setObjectName("actionTraduitV9V10") - self.actionTraduitV7V8.setText(tr("TraduitV7V8")) - self.actionTraduitV8V9.setText(tr("TraduitV8V9")) - self.actionTraduitV9V10.setText(tr("TraduitV9V10")) - self.connect(self.actionParametres_Eficas,SIGNAL("activated()"),self.optionEditeur) - self.connect(self.actionLecteur_Pdf,SIGNAL("activated()"),self.optionPdf) - self.connect(self.actionTraduitV7V8,SIGNAL("activated()"),self.traductionV7V8) - self.connect(self.actionTraduitV8V9,SIGNAL("activated()"),self.traductionV8V9) - self.connect(self.actionTraduitV9V10,SIGNAL("activated()"),self.traductionV9V10) - - # Pour Carmel - self.actionChercheGrpMaille = QAction(self) - self.actionChercheGrpMaille.setText(tr("Acquiert Groupe Maille")) - self.connect(self.actionChercheGrpMaille,SIGNAL("activated()"),self.ChercheGrpMaille) - - # Pour Aide - self.actionCode = QAction(self) - self.actionCode.setText(tr("Specificites Maille")) - self.connect(self.actionCode,SIGNAL("activated()"),self.aideCode) - - def Deplier(self): - self.viewmanager.handleDeplier() - - def ouvreFichiers(self) : - # Ouverture des fichiers de commandes donnes sur la ligne de commande - cwd=os.getcwd() - self.dir=cwd - for study in session.d_env.studies: - os.chdir(cwd) - d=session.get_unit(study,self) - self.viewmanager.handleOpen(fichier=study["comm"],units=d) - - - def getSource(self,file): - # appele par Editeur/session.py - import convert - p=convert.plugins['python']() - p.readfile(file) - texte=p.convert('execnoparseur') - return texte - - def initPatrons(self) : - # Mise a jour du menu des fichiers recemment ouverts - from Editeur import listePatrons - if not(self.code in listePatrons.sous_menus.keys()) : - if hasattr(self,"menuPatrons"): - self.menuPatrons.setAttribute(Qt.WA_DeleteOnClose) - self.menuPatrons.close() - delattr(self,"menuPatrons") - return - if (not hasattr(self,"menuPatrons")): - self.menuPatrons = QMenu(self.menubar) - self.menuPatrons.setObjectName("menuPatrons") - self.menubar.addAction(self.menuPatrons.menuAction()) - self.menuPatrons.setTitle(QApplication.translate("Eficas", "Patrons", None, QApplication.UnicodeUTF8)) - else : - self.menuPatrons.clear() - self.listePatrons = listePatrons.listePatrons(self.code) - idx = 0 - for nomSsMenu in self.listePatrons.liste.keys(): - ssmenu=self.menuPatrons.addMenu(nomSsMenu) - for fichier in self.listePatrons.liste[nomSsMenu]: - id = ssmenu.addAction(fichier) - self.ficPatrons[id]=fichier - self.connect(id, SIGNAL('triggered()'),self.handleOpenPatrons) - # self.Patrons.setItemParameter(id,idx) - idx=idx+1 - - def initRecents(self): - self.recent = QStringList() - try : - #if 1 : - rep=os.path.join(os.environ['HOME'],'.config/Eficas',self.code) - monFichier=rep+"/listefichiers_"+self.code - index=0 - f=open(monFichier) - while ( index < 9) : - ligne=f.readline() - if ligne != "" : - l=(ligne.split("\n"))[0] - self.recent.append(l) - index=index+1 - except : - #else : - pass - - try : f.close() - except : pass - - def addToRecentList(self, fn): - """ - Public slot to add a filename to the list of recently opened files. - - @param fn name of the file to be added - """ - self.recent.removeAll(fn) - self.recent.prepend(fn) - if len(self.recent) > 9: - self.recent = self.recent[:9] - - def sauveRecents(self) : - try : - rep=self.CONFIGURATION.rep_user - monFichier=rep+"/listefichiers_"+self.code - except : - return - try : - f=open(monFichier,'w') - if len(self.recent) == 0 : return - index=0 - while ( index < len(self.recent)): - ligne=str(self.recent[index])+"\n" - f.write(ligne) - index=index+1 - except : - pass - try : - f.close() - except : - pass - - - - def traductionV7V8(self): - from gereTraduction import traduction - traduction(self.CONFIGURATION.repIni,self.viewmanager,"V7V8") - - def traductionV8V9(self): - from gereTraduction import traduction - traduction(self.CONFIGURATION.repIni,self.viewmanager,"V8V9") - - def traductionV9V10(self): - from gereTraduction import traduction - traduction(self.CONFIGURATION.repIni,self.viewmanager,"V9V10") - - def version(self) : - from monVisu import DVisu - titre = tr("version ") - monVisuDialg=DVisu(parent=self,fl=0) - monVisuDialg.setWindowTitle(titre) - monVisuDialg.TB.setText(self.VERSION_EFICAS +tr(" pour ") + self.code) - monVisuDialg.adjustSize() - monVisuDialg.show() - - def aidePPal(self) : - if self.code==None : return - repAide=os.path.dirname(os.path.abspath(__file__)) - maD=repAide+"/../Aide" - try : - indexAide=maD+"/fichiers_EFICAS/index.html" - cmd="xdg-open "+indexAide - os.system(cmd) - except: - QMessageBox.warning( self,tr( "Aide Indisponible"),tr( "l'aide n est pas installee ")) - - - def aideCode(self) : - if self.code==None : return - try : - #if 1 : - cmd="xdg-open "+self.fileDoc - os.system(cmd) - except: - #else: - QMessageBox.warning( self,tr( "Aide Indisponible"),tr( "l'aide n est pas installee ")) - - - def optionEditeur(self) : - try : - name='monOptions_'+self.code - except : - QMessageBox.critical( self,tr( "Parametrage"),tr( "Veuillez d abord choisir un code")) - return - try : - #if 1: - optionCode=__import__(name) - except : - #else : - QMessageBox.critical( self, tr("Parametrage"), tr("Pas de possibilite de personnalisation de la configuration ")) - return - monOption=optionCode.Options(parent=self,modal = 0 ,configuration=self.CONFIGURATION) - monOption.show() - - def optionPdf(self) : - from monOptionsPdf import OptionPdf - monOption=OptionPdf(parent=self,modal = 0 ,configuration=self.CONFIGURATION) - monOption.show() - - def handleShowRecentMenu(self): - """ - Private method to set up recent files menu. - """ - self.recentMenu.clear() - - for rp in self.recent: - id = self.recentMenu.addAction(rp) - self.ficRecents[id]=rp - self.connect(id, SIGNAL('triggered()'),self.handleOpenRecent) - self.recentMenu.addSeparator() - self.recentMenu.addAction(tr('&Effacer'), self.handleClearRecent) - - def handleOpenPatrons(self): - idx=self.sender() - fichier=self.repIni+"/../Editeur/Patrons/"+self.code+"/"+self.ficPatrons[idx] - self.viewmanager.handleOpen(fichier=fichier, patron = 1) - - def handleOpenRecent(self): - idx=self.sender() - fichier=self.ficRecents[idx] - self.viewmanager.handleOpen(fichier=fichier, patron =0 ) - - def handleClearRecent(self): - self.recent = QStringList() - self.sauveRecents() - - def fileNew(self): - try: - self.viewmanager.newEditor() - except EficasException, exc: - msg = unicode(exc) - if msg != "": - QMessageBox.warning(self, tr(u"Erreur"), msg) - - def fileOpen(self): - try: - self.viewmanager.handleOpen() - except EficasException, exc: - msg = unicode(exc) - if msg != "": - QMessageBox.warning(self, tr(u"Erreur"), msg) - - def fileSave(self): - return self.viewmanager.saveCurrentEditor() - - def fileSaveAs(self): - return self.viewmanager.saveAsCurrentEditor() - - def fileClose(self): - self.viewmanager.handleClose(texte='&Fermer') - - def fileCloseAll(self): - self.viewmanager.handleCloseAll(texte='&Fermer') - - def fileExit(self): - # On peut sortir sur Abort - res=self.viewmanager.handleCloseAll() - if (res != 2) : - self.close() - return res - - def editCopy(self): - self.viewmanager.handleEditCopy() - - def editCut(self): - self.viewmanager.handleEditCut() - - def editPaste(self): - self.viewmanager.handleEditPaste() - - def rechercher(self): - self.viewmanager.handleRechercher() - - def run(self): - self.viewmanager.run() - - def saveRun(self): - self.viewmanager.saveRun() - - def runYACS(self): - self.viewmanager.runYACS() - - def saveYACS(self): - self.viewmanager.saveYACS() - - def supprimer(self): - self.viewmanager.handleSupprimer() - - def jdcFichierSource(self): - self.viewmanager.handleViewJdcFichierSource() - - def jdcRapport(self): - self.viewmanager.handleViewJdcRapport() - - def visuJdcPy(self): - self.viewmanager.handleViewJdcPy() - - - def NewInclude(self): - self.viewmanager.newIncludeEditor() - - def cleanPath(self): - for pathCode in self.ListeCode: - try: - aEnlever=os.path.abspath(os.path.join(os.path.dirname(__file__),'..',pathCode)) - sys.path.remove(aEnlever) - except : - pass - for pathCode in self.listeAEnlever: - try: - sys.path.remove(aEnlever) - except : - pass - - - def closeEvent(self,event): - res=self.fileExit() - if res==2 : event.ignore() - -if __name__=='__main__': - - # Modules Eficas - rep=os.path.abspath(os.path.join(os.path.dirname(os.path.abspath(__file__),'..','ASTER'))) - sys.path.append(rep) - from Aster import prefsCode - if hasattr(prefsCode,'encoding'): - # Hack pour changer le codage par defaut des strings - import sys - reload(sys) - sys.setdefaultencoding(prefsCode.encoding) - del sys.setdefaultencoding - # Fin hack - - from Editeur import import_code - from Editeur import session - - # Analyse des arguments de la ligne de commande - options=session.parse(sys.argv) - code=options.code - - - app = QApplication(sys.argv) - #app.setMainWidget(mw) (qt3) - Eficas=Appli() - Eficas.show() - - #app.connect(app, SIGNAL("lastWindowClosed()"), app, SLOT("quit()")) - #mw.ouvreFichiers() - #mw.show() - - res=app.exec_() - sys.exit(res) diff --git a/InterfaceQT4/qtSaisie.py b/InterfaceQT4/qtSaisie.py deleted file mode 100644 index 0ff274d9..00000000 --- a/InterfaceQT4/qtSaisie.py +++ /dev/null @@ -1,167 +0,0 @@ -# -*- coding: utf-8 -*- -# Copyright (C) 2007-2021 EDF R&D -# -# 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 -# -# Modules Python -from __future__ import absolute_import -try : - from builtins import str - from builtins import range -except : pass - -import types,os -from Extensions.i18n import tr - -from PyQt5.QtCore import Qt - - -# Import des panels - -class SaisieValeur(object): - """ - Classe contenant les methodes communes aux panels - permettant de choisir des valeurs - """ - def __init__(self): - pass - - - def LEvaleurPressed(self,valeur=None): - #print('LEvaleurPressed', valeur, type(valeur)) - if not hasattr(self, 'inSaisieValeur' ) : self.inSaisieValeur=False - if self.inSaisieValeur : return - self.inSaisieValeur=True - - if valeur == None : - try : - nouvelleValeur=str(self.lineEditVal.text()) - except UnicodeEncodeError as e : - self.editor.afficheInfos("pb d encoding", Qt.red) - validite,commentaire=self.politique.recordValeur(None) - self.lineEditVal.setText('') - self.setValide() - self.inSaisieValeur=False - return - else : - try : - # la 1 ligne est tres bizarre. remplacee par le 3nd le 01 10 19 - #if hasattr(self,"lineEditVal"):self.lineEditVal.setText(tr(valeur.nom)) - if hasattr(self,"lineEditVal") : self.lineEditVal.setText(tr(valeur)) - except : - if hasattr(self,"lineEditVal"):self.lineEditVal.setText(valeur) - nouvelleValeur=valeur - - if self.node.item.definition.validators != None : - if self.node.item.definition.validators.verifItem(nouvelleValeur) !=1 : - commentaire=self.node.item.definition.validators.infoErreurItem() - self.editor.afficheInfos(commentaire,Qt.red) - self.inSaisieValeur=False - return - - nouvelleValeurFormat=self.politique.getValeurTexte(nouvelleValeur) - validite,commentaire=self.politique.recordValeur(nouvelleValeurFormat) - if commentaire != "" : - if validite : - self.editor.afficheCommentaire(commentaire) - else : - self.editor.afficheInfos(commentaire,Qt.red) - self.inSaisieValeur=False - self.setValide() - - - - def TraiteLEValeur(self,valeurTraitee=None) : - # lit la chaine entree dans le line edit - # et la tranforme en chaine de valeurs - # a traiter. renvoie eventuellement des complexes - listeValeurs=[] - if valeurTraitee == None : - valeurBrute=str(self.LEValeur.text()) - else : - valeurBrute=valeurTraitee - if valeurBrute == str("") : return listeValeurs,1 - - try : - valeur=eval(valeurBrute,{}) - except : - valeur=valeurBrute - - # pour traiter 11.0 - 30.0 pour le CIST - #if (valeurTraitee and (type(valeurTraitee) in types.StringTypes) and (self.node.item.waitTxm())) : - if (valeurTraitee and isinstance(valeurTraitee, str) and (self.node.item.waitTxm())) : - valeur=str(valeurTraitee) - - - if type(valeur) in (list,tuple) : - if self.node.item.waitComplex() : - indice = 0 - while (indice < len(valeur)): - v=valeur[indice] - - if (v== 'RI' or v == 'MP'): - try : - t=tuple([v,valeur[indice+1],valeur[indice+2]]) - listeValeurs.append(t) - indice=indice+3 - except : - commentaire = tr("Veuillez entrer le complexe sous forme aster ou sous forme python") - self.editor.afficheInfos(commentaire) - return listeValeurs,0 - - - else : # ce n'est pas un tuple a la mode aster - listeValeurs.append(v) - indice = indice + 1 - - else: # on n'attend pas un complexe - listeValeurs=valeurBrute.split(',') - - elif type(valeur) == bytes: - listeValeurs=valeur.split(',') - else: - #listeValeurs.append(valeurBrute) - listeValeurs.append(valeur) - - return listeValeurs,1 - -class SaisieSDCO(object) : - - def LESDCOReturnPressed(self): - """ - Lit le nom donne par l'utilisateur au concept de type CO qui doit être - la valeur du MCS courant et stocke cette valeur - """ - self.editor.initModif() - anc_val = self.node.item.getValeur() - if anc_val != None: - # il faut egalement propager la destruction de l'ancien concept - self.node.item.deleteValeurCo(valeur=anc_val) - # et on force le recalcul des concepts de sortie de l'etape - self.node.item.object.etape.getType_produit(force=1) - # et le recalcul du contexte - self.node.item.object.etape.parent.resetContext() - nomConcept = str(self.LESDCO.text()) - if nomConcept == "" : return - - test,commentaire=self.node.item.setValeurCo(nomConcept) - if test: - commentaire=tr("Valeur du mot-clef enregistree") - self.node.updateNodeValid() - else : - cr = self.node.item.getCr() - commentaire = tr("Valeur du mot-clef non autorisee :")+cr.getMessFatal() diff --git a/InterfaceQT4/readercata.py b/InterfaceQT4/readercata.py deleted file mode 100644 index a2ee29fa..00000000 --- a/InterfaceQT4/readercata.py +++ /dev/null @@ -1,445 +0,0 @@ -# -*- coding: utf-8 -*- -# Copyright (C) 2007-2021 EDF R&D -# -# 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 -# -""" - Ce module sert a lire un catalogue et a construire - un objet CataItem pour Eficas. - Il s'appuie sur la classe READERCATA -""" -# Modules Python -from __future__ import absolute_import -from __future__ import print_function -try : - from builtins import str - from builtins import object -except : pass - -import os, sys - -# Modules Eficas -from Noyau.N_CR import CR -from Editeur.catadesc import CatalogDescription - -import analyse_catalogue -import analyse_catalogue_initial -import autre_analyse_cata -import uiinfo -from Extensions.i18n import tr -from Extensions.eficas_exception import EficasException - - -#------------------------------- -class ReaderCataCommun(object): -#------------------------------- - - def askChoixCatalogue(self, cataListeChoix): - # ____________________________________________ - """ - Ouvre une fenetre de selection du catalogue dans le cas où plusieurs - ont ete definis dans Accas/editeur.ini - """ - try : - from PyQt5.QtWidgets import QDialog - except : - print ('Pas de choix interactif sans qt') - return - - code = getattr(self.appliEficas.maConfiguration, "code", None) - if code != None : - title=tr("Choix d une version du code ")+str(code) - else : - title=tr("Choix d une version ") - - from InterfaceQT4.monChoixCata import MonChoixCata - widgetChoix = MonChoixCata(self.appliEficas, [cata.labelCode for cata in cataListeChoix], title) - ret=widgetChoix.exec_() - - - lab=str(self.VERSION_EFICAS)+" " - lab+=tr(" pour ") - lab+=str(self.code) - lab+=tr(" avec le catalogue ") - if ret == QDialog.Accepted: - cata = cataListeChoix[widgetChoix.CBChoixCata.currentIndex()] - self.fichierCata = cata.fichierCata - self.labelCode = cata.labelCode - self.appliEficas.formatFichierOut = cata.formatFichierOut - self.appliEficas.formatFichierIn = cata.formatFichierIn - lab+=self.labelCode - self.appliEficas.setWindowTitle(lab) - widgetChoix.close() - else: - widgetChoix.close() - raise EficasException() - - def choisitCata(self): - # ____________________ - - - listeCataPossibles=[] - self.Commandes_Ordre_Catalogue=[] - - - listeTousLesCatas = [] - for catalogue in self.appliEficas.maConfiguration.catalogues: - if isinstance(catalogue, CatalogDescription): listeTousLesCatas.append(catalogue) - elif isinstance(catalogue, tuple) : listeTousLesCatas.append(CatalogDescription.createFromTuple(catalogue)) - else: print(("Catalog description cannot be interpreted: ", catalogue)) - - # This filter is only useful for codes that have subcodes (like MAP). - # Otherwise, the "code" attribute of the catalog description can (should) be None. - if self.ssCode is None: listeCataPossibles = listeTousLesCatas - else: - for catalogue in listeTousLesCatas: - if catalogue.code == self.code and catalogue.ssCode == self.ssCode: listeCataPossibles.append(catalogue) - - # le catalogue est fixe dans la ligne de commande - if self.appliEficas.fichierCata != None : - trouve=False - for catalogue in listeTousLesCatas: - if os.path.abspath(catalogue.fichierCata) == (os.path.abspath(self.appliEficas.fichierCata)) : - listeCataPossibles=(catalogue,) - trouve=True - break - if not trouve: - catalogue=CatalogDescription.createFromTuple((self.code ,self.code,self.appliEficas.fichierCata,'python','python')) - listeCataPossibles=(catalogue,) - - - if len(listeCataPossibles)==0: - try : - from PyQt5.QtWidgets import QMessageBox, QDialog - QMessageBox.critical(self.QWParent, tr("Import du catalogue"), - tr("Pas de catalogue defini pour le code ") + self.code) - except : - print ("Pas de catalogue defini pour le code " + self.code) - self.appliEficas.close() - if self.appliEficas.salome == 0 : sys.exit(1) - return - - - # le label est fixe dans la ligne de commande - if self.labelCode is not None: - # La version a ete fixee - for cata in listeCataPossibles: - if self.labelCode == cata.labelCode: - self.fichierCata = cata.fichierCata - self.appliEficas.formatFichierIn = cata.formatFichierIn - self.appliEficas.formatFichierOut = cata.formatFichierOut - else: - cataListeChoix = [] - for cata in listeCataPossibles: - if cata.default : cataListeChoix.insert(0, cata) - else : cataListeChoix.append(cata) - - if len(cataListeChoix) == 0: - try : - from PyQt5.QtWidgets import QMessageBox - QMessageBox.critical(self.QWParent, tr("Import du catalogue"), - tr("Aucun catalogue trouve")) - except : - print ("Pas de catalogue defini pour le code " + self.code) - self.appliEficas.close() - if self.appliEficas.salome == 0 : sys.exit(1) - - elif len(cataListeChoix) == 1: - self.fichierCata = cataListeChoix[0].fichierCata - self.labelCode = cataListeChoix[0].labelCode - self.appliEficas.formatFichierOut = cataListeChoix[0].formatFichierOut - self.appliEficas.formatFichierIn = cataListeChoix[0].formatFichierIn - - else: - # plusieurs catalogues sont disponibles : il faut demander a l'utilisateur - # lequel il veut utiliser ... - if self.appliEficas.ssIhm : - print ('Unable to know which catafile is choosen') - exit() - self.askChoixCatalogue(cataListeChoix) - self.demandeCatalogue=True - - if self.fichierCata == None : - if self.appliEficas.salome == 0 : - print(("Pas de catalogue pour code %s, version %s" %(self.code,self.labelCode))) - sys.exit(1) - else : - self.appliEficas.close() - return - - -#------------------------------------ -class ReaderCata (ReaderCataCommun): -#------------------------------------ - - def __init__(self,QWParent, appliEficas): - # _______________________________________ - - - self.QWParent=QWParent - self.appliEficas=self.QWParent.appliEficas - self.VERSION_EFICAS=self.appliEficas.VERSION_EFICAS - self.demandeCatalogue=False - self.code=self.appliEficas.code - self.ssCode=self.appliEficas.ssCode - # on positionne par defaut mais est-ce vraiment necessaire - self.appliEficas.formatFichierIn='python' - self.appliEficas.formatFichierOut='python' - self.labelCode=self.appliEficas.labelCode - self.fichierCata=self.appliEficas.fichierCata - self.openCata() - self.traiteIcones() - self.cataitem=None - self.creeDicoInverse() - if self.code=="TELEMAC": self.creeDicoCasToCata() - - - def openCata(self): - """ - Ouvre le catalogue standard du code courant, cad le catalogue present - dans le repertoire Cata - """ - # import du catalogue - self.choisitCata() - - self.cata = self.importCata(self.fichierCata) - if self.code == 'NonConnu' : self.code = self.cata.JdC.code - modeleMetier = None - dicoEltDif = {} - if not (self.appliEficas.genereXSD) : - if (self.appliEficas.maConfiguration.withXSD or self.appliEficas.withXSD) : - try : - import pyxb - except : - self.QWParent.informe('environnement', 'please source pyxb environment') - exit() - try : - nomCataXsd = os.path.splitext(os.path.basename(self.fichierCata))[0] - fichierCataTrunc=os.path.splitext(os.path.basename(self.fichierCata))[0] - nomCataXsd = fichierCataTrunc+'_driver' - pathCata = os.path.dirname(self.fichierCata)+'/raw/'+nomCataXsd+'.py' - print ('nomCataXsd , pathCata ',nomCataXsd,pathCata) - import imp - modeleMetier= imp.load_source(nomCataXsd,pathCata) - print ('nomCataXsd , pathCata ',nomCataXsd,pathCata) - try : - #if 1 : - #monObjetAnnotation = getattr(modeleMetier,'PNEFdico_'+self.code) - monObjetAnnotation = getattr(modeleMetier,'PNEFdico') - texte=monObjetAnnotation.__doc__ - except : - texte=None - if texte != None and texte != "": - l={} - texte='dicoEltDif = '+ texte - exec (texte, globals(),l) - dicoEltDif=l['dicoEltDif'] - #print ('dans readerCata _________', dicoEltDif) - - except : - if self.appliEficas.ssIhm == False :print ('______________ poum import cata_genere ') - self.QWParent.informe('XSD driver', 'unable to load xsd driver',critique=False) - modeleMetier = None - - self.cata.DicoNomTypeDifferentNomElt=dicoEltDif - - if hasattr(self.cata, 'implement'): self.cata.JdC.implement = self.cata.implement - else : self.cata.JdC.implement = "" - if hasattr(self.cata, 'importedBy'): self.cata.JdC.importedBy = self.cata.importedBy - else : self.cata.JdC.importedBy = [] - self.cata.JdC.labelCode = self.labelCode - if not(hasattr(self.cata, 'dict_condition')): self.cata.dict_condition = {} - - # pointeur pour le dumpXSD - self.cata.JdC.cata=self.cata - - self.cata.modeleMetier = modeleMetier - if not self.cata : - #try: - #from PyQt5.QtWidgets import QMessageBox, QDialog - #QMessageBox.critical( self.QWParent, tr("Import du catalogue"),tr("Impossible d'importer le catalogue ")+ self.fichierCata) - #except : - # print ("Impossible d'importer le catalogue "+ self.fichierCata) - self.QWParent.informe("Catalogue","Impossible d'importer le catalogue "+ self.fichierCata) - self.appliEficas.close() - if self.appliEficas.salome == 0 : - sys.exit(1) - # - # analyse du catalogue (ordre des mots-cles) - # - # retrouveOrdreCataStandard fait une analyse textuelle du catalogue - # remplace par retrouveOrdreCataStandardAutre qui utilise une numerotation - # des mots cles a la creation - #print (dir(self.cata)) - self.retrouveOrdreCataStandardAutre() - if self.appliEficas.maConfiguration.modeNouvCommande == "initial" : self.retrouveOrdreCataStandard() - if hasattr(self.cata, 'Ordre_Des_Commandes') : self.Ordre_Des_Commandes=self.cata.Ordre_Des_Commandes - else : self.Ordre_Des_Commandes=None - - if hasattr(self.cata, 'Classement_Commandes_Ds_Arbre') : - self.Classement_Commandes_Ds_Arbre=self.cata.Classement_Commandes_Ds_Arbre - else : self.Classement_Commandes_Ds_Arbre=() - if hasattr(self.cata,'enum'): - try : - _temp= __import__(self.cata.enum,globals(), locals(), ['DicoEnumCasFrToEnumCasEn', 'TelemacdicoEn'], 0) - self.DicoEnumCasFrToEnumCasEn = _temp.DicoEnumCasFrToEnumCasEn - self.TelemacdicoEn = _temp.TelemacdicoEn - except : pass - - #print self.cata.Ordre_Des_Commandes - - # - # analyse des donnees liees l'IHM : UIinfo - # - uiinfo.traite_UIinfo(self.cata) - - # - # traitement des clefs documentaires - # - - self.titre=self.VERSION_EFICAS+" "+tr( " avec le catalogue ") + os.path.basename(self.fichierCata) - if self.appliEficas.ssIhm == False : self.appliEficas.setWindowTitle(self.titre) - self.appliEficas.titre=self.titre - self.QWParent.titre=self.titre - - - def importCata(self,cata): - """ - Realise l'import du catalogue dont le chemin d'acces est donne par cata - """ - nom_cata = os.path.splitext(os.path.basename(cata))[0] - rep_cata = os.path.dirname(cata) - sys.path[:0] = [rep_cata] - self.appliEficas.listeAEnlever.append(rep_cata) - - # PNPNPN pas propre __ A reflechir - if 'cata_Vimmp' in list(sys.modules.keys()) : - del sys.modules['cata_Vimmp'] - - if nom_cata in list(sys.modules.keys()) : - del sys.modules[nom_cata] - - for k in sys.modules: - if k[0:len(nom_cata)+1] == nom_cata+'.': - del sys.modules[k] - - mesScriptsNomFichier='mesScripts_'+self.code.upper() - try : - self.appliEficas.mesScripts[self.code]=__import__(mesScriptsNomFichier) - except: - pass - - #if 1 : - try : - o=__import__(nom_cata) - return o - except Exception as e: - self.QWParent.informe('catalog', 'unable to load catalog file') - import traceback - traceback.print_exc() - return 0 - - - - def retrouveOrdreCataStandardAutre(self): - """ - Construit une structure de donnees dans le catalogue qui permet - a EFICAS de retrouver l'ordre des mots-cles dans le texte du catalogue. - Pour chaque entite du catlogue on cree une liste de nom ordre_mc qui - contient le nom des mots cles dans le bon ordre - """ - self.cata_ordonne_dico, self.appliEficas.liste_simp_reel=autre_analyse_cata.analyseCatalogue(self.cata) - #print ('_________________________________________', self) - #print (self.cata_ordonne_dico) - #self.appliEficas.liste_simp_reel = () - #self.cata_ordonne_dico = {} - - def retrouveOrdreCataStandard(self): - """ - Retrouve l'ordre des mots-cles dans le catalogue, cad : - Attention s appuie sur les commentaires - """ - nom_cata = os.path.splitext(os.path.basename(self.fichierCata))[0] - rep_cata = os.path.dirname(self.fichierCata) - self.Commandes_Ordre_Catalogue = analyse_catalogue_initial.analyseCatalogue(self.fichierCata) - #print self.Commandes_Ordre_Catalogue - - def traiteIcones(self): - if self.appliEficas.maConfiguration.ficIcones==None : return - try: - ficIcones=self.appliEficas.maConfiguration.ficIcones - fichierIcones = __import__(ficIcones, globals(), locals(), [], 0) - self.appliEficas.maConfiguration.dicoIcones=fichierIcones.dicoDesIcones.dicoIcones - self.appliEficas.maConfiguration.dicoImages=fichierIcones.dicoDesIcones.dicoImages - except: - print ("Pas de fichier associe contenant des liens sur les icones ") - self.appliEficas.maConfiguration.dicoIcones={} - - - - def creeDicoInverse(self): - self.dicoInverse={} - self.dicoMC={} - listeEtapes=self.cata.JdC.commandes - for e in self.cata.JdC.commandes: - self.traiteEntite(e) - - - def creeDicoCasToCata(self): - if hasattr(self.cata,'dicoCasEn'): - _temp= __import__(self.cata.dicoCasEn,globals(), locals(), ['DicoCasEnToCata'], 0) - if self.appliEficas.langue=="ang" : - self.dicoCasToCata=_temp.dicoCasEnToCata - else : - self.dicoCasToCata=_temp.dicoCasFrToCata - - - - def traiteEntite(self,e): - boolIn=0 - for (nomFils, fils) in list(e.entites.items()) : - self.dicoMC[nomFils]=fils - self.traiteEntite(fils) - boolIn=1 - if boolIn==0 : - liste=[] - moi=e - while hasattr(moi,'pere') : - liste.append((moi.nom,moi)) - moi=moi.pere - liste.append((moi.nom,moi)) - self.dicoInverse[e.nom]=liste - self.dicoInverse[tr(e.nom)]=liste - - def creeRubrique(self,e,dico, niveau): - from Accas import A_BLOC - decale=niveau*" " - #if niveau != 0 : - # if isinstance(e,A_BLOC.BLOC): print decale, e.condition - # else : print decale, e. nom - for (nom, fils) in list(e.entites.items()) : - if list(fils.entites.items()) != [] : self.creeRubrique(fils,dico,niveau+1) - #else : print (niveau+1)*" ", nom - - - #def dumpToXsdEficas(self): - # Pas sur qu on ait jamais besoin de cela - # pass - #from Efi2Xsd import readerEfficas - #newSchema= xml = open('Cata_MED_FAM.xml').read() - #SchemaMed = efficas.CreateFromDocument(xml) - #SchemaMed.alimenteCata(self.cata) diff --git a/InterfaceQT4/readercataXML.py b/InterfaceQT4/readercataXML.py deleted file mode 100644 index c8baede1..00000000 --- a/InterfaceQT4/readercataXML.py +++ /dev/null @@ -1,84 +0,0 @@ -# -*- coding: utf-8 -*- -# Copyright (C) 2007-2021 EDF R&D -# -# 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 -# -""" - Ce module sert a lire un catalogue et a construire - un objet CataItem pour Eficas. - Il s'appuie sur la classe READERCATA -""" -# Modules Python -import sys, os -import autre_analyse_cata - - -# Modules Eficas - -from monChoixCata import MonChoixCata -from Extensions.i18n import tr -from Extensions.eficas_exception import EficasException -import uiinfo -from Efi2Xsd import readerEfiXsd -# ATtention pas teste depuis le chgt de nom - -from readercata import ReaderCataCommun - -class ReaderCata (ReaderCataCommun): - - def __init__(self,QWParent, appliEficas): - self.QWParent=QWParent - self.appliEficas=appliEficas - self.VERSION_EFICAS=self.appliEficas.VERSION_EFICAS - self.code=self.appliEficas.code - self.ssCode=self.appliEficas.ssCode - # PN ?? bizarre le 22/04/20 - self.appliEficas.formatfichierOut='python' - self.appliEficas.formatfichierIn ='xml' - self.modeNouvCommande=self.appliEficas.maConfiguration.modeNouvCommande - self.labelCode=self.appliEficas.labelCode - self.version_cata=None - self.ficCata=None - self.OpenCata() - self.cataitem=None - self.titre='Eficas XML' - self.Ordre_Des_Commandes=None - self.Classement_Commandes_Ds_Arbre=() - self.demandeCatalogue=False - - #self.traiteIcones() - #self.creeDicoInverse() - - - def OpenCata(self): - - #self.ficCata = 'Cata_MED_FAM.xml' - #xml = open('/home/A96028/QT5GitEficasTravail/eficas/Med/Cata_MED_FAM.xml').read() - #xml = open('/home/A96028/QT5GitEficasTravail/eficas/CataTestXSD/cata_test1.xml').read() - self.choisitCata() - xml=open(self.ficCata).read() - SchemaMed = readerEfiXsd.efficas.CreateFromDocument(xml) - SchemaMed.exploreCata() - self.cata=SchemaMed - uiinfo.traite_UIinfo(self.cata) - self.Commandes_Ordre_Catalogue=[] - self.cata_ordonne_dico,self.appliEficas.liste_simp_reel=autre_analyse_cata.analyseCatalogue(self.cata) - self.liste_groupes=None - - def dumpToXml(self): - # pour compatibilite - pass diff --git a/InterfaceQT4/typeNode.py b/InterfaceQT4/typeNode.py deleted file mode 100644 index 2e3e2de3..00000000 --- a/InterfaceQT4/typeNode.py +++ /dev/null @@ -1,262 +0,0 @@ -# -*- coding: utf-8 -*- -# Copyright (C) 2007-2021 EDF R&D -# -# 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 -# -from __future__ import absolute_import -try : - from builtins import object -except : pass - -from PyQt5.QtWidgets import QAction, QMenu, QMessageBox - -from Extensions.i18n import tr -import types - -#---------------------------# -class PopUpMenuRacine(object) : -#---------------------------# - - def createPopUpMenu(self): - #print "createPopUpMenu" - self.ParamApres = QAction(tr('Parametre'),self.tree) - self.ParamApres.triggered.connect(self.addParametersApres) - self.ParamApres.setStatusTip(tr("Insere un parametre")) - self.menu = QMenu(self.tree) - self.menu.addAction(self.ParamApres) - self.menu.setStyleSheet("background:rgb(220,220,220); ") - - - def addParametersApres(self): - item= self.tree.currentItem() - item.addParameters(True) - -#---------------------------# -class PopUpMenuNodeMinimal(object) : -#---------------------------# - - def createPopUpMenu(self): - #print ("createPopUpMenu") - #self.appliEficas.salome=True - self.createActions() - self.menu = QMenu(self.tree) - #self.menu.setStyleSheet("background:rgb(235,235,235); QMenu::item:selected { background-color: red; }") - #ne fonctionne pas --> la ligne de commentaire devient rouge - self.menu.setStyleSheet("background:rgb(220,220,220); ") - #items du menu - self.menu.addAction(self.Supprime) - if hasattr(self.appliEficas, 'mesScripts'): - if self.editor.code in self.editor.appliEficas.mesScripts : - self.dict_commandes_mesScripts=self.appliEficas.mesScripts[self.editor.code].dict_commandes - if self.tree.currentItem().item.getNom() in self.dict_commandes_mesScripts : - self.ajoutScript() - - def ajoutScript(self): - # cochon mais je n arrive pas a faire mieux avec le mecanisme de plugin - # a revoir avec un menu et un connect sur le triggered sur le menu ? - if hasattr(self.appliEficas, 'mesScripts'): - if self.editor.code in self.editor.appliEficas.mesScripts : - self.dict_commandes_mesScripts=self.appliEficas.mesScripts[self.editor.code].dict_commandes - else : return - - from Extensions import jdc_include - if isinstance(self.item.jdc,jdc_include.JDC_INCLUDE) : return - - listeCommandes=self.dict_commandes_mesScripts[self.tree.currentItem().item.getNom()] - if type(listeCommandes) != tuple: listeCommandes=(listeCommandes,) - numero=0 - for commande in listeCommandes : - conditionSalome=commande[3] - if (self.appliEficas.salome == 0 and conditionSalome == True): return - label=commande[1] - tip=commande[5] - self.action=QAction(label,self.tree) - self.action.setStatusTip(tip) - if numero==4: self.action.triggered.connect(self.appelleFonction4) - if numero==3: self.action.triggered.connect(self.appelleFonction3); numero=4 - if numero==2: self.action.triggered.connect(self.appelleFonction2); numero=3 - if numero==1: self.action.triggered.connect(self.appelleFonction1); numero=2 - if numero==0: self.action.triggered.connect(self.appelleFonction0); numero=1 - self.menu.addAction(self.action) - - - def appelleFonction0(self): - self.appelleFonction(0) - - def appelleFonction1(self): - self.appelleFonction(1) - - def appelleFonction2(self): - self.appelleFonction(2) - - def appelleFonction3(self): - self.appelleFonction(3) - - def appelleFonction4(self): - self.appelleFonction(4) - - def appelleFonction(self,numero,nodeTraite=None): - if nodeTraite==None : nodeTraite=self.tree.currentItem() - nomCmd=nodeTraite.item.getNom() - if hasattr(self.appliEficas, 'mesScripts'): - if self.editor.code in self.editor.appliEficas.mesScripts : - self.dict_commandes_mesScripts=self.appliEficas.mesScripts[self.editor.code].dict_commandes - else : return - listeCommandes=self.dict_commandes_mesScripts[nomCmd] - commande=listeCommandes[numero] - conditionValid=commande[4] - - - if (nodeTraite.item.isValid() == 0 and conditionValid == True): - QMessageBox.warning( None, - tr("item invalide"), - tr("l item doit etre valide"),) - return - fonction=commande[0] - listenomparam=commande[2] - listeparam=[] - for p in listenomparam: - if hasattr(nodeTraite,p): - listeparam.append(getattr(nodeTraite,p)) - if p=="self" : listeparam.append(self) - - try : - res, commentaire= fonction(listeparam) - if not res : - QMessageBox.warning( None, - tr("echec de la fonction"), - tr(commentaire),) - return - except : - pass - - - - - def createActions(self): - self.CommApres = QAction(tr('apres'),self.tree) - self.CommApres.triggered.connect(self.addCommApres) - self.CommApres.setStatusTip(tr("Insere un commentaire apres la commande ")) - self.CommAvant = QAction(tr('avant'),self.tree) - self.CommAvant.triggered.connect(self.addCommAvant) - self.CommAvant.setStatusTip(tr("Insere un commentaire avant la commande ")) - - self.ParamApres = QAction(tr('apres'),self.tree) - self.ParamApres.triggered.connect(self.addParametersApres) - self.ParamApres.setStatusTip(tr("Insere un parametre apres la commande ")) - self.ParamAvant = QAction(tr('avant'),self.tree) - self.ParamAvant.triggered.connect(self.addParametersAvant) - self.ParamAvant.setStatusTip(tr("Insere un parametre avant la commande ")) - - self.Supprime = QAction(tr('Supprimer'),self.tree) - self.Supprime.triggered.connect(self.supprimeNoeud) - self.Supprime.setStatusTip(tr("supprime le mot clef ")) - self.Documentation = QAction(tr('Documentation'),self.tree) - self.Documentation.triggered.connect(self.viewDoc) - self.Documentation.setStatusTip(tr("documentation sur la commande ")) - - def supprimeNoeud(self): - item= self.tree.currentItem() - item.delete() - - def viewDoc(self): - self.node=self.tree.currentItem() - cle_doc = self.node.item.getDocu() - if cle_doc == None : - QMessageBox.information( self.editor,tr( "Documentation Vide"), \ - tr("Aucune documentation n'est associee a ce noeud")) - return - commande = self.editor.appliEficas.maConfiguration.exec_acrobat - try : - f=open(commande,"rb") - except : - texte=tr("impossible de trouver la commande ") + commande - QMessageBox.information( self.editor, tr("Lecteur PDF"), texte) - return - import os - if cle_doc.startswith('http:'): - fichier = cle_doc - else : - fichier = os.path.abspath(os.path.join(self.editor.maConfiguration.path_doc, - cle_doc)) - try : - f=open(fichier,"rb") - except : - texte=tr("impossible d'ouvrir ") + fichier - QMessageBox.information( self.editor, tr("Documentation Vide"), texte) - return - - - if os.name == 'nt': - os.spawnv(os.P_NOWAIT,commande,(commande,fichier,)) - elif os.name == 'posix': - script ="#!/usr/bin/sh \n%s %s&" %(commande,fichier) - pid = os.system(script) - - def addParametersApres(self): - item= self.tree.currentItem() - item.addParameters(True) - - def addParametersAvant(self): - item= self.tree.currentItem() - item.addParameters(False) - - def addCommApres(self): - item= self.tree.currentItem() - item.addComment(True) - - def addCommAvant(self): - item= self.tree.currentItem() - item.addComment(False) - - def deplieCeNiveau(self): - item= self.tree.currentItem() - item.deplieCeNiveau() - -#--------------------------------------------# -class PopUpMenuNodePartiel (PopUpMenuNodeMinimal): -#---------------------------------------------# - def createPopUpMenu(self): - PopUpMenuNodeMinimal.createPopUpMenu(self) - #ss-menu Comment: - self.commentMenu=self.menu.addMenu(tr('Commentaire')) - self.commentMenu.addAction(self.CommApres) - self.commentMenu.addAction(self.CommAvant) - #ss-menu Parameters: - self.paramMenu =self.menu.addMenu(tr('Parametre')) - self.paramMenu.addAction(self.ParamApres) - self.paramMenu.addAction(self.ParamAvant) - self.menu.addAction(self.Documentation) - self.menu.removeAction(self.Supprime) - self.menu.addAction(self.Supprime) - - -#-----------------------------------------# -class PopUpMenuNode(PopUpMenuNodePartiel) : -#-----------------------------------------# - def createPopUpMenu(self): - PopUpMenuNodePartiel.createPopUpMenu(self) - self.Commente = QAction(tr('ce noeud'),self.tree) - self.Commente.triggered.connect(self.commenter) - self.Commente.setStatusTip(tr("commente le noeud ")) - self.commentMenu.addAction(self.Commente) - self.menu.removeAction(self.Supprime) - self.menu.addAction(self.Supprime) - - def commenter(self): - item= self.tree.currentItem() - item.commentIt() diff --git a/InterfaceQT4/viewManager.py b/InterfaceQT4/viewManager.py deleted file mode 100644 index 362c6211..00000000 --- a/InterfaceQT4/viewManager.py +++ /dev/null @@ -1,431 +0,0 @@ -# -*- coding: utf-8 -*- -# Copyright (C) 2007-2021 EDF R&D -# -# 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 -# - -from __future__ import absolute_import -try : - from builtins import str - from builtins import object -except : pass - -import os -from Extensions.i18n import tr -from PyQt5.QtWidgets import QFileDialog, QMessageBox -from PyQt5.QtCore import QFileInfo - -DictExtensions= {"MAP" : ".map"} -class MyViewManager(object): - - def __init__(self,appliEficas): - self.appliEficas=appliEficas - self.tabWidgets = [] - self.mesIndexes = {} - self.appliEficas=appliEficas - self.editors = [] - self.dictEditors={} - self.untitledCount = 0 - self.doubles = {} - - self.myQtab = self.appliEficas.myQtab - self.myQtab.currentChanged.connect(self.indexChanged) - self.myQtab.tabCloseRequested.connect(self.closeTab) - - def indexChanged(self): - index=self.myQtab.currentIndex() - if index in self.dictEditors: - editor=self.dictEditors[index] - if editor.jdc !=None : - CONTEXT.unsetCurrentJdC() - CONTEXT.setCurrentJdC(editor.jdc) - self.appliEficas.maConfiguration=editor.maConfiguration - self.appliEficas.code=editor.maConfiguration.code - self.appliEficas.setWindowTitle(editor.titre) - self.appliEficas.construitMenu() - - def handleOpen(self,fichier=None,patron=0,units=None): - result = None - if fichier is None: - if self.appliEficas.demande==True : - self.appliEficas.definitCode(None,None) - if self.appliEficas.code == None:return - - if self.appliEficas.code in DictExtensions: - chaine="JDC (*"+DictExtensions[self.appliEficas.code]+");;" - extensions=tr(chaine+ "All Files (*)") - elif self.appliEficas.code== "TELEMAC" : extensions=tr('CAS (*.cas);;All Files (*)') - else : - extensions=tr('Fichiers JDC (*.comm);;''Tous les Fichiers (*)') - - fichier = QFileDialog.getOpenFileName(self.appliEficas, - tr('Ouvrir Fichier'), - self.appliEficas.maConfiguration.savedir, - extensions) - fichier=fichier[0] - fichier = os.path.abspath(fichier) - ulfile = os.path.abspath(fichier) - self.appliEficas.maConfiguration.savedir=os.path.split(ulfile)[0] - self.appliEficas.addToRecentList(fichier) - maPage = self.getEditor( fichier,units=units) - if maPage : result = maPage - if maPage : self.myQtab.setTabText(self.myQtab.indexOf(maPage),os.path.basename(fichier)) - return result - - def closeTab(self,indexAFermer): - self.handleClose(indexAFermer = indexAFermer) - - def handleClose(self,doitSauverRecent = 1,texte=tr('&Quitter'),indexAFermer=None): - if doitSauverRecent : self.appliEficas.sauveRecents() - if indexAFermer == None : index=self.myQtab.currentIndex() - else : index = indexAFermer - if index < 0 : return - res=self.checkDirty(self.dictEditors[index],texte) - if res == 2 : return 2 # l utilisateur a annule - idx=index - while idx < len(self.dictEditors) -1 : - self.dictEditors[idx]=self.dictEditors[idx+1] - idx = idx + 1 - del self.dictEditors[len (self.dictEditors) -1] - try : - del self.doubles[self.dictEditors[index]] - except : - pass - self.myQtab.removeTab(index) - return res - - - def run(self): - index=self.myQtab.currentIndex() - if index < 0 : return - editor=self.dictEditors[index] - editor.run() - - def saveRun(self): - index=self.myQtab.currentIndex() - if index < 0 : return - editor=self.dictEditors[index] - editor.saveRun() - - def handleCloseAll(self,texte=tr('Quitter')): - res=0 - self.appliEficas.sauveRecents() - while len(self.dictEditors) > 0 : - self.myQtab.setCurrentIndex(0) - res=self.handleClose(0,texte) - if res==2 : return res # l utilsateur a annule - return res - - def handleRechercher(self): - #print "passage dans handleRechercher" - index=self.myQtab.currentIndex() - if index < 0 : return - editor=self.dictEditors[index] - editor.handleRechercher() - - def handleRechercherDsCatalogue(self): - #print "passage dans handleRechercher" - index=self.myQtab.currentIndex() - if index < 0 : return - editor=self.dictEditors[index] - editor.handleRechercherDsCatalogue() - - def handleDeplier(self): - index=self.myQtab.currentIndex() - if index < 0 : return - editor=self.dictEditors[index] - editor.handleDeplier() - - def handleEditCopy(self): - #print "passage dans handleEditCopy" - index=self.myQtab.currentIndex() - if index < 0 : return - editor=self.dictEditors[index] - editor.handleEditCopy() - - def handleEditCut(self): - #print "passage dans handleEditCut" - index=self.myQtab.currentIndex() - if index < 0 : return - editor=self.dictEditors[index] - editor.handleEditCut() - - def handleEditPaste(self): - #print "passage dans handleEditPaste" - index=self.myQtab.currentIndex() - if index < 0 : return - editor=self.dictEditors[index] - editor.handleEditPaste() - - def handleSupprimer(self): - index=self.myQtab.currentIndex() - if index < 0 : return - editor=self.dictEditors[index] - editor.handleSupprimer() - - def handleAjoutEtape(self,nomEtape): - index=self.myQtab.currentIndex() - if index < 0 : return - editor=self.dictEditors[index] - editor.handleAjoutEtape(nomEtape) - - - def newEditor(self,include=0): - if self.appliEficas.demande==True : - self.appliEficas.definitCode(None,None) - if self.appliEficas.code == None:return - maPage=self.getEditor(include=include) - - def newIncludeEditor(self): - self.newEditor(include=1) - - def handleViewJdcFichierSource(self): - index=self.myQtab.currentIndex() - if index < 0 : return - self.dictEditors[index].viewJdcSource() - - def ouvreArbre(self): - index=self.myQtab.currentIndex() - if index < 0 : return - self.dictEditors[index].ouvreArbre() - - def fermeArbre(self): - index=self.myQtab.currentIndex() - if index < 0 : return - self.dictEditors[index].fermeArbre() - - def ajoutCommentaire(self): - index=self.myQtab.currentIndex() - if index < 0 : return - editor=self.dictEditors[index] - editor.ajoutCommentaire() - - def handleViewJdcRegles(self): - index=self.myQtab.currentIndex() - if index < 0 : return - self.dictEditors[index].viewJdcRegles() - - def handleGestionParam(self): - index=self.myQtab.currentIndex() - if index < 0 : - QMessageBox.warning( self.appliEficas,tr(u"Creation Parametre indisponible"),tr(u"les parametres sont lies a un jeu de donnees")) - return - self.dictEditors[index].gestionParam() - - def handleViewJdcRapport(self): - index=self.myQtab.currentIndex() - if index < 0 : return - self.dictEditors[index].viewJdcRapport() - - def handleViewJdcPy(self): - index=self.myQtab.currentIndex() - if index < 0 : return - self.dictEditors[index].viewJdcPy() - - def saveCurrentEditor(self): - index=self.myQtab.currentIndex() - if index < 0 : return - editor=self.dictEditors[index] - if editor in self.doubles : - QMessageBox.warning( - None, - tr("Fichier Duplique"), - tr("Le fichier ne sera pas sauvegarde."),) - return - ok, newName = editor.saveFile() - if ok : - fileName=os.path.basename(newName) - self.myQtab.setTabText(index,fileName) - return ok - - def saveCompleteCurrentEditor(self): - index=self.myQtab.currentIndex() - if index < 0 : return - editor=self.dictEditors[index] - ok, newName = editor.saveCompleteFile() - return ok - - def sauveLigneCurrentEditor(self): - index=self.myQtab.currentIndex() - if index < 0 : return - editor=self.dictEditors[index] - if editor in self.doubles : - QMessageBox.warning( - None, - tr("Fichier Duplique"), - tr("Le fichier ne sera pas sauvegarde."),) - return - ok, newName = editor.sauveLigneFile() - if ok : - fileName=os.path.basename(newName) - self.myQtab.setTabText(index,fileName) - return ok - - def saveAsCurrentEditor(self): - index=self.myQtab.currentIndex() - editor=self.dictEditors[index] - oldName=editor.fichier - ok,newName = editor.saveFileAs() - if ok : - fileName=os.path.basename(newName) - self.myQtab.setTabText(index,fileName) - if editor in self.doubles : - if oldName != newName : - del self.doubles[editor] - return ok - - def displayJDC(self,jdc,fn=None): - """ - Public slot to display a file in an editor. - @param fn name of file to be opened - # insert filename into list of recently opened files - """ - titre=None - if fn != None : titre=fn.split("/")[-1] - editor = self.getEditor(fichier= fn, jdc = jdc ,include=1) - self.appliEficas.addToRecentList(editor.getFileName()) - - def getEditor(self,fichier = None,jdc = None, units = None,include=0): - newWin = 0 - double = None - indexEditor=0 - for indexEditor in self.dictEditors : - editor=self.dictEditors[indexEditor] - if self.samePath(fichier, editor.getFileName()): - msgBox = QMessageBox() - msgBox.setWindowTitle(tr("Fichier")) - msgBox.setText(tr("Le fichier %s est deja ouvert", str(fichier))) - msgBox.addButton(tr("&Duplication"),0) - msgBox.addButton(tr("&Abandonner"),1) - abort=msgBox.exec_() - if abort: break - double=editor - else : - from .editor import JDCEditor - editor = JDCEditor(self.appliEficas,fichier, jdc, self.myQtab,units=units,include=include) - if double != None : - self.doubles[editor]=double - if editor.jdc: # le fichier est bien un jdc - self.editors.append(editor) - newWin = 1 - else: - editor.closeIt() - - if newWin: - self.addView(editor, fichier) - elif editor.jdc: - self.myQtab.setCurrentIndex(indexEditor) - - index=self.myQtab.currentIndex() - if index != -1 : - self.dictEditors[index]=editor - return editor - - def addView(self, win, fichier=None): -#PNPNPNPN --> a affiner - if fichier is None: - self.untitledCount += 1 - self.myQtab.addTab(win, tr("Fichier non encore nomme") + str(self.untitledCount)) - #self.myQtab.addTab(win, str(self.appliEficas.code)) - else: - liste=fichier.split('/') - txt = liste[-1] - if not QFileInfo(fichier).isWritable(): - txt = '%s (ro)' % txt - self.myQtab.addTab(win,txt ) - self.myQtab.setCurrentWidget(win) - self.currentEditor=win - win.setFocus() - - def getOpenStartDir(self) : - #PN --> Les Preferences - try : - userDir=os.path.expanduser("~/Eficas_install/") - return userDir - except : - return "" - - def samePath(self,f1, f2): - """ - compare two paths. - """ - if f1 is None or f2 is None: return 0 - if os.path.normcase(os.path.normpath(f1)) == os.path.normcase(os.path.normpath(f2)) : return 1 - return 0 - - - def checkDirty(self, editor,texte): - """ - Private method to check dirty status and open a message window. - - @param editor editor window to check - @return flag indicating successful reset of the dirty flag (boolean) - """ - res=1 - if (editor.modified) and (editor in self.doubles) : - msgBox = QMessageBox(None) - msgBox.setWindowTitle(tr("Fichier Duplique")) - msgBox.setText(tr("Le fichier ne sera pas sauvegarde.")) - msgBox.addButton(texte,0) - msgBox.addButton(tr("&Annuler"),1) - res=msgBox.exec_() - if res == 0 : return 1 - return 2 - if editor.modified: - fn = editor.getFileName() - if fn is None: fn = tr('Noname') - msgBox = QMessageBox(None) - msgBox.setWindowTitle(tr("Fichier Modifie")) - msgBox.setText(tr("Le fichier ne sera pas sauvegarde.")) - msgBox.addButton(tr("&Sauvegarder"),1) - msgBox.addButton(tr("&Quitter sans sauvegarder"),0) - msgBox.addButton(tr("&Annuler"),2) - res=msgBox.exec_() - if res == 2 : return res - if res == 0: - (ok, newName) = editor.saveFile() - if ok: - fileName=os.path.basename(newName) - index=self.myQtab.currentIndex() - self.myQtab.setTabText(index,fileName) - return ok - return res - - def handleAjoutGroup(self,listeGroup): - index=self.myQtab.currentIndex() - if index < 0 : return - editor=self.dictEditors[index] - editor.handleAjoutGroup(listeGroup) - - def handleFonctionUtilisateur(self,laFonctionUtilisateur, lesArguments): - # Peut-etre a blinder un peu plus sur le nb d argument - index=self.myQtab.currentIndex() - if index < 0 : return - editor=self.dictEditors[index] - if editor.getEtapeCourante() == None : - QMessageBox.information( self.appliEficas, - tr("Selectionner une etape"), - tr("Le texte ne peut pas etre insere dans un fichier vide,\nCreer un materiau vide ou une zone vide et inserer le catalogue apres")) - return - - listeParam = [] - for p in lesArguments: - #print (p) - if hasattr(editor,p): listeParam.append(getattr(editor,p)) - if p=="editor" : listeParam.append(editor) - if p=="etapeCourante" : listeParam.append(editor.getEtapeCourante()) - laFonctionUtilisateur(*listeParam) diff --git a/InterfaceQT4/viewManagerSsIhm.py b/InterfaceQT4/viewManagerSsIhm.py deleted file mode 100644 index 6a257201..00000000 --- a/InterfaceQT4/viewManagerSsIhm.py +++ /dev/null @@ -1,239 +0,0 @@ -# -*- coding: utf-8 -*- -# Copyright (C) 2007-2021 EDF R&D -# -# 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 -# - -from __future__ import absolute_import -try : - from builtins import str - from builtins import object -except : pass - -import os -from Extensions.i18n import tr - -# -------------------------------- -class JdcSsIhmHandler(object): -# -------------------------------- -# retourne a l utilisateur - - def __init__(self,viewManager): -# -------------------------------------- - self.viewManagerSsIhm=viewManager - - def viewJdcPy(self) : -# --------------------- - self.viewManagerSsIhm.handleViewJdcPy(self) - - def viewJdcSource(self) : -# --------------------- - self.viewManagerSsIhm.handleViewJdcSource(self) - - def getFileName(self): -# --------------------- - self.viewManagerSsIhm.getFileName(self) - - def viewJdcRapport(self) : -# --------------------- - self.viewManagerSsIhm.handleViewJdcRapport(self) - - def getJdcRapport(self) : -# --------------------- - return self.viewManagerSsIhm.handleGetJdcRapport(self) - - def getDicoPython(self) : -# ------------------------- - return self.viewManagerSsIhm.generDico(self) - - def isJdcValid(self) : -# ------------------------- - return self.viewManagerSsIhm.isJdcValid(self) - - def fileSaveAs(self,fileName): -# ------------------------- - return self.viewManagerSsIhm.fileSaveAs(self,fileName) - - def fileLegerSaveAs(self,fileName): -# ----------------------------------- - return self.viewManagerSsIhm.fileLegerSaveAs(self,fileName) - - - -#-------------------------------- -class MyViewManagerSsIhm(object): -#-------------------------------- -# Symetrique de ViewManager mais pas d heritage entre les 2 -# dans le viewManager pas de souci pour savoir qui est le jdc sur lequel on travaille -# ici en revanche.... c est moins sur . voir avec le fichier - -# -------------------------------- - def __init__(self,appliEficas): -# -------------------------------- - self.appliEficas=appliEficas - self.tabWidgets = [] - self.mesIndexes = {} - self.dictEditors={} - self.untitledCount = 0 - self.doubles = {} - -# ------------------------------------------------------ - def handleOpen(self,fichier=None, units=None): -# ------------------------------------------------------ - result = None - if fichier is None: - print ('nom de fichier obligatoire') - return None - - for handler in self.dictEditors : - editor=self.dictEditors[handler] - if self.samePath(fichier, editor.getFileName()): - print ('fichier deja ouvert . pas de nouvel editor') - return handler - - monNewHandler = self.getNewEditor(fichier,units) - return monNewHandler - -# ---------------------------------------------------------------------- - def getNewEditor(self,fichier = None,jdc = None, units = None,include=0): -# ---------------------------------------------------------------------- -# il faudrait decider entre e handler ou non -# le cas d usage n est pas tout a fait identique : -# avec handler pour les utilisateurs avance -# sans pour les utilisateurs encore plus ancvances et les tests - - from InterfaceQT4.editorSsIhm import JDCEditorSsIhm - editor = JDCEditorSsIhm(self.appliEficas,fichier,jdc, units=units,include=include) - - if editor.jdc: # le fichier est bien un jdc - monHandler = JdcSsIhmHandler(self) - self.dictEditors[monHandler]=editor - return monHandler - else: - print ('impossible de construire le jdc') - return None - -# -------------------------------------------------------------------------------- - def getNewEditorNormal(self,fichier = None,jdc = None, units = None,include=0): -# -------------------------------------------------------------------------------- - - from InterfaceQT4.editorSsIhm import JDCEditorSsIhm - editor = JDCEditorSsIhm(self.appliEficas,fichier,jdc, units=units,include=include) - self.editor=editor - return editor - -# ----------------------------- - def samePath(self,f1, f2): -# ------------------------------ - """ - compare two paths. - """ - if f1 is None or f2 is None: return 0 - if os.path.normcase(os.path.normpath(f1)) == os.path.normcase(os.path.normpath(f2)) : return 1 - return 0 - -# --------------------------------- - def handleViewJdcPy(self,handler): -# --------------------------------- - if not (handler in self.dictEditors) : - print ('editor non trouve') - return - self.dictEditors[handler].viewJdcPy() - -# --------------------------------- - def getFileName(self,handler): -# --------------------------------- - if not (handler in self.dictEditors) : - print ('editor non trouve') - return - return self.dictEditors[handler].getFileName() - - -# --------------------------------------------- - def handleViewJdcSource(self,handler): -# --------------------------------------------- - print (handler) - if not (handler in self.dictEditors) : - print ('editor non trouve') - return - self.dictEditors[handler].viewJdcSource() - - -# --------------------------------------------- - def handleViewJdcRapport(self,handler): -# --------------------------------------------- - print (handler) - if not (handler in self.dictEditors) : - print ('editor non trouve') - return - self.dictEditors[handler].viewJdcRapport() - -# --------------------------------------------- - def handleGetJdcRapport(self,handler): -# --------------------------------------------- - if not (handler in self.dictEditors) : - print ('editor non trouve') - return - return self.dictEditors[handler].getJdcRapport() - -# --------------------------------------------- - def handleViewJdcRapport(self,handler): -# --------------------------------------------- - print (handler) - if not (handler in self.dictEditors) : - print ('editor non trouve') - return - self.dictEditors[handler].viewJdcRapport() - - -# --------------------------------------------- - def generDico(self,handler): -# --------------------------------------------- - print (handler) - if not (handler in self.dictEditors) : - print ('editor non trouve') - return - return self.dictEditors[handler].generDico() - - -# --------------------------------------------- - def isJdcValid(self,handler): -# --------------------------------------------- - print (handler) - if not (handler in self.dictEditors) : - print ('editor non trouve') - return - return self.dictEditors[handler].jdc.isValid() - - -# --------------------------------------------- - def fileSaveAs(self,handler,fileName): -# --------------------------------------------- - print (handler) - if not (handler in self.dictEditors) : - print ('editor non trouve') - return - return self.dictEditors[handler].saveFile(fileName) - -# --------------------------------------------- - def fileLegerSaveAs(self, handler,fileName): -# --------------------------------------------- -# print (handler) - if not (handler in self.dictEditors) : - print ('editor non trouve') - return - self.dictEditors[handler].saveFileLegerAs(fileName) diff --git a/JP/cata_Du_2504.py b/JP/cata_Du_2504.py deleted file mode 100644 index 5c9ea512..00000000 --- a/JP/cata_Du_2504.py +++ /dev/null @@ -1,385 +0,0 @@ -# coding: utf-8 -*- -# - -import os -import types -monFile=os.path.abspath(__file__) - -# ------------------------------------------------- Definition fonction utilisateur -from Accas import * -class Surface_Elementaire(UserASSD): pass -class StudySD(ASSD) : pass -class Specie(UserASSD) : pass -class Bondedparticle(UserASSD) : pass - -def creeSpecie(MC) : - MC.creeObjetClasse(Specie) - return - -def creeBondedparticle(MC) : - MC.creeObjetClasse(Bondedparticle) - return - -def creeSurfaceElementaire(MC) : - MC.creeObjetClasse(Surface_Elementaire) - return - -# ------------------------------------------------- Definition fonction du catalogue ou macro - -def champ(nomDelaContante, labels ,nbReels ) : -# ajouter les extensions pour le fichier et les blocs associes -# certains champs ne seront jamais uniformes - #Input_Mode = SIMP( statut='o', typ='TXM', into=('uniform value','values directly assigned','values read in file','analytical function', 'call to a service')), -#PNPN : Passer le nom du champ pour le label du vecteur - dicoBloc = {} - dicoBloc[nomDelaContante] = SIMP( statut='o', typ='R') - return FACT( statut='o', - Input_Mode = SIMP( statut='o', typ='TXM', into=('uniform value','values directly assigned','values read in file','analytical function',)), - b_uniforme = BLOC( condition = "Input_Mode == 'uniform value'", **dicoBloc), - b_vsaisies = BLOC( condition = "Input_Mode == 'values directly assigned'", - Field = SIMP( typ='R', statut='o', max ='**'), - #Vecteur = SIMP( fenetreIhm='Tableau', homo = labels, - # statut='o', min=2, max='**', - # typ=Tuple(nbReels), - # validators=VerifTypeTuple(("'R',"*nbReels),),) # end particle - ), #b_vsaisie - b_vdsfich = BLOC( condition = "Input_Mode == 'values read in file'", - Format = SIMP( statut='o', typ='TXM', into=['txt','Med',], position='global' ), - td_txt = BLOC_FICHIER(condition = 'Format == "txt"', - File = SIMP( statut='o', typ=('File','Text Files(*.txt);All Files (*)'),), - ), - td_med_1 = BLOC_FICHIER( condition = 'Format == "Med"', - File = SIMP( statut='o', typ=('File','Med Files(*.med);All Files (*)'),), - ), - td_med_2 = BLOC( condition = 'Format == "Med"', - FieldName = SIMP( statut='o', typ='TXM',), - ), - ), - b_vfct = BLOC( condition = "Input_Mode == 'analytical function'", - Function = SIMP( statut='o', typ='TXM',), - ), - #b_vserc = BLOC( condition = "Input_Mode == 'call to a service'", - # Service = SIMP( statut='o', typ='TXM',), - #), - ) - - -def BlocPourLesFiles(laCondition, NomDuFile, ListeFormats): - SIMPFormatFile = SIMP( statut='o', typ='TXM', into=tuple(ListeFormats) +('others',),) - dicoDesBlocs = {} - for formatFich in ListeFormats : - nomBloc = 'b_File_Format' + str(formatFich) - typeDesFiles = ('File', formatFich + " Files (*." + formatFich + ");;All Files (*)",) - blocCondition = "Format_File == '" + formatFich + "'" - dicoDesBlocs[nomBloc] = BLOC_FICHIER( condition = blocCondition, NomDuFile = SIMP( statut='o', typ=typeDesFiles ),) - dicoDesBlocs['b_File_Format_others'] = BLOC_FICHIER(condition = "Format_File == 'others'", NomDuFile = SIMP( statut='o', typ=('File','All Files (*)'),),) - return BLOC( condition = laCondition, Format_File = SIMPFormatFile, **dicoDesBlocs) - - -# ____________________________________________________________________________________________ # - -JdC = JDC_CATA(code='Vimmp',fichierSource=monFile) - - -Study = OPER(nom = 'Study', sd_prod = StudySD, - Title = SIMP( statut='o', typ='TXM'), - Simulated_Time_Lapse = FACT( statut='o', - Initial_Time = SIMP( statut='o', typ='R'), - Duration = SIMP( statut='o', typ='R'), - ), -# - Geometric_Domain= FACT( statut='o', - Shape = SIMP( statut='o', typ='TXM', into=['Shape Simplifiee', 'CAD or Mesh']), - b_Shape = BLOC( condition = 'Shape == "Shape Simplifiee"', - Box = SIMP( statut='o', typ='TXM', into=['Cube', 'Sphere','Cylinder'] ), - b_Cube = BLOC( condition = 'Box == "Cube"', - #Taille_Box_Englobante = SIMP( statut='o', typ='R', max=3, min =3) - # derait etre un Tuple(3) mais a faire apres la projection - Size_Of_Bounding_Box = SIMP( statut='o', typ=Tuple(3), validators=VerifTypeTuple(('R','R','R'),),) - ), # fin b_Cube - b_Boule = BLOC( condition = 'Box == "Sphere"', - Center = SIMP( statut='o', typ='R', max=3, min =3), - # devrait etre un Tuple(3) mais a faire apres la projection - ),# fin b_Boule - b_Cylinder = BLOC( condition = 'Box == "Cylinder"', - Heigth = SIMP( statut="o", typ='R', val_min=0.0, ang='Nanotube length [m]'), - ),# fin b_Tube - b_Boule_ou_Cylinder = BLOC( condition = 'Box == "Sphere" or Box == "Cylinder"', - Radius = SIMP( statut='o', typ='R', val_min=0.0, ang='radius length [m]') , - ),# fin b_Boule_ouCylinder - ), # fin b_Shape -# - b_CAO = BlocPourLesFiles( "Shape == 'CAD or Mesh'",'Domain_File', ['txt','med','I-deas', 'Gmsh', 'top',]), - - Elementary_Surface=SIMP( statut='o', typ='TXM',max='**', siValide=creeSurfaceElementaire), - ), # fin Geometric_Domain - - -# ----------------------------------------------------------------- System_Component ---------------------------------------------------------------------------# - System_Component= FACT( statut='o', max = "**", - - Component = SIMP( statut='o', typ='TXM', into=['particle', 'Fluid','Solid ',], position='global'), - # Physical_Description = FACT( min=1, max= 2, statut='o', - # PN : je ne comprends pas. cela n a pas de sens ?? - - General_Level_Of_Description = SIMP( statut='o', typ='TXM', into=['Microscopic','Mesoscopic', 'Macroscopic'] ), - - b_particle = BLOC( condition = "Component == 'particle'", - #-----------------------------------------------------# - Physical_Description_particle = FACT( statut='o', - #-----------------------------------------------------# - - List_Of_Species = FACT( statut='o', - # ------------------------------# - Number_Of_Species = SIMP( statut='o', typ='I', defaut=1, position='global_jdc'), - Specie = FACT( statut='o', max ="**", - Name_Of_Specie = SIMP( statut='o', typ='TXM', siValide=creeSpecie), - Mass_Molaire = SIMP( statut='o', typ='R',), - Mass_Fraction = SIMP( statut='f', typ='R',), - b_Electrostatique = BLOC( condition = "Permittivity != None", - Charge = SIMP( statut='o', typ='R'), - ), # fin b_Electrostatic - ), # fin Specie - ), # fin List_Of_Species - - List_Of_Bonded_Particles = FACT( statut='f', - # -------------------------------------------# - Bonded_Particles = FACT( statut='o', max = "**", - Name_Of_Bonded_Particles = SIMP( statut='o', typ='TXM',siValide=creeBondedparticle ), - List_Of_Species = SIMP( statut='o', min=2, typ=Specie , max = "**"), - ), # Bonded_Particles - ), # List_Of_Bonded_Particles - - List_Of_Interactions = FACT( statut='o', max = "**", - # --------------------------------------------------# - - Bonded_Interactions = FACT( statut='o', max = "**", - - Type_Of_Bonded_Interaction = SIMP( statut='o', typ='TXM', into=['No', 'Covalent Bond Length', 'FENE', 'Covalent Bond Angle', 'Dihedral Angles', 'Improper Dihedral', 'Frozen Motion' ], defaut='No', position='global'), - - bloc_covalent_1 = BLOC( condition = 'Type_Of_Bonded_Interaction in ("Covalent Bond Length","FENE")', - Name_of_Bonded_Particle = SIMP( statut='o', typ=Bondedparticle), - ), # fin bloc_covalent_1 - - bloc_covalent = BLOC( condition = 'Type_Of_Bonded_Interaction == "Covalent Bond Length"', - Bond_Length_Parameters = FACT( statut='o', max="**", - Species_Pair = SIMP( statut='o', max=2, typ='TXM'), - Spring_Stifness = SIMP( statut='o', typ='R', val_min=0), - Mean_Bond_Average = SIMP( statut='o', typ='R', val_min=0), - ), # fin Bond_Length_Parameters - ), # fin bloc_covalent - - bloc_FENE = BLOC( condition = 'Type_Of_Bonded_Interaction == "FENE"', - Applies_To_All_Particles = SIMP( statut='o', typ=bool, defaut=True), - bloc_not_on_all = BLOC( condition = 'Applies_To_All_Particles == False', - FENE_Parameters = FACT( statut='o', max="**", - Species_Pair = SIMP( statut='o', max=2, typ='TXM'), - Spring_Constant_H = SIMP( statut='o', typ='R', val_min=0), - LMax = SIMP( statut='o', typ='R', val_min=0), - ), # fin FENE_Parameters - ), # fin bloc_not_on_all - bloc_on_all = BLOC( condition = 'Applies_To_All_Particles == True', - Spring_Constant_H = SIMP( statut='o', typ='R', val_min=0), - LMax = SIMP( statut='o', typ='R', val_min=0), - ), # fin bloc_on_all - ), # fin bloc_FENE - - bloc_le_reste = BLOC( condition = 'Type_Of_Bonded_Interaction in ("Covalent Bond Angle", "Dihedral Angles", "Improper Dihedral", "Frozen Motion")', - Particle_Name = SIMP( statut="f", typ='TXM'), - Consigne = SIMP( statut="o", homo="information", typ="TXM", defaut='Not Implemented Yet'), - - ), - ), # fin Bonded_Interaction - - # ------------------------------- # - - Unbonded_Interactions = FACT( statut='o', - - Type_Of_Unbonded_Interaction = SIMP( statut='o', typ='TXM', into=['No', 'electro_magnetic', 'Repulsion_and_VdW', 'Soft_Potentiel', ], defaut='No', position='global',fenetreIhm='menuDeroulant'), - - bloc_elec = BLOC( condition = 'Type_Of_Unbonded_Interaction == "electro_magnetic"', - Permittivity = SIMP( statut='o', typ='R', position='global'), - Magnetic = SIMP( statut='o', typ=bool, defaut=False,), - bloc_magnetic = BLOC( condition = 'Magnetic == True', - Permability = SIMP( statut='o', typ='R'), - ), # bloc_magnetic - ),# fin bloc_elec - - bloc_VdW = BLOC( condition = 'Type_Of_Unbonded_Interaction == "Repulsion_and_VdW"', - type_Repulsion_and_VdW = SIMP( statut='o', typ='TXM', into = [ 'Lennard_Jones', 'Hard_sphere_model'], position='global' ), - ), # fin bloc_VdW - - bloc_not_elec = BLOC( condition = 'Type_Of_Unbonded_Interaction not in( "electro_magnetic", "no") ', - Species_Pair_Parameters = FACT( statut='o', max="**", - Species_Pair = SIMP( statut='o', max=2, typ='TXM'), - b_Param_Potential_Type_LJ_1 = BLOC( condition = "Type_Of_Unbonded_Interaction == 'Repulsion_and_VdW'", - Radius = SIMP( statut='o', typ='R', val_min=0), - b_PPal_LJ2 = BLOC( condition = "type_Repulsion_and_VdW == 'Lennard_Jones'", - Depth_Of_The_Potential_Well = SIMP( statut='o', typ='R', val_min=0), - ), # fin b_b_PPal_LJ2 - ), # fin b_Param_Potential_Type_LJ_1 - - b_Param_Soft_Potentiel = BLOC( condition = "Type_Of_Unbonded_Interaction == 'Soft_Potentiel'", - Groot_Warren_Repulsion = SIMP( statut='o', typ='R', defaut=25.0, val_min=0), - Groot_Warren_Cutoff = SIMP( statut='o', typ='R', defaut=1.0, val_min=0), - Drag_Coefficient = SIMP( statut='o', typ='R'), # les 2 valent 0 pour MD - Drag_Force_Cutoff = SIMP( statut='o', typ='R', val_min=0), - ), # b_Param_Soft_Potentiel - ), # Species_Pair_Parameters - ),# fin bloc_not_elec - - ), #fin UnBonded_Interactions - - # ------------------------------- # - - Interaction_External_Field = FACT( statut='o', - Type_of_External_Field = SIMP( statut='o', typ='TXM', into=['gravitational field','electric field','magnetic field', 'Hydrodynamic_Field']), - b_gravite = BLOC( condition = 'Type_Of_Interaction_With_An_External_Field=="gravitational field"', - G = SIMP( statut='o', typ='R', defaut=9.81), - ), - b_elect = BLOC( condition = 'Type_Of_Interaction_With_An_External_Field=="electric field"', - Electric_Field = champ('E', ('E',), 1), - ), - b_magnetic = BLOC( condition = 'Type_Of_Interaction_With_An_External_Field=="magnetic field"', - Magnetic_Field = champ('B', ('B',), 1), - ), - b_hydrodynamic = BLOC( condition = 'Type_Of_Interaction_With_An_External_Field=="hydrodynamic field"', - Hydrodynamic_Field = champ('U', ('U',), 1), - ), - Field_Applies_On_All_Species = SIMP( statut='o', typ=bool, defaut=True), - b_porte_espece = BLOC( condition = 'Field_Applies_On_All_Species == False ', - Species_List = SIMP( statut='o', typ='TXM', max= '**'), # faire un typ = "espece" - ), - ), # fin Interaction_External_Field - - ), # fin List_Of_Interactions - - ), # fin Physical_Description_particle - - ), #fin b_particle - #--------------------------------------# - Description = FACT( min=1, max =2, statut='o', - #-------------------------------------# - #EFEFEF : La description choisie donne la liste des modèles numériques disponibles pour cette description - - Description_Type = SIMP( statut='o', typ='TXM', into=['Particle_description', 'Field_description'],), - Type_Of_Entity = SIMP( statut='o', typ='TXM', into=['Electron', 'Atom', 'Grain', 'CVE']), - b_particle = BLOC( condition = 'Description_Type == "Particle_description"', - Particle_Model = FACT( statut='o', max ='**', - Type_Of_Approach = SIMP( statut='o', typ='TXM', into=['Kinetic', 'Extended_Kinetic', 'Position']), - ), # Particle_Model - Definition_Numerical_Model = FACT( statut='o', - Numerical_Model = SIMP( statut='o', typ='TXM', into=['MD', 'DPD'], defaut='DPD',position='global'), - b_DPD_and_MD = BLOC( condition = 'Numerical_Model == "DPD" or Numerical_Model == "MD"' , - Structure_Of_The_Evolution_Law = SIMP( statut='o', typ='TXM', into=['Langevin equations'], defaut='Langevin equations'), - ), # b_DPD_and_MD - ), # Definition_Numerical_Model - ), # b_particle - - ), # Type_Of_Description - #), # Level_Of_Description - - #-----------------------------------------------------# - Statistical_Physics = FACT( statut='f', - #-----------------------------------------------------# - Type_Of_Statistical_Physics = SIMP( statut='f', typ='TXM', into=['Equilibrium', 'Non_Equilibrium']), - - b_Statistical_Physics_Equilibrium = BLOC( condition = "Type_Of_Statistical_Physics == 'Equilibrium'", - Distribution = SIMP( statut='o', typ='TXM', into=['nvt','nve']), - b_Nvt = BLOC( condition = "Distribution == 'nvt'", - Target_Temperature = SIMP( statut='o', typ='R') - ), # fin b_nvt - - b_nve = BLOC( condition = "Distribution == 'nve'", - Target_Energie = SIMP( statut='o', typ='R') - ), # fin b_nve - ), # b_Physique_statstique_equilibre - - b_Statistical_Physics_Equilibrium_false = BLOC( condition = "Type_Of_Statistical_Physics == 'Non_Equilibrium'", - Temperature = SIMP( statut='o', typ='R') - ), # b_Physique_statstique_equilibre - - ), # fin Statistical_Physics - - - #-----------------------------------------------------# - Boundary_Conditions = FACT( statut='o',max = '**', # max = nb de facette de bord - #-----------------------------------------------------# - Type_Of_Boundary_Condition = SIMP( statut='o', typ='TXM', into=['Inlet', 'Outlet', 'Symmetry','Periodic', 'Wall'], position='global'), - Applies_To_The_Complete_State_Vector = SIMP( statut='o', typ=bool), - Boundary_Face = SIMP( statut='o', typ='TXM',), - b_periodique = BLOC( condition = "Type_Of_Boundary_Condition == 'Periodic'", - Direction = SIMP( statut='o', typ='TXM', into=['X','Y','Z', 'all']), - ), # b_periodique - b_Variable_CL = BLOC( condition = "Applies_To_The_Complete_State_Vector == False ", - Variable_of_State_Vector = SIMP( statut='o', typ='TXM'), - ), # b_Variable - ), # Boundary_Conditions - #-----------------------------------------------------# - Initials_Conditions = FACT( statut='o', # 1 par valeur du vecteur d etat - #-----------------------------------------------------# - Applies_To_The_Complete_State_Vector = SIMP( statut='o', typ=bool), - b_Variable_CI = BLOC( condition = "Applies_To_The_Complete_State_Vector == False ", - Initial_Condition_For_Each_Variable = FACT( max = "**", statut='o', - State_Vector_Variable = SIMP( statut='o', typ='TXM'), - Type_Initials_Conditions = SIMP( statut='o', typ='TXM', into=['Initial distribution of the state vector', 'Initial values of the state vector variables'], position='global'), - b_distrib = BLOC( condition = "Type_Initials_Conditions == 'Initial distribution of the state vector'", - State_Vector_Initial_Distribution = SIMP( statut='o', typ='TXM', into=['MaxWell', 'Uniform', 'Auto']), - Injection_Subdomain = SIMP( statut='f', typ='TXM'), - ),# b_distrib - b_initials = BLOC( condition = "Type_Initials_Conditions == 'Initial values of the state vector variables'", - File_Vecteur_Etat_Initial = SIMP( statut='o', typ=('File','All Files (*)'),), - Format_File_Vecteur_Etat_Initial = SIMP( statut='o', typ='TXM', into=['txt', 'a definir avec Eric']), - ),# b_initials - ),# Initial_Condition_For_Each_Variable - ), # b_Variable - b_Globale = BLOC( condition = "Applies_To_The_Complete_State_Vector == True ", - Initial_Condition = FACT( statut='o', - Type_Initials_Conditions = SIMP( statut='o', typ='TXM', into=['Initial distribution of the state vector', 'Initial values of the state vector variables'], position='global'), - b_distrib = BLOC( condition = "Type_Initials_Conditions == 'Initial distribution of the state vector'", - State_Vector_Initial_Distribution = SIMP( statut='o', typ='TXM', into=['MaxWell', 'Uniform', 'Auto']), - Injection_Subdomain = SIMP( statut='f', typ='TXM'), - ),# b_distrib - b_initials = BLOC( condition = "Type_Initials_Conditions == 'Initial values of the state vector variables'", - File_Vecteur_Etat_Initial= SIMP( statut='o', typ=('File','All Files (*)'),), - Format_File_Vecteur_Etat_Initial = SIMP( statut='o', typ='TXM', into=['txt', 'a definir avec Eric']), - ),# b_initials - ),# Initial_Condition_For_Each_Variable - ), # b_Globale - ), # Initials_Conditions -) # Study - -Run_Option = PROC( nom='Run_Option', - MyStudy = SIMP( statut='o', typ=StudySD ), - Working_Dir = SIMP( statut='f', typ='TXM'), # - Number_Of_Time = SIMP( statut='o', typ='I'), - )# Run_Option - - -# a refaire en reprenant - - # # lennard_jones si MD et groot_warren DPD - # b_MD = BLOC( condition = 'Numerical_Model == "MD"', - # Potential_Type_MD = SIMP( statut='o', typ='TXM', into=['lennard_jones'], defaut='lennard_jones'), - # ), - # b_DPD = BLOC( condition = 'Numerical_Model == "DPD"', - # Potential_Type_DPD = SIMP( statut='o', typ='TXM', into=['groot_warren'], defaut='groot_warren'), - # ), - # b_DPD_and_MD_2 = BLOC( condition = 'Numerical_Model == "DPD" or Numerical_Model == "MD"' , - # Species_Pair_Parameters = FACT( statut='o', max="**", - # Pair_Interaction = SIMP( statut='o', max=2, typ='TXM'), - # b_Parameters_Potential_Type_Groot_Warren = BLOC( condition = "Numerical_Model == 'DPD'", - # Groot_Warren_Repulsion = SIMP( statut='o', typ='R', defaut=25.0, val_min=0), - # Groot_Warren_Cutoff = SIMP( statut='o', typ='R', defaut=1.0, val_min=0), - # ), # b_parameters_potential_type_groot_warren - # b_Parameters_Potential_Type_Lennard_Jones = BLOC( condition = "Numerical_Model == 'MD'", - # Radius = SIMP( statut='o', typ='R', val_min=0), - # Depth_Of_The_Potential_Well = SIMP( statut='o', typ='R', val_min=0), - # ), # b_parameters_potential_type_groot_warren - # ), # species_pair_parameters - # ),# fin b_DPD_and_MD_2 - # b_DPD_Coef = BLOC( condition = 'Numerical_Model == "DPD"' , - # Drag_Coefficient = SIMP( statut='o', typ='R'), # les 2 valent 0 pour MD - # Drag_Force_Cutoff = SIMP( statut='o', typ='R', val_min=0,), - # ), - diff --git a/JP/cata_JP.py b/JP/cata_JP.py deleted file mode 100755 index 6aac51f4..00000000 --- a/JP/cata_JP.py +++ /dev/null @@ -1,311 +0,0 @@ -# coding: utf-8 -*- -# -# Copyright (C) 2012-2013 EDF -# -# This file is part of SALOME HYDRO module. -# -# SALOME HYDRO module is free software: you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation, either version 3 of the License, or -# (at your option) any later version. -# -# SALOME HYDRO module 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 General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with SALOME HYDRO module. If not, see . - -import types -from Accas import * -import types -class Tuple: - def __init__(self,ntuple): - self.ntuple=ntuple - - def __convert__(self,valeur): - if type(valeur) == types.StringType: return None - if len(valeur) != self.ntuple: return None - return valeur - - def info(self): - return "Tuple de %s elements" % self.ntuple - - - -dico_Modeles_Numeriques = { - 'DPD' : { 'hybride': ('hybride_microscopic', 'hybride_macroscopic SPDP'), - 'standalone' : ('DPD'), - } -} -def description_manuelle_particule_DEM(): - return FACT(statut ='o', max= "**", - Position = SIMP(statut='o', typ='R', max=3, min =3), - Vitesse = SIMP(statut='o', typ='R', max=3, min =3), - Vitesse_Rotation = SIMP(statut='o', typ='R', max=3, min =3 ), - ) - -def description_manuelle_particule_cinetique(): - return FACT(statut ='o', max= "**", - Position = SIMP(statut='o', typ='R', max=3, min =3), - Vitesse = SIMP(statut='o', typ='R', max=3, min =3), - ) - -def description_manuelle_particule_cinetique_etendue(): - return FACT(statut ='o', max= "**", - Position = SIMP(statut='o', typ='R', max=3, min =3), - Vitesse = SIMP(statut='o', typ='R', max=3, min =3), - Temperature = SIMP(statut='f', typ='R', ), - Diffusivite = SIMP(statut='f', typ='R'), - Concentration = SIMP(statut='f', typ='R'), -) - -def bloc_description_particule_fichier (): - return BLOC ( condition = 'type_description_particule == "fichier"', - fichier_particules= SIMP(statut='o', typ = ('Fichier','All Files (*)'),), - format_fichier = SIMP (statut='o', typ = 'TXM', into = ['txt', 'a definir avec Eric']), - ) - -def bloc_description_particule_manuelle (fonction_type_de_description) : - return BLOC ( condition = 'type_description_particule == "manuelle"', - Nombre_D_Especes = SIMP(statut = 'o', typ = 'I', defaut =1,), - Consigne = SIMP(statut ="o", homo="information", typ="TXM", defaut = " definir autant d espece que le nombre d especes"), - Espece = FACT ( statut='o', max = "**", - Particule = apply(fonction_type_de_description), - ), # fin fact Espece - ) # end b_manuelle - -def bloc_description_particule_tableau (nbReels, labels): - return BLOC ( condition = 'type_description_particule == "tableau"', - Nombre_D_Especes = SIMP(statut = 'o', typ = 'I', defaut =1,), - Consigne = SIMP(statut ="o", homo="information", typ="TXM", defaut = " definir autant d espece que le nombre d especes"), - Espece = FACT ( statut='o', max = "**", - Particules = SIMP( fenetreIhm='Tableau', homo = labels, - statut='o', min=2, max='**', - typ = Tuple(nbReels), - validators=VerifTypeTuple(("'R',"*nbReels),),) # end Particule - ), # fin fact Espece - ) # end b_tableau - -dict_Composant = { "Usecase Silvia" : ['Particule'], - "Ecoulement_diphasique_disperse" : ['Particule', 'Fluide','Solide','Plasma','Particule'] - } -JdC = JDC_CATA() - - -Etude = PROC (nom = 'Etude', - Titre = SIMP(statut='o', typ = 'TXM'), - - Domaine_Geometrique= FACT( statut='o', - Forme = SIMP(statut='o', typ = 'TXM',into = ['Forme Simplifiee', 'CAO']), - b_Forme = BLOC( condition = 'Forme == "Forme Simplifiee"', - Boite = SIMP(statut='o', typ = 'TXM',into = ['Cube', 'Sphere']), - ), - ), - - Systeme_Global= FACT( statut='o', - Type_De_Systeme = SIMP(statut='o', typ = 'TXM',into = ['Ecoulement_diphasique_disperse', 'Usecase Silvia']), - - # PN pour XSD - #b_Type_Silvia = BLOC( condition = 'Type_Definition == "Usecase Silvia"', - # Composant = SIMP( statut='o', typ = 'TXM',into = ['Particule', 'Fluide'], max='**'), - #), - #b_Type_Ecoulement = BLOC( condition = 'Type_Definition == "Ecoulement_diphasique_disperse"', - Composant = SIMP(statut='o', typ = 'TXM',into = ['Particule', 'Fluide','Solide','Plasma','Particule'], max="**"), - #EF : TODO Ajouter les interactions entre composants - #), - - #EF : Je ne ferais pas apparaître ici l'hybridation via le max=2 - # J'attendrais de définir la méthode numérique... - Niveau_De_Description = FACT ( min=1, max= 2, statut='o', - Niveau_De_Description_Generale = SIMP( statut ='o', typ = 'TXM',into = ['Microscopique','Mesoscopique', 'Macroscopique']), - - - #EF : Il serait logique de choisir (ou d'avoir automatiquement en fct du Type_De_Système ) les couples (composant,niveau de description) - #EF : puis de décrire les Descriptions Physiques pour chacun de ces couples .... - #EF : b_Mesoscopique_particule = BLOC( condition = " (Niveau_De_Description_Generale == 'Mesoscopique') && (Composant == 'Particule' ) " - b_Mesoscopique = BLOC( condition = "Niveau_De_Description_Generale == 'Mesoscopique'", - Description_Physique = FACT( statut = 'o', - Nombre_D_Especes = SIMP( statut = 'o', typ = 'I', defaut =1, position ='global_jdc'), - Espece = FACT( statut='o', max = "**", - Nom_De_L_Espece = SIMP( statut='o', typ = 'TXM'), - Masse_Molaire = SIMP( statut='o', typ='R',), - Proportion_En_Nbre_Ou_Masse = SIMP(statut='f', typ='R',), - b_Electostatique = BLOC( condition = "Electrostatics == True", - Charge = SIMP( statut = 'o', typ = 'R') - ) # fin b_electorsatique - ), # fin Espece - - #EF : Je remonterais Electrostatics en dessous de nombre d'espèces si c'est possible ? - #EF: Champ moyen + Interparticulaire possible ? - Electrostatics = SIMP( statut='o', typ=bool, defaut=False, position ='global'), - b_Electrostatics= BLOC( condition = 'Electrostatics == True', - Definition_Electrostatic = FACT ( statut ='o', - Type_Interaction = SIMP ( statut ='o', typ = 'TXM', into = ['champ moyen', 'interparticulaire']), - b_Interparticulaire = BLOC( condition = 'type_interaction == "interparticulaire"', - Interactions_Par_Particule = FACT( statut='o', min = 1, max = "**", # min=n, max=n(n+1)/2 - Nom_Des_Especes = SIMP ( statut ='o', typ = 'TXM', min=2, max=2), - ), # fin Interactions_par_particule - ), # fin b_interparticulaire - ), # fin definition_electrostatic - ), # fin b_Electrostatics - - InterActions_Interparticulaires = FACT( statut='o', min = 1, max = "**", # n n(n+1)/2 - Nom_Des_Especes = SIMP ( statut ='o', typ = 'TXM', min=2, max=2), - ), # InterActions_interparticulaires - - #EF ?? : Physique_Statistique = SIMP( statut='o', typ='TXM', defaut='Non_Equilibre', into = ['Equilibre', 'Non_Equilibre'], position ='global'), - Physique_Statistique_Equilibre = SIMP( statut='o', typ=bool, defaut=False, position ='global'), - b_Physique_Statistique_Equilibre = BLOC( condition = "Physique_Statistique_Equilibre == True", - Distribution = SIMP(statut='o', typ='TXM', defaut='nvt', into=['nvt','nve']), - b_Nvt = BLOC ( condition = "Distribution == 'nvt'", - Target_Temperature = SIMP( statut='o', typ='R') - ), # fin b_nvt - b_nve = BLOC ( condition = "Distribution == 'nve'", - Target_Energie = SIMP( statut='o', typ='R') - ), # fin b_nve - ), # b_Physique_statstique_equilibre - b_Physique_Statistique_Equilibre_false = BLOC( condition = "Physique_Statistique_Equilibre == False", - Temperature = SIMP( statut='o', typ='R') - ), # b_Physique_statstique_equilibre - ), # Description_Physique - - Type_De_Description = FACT( min=1, max =2, statut='o', - Type_Description = SIMP( statut ='o', typ = 'TXM',into = ['Description_par_Particule', 'Description_par_Champ'], defaut = 'Description_par_Particule'), - b_Particule = BLOC( condition = 'Type_De_Description == "Description_par_Particule"', - Modele_De_Particule = FACT ( statut='o', max ='**', - Type_D_Entite = SIMP(statut='o', typ = 'TXM',into =['Coarse', 'Atom'], defaut='Coarse'), - Vecteur_Etat_Cinetique = SIMP( fenetreIhm='Tableau', homo = ('Ux','Uy', 'Uz,', 'Vx','Vy', 'Vz',), - statut='o', min=2, max='**', - typ = Tuple(6), - validators=VerifTypeTuple(('R','R','R','R','R','R'),),), # end Particule - - ), # Modele_De_Particule - Modele_Numerique = FACT ( statut='o', - Modele_Numerique = SIMP (statut = 'o', typ = 'TXM', into = ['MD', 'DPD'], defaut ='DPD'), - b_DPD = BLOC(condition = 'Modele_Numerique == "DPD"' , - Structure_Loi_evolution = SIMP (statut = 'o', typ = 'TXM', into = ['Equations de Langevin']), - # a faire en fonction et projection des types fonctions en XSD a reflechir - Species_Pair_Parameters = FACT(statut='o', max="**", - #Consigne = SIMP(statut ="o", homo="information", typ="TXM", defaut = "renvoie a InterActions_interparticulaires "), - Pair_Interaction = SIMP(statut ='o', max=2, typ = 'TXM'), - # lennard_jones si MD et groot_warren DPD - Species_Pair_Parameters_Potential_Type = SIMP( statut='o', typ='TXM',into=['groot_warren','lennard_jones']), - b_Parameters_Potential_Type_Groot_Warren = BLOC( condition= "species_pair_parameters_potential_type == 'groot_warren'", - Groot_Warren_Repulsion = SIMP( statut='o',typ='R',defaut=25.0,val_min=0), - Groot_Warren_Cutoff = SIMP( statut='o',typ='R',defaut=1.0,val_min=0), - ), # b_parameters_potential_type_groot_warren - Drag_Coefficient = SIMP( statut='o', typ='R'), - Drag_Force_Cutoff = SIMP( statut='o', typ='R', val_min=0, ), - ), # species_pair_parameters - - ), # b_DPD - ), # Modele_Numerique - ), # b_Particule - - ), # Type_De_Description - ), # bloc b_Mesoscopique - ), # Niveau_De_Description - - #electrostatics_is_on = SIMP(statut='o', typ=bool, defaut=False) -# Temps_Physique_Simule - ), # fin Systeme_Global - -) # Etude - -# # Systeme physique : met en oeuvre 1 ou plusieurs des 4 entites ELectron -# # Atome Coarse CVE (en check) but de l etude -# # plasma, solid, fluid , particule -# # met en oeuvre des composants principaux puis a quel niveau -# # sous systeme physique elementaire pour composant principal -# # -# Niveau_De_Description = SIMP(statut='o', max= '**',typ ='TXM', into = ['Microscopic','Mesoscopic', 'Macroscopic',], homo= 'SansOrdreNiDoublon',position='global') , -# Type_De_Description = SIMP( statut='o', max= '**',homo ='SansOrdreNiDoublon',typ ='TXM', into = ['Modele Particulaire','Particulaire Stochastique','Automate sur reseau','Lagrangien Stochastique'],position='global') , -# Modele_numeric = SIMP( statut='o', max= '**',homo ='SansOrdreNiDoublon',typ ='TXM', into = ['MD','DPD', 'DEM', 'CFD','LBM'],position='global') , -# # selon les types de description on aura un modele de description de particules = -# # vecteur d etat ( approche cinetique et approche cinetique etendue ( electromagnetisme ou charge ...)) (independant du nb d espece) -# # on peut avoir des vecteurs d etat differents pour chacune des especes mais un vecteur d etat seulement par espece (differentes especes ) -# # -# # -# # en ddp la loi de comportement est donnée -# # DPD - > approche cinetique -# # on choisit la structure de loi d evolution = langevin -# # expression de la force conservative = loi de comportement (p33) _ MR (0 ou n) -# # pour la m loi d evolution avec parametres fixes standalone -# # pour la m loi d evolution avec parametres sont donnes par 1 ou +sieurs calculs (surtout en CFD pour +sieurs calcul pour chaque niveau) (hybride) -# # on pourrait ne pas avoir de loi de comportement mais des parametres de la loi d evolution -# # fermeture des contraintes : q faire sur une quantite numerique -# # il y a des familles de structure de loi d evolution en fonction du couple ( modele de description et du modele numerique ) -# # DPD : 1 structure de loi d evolution : 3 termes -# # 1 et 1 seule structure de loi d evolution par modele numerique (inverse pas vrai : si langevin par forcement DPD) -# #Entite = SIMP(statut='o', max= '**',homo ='SansOrdreNiDoublon',typ ='TXM', into = ['element','atomic', 'grain', 'CVE (cont volume)'],position='global'), -# #method_numeric = SIMP(statut='o', typ ='TXM', into = ['DPD ', 'SDPD']), -# type_de_methode= SIMP(statut='o', typ ='TXM', into = ['stand_alone', 'hybride']) -# # MD = molecular dynamics (= microscopic) -# # CFD = computational fluid dynamics (= macroscopic) -# # DPD = Dissipative Particule dynamics (= meso) -# # DEM = Discrete Element Method -# # ---------------------------------------------- -# #b_DEM = BLOC (condition = 'Type_Etude == "DEM"', -# # ---------------------------------------------- -# # type_description_particule = SIMP(statut = 'o', typ ='TXM', into =['fichier', 'tableau', 'manuelle'],position = 'global'), -# # b_fichier = bloc_description_particule_fichier(), -# # b_tableau = bloc_description_particule_tableau (9, ('Ux','Uy', 'Uz,', 'Vx','Vy', 'Vz','Rx','Ry','Rz')), -# # b_manuelle = bloc_description_particule_manuelle(description_manuelle_particule_DEM), -# # ), # fin b_DEM -# -# # ------------------------------------------------ -## b_CFD = BLOC (condition = 'Type_Etude == "CFD"', -## # ----------------------------------------------- -## Ecoulement = SIMP(statut='o', typ ='TXM', into = ['Laminaire','Turbulent']), -## FLuid = FACT( statut = 'o', -## Masse_Volumique = SIMP(statut='o', typ='R', ), -## Viscosite_cinetique = SIMP(statut='o', typ='R', ), -## Diffusivite_thermique = SIMP(statut='f', typ='R', ), -## Diffusivite_des_especes = SIMP(statut='f', typ='R', max = '**'), -## ), -## -## #Particule = FACT( statut = 'o', max="**", -## # Description_Cinetique = Description_manuelle_Particule_Cinetique_etendue(), -## # ), -## # type_description_particule = SIMP(statut = 'o', typ ='TXM', into =['fichier', 'tableau', 'manuelle'],position = 'global'), -## # b_fichier = bloc_description_particule_fichier(), -## #b_tableau = bloc_description_particule_tableau (9, ('Ux','Uy', 'Uz,', 'Vx','Vy', 'Vz','Rx','Ry','Rz')), -## ), # fin b_CFD -## -## b_MD = BLOC (condition = 'Type_Etude == "MD"', -## type_description_particule = SIMP(statut = 'o', typ ='TXM', into =['fichier', 'tableau', 'manuelle'],position = 'global'), -## b_fichier = bloc_description_particule_fichier(), -## b_tableau = bloc_description_particule_tableau (6, ('Ux','Uy', 'Uz,', 'Vx','Vy', 'Vz')), -## b_manuelle = bloc_description_particule_manuelle(description_manuelle_particule_cinetique), -## -## Materiel_Relation = FACT( statut ='f', -## Entree_Possible= SIMP(statut='o', typ ='TXM', into = ['calcul', 'fichier']), -## b_fichier = BLOC (condition = "Entree_Possible == 'fichier'", -## fichier_MR= SIMP(statut='o', typ= ('Fichier','All Files (*)')), -## ), -## ), -## ), # fin b_MD -## # --------------------------------------------- -## b_DPD = BLOC (condition = 'Type_Etude == "DPD"', -## # --------------------------------------------- -## type_description_particule = SIMP(statut = 'o', typ ='TXM', into =['fichier', 'tableau', 'manuelle'],position = 'global'), -## b_fichier = bloc_description_particule_fichier(), -## b_tableau = bloc_description_particule_tableau (6, ('Ux','Uy', 'Uz,', 'Vx','Vy', 'Vz')), -## b_manuelle = bloc_description_particule_manuelle(description_manuelle_particule_cinetique), -## Thermostat = SIMP(statut='o', typ='R', ), -## ), -##) -### ), -### ), -#) -### #Fluid = SIMP(statut='o', typ ='TXM', into ='Laminaire', 'Trubulent']) -### # Temperature = SIMP(statut='f', typ='R', ), -### # Concentration = SIMP(statut='f', typ='R'), -### # Diffusivite = SIMP(statut='f', typ='R'), -### # Frottement = SIMP(statut='f', typ='R'), -### # Concentration = SIMP(statut='f', typ='R'), -### #), -### -### diff --git a/JP/cata_Vimmp.py b/JP/cata_Vimmp.py deleted file mode 100755 index 8ecc12a0..00000000 --- a/JP/cata_Vimmp.py +++ /dev/null @@ -1,290 +0,0 @@ -# coding: utf-8 -*- -# - -import os -import types -monFichier=os.path.abspath(__file__) - -# ------------------------------------------------- Definition fonction utilisateur -from Accas import * -class Surface_Elementaire (UserASSD): pass -class StudySD (ASSD) : pass - -def creeSurfaceElementaire(MC) : - MC.creeObjetClasse(Surface_Elementaire) - return - -# ------------------------------------------------- Definition fonction du catalogue ou macro - -def champ (nomDelaContante, labels ,nbReels ) : -# ajouter les extensions pour le fichier et les blocs associes -# certains champs ne seront jamais uniformes -#PNPN : Passer le nom du champ pour le label du vecteur - dicoBloc = {} - dicoBloc[nomDelaContante] = SIMP (statut='o', typ = 'R') - return FACT(statut ='o', - Mode_saisie = SIMP(statut = 'o', typ = 'TXM', into=('valeur uniforme','valeurs saisies','valeurs ds fichier','fonction analytique', 'appel de service')), - b_uniforme = BLOC (condition = "Mode_saisie == 'valeur uniforme'", **dicoBloc), - b_vsaisies = BLOC (condition = "Mode_saisie == 'valeurs saisies'", - Champ = SIMP( typ ='R', statut ='o', max ='**'), - #Vecteur = SIMP( fenetreIhm='Tableau', homo = labels, - # statut='o', min=2, max='**', - # typ = Tuple(nbReels), - # validators=VerifTypeTuple(("'R',"*nbReels),),) # end Particule - ), #b_vsaisie - b_vdsfich = BLOC (condition = "Mode_saisie == 'valeurs ds fichier'", - Format = SIMP (statut='o', typ = 'TXM', into = ['txt','Med',], position='global' ), - td_txt = BLOC_FICHIER (condition = 'Format == "txt"', - Fichier = SIMP(statut='o', typ = ('Fichier','Text Files(*.txt);All Files (*)'),), - ), - td_med_1 = BLOC_FICHIER ( condition = 'Format == "Med"', - Fichier = SIMP (statut='o', typ = ('Fichier','Med Files(*.med);All Files (*)'),), - ), - td_med_2 = BLOC ( condition = 'Format == "Med"', - NomChamp = SIMP (statut='o', typ = 'TXM', ), - ), - ), - b_vfct = BLOC (condition = "Mode_saisie == 'fonction analytique'", - Fonction = SIMP (statut='o', typ = 'TXM', ), - ), - b_vserc = BLOC (condition = "Mode_saisie == 'appel de service'", - Service = SIMP (statut='o', typ = 'TXM', ), - ), - ) - - -def BlocPourLesFichiers (laCondition, NomDuFichier, ListeFormats): - SIMPFormatFichier = SIMP(statut='o', typ = 'TXM', into = tuple(ListeFormats) + ('others',), ) - dicoDesBlocs = {} - for formatFich in ListeFormats : - nomBloc = 'b_format_fichier' + str(formatFich) - typeDesFichiers = ('Fichier', formatFich + " Files (*." + formatFich + ");;All Files (*)",) - blocCondition ="Format_Fichier == '" + formatFich + "'" - dicoDesBlocs[nomBloc] = BLOC_FICHIER ( condition = blocCondition, NomDuFichier = SIMP(statut='o', typ = typeDesFichiers ),) - dicoDesBlocs['b_format_fichier_others'] = BLOC_FICHIER (condition="Format_Fichier == 'others'", NomDuFichier = SIMP(statut='o', typ = ('Fichier','All Files (*)'),),) - return BLOC(condition=laCondition, Format_Fichier = SIMPFormatFichier, **dicoDesBlocs) - - -# ____________________________________________________________________________________________ # - -JdC = JDC_CATA(code='Vimmp',fichierSource=monFichier) - - -Etude = OPER (nom = 'Etude', sd_prod = StudySD, - Titre = SIMP(statut='o', typ = 'TXM'), - Temps_Simule = FACT(statut='o', - Temps_Initial = SIMP(statut='o', typ = 'R'), - Duree = SIMP(statut='o', typ = 'R'), - ), -# - Domaine_Geometrique= FACT( statut='o', - Forme = SIMP(statut='o', typ = 'TXM',into = ['Forme Simplifiee', 'CAO ou Maillage']), - b_Forme = BLOC( condition = 'Forme == "Forme Simplifiee"', - Boite = SIMP(statut='o', typ = 'TXM',into = ['Cube', 'Sphere','Cylindre'] ), - b_Cube = BLOC( condition = 'Boite == "Cube"', - #Taille_Boite_Englobante = SIMP(statut='o', typ = 'R', max=3, min =3) - # derait etre un Tuple(3) mais a faire apres la projection - Taille_Boite_Englobante = SIMP(statut='o', typ= Tuple(3), validators=VerifTypeTuple(('R','R','R'),),) - ), # fin b_Cube - b_Boule = BLOC( condition = 'Boite == "Sphere"', - Centre = SIMP(statut='o', typ = 'R', max=3, min =3), - # devrait etre un Tuple(3) mais a faire apres la projection - ),# fin b_Boule - b_Cylindre = BLOC( condition = 'Boite == "Cylindre"', - Hauteur = SIMP(statut = "o", typ = 'R', val_min=0.0, ang='Nanotube length [m]'), - ),# fin b_Tube - b_Boule_ou_Cylindre = BLOC( condition = 'Boite == "Sphere" or Boite == "Cylindre"', - Rayon = SIMP(statut='o', typ = 'R', val_min=0.0, ang='radius length [m]') , - ),# fin b_Boule_ouCylindre - ), # fin b_Forme -# - b_CAO = BlocPourLesFichiers ("Forme == 'CAO ou Maillage'",'Fichier_Domaine', ['txt','med','I-deas', 'Gmsh', 'top',]), - surface_Elementaire=SIMP(statut= 'o',typ= 'TXM',max='**', siValide=creeSurfaceElementaire), - ), # fin Domaine_Geometrique - - -# ------------------- Composant_Du_Systeme -----------------------------# - Composant_Du_Systeme= FACT( statut='o', max = "**", - Composant = SIMP(statut='o', typ = 'TXM',into = ['Particule', 'Fluide','Solide','Plasma'], position = 'global'), - Niveau_De_Description = FACT ( min=1, max= 2, statut='o', - Niveau_De_Description_Generale = SIMP( statut ='o', typ = 'TXM',into = ['Microscopique','Mesoscopique', 'Macroscopique']), - b_Mesoscopique_Particule = BLOC( condition = "Niveau_De_Description_Generale == 'Mesoscopique' and Composant == 'Particule'", - Description_Physique = FACT( statut = 'o', - Electrostatics = SIMP( statut='o', typ=bool, defaut=False, position ='global'), - Nombre_D_Especes = SIMP( statut = 'o', typ = 'I', defaut =1, position ='global_jdc'), - Espece = FACT( statut='o', max = "**", - Nom_De_L_Espece = SIMP( statut='o', typ = 'TXM'), - Masse_Molaire = SIMP( statut='o', typ='R',), - Proportion_En_Nbre_Ou_Masse = SIMP(statut='f', typ='R',), - b_Electrostatique = BLOC( condition = "Electrostatics == True", - Charge = SIMP( statut = 'o', typ = 'R'), - ), # fin b_electorsatique - ), # fin Espece - Categorie_Interaction = SIMP(statut ='o', typ ='TXM', into=['champ moyen', 'champ moyen dynamique','interaction par paire']), - b_Interactionparpaire = BLOC( condition = 'Categorie_Interaction == "interaction par paire"', - Interaction_Par_Paire = FACT( statut='o', # max = cardinalite du into - Type_Interaction = SIMP( statut='o', typ ='TXM', into = ['electrostatique',], defaut = 'electrostatique'), - b_elec = BLOC( condition = "Type_Interaction == 'electrostatique'", - Couple_D_especes = FACT (statut ='o', min=1, max = '**', # min=n, max=n(n+1)/2 - Nom_Des_Especes = SIMP ( statut ='o', typ = 'TXM', min=2, max=2), - ), - ), # fin b_elec - ), # fin Interactions_Par_Paire - ), # fin b_Interactionparpaire - b_champ_moyen = BLOC( condition = 'Categorie_Interaction == "champ moyen"', - Interaction_champ_moyen = FACT( statut='o', max = 2, # max = cardinalite du into - Type_Interaction = SIMP( statut='o', typ ='TXM', into = ['champ gravite','champ electrostatique']), - b_gravite = BLOC (condition = 'Type_Interaction=="champ gravite"', - G= SIMP( statut='o', typ='R',defaut =9.81), - ), - b_elect = BLOC (condition = 'Type_Interaction=="champ electrostatique"', - Champ_Elec = champ ('E', ('E',), 1), - ), - Porte_Sur_Toutes_Les_especes = SIMP ( statut ='o', typ = bool, defaut = True), # faire un typ = "espece" - b_porte_espece = BLOC( condition = 'Porte_Sur_Toutes_Les_especes == False ', - Liste_D_Espece = SIMP ( statut ='o', typ = 'TXM', max= '**'), # faire un typ = "espece" - ), - ), # fin Interaction - ), # fin b_champ_moyen - b_champ_moyen_dynamique = BLOC( condition = 'Categorie_Interaction == "champ moyen dynamique"', - Interaction_champ_moyen_dynamique = FACT( statut='o', max = 2, # max = cardinalite du into - Type_Interaction = SIMP( statut='o', typ ='TXM', into = ['champ electrostatique'], defaut='champ electrostatique'), - Couple_D_especes = FACT (statut ='o', min=1, max = '**', # min=n, max=n(n+1)/2 - Nom_Des_Especes = SIMP ( statut ='o', typ = 'TXM', min=2, max=2), - ), - Champ_moyen_calcule=FACT( statut='o', - Nom_du_champ=SIMP( statut='o', typ='TXM',), - Liste_D_Espece = SIMP ( statut ='o', typ = 'TXM', max= '**'), # faire un typ = "espece" - ), # fin Champ moyen calculé - ), # fin Interaction - ), # fin b_champ_moyen_dynamique - - - ), # fin definition_Physique - - Physique_Statistique = SIMP( statut='o', typ='TXM', into = ['Equilibre', 'Non_Equilibre']), - #Physique_Statistique =SIMP( statut='o', typ='TXM', defaut='Non_Equilibre', into = ['Equilibre', 'Non_Equilibre'], position ='global'), - #PN pourquoi global ?? - b_Physique_Statistique_Equilibre = BLOC( condition = "Physique_Statistique == 'Equilibre'", - Distribution = SIMP(statut='o', typ='TXM', into=['nvt','nve']), - b_Nvt = BLOC ( condition = "Distribution == 'nvt'", - Target_Temperature = SIMP( statut='o', typ='R') - ), # fin b_nvt - b_nve = BLOC ( condition = "Distribution == 'nve'", - Target_Energie = SIMP( statut='o', typ='R') - ), # fin b_nve - ), # b_Physique_statstique_equilibre - b_Physique_Statistique_Equilibre_false = BLOC( condition = "Physique_Statistique == 'Non_Equilibre'", - Temperature = SIMP( statut='o', typ='R') - ), # b_Physique_statstique_equilibre - ), # fin b_Mesoscopique_Particule - - Type_De_Description = FACT( min=1, max =2, statut='o', - #EFEFEF : La description choisie donne la liste des modèles numériques disponibles pour cette description - Type_Description = SIMP( statut ='o', typ = 'TXM',into = ['Description_par_Particule', 'Description_par_Champ'], ), - Type_D_Entite = SIMP(statut='o', typ = 'TXM', into =['Electron', 'Atome', 'Grain', 'CVE']), - b_Particule = BLOC( condition = 'Type_Description == "Description_par_Particule"', - Modele_De_Particule = FACT ( statut='o', max ='**', - Type_D_Approche = SIMP(statut='o', typ = 'TXM',into =['Cinetique', 'Cinetique_Etendue', 'Position']), - ), # Modele_De_Particule - Definition_Modele_Numerique = FACT ( statut='o', - Modele_Numerique = SIMP (statut = 'o', typ = 'TXM', into = ['MD', 'DPD'], defaut ='DPD'), - b_DPD = BLOC(condition = 'Modele_Numerique == "DPD"' , - Structure_Loi_evolution = SIMP (statut = 'o', typ = 'TXM', into = ['Equations de Langevin']), - # a faire en fonction et projection des types fonctions en XSD a reflechir - - Species_Pair_Parameters = FACT(statut='o', max="**", - #Consigne = SIMP(statut ="o", homo="information", typ="TXM", defaut = "renvoie a InterActions_interparticulaires "), - Pair_Interaction = SIMP(statut ='o', max=2, typ = 'TXM'), - # lennard_jones si MD et groot_warren DPD - Species_Pair_Parameters_Potential_Type = SIMP( statut='o', typ='TXM',into=['groot_warren','lennard_jones']), - b_Parameters_Potential_Type_Groot_Warren = BLOC( condition= "species_pair_parameters_potential_type == 'groot_warren'", - Groot_Warren_Repulsion = SIMP( statut='o',typ='R',defaut=25.0,val_min=0), - Groot_Warren_Cutoff = SIMP( statut='o',typ='R',defaut=1.0,val_min=0), - ), # b_parameters_potential_type_groot_warren - Drag_Coefficient = SIMP( statut='o', typ='R'), - Drag_Force_Cutoff = SIMP( statut='o', typ='R', val_min=0, ), - ), # species_pair_parameters - - ), # b_DPD - ), # Modele_Numerique - ), # b_Particule - - ), # Type_De_Description - ), # Niveau_De_Description - -## Temps_Physique_Simule - ), # Composant du systeme - - Conditions_Aux_Limites = FACT ( statut ='o',max = '**', # max = nb de facette de bord - Type_Conditions_Limites = SIMP( statut='o', typ= 'TXM', into =['Entree', 'Sortie', 'Symetrie','Periodique', 'Paroi'], position ='global'), - Porte_Sur_Tout_le_Vecteur = SIMP(statut='o', typ = bool), - Facette_Bord= SIMP( statut='o', typ= 'TXM',), - b_periodique = BLOC( condition = "Type_Conditions_Limites == 'Periodique'", - Direction = SIMP(statut='o', typ = 'TXM', into = ['X','Y','Z', 'all']), - ), # b_periodique - b_Variable_CL = BLOC( condition = "Porte_Sur_Tout_le_Vecteur == False ", - Variable_Du_Vecteur_Etat = SIMP(statut='o', typ = 'TXM'), - ), # b_Variable - ), # Conditions_Aux_Limites - Conditions_Initiales = FACT ( statut ='o', # 1 par valeur du vecteur d etat - Porte_Sur_Tout_le_Vecteur = SIMP(statut='o', typ = bool), - b_Variable_CI = BLOC( condition = "Porte_Sur_Tout_le_Vecteur == False ", - Condition_Initiale_Par_Variable = FACT ( max = "**", statut ='o', - Variable_Du_Vecteur_Etat = SIMP(statut='o', typ = 'TXM'), - Type_Conditions_Initiales = SIMP( statut='o', typ= 'TXM', into =['Distribution Initiale Vecteur Etat', 'Valeurs Vecteur Etat Initiales'], position ='global'), - b_distrib = BLOC( condition = "Type_Conditions_Initiales == 'Distribution Initiale Vecteur Etat'", - Distribution_Initiale_Vecteur_Etat = SIMP( statut='o',typ ='TXM', into = ['MaxWell', 'Uniforme', 'Auto']), - Sous_Domaine_D_Injection = SIMP( statut='f', typ= 'TXM'), - ),# b_distrib - b_initials = BLOC( condition = "Type_Conditions_Initiales == 'Valeurs Vecteur Etat Initiales'", - Fichier_Vecteur_Etat_Initial= SIMP(statut='o', typ = ('Fichier','All Files (*)'),), - Format_Fichier_Vecteur_Etat_Initial = SIMP (statut='o', typ = 'TXM', into = ['txt', 'a definir avec Eric']), - ),# b_initials - ),# Condition_Initiale_Par_Variable - ), # b_Variable - b_Globale = BLOC( condition = "Porte_Sur_Tout_le_Vecteur == True ", - Condition_Initiale = FACT ( statut ='o', - Type_Conditions_Initiales = SIMP( statut='o', typ= 'TXM', into =['Distribution Initiale Vecteur Etat', 'Valeurs Vecteur Etat Initiales'], position ='global'), - b_distrib = BLOC( condition = "Type_Conditions_Initiales == 'Distribution Initiale Vecteur Etat'", - Distribution_Initiale_Vecteur_Etat = SIMP( statut='o',typ ='TXM', into = ['MaxWell', 'Uniforme', 'Auto']), - Sous_Domaine_D_Injection = SIMP( statut='f', typ= 'TXM'), - ),# b_distrib - b_initials = BLOC( condition = "Type_Conditions_Initiales == 'Valeurs Vecteur Etat Initiales'", - Fichier_Vecteur_Etat_Initial= SIMP(statut='o', typ = ('Fichier','All Files (*)'),), - Format_Fichier_Vecteur_Etat_Initial = SIMP (statut='o', typ = 'TXM', into = ['txt', 'a definir avec Eric']), - ),# b_initials - ),# Condition_Initiale_Par_Variable - ), # b_Globale - ), # Conditions_Initiales -) # Etude - -Run_Option = PROC ( nom='Run_Option', - MyStudy = SIMP (statut ='o', typ = StudySD ), - Working_Dir = SIMP( statut='f', typ= 'TXM'), # - Input_Files = FACT( statut ='o', - Type_Topology_File = SIMP( statut='o', typ= 'TXM', into=['geo']), - Topology_File = SIMP( statut='o', typ= 'TXM'), - ), - Output_Files = FACT ( statut ='o', - Output_File = SIMP( statut='f', typ= 'TXM'), - ), - )# Run_Option - - -DicoNomTypeDifferentNomElt={'T_Type_Interaction': {'_Type_Interaction_Interaction_Par_Paire_b_Interactionparpaire_Description_Physique_b_Mesoscopique_Particule_Niveau_De_Description_Composant_Du_Systeme_Etude': 'T_Type_Interaction', - '_Type_Interaction_Interaction_champ_moyen_b_champ_moyen_Description_Physique_b_Mesoscopique_Particule_Niveau_De_Description_Composant_Du_Systeme_Etude': 'T_Type_Interaction_1', - '_Type_Interaction_Interaction_champ_moyen_dynamique_b_champ_moyen_dynamique_Description_Physique_b_Mesoscopique_Particule_Niveau_De_Description_Composant_Du_Systeme_Etude': 'T_Type_Interaction_2'}} - - -#def bloc_description_particule_tableau (nbReels, labels): -# return BLOC ( condition = 'type_description_particule == "tableau"', -# Nombre_D_Especes = SIMP(statut = 'o', typ = 'I', defaut =1,), -# Consigne = SIMP(statut ="o", homo="information", typ="TXM", defaut = " definir autant d espece que le nombre d especes"), -# Espece = FACT ( statut='o', max = "**", -# Particules = SIMP( fenetreIhm='Tableau', homo = labels, -# statut='o', min=2, max='**', -# typ = Tuple(nbReels), -# validators=VerifTypeTuple(("'R',"*nbReels),),) # end Particule -# ), # fin fact Espece -# ) # end b_tableau diff --git a/JP/cata_gromacs.py b/JP/cata_gromacs.py deleted file mode 100644 index 9332bc73..00000000 --- a/JP/cata_gromacs.py +++ /dev/null @@ -1,15 +0,0 @@ -from cata_Vimmp import * - - -CodeSpecific=PROC(nom='CodeSpecific', - Energy_Minimization = FACT(statut='o', - MD_Input_File = SIMP(statut='o', typ = ('Fichier','mdp Files (*.mdp);;All Files (*)')), - Structure_File = SIMP(statut='o', typ = ('Fichier','gro Files (*.gro);;All Files (*)')), - # en entree de grompp et de mdrun option -c - Gromacs_Topology_File = SIMP(statut='o', typ = ('Fichier','Top Files (*.top);;All Files (*)')), - MD_File = SIMP(statut='o', typ = ('FichierNoAbs')), # doit finir par mdp - # le MD_Output_File (-o pour grommp devient le -s de de mdrun) - XDR_Output_File = SIMP(statut='o', typ = ('FichierNoAbs')), # doit finir par tpr - log_File = SIMP(statut='f', defaut ='/tmp/EM.log', typ=('FichierNoAbs')), - ), -) diff --git a/JP/prefs.py b/JP/prefs.py deleted file mode 100644 index 389a6df0..00000000 --- a/JP/prefs.py +++ /dev/null @@ -1,22 +0,0 @@ -# Copyright (C) 2007-2012 EDF R&D -# -# 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 -# -code="JP" -import sys, os -if os.path.dirname(os.path.abspath(__file__)) not in sys.path : - sys.path.insert(0,os.path.dirname(os.path.abspath(__file__))) diff --git a/JP/prefs_Vimmp.py b/JP/prefs_Vimmp.py deleted file mode 100644 index 69d01188..00000000 --- a/JP/prefs_Vimmp.py +++ /dev/null @@ -1,59 +0,0 @@ -# -*- coding: utf-8 -*- -# maConfiguration MANAGEMENT OF EDF VERSION -# ====================================================================== -# COPYRIGHT (C) 1991 - 2002 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# -# -# ====================================================================== - -import os,sys -# repIni sert a localiser le fichier editeur.ini -# Obligatoire -repIni=os.path.dirname(os.path.abspath(__file__)) -INSTALLDIR=os.path.join(repIni,'..') -sys.path[:0]=[INSTALLDIR] - - -# lang indique la langue utilisee pour les chaines d'aide : fr ou ang -lang='fr' - -# Codage des strings qui accepte les accents (en remplacement de 'ascii') -encoding='iso-8859-1' - -# -#typeDeCata='XML' -catalogues=( - ('Vimmp','Vimmp',os.path.join(repIni,'cata_Vimmp.py'),'python','python'), - ('VimmpG','VimmpG',os.path.join(repIni,'cata_gromacs.py'),'python','python'), -# ('VimmpEN','VimmpEN',os.path.join(repIni,'cata_en.py'),'python','python'), -) -nombreDeBoutonParLigne=4 -#simpleClic=True -closeFrameRechercheCommande=False -closeFrameRechercheCommandeSurPageDesCommandes=True -#boutonDsMenuBar=False -#closeArbre=True -#afficheListesPliees=False -#afficheCommandesPliees = False -afficheCommandesPliees=True -enleverActionStructures = True -enleverParametres = True -enleverSupprimer = True -#ajoutExecution = True -#translatorFichier = os.path.join(repIni,'Meteo') -withXSD=True -#dumpXSD=True -#afficheIhm=False diff --git a/JP/qtEficasVimmp.py b/JP/qtEficasVimmp.py deleted file mode 100755 index 38a990ba..00000000 --- a/JP/qtEficasVimmp.py +++ /dev/null @@ -1,36 +0,0 @@ -#!/usr/bin/env python -# -*- coding: utf-8 -*- -# Copyright (C) 2007-2013 EDF R&D -# -# 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 -# -""" - Ce module sert a lancer EFICAS configure pour Meteo -""" -# Modules Python -# Modules Eficas -import prefs -name='prefs_'+prefs.code -__import__(name) - -import sys -import os -sys.path.append(os.path.join(os.path.abspath(os.path.dirname(__file__)),'../..')) - -import prefs -from InterfaceQT4 import eficas_go -eficas_go.lanceEficas(code=prefs.code) diff --git a/MAP/CMakeLists.txt b/MAP/CMakeLists.txt deleted file mode 100644 index f65a4429..00000000 --- a/MAP/CMakeLists.txt +++ /dev/null @@ -1,35 +0,0 @@ -# -*- coding: utf-8 -*- -# CONFIGURATION MANAGEMENT OF EDF VERSION -# ====================================================================== -# COPYRIGHT (C) 1991 - 2002 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# -# -# ====================================================================== - - -install ( FILES qtEficas_map.py - prefs.py - style.py - prefs_MAP.py - configuration_MAP.py - mapcata.py - DESTINATION ${CMAKE_INSTALL_PREFIX}/MAP - ) - - -### Local Variables: -### mode: cmake -### End: diff --git a/MAP/configuration_MAP.py b/MAP/configuration_MAP.py deleted file mode 100644 index 983413aa..00000000 --- a/MAP/configuration_MAP.py +++ /dev/null @@ -1,59 +0,0 @@ -# -*- coding: utf-8 -*- -# Copyright (C) 2007-2013 EDF R&D -# -# 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 -# -""" - Ce module sert pour charger les parametres de configuration d'EFICAS -""" -# Modules Python -import os -import sys -import configuration - -# Modules Eficas - -class CONFIG(configuration.configBase): - - #----------------------------------- - def __init__(self,appli,repIni): - #----------------------------------- - self.ssCode=appli.ssCode - self.INSTALLDIR =os.path.dirname(__file__) - self.adresse="ftp://ftp.pleiade.edf.fr/projets/MAP/OnlineDoc/MAP2014.1/components" - - self.labels_user=['exec_acrobat','savedir','path_doc'] - self.labels_eficas=['exec_acrobat','savedir','path_doc','catalogues','closeAutreCommande','closeFrameRechercheCommande','taille'] - - #self.cataFile="catalogues_MAP.ini" - configuration.configBase.__init__(self,appli,repIni) - - def make_ssCode(self,ssCode): - if ssCode == None : return - try : - name='prefs_'+ssCode - prefs_ssCode=__import__(name) - prefs_ssCode.ajout(self) - except : - pass - - -def make_config(appli,rep): - return CONFIG(appli,rep) - - - diff --git a/MAP/mapcata.py b/MAP/mapcata.py deleted file mode 100755 index 80de7820..00000000 --- a/MAP/mapcata.py +++ /dev/null @@ -1,2283 +0,0 @@ - -from Accas import * - -JdC = JDC_CATA (code = 'MAP', - execmodul = None, - ) - -import types -class Tuple: - def __init__(self,ntuple): - self.ntuple=ntuple - - def __convert__(self,valeur): - if type(valeur) == types.StringType: - return None - if len(valeur) != self.ntuple: - return None - return valeur - - def info(self): - return "Tuple de %s elements" % self.ntuple - - __repr__=info - __str__=info - -# ====================================================================== -# Catalog entry for the MAP function : c_solver_primary_chemistry -# ====================================================================== -C_SOLVER_PRIMARY_CHEMISTRY_DATA=PROC(nom='C_SOLVER_PRIMARY_CHEMISTRY_DATA',op=None, -UIinfo ={'groupes':('solver',)}, -input_temp=SIMP(typ='R',fr= "value of the temperature in Celsius",ang= "value of the temperature in Celsius",docu= "",statut= "o",into=None,min=1,max=1,val_min=20.0,val_max=320.0,defaut=None), -input_bore=SIMP(typ='R',fr= "boron content (in ppm) in the primary water",ang= "boron content (in ppm) in the primary water",docu= "",statut= "o",into=None,min=1,max=1,val_min=0.0,val_max=2000.0,defaut=None), -input_lithium=SIMP(typ='R',fr= "lithium content (in ppm) in the primary water",ang= "lithium content (in ppm) in the primary water",docu= "",statut= "o",into=None,min=1,max=1,val_min=0.0,val_max=1000.0,defaut=None), -save_out=SIMP(typ=bool,fr= "boolean, if true output results in an output file",ang= "boolean, if true output results in an output file",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -output_file=SIMP(typ=('Fichier', 'All Files ()', 'Sauvegarde'),fr= "Pathname for the ouput file",ang= "Pathname for the ouput file",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -) -# ====================================================================== -# Catalog entry for the MAP function : c_post_polymer_graphic -# ====================================================================== -C_POST_POLYMER_GRAPHIC_DATA=PROC(nom='C_POST_POLYMER_GRAPHIC_DATA',op=None, -UIinfo ={'groupes':('post',)}, -study_name=SIMP(typ='TXM',fr= "Describes the name of the study",ang= "Describes the name of the study",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -input_directory=SIMP(typ='TXM',fr= "Name of directory where input data are located.",ang= "Name of directory where input data are located.",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -csv_output_file_name=SIMP(typ='TXM',fr= "Name of file where input data are stored.",ang= "Name of file where input data are stored.",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -graphic_names=SIMP(typ='TXM',fr= "Names of graphics",ang= "Names of graphics",docu= "",statut= "f",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -graphic_nodes=SIMP(typ='TXM',fr= "List of the nodes that have to be plot.if graphic_nodes is a list, all the nodes in the list will be plot for each graph. If the list contain only 'all', all the nodes will be plot. If the nodes are differents for each graph, graphic_nodes will be a list of list. The first list level will have the same lenth as graphic_names (same order) the second list level will contain the nodes for the graph",ang= "List of the nodes that have to be plot.if graphic_nodes is a list, all the nodes in the list will be plot for each graph. If the list contain only 'all', all the nodes will be plot. If the nodes are differents for each graph, graphic_nodes will be a list of list. The first list level will have the same lenth as graphic_names (same order) the second list level will contain the nodes for the graph",docu= "",statut= "f",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -graphic_log=SIMP(typ='TXM',fr= "list of the boolean that indiacte if the X and Y axes will be plot in log. if graphic_log is a list of 1 boolean, ex True, the log will be applied for the 2 axes of all the graphs. if graphic_log is a list of 2 boolean, the 1st boolean will be link to the X axe, the second to the Y axe of all the graphs, If the log information is different for each graph, graphic_log will be a list of list. The first list level will have the same lenth as graphic_names (same order) the second list level will contain the same information as the 2 previous options",ang= "list of the boolean that indiacte if the X and Y axes will be plot in log. if graphic_log is a list of 1 boolean, ex True, the log will be applied for the 2 axes of all the graphs. if graphic_log is a list of 2 boolean, the 1st boolean will be link to the X axe, the second to the Y axe of all the graphs, If the log information is different for each graph, graphic_log will be a list of list. The first list level will have the same lenth as graphic_names (same order) the second list level will contain the same information as the 2 previous options",docu= "",statut= "f",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -experimental_graphic_name=SIMP(typ='TXM',fr= "list of parameter name on which graph we wish to add other plots",ang= "list of parameter name on which graph we wish to add other plots",docu= "",statut= "f",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -experimental_name=SIMP(typ='TXM',fr= "list of list of name of the experiemental plot that will be add. The first list level will have the same lenth as graphic_names (same order) the second list level will contain the experiemental names for the graph",ang= "list of list of name of the experiemental plot that will be add. The first list level will have the same lenth as graphic_names (same order) the second list level will contain the experiemental names for the graph",docu= "",statut= "f",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -experimental_file=SIMP(typ='TXM',fr= "list of list of file name of the experiemental data that will be add. The first list level will have the same lenth as graphic_names (same order) the second list level will contain the experiemental file names",ang= "list of list of file name of the experiemental data that will be add. The first list level will have the same lenth as graphic_names (same order) the second list level will contain the experiemental file names",docu= "",statut= "f",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -graphic_space_names=SIMP(typ='TXM',fr= "list of parameter name that have to be plot",ang= "list of parameter name that have to be plot",docu= "",statut= "f",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -graphic_space_nodes=SIMP(typ='TXM',fr= "list of the nodes that have to be plot. if graphic_nodes is a list, all the nodes in the list will be plot for each graph. If the list contain only 'all', all the nodes will be plot. If the nodes are differents for each graph, graphic_nodes will be a list of list. The first list level will have the same lenth as graphic_space_names (same order) the second list level will contain the nodes for the graph",ang= "list of the nodes that have to be plot. if graphic_nodes is a list, all the nodes in the list will be plot for each graph. If the list contain only 'all', all the nodes will be plot. If the nodes are differents for each graph, graphic_nodes will be a list of list. The first list level will have the same lenth as graphic_space_names (same order) the second list level will contain the nodes for the graph",docu= "",statut= "f",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -graphic_space_times=SIMP(typ='TXM',fr= "list of the time that have to be plot. if graphic_time is a list, all the time in the list will be plot for each graph. If the list contain only 'all', all the times will be plot. If the times are differents for each graph, graphic_nodes will be a list of list. The first list level will have the same lenth as graphic_space_names (same order) the second list level will contain the times for the graph",ang= "list of the time that have to be plot. if graphic_time is a list, all the time in the list will be plot for each graph. If the list contain only 'all', all the times will be plot. If the times are differents for each graph, graphic_nodes will be a list of list. The first list level will have the same lenth as graphic_space_names (same order) the second list level will contain the times for the graph",docu= "",statut= "f",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -graphic_space_log=SIMP(typ='TXM',fr= "list of the boolean that indiacte if the X and Y axes will be plot in log. +if graphic_log is a list of 1 boolean, ex True, the log will be applied for the 2 axes of all the graphs if graphic_log is a list of 2 boolean, the 1st boolean will be link to the X axe, the second to the Y axe of all the graphs. If the log information is different for each graph, graphic_log will be a list of list. The first list level will have the same lenth as graphic_space_names (same order) the second list level will contain the same information as the 2 previous options",ang= "list of the boolean that indiacte if the X and Y axes will be plot in log. +if graphic_log is a list of 1 boolean, ex True, the log will be applied for the 2 axes of all the graphs if graphic_log is a list of 2 boolean, the 1st boolean will be link to the X axe, the second to the Y axe of all the graphs. If the log information is different for each graph, graphic_log will be a list of list. The first list level will have the same lenth as graphic_space_names (same order) the second list level will contain the same information as the 2 previous options",docu= "",statut= "f",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -) -# ====================================================================== -# Catalog entry for the MAP function : c_post_grid_field -# ====================================================================== -C_POST_GRID_FIELD_DATA=PROC(nom='C_POST_GRID_FIELD_DATA',op=None, -UIinfo ={'groupes':('post',)}, -study_name=SIMP(typ='TXM',fr= "the name of your study",ang= "the name of your study",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -output_directory=SIMP(typ='Repertoire',fr= "the name of the output directory",ang= "the name of the output directory",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -prior_strain_dat_file_name=SIMP(typ=('Fichier', 'All Files ()', 'Sauvegarde'),fr= "first Stereo output file",ang= "first Stereo output file",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -second_strain_dat_file_name=SIMP(typ=('Fichier', 'All Files ()', 'Sauvegarde'),fr= "second Stereo output file",ang= "second Stereo output file",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -mesh_size_in_micron=SIMP(typ='R',fr= "grid mesh size in microns",ang= "grid mesh size in microns",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -mesh_size_in_pixel=SIMP(typ='I',fr= "grid mesh size in pixels",ang= "grid mesh size in pixels",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -matlab=SIMP(typ=bool,fr= "formatting output for matlab",ang= "formatting output for matlab",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=False), -accuracy=SIMP(typ='I',fr= "number of subdivision",ang= "number of subdivision",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -bin_number=SIMP(typ='I',fr= "number of bins in histogram",ang= "number of bins in histogram",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -histograms=SIMP(typ=bool,fr= "save histograms",ang= "save histograms",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=True), -prior_strain=SIMP(typ=bool,fr= "save the prior strain",ang= "save the prior strain",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=True), -second_strain=SIMP(typ=bool,fr= "save the second strain",ang= "save the second strain",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=True), -strain_path_beta=SIMP(typ=bool,fr= "save the strain path beta",ang= "save the strain path beta",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=False), -peek=SIMP(typ=bool,fr= "save the peek",ang= "save the peek",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=False), -oxydation_map=SIMP(typ=bool,fr= "save the oxydation map",ang= "save the oxydation map",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=True), -) -# ====================================================================== -# Catalog entry for the MAP function : c_solver_generalised_corrosion -# ====================================================================== -C_SOLVER_GENERALISED_CORROSION_DATA=PROC(nom='C_SOLVER_GENERALISED_CORROSION_DATA',op=None, -UIinfo ={'groupes':('transverse',)}, -input_grid_field_csv=SIMP(typ=('Fichier', 'All Files (*)'),fr= "name of the grid field csv file with metal thickness field",ang= "name of the grid field csv file with metal thickness field",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -input_grid_field_metadata=SIMP(typ=('Fichier', 'All Files (*)'),fr= "name of the grid field metadata file with metal thickness field",ang= "name of the grid field metadata file with metal thickness field",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -corrosion_speed_profile=SIMP(typ=('Fichier', 'All Files (*)'),fr= "name of the file describing corrosion speed profile with thickness",ang= "name of the file describing corrosion speed profile with thickness",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -output_grid_field_csv=SIMP(typ=('Fichier', 'All Files ()', 'Sauvegarde'),fr= "resulting thickness field csv file (grid field format)",ang= "resulting thickness field csv file (grid field format)",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -output_grid_field_metadata=SIMP(typ=('Fichier', 'All Files ()', 'Sauvegarde'),fr= "resulting thickness field metadata file (grid field format)",ang= "resulting thickness field metadata file (grid field format)",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -output_grid_field_pdf=SIMP(typ=('Fichier', 'All Files ()', 'Sauvegarde'),fr= "pdf report including intermediate thickness fields",ang= "pdf report including intermediate thickness fields",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -computation_steps=SIMP(typ='I',fr= "number of time steps",ang= "number of time steps",docu= "",statut= "o",into=None,min=1,max=1,val_min=1,val_max=100,defaut=10), -computation_time_step=SIMP(typ='R',fr= "amplitude of the time steps",ang= "amplitude of the time steps",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -display=SIMP(typ=bool,fr= "turn it on to display fields",ang= "turn it on to display fields",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=False), -initial_thickness=SIMP(typ='R',fr= "initial metal thickness",ang= "initial metal thickness",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -) -# ====================================================================== -# Catalog entry for the MAP function : c_pre_ct_specimen_mesh -# ====================================================================== -C_PRE_CT_SPECIMEN_MESH_DATA=PROC(nom='C_PRE_CT_SPECIMEN_MESH_DATA',op=None, -UIinfo ={'groupes':('pre',)}, -ct_scale=SIMP(typ='R',fr= "Scale factor of the CT specimen, with respect to a CT 12.5 model",ang= "Scale factor of the CT specimen, with respect to a CT 12.5 model",docu= "",statut= "o",into=None,min=1,max=1,val_min=0.5,val_max=2.0,defaut=1.0), -crack_depth_ratio=SIMP(typ='R',fr= "Conventional a/w ratio of crack depth over specimen thickness",ang= "Conventional a/w ratio of crack depth over specimen thickness",docu= "",statut= "o",into=None,min=1,max=1,val_min=0.3,val_max=0.6,defaut=0.5), -output_mesh=SIMP(typ=('Fichier', 'All Files ()', 'Sauvegarde'),fr= "pathname of the file where the output MED mesh is generated",ang= "pathname of the file where the output MED mesh is generated",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -output_info=SIMP(typ=('Fichier', 'All Files ()', 'Sauvegarde'),fr= "pathname of the file where the output information about the mesh is generated",ang= "pathname of the file where the output information about the mesh is generated",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -) -# ====================================================================== -# Catalog entry for the MAP function : c_post_scatterplot_sensitivity -# ====================================================================== -C_POST_SCATTERPLOT_SENSITIVITY_DATA=PROC(nom='C_POST_SCATTERPLOT_SENSITIVITY_DATA',op=None, -UIinfo ={'groupes':('post',)}, -xsample=SIMP(typ=('Fichier', 'All Files (*)'),fr= "Name of the file that contains the input experimental design",ang= "Name of the file that contains the input experimental design",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -ysample=SIMP(typ=('Fichier', 'All Files (*)'),fr= "Name of the file that contains the output experimental design",ang= "Name of the file that contains the output experimental design",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -degree=SIMP(typ='I',fr= "Maximum degree of the polynomial fit.If the parameter is not set, no fit is attempted",ang= "Maximum degree of the polynomial fit.If the parameter is not set, no fit is attempted",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -file_output=SIMP(typ=('Fichier', 'All Files ()', 'Sauvegarde'),fr= "Name of the output file containing the analysis results",ang= "Name of the output file containing the analysis results",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -) -# ====================================================================== -# Catalog entry for the MAP function : c_image_2d_uncurtain -# ====================================================================== -C_IMAGE_2D_UNCURTAIN_DATA=PROC(nom='C_IMAGE_2D_UNCURTAIN_DATA',op=None, -UIinfo ={'groupes':('image',)}, -image_name=SIMP(typ='TXM',fr= "pathname of the files of input images ; globing (wild card) is allowed",ang= "pathname of the files of input images ; globing (wild card) is allowed",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -mask_width=SIMP(typ='R',fr= "(optional if GUI is used, mandatory otherwise) dark bands width of the mask",ang= "(optional if GUI is used, mandatory otherwise) dark bands width of the mask",docu= "",statut= "o",into=None,min=1,max=1,val_min=0.0,val_max='**',defaut=None), -core_width=SIMP(typ='R',fr= "(optional if GUI is used, mandatory otherwise)center size not to be darken in the fourier transform image",ang= "(optional if GUI is used, mandatory otherwise)center size not to be darken in the fourier transform image",docu= "",statut= "o",into=None,min=1,max=1,val_min=0.0,val_max='**',defaut=None), -mask_blur=SIMP(typ='R',fr= "(optional if GUI is used, mandatory otherwise)gaussian blur sigma applied on the mask",ang= "(optional if GUI is used, mandatory otherwise)gaussian blur sigma applied on the mask",docu= "",statut= "o",into=None,min=1,max=1,val_min=0.0,val_max='**',defaut=None), -gui=SIMP(typ=bool,fr= "Run the Graphical User Interface if set to True",ang= "Run the Graphical User Interface if set to True",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=False), -output_prefix=SIMP(typ='TXM',fr= "Prefix appended before the output file name",ang= "Prefix appended before the output file name",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=''), -output_suffix=SIMP(typ='TXM',fr= "Suffix appended after the output file name",ang= "Suffix appended after the output file name",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=''), -output_directory=SIMP(typ='Repertoire',fr= "path where each output file is written",ang= "path where each output file is written",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut='refs'), -) -# ====================================================================== -# Catalog entry for the MAP function : c_image_2d_brightness_equalizer -# ====================================================================== -C_IMAGE_2D_BRIGHTNESS_EQUALIZER_DATA=PROC(nom='C_IMAGE_2D_BRIGHTNESS_EQUALIZER_DATA',op=None, -UIinfo ={'groupes':('image',)}, -mask_shape=SIMP(typ='TXM',fr= "(optional in standalone mode if gui parameter is set to True, mandatory otherwise) technic used to create the mask shape",ang= "(optional in standalone mode if gui parameter is set to True, mandatory otherwise) technic used to create the mask shape",docu= "",statut= "o",into=['gaussian', 'parabolic', 'planar'],min=1,max=1,val_min='**',val_max='**',defaut='gaussian'), -mask_shape_gaussian=BLOC(condition="(mask_shape=='gaussian')", -image_name=SIMP(typ='TXM',fr= "pathname of the files of input images ; globing (wild card) is allowed",ang= "pathname of the files of input images ; globing (wild card) is allowed",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -gui=SIMP(typ=bool,fr= "Run the Graphical User Interface if set to True",ang= "Run the Graphical User Interface if set to True",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=False), -output_prefix=SIMP(typ='TXM',fr= "Prefix appended before the output file name",ang= "Prefix appended before the output file name",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=''), -output_suffix=SIMP(typ='TXM',fr= "Suffix appended after the output file name",ang= "Suffix appended after the output file name",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=''), -gaussian_blur_sigma=SIMP(typ='R',fr= "standard variation of the gaussian blur applied to the input image to create the mask",ang= "standard variation of the gaussian blur applied to the input image to create the mask",docu= "",statut= "f",into=None,min=1,max=1,val_min=0.0,val_max='**',defaut=None), -), -output_directory=SIMP(typ='Repertoire',fr= "(optional, default : /refs) path where each output file is written",ang= "(optional, default : /refs) path where each output file is written",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -mask_shape_parabolic=BLOC(condition="(mask_shape=='parabolic')", -image_name=SIMP(typ='TXM',fr= "pathname of the files of input images ; globing (wild card) is allowed",ang= "pathname of the files of input images ; globing (wild card) is allowed",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -gui=SIMP(typ=bool,fr= "Run the Graphical User Interface if set to True",ang= "Run the Graphical User Interface if set to True",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=False), -output_prefix=SIMP(typ='TXM',fr= "Prefix appended before the output file name",ang= "Prefix appended before the output file name",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=''), -output_suffix=SIMP(typ='TXM',fr= "Suffix appended after the output file name",ang= "Suffix appended after the output file name",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=''), -relative_steepness=SIMP(typ='R',fr= "(optional if GUI is used, mandatory otherwise) Set the steepness of the 2D parabola. The mask maximum value is computed as multiplied by the difference between input image minimum and maximum value divided by 100",ang= "(optional if GUI is used, mandatory otherwise) Set the steepness of the 2D parabola. The mask maximum value is computed as multiplied by the difference between input image minimum and maximum value divided by 100",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -), -mask_shape_planar=BLOC(condition="(mask_shape=='planar')", -image_name=SIMP(typ='TXM',fr= "pathname of the files of input images ; globing (wild card) is allowed",ang= "pathname of the files of input images ; globing (wild card) is allowed",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -gui=SIMP(typ=bool,fr= "Run the Graphical User Interface if set to True",ang= "Run the Graphical User Interface if set to True",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=False), -output_prefix=SIMP(typ='TXM',fr= "Prefix appended before the output file name",ang= "Prefix appended before the output file name",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=''), -output_suffix=SIMP(typ='TXM',fr= "Suffix appended after the output file name",ang= "Suffix appended after the output file name",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=''), -relative_tilt=SIMP(typ='R',fr= "(optional if GUI is used, mandatory otherwise) set the plan tilt. In the direction, the mask value is decreased by multiplied by the difference between the input image maximum and minimum values divided by 100 times the image length",ang= "(optional if GUI is used, mandatory otherwise) set the plan tilt. In the direction, the mask value is decreased by multiplied by the difference between the input image maximum and minimum values divided by 100 times the image length",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -orientation=SIMP(typ='R',fr= "(optional if GUI is used, mandatory otherwise) direction toward which the plan is tilting in degrees",ang= "(optional if GUI is used, mandatory otherwise) direction toward which the plan is tilting in degrees",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -), -) -# ====================================================================== -# Catalog entry for the MAP function : c_solver_corrosion_evolution -# ====================================================================== -C_SOLVER_CORROSION_EVOLUTION_DATA=PROC(nom='C_SOLVER_CORROSION_EVOLUTION_DATA',op=None, -UIinfo ={'groupes':('solver',)}, -model=SIMP(typ='TXM',fr= "determines the physical model used in the code (must belong to the following list [Seyeux_2010, Leistner_2012])",ang= "determines the physical model used in the code (must belong to the following list [Seyeux_2010, Leistner_2012])",docu= "",statut= "o",into=['Seyeux_2010', 'Leistner_2012'],min=1,max=1,val_min='**',val_max='**',defaut='Seyeux_2010'), -model_Seyeux_2010=BLOC(condition="(model=='Seyeux_2010')", -temperature_in_K=SIMP(typ='R',fr= "it determines the value of the temperature in Kelvin degrees (must be >0)",ang= "it determines the value of the temperature in Kelvin degrees (must be >0)",docu= "",statut= "o",into=None,min=1,max=1,val_min=0.0,val_max='**',defaut=603.0), -pH_temperature=SIMP(typ='R',fr= "it determines the value of the pH for the herebove determined temperature (must be >0)",ang= "it determines the value of the pH for the herebove determined temperature (must be >0)",docu= "",statut= "o",into=None,min=1,max=1,val_min=0.0,val_max='**',defaut=7.2), -x_Cr=SIMP(typ='R',fr= "the fraction of Cr in the alloy (non dimensional unit : must be between 0 and 1 (x_Cr = 0.3 <=> 30% Cr in the alloy))",ang= "the fraction of Cr in the alloy (non dimensional unit : must be between 0 and 1 (x_Cr = 0.3 <=> 30% Cr in the alloy))",docu= "",statut= "o",into=None,min=1,max=1,val_min=0.0,val_max=1.0,defaut=0.3), -x_Fe=SIMP(typ='R',fr= "the fraction of Fe in the alloy (non dimensional unit : must be between 0 and 1 (x_Fe = 0.1 <=> 10% Fe in the alloy))",ang= "the fraction of Fe in the alloy (non dimensional unit : must be between 0 and 1 (x_Fe = 0.1 <=> 10% Fe in the alloy))",docu= "",statut= "o",into=None,min=1,max=1,val_min=0.0,val_max=1.0,defaut=0.1), -x_Ni=SIMP(typ='R',fr= "the fraction of Ni in the alloy (non dimensional unit : must be between 0 and 1 (x_Ni = 0.58 <=> 58% Ni in the alloy))",ang= "the fraction of Ni in the alloy (non dimensional unit : must be between 0 and 1 (x_Ni = 0.58 <=> 58% Ni in the alloy))",docu= "",statut= "o",into=None,min=1,max=1,val_min=0.0,val_max=1.0,defaut=0.58), -alpha=SIMP(typ='R',fr= "interface polarisability (between 0 and 1)",ang= "interface polarisability (between 0 and 1)",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -DV=SIMP(typ='R',fr= "potential change with respect to a stationnary state",ang= "potential change with respect to a stationnary state",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -F_0f=SIMP(typ='R',fr= "potential drop in the film",ang= "potential drop in the film",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -F_0mf=SIMP(typ='R',fr= "potential drop at film-solution interface",ang= "potential drop at film-solution interface",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -F_0fs=SIMP(typ='R',fr= "potential drop at film-solution interface",ang= "potential drop at film-solution interface",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -D_vO=SIMP(typ='R',fr= "diffusion coefficient of oxygen vacancies",ang= "diffusion coefficient of oxygen vacancies",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -DG1=SIMP(typ='R',fr= "Gibbs energy of formation of reaction 1 (Cr_M -> Cr3+_ox + 3e- + 3/2 V_o with V_o = oxygen vacancy)",ang= "Gibbs energy of formation of reaction 1 (Cr_M -> Cr3+_ox + 3e- + 3/2 V_o with V_o = oxygen vacancy)",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=10000.0), -time_in_seconds=SIMP(typ='R',fr= "the duration of the physical time experiment",ang= "the duration of the physical time experiment",docu= "",statut= "o",into=None,min=1,max=1,val_min=0.0,val_max='**',defaut=36000.0), -save_history=SIMP(typ=bool,fr= "must be set to yes if you want to save the integration times into the output file",ang= "must be set to yes if you want to save the integration times into the output file",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=True), -output_file_name=SIMP(typ=('Fichier', 'All Files ()', 'Sauvegarde'),fr= "the name of the text file where the results are written",ang= "the name of the text file where the results are written",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut='c_solver_corrosion_evolution.output'), -), -model_Leistner_2012=BLOC(condition="(model=='Leistner_2012')", -temperature_in_K=SIMP(typ='R',fr= "it determines the value of the temperature in Kelvin degrees (must be >0)",ang= "it determines the value of the temperature in Kelvin degrees (must be >0)",docu= "",statut= "o",into=None,min=1,max=1,val_min=0.0,val_max='**',defaut=603.0), -pH_temperature=SIMP(typ='R',fr= "it determines the value of the pH for the herebove determined temperature (must be >0)",ang= "it determines the value of the pH for the herebove determined temperature (must be >0)",docu= "",statut= "o",into=None,min=1,max=1,val_min=0.0,val_max='**',defaut=7.2), -x_Cr=SIMP(typ='R',fr= "the fraction of Cr in the alloy (non dimensional unit : must be between 0 and 1 (x_Cr = 0.3 <=> 30% Cr in the alloy))",ang= "the fraction of Cr in the alloy (non dimensional unit : must be between 0 and 1 (x_Cr = 0.3 <=> 30% Cr in the alloy))",docu= "",statut= "o",into=None,min=1,max=1,val_min=0.0,val_max=1.0,defaut=0.3), -x_Fe=SIMP(typ='R',fr= "the fraction of Fe in the alloy (non dimensional unit : must be between 0 and 1 (x_Fe = 0.1 <=> 10% Fe in the alloy))",ang= "the fraction of Fe in the alloy (non dimensional unit : must be between 0 and 1 (x_Fe = 0.1 <=> 10% Fe in the alloy))",docu= "",statut= "o",into=None,min=1,max=1,val_min=0.0,val_max=1.0,defaut=0.1), -x_Ni=SIMP(typ='R',fr= "the fraction of Ni in the alloy (non dimensional unit : must be between 0 and 1 (x_Ni = 0.58 <=> 58% Ni in the alloy))",ang= "the fraction of Ni in the alloy (non dimensional unit : must be between 0 and 1 (x_Ni = 0.58 <=> 58% Ni in the alloy))",docu= "",statut= "o",into=None,min=1,max=1,val_min=0.0,val_max=1.0,defaut=0.58), -alpha=SIMP(typ='R',fr= "interface polarisability (between 0 and 1)",ang= "interface polarisability (between 0 and 1)",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -DV=SIMP(typ='R',fr= "potential change with respect to a stationnary state",ang= "potential change with respect to a stationnary state",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -F_0f=SIMP(typ='R',fr= "potential drop in the film",ang= "potential drop in the film",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -F_0mf=SIMP(typ='R',fr= "potential drop at film-solution interface",ang= "potential drop at film-solution interface",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -F_0fs=SIMP(typ='R',fr= "potential drop at film-solution interface",ang= "potential drop at film-solution interface",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -D_vO=SIMP(typ='R',fr= "diffusion coefficient of oxygen vacancies",ang= "diffusion coefficient of oxygen vacancies",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -DG1=SIMP(typ='R',fr= "Gibbs energy of formation of reaction 1 (Cr_M -> Cr3+_ox + 3e- + 3/2 V_o with V_o = oxygen vacancy)",ang= "Gibbs energy of formation of reaction 1 (Cr_M -> Cr3+_ox + 3e- + 3/2 V_o with V_o = oxygen vacancy)",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=10000.0), -time_in_seconds=SIMP(typ='R',fr= "the duration of the physical time experiment",ang= "the duration of the physical time experiment",docu= "",statut= "o",into=None,min=1,max=1,val_min=0.0,val_max='**',defaut=36000.0), -save_history=SIMP(typ=bool,fr= "must be set to yes if you want to save the integration times into the output file",ang= "must be set to yes if you want to save the integration times into the output file",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=True), -output_file_name=SIMP(typ=('Fichier', 'All Files ()', 'Sauvegarde'),fr= "the name of the text file where the results are written",ang= "the name of the text file where the results are written",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut='c_solver_corrosion_evolution.output'), -DG8=SIMP(typ='R',fr= "Gibbs energy of formation of reaction 8 (V_o + H2O -> 2 H+ + O_ox)",ang= "Gibbs energy of formation of reaction 8 (V_o + H2O -> 2 H+ + O_ox)",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -D_mCr=SIMP(typ='R',fr= "diffusion coefficient of Cr ions in metal",ang= "diffusion coefficient of Cr ions in metal",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -D_ICr=SIMP(typ='R',fr= " diffusion coefficient of Cr3+ cation",ang= " diffusion coefficient of Cr3+ cation",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -decay_length=SIMP(typ='R',fr= "length caracterising the influence zone of the potential",ang= "length caracterising the influence zone of the potential",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -charge_number=SIMP(typ='R',fr= "number of electrons transferred during dissolution reaction",ang= "number of electrons transferred during dissolution reaction",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -dissol_order=SIMP(typ='R',fr= "order of dissolution reaction",ang= "order of dissolution reaction",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -dissol_preexp=SIMP(typ='R',fr= "first order factor of dissolution reaction",ang= "first order factor of dissolution reaction",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -dissol_Ea=SIMP(typ='R',fr= "dissolution reaction activation energy",ang= "dissolution reaction activation energy",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -DG2=SIMP(typ='R',fr= "Gibbs energy of formation of reaction 2 (Cr_M + V_Cr -> Cr3+_ox + 3e)",ang= "Gibbs energy of formation of reaction 2 (Cr_M + V_Cr -> Cr3+_ox + 3e)",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -DG3=SIMP(typ='R',fr= "Gibbs energy of formation of reaction 3 (Cr_M + V_I -> I_Cr + 3e)",ang= "Gibbs energy of formation of reaction 3 (Cr_M + V_I -> I_Cr + 3e)",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -DG4=SIMP(typ='R',fr= "Gibbs energy of formation of reaction 4 (Fe_M + V_Cr -> Fe3+_ox + 3e)",ang= "Gibbs energy of formation of reaction 4 (Fe_M + V_Cr -> Fe3+_ox + 3e)",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -DG5=SIMP(typ='R',fr= "Gibbs energy of formation of reaction 5 (Fe_M + V_I -> I_Fe + 3e)",ang= "Gibbs energy of formation of reaction 5 (Fe_M + V_I -> I_Fe + 3e)",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -DG6=SIMP(typ='R',fr= "Gibbs energy of formation of reaction 6 (Ni_M + 2/3 V_Cr -> Ni2+_ox + 2e-)",ang= "Gibbs energy of formation of reaction 6 (Ni_M + 2/3 V_Cr -> Ni2+_ox + 2e-)",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -DG7=SIMP(typ='R',fr= "Gibbs energy of formation of reaction 7 (Ni_M + V_I -> I_Ni + 2e)",ang= "Gibbs energy of formation of reaction 7 (Ni_M + V_I -> I_Ni + 2e)",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -DG9=SIMP(typ='R',fr= "Gibbs energy of formation of reaction 9 (Cr3+_ox + 3/2 H2O -> 3/2 O_ox + Cr3+_ox + V_Cr)",ang= "Gibbs energy of formation of reaction 9 (Cr3+_ox + 3/2 H2O -> 3/2 O_ox + Cr3+_ox + V_Cr)",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -DG10=SIMP(typ='R',fr= " Gibbs energy of formation of reaction 10 (I_Cr + 3/2 H2O -> 3/2 O_ox + Cr3+_ox + 3H+ + V_I)",ang= " Gibbs energy of formation of reaction 10 (I_Cr + 3/2 H2O -> 3/2 O_ox + Cr3+_ox + 3H+ + V_I)",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -DG11=SIMP(typ='R',fr= "Gibbs energy of formation of reaction 11 (Fe3+_ox -> V_Cr + Fe3+_aq)",ang= "Gibbs energy of formation of reaction 11 (Fe3+_ox -> V_Cr + Fe3+_aq)",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -DG12=SIMP(typ='R',fr= " Gibbs energy of formation of reaction 12 (I_Fe -> V_I + Fe3+_aq)",ang= " Gibbs energy of formation of reaction 12 (I_Fe -> V_I + Fe3+_aq)",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -DG13=SIMP(typ='R',fr= "Gibbs energy of formation of reaction 14 (M_Ni -> 2/3 V_Cr + Ni2+_aq)",ang= "Gibbs energy of formation of reaction 14 (M_Ni -> 2/3 V_Cr + Ni2+_aq)",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -DG14=SIMP(typ='R',fr= "Gibbs energy of formation of reaction 14 (I_Ni -> V_I + Ni2+_aq)",ang= "Gibbs energy of formation of reaction 14 (I_Ni -> V_I + Ni2+_aq)",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -CtotM_mf=SIMP(typ='R',fr= "total cation concentration in oxide at the metal-film interface",ang= "total cation concentration in oxide at the metal-film interface",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -), -) -# ====================================================================== -# Catalog entry for the MAP function : c_pre_image2mesh_2d -# ====================================================================== -C_PRE_IMAGE2MESH_2D_DATA=PROC(nom='C_PRE_IMAGE2MESH_2D_DATA',op=None, -UIinfo ={'groupes':('pre',)}, -study_path=SIMP(typ='Repertoire',fr= "determines the name of the directory where intermediate files produced by PINK library are written.",ang= "determines the name of the directory where intermediate files produced by PINK library are written.",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut='/tmp'), -study_name=SIMP(typ='TXM',fr= "determines the name of the study to determine the name of the intermediate files produced by PINK library are written",ang= "determines the name of the study to determine the name of the intermediate files produced by PINK library are written",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut='study_c_pre_image2mesh_2d'), -input_image=SIMP(typ=('Fichier', 'All Files (*)'),fr= " name of the image input file name (pgm format only)",ang= " name of the image input file name (pgm format only)",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -output_mesh=SIMP(typ=('Fichier', 'All Files ()', 'Sauvegarde'),fr= "name of the mesh output file name",ang= "name of the mesh output file name",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut='output_c_pre_image2mesh_2d.med'), -mesh_size=SIMP(typ='R',fr= "size of the mesh elements",ang= "size of the mesh elements",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=0.2), -) -# ====================================================================== -# Catalog entry for the MAP function : c_post_image_correlation -# ====================================================================== -C_POST_IMAGE_CORRELATION_DATA=PROC(nom='C_POST_IMAGE_CORRELATION_DATA',op=None, -UIinfo ={'groupes':('post',)}, -computation=SIMP(typ='TXM',fr= "Type of computation in the sequence RBM, Displacement, Deformation",ang= "Type of computation in the sequence RBM, Displacement, Deformation",docu= "",statut= "o",into=['RBM', 'Displacement', 'Deformation'],min=1,max=1,val_min='**',val_max='**',defaut='RBM'), -computation_RBM=BLOC(condition="(computation=='RBM')", -print_image=SIMP(typ=bool,fr= "true to print results in image format, false otherwise. ignored if computation is RBM.",ang= "true to print results in image format, false otherwise. ignored if computation is RBM.",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=False), -output_directory=SIMP(typ='Repertoire',fr= "directory where the output files will be written.",ang= "directory where the output files will be written.",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -displacement_method=SIMP(typ='TXM',fr= "when computation = 'RBM', values can be 'direct' or 'direct_with_random_shifts'; when computation = 'Displacement', values can be 'direct', 'direct_with_random_shifts', 'Iterative' or 'IterativeFFT'.",ang= "when computation = 'RBM', values can be 'direct' or 'direct_with_random_shifts'; when computation = 'Displacement', values can be 'direct', 'direct_with_random_shifts', 'Iterative' or 'IterativeFFT'.",docu= "",statut= "o",into=('Direct', 'DirectWithRandomShifts', 'Iterative', 'IterativeFFT'),min=1,max=1,val_min='**',val_max='**',defaut='Direct'), -randomfile=SIMP(typ=('Fichier', 'All Files (*)'),fr= "('Name of the file where a random displacement field ', 'is stored. This parameter is mainly used ', 'for non-regression tests.')",ang= "('Name of the file where a random displacement field ', 'is stored. This parameter is mainly used ', 'for non-regression tests.')",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -input_type=SIMP(typ='TXM',fr= "type of input where data files have been stored.",ang= "type of input where data files have been stored.",docu= "",statut= "o",into=['archive', 'directory'],min=1,max=1,val_min='**',val_max='**',defaut=None), -input_directory=SIMP(typ='Repertoire',fr= "directory where the grayscale images are located.",ang= "directory where the grayscale images are located.",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -input_archive=SIMP(typ=('Fichier', 'All Files (*)'),fr= ".zip archive where the grayscale images are located.",ang= ".zip archive where the grayscale images are located.",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -input_file_root=SIMP(typ='TXM',fr= "string precising the generic root of the image name",ang= "string precising the generic root of the image name",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -input_file_extension=SIMP(typ='TXM',fr= "string precising the extension associated with the image type, e.g. bmp, tiff,png.",ang= "string precising the extension associated with the image type, e.g. bmp, tiff,png.",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -input_file_first_index=SIMP(typ='I',fr= "index of the first image of the set",ang= "index of the first image of the set",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -input_file_last_index=SIMP(typ='I',fr= "index of the last image of the set",ang= "index of the last image of the set",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -step_between_images=SIMP(typ='I',fr= "ncrement between two consecutive images to be treated",ang= "ncrement between two consecutive images to be treated",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -step_between_updates=SIMP(typ='I',fr= "increment needed to update reference image.",ang= "increment needed to update reference image.",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -DIC_subset_size=SIMP(typ='I',fr= "displacement calculation: size in pixel of the subset size.",ang= "displacement calculation: size in pixel of the subset size.",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=20), -research_area_vmax=SIMP(typ='I',fr= "displacement calculation: size in pixel of the research area.",ang= "displacement calculation: size in pixel of the research area.",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -grid_step=SIMP(typ='I',fr= "displacement calculation: spacing in pixel between the subset centers. Smaller values will correspond to higher densities of displacement field.",ang= "displacement calculation: spacing in pixel between the subset centers. Smaller values will correspond to higher densities of displacement field.",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -DIC_big_subset_size=SIMP(typ='I',fr= "central point displacement: a large central subset is used to get an estimate of the global translation between two images. Should be about two times the maximum translation value in pixels up to the image dimension.",ang= "central point displacement: a large central subset is used to get an estimate of the global translation between two images. Should be about two times the maximum translation value in pixels up to the image dimension.",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -DIC_big_subset_area_vmax=SIMP(typ='I',fr= "central point displacement: parameter identical to 'research_area_vmax' but specific to the big subset.",ang= "central point displacement: parameter identical to 'research_area_vmax' but specific to the big subset.",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -ZOI_upper_left_corner=SIMP(typ='TXM',fr= "[, ] in pixelscoordinates (, ) in pixels of the upper left corner of the rectangular Zone of Interest where the calculation is performed.",ang= "[, ] in pixelscoordinates (, ) in pixels of the upper left corner of the rectangular Zone of Interest where the calculation is performed.",docu= "",statut= "o",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -ZOI_bottom_right_corner=SIMP(typ='TXM',fr= "[, ] in pixelsZone of Interest bottom right coordinates ",ang= "[, ] in pixelsZone of Interest bottom right coordinates ",docu= "",statut= "o",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -), -computation_Displacement=BLOC(condition="(computation=='Displacement')", -print_image=SIMP(typ=bool,fr= "true to print results in image format, false otherwise. ignored if computation is RBM.",ang= "true to print results in image format, false otherwise. ignored if computation is RBM.",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=False), -output_directory=SIMP(typ='Repertoire',fr= "directory where the output files will be written.",ang= "directory where the output files will be written.",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -displacement_method=SIMP(typ='TXM',fr= "when computation = 'RBM', values can be 'direct' or 'direct_with_random_shifts'; when computation = 'Displacement', values can be 'direct', 'direct_with_random_shifts', 'Iterative' or 'IterativeFFT'.",ang= "when computation = 'RBM', values can be 'direct' or 'direct_with_random_shifts'; when computation = 'Displacement', values can be 'direct', 'direct_with_random_shifts', 'Iterative' or 'IterativeFFT'.",docu= "",statut= "o",into=('Direct', 'DirectWithRandomShifts', 'Iterative', 'IterativeFFT'),min=1,max=1,val_min='**',val_max='**',defaut='Direct'), -randomfile=SIMP(typ=('Fichier', 'All Files (*)'),fr= "('Name of the file where a random displacement field ', 'is stored. This parameter is mainly used ', 'for non-regression tests.')",ang= "('Name of the file where a random displacement field ', 'is stored. This parameter is mainly used ', 'for non-regression tests.')",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -RBM_parameters_input_file=SIMP(typ=('Fichier', 'All Files (*)'),fr= "Mandatory if computation is Displacement or Deformation. path of the input file used for the initial RBM calculations. ",ang= "Mandatory if computation is Displacement or Deformation. path of the input file used for the initial RBM calculations. ",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -DIC_subset_size=SIMP(typ='I',fr= "Not documented",ang= "Not documented",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -research_area_vmax=SIMP(typ='I',fr= "Not documented",ang= "Not documented",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -grid_step=SIMP(typ='I',fr= "Not documented",ang= "Not documented",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -max_iteration_number=SIMP(typ='I',fr= "if displacement_method is Iterative or IterativeFFTmaximum iteration number tolerated before exiting the Iterative resolution",ang= "if displacement_method is Iterative or IterativeFFTmaximum iteration number tolerated before exiting the Iterative resolution",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -iteration_convergence_criterion=SIMP(typ='R',fr= "if displacement_method is Iterative or IterativeFFTconvergence criterion of the iteration scheme",ang= "if displacement_method is Iterative or IterativeFFTconvergence criterion of the iteration scheme",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -polynomial_degree_of_transformation=SIMP(typ='I',fr= "if displacement_method is Iterativethe transformation between subsets can be a not purely rigid body motion but a more general polynomial transformation. The polynomial degree is given by this parameter.",ang= "if displacement_method is Iterativethe transformation between subsets can be a not purely rigid body motion but a more general polynomial transformation. The polynomial degree is given by this parameter.",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -), -computation_Deformation=BLOC(condition="(computation=='Deformation')", -print_image=SIMP(typ=bool,fr= "true to print results in image format, false otherwise. ignored if computation is RBM.",ang= "true to print results in image format, false otherwise. ignored if computation is RBM.",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=False), -output_directory=SIMP(typ='Repertoire',fr= "directory where the output files will be written.",ang= "directory where the output files will be written.",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -RBM_parameters_input_file=SIMP(typ=('Fichier', 'All Files (*)'),fr= "Mandatory if computation is Displacement or Deformation. path of the input file used for the initial RBM calculations. ",ang= "Mandatory if computation is Displacement or Deformation. path of the input file used for the initial RBM calculations. ",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -input_directory_with_displacement_fields=SIMP(typ='Repertoire',fr= " directory where displacement fields can be found",ang= " directory where displacement fields can be found",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -deformation_type_of_calculation=SIMP(typ='TXM',fr= "Not documented",ang= "Not documented",docu= "",statut= "o",into=('Deformation', 'Deformation_Rate'),min=1,max=1,val_min='**',val_max='**',defaut=None), -deformation_model=SIMP(typ='TXM',fr= "can be chosen between 'Euler', 'Lagrange' (standard) or 'Hencky' (logarithmic).",ang= "can be chosen between 'Euler', 'Lagrange' (standard) or 'Hencky' (logarithmic).",docu= "",statut= "o",into=('Euler', 'Lagrange', 'Hencky'),min=1,max=1,val_min='**',val_max='**',defaut=None), -deformation_calculation_method=SIMP(typ='TXM',fr= "'FiniteDifference' (rough), 'Polynomial' (in this case the space and time approximations are independant) or 'SpaceTimePolynomial' (total space-time approximation)",ang= "'FiniteDifference' (rough), 'Polynomial' (in this case the space and time approximations are independant) or 'SpaceTimePolynomial' (total space-time approximation)",docu= "",statut= "o",into=('FiniteDifference', 'Polynomial', 'SpaceTimePolynomial'),min=1,max=1,val_min='**',val_max='**',defaut=None), -polynomial_deformation_space_degree=SIMP(typ='I',fr= "if deformation_calculation_method is Polynomial or SpaceTimePolynomialdegree of the polynomial approximation in space allowing to obtain the deformation by derivation.",ang= "if deformation_calculation_method is Polynomial or SpaceTimePolynomialdegree of the polynomial approximation in space allowing to obtain the deformation by derivation.",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -polynomial_deformation_time_degree=SIMP(typ='I',fr= "if deformation_calculation_method is Polynomial or SpaceTimePolynomial",ang= "if deformation_calculation_method is Polynomial or SpaceTimePolynomial",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -polynomial_deformation_space_step=SIMP(typ='I',fr= "if deformation_calculation_method is Polynomial or SpaceTimePolynomialnumber of displacement points to be used in space at each side of a reference point to compute the deformation approximation. For example, if set to= k, the polynomial function will approximate the displacement values over (k+1+k)*(k+1+k) points.",ang= "if deformation_calculation_method is Polynomial or SpaceTimePolynomialnumber of displacement points to be used in space at each side of a reference point to compute the deformation approximation. For example, if set to= k, the polynomial function will approximate the displacement values over (k+1+k)*(k+1+k) points.",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -polynomial_deformation_time_step=SIMP(typ='I',fr= "if deformation_calculation_method is Polynomial or SpaceTimePolynomialnumber of displacement points to be used in time at each side of a reference point to compute the deformation approximation.",ang= "if deformation_calculation_method is Polynomial or SpaceTimePolynomialnumber of displacement points to be used in time at each side of a reference point to compute the deformation approximation.",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -), -) -# ====================================================================== -# Catalog entry for the MAP function : c_transverse_empty_python -# ====================================================================== -C_TRANSVERSE_EMPTY_PYTHON_DATA=PROC(nom='C_TRANSVERSE_EMPTY_PYTHON_DATA',op=None, -UIinfo ={'groupes':('transverse',)}, -a_string=SIMP(typ='TXM',fr= "simply print in verbose mode",ang= "simply print in verbose mode",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut='Hello world of MAP'), -an_integer=SIMP(typ='I',fr= "number of lines in the output file",ang= "number of lines in the output file",docu= "",statut= "o",into=None,min=1,max=1,val_min=1,val_max=100,defaut=4), -a_float=SIMP(typ='R',fr= "simply print in verbose mode",ang= "simply print in verbose mode",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=5.3), -file_output=SIMP(typ=('Fichier', 'All Files ()', 'Sauvegarde'),fr= "gives the name of the output file of the component",ang= "gives the name of the output file of the component",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut='c_transverse_empty_python.output'), -) -# ====================================================================== -# Catalog entry for the MAP function : c_pre_morphology_synthesis_fractal_interface -# ====================================================================== -C_PRE_MORPHOLOGY_SYNTHESIS_FRACTAL_INTERFACE_DATA=PROC(nom='C_PRE_MORPHOLOGY_SYNTHESIS_FRACTAL_INTERFACE_DATA',op=None, -UIinfo ={'groupes':('pre',)}, -nx=SIMP(typ='I',fr= "Even number of grid points along x",ang= "Even number of grid points along x",docu= "",statut= "o",into=None,min=1,max=1,val_min=2,val_max='**',defaut=2), -ny=SIMP(typ='I',fr= "Even number of grid points along y",ang= "Even number of grid points along y",docu= "",statut= "o",into=None,min=1,max=1,val_min=2,val_max='**',defaut=2), -Df=SIMP(typ='R',fr= "Fractal dimension",ang= "Fractal dimension",docu= "",statut= "o",into=None,min=1,max=1,val_min=2,val_max=3,defaut=2.6), -Ra=SIMP(typ='R',fr= "Surface rugosity Ra value (in z units)",ang= "Surface rugosity Ra value (in z units)",docu= "",statut= "o",into=None,min=1,max=1,val_min=0,val_max='**',defaut=1.0), -Lx=SIMP(typ='R',fr= "Total length of surface along x",ang= "Total length of surface along x",docu= "",statut= "o",into=None,min=1,max=1,val_min=0,val_max='**',defaut=1.0), -Ly=SIMP(typ='R',fr= "Total length of surface along y",ang= "Total length of surface along y",docu= "",statut= "o",into=None,min=1,max=1,val_min=0,val_max='**',defaut=1.0), -seed=SIMP(typ='R',fr= "Seed of random generator",ang= "Seed of random generator",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=0), -wc=SIMP(typ='R',fr= "Minimal cut frequency",ang= "Minimal cut frequency",docu= "",statut= "o",into=None,min=1,max=1,val_min=0,val_max='**',defaut=0), -output_csv_file_name=SIMP(typ=('Fichier', 'All Files ()', 'Sauvegarde'),fr= "name of a file describing the synthesized grid surface with coordinates x,y,z in CSV format. Coordinate columns x and y define the grid. Length units are implicitly: the units of lx and ly for the grid, the units of Ra for the heights.",ang= "name of a file describing the synthesized grid surface with coordinates x,y,z in CSV format. Coordinate columns x and y define the grid. Length units are implicitly: the units of lx and ly for the grid, the units of Ra for the heights.",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut='surface.csv'), -output_csv_metadata_file_name=SIMP(typ=('Fichier', 'All Files ()', 'Sauvegarde'),fr= "name of the metadata file for output_csv_file_name",ang= "name of the metadata file for output_csv_file_name",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut='surface.metadata'), -) -# ====================================================================== -# Catalog entry for the MAP function : c_post_polymer_kinetics -# ====================================================================== -C_POST_POLYMER_KINETICS_DATA=PROC(nom='C_POST_POLYMER_KINETICS_DATA',op=None, -UIinfo ={'groupes':('post',)}, -study_name=SIMP(typ='TXM',fr= "Describes the name of the study",ang= "Describes the name of the study",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -input_directory=SIMP(typ='TXM',fr= "Name of directory where input data are located.",ang= "Name of directory where input data are located.",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -csv_output_file_name=SIMP(typ=('Fichier', 'All Files ()', 'Sauvegarde'),fr= "Name of the csv filename where results are written in the grid field csv format.",ang= "Name of the csv filename where results are written in the grid field csv format.",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -equations=SIMP(typ='TXM',fr= "list of equations used to produce ",ang= "list of equations used to produce ",docu= "",statut= "f",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -post_treatment_names=SIMP(typ='TXM',fr= "List of names of the post-treated fields",ang= "List of names of the post-treated fields",docu= "",statut= "f",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -integer=SIMP(typ='TXM',fr= "List of booleans that define if post-treatment has to be integrated",ang= "List of booleans that define if post-treatment has to be integrated",docu= "",statut= "f",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -Arrhenius_names=SIMP(typ='TXM',fr= "Names of coefficients which follow Arrhenius law. This list MUST have the same number of parameters as Arrhenius_A and Arrhenius_Ea.",ang= "Names of coefficients which follow Arrhenius law. This list MUST have the same number of parameters as Arrhenius_A and Arrhenius_Ea.",docu= "",statut= "f",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -Arrhenius_A=SIMP(typ='TXM',fr= "Arrhenius law pre exponential factors. This list MUST have the same number of parameter as Arrhenius_names and Arrhenius_Ea.",ang= "Arrhenius law pre exponential factors. This list MUST have the same number of parameter as Arrhenius_names and Arrhenius_Ea.",docu= "",statut= "f",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -Arrhenius_Ea=SIMP(typ='TXM',fr= "Arrhenius law activation energy. This list MUST have the same number of parameter as Arrhenius_name and Arrhenius_A.",ang= "Arrhenius law activation energy. This list MUST have the same number of parameter as Arrhenius_name and Arrhenius_A.",docu= "",statut= "f",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -results_units=SIMP(typ='TXM',fr= "equation reslut units",ang= "equation reslut units",docu= "",statut= "f",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -) -# ====================================================================== -# Catalog entry for the MAP function : c_pre_morphology_inclusions -# ====================================================================== -C_PRE_MORPHOLOGY_INCLUSIONS_DATA=PROC(nom='C_PRE_MORPHOLOGY_INCLUSIONS_DATA',op=None, -UIinfo ={'groupes':('pre',)}, -sphere=SIMP(typ='I',fr= "chose 1 to for spheres, chose 0 for polyhedra",ang= "chose 1 to for spheres, chose 0 for polyhedra",docu= "",statut= "o",into=[0, 1],min=1,max=1,val_min='**',val_max='**',defaut=1), -box_dimension=SIMP(typ='TXM',fr= "list of three float numbers to determine box dimensions along the three axis",ang= "list of three float numbers to determine box dimensions along the three axis",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -box_discretize=SIMP(typ='TXM',fr= "list of three integers to determine the number of voxels along the three axis",ang= "list of three integers to determine the number of voxels along the three axis",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -fraction=SIMP(typ='R',fr= "inclusion volume fraction",ang= "inclusion volume fraction",docu= "",statut= "o",into=None,min=1,max=1,val_min=0.0,val_max='**',defaut=0.15), -sieve_curve=SIMP(typ=('Fichier', 'All Files (*)'),fr= "name of the file where inclusion sieve curve is defined",ang= "name of the file where inclusion sieve curve is defined",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -poisson_vertex_number=SIMP(typ='I',fr= "number of vertices used in the Poisson process",ang= "number of vertices used in the Poisson process",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=12), -lognormal_average=SIMP(typ='R',fr= "average of lognormal distribution of ???",ang= "average of lognormal distribution of ???",docu= "",statut= "o",into=None,min=1,max=1,val_min=0.0,val_max='**',defaut=None), -lognormal_sigma=SIMP(typ='R',fr= "standard deviation of lognormal distribution of ???",ang= "standard deviation of lognormal distribution of ???",docu= "",statut= "o",into=None,min=1,max=1,val_min=0.0,val_max='**',defaut=None), -aspect_ratio=SIMP(typ='R',fr= "inclusion aspect_ratio",ang= "inclusion aspect_ratio",docu= "",statut= "o",into=None,min=1,max=1,val_min=0.0,val_max='**',defaut=1.0), -seed=SIMP(typ='I',fr= "random seed",ang= "random seed",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -) -# ====================================================================== -# Catalog entry for the MAP function : c_pre_morphology_synthesis_voronoi -# ====================================================================== -C_PRE_MORPHOLOGY_SYNTHESIS_VORONOI_DATA=PROC(nom='C_PRE_MORPHOLOGY_SYNTHESIS_VORONOI_DATA',op=None, -UIinfo ={'groupes':('pre',)}, -study_name=SIMP(typ='TXM',fr= "name given to the study, which will be used as the root to define output file names, e.g. 'my_aggregate_with_40_grains",ang= "name given to the study, which will be used as the root to define output file names, e.g. 'my_aggregate_with_40_grains",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut='my_aggregate_with_xx_grains'), -folder_out=SIMP(typ='Repertoire',fr= "name of the folder where output files will be written",ang= "name of the folder where output files will be written",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut='/tmp'), -printbrep=SIMP(typ=bool,fr= "boolean used to ask the print of the .brep file",ang= "boolean used to ask the print of the .brep file",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=True), -maillage=SIMP(typ=bool,fr= "boolean used to ask the print of the mesh in MED format",ang= "boolean used to ask the print of the mesh in MED format",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=True), -printhist=SIMP(typ=bool,fr= "boolean that will trigger the print of an .hist histogram datafile for garn sizes, volumes and surfaces",ang= "boolean that will trigger the print of an .hist histogram datafile for garn sizes, volumes and surfaces",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=True), -param_volumes=SIMP(typ='TXM',fr= "list of 3 values used to generate the histogram to specify the minimum value, maximum value and step numbers for the histogram. In cas the value is not specified for min and max, a void field [] can be used and the default value of 0. will be used for the min while the max is automatically calculated, a few examples follow: param_volumes = [0.,[],20] will correspond to a 20-bar histogram of min value 0. and automatic max value, param_volumes = [[],[],20] will give the same result, param_volumes = [2.,10.,20] will correspond to a 20-bar histogram of min value 2. and max value 10.",ang= "list of 3 values used to generate the histogram to specify the minimum value, maximum value and step numbers for the histogram. In cas the value is not specified for min and max, a void field [] can be used and the default value of 0. will be used for the min while the max is automatically calculated, a few examples follow: param_volumes = [0.,[],20] will correspond to a 20-bar histogram of min value 0. and automatic max value, param_volumes = [[],[],20] will give the same result, param_volumes = [2.,10.,20] will correspond to a 20-bar histogram of min value 2. and max value 10.",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut='[0.,[],20]'), -param_surfaces=SIMP(typ='TXM',fr= "list of 3 values used to generate the histogram to specify the minimum value, maximum value and step numbers for the histogram. In cas the value is not specified for min and max, a void field [] can be used and the default value of 0. will be used for the min while the max is automatically calculated, a few examples follow: param_volumes = [0.,[],20] will correspond to a 20-bar histogram of min value 0. and automatic max value, param_volumes = [[],[],20] will give the same result, param_volumes = [2.,10.,20] will correspond to a 20-bar histogram of min value 2. and max value 10.",ang= "list of 3 values used to generate the histogram to specify the minimum value, maximum value and step numbers for the histogram. In cas the value is not specified for min and max, a void field [] can be used and the default value of 0. will be used for the min while the max is automatically calculated, a few examples follow: param_volumes = [0.,[],20] will correspond to a 20-bar histogram of min value 0. and automatic max value, param_volumes = [[],[],20] will give the same result, param_volumes = [2.,10.,20] will correspond to a 20-bar histogram of min value 2. and max value 10.",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut='[0.,[],20]'), -param_dg=SIMP(typ='TXM',fr= "list of 3 values used to generate the histogram to specify the minimum value, maximum value and step numbers for the histogram. In cas the value is not specified for min and max, a void field [] can be used and the default value of 0. will be used for the min while the max is automatically calculated, a few examples follow: param_volumes = [0.,[],20] will correspond to a 20-bar histogram of min value 0. and automatic max value, param_volumes = [[],[],20] will give the same result, param_volumes = [2.,10.,20] will correspond to a 20-bar histogram of min value 2. and max value 10.",ang= "list of 3 values used to generate the histogram to specify the minimum value, maximum value and step numbers for the histogram. In cas the value is not specified for min and max, a void field [] can be used and the default value of 0. will be used for the min while the max is automatically calculated, a few examples follow: param_volumes = [0.,[],20] will correspond to a 20-bar histogram of min value 0. and automatic max value, param_volumes = [[],[],20] will give the same result, param_volumes = [2.,10.,20] will correspond to a 20-bar histogram of min value 2. and max value 10.",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut='[0.,[],20]'), -random_seed=SIMP(typ='I',fr= "Integer parameter, when set to -1 the random seed will be set by the alea parameter. For any different value, the random seed is arbitrary.",ang= "Integer parameter, when set to -1 the random seed will be set by the alea parameter. For any different value, the random seed is arbitrary.",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=-1), -ngrains=SIMP(typ='I',fr= "number of grains in the generated aggregate",ang= "number of grains in the generated aggregate",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=20), -alea=SIMP(typ='I',fr= "integer parameter specifying the initial seed for the random algorithm used to distribute the germs of the voronoi cells. It will only be active when random_seed=-1. This situation is useful to reproduce the generation of similar aggregates.",ang= "integer parameter specifying the initial seed for the random algorithm used to distribute the germs of the voronoi cells. It will only be active when random_seed=-1. This situation is useful to reproduce the generation of similar aggregates.",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -puis=SIMP(typ='R',fr= "float ranging between 0. an 1. used to control the repulsion between germs. Indeed, a random germ distribution can sometimes give unexpected results when two germs are too close to each other. Setting a strictly positive repulsion distance will produce an aggregate of more homogeneous grain sizes.",ang= "float ranging between 0. an 1. used to control the repulsion between germs. Indeed, a random germ distribution can sometimes give unexpected results when two germs are too close to each other. Setting a strictly positive repulsion distance will produce an aggregate of more homogeneous grain sizes.",docu= "",statut= "o",into=None,min=1,max=1,val_min=0.0,val_max=1.0,defaut=1.0), -predef=SIMP(typ='R',fr= "float used to control the pre-strain in the aggregate ?",ang= "float used to control the pre-strain in the aggregate ?",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=0.0), -homot=SIMP(typ='R',fr= "float used to control the size of the aggregate ?",ang= "float used to control the size of the aggregate ?",docu= "",statut= "f",into=None,min=1,max=1,val_min=0.0,val_max='**',defaut=1.0), -sdec=SIMP(typ=bool,fr= "boolean used to determine ?",ang= "boolean used to determine ?",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=False), -symet=SIMP(typ=bool,fr= "boolean used to determine the symetry",ang= "boolean used to determine the symetry",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=False), -) -# ====================================================================== -# Catalog entry for the MAP function : c_pre_polycrystal_orientation -# ====================================================================== -C_PRE_POLYCRYSTAL_ORIENTATION_DATA=PROC(nom='C_PRE_POLYCRYSTAL_ORIENTATION_DATA',op=None, -UIinfo ={'groupes':('pre',)}, -material_symmetry=SIMP(typ='TXM',fr= "symetry of the orientation distribution",ang= "symetry of the orientation distribution",docu= "",statut= "o",into=['isotropic', 'transverse_isotropic', 'dispersed_transverse_isotropic'],min=1,max=1,val_min='**',val_max='**',defaut='isotropic'), -material_symmetry_isotropic=BLOC(condition="(material_symmetry=='isotropic')", -input_format=SIMP(typ='TXM',fr= "determines the format of the microstructure geometry file : BREP for SALOME geometry or TESS for NEPER tesselation",ang= "determines the format of the microstructure geometry file : BREP for SALOME geometry or TESS for NEPER tesselation",docu= "",statut= "o",into=['BREP', 'TESS'],min=1,max=1,val_min='**',val_max='**',defaut=None), -input_file=SIMP(typ=('Fichier', 'All Files (*)'),fr= "name of the file that describes the microstructure geometry",ang= "name of the file that describes the microstructure geometry",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -xao_output_file=SIMP(typ=('Fichier', 'All Files ()', 'Sauvegarde'),fr= "('name of the XAO output file describing ', 'geometry, material and orientation fields')",ang= "('name of the XAO output file describing ', 'geometry, material and orientation fields')",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -material_index=SIMP(typ='I',fr= "material index in the microstructure",ang= "material index in the microstructure",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -random_seed=SIMP(typ='I',fr= "random seed is used to control random process",ang= "random seed is used to control random process",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -), -material_symmetry_transverse_isotropic=BLOC(condition="(material_symmetry=='transverse_isotropic')", -input_format=SIMP(typ='TXM',fr= "determines the format of the microstructure geometry file : BREP for SALOME geometry or TESS for NEPER tesselation",ang= "determines the format of the microstructure geometry file : BREP for SALOME geometry or TESS for NEPER tesselation",docu= "",statut= "o",into=['BREP', 'TESS'],min=1,max=1,val_min='**',val_max='**',defaut=None), -input_file=SIMP(typ=('Fichier', 'All Files (*)'),fr= "name of the file that describes the microstructure geometry",ang= "name of the file that describes the microstructure geometry",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -xao_output_file=SIMP(typ=('Fichier', 'All Files ()', 'Sauvegarde'),fr= "('name of the XAO output file describing ', 'geometry, material and orientation fields')",ang= "('name of the XAO output file describing ', 'geometry, material and orientation fields')",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -material_index=SIMP(typ='I',fr= "material index in the microstructure",ang= "material index in the microstructure",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -random_seed=SIMP(typ='I',fr= "random seed is used to control random process",ang= "random seed is used to control random process",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -axis_projection_angle_1=SIMP(typ='R',fr= "angle that determines the first projection of the axis",ang= "angle that determines the first projection of the axis",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -axis_projection_angle_2=SIMP(typ='R',fr= "angle that determines the second projection of the axis",ang= "angle that determines the second projection of the axis",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -), -material_symmetry_dispersed_transverse_isotropic=BLOC(condition="(material_symmetry=='dispersed_transverse_isotropic')", -input_format=SIMP(typ='TXM',fr= "determines the format of the microstructure geometry file : BREP for SALOME geometry or TESS for NEPER tesselation",ang= "determines the format of the microstructure geometry file : BREP for SALOME geometry or TESS for NEPER tesselation",docu= "",statut= "o",into=['BREP', 'TESS'],min=1,max=1,val_min='**',val_max='**',defaut=None), -input_file=SIMP(typ=('Fichier', 'All Files (*)'),fr= "name of the file that describes the microstructure geometry",ang= "name of the file that describes the microstructure geometry",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -xao_output_file=SIMP(typ=('Fichier', 'All Files ()', 'Sauvegarde'),fr= "('name of the XAO output file describing ', 'geometry, material and orientation fields')",ang= "('name of the XAO output file describing ', 'geometry, material and orientation fields')",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -material_index=SIMP(typ='I',fr= "material index in the microstructure",ang= "material index in the microstructure",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -random_seed=SIMP(typ='I',fr= "random seed is used to control random process",ang= "random seed is used to control random process",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -axis_projection_angle_1=SIMP(typ='R',fr= "angle that determines the first projection of the axis",ang= "angle that determines the first projection of the axis",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -axis_projection_angle_2=SIMP(typ='R',fr= "angle that determines the second projection of the axis",ang= "angle that determines the second projection of the axis",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -dispersion_width=SIMP(typ='R',fr= "angle angle of the three orientation angles",ang= "angle angle of the three orientation angles",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -), -) -# ====================================================================== -# Catalog entry for the MAP function : c_transverse_display_map -# ====================================================================== -C_TRANSVERSE_DISPLAY_MAP_DATA=PROC(nom='C_TRANSVERSE_DISPLAY_MAP_DATA',op=None, -UIinfo ={'groupes':('transverse',)}, -input_datafile=SIMP(typ=('Fichier', 'All Files (*)'),fr= "contains the data the display_map should be made on",ang= "contains the data the display_map should be made on",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -x_axis=SIMP(typ='TXM',fr= "the identifier of the x axis column",ang= "the identifier of the x axis column",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -y_axis=SIMP(typ='TXM',fr= "the identifier of the y axis column",ang= "the identifier of the y axis column",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -z_axis=SIMP(typ='TXM',fr= "the identifier of the z axis column",ang= "the identifier of the z axis column",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -palette=SIMP(typ='TXM',fr= "defines the color scale",ang= "defines the color scale",docu= "",statut= "o",into=['color', 'gray'],min=1,max=1,val_min='**',val_max='**',defaut=None), -color_scale=SIMP(typ='TXM',fr= "defines implicitely the number of colors to be used",ang= "defines implicitely the number of colors to be used",docu= "",statut= "o",into=['continuum', 'discrete'],min=1,max=1,val_min='**',val_max='**',defaut=None), -interpolation=SIMP(typ='TXM',fr= "defines how to interpolate the color levels between the given data",ang= "defines how to interpolate the color levels between the given data",docu= "",statut= "o",into=['nearest', 'bilinear', 'bicubic'],min=1,max=1,val_min='**',val_max='**',defaut=None), -show_grid=SIMP(typ=bool,fr= "display grid",ang= "display grid",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=True), -contour_lines=SIMP(typ=bool,fr= "display color lines",ang= "display color lines",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=True), -main_title=SIMP(typ='TXM',fr= "Graphic Main Title",ang= "Graphic Main Title",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -x_title=SIMP(typ='TXM',fr= "X-axis title",ang= "X-axis title",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -y_title=SIMP(typ='TXM',fr= "Y-axis title",ang= "Y-axis title",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -z_title=SIMP(typ='TXM',fr= "Z-axis title",ang= "Z-axis title",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -save_img=SIMP(typ=('Fichier', 'All Files ()', 'Sauvegarde'),fr= "Save the plot result",ang= "Save the plot result",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -show_img=SIMP(typ=bool,fr= "Show the plot result",ang= "Show the plot result",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=False), -profile=SIMP(typ=bool,fr= "Eval profile along a line",ang= "Eval profile along a line",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=False), -save_profile=SIMP(typ=('Fichier', 'All Files ()', 'Sauvegarde'),fr= "Save calculated profile as a text file",ang= "Save calculated profile as a text file",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -start=SIMP(typ='TXM',fr= "Start point coordinates",ang= "Start point coordinates",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -stop=SIMP(typ='TXM',fr= "End point coordinates",ang= "End point coordinates",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -) -# ====================================================================== -# Catalog entry for the MAP function : c_transverse_interpolation -# ====================================================================== -C_TRANSVERSE_INTERPOLATION_DATA=PROC(nom='C_TRANSVERSE_INTERPOLATION_DATA',op=None, -UIinfo ={'groupes':('transverse',)}, -interpolation=SIMP(typ='TXM',fr= "the type of interpolation the user wants",ang= "the type of interpolation the user wants",docu= "",statut= "o",into=['user_defined', 'standard'],min=1,max=1,val_min='**',val_max='**',defaut='standard'), -interpolation_user_defined=BLOC(condition="(interpolation=='user_defined')", -input_datafile=SIMP(typ=('Fichier', 'All Files (*)'),fr= "contains the data the interpolation should be made on",ang= "contains the data the interpolation should be made on",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -show=SIMP(typ=bool,fr= "show plot of the result",ang= "show plot of the result",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=False), -save_out=SIMP(typ=bool,fr= "save interpolation result",ang= "save interpolation result",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=True), -save_img=SIMP(typ=bool,fr= "save plot of the result",ang= "save plot of the result",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=False), -output_basename=SIMP(typ='TXM',fr= "user defined output basename (for use in CADEEX)",ang= "user defined output basename (for use in CADEEX)",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -function=SIMP(typ='TXM',fr= "user defined function",ang= "user defined function",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -initial_guess=SIMP(typ='TXM',fr= "initial guess for the adjustable parameters",ang= "initial guess for the adjustable parameters",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -), -interpolation_standard=BLOC(condition="(interpolation=='standard')", -input_datafile=SIMP(typ=('Fichier', 'All Files (*)'),fr= "contains the data the interpolation should be made on",ang= "contains the data the interpolation should be made on",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -show=SIMP(typ=bool,fr= "show plot of the result",ang= "show plot of the result",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=False), -save_out=SIMP(typ=bool,fr= "save interpolation result",ang= "save interpolation result",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=True), -save_img=SIMP(typ=bool,fr= "save plot of the result",ang= "save plot of the result",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=False), -output_basename=SIMP(typ='TXM',fr= "user defined output basename (for use in CADEEX)",ang= "user defined output basename (for use in CADEEX)",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -function=SIMP(typ='TXM',fr= "name of standard interpolation method to be used",ang= "name of standard interpolation method to be used",docu= "",statut= "o",into=['poly1', 'poly2', 'poly3', 'poly4', 'poly5', 'poly6', 'poly7', 'poly8', 'poly9', 'inverse1', 'inverse2', 'inverse3', 'inverse4', 'inverse5', 'inverse6', 'inverse7', 'inverse8', 'inverse9', 'power', 'expo', 'logn', 'gauss', 'poisson', 'double_gauss', 'double_poisson', 'weibull2', 'weibull3', 'gumbel', 'logn_affin'],min=1,max=1,val_min='**',val_max='**',defaut=None), -), -) -# ====================================================================== -# Catalog entry for the MAP function : c_post_experimental_loops -# ====================================================================== -C_POST_EXPERIMENTAL_LOOPS_DATA=PROC(nom='C_POST_EXPERIMENTAL_LOOPS_DATA',op=None, -UIinfo ={'groupes':('post',)}, -mode=SIMP(typ='TXM',fr= "execution mode",ang= "execution mode",docu= "",statut= "o",into=['map', 'cadeex'],min=1,max=1,val_min='**',val_max='**',defaut='cadeex'), -mode_map=BLOC(condition="(mode=='map')", -post_processing=SIMP(typ='TXM',fr= "post processing level",ang= "post processing level",docu= "",statut= "o",into=['classic', 'advanced', 'expert'],min=1,max=1,val_min='**',val_max='**',defaut='classic'), -spectra_zip=SIMP(typ=('Fichier', 'All Files (*)'),fr= "archive with all spectra",ang= "archive with all spectra",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -start_cycle=SIMP(typ='TXM',fr= "starting cycle",ang= "starting cycle",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -show_release=SIMP(typ=bool,fr= "to it on to get a graphic output of release curve",ang= "to it on to get a graphic output of release curve",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -x_axis=SIMP(typ='TXM',fr= "name of the axis on graphs",ang= "name of the axis on graphs",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -release=SIMP(typ=('Fichier', 'All Files ()', 'Sauvegarde'),fr= "output csv file containing final release vs time",ang= "output csv file containing final release vs time",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut='out.release'), -summary=SIMP(typ=('Fichier', 'All Files ()', 'Sauvegarde'),fr= "output text file containing details on calculations",ang= "output text file containing details on calculations",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -y_scale=SIMP(typ='TXM',fr= "scale for y axis",ang= "scale for y axis",docu= "",statut= "f",into=['log', 'linear'],min=1,max=1,val_min='**',val_max='**',defaut='log'), -show_dead_time=SIMP(typ=bool,fr= "show dead time",ang= "show dead time",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -show_channel_max=SIMP(typ=bool,fr= "show channel max",ang= "show channel max",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -show_centroid=SIMP(typ=bool,fr= "show centroid",ang= "show centroid",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -show_FWHM=SIMP(typ=bool,fr= "show FWHM",ang= "show FWHM",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -show_counting=SIMP(typ=bool,fr= "show counting",ang= "show counting",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -show_spectra=SIMP(typ='TXM',fr= "spectra number the user wants to be displayed",ang= "spectra number the user wants to be displayed",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -show_background=SIMP(typ='TXM',fr= "spectra slice number with calculated background the user wants to be displayed",ang= "spectra slice number with calculated background the user wants to be displayed",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -dead_time_correction=SIMP(typ=bool,fr= "apply dead correction or not",ang= "apply dead correction or not",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=True), -ROI1_BG_length=SIMP(typ='TXM',fr= "must be auto or a positive an odd integer",ang= "must be auto or a positive an odd integer",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut='auto'), -ROI2_BG_length=SIMP(typ='TXM',fr= "must be auto or a positive an odd integer",ang= "must be auto or a positive an odd integer",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut='auto'), -BG_half_width=SIMP(typ='TXM',fr= "must be auto or a positive integer",ang= "must be auto or a positive integer",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut='auto'), -BG_sum_factor=SIMP(typ='TXM',fr= "must be auto or a positive integer",ang= "must be auto or a positive integer",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut='auto'), -), -mode_cadeex=BLOC(condition="(mode=='cadeex')", -spectra_zip=SIMP(typ=('Fichier', 'All Files (*)'),fr= "archive with all spectra",ang= "archive with all spectra",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -start_cycle=SIMP(typ='TXM',fr= "starting cycle",ang= "starting cycle",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -release=SIMP(typ=('Fichier', 'All Files ()', 'Sauvegarde'),fr= "output csv file containing final release vs time",ang= "output csv file containing final release vs time",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut='out.release'), -), -) -# ====================================================================== -# Catalog entry for the MAP function : c_image_2d_fouling_rate -# ====================================================================== -C_IMAGE_2D_FOULING_RATE_DATA=PROC(nom='C_IMAGE_2D_FOULING_RATE_DATA',op=None, -UIinfo ={'groupes':('image',)}, -input_image_name=SIMP(typ=('Fichier', 'All Files (*)'),fr= "input image filename",ang= "input image filename",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -spatial_bandwidth=SIMP(typ='I',fr= "spatial bandwith parameter for Meanshift segmentation",ang= "spatial bandwith parameter for Meanshift segmentation",docu= "",statut= "o",into=[3, 5, 7, 9],min=1,max=1,val_min='**',val_max='**',defaut=5), -use_biasfield_correction=SIMP(typ='I',fr= "boolean to switch on or off the biasfield correction during the classification step",ang= "boolean to switch on or off the biasfield correction during the classification step",docu= "",statut= "o",into=[0, 1],min=1,max=1,val_min='**',val_max='**',defaut=1), -meanshift_image_name=SIMP(typ=('Fichier', 'All Files ()', 'Sauvegarde'),fr= "output filename for the intermediate segmented image by Meanshift to be written",ang= "output filename for the intermediate segmented image by Meanshift to be written",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -segmented_image_name=SIMP(typ=('Fichier', 'All Files ()', 'Sauvegarde'),fr= "output filename for the segmented image with crystals in green to be written",ang= "output filename for the segmented image with crystals in green to be written",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -text_output_name=SIMP(typ=('Fichier', 'All Files ()', 'Sauvegarde'),fr= "text output filename where the results of the component: fouling rate",ang= "text output filename where the results of the component: fouling rate",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -) -# ====================================================================== -# Catalog entry for the MAP function : c_solver_elasticity_fdvgrid -# ====================================================================== -C_SOLVER_ELASTICITY_FDVGRID_DATA=PROC(nom='C_SOLVER_ELASTICITY_FDVGRID_DATA',op=None, -UIinfo ={'groupes':('solver',)}, -number_pixel_row_cube=SIMP(typ='I',fr= "number of voxel in a row, all produced images will be NxNxN large",ang= "number of voxel in a row, all produced images will be NxNxN large",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -easy_solve=SIMP(typ='TXM',fr= "Choose the solver !",ang= "Choose the solver !",docu= "",statut= "o",into=('LOW_RAM', 'MATRIX_FREE', 'LOW_CPU', 'CG_SOR', 'MULTIGRID', 'NONE'),min=1,max=1,val_min='**',val_max='**',defaut=None), -input_path=SIMP(typ='Repertoire',fr= "path to the input directory (ex : input/)",ang= "path to the input directory (ex : input/)",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -output_path=SIMP(typ='Repertoire',fr= "path to the output directory",ang= "path to the output directory",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -ratio_filename_dat=SIMP(typ=('Fichier', 'All Files (*)'),fr= "name of the input file describing the local volumic ratio of inclusion (3d image), ex micro_dis.dat",ang= "name of the input file describing the local volumic ratio of inclusion (3d image), ex micro_dis.dat",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -E_inclusion=SIMP(typ='R',fr= "Young modulus in inclusions",ang= "Young modulus in inclusions",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -nu_inclusion=SIMP(typ='R',fr= "Poisson ratio in inclusions",ang= "Poisson ratio in inclusions",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -E_matrice=SIMP(typ='R',fr= "Young modulus in matrix",ang= "Young modulus in matrix",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -nu_matrice=SIMP(typ='R',fr= "Poisson ratio in matrix",ang= "Poisson ratio in matrix",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -number_proc_micro=SIMP(typ='I',fr= "number of processus used for computing the 3d image of conductivity starting from the 3d image of local volumic ratio of inclusion in each voxel.",ang= "number of processus used for computing the 3d image of conductivity starting from the 3d image of local volumic ratio of inclusion in each voxel.",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=1), -number_proc_solver=SIMP(typ='I',fr= "number of processus used for solving the diffusion problem",ang= "number of processus used for solving the diffusion problem",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=1), -number_proc_post=SIMP(typ='I',fr= "number of processus used for post porcessing",ang= "number of processus used for post porcessing",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=1), -multigrid_max_level_number=SIMP(typ='I',fr= "maximum number of level if a MULTIGIRD solver is used",ang= "maximum number of level if a MULTIGIRD solver is used",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=42), -configuration_file=SIMP(typ='TXM',fr= "path and name of the configuration file than the python interface will produce for the various .exe",ang= "path and name of the configuration file than the python interface will produce for the various .exe",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut='c_solver_diffusion_fdvgrid.ini'), -kind_of_run=SIMP(typ='TXM',fr= "this component is runable sequential, parallel or as a PBS_job",ang= "this component is runable sequential, parallel or as a PBS_job",docu= "",statut= "f",into=('sequential', 'parallel', 'PBS_job'),min=1,max=1,val_min='**',val_max='**',defaut='sequential'), -start_run=SIMP(typ=bool,fr= "if yes, the conponent will run. It will only produce a batch script otherwise",ang= "if yes, the conponent will run. It will only produce a batch script otherwise",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=True), -exp_id=SIMP(typ='I',fr= "this will be printed in the name of every produced image",ang= "this will be printed in the name of every produced image",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=0), -petsc_option=SIMP(typ='TXM',fr= "add options for PETSC here",ang= "add options for PETSC here",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=''), -all_stdout_in_file=SIMP(typ=bool,fr= "if yes, all logs, profiling issues and errors will be redirected to a file",ang= "if yes, all logs, profiling issues and errors will be redirected to a file",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=True), -grey_element=SIMP(typ='TXM',fr= "How to choose the mechanical behaviour of voxels that are neither in inclusions nor in the matrice ?",ang= "How to choose the mechanical behaviour of voxels that are neither in inclusions nor in the matrice ?",docu= "",statut= "f",into=('REUSS', 'VOIGT'),min=1,max=1,val_min='**',val_max='**',defaut='REUSS'), -x_start=SIMP(typ='I',fr= "offset in x direction when reading the 3D image of local volumic ratio of inclusion",ang= "offset in x direction when reading the 3D image of local volumic ratio of inclusion",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=0), -y_start=SIMP(typ='I',fr= "offset in y direction when reading the 3D image of local volumic ratio of inclusion",ang= "offset in y direction when reading the 3D image of local volumic ratio of inclusion",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=0), -z_start=SIMP(typ='I',fr= "offset in z direction when reading the 3D image of local volumic ratio of inclusion",ang= "offset in z direction when reading the 3D image of local volumic ratio of inclusion",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=0), -number_nodes=SIMP(typ='I',fr= "number of nodes used (cluster)",ang= "number of nodes used (cluster)",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -number_proc_per_node=SIMP(typ='I',fr= "number of processors used per node (cluster)",ang= "number of processors used per node (cluster)",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -walltime=SIMP(typ='TXM',fr= "if the job did not end by this time, it will be killed by job manager (format 10:00:00 (hms))",ang= "if the job did not end by this time, it will be killed by job manager (format 10:00:00 (hms))",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -memory=SIMP(typ='TXM',fr= "the memory given here must be larger than the needed one (format 32gb",ang= "the memory given here must be larger than the needed one (format 32gb",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -source_environement=SIMP(typ='TXM',fr= "command to load environnement at start of job (ex: source /logiciels/openmpi/profile",ang= "command to load environnement at start of job (ex: source /logiciels/openmpi/profile",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -periodic_X=SIMP(typ=bool,fr= "if yes, periodic boundary conditions will be applied on corresponding x faces",ang= "if yes, periodic boundary conditions will be applied on corresponding x faces",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=False), -periodic_Y=SIMP(typ=bool,fr= "if yes, periodic boundary conditions will be applied on corresponding y faces",ang= "if yes, periodic boundary conditions will be applied on corresponding y faces",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=False), -periodic_Z=SIMP(typ=bool,fr= "if yes, periodic boundary conditions will be applied on corresponding z faces",ang= "if yes, periodic boundary conditions will be applied on corresponding z faces",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=False), -eps11=SIMP(typ='R',fr= "Average of deformation direction xx (periodic BC)",ang= "Average of deformation direction xx (periodic BC)",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -eps22=SIMP(typ='R',fr= "Average of deformation direction yy (periodic BC)",ang= "Average of deformation direction yy (periodic BC)",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -eps33=SIMP(typ='R',fr= "Average of deformation direction zz (periodic BC)",ang= "Average of deformation direction zz (periodic BC)",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -eps12=SIMP(typ='R',fr= "Average of deformation direction xy (periodic BC)",ang= "Average of deformation direction xy (periodic BC)",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -eps13=SIMP(typ='R',fr= "Average of deformation direction xz (periodic BC)",ang= "Average of deformation direction xz (periodic BC)",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -eps23=SIMP(typ='R',fr= "Average of deformation direction yz (periodic BC)",ang= "Average of deformation direction yz (periodic BC)",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -boundary_condition_x_plus_cx=SIMP(typ='R',fr= "position of center of face",ang= "position of center of face",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=0.5), -boundary_condition_x_plus_cy=SIMP(typ='R',fr= "position of center of face",ang= "position of center of face",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=0), -boundary_condition_x_plus_cz=SIMP(typ='R',fr= "position of center of face",ang= "position of center of face",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=0), -boundary_condition_x_minus_cx=SIMP(typ='R',fr= "position of center of face",ang= "position of center of face",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=-0.5), -boundary_condition_x_minus_cy=SIMP(typ='R',fr= "position of center of face",ang= "position of center of face",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=0), -boundary_condition_x_minus_cz=SIMP(typ='R',fr= "position of center of face",ang= "position of center of face",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=0), -boundary_condition_y_plus_cx=SIMP(typ='R',fr= "position of center of face",ang= "position of center of face",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=0), -boundary_condition_y_plus_cy=SIMP(typ='R',fr= "position of center of face",ang= "position of center of face",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=0.5), -boundary_condition_y_plus_cz=SIMP(typ='R',fr= "position of center of face",ang= "position of center of face",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=0), -boundary_condition_y_minus_cx=SIMP(typ='R',fr= "position of center of face",ang= "position of center of face",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=0), -boundary_condition_y_minus_cy=SIMP(typ='R',fr= "position of center of face",ang= "position of center of face",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=-0.5), -boundary_condition_y_minus_cz=SIMP(typ='R',fr= "position of center of face",ang= "position of center of face",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=0), -boundary_condition_z_plus_cx=SIMP(typ='R',fr= "position of center of face",ang= "position of center of face",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=0), -boundary_condition_z_plus_cy=SIMP(typ='R',fr= "position of center of face",ang= "position of center of face",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=0), -boundary_condition_z_plus_cz=SIMP(typ='R',fr= "position of center of face",ang= "position of center of face",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=0.5), -boundary_condition_z_minus_cx=SIMP(typ='R',fr= "position of center of face",ang= "position of center of face",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=0), -boundary_condition_z_minus_cy=SIMP(typ='R',fr= "position of center of face",ang= "position of center of face",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=0), -boundary_condition_z_minus_cz=SIMP(typ='R',fr= "position of center of face",ang= "position of center of face",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=-0.5), -norm_2_RHS_per_sqrt_pixel=SIMP(typ='R',fr= "norm_2_RHS_per_sqrt(pixel) at start",ang= "norm_2_RHS_per_sqrt(pixel) at start",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=0), -MAP_c_solver_diffusion_fdvgrid_successful=SIMP(typ=bool,fr= "MAP_c_solver_diffusion_fdvgrid_successful",ang= "MAP_c_solver_diffusion_fdvgrid_successful",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=False), -norm_2_residual_per_sqrt_pixel=SIMP(typ='R',fr= "norm_2_residual_per_sqrt(pixel) last",ang= "norm_2_residual_per_sqrt(pixel) last",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=0), -ratio_is=SIMP(typ='R',fr= "ratio between residual and RHS",ang= "ratio between residual and RHS",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=0), -number_of_iteration=SIMP(typ='I',fr= "number_of_iteration",ang= "number_of_iteration",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=0), -time_solver_s=SIMP(typ='R',fr= "time_solver (seconds)",ang= "time_solver (seconds)",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=0), -GTx=SIMP(typ='R',fr= "average gradient GTx",ang= "average gradient GTx",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -GTy=SIMP(typ='R',fr= "average gradient GTy",ang= "average gradient GTy",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -GTz=SIMP(typ='R',fr= "average gradient GTz",ang= "average gradient GTz",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -flux_x=SIMP(typ='R',fr= "average flux x direction",ang= "average flux x direction",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -flux_y=SIMP(typ='R',fr= "average flux y direction",ang= "average flux y direction",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -flux_z=SIMP(typ='R',fr= "average flux z direction",ang= "average flux z direction",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -minux_int_TxF=SIMP(typ='R',fr= "minux_int_TxF (-volume integral of Temperature X Flux)",ang= "minux_int_TxF (-volume integral of Temperature X Flux)",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -boundary_condition_x_plus_x_type=SIMP(typ='TXM',fr= "kind of bondary conditions on the x plus face, dir x",ang= "kind of bondary conditions on the x plus face, dir x",docu= "",statut= "f",into=('DISPLACEMENT', 'FORCE'),min=1,max=1,val_min='**',val_max='**',defaut=None), -boundary_condition_x_plus_x_u0=SIMP(typ='R',fr= "Imposed displacement at the center of the face along the x direction",ang= "Imposed displacement at the center of the face along the x direction",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -boundary_condition_x_plus_x_dudy=SIMP(typ='R',fr= " rac{du_x}{dy} on this face",ang= " rac{du_x}{dy} on this face",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -boundary_condition_x_plus_x_dudz=SIMP(typ='R',fr= " rac{du_x}{dz} on this face",ang= " rac{du_x}{dz} on this face",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -boundary_condition_x_plus_x_T=SIMP(typ='R',fr= "force per area at the center of face along x direction",ang= "force per area at the center of face along x direction",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -boundary_condition_x_plus_x_dTdy=SIMP(typ='R',fr= " rac{dT_x}{dy} on this face",ang= " rac{dT_x}{dy} on this face",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -boundary_condition_x_plus_x_dTdz=SIMP(typ='R',fr= " rac{dT_x}{dz} on this face",ang= " rac{dT_x}{dz} on this face",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -boundary_condition_y_plus_x_type=SIMP(typ='TXM',fr= "kind of bondary conditions on the y plus face, dir x",ang= "kind of bondary conditions on the y plus face, dir x",docu= "",statut= "f",into=('DISPLACEMENT', 'FORCE'),min=1,max=1,val_min='**',val_max='**',defaut=None), -boundary_condition_y_plus_x_u0=SIMP(typ='R',fr= "Imposed displacement at the center of the face along the x direction",ang= "Imposed displacement at the center of the face along the x direction",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -boundary_condition_y_plus_x_dudx=SIMP(typ='R',fr= " rac{du_x}{dx} on this face",ang= " rac{du_x}{dx} on this face",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -boundary_condition_y_plus_x_dudz=SIMP(typ='R',fr= " rac{du_x}{dz} on this face",ang= " rac{du_x}{dz} on this face",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -boundary_condition_y_plus_x_T=SIMP(typ='R',fr= "force per area at the center of face along x direction",ang= "force per area at the center of face along x direction",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -boundary_condition_y_plus_x_dTdx=SIMP(typ='R',fr= " rac{dT_x}{dx} on this face",ang= " rac{dT_x}{dx} on this face",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -boundary_condition_y_plus_x_dTdz=SIMP(typ='R',fr= " rac{dT_x}{dz} on this face",ang= " rac{dT_x}{dz} on this face",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -boundary_condition_z_plus_x_type=SIMP(typ='TXM',fr= "kind of bondary conditions on the z plus face, dir x",ang= "kind of bondary conditions on the z plus face, dir x",docu= "",statut= "f",into=('DISPLACEMENT', 'FORCE'),min=1,max=1,val_min='**',val_max='**',defaut=None), -boundary_condition_z_plus_x_u0=SIMP(typ='R',fr= "Imposed displacement at the center of the face along the x direction",ang= "Imposed displacement at the center of the face along the x direction",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -boundary_condition_z_plus_x_dudx=SIMP(typ='R',fr= " rac{du_x}{dx} on this face",ang= " rac{du_x}{dx} on this face",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -boundary_condition_z_plus_x_dudy=SIMP(typ='R',fr= " rac{du_x}{dy} on this face",ang= " rac{du_x}{dy} on this face",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -boundary_condition_z_plus_x_T=SIMP(typ='R',fr= "force per area at the center of face along x direction",ang= "force per area at the center of face along x direction",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -boundary_condition_z_plus_x_dTdx=SIMP(typ='R',fr= " rac{dT_x}{dx} on this face",ang= " rac{dT_x}{dx} on this face",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -boundary_condition_z_plus_x_dTdy=SIMP(typ='R',fr= " rac{dT_x}{dy} on this face",ang= " rac{dT_x}{dy} on this face",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -boundary_condition_x_plus_y_type=SIMP(typ='TXM',fr= "kind of bondary conditions on the x plus face, dir y",ang= "kind of bondary conditions on the x plus face, dir y",docu= "",statut= "f",into=('DISPLACEMENT', 'FORCE'),min=1,max=1,val_min='**',val_max='**',defaut=None), -boundary_condition_x_plus_y_u0=SIMP(typ='R',fr= "Imposed displacement at the center of the face along the y direction",ang= "Imposed displacement at the center of the face along the y direction",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -boundary_condition_x_plus_y_dudy=SIMP(typ='R',fr= " rac{du_y}{dy} on this face",ang= " rac{du_y}{dy} on this face",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -boundary_condition_x_plus_y_dudz=SIMP(typ='R',fr= " rac{du_y}{dz} on this face",ang= " rac{du_y}{dz} on this face",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -boundary_condition_x_plus_y_T=SIMP(typ='R',fr= "force per area at the center of face along y direction",ang= "force per area at the center of face along y direction",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -boundary_condition_x_plus_y_dTdy=SIMP(typ='R',fr= " rac{dT_y}{dy} on this face",ang= " rac{dT_y}{dy} on this face",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -boundary_condition_x_plus_y_dTdz=SIMP(typ='R',fr= " rac{dT_y}{dz} on this face",ang= " rac{dT_y}{dz} on this face",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -boundary_condition_y_plus_y_type=SIMP(typ='TXM',fr= "kind of bondary conditions on the y plus face, dir y",ang= "kind of bondary conditions on the y plus face, dir y",docu= "",statut= "f",into=('DISPLACEMENT', 'FORCE'),min=1,max=1,val_min='**',val_max='**',defaut=None), -boundary_condition_y_plus_y_u0=SIMP(typ='R',fr= "Imposed displacement at the center of the face along the y direction",ang= "Imposed displacement at the center of the face along the y direction",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -boundary_condition_y_plus_y_dudx=SIMP(typ='R',fr= " rac{du_y}{dx} on this face",ang= " rac{du_y}{dx} on this face",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -boundary_condition_y_plus_y_dudz=SIMP(typ='R',fr= " rac{du_y}{dz} on this face",ang= " rac{du_y}{dz} on this face",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -boundary_condition_y_plus_y_T=SIMP(typ='R',fr= "force per area at the center of face along y direction",ang= "force per area at the center of face along y direction",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -boundary_condition_y_plus_y_dTdx=SIMP(typ='R',fr= " rac{dT_y}{dx} on this face",ang= " rac{dT_y}{dx} on this face",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -boundary_condition_y_plus_y_dTdz=SIMP(typ='R',fr= " rac{dT_y}{dz} on this face",ang= " rac{dT_y}{dz} on this face",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -boundary_condition_z_plus_y_type=SIMP(typ='TXM',fr= "kind of bondary conditions on the z plus face, dir y",ang= "kind of bondary conditions on the z plus face, dir y",docu= "",statut= "f",into=('DISPLACEMENT', 'FORCE'),min=1,max=1,val_min='**',val_max='**',defaut=None), -boundary_condition_z_plus_y_u0=SIMP(typ='R',fr= "Imposed displacement at the center of the face along the y direction",ang= "Imposed displacement at the center of the face along the y direction",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -boundary_condition_z_plus_y_dudx=SIMP(typ='R',fr= " rac{du_y}{dx} on this face",ang= " rac{du_y}{dx} on this face",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -boundary_condition_z_plus_y_dudy=SIMP(typ='R',fr= " rac{du_y}{dy} on this face",ang= " rac{du_y}{dy} on this face",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -boundary_condition_z_plus_y_T=SIMP(typ='R',fr= "force per area at the center of face along y direction",ang= "force per area at the center of face along y direction",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -boundary_condition_z_plus_y_dTdx=SIMP(typ='R',fr= " rac{dT_y}{dx} on this face",ang= " rac{dT_y}{dx} on this face",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -boundary_condition_z_plus_y_dTdy=SIMP(typ='R',fr= " rac{dT_y}{dy} on this face",ang= " rac{dT_y}{dy} on this face",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -boundary_condition_x_plus_z_type=SIMP(typ='TXM',fr= "kind of bondary conditions on the x plus face, dir z",ang= "kind of bondary conditions on the x plus face, dir z",docu= "",statut= "f",into=('DISPLACEMENT', 'FORCE'),min=1,max=1,val_min='**',val_max='**',defaut=None), -boundary_condition_x_plus_z_u0=SIMP(typ='R',fr= "Imposed displacement at the center of the face along the z direction",ang= "Imposed displacement at the center of the face along the z direction",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -boundary_condition_x_plus_z_dudy=SIMP(typ='R',fr= " rac{du_z}{dy} on this face",ang= " rac{du_z}{dy} on this face",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -boundary_condition_x_plus_z_dudz=SIMP(typ='R',fr= " rac{du_z}{dz} on this face",ang= " rac{du_z}{dz} on this face",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -boundary_condition_x_plus_z_T=SIMP(typ='R',fr= "force per area at the center of face along z direction",ang= "force per area at the center of face along z direction",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -boundary_condition_x_plus_z_dTdy=SIMP(typ='R',fr= " rac{dT_z}{dy} on this face",ang= " rac{dT_z}{dy} on this face",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -boundary_condition_x_plus_z_dTdz=SIMP(typ='R',fr= " rac{dT_z}{dz} on this face",ang= " rac{dT_z}{dz} on this face",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -boundary_condition_y_plus_z_type=SIMP(typ='TXM',fr= "kind of bondary conditions on the y plus face, dir z",ang= "kind of bondary conditions on the y plus face, dir z",docu= "",statut= "f",into=('DISPLACEMENT', 'FORCE'),min=1,max=1,val_min='**',val_max='**',defaut=None), -boundary_condition_y_plus_z_u0=SIMP(typ='R',fr= "Imposed displacement at the center of the face along the z direction",ang= "Imposed displacement at the center of the face along the z direction",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -boundary_condition_y_plus_z_dudx=SIMP(typ='R',fr= " rac{du_z}{dx} on this face",ang= " rac{du_z}{dx} on this face",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -boundary_condition_y_plus_z_dudz=SIMP(typ='R',fr= " rac{du_z}{dz} on this face",ang= " rac{du_z}{dz} on this face",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -boundary_condition_y_plus_z_T=SIMP(typ='R',fr= "force per area at the center of face along z direction",ang= "force per area at the center of face along z direction",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -boundary_condition_y_plus_z_dTdx=SIMP(typ='R',fr= " rac{dT_z}{dx} on this face",ang= " rac{dT_z}{dx} on this face",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -boundary_condition_y_plus_z_dTdz=SIMP(typ='R',fr= " rac{dT_z}{dz} on this face",ang= " rac{dT_z}{dz} on this face",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -boundary_condition_z_plus_z_type=SIMP(typ='TXM',fr= "kind of bondary conditions on the z plus face, dir z",ang= "kind of bondary conditions on the z plus face, dir z",docu= "",statut= "f",into=('DISPLACEMENT', 'FORCE'),min=1,max=1,val_min='**',val_max='**',defaut=None), -boundary_condition_z_plus_z_u0=SIMP(typ='R',fr= "Imposed displacement at the center of the face along the z direction",ang= "Imposed displacement at the center of the face along the z direction",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -boundary_condition_z_plus_z_dudx=SIMP(typ='R',fr= " rac{du_z}{dx} on this face",ang= " rac{du_z}{dx} on this face",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -boundary_condition_z_plus_z_dudy=SIMP(typ='R',fr= " rac{du_z}{dy} on this face",ang= " rac{du_z}{dy} on this face",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -boundary_condition_z_plus_z_T=SIMP(typ='R',fr= "force per area at the center of face along z direction",ang= "force per area at the center of face along z direction",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -boundary_condition_z_plus_z_dTdx=SIMP(typ='R',fr= " rac{dT_z}{dx} on this face",ang= " rac{dT_z}{dx} on this face",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -boundary_condition_z_plus_z_dTdy=SIMP(typ='R',fr= " rac{dT_z}{dy} on this face",ang= " rac{dT_z}{dy} on this face",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -boundary_condition_x_minus_x_type=SIMP(typ='TXM',fr= "kind of bondary conditions on the x minus face, dir x",ang= "kind of bondary conditions on the x minus face, dir x",docu= "",statut= "f",into=('DISPLACEMENT', 'FORCE'),min=1,max=1,val_min='**',val_max='**',defaut=None), -boundary_condition_x_minus_x_u0=SIMP(typ='R',fr= "Imposed displacement at the center of the face along the x direction",ang= "Imposed displacement at the center of the face along the x direction",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -boundary_condition_x_minus_x_dudy=SIMP(typ='R',fr= " rac{du_x}{dy} on this face",ang= " rac{du_x}{dy} on this face",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -boundary_condition_x_minus_x_dudz=SIMP(typ='R',fr= " rac{du_x}{dz} on this face",ang= " rac{du_x}{dz} on this face",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -boundary_condition_x_minus_x_T=SIMP(typ='R',fr= "force per area at the center of face along x direction",ang= "force per area at the center of face along x direction",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -boundary_condition_x_minus_x_dTdy=SIMP(typ='R',fr= " rac{dT_x}{dy} on this face",ang= " rac{dT_x}{dy} on this face",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -boundary_condition_x_minus_x_dTdz=SIMP(typ='R',fr= " rac{dT_x}{dz} on this face",ang= " rac{dT_x}{dz} on this face",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -boundary_condition_y_minus_x_type=SIMP(typ='TXM',fr= "kind of bondary conditions on the y minus face, dir x",ang= "kind of bondary conditions on the y minus face, dir x",docu= "",statut= "f",into=('DISPLACEMENT', 'FORCE'),min=1,max=1,val_min='**',val_max='**',defaut=None), -boundary_condition_y_minus_x_u0=SIMP(typ='R',fr= "Imposed displacement at the center of the face along the x direction",ang= "Imposed displacement at the center of the face along the x direction",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -boundary_condition_y_minus_x_dudx=SIMP(typ='R',fr= " rac{du_x}{dx} on this face",ang= " rac{du_x}{dx} on this face",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -boundary_condition_y_minus_x_dudz=SIMP(typ='R',fr= " rac{du_x}{dz} on this face",ang= " rac{du_x}{dz} on this face",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -boundary_condition_y_minus_x_T=SIMP(typ='R',fr= "force per area at the center of face along x direction",ang= "force per area at the center of face along x direction",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -boundary_condition_y_minus_x_dTdx=SIMP(typ='R',fr= " rac{dT_x}{dx} on this face",ang= " rac{dT_x}{dx} on this face",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -boundary_condition_y_minus_x_dTdz=SIMP(typ='R',fr= " rac{dT_x}{dz} on this face",ang= " rac{dT_x}{dz} on this face",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -boundary_condition_z_minus_x_type=SIMP(typ='TXM',fr= "kind of bondary conditions on the z minus face, dir x",ang= "kind of bondary conditions on the z minus face, dir x",docu= "",statut= "f",into=('DISPLACEMENT', 'FORCE'),min=1,max=1,val_min='**',val_max='**',defaut=None), -boundary_condition_z_minus_x_u0=SIMP(typ='R',fr= "Imposed displacement at the center of the face along the x direction",ang= "Imposed displacement at the center of the face along the x direction",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -boundary_condition_z_minus_x_dudx=SIMP(typ='R',fr= " rac{du_x}{dx} on this face",ang= " rac{du_x}{dx} on this face",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -boundary_condition_z_minus_x_dudy=SIMP(typ='R',fr= " rac{du_x}{dy} on this face",ang= " rac{du_x}{dy} on this face",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -boundary_condition_z_minus_x_T=SIMP(typ='R',fr= "force per area at the center of face along x direction",ang= "force per area at the center of face along x direction",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -boundary_condition_z_minus_x_dTdx=SIMP(typ='R',fr= " rac{dT_x}{dx} on this face",ang= " rac{dT_x}{dx} on this face",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -boundary_condition_z_minus_x_dTdy=SIMP(typ='R',fr= " rac{dT_x}{dy} on this face",ang= " rac{dT_x}{dy} on this face",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -boundary_condition_x_minus_y_type=SIMP(typ='TXM',fr= "kind of bondary conditions on the x minus face, dir y",ang= "kind of bondary conditions on the x minus face, dir y",docu= "",statut= "f",into=('DISPLACEMENT', 'FORCE'),min=1,max=1,val_min='**',val_max='**',defaut=None), -boundary_condition_x_minus_y_u0=SIMP(typ='R',fr= "Imposed displacement at the center of the face along the y direction",ang= "Imposed displacement at the center of the face along the y direction",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -boundary_condition_x_minus_y_dudy=SIMP(typ='R',fr= " rac{du_y}{dy} on this face",ang= " rac{du_y}{dy} on this face",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -boundary_condition_x_minus_y_dudz=SIMP(typ='R',fr= " rac{du_y}{dz} on this face",ang= " rac{du_y}{dz} on this face",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -boundary_condition_x_minus_y_T=SIMP(typ='R',fr= "force per area at the center of face along y direction",ang= "force per area at the center of face along y direction",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -boundary_condition_x_minus_y_dTdy=SIMP(typ='R',fr= " rac{dT_y}{dy} on this face",ang= " rac{dT_y}{dy} on this face",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -boundary_condition_x_minus_y_dTdz=SIMP(typ='R',fr= " rac{dT_y}{dz} on this face",ang= " rac{dT_y}{dz} on this face",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -boundary_condition_y_minus_y_type=SIMP(typ='TXM',fr= "kind of bondary conditions on the y minus face, dir y",ang= "kind of bondary conditions on the y minus face, dir y",docu= "",statut= "f",into=('DISPLACEMENT', 'FORCE'),min=1,max=1,val_min='**',val_max='**',defaut=None), -boundary_condition_y_minus_y_u0=SIMP(typ='R',fr= "Imposed displacement at the center of the face along the y direction",ang= "Imposed displacement at the center of the face along the y direction",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -boundary_condition_y_minus_y_dudx=SIMP(typ='R',fr= " rac{du_y}{dx} on this face",ang= " rac{du_y}{dx} on this face",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -boundary_condition_y_minus_y_dudz=SIMP(typ='R',fr= " rac{du_y}{dz} on this face",ang= " rac{du_y}{dz} on this face",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -boundary_condition_y_minus_y_T=SIMP(typ='R',fr= "force per area at the center of face along y direction",ang= "force per area at the center of face along y direction",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -boundary_condition_y_minus_y_dTdx=SIMP(typ='R',fr= " rac{dT_y}{dx} on this face",ang= " rac{dT_y}{dx} on this face",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -boundary_condition_y_minus_y_dTdz=SIMP(typ='R',fr= " rac{dT_y}{dz} on this face",ang= " rac{dT_y}{dz} on this face",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -boundary_condition_z_minus_y_type=SIMP(typ='TXM',fr= "kind of bondary conditions on the z minus face, dir y",ang= "kind of bondary conditions on the z minus face, dir y",docu= "",statut= "f",into=('DISPLACEMENT', 'FORCE'),min=1,max=1,val_min='**',val_max='**',defaut=None), -boundary_condition_z_minus_y_u0=SIMP(typ='R',fr= "Imposed displacement at the center of the face along the y direction",ang= "Imposed displacement at the center of the face along the y direction",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -boundary_condition_z_minus_y_dudx=SIMP(typ='R',fr= " rac{du_y}{dx} on this face",ang= " rac{du_y}{dx} on this face",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -boundary_condition_z_minus_y_dudy=SIMP(typ='R',fr= " rac{du_y}{dy} on this face",ang= " rac{du_y}{dy} on this face",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -boundary_condition_z_minus_y_T=SIMP(typ='R',fr= "force per area at the center of face along y direction",ang= "force per area at the center of face along y direction",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -boundary_condition_z_minus_y_dTdx=SIMP(typ='R',fr= " rac{dT_y}{dx} on this face",ang= " rac{dT_y}{dx} on this face",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -boundary_condition_z_minus_y_dTdy=SIMP(typ='R',fr= " rac{dT_y}{dy} on this face",ang= " rac{dT_y}{dy} on this face",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -boundary_condition_x_minus_z_type=SIMP(typ='TXM',fr= "kind of bondary conditions on the x minus face, dir z",ang= "kind of bondary conditions on the x minus face, dir z",docu= "",statut= "f",into=('DISPLACEMENT', 'FORCE'),min=1,max=1,val_min='**',val_max='**',defaut=None), -boundary_condition_x_minus_z_u0=SIMP(typ='R',fr= "Imposed displacement at the center of the face along the z direction",ang= "Imposed displacement at the center of the face along the z direction",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -boundary_condition_x_minus_z_dudy=SIMP(typ='R',fr= " rac{du_z}{dy} on this face",ang= " rac{du_z}{dy} on this face",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -boundary_condition_x_minus_z_dudz=SIMP(typ='R',fr= " rac{du_z}{dz} on this face",ang= " rac{du_z}{dz} on this face",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -boundary_condition_x_minus_z_T=SIMP(typ='R',fr= "force per area at the center of face along z direction",ang= "force per area at the center of face along z direction",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -boundary_condition_x_minus_z_dTdy=SIMP(typ='R',fr= " rac{dT_z}{dy} on this face",ang= " rac{dT_z}{dy} on this face",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -boundary_condition_x_minus_z_dTdz=SIMP(typ='R',fr= " rac{dT_z}{dz} on this face",ang= " rac{dT_z}{dz} on this face",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -boundary_condition_y_minus_z_type=SIMP(typ='TXM',fr= "kind of bondary conditions on the y minus face, dir z",ang= "kind of bondary conditions on the y minus face, dir z",docu= "",statut= "f",into=('DISPLACEMENT', 'FORCE'),min=1,max=1,val_min='**',val_max='**',defaut=None), -boundary_condition_y_minus_z_u0=SIMP(typ='R',fr= "Imposed displacement at the center of the face along the z direction",ang= "Imposed displacement at the center of the face along the z direction",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -boundary_condition_y_minus_z_dudx=SIMP(typ='R',fr= " rac{du_z}{dx} on this face",ang= " rac{du_z}{dx} on this face",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -boundary_condition_y_minus_z_dudz=SIMP(typ='R',fr= " rac{du_z}{dz} on this face",ang= " rac{du_z}{dz} on this face",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -boundary_condition_y_minus_z_T=SIMP(typ='R',fr= "force per area at the center of face along z direction",ang= "force per area at the center of face along z direction",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -boundary_condition_y_minus_z_dTdx=SIMP(typ='R',fr= " rac{dT_z}{dx} on this face",ang= " rac{dT_z}{dx} on this face",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -boundary_condition_y_minus_z_dTdz=SIMP(typ='R',fr= " rac{dT_z}{dz} on this face",ang= " rac{dT_z}{dz} on this face",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -boundary_condition_z_minus_z_type=SIMP(typ='TXM',fr= "kind of bondary conditions on the z minus face, dir z",ang= "kind of bondary conditions on the z minus face, dir z",docu= "",statut= "f",into=('DISPLACEMENT', 'FORCE'),min=1,max=1,val_min='**',val_max='**',defaut=None), -boundary_condition_z_minus_z_u0=SIMP(typ='R',fr= "Imposed displacement at the center of the face along the z direction",ang= "Imposed displacement at the center of the face along the z direction",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -boundary_condition_z_minus_z_dudx=SIMP(typ='R',fr= " rac{du_z}{dx} on this face",ang= " rac{du_z}{dx} on this face",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -boundary_condition_z_minus_z_dudy=SIMP(typ='R',fr= " rac{du_z}{dy} on this face",ang= " rac{du_z}{dy} on this face",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -boundary_condition_z_minus_z_T=SIMP(typ='R',fr= "force per area at the center of face along z direction",ang= "force per area at the center of face along z direction",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -boundary_condition_z_minus_z_dTdx=SIMP(typ='R',fr= " rac{dT_z}{dx} on this face",ang= " rac{dT_z}{dx} on this face",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -boundary_condition_z_minus_z_dTdy=SIMP(typ='R',fr= " rac{dT_z}{dy} on this face",ang= " rac{dT_z}{dy} on this face",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -Av_EPS11=SIMP(typ='R',fr= "Average of EPS11",ang= "Average of EPS11",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=0), -Av_EPS22=SIMP(typ='R',fr= "Average of EPS22",ang= "Average of EPS22",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=0), -Av_EPS33=SIMP(typ='R',fr= "Average of EPS33",ang= "Average of EPS33",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=0), -Av_EPS12=SIMP(typ='R',fr= "Average of EPS12",ang= "Average of EPS12",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=0), -Av_EPS13=SIMP(typ='R',fr= "Average of EPS13",ang= "Average of EPS13",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=0), -Av_EPS23=SIMP(typ='R',fr= "Average of EPS23",ang= "Average of EPS23",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=0), -Av_SIG11=SIMP(typ='R',fr= "Average of SIG11",ang= "Average of SIG11",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=0), -Av_SIG22=SIMP(typ='R',fr= "Average of SIG22",ang= "Average of SIG22",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=0), -Av_SIG33=SIMP(typ='R',fr= "Average of SIG33",ang= "Average of SIG33",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=0), -Av_SIG12=SIMP(typ='R',fr= "Average of SIG12",ang= "Average of SIG12",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=0), -Av_SIG13=SIMP(typ='R',fr= "Average of SIG13",ang= "Average of SIG13",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=0), -Av_SIG23=SIMP(typ='R',fr= "Average of SIG23",ang= "Average of SIG23",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=0), -) -# ====================================================================== -# Catalog entry for the MAP function : c_pre_morphology_gravel -# ====================================================================== -C_PRE_MORPHOLOGY_GRAVEL_DATA=PROC(nom='C_PRE_MORPHOLOGY_GRAVEL_DATA',op=None, -UIinfo ={'groupes':('pre',)}, -multiscale=SIMP(typ='TXM',fr= "determine, in the case of the microstructure computation if it is multiscale or no",ang= "determine, in the case of the microstructure computation if it is multiscale or no",docu= "",statut= "o",into=['yes', 'no'],min=1,max=1,val_min='**',val_max='**',defaut='no'), -multiscale_yes=BLOC(condition="(multiscale=='yes')", -random_seed=SIMP(typ='I',fr= "gives the value of the seed used to initialize the random process. This parameter is optional, if it is not given, random is initialised with time. The parameter is mainly used for non-regression tests purpose.",ang= "gives the value of the seed used to initialize the random process. This parameter is optional, if it is not given, random is initialised with time. The parameter is mainly used for non-regression tests purpose.",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=1332150941), -computation=SIMP(typ='TXM',fr= "determines the type of computation",ang= "determines the type of computation",docu= "",statut= "o",into=['microstructure'],min=1,max=1,val_min='**',val_max='**',defaut='microstructure'), -size=SIMP(typ='I',fr= "size of the image (discretization in the case of the covariance measurment)",ang= "size of the image (discretization in the case of the covariance measurment)",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=250), -lambda_poisson=SIMP(typ='R',fr= "density planes for buiding microstructures for class 1 polyhedra",ang= "density planes for buiding microstructures for class 1 polyhedra",docu= "",statut= "o",into=None,min=1,max=1,val_min=0.0,val_max='**',defaut=0.035), -fraction=SIMP(typ='R',fr= "volume fraction for class 1 polyhedra",ang= "volume fraction for class 1 polyhedra",docu= "",statut= "o",into=None,min=1,max=1,val_min=0.0,val_max='**',defaut=0.15), -voxel_side=SIMP(typ='R',fr= "resolution of the output image",ang= "resolution of the output image",docu= "",statut= "o",into=None,min=1,max=1,val_min=0.0,val_max='**',defaut=1.0), -raw_type=SIMP(typ='TXM',fr= "unused",ang= "unused",docu= "",statut= "o",into=['image'],min=1,max=1,val_min='**',val_max='**',defaut='image'), -file_out_txt=SIMP(typ=('Fichier', 'All Files ()', 'Sauvegarde'),fr= "text ascii file output that describes the list of polyhedra",ang= "text ascii file output that describes the list of polyhedra",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut='c_pre_morphology_gravel.txt'), -file_out_raw=SIMP(typ=('Fichier', 'All Files ()', 'Sauvegarde'),fr= "binary file output for binarized image",ang= "binary file output for binarized image",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut='c_pre_morphology_gravel.raw'), -lambda_poisson2=SIMP(typ='R',fr= "density planes for buiding microstructures for class 2 polyhedra",ang= "density planes for buiding microstructures for class 2 polyhedra",docu= "",statut= "o",into=None,min=1,max=1,val_min=0.0,val_max='**',defaut=None), -lambda_poisson3=SIMP(typ='R',fr= "density planes for buiding microstructures for class 3 polyhedra",ang= "density planes for buiding microstructures for class 3 polyhedra",docu= "",statut= "o",into=None,min=1,max=1,val_min=0.0,val_max='**',defaut=None), -fraction2=SIMP(typ='R',fr= "volume fraction for class 2 polyhedra",ang= "volume fraction for class 2 polyhedra",docu= "",statut= "o",into=None,min=1,max=1,val_min=0.0,val_max='**',defaut=None), -fraction3=SIMP(typ='R',fr= "volume fraction for class 3 polyhedra",ang= "volume fraction for class 3 polyhedra",docu= "",statut= "o",into=None,min=1,max=1,val_min=0.0,val_max='**',defaut=None), -r0=SIMP(typ='R',fr= "smaller radius of lambda_Poisson polyhedra",ang= "smaller radius of lambda_Poisson polyhedra",docu= "",statut= "o",into=None,min=1,max=1,val_min=0.0,val_max='**',defaut=None), -r1=SIMP(typ='R',fr= "larger radius of lambda_Poisson polyhedra, smaller of lambda_poisson2",ang= "larger radius of lambda_Poisson polyhedra, smaller of lambda_poisson2",docu= "",statut= "o",into=None,min=1,max=1,val_min=0.0,val_max='**',defaut=None), -r2=SIMP(typ='R',fr= "larger radius of lambda_Poisson2 polyhedra, smaller of lambda_poisson3",ang= "larger radius of lambda_Poisson2 polyhedra, smaller of lambda_poisson3",docu= "",statut= "o",into=None,min=1,max=1,val_min=0.0,val_max='**',defaut=None), -r3=SIMP(typ='R',fr= "larger radius of lambda_Poisson polyhedra3",ang= "larger radius of lambda_Poisson polyhedra3",docu= "",statut= "f",into=None,min=1,max=1,val_min=0.0,val_max='**',defaut=None), -step=SIMP(typ='R',fr= "translation step used in displacement process when intersection occurs",ang= "translation step used in displacement process when intersection occurs",docu= "",statut= "o",into=None,min=1,max=1,val_min=0.0,val_max='**',defaut=None), -voids=SIMP(typ='R',fr= "fraction of voids according to experimental pore distribution",ang= "fraction of voids according to experimental pore distribution",docu= "",statut= "o",into=None,min=1,max=1,val_min=0.0,val_max='**',defaut=None), -), -multiscale_no=BLOC(condition="(multiscale=='no')", -random_seed=SIMP(typ='I',fr= "gives the value of the seed used to initialize the random process. This parameter is optional, if it is not given, random is initialised with time. The parameter is mainly used for non-regression tests purpose.",ang= "gives the value of the seed used to initialize the random process. This parameter is optional, if it is not given, random is initialised with time. The parameter is mainly used for non-regression tests purpose.",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=1332150941), -computation=SIMP(typ='TXM',fr= "determines the type of computation",ang= "determines the type of computation",docu= "",statut= "o",into=['microstructure'],min=1,max=1,val_min='**',val_max='**',defaut='microstructure'), -size=SIMP(typ='I',fr= "size of the image (discretization in the case of the covariance measurment)",ang= "size of the image (discretization in the case of the covariance measurment)",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=250), -lambda_poisson=SIMP(typ='R',fr= "density planes for buiding microstructures for class 1 polyhedra",ang= "density planes for buiding microstructures for class 1 polyhedra",docu= "",statut= "o",into=None,min=1,max=1,val_min=0.0,val_max='**',defaut=0.035), -fraction=SIMP(typ='R',fr= "volume fraction for class 1 polyhedra",ang= "volume fraction for class 1 polyhedra",docu= "",statut= "o",into=None,min=1,max=1,val_min=0.0,val_max='**',defaut=0.15), -voxel_side=SIMP(typ='R',fr= "resolution of the output image",ang= "resolution of the output image",docu= "",statut= "o",into=None,min=1,max=1,val_min=0.0,val_max='**',defaut=1.0), -raw_type=SIMP(typ='TXM',fr= "unused",ang= "unused",docu= "",statut= "o",into=['image'],min=1,max=1,val_min='**',val_max='**',defaut='image'), -file_out_txt=SIMP(typ=('Fichier', 'All Files ()', 'Sauvegarde'),fr= "text ascii file output that describes the list of polyhedra",ang= "text ascii file output that describes the list of polyhedra",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut='c_pre_morphology_gravel.txt'), -file_out_raw=SIMP(typ=('Fichier', 'All Files ()', 'Sauvegarde'),fr= "binary file output for binarized image",ang= "binary file output for binarized image",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut='c_pre_morphology_gravel.raw'), -), -) -# ====================================================================== -# Catalog entry for the MAP function : c_image_weld_orientation -# ====================================================================== -C_IMAGE_WELD_ORIENTATION_DATA=PROC(nom='C_IMAGE_WELD_ORIENTATION_DATA',op=None, -UIinfo ={'groupes':('image',)}, -work_process=SIMP(typ='TXM',fr= "Which computations are made : Orientation, Reparation, Domain, VisualizationEx: OR means Orientation + Reparation",ang= "Which computations are made : Orientation, Reparation, Domain, VisualizationEx: OR means Orientation + Reparation",docu= "",statut= "o",into=['O', 'R', 'D', 'V', 'OR', 'OD', 'OV', 'RD', 'RV', 'DV', 'ORD', 'ORV', 'ODV', 'RDV', 'ORDV'],min=1,max=1,val_min='**',val_max='**',defaut='O'), -work_process_O=BLOC(condition="(work_process=='O')", -weld_name=SIMP(typ=('Fichier', 'All Files (*)'),fr= "Weld image",ang= "Weld image",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -computation_mode=SIMP(typ='TXM',fr= "Computation mode",ang= "Computation mode",docu= "",statut= "o",into=['sample', 'pixel'],min=1,max=1,val_min='**',val_max='**',defaut='sample'), -sample_size=SIMP(typ='I',fr= "Sample size",ang= "Sample size",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=40), -orientation_accuracy=SIMP(typ='I',fr= "Orientation accuracy (in degree)",ang= "Orientation accuracy (in degree)",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=1), -), -work_process_R=BLOC(condition="(work_process=='R')", -orientation_name=SIMP(typ=('Fichier', 'All Files (*)'),fr= "Orientation image",ang= "Orientation image",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -confidence_name=SIMP(typ=('Fichier', 'All Files (*)'),fr= "Confidence image",ang= "Confidence image",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -confidence_level=SIMP(typ='R',fr= "Used to threshold the confidence image",ang= "Used to threshold the confidence image",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=2.0), -), -work_process_D=BLOC(condition="(work_process=='D')", -computation_mode=SIMP(typ='TXM',fr= "Computation mode",ang= "Computation mode",docu= "",statut= "o",into=['domain'],min=1,max=1,val_min='**',val_max='**',defaut='domain'), -orientation_name=SIMP(typ=('Fichier', 'All Files (*)'),fr= "Orientation image",ang= "Orientation image",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -level_number=SIMP(typ='I',fr= "Number of level",ang= "Number of level",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=4), -smoothing_level=SIMP(typ='R',fr= "More smoothing means smoother boundaries",ang= "More smoothing means smoother boundaries",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=0.0), -), -work_process_V=BLOC(condition="(work_process=='V')", -orientation_name=SIMP(typ=('Fichier', 'All Files (*)'),fr= "Orientation image",ang= "Orientation image",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -weld_name=SIMP(typ=('Fichier', 'All Files (*)'),fr= "Weld image",ang= "Weld image",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -streamlines_pitch=SIMP(typ='I',fr= "Number of level",ang= "Number of level",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=20), -), -work_process_OR=BLOC(condition="(work_process=='OR')", -weld_name=SIMP(typ=('Fichier', 'All Files (*)'),fr= "Weld image",ang= "Weld image",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -computation_mode=SIMP(typ='TXM',fr= "Computation mode",ang= "Computation mode",docu= "",statut= "o",into=['sample', 'pixel'],min=1,max=1,val_min='**',val_max='**',defaut='sample'), -sample_size=SIMP(typ='I',fr= "Sample size",ang= "Sample size",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=40), -orientation_accuracy=SIMP(typ='I',fr= "Orientation accuracy (in degree)",ang= "Orientation accuracy (in degree)",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=1), -confidence_level=SIMP(typ='R',fr= "Used to threshold the confidence image",ang= "Used to threshold the confidence image",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=2.0), -), -work_process_OD=BLOC(condition="(work_process=='OD')", -weld_name=SIMP(typ=('Fichier', 'All Files (*)'),fr= "Weld image",ang= "Weld image",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -computation_mode=SIMP(typ='TXM',fr= "Computation mode",ang= "Computation mode",docu= "",statut= "o",into=['sample', 'pixel'],min=1,max=1,val_min='**',val_max='**',defaut='sample'), -sample_size=SIMP(typ='I',fr= "Sample size",ang= "Sample size",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=40), -orientation_accuracy=SIMP(typ='I',fr= "Orientation accuracy (in degree)",ang= "Orientation accuracy (in degree)",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=1), -level_number=SIMP(typ='I',fr= "Number of level",ang= "Number of level",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=4), -smoothing_level=SIMP(typ='R',fr= "More smoothing means smoother boundaries",ang= "More smoothing means smoother boundaries",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=0.0), -), -work_process_OV=BLOC(condition="(work_process=='OV')", -weld_name=SIMP(typ=('Fichier', 'All Files (*)'),fr= "Weld image",ang= "Weld image",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -computation_mode=SIMP(typ='TXM',fr= "Computation mode",ang= "Computation mode",docu= "",statut= "o",into=['sample', 'pixel'],min=1,max=1,val_min='**',val_max='**',defaut='sample'), -sample_size=SIMP(typ='I',fr= "Sample size",ang= "Sample size",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=40), -orientation_accuracy=SIMP(typ='I',fr= "Orientation accuracy (in degree)",ang= "Orientation accuracy (in degree)",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=1), -streamlines_pitch=SIMP(typ='I',fr= "Number of level",ang= "Number of level",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=20), -), -work_process_RD=BLOC(condition="(work_process=='RD')", -orientation_name=SIMP(typ=('Fichier', 'All Files (*)'),fr= "Orientation image",ang= "Orientation image",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -confidence_name=SIMP(typ=('Fichier', 'All Files (*)'),fr= "Confidence image",ang= "Confidence image",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -confidence_level=SIMP(typ='R',fr= "Used to threshold the confidence image",ang= "Used to threshold the confidence image",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=2.0), -computation_mode=SIMP(typ='TXM',fr= "Computation mode",ang= "Computation mode",docu= "",statut= "o",into=['domain'],min=1,max=1,val_min='**',val_max='**',defaut='domain'), -level_number=SIMP(typ='I',fr= "Number of level",ang= "Number of level",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=4), -smoothing_level=SIMP(typ='R',fr= "More smoothing means smoother boundaries",ang= "More smoothing means smoother boundaries",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=0.0), -), -work_process_RV=BLOC(condition="(work_process=='RV')", -orientation_name=SIMP(typ=('Fichier', 'All Files (*)'),fr= "Orientation image",ang= "Orientation image",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -confidence_name=SIMP(typ=('Fichier', 'All Files (*)'),fr= "Confidence image",ang= "Confidence image",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -confidence_level=SIMP(typ='R',fr= "Used to threshold the confidence image",ang= "Used to threshold the confidence image",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=2.0), -weld_name=SIMP(typ=('Fichier', 'All Files (*)'),fr= "Weld image",ang= "Weld image",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -streamlines_pitch=SIMP(typ='I',fr= "Number of level",ang= "Number of level",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=20), -), -work_process_DV=BLOC(condition="(work_process=='DV')", -computation_mode=SIMP(typ='TXM',fr= "Computation mode",ang= "Computation mode",docu= "",statut= "o",into=['domain'],min=1,max=1,val_min='**',val_max='**',defaut='domain'), -orientation_name=SIMP(typ=('Fichier', 'All Files (*)'),fr= "Orientation image",ang= "Orientation image",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -level_number=SIMP(typ='I',fr= "Number of level",ang= "Number of level",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=4), -smoothing_level=SIMP(typ='R',fr= "More smoothing means smoother boundaries",ang= "More smoothing means smoother boundaries",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=0.0), -weld_name=SIMP(typ=('Fichier', 'All Files (*)'),fr= "Weld image",ang= "Weld image",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -streamlines_pitch=SIMP(typ='I',fr= "Number of level",ang= "Number of level",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=20), -), -work_process_ORD=BLOC(condition="(work_process=='ORD')", -weld_name=SIMP(typ=('Fichier', 'All Files (*)'),fr= "Weld image",ang= "Weld image",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -sample_size=SIMP(typ='I',fr= "Sample size",ang= "Sample size",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=40), -orientation_accuracy=SIMP(typ='I',fr= "Orientation accuracy (in degree)",ang= "Orientation accuracy (in degree)",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=1), -confidence_level=SIMP(typ='R',fr= "Used to threshold the confidence image",ang= "Used to threshold the confidence image",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=2.0), -computation_mode=SIMP(typ='TXM',fr= "Computation mode",ang= "Computation mode",docu= "",statut= "o",into=['domain'],min=1,max=1,val_min='**',val_max='**',defaut='domain'), -level_number=SIMP(typ='I',fr= "Number of level",ang= "Number of level",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=4), -smoothing_level=SIMP(typ='R',fr= "More smoothing means smoother boundaries",ang= "More smoothing means smoother boundaries",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=0.0), -), -work_process_ORV=BLOC(condition="(work_process=='ORV')", -weld_name=SIMP(typ=('Fichier', 'All Files (*)'),fr= "Weld image",ang= "Weld image",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -computation_mode=SIMP(typ='TXM',fr= "Computation mode",ang= "Computation mode",docu= "",statut= "o",into=['sample', 'pixel'],min=1,max=1,val_min='**',val_max='**',defaut='sample'), -sample_size=SIMP(typ='I',fr= "Sample size",ang= "Sample size",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=40), -orientation_accuracy=SIMP(typ='I',fr= "Orientation accuracy (in degree)",ang= "Orientation accuracy (in degree)",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=1), -confidence_level=SIMP(typ='R',fr= "Used to threshold the confidence image",ang= "Used to threshold the confidence image",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=2.0), -streamlines_pitch=SIMP(typ='I',fr= "Number of level",ang= "Number of level",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=20), -), -work_process_ODV=BLOC(condition="(work_process=='ODV')", -weld_name=SIMP(typ=('Fichier', 'All Files (*)'),fr= "Weld image",ang= "Weld image",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -sample_size=SIMP(typ='I',fr= "Sample size",ang= "Sample size",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=40), -orientation_accuracy=SIMP(typ='I',fr= "Orientation accuracy (in degree)",ang= "Orientation accuracy (in degree)",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=1), -computation_mode=SIMP(typ='TXM',fr= "Computation mode",ang= "Computation mode",docu= "",statut= "o",into=['domain'],min=1,max=1,val_min='**',val_max='**',defaut='domain'), -level_number=SIMP(typ='I',fr= "Number of level",ang= "Number of level",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=4), -smoothing_level=SIMP(typ='R',fr= "More smoothing means smoother boundaries",ang= "More smoothing means smoother boundaries",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=0.0), -streamlines_pitch=SIMP(typ='I',fr= "Number of level",ang= "Number of level",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=20), -), -work_process_RDV=BLOC(condition="(work_process=='RDV')", -orientation_name=SIMP(typ=('Fichier', 'All Files (*)'),fr= "Orientation image",ang= "Orientation image",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -confidence_name=SIMP(typ=('Fichier', 'All Files (*)'),fr= "Confidence image",ang= "Confidence image",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -confidence_level=SIMP(typ='R',fr= "Used to threshold the confidence image",ang= "Used to threshold the confidence image",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=2.0), -computation_mode=SIMP(typ='TXM',fr= "Computation mode",ang= "Computation mode",docu= "",statut= "o",into=['domain'],min=1,max=1,val_min='**',val_max='**',defaut='domain'), -level_number=SIMP(typ='I',fr= "Number of level",ang= "Number of level",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=4), -smoothing_level=SIMP(typ='R',fr= "More smoothing means smoother boundaries",ang= "More smoothing means smoother boundaries",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=0.0), -streamlines_pitch=SIMP(typ='I',fr= "Number of level",ang= "Number of level",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=20), -), -work_process_ORDV=BLOC(condition="(work_process=='ORDV')", -weld_name=SIMP(typ=('Fichier', 'All Files (*)'),fr= "Weld image",ang= "Weld image",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -sample_size=SIMP(typ='I',fr= "Sample size",ang= "Sample size",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=40), -orientation_accuracy=SIMP(typ='I',fr= "Orientation accuracy (in degree)",ang= "Orientation accuracy (in degree)",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=1), -confidence_level=SIMP(typ='R',fr= "Used to threshold the confidence image",ang= "Used to threshold the confidence image",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=2.0), -computation_mode=SIMP(typ='TXM',fr= "Computation mode",ang= "Computation mode",docu= "",statut= "o",into=['domain'],min=1,max=1,val_min='**',val_max='**',defaut='domain'), -level_number=SIMP(typ='I',fr= "Number of color levels",ang= "Number of color levels",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=4), -smoothing_level=SIMP(typ='R',fr= "More smoothing means smoother boundaries",ang= "More smoothing means smoother boundaries",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=0.0), -streamlines_pitch=SIMP(typ='I',fr= "Number of level",ang= "Number of level",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=20), -), -) -# ====================================================================== -# Catalog entry for the MAP function : c_image_2d_align -# ====================================================================== -C_IMAGE_2D_ALIGN_DATA=PROC(nom='C_IMAGE_2D_ALIGN_DATA',op=None, -UIinfo ={'groupes':('image',)}, -input_directory=SIMP(typ='Repertoire',fr= "directory where the input images are read",ang= "directory where the input images are read",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -essai=SIMP(typ='TXM',fr= "directory where the aligned images are to be written",ang= "directory where the aligned images are to be written",docu= "",statut= "o",into=None,min=4,max=5,val_min='**',val_max='**',defaut=None), -essaiListeInto=SIMP(typ='TXM',fr= "directory where the aligned images are to be written",ang= "directory where the aligned images are to be written",docu= "",statut= "o",min=4,max=5,val_min='**',val_max='**',into=['a','b','c','d']), -essaiListeInto2=SIMP(typ='TXM',fr= "directory where the aligned images are to be written",ang= "directory where the aligned images are to be written",docu= "",statut= "o",min=4,max=5,val_min='**',val_max='**',into=['a','b','c','d'],homo="SansOrdreNiDoublon"), -output_directory=SIMP(typ='Repertoire',fr= "directory where the aligned images are to be written",ang= "directory where the aligned images are to be written",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -shift=SIMP(typ='R',fr= "number of pixel each image is to be shifted from the previous one",ang= "number of pixel each image is to be shifted from the previous one",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -gui=SIMP(typ=bool,fr= "Run the Graphical User Interface if set to True",ang= "Run the Graphical User Interface if set to True",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=False), -ExempleTuple3 = SIMP(statut = 'o',typ = Tuple(3),validators = VerifTypeTuple(('R','R','R')),), -ExempleTuple2 = SIMP(statut = 'o',typ = Tuple(2),validators = VerifTypeTuple(('R','R')),), -) -# ====================================================================== -# Catalog entry for the MAP function : c_image_2d_threshold -# ====================================================================== -C_IMAGE_2D_THRESHOLD_DATA=PROC(nom='C_IMAGE_2D_THRESHOLD_DATA',op=None, -UIinfo ={'groupes':('image',)}, -image_name=SIMP(typ=('Fichier', 'All Files (*)'),fr= "input image",ang= "input image",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -threshold_level=SIMP(typ='R',fr= "(optional if GUI is used, mandatory otherwise) Threshold level applied to each input image file",ang= "(optional if GUI is used, mandatory otherwise) Threshold level applied to each input image file",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=120.0), -gui=SIMP(typ=bool,fr= "Run the Graphical User Interface if set to True",ang= "Run the Graphical User Interface if set to True",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=True), -background_name=SIMP(typ=('Fichier', 'All Files (*)'),fr= "background image for GUI preview",ang= "background image for GUI preview",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=''), -output_prefix=SIMP(typ='TXM',fr= "Prefix appended before the output file name",ang= "Prefix appended before the output file name",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=''), -output_suffix=SIMP(typ='TXM',fr= "Suffix appended after the output file name",ang= "Suffix appended after the output file name",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut='_thresholded'), -output_directory=SIMP(typ='Repertoire',fr= "path where each output file is written",ang= "path where each output file is written",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut='.'), -output_format=SIMP(typ='TXM',fr= "output format",ang= "output format",docu= "",statut= "f",into=['png', 'tif', 'csv', 'raw', 'edf'],min=1,max=1,val_min='**',val_max='**',defaut='png'), -) -# ====================================================================== -# Catalog entry for the MAP function : c_solver_stiff_ode_1d -# ====================================================================== -C_SOLVER_STIFF_ODE_1D_DATA=PROC(nom='C_SOLVER_STIFF_ODE_1D_DATA',op=None, -UIinfo ={'groupes':('solver',)}, -study_name=SIMP(typ='TXM',fr= "Describes the name of the study, is used in the metadata of the output, ...",ang= "Describes the name of the study, is used in the metadata of the output, ...",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -csv_output_file_name=SIMP(typ=('Fichier', 'All Files ()', 'Sauvegarde'),fr= "Name of the text file where the resulting fields are written at different time steps.",ang= "Name of the text file where the resulting fields are written at different time steps.",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -calculation_parameter_names=SIMP(typ='TXM',fr= "Names of the calculation parameters such as the calculation time, number of node, agings conditions ... This list MUST have the same number of parameters as calculation_parameters.",ang= "Names of the calculation parameters such as the calculation time, number of node, agings conditions ... This list MUST have the same number of parameters as calculation_parameters.",docu= "",statut= "o",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -calculation_parameters=SIMP(typ='TXM',fr= "Calculation parameters values. This list MUST have the same number of parameters as calculation_parameter_names.",ang= "Calculation parameters values. This list MUST have the same number of parameters as calculation_parameter_names.",docu= "",statut= "o",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -Arrhenius_names=SIMP(typ='TXM',fr= "Names of coefficients which follow Arrhenius law. This list MUST have the same number of parameters as Arrhenius_A and Arrhenius_Ea.",ang= "Names of coefficients which follow Arrhenius law. This list MUST have the same number of parameters as Arrhenius_A and Arrhenius_Ea.",docu= "",statut= "o",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -Arrhenius_A=SIMP(typ='TXM',fr= "Arrhenius law pre exponential factors. This list MUST have the same number of parameter as Arrhenius_names and Arrhenius_Ea.",ang= "Arrhenius law pre exponential factors. This list MUST have the same number of parameter as Arrhenius_names and Arrhenius_Ea.",docu= "",statut= "o",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -Arrhenius_Ea=SIMP(typ='TXM',fr= "Arrhenius law activation energy. This list MUST have the same number of parameter as Arrhenius_name and Arrhenius_A.",ang= "Arrhenius law activation energy. This list MUST have the same number of parameter as Arrhenius_name and Arrhenius_A.",docu= "",statut= "o",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -non_Arrhenius_coef_names=SIMP(typ='TXM',fr= "Names of coefficients which do not follow Arrhenius law. This list MUST have the same number of parameter as non_Arrhenius_coef.",ang= "Names of coefficients which do not follow Arrhenius law. This list MUST have the same number of parameter as non_Arrhenius_coef.",docu= "",statut= "o",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -non_Arrhenius_coefs=SIMP(typ='TXM',fr= "Non Arrhenius coefficients values. This list MUST have the same number of parameter as Non_Arrhenius_coef_names.",ang= "Non Arrhenius coefficients values. This list MUST have the same number of parameter as Non_Arrhenius_coef_names.",docu= "",statut= "o",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -initial_value_names=SIMP(typ='TXM',fr= "Names of the differential equation unknowns. This list MUST have the same number of parameter as initial_values and equation.",ang= "Names of the differential equation unknowns. This list MUST have the same number of parameter as initial_values and equation.",docu= "",statut= "o",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -initial_values=SIMP(typ='TXM',fr= "Initial value of the differential equation unknow. This list MUST have the same number of parameter as initial_value_names and equation.",ang= "Initial value of the differential equation unknow. This list MUST have the same number of parameter as initial_value_names and equation.",docu= "",statut= "o",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -equation=SIMP(typ='TXM',fr= "Diffential equation system written in a mathematic form. This list MUST have the same number of parameter as initial_value_names and initial_values.",ang= "Diffential equation system written in a mathematic form. This list MUST have the same number of parameter as initial_value_names and initial_values.",docu= "",statut= "o",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -boundary_condition_nodes=SIMP(typ='TXM',fr= "List of nodes where boundary conditions are applied.",ang= "List of nodes where boundary conditions are applied.",docu= "",statut= "o",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -boundary_condition_types=SIMP(typ='TXM',fr= "List of boundary conditions types.",ang= "List of boundary conditions types.",docu= "",statut= "o",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -boundary_condition_parameter=SIMP(typ='TXM',fr= "List of Boundary conditions parameter.",ang= "List of Boundary conditions parameter.",docu= "",statut= "o",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -boundary_condition_values=SIMP(typ='TXM',fr= "List of values used to define boundary conditions.",ang= "List of values used to define boundary conditions.",docu= "",statut= "o",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -) -# ====================================================================== -# Catalog entry for the MAP function : c_pre_random_experimental_design -# ====================================================================== -C_PRE_RANDOM_EXPERIMENTAL_DESIGN_DATA=PROC(nom='C_PRE_RANDOM_EXPERIMENTAL_DESIGN_DATA',op=None, -UIinfo ={'groupes':('pre',)}, -random_seed=SIMP(typ='I',fr= "Random seed",ang= "Random seed",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -distributions=SIMP(typ='TXM',fr= "Distribution of each parameter",ang= "Distribution of each parameter",docu= "",statut= "o",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -dependancy_relationship=SIMP(typ='TXM',fr= "Dependancy relationship for input random parameters",ang= "Dependancy relationship for input random parameters",docu= "",statut= "f",into=['Independent', 'Normal'],min=1,max=1,val_min='**',val_max='**',defaut='Independent'), -corr_matrix_filename=SIMP(typ=('Fichier', 'All Files (*)'),fr= "Correlation matrix filename",ang= "Correlation matrix filename",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -size=SIMP(typ='I',fr= "Size of the experimental design",ang= "Size of the experimental design",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -design_type=SIMP(typ='TXM',fr= "Design type",ang= "Design type",docu= "",statut= "o",into=['MC', 'LHS', 'QMC_Sobol', 'QMC_Halton'],min=1,max=1,val_min='**',val_max='**',defaut=None), -template_file=SIMP(typ='TXM',fr= "Template filename (an empty string means no template)",ang= "Template filename (an empty string means no template)",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -csv_output_filename=SIMP(typ=('Fichier', 'All Files ()', 'Sauvegarde'),fr= "csv_output_filename readable with a text editor",ang= "csv_output_filename readable with a text editor",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -xml_output_filename=SIMP(typ=('Fichier', 'All Files ()', 'Sauvegarde'),fr= "xml_output_filename readable by OpenTURNS with input distribution information",ang= "xml_output_filename readable by OpenTURNS with input distribution information",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -) -# ====================================================================== -# Catalog entry for the MAP function : c_pre_interface_mesh -# ====================================================================== -C_PRE_INTERFACE_MESH_DATA=PROC(nom='C_PRE_INTERFACE_MESH_DATA',op=None, -UIinfo ={'groupes':('pre',)}, -surface_type=SIMP(typ='TXM',fr= "nature of the input surface, select how it is interpreted by the component",ang= "nature of the input surface, select how it is interpreted by the component",docu= "",statut= "o",into=['rectangle_grid', 'crack_fit'],min=1,max=1,val_min='**',val_max='**',defaut='rectangle_grid'), -surface_type_rectangle_grid=BLOC(condition="(surface_type=='rectangle_grid')", -input_surface_field_csv_file_name=SIMP(typ=('Fichier', 'All Files (*)'),fr= "Not documented",ang= "Not documented",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -input_surface_field_csv_metadata_file_name=SIMP(typ=('Fichier', 'All Files (*)'),fr= "input surface field metadata file name. Required if the input surface field file is in CSV format, ignored if metadata is contained in the input surface field file.",ang= "input surface field metadata file name. Required if the input surface field file is in CSV format, ignored if metadata is contained in the input surface field file.",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -nb_segments=SIMP(typ='I',fr= "number of 1D segments for each elementary face of the surface in the resulting mesh",ang= "number of 1D segments for each elementary face of the surface in the resulting mesh",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -output_surf=SIMP(typ=('Fichier', 'All Files ()', 'Sauvegarde'),fr= "pathname of the file where the output BREP surface is generated",ang= "pathname of the file where the output BREP surface is generated",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -output_mesh=SIMP(typ=('Fichier', 'All Files ()', 'Sauvegarde'),fr= "pathname of the file where the output MED mesh is generated",ang= "pathname of the file where the output MED mesh is generated",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -), -surface_type_crack_fit=BLOC(condition="(surface_type=='crack_fit')", -input_surface_field_csv_file_name=SIMP(typ=('Fichier', 'All Files (*)'),fr= "Not documented",ang= "Not documented",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -input_surface_field_csv_metadata_file_name=SIMP(typ=('Fichier', 'All Files (*)'),fr= "input surface field metadata file name. Required if the input surface field file is in CSV format, ignored if metadata is contained in the input surface field file.",ang= "input surface field metadata file name. Required if the input surface field file is in CSV format, ignored if metadata is contained in the input surface field file.",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -nb_segments=SIMP(typ='I',fr= "number of 1D segments for each elementary face of the surface in the resulting mesh",ang= "number of 1D segments for each elementary face of the surface in the resulting mesh",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -output_surf=SIMP(typ=('Fichier', 'All Files ()', 'Sauvegarde'),fr= "pathname of the file where the output BREP surface is generated",ang= "pathname of the file where the output BREP surface is generated",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -output_mesh=SIMP(typ=('Fichier', 'All Files ()', 'Sauvegarde'),fr= "pathname of the file where the output MED mesh is generated",ang= "pathname of the file where the output MED mesh is generated",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -coeff_polyfit=SIMP(typ='TXM',fr= "tuple coerced to numpy array of shape length 2 (required only if surface_type = crack_fit)",ang= "tuple coerced to numpy array of shape length 2 (required only if surface_type = crack_fit)",docu= "",statut= "o",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -front_shape=SIMP(typ='TXM',fr= "list of the coefficients of the 1D polynome describing the front shape (required only if surface_type = crack_fit)",ang= "list of the coefficients of the 1D polynome describing the front shape (required only if surface_type = crack_fit)",docu= "",statut= "o",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -), -) -# ====================================================================== -# Catalog entry for the MAP function : c_post_cobwebplot -# ====================================================================== -C_POST_COBWEBPLOT_DATA=PROC(nom='C_POST_COBWEBPLOT_DATA',op=None, -UIinfo ={'groupes':('pre',)}, -input_ed_file=SIMP(typ=('Fichier', 'All Files (*)'),fr= "Name of the file that content the input experimental design",ang= "Name of the file that content the input experimental design",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -output_ed_file=SIMP(typ=('Fichier', 'All Files (*)'),fr= "Name of the file that content the output experimental design",ang= "Name of the file that content the output experimental design",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -high_level=SIMP(typ='R',fr= "High quantile of output to highlight, greater than low_level",ang= "High quantile of output to highlight, greater than low_level",docu= "",statut= "o",into=None,min=1,max=1,val_min=0.0,val_max=1.0,defaut=None), -low_level=SIMP(typ='R',fr= "Low quantile of output to highlight, lower than high_level",ang= "Low quantile of output to highlight, lower than high_level",docu= "",statut= "o",into=None,min=1,max=1,val_min=0.0,val_max=1.0,defaut=None), -image_file_name_prefix=SIMP(typ='TXM',fr= "Prefix to ouput images file names",ang= "Prefix to ouput images file names",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut='cobWeb-'), -) -# ====================================================================== -# Catalog entry for the MAP function : c_pre_polymer_kinetics_study -# ====================================================================== -C_PRE_POLYMER_KINETICS_STUDY_DATA=PROC(nom='C_PRE_POLYMER_KINETICS_STUDY_DATA',op=None, -UIinfo ={'groupes':('pre',)}, -model=SIMP(typ=bool,fr= "Determines if solver input will be created from a model.",ang= "Determines if solver input will be created from a model.",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -applied_post=SIMP(typ=bool,fr= "Determines if a post treatement input will be created.",ang= "Determines if a post treatement input will be created.",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -applied_graph=SIMP(typ=bool,fr= "Determines if a graphical treatement input will be created.",ang= "Determines if a graphical treatement input will be created.",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -model_True_applied_post_True_applied_graph_True=BLOC(condition="(model==True and applied_post==True and applied_graph==True)", -folder_output=SIMP(typ='TXM',fr= "Name of the forder where output is written.",ang= "Name of the forder where output is written.",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -study_name=SIMP(typ='TXM',fr= "Name of the computation.",ang= "Name of the computation.",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -model_reference_number=SIMP(typ='I',fr= "Reference number of the model in data-base",ang= "Reference number of the model in data-base",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -csv_output_file_name=SIMP(typ='TXM',fr= "define the output file name.",ang= "define the output file name.",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -job=SIMP(typ='TXM',fr= "type of treatement",ang= "type of treatement",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -solver_input_filename=SIMP(typ='TXM',fr= "Name of the input file given to the solver.",ang= "Name of the input file given to the solver.",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut='c_solver_stiff_ode_1d.input'), -computation_parameters=SIMP(typ='TXM',fr= "List of computation parameters.",ang= "List of computation parameters.",docu= "",statut= "o",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -computation_parameter_names=SIMP(typ='TXM',fr= "List of computation parameter names",ang= "List of computation parameter names",docu= "",statut= "o",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -non_Arrhenius_coef_names=SIMP(typ='TXM',fr= "List of parameters which do not follow Arrhenius law.",ang= "List of parameters which do not follow Arrhenius law.",docu= "",statut= "f",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -initial_value_names=SIMP(typ='TXM',fr= "List of the equations unkown parameter.",ang= "List of the equations unkown parameter.",docu= "",statut= "f",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -initial_values=SIMP(typ='TXM',fr= "List of the equations unkown initial values.",ang= "List of the equations unkown initial values.",docu= "",statut= "f",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -equation=SIMP(typ='TXM',fr= "List of equations number which is be used in the model.",ang= "List of equations number which is be used in the model.",docu= "",statut= "f",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -boundary_condition_nodes=SIMP(typ='TXM',fr= "List of nodes where the boundary conditions will be applied.",ang= "List of nodes where the boundary conditions will be applied.",docu= "",statut= "o",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -boundary_condition_parameter=SIMP(typ='TXM',fr= "List of species to whom the boundary conditions will be applied.",ang= "List of species to whom the boundary conditions will be applied.",docu= "",statut= "o",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -boundary_condition_types=SIMP(typ='TXM',fr= "List of type of boundary conditions.",ang= "List of type of boundary conditions.",docu= "",statut= "o",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -boundary_condition_values=SIMP(typ='TXM',fr= "List of values for the defiend boundary conditions.",ang= "List of values for the defiend boundary conditions.",docu= "",statut= "o",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -data_base=SIMP(typ='TXM',fr= "Name of the data base",ang= "Name of the data base",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -post_equations=SIMP(typ='TXM',fr= "List of post treatment equations.",ang= "List of post treatment equations.",docu= "",statut= "o",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -integrate=SIMP(typ='TXM',fr= "List of boolean which define if the equation have to be intergrated.",ang= "List of boolean which define if the equation have to be intergrated.",docu= "",statut= "o",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -post_treatment_names=SIMP(typ='TXM',fr= "List of post treatment names.",ang= "List of post treatment names.",docu= "",statut= "o",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -constant=SIMP(typ='TXM',fr= "List of cinetic parameter names.",ang= "List of cinetic parameter names.",docu= "",statut= "f",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -forced_param=SIMP(typ='TXM',fr= "List of cinetic parameter names with a different value than the one used for the solver computation.",ang= "List of cinetic parameter names with a different value than the one used for the solver computation.",docu= "",statut= "o",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -prerequisite=SIMP(typ='TXM',fr= "List of parameter list which are prerequisite for the post treatement equation.",ang= "List of parameter list which are prerequisite for the post treatement equation.",docu= "",statut= "o",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -Arrhenius_names_post=SIMP(typ='TXM',fr= "List of parameter names which follow Arrhenius law.",ang= "List of parameter names which follow Arrhenius law.",docu= "",statut= "f",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -Arrhenius_A=SIMP(typ='TXM',fr= "List of pre exponetial parameters for Arrhenius law.",ang= "List of pre exponetial parameters for Arrhenius law.",docu= "",statut= "f",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -Arrhenius_Ea=SIMP(typ='TXM',fr= "List of activation energy parameters for Arrhenius law.",ang= "List of activation energy parameters for Arrhenius law.",docu= "",statut= "f",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -graphic_names=SIMP(typ='TXM',fr= "List of graphic names.",ang= "List of graphic names.",docu= "",statut= "f",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -graphic_nodes=SIMP(typ='TXM',fr= "List of nodes.",ang= "List of nodes.",docu= "",statut= "f",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -graphic_log=SIMP(typ='TXM',fr= "List of boolean.",ang= "List of boolean.",docu= "",statut= "f",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -experimental_graphic_name=SIMP(typ='TXM',fr= "List of graphic names.",ang= "List of graphic names.",docu= "",statut= "f",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -experimental_name=SIMP(typ='TXM',fr= "List of experimental data names.",ang= "List of experimental data names.",docu= "",statut= "f",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -experimental_file=SIMP(typ='TXM',fr= "List of experimental data files.",ang= "List of experimental data files.",docu= "",statut= "f",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -graphic_space_names=SIMP(typ='TXM',fr= "List of graphic names.",ang= "List of graphic names.",docu= "",statut= "f",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -graphic_space_nodes=SIMP(typ='TXM',fr= "List of nodes.",ang= "List of nodes.",docu= "",statut= "f",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -graphic_space_times=SIMP(typ='TXM',fr= "List of time.",ang= "List of time.",docu= "",statut= "f",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -graphic_space_log=SIMP(typ='TXM',fr= "List of boolean.",ang= "List of boolean.",docu= "",statut= "f",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -), -model_True_applied_post_True_applied_graph_False=BLOC(condition="(model==True and applied_post==True and applied_graph==False)", -folder_output=SIMP(typ='TXM',fr= "Name of the forder where output is written.",ang= "Name of the forder where output is written.",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -study_name=SIMP(typ='TXM',fr= "Name of the computation.",ang= "Name of the computation.",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -model_reference_number=SIMP(typ='I',fr= "Reference number of the model in data-base",ang= "Reference number of the model in data-base",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -csv_output_file_name=SIMP(typ='TXM',fr= "define the output file name.",ang= "define the output file name.",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -job=SIMP(typ='TXM',fr= "type of treatement",ang= "type of treatement",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -solver_input_filename=SIMP(typ='TXM',fr= "Name of the input file given to the solver.",ang= "Name of the input file given to the solver.",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut='c_solver_stiff_ode_1d.input'), -computation_parameters=SIMP(typ='TXM',fr= "List of computation parameters.",ang= "List of computation parameters.",docu= "",statut= "o",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -computation_parameter_names=SIMP(typ='TXM',fr= "List of computation parameter names",ang= "List of computation parameter names",docu= "",statut= "o",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -non_Arrhenius_coef_names=SIMP(typ='TXM',fr= "List of parameters which do not follow Arrhenius law.",ang= "List of parameters which do not follow Arrhenius law.",docu= "",statut= "f",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -initial_value_names=SIMP(typ='TXM',fr= "List of the equations unkown parameter.",ang= "List of the equations unkown parameter.",docu= "",statut= "f",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -initial_values=SIMP(typ='TXM',fr= "List of the equations unkown initial values.",ang= "List of the equations unkown initial values.",docu= "",statut= "f",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -equation=SIMP(typ='TXM',fr= "List of equations number which is be used in the model.",ang= "List of equations number which is be used in the model.",docu= "",statut= "f",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -boundary_condition_nodes=SIMP(typ='TXM',fr= "List of nodes where the boundary conditions will be applied.",ang= "List of nodes where the boundary conditions will be applied.",docu= "",statut= "o",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -boundary_condition_parameter=SIMP(typ='TXM',fr= "List of species to whom the boundary conditions will be applied.",ang= "List of species to whom the boundary conditions will be applied.",docu= "",statut= "o",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -boundary_condition_types=SIMP(typ='TXM',fr= "List of type of boundary conditions.",ang= "List of type of boundary conditions.",docu= "",statut= "o",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -boundary_condition_values=SIMP(typ='TXM',fr= "List of values for the defiend boundary conditions.",ang= "List of values for the defiend boundary conditions.",docu= "",statut= "o",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -data_base=SIMP(typ='TXM',fr= "Name of the data base",ang= "Name of the data base",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -post_equations=SIMP(typ='TXM',fr= "List of post treatment equations.",ang= "List of post treatment equations.",docu= "",statut= "o",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -integrate=SIMP(typ='TXM',fr= "List of boolean which define if the equation have to be intergrated.",ang= "List of boolean which define if the equation have to be intergrated.",docu= "",statut= "o",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -post_treatment_names=SIMP(typ='TXM',fr= "List of post treatment names.",ang= "List of post treatment names.",docu= "",statut= "o",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -constant=SIMP(typ='TXM',fr= "List of cinetic parameter names.",ang= "List of cinetic parameter names.",docu= "",statut= "f",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -forced_param=SIMP(typ='TXM',fr= "List of cinetic parameter names with a different value than the one used for the solver computation.",ang= "List of cinetic parameter names with a different value than the one used for the solver computation.",docu= "",statut= "o",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -prerequisite=SIMP(typ='TXM',fr= "List of parameter list which are prerequisite for the post treatement equation.",ang= "List of parameter list which are prerequisite for the post treatement equation.",docu= "",statut= "o",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -Arrhenius_names_post=SIMP(typ='TXM',fr= "List of parameter names which follow Arrhenius law.",ang= "List of parameter names which follow Arrhenius law.",docu= "",statut= "f",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -Arrhenius_A=SIMP(typ='TXM',fr= "List of pre exponetial parameters for Arrhenius law.",ang= "List of pre exponetial parameters for Arrhenius law.",docu= "",statut= "f",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -Arrhenius_Ea=SIMP(typ='TXM',fr= "List of activation energy parameters for Arrhenius law.",ang= "List of activation energy parameters for Arrhenius law.",docu= "",statut= "f",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -), -model_True_applied_post_False_applied_graph_True=BLOC(condition="(model==True and applied_post==False and applied_graph==True)", -folder_output=SIMP(typ='TXM',fr= "Name of the forder where output is written.",ang= "Name of the forder where output is written.",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -study_name=SIMP(typ='TXM',fr= "Name of the computation.",ang= "Name of the computation.",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -model_reference_number=SIMP(typ='I',fr= "Reference number of the model in data-base",ang= "Reference number of the model in data-base",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -csv_output_file_name=SIMP(typ='TXM',fr= "define the output file name.",ang= "define the output file name.",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -job=SIMP(typ='TXM',fr= "type of treatement",ang= "type of treatement",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -solver_input_filename=SIMP(typ='TXM',fr= "Name of the input file given to the solver.",ang= "Name of the input file given to the solver.",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut='c_solver_stiff_ode_1d.input'), -computation_parameters=SIMP(typ='TXM',fr= "List of computation parameters.",ang= "List of computation parameters.",docu= "",statut= "o",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -computation_parameter_names=SIMP(typ='TXM',fr= "List of computation parameter names",ang= "List of computation parameter names",docu= "",statut= "o",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -non_Arrhenius_coef_names=SIMP(typ='TXM',fr= "List of parameters which do not follow Arrhenius law.",ang= "List of parameters which do not follow Arrhenius law.",docu= "",statut= "f",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -initial_value_names=SIMP(typ='TXM',fr= "List of the equations unkown parameter.",ang= "List of the equations unkown parameter.",docu= "",statut= "f",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -initial_values=SIMP(typ='TXM',fr= "List of the equations unkown initial values.",ang= "List of the equations unkown initial values.",docu= "",statut= "f",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -equation=SIMP(typ='TXM',fr= "List of equations number which is be used in the model.",ang= "List of equations number which is be used in the model.",docu= "",statut= "f",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -boundary_condition_nodes=SIMP(typ='TXM',fr= "List of nodes where the boundary conditions will be applied.",ang= "List of nodes where the boundary conditions will be applied.",docu= "",statut= "o",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -boundary_condition_parameter=SIMP(typ='TXM',fr= "List of species to whom the boundary conditions will be applied.",ang= "List of species to whom the boundary conditions will be applied.",docu= "",statut= "o",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -boundary_condition_types=SIMP(typ='TXM',fr= "List of type of boundary conditions.",ang= "List of type of boundary conditions.",docu= "",statut= "o",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -boundary_condition_values=SIMP(typ='TXM',fr= "List of values for the defiend boundary conditions.",ang= "List of values for the defiend boundary conditions.",docu= "",statut= "o",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -data_base=SIMP(typ='TXM',fr= "Name of the data base",ang= "Name of the data base",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -graphic_names=SIMP(typ='TXM',fr= "List of graphic names.",ang= "List of graphic names.",docu= "",statut= "f",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -graphic_nodes=SIMP(typ='TXM',fr= "List of nodes.",ang= "List of nodes.",docu= "",statut= "f",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -graphic_log=SIMP(typ='TXM',fr= "List of boolean.",ang= "List of boolean.",docu= "",statut= "f",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -experimental_graphic_name=SIMP(typ='TXM',fr= "List of graphic names.",ang= "List of graphic names.",docu= "",statut= "f",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -experimental_name=SIMP(typ='TXM',fr= "List of experimental data names.",ang= "List of experimental data names.",docu= "",statut= "f",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -experimental_file=SIMP(typ='TXM',fr= "List of experimental data files.",ang= "List of experimental data files.",docu= "",statut= "f",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -graphic_space_names=SIMP(typ='TXM',fr= "List of graphic names.",ang= "List of graphic names.",docu= "",statut= "f",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -graphic_space_nodes=SIMP(typ='TXM',fr= "List of nodes.",ang= "List of nodes.",docu= "",statut= "f",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -graphic_space_times=SIMP(typ='TXM',fr= "List of time.",ang= "List of time.",docu= "",statut= "f",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -graphic_space_log=SIMP(typ='TXM',fr= "List of boolean.",ang= "List of boolean.",docu= "",statut= "f",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -), -model_True_applied_post_False_applied_graph_False=BLOC(condition="(model==True and applied_post==False and applied_graph==False)", -folder_output=SIMP(typ='TXM',fr= "Name of the forder where output is written.",ang= "Name of the forder where output is written.",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -study_name=SIMP(typ='TXM',fr= "Name of the computation.",ang= "Name of the computation.",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -model_reference_number=SIMP(typ='I',fr= "Reference number of the model in data-base",ang= "Reference number of the model in data-base",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -csv_output_file_name=SIMP(typ='TXM',fr= "define the output file name.",ang= "define the output file name.",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -job=SIMP(typ='TXM',fr= "type of treatement",ang= "type of treatement",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -solver_input_filename=SIMP(typ='TXM',fr= "Name of the input file given to the solver.",ang= "Name of the input file given to the solver.",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut='c_solver_stiff_ode_1d.input'), -computation_parameters=SIMP(typ='TXM',fr= "List of computation parameters.",ang= "List of computation parameters.",docu= "",statut= "o",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -computation_parameter_names=SIMP(typ='TXM',fr= "List of computation parameter names",ang= "List of computation parameter names",docu= "",statut= "o",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -non_Arrhenius_coef_names=SIMP(typ='TXM',fr= "List of parameters which do not follow Arrhenius law.",ang= "List of parameters which do not follow Arrhenius law.",docu= "",statut= "f",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -initial_value_names=SIMP(typ='TXM',fr= "List of the equations unkown parameter.",ang= "List of the equations unkown parameter.",docu= "",statut= "f",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -initial_values=SIMP(typ='TXM',fr= "List of the equations unkown initial values.",ang= "List of the equations unkown initial values.",docu= "",statut= "f",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -equation=SIMP(typ='TXM',fr= "List of equations number which is be used in the model.",ang= "List of equations number which is be used in the model.",docu= "",statut= "f",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -boundary_condition_nodes=SIMP(typ='TXM',fr= "List of nodes where the boundary conditions will be applied.",ang= "List of nodes where the boundary conditions will be applied.",docu= "",statut= "o",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -boundary_condition_parameter=SIMP(typ='TXM',fr= "List of species to whom the boundary conditions will be applied.",ang= "List of species to whom the boundary conditions will be applied.",docu= "",statut= "o",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -boundary_condition_types=SIMP(typ='TXM',fr= "List of type of boundary conditions.",ang= "List of type of boundary conditions.",docu= "",statut= "o",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -boundary_condition_values=SIMP(typ='TXM',fr= "List of values for the defiend boundary conditions.",ang= "List of values for the defiend boundary conditions.",docu= "",statut= "o",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -data_base=SIMP(typ='TXM',fr= "Name of the data base",ang= "Name of the data base",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -), -model_False_applied_post_True_applied_graph_True=BLOC(condition="(model==False and applied_post==True and applied_graph==True)", -post_equations=SIMP(typ='TXM',fr= "List of post treatment equations.",ang= "List of post treatment equations.",docu= "",statut= "o",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -integrate=SIMP(typ='TXM',fr= "List of boolean which define if the equation have to be intergrated.",ang= "List of boolean which define if the equation have to be intergrated.",docu= "",statut= "o",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -post_treatment_names=SIMP(typ='TXM',fr= "List of post treatment names.",ang= "List of post treatment names.",docu= "",statut= "o",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -constant=SIMP(typ='TXM',fr= "List of cinetic parameter names.",ang= "List of cinetic parameter names.",docu= "",statut= "f",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -forced_param=SIMP(typ='TXM',fr= "List of cinetic parameter names with a different value than the one used for the solver computation.",ang= "List of cinetic parameter names with a different value than the one used for the solver computation.",docu= "",statut= "o",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -prerequisite=SIMP(typ='TXM',fr= "List of parameter list which are prerequisite for the post treatement equation.",ang= "List of parameter list which are prerequisite for the post treatement equation.",docu= "",statut= "o",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -Arrhenius_names_post=SIMP(typ='TXM',fr= "List of parameter names which follow Arrhenius law.",ang= "List of parameter names which follow Arrhenius law.",docu= "",statut= "f",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -Arrhenius_A=SIMP(typ='TXM',fr= "List of pre exponetial parameters for Arrhenius law.",ang= "List of pre exponetial parameters for Arrhenius law.",docu= "",statut= "f",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -Arrhenius_Ea=SIMP(typ='TXM',fr= "List of activation energy parameters for Arrhenius law.",ang= "List of activation energy parameters for Arrhenius law.",docu= "",statut= "f",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -folder_output=SIMP(typ='TXM',fr= "Name of the forder where output is written.",ang= "Name of the forder where output is written.",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -study_name=SIMP(typ='TXM',fr= "Name of the computation.",ang= "Name of the computation.",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -graphic_names=SIMP(typ='TXM',fr= "List of graphic names.",ang= "List of graphic names.",docu= "",statut= "f",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -graphic_nodes=SIMP(typ='TXM',fr= "List of nodes.",ang= "List of nodes.",docu= "",statut= "f",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -graphic_log=SIMP(typ='TXM',fr= "List of boolean.",ang= "List of boolean.",docu= "",statut= "f",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -experimental_graphic_name=SIMP(typ='TXM',fr= "List of graphic names.",ang= "List of graphic names.",docu= "",statut= "f",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -experimental_name=SIMP(typ='TXM',fr= "List of experimental data names.",ang= "List of experimental data names.",docu= "",statut= "f",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -experimental_file=SIMP(typ='TXM',fr= "List of experimental data files.",ang= "List of experimental data files.",docu= "",statut= "f",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -graphic_space_names=SIMP(typ='TXM',fr= "List of graphic names.",ang= "List of graphic names.",docu= "",statut= "f",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -graphic_space_nodes=SIMP(typ='TXM',fr= "List of nodes.",ang= "List of nodes.",docu= "",statut= "f",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -graphic_space_times=SIMP(typ='TXM',fr= "List of time.",ang= "List of time.",docu= "",statut= "f",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -graphic_space_log=SIMP(typ='TXM',fr= "List of boolean.",ang= "List of boolean.",docu= "",statut= "f",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -), -model_False_applied_post_True_applied_graph_False=BLOC(condition="(model==False and applied_post==True and applied_graph==False)", -folder_output=SIMP(typ='TXM',fr= "Name of the forder where output is written.",ang= "Name of the forder where output is written.",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -study_name=SIMP(typ='TXM',fr= "Name of the computation.",ang= "Name of the computation.",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -model_reference_number=SIMP(typ='I',fr= "Reference number of the model in data-base",ang= "Reference number of the model in data-base",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -csv_output_file_name=SIMP(typ='TXM',fr= "define the output file name.",ang= "define the output file name.",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -post_equations=SIMP(typ='TXM',fr= "List of post treatment equations.",ang= "List of post treatment equations.",docu= "",statut= "o",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -integrate=SIMP(typ='TXM',fr= "List of boolean which define if the equation have to be intergrated.",ang= "List of boolean which define if the equation have to be intergrated.",docu= "",statut= "o",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -post_treatment_names=SIMP(typ='TXM',fr= "List of post treatment names.",ang= "List of post treatment names.",docu= "",statut= "o",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -constant=SIMP(typ='TXM',fr= "List of cinetic parameter names.",ang= "List of cinetic parameter names.",docu= "",statut= "f",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -forced_param=SIMP(typ='TXM',fr= "List of cinetic parameter names with a different value than the one used for the solver computation.",ang= "List of cinetic parameter names with a different value than the one used for the solver computation.",docu= "",statut= "o",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -prerequisite=SIMP(typ='TXM',fr= "List of parameter list which are prerequisite for the post treatement equation.",ang= "List of parameter list which are prerequisite for the post treatement equation.",docu= "",statut= "o",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -Arrhenius_names_post=SIMP(typ='TXM',fr= "List of parameter names which follow Arrhenius law.",ang= "List of parameter names which follow Arrhenius law.",docu= "",statut= "f",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -Arrhenius_A=SIMP(typ='TXM',fr= "List of pre exponetial parameters for Arrhenius law.",ang= "List of pre exponetial parameters for Arrhenius law.",docu= "",statut= "f",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -Arrhenius_Ea=SIMP(typ='TXM',fr= "List of activation energy parameters for Arrhenius law.",ang= "List of activation energy parameters for Arrhenius law.",docu= "",statut= "f",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -data_base=SIMP(typ='TXM',fr= "Name of the data base",ang= "Name of the data base",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -), -model_False_applied_post_False_applied_graph_True=BLOC(condition="(model==False and applied_post==False and applied_graph==True)", -folder_output=SIMP(typ='TXM',fr= "Name of the forder where output is written.",ang= "Name of the forder where output is written.",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -study_name=SIMP(typ='TXM',fr= "Name of the computation.",ang= "Name of the computation.",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -graphic_names=SIMP(typ='TXM',fr= "List of graphic names.",ang= "List of graphic names.",docu= "",statut= "f",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -graphic_nodes=SIMP(typ='TXM',fr= "List of nodes.",ang= "List of nodes.",docu= "",statut= "f",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -graphic_log=SIMP(typ='TXM',fr= "List of boolean.",ang= "List of boolean.",docu= "",statut= "f",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -experimental_graphic_name=SIMP(typ='TXM',fr= "List of graphic names.",ang= "List of graphic names.",docu= "",statut= "f",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -experimental_name=SIMP(typ='TXM',fr= "List of experimental data names.",ang= "List of experimental data names.",docu= "",statut= "f",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -experimental_file=SIMP(typ='TXM',fr= "List of experimental data files.",ang= "List of experimental data files.",docu= "",statut= "f",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -graphic_space_names=SIMP(typ='TXM',fr= "List of graphic names.",ang= "List of graphic names.",docu= "",statut= "f",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -graphic_space_nodes=SIMP(typ='TXM',fr= "List of nodes.",ang= "List of nodes.",docu= "",statut= "f",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -graphic_space_times=SIMP(typ='TXM',fr= "List of time.",ang= "List of time.",docu= "",statut= "f",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -graphic_space_log=SIMP(typ='TXM',fr= "List of boolean.",ang= "List of boolean.",docu= "",statut= "f",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -), -model_False_applied_post_False_applied_graph_False=BLOC(condition="(model==False and applied_post==False and applied_graph==False)", -folder_output=SIMP(typ='TXM',fr= "Name of the forder where output is written.",ang= "Name of the forder where output is written.",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -study_name=SIMP(typ='TXM',fr= "Name of the computation.",ang= "Name of the computation.",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -graphic_names=SIMP(typ='TXM',fr= "List of graphic names.",ang= "List of graphic names.",docu= "",statut= "f",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -graphic_nodes=SIMP(typ='TXM',fr= "List of nodes.",ang= "List of nodes.",docu= "",statut= "f",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -graphic_log=SIMP(typ='TXM',fr= "List of boolean.",ang= "List of boolean.",docu= "",statut= "f",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -experimental_graphic_name=SIMP(typ='TXM',fr= "List of graphic names.",ang= "List of graphic names.",docu= "",statut= "f",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -experimental_name=SIMP(typ='TXM',fr= "List of experimental data names.",ang= "List of experimental data names.",docu= "",statut= "f",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -experimental_file=SIMP(typ='TXM',fr= "List of experimental data files.",ang= "List of experimental data files.",docu= "",statut= "f",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -graphic_space_names=SIMP(typ='TXM',fr= "List of graphic names.",ang= "List of graphic names.",docu= "",statut= "f",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -graphic_space_nodes=SIMP(typ='TXM',fr= "List of nodes.",ang= "List of nodes.",docu= "",statut= "f",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -graphic_space_times=SIMP(typ='TXM',fr= "List of time.",ang= "List of time.",docu= "",statut= "f",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -graphic_space_log=SIMP(typ='TXM',fr= "List of boolean.",ang= "List of boolean.",docu= "",statut= "f",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -), -) -# ====================================================================== -# Catalog entry for the MAP function : c_image_3d_altitude_thickness -# ====================================================================== -C_IMAGE_3D_ALTITUDE_THICKNESS_DATA=PROC(nom='C_IMAGE_3D_ALTITUDE_THICKNESS_DATA',op=None, -UIinfo ={'groupes':('image',)}, -calculation=SIMP(typ='TXM',fr= "The calculation type",ang= "The calculation type",docu= "",statut= "o",into=['altitude', 'thickness'],min=1,max=1,val_min='**',val_max='**',defaut='altitude'), -calculation_altitude=BLOC(condition="(calculation=='altitude')", -direction=SIMP(typ='I',fr= "The direction type",ang= "The direction type",docu= "",statut= "o",into=[1, -1, 2, -2, 3, -3],min=1,max=1,val_min='**',val_max='**',defaut=1), -input_grid_field_raw=SIMP(typ=('Fichier', 'All Files (*)'),fr= "field data file",ang= "field data file",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -input_grid_field_raw_metadata=SIMP(typ=('Fichier', 'All Files (*)'),fr= "field metadata file",ang= "field metadata file",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -output_grid_field_csv=SIMP(typ=('Fichier', 'All Files ()', 'Sauvegarde'),fr= "CVS formated grid",ang= "CVS formated grid",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -output_grid_field_csv_metadata=SIMP(typ=('Fichier', 'All Files ()', 'Sauvegarde'),fr= "CVS formated grid metadata",ang= "CVS formated grid metadata",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -output_grid_field_pgm=SIMP(typ=('Fichier', 'All Files ()', 'Sauvegarde'),fr= "PGM file containing the 3d image",ang= "PGM file containing the 3d image",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -), -calculation_thickness=BLOC(condition="(calculation=='thickness')", -direction=SIMP(typ='I',fr= "The direction type",ang= "The direction type",docu= "",statut= "o",into=[1, -1, 2, -2, 3, -3],min=1,max=1,val_min='**',val_max='**',defaut=1), -input_grid_field_raw=SIMP(typ=('Fichier', 'All Files (*)'),fr= "field data file",ang= "field data file",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -input_grid_field_raw_metadata=SIMP(typ=('Fichier', 'All Files (*)'),fr= "field metadata file",ang= "field metadata file",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -output_grid_field_csv=SIMP(typ=('Fichier', 'All Files ()', 'Sauvegarde'),fr= "CVS formated grid",ang= "CVS formated grid",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -output_grid_field_csv_metadata=SIMP(typ=('Fichier', 'All Files ()', 'Sauvegarde'),fr= "CVS formated grid metadata",ang= "CVS formated grid metadata",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -output_grid_field_pgm=SIMP(typ=('Fichier', 'All Files ()', 'Sauvegarde'),fr= "PGM file containing the 3d image",ang= "PGM file containing the 3d image",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -alt_min=SIMP(typ='I',fr= "The minimum altitude",ang= "The minimum altitude",docu= "",statut= "f",into=None,min=1,max=1,val_min=0,val_max='**',defaut=None), -alt_max=SIMP(typ='I',fr= "The maximum altitude",ang= "The maximum altitude",docu= "",statut= "f",into=None,min=1,max=1,val_min=0,val_max='**',defaut=None), -), -) -# ====================================================================== -# Catalog entry for the MAP function : c_image_2d_inclusion_statistics -# ====================================================================== -C_IMAGE_2D_INCLUSION_STATISTICS_DATA=PROC(nom='C_IMAGE_2D_INCLUSION_STATISTICS_DATA',op=None, -UIinfo ={'groupes':('image',)}, -image_name=SIMP(typ=('Fichier', 'All Files (*)'),fr= "pathname of the file of input image",ang= "pathname of the file of input image",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -border_inclusion_option=SIMP(typ='I',fr= "0 : border inclusion area is doubled and their center of mass is set at the boundary, 1 : no special treatment for border inclusion, 2 : border inclusions are discarded",ang= "0 : border inclusion area is doubled and their center of mass is set at the boundary, 1 : no special treatment for border inclusion, 2 : border inclusions are discarded",docu= "",statut= "f",into=[0, 1, 2],min=1,max=1,val_min='**',val_max='**',defaut=0), -output_prefix=SIMP(typ='TXM',fr= "Prefix appended before the output file name",ang= "Prefix appended before the output file name",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=''), -output_suffix=SIMP(typ='TXM',fr= "Suffix appended after the output file name",ang= "Suffix appended after the output file name",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=''), -output_directory=SIMP(typ='Repertoire',fr= "path where each output file is written",ang= "path where each output file is written",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut='refs'), -) -# ====================================================================== -# Catalog entry for the MAP function : c_pre_polymer_data_management -# ====================================================================== -C_PRE_POLYMER_DATA_MANAGEMENT_DATA=PROC(nom='C_PRE_POLYMER_DATA_MANAGEMENT_DATA',op=None, -UIinfo ={'groupes':('pre',)}, -gui=SIMP(typ=bool,fr= "Determines if component dedicated GUI is launched.",ang= "Determines if component dedicated GUI is launched.",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=False), -folder_output=SIMP(typ='TXM',fr= "Determines the name of the output folder",ang= "Determines the name of the output folder",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -model=SIMP(typ=bool,fr= "Determines if model if modified.",ang= "Determines if model if modified.",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -study_name=SIMP(typ='TXM',fr= "Determines the study name.",ang= "Determines the study name.",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -job=SIMP(typ='TXM',fr= "Name of the study ?",ang= "Name of the study ?",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -data_base=SIMP(typ='TXM',fr= "Name of the data base ?",ang= "Name of the data base ?",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -comments=SIMP(typ='TXM',fr= "Comments to precise the nature of the study",ang= "Comments to precise the nature of the study",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -comment=SIMP(typ='TXM',fr= "Comments to precise the nature of the study",ang= "Comments to precise the nature of the study",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -model_reference_number=SIMP(typ='I',fr= "Reference number of the model in data-base",ang= "Reference number of the model in data-base",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -model_name=SIMP(typ='TXM',fr= "Model name.",ang= "Model name.",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -solver_input_filename=SIMP(typ='TXM',fr= "Name of the input file given to the solver.",ang= "Name of the input file given to the solver.",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut='c_solver_stiff_ode_1d.input'), -applied_post=SIMP(typ=bool,fr= "Determines if a post treatement input will be created.",ang= "Determines if a post treatement input will be created.",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -model_num=SIMP(typ='TXM',fr= "Reference number of the post treatement model in data-base.",ang= "Reference number of the post treatement model in data-base.",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -doc=SIMP(typ='TXM',fr= "reference document name.",ang= "reference document name.",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -post_treatement=SIMP(typ=bool,fr= "Determines if post treatement will be ask.",ang= "Determines if post treatement will be ask.",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=False), -chemical_reaction_representation=SIMP(typ='TXM',fr= "Textual representation of chemical reaction.",ang= "Textual representation of chemical reaction.",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -backup=SIMP(typ=bool,fr= "Set True if you want to edit data-base into an ASCII text file.",ang= "Set True if you want to edit data-base into an ASCII text file.",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -equation_add=SIMP(typ='TXM',fr= "List of equations number which will be add in the model.",ang= "List of equations number which will be add in the model.",docu= "",statut= "f",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -equation_removed=SIMP(typ='TXM',fr= "List of equations number which will be removed from the model.",ang= "List of equations number which will be removed from the model.",docu= "",statut= "f",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -diffusion=SIMP(typ='TXM',fr= "Determines if the diffusion is taken into account by the model.",ang= "Determines if the diffusion is taken into account by the model.",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -diffusion_removed=SIMP(typ='TXM',fr= "List of the equations unkown parameter name from which the diffusion ability has been removed form the inital model.",ang= "List of the equations unkown parameter name from which the diffusion ability has been removed form the inital model.",docu= "",statut= "f",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -material_name=SIMP(typ='TXM',fr= "Material simulated by the model.",ang= "Material simulated by the model.",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -ageing_type=SIMP(typ='TXM',fr= "Aging type simulated by the model.",ang= "Aging type simulated by the model.",docu= "",statut= "f",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -technical_use=SIMP(typ='TXM',fr= "Determines the technical use for which the model has been developped.",ang= "Determines the technical use for which the model has been developped.",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -EDF=SIMP(typ='TXM',fr= "Determines if the model has been developped for EDF.",ang= "Determines if the model has been developped for EDF.",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -modification_representation=SIMP(typ='TXM',fr= "Modifed textual representation of chemical reaction.",ang= "Modifed textual representation of chemical reaction.",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -reaction_type=SIMP(typ='TXM',fr= "List of reaction type which use this chemical reaction.",ang= "List of reaction type which use this chemical reaction.",docu= "",statut= "f",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -aging_type=SIMP(typ='TXM',fr= "List of aging type which use this chemical reaction.",ang= "List of aging type which use this chemical reaction.",docu= "",statut= "f",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -reactants=SIMP(typ='TXM',fr= "List of chemical reactants used in this chemical reaction.",ang= "List of chemical reactants used in this chemical reaction.",docu= "",statut= "f",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -reactants_add=SIMP(typ='TXM',fr= "List of chemical reactants added in this chemical reaction.",ang= "List of chemical reactants added in this chemical reaction.",docu= "",statut= "f",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -reactants_removed=SIMP(typ='TXM',fr= "List of chemical reactants removed in this chemical reaction.",ang= "List of chemical reactants removed in this chemical reaction.",docu= "",statut= "f",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -solubility_name=SIMP(typ='TXM',fr= "List of the equations unkown parameter name for which the solubility parameter have to be calculated from the aging parameter.",ang= "List of the equations unkown parameter name for which the solubility parameter have to be calculated from the aging parameter.",docu= "",statut= "f",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -solubility=SIMP(typ='TXM',fr= "List of solubility parameter.",ang= "List of solubility parameter.",docu= "",statut= "f",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -evaporation=SIMP(typ='TXM',fr= "Determines if the evaporation is taken into account by the model.",ang= "Determines if the evaporation is taken into account by the model.",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -constant_names=SIMP(typ='TXM',fr= "List of cinetic parameter names.",ang= "List of cinetic parameter names.",docu= "",statut= "f",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -constant_names_add=SIMP(typ='TXM',fr= "List of cinetic parameter names which will be add.",ang= "List of cinetic parameter names which will be add.",docu= "",statut= "f",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -constant_names_removed=SIMP(typ='TXM',fr= "List of cinetic parameter names which has been removed.",ang= "List of cinetic parameter names which has been removed.",docu= "",statut= "f",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -Arrhenius=SIMP(typ='TXM',fr= "Determines if the cinetic parameter follows Arrhenius law.",ang= "Determines if the cinetic parameter follows Arrhenius law.",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -Arrhenius_add=SIMP(typ='TXM',fr= "List of cinetic parameter names which follows the Arrhenius law.",ang= "List of cinetic parameter names which follows the Arrhenius law.",docu= "",statut= "f",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -stabilizer=SIMP(typ='TXM',fr= "Determines if the stabilisation is taken into account by the model.",ang= "Determines if the stabilisation is taken into account by the model.",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -arrhenius=SIMP(typ='TXM',fr= "Determines if the cinetic parameter follows Arrhenius law.",ang= "Determines if the cinetic parameter follows Arrhenius law.",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -non_Arrhenius_coef_names=SIMP(typ='TXM',fr= "List of cinetic parameter names which will be add.",ang= "List of cinetic parameter names which will be add.",docu= "",statut= "f",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -non_Arrhenius_coefs=SIMP(typ='TXM',fr= "List of cinetic parameter which will be add.",ang= "List of cinetic parameter which will be add.",docu= "",statut= "f",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -Arrhenius_names=SIMP(typ='TXM',fr= "Determines if the cinetic parameter follows Arrhenius law.",ang= "Determines if the cinetic parameter follows Arrhenius law.",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -Arrhenius_A=SIMP(typ='TXM',fr= "Determines if pre exponantial factor.",ang= "Determines if pre exponantial factor.",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -Arrhenius_Ea=SIMP(typ='TXM',fr= "Determines if activation energy factor.",ang= "Determines if activation energy factor.",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -equation_addition=SIMP(typ='TXM',fr= "new eqaution.",ang= "new eqaution.",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -add_equation=SIMP(typ='TXM',fr= "new eqaution.",ang= "new eqaution.",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -constituant=SIMP(typ='TXM',fr= "List of post treatment equations parameters names.",ang= "List of post treatment equations parameters names.",docu= "",statut= "f",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -name=SIMP(typ='TXM',fr= "post treatment name.",ang= "post treatment name.",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -post_equation=SIMP(typ='TXM',fr= "List of post treatment equations.",ang= "List of post treatment equations.",docu= "",statut= "f",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -calculation_results=SIMP(typ='TXM',fr= "List of post treatment equations symbol.",ang= "List of post treatment equations symbol.",docu= "",statut= "f",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -results_units=SIMP(typ='TXM',fr= "List of post treatment equations units.",ang= "List of post treatment equations units.",docu= "",statut= "f",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -remove_equations=SIMP(typ='TXM',fr= "List of post treatment equations which has been removed.",ang= "List of post treatment equations which has been removed.",docu= "",statut= "f",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -remove_calculation_results=SIMP(typ='TXM',fr= "List of post treatment equations symbol which has been removed.",ang= "List of post treatment equations symbol which has been removed.",docu= "",statut= "f",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -remove_results_units=SIMP(typ='TXM',fr= "List of post treatment equations units which has been removed.",ang= "List of post treatment equations units which has been removed.",docu= "",statut= "f",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -integrate=SIMP(typ='TXM',fr= "List of boolean which define if the equation have to be intergrated.",ang= "List of boolean which define if the equation have to be intergrated.",docu= "",statut= "f",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -post_treatment_names=SIMP(typ='TXM',fr= "List of post treatment names.",ang= "List of post treatment names.",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -constant=SIMP(typ='TXM',fr= "List of cinetic parameter names.",ang= "List of cinetic parameter names.",docu= "",statut= "f",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -forced_param=SIMP(typ='TXM',fr= "List of cinetic parameter names with a different value than the one used for the solver computation.",ang= "List of cinetic parameter names with a different value than the one used for the solver computation.",docu= "",statut= "f",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -prerequisite=SIMP(typ='TXM',fr= "List of parameter list which are prerequisite for the post treatement equation.",ang= "List of parameter list which are prerequisite for the post treatement equation.",docu= "",statut= "f",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -remove_prerequisite=SIMP(typ='TXM',fr= "List of parameter list which are prerequisite for the post treatement equation has been removed.",ang= "List of parameter list which are prerequisite for the post treatement equation has been removed.",docu= "",statut= "f",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -type=SIMP(typ='TXM',fr= "List of type post treatement types.",ang= "List of type post treatement types.",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -remove_constituant=SIMP(typ='TXM',fr= "List of post treatment equations parameters names which has been removed.",ang= "List of post treatment equations parameters names which has been removed.",docu= "",statut= "f",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -Arrhenius_names_post=SIMP(typ='TXM',fr= "List of parameter names which follow Arrhenius law.",ang= "List of parameter names which follow Arrhenius law.",docu= "",statut= "f",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -const_cine_nom=SIMP(typ='TXM',fr= "List of parameter names which not follow Arrhenius law.",ang= "List of parameter names which not follow Arrhenius law.",docu= "",statut= "f",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -remove_arrhenius=SIMP(typ='TXM',fr= "List of parameter names which follow Arrhenius law which has been removed.",ang= "List of parameter names which follow Arrhenius law which has been removed.",docu= "",statut= "f",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -remove_const_cine_nom=SIMP(typ='TXM',fr= "List of parameter names which not follow Arrhenius law which has been removed.",ang= "List of parameter names which not follow Arrhenius law which has been removed.",docu= "",statut= "f",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -post_equations=SIMP(typ='TXM',fr= "List of post treatment equations.",ang= "List of post treatment equations.",docu= "",statut= "f",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -) -# ====================================================================== -# Catalog entry for the MAP function : c_post_distribution_properties -# ====================================================================== -C_POST_DISTRIBUTION_PROPERTIES_DATA=PROC(nom='C_POST_DISTRIBUTION_PROPERTIES_DATA',op=None, -UIinfo ={'groupes':('post',)}, -post=SIMP(typ='TXM',fr= "the value must be included into the following list: CDF (Cumulative Density Function), PDF (Probability Density Function), dgb (distance to grain boundary graph : needs a distance_grain_boundary column in the data file), quantification (computes the optimised distribution in a family of distributions and estimates its parameter)",ang= "the value must be included into the following list: CDF (Cumulative Density Function), PDF (Probability Density Function), dgb (distance to grain boundary graph : needs a distance_grain_boundary column in the data file), quantification (computes the optimised distribution in a family of distributions and estimates its parameter)",docu= "",statut= "o",into=['CDF', 'PDF', 'dgb', 'quantification'],min=1,max=1,val_min='**',val_max='**',defaut='PDF'), -post_CDF=BLOC(condition="(post=='CDF')", -variable_name=SIMP(typ='TXM',fr= "must be the name of one of the columns of the csv file whose name is given by input_grid_field_csv_name",ang= "must be the name of one of the columns of the csv file whose name is given by input_grid_field_csv_name",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -interactive=SIMP(typ=bool,fr= "True -> an interactive window appears when graphs are created.False -> no window.name of the output file of the component",ang= "True -> an interactive window appears when graphs are created.False -> no window.name of the output file of the component",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=False), -input_grid_field_csv_file_name=SIMP(typ=('Fichier', 'All Files (*)'),fr= "name of the csv format input file (grid_field data read by the component)",ang= "name of the csv format input file (grid_field data read by the component)",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -input_grid_field_csv_metadata_file_name=SIMP(typ=('Fichier', 'All Files (*)'),fr= "name of the metadata format input file (grid_field data read by the component)",ang= "name of the metadata format input file (grid_field data read by the component)",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -output_distribution_properties_text_file_name=SIMP(typ=('Fichier', 'All Files ()', 'Sauvegarde'),fr= "gives the name of the output file of the component",ang= "gives the name of the output file of the component",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut='c_post_distribution_properties.output.csv'), -output_distribution_properties_png_file_name=SIMP(typ=('Fichier', 'All Files ()', 'Sauvegarde'),fr= "gives the name of the output file of the component",ang= "gives the name of the output file of the component",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut='c_post_distribution_properties.output.png'), -), -post_PDF=BLOC(condition="(post=='PDF')", -variable_name=SIMP(typ='TXM',fr= "must be the name of one of the columns of the csv file whose name is given by input_grid_field_csv_name",ang= "must be the name of one of the columns of the csv file whose name is given by input_grid_field_csv_name",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -interactive=SIMP(typ=bool,fr= "True -> an interactive window appears when graphs are created.False -> no window.name of the output file of the component",ang= "True -> an interactive window appears when graphs are created.False -> no window.name of the output file of the component",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=False), -input_grid_field_csv_file_name=SIMP(typ=('Fichier', 'All Files (*)'),fr= "name of the csv format input file (grid_field data read by the component)",ang= "name of the csv format input file (grid_field data read by the component)",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -input_grid_field_csv_metadata_file_name=SIMP(typ=('Fichier', 'All Files (*)'),fr= "name of the metadata format input file (grid_field data read by the component)",ang= "name of the metadata format input file (grid_field data read by the component)",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -output_distribution_properties_text_file_name=SIMP(typ=('Fichier', 'All Files ()', 'Sauvegarde'),fr= "gives the name of the output file of the component",ang= "gives the name of the output file of the component",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut='c_post_distribution_properties.output.csv'), -output_distribution_properties_png_file_name=SIMP(typ=('Fichier', 'All Files ()', 'Sauvegarde'),fr= "gives the name of the output file of the component",ang= "gives the name of the output file of the component",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut='c_post_distribution_properties.output.png'), -), -post_dgb=BLOC(condition="(post=='dgb')", -variable_name=SIMP(typ='TXM',fr= "must be the name of one of the columns of the csv file whose name is given by input_grid_field_csv_name",ang= "must be the name of one of the columns of the csv file whose name is given by input_grid_field_csv_name",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -interactive=SIMP(typ=bool,fr= "True -> an interactive window appears when graphs are created.False -> no window.name of the output file of the component",ang= "True -> an interactive window appears when graphs are created.False -> no window.name of the output file of the component",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=False), -input_grid_field_csv_file_name=SIMP(typ=('Fichier', 'All Files (*)'),fr= "name of the csv format input file (grid_field data read by the component)",ang= "name of the csv format input file (grid_field data read by the component)",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -input_grid_field_csv_metadata_file_name=SIMP(typ=('Fichier', 'All Files (*)'),fr= "name of the metadata format input file (grid_field data read by the component)",ang= "name of the metadata format input file (grid_field data read by the component)",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -output_distribution_properties_text_file_name=SIMP(typ=('Fichier', 'All Files ()', 'Sauvegarde'),fr= "gives the name of the output file of the component",ang= "gives the name of the output file of the component",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut='c_post_distribution_properties.output.csv'), -output_distribution_properties_png_file_name=SIMP(typ=('Fichier', 'All Files ()', 'Sauvegarde'),fr= "gives the name of the output file of the component",ang= "gives the name of the output file of the component",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut='c_post_distribution_properties.output.png'), -), -post_quantification=BLOC(condition="(post=='quantification')", -variable_name=SIMP(typ='TXM',fr= "must be the name of one of the columns of the csv file whose name is given by input_grid_field_csv_name",ang= "must be the name of one of the columns of the csv file whose name is given by input_grid_field_csv_name",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -interactive=SIMP(typ=bool,fr= "True -> an interactive window appears when graphs are created.False -> no window.name of the output file of the component",ang= "True -> an interactive window appears when graphs are created.False -> no window.name of the output file of the component",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=False), -input_grid_field_csv_file_name=SIMP(typ=('Fichier', 'All Files (*)'),fr= "name of the csv format input file (grid_field data read by the component)",ang= "name of the csv format input file (grid_field data read by the component)",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -input_grid_field_csv_metadata_file_name=SIMP(typ=('Fichier', 'All Files (*)'),fr= "name of the metadata format input file (grid_field data read by the component)",ang= "name of the metadata format input file (grid_field data read by the component)",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -output_distribution_properties_text_file_name=SIMP(typ=('Fichier', 'All Files ()', 'Sauvegarde'),fr= "gives the name of the output file of the component",ang= "gives the name of the output file of the component",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut='c_post_distribution_properties.output.csv'), -output_distribution_properties_png_file_name=SIMP(typ=('Fichier', 'All Files ()', 'Sauvegarde'),fr= "gives the name of the output file of the component",ang= "gives the name of the output file of the component",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut='c_post_distribution_properties.output.png'), -quantification_options=SIMP(typ='TXM',fr= "this parameter is optional, it is only read in the case where post=quantification. This parameter is given as an enumeration of strings included into the following enumeration : Normal, Weibull, Lognormal, Gamma, Beta, Exponential, Gumbel, Truncatednormal. If the parameter is missing or empty then it is set by default as: Normal, Weibull, Gamma, Beta.",ang= "this parameter is optional, it is only read in the case where post=quantification. This parameter is given as an enumeration of strings included into the following enumeration : Normal, Weibull, Lognormal, Gamma, Beta, Exponential, Gumbel, Truncatednormal. If the parameter is missing or empty then it is set by default as: Normal, Weibull, Gamma, Beta.",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -), -) -# ====================================================================== -# Catalog entry for the MAP function : c_post_poly_chaos -# ====================================================================== -C_POST_POLY_CHAOS_DATA=PROC(nom='C_POST_POLY_CHAOS_DATA',op=None, -UIinfo ={'groupes':('post',)}, -random_seed=SIMP(typ='I',fr= "Random seed",ang= "Random seed",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -input_sample=SIMP(typ=('Fichier', 'All Files (*)'),fr= "csv or xml input filename",ang= "csv or xml input filename",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -output_sample=SIMP(typ=('Fichier', 'All Files (*)'),fr= "csv or xml output filename",ang= "csv or xml output filename",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -distributions=SIMP(typ='TXM',fr= "Distribution of each input parameter",ang= "Distribution of each input parameter",docu= "",statut= "f",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -polynomial_degree=SIMP(typ='I',fr= "Polynomial degree for PCE",ang= "Polynomial degree for PCE",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -truncature_method=SIMP(typ='R',fr= "Degree of quasi-norm used to retain PCE coefs",ang= "Degree of quasi-norm used to retain PCE coefs",docu= "",statut= "f",into=None,min=1,max=1,val_min=0,val_max=1,defaut=1), -coefficient_computation_method=SIMP(typ='TXM',fr= "Coefficient computation method",ang= "Coefficient computation method",docu= "",statut= "f",into=['LAR', 'OLS'],min=1,max=1,val_min='**',val_max='**',defaut='LAR'), -validation_percentage=SIMP(typ='R',fr= "Input sample percentage used for validation",ang= "Input sample percentage used for validation",docu= "",statut= "o",into=None,min=1,max=1,val_min=5,val_max=50,defaut=None), -validation_graphic=SIMP(typ=bool,fr= "Validation graphics printing",ang= "Validation graphics printing",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -metamodel_sample_size=SIMP(typ='I',fr= "Sample size for metamodel",ang= "Sample size for metamodel",docu= "",statut= "f",into=None,min=1,max=1,val_min=0,val_max='**',defaut=None), -csv_metamodel_sample_filename=SIMP(typ=('Fichier', 'All Files ()', 'Sauvegarde'),fr= "csv metamodel output sample filename",ang= "csv metamodel output sample filename",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -xml_metamodel_sample_filename=SIMP(typ=('Fichier', 'All Files ()', 'Sauvegarde'),fr= "xml metamodel output sample filename",ang= "xml metamodel output sample filename",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -covariance_filename=SIMP(typ=('Fichier', 'All Files ()', 'Sauvegarde'),fr= "text file containing covariances",ang= "text file containing covariances",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -pce_validation_filename=SIMP(typ=('Fichier', 'All Files ()', 'Sauvegarde'),fr= "name of the validation output file",ang= "name of the validation output file",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -pce_post_pro_filename=SIMP(typ=('Fichier', 'All Files ()', 'Sauvegarde'),fr= "name of the postprocessing file",ang= "name of the postprocessing file",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -xml_pc_result=SIMP(typ=('Fichier', 'All Files ()', 'Sauvegarde'),fr= "xml file containing input distributions, experimental design and PC result",ang= "xml file containing input distributions, experimental design and PC result",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -) -# ====================================================================== -# Catalog entry for the MAP function : c_transverse_empty_c -# ====================================================================== -C_TRANSVERSE_EMPTY_C_DATA=PROC(nom='C_TRANSVERSE_EMPTY_C_DATA',op=None, -UIinfo ={'groupes':('transverse',)}, -a_string=SIMP(typ='TXM',fr= "simply print in verbose mode",ang= "simply print in verbose mode",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut='Hello world of MAP'), -an_integer=SIMP(typ='I',fr= "number of lines in the output file",ang= "number of lines in the output file",docu= "",statut= "o",into=None,min=1,max=1,val_min=1,val_max=100,defaut=4), -fibo_nb_elements=SIMP(typ='I',fr= "number of values to compute in Fibonnacci sequence",ang= "number of values to compute in Fibonnacci sequence",docu= "",statut= "o",into=None,min=1,max=1,val_min=3,val_max=90,sug=20), -a_float=SIMP(typ='R',fr= "simply print in verbose mode",ang= "simply print in verbose mode",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=5.3), -file_output=SIMP(typ=('Fichier', 'All Files ()', 'Sauvegarde'),fr= "gives the name of the output file of the component",ang= "gives the name of the output file of the component",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut='c_transverse_empty_c.output'), -) -# ====================================================================== -# Catalog entry for the MAP function : c_post_table_fft -# ====================================================================== -C_POST_TABLE_FFT_DATA=PROC(nom='C_POST_TABLE_FFT_DATA',op=None, -UIinfo ={'groupes':('post',)}, -input_surface_grid_field_csv_file_name=SIMP(typ=('Fichier', 'All Files (*)'),fr= "name of a file describing the grid surface with coordinates x,y,z in CSV format.",ang= "name of a file describing the grid surface with coordinates x,y,z in CSV format.",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -input_surface_grid_field_csv_metadata_file_name=SIMP(typ=('Fichier', 'All Files (*)'),fr= "name of the metadata file for input_csv_file_name",ang= "name of the metadata file for input_csv_file_name",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -show_image=SIMP(typ=bool,fr= "if True : an isocontour heights graph of the analyzed surface is produced.",ang= "if True : an isocontour heights graph of the analyzed surface is produced.",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=True), -show_spectr=SIMP(typ=bool,fr= "if True : a spectral density graph of the analyzed surface is produced",ang= "if True : a spectral density graph of the analyzed surface is produced",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=True), -interactive=SIMP(typ=bool,fr= "if True, an interactive window appears when graphs are created.",ang= "if True, an interactive window appears when graphs are created.",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=False), -output_spectr_x_png_file_name=SIMP(typ=('Fichier', 'All Files ()', 'Sauvegarde'),fr= "spectral density graph of the analyzed surface along x",ang= "spectral density graph of the analyzed surface along x",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -output_spectr_y_png_file_name=SIMP(typ=('Fichier', 'All Files ()', 'Sauvegarde'),fr= "spectral density graph of the analyzed surface along y",ang= "spectral density graph of the analyzed surface along y",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -output_surface_grid_field_png_file_name=SIMP(typ=('Fichier', 'All Files ()', 'Sauvegarde'),fr= "Isocontour heights graph of the analyzed surface",ang= "Isocontour heights graph of the analyzed surface",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -output_surface_properties_file_name=SIMP(typ=('Fichier', 'All Files ()', 'Sauvegarde'),fr= "file containing calculated properties of the input surface",ang= "file containing calculated properties of the input surface",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -) -# ====================================================================== -# Catalog entry for the MAP function : c_solver_computation_unit -# ====================================================================== -C_SOLVER_COMPUTATION_UNIT_DATA=PROC(nom='C_SOLVER_COMPUTATION_UNIT_DATA',op=None, -UIinfo ={'groupes':('solver',)}, -computation_script=SIMP(typ=('Fichier', 'All Files (*)'),fr= "A Python script to be run",ang= "A Python script to be run",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -csv_input_data_filename=SIMP(typ=('Fichier', 'All Files (*)'),fr= "A CSV file that contains NxP values",ang= "A CSV file that contains NxP values",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -csv_output_data_filename=SIMP(typ=('Fichier', 'All Files ()', 'Sauvegarde'),fr= "A CSV file that contains NxS values",ang= "A CSV file that contains NxS values",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -) -# ====================================================================== -# Catalog entry for the MAP function : c_pre_morphology_synthesis_spheres -# ====================================================================== -C_PRE_MORPHOLOGY_SYNTHESIS_SPHERES_DATA=PROC(nom='C_PRE_MORPHOLOGY_SYNTHESIS_SPHERES_DATA',op=None, -UIinfo ={'groupes':('pre',)}, -rve_size=SIMP(typ='R',fr= "size of the RVE.",ang= "size of the RVE.",docu= "",statut= "o",into=None,min=1,max=1,val_min=0.0,val_max='**',defaut=None), -sieve_curve_in=SIMP(typ=('Fichier', 'All Files (*)'),fr= "name of the input sieve curve. This sieve curve is the ideal distribution of inclusions you want to build your volume.",ang= "name of the input sieve curve. This sieve curve is the ideal distribution of inclusions you want to build your volume.",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -sieve_curve_out=SIMP(typ=('Fichier', 'All Files ()', 'Sauvegarde'),fr= "name of the output sieve curve. This output gives an idea of the way the code has been able to respect the wanted sieve curve.",ang= "name of the output sieve curve. This output gives an idea of the way the code has been able to respect the wanted sieve curve.",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -repulsion_distance=SIMP(typ='R',fr= "Minimum distance between two inclusions.",ang= "Minimum distance between two inclusions.",docu= "",statut= "o",into=None,min=1,max=1,val_min=0.0,val_max='**',defaut=None), -file_result_inclusions=SIMP(typ=('Fichier', 'All Files ()', 'Sauvegarde'),fr= "name of the inclusion list output file",ang= "name of the inclusion list output file",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -result_log_file=SIMP(typ=('Fichier', 'All Files ()', 'Sauvegarde'),fr= "gives some more details on the result of the process : rve_size, volume fraction.",ang= "gives some more details on the result of the process : rve_size, volume fraction.",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -) -# ====================================================================== -# Catalog entry for the MAP function : c_solver_diffusion_fdvgrid -# ====================================================================== -C_SOLVER_DIFFUSION_FDVGRID_DATA=PROC(nom='C_SOLVER_DIFFUSION_FDVGRID_DATA',op=None, -UIinfo ={'groupes':('solver',)}, -type_source=SIMP(typ='TXM',fr= "format of input image describing local volumic ratio of inclusion per voxel (3d image)",ang= "format of input image describing local volumic ratio of inclusion per voxel (3d image)",docu= "",statut= "o",into=('DAT', 'RAW'),min=1,max=1,val_min='**',val_max='**',defaut=None), -lambda_inclusion=SIMP(typ='R',fr= "conductivity in inclusions",ang= "conductivity in inclusions",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -lambda_matrice=SIMP(typ='R',fr= "conductivity in the matrix",ang= "conductivity in the matrix",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -number_pixel_row_cube=SIMP(typ='I',fr= "number of voxel in a row, all produced images will be NxNxN large",ang= "number of voxel in a row, all produced images will be NxNxN large",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -easy_solve=SIMP(typ='TXM',fr= "Choose the solver !",ang= "Choose the solver !",docu= "",statut= "o",into=('LOW_RAM', 'MATRIX_FREE', 'LOW_CPU', 'MULTIGRID', 'NONE'),min=1,max=1,val_min='**',val_max='**',defaut=None), -input_path=SIMP(typ='Repertoire',fr= "path to the input directory (ex : input/)",ang= "path to the input directory (ex : input/)",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -output_path=SIMP(typ='Repertoire',fr= "path to the output directory",ang= "path to the output directory",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -ratio_filename_dat=SIMP(typ=('Fichier', 'All Files (*)'),fr= "name of the input file describing the local volumic ratio of inclusion (3d image), ex micro_dis.dat",ang= "name of the input file describing the local volumic ratio of inclusion (3d image), ex micro_dis.dat",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -number_proc_micro=SIMP(typ='I',fr= "number of processus used for computing the 3d image of conductivity starting from the 3d image of local volumic ratio of inclusion in each voxel.",ang= "number of processus used for computing the 3d image of conductivity starting from the 3d image of local volumic ratio of inclusion in each voxel.",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=1), -number_proc_solver=SIMP(typ='I',fr= "number of processus used for solving the diffusion problem",ang= "number of processus used for solving the diffusion problem",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=1), -number_proc_post=SIMP(typ='I',fr= "number of processus used for post porcessing",ang= "number of processus used for post porcessing",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=1), -configuration_file=SIMP(typ='TXM',fr= "path and name of the configuration file than the python interface will produce for the various .exe",ang= "path and name of the configuration file than the python interface will produce for the various .exe",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut='c_solver_diffusion_fdvgrid.ini'), -kind_of_run=SIMP(typ='TXM',fr= "this component is runable sequential, parallel or as a PBS_job",ang= "this component is runable sequential, parallel or as a PBS_job",docu= "",statut= "f",into=('sequential', 'parallel', 'PBS_job'),min=1,max=1,val_min='**',val_max='**',defaut='sequential'), -start_run=SIMP(typ=bool,fr= "if yes, the conponent will run. It will only produce a batch script otherwise",ang= "if yes, the conponent will run. It will only produce a batch script otherwise",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=True), -exp_id=SIMP(typ='I',fr= "this will be printed in the name of every produced image",ang= "this will be printed in the name of every produced image",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=0), -petsc_option=SIMP(typ='TXM',fr= "add options for PETSC here",ang= "add options for PETSC here",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=''), -all_stdout_in_file=SIMP(typ=bool,fr= "if yes, all logs, profiling issues and errors will be redirected to a file",ang= "if yes, all logs, profiling issues and errors will be redirected to a file",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=True), -VTK=SIMP(typ=bool,fr= "if yes, some VTK files( 3d images) will be printed",ang= "if yes, some VTK files( 3d images) will be printed",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=True), -number_nodes=SIMP(typ='I',fr= "number of nodes used (cluster)",ang= "number of nodes used (cluster)",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -number_proc_per_node=SIMP(typ='I',fr= "number of processors used per node (cluster)",ang= "number of processors used per node (cluster)",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -walltime=SIMP(typ='TXM',fr= "if the job did not end by this time, it will be killed by job manager (format 10:00:00 (hms))",ang= "if the job did not end by this time, it will be killed by job manager (format 10:00:00 (hms))",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -memory=SIMP(typ='TXM',fr= "the memory given here must be larger than the needed one (format 32gb",ang= "the memory given here must be larger than the needed one (format 32gb",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -source_environement=SIMP(typ='TXM',fr= "command to load environnement at start of job (ex: source /logiciels/openmpi/profile",ang= "command to load environnement at start of job (ex: source /logiciels/openmpi/profile",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -periodic_X=SIMP(typ=bool,fr= "if yes, periodic boundary conditions will be applied on corresponding x faces",ang= "if yes, periodic boundary conditions will be applied on corresponding x faces",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=False), -periodic_Y=SIMP(typ=bool,fr= "if yes, periodic boundary conditions will be applied on corresponding y faces",ang= "if yes, periodic boundary conditions will be applied on corresponding y faces",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=False), -periodic_Z=SIMP(typ=bool,fr= "if yes, periodic boundary conditions will be applied on corresponding z faces",ang= "if yes, periodic boundary conditions will be applied on corresponding z faces",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=False), -boundary_condition_x_delta_T=SIMP(typ='R',fr= "gap of temperature between corresponding points of faces x_plus and x_minus (periodic BC)",ang= "gap of temperature between corresponding points of faces x_plus and x_minus (periodic BC)",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -boundary_condition_y_delta_T=SIMP(typ='R',fr= "gap of temperature between corresponding points of faces y_plus and y_minus (periodic BC)",ang= "gap of temperature between corresponding points of faces y_plus and y_minus (periodic BC)",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -boundary_condition_z_delta_T=SIMP(typ='R',fr= "gap of temperature between corresponding points of faces z_plus and z_minus (periodic BC)",ang= "gap of temperature between corresponding points of faces z_plus and z_minus (periodic BC)",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -boundary_condition_x_plus_type=SIMP(typ='TXM',fr= "kind of bondary conditions on the x plus face",ang= "kind of bondary conditions on the x plus face",docu= "",statut= "f",into=('DIRICHLET', 'NEUMANN', 'NEWTON'),min=1,max=1,val_min='**',val_max='**',defaut=None), -boundary_condition_x_plus_T_center_face=SIMP(typ='R',fr= "temperature at the center of the face",ang= "temperature at the center of the face",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -boundary_condition_x_plus_gTy=SIMP(typ='R',fr= "frac(dT)(dy) of the face",ang= "frac(dT)(dy) of the face",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -boundary_condition_x_plus_gTz=SIMP(typ='R',fr= "frac(dT)(dz) of the face",ang= "frac(dT)(dz) of the face",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -boundary_condition_x_plus_F=SIMP(typ='R',fr= "thermic flux going through this face",ang= "thermic flux going through this face",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -boundary_condition_x_plus_h=SIMP(typ='R',fr= "heat transfert coefficient",ang= "heat transfert coefficient",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -boundary_condition_x_plus_Text=SIMP(typ='R',fr= "external temperature",ang= "external temperature",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -boundary_condition_x_minus_type=SIMP(typ='TXM',fr= "kind of bondary conditions on the y minus face",ang= "kind of bondary conditions on the y minus face",docu= "",statut= "f",into=('DIRICHLET', 'NEUMANN', 'NEWTON'),min=1,max=1,val_min='**',val_max='**',defaut=None), -boundary_condition_x_minus_T_center_face=SIMP(typ='R',fr= "temperature at the center of the face",ang= "temperature at the center of the face",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -boundary_condition_x_minus_gTy=SIMP(typ='R',fr= "frac(dT)(dy) of the face",ang= "frac(dT)(dy) of the face",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -boundary_condition_x_minus_gTz=SIMP(typ='R',fr= "frac(dT)(dz) of the face",ang= "frac(dT)(dz) of the face",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -boundary_condition_x_minus_F=SIMP(typ='R',fr= "thermic flux going through this face",ang= "thermic flux going through this face",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -boundary_condition_x_minus_h=SIMP(typ='R',fr= "heat transfert coefficient",ang= "heat transfert coefficient",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -boundary_condition_x_minus_Text=SIMP(typ='R',fr= "external temperature",ang= "external temperature",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -boundary_condition_y_plus_type=SIMP(typ='TXM',fr= "kind of bondary conditions on the y plus face",ang= "kind of bondary conditions on the y plus face",docu= "",statut= "f",into=('DIRICHLET', 'NEUMANN', 'NEWTON'),min=1,max=1,val_min='**',val_max='**',defaut=None), -boundary_condition_y_plus_T_center_face=SIMP(typ='R',fr= "temperature at the center of the face",ang= "temperature at the center of the face",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -boundary_condition_y_plus_gTx=SIMP(typ='R',fr= "frac(dT)(dx) of the face",ang= "frac(dT)(dx) of the face",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -boundary_condition_y_plus_gTz=SIMP(typ='R',fr= "frac(dT)(dz) of the face",ang= "frac(dT)(dz) of the face",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -boundary_condition_y_plus_F=SIMP(typ='R',fr= "thermic flux going through this face",ang= "thermic flux going through this face",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -boundary_condition_y_plus_h=SIMP(typ='R',fr= "heat transfert coefficient",ang= "heat transfert coefficient",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -boundary_condition_y_plus_Text=SIMP(typ='R',fr= "external temperature",ang= "external temperature",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -boundary_condition_y_minus_type=SIMP(typ='TXM',fr= "kind of bondary conditions on the y minus face",ang= "kind of bondary conditions on the y minus face",docu= "",statut= "f",into=('DIRICHLET', 'NEUMANN', 'NEWTON'),min=1,max=1,val_min='**',val_max='**',defaut=None), -boundary_condition_y_minus_T_center_face=SIMP(typ='R',fr= "temperature at the center of the face",ang= "temperature at the center of the face",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -boundary_condition_y_minus_gTx=SIMP(typ='R',fr= "frac(dT)(dx) of the face",ang= "frac(dT)(dx) of the face",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -boundary_condition_y_minus_gTz=SIMP(typ='R',fr= "frac(dT)(dz) of the face",ang= "frac(dT)(dz) of the face",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -boundary_condition_y_minus_F=SIMP(typ='R',fr= "thermic flux going through this face",ang= "thermic flux going through this face",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -boundary_condition_y_minus_h=SIMP(typ='R',fr= "heat transfert coefficient",ang= "heat transfert coefficient",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -boundary_condition_y_minus_Text=SIMP(typ='R',fr= "external temperature",ang= "external temperature",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -boundary_condition_z_plus_type=SIMP(typ='TXM',fr= "kind of bondary conditions on the z plus face",ang= "kind of bondary conditions on the z plus face",docu= "",statut= "f",into=('DIRICHLET', 'NEUMANN', 'NEWTON'),min=1,max=1,val_min='**',val_max='**',defaut=None), -boundary_condition_z_plus_T_center_face=SIMP(typ='R',fr= "temperature at the center of the face",ang= "temperature at the center of the face",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -boundary_condition_z_plus_gTx=SIMP(typ='R',fr= "frac(dT)(dx) of the face",ang= "frac(dT)(dx) of the face",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -boundary_condition_z_plus_gTy=SIMP(typ='R',fr= "frac(dT)(dy) of the face",ang= "frac(dT)(dy) of the face",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -boundary_condition_z_plus_F=SIMP(typ='R',fr= "thermic flux going through this face",ang= "thermic flux going through this face",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -boundary_condition_z_plus_h=SIMP(typ='R',fr= "heat transfert coefficient",ang= "heat transfert coefficient",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -boundary_condition_z_plus_Text=SIMP(typ='R',fr= "external temperature",ang= "external temperature",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -boundary_condition_z_minus_type=SIMP(typ='TXM',fr= "kind of bondary conditions on the z minus face",ang= "kind of bondary conditions on the z minus face",docu= "",statut= "f",into=('DIRICHLET', 'NEUMANN', 'NEWTON'),min=1,max=1,val_min='**',val_max='**',defaut=None), -boundary_condition_z_minus_T_center_face=SIMP(typ='R',fr= "temperature at the center of the face",ang= "temperature at the center of the face",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -boundary_condition_z_minus_gTx=SIMP(typ='R',fr= "frac(dT)(dx) of the face",ang= "frac(dT)(dx) of the face",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -boundary_condition_z_minus_gTy=SIMP(typ='R',fr= "frac(dT)(dy) of the face",ang= "frac(dT)(dy) of the face",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -boundary_condition_z_minus_F=SIMP(typ='R',fr= "thermic flux going through this face",ang= "thermic flux going through this face",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -boundary_condition_z_minus_h=SIMP(typ='R',fr= "heat transfert coefficient",ang= "heat transfert coefficient",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -boundary_condition_z_minus_Text=SIMP(typ='R',fr= "external temperature",ang= "external temperature",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -norm_2_RHS_per_sqrt_pixel=SIMP(typ='R',fr= "norm_2_RHS_per_sqrt(pixel) at start",ang= "norm_2_RHS_per_sqrt(pixel) at start",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=0), -MAP_c_solver_diffusion_fdvgrid_successful=SIMP(typ=bool,fr= "MAP_c_solver_diffusion_fdvgrid_successful",ang= "MAP_c_solver_diffusion_fdvgrid_successful",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=False), -norm_2_residual_per_sqrt_pixel=SIMP(typ='R',fr= "norm_2_residual_per_sqrt(pixel) last",ang= "norm_2_residual_per_sqrt(pixel) last",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=0), -ratio_is=SIMP(typ='R',fr= "ratio between residual and RHS",ang= "ratio between residual and RHS",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=0), -number_of_iteration=SIMP(typ='I',fr= "number_of_iteration",ang= "number_of_iteration",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=0), -time_solver_s=SIMP(typ='R',fr= "time_solver (seconds)",ang= "time_solver (seconds)",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=0), -GTx=SIMP(typ='R',fr= "Average of GTx",ang= "Average of GTx",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=0), -GTy=SIMP(typ='R',fr= "Average of GTy",ang= "Average of GTy",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=0), -GTz=SIMP(typ='R',fr= "Average of GTz",ang= "Average of GTz",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=0), -flux_x=SIMP(typ='R',fr= "Average of flux_x",ang= "Average of flux_x",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=0), -flux_y=SIMP(typ='R',fr= "Average of flux_y",ang= "Average of flux_y",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=0), -flux_z=SIMP(typ='R',fr= "Average of flux_z",ang= "Average of flux_z",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=0), -minux_int_TxF=SIMP(typ='R',fr= "Average of minux_int_TxF",ang= "Average of minux_int_TxF",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=0), -) -# ====================================================================== -# Catalog entry for the MAP function : c_solver_homogenisation_mechanics -# ====================================================================== -C_SOLVER_HOMOGENISATION_MECHANICS_DATA=PROC(nom='C_SOLVER_HOMOGENISATION_MECHANICS_DATA',op=None, -UIinfo ={'groupes':('solver',)}, -microstructure_composition_file=SIMP(typ=('Fichier', 'All Files (*)'),fr= "microstructure's description",ang= "microstructure's description",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -phase_input_file=SIMP(typ=('Fichier', 'All Files (*)'),fr= "phases description",ang= "phases description",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -homogenisation_scheme=SIMP(typ='TXM',fr= "homogenisation scheme",ang= "homogenisation scheme",docu= "",statut= "o",into=['Voigt', 'Reuss', 'Self-Consistent', 'Hashin-Shtrikman'],min=1,max=1,val_min='**',val_max='**',defaut=None), -reference_phase_file=SIMP(typ=('Fichier', 'All Files (*)'),fr= "reference phase description",ang= "reference phase description",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -effective_properties_text_output_file=SIMP(typ=('Fichier', 'All Files ()', 'Sauvegarde'),fr= "computed effective properties",ang= "computed effective properties",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -effective_properties_visualisation_output_file=SIMP(typ=('Fichier', 'All Files ()', 'Sauvegarde'),fr= "visualisation of effective properties",ang= "visualisation of effective properties",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -) -# ====================================================================== -# Catalog entry for the MAP function : c_pre_morphology_grid_projection -# ====================================================================== -C_PRE_MORPHOLOGY_GRID_PROJECTION_DATA=PROC(nom='C_PRE_MORPHOLOGY_GRID_PROJECTION_DATA',op=None, -UIinfo ={'groupes':('pre',)}, -phase_scan=SIMP(typ=bool,fr= "switch to scan phase at midpoints of cells edges (for FD codes) [default is to evaluate volume fraction in cells (for FEM, FV, FFT codes)]",ang= "switch to scan phase at midpoints of cells edges (for FD codes) [default is to evaluate volume fraction in cells (for FEM, FV, FFT codes)]",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=False), -radius_first=SIMP(typ=bool,fr= "switch to indicate that in f_micro, radius is on the first column [default: radius is on the last column]",ang= "switch to indicate that in f_micro, radius is on the first column [default: radius is on the last column]",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=False), -n_samples=SIMP(typ='TXM',fr= "number of sample points over cell edges (no space around commas) [default: 8,8[,8]]",ang= "number of sample points over cell edges (no space around commas) [default: 8,8[,8]]",docu= "",statut= "n",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -n_cells=SIMP(typ='TXM',fr= "number of cells along each axis of the RVE (no space around commas), example: 64,64,64",ang= "number of cells along each axis of the RVE (no space around commas), example: 64,64,64",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -f_micro=SIMP(typ=('Fichier', 'All Files (*)'),fr= "file describing microstructure (RVE+inclusions)",ang= "file describing microstructure (RVE+inclusions)",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -f_output=SIMP(typ=('Fichier', 'All Files ()', 'Sauvegarde'),fr= "file to store volume fraction of inclusions for every cell or microstructure phase found at midpoints of cell edges",ang= "file to store volume fraction of inclusions for every cell or microstructure phase found at midpoints of cell edges",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -f_image=SIMP(typ=('Fichier', 'All Files ()', 'Sauvegarde'),fr= "file to store a (raw) image of the discretized microstructure",ang= "file to store a (raw) image of the discretized microstructure",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -) -# ====================================================================== -# Catalog entry for the MAP function : c_solver_crystal_alloy_behaviour -# ====================================================================== -C_SOLVER_CRYSTAL_ALLOY_BEHAVIOUR_DATA=PROC(nom='C_SOLVER_CRYSTAL_ALLOY_BEHAVIOUR_DATA',op=None, -UIinfo ={'groupes':('solver',)}, -loading_type=SIMP(typ='TXM',fr= "Determines the type of loading",ang= "Determines the type of loading",docu= "",statut= "o",into=['tension', 'creep', 'none'],min=1,max=1,val_min='**',val_max='**',defaut='tension'), -loading_type_tension=BLOC(condition="(loading_type=='tension')", -loading_direction=SIMP(typ='TXM',fr= "Determines the direction of loading",ang= "Determines the direction of loading",docu= "",statut= "o",into=['sensT', 'sensL'],min=1,max=1,val_min='**',val_max='**',defaut='sensT'), -temperature=SIMP(typ='R',fr= "Set experimental temperature",ang= "Set experimental temperature",docu= "",statut= "o",into=None,min=1,max=1,val_min=273.0,val_max=873.0,defaut=673.0), -RX_RV=SIMP(typ='I',fr= "Active or not microstructure evolution",ang= "Active or not microstructure evolution",docu= "",statut= "o",into=[0, 1],min=1,max=1,val_min='**',val_max='**',defaut=0), -recristalisation_fraction=SIMP(typ='R',fr= "Set recristallisation fraction",ang= "Set recristallisation fraction",docu= "",statut= "o",into=None,min=1,max=1,val_min=0.0,val_max=1.0,defaut=1.0), -D0=SIMP(typ='R',fr= "Set grain size",ang= "Set grain size",docu= "",statut= "o",into=None,min=1,max=1,val_min=1e-06,val_max=2e-05,defaut=5e-06), -omega=SIMP(typ='R',fr= "Set distance effect of dialocation to grain boundary",ang= "Set distance effect of dialocation to grain boundary",docu= "",statut= "o",into=None,min=1,max=1,val_min=1e-06,val_max=2e-05,defaut=1e-06), -nsg=SIMP(typ='I',fr= "Number of active gliding system",ang= "Number of active gliding system",docu= "",statut= "o",into=None,min=1,max=1,val_min=1,val_max=21,defaut=21), -ngr=SIMP(typ='I',fr= "Number of macro-grain",ang= "Number of macro-grain",docu= "",statut= "o",into=None,min=1,max=1,val_min=1,val_max='**',defaut=4), -mechanical_behaviour_file=SIMP(typ=('Fichier', 'All Files (*)'),fr= "Name of input file for mechanical parameters",ang= "Name of input file for mechanical parameters",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut='mechanical_behaviour.dat'), -SR0=SIMP(typ='R',fr= "Set applied strain rate number 0",ang= "Set applied strain rate number 0",docu= "",statut= "o",into=None,min=1,max=1,val_min=2e-06,val_max=0.002,defaut=0.0002), -SR1=SIMP(typ='R',fr= "Set applied strain rate number 1",ang= "Set applied strain rate number 1",docu= "",statut= "o",into=None,min=1,max=1,val_min=2e-06,val_max=0.002,defaut=0.002), -SR2=SIMP(typ='R',fr= "Set applied strain rate number 2",ang= "Set applied strain rate number 2",docu= "",statut= "o",into=None,min=1,max=1,val_min=2e-06,val_max=0.002,defaut=2e-05), -SR3=SIMP(typ='R',fr= "Set applied strain rate number 3",ang= "Set applied strain rate number 3",docu= "",statut= "o",into=None,min=1,max=1,val_min=2e-06,val_max=0.002,defaut=0.002), -SR4=SIMP(typ='R',fr= "Set applied strain rate number 4",ang= "Set applied strain rate number 4",docu= "",statut= "o",into=None,min=1,max=1,val_min=2e-06,val_max=0.002,defaut=0.0002), -SR5=SIMP(typ='R',fr= "Set applied strain rate number 5",ang= "Set applied strain rate number 5",docu= "",statut= "o",into=None,min=1,max=1,val_min=2e-06,val_max=0.002,defaut=2e-05), -SR6=SIMP(typ='R',fr= "Set applied strain rate number 6",ang= "Set applied strain rate number 6",docu= "",statut= "o",into=None,min=1,max=1,val_min=2e-06,val_max=0.002,defaut=0.0002), -SR7=SIMP(typ='R',fr= "Set applied strain rate number 7",ang= "Set applied strain rate number 7",docu= "",statut= "o",into=None,min=1,max=1,val_min=2e-06,val_max=0.002,defaut=0.002), -SR8=SIMP(typ='R',fr= "Set applied strain rate number 8",ang= "Set applied strain rate number 8",docu= "",statut= "o",into=None,min=1,max=1,val_min=2e-06,val_max=0.002,defaut=0.0002), -e_saut_1=SIMP(typ='R',fr= "strain jump number 1",ang= "strain jump number 1",docu= "",statut= "o",into=None,min=1,max=1,val_min=0.0,val_max='**',defaut=0.0244), -e_saut_2=SIMP(typ='R',fr= "strain jump number 2",ang= "strain jump number 2",docu= "",statut= "o",into=None,min=1,max=1,val_min=0.0,val_max='**',defaut=0.0293), -e_saut_3=SIMP(typ='R',fr= "strain jump number 3",ang= "strain jump number 3",docu= "",statut= "o",into=None,min=1,max=1,val_min=0.0,val_max='**',defaut=0.0336), -e_saut_4=SIMP(typ='R',fr= "strain jump number 4",ang= "strain jump number 4",docu= "",statut= "o",into=None,min=1,max=1,val_min=0.0,val_max='**',defaut=0.0384), -e_saut_5=SIMP(typ='R',fr= "strain jump number 5",ang= "strain jump number 5",docu= "",statut= "o",into=None,min=1,max=1,val_min=0.0,val_max='**',defaut=0.043), -e_saut_6=SIMP(typ='R',fr= "strain jump number 6",ang= "strain jump number 6",docu= "",statut= "o",into=None,min=1,max=1,val_min=0.0,val_max='**',defaut=0.047), -e_saut_7=SIMP(typ='R',fr= "strain jump number 7",ang= "strain jump number 7",docu= "",statut= "o",into=None,min=1,max=1,val_min=0.0,val_max='**',defaut=0.0522), -e_saut_8=SIMP(typ='R',fr= "strain jump number 8",ang= "strain jump number 8",docu= "",statut= "o",into=None,min=1,max=1,val_min=0.0,val_max='**',defaut=0.0566), -strain_output_file=SIMP(typ=('Fichier', 'All Files ()', 'Sauvegarde'),fr= "Name of output file",ang= "Name of output file",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut='test_400detT.txt'), -fraction_output_file=SIMP(typ=('Fichier', 'All Files ()', 'Sauvegarde'),fr= "Name of microstructural output file",ang= "Name of microstructural output file",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut='Rx_RV.txt'), -jump=SIMP(typ='I',fr= "tensile test test with or without strain rate jumps",ang= "tensile test test with or without strain rate jumps",docu= "",statut= "o",into=[0, 1],min=1,max=1,val_min='**',val_max='**',defaut=0), -), -loading_type_creep=BLOC(condition="(loading_type=='creep')", -loading_direction=SIMP(typ='TXM',fr= "Determines the direction of loading",ang= "Determines the direction of loading",docu= "",statut= "o",into=['sensT', 'sensL'],min=1,max=1,val_min='**',val_max='**',defaut='sensT'), -temperature=SIMP(typ='R',fr= "Set experimental temperature",ang= "Set experimental temperature",docu= "",statut= "o",into=None,min=1,max=1,val_min=273.0,val_max=873.0,defaut=673.0), -RX_RV=SIMP(typ='I',fr= "Active or not microstructure evolution",ang= "Active or not microstructure evolution",docu= "",statut= "o",into=[0, 1],min=1,max=1,val_min='**',val_max='**',defaut=0), -recristalisation_fraction=SIMP(typ='R',fr= "Set recristallisation fraction",ang= "Set recristallisation fraction",docu= "",statut= "o",into=None,min=1,max=1,val_min=0.0,val_max=1.0,defaut=1.0), -D0=SIMP(typ='R',fr= "Set grain size",ang= "Set grain size",docu= "",statut= "o",into=None,min=1,max=1,val_min=1e-06,val_max=2e-05,defaut=5e-06), -omega=SIMP(typ='R',fr= "Set distance effect of dialocation to grain boundary",ang= "Set distance effect of dialocation to grain boundary",docu= "",statut= "o",into=None,min=1,max=1,val_min=1e-06,val_max=2e-05,defaut=1e-06), -nsg=SIMP(typ='I',fr= "Number of active gliding system",ang= "Number of active gliding system",docu= "",statut= "o",into=None,min=1,max=1,val_min=1,val_max=21,defaut=21), -ngr=SIMP(typ='I',fr= "Number of macro-grain",ang= "Number of macro-grain",docu= "",statut= "o",into=None,min=1,max=1,val_min=1,val_max='**',defaut=4), -mechanical_behaviour_file=SIMP(typ=('Fichier', 'All Files (*)'),fr= "Name of input file for mechanical parameters",ang= "Name of input file for mechanical parameters",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut='mechanical_behaviour.dat'), -SR0=SIMP(typ='R',fr= "Set applied strain rate number 0",ang= "Set applied strain rate number 0",docu= "",statut= "o",into=None,min=1,max=1,val_min=2e-06,val_max=0.002,defaut=0.0002), -SR1=SIMP(typ='R',fr= "Set applied strain rate number 1",ang= "Set applied strain rate number 1",docu= "",statut= "o",into=None,min=1,max=1,val_min=2e-06,val_max=0.002,defaut=0.002), -SR2=SIMP(typ='R',fr= "Set applied strain rate number 2",ang= "Set applied strain rate number 2",docu= "",statut= "o",into=None,min=1,max=1,val_min=2e-06,val_max=0.002,defaut=2e-05), -SR3=SIMP(typ='R',fr= "Set applied strain rate number 3",ang= "Set applied strain rate number 3",docu= "",statut= "o",into=None,min=1,max=1,val_min=2e-06,val_max=0.002,defaut=0.002), -SR4=SIMP(typ='R',fr= "Set applied strain rate number 4",ang= "Set applied strain rate number 4",docu= "",statut= "o",into=None,min=1,max=1,val_min=2e-06,val_max=0.002,defaut=0.0002), -SR5=SIMP(typ='R',fr= "Set applied strain rate number 5",ang= "Set applied strain rate number 5",docu= "",statut= "o",into=None,min=1,max=1,val_min=2e-06,val_max=0.002,defaut=2e-05), -SR6=SIMP(typ='R',fr= "Set applied strain rate number 6",ang= "Set applied strain rate number 6",docu= "",statut= "o",into=None,min=1,max=1,val_min=2e-06,val_max=0.002,defaut=0.0002), -SR7=SIMP(typ='R',fr= "Set applied strain rate number 7",ang= "Set applied strain rate number 7",docu= "",statut= "o",into=None,min=1,max=1,val_min=2e-06,val_max=0.002,defaut=0.002), -SR8=SIMP(typ='R',fr= "Set applied strain rate number 8",ang= "Set applied strain rate number 8",docu= "",statut= "o",into=None,min=1,max=1,val_min=2e-06,val_max=0.002,defaut=0.0002), -e_saut_1=SIMP(typ='R',fr= "strain jump number 1",ang= "strain jump number 1",docu= "",statut= "o",into=None,min=1,max=1,val_min=0.0,val_max='**',defaut=0.0244), -e_saut_2=SIMP(typ='R',fr= "strain jump number 2",ang= "strain jump number 2",docu= "",statut= "o",into=None,min=1,max=1,val_min=0.0,val_max='**',defaut=0.0293), -e_saut_3=SIMP(typ='R',fr= "strain jump number 3",ang= "strain jump number 3",docu= "",statut= "o",into=None,min=1,max=1,val_min=0.0,val_max='**',defaut=0.0336), -e_saut_4=SIMP(typ='R',fr= "strain jump number 4",ang= "strain jump number 4",docu= "",statut= "o",into=None,min=1,max=1,val_min=0.0,val_max='**',defaut=0.0384), -e_saut_5=SIMP(typ='R',fr= "strain jump number 5",ang= "strain jump number 5",docu= "",statut= "o",into=None,min=1,max=1,val_min=0.0,val_max='**',defaut=0.043), -e_saut_6=SIMP(typ='R',fr= "strain jump number 6",ang= "strain jump number 6",docu= "",statut= "o",into=None,min=1,max=1,val_min=0.0,val_max='**',defaut=0.047), -e_saut_7=SIMP(typ='R',fr= "strain jump number 7",ang= "strain jump number 7",docu= "",statut= "o",into=None,min=1,max=1,val_min=0.0,val_max='**',defaut=0.0522), -e_saut_8=SIMP(typ='R',fr= "strain jump number 8",ang= "strain jump number 8",docu= "",statut= "o",into=None,min=1,max=1,val_min=0.0,val_max='**',defaut=0.0566), -strain_output_file=SIMP(typ=('Fichier', 'All Files ()', 'Sauvegarde'),fr= "Name of output file",ang= "Name of output file",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut='test_400detT.txt'), -fraction_output_file=SIMP(typ=('Fichier', 'All Files ()', 'Sauvegarde'),fr= "Name of microstructural output file",ang= "Name of microstructural output file",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut='Rx_RV.txt'), -applied_stress=SIMP(typ='R',fr= "Set applied stress",ang= "Set applied stress",docu= "",statut= "o",into=None,min=1,max=1,val_min=0.0,val_max=250.0,defaut=80.0), -), -loading_type_none=BLOC(condition="(loading_type=='none')", -loading_direction=SIMP(typ='TXM',fr= "Determines the direction of loading",ang= "Determines the direction of loading",docu= "",statut= "o",into=['sensT', 'sensL'],min=1,max=1,val_min='**',val_max='**',defaut='sensT'), -temperature=SIMP(typ='R',fr= "Set experimental temperature",ang= "Set experimental temperature",docu= "",statut= "o",into=None,min=1,max=1,val_min=273.0,val_max=873.0,defaut=673.0), -RX_RV=SIMP(typ='I',fr= "Active or not microstructure evolution",ang= "Active or not microstructure evolution",docu= "",statut= "o",into=[0, 1],min=1,max=1,val_min='**',val_max='**',defaut=0), -recristalisation_fraction=SIMP(typ='R',fr= "Set recristallisation fraction",ang= "Set recristallisation fraction",docu= "",statut= "o",into=None,min=1,max=1,val_min=0.0,val_max=1.0,defaut=1.0), -D0=SIMP(typ='R',fr= "Set grain size",ang= "Set grain size",docu= "",statut= "o",into=None,min=1,max=1,val_min=1e-06,val_max=2e-05,defaut=5e-06), -omega=SIMP(typ='R',fr= "Set distance effect of dialocation to grain boundary",ang= "Set distance effect of dialocation to grain boundary",docu= "",statut= "o",into=None,min=1,max=1,val_min=1e-06,val_max=2e-05,defaut=1e-06), -nsg=SIMP(typ='I',fr= "Number of active gliding system",ang= "Number of active gliding system",docu= "",statut= "o",into=None,min=1,max=1,val_min=1,val_max=21,defaut=21), -ngr=SIMP(typ='I',fr= "Number of macro-grain",ang= "Number of macro-grain",docu= "",statut= "o",into=None,min=1,max=1,val_min=1,val_max='**',defaut=4), -mechanical_behaviour_file=SIMP(typ=('Fichier', 'All Files (*)'),fr= "Name of input file for mechanical parameters",ang= "Name of input file for mechanical parameters",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut='mechanical_behaviour.dat'), -SR0=SIMP(typ='R',fr= "Set applied strain rate number 0",ang= "Set applied strain rate number 0",docu= "",statut= "o",into=None,min=1,max=1,val_min=2e-06,val_max=0.002,defaut=0.0002), -SR1=SIMP(typ='R',fr= "Set applied strain rate number 1",ang= "Set applied strain rate number 1",docu= "",statut= "o",into=None,min=1,max=1,val_min=2e-06,val_max=0.002,defaut=0.002), -SR2=SIMP(typ='R',fr= "Set applied strain rate number 2",ang= "Set applied strain rate number 2",docu= "",statut= "o",into=None,min=1,max=1,val_min=2e-06,val_max=0.002,defaut=2e-05), -SR3=SIMP(typ='R',fr= "Set applied strain rate number 3",ang= "Set applied strain rate number 3",docu= "",statut= "o",into=None,min=1,max=1,val_min=2e-06,val_max=0.002,defaut=0.002), -SR4=SIMP(typ='R',fr= "Set applied strain rate number 4",ang= "Set applied strain rate number 4",docu= "",statut= "o",into=None,min=1,max=1,val_min=2e-06,val_max=0.002,defaut=0.0002), -SR5=SIMP(typ='R',fr= "Set applied strain rate number 5",ang= "Set applied strain rate number 5",docu= "",statut= "o",into=None,min=1,max=1,val_min=2e-06,val_max=0.002,defaut=2e-05), -SR6=SIMP(typ='R',fr= "Set applied strain rate number 6",ang= "Set applied strain rate number 6",docu= "",statut= "o",into=None,min=1,max=1,val_min=2e-06,val_max=0.002,defaut=0.0002), -SR7=SIMP(typ='R',fr= "Set applied strain rate number 7",ang= "Set applied strain rate number 7",docu= "",statut= "o",into=None,min=1,max=1,val_min=2e-06,val_max=0.002,defaut=0.002), -SR8=SIMP(typ='R',fr= "Set applied strain rate number 8",ang= "Set applied strain rate number 8",docu= "",statut= "o",into=None,min=1,max=1,val_min=2e-06,val_max=0.002,defaut=0.0002), -e_saut_1=SIMP(typ='R',fr= "strain jump number 1",ang= "strain jump number 1",docu= "",statut= "o",into=None,min=1,max=1,val_min=0.0,val_max='**',defaut=0.0244), -e_saut_2=SIMP(typ='R',fr= "strain jump number 2",ang= "strain jump number 2",docu= "",statut= "o",into=None,min=1,max=1,val_min=0.0,val_max='**',defaut=0.0293), -e_saut_3=SIMP(typ='R',fr= "strain jump number 3",ang= "strain jump number 3",docu= "",statut= "o",into=None,min=1,max=1,val_min=0.0,val_max='**',defaut=0.0336), -e_saut_4=SIMP(typ='R',fr= "strain jump number 4",ang= "strain jump number 4",docu= "",statut= "o",into=None,min=1,max=1,val_min=0.0,val_max='**',defaut=0.0384), -e_saut_5=SIMP(typ='R',fr= "strain jump number 5",ang= "strain jump number 5",docu= "",statut= "o",into=None,min=1,max=1,val_min=0.0,val_max='**',defaut=0.043), -e_saut_6=SIMP(typ='R',fr= "strain jump number 6",ang= "strain jump number 6",docu= "",statut= "o",into=None,min=1,max=1,val_min=0.0,val_max='**',defaut=0.047), -e_saut_7=SIMP(typ='R',fr= "strain jump number 7",ang= "strain jump number 7",docu= "",statut= "o",into=None,min=1,max=1,val_min=0.0,val_max='**',defaut=0.0522), -e_saut_8=SIMP(typ='R',fr= "strain jump number 8",ang= "strain jump number 8",docu= "",statut= "o",into=None,min=1,max=1,val_min=0.0,val_max='**',defaut=0.0566), -strain_output_file=SIMP(typ=('Fichier', 'All Files ()', 'Sauvegarde'),fr= "Name of output file",ang= "Name of output file",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut='test_400detT.txt'), -fraction_output_file=SIMP(typ=('Fichier', 'All Files ()', 'Sauvegarde'),fr= "Name of microstructural output file",ang= "Name of microstructural output file",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut='Rx_RV.txt'), -), -) -# ====================================================================== -# Catalog entry for the MAP function : c_transverse_cadeex2map -# ====================================================================== -C_TRANSVERSE_CADEEX2MAP_DATA=PROC(nom='C_TRANSVERSE_CADEEX2MAP_DATA',op=None, -UIinfo ={'groupes':('transverse',)}, -function=SIMP(typ='TXM',fr= "determines the CADEEX function used, the value is a string that must belong to the following list [connection_test, material] - connection_test : test the connection to CADEEX server - material : get data corresponding to a given material reference",ang= "determines the CADEEX function used, the value is a string that must belong to the following list [connection_test, material] - connection_test : test the connection to CADEEX server - material : get data corresponding to a given material reference",docu= "",statut= "o",into=['connection_test', 'material'],min=1,max=1,val_min='**',val_max='**',defaut=None), -function_connection_test=BLOC(condition="(function=='connection_test')", -CADEEX_machine=SIMP(typ='TXM',fr= "IP adress or name ot the machine where CADEEX server is installed.",ang= "IP adress or name ot the machine where CADEEX server is installed.",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut='cadeex.der.edf.fr'), -CADEEX_user=SIMP(typ='TXM',fr= "id in CADEEX data-base (NNI for EDF users). If you don't mention the id, it is automatically computed from your CALIBRE $USER environnement variable.",ang= "id in CADEEX data-base (NNI for EDF users). If you don't mention the id, it is automatically computed from your CALIBRE $USER environnement variable.",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -output_file_name=SIMP(typ=('Fichier', 'All Files ()', 'Sauvegarde'),fr= "the file path of the result",ang= "the file path of the result",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -), -function_material=BLOC(condition="(function=='material')", -CADEEX_machine=SIMP(typ='TXM',fr= "IP adress or name ot the machine where CADEEX server is installed.",ang= "IP adress or name ot the machine where CADEEX server is installed.",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut='cadeex.der.edf.fr'), -CADEEX_user=SIMP(typ='TXM',fr= "id in CADEEX data-base (NNI for EDF users). If you don't mention the id, it is automatically computed from your CALIBRE $USER environnement variable.",ang= "id in CADEEX data-base (NNI for EDF users). If you don't mention the id, it is automatically computed from your CALIBRE $USER environnement variable.",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -output_file_name=SIMP(typ=('Fichier', 'All Files ()', 'Sauvegarde'),fr= "the file path of the result",ang= "the file path of the result",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -reference=SIMP(typ='TXM',fr= "reference name of material in CADEEX",ang= "reference name of material in CADEEX",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -simple=SIMP(typ=bool,fr= "determines in output is simple (i.e. short) or no",ang= "determines in output is simple (i.e. short) or no",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=True), -), -) -# ====================================================================== -# Catalog entry for the MAP function : c_solver_concrete_asr -# ====================================================================== -C_SOLVER_CONCRETE_ASR_DATA=PROC(nom='C_SOLVER_CONCRETE_ASR_DATA',op=None, -UIinfo ={'groupes':('solver',)}, -sieve_curve_input_file=SIMP(typ=('Fichier', 'All Files (*)'),fr= "name of the sieve curve file decribing aggregate classes",ang= "name of the sieve curve file decribing aggregate classes",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -csv_output_filename=SIMP(typ=('Fichier', 'All Files ()', 'Sauvegarde'),fr= "name of the csv file containing mechanical results",ang= "name of the csv file containing mechanical results",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -matlab_filename=SIMP(typ=('Fichier', 'All Files (*)'),fr= "name of the file with matlab thesis code result for a sake of comparison",ang= "name of the file with matlab thesis code result for a sake of comparison",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -plot_curves=SIMP(typ=bool,fr= "plot detailed evolution of variables with respect to attack depth",ang= "plot detailed evolution of variables with respect to attack depth",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -trace_study=SIMP(typ=bool,fr= "plot detailed evolution of variables with respect to time",ang= "plot detailed evolution of variables with respect to time",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=False), -time_scale=SIMP(typ='R',fr= "conversion from attack depth to time with a square root law",ang= "conversion from attack depth to time with a square root law",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -number_of_time_steps=SIMP(typ='I',fr= "number of numerical time steps: is used to compute the size of the first time step, but then time step adaptation guides the actual number of time steps",ang= "number of numerical time steps: is used to compute the size of the first time step, but then time step adaptation guides the actual number of time steps",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -minimum_step_size=SIMP(typ='R',fr= "minimum step size for the attack depth, as fraction of the smallest aggregate size",ang= "minimum step size for the attack depth, as fraction of the smallest aggregate size",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -initial_attacked_fraction_of_biggest_grain=SIMP(typ='R',fr= "initial fraction of the biggest grains attacked",ang= "initial fraction of the biggest grains attacked",docu= "",statut= "o",into=None,min=1,max=1,val_min=1e-08,val_max='**',defaut=None), -final_attacked_fraction_of_biggest_grain=SIMP(typ='R',fr= "final fraction of biggest grains attacked",ang= "final fraction of biggest grains attacked",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max=1,defaut=None), -ring_young_modulus=SIMP(typ='R',fr= "Young modulus of ring",ang= "Young modulus of ring",docu= "",statut= "o",into=None,min=1,max=1,val_min=0.0,val_max='**',defaut=None), -ring_poisson=SIMP(typ='R',fr= "Poisson ratio of ring",ang= "Poisson ratio of ring",docu= "",statut= "o",into=None,min=1,max=1,val_min=0.0,val_max='**',defaut=None), -sample_radius=SIMP(typ='R',fr= "radius of the sample",ang= "radius of the sample",docu= "",statut= "o",into=None,min=1,max=1,val_min=0.0,val_max='**',defaut=None), -ring_thickness=SIMP(typ='R',fr= "thickness of the ring",ang= "thickness of the ring",docu= "",statut= "o",into=None,min=1,max=1,val_min=1e-20,val_max='**',defaut=None), -imposed_strain=SIMP(typ='TXM',fr= "imposed strain (must be given as a list of float, ex. [0 0 0 0 0 0])",ang= "imposed strain (must be given as a list of float, ex. [0 0 0 0 0 0])",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -imposed_stress=SIMP(typ='TXM',fr= "imposed stress (must be given as a list of float, ex. [0 0 0 0 0 0])",ang= "imposed stress (must be given as a list of float, ex. [0 0 0 0 0 0])",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -directions_of_imposed_stress=SIMP(typ='TXM',fr= "directions of imposed stress (list of 0 and 1, ex. [0 0 0 0 0 0], 0 means this component of the stress is not imposed, 1 means it is.)",ang= "directions of imposed stress (list of 0 and 1, ex. [0 0 0 0 0 0], 0 means this component of the stress is not imposed, 1 means it is.)",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -directions_of_rings=SIMP(typ='TXM',fr= "directions of strain imposed by the ring (must be given as a list of loat, ex. [0 0 0 0 0 0], 0 means there is no ring in this direction, 1 means there is. )",ang= "directions of strain imposed by the ring (must be given as a list of loat, ex. [0 0 0 0 0 0], 0 means there is no ring in this direction, 1 means there is. )",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -symmetry_of_solution=SIMP(typ='I',fr= "imposes the symmetry of the solution : -1 means no symmetry assumed, 0 means all 3 directions behave identically, 1 means axial symmetry around axis 1",ang= "imposes the symmetry of the solution : -1 means no symmetry assumed, 0 means all 3 directions behave identically, 1 means axial symmetry around axis 1",docu= "",statut= "o",into=None,min=1,max=1,val_min=-1,val_max='**',defaut=None), -aggregate_young_modulus=SIMP(typ='R',fr= "Young modulus of aggregates",ang= "Young modulus of aggregates",docu= "",statut= "o",into=None,min=1,max=1,val_min=0.0,val_max='**',defaut=None), -aggregate_poisson=SIMP(typ='R',fr= "Poisson ratio of aggregates",ang= "Poisson ratio of aggregates",docu= "",statut= "o",into=None,min=1,max=1,val_min=0.0,val_max='**',defaut=None), -cement_paste_young_modulus=SIMP(typ='R',fr= "Young modulus of cement paste ",ang= "Young modulus of cement paste ",docu= "",statut= "o",into=None,min=1,max=1,val_min=0.0,val_max='**',defaut=None), -cement_paste_poisson=SIMP(typ='R',fr= "Poisson ratio of cement paste",ang= "Poisson ratio of cement paste",docu= "",statut= "o",into=None,min=1,max=1,val_min=0.0,val_max='**',defaut=None), -itz_porosity=SIMP(typ='R',fr= "porosity of cement paste/aggregate interface",ang= "porosity of cement paste/aggregate interface",docu= "",statut= "o",into=None,min=1,max=1,val_min=0.0,val_max='**',defaut=None), -itz_thickness=SIMP(typ='R',fr= "thickness of cement paste/aggregate interface",ang= "thickness of cement paste/aggregate interface",docu= "",statut= "o",into=None,min=1,max=1,val_min=0.0,val_max='**',defaut=None), -gel_bulk_modulus=SIMP(typ='R',fr= "bulk modulus of asr gel",ang= "bulk modulus of asr gel",docu= "",statut= "o",into=None,min=1,max=1,val_min=0.0,val_max='**',defaut=None), -gel_expansion_factor=SIMP(typ='R',fr= "expansion factor of asr gel",ang= "expansion factor of asr gel",docu= "",statut= "o",into=None,min=1,max=1,val_min=0.0,val_max='**',defaut=None), -decohesion_energy=SIMP(typ='R',fr= "value of the decohesion energy between paste and aggregate",ang= "value of the decohesion energy between paste and aggregate",docu= "",statut= "o",into=None,min=1,max=1,val_min=0.0,val_max='**',defaut=None), -fracture_energy=SIMP(typ='R',fr= "value of the fracture energy in cracks",ang= "value of the fracture energy in cracks",docu= "",statut= "o",into=None,min=1,max=1,val_min=0.0,val_max='**',defaut=None), -crack_aspect_ratio=SIMP(typ='R',fr= "aspect ratio of cracks",ang= "aspect ratio of cracks",docu= "",statut= "o",into=None,min=1,max=1,val_min=0.0,val_max='**',defaut=None), -) -# ====================================================================== -# Catalog entry for the MAP function : s_probabilistic_study -# ====================================================================== -S_PROBABILISTIC_STUDY_DATA=PROC(nom='S_PROBABILISTIC_STUDY_DATA',op=None, -UIinfo ={'groupes':('concrete',)}, -random_seed=SIMP(typ='I',fr= "Random seed",ang= "Random seed",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -#distributions=SIMP(typ='TXM',into=['Independent', 'Normal','hhh','hjk'],fr= "Distribution of each parameter",ang= "Distribution of each parameter",docu= "",statut= "o",min=1,max=6,val_min='**',val_max='**'), -distributions=SIMP(typ='I',into=[1,2,3,4],fr= "Distribution of each parameter",homo="SansOrdreNiDoublon",ang= "Distribution of each parameter",docu= "",statut= "o",min=1,max=6,val_min='**',val_max='**'), -#distributions=SIMP(typ='I',fr= "Distribution of each parameter",ang= "Distribution of each parameter",docu= "",statut= "o",min=3,max=6,val_min='**',val_max='**'), -#distributions=SIMP(typ='TXM',into=['Independent', 'Normal','hhh','hjk'],fr= "Distribution of each parameter",ang= "Distribution of each parameter",docu= "",statut= "o",min=1,max='**',val_min='**',val_max='**'), -dependancy_relationship=SIMP(typ='TXM',fr= "Dependancy relationship for input random parameters",ang= "Dependancy relationship for input random parameters",docu= "",statut= "f",into=['Independent', 'Normal'],min=1,max=1,val_min='**',val_max='**',defaut='Independent'), -corr_matrix_filename=SIMP(typ=('Fichier', 'All Files (*)'),fr= "Correlation matrix filename",ang= "Correlation matrix filename",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -size=SIMP(typ='I',fr= "Size of the experimental design",ang= "Size of the experimental design",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -design_type=SIMP(typ='TXM',fr= "Design type",ang= "Design type",docu= "",statut= "o",into=['MC', 'LHS', 'QMC_Sobol', 'QMC_Halton'],min=1,max=1,val_min='**',val_max='**',defaut=None), -template_file=SIMP(typ='TXM',fr= "Template filename (an empty string means no template)",ang= "Template filename (an empty string means no template)",docu= "",statut= "f",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -csv_output_filename=SIMP(typ=('Fichier', 'All Files ()', 'Sauvegarde'),fr= "csv_output_filename readable with a text editor",ang= "csv_output_filename readable with a text editor",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -xml_output_filename=SIMP(typ=('Fichier', 'All Files ()', 'Sauvegarde'),fr= "xml_output_filename readable by OpenTURNS with input distribution information",ang= "xml_output_filename readable by OpenTURNS with input distribution information",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -computation_script=SIMP(typ=('Fichier', 'All Files (*)'),fr= "A Python script to be run",ang= "A Python script to be run",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -csv_output_data_filename=SIMP(typ=('Fichier', 'All Files ()', 'Sauvegarde'),fr= "A CSV file that contains NxS values",ang= "A CSV file that contains NxS values",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -) -# ====================================================================== -# Catalog entry for the MAP function : s_polymers_study -# ====================================================================== -S_POLYMERS_STUDY_DATA=PROC(nom='S_POLYMERS_STUDY_DATA',op=None, -UIinfo ={'groupes':('polymers',)}, -model=SIMP(typ=bool,fr= "Determines if solver input will be created from a model.",ang= "Determines if solver input will be created from a model.",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -applied_post=SIMP(typ=bool,fr= "Determines if a post treatement input will be created.",ang= "Determines if a post treatement input will be created.",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -applied_graph=SIMP(typ=bool,fr= "Determines if a graphical treatement input will be created.",ang= "Determines if a graphical treatement input will be created.",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -model_True_applied_post_True_applied_graph_True=BLOC(condition="(model==True and applied_post==True and applied_graph==True)", -folder_output=SIMP(typ='TXM',fr= "Name of the forder where output is written.",ang= "Name of the forder where output is written.",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -study_name=SIMP(typ='TXM',fr= "Name of the computation.",ang= "Name of the computation.",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -model_reference_number=SIMP(typ='I',fr= "Reference number of the model in data-base",ang= "Reference number of the model in data-base",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -csv_output_file_name=SIMP(typ='TXM',fr= "define the output file name.",ang= "define the output file name.",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -job=SIMP(typ='TXM',fr= "type of treatement",ang= "type of treatement",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -solver_input_filename=SIMP(typ='TXM',fr= "Name of the input file given to the solver.",ang= "Name of the input file given to the solver.",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut='c_solver_stiff_ode_1d.input'), -computation_parameters=SIMP(typ='TXM',fr= "List of computation parameters.",ang= "List of computation parameters.",docu= "",statut= "o",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -computation_parameter_names=SIMP(typ='TXM',fr= "List of computation parameter names",ang= "List of computation parameter names",docu= "",statut= "o",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -non_Arrhenius_coef_names=SIMP(typ='TXM',fr= "List of parameters which do not follow Arrhenius law.",ang= "List of parameters which do not follow Arrhenius law.",docu= "",statut= "f",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -initial_value_names=SIMP(typ='TXM',fr= "List of the equations unkown parameter.",ang= "List of the equations unkown parameter.",docu= "",statut= "f",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -initial_values=SIMP(typ='TXM',fr= "List of the equations unkown initial values.",ang= "List of the equations unkown initial values.",docu= "",statut= "f",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -equation=SIMP(typ='TXM',fr= "List of equations number which is be used in the model.",ang= "List of equations number which is be used in the model.",docu= "",statut= "f",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -boundary_condition_nodes=SIMP(typ='TXM',fr= "List of nodes where the boundary conditions will be applied.",ang= "List of nodes where the boundary conditions will be applied.",docu= "",statut= "o",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -boundary_condition_parameter=SIMP(typ='TXM',fr= "List of species to whom the boundary conditions will be applied.",ang= "List of species to whom the boundary conditions will be applied.",docu= "",statut= "o",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -boundary_condition_types=SIMP(typ='TXM',fr= "List of type of boundary conditions.",ang= "List of type of boundary conditions.",docu= "",statut= "o",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -boundary_condition_values=SIMP(typ='TXM',fr= "List of values for the defiend boundary conditions.",ang= "List of values for the defiend boundary conditions.",docu= "",statut= "o",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -data_base=SIMP(typ='TXM',fr= "Name of the data base",ang= "Name of the data base",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -post_equations=SIMP(typ='TXM',fr= "List of post treatment equations.",ang= "List of post treatment equations.",docu= "",statut= "o",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -integrate=SIMP(typ='TXM',fr= "List of boolean which define if the equation have to be intergrated.",ang= "List of boolean which define if the equation have to be intergrated.",docu= "",statut= "o",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -post_treatment_names=SIMP(typ='TXM',fr= "List of post treatment names.",ang= "List of post treatment names.",docu= "",statut= "o",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -constant=SIMP(typ='TXM',fr= "List of cinetic parameter names.",ang= "List of cinetic parameter names.",docu= "",statut= "f",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -forced_param=SIMP(typ='TXM',fr= "List of cinetic parameter names with a different value than the one used for the solver computation.",ang= "List of cinetic parameter names with a different value than the one used for the solver computation.",docu= "",statut= "o",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -prerequisite=SIMP(typ='TXM',fr= "List of parameter list which are prerequisite for the post treatement equation.",ang= "List of parameter list which are prerequisite for the post treatement equation.",docu= "",statut= "o",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -Arrhenius_names_post=SIMP(typ='TXM',fr= "List of parameter names which follow Arrhenius law.",ang= "List of parameter names which follow Arrhenius law.",docu= "",statut= "f",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -Arrhenius_A=SIMP(typ='TXM',fr= "List of pre exponetial parameters for Arrhenius law.",ang= "List of pre exponetial parameters for Arrhenius law.",docu= "",statut= "f",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -Arrhenius_Ea=SIMP(typ='TXM',fr= "List of activation energy parameters for Arrhenius law.",ang= "List of activation energy parameters for Arrhenius law.",docu= "",statut= "f",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -graphic_names=SIMP(typ='TXM',fr= "List of graphic names.",ang= "List of graphic names.",docu= "",statut= "f",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -graphic_nodes=SIMP(typ='TXM',fr= "List of nodes.",ang= "List of nodes.",docu= "",statut= "f",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -graphic_log=SIMP(typ='TXM',fr= "List of boolean.",ang= "List of boolean.",docu= "",statut= "f",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -experimental_graphic_name=SIMP(typ='TXM',fr= "List of graphic names.",ang= "List of graphic names.",docu= "",statut= "f",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -experimental_name=SIMP(typ='TXM',fr= "List of experimental data names.",ang= "List of experimental data names.",docu= "",statut= "f",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -experimental_file=SIMP(typ='TXM',fr= "List of experimental data files.",ang= "List of experimental data files.",docu= "",statut= "f",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -graphic_space_names=SIMP(typ='TXM',fr= "List of graphic names.",ang= "List of graphic names.",docu= "",statut= "f",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -graphic_space_nodes=SIMP(typ='TXM',fr= "List of nodes.",ang= "List of nodes.",docu= "",statut= "f",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -graphic_space_times=SIMP(typ='TXM',fr= "List of time.",ang= "List of time.",docu= "",statut= "f",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -graphic_space_log=SIMP(typ='TXM',fr= "List of boolean.",ang= "List of boolean.",docu= "",statut= "f",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -), -model_True_applied_post_True_applied_graph_False=BLOC(condition="(model==True and applied_post==True and applied_graph==False)", -folder_output=SIMP(typ='TXM',fr= "Name of the forder where output is written.",ang= "Name of the forder where output is written.",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -study_name=SIMP(typ='TXM',fr= "Name of the computation.",ang= "Name of the computation.",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -model_reference_number=SIMP(typ='I',fr= "Reference number of the model in data-base",ang= "Reference number of the model in data-base",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -csv_output_file_name=SIMP(typ='TXM',fr= "define the output file name.",ang= "define the output file name.",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -job=SIMP(typ='TXM',fr= "type of treatement",ang= "type of treatement",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -solver_input_filename=SIMP(typ='TXM',fr= "Name of the input file given to the solver.",ang= "Name of the input file given to the solver.",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut='c_solver_stiff_ode_1d.input'), -computation_parameters=SIMP(typ='TXM',fr= "List of computation parameters.",ang= "List of computation parameters.",docu= "",statut= "o",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -computation_parameter_names=SIMP(typ='TXM',fr= "List of computation parameter names",ang= "List of computation parameter names",docu= "",statut= "o",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -non_Arrhenius_coef_names=SIMP(typ='TXM',fr= "List of parameters which do not follow Arrhenius law.",ang= "List of parameters which do not follow Arrhenius law.",docu= "",statut= "f",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -initial_value_names=SIMP(typ='TXM',fr= "List of the equations unkown parameter.",ang= "List of the equations unkown parameter.",docu= "",statut= "f",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -initial_values=SIMP(typ='TXM',fr= "List of the equations unkown initial values.",ang= "List of the equations unkown initial values.",docu= "",statut= "f",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -equation=SIMP(typ='TXM',fr= "List of equations number which is be used in the model.",ang= "List of equations number which is be used in the model.",docu= "",statut= "f",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -boundary_condition_nodes=SIMP(typ='TXM',fr= "List of nodes where the boundary conditions will be applied.",ang= "List of nodes where the boundary conditions will be applied.",docu= "",statut= "o",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -boundary_condition_parameter=SIMP(typ='TXM',fr= "List of species to whom the boundary conditions will be applied.",ang= "List of species to whom the boundary conditions will be applied.",docu= "",statut= "o",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -boundary_condition_types=SIMP(typ='TXM',fr= "List of type of boundary conditions.",ang= "List of type of boundary conditions.",docu= "",statut= "o",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -boundary_condition_values=SIMP(typ='TXM',fr= "List of values for the defiend boundary conditions.",ang= "List of values for the defiend boundary conditions.",docu= "",statut= "o",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -data_base=SIMP(typ='TXM',fr= "Name of the data base",ang= "Name of the data base",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -post_equations=SIMP(typ='TXM',fr= "List of post treatment equations.",ang= "List of post treatment equations.",docu= "",statut= "o",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -integrate=SIMP(typ='TXM',fr= "List of boolean which define if the equation have to be intergrated.",ang= "List of boolean which define if the equation have to be intergrated.",docu= "",statut= "o",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -post_treatment_names=SIMP(typ='TXM',fr= "List of post treatment names.",ang= "List of post treatment names.",docu= "",statut= "o",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -constant=SIMP(typ='TXM',fr= "List of cinetic parameter names.",ang= "List of cinetic parameter names.",docu= "",statut= "f",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -forced_param=SIMP(typ='TXM',fr= "List of cinetic parameter names with a different value than the one used for the solver computation.",ang= "List of cinetic parameter names with a different value than the one used for the solver computation.",docu= "",statut= "o",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -prerequisite=SIMP(typ='TXM',fr= "List of parameter list which are prerequisite for the post treatement equation.",ang= "List of parameter list which are prerequisite for the post treatement equation.",docu= "",statut= "o",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -Arrhenius_names_post=SIMP(typ='TXM',fr= "List of parameter names which follow Arrhenius law.",ang= "List of parameter names which follow Arrhenius law.",docu= "",statut= "f",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -Arrhenius_A=SIMP(typ='TXM',fr= "List of pre exponetial parameters for Arrhenius law.",ang= "List of pre exponetial parameters for Arrhenius law.",docu= "",statut= "f",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -Arrhenius_Ea=SIMP(typ='TXM',fr= "List of activation energy parameters for Arrhenius law.",ang= "List of activation energy parameters for Arrhenius law.",docu= "",statut= "f",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -), -model_True_applied_post_False_applied_graph_True=BLOC(condition="(model==True and applied_post==False and applied_graph==True)", -folder_output=SIMP(typ='TXM',fr= "Name of the forder where output is written.",ang= "Name of the forder where output is written.",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -study_name=SIMP(typ='TXM',fr= "Name of the computation.",ang= "Name of the computation.",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -model_reference_number=SIMP(typ='I',fr= "Reference number of the model in data-base",ang= "Reference number of the model in data-base",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -csv_output_file_name=SIMP(typ='TXM',fr= "define the output file name.",ang= "define the output file name.",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -job=SIMP(typ='TXM',fr= "type of treatement",ang= "type of treatement",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -solver_input_filename=SIMP(typ='TXM',fr= "Name of the input file given to the solver.",ang= "Name of the input file given to the solver.",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut='c_solver_stiff_ode_1d.input'), -computation_parameters=SIMP(typ='TXM',fr= "List of computation parameters.",ang= "List of computation parameters.",docu= "",statut= "o",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -computation_parameter_names=SIMP(typ='TXM',fr= "List of computation parameter names",ang= "List of computation parameter names",docu= "",statut= "o",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -non_Arrhenius_coef_names=SIMP(typ='TXM',fr= "List of parameters which do not follow Arrhenius law.",ang= "List of parameters which do not follow Arrhenius law.",docu= "",statut= "f",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -initial_value_names=SIMP(typ='TXM',fr= "List of the equations unkown parameter.",ang= "List of the equations unkown parameter.",docu= "",statut= "f",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -initial_values=SIMP(typ='TXM',fr= "List of the equations unkown initial values.",ang= "List of the equations unkown initial values.",docu= "",statut= "f",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -equation=SIMP(typ='TXM',fr= "List of equations number which is be used in the model.",ang= "List of equations number which is be used in the model.",docu= "",statut= "f",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -boundary_condition_nodes=SIMP(typ='TXM',fr= "List of nodes where the boundary conditions will be applied.",ang= "List of nodes where the boundary conditions will be applied.",docu= "",statut= "o",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -boundary_condition_parameter=SIMP(typ='TXM',fr= "List of species to whom the boundary conditions will be applied.",ang= "List of species to whom the boundary conditions will be applied.",docu= "",statut= "o",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -boundary_condition_types=SIMP(typ='TXM',fr= "List of type of boundary conditions.",ang= "List of type of boundary conditions.",docu= "",statut= "o",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -boundary_condition_values=SIMP(typ='TXM',fr= "List of values for the defiend boundary conditions.",ang= "List of values for the defiend boundary conditions.",docu= "",statut= "o",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -data_base=SIMP(typ='TXM',fr= "Name of the data base",ang= "Name of the data base",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -graphic_names=SIMP(typ='TXM',fr= "List of graphic names.",ang= "List of graphic names.",docu= "",statut= "f",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -graphic_nodes=SIMP(typ='TXM',fr= "List of nodes.",ang= "List of nodes.",docu= "",statut= "f",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -graphic_log=SIMP(typ='TXM',fr= "List of boolean.",ang= "List of boolean.",docu= "",statut= "f",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -experimental_graphic_name=SIMP(typ='TXM',fr= "List of graphic names.",ang= "List of graphic names.",docu= "",statut= "f",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -experimental_name=SIMP(typ='TXM',fr= "List of experimental data names.",ang= "List of experimental data names.",docu= "",statut= "f",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -experimental_file=SIMP(typ='TXM',fr= "List of experimental data files.",ang= "List of experimental data files.",docu= "",statut= "f",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -graphic_space_names=SIMP(typ='TXM',fr= "List of graphic names.",ang= "List of graphic names.",docu= "",statut= "f",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -graphic_space_nodes=SIMP(typ='TXM',fr= "List of nodes.",ang= "List of nodes.",docu= "",statut= "f",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -graphic_space_times=SIMP(typ='TXM',fr= "List of time.",ang= "List of time.",docu= "",statut= "f",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -graphic_space_log=SIMP(typ='TXM',fr= "List of boolean.",ang= "List of boolean.",docu= "",statut= "f",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -), -model_True_applied_post_False_applied_graph_False=BLOC(condition="(model==True and applied_post==False and applied_graph==False)", -folder_output=SIMP(typ='TXM',fr= "Name of the forder where output is written.",ang= "Name of the forder where output is written.",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -study_name=SIMP(typ='TXM',fr= "Name of the computation.",ang= "Name of the computation.",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -model_reference_number=SIMP(typ='I',fr= "Reference number of the model in data-base",ang= "Reference number of the model in data-base",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -csv_output_file_name=SIMP(typ='TXM',fr= "define the output file name.",ang= "define the output file name.",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -job=SIMP(typ='TXM',fr= "type of treatement",ang= "type of treatement",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -solver_input_filename=SIMP(typ='TXM',fr= "Name of the input file given to the solver.",ang= "Name of the input file given to the solver.",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut='c_solver_stiff_ode_1d.input'), -computation_parameters=SIMP(typ='TXM',fr= "List of computation parameters.",ang= "List of computation parameters.",docu= "",statut= "o",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -computation_parameter_names=SIMP(typ='TXM',fr= "List of computation parameter names",ang= "List of computation parameter names",docu= "",statut= "o",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -non_Arrhenius_coef_names=SIMP(typ='TXM',fr= "List of parameters which do not follow Arrhenius law.",ang= "List of parameters which do not follow Arrhenius law.",docu= "",statut= "f",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -initial_value_names=SIMP(typ='TXM',fr= "List of the equations unkown parameter.",ang= "List of the equations unkown parameter.",docu= "",statut= "f",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -initial_values=SIMP(typ='TXM',fr= "List of the equations unkown initial values.",ang= "List of the equations unkown initial values.",docu= "",statut= "f",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -equation=SIMP(typ='TXM',fr= "List of equations number which is be used in the model.",ang= "List of equations number which is be used in the model.",docu= "",statut= "f",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -boundary_condition_nodes=SIMP(typ='TXM',fr= "List of nodes where the boundary conditions will be applied.",ang= "List of nodes where the boundary conditions will be applied.",docu= "",statut= "o",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -boundary_condition_parameter=SIMP(typ='TXM',fr= "List of species to whom the boundary conditions will be applied.",ang= "List of species to whom the boundary conditions will be applied.",docu= "",statut= "o",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -boundary_condition_types=SIMP(typ='TXM',fr= "List of type of boundary conditions.",ang= "List of type of boundary conditions.",docu= "",statut= "o",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -boundary_condition_values=SIMP(typ='TXM',fr= "List of values for the defiend boundary conditions.",ang= "List of values for the defiend boundary conditions.",docu= "",statut= "o",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -data_base=SIMP(typ='TXM',fr= "Name of the data base",ang= "Name of the data base",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -), -model_False_applied_post_True_applied_graph_True=BLOC(condition="(model==False and applied_post==True and applied_graph==True)", -post_equations=SIMP(typ='TXM',fr= "List of post treatment equations.",ang= "List of post treatment equations.",docu= "",statut= "o",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -integrate=SIMP(typ='TXM',fr= "List of boolean which define if the equation have to be intergrated.",ang= "List of boolean which define if the equation have to be intergrated.",docu= "",statut= "o",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -post_treatment_names=SIMP(typ='TXM',fr= "List of post treatment names.",ang= "List of post treatment names.",docu= "",statut= "o",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -constant=SIMP(typ='TXM',fr= "List of cinetic parameter names.",ang= "List of cinetic parameter names.",docu= "",statut= "f",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -forced_param=SIMP(typ='TXM',fr= "List of cinetic parameter names with a different value than the one used for the solver computation.",ang= "List of cinetic parameter names with a different value than the one used for the solver computation.",docu= "",statut= "o",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -prerequisite=SIMP(typ='TXM',fr= "List of parameter list which are prerequisite for the post treatement equation.",ang= "List of parameter list which are prerequisite for the post treatement equation.",docu= "",statut= "o",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -Arrhenius_names_post=SIMP(typ='TXM',fr= "List of parameter names which follow Arrhenius law.",ang= "List of parameter names which follow Arrhenius law.",docu= "",statut= "f",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -Arrhenius_A=SIMP(typ='TXM',fr= "List of pre exponetial parameters for Arrhenius law.",ang= "List of pre exponetial parameters for Arrhenius law.",docu= "",statut= "f",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -Arrhenius_Ea=SIMP(typ='TXM',fr= "List of activation energy parameters for Arrhenius law.",ang= "List of activation energy parameters for Arrhenius law.",docu= "",statut= "f",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -folder_output=SIMP(typ='TXM',fr= "Name of the forder where output is written.",ang= "Name of the forder where output is written.",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -study_name=SIMP(typ='TXM',fr= "Name of the computation.",ang= "Name of the computation.",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -graphic_names=SIMP(typ='TXM',fr= "List of graphic names.",ang= "List of graphic names.",docu= "",statut= "f",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -graphic_nodes=SIMP(typ='TXM',fr= "List of nodes.",ang= "List of nodes.",docu= "",statut= "f",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -graphic_log=SIMP(typ='TXM',fr= "List of boolean.",ang= "List of boolean.",docu= "",statut= "f",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -experimental_graphic_name=SIMP(typ='TXM',fr= "List of graphic names.",ang= "List of graphic names.",docu= "",statut= "f",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -experimental_name=SIMP(typ='TXM',fr= "List of experimental data names.",ang= "List of experimental data names.",docu= "",statut= "f",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -experimental_file=SIMP(typ='TXM',fr= "List of experimental data files.",ang= "List of experimental data files.",docu= "",statut= "f",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -graphic_space_names=SIMP(typ='TXM',fr= "List of graphic names.",ang= "List of graphic names.",docu= "",statut= "f",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -graphic_space_nodes=SIMP(typ='TXM',fr= "List of nodes.",ang= "List of nodes.",docu= "",statut= "f",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -graphic_space_times=SIMP(typ='TXM',fr= "List of time.",ang= "List of time.",docu= "",statut= "f",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -graphic_space_log=SIMP(typ='TXM',fr= "List of boolean.",ang= "List of boolean.",docu= "",statut= "f",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -), -model_False_applied_post_True_applied_graph_False=BLOC(condition="(model==False and applied_post==True and applied_graph==False)", -folder_output=SIMP(typ='TXM',fr= "Name of the forder where output is written.",ang= "Name of the forder where output is written.",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -study_name=SIMP(typ='TXM',fr= "Name of the computation.",ang= "Name of the computation.",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -model_reference_number=SIMP(typ='I',fr= "Reference number of the model in data-base",ang= "Reference number of the model in data-base",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -csv_output_file_name=SIMP(typ='TXM',fr= "define the output file name.",ang= "define the output file name.",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -post_equations=SIMP(typ='TXM',fr= "List of post treatment equations.",ang= "List of post treatment equations.",docu= "",statut= "o",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -integrate=SIMP(typ='TXM',fr= "List of boolean which define if the equation have to be intergrated.",ang= "List of boolean which define if the equation have to be intergrated.",docu= "",statut= "o",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -post_treatment_names=SIMP(typ='TXM',fr= "List of post treatment names.",ang= "List of post treatment names.",docu= "",statut= "o",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -constant=SIMP(typ='TXM',fr= "List of cinetic parameter names.",ang= "List of cinetic parameter names.",docu= "",statut= "f",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -forced_param=SIMP(typ='TXM',fr= "List of cinetic parameter names with a different value than the one used for the solver computation.",ang= "List of cinetic parameter names with a different value than the one used for the solver computation.",docu= "",statut= "o",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -prerequisite=SIMP(typ='TXM',fr= "List of parameter list which are prerequisite for the post treatement equation.",ang= "List of parameter list which are prerequisite for the post treatement equation.",docu= "",statut= "o",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -Arrhenius_names_post=SIMP(typ='TXM',fr= "List of parameter names which follow Arrhenius law.",ang= "List of parameter names which follow Arrhenius law.",docu= "",statut= "f",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -Arrhenius_A=SIMP(typ='TXM',fr= "List of pre exponetial parameters for Arrhenius law.",ang= "List of pre exponetial parameters for Arrhenius law.",docu= "",statut= "f",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -Arrhenius_Ea=SIMP(typ='TXM',fr= "List of activation energy parameters for Arrhenius law.",ang= "List of activation energy parameters for Arrhenius law.",docu= "",statut= "f",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -data_base=SIMP(typ='TXM',fr= "Name of the data base",ang= "Name of the data base",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -), -model_False_applied_post_False_applied_graph_True=BLOC(condition="(model==False and applied_post==False and applied_graph==True)", -folder_output=SIMP(typ='TXM',fr= "Name of the forder where output is written.",ang= "Name of the forder where output is written.",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -study_name=SIMP(typ='TXM',fr= "Name of the computation.",ang= "Name of the computation.",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -graphic_names=SIMP(typ='TXM',fr= "List of graphic names.",ang= "List of graphic names.",docu= "",statut= "f",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -graphic_nodes=SIMP(typ='TXM',fr= "List of nodes.",ang= "List of nodes.",docu= "",statut= "f",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -graphic_log=SIMP(typ='TXM',fr= "List of boolean.",ang= "List of boolean.",docu= "",statut= "f",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -experimental_graphic_name=SIMP(typ='TXM',fr= "List of graphic names.",ang= "List of graphic names.",docu= "",statut= "f",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -experimental_name=SIMP(typ='TXM',fr= "List of experimental data names.",ang= "List of experimental data names.",docu= "",statut= "f",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -experimental_file=SIMP(typ='TXM',fr= "List of experimental data files.",ang= "List of experimental data files.",docu= "",statut= "f",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -graphic_space_names=SIMP(typ='TXM',fr= "List of graphic names.",ang= "List of graphic names.",docu= "",statut= "f",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -graphic_space_nodes=SIMP(typ='TXM',fr= "List of nodes.",ang= "List of nodes.",docu= "",statut= "f",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -graphic_space_times=SIMP(typ='TXM',fr= "List of time.",ang= "List of time.",docu= "",statut= "f",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -graphic_space_log=SIMP(typ='TXM',fr= "List of boolean.",ang= "List of boolean.",docu= "",statut= "f",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -), -model_False_applied_post_False_applied_graph_False=BLOC(condition="(model==False and applied_post==False and applied_graph==False)", -folder_output=SIMP(typ='TXM',fr= "Name of the forder where output is written.",ang= "Name of the forder where output is written.",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -study_name=SIMP(typ='TXM',fr= "Name of the computation.",ang= "Name of the computation.",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -graphic_names=SIMP(typ='TXM',fr= "List of graphic names.",ang= "List of graphic names.",docu= "",statut= "f",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -graphic_nodes=SIMP(typ='TXM',fr= "List of nodes.",ang= "List of nodes.",docu= "",statut= "f",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -graphic_log=SIMP(typ='TXM',fr= "List of boolean.",ang= "List of boolean.",docu= "",statut= "f",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -experimental_graphic_name=SIMP(typ='TXM',fr= "List of graphic names.",ang= "List of graphic names.",docu= "",statut= "f",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -experimental_name=SIMP(typ='TXM',fr= "List of experimental data names.",ang= "List of experimental data names.",docu= "",statut= "f",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -experimental_file=SIMP(typ='TXM',fr= "List of experimental data files.",ang= "List of experimental data files.",docu= "",statut= "f",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -graphic_space_names=SIMP(typ='TXM',fr= "List of graphic names.",ang= "List of graphic names.",docu= "",statut= "f",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -graphic_space_nodes=SIMP(typ='TXM',fr= "List of nodes.",ang= "List of nodes.",docu= "",statut= "f",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -graphic_space_times=SIMP(typ='TXM',fr= "List of time.",ang= "List of time.",docu= "",statut= "f",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -graphic_space_log=SIMP(typ='TXM',fr= "List of boolean.",ang= "List of boolean.",docu= "",statut= "f",into=None,min=1,max='**',val_min='**',val_max='**',defaut=None), -), -) -# ====================================================================== -# Catalog entry for the MAP function : s_scc_3d_analysis -# ====================================================================== -S_SCC_3D_ANALYSIS_DATA=PROC(nom='S_SCC_3D_ANALYSIS_DATA',op=None, -UIinfo ={'groupes':('scc',)}, -calculation=SIMP(typ='TXM',fr= "The calculation type",ang= "The calculation type",docu= "",statut= "o",into=['altitude', 'thickness'],min=1,max=1,val_min='**',val_max='**',defaut='altitude'), -surface_type=SIMP(typ='TXM',fr= "nature of the input surface, select how it is interpreted by the component",ang= "nature of the input surface, select how it is interpreted by the component",docu= "",statut= "o",into=['rectangle_grid', 'crack_fit'],min=1,max=1,val_min='**',val_max='**',defaut='rectangle_grid'), -post=SIMP(typ='TXM',fr= "the value must be included into the following list: CDF (Cumulative Density Function), PDF (Probability Density Function), dgb (distance to grain boundary graph : needs a distance_grain_boundary column in the data file), quantification (computes the optimised distribution in a family of distributions and estimates its parameter)",ang= "the value must be included into the following list: CDF (Cumulative Density Function), PDF (Probability Density Function), dgb (distance to grain boundary graph : needs a distance_grain_boundary column in the data file), quantification (computes the optimised distribution in a family of distributions and estimates its parameter)",docu= "",statut= "o",into=['CDF', 'PDF', 'dgb', 'quantification'],min=1,max=1,val_min='**',val_max='**',defaut='PDF'), -statistics=SIMP(typ=bool,fr= "Not documented",ang= "Not documented",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=True), -spectrum_analysis=SIMP(typ=bool,fr= "Not documented",ang= "Not documented",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=True), -calculation_altitude_surface_type_rectangle_grid_post_CDF_statistics_True_spectrum_analysis_True=BLOC(condition="(calculation=='altitude' and surface_type=='rectangle_grid' and post=='CDF' and statistics==True and spectrum_analysis==True)", -direction=SIMP(typ='I',fr= "The direction type",ang= "The direction type",docu= "",statut= "o",into=[1, -1, 2, -2, 3, -3],min=1,max=1,val_min='**',val_max='**',defaut=1), -input_grid_field_raw=SIMP(typ=('Fichier', 'All Files (*)'),fr= "field data file",ang= "field data file",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -input_grid_field_raw_metadata=SIMP(typ=('Fichier', 'All Files (*)'),fr= "field metadata file",ang= "field metadata file",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -), -calculation_altitude_surface_type_rectangle_grid_post_CDF_statistics_True_spectrum_analysis_False=BLOC(condition="(calculation=='altitude' and surface_type=='rectangle_grid' and post=='CDF' and statistics==True and spectrum_analysis==False)", -direction=SIMP(typ='I',fr= "The direction type",ang= "The direction type",docu= "",statut= "o",into=[1, -1, 2, -2, 3, -3],min=1,max=1,val_min='**',val_max='**',defaut=1), -input_grid_field_raw=SIMP(typ=('Fichier', 'All Files (*)'),fr= "field data file",ang= "field data file",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -input_grid_field_raw_metadata=SIMP(typ=('Fichier', 'All Files (*)'),fr= "field metadata file",ang= "field metadata file",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -nb_segments=SIMP(typ='I',fr= "number of 1D segments for each elementary face of the surface in the resulting mesh",ang= "number of 1D segments for each elementary face of the surface in the resulting mesh",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -), -calculation_altitude_surface_type_rectangle_grid_post_CDF_statistics_False_spectrum_analysis_True=BLOC(condition="(calculation=='altitude' and surface_type=='rectangle_grid' and post=='CDF' and statistics==False and spectrum_analysis==True)", -direction=SIMP(typ='I',fr= "The direction type",ang= "The direction type",docu= "",statut= "o",into=[1, -1, 2, -2, 3, -3],min=1,max=1,val_min='**',val_max='**',defaut=1), -input_grid_field_raw=SIMP(typ=('Fichier', 'All Files (*)'),fr= "field data file",ang= "field data file",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -input_grid_field_raw_metadata=SIMP(typ=('Fichier', 'All Files (*)'),fr= "field metadata file",ang= "field metadata file",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -), -calculation_altitude_surface_type_rectangle_grid_post_CDF_statistics_False_spectrum_analysis_False=BLOC(condition="(calculation=='altitude' and surface_type=='rectangle_grid' and post=='CDF' and statistics==False and spectrum_analysis==False)", -direction=SIMP(typ='I',fr= "The direction type",ang= "The direction type",docu= "",statut= "o",into=[1, -1, 2, -2, 3, -3],min=1,max=1,val_min='**',val_max='**',defaut=1), -input_grid_field_raw=SIMP(typ=('Fichier', 'All Files (*)'),fr= "field data file",ang= "field data file",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -input_grid_field_raw_metadata=SIMP(typ=('Fichier', 'All Files (*)'),fr= "field metadata file",ang= "field metadata file",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -nb_segments=SIMP(typ='I',fr= "number of 1D segments for each elementary face of the surface in the resulting mesh",ang= "number of 1D segments for each elementary face of the surface in the resulting mesh",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -), -calculation_altitude_surface_type_rectangle_grid_post_PDF_statistics_True_spectrum_analysis_True=BLOC(condition="(calculation=='altitude' and surface_type=='rectangle_grid' and post=='PDF' and statistics==True and spectrum_analysis==True)", -direction=SIMP(typ='I',fr= "The direction type",ang= "The direction type",docu= "",statut= "o",into=[1, -1, 2, -2, 3, -3],min=1,max=1,val_min='**',val_max='**',defaut=1), -input_grid_field_raw=SIMP(typ=('Fichier', 'All Files (*)'),fr= "field data file",ang= "field data file",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -input_grid_field_raw_metadata=SIMP(typ=('Fichier', 'All Files (*)'),fr= "field metadata file",ang= "field metadata file",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -), -calculation_altitude_surface_type_rectangle_grid_post_PDF_statistics_True_spectrum_analysis_False=BLOC(condition="(calculation=='altitude' and surface_type=='rectangle_grid' and post=='PDF' and statistics==True and spectrum_analysis==False)", -direction=SIMP(typ='I',fr= "The direction type",ang= "The direction type",docu= "",statut= "o",into=[1, -1, 2, -2, 3, -3],min=1,max=1,val_min='**',val_max='**',defaut=1), -input_grid_field_raw=SIMP(typ=('Fichier', 'All Files (*)'),fr= "field data file",ang= "field data file",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -input_grid_field_raw_metadata=SIMP(typ=('Fichier', 'All Files (*)'),fr= "field metadata file",ang= "field metadata file",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -nb_segments=SIMP(typ='I',fr= "number of 1D segments for each elementary face of the surface in the resulting mesh",ang= "number of 1D segments for each elementary face of the surface in the resulting mesh",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -), -calculation_altitude_surface_type_rectangle_grid_post_PDF_statistics_False_spectrum_analysis_True=BLOC(condition="(calculation=='altitude' and surface_type=='rectangle_grid' and post=='PDF' and statistics==False and spectrum_analysis==True)", -direction=SIMP(typ='I',fr= "The direction type",ang= "The direction type",docu= "",statut= "o",into=[1, -1, 2, -2, 3, -3],min=1,max=1,val_min='**',val_max='**',defaut=1), -input_grid_field_raw=SIMP(typ=('Fichier', 'All Files (*)'),fr= "field data file",ang= "field data file",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -input_grid_field_raw_metadata=SIMP(typ=('Fichier', 'All Files (*)'),fr= "field metadata file",ang= "field metadata file",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -), -calculation_altitude_surface_type_rectangle_grid_post_PDF_statistics_False_spectrum_analysis_False=BLOC(condition="(calculation=='altitude' and surface_type=='rectangle_grid' and post=='PDF' and statistics==False and spectrum_analysis==False)", -direction=SIMP(typ='I',fr= "The direction type",ang= "The direction type",docu= "",statut= "o",into=[1, -1, 2, -2, 3, -3],min=1,max=1,val_min='**',val_max='**',defaut=1), -input_grid_field_raw=SIMP(typ=('Fichier', 'All Files (*)'),fr= "field data file",ang= "field data file",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -input_grid_field_raw_metadata=SIMP(typ=('Fichier', 'All Files (*)'),fr= "field metadata file",ang= "field metadata file",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -nb_segments=SIMP(typ='I',fr= "number of 1D segments for each elementary face of the surface in the resulting mesh",ang= "number of 1D segments for each elementary face of the surface in the resulting mesh",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -), -calculation_altitude_surface_type_rectangle_grid_post_dgb_statistics_True_spectrum_analysis_True=BLOC(condition="(calculation=='altitude' and surface_type=='rectangle_grid' and post=='dgb' and statistics==True and spectrum_analysis==True)", -direction=SIMP(typ='I',fr= "The direction type",ang= "The direction type",docu= "",statut= "o",into=[1, -1, 2, -2, 3, -3],min=1,max=1,val_min='**',val_max='**',defaut=1), -input_grid_field_raw=SIMP(typ=('Fichier', 'All Files (*)'),fr= "field data file",ang= "field data file",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -input_grid_field_raw_metadata=SIMP(typ=('Fichier', 'All Files (*)'),fr= "field metadata file",ang= "field metadata file",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -), -calculation_altitude_surface_type_rectangle_grid_post_dgb_statistics_True_spectrum_analysis_False=BLOC(condition="(calculation=='altitude' and surface_type=='rectangle_grid' and post=='dgb' and statistics==True and spectrum_analysis==False)", -direction=SIMP(typ='I',fr= "The direction type",ang= "The direction type",docu= "",statut= "o",into=[1, -1, 2, -2, 3, -3],min=1,max=1,val_min='**',val_max='**',defaut=1), -input_grid_field_raw=SIMP(typ=('Fichier', 'All Files (*)'),fr= "field data file",ang= "field data file",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -input_grid_field_raw_metadata=SIMP(typ=('Fichier', 'All Files (*)'),fr= "field metadata file",ang= "field metadata file",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -nb_segments=SIMP(typ='I',fr= "number of 1D segments for each elementary face of the surface in the resulting mesh",ang= "number of 1D segments for each elementary face of the surface in the resulting mesh",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -), -calculation_altitude_surface_type_rectangle_grid_post_dgb_statistics_False_spectrum_analysis_True=BLOC(condition="(calculation=='altitude' and surface_type=='rectangle_grid' and post=='dgb' and statistics==False and spectrum_analysis==True)", -direction=SIMP(typ='I',fr= "The direction type",ang= "The direction type",docu= "",statut= "o",into=[1, -1, 2, -2, 3, -3],min=1,max=1,val_min='**',val_max='**',defaut=1), -input_grid_field_raw=SIMP(typ=('Fichier', 'All Files (*)'),fr= "field data file",ang= "field data file",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -input_grid_field_raw_metadata=SIMP(typ=('Fichier', 'All Files (*)'),fr= "field metadata file",ang= "field metadata file",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -), -calculation_altitude_surface_type_rectangle_grid_post_dgb_statistics_False_spectrum_analysis_False=BLOC(condition="(calculation=='altitude' and surface_type=='rectangle_grid' and post=='dgb' and statistics==False and spectrum_analysis==False)", -direction=SIMP(typ='I',fr= "The direction type",ang= "The direction type",docu= "",statut= "o",into=[1, -1, 2, -2, 3, -3],min=1,max=1,val_min='**',val_max='**',defaut=1), -input_grid_field_raw=SIMP(typ=('Fichier', 'All Files (*)'),fr= "field data file",ang= "field data file",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -input_grid_field_raw_metadata=SIMP(typ=('Fichier', 'All Files (*)'),fr= "field metadata file",ang= "field metadata file",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -nb_segments=SIMP(typ='I',fr= "number of 1D segments for each elementary face of the surface in the resulting mesh",ang= "number of 1D segments for each elementary face of the surface in the resulting mesh",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -), -calculation_altitude_surface_type_rectangle_grid_post_quantification_statistics_True_spectrum_analysis_True=BLOC(condition="(calculation=='altitude' and surface_type=='rectangle_grid' and post=='quantification' and statistics==True and spectrum_analysis==True)", -direction=SIMP(typ='I',fr= "The direction type",ang= "The direction type",docu= "",statut= "o",into=[1, -1, 2, -2, 3, -3],min=1,max=1,val_min='**',val_max='**',defaut=1), -input_grid_field_raw=SIMP(typ=('Fichier', 'All Files (*)'),fr= "field data file",ang= "field data file",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -input_grid_field_raw_metadata=SIMP(typ=('Fichier', 'All Files (*)'),fr= "field metadata file",ang= "field metadata file",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -), -calculation_altitude_surface_type_rectangle_grid_post_quantification_statistics_True_spectrum_analysis_False=BLOC(condition="(calculation=='altitude' and surface_type=='rectangle_grid' and post=='quantification' and statistics==True and spectrum_analysis==False)", -direction=SIMP(typ='I',fr= "The direction type",ang= "The direction type",docu= "",statut= "o",into=[1, -1, 2, -2, 3, -3],min=1,max=1,val_min='**',val_max='**',defaut=1), -input_grid_field_raw=SIMP(typ=('Fichier', 'All Files (*)'),fr= "field data file",ang= "field data file",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -input_grid_field_raw_metadata=SIMP(typ=('Fichier', 'All Files (*)'),fr= "field metadata file",ang= "field metadata file",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -nb_segments=SIMP(typ='I',fr= "number of 1D segments for each elementary face of the surface in the resulting mesh",ang= "number of 1D segments for each elementary face of the surface in the resulting mesh",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -), -calculation_altitude_surface_type_rectangle_grid_post_quantification_statistics_False_spectrum_analysis_True=BLOC(condition="(calculation=='altitude' and surface_type=='rectangle_grid' and post=='quantification' and statistics==False and spectrum_analysis==True)", -direction=SIMP(typ='I',fr= "The direction type",ang= "The direction type",docu= "",statut= "o",into=[1, -1, 2, -2, 3, -3],min=1,max=1,val_min='**',val_max='**',defaut=1), -input_grid_field_raw=SIMP(typ=('Fichier', 'All Files (*)'),fr= "field data file",ang= "field data file",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -input_grid_field_raw_metadata=SIMP(typ=('Fichier', 'All Files (*)'),fr= "field metadata file",ang= "field metadata file",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -), -calculation_altitude_surface_type_rectangle_grid_post_quantification_statistics_False_spectrum_analysis_False=BLOC(condition="(calculation=='altitude' and surface_type=='rectangle_grid' and post=='quantification' and statistics==False and spectrum_analysis==False)", -direction=SIMP(typ='I',fr= "The direction type",ang= "The direction type",docu= "",statut= "o",into=[1, -1, 2, -2, 3, -3],min=1,max=1,val_min='**',val_max='**',defaut=1), -input_grid_field_raw=SIMP(typ=('Fichier', 'All Files (*)'),fr= "field data file",ang= "field data file",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -input_grid_field_raw_metadata=SIMP(typ=('Fichier', 'All Files (*)'),fr= "field metadata file",ang= "field metadata file",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -nb_segments=SIMP(typ='I',fr= "number of 1D segments for each elementary face of the surface in the resulting mesh",ang= "number of 1D segments for each elementary face of the surface in the resulting mesh",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -), -calculation_altitude_surface_type_crack_fit_post_CDF_statistics_True_spectrum_analysis_True=BLOC(condition="(calculation=='altitude' and surface_type=='crack_fit' and post=='CDF' and statistics==True and spectrum_analysis==True)", -direction=SIMP(typ='I',fr= "The direction type",ang= "The direction type",docu= "",statut= "o",into=[1, -1, 2, -2, 3, -3],min=1,max=1,val_min='**',val_max='**',defaut=1), -input_grid_field_raw=SIMP(typ=('Fichier', 'All Files (*)'),fr= "field data file",ang= "field data file",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -input_grid_field_raw_metadata=SIMP(typ=('Fichier', 'All Files (*)'),fr= "field metadata file",ang= "field metadata file",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -), -calculation_altitude_surface_type_crack_fit_post_CDF_statistics_True_spectrum_analysis_False=BLOC(condition="(calculation=='altitude' and surface_type=='crack_fit' and post=='CDF' and statistics==True and spectrum_analysis==False)", -direction=SIMP(typ='I',fr= "The direction type",ang= "The direction type",docu= "",statut= "o",into=[1, -1, 2, -2, 3, -3],min=1,max=1,val_min='**',val_max='**',defaut=1), -input_grid_field_raw=SIMP(typ=('Fichier', 'All Files (*)'),fr= "field data file",ang= "field data file",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -input_grid_field_raw_metadata=SIMP(typ=('Fichier', 'All Files (*)'),fr= "field metadata file",ang= "field metadata file",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -nb_segments=SIMP(typ='I',fr= "number of 1D segments for each elementary face of the surface in the resulting mesh",ang= "number of 1D segments for each elementary face of the surface in the resulting mesh",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -), -calculation_altitude_surface_type_crack_fit_post_CDF_statistics_False_spectrum_analysis_True=BLOC(condition="(calculation=='altitude' and surface_type=='crack_fit' and post=='CDF' and statistics==False and spectrum_analysis==True)", -direction=SIMP(typ='I',fr= "The direction type",ang= "The direction type",docu= "",statut= "o",into=[1, -1, 2, -2, 3, -3],min=1,max=1,val_min='**',val_max='**',defaut=1), -input_grid_field_raw=SIMP(typ=('Fichier', 'All Files (*)'),fr= "field data file",ang= "field data file",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -input_grid_field_raw_metadata=SIMP(typ=('Fichier', 'All Files (*)'),fr= "field metadata file",ang= "field metadata file",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -), -calculation_altitude_surface_type_crack_fit_post_CDF_statistics_False_spectrum_analysis_False=BLOC(condition="(calculation=='altitude' and surface_type=='crack_fit' and post=='CDF' and statistics==False and spectrum_analysis==False)", -direction=SIMP(typ='I',fr= "The direction type",ang= "The direction type",docu= "",statut= "o",into=[1, -1, 2, -2, 3, -3],min=1,max=1,val_min='**',val_max='**',defaut=1), -input_grid_field_raw=SIMP(typ=('Fichier', 'All Files (*)'),fr= "field data file",ang= "field data file",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -input_grid_field_raw_metadata=SIMP(typ=('Fichier', 'All Files (*)'),fr= "field metadata file",ang= "field metadata file",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -nb_segments=SIMP(typ='I',fr= "number of 1D segments for each elementary face of the surface in the resulting mesh",ang= "number of 1D segments for each elementary face of the surface in the resulting mesh",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -), -calculation_altitude_surface_type_crack_fit_post_PDF_statistics_True_spectrum_analysis_True=BLOC(condition="(calculation=='altitude' and surface_type=='crack_fit' and post=='PDF' and statistics==True and spectrum_analysis==True)", -direction=SIMP(typ='I',fr= "The direction type",ang= "The direction type",docu= "",statut= "o",into=[1, -1, 2, -2, 3, -3],min=1,max=1,val_min='**',val_max='**',defaut=1), -input_grid_field_raw=SIMP(typ=('Fichier', 'All Files (*)'),fr= "field data file",ang= "field data file",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -input_grid_field_raw_metadata=SIMP(typ=('Fichier', 'All Files (*)'),fr= "field metadata file",ang= "field metadata file",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -), -calculation_altitude_surface_type_crack_fit_post_PDF_statistics_True_spectrum_analysis_False=BLOC(condition="(calculation=='altitude' and surface_type=='crack_fit' and post=='PDF' and statistics==True and spectrum_analysis==False)", -direction=SIMP(typ='I',fr= "The direction type",ang= "The direction type",docu= "",statut= "o",into=[1, -1, 2, -2, 3, -3],min=1,max=1,val_min='**',val_max='**',defaut=1), -input_grid_field_raw=SIMP(typ=('Fichier', 'All Files (*)'),fr= "field data file",ang= "field data file",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -input_grid_field_raw_metadata=SIMP(typ=('Fichier', 'All Files (*)'),fr= "field metadata file",ang= "field metadata file",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -nb_segments=SIMP(typ='I',fr= "number of 1D segments for each elementary face of the surface in the resulting mesh",ang= "number of 1D segments for each elementary face of the surface in the resulting mesh",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -), -calculation_altitude_surface_type_crack_fit_post_PDF_statistics_False_spectrum_analysis_True=BLOC(condition="(calculation=='altitude' and surface_type=='crack_fit' and post=='PDF' and statistics==False and spectrum_analysis==True)", -direction=SIMP(typ='I',fr= "The direction type",ang= "The direction type",docu= "",statut= "o",into=[1, -1, 2, -2, 3, -3],min=1,max=1,val_min='**',val_max='**',defaut=1), -input_grid_field_raw=SIMP(typ=('Fichier', 'All Files (*)'),fr= "field data file",ang= "field data file",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -input_grid_field_raw_metadata=SIMP(typ=('Fichier', 'All Files (*)'),fr= "field metadata file",ang= "field metadata file",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -), -calculation_altitude_surface_type_crack_fit_post_PDF_statistics_False_spectrum_analysis_False=BLOC(condition="(calculation=='altitude' and surface_type=='crack_fit' and post=='PDF' and statistics==False and spectrum_analysis==False)", -direction=SIMP(typ='I',fr= "The direction type",ang= "The direction type",docu= "",statut= "o",into=[1, -1, 2, -2, 3, -3],min=1,max=1,val_min='**',val_max='**',defaut=1), -input_grid_field_raw=SIMP(typ=('Fichier', 'All Files (*)'),fr= "field data file",ang= "field data file",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -input_grid_field_raw_metadata=SIMP(typ=('Fichier', 'All Files (*)'),fr= "field metadata file",ang= "field metadata file",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -nb_segments=SIMP(typ='I',fr= "number of 1D segments for each elementary face of the surface in the resulting mesh",ang= "number of 1D segments for each elementary face of the surface in the resulting mesh",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -), -calculation_altitude_surface_type_crack_fit_post_dgb_statistics_True_spectrum_analysis_True=BLOC(condition="(calculation=='altitude' and surface_type=='crack_fit' and post=='dgb' and statistics==True and spectrum_analysis==True)", -direction=SIMP(typ='I',fr= "The direction type",ang= "The direction type",docu= "",statut= "o",into=[1, -1, 2, -2, 3, -3],min=1,max=1,val_min='**',val_max='**',defaut=1), -input_grid_field_raw=SIMP(typ=('Fichier', 'All Files (*)'),fr= "field data file",ang= "field data file",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -input_grid_field_raw_metadata=SIMP(typ=('Fichier', 'All Files (*)'),fr= "field metadata file",ang= "field metadata file",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -), -calculation_altitude_surface_type_crack_fit_post_dgb_statistics_True_spectrum_analysis_False=BLOC(condition="(calculation=='altitude' and surface_type=='crack_fit' and post=='dgb' and statistics==True and spectrum_analysis==False)", -direction=SIMP(typ='I',fr= "The direction type",ang= "The direction type",docu= "",statut= "o",into=[1, -1, 2, -2, 3, -3],min=1,max=1,val_min='**',val_max='**',defaut=1), -input_grid_field_raw=SIMP(typ=('Fichier', 'All Files (*)'),fr= "field data file",ang= "field data file",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -input_grid_field_raw_metadata=SIMP(typ=('Fichier', 'All Files (*)'),fr= "field metadata file",ang= "field metadata file",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -nb_segments=SIMP(typ='I',fr= "number of 1D segments for each elementary face of the surface in the resulting mesh",ang= "number of 1D segments for each elementary face of the surface in the resulting mesh",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -), -calculation_altitude_surface_type_crack_fit_post_dgb_statistics_False_spectrum_analysis_True=BLOC(condition="(calculation=='altitude' and surface_type=='crack_fit' and post=='dgb' and statistics==False and spectrum_analysis==True)", -direction=SIMP(typ='I',fr= "The direction type",ang= "The direction type",docu= "",statut= "o",into=[1, -1, 2, -2, 3, -3],min=1,max=1,val_min='**',val_max='**',defaut=1), -input_grid_field_raw=SIMP(typ=('Fichier', 'All Files (*)'),fr= "field data file",ang= "field data file",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -input_grid_field_raw_metadata=SIMP(typ=('Fichier', 'All Files (*)'),fr= "field metadata file",ang= "field metadata file",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -), -calculation_altitude_surface_type_crack_fit_post_dgb_statistics_False_spectrum_analysis_False=BLOC(condition="(calculation=='altitude' and surface_type=='crack_fit' and post=='dgb' and statistics==False and spectrum_analysis==False)", -direction=SIMP(typ='I',fr= "The direction type",ang= "The direction type",docu= "",statut= "o",into=[1, -1, 2, -2, 3, -3],min=1,max=1,val_min='**',val_max='**',defaut=1), -input_grid_field_raw=SIMP(typ=('Fichier', 'All Files (*)'),fr= "field data file",ang= "field data file",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -input_grid_field_raw_metadata=SIMP(typ=('Fichier', 'All Files (*)'),fr= "field metadata file",ang= "field metadata file",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -nb_segments=SIMP(typ='I',fr= "number of 1D segments for each elementary face of the surface in the resulting mesh",ang= "number of 1D segments for each elementary face of the surface in the resulting mesh",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -), -calculation_altitude_surface_type_crack_fit_post_quantification_statistics_True_spectrum_analysis_True=BLOC(condition="(calculation=='altitude' and surface_type=='crack_fit' and post=='quantification' and statistics==True and spectrum_analysis==True)", -direction=SIMP(typ='I',fr= "The direction type",ang= "The direction type",docu= "",statut= "o",into=[1, -1, 2, -2, 3, -3],min=1,max=1,val_min='**',val_max='**',defaut=1), -input_grid_field_raw=SIMP(typ=('Fichier', 'All Files (*)'),fr= "field data file",ang= "field data file",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -input_grid_field_raw_metadata=SIMP(typ=('Fichier', 'All Files (*)'),fr= "field metadata file",ang= "field metadata file",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -), -calculation_altitude_surface_type_crack_fit_post_quantification_statistics_True_spectrum_analysis_False=BLOC(condition="(calculation=='altitude' and surface_type=='crack_fit' and post=='quantification' and statistics==True and spectrum_analysis==False)", -direction=SIMP(typ='I',fr= "The direction type",ang= "The direction type",docu= "",statut= "o",into=[1, -1, 2, -2, 3, -3],min=1,max=1,val_min='**',val_max='**',defaut=1), -input_grid_field_raw=SIMP(typ=('Fichier', 'All Files (*)'),fr= "field data file",ang= "field data file",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -input_grid_field_raw_metadata=SIMP(typ=('Fichier', 'All Files (*)'),fr= "field metadata file",ang= "field metadata file",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -nb_segments=SIMP(typ='I',fr= "number of 1D segments for each elementary face of the surface in the resulting mesh",ang= "number of 1D segments for each elementary face of the surface in the resulting mesh",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -), -calculation_altitude_surface_type_crack_fit_post_quantification_statistics_False_spectrum_analysis_True=BLOC(condition="(calculation=='altitude' and surface_type=='crack_fit' and post=='quantification' and statistics==False and spectrum_analysis==True)", -direction=SIMP(typ='I',fr= "The direction type",ang= "The direction type",docu= "",statut= "o",into=[1, -1, 2, -2, 3, -3],min=1,max=1,val_min='**',val_max='**',defaut=1), -input_grid_field_raw=SIMP(typ=('Fichier', 'All Files (*)'),fr= "field data file",ang= "field data file",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -input_grid_field_raw_metadata=SIMP(typ=('Fichier', 'All Files (*)'),fr= "field metadata file",ang= "field metadata file",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -), -calculation_altitude_surface_type_crack_fit_post_quantification_statistics_False_spectrum_analysis_False=BLOC(condition="(calculation=='altitude' and surface_type=='crack_fit' and post=='quantification' and statistics==False and spectrum_analysis==False)", -direction=SIMP(typ='I',fr= "The direction type",ang= "The direction type",docu= "",statut= "o",into=[1, -1, 2, -2, 3, -3],min=1,max=1,val_min='**',val_max='**',defaut=1), -input_grid_field_raw=SIMP(typ=('Fichier', 'All Files (*)'),fr= "field data file",ang= "field data file",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -input_grid_field_raw_metadata=SIMP(typ=('Fichier', 'All Files (*)'),fr= "field metadata file",ang= "field metadata file",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -nb_segments=SIMP(typ='I',fr= "number of 1D segments for each elementary face of the surface in the resulting mesh",ang= "number of 1D segments for each elementary face of the surface in the resulting mesh",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -), -calculation_thickness_surface_type_rectangle_grid_post_CDF_statistics_True_spectrum_analysis_True=BLOC(condition="(calculation=='thickness' and surface_type=='rectangle_grid' and post=='CDF' and statistics==True and spectrum_analysis==True)", -direction=SIMP(typ='I',fr= "The direction type",ang= "The direction type",docu= "",statut= "o",into=[1, -1, 2, -2, 3, -3],min=1,max=1,val_min='**',val_max='**',defaut=1), -alt_min=SIMP(typ='I',fr= "The minimum altitude",ang= "The minimum altitude",docu= "",statut= "f",into=None,min=1,max=1,val_min=0,val_max='**',defaut=None), -alt_max=SIMP(typ='I',fr= "The maximum altitude",ang= "The maximum altitude",docu= "",statut= "f",into=None,min=1,max=1,val_min=0,val_max='**',defaut=None), -input_grid_field_raw=SIMP(typ=('Fichier', 'All Files (*)'),fr= "field data file",ang= "field data file",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -input_grid_field_raw_metadata=SIMP(typ=('Fichier', 'All Files (*)'),fr= "field metadata file",ang= "field metadata file",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -), -calculation_thickness_surface_type_rectangle_grid_post_CDF_statistics_True_spectrum_analysis_False=BLOC(condition="(calculation=='thickness' and surface_type=='rectangle_grid' and post=='CDF' and statistics==True and spectrum_analysis==False)", -direction=SIMP(typ='I',fr= "The direction type",ang= "The direction type",docu= "",statut= "o",into=[1, -1, 2, -2, 3, -3],min=1,max=1,val_min='**',val_max='**',defaut=1), -alt_min=SIMP(typ='I',fr= "The minimum altitude",ang= "The minimum altitude",docu= "",statut= "f",into=None,min=1,max=1,val_min=0,val_max='**',defaut=None), -alt_max=SIMP(typ='I',fr= "The maximum altitude",ang= "The maximum altitude",docu= "",statut= "f",into=None,min=1,max=1,val_min=0,val_max='**',defaut=None), -input_grid_field_raw=SIMP(typ=('Fichier', 'All Files (*)'),fr= "field data file",ang= "field data file",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -input_grid_field_raw_metadata=SIMP(typ=('Fichier', 'All Files (*)'),fr= "field metadata file",ang= "field metadata file",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -nb_segments=SIMP(typ='I',fr= "number of 1D segments for each elementary face of the surface in the resulting mesh",ang= "number of 1D segments for each elementary face of the surface in the resulting mesh",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -), -calculation_thickness_surface_type_rectangle_grid_post_CDF_statistics_False_spectrum_analysis_True=BLOC(condition="(calculation=='thickness' and surface_type=='rectangle_grid' and post=='CDF' and statistics==False and spectrum_analysis==True)", -direction=SIMP(typ='I',fr= "The direction type",ang= "The direction type",docu= "",statut= "o",into=[1, -1, 2, -2, 3, -3],min=1,max=1,val_min='**',val_max='**',defaut=1), -alt_min=SIMP(typ='I',fr= "The minimum altitude",ang= "The minimum altitude",docu= "",statut= "f",into=None,min=1,max=1,val_min=0,val_max='**',defaut=None), -alt_max=SIMP(typ='I',fr= "The maximum altitude",ang= "The maximum altitude",docu= "",statut= "f",into=None,min=1,max=1,val_min=0,val_max='**',defaut=None), -input_grid_field_raw=SIMP(typ=('Fichier', 'All Files (*)'),fr= "field data file",ang= "field data file",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -input_grid_field_raw_metadata=SIMP(typ=('Fichier', 'All Files (*)'),fr= "field metadata file",ang= "field metadata file",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -), -calculation_thickness_surface_type_rectangle_grid_post_CDF_statistics_False_spectrum_analysis_False=BLOC(condition="(calculation=='thickness' and surface_type=='rectangle_grid' and post=='CDF' and statistics==False and spectrum_analysis==False)", -direction=SIMP(typ='I',fr= "The direction type",ang= "The direction type",docu= "",statut= "o",into=[1, -1, 2, -2, 3, -3],min=1,max=1,val_min='**',val_max='**',defaut=1), -alt_min=SIMP(typ='I',fr= "The minimum altitude",ang= "The minimum altitude",docu= "",statut= "f",into=None,min=1,max=1,val_min=0,val_max='**',defaut=None), -alt_max=SIMP(typ='I',fr= "The maximum altitude",ang= "The maximum altitude",docu= "",statut= "f",into=None,min=1,max=1,val_min=0,val_max='**',defaut=None), -input_grid_field_raw=SIMP(typ=('Fichier', 'All Files (*)'),fr= "field data file",ang= "field data file",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -input_grid_field_raw_metadata=SIMP(typ=('Fichier', 'All Files (*)'),fr= "field metadata file",ang= "field metadata file",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -nb_segments=SIMP(typ='I',fr= "number of 1D segments for each elementary face of the surface in the resulting mesh",ang= "number of 1D segments for each elementary face of the surface in the resulting mesh",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -), -calculation_thickness_surface_type_rectangle_grid_post_PDF_statistics_True_spectrum_analysis_True=BLOC(condition="(calculation=='thickness' and surface_type=='rectangle_grid' and post=='PDF' and statistics==True and spectrum_analysis==True)", -direction=SIMP(typ='I',fr= "The direction type",ang= "The direction type",docu= "",statut= "o",into=[1, -1, 2, -2, 3, -3],min=1,max=1,val_min='**',val_max='**',defaut=1), -alt_min=SIMP(typ='I',fr= "The minimum altitude",ang= "The minimum altitude",docu= "",statut= "f",into=None,min=1,max=1,val_min=0,val_max='**',defaut=None), -alt_max=SIMP(typ='I',fr= "The maximum altitude",ang= "The maximum altitude",docu= "",statut= "f",into=None,min=1,max=1,val_min=0,val_max='**',defaut=None), -input_grid_field_raw=SIMP(typ=('Fichier', 'All Files (*)'),fr= "field data file",ang= "field data file",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -input_grid_field_raw_metadata=SIMP(typ=('Fichier', 'All Files (*)'),fr= "field metadata file",ang= "field metadata file",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -), -calculation_thickness_surface_type_rectangle_grid_post_PDF_statistics_True_spectrum_analysis_False=BLOC(condition="(calculation=='thickness' and surface_type=='rectangle_grid' and post=='PDF' and statistics==True and spectrum_analysis==False)", -direction=SIMP(typ='I',fr= "The direction type",ang= "The direction type",docu= "",statut= "o",into=[1, -1, 2, -2, 3, -3],min=1,max=1,val_min='**',val_max='**',defaut=1), -alt_min=SIMP(typ='I',fr= "The minimum altitude",ang= "The minimum altitude",docu= "",statut= "f",into=None,min=1,max=1,val_min=0,val_max='**',defaut=None), -alt_max=SIMP(typ='I',fr= "The maximum altitude",ang= "The maximum altitude",docu= "",statut= "f",into=None,min=1,max=1,val_min=0,val_max='**',defaut=None), -input_grid_field_raw=SIMP(typ=('Fichier', 'All Files (*)'),fr= "field data file",ang= "field data file",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -input_grid_field_raw_metadata=SIMP(typ=('Fichier', 'All Files (*)'),fr= "field metadata file",ang= "field metadata file",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -nb_segments=SIMP(typ='I',fr= "number of 1D segments for each elementary face of the surface in the resulting mesh",ang= "number of 1D segments for each elementary face of the surface in the resulting mesh",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -), -calculation_thickness_surface_type_rectangle_grid_post_PDF_statistics_False_spectrum_analysis_True=BLOC(condition="(calculation=='thickness' and surface_type=='rectangle_grid' and post=='PDF' and statistics==False and spectrum_analysis==True)", -direction=SIMP(typ='I',fr= "The direction type",ang= "The direction type",docu= "",statut= "o",into=[1, -1, 2, -2, 3, -3],min=1,max=1,val_min='**',val_max='**',defaut=1), -alt_min=SIMP(typ='I',fr= "The minimum altitude",ang= "The minimum altitude",docu= "",statut= "f",into=None,min=1,max=1,val_min=0,val_max='**',defaut=None), -alt_max=SIMP(typ='I',fr= "The maximum altitude",ang= "The maximum altitude",docu= "",statut= "f",into=None,min=1,max=1,val_min=0,val_max='**',defaut=None), -input_grid_field_raw=SIMP(typ=('Fichier', 'All Files (*)'),fr= "field data file",ang= "field data file",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -input_grid_field_raw_metadata=SIMP(typ=('Fichier', 'All Files (*)'),fr= "field metadata file",ang= "field metadata file",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -), -calculation_thickness_surface_type_rectangle_grid_post_PDF_statistics_False_spectrum_analysis_False=BLOC(condition="(calculation=='thickness' and surface_type=='rectangle_grid' and post=='PDF' and statistics==False and spectrum_analysis==False)", -direction=SIMP(typ='I',fr= "The direction type",ang= "The direction type",docu= "",statut= "o",into=[1, -1, 2, -2, 3, -3],min=1,max=1,val_min='**',val_max='**',defaut=1), -alt_min=SIMP(typ='I',fr= "The minimum altitude",ang= "The minimum altitude",docu= "",statut= "f",into=None,min=1,max=1,val_min=0,val_max='**',defaut=None), -alt_max=SIMP(typ='I',fr= "The maximum altitude",ang= "The maximum altitude",docu= "",statut= "f",into=None,min=1,max=1,val_min=0,val_max='**',defaut=None), -input_grid_field_raw=SIMP(typ=('Fichier', 'All Files (*)'),fr= "field data file",ang= "field data file",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -input_grid_field_raw_metadata=SIMP(typ=('Fichier', 'All Files (*)'),fr= "field metadata file",ang= "field metadata file",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -nb_segments=SIMP(typ='I',fr= "number of 1D segments for each elementary face of the surface in the resulting mesh",ang= "number of 1D segments for each elementary face of the surface in the resulting mesh",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -), -calculation_thickness_surface_type_rectangle_grid_post_dgb_statistics_True_spectrum_analysis_True=BLOC(condition="(calculation=='thickness' and surface_type=='rectangle_grid' and post=='dgb' and statistics==True and spectrum_analysis==True)", -direction=SIMP(typ='I',fr= "The direction type",ang= "The direction type",docu= "",statut= "o",into=[1, -1, 2, -2, 3, -3],min=1,max=1,val_min='**',val_max='**',defaut=1), -alt_min=SIMP(typ='I',fr= "The minimum altitude",ang= "The minimum altitude",docu= "",statut= "f",into=None,min=1,max=1,val_min=0,val_max='**',defaut=None), -alt_max=SIMP(typ='I',fr= "The maximum altitude",ang= "The maximum altitude",docu= "",statut= "f",into=None,min=1,max=1,val_min=0,val_max='**',defaut=None), -input_grid_field_raw=SIMP(typ=('Fichier', 'All Files (*)'),fr= "field data file",ang= "field data file",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -input_grid_field_raw_metadata=SIMP(typ=('Fichier', 'All Files (*)'),fr= "field metadata file",ang= "field metadata file",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -), -calculation_thickness_surface_type_rectangle_grid_post_dgb_statistics_True_spectrum_analysis_False=BLOC(condition="(calculation=='thickness' and surface_type=='rectangle_grid' and post=='dgb' and statistics==True and spectrum_analysis==False)", -direction=SIMP(typ='I',fr= "The direction type",ang= "The direction type",docu= "",statut= "o",into=[1, -1, 2, -2, 3, -3],min=1,max=1,val_min='**',val_max='**',defaut=1), -alt_min=SIMP(typ='I',fr= "The minimum altitude",ang= "The minimum altitude",docu= "",statut= "f",into=None,min=1,max=1,val_min=0,val_max='**',defaut=None), -alt_max=SIMP(typ='I',fr= "The maximum altitude",ang= "The maximum altitude",docu= "",statut= "f",into=None,min=1,max=1,val_min=0,val_max='**',defaut=None), -input_grid_field_raw=SIMP(typ=('Fichier', 'All Files (*)'),fr= "field data file",ang= "field data file",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -input_grid_field_raw_metadata=SIMP(typ=('Fichier', 'All Files (*)'),fr= "field metadata file",ang= "field metadata file",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -nb_segments=SIMP(typ='I',fr= "number of 1D segments for each elementary face of the surface in the resulting mesh",ang= "number of 1D segments for each elementary face of the surface in the resulting mesh",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -), -calculation_thickness_surface_type_rectangle_grid_post_dgb_statistics_False_spectrum_analysis_True=BLOC(condition="(calculation=='thickness' and surface_type=='rectangle_grid' and post=='dgb' and statistics==False and spectrum_analysis==True)", -direction=SIMP(typ='I',fr= "The direction type",ang= "The direction type",docu= "",statut= "o",into=[1, -1, 2, -2, 3, -3],min=1,max=1,val_min='**',val_max='**',defaut=1), -alt_min=SIMP(typ='I',fr= "The minimum altitude",ang= "The minimum altitude",docu= "",statut= "f",into=None,min=1,max=1,val_min=0,val_max='**',defaut=None), -alt_max=SIMP(typ='I',fr= "The maximum altitude",ang= "The maximum altitude",docu= "",statut= "f",into=None,min=1,max=1,val_min=0,val_max='**',defaut=None), -input_grid_field_raw=SIMP(typ=('Fichier', 'All Files (*)'),fr= "field data file",ang= "field data file",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -input_grid_field_raw_metadata=SIMP(typ=('Fichier', 'All Files (*)'),fr= "field metadata file",ang= "field metadata file",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -), -calculation_thickness_surface_type_rectangle_grid_post_dgb_statistics_False_spectrum_analysis_False=BLOC(condition="(calculation=='thickness' and surface_type=='rectangle_grid' and post=='dgb' and statistics==False and spectrum_analysis==False)", -direction=SIMP(typ='I',fr= "The direction type",ang= "The direction type",docu= "",statut= "o",into=[1, -1, 2, -2, 3, -3],min=1,max=1,val_min='**',val_max='**',defaut=1), -alt_min=SIMP(typ='I',fr= "The minimum altitude",ang= "The minimum altitude",docu= "",statut= "f",into=None,min=1,max=1,val_min=0,val_max='**',defaut=None), -alt_max=SIMP(typ='I',fr= "The maximum altitude",ang= "The maximum altitude",docu= "",statut= "f",into=None,min=1,max=1,val_min=0,val_max='**',defaut=None), -input_grid_field_raw=SIMP(typ=('Fichier', 'All Files (*)'),fr= "field data file",ang= "field data file",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -input_grid_field_raw_metadata=SIMP(typ=('Fichier', 'All Files (*)'),fr= "field metadata file",ang= "field metadata file",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -nb_segments=SIMP(typ='I',fr= "number of 1D segments for each elementary face of the surface in the resulting mesh",ang= "number of 1D segments for each elementary face of the surface in the resulting mesh",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -), -calculation_thickness_surface_type_rectangle_grid_post_quantification_statistics_True_spectrum_analysis_True=BLOC(condition="(calculation=='thickness' and surface_type=='rectangle_grid' and post=='quantification' and statistics==True and spectrum_analysis==True)", -direction=SIMP(typ='I',fr= "The direction type",ang= "The direction type",docu= "",statut= "o",into=[1, -1, 2, -2, 3, -3],min=1,max=1,val_min='**',val_max='**',defaut=1), -alt_min=SIMP(typ='I',fr= "The minimum altitude",ang= "The minimum altitude",docu= "",statut= "f",into=None,min=1,max=1,val_min=0,val_max='**',defaut=None), -alt_max=SIMP(typ='I',fr= "The maximum altitude",ang= "The maximum altitude",docu= "",statut= "f",into=None,min=1,max=1,val_min=0,val_max='**',defaut=None), -input_grid_field_raw=SIMP(typ=('Fichier', 'All Files (*)'),fr= "field data file",ang= "field data file",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -input_grid_field_raw_metadata=SIMP(typ=('Fichier', 'All Files (*)'),fr= "field metadata file",ang= "field metadata file",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -), -calculation_thickness_surface_type_rectangle_grid_post_quantification_statistics_True_spectrum_analysis_False=BLOC(condition="(calculation=='thickness' and surface_type=='rectangle_grid' and post=='quantification' and statistics==True and spectrum_analysis==False)", -direction=SIMP(typ='I',fr= "The direction type",ang= "The direction type",docu= "",statut= "o",into=[1, -1, 2, -2, 3, -3],min=1,max=1,val_min='**',val_max='**',defaut=1), -alt_min=SIMP(typ='I',fr= "The minimum altitude",ang= "The minimum altitude",docu= "",statut= "f",into=None,min=1,max=1,val_min=0,val_max='**',defaut=None), -alt_max=SIMP(typ='I',fr= "The maximum altitude",ang= "The maximum altitude",docu= "",statut= "f",into=None,min=1,max=1,val_min=0,val_max='**',defaut=None), -input_grid_field_raw=SIMP(typ=('Fichier', 'All Files (*)'),fr= "field data file",ang= "field data file",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -input_grid_field_raw_metadata=SIMP(typ=('Fichier', 'All Files (*)'),fr= "field metadata file",ang= "field metadata file",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -nb_segments=SIMP(typ='I',fr= "number of 1D segments for each elementary face of the surface in the resulting mesh",ang= "number of 1D segments for each elementary face of the surface in the resulting mesh",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -), -calculation_thickness_surface_type_rectangle_grid_post_quantification_statistics_False_spectrum_analysis_True=BLOC(condition="(calculation=='thickness' and surface_type=='rectangle_grid' and post=='quantification' and statistics==False and spectrum_analysis==True)", -direction=SIMP(typ='I',fr= "The direction type",ang= "The direction type",docu= "",statut= "o",into=[1, -1, 2, -2, 3, -3],min=1,max=1,val_min='**',val_max='**',defaut=1), -alt_min=SIMP(typ='I',fr= "The minimum altitude",ang= "The minimum altitude",docu= "",statut= "f",into=None,min=1,max=1,val_min=0,val_max='**',defaut=None), -alt_max=SIMP(typ='I',fr= "The maximum altitude",ang= "The maximum altitude",docu= "",statut= "f",into=None,min=1,max=1,val_min=0,val_max='**',defaut=None), -input_grid_field_raw=SIMP(typ=('Fichier', 'All Files (*)'),fr= "field data file",ang= "field data file",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -input_grid_field_raw_metadata=SIMP(typ=('Fichier', 'All Files (*)'),fr= "field metadata file",ang= "field metadata file",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -), -calculation_thickness_surface_type_rectangle_grid_post_quantification_statistics_False_spectrum_analysis_False=BLOC(condition="(calculation=='thickness' and surface_type=='rectangle_grid' and post=='quantification' and statistics==False and spectrum_analysis==False)", -direction=SIMP(typ='I',fr= "The direction type",ang= "The direction type",docu= "",statut= "o",into=[1, -1, 2, -2, 3, -3],min=1,max=1,val_min='**',val_max='**',defaut=1), -alt_min=SIMP(typ='I',fr= "The minimum altitude",ang= "The minimum altitude",docu= "",statut= "f",into=None,min=1,max=1,val_min=0,val_max='**',defaut=None), -alt_max=SIMP(typ='I',fr= "The maximum altitude",ang= "The maximum altitude",docu= "",statut= "f",into=None,min=1,max=1,val_min=0,val_max='**',defaut=None), -input_grid_field_raw=SIMP(typ=('Fichier', 'All Files (*)'),fr= "field data file",ang= "field data file",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -input_grid_field_raw_metadata=SIMP(typ=('Fichier', 'All Files (*)'),fr= "field metadata file",ang= "field metadata file",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -nb_segments=SIMP(typ='I',fr= "number of 1D segments for each elementary face of the surface in the resulting mesh",ang= "number of 1D segments for each elementary face of the surface in the resulting mesh",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -), -calculation_thickness_surface_type_crack_fit_post_CDF_statistics_True_spectrum_analysis_True=BLOC(condition="(calculation=='thickness' and surface_type=='crack_fit' and post=='CDF' and statistics==True and spectrum_analysis==True)", -direction=SIMP(typ='I',fr= "The direction type",ang= "The direction type",docu= "",statut= "o",into=[1, -1, 2, -2, 3, -3],min=1,max=1,val_min='**',val_max='**',defaut=1), -alt_min=SIMP(typ='I',fr= "The minimum altitude",ang= "The minimum altitude",docu= "",statut= "f",into=None,min=1,max=1,val_min=0,val_max='**',defaut=None), -alt_max=SIMP(typ='I',fr= "The maximum altitude",ang= "The maximum altitude",docu= "",statut= "f",into=None,min=1,max=1,val_min=0,val_max='**',defaut=None), -input_grid_field_raw=SIMP(typ=('Fichier', 'All Files (*)'),fr= "field data file",ang= "field data file",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -input_grid_field_raw_metadata=SIMP(typ=('Fichier', 'All Files (*)'),fr= "field metadata file",ang= "field metadata file",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -), -calculation_thickness_surface_type_crack_fit_post_CDF_statistics_True_spectrum_analysis_False=BLOC(condition="(calculation=='thickness' and surface_type=='crack_fit' and post=='CDF' and statistics==True and spectrum_analysis==False)", -direction=SIMP(typ='I',fr= "The direction type",ang= "The direction type",docu= "",statut= "o",into=[1, -1, 2, -2, 3, -3],min=1,max=1,val_min='**',val_max='**',defaut=1), -alt_min=SIMP(typ='I',fr= "The minimum altitude",ang= "The minimum altitude",docu= "",statut= "f",into=None,min=1,max=1,val_min=0,val_max='**',defaut=None), -alt_max=SIMP(typ='I',fr= "The maximum altitude",ang= "The maximum altitude",docu= "",statut= "f",into=None,min=1,max=1,val_min=0,val_max='**',defaut=None), -input_grid_field_raw=SIMP(typ=('Fichier', 'All Files (*)'),fr= "field data file",ang= "field data file",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -input_grid_field_raw_metadata=SIMP(typ=('Fichier', 'All Files (*)'),fr= "field metadata file",ang= "field metadata file",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -nb_segments=SIMP(typ='I',fr= "number of 1D segments for each elementary face of the surface in the resulting mesh",ang= "number of 1D segments for each elementary face of the surface in the resulting mesh",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -), -calculation_thickness_surface_type_crack_fit_post_CDF_statistics_False_spectrum_analysis_True=BLOC(condition="(calculation=='thickness' and surface_type=='crack_fit' and post=='CDF' and statistics==False and spectrum_analysis==True)", -direction=SIMP(typ='I',fr= "The direction type",ang= "The direction type",docu= "",statut= "o",into=[1, -1, 2, -2, 3, -3],min=1,max=1,val_min='**',val_max='**',defaut=1), -alt_min=SIMP(typ='I',fr= "The minimum altitude",ang= "The minimum altitude",docu= "",statut= "f",into=None,min=1,max=1,val_min=0,val_max='**',defaut=None), -alt_max=SIMP(typ='I',fr= "The maximum altitude",ang= "The maximum altitude",docu= "",statut= "f",into=None,min=1,max=1,val_min=0,val_max='**',defaut=None), -input_grid_field_raw=SIMP(typ=('Fichier', 'All Files (*)'),fr= "field data file",ang= "field data file",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -input_grid_field_raw_metadata=SIMP(typ=('Fichier', 'All Files (*)'),fr= "field metadata file",ang= "field metadata file",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -), -calculation_thickness_surface_type_crack_fit_post_CDF_statistics_False_spectrum_analysis_False=BLOC(condition="(calculation=='thickness' and surface_type=='crack_fit' and post=='CDF' and statistics==False and spectrum_analysis==False)", -direction=SIMP(typ='I',fr= "The direction type",ang= "The direction type",docu= "",statut= "o",into=[1, -1, 2, -2, 3, -3],min=1,max=1,val_min='**',val_max='**',defaut=1), -alt_min=SIMP(typ='I',fr= "The minimum altitude",ang= "The minimum altitude",docu= "",statut= "f",into=None,min=1,max=1,val_min=0,val_max='**',defaut=None), -alt_max=SIMP(typ='I',fr= "The maximum altitude",ang= "The maximum altitude",docu= "",statut= "f",into=None,min=1,max=1,val_min=0,val_max='**',defaut=None), -input_grid_field_raw=SIMP(typ=('Fichier', 'All Files (*)'),fr= "field data file",ang= "field data file",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -input_grid_field_raw_metadata=SIMP(typ=('Fichier', 'All Files (*)'),fr= "field metadata file",ang= "field metadata file",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -nb_segments=SIMP(typ='I',fr= "number of 1D segments for each elementary face of the surface in the resulting mesh",ang= "number of 1D segments for each elementary face of the surface in the resulting mesh",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -), -calculation_thickness_surface_type_crack_fit_post_PDF_statistics_True_spectrum_analysis_True=BLOC(condition="(calculation=='thickness' and surface_type=='crack_fit' and post=='PDF' and statistics==True and spectrum_analysis==True)", -direction=SIMP(typ='I',fr= "The direction type",ang= "The direction type",docu= "",statut= "o",into=[1, -1, 2, -2, 3, -3],min=1,max=1,val_min='**',val_max='**',defaut=1), -alt_min=SIMP(typ='I',fr= "The minimum altitude",ang= "The minimum altitude",docu= "",statut= "f",into=None,min=1,max=1,val_min=0,val_max='**',defaut=None), -alt_max=SIMP(typ='I',fr= "The maximum altitude",ang= "The maximum altitude",docu= "",statut= "f",into=None,min=1,max=1,val_min=0,val_max='**',defaut=None), -input_grid_field_raw=SIMP(typ=('Fichier', 'All Files (*)'),fr= "field data file",ang= "field data file",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -input_grid_field_raw_metadata=SIMP(typ=('Fichier', 'All Files (*)'),fr= "field metadata file",ang= "field metadata file",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -), -calculation_thickness_surface_type_crack_fit_post_PDF_statistics_True_spectrum_analysis_False=BLOC(condition="(calculation=='thickness' and surface_type=='crack_fit' and post=='PDF' and statistics==True and spectrum_analysis==False)", -direction=SIMP(typ='I',fr= "The direction type",ang= "The direction type",docu= "",statut= "o",into=[1, -1, 2, -2, 3, -3],min=1,max=1,val_min='**',val_max='**',defaut=1), -alt_min=SIMP(typ='I',fr= "The minimum altitude",ang= "The minimum altitude",docu= "",statut= "f",into=None,min=1,max=1,val_min=0,val_max='**',defaut=None), -alt_max=SIMP(typ='I',fr= "The maximum altitude",ang= "The maximum altitude",docu= "",statut= "f",into=None,min=1,max=1,val_min=0,val_max='**',defaut=None), -input_grid_field_raw=SIMP(typ=('Fichier', 'All Files (*)'),fr= "field data file",ang= "field data file",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -input_grid_field_raw_metadata=SIMP(typ=('Fichier', 'All Files (*)'),fr= "field metadata file",ang= "field metadata file",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -nb_segments=SIMP(typ='I',fr= "number of 1D segments for each elementary face of the surface in the resulting mesh",ang= "number of 1D segments for each elementary face of the surface in the resulting mesh",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -), -calculation_thickness_surface_type_crack_fit_post_PDF_statistics_False_spectrum_analysis_True=BLOC(condition="(calculation=='thickness' and surface_type=='crack_fit' and post=='PDF' and statistics==False and spectrum_analysis==True)", -direction=SIMP(typ='I',fr= "The direction type",ang= "The direction type",docu= "",statut= "o",into=[1, -1, 2, -2, 3, -3],min=1,max=1,val_min='**',val_max='**',defaut=1), -alt_min=SIMP(typ='I',fr= "The minimum altitude",ang= "The minimum altitude",docu= "",statut= "f",into=None,min=1,max=1,val_min=0,val_max='**',defaut=None), -alt_max=SIMP(typ='I',fr= "The maximum altitude",ang= "The maximum altitude",docu= "",statut= "f",into=None,min=1,max=1,val_min=0,val_max='**',defaut=None), -input_grid_field_raw=SIMP(typ=('Fichier', 'All Files (*)'),fr= "field data file",ang= "field data file",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -input_grid_field_raw_metadata=SIMP(typ=('Fichier', 'All Files (*)'),fr= "field metadata file",ang= "field metadata file",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -), -calculation_thickness_surface_type_crack_fit_post_PDF_statistics_False_spectrum_analysis_False=BLOC(condition="(calculation=='thickness' and surface_type=='crack_fit' and post=='PDF' and statistics==False and spectrum_analysis==False)", -direction=SIMP(typ='I',fr= "The direction type",ang= "The direction type",docu= "",statut= "o",into=[1, -1, 2, -2, 3, -3],min=1,max=1,val_min='**',val_max='**',defaut=1), -alt_min=SIMP(typ='I',fr= "The minimum altitude",ang= "The minimum altitude",docu= "",statut= "f",into=None,min=1,max=1,val_min=0,val_max='**',defaut=None), -alt_max=SIMP(typ='I',fr= "The maximum altitude",ang= "The maximum altitude",docu= "",statut= "f",into=None,min=1,max=1,val_min=0,val_max='**',defaut=None), -input_grid_field_raw=SIMP(typ=('Fichier', 'All Files (*)'),fr= "field data file",ang= "field data file",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -input_grid_field_raw_metadata=SIMP(typ=('Fichier', 'All Files (*)'),fr= "field metadata file",ang= "field metadata file",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -nb_segments=SIMP(typ='I',fr= "number of 1D segments for each elementary face of the surface in the resulting mesh",ang= "number of 1D segments for each elementary face of the surface in the resulting mesh",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -), -calculation_thickness_surface_type_crack_fit_post_dgb_statistics_True_spectrum_analysis_True=BLOC(condition="(calculation=='thickness' and surface_type=='crack_fit' and post=='dgb' and statistics==True and spectrum_analysis==True)", -direction=SIMP(typ='I',fr= "The direction type",ang= "The direction type",docu= "",statut= "o",into=[1, -1, 2, -2, 3, -3],min=1,max=1,val_min='**',val_max='**',defaut=1), -alt_min=SIMP(typ='I',fr= "The minimum altitude",ang= "The minimum altitude",docu= "",statut= "f",into=None,min=1,max=1,val_min=0,val_max='**',defaut=None), -alt_max=SIMP(typ='I',fr= "The maximum altitude",ang= "The maximum altitude",docu= "",statut= "f",into=None,min=1,max=1,val_min=0,val_max='**',defaut=None), -input_grid_field_raw=SIMP(typ=('Fichier', 'All Files (*)'),fr= "field data file",ang= "field data file",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -input_grid_field_raw_metadata=SIMP(typ=('Fichier', 'All Files (*)'),fr= "field metadata file",ang= "field metadata file",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -), -calculation_thickness_surface_type_crack_fit_post_dgb_statistics_True_spectrum_analysis_False=BLOC(condition="(calculation=='thickness' and surface_type=='crack_fit' and post=='dgb' and statistics==True and spectrum_analysis==False)", -direction=SIMP(typ='I',fr= "The direction type",ang= "The direction type",docu= "",statut= "o",into=[1, -1, 2, -2, 3, -3],min=1,max=1,val_min='**',val_max='**',defaut=1), -alt_min=SIMP(typ='I',fr= "The minimum altitude",ang= "The minimum altitude",docu= "",statut= "f",into=None,min=1,max=1,val_min=0,val_max='**',defaut=None), -alt_max=SIMP(typ='I',fr= "The maximum altitude",ang= "The maximum altitude",docu= "",statut= "f",into=None,min=1,max=1,val_min=0,val_max='**',defaut=None), -input_grid_field_raw=SIMP(typ=('Fichier', 'All Files (*)'),fr= "field data file",ang= "field data file",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -input_grid_field_raw_metadata=SIMP(typ=('Fichier', 'All Files (*)'),fr= "field metadata file",ang= "field metadata file",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -nb_segments=SIMP(typ='I',fr= "number of 1D segments for each elementary face of the surface in the resulting mesh",ang= "number of 1D segments for each elementary face of the surface in the resulting mesh",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -), -calculation_thickness_surface_type_crack_fit_post_dgb_statistics_False_spectrum_analysis_True=BLOC(condition="(calculation=='thickness' and surface_type=='crack_fit' and post=='dgb' and statistics==False and spectrum_analysis==True)", -direction=SIMP(typ='I',fr= "The direction type",ang= "The direction type",docu= "",statut= "o",into=[1, -1, 2, -2, 3, -3],min=1,max=1,val_min='**',val_max='**',defaut=1), -alt_min=SIMP(typ='I',fr= "The minimum altitude",ang= "The minimum altitude",docu= "",statut= "f",into=None,min=1,max=1,val_min=0,val_max='**',defaut=None), -alt_max=SIMP(typ='I',fr= "The maximum altitude",ang= "The maximum altitude",docu= "",statut= "f",into=None,min=1,max=1,val_min=0,val_max='**',defaut=None), -input_grid_field_raw=SIMP(typ=('Fichier', 'All Files (*)'),fr= "field data file",ang= "field data file",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -input_grid_field_raw_metadata=SIMP(typ=('Fichier', 'All Files (*)'),fr= "field metadata file",ang= "field metadata file",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -), -calculation_thickness_surface_type_crack_fit_post_dgb_statistics_False_spectrum_analysis_False=BLOC(condition="(calculation=='thickness' and surface_type=='crack_fit' and post=='dgb' and statistics==False and spectrum_analysis==False)", -direction=SIMP(typ='I',fr= "The direction type",ang= "The direction type",docu= "",statut= "o",into=[1, -1, 2, -2, 3, -3],min=1,max=1,val_min='**',val_max='**',defaut=1), -alt_min=SIMP(typ='I',fr= "The minimum altitude",ang= "The minimum altitude",docu= "",statut= "f",into=None,min=1,max=1,val_min=0,val_max='**',defaut=None), -alt_max=SIMP(typ='I',fr= "The maximum altitude",ang= "The maximum altitude",docu= "",statut= "f",into=None,min=1,max=1,val_min=0,val_max='**',defaut=None), -input_grid_field_raw=SIMP(typ=('Fichier', 'All Files (*)'),fr= "field data file",ang= "field data file",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -input_grid_field_raw_metadata=SIMP(typ=('Fichier', 'All Files (*)'),fr= "field metadata file",ang= "field metadata file",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -nb_segments=SIMP(typ='I',fr= "number of 1D segments for each elementary face of the surface in the resulting mesh",ang= "number of 1D segments for each elementary face of the surface in the resulting mesh",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -), -calculation_thickness_surface_type_crack_fit_post_quantification_statistics_True_spectrum_analysis_True=BLOC(condition="(calculation=='thickness' and surface_type=='crack_fit' and post=='quantification' and statistics==True and spectrum_analysis==True)", -direction=SIMP(typ='I',fr= "The direction type",ang= "The direction type",docu= "",statut= "o",into=[1, -1, 2, -2, 3, -3],min=1,max=1,val_min='**',val_max='**',defaut=1), -alt_min=SIMP(typ='I',fr= "The minimum altitude",ang= "The minimum altitude",docu= "",statut= "f",into=None,min=1,max=1,val_min=0,val_max='**',defaut=None), -alt_max=SIMP(typ='I',fr= "The maximum altitude",ang= "The maximum altitude",docu= "",statut= "f",into=None,min=1,max=1,val_min=0,val_max='**',defaut=None), -input_grid_field_raw=SIMP(typ=('Fichier', 'All Files (*)'),fr= "field data file",ang= "field data file",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -input_grid_field_raw_metadata=SIMP(typ=('Fichier', 'All Files (*)'),fr= "field metadata file",ang= "field metadata file",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -), -calculation_thickness_surface_type_crack_fit_post_quantification_statistics_True_spectrum_analysis_False=BLOC(condition="(calculation=='thickness' and surface_type=='crack_fit' and post=='quantification' and statistics==True and spectrum_analysis==False)", -direction=SIMP(typ='I',fr= "The direction type",ang= "The direction type",docu= "",statut= "o",into=[1, -1, 2, -2, 3, -3],min=1,max=1,val_min='**',val_max='**',defaut=1), -alt_min=SIMP(typ='I',fr= "The minimum altitude",ang= "The minimum altitude",docu= "",statut= "f",into=None,min=1,max=1,val_min=0,val_max='**',defaut=None), -alt_max=SIMP(typ='I',fr= "The maximum altitude",ang= "The maximum altitude",docu= "",statut= "f",into=None,min=1,max=1,val_min=0,val_max='**',defaut=None), -input_grid_field_raw=SIMP(typ=('Fichier', 'All Files (*)'),fr= "field data file",ang= "field data file",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -input_grid_field_raw_metadata=SIMP(typ=('Fichier', 'All Files (*)'),fr= "field metadata file",ang= "field metadata file",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -nb_segments=SIMP(typ='I',fr= "number of 1D segments for each elementary face of the surface in the resulting mesh",ang= "number of 1D segments for each elementary face of the surface in the resulting mesh",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -), -calculation_thickness_surface_type_crack_fit_post_quantification_statistics_False_spectrum_analysis_True=BLOC(condition="(calculation=='thickness' and surface_type=='crack_fit' and post=='quantification' and statistics==False and spectrum_analysis==True)", -direction=SIMP(typ='I',fr= "The direction type",ang= "The direction type",docu= "",statut= "o",into=[1, -1, 2, -2, 3, -3],min=1,max=1,val_min='**',val_max='**',defaut=1), -alt_min=SIMP(typ='I',fr= "The minimum altitude",ang= "The minimum altitude",docu= "",statut= "f",into=None,min=1,max=1,val_min=0,val_max='**',defaut=None), -alt_max=SIMP(typ='I',fr= "The maximum altitude",ang= "The maximum altitude",docu= "",statut= "f",into=None,min=1,max=1,val_min=0,val_max='**',defaut=None), -input_grid_field_raw=SIMP(typ=('Fichier', 'All Files (*)'),fr= "field data file",ang= "field data file",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -input_grid_field_raw_metadata=SIMP(typ=('Fichier', 'All Files (*)'),fr= "field metadata file",ang= "field metadata file",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -), -calculation_thickness_surface_type_crack_fit_post_quantification_statistics_False_spectrum_analysis_False=BLOC(condition="(calculation=='thickness' and surface_type=='crack_fit' and post=='quantification' and statistics==False and spectrum_analysis==False)", -direction=SIMP(typ='I',fr= "The direction type",ang= "The direction type",docu= "",statut= "o",into=[1, -1, 2, -2, 3, -3],min=1,max=1,val_min='**',val_max='**',defaut=1), -alt_min=SIMP(typ='I',fr= "The minimum altitude",ang= "The minimum altitude",docu= "",statut= "f",into=None,min=1,max=1,val_min=0,val_max='**',defaut=None), -alt_max=SIMP(typ='I',fr= "The maximum altitude",ang= "The maximum altitude",docu= "",statut= "f",into=None,min=1,max=1,val_min=0,val_max='**',defaut=None), -input_grid_field_raw=SIMP(typ=('Fichier', 'All Files (*)'),fr= "field data file",ang= "field data file",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -input_grid_field_raw_metadata=SIMP(typ=('Fichier', 'All Files (*)'),fr= "field metadata file",ang= "field metadata file",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -nb_segments=SIMP(typ='I',fr= "number of 1D segments for each elementary face of the surface in the resulting mesh",ang= "number of 1D segments for each elementary face of the surface in the resulting mesh",docu= "",statut= "o",into=None,min=1,max=1,val_min='**',val_max='**',defaut=None), -), -) - -# This text should be dump into a file named 'map_cata.py' to be -# copied in the eficas directory $EFICAS_ROOT/MAP/. -# Then run 'qtEficas_map.py -s maquettemap'. The key name -# maquettemap is the name defined in prefs_MAP.py diff --git a/MAP/prefs.py b/MAP/prefs.py deleted file mode 100644 index 549c9696..00000000 --- a/MAP/prefs.py +++ /dev/null @@ -1,22 +0,0 @@ -# Copyright (C) 2007-2013 EDF R&D -# -# 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 -# -code='MAP' -import sys, os -if os.path.dirname(os.path.abspath(__file__)) not in sys.path : - sys.path.insert(0,os.path.dirname(os.path.abspath(__file__))) diff --git a/MAP/prefs_MAP.py b/MAP/prefs_MAP.py deleted file mode 100644 index f134bd1d..00000000 --- a/MAP/prefs_MAP.py +++ /dev/null @@ -1,59 +0,0 @@ -# -*- coding: utf-8 -*- -# Copyright (C) 2007-2013 EDF R&D -# -# 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, sys -# Les variables pouvant positionnees sont : -#print "import des prefs de MAP" - -# repIni sert a localiser le fichier -# initialdir sert comme directory initial des QFileDialog -# positionnee a repin au debut mise a jour dans configuration -repIni=os.path.dirname(os.path.abspath(__file__)) -INSTALLDIR=os.path.join(repIni,'..') - - -# Codage des strings qui accepte les accents (en remplacement de 'ascii') -# lang indique la langue utilisee pour les chaines d'aide : fr ou ang -lang='fr' -encoding='iso-8859-1' - -# Acces a la documentation -path_doc = os.path.join(repIni,'Doc') -exec_acrobat = "/usr/bin/xpdf" -savedir = os.environ['HOME'] -affiche = "groupe" -taille = 1400 - -rep_cata=os.path.dirname(os.path.abspath(__file__)) - -catalogues=( -# ('MAP','Solver',os.path.join(rep_cata,'cata_solver1.py'),'solver1'), -# ('MAP','Test',os.path.join(rep_cata,'cata_s_test03.py'),'s_test03'), -# ('MAP','Exemple python',os.path.join(rep_cata,'cata_c_transverse_empty_python.py'),'c_transverse_empty_python'), -# ('MAP','Image 3D',os.path.join(rep_cata,'cata_c_image_3d_altitude_thickness.py'),'c_image_3d_altitude_thickness'), -# ('MAP','Table FFT',os.path.join(rep_cata,'cata_c_post_table_fft.py'), 'c_post_table_fft'), -# ('MAP','PRE Mesh',os.path.join(rep_cata,'cata_c_pre_interface_mesh.py'), 'c_pre_interface_mesh'), -# ('MAP','Analyse 3D',os.path.join(rep_cata,'cata_s_scc_3d_analysis.py'), 's_scc_3d_analysis'), - ('MAP','Map',os.path.join(rep_cata,'mapcata.py'), 'essai'), -) - -closeAutreCommande = True -closeFrameRechercheCommande = True - diff --git a/MAP/properties.py b/MAP/properties.py deleted file mode 100644 index 21c523ac..00000000 --- a/MAP/properties.py +++ /dev/null @@ -1,24 +0,0 @@ -# -*- coding: utf-8 -*- -# maConfiguration MANAGEMENT OF EDF VERSION -# RESPONSABLE D6BHHHH J-P.LEFEBVRE -# ====================================================================== -# COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# IDENTIFICATION DU GESTIONNAIRE DE COMMANDE ACCAS A PARTIR -# DE LA VERSION DU CODE_ASTER ASSOCIE -#---------------------------------------------------------------------- -version = "7.1.0" -date = "23/04/2003" diff --git a/MAP/qtEficas_map.py b/MAP/qtEficas_map.py deleted file mode 100755 index 863353f8..00000000 --- a/MAP/qtEficas_map.py +++ /dev/null @@ -1,36 +0,0 @@ -#!/usr/bin/env python -# -*- coding: utf-8 -*- -# Copyright (C) 2007-2013 EDF R&D -# -# 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 -# -""" - Ce module sert a lancer EFICAS configure pour MAP -""" -# Modules Python -# Modules Eficas -import prefs -name='prefs_'+prefs.code -__import__(name) - - -import sys,os -sys.path.append(os.path.join(os.path.abspath(os.path.dirname(__file__)),'..')) - -import prefs -from InterfaceQT4 import eficas_go -eficas_go.lanceEficas(code=prefs.code) diff --git a/MAP/style.py b/MAP/style.py deleted file mode 100644 index d5961788..00000000 --- a/MAP/style.py +++ /dev/null @@ -1,19 +0,0 @@ -# Copyright (C) 2007-2013 EDF R&D -# -# 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 -# -# Necessaire pour compatibilite avec Aster diff --git a/MT/MT_Cata_V1.py b/MT/MT_Cata_V1.py deleted file mode 100644 index 0b09bac9..00000000 --- a/MT/MT_Cata_V1.py +++ /dev/null @@ -1,944 +0,0 @@ -## -*- coding: utf-8 -*- -# -## -------------------------------------------------- -## debut entete -## -------------------------------------------------- -# -# 20120510 : suppression de la valeur par defaut de MATERIAU->PARAMETRES_MAT->NU -# changement du nom MATERIAU->PARAMETRES_MAT->MASS_VOL en MATERIAU->PARAMETRES_MAT->RHO -# -# 20120619 : changement ordre d'affichage des macros -> ordre de création -# 20120725 : modification definition (matrices A,K,M) palier et support -# 20130411 : ajout elements dans palier generalise (mail tdg + comm tdg) -# -# todo : supprimer les noeuds -> definir les elements par leur longueur -# -# -# -# -# - - - - - - - - -from Accas import * -# - -import types -class Tuple: - def __init__(self,ntuple): - self.ntuple=ntuple - - def __convert__(self,valeur): - if type(valeur) == types.StringType: - return None - if len(valeur) != self.ntuple: - return None - return valeur - - def info(self): - return "Tuple de %s elements" % self.ntuple - - __repr__=info - __str__=info - - -#CONTEXT.debug = 1 -JdC = JDC_CATA(code = 'MT', - execmodul = None, - regles = (AU_MOINS_UN ( 'LIGNE_ARBRE',), - AU_PLUS_UN ( 'LIGNE_ARBRE',)), - ) # Fin JDC_CATA - -class Direction(ASSD): pass -class Materiau(ASSD): pass -#class Masse(ASSD): pass -class Zone(ASSD): pass -class Palier(ASSD): pass -#class Masse(ASSD): pass -#class ConditionsAuxLimites(ASSD): pass -class LigneArbre(ASSD): pass -class Support(ASSD): pass -#class Noeud(ASSD): pass - -## def macro_noeuds(self, NOEUD, **args): -## """ -## """ -## if NOEUD is not None: -## self.typeSDProd(NOEUD, Noeud) -## pass -## else: -## raise AsException("Impossible de typer les concepts resultats") - -## return Noeuds - -############################# DIRECTION ######################################## -DIRECTION = OPER(nom = "DIRECTION", - op = None, - sd_prod = Direction, - reentrant = 'n', - UIinfo = {"groupes": ("Machine tournante",)}, - fr = "Direction de la ligne d'arbre", - AXE = SIMP(statut = 'o', - typ = 'TXM', - fr = "Choix de la direction \n de l'axe de la ligne d'arbre (horizontal = Z, vertical = X)", - ang = "Choix de la direction \n de l'axe de la ligne d'arbre (horizontal = Z, vertical = X)", - min=1, - max=1, - into = ('HORIZONTAL','VERTICAL'), - defaut = 'HORIZONTAL', - ), # end AXE - ) # end DIRECTION - - -############################# MATERIAUX ######################################## -# @todo -# introduction manuelle => dans ce cas l'utilisateur definit le -# materiau comme ci-dessous -# recuperation depuis une bibliothèque de materiau => sera specife -# plus tard -MATERIAUX = OPER(nom = 'MATERIAUX', - op = None, - sd_prod = Materiau, - reentrant = 'n', - UIinfo = {"groupes": ("Machine tournante",)}, - fr = "Description materiau MT ", - TYPE_INTRO = SIMP(statut='o', - typ='TXM', - into=('MANUELLE','FICHIER'), - min=1, - max=1, - defaut='MANUELLE', - ), # end TYPE_INTRO - PARAMETRES_MAT = BLOC(condition = "((TYPE_INTRO == 'MANUELLE') )", - #MASS_VOL = SIMP(statut='o', typ='R', min=1, max=1, fr='masse volumique'), - RHO = SIMP(statut='o', - typ='R', - min=1, - max=1, - fr='masse volumique (en kg/m**3)', - ), # end RHO - E = SIMP(statut='o', - typ='R', - min=1, - max=1, - fr='module de Young (en Pa)', - ), # end E - NU = SIMP(statut='o', - typ='R', - min=1, - max=1, - val_min=-1.0, - val_max=0.5, - fr='coefficient de cisaillement (-1.0 <= NU <= 0.5)', - ), # end NU - ALPHA = SIMP(statut='f', - typ='R', - min=1, - max=1, - fr = "coefficient permettant de construire une matrice d'amortissement visqueux proportionnel a la rigidite", - ), # end ALPHA - BETA = SIMP(statut='f', - typ='R', - min=1, - max=1, - fr = "coefficient permettant de construire une matrice d'amortissement visqueux proportionnel a la masse", - ), # end BETA - GAMA = SIMP(statut='f', - typ='R', - min=1, - max=1, - fr = "coefficient d'amortissement hysteretique permettant de definir le module d'Young complexe", - ), # end GAMA - ), # end PARAMETRES_MAT - FICHIER_MAT = BLOC(condition = "((TYPE_INTRO == 'FICHIER') )", - MATERIAU_CATALOGUE = SIMP(statut='o', - min=1, - max=1, - typ=('Fichier','Fichier materiau (*.*)'), - fr="Format du fichier : CSV.", - ), # end MATERIAU_CATALOGUE - ), # end FICHIER_MAT - #SIMP(typ=('Fichier','JDC Files (*.comm)'),docu='',min=1,max=1,statut='o',defaut=None) - ) # end MATERIAU - - - -############################# ZONES ######################################## -ZONE = OPER(nom = 'ZONE', - op = None, - sd_prod = Zone, - reentrant = 'n', - UIinfo = {"groupes":("Machine tournante",)}, - fr = "Description zone MT ", - regles = (PRESENT_PRESENT("MASSE","TOTO","TITI")), - TOTO=SIMP(typ="TXM",statut='f'), - TITI=SIMP(typ="TXM",statut='f'), - MASSE = FACT(statut='f', - min=0, - max='**', - fr = "Definition des masses", - #POSITION = SIMP(statut='o', - NOEUD = SIMP(statut='o', - typ='TXM', - defaut=None, - fr = "Definition de la position de la masse par l'étiquette du noeud", - ), # end POSITION - TYPE_MASSE = SIMP(statut='o', - typ='TXM', - fr = "Choix du type de masse", - into=('DISQUE','AILETTE','QUELCONQUE'), - ), # end TYPE_MASSE - DISQUE = BLOC(condition = "((TYPE_MASSE == 'DISQUE') )", - TYPE_SAISIE = SIMP(statut='o', - typ='TXM', - fr = "Choix du type de saisie des parametres de la masse", - into = ('MECANIQUE','GEOMETRIQUE'), - defaut = 'MECANIQUE' - ), # end TYPE_SAISIE - PARAMETRES_MECANIQUE = BLOC(condition = "TYPE_SAISIE == 'MECANIQUE'", - PARAMETRES = FACT(statut = 'o', - fr = "Parametres mecanique pour Masse de type DISQUE", - MASSE = SIMP(statut='o', - typ='R', - val_min=0, - fr = "magnitude de la masse disque (en kg)", - ), # end MASSE_DISQUE - INERTIEX = SIMP(statut='o', - typ='R', - fr = "inertie en x (en kg.m**2)", - ), # end INERTIEX - INERTIEY = SIMP(statut='o', - typ='R', - fr = "inertie en y (en kg.m**2)", - ), # end INERTIEY - INERTIEZ = SIMP(statut='o', - typ='R', - fr = "inertie en z (en kg.m**2)", - ), # end INERTIEZ - ) # nd PARAMETRES_DISQUE_M - ), # end PARAMETRES_MECANIQUE - PARAMETRES_GEOMETRIQUE = BLOC(condition = "TYPE_SAISIE == 'GEOMETRIQUE'", - PARAMETRES = FACT(statut = 'o', - fr = "Parametres geometrique pour Masse de type DISQUE", - DIAMETRE_EXT = SIMP(statut='o', - typ='R', - val_min=0, - fr = "diametre exterieur de la masse disque (en m)", - ), # end MASSE_DISQUE - DIAMETRE_INT = SIMP(statut='o', - typ='R', - fr = "diametre interieur de la masse disque (en m). Verifier le diametre de la section avant saisie", - ), # end INERTIEX - EPAISSEUR = SIMP(statut='o', - typ='R', - val_min=0, - fr = "epaisseur (largeur) de la masse disque (en m)", - ), # end INERTIEY - MATERIAU = SIMP(statut='o', - typ=Materiau, - fr = "materiau defini par le concept MATERIAU", - ), # end INERTIEZ - ) # nd PARAMETRES_DISQUE_G - ), # end PARAMETRES_MECANIQUE - ), # end DISQUE - AILETTE = BLOC(condition = "((TYPE_MASSE == 'AILETTE') )", - TYPE_SAISIE = SIMP(statut='o', - typ='TXM', - fr = "Choix du type de saisie des parametres de la masse", - into = ('MECANIQUE','GEOMETRIQUE'), - defaut = 'MECANIQUE' - ), # end TYPE_SAISIE - PARAMETRES_MECANIQUE = BLOC(condition = "TYPE_SAISIE == 'MECANIQUE'", - PARAMETRES = FACT(statut = 'o', - fr = "Parametres mecanique pour Masse de type AILETTE", - MASSE = SIMP(statut='o', - typ='R', - val_min=0, - fr = "magnitude de la masse ailette (en kg)", - ), # end MASSE_AILETTE - INERTIEX = SIMP(statut='o', - typ='R', - fr = "inertie en x (en kg.m**2)", - ), # end INERTIEX - INERTIEY = SIMP(statut='o', - typ='R', - fr = "inertie en y (en kg.m**2)", - ), # end INERTIEY - INERTIEZ = SIMP(statut='o', - typ='R', - fr = "inertie en z (en kg.m**2)", - ), # end INERTIEZ - ) # nd PARAMETRES_AILETTE_M - ), # end PARAMETRES_MECANIQUE - PARAMETRES_GEOMETRIQUE = BLOC(condition = "TYPE_SAISIE == 'GEOMETRIQUE'", - PARAMETRES = FACT(statut = 'o', - fr = "Parametres geometrique pour Masse de type AILETTE", - MASSE_AILETTE = SIMP(statut='o', - typ='R', - val_min=0, - fr = "Renseignement de la masse d'une ailette (en kg)", - ), # end MASSE_AILETTE - RAYON = SIMP(statut='o', - typ='R', - val_min=0, - fr = "Renseignement de la distance entre le pied de l'ailette et le centre de rotation (en m). Verifier le diametre de la section avant saisie", - ), # end RAYON - HAUTEUR = SIMP(statut='o', - typ='R', - val_min=0, - fr = "Renseignement de la distance entre les deux extremites de l'ailette (en m)", - ), # end HAUTEUR - BASE = SIMP(statut='o', - typ='R', - val_min=0, - fr = "Renseignement de la largeur du pied de l'ailette (en m)", - ), # end BASE - NOMBRE = SIMP(statut='o', - typ='I', - val_min=1, - fr = "renseignement du nombre d'ailette sur le disque", - ), - ) # end PARAMETRES_DISQUE - ), # end PARAMETRES_MECANIQUE - ), # end AILETTE - QUELCONQUE = BLOC(condition = "((TYPE_MASSE == 'QUELCONQUE') )", - #TYPE_SAISIE = SIMP(statut='c',typ='TXM',defaut="MECANIQUE"), # cf 20120622 test : mot-clé caché - PARAMETRES = FACT(statut = 'o', - fr = "Parametres pour Masse de type QUELCONQUE", - MASSE = SIMP(statut='o', - typ='R', - val_min=0, - fr = "magnitude de la masse quelconque (en m)", - ), # end MASSE - INERTIEX = SIMP(statut='o', - typ='R', - fr = "inertie en x (en kg.m**2)", - ), # end INERTIEX - INERTIEY = SIMP(statut='o', - typ='R', - fr = "inertie en y (en kg.m**2)", - ), # end INERTIEY - INERTIEZ = SIMP(statut='o', - typ='R', - fr = "inertie en z (en kg.m**2)", - ), # end INERTIEZ - ), # end PARAMETRES_QUELCONQUE - ), # end QUELCONQUE - ), # end MASSE - NOEUDS = FACT(fr = "abscisse curviligne du noeud", - statut='o', - min=2, - max='**', - NOM = SIMP(statut='o', - typ='TXM', - fr="nom du noeud", - ), # end NOM - X = SIMP(statut='o', - typ='R', - defaut=0.0, - val_min=0.0, - fr = "abscisse curviligne du noeud", - ), # end X - ), # end NOEUDS - ELEMENTS = FACT(statut='o', - min=1, - max='**', - NOM = SIMP(statut='o', - typ='TXM', - fr="Nom de l'element" - ), # end NOM - DEBUT = SIMP(statut='o', - typ='TXM', - fr= "Noeud de debut de l'element (etiquette d'un noeud)" - ), # end DEBUT - FIN = SIMP(statut='o', - typ='TXM', - fr= "Noeud de fin de l'element (etiquette d'un noeud)" - ), # end FIN - RAFFINAGE = SIMP(statut='o', - typ='TXM', - into=('OUI','NON'), - defaut='NON' - ), # end RAFFINAGE - PARAM_RAFFINAGE = BLOC(condition = "((RAFFINAGE == 'OUI') )", - NB_POINTS_SUPPL = SIMP(statut='o', - typ='I' - ), # end NB_POINTS_SUPPL - ), # end PARAM_RAFFINAGE - MATERIAU = SIMP(statut='o', - typ=Materiau, - fr= "Choix du Materiau de l'element" - ), # end MATERIAU - SECTION_MASSE = FACT(statut='o', - fr = "Section liee à la masse ", - TYPE_SECTION = SIMP(statut='o', - typ='TXM', - into=('CONSTANTE','VARIABLE'), - defaut='CONSTANTE', - ), # end TYPE_SECTION - DIAM_EXTERN_DEBUT = SIMP(statut='o', - typ='R', - fr = "diametre exterieur en debut de section (en m)", - ), # end DIAM_EXTERN_DEBUT - DIAM_INTERN_DEBUT = SIMP(statut='o', - typ='R', - fr = "diametre interieur en debut de section (en m)", - ), # end DIAM_INTERN_DEBUT - PARAMETRE_SECT_VAR = BLOC(condition = "((TYPE_SECTION == 'VARIABLE') )", - DIAM_EXTERN_SORTIE = SIMP(statut='o', - typ='R', - fr = "diametre exterieur en fin de section (en m)", - ), # end DIAM_EXTERN_SORTIE - DIAM_INTERN_SORTIE = SIMP(statut='o', - typ='R', - fr = "diametre interieur en fin de section (en m)", - ), # DIAM_INTERN_SORTIE - ), - ), # end SECTION_MASSE - SECTION_RIGIDITE = FACT(statut='f', - fr = "Section liee à la rigidite ", - TYPE_SECTION = SIMP(statut='o', - typ='TXM', - into=('CONSTANTE','VARIABLE'), - defaut='CONSTANTE', - ), # end TYPE_SECTION - DIAM_EXTERN_DEBUT = SIMP(statut='o', - typ='R', - fr = "diametre exterieur en debut de section (en m)", - ), # end DIAM_EXTERN_DEBUT - DIAM_INTERN_DEBUT = SIMP(statut='o', - typ='R', - fr = "diametre interieur en debut de section (en m)", - ), # end DIAM_INTERN_DEBUT - PARAMETRE_SECT_VAR = BLOC(condition = "((TYPE_SECTION == 'VARIABLE') )", - DIAM_EXTERN_SORTIE = SIMP(statut='o', - typ='R', - fr = "diametre exterieur en fin de section (en m)", - ), # end DIAM_EXTERN_SORTIE - DIAM_INTERN_SORTIE = SIMP(statut='o', - typ='R', - fr = "diametre interieur en fin de section (en m)", - ), # end DIAM_INTERN_SORTIE - ), # end PARAMETRE_SECT_VAR - ), # end SECTION_RIGIDITE - ), # end ELEMENTS - FISSURE = FACT(statut='f', - fr="Saisie de la presence d'une fissure (uniquement sur section constante a droite et a gauche)", - MATERIAU = SIMP(statut='o', - typ=Materiau, - fr="Renseignement du materiau a la position de la fissure" - ), # end MATERIAU - NOEUD_FISSURE = SIMP(statut='o', - typ='TXM', - fr="Renseignement de l'etiquette du noeud de la fissure", - ), # end POSITION_FISSURE - ORIENTATION_FISSURE = SIMP(statut='o', - typ='R', - fr="Renseignement de la position angulaire de la fissure (en degres)", - ), # end ORIENTATION_FISSURE - FICHIER_RAIDEUR = SIMP(statut='o', - typ=('Fichier','Fichier loi de raideur (*.*)'), - fr="Renseignement du fichier contenant la loi de raideur", - ), # end FICHIER_RAIDEUR - DIAMETRE = SIMP(statut='o', - typ='R', - fr="Renseignement du diametre (pour la proportion par rapport à l'eprouvette)", - ), # end DIAMETRE - ), # end FISSURE - - ) # end ZONE - -############################# PALIERS ######################################## -PALIER = OPER(nom = 'PALIER', - op = None, - sd_prod = Palier, - reentrant = 'n', - UIinfo = {"groupes":("Machine tournante",)}, - fr = "Description palier MT ", - POSITION = SIMP(statut='o', - typ='R', - defaut=0.0, - fr = "position (absolue) du palier", - ), # end POSITION - TYPE_PALIER = SIMP(statut='o', - typ='TXM', - into=('PALIER LINEAIRE','PALIER NON-LINEAIRE','PALIER DE TORSION','LAME FLUIDE'), - ), # end TYPE_PALIER - PALIER_LINEAIRE = BLOC(condition = "((TYPE_PALIER == 'PALIER LINEAIRE') )", - TYPE_SAISIE = SIMP(statut='o', - typ='TXM', - into=('MANUELLE', 'CATALOGUE'), - ), # end TYPE_SAISIE - MANUELLE = BLOC(condition = "((TYPE_SAISIE == 'MANUELLE') )", - CARAC_PALIER = FACT(statut = 'o',max='**',fr = "Saisie des caracteristiques du palier par vitesse de rotation de l'arbre", - VITESSE_ROTATION = SIMP(statut='o', - typ='R', - fr= "Vitesse de rotation", - ), # end VITESSE_ROTATION - SYME = SIMP(statut = 'o', - typ = 'TXM', - max = 1, - fr = "Symetrie des matrices du palier", - into = ('OUI','NON'), - defaut = 'OUI', - ), # end SYME - RIGIDITE_NS = BLOC(condition="(SYME=='NON')", - RIGIDITE=FACT(statut='o',fr="Renseignement des caracteristiques non symetriques de rigidite du palier", - KXX = SIMP(statut = 'o', - typ = 'R', - max = 1, - fr = "Valeur de Kxx dans la matrice de rigidite", - ),# end KXX - KXY = SIMP(statut = 'o', - typ = 'R', - max = 1, - fr = "Valeur de Kxy dans la matrice de rigidite", - ),# end KXY - KYX = SIMP(statut = 'o', - typ = 'R', - max = 1, - fr = "Valeur de Kyx dans la matrice de rigidite", - ),# end KYX - KYY = SIMP(statut = 'o', - typ = 'R', - max = 1, - fr = "Valeur de Kyy dans la matrice de rigidite", - ),# end KYY - ), # end RIGIDITE - ), # end RIGIDITE_S - RIGIDITE_S = BLOC(condition="(SYME=='OUI')", - RIGIDITE=FACT(statut='o',fr="Renseignement des caracteristiques symetriques de rigidite du palier", - KXX = SIMP(statut = 'o', - typ = 'R', - max = 1, - fr = "Valeur de Kxx dans la matrice de rigidite", - ),# end KXX - KXY = SIMP(statut = 'o', - typ = 'R', - max = 1, - fr = "Valeur de Kxy dans la matrice de rigidite", - ),# end KXY - KYY = SIMP(statut = 'o', - typ = 'R', - max = 1, - fr = "Valeur de Kyy dans la matrice de rigidite", - ),# end KYY - ), # end RIGIDITE - ), # end RIGIDITE_NS - AMORTISSEMENT_NS = BLOC(condition="(SYME=='NON')", - AMORTISSEMENT=FACT(statut='o',fr="Renseignement des caracteristiques non symetriques d'amortissement du palier", - AXX = SIMP(statut = 'o', - typ = 'R', - max = 1, - fr = "Valeur de Axx dans la matrice d'amortissement", - ),# end AXX - AXY = SIMP(statut = 'o', - typ = 'R', - max = 1, - fr = "Valeur de Axy dans la matrice d'amortissement", - ),# end AXY - AYX = SIMP(statut = 'o', - typ = 'R', - max = 1, - fr = "Valeur de Ayx dans la matrice d'amortissement", - ),# end AYX - AYY = SIMP(statut = 'o', - typ = 'R', - max = 1, - fr = "Valeur de Ayy dans la matrice d'amortissement", - ),# end AYY - ), # end AMORTISSEMENT - ), # end AMORTISSEMENT_NS - AMORTISSEMENT_S = BLOC(condition="(SYME=='OUI')", - AMORTISSEMENT=FACT(statut='o',fr="Renseignement des caracteristiques symetriques d'amortissement du palier", - AXX = SIMP(statut = 'o', - typ = 'R', - max = 1, - fr = "Valeur de Axx dans la matrice d'amortissement", - ),# end AXX - AXY = SIMP(statut = 'o', - typ = 'R', - max = 1, - fr = "Valeur de Axy dans la matrice d'amortissement", - ),# end AXY - AYY = SIMP(statut = 'o', - typ = 'R', - max = 1, - fr = "Valeur de Ayy dans la matrice d'amortissement", - ),# end AYY - ), # end AMORTISSEMENT - ), # end AMORTISSEMENT_S - ), # end CARAC_PALIER - ), # end MANUELLE - CATALOGUE = BLOC(condition = "((TYPE_SAISIE == 'CATALOGUE') )", - CATALOGUE_AMORTISSEMENT = SIMP(statut='o', - min=1, - max=1, - typ='Fichier', - fr="Format du fichier : CSV.", - ), # end CATALOGUE_AMORTISSEMENT - CATALOGUE_RIGIDITE = SIMP(statut='o', - min=1, - max=1, - typ='Fichier', - fr="Format du fichier : CSV.", - ), # end CATALOGUE_RIGIDITE - ), # end CATALOGUE - ), # end PALIER_LINEAIRE - LAME_FLUIDE = BLOC(condition = "((TYPE_PALIER == 'LAME FLUIDE') )", - TYPE_SAISIE = SIMP(statut='o', - typ='TXM', - into=('MANUELLE', 'CATALOGUE'), - ), # end TYPE_SAISIE - MANUELLE = BLOC(condition = "((TYPE_SAISIE == 'MANUELLE') )", - CARAC_PALIER = FACT(statut = 'o',max='**',fr = "Saisie des caracteristiques du palier par vitesse de rotation de l'arbre", - SYME = SIMP(statut = 'o', - typ = 'TXM', - max = 1, - fr = "Symetrie des matrices du palier", - into = ('OUI','NON'), - defaut = 'OUI', - ), # end SYME - RIGIDITE_NS = BLOC(condition="(SYME=='NON')", - RIGIDITE=FACT(statut='o',fr="Renseignement des caracteristiques non symetriques de rigidite du palier", - KXX = SIMP(statut = 'o', - typ = 'R', - max = 1, - fr = "Valeur de Kxx dans la matrice de rigidite", - ),# end KXX - KXY = SIMP(statut = 'o', - typ = 'R', - max = 1, - fr = "Valeur de Kxy dans la matrice de rigidite", - ),# end KXY - KYX = SIMP(statut = 'o', - typ = 'R', - max = 1, - fr = "Valeur de Kyx dans la matrice de rigidite", - ),# end KYX - KYY = SIMP(statut = 'o', - typ = 'R', - max = 1, - fr = "Valeur de Kyy dans la matrice de rigidite", - ),# end KYY - ), # end RIGIDITE - ), # end RIGIDITE_NS - RIGIDITE_S = BLOC(condition="(SYME=='OUI')", - RIGIDITE=FACT(statut='o',fr="Renseignement des caracteristiques symetriques de rigidite du palier", - KXX = SIMP(statut = 'o', - typ = 'R', - max = 1, - fr = "Valeur de Kxx dans la matrice de rigidite", - ),# end KXX - KXY = SIMP(statut = 'o', - typ = 'R', - max = 1, - fr = "Valeur de Kxy dans la matrice de rigidite", - ),# end KXY - KYY = SIMP(statut = 'o', - typ = 'R', - max = 1, - fr = "Valeur de Kyy dans la matrice de rigidite", - ),# end KYY - ), # end RIGIDITE - ), # end RIGIDITE_S - AMORTISSEMENT_NS = BLOC(condition="(SYME=='NON')", - AMORTISSEMENT=FACT(statut='o',fr="Renseignement des caracteristiques non symetriques d'amortissement du palier", - AXX = SIMP(statut = 'o', - typ = 'R', - max = 1, - fr = "Valeur de Axx dans la matrice d'amortissement", - ),# end AXX - AXY = SIMP(statut = 'o', - typ = 'R', - max = 1, - fr = "Valeur de Axy dans la matrice d'amortissement", - ),# end AXY - AYX = SIMP(statut = 'o', - typ = 'R', - max = 1, - fr = "Valeur de Ayx dans la matrice d'amortissement", - ),# end AYX - AYY = SIMP(statut = 'o', - typ = 'R', - max = 1, - fr = "Valeur de Ayy dans la matrice d'amortissement", - ),# end AYY - ), # end AMORTISSEMENT - ), # end AMORTISSEMENT_NS - AMORTISSEMENT_S = BLOC(condition="(SYME=='OUI')", - AMORTISSEMENT=FACT(statut='o',fr="Renseignement des caracteristiques symetriques d'amortissement du palier", - AXX = SIMP(statut = 'o', - typ = 'R', - max = 1, - fr = "Valeur de Axx dans la matrice d'amortissement", - ),# end AXX - AXY = SIMP(statut = 'o', - typ = 'R', - max = 1, - fr = "Valeur de Axy dans la matrice d'amortissement", - ),# end AXY - AYY = SIMP(statut = 'o', - typ = 'R', - max = 1, - fr = "Valeur de Ayy dans la matrice d'amortissement", - ),# end AYY - ), # end AMORTISSEMENT - ), # end AMORTISSEMENT_S - MASSE_NS = BLOC(condition="(SYME=='NON')", - MASSE=FACT(statut='o',fr="Renseignement des caracteristiques non symetriques de masse du palier", - MXX = SIMP(statut = 'o', - typ = 'R', - max = 1, - fr = "Valeur de Mxx dans la matrice de masse", - ),# end MXX - MXY = SIMP(statut = 'o', - typ = 'R', - max = 1, - fr = "Valeur de Mxy dans la matrice de masse", - ),# end MXY - MYX = SIMP(statut = 'o', - typ = 'R', - max = 1, - fr = "Valeur de Myx dans la matrice de masse", - ),# end MYX - MYY = SIMP(statut = 'o', - typ = 'R', - max = 1, - fr = "Valeur de Myy dans la matrice de masse", - ),# end MYY - ), # end MASSE - ), # end MASSE_NS - MASSE_S = BLOC(condition="(SYME=='OUI')", - MASSE=FACT(statut='o',fr="Renseignement des caracteristiques symetriques de masse du palier", - MXX = SIMP(statut = 'o', - typ = 'R', - max = 1, - fr = "Valeur de Mxx dans la matrice de masse", - ),# end MXX - MXY = SIMP(statut = 'o', - typ = 'R', - max = 1, - fr = "Valeur de Mxy dans la matrice de masse", - ),# end MXY - MYY = SIMP(statut = 'o', - typ = 'R', - max = 1, - fr = "Valeur de Myy dans la matrice de masse", - ),# end MYY - ), # end MASSE - ), # end MASSE_S - VITESSE_ROTATION = SIMP(statut='o', - typ='R', - fr= "Vitesse de rotation", - ), # end VITESSE_ROTATION - ), # end CARAC_PALIER - ), # end MANUELLE - CATALOGUE = BLOC(condition = "((TYPE_SAISIE == 'CATALOGUE') )", - PALIERS_CATALOGUE = SIMP(statut='o', - min=1, - max=1, - typ='Fichier', - fr="Format du fichier : CSV.", - ), # end PALIERS_CATALOGUE - ), # end CATALOGUE - - ), # end LAME_FLUIDE - PALIER_NON_LINEAIRE = BLOC(condition = "((TYPE_PALIER == 'PALIER NON-LINEAIRE') )", - # 20121126 : reception spec du calcul transitoire accidentel - # - TYPE = SIMP(statut='o', - typ='TXM', - into=('PAPANL','PAFINL','PAHYNL','PACONL'), - defaut=None, - fr="Le choix d'un palier non-lineaire n'est valide que lors d'un calcul Aster/Edyos", - ), # end TYPE - REPERTOIRE_EDYOS = SIMP(statut='o', - typ=('Repertoire'), - defaut=None, - fr="Renseigement du repertoire contenant le fichier DONNEES_YACS (il faudra choisir ce repertoire au moment de la creation du cas de calcul)", - ), # end REPERTOIRE_EDYOS - ), # end PALIER_NON_LINEAIRE - PALIER_DE_TORSION = BLOC(condition = "((TYPE_PALIER == 'PALIER DE TORSION') )", - # ce type de palier sera implémenté dans la version 2 ... - ), # end PALIER_DE_TORSION - ) # end PALIER - - -############################# SUPPORT ######################################## -SUPPORT = OPER(nom = "SUPPORT", - op = None, - sd_prod = Support, - reentrant = 'n', - UIinfo = {"groupes":("Machine tournante",)}, - fr = "Description d'un support ", - TYPE_SUPPORT = SIMP(statut='o', - typ='TXM', - defaut="RIGIDE", - into=("RIGIDE", "SIMPLIFIE", "GENERALISE", ), - ), # end TYPE_SUPPORT - SIMPLIFIE = BLOC(condition = "((TYPE_SUPPORT == 'SIMPLIFIE') )", - RIGIDITE = FACT(statut='o', fr = "Matrice de rigidite", - KXX = SIMP(statut = 'o', - typ = 'R', - max = 1, - fr = "Valeur de Kxx dans la matrice de rigidite", - ),# end KXX - KXY = SIMP(statut = 'o', - typ = 'R', - max = 1, - fr = "Valeur de Kxy dans la matrice de rigidite", - ),# end KXY - KYX = SIMP(statut = 'o', - typ = 'R', - max = 1, - fr = "Valeur de Kyx dans la matrice de rigidite", - ),# end KYX - KYY = SIMP(statut = 'o', - typ = 'R', - max = 1, - fr = "Valeur de Kyy dans la matrice de rigidite", - ),# end KYY - ), # end RIGIDITE - AMORTISSEMENT = FACT(statut='o', fr= "Matrice d'amortissement", - AXX = SIMP(statut = 'o', - typ = 'R', - max = 1, - fr = "Valeur de Axx dans la matrice d'amortissement", - ),# end AXX - AXY = SIMP(statut = 'o', - typ = 'R', - max = 1, - fr = "Valeur de Axy dans la matrice d'amortissement", - ),# end AXY - AYX = SIMP(statut = 'o', - typ = 'R', - max = 1, - fr = "Valeur de Ayx dans la matrice d'amortissement", - ),# end AYX - AYY = SIMP(statut = 'o', - typ = 'R', - max = 1, - fr = "Valeur de Ayy dans la matrice d'amortissement", - ),# end AYY - ), # end AMORTISSEMENT - MASSE = FACT(statut='o', fr= "Matrice d'amortissement", - MXX = SIMP(statut = 'o', - typ = 'R', - max = 1, - fr = "Valeur de Mxx dans la matrice de masse", - ),# end MXX - MXY = SIMP(statut = 'o', - typ = 'R', - max = 1, - fr = "Valeur de Mxy dans la matrice de masse", - ),# end MXY - MYX = SIMP(statut = 'o', - typ = 'R', - max = 1, - fr = "Valeur de Myx dans la matrice de masse", - ),# end MYX - MYY = SIMP(statut = 'o', - typ = 'R', - max = 1, - fr = "Valeur de Myy dans la matrice de masse", - ),# end MYY - ), # end MASSE - ), # end SIMPLIFIE - GENERALISE = BLOC(condition = "((TYPE_SUPPORT == 'GENERALISE') )", - # cft 20130422 modif - ANGL_NAUT = SIMP(statut='f', - fr="Renseignement de la rotation du modele de la table de groupe a effectuer (X,Y,Z)", - typ='R', - min=3,max=3, - ), # end ANGL_NAUT - TRANS = SIMP(statut='f', - fr="Renseignement de la translation du modele de la table de groupe a effectuer (X,Y,Z)", - typ='R', - min=3,max=3, - ), # end TRANS - MAIL_TDG = SIMP(statut='o', - fr="Maillage de la table de groupe", - typ=("Fichier","Fichier maillage TdG (*.*)"), - min=1,max=1, - ), # end MAIL_TDG - COMM_TDG = SIMP(statut='o', - fr="Mise en données de la table de groupe", - typ=("Fichier","Fichier commande TdG (*.*)"), - min=1,max=1, - ), # end COMM_TDG - NOM_MACRO_ELEMENT_DYNAMIQUE = SIMP(statut='o', - fr="Renseignement du nom du macro element dynamique cree dans le fichier importe", - typ='TXM', - min=1,max=1, - ), # end NOM_MACRO_ELEMENT_DYNAMIQUE - NOM_INTERFACE = SIMP(statut='o', - fr="Renseignement du nom de l'interface cree dans le fichier importe", - typ='TXM', - min=1,max=1, - ), # end NOM_INTERFACE - NOM_GROUP_MA_MASSIF = SIMP(statut='o', - fr="Renseignement du nom du groupe de maille du massif cree dans le fichier importe", - typ='TXM', - min=1,max=1, - ), # end NOM_GROUP_MA_MASSIF - REDUIT = SIMP(statut='f', - fr="Introduction du mot-cle REDUIT pour le cas ou le nombre d'interface n'est pas identique entre le support et le ligne d'arbre", - typ='TXM', - into=("OUI"), - defaut="OUI", - ), # end REDUIT - # fin cft 20130422 modif - #MODELE_COMPLET = SIMP(statut = 'o', - # fr = "Parametres pour support generalisee", - # typ='Fichier', - # min=1, - # max=1, - # ), # end MODELE_COMPLET - ), # end GENERALISE - ) # end SUPPORT - -############################# LIGNE_ARBRE ######################################## -LIGNE_ARBRE = OPER(nom = 'LIGNE_ARBRE', - op = None, - sd_prod = LigneArbre, - reentrant = 'n', - UIinfo = {"groupes":("Machine tournante",)}, - fr = "Description Ligne d'arbre ", - DIRECTION = SIMP(statut='o', - typ=Direction, - min=1, - max=1, - ), # end DIRECTION - ZONES = SIMP(statut='o', - typ=Zone, - min=1, - max='**', - ), # end ZONES - PALIERS = SIMP(statut='o', - typ=Palier, - min=2, - max='**', - ), # end PALIERS - #MASSES = SIMP(statut='f', - #typ=Masse, - #max='**', - #), # end MASSES - #POIDS_PROPRE = SIMP(statut='f', - #fr= "Poids propre", - #typ='TXM', - #into=('OUI', 'NON'), - #defaut='NON', - #), # end POIDS_PROPRE - SUPPORTS = SIMP(statut='o', - typ=Support, - min=1, - max='**', - ), # end SUPPORTS - ) # end LIGNE_ARBRE - diff --git a/MT/MT_Cata_V2016.py b/MT/MT_Cata_V2016.py deleted file mode 100644 index 7e6caee3..00000000 --- a/MT/MT_Cata_V2016.py +++ /dev/null @@ -1,1066 +0,0 @@ -## -*- coding: utf-8 -*- -# -## -------------------------------------------------- -## debut entete -## -------------------------------------------------- -# -# 20120510 : suppression de la valeur par defaut de MATERIAU->PARAMETRES_MAT->NU -# changement du nom MATERIAU->PARAMETRES_MAT->MASS_VOL en MATERIAU->PARAMETRES_MAT->RHO -# -# 20120619 : changement ordre d'affichage des macros -> ordre de création -# 20120725 : modification definition (matrices A,K,M) palier et support -# 20130411 : ajout elements dans palier generalise (mail tdg + comm tdg) -# -# todo : supprimer les noeuds -> definir les elements par leur longueur -# -# -# -# -# - - - - -from Accas import * -# - -import types -class Tuple: - def __init__(self,ntuple): - self.ntuple=ntuple - - def __convert__(self,valeur): - if type(valeur) == types.StringType: - return None - if len(valeur) != self.ntuple: - return None - return valeur - - def info(self): - return "Tuple de %s elements" % self.ntuple - - __repr__=info - __str__=info - - -#CONTEXT.debug = 1 -VERSION_CATALOGUE="2016.0.0"; -JdC = JDC_CATA(code = 'MT', - execmodul = None, - regles = (AU_MOINS_UN ( 'LIGNE_ARBRE',), - AU_PLUS_UN ( 'LIGNE_ARBRE',)), - ) # Fin JDC_CATA - -class Direction(ASSD): pass -class Materiau(ASSD): pass -#class Masse(ASSD): pass -class Zone(ASSD): pass -class Palier(ASSD): pass -#class Masse(ASSD): pass -#class ConditionsAuxLimites(ASSD): pass -class LigneArbre(ASSD): pass -class Support(ASSD): pass -class Butee(ASSD): pass -class PalTor(ASSD):pass -#class Noeud(ASSD): pass - -## def macro_noeuds(self, NOEUD, **args): -## """ -## """ -## if NOEUD is not None: -## self.typeSDProd(NOEUD, Noeud) -## pass -## else: -## raise AsException("Impossible de typer les concepts resultats") - -## return Noeuds - -############################# DIRECTION ######################################## -DIRECTION = MACRO(nom = "DIRECTION", - op = None, - sd_prod = Direction, - reentrant = 'n', - UIinfo = {"groupes": ("Machine tournante",)}, - fr = "Renseignement de la direction de la ligne d'arbres", - AXE = SIMP(statut = 'o', - typ = 'TXM', - fr = "Direction de l'axe de la ligne d'arbres", - min=1, - max=1, - into = ('HORIZONTAL','VERTICAL'), - defaut = 'HORIZONTAL', - ), # end AXE - ) # end DIRECTION - - -############################# MATERIAUX ######################################## -# @todo -# introduction manuelle => dans ce cas l'utilisateur definit le -# materiau comme ci-dessous -# recuperation depuis une bibliothèque de materiau => sera specife -# plus tard -MATERIAUX = MACRO(nom = 'MATERIAUX', - op = None, - sd_prod = Materiau, - reentrant = 'n', - UIinfo = {"groupes": ("Machine tournante",)}, - fr = "Renseignement des caracteristiques des materiaux", - TYPE_INTRO = SIMP(statut='o', - fr = "Mode de description des caracteristiques des materiaux", - typ='TXM', - into=('MANUELLE','FICHIER'), - min=1, - max=1, - defaut='MANUELLE', - ), # end TYPE_INTRO - PARAMETRES_MAT = BLOC(condition = "((TYPE_INTRO == 'MANUELLE') )", - #MASS_VOL = SIMP(statut='o', typ='R', min=1, max=1, fr='masse volumique'), - fr = "Saisie manuelle des caracteristiques du materiau", - RHO = SIMP(statut='o', - typ='R', - min=1, - fr='Masse volumique (kg/m**3)', - ), # end RHO - E = SIMP(statut='o', - typ='R', - min=1, - max=1, - fr="Module d'Young (Pa)", - ), # end E - NU = SIMP(statut='o', - typ='R', - min=1, - max=1, - val_min=-1.0, - val_max=0.5, - fr='Coefficient de cisaillement (-1.0 <= NU <= 0.5)', - ), # end NU - ALPHA = SIMP(statut='f', - typ='R', - min=1, - max=1, - fr = "Coefficient permettant de construire une matrice d'amortissement visqueux proportionnel a la rigidite", - ), # end ALPHA - BETA = SIMP(statut='f', - typ='R', - min=1, - max=1, - fr = "Coefficient permettant de construire une matrice d'amortissement visqueux proportionnel a la masse", - ), # end BETA - GAMA = SIMP(statut='f', - typ='R', - min=1, - max=1, - fr = "Coefficient d'amortissement hysteretique permettant de definir le module d'Young complexe", - ), # end GAMA - ), # end PARAMETRES_MAT - FICHIER_MAT = BLOC(condition = "((TYPE_INTRO == 'FICHIER') )", - MATERIAU_CATALOGUE = SIMP(statut='o', - fr="Fichier decrivant les caracteristiques materiaux (format decrit dans le Manuel Utilisateur)", - min=1, - max=1, - typ=('Fichier','Fichier materiau (*.*)'), - ), # end MATERIAU_CATALOGUE - ), # end FICHIER_MAT - #SIMP(typ=('Fichier','JDC Files (*.comm)'),docu='',min=1,max=1,statut='o',defaut=None) - ) # end MATERIAU - - - -############################# ZONES ######################################## -ZONE = MACRO(nom = 'ZONE', - op = None, - sd_prod = Zone, - reentrant = 'n', - UIinfo = {"groupes":("Machine tournante",)}, - fr = "Description d'une zone (comportant noeuds et elements, et en option masses ponctuelles et fissures)", - regles = (AU_MOINS_UN("ELEMENTS")), - MASSE = FACT(statut='f', - min=0, - max='**', - fr = "Description des masses ponctuelles", - #POSITION = SIMP(statut='o', - NOEUD = SIMP(statut='o', - typ='TXM', - defaut=None, - fr = "Definition de la position axiale de la masse (label du noeud de la ligne d'arbres en vis-a-vis)", - ), # end POSITION - TYPE_MASSE = SIMP(statut='o', - typ='TXM', - fr = "Renseignement du type de masse consideree", - into=('DISQUE','AILETTE','QUELCONQUE'), - ), # end TYPE_MASSE - DISQUE = BLOC(condition = "((TYPE_MASSE == 'DISQUE') )", - TYPE_SAISIE = SIMP(statut='o', - typ='TXM', - fr = "Type de saisie des parametres du DISQUE", - into = ('MECANIQUE','GEOMETRIQUE'), - defaut = 'MECANIQUE' - ), # end TYPE_SAISIE - PARAMETRES_MECANIQUE = BLOC(condition = "TYPE_SAISIE == 'MECANIQUE'", - PARAMETRES = FACT(statut = 'o', - fr = "Parametres mecaniques pour un DISQUE", - MASSE = SIMP(statut='o', - typ='R', - val_min=0, - fr = "Masse du DISQUE (kg)", - ), # end MASSE_DISQUE - INERTIEX = SIMP(statut='o', - typ='R', - fr = "Inertie du DISQUE en X (kg.m**2)", - ), # end INERTIEX - INERTIEY = SIMP(statut='o', - typ='R', - fr = "Inertie du DISQUE en Y (kg.m**2)", - ), # end INERTIEY - INERTIEZ = SIMP(statut='o', - typ='R', - fr = "Inertie du DISQUE en Z (axe de rotation de la ligne d'arbres)(kg.m**2)", - ), # end INERTIEZ - ) # end PARAMETRES_DISQUE_M - ), # end PARAMETRES_MECANIQUE - PARAMETRES_GEOMETRIQUE = BLOC(condition = "TYPE_SAISIE == 'GEOMETRIQUE'", - PARAMETRES = FACT(statut = 'o', - fr = "Parametres geometriques pour un DISQUE", - DIAMETRE_EXT = SIMP(statut='o', - typ='R', - val_min=0, - fr = "Diametre exterieur du DISQUE (m)", - ), # end MASSE_DISQUE - DIAMETRE_INT = SIMP(statut='o', - typ='R', - fr = "Diametre interieur du DISQUE (m). Verifier le diametre exterieur du rotor avant saisie", - ), # end INERTIEX - EPAISSEUR = SIMP(statut='o', - typ='R', - val_min=0, - fr = "Epaisseur (dans la direction axiale) du DISQUE (m)", - ), # end INERTIEY - MATERIAU = SIMP(statut='o', - typ=Materiau, - fr = "Materiau constituant le DISQUE (doit avoir ete defini via une entree MATERIAUX)", - ), # end INERTIEZ - ) # nd PARAMETRES_DISQUE_G - ), # end PARAMETRES_MECANIQUE - ), # end DISQUE - AILETTE = BLOC(condition = "((TYPE_MASSE == 'AILETTE') )", - TYPE_SAISIE = SIMP(statut='o', - typ='TXM', - fr = "Type de saisie des parametres de la rangee d'AILETTES", - into = ('MECANIQUE','GEOMETRIQUE'), - defaut = 'MECANIQUE' - ), # end TYPE_SAISIE - PARAMETRES_MECANIQUE = BLOC(condition = "TYPE_SAISIE == 'MECANIQUE'", - PARAMETRES = FACT(statut = 'o', - fr = "Parametres mecaniques de la rangee d'AILETTES", - MASSE = SIMP(statut='o', - typ='R', - val_min=0, - fr = "Masse de la rangee d'AILETTES (kg)", - ), # end MASSE_AILETTE - INERTIEX = SIMP(statut='o', - typ='R', - fr = "Inertie de la rangee d'AILETTES en X (kg.m**2)", - ), # end INERTIEX - INERTIEY = SIMP(statut='o', - typ='R', - fr = "Inertie de la rangee d'AILETTES en Y (kg.m**2)", - ), # end INERTIEY - INERTIEZ = SIMP(statut='o', - typ='R', - fr = "Inertie de la rangee d'AILETTES en Z (axe de rotation de la ligne d'arbres) (kg.m**2)", - ), # end INERTIEZ - ) # nd PARAMETRES_AILETTE_M - ), # end PARAMETRES_MECANIQUE - PARAMETRES_GEOMETRIQUE = BLOC(condition = "TYPE_SAISIE == 'GEOMETRIQUE'", - PARAMETRES = FACT(statut = 'o', - fr = "Parametres geometriques d'une AILETTE", - MASSE_AILETTE = SIMP(statut='o', - typ='R', - val_min=0, - fr = "Masse d'une AILETTE (kg)", - ), # end MASSE_AILETTE - RAYON = SIMP(statut='o', - typ='R', - val_min=0, - fr = "Distance entre le pied de l'AILETTE et le centre de rotation (m). Verifier le diametre exterieur du rotor avant saisie", - ), # end RAYON - HAUTEUR = SIMP(statut='o', - typ='R', - val_min=0, - fr = "Distance entre les deux extremites de l'AILETTE (m)", - ), # end HAUTEUR - BASE = SIMP(statut='o', - typ='R', - val_min=0, - fr = "Largeur du pied de l'AILETTE (m)", - ), # end BASE - NOMBRE = SIMP(statut='o', - typ='I', - val_min=1, - fr = "Nombre d'AILETTES dans la rangee", - ), - ) # end PARAMETRES_DISQUE - ), # end PARAMETRES_MECANIQUE - ), # end AILETTE - QUELCONQUE = BLOC(condition = "((TYPE_MASSE == 'QUELCONQUE') )", - #TYPE_SAISIE = SIMP(statut='c',typ='TXM',defaut="MECANIQUE"), # cf 20120622 test : mot-clé caché - PARAMETRES = FACT(statut = 'o', - fr = "Parametres pour masse de type QUELCONQUE", - MASSE = SIMP(statut='o', - typ='R', - val_min=0, - fr = "Masse (m)", - ), # end MASSE - INERTIEX = SIMP(statut='o', - typ='R', - fr = "Inertie en X (kg.m**2)", - ), # end INERTIEX - INERTIEY = SIMP(statut='o', - typ='R', - fr = "Inertie en Y (kg.m**2)", - ), # end INERTIEY - INERTIEZ = SIMP(statut='o', - typ='R', - fr = "Inertie en Z (axe de rotation de la ligne d'arbres) (kg.m**2)", - ), # end INERTIEZ - ), # end PARAMETRES_QUELCONQUE - ), # end QUELCONQUE - ), # end MASSE - ESSAI=SIMP(typ = Tuple(2), - max = '**', - validators=VerifTypeTuple(('TXM','R')),), - - NOEUDS = FACT(fr = "Definition des noeuds de la zone (2 noeuds minimum)", - statut='o', - min=2, - max='**', - NOM = SIMP(statut='o', - typ='TXM', - fr="Label du noeud", - ), # end NOM - POSITION_AXIALE = SIMP(statut='o', - typ='R', - defaut=0.0, - val_min=0.0, - fr = "Position axiale du noeud (relative par rapport au debut de la zone (1er noeud a 0m)) (m)", - ), # end X - ), # end NOEUDS - ELEMENTS = FACT(fr = "Definition des elements poutre de la zone", - statut='o', - min=1, - max='**', - NOM = SIMP(statut='o', - typ='TXM', - fr="Label de l'element" - ), # end NOM - NOEUD_DEBUT = SIMP(statut='o', - typ='TXM', - fr= "Noeud de debut de l'element poutre (label d'un noeud)" - ), # end DEBUT - NOEUD_FIN = SIMP(statut='o', - typ='TXM', - fr= "Noeud de fin de l'element poutre (label d'un noeud)" - ), # end FIN - RAFFINEMENT = SIMP(fr = "Choix de raffiner l'element poutre", - statut='o', - typ='TXM', - into=('OUI','NON'), - defaut='NON' - ), # end RAFFINEMENT - PARAM_RAFFINEMENT = BLOC(fr = "Nombre de points supplementaires a ajouter pour le raffinement (nombre elements : 1 -> nb points + 1)", - condition = "((RAFFINEMENT == 'OUI') )", - NB_POINTS_SUPPL = SIMP(statut='o', - typ='I' - ), # end NB_POINTS_SUPPL - ), # end PARAM_RAFFINEMENT - MATERIAU = SIMP(statut='o', - typ=Materiau, - fr= "Materiau constituant l'element poutre (doit avoir ete defini via une entree MATERIAUX)" - ), # end MATERIAU - SECTION_MASSE = FACT(statut='o', - fr = "Section a partir de laquelle est determinee la masse de l'element poutre", - TYPE_SECTION = SIMP(statut='o', - fr = "Choix d'une section de dimensions constantes ou variables", - typ='TXM', - into=('CONSTANTE','VARIABLE'), - defaut='CONSTANTE', - ), # end TYPE_SECTION - DIAM_EXTERN_DEBUT = SIMP(statut='o', - typ='R', - fr = "Diametre exterieur en debut d'element poutre (m)", - ), # end DIAM_EXTERN_DEBUT - DIAM_INTERN_DEBUT = SIMP(statut='o', - typ='R', - fr = "Diametre interieur en debut d'element poutre (m) (different de 0 si element creux)", - ), # end DIAM_INTERN_DEBUT - PARAMETRE_SECT_VAR = BLOC(condition = "((TYPE_SECTION == 'VARIABLE') )", - fr = "Renseignement des dimensions de fin d'element (variation lineaire entre le debut et la fin)", - DIAM_EXTERN_SORTIE = SIMP(statut='o', - typ='R', - fr = "Diametre exterieur en fin d'element (m)", - ), # end DIAM_EXTERN_SORTIE - DIAM_INTERN_SORTIE = SIMP(statut='o', - typ='R', - fr = "Diametre interieur en fin d'element (m)", - ), # DIAM_INTERN_SORTIE - ), - ), # end SECTION_MASSE - SECTION_RIGIDITE = FACT(statut='f', - fr = "Section a partir de laquelle est determinee la rigidite de l'element poutre", - TYPE_SECTION = SIMP(statut='o', - fr = "Choix d'une section de dimensions constantes ou variables", - typ='TXM', - into=('CONSTANTE','VARIABLE'), - defaut='CONSTANTE', - ), # end TYPE_SECTION - DIAM_EXTERN_DEBUT = SIMP(statut='o', - typ='R', - fr = "Diametre exterieur en debut d'element poutre (m)", - ), # end DIAM_EXTERN_DEBUT - DIAM_INTERN_DEBUT = SIMP(statut='o', - typ='R', - fr = "Diametre interieur en debut d'element poutre (m) (different de 0 si element creux)", - ), # end DIAM_INTERN_DEBUT - PARAMETRE_SECT_VAR = BLOC(condition = "((TYPE_SECTION == 'VARIABLE') )", - fr = "Renseignement des dimensions de fin d'element (variation lineaire entre le debut et la fin)", - DIAM_EXTERN_SORTIE = SIMP(statut='o', - typ='R', - fr = "Diametre exterieur en fin d'element (m)", - ), # end DIAM_EXTERN_SORTIE - DIAM_INTERN_SORTIE = SIMP(statut='o', - typ='R', - fr = "Diametre interieur en fin d'element (m)", - ), # end DIAM_INTERN_SORTIE - ), # end PARAMETRE_SECT_VAR - ), # end SECTION_RIGIDITE - ), # end ELEMENTS - FISSURE = FACT(statut='f', - fr="Description d'une fissure sur un noeud de l'arbre (licite uniquement si les elements poutres a gauche et a droite du noeud ont des sections masse et rigidite constantes)", - MATERIAU = SIMP(statut='o', - typ=Materiau, - fr="Materiau a la position de la fissure (doit avoir ete defini via une entree MATERIAUX)" - ), # end MATERIAU - NOEUD_FISSURE = SIMP(statut='o', - typ='TXM', - fr="Label du noeud ou est positionnee la fissure", - ), # end POSITION_FISSURE - ORIENTATION_FISSURE = SIMP(statut='o', - typ='R', - fr="Angle initial du fond de fissure par rapport à sa définition dans la loi de comportement de fissure (0. par defaut)(degres)", - ), # end ORIENTATION_FISSURE - FICHIER_RAIDEUR = SIMP(statut='o', - typ=('Fichier','Fichier loi de raideur (*.*)'), - fr="Fichier contenant la loi de comportement en raideur de la fissure", - ), # end FICHIER_RAIDEUR - DIAMETRE = SIMP(statut='o', - typ='R', - fr="Diametre du rotor a l'emplacement de la fissure (m)", - ), # end DIAMETRE - ), # end FISSURE - - ) # end ZONE - -############################# PALIERS ######################################## -PALIER = MACRO(nom = 'PALIER', - op = None, - sd_prod = Palier, - reentrant = 'n', - UIinfo = {"groupes":("Machine tournante",)}, - fr = "Description d'un palier radial", - POSITION = SIMP(statut='o', - typ='R', - defaut=0.0, - fr = "Position axiale (absolue) du palier radial (m)", - ), # end POSITION - TYPE_PALIER = SIMP(statut='o', - fr = "Type de palier radial", - typ='TXM', - into=('PALIER LINEAIRE','PALIER NON-LINEAIRE','LAME FLUIDE'), - ), # end TYPE_PALIER - PALIER_LINEAIRE = BLOC(condition = "((TYPE_PALIER == 'PALIER LINEAIRE') )", - fr = "Description d'un palier radial lineaire", - TYPE_SAISIE = SIMP(statut='o', - fr = "Mode de description des caracteristiques du palier radial lineaire", - typ='TXM', - into=('MANUELLE', 'CATALOGUE'), - ), # end TYPE_SAISIE - MANUELLE = BLOC(condition = "((TYPE_SAISIE == 'MANUELLE') )", - fr = "Saisie manuelle des caracteristiques du palier radial lineaire", - CARAC_PALIER = FACT(statut = 'o',max='**',fr = "Caracteristiques du palier par vitesse de rotation de la ligne d'arbres", - VITESSE_ROTATION = SIMP(statut='o', - typ='R', - fr= "Vitesse de rotation (tr/min)", - ), # end VITESSE_ROTATION - SYME = SIMP(statut = 'o', - typ = 'TXM', - max = 1, - fr = "Symetrie des matrices du palier radial lineaire (KXY=KYX et AXY=AYX)", - into = ('OUI','NON'), - defaut = 'OUI', - ), # end SYME - RIGIDITE_NS = BLOC(condition="(SYME=='NON')", - RIGIDITE=FACT(statut='o',fr="Renseignement des caracteristiques non-symetriques de rigidite du palier radial lineaire", - KXX = SIMP(statut = 'o', - typ = 'R', - max = 1, - fr = "Valeur de KXX dans la matrice de rigidite (N/m)", - ),# end KXX - KXY = SIMP(statut = 'o', - typ = 'R', - max = 1, - fr = "Valeur de KXY dans la matrice de rigidite (N/m)", - ),# end KXY - KYX = SIMP(statut = 'o', - typ = 'R', - max = 1, - fr = "Valeur de KYX dans la matrice de rigidite (N/m)", - ),# end KYX - KYY = SIMP(statut = 'o', - typ = 'R', - max = 1, - fr = "Valeur de KYY dans la matrice de rigidite (N/m)", - ),# end KYY - ), # end RIGIDITE - ), # end RIGIDITE_S - RIGIDITE_S = BLOC(condition="(SYME=='OUI')", - RIGIDITE=FACT(statut='o',fr="Renseignement des caracteristiques symetriques de rigidite du palier radial lineaire", - KXX = SIMP(statut = 'o', - typ = 'R', - max = 1, - fr = "Valeur de KXX dans la matrice de rigidite (N/m)", - ),# end KXX - KXY = SIMP(statut = 'o', - typ = 'R', - max = 1, - fr = "Valeur de KXY dans la matrice de rigidite (N/m)", - ),# end KXY - KYY = SIMP(statut = 'o', - typ = 'R', - max = 1, - fr = "Valeur de KYY dans la matrice de rigidite (N/m)", - ),# end KYY - ), # end RIGIDITE - ), # end RIGIDITE_NS - AMORTISSEMENT_NS = BLOC(condition="(SYME=='NON')", - AMORTISSEMENT=FACT(statut='o',fr="Renseignement des caracteristiques non-symetriques d'amortissement du palier radial lineaire", - AXX = SIMP(statut = 'o', - typ = 'R', - max = 1, - fr = "Valeur de AXX dans la matrice d'amortissement (N.s/m)", - ),# end AXX - AXY = SIMP(statut = 'o', - typ = 'R', - max = 1, - fr = "Valeur de AXY dans la matrice d'amortissement (N.s/m)", - ),# end AXY - AYX = SIMP(statut = 'o', - typ = 'R', - max = 1, - fr = "Valeur de AYX dans la matrice d'amortissement (N.s/m)", - ),# end AYX - AYY = SIMP(statut = 'o', - typ = 'R', - max = 1, - fr = "Valeur de AYY dans la matrice d'amortissement (N.s/m)", - ),# end AYY - ), # end AMORTISSEMENT - ), # end AMORTISSEMENT_NS - AMORTISSEMENT_S = BLOC(condition="(SYME=='OUI')", - AMORTISSEMENT=FACT(statut='o',fr="Renseignement des caracteristiques symetriques d'amortissement du palier radial lineaire", - AXX = SIMP(statut = 'o', - typ = 'R', - max = 1, - fr = "Valeur de AXX dans la matrice d'amortissement (N.s/m)", - ),# end AXX - AXY = SIMP(statut = 'o', - typ = 'R', - max = 1, - fr = "Valeur de AXY dans la matrice d'amortissement (N.s/m)", - ),# end AXY - AYY = SIMP(statut = 'o', - typ = 'R', - max = 1, - fr = "Valeur de AYY dans la matrice d'amortissement (N.s/m)", - ),# end AYY - ), # end AMORTISSEMENT - ), # end AMORTISSEMENT_S - ), # end CARAC_PALIER - ),# end MANUELLE - CATALOGUE = BLOC(condition = "((TYPE_SAISIE == 'CATALOGUE') )", - fr = "Renseignement des fichiers contenant les caracteristiques du palier radial lineaire", - CATALOGUE_AMORTISSEMENT = SIMP(statut='o', - min=1, - max=1, - typ='Fichier', - fr="Fichier decrivant les caracteristiques d'amortissement (N.s/m) du palier radial lineaire (format decrit dans le Manuel Utilisateur)", - ), # end CATALOGUE_AMORTISSEMENT - CATALOGUE_RIGIDITE = SIMP(statut='o', - min=1, - max=1, - typ='Fichier', - fr="Fichier decrivant les caracteristiques de rigidite (N/m) du palier radial lineaire (format decrit dans le Manuel Utilisateur)", - ), # end CATALOGUE_RIGIDITE - ), # end CATALOGUE - ), # end PALIER_LINEAIRE - LAME_FLUIDE = BLOC(condition = "((TYPE_PALIER == 'LAME FLUIDE') )", - fr = "Description d'une lame fluide", - TYPE_SAISIE = SIMP(statut='o', - fr = "Mode de description des caracteristiques de la lame fluide", - typ='TXM', - defaut = 'MANUELLE', - #into=('MANUELLE', 'CATALOGUE'), #Fonctionnalite catalogue non encore implementee - into=('MANUELLE',), - ), # end TYPE_SAISIE - MANUELLE = BLOC(condition = "((TYPE_SAISIE == 'MANUELLE') )", - fr = "Saisie manuelle des caracteristiques de la lame fluide", - CARAC_PALIER = FACT(statut = 'o',max='**',fr = "Caracteristiques de la lame fluide par vitesse de rotation de la ligne d'arbres", - SYME = SIMP(statut = 'o', - typ = 'TXM', - max = 1, - fr = "Symetrie des matrices de la lame fluide (KXY=KYX et AXY=AYX)", - into = ('OUI','NON'), - defaut = 'OUI', - ), # end SYME - RIGIDITE_NS = BLOC(condition="(SYME=='NON')", - RIGIDITE=FACT(statut='o',fr="Renseignement des caracteristiques non-symetriques de rigidite de la lame fluide", - KXX = SIMP(statut = 'o', - typ = 'R', - max = 1, - fr = "Valeur de KXX dans la matrice de rigidite (N/m)", - ),# end KXX - KXY = SIMP(statut = 'o', - typ = 'R', - max = 1, - fr = "Valeur de KXY dans la matrice de rigidite (N/m)", - ),# end KXY - KYX = SIMP(statut = 'o', - typ = 'R', - max = 1, - fr = "Valeur de KYX dans la matrice de rigidite (N/m)", - ),# end KYX - KYY = SIMP(statut = 'o', - typ = 'R', - max = 1, - fr = "Valeur de KYY dans la matrice de rigidite (N/m)", - ),# end KYY - ), # end RIGIDITE_NS - RIGIDITE_S = BLOC(condition="(SYME=='OUI')", - RIGIDITE=FACT(statut='o',fr="Renseignement des caracteristiques symetriques de rigidite de la lame fluide", - KXX = SIMP(statut = 'o', - typ = 'R', - max = 1, - fr = "Valeur de KXX dans la matrice de rigidite (N/m)", - ),# end KXX - KXY = SIMP(statut = 'o', - typ = 'R', - max = 1, - fr = "Valeur de KXY dans la matrice de rigidite (N/m)", - ),# end KXY - KYY = SIMP(statut = 'o', - typ = 'R', - max = 1, - fr = "Valeur de KYY dans la matrice de rigidite (N/m)", - ),# end KYY - ), # end RIGIDITE - ), # end RIGIDITE_S - AMORTISSEMENT_NS = BLOC(condition="(SYME=='NON')", - AMORTISSEMENT=FACT(statut='o',fr="Renseignement des caracteristiques non-symetriques d'amortissement de la lame fluide", - AXX = SIMP(statut = 'o', - typ = 'R', - max = 1, - fr = "Valeur de AXX dans la matrice d'amortissement (N.s/m)", - ),# end AXX - AXY = SIMP(statut = 'o', - typ = 'R', - max = 1, - fr = "Valeur de AXY dans la matrice d'amortissement (N.s/m)", - ),# end AXY - AYX = SIMP(statut = 'o', - typ = 'R', - max = 1, - fr = "Valeur de AYX dans la matrice d'amortissement (N.s/m)", - ),# end AYX - AYY = SIMP(statut = 'o', - typ = 'R', - max = 1, - fr = "Valeur de AYY dans la matrice d'amortissement (N.s/m)", - ),# end AYY - ), # end AMORTISSEMENT - ), # end AMORTISSEMENT - ), # end AMORTISSEMENT_NS - AMORTISSEMENT_S = BLOC(condition="(SYME=='OUI')", - AMORTISSEMENT=FACT(statut='o',fr="Renseignement des caracteristiques symetriques d'amortissement de la lame fluide", - AXX = SIMP(statut = 'o', - typ = 'R', - max = 1, - fr = "Valeur de AXX dans la matrice d'amortissement (N.s/m)", - ),# end AXX - AXY = SIMP(statut = 'o', - typ = 'R', - max = 1, - fr = "Valeur de AXY dans la matrice d'amortissement (N.s/m)", - ),# end AXY - AYY = SIMP(statut = 'o', - typ = 'R', - max = 1, - fr = "Valeur de AYY dans la matrice d'amortissement (N.s/m)", - ),# end AYY - ), # end AMORTISSEMENT - ), # end AMORTISSEMENT_S - MASSE_NS = BLOC(condition="(SYME=='NON')", - MASSE=FACT(statut='o',fr="Renseignement des caracteristiques non symetriques de masse de la lame fluide", - MXX = SIMP(statut = 'o', - typ = 'R', - max = 1, - fr = "Valeur de MXX dans la matrice de masse (kg)", - ),# end MXX - MXY = SIMP(statut = 'o', - typ = 'R', - max = 1, - fr = "Valeur de MXY dans la matrice de masse (kg)", - ),# end MXY - MYX = SIMP(statut = 'o', - typ = 'R', - max = 1, - fr = "Valeur de MYX dans la matrice de masse (kg)", - ),# end MYX - MYY = SIMP(statut = 'o', - typ = 'R', - max = 1, - fr = "Valeur de MYY dans la matrice de masse (kg)", - ),# end MYY - ), # end MASSE - ), # end MASSE_NS - MASSE_S = BLOC(condition="(SYME=='OUI')", - MASSE=FACT(statut='o',fr="Renseignement des caracteristiques symetriques de masse de la lame fluide", - MXX = SIMP(statut = 'o', - typ = 'R', - max = 1, - fr = "Valeur de MXX dans la matrice de masse (kg)", - ),# end MXX - MXY = SIMP(statut = 'o', - typ = 'R', - max = 1, - fr = "Valeur de MXY dans la matrice de masse (kg)", - ),# end MXY - MYY = SIMP(statut = 'o', - typ = 'R', - max = 1, - fr = "Valeur de MYY dans la matrice de masse (kg)", - ),# end MYY - ), # end MASSE - ), # end MASSE_S - VITESSE_ROTATION = SIMP(statut='o', - typ='R', - fr= "Vitesse de rotation (tr/min)", - ), # end VITESSE_ROTATION - ), # end CARAC_PALIER - ), # end MANUELLE - #Fonctionnalite non encore implementee - CATALOGUE = BLOC(condition = "((TYPE_SAISIE == 'CATALOGUE') )", - PALIERS_CATALOGUE = SIMP(statut='o', - min=1, - max=1, - typ='Fichier', - fr="Format du fichier : CSV.", - ), # end PALIERS_CATALOGUE - ), # end CATALOGUE - - ), # end LAME_FLUIDE - PALIER_NON_LINEAIRE = BLOC(condition = "((TYPE_PALIER == 'PALIER NON-LINEAIRE') )", - fr = "Description d'un palier non-lineaire (licite uniquement en cas d'analyse de type 'TRANSITOIRE ACCIDENTEL'", - TYPE = SIMP(statut='o', - typ='TXM', - into=('PAPANL','PAFINL','PAHYNL','PACONL'), - defaut=None, - fr="Type de palier non-lineaire parmi ceux proposes dans Edyos", - ), # end TYPE - REPERTOIRE_EDYOS = SIMP(statut='o', - typ=('Repertoire'), - defaut=None, - fr="Repertoire 'CDC' du palier non-lineaire utilise (les fichiers Geometrie et Donnees doivent exister dans les repertoires parents respectivement de niveau 2 et 1 de CDC)", - ), # end REPERTOIRE_EDYOS - ), # end PALIER_NON_LINEAIRE - ) # end PALIER - -PALIER_TORSION=MACRO(nom="PALIER_TORSION", - op=None, - sd_prod=PalTor, - reentrant='n', - UIinfo={"groupes":("Machine tournante",)}, - fr="Description d'un palier de torsion", - POSITION = SIMP(statut='o',typ='R',defaut=0.0,fr = "Position axiale (absolue) du palier de torsion (m)",), # end POSITION - TYPE_SAISIE = SIMP(statut='o',typ='TXM',into=('MANUELLE',),fr = "Mode de description des caracteristiques du palier de torsion",), # end TYPE_SAISIE - MANUELLE = BLOC(condition = "((TYPE_SAISIE == 'MANUELLE') )", - fr = "Saisie manuelle des caracteristiques du palier de torsion", - CARAC_PALIER = FACT(statut = 'o',max=1,fr = "Caracteristiques du palier par vitesse de rotation de l'arbre", - VITESSE_ROTATION = SIMP(statut='o',typ='R',min=1,max='**',fr= "Liste des vitesses de rotation (tr/min)",), # end VITESSE_ROTATION - KRZ = SIMP(statut = 'o',typ = 'R',min=1,max = '**',fr = "Liste des caracteristiques de rigidite (N/m) du palier de torsion en fonction de la vitesse de rotation",),# end KRZ - ARZ = SIMP(statut = 'o',typ = 'R',min=1,max = '**',fr = "Liste des caracteristiques d'amortissement (N.s/m) du palier de torsion en fonction de la vitesse de rotation",),# end ARZ - MRZ = SIMP(statut = 'f',typ = 'R',min=1,max = '**',fr = "Liste des caracteristiques de masse ajoutee (kg) du palier de torsion en fonction de la vitesse de rotation",),# end MRZ - ),#end CARAC_PALIER - ), # end MANUELLE - #Fonctionnalite pas encore implementee - CATALOGUE = BLOC(condition = "((TYPE_SAISIE == 'CATALOGUE') )", - fr = "Renseignement des fichiers contenant les caracteristiques du palier de torsion", - CATA_PALIER = SIMP(statut='o',min=1,max=1,typ='Fichier',fr="Format du fichier : CSV.",), # end CATA_PALIER - ), # end CATALOGUE - )#end PALIER TORSION - -BUTEE=MACRO(nom="BUTEE", - op=None, - sd_prod=Butee, - reentrant='n', - UIinfo={"groupes":("Machine tournante",)}, - fr="Description d'une butee", - POSITION = SIMP(statut='o',typ='R',defaut=0.0,fr = "Position axiale (absolue) de la butee (m)",), # end POSITION - TYPE_BUTEE = SIMP(statut='o',typ='TXM',into=('BUTEE LINEAIRE',),fr = "Type de butee",), # end TYPE_BUTEE, BUTEE NON LINEAIRE reintegrable - BUTEE_LINEAIRE=BLOC(condition="TYPE_BUTEE=='BUTEE LINEAIRE'", - fr = "Description d'une butee lineaire", - TYPE_SAISIE = SIMP(statut='o',typ='TXM',into=('MANUELLE',),fr = "Mode de description des caracteristiques de la butee lineaire",), # end TYPE_SAISIE; 'CATALOGUE' reintegrable - MANUELLE=BLOC(condition="TYPE_SAISIE=='MANUELLE'", - fr = "Saisie manuelle des caracteristiques de la butee lineaire", - CARAC_BUTEE=FACT(statut='o',max=1,fr="Caracteristiques de la butee en fonction de la vitesse de rotation", - VITESSE_ROTATION=SIMP(statut='o',typ='R',min=1,max='**',fr="Liste des vitesses de rotation (tr/min)",), - SYMETRIQUE=SIMP(statut='o',typ='TXM',min=1,max=1,into=("OUI","NON"),defaut="OUI",fr="Symetrie des matrices de la butee (KRXRY=KRYRX , ARXRY=ARYRX et MRXRY=MRYRX)",), - - RIGIDITE_NS = BLOC(condition="(SYMETRIQUE=='NON')", - RIGIDITE=FACT(statut='o',max=1,fr="Caracteristiques non-symetriques de rigidite de la butee lineaire en fonction de la vitesse de rotation", - KZZ=SIMP(statut='o',typ='R',min=1,max='**',fr="Rigidite axiale (N/m) de la butee lineaire en fonction de la vitesse de rotation"), - KRXRX=SIMP(statut='f',typ='R',min=1,max='**',fr="Rigidite directe de rotation autour de l'axe X (N/m) de la butee lineaire en fonction de la vitesse de rotation"), - KRXRY=SIMP(statut='f',typ='R',min=1,max='**',fr="Rigidite croisee de rotation autour de l'axe X (N/m) de la butee lineaire en fonction de la vitesse de rotation"), - KRYRX=SIMP(statut='f',typ='R',min=1,max='**',fr="Rigidite croisee de rotation autour de l'axe Y (N/m) de la butee lineaire en fonction de la vitesse de rotation"), - KRYRY=SIMP(statut='f',typ='R',min=1,max='**',fr="Rigidite directe de rotation autour de l'axe Y (N/m) de la butee lineaire en fonction de la vitesse de rotation"), - ), #END RIGIDITE - ),#END RIGIDITE_NS - RIGIDITE_S = BLOC(condition="(SYMETRIQUE=='OUI')", - RIGIDITE=FACT(statut='o',max=1,fr="Caracteristiques symetriques de rigidite de la butee lineaire en fonction de la vitesse de rotation", - KZZ=SIMP(statut='o',typ='R',min=1,max='**',fr="Rigidite axiale (N/m) de la butee lineaire en fonction de la vitesse de rotation"), - KRXRX=SIMP(statut='f',typ='R',min=1,max='**',fr="Rigidite directe de rotation autour de l'axe X (N/m) de la butee lineaire en fonction de la vitesse de rotation"), - KRXRY=SIMP(statut='f',typ='R',min=1,max='**',fr="Rigidite croisee de rotation autour de l'axe X (N/m) de la butee lineaire en fonction de la vitesse de rotation"), - KRYRY=SIMP(statut='f',typ='R',min=1,max='**',fr="Rigidite directe de rotation autour de l'axe Y (N/m) de la butee lineaire en fonction de la vitesse de rotation"), - ), #END RIGIDITE - ),#END RIGIDITE_S - - AMORTISSEMENT_NS = BLOC(condition="(SYMETRIQUE=='NON')", - AMORTISSEMENT=FACT(statut='o',max=1,fr="Caracteristiques non-symetriques d'amortissement de la butee lineaire en fonction de la vitesse de rotation", - AZZ=SIMP(statut='o',typ='R',min=1,max='**',fr="Amortissement axial (N.s/m) de la butee lineaire en fonction de la vitesse de rotation"), - ARXRX=SIMP(statut='f',typ='R',min=1,max='**',fr="Amortissement direct de rotation autour de l'axe X (N.s/m) de la butee lineaire en fonction de la vitesse de rotation"), - ARXRY=SIMP(statut='f',typ='R',min=1,max='**',fr="Amortissement croise de rotation autour de l'axe X (N.s/m) de la butee lineaire en fonction de la vitesse de rotation"), - ARYRX=SIMP(statut='f',typ='R',min=1,max='**',fr="Amortissement croise de rotation autour de l'axe Y (N.s/m) de la butee lineaire en fonction de la vitesse de rotation"), - ARYRY=SIMP(statut='f',typ='R',min=1,max='**',fr="Amortissement croise de rotation autour de l'axe Y (N.s/m) de la butee lineaire en fonction de la vitesse de rotation"), - ),#END AMORTISSEMENT - ),#END AMORTISSEMENT_NS - AMORTISSEMENT_S = BLOC(condition="(SYMETRIQUE=='OUI')", - AMORTISSEMENT=FACT(statut='o',max=1,fr="Caracteristiques symetriques d'amortissement de la butee lineaire en fonction de la vitesse de rotation", - AZZ=SIMP(statut='o',typ='R',min=1,max='**',fr="Amortissement axial (N.s/m) de la butee lineaire en fonction de la vitesse de rotation"), - ARXRX=SIMP(statut='f',typ='R',min=1,max='**',fr="Amortissement direct de rotation autour de l'axe X (N.s/m) de la butee lineaire en fonction de la vitesse de rotation"), - ARXRY=SIMP(statut='f',typ='R',min=1,max='**',fr="Amortissement croise de rotation autour de l'axe X (N.s/m) de la butee lineaire en fonction de la vitesse de rotation"), - ARYRY=SIMP(statut='f',typ='R',min=1,max='**',fr="Amortissement croise de rotation autour de l'axe Y (N.s/m) de la butee lineaire en fonction de la vitesse de rotation"), - ),#END AMORTISSEMENT - ),#END AMORTISSEMENT_S - - INERTIE_NS = BLOC(condition="(SYMETRIQUE=='NON')", - INERTIE=FACT(statut='f',max=1,fr="Caracteristiques non-symetriques de masse ajoutee de la butee lineaire en fonction de la vitesse de rotation", - MZZ=SIMP(statut='f',typ='R',min=1,max='**',fr="Masse ajoutee axiale (kg) de la butee lineaire en fonction de la vitesse de rotation"), - MRXRX=SIMP(statut='f',typ='R',min=1,max='**',fr="Masse ajoutee directe de rotation autour de l'axe X (kg) de la butee lineaire en fonction de la vitesse de rotation"), - MRXRY=SIMP(statut='f',typ='R',min=1,max='**',fr="Masse ajoutee croisee de rotation autour de l'axe X (kg) de la butee lineaire en fonction de la vitesse de rotation"), - MRYRX=SIMP(statut='f',typ='R',min=1,max='**',fr="Masse ajoutee croisee de rotation autour de l'axe Y (kg) de la butee lineaire en fonction de la vitesse de rotation"), - MRYRY=SIMP(statut='f',typ='R',min=1,max='**',fr="Masse ajoutee croisee de rotation autour de l'axe Y (kg) de la butee lineaire en fonction de la vitesse de rotation"), - ),#END INERTIE - ),#END INERTIE_NS - INERTIE_S = BLOC(condition="(SYMETRIQUE=='OUI')", - INERTIE=FACT(statut='f',max=1,fr="Caracteristiques symetriques de masse ajoutee de la butee lineaire en fonction de la vitesse de rotation", - MZZ=SIMP(statut='f',typ='R',min=1,max='**',fr="Masse ajoutee axiale (kg) de la butee lineaire en fonction de la vitesse de rotation"), - MRXRX=SIMP(statut='f',typ='R',min=1,max='**',fr="Masse ajoutee directe de rotation autour de l'axe X (kg) de la butee lineaire en fonction de la vitesse de rotation"), - MRXRY=SIMP(statut='f',typ='R',min=1,max='**',fr="Masse ajoutee croisee de rotation autour de l'axe X (kg) de la butee lineaire en fonction de la vitesse de rotation"), - MRYRY=SIMP(statut='f',typ='R',min=1,max='**',fr="Masse ajoutee croisee de rotation autour de l'axe Y (kg) de la butee lineaire en fonction de la vitesse de rotation"), - ),#END INERTIE - ),#END INERTIE_S - - ),#END CARA_BUTEE - ),#end MANUELLE - CATALOGUE=BLOC(condition="TYPE_SAISIE=='CATALOGUE'", - fr = "Renseignement des fichiers contenant les caracteristiques de la butee lineaire", - ),#END CATALOGUE - ),#END BUTEE LINEAIRE - - BUTEE_NON_LINEAIRE=BLOC(condition="TYPE_BUTEE=='BUTEE NON LINEAIRE'", - fr = "Description d'une butee non-lineaire", - ),#END BUTEE NON LINEAIRE - - );#END BUTEE - -############################# SUPPORT ######################################## -SUPPORT = MACRO(nom = "SUPPORT", - op = None, - sd_prod = Support, - reentrant = 'n', - UIinfo = {"groupes":("Machine tournante",)}, - fr = "Description d'un support ", - TYPE_SUPPORT = SIMP(statut='o', - fr = "Type de support", - typ='TXM', - defaut="RIGIDE", - into=("RIGIDE", "SIMPLIFIE", "GENERALISE", ), - ), # end TYPE_SUPPORT - SIMPLIFIE = BLOC(condition = "((TYPE_SUPPORT == 'SIMPLIFIE') )", - fr = "Description d'un support simplifie", - RIGIDITE = FACT(statut='o', fr = "Renseignement des caracteristiques de rigidite du support simplifie", - KXX = SIMP(statut = 'o', - typ = 'R', - max = 1, - fr = "Valeur de KXX dans la matrice de rigidite (N/m)", - ),# end KXX - KXY = SIMP(statut = 'o', - typ = 'R', - max = 1, - fr = "Valeur de KXY dans la matrice de rigidite (N/m)", - ),# end KXY - KYX = SIMP(statut = 'o', - typ = 'R', - max = 1, - fr = "Valeur de KYX dans la matrice de rigidite (N/m)", - ),# end KYX - KYY = SIMP(statut = 'o', - typ = 'R', - max = 1, - fr = "Valeur de KYY dans la matrice de rigidite (N/m)", - ),# end KYY - ), # end RIGIDITE - AMORTISSEMENT = FACT(statut='o', fr= "Renseignement des caracteristiques d'amortissement du support simplifie", - AXX = SIMP(statut = 'o', - typ = 'R', - max = 1, - fr = "Valeur de AXX dans la matrice d'amortissement (N.s/m)", - ),# end AXX - AXY = SIMP(statut = 'o', - typ = 'R', - max = 1, - fr = "Valeur de AXY dans la matrice d'amortissement (N.s/m)", - ),# end AXY - AYX = SIMP(statut = 'o', - typ = 'R', - max = 1, - fr = "Valeur de AYX dans la matrice d'amortissement (N.s/m)", - ),# end AYX - AYY = SIMP(statut = 'o', - typ = 'R', - max = 1, - fr = "Valeur de AYY dans la matrice d'amortissement (N.s/m)", - ),# end AYY - ), # end AMORTISSEMENT - MASSE = FACT(statut='o', fr= "Renseignement des caracteristiques de masse du support simplifie", - MXX = SIMP(statut = 'o', - typ = 'R', - max = 1, - fr = "Valeur de MXX dans la matrice de masse (kg)", - ),# end MXX - MXY = SIMP(statut = 'o', - typ = 'R', - max = 1, - fr = "Valeur de MXY dans la matrice de masse (kg)", - ),# end MXY - MYX = SIMP(statut = 'o', - typ = 'R', - max = 1, - fr = "Valeur de MYX dans la matrice de masse (kg)", - ),# end MYX - MYY = SIMP(statut = 'o', - typ = 'R', - max = 1, - fr = "Valeur de MYY dans la matrice de masse (kg)", - ),# end MYY - ), # end MASSE - ), # end SIMPLIFIE - GENERALISE = BLOC(condition = "((TYPE_SUPPORT == 'GENERALISE') )", - fr = "Description d'un support generalise", - ANGL_NAUT = SIMP(statut='f', - fr="Rotation du modele du support generalise a effectuer pour coincider avec le repere de la ligne d'arbres (rotation autour de X, puis Y, puis Z (degres))", - typ='R', - min=3,max=3, - ), # end ANGL_NAUT - TRANS = SIMP(statut='f', - fr="Translation du modele du support generalise a effectuer pour que ses noeuds de connexion soient confondus avec ceux de la ligne d'arbres (translation suivant X, Y et Z (m))", - typ='R', - min=3,max=3, - ), # end TRANS - MAIL_TDG = SIMP(statut='o', - fr="Fichier du maillage du support generalise", - typ=("Fichier","Fichier maillage TdG (*.*)"), - min=1,max=1, - ), # end MAIL_TDG - COMM_TDG = SIMP(statut='o', - fr="Fichier de la mise en donnees du support generalise", - typ=("Fichier","Fichier commande TdG (*.*)"), - min=1,max=1, - ), # end COMM_TDG - NOM_MACRO_ELEMENT_DYNAMIQUE = SIMP(statut='o', - fr="Nom du macro element dynamique cree pour le support generalise", - typ='TXM', - min=1,max=1, - ), # end NOM_MACRO_ELEMENT_DYNAMIQUE - NOM_INTERFACE = SIMP(statut='o', - fr="Nom de l'interface cree pour le support generalise", - typ='TXM', - min=1,max=1, - ), # end NOM_INTERFACE - NOM_GROUP_MA_MASSIF = SIMP(statut='o', - fr="Nom du groupe de maille representant le support generalise", - typ='TXM', - min=1,max=1, - ), # end NOM_GROUP_MA_MASSIF - REDUIT = SIMP(statut='f', - fr="Introduction du mot-cle REDUIT pour le cas ou le nombre d'interfaces n'est pas identique entre le support generalise et la ligne d'arbres", - typ='TXM', - into=("OUI",), - defaut="OUI", - ), # end REDUIT - ), # end GENERALISE - ) # end SUPPORT - -############################# LIGNE_ARBRE ######################################## -LIGNE_ARBRE = MACRO(nom = 'LIGNE_ARBRE', - op = None, - sd_prod = LigneArbre, - reentrant = 'n', - UIinfo = {"groupes":("Machine tournante",)}, - fr = "Description de la ligne d'arbres", - DIRECTION = SIMP(statut='o', - fr = "Direction de la ligne d'arbres consideree (choisir une des entrees DIRECTION creees)", - typ=Direction, - min=1, - max=1, - ), # end DIRECTION - ZONES = SIMP(statut='o', - fr = "Zone(s) composant la ligne d'arbres (choisir, en faisant attention a l'ordre, parmi les entrees ZONE creees)", - typ=Zone, - min=1, - max='**', - ), # end ZONES - PALIERS = SIMP(statut='o', - fr = "Paliers supportant la ligne d'arbres (choisir, en faisant attention a l'ordre, parmi les entrees PALIER creees)", - typ=Palier, - min=2, - max='**', - ), # end PALIERS - - BUTEES = SIMP(statut='f', - fr = "Butee(s) guidant axialement la ligne d'arbres (choisir, en faisant attention a l'ordre, parmi les entrees BUTEES creees)", - typ=Butee, - max='**' - ),#end BUTEE - PALIERS_TORSION=SIMP(statut='f', - fr = "Palier(s) de torsion de la ligne d'arbres (choisir, en faisant attention a l'ordre, parmi les entrees PALIERS_TORSION creees)", - typ=PalTor, - max='**' - ),#end PALIERS_TORSION - SUPPORTS = SIMP(statut='o', - fr = "Supports sous les paliers (choisir, en faisant attention a l'ordre, parmi les entrees SUPPORTS creees)", - typ=Support, - min=1, - max='**', - ), # end SUPPORTS - ) # end LIGNE_ARBRE - diff --git a/MT/MT_Cata_V2017.py b/MT/MT_Cata_V2017.py deleted file mode 100755 index 26d53b97..00000000 --- a/MT/MT_Cata_V2017.py +++ /dev/null @@ -1,1048 +0,0 @@ -## -*- coding: utf-8 -*- -# -## -------------------------------------------------- -## debut entete -## -------------------------------------------------- -# -# 20120510 : suppression de la valeur par defaut de MATERIAU->PARAMETRES_MAT->NU -# changement du nom MATERIAU->PARAMETRES_MAT->MASS_VOL en MATERIAU->PARAMETRES_MAT->RHO -# -# 20120619 : changement ordre d'affichage des macros -> ordre de création -# 20120725 : modification definition (matrices A,K,M) palier et support -# 20130411 : ajout elements dans palier generalise (mail tdg + comm tdg) -# -# todo : supprimer les noeuds -> definir les elements par leur longueur -# -# -# -# -# - - - - - -from Accas import * -# - -import types -class Tuple: - def __init__(self,ntuple): - self.ntuple=ntuple - - def __convert__(self,valeur): - if type(valeur) == types.StringType: - return None - if len(valeur) != self.ntuple: - return None - return valeur - - def info(self): - return "Tuple de %s elements" % self.ntuple - - __repr__=info - __str__=info - - -#CONTEXT.debug = 1 -VERSION_CATALOGUE="2017.0.0"; -JdC = JDC_CATA(code = 'MT', - execmodul = None, - regles = (AU_MOINS_UN ( 'LIGNE_ARBRE',), - AU_PLUS_UN ( 'LIGNE_ARBRE',)), - ) # Fin JDC_CATA - -class Direction(ASSD): pass -class Materiau(ASSD): pass -#class Masse(ASSD): pass -class Zone(ASSD): pass -class Palier(ASSD): pass -#class Masse(ASSD): pass -#class ConditionsAuxLimites(ASSD): pass -class LigneArbre(ASSD): pass -class Support(ASSD): pass -class Butee(ASSD): pass -class PalTor(ASSD):pass -#class Noeud(ASSD): pass - -## def macro_noeuds(self, NOEUD, **args): -## """ -## """ -## if NOEUD is not None: -## self.typeSDProd(NOEUD, Noeud) -## pass -## else: -## raise AsException("Impossible de typer les concepts resultats") - -## return Noeuds - -############################# MATERIAUX ######################################## -# @todo -# introduction manuelle => dans ce cas l'utilisateur definit le -# materiau comme ci-dessous -# recuperation depuis une bibliothÚque de materiau => sera specife -# plus tard -MATERIAUX = MACRO(nom = 'MATERIAUX', - op = None, - sd_prod = Materiau, - reentrant = 'n', - UIinfo = {"groupes": ("Machine tournante",)}, - fr = "Renseignement des caracteristiques des materiaux", - TYPE_INTRO = SIMP(statut='o', - fr = "Mode de description des caracteristiques des materiaux", - typ='TXM', - into=('MANUELLE','FICHIER'), - min=1, - max=1, - defaut='MANUELLE', - ), # end TYPE_INTRO - PARAMETRES_MAT = BLOC(condition = "((TYPE_INTRO == 'MANUELLE') )", - #MASS_VOL = SIMP(statut='o', typ='R', min=1, max=1, fr='masse volumique'), - fr = "Saisie manuelle des caracteristiques du materiau", - RHO = SIMP(statut='o', - typ='R', - min=1, - max=1, - fr='Masse volumique (kg/m**3)', - ), # end RHO - E = SIMP(statut='o', - typ='R', - min=1, - max=1, - fr="Module d'Young (Pa)", - ), # end E - NU = SIMP(statut='o', - typ='R', - min=1, - max=1, - val_min=-1.0, - val_max=0.5, - fr='Coefficient de cisaillement (-1.0 <= NU <= 0.5)', - ), # end NU - ALPHA = SIMP(statut='f', - typ='R', - min=1, - max=1, - fr = "Coefficient permettant de construire une matrice d'amortissement visqueux proportionnel a la rigidite", - ), # end ALPHA - BETA = SIMP(statut='f', - typ='R', - min=1, - max=1, - fr = "Coefficient permettant de construire une matrice d'amortissement visqueux proportionnel a la masse", - ), # end BETA - GAMMA = SIMP(statut='f', - typ='R', - min=1, - max=1, - fr = "Coefficient d'amortissement hysteretique permettant de definir le module d'Young complexe", - ), # end GAMMA - ), # end PARAMETRES_MAT - FICHIER_MAT = BLOC(condition = "((TYPE_INTRO == 'FICHIER') )", - MATERIAU_CATALOGUE = SIMP(statut='o', - fr="Fichier decrivant les caracteristiques materiaux (format decrit dans le Manuel Utilisateur)", - min=1, - max=1, - typ=('Fichier','Fichier materiau (*.*)'), - ), # end MATERIAU_CATALOGUE - ), # end FICHIER_MAT - #SIMP(typ=('Fichier','JDC Files (*.comm)'),docu='',min=1,max=1,statut='o',defaut=None) - ) # end MATERIAU - - - -############################# ZONES ######################################## -ZONE = MACRO(nom = 'ZONE', - op = None, - sd_prod = Zone, - reentrant = 'n', - UIinfo = {"groupes":("Machine tournante",)}, - fr = "Description d'une zone (comportant noeuds et elements, et en option masses ponctuelles et fissures)", - fenetreIhm='deplie1Niveau', - #regles = (AU_MOINS_UN("ELEMENTS")), - regles=(AU_MOINS_UN('A1','B'),), - A1=SIMP(statut='f',typ='TXM',), - B=SIMP(statut='f',typ='TXM',), - MASSE = FACT(statut='f', - min=0, - max='**', - fr = "Description des masses ponctuelles", - #POSITION = SIMP(statut='o', - NOEUD = SIMP(statut='o', - typ='TXM', - defaut=None, - fr = "Definition de la position axiale de la masse (label du noeud de la ligne d'arbres en vis-a-vis)", - ), # end POSITION - TYPE_MASSE = SIMP(statut='o', - typ='TXM', - fr = "Renseignement du type de masse consideree", - into=('DISQUE','AILETTE','QUELCONQUE'), - ), # end TYPE_MASSE - DISQUE = BLOC(condition = "((TYPE_MASSE == 'DISQUE') )", - TYPE_SAISIE = SIMP(statut='o', - typ='TXM', - fr = "Type de saisie des parametres du DISQUE", - into = ('MECANIQUE','GEOMETRIQUE'), - defaut = 'MECANIQUE' - ), # end TYPE_SAISIE - PARAMETRES_MECANIQUE = BLOC(condition = "TYPE_SAISIE == 'MECANIQUE'", - PARAMETRES = FACT(statut = 'o', - fr = "Parametres mecaniques pour un DISQUE", - MASSE = SIMP(statut='o', - typ='R', - val_min=0, - fr = "Masse du DISQUE (kg)", - ), # end MASSE_DISQUE - INERTIEX = SIMP(statut='o', - typ='R', - fr = "Inertie du DISQUE en X (kg.m**2)", - ), # end INERTIEX - INERTIEY = SIMP(statut='o', - typ='R', - fr = "Inertie du DISQUE en Y (kg.m**2)", - ), # end INERTIEY - INERTIEZ = SIMP(statut='o', - typ='R', - fr = "Inertie du DISQUE en Z (axe de rotation de la ligne d'arbres)(kg.m**2)", - ), # end INERTIEZ - ) # end PARAMETRES_DISQUE_M - ), # end PARAMETRES_MECANIQUE - PARAMETRES_GEOMETRIQUE = BLOC(condition = "TYPE_SAISIE == 'GEOMETRIQUE'", - PARAMETRES = FACT(statut = 'o', - fr = "Parametres geometriques pour un DISQUE", - DIAMETRE_EXT = SIMP(statut='o', - typ='R', - val_min=0, - fr = "Diametre exterieur du DISQUE (m)", - ), # end MASSE_DISQUE - DIAMETRE_INT = SIMP(statut='o', - typ='R', - fr = "Diametre interieur du DISQUE (m). Verifier le diametre exterieur du rotor avant saisie", - ), # end INERTIEX - EPAISSEUR = SIMP(statut='o', - typ='R', - val_min=0, - fr = "Epaisseur (dans la direction axiale) du DISQUE (m)", - ), # end INERTIEY - MATERIAU = SIMP(statut='o', - typ=Materiau, - fr = "Materiau constituant le DISQUE (doit avoir ete defini via une entree MATERIAUX)", - ), # end INERTIEZ - ) # nd PARAMETRES_DISQUE_G - ), # end PARAMETRES_MECANIQUE - ), # end DISQUE - AILETTE = BLOC(condition = "((TYPE_MASSE == 'AILETTE') )", - TYPE_SAISIE = SIMP(statut='o', - typ='TXM', - fr = "Type de saisie des parametres de la rangee d'AILETTES", - into = ('MECANIQUE','GEOMETRIQUE'), - defaut = 'MECANIQUE' - ), # end TYPE_SAISIE - PARAMETRES_MECANIQUE = BLOC(condition = "TYPE_SAISIE == 'MECANIQUE'", - PARAMETRES = FACT(statut = 'o', - fr = "Parametres mecaniques de la rangee d'AILETTES", - MASSE = SIMP(statut='o', - typ='R', - val_min=0, - fr = "Masse de la rangee d'AILETTES (kg)", - ), # end MASSE_AILETTE - INERTIEX = SIMP(statut='o', - typ='R', - fr = "Inertie de la rangee d'AILETTES en X (kg.m**2)", - ), # end INERTIEX - INERTIEY = SIMP(statut='o', - typ='R', - fr = "Inertie de la rangee d'AILETTES en Y (kg.m**2)", - ), # end INERTIEY - INERTIEZ = SIMP(statut='o', - typ='R', - fr = "Inertie de la rangee d'AILETTES en Z (axe de rotation de la ligne d'arbres) (kg.m**2)", - ), # end INERTIEZ - ) # nd PARAMETRES_AILETTE_M - ), # end PARAMETRES_MECANIQUE - PARAMETRES_GEOMETRIQUE = BLOC(condition = "TYPE_SAISIE == 'GEOMETRIQUE'", - PARAMETRES = FACT(statut = 'o', - fr = "Parametres geometriques d'une AILETTE", - MASSE_AILETTE = SIMP(statut='o', - typ='R', - val_min=0, - fr = "Masse d'une AILETTE (kg)", - ), # end MASSE_AILETTE - RAYON = SIMP(statut='o', - typ='R', - val_min=0, - fr = "Distance entre le pied de l'AILETTE et le centre de rotation (m). Verifier le diametre exterieur du rotor avant saisie", - ), # end RAYON - HAUTEUR = SIMP(statut='o', - typ='R', - val_min=0, - fr = "Distance entre les deux extremites de l'AILETTE (m)", - ), # end HAUTEUR - BASE = SIMP(statut='o', - typ='R', - val_min=0, - fr = "Largeur du pied de l'AILETTE (m)", - ), # end BASE - NOMBRE = SIMP(statut='o', - typ='I', - val_min=1, - fr = "Nombre d'AILETTES dans la rangee", - ), - ) # end PARAMETRES_DISQUE - ), # end PARAMETRES_MECANIQUE - ), # end AILETTE - QUELCONQUE = BLOC(condition = "((TYPE_MASSE == 'QUELCONQUE') )", - #TYPE_SAISIE = SIMP(statut='c',typ='TXM',defaut="MECANIQUE"), # cf 20120622 test : mot-clé caché - PARAMETRES = FACT(statut = 'o', - fr = "Parametres pour masse de type QUELCONQUE", - MASSE = SIMP(statut='o', - typ='R', - val_min=0, - fr = "Masse (m)", - ), # end MASSE - INERTIEX = SIMP(statut='o', - typ='R', - fr = "Inertie en X (kg.m**2)", - ), # end INERTIEX - INERTIEY = SIMP(statut='o', - typ='R', - fr = "Inertie en Y (kg.m**2)", - ), # end INERTIEY - INERTIEZ = SIMP(statut='o', - typ='R', - fr = "Inertie en Z (axe de rotation de la ligne d'arbres) (kg.m**2)", - ), # end INERTIEZ - ), # end PARAMETRES_QUELCONQUE - ), # end QUELCONQUE - ), # end MASSE - NOEUDS = FACT(fr = "Definition des noeuds de la zone (2 noeuds minimum)", - statut='o', - min=2, - max='**', - NOM = SIMP(statut='o', - typ='TXM', - fr="Label du noeud", - ), # end NOM - POSITION_AXIALE = SIMP(statut='o', - typ='R', - defaut=0.0, - val_min=0.0, - fr = "Position axiale du noeud (relative par rapport au debut de la zone (1er noeud a 0m)) (m)", - ), # end X - ), # end NOEUDS - ELEMENTS = FACT(fr = "Definition des elements poutre de la zone", - statut='o', - min=1, - max='**', - NOM = SIMP(statut='o', - typ='TXM', - fr="Label de l'element" - ), # end NOM - NOEUD_DEBUT = SIMP(statut='o', - typ='TXM', - fr= "Noeud de debut de l'element poutre (label d'un noeud)" - ), # end DEBUT - NOEUD_FIN = SIMP(statut='o', - typ='TXM', - fr= "Noeud de fin de l'element poutre (label d'un noeud)" - ), # end FIN - RAFFINEMENT = SIMP(fr = "Choix de raffiner l'element poutre", - statut='o', - typ='TXM', - into=('OUI','NON'), - defaut='NON' - ), # end RAFFINEMENT - PARAM_RAFFINEMENT = BLOC(fr = "Nombre de points supplementaires a ajouter pour le raffinement (nombre elements : 1 -> nb points + 1)", - condition = "((RAFFINEMENT == 'OUI') )", - NB_POINTS_SUPPL = SIMP(statut='o', - typ='I' - ), # end NB_POINTS_SUPPL - ), # end PARAM_RAFFINEMENT - MATERIAU = SIMP(statut='o', - typ=Materiau, - fr= "Materiau constituant l'element poutre (doit avoir ete defini via une entree MATERIAUX)" - ), # end MATERIAU - SECTION_MASSE = FACT(statut='o', - fr = "Section a partir de laquelle est determinee la masse de l'element poutre", - TYPE_SECTION = SIMP(statut='o', - fr = "Choix d'une section de dimensions constantes ou variables", - typ='TXM', - into=('CONSTANTE','VARIABLE'), - defaut='CONSTANTE', - ), # end TYPE_SECTION - DIAM_EXTERN_DEBUT = SIMP(statut='o', - typ='R', - fr = "Diametre exterieur en debut d'element poutre (m)", - ), # end DIAM_EXTERN_DEBUT - DIAM_INTERN_DEBUT = SIMP(statut='o', - typ='R', - fr = "Diametre interieur en debut d'element poutre (m) (different de 0 si element creux)", - ), # end DIAM_INTERN_DEBUT - PARAMETRE_SECT_VAR = BLOC(condition = "((TYPE_SECTION == 'VARIABLE') )", - fr = "Renseignement des dimensions de fin d'element (variation lineaire entre le debut et la fin)", - DIAM_EXTERN_SORTIE = SIMP(statut='o', - typ='R', - fr = "Diametre exterieur en fin d'element (m)", - ), # end DIAM_EXTERN_SORTIE - DIAM_INTERN_SORTIE = SIMP(statut='o', - typ='R', - fr = "Diametre interieur en fin d'element (m)", - ), # DIAM_INTERN_SORTIE - ), - ), # end SECTION_MASSE - SECTION_RIGIDITE = FACT(statut='f', - fr = "Section a partir de laquelle est determinee la rigidite de l'element poutre", - TYPE_SECTION = SIMP(statut='o', - fr = "Choix d'une section de dimensions constantes ou variables", - typ='TXM', - into=('CONSTANTE','VARIABLE'), - defaut='CONSTANTE', - ), # end TYPE_SECTION - DIAM_EXTERN_DEBUT = SIMP(statut='o', - typ='R', - fr = "Diametre exterieur en debut d'element poutre (m)", - ), # end DIAM_EXTERN_DEBUT - DIAM_INTERN_DEBUT = SIMP(statut='o', - typ='R', - fr = "Diametre interieur en debut d'element poutre (m) (different de 0 si element creux)", - ), # end DIAM_INTERN_DEBUT - PARAMETRE_SECT_VAR = BLOC(condition = "((TYPE_SECTION == 'VARIABLE') )", - fr = "Renseignement des dimensions de fin d'element (variation lineaire entre le debut et la fin)", - DIAM_EXTERN_SORTIE = SIMP(statut='o', - typ='R', - fr = "Diametre exterieur en fin d'element (m)", - ), # end DIAM_EXTERN_SORTIE - DIAM_INTERN_SORTIE = SIMP(statut='o', - typ='R', - fr = "Diametre interieur en fin d'element (m)", - ), # end DIAM_INTERN_SORTIE - ), # end PARAMETRE_SECT_VAR - ), # end SECTION_RIGIDITE - ), # end ELEMENTS - FISSURE = FACT(statut='f', - fr="Description d'une fissure sur un noeud de l'arbre (licite uniquement si les elements poutres a gauche et a droite du noeud ont des sections masse et rigidite constantes)", - MATERIAU = SIMP(statut='o', - typ=Materiau, - fr="Materiau a la position de la fissure (doit avoir ete defini via une entree MATERIAUX)" - ), # end MATERIAU - NOEUD_FISSURE = SIMP(statut='o', - typ='TXM', - fr="Label du noeud ou est positionnee la fissure", - ), # end POSITION_FISSURE - ORIENTATION_FISSURE = SIMP(statut='o', - typ='R', - fr="Angle initial du fond de fissure par rapport à sa définition dans la loi de comportement de fissure (0. par defaut)(degres)", - ), # end ORIENTATION_FISSURE - FICHIER_RAIDEUR = SIMP(statut='o', - typ=('Fichier','Fichier loi de raideur (*.*)'), - fr="Fichier contenant la loi de comportement en raideur de la fissure", - ), # end FICHIER_RAIDEUR - DIAMETRE = SIMP(statut='o', - typ='R', - fr="Diametre du rotor a l'emplacement de la fissure (m)", - ), # end DIAMETRE - ), # end FISSURE - - ) # end ZONE - -############################# PALIERS ######################################## -PALIER = MACRO(nom = 'PALIER', - op = None, - sd_prod = Palier, - reentrant = 'n', - UIinfo = {"groupes":("Machine tournante",)}, - fr = "Description d'un palier radial", - POSITION = SIMP(statut='o', - typ='R', - defaut=0.0, - fr = "Position axiale (absolue) du palier radial (m)", - ), # end POSITION - NOM_NOEUD = SIMP(statut='f', - typ='TXM', - fr=u"Nom du noeud dans le cas où plusieurs noeuds se trouvent à la même position axiale"), - TYPE_PALIER = SIMP(statut='o', - fr = "Type de palier radial", - typ='TXM', - into=('PALIER LINEAIRE','PALIER NON-LINEAIRE','LAME FLUIDE'), - ), # end TYPE_PALIER - PALIER_LINEAIRE = BLOC(condition = "((TYPE_PALIER == 'PALIER LINEAIRE') )", - fr = "Description d'un palier radial lineaire", - TYPE_SAISIE = SIMP(statut='o', - fr = "Mode de description des caracteristiques du palier radial lineaire", - typ='TXM', - into=('MANUELLE', 'CATALOGUE'), - ), # end TYPE_SAISIE - MANUELLE = BLOC(condition = "((TYPE_SAISIE == 'MANUELLE') )", - fr = "Saisie manuelle des caracteristiques du palier radial lineaire", - CARAC_PALIER = FACT(statut = 'o',max='**',fr = "Caracteristiques du palier par vitesse de rotation de la ligne d'arbres", - VITESSE_ROTATION = SIMP(statut='o', - typ='R', - fr= "Vitesse de rotation (tr/min)", - ), # end VITESSE_ROTATION - SYME = SIMP(statut = 'o', - typ = 'TXM', - max = 1, - fr = "Symetrie des matrices du palier radial lineaire (KXY=KYX et AXY=AYX)", - into = ('OUI','NON'), - defaut = 'OUI', - ), # end SYME - RIGIDITE_NS = BLOC(condition="(SYME=='NON')", - RIGIDITE=FACT(statut='o',fr="Renseignement des caracteristiques non-symetriques de rigidite du palier radial lineaire", - KXX = SIMP(statut = 'o', - typ = 'R', - max = 1, - fr = "Valeur de KXX dans la matrice de rigidite (N/m)", - ),# end KXX - KXY = SIMP(statut = 'o', - typ = 'R', - max = 1, - fr = "Valeur de KXY dans la matrice de rigidite (N/m)", - ),# end KXY - KYX = SIMP(statut = 'o', - typ = 'R', - max = 1, - fr = "Valeur de KYX dans la matrice de rigidite (N/m)", - ),# end KYX - KYY = SIMP(statut = 'o', - typ = 'R', - max = 1, - fr = "Valeur de KYY dans la matrice de rigidite (N/m)", - ),# end KYY - ), # end RIGIDITE - ), # end RIGIDITE_S - RIGIDITE_S = BLOC(condition="(SYME=='OUI')", - RIGIDITE=FACT(statut='o',fr="Renseignement des caracteristiques symetriques de rigidite du palier radial lineaire", - KXX = SIMP(statut = 'o', - typ = 'R', - max = 1, - fr = "Valeur de KXX dans la matrice de rigidite (N/m)", - ),# end KXX - KXY = SIMP(statut = 'o', - typ = 'R', - max = 1, - fr = "Valeur de KXY dans la matrice de rigidite (N/m)", - ),# end KXY - KYY = SIMP(statut = 'o', - typ = 'R', - max = 1, - fr = "Valeur de KYY dans la matrice de rigidite (N/m)", - ),# end KYY - ), # end RIGIDITE - ), # end RIGIDITE_NS - AMORTISSEMENT_NS = BLOC(condition="(SYME=='NON')", - AMORTISSEMENT=FACT(statut='o',fr="Renseignement des caracteristiques non-symetriques d'amortissement du palier radial lineaire", - AXX = SIMP(statut = 'o', - typ = 'R', - max = 1, - fr = "Valeur de AXX dans la matrice d'amortissement (N.s/m)", - ),# end AXX - AXY = SIMP(statut = 'o', - typ = 'R', - max = 1, - fr = "Valeur de AXY dans la matrice d'amortissement (N.s/m)", - ),# end AXY - AYX = SIMP(statut = 'o', - typ = 'R', - max = 1, - fr = "Valeur de AYX dans la matrice d'amortissement (N.s/m)", - ),# end AYX - AYY = SIMP(statut = 'o', - typ = 'R', - max = 1, - fr = "Valeur de AYY dans la matrice d'amortissement (N.s/m)", - ),# end AYY - ), # end AMORTISSEMENT - ), # end AMORTISSEMENT_NS - AMORTISSEMENT_S = BLOC(condition="(SYME=='OUI')", - AMORTISSEMENT=FACT(statut='o',fr="Renseignement des caracteristiques symetriques d'amortissement du palier radial lineaire", - AXX = SIMP(statut = 'o', - typ = 'R', - max = 1, - fr = "Valeur de AXX dans la matrice d'amortissement (N.s/m)", - ),# end AXX - AXY = SIMP(statut = 'o', - typ = 'R', - max = 1, - fr = "Valeur de AXY dans la matrice d'amortissement (N.s/m)", - ),# end AXY - AYY = SIMP(statut = 'o', - typ = 'R', - max = 1, - fr = "Valeur de AYY dans la matrice d'amortissement (N.s/m)", - ),# end AYY - ), # end AMORTISSEMENT - ), # end AMORTISSEMENT_S - ), # end CARAC_PALIER - ), # end MANUELLE - CATALOGUE = BLOC(condition = "((TYPE_SAISIE == 'CATALOGUE') )", - fr = "Renseignement des fichiers contenant les caracteristiques du palier radial lineaire", - CATALOGUE_AMORTISSEMENT = SIMP(statut='o', - min=1, - max=1, - typ='Fichier', - fr="Fichier decrivant les caracteristiques d'amortissement (N.s/m) du palier radial lineaire (format decrit dans le Manuel Utilisateur)", - ), # end CATALOGUE_AMORTISSEMENT - CATALOGUE_RIGIDITE = SIMP(statut='o', - min=1, - max=1, - typ='Fichier', - fr="Fichier decrivant les caracteristiques de rigidite (N/m) du palier radial lineaire (format decrit dans le Manuel Utilisateur)", - ), # end CATALOGUE_RIGIDITE - ), # end CATALOGUE - ), # end PALIER_LINEAIRE - LAME_FLUIDE = BLOC(condition = "((TYPE_PALIER == 'LAME FLUIDE') )", - fr = "Description d'une lame fluide", - TYPE_SAISIE = SIMP(statut='o', - fr = "Mode de description des caracteristiques de la lame fluide", - typ='TXM', - defaut = 'MANUELLE', - #into=('MANUELLE', 'CATALOGUE'), #Fonctionnalite catalogue non encore implementee - into=('MANUELLE',), - ), # end TYPE_SAISIE - MANUELLE = BLOC(condition = "((TYPE_SAISIE == 'MANUELLE') )", - fr = "Saisie manuelle des caracteristiques de la lame fluide", - CARAC_PALIER = FACT(statut = 'o',max='**',fr = "Caracteristiques de la lame fluide par vitesse de rotation de la ligne d'arbres", - SYME = SIMP(statut = 'o', - typ = 'TXM', - max = 1, - fr = "Symetrie des matrices de la lame fluide (KXY=KYX et AXY=AYX)", - into = ('OUI','NON'), - defaut = 'OUI', - ), # end SYME - RIGIDITE_NS = BLOC(condition="(SYME=='NON')", - RIGIDITE=FACT(statut='o',fr="Renseignement des caracteristiques non-symetriques de rigidite de la lame fluide", - KXX = SIMP(statut = 'o', - typ = 'R', - max = 1, - fr = "Valeur de KXX dans la matrice de rigidite (N/m)", - ),# end KXX - KXY = SIMP(statut = 'o', - typ = 'R', - max = 1, - fr = "Valeur de KXY dans la matrice de rigidite (N/m)", - ),# end KXY - KYX = SIMP(statut = 'o', - typ = 'R', - max = 1, - fr = "Valeur de KYX dans la matrice de rigidite (N/m)", - ),# end KYX - KYY = SIMP(statut = 'o', - typ = 'R', - max = 1, - fr = "Valeur de KYY dans la matrice de rigidite (N/m)", - ),# end KYY - ),# end RIGIDITE - ), # end RIGIDITE_NS - RIGIDITE_S = BLOC(condition="(SYME=='OUI')", - RIGIDITE=FACT(statut='o',fr="Renseignement des caracteristiques symetriques de rigidite de la lame fluide", - KXX = SIMP(statut = 'o', - typ = 'R', - max = 1, - fr = "Valeur de KXX dans la matrice de rigidite (N/m)", - ),# end KXX - KXY = SIMP(statut = 'o', - typ = 'R', - max = 1, - fr = "Valeur de KXY dans la matrice de rigidite (N/m)", - ),# end KXY - KYY = SIMP(statut = 'o', - typ = 'R', - max = 1, - fr = "Valeur de KYY dans la matrice de rigidite (N/m)", - ),# end KYY - ), # end RIGIDITE - ), # end RIGIDITE_S - AMORTISSEMENT_NS = BLOC(condition="(SYME=='NON')", - AMORTISSEMENT=FACT(statut='o',fr="Renseignement des caracteristiques non-symetriques d'amortissement de la lame fluide", - AXX = SIMP(statut = 'o', - typ = 'R', - max = 1, - fr = "Valeur de AXX dans la matrice d'amortissement (N.s/m)", - ),# end AXX - AXY = SIMP(statut = 'o', - typ = 'R', - max = 1, - fr = "Valeur de AXY dans la matrice d'amortissement (N.s/m)", - ),# end AXY - AYX = SIMP(statut = 'o', - typ = 'R', - max = 1, - fr = "Valeur de AYX dans la matrice d'amortissement (N.s/m)", - ),# end AYX - AYY = SIMP(statut = 'o', - typ = 'R', - max = 1, - fr = "Valeur de AYY dans la matrice d'amortissement (N.s/m)", - ),# end AYY - ), # end AMORTISSEMENT - ), # end AMORTISSEMENT - #), # end AMORTISSEMENT_NS - AMORTISSEMENT_S = BLOC(condition="(SYME=='OUI')", - AMORTISSEMENT=FACT(statut='o',fr="Renseignement des caracteristiques symetriques d'amortissement de la lame fluide", - AXX = SIMP(statut = 'o', - typ = 'R', - max = 1, - fr = "Valeur de AXX dans la matrice d'amortissement (N.s/m)", - ),# end AXX - AXY = SIMP(statut = 'o', - typ = 'R', - max = 1, - fr = "Valeur de AXY dans la matrice d'amortissement (N.s/m)", - ),# end AXY - AYY = SIMP(statut = 'o', - typ = 'R', - max = 1, - fr = "Valeur de AYY dans la matrice d'amortissement (N.s/m)", - ),# end AYY - ), # end AMORTISSEMENT - ), # end AMORTISSEMENT_S - MASSE_NS = BLOC(condition="(SYME=='NON')", - MASSE=FACT(statut='o',fr="Renseignement des caracteristiques non symetriques de masse de la lame fluide", - MXX = SIMP(statut = 'o', - typ = 'R', - max = 1, - fr = "Valeur de MXX dans la matrice de masse (kg)", - ),# end MXX - MXY = SIMP(statut = 'o', - typ = 'R', - max = 1, - fr = "Valeur de MXY dans la matrice de masse (kg)", - ),# end MXY - MYX = SIMP(statut = 'o', - typ = 'R', - max = 1, - fr = "Valeur de MYX dans la matrice de masse (kg)", - ),# end MYX - MYY = SIMP(statut = 'o', - typ = 'R', - max = 1, - fr = "Valeur de MYY dans la matrice de masse (kg)", - ),# end MYY - ), # end MASSE - ), # end MASSE_NS - MASSE_S = BLOC(condition="(SYME=='OUI')", - MASSE=FACT(statut='o',fr="Renseignement des caracteristiques symetriques de masse de la lame fluide", - MXX = SIMP(statut = 'o', - typ = 'R', - max = 1, - fr = "Valeur de MXX dans la matrice de masse (kg)", - ),# end MXX - MXY = SIMP(statut = 'o', - typ = 'R', - max = 1, - fr = "Valeur de MXY dans la matrice de masse (kg)", - ),# end MXY - MYY = SIMP(statut = 'o', - typ = 'R', - max = 1, - fr = "Valeur de MYY dans la matrice de masse (kg)", - ),# end MYY - ), # end MASSE - ), # end MASSE_S - VITESSE_ROTATION = SIMP(statut='o', - typ='R', - fr= "Vitesse de rotation (tr/min)", - ), # end VITESSE_ROTATION - ), # end CARAC_PALIER - ), # end MANUELLE - #Fonctionnalite non encore implementee - CATALOGUE = BLOC(condition = "((TYPE_SAISIE == 'CATALOGUE') )", - PALIERS_CATALOGUE = SIMP(statut='o', - min=1, - max=1, - typ='Fichier', - fr="Format du fichier : CSV.", - ), # end PALIERS_CATALOGUE - ), # end CATALOGUE - - ), # end LAME_FLUIDE - PALIER_NON_LINEAIRE = BLOC(condition = "((TYPE_PALIER == 'PALIER NON-LINEAIRE') )", - fr = "Description d'un palier non-lineaire (licite uniquement en cas d'analyse de type 'TRANSITOIRE ACCIDENTEL'", - TYPE = SIMP(statut='o', - typ='TXM', - into=('PAPANL','PAFINL','PAHYNL','PACONL'), - defaut=None, - fr="Type de palier non-lineaire parmi ceux proposes dans Edyos", - ), # end TYPE - REPERTOIRE_EDYOS = SIMP(statut='o', - typ=('Repertoire'), - defaut=None, - fr="Repertoire 'CDC' du palier non-lineaire utilise (les fichiers Geometrie et Donnees doivent exister dans les repertoires parents respectivement de niveau 2 et 1 de CDC)", - ), # end REPERTOIRE_EDYOS - ), # end PALIER_NON_LINEAIRE - ) # end PALIER - -PALIER_TORSION=MACRO(nom="PALIER_TORSION", - op=None, - sd_prod=PalTor, - reentrant='n', - UIinfo={"groupes":("Machine tournante",)}, - fr="Description d'un palier de torsion", - POSITION = SIMP(statut='o',typ='R',defaut=0.0,fr = "Position axiale (absolue) du palier de torsion (m)",), # end POSITION - TYPE_SAISIE = SIMP(statut='o',typ='TXM',into=('MANUELLE',),fr = "Mode de description des caracteristiques du palier de torsion",), # end TYPE_SAISIE - MANUELLE = BLOC(condition = "((TYPE_SAISIE == 'MANUELLE') )", - fr = "Saisie manuelle des caracteristiques du palier de torsion", - CARAC_PALIER = FACT(statut = 'o',max=1,fr = "Caracteristiques du palier par vitesse de rotation de l'arbre", - VITESSE_ROTATION = SIMP(statut='o',typ='R',min=1,max='**',fr= "Liste des vitesses de rotation (tr/min)",), # end VITESSE_ROTATION - KRZ = SIMP(statut = 'o',typ = 'R',min=1,max = '**',fr = "Liste des caracteristiques de rigidite (N/m) du palier de torsion en fonction de la vitesse de rotation",),# end KRZ - ARZ = SIMP(statut = 'o',typ = 'R',min=1,max = '**',fr = "Liste des caracteristiques d'amortissement (N.s/m) du palier de torsion en fonction de la vitesse de rotation",),# end ARZ - MRZ = SIMP(statut = 'f',typ = 'R',min=1,max = '**',fr = "Liste des caracteristiques de masse ajoutee (kg) du palier de torsion en fonction de la vitesse de rotation",),# end MRZ - ),#end CARAC_PALIER - ), # end MANUELLE - #Fonctionnalite pas encore implementee - CATALOGUE = BLOC(condition = "((TYPE_SAISIE == 'CATALOGUE') )", - fr = "Renseignement des fichiers contenant les caracteristiques du palier de torsion", - CATA_PALIER = SIMP(statut='o',min=1,max=1,typ='Fichier',fr="Format du fichier : CSV.",), # end CATA_PALIER - ), # end CATALOGUE - )#end PALIER TORSION - -BUTEE=MACRO(nom="BUTEE", - op=None, - sd_prod=Butee, - reentrant='n', - UIinfo={"groupes":("Machine tournante",)}, - fr="Description d'une butee", - POSITION = SIMP(statut='o',typ='R',defaut=0.0,fr = "Position axiale (absolue) de la butee (m)",), # end POSITION - TYPE_BUTEE = SIMP(statut='o',typ='TXM',into=('BUTEE LINEAIRE',),fr = "Type de butee",), # end TYPE_BUTEE, BUTEE NON LINEAIRE reintegrable - BUTEE_LINEAIRE=BLOC(condition="TYPE_BUTEE=='BUTEE LINEAIRE'", - fr = "Description d'une butee lineaire", - TYPE_SAISIE = SIMP(statut='o',typ='TXM',into=('MANUELLE',),fr = "Mode de description des caracteristiques de la butee lineaire",), # end TYPE_SAISIE; 'CATALOGUE' reintegrable - MANUELLE=BLOC(condition="TYPE_SAISIE=='MANUELLE'", - fr = "Saisie manuelle des caracteristiques de la butee lineaire", - CARAC_BUTEE=FACT(statut='o',max=1,fr="Caracteristiques de la butee en fonction de la vitesse de rotation", - VITESSE_ROTATION=SIMP(statut='o',typ='R',min=1,max='**',fr="Liste des vitesses de rotation (tr/min)",), - SYMETRIQUE=SIMP(statut='o',typ='TXM',min=1,max=1,into=("OUI","NON"),defaut="OUI",fr="Symetrie des matrices de la butee (KRXRY=KRYRX , ARXRY=ARYRX et MRXRY=MRYRX)",), - - RIGIDITE_NS = BLOC(condition="(SYMETRIQUE=='NON')", - RIGIDITE=FACT(statut='o',max=1,fr="Caracteristiques non-symetriques de rigidite de la butee lineaire en fonction de la vitesse de rotation", - KZZ=SIMP(statut='o',typ='R',min=1,max='**',fr="Rigidite axiale (N/m) de la butee lineaire en fonction de la vitesse de rotation"), - KRXRX=SIMP(statut='f',typ='R',min=1,max='**',fr="Rigidite directe de rotation autour de l'axe X (N/m) de la butee lineaire en fonction de la vitesse de rotation"), - KRXRY=SIMP(statut='f',typ='R',min=1,max='**',fr="Rigidite croisee de rotation autour de l'axe X (N/m) de la butee lineaire en fonction de la vitesse de rotation"), - KRYRX=SIMP(statut='f',typ='R',min=1,max='**',fr="Rigidite croisee de rotation autour de l'axe Y (N/m) de la butee lineaire en fonction de la vitesse de rotation"), - KRYRY=SIMP(statut='f',typ='R',min=1,max='**',fr="Rigidite directe de rotation autour de l'axe Y (N/m) de la butee lineaire en fonction de la vitesse de rotation"), - ), #END RIGIDITE - ),#END RIGIDITE_NS - RIGIDITE_S = BLOC(condition="(SYMETRIQUE=='OUI')", - RIGIDITE=FACT(statut='o',max=1,fr="Caracteristiques symetriques de rigidite de la butee lineaire en fonction de la vitesse de rotation", - KZZ=SIMP(statut='o',typ='R',min=1,max='**',fr="Rigidite axiale (N/m) de la butee lineaire en fonction de la vitesse de rotation"), - KRXRX=SIMP(statut='f',typ='R',min=1,max='**',fr="Rigidite directe de rotation autour de l'axe X (N/m) de la butee lineaire en fonction de la vitesse de rotation"), - KRXRY=SIMP(statut='f',typ='R',min=1,max='**',fr="Rigidite croisee de rotation autour de l'axe X (N/m) de la butee lineaire en fonction de la vitesse de rotation"), - KRYRY=SIMP(statut='f',typ='R',min=1,max='**',fr="Rigidite directe de rotation autour de l'axe Y (N/m) de la butee lineaire en fonction de la vitesse de rotation"), - ), #END RIGIDITE - ),#END RIGIDITE_S - - AMORTISSEMENT_NS = BLOC(condition="(SYMETRIQUE=='NON')", - AMORTISSEMENT=FACT(statut='o',max=1,fr="Caracteristiques non-symetriques d'amortissement de la butee lineaire en fonction de la vitesse de rotation", - AZZ=SIMP(statut='o',typ='R',min=1,max='**',fr="Amortissement axial (N.s/m) de la butee lineaire en fonction de la vitesse de rotation"), - ARXRX=SIMP(statut='f',typ='R',min=1,max='**',fr="Amortissement direct de rotation autour de l'axe X (N.s/m) de la butee lineaire en fonction de la vitesse de rotation"), - ARXRY=SIMP(statut='f',typ='R',min=1,max='**',fr="Amortissement croise de rotation autour de l'axe X (N.s/m) de la butee lineaire en fonction de la vitesse de rotation"), - ARYRX=SIMP(statut='f',typ='R',min=1,max='**',fr="Amortissement croise de rotation autour de l'axe Y (N.s/m) de la butee lineaire en fonction de la vitesse de rotation"), - ARYRY=SIMP(statut='f',typ='R',min=1,max='**',fr="Amortissement croise de rotation autour de l'axe Y (N.s/m) de la butee lineaire en fonction de la vitesse de rotation"), - ),#END AMORTISSEMENT - ),#END AMORTISSEMENT_NS - AMORTISSEMENT_S = BLOC(condition="(SYMETRIQUE=='OUI')", - AMORTISSEMENT=FACT(statut='o',max=1,fr="Caracteristiques symetriques d'amortissement de la butee lineaire en fonction de la vitesse de rotation", - AZZ=SIMP(statut='o',typ='R',min=1,max='**',fr="Amortissement axial (N.s/m) de la butee lineaire en fonction de la vitesse de rotation"), - ARXRX=SIMP(statut='f',typ='R',min=1,max='**',fr="Amortissement direct de rotation autour de l'axe X (N.s/m) de la butee lineaire en fonction de la vitesse de rotation"), - ARXRY=SIMP(statut='f',typ='R',min=1,max='**',fr="Amortissement croise de rotation autour de l'axe X (N.s/m) de la butee lineaire en fonction de la vitesse de rotation"), - ARYRY=SIMP(statut='f',typ='R',min=1,max='**',fr="Amortissement croise de rotation autour de l'axe Y (N.s/m) de la butee lineaire en fonction de la vitesse de rotation"), - ),#END AMORTISSEMENT - ),#END AMORTISSEMENT_S - - INERTIE_NS = BLOC(condition="(SYMETRIQUE=='NON')", - INERTIE=FACT(statut='f',max=1,fr="Caracteristiques non-symetriques de masse ajoutee de la butee lineaire en fonction de la vitesse de rotation", - MZZ=SIMP(statut='f',typ='R',min=1,max='**',fr="Masse ajoutee axiale (kg) de la butee lineaire en fonction de la vitesse de rotation"), - MRXRX=SIMP(statut='f',typ='R',min=1,max='**',fr="Masse ajoutee directe de rotation autour de l'axe X (kg) de la butee lineaire en fonction de la vitesse de rotation"), - MRXRY=SIMP(statut='f',typ='R',min=1,max='**',fr="Masse ajoutee croisee de rotation autour de l'axe X (kg) de la butee lineaire en fonction de la vitesse de rotation"), - MRYRX=SIMP(statut='f',typ='R',min=1,max='**',fr="Masse ajoutee croisee de rotation autour de l'axe Y (kg) de la butee lineaire en fonction de la vitesse de rotation"), - MRYRY=SIMP(statut='f',typ='R',min=1,max='**',fr="Masse ajoutee croisee de rotation autour de l'axe Y (kg) de la butee lineaire en fonction de la vitesse de rotation"), - ),#END INERTIE - ),#END INERTIE_NS - INERTIE_S = BLOC(condition="(SYMETRIQUE=='OUI')", - INERTIE=FACT(statut='f',max=1,fr="Caracteristiques symetriques de masse ajoutee de la butee lineaire en fonction de la vitesse de rotation", - MZZ=SIMP(statut='f',typ='R',min=1,max='**',fr="Masse ajoutee axiale (kg) de la butee lineaire en fonction de la vitesse de rotation"), - MRXRX=SIMP(statut='f',typ='R',min=1,max='**',fr="Masse ajoutee directe de rotation autour de l'axe X (kg) de la butee lineaire en fonction de la vitesse de rotation"), - MRXRY=SIMP(statut='f',typ='R',min=1,max='**',fr="Masse ajoutee croisee de rotation autour de l'axe X (kg) de la butee lineaire en fonction de la vitesse de rotation"), - MRYRY=SIMP(statut='f',typ='R',min=1,max='**',fr="Masse ajoutee croisee de rotation autour de l'axe Y (kg) de la butee lineaire en fonction de la vitesse de rotation"), - ),#END INERTIE - ),#END INERTIE_S - - ),#END CARA_BUTEE - ),#end MANUELLE - CATALOGUE=BLOC(condition="TYPE_SAISIE=='CATALOGUE'", - fr = "Renseignement des fichiers contenant les caracteristiques de la butee lineaire", - ),#END CATALOGUE - ),#END BUTEE LINEAIRE - - BUTEE_NON_LINEAIRE=BLOC(condition="TYPE_BUTEE=='BUTEE NON LINEAIRE'", - fr = "Description d'une butee non-lineaire", - ),#END BUTEE NON LINEAIRE - - );#END BUTEE - -############################# SUPPORT ######################################## -SUPPORT = MACRO(nom = "SUPPORT", - op = None, - sd_prod = Support, - reentrant = 'n', - UIinfo = {"groupes":("Machine tournante",)}, - fr = "Description d'un support ", - TYPE_SUPPORT = SIMP(statut='o', - fr = "Type de support", - typ='TXM', - defaut="RIGIDE", - into=("RIGIDE", "SIMPLIFIE", "GENERALISE", ), - ), # end TYPE_SUPPORT - SIMPLIFIE = BLOC(condition = "((TYPE_SUPPORT == 'SIMPLIFIE') )", - fr = "Description d'un support simplifie", - RIGIDITE = FACT(statut='o', fr = "Renseignement des caracteristiques de rigidite du support simplifie", - KXX = SIMP(statut = 'o', - typ = 'R', - max = 1, - fr = "Valeur de KXX dans la matrice de rigidite (N/m)", - ),# end KXX - KXY = SIMP(statut = 'o', - typ = 'R', - max = 1, - fr = "Valeur de KXY dans la matrice de rigidite (N/m)", - ),# end KXY - KYX = SIMP(statut = 'o', - typ = 'R', - max = 1, - fr = "Valeur de KYX dans la matrice de rigidite (N/m)", - ),# end KYX - KYY = SIMP(statut = 'o', - typ = 'R', - max = 1, - fr = "Valeur de KYY dans la matrice de rigidite (N/m)", - ),# end KYY - ), # end RIGIDITE - AMORTISSEMENT = FACT(statut='o', fr= "Renseignement des caracteristiques d'amortissement du support simplifie", - AXX = SIMP(statut = 'o', - typ = 'R', - max = 1, - fr = "Valeur de AXX dans la matrice d'amortissement (N.s/m)", - ),# end AXX - AXY = SIMP(statut = 'o', - typ = 'R', - max = 1, - fr = "Valeur de AXY dans la matrice d'amortissement (N.s/m)", - ),# end AXY - AYX = SIMP(statut = 'o', - typ = 'R', - max = 1, - fr = "Valeur de AYX dans la matrice d'amortissement (N.s/m)", - ),# end AYX - AYY = SIMP(statut = 'o', - typ = 'R', - max = 1, - fr = "Valeur de AYY dans la matrice d'amortissement (N.s/m)", - ),# end AYY - ), # end AMORTISSEMENT - MASSE = FACT(statut='o', fr= "Renseignement des caracteristiques de masse du support simplifie", - MXX = SIMP(statut = 'o', - typ = 'R', - max = 1, - fr = "Valeur de MXX dans la matrice de masse (kg)", - ),# end MXX - MXY = SIMP(statut = 'o', - typ = 'R', - max = 1, - fr = "Valeur de MXY dans la matrice de masse (kg)", - ),# end MXY - MYX = SIMP(statut = 'o', - typ = 'R', - max = 1, - fr = "Valeur de MYX dans la matrice de masse (kg)", - ),# end MYX - MYY = SIMP(statut = 'o', - typ = 'R', - max = 1, - fr = "Valeur de MYY dans la matrice de masse (kg)", - ),# end MYY - ), # end MASSE - ), # end SIMPLIFIE - GENERALISE = BLOC(condition = "((TYPE_SUPPORT == 'GENERALISE') )", - fr = "Description d'un support generalise", - ANGL_NAUT = SIMP(statut='f', - fr="Rotation du modele du support generalise a effectuer pour coincider avec le repere de la ligne d'arbres (rotation autour de X, puis Y, puis Z (degres))", - typ='R', - min=3,max=3, - ), # end ANGL_NAUT - TRANS = SIMP(statut='f', - fr="Translation du modele du support generalise a effectuer pour que ses noeuds de connexion soient confondus avec ceux de la ligne d'arbres (translation suivant X, Y et Z (m))", - typ='R', - min=3,max=3, - ), # end TRANS - MAIL_TDG = SIMP(statut='o', - fr="Fichier du maillage du support generalise", - typ=("Fichier","Fichier maillage TdG (*.*)"), - min=1,max=1, - ), # end MAIL_TDG - COMM_TDG = SIMP(statut='o', - fr="Fichier de la mise en donnees du support generalise", - typ=("Fichier","Fichier commande TdG (*.*)"), - min=1,max=1, - ), # end COMM_TDG - NOM_MACRO_ELEMENT_DYNAMIQUE = SIMP(statut='o', - fr="Nom du macro element dynamique cree pour le support generalise", - typ='TXM', - min=1,max=1, - ), # end NOM_MACRO_ELEMENT_DYNAMIQUE - NOM_INTERFACE = SIMP(statut='o', - fr="Nom de l'interface cree pour le support generalise", - typ='TXM', - min=1,max=1, - ), # end NOM_INTERFACE - NOM_GROUP_MA_MASSIF = SIMP(statut='o', - fr="Nom du groupe de maille representant le support generalise", - typ='TXM', - min=1,max=1, - ), # end NOM_GROUP_MA_MASSIF - REDUIT = SIMP(statut='f', - fr="Introduction du mot-cle REDUIT pour le cas ou le nombre d'interfaces n'est pas identique entre le support generalise et la ligne d'arbres", - typ='TXM', - into=("OUI",), - defaut="OUI", - ), # end REDUIT - ), # end GENERALISE - ) # end SUPPORT - -############################# LIGNE_ARBRE ######################################## -LIGNE_ARBRE = MACRO(nom = 'LIGNE_ARBRE', - op = None, - sd_prod = LigneArbre, - reentrant = 'n', - UIinfo = {"groupes":("Machine tournante",)}, - fr = "Description de la ligne d'arbres", - ZONES = SIMP(statut='o', - fr = "Zone(s) composant la ligne d'arbres (choisir, en faisant attention a l'ordre, parmi les entrees ZONE creees)", - typ=Zone, - min=1, - max='**', - ), # end ZONES - PALIERS = SIMP(statut='o', - fr = "Paliers supportant la ligne d'arbres (choisir, en faisant attention a l'ordre, parmi les entrees PALIER creees)", - typ=Palier, - min=2, - max='**', - ), # end PALIERS - BUTEES = SIMP(statut='f', - fr = "Butee(s) guidant axialement la ligne d'arbres (choisir, en faisant attention a l'ordre, parmi les entrees BUTEES creees)", - typ=Butee, - max='**' - ),#end BUTEE - PALIERS_TORSION=SIMP(statut='f', - fr = "Palier(s) de torsion de la ligne d'arbres (choisir, en faisant attention a l'ordre, parmi les entrees PALIERS_TORSION creees)", - typ=PalTor, - max='**' - ),#end PALIERS_TORSION - SUPPORTS = SIMP(statut='o', - fr = "Supports sous les paliers (choisir, en faisant attention a l'ordre, parmi les entrees SUPPORTS creees)", - typ=Support, - min=1, - max='**', - ), # end SUPPORTS - ) # end LIGNE_ARBRE - - diff --git a/MT/MT_Cata_V2018.py b/MT/MT_Cata_V2018.py deleted file mode 100755 index 80bf1337..00000000 --- a/MT/MT_Cata_V2018.py +++ /dev/null @@ -1,1050 +0,0 @@ -## -*- coding: utf-8 -*- -# -## -------------------------------------------------- -## debut entete -## -------------------------------------------------- -# -# 20120510 : suppression de la valeur par defaut de MATERIAU->PARAMETRES_MAT->NU -# changement du nom MATERIAU->PARAMETRES_MAT->MASS_VOL en MATERIAU->PARAMETRES_MAT->RHO -# -# 20120619 : changement ordre d'affichage des macros -> ordre de création -# 20120725 : modification definition (matrices A,K,M) palier et support -# 20130411 : ajout elements dans palier generalise (mail tdg + comm tdg) -# -# todo : supprimer les noeuds -> definir les elements par leur longueur -# -# -# -# -# - - -from Accas import * -# - -import types -class Tuple: - def __init__(self,ntuple): - self.ntuple=ntuple - - def __convert__(self,valeur): - if type(valeur) == types.StringType: - return None - if len(valeur) != self.ntuple: - return None - return valeur - - def info(self): - return "Tuple de %s elements" % self.ntuple - - __repr__=info - __str__=info - - -#CONTEXT.debug = 1 -VERSION_CATALOGUE="2018.0.0"; -JdC = JDC_CATA(code = 'MT', - execmodul = None, - regles = (AU_MOINS_UN ( 'LIGNE_ARBRE',), - AU_PLUS_UN ( 'LIGNE_ARBRE',)), - ) # Fin JDC_CATA - -class Direction(ASSD): pass -class Materiau(ASSD): pass -#class Masse(ASSD): pass -class Zone(ASSD): pass -class Palier(ASSD): pass -#class Masse(ASSD): pass -#class ConditionsAuxLimites(ASSD): pass -class LigneArbre(ASSD): pass -class Support(ASSD): pass -class Butee(ASSD): pass -class PalTor(ASSD):pass -#class Noeud(ASSD): pass - -## def macro_noeuds(self, NOEUD, **args): -## """ -## """ -## if NOEUD is not None: -## self.type_sdprod(NOEUD, Noeud) -## pass -## else: -## raise AsException("Impossible de typer les concepts resultats") - -## return Noeuds - -############################# MATERIAUX ######################################## -# @todo -# introduction manuelle => dans ce cas l'utilisateur definit le -# materiau comme ci-dessous -# recuperation depuis une bibliothÚque de materiau => sera specife -# plus tard -MATERIAUX = MACRO(nom = 'MATERIAUX', - op = None, - sd_prod = Materiau, - reentrant = 'n', - UIinfo = {"groupes": ("Machine tournante",)}, - fr = "Renseignement des caracteristiques des materiaux", - TYPE_INTRO = SIMP(statut='o', - fr = "Mode de description des caracteristiques des materiaux", - typ='TXM', - into=('MANUELLE','FICHIER'), - min=1, - max=1, - defaut='MANUELLE', - ), # end TYPE_INTRO - PARAMETRES_MAT = BLOC(condition = "((TYPE_INTRO == 'MANUELLE') )", - #MASS_VOL = SIMP(statut='o', typ='R', min=1, max=1, fr='masse volumique'), - fr = "Saisie manuelle des caracteristiques du materiau", - RHO = SIMP(statut='o', - typ='R', - min=1, - max=1, - fr='Masse volumique (kg/m**3)', - ), # end RHO - E = SIMP(statut='o', - typ='R', - min=1, - max=1, - fr="Module d'Young (Pa)", - ), # end E - NU = SIMP(statut='o', - typ='R', - min=1, - max=1, - val_min=-1.0, - val_max=0.5, - fr='Coefficient de cisaillement (-1.0 <= NU <= 0.5)', - ), # end NU - ALPHA = SIMP(statut='f', - typ='R', - min=1, - max=1, - fr = "Coefficient permettant de construire une matrice d'amortissement visqueux proportionnel a la rigidite", - ), # end ALPHA - BETA = SIMP(statut='f', - typ='R', - min=1, - max=1, - fr = "Coefficient permettant de construire une matrice d'amortissement visqueux proportionnel a la masse", - ), # end BETA - GAMMA = SIMP(statut='f', - typ='R', - min=1, - max=1, - fr = "Coefficient d'amortissement hysteretique permettant de definir le module d'Young complexe", - ), # end GAMMA - ), # end PARAMETRES_MAT - FICHIER_MAT = BLOC(condition = "((TYPE_INTRO == 'FICHIER') )", - MATERIAU_CATALOGUE = SIMP(statut='o', - fr="Fichier decrivant les caracteristiques materiaux (format decrit dans le Manuel Utilisateur)", - min=1, - max=1, - typ=('Fichier','Fichier materiau (*.*)'), - ), # end MATERIAU_CATALOGUE - ), # end FICHIER_MAT - #SIMP(typ=('Fichier','JDC Files (*.comm)'),docu='',min=1,max=1,statut='o',defaut=None) - ) # end MATERIAU - - - -############################# ZONES ######################################## -ZONE = MACRO(nom = 'ZONE', - op = None, - sd_prod = Zone, - reentrant = 'n', - UIinfo = {"groupes":("Machine tournante",)}, - fr = "Description d'une zone (comportant noeuds et elements, et en option masses ponctuelles et fissures)", - regles = (AU_MOINS_UN("ELEMENTS")), - fenetreIhm='deplie1Niveau', - MASSE = FACT(statut='f', - min=0, - max='**', - fr = "Description des masses ponctuelles", - #POSITION = SIMP(statut='o', - NOEUD = SIMP(statut='o', - typ='TXM', - defaut=None, - fr = "Definition de la position axiale de la masse (label du noeud de la ligne d'arbres en vis-a-vis)", - ), # end POSITION - TYPE_MASSE = SIMP(statut='o', - typ='TXM', - fr = "Renseignement du type de masse consideree", - into=('DISQUE','AILETTE','QUELCONQUE'), - ), # end TYPE_MASSE - DISQUE = BLOC(condition = "((TYPE_MASSE == 'DISQUE') )", - TYPE_SAISIE = SIMP(statut='o', - typ='TXM', - fr = "Type de saisie des parametres du DISQUE", - into = ('MECANIQUE','GEOMETRIQUE'), - defaut = 'MECANIQUE' - ), # end TYPE_SAISIE - PARAMETRES_MECANIQUE = BLOC(condition = "TYPE_SAISIE == 'MECANIQUE'", - PARAMETRES = FACT(statut = 'o', - fr = "Parametres mecaniques pour un DISQUE", - MASSE = SIMP(statut='o', - typ='R', - val_min=0, - fr = "Masse du DISQUE (kg)", - ), # end MASSE_DISQUE - INERTIEX = SIMP(statut='o', - typ='R', - fr = "Inertie du DISQUE en X (kg.m**2)", - ), # end INERTIEX - INERTIEY = SIMP(statut='o', - typ='R', - fr = "Inertie du DISQUE en Y (kg.m**2)", - ), # end INERTIEY - INERTIEZ = SIMP(statut='o', - typ='R', - fr = "Inertie du DISQUE en Z (axe de rotation de la ligne d'arbres)(kg.m**2)", - ), # end INERTIEZ - ) # end PARAMETRES_DISQUE_M - ), # end PARAMETRES_MECANIQUE - PARAMETRES_GEOMETRIQUE = BLOC(condition = "TYPE_SAISIE == 'GEOMETRIQUE'", - PARAMETRES = FACT(statut = 'o', - fr = "Parametres geometriques pour un DISQUE", - DIAMETRE_EXT = SIMP(statut='o', - typ='R', - val_min=0, - fr = "Diametre exterieur du DISQUE (m)", - ), # end MASSE_DISQUE - DIAMETRE_INT = SIMP(statut='o', - typ='R', - fr = "Diametre interieur du DISQUE (m). Verifier le diametre exterieur du rotor avant saisie", - ), # end INERTIEX - EPAISSEUR = SIMP(statut='o', - typ='R', - val_min=0, - fr = "Epaisseur (dans la direction axiale) du DISQUE (m)", - ), # end INERTIEY - MATERIAU = SIMP(statut='o', - typ=Materiau, - fr = "Materiau constituant le DISQUE (doit avoir ete defini via une entree MATERIAUX)", - ), # end INERTIEZ - ) # nd PARAMETRES_DISQUE_G - ), # end PARAMETRES_MECANIQUE - ), # end DISQUE - AILETTE = BLOC(condition = "((TYPE_MASSE == 'AILETTE') )", - TYPE_SAISIE = SIMP(statut='o', - typ='TXM', - fr = "Type de saisie des parametres de la rangee d'AILETTES", - into = ('MECANIQUE','GEOMETRIQUE'), - defaut = 'MECANIQUE' - ), # end TYPE_SAISIE - PARAMETRES_MECANIQUE = BLOC(condition = "TYPE_SAISIE == 'MECANIQUE'", - PARAMETRES = FACT(statut = 'o', - fr = "Parametres mecaniques de la rangee d'AILETTES", - MASSE = SIMP(statut='o', - typ='R', - val_min=0, - fr = "Masse de la rangee d'AILETTES (kg)", - ), # end MASSE_AILETTE - INERTIEX = SIMP(statut='o', - typ='R', - fr = "Inertie de la rangee d'AILETTES en X (kg.m**2)", - ), # end INERTIEX - INERTIEY = SIMP(statut='o', - typ='R', - fr = "Inertie de la rangee d'AILETTES en Y (kg.m**2)", - ), # end INERTIEY - INERTIEZ = SIMP(statut='o', - typ='R', - fr = "Inertie de la rangee d'AILETTES en Z (axe de rotation de la ligne d'arbres) (kg.m**2)", - ), # end INERTIEZ - ) # nd PARAMETRES_AILETTE_M - ), # end PARAMETRES_MECANIQUE - PARAMETRES_GEOMETRIQUE = BLOC(condition = "TYPE_SAISIE == 'GEOMETRIQUE'", - PARAMETRES = FACT(statut = 'o', - fr = "Parametres geometriques d'une AILETTE", - MASSE_AILETTE = SIMP(statut='o', - typ='R', - val_min=0, - fr = "Masse d'une AILETTE (kg)", - ), # end MASSE_AILETTE - RAYON = SIMP(statut='o', - typ='R', - val_min=0, - fr = "Distance entre le pied de l'AILETTE et le centre de rotation (m). Verifier le diametre exterieur du rotor avant saisie", - ), # end RAYON - HAUTEUR = SIMP(statut='o', - typ='R', - val_min=0, - fr = "Distance entre les deux extremites de l'AILETTE (m)", - ), # end HAUTEUR - BASE = SIMP(statut='o', - typ='R', - val_min=0, - fr = "Largeur du pied de l'AILETTE (m)", - ), # end BASE - NOMBRE = SIMP(statut='o', - typ='I', - val_min=1, - fr = "Nombre d'AILETTES dans la rangee", - ), - ) # end PARAMETRES_DISQUE - ), # end PARAMETRES_MECANIQUE - ), # end AILETTE - QUELCONQUE = BLOC(condition = "((TYPE_MASSE == 'QUELCONQUE') )", - #TYPE_SAISIE = SIMP(statut='c',typ='TXM',defaut="MECANIQUE"), # cf 20120622 test : mot-clé caché - PARAMETRES = FACT(statut = 'o', - fr = "Parametres pour masse de type QUELCONQUE", - MASSE = SIMP(statut='o', - typ='R', - val_min=0, - fr = "Masse (m)", - ), # end MASSE - INERTIEX = SIMP(statut='o', - typ='R', - fr = "Inertie en X (kg.m**2)", - ), # end INERTIEX - INERTIEY = SIMP(statut='o', - typ='R', - fr = "Inertie en Y (kg.m**2)", - ), # end INERTIEY - INERTIEZ = SIMP(statut='o', - typ='R', - fr = "Inertie en Z (axe de rotation de la ligne d'arbres) (kg.m**2)", - ), # end INERTIEZ - ), # end PARAMETRES_QUELCONQUE - ), # end QUELCONQUE - ), # end MASSE - NOEUDS = SIMP(fr = "Definition des noeuds de la zone (2 noeuds minimum)", - fenetreIhm='Tableau', - homo = ('NOM','POSITION_AXIALE'), - statut='o', - min=2, - max='**', - typ = Tuple(2), - validators=VerifTypeTuple(('TXM','R')), - ), # end NOEUDS - # NOEUDS = FACT(fr = "Definition des noeuds de la zone (2 noeuds minimum)", - # statut='o', - # min=2, - # max='**', - # NOM = SIMP(statut='o', - # typ='TXM', - # fr="Label du noeud", - # ), # end NOM - # POSITION_AXIALE = SIMP(statut='o', - # typ='R', - # defaut=0.0, - # val_min=0.0, - # fr = "Position axiale du noeud (relative par rapport au debut de la zone (1er noeud a 0m)) (m)", - # ), # end X - # ), # end NOEUDS - ELEMENTS = FACT(fr = "Definition des elements poutre de la zone", - statut='o', - min=1, - max='**', - NOM = SIMP(statut='o', - typ='TXM', - fr="Label de l'element" - ), # end NOM - NOEUD_DEBUT = SIMP(statut='o', - typ='TXM', - fr= "Noeud de debut de l'element poutre (label d'un noeud)" - ), # end DEBUT - NOEUD_FIN = SIMP(statut='o', - typ='TXM', - fr= "Noeud de fin de l'element poutre (label d'un noeud)" - ), # end FIN - RAFFINEMENT = SIMP(fr = "Choix de raffiner l'element poutre", - statut='o', - typ='TXM', - into=('OUI','NON'), - defaut='NON' - ), # end RAFFINEMENT - PARAM_RAFFINEMENT = BLOC(fr = "Nombre de points supplementaires a ajouter pour le raffinement (nombre elements : 1 -> nb points + 1)", - condition = "((RAFFINEMENT == 'OUI') )", - NB_POINTS_SUPPL = SIMP(statut='o', - typ='I' - ), # end NB_POINTS_SUPPL - ), # end PARAM_RAFFINEMENT - MATERIAU = SIMP(statut='o', - typ=Materiau, - fr= "Materiau constituant l'element poutre (doit avoir ete defini via une entree MATERIAUX)" - ), # end MATERIAU - SECTION_MASSE = FACT(statut='o', - fr = "Section a partir de laquelle est determinee la masse de l'element poutre", - TYPE_SECTION = SIMP(statut='o', - fr = "Choix d'une section de dimensions constantes ou variables", - typ='TXM', - into=('CONSTANTE','VARIABLE'), - defaut='CONSTANTE', - ), # end TYPE_SECTION - DIAM_EXTERN_DEBUT = SIMP(statut='o', - typ='R', - fr = "Diametre exterieur en debut d'element poutre (m)", - ), # end DIAM_EXTERN_DEBUT - DIAM_INTERN_DEBUT = SIMP(statut='o', - typ='R', - fr = "Diametre interieur en debut d'element poutre (m) (different de 0 si element creux)", - ), # end DIAM_INTERN_DEBUT - PARAMETRE_SECT_VAR = BLOC(condition = "((TYPE_SECTION == 'VARIABLE') )", - fr = "Renseignement des dimensions de fin d'element (variation lineaire entre le debut et la fin)", - DIAM_EXTERN_SORTIE = SIMP(statut='o', - typ='R', - fr = "Diametre exterieur en fin d'element (m)", - ), # end DIAM_EXTERN_SORTIE - DIAM_INTERN_SORTIE = SIMP(statut='o', - typ='R', - fr = "Diametre interieur en fin d'element (m)", - ), # DIAM_INTERN_SORTIE - ), - ), # end SECTION_MASSE - SECTION_RIGIDITE = FACT(statut='f', - fr = "Section a partir de laquelle est determinee la rigidite de l'element poutre", - TYPE_SECTION = SIMP(statut='o', - fr = "Choix d'une section de dimensions constantes ou variables", - typ='TXM', - into=('CONSTANTE','VARIABLE'), - defaut='CONSTANTE', - ), # end TYPE_SECTION - DIAM_EXTERN_DEBUT = SIMP(statut='o', - typ='R', - fr = "Diametre exterieur en debut d'element poutre (m)", - ), # end DIAM_EXTERN_DEBUT - DIAM_INTERN_DEBUT = SIMP(statut='o', - typ='R', - fr = "Diametre interieur en debut d'element poutre (m) (different de 0 si element creux)", - ), # end DIAM_INTERN_DEBUT - PARAMETRE_SECT_VAR = BLOC(condition = "((TYPE_SECTION == 'VARIABLE') )", - fr = "Renseignement des dimensions de fin d'element (variation lineaire entre le debut et la fin)", - DIAM_EXTERN_SORTIE = SIMP(statut='o', - typ='R', - fr = "Diametre exterieur en fin d'element (m)", - ), # end DIAM_EXTERN_SORTIE - DIAM_INTERN_SORTIE = SIMP(statut='o', - typ='R', - fr = "Diametre interieur en fin d'element (m)", - ), # end DIAM_INTERN_SORTIE - ), # end PARAMETRE_SECT_VAR - ), # end SECTION_RIGIDITE - ), # end ELEMENTS - FISSURE = FACT(statut='f', - fr="Description d'une fissure sur un noeud de l'arbre (licite uniquement si les elements poutres a gauche et a droite du noeud ont des sections masse et rigidite constantes)", - MATERIAU = SIMP(statut='o', - typ=Materiau, - fr="Materiau a la position de la fissure (doit avoir ete defini via une entree MATERIAUX)" - ), # end MATERIAU - NOEUD_FISSURE = SIMP(statut='o', - typ='TXM', - fr="Label du noeud ou est positionnee la fissure", - ), # end POSITION_FISSURE - ORIENTATION_FISSURE = SIMP(statut='o', - typ='R', - fr="Angle initial du fond de fissure par rapport à sa définition dans la loi de comportement de fissure (0. par defaut)(degres)", - ), # end ORIENTATION_FISSURE - FICHIER_RAIDEUR = SIMP(statut='o', - typ=('Fichier','Fichier loi de raideur (*.*)'), - fr="Fichier contenant la loi de comportement en raideur de la fissure", - ), # end FICHIER_RAIDEUR - DIAMETRE = SIMP(statut='o', - typ='R', - fr="Diametre du rotor a l'emplacement de la fissure (m)", - ), # end DIAMETRE - ), # end FISSURE - - ) # end ZONE - -############################# PALIERS ######################################## -PALIER = MACRO(nom = 'PALIER', - op = None, - sd_prod = Palier, - reentrant = 'n', - UIinfo = {"groupes":("Machine tournante",)}, - fr = "Description d'un palier radial", - POSITION = SIMP(statut='o', - typ='R', - defaut=0.0, - fr = "Position axiale (absolue) du palier radial (m)", - ), # end POSITION - NOM_NOEUD = SIMP(statut='f', - typ='TXM', - fr=u"Nom du noeud dans le cas où plusieurs noeuds se trouvent à la même position axiale"), - TYPE_PALIER = SIMP(statut='o', - fr = "Type de palier radial", - typ='TXM', - into=('PALIER LINEAIRE','PALIER NON-LINEAIRE','LAME FLUIDE'), - ), # end TYPE_PALIER - PALIER_LINEAIRE = BLOC(condition = "((TYPE_PALIER == 'PALIER LINEAIRE') )", - fr = "Description d'un palier radial lineaire", - TYPE_SAISIE = SIMP(statut='o', - fr = "Mode de description des caracteristiques du palier radial lineaire", - typ='TXM', - into=('MANUELLE', 'CATALOGUE'), - ), # end TYPE_SAISIE - MANUELLE = BLOC(condition = "((TYPE_SAISIE == 'MANUELLE') )", - fr = "Saisie manuelle des caracteristiques du palier radial lineaire", - CARAC_PALIER = FACT(statut = 'o',max='**',fr = "Caracteristiques du palier par vitesse de rotation de la ligne d'arbres", - VITESSE_ROTATION = SIMP(statut='o', - typ='R', - fr= "Vitesse de rotation (tr/min)", - ), # end VITESSE_ROTATION - SYME = SIMP(statut = 'o', - typ = 'TXM', - max = 1, - fr = "Symetrie des matrices du palier radial lineaire (KXY=KYX et AXY=AYX)", - into = ('OUI','NON'), - defaut = 'OUI', - ), # end SYME - RIGIDITE_NS = BLOC(condition="(SYME=='NON')", - RIGIDITE=FACT(statut='o',fr="Renseignement des caracteristiques non-symetriques de rigidite du palier radial lineaire", - KXX = SIMP(statut = 'o', - typ = 'R', - max = 1, - fr = "Valeur de KXX dans la matrice de rigidite (N/m)", - ),# end KXX - KXY = SIMP(statut = 'o', - typ = 'R', - max = 1, - fr = "Valeur de KXY dans la matrice de rigidite (N/m)", - ),# end KXY - KYX = SIMP(statut = 'o', - typ = 'R', - max = 1, - fr = "Valeur de KYX dans la matrice de rigidite (N/m)", - ),# end KYX - KYY = SIMP(statut = 'o', - typ = 'R', - max = 1, - fr = "Valeur de KYY dans la matrice de rigidite (N/m)", - ),# end KYY - ), # end RIGIDITE - ), # end RIGIDITE_S - RIGIDITE_S = BLOC(condition="(SYME=='OUI')", - RIGIDITE=FACT(statut='o',fr="Renseignement des caracteristiques symetriques de rigidite du palier radial lineaire", - KXX = SIMP(statut = 'o', - typ = 'R', - max = 1, - fr = "Valeur de KXX dans la matrice de rigidite (N/m)", - ),# end KXX - KXY = SIMP(statut = 'o', - typ = 'R', - max = 1, - fr = "Valeur de KXY dans la matrice de rigidite (N/m)", - ),# end KXY - KYY = SIMP(statut = 'o', - typ = 'R', - max = 1, - fr = "Valeur de KYY dans la matrice de rigidite (N/m)", - ),# end KYY - ), # end RIGIDITE - ), # end RIGIDITE_NS - AMORTISSEMENT_NS = BLOC(condition="(SYME=='NON')", - AMORTISSEMENT=FACT(statut='o',fr="Renseignement des caracteristiques non-symetriques d'amortissement du palier radial lineaire", - AXX = SIMP(statut = 'o', - typ = 'R', - max = 1, - fr = "Valeur de AXX dans la matrice d'amortissement (N.s/m)", - ),# end AXX - AXY = SIMP(statut = 'o', - typ = 'R', - max = 1, - fr = "Valeur de AXY dans la matrice d'amortissement (N.s/m)", - ),# end AXY - AYX = SIMP(statut = 'o', - typ = 'R', - max = 1, - fr = "Valeur de AYX dans la matrice d'amortissement (N.s/m)", - ),# end AYX - AYY = SIMP(statut = 'o', - typ = 'R', - max = 1, - fr = "Valeur de AYY dans la matrice d'amortissement (N.s/m)", - ),# end AYY - ), # end AMORTISSEMENT - ), # end AMORTISSEMENT_NS - AMORTISSEMENT_S = BLOC(condition="(SYME=='OUI')", - AMORTISSEMENT=FACT(statut='o',fr="Renseignement des caracteristiques symetriques d'amortissement du palier radial lineaire", - AXX = SIMP(statut = 'o', - typ = 'R', - max = 1, - fr = "Valeur de AXX dans la matrice d'amortissement (N.s/m)", - ),# end AXX - AXY = SIMP(statut = 'o', - typ = 'R', - max = 1, - fr = "Valeur de AXY dans la matrice d'amortissement (N.s/m)", - ),# end AXY - AYY = SIMP(statut = 'o', - typ = 'R', - max = 1, - fr = "Valeur de AYY dans la matrice d'amortissement (N.s/m)", - ),# end AYY - ), # end AMORTISSEMENT - ), # end AMORTISSEMENT_S - ), # end CARAC_PALIER - ), # end MANUELLE - CATALOGUE = BLOC(condition = "((TYPE_SAISIE == 'CATALOGUE') )", - fr = "Renseignement des fichiers contenant les caracteristiques du palier radial lineaire", - CATALOGUE_AMORTISSEMENT = SIMP(statut='o', - min=1, - max=1, - typ='Fichier', - fr="Fichier decrivant les caracteristiques d'amortissement (N.s/m) du palier radial lineaire (format decrit dans le Manuel Utilisateur)", - ), # end CATALOGUE_AMORTISSEMENT - CATALOGUE_RIGIDITE = SIMP(statut='o', - min=1, - max=1, - typ='Fichier', - fr="Fichier decrivant les caracteristiques de rigidite (N/m) du palier radial lineaire (format decrit dans le Manuel Utilisateur)", - ), # end CATALOGUE_RIGIDITE - ), # end CATALOGUE - ), # end PALIER_LINEAIRE - LAME_FLUIDE = BLOC(condition = "((TYPE_PALIER == 'LAME FLUIDE') )", - fr = "Description d'une lame fluide", - TYPE_SAISIE = SIMP(statut='o', - fr = "Mode de description des caracteristiques de la lame fluide", - typ='TXM', - defaut = 'MANUELLE', - #into=('MANUELLE', 'CATALOGUE'), #Fonctionnalite catalogue non encore implementee - into=('MANUELLE',), - ), # end TYPE_SAISIE - MANUELLE = BLOC(condition = "((TYPE_SAISIE == 'MANUELLE') )", - fr = "Saisie manuelle des caracteristiques de la lame fluide", - CARAC_PALIER = FACT(statut = 'o',max='**',fr = "Caracteristiques de la lame fluide par vitesse de rotation de la ligne d'arbres", - SYME = SIMP(statut = 'o', - typ = 'TXM', - max = 1, - fr = "Symetrie des matrices de la lame fluide (KXY=KYX et AXY=AYX)", - into = ('OUI','NON'), - defaut = 'OUI', - ), # end SYME - RIGIDITE_NS = BLOC(condition="(SYME=='NON')", - RIGIDITE=FACT(statut='o',fr="Renseignement des caracteristiques non-symetriques de rigidite de la lame fluide", - KXX = SIMP(statut = 'o', - typ = 'R', - max = 1, - fr = "Valeur de KXX dans la matrice de rigidite (N/m)", - ),# end KXX - KXY = SIMP(statut = 'o', - typ = 'R', - max = 1, - fr = "Valeur de KXY dans la matrice de rigidite (N/m)", - ),# end KXY - KYX = SIMP(statut = 'o', - typ = 'R', - max = 1, - fr = "Valeur de KYX dans la matrice de rigidite (N/m)", - ),# end KYX - KYY = SIMP(statut = 'o', - typ = 'R', - max = 1, - fr = "Valeur de KYY dans la matrice de rigidite (N/m)", - ),# end KYY - ),# end RIGIDITE - ), # end RIGIDITE_NS - RIGIDITE_S = BLOC(condition="(SYME=='OUI')", - RIGIDITE=FACT(statut='o',fr="Renseignement des caracteristiques symetriques de rigidite de la lame fluide", - KXX = SIMP(statut = 'o', - typ = 'R', - max = 1, - fr = "Valeur de KXX dans la matrice de rigidite (N/m)", - ),# end KXX - KXY = SIMP(statut = 'o', - typ = 'R', - max = 1, - fr = "Valeur de KXY dans la matrice de rigidite (N/m)", - ),# end KXY - KYY = SIMP(statut = 'o', - typ = 'R', - max = 1, - fr = "Valeur de KYY dans la matrice de rigidite (N/m)", - ),# end KYY - ), # end RIGIDITE - ), # end RIGIDITE_S - AMORTISSEMENT_NS = BLOC(condition="(SYME=='NON')", - AMORTISSEMENT=FACT(statut='o',fr="Renseignement des caracteristiques non-symetriques d'amortissement de la lame fluide", - AXX = SIMP(statut = 'o', - typ = 'R', - max = 1, - fr = "Valeur de AXX dans la matrice d'amortissement (N.s/m)", - ),# end AXX - AXY = SIMP(statut = 'o', - typ = 'R', - max = 1, - fr = "Valeur de AXY dans la matrice d'amortissement (N.s/m)", - ),# end AXY - AYX = SIMP(statut = 'o', - typ = 'R', - max = 1, - fr = "Valeur de AYX dans la matrice d'amortissement (N.s/m)", - ),# end AYX - AYY = SIMP(statut = 'o', - typ = 'R', - max = 1, - fr = "Valeur de AYY dans la matrice d'amortissement (N.s/m)", - ),# end AYY - ), # end AMORTISSEMENT - ), # end AMORTISSEMENT - #), # end AMORTISSEMENT_NS - AMORTISSEMENT_S = BLOC(condition="(SYME=='OUI')", - AMORTISSEMENT=FACT(statut='o',fr="Renseignement des caracteristiques symetriques d'amortissement de la lame fluide", - AXX = SIMP(statut = 'o', - typ = 'R', - max = 1, - fr = "Valeur de AXX dans la matrice d'amortissement (N.s/m)", - ),# end AXX - AXY = SIMP(statut = 'o', - typ = 'R', - max = 1, - fr = "Valeur de AXY dans la matrice d'amortissement (N.s/m)", - ),# end AXY - AYY = SIMP(statut = 'o', - typ = 'R', - max = 1, - fr = "Valeur de AYY dans la matrice d'amortissement (N.s/m)", - ),# end AYY - ), # end AMORTISSEMENT - ), # end AMORTISSEMENT_S - MASSE_NS = BLOC(condition="(SYME=='NON')", - MASSE=FACT(statut='o',fr="Renseignement des caracteristiques non symetriques de masse de la lame fluide", - MXX = SIMP(statut = 'o', - typ = 'R', - max = 1, - fr = "Valeur de MXX dans la matrice de masse (kg)", - ),# end MXX - MXY = SIMP(statut = 'o', - typ = 'R', - max = 1, - fr = "Valeur de MXY dans la matrice de masse (kg)", - ),# end MXY - MYX = SIMP(statut = 'o', - typ = 'R', - max = 1, - fr = "Valeur de MYX dans la matrice de masse (kg)", - ),# end MYX - MYY = SIMP(statut = 'o', - typ = 'R', - max = 1, - fr = "Valeur de MYY dans la matrice de masse (kg)", - ),# end MYY - ), # end MASSE - ), # end MASSE_NS - MASSE_S = BLOC(condition="(SYME=='OUI')", - MASSE=FACT(statut='o',fr="Renseignement des caracteristiques symetriques de masse de la lame fluide", - MXX = SIMP(statut = 'o', - typ = 'R', - max = 1, - fr = "Valeur de MXX dans la matrice de masse (kg)", - ),# end MXX - MXY = SIMP(statut = 'o', - typ = 'R', - max = 1, - fr = "Valeur de MXY dans la matrice de masse (kg)", - ),# end MXY - MYY = SIMP(statut = 'o', - typ = 'R', - max = 1, - fr = "Valeur de MYY dans la matrice de masse (kg)", - ),# end MYY - ), # end MASSE - ), # end MASSE_S - VITESSE_ROTATION = SIMP(statut='o', - typ='R', - fr= "Vitesse de rotation (tr/min)", - ), # end VITESSE_ROTATION - ), # end CARAC_PALIER - ), # end MANUELLE - #Fonctionnalite non encore implementee - CATALOGUE = BLOC(condition = "((TYPE_SAISIE == 'CATALOGUE') )", - PALIERS_CATALOGUE = SIMP(statut='o', - min=1, - max=1, - typ='Fichier', - fr="Format du fichier : CSV.", - ), # end PALIERS_CATALOGUE - ), # end CATALOGUE - - ), # end LAME_FLUIDE - PALIER_NON_LINEAIRE = BLOC(condition = "((TYPE_PALIER == 'PALIER NON-LINEAIRE') )", - fr = "Description d'un palier non-lineaire (licite uniquement en cas d'analyse de type 'TRANSITOIRE ACCIDENTEL'", - TYPE = SIMP(statut='o', - typ='TXM', - into=('PAPANL','PAFINL','PAHYNL','PACONL'), - defaut=None, - fr="Type de palier non-lineaire parmi ceux proposes dans Edyos", - ), # end TYPE - REPERTOIRE_EDYOS = SIMP(statut='o', - typ=('Repertoire'), - defaut=None, - fr="Repertoire 'CDC' du palier non-lineaire utilise (les fichiers Geometrie et Donnees doivent exister dans les repertoires parents respectivement de niveau 2 et 1 de CDC)", - ), # end REPERTOIRE_EDYOS - ), # end PALIER_NON_LINEAIRE - ) # end PALIER - -PALIER_TORSION=MACRO(nom="PALIER_TORSION", - op=None, - sd_prod=PalTor, - reentrant='n', - UIinfo={"groupes":("Machine tournante",)}, - fr="Description d'un palier de torsion", - POSITION = SIMP(statut='o',typ='R',defaut=0.0,fr = "Position axiale (absolue) du palier de torsion (m)",), # end POSITION - TYPE_SAISIE = SIMP(statut='o',typ='TXM',into=('MANUELLE',),fr = "Mode de description des caracteristiques du palier de torsion",), # end TYPE_SAISIE - MANUELLE = BLOC(condition = "((TYPE_SAISIE == 'MANUELLE') )", - fr = "Saisie manuelle des caracteristiques du palier de torsion", - CARAC_PALIER = FACT(statut = 'o',max=1,fr = "Caracteristiques du palier par vitesse de rotation de l'arbre", - VITESSE_ROTATION = SIMP(statut='o',typ='R',min=1,max='**',fr= "Liste des vitesses de rotation (tr/min)",), # end VITESSE_ROTATION - KRZ = SIMP(statut = 'o',typ = 'R',min=1,max = '**',fr = "Liste des caracteristiques de rigidite (N/m) du palier de torsion en fonction de la vitesse de rotation",),# end KRZ - ARZ = SIMP(statut = 'o',typ = 'R',min=1,max = '**',fr = "Liste des caracteristiques d'amortissement (N.s/m) du palier de torsion en fonction de la vitesse de rotation",),# end ARZ - MRZ = SIMP(statut = 'f',typ = 'R',min=1,max = '**',fr = "Liste des caracteristiques de masse ajoutee (kg) du palier de torsion en fonction de la vitesse de rotation",),# end MRZ - ),#end CARAC_PALIER - ), # end MANUELLE - #Fonctionnalite pas encore implementee - CATALOGUE = BLOC(condition = "((TYPE_SAISIE == 'CATALOGUE') )", - fr = "Renseignement des fichiers contenant les caracteristiques du palier de torsion", - CATA_PALIER = SIMP(statut='o',min=1,max=1,typ='Fichier',fr="Format du fichier : CSV.",), # end CATA_PALIER - ), # end CATALOGUE - )#end PALIER TORSION - -BUTEE=MACRO(nom="BUTEE", - op=None, - sd_prod=Butee, - reentrant='n', - UIinfo={"groupes":("Machine tournante",)}, - fr="Description d'une butee", - POSITION = SIMP(statut='o',typ='R',defaut=0.0,fr = "Position axiale (absolue) de la butee (m)",), # end POSITION - TYPE_BUTEE = SIMP(statut='o',typ='TXM',into=('BUTEE LINEAIRE',),fr = "Type de butee",), # end TYPE_BUTEE, BUTEE NON LINEAIRE reintegrable - BUTEE_LINEAIRE=BLOC(condition="TYPE_BUTEE=='BUTEE LINEAIRE'", - fr = "Description d'une butee lineaire", - TYPE_SAISIE = SIMP(statut='o',typ='TXM',into=('MANUELLE',),fr = "Mode de description des caracteristiques de la butee lineaire",), # end TYPE_SAISIE; 'CATALOGUE' reintegrable - MANUELLE=BLOC(condition="TYPE_SAISIE=='MANUELLE'", - fr = "Saisie manuelle des caracteristiques de la butee lineaire", - CARAC_BUTEE=FACT(statut='o',max=1,fr="Caracteristiques de la butee en fonction de la vitesse de rotation", - VITESSE_ROTATION=SIMP(statut='o',typ='R',min=1,max='**',fr="Liste des vitesses de rotation (tr/min)",), - SYMETRIQUE=SIMP(statut='o',typ='TXM',min=1,max=1,into=("OUI","NON"),defaut="OUI",fr="Symetrie des matrices de la butee (KRXRY=KRYRX , ARXRY=ARYRX et MRXRY=MRYRX)",), - - RIGIDITE_NS = BLOC(condition="(SYMETRIQUE=='NON')", - RIGIDITE=FACT(statut='o',max=1,fr="Caracteristiques non-symetriques de rigidite de la butee lineaire en fonction de la vitesse de rotation", - KZZ=SIMP(statut='o',typ='R',min=1,max='**',fr="Rigidite axiale (N/m) de la butee lineaire en fonction de la vitesse de rotation"), - KRXRX=SIMP(statut='f',typ='R',min=1,max='**',fr="Rigidite directe de rotation autour de l'axe X (N/m) de la butee lineaire en fonction de la vitesse de rotation"), - KRXRY=SIMP(statut='f',typ='R',min=1,max='**',fr="Rigidite croisee de rotation autour de l'axe X (N/m) de la butee lineaire en fonction de la vitesse de rotation"), - KRYRX=SIMP(statut='f',typ='R',min=1,max='**',fr="Rigidite croisee de rotation autour de l'axe Y (N/m) de la butee lineaire en fonction de la vitesse de rotation"), - KRYRY=SIMP(statut='f',typ='R',min=1,max='**',fr="Rigidite directe de rotation autour de l'axe Y (N/m) de la butee lineaire en fonction de la vitesse de rotation"), - ), #END RIGIDITE - ),#END RIGIDITE_NS - RIGIDITE_S = BLOC(condition="(SYMETRIQUE=='OUI')", - RIGIDITE=FACT(statut='o',max=1,fr="Caracteristiques symetriques de rigidite de la butee lineaire en fonction de la vitesse de rotation", - KZZ=SIMP(statut='o',typ='R',min=1,max='**',fr="Rigidite axiale (N/m) de la butee lineaire en fonction de la vitesse de rotation"), - KRXRX=SIMP(statut='f',typ='R',min=1,max='**',fr="Rigidite directe de rotation autour de l'axe X (N/m) de la butee lineaire en fonction de la vitesse de rotation"), - KRXRY=SIMP(statut='f',typ='R',min=1,max='**',fr="Rigidite croisee de rotation autour de l'axe X (N/m) de la butee lineaire en fonction de la vitesse de rotation"), - KRYRY=SIMP(statut='f',typ='R',min=1,max='**',fr="Rigidite directe de rotation autour de l'axe Y (N/m) de la butee lineaire en fonction de la vitesse de rotation"), - ), #END RIGIDITE - ),#END RIGIDITE_S - - AMORTISSEMENT_NS = BLOC(condition="(SYMETRIQUE=='NON')", - AMORTISSEMENT=FACT(statut='o',max=1,fr="Caracteristiques non-symetriques d'amortissement de la butee lineaire en fonction de la vitesse de rotation", - AZZ=SIMP(statut='o',typ='R',min=1,max='**',fr="Amortissement axial (N.s/m) de la butee lineaire en fonction de la vitesse de rotation"), - ARXRX=SIMP(statut='f',typ='R',min=1,max='**',fr="Amortissement direct de rotation autour de l'axe X (N.s/m) de la butee lineaire en fonction de la vitesse de rotation"), - ARXRY=SIMP(statut='f',typ='R',min=1,max='**',fr="Amortissement croise de rotation autour de l'axe X (N.s/m) de la butee lineaire en fonction de la vitesse de rotation"), - ARYRX=SIMP(statut='f',typ='R',min=1,max='**',fr="Amortissement croise de rotation autour de l'axe Y (N.s/m) de la butee lineaire en fonction de la vitesse de rotation"), - ARYRY=SIMP(statut='f',typ='R',min=1,max='**',fr="Amortissement croise de rotation autour de l'axe Y (N.s/m) de la butee lineaire en fonction de la vitesse de rotation"), - ),#END AMORTISSEMENT - ),#END AMORTISSEMENT_NS - AMORTISSEMENT_S = BLOC(condition="(SYMETRIQUE=='OUI')", - AMORTISSEMENT=FACT(statut='o',max=1,fr="Caracteristiques symetriques d'amortissement de la butee lineaire en fonction de la vitesse de rotation", - AZZ=SIMP(statut='o',typ='R',min=1,max='**',fr="Amortissement axial (N.s/m) de la butee lineaire en fonction de la vitesse de rotation"), - ARXRX=SIMP(statut='f',typ='R',min=1,max='**',fr="Amortissement direct de rotation autour de l'axe X (N.s/m) de la butee lineaire en fonction de la vitesse de rotation"), - ARXRY=SIMP(statut='f',typ='R',min=1,max='**',fr="Amortissement croise de rotation autour de l'axe X (N.s/m) de la butee lineaire en fonction de la vitesse de rotation"), - ARYRY=SIMP(statut='f',typ='R',min=1,max='**',fr="Amortissement croise de rotation autour de l'axe Y (N.s/m) de la butee lineaire en fonction de la vitesse de rotation"), - ),#END AMORTISSEMENT - ),#END AMORTISSEMENT_S - - INERTIE_NS = BLOC(condition="(SYMETRIQUE=='NON')", - INERTIE=FACT(statut='f',max=1,fr="Caracteristiques non-symetriques de masse ajoutee de la butee lineaire en fonction de la vitesse de rotation", - MZZ=SIMP(statut='f',typ='R',min=1,max='**',fr="Masse ajoutee axiale (kg) de la butee lineaire en fonction de la vitesse de rotation"), - MRXRX=SIMP(statut='f',typ='R',min=1,max='**',fr="Masse ajoutee directe de rotation autour de l'axe X (kg) de la butee lineaire en fonction de la vitesse de rotation"), - MRXRY=SIMP(statut='f',typ='R',min=1,max='**',fr="Masse ajoutee croisee de rotation autour de l'axe X (kg) de la butee lineaire en fonction de la vitesse de rotation"), - MRYRX=SIMP(statut='f',typ='R',min=1,max='**',fr="Masse ajoutee croisee de rotation autour de l'axe Y (kg) de la butee lineaire en fonction de la vitesse de rotation"), - MRYRY=SIMP(statut='f',typ='R',min=1,max='**',fr="Masse ajoutee croisee de rotation autour de l'axe Y (kg) de la butee lineaire en fonction de la vitesse de rotation"), - ),#END INERTIE - ),#END INERTIE_NS - INERTIE_S = BLOC(condition="(SYMETRIQUE=='OUI')", - INERTIE=FACT(statut='f',max=1,fr="Caracteristiques symetriques de masse ajoutee de la butee lineaire en fonction de la vitesse de rotation", - MZZ=SIMP(statut='f',typ='R',min=1,max='**',fr="Masse ajoutee axiale (kg) de la butee lineaire en fonction de la vitesse de rotation"), - MRXRX=SIMP(statut='f',typ='R',min=1,max='**',fr="Masse ajoutee directe de rotation autour de l'axe X (kg) de la butee lineaire en fonction de la vitesse de rotation"), - MRXRY=SIMP(statut='f',typ='R',min=1,max='**',fr="Masse ajoutee croisee de rotation autour de l'axe X (kg) de la butee lineaire en fonction de la vitesse de rotation"), - MRYRY=SIMP(statut='f',typ='R',min=1,max='**',fr="Masse ajoutee croisee de rotation autour de l'axe Y (kg) de la butee lineaire en fonction de la vitesse de rotation"), - ),#END INERTIE - ),#END INERTIE_S - - ),#END CARA_BUTEE - ),#end MANUELLE - CATALOGUE=BLOC(condition="TYPE_SAISIE=='CATALOGUE'", - fr = "Renseignement des fichiers contenant les caracteristiques de la butee lineaire", - ),#END CATALOGUE - ),#END BUTEE LINEAIRE - - BUTEE_NON_LINEAIRE=BLOC(condition="TYPE_BUTEE=='BUTEE NON LINEAIRE'", - fr = "Description d'une butee non-lineaire", - ),#END BUTEE NON LINEAIRE - - );#END BUTEE - -############################# SUPPORT ######################################## -SUPPORT = MACRO(nom = "SUPPORT", - op = None, - sd_prod = Support, - reentrant = 'n', - UIinfo = {"groupes":("Machine tournante",)}, - fr = "Description d'un support ", - TYPE_SUPPORT = SIMP(statut='o', - fr = "Type de support", - typ='TXM', - defaut="RIGIDE", - into=("RIGIDE", "SIMPLIFIE", "GENERALISE", ), - ), # end TYPE_SUPPORT - SIMPLIFIE = BLOC(condition = "((TYPE_SUPPORT == 'SIMPLIFIE') )", - fr = "Description d'un support simplifie", - RIGIDITE = FACT(statut='o', fr = "Renseignement des caracteristiques de rigidite du support simplifie", - KXX = SIMP(statut = 'o', - typ = 'R', - max = 1, - fr = "Valeur de KXX dans la matrice de rigidite (N/m)", - ),# end KXX - KXY = SIMP(statut = 'o', - typ = 'R', - max = 1, - fr = "Valeur de KXY dans la matrice de rigidite (N/m)", - ),# end KXY - KYX = SIMP(statut = 'o', - typ = 'R', - max = 1, - fr = "Valeur de KYX dans la matrice de rigidite (N/m)", - ),# end KYX - KYY = SIMP(statut = 'o', - typ = 'R', - max = 1, - fr = "Valeur de KYY dans la matrice de rigidite (N/m)", - ),# end KYY - ), # end RIGIDITE - AMORTISSEMENT = FACT(statut='o', fr= "Renseignement des caracteristiques d'amortissement du support simplifie", - AXX = SIMP(statut = 'o', - typ = 'R', - max = 1, - fr = "Valeur de AXX dans la matrice d'amortissement (N.s/m)", - ),# end AXX - AXY = SIMP(statut = 'o', - typ = 'R', - max = 1, - fr = "Valeur de AXY dans la matrice d'amortissement (N.s/m)", - ),# end AXY - AYX = SIMP(statut = 'o', - typ = 'R', - max = 1, - fr = "Valeur de AYX dans la matrice d'amortissement (N.s/m)", - ),# end AYX - AYY = SIMP(statut = 'o', - typ = 'R', - max = 1, - fr = "Valeur de AYY dans la matrice d'amortissement (N.s/m)", - ),# end AYY - ), # end AMORTISSEMENT - MASSE = FACT(statut='o', fr= "Renseignement des caracteristiques de masse du support simplifie", - MXX = SIMP(statut = 'o', - typ = 'R', - max = 1, - fr = "Valeur de MXX dans la matrice de masse (kg)", - ),# end MXX - MXY = SIMP(statut = 'o', - typ = 'R', - max = 1, - fr = "Valeur de MXY dans la matrice de masse (kg)", - ),# end MXY - MYX = SIMP(statut = 'o', - typ = 'R', - max = 1, - fr = "Valeur de MYX dans la matrice de masse (kg)", - ),# end MYX - MYY = SIMP(statut = 'o', - typ = 'R', - max = 1, - fr = "Valeur de MYY dans la matrice de masse (kg)", - ),# end MYY - ), # end MASSE - ), # end SIMPLIFIE - GENERALISE = BLOC(condition = "((TYPE_SUPPORT == 'GENERALISE') )", - fr = "Description d'un support generalise", - ANGL_NAUT = SIMP(statut='f', - fr="Rotation du modele du support generalise a effectuer pour coincider avec le repere de la ligne d'arbres (rotation autour de X, puis Y, puis Z (degres))", - typ='R', - min=3,max=3, - ), # end ANGL_NAUT - TRANS = SIMP(statut='f', - fr="Translation du modele du support generalise a effectuer pour que ses noeuds de connexion soient confondus avec ceux de la ligne d'arbres (translation suivant X, Y et Z (m))", - typ='R', - min=3,max=3, - ), # end TRANS - MAIL_TDG = SIMP(statut='o', - fr="Fichier du maillage du support generalise", - typ=("Fichier","Fichier maillage TdG (*.*)"), - min=1,max=1, - ), # end MAIL_TDG - COMM_TDG = SIMP(statut='o', - fr="Fichier de la mise en donnees du support generalise", - typ=("Fichier","Fichier commande TdG (*.*)"), - min=1,max=1, - ), # end COMM_TDG - NOM_MACRO_ELEMENT_DYNAMIQUE = SIMP(statut='o', - fr="Nom du macro element dynamique cree pour le support generalise", - typ='TXM', - min=1,max=1, - ), # end NOM_MACRO_ELEMENT_DYNAMIQUE - NOM_INTERFACE = SIMP(statut='o', - fr="Nom de l'interface cree pour le support generalise", - typ='TXM', - min=1,max=1, - ), # end NOM_INTERFACE - NOM_GROUP_MA_MASSIF = SIMP(statut='o', - fr="Nom du groupe de maille representant le support generalise", - typ='TXM', - min=1,max=1, - ), # end NOM_GROUP_MA_MASSIF - REDUIT = SIMP(statut='f', - fr="Introduction du mot-cle REDUIT pour le cas ou le nombre d'interfaces n'est pas identique entre le support generalise et la ligne d'arbres", - typ='TXM', - into=("OUI",), - defaut="OUI", - ), # end REDUIT - ), # end GENERALISE - ) # end SUPPORT - -############################# LIGNE_ARBRE ######################################## -LIGNE_ARBRE = MACRO(nom = 'LIGNE_ARBRE', - op = None, - sd_prod = LigneArbre, - reentrant = 'n', - UIinfo = {"groupes":("Machine tournante",)}, - fr = "Description de la ligne d'arbres", - ZONES = SIMP(statut='o', - fr = "Zone(s) composant la ligne d'arbres (choisir, en faisant attention a l'ordre, parmi les entrees ZONE creees)", - typ=Zone, - min=1, - max='**', - ), # end ZONES - PALIERS = SIMP(statut='o', - fr = "Paliers supportant la ligne d'arbres (choisir, en faisant attention a l'ordre, parmi les entrees PALIER creees)", - typ=Palier, - min=2, - max='**', - ), # end PALIERS - BUTEES = SIMP(statut='f', - fr = "Butee(s) guidant axialement la ligne d'arbres (choisir, en faisant attention a l'ordre, parmi les entrees BUTEES creees)", - typ=Butee, - max='**' - ),#end BUTEE - PALIERS_TORSION=SIMP(statut='f', - fr = "Palier(s) de torsion de la ligne d'arbres (choisir, en faisant attention a l'ordre, parmi les entrees PALIERS_TORSION creees)", - typ=PalTor, - max='**' - ),#end PALIERS_TORSION - SUPPORTS = SIMP(statut='o', - fr = "Supports sous les paliers (choisir, en faisant attention a l'ordre, parmi les entrees SUPPORTS creees)", - typ=Support, - min=1, - max='**', - ), # end SUPPORTS - ) # end LIGNE_ARBRE - diff --git a/MT/configuration_MT.py b/MT/configuration_MT.py deleted file mode 100644 index a1f225ac..00000000 --- a/MT/configuration_MT.py +++ /dev/null @@ -1,42 +0,0 @@ -# -*- coding: utf-8 -*- -# CONFIGURATION MANAGEMENT OF EDF VERSION -# ====================================================================== -# COPYRIGHT (C) 1991 - 2002 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# -# -# ====================================================================== -""" - Ce module sert pour charger les paramètres de configuration d'EFICAS -""" -# Modules Python -from InterfaceQT4 import configuration -import os - - -class CONFIG(configuration.configBase): - - #----------------------------------- - def __init__(self,appli,repIni): - #----------------------------------- - - self.labels_user=['catalogues','lang'] - self.labels_eficas=['lang','rep_cata','catalogues'] - configuration.configBase.__init__(self,appli,repIni) - - -def make_config(appli,rep): - return CONFIG(appli,rep) - diff --git a/MT/mesScripts_MT.py b/MT/mesScripts_MT.py deleted file mode 100644 index 6adce62c..00000000 --- a/MT/mesScripts_MT.py +++ /dev/null @@ -1,97 +0,0 @@ -def view_zone(listeparam) : - item=listeparam[0] - from mt.visu import visu_geom - visu_zone = visu_geom.VisuGeom(from_eficas=True, - eficas_item=item, - ligne_arbre=False) - visu_zone.visualize() - -def view_ligne_arbre(listeparam) : - item=listeparam[0] - from mt.visu import visu_geom - visu_arbre = visu_geom.VisuGeom(from_eficas=True, - eficas_item=item, - ligne_arbre=True) - visu_arbre.visualize() - -def import_zone_MT(listeparam): - from PyQt5.QtWidgets import QFileDialog - - # selection fichier - fn = QFileDialog.getOpenFileName() - if not fn : return - FichieraTraduire=str(fn[0]) - - # lancement traduction - from mt.visu import traduire_catalogue_zone - tr=traduire_catalogue_zone.TraductionZone(file1=FichieraTraduire) - result,texte=tr.traduireZone() - - if result==True : - txt="sansnom="+texte - editor=listeparam[0] - itemWidget=listeparam[1] - editor.updateJdcEtape(itemWidget,txt) - - -def import_zone(listeparam): - #texte="ZONE(NOEUDS=(_F(NOM='N1',POSITION_AXIALE=0.0,), _F(NOM='N2',POSITION_AXIALE=0.1,), _F(NOM='N3',POSITION_AXIALE=0.2,), _F(NOM='N4',POSITION_AXIALE=0.3,),),)," - #texte="sansnom="+texte - editor=listeparam[0] - itemWidget=listeparam[1] - itemParent=itemWidget.vraiParent - index = itemWidget.vraiParent.children.index(itemWidget) - - #print editor.updateJdc - #editor.updateJdc(itemWidget,txt) - retour = editor.updateJdcEtape(itemWidget,texte) - if retour : - - oldItem=itemParent.children[index] - oldItem.select() - oldItem.supprimeNoeud() - -def import_zone_from_menu(editor,etape): - #print ('import_zone_from_menu', editor,etape) - #texte="ZONE(NOEUDS=(_F(NOM='N1',POSITION_AXIALE=0.0,), _F(NOM='N2',POSITION_AXIALE=0.1,), _F(NOM='N3',POSITION_AXIALE=0.2,), _F(NOM='N4',POSITION_AXIALE=0.3,),),)," - from txtZonePN2018 import texte - print (etape) - #retour = editor.updateJdcAfterEtape(etape,texte) - editor.updateJdc(etape,texte) - -def import_ligne(editor, etapeCourante): - print ('in import_ligne') - -# le dictionnaire des commandes a la structure suivante : -# la clef est la commande qui va proposer l action -# puis un tuple qui contient -# - la fonction a appeler -# - le label dans le menu du clic droit -# - un tuple contenant les parametres attendus par la fonction -# - appelable depuis Salome uniquement -) -# - appelable depuis un item valide uniquement -# - toolTip -dict_commandes={ - 'LIGNE_ARBRE':((view_ligne_arbre,"View",('item',),False,True,"affiche dans Geom la representation de la ligne d'arbre"),), - 'ZONE':( (view_zone,"View",('item',),False,True,"affiche dans Geom la representation de la zone "), - #(import_zone,"import_zone",('editor','self'),False,False,"import de fichier zone") - ) - } - -# le dictionnaire des menus a la structure suivante -# la clef qui est le titre du menu -# (pour l instant 1 seul menu) --> devlop si besoin de plusieurs menus -# une liste de tuple -# - -# Chaque tuple contient -# - la fonction a appeler -# - le label dans le menu -# - un tuple contenant les parametres attendus par la fonction -dict_menu = { - 'Ajout Elts' : ( - #(import_zone,"import_zone",('editor','self'),False,False,"import de fichier zone"), - (import_zone_from_menu,"import_zone_from_menu",('editor','etapeCourante'),), - (import_ligne,"import_ligne",('editor','etapeCourante'),), - ) - } diff --git a/MT/prefs.py b/MT/prefs.py deleted file mode 100644 index 7f8d8fa1..00000000 --- a/MT/prefs.py +++ /dev/null @@ -1,22 +0,0 @@ -# Copyright (C) 2007-2012 EDF R&D -# -# 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 -# -code="MT" -import sys, os -if os.path.dirname(os.path.abspath(__file__)) not in sys.path : - sys.path.insert(0,os.path.dirname(os.path.abspath(__file__))) diff --git a/MT/prefs_MT.py b/MT/prefs_MT.py deleted file mode 100644 index 52a1987c..00000000 --- a/MT/prefs_MT.py +++ /dev/null @@ -1,46 +0,0 @@ -# -*- coding: utf-8 -*- -# maConfiguration MANAGEMENT OF EDF VERSION -# ====================================================================== -# COPYRIGHT (C) 1991 - 2002 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# -# -# ====================================================================== - -import os,sys -# repIni sert a localiser le fichier editeur.ini -# Obligatoire -repIni=os.path.dirname(os.path.abspath(__file__)) -INSTALLDIR=os.path.join(repIni,'..') -sys.path[:0]=[INSTALLDIR] - - -# lang indique la langue utilisee pour les chaines d'aide : fr ou ang -lang='fr' - -# Codage des strings qui accepte les accents (en remplacement de 'ascii') -encoding='iso-8859-1' - -# -catalogues=( - #('MT','V2017',os.path.join(repIni,'MT_Cata_V2017.py'),'python','python'), - ('MT','V2018',os.path.join(repIni,'MT_Cata_V2018.py'),'python','python'), -) -nombreDeBoutonParLigne=4 -simpleClic=True -#closeFrameRechercheCommande=True -closeParenthese=True -boutonDsMenuBar=True -ficIcones='images.dicoDesIcones' diff --git a/MT/properties.py b/MT/properties.py deleted file mode 100644 index 1d328a46..00000000 --- a/MT/properties.py +++ /dev/null @@ -1,24 +0,0 @@ -#@ MODIF properties Accas DATE 11/06/2008 AUTEUR aster M.ADMINISTRATEUR -# RESPONSABLE D6BHHHH J-P.LEFEBVRE -# ====================================================================== -# COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# IDENTIFICATION DU GESTIONNAIRE DE COMMANDE ACCAS A PARTIR -# DE LA VERSION DU CODE_ASTER ASSOCIE -#---------------------------------------------------------------------- -version = "1.2" -date = "25/05/2010" -exploit = False diff --git a/MT/qtEficasMT.py b/MT/qtEficasMT.py deleted file mode 100755 index 61ac60d4..00000000 --- a/MT/qtEficasMT.py +++ /dev/null @@ -1,48 +0,0 @@ -#!/usr/bin/env python -# -*- coding: utf-8 -*- -# Copyright (C) 2007-2013 EDF R&D -# -# 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 -# -""" - Ce module sert a lancer EFICAS configure pour MAP -""" -# Modules Python -# Modules Eficas -import prefs -name='prefs_'+prefs.code -__import__(name) - -import sys -reload(sys) -sys.setdefaultencoding('latin1') -import os -sys.path.append(os.path.join(os.path.abspath(os.path.dirname(__file__)),'..')) - -import prefs -from InterfaceQT4 import eficas_go -import cProfile, pstats, StringIO -pr = cProfile.Profile() -pr.enable() -#eficas_go.lanceEficas_ssIhm_reecrit(code='MT',fichier = 'gros_modele_MT.comm',ou = 'toto',cr=True) -eficas_go.lanceEficas(code=prefs.code) -pr.disable() -s = StringIO.StringIO() -sortby = 'cumulative' -ps = pstats.Stats(pr, stream=s).sort_stats(sortby) -ps.print_stats() -print s.getValue() diff --git a/MT/reecrit_comm.py_VOprofile.py b/MT/reecrit_comm.py_VOprofile.py deleted file mode 100755 index d2e65961..00000000 --- a/MT/reecrit_comm.py_VOprofile.py +++ /dev/null @@ -1,58 +0,0 @@ -#!/usr/bin/env python -# -*- coding: utf-8 -*- -# maConfiguration MANAGEMENT OF EDF VERSION -# ====================================================================== -# COPYRIGHT (C) 1991 - 2002 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# -# -# ====================================================================== - -""" -""" -# Modules Python -from __future__ import absolute_import - -import sys,os - -# Modules Eficas -import prefs -if hasattr(prefs,'encoding'): - # Hack pour changer le codage par defaut des strings - import sys - reload(sys) - sys.setdefaultencoding(prefs.encoding) - del sys.setdefaultencoding - # Fin hack - - -sys.path.append(os.path.join(os.path.abspath(os.path.dirname(__file__)),'..')) -from InterfaceQT4 import eficas_go - -from PyQt5.QtWidgets import QApplication -app = QApplication(sys.argv) -# on veut ouvrir un fichier directement au lancement d'Eficas - - -import cProfile, pstats, StringIO -pr = cProfile.Profile() -pr.enable() -eficas_go.lanceEficas_ssIhm_reecrit(code='MT',fichier = 'gros_modele_MT.comm',ou = 'toto',cr=True) -pr.disable() -s = StringIO.StringIO() -sortby = 'cumulative' -ps = pstats.Stats(pr, stream=s).sort_stats(sortby) -ps.print_stats() -print s.getValue() diff --git a/MT/sdll124a.machine b/MT/sdll124a.machine deleted file mode 100644 index ecc40046..00000000 --- a/MT/sdll124a.machine +++ /dev/null @@ -1,207 +0,0 @@ - -DIRE=DIRECTION(AXE='HORIZONTAL',); - -MAT=MATERIAUX(TYPE_INTRO='MANUELLE', - RHO=7800.0, - E=2e+11, - NU=0.3,); - -P1=PALIER(POSITION=0.0, - TYPE_PALIER='PALIER LINEAIRE', - TYPE_SAISIE='MANUELLE', - CARAC_PALIER=( - _F(VITESSE_ROTATION=0.0, - SYME='NON', - RIGIDITE=_F(KXX=70000000.0, - KXY=0.0, - KYX=0.0, - KYY=50000000.0,), - AMORTISSEMENT=_F(AXX=700.0, - AXY=0.0, - AYX=0.0, - AYY=500.0,),), - _F(VITESSE_ROTATION=None, - SYME='OUI', - RIGIDITE=_F(KXX=None, - KXY=None, - KYY=None,), - AMORTISSEMENT=_F(AXX=None, - AXY=None, - AYY=None,),),),); - -P2=PALIER(POSITION=1.3, - TYPE_PALIER='PALIER LINEAIRE', - TYPE_SAISIE='MANUELLE', - CARAC_PALIER=_F(VITESSE_ROTATION=0.0, - SYME='NON', - RIGIDITE=_F(KXX=70000000.0, - KXY=0.0, - KYX=0.0, - KYY=50000000.0,), - AMORTISSEMENT=_F(AXX=700.0, - AXY=0.0, - AYX=0.0, - AYY=500.0,),),); - -Z=ZONE(MASSE=(_F(NOEUD='N3', - TYPE_MASSE='DISQUE', - TYPE_SAISIE='GEOMETRIQUE', - PARAMETRES=_F(DIAMETRE_EXT=0.24, - DIAMETRE_INT=0.1, - EPAISSEUR=0.05, - MATERIAU=MAT,),), - _F(NOEUD='N6', - TYPE_MASSE='DISQUE', - TYPE_SAISIE='GEOMETRIQUE', - PARAMETRES=_F(DIAMETRE_EXT=0.4, - DIAMETRE_INT=0.1, - EPAISSEUR=0.05, - MATERIAU=MAT,),), - _F(NOEUD='N11', - TYPE_MASSE='DISQUE', - TYPE_SAISIE='GEOMETRIQUE', - PARAMETRES=_F(DIAMETRE_EXT=0.4, - DIAMETRE_INT=0.1, - EPAISSEUR=0.06, - MATERIAU=MAT,),),), - NOEUDS=(_F(NOM='N1', - POSITION_AXIALE=0.0,), - _F(NOM='N2', - POSITION_AXIALE=0.0,), - _F(NOM='N3', - POSITION_AXIALE=0.0,), - _F(NOM='N4', - POSITION_AXIALE=0.0,), - _F(NOM='N5', - POSITION_AXIALE=0.0,), - _F(NOM='N6', - POSITION_AXIALE=0.0,), - _F(NOM='N7', - POSITION_AXIALE=0.0,), - _F(NOM='N8', - POSITION_AXIALE=0.0,), - _F(NOM='N9', - POSITION_AXIALE=0.0,), - _F(NOM='N10', - POSITION_AXIALE=0.0,), - _F(NOM='N11', - POSITION_AXIALE=0.0,), - _F(NOM='N12', - POSITION_AXIALE=0.0,), - _F(NOM='N13', - POSITION_AXIALE=0.0,), - _F(NOM='N14', - POSITION_AXIALE=0.0,),), - ELEMENTS=(_F(NOM='E1', - NOEUD_DEBUT=None, - NOEUD_FIN=None, - RAFFINEMENT='NON', - MATERIAU=MAT, - SECTION_MASSE=_F(TYPE_SECTION='CONSTANTE', - DIAM_EXTERN_DEBUT=0.1, - DIAM_INTERN_DEBUT=0.0,),), - _F(NOM='E2', - NOEUD_DEBUT=None, - NOEUD_FIN=None, - RAFFINEMENT='NON', - MATERIAU=MAT, - SECTION_MASSE=_F(TYPE_SECTION='CONSTANTE', - DIAM_EXTERN_DEBUT=0.1, - DIAM_INTERN_DEBUT=0.0,),), - _F(NOM='E3', - NOEUD_DEBUT=None, - NOEUD_FIN=None, - RAFFINEMENT='NON', - MATERIAU=MAT, - SECTION_MASSE=_F(TYPE_SECTION='CONSTANTE', - DIAM_EXTERN_DEBUT=0.1, - DIAM_INTERN_DEBUT=0.0,),), - _F(NOM='E4', - NOEUD_DEBUT=None, - NOEUD_FIN=None, - RAFFINEMENT='NON', - MATERIAU=MAT, - SECTION_MASSE=_F(TYPE_SECTION='CONSTANTE', - DIAM_EXTERN_DEBUT=0.1, - DIAM_INTERN_DEBUT=0.0,),), - _F(NOM='E5', - NOEUD_DEBUT=None, - NOEUD_FIN=None, - RAFFINEMENT='NON', - MATERIAU=MAT, - SECTION_MASSE=_F(TYPE_SECTION='CONSTANTE', - DIAM_EXTERN_DEBUT=0.1, - DIAM_INTERN_DEBUT=0.0,),), - _F(NOM='E6', - NOEUD_DEBUT=None, - NOEUD_FIN=None, - RAFFINEMENT='NON', - MATERIAU=MAT, - SECTION_MASSE=_F(TYPE_SECTION='CONSTANTE', - DIAM_EXTERN_DEBUT=0.1, - DIAM_INTERN_DEBUT=0.0,),), - _F(NOM='E7', - NOEUD_DEBUT=None, - NOEUD_FIN=None, - RAFFINEMENT='NON', - MATERIAU=MAT, - SECTION_MASSE=_F(TYPE_SECTION='CONSTANTE', - DIAM_EXTERN_DEBUT=0.1, - DIAM_INTERN_DEBUT=0.0,),), - _F(NOM='E8', - NOEUD_DEBUT=None, - NOEUD_FIN=None, - RAFFINEMENT='NON', - MATERIAU=MAT, - SECTION_MASSE=_F(TYPE_SECTION='CONSTANTE', - DIAM_EXTERN_DEBUT=0.1, - DIAM_INTERN_DEBUT=0.0,),), - _F(NOM='E9', - NOEUD_DEBUT=None, - NOEUD_FIN=None, - RAFFINEMENT='NON', - MATERIAU=MAT, - SECTION_MASSE=_F(TYPE_SECTION='CONSTANTE', - DIAM_EXTERN_DEBUT=0.1, - DIAM_INTERN_DEBUT=0.0,),), - _F(NOM='E10', - NOEUD_DEBUT=None, - NOEUD_FIN=None, - RAFFINEMENT='NON', - MATERIAU=MAT, - SECTION_MASSE=_F(TYPE_SECTION='CONSTANTE', - DIAM_EXTERN_DEBUT=0.1, - DIAM_INTERN_DEBUT=0.0,),), - _F(NOM='E11', - NOEUD_DEBUT=None, - NOEUD_FIN=None, - RAFFINEMENT='NON', - MATERIAU=MAT, - SECTION_MASSE=_F(TYPE_SECTION='CONSTANTE', - DIAM_EXTERN_DEBUT=0.1, - DIAM_INTERN_DEBUT=0.0,),), - _F(NOM='E12', - NOEUD_DEBUT=None, - NOEUD_FIN=None, - RAFFINEMENT='NON', - MATERIAU=MAT, - SECTION_MASSE=_F(TYPE_SECTION='CONSTANTE', - DIAM_EXTERN_DEBUT=0.1, - DIAM_INTERN_DEBUT=0.0,),), - _F(NOM='E13', - NOEUD_DEBUT=None, - NOEUD_FIN=None, - RAFFINEMENT='NON', - MATERIAU=MAT, - SECTION_MASSE=_F(TYPE_SECTION='CONSTANTE', - DIAM_EXTERN_DEBUT=0.1, - DIAM_INTERN_DEBUT=0.0,),),),); - -SUPP=SUPPORT(TYPE_SUPPORT='RIGIDE',); - -LA=LIGNE_ARBRE(DIRECTION=DIRE, - ZONES=Z, - PALIERS=(P1,P2,), - SUPPORTS=SUPP,); -#VERSION_CATALOGUE:2016.0.0:FIN VERSION_CATALOGUE -#CHECKSUM:285dfc315d1960bb4f61ff9617312f36 -:FIN CHECKSUM \ No newline at end of file diff --git a/MT/txtZone.py b/MT/txtZone.py deleted file mode 100644 index 89f4204f..00000000 --- a/MT/txtZone.py +++ /dev/null @@ -1,227 +0,0 @@ -texte="ZONE(NOEUDS=(_F(NOM='N1',POSITION_AXIALE=0.0,),\ - _F(NOM='N2',POSITION_AXIALE=0.1,),\ - _F(NOM='N3',POSITION_AXIALE=0.2,),\ - _F(NOM='N4',POSITION_AXIALE=0.3,),\ - _F(NOM='N5',POSITION_AXIALE=0.4,),\ - _F(NOM='N6',POSITION_AXIALE=0.5,),\ - _F(NOM='N7',POSITION_AXIALE=0.6,),\ - _F(NOM='N8',POSITION_AXIALE=0.7,),\ - _F(NOM='N9',POSITION_AXIALE=0.8,),\ - _F(NOM='N10',POSITION_AXIALE=0.9,),\ - _F(NOM='N11',POSITION_AXIALE=1.0,),\ - _F(NOM='N12',POSITION_AXIALE=1.1,),\ - _F(NOM='N13',POSITION_AXIALE=1.2,),\ - _F(NOM='N14',POSITION_AXIALE=1.3,),\ -),\ - ELEMENTS=(_F(NOM='E1',\ - NOEUD_DEBUT='N1',\ - NOEUD_FIN='N2',\ - RAFFINEMENT='NON',\ - MATERIAU=MAT,\ - SECTION_MASSE=_F(TYPE_SECTION='VARIABLE',\ - DIAM_EXTERN_DEBUT=0.1,\ - DIAM_INTERN_DEBUT=0.0,\ - DIAM_EXTERN_SORTIE=0.1,\ - DIAM_INTERN_SORTIE=0.0,),\ - SECTION_RIGIDITE=_F(TYPE_SECTION='VARIABLE',\ - DIAM_EXTERN_DEBUT=0.11,\ - DIAM_INTERN_DEBUT=0.0,\ - DIAM_EXTERN_SORTIE=0.11,\ - DIAM_INTERN_SORTIE=0.0,),),\ - _F(NOM='E2',\ - NOEUD_DEBUT='N2',\ - NOEUD_FIN='N3',\ - RAFFINEMENT='NON',\ - MATERIAU=MAT,\ - SECTION_MASSE=_F(TYPE_SECTION='VARIABLE',\ - DIAM_EXTERN_DEBUT=0.1,\ - DIAM_INTERN_DEBUT=0.0,\ - DIAM_EXTERN_SORTIE=0.1,\ - DIAM_INTERN_SORTIE=0.0,),\ - SECTION_RIGIDITE=_F(TYPE_SECTION='VARIABLE',\ - DIAM_EXTERN_DEBUT=0.11,\ - DIAM_INTERN_DEBUT=0.0,\ - DIAM_EXTERN_SORTIE=0.11,\ - DIAM_INTERN_SORTIE=0.0,),),\ - _F(NOM='E3',\ - NOEUD_DEBUT='N3',\ - NOEUD_FIN='N4',\ - RAFFINEMENT='NON',\ - MATERIAU=MAT,\ - SECTION_MASSE=_F(TYPE_SECTION='VARIABLE',\ - DIAM_EXTERN_DEBUT=0.1,\ - DIAM_INTERN_DEBUT=0.0,\ - DIAM_EXTERN_SORTIE=0.1,\ - DIAM_INTERN_SORTIE=0.0,),\ - SECTION_RIGIDITE=_F(TYPE_SECTION='VARIABLE',\ - DIAM_EXTERN_DEBUT=0.11,\ - DIAM_INTERN_DEBUT=0.0,\ - DIAM_EXTERN_SORTIE=0.11,\ - DIAM_INTERN_SORTIE=0.0,),),\ - _F(NOM='E4',\ - NOEUD_DEBUT='N4',\ - NOEUD_FIN='N5',\ - RAFFINEMENT='NON',\ - MATERIAU=MAT,\ - SECTION_MASSE=_F(TYPE_SECTION='VARIABLE',\ - DIAM_EXTERN_DEBUT=0.1,\ - DIAM_INTERN_DEBUT=0.0,\ - DIAM_EXTERN_SORTIE=0.1,\ - DIAM_INTERN_SORTIE=0.0,),\ - SECTION_RIGIDITE=_F(TYPE_SECTION='VARIABLE',\ - DIAM_EXTERN_DEBUT=0.11,\ - DIAM_INTERN_DEBUT=0.0,\ - DIAM_EXTERN_SORTIE=0.11,\ - DIAM_INTERN_SORTIE=0.0,),),\ - _F(NOM='E5',\ - NOEUD_DEBUT='N5',\ - NOEUD_FIN='N6',\ - RAFFINEMENT='NON',\ - MATERIAU=MAT,\ - SECTION_MASSE=_F(TYPE_SECTION='VARIABLE',\ - DIAM_EXTERN_DEBUT=0.1,\ - DIAM_INTERN_DEBUT=0.0,\ - DIAM_EXTERN_SORTIE=0.1,\ - DIAM_INTERN_SORTIE=0.0,),\ - SECTION_RIGIDITE=_F(TYPE_SECTION='VARIABLE',\ - DIAM_EXTERN_DEBUT=0.11,\ - DIAM_INTERN_DEBUT=0.0,\ - DIAM_EXTERN_SORTIE=0.11,\ - DIAM_INTERN_SORTIE=0.0,),),\ - _F(NOM='E6',\ - NOEUD_DEBUT='N6',\ - NOEUD_FIN='N7',\ - RAFFINEMENT='NON',\ - MATERIAU=MAT,\ - SECTION_MASSE=_F(TYPE_SECTION='VARIABLE',\ - DIAM_EXTERN_DEBUT=0.1,\ - DIAM_INTERN_DEBUT=0.0,\ - DIAM_EXTERN_SORTIE=0.1,\ - DIAM_INTERN_SORTIE=0.0,),\ - SECTION_RIGIDITE=_F(TYPE_SECTION='VARIABLE',\ - DIAM_EXTERN_DEBUT=0.11,\ - DIAM_INTERN_DEBUT=0.0,\ - DIAM_EXTERN_SORTIE=0.11,\ - DIAM_INTERN_SORTIE=0.0,),),\ - _F(NOM='E7',\ - NOEUD_DEBUT='N7',\ - NOEUD_FIN='N8',\ - RAFFINEMENT='NON',\ - MATERIAU=MAT,\ - SECTION_MASSE=_F(TYPE_SECTION='VARIABLE',\ - DIAM_EXTERN_DEBUT=0.1,\ - DIAM_INTERN_DEBUT=0.05,\ - DIAM_EXTERN_SORTIE=0.1,\ - DIAM_INTERN_SORTIE=0.05,),\ - SECTION_RIGIDITE=_F(TYPE_SECTION='VARIABLE',\ - DIAM_EXTERN_DEBUT=0.11,\ - DIAM_INTERN_DEBUT=0.05,\ - DIAM_EXTERN_SORTIE=0.11,\ - DIAM_INTERN_SORTIE=0.05,),),\ - _F(NOM='E8',\ - NOEUD_DEBUT='N8',\ - NOEUD_FIN='N9',\ - RAFFINEMENT='NON',\ - MATERIAU=MAT,\ - SECTION_MASSE=_F(TYPE_SECTION='VARIABLE',\ - DIAM_EXTERN_DEBUT=0.1,\ - DIAM_INTERN_DEBUT=0.0,\ - DIAM_EXTERN_SORTIE=0.1,\ - DIAM_INTERN_SORTIE=0.0,),\ - SECTION_RIGIDITE=_F(TYPE_SECTION='VARIABLE',\ - DIAM_EXTERN_DEBUT=0.11,\ - DIAM_INTERN_DEBUT=0.0,\ - DIAM_EXTERN_SORTIE=0.11,\ - DIAM_INTERN_SORTIE=0.0,),),\ - _F(NOM='E9',\ - NOEUD_DEBUT='N9',\ - NOEUD_FIN='N10',\ - RAFFINEMENT='NON',\ - MATERIAU=MAT,\ - SECTION_MASSE=_F(TYPE_SECTION='VARIABLE',\ - DIAM_EXTERN_DEBUT=0.1,\ - DIAM_INTERN_DEBUT=0.0,\ - DIAM_EXTERN_SORTIE=0.1,\ - DIAM_INTERN_SORTIE=0.0,),\ - SECTION_RIGIDITE=_F(TYPE_SECTION='VARIABLE',\ - DIAM_EXTERN_DEBUT=0.11,\ - DIAM_INTERN_DEBUT=0.0,\ - DIAM_EXTERN_SORTIE=0.11,\ - DIAM_INTERN_SORTIE=0.0,),),\ - _F(NOM='E10',\ - NOEUD_DEBUT='N10',\ - NOEUD_FIN='N11',\ - RAFFINEMENT='NON',\ - MATERIAU=MAT,\ - SECTION_MASSE=_F(TYPE_SECTION='VARIABLE',\ - DIAM_EXTERN_DEBUT=0.1,\ - DIAM_INTERN_DEBUT=0.0,\ - DIAM_EXTERN_SORTIE=0.1,\ - DIAM_INTERN_SORTIE=0.0,),\ - SECTION_RIGIDITE=_F(TYPE_SECTION='VARIABLE',\ - DIAM_EXTERN_DEBUT=0.11,\ - DIAM_INTERN_DEBUT=0.0,\ - DIAM_EXTERN_SORTIE=0.11,\ - DIAM_INTERN_SORTIE=0.0,),),\ - _F(NOM='E11',\ - NOEUD_DEBUT='N11',\ - NOEUD_FIN='N12',\ - RAFFINEMENT='NON',\ - MATERIAU=MAT,\ - SECTION_MASSE=_F(TYPE_SECTION='VARIABLE',\ - DIAM_EXTERN_DEBUT=0.1,\ - DIAM_INTERN_DEBUT=0.0,\ - DIAM_EXTERN_SORTIE=0.1,\ - DIAM_INTERN_SORTIE=0.0,),\ - SECTION_RIGIDITE=_F(TYPE_SECTION='VARIABLE',\ - DIAM_EXTERN_DEBUT=0.11,\ - DIAM_INTERN_DEBUT=0.0,\ - DIAM_EXTERN_SORTIE=0.11,\ - DIAM_INTERN_SORTIE=0.0,),),\ - _F(NOM='E12',\ - NOEUD_DEBUT='N12',\ - NOEUD_FIN='N13',\ - RAFFINEMENT='NON',\ - MATERIAU=MAT,\ - SECTION_MASSE=_F(TYPE_SECTION='VARIABLE',\ - DIAM_EXTERN_DEBUT=0.1,\ - DIAM_INTERN_DEBUT=0.0,\ - DIAM_EXTERN_SORTIE=0.1,\ - DIAM_INTERN_SORTIE=0.0,),\ - SECTION_RIGIDITE=_F(TYPE_SECTION='VARIABLE',\ - DIAM_EXTERN_DEBUT=0.11,\ - DIAM_INTERN_DEBUT=0.0,\ - DIAM_EXTERN_SORTIE=0.11,\ - DIAM_INTERN_SORTIE=0.0,),),\ - _F(NOM='E13',\ - NOEUD_DEBUT='N13',\ - NOEUD_FIN='N14',\ - RAFFINEMENT='NON',\ - MATERIAU=MAT,\ - SECTION_MASSE=_F(TYPE_SECTION='VARIABLE',\ - DIAM_EXTERN_DEBUT=0.1,\ - DIAM_INTERN_DEBUT=0.0,\ - DIAM_EXTERN_SORTIE=0.1,\ - DIAM_INTERN_SORTIE=0.0,),\ - SECTION_RIGIDITE=_F(TYPE_SECTION='VARIABLE',\ - DIAM_EXTERN_DEBUT=0.11,\ - DIAM_INTERN_DEBUT=0.0,\ - DIAM_EXTERN_SORTIE=0.11,\ - DIAM_INTERN_SORTIE=0.0,),),\ -),\ - MASSE=(_F(NOEUD='N5',\ - TYPE_MASSE='AILETTE',\ - TYPE_SAISIE='MECANIQUE',\ - PARAMETRES=_F(MASSE=1.3,\ - INERTIEX=0.1,\ - INERTIEY=0.1,\ - INERTIEZ=0.05,),),\ - _F(NOEUD='N8',\ - TYPE_MASSE='QUELCONQUE',\ - PARAMETRES=_F(MASSE=1.2,\ - INERTIEX=0.0,\ - INERTIEY=0.0,\ - INERTIEZ=0.0,),),\ -),\ -),\ -" diff --git a/MT/txtZonePN.py b/MT/txtZonePN.py deleted file mode 100644 index 89f4204f..00000000 --- a/MT/txtZonePN.py +++ /dev/null @@ -1,227 +0,0 @@ -texte="ZONE(NOEUDS=(_F(NOM='N1',POSITION_AXIALE=0.0,),\ - _F(NOM='N2',POSITION_AXIALE=0.1,),\ - _F(NOM='N3',POSITION_AXIALE=0.2,),\ - _F(NOM='N4',POSITION_AXIALE=0.3,),\ - _F(NOM='N5',POSITION_AXIALE=0.4,),\ - _F(NOM='N6',POSITION_AXIALE=0.5,),\ - _F(NOM='N7',POSITION_AXIALE=0.6,),\ - _F(NOM='N8',POSITION_AXIALE=0.7,),\ - _F(NOM='N9',POSITION_AXIALE=0.8,),\ - _F(NOM='N10',POSITION_AXIALE=0.9,),\ - _F(NOM='N11',POSITION_AXIALE=1.0,),\ - _F(NOM='N12',POSITION_AXIALE=1.1,),\ - _F(NOM='N13',POSITION_AXIALE=1.2,),\ - _F(NOM='N14',POSITION_AXIALE=1.3,),\ -),\ - ELEMENTS=(_F(NOM='E1',\ - NOEUD_DEBUT='N1',\ - NOEUD_FIN='N2',\ - RAFFINEMENT='NON',\ - MATERIAU=MAT,\ - SECTION_MASSE=_F(TYPE_SECTION='VARIABLE',\ - DIAM_EXTERN_DEBUT=0.1,\ - DIAM_INTERN_DEBUT=0.0,\ - DIAM_EXTERN_SORTIE=0.1,\ - DIAM_INTERN_SORTIE=0.0,),\ - SECTION_RIGIDITE=_F(TYPE_SECTION='VARIABLE',\ - DIAM_EXTERN_DEBUT=0.11,\ - DIAM_INTERN_DEBUT=0.0,\ - DIAM_EXTERN_SORTIE=0.11,\ - DIAM_INTERN_SORTIE=0.0,),),\ - _F(NOM='E2',\ - NOEUD_DEBUT='N2',\ - NOEUD_FIN='N3',\ - RAFFINEMENT='NON',\ - MATERIAU=MAT,\ - SECTION_MASSE=_F(TYPE_SECTION='VARIABLE',\ - DIAM_EXTERN_DEBUT=0.1,\ - DIAM_INTERN_DEBUT=0.0,\ - DIAM_EXTERN_SORTIE=0.1,\ - DIAM_INTERN_SORTIE=0.0,),\ - SECTION_RIGIDITE=_F(TYPE_SECTION='VARIABLE',\ - DIAM_EXTERN_DEBUT=0.11,\ - DIAM_INTERN_DEBUT=0.0,\ - DIAM_EXTERN_SORTIE=0.11,\ - DIAM_INTERN_SORTIE=0.0,),),\ - _F(NOM='E3',\ - NOEUD_DEBUT='N3',\ - NOEUD_FIN='N4',\ - RAFFINEMENT='NON',\ - MATERIAU=MAT,\ - SECTION_MASSE=_F(TYPE_SECTION='VARIABLE',\ - DIAM_EXTERN_DEBUT=0.1,\ - DIAM_INTERN_DEBUT=0.0,\ - DIAM_EXTERN_SORTIE=0.1,\ - DIAM_INTERN_SORTIE=0.0,),\ - SECTION_RIGIDITE=_F(TYPE_SECTION='VARIABLE',\ - DIAM_EXTERN_DEBUT=0.11,\ - DIAM_INTERN_DEBUT=0.0,\ - DIAM_EXTERN_SORTIE=0.11,\ - DIAM_INTERN_SORTIE=0.0,),),\ - _F(NOM='E4',\ - NOEUD_DEBUT='N4',\ - NOEUD_FIN='N5',\ - RAFFINEMENT='NON',\ - MATERIAU=MAT,\ - SECTION_MASSE=_F(TYPE_SECTION='VARIABLE',\ - DIAM_EXTERN_DEBUT=0.1,\ - DIAM_INTERN_DEBUT=0.0,\ - DIAM_EXTERN_SORTIE=0.1,\ - DIAM_INTERN_SORTIE=0.0,),\ - SECTION_RIGIDITE=_F(TYPE_SECTION='VARIABLE',\ - DIAM_EXTERN_DEBUT=0.11,\ - DIAM_INTERN_DEBUT=0.0,\ - DIAM_EXTERN_SORTIE=0.11,\ - DIAM_INTERN_SORTIE=0.0,),),\ - _F(NOM='E5',\ - NOEUD_DEBUT='N5',\ - NOEUD_FIN='N6',\ - RAFFINEMENT='NON',\ - MATERIAU=MAT,\ - SECTION_MASSE=_F(TYPE_SECTION='VARIABLE',\ - DIAM_EXTERN_DEBUT=0.1,\ - DIAM_INTERN_DEBUT=0.0,\ - DIAM_EXTERN_SORTIE=0.1,\ - DIAM_INTERN_SORTIE=0.0,),\ - SECTION_RIGIDITE=_F(TYPE_SECTION='VARIABLE',\ - DIAM_EXTERN_DEBUT=0.11,\ - DIAM_INTERN_DEBUT=0.0,\ - DIAM_EXTERN_SORTIE=0.11,\ - DIAM_INTERN_SORTIE=0.0,),),\ - _F(NOM='E6',\ - NOEUD_DEBUT='N6',\ - NOEUD_FIN='N7',\ - RAFFINEMENT='NON',\ - MATERIAU=MAT,\ - SECTION_MASSE=_F(TYPE_SECTION='VARIABLE',\ - DIAM_EXTERN_DEBUT=0.1,\ - DIAM_INTERN_DEBUT=0.0,\ - DIAM_EXTERN_SORTIE=0.1,\ - DIAM_INTERN_SORTIE=0.0,),\ - SECTION_RIGIDITE=_F(TYPE_SECTION='VARIABLE',\ - DIAM_EXTERN_DEBUT=0.11,\ - DIAM_INTERN_DEBUT=0.0,\ - DIAM_EXTERN_SORTIE=0.11,\ - DIAM_INTERN_SORTIE=0.0,),),\ - _F(NOM='E7',\ - NOEUD_DEBUT='N7',\ - NOEUD_FIN='N8',\ - RAFFINEMENT='NON',\ - MATERIAU=MAT,\ - SECTION_MASSE=_F(TYPE_SECTION='VARIABLE',\ - DIAM_EXTERN_DEBUT=0.1,\ - DIAM_INTERN_DEBUT=0.05,\ - DIAM_EXTERN_SORTIE=0.1,\ - DIAM_INTERN_SORTIE=0.05,),\ - SECTION_RIGIDITE=_F(TYPE_SECTION='VARIABLE',\ - DIAM_EXTERN_DEBUT=0.11,\ - DIAM_INTERN_DEBUT=0.05,\ - DIAM_EXTERN_SORTIE=0.11,\ - DIAM_INTERN_SORTIE=0.05,),),\ - _F(NOM='E8',\ - NOEUD_DEBUT='N8',\ - NOEUD_FIN='N9',\ - RAFFINEMENT='NON',\ - MATERIAU=MAT,\ - SECTION_MASSE=_F(TYPE_SECTION='VARIABLE',\ - DIAM_EXTERN_DEBUT=0.1,\ - DIAM_INTERN_DEBUT=0.0,\ - DIAM_EXTERN_SORTIE=0.1,\ - DIAM_INTERN_SORTIE=0.0,),\ - SECTION_RIGIDITE=_F(TYPE_SECTION='VARIABLE',\ - DIAM_EXTERN_DEBUT=0.11,\ - DIAM_INTERN_DEBUT=0.0,\ - DIAM_EXTERN_SORTIE=0.11,\ - DIAM_INTERN_SORTIE=0.0,),),\ - _F(NOM='E9',\ - NOEUD_DEBUT='N9',\ - NOEUD_FIN='N10',\ - RAFFINEMENT='NON',\ - MATERIAU=MAT,\ - SECTION_MASSE=_F(TYPE_SECTION='VARIABLE',\ - DIAM_EXTERN_DEBUT=0.1,\ - DIAM_INTERN_DEBUT=0.0,\ - DIAM_EXTERN_SORTIE=0.1,\ - DIAM_INTERN_SORTIE=0.0,),\ - SECTION_RIGIDITE=_F(TYPE_SECTION='VARIABLE',\ - DIAM_EXTERN_DEBUT=0.11,\ - DIAM_INTERN_DEBUT=0.0,\ - DIAM_EXTERN_SORTIE=0.11,\ - DIAM_INTERN_SORTIE=0.0,),),\ - _F(NOM='E10',\ - NOEUD_DEBUT='N10',\ - NOEUD_FIN='N11',\ - RAFFINEMENT='NON',\ - MATERIAU=MAT,\ - SECTION_MASSE=_F(TYPE_SECTION='VARIABLE',\ - DIAM_EXTERN_DEBUT=0.1,\ - DIAM_INTERN_DEBUT=0.0,\ - DIAM_EXTERN_SORTIE=0.1,\ - DIAM_INTERN_SORTIE=0.0,),\ - SECTION_RIGIDITE=_F(TYPE_SECTION='VARIABLE',\ - DIAM_EXTERN_DEBUT=0.11,\ - DIAM_INTERN_DEBUT=0.0,\ - DIAM_EXTERN_SORTIE=0.11,\ - DIAM_INTERN_SORTIE=0.0,),),\ - _F(NOM='E11',\ - NOEUD_DEBUT='N11',\ - NOEUD_FIN='N12',\ - RAFFINEMENT='NON',\ - MATERIAU=MAT,\ - SECTION_MASSE=_F(TYPE_SECTION='VARIABLE',\ - DIAM_EXTERN_DEBUT=0.1,\ - DIAM_INTERN_DEBUT=0.0,\ - DIAM_EXTERN_SORTIE=0.1,\ - DIAM_INTERN_SORTIE=0.0,),\ - SECTION_RIGIDITE=_F(TYPE_SECTION='VARIABLE',\ - DIAM_EXTERN_DEBUT=0.11,\ - DIAM_INTERN_DEBUT=0.0,\ - DIAM_EXTERN_SORTIE=0.11,\ - DIAM_INTERN_SORTIE=0.0,),),\ - _F(NOM='E12',\ - NOEUD_DEBUT='N12',\ - NOEUD_FIN='N13',\ - RAFFINEMENT='NON',\ - MATERIAU=MAT,\ - SECTION_MASSE=_F(TYPE_SECTION='VARIABLE',\ - DIAM_EXTERN_DEBUT=0.1,\ - DIAM_INTERN_DEBUT=0.0,\ - DIAM_EXTERN_SORTIE=0.1,\ - DIAM_INTERN_SORTIE=0.0,),\ - SECTION_RIGIDITE=_F(TYPE_SECTION='VARIABLE',\ - DIAM_EXTERN_DEBUT=0.11,\ - DIAM_INTERN_DEBUT=0.0,\ - DIAM_EXTERN_SORTIE=0.11,\ - DIAM_INTERN_SORTIE=0.0,),),\ - _F(NOM='E13',\ - NOEUD_DEBUT='N13',\ - NOEUD_FIN='N14',\ - RAFFINEMENT='NON',\ - MATERIAU=MAT,\ - SECTION_MASSE=_F(TYPE_SECTION='VARIABLE',\ - DIAM_EXTERN_DEBUT=0.1,\ - DIAM_INTERN_DEBUT=0.0,\ - DIAM_EXTERN_SORTIE=0.1,\ - DIAM_INTERN_SORTIE=0.0,),\ - SECTION_RIGIDITE=_F(TYPE_SECTION='VARIABLE',\ - DIAM_EXTERN_DEBUT=0.11,\ - DIAM_INTERN_DEBUT=0.0,\ - DIAM_EXTERN_SORTIE=0.11,\ - DIAM_INTERN_SORTIE=0.0,),),\ -),\ - MASSE=(_F(NOEUD='N5',\ - TYPE_MASSE='AILETTE',\ - TYPE_SAISIE='MECANIQUE',\ - PARAMETRES=_F(MASSE=1.3,\ - INERTIEX=0.1,\ - INERTIEY=0.1,\ - INERTIEZ=0.05,),),\ - _F(NOEUD='N8',\ - TYPE_MASSE='QUELCONQUE',\ - PARAMETRES=_F(MASSE=1.2,\ - INERTIEX=0.0,\ - INERTIEY=0.0,\ - INERTIEZ=0.0,),),\ -),\ -),\ -" diff --git a/Map2/.modele_atmo_test1.xsd.swp b/Map2/.modele_atmo_test1.xsd.swp deleted file mode 100644 index 76dd84e9..00000000 Binary files a/Map2/.modele_atmo_test1.xsd.swp and /dev/null differ diff --git a/Map2/MAP_testcase_forEficas.xml b/Map2/MAP_testcase_forEficas.xml deleted file mode 100755 index affd3724..00000000 --- a/Map2/MAP_testcase_forEficas.xml +++ /dev/null @@ -1,7 +0,0 @@ - - - - input_tests/c_solver_constitutive_law_0d_test_1/test_1_exp.txt - 100 - - diff --git a/Map2/README.txt b/Map2/README.txt deleted file mode 100644 index 8d99a232..00000000 --- a/Map2/README.txt +++ /dev/null @@ -1,12 +0,0 @@ -pyxbgen -u modele_atmo.xsd -m atmo --write-for-customization -/local/PyXB-1.2.6/scripts/pyxbgen -u modele_atmo_test1.xsd -m atmo1 --write-for-customization -/local/PyXB-1.2.6/scripts/pyxbgen -u modele_atmo_test2.xsd -m atmo2 --write-for-customization -/local/PyXB-1.2.6/scripts/pyxbgen -u modele_atmo_test3.xsd -m atmo3 --write-for-customization -/local/PyXB-1.2.6/scripts/pyxbgen -u modele_atmo_test4.xsd -m atmo4 --write-for-customization - -/local/PyXB-1.2.6/scripts/pyxbgen -u modele_atmo.xsd -m atmo --write-for-customization -/local/PyXB-1.2.6/scripts/pyxbgen -u model_atmo_ext.xsd -m atmo_ext --write-for-customization - - -/local/PyXB-1.2.6/scripts/pyxbgen -u modele_atmo.xsd -m atmo --write-for-customization --default-namespace-public --archive-to-file=model_atmo.wxsd -/local/PyXB-1.2.6/scripts/pyxbgen -u model_atmo_ext.xsd -m atmo_ext --write-for-customization --archive-path=.:+ diff --git a/Map2/__init__.py b/Map2/__init__.py deleted file mode 100644 index e69de29b..00000000 diff --git a/Map2/cata.xsd b/Map2/cata.xsd deleted file mode 100644 index b983ad00..00000000 --- a/Map2/cata.xsd +++ /dev/null @@ -1,125 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/Map2/cata/__init__.py b/Map2/cata/__init__.py deleted file mode 100644 index e69de29b..00000000 diff --git a/Map2/cata/py.py b/Map2/cata/py.py deleted file mode 100644 index 10a60e8a..00000000 --- a/Map2/cata/py.py +++ /dev/null @@ -1,1135 +0,0 @@ -# ./cata/py.py -# -*- coding: utf-8 -*- -# PyXB bindings for NM:f60706fefcd649a021314f59336daefd34e2e939 -# Generated 2018-04-18 17:17:01.129908 by PyXB version 1.2.3 -# Namespace http://chercheurs.edf.com/logiciels/atmos - -import pyxb -import pyxb.binding -import pyxb.binding.saxer -import io -import pyxb.utils.utility -import pyxb.utils.domutils -import sys - -# Unique identifier for bindings created at the same time -_GenerationUID = pyxb.utils.utility.UniqueIdentifier('urn:uuid:8b0f140e-431b-11e8-aa8c-d0bf9c086a19') - -# Version of PyXB used to generate the bindings -_PyXBVersion = '1.2.3' -# Generated bindings are not compatible across PyXB versions -if pyxb.__version__ != _PyXBVersion: - raise pyxb.PyXBVersionError(_PyXBVersion) - -# Import bindings for namespaces imported into schema -import pyxb.binding.datatypes - -# NOTE: All namespace declarations are reserved within the binding -Namespace = pyxb.namespace.NamespaceForURI(u'http://chercheurs.edf.com/logiciels/atmos', create_if_missing=True) -Namespace.configureCategories(['typeBinding', 'elementBinding']) - -def CreateFromDocument (xml_text, default_namespace=None, location_base=None): - """Parse the given XML and use the document element to create a - Python instance. - - @param xml_text An XML document. This should be data (Python 2 - str or Python 3 bytes), or a text (Python 2 unicode or Python 3 - str) in the L{pyxb._InputEncoding} encoding. - - @keyword default_namespace The L{pyxb.Namespace} instance to use as the - default namespace where there is no default namespace in scope. - If unspecified or C{None}, the namespace of the module containing - this function will be used. - - @keyword location_base: An object to be recorded as the base of all - L{pyxb.utils.utility.Location} instances associated with events and - objects handled by the parser. You might pass the URI from which - the document was obtained. - """ - - if pyxb.XMLStyle_saxer != pyxb._XMLStyle: - dom = pyxb.utils.domutils.StringToDOM(xml_text) - return CreateFromDOM(dom.documentElement) - if default_namespace is None: - default_namespace = Namespace.fallbackNamespace() - saxer = pyxb.binding.saxer.make_parser(fallback_namespace=default_namespace, location_base=location_base) - handler = saxer.getContentHandler() - xmld = xml_text - if isinstance(xmld, unicode): - xmld = xmld.encode(pyxb._InputEncoding) - saxer.parse(io.BytesIO(xmld)) - instance = handler.rootObject() - return instance - -def CreateFromDOM (node, default_namespace=None): - """Create a Python instance from the given DOM node. - The node tag must correspond to an element declaration in this module. - - @deprecated: Forcing use of DOM interface is unnecessary; use L{CreateFromDocument}.""" - if default_namespace is None: - default_namespace = Namespace.fallbackNamespace() - return pyxb.binding.basis.element.AnyCreateFromDOM(node, default_namespace) - - -# Atomic simple type: {http://chercheurs.edf.com/logiciels/atmos}T_experiences_description -class T_experiences_description (pyxb.binding.datatypes.string): - - """An atomic simple type.""" - - _ExpandedName = pyxb.namespace.ExpandedName(Namespace, u'T_experiences_description') - _XSDLocation = pyxb.utils.utility.Location('/home/A96028/QT5GitEficasTravail/eficas/Map2/cata2.xsd', 3, 1) - _Documentation = None -T_experiences_description._InitializeFacetMap() -Namespace.addCategoryObject('typeBinding', u'T_experiences_description', T_experiences_description) - -# Atomic simple type: {http://chercheurs.edf.com/logiciels/atmos}T_experiences_experience_experience_Name -class T_experiences_experience_experience_Name (pyxb.binding.datatypes.string): - - """An atomic simple type.""" - - _ExpandedName = pyxb.namespace.ExpandedName(Namespace, u'T_experiences_experience_experience_Name') - _XSDLocation = pyxb.utils.utility.Location('/home/A96028/QT5GitEficasTravail/eficas/Map2/cata2.xsd', 6, 1) - _Documentation = None -T_experiences_experience_experience_Name._InitializeFacetMap() -Namespace.addCategoryObject('typeBinding', u'T_experiences_experience_experience_Name', T_experiences_experience_experience_Name) - -# Atomic simple type: {http://chercheurs.edf.com/logiciels/atmos}T_experiences_experience_source -class T_experiences_experience_source (pyxb.binding.datatypes.string): - - """An atomic simple type.""" - - _ExpandedName = pyxb.namespace.ExpandedName(Namespace, u'T_experiences_experience_source') - _XSDLocation = pyxb.utils.utility.Location('/home/A96028/QT5GitEficasTravail/eficas/Map2/cata2.xsd', 9, 1) - _Documentation = None -T_experiences_experience_source._InitializeFacetMap() -Namespace.addCategoryObject('typeBinding', u'T_experiences_experience_source', T_experiences_experience_source) - -# Atomic simple type: {http://chercheurs.edf.com/logiciels/atmos}T_experiences_experience_b_source_file_exp_file -class T_experiences_experience_b_source_file_exp_file (pyxb.binding.datatypes.string): - - """An atomic simple type.""" - - _ExpandedName = pyxb.namespace.ExpandedName(Namespace, u'T_experiences_experience_b_source_file_exp_file') - _XSDLocation = pyxb.utils.utility.Location('/home/A96028/QT5GitEficasTravail/eficas/Map2/cata2.xsd', 12, 1) - _Documentation = None -T_experiences_experience_b_source_file_exp_file._InitializeFacetMap() -Namespace.addCategoryObject('typeBinding', u'T_experiences_experience_b_source_file_exp_file', T_experiences_experience_b_source_file_exp_file) - -# Atomic simple type: {http://chercheurs.edf.com/logiciels/atmos}T_experiences_experience_b_source_valeur_exp_value -class T_experiences_experience_b_source_valeur_exp_value (pyxb.binding.datatypes.float): - - """An atomic simple type.""" - - _ExpandedName = pyxb.namespace.ExpandedName(Namespace, u'T_experiences_experience_b_source_valeur_exp_value') - _XSDLocation = pyxb.utils.utility.Location('/home/A96028/QT5GitEficasTravail/eficas/Map2/cata2.xsd', 15, 1) - _Documentation = None -T_experiences_experience_b_source_valeur_exp_value._InitializeFacetMap() -Namespace.addCategoryObject('typeBinding', u'T_experiences_experience_b_source_valeur_exp_value', T_experiences_experience_b_source_valeur_exp_value) - -# Atomic simple type: {http://chercheurs.edf.com/logiciels/atmos}T_experiences_experience_b_source_dico_exp_dico -class T_experiences_experience_b_source_dico_exp_dico (pyxb.binding.datatypes.string): - - """An atomic simple type.""" - - _ExpandedName = pyxb.namespace.ExpandedName(Namespace, u'T_experiences_experience_b_source_dico_exp_dico') - _XSDLocation = pyxb.utils.utility.Location('/home/A96028/QT5GitEficasTravail/eficas/Map2/cata2.xsd', 18, 1) - _Documentation = None -T_experiences_experience_b_source_dico_exp_dico._InitializeFacetMap() -Namespace.addCategoryObject('typeBinding', u'T_experiences_experience_b_source_dico_exp_dico', T_experiences_experience_b_source_dico_exp_dico) - -# Atomic simple type: {http://chercheurs.edf.com/logiciels/atmos}T_experiences_experience_Associated_simulation_step_number -class T_experiences_experience_Associated_simulation_step_number (pyxb.binding.datatypes.int): - - """An atomic simple type.""" - - _ExpandedName = pyxb.namespace.ExpandedName(Namespace, u'T_experiences_experience_Associated_simulation_step_number') - _XSDLocation = pyxb.utils.utility.Location('/home/A96028/QT5GitEficasTravail/eficas/Map2/cata2.xsd', 21, 1) - _Documentation = None -T_experiences_experience_Associated_simulation_step_number._InitializeFacetMap() -Namespace.addCategoryObject('typeBinding', u'T_experiences_experience_Associated_simulation_step_number', T_experiences_experience_Associated_simulation_step_number) - -# Atomic simple type: {http://chercheurs.edf.com/logiciels/atmos}T_experiences_experience_dependancy_type_dependancy -class T_experiences_experience_dependancy_type_dependancy (pyxb.binding.datatypes.string): - - """An atomic simple type.""" - - _ExpandedName = pyxb.namespace.ExpandedName(Namespace, u'T_experiences_experience_dependancy_type_dependancy') - _XSDLocation = pyxb.utils.utility.Location('/home/A96028/QT5GitEficasTravail/eficas/Map2/cata2.xsd', 24, 1) - _Documentation = None -T_experiences_experience_dependancy_type_dependancy._InitializeFacetMap() -Namespace.addCategoryObject('typeBinding', u'T_experiences_experience_dependancy_type_dependancy', T_experiences_experience_dependancy_type_dependancy) - -# Atomic simple type: {http://chercheurs.edf.com/logiciels/atmos}T_experiences_experience_dependancy_source -class T_experiences_experience_dependancy_source (pyxb.binding.datatypes.string): - - """An atomic simple type.""" - - _ExpandedName = pyxb.namespace.ExpandedName(Namespace, u'T_experiences_experience_dependancy_source') - _XSDLocation = pyxb.utils.utility.Location('/home/A96028/QT5GitEficasTravail/eficas/Map2/cata2.xsd', 27, 1) - _Documentation = None -T_experiences_experience_dependancy_source._InitializeFacetMap() -Namespace.addCategoryObject('typeBinding', u'T_experiences_experience_dependancy_source', T_experiences_experience_dependancy_source) - -# Atomic simple type: {http://chercheurs.edf.com/logiciels/atmos}T_experiences_experience_dependancy_b_source_file_exp_file -class T_experiences_experience_dependancy_b_source_file_exp_file (pyxb.binding.datatypes.string): - - """An atomic simple type.""" - - _ExpandedName = pyxb.namespace.ExpandedName(Namespace, u'T_experiences_experience_dependancy_b_source_file_exp_file') - _XSDLocation = pyxb.utils.utility.Location('/home/A96028/QT5GitEficasTravail/eficas/Map2/cata2.xsd', 30, 1) - _Documentation = None -T_experiences_experience_dependancy_b_source_file_exp_file._InitializeFacetMap() -Namespace.addCategoryObject('typeBinding', u'T_experiences_experience_dependancy_b_source_file_exp_file', T_experiences_experience_dependancy_b_source_file_exp_file) - -# Atomic simple type: {http://chercheurs.edf.com/logiciels/atmos}T_experiences_experience_dependancy_b_source_valeur_exp_value -class T_experiences_experience_dependancy_b_source_valeur_exp_value (pyxb.binding.datatypes.float): - - """An atomic simple type.""" - - _ExpandedName = pyxb.namespace.ExpandedName(Namespace, u'T_experiences_experience_dependancy_b_source_valeur_exp_value') - _XSDLocation = pyxb.utils.utility.Location('/home/A96028/QT5GitEficasTravail/eficas/Map2/cata2.xsd', 33, 1) - _Documentation = None -T_experiences_experience_dependancy_b_source_valeur_exp_value._InitializeFacetMap() -Namespace.addCategoryObject('typeBinding', u'T_experiences_experience_dependancy_b_source_valeur_exp_value', T_experiences_experience_dependancy_b_source_valeur_exp_value) - -# Atomic simple type: {http://chercheurs.edf.com/logiciels/atmos}T_experiences_experience_dependancy_b_source_dico_exp_dico -class T_experiences_experience_dependancy_b_source_dico_exp_dico (pyxb.binding.datatypes.string): - - """An atomic simple type.""" - - _ExpandedName = pyxb.namespace.ExpandedName(Namespace, u'T_experiences_experience_dependancy_b_source_dico_exp_dico') - _XSDLocation = pyxb.utils.utility.Location('/home/A96028/QT5GitEficasTravail/eficas/Map2/cata2.xsd', 36, 1) - _Documentation = None -T_experiences_experience_dependancy_b_source_dico_exp_dico._InitializeFacetMap() -Namespace.addCategoryObject('typeBinding', u'T_experiences_experience_dependancy_b_source_dico_exp_dico', T_experiences_experience_dependancy_b_source_dico_exp_dico) - -# Atomic simple type: {http://chercheurs.edf.com/logiciels/atmos}T_experiences_dimensions_diameter -class T_experiences_dimensions_diameter (pyxb.binding.datatypes.float): - - """An atomic simple type.""" - - _ExpandedName = pyxb.namespace.ExpandedName(Namespace, u'T_experiences_dimensions_diameter') - _XSDLocation = pyxb.utils.utility.Location('/home/A96028/QT5GitEficasTravail/eficas/Map2/cata2.xsd', 39, 1) - _Documentation = None -T_experiences_dimensions_diameter._InitializeFacetMap() -Namespace.addCategoryObject('typeBinding', u'T_experiences_dimensions_diameter', T_experiences_dimensions_diameter) - -# Atomic simple type: {http://chercheurs.edf.com/logiciels/atmos}T_experiences_dimensions_thickness -class T_experiences_dimensions_thickness (pyxb.binding.datatypes.float): - - """An atomic simple type.""" - - _ExpandedName = pyxb.namespace.ExpandedName(Namespace, u'T_experiences_dimensions_thickness') - _XSDLocation = pyxb.utils.utility.Location('/home/A96028/QT5GitEficasTravail/eficas/Map2/cata2.xsd', 42, 1) - _Documentation = None -T_experiences_dimensions_thickness._InitializeFacetMap() -Namespace.addCategoryObject('typeBinding', u'T_experiences_dimensions_thickness', T_experiences_dimensions_thickness) - -# Atomic simple type: {http://chercheurs.edf.com/logiciels/atmos}T_experiences_dimensions_number_elements -class T_experiences_dimensions_number_elements (pyxb.binding.datatypes.int): - - """An atomic simple type.""" - - _ExpandedName = pyxb.namespace.ExpandedName(Namespace, u'T_experiences_dimensions_number_elements') - _XSDLocation = pyxb.utils.utility.Location('/home/A96028/QT5GitEficasTravail/eficas/Map2/cata2.xsd', 45, 1) - _Documentation = None -T_experiences_dimensions_number_elements._InitializeFacetMap() -Namespace.addCategoryObject('typeBinding', u'T_experiences_dimensions_number_elements', T_experiences_dimensions_number_elements) - -# Atomic simple type: {http://chercheurs.edf.com/logiciels/atmos}T_experiences_type_experience -class T_experiences_type_experience (pyxb.binding.datatypes.string): - - """An atomic simple type.""" - - _ExpandedName = pyxb.namespace.ExpandedName(Namespace, u'T_experiences_type_experience') - _XSDLocation = pyxb.utils.utility.Location('/home/A96028/QT5GitEficasTravail/eficas/Map2/cata2.xsd', 48, 1) - _Documentation = None -T_experiences_type_experience._InitializeFacetMap() -Namespace.addCategoryObject('typeBinding', u'T_experiences_type_experience', T_experiences_type_experience) - -# Complex type {http://chercheurs.edf.com/logiciels/atmos}T_experiences_experience_b_source_file with content type ELEMENT_ONLY -class T_experiences_experience_b_source_file (pyxb.binding.basis.complexTypeDefinition): - """Complex type {http://chercheurs.edf.com/logiciels/atmos}T_experiences_experience_b_source_file with content type ELEMENT_ONLY""" - _TypeDefinition = None - _ContentTypeTag = pyxb.binding.basis.complexTypeDefinition._CT_ELEMENT_ONLY - _Abstract = False - _ExpandedName = pyxb.namespace.ExpandedName(Namespace, u'T_experiences_experience_b_source_file') - _XSDLocation = pyxb.utils.utility.Location('/home/A96028/QT5GitEficasTravail/eficas/Map2/cata2.xsd', 51, 1) - _ElementMap = {} - _AttributeMap = {} - # Base type is pyxb.binding.datatypes.anyType - - # Element {http://chercheurs.edf.com/logiciels/atmos}exp_file uses Python identifier exp_file - __exp_file = pyxb.binding.content.ElementDeclaration(pyxb.namespace.ExpandedName(Namespace, u'exp_file'), 'exp_file', '__httpchercheurs_edf_comlogicielsatmos_T_experiences_experience_b_source_file_httpchercheurs_edf_comlogicielsatmosexp_file', False, pyxb.utils.utility.Location('/home/A96028/QT5GitEficasTravail/eficas/Map2/cata2.xsd', 53, 3), ) - - - exp_file = property(__exp_file.value, __exp_file.set, None, None) - - _ElementMap.update({ - __exp_file.name() : __exp_file - }) - _AttributeMap.update({ - - }) -Namespace.addCategoryObject('typeBinding', u'T_experiences_experience_b_source_file', T_experiences_experience_b_source_file) - - -# Complex type {http://chercheurs.edf.com/logiciels/atmos}T_experiences_experience_b_source_valeur with content type ELEMENT_ONLY -class T_experiences_experience_b_source_valeur (pyxb.binding.basis.complexTypeDefinition): - """Complex type {http://chercheurs.edf.com/logiciels/atmos}T_experiences_experience_b_source_valeur with content type ELEMENT_ONLY""" - _TypeDefinition = None - _ContentTypeTag = pyxb.binding.basis.complexTypeDefinition._CT_ELEMENT_ONLY - _Abstract = False - _ExpandedName = pyxb.namespace.ExpandedName(Namespace, u'T_experiences_experience_b_source_valeur') - _XSDLocation = pyxb.utils.utility.Location('/home/A96028/QT5GitEficasTravail/eficas/Map2/cata2.xsd', 56, 1) - _ElementMap = {} - _AttributeMap = {} - # Base type is pyxb.binding.datatypes.anyType - - # Element {http://chercheurs.edf.com/logiciels/atmos}exp_value uses Python identifier exp_value - __exp_value = pyxb.binding.content.ElementDeclaration(pyxb.namespace.ExpandedName(Namespace, u'exp_value'), 'exp_value', '__httpchercheurs_edf_comlogicielsatmos_T_experiences_experience_b_source_valeur_httpchercheurs_edf_comlogicielsatmosexp_value', False, pyxb.utils.utility.Location('/home/A96028/QT5GitEficasTravail/eficas/Map2/cata2.xsd', 58, 3), ) - - - exp_value = property(__exp_value.value, __exp_value.set, None, None) - - _ElementMap.update({ - __exp_value.name() : __exp_value - }) - _AttributeMap.update({ - - }) -Namespace.addCategoryObject('typeBinding', u'T_experiences_experience_b_source_valeur', T_experiences_experience_b_source_valeur) - - -# Complex type {http://chercheurs.edf.com/logiciels/atmos}T_experiences_experience_b_source_dico with content type ELEMENT_ONLY -class T_experiences_experience_b_source_dico (pyxb.binding.basis.complexTypeDefinition): - """Complex type {http://chercheurs.edf.com/logiciels/atmos}T_experiences_experience_b_source_dico with content type ELEMENT_ONLY""" - _TypeDefinition = None - _ContentTypeTag = pyxb.binding.basis.complexTypeDefinition._CT_ELEMENT_ONLY - _Abstract = False - _ExpandedName = pyxb.namespace.ExpandedName(Namespace, u'T_experiences_experience_b_source_dico') - _XSDLocation = pyxb.utils.utility.Location('/home/A96028/QT5GitEficasTravail/eficas/Map2/cata2.xsd', 61, 1) - _ElementMap = {} - _AttributeMap = {} - # Base type is pyxb.binding.datatypes.anyType - - # Element {http://chercheurs.edf.com/logiciels/atmos}exp_dico uses Python identifier exp_dico - __exp_dico = pyxb.binding.content.ElementDeclaration(pyxb.namespace.ExpandedName(Namespace, u'exp_dico'), 'exp_dico', '__httpchercheurs_edf_comlogicielsatmos_T_experiences_experience_b_source_dico_httpchercheurs_edf_comlogicielsatmosexp_dico', False, pyxb.utils.utility.Location('/home/A96028/QT5GitEficasTravail/eficas/Map2/cata2.xsd', 63, 3), ) - - - exp_dico = property(__exp_dico.value, __exp_dico.set, None, None) - - _ElementMap.update({ - __exp_dico.name() : __exp_dico - }) - _AttributeMap.update({ - - }) -Namespace.addCategoryObject('typeBinding', u'T_experiences_experience_b_source_dico', T_experiences_experience_b_source_dico) - - -# Complex type {http://chercheurs.edf.com/logiciels/atmos}T_experiences_experience_dependancy_b_source_file with content type ELEMENT_ONLY -class T_experiences_experience_dependancy_b_source_file (pyxb.binding.basis.complexTypeDefinition): - """Complex type {http://chercheurs.edf.com/logiciels/atmos}T_experiences_experience_dependancy_b_source_file with content type ELEMENT_ONLY""" - _TypeDefinition = None - _ContentTypeTag = pyxb.binding.basis.complexTypeDefinition._CT_ELEMENT_ONLY - _Abstract = False - _ExpandedName = pyxb.namespace.ExpandedName(Namespace, u'T_experiences_experience_dependancy_b_source_file') - _XSDLocation = pyxb.utils.utility.Location('/home/A96028/QT5GitEficasTravail/eficas/Map2/cata2.xsd', 66, 1) - _ElementMap = {} - _AttributeMap = {} - # Base type is pyxb.binding.datatypes.anyType - - # Element {http://chercheurs.edf.com/logiciels/atmos}exp_file uses Python identifier exp_file - __exp_file = pyxb.binding.content.ElementDeclaration(pyxb.namespace.ExpandedName(Namespace, u'exp_file'), 'exp_file', '__httpchercheurs_edf_comlogicielsatmos_T_experiences_experience_dependancy_b_source_file_httpchercheurs_edf_comlogicielsatmosexp_file', False, pyxb.utils.utility.Location('/home/A96028/QT5GitEficasTravail/eficas/Map2/cata2.xsd', 68, 3), ) - - - exp_file = property(__exp_file.value, __exp_file.set, None, None) - - _ElementMap.update({ - __exp_file.name() : __exp_file - }) - _AttributeMap.update({ - - }) -Namespace.addCategoryObject('typeBinding', u'T_experiences_experience_dependancy_b_source_file', T_experiences_experience_dependancy_b_source_file) - - -# Complex type {http://chercheurs.edf.com/logiciels/atmos}T_experiences_experience_dependancy_b_source_valeur with content type ELEMENT_ONLY -class T_experiences_experience_dependancy_b_source_valeur (pyxb.binding.basis.complexTypeDefinition): - """Complex type {http://chercheurs.edf.com/logiciels/atmos}T_experiences_experience_dependancy_b_source_valeur with content type ELEMENT_ONLY""" - _TypeDefinition = None - _ContentTypeTag = pyxb.binding.basis.complexTypeDefinition._CT_ELEMENT_ONLY - _Abstract = False - _ExpandedName = pyxb.namespace.ExpandedName(Namespace, u'T_experiences_experience_dependancy_b_source_valeur') - _XSDLocation = pyxb.utils.utility.Location('/home/A96028/QT5GitEficasTravail/eficas/Map2/cata2.xsd', 71, 1) - _ElementMap = {} - _AttributeMap = {} - # Base type is pyxb.binding.datatypes.anyType - - # Element {http://chercheurs.edf.com/logiciels/atmos}exp_value uses Python identifier exp_value - __exp_value = pyxb.binding.content.ElementDeclaration(pyxb.namespace.ExpandedName(Namespace, u'exp_value'), 'exp_value', '__httpchercheurs_edf_comlogicielsatmos_T_experiences_experience_dependancy_b_source_valeur_httpchercheurs_edf_comlogicielsatmosexp_value', False, pyxb.utils.utility.Location('/home/A96028/QT5GitEficasTravail/eficas/Map2/cata2.xsd', 73, 3), ) - - - exp_value = property(__exp_value.value, __exp_value.set, None, None) - - _ElementMap.update({ - __exp_value.name() : __exp_value - }) - _AttributeMap.update({ - - }) -Namespace.addCategoryObject('typeBinding', u'T_experiences_experience_dependancy_b_source_valeur', T_experiences_experience_dependancy_b_source_valeur) - - -# Complex type {http://chercheurs.edf.com/logiciels/atmos}T_experiences_experience_dependancy_b_source_dico with content type ELEMENT_ONLY -class T_experiences_experience_dependancy_b_source_dico (pyxb.binding.basis.complexTypeDefinition): - """Complex type {http://chercheurs.edf.com/logiciels/atmos}T_experiences_experience_dependancy_b_source_dico with content type ELEMENT_ONLY""" - _TypeDefinition = None - _ContentTypeTag = pyxb.binding.basis.complexTypeDefinition._CT_ELEMENT_ONLY - _Abstract = False - _ExpandedName = pyxb.namespace.ExpandedName(Namespace, u'T_experiences_experience_dependancy_b_source_dico') - _XSDLocation = pyxb.utils.utility.Location('/home/A96028/QT5GitEficasTravail/eficas/Map2/cata2.xsd', 76, 1) - _ElementMap = {} - _AttributeMap = {} - # Base type is pyxb.binding.datatypes.anyType - - # Element {http://chercheurs.edf.com/logiciels/atmos}exp_dico uses Python identifier exp_dico - __exp_dico = pyxb.binding.content.ElementDeclaration(pyxb.namespace.ExpandedName(Namespace, u'exp_dico'), 'exp_dico', '__httpchercheurs_edf_comlogicielsatmos_T_experiences_experience_dependancy_b_source_dico_httpchercheurs_edf_comlogicielsatmosexp_dico', False, pyxb.utils.utility.Location('/home/A96028/QT5GitEficasTravail/eficas/Map2/cata2.xsd', 78, 3), ) - - - exp_dico = property(__exp_dico.value, __exp_dico.set, None, None) - - _ElementMap.update({ - __exp_dico.name() : __exp_dico - }) - _AttributeMap.update({ - - }) -Namespace.addCategoryObject('typeBinding', u'T_experiences_experience_dependancy_b_source_dico', T_experiences_experience_dependancy_b_source_dico) - - -# Complex type {http://chercheurs.edf.com/logiciels/atmos}T_experiences_experience_dependancy with content type ELEMENT_ONLY -class T_experiences_experience_dependancy (pyxb.binding.basis.complexTypeDefinition): - """Complex type {http://chercheurs.edf.com/logiciels/atmos}T_experiences_experience_dependancy with content type ELEMENT_ONLY""" - _TypeDefinition = None - _ContentTypeTag = pyxb.binding.basis.complexTypeDefinition._CT_ELEMENT_ONLY - _Abstract = False - _ExpandedName = pyxb.namespace.ExpandedName(Namespace, u'T_experiences_experience_dependancy') - _XSDLocation = pyxb.utils.utility.Location('/home/A96028/QT5GitEficasTravail/eficas/Map2/cata2.xsd', 81, 1) - _ElementMap = {} - _AttributeMap = {} - # Base type is pyxb.binding.datatypes.anyType - - # Element {http://chercheurs.edf.com/logiciels/atmos}type_dependancy uses Python identifier type_dependancy - __type_dependancy = pyxb.binding.content.ElementDeclaration(pyxb.namespace.ExpandedName(Namespace, u'type_dependancy'), 'type_dependancy', '__httpchercheurs_edf_comlogicielsatmos_T_experiences_experience_dependancy_httpchercheurs_edf_comlogicielsatmostype_dependancy', False, pyxb.utils.utility.Location('/home/A96028/QT5GitEficasTravail/eficas/Map2/cata2.xsd', 83, 3), ) - - - type_dependancy = property(__type_dependancy.value, __type_dependancy.set, None, None) - - - # Element {http://chercheurs.edf.com/logiciels/atmos}source uses Python identifier source - __source = pyxb.binding.content.ElementDeclaration(pyxb.namespace.ExpandedName(Namespace, u'source'), 'source', '__httpchercheurs_edf_comlogicielsatmos_T_experiences_experience_dependancy_httpchercheurs_edf_comlogicielsatmossource', False, pyxb.utils.utility.Location('/home/A96028/QT5GitEficasTravail/eficas/Map2/cata2.xsd', 84, 3), ) - - - source = property(__source.value, __source.set, None, None) - - - # Element {http://chercheurs.edf.com/logiciels/atmos}b_source_file uses Python identifier b_source_file - __b_source_file = pyxb.binding.content.ElementDeclaration(pyxb.namespace.ExpandedName(Namespace, u'b_source_file'), 'b_source_file', '__httpchercheurs_edf_comlogicielsatmos_T_experiences_experience_dependancy_httpchercheurs_edf_comlogicielsatmosb_source_file', False, pyxb.utils.utility.Location('/home/A96028/QT5GitEficasTravail/eficas/Map2/cata2.xsd', 85, 3), ) - - - b_source_file = property(__b_source_file.value, __b_source_file.set, None, None) - - - # Element {http://chercheurs.edf.com/logiciels/atmos}b_source_valeur uses Python identifier b_source_valeur - __b_source_valeur = pyxb.binding.content.ElementDeclaration(pyxb.namespace.ExpandedName(Namespace, u'b_source_valeur'), 'b_source_valeur', '__httpchercheurs_edf_comlogicielsatmos_T_experiences_experience_dependancy_httpchercheurs_edf_comlogicielsatmosb_source_valeur', False, pyxb.utils.utility.Location('/home/A96028/QT5GitEficasTravail/eficas/Map2/cata2.xsd', 86, 3), ) - - - b_source_valeur = property(__b_source_valeur.value, __b_source_valeur.set, None, None) - - - # Element {http://chercheurs.edf.com/logiciels/atmos}b_source_dico uses Python identifier b_source_dico - __b_source_dico = pyxb.binding.content.ElementDeclaration(pyxb.namespace.ExpandedName(Namespace, u'b_source_dico'), 'b_source_dico', '__httpchercheurs_edf_comlogicielsatmos_T_experiences_experience_dependancy_httpchercheurs_edf_comlogicielsatmosb_source_dico', False, pyxb.utils.utility.Location('/home/A96028/QT5GitEficasTravail/eficas/Map2/cata2.xsd', 87, 3), ) - - - b_source_dico = property(__b_source_dico.value, __b_source_dico.set, None, None) - - _ElementMap.update({ - __type_dependancy.name() : __type_dependancy, - __source.name() : __source, - __b_source_file.name() : __b_source_file, - __b_source_valeur.name() : __b_source_valeur, - __b_source_dico.name() : __b_source_dico - }) - _AttributeMap.update({ - - }) -Namespace.addCategoryObject('typeBinding', u'T_experiences_experience_dependancy', T_experiences_experience_dependancy) - - -# Complex type {http://chercheurs.edf.com/logiciels/atmos}T_experiences_experience with content type ELEMENT_ONLY -class T_experiences_experience (pyxb.binding.basis.complexTypeDefinition): - """Complex type {http://chercheurs.edf.com/logiciels/atmos}T_experiences_experience with content type ELEMENT_ONLY""" - _TypeDefinition = None - _ContentTypeTag = pyxb.binding.basis.complexTypeDefinition._CT_ELEMENT_ONLY - _Abstract = False - _ExpandedName = pyxb.namespace.ExpandedName(Namespace, u'T_experiences_experience') - _XSDLocation = pyxb.utils.utility.Location('/home/A96028/QT5GitEficasTravail/eficas/Map2/cata2.xsd', 90, 1) - _ElementMap = {} - _AttributeMap = {} - # Base type is pyxb.binding.datatypes.anyType - - # Element {http://chercheurs.edf.com/logiciels/atmos}experience_Name uses Python identifier experience_Name - __experience_Name = pyxb.binding.content.ElementDeclaration(pyxb.namespace.ExpandedName(Namespace, u'experience_Name'), 'experience_Name', '__httpchercheurs_edf_comlogicielsatmos_T_experiences_experience_httpchercheurs_edf_comlogicielsatmosexperience_Name', False, pyxb.utils.utility.Location('/home/A96028/QT5GitEficasTravail/eficas/Map2/cata2.xsd', 92, 3), ) - - - experience_Name = property(__experience_Name.value, __experience_Name.set, None, None) - - - # Element {http://chercheurs.edf.com/logiciels/atmos}source uses Python identifier source - __source = pyxb.binding.content.ElementDeclaration(pyxb.namespace.ExpandedName(Namespace, u'source'), 'source', '__httpchercheurs_edf_comlogicielsatmos_T_experiences_experience_httpchercheurs_edf_comlogicielsatmossource', False, pyxb.utils.utility.Location('/home/A96028/QT5GitEficasTravail/eficas/Map2/cata2.xsd', 93, 3), ) - - - source = property(__source.value, __source.set, None, None) - - - # Element {http://chercheurs.edf.com/logiciels/atmos}b_source_file uses Python identifier b_source_file - __b_source_file = pyxb.binding.content.ElementDeclaration(pyxb.namespace.ExpandedName(Namespace, u'b_source_file'), 'b_source_file', '__httpchercheurs_edf_comlogicielsatmos_T_experiences_experience_httpchercheurs_edf_comlogicielsatmosb_source_file', False, pyxb.utils.utility.Location('/home/A96028/QT5GitEficasTravail/eficas/Map2/cata2.xsd', 94, 3), ) - - - b_source_file = property(__b_source_file.value, __b_source_file.set, None, None) - - - # Element {http://chercheurs.edf.com/logiciels/atmos}b_source_valeur uses Python identifier b_source_valeur - __b_source_valeur = pyxb.binding.content.ElementDeclaration(pyxb.namespace.ExpandedName(Namespace, u'b_source_valeur'), 'b_source_valeur', '__httpchercheurs_edf_comlogicielsatmos_T_experiences_experience_httpchercheurs_edf_comlogicielsatmosb_source_valeur', False, pyxb.utils.utility.Location('/home/A96028/QT5GitEficasTravail/eficas/Map2/cata2.xsd', 95, 3), ) - - - b_source_valeur = property(__b_source_valeur.value, __b_source_valeur.set, None, None) - - - # Element {http://chercheurs.edf.com/logiciels/atmos}b_source_dico uses Python identifier b_source_dico - __b_source_dico = pyxb.binding.content.ElementDeclaration(pyxb.namespace.ExpandedName(Namespace, u'b_source_dico'), 'b_source_dico', '__httpchercheurs_edf_comlogicielsatmos_T_experiences_experience_httpchercheurs_edf_comlogicielsatmosb_source_dico', False, pyxb.utils.utility.Location('/home/A96028/QT5GitEficasTravail/eficas/Map2/cata2.xsd', 96, 3), ) - - - b_source_dico = property(__b_source_dico.value, __b_source_dico.set, None, None) - - - # Element {http://chercheurs.edf.com/logiciels/atmos}Associated_simulation_step_number uses Python identifier Associated_simulation_step_number - __Associated_simulation_step_number = pyxb.binding.content.ElementDeclaration(pyxb.namespace.ExpandedName(Namespace, u'Associated_simulation_step_number'), 'Associated_simulation_step_number', '__httpchercheurs_edf_comlogicielsatmos_T_experiences_experience_httpchercheurs_edf_comlogicielsatmosAssociated_simulation_step_number', False, pyxb.utils.utility.Location('/home/A96028/QT5GitEficasTravail/eficas/Map2/cata2.xsd', 97, 3), ) - - - Associated_simulation_step_number = property(__Associated_simulation_step_number.value, __Associated_simulation_step_number.set, None, None) - - - # Element {http://chercheurs.edf.com/logiciels/atmos}dependancy uses Python identifier dependancy - __dependancy = pyxb.binding.content.ElementDeclaration(pyxb.namespace.ExpandedName(Namespace, u'dependancy'), 'dependancy', '__httpchercheurs_edf_comlogicielsatmos_T_experiences_experience_httpchercheurs_edf_comlogicielsatmosdependancy', False, pyxb.utils.utility.Location('/home/A96028/QT5GitEficasTravail/eficas/Map2/cata2.xsd', 98, 3), ) - - - dependancy = property(__dependancy.value, __dependancy.set, None, None) - - _ElementMap.update({ - __experience_Name.name() : __experience_Name, - __source.name() : __source, - __b_source_file.name() : __b_source_file, - __b_source_valeur.name() : __b_source_valeur, - __b_source_dico.name() : __b_source_dico, - __Associated_simulation_step_number.name() : __Associated_simulation_step_number, - __dependancy.name() : __dependancy - }) - _AttributeMap.update({ - - }) -Namespace.addCategoryObject('typeBinding', u'T_experiences_experience', T_experiences_experience) - - -# Complex type {http://chercheurs.edf.com/logiciels/atmos}T_experiences_dimensions with content type ELEMENT_ONLY -class T_experiences_dimensions (pyxb.binding.basis.complexTypeDefinition): - """Complex type {http://chercheurs.edf.com/logiciels/atmos}T_experiences_dimensions with content type ELEMENT_ONLY""" - _TypeDefinition = None - _ContentTypeTag = pyxb.binding.basis.complexTypeDefinition._CT_ELEMENT_ONLY - _Abstract = False - _ExpandedName = pyxb.namespace.ExpandedName(Namespace, u'T_experiences_dimensions') - _XSDLocation = pyxb.utils.utility.Location('/home/A96028/QT5GitEficasTravail/eficas/Map2/cata2.xsd', 101, 1) - _ElementMap = {} - _AttributeMap = {} - # Base type is pyxb.binding.datatypes.anyType - - # Element {http://chercheurs.edf.com/logiciels/atmos}diameter uses Python identifier diameter - __diameter = pyxb.binding.content.ElementDeclaration(pyxb.namespace.ExpandedName(Namespace, u'diameter'), 'diameter', '__httpchercheurs_edf_comlogicielsatmos_T_experiences_dimensions_httpchercheurs_edf_comlogicielsatmosdiameter', False, pyxb.utils.utility.Location('/home/A96028/QT5GitEficasTravail/eficas/Map2/cata2.xsd', 103, 3), ) - - - diameter = property(__diameter.value, __diameter.set, None, None) - - - # Element {http://chercheurs.edf.com/logiciels/atmos}thickness uses Python identifier thickness - __thickness = pyxb.binding.content.ElementDeclaration(pyxb.namespace.ExpandedName(Namespace, u'thickness'), 'thickness', '__httpchercheurs_edf_comlogicielsatmos_T_experiences_dimensions_httpchercheurs_edf_comlogicielsatmosthickness', False, pyxb.utils.utility.Location('/home/A96028/QT5GitEficasTravail/eficas/Map2/cata2.xsd', 104, 3), ) - - - thickness = property(__thickness.value, __thickness.set, None, None) - - - # Element {http://chercheurs.edf.com/logiciels/atmos}number_elements uses Python identifier number_elements - __number_elements = pyxb.binding.content.ElementDeclaration(pyxb.namespace.ExpandedName(Namespace, u'number_elements'), 'number_elements', '__httpchercheurs_edf_comlogicielsatmos_T_experiences_dimensions_httpchercheurs_edf_comlogicielsatmosnumber_elements', False, pyxb.utils.utility.Location('/home/A96028/QT5GitEficasTravail/eficas/Map2/cata2.xsd', 105, 3), ) - - - number_elements = property(__number_elements.value, __number_elements.set, None, None) - - _ElementMap.update({ - __diameter.name() : __diameter, - __thickness.name() : __thickness, - __number_elements.name() : __number_elements - }) - _AttributeMap.update({ - - }) -Namespace.addCategoryObject('typeBinding', u'T_experiences_dimensions', T_experiences_dimensions) - - -# Complex type {http://chercheurs.edf.com/logiciels/atmos}T_experiences with content type ELEMENT_ONLY -class T_experiences (pyxb.binding.basis.complexTypeDefinition): - """Complex type {http://chercheurs.edf.com/logiciels/atmos}T_experiences with content type ELEMENT_ONLY""" - _TypeDefinition = None - _ContentTypeTag = pyxb.binding.basis.complexTypeDefinition._CT_ELEMENT_ONLY - _Abstract = False - _ExpandedName = pyxb.namespace.ExpandedName(Namespace, u'T_experiences') - _XSDLocation = pyxb.utils.utility.Location('/home/A96028/QT5GitEficasTravail/eficas/Map2/cata2.xsd', 108, 1) - _ElementMap = {} - _AttributeMap = {} - # Base type is pyxb.binding.datatypes.anyType - - # Element {http://chercheurs.edf.com/logiciels/atmos}description uses Python identifier description - __description = pyxb.binding.content.ElementDeclaration(pyxb.namespace.ExpandedName(Namespace, u'description'), 'description', '__httpchercheurs_edf_comlogicielsatmos_T_experiences_httpchercheurs_edf_comlogicielsatmosdescription', False, pyxb.utils.utility.Location('/home/A96028/QT5GitEficasTravail/eficas/Map2/cata2.xsd', 110, 3), ) - - - description = property(__description.value, __description.set, None, None) - - - # Element {http://chercheurs.edf.com/logiciels/atmos}experience uses Python identifier experience - __experience = pyxb.binding.content.ElementDeclaration(pyxb.namespace.ExpandedName(Namespace, u'experience'), 'experience', '__httpchercheurs_edf_comlogicielsatmos_T_experiences_httpchercheurs_edf_comlogicielsatmosexperience', True, pyxb.utils.utility.Location('/home/A96028/QT5GitEficasTravail/eficas/Map2/cata2.xsd', 111, 3), ) - - - experience = property(__experience.value, __experience.set, None, None) - - - # Element {http://chercheurs.edf.com/logiciels/atmos}dimensions uses Python identifier dimensions - __dimensions = pyxb.binding.content.ElementDeclaration(pyxb.namespace.ExpandedName(Namespace, u'dimensions'), 'dimensions', '__httpchercheurs_edf_comlogicielsatmos_T_experiences_httpchercheurs_edf_comlogicielsatmosdimensions', False, pyxb.utils.utility.Location('/home/A96028/QT5GitEficasTravail/eficas/Map2/cata2.xsd', 112, 3), ) - - - dimensions = property(__dimensions.value, __dimensions.set, None, None) - - - # Element {http://chercheurs.edf.com/logiciels/atmos}type_experience uses Python identifier type_experience - __type_experience = pyxb.binding.content.ElementDeclaration(pyxb.namespace.ExpandedName(Namespace, u'type_experience'), 'type_experience', '__httpchercheurs_edf_comlogicielsatmos_T_experiences_httpchercheurs_edf_comlogicielsatmostype_experience', False, pyxb.utils.utility.Location('/home/A96028/QT5GitEficasTravail/eficas/Map2/cata2.xsd', 113, 3), ) - - - type_experience = property(__type_experience.value, __type_experience.set, None, None) - - _ElementMap.update({ - __description.name() : __description, - __experience.name() : __experience, - __dimensions.name() : __dimensions, - __type_experience.name() : __type_experience - }) - _AttributeMap.update({ - - }) -Namespace.addCategoryObject('typeBinding', u'T_experiences', T_experiences) - - -# Complex type {http://chercheurs.edf.com/logiciels/atmos}T_Map2 with content type ELEMENT_ONLY -class T_Map2 (pyxb.binding.basis.complexTypeDefinition): - """Complex type {http://chercheurs.edf.com/logiciels/atmos}T_Map2 with content type ELEMENT_ONLY""" - _TypeDefinition = None - _ContentTypeTag = pyxb.binding.basis.complexTypeDefinition._CT_ELEMENT_ONLY - _Abstract = False - _ExpandedName = pyxb.namespace.ExpandedName(Namespace, u'T_Map2') - _XSDLocation = pyxb.utils.utility.Location('/home/A96028/QT5GitEficasTravail/eficas/Map2/cata2.xsd', 118, 1) - _ElementMap = {} - _AttributeMap = {} - # Base type is pyxb.binding.datatypes.anyType - - # Element {http://chercheurs.edf.com/logiciels/atmos}experiences uses Python identifier experiences - __experiences = pyxb.binding.content.ElementDeclaration(pyxb.namespace.ExpandedName(Namespace, u'experiences'), 'experiences', '__httpchercheurs_edf_comlogicielsatmos_T_Map2_httpchercheurs_edf_comlogicielsatmosexperiences', True, pyxb.utils.utility.Location('/home/A96028/QT5GitEficasTravail/eficas/Map2/cata2.xsd', 120, 3), ) - - - experiences = property(__experiences.value, __experiences.set, None, None) - - _ElementMap.update({ - __experiences.name() : __experiences - }) - _AttributeMap.update({ - - }) -Namespace.addCategoryObject('typeBinding', u'T_Map2', T_Map2) - - -JDD = pyxb.binding.basis.element(pyxb.namespace.ExpandedName(Namespace, u'JDD'), T_Map2, location=pyxb.utils.utility.Location('/home/A96028/QT5GitEficasTravail/eficas/Map2/cata2.xsd', 123, 0)) -Namespace.addCategoryObject('elementBinding', JDD.name().localName(), JDD) - - - -T_experiences_experience_b_source_file._AddElement(pyxb.binding.basis.element(pyxb.namespace.ExpandedName(Namespace, u'exp_file'), T_experiences_experience_b_source_file_exp_file, scope=T_experiences_experience_b_source_file, location=pyxb.utils.utility.Location('/home/A96028/QT5GitEficasTravail/eficas/Map2/cata2.xsd', 53, 3))) - -def _BuildAutomaton (): - # Remove this helper function from the namespace after it is invoked - global _BuildAutomaton - del _BuildAutomaton - import pyxb.utils.fac as fac - - counters = set() - states = [] - final_update = set() - symbol = pyxb.binding.content.ElementUse(T_experiences_experience_b_source_file._UseForTag(pyxb.namespace.ExpandedName(Namespace, u'exp_file')), pyxb.utils.utility.Location('/home/A96028/QT5GitEficasTravail/eficas/Map2/cata2.xsd', 53, 3)) - st_0 = fac.State(symbol, is_initial=True, final_update=final_update, is_unordered_catenation=False) - states.append(st_0) - transitions = [] - st_0._set_transitionSet(transitions) - return fac.Automaton(states, counters, False, containing_state=None) -T_experiences_experience_b_source_file._Automaton = _BuildAutomaton() - - - - -T_experiences_experience_b_source_valeur._AddElement(pyxb.binding.basis.element(pyxb.namespace.ExpandedName(Namespace, u'exp_value'), T_experiences_experience_b_source_valeur_exp_value, scope=T_experiences_experience_b_source_valeur, location=pyxb.utils.utility.Location('/home/A96028/QT5GitEficasTravail/eficas/Map2/cata2.xsd', 58, 3))) - -def _BuildAutomaton_ (): - # Remove this helper function from the namespace after it is invoked - global _BuildAutomaton_ - del _BuildAutomaton_ - import pyxb.utils.fac as fac - - counters = set() - states = [] - final_update = set() - symbol = pyxb.binding.content.ElementUse(T_experiences_experience_b_source_valeur._UseForTag(pyxb.namespace.ExpandedName(Namespace, u'exp_value')), pyxb.utils.utility.Location('/home/A96028/QT5GitEficasTravail/eficas/Map2/cata2.xsd', 58, 3)) - st_0 = fac.State(symbol, is_initial=True, final_update=final_update, is_unordered_catenation=False) - states.append(st_0) - transitions = [] - st_0._set_transitionSet(transitions) - return fac.Automaton(states, counters, False, containing_state=None) -T_experiences_experience_b_source_valeur._Automaton = _BuildAutomaton_() - - - - -T_experiences_experience_b_source_dico._AddElement(pyxb.binding.basis.element(pyxb.namespace.ExpandedName(Namespace, u'exp_dico'), T_experiences_experience_b_source_dico_exp_dico, scope=T_experiences_experience_b_source_dico, location=pyxb.utils.utility.Location('/home/A96028/QT5GitEficasTravail/eficas/Map2/cata2.xsd', 63, 3))) - -def _BuildAutomaton_2 (): - # Remove this helper function from the namespace after it is invoked - global _BuildAutomaton_2 - del _BuildAutomaton_2 - import pyxb.utils.fac as fac - - counters = set() - states = [] - final_update = set() - symbol = pyxb.binding.content.ElementUse(T_experiences_experience_b_source_dico._UseForTag(pyxb.namespace.ExpandedName(Namespace, u'exp_dico')), pyxb.utils.utility.Location('/home/A96028/QT5GitEficasTravail/eficas/Map2/cata2.xsd', 63, 3)) - st_0 = fac.State(symbol, is_initial=True, final_update=final_update, is_unordered_catenation=False) - states.append(st_0) - transitions = [] - st_0._set_transitionSet(transitions) - return fac.Automaton(states, counters, False, containing_state=None) -T_experiences_experience_b_source_dico._Automaton = _BuildAutomaton_2() - - - - -T_experiences_experience_dependancy_b_source_file._AddElement(pyxb.binding.basis.element(pyxb.namespace.ExpandedName(Namespace, u'exp_file'), T_experiences_experience_dependancy_b_source_file_exp_file, scope=T_experiences_experience_dependancy_b_source_file, location=pyxb.utils.utility.Location('/home/A96028/QT5GitEficasTravail/eficas/Map2/cata2.xsd', 68, 3))) - -def _BuildAutomaton_3 (): - # Remove this helper function from the namespace after it is invoked - global _BuildAutomaton_3 - del _BuildAutomaton_3 - import pyxb.utils.fac as fac - - counters = set() - states = [] - final_update = set() - symbol = pyxb.binding.content.ElementUse(T_experiences_experience_dependancy_b_source_file._UseForTag(pyxb.namespace.ExpandedName(Namespace, u'exp_file')), pyxb.utils.utility.Location('/home/A96028/QT5GitEficasTravail/eficas/Map2/cata2.xsd', 68, 3)) - st_0 = fac.State(symbol, is_initial=True, final_update=final_update, is_unordered_catenation=False) - states.append(st_0) - transitions = [] - st_0._set_transitionSet(transitions) - return fac.Automaton(states, counters, False, containing_state=None) -T_experiences_experience_dependancy_b_source_file._Automaton = _BuildAutomaton_3() - - - - -T_experiences_experience_dependancy_b_source_valeur._AddElement(pyxb.binding.basis.element(pyxb.namespace.ExpandedName(Namespace, u'exp_value'), T_experiences_experience_dependancy_b_source_valeur_exp_value, scope=T_experiences_experience_dependancy_b_source_valeur, location=pyxb.utils.utility.Location('/home/A96028/QT5GitEficasTravail/eficas/Map2/cata2.xsd', 73, 3))) - -def _BuildAutomaton_4 (): - # Remove this helper function from the namespace after it is invoked - global _BuildAutomaton_4 - del _BuildAutomaton_4 - import pyxb.utils.fac as fac - - counters = set() - states = [] - final_update = set() - symbol = pyxb.binding.content.ElementUse(T_experiences_experience_dependancy_b_source_valeur._UseForTag(pyxb.namespace.ExpandedName(Namespace, u'exp_value')), pyxb.utils.utility.Location('/home/A96028/QT5GitEficasTravail/eficas/Map2/cata2.xsd', 73, 3)) - st_0 = fac.State(symbol, is_initial=True, final_update=final_update, is_unordered_catenation=False) - states.append(st_0) - transitions = [] - st_0._set_transitionSet(transitions) - return fac.Automaton(states, counters, False, containing_state=None) -T_experiences_experience_dependancy_b_source_valeur._Automaton = _BuildAutomaton_4() - - - - -T_experiences_experience_dependancy_b_source_dico._AddElement(pyxb.binding.basis.element(pyxb.namespace.ExpandedName(Namespace, u'exp_dico'), T_experiences_experience_dependancy_b_source_dico_exp_dico, scope=T_experiences_experience_dependancy_b_source_dico, location=pyxb.utils.utility.Location('/home/A96028/QT5GitEficasTravail/eficas/Map2/cata2.xsd', 78, 3))) - -def _BuildAutomaton_5 (): - # Remove this helper function from the namespace after it is invoked - global _BuildAutomaton_5 - del _BuildAutomaton_5 - import pyxb.utils.fac as fac - - counters = set() - states = [] - final_update = set() - symbol = pyxb.binding.content.ElementUse(T_experiences_experience_dependancy_b_source_dico._UseForTag(pyxb.namespace.ExpandedName(Namespace, u'exp_dico')), pyxb.utils.utility.Location('/home/A96028/QT5GitEficasTravail/eficas/Map2/cata2.xsd', 78, 3)) - st_0 = fac.State(symbol, is_initial=True, final_update=final_update, is_unordered_catenation=False) - states.append(st_0) - transitions = [] - st_0._set_transitionSet(transitions) - return fac.Automaton(states, counters, False, containing_state=None) -T_experiences_experience_dependancy_b_source_dico._Automaton = _BuildAutomaton_5() - - - - -T_experiences_experience_dependancy._AddElement(pyxb.binding.basis.element(pyxb.namespace.ExpandedName(Namespace, u'type_dependancy'), T_experiences_experience_dependancy_type_dependancy, scope=T_experiences_experience_dependancy, location=pyxb.utils.utility.Location('/home/A96028/QT5GitEficasTravail/eficas/Map2/cata2.xsd', 83, 3))) - -T_experiences_experience_dependancy._AddElement(pyxb.binding.basis.element(pyxb.namespace.ExpandedName(Namespace, u'source'), T_experiences_experience_dependancy_source, scope=T_experiences_experience_dependancy, location=pyxb.utils.utility.Location('/home/A96028/QT5GitEficasTravail/eficas/Map2/cata2.xsd', 84, 3))) - -T_experiences_experience_dependancy._AddElement(pyxb.binding.basis.element(pyxb.namespace.ExpandedName(Namespace, u'b_source_file'), T_experiences_experience_dependancy_b_source_file, scope=T_experiences_experience_dependancy, location=pyxb.utils.utility.Location('/home/A96028/QT5GitEficasTravail/eficas/Map2/cata2.xsd', 85, 3))) - -T_experiences_experience_dependancy._AddElement(pyxb.binding.basis.element(pyxb.namespace.ExpandedName(Namespace, u'b_source_valeur'), T_experiences_experience_dependancy_b_source_valeur, scope=T_experiences_experience_dependancy, location=pyxb.utils.utility.Location('/home/A96028/QT5GitEficasTravail/eficas/Map2/cata2.xsd', 86, 3))) - -T_experiences_experience_dependancy._AddElement(pyxb.binding.basis.element(pyxb.namespace.ExpandedName(Namespace, u'b_source_dico'), T_experiences_experience_dependancy_b_source_dico, scope=T_experiences_experience_dependancy, location=pyxb.utils.utility.Location('/home/A96028/QT5GitEficasTravail/eficas/Map2/cata2.xsd', 87, 3))) - -def _BuildAutomaton_6 (): - # Remove this helper function from the namespace after it is invoked - global _BuildAutomaton_6 - del _BuildAutomaton_6 - import pyxb.utils.fac as fac - - counters = set() - cc_0 = fac.CounterCondition(min=0L, max=1L, metadata=pyxb.utils.utility.Location('/home/A96028/QT5GitEficasTravail/eficas/Map2/cata2.xsd', 85, 3)) - counters.add(cc_0) - cc_1 = fac.CounterCondition(min=0L, max=1L, metadata=pyxb.utils.utility.Location('/home/A96028/QT5GitEficasTravail/eficas/Map2/cata2.xsd', 86, 3)) - counters.add(cc_1) - cc_2 = fac.CounterCondition(min=0L, max=1L, metadata=pyxb.utils.utility.Location('/home/A96028/QT5GitEficasTravail/eficas/Map2/cata2.xsd', 87, 3)) - counters.add(cc_2) - states = [] - final_update = None - symbol = pyxb.binding.content.ElementUse(T_experiences_experience_dependancy._UseForTag(pyxb.namespace.ExpandedName(Namespace, u'type_dependancy')), pyxb.utils.utility.Location('/home/A96028/QT5GitEficasTravail/eficas/Map2/cata2.xsd', 83, 3)) - st_0 = fac.State(symbol, is_initial=True, final_update=final_update, is_unordered_catenation=False) - states.append(st_0) - final_update = set() - symbol = pyxb.binding.content.ElementUse(T_experiences_experience_dependancy._UseForTag(pyxb.namespace.ExpandedName(Namespace, u'source')), pyxb.utils.utility.Location('/home/A96028/QT5GitEficasTravail/eficas/Map2/cata2.xsd', 84, 3)) - st_1 = fac.State(symbol, is_initial=False, final_update=final_update, is_unordered_catenation=False) - states.append(st_1) - final_update = set() - final_update.add(fac.UpdateInstruction(cc_0, False)) - symbol = pyxb.binding.content.ElementUse(T_experiences_experience_dependancy._UseForTag(pyxb.namespace.ExpandedName(Namespace, u'b_source_file')), pyxb.utils.utility.Location('/home/A96028/QT5GitEficasTravail/eficas/Map2/cata2.xsd', 85, 3)) - st_2 = fac.State(symbol, is_initial=False, final_update=final_update, is_unordered_catenation=False) - states.append(st_2) - final_update = set() - final_update.add(fac.UpdateInstruction(cc_1, False)) - symbol = pyxb.binding.content.ElementUse(T_experiences_experience_dependancy._UseForTag(pyxb.namespace.ExpandedName(Namespace, u'b_source_valeur')), pyxb.utils.utility.Location('/home/A96028/QT5GitEficasTravail/eficas/Map2/cata2.xsd', 86, 3)) - st_3 = fac.State(symbol, is_initial=False, final_update=final_update, is_unordered_catenation=False) - states.append(st_3) - final_update = set() - final_update.add(fac.UpdateInstruction(cc_2, False)) - symbol = pyxb.binding.content.ElementUse(T_experiences_experience_dependancy._UseForTag(pyxb.namespace.ExpandedName(Namespace, u'b_source_dico')), pyxb.utils.utility.Location('/home/A96028/QT5GitEficasTravail/eficas/Map2/cata2.xsd', 87, 3)) - st_4 = fac.State(symbol, is_initial=False, final_update=final_update, is_unordered_catenation=False) - states.append(st_4) - transitions = [] - transitions.append(fac.Transition(st_1, [ - ])) - st_0._set_transitionSet(transitions) - transitions = [] - transitions.append(fac.Transition(st_2, [ - ])) - transitions.append(fac.Transition(st_3, [ - ])) - transitions.append(fac.Transition(st_4, [ - ])) - st_1._set_transitionSet(transitions) - transitions = [] - transitions.append(fac.Transition(st_2, [ - fac.UpdateInstruction(cc_0, True) ])) - transitions.append(fac.Transition(st_3, [ - fac.UpdateInstruction(cc_0, False) ])) - transitions.append(fac.Transition(st_4, [ - fac.UpdateInstruction(cc_0, False) ])) - st_2._set_transitionSet(transitions) - transitions = [] - transitions.append(fac.Transition(st_3, [ - fac.UpdateInstruction(cc_1, True) ])) - transitions.append(fac.Transition(st_4, [ - fac.UpdateInstruction(cc_1, False) ])) - st_3._set_transitionSet(transitions) - transitions = [] - transitions.append(fac.Transition(st_4, [ - fac.UpdateInstruction(cc_2, True) ])) - st_4._set_transitionSet(transitions) - return fac.Automaton(states, counters, False, containing_state=None) -T_experiences_experience_dependancy._Automaton = _BuildAutomaton_6() - - - - -T_experiences_experience._AddElement(pyxb.binding.basis.element(pyxb.namespace.ExpandedName(Namespace, u'experience_Name'), T_experiences_experience_experience_Name, scope=T_experiences_experience, location=pyxb.utils.utility.Location('/home/A96028/QT5GitEficasTravail/eficas/Map2/cata2.xsd', 92, 3))) - -T_experiences_experience._AddElement(pyxb.binding.basis.element(pyxb.namespace.ExpandedName(Namespace, u'source'), T_experiences_experience_source, scope=T_experiences_experience, location=pyxb.utils.utility.Location('/home/A96028/QT5GitEficasTravail/eficas/Map2/cata2.xsd', 93, 3))) - -T_experiences_experience._AddElement(pyxb.binding.basis.element(pyxb.namespace.ExpandedName(Namespace, u'b_source_file'), T_experiences_experience_b_source_file, scope=T_experiences_experience, location=pyxb.utils.utility.Location('/home/A96028/QT5GitEficasTravail/eficas/Map2/cata2.xsd', 94, 3))) - -T_experiences_experience._AddElement(pyxb.binding.basis.element(pyxb.namespace.ExpandedName(Namespace, u'b_source_valeur'), T_experiences_experience_b_source_valeur, scope=T_experiences_experience, location=pyxb.utils.utility.Location('/home/A96028/QT5GitEficasTravail/eficas/Map2/cata2.xsd', 95, 3))) - -T_experiences_experience._AddElement(pyxb.binding.basis.element(pyxb.namespace.ExpandedName(Namespace, u'b_source_dico'), T_experiences_experience_b_source_dico, scope=T_experiences_experience, location=pyxb.utils.utility.Location('/home/A96028/QT5GitEficasTravail/eficas/Map2/cata2.xsd', 96, 3))) - -T_experiences_experience._AddElement(pyxb.binding.basis.element(pyxb.namespace.ExpandedName(Namespace, u'Associated_simulation_step_number'), T_experiences_experience_Associated_simulation_step_number, scope=T_experiences_experience, location=pyxb.utils.utility.Location('/home/A96028/QT5GitEficasTravail/eficas/Map2/cata2.xsd', 97, 3))) - -T_experiences_experience._AddElement(pyxb.binding.basis.element(pyxb.namespace.ExpandedName(Namespace, u'dependancy'), T_experiences_experience_dependancy, scope=T_experiences_experience, location=pyxb.utils.utility.Location('/home/A96028/QT5GitEficasTravail/eficas/Map2/cata2.xsd', 98, 3))) - -def _BuildAutomaton_7 (): - # Remove this helper function from the namespace after it is invoked - global _BuildAutomaton_7 - del _BuildAutomaton_7 - import pyxb.utils.fac as fac - - counters = set() - cc_0 = fac.CounterCondition(min=0L, max=1L, metadata=pyxb.utils.utility.Location('/home/A96028/QT5GitEficasTravail/eficas/Map2/cata2.xsd', 94, 3)) - counters.add(cc_0) - cc_1 = fac.CounterCondition(min=0L, max=1L, metadata=pyxb.utils.utility.Location('/home/A96028/QT5GitEficasTravail/eficas/Map2/cata2.xsd', 95, 3)) - counters.add(cc_1) - cc_2 = fac.CounterCondition(min=0L, max=1L, metadata=pyxb.utils.utility.Location('/home/A96028/QT5GitEficasTravail/eficas/Map2/cata2.xsd', 96, 3)) - counters.add(cc_2) - cc_3 = fac.CounterCondition(min=0L, max=1L, metadata=pyxb.utils.utility.Location('/home/A96028/QT5GitEficasTravail/eficas/Map2/cata2.xsd', 98, 3)) - counters.add(cc_3) - states = [] - final_update = None - symbol = pyxb.binding.content.ElementUse(T_experiences_experience._UseForTag(pyxb.namespace.ExpandedName(Namespace, u'experience_Name')), pyxb.utils.utility.Location('/home/A96028/QT5GitEficasTravail/eficas/Map2/cata2.xsd', 92, 3)) - st_0 = fac.State(symbol, is_initial=True, final_update=final_update, is_unordered_catenation=False) - states.append(st_0) - final_update = None - symbol = pyxb.binding.content.ElementUse(T_experiences_experience._UseForTag(pyxb.namespace.ExpandedName(Namespace, u'source')), pyxb.utils.utility.Location('/home/A96028/QT5GitEficasTravail/eficas/Map2/cata2.xsd', 93, 3)) - st_1 = fac.State(symbol, is_initial=False, final_update=final_update, is_unordered_catenation=False) - states.append(st_1) - final_update = None - symbol = pyxb.binding.content.ElementUse(T_experiences_experience._UseForTag(pyxb.namespace.ExpandedName(Namespace, u'b_source_file')), pyxb.utils.utility.Location('/home/A96028/QT5GitEficasTravail/eficas/Map2/cata2.xsd', 94, 3)) - st_2 = fac.State(symbol, is_initial=False, final_update=final_update, is_unordered_catenation=False) - states.append(st_2) - final_update = None - symbol = pyxb.binding.content.ElementUse(T_experiences_experience._UseForTag(pyxb.namespace.ExpandedName(Namespace, u'b_source_valeur')), pyxb.utils.utility.Location('/home/A96028/QT5GitEficasTravail/eficas/Map2/cata2.xsd', 95, 3)) - st_3 = fac.State(symbol, is_initial=False, final_update=final_update, is_unordered_catenation=False) - states.append(st_3) - final_update = None - symbol = pyxb.binding.content.ElementUse(T_experiences_experience._UseForTag(pyxb.namespace.ExpandedName(Namespace, u'b_source_dico')), pyxb.utils.utility.Location('/home/A96028/QT5GitEficasTravail/eficas/Map2/cata2.xsd', 96, 3)) - st_4 = fac.State(symbol, is_initial=False, final_update=final_update, is_unordered_catenation=False) - states.append(st_4) - final_update = set() - symbol = pyxb.binding.content.ElementUse(T_experiences_experience._UseForTag(pyxb.namespace.ExpandedName(Namespace, u'Associated_simulation_step_number')), pyxb.utils.utility.Location('/home/A96028/QT5GitEficasTravail/eficas/Map2/cata2.xsd', 97, 3)) - st_5 = fac.State(symbol, is_initial=False, final_update=final_update, is_unordered_catenation=False) - states.append(st_5) - final_update = set() - final_update.add(fac.UpdateInstruction(cc_3, False)) - symbol = pyxb.binding.content.ElementUse(T_experiences_experience._UseForTag(pyxb.namespace.ExpandedName(Namespace, u'dependancy')), pyxb.utils.utility.Location('/home/A96028/QT5GitEficasTravail/eficas/Map2/cata2.xsd', 98, 3)) - st_6 = fac.State(symbol, is_initial=False, final_update=final_update, is_unordered_catenation=False) - states.append(st_6) - transitions = [] - transitions.append(fac.Transition(st_1, [ - ])) - st_0._set_transitionSet(transitions) - transitions = [] - transitions.append(fac.Transition(st_2, [ - ])) - transitions.append(fac.Transition(st_3, [ - ])) - transitions.append(fac.Transition(st_4, [ - ])) - transitions.append(fac.Transition(st_5, [ - ])) - st_1._set_transitionSet(transitions) - transitions = [] - transitions.append(fac.Transition(st_2, [ - fac.UpdateInstruction(cc_0, True) ])) - transitions.append(fac.Transition(st_3, [ - fac.UpdateInstruction(cc_0, False) ])) - transitions.append(fac.Transition(st_4, [ - fac.UpdateInstruction(cc_0, False) ])) - transitions.append(fac.Transition(st_5, [ - fac.UpdateInstruction(cc_0, False) ])) - st_2._set_transitionSet(transitions) - transitions = [] - transitions.append(fac.Transition(st_3, [ - fac.UpdateInstruction(cc_1, True) ])) - transitions.append(fac.Transition(st_4, [ - fac.UpdateInstruction(cc_1, False) ])) - transitions.append(fac.Transition(st_5, [ - fac.UpdateInstruction(cc_1, False) ])) - st_3._set_transitionSet(transitions) - transitions = [] - transitions.append(fac.Transition(st_4, [ - fac.UpdateInstruction(cc_2, True) ])) - transitions.append(fac.Transition(st_5, [ - fac.UpdateInstruction(cc_2, False) ])) - st_4._set_transitionSet(transitions) - transitions = [] - transitions.append(fac.Transition(st_6, [ - ])) - st_5._set_transitionSet(transitions) - transitions = [] - transitions.append(fac.Transition(st_6, [ - fac.UpdateInstruction(cc_3, True) ])) - st_6._set_transitionSet(transitions) - return fac.Automaton(states, counters, False, containing_state=None) -T_experiences_experience._Automaton = _BuildAutomaton_7() - - - - -T_experiences_dimensions._AddElement(pyxb.binding.basis.element(pyxb.namespace.ExpandedName(Namespace, u'diameter'), T_experiences_dimensions_diameter, scope=T_experiences_dimensions, location=pyxb.utils.utility.Location('/home/A96028/QT5GitEficasTravail/eficas/Map2/cata2.xsd', 103, 3))) - -T_experiences_dimensions._AddElement(pyxb.binding.basis.element(pyxb.namespace.ExpandedName(Namespace, u'thickness'), T_experiences_dimensions_thickness, scope=T_experiences_dimensions, location=pyxb.utils.utility.Location('/home/A96028/QT5GitEficasTravail/eficas/Map2/cata2.xsd', 104, 3))) - -T_experiences_dimensions._AddElement(pyxb.binding.basis.element(pyxb.namespace.ExpandedName(Namespace, u'number_elements'), T_experiences_dimensions_number_elements, scope=T_experiences_dimensions, location=pyxb.utils.utility.Location('/home/A96028/QT5GitEficasTravail/eficas/Map2/cata2.xsd', 105, 3))) - -def _BuildAutomaton_8 (): - # Remove this helper function from the namespace after it is invoked - global _BuildAutomaton_8 - del _BuildAutomaton_8 - import pyxb.utils.fac as fac - - counters = set() - states = [] - final_update = None - symbol = pyxb.binding.content.ElementUse(T_experiences_dimensions._UseForTag(pyxb.namespace.ExpandedName(Namespace, u'diameter')), pyxb.utils.utility.Location('/home/A96028/QT5GitEficasTravail/eficas/Map2/cata2.xsd', 103, 3)) - st_0 = fac.State(symbol, is_initial=True, final_update=final_update, is_unordered_catenation=False) - states.append(st_0) - final_update = None - symbol = pyxb.binding.content.ElementUse(T_experiences_dimensions._UseForTag(pyxb.namespace.ExpandedName(Namespace, u'thickness')), pyxb.utils.utility.Location('/home/A96028/QT5GitEficasTravail/eficas/Map2/cata2.xsd', 104, 3)) - st_1 = fac.State(symbol, is_initial=False, final_update=final_update, is_unordered_catenation=False) - states.append(st_1) - final_update = set() - symbol = pyxb.binding.content.ElementUse(T_experiences_dimensions._UseForTag(pyxb.namespace.ExpandedName(Namespace, u'number_elements')), pyxb.utils.utility.Location('/home/A96028/QT5GitEficasTravail/eficas/Map2/cata2.xsd', 105, 3)) - st_2 = fac.State(symbol, is_initial=False, final_update=final_update, is_unordered_catenation=False) - states.append(st_2) - transitions = [] - transitions.append(fac.Transition(st_1, [ - ])) - st_0._set_transitionSet(transitions) - transitions = [] - transitions.append(fac.Transition(st_2, [ - ])) - st_1._set_transitionSet(transitions) - transitions = [] - st_2._set_transitionSet(transitions) - return fac.Automaton(states, counters, False, containing_state=None) -T_experiences_dimensions._Automaton = _BuildAutomaton_8() - - - - -T_experiences._AddElement(pyxb.binding.basis.element(pyxb.namespace.ExpandedName(Namespace, u'description'), T_experiences_description, scope=T_experiences, location=pyxb.utils.utility.Location('/home/A96028/QT5GitEficasTravail/eficas/Map2/cata2.xsd', 110, 3))) - -T_experiences._AddElement(pyxb.binding.basis.element(pyxb.namespace.ExpandedName(Namespace, u'experience'), T_experiences_experience, scope=T_experiences, location=pyxb.utils.utility.Location('/home/A96028/QT5GitEficasTravail/eficas/Map2/cata2.xsd', 111, 3))) - -T_experiences._AddElement(pyxb.binding.basis.element(pyxb.namespace.ExpandedName(Namespace, u'dimensions'), T_experiences_dimensions, scope=T_experiences, location=pyxb.utils.utility.Location('/home/A96028/QT5GitEficasTravail/eficas/Map2/cata2.xsd', 112, 3))) - -T_experiences._AddElement(pyxb.binding.basis.element(pyxb.namespace.ExpandedName(Namespace, u'type_experience'), T_experiences_type_experience, scope=T_experiences, location=pyxb.utils.utility.Location('/home/A96028/QT5GitEficasTravail/eficas/Map2/cata2.xsd', 113, 3))) - -def _BuildAutomaton_9 (): - # Remove this helper function from the namespace after it is invoked - global _BuildAutomaton_9 - del _BuildAutomaton_9 - import pyxb.utils.fac as fac - - counters = set() - cc_0 = fac.CounterCondition(min=0L, max=None, metadata=pyxb.utils.utility.Location('/home/A96028/QT5GitEficasTravail/eficas/Map2/cata2.xsd', 111, 3)) - counters.add(cc_0) - cc_1 = fac.CounterCondition(min=0L, max=1L, metadata=pyxb.utils.utility.Location('/home/A96028/QT5GitEficasTravail/eficas/Map2/cata2.xsd', 112, 3)) - counters.add(cc_1) - states = [] - final_update = None - symbol = pyxb.binding.content.ElementUse(T_experiences._UseForTag(pyxb.namespace.ExpandedName(Namespace, u'description')), pyxb.utils.utility.Location('/home/A96028/QT5GitEficasTravail/eficas/Map2/cata2.xsd', 110, 3)) - st_0 = fac.State(symbol, is_initial=True, final_update=final_update, is_unordered_catenation=False) - states.append(st_0) - final_update = None - symbol = pyxb.binding.content.ElementUse(T_experiences._UseForTag(pyxb.namespace.ExpandedName(Namespace, u'experience')), pyxb.utils.utility.Location('/home/A96028/QT5GitEficasTravail/eficas/Map2/cata2.xsd', 111, 3)) - st_1 = fac.State(symbol, is_initial=False, final_update=final_update, is_unordered_catenation=False) - states.append(st_1) - final_update = None - symbol = pyxb.binding.content.ElementUse(T_experiences._UseForTag(pyxb.namespace.ExpandedName(Namespace, u'dimensions')), pyxb.utils.utility.Location('/home/A96028/QT5GitEficasTravail/eficas/Map2/cata2.xsd', 112, 3)) - st_2 = fac.State(symbol, is_initial=False, final_update=final_update, is_unordered_catenation=False) - states.append(st_2) - final_update = set() - symbol = pyxb.binding.content.ElementUse(T_experiences._UseForTag(pyxb.namespace.ExpandedName(Namespace, u'type_experience')), pyxb.utils.utility.Location('/home/A96028/QT5GitEficasTravail/eficas/Map2/cata2.xsd', 113, 3)) - st_3 = fac.State(symbol, is_initial=False, final_update=final_update, is_unordered_catenation=False) - states.append(st_3) - transitions = [] - transitions.append(fac.Transition(st_1, [ - ])) - transitions.append(fac.Transition(st_2, [ - ])) - transitions.append(fac.Transition(st_3, [ - ])) - st_0._set_transitionSet(transitions) - transitions = [] - transitions.append(fac.Transition(st_1, [ - fac.UpdateInstruction(cc_0, True) ])) - transitions.append(fac.Transition(st_2, [ - fac.UpdateInstruction(cc_0, False) ])) - transitions.append(fac.Transition(st_3, [ - fac.UpdateInstruction(cc_0, False) ])) - st_1._set_transitionSet(transitions) - transitions = [] - transitions.append(fac.Transition(st_2, [ - fac.UpdateInstruction(cc_1, True) ])) - transitions.append(fac.Transition(st_3, [ - fac.UpdateInstruction(cc_1, False) ])) - st_2._set_transitionSet(transitions) - transitions = [] - st_3._set_transitionSet(transitions) - return fac.Automaton(states, counters, False, containing_state=None) -T_experiences._Automaton = _BuildAutomaton_9() - - - - -T_Map2._AddElement(pyxb.binding.basis.element(pyxb.namespace.ExpandedName(Namespace, u'experiences'), T_experiences, scope=T_Map2, location=pyxb.utils.utility.Location('/home/A96028/QT5GitEficasTravail/eficas/Map2/cata2.xsd', 120, 3))) - -def _BuildAutomaton_10 (): - # Remove this helper function from the namespace after it is invoked - global _BuildAutomaton_10 - del _BuildAutomaton_10 - import pyxb.utils.fac as fac - - counters = set() - cc_0 = fac.CounterCondition(min=0L, max=None, metadata=pyxb.utils.utility.Location('/home/A96028/QT5GitEficasTravail/eficas/Map2/cata2.xsd', 119, 2)) - counters.add(cc_0) - cc_1 = fac.CounterCondition(min=0L, max=1L, metadata=pyxb.utils.utility.Location('/home/A96028/QT5GitEficasTravail/eficas/Map2/cata2.xsd', 120, 3)) - counters.add(cc_1) - states = [] - final_update = set() - final_update.add(fac.UpdateInstruction(cc_0, False)) - final_update.add(fac.UpdateInstruction(cc_1, False)) - symbol = pyxb.binding.content.ElementUse(T_Map2._UseForTag(pyxb.namespace.ExpandedName(Namespace, u'experiences')), pyxb.utils.utility.Location('/home/A96028/QT5GitEficasTravail/eficas/Map2/cata2.xsd', 120, 3)) - st_0 = fac.State(symbol, is_initial=True, final_update=final_update, is_unordered_catenation=False) - states.append(st_0) - transitions = [] - transitions.append(fac.Transition(st_0, [ - fac.UpdateInstruction(cc_0, True), - fac.UpdateInstruction(cc_1, False) ])) - transitions.append(fac.Transition(st_0, [ - fac.UpdateInstruction(cc_1, True) ])) - st_0._set_transitionSet(transitions) - return fac.Automaton(states, counters, True, containing_state=None) -T_Map2._Automaton = _BuildAutomaton_10() - diff --git a/Map2/cata_map.py b/Map2/cata_map.py deleted file mode 100644 index daad803e..00000000 --- a/Map2/cata_map.py +++ /dev/null @@ -1,72 +0,0 @@ -# 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, re -import Accas -from Accas import * - -JdC = JDC_CATA ( - code = 'Map2', - ) -VERSION_CATALOGUE='V_0' - - -Experiences = PROC(nom = 'experiences', - - description = SIMP(statut='o', typ='TXM', defaut=''), - experience = FACT(statut='o', max = "**", - experience_Name = SIMP (statut='o', typ='TXM'), - source = SIMP(statut='o', typ='TXM', into=['File','Dico','Value']), - b_source_file = BLOC(condition="source == 'File'", - exp_file = SIMP(statut = "o", typ = 'Fichier'), - ), - b_source_valeur = BLOC(condition="source == 'Value'", - exp_value = SIMP(statut = "o", typ = 'R'), - ), - b_source_dico = BLOC(condition="source == 'Dico'", - exp_dico = SIMP(statut = "o", typ = 'TXM'), - ), - Associated_simulation_step_number = SIMP(statut='o', typ='I', val_min=1), - dependancy = FACT( statut='o', - type_dependancy= SIMP(statut='o', - typ='TXM', into=['temperature','moisture','irradiation']), - source = SIMP(statut='o', typ='TXM', into=['File','Dico','Value']), - b_source_file = BLOC(condition="source == 'File'", - exp_file = SIMP(statut = "o", typ = 'Fichier'),), - b_source_valeur = BLOC(condition="source == 'Value'", - exp_value = SIMP(statut = "o", typ = 'R'),), - b_source_dico = BLOC(condition="source == 'Dico'", - exp_dico = SIMP(statut = "o", typ = 'TXM'),), - ), - ), - dimensions= FACT( statut = 'f', - diameter = SIMP(statut='o', typ='R', val_min = 0), - thickness = SIMP(statut='o', typ='R', val_min = 0), - number_elements = SIMP(statut='o', typ='I', val_min = 0), - ), - type_experience = SIMP(statut='o', typ='TXM', - into=['tension','creep','relaxation','cyclic','cyclic_stab','tube']), -) - - -TEXTE_NEW_JDC = 'Experiences()' - - - - diff --git a/Map2/cata_map2.xsd b/Map2/cata_map2.xsd deleted file mode 100644 index 489f55b4..00000000 --- a/Map2/cata_map2.xsd +++ /dev/null @@ -1,124 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/Map2/cata_vimmp.py b/Map2/cata_vimmp.py deleted file mode 100644 index 25db9403..00000000 --- a/Map2/cata_vimmp.py +++ /dev/null @@ -1,94 +0,0 @@ -# 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, re -import Accas -from Accas import * - -JdC = JDC_CATA ( - code = 'Map2', - ) -VERSION_CATALOGUE='V_0' - -def getCfdInstance(): - return ('Code_Saturne - UoM','OpenFOAM - POLITO') - -def getRhInstance(): - return ('TFEM - UniNa','OpenFOAM - IBM-UK') - -def getSurfTensInstance(): - return ('GROMACS - UoM','LAMMPS - ICPF') - -case = PROC(nom = 'case', - - usecase = SIMP(statut='o', typ='TXM', into=['Emulsion','Surfactant Mesophases','nano powder dispersion']), - - b_Emulsion = BLOC(condition="usecase == 'Emulsion'", - workflow = SIMP(statut='o', typ='TXM', into=['Dilute emulsion /suspension','Concentrated emulsions']), - b_Dilute_emulsion = BLOC(condition="workflow == 'Dilute emulsion /suspension'", - Dilute_emulsion= FACT( statut = 'o', - cfd = SIMP(statut='o', typ='TXM', into=getCfdInstance()), - rh = SIMP(statut='o', typ='TXM', into=getRhInstance()), - surfTens = SIMP(statut='o', typ='TXM', into=getSurfTensInstance()), - ), - - ), - ), -) - -# experience = FACT(statut='o', max = "**", -# experience_Name = SIMP (statut='o', typ='TXM'), -# source = SIMP(statut='o', typ='TXM', into=['File','Dico','Value']), -# b_source_file = BLOC(condition="source == 'File'", -# exp_file = SIMP(statut = "o", typ = 'Fichier'), -# ), -# b_source_valeur = BLOC(condition="source == 'Value'", -# exp_value = SIMP(statut = "o", typ = 'R'), -# ), -# b_source_dico = BLOC(condition="source == 'Dico'", -# exp_dico = SIMP(statut = "o", typ = 'TXM'), -# ), -# Associated_simulation_step_number = SIMP(statut='o', typ='I', val_min=1), -# dependancy = FACT( statut='o', -# type_dependancy= SIMP(statut='o', -# typ='TXM', into=['temperature','moisture','irradiation']), -# source = SIMP(statut='o', typ='TXM', into=['File','Dico','Value']), -# b_source_file = BLOC(condition="source == 'File'", -# exp_file = SIMP(statut = "o", typ = 'Fichier'),), -# b_source_valeur = BLOC(condition="source == 'Value'", -# exp_value = SIMP(statut = "o", typ = 'R'),), -# b_source_dico = BLOC(condition="source == 'Dico'", -# exp_dico = SIMP(statut = "o", typ = 'TXM'),), -# ), -# ), -# dimensions= FACT( statut = 'f', -# diameter = SIMP(statut='o', typ='R', val_min = 0), -# thickness = SIMP(statut='o', typ='R', val_min = 0), -# number_elements = SIMP(statut='o', typ='I', val_min = 0), -# ), -# type_experience = SIMP(statut='o', typ='TXM', -# into=['tension','creep','relaxation','cyclic','cyclic_stab','tube']), -# ) - - -TEXTE_NEW_JDC = 'case()' - - - - diff --git a/Map2/configuration_Map2.py b/Map2/configuration_Map2.py deleted file mode 100644 index 6a8cc458..00000000 --- a/Map2/configuration_Map2.py +++ /dev/null @@ -1,43 +0,0 @@ -# -*- coding: utf-8 -*- -# maConfiguration MANAGEMENT OF EDF VERSION -# ====================================================================== -# COPYRIGHT (C) 1991 - 2002 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# -# -# ====================================================================== -""" - Ce module sert pour charger les paramètres de configuration d'EFICAS -""" -# Modules Python -from InterfaceQT4 import configuration -import os - - -class CONFIG(configuration.configBase): - - #----------------------------------- - def __init__(self,appli,repIni): - #----------------------------------- - - self.labels_user=['catalogues','lang'] - self.labels_eficas=['lang','rep_cata','catalogues'] - self.afficheOptionnelVide=True - configuration.configBase.__init__(self,appli,repIni) - - -def make_config(appli,rep): - return CONFIG(appli,rep) - diff --git a/Map2/experimental_plan_v2017.1.xsd b/Map2/experimental_plan_v2017.1.xsd deleted file mode 100755 index 04bff47d..00000000 --- a/Map2/experimental_plan_v2017.1.xsd +++ /dev/null @@ -1,99 +0,0 @@ -x - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/Map2/prefs.py b/Map2/prefs.py deleted file mode 100644 index b48cad1a..00000000 --- a/Map2/prefs.py +++ /dev/null @@ -1,22 +0,0 @@ -# Copyright (C) 2007-2012 EDF R&D -# -# 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 -# -code="Map2" -import sys, os -if os.path.dirname(os.path.abspath(__file__)) not in sys.path : - sys.path.insert(0,os.path.dirname(os.path.abspath(__file__))) diff --git a/Map2/prefs_Map2.py b/Map2/prefs_Map2.py deleted file mode 100644 index a1250153..00000000 --- a/Map2/prefs_Map2.py +++ /dev/null @@ -1,49 +0,0 @@ -# -*- coding: utf-8 -*- -# maConfiguration MANAGEMENT OF EDF VERSION -# ====================================================================== -# COPYRIGHT (C) 1991 - 2002 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# -# -# ====================================================================== - -import os,sys -# repIni sert a localiser le fichier editeur.ini -# Obligatoire -repIni=os.path.dirname(os.path.abspath(__file__)) -INSTALLDIR=os.path.join(repIni,'..') -sys.path[:0]=[INSTALLDIR] - - -# lang indique la langue utilisee pour les chaines d'aide : fr ou ang -lang='fr' - -# Codage des strings qui accepte les accents (en remplacement de 'ascii') -encoding='iso-8859-1' - -# -#typeDeCata='XML' -catalogues=( - ('Map2','V2017',os.path.join(repIni,'cata_map.py'),'python','python'), -) -#nombreDeBoutonParLigne=4 -simpleClic=True -closeFrameRechercheCommande=True -boutonDsMenuBar=False -closeArbre=True -afficheListesPliees=False -afficheCommandesPliees = False -#dumpXSD=True -#afficheIhm=False diff --git a/Map2/properties.py b/Map2/properties.py deleted file mode 100644 index 1d328a46..00000000 --- a/Map2/properties.py +++ /dev/null @@ -1,24 +0,0 @@ -#@ MODIF properties Accas DATE 11/06/2008 AUTEUR aster M.ADMINISTRATEUR -# RESPONSABLE D6BHHHH J-P.LEFEBVRE -# ====================================================================== -# COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# IDENTIFICATION DU GESTIONNAIRE DE COMMANDE ACCAS A PARTIR -# DE LA VERSION DU CODE_ASTER ASSOCIE -#---------------------------------------------------------------------- -version = "1.2" -date = "25/05/2010" -exploit = False diff --git a/Map2/qtEficasMap.py b/Map2/qtEficasMap.py deleted file mode 100755 index 91140d97..00000000 --- a/Map2/qtEficasMap.py +++ /dev/null @@ -1,38 +0,0 @@ -#!/usr/bin/env python -# -*- coding: utf-8 -*- -# Copyright (C) 2007-2013 EDF R&D -# -# 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 -# -""" - Ce module sert a lancer EFICAS configure pour MAP -""" -# Modules Python -# Modules Eficas -import prefs -name='prefs_'+prefs.code -__import__(name) - -import sys -reload(sys) -sys.setdefaultencoding('latin1') -import os -sys.path.append(os.path.join(os.path.abspath(os.path.dirname(__file__)),'..')) - -import prefs -from InterfaceQT4 import eficas_go -eficas_go.lanceEficas(code=prefs.code) diff --git a/Map2/test_1_exp.txt b/Map2/test_1_exp.txt deleted file mode 100755 index 4a4fbae2..00000000 --- a/Map2/test_1_exp.txt +++ /dev/null @@ -1,606 +0,0 @@ -# -2.6 0.000148206 29.74666469 -4.4 0.000318168 61.27013266 -5.9 0.00048855 88.91288191 -7.4 0.000619962 114.5756245 -8.9 0.000774778 140.5015588 -10.4 0.000919933 166.0683602 -11.9 0.001071892 193.2232231 -13.4 0.001226207 220.147416 -15 0.001390182 250.8308887 -16.8 0.001562893 277.8875828 -18.3 0.001729474 300.0852764 -19.8 0.001883021 315.0595725 -21.3 0.002031038 327.7368248 -22.9 0.002195989 337.7683163 -24.7 0.002378645 350.0372171 -26.3 0.002541675 360.3921235 -28.4 0.002748723 371.7292547 -29.9 0.002906898 378.6338568 -31.4 0.003050229 386.7412806 -33.1 0.003218106 391.4409578 -35.2 0.003429835 396.5624571 -37 0.003613544 405.1791728 -38.7 0.003774882 408.2100093 -40.4 0.003956147 413.8686359 -42.3 0.004135483 416.2068963 -44.3 0.004345511 419.2838967 -46.8 0.004589982 423.9925444 -48.7 0.004779908 425.3987372 -50.1 0.004960716 424.2345691 -51.3 0.004814931 398.2457519 -52.8 0.004677064 374.8474419 -54.3 0.00452451 352.6932001 -55.8 0.004380235 325.411588 -57.3 0.004225061 298.374176 -58.8 0.0040713 270.7559764 -60.3 0.00391501 247.1334785 -61.8 0.003776662 221.8717039 -63.3 0.003632257 194.3574399 -64.9 0.00346793 166.9011861 -66.4 0.003308038 140.7220364 -67.9 0.003167094 116.1468551 -69.4 0.003009203 91.008991 -70.9 0.002866946 66.47565961 -72.4 0.002715922 43.3482714 -73.9 0.002570113 17.24314587 -75.4 0.002410504 2.313067719 -76.9 0.002140446 -22.35796578 -78.6 0.002041511 -31.21032572 -80.1 0.001925674 -41.44841194 -81.6 0.00179202 -53.09151844 -83.1 0.001634668 -66.56595648 -84.6 0.001502058 -77.72589923 -86.1 0.001342969 -90.87817188 -87.6 0.001195121 -102.8700306 -89.1 0.001063372 -113.368689 -90.6 0.000898903 -127.731592 -92.1 0.000752599 -141.1447386 -93.6 0.000604391 -154.4128851 -95.1 0.000443127 -168.4844864 -96.6 0.000294397 -181.1248418 -98.1 0.000157793 -192.4493251 -99.6 9.80788E-06 -204.4088974 -101.1 -0.000156407 -217.4594004 -102.6 -0.00030414 -228.7192374 -104.1 -0.000450287 -239.5437518 -105.6 -0.000603673 -250.5681071 -107.1 -0.000755358 -261.1313739 -108.6 -0.000906167 -271.2997071 -110.1 -0.001049411 -280.6495729 -111.6 -0.001197611 -290.0066645 -113.1 -0.00133372 -298.3171248 -114.6 -0.001506063 -308.4506981 -116.1 -0.001656966 -316.9665 -117.6 -0.001799475 -324.7024856 -119.7 -0.002014756 -335.8249595 -121.2 -0.002172198 -343.5295673 -123 -0.002359475 -352.2215532 -124.8 -0.002540066 -360.116827 -126.5 -0.002707454 -367.0084803 -128.2 -0.002877299 -373.5819224 -129.7 -0.003033732 -379.2626329 -131 -0.00315408 -383.3890794 -132.5 -0.003308534 -388.3742124 -134 -0.003463526 -393.0255636 -135.7 -0.003636066 -397.789813 -138.1 -0.00388335 -403.8578655 -140.4 -0.004107393 -408.5825311 -143 -0.004366797 -413.1347624 -145 -0.004573577 -416.0577821 -147.3 -0.00479476 -418.4913934 -149.1 -0.004974891 -419.9440832 -150.1 -0.00508075 -420.5761541 -151.6 -0.004967325 -381.676048 -153.1 -0.004832719 -358.1098914 -154.6 -0.004683975 -333.229214 -156.1 -0.004550736 -310.3410602 -157.6 -0.004390222 -284.5382392 -159.1 -0.004240459 -258.6699426 -160.6 -0.004085308 -232.198894 -162.1 -0.00394017 -207.4694782 -163.6 -0.003780967 -181.1596453 -165.1 -0.003643088 -158.1377387 -166.6 -0.003486598 -132.9712719 -168.1 -0.003324202 -106.3848585 -169.3 -0.003209413 -87.44508028 -170.8 -0.003041764 -60.76873466 -172.3 -0.002900247 -36.68746725 -173.8 -0.002755026 -11.6772186 -175.3 -0.002587723 20.44261433 -176.8 -0.002435711 39.94651884 -178.3 -0.002287 60.61955914 -179.8 -0.002136365 83.69784057 -181.3 -0.001990457 104.1013971 -182.8 -0.001838024 124.8248219 -184.3 -0.001690532 145.0758427 -185.8 -0.001529979 164.2087549 -187.3 -0.001385152 180.3136021 -188.8 -0.001231617 196.2206066 -190.3 -0.001072648 216.8445438 -191.8 -0.000927825 233.6668819 -193.3 -0.000782417 248.105675 -194.8 -0.000628857 261.932075 -196.3 -0.000462639 278.4000635 -197.8 -0.000321164 291.6880846 -199.3 -0.000169287 304.2549193 -201.1 6.81983E-06 318.6841905 -202.1 0.000109856 325.5635202 -203.9 0.000300242 337.8626108 -205.5 0.000449442 348.5122323 -207.2 0.000628495 358.0922484 -208.7 0.000779617 367.5092757 -210.5 0.000956154 374.9713302 -212 0.001104409 380.2401423 -213.5 0.001257153 384.937793 -215.7 0.001484313 387.8955841 -217.8 0.001685958 393.0481672 -219.1 0.001820898 401.5568197 -220.9 0.001996318 403.4855664 -222.8 0.002184089 407.063961 -224.6 0.002364687 411.5879238 -226.5 0.002564587 413.1702781 -228.7 0.002778198 416.0550833 -230.7 0.0029792 410.1351202 -232.2 0.003132155 419.3443656 -233.8 0.003288593 422.1425951 -236.1 0.003521992 424.0300357 -237.7 0.003679444 425.3554046 -239.7 0.003878082 414.8364067 -241.5 0.004061467 425.7113338 -243.4 0.004248751 430.1072359 -245.7 0.004476076 419.1486537 -247.3 0.004637377 424.1735041 -249.2 0.00482187 426.9863665 -250.1 0.004913399 431.0380816 -250.8 0.004863001 420.2615917 -252.3 0.004720176 397.9602456 -253.8 0.004576579 371.7095852 -255.3 0.004438989 347.5444615 -256.8 0.00427175 319.7221756 -258.3 0.004122126 294.1781878 -259.8 0.003973432 266.7100132 -261.3 0.003831606 243.0183589 -262.8 0.003673265 217.3093706 -264.3 0.003532576 193.375513 -265.8 0.003387397 166.7841077 -267.3 0.003238065 141.0763562 -269.2 0.003042987 110.7391641 -270.7 0.002892628 84.9820897 -272.2 0.002729405 60.0365065 -273.7 0.002587162 39.4445695 -275.2 0.002434476 14.51816037 -276.7 0.002278332 1.676633954 -280.4 0.001924666 -41.1333032 -282 0.00176063 -66.24622643 -283.5 0.001617377 -84.95874703 -285 0.001468632 -102.5341153 -286.7 0.001299015 -123.36234 -288.2 0.00114068 -142.7729726 -289.7 0.000995242 -159.7052068 -291.2 0.000842338 -175.9008169 -292.7 0.000686196 -192.8154975 -294.2 0.000551853 -207.7824175 -295.7 0.000384308 -222.1933454 -297.2 0.000236537 -235.4169339 -298.7 8.2544E-05 -251.994431 -300.6 -0.000101107 -266.3945854 -302.2 -0.000254835 -280.4335058 -303.7 -0.000398762 -290.2594209 -305.4 -0.000574863 -302.611053 -306.9 -0.000726646 -314.3965006 -308.4 -0.000878531 -322.6439059 -309.9 -0.001027725 -333.9059353 -311.4 -0.001185677 -339.4847214 -313.1 -0.001352403 -348.0012417 -314.6 -0.00151014 -356.4747572 -316.4 -0.00169335 -362.0030284 -318.1 -0.001854806 -366.5367067 -319.7 -0.002016013 -372.0238209 -321.7 -0.002225974 -377.7326941 -323.4 -0.002419965 -382.1316659 -325.2 -0.002577089 -384.060055 -327 -0.002754325 -388.6665106 -329.4 -0.003009812 -390.8833861 -331.5 -0.003214024 -394.8296607 -333.7 -0.003426852 -397.0702589 -336.2 -0.003684031 -400.7323384 -337.8 -0.003833093 -402.915746 -339.5 -0.004007254 -404.0904343 -341.4 -0.004203793 -407.3709548 -343.2 -0.004387962 -405.8067799 -345 -0.004561578 -406.8196118 -346.6 -0.004724751 -410.6304944 -348.3 -0.004891161 -412.319392 -349.7 -0.005028892 -408.9535773 -350.9 -0.005011958 -402.4095833 -352.4 -0.004894136 -383.4145963 -353.9 -0.004765846 -356.911689 -355.4 -0.004616052 -332.1252763 -356.9 -0.004462737 -310.7447922 -358.4 -0.004318676 -283.1489146 -359.9 -0.004168364 -257.5204968 -361.4 -0.004016409 -233.8035256 -362.9 -0.003858597 -208.2227618 -364.4 -0.003712884 -183.2838356 -365.9 -0.0035643 -159.9403471 -367.4 -0.003401368 -132.534802 -368.9 -0.003264621 -107.9946607 -370.4 -0.003108303 -81.10229671 -371.9 -0.002949403 -56.85465038 -373.4 -0.002799005 -32.31644258 -374.9 -0.00265081 -4.78788279 -376.4 -0.002483504 24.00542051 -377.9 -0.002331292 45.41882128 -379.4 -0.002185161 66.91408157 -380.9 -0.002024514 88.34532648 -382.4 -0.001878481 108.9888737 -383.9 -0.001730843 126.5509427 -385.4 -0.001579005 144.1608369 -386.9 -0.00142687 165.819332 -388.4 -0.001265261 184.0553135 -389.9 -0.001123492 199.2369294 -391.4 -0.000956047 218.4117436 -392.9 -0.00081335 232.6752841 -394.4 -0.000669392 248.2254952 -395.9 -0.000517756 261.5330219 -397.4 -0.000362627 276.1183381 -398.9 -0.000212042 288.2529199 -400.1 -8.80341E-05 298.7441421 -401.7 7.57107E-05 313.0680621 -403.3 0.000232298 322.758764 -405.1 0.000414601 337.1573091 -406.7 0.000562466 344.6542919 -408.2 0.000714332 355.9033871 -410.5 0.000943366 365.1759326 -412.4 0.001138612 375.9728372 -413.9 0.001278713 379.3661296 -415.7 0.001468498 386.5801096 -417.6 0.001656354 393.9267099 -419.1 0.001821099 396.8736529 -421 0.002006153 403.619796 -422.7 0.002161526 405.6529403 -424.7 0.00236611 407.3086679 -426.7 0.002572861 412.3547971 -429.5 0.002855986 412.4194682 -431.6 0.003058209 416.9347286 -433.5 0.003263879 422.9052961 -435 0.0034119 424.4579077 -437.1 0.003617094 422.5578606 -439 0.00379953 419.4726944 -440.8 0.003980634 428.9646745 -442.6 0.004166546 425.683111 -444.3 0.00433534 431.0244918 -446 0.004507137 430.7250381 -447.9 0.004680686 433.0239296 -449 0.004799954 429.9560785 -450.2 0.004971906 429.9123883 -451.7 0.004785715 397.0274329 -453.2 0.004642373 373.8752902 -454.7 0.004489511 347.4491835 -456.2 0.004340813 320.8056688 -457.7 0.004196803 295.2218354 -459.2 0.004036991 270.7068324 -460.7 0.003891899 245.4821467 -462.2 0.003740634 219.0307975 -463.7 0.003606016 194.2353994 -465.2 0.003436607 167.3488915 -466.7 0.003296306 144.709155 -468.2 0.003135501 117.5377145 -469.7 0.002989616 92.23229438 -471.2 0.002843978 69.1749379 -472.7 0.002708338 49.93963242 -474.2 0.00253869 24.87661876 -475.7 0.002387416 6.891570882 -477.4 0.001938032 -30.29732655 -478.9 0.002010555 -24.39946682 -480.4 0.001895906 -33.70485234 -481.9 0.001766687 -44.07324783 -483.4 0.001621981 -56.83748797 -484.9 0.001471216 -72.25095315 -486.4 0.001319283 -87.44708236 -487.9 0.001179976 -101.0833333 -489.4 0.001038661 -114.6258621 -490.9 0.000890326 -128.52659 -492.4 0.00072563 -143.5830342 -493.9 0.000567122 -157.6987041 -495.4 0.000433267 -169.3324601 -496.9 0.000283369 -182.0492283 -498.4 0.000124211 -195.1914235 -499.9 -2.45171E-05 -207.1371024 -501.7 -0.000209805 -221.5661521 -503.2 -0.000352744 -232.3538682 -504.7 -0.000501108 -243.2346134 -506.2 -0.000654261 -254.1285149 -507.7 -0.000808736 -264.7684508 -509.3 -0.000941094 -273.6071325 -510.9 -0.001114929 -284.8258964 -512.5 -0.001280083 -295.0745499 -514 -0.001443767 -304.8379202 -515.5 -0.001587599 -313.0933859 -517 -0.001751418 -322.1270073 -518.5 -0.001895214 -329.7326093 -520 -0.002044936 -337.3299552 -521.6 -0.002198133 -344.763912 -523.2 -0.00236221 -352.3446829 -525 -0.002555291 -360.7606287 -526.5 -0.002700664 -366.7369124 -528.1 -0.002853709 -372.6941836 -529.9 -0.003044476 -379.6396378 -531.6 -0.003214963 -385.395827 -533.2 -0.003381729 -390.6146449 -534.7 -0.003517447 -394.5612776 -536.5 -0.003693511 -399.2792684 -538.2 -0.003871096 -403.5782525 -540.2 -0.004079803 -408.0403841 -542.4 -0.004290878 -411.9044577 -544.2 -0.004469103 -414.6591987 -545.9 -0.004642018 -416.887356 -547.6 -0.004814291 -418.6718673 -549.7 -0.005026443 -420.2723884 -550.6 -0.005052347 -408.6507559 -552.1 -0.004916071 -391.1839724 -553.6 -0.004793196 -367.274493 -555.1 -0.004643203 -345.1412022 -556.6 -0.004498215 -318.0846572 -558.1 -0.00434513 -293.7107384 -559.6 -0.004192891 -269.6070075 -561.1 -0.004044123 -241.7125851 -562.6 -0.003901629 -216.6219801 -564.1 -0.003744699 -190.9498721 -565.6 -0.003601774 -167.1922356 -567.1 -0.003451004 -141.6524649 -568.6 -0.003282778 -117.3390895 -570.1 -0.00313448 -91.26270562 -571.6 -0.00298889 -64.80244547 -573.1 -0.002834333 -41.70700535 -574.6 -0.002681422 -14.26903531 -576.1 -0.002520827 14.87105526 -577.6 -0.002368426 36.54228896 -579.1 -0.002224751 57.08113685 -580.6 -0.002059139 80.03909886 -582.1 -0.001918403 100.8389965 -583.6 -0.001756527 120.5570772 -585.1 -0.001616078 140.7962143 -586.6 -0.001458127 160.9141082 -588.1 -0.001312408 176.9901663 -589.6 -0.001163095 196.3473409 -591.1 -0.001009649 212.7156556 -592.6 -0.000848225 228.8952321 -594.1 -0.000705612 243.9119369 -595.6 -0.000554615 260.2000237 -597.1 -0.000389291 272.6793289 -598.6 -0.000252365 288.1308794 -600.1 -0.000103111 302.4137914 -602.1 0.000102332 317.579627 -603.8 0.00027572 328.4794986 -605.8 0.000475242 341.1238194 -607.3 0.000628479 354.7712862 -609.3 0.000823084 366.9663668 -611.1 0.001007372 373.2368648 -612.7 0.001166751 383.590728 -614.3 0.001322117 390.5518651 -616 0.001487035 396.0568011 -617.8 0.001673892 399.9305069 -620 0.00189832 405.9145749 -621.9 0.002084019 407.6617658 -624.3 0.002324473 414.7869945 -625.8 0.00249196 419.6437299 -627.7 0.002668672 419.5927083 -629.5 0.002840989 424.5041907 -631.1 0.002998349 426.9238412 -633.2 0.003223634 427.2748232 -635.1 0.003403146 428.9594591 -637.2 0.003616043 431.7268133 -639 0.003781864 431.5191209 -640.5 0.003935997 436.8541241 -642.4 0.004121536 435.2630675 -644.3 0.004316175 431.468457 -646.3 0.004509059 434.969306 -647.9 0.004677559 438.9229715 -649.5 0.004838321 429.4698834 -650.7 0.004861187 436.9179308 -652.3 0.004722087 408.4958434 -653.8 0.004581332 383.5607171 -655.3 0.004430973 358.5121036 -656.8 0.004274597 330.4098845 -658.3 0.004126841 302.6582301 -659.8 0.003969701 278.2160342 -661.3 0.003833076 254.6697557 -662.8 0.003686058 226.4601141 -664.3 0.003524989 201.882422 -665.8 0.00337979 178.9720654 -667.3 0.003230534 152.802676 -668.8 0.003076209 128.4585893 -670.3 0.002932977 103.7609428 -671.8 0.002788875 82.56966621 -673.3 0.002637888 57.42669478 -674.8 0.002478635 36.21571511 -676.3 0.002333679 13.02180067 -678.1 0.002094696 0.646902248 -681.1 0.001853387 -26.2292698 -682.6 0.001717336 -48.15888777 -684.1 0.001543631 -69.88822669 -685.6 0.001407617 -91.04905277 -687.1 0.001263327 -109.422721 -688.6 0.001113586 -124.2397502 -690.1 0.000966643 -143.3873773 -691.6 0.000811144 -159.8643064 -693.1 0.000658372 -174.6688783 -694.6 0.000509757 -193.867743 -696.1 0.000363959 -205.410257 -697.6 0.000199535 -221.4336246 -699.1 6.43346E-05 -235.2877408 -700.7 -9.47359E-05 -247.498557 -702.3 -0.000252571 -261.2589598 -703.9 -0.000420231 -274.0387619 -705.4 -0.00056354 -288.0373001 -707 -0.000718369 -297.0495224 -708.5 -0.000879946 -309.1782331 -710 -0.001035581 -319.4323778 -711.5 -0.001182434 -329.4410706 -713.1 -0.001334972 -338.0982578 -714.6 -0.001498919 -346.8323052 -716.5 -0.001677739 -353.7994325 -718 -0.001837408 -360.8879447 -719.6 -0.001995116 -366.5883243 -721.1 -0.002149105 -374.4746447 -722.6 -0.002307582 -376.3655722 -724.7 -0.002511106 -380.6207776 -726.6 -0.002699138 -385.2778673 -728.8 -0.002924821 -389.9270594 -730.4 -0.003086054 -392.0154572 -732.1 -0.003251883 -395.71172 -734.3 -0.00347892 -398.8814056 -735.8 -0.00362855 -399.9388814 -737.5 -0.003790348 -401.9894898 -739.5 -0.003999237 -404.0390253 -741.3 -0.0041659 -408.218056 -743.3 -0.004370511 -410.1765454 -745.3 -0.004565249 -408.7530375 -747.3 -0.004778225 -412.6723111 -749 -0.004951683 -410.930872 -750.1 -0.00504722 -416.8259203 -751.1 -0.00499979 -411.0791981 -752.6 -0.004866208 -389.7100985 -754.1 -0.004735397 -366.8638468 -755.6 -0.004597616 -345.8636403 -757.1 -0.004437088 -322.0198452 -758.6 -0.004292358 -295.647651 -760.1 -0.00414076 -269.7989047 -761.6 -0.003993455 -242.4094081 -763.1 -0.003843705 -219.8844105 -764.6 -0.003689243 -193.9322352 -766.1 -0.003530411 -168.0472344 -767.6 -0.003393982 -143.8526511 -769.1 -0.003231122 -119.5451841 -770.6 -0.003083183 -93.94391626 -772.1 -0.002934035 -69.57832724 -773.6 -0.002772234 -40.96440971 -775.1 -0.002623021 -17.24745147 -776.6 -0.002462226 10.25309972 -778.1 -0.002307231 32.74381533 -779.6 -0.002158668 54.07773331 -781.1 -0.002009703 76.08288527 -782.6 -0.001864848 93.77156198 -784.1 -0.00171136 115.3530329 -785.6 -0.00156171 135.1534277 -787.1 -0.00141718 150.5157799 -788.6 -0.001258484 169.9727774 -790.1 -0.001103675 187.3800308 -791.6 -0.000958149 205.3098381 -793.1 -0.000803549 220.9005356 -794.6 -0.000656477 238.1515354 -796.1 -0.000495438 251.3239682 -797.6 -0.000352809 264.9661601 -799.1 -0.000204049 280.1635265 -800.2 -8.8827E-05 293.1962609 -802.2 0.000121268 304.7706783 -804.2 0.000307862 321.1407661 -805.7 0.000465574 332.9597414 -807.2 0.000613998 342.5350785 -808.7 0.000768494 352.1454632 -810.5 0.000944114 362.16712 -812 0.001084911 371.2510765 -813.6 0.001253554 377.7263463 -815.1 0.001410267 385.6541216 -816.6 0.001551651 393.1945562 -818.5 0.001734798 399.0286589 -820.5 0.001942314 402.9107094 -822.8 0.002172321 409.1742337 -824.2 0.002319952 411.8112326 -826.1 0.002495503 416.9693887 -828.3 0.002713935 419.6424484 -830.2 0.002901572 417.8596139 -831.8 0.003071849 424.2658317 -833.3 0.003225099 424.4266152 -835 0.003393682 428.9998114 -837.3 0.003618868 429.4184446 -838.8 0.003769841 430.3300083 -840.7 0.00394395 434.7514212 -842.6 0.004141532 435.6435537 -844.3 0.004320107 436.4667535 -846.6 0.004545207 435.7023835 -848.1 0.004686347 441.3920343 -849.5 0.004821587 432.6922596 -850.7 0.004872389 436.1673295 -852.2 0.004739366 413.415879 -853.7 0.004582556 390.08829 -855.2 0.004438564 360.5414629 -856.7 0.004281856 333.9099288 -858.2 0.004137655 309.3798757 -859.7 0.003996738 286.1706614 -861.2 0.003843905 260.7271075 -862.7 0.003691798 234.586969 -864.2 0.003537107 207.0432007 -865.7 0.003392342 184.9745214 -867.2 0.003250472 159.1394693 -868.7 0.003101677 134.4927549 -870.2 0.00294987 107.0637256 -871.7 0.002801585 86.31382883 -873.2 0.002636177 60.89115515 -874.7 0.002493026 39.95287046 -876.2 0.002342544 20.16677149 -877.7 0.002186513 2.67203711 -879.7 0.002000241 -10.3600733 -881.2 0.00185531 -42.96301678 -882.7 0.001708366 -64.28920478 -884.2 0.001556081 -84.66408402 -885.7 0.001403975 -105.6101769 -887.2 0.001271264 -120.912455 -888.7 0.001111284 -138.4346187 -890.2 0.000957435 -156.4091593 -891.7 0.000804997 -171.155259 -893.2 0.000664062 -187.0423853 -894.7 0.000507894 -202.4407238 -896.2 0.000354432 -216.396153 -897.7 0.000214186 -229.414925 -899.2 6.22028E-05 -245.9723502 -900.8 -9.78728E-05 -256.8186224 -902.3 -0.000241911 -270.2172995 -903.8 -0.000388382 -280.2366912 -905.3 -0.000547424 -294.603318 -906.8 -0.000709265 -304.5825362 -908.3 -0.000844185 -316.3419366 -909.8 -0.001006109 -324.6286809 -911.3 -0.001159095 -335.722059 -913 -0.00131609 -343.8197076 -914.5 -0.001469377 -351.93941 -916.5 -0.001662215 -360.2550924 -918.2 -0.001850365 -367.8667545 -919.7 -0.001995276 -374.25071 -921.5 -0.002179224 -379.5667887 -923 -0.002334092 -382.5640976 -924.8 -0.002507671 -387.2460127 -927.1 -0.002744755 -392.2320902 -928.7 -0.00290142 -394.8970735 -930.5 -0.003077838 -397.6677358 -932.5 -0.003281764 -400.0571966 -934.6 -0.003495285 -401.9835293 -936.3 -0.003664067 -405.2221477 -937.9 -0.003824917 -408.7218642 -939.8 -0.004003485 -408.7426066 -941.4 -0.004167604 -411.7015004 -942.9 -0.004304852 -411.3560915 -944.4 -0.004465693 -415.6360924 -946.2 -0.004642382 -414.6039188 -948.1 -0.004838073 -417.3695445 -950 -0.005009133 -416.5751934 -951.3 -0.004975972 -411.2556279 -952.8 -0.004855613 -391.2658393 -954.3 -0.004714971 -368.1509793 -955.8 -0.004559078 -342.8802788 -957.3 -0.004415802 -318.3013201 -958.8 -0.004269311 -293.232739 -960.3 -0.004104903 -267.870605 -961.8 -0.003954917 -240.3690666 -963.3 -0.003814752 -216.2202001 -964.8 -0.003667426 -190.7529831 -966.3 -0.003519122 -165.1806682 -967.8 -0.00336052 -140.8400536 -969.3 -0.003202914 -115.428254 -970.8 -0.003067649 -90.66024423 -972.3 -0.002911187 -64.9580881 -973.8 -0.002755543 -39.53035176 -975.3 -0.002597827 -16.84868149 -976.8 -0.002440363 11.1071635 \ No newline at end of file diff --git a/Map2/test_1_exp_comparison.png b/Map2/test_1_exp_comparison.png deleted file mode 100755 index f933074a..00000000 Binary files a/Map2/test_1_exp_comparison.png and /dev/null differ diff --git a/Map2/toto.py b/Map2/toto.py deleted file mode 100644 index 77771e5c..00000000 --- a/Map2/toto.py +++ /dev/null @@ -1,1135 +0,0 @@ -# ./toto.py -# -*- coding: utf-8 -*- -# PyXB bindings for NM:f60706fefcd649a021314f59336daefd34e2e939 -# Generated 2018-04-19 11:45:33.557319 by PyXB version 1.2.3 -# Namespace http://chercheurs.edf.com/logiciels/atmos - -import pyxb -import pyxb.binding -import pyxb.binding.saxer -import io -import pyxb.utils.utility -import pyxb.utils.domutils -import sys - -# Unique identifier for bindings created at the same time -_GenerationUID = pyxb.utils.utility.UniqueIdentifier('urn:uuid:678e1aac-43b6-11e8-b412-d0bf9c086a19') - -# Version of PyXB used to generate the bindings -_PyXBVersion = '1.2.3' -# Generated bindings are not compatible across PyXB versions -if pyxb.__version__ != _PyXBVersion: - raise pyxb.PyXBVersionError(_PyXBVersion) - -# Import bindings for namespaces imported into schema -import pyxb.binding.datatypes - -# NOTE: All namespace declarations are reserved within the binding -Namespace = pyxb.namespace.NamespaceForURI(u'http://chercheurs.edf.com/logiciels/atmos', create_if_missing=True) -Namespace.configureCategories(['typeBinding', 'elementBinding']) - -def CreateFromDocument (xml_text, default_namespace=None, location_base=None): - """Parse the given XML and use the document element to create a - Python instance. - - @param xml_text An XML document. This should be data (Python 2 - str or Python 3 bytes), or a text (Python 2 unicode or Python 3 - str) in the L{pyxb._InputEncoding} encoding. - - @keyword default_namespace The L{pyxb.Namespace} instance to use as the - default namespace where there is no default namespace in scope. - If unspecified or C{None}, the namespace of the module containing - this function will be used. - - @keyword location_base: An object to be recorded as the base of all - L{pyxb.utils.utility.Location} instances associated with events and - objects handled by the parser. You might pass the URI from which - the document was obtained. - """ - - if pyxb.XMLStyle_saxer != pyxb._XMLStyle: - dom = pyxb.utils.domutils.StringToDOM(xml_text) - return CreateFromDOM(dom.documentElement) - if default_namespace is None: - default_namespace = Namespace.fallbackNamespace() - saxer = pyxb.binding.saxer.make_parser(fallback_namespace=default_namespace, location_base=location_base) - handler = saxer.getContentHandler() - xmld = xml_text - if isinstance(xmld, unicode): - xmld = xmld.encode(pyxb._InputEncoding) - saxer.parse(io.BytesIO(xmld)) - instance = handler.rootObject() - return instance - -def CreateFromDOM (node, default_namespace=None): - """Create a Python instance from the given DOM node. - The node tag must correspond to an element declaration in this module. - - @deprecated: Forcing use of DOM interface is unnecessary; use L{CreateFromDocument}.""" - if default_namespace is None: - default_namespace = Namespace.fallbackNamespace() - return pyxb.binding.basis.element.AnyCreateFromDOM(node, default_namespace) - - -# Atomic simple type: {http://chercheurs.edf.com/logiciels/atmos}T_experiences_description -class T_experiences_description (pyxb.binding.datatypes.string): - - """An atomic simple type.""" - - _ExpandedName = pyxb.namespace.ExpandedName(Namespace, u'T_experiences_description') - _XSDLocation = pyxb.utils.utility.Location('/home/A96028/QT5GitEficasTravail/eficas/Map2/cata_map2.xsd', 3, 1) - _Documentation = None -T_experiences_description._InitializeFacetMap() -Namespace.addCategoryObject('typeBinding', u'T_experiences_description', T_experiences_description) - -# Atomic simple type: {http://chercheurs.edf.com/logiciels/atmos}T_experiences_experience_experience_Name -class T_experiences_experience_experience_Name (pyxb.binding.datatypes.string): - - """An atomic simple type.""" - - _ExpandedName = pyxb.namespace.ExpandedName(Namespace, u'T_experiences_experience_experience_Name') - _XSDLocation = pyxb.utils.utility.Location('/home/A96028/QT5GitEficasTravail/eficas/Map2/cata_map2.xsd', 6, 1) - _Documentation = None -T_experiences_experience_experience_Name._InitializeFacetMap() -Namespace.addCategoryObject('typeBinding', u'T_experiences_experience_experience_Name', T_experiences_experience_experience_Name) - -# Atomic simple type: {http://chercheurs.edf.com/logiciels/atmos}T_experiences_experience_source -class T_experiences_experience_source (pyxb.binding.datatypes.string): - - """An atomic simple type.""" - - _ExpandedName = pyxb.namespace.ExpandedName(Namespace, u'T_experiences_experience_source') - _XSDLocation = pyxb.utils.utility.Location('/home/A96028/QT5GitEficasTravail/eficas/Map2/cata_map2.xsd', 9, 1) - _Documentation = None -T_experiences_experience_source._InitializeFacetMap() -Namespace.addCategoryObject('typeBinding', u'T_experiences_experience_source', T_experiences_experience_source) - -# Atomic simple type: {http://chercheurs.edf.com/logiciels/atmos}T_experiences_experience_b_source_file_exp_file -class T_experiences_experience_b_source_file_exp_file (pyxb.binding.datatypes.string): - - """An atomic simple type.""" - - _ExpandedName = pyxb.namespace.ExpandedName(Namespace, u'T_experiences_experience_b_source_file_exp_file') - _XSDLocation = pyxb.utils.utility.Location('/home/A96028/QT5GitEficasTravail/eficas/Map2/cata_map2.xsd', 12, 1) - _Documentation = None -T_experiences_experience_b_source_file_exp_file._InitializeFacetMap() -Namespace.addCategoryObject('typeBinding', u'T_experiences_experience_b_source_file_exp_file', T_experiences_experience_b_source_file_exp_file) - -# Atomic simple type: {http://chercheurs.edf.com/logiciels/atmos}T_experiences_experience_b_source_valeur_exp_value -class T_experiences_experience_b_source_valeur_exp_value (pyxb.binding.datatypes.float): - - """An atomic simple type.""" - - _ExpandedName = pyxb.namespace.ExpandedName(Namespace, u'T_experiences_experience_b_source_valeur_exp_value') - _XSDLocation = pyxb.utils.utility.Location('/home/A96028/QT5GitEficasTravail/eficas/Map2/cata_map2.xsd', 15, 1) - _Documentation = None -T_experiences_experience_b_source_valeur_exp_value._InitializeFacetMap() -Namespace.addCategoryObject('typeBinding', u'T_experiences_experience_b_source_valeur_exp_value', T_experiences_experience_b_source_valeur_exp_value) - -# Atomic simple type: {http://chercheurs.edf.com/logiciels/atmos}T_experiences_experience_b_source_dico_exp_dico -class T_experiences_experience_b_source_dico_exp_dico (pyxb.binding.datatypes.string): - - """An atomic simple type.""" - - _ExpandedName = pyxb.namespace.ExpandedName(Namespace, u'T_experiences_experience_b_source_dico_exp_dico') - _XSDLocation = pyxb.utils.utility.Location('/home/A96028/QT5GitEficasTravail/eficas/Map2/cata_map2.xsd', 18, 1) - _Documentation = None -T_experiences_experience_b_source_dico_exp_dico._InitializeFacetMap() -Namespace.addCategoryObject('typeBinding', u'T_experiences_experience_b_source_dico_exp_dico', T_experiences_experience_b_source_dico_exp_dico) - -# Atomic simple type: {http://chercheurs.edf.com/logiciels/atmos}T_experiences_experience_Associated_simulation_step_number -class T_experiences_experience_Associated_simulation_step_number (pyxb.binding.datatypes.int): - - """An atomic simple type.""" - - _ExpandedName = pyxb.namespace.ExpandedName(Namespace, u'T_experiences_experience_Associated_simulation_step_number') - _XSDLocation = pyxb.utils.utility.Location('/home/A96028/QT5GitEficasTravail/eficas/Map2/cata_map2.xsd', 21, 1) - _Documentation = None -T_experiences_experience_Associated_simulation_step_number._InitializeFacetMap() -Namespace.addCategoryObject('typeBinding', u'T_experiences_experience_Associated_simulation_step_number', T_experiences_experience_Associated_simulation_step_number) - -# Atomic simple type: {http://chercheurs.edf.com/logiciels/atmos}T_experiences_experience_dependancy_type_dependancy -class T_experiences_experience_dependancy_type_dependancy (pyxb.binding.datatypes.string): - - """An atomic simple type.""" - - _ExpandedName = pyxb.namespace.ExpandedName(Namespace, u'T_experiences_experience_dependancy_type_dependancy') - _XSDLocation = pyxb.utils.utility.Location('/home/A96028/QT5GitEficasTravail/eficas/Map2/cata_map2.xsd', 24, 1) - _Documentation = None -T_experiences_experience_dependancy_type_dependancy._InitializeFacetMap() -Namespace.addCategoryObject('typeBinding', u'T_experiences_experience_dependancy_type_dependancy', T_experiences_experience_dependancy_type_dependancy) - -# Atomic simple type: {http://chercheurs.edf.com/logiciels/atmos}T_experiences_experience_dependancy_source -class T_experiences_experience_dependancy_source (pyxb.binding.datatypes.string): - - """An atomic simple type.""" - - _ExpandedName = pyxb.namespace.ExpandedName(Namespace, u'T_experiences_experience_dependancy_source') - _XSDLocation = pyxb.utils.utility.Location('/home/A96028/QT5GitEficasTravail/eficas/Map2/cata_map2.xsd', 27, 1) - _Documentation = None -T_experiences_experience_dependancy_source._InitializeFacetMap() -Namespace.addCategoryObject('typeBinding', u'T_experiences_experience_dependancy_source', T_experiences_experience_dependancy_source) - -# Atomic simple type: {http://chercheurs.edf.com/logiciels/atmos}T_experiences_experience_dependancy_b_source_file_exp_file -class T_experiences_experience_dependancy_b_source_file_exp_file (pyxb.binding.datatypes.string): - - """An atomic simple type.""" - - _ExpandedName = pyxb.namespace.ExpandedName(Namespace, u'T_experiences_experience_dependancy_b_source_file_exp_file') - _XSDLocation = pyxb.utils.utility.Location('/home/A96028/QT5GitEficasTravail/eficas/Map2/cata_map2.xsd', 30, 1) - _Documentation = None -T_experiences_experience_dependancy_b_source_file_exp_file._InitializeFacetMap() -Namespace.addCategoryObject('typeBinding', u'T_experiences_experience_dependancy_b_source_file_exp_file', T_experiences_experience_dependancy_b_source_file_exp_file) - -# Atomic simple type: {http://chercheurs.edf.com/logiciels/atmos}T_experiences_experience_dependancy_b_source_valeur_exp_value -class T_experiences_experience_dependancy_b_source_valeur_exp_value (pyxb.binding.datatypes.float): - - """An atomic simple type.""" - - _ExpandedName = pyxb.namespace.ExpandedName(Namespace, u'T_experiences_experience_dependancy_b_source_valeur_exp_value') - _XSDLocation = pyxb.utils.utility.Location('/home/A96028/QT5GitEficasTravail/eficas/Map2/cata_map2.xsd', 33, 1) - _Documentation = None -T_experiences_experience_dependancy_b_source_valeur_exp_value._InitializeFacetMap() -Namespace.addCategoryObject('typeBinding', u'T_experiences_experience_dependancy_b_source_valeur_exp_value', T_experiences_experience_dependancy_b_source_valeur_exp_value) - -# Atomic simple type: {http://chercheurs.edf.com/logiciels/atmos}T_experiences_experience_dependancy_b_source_dico_exp_dico -class T_experiences_experience_dependancy_b_source_dico_exp_dico (pyxb.binding.datatypes.string): - - """An atomic simple type.""" - - _ExpandedName = pyxb.namespace.ExpandedName(Namespace, u'T_experiences_experience_dependancy_b_source_dico_exp_dico') - _XSDLocation = pyxb.utils.utility.Location('/home/A96028/QT5GitEficasTravail/eficas/Map2/cata_map2.xsd', 36, 1) - _Documentation = None -T_experiences_experience_dependancy_b_source_dico_exp_dico._InitializeFacetMap() -Namespace.addCategoryObject('typeBinding', u'T_experiences_experience_dependancy_b_source_dico_exp_dico', T_experiences_experience_dependancy_b_source_dico_exp_dico) - -# Atomic simple type: {http://chercheurs.edf.com/logiciels/atmos}T_experiences_dimensions_diameter -class T_experiences_dimensions_diameter (pyxb.binding.datatypes.float): - - """An atomic simple type.""" - - _ExpandedName = pyxb.namespace.ExpandedName(Namespace, u'T_experiences_dimensions_diameter') - _XSDLocation = pyxb.utils.utility.Location('/home/A96028/QT5GitEficasTravail/eficas/Map2/cata_map2.xsd', 39, 1) - _Documentation = None -T_experiences_dimensions_diameter._InitializeFacetMap() -Namespace.addCategoryObject('typeBinding', u'T_experiences_dimensions_diameter', T_experiences_dimensions_diameter) - -# Atomic simple type: {http://chercheurs.edf.com/logiciels/atmos}T_experiences_dimensions_thickness -class T_experiences_dimensions_thickness (pyxb.binding.datatypes.float): - - """An atomic simple type.""" - - _ExpandedName = pyxb.namespace.ExpandedName(Namespace, u'T_experiences_dimensions_thickness') - _XSDLocation = pyxb.utils.utility.Location('/home/A96028/QT5GitEficasTravail/eficas/Map2/cata_map2.xsd', 42, 1) - _Documentation = None -T_experiences_dimensions_thickness._InitializeFacetMap() -Namespace.addCategoryObject('typeBinding', u'T_experiences_dimensions_thickness', T_experiences_dimensions_thickness) - -# Atomic simple type: {http://chercheurs.edf.com/logiciels/atmos}T_experiences_dimensions_number_elements -class T_experiences_dimensions_number_elements (pyxb.binding.datatypes.int): - - """An atomic simple type.""" - - _ExpandedName = pyxb.namespace.ExpandedName(Namespace, u'T_experiences_dimensions_number_elements') - _XSDLocation = pyxb.utils.utility.Location('/home/A96028/QT5GitEficasTravail/eficas/Map2/cata_map2.xsd', 45, 1) - _Documentation = None -T_experiences_dimensions_number_elements._InitializeFacetMap() -Namespace.addCategoryObject('typeBinding', u'T_experiences_dimensions_number_elements', T_experiences_dimensions_number_elements) - -# Atomic simple type: {http://chercheurs.edf.com/logiciels/atmos}T_experiences_type_experience -class T_experiences_type_experience (pyxb.binding.datatypes.string): - - """An atomic simple type.""" - - _ExpandedName = pyxb.namespace.ExpandedName(Namespace, u'T_experiences_type_experience') - _XSDLocation = pyxb.utils.utility.Location('/home/A96028/QT5GitEficasTravail/eficas/Map2/cata_map2.xsd', 48, 1) - _Documentation = None -T_experiences_type_experience._InitializeFacetMap() -Namespace.addCategoryObject('typeBinding', u'T_experiences_type_experience', T_experiences_type_experience) - -# Complex type {http://chercheurs.edf.com/logiciels/atmos}T_experiences_experience_b_source_file with content type ELEMENT_ONLY -class T_experiences_experience_b_source_file (pyxb.binding.basis.complexTypeDefinition): - """Complex type {http://chercheurs.edf.com/logiciels/atmos}T_experiences_experience_b_source_file with content type ELEMENT_ONLY""" - _TypeDefinition = None - _ContentTypeTag = pyxb.binding.basis.complexTypeDefinition._CT_ELEMENT_ONLY - _Abstract = False - _ExpandedName = pyxb.namespace.ExpandedName(Namespace, u'T_experiences_experience_b_source_file') - _XSDLocation = pyxb.utils.utility.Location('/home/A96028/QT5GitEficasTravail/eficas/Map2/cata_map2.xsd', 51, 1) - _ElementMap = {} - _AttributeMap = {} - # Base type is pyxb.binding.datatypes.anyType - - # Element {http://chercheurs.edf.com/logiciels/atmos}exp_file uses Python identifier exp_file - __exp_file = pyxb.binding.content.ElementDeclaration(pyxb.namespace.ExpandedName(Namespace, u'exp_file'), 'exp_file', '__httpchercheurs_edf_comlogicielsatmos_T_experiences_experience_b_source_file_httpchercheurs_edf_comlogicielsatmosexp_file', False, pyxb.utils.utility.Location('/home/A96028/QT5GitEficasTravail/eficas/Map2/cata_map2.xsd', 53, 3), ) - - - exp_file = property(__exp_file.value, __exp_file.set, None, None) - - _ElementMap.update({ - __exp_file.name() : __exp_file - }) - _AttributeMap.update({ - - }) -Namespace.addCategoryObject('typeBinding', u'T_experiences_experience_b_source_file', T_experiences_experience_b_source_file) - - -# Complex type {http://chercheurs.edf.com/logiciels/atmos}T_experiences_experience_b_source_valeur with content type ELEMENT_ONLY -class T_experiences_experience_b_source_valeur (pyxb.binding.basis.complexTypeDefinition): - """Complex type {http://chercheurs.edf.com/logiciels/atmos}T_experiences_experience_b_source_valeur with content type ELEMENT_ONLY""" - _TypeDefinition = None - _ContentTypeTag = pyxb.binding.basis.complexTypeDefinition._CT_ELEMENT_ONLY - _Abstract = False - _ExpandedName = pyxb.namespace.ExpandedName(Namespace, u'T_experiences_experience_b_source_valeur') - _XSDLocation = pyxb.utils.utility.Location('/home/A96028/QT5GitEficasTravail/eficas/Map2/cata_map2.xsd', 56, 1) - _ElementMap = {} - _AttributeMap = {} - # Base type is pyxb.binding.datatypes.anyType - - # Element {http://chercheurs.edf.com/logiciels/atmos}exp_value uses Python identifier exp_value - __exp_value = pyxb.binding.content.ElementDeclaration(pyxb.namespace.ExpandedName(Namespace, u'exp_value'), 'exp_value', '__httpchercheurs_edf_comlogicielsatmos_T_experiences_experience_b_source_valeur_httpchercheurs_edf_comlogicielsatmosexp_value', False, pyxb.utils.utility.Location('/home/A96028/QT5GitEficasTravail/eficas/Map2/cata_map2.xsd', 58, 3), ) - - - exp_value = property(__exp_value.value, __exp_value.set, None, None) - - _ElementMap.update({ - __exp_value.name() : __exp_value - }) - _AttributeMap.update({ - - }) -Namespace.addCategoryObject('typeBinding', u'T_experiences_experience_b_source_valeur', T_experiences_experience_b_source_valeur) - - -# Complex type {http://chercheurs.edf.com/logiciels/atmos}T_experiences_experience_b_source_dico with content type ELEMENT_ONLY -class T_experiences_experience_b_source_dico (pyxb.binding.basis.complexTypeDefinition): - """Complex type {http://chercheurs.edf.com/logiciels/atmos}T_experiences_experience_b_source_dico with content type ELEMENT_ONLY""" - _TypeDefinition = None - _ContentTypeTag = pyxb.binding.basis.complexTypeDefinition._CT_ELEMENT_ONLY - _Abstract = False - _ExpandedName = pyxb.namespace.ExpandedName(Namespace, u'T_experiences_experience_b_source_dico') - _XSDLocation = pyxb.utils.utility.Location('/home/A96028/QT5GitEficasTravail/eficas/Map2/cata_map2.xsd', 61, 1) - _ElementMap = {} - _AttributeMap = {} - # Base type is pyxb.binding.datatypes.anyType - - # Element {http://chercheurs.edf.com/logiciels/atmos}exp_dico uses Python identifier exp_dico - __exp_dico = pyxb.binding.content.ElementDeclaration(pyxb.namespace.ExpandedName(Namespace, u'exp_dico'), 'exp_dico', '__httpchercheurs_edf_comlogicielsatmos_T_experiences_experience_b_source_dico_httpchercheurs_edf_comlogicielsatmosexp_dico', False, pyxb.utils.utility.Location('/home/A96028/QT5GitEficasTravail/eficas/Map2/cata_map2.xsd', 63, 3), ) - - - exp_dico = property(__exp_dico.value, __exp_dico.set, None, None) - - _ElementMap.update({ - __exp_dico.name() : __exp_dico - }) - _AttributeMap.update({ - - }) -Namespace.addCategoryObject('typeBinding', u'T_experiences_experience_b_source_dico', T_experiences_experience_b_source_dico) - - -# Complex type {http://chercheurs.edf.com/logiciels/atmos}T_experiences_experience_dependancy_b_source_file with content type ELEMENT_ONLY -class T_experiences_experience_dependancy_b_source_file (pyxb.binding.basis.complexTypeDefinition): - """Complex type {http://chercheurs.edf.com/logiciels/atmos}T_experiences_experience_dependancy_b_source_file with content type ELEMENT_ONLY""" - _TypeDefinition = None - _ContentTypeTag = pyxb.binding.basis.complexTypeDefinition._CT_ELEMENT_ONLY - _Abstract = False - _ExpandedName = pyxb.namespace.ExpandedName(Namespace, u'T_experiences_experience_dependancy_b_source_file') - _XSDLocation = pyxb.utils.utility.Location('/home/A96028/QT5GitEficasTravail/eficas/Map2/cata_map2.xsd', 66, 1) - _ElementMap = {} - _AttributeMap = {} - # Base type is pyxb.binding.datatypes.anyType - - # Element {http://chercheurs.edf.com/logiciels/atmos}exp_file uses Python identifier exp_file - __exp_file = pyxb.binding.content.ElementDeclaration(pyxb.namespace.ExpandedName(Namespace, u'exp_file'), 'exp_file', '__httpchercheurs_edf_comlogicielsatmos_T_experiences_experience_dependancy_b_source_file_httpchercheurs_edf_comlogicielsatmosexp_file', False, pyxb.utils.utility.Location('/home/A96028/QT5GitEficasTravail/eficas/Map2/cata_map2.xsd', 68, 3), ) - - - exp_file = property(__exp_file.value, __exp_file.set, None, None) - - _ElementMap.update({ - __exp_file.name() : __exp_file - }) - _AttributeMap.update({ - - }) -Namespace.addCategoryObject('typeBinding', u'T_experiences_experience_dependancy_b_source_file', T_experiences_experience_dependancy_b_source_file) - - -# Complex type {http://chercheurs.edf.com/logiciels/atmos}T_experiences_experience_dependancy_b_source_valeur with content type ELEMENT_ONLY -class T_experiences_experience_dependancy_b_source_valeur (pyxb.binding.basis.complexTypeDefinition): - """Complex type {http://chercheurs.edf.com/logiciels/atmos}T_experiences_experience_dependancy_b_source_valeur with content type ELEMENT_ONLY""" - _TypeDefinition = None - _ContentTypeTag = pyxb.binding.basis.complexTypeDefinition._CT_ELEMENT_ONLY - _Abstract = False - _ExpandedName = pyxb.namespace.ExpandedName(Namespace, u'T_experiences_experience_dependancy_b_source_valeur') - _XSDLocation = pyxb.utils.utility.Location('/home/A96028/QT5GitEficasTravail/eficas/Map2/cata_map2.xsd', 71, 1) - _ElementMap = {} - _AttributeMap = {} - # Base type is pyxb.binding.datatypes.anyType - - # Element {http://chercheurs.edf.com/logiciels/atmos}exp_value uses Python identifier exp_value - __exp_value = pyxb.binding.content.ElementDeclaration(pyxb.namespace.ExpandedName(Namespace, u'exp_value'), 'exp_value', '__httpchercheurs_edf_comlogicielsatmos_T_experiences_experience_dependancy_b_source_valeur_httpchercheurs_edf_comlogicielsatmosexp_value', False, pyxb.utils.utility.Location('/home/A96028/QT5GitEficasTravail/eficas/Map2/cata_map2.xsd', 73, 3), ) - - - exp_value = property(__exp_value.value, __exp_value.set, None, None) - - _ElementMap.update({ - __exp_value.name() : __exp_value - }) - _AttributeMap.update({ - - }) -Namespace.addCategoryObject('typeBinding', u'T_experiences_experience_dependancy_b_source_valeur', T_experiences_experience_dependancy_b_source_valeur) - - -# Complex type {http://chercheurs.edf.com/logiciels/atmos}T_experiences_experience_dependancy_b_source_dico with content type ELEMENT_ONLY -class T_experiences_experience_dependancy_b_source_dico (pyxb.binding.basis.complexTypeDefinition): - """Complex type {http://chercheurs.edf.com/logiciels/atmos}T_experiences_experience_dependancy_b_source_dico with content type ELEMENT_ONLY""" - _TypeDefinition = None - _ContentTypeTag = pyxb.binding.basis.complexTypeDefinition._CT_ELEMENT_ONLY - _Abstract = False - _ExpandedName = pyxb.namespace.ExpandedName(Namespace, u'T_experiences_experience_dependancy_b_source_dico') - _XSDLocation = pyxb.utils.utility.Location('/home/A96028/QT5GitEficasTravail/eficas/Map2/cata_map2.xsd', 76, 1) - _ElementMap = {} - _AttributeMap = {} - # Base type is pyxb.binding.datatypes.anyType - - # Element {http://chercheurs.edf.com/logiciels/atmos}exp_dico uses Python identifier exp_dico - __exp_dico = pyxb.binding.content.ElementDeclaration(pyxb.namespace.ExpandedName(Namespace, u'exp_dico'), 'exp_dico', '__httpchercheurs_edf_comlogicielsatmos_T_experiences_experience_dependancy_b_source_dico_httpchercheurs_edf_comlogicielsatmosexp_dico', False, pyxb.utils.utility.Location('/home/A96028/QT5GitEficasTravail/eficas/Map2/cata_map2.xsd', 78, 3), ) - - - exp_dico = property(__exp_dico.value, __exp_dico.set, None, None) - - _ElementMap.update({ - __exp_dico.name() : __exp_dico - }) - _AttributeMap.update({ - - }) -Namespace.addCategoryObject('typeBinding', u'T_experiences_experience_dependancy_b_source_dico', T_experiences_experience_dependancy_b_source_dico) - - -# Complex type {http://chercheurs.edf.com/logiciels/atmos}T_experiences_experience_dependancy with content type ELEMENT_ONLY -class T_experiences_experience_dependancy (pyxb.binding.basis.complexTypeDefinition): - """Complex type {http://chercheurs.edf.com/logiciels/atmos}T_experiences_experience_dependancy with content type ELEMENT_ONLY""" - _TypeDefinition = None - _ContentTypeTag = pyxb.binding.basis.complexTypeDefinition._CT_ELEMENT_ONLY - _Abstract = False - _ExpandedName = pyxb.namespace.ExpandedName(Namespace, u'T_experiences_experience_dependancy') - _XSDLocation = pyxb.utils.utility.Location('/home/A96028/QT5GitEficasTravail/eficas/Map2/cata_map2.xsd', 81, 1) - _ElementMap = {} - _AttributeMap = {} - # Base type is pyxb.binding.datatypes.anyType - - # Element {http://chercheurs.edf.com/logiciels/atmos}type_dependancy uses Python identifier type_dependancy - __type_dependancy = pyxb.binding.content.ElementDeclaration(pyxb.namespace.ExpandedName(Namespace, u'type_dependancy'), 'type_dependancy', '__httpchercheurs_edf_comlogicielsatmos_T_experiences_experience_dependancy_httpchercheurs_edf_comlogicielsatmostype_dependancy', False, pyxb.utils.utility.Location('/home/A96028/QT5GitEficasTravail/eficas/Map2/cata_map2.xsd', 83, 3), ) - - - type_dependancy = property(__type_dependancy.value, __type_dependancy.set, None, None) - - - # Element {http://chercheurs.edf.com/logiciels/atmos}source uses Python identifier source - __source = pyxb.binding.content.ElementDeclaration(pyxb.namespace.ExpandedName(Namespace, u'source'), 'source', '__httpchercheurs_edf_comlogicielsatmos_T_experiences_experience_dependancy_httpchercheurs_edf_comlogicielsatmossource', False, pyxb.utils.utility.Location('/home/A96028/QT5GitEficasTravail/eficas/Map2/cata_map2.xsd', 84, 3), ) - - - source = property(__source.value, __source.set, None, None) - - - # Element {http://chercheurs.edf.com/logiciels/atmos}b_source_file uses Python identifier b_source_file - __b_source_file = pyxb.binding.content.ElementDeclaration(pyxb.namespace.ExpandedName(Namespace, u'b_source_file'), 'b_source_file', '__httpchercheurs_edf_comlogicielsatmos_T_experiences_experience_dependancy_httpchercheurs_edf_comlogicielsatmosb_source_file', False, pyxb.utils.utility.Location('/home/A96028/QT5GitEficasTravail/eficas/Map2/cata_map2.xsd', 85, 3), ) - - - b_source_file = property(__b_source_file.value, __b_source_file.set, None, None) - - - # Element {http://chercheurs.edf.com/logiciels/atmos}b_source_valeur uses Python identifier b_source_valeur - __b_source_valeur = pyxb.binding.content.ElementDeclaration(pyxb.namespace.ExpandedName(Namespace, u'b_source_valeur'), 'b_source_valeur', '__httpchercheurs_edf_comlogicielsatmos_T_experiences_experience_dependancy_httpchercheurs_edf_comlogicielsatmosb_source_valeur', False, pyxb.utils.utility.Location('/home/A96028/QT5GitEficasTravail/eficas/Map2/cata_map2.xsd', 86, 3), ) - - - b_source_valeur = property(__b_source_valeur.value, __b_source_valeur.set, None, None) - - - # Element {http://chercheurs.edf.com/logiciels/atmos}b_source_dico uses Python identifier b_source_dico - __b_source_dico = pyxb.binding.content.ElementDeclaration(pyxb.namespace.ExpandedName(Namespace, u'b_source_dico'), 'b_source_dico', '__httpchercheurs_edf_comlogicielsatmos_T_experiences_experience_dependancy_httpchercheurs_edf_comlogicielsatmosb_source_dico', False, pyxb.utils.utility.Location('/home/A96028/QT5GitEficasTravail/eficas/Map2/cata_map2.xsd', 87, 3), ) - - - b_source_dico = property(__b_source_dico.value, __b_source_dico.set, None, None) - - _ElementMap.update({ - __type_dependancy.name() : __type_dependancy, - __source.name() : __source, - __b_source_file.name() : __b_source_file, - __b_source_valeur.name() : __b_source_valeur, - __b_source_dico.name() : __b_source_dico - }) - _AttributeMap.update({ - - }) -Namespace.addCategoryObject('typeBinding', u'T_experiences_experience_dependancy', T_experiences_experience_dependancy) - - -# Complex type {http://chercheurs.edf.com/logiciels/atmos}T_experiences_experience with content type ELEMENT_ONLY -class T_experiences_experience (pyxb.binding.basis.complexTypeDefinition): - """Complex type {http://chercheurs.edf.com/logiciels/atmos}T_experiences_experience with content type ELEMENT_ONLY""" - _TypeDefinition = None - _ContentTypeTag = pyxb.binding.basis.complexTypeDefinition._CT_ELEMENT_ONLY - _Abstract = False - _ExpandedName = pyxb.namespace.ExpandedName(Namespace, u'T_experiences_experience') - _XSDLocation = pyxb.utils.utility.Location('/home/A96028/QT5GitEficasTravail/eficas/Map2/cata_map2.xsd', 90, 1) - _ElementMap = {} - _AttributeMap = {} - # Base type is pyxb.binding.datatypes.anyType - - # Element {http://chercheurs.edf.com/logiciels/atmos}experience_Name uses Python identifier experience_Name - __experience_Name = pyxb.binding.content.ElementDeclaration(pyxb.namespace.ExpandedName(Namespace, u'experience_Name'), 'experience_Name', '__httpchercheurs_edf_comlogicielsatmos_T_experiences_experience_httpchercheurs_edf_comlogicielsatmosexperience_Name', False, pyxb.utils.utility.Location('/home/A96028/QT5GitEficasTravail/eficas/Map2/cata_map2.xsd', 92, 3), ) - - - experience_Name = property(__experience_Name.value, __experience_Name.set, None, None) - - - # Element {http://chercheurs.edf.com/logiciels/atmos}source uses Python identifier source - __source = pyxb.binding.content.ElementDeclaration(pyxb.namespace.ExpandedName(Namespace, u'source'), 'source', '__httpchercheurs_edf_comlogicielsatmos_T_experiences_experience_httpchercheurs_edf_comlogicielsatmossource', False, pyxb.utils.utility.Location('/home/A96028/QT5GitEficasTravail/eficas/Map2/cata_map2.xsd', 93, 3), ) - - - source = property(__source.value, __source.set, None, None) - - - # Element {http://chercheurs.edf.com/logiciels/atmos}b_source_file uses Python identifier b_source_file - __b_source_file = pyxb.binding.content.ElementDeclaration(pyxb.namespace.ExpandedName(Namespace, u'b_source_file'), 'b_source_file', '__httpchercheurs_edf_comlogicielsatmos_T_experiences_experience_httpchercheurs_edf_comlogicielsatmosb_source_file', False, pyxb.utils.utility.Location('/home/A96028/QT5GitEficasTravail/eficas/Map2/cata_map2.xsd', 94, 3), ) - - - b_source_file = property(__b_source_file.value, __b_source_file.set, None, None) - - - # Element {http://chercheurs.edf.com/logiciels/atmos}b_source_valeur uses Python identifier b_source_valeur - __b_source_valeur = pyxb.binding.content.ElementDeclaration(pyxb.namespace.ExpandedName(Namespace, u'b_source_valeur'), 'b_source_valeur', '__httpchercheurs_edf_comlogicielsatmos_T_experiences_experience_httpchercheurs_edf_comlogicielsatmosb_source_valeur', False, pyxb.utils.utility.Location('/home/A96028/QT5GitEficasTravail/eficas/Map2/cata_map2.xsd', 95, 3), ) - - - b_source_valeur = property(__b_source_valeur.value, __b_source_valeur.set, None, None) - - - # Element {http://chercheurs.edf.com/logiciels/atmos}b_source_dico uses Python identifier b_source_dico - __b_source_dico = pyxb.binding.content.ElementDeclaration(pyxb.namespace.ExpandedName(Namespace, u'b_source_dico'), 'b_source_dico', '__httpchercheurs_edf_comlogicielsatmos_T_experiences_experience_httpchercheurs_edf_comlogicielsatmosb_source_dico', False, pyxb.utils.utility.Location('/home/A96028/QT5GitEficasTravail/eficas/Map2/cata_map2.xsd', 96, 3), ) - - - b_source_dico = property(__b_source_dico.value, __b_source_dico.set, None, None) - - - # Element {http://chercheurs.edf.com/logiciels/atmos}Associated_simulation_step_number uses Python identifier Associated_simulation_step_number - __Associated_simulation_step_number = pyxb.binding.content.ElementDeclaration(pyxb.namespace.ExpandedName(Namespace, u'Associated_simulation_step_number'), 'Associated_simulation_step_number', '__httpchercheurs_edf_comlogicielsatmos_T_experiences_experience_httpchercheurs_edf_comlogicielsatmosAssociated_simulation_step_number', False, pyxb.utils.utility.Location('/home/A96028/QT5GitEficasTravail/eficas/Map2/cata_map2.xsd', 97, 3), ) - - - Associated_simulation_step_number = property(__Associated_simulation_step_number.value, __Associated_simulation_step_number.set, None, None) - - - # Element {http://chercheurs.edf.com/logiciels/atmos}dependancy uses Python identifier dependancy - __dependancy = pyxb.binding.content.ElementDeclaration(pyxb.namespace.ExpandedName(Namespace, u'dependancy'), 'dependancy', '__httpchercheurs_edf_comlogicielsatmos_T_experiences_experience_httpchercheurs_edf_comlogicielsatmosdependancy', False, pyxb.utils.utility.Location('/home/A96028/QT5GitEficasTravail/eficas/Map2/cata_map2.xsd', 98, 3), ) - - - dependancy = property(__dependancy.value, __dependancy.set, None, None) - - _ElementMap.update({ - __experience_Name.name() : __experience_Name, - __source.name() : __source, - __b_source_file.name() : __b_source_file, - __b_source_valeur.name() : __b_source_valeur, - __b_source_dico.name() : __b_source_dico, - __Associated_simulation_step_number.name() : __Associated_simulation_step_number, - __dependancy.name() : __dependancy - }) - _AttributeMap.update({ - - }) -Namespace.addCategoryObject('typeBinding', u'T_experiences_experience', T_experiences_experience) - - -# Complex type {http://chercheurs.edf.com/logiciels/atmos}T_experiences_dimensions with content type ELEMENT_ONLY -class T_experiences_dimensions (pyxb.binding.basis.complexTypeDefinition): - """Complex type {http://chercheurs.edf.com/logiciels/atmos}T_experiences_dimensions with content type ELEMENT_ONLY""" - _TypeDefinition = None - _ContentTypeTag = pyxb.binding.basis.complexTypeDefinition._CT_ELEMENT_ONLY - _Abstract = False - _ExpandedName = pyxb.namespace.ExpandedName(Namespace, u'T_experiences_dimensions') - _XSDLocation = pyxb.utils.utility.Location('/home/A96028/QT5GitEficasTravail/eficas/Map2/cata_map2.xsd', 101, 1) - _ElementMap = {} - _AttributeMap = {} - # Base type is pyxb.binding.datatypes.anyType - - # Element {http://chercheurs.edf.com/logiciels/atmos}diameter uses Python identifier diameter - __diameter = pyxb.binding.content.ElementDeclaration(pyxb.namespace.ExpandedName(Namespace, u'diameter'), 'diameter', '__httpchercheurs_edf_comlogicielsatmos_T_experiences_dimensions_httpchercheurs_edf_comlogicielsatmosdiameter', False, pyxb.utils.utility.Location('/home/A96028/QT5GitEficasTravail/eficas/Map2/cata_map2.xsd', 103, 3), ) - - - diameter = property(__diameter.value, __diameter.set, None, None) - - - # Element {http://chercheurs.edf.com/logiciels/atmos}thickness uses Python identifier thickness - __thickness = pyxb.binding.content.ElementDeclaration(pyxb.namespace.ExpandedName(Namespace, u'thickness'), 'thickness', '__httpchercheurs_edf_comlogicielsatmos_T_experiences_dimensions_httpchercheurs_edf_comlogicielsatmosthickness', False, pyxb.utils.utility.Location('/home/A96028/QT5GitEficasTravail/eficas/Map2/cata_map2.xsd', 104, 3), ) - - - thickness = property(__thickness.value, __thickness.set, None, None) - - - # Element {http://chercheurs.edf.com/logiciels/atmos}number_elements uses Python identifier number_elements - __number_elements = pyxb.binding.content.ElementDeclaration(pyxb.namespace.ExpandedName(Namespace, u'number_elements'), 'number_elements', '__httpchercheurs_edf_comlogicielsatmos_T_experiences_dimensions_httpchercheurs_edf_comlogicielsatmosnumber_elements', False, pyxb.utils.utility.Location('/home/A96028/QT5GitEficasTravail/eficas/Map2/cata_map2.xsd', 105, 3), ) - - - number_elements = property(__number_elements.value, __number_elements.set, None, None) - - _ElementMap.update({ - __diameter.name() : __diameter, - __thickness.name() : __thickness, - __number_elements.name() : __number_elements - }) - _AttributeMap.update({ - - }) -Namespace.addCategoryObject('typeBinding', u'T_experiences_dimensions', T_experiences_dimensions) - - -# Complex type {http://chercheurs.edf.com/logiciels/atmos}T_experiences with content type ELEMENT_ONLY -class T_experiences (pyxb.binding.basis.complexTypeDefinition): - """Complex type {http://chercheurs.edf.com/logiciels/atmos}T_experiences with content type ELEMENT_ONLY""" - _TypeDefinition = None - _ContentTypeTag = pyxb.binding.basis.complexTypeDefinition._CT_ELEMENT_ONLY - _Abstract = False - _ExpandedName = pyxb.namespace.ExpandedName(Namespace, u'T_experiences') - _XSDLocation = pyxb.utils.utility.Location('/home/A96028/QT5GitEficasTravail/eficas/Map2/cata_map2.xsd', 108, 1) - _ElementMap = {} - _AttributeMap = {} - # Base type is pyxb.binding.datatypes.anyType - - # Element {http://chercheurs.edf.com/logiciels/atmos}description uses Python identifier description - __description = pyxb.binding.content.ElementDeclaration(pyxb.namespace.ExpandedName(Namespace, u'description'), 'description', '__httpchercheurs_edf_comlogicielsatmos_T_experiences_httpchercheurs_edf_comlogicielsatmosdescription', False, pyxb.utils.utility.Location('/home/A96028/QT5GitEficasTravail/eficas/Map2/cata_map2.xsd', 110, 3), ) - - - description = property(__description.value, __description.set, None, None) - - - # Element {http://chercheurs.edf.com/logiciels/atmos}experience uses Python identifier experience - __experience = pyxb.binding.content.ElementDeclaration(pyxb.namespace.ExpandedName(Namespace, u'experience'), 'experience', '__httpchercheurs_edf_comlogicielsatmos_T_experiences_httpchercheurs_edf_comlogicielsatmosexperience', True, pyxb.utils.utility.Location('/home/A96028/QT5GitEficasTravail/eficas/Map2/cata_map2.xsd', 111, 3), ) - - - experience = property(__experience.value, __experience.set, None, None) - - - # Element {http://chercheurs.edf.com/logiciels/atmos}dimensions uses Python identifier dimensions - __dimensions = pyxb.binding.content.ElementDeclaration(pyxb.namespace.ExpandedName(Namespace, u'dimensions'), 'dimensions', '__httpchercheurs_edf_comlogicielsatmos_T_experiences_httpchercheurs_edf_comlogicielsatmosdimensions', False, pyxb.utils.utility.Location('/home/A96028/QT5GitEficasTravail/eficas/Map2/cata_map2.xsd', 112, 3), ) - - - dimensions = property(__dimensions.value, __dimensions.set, None, None) - - - # Element {http://chercheurs.edf.com/logiciels/atmos}type_experience uses Python identifier type_experience - __type_experience = pyxb.binding.content.ElementDeclaration(pyxb.namespace.ExpandedName(Namespace, u'type_experience'), 'type_experience', '__httpchercheurs_edf_comlogicielsatmos_T_experiences_httpchercheurs_edf_comlogicielsatmostype_experience', False, pyxb.utils.utility.Location('/home/A96028/QT5GitEficasTravail/eficas/Map2/cata_map2.xsd', 113, 3), ) - - - type_experience = property(__type_experience.value, __type_experience.set, None, None) - - _ElementMap.update({ - __description.name() : __description, - __experience.name() : __experience, - __dimensions.name() : __dimensions, - __type_experience.name() : __type_experience - }) - _AttributeMap.update({ - - }) -Namespace.addCategoryObject('typeBinding', u'T_experiences', T_experiences) - - -# Complex type {http://chercheurs.edf.com/logiciels/atmos}T_Map2 with content type ELEMENT_ONLY -class T_Map2 (pyxb.binding.basis.complexTypeDefinition): - """Complex type {http://chercheurs.edf.com/logiciels/atmos}T_Map2 with content type ELEMENT_ONLY""" - _TypeDefinition = None - _ContentTypeTag = pyxb.binding.basis.complexTypeDefinition._CT_ELEMENT_ONLY - _Abstract = False - _ExpandedName = pyxb.namespace.ExpandedName(Namespace, u'T_Map2') - _XSDLocation = pyxb.utils.utility.Location('/home/A96028/QT5GitEficasTravail/eficas/Map2/cata_map2.xsd', 118, 1) - _ElementMap = {} - _AttributeMap = {} - # Base type is pyxb.binding.datatypes.anyType - - # Element {http://chercheurs.edf.com/logiciels/atmos}experiences uses Python identifier experiences - __experiences = pyxb.binding.content.ElementDeclaration(pyxb.namespace.ExpandedName(Namespace, u'experiences'), 'experiences', '__httpchercheurs_edf_comlogicielsatmos_T_Map2_httpchercheurs_edf_comlogicielsatmosexperiences', True, pyxb.utils.utility.Location('/home/A96028/QT5GitEficasTravail/eficas/Map2/cata_map2.xsd', 120, 3), ) - - - experiences = property(__experiences.value, __experiences.set, None, None) - - _ElementMap.update({ - __experiences.name() : __experiences - }) - _AttributeMap.update({ - - }) -Namespace.addCategoryObject('typeBinding', u'T_Map2', T_Map2) - - -JDD = pyxb.binding.basis.element(pyxb.namespace.ExpandedName(Namespace, u'JDD'), T_Map2, location=pyxb.utils.utility.Location('/home/A96028/QT5GitEficasTravail/eficas/Map2/cata_map2.xsd', 123, 0)) -Namespace.addCategoryObject('elementBinding', JDD.name().localName(), JDD) - - - -T_experiences_experience_b_source_file._AddElement(pyxb.binding.basis.element(pyxb.namespace.ExpandedName(Namespace, u'exp_file'), T_experiences_experience_b_source_file_exp_file, scope=T_experiences_experience_b_source_file, location=pyxb.utils.utility.Location('/home/A96028/QT5GitEficasTravail/eficas/Map2/cata_map2.xsd', 53, 3))) - -def _BuildAutomaton (): - # Remove this helper function from the namespace after it is invoked - global _BuildAutomaton - del _BuildAutomaton - import pyxb.utils.fac as fac - - counters = set() - states = [] - final_update = set() - symbol = pyxb.binding.content.ElementUse(T_experiences_experience_b_source_file._UseForTag(pyxb.namespace.ExpandedName(Namespace, u'exp_file')), pyxb.utils.utility.Location('/home/A96028/QT5GitEficasTravail/eficas/Map2/cata_map2.xsd', 53, 3)) - st_0 = fac.State(symbol, is_initial=True, final_update=final_update, is_unordered_catenation=False) - states.append(st_0) - transitions = [] - st_0._set_transitionSet(transitions) - return fac.Automaton(states, counters, False, containing_state=None) -T_experiences_experience_b_source_file._Automaton = _BuildAutomaton() - - - - -T_experiences_experience_b_source_valeur._AddElement(pyxb.binding.basis.element(pyxb.namespace.ExpandedName(Namespace, u'exp_value'), T_experiences_experience_b_source_valeur_exp_value, scope=T_experiences_experience_b_source_valeur, location=pyxb.utils.utility.Location('/home/A96028/QT5GitEficasTravail/eficas/Map2/cata_map2.xsd', 58, 3))) - -def _BuildAutomaton_ (): - # Remove this helper function from the namespace after it is invoked - global _BuildAutomaton_ - del _BuildAutomaton_ - import pyxb.utils.fac as fac - - counters = set() - states = [] - final_update = set() - symbol = pyxb.binding.content.ElementUse(T_experiences_experience_b_source_valeur._UseForTag(pyxb.namespace.ExpandedName(Namespace, u'exp_value')), pyxb.utils.utility.Location('/home/A96028/QT5GitEficasTravail/eficas/Map2/cata_map2.xsd', 58, 3)) - st_0 = fac.State(symbol, is_initial=True, final_update=final_update, is_unordered_catenation=False) - states.append(st_0) - transitions = [] - st_0._set_transitionSet(transitions) - return fac.Automaton(states, counters, False, containing_state=None) -T_experiences_experience_b_source_valeur._Automaton = _BuildAutomaton_() - - - - -T_experiences_experience_b_source_dico._AddElement(pyxb.binding.basis.element(pyxb.namespace.ExpandedName(Namespace, u'exp_dico'), T_experiences_experience_b_source_dico_exp_dico, scope=T_experiences_experience_b_source_dico, location=pyxb.utils.utility.Location('/home/A96028/QT5GitEficasTravail/eficas/Map2/cata_map2.xsd', 63, 3))) - -def _BuildAutomaton_2 (): - # Remove this helper function from the namespace after it is invoked - global _BuildAutomaton_2 - del _BuildAutomaton_2 - import pyxb.utils.fac as fac - - counters = set() - states = [] - final_update = set() - symbol = pyxb.binding.content.ElementUse(T_experiences_experience_b_source_dico._UseForTag(pyxb.namespace.ExpandedName(Namespace, u'exp_dico')), pyxb.utils.utility.Location('/home/A96028/QT5GitEficasTravail/eficas/Map2/cata_map2.xsd', 63, 3)) - st_0 = fac.State(symbol, is_initial=True, final_update=final_update, is_unordered_catenation=False) - states.append(st_0) - transitions = [] - st_0._set_transitionSet(transitions) - return fac.Automaton(states, counters, False, containing_state=None) -T_experiences_experience_b_source_dico._Automaton = _BuildAutomaton_2() - - - - -T_experiences_experience_dependancy_b_source_file._AddElement(pyxb.binding.basis.element(pyxb.namespace.ExpandedName(Namespace, u'exp_file'), T_experiences_experience_dependancy_b_source_file_exp_file, scope=T_experiences_experience_dependancy_b_source_file, location=pyxb.utils.utility.Location('/home/A96028/QT5GitEficasTravail/eficas/Map2/cata_map2.xsd', 68, 3))) - -def _BuildAutomaton_3 (): - # Remove this helper function from the namespace after it is invoked - global _BuildAutomaton_3 - del _BuildAutomaton_3 - import pyxb.utils.fac as fac - - counters = set() - states = [] - final_update = set() - symbol = pyxb.binding.content.ElementUse(T_experiences_experience_dependancy_b_source_file._UseForTag(pyxb.namespace.ExpandedName(Namespace, u'exp_file')), pyxb.utils.utility.Location('/home/A96028/QT5GitEficasTravail/eficas/Map2/cata_map2.xsd', 68, 3)) - st_0 = fac.State(symbol, is_initial=True, final_update=final_update, is_unordered_catenation=False) - states.append(st_0) - transitions = [] - st_0._set_transitionSet(transitions) - return fac.Automaton(states, counters, False, containing_state=None) -T_experiences_experience_dependancy_b_source_file._Automaton = _BuildAutomaton_3() - - - - -T_experiences_experience_dependancy_b_source_valeur._AddElement(pyxb.binding.basis.element(pyxb.namespace.ExpandedName(Namespace, u'exp_value'), T_experiences_experience_dependancy_b_source_valeur_exp_value, scope=T_experiences_experience_dependancy_b_source_valeur, location=pyxb.utils.utility.Location('/home/A96028/QT5GitEficasTravail/eficas/Map2/cata_map2.xsd', 73, 3))) - -def _BuildAutomaton_4 (): - # Remove this helper function from the namespace after it is invoked - global _BuildAutomaton_4 - del _BuildAutomaton_4 - import pyxb.utils.fac as fac - - counters = set() - states = [] - final_update = set() - symbol = pyxb.binding.content.ElementUse(T_experiences_experience_dependancy_b_source_valeur._UseForTag(pyxb.namespace.ExpandedName(Namespace, u'exp_value')), pyxb.utils.utility.Location('/home/A96028/QT5GitEficasTravail/eficas/Map2/cata_map2.xsd', 73, 3)) - st_0 = fac.State(symbol, is_initial=True, final_update=final_update, is_unordered_catenation=False) - states.append(st_0) - transitions = [] - st_0._set_transitionSet(transitions) - return fac.Automaton(states, counters, False, containing_state=None) -T_experiences_experience_dependancy_b_source_valeur._Automaton = _BuildAutomaton_4() - - - - -T_experiences_experience_dependancy_b_source_dico._AddElement(pyxb.binding.basis.element(pyxb.namespace.ExpandedName(Namespace, u'exp_dico'), T_experiences_experience_dependancy_b_source_dico_exp_dico, scope=T_experiences_experience_dependancy_b_source_dico, location=pyxb.utils.utility.Location('/home/A96028/QT5GitEficasTravail/eficas/Map2/cata_map2.xsd', 78, 3))) - -def _BuildAutomaton_5 (): - # Remove this helper function from the namespace after it is invoked - global _BuildAutomaton_5 - del _BuildAutomaton_5 - import pyxb.utils.fac as fac - - counters = set() - states = [] - final_update = set() - symbol = pyxb.binding.content.ElementUse(T_experiences_experience_dependancy_b_source_dico._UseForTag(pyxb.namespace.ExpandedName(Namespace, u'exp_dico')), pyxb.utils.utility.Location('/home/A96028/QT5GitEficasTravail/eficas/Map2/cata_map2.xsd', 78, 3)) - st_0 = fac.State(symbol, is_initial=True, final_update=final_update, is_unordered_catenation=False) - states.append(st_0) - transitions = [] - st_0._set_transitionSet(transitions) - return fac.Automaton(states, counters, False, containing_state=None) -T_experiences_experience_dependancy_b_source_dico._Automaton = _BuildAutomaton_5() - - - - -T_experiences_experience_dependancy._AddElement(pyxb.binding.basis.element(pyxb.namespace.ExpandedName(Namespace, u'type_dependancy'), T_experiences_experience_dependancy_type_dependancy, scope=T_experiences_experience_dependancy, location=pyxb.utils.utility.Location('/home/A96028/QT5GitEficasTravail/eficas/Map2/cata_map2.xsd', 83, 3))) - -T_experiences_experience_dependancy._AddElement(pyxb.binding.basis.element(pyxb.namespace.ExpandedName(Namespace, u'source'), T_experiences_experience_dependancy_source, scope=T_experiences_experience_dependancy, location=pyxb.utils.utility.Location('/home/A96028/QT5GitEficasTravail/eficas/Map2/cata_map2.xsd', 84, 3))) - -T_experiences_experience_dependancy._AddElement(pyxb.binding.basis.element(pyxb.namespace.ExpandedName(Namespace, u'b_source_file'), T_experiences_experience_dependancy_b_source_file, scope=T_experiences_experience_dependancy, location=pyxb.utils.utility.Location('/home/A96028/QT5GitEficasTravail/eficas/Map2/cata_map2.xsd', 85, 3))) - -T_experiences_experience_dependancy._AddElement(pyxb.binding.basis.element(pyxb.namespace.ExpandedName(Namespace, u'b_source_valeur'), T_experiences_experience_dependancy_b_source_valeur, scope=T_experiences_experience_dependancy, location=pyxb.utils.utility.Location('/home/A96028/QT5GitEficasTravail/eficas/Map2/cata_map2.xsd', 86, 3))) - -T_experiences_experience_dependancy._AddElement(pyxb.binding.basis.element(pyxb.namespace.ExpandedName(Namespace, u'b_source_dico'), T_experiences_experience_dependancy_b_source_dico, scope=T_experiences_experience_dependancy, location=pyxb.utils.utility.Location('/home/A96028/QT5GitEficasTravail/eficas/Map2/cata_map2.xsd', 87, 3))) - -def _BuildAutomaton_6 (): - # Remove this helper function from the namespace after it is invoked - global _BuildAutomaton_6 - del _BuildAutomaton_6 - import pyxb.utils.fac as fac - - counters = set() - cc_0 = fac.CounterCondition(min=0L, max=1L, metadata=pyxb.utils.utility.Location('/home/A96028/QT5GitEficasTravail/eficas/Map2/cata_map2.xsd', 85, 3)) - counters.add(cc_0) - cc_1 = fac.CounterCondition(min=0L, max=1L, metadata=pyxb.utils.utility.Location('/home/A96028/QT5GitEficasTravail/eficas/Map2/cata_map2.xsd', 86, 3)) - counters.add(cc_1) - cc_2 = fac.CounterCondition(min=0L, max=1L, metadata=pyxb.utils.utility.Location('/home/A96028/QT5GitEficasTravail/eficas/Map2/cata_map2.xsd', 87, 3)) - counters.add(cc_2) - states = [] - final_update = None - symbol = pyxb.binding.content.ElementUse(T_experiences_experience_dependancy._UseForTag(pyxb.namespace.ExpandedName(Namespace, u'type_dependancy')), pyxb.utils.utility.Location('/home/A96028/QT5GitEficasTravail/eficas/Map2/cata_map2.xsd', 83, 3)) - st_0 = fac.State(symbol, is_initial=True, final_update=final_update, is_unordered_catenation=False) - states.append(st_0) - final_update = set() - symbol = pyxb.binding.content.ElementUse(T_experiences_experience_dependancy._UseForTag(pyxb.namespace.ExpandedName(Namespace, u'source')), pyxb.utils.utility.Location('/home/A96028/QT5GitEficasTravail/eficas/Map2/cata_map2.xsd', 84, 3)) - st_1 = fac.State(symbol, is_initial=False, final_update=final_update, is_unordered_catenation=False) - states.append(st_1) - final_update = set() - final_update.add(fac.UpdateInstruction(cc_0, False)) - symbol = pyxb.binding.content.ElementUse(T_experiences_experience_dependancy._UseForTag(pyxb.namespace.ExpandedName(Namespace, u'b_source_file')), pyxb.utils.utility.Location('/home/A96028/QT5GitEficasTravail/eficas/Map2/cata_map2.xsd', 85, 3)) - st_2 = fac.State(symbol, is_initial=False, final_update=final_update, is_unordered_catenation=False) - states.append(st_2) - final_update = set() - final_update.add(fac.UpdateInstruction(cc_1, False)) - symbol = pyxb.binding.content.ElementUse(T_experiences_experience_dependancy._UseForTag(pyxb.namespace.ExpandedName(Namespace, u'b_source_valeur')), pyxb.utils.utility.Location('/home/A96028/QT5GitEficasTravail/eficas/Map2/cata_map2.xsd', 86, 3)) - st_3 = fac.State(symbol, is_initial=False, final_update=final_update, is_unordered_catenation=False) - states.append(st_3) - final_update = set() - final_update.add(fac.UpdateInstruction(cc_2, False)) - symbol = pyxb.binding.content.ElementUse(T_experiences_experience_dependancy._UseForTag(pyxb.namespace.ExpandedName(Namespace, u'b_source_dico')), pyxb.utils.utility.Location('/home/A96028/QT5GitEficasTravail/eficas/Map2/cata_map2.xsd', 87, 3)) - st_4 = fac.State(symbol, is_initial=False, final_update=final_update, is_unordered_catenation=False) - states.append(st_4) - transitions = [] - transitions.append(fac.Transition(st_1, [ - ])) - st_0._set_transitionSet(transitions) - transitions = [] - transitions.append(fac.Transition(st_2, [ - ])) - transitions.append(fac.Transition(st_3, [ - ])) - transitions.append(fac.Transition(st_4, [ - ])) - st_1._set_transitionSet(transitions) - transitions = [] - transitions.append(fac.Transition(st_2, [ - fac.UpdateInstruction(cc_0, True) ])) - transitions.append(fac.Transition(st_3, [ - fac.UpdateInstruction(cc_0, False) ])) - transitions.append(fac.Transition(st_4, [ - fac.UpdateInstruction(cc_0, False) ])) - st_2._set_transitionSet(transitions) - transitions = [] - transitions.append(fac.Transition(st_3, [ - fac.UpdateInstruction(cc_1, True) ])) - transitions.append(fac.Transition(st_4, [ - fac.UpdateInstruction(cc_1, False) ])) - st_3._set_transitionSet(transitions) - transitions = [] - transitions.append(fac.Transition(st_4, [ - fac.UpdateInstruction(cc_2, True) ])) - st_4._set_transitionSet(transitions) - return fac.Automaton(states, counters, False, containing_state=None) -T_experiences_experience_dependancy._Automaton = _BuildAutomaton_6() - - - - -T_experiences_experience._AddElement(pyxb.binding.basis.element(pyxb.namespace.ExpandedName(Namespace, u'experience_Name'), T_experiences_experience_experience_Name, scope=T_experiences_experience, location=pyxb.utils.utility.Location('/home/A96028/QT5GitEficasTravail/eficas/Map2/cata_map2.xsd', 92, 3))) - -T_experiences_experience._AddElement(pyxb.binding.basis.element(pyxb.namespace.ExpandedName(Namespace, u'source'), T_experiences_experience_source, scope=T_experiences_experience, location=pyxb.utils.utility.Location('/home/A96028/QT5GitEficasTravail/eficas/Map2/cata_map2.xsd', 93, 3))) - -T_experiences_experience._AddElement(pyxb.binding.basis.element(pyxb.namespace.ExpandedName(Namespace, u'b_source_file'), T_experiences_experience_b_source_file, scope=T_experiences_experience, location=pyxb.utils.utility.Location('/home/A96028/QT5GitEficasTravail/eficas/Map2/cata_map2.xsd', 94, 3))) - -T_experiences_experience._AddElement(pyxb.binding.basis.element(pyxb.namespace.ExpandedName(Namespace, u'b_source_valeur'), T_experiences_experience_b_source_valeur, scope=T_experiences_experience, location=pyxb.utils.utility.Location('/home/A96028/QT5GitEficasTravail/eficas/Map2/cata_map2.xsd', 95, 3))) - -T_experiences_experience._AddElement(pyxb.binding.basis.element(pyxb.namespace.ExpandedName(Namespace, u'b_source_dico'), T_experiences_experience_b_source_dico, scope=T_experiences_experience, location=pyxb.utils.utility.Location('/home/A96028/QT5GitEficasTravail/eficas/Map2/cata_map2.xsd', 96, 3))) - -T_experiences_experience._AddElement(pyxb.binding.basis.element(pyxb.namespace.ExpandedName(Namespace, u'Associated_simulation_step_number'), T_experiences_experience_Associated_simulation_step_number, scope=T_experiences_experience, location=pyxb.utils.utility.Location('/home/A96028/QT5GitEficasTravail/eficas/Map2/cata_map2.xsd', 97, 3))) - -T_experiences_experience._AddElement(pyxb.binding.basis.element(pyxb.namespace.ExpandedName(Namespace, u'dependancy'), T_experiences_experience_dependancy, scope=T_experiences_experience, location=pyxb.utils.utility.Location('/home/A96028/QT5GitEficasTravail/eficas/Map2/cata_map2.xsd', 98, 3))) - -def _BuildAutomaton_7 (): - # Remove this helper function from the namespace after it is invoked - global _BuildAutomaton_7 - del _BuildAutomaton_7 - import pyxb.utils.fac as fac - - counters = set() - cc_0 = fac.CounterCondition(min=0L, max=1L, metadata=pyxb.utils.utility.Location('/home/A96028/QT5GitEficasTravail/eficas/Map2/cata_map2.xsd', 94, 3)) - counters.add(cc_0) - cc_1 = fac.CounterCondition(min=0L, max=1L, metadata=pyxb.utils.utility.Location('/home/A96028/QT5GitEficasTravail/eficas/Map2/cata_map2.xsd', 95, 3)) - counters.add(cc_1) - cc_2 = fac.CounterCondition(min=0L, max=1L, metadata=pyxb.utils.utility.Location('/home/A96028/QT5GitEficasTravail/eficas/Map2/cata_map2.xsd', 96, 3)) - counters.add(cc_2) - cc_3 = fac.CounterCondition(min=0L, max=1L, metadata=pyxb.utils.utility.Location('/home/A96028/QT5GitEficasTravail/eficas/Map2/cata_map2.xsd', 98, 3)) - counters.add(cc_3) - states = [] - final_update = None - symbol = pyxb.binding.content.ElementUse(T_experiences_experience._UseForTag(pyxb.namespace.ExpandedName(Namespace, u'experience_Name')), pyxb.utils.utility.Location('/home/A96028/QT5GitEficasTravail/eficas/Map2/cata_map2.xsd', 92, 3)) - st_0 = fac.State(symbol, is_initial=True, final_update=final_update, is_unordered_catenation=False) - states.append(st_0) - final_update = None - symbol = pyxb.binding.content.ElementUse(T_experiences_experience._UseForTag(pyxb.namespace.ExpandedName(Namespace, u'source')), pyxb.utils.utility.Location('/home/A96028/QT5GitEficasTravail/eficas/Map2/cata_map2.xsd', 93, 3)) - st_1 = fac.State(symbol, is_initial=False, final_update=final_update, is_unordered_catenation=False) - states.append(st_1) - final_update = None - symbol = pyxb.binding.content.ElementUse(T_experiences_experience._UseForTag(pyxb.namespace.ExpandedName(Namespace, u'b_source_file')), pyxb.utils.utility.Location('/home/A96028/QT5GitEficasTravail/eficas/Map2/cata_map2.xsd', 94, 3)) - st_2 = fac.State(symbol, is_initial=False, final_update=final_update, is_unordered_catenation=False) - states.append(st_2) - final_update = None - symbol = pyxb.binding.content.ElementUse(T_experiences_experience._UseForTag(pyxb.namespace.ExpandedName(Namespace, u'b_source_valeur')), pyxb.utils.utility.Location('/home/A96028/QT5GitEficasTravail/eficas/Map2/cata_map2.xsd', 95, 3)) - st_3 = fac.State(symbol, is_initial=False, final_update=final_update, is_unordered_catenation=False) - states.append(st_3) - final_update = None - symbol = pyxb.binding.content.ElementUse(T_experiences_experience._UseForTag(pyxb.namespace.ExpandedName(Namespace, u'b_source_dico')), pyxb.utils.utility.Location('/home/A96028/QT5GitEficasTravail/eficas/Map2/cata_map2.xsd', 96, 3)) - st_4 = fac.State(symbol, is_initial=False, final_update=final_update, is_unordered_catenation=False) - states.append(st_4) - final_update = set() - symbol = pyxb.binding.content.ElementUse(T_experiences_experience._UseForTag(pyxb.namespace.ExpandedName(Namespace, u'Associated_simulation_step_number')), pyxb.utils.utility.Location('/home/A96028/QT5GitEficasTravail/eficas/Map2/cata_map2.xsd', 97, 3)) - st_5 = fac.State(symbol, is_initial=False, final_update=final_update, is_unordered_catenation=False) - states.append(st_5) - final_update = set() - final_update.add(fac.UpdateInstruction(cc_3, False)) - symbol = pyxb.binding.content.ElementUse(T_experiences_experience._UseForTag(pyxb.namespace.ExpandedName(Namespace, u'dependancy')), pyxb.utils.utility.Location('/home/A96028/QT5GitEficasTravail/eficas/Map2/cata_map2.xsd', 98, 3)) - st_6 = fac.State(symbol, is_initial=False, final_update=final_update, is_unordered_catenation=False) - states.append(st_6) - transitions = [] - transitions.append(fac.Transition(st_1, [ - ])) - st_0._set_transitionSet(transitions) - transitions = [] - transitions.append(fac.Transition(st_2, [ - ])) - transitions.append(fac.Transition(st_3, [ - ])) - transitions.append(fac.Transition(st_4, [ - ])) - transitions.append(fac.Transition(st_5, [ - ])) - st_1._set_transitionSet(transitions) - transitions = [] - transitions.append(fac.Transition(st_2, [ - fac.UpdateInstruction(cc_0, True) ])) - transitions.append(fac.Transition(st_3, [ - fac.UpdateInstruction(cc_0, False) ])) - transitions.append(fac.Transition(st_4, [ - fac.UpdateInstruction(cc_0, False) ])) - transitions.append(fac.Transition(st_5, [ - fac.UpdateInstruction(cc_0, False) ])) - st_2._set_transitionSet(transitions) - transitions = [] - transitions.append(fac.Transition(st_3, [ - fac.UpdateInstruction(cc_1, True) ])) - transitions.append(fac.Transition(st_4, [ - fac.UpdateInstruction(cc_1, False) ])) - transitions.append(fac.Transition(st_5, [ - fac.UpdateInstruction(cc_1, False) ])) - st_3._set_transitionSet(transitions) - transitions = [] - transitions.append(fac.Transition(st_4, [ - fac.UpdateInstruction(cc_2, True) ])) - transitions.append(fac.Transition(st_5, [ - fac.UpdateInstruction(cc_2, False) ])) - st_4._set_transitionSet(transitions) - transitions = [] - transitions.append(fac.Transition(st_6, [ - ])) - st_5._set_transitionSet(transitions) - transitions = [] - transitions.append(fac.Transition(st_6, [ - fac.UpdateInstruction(cc_3, True) ])) - st_6._set_transitionSet(transitions) - return fac.Automaton(states, counters, False, containing_state=None) -T_experiences_experience._Automaton = _BuildAutomaton_7() - - - - -T_experiences_dimensions._AddElement(pyxb.binding.basis.element(pyxb.namespace.ExpandedName(Namespace, u'diameter'), T_experiences_dimensions_diameter, scope=T_experiences_dimensions, location=pyxb.utils.utility.Location('/home/A96028/QT5GitEficasTravail/eficas/Map2/cata_map2.xsd', 103, 3))) - -T_experiences_dimensions._AddElement(pyxb.binding.basis.element(pyxb.namespace.ExpandedName(Namespace, u'thickness'), T_experiences_dimensions_thickness, scope=T_experiences_dimensions, location=pyxb.utils.utility.Location('/home/A96028/QT5GitEficasTravail/eficas/Map2/cata_map2.xsd', 104, 3))) - -T_experiences_dimensions._AddElement(pyxb.binding.basis.element(pyxb.namespace.ExpandedName(Namespace, u'number_elements'), T_experiences_dimensions_number_elements, scope=T_experiences_dimensions, location=pyxb.utils.utility.Location('/home/A96028/QT5GitEficasTravail/eficas/Map2/cata_map2.xsd', 105, 3))) - -def _BuildAutomaton_8 (): - # Remove this helper function from the namespace after it is invoked - global _BuildAutomaton_8 - del _BuildAutomaton_8 - import pyxb.utils.fac as fac - - counters = set() - states = [] - final_update = None - symbol = pyxb.binding.content.ElementUse(T_experiences_dimensions._UseForTag(pyxb.namespace.ExpandedName(Namespace, u'diameter')), pyxb.utils.utility.Location('/home/A96028/QT5GitEficasTravail/eficas/Map2/cata_map2.xsd', 103, 3)) - st_0 = fac.State(symbol, is_initial=True, final_update=final_update, is_unordered_catenation=False) - states.append(st_0) - final_update = None - symbol = pyxb.binding.content.ElementUse(T_experiences_dimensions._UseForTag(pyxb.namespace.ExpandedName(Namespace, u'thickness')), pyxb.utils.utility.Location('/home/A96028/QT5GitEficasTravail/eficas/Map2/cata_map2.xsd', 104, 3)) - st_1 = fac.State(symbol, is_initial=False, final_update=final_update, is_unordered_catenation=False) - states.append(st_1) - final_update = set() - symbol = pyxb.binding.content.ElementUse(T_experiences_dimensions._UseForTag(pyxb.namespace.ExpandedName(Namespace, u'number_elements')), pyxb.utils.utility.Location('/home/A96028/QT5GitEficasTravail/eficas/Map2/cata_map2.xsd', 105, 3)) - st_2 = fac.State(symbol, is_initial=False, final_update=final_update, is_unordered_catenation=False) - states.append(st_2) - transitions = [] - transitions.append(fac.Transition(st_1, [ - ])) - st_0._set_transitionSet(transitions) - transitions = [] - transitions.append(fac.Transition(st_2, [ - ])) - st_1._set_transitionSet(transitions) - transitions = [] - st_2._set_transitionSet(transitions) - return fac.Automaton(states, counters, False, containing_state=None) -T_experiences_dimensions._Automaton = _BuildAutomaton_8() - - - - -T_experiences._AddElement(pyxb.binding.basis.element(pyxb.namespace.ExpandedName(Namespace, u'description'), T_experiences_description, scope=T_experiences, location=pyxb.utils.utility.Location('/home/A96028/QT5GitEficasTravail/eficas/Map2/cata_map2.xsd', 110, 3))) - -T_experiences._AddElement(pyxb.binding.basis.element(pyxb.namespace.ExpandedName(Namespace, u'experience'), T_experiences_experience, scope=T_experiences, location=pyxb.utils.utility.Location('/home/A96028/QT5GitEficasTravail/eficas/Map2/cata_map2.xsd', 111, 3))) - -T_experiences._AddElement(pyxb.binding.basis.element(pyxb.namespace.ExpandedName(Namespace, u'dimensions'), T_experiences_dimensions, scope=T_experiences, location=pyxb.utils.utility.Location('/home/A96028/QT5GitEficasTravail/eficas/Map2/cata_map2.xsd', 112, 3))) - -T_experiences._AddElement(pyxb.binding.basis.element(pyxb.namespace.ExpandedName(Namespace, u'type_experience'), T_experiences_type_experience, scope=T_experiences, location=pyxb.utils.utility.Location('/home/A96028/QT5GitEficasTravail/eficas/Map2/cata_map2.xsd', 113, 3))) - -def _BuildAutomaton_9 (): - # Remove this helper function from the namespace after it is invoked - global _BuildAutomaton_9 - del _BuildAutomaton_9 - import pyxb.utils.fac as fac - - counters = set() - cc_0 = fac.CounterCondition(min=0L, max=None, metadata=pyxb.utils.utility.Location('/home/A96028/QT5GitEficasTravail/eficas/Map2/cata_map2.xsd', 111, 3)) - counters.add(cc_0) - cc_1 = fac.CounterCondition(min=0L, max=1L, metadata=pyxb.utils.utility.Location('/home/A96028/QT5GitEficasTravail/eficas/Map2/cata_map2.xsd', 112, 3)) - counters.add(cc_1) - states = [] - final_update = None - symbol = pyxb.binding.content.ElementUse(T_experiences._UseForTag(pyxb.namespace.ExpandedName(Namespace, u'description')), pyxb.utils.utility.Location('/home/A96028/QT5GitEficasTravail/eficas/Map2/cata_map2.xsd', 110, 3)) - st_0 = fac.State(symbol, is_initial=True, final_update=final_update, is_unordered_catenation=False) - states.append(st_0) - final_update = None - symbol = pyxb.binding.content.ElementUse(T_experiences._UseForTag(pyxb.namespace.ExpandedName(Namespace, u'experience')), pyxb.utils.utility.Location('/home/A96028/QT5GitEficasTravail/eficas/Map2/cata_map2.xsd', 111, 3)) - st_1 = fac.State(symbol, is_initial=False, final_update=final_update, is_unordered_catenation=False) - states.append(st_1) - final_update = None - symbol = pyxb.binding.content.ElementUse(T_experiences._UseForTag(pyxb.namespace.ExpandedName(Namespace, u'dimensions')), pyxb.utils.utility.Location('/home/A96028/QT5GitEficasTravail/eficas/Map2/cata_map2.xsd', 112, 3)) - st_2 = fac.State(symbol, is_initial=False, final_update=final_update, is_unordered_catenation=False) - states.append(st_2) - final_update = set() - symbol = pyxb.binding.content.ElementUse(T_experiences._UseForTag(pyxb.namespace.ExpandedName(Namespace, u'type_experience')), pyxb.utils.utility.Location('/home/A96028/QT5GitEficasTravail/eficas/Map2/cata_map2.xsd', 113, 3)) - st_3 = fac.State(symbol, is_initial=False, final_update=final_update, is_unordered_catenation=False) - states.append(st_3) - transitions = [] - transitions.append(fac.Transition(st_1, [ - ])) - transitions.append(fac.Transition(st_2, [ - ])) - transitions.append(fac.Transition(st_3, [ - ])) - st_0._set_transitionSet(transitions) - transitions = [] - transitions.append(fac.Transition(st_1, [ - fac.UpdateInstruction(cc_0, True) ])) - transitions.append(fac.Transition(st_2, [ - fac.UpdateInstruction(cc_0, False) ])) - transitions.append(fac.Transition(st_3, [ - fac.UpdateInstruction(cc_0, False) ])) - st_1._set_transitionSet(transitions) - transitions = [] - transitions.append(fac.Transition(st_2, [ - fac.UpdateInstruction(cc_1, True) ])) - transitions.append(fac.Transition(st_3, [ - fac.UpdateInstruction(cc_1, False) ])) - st_2._set_transitionSet(transitions) - transitions = [] - st_3._set_transitionSet(transitions) - return fac.Automaton(states, counters, False, containing_state=None) -T_experiences._Automaton = _BuildAutomaton_9() - - - - -T_Map2._AddElement(pyxb.binding.basis.element(pyxb.namespace.ExpandedName(Namespace, u'experiences'), T_experiences, scope=T_Map2, location=pyxb.utils.utility.Location('/home/A96028/QT5GitEficasTravail/eficas/Map2/cata_map2.xsd', 120, 3))) - -def _BuildAutomaton_10 (): - # Remove this helper function from the namespace after it is invoked - global _BuildAutomaton_10 - del _BuildAutomaton_10 - import pyxb.utils.fac as fac - - counters = set() - cc_0 = fac.CounterCondition(min=0L, max=None, metadata=pyxb.utils.utility.Location('/home/A96028/QT5GitEficasTravail/eficas/Map2/cata_map2.xsd', 119, 2)) - counters.add(cc_0) - cc_1 = fac.CounterCondition(min=0L, max=1L, metadata=pyxb.utils.utility.Location('/home/A96028/QT5GitEficasTravail/eficas/Map2/cata_map2.xsd', 120, 3)) - counters.add(cc_1) - states = [] - final_update = set() - final_update.add(fac.UpdateInstruction(cc_0, False)) - final_update.add(fac.UpdateInstruction(cc_1, False)) - symbol = pyxb.binding.content.ElementUse(T_Map2._UseForTag(pyxb.namespace.ExpandedName(Namespace, u'experiences')), pyxb.utils.utility.Location('/home/A96028/QT5GitEficasTravail/eficas/Map2/cata_map2.xsd', 120, 3)) - st_0 = fac.State(symbol, is_initial=True, final_update=final_update, is_unordered_catenation=False) - states.append(st_0) - transitions = [] - transitions.append(fac.Transition(st_0, [ - fac.UpdateInstruction(cc_0, True), - fac.UpdateInstruction(cc_1, False) ])) - transitions.append(fac.Transition(st_0, [ - fac.UpdateInstruction(cc_1, True) ])) - st_0._set_transitionSet(transitions) - return fac.Automaton(states, counters, True, containing_state=None) -T_Map2._Automaton = _BuildAutomaton_10() - diff --git a/Med/Cata_MED_FAM.xml b/Med/Cata_MED_FAM.xml deleted file mode 120000 index 35e1d73e..00000000 --- a/Med/Cata_MED_FAM.xml +++ /dev/null @@ -1 +0,0 @@ -Catalogues/Cata_MED_FAM.xml \ No newline at end of file diff --git a/Med/Catalogues/Cata_MED_FAM v2.xml b/Med/Catalogues/Cata_MED_FAM v2.xml deleted file mode 100755 index b11b6367..00000000 --- a/Med/Catalogues/Cata_MED_FAM v2.xml +++ /dev/null @@ -1,130 +0,0 @@ - - - - - - - TXM - - - - - - - - I - - - TXM - - - - DES IDE VAL - - - I - - - TXM - - - I - - - I - - - - - I - - - TXM - - - - - - - - 0 - - - - 0 - - - I - - - - DES IDE VAL - - - I - - - TXM - - - I - - - I - - - - - - - - - - - I - - - TXM - - - - DES IDE VAL - - - I - - - TXM - - - I - - - I - - - - - I - - - TXM - - - - - - - - diff --git a/Med/Catalogues/Cata_MED_FAM.xml b/Med/Catalogues/Cata_MED_FAM.xml deleted file mode 100755 index 41fdda95..00000000 --- a/Med/Catalogues/Cata_MED_FAM.xml +++ /dev/null @@ -1,36 +0,0 @@ - - - - - - - TXM - - - TXM - TXM - - DES IDE VAL - I - TXM - I - I - - - I - TXM - - - TXM - - - - TXM - - - - - diff --git a/Med/Catalogues/Cata_MED_FAM_test_v7.xml b/Med/Catalogues/Cata_MED_FAM_test_v7.xml deleted file mode 100755 index 44d19da5..00000000 --- a/Med/Catalogues/Cata_MED_FAM_test_v7.xml +++ /dev/null @@ -1,130 +0,0 @@ - - - - - - - TXM - - - - - - - - I - - - TXM - - - - DES IDE VAL - - - I - - - TXM - - - I - - - I - - - - - I - - - TXM - - - - - - - - 0 - - - - 0 - - - I - - - - DES IDE VAL - - - I - - - TXM - - - I - - - I - - - - - - - - - - - I - - - TXM - - - - DES IDE VAL - - - I - - - TXM - - - I - - - I - - - - - I - - - TXM - - - - - - - - diff --git a/Med/Catalogues/Cata_MED_FAM_test_v8.xml b/Med/Catalogues/Cata_MED_FAM_test_v8.xml deleted file mode 100755 index 40395cf0..00000000 --- a/Med/Catalogues/Cata_MED_FAM_test_v8.xml +++ /dev/null @@ -1,130 +0,0 @@ - - - - - - - TXM - - - - - - - - I - - - TXM - - - - DES IDE VAL - - - I - - - TXM - - - I - - - I - - - - - I - - - TXM - - - - - - - - 0 - - - - 0 - - - I - - - - DES IDE VAL - - - I - - - TXM - - - I - - - I - - - - - - - - - - - I - - - TXM - - - - DES IDE VAL - - - I - - - TXM - - - I - - - I - - - - - I - - - TXM - - - - - - - - diff --git a/Med/Catalogues/Cata_MED_FAM_test_v9.xml b/Med/Catalogues/Cata_MED_FAM_test_v9.xml deleted file mode 100755 index 4c2b02de..00000000 --- a/Med/Catalogues/Cata_MED_FAM_test_v9.xml +++ /dev/null @@ -1,130 +0,0 @@ - - - - - - - TXM - - - - - - - - I - - - TXM - - - - DES IDE VAL - - - I - - - TXM - - - I - - - I - - - - - I - - - TXM - - - - - - - - 0 - - - - 0 - - - I - - - - DES IDE VAL - - - I - - - TXM - - - I - - - I - - - - - - - - - - - I - - - TXM - - - - DES IDE VAL - - - I - - - TXM - - - I - - - I - - - - - I - - - TXM - - - - - - - - diff --git a/Med/configuration_MED.py b/Med/configuration_MED.py deleted file mode 100644 index 0ce59dad..00000000 --- a/Med/configuration_MED.py +++ /dev/null @@ -1,52 +0,0 @@ -# -*- coding: utf-8 -*- -# -# Copyright (C) 2008-2016 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 -# - -""" - Ce module sert pour charger les paramètres de configuration d'EFICAS -""" -# Modules Python -import os, sys, string, types, re - - -# Modules Eficas -from InterfaceQT4 import configuration - -# Classe de base permettant de lire, afficher -# et sauvegarder les fichiers utilisateurs - -class CONFIG(configuration.configBase): - - def __init__(self,appli,repIni): - - self.labels_eficas=['lang','rep_cata','catalogues','closeAutreCommande','closeFrameRechercheCommande','closeEntete','taille'] - configuration.configBase.__init__(self,appli,repIni) - - self.rep_user = os.environ["HOME"] - self.appli = appli - self.code = appli.code - self.rep_ini = repIni - self.savedir = self.rep_user - -def make_config(appli,rep): - return CONFIG(appli,rep) - diff --git a/Med/prefs.py b/Med/prefs.py deleted file mode 100644 index 2e9d0a2e..00000000 --- a/Med/prefs.py +++ /dev/null @@ -1,22 +0,0 @@ -# Copyright (C) 2007-2012 EDF R&D -# -# 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 -# -code="MED" -import sys, os -if os.path.dirname(os.path.abspath(__file__)) not in sys.path : - sys.path.insert(0,os.path.dirname(os.path.abspath(__file__))) diff --git a/Med/prefs_MED.py b/Med/prefs_MED.py deleted file mode 100644 index 1fda3add..00000000 --- a/Med/prefs_MED.py +++ /dev/null @@ -1,42 +0,0 @@ -# -*- coding: utf-8 -*- -# CONFIGURATION MANAGEMENT OF EDF VERSION -# ====================================================================== -# COPYRIGHT (C) 1991 - 2002 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# -# -# ====================================================================== - -import os,sys -# repIni sert a localiser le fichier editeur.ini -# Obligatoire -repIni=os.path.dirname(os.path.abspath(__file__)) -INSTALLDIR=os.path.join(repIni,'..') -sys.path[:0]=[INSTALLDIR] - - -# lang indique la langue utilisee pour les chaines d'aide : fr ou ang -lang='en' - -# Codage des strings qui accepte les accents (en remplacement de 'ascii') -encoding='iso-8859-1' -docPath=repIni - -# -typeDeCata='XML' -catalogues=( - ('med','med',os.path.join(repIni,'cata_med.py'),'dico','xml'), -) - diff --git a/Med/properties.py b/Med/properties.py deleted file mode 100644 index 1d328a46..00000000 --- a/Med/properties.py +++ /dev/null @@ -1,24 +0,0 @@ -#@ MODIF properties Accas DATE 11/06/2008 AUTEUR aster M.ADMINISTRATEUR -# RESPONSABLE D6BHHHH J-P.LEFEBVRE -# ====================================================================== -# COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# IDENTIFICATION DU GESTIONNAIRE DE COMMANDE ACCAS A PARTIR -# DE LA VERSION DU CODE_ASTER ASSOCIE -#---------------------------------------------------------------------- -version = "1.2" -date = "25/05/2010" -exploit = False diff --git a/Med/qtEficas_Med.py b/Med/qtEficas_Med.py deleted file mode 100755 index 05eaee9a..00000000 --- a/Med/qtEficas_Med.py +++ /dev/null @@ -1,36 +0,0 @@ -#!/usr/bin/env python -# -*- coding: utf-8 -*- -# Copyright (C) 2007-2017 EDF R&D -# -# 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 -# -""" -""" -# Modules Python - -# Modules Eficas -import prefs -name='prefs_'+prefs.code -__import__(name) - -#import sys -#reload(sys) -#sys.setdefaultencoding('latin1') - -from InterfaceQT4 import eficas_go -print eficas_go -eficas_go.lanceEficas(code=prefs.code) diff --git a/OldCodes/Aster/CMakeLists.txt b/OldCodes/Aster/CMakeLists.txt deleted file mode 100644 index a4e9ae01..00000000 --- a/OldCodes/Aster/CMakeLists.txt +++ /dev/null @@ -1,36 +0,0 @@ -# -*- coding: utf-8 -*- -# CONFIGURATION MANAGEMENT OF EDF VERSION -# ====================================================================== -# COPYRIGHT (C) 1991 - 2002 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# -# -# ====================================================================== - -# Installation de tous les fichiers Python, texte et images du repertoire et des sous-repertoires (sauf CVS) -install ( - FILES - configuration_ASTER.py __init__.py prefs_ASTER.py prefs.py - qtEficas_aster.py qtGroup.py style.py - #editeur_salome.ini editeur.ini properties.py - eficas_aster.py - LICENSE.TERMS - DESTINATION ${CMAKE_INSTALL_PREFIX}/Aster - ) -add_subdirectory (Cata) - -### Local Variables: -### mode: cmake -### End: diff --git a/OldCodes/Aster/Cata/CMakeLists.txt b/OldCodes/Aster/Cata/CMakeLists.txt deleted file mode 100644 index 00c30d3f..00000000 --- a/OldCodes/Aster/Cata/CMakeLists.txt +++ /dev/null @@ -1,39 +0,0 @@ -# -*- coding: utf-8 -*- -# CONFIGURATION MANAGEMENT OF EDF VERSION -# ====================================================================== -# COPYRIGHT (C) 1991 - 2002 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# -# -# ====================================================================== - -# Installation de tous les fichiers Python, texte et images du repertoire et des sous-repertoires (sauf CVS) -install ( - FILES - __init__.py cataSTA8c_clefs_docu cataSTA9c_clefs_docu - DESTINATION ${CMAKE_INSTALL_PREFIX}/Aster/Cata - ) -install ( - DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}/Utilitai - ${CMAKE_CURRENT_SOURCE_DIR}/cataSTA10 - ${CMAKE_CURRENT_SOURCE_DIR}/cataSTA9 - ${CMAKE_CURRENT_SOURCE_DIR}/cataSTA11 - DESTINATION ${CMAKE_INSTALL_PREFIX}/Aster/Cata -) - - -### Local Variables: -### mode: cmake -### End: diff --git a/OldCodes/Aster/Cata/__init__.py b/OldCodes/Aster/Cata/__init__.py deleted file mode 100644 index 9dbd619b..00000000 --- a/OldCodes/Aster/Cata/__init__.py +++ /dev/null @@ -1,19 +0,0 @@ -#@ MODIF __init__ Cata DATE 20/09/2004 AUTEUR DURAND C.DURAND -# -*- coding: iso-8859-1 -*- -# maConfiguration MANAGEMENT OF EDF VERSION -# ====================================================================== -# COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== diff --git a/OldCodes/Aster/Cata/cataSTA11/__init__.py b/OldCodes/Aster/Cata/cataSTA11/__init__.py deleted file mode 100644 index 3cdb1caf..00000000 --- a/OldCodes/Aster/Cata/cataSTA11/__init__.py +++ /dev/null @@ -1,18 +0,0 @@ -import os,sys -sys.modules["Cata"]=sys.modules[__name__] -rep_macro = os.path.dirname(__file__) -sys.path.insert(0,rep_macro) -rep_macro=os.path.join(rep_macro,'Macro') -sys.path.insert(0,rep_macro) - -if sys.modules.has_key("SD"): - del sys.modules["SD"] -for k in sys.modules.keys(): - if k[0:3] == "SD.": - del sys.modules[k] - - -from cata import * -from math import ceil -from Extensions import param2 -pi=param2.Variable('pi',pi) diff --git a/OldCodes/Aster/Cata/cataSTA11/cata.py b/OldCodes/Aster/Cata/cataSTA11/cata.py deleted file mode 100755 index 7371a3e3..00000000 --- a/OldCodes/Aster/Cata/cataSTA11/cata.py +++ /dev/null @@ -1,34413 +0,0 @@ -# coding: utf-8 -# ====================================================================== -# COPYRIGHT (C) 1991 - 2012 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: mathieu.courtois at edf.fr - -import os -from math import sin, cos, tan, asin, acos, atan2, atan, sinh, cosh, tanh -from math import pi ,exp,log, log10, sqrt - -import Accas -from Accas import * -from Accas import _F -import ops - -try: - import aster - aster_exists = True -except ImportError: - aster = None - aster_exists = False - -# Le catalogue est constitué par concaténation des fichiers .capy -# de catapy/{entete,commun,commande}. - -# Tous les imports globaux devraient être faits ici dans accas.capy. -# Veillez à limiter les imports dans la définition des concepts (co_*.capy) -# au strict nécessaire et les faire sous les méthodes qui en ont -# expressément besoin. - -JdC = JDC_CATA(code='ASTER', - execmodul=None, -# regles=(AU_MOINS_UN('DEBUT', 'POURSUITE'), -# AU_MOINS_UN('FIN'), -# A_CLASSER(('DEBUT', 'POURSUITE'), 'FIN')) - ) - -# Types géométriques -class no(GEOM): - """ - Classe servant à définir le nom d'un noeud dans le fichier de commande - En clair : un chaine de longueur 8. - """ - pass - -class grno(GEOM): - """ - Classe servant à définir le nom d'un groupe de noeuds dans le fichier de commande - En clair : un chaine de longueur 24. - """ - def __convert__(cls,valeur): - """ - Fonction de verification de la longueur de la chaine - """ - if isinstance(valeur, (str,unicode)) and len(valeur.strip()) <= 24: - return valeur.strip() - raise ValueError(_(u'On attend une chaine de caractères (de longueur <= 24).')) - __convert__ = classmethod(__convert__) - -class ma(GEOM): - """ - Classe servant à définir le nom d'une maille dans le fichier de commande - En clair : un chaine de longueur 8. - """ - pass - -class grma(GEOM): - """ - Classe servant à définir le nom d'un groupe de mailles dans le fichier de commande - En clair : un chaine de longueur 24. - """ - def __convert__(cls,valeur): - """ - Fonction de verification de la longueur de la chaine - """ - if isinstance(valeur, (str,unicode)) and len(valeur.strip()) <= 24: - return valeur.strip() - raise ValueError(_(u'On attend une chaine de caractères (de longueur <= 24).')) - __convert__ = classmethod(__convert__) - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2011 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: mathieu.courtois at edf.fr - - -class cabl_precont(ASSD): - cata_sdj = "SD.sd_cabl_precont.sd_cabl_precont" - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2011 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: mathieu.courtois at edf.fr - - -class cara_elem(ASSD): - cata_sdj = "SD.sd_cara_elem.sd_cara_elem" - - def toEPX(self): - - # Raideurs - ressorts = {} - - try: - EPXnoeud = self.sdj.CARRIGXN.get() - EPXval = self.sdj.CARRIGXV.get() - lenEPXval = len(EPXval) - lenEPXnoeud = len(EPXnoeud)*6 - except: - # s'il y a un problème sur la structure de données ==> - from Utilitai.Utmess import UTMESS - UTMESS('F','MODELISA9_98') - # Vérification de la déclaration qui est faite dans 'acearp' - if ( lenEPXval != lenEPXnoeud ): - from Utilitai.Utmess import UTMESS - UTMESS('F','MODELISA9_97') - # Tout est OK - i=0 - for no in EPXnoeud : - ressorts[no] = EPXval[i:i+6] - i+=6 - - # Amortissements - amorts = {} - try: - EPXnoeud = self.sdj.CARAMOXN.get() - EPXval = self.sdj.CARAMOXV.get() - lenEPXval = len(EPXval) - lenEPXnoeud = len(EPXnoeud)*6 - except: - # s'il y a un problème sur la structure de données ==> - from Utilitai.Utmess import UTMESS - UTMESS('F','MODELISA9_98') - # Vérification de la déclaration qui est faite dans 'acearp' - if ( lenEPXval != lenEPXnoeud ): - from Utilitai.Utmess import UTMESS - UTMESS('F','MODELISA9_97') - # Tout est OK - i=0 - for no in EPXnoeud : - amorts[no] = EPXval[i:i+6] - i+=6 - - return ressorts, amorts - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2011 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: mathieu.courtois at edf.fr - -class cham_gd_sdaster(ASSD): - cata_sdj = "SD.sd_champ.sd_champ" - -class carte_sdaster(cham_gd_sdaster): - cata_sdj = "SD.sd_champ.sd_carte_class" - -class cham_elem(cham_gd_sdaster): - cata_sdj = "SD.sd_champ.sd_cham_elem_class" - - def EXTR_COMP(self,comp,lgma,topo=0) : - """ retourne les valeurs de la composante comp du champ sur la liste - de groupes de mailles lgma avec eventuellement l'info de la - topologie si topo>0. Si lgma est une liste vide, c'est equivalent - a un TOUT='OUI' dans les commandes aster - Attributs retourne - - self.valeurs : numpy.array contenant les valeurs - Si on a demande la topo : - - self.maille : numero de mailles - - self.point : numero du point dans la maille - - self.sous_point : numero du sous point dans la maille """ - import numpy - if not self.accessible() : - raise Accas.AsException("Erreur dans cham_elem.EXTR_COMP en PAR_LOT='OUI'") - - ncham=self.getName() - ncham=ncham+(8-len(ncham))*' ' - nchams=ncham[0:7]+'S' - ncmp=comp+(8-len(comp))*' ' - - aster.prepcompcham(ncham,nchams,ncmp,"EL ",topo,lgma) - - valeurs=numpy.array(aster.getvectjev(nchams+(19-len(ncham))*' '+'.V')) - - if (topo>0) : - maille=(aster.getvectjev(nchams+(19-len(ncham))*' '+'.M')) - point=(aster.getvectjev(nchams+(19-len(ncham))*' '+'.P')) - sous_point=(aster.getvectjev(nchams+(19-len(ncham))*' '+'.SP')) - else : - maille=None - point=None - sous_point=None - - aster.prepcompcham("__DETR__",nchams,ncmp,"EL ",topo,lgma) - - return post_comp_cham_el(valeurs,maille,point,sous_point) - -class cham_no_sdaster(cham_gd_sdaster): - cata_sdj = "SD.sd_champ.sd_cham_no_class" - - def EXTR_COMP(self,comp=' ',lgno=[],topo=0) : - """ retourne les valeurs de la composante comp du champ sur la liste - de groupes de noeuds lgno avec eventuellement l'info de la - topologie si topo>0. Si lgno est une liste vide, c'est equivalent - a un TOUT='OUI' dans les commandes aster - Attributs retourne - - self.valeurs : numpy.array contenant les valeurs - Si on a demande la topo (i.e. self.topo = 1) : - - self.noeud : numero de noeud - Si on demande toutes les composantes (comp = ' ') : - - self.comp : les composantes associees a chaque grandeur pour chaque noeud - """ - import numpy - if not self.accessible() : - raise Accas.AsException("Erreur dans cham_no.EXTR_COMP en PAR_LOT='OUI'") - - ncham=self.getName() - ncham=ncham+(8-len(ncham))*' ' - nchams=ncham[0:7]+'S' - ncmp=comp+(8-len(comp))*' ' - - aster.prepcompcham(ncham,nchams,ncmp,"NO ",topo,lgno) - - valeurs=numpy.array(aster.getvectjev(nchams+(19-len(ncham))*' '+'.V')) - - if (topo>0) : - noeud=(aster.getvectjev(nchams+(19-len(ncham))*' '+'.N')) - else : - noeud=None - - if comp[:1] == ' ': - comp=(aster.getvectjev(nchams+(19-len(ncham))*' '+'.C')) - aster.prepcompcham("__DETR__",nchams,ncmp,"NO ",topo,lgno) - return post_comp_cham_no(valeurs,noeud,comp) - else: - aster.prepcompcham("__DETR__",nchams,ncmp,"NO ",topo,lgno) - return post_comp_cham_no(valeurs,noeud) - - def __add__(self, other): - from SD.sd_nume_equa import sd_nume_equa - # on recupere le type - __nume_ddl=sd_nume_equa(self.sdj.REFE.get()[1]) - __gd=__nume_ddl.REFN.get()[1].strip() - __type='NOEU_'+__gd - # on recupere le nom du maillage - __nomMaillage=self.sdj.REFE.get()[0].strip() - # on recupere l'objet du maillage - __maillage=CONTEXT.getCurrentStep().getConcept(__nomMaillage) - __CHAM = CREA_CHAMP(OPERATION='ASSE', - MAILLAGE=__maillage, - TYPE_CHAM=__type, - INFO=1, - ASSE=(_F(CHAM_GD=self, - TOUT='OUI', - CUMUL='OUI', - COEF_R=1.), - _F(CHAM_GD=other, - TOUT='OUI', - CUMUL='OUI', - COEF_R=1.), - )) - return __CHAM - -# post-traitement : -class post_comp_cham_no : - def __init__(self, valeurs, noeud=None, comp=None) : - self.valeurs = valeurs - self.noeud = noeud - self.comp = comp - -class post_comp_cham_el : - def __init__(self, valeurs, maille=None, point=None, sous_point=None) : - self.valeurs = valeurs - self.maille = maille - self.point = point - self.sous_point = sous_point - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2012 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: jacques.pellet at edf.fr - -class cham_mater(ASSD): - cata_sdj = "SD.sd_cham_mater.sd_cham_mater" - - def getVale_ref(self, nom_varc): - """Retourne la valeur de référence de `nom_varc`.""" - from SD.sd_carte import sd_carte - nom_varc = nom_varc.strip() - varc = self.sdj.varc - nom = [sv.strip() for sv in varc.CVRCNOM.get()] - assert nom_varc in nom, (nom_varc, nom) - idx = nom.index(nom_varc) - novarc = [sv for sv in varc.CVRCVARC.get()] - assert len(novarc) > idx, novarc - nomch = novarc[idx] - # accès à la carte - cartref = sd_carte("%-8s.%-8s.1" % (self.nom, nomch)) - valref = cartref.VALE.get()[0] - return valref - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2011 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: mathieu.courtois at edf.fr - - -class char_acou(ASSD): - cata_sdj = "SD.sd_char_acou.sd_char_acou" - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2011 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: mathieu.courtois at edf.fr - - -class char_cine_acou(ASSD): - cata_sdj = "SD.sd_char_cine.sd_char_cine" - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2011 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: mathieu.courtois at edf.fr - - -class char_cine_meca(ASSD): - cata_sdj = "SD.sd_char_cine.sd_char_cine" - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2011 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: mathieu.courtois at edf.fr - - -class char_cine_ther(ASSD): - cata_sdj = "SD.sd_char_cine.sd_char_cine" - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2011 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: mathieu.courtois at edf.fr - - -class char_contact(ASSD): - cata_sdj = "SD.sd_contact.sd_contact" - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2011 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: mathieu.courtois at edf.fr - - -class char_meca(ASSD): - cata_sdj = "SD.sd_char_meca.sd_char_meca" - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2011 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: mathieu.courtois at edf.fr - - -class char_ther(ASSD): - cata_sdj = "SD.sd_char_ther.sd_char_ther" - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2011 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: mathieu.courtois at edf.fr - - -class compor_sdaster(ASSD): - cata_sdj = "SD.sd_compor.sd_compor" - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2011 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: mathieu.courtois at edf.fr - - -class corresp_2_mailla(ASSD): - cata_sdj = "SD.sd_corresp_2_mailla.sd_corresp_2_mailla" - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2011 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: mathieu.courtois at edf.fr - - -class courbe_sdaster(ASSD): - cata_sdj = "SD.sd_courbe.sd_courbe" - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2013 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: mathieu.courtois at edf.fr - -class entier(ASSD): - cata_sdj = "SD.AsBase" - - def __init__(self, valeur=None, **args): - ASSD.__init__(self, **args) - self.valeur = valeur - - def __adapt__(self, validator): - if validator.name == "list": - # validateur liste,cardinalité - return (self, ) - elif validator.name == "type": - # validateur type - return validator.adapt(self.valeur or 0) - else: - # validateur into et valid - return self - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2011 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: mathieu.courtois at edf.fr - - -class fiss_xfem(ASSD): - cata_sdj = "SD.sd_xfem.sd_fiss_xfem" - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2012 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: mathieu.courtois at edf.fr - -# types 'fonction' : -class fonction_class(ASSD): - cata_sdj = "SD.sd_fonction.sd_fonction_aster" - - def Valeurs(self): - pass - - def Parametres(self): - """ - Retourne un dictionnaire contenant les parametres de la fonction ; - le type jeveux (FONCTION, FONCT_C, NAPPE) n'est pas retourne, - le dictionnaire peut ainsi etre fourni a CALC_FONC_INTERP tel quel. - """ - from Utilitai.Utmess import UTMESS - if self.accessible(): - TypeProl={'E':'EXCLU', 'L':'LINEAIRE', 'C':'CONSTANT' } - objev = '%-19s.PROL' % self.getName() - prol = self.sdj.PROL.get() - if prol == None: - UTMESS('F', 'SDVERI_2', valk=[objev]) - dico={ - 'INTERPOL' : [prol[1][0:3],prol[1][4:7]], - 'NOM_PARA' : prol[2][0:16].strip(), - 'NOM_RESU' : prol[3][0:16].strip(), - 'PROL_DROITE' : TypeProl[prol[4][1]], - 'PROL_GAUCHE' : TypeProl[prol[4][0]], - } - elif hasattr(self,'etape') and self.etape.nom=='DEFI_FONCTION' : - dico={ - 'INTERPOL' : self.etape['INTERPOL'], - 'NOM_PARA' : self.etape['NOM_PARA'], - 'NOM_RESU' : self.etape['NOM_RESU'], - 'PROL_DROITE' : self.etape['PROL_DROITE'], - 'PROL_GAUCHE' : self.etape['PROL_GAUCHE'], - } - if type(dico['INTERPOL']) == tuple: - dico['INTERPOL']=list(dico['INTERPOL']) - elif type(dico['INTERPOL']) == str: - dico['INTERPOL']=[dico['INTERPOL'],] - if len(dico['INTERPOL'])==1 : - dico['INTERPOL']=dico['INTERPOL']*2 - else: - raise Accas.AsException("Erreur dans fonction.Parametres en PAR_LOT='OUI'") - return dico - - def Trace(self,FORMAT='TABLEAU',**kargs): - """Tracé d'une fonction""" - if not self.accessible() : - raise Accas.AsException("Erreur dans fonction.Trace en PAR_LOT='OUI'") - from Utilitai.Graph import Graph - gr=Graph() - gr.AjoutCourbe(Val=self.Valeurs(), - Lab=[self.Parametres()['NOM_PARA'],self.Parametres()['NOM_RESU']], - Leg=os.linesep.join(self.sdj.TITR.get()) ) - gr.Trace(FORMAT=FORMAT,**kargs) - -class fonction_sdaster(fonction_class): - - def convert(self, arg='real'): - """ - Retourne un objet de la classe t_fonction - représentation python de la fonction - """ - from Cata_Utils.t_fonction import t_fonction, t_fonction_c - class_fonction = t_fonction - if arg == 'complex': - class_fonction = t_fonction_c - absc, ordo = self.Valeurs() - return class_fonction(absc, ordo, self.Parametres(), nom=self.nom) - - def Valeurs(self) : - """ - Retourne deux listes de valeurs : abscisses et ordonnees - """ - from Utilitai.Utmess import UTMESS - if self.accessible(): - vale = '%-19s.VALE' % self.getName() - lbl = self.sdj.VALE.get() - if lbl == None: - UTMESS('F', 'SDVERI_2', valk=[vale]) - lbl = list(lbl) - dim = len(lbl)/2 - lx = lbl[0:dim] - ly = lbl[dim:2*dim] - elif hasattr(self, 'etape') and self.etape.nom == 'DEFI_FONCTION' : - if self.etape['VALE'] is not None: - lbl = list(self.etape['VALE']) - dim = len(lbl) - lx = [lbl[i] for i in range(0,dim,2)] - ly = [lbl[i] for i in range(1,dim,2)] - elif self.etape['VALE_PARA'] is not None: - lx = self.etape['VALE_PARA'].Valeurs() - ly = self.etape['VALE_FONC'].Valeurs() - elif self.etape['ABSCISSE'] is not None: - lx = self.etape['ABSCISSE'] - ly = self.etape['ORDONNEE'] - else: - raise Accas.AsException("Erreur (fonction.Valeurs) : ne fonctionne en " \ - "PAR_LOT='OUI' que sur des fonctions produites par DEFI_FONCTION " \ - "dans le fichier de commandes courant.") - else: - raise Accas.AsException("Erreur (fonction.Valeurs) : ne fonctionne en " \ - "PAR_LOT='OUI' que sur des fonctions produites par DEFI_FONCTION " \ - "dans le fichier de commandes courant.") - return [lx, ly] - - def Absc(self): - """Retourne la liste des abscisses""" - return self.Valeurs()[0] - - def Ordo(self): - """Retourne la liste des ordonnées""" - return self.Valeurs()[1] - - def __call__(self, val, tol=1.e-6): - """Evaluate a function at 'val'. If provided, 'tol' is a relative - tolerance to match an abscissa value.""" - # Pour EFICAS : substitution de l'instance de classe - # parametre par sa valeur - if isinstance(val, ASSD): - val=val.valeur - __ff=self.convert() - return __ff(val, tol=tol) - - -class fonction_c(fonction_class): - - def convert(self,arg='real'): - """ - Retourne un objet de la classe t_fonction ou t_fonction_c, - représentation python de la fonction complexe - """ - import numpy - from Cata_Utils.t_fonction import t_fonction, t_fonction_c - class_fonction = t_fonction - if arg == 'complex': - class_fonction = t_fonction_c - absc = self.Absc() - para = self.Parametres() - if arg == 'real': - ordo = self.Ordo() - elif arg == 'imag': - ordo = self.OrdoImg() - elif arg == 'modul': - ordo = numpy.sqrt(numpy.array(self.Ordo())**2 + numpy.array(self.OrdoImg())**2) - elif arg == 'phase': - ordo = numpy.arctan2(numpy.array(self.OrdoImg()), numpy.array(self.Ordo())) * 180. / pi - elif arg == 'complex': - ordo = map(complex,self.Ordo(),self.OrdoImg()) - else: - assert False, 'unexpected value for arg: %r' % arg - return class_fonction(self.Absc(), ordo, self.Parametres(), nom=self.nom) - - def Valeurs(self) : - """ - Retourne trois listes de valeurs : abscisses, parties reelles et imaginaires. - """ - from Utilitai.Utmess import UTMESS - if self.accessible(): - vale = '%-19s.VALE' % self.getName() - lbl = self.sdj.VALE.get() - if lbl == None: - UTMESS('F', 'SDVERI_2', valk=[vale]) - lbl = list(lbl) - dim=len(lbl)/3 - lx=lbl[0:dim] - lr=[] - li=[] - for i in range(dim): - lr.append(lbl[dim+2*i]) - li.append(lbl[dim+2*i+1]) - elif hasattr(self, 'etape') and self.etape.nom == 'DEFI_FONCTION' \ - and self.etape['VALE_C'] is not None: - lbl=list(self.etape['VALE_C']) - dim=len(lbl) - lx=[lbl[i] for i in range(0,dim,3)] - lr=[lbl[i] for i in range(1,dim,3)] - li=[lbl[i] for i in range(2,dim,3)] - else: - raise Accas.AsException("Erreur (fonction_c.Valeurs) : ne fonctionne en " \ - "PAR_LOT='OUI' que sur des fonctions produites par DEFI_FONCTION " \ - "dans le jdc courant.") - return [lx, lr, li] - - def Absc(self): - """Retourne la liste des abscisses""" - return self.Valeurs()[0] - - def Ordo(self): - """Retourne la liste des parties réelles des ordonnées""" - return self.Valeurs()[1] - - def OrdoImg(self): - """Retourne la liste des parties imaginaires des ordonnées""" - return self.Valeurs()[2] - - def Trace(self,FORMAT='TABLEAU',**kargs): - """Tracé d'une fonction complexe""" - if not self.accessible(): - raise Accas.AsException("Erreur dans fonction_c.Trace en PAR_LOT='OUI'") - from Utilitai.Graph import Graph - para = self.Parametres() - gr=Graph() - gr.AjoutCourbe(Val=self.Valeurs(), - Lab=[para['NOM_PARA'], '%s_R' % para['NOM_RESU'], '%s_I' % para['NOM_RESU']], - Leg=os.linesep.join(self.sdj.TITR.get()) ) - gr.Trace(FORMAT=FORMAT,**kargs) - - def __call__(self, val, tol=1.e-6): - """Evaluate a function at 'val'. If provided, 'tol' is a relative - tolerance to match an abscissa value.""" - # Pour EFICAS : substitution de l'instance de classe - # parametre par sa valeur - if isinstance(val, ASSD): - val=val.valeur - __ff=self.convert(arg='complex') - return __ff(val, tol=tol) - - -class nappe_sdaster(fonction_class): - - def convert(self): - """ - Retourne un objet de la classe t_nappe, représentation python de la nappe - """ - from Cata_Utils.t_fonction import t_fonction, t_nappe - para = self.Parametres() - vale = self.Valeurs() - l_fonc = [] - i = 0 - for pf in para[1] : - para_f = {'INTERPOL' : pf['INTERPOL_FONC'], - 'PROL_DROITE' : pf['PROL_DROITE_FONC'], - 'PROL_GAUCHE' : pf['PROL_GAUCHE_FONC'], - 'NOM_PARA' : para[0]['NOM_PARA_FONC'], - 'NOM_RESU' : para[0]['NOM_RESU'], - } - l_fonc.append(t_fonction(vale[1][i][0],vale[1][i][1],para_f)) - i += 1 - return t_nappe(vale[0], l_fonc, para[0], nom=self.nom) - - def Valeurs(self): - """ - Retourne la liste des valeurs du parametre, - et une liste de couples (abscisses,ordonnees) de chaque fonction. - """ - from Utilitai.Utmess import UTMESS - if not self.accessible(): - raise Accas.AsException("Erreur dans nappe.Valeurs en PAR_LOT='OUI'") - nsd = '%-19s' % self.getName() - dicv=aster.getcolljev(nsd+'.VALE') - # les cles de dicv sont 1,...,N (indice du parametre) - lpar=aster.getvectjev(nsd+'.PARA') - if lpar == None: - UTMESS('F', 'SDVERI_2', valk=[nsd+'.PARA']) - lval=[] - for k in range(len(dicv)): - lbl=dicv[k+1] - dim=len(lbl)/2 - lval.append([lbl[0:dim],lbl[dim:2*dim]]) - return [list(lpar),lval] - - def Parametres(self): - """ - Retourne un dictionnaire contenant les parametres de la nappe, - le type jeveux (NAPPE) n'est pas retourne, - le dictionnaire peut ainsi etre fourni a CALC_FONC_INTERP tel quel, - et une liste de dictionnaire des parametres de chaque fonction. - """ - from Utilitai.Utmess import UTMESS - if not self.accessible(): - raise Accas.AsException("Erreur dans nappe.Parametres en PAR_LOT='OUI'") - TypeProl={'E':'EXCLU', 'L':'LINEAIRE', 'C':'CONSTANT' } - objev = '%-19s.PROL' % self.getName() - prol=aster.getvectjev(objev) - if prol == None: - UTMESS('F', 'SDVERI_2', valk=[objev]) - dico={ - 'INTERPOL' : [prol[1][0:3],prol[1][4:7]], - 'NOM_PARA' : prol[2][0:16].strip(), - 'NOM_RESU' : prol[3][0:16].strip(), - 'PROL_DROITE' : TypeProl[prol[4][1]], - 'PROL_GAUCHE' : TypeProl[prol[4][0]], - 'NOM_PARA_FONC' : prol[6][0:4].strip(), - } - lparf=[] - nbf=(len(prol)-7)/2 - for i in range(nbf): - dicf={ - 'INTERPOL_FONC' : [prol[7+i*2][0:3],prol[7+i*2][4:7]], - 'PROL_DROITE_FONC' : TypeProl[prol[8+i*2][1]], - 'PROL_GAUCHE_FONC' : TypeProl[prol[8+i*2][0]], - } - lparf.append(dicf) - return [dico,lparf] - - def Absc(self): - """Retourne la liste des abscisses""" - return self.Valeurs()[0] - - def Trace(self,FORMAT='TABLEAU',**kargs): - """Tracé d'une nappe""" - if not self.accessible(): - raise Accas.AsException("Erreur dans nappe.Trace en PAR_LOT='OUI'") - from Utilitai.Graph import Graph - gr=Graph() - lv=self.Valeurs()[1] - dp=self.Parametres()[0] - for lx,ly in lv: - gr.AjoutCourbe(Val=[lx,ly], Lab=[dp['NOM_PARA_FONC'],dp['NOM_RESU']], - Leg=os.linesep.join(self.sdj.TITR.get()) ) - gr.Trace(FORMAT=FORMAT,**kargs) - - def __call__(self, val1, val2, tol=1.e-6): - """Evaluate a function at 'val'. If provided, 'tol' is a relative - tolerance to match an abscissa value.""" - # Pour EFICAS : substitution de l'instance de classe - # parametre par sa valeur - if isinstance(val1, ASSD): - val1=val1.valeur - if isinstance(val2, ASSD): - val2=val2.valeur - __ff=self.convert() - return __ff(val1, val2, tol=tol) - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2011 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: mathieu.courtois at edf.fr - - -class fond_fiss(ASSD): - cata_sdj = "SD.sd_fond_fiss.sd_fond_fiss" - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2011 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: mathieu.courtois at edf.fr - - -class gfibre_sdaster(ASSD): - cata_sdj = "SD.sd_gfibre.sd_gfibre" - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2011 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: mathieu.courtois at edf.fr - - -class interf_dyna_clas(ASSD): - cata_sdj = "SD.sd_interf_dyna_clas.sd_interf_dyna_clas" - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2012 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: harinaivo.andriambololona at edf.fr - - -class interspectre(ASSD): - cata_sdj = "SD.sd_interspectre.sd_interspectre" - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2011 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: mathieu.courtois at edf.fr - - -class list_inst(ASSD): - cata_sdj = "SD.sd_list_inst.sd_list_inst" - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2011 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: mathieu.courtois at edf.fr - - -class listis_sdaster(ASSD): - cata_sdj = "SD.sd_listis.sd_listis" - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2011 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: mathieu.courtois at edf.fr - - -class listr8_sdaster(ASSD): - cata_sdj = "SD.sd_listr8.sd_listr8" - - def Valeurs(self) : - """ - Retourne la liste des valeurs : [val1, ..., valN] - """ - if not self.accessible(): - raise Accas.AsException("Erreur dans listr8.Valeurs en PAR_LOT='OUI'") - from Utilitai.Utmess import UTMESS - t_vale = self.sdj.VALE.get() - if t_vale == None: - UTMESS('F', 'SDVERI_2', valk=[vale]) - return list(t_vale) - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2011 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: mathieu.courtois at edf.fr - -def VALE_triang2array(vect_VALE, dim, dtype=None): - """Conversion (par recopie) de l'objet .VALE decrivant une matrice pleine - par sa triangulaire sup en numpy.array plein. - """ - import numpy - triang_sup = numpy.array(vect_VALE) - assert dim*(dim+1)/2 == len(triang_sup), \ - 'Matrice non pleine : %d*(%d+1)/2 != %d' % (dim, dim, len(triang_sup)) - - valeur = numpy.zeros([dim, dim], dtype=dtype) - for i in range(1, dim+1): - for j in range(1, i+1): - k = i*(i-1)/2 + j - valeur[j-1, i-1]=triang_sup[k-1] - valeur = valeur + numpy.transpose(valeur) - for i in range(dim): - valeur[i, i] = 0.5 * valeur[i, i] - return valeur - -class macr_elem_dyna(ASSD): - cata_sdj = "SD.sd_macr_elem_dyna.sd_macr_elem_dyna" - - def EXTR_MATR_GENE(self,typmat) : - """ retourne les valeurs des matrices generalisees reelles - dans un format numpy - typmat='MASS_GENE' pour obtenir la matrice de masse generalisee - typmat='RIGI_GENE' pour obtenir la matrice de raideur generalisee - typmat='AMOR_GENE' pour obtenir la matrice d'amortissement generalisee - Attributs retourne - - self.valeurs : numpy.array contenant les valeurs """ - import numpy - if not self.accessible(): - raise Accas.AsException("Erreur dans macr_elem_dyna.EXTR_MATR_GENE en PAR_LOT='OUI'") - - if (typmat=='MASS_GENE') : - macr_elem = self.sdj.MAEL_MASS - elif (typmat=='RIGI_GENE') : - macr_elem = self.sdj.MAEL_RAID - elif (typmat=='AMOR_GENE') : - macr_elem = self.sdj.MAEL_AMOR - else: - raise Accas.AsException("Le type de la matrice est incorrect") - - desc=numpy.array(macr_elem.DESC.get()) - # On teste si le DESC du vecteur existe - if (desc==None): - raise Accas.AsException("L'objet matrice n'existe pas ou est mal cree par Code Aster") - - matrice = VALE_triang2array(macr_elem.VALE.get(), desc[1]) - return matrice - - def RECU_MATR_GENE(self,typmat,matrice) : - """ envoie les valeurs d'un tableau numpy dans des matrices generalisees - reelles definies dans jeveux - typmat='MASS_GENE' pour obtenir la matrice de masse generalisee - typmat='RIGI_GENE' pour obtenir la matrice de raideur generalisee - typmat='AMOR_GENE' pour obtenir la matrice d'amortissement generalisee - Attributs ne retourne rien """ - import numpy - if not self.accessible(): - raise Accas.AsException("Erreur dans macr_elem_dyna.RECU_MATR_GENE en PAR_LOT='OUI'") - - nommacr=self.getName() - if (typmat=='MASS_GENE') : - macr_elem = self.sdj.MAEL_MASS - elif (typmat=='RIGI_GENE') : - macr_elem = self.sdj.MAEL_RAID - elif (typmat=='AMOR_GENE') : - macr_elem = self.sdj.MAEL_AMOR - else: - raise Accas.AsException("Le type de la matrice est incorrect") - nom_vale = macr_elem.VALE.nomj() - desc=numpy.array(macr_elem.DESC.get()) - - # On teste si le DESC de la matrice jeveux existe - if (desc==None): - raise Accas.AsException("L'objet matrice n'existe pas ou est mal cree par Code Aster") - numpy.asarray(matrice) - - # On teste si la matrice python est de dimension 2 - if (len(numpy.shape(matrice))<>2): - raise Accas.AsException("La dimension de la matrice est incorrecte") - - # On teste si les tailles de la matrice jeveux et python sont identiques - if (tuple([desc[1],desc[1]])<>numpy.shape(matrice)) : - raise Accas.AsException("La dimension de la matrice est incorrecte") - taille=desc[1]*desc[1]/2.0+desc[1]/2.0 - tmp=numpy.zeros([int(taille)]) - for j in range(desc[1]+1): - for i in range(j): - k=j*(j-1)/2+i - tmp[k]=matrice[j-1,i] - aster.putvectjev(nom_vale,len(tmp),tuple(( - range(1,len(tmp)+1))),tuple(tmp),tuple(tmp),1) - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2011 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: mathieu.courtois at edf.fr - - -class macr_elem_stat(ASSD): - cata_sdj = "SD.sd_macr_elem_stat.sd_macr_elem_stat" - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2013 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: mathieu.courtois at edf.fr - - -class maillage_sdaster(ASSD): - cata_sdj = "SD.sd_maillage.sd_maillage" - - def LIST_GROUP_NO(self) : - """ retourne la liste des groupes de noeuds sous la forme : - [ (gno1, nb noeuds gno1), ...] """ - if not self.accessible(): - raise Accas.AsException("Erreur dans maillage.LIST_GROUP_NO en PAR_LOT='OUI'") - dic_gpno = self.sdj.GROUPENO.get() - if dic_gpno is None: - return [] - return [(gpno.strip(),len(dic_gpno[gpno])) for gpno in dic_gpno] - - def LIST_GROUP_MA(self) : - """ retourne la liste des groupes de mailles sous la forme : - [ (gma1, nb mailles gma1, dime max des mailles gma1), ...] """ - if not self.accessible(): - raise Accas.AsException("Erreur dans maillage.LIST_GROUP_MA en PAR_LOT='OUI'") - ltyma = aster.getvectjev("&CATA.TM.NOMTM") - catama = aster.getcolljev("&CATA.TM.TMDIM") - dic_gpma = self.sdj.GROUPEMA.get() - if dic_gpma is None: - return [] - dimama = [catama[ltyma[ma-1].ljust(24)][0] for ma in self.sdj.TYPMAIL.get()] - ngpma = [] - for grp in dic_gpma.keys(): - dim = max([dimama[ma-1] for ma in dic_gpma[grp]]) - ngpma.append((grp.strip(), len(dic_gpma[grp]),dim)) - return ngpma - -class grille_sdaster(maillage_sdaster): - cata_sdj = "SD.sd_grille.sd_grille" - -class squelette(maillage_sdaster): - cata_sdj = "SD.sd_squelette.sd_squelette" - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2011 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: mathieu.courtois at edf.fr - - -class mater_sdaster(ASSD): - cata_sdj = "SD.sd_mater.sd_mater" - - def RCVALE(self, phenomene, nompar=(), valpar=(), nomres=(), stop=1): - """Appel à la routine fortran RCVALE pour récupérer les valeurs des - propriétés du matériau. - """ - if not self.accessible(): - raise Accas.AsException("Erreur dans mater.RCVALE en PAR_LOT='OUI'") - from Utilitai.Utmess import UTMESS - # vérification des arguments - if not type(nompar) in (list, tuple): - nompar = [nompar,] - if not type(valpar) in (list, tuple): - valpar = [valpar,] - if not type(nomres) in (list, tuple): - nomres = [nomres,] - nompar = tuple(nompar) - valpar = tuple(valpar) - nomres = tuple(nomres) - if len(nompar) != len(valpar): - vk1=', '.join(nompar) - vk2=', '.join([repr(v) for v in valpar]) - UTMESS('F','SDVERI_4',valk=[vk1,vk2]) - if len(nomres) < 1: - UTMESS('F', 'SDVERI_5') - # appel à l'interface Python/C - return aster.rcvale(self.nom, phenomene, nompar, valpar, nomres, stop) - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2011 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: mathieu.courtois at edf.fr - -class matr_asse(ASSD): - cata_sdj = "SD.sd_matr_asse.sd_matr_asse" - - def EXTR_MATR(self) : - """ retourne les valeurs de la matrice dans un format numpy - Attributs retourne - - self.valeurs : numpy.array contenant les valeurs """ - import numpy - from SD.sd_stoc_morse import sd_stoc_morse - - if not self.accessible(): - raise Accas.AsException("Erreur dans matr_asse.EXTR_MATR en PAR_LOT='OUI'") - - refa = numpy.array(self.sdj.REFA.get()) - ma=refa[0] - nu=refa[1] - smos = sd_stoc_morse(nu[:14]+'.SMOS') - - valm=self.sdj.VALM.get() - smhc=smos.SMHC.get() - smdi=smos.SMDI.get() - - sym=len(valm)==1 - dim=len(smdi) - nnz=smdi[dim-1] - - triang_sup = numpy.array(valm[1]) - if sym: - triang_inf = triang_sup - else: - triang_inf = numpy.array(valm[2]) - - if type(valm[1][0]) == type(1.j) : - dtype=complex - else : - dtype=float - valeur=numpy.zeros([dim, dim], dtype=dtype) - - jcol=1 - for kterm in range(1,nnz+1): - ilig=smhc[kterm-1] - if (smdi[jcol-1] < kterm): - jcol=jcol+1 - valeur[jcol-1,ilig-1]=triang_inf[kterm-1] - valeur[ilig-1,jcol-1]=triang_sup[kterm-1] - - return valeur - -class matr_asse_gd(matr_asse): - cata_sdj = "SD.sd_matr_asse.sd_matr_asse" - -class matr_asse_depl_c(matr_asse_gd): - pass - -class matr_asse_depl_r(matr_asse_gd): - pass - -class matr_asse_pres_c(matr_asse_gd): - pass - -class matr_asse_pres_r(matr_asse_gd): - pass - -class matr_asse_temp_c(matr_asse_gd): - pass - -class matr_asse_temp_r(matr_asse_gd): - pass - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2011 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: mathieu.courtois at edf.fr - -def VALM_triang2array(dict_VALM, dim, dtype=None): - """Conversion (par recopie) de l'objet .VALM decrivant une matrice pleine - par sa triangulaire inf (et parfois triang sup) en numpy.array plein. - """ - import numpy - # stockage symetrique ou non (triang inf+sup) - sym = len(dict_VALM) == 1 - triang_sup = numpy.array(dict_VALM[1]) - assert dim*(dim+1)/2 == len(triang_sup), \ - 'Matrice non pleine : %d*(%d+1)/2 != %d' % (dim, dim, len(triang_sup)) - if sym: - triang_inf = triang_sup - else: - triang_inf = numpy.array(dict_VALM[2]) - valeur=numpy.zeros([dim, dim], dtype=dtype) - for i in range(1, dim+1): - for j in range(1, i+1): - k = i*(i-1)/2 + j - valeur[i-1, j-1]=triang_inf[k-1] - valeur[j-1, i-1]=triang_sup[k-1] - return valeur - -def VALM_diag2array(dict_VALM, dim, dtype=None): - """Conversion (par recopie) de l'objet .VALM decrivant une matrice - diagonale en numpy.array plein. - """ - import numpy - diag = numpy.array(dict_VALM[1]) - assert dim == len(diag), 'Dimension incorrecte : %d != %d' % (dim, len(diag)) - valeur=numpy.zeros([dim, dim], dtype=dtype) - for i in range(dim): - valeur[i,i] = diag[i] - return valeur - -class matr_asse_gene(ASSD): - cata_sdj = "SD.sd_matr_asse_gene.sd_matr_asse_gene" - -class matr_asse_gene_r(matr_asse_gene): - def EXTR_MATR_GENE(self) : - """ retourne les valeurs de la matrice generalisee reelle - dans un format numpyal Array - Attributs retourne - - self.valeurs : numpy.array contenant les valeurs """ - if not self.accessible(): - raise Accas.AsException("Erreur dans matr_asse_gene.EXTR_MATR_GENE en PAR_LOT='OUI'") - import numpy - - desc=numpy.array(self.sdj.DESC.get()) - # On teste si le DESC de la matrice existe - if (desc==None): - raise Accas.AsException("L'objet matrice n'existe pas ou est mal cree par Code Aster") - # Si le stockage est plein - if desc[2]==2 : - valeur = VALM_triang2array(self.sdj.VALM.get(), desc[1]) - - # Si le stockage est diagonal - elif desc[2]==1 : - valeur = VALM_diag2array(self.sdj.VALM.get(), desc[1]) - - # Sinon on arrete tout - else: - raise KeyError - return valeur - - def RECU_MATR_GENE(self,matrice) : - """ envoie les valeurs d'un tableau numpy dans des matrices - generalisees reelles definies dans jeveux - Attributs ne retourne rien """ - import numpy - if not self.accessible(): - raise Accas.AsException("Erreur dans matr_asse_gene.RECU_MATR_GENE en PAR_LOT='OUI'") - - ncham=self.getName() - desc=numpy.array(self.sdj.DESC.get()) - - # On teste si le DESC de la matrice existe - if (desc==None): - raise Accas.AsException("L'objet matrice n'existe pas ou est mal cree par Code Aster") - numpy.asarray(matrice) - - # On teste si la dimension de la matrice python est 2 - if (len(numpy.shape(matrice))<>2) : - raise Accas.AsException("La dimension de la matrice est incorrecte ") - - # On teste si les tailles des matrices jeveux et python sont identiques - if (tuple([desc[1],desc[1]])<>numpy.shape(matrice)) : - raise Accas.AsException("La taille de la matrice est incorrecte ") - - # Si le stockage est plein - if desc[2]==2 : - taille=desc[1]*desc[1]/2.0+desc[1]/2.0 - tmp=numpy.zeros([int(taille)]) - for j in range(desc[1]+1): - for i in range(j): - k=j*(j-1)/2+i - tmp[k]=matrice[j-1,i] - aster.putcolljev('%-19s.VALM' % ncham,len(tmp),tuple((\ - range(1,len(tmp)+1))),tuple(tmp),tuple(tmp),1) - # Si le stockage est diagonal - elif desc[2]==1 : - tmp=numpy.zeros(desc[1]) - for j in range(desc[1]): - tmp[j]=matrice[j,j] - aster.putcolljev('%-19s.VALM' % ncham,len(tmp),tuple((\ - range(1,len(tmp)+1))),tuple(tmp),tuple(tmp),1) - # Sinon on arrete tout - else: - raise KeyError - return - -class matr_asse_gene_c(matr_asse_gene): - def EXTR_MATR_GENE(self) : - """ retourne les valeurs de la matrice generalisee complexe - dans un format numpy - Attributs retourne - - self.valeurs : numpy.array contenant les valeurs """ - import numpy - if not self.accessible(): - raise Accas.AsException("Erreur dans matr_asse_gene_c.EXTR_MATR_GENE en PAR_LOT='OUI'") - - desc = numpy.array(self.sdj.DESC.get()) - if desc == None: - raise Accas.AsException("L'objet matrice n'existe pas ou est mal cree par Code Aster ") - # Si le stockage est plein - if desc[2] == 2 : - valeur = VALM_triang2array(self.sdj.VALM.get(), desc[1], complex) - - # Si le stockage est diagonal - elif desc[2]==1 : - valeur = VALM_diag2array(self.sdj.VALM.get(), desc[1], complex) - - # Sinon on arrete tout - else: - raise KeyError - return valeur - - def RECU_MATR_GENE(self,matrice) : - """ envoie les valeurs d'un tableau numpy dans des matrices - generalisees reelles definies dans jeveux - Attributs ne retourne rien """ - import numpy - if not self.accessible(): - raise Accas.AsException("Erreur dans matr_asse_gene_c.RECU_MATR_GENE en PAR_LOT='OUI'") - - numpy.asarray(matrice) - ncham=self.getName() - desc=numpy.array(self.sdj.DESC.get()) - - # On teste si le DESC de la matrice existe - if (desc==None): - raise Accas.AsException("L'objet matrice n'existe pas ou est mal cree par Code Aster") - numpy.asarray(matrice) - - # On teste si la dimension de la matrice python est 2 - if (len(numpy.shape(matrice))<>2) : - raise Accas.AsException("La dimension de la matrice est incorrecte ") - - # On teste si la taille de la matrice jeveux et python est identique - if (tuple([desc[1],desc[1]])<>numpy.shape(matrice)) : - raise Accas.AsException("La taille de la matrice est incorrecte ") - - # Si le stockage est plein - if desc[2]==2 : - taille=desc[1]*desc[1]/2.0+desc[1]/2.0 - tmpr=numpy.zeros([int(taille)]) - tmpc=numpy.zeros([int(taille)]) - for j in range(desc[1]+1): - for i in range(j): - k=j*(j-1)/2+i - tmpr[k]=matrice[j-1,i].real - tmpc[k]=matrice[j-1,i].imag - aster.putvectjev('%-19s.VALM' % ncham, len(tmpr), tuple((\ - range(1,len(tmpr)+1))),tuple(tmpr),tuple(tmpc),1) - # Si le stockage est diagonal - elif desc[2]==1 : - tmpr=numpy.zeros(desc[1]) - tmpc=numpy.zeros(desc[1]) - for j in range(desc[1]): - tmpr[j]=matrice[j,j].real - tmpc[j]=matrice[j,j].imag - aster.putvectjev('%-19s.VALM' % ncham,len(tmpr),tuple((\ - range(1,len(tmpr)+1))),tuple(tmpr),tuple(tmpc),1) - # Sinon on arrete tout - else: - raise KeyError - return - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2011 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: mathieu.courtois at edf.fr - - -class matr_elem(ASSD): - cata_sdj = "SD.sd_matr_elem.sd_matr_elem" - -class matr_elem_depl_c(matr_elem): - pass - -class matr_elem_depl_r(matr_elem): - pass - -class matr_elem_pres_c(matr_elem): - pass - -class matr_elem_temp_r(matr_elem): - pass - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2011 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: mathieu.courtois at edf.fr - - -class melasflu_sdaster(ASSD): - cata_sdj = "SD.sd_melasflu.sd_melasflu" - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2011 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: mathieu.courtois at edf.fr - - -class mode_cycl(ASSD): - cata_sdj = "SD.sd_mode_cycl.sd_mode_cycl" - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2011 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: mathieu.courtois at edf.fr - - -class modele_gene(ASSD): - cata_sdj = "SD.sd_modele_gene.sd_modele_gene" - - def LIST_SOUS_STRUCT(self) : - """ retourne la liste des sous structures du modele generalise - la liste des macro-elements sous-jacents""" - if not self.accessible(): - raise Accas.AsException("Erreur dans modele_gene.LIST_SOUS_STRUCT en PAR_LOT='OUI'") - nommodgen=self.getName() - ncham=nommodgen+(8-len(nommodgen))*' ' - ssno=aster.getvectjev(ncham+(14-len(ncham))*' '+'.MODG.SSNO') - ssme=aster.getcolljev(ncham+(14-len(ncham))*' '+'.MODG.SSME') - return [([ssno[ind], ssme[ind+1]]) for ind in range(len(ssno))] - - def LIST_LIAIS_STRUCT(self) : - """ retourne la liste des liaisons entre sous structures du modele generalise sous la forme : - [ (ss1, nom_liais1, ss2 , nom_liais2), ...] """ - if not self.accessible() : - raise Accas.AsException("Erreur dans modele_gene.LIST_LIAIS_STRUCT en PAR_LOT='OUI'") - nommodgen=self.getName() - ncham=nommodgen+(8-len(nommodgen))*' ' - lidf=aster.getcolljev(ncham+(14-len(ncham))*' '+'.MODG.LIDF') - return [([(lidf[ind][indb]) for indb in range(4)]) for ind in lidf] - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2011 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: mathieu.courtois at edf.fr - - -class modele_sdaster(ASSD): - cata_sdj = "SD.sd_modele.sd_modele" - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2011 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: mathieu.courtois at edf.fr - - -class nume_ddl_gene(ASSD): - cata_sdj = "SD.sd_nume_ddl.sd_nume_ddl" - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2011 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: mathieu.courtois at edf.fr - - -class nume_ddl_sdaster(ASSD): - cata_sdj = "SD.sd_nume_ddl.sd_nume_ddl" - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2013 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: mathieu.courtois at edf.fr - -class reel(ASSD): - cata_sdj = "SD.AsBase" - - def __init__(self, valeur=None, **args): - ASSD.__init__(self, **args) - self.valeur = valeur - - def __call__(self): - return self.valeur - - def __adapt__(self, validator): - if validator.name == "list": - # validateur liste,cardinalité - return (self, ) - elif validator.name == "type": - # validateur type - return validator.adapt(self.valeur or 0.) - else: - # validateur into et valid - return self - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2012 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: mathieu.courtois at edf.fr - - -class resultat_sdaster(ASSD): - cata_sdj = "SD.sd_resultat.sd_resultat" - - def LIST_CHAMPS (self) : - if not self.accessible(): - raise Accas.AsException("Erreur dans resultat.LIST_CHAMPS en PAR_LOT='OUI'") - return aster.GetResu(self.getName(), "CHAMPS") - - def LIST_NOM_CMP (self) : - if not self.accessible(): - raise Accas.AsException("Erreur dans resultat.LIST_NOM_CMP en PAR_LOT='OUI'") - return aster.GetResu(self.getName(), "COMPOSANTES") - - def LIST_VARI_ACCES (self) : - if not self.accessible(): - raise Accas.AsException("Erreur dans resultat.LIST_VARI_ACCES en PAR_LOT='OUI'") - return aster.GetResu(self.getName(), "VARI_ACCES") - - def LIST_PARA (self) : - if not self.accessible(): - raise Accas.AsException("Erreur dans resultat.LIST_PARA en PAR_LOT='OUI'") - return aster.GetResu(self.getName(), "PARAMETRES") - -class resultat_jeveux(resultat_sdaster): - """Classe permettant d'accéder à un resultat jeveux qui n'a pas d'ASSD associée, - c'est le cas des concepts résultats (table, evol_xxxx) dérivés.""" - def __init__(self, nom_jeveux): - resultat_sdaster.__init__(self) - self.setName(nom_jeveux) - -class comb_fourier(resultat_sdaster): pass -class fourier_elas(resultat_sdaster): pass -class fourier_ther(resultat_sdaster): pass -class mult_elas(resultat_sdaster): pass -class theta_geom(resultat_sdaster): pass - -# resultat_sdaster/evol_sdaster : -class evol_sdaster(resultat_sdaster): pass -class evol_char(evol_sdaster): pass -class evol_elas(evol_sdaster): pass -class evol_noli(evol_sdaster): pass -class evol_ther(evol_sdaster): pass -class evol_varc(evol_sdaster): pass - - - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2012 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: hassan.berro at edf.fr - -class dyna_gene(ASSD): - cata_sdj = "SD.sd_dyna_gene.sd_dyna_gene" - -class dyna_phys(resultat_sdaster): - cata_sdj="SD.sd_dyna_phys.sd_dyna_phys" - -# Concepts généralisés -class harm_gene (dyna_gene) : pass -class tran_gene (dyna_gene) : pass - -# Concepts physiques -class acou_harmo (dyna_phys) : pass -class dyna_harmo (dyna_phys) : pass -class dyna_trans (dyna_phys) : pass -class mode_acou (dyna_phys) : pass -class mode_flamb (dyna_phys) : pass -class mode_meca (dyna_phys) : pass -class mode_meca_c(mode_meca) : pass - -# TODO : convertir mode_gene en format généralisé -class mode_gene (dyna_phys) : pass -# ====================================================================== -# COPYRIGHT (C) 1991 - 2011 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: mathieu.courtois at edf.fr - - -class sd_partit(ASSD): - cata_sdj = "SD.sd_partition.sd_partit" - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2011 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: mathieu.courtois at edf.fr - - -class spectre_sdaster(ASSD): - cata_sdj = "SD.sd_spectre.sd_spectre" - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2011 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: mathieu.courtois at edf.fr - - -class surface_sdaster(ASSD): - cata_sdj = "SD.sd_surface.sd_surface" - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2011 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: mathieu.courtois at edf.fr - - -class table_sdaster(ASSD): - cata_sdj = "SD.sd_table.sd_table" - - def __getitem__(self, key): - """Retourne la valeur d'une cellule de la table. - Exemple : TAB['INST', 1] retourne la 1ère valeur de la colonne 'INST'.""" - from Utilitai.Utmess import UTMESS - if not self.accessible(): - raise Accas.AsException("Erreur dans table.__getitem__ en PAR_LOT='OUI'") - assert len(key) == 2 - para, numlign = key - tabnom = self.sdj.TBLP.get() - try: - i = tabnom.index('%-24s' % para) - resu = aster.getvectjev(tabnom[i + 2]) - exist = aster.getvectjev(tabnom[i + 3]) - assert resu is not None - assert exist is not None - assert exist[numlign - 1] != 0 - res = resu[numlign - 1] - except (IndexError, AssertionError): - # pour __getitem__, il est plus logique de retourner KeyError. - raise KeyError - return res - - def TITRE(self): - """Retourne le titre d'une table Aster - (Utile pour récupérer le titre et uniquement le titre d'une table dont - on souhaite manipuler la dérivée). - """ - if not self.accessible(): - raise Accas.AsException("Erreur dans table.TITRE en PAR_LOT='OUI'") - #titj = aster.getvectjev('%-19s.TITR' % self.getName()) - titj = self.sdj.TITR.get() - if titj != None: - titr = '\n'.join(titj) - else: - titr = '' - return titr - - def EXTR_TABLE(self, para=None) : - """Produit un objet Table à partir du contenu d'une table Aster. - On peut limiter aux paramètres listés dans 'para'. - """ - def Nonefy(l1,l2) : - if l2 == 0: - return None - else: - return l1 - if not self.accessible(): - raise Accas.AsException("Erreur dans table.EXTR_TABLE en PAR_LOT='OUI'") - from Utilitai.Table import Table - # titre - titr = self.TITRE() - # récupération des paramètres - #v_tblp = aster.getvectjev('%-19s.TBLP' % self.getName()) - v_tblp = self.sdj.TBLP.get() - if v_tblp == None: - # retourne une table vide - return Table(titr=titr, nom=self.nom) - tabnom=list(v_tblp) - nparam=len(tabnom)/4 - lparam=[tabnom[4*i:4*i+4] for i in range(nparam)] - # restriction aux paramètres demandés - if para is not None: - if type(para) not in (list, tuple): - para = [para, ] - para = [p.strip() for p in para] - restr = [] - for ip in lparam: - if ip[0].strip() in para: - restr.append(ip) - lparam = restr - dval={} - # liste des paramètres et des types - lpar=[] - ltyp=[] - for i in lparam : - value=list(aster.getvectjev(i[2])) - exist=aster.getvectjev(i[3]) - dval[i[0].strip()] = map(Nonefy, value, exist) - lpar.append(i[0].strip()) - ltyp.append(i[1].strip()) - n=len(dval[lpar[0]]) - # contenu : liste de dict - lisdic=[] - for i in range(n) : - d={} - for p in lpar: - d[p]=dval[p][i] - lisdic.append(d) - return Table(lisdic, lpar, ltyp, titr, self.nom) - -class table_fonction(table_sdaster): - """Table contenant en plus une colonne FONCTION et/ou FONCTION_C dont les - valeurs des cellules sont des noms de fonction_sdaster ou fonction_c.""" - -class table_jeveux(table_sdaster): - """Classe permettant d'accéder à une table jeveux qui n'a pas d'ASSD associée, - c'est le cas des concepts résultats (table, evol_xxxx) dérivés.""" - def __init__(self, nom_jeveux): - table_sdaster.__init__(self) - self.setName(nom_jeveux) - -class table_fonction(table_sdaster): - """Table contenant une colonne FONCTION et/ou FONCTION_C dont les - valeurs des cellules sont des noms de fonction_sdaster ou - fonction_c.""" - cata_sdj = "SD.sd_table_fonction.sd_table_fonction" - -class table_container(table_sdaster): - """Table contenant les colonnes NOM_OBJET, TYPE_OBJET et NOM_SD.""" - cata_sdj = "SD.sd_table_container.sd_table_container" - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2011 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: mathieu.courtois at edf.fr - - -class type_flui_stru(ASSD): - cata_sdj = "SD.sd_type_flui_stru.sd_type_flui_stru" - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2011 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: mathieu.courtois at edf.fr - - -class vect_asse_gene(ASSD): - cata_sdj = "SD.sd_cham_gene.sd_cham_gene" - - def EXTR_VECT_GENE_R(self) : - """ retourne les valeurs du vecteur generalisee - dans un format numpy - Attributs retourne - - self.valeurs : numpy.array contenant les valeurs """ - import numpy - if not self.accessible(): - raise Accas.AsException("Erreur dans vect_asse_gene_r.EXTR_VECT_GENE en PAR_LOT='OUI'") - #ncham=self.getName() - #ncham=ncham+(8-len(ncham))*' ' - #valeur=numpy.array(aster.getvectjev(ncham+(19-len(ncham))*' '+'.VALE')) - valeur = numpy.array(self.sdj.VALE.get()) - return valeur - - def RECU_VECT_GENE_R(self, vecteur) : - """ envoie les valeurs d'un tableau numpy dans un vecteur generalise - reel definie dans jeveux - Attributs ne retourne rien """ - if not self.accessible(): - raise Accas.AsException("Erreur dans vect_asse_gene_r.RECU_VECT_GENE en PAR_LOT='OUI'") - import numpy - numpy.asarray(vecteur) - ncham=self.getName() - ncham=ncham+(8-len(ncham))*' ' - #desc=numpy.array(aster.getvectjev(ncham+(19-len(ncham))*' '+'.DESC')) - desc = numpy.array(self.sdj.DESC.get()) - # On teste si le DESC du vecteur existe - if (desc==None): - raise Accas.AsException("L'objet vecteur n'existe pas ou \ - est mal cree par Code Aster") - # On teste si la taille du vecteur jeveux et python est identique - if desc[1] != numpy.shape(vecteur)[0] : - raise Accas.AsException("La taille du vecteur python est incorrecte") - aster.putvectjev(ncham+(19-len(ncham))*' '+'.VALE', - len(vecteur), - tuple(range(1, len(vecteur)+1)), - tuple(vecteur), - tuple(vecteur), - 1) - return - - def EXTR_VECT_GENE_C(self) : - """ retourne les valeurs du vecteur generalisee - dans un format numpy - Attributs retourne - - self.valeurs : numpy.array contenant les valeurs """ - import numpy - if not self.accessible(): - raise Accas.AsException("Erreur dans vect_asse_gene_c.EXTR_VECT_GENE en PAR_LOT='OUI'") - - #ncham=self.getName() - #ncham=ncham+(8-len(ncham))*' ' - #valeur=numpy.array(aster.getvectjev(ncham+(19-len(ncham))*' '+'.VALE'), complex) - valeur=numpy.array(self.sdj.VALE.get(), complex) - - return valeur - - def RECU_VECT_GENE_C(self,vecteur) : - """ envoie les valeurs d'un tableau numpy dans un vecteur generalise - complexe definie dans jeveux - Attributs ne retourne rien """ - if not self.accessible(): - raise Accas.AsException("Erreur dans vect_asse_gene_c.RECU_VECT_GENE en PAR_LOT='OUI'") - import numpy - numpy.asarray(vecteur) - ncham=self.getName() - ncham=ncham+(8-len(ncham))*' ' - desc=numpy.array(aster.getvectjev(ncham+(19-len(ncham))*' '+'.DESC')) - # On teste si le DESC de la matrice existe - if (desc==None): - raise Accas.AsException("L'objet vecteur n'existe pas ou \ - est mal cree par Code Aster") - # On teste si la taille de la matrice jeveux et python est identique - if desc[1]<>numpy.shape(vecteur)[0] : - raise Accas.AsException("La taille du vecteur python est incorrecte") - tmpr=vecteur.real - tmpc=vecteur.imag - aster.putvectjev(ncham+(19-len(ncham))*' '+'.VALE', - len(tmpr), - tuple(range(1, len(tmpr)+1)), - tuple(tmpr), - tuple(tmpc), - 1) - return - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2011 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: mathieu.courtois at edf.fr - - -class vect_elem(ASSD): - cata_sdj = "SD.sd_vect_elem.sd_vect_elem" - -class vect_elem_depl_r(vect_elem): - pass - -class vect_elem_pres_r(vect_elem): - pass - -class vect_elem_pres_c(vect_elem): - pass - -class vect_elem_temp_r(vect_elem): - pass - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2013 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: mickael.abbas at edf.fr - -def C_AFFICHAGE() : return FACT(statut='f',max=1, - INFO_RESIDU = SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON")), - INFO_TEMPS = SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON")), - UNITE = SIMP(statut='f',typ='I',val_min=1), - PAS = SIMP(statut='f',typ='I',val_min=1), - ); - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2012 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: mickael.abbas at edf.fr -def C_ARCHIVAGE() : return FACT(statut='d',max=1, - regles = (EXCLUS('PAS_ARCH','LIST_INST','INST'),), - LIST_INST = SIMP(statut='f',typ=(listr8_sdaster) ), - INST = SIMP(statut='f',typ='R',validators=NoRepeat(),max='**' ), - PAS_ARCH = SIMP(statut='f',typ='I' ), - CRITERE = SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU") ), - b_prec_rela=BLOC(condition="(CRITERE=='RELATIF')", - PRECISION =SIMP(statut='f',typ='R',defaut= 1.E-6,),), - b_prec_abso=BLOC(condition="(CRITERE=='ABSOLU')", - PRECISION =SIMP(statut='o',typ='R',),), - CHAM_EXCLU = SIMP(statut='f',typ='TXM',validators=NoRepeat(),max='**',), -); - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2013 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: jean-michel.proix at edf.fr -def C_COMPORTEMENT(COMMAND=None) : #COMMUN# - - assert COMMAND in ('MACR_ASCOUF_CALC','MACR_ASPIC_CALC','CALC_G','POST_GP','CALC_ESSAI_GEOMECA','CALC_EUROPLEXUS', - 'CALC_POINT_MAT','SIMU_POINT_MAT', 'DYNA_NON_LINE','STAT_NON_LINE','CALCUL','CALC_FORC_NONL', - 'CALC_IFS_DNL','CALC_PRECONT','CREA_RESU','LIRE_RESU','MACR_ECREVISSE','TEST_COMPOR',None) - - if COMMAND !='CALC_EUROPLEXUS': - mcfact = FACT(statut='f',min=1,max='**', - - RELATION =SIMP( statut='o',typ='TXM',defaut="ELAS",into=C_RELATION(COMMAND)), - b_monox = BLOC(condition = "RELATION == 'MONOCRISTAL' ", - fr="SD issue de DEFI_COMPOR", - COMPOR =SIMP(statut='o',typ=compor_sdaster,max=1),), - b_polyx = BLOC(condition = "RELATION == 'POLYCRISTAL' ", - fr="SD issue de DEFI_COMPOR", - COMPOR =SIMP(statut='o',typ=compor_sdaster,max=1),), - b_zmat = BLOC(condition = "RELATION == 'ZMAT' ", - fr="Comportement de la bibliotheque Zmat", - NB_VARI =SIMP(statut='o',typ='I',max=1), - UNITE =SIMP(statut='o',typ='I',max=1),), - b_umat = BLOC(condition = "RELATION == 'UMAT' ", - fr="Comportement utilisateur de type UMAT", - NB_VARI =SIMP(statut='o',typ='I',max=1,fr="Nombre de variables internes"), - LIBRAIRIE = SIMP(statut='o', typ='TXM',validators=LongStr(1,128), - fr="Chemin vers la bibliothèque dynamique définissant le comportement UMAT"), - NOM_ROUTINE = SIMP(statut='o', typ='TXM', - fr="Nom de la routine UMAT dans la bibliothèque"),), - b_mfront = BLOC(condition = "RELATION == 'MFRONT' ", - fr="Comportement utilisateur de type MFRONT", - NB_VARI =SIMP(statut='o',typ='I',max=1,fr="Nombre de variables internes"), - LIBRAIRIE = SIMP(statut='o', typ='TXM',validators=LongStr(1,128), - fr="Chemin vers la bibliothèque dynamique définissant le comportement MFRONT"), - NOM_ROUTINE = SIMP(statut='o', typ='TXM', - fr="Nom de la routine MFRONT dans la bibliothèque"),), - -# KITs - b_kit_ddi = BLOC(condition = "RELATION == 'KIT_DDI' ", - fr="relations de couplage fluage-plasticite", - RELATION_KIT =SIMP(statut='o',typ='TXM',min=2,max=2,validators=NoRepeat(), - into=( - "VMIS_CINE_LINE", - "VMIS_ISOT_TRAC", - "VMIS_ISOT_LINE", - "VMIS_ISOT_PUIS", - "GLRC_DM", - "GRANGER_FP", - "GRANGER_FP_INDT", - "GRANGER_FP_V", - "BETON_UMLV_FP", - "ROUSS_PR", - "BETON_DOUBLE_DP", - "ENDO_ISOT_BETON", - "MAZARS" - ),), - ), - b_kit_cg= BLOC(condition = "RELATION == 'KIT_CG' ", - fr="relations pour elements cables gaines", - RELATION_KIT =SIMP(statut='o',typ='TXM',min=2,max=2,validators=NoRepeat(), - into=( - "CABLE_GAINE_FROT", - "VMIS_ISOT_LINE", - "VMIS_ISOT_TRAC", - "VMIS_CINE_LINE", - "PINTO_MENEGOTTO", - "ELAS", - "SANS" - ),), - ), - - b_kit_thm = BLOC(condition = "RELATION in ['KIT_HHM','KIT_HH','KIT_H','KIT_HM','KIT_THHM', \ - 'KIT_THH','KIT_THM','KIT_THV']", - fr="lois de comportements thermo-hydro-mecaniques", - RELATION_KIT =SIMP(statut='o',typ='TXM',max=9,validators=NoRepeat(), - into=( -# MECA - "ELAS", - "CJS", - "HUJEUX", - "CAM_CLAY", - "BARCELONE", - "LAIGLE", - "LETK", - "DRUCK_PRAGER", - "DRUCK_PRAG_N_A", - "VISC_DRUC_PRAG", - "ELAS_GONF", - "HOEK_BROWN_EFF", - "HOEK_BROWN_TOT", - "MAZARS", - "ENDO_ISOT_BETON", - "JOINT_BANDIS", - "CZM_LIN_REG", - "CZM_EXP_REG", -# THMC - "GAZ", - "LIQU_SATU", - "LIQU_GAZ_ATM", - "LIQU_VAPE_GAZ", - "LIQU_AD_GAZ_VAPE", - "LIQU_AD_GAZ", - "LIQU_VAPE", - "LIQU_GAZ", -# HYDR - "HYDR_UTIL", - "HYDR_VGM", - "HYDR_VGC", - "HYDR", - "HYDR_ENDO", - ),), - ), - b_kit_meta = BLOC(condition = "RELATION in ('META_LEMA_ANI','META_P_CL_PT_RE','META_P_CL_PT','META_P_CL_RE','META_P_CL',\ - 'META_P_IL_PT_RE','META_P_IL_PT','META_P_IL_RE','META_P_IL','META_P_INL_PT_RE','META_P_INL_PT','META_P_INL_RE','META_P_INL',\ - 'META_V_CL_PT_RE','META_V_CL_PT','META_V_CL_RE','META_V_CL','META_V_IL_PT_RE','META_V_IL_PT','META_V_IL_RE','META_V_IL',\ - 'META_V_INL_PT_RE','META_V_INL_PT','META_V_INL_RE','META_V_INL')", - fr="nombre de phases metallurgiques", - RELATION_KIT =SIMP(statut='o',typ='TXM',max=1,validators=NoRepeat(), - into=("ACIER","ZIRC"),), - ), - - DEFORMATION =SIMP(statut='f',typ='TXM',defaut="PETIT", - into=("PETIT","PETIT_REAC","GROT_GDEP","SIMO_MIEHE","GDEF_HYPO_ELAS","GDEF_LOG")), - - # gestion des contraintes planes par la méthode itérative - - RESI_CPLAN_MAXI =SIMP(statut='f',typ='R', - fr="Critère d'arret absolu pour assurer la condition de contraintes planes"), - - b_resi_cplan =BLOC(condition = " RESI_CPLAN_MAXI == None ", - - RESI_CPLAN_RELA =SIMP(statut='f',typ='R',defaut= 1.0E-6, - fr="Critère d'arret relatif pour assurer la condition de contraintes planes"), - ), - - ITER_CPLAN_MAXI =SIMP(statut='f',typ='I',defaut= 1, - fr="Nombre d'itérations maxi pour assurer la condition de contraintes planes"), - # - RESI_INTE_RELA =SIMP(statut='f',typ='R',defaut= 1.0E-6), - ITER_INTE_MAXI =SIMP(statut='f',typ='I',defaut= 20 ), - - b_redec_local = BLOC(condition = "DEFORMATION in ('PETIT','PETIT_REAC','GROT_GDEP')", - fr="Nombre de redécoupages internes du pas de temps", - ITER_INTE_PAS =SIMP(statut='f',typ='I',defaut= 0 ), - ), - - ALGO_INTE =SIMP(statut='f',typ='TXM',into=("ANALYTIQUE", "SECANTE", "DEKKER", "NEWTON_1D","BRENT", - "NEWTON", "NEWTON_RELI", "NEWTON_PERT", "RUNGE_KUTTA", - "SPECIFIQUE", "SANS_OBJET")), - - TYPE_MATR_TANG =SIMP(statut='f',typ='TXM',into=("PERTURBATION","VERIFICATION","TANGENTE_SECANTE")), - - b_perturb =BLOC(condition = " (TYPE_MATR_TANG != None) and (TYPE_MATR_TANG != 'TANGENTE_SECANTE') ", - fr="Calcul de la matrice tangente par perturbation, valeur de la perturbation", - VALE_PERT_RELA =SIMP(statut='f',typ='R',defaut= 1.0E-5), - ), - - b_tangsec = BLOC(condition = " TYPE_MATR_TANG == 'TANGENTE_SECANTE' ", - fr="Modification evolutive de la matrice tangente/secante", - SEUIL =SIMP(statut='f',typ='R',defaut= 3. ), - AMPLITUDE =SIMP(statut='f',typ='R',defaut= 1.5 ), - TAUX_RETOUR =SIMP(statut='f',typ='R',defaut= 0.05 ), - ), - - b_crirupt = BLOC(condition = - " RELATION in ('VMIS_ISOT_LINE','VMIS_ISOT_TRAC','VISCOCHAB','VISC_ISOT_LINE','VISC_ISOT_TRAC',)", - fr="Critere de rupture selon une contrainte critique", - POST_ITER =SIMP(statut='f',typ='TXM',into=("CRIT_RUPT",), ), - ), - - PARM_THETA =SIMP(statut='f',typ='R',val_min=0.,val_max=1., defaut= 1.), - PARM_ALPHA =SIMP(statut='f',typ='R',defaut= 1. ), - - b_radi =BLOC(condition = "TYPE_MATR_TANG == None", - RESI_RADI_RELA =SIMP(statut='f',typ='R', ), - ), - - regles=(PRESENT_ABSENT('TOUT','GROUP_MA','MAILLE'),), - TOUT =SIMP(statut='f',typ='TXM',into=("OUI",) ), - GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - MAILLE =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), - - ) - - else: - mcfact = FACT(statut='o',min=1,max='**', #COMMUN# - - RELATION = SIMP( statut='o',typ='TXM',defaut="ELAS",into=('ELAS','GLRC_DAMAGE')), - GROUP_MA = SIMP(statut='o',typ=grma,validators=NoRepeat(),max='**'), - ) - - - return mcfact - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2013 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: mickael.abbas at edf.fr -def C_CONVERGENCE() : return FACT(statut='d', - regles=(PRESENT_ABSENT('RESI_REFE_RELA','RESI_GLOB_MAXI','RESI_GLOB_RELA','RESI_COMP_RELA'),), - b_refe_rela =BLOC(condition = "RESI_REFE_RELA != None", - regles=(AU_MOINS_UN('SIGM_REFE','EPSI_REFE','FLUX_THER_REFE','FORC_REFE', - 'FLUX_HYD1_REFE','FLUX_HYD2_REFE','VARI_REFE','DEPL_REFE','LAGR_REFE'),), - FORC_REFE =SIMP(statut='f',typ='R',min=2,max=2, - fr="Force et Moment de référence pour les éléments de structure."), - SIGM_REFE =SIMP(statut='f',typ='R'), - DEPL_REFE =SIMP(statut='f',typ='R'), - EPSI_REFE =SIMP(statut='f',typ='R'), - FLUX_THER_REFE =SIMP(statut='f',typ='R'), - FLUX_HYD1_REFE =SIMP(statut='f',typ='R'), - FLUX_HYD2_REFE =SIMP(statut='f',typ='R'), - VARI_REFE =SIMP(statut='f',typ='R'), - LAGR_REFE =SIMP(statut='f',typ='R'), - ), - RESI_REFE_RELA =SIMP(statut='f',typ='R'), - RESI_GLOB_MAXI =SIMP(statut='f',typ='R'), - RESI_GLOB_RELA =SIMP(statut='f',typ='R'), - RESI_COMP_RELA =SIMP(statut='f',typ='R'), - ITER_GLOB_MAXI =SIMP(statut='f',typ='I',defaut=10), - ITER_GLOB_ELAS =SIMP(statut='f',typ='I',defaut=25), - ARRET =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON")), - ); - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2012 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: mickael.abbas at edf.fr -def C_INCREMENT(TYPE_CMD) : #COMMUN# -# - assert TYPE_CMD in ('THERMIQUE','MECANIQUE',) - kwargs = {} - statut_liste_inst = ' ' - -# La liste d'instants est facultative en thermique et obligatoire en mecanique - - if TYPE_CMD in ('THERMIQUE'): - statut_liste_inst = 'f' - elif TYPE_CMD in ('MECANIQUE'): - statut_liste_inst = 'o' - - kwargs['LIST_INST'] =SIMP(statut=statut_liste_inst,typ=(listr8_sdaster,list_inst)) - kwargs['NUME_INST_INIT'] =SIMP(statut='f',typ='I') - kwargs['INST_INIT'] =SIMP(statut='f',typ='R') - kwargs['NUME_INST_FIN'] =SIMP(statut='f',typ='I') - kwargs['INST_FIN'] =SIMP(statut='f',typ='R') - kwargs['PRECISION'] =SIMP(statut='f',typ='R',defaut=1.0E-6 ) - - mcfact = FACT(statut=statut_liste_inst,max='**', - regles=(EXCLUS('NUME_INST_INIT','INST_INIT'), - EXCLUS('NUME_INST_FIN','INST_FIN'),), - **kwargs) - - return mcfact - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2012 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: mickael.abbas at edf.fr -def C_NEWTON() : return FACT(statut='d', - REAC_INCR =SIMP(statut='f',typ='I',defaut= 1,val_min=0), - PREDICTION =SIMP(statut='f',typ='TXM',into=("DEPL_CALCULE","TANGENTE","ELASTIQUE","EXTRAPOLE") ), - MATRICE =SIMP(statut='f',typ='TXM',defaut="TANGENTE",into=("TANGENTE","ELASTIQUE") ), - PAS_MINI_ELAS =SIMP(statut='f',typ='R',val_min=0.0), - REAC_ITER =SIMP(statut='f',typ='I',defaut=0,val_min=0), - REAC_ITER_ELAS =SIMP(statut='f',typ='I',defaut=0,val_min=0), - EVOL_NOLI =SIMP(statut='f',typ=evol_noli), - ); - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2013 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: josselin.delmas at edf.fr - -class NOM_CHAM_INTO: #COMMUN# - """ - """ - def Tous(self): - """ Tous les champs - """ - self.all_phenomenes = ('CONTRAINTE', 'DEFORMATION', 'ENERGIE', 'CRITERES', - 'VARI_INTERNE', 'HYDRAULIQUE', 'THERMIQUE', - 'ACOUSTIQUE', 'FORCE', 'ERREUR', 'DEPLACEMENT', - 'METALLURGIE', 'AUTRES') - d = {} - d['CONTRAINTE'] = { - "EFGE_ELGA": ( ("lin", "nonlin",), - _(u"Efforts généralisés aux points de Gauss"), ), - "EFGE_ELNO": ( ("lin", "nonlin",), - _(u"Efforts généralisés aux noeuds par élément"), ), - "EFGE_NOEU": ( ("lin", "nonlin",), - _(u"Efforts généralisés aux noeuds"), ), - "SIEF_ELGA": ( ("lin",), - _(u"Contraintes et efforts aux points de Gauss"), ), - "SIEF_ELNO": ( ("lin", "nonlin",), - _(u"Contraintes et efforts aux noeuds par élément"), ), - "SIEF_NOEU": ( ("lin", "nonlin",), - _(u"Contraintes et efforts aux noeuds"), ), - "SIGM_ELGA": ( ("lin", "nonlin",), - _(u"Contraintes aux points de Gauss"), ), - "SIGM_ELNO": ( ("lin", "nonlin",), - _(u"Contraintes aux noeuds par élément"), ), - "SIGM_NOEU": ( ("lin", "nonlin",), - _(u"Contraintes aux noeuds"), ), - "SIPM_ELNO": ( ("lin","nonlin"), - _(u"Contraintes aux noeuds par élément pour les éléments de poutre"), ), - "SIPO_ELNO": ( ("lin", "nonlin",), - _(u"Contraintes aux noeuds par élément pour les éléments de poutre"), ), - "SIPO_NOEU": ( ("lin", "nonlin",), - _(u"Contraintes aux noeuds pour les éléments de poutre"), ), - "SIRO_ELEM": ( ("lin", "nonlin",), - _(u"Contraintes de rosette par élément"), ), - } - d['DEFORMATION'] = { - "DEGE_ELGA": ( ("lin", "nonlin",), - _(u"Déformations généralisées aux points de Gauss"), ), - "DEGE_ELNO": ( ("lin", "nonlin",), - _(u"Déformations généralisées aux noeuds par élément"), ), - "DEGE_NOEU": ( ("lin", "nonlin",), - _(u"Déformations généralisées aux noeuds"), ), - "EPFD_ELGA": ( ("nonlin",), - _(u"Déformations de fluage de déssication aux points de Gauss"), ), - "EPFD_ELNO": ( ("nonlin",), - _(u"Déformations de fluage de déssication aux noeuds par élément"), ), - "EPFD_NOEU": ( ("nonlin",), - _(u"Déformations de fluage de déssication aux noeuds"), ), - "EPFP_ELGA": ( ("nonlin",), - _(u"Déformations de fluage propre aux points de Gauss"), ), - "EPFP_ELNO": ( ("nonlin",), - _(u"Déformations de fluage propre aux noeuds par élément"), ), - "EPFP_NOEU": ( ("nonlin",), - _(u"Déformations de fluage propre aux noeuds"), ), - "EPME_ELGA": ( ("lin", "nonlin",), - _(u"Déformations mécaniques en petits déplacements aux points de Gauss"), ), - "EPME_ELNO": ( ("lin", "nonlin",), - _(u"Déformations mécaniques en petits déplacements aux noeuds par élément"), ), - "EPME_NOEU": ( ("lin", "nonlin",), - _(u"Déformations mécaniques en petits déplacements aux noeuds"), ), - "EPMG_ELGA": ( ("nonlin",), - _(u"Déformations mécaniques en grands déplacements aux points de Gauss"), ), - "EPMG_ELNO": ( ("nonlin",), - _(u"Déformations mécaniques en grands déplacements aux noeuds par élément"), ), - "EPMG_NOEU": ( ("nonlin",), - _(u"Déformations mécaniques en grands déplacements aux noeuds"), ), - "EPSG_ELGA": ( ("lin","nonlin",), - _(u"Déformations de Green-Lagrange aux points de Gauss"), ), - "EPSG_ELNO": ( ("lin","nonlin",), - _(u"Déformations de Green-Lagrange aux noeuds par élément"), ), - "EPSG_NOEU": ( ("lin","nonlin",), - _(u"Déformations de Green-Lagrange aux noeuds"), ), - "EPSI_ELGA": ( ("lin", "nonlin",), - _(u"Déformations aux points de Gauss"), ), - "EPSI_ELNO": ( ("lin", "nonlin",), - _(u"Déformations aux noeuds par élément"), ), - "EPSI_NOEU": ( ("lin", "nonlin",), - _(u"Déformations aux noeuds"), ), - "EPSP_ELGA": ( ("nonlin",), - _(u"Déformations anélastique aux points de Gauss"), ), - "EPSP_ELNO": ( ("nonlin",), - _(u"Déformations anélastique aux noeuds par élément"), ), - "EPSP_NOEU": ( ("nonlin",), - _(u"Déformations anélastique aux noeuds"), ), - "EPVC_ELGA": ( ("lin", "nonlin",), - _(u"Déformations dues aux variables de commande aux points de Gauss"), ), - "EPVC_ELNO": ( ("lin", "nonlin",), - _(u"Déformations dues aux variables de commande aux noeuds par élément"), ), - "EPVC_NOEU": ( ("lin", "nonlin",), - _(u"Déformations dues aux variables de commande aux noeuds"), ), - } - d['ENERGIE'] = { - "DISS_ELEM": ( ("lin", "nonlin",), - _(u"Énergie de dissipation par élément"), ), - "DISS_ELGA": ( ("lin", "nonlin",), - _(u"Densité d'énergie de dissipation aux points de Gauss"), ), - "DISS_ELNO": ( ("lin", "nonlin",), - _(u"Densité d'énergie de dissipation aux noeuds par élément"), ), - "DISS_NOEU": ( ("lin", "nonlin",), - _(u"Densité d'énergie de dissipation aux noeuds"), ), - "ECIN_ELEM": ( ("lin",), - _(u"Énergie cinétique par élément"), ), - "ENEL_ELEM": ( ("lin", "nonlin",), - _(u"Énergie élastique par élément"), ), - "ENEL_ELGA": ( ("lin", "nonlin",), - _(u"Densité d'énergie élastique aux points de Gauss"), ), - "ENEL_ELNO": ( ("lin", "nonlin",), - _(u"Densité d'énergie élastique aux noeuds par élément"), ), - "ENEL_NOEU": ( ("lin", "nonlin",), - _(u"Densité d'énergie élastique aux noeuds"), ), - "EPOT_ELEM": ( ("lin",), - _(u"Énergie potentielle de déformation élastique par élément"), ), - "ETOT_ELEM": ( ("lin", "nonlin",), - _(u"Incrément d'énergie de déformation totale par élément"), ), - "ETOT_ELGA": ( ("lin", "nonlin",), - _(u"Incrément de densité d'énergie de déformation totale aux points de Gauss"), ), - "ETOT_ELNO": ( ("lin", "nonlin",), - _(u"Incrément de densité d'énergie de déformation totale aux noeuds par élément"), ), - "ETOT_NOEU": ( ("lin", "nonlin",), - _(u"Incrément de densité d'énergie de déformation totale aux noeuds"), ), - } - d['CRITERES'] = { - "DERA_ELGA": ( ("nonlin",), - _(u"Indicateur local de décharge et de perte de radialité aux points de Gauss"), ), - "DERA_ELNO": ( ("nonlin",), - _(u"Indicateur local de décharge et de perte de radialité aux noeuds par élément"), ), - "DERA_NOEU": ( ("nonlin",), - _(u"Indicateur local de décharge et de perte de radialité aux noeuds"), ), - "ENDO_ELGA": ( ("nonlin",), - _(u"Dommage de Lemaître-Sermage aux points de Gauss"), ), - "ENDO_ELNO": ( ("nonlin",), - _(u"Dommage de Lemaître-Sermage aux noeuds par élément"), ), - "ENDO_NOEU": ( ("nonlin",), - _(u"Dommage de Lemaître-Sermage aux noeuds"), ), - "EPEQ_ELGA": ( ("lin", "nonlin",), - _(u"Déformations équivalentes aux points de Gauss"), ), - "EPEQ_ELNO": ( ("lin", "nonlin",), - _(u"Déformations équivalentes aux noeuds par élément"), ), - "EPEQ_NOEU": ( ("lin", "nonlin",), - _(u"Déformations équivalentes aux noeuds"), ), - "EPMQ_ELGA": ( ("lin", "nonlin",), - _(u"Déformations mécaniques équivalentes aux points de Gauss"), ), - "EPMQ_ELNO": ( ("lin", "nonlin",), - _(u"Déformations mécaniques équivalentes aux noeuds par élément"), ), - "EPMQ_NOEU": ( ("lin", "nonlin",), - _(u"Déformations mécaniques équivalentes aux noeuds"), ), - "INDL_ELGA": ( ("nonlin",), - _(u"Indicateur de localisation aux points de Gauss"), ), - "PDIL_ELGA": ( ("nonlin",), - _(u"Module de rigidité de micro-dilatation"), ), - "SIEQ_ELGA": ( ("lin", "nonlin",), - _(u"Contraintes équivalentes aux points de Gauss"), ), - "SIEQ_ELNO": ( ("lin", "nonlin",), - _(u"Contraintes équivalentes aux noeuds par élément"), ), - "SIEQ_NOEU": ( ("lin", "nonlin",), - _(u"Contraintes équivalentes aux noeuds"), ), - } - d['VARI_INTERNE'] = { - "VAEX_ELGA": ( ("nonlin",), - _(u"Extraction d'une variable interne aux points de Gauss"), ), - "VAEX_ELNO": ( ("nonlin",), - _(u"Extraction d'une variable interne aux noeuds pas élément"), ), - "VAEX_NOEU": ( ("nonlin",), - _(u"Extraction d'une variable interne aux noeuds"), ), - "VARC_ELGA": ( ("lin", "nonlin",), - _(u"Variables de commande aux points de Gauss"), ), - "VARI_ELNO": ( ("nonlin",), - _(u"Variables internes aux noeuds pas élément"), ), - "VARI_NOEU": ( ("nonlin",), - _(u"Variables internes aux noeuds"), ), - } - d['HYDRAULIQUE'] = { - "FLHN_ELGA": ( ("nonlin",), - _(u"Flux hydrauliques aux points de Gauss"), ), - } - d['THERMIQUE'] = { - "TEMP_ELGA": ( (), - _(u"Température aux points de Gauss"), ), - "FLUX_ELGA": ( (), - _(u"Flux thermique aux points de Gauss"), ), - "FLUX_ELNO": ( (), - _(u"Flux thermique aux noeuds par élément"), ), - "FLUX_NOEU": ( (), - _(u"Flux thermique aux noeuds"), ), - "HYDR_NOEU": ( (), - _(u"Hydratation aux noeuds"), ), - "SOUR_ELGA": ( (), - _(u"Source de chaleur à partir d'un potentiel électrique"), ), - "ETHE_ELEM": ( (), - _(u"Énergie dissipée thermiquement"), ), - } - d['ACOUSTIQUE'] = { - "PRAC_ELNO": ( (), - _(u"Pression acoustique aux noeuds par élément"), ), - "PRAC_NOEU": ( (), - _(u"Pression acoustique aux noeuds"), ), - "PRME_ELNO": ( (), - _(u"Pression aux noeuds par élément pour les éléments FLUIDE"), ), - "INTE_ELNO": ( (), - _(u"Intensité acoustique aux noeuds par élément"), ), - "INTE_NOEU": ( (), - _(u"Intensité acoustique aux noeuds"), ), - } - d['FORCE'] = { - "FORC_NODA": ( (), - _(u"Forces nodales"), ), - "REAC_NODA": ( (), - _(u"Réactions nodales"), ), - } - d['ERREUR'] = { - "SIZ1_NOEU": ( (), - _(u"Contraintes lissées de Zhu-Zienkiewicz version 1 aux noeuds"), ), - "ERZ1_ELEM": ( (), - _(u"Indicateur d'erreur de Zhu-Zienkiewicz version 1 par élément"), ), - "SIZ2_NOEU": ( (), - _(u"Contraintes lissées de Zhu-Zienkiewicz version 2 aux noeuds"), ), - "ERZ2_ELEM": ( (), - _(u"Indicateur d'erreur de Zhu-Zienkiewicz version 2 par élément"), ), - "ERME_ELEM": ( (), - _(u"Indicateur d'erreur en résidu en mécanique par élément"), ), - "ERME_ELNO": ( (), - _(u"Indicateur d'erreur en résidu en mécanique aux noeuds par élément"), ), - "ERME_NOEU": ( (), - _(u"Indicateur d'erreur en résidu en mécanique aux noeuds"), ), - "QIRE_ELEM": ( (), - _(u"Indicateur d'erreur en quantités d'intérêt en résidu par élément"), ), - "QIRE_ELNO": ( (), - _(u"Indicateur d'erreur en quantités d'intérêt en résidu aux noeuds par élément"), ), - "QIRE_NOEU": ( (), - _(u"Indicateur d'erreur en quantités d'intérêt en résidu aux noeuds"), ), - "QIZ1_ELEM": ( (), - _(u"Indicateur d'erreur en quantités d'intérêt de Zhu-Zienkiewicz version 1 par élément"), ), - "QIZ2_ELEM": ( (), - _(u"Indicateur d'erreur en quantités d'intérêt de Zhu-Zienkiewicz version 2 par élément"), ), - "SING_ELEM": ( (), - _(u"Degré de singularité par élément"), ), - "SING_ELNO": ( (), - _(u"Degré de singularité aux noeuds par élément"), ), - "ERTH_ELEM": ( (), - _(u"Indicateur d'erreur en résidu en thermique par élément"), ), - "ERTH_ELNO": ( (), - _(u"Indicateur d'erreur en résidu en thermique aux noeuds par élément"), ), - "ERTH_NOEU": ( (), - _(u"Indicateur d'erreur en résidu en thermique aux noeuds"), ), - } - d['METALLURGIE'] = { - "DURT_ELNO": ( (), - _(u"Dureté aux noeuds par élément"), ), - "DURT_NOEU": ( (), - _(u"Dureté aux noeuds"), ), - "META_ELNO": ( (), - _(u"Proportion de phases métallurgiques aux noeuds par élément"), ), - "META_NOEU": ( (), - _(u"Proportion de phases métallurgiques aux noeuds"), ), - } - d['DEPLACEMENT'] = { - "ACCE": ( (), - _(u"Accélération aux noeuds"), ), - "ACCE_ABSOLU": ( (), - _(u"Accélération absolue aux noeuds"), ), - "DEPL": ( (), - _(u"Déplacements aux noeuds"), ), - "DEPL_ABSOLU": ( (), - _(u"Déplacements absolus aux noeuds"), ), - "STRX_ELGA": ( (), - _(u"Efforts généralisés à partir des déplacements en linéaire aux points de Gauss"), ), - "TEMP": ( (), - _(u"Température aux noeuds"), ), - "VITE": ( (), - _(u"Vitesse aux noeuds"), ), - "VALE_CONT": ( (), - _(u"Statuts de contact"), ), - "VARI_ELGA": ( (), - _(u"Variables internes aux points de Gauss"), ), - "VITE_ABSOLU": ( (), - _(u"Vitesse absolue aux noeuds"), ), - } - d['AUTRES'] = { - "COMPORTEMENT": ( (), - _(u"Carte de comportement mécanique"), ), - "COMPORTHER": ( (), - _(u"Carte de comportement thermique"), ), - "DEPL_VIBR": ( (), - _(u"Déplacement pour mode vibratoire"), ), - "DIVU": ( (), - _(u"Déformation volumique en THM"), ), - "EPSA_ELNO": ( (), - _(u"Déformations anélastique aux noeuds par élément"), ), - "EPSA_NOEU": ( (), - _(u"Déformations anélastique aux noeuds"), ), - "FERRAILLAGE": ( ("lin",), - _(u"Densité de ferraillage"), ), - "FSUR_2D": ( (), - _(u"Chargement de force surfacique en 2D"), ), - "FSUR_3D": ( (), - _(u"Chargement de force surfacique en 3D"), ), - "FVOL_2D": ( (), - _(u"Chargement de force volumique en 2D"), ), - "FVOL_3D": ( (), - _(u"Chargement de force volumique en 3D"), ), - "HYDR_ELNO": ( (), - _(u"Hydratation aux noeuds par élément"), ), - "IRRA": ( (), - _(u"Irradition aux noeuds"), ), - "MODE_FLAMB": ( (), - _(u"Mode de flambement"), ), - "MODE_STAB": ( (), - _(u"Mode de stabilité"), ), - "NEUT": ( (), - _(u"Variable de commande 'neutre'"), ), - "PRES": ( (), - _(u"Chargement de pression"), ), - "PTOT": ( (), - _(u"Pression totale de fluide en THM"), ), - "SISE_ELNO": ( (), - _(u"Contraintes aux noeuds par sous-élément"), ), - "SPMX_ELGA": ( (), - _(u"Valeurs maximum sur un sous-point"), ), - "THETA": ( (), - _(u"Champ theta"), ), - "VITE_VENT": ( (), - _(u"Chargement vitesse du vent"), ), - } - for typ in ('ELGA', 'ELNO', 'ELEM', 'NOEU', 'CART'): - for i in range(1, 11): - d['AUTRES']['UT%02d_%s' % (i, typ)]=( (), - _(u"Champ utilisateur numéro %02d_%s" % (i, typ)), ) - self.d_all = d - return - - def CheckPhenom(self): - """ Vérification de la cohérence entre les phenomènes et les clés - """ - l_keys = list(self.d_all.keys()) - l_phen = list(self.all_phenomenes) - uniq_keys = set(l_keys) - uniq_phen = set(l_phen) - if len(l_keys) != len(uniq_keys) or len(l_phen) != len(uniq_phen) : - for i in uniq_keys : - l_keys.remove(i) - assert len(l_keys) == 0, 'Keys must be unique: %s' % l_keys - for i in uniq_phen : - l_phen.remove(i) - assert len(l_phen) == 0, 'Phenomenon must be unique: %s' % l_phen - if len(l_keys) > len(l_phen) : - for i in l_phen : - l_keys.remove(i) - assert len(l_keys) == 0, 'Key %s not listed in the list of phenomenons' % l_keys - if len(l_keys) < len(l_phen) : - for i in l_keys: - l_phen.remove(i) - assert len(l_phen) == 0, 'Phenomenon %s not known as a key' % l_phen - - - def CheckField(self): - """ Vérification des doublons dans les noms des champs - """ - l_cham = [] - for phen in self.all_phenomenes: - l_cham.extend(self.d_all[phen].keys()) - uniq = set(l_cham) - if len(l_cham) != len(uniq): - for i in uniq: - l_cham.remove(i) - assert len(l_cham) == 0, 'Field names must be unique: %s' % l_cham - - - def InfoChamps(self, l_nom_cham): - """ on renvoie juste les informations relatives au(x) champ(s) - """ - d_cham = {}.fromkeys( l_nom_cham, ( '', '', '' ) ) - for nom_cham in l_nom_cham: - for phen in self.all_phenomenes: - for cham in self.d_all[phen].keys(): - if nom_cham == cham: - cate = self.d_all[phen][cham][0] - helptxt = self.d_all[phen][cham][1] - d_cham[nom_cham] = ( phen, cate, helptxt ) - return d_cham - - def Filtre(self, *l_typ_cham, **kwargs): - """ Check des doublons - """ - phenomene = kwargs.get('phenomene') - categorie = kwargs.get('categorie') - # Construction de la liste des champs en tenant compte des eventuels filtre (phenomene, categorie, l_typ_cham) - # ------------------------------------------------------------------------------------------------------------ - l_cham = [] - # Filtre par phenomene - if phenomene is None: - l_phen = self.all_phenomenes - else: - l_phen = [ phenomene ] - for phen in l_phen: - # parcours de tous les champs - for cham in self.d_all[phen].keys(): - isok = True - # Filtre par categorie - if categorie is not None: - lcat = self.d_all[phen][cham][0] - if type(lcat) not in (tuple, list): - lcat = [lcat, ] - if categorie in lcat: - isok = True - else: - isok = False - if isok: - l_cham.append(cham) - l_cham.sort() - # Filtre sur les types de champs - if len(l_typ_cham) == 0: - return tuple(l_cham) - l_ncham = [] - for typ in l_typ_cham : - for cham in l_cham : - if typ in cham.split('_'): - l_ncham.append(cham) - return tuple(l_ncham) - - def __init__(self): - self.Tous() - # check les doublons (fonctionnalite developpeur permettant de detecter les doublons dans les champs) - if 1: - self.CheckPhenom() - self.CheckField() - - def __call__(self, *l_typ_cham, **kwargs): - """Cette fonction retourne la liste des "into" possibles pour le mot-clé NOM_CHAM. - C'est à dire les noms de champs des SD RESULTAT (DATA de la routine RSCRSD). - l_typ_cham : rien ou un ou plusieurs parmi 'ELGA', 'ELNO', 'NOEU', 'ELEM'. - kwargs : un dictionnaire de mot-cles, les cles parmis : - 'phenomene' : retourne la liste des champs en filtrant par le phenomene (eventuellement mixe avec le suivant) - 'categorie' : retourne la liste des champs en filtrant par le phenomene (eventuellement mixe avec le precedent) - 'l_nom_cham' : (une liste ou un string) retourne uniqement les informations relatives au champ precise en argument - """ - l_nom_cham = kwargs.get('l_nom_cham') - if type(l_nom_cham) == str: - l_nom_cham = [ l_nom_cham ] - if l_nom_cham: - return self.InfoChamps(l_nom_cham) - else: - return self.Filtre(*l_typ_cham, **kwargs) - - -C_NOM_CHAM_INTO = NOM_CHAM_INTO() - -# person_in_charge: xavier.desroches at edf.fr -# ====================================================================== -# COPYRIGHT (C) 1991 - 2011 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# ce fichier contient la liste des noms des grandeurs de CODE_ASTER -def C_NOM_GRANDEUR() : return ( #COMMUN# -"ABSC_R", -"ADRSJEVE", -"ADRSJEVN", -"CAARPO", -"CACABL", -"CACOQU", -"CADISA", -"CADISK", -"CADISM", -"CAFI_R", -"CAGEBA", -"CAGEPO", -"CAGNBA", -"CAGNPO", -"CAMASS", -"CAORIE", -"CAPOUF", -"CARCRI", -"CASECT", -"CHLI_R", -"CODE_I", -"COEH_F", -"COEH_R", -"COMPOR", -"CORR_R", -"CRRU_R", -"DBEL_R", -"DCEL_I", -"DDLI_C", -"DDLI_F", -"DDLI_R", -"DDLM_C", -"DDLM_R", -"DEPL_C", -"DEPL_F", -"DEPL_R", -"DISS_R", -"DOMA_R", -"DURT_R", -"ENDO_R", -"ENER_R", -"EPSI_C", -"EPSI_F", -"EPSI_R", -"ERRE_R", -"FACY_R", -"FELECR", -"FER2_R", -"FISS_R", -"FLAPLA", -"FLUN_F", -"FLUN_R", -"FLUX_F", -"FLUX_R", -"FORC_C", -"FORC_F", -"FORC_R", -"FREQ_R", -"FTHM_F", -"FTHM_R", -"G", -"GEOM_R", -"G_DEPL_R", -"HARMON", -"HYDR_R", -"IMPE_C", -"IMPE_F", -"IMPE_R", -"INDL_R", -"INFC_R", -"INST_R", -"INTE_R", -"INTLOC", -"IRRA_R", -"ITECREL", -"ITEDEC", -"J", -"LISTMA", -"MACOMP", -"MASS_R", -"MATE_F", -"NBSP_I", -"NEUT_F", -"NEUT_I", -"NEUT_K16", -"NEUT_K24", -"NEUT_K8", -"NEUT_R", -"NUMC_I", -"NUMMOD", -"ONDE_F", -"ONDE_R", -"PESA_R", -"PDIL_R", -"PILO_K", -"PILO_R", -"POSI", -"PREC", -"PRES_C", -"PRES_F", -"PRES_R", -"RAYO_F", -"RAYO_R", -"RCCM_K", -"RCCM_R", -"RESCREL", -"RICE_TRA", -"ROTA_R", -"SECTION", -"SIEF_C", -"SIEF_R", -"SIZZ_R", -"SOUR_F", -"SOUR_R", -"SPMX_R", -"STRX_R", -"STAOUDYN", -"TEMP_C", -"TEMP_F", -"TEMP_R", -"THETA", -"VALO_R", -"VANL_R", -"VAR2_R", -"VARI_R", -"VENTCX_F", -"VNOR_C", -"VNOR_F", -"VOISIN", -"WEIBULL", -"XCONTAC", - ) - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2012 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: mickael.abbas at edf.fr - -def C_OBSERVATION() : return FACT(statut='f',max=99, - TITRE =SIMP(statut='f',typ='TXM',max=1), - NOM_CHAM =SIMP(statut='o',typ='TXM',validators=NoRepeat(),max=1, - into=("VALE_CONT","FORC_NODA", - "DEPL","VITE","ACCE","TEMP", - "SIEF_ELGA","VARI_ELGA", - "DEPL_ABSOLU","VITE_ABSOLU","ACCE_ABSOLU",)), - - EVAL_CHAM =SIMP(statut='f',typ='TXM',validators=NoRepeat(),max=1,defaut='VALE', - into=("MIN","MAX","MOY","MAXI_ABS","MINI_ABS","VALE",),), - - NOM_CMP =SIMP(statut='o',typ='TXM',max=20), - EVAL_CMP =SIMP(statut='f',typ='TXM',validators=NoRepeat(),max=1,defaut='VALE', - into=("VALE","FORMULE",),), - - b_formule =BLOC(condition="(EVAL_CMP=='FORMULE')", - FORMULE = SIMP(statut='o',typ=formule,max=1), - ), - - b_cham_no =BLOC(condition="(NOM_CHAM=='DEPL') or \ - (NOM_CHAM=='VITE') or \ - (NOM_CHAM=='ACCE') or \ - (NOM_CHAM=='TEMP') or \ - (NOM_CHAM=='FORC_NODA') or \ - (NOM_CHAM=='VALE_CONT') or \ - (NOM_CHAM=='DEPL_ABSOLU') or \ - (NOM_CHAM=='VITE_ABSOLU') or \ - (NOM_CHAM=='ACCE_ABSOLU')", - regles =(UN_PARMI('NOEUD','GROUP_NO','GROUP_MA','MAILLE','TOUT')), - TOUT =SIMP(statut='d',typ='TXM',into=("OUI",) ), - NOEUD =SIMP(statut='f',typ=no ,validators=NoRepeat(),max='**'), - GROUP_NO =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'), - MAILLE =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), - GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - ), - - - b_cham_elga =BLOC(condition="(NOM_CHAM=='SIEF_ELGA') or \ - (NOM_CHAM=='VARI_ELGA')", - regles =(UN_PARMI('GROUP_MA','MAILLE','TOUT')), - TOUT =SIMP(statut='d',typ='TXM',into=("OUI",) ), - MAILLE =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), - GROUP_MA =SIMP(statut='f',typ=grma ,validators=NoRepeat(),max='**'), - EVAL_ELGA =SIMP(statut='f',typ='TXM',validators=NoRepeat(),max=1,defaut='VALE', - into=("MIN","MAX","VALE",),), - b_elga_vale =BLOC(condition="(EVAL_ELGA=='VALE')", - POINT =SIMP(statut='o',typ='I' ,validators=NoRepeat(),max='**'), - SOUS_POINT =SIMP(statut='f',typ='I' ,validators=NoRepeat(),max='**'), - ), - ), - - INST =SIMP(statut='f',typ='R',validators=NoRepeat(),max='**' ), - LIST_INST =SIMP(statut='f',typ=listr8_sdaster), - PAS_OBSE =SIMP(statut='f',typ='I'), - CRITERE =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU") ), - b_prec_rela=BLOC(condition="(CRITERE=='RELATIF')", - PRECISION =SIMP(statut='f',typ='R',defaut= 1.E-6,),), - b_prec_abso=BLOC(condition="(CRITERE=='ABSOLU')", - PRECISION =SIMP(statut='o',typ='R',),), - - - ); - -# person_in_charge: mathieu.courtois at edf.fr -# ====================================================================== -# COPYRIGHT (C) 1991 - 2011 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# ce fichier contient la liste des PARA possibles pour les fonctions et les nappes -def C_PARA_FONCTION() : return ( #COMMUN# - "DX","DY","DZ","DRX","DRY","DRZ","TEMP","TSEC", - "INST","X","Y","Z","EPSI","META","FREQ","PULS","DSP", - "AMOR","ABSC","ABSC_CURV","SIGM","HYDR","SECH","PORO","SAT", - "PGAZ","PCAP","PLIQ","PVAP","PAD","VITE","ENDO", - "NORM","EPAIS","NEUT1","NEUT2",) - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2012 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: kyrylo.kazymyrenko at edf.fr -def C_PILOTAGE() : return FACT(statut='f', - regles=(EXCLUS('NOEUD','GROUP_NO'),PRESENT_ABSENT('TOUT','GROUP_MA','MAILLE'),), - TYPE =SIMP(statut='o',typ='TXM',into=("DDL_IMPO","LONG_ARC","PRED_ELAS","DEFORMATION", - "ANA_LIM","SAUT_IMPO","SAUT_LONG_ARC") ), - COEF_MULT =SIMP(statut='f',typ='R',defaut= 1.0E+0), - EVOL_PARA =SIMP(statut='f',typ='TXM',defaut="SANS", into=("SANS","CROISSANT","DECROISSANT") ), - ETA_PILO_MAX =SIMP(statut='f',typ='R'), - ETA_PILO_MIN =SIMP(statut='f',typ='R'), - ETA_PILO_R_MAX=SIMP(statut='f',typ='R'), - ETA_PILO_R_MIN=SIMP(statut='f',typ='R'), - PROJ_BORNES =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON")), - SELECTION =SIMP(statut='f',typ='TXM',defaut="NORM_INCR_DEPL", - into=("RESIDU","MIXTE","ANGL_INCR_DEPL","NORM_INCR_DEPL")), - TOUT =SIMP(statut='f',typ='TXM',into=("OUI",) ), - GROUP_MA =SIMP(statut='f',typ=grma ,validators=NoRepeat(),max='**'), - FISSURE =SIMP(statut='f',typ=fiss_xfem ,validators=NoRepeat(),max='**'), - MAILLE =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), - NOEUD =SIMP(statut='f',typ=no ,validators=NoRepeat(),max='**'), - GROUP_NO =SIMP(statut='f',typ=grno ,validators=NoRepeat(),max='**'), - NOM_CMP =SIMP(statut='f',typ='TXM',max='**'), - DIRE_PILO =SIMP(statut='f',typ='TXM',max='**'), - ); - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2011 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: mickael.abbas at edf.fr -def C_RECH_LINEAIRE() : return FACT(statut='f', - METHODE =SIMP(statut='f',typ='TXM',defaut="CORDE",into=("CORDE","MIXTE","PILOTAGE") ), - RESI_LINE_RELA =SIMP(statut='f',typ='R',defaut= 1.0E-1 ), - ITER_LINE_MAXI =SIMP(statut='f',typ='I',defaut= 3,val_max=999), - RHO_MIN =SIMP(statut='f',typ='R',defaut=1.0E-2), - RHO_MAX =SIMP(statut='f',typ='R',defaut=1.0E+1), - RHO_EXCL =SIMP(statut='f',typ='R',defaut=0.9E-2,val_min=0.), - ); - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2013 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: jean-michel.proix@edf.fr -# -def C_RELATION( COMMAND ): - - if COMMAND in ('CALC_G',): - return ( "ELAS", #COMMUN# - "ELAS_VMIS_LINE", - "ELAS_VMIS_TRAC", - "ELAS_VMIS_PUIS", - "ELAS_HYPER", - "VMIS_ISOT_LINE", - "VMIS_ISOT_TRAC", - # relations interdites depuis issue21711, elles - # devront etre introduites dans le F90 si besoin - #"VMIS_CINE_LINE", - #"VMIS_ISOT_PUIS", - ) - elif COMMAND in ('MACR_ASCOUF_CALC','MACR_ASPIC_CALC',): - return ( "ELAS", - "ELAS_VMIS_TRAC", - "VMIS_ISOT_TRAC", - ) - elif COMMAND =='DEFI_COMPOR' : - return ( "ELAS", #uniquement ce qui a du sens (cf doc) et qui fait l'objet d'un test - "BETON_UMLV_FP", - "BETON_DOUBLE_DP", - "CORR_ACIER", - "GRANGER_FP", - "GRANGER_FP_V", - "GRANGER_FP_INDT", - "GRAN_IRRA_LOG", - "MAZARS_GC", - "VISC_IRRA_LOG", - "VMIS_CINE_GC", - "VMIS_CINE_LINE", - "VMIS_ISOT_LINE", - "VMIS_ISOT_TRAC", - "VMIS_ISOT_PUIS", - ) - else : - return ( "ELAS", - "ELAS_VMIS_LINE", - "ELAS_VMIS_TRAC", - "ELAS_VMIS_PUIS", - "ELAS_HYPER", - "ELAS_POUTRE_GR", - "CABLE", - "ARME", - "ASSE_CORN", - "BARCELONE", - "BETON_BURGER_FP", - "BETON_DOUBLE_DP", - "BETON_RAG", - "BETON_REGLE_PR", - "BETON_UMLV_FP", - "CABLE_GAINE_FROT", - "CAM_CLAY", - "CJS", - "CORR_ACIER", - "CZM_EXP", - "CZM_EXP_REG", - "CZM_FAT_MIX", - "CZM_LIN_REG", - "CZM_OUV_MIX", - "CZM_TAC_MIX", - "CZM_LAB_MIX", - "CZM_TRA_MIX", - "DIS_BILI_ELAS", - "DIS_CHOC", - "DIS_ECRO_CINE", - "DIS_GOUJ2E_ELAS", - "DIS_GOUJ2E_PLAS", - "DIS_GRICRA", - "DIS_VISC", - "DRUCK_PRAGER", - "DRUCK_PRAG_N_A", - "ELAS_GONF", - "ELAS_HYPER", - "ENDO_CARRE", - "ENDO_FISS_EXP", - "ENDO_FRAGILE", - "ENDO_HETEROGENE", - "ENDO_ISOT_BETON", - "ENDO_ORTH_BETON", - "ENDO_SCALAIRE", - "GATT_MONERIE", - "GLRC_DAMAGE", - "GLRC_DM", - "DHRC", - "GRANGER_FP", - "GRANGER_FP_INDT", - "GRANGER_FP_V", - "GRAN_IRRA_LOG", - "GRILLE_CINE_LINE", - "GRILLE_ISOT_LINE", - "GRILLE_PINTO_MEN", - "HAYHURST", - "HOEK_BROWN", - "HOEK_BROWN_EFF", - "HOEK_BROWN_TOT", - "HUJEUX", - "IRRAD3M", - "JOINT_BA", - "JOINT_BANDIS", - "JOINT_MECA_RUPT", - "JOINT_MECA_FROT", - "KIT_CG", - "KIT_DDI", - "KIT_HH", - "KIT_H", - "KIT_HHM", - "KIT_HM", - "KIT_THH", - "KIT_THHM", - "KIT_THM", - "KIT_THV", - "LAIGLE", - "LEMAITRE", - "LEMAITRE_IRRA", - "LEMA_SEUIL", - "LETK", - "LMARC_IRRA", - "MAZARS", - "MAZARS_GC", - "META_LEMA_ANI", - "META_P_CL", - "META_P_CL_PT", - "META_P_CL_PT_RE", - "META_P_CL_RE", - "META_P_IL", - "META_P_IL_PT", - "META_P_IL_PT_RE", - "META_P_IL_RE", - "META_P_INL", - "META_P_INL_PT", - "META_P_INL_PT_RE", - "META_P_INL_RE", - "META_V_CL", - "META_V_CL_PT", - "META_V_CL_PT_RE", - "META_V_CL_RE", - "META_V_IL", - "META_V_IL_PT", - "META_V_IL_PT_RE", - "META_V_IL_RE", - "META_V_INL", - "META_V_INL_PT", - "META_V_INL_PT_RE", - "META_V_INL_RE", - "MOHR_COULOMB", - "MONOCRISTAL", - "MULTIFIBRE", - "NORTON", - "NORTON_HOFF", - "PINTO_MENEGOTTO", - "POLYCRISTAL", - "ROUSSELIER", - "ROUSS_PR", - "ROUSS_VISC", - "RUPT_FRAG", - "SANS", - "VENDOCHAB", - "VISC_ENDO_LEMA", - "VISCOCHAB", - "VISC_CIN1_CHAB", - "VISC_CIN2_CHAB", - "VISC_CIN2_MEMO", - "VISC_CIN2_NRAD", - "VISC_MEMO_NRAD", - "VISC_DRUC_PRAG", - "VISC_IRRA_LOG", - "VISC_ISOT_LINE", - "VISC_ISOT_TRAC", - "VISC_TAHERI", - "VMIS_ASYM_LINE", - "VMIS_CIN1_CHAB", - "VMIS_CIN2_CHAB", - "VMIS_CINE_GC", - "VMIS_CIN2_MEMO", - "VMIS_CIN2_NRAD", - "VMIS_MEMO_NRAD", - "VMIS_CINE_LINE", - "VMIS_ECMI_LINE", - "VMIS_ECMI_TRAC", - "VMIS_ISOT_LINE", - "VMIS_ISOT_PUIS", - "VMIS_ISOT_TRAC", - "VMIS_JOHN_COOK", - "ZMAT", - "UMAT", - "MFRONT", - ) - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2013 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: olivier.boiteau at edf.fr - -def C_SOLVEUR( COMMAND, BASE=None ) : #COMMUN# - -# ---------------------------------------------------------------------------------------------------------------------------------- -# -# VERIFICATIONS -# -# ---------------------------------------------------------------------------------------------------------------------------------- - - assert COMMAND in ('CALC_ERREUR', - 'CALC_FORC_AJOU', - 'CALC_IFS_DNL', - 'CALC_MATR_AJOU', - 'CALC_PRECONT', - 'CREA_ELEM_SSD', - 'DEFI_BASE_MODALE', - 'DYNA_LINE_HARM', - 'DYNA_LINE_TRAN', - 'DYNA_NON_LINE', - 'DYNA_TRAN_MODAL', - 'INFO_MODE', - 'MACR_ASCOUF_CALC', - 'MACR_ASPIC_CALC', - 'MACRO_BASCULE_SCHEMA', - 'MACRO_MATR_AJOU', - 'MECA_STATIQUE', - 'MODE_ITER_SIMULT', - 'MODE_ITER_INV', - 'MODE_STATIQUE', - 'MODE_NON_LINE', - 'STAT_NON_LINE', - 'THER_LINEAIRE', - 'THER_NON_LINE', - 'THER_NON_LINE_MO', - ) - - if BASE != None: - assert COMMAND == 'DYNA_LINE_HARM' - assert BASE in ('GENE','PHYS') - -# ---------------------------------------------------------------------------------------------------------------------------------- -# -# CLASSIFICATION EN 3 CATEGORIES : -# - solveurs directs uniquement -# - solveurs pour le linéaire -# - solveurs pour le non-linéaire -# -# GESTION DES EXCEPTIONS -# -# ---------------------------------------------------------------------------------------------------------------------------------- - - _type = None - -# Classification ('SD'/'LIN'/'NL') - if COMMAND in ('CREA_ELEM_SSD', - 'DEFI_BASE_MODALE', - 'DYNA_LINE_HARM', - 'DYNA_TRAN_MODAL', - 'INFO_MODE', - 'MODE_ITER_SIMULT', - 'MODE_ITER_INV', - ): - _type = 'SD' - elif COMMAND in ('CALC_ERREUR', - 'CALC_FORC_AJOU', - 'CALC_MATR_AJOU', - 'DYNA_LINE_TRAN', - 'MACRO_MATR_AJOU', - 'MECA_STATIQUE', - 'MODE_STATIQUE', - 'THER_LINEAIRE', - 'THER_NON_LINE_MO', - ): - _type = 'LIN' - elif COMMAND in ('CALC_IFS_DNL', - 'CALC_PRECONT', - 'DYNA_NON_LINE', - 'MACR_ASCOUF_CALC', - 'MACR_ASPIC_CALC', - 'MACRO_BASCULE_SCHEMA', - 'STAT_NON_LINE', - 'THER_NON_LINE', - 'MODE_NON_LINE', - ): - _type = 'NL' - else: - assert False - -# ---------------------------------------------------------------------------------------------------------------------------------- - - _dist = False - -# MATR_DISTRIBUEE ne fonctionnent que dans MECA_STATIQUE et MECA_NON_LINE - if COMMAND in ('CALC_IFS_DNL', - 'CALC_PRECONT', - 'DYNA_NON_LINE', - 'MACR_ASCOUF_CALC', - 'MACR_ASPIC_CALC', - 'MACRO_BASCULE_SCHEMA', - 'MECA_STATIQUE', - 'STAT_NON_LINE', - ): - _dist = True - -# ---------------------------------------------------------------------------------------------------------------------------------- - - _gene = False - _ldlt = False - -# Avec des matrices généralisées, MULT_FRONT n'est pas permis, LDLT est donc par défaut - if BASE == 'GENE': - _gene = True - _ldlt = True - -# LDLT est le solveur par défaut dans DYNA_TRAN_MODAL (systèmes linéaires petits) - if COMMAND == 'DYNA_TRAN_MODAL': - _ldlt = True - -# ---------------------------------------------------------------------------------------------------------------------------------- - - _syme = False - -# Seuls les opérateurs non-linéaires produisent des matrices non-symétriques - if _type == 'NL': - _syme = True - if COMMAND == 'THER_NON_LINE_MO': - _syme = True - -# ---------------------------------------------------------------------------------------------------------------------------------- - - _singu = True - _rcmk = True - _resol = True - _cmodal = False - -# Avec les solveurs modaux STOP_SINGULIER n'existe pas, de plus RCMK n'est pas disponible - if COMMAND in ('INFO_MODE','MODE_ITER_INV','MODE_ITER_SIMULT'): - _cmodal= True - _singu = False - _rcmk = False -# Dans INFO_MODE on ne fait que factoriser - if COMMAND == 'INFO_MODE': - _resol = False - -# ---------------------------------------------------------------------------------------------------------------------------------- - - _singu_non = False - -# Dans DEFI_BASE_MODALE, NON est le défaut de STOP_SINGULIER - if COMMAND == 'DEFI_BASE_MODALE': - _singu_non = True - -# ---------------------------------------------------------------------------------------------------------------------------------- -# -# INITIALISATIONS -# -# ---------------------------------------------------------------------------------------------------------------------------------- - -# Mot-clés simples - _MotCleSimples={} - -# Solveurs - _BlocMF={} - _BlocLD={} - _BlocMU={} - _BlocGC={} - _BlocPE={} - -# Préconditionneurs - _BlocGC_INC={} - _BlocPE_INC={} - _BlocXX_SP={} - _BlocPE_ML={} - _BlocPE_BOOMER={} - _BlocXX_Autres={} - -# ---------------------------------------------------------------------------------------------------------------------------------- -# -# MOT-CLES SIMPLES : METHODE -# SYME -# -# ---------------------------------------------------------------------------------------------------------------------------------- - -# METHODE - if (_ldlt): - _defaut = "LDLT" - else: - _defaut = "MULT_FRONT" - - if _type == 'SD': - _into = ("MULT_FRONT", "LDLT", "MUMPS", ) - if _gene: - _into = ("LDLT", "MUMPS", ) - else: - _into = ("MULT_FRONT", "LDLT", "MUMPS", "GCPC", "PETSC", ) - - if COMMAND =='MODE_NON_LINE': - _defaut = "MUMPS" - _into = ("MUMPS",) - - _MotCleSimples['METHODE'] = SIMP(statut='f', typ='TXM', defaut=_defaut, into=_into, ) - -# ---------------------------------------------------------------------------------------------------------------------------------- - -# SYME - if _syme: - _MotCleSimples['SYME'] = SIMP(statut='f', typ='TXM', defaut="NON", into=("OUI", "NON", ), ) - -# ---------------------------------------------------------------------------------------------------------------------------------- -# -# MULT_FRONT/LDLT/MUMPS (RENUM/NPREC/STOP_SINGULIER) -# -# ---------------------------------------------------------------------------------------------------------------------------------- - -# RENUM - _BlocMF['RENUM'] = SIMP(statut='f', typ='TXM', defaut="METIS", into=("MD", "MDA", "METIS", ), ) - - if _rcmk: - _into = ("RCMK", "SANS", ) - _defaut = "RCMK" - else: - _into = ("SANS",) - _defaut = "SANS" - - _BlocLD['RENUM'] = SIMP(statut='f', typ='TXM', defaut=_defaut, into=_into, ) - - _BlocMU['RENUM'] = SIMP(statut='f', typ='TXM', defaut="AUTO", into=("AMD", "AMF", "PORD", "METIS", "QAMD", "SCOTCH", "AUTO", ), ) - -# ---------------------------------------------------------------------------------------------------------------------------------- -# NPREC - _BlocMF['NPREC'] = SIMP(statut='f', typ='I', defaut=8, ) - _BlocLD['NPREC'] = SIMP(statut='f', typ='I', defaut=8, ) - _BlocMU['NPREC'] = SIMP(statut='f', typ='I', defaut=8, ) - -# ---------------------------------------------------------------------------------------------------------------------------------- -# ELIM_LAGR - - if not _cmodal : - _BlocPE['ELIM_LAGR' ] = SIMP(statut='f', typ='TXM', defaut="NON" , into=("OUI", "NON"), ) - _BlocMF['ELIM_LAGR' ] = SIMP(statut='f', typ='TXM', defaut="NON" , into=("OUI", "NON"), ) - _BlocLD['ELIM_LAGR' ] = SIMP(statut='f', typ='TXM', defaut="NON" , into=("OUI", "NON"), ) - _BlocMU['ELIM_LAGR' ] = SIMP(statut='f', typ='TXM', defaut="LAGR2" , into=("OUI", "NON", "LAGR2"), ) - else : - _BlocMU['ELIM_LAGR' ] = SIMP(statut='f', typ='TXM', defaut="LAGR2" , into=("NON", "LAGR2"), ) - - -# ---------------------------------------------------------------------------------------------------------------------------------- -# STOP_SINGULIER - _into = ("OUI", "NON", ) - _defaut = "OUI" - - if _singu_non: - _defaut = "NON" - - if _singu: - _BlocMF['STOP_SINGULIER'] = SIMP(statut='f', typ='TXM', defaut=_defaut, into=_into, ) - _BlocLD['STOP_SINGULIER'] = SIMP(statut='f', typ='TXM', defaut=_defaut, into=_into, ) - _BlocMU['STOP_SINGULIER'] = SIMP(statut='f', typ='TXM', defaut=_defaut, into=_into, ) - -# ---------------------------------------------------------------------------------------------------------------------------------- -# -# MUMPS (MOT-CLES RESTANT) -# -# ---------------------------------------------------------------------------------------------------------------------------------- - - _BlocMU['TYPE_RESOL' ] = SIMP(statut='f', typ='TXM', defaut="AUTO", into=("NONSYM", "SYMGEN", "SYMDEF", "AUTO", ), ) - -# ---------------------------------------------------------------------------------------------------------------------------------- - - _BlocMU['PRETRAITEMENTS' ] = SIMP(statut='f', typ='TXM', defaut="AUTO", into=("SANS", "AUTO", ), ) - -# ---------------------------------------------------------------------------------------------------------------------------------- - - if _resol: - _BlocMU['POSTTRAITEMENTS'] = SIMP(statut='f', typ='TXM', defaut="AUTO", into=("SANS", "AUTO", "FORCE", ), ) - -# ---------------------------------------------------------------------------------------------------------------------------------- - - _BlocMU['PCENT_PIVOT' ] = SIMP(statut='f', typ='I' , defaut=20, val_min=1, ) - -# ---------------------------------------------------------------------------------------------------------------------------------- - - if _resol: - if _type == 'LIN': - _BlocMU['RESI_RELA'] = SIMP(statut='f', typ='R', defaut=1.0E-6, ) - else: - _BlocMU['RESI_RELA'] = SIMP(statut='f', typ='R', defaut=-1.0, ) - -# ---------------------------------------------------------------------------------------------------------------------------------- - - _BlocMU['GESTION_MEMOIRE'] = SIMP(statut='f', typ='TXM', defaut="AUTO", into=("IN_CORE", "OUT_OF_CORE", "AUTO", "EVAL"), ) - -# ---------------------------------------------------------------------------------------------------------------------------------- - - if _type == 'NL': - _BlocMU['FILTRAGE_MATRICE'] = SIMP(statut='f', typ='R' , defaut=-1.0, ) - _BlocMU['MIXER_PRECISION' ] = SIMP(statut='f', typ='TXM', defaut="NON", into=("OUI", "NON", ), ) - -# ---------------------------------------------------------------------------------------------------------------------------------- - - if _dist: - _BlocMU['MATR_DISTRIBUEE' ] = SIMP(statut='f', typ='TXM', defaut="NON", into=("OUI", "NON", ), ) - _BlocPE['MATR_DISTRIBUEE' ] = SIMP(statut='f', typ='TXM', defaut="NON", into=("OUI", "NON", ), ) - -# ---------------------------------------------------------------------------------------------------------------------------------- -# -# GCPC/PETSC -# -# ---------------------------------------------------------------------------------------------------------------------------------- - - _BlocPE['ALGORITHME'] = SIMP(statut='f', typ='TXM', defaut="GMRES", into=("CG", "CR", "GMRES", "GCR", ), ) - -# ---------------------------------------------------------------------------------------------------------------------------------- - - _BlocGC['PRE_COND'] = SIMP(statut='f', typ='TXM', defaut="LDLT_INC", into=("LDLT_INC", "LDLT_SP", ), ) - _BlocPE['PRE_COND'] = SIMP(statut='f', typ='TXM', defaut="LDLT_SP" , - into=("LDLT_INC", "LDLT_SP", "JACOBI", "SOR", "ML", "BOOMER", "SANS", ), ) - -# ---------------------------------------------------------------------------------------------------------------------------------- - - _BlocGC['RESI_RELA'] = SIMP(statut='f', typ='R', defaut= 1.E-6, ) - _BlocPE['RESI_RELA'] = SIMP(statut='f', typ='R', defaut= 1.E-6, ) - -# ---------------------------------------------------------------------------------------------------------------------------------- - - _BlocGC['NMAX_ITER'] = SIMP(statut='f', typ='I', defaut= 0, ) - _BlocPE['NMAX_ITER'] = SIMP(statut='f', typ='I', defaut= 0, ) - -# ---------------------------------------------------------------------------------------------------------------------------------- -# Mot-cle cache pour desactiver le critere en norme non preconditionnee dans PETSC - - if _type == 'NL': - _BlocPE['RESI_RELA_PC'] = SIMP(statut='c', typ='R', defaut= -1.0, ) - else: - _BlocPE['RESI_RELA_PC'] = SIMP(statut='c', typ='R', defaut= 0.0, ) - -# ---------------------------------------------------------------------------------------------------------------------------------- - - _BlocGC_INC['RENUM'] = SIMP(statut='f', typ='TXM', defaut="RCMK", into=("SANS","RCMK"), ) - _BlocPE_INC['RENUM'] = SIMP(statut='f', typ='TXM', defaut="RCMK", into=("SANS","RCMK"), ) - -# ---------------------------------------------------------------------------------------------------------------------------------- - - _BlocGC_INC['NIVE_REMPLISSAGE'] = SIMP(statut='f', typ='I', defaut= 0, ) - _BlocPE_INC['NIVE_REMPLISSAGE'] = SIMP(statut='f', typ='I', defaut= 0, ) - -# ---------------------------------------------------------------------------------------------------------------------------------- - - _BlocPE_INC['REMPLISSAGE'] = SIMP(statut='f', typ='R', defaut= 1.0, ) - -# ---------------------------------------------------------------------------------------------------------------------------------- - - _BlocXX_SP['RENUM'] = SIMP(statut='f', typ='TXM', defaut="SANS", into=("SANS",), ) - _BlocXX_SP['REAC_PRECOND'] = SIMP(statut='f', typ='I', defaut=30, ) - _BlocXX_SP['PCENT_PIVOT' ] = SIMP(statut='f', typ='I', defaut=20, val_min=1, ) - -# ---------------------------------------------------------------------------------------------------------------------------------- - - _BlocPE_ML['RENUM'] = SIMP(statut='f', typ='TXM', defaut="SANS", into=("SANS",), ) - -# ---------------------------------------------------------------------------------------------------------------------------------- - - _BlocPE_BOOMER['RENUM'] = SIMP(statut='f', typ='TXM', defaut="SANS", into=("SANS",), ) - -# ---------------------------------------------------------------------------------------------------------------------------------- - - _BlocXX_Autres['RENUM'] = SIMP(statut='f', typ='TXM', defaut="SANS", into=("SANS","RCMK", ), ) - - -# ---------------------------------------------------------------------------------------------------------------------------------- -# -# PREPARATION DU MOT-CLE FACTEUR -# -# ---------------------------------------------------------------------------------------------------------------------------------- - - mcfact = FACT(statut='d', - b_mult_front = BLOC(condition = "METHODE == 'MULT_FRONT' ", - fr="Paramètres de la méthode multi frontale", - **_BlocMF - ), - b_ldlt = BLOC(condition = "METHODE == 'LDLT' ", - fr="Paramètres de la méthode LDLT", - **_BlocLD - ), - b_mumps = BLOC(condition = "METHODE == 'MUMPS' ", - fr="Paramètres de la méthode MUMPS", - **_BlocMU - ), - b_gcpc = BLOC(condition = "METHODE == 'GCPC' ", - fr="Paramètres de la méthode du gradient conjugué", - b_ldltinc = BLOC(condition = "PRE_COND == 'LDLT_INC' ", - fr="Paramètres de la factorisation incomplète", - **_BlocGC_INC - ), - b_simple = BLOC(condition = "PRE_COND == 'LDLT_SP' ", - fr="Paramètres de la factorisation simple précision", - **_BlocXX_SP - ), - **_BlocGC - ), - b_petsc = BLOC(condition = "METHODE == 'PETSC' ", - fr="Paramètres de la méthode PETSC", - b_ldltinc = BLOC(condition = "PRE_COND == 'LDLT_INC' ", - fr="Paramètres de la factorisation incomplète", - **_BlocPE_INC - ), - b_simple = BLOC(condition = "PRE_COND == 'LDLT_SP' ", - fr="Paramètres de la factorisation simple précision", - **_BlocXX_SP - ), - b_ml = BLOC(condition = "PRE_COND == 'ML' ", - fr="Paramètres du multigrille algébrique ML", - **_BlocPE_ML - ), - b_boomer = BLOC(condition = "PRE_COND == 'BOOMER' ", - fr="Paramètres du multigrille algébrique HYPRE", - **_BlocPE_BOOMER - ), - b_autres = BLOC(condition = "PRE_COND == 'JACOBI' or \ - PRE_COND == 'SOR' or \ - PRE_COND == 'SANS'", - **_BlocXX_Autres - ), - **_BlocPE - ), - **_MotCleSimples - ) - - return mcfact - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2012 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: mickael.abbas at edf.fr - -def C_SUIVI_DDL() : return FACT(statut='f',max=4, - - NOM_CHAM =SIMP(statut='o',typ='TXM',validators=NoRepeat(),max=1, - into=("DEPL","VITE","ACCE", - "FORC_NODA", - "SIEF_ELGA","VARI_ELGA",)), - - EVAL_CHAM =SIMP(statut='f',typ='TXM',validators=NoRepeat(),max=1,defaut='VALE', - into=("MIN","MAX","MOY","MAXI_ABS","MINI_ABS","VALE",),), - - NOM_CMP =SIMP(statut='o',typ='TXM',max=20), - EVAL_CMP =SIMP(statut='f',typ='TXM',validators=NoRepeat(),max=1,defaut='VALE', - into=("VALE","FORMULE",),), - - b_formule =BLOC(condition="(EVAL_CMP=='FORMULE')", - FORMULE = SIMP(statut='o',typ=formule,max=1), - ), - - b_cham_no =BLOC(condition="(NOM_CHAM=='DEPL') or \ - (NOM_CHAM=='VITE') or \ - (NOM_CHAM=='ACCE') or \ - (NOM_CHAM=='FORC_NODA') or \ - (NOM_CHAM=='VALE_CONT')", - regles =(UN_PARMI('NOEUD','GROUP_NO','GROUP_MA','MAILLE','TOUT')), - TOUT =SIMP(statut='d',typ='TXM',into=("OUI",) ), - NOEUD =SIMP(statut='f',typ=no ,validators=NoRepeat(),max='**'), - GROUP_NO =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'), - MAILLE =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), - GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - ), - - b_cham_elga =BLOC(condition="(NOM_CHAM=='SIEF_ELGA') or \ - (NOM_CHAM=='VARI_ELGA')", - regles =(UN_PARMI('GROUP_MA','MAILLE','TOUT')), - TOUT =SIMP(statut='d',typ='TXM',into=("OUI",) ), - MAILLE =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), - GROUP_MA =SIMP(statut='f',typ=grma ,validators=NoRepeat(),max='**'), - EVAL_ELGA =SIMP(statut='f',typ='TXM',validators=NoRepeat(),max=1,defaut='VALE', - into=("MIN","MAX","VALE",),), - b_elga_vale =BLOC(condition="(EVAL_ELGA=='VALE')", - POINT =SIMP(statut='o',typ='I' ,validators=NoRepeat(),max='**'), - SOUS_POINT =SIMP(statut='f',typ='I' ,validators=NoRepeat(),max='**'), - ), - ), - - TITRE = SIMP(statut='f',typ='TXM',max=3), - - - ); - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2012 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: mathieu.courtois at edf.fr -def C_TEST_REFERENCE(keyword, max=1): #COMMUN# - """Mots-clés communs pour TEST_RESU, TEST_TABLE, TEST_FONCTION. - On retourne un bloc pour ajouter la règle UN_PARMI.""" - assert keyword in ('CHAM_NO', 'CHAM_ELEM', 'CARTE', 'RESU', 'GENE', 'OBJET', - 'TABLE', 'FONCTION', 'FICHIER') - with_int = keyword not in ('FONCTION', 'FICHIER') - with_complex = keyword not in ('OBJET', 'FICHIER') - with_string = keyword in ('FICHIER', 'TABLE') - vale_abs = keyword not in ('CARTE', 'FICHIER') - type_test = keyword not in ('CARTE', 'GENE', 'OBJET') - multi_prec = keyword in ('RESU', 'GENE') - reference = keyword not in ('FICHIER', ) - un_parmi = keyword not in ('FICHIER', ) - - opts = {} - opts_ref = {} - types = ['',] - def add_type(typ): - ttyp = typ == 'K' and 'TXM' or typ - types.append('_' + typ) - opts['VALE_CALC_' + typ] = SIMP(statut='f',typ=ttyp,max=max) - opts_ref['VALE_REFE_' + typ] = SIMP(statut='f',typ=ttyp,max=max) - if with_int: - add_type('I') - if with_complex: - add_type('C') - if with_string: - add_type('K') - if vale_abs: - opts['VALE_ABS'] = SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON")) - if type_test: - opts['TYPE_TEST'] = SIMP(statut='f',typ='TXM',into=("SOMM_ABS","SOMM","MAX","MIN")) - if not multi_prec: - opts['TOLE_MACHINE'] = SIMP(statut='f',typ='R',defaut=1.e-6) - opts['CRITERE'] = SIMP(statut='f',typ='TXM',defaut='RELATIF',into=("RELATIF","ABSOLU")) - else: - opts['TOLE_MACHINE'] = SIMP(statut='f',typ='R',max=2) - opts['CRITERE'] = SIMP(statut='f',typ='TXM',max=2,into=("RELATIF","ABSOLU")) - if un_parmi: - opts['regles'] = (UN_PARMI(*['VALE_CALC' + t for t in types])) - opts_ref['regles'] = (UN_PARMI(*['VALE_REFE' + t for t in types])) - if reference: - opts['b_reference'] = BLOC(condition = "REFERENCE != None", - VALE_REFE = SIMP(statut='f',typ='R',max=max), - PRECISION = SIMP(statut='f',typ='R',defaut=1.e-3), - **opts_ref) - opts['REFERENCE'] = SIMP(statut='f',typ='TXM', - into=("ANALYTIQUE","SOURCE_EXTERNE","AUTRE_ASTER","NON_DEFINI")) - kwargs = { - 'b_values' : BLOC(condition = "True", - VALE_CALC = SIMP(statut='f',typ='R',max=max), - LEGENDE = SIMP(statut='f',typ='TXM'), - **opts - ) - } - return kwargs - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2012 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: gerald.nicolas at edf.fr -# -# ce fichier contient la liste des "into" possibles pour le mot cle TYPE_CHAM -def C_TYPE_CHAM_INTO( type_cham=None ) : #COMMUN# -# Si aucun argument n'est passe, on utilise tous les types de champs possibles - if ( type_cham is None ) : - l_cham = ["ELEM", "ELNO", "ELGA", "CART", "NOEU"] -# Sinon, on n'utilise que les types passes en argument - else : - l_cham = [] - for typ in type_cham : - l_cham.append(typ) - - l = [] - for gd in C_NOM_GRANDEUR() : - if gd != "VARI_R" : - for typ in l_cham : - l.append(typ+"_"+gd) - else : - # il ne peut pas exister NOEU_VARI_R ni CART_VARI_R (il faut utiliser VAR2_R): - for typ in l_cham : - if typ not in ("CART", "NOEU") : - l.append(typ+"_"+gd) - - return tuple(l) - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2013 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: jean-luc.flejou at edf.fr -AFFE_CARA_ELEM=OPER(nom="AFFE_CARA_ELEM",op= 19,sd_prod=cara_elem, - fr="Affectation de caracteristiques a des elements de structure", - reentrant='n', - UIinfo ={"groupes":("Modélisation",)}, - regles = (AU_MOINS_UN('POUTRE','BARRE','COQUE','CABLE','DISCRET','DISCRET_2D','MASSIF', - 'GRILLE','MEMBRANE','MULTIFIBRE','RIGI_PARASOL'), - PRESENT_PRESENT('MULTIFIBRE','GEOM_FIBRE'), - EXCLUS('DISCRET','DISCRET_2D'),), - MODELE = SIMP(statut='o',typ=modele_sdaster ), - INFO = SIMP(statut='f',typ='I', defaut= 1 ,into=(1,2) ), - VERIF = SIMP(statut='f',typ='TXM',validators=NoRepeat(),max='**',into=("MAILLE","NOEUD") ), - -# ============================================================================ - POUTRE = FACT(statut= 'f',max= '**', - regles = (UN_PARMI('MAILLE','GROUP_MA'),), - MAILLE = SIMP(statut= 'f',typ= ma ,validators= NoRepeat(),max= '**'), - GROUP_MA = SIMP(statut= 'f',typ= grma,validators= NoRepeat(),max= '**'), - SECTION = SIMP(statut= 'o',typ= 'TXM' ,into= ("GENERALE","RECTANGLE","CERCLE") ), - b_generale = BLOC(condition = " SECTION == 'GENERALE'", - VARI_SECT = SIMP(statut= 'f',typ= 'TXM',into= ("CONSTANT","HOMOTHETIQUE"),defaut= "CONSTANT"), - b_constant = BLOC(condition = "VARI_SECT == 'CONSTANT'", - regles = (PRESENT_ABSENT('TABLE_CARA','CARA'), - PRESENT_PRESENT('TABLE_CARA','NOM_SEC'),PRESENT_PRESENT('CARA','VALE')), - TABLE_CARA = SIMP(statut= 'f',typ=table_sdaster), - NOM_SEC = SIMP(statut= 'f',typ= 'TXM'), - CARA = SIMP(statut= 'f',typ= 'TXM',validators= NoRepeat(),min= 4 ,max= 15, - fr= "A,IY,IZ,JX sont des paramètres obligatoires", - into= ("A","IY","IZ","AY","AZ","EY","EZ","JX","RY","RZ","RT", - "JG","IYR2","IZR2","AI") ), - VALE = SIMP(statut= 'f',typ= 'R',min= 4 ,max= 15), ), - b_homothetique = BLOC(condition = "VARI_SECT == 'HOMOTHETIQUE'", - CARA = SIMP(statut= 'o',typ= 'TXM',validators= NoRepeat(),min= 8 ,max= 30, - fr= "A1,A2,IY1,IY2,IZ1,IZ2,JX1,JX2 sont des paramètres obligatoires", - into= ("A1","IY1","IZ1","AY1","AZ1","EY1","EZ1","JX1","RY1", - "RZ1","RT1","JG1","IYR21","IZR21","AI1", - "A2","IY2","IZ2","AY2","AZ2","EY2","EZ2","JX2","RY2", - "RZ2","RT2","JG2","IYR22","IZR22","AI2") ), - VALE = SIMP(statut= 'o',typ= 'R',min= 8 ,max= 30),), - ), - b_rectangle = BLOC(condition = "SECTION == 'RECTANGLE'", - VARI_SECT = SIMP(statut= 'f',typ= 'TXM',into= ("CONSTANT","HOMOTHETIQUE","AFFINE"),defaut= "CONSTANT"), - b_constant = BLOC(condition = "VARI_SECT == 'CONSTANT'", - CARA = SIMP(statut= 'o',typ= 'TXM',validators= NoRepeat(),min= 1 ,max= 4, - into= ("H","EP", "HY","HZ","EPY","EPZ") ), - VALE = SIMP(statut= 'o',typ= 'R',min= 1 ,max= 4), ), - b_homothetique = BLOC(condition = "VARI_SECT == 'HOMOTHETIQUE'", - CARA = SIMP(statut= 'o',typ= 'TXM',validators= NoRepeat(),min= 2 ,max= 8, - into= ("H1","HZ1","HY1","EP1","EPY1","EPZ1", - "H2","HZ2","HY2","EP2","EPY2","EPZ2") ), - VALE = SIMP(statut= 'o',typ= 'R',min= 2 ,max= 8), ), - b_affine = BLOC(condition = "VARI_SECT == 'AFFINE'", - CARA = SIMP(statut= 'o',typ= 'TXM',validators= NoRepeat(),min= 3 ,max= 6, - into= ("HY","EPY", "HZ1","EPZ1","HZ2","EPZ2") ), - VALE = SIMP(statut= 'o',typ= 'R',min= 3 ,max= 6), ), - ), - b_cercle = BLOC(condition = " SECTION == 'CERCLE'", - VARI_SECT = SIMP(statut= 'f',typ= 'TXM',into= ("CONSTANT","HOMOTHETIQUE"),defaut= "CONSTANT"), - b_constant = BLOC(condition = "VARI_SECT == 'CONSTANT'", - CARA = SIMP(statut= 'o',typ= 'TXM',validators= NoRepeat(),min= 1 ,max= 2, - fr= "R est un paramètre obligatoire", - into= ("R","EP") ), - VALE = SIMP(statut= 'o',typ= 'R',min= 1 ,max= 2), ), - b_homothetique = BLOC(condition = "VARI_SECT == 'HOMOTHETIQUE'", - CARA = SIMP(statut= 'o',typ= 'TXM',validators= NoRepeat(),min= 2 ,max= 4, - fr= "R1, R2 sont des paramètres obligatoires", - into= ("R1","R2","EP1","EP2") ), - VALE = SIMP(statut= 'o',typ= 'R',min= 2 ,max= 4), ), - MODI_METRIQUE = SIMP(statut= 'f',typ= 'TXM',defaut= "NON",into= ("OUI","NON") ), - FCX = SIMP(statut= 'f',typ= (fonction_sdaster,nappe_sdaster,formule) ), - TUYAU_NSEC = SIMP(statut= 'f',typ= 'I',val_max= 32,defaut= 16), - TUYAU_NCOU = SIMP(statut= 'f',typ= 'I',val_max= 10,defaut= 3), - ), - ), - -# ============================================================================ - BARRE = FACT(statut='f',max='**', - regles = (UN_PARMI('MAILLE','GROUP_MA'),), - MAILLE = SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), - GROUP_MA = SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - SECTION = SIMP(statut='o',typ='TXM',into=("GENERALE","RECTANGLE","CERCLE") ), - b_generale = BLOC(condition = "SECTION=='GENERALE'", - regles = (PRESENT_ABSENT('TABLE_CARA','CARA'), - PRESENT_PRESENT('TABLE_CARA','NOM_SEC'),PRESENT_PRESENT('CARA','VALE')), - TABLE_CARA = SIMP(statut= 'f',typ=table_sdaster), - NOM_SEC = SIMP(statut= 'f',typ= 'TXM'), - CARA = SIMP(statut='f',typ='TXM',into=("A",) ), - VALE = SIMP(statut='f',typ='R',min=1,max=1 ), ), - b_rectangle = BLOC(condition = "SECTION=='RECTANGLE'", - CARA = SIMP(statut='o',typ='TXM', - into=("H","EP","HZ","HY","EPY","EPZ"), - validators=NoRepeat(),min=1,max=4 ), - VALE = SIMP(statut='o',typ='R',min=1,max=4 ), ), - b_cercle = BLOC(condition = "SECTION=='CERCLE'", - CARA = SIMP(statut='o',typ='TXM',validators=NoRepeat(),min=1,max=2,into=("R","EP") ), - VALE = SIMP(statut='o',typ='R',min=1,max=2 ), ), - FCX = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - ), - -# ============================================================================ - COQUE = FACT(statut='f',max='**', - regles = (UN_PARMI('MAILLE','GROUP_MA' ), - EXCLUS('ANGL_REP','VECTEUR'), - PRESENT_PRESENT( 'EXCENTREMENT', 'INER_ROTA' ), - PRESENT_PRESENT( 'EXCENTREMENT_FO','INER_ROTA' ), - UN_PARMI('EPAIS','EPAIS_FO' ), - EXCLUS('EXCENTREMENT','EXCENTREMENT_FO'),), - MAILLE = SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), - GROUP_MA = SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - EPAIS = SIMP(statut='f',typ='R' ), - EPAIS_FO = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - ANGL_REP = SIMP(statut='f',typ='R',min=2,max=2), - VECTEUR = SIMP(statut='f',typ='R',min=3,max=3), - A_CIS = SIMP(statut='f',typ='R',defaut= 0.8333333E0), - COEF_RIGI_DRZ = SIMP(statut='f',typ='R',defaut= 1.0E-5 ), - COQUE_NCOU = SIMP(statut='f',typ='I',defaut= 1 ), - EXCENTREMENT = SIMP(statut='f',typ='R' ), - EXCENTREMENT_FO = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - INER_ROTA = SIMP(statut='f',typ='TXM',into=("OUI",) ), - MODI_METRIQUE = SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON") ), - ), - -# ============================================================================ - CABLE = FACT(statut='f',max='**', - regles = (UN_PARMI('MAILLE','GROUP_MA'),), - MAILLE = SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), - GROUP_MA = SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - N_INIT = SIMP(statut='f',typ='R',defaut= 5000. ), - SECTION = SIMP(statut='f',typ='R' ), - FCX = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - ), - -# ============================================================================ - DISCRET = FACT(statut='f',max='**', - REPERE = SIMP(statut='f',typ='TXM',into=("LOCAL","GLOBAL") ), - AMOR_HYST = SIMP(statut='f',typ='R' ), - - SYME = SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON"),), - b_SYME_OUI = BLOC(condition="SYME=='OUI'", - fr="SYMETRIQUE: Affectation de matrices de rigidité, de masse ou d'amortissement à des mailles ou noeuds", - CARA = SIMP(statut='o',typ='TXM',validators=NoRepeat(),max=1,defaut="None", - into=("K_T_D_N", "K_T_D_L", "K_TR_D_N", "K_TR_D_L", "K_T_N", "K_T_L", "K_TR_N", "K_TR_L", - "M_T_D_N", "M_T_D_L", "M_TR_D_N", "M_TR_D_L", "M_T_N", "M_T_L", "M_TR_N", "M_TR_L", - "A_T_D_N", "A_T_D_L", "A_TR_D_N", "A_TR_D_L", "A_T_N", "A_T_L", "A_TR_N", "A_TR_L",),), - # Affection des caractéristiques de RIGIDITE/AMORTISSEMENT/MASSE - b_AK_T_D_N = BLOC(condition = "((CARA=='K_T_D_N')or(CARA=='A_T_D_N'))", - fr="NOEUD: 3 valeurs (triangulaire supérieure par colonne)", - regles = (UN_PARMI('MAILLE','GROUP_MA','NOEUD','GROUP_NO'),), - NOEUD = SIMP(statut='f',typ=no ,validators=NoRepeat(),max='**'), - MAILLE = SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), - GROUP_MA = SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - GROUP_NO = SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'), - VALE = SIMP(statut='o',typ='R',min=3 ,max=3 ),), - b_AK_T_D_L = BLOC(condition = "((CARA=='K_T_D_L')or(CARA=='A_T_D_L'))", - fr="SEGMENT: 3 valeurs (triangulaire supérieure par colonne)", - regles = (UN_PARMI('MAILLE','GROUP_MA'),), - MAILLE = SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), - GROUP_MA = SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - VALE = SIMP(statut='o',typ='R',min=3 ,max=3 ),), - b_AK_TR_D_N = BLOC(condition = "((CARA=='K_TR_D_N')or(CARA=='A_TR_D_N'))", - fr="NOEUD: 6 valeurs (triangulaire supérieure par colonne)", - regles = (UN_PARMI('MAILLE','GROUP_MA','NOEUD','GROUP_NO'),), - NOEUD = SIMP(statut='f',typ=no ,validators=NoRepeat(),max='**'), - MAILLE = SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), - GROUP_MA = SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - GROUP_NO = SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'), - VALE = SIMP(statut='o',typ='R',min=6 ,max=6 ),), - b_AK_TR_D_L = BLOC(condition = "((CARA=='K_TR_D_L')or(CARA=='A_TR_D_L'))", - fr="SEGMENT: 6 valeurs (triangulaire supérieure par colonne)", - regles = (UN_PARMI('MAILLE','GROUP_MA'),), - MAILLE = SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), - GROUP_MA = SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - VALE = SIMP(statut='o',typ='R',min=6 ,max=6 ),), - b_MAK_T_N = BLOC(condition = "((CARA=='K_T_N')or(CARA=='A_T_N')or(CARA=='M_T_N'))", - fr="NOEUD: 6 valeurs (triangulaire supérieure par colonne)", - regles = (UN_PARMI('MAILLE','GROUP_MA','NOEUD','GROUP_NO'),), - NOEUD = SIMP(statut='f',typ=no ,validators=NoRepeat(),max='**'), - MAILLE = SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), - GROUP_MA = SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - GROUP_NO = SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'), - VALE = SIMP(statut='o',typ='R',min=6 ,max=6 ),), - b_MAK_T_L = BLOC(condition = "((CARA=='K_T_L')or(CARA=='A_T_L')or(CARA=='M_T_L'))", - fr="SEGMENT: 21 valeurs (triangulaire supérieure par colonne)", - regles = (UN_PARMI('MAILLE','GROUP_MA'),), - MAILLE = SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), - GROUP_MA = SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - VALE = SIMP(statut='o',typ='R',min=21,max=21),), - b_MAK_TR_N = BLOC(condition = "((CARA=='K_TR_N')or(CARA=='A_TR_N')or(CARA=='M_TR_N'))", - fr="NOEUD: 21 valeurs (triangulaire supérieure par colonne)", - regles = (UN_PARMI('MAILLE','GROUP_MA','NOEUD','GROUP_NO'),), - NOEUD = SIMP(statut='f',typ=no ,validators=NoRepeat(),max='**'), - MAILLE = SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), - GROUP_MA = SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - GROUP_NO = SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'), - VALE = SIMP(statut='o',typ='R',min=21,max=21),), - b_MAK_TR_L = BLOC(condition = "((CARA=='K_TR_L')or(CARA=='A_TR_L')or(CARA=='M_TR_L'))", - fr="SEGMENT: 78 valeurs (triangulaire supérieure par colonne)", - regles = (UN_PARMI('MAILLE','GROUP_MA'),), - MAILLE = SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), - GROUP_MA = SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - VALE = SIMP(statut='o',typ='R',min=78,max=78),), - # Affection des caractéristiques de MASSE - b_M_T_D_N = BLOC(condition = "(CARA=='M_T_D_N')", - fr="NOEUD: 1 valeur de masse", - regles = (UN_PARMI('MAILLE','GROUP_MA','NOEUD','GROUP_NO'),), - NOEUD = SIMP(statut='f',typ=no ,validators=NoRepeat(),max='**'), - MAILLE = SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), - GROUP_MA = SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - GROUP_NO = SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'), - VALE = SIMP(statut='o',typ='R',min=1 ,max=1 ),), - b_M_T_D_L = BLOC(condition = "(CARA=='M_T_D_L')", - fr="SEGMENT: 1 valeur de masse", - regles = (UN_PARMI('MAILLE','GROUP_MA','NOEUD','GROUP_NO'),), - NOEUD = SIMP(statut='f',typ=no ,validators=NoRepeat(),max='**'), - MAILLE = SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), - GROUP_MA = SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - GROUP_NO = SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'), - VALE = SIMP(statut='o',typ='R',min=1 ,max=1 ),), - b_M_TR_D_N = BLOC(condition = "(CARA=='M_TR_D_N')", - fr="NOEUD: 1 valeur de masse, 6 valeurs du tenseur d'inertie, 3 composantes du vecteur d'excentrement", - regles = (UN_PARMI('MAILLE','GROUP_MA','NOEUD','GROUP_NO'),), - NOEUD = SIMP(statut='f',typ=no ,validators=NoRepeat(),max='**'), - MAILLE = SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), - GROUP_MA = SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - GROUP_NO = SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'), - VALE = SIMP(statut='o',typ='R',min=10,max=10),), - b_M_TR_D_L = BLOC(condition = "(CARA=='M_TR_D_L')", - fr="SEGMENT: 1 valeur de masse, 3 valeurs du tenseur d'inertie", - regles = (UN_PARMI('MAILLE','GROUP_MA','NOEUD','GROUP_NO'),), - NOEUD = SIMP(statut='f',typ=no ,validators=NoRepeat(),max='**'), - MAILLE = SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), - GROUP_MA = SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - GROUP_NO = SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'), - VALE = SIMP(statut='o',typ='R',min=4,max=4),), - ), - # éléments à matrice non-symétrique - # b_MAK_T_N_NS 'K_T_N' 'A_T_N' 'M_T_N' - # b_MAK_T_L_NS 'K_T_L' 'A_T_L' 'M_T_L' - # b_MAK_TR_N_NS 'K_TR_N' 'A_TR_N' 'M_TR_N' - # b_MAK_TR_L_NS 'K_TR_L' 'A_TR_L' 'M_TR_L' - b_SYME_NON = BLOC(condition="SYME=='NON'", - fr="NON-SYMETRIQUE: Affectation de matrices de rigidité, de masse ou d'amortissement à des mailles ou noeuds", - CARA = SIMP(statut='o',typ='TXM',validators=NoRepeat(),max=1,defaut="None", - into=("K_T_N", "K_T_L", "K_TR_N", "K_TR_L", - "M_T_N", "M_T_L", "M_TR_N", "M_TR_L", - "A_T_N", "A_T_L", "A_TR_N", "A_TR_L",),), - # Affection des caractéristiques de RIGIDITE/AMORTISSEMENT/MASSE : NON-SYMETRIQUE - b_MAK_T_N_NS = BLOC(condition = "((CARA=='K_T_N')or(CARA=='A_T_N')or(CARA=='M_T_N'))", - fr="NOEUD: 9 valeurs (matrice pleine par colonne)", - regles = (UN_PARMI('MAILLE','GROUP_MA','NOEUD','GROUP_NO'),), - NOEUD = SIMP(statut='f',typ=no ,validators=NoRepeat(),max='**'), - MAILLE = SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), - GROUP_MA = SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - GROUP_NO = SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'), - VALE = SIMP(statut='o',typ='R',min=9 ,max=9 ),), - b_MAK_T_L_NS = BLOC(condition = "((CARA=='K_T_L')or(CARA=='A_T_L')or(CARA=='M_T_L'))", - fr="SEGMENT: 36 valeurs (matrice pleine par colonne)", - regles = (UN_PARMI('MAILLE','GROUP_MA'),), - MAILLE = SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), - GROUP_MA = SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - VALE = SIMP(statut='o',typ='R',min=36,max=36),), - b_MAK_TR_N_NS = BLOC(condition = "((CARA=='K_TR_N')or(CARA=='A_TR_N')or(CARA=='M_TR_N'))", - fr="NOEUD: 36 valeurs (matrice pleine par colonne)", - regles = (UN_PARMI('MAILLE','GROUP_MA','NOEUD','GROUP_NO'),), - NOEUD = SIMP(statut='f',typ=no ,validators=NoRepeat(),max='**'), - MAILLE = SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), - GROUP_MA = SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - GROUP_NO = SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'), - VALE = SIMP(statut='o',typ='R',min=36,max=36),), - b_MAK_TR_L_NS = BLOC(condition = "((CARA=='K_TR_L')or(CARA=='A_TR_L')or(CARA=='M_TR_L'))", - fr="SEGMENT: 144 valeurs (matrice pleine par colonne)", - regles = (UN_PARMI('MAILLE','GROUP_MA'),), - MAILLE = SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), - GROUP_MA = SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - VALE = SIMP(statut='o',typ='R',min=144,max=144),), - ), - ), -# ============================================================================ - DISCRET_2D = FACT(statut='f',max='**', - REPERE = SIMP(statut='f',typ='TXM',into=("LOCAL","GLOBAL") ), - AMOR_HYST = SIMP(statut='f',typ='R' ), - SYME = SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON"),), - b_SYME_OUI = BLOC(condition="SYME=='OUI'", - fr="SYMETRIQUE: Affectation de matrices de rigidité, de masse ou d'amortissement à des mailles ou noeuds", - CARA = SIMP(statut='o',typ='TXM',validators=NoRepeat(),max=1,defaut="None", - into=("K_T_D_N", "K_T_D_L", "K_TR_D_N", "K_TR_D_L", "K_T_N", "K_T_L", "K_TR_N", "K_TR_L", - "M_T_D_N", "M_T_D_L", "M_TR_D_N", "M_TR_D_L", "M_T_N", "M_T_L", "M_TR_N", "M_TR_L", - "A_T_D_N", "A_T_D_L", "A_TR_D_N", "A_TR_D_L", "A_T_N", "A_T_L", "A_TR_N", "A_TR_L",),), - # Affection des caractéristiques de RIGIDITE/AMORTISSEMENT/MASSE - b_AK_T_D_N = BLOC(condition = "((CARA=='K_T_D_N')or(CARA=='A_T_D_N'))", - fr="NOEUD: 2 valeurs (triangulaire supérieure par colonne)", - regles = (UN_PARMI('MAILLE','GROUP_MA','NOEUD','GROUP_NO'),), - NOEUD = SIMP(statut='f',typ=no ,validators=NoRepeat(),max='**'), - MAILLE = SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), - GROUP_MA = SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - GROUP_NO = SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'), - VALE = SIMP(statut='o',typ='R',min=2 ,max=2 ),), - b_AK_T_D_L = BLOC(condition = "((CARA=='K_T_D_L')or(CARA=='A_T_D_L'))", - fr="SEGMENT: 2 valeurs (triangulaire supérieure par colonne)", - regles = (UN_PARMI('MAILLE','GROUP_MA'),), - MAILLE = SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), - GROUP_MA = SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - VALE = SIMP(statut='o',typ='R',min=2 ,max=2 ),), - b_AK_TR_D_N = BLOC(condition = "((CARA=='K_TR_D_N')or(CARA=='A_TR_D_N'))", - fr="NOEUD: 3 valeurs (triangulaire supérieure par colonne)", - regles = (UN_PARMI('MAILLE','GROUP_MA','NOEUD','GROUP_NO'),), - NOEUD = SIMP(statut='f',typ=no ,validators=NoRepeat(),max='**'), - MAILLE = SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), - GROUP_MA = SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - GROUP_NO = SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'), - VALE = SIMP(statut='o',typ='R',min=3 ,max=3 ),), - b_AK_TR_D_L = BLOC(condition = "((CARA=='K_TR_D_L')or(CARA=='A_TR_D_L'))", - fr="SEGMENT: 3 valeurs (triangulaire supérieure par colonne)", - regles = (UN_PARMI('MAILLE','GROUP_MA'),), - MAILLE = SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), - GROUP_MA = SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - VALE = SIMP(statut='o',typ='R',min=3 ,max=3 ),), - b_MAK_T_N = BLOC(condition = "((CARA=='K_T_N')or(CARA=='A_T_N')or(CARA=='M_T_N'))", - fr="NOEUD: 3 valeurs (triangulaire supérieure par colonne)", - regles = (UN_PARMI('MAILLE','GROUP_MA','NOEUD','GROUP_NO'),), - NOEUD = SIMP(statut='f',typ=no ,validators=NoRepeat(),max='**'), - MAILLE = SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), - GROUP_MA = SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - GROUP_NO = SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'), - VALE = SIMP(statut='o',typ='R',min=3 ,max=3 ),), - b_MAK_T_L = BLOC(condition = "((CARA=='K_T_L')or(CARA=='A_T_L')or(CARA=='M_T_L'))", - fr="SEGMENT: 10 valeurs (triangulaire supérieure par colonne)", - regles = (UN_PARMI('MAILLE','GROUP_MA'),), - MAILLE = SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), - GROUP_MA = SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - VALE = SIMP(statut='o',typ='R',min=10,max=10),), - b_MAK_TR_N = BLOC(condition = "((CARA=='K_TR_N')or(CARA=='A_TR_N')or(CARA=='M_TR_N'))", - fr="NOEUD: 6 valeurs (triangulaire supérieure par colonne)", - regles = (UN_PARMI('MAILLE','GROUP_MA','NOEUD','GROUP_NO'),), - NOEUD = SIMP(statut='f',typ=no ,validators=NoRepeat(),max='**'), - MAILLE = SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), - GROUP_MA = SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - GROUP_NO = SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'), - VALE = SIMP(statut='o',typ='R',min=6 ,max=6),), - b_MAK_TR_L = BLOC(condition = "((CARA=='K_TR_L')or(CARA=='A_TR_L')or(CARA=='M_TR_L'))", - fr="SEGMENT: 21 valeurs (triangulaire supérieure par colonne)", - regles = (UN_PARMI('MAILLE','GROUP_MA'),), - MAILLE = SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), - GROUP_MA = SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - VALE = SIMP(statut='o',typ='R',min=21,max=21),), - # Affection des caractéristiques de MASSE - b_M_T_D_N = BLOC(condition = "(CARA=='M_T_D_N')", - fr="NOEUD: 1 valeur de masse", - regles = (UN_PARMI('MAILLE','GROUP_MA','NOEUD','GROUP_NO'),), - NOEUD = SIMP(statut='f',typ=no ,validators=NoRepeat(),max='**'), - MAILLE = SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), - GROUP_MA = SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - GROUP_NO = SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'), - VALE = SIMP(statut='o',typ='R',min=1 ,max=1 ),), - b_M_T_D_L = BLOC(condition = "(CARA=='M_T_D_L')", - fr="SEGMENT: 1 valeur de masse", - regles = (UN_PARMI('MAILLE','GROUP_MA','NOEUD','GROUP_NO'),), - NOEUD = SIMP(statut='f',typ=no ,validators=NoRepeat(),max='**'), - MAILLE = SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), - GROUP_MA = SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - GROUP_NO = SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'), - VALE = SIMP(statut='o',typ='R',min=1 ,max=1 ),), - b_M_TR_D_N = BLOC(condition = "(CARA=='M_TR_D_N')", - fr="NOEUD: 1 valeur de masse, 1 valeur d'inertie, 2 composantes du vecteur d'excentrement", - regles = (UN_PARMI('MAILLE','GROUP_MA','NOEUD','GROUP_NO'),), - NOEUD = SIMP(statut='f',typ=no ,validators=NoRepeat(),max='**'), - MAILLE = SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), - GROUP_MA = SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - GROUP_NO = SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'), - VALE = SIMP(statut='o',typ='R',min=4 ,max=4 ),), - b_M_TR_D_L = BLOC(condition = "(CARA=='M_TR_D_L')", - fr="SEGMENT: 1 valeur de masse, 1 valeur d'inertie", - regles = (UN_PARMI('MAILLE','GROUP_MA','NOEUD','GROUP_NO'),), - NOEUD = SIMP(statut='f',typ=no ,validators=NoRepeat(),max='**'), - MAILLE = SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), - GROUP_MA = SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - GROUP_NO = SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'), - VALE = SIMP(statut='o',typ='R',min=2 ,max=2 ),), - ), - # éléments à matrice non-symétrique - # b_MAK_T_N_NS 'K_T_N' 'A_T_N' 'M_T_N' - # b_MAK_T_L_NS 'K_T_L' 'A_T_L' 'M_T_L' - # b_MAK_TR_N_NS 'K_TR_N' 'A_TR_N' 'M_TR_N' - # b_MAK_TR_L_NS 'K_TR_L' 'A_TR_L' 'M_TR_L' - b_SYME_NON = BLOC(condition="SYME=='NON'", - fr="NON-SYMETRIQUE: Affectation de matrices de rigidité, de masse ou d'amortissement à des mailles ou noeuds", - CARA = SIMP(statut='o',typ='TXM',validators=NoRepeat(),max=1,defaut="None", - into=("K_T_N", "K_T_L", "K_TR_N", "K_TR_L", - "M_T_N", "M_T_L", "M_TR_N", "M_TR_L", - "A_T_N", "A_T_L", "A_TR_N", "A_TR_L",),), - # Affection des caractéristiques de RIGIDITE/AMORTISSEMENT/MASSE : NON-SYMETRIQUE - b_MAK_T_N_NS = BLOC(condition = "((CARA=='K_T_N')or(CARA=='A_T_N')or(CARA=='M_T_N'))", - fr="NOEUD: 4 valeurs (matrice pleine par colonne)", - regles = (UN_PARMI('MAILLE','GROUP_MA','NOEUD','GROUP_NO'),), - NOEUD = SIMP(statut='f',typ=no ,validators=NoRepeat(),max='**'), - MAILLE = SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), - GROUP_MA = SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - GROUP_NO = SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'), - VALE = SIMP(statut='o',typ='R',min=4 ,max=4 ),), - b_MAK_T_L_NS = BLOC(condition = "((CARA=='K_T_L')or(CARA=='A_T_L')or(CARA=='M_T_L'))", - fr="SEGMENT: 16 valeurs (matrice pleine par colonne)", - regles = (UN_PARMI('MAILLE','GROUP_MA'),), - MAILLE = SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), - GROUP_MA = SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - VALE = SIMP(statut='o',typ='R',min=16,max=16),), - b_MAK_TR_N_NS = BLOC(condition = "((CARA=='K_TR_N')or(CARA=='A_TR_N')or(CARA=='M_TR_N'))", - fr="NOEUD: 9 valeurs (matrice pleine par colonne)", - regles = (UN_PARMI('MAILLE','GROUP_MA','NOEUD','GROUP_NO'),), - NOEUD = SIMP(statut='f',typ=no ,validators=NoRepeat(),max='**'), - MAILLE = SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), - GROUP_MA = SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - GROUP_NO = SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'), - VALE = SIMP(statut='o',typ='R',min=9 ,max=9),), - b_MAK_TR_L_NS = BLOC(condition = "((CARA=='K_TR_L')or(CARA=='A_TR_L')or(CARA=='M_TR_L'))", - fr="SEGMENT: 36 valeurs (matrice pleine par colonne)", - regles = (UN_PARMI('MAILLE','GROUP_MA'),), - MAILLE = SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), - GROUP_MA = SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - VALE = SIMP(statut='o',typ='R',min=36,max=36),), - ), - ), -# ============================================================================ - ORIENTATION = FACT(statut='f',max='**', - regles = (UN_PARMI('MAILLE','GROUP_MA','NOEUD','GROUP_NO' ),), - MAILLE = SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), - GROUP_MA = SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - NOEUD = SIMP(statut='f',typ=no ,validators=NoRepeat(),max='**'), - GROUP_NO = SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'), - CARA = SIMP(statut='o',typ='TXM', - into=("VECT_Y","ANGL_VRIL","VECT_X_Y","ANGL_NAUT","GENE_TUYAU") ), - VALE = SIMP(statut='o',typ='R',max='**'), - PRECISION = SIMP(statut='f',typ='R',defaut= 1.0E-4 ), - CRITERE = SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU") ), - ), - -# ============================================================================ - DEFI_ARC = FACT(statut='f',max='**', - regles = (UN_PARMI('MAILLE','GROUP_MA'), - UN_PARMI('ORIE_ARC','CENTRE','NOEUD_CENTRE','GROUP_NO_CENTRE', - 'POIN_TANG','NOEUD_POIN_TANG','GROUP_NO_POIN_TG'), - PRESENT_PRESENT('ORIE_ARC','RAYON'), - EXCLUS('COEF_FLEX','COEF_FLEX_XY'), - EXCLUS('COEF_FLEX','COEF_FLEX_XZ'), - EXCLUS('INDI_SIGM','INDI_SIGM_XY'), - EXCLUS('INDI_SIGM','INDI_SIGM_XZ'), - PRESENT_PRESENT('COEF_FLEX_XY','COEF_FLEX_XZ'), - PRESENT_PRESENT('INDI_SIGM_XY','INDI_SIGM_XZ'),), - MAILLE = SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), - GROUP_MA = SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - ORIE_ARC = SIMP(statut='f',typ='R'), - CENTRE = SIMP(statut='f',typ='R',max='**'), - NOEUD_CENTRE = SIMP(statut='f',typ=no), - GROUP_NO_CENTRE = SIMP(statut='f',typ=grno), - POIN_TANG = SIMP(statut='f',typ='R',max='**'), - NOEUD_POIN_TANG = SIMP(statut='f',typ=no), - GROUP_NO_POIN_TG = SIMP(statut='f',typ=grno), - RAYON = SIMP(statut='f',typ='R'), - COEF_FLEX = SIMP(statut='f',typ='R'), - INDI_SIGM = SIMP(statut='f',typ='R'), - COEF_FLEX_XY = SIMP(statut='f',typ='R'), - INDI_SIGM_XY = SIMP(statut='f',typ='R'), - COEF_FLEX_XZ = SIMP(statut='f',typ='R'), - INDI_SIGM_XZ = SIMP(statut='f',typ='R'), - PRECISION = SIMP(statut='f',typ='R',defaut= 1.0E-3), - CRITERE = SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU") ), - ), - -#============================================================================ - MASSIF = FACT(statut='f',max='**', - regles = (UN_PARMI('MAILLE','GROUP_MA'), - UN_PARMI('ANGL_REP','ANGL_AXE','ANGL_EULER'), - EXCLUS('ANGL_REP','ANGL_EULER'), - EXCLUS('ANGL_REP','ANGL_AXE'), - EXCLUS('ANGL_REP','ORIG_AXE'), - PRESENT_PRESENT('ANGL_AXE','ORIG_AXE'), ), - MAILLE = SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), - GROUP_MA = SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - ANGL_REP = SIMP(statut='f',typ='R',max=3), - ANGL_EULER = SIMP(statut='f',typ='R',min=3,max=3), - ANGL_AXE = SIMP(statut='f',typ='R',max=2), - ORIG_AXE = SIMP(statut='f',typ='R',max=3), - ), - -# ============================================================================ - POUTRE_FLUI = FACT(statut='f',max='**', - regles = (UN_PARMI('MAILLE','GROUP_MA'),), - MAILLE = SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), - GROUP_MA = SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - B_T = SIMP(statut='o',typ='R'), - B_N = SIMP(statut='o',typ='R'), - B_TN = SIMP(statut='o',typ='R',defaut= 0.E+0 ), - A_FLUI = SIMP(statut='o',typ='R'), - A_CELL = SIMP(statut='o',typ='R'), - COEF_ECHELLE = SIMP(statut='o',typ='R'), - ), - -# ============================================================================ - GRILLE = FACT(statut='f',max='**', - regles = (UN_PARMI('MAILLE','GROUP_MA'), - EXCLUS('ANGL_REP','AXE'), - UN_PARMI('SECTION','SECTION_FO' ), - EXCLUS('EXCENTREMENT','EXCENTREMENT_FO'), ), - MAILLE = SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), - GROUP_MA = SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - SECTION = SIMP(statut='f',typ='R'), - SECTION_FO = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - ANGL_REP = SIMP(statut='f',typ='R',max=2), - EXCENTREMENT = SIMP(statut='f',typ='R'), - EXCENTREMENT_FO = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - AXE = SIMP(statut='f',typ='R',max='**'), - COEF_RIGI_DRZ = SIMP(statut='f',typ='R',defaut= 1.0E-10 ), - ), - -# ============================================================================ - MEMBRANE = FACT(statut='f',max='**', - regles = (UN_PARMI('MAILLE','GROUP_MA'), - EXCLUS('ANGL_REP','AXE'), - ), - MAILLE = SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), - GROUP_MA = SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - ANGL_REP = SIMP(statut='f',typ='R',max=2), - AXE = SIMP(statut='f',typ='R',max='**'), - ), - -#============================================================================ - RIGI_PARASOL = FACT(statut='f',max='**', - regles = (UN_PARMI('COEF_GROUP','FONC_GROUP'), - UN_PARMI('COOR_CENTRE','NOEUD_CENTRE','GROUP_NO_CENTRE'), - EXCLUS('GROUP_MA_POI1','GROUP_MA_SEG2'),), - GROUP_MA = SIMP(statut='o',typ=grma,validators=NoRepeat(),max='**', - fr="Surface servant à répartir les caractéristiques des discrets"), - GROUP_MA_POI1 = SIMP(statut='f',typ=grma,validators=NoRepeat(),max=1, - fr="Mailles de type point correspondant aux discrets"), - GROUP_MA_SEG2 = SIMP(statut='f',typ=grma,validators=NoRepeat(),max=1, - fr="Mailles de type seg2 correspondant aux discrets"), - FONC_GROUP = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - COEF_GROUP = SIMP(statut='f',typ='R',max='**'), - REPERE = SIMP(statut='f',typ='TXM',into=("LOCAL","GLOBAL") ), - CARA = SIMP(statut='o',typ='TXM',validators=NoRepeat(),max=2, - into=("K_TR_D_N","K_T_D_N","K_TR_D_L","K_T_D_L", - "A_TR_D_N","A_T_D_N","A_TR_D_L","A_T_D_L"), - fr="Choix des types de discrets du tapis de ressorts." ), - b_cara= BLOC(condition =""" au_moins_un(CARA, ["K_TR_D_N","K_T_D_N","K_TR_D_L","K_T_D_L", - "A_TR_D_N","A_T_D_N","A_TR_D_L","A_T_D_L"]) or \ - (len(CARA)==2 and CARA[0][2:]==CARA[1][2:])""", - fr="Valeurs pour les discrets du tapis de ressorts.", - VALE = SIMP(statut='o',typ='R',max='**', - fr="Valeurs pour les discrets du tapis de ressorts.",), - ), - GROUP_NO_CENTRE = SIMP(statut='f',typ=grno), - NOEUD_CENTRE = SIMP(statut='f',typ=no), - COOR_CENTRE = SIMP(statut='f',typ='R',min=2,max=3), - EUROPLEXUS = SIMP(statut='f',typ='TXM',into=("OUI","NON"),defaut="NON"), - UNITE = SIMP(statut='f',typ='I',val_min=1), - ), - -#============================================================================ - RIGI_MISS_3D = FACT(statut='f',max='**', - GROUP_MA_POI1 = SIMP(statut='o',typ=grma,max=1), - GROUP_MA_SEG2 = SIMP(statut='f',typ=grma,max=1), - FREQ_EXTR = SIMP(statut='o',typ='R',max=1), - UNITE_RESU_IMPE = SIMP(statut='f',typ='I',defaut=30), - ), - -#============================================================================ - MASS_AJOU = FACT(statut='f',max='**', - GROUP_MA = SIMP(statut='o',typ=grma,validators=NoRepeat(),max='**', - fr="Surface servant à répartir les caractéristiques des discrets"), - GROUP_MA_POI1 = SIMP(statut='o',typ=grma,validators=NoRepeat(),max=1, - fr="Mailles de type point correspondant aux discrets"), - FONC_GROUP = SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule) ), - ), - -#============================================================================ - GEOM_FIBRE = SIMP(statut='f',max=1,typ=gfibre_sdaster, - fr="Donner le nom de la SD regroupant tous les groupes de fibres (issue de DEFI_GEOM_FIBRE)"), - - MULTIFIBRE = FACT(statut='f',max='**', - regles = (AU_MOINS_UN('GROUP_MA','MAILLE'),), - GROUP_MA = SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - MAILLE = SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), - GROUP_FIBRE = SIMP(statut='o',typ='TXM',max='**'), - PREC_AIRE = SIMP(statut= 'f',typ= 'R',defaut= 0.01), - PREC_INERTIE = SIMP(statut= 'f',typ= 'R',defaut= 0.1), - ), -); - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# -AFFE_CHAR_ACOU=OPER(nom="AFFE_CHAR_ACOU",op= 68,sd_prod=char_acou, - fr="Affectation de charges et conditions aux limites acoustiques constantes", - reentrant='n', - UIinfo={"groupes":("Chargements","Acoustique",)}, - regles=(AU_MOINS_UN('PRES_IMPO','VITE_FACE','IMPE_FACE','LIAISON_UNIF' ),), - MODELE =SIMP(statut='o',typ=modele_sdaster ), - METHODE =SIMP(statut='c',typ='TXM',fr="Stratégie de résolution pour les pressions imposées", - into=('DUALISATION',),defaut='DUALISATION',), - # METHODE='ELIMINATION' est traité dans le fortran mais dangereux actuellement - PRES_IMPO =FACT(statut='f',max='**', - regles=(AU_MOINS_UN('TOUT','GROUP_MA','MAILLE','GROUP_NO','NOEUD'),), - TOUT =SIMP(statut='f',typ='TXM',into=("OUI",) ), - GROUP_NO =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'), - NOEUD =SIMP(statut='f',typ=no ,validators=NoRepeat(),max='**'), - GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - MAILLE =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), - SANS_GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - SANS_MAILLE =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), - SANS_GROUP_NO =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'), - SANS_NOEUD =SIMP(statut='f',typ=no ,validators=NoRepeat(),max='**'), - PRES =SIMP(statut='o',typ='C' ), - ), - VITE_FACE =FACT(statut='f',max='**', - regles=(AU_MOINS_UN('TOUT','GROUP_MA','MAILLE'), - PRESENT_ABSENT('TOUT','GROUP_MA','MAILLE'),), - TOUT =SIMP(statut='f',typ='TXM',into=("OUI",) ), - GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - MAILLE =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), - VNOR =SIMP(statut='o',typ='C' ), - ), - IMPE_FACE =FACT(statut='f',max='**', - regles=(AU_MOINS_UN('TOUT','GROUP_MA','MAILLE'), - PRESENT_ABSENT('TOUT','GROUP_MA','MAILLE'),), - TOUT =SIMP(statut='f',typ='TXM',into=("OUI",) ), - GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - MAILLE =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), - IMPE =SIMP(statut='o',typ='C' ), - ), - LIAISON_UNIF =FACT(statut='f',max='**', - regles=(UN_PARMI('GROUP_NO','NOEUD','GROUP_MA','MAILLE' ),), - GROUP_NO =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'), - NOEUD =SIMP(statut='f',typ=no ,validators=NoRepeat(),max='**'), - GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - MAILLE =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), - DDL =SIMP(statut='o',typ='TXM',max='**'), - ), -) ; - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2013 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: jacques.pellet at edf.fr -def affe_char_cine_prod(MECA_IMPO,THER_IMPO,ACOU_IMPO,EVOL_IMPO,**args): - if MECA_IMPO != None : return char_cine_meca - if THER_IMPO != None : return char_cine_ther - if ACOU_IMPO != None : return char_cine_acou - if EVOL_IMPO != None : - if AsType(EVOL_IMPO) in (evol_elas,evol_noli) : - return char_cine_meca - elif AsType(EVOL_IMPO) in (evol_ther,) : - return char_cine_ther - else : - raise AsException("Extension à faire ...") - - raise AsException("type de concept resultat non prevu") - - -AFFE_CHAR_CINE=OPER(nom="AFFE_CHAR_CINE",op= 101,sd_prod=affe_char_cine_prod - ,fr="Affectation de conditions aux limites cinématiques (U=U0) pour un traitement sans dualisation", - reentrant='n', - UIinfo={"groupes":("Chargements","Mécanique",)}, - regles=(UN_PARMI('MECA_IMPO','THER_IMPO','ACOU_IMPO','EVOL_IMPO'), - ), - MODELE =SIMP(statut='o',typ=modele_sdaster ), - - MECA_IMPO =FACT(statut='f',max='**', - regles=(UN_PARMI('TOUT','GROUP_MA','MAILLE','GROUP_NO','NOEUD'), - AU_MOINS_UN('DX','DY','DZ','DRX','DRY','DRZ','GRX','PRES','PHI', - 'TEMP','PRE1','PRE2','UI2','UI3','VI2','VI3','WI2','WI3','UO2', - 'UO3','VO2','VO3','WO2','WO3','UI4','UI5','VI4','VI5','WI4', - 'WI5','UO4','UO5','VO4','VO5','WO4','WO5','UI6','UO6','VI6', - 'VO6','WI6','WO6','WO','WI1','WO1','GONF', - 'H1X','H1Y','H1Z','E1X','E1Y','E1Z','E2X','E2Y','E2Z', - 'E3X','E3Y','E3Z','E4X','E4Y','E4Z','V11','V12','V13','V21','V22', - 'V23','V31','V32','V33','PRES11','PRES12','PRES13','PRES21', - 'PRES22','PRES23','PRES31','PRES32','PRES33','LH1','GLIS'),), - TOUT =SIMP(statut='f',typ='TXM',into=("OUI",) ), - GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - MAILLE =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), - GROUP_NO =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'), - NOEUD =SIMP(statut='f',typ=no ,validators=NoRepeat(),max='**'), - DX =SIMP(statut='f',typ='R' ), - DY =SIMP(statut='f',typ='R' ), - DZ =SIMP(statut='f',typ='R' ), - DRX =SIMP(statut='f',typ='R' ), - DRY =SIMP(statut='f',typ='R' ), - DRZ =SIMP(statut='f',typ='R' ), - GRX =SIMP(statut='f',typ='R' ), - PRES =SIMP(statut='f',typ='R' ), - PHI =SIMP(statut='f',typ='R' ), - TEMP =SIMP(statut='f',typ='R' ), - PRE1 =SIMP(statut='f',typ='R' ), - PRE2 =SIMP(statut='f',typ='R' ), - UI2 =SIMP(statut='f',typ='R' ), - UI3 =SIMP(statut='f',typ='R' ), - UI4 =SIMP(statut='f',typ='R' ), - UI5 =SIMP(statut='f',typ='R' ), - UI6 =SIMP(statut='f',typ='R' ), - UO2 =SIMP(statut='f',typ='R' ), - UO3 =SIMP(statut='f',typ='R' ), - UO4 =SIMP(statut='f',typ='R' ), - UO5 =SIMP(statut='f',typ='R' ), - UO6 =SIMP(statut='f',typ='R' ), - VI2 =SIMP(statut='f',typ='R' ), - VI3 =SIMP(statut='f',typ='R' ), - VI4 =SIMP(statut='f',typ='R' ), - VI5 =SIMP(statut='f',typ='R' ), - VI6 =SIMP(statut='f',typ='R' ), - VO2 =SIMP(statut='f',typ='R' ), - VO3 =SIMP(statut='f',typ='R' ), - VO4 =SIMP(statut='f',typ='R' ), - VO5 =SIMP(statut='f',typ='R' ), - VO6 =SIMP(statut='f',typ='R' ), - WI2 =SIMP(statut='f',typ='R' ), - WI3 =SIMP(statut='f',typ='R' ), - WI4 =SIMP(statut='f',typ='R' ), - WI5 =SIMP(statut='f',typ='R' ), - WI6 =SIMP(statut='f',typ='R' ), - WO2 =SIMP(statut='f',typ='R' ), - WO3 =SIMP(statut='f',typ='R' ), - WO4 =SIMP(statut='f',typ='R' ), - WO5 =SIMP(statut='f',typ='R' ), - WO6 =SIMP(statut='f',typ='R' ), - WO =SIMP(statut='f',typ='R' ), - WI1 =SIMP(statut='f',typ='R' ), - WO1 =SIMP(statut='f',typ='R' ), - GONF =SIMP(statut='f',typ='R' ), - H1X =SIMP(statut='f',typ='R' ), - H1Y =SIMP(statut='f',typ='R' ), - H1Z =SIMP(statut='f',typ='R' ), - E1X =SIMP(statut='f',typ='R' ), - E1Y =SIMP(statut='f',typ='R' ), - E1Z =SIMP(statut='f',typ='R' ), - E2X =SIMP(statut='f',typ='R' ), - E2Y =SIMP(statut='f',typ='R' ), - E2Z =SIMP(statut='f',typ='R' ), - E3X =SIMP(statut='f',typ='R' ), - E3Y =SIMP(statut='f',typ='R' ), - E3Z =SIMP(statut='f',typ='R' ), - E4X =SIMP(statut='f',typ='R' ), - E4Y =SIMP(statut='f',typ='R' ), - E4Z =SIMP(statut='f',typ='R' ), - V11 =SIMP(statut='f',typ='R' ), - V12 =SIMP(statut='f',typ='R' ), - V13 =SIMP(statut='f',typ='R' ), - V21 =SIMP(statut='f',typ='R' ), - V22 =SIMP(statut='f',typ='R' ), - V23 =SIMP(statut='f',typ='R' ), - V31 =SIMP(statut='f',typ='R' ), - V32 =SIMP(statut='f',typ='R' ), - V33 =SIMP(statut='f',typ='R' ), - PRES11 =SIMP(statut='f',typ='R' ), - PRES12 =SIMP(statut='f',typ='R' ), - PRES13 =SIMP(statut='f',typ='R' ), - PRES21 =SIMP(statut='f',typ='R' ), - PRES22 =SIMP(statut='f',typ='R' ), - PRES23 =SIMP(statut='f',typ='R' ), - PRES31 =SIMP(statut='f',typ='R' ), - PRES32 =SIMP(statut='f',typ='R' ), - PRES33 =SIMP(statut='f',typ='R' ), - LH1 =SIMP(statut='f',typ='R' ), - GLIS =SIMP(statut='f',typ='R' ), - ), - - THER_IMPO =FACT(statut='f',max='**', - regles=(UN_PARMI('TOUT','GROUP_MA','MAILLE','GROUP_NO','NOEUD'), - AU_MOINS_UN('TEMP','TEMP_MIL','TEMP_INF','TEMP_SUP'),), - TOUT =SIMP(statut='f',typ='TXM',into=("OUI",) ), - GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - MAILLE =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), - GROUP_NO =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'), - NOEUD =SIMP(statut='f',typ=no ,validators=NoRepeat(),max='**'), - TEMP =SIMP(statut='f',typ='R' ), - TEMP_MIL =SIMP(statut='f',typ='R' ), - TEMP_SUP =SIMP(statut='f',typ='R' ), - TEMP_INF =SIMP(statut='f',typ='R' ), - ), - - ACOU_IMPO =FACT(statut='f',max='**', - regles=(UN_PARMI('TOUT','GROUP_MA','MAILLE','GROUP_NO','NOEUD'),), - TOUT =SIMP(statut='f',typ='TXM',into=("OUI",) ), - GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - MAILLE =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), - GROUP_NO =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'), - NOEUD =SIMP(statut='f',typ=no ,validators=NoRepeat(),max='**'), - PRES =SIMP(statut='o',typ='C' ), - ), - - EVOL_IMPO =SIMP(statut='f',typ=(evol_noli,evol_elas,evol_ther),fr="Pour imposer les ddls d'un evol_xxx"), - b_evol_impo = BLOC ( condition = "EVOL_IMPO != None", - NOM_CMP =SIMP(statut='f',typ='TXM',max='**',), # pour n'imposer que certaines CMPS (par défaut : toutes) - ), - - INFO =SIMP(statut='f',typ='I',defaut= 1,into=( 1 , 2) ), -) ; - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2013 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: jacques.pellet at edf.fr -def affe_char_cine_f_prod(MECA_IMPO,THER_IMPO,**args): - if MECA_IMPO != None : return char_cine_meca - if THER_IMPO != None : return char_cine_ther - raise AsException("type de concept resultat non prevu") - -AFFE_CHAR_CINE_F=OPER(nom="AFFE_CHAR_CINE_F",op= 101,sd_prod=affe_char_cine_f_prod, - fr="Affectation de conditions aux limites cinématiques fonction d'un (ou plusieurs) paramètres" - +" pour un traitement sans dualisation", - reentrant='n', - UIinfo={"groupes":("Chargements","Mécanique",)}, - regles=(UN_PARMI('MECA_IMPO','THER_IMPO')), - MODELE =SIMP(statut='o',typ=modele_sdaster ), - MECA_IMPO =FACT(statut='f',max='**', - regles=(UN_PARMI('TOUT','GROUP_MA','MAILLE','GROUP_NO','NOEUD'), - AU_MOINS_UN('DX','DY','DZ','DRX','DRY','DRZ','GRX','PRES','PHI', - 'TEMP','PRE1','PRE2','UI2','UI3','VI2','VI3','WI2','WI3','UO2', - 'UO3','VO2','VO3','WO2','WO3','UI4','UI5','VI4','VI5','WI4', - 'WI5','UO4','UO5','VO4','VO5','WO4','WO5','UI6','UO6','VI6', - 'VO6','WI6','WO6','WO','WI1','WO1','GONF', - 'H1X','H1Y','H1Z','E1X','E1Y','E1Z','E2X','E2Y','E2Z', - 'E3X','E3Y','E3Z','E4X','E4Y','E4Z','V11','V12','V13','V21','V22', - 'V23','V31','V32','V33','PRES11','PRES12','PRES13','PRES21', - 'PRES22','PRES23','PRES31','PRES32','PRES33','LH1','GLIS'),), - TOUT =SIMP(statut='f',typ='TXM',into=("OUI",) ), - GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - MAILLE =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), - GROUP_NO =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'), - NOEUD =SIMP(statut='f',typ=no ,validators=NoRepeat(),max='**'), - DX =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - DY =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - DZ =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - DRX =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - DRY =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - DRZ =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - GRX =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - PRES =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - PHI =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - TEMP =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - PRE1 =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - PRE2 =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - UI2 =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - UI3 =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - UI4 =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - UI5 =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - UI6 =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - UO2 =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - UO3 =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - UO4 =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - UO5 =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - UO6 =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - VI2 =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - VI3 =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - VI4 =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - VI5 =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - VI6 =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - VO2 =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - VO3 =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - VO4 =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - VO5 =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - VO6 =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - WI2 =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - WI3 =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - WI4 =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - WI5 =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - WI6 =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - WO2 =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - WO3 =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - WO4 =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - WO5 =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - WO6 =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - WO =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - WI1 =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - WO1 =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - GONF =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - H1X =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - H1Y =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - H1Z =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - E1X =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - E1Y =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - E1Z =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - E2X =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - E2Y =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - E2Z =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - E3X =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - E3Y =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - E3Z =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - E4X =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - E4Y =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - E4Z =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - V11 =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - V12 =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - V13 =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - V21 =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - V22 =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - V23 =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - V31 =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - V32 =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - V33 =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - PRES11=SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - PRES12=SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - PRES13=SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - PRES21=SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - PRES22=SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - PRES23=SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - PRES31=SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - PRES32=SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - PRES33=SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - LH1 =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - GLIS =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - - ), - THER_IMPO =FACT(statut='f',max='**', - regles=(UN_PARMI('TOUT','GROUP_MA','MAILLE','GROUP_NO','NOEUD'), - AU_MOINS_UN('TEMP','TEMP_MIL','TEMP_INF','TEMP_SUP' ),), - TOUT =SIMP(statut='f',typ='TXM',into=("OUI",) ), - GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - MAILLE =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), - GROUP_NO =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'), - NOEUD =SIMP(statut='f',typ=no ,validators=NoRepeat(),max='**'), - TEMP =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - TEMP_MIL =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - TEMP_SUP =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - TEMP_INF =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - ), - INFO =SIMP(statut='f',typ='I',defaut= 1,into=( 1 , 2) ), -) ; - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2013 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: mickael.abbas at edf.fr -AFFE_CHAR_MECA=OPER(nom="AFFE_CHAR_MECA",op= 7,sd_prod=char_meca, - fr="Affectation de charges et conditions aux limites mécaniques constantes", - reentrant='n', - UIinfo={"groupes":("Chargements","Mécanique",)}, - regles=(AU_MOINS_UN('EVOL_CHAR','PESANTEUR','ROTATION','DDL_IMPO','DDL_POUTRE','FACE_IMPO', - 'CHAMNO_IMPO','ARETE_IMPO', - 'LIAISON_DDL','LIAISON_OBLIQUE','LIAISON_GROUP','LIAISON_MAIL', - 'LIAISON_CYCL','LIAISON_SOLIDE','LIAISON_ELEM','LIAISON_UNIF', - 'LIAISON_CHAMNO','LIAISON_RBE3','LIAISON_INTERF', - 'VECT_ASSE', - 'FORCE_NODALE','FORCE_FACE','FORCE_ARETE','FORCE_CONTOUR','FORCE_INTERNE', - 'PRE_SIGM','PRES_REP','EFFE_FOND','PRE_EPSI','FORCE_POUTRE','FORCE_TUYAU', - 'FORCE_COQUE','LIAISON_COQUE','RELA_CINE_BP','FORCE_ELEC','INTE_ELEC', - 'IMPE_FACE','VITE_FACE','ONDE_FLUI','FLUX_THM_REP','FORCE_SOL',), - ), - VERI_NORM =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON") ), - MODELE =SIMP(statut='o',typ=(modele_sdaster) ), - EVOL_CHAR =SIMP(statut='f',fr="Champ de pression issu d'un autre calcul", - typ=evol_char ), - - PESANTEUR =FACT(statut='f',max=1,fr="Champ de pesanteur", - GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - MAILLE =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), - GRAVITE =SIMP(statut='o',typ='R',min=1,max=1), - DIRECTION =SIMP(statut='o',typ='R',min=3,max=3),), - - METHODE =SIMP(statut='c',typ='TXM',fr="Stratégie de résolution pour les déplacements imposés", - into=('DUALISATION',),defaut='DUALISATION',), - # METHODE='ELIMINATION' est traité dans le fortran mais dangereux actuellement - - ROTATION =FACT(statut='f', max=1, - fr="Définition d'un chargement de rotation", - GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(), max='**'), - MAILLE =SIMP(statut='f',typ=ma, validators=NoRepeat(),max='**'), - SANS_GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - SANS_MAILLE =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), - VITESSE =SIMP(statut='o', typ='R',min=1,max=1), - AXE =SIMP(statut='o', typ='R',min=2, max=3), - CENTRE =SIMP(statut='f',typ='R',min=2, max=3), - b_rotation_tout=BLOC(condition="(GROUP_MA == None) and (MAILLE ==None)", - TOUT = SIMP(statut='f',typ='TXM',into=("OUI",),defaut="OUI",),),), - - DDL_IMPO =FACT(statut='f',max='**', - fr="Impose à des noeuds une ou plusieurs valeurs de déplacement (ou de certaines grandeurs asscociées)", - regles=(AU_MOINS_UN('TOUT','GROUP_MA','MAILLE','GROUP_NO','NOEUD'), - AU_MOINS_UN('DX','DY','DZ','DRX','DRY','DRZ','GRX','PRES','PHI', - 'TEMP','PRE1','PRE2','UI2','UI3','VI2','VI3','WI2','WI3','UO2', - 'UO3','VO2','VO3','WO2','WO3','UI4','UI5','VI4','VI5','WI4', - 'WI5','UO4','UO5','VO4','VO5','WO4','WO5','UI6','UO6','VI6', - 'VO6','WI6','WO6','WO','WI1','WO1','GONF','LIAISON', - 'H1X','H1Y','H1Z','H2X','H2Y','H2Z','H3X','H3Y','H3Z','H4X','H4Y','H4Z', - 'E1X','E1Y','E1Z','E2X','E2Y','E2Z','E3X','E3Y','E3Z','E4X','E4Y','E4Z', - 'LAGS_C','LAGS_F1','LAGS_F2','LAG2_C','LAG2_F1','LAG2_F2','LAG3_C','LAG3_F1', - 'V11','V12','V13','V21','V22','V23','V31','V32','V33', - 'PRES11','PRES12','PRES13','PRES21','PRES22','PRES23','PRES31','PRES32','PRES33','LH1','GLIS'),), - TOUT =SIMP(statut='f',typ='TXM',into=("OUI",) ), - GROUP_NO =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'), - NOEUD =SIMP(statut='f',typ=no ,validators=NoRepeat(),max='**'), - GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - MAILLE =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), - SANS_GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - SANS_MAILLE =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), - SANS_GROUP_NO =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'), - SANS_NOEUD =SIMP(statut='f',typ=no ,validators=NoRepeat(),max='**'), - LIAISON =SIMP(statut='f',typ='TXM',into=('ENCASTRE',)), - DX =SIMP(statut='f',typ='R' ), - DY =SIMP(statut='f',typ='R' ), - DZ =SIMP(statut='f',typ='R' ), - DRX =SIMP(statut='f',typ='R' ), - DRY =SIMP(statut='f',typ='R' ), - DRZ =SIMP(statut='f',typ='R' ), - GRX =SIMP(statut='f',typ='R' ), - PRES =SIMP(statut='f',typ='R' ), - PHI =SIMP(statut='f',typ='R' ), - TEMP =SIMP(statut='f',typ='R' ), - PRE1 =SIMP(statut='f',typ='R' ), - PRE2 =SIMP(statut='f',typ='R' ), - UI2 =SIMP(statut='f',typ='R' ), - UI3 =SIMP(statut='f',typ='R' ), - UI4 =SIMP(statut='f',typ='R' ), - UI5 =SIMP(statut='f',typ='R' ), - UI6 =SIMP(statut='f',typ='R' ), - UO2 =SIMP(statut='f',typ='R' ), - UO3 =SIMP(statut='f',typ='R' ), - UO4 =SIMP(statut='f',typ='R' ), - UO5 =SIMP(statut='f',typ='R' ), - UO6 =SIMP(statut='f',typ='R' ), - VI2 =SIMP(statut='f',typ='R' ), - VI3 =SIMP(statut='f',typ='R' ), - VI4 =SIMP(statut='f',typ='R' ), - VI5 =SIMP(statut='f',typ='R' ), - VI6 =SIMP(statut='f',typ='R' ), - VO2 =SIMP(statut='f',typ='R' ), - VO3 =SIMP(statut='f',typ='R' ), - VO4 =SIMP(statut='f',typ='R' ), - VO5 =SIMP(statut='f',typ='R' ), - VO6 =SIMP(statut='f',typ='R' ), - WI2 =SIMP(statut='f',typ='R' ), - WI3 =SIMP(statut='f',typ='R' ), - WI4 =SIMP(statut='f',typ='R' ), - WI5 =SIMP(statut='f',typ='R' ), - WI6 =SIMP(statut='f',typ='R' ), - WO2 =SIMP(statut='f',typ='R' ), - WO3 =SIMP(statut='f',typ='R' ), - WO4 =SIMP(statut='f',typ='R' ), - WO5 =SIMP(statut='f',typ='R' ), - WO6 =SIMP(statut='f',typ='R' ), - WO =SIMP(statut='f',typ='R' ), - WI1 =SIMP(statut='f',typ='R' ), - WO1 =SIMP(statut='f',typ='R' ), - GONF =SIMP(statut='f',typ='R' ), - H1X =SIMP(statut='f',typ='R' ), - H1Y =SIMP(statut='f',typ='R' ), - H1Z =SIMP(statut='f',typ='R' ), - H2X =SIMP(statut='f',typ='R' ), - H2Y =SIMP(statut='f',typ='R' ), - H2Z =SIMP(statut='f',typ='R' ), - H3X =SIMP(statut='f',typ='R' ), - H3Y =SIMP(statut='f',typ='R' ), - H3Z =SIMP(statut='f',typ='R' ), - H4X =SIMP(statut='f',typ='R' ), - H4Y =SIMP(statut='f',typ='R' ), - H4Z =SIMP(statut='f',typ='R' ), - E1X =SIMP(statut='f',typ='R' ), - E1Y =SIMP(statut='f',typ='R' ), - E1Z =SIMP(statut='f',typ='R' ), - E2X =SIMP(statut='f',typ='R' ), - E2Y =SIMP(statut='f',typ='R' ), - E2Z =SIMP(statut='f',typ='R' ), - E3X =SIMP(statut='f',typ='R' ), - E3Y =SIMP(statut='f',typ='R' ), - E3Z =SIMP(statut='f',typ='R' ), - E4X =SIMP(statut='f',typ='R' ), - E4Y =SIMP(statut='f',typ='R' ), - E4Z =SIMP(statut='f',typ='R' ), - LAGS_C =SIMP(statut='f',typ='R' ), - LAGS_F1 =SIMP(statut='f',typ='R' ), - LAGS_F2 =SIMP(statut='f',typ='R' ), - LAG2_C =SIMP(statut='f',typ='R' ), - LAG2_F1 =SIMP(statut='f',typ='R' ), - LAG2_F2 =SIMP(statut='f',typ='R' ), - LAG3_C =SIMP(statut='f',typ='R' ), - LAG3_F1 =SIMP(statut='f',typ='R' ), - V11 =SIMP(statut='f',typ='R' ), - V12 =SIMP(statut='f',typ='R' ), - V13 =SIMP(statut='f',typ='R' ), - V21 =SIMP(statut='f',typ='R' ), - V22 =SIMP(statut='f',typ='R' ), - V23 =SIMP(statut='f',typ='R' ), - V31 =SIMP(statut='f',typ='R' ), - V32 =SIMP(statut='f',typ='R' ), - V33 =SIMP(statut='f',typ='R' ), - PRES11 =SIMP(statut='f',typ='R' ), - PRES12 =SIMP(statut='f',typ='R' ), - PRES13 =SIMP(statut='f',typ='R' ), - PRES21 =SIMP(statut='f',typ='R' ), - PRES22 =SIMP(statut='f',typ='R' ), - PRES23 =SIMP(statut='f',typ='R' ), - PRES31 =SIMP(statut='f',typ='R' ), - PRES32 =SIMP(statut='f',typ='R' ), - PRES33 =SIMP(statut='f',typ='R' ), - LH1 =SIMP(statut='f',typ='R' ), - GLIS =SIMP(statut='f',typ='R' ), - ), - - - - DDL_POUTRE =FACT(statut='f',max='**', - fr="Bloque des DDLs dans un repère local d'une poutre", - regles=(AU_MOINS_UN('TOUT','GROUP_MA','MAILLE','GROUP_NO','NOEUD'), - AU_MOINS_UN('DX','DY','DZ','DRX','DRY','DRZ'), - UN_PARMI('VECT_Y','ANGL_VRIL'),), - TOUT =SIMP(statut='f',typ='TXM',into=("OUI",) ), - GROUP_NO =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'), - NOEUD =SIMP(statut='f',typ=no ,validators=NoRepeat(),max='**'), - GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - MAILLE =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), - SANS_GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - SANS_MAILLE =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), - SANS_GROUP_NO =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'), - SANS_NOEUD =SIMP(statut='f',typ=no ,validators=NoRepeat(),max='**'), - - - DX =SIMP(statut='f',typ='R' ), - DY =SIMP(statut='f',typ='R' ), - DZ =SIMP(statut='f',typ='R' ), - DRX =SIMP(statut='f',typ='R' ), - DRY =SIMP(statut='f',typ='R' ), - DRZ =SIMP(statut='f',typ='R' ), -# définition du repère local - VECT_Y =SIMP(statut='f',typ='R',min=3,max=3), - ANGL_VRIL =SIMP(statut='f',typ='R',), -# restriction sur les mailles servant à définir le repère local - GROUP_MA_REPE =SIMP(statut='f',typ=grma,), - MAILLE_REPE =SIMP(statut='f',typ=ma,), - ), - - - - FACE_IMPO =FACT(statut='f',max='**', - fr="Impose à tous les noeuds d'une face une ou plusieurs valeurs de déplacement (ou de certaines grandeurs associées)", - regles=(UN_PARMI('GROUP_MA','MAILLE',), - AU_MOINS_UN('DX','DY','DZ','DRX','DRY','DRZ','GRX','PRES','PHI', - 'TEMP','PRE1','PRE2','DNOR','DTAN'), - EXCLUS('DNOR','DX'), - EXCLUS('DNOR','DY'), - EXCLUS('DNOR','DZ'), - EXCLUS('DNOR','DRX'), - EXCLUS('DNOR','DRY'), - EXCLUS('DNOR','DRZ'), - EXCLUS('DTAN','DX'), - EXCLUS('DTAN','DY'), - EXCLUS('DTAN','DZ'), - EXCLUS('DTAN','DRX'), - EXCLUS('DTAN','DRY'), - EXCLUS('DTAN','DRZ'),), -# rajout d'un mot clé REPERE :/ LOCAL /GLOBAL - GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - MAILLE =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), - SANS_GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - SANS_MAILLE =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), - SANS_GROUP_NO =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'), - SANS_NOEUD =SIMP(statut='f',typ=no ,validators=NoRepeat(),max='**'), - DX =SIMP(statut='f',typ='R' ), - DY =SIMP(statut='f',typ='R' ), - DZ =SIMP(statut='f',typ='R' ), - DRX =SIMP(statut='f',typ='R' ), - DRY =SIMP(statut='f',typ='R' ), - DRZ =SIMP(statut='f',typ='R' ), - DNOR =SIMP(statut='f',typ='R' ), - DTAN =SIMP(statut='f',typ='R' ), - GRX =SIMP(statut='f',typ='R' ), - PRES =SIMP(statut='f',typ='R' ), - PHI =SIMP(statut='f',typ='R' ), - TEMP =SIMP(statut='f',typ='R' ), - PRE1 =SIMP(statut='f',typ='R' ), - PRE2 =SIMP(statut='f',typ='R' ), - ), - - CHAMNO_IMPO =FACT(statut='f',max='**', - fr="Impose des DDLs aux valeurs d'un concept cham_no_sdaster", -# type de cham_no_sdaster CO() - CHAM_NO =SIMP(statut='o',typ=cham_no_sdaster), #CO() - COEF_MULT =SIMP(statut='o',typ='R' ), - NUME_LAGR =SIMP(statut='f',typ='TXM',defaut="NORMAL",into=("NORMAL","APRES") ), - ), - - ARETE_IMPO =FACT(statut='f',max='**', - fr="Impose à tous les noeuds d'une arete des elements 3D une ou plusieurs valeurs de déplacement", - regles=(UN_PARMI('GROUP_MA','MAILLE',), - AU_MOINS_UN('DX','DY','DZ','DTAN','PRES','PHI','TEMP','PRE1','PRE2'), - EXCLUS('DTAN','DX'), - EXCLUS('DTAN','DY'), - EXCLUS('DTAN','DZ'),), - GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - MAILLE =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), - SANS_GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - SANS_MAILLE =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), - SANS_GROUP_NO =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'), - SANS_NOEUD =SIMP(statut='f',typ=no ,validators=NoRepeat(),max='**'), - DX =SIMP(statut='f',typ='R' ), - DY =SIMP(statut='f',typ='R' ), - DZ =SIMP(statut='f',typ='R' ), - DTAN =SIMP(statut='f',typ='R' ), - PRE1 =SIMP(statut='f',typ='R' ), - PRE2 =SIMP(statut='f',typ='R' ), - PRES =SIMP(statut='f',typ='R' ), - PHI =SIMP(statut='f',typ='R' ), - TEMP =SIMP(statut='f',typ='R' ), - ), - - LIAISON_DDL =FACT(statut='f',max='**', - fr="Définit une relation linéaire entre des DDLs de deux ou plusieurs noeuds", - regles=(UN_PARMI('GROUP_NO','NOEUD'),), - GROUP_NO =SIMP(statut='f',typ=grno ,max='**'), - NOEUD =SIMP(statut='f',typ=no ,max='**'), - DDL =SIMP(statut='o',typ='TXM',max='**'), - COEF_MULT =SIMP(statut='o',typ='R' ,max='**'), - COEF_IMPO =SIMP(statut='o',typ='R' ), - ), - - LIAISON_OBLIQUE =FACT(statut='f',max='**', - fr="Applique à des noeuds la meme valeur de déplacement définie composante par composante" - +" dans un repère oblique quelconque", - regles=(AU_MOINS_UN('GROUP_MA','MAILLE','GROUP_NO','NOEUD'), - AU_MOINS_UN('DX','DY','DZ','DRX','DRY','DRZ'),), - GROUP_NO =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'), - NOEUD =SIMP(statut='f',typ=no ,validators=NoRepeat(),max='**'), - GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - MAILLE =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), - SANS_GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - SANS_MAILLE =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), - SANS_GROUP_NO =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'), - SANS_NOEUD =SIMP(statut='f',typ=no ,validators=NoRepeat(),max='**'), - ANGL_NAUT =SIMP(statut='o',typ='R',max=3), - DX =SIMP(statut='f',typ='R' ), - DY =SIMP(statut='f',typ='R' ), - DZ =SIMP(statut='f',typ='R' ), - DRX =SIMP(statut='f',typ='R' ), - DRY =SIMP(statut='f',typ='R' ), - DRZ =SIMP(statut='f',typ='R' ), - ), - - LIAISON_GROUP =FACT(statut='f',max='**', - fr="Définit la meme relation linéaire entre certains DDLs de couples de noeuds", - regles=(UN_PARMI('GROUP_MA_1','MAILLE_1','GROUP_NO_1','NOEUD_1'), - UN_PARMI('GROUP_MA_2','MAILLE_2','GROUP_NO_2','NOEUD_2'), - EXCLUS('GROUP_MA_1','GROUP_NO_2'), - EXCLUS('GROUP_MA_1','NOEUD_2'), - EXCLUS('GROUP_NO_1','GROUP_MA_2'), - EXCLUS('GROUP_NO_1','MAILLE_2'), - EXCLUS('MAILLE_1','GROUP_NO_2'), - EXCLUS('MAILLE_1','NOEUD_2'), - EXCLUS('NOEUD_1','GROUP_MA_2'), - EXCLUS('NOEUD_1','MAILLE_2'), - EXCLUS('SANS_NOEUD','SANS_GROUP_NO'),), - - GROUP_MA_1 =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - MAILLE_1 =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), - GROUP_MA_2 =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - MAILLE_2 =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), - GROUP_NO_1 =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'), - NOEUD_1 =SIMP(statut='f',typ=no ,validators=NoRepeat(),max='**'), - GROUP_NO_2 =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'), - NOEUD_2 =SIMP(statut='f',typ=no ,validators=NoRepeat(),max='**'), - - SANS_NOEUD =SIMP(statut='f',typ=no ,validators=NoRepeat(),max='**'), - SANS_GROUP_NO =SIMP(statut='f',typ=grno ,validators=NoRepeat(),max='**'), - DDL_1 =SIMP(statut='o',typ='TXM',max='**'), - COEF_MULT_1 =SIMP(statut='o',typ='R' ,max='**'), - DDL_2 =SIMP(statut='o',typ='TXM',max='**'), - COEF_MULT_2 =SIMP(statut='o',typ='R' ,max='**'), - COEF_IMPO =SIMP(statut='o',typ='R' ), - SOMMET =SIMP(statut='f',typ='TXM',into=("OUI",) ), - TRAN =SIMP(statut='f',typ='R',max=3), - ANGL_NAUT =SIMP(statut='f',typ='R',max=3), - CENTRE =SIMP(statut='f',typ='R',max=3), - ), - - LIAISON_MAIL =FACT(statut='f',max='**', - fr="Définit des relations linéaires permettant de recoller deux bords d'une structure", - regles=(AU_MOINS_UN('GROUP_MA_MAIT','MAILLE_MAIT'), - AU_MOINS_UN('GROUP_MA_ESCL','MAILLE_ESCL','GROUP_NO_ESCL','NOEUD_ESCL')), - GROUP_MA_MAIT =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - MAILLE_MAIT =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), - GROUP_MA_ESCL =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - MAILLE_ESCL =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), - GROUP_NO_ESCL =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'), - NOEUD_ESCL =SIMP(statut='f',typ=no ,validators=NoRepeat(),max='**'), - - TYPE_RACCORD =SIMP(statut='o',typ='TXM',defaut="MASSIF",into=("MASSIF","COQUE","COQUE_MASSIF","MASSIF_COQUE",)), - - b_MASSIF =BLOC ( condition = "TYPE_RACCORD == 'MASSIF'", - regles=( PRESENT_PRESENT('DDL_MAIT','DDL_ESCL'),), - TRAN =SIMP(statut='f',typ='R',max=3 ), - ANGL_NAUT =SIMP(statut='f',typ='R',max=3 ), - CENTRE =SIMP(statut='f',typ='R',max=3 ), - DDL_MAIT =SIMP(statut='f',typ='TXM',into=("DNOR",) ), - DDL_ESCL =SIMP(statut='f',typ='TXM',into=("DNOR",) ), - ), - b_COQUE_MASSIF =BLOC ( condition = "TYPE_RACCORD == 'COQUE_MASSIF'", - EPAIS =SIMP(statut='o',typ='R'), - CHAM_NORMALE =SIMP(statut='o',typ=cham_no_sdaster), - ), - ELIM_MULT =SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON") ), - ), - - LIAISON_CYCL =FACT(statut='f',max='**', - fr="Définit des relations linéaires permettant de recoller les bords de deux parties symétriquement cycliques", - regles=(AU_MOINS_UN('GROUP_MA_MAIT1','MAILLE_MAIT1'), - AU_MOINS_UN('GROUP_MA_ESCL','MAILLE_ESCL','GROUP_NO_ESCL','NOEUD_ESCL'), - PRESENT_PRESENT('DDL_MAIT','DDL_ESCL'), - ), - GROUP_MA_MAIT1 =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - MAILLE_MAIT1 =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), - GROUP_MA_MAIT2 =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - MAILLE_MAIT2 =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), - GROUP_MA_ESCL =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - MAILLE_ESCL =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), - GROUP_NO_ESCL =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'), - NOEUD_ESCL =SIMP(statut='f',typ=no ,validators=NoRepeat(),max='**'), - TRAN =SIMP(statut='f',typ='R',max=3 ), - ANGL_NAUT =SIMP(statut='f',typ='R',max=3 ), - CENTRE =SIMP(statut='f',typ='R',max=3 ), - COEF_MAIT1 =SIMP(statut='f',typ='R',max=1 ), - COEF_MAIT2 =SIMP(statut='f',typ='R',max=1 ), - COEF_ESCL =SIMP(statut='f',typ='R',max=1 ), - DDL_MAIT =SIMP(statut='f',typ='TXM',into=("DNOR",) ), - DDL_ESCL =SIMP(statut='f',typ='TXM',into=("DNOR",) ), - ), - - - LIAISON_SOLIDE =FACT(statut='f',max='**', - fr="Modélise une partie indéformable d'une structure." - +" Le mot clé TRAN permettent d'imposer le déplacement de la partie indéformable.", - regles=(UN_PARMI('GROUP_NO','NOEUD','GROUP_MA','MAILLE'),), - - GROUP_NO =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'), - NOEUD =SIMP(statut='f',typ=no ,validators=NoRepeat(),max='**'), - GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - MAILLE =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), - SANS_GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - SANS_MAILLE =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), - SANS_GROUP_NO =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'), - SANS_NOEUD =SIMP(statut='f',typ=no ,validators=NoRepeat(),max='**'), - - TRAN =SIMP(statut='f',typ='R',max=3 ), - DIST_MIN =SIMP(statut='f',typ='R'), - NUME_LAGR =SIMP(statut='f',typ='TXM',defaut="NORMAL",into=("NORMAL","APRES") ), - ), - - LIAISON_ELEM =FACT(statut='f',max='**', - fr="Modélise le raccord : d'une partie massive 3D avec une poutre ou avec un tuyau, d'une coque" - +" avec une poutre ou avec un tuyau, d'une plaque avec une poutre", - regles =(UN_PARMI('GROUP_MA_1','MAILLE_1'), UN_PARMI('GROUP_NO_2','NOEUD_2'),), - OPTION =SIMP(statut='o',typ='TXM',into=("3D_TUYAU","3D_POU","2D_POU","COQ_POU","COQ_TUYAU","PLAQ_POUT_ORTH") ), - - GROUP_MA_1 =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - MAILLE_1 =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), - GROUP_NO_2 =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'), - NOEUD_2 =SIMP(statut='f',typ=no ,validators=NoRepeat(),max='**'), - - b_plaq_pout_orth =BLOC( condition = "OPTION == 'PLAQ_POUT_ORTH'", - VERIF_EXCENT =SIMP(statut='o',typ='TXM',defaut="OUI",into=("OUI","NON") ), - ), - - b_cara_pout =BLOC( condition = "OPTION == 'COQ_POU' or OPTION == '3D_TUYAU' or OPTION == 'COQ_TUYAU'", - CARA_ELEM =SIMP(statut='o',typ=(cara_elem) ), - AXE_POUTRE =SIMP(statut='o',typ='R',max=3), - ), - - - NUME_LAGR =SIMP(statut='f',typ='TXM',defaut="NORMAL",into=("NORMAL","APRES") ), - ANGL_MAX =SIMP(statut='f',typ='R',defaut= 1. ), - - ), - - LIAISON_UNIF =FACT(statut='f',max='**', - fr="Impose une meme valeur (inconnue) à des DDLs d'un ensemble de noeuds", - regles=(UN_PARMI('GROUP_NO','NOEUD','GROUP_MA','MAILLE'),), - - GROUP_NO =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'), - NOEUD =SIMP(statut='f',typ=no ,validators=NoRepeat(),max='**'), - GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - MAILLE =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), - SANS_GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - SANS_MAILLE =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), - SANS_GROUP_NO =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'), - SANS_NOEUD =SIMP(statut='f',typ=no ,validators=NoRepeat(),max='**'), - - DDL =SIMP(statut='o',typ='TXM',max='**'), - ), - - LIAISON_CHAMNO =FACT(statut='f',max='**', - fr="Définit une relation linéaire entre tous les DDLs présents dans un concept CHAM_NO", -# type de cham_no_sdaster CO() - CHAM_NO =SIMP(statut='o',typ=cham_no_sdaster), #CO() - COEF_IMPO =SIMP(statut='o',typ='R' ), - NUME_LAGR =SIMP(statut='f',typ='TXM',defaut="NORMAL",into=("NORMAL","APRES") ), - ), - - LIAISON_RBE3 =FACT(statut='f',max='**', - fr="""Modélise des relations linéaires de type RBE3 entre - les degrés de liberté d'un noeud maître et des noeuds esclaves.""", - regles =(UN_PARMI('GROUP_NO_MAIT','NOEUD_MAIT'), UN_PARMI('GROUP_NO_ESCL','NOEUD_ESCL'),), - GROUP_NO_MAIT =SIMP(statut='f',typ=grno,max=1), - NOEUD_MAIT =SIMP(statut='f',typ=no ,max=1), - DDL_MAIT =SIMP(statut='o',typ='TXM',validators=NoRepeat(),min=1,max=6,into=('DX','DY','DZ','DRX','DRY','DRZ')), - GROUP_NO_ESCL =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'), - NOEUD_ESCL =SIMP(statut='f',typ=no ,validators=NoRepeat(),min=1,max='**'), - DDL_ESCL =SIMP(statut='o',typ='TXM',min=1,max='**'), - COEF_ESCL =SIMP(statut='f',typ='R',min=1,max='**'), - NUME_LAGR =SIMP(statut='f',typ='TXM',defaut="NORMAL",into=("NORMAL","APRES") ), - ), - - LIAISON_INTERF =FACT(statut='f',max='**', - fr="Définit une relation linéaire entre les DDLs d'interface à partir d'un MACRELEM", - MACR_ELEM_DYNA =SIMP(statut='o',typ=macr_elem_dyna), - TYPE_LIAISON =SIMP(statut='f',typ='TXM',defaut="RIGIDE",into=("RIGIDE","SOUPLE") ), - ), - -# SIMP(statut='f',typ='TXM',defaut="NON" ), - - VECT_ASSE =SIMP(statut='f',typ=cham_no_sdaster ), -# -# FORCES -# - FORCE_NODALE =FACT(statut='f',fr="Applique à des noeuds des forces nodales",max='**', - regles=(AU_MOINS_UN('GROUP_NO','NOEUD'), - AU_MOINS_UN('FX','FY','FZ','MX','MY','MZ' ),), - GROUP_NO =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'), - NOEUD =SIMP(statut='f',typ=no ,validators=NoRepeat(),max='**'), - FX =SIMP(statut='f',typ='R' ), - FY =SIMP(statut='f',typ='R' ), - FZ =SIMP(statut='f',typ='R' ), - MX =SIMP(statut='f',typ='R' ), - MY =SIMP(statut='f',typ='R' ), - MZ =SIMP(statut='f',typ='R' ), - ANGL_NAUT =SIMP(statut='f',typ='R',max=3), - ), - - FORCE_FACE =FACT(statut='f',max='**', - fr="Applique des forces surfaciques sur une face d'élément volumique", - regles=(AU_MOINS_UN('GROUP_MA','MAILLE'), - AU_MOINS_UN('FX','FY','FZ'),), - GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - MAILLE =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), - FX =SIMP(statut='f',typ='R' ), - FY =SIMP(statut='f',typ='R' ), - FZ =SIMP(statut='f',typ='R' ), - ), - - FORCE_ARETE =FACT(statut='f',max='**', - fr="Applique des forces linéiques à une arete d'élément volumique ou de coque", - regles=(AU_MOINS_UN('GROUP_MA','MAILLE',), - AU_MOINS_UN('FX','FY','FZ','MX','MY','MZ' ),), - GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - MAILLE =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), - FX =SIMP(statut='f',typ='R' ), - FY =SIMP(statut='f',typ='R' ), - FZ =SIMP(statut='f',typ='R' ), - MX =SIMP(statut='f',typ='R' ), - MY =SIMP(statut='f',typ='R' ), - MZ =SIMP(statut='f',typ='R' ), - ), - - FORCE_CONTOUR =FACT(statut='f',max='**', - fr="Applique des forces linéiques au bord d'un domaine 2D ou AXIS ou AXIS_FOURIER", - regles=(AU_MOINS_UN('GROUP_MA','MAILLE'), - AU_MOINS_UN('FX','FY','FZ','MX','MY','MZ'),), - GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - MAILLE =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), - FX =SIMP(statut='f',typ='R' ), - FY =SIMP(statut='f',typ='R' ), - FZ =SIMP(statut='f',typ='R' ), - MX =SIMP(statut='f',typ='R' ), - MY =SIMP(statut='f',typ='R' ), - MZ =SIMP(statut='f',typ='R' ), - ), - - FORCE_INTERNE =FACT(statut='f',max='**', - fr="Applique des forces volumiques (2D ou 3D) à un domaine volumique", - regles=(AU_MOINS_UN('TOUT','GROUP_MA','MAILLE'), - PRESENT_ABSENT('TOUT','GROUP_MA','MAILLE'), - AU_MOINS_UN('FX','FY','FZ' ),), - TOUT =SIMP(statut='f',typ='TXM',into=("OUI",) ), - GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - MAILLE =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), - FX =SIMP(statut='f',typ='R' ), - FY =SIMP(statut='f',typ='R' ), - FZ =SIMP(statut='f',typ='R' ), - ), - - PRE_SIGM =FACT(statut='f',max='**', - fr="Applique des contraintes volumiques (2D ou 3D) à un domaine volumique", - #INST =SIMP(statut='f',typ='R' ), - SIGM =SIMP(statut='o',typ=(cham_elem,carte_sdaster)), - ), - - PRES_REP =FACT(statut='f',max='**', - fr="Applique une pression à un domaine de milieu continu 2D ou 3D, ou à un domaine de coques et tuyaux", - regles=(AU_MOINS_UN('TOUT','GROUP_MA','MAILLE','FISSURE'), - PRESENT_ABSENT('TOUT','GROUP_MA','MAILLE','FISSURE'), - AU_MOINS_UN('PRES','CISA_2D' ),), - TOUT =SIMP(statut='f',typ='TXM',into=("OUI",) ), - GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - MAILLE =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), - FISSURE =SIMP(statut='f',typ=fiss_xfem,min=1,max=100,), - PRES =SIMP(statut='f',typ='R' ), - CISA_2D =SIMP(statut='f',typ='R' ), - ), - - EFFE_FOND =FACT(statut='f',max='**', - fr="Calcul l'effet de fond sur une branche de tuyauterie (modélisation 3D) soumise à une pression", - regles=(AU_MOINS_UN('GROUP_MA','MAILLE'),), - GROUP_MA_INT =SIMP(statut='o',typ=grma,validators=NoRepeat(),max='**'), - GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - MAILLE =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), - PRES =SIMP(statut='o',typ='R' ), - ), - - PRE_EPSI =FACT(statut='f',max='**', - fr="Applique un chargement de déformation initiale à un élément 2D, 3D ou de structure", - regles=(AU_MOINS_UN('TOUT','GROUP_MA','MAILLE'), - PRESENT_ABSENT('TOUT','GROUP_MA','MAILLE'), - AU_MOINS_UN('EPXX','EPYY','EPZZ','EPXY','EPXZ','EPYZ','EPX', - 'KY','KZ','EXX','EYY','EXY','KXX','KYY','KXY'),), - TOUT =SIMP(statut='f',typ='TXM',into=("OUI",) ), - GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - MAILLE =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), - EPXX =SIMP(statut='f',typ='R' ), - EPYY =SIMP(statut='f',typ='R' ), - EPZZ =SIMP(statut='f',typ='R' ), - EPXY =SIMP(statut='f',typ='R' ), - EPXZ =SIMP(statut='f',typ='R' ), - EPYZ =SIMP(statut='f',typ='R' ), - EPX =SIMP(statut='f',typ='R' ), - KY =SIMP(statut='f',typ='R' ), - KZ =SIMP(statut='f',typ='R' ), - EXX =SIMP(statut='f',typ='R' ), - EYY =SIMP(statut='f',typ='R' ), - EXY =SIMP(statut='f',typ='R' ), - KXX =SIMP(statut='f',typ='R' ), - KYY =SIMP(statut='f',typ='R' ), - KXY =SIMP(statut='f',typ='R' ), - ), - - FORCE_POUTRE =FACT(statut='f',max='**', - fr="Applique des forces linéiques sur des éléments de type poutre", - regles=(AU_MOINS_UN('TOUT','GROUP_MA','MAILLE'), - PRESENT_ABSENT('TOUT','GROUP_MA','MAILLE'), - ), - TOUT =SIMP(statut='f',typ='TXM',into=("OUI",) ), - GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - MAILLE =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), - TYPE_CHARGE =SIMP(statut='f',typ='TXM',defaut="FORCE",into=("VENT","FORCE",) ), -# rajour d'un mot clé REPERE :/ LOCAL /GLOBAL - b_force = BLOC(condition = "TYPE_CHARGE == 'FORCE'", - regles=( - AU_MOINS_UN('FX','FY','FZ','MX','MY','MZ','N','VY','VZ','MT','MFY','MFZ'), - PRESENT_ABSENT('FX','N','VY','VZ','MT','MFY','MFZ'), - PRESENT_ABSENT('FY','N','VY','VZ','MT','MFY','MFZ'), - PRESENT_ABSENT('FZ','N','VY','VZ','MT','MFY','MFZ'), - PRESENT_ABSENT('MX','N','VY','VZ','MT','MFY','MFZ'), - PRESENT_ABSENT('MY','N','VY','VZ','MT','MFY','MFZ'), - PRESENT_ABSENT('MZ','N','VY','VZ','MT','MFY','MFZ'), - PRESENT_ABSENT('N','FX','FY','FZ','MX','MY','MZ'), - PRESENT_ABSENT('VY','FX','FY','FZ','MX','MY','MZ'), - PRESENT_ABSENT('VZ','FX','FY','FZ','MX','MY','MZ'), - PRESENT_ABSENT('MT','FX','FY','FZ','MX','MY','MZ'), - PRESENT_ABSENT('MFY','FX','FY','FZ','MX','MY','MZ'), - PRESENT_ABSENT('MFZ','FX','FY','FZ','MX','MY','MZ'),), - FX =SIMP(statut='f',typ='R' ), - FY =SIMP(statut='f',typ='R' ), - FZ =SIMP(statut='f',typ='R' ), - MX =SIMP(statut='f',typ='R' ), - MY =SIMP(statut='f',typ='R' ), - MZ =SIMP(statut='f',typ='R' ), - N =SIMP(statut='f',typ='R' ), - VY =SIMP(statut='f',typ='R' ), - VZ =SIMP(statut='f',typ='R' ), - MT =SIMP(statut='f',typ='R' ), - MFY =SIMP(statut='f',typ='R' ), - MFZ =SIMP(statut='f',typ='R' ), - ), - b_vent = BLOC(condition = "TYPE_CHARGE == 'VENT'", - regles=( - AU_MOINS_UN('FX','FY','FZ','N','VY','VZ',), - PRESENT_ABSENT('FX','N','VY','VZ',), - PRESENT_ABSENT('FY','N','VY','VZ',), - PRESENT_ABSENT('FZ','N','VY','VZ',), - PRESENT_ABSENT('N','FX','FY','FZ',), - PRESENT_ABSENT('VY','FX','FY','FZ',), - PRESENT_ABSENT('VZ','FX','FY','FZ',),), - FX =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - FY =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - FZ =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - N =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - VY =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - VZ =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - ), - - ), - - FORCE_TUYAU =FACT(statut='f',max='**', - fr="Applique une pression sur des éléments TUYAU", - regles=(AU_MOINS_UN('TOUT','GROUP_MA','MAILLE'), - PRESENT_ABSENT('TOUT','GROUP_MA','MAILLE'),), - TOUT =SIMP(statut='f',typ='TXM',into=("OUI",) ), - GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - MAILLE =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), - PRES =SIMP(statut='f',typ='R' ), - ), - - FORCE_COQUE =FACT(statut='f',max='**', - fr="Applique des forces surfaciques sur des éléments de types coques", - regles=(AU_MOINS_UN('TOUT','GROUP_MA','MAILLE'), - PRESENT_ABSENT('TOUT','GROUP_MA','MAILLE'), - AU_MOINS_UN('FX','FY','FZ','MX','MY','MZ','PRES','F1','F2','F3','MF1','MF2'), - PRESENT_ABSENT('FX','PRES','F1','F2','F3','MF1','MF2'), - PRESENT_ABSENT('FY','PRES','F1','F2','F3','MF1','MF2'), - PRESENT_ABSENT('FZ','PRES','F1','F2','F3','MF1','MF2'), - PRESENT_ABSENT('MX','PRES','F1','F2','F3','MF1','MF2'), - PRESENT_ABSENT('MY','PRES','F1','F2','F3','MF1','MF2'), - PRESENT_ABSENT('MZ','PRES','F1','F2','F3','MF1','MF2'), - PRESENT_ABSENT('F1','FX','FY','FZ','MX','MY','MZ','PRES'), - PRESENT_ABSENT('F2','FX','FY','FZ','MX','MY','MZ','PRES'), - PRESENT_ABSENT('F3','FX','FY','FZ','MX','MY','MZ','PRES'), - PRESENT_ABSENT('MF1','FX','FY','FZ','MX','MY','MZ','PRES'), - PRESENT_ABSENT('MF2','FX','FY','FZ','MX','MY','MZ','PRES'), - PRESENT_ABSENT('PRES','FX','FY','FZ','MX','MY','MZ','F1','F2','F3','MF1','MF2'),), -# rajour d'un mot clé REPERE :/ LOCAL /GLOBAL - TOUT =SIMP(statut='f',typ='TXM',into=("OUI",) ), - GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - MAILLE =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), - - FX =SIMP(statut='f',typ='R' ), - FY =SIMP(statut='f',typ='R' ), - FZ =SIMP(statut='f',typ='R' ), - MX =SIMP(statut='f',typ='R' ), - MY =SIMP(statut='f',typ='R' ), - MZ =SIMP(statut='f',typ='R' ), - - F1 =SIMP(statut='f',typ='R' ), - F2 =SIMP(statut='f',typ='R' ), - F3 =SIMP(statut='f',typ='R' ), - MF1 =SIMP(statut='f',typ='R' ), - MF2 =SIMP(statut='f',typ='R' ), - - PRES =SIMP(statut='f',typ='R' ), - PLAN =SIMP(statut='f',typ='TXM',defaut="MAIL",into=("SUP","INF","MOY","MAIL",) ), - ), - - LIAISON_COQUE =FACT(statut='f',max='**', - fr="Permet de représenter le raccord entre des éléments de coques au moyen des relations linéaires", - regles=(AU_MOINS_UN('GROUP_MA_1','MAILLE_1','GROUP_MA_2','MAILLE_2', - 'GROUP_NO_1','NOEUD_1','GROUP_NO_2','NOEUD_2',),), - GROUP_MA_1 =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - MAILLE_1 =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), - GROUP_NO_1 =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'), - NOEUD_1 =SIMP(statut='f',typ=no ,validators=NoRepeat(),max='**'), - SANS_GROUP_MA_1 =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - SANS_MAILLE_1 =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), - SANS_GROUP_NO_1 =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'), - SANS_NOEUD_1 =SIMP(statut='f',typ=no ,validators=NoRepeat(),max='**'), - GROUP_MA_2 =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - MAILLE_2 =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), - GROUP_NO_2 =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'), - NOEUD_2 =SIMP(statut='f',typ=no ,validators=NoRepeat(),max='**'), - SANS_GROUP_MA_2 =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - SANS_MAILLE_2 =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), - SANS_GROUP_NO_2 =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'), - SANS_NOEUD_2 =SIMP(statut='f',typ=no ,validators=NoRepeat(),max='**'), - NUME_LAGR =SIMP(statut='f',typ='TXM',defaut="NORMAL",into=("NORMAL","APRES") ), - ), - - RELA_CINE_BP =FACT(statut='f',max='**', - fr="Etablir des relations cinématiques permettant de relier les noeuds cable aux noeuds du béton, et spécifier" - +" la prise en compte des contraintes initiales dans les cables", - CABLE_BP =SIMP(statut='o',typ=cabl_precont ), - SIGM_BPEL =SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON") ), - RELA_CINE =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON") ), - DIST_MIN =SIMP(statut='f',typ='R'), - ), - - FORCE_ELEC =FACT(statut='f',max='**', - fr="Appliquer la force de LAPLACE agissant sur un conducteur principal, due à la présence d'un conducteur" - +" secondaire droit", - regles=(AU_MOINS_UN('TOUT','GROUP_MA','MAILLE'), - PRESENT_ABSENT('TOUT','GROUP_MA','MAILLE'),), - - TOUT =SIMP(statut='f',typ='TXM',into=("OUI",) ), - GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - MAILLE =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), - - POSITION =SIMP(statut='f',typ='TXM',fr="Direction prédéfinie",into=("PARA","INFI","FINI",) ), - b_fxyz =BLOC ( condition = "POSITION == None", - FX =SIMP(statut='f',typ='R',defaut= 0.E+0 ), - FY =SIMP(statut='f',typ='R',defaut= 0.E+0 ), - FZ =SIMP(statut='f',typ='R',defaut= 0.E+0 ), - ), - - b_para =BLOC ( condition = "POSITION == 'PARA'", - regles=(UN_PARMI('TRANS','DIST'),), - TRANS =SIMP(statut='f',typ='R',max=3), - DIST =SIMP(statut='f',typ='R' ), - b_point2 =BLOC ( condition = "DIST != None", - POINT2 =SIMP(statut='o',typ='R',max=3), - ), - ), - b_fini_infi =BLOC ( condition = "(POSITION == 'FINI') or (POSITION == 'INFI')", - POINT1 =SIMP(statut='o',typ='R',max=3), - POINT2 =SIMP(statut='o',typ='R',max=3), - ), - ), - - - - - INTE_ELEC =FACT(statut='f',max='**', - fr="Appliquer la force de LAPLACE agissant sur un conducteur principal, due à la présence d'un conducteur" - +" secondaire non nécessairement droit", - regles=(AU_MOINS_UN('TOUT','GROUP_MA','MAILLE'), - PRESENT_ABSENT('TOUT','GROUP_MA','MAILLE'), - AU_MOINS_UN('GROUP_MA_2','MAILLE_2','TRANS','SYME'), - EXCLUS('TRANS','SYME'),), - TOUT =SIMP(statut='f',typ='TXM',into=("OUI",) ), - GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - MAILLE =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), - GROUP_MA_2 =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - MAILLE_2 =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), - TRANS =SIMP(statut='f',typ='R' ,max='**'), - SYME =SIMP(statut='f',typ='R' ,max='**'), - ), - - - IMPE_FACE =FACT(statut='f',fr="Applique une impédance acoustique à une face",max='**', - regles=(AU_MOINS_UN('GROUP_MA','MAILLE' ),), - GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - MAILLE =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), - IMPE =SIMP(statut='o',typ='R' ), - ), - - VITE_FACE =FACT(statut='f',fr="Impose des vitesses normales à une face (phénomène ACOUSTIQUE), ",max='**', - regles=(AU_MOINS_UN('GROUP_MA','MAILLE'),), - GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - MAILLE =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), - VNOR =SIMP(statut='o',typ='R' ), - ), - - - - ONDE_FLUI =FACT(statut='f',max='**', - fr="Applique une amplitude de pression d'onde incidente sinusoidale arrivant normalement à une face", - regles=(AU_MOINS_UN('GROUP_MA','MAILLE'),), - GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - MAILLE =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), - PRES =SIMP(statut='o',typ='R' ), - ), - - FLUX_THM_REP =FACT(statut='f',max='**', - fr="Applique à un domaine de milieu continu 2D ou 3D un flux de chaleur et/ou un apport de masse fluide" - +" (flux hydraulique)", - regles=(AU_MOINS_UN('TOUT','GROUP_MA','MAILLE'), - PRESENT_ABSENT('TOUT','GROUP_MA','MAILLE'), - AU_MOINS_UN('FLUN','FLUN_HYDR1','FLUN_HYDR2'),), - TOUT =SIMP(statut='f',typ='TXM',into=("OUI",) ), - GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - MAILLE =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), - FLUN =SIMP(statut='f',typ='R' ), - FLUN_HYDR1 =SIMP(statut='f',typ='R' ), - FLUN_HYDR2 =SIMP(statut='f',typ='R' ), - ), - FORCE_SOL =FACT(statut='f',max=1, - fr="Définition des impédances et forces de sol temporelles", - regles=(UN_PARMI('GROUP_NO_INTERF','SUPER_MAILLE'), - AU_MOINS_UN('UNITE_RESU_MASS','UNITE_RESU_RIGI','UNITE_RESU_AMOR'),), - GROUP_NO_INTERF =SIMP(statut='f',typ=grno,), - SUPER_MAILLE =SIMP(statut='f',typ=ma,), - UNITE_RESU_MASS =SIMP(statut='f',typ='I', ), - UNITE_RESU_RIGI =SIMP(statut='f',typ='I', ), - UNITE_RESU_AMOR =SIMP(statut='f',typ='I', ), - UNITE_RESU_FORC =SIMP(statut='f',typ='I', ), - ), - - INFO =SIMP(statut='f',typ='I',defaut= 1,into=( 1 , 2) ), -) ; - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: mickael.abbas at edf.fr -AFFE_CHAR_MECA_C=OPER(nom="AFFE_CHAR_MECA_C",op= 7,sd_prod=char_meca, - fr="Affectation de charges et conditions aux limites mécaniques complexes", - reentrant='n', - UIinfo={"groupes":("Chargements","Mécanique",)}, - regles=(AU_MOINS_UN('DDL_IMPO','FORCE_POUTRE','LIAISON_DDL', ),), - MODELE =SIMP(statut='o',typ=modele_sdaster ), - METHODE =SIMP(statut='c',typ='TXM',fr="Stratégie de résolution pour les déplacements imposés", - into=('DUALISATION',),defaut='DUALISATION',), - # METHODE='ELIMINATION' est traité dans le fortran mais dangereux actuellement - DDL_IMPO =FACT(statut='f',max='**', - fr="Impose à des noeuds une ou plusieurs valeurs de déplacement (ou de certaines grandeurs asscociées)", - regles=(AU_MOINS_UN('TOUT','GROUP_MA','MAILLE','GROUP_NO','NOEUD',), - AU_MOINS_UN('DX','DY','DZ','DRX','DRY','DRZ','GRX','PRES','PHI','LIAISON','GLIS' ),), - TOUT =SIMP(statut='f',typ='TXM',into=("OUI",) ), - GROUP_NO =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'), - NOEUD =SIMP(statut='f',typ=no ,validators=NoRepeat(),max='**'), - GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - MAILLE =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), - SANS_GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - SANS_MAILLE =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), - SANS_GROUP_NO =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'), - SANS_NOEUD =SIMP(statut='f',typ=no ,validators=NoRepeat(),max='**'), - LIAISON =SIMP(statut='f',typ='TXM',into=('ENCASTRE',)), - DX =SIMP(statut='f',typ='C' ), - DY =SIMP(statut='f',typ='C' ), - DZ =SIMP(statut='f',typ='C' ), - DRX =SIMP(statut='f',typ='C' ), - DRY =SIMP(statut='f',typ='C' ), - DRZ =SIMP(statut='f',typ='C' ), - GRX =SIMP(statut='f',typ='C' ), - PRES =SIMP(statut='f',typ='C' ), - PHI =SIMP(statut='f',typ='C' ), - GLIS =SIMP(statut='f',typ='C' ), - ), - FORCE_POUTRE =FACT(statut='f',max='**', - fr="Applique des forces linéiques sur des éléments de type poutre", - regles=(AU_MOINS_UN('TOUT','GROUP_MA','MAILLE'), - PRESENT_ABSENT('TOUT','GROUP_MA','MAILLE'), - AU_MOINS_UN('FX','FY','FZ','N','VY','VZ',), - PRESENT_ABSENT('FX','N','VY','VZ',), - PRESENT_ABSENT('FY','N','VY','VZ',), - PRESENT_ABSENT('FZ','N','VY','VZ',), - PRESENT_ABSENT('N','FX','FY','FZ',), - PRESENT_ABSENT('VY', 'FX','FY','FZ',), - PRESENT_ABSENT('VZ','FX','FY','FZ', ),), - TOUT =SIMP(statut='f',typ='TXM',into=("OUI",) ), - GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - MAILLE =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), - TYPE_CHARGE =SIMP(statut='f',typ='TXM',defaut="FORCE",into=("VENT","FORCE") ), - FX =SIMP(statut='f',typ='C' ), - FY =SIMP(statut='f',typ='C' ), - FZ =SIMP(statut='f',typ='C' ), - N =SIMP(statut='f',typ='C' ), - VY =SIMP(statut='f',typ='C' ), - VZ =SIMP(statut='f',typ='C' ), - ), - LIAISON_DDL =FACT(statut='f',max='**', - fr="Définit une relation linéaire entre les DDLs de deux ou plusieurs noeuds", - regles=(UN_PARMI('GROUP_NO','NOEUD', ),), - GROUP_NO =SIMP(statut='f',typ=grno,max='**'), - NOEUD =SIMP(statut='f',typ=no ,max='**'), - DDL =SIMP(statut='o',typ='TXM',max='**'), - COEF_MULT =SIMP(statut='o',typ='R' ,max='**'), - COEF_IMPO =SIMP(statut='o',typ='C' ), - ), - INFO =SIMP(statut='f',typ='I',defaut= 1,into=( 1 , 2) ), -) ; - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2013 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: mickael.abbas at edf.fr -AFFE_CHAR_MECA_F=OPER(nom="AFFE_CHAR_MECA_F",op=7,sd_prod=char_meca, - fr="Affectation de charges et conditions aux limites mécaniques fonction d'un (ou plusieurs) paramètres", - reentrant='n', - UIinfo={"groupes":("Chargements","Mécanique",)}, - regles=(AU_MOINS_UN('DDL_IMPO','FACE_IMPO','LIAISON_DDL','FORCE_NODALE', - 'FORCE_FACE','FORCE_ARETE','FORCE_CONTOUR','FORCE_INTERNE', - 'PRES_REP','FORCE_POUTRE','VITE_FACE','IMPE_FACE','ONDE_PLANE', - 'LIAISON_OBLIQUE','PRE_EPSI','LIAISON_GROUP','LIAISON_UNIF', - 'LIAISON_SOLIDE','FORCE_COQUE','LIAISON_COQUE','FORCE_TUYAU', - 'EFFE_FOND','FLUX_THM_REP',),), - VERI_NORM =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON") ), - MODELE =SIMP(statut='o',typ=modele_sdaster), - METHODE =SIMP(statut='c',typ='TXM',fr="Stratégie de résolution pour les déplacements imposés", - into=('DUALISATION',),defaut='DUALISATION',), - # METHODE='ELIMINATION' est traité dans le fortran mais dangereux actuellement - - DDL_IMPO =FACT(statut='f',max='**', - fr="Impose à des noeuds une ou plusieurs valeurs de déplacement (ou de certaines grandeurs asscociées) fournies" - +" par l'intermédiaire d'un concept fonction ", - regles=(AU_MOINS_UN('TOUT','GROUP_MA','MAILLE','GROUP_NO','NOEUD'), - AU_MOINS_UN('DX','DY','DZ','DRX','DRY','DRZ','GRX','PRES','PHI', - 'TEMP','PRE1','PRE2','GONF','LIAISON','H1X', - 'H1Y','H1Z','E1X','E1Y','E1Z','E2X','E2Y','E2Z', - 'E3X','E3Y','E3Z','E4X','E4Y','E4Z','LAGS_C','GLIS'),), - TOUT =SIMP(statut='f',typ='TXM',into=("OUI",) ), - GROUP_NO =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'), - NOEUD =SIMP(statut='f',typ=no ,validators=NoRepeat(),max='**'), - GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - MAILLE =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), - SANS_GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - SANS_MAILLE =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), - SANS_GROUP_NO =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'), - SANS_NOEUD =SIMP(statut='f',typ=no ,validators=NoRepeat(),max='**'), - LIAISON =SIMP(statut='f',typ='TXM',into=('ENCASTRE',)), - DX =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - DY =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - DZ =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - DRX =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - DRY =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - DRZ =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - GRX =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - PRES =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - PHI =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - TEMP =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - PRE1 =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - PRE2 =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - GONF =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - H1X =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - H1Y =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - H1Z =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - E1X =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - E1Y =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - E1Z =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - E2X =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - E2Y =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - E2Z =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - E3X =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - E3Y =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - E3Z =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - E4X =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - E4Y =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - E4Z =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - LAGS_C =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - GLIS =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - ), - - FACE_IMPO =FACT(statut='f',max='**', - fr="Impose à tous les noeuds d'une face une ou plusieurs valeurs de déplacement (ou de certaines grandeurs associées)" - +" fournies par l'intérmédiaire d'un concept fonction", - regles=(UN_PARMI('GROUP_MA','MAILLE'), - AU_MOINS_UN('DX','DY','DZ','DRX','DRY','DRZ','GRX','PRES','PHI','TEMP','PRE1','PRE2','DNOR','DTAN'), - EXCLUS('DNOR','DX'), - EXCLUS('DNOR','DY'), - EXCLUS('DNOR','DZ'), - EXCLUS('DNOR','DRX'), - EXCLUS('DNOR','DRY'), - EXCLUS('DNOR','DRZ'), - EXCLUS('DTAN','DX'), - EXCLUS('DTAN','DY'), - EXCLUS('DTAN','DZ'), - EXCLUS('DTAN','DRX'), - EXCLUS('DTAN','DRY'), - EXCLUS('DTAN','DRZ'),), -# rajout d un mot cle REPERE : / GLOBAL / LOCAL - GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - MAILLE =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), - SANS_GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - SANS_MAILLE =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), - SANS_GROUP_NO =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'), - SANS_NOEUD =SIMP(statut='f',typ=no ,validators=NoRepeat(),max='**'), - DX =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - DY =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - DZ =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - DRX =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - DRY =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - DRZ =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - GRX =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - PRES =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - PHI =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - TEMP =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - PRE1 =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - PRE2 =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - DNOR =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - DTAN =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - ), - - LIAISON_DDL =FACT(statut='f',max='**', - fr="Définit une relation linéaire entre des DDLs de deux ou plusieurs noeuds, les valeurs sont fournies par" - +" l'intermediaire d'un concept de type fonction", - regles=(UN_PARMI('GROUP_NO','NOEUD'),UN_PARMI('COEF_MULT','COEF_MULT_FONC'),), - GROUP_NO =SIMP(statut='f',typ=grno,max='**'), - NOEUD =SIMP(statut='f',typ=no ,max='**'), - DDL =SIMP(statut='o',typ='TXM',max='**'), - COEF_MULT =SIMP(statut='f',typ='R',max='**'), - COEF_MULT_FONC =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule),max='**'), - COEF_IMPO =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule) ), - ), - - LIAISON_OBLIQUE =FACT(statut='f',max='**', - fr="Applique à des noeuds la meme valeur de déplacement définie composante par composante dans un repère oblique" - +" quelconque, les valeurs sont fournis par l'intermédiaire d'un concept fonction", - regles=(AU_MOINS_UN('TOUT','GROUP_MA','MAILLE','GROUP_NO','NOEUD'), - AU_MOINS_UN('DX','DY','DZ','DRX','DRY','DRZ'),), - GROUP_NO =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'), - NOEUD =SIMP(statut='f',typ=no ,validators=NoRepeat(),max='**'), - GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - MAILLE =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), - SANS_GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - SANS_MAILLE =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), - SANS_GROUP_NO =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'), - SANS_NOEUD =SIMP(statut='f',typ=no ,validators=NoRepeat(),max='**'), - ANGL_NAUT =SIMP(statut='o',typ='R',max=3), - DX =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - DY =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - DZ =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - DRX =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - DRY =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - DRZ =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - ), - - LIAISON_GROUP =FACT(statut='f',max='**', - fr="Définit la meme relation linéaire entre certains DDLs de couples de noeuds, les valeurs sont fournies par" - +" l'intermédiaire de concept fonction", - regles=(UN_PARMI('GROUP_MA_1','MAILLE_1','GROUP_NO_1','NOEUD_1'), - UN_PARMI('GROUP_MA_2','MAILLE_2','GROUP_NO_2','NOEUD_2'), - EXCLUS('GROUP_MA_1','GROUP_NO_2'), - EXCLUS('GROUP_MA_1','NOEUD_2'), - EXCLUS('GROUP_NO_1','GROUP_MA_2'), - EXCLUS('GROUP_NO_1','MAILLE_2'), - EXCLUS('MAILLE_1','GROUP_NO_2'), - EXCLUS('MAILLE_1','NOEUD_2'), - EXCLUS('NOEUD_1','GROUP_MA_2'), - EXCLUS('NOEUD_1','MAILLE_2'), - EXCLUS('SANS_NOEUD','SANS_GROUP_NO'),), - GROUP_MA_1 =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - MAILLE_1 =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), - GROUP_NO_1 =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'), - NOEUD_1 =SIMP(statut='f',typ=no ,validators=NoRepeat(),max='**'), - GROUP_MA_2 =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - MAILLE_2 =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), - GROUP_NO_2 =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'), - NOEUD_2 =SIMP(statut='f',typ=no ,validators=NoRepeat(),max='**'), - SANS_NOEUD =SIMP(statut='f',typ=no ,validators=NoRepeat(),max='**'), - SANS_GROUP_NO =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'), - DDL_1 =SIMP(statut='o',typ='TXM',max='**'), - COEF_MULT_1 =SIMP(statut='o',typ='R',max='**'), - DDL_2 =SIMP(statut='o',typ='TXM',max='**'), - COEF_MULT_2 =SIMP(statut='o',typ='R',max='**'), - COEF_IMPO =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule) ), - SOMMET =SIMP(statut='f',typ='TXM',into=("OUI",) ), - TRAN =SIMP(statut='f',typ='R',max=3), - ANGL_NAUT =SIMP(statut='f',typ='R',max=3), - CENTRE =SIMP(statut='f',typ='R',max=3), - ), - - LIAISON_UNIF =FACT(statut='f',max='**', - fr="Impose une meme valeur (inconnue) à des DDLs d'un ensemble de noeuds", - regles=(UN_PARMI('GROUP_NO','NOEUD','GROUP_MA','MAILLE'),), - GROUP_NO =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'), - NOEUD =SIMP(statut='f',typ=no ,validators=NoRepeat(),max='**'), - GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - MAILLE =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), - SANS_GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - SANS_MAILLE =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), - SANS_GROUP_NO =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'), - SANS_NOEUD =SIMP(statut='f',typ=no ,validators=NoRepeat(),max='**'), - DDL =SIMP(statut='o',typ='TXM',max='**'), - ), - - - LIAISON_SOLIDE =FACT(statut='f',max='**', - fr="Modélise une partie indéformable d'une structure." - +" Le mot clé TRAN permettent d'imposer le déplacement de la partie indéformable.", - regles=(UN_PARMI('GROUP_NO','NOEUD','GROUP_MA','MAILLE'),), - - GROUP_NO =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'), - NOEUD =SIMP(statut='f',typ=no ,validators=NoRepeat(),max='**'), - GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - MAILLE =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), - SANS_GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - SANS_MAILLE =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), - SANS_GROUP_NO =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'), - SANS_NOEUD =SIMP(statut='f',typ=no ,validators=NoRepeat(),max='**'), - - TRAN =SIMP(statut='f',typ='R',max=3 ), - DIST_MIN =SIMP(statut='f',typ='R'), - NUME_LAGR =SIMP(statut='f',typ='TXM',defaut="NORMAL",into=("NORMAL","APRES") ), - ), - - - - FORCE_NODALE =FACT(statut='f',max='**', - fr="Applique à des noeuds des forces nodales dont les valeurs des composantes sont fournies par l'intermédiaire" - +" d'un concept fonction", - regles=(UN_PARMI('GROUP_NO','NOEUD'), - AU_MOINS_UN('FX','FY','FZ','MX','MY','MZ'),), - GROUP_NO =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'), - NOEUD =SIMP(statut='f',typ=no ,validators=NoRepeat(),max='**'), - FX =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - FY =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - FZ =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - MX =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - MY =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - MZ =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - ANGL_NAUT =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule),max=3 ), - ), - - FORCE_FACE =FACT(statut='f',max='**', - fr="Applique des forces surfaciques sur une face d'élément volumique dont les valeurs des composantes sont fournies" - +" par l'intermédiaire d'un concept fonction", - regles=(AU_MOINS_UN('GROUP_MA','MAILLE'), - AU_MOINS_UN('FX','FY','FZ'),), - GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - MAILLE =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), - FX =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - FY =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - FZ =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - ), - FORCE_ARETE =FACT(statut='f',max='**', - fr="Applique des forces linéiques à une arete d'élément volumique ou de coque dont les valeurs des composantes sont" - +" fournies par l'intermédiaire d'un concept fonction", - regles=(AU_MOINS_UN('GROUP_MA','MAILLE'), - AU_MOINS_UN('FX','FY','FZ','MX','MY','MZ'),), - GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - MAILLE =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), - FX =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - FY =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - FZ =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - MX =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - MY =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - MZ =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - ), - FORCE_CONTOUR =FACT(statut='f',max='**', - fr="Applique des forces linéiques au bord d'un domaine 2D ou AXIS ou AXIS_FOURIER, dont les valeurs des composantes" - +" sont fournies par l'intermédiaire d'un concept fonction", - regles=(AU_MOINS_UN('GROUP_MA','MAILLE'), - AU_MOINS_UN('FX','FY','FZ','MX','MY','MZ'),), - GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - MAILLE =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), - FX =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - FY =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - FZ =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - MX =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - MY =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - MZ =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - ), - - FORCE_INTERNE =FACT(statut='f',max='**', - fr="Applique des forces volumiques (2D ou 3D) à un domaine volumique, dont les valeurs des composantes sont fournies" - +" par l'intermédiaire d'un concept fonction", - regles=(AU_MOINS_UN('TOUT','GROUP_MA','MAILLE'), - PRESENT_ABSENT('TOUT','GROUP_MA','MAILLE'), - AU_MOINS_UN('FX','FY','FZ'),), - TOUT =SIMP(statut='f',typ='TXM',into=("OUI",) ), - GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - MAILLE =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), - FX =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - FY =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - FZ =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - ), - - PRES_REP =FACT(statut='f',max='**', - fr="Applique une pression à un domaine de milieu continu 2D ou 3D ou à un domaine de coques et tuyaux, dont les" - +" valeurs imposées (pression et/ou cisaillement) sont fournies par l'intermédiaire d'un concept fonction", - regles=(AU_MOINS_UN('TOUT','GROUP_MA','MAILLE','FISSURE'), - PRESENT_ABSENT('TOUT','GROUP_MA','MAILLE','FISSURE'), - AU_MOINS_UN('PRES','CISA_2D'),), - TOUT =SIMP(statut='f',typ='TXM',into=("OUI",) ), - GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - MAILLE =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), - FISSURE =SIMP(statut='f',typ=fiss_xfem,min=1,max=100,), - PRES =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - CISA_2D =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - ), - - EFFE_FOND =FACT(statut='f',max='**', - fr="Calcul l'effet de fond sur une branche de tuyauterie (modélisation 3D) soumise" - +" à une pression dont la valeur est fournie par l'intermédiaire d'un concept fonction", - regles=(AU_MOINS_UN('GROUP_MA','MAILLE'),), - GROUP_MA_INT =SIMP(statut='o',typ=grma,validators=NoRepeat(),max='**'), - GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - MAILLE =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), - PRES =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule) ), - ), - - PRE_EPSI =FACT(statut='f',max='**', - fr="Applique un chargement de déformation initiale à un élément 2D, 3D ou de structure dont les composantes" - +" du tenseur de déformation sont fournies par l'intermédiaire d'un concept fonction", - regles=(AU_MOINS_UN('TOUT','GROUP_MA','MAILLE'), - PRESENT_ABSENT('TOUT','GROUP_MA','MAILLE'), - AU_MOINS_UN('EPXX','EPYY','EPZZ','EPXY','EPXZ','EPYZ'),), - TOUT =SIMP(statut='f',typ='TXM',into=("OUI",) ), - GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - MAILLE =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), - EPXX =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - EPYY =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - EPZZ =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - EPXY =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - EPXZ =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - EPYZ =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - ), - - FORCE_POUTRE =FACT(statut='f',max='**', - fr="Applique des forces linéiques sur des éléments de type poutre dont les valeurs sont fournies par" - +" l'intermédiaire d'un concept fonction", - regles=(AU_MOINS_UN('TOUT','GROUP_MA','MAILLE'), - PRESENT_ABSENT('TOUT','GROUP_MA','MAILLE'), - - ), -# rajout d un mot cle REPERE : / GLOBAL / LOCAL - TOUT =SIMP(statut='f',typ='TXM',into=("OUI",) ), - GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - MAILLE =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), - TYPE_CHARGE =SIMP(statut='f',typ='TXM',defaut="FORCE",into=("VENT","FORCE") ), - # moment interdit avec VENT - b_force = BLOC(condition = "TYPE_CHARGE == 'FORCE'", - regles=( - AU_MOINS_UN('FX','FY','FZ','MX','MY','MZ','N','VY','VZ','MT','MFY','MFZ'), - PRESENT_ABSENT('FX','N','VY','VZ','MT','MFY','MFZ'), - PRESENT_ABSENT('FY','N','VY','VZ','MT','MFY','MFZ'), - PRESENT_ABSENT('FZ','N','VY','VZ','MT','MFY','MFZ'), - PRESENT_ABSENT('MX','N','VY','VZ','MT','MFY','MFZ'), - PRESENT_ABSENT('MY','N','VY','VZ','MT','MFY','MFZ'), - PRESENT_ABSENT('MZ','N','VY','VZ','MT','MFY','MFZ'), - PRESENT_ABSENT('N','FX','FY','FZ','MX','MY','MZ'), - PRESENT_ABSENT('VY','FX','FY','FZ','MX','MY','MZ'), - PRESENT_ABSENT('VZ','FX','FY','FZ','MX','MY','MZ'), - PRESENT_ABSENT('MT','FX','FY','FZ','MX','MY','MZ'), - PRESENT_ABSENT('MFY','FX','FY','FZ','MX','MY','MZ'), - PRESENT_ABSENT('MFZ','FX','FY','FZ','MX','MY','MZ'),), - FX =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - FY =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - FZ =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - MX =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - MY =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - MZ =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - N =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - VY =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - VZ =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - MT =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - MFY =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - MFZ =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - ), - b_vent = BLOC(condition = "TYPE_CHARGE == 'VENT'", - regles=( - AU_MOINS_UN('FX','FY','FZ','N','VY','VZ',), - PRESENT_ABSENT('FX','N','VY','VZ',), - PRESENT_ABSENT('FY','N','VY','VZ',), - PRESENT_ABSENT('FZ','N','VY','VZ',), - PRESENT_ABSENT('N','FX','FY','FZ',), - PRESENT_ABSENT('VY','FX','FY','FZ',), - PRESENT_ABSENT('VZ','FX','FY','FZ',),), - FX =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - FY =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - FZ =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - N =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - VY =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - VZ =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - ), - ), - - FORCE_TUYAU =FACT(statut='f',max='**', - fr="Applique une pression sur des éléments TUYAU, la valeur est fournie par l'intermédiaire d'un concept fonction", - regles=(AU_MOINS_UN('TOUT','GROUP_MA','MAILLE'), - PRESENT_ABSENT('TOUT','GROUP_MA','MAILLE'),), - TOUT =SIMP(statut='f',typ='TXM',into=("OUI",) ), - GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - MAILLE =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), - PRES =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - ), - - FORCE_COQUE =FACT(statut='f',max='**', - fr="Applique des forces surfaciques sur des éléments de types coques dont les valeurs sont fournies par" - +" l'intermédiaires d'un concept fonction", - regles=(AU_MOINS_UN('TOUT','GROUP_MA','MAILLE'), - PRESENT_ABSENT('TOUT','GROUP_MA','MAILLE'), - AU_MOINS_UN('FX','FY','FZ','MX','MY','MZ','PRES','F1','F2','F3','MF1','MF2'), - PRESENT_ABSENT('FX','PRES','F1','F2','F3','MF1','MF2'), - PRESENT_ABSENT('FY','PRES','F1','F2','F3','MF1','MF2'), - PRESENT_ABSENT('FZ','PRES','F1','F2','F3','MF1','MF2'), - PRESENT_ABSENT('MX','PRES','F1','F2','F3','MF1','MF2'), - PRESENT_ABSENT('MY','PRES','F1','F2','F3','MF1','MF2'), - PRESENT_ABSENT('MZ','PRES','F1','F2','F3','MF1','MF2'), - PRESENT_ABSENT('F1','PRES','FX','FY','FZ','MX','MY','MZ'), - PRESENT_ABSENT('F2','PRES','FX','FY','FZ','MX','MY','MZ'), - PRESENT_ABSENT('F3','PRES','FX','FY','FZ','MX','MY','MZ'), - PRESENT_ABSENT('MF1','PRES','FX','FY','FZ','MX','MY','MZ'), - PRESENT_ABSENT('MF2','PRES','FX','FY','FZ','MX','MY','MZ'), - PRESENT_ABSENT('PRES','FX','FY','FZ','MX','MY','MZ','F1','F2','F3','MF1','MF2'),), -# rajout d un mot cle REPERE : / GLOBAL / LOCAL - TOUT =SIMP(statut='f',typ='TXM',into=("OUI",) ), - GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - MAILLE =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), - FX =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - FY =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - FZ =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - MX =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - MY =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - MZ =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - F1 =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - F2 =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - F3 =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - MF1 =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - MF2 =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - PRES =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - PLAN =SIMP(statut='f',typ='TXM',defaut="MAIL", - into=("SUP","INF","MOY","MAIL") ), - ), - - LIAISON_COQUE =FACT(statut='f',max='**', - fr="Permet de représenter le raccord entre des éléments de coques au moyen des relations linéaires", - regles=(AU_MOINS_UN('GROUP_MA_1','MAILLE_1','GROUP_MA_2','MAILLE_2', - 'GROUP_NO_1','NOEUD_1','GROUP_NO_2','NOEUD_2',),), - GROUP_MA_1 =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - MAILLE_1 =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), - GROUP_NO_1 =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'), - NOEUD_1 =SIMP(statut='f',typ=no ,validators=NoRepeat(),max='**'), - SANS_GROUP_MA_1 =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - SANS_MAILLE_1 =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), - SANS_GROUP_NO_1 =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'), - SANS_NOEUD_1 =SIMP(statut='f',typ=no ,validators=NoRepeat(),max='**'), - GROUP_MA_2 =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - MAILLE_2 =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), - GROUP_NO_2 =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'), - NOEUD_2 =SIMP(statut='f',typ=no ,validators=NoRepeat(),max='**'), - SANS_GROUP_MA_2 =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - SANS_MAILLE_2 =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), - SANS_GROUP_NO_2 =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'), - SANS_NOEUD_2 =SIMP(statut='f',typ=no ,validators=NoRepeat(),max='**'), - NUME_LAGR =SIMP(statut='f',typ='TXM',defaut="NORMAL",into=("NORMAL","APRES",) ), - ), - - - VITE_FACE =FACT(statut='f',max='**', - fr="Impose des vitesses normales à une face (phénomène ACOUSTIQUE) dont les valeurs sont fournies par" - +" l'intermédiaire d'un concept fonction", - regles=(AU_MOINS_UN('GROUP_MA','MAILLE'), - PRESENT_ABSENT('GROUP_MA','MAILLE'),), - GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - MAILLE =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), - VNOR =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule) ), - ), - IMPE_FACE =FACT(statut='f',max='**', - fr="Applique à une face une impédance acoustique dont la valeur est fournie par l'intermédiaire" - +" d'un concept fonction", - regles=(AU_MOINS_UN('GROUP_MA','MAILLE'), - PRESENT_ABSENT('GROUP_MA','MAILLE'),), - GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - MAILLE =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), - IMPE =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule) ), - ), - ONDE_PLANE =FACT(statut='f',max=1, - fr="Impose un chargement sismique par onde plane dont la valeur est fournie par l'intermédiaire" - +" d'un concept fonction", - regles=(AU_MOINS_UN('GROUP_MA','MAILLE'), - PRESENT_ABSENT('GROUP_MA','MAILLE'),), - DIRECTION =SIMP(statut='o',typ='R',min=3, max=3), - TYPE_ONDE =SIMP(statut='o',typ='TXM', into=("S", "P", "SV", "SH",) ), - FONC_SIGNAL =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule) ), - MAILLE =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), - GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - ), - - - - FLUX_THM_REP =FACT(statut='f',max='**', - fr="Applique à un domaine continue 2D ou 3D un flux de chaleur et/ou un apport de masse fluide (flux hydraulique)" - +" dont les valeurs des flux sont fournies par l'intermédiaire d'un concept fonction", - regles=(AU_MOINS_UN('TOUT','GROUP_MA','MAILLE'), - PRESENT_ABSENT('TOUT','GROUP_MA','MAILLE'), - AU_MOINS_UN('FLUN','FLUN_HYDR1','FLUN_HYDR2'),), - TOUT =SIMP(statut='f',typ='TXM',into=("OUI",) ), - GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - MAILLE =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), - FLUN =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - FLUN_HYDR1 =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - FLUN_HYDR2 =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - ), - - INFO =SIMP(statut='f',typ='I',defaut= 1,into=( 1 , 2) ), -) ; - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2013 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: mickael.abbas at edf.fr -AFFE_CHAR_THER=OPER(nom="AFFE_CHAR_THER",op=34,sd_prod=char_ther - ,fr="Affectation de charges et conditions aux limites thermiques constantes", - reentrant='n', - UIinfo={"groupes":("Chargements","Thermique",)}, - regles=(AU_MOINS_UN('TEMP_IMPO','SOURCE','FLUX_REP','ECHANGE', - 'ECHANGE_PAROI','PRE_GRAD_TEMP','LIAISON_DDL','LIAISON_GROUP', - 'LIAISON_UNIF','LIAISON_CHAMNO','RAYONNEMENT','LIAISON_MAIL' ),), - MODELE =SIMP(statut='o',typ=(modele_sdaster) ), - METHODE =SIMP(statut='c',typ='TXM',fr="Stratégie de résolution pour les températures imposées", - into=('DUALISATION',),defaut='DUALISATION',), - # METHODE='ELIMINATION' est traité dans le fortran mais dangereux actuellement - - TEMP_IMPO =FACT(statut='f',max='**', - regles=(AU_MOINS_UN('TOUT','GROUP_MA','MAILLE','GROUP_NO','NOEUD'), - AU_MOINS_UN('TEMP','TEMP_MIL','TEMP_SUP','TEMP_INF'),), - TOUT =SIMP(statut='f',typ='TXM',into=("OUI",) ), - GROUP_NO =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'), - NOEUD =SIMP(statut='f',typ=no ,validators=NoRepeat(),max='**'), - GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - MAILLE =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), - SANS_GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - SANS_MAILLE =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), - SANS_GROUP_NO =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'), - SANS_NOEUD =SIMP(statut='f',typ=no ,validators=NoRepeat(),max='**'), - TEMP =SIMP(statut='f',typ='R'), - TEMP_MIL =SIMP(statut='f',typ='R'), - TEMP_INF =SIMP(statut='f',typ='R'), - TEMP_SUP =SIMP(statut='f',typ='R'), ), - - FLUX_REP =FACT(statut='f',max='**', - regles=(AU_MOINS_UN('TOUT','GROUP_MA','MAILLE'), - PRESENT_ABSENT('TOUT','GROUP_MA','MAILLE'), - PRESENT_PRESENT('CARA_TORSION','GROUP_MA'), - AU_MOINS_UN('FLUN','FLUN_INF','FLUN_SUP','CARA_TORSION') ), - TOUT =SIMP(statut='f',typ='TXM',into=("OUI",) ), - GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - MAILLE =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), - FLUN =SIMP(statut='f',typ='R'), - FLUN_INF =SIMP(statut='f',typ='R'), - FLUN_SUP =SIMP(statut='f',typ='R'), - CARA_TORSION =SIMP(statut='f',typ=table_sdaster), - ), - - - RAYONNEMENT =FACT(statut='f',max='**', - fr="Attention, exprimer les températures en Celsius si rayonnement", - regles=(AU_MOINS_UN('TOUT','GROUP_MA','MAILLE'), - PRESENT_ABSENT('TOUT','GROUP_MA','MAILLE'),), - TOUT =SIMP(statut='f',typ='TXM',into=("OUI",) ), - GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - MAILLE =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), - SIGMA =SIMP(statut='o',typ='R'), - EPSILON =SIMP(statut='o',typ='R'), - TEMP_EXT =SIMP(statut='o',typ='R'), - ), - - ECHANGE =FACT(statut='f',max='**', - regles=(AU_MOINS_UN('TOUT','GROUP_MA','MAILLE'), - PRESENT_ABSENT('TOUT','GROUP_MA','MAILLE'), - AU_MOINS_UN('COEF_H','COEF_H_INF','COEF_H_SUP'), - ENSEMBLE('COEF_H','TEMP_EXT',), - ENSEMBLE('COEF_H_INF','TEMP_EXT_INF'), - ENSEMBLE('COEF_H_SUP','TEMP_EXT_SUP'),), - TOUT =SIMP(statut='f',typ='TXM',into=("OUI",) ), - GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - MAILLE =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), - COEF_H =SIMP(statut='f',typ='R'), - TEMP_EXT =SIMP(statut='f',typ='R'), - COEF_H_INF =SIMP(statut='f',typ='R'), - TEMP_EXT_INF =SIMP(statut='f',typ='R'), - COEF_H_SUP =SIMP(statut='f',typ='R'), - TEMP_EXT_SUP =SIMP(statut='f',typ='R'), - ), - - SOURCE =FACT(statut='f',max='**', - regles=(UN_PARMI('SOUR','SOUR_CALCULEE',), - PRESENT_ABSENT('TOUT','GROUP_MA','MAILLE'), - PRESENT_ABSENT('SOUR_CALCULEE','TOUT','GROUP_MA','MAILLE'),), - TOUT =SIMP(statut='f',typ='TXM',into=("OUI",) ), - GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - MAILLE =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), - SOUR =SIMP(statut='f',typ='R'), - SOUR_CALCULEE =SIMP(statut='f',typ=(cham_elem) ), - ), - - PRE_GRAD_TEMP =FACT(statut='f',max='**', - regles=(AU_MOINS_UN('TOUT','GROUP_MA','MAILLE'), - PRESENT_ABSENT('TOUT','GROUP_MA','MAILLE'), - AU_MOINS_UN('FLUX_X','FLUX_Y','FLUX_Z'),), - TOUT =SIMP(statut='f',typ='TXM',into=("OUI",) ), - GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - MAILLE =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), - FLUX_X =SIMP(statut='f',typ='R' ), - FLUX_Y =SIMP(statut='f',typ='R' ), - FLUX_Z =SIMP(statut='f',typ='R' ), - ), - - LIAISON_DDL =FACT(statut='f',max='**', - regles=(UN_PARMI('GROUP_NO','NOEUD', ),), - GROUP_NO =SIMP(statut='f',typ=grno,max='**'), - NOEUD =SIMP(statut='f',typ=no ,max='**'), - DDL =SIMP(statut='f',typ='TXM',max='**', - into=("TEMP","TEMP_MIL","TEMP_INF","TEMP_SUP") ), - COEF_MULT =SIMP(statut='o',typ='R',max='**'), - COEF_IMPO =SIMP(statut='o',typ='R' ), - ), - - LIAISON_GROUP =FACT(statut='f',max='**', - regles=(UN_PARMI('GROUP_MA_1','MAILLE_1','GROUP_NO_1','NOEUD_1'), - UN_PARMI('GROUP_MA_2','MAILLE_2','GROUP_NO_2','NOEUD_2'), - EXCLUS('GROUP_MA_1','GROUP_NO_2'), - EXCLUS('GROUP_MA_1','NOEUD_2'), - EXCLUS('GROUP_NO_1','GROUP_MA_2'), - EXCLUS('GROUP_NO_1','MAILLE_2'), - EXCLUS('MAILLE_1','GROUP_NO_2'), - EXCLUS('MAILLE_1','NOEUD_2'), - EXCLUS('NOEUD_1','GROUP_MA_2'), - EXCLUS('NOEUD_1','MAILLE_2'), - EXCLUS('SANS_NOEUD','SANS_GROUP_NO'),), - GROUP_MA_1 =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - MAILLE_1 =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), - GROUP_NO_1 =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'), - NOEUD_1 =SIMP(statut='f',typ=no ,validators=NoRepeat(),max='**'), - GROUP_MA_2 =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - MAILLE_2 =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), - GROUP_NO_2 =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'), - NOEUD_2 =SIMP(statut='f',typ=no ,validators=NoRepeat(),max='**'), - SANS_NOEUD =SIMP(statut='f',typ=no ,validators=NoRepeat(),max='**'), - SANS_GROUP_NO =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'), - DDL_1 =SIMP(statut='f',typ='TXM',max='**',defaut="TEMP", - into=("TEMP","TEMP_MIL","TEMP_INF","TEMP_SUP") ), - COEF_MULT_1 =SIMP(statut='o',typ='R',max='**'), - DDL_2 =SIMP(statut='f',typ='TXM',max='**',defaut="TEMP", - into=("TEMP","TEMP_MIL","TEMP_INF","TEMP_SUP",) ), - COEF_MULT_2 =SIMP(statut='o',typ='R',max='**'), - COEF_IMPO =SIMP(statut='o',typ='R' ), - SOMMET =SIMP(statut='f',typ='TXM',into=("OUI",) ), - TRAN =SIMP(statut='f',typ='R',max='**'), - ANGL_NAUT =SIMP(statut='f',typ='R',max='**'), - CENTRE =SIMP(statut='f',typ='R',max='**'), - ), - - LIAISON_MAIL =FACT(statut='f',max='**', - regles=(AU_MOINS_UN('GROUP_MA_MAIT','MAILLE_MAIT'), - AU_MOINS_UN('GROUP_MA_ESCL','MAILLE_ESCL','GROUP_NO_ESCL', - 'NOEUD_ESCL'),), - GROUP_MA_MAIT =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - MAILLE_MAIT =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), - GROUP_MA_ESCL =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - MAILLE_ESCL =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), - GROUP_NO_ESCL =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'), - NOEUD_ESCL =SIMP(statut='f',typ=no ,validators=NoRepeat(),max='**'), - TRAN =SIMP(statut='f',typ='R',max='**' ), - ANGL_NAUT =SIMP(statut='f',typ='R',max='**' ), - CENTRE =SIMP(statut='f',typ='R',max='**' ), - ELIM_MULT =SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON") ), - ), - - ECHANGE_PAROI =FACT(statut='f',max='**', - regles=(UN_PARMI('GROUP_MA_1','MAILLE_1','FISSURE'), - UN_PARMI('GROUP_MA_2','MAILLE_2','FISSURE'),), - GROUP_MA_1 =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - MAILLE_1 =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), - GROUP_MA_2 =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - MAILLE_2 =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), - FISSURE =SIMP(statut='f',typ=fiss_xfem,validators=NoRepeat(),min=1,max=100,), -# ---------------------- - b_paroi_maillee =BLOC( - condition = "FISSURE == None", - COEF_H =SIMP(statut='o',typ='R'), - TRAN =SIMP(statut='f',typ='R',min=2,max=3), - ), -# ---------------------- - b_xfem =BLOC( - condition = "FISSURE != None", - regles =(UN_PARMI('COEF_H','TEMP_CONTINUE'),), - COEF_H =SIMP(statut='f',typ='R'), - TEMP_CONTINUE =SIMP(statut='f',typ='TXM',into=("OUI",)), - ), - ), - - LIAISON_UNIF =FACT(statut='f',max='**', - regles=(UN_PARMI('GROUP_NO','NOEUD','GROUP_MA','MAILLE'),), - GROUP_NO =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'), - NOEUD =SIMP(statut='f',typ=no ,validators=NoRepeat(),max='**'), - GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - MAILLE =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), - DDL =SIMP(statut='f',typ='TXM',max='**',defaut="TEMP", - into=("TEMP","TEMP_MIL","TEMP_INF","TEMP_SUP") ), - ), - - LIAISON_CHAMNO =FACT(statut='f',max='**', - CHAM_NO =SIMP(statut='o',typ=cham_no_sdaster),# CO()# "il faut definir une structure de donnee generique chamno" - COEF_IMPO =SIMP(statut='o',typ='R' ), - NUME_LAGR =SIMP(statut='f',typ='TXM',defaut="NORMAL",into=("NORMAL","APRES") ), - ), - - CONVECTION =FACT(statut='f',max='**', - VITESSE =SIMP(statut='o',typ=(cham_no_sdaster) ), - ), - - - INFO =SIMP(statut='f',typ='I',defaut= 1,into=(1,2) ), -) ; - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2013 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: mickael.abbas at edf.fr -AFFE_CHAR_THER_F=OPER(nom="AFFE_CHAR_THER_F",op=34,sd_prod=char_ther, - fr="Affectation de charges et conditions aux limites thermiques fonction d'un (ou plusieurs)" - +" paramètres (temps, ...)", - reentrant='n', - UIinfo={"groupes":("Chargements","Thermique",)}, - regles=(AU_MOINS_UN('TEMP_IMPO','SOURCE','SOUR_NL','FLUX_REP','FLUX_NL','ECHANGE', - 'ECHANGE_PAROI','LIAISON_DDL','LIAISON_GROUP','LIAISON_UNIF', - 'PRE_GRAD_TEMP','RAYONNEMENT'),), - MODELE =SIMP(statut='o',typ=(modele_sdaster) ), - - TEMP_IMPO =FACT(statut='f',max='**', - regles=(AU_MOINS_UN('TOUT','GROUP_MA','MAILLE','GROUP_NO','NOEUD'), - AU_MOINS_UN('TEMP','TEMP_MIL','TEMP_SUP','TEMP_INF'),), - TOUT =SIMP(statut='f',typ='TXM',into=("OUI",) ), - GROUP_NO =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'), - NOEUD =SIMP(statut='f',typ=no ,validators=NoRepeat(),max='**'), - GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - MAILLE =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), - SANS_GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - SANS_MAILLE =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), - SANS_GROUP_NO =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'), - SANS_NOEUD =SIMP(statut='f',typ=no ,validators=NoRepeat(),max='**'), - TEMP =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - TEMP_MIL =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - TEMP_INF =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - TEMP_SUP =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - ), - - FLUX_REP =FACT(statut='f',max='**', - regles=(AU_MOINS_UN('TOUT','GROUP_MA','MAILLE'), - PRESENT_ABSENT('TOUT','GROUP_MA','MAILLE'), - AU_MOINS_UN('FLUN','FLUN_INF','FLUN_SUP','FLUX_X','FLUX_Y','FLUX_Z'),), - TOUT =SIMP(statut='f',typ='TXM',into=("OUI",) ), - GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - MAILLE =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), - FLUN =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - FLUN_INF =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - FLUN_SUP =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - FLUX_X =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - FLUX_Y =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - FLUX_Z =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - ), - - FLUX_NL =FACT(statut='f',max='**', - regles=(AU_MOINS_UN('TOUT','GROUP_MA','MAILLE'), - PRESENT_ABSENT('TOUT','GROUP_MA','MAILLE'),), - TOUT =SIMP(statut='f',typ='TXM',into=("OUI",) ), - GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - MAILLE =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), - FLUN =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule) ), - ), - - - RAYONNEMENT =FACT(statut='f',max='**', - fr="Attention, exprimer les températures en Celsius si rayonnement", - regles=(AU_MOINS_UN('TOUT','GROUP_MA','MAILLE'), - PRESENT_ABSENT('TOUT','GROUP_MA','MAILLE'),), - TOUT =SIMP(statut='f',typ='TXM',into=("OUI",) ), - GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - MAILLE =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), - SIGMA =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule) ), - EPSILON =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule) ), - TEMP_EXT =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule) ), - ), - - - - ECHANGE =FACT(statut='f',max='**', - regles=(AU_MOINS_UN('TOUT','GROUP_MA','MAILLE'), - PRESENT_ABSENT('TOUT','GROUP_MA','MAILLE'), - AU_MOINS_UN('COEF_H','COEF_H_INF','COEF_H_SUP'), - ENSEMBLE('COEF_H','TEMP_EXT'), - ENSEMBLE('COEF_H_INF','TEMP_EXT_INF'), - ENSEMBLE('COEF_H_SUP','TEMP_EXT_SUP'),), - TOUT =SIMP(statut='f',typ='TXM',into=("OUI",) ), - GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - MAILLE =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), - COEF_H =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - TEMP_EXT =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - COEF_H_INF =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - TEMP_EXT_INF =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - COEF_H_SUP =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - TEMP_EXT_SUP =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - ), - - - SOURCE =FACT(statut='f',max='**', - regles=(UN_PARMI('TOUT','GROUP_MA','MAILLE'),), - TOUT =SIMP(statut='f',typ='TXM',into=("OUI",) ), - GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - MAILLE =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), - SOUR =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule) ), - ), - - SOUR_NL =FACT(statut='f',max='**', - regles=(UN_PARMI('TOUT','GROUP_MA','MAILLE'),), - TOUT =SIMP(statut='f',typ='TXM',into=("OUI",) ), - GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - MAILLE =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), - SOUR =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule) ), - ), - - PRE_GRAD_TEMP =FACT(statut='f',max='**', - regles=(AU_MOINS_UN('TOUT','GROUP_MA','MAILLE'), - PRESENT_ABSENT('TOUT','GROUP_MA','MAILLE'), - AU_MOINS_UN('FLUX_X','FLUX_Y','FLUX_Z'),), - TOUT =SIMP(statut='f',typ='TXM',into=("OUI",) ), - GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - MAILLE =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), - FLUX_X =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - FLUX_Y =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - FLUX_Z =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - ), - - ECHANGE_PAROI =FACT(statut='f',max='**', - regles=(UN_PARMI('GROUP_MA_1','MAILLE_1','FISSURE'), - UN_PARMI('GROUP_MA_2','MAILLE_2','FISSURE'),), - GROUP_MA_1 =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - MAILLE_1 =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), - GROUP_MA_2 =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - MAILLE_2 =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), - FISSURE =SIMP(statut='f',typ=fiss_xfem,validators=NoRepeat(),min=1,max=100,), -# ---------------------- - b_paroi_maillee =BLOC( - condition = "FISSURE == None", - COEF_H =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - TRAN =SIMP(statut='f',typ='R',min=2,max=3), - ), -# ---------------------- - b_xfem =BLOC( - condition = "FISSURE != None", - regles =(UN_PARMI('COEF_H','TEMP_CONTINUE'),), - COEF_H =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - TEMP_CONTINUE =SIMP(statut='f',typ='TXM',into=("OUI",)), - ), - ), - - LIAISON_DDL =FACT(statut='f',max='**', - regles=(UN_PARMI('GROUP_NO','NOEUD'),), - GROUP_NO =SIMP(statut='f',typ=grno,max='**'), - NOEUD =SIMP(statut='f',typ=no ,max='**'), - DDL =SIMP(statut='f',typ='TXM',max='**',into=("TEMP","TEMP_MIL","TEMP_INF","TEMP_SUP") ), - COEF_MULT =SIMP(statut='o',typ='R',max='**'), - COEF_IMPO =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule) ), - ), - - LIAISON_GROUP =FACT(statut='f',max='**', - regles=(UN_PARMI('GROUP_MA_1','MAILLE_1','GROUP_NO_1','NOEUD_1'), - UN_PARMI('GROUP_MA_2','MAILLE_2','GROUP_NO_2','NOEUD_2'), - EXCLUS('GROUP_MA_1','GROUP_NO_2'), - EXCLUS('GROUP_MA_1','NOEUD_2'), - EXCLUS('GROUP_NO_1','GROUP_MA_2'), - EXCLUS('GROUP_NO_1','MAILLE_2'), - EXCLUS('MAILLE_1','GROUP_NO_2'), - EXCLUS('MAILLE_1','NOEUD_2'), - EXCLUS('NOEUD_1','GROUP_MA_2'), - EXCLUS('NOEUD_1','MAILLE_2'), - EXCLUS('SANS_NOEUD','SANS_GROUP_NO'),), - GROUP_MA_1 =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - MAILLE_1 =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), - GROUP_NO_1 =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'), - NOEUD_1 =SIMP(statut='f',typ=no ,validators=NoRepeat(),max='**'), - GROUP_MA_2 =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - MAILLE_2 =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), - GROUP_NO_2 =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'), - NOEUD_2 =SIMP(statut='f',typ=no ,validators=NoRepeat(),max='**'), - SANS_NOEUD =SIMP(statut='f',typ=no ,validators=NoRepeat(),max='**'), - SANS_GROUP_NO =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'), - DDL_1 =SIMP(statut='f',typ='TXM',max='**',defaut="TEMP", - into=("TEMP","TEMP_MIL","TEMP_INF","TEMP_SUP") ), - COEF_MULT_1 =SIMP(statut='o',typ='R',max='**'), - DDL_2 =SIMP(statut='f',typ='TXM',max='**',defaut="TEMP", - into=("TEMP","TEMP_MIL","TEMP_INF","TEMP_SUP") ), - COEF_MULT_2 =SIMP(statut='o',typ='R',max='**'), - COEF_IMPO =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule) ), - SOMMET =SIMP(statut='f',typ='TXM',into=("OUI",) ), - TRAN =SIMP(statut='f',typ='R',max='**'), - ANGL_NAUT =SIMP(statut='f',typ='R',max='**'), - CENTRE =SIMP(statut='f',typ='R',max='**'), - ), - - LIAISON_UNIF =FACT(statut='f',max='**', - regles=(UN_PARMI('GROUP_NO','NOEUD','GROUP_MA','MAILLE'),), - GROUP_NO =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'), - NOEUD =SIMP(statut='f',typ=no ,validators=NoRepeat(),max='**'), - GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - MAILLE =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), - DDL =SIMP(statut='f',typ='TXM',defaut="TEMP", - into=("TEMP","TEMP_MIL","TEMP_INF","TEMP_SUP") ), - ), - - CONVECTION =FACT(statut='f',max='**', - VITESSE =SIMP(statut='o',typ=cham_no_sdaster ), - ), - - INFO =SIMP(statut='f',typ='I',defaut= 1,into=(1,2) ), -) ; - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2013 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: jacques.pellet at edf.fr -AFFE_MATERIAU=OPER(nom="AFFE_MATERIAU",op=6,sd_prod=cham_mater, - fr="Affecter des matériaux à des zones géométriques d'un maillage", - reentrant='n', - UIinfo={"groupes":("Modélisation",)}, - MAILLAGE =SIMP(statut='o',typ=maillage_sdaster), - MODELE =SIMP(statut='f',typ=modele_sdaster), - - # affectation du nom du matériau (par mailles): - # ---------------------------------------------- - AFFE =FACT(statut='o',max='**', - regles=(UN_PARMI('TOUT','GROUP_MA','MAILLE'),), - TOUT =SIMP(statut='f',typ='TXM',into=("OUI",) ), - GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - MAILLE =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), - MATER =SIMP(statut='o',typ=mater_sdaster,max=30), - ), - - # affectation de comportement (multifibres pour l'instant): - # ---------------------------------------------- - AFFE_COMPOR =FACT(statut='f',max='**', - regles=(UN_PARMI('TOUT','GROUP_MA','MAILLE'),), - TOUT =SIMP(statut='f',typ='TXM',into=("OUI",) ), - GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - MAILLE =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), - COMPOR =SIMP(statut='o',typ=compor_sdaster,max=1), - ), - - # affectation des variables de commande : - # -------------------------------------------------- - # un mot clé caché qui ne sert qu'à boucler sur les VARC possibles : - LIST_NOM_VARC =SIMP(statut='c',typ='TXM', defaut=("TEMP","GEOM","CORR","IRRA","HYDR","SECH","EPSA", - "M_ACIER","M_ZIRC","NEUT1","NEUT2","PTOT","DIVU",)), - - AFFE_VARC =FACT(statut='f',max='**', - regles=(PRESENT_ABSENT('TOUT','GROUP_MA','MAILLE'), - PRESENT_ABSENT('GROUP_MA','TOUT'), - PRESENT_ABSENT('MAILLE','TOUT'), - # La règle suivante permet de donner VALE_REF sans donner EVOL ni CHAM_GD - # Elle est nécessaire pour la THM (voir doc U4.43.03) - # Mais on ne peut plus l'écrire depuis de VALE_REF est dans un bloc - # AU_MOINS_UN('EVOL','CHAM_GD','VALE_REF'), - EXCLUS('EVOL','CHAM_GD'), - ), - - TOUT =SIMP(statut='f',typ='TXM',into=("OUI",) ), # [défaut] - GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - MAILLE =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), - - NOM_VARC =SIMP(statut='o',typ='TXM', into=("TEMP","GEOM","CORR","IRRA","HYDR","SECH","EPSA", - "M_ACIER","M_ZIRC","NEUT1","NEUT2","PTOT","DIVU",)), - CHAM_GD =SIMP(statut='f',typ=cham_gd_sdaster,), - EVOL =SIMP(statut='f',typ=evol_sdaster,), - - B_EVOL =BLOC(condition="EVOL!=None", - NOM_CHAM =SIMP(statut='f',typ='TXM',into=("TEMP","CORR","IRRA","NEUT","GEOM", - "HYDR_ELNO","HYDR_NOEU", - "META_ELNO","META_NOEU", - "EPSA_ELNO","EPSA_NOEU","PTOT","DIVU",)), - PROL_DROITE =SIMP(statut='f',typ='TXM',defaut="EXCLU",into=("CONSTANT","LINEAIRE","EXCLU") ), - PROL_GAUCHE =SIMP(statut='f',typ='TXM',defaut="EXCLU",into=("CONSTANT","LINEAIRE","EXCLU") ), - FONC_INST =SIMP(statut='f',typ=(fonction_sdaster,formule)), - ), - - # VALE_REF est nécessaire pour certaines VARC : - B_VALE_REF =BLOC(condition="NOM_VARC in ('TEMP','SECH')", - VALE_REF =SIMP(statut='o',typ='R'), - ), - - ), - - # mots clés cachés pour les variables de commande NEUT1/NEUT2 : - # -------------------------------------------------------------- - VARC_NEUT1 =FACT(statut='d', - NOM_VARC =SIMP(statut='c',typ='TXM',defaut="NEUT1"), - GRANDEUR =SIMP(statut='c',typ='TXM',defaut="NEUT_R"), - CMP_GD =SIMP(statut='c',typ='TXM',max=1,min=1,defaut=("X1")), - CMP_VARC =SIMP(statut='c',typ='TXM',max=1,min=1,defaut=("NEUT1")), - ), - VARC_NEUT2 =FACT(statut='d', - NOM_VARC =SIMP(statut='c',typ='TXM',defaut="NEUT2"), - GRANDEUR =SIMP(statut='c',typ='TXM',defaut="NEUT_R"), - CMP_GD =SIMP(statut='c',typ='TXM',max=1,min=1,defaut=("X1")), - CMP_VARC =SIMP(statut='c',typ='TXM',max=1,min=1,defaut=("NEUT2")), - ), - - # mots clés cachés pour variable de commande TEMP : - # -------------------------------------------------- - VARC_TEMP =FACT(statut='d', - NOM_VARC =SIMP(statut='c',typ='TXM',defaut="TEMP"), - GRANDEUR =SIMP(statut='c',typ='TXM',defaut="TEMP_R"), - CMP_GD =SIMP(statut='c',typ='TXM',max=4,min=4,defaut=("TEMP","TEMP_MIL","TEMP_INF","TEMP_SUP",)), - CMP_VARC =SIMP(statut='c',typ='TXM',max=4,min=4,defaut=("TEMP","TEMP_MIL","TEMP_INF","TEMP_SUP",)), - ), - - # mots clés cachés pour variable de commande GEOM : - # -------------------------------------------------- - VARC_GEOM =FACT(statut='d', - NOM_VARC =SIMP(statut='c',typ='TXM',defaut="GEOM"), - GRANDEUR =SIMP(statut='c',typ='TXM',defaut="GEOM_R"), - CMP_GD =SIMP(statut='c',typ='TXM',max=3,min=3,defaut=("X","Y","Z",)), - CMP_VARC =SIMP(statut='c',typ='TXM',max=3,min=3,defaut=("X","Y","Z",)), - ), - - # mots clés cachés pour variable de commande PTOT : - # ------------------------------------------------- - VARC_PTOT =FACT(statut='d', - NOM_VARC =SIMP(statut='c',typ='TXM',defaut="PTOT"), - GRANDEUR =SIMP(statut='c',typ='TXM',defaut="DEPL_R"), - CMP_GD =SIMP(statut='c',typ='TXM',max=1,min=1,defaut=("PTOT",)), - CMP_VARC =SIMP(statut='c',typ='TXM',max=1,min=1,defaut=("PTOT",)), - ), - - # mots clés cachés pour variable de commande SECH : - # -------------------------------------------------- - VARC_SECH =FACT(statut='d', - NOM_VARC =SIMP(statut='c',typ='TXM',defaut="SECH"), - GRANDEUR =SIMP(statut='c',typ='TXM',defaut="TEMP_R"), - CMP_GD =SIMP(statut='c',typ='TXM',max=1,min=1,defaut=("TEMP",)), - CMP_VARC =SIMP(statut='c',typ='TXM',max=1,min=1,defaut=("SECH",)), - ), - - # mots clés cachés pour variable de commande HYDR : - # -------------------------------------------------- - VARC_HYDR =FACT(statut='d', - NOM_VARC =SIMP(statut='c',typ='TXM',defaut="HYDR"), - GRANDEUR =SIMP(statut='c',typ='TXM',defaut="HYDR_R"), - CMP_GD =SIMP(statut='c',typ='TXM',max=1,min=1,defaut=("HYDR",)), - CMP_VARC =SIMP(statut='c',typ='TXM',max=1,min=1,defaut=("HYDR",)), - ), - - # mots clés cachés pour variable de commande CORR : - # -------------------------------------------------- - VARC_CORR =FACT(statut='d', - NOM_VARC =SIMP(statut='c',typ='TXM',defaut="CORR"), - GRANDEUR =SIMP(statut='c',typ='TXM',defaut="CORR_R"), - CMP_GD =SIMP(statut='c',typ='TXM',max=1,min=1,defaut=("CORR",)), - CMP_VARC =SIMP(statut='c',typ='TXM',max=1,min=1,defaut=("CORR",)), - ), - - # mots clés cachés pour variable de commande IRRA : - # -------------------------------------------------- - VARC_IRRA =FACT(statut='d', - NOM_VARC =SIMP(statut='c',typ='TXM',defaut="IRRA"), - GRANDEUR =SIMP(statut='c',typ='TXM',defaut="IRRA_R"), - CMP_GD =SIMP(statut='c',typ='TXM',max=1,min=1,defaut=("IRRA",)), - CMP_VARC =SIMP(statut='c',typ='TXM',max=1,min=1,defaut=("IRRA",)), - ), - - # mots clés cachés pour variable de commande DIVU : - # -------------------------------------------------- - VARC_DIVU =FACT(statut='d', - NOM_VARC =SIMP(statut='c',typ='TXM',defaut="DIVU"), - GRANDEUR =SIMP(statut='c',typ='TXM',defaut="EPSI_R"), - CMP_GD =SIMP(statut='c',typ='TXM',max=1,min=1,defaut=("DIVU",)), - CMP_VARC =SIMP(statut='c',typ='TXM',max=1,min=1,defaut=("DIVU",)), - ), - - # mots clés cachés pour variable de commande EPSA : - # -------------------------------------------------- - VARC_EPSA =FACT(statut='d', - NOM_VARC =SIMP(statut='c',typ='TXM',defaut="EPSA"), - GRANDEUR =SIMP(statut='c',typ='TXM',defaut="EPSI_R"), - CMP_GD =SIMP(statut='c',typ='TXM',max=6,min=6,defaut=("EPXX","EPYY","EPZZ","EPXY","EPXZ","EPYZ",)), - CMP_VARC =SIMP(statut='c',typ='TXM',max=6,min=6,defaut=("EPSAXX","EPSAYY","EPSAZZ","EPSAXY","EPSAXZ","EPSAYZ",)), - ), - # mots clés cachés pour variable de commande metallurgique ACIER : - # ----------------------------------------------------------------- - VARC_M_ACIER =FACT(statut='d', - NOM_VARC =SIMP(statut='c',typ='TXM',defaut="M_ACIER"), - GRANDEUR =SIMP(statut='c',typ='TXM',defaut="VARI_R"), - CMP_GD =SIMP(statut='c',typ='TXM',max=7,min=7,defaut=("V1","V2","V3","V4","V5","V6","V7")), - CMP_VARC =SIMP(statut='c',typ='TXM',max=7,min=7,defaut=("PFERRITE","PPERLITE","PBAINITE", - "PMARTENS","TAUSTE","TRANSF","TACIER",)), - ), - # mots clés cachés pour variable de commande metallurgique ZIRCALOY : - # -------------------------------------------------------------------- - VARC_M_ZIRC =FACT(statut='d', - NOM_VARC =SIMP(statut='c',typ='TXM',defaut="M_ZIRC"), - GRANDEUR =SIMP(statut='c',typ='TXM',defaut="VARI_R"), - CMP_GD =SIMP(statut='c',typ='TXM',max=4,min=4,defaut=("V1","V2","V3","V4")), - CMP_VARC =SIMP(statut='c',typ='TXM',max=4,min=4,defaut=("ALPHPUR","ALPHBETA","TZIRC","TEMPS")), - ), - - INFO =SIMP(statut='f',typ='I',defaut=1,into=(1,2) ), -) ; - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2013 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: jacques.pellet at edf.fr -AFFE_MODELE=OPER(nom="AFFE_MODELE",op=18,sd_prod=modele_sdaster, - UIinfo={"groupes":("Modélisation",)}, - fr="Définir le phénomène physique modélisé et le type d'éléments finis sur le maillage",reentrant='n', - regles=(AU_MOINS_UN('AFFE','AFFE_SOUS_STRUC'),UN_PARMI('MAILLAGE','GRILLE')), - MAILLAGE =SIMP(statut='f',typ=maillage_sdaster), - GRILLE =SIMP(statut='f',typ=grille_sdaster), - INFO =SIMP(statut='f',typ='I',defaut=1,into=(1,2) ), - VERIF =SIMP(statut='f',typ='TXM',validators=NoRepeat(),max=2,into=("MAILLE","NOEUD") ), -# -#==== -# Définition des grandeurs caractéristiques -#==== -# - GRANDEUR_CARA =FACT(statut='f',max=1, - fr="Grandeurs caractéristiques pour l'adimensionnement des indicateurs d'erreur HM", - ang="Characteristic data for HM error estimators adimensionalisation", -# - LONGUEUR =SIMP(statut='f',typ='R',val_min=0, - fr ="Longueur caractéristique", - ang="Characteristic length",), - PRESSION =SIMP(statut='f',typ='R',val_min=0, - fr ="Pression caractéristique", - ang="Characteristic pressure",), - TEMPERATURE =SIMP(statut='f',typ='R',val_min=0, - fr ="Température caractéristique", - ang="Characteristic temperature",),), -# - AFFE_SOUS_STRUC =FACT(statut='f', - regles=(UN_PARMI('TOUT','SUPER_MAILLE'),), - TOUT =SIMP(statut='f',typ='TXM',into=("OUI",) ), - SUPER_MAILLE =SIMP(statut='f',typ=ma,validators=NoRepeat(),max='**'), - PHENOMENE =SIMP(statut='f',typ='TXM',defaut="MECANIQUE",into=("MECANIQUE",) ), - ), - AFFE =FACT(statut='f',max='**', - regles=(UN_PARMI('TOUT','GROUP_MA','GROUP_NO','MAILLE','NOEUD'),), - TOUT =SIMP(statut='f',typ='TXM',into=("OUI",) ), - GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - GROUP_NO =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'), - MAILLE =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), - NOEUD =SIMP(statut='f',typ=no ,validators=NoRepeat(),max='**'), - PHENOMENE =SIMP(statut='o',typ='TXM', - into=("MECANIQUE","THERMIQUE","ACOUSTIQUE") ), - b_mecanique =BLOC( condition = "PHENOMENE=='MECANIQUE'", - fr="modélisations mécaniques", - MODELISATION =SIMP(statut='o',typ='TXM',validators=NoRepeat(),max='**',into=( - "2D_DIS_T", # RESP. : FLEJOU J.L.FLEJOU - "2D_DIS_TR", # RESP. : FLEJOU J.L.FLEJOU - "2D_FLUI_ABSO", # RESP. : DEVESA G.DEVESA - "2D_FLUI_PESA", # RESP. : GREFFET N.GREFFET - "2D_FLUI_STRU", # RESP. : GREFFET N.GREFFET - "2D_FLUIDE", # RESP. : GREFFET N.GREFFET - "3D", # RESP. : DESROCHES X.DESROCHES - "3D_ABSO", # RESP. : DEVESA G.DEVESA - "3D_FAISCEAU", # RESP. : VOLDOIRE F.VOLDOIRE - "3D_FLUI_ABSO", # RESP. : DEVESA G.DEVESA - "3D_FLUIDE", # RESP. : GREFFET N.GREFFET - "3D_INCO", # RESP. : SFAYOLLE S.FAYOLLE - "3D_INCO_UP", # RESP. : SFAYOLLE S.FAYOLLE - "3D_INCO_OSGS", # RESP. : SFAYOLLE S.FAYOLLE - "3D_INCO_GD", # RESP. : SFAYOLLE S.FAYOLLE - "3D_INCO_LOG", # RESP. : SFAYOLLE S.FAYOLLE - "3D_INCO_LUP", # RESP. : SFAYOLLE S.FAYOLLE - "3D_SI", # RESP. : DESROCHES X.DESROCHES - "3D_GRAD_EPSI", # RESP. : MICHEL S.MICHEL - "3D_GRAD_VARI", # RESP. : MICHEL S.MICHEL - "3D_GVNO", # RESP. : BEAURAIN J.BEAURAIN - "3D_JOINT", # RESP. : LAVERNE J.LAVERNE - "3D_JOINT_HYME", # RESP. : LAVERNE J.LAVERNE - "3D_INTERFACE", # RESP. : LAVERNE J.LAVERNE - "3D_INTERFACE_S", # RESP. : LAVERNE J.LAVERNE - "AXIS", # RESP. : LEFEBVRE J.P.LEFEBVRE - "AXIS_FLUI_STRU", # RESP. : GREFFET N.GREFFET - "AXIS_FLUIDE", # RESP. : GREFFET N.GREFFET - "AXIS_FOURIER", # RESP. : DESROCHES X.DESROCHES - "AXIS_INCO", # RESP. : SFAYOLLE S.FAYOLLE - "AXIS_INCO_UP", # RESP. : SFAYOLLE S.FAYOLLE - "AXIS_INCO_OSGS", # RESP. : SFAYOLLE S.FAYOLLE - "AXIS_INCO_GD", # RESP. : SFAYOLLE S.FAYOLLE - "AXIS_INCO_LOG", # RESP. : SFAYOLLE S.FAYOLLE - "AXIS_INCO_LUP", # RESP. : SFAYOLLE S.FAYOLLE - "AXIS_SI", # RESP. : DESROCHES X.DESROCHES - "AXIS_GRAD_VARI", # RESP. : MICHEL S.MICHEL - "AXIS_GVNO", # RESP. : BEAURAIN J.BEAURAIN - "AXIS_JOINT", # RESP. : LAVERNE J.LAVERNE - "AXIS_INTERFACE", # RESP. : LAVERNE J.LAVERNE - "AXIS_INTERFACE_S",# RESP. : LAVERNE J.LAVERNE - "AXIS_ELDI", # RESP. : LAVERNE J.LAVERNE - "BARRE", # RESP. : FLEJOU J.L.FLEJOU - "CABLE_GAINE", # RESP. : - "2D_BARRE", # RESP. : FLEJOU J.L.FLEJOU - "C_PLAN", # RESP. : LEFEBVRE J.P.LEFEBVRE - "C_PLAN_SI", # RESP. : DESROCHES X.DESROCHES - "C_PLAN_GRAD_EPSI",# RESP. : MICHEL S.MICHEL - "CABLE", # RESP. : FLEJOU J.L.FLEJOU - "CABLE_POULIE", # RESP. : None - "COQUE_3D", # RESP. : DESROCHES X.DESROCHES - "COQUE_AXIS", # RESP. : DESROCHES X.DESROCHES - "COQUE_C_PLAN", # RESP. : DESROCHES X.DESROCHES - "COQUE_D_PLAN", # RESP. : DESROCHES X.DESROCHES - "D_PLAN", # RESP. : LEFEBVRE J.P.LEFEBVRE - "D_PLAN_GRAD_EPSI",# RESP. : MICHEL S.MICHEL - "D_PLAN_GRAD_VARI",# RESP. : MICHEL S.MICHEL - "D_PLAN_GVNO", # RESP. : BEAURAIN J.BEAURAIN - "D_PLAN_GRAD_SIGM",# RESP. : GRANET S.GRANET - "PLAN_JOINT", # RESP. : LAVERNE J.LAVERNE - "PLAN_JOINT_HYME", # RESP. : LAVERNE J.LAVERNE - "PLAN_INTERFACE", # RESP. : LAVERNE J.LAVERNE - "PLAN_INTERFACE_S",# RESP. : LAVERNE J.LAVERNE - "PLAN_ELDI", # RESP. : LAVERNE J.LAVERNE - "D_PLAN_ABSO", # RESP. : DEVESA G.DEVESA - "D_PLAN_INCO", # RESP. : SFAYOLLE S.FAYOLLE - "D_PLAN_INCO_UP", # RESP. : SFAYOLLE S.FAYOLLE - "D_PLAN_INCO_OSGS",# RESP. : SFAYOLLE S.FAYOLLE - "D_PLAN_INCO_GD", # RESP. : SFAYOLLE S.FAYOLLE - "D_PLAN_INCO_LOG", # RESP. : SFAYOLLE S.FAYOLLE - "D_PLAN_INCO_LUP", # RESP. : SFAYOLLE S.FAYOLLE - "D_PLAN_SI", # RESP. : DESROCHES X.DESROCHES - "DIS_T", # RESP. : FLEJOU J.L.FLEJOU - "DIS_TR", # RESP. : FLEJOU J.L.FLEJOU - "DKT", # RESP. : DESROCHES X.DESROCHES - "DKTG", # RESP. : MARKOVIC D.MARKOVIC - "DST", # RESP. : DESROCHES X.DESROCHES - "FLUI_STRU", # RESP. : GREFFET N.GREFFET - "GRILLE_EXCENTRE", # RESP. : ROSPARS C.ROSPARS - "GRILLE_MEMBRANE", # RESP. : ROSPARS C.ROSPARS - "MEMBRANE", # RESP. : ROSPARS C.ROSPARS - "POU_C_T", # RESP. : FLEJOU J.L.FLEJOU - "POU_D_E", # RESP. : FLEJOU J.L.FLEJOU - "POU_D_EM", # RESP. : FLEJOU J.L.FLEJOU - "POU_D_T", # RESP. : FLEJOU J.L.FLEJOU - "POU_D_T_GD", # RESP. : FLEJOU J.L.FLEJOU - "POU_D_TG", # RESP. : FLEJOU J.L.FLEJOU - "POU_D_TGM", # RESP. : FLEJOU J.L.FLEJOU - "Q4G", # RESP. : DESROCHES X.DESROCHES - "Q4GG", # RESP. : DESROCHES X.DESROCHES - "TUYAU_3M", # RESP. : PROIX J.M.PROIX - "TUYAU_6M", # RESP. : PROIX J.M.PROIX - "SHB", # RESP. : DESROCHES X.DESROCHES - "D_PLAN_HHM", # RESP. : GRANET S.GRANET - "D_PLAN_HM", # RESP. : GRANET S.GRANET - "D_PLAN_HM_SI", # RESP. : GRANET S.GRANET - "D_PLAN_THM", # RESP. : GRANET S.GRANET - "D_PLAN_HHMD", # RESP. : GRANET S.GRANET - "D_PLAN_HH2MD", # RESP. : GRANET S.GRANET - "D_PLAN_HMD", # RESP. : GRANET S.GRANET - "D_PLAN_THHD", # RESP. : GRANET S.GRANET - "D_PLAN_THH2D", # RESP. : GRANET S.GRANET - "D_PLAN_THVD", # RESP. : GRANET S.GRANET - "D_PLAN_THH2MD", # RESP. : GRANET S.GRANET - "D_PLAN_THHMD", # RESP. : GRANET S.GRANET - "D_PLAN_THMD", # RESP. : GRANET S.GRANET - "D_PLAN_HHMS", # RESP. : GRANET S.GRANET - "D_PLAN_HH2MS", # RESP. : GRANET S.GRANET - "D_PLAN_HMS", # RESP. : GRANET S.GRANET - "D_PLAN_THHS", # RESP. : GRANET S.GRANET - "D_PLAN_THH2S", # RESP. : GRANET S.GRANET - "D_PLAN_THVS", # RESP. : GRANET S.GRANET - "D_PLAN_THH2MS", # RESP. : GRANET S.GRANET - "D_PLAN_THHMS", # RESP. : GRANET S.GRANET - "D_PLAN_THMS", # RESP. : GRANET S.GRANET - "D_PLAN_HM_P", # RESP. : GRANET S.GRANET - "D_PLAN_HS", # RESP. : GRANET S.GRANET - "D_PLAN_HHD", # RESP. : GRANET S.GRANET - "D_PLAN_HHS", # RESP. : GRANET S.GRANET - "D_PLAN_HH2D", # RESP. : GRANET S.GRANET - "D_PLAN_HH2S", # RESP. : GRANET S.GRANET - "D_PLAN_2DG", # RESP. : GRANET S.GRANET - "D_PLAN_DIL", # RESP. : GRANET S.GRANET - "3D_DIL", # RESP. : GRANET S.GRANET - "AXIS_THM", # RESP. : GRANET S.GRANET - "AXIS_HHM", # RESP. : GRANET S.GRANET - "AXIS_HM", # RESP. : GRANET S.GRANET - "AXIS_HH2MD", # RESP. : GRANET S.GRANET - "AXIS_HHMD", # RESP. : GRANET S.GRANET - "AXIS_HMD", # RESP. : GRANET S.GRANET - "AXIS_THHD", # RESP. : GRANET S.GRANET - "AXIS_THH2D", # RESP. : GRANET S.GRANET - "AXIS_THVD", # RESP. : GRANET S.GRANET - "AXIS_THHMD", # RESP. : GRANET S.GRANET - "AXIS_THH2MD", # RESP. : GRANET S.GRANET - "AXIS_THMD", # RESP. : GRANET S.GRANET - "AXIS_HH2MS", # RESP. : GRANET S.GRANET - "AXIS_HHMS", # RESP. : GRANET S.GRANET - "AXIS_HMS", # RESP. : GRANET S.GRANET - "AXIS_THHS", # RESP. : GRANET S.GRANET - "AXIS_THH2S", # RESP. : GRANET S.GRANET - "AXIS_THVS", # RESP. : GRANET S.GRANET - "AXIS_THHMS", # RESP. : GRANET S.GRANET - "AXIS_THH2MS", # RESP. : GRANET S.GRANET - "AXIS_THMS", # RESP. : GRANET S.GRANET - "AXIS_HHD", # RESP. : GRANET S.GRANET - "AXIS_HHS", # RESP. : GRANET S.GRANET - "AXIS_HH2D", # RESP. : GRANET S.GRANET - "AXIS_HH2S", # RESP. : GRANET S.GRANET - "3D_HHM" , # RESP. : GRANET S.GRANET - "3D_HM", # RESP. : GRANET S.GRANET - "3D_HM_SI", # RESP. : GRANET S.GRANET - "3D_THHM", # RESP. : GRANET S.GRANET - "3D_THM", # RESP. : GRANET S.GRANET - "3D_HHMD", # RESP. : GRANET S.GRANET - "3D_HMD", # RESP. : GRANET S.GRANET - "3D_THHD", # RESP. : GRANET S.GRANET - "3D_THVD", # RESP. : GRANET S.GRANET - "3D_THHMD", # RESP. : GRANET S.GRANET - "3D_THMD", # RESP. : GRANET S.GRANET - "3D_HHMS", # RESP. : GRANET S.GRANET - "3D_HMS", # RESP. : GRANET S.GRANET - "3D_THHS", # RESP. : GRANET S.GRANET - "3D_THVS", # RESP. : GRANET S.GRANET - "3D_THHMS", # RESP. : GRANET S.GRANET - "3D_THMS", # RESP. : GRANET S.GRANET - "3D_THH2MD", # RESP. : GRANET S.GRANET - "3D_THH2MS", # RESP. : GRANET S.GRANET - "3D_HH2MD", # RESP. : GRANET S.GRANET - "3D_HH2MS", # RESP. : GRANET S.GRANET - "3D_THH2S", # RESP. : GRANET S.GRANET - "3D_THH2D", # RESP. : GRANET S.GRANET - "3D_HS", # RESP. : GRANET S.GRANET - "3D_HHD", # RESP. : GRANET S.GRANET - "3D_HHS", # RESP. : GRANET S.GRANET - "3D_HH2D", # RESP. : GRANET S.GRANET - "3D_HH2S", # RESP. : GRANET S.GRANET - "VF1", # RESP. : GRANET S.GRANET - "3D_HH2SUDM", # RESP. : GRANET S.GRANET - "3D_HH2SUDA", # RESP. : GRANET S.GRANET - "3D_HH2SUC", # RESP. : GRANET S.GRANET - "D_PLAN_HH2SUDM", # RESP. : GRANET S.GRANET - "D_PLAN_HH2SUC", # RESP. : GRANET S.GRANET - "D_PLAN_HH2SUDA", # RESP. : GRANET S.GRANET - "PLAN_JHMS", - "AXIS_JHMS", - ) ) ), - - b_thermique =BLOC( condition = "PHENOMENE=='THERMIQUE'", - fr="modélisations thermiques", - MODELISATION =SIMP(statut='o',typ='TXM',validators=NoRepeat(),max='**',into=( - "3D", # RESP. : DURAND C.DURAND - "3D_DIAG", # RESP. : DURAND C.DURAND - "AXIS", # RESP. : DURAND C.DURAND - "AXIS_DIAG", # RESP. : DURAND C.DURAND - "AXIS_FOURIER", # RESP. : DESROCHES X.DESROCHES - "COQUE", # RESP. : DESROCHES X.DESROCHES - "COQUE_AXIS", # RESP. : DESROCHES X.DESROCHES - "COQUE_PLAN", # RESP. : DESROCHES X.DESROCHES - "PLAN", # RESP. : DURAND C.DURAND - "PLAN_DIAG", # RESP. : DURAND C.DURAND - ),),), - - b_acoustique =BLOC( condition = "PHENOMENE=='ACOUSTIQUE'", - fr="modélisations acoustiques", - MODELISATION =SIMP(statut='o',typ='TXM',validators=NoRepeat(),max='**',into=( - "3D", # RESP. : None - "PLAN" # RESP. : None - ), ),), - - ), - - PARTITION =FACT(statut='d', - PARALLELISME =SIMP(statut='f',typ='TXM',defaut="GROUP_ELEM", - into=("MAIL_CONTIGU","MAIL_DISPERSE","CENTRALISE","GROUP_ELEM")), - b_dist_maille =BLOC(condition = "PARALLELISME in ('MAIL_DISPERSE','MAIL_CONTIGU')", - CHARGE_PROC0_MA =SIMP(statut='f',typ='I',defaut=100,val_min=0,val_max=100), - ), - ), - - VERI_JACOBIEN =SIMP(statut='f',typ='TXM',into=('OUI','NON'),defaut='OUI', - fr ="Vérification de la forme des mailles (jacobiens tous de meme signe).",), -) ; - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2011 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: jacques.pellet at edf.fr - -def appl_cine_matr_prod(MATR_ASSE,**args): - if AsType(MATR_ASSE) == matr_asse_depl_r : return matr_asse_depl_r - if AsType(MATR_ASSE) == matr_asse_depl_c : return matr_asse_depl_c - if AsType(MATR_ASSE) == matr_asse_temp_r : return matr_asse_temp_r - if AsType(MATR_ASSE) == matr_asse_temp_c : return matr_asse_temp_c - if AsType(MATR_ASSE) == matr_asse_pres_r : return matr_asse_pres_r - if AsType(MATR_ASSE) == matr_asse_pres_c : return matr_asse_pres_c - raise AsException("type de concept resultat non prevu") - -APPL_CINE_MATR=OPER(nom="APPL_CINE_MATR",op=158,sd_prod=appl_cine_matr_prod, - fr="Appliquer les C.L. cinématiques sur la matrice", - reentrant='f', UIinfo={"groupes":("Résolution",)}, - MATR_ASSE =SIMP(statut='o',typ=(matr_asse_depl_r,matr_asse_depl_c,matr_asse_temp_r, - matr_asse_temp_c,matr_asse_pres_r,matr_asse_pres_c) ), - TITRE =SIMP(statut='f',typ='TXM',max='**'), - INFO =SIMP(statut='f',typ='I',into=(1,2) ), -) ; - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2011 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: jacques.pellet at edf.fr - -APPL_CINE_SCMB=OPER(nom="APPL_CINE_SCMB",op=159,sd_prod=cham_no_sdaster,reentrant='f', - fr="Application des C.L. cinématiques au second membre", - UIinfo={"groupes":("Résolution",)}, - CHAM_NO =SIMP(statut='o',typ=cham_no_sdaster), - MATR =SIMP(statut='o',typ=(matr_asse_depl_r,matr_asse_depl_c,matr_asse_temp_r, - matr_asse_temp_c,matr_asse_pres_r,matr_asse_pres_c) ), - CHAM_CINE =SIMP(statut='f',typ=cham_no_sdaster), - - TITRE =SIMP(statut='f',typ='TXM',max='**'), - INFO =SIMP(statut='f',typ='I',into=(1,2) ), -) ; - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2011 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: harinaivo.andriambololona at edf.fr - - -def asse_elem_ssd_prod(self,RESU_ASSE_SSD,**args): - MTYPES = { - 'MODELE' : modele_gene, - 'NUME_DDL_GENE' : nume_ddl_gene, - 'RIGI_GENE' : matr_asse_gene_r, - 'MASS_GENE' : matr_asse_gene_r, - } - for res in RESU_ASSE_SSD: - for mc, typ in MTYPES.items(): - if res[mc]: - self.typeSDProd(res[mc], typ) - return None - -ASSE_ELEM_SSD=MACRO(nom="ASSE_ELEM_SSD", - op=OPS('Macro.asse_elem_ssd_ops.asse_elem_ssd_ops'), - sd_prod=asse_elem_ssd_prod, - reentrant='n', - fr="Enchainer les commandes DEFI_MODELE_GENE, NUME_DDL_GENE et ASSE_MATR_GENE", - UIinfo={"groupes":("Matrices/vecteurs",)}, - -# pour les concepts de sortie - RESU_ASSE_SSD = FACT( statut='o', max=1, - regles=(PRESENT_PRESENT('RIGI_GENE','NUME_DDL_GENE'), - PRESENT_PRESENT('MASS_GENE','NUME_DDL_GENE'),), - MODELE=SIMP(statut='o',typ=CO,defaut=None), - NUME_DDL_GENE=SIMP(statut='f',typ=CO,defaut=None), - RIGI_GENE=SIMP(statut='f',typ=CO,defaut=None), - MASS_GENE=SIMP(statut='f',typ=CO,defaut=None), - ), - - INFO =SIMP(statut='f',typ='I',defaut= 1,into=( 1 , 2) ), - -# pour DEFI_MODELE_GENE - SOUS_STRUC =FACT(statut='o',max='**', - NOM =SIMP(statut='o',typ='TXM' ), - MACR_ELEM_DYNA =SIMP(statut='o',typ=macr_elem_dyna ), - ANGL_NAUT =SIMP(statut='f',typ='R',max=3), - TRANS =SIMP(statut='f',typ='R',max=3), - ), - LIAISON =FACT(statut='o',max='**', - SOUS_STRUC_1 =SIMP(statut='o',typ='TXM' ), - INTERFACE_1 =SIMP(statut='o',typ='TXM' ), - SOUS_STRUC_2 =SIMP(statut='o',typ='TXM' ), - INTERFACE_2 =SIMP(statut='o',typ='TXM' ), - regles=(EXCLUS('GROUP_MA_MAIT_1','GROUP_MA_MAIT_2','MAILLE_MAIT_2'), - EXCLUS('MAILLE_MAIT_1','GROUP_MA_MAIT_2','MAILLE_MAIT_2'),), - GROUP_MA_MAIT_1 =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - MAILLE_MAIT_1 =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), - GROUP_MA_MAIT_2 =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - MAILLE_MAIT_2 =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), - OPTION =SIMP(statut='f',typ='TXM',defaut="CLASSIQUE",into=("REDUIT","CLASSIQUE") ), - ), - VERIF =FACT(statut='d',max=1, - STOP_ERREUR =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON") ), - PRECISION =SIMP(statut='f',typ='R',defaut= 1.E-3 ), - CRITERE =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU") ), - ), - - -# pour NUME_DDL_GENE - METHODE =SIMP(statut='f',typ='TXM',defaut="CLASSIQUE",into=("CLASSIQUE","ELIMINE") ), - STOCKAGE =SIMP(statut='f',typ='TXM',defaut="LIGN_CIEL",into=("LIGN_CIEL","PLEIN") ), - -) ; - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: jacques.pellet at edf.fr -ASSE_MAILLAGE=OPER(nom="ASSE_MAILLAGE",op= 105,sd_prod=maillage_sdaster, - fr="Assembler deux maillages pour en former un nouveau", - reentrant='n', - UIinfo={"groupes":("Maillage",)}, - MAILLAGE_1 = SIMP(statut='o',typ=maillage_sdaster,), - MAILLAGE_2 = SIMP(statut='o',typ=maillage_sdaster,), - OPERATION = SIMP(statut='o',typ='TXM',into=("SOUS_STR","SUPERPOSE","COLLAGE"),), - b_collage = BLOC(condition = "OPERATION == 'COLLAGE'", - COLLAGE = FACT(statut='o', - GROUP_MA_1 =SIMP(statut='o',typ=grma), - GROUP_MA_2 =SIMP(statut='o',typ=grma), - ), - ), -) ; - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: mathieu.corus at edf.fr -def asse_matr_gene_prod(METHODE,**args): - if (METHODE=="INITIAL") : return matr_asse_gene_r - elif (args['OPTION']=="RIGI_GENE_C") : return matr_asse_gene_c - else : return matr_asse_gene_r - -ASSE_MATR_GENE=OPER(nom="ASSE_MATR_GENE",op= 128,sd_prod=asse_matr_gene_prod, - fr="Assemblage des matrices généralisées de macro éléments pour construction de la matrice globale généralisée", - reentrant='n', - UIinfo={"groupes":("Matrices et vecteurs",)}, - NUME_DDL_GENE =SIMP(statut='o',typ=nume_ddl_gene ), - METHODE =SIMP(statut='f',typ='TXM',defaut="CLASSIQUE",into=("CLASSIQUE","INITIAL") ), - b_option =BLOC(condition = "METHODE == 'CLASSIQUE'", - OPTION =SIMP(statut='o',typ='TXM',into=("RIGI_GENE","RIGI_GENE_C","MASS_GENE","AMOR_GENE") ), - ), -) ; - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: jacques.pellet at edf.fr -def asse_matrice_prod(MATR_ELEM,**args): - if AsType(MATR_ELEM) == matr_elem_depl_r : return matr_asse_depl_r - if AsType(MATR_ELEM) == matr_elem_depl_c : return matr_asse_depl_c - if AsType(MATR_ELEM) == matr_elem_temp_r : return matr_asse_temp_r - if AsType(MATR_ELEM) == matr_elem_pres_c : return matr_asse_pres_c - raise AsException("type de concept resultat non prevu") - -ASSE_MATRICE=OPER(nom="ASSE_MATRICE",op=12,sd_prod=asse_matrice_prod, - fr="Construction d'une matrice assemblée",reentrant='n', - UIinfo={"groupes":("Matrices et vecteurs",)}, - MATR_ELEM =SIMP(statut='o', - typ=(matr_elem_depl_r,matr_elem_depl_c,matr_elem_temp_r,matr_elem_pres_c) ), - NUME_DDL =SIMP(statut='o',typ=nume_ddl_sdaster), - SYME =SIMP(statut='f',typ='TXM',into=("OUI",) ), - CHAR_CINE =SIMP(statut='f',typ=(char_cine_meca,char_cine_ther,char_cine_acou) ), - INFO =SIMP(statut='f',typ='I',into=(1,2) ), -) ; - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: mathieu.corus at edf.fr -ASSE_VECT_GENE=OPER(nom="ASSE_VECT_GENE",op= 140,sd_prod=vect_asse_gene, - fr="Projection des chargements sur la base modale d'une sous structure", - reentrant='n', - UIinfo={"groupes":("Matrices et vecteurs",)}, - NUME_DDL_GENE =SIMP(statut='o',typ=nume_ddl_gene ), - METHODE =SIMP(statut='f',typ='TXM',defaut="CLASSIQUE",into=("CLASSIQUE","INITIAL") ), - b_nume =BLOC(condition = "METHODE == 'CLASSIQUE'", - CHAR_SOUS_STRUC =FACT(statut='o',max='**', - SOUS_STRUC =SIMP(statut='o',typ='TXM' ), - VECT_ASSE =SIMP(statut='o',typ=cham_no_sdaster ), - ), - ), -) ; - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: jacques.pellet at edf.fr - -ASSE_VECTEUR=OPER(nom="ASSE_VECTEUR",op=13,sd_prod=cham_no_sdaster, - fr="Construire un champ aux noeuds par assemblage de vecteurs élémentaires",reentrant='n', - UIinfo={"groupes":("Matrices et vecteurs",)}, - VECT_ELEM =SIMP(statut='o',typ=vect_elem,max='**'), - NUME_DDL =SIMP(statut='o',typ=nume_ddl_sdaster ), - INFO =SIMP(statut='f',typ='I',into=(1,2,) ), -) ; - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2012 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: albert.alarcon at edf.fr - -def assemblage_prod(self,NUME_DDL,MATR_ASSE,VECT_ASSE,**args): - if ((not MATR_ASSE) and (not VECT_ASSE)): raise AsException("Aucun concept a assembler") - if not NUME_DDL : raise AsException("Impossible de typer les concepts resultats") - if NUME_DDL.isTypCO(): - self.typeSDProd(NUME_DDL,nume_ddl_sdaster) - - if MATR_ASSE !=None: - for m in MATR_ASSE: - opti=m['OPTION'] - if opti in ( "RIGI_MECA","RIGI_FLUI_STRU", - "MASS_MECA" , "MASS_FLUI_STRU" ,"RIGI_GEOM" ,"RIGI_ROTA", - "AMOR_MECA","IMPE_MECA","ONDE_FLUI","MASS_MECA_DIAG", - "MECA_GYRO","RIGI_GYRO" ) : t=matr_asse_depl_r - - if opti in ( "RIGI_ACOU","MASS_ACOU","AMOR_ACOU",) : t=matr_asse_pres_c - - if opti in ( "RIGI_THER","RIGI_THER_CONV" , - "RIGI_THER_CONV_D",) : t=matr_asse_temp_r - - if opti == "RIGI_MECA_HYST" : t= matr_asse_depl_c - - self.typeSDProd(m['MATRICE'],t) - - if VECT_ASSE !=None: - for v in VECT_ASSE: - self.typeSDProd(v['VECTEUR'],cham_no_sdaster) - - return None - -ASSEMBLAGE=MACRO(nom="ASSEMBLAGE", - op=OPS('Macro.assemblage_ops.assemblage_ops'), - UIinfo={"groupes":("Matrices et vecteurs",)}, - sd_prod=assemblage_prod, - regles=(AU_MOINS_UN('MATR_ASSE','VECT_ASSE'),), - fr="Calcul des matrices et vecteurs assemblés ", - MODELE =SIMP(statut='o',typ=modele_sdaster), - CHAM_MATER =SIMP(statut='f',typ=cham_mater), - INST =SIMP(statut='f',typ='R',defaut=0.), - CARA_ELEM =SIMP(statut='f',typ=cara_elem), - CHARGE =SIMP(statut='f',typ=(char_meca,char_ther,char_acou),validators=NoRepeat(),max='**'), - CHAR_CINE =SIMP(statut='f',typ=(char_cine_meca,char_cine_ther,char_cine_acou) ), - NUME_DDL =SIMP(statut='o',typ=(nume_ddl_sdaster,CO)), - SOLVEUR =FACT(statut='d', - METHODE =SIMP(statut='f',typ='TXM',defaut="MULT_FRONT",into=("MULT_FRONT","LDLT","GCPC","MUMPS","PETSC") ), - b_mult_front =BLOC(condition="METHODE=='MULT_FRONT'",fr="Paramètres associés à la méthode multifrontale", - RENUM =SIMP(statut='f',typ='TXM',into=("MD","MDA","METIS"),defaut="METIS" ), - ), - b_ldlt =BLOC(condition="METHODE=='LDLT'",fr="Paramètres associés à la méthode LDLT", - RENUM =SIMP(statut='f',typ='TXM',into=("RCMK","SANS"),defaut="RCMK" ), - ), - b_mumps =BLOC(condition = "METHODE == 'MUMPS' ",fr="Paramètres de la méthode MUMPS", - RENUM =SIMP(statut='f',typ='TXM',defaut="AUTO",into=("AMD","AMF","PORD","METIS","QAMD","SCOTCH","AUTO")), - ), - b_gcpc =BLOC(condition="METHODE=='GCPC'",fr="Paramètres associés à la méthode gradient conjugué", - RENUM =SIMP(statut='f',typ='TXM',into=("RCMK","SANS"),defaut="RCMK" ), - ), - b_petsc =BLOC(condition = "METHODE == 'PETSC'",fr="Paramètres de la méthode PETSC", - RENUM =SIMP(statut='f',typ='TXM',defaut="RCMK",into=("SANS","RCMK") ), - ), - ), - - MATR_ASSE =FACT(statut='f',max='**', - MATRICE =SIMP(statut='o',typ=CO), - OPTION =SIMP(statut='o',typ='TXM', - into=("RIGI_MECA","MASS_MECA","MASS_MECA_DIAG", - "AMOR_MECA","RIGI_MECA_HYST","IMPE_MECA", - "ONDE_FLUI","RIGI_FLUI_STRU","MASS_FLUI_STRU", - "RIGI_ROTA","RIGI_GEOM","MECA_GYRO","RIGI_GYRO", - "RIGI_THER","RIGI_ACOU","MASS_ACOU","AMOR_ACOU",) - ), - - b_rigi_meca = BLOC( condition = "OPTION=='RIGI_MECA'", - MODE_FOURIER =SIMP(statut='f',typ='I',defaut= 0), - ), - - b_rigi_geom = BLOC( condition = "OPTION=='RIGI_GEOM'", - SIEF_ELGA =SIMP(statut='o',typ=cham_elem), - MODE_FOURIER =SIMP(statut='f',typ='I',defaut= 0), - ), - - b_rigi_ther = BLOC( condition = "OPTION=='RIGI_THER'", - MODE_FOURIER =SIMP(statut='f',typ='I',defaut= 0), - ), -# - ), # fin MATR_ASSE -# - VECT_ASSE =FACT(statut='f',max='**', - VECTEUR =SIMP(statut='o',typ=CO), - OPTION =SIMP(statut='o',typ='TXM',into=("CHAR_MECA","CHAR_ACOU","CHAR_THER") ), - b_char_meca =BLOC(condition = "OPTION == 'CHAR_MECA'", fr="chargement mécanique", - CHARGE =SIMP(statut='f',typ=char_meca,validators=NoRepeat(),max='**'), - MODE_FOURIER =SIMP(statut='f',typ='I',defaut= 0 ), - ), - - b_char_ther =BLOC(condition = "OPTION=='CHAR_THER'", fr="chargement thermique", - CHARGE =SIMP(statut='f',typ=char_ther,validators=NoRepeat(),max='**'), - ), - - b_char_acou =BLOC(condition = "OPTION=='CHAR_ACOU'", fr="chargement acoustique", - CHARGE =SIMP(statut='f',typ=char_acou,validators=NoRepeat(),max='**'), - ), -# - ), # fin VECT_ASSE -# - TITRE =SIMP(statut='f',typ='TXM',max='**'), - INFO =SIMP(statut='f',typ='I',defaut=1,into=(1,2)), -); - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: Georges-cc.devesa at edf.fr -CALC_AMOR_MODAL=OPER(nom="CALC_AMOR_MODAL",op= 172,sd_prod=listr8_sdaster, - fr="Création d'une liste d'amortissements modaux calculés selon la règle du RCC-G", - reentrant='n', - UIinfo={"groupes":("Résolution","Dynamique",)}, - regles=(EXCLUS('AMOR_RAYLEIGH','ENER_SOL',), - EXCLUS('AMOR_RAYLEIGH','AMOR_INTERNE',), - EXCLUS('AMOR_RAYLEIGH','AMOR_SOL',), - PRESENT_PRESENT('ENER_SOL','AMOR_INTERNE'), - PRESENT_PRESENT('ENER_SOL','AMOR_SOL'), - ), - AMOR_RAYLEIGH =FACT(statut='f', - AMOR_ALPHA =SIMP(statut='o',typ='R'), - AMOR_BETA =SIMP(statut='o',typ='R'), - MODE_MECA =SIMP(statut='o',typ=mode_meca ), - ), - ENER_SOL =FACT(statut='f', - regles=(UN_PARMI('GROUP_NO_RADIER','GROUP_MA_RADIER'), - PRESENT_ABSENT('COEF_GROUP','FONC_GROUP'), -# Peut-on remplacer les deux règles suivantes par un ENSEMBLE_('KRX','KRY','KRZ') - PRESENT_PRESENT('KRX','KRY'), - PRESENT_PRESENT('KRX','KRZ'), - PRESENT_ABSENT('COOR_CENTRE','NOEUD_CENTRE'), - PRESENT_ABSENT('GROUP_NO_CENTRE','NOEUD_CENTRE'), - PRESENT_ABSENT('GROUP_NO_CENTRE','COOR_CENTRE'),), - METHODE =SIMP(statut='f',typ='TXM',defaut="DEPL",into=("DEPL","RIGI_PARASOL") ), - MODE_MECA =SIMP(statut='o',typ=mode_meca ), - GROUP_NO_RADIER =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'), - GROUP_MA_RADIER =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - FONC_GROUP =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - COEF_GROUP =SIMP(statut='f',typ='R',max='**'), - KX =SIMP(statut='o',typ='R' ), - KY =SIMP(statut='o',typ='R' ), - KZ =SIMP(statut='o',typ='R' ), - KRX =SIMP(statut='f',typ='R' ), - KRY =SIMP(statut='f',typ='R' ), - KRZ =SIMP(statut='f',typ='R' ), - GROUP_NO_CENTRE =SIMP(statut='f',typ=grno), - NOEUD_CENTRE =SIMP(statut='f',typ=no), - COOR_CENTRE =SIMP(statut='f',typ='R',max=3), - ), - AMOR_INTERNE =FACT(statut='f', - ENER_POT =SIMP(statut='o',typ=table_sdaster ), - GROUP_MA =SIMP(statut='o',typ=grma,validators=NoRepeat(),max='**'), - AMOR_REDUIT =SIMP(statut='o',typ='R',max='**'), - ), - AMOR_SOL =FACT(statut='f', - AMOR_REDUIT =SIMP(statut='f',typ='R',defaut= 0.E+0 ), - FONC_AMOR_GEO =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule),max='**' ), - HOMOGENE =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON") ), - SEUIL =SIMP(statut='f',typ='R',defaut= 0.3 ), - ), -) ; - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2013 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: josselin.delmas at edf.fr - -CALC_CHAM_ELEM=OPER(nom="CALC_CHAM_ELEM",op=38,sd_prod=cham_elem, - fr="Calculer un champ élémentaire en thermique et en accoustique à partir de champs déjà calculés", - reentrant='n', - UIinfo={"groupes":("Résultats et champs","Post-traitements",)}, - MODELE =SIMP(statut='o',typ=modele_sdaster), - CARA_ELEM =SIMP(statut='f',typ=cara_elem), - - regles=(EXCLUS('TOUT','GROUP_MA',),EXCLUS('TOUT','MAILLE',),), - TOUT =SIMP(statut='f',typ='TXM',into=("OUI",) ), - GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - MAILLE =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), - - INST =SIMP(statut='f',typ='R',defaut= 0.E+0), - ACCE =SIMP(statut='f',typ=cham_no_sdaster), - MODE_FOURIER =SIMP(statut='f',typ='I',), - - OPTION =SIMP(statut='o',typ='TXM', - into=("FLUX_ELGA","FLUX_ELNO", - "PRAC_ELNO", - "COOR_ELGA"), ), - - b_thermique =BLOC(condition="OPTION in ('FLUX_ELNO','FLUX_ELGA',)", - TEMP =SIMP(statut='o',typ=(cham_no_sdaster,)), - CHAM_MATER =SIMP(statut='o',typ=cham_mater), - ), - - b_acoustique =BLOC(condition="OPTION in ('PRAC_ELNO',)", - PRES =SIMP(statut='o',typ=(cham_no_sdaster,)), - ), - -) ; - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2013 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: nicolas.sellenet at edf.fr -def calc_champ_prod(RESULTAT,**args): - if AsType(RESULTAT) != None : return AsType(RESULTAT) - raise AsException("type de concept resultat non prevu : RESULTAT=%s (type %s)" \ - % (RESULTAT, type(RESULTAT))) - -CALC_CHAMP=OPER(nom="CALC_CHAMP",op=52,sd_prod=calc_champ_prod,reentrant='f', - UIinfo={"groupes":("Post traitements",)}, - fr="Completer ou creer un resultat en calculant des champs par elements ou aux noeuds", - MODELE = SIMP(statut='f',typ=modele_sdaster), - CHAM_MATER = SIMP(statut='f',typ=cham_mater), - CARA_ELEM = SIMP(statut='f',typ=cara_elem), - - RESULTAT = SIMP(statut='o',typ=resultat_sdaster,position='global', - fr="Resultat d'une commande globale"), - - regles=(EXCLUS('TOUT_ORDRE','NUME_ORDRE','INST','FREQ','NUME_MODE', - 'NOEUD_CMP','LIST_INST','LIST_FREQ','LIST_ORDRE','NOM_CAS'), - PRESENT_ABSENT('TOUT','GROUP_MA','MAILLE'), - ), - TOUT_ORDRE = SIMP(statut='f',typ='TXM',into=("OUI",) ), - NUME_ORDRE = SIMP(statut='f',typ='I',validators=NoRepeat(),max='**'), - NUME_MODE = SIMP(statut='f',typ='I',validators=NoRepeat(),max='**'), - NOEUD_CMP = SIMP(statut='f',typ='TXM',validators=NoRepeat(),max='**'), - NOM_CAS = SIMP(statut='f',typ='TXM' ), - INST = SIMP(statut='f',typ='R',validators=NoRepeat(),max='**'), - FREQ = SIMP(statut='f',typ='R',validators=NoRepeat(),max='**'), - LIST_INST = SIMP(statut='f',typ=listr8_sdaster), - LIST_FREQ = SIMP(statut='f',typ=listr8_sdaster), - CRITERE = SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU",) ), - b_prec_rela = BLOC(condition="(CRITERE=='RELATIF')", - PRECISION = SIMP(statut='f',typ='R',defaut= 1.E-6),), - b_prec_abso = BLOC(condition="(CRITERE=='ABSOLU')", - PRECISION = SIMP(statut='o',typ='R'),), - LIST_ORDRE = SIMP(statut='f',typ=listis_sdaster), - - TOUT = SIMP(statut='f',typ='TXM',into=("OUI",), - fr="le calcul sera effectue sur toutes les mailles"), - GROUP_MA = SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**', - fr="le calcul ne sera effectue que sur ces groupes de mailles"), - MAILLE = SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**', - fr="le calcul ne sera effectue que sur ces mailles"), - - EXCIT = FACT(statut='f',max='**', - fr="Charges contenant les temperatures, les efforts repartis pour les poutres...", - regles=(EXCLUS('FONC_MULT','COEF_MULT',),), - CHARGE = SIMP(statut='o',typ=(char_meca,char_cine_meca),), - FONC_MULT = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule),), - COEF_MULT = SIMP(statut='f',typ='R'), - TYPE_CHARGE = SIMP(statut='f',typ='TXM',defaut="FIXE",into=("FIXE",),),), - - # Bloc lineaire - b_lineaire = BLOC(condition = "AsType(RESULTAT) in (evol_elas,dyna_trans,dyna_harmo,mode_meca,\ - comb_fourier,mult_elas,fourier_elas,mode_flamb)", - CONTRAINTE = SIMP(statut='f',typ='TXM',validators=NoRepeat(),max='**', - fr="Options pour le calcul de contraintes et efforts generalises", - into=C_NOM_CHAM_INTO(phenomene='CONTRAINTE',categorie='lin'),), - - DEFORMATION = SIMP(statut='f',typ='TXM',validators=NoRepeat(),max='**', - fr="Options pour le calcul de deformations", - into=C_NOM_CHAM_INTO(phenomene='DEFORMATION',categorie='lin'),), - - ENERGIE = SIMP(statut='f',typ='TXM',validators=NoRepeat(),max='**', - fr="Options pour le calcul d'energies", - into=C_NOM_CHAM_INTO(phenomene='ENERGIE',categorie='lin'),), - - CRITERES = SIMP(statut='f',typ='TXM',validators=NoRepeat(),max='**', - fr="Options pour le calcul de criteres", - into=C_NOM_CHAM_INTO(phenomene='CRITERES',categorie='lin'),), - - VARI_INTERNE = SIMP(statut='f',typ='TXM',validators=NoRepeat(),max='**', - fr="Options pour le calcul de variables internes", - into=C_NOM_CHAM_INTO(phenomene='VARI_INTERNE',categorie='lin'),), - ), - - # Bloc non-lineaire - b_non_lin = BLOC(condition = "AsType(RESULTAT) in (evol_noli,)", - CONTRAINTE = SIMP(statut='f',typ='TXM',validators=NoRepeat(),max='**', - fr="Options pour le calcul de contraintes et efforts generalises", - into=C_NOM_CHAM_INTO(phenomene='CONTRAINTE',categorie='nonlin'),), - - DEFORMATION = SIMP(statut='f',typ='TXM',validators=NoRepeat(),max='**', - fr="Options pour le calcul de deformations", - into=C_NOM_CHAM_INTO(phenomene='DEFORMATION',categorie='nonlin'),), - - ENERGIE = SIMP(statut='f',typ='TXM',validators=NoRepeat(),max='**', - fr="Options pour le calcul d'energies", - into=C_NOM_CHAM_INTO(phenomene='ENERGIE',categorie='nonlin'),), - - CRITERES = SIMP(statut='f',typ='TXM',validators=NoRepeat(),max='**', - fr="Options pour le calcul de criteres", - into=C_NOM_CHAM_INTO(phenomene='CRITERES',categorie='nonlin'),), - - VARI_INTERNE = SIMP(statut='f',typ='TXM',validators=NoRepeat(),max='**', - fr="Options pour le calcul de variables internes", - into=C_NOM_CHAM_INTO(phenomene='VARI_INTERNE',categorie='nonlin'),), - - b_nom_vari = BLOC(condition = "au_moins_un(VARI_INTERNE, ('VAEX_ELNO','VAEX_ELGA','VAEX_NOEU'))", - NOM_VARI = SIMP(statut='o',typ='TXM',min= 1,max='**', - fr="nom de la variable a extraire", - into=("DPORO","DRHOLQ","DPVP","SATLIQ","EVP","IND_ETA","D","IND_END","TEMP_MAX", - "GAMP","PCR","SEUIL_HYD","IND_HYD","PCOHE","COMP_ROC","SEUIL_ISO","ANG_DEV", - "X11","X22","X33","X12","X13","X23","DIST_DEV","DEV_SUR_CRIT","DIST_ISO", - "NB_ITER","ARRET","NB_REDE","SIGNE","RDEV_1","RDEV_2","RDEV_3","RISO","EPSIVPLA", - "IND_1","IND_2","IND_3","IND_4", - ), - ),), - - HYDRAULIQUE = SIMP(statut='f',typ='TXM',validators=NoRepeat(),max='**', - fr="Options pour le calcul de flux hydraulique", - into=C_NOM_CHAM_INTO(phenomene='HYDRAULIQUE',categorie='nonlin'),), - ), - - # Bloc Thermique - b_ther = BLOC(condition = "AsType(RESULTAT) in (evol_ther,fourier_ther,)" , - THERMIQUE = SIMP(statut='f',typ='TXM',validators=NoRepeat(), max='**', - fr="Options pour le calcul de champs en thermique", - into=C_NOM_CHAM_INTO(phenomene='THERMIQUE',),), - ), - - # Bloc acoustique - b_acou = BLOC(condition = "AsType(RESULTAT) in (acou_harmo,mode_acou,dyna_harmo)", - ACOUSTIQUE = SIMP(statut='f',typ='TXM',validators=NoRepeat(), max='**', - fr="Options pour le calcul de champs en acoustique", - into=C_NOM_CHAM_INTO(phenomene='ACOUSTIQUE',),), - ), - - # Bloc FORC_NODA et REAC_NODA - FORCE = SIMP(statut='f',typ='TXM',validators=NoRepeat(),max='**', - fr="Options pour des forces nodales et des reactions nodales", - into=C_NOM_CHAM_INTO(phenomene='FORCE',),), - - # Mot-cle facteur CHAMp UTILisateur - CHAM_UTIL = FACT(statut='f', max='**', - regles = (UN_PARMI('FORMULE', 'CRITERE', 'NORME'), ), - NOM_CHAM = SIMP(statut='o', typ='TXM', - fr="Nom du champ utilisé en donnée",), - FORMULE = SIMP(statut='f', typ=formule, max='**', - fr="Formule permet d'obtenir le critère",), - CRITERE = SIMP(statut='f', typ='TXM', max=1, - into=('TRACE', 'VMIS', 'INVA_2'), - fr="Calcul d'un critère pré-défini",), - NORME = SIMP(statut='f', typ='TXM', max=1, - into=('L2', 'FROBENIUS', ), - fr="Calcul d'une norme pré-définie",), - NUME_CHAM_RESU = SIMP(statut='o', typ='I', val_min=1, val_max=20, - fr="Numéro du champ produit. Exemple: 6 produit le champ UT06",), - ), - - INFO = SIMP(statut='f',typ='I',defaut= 1,into=(1,2)), - - TITRE = SIMP(statut='f',typ='TXM',max='**'), -); - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: jacques.pellet at edf.fr - -CALC_CHAR_CINE=OPER(nom="CALC_CHAR_CINE",op= 102,sd_prod=cham_no_sdaster, - fr="Calcul des seconds membres associés à des charges cinématiques (conditions aux limites non dualisées)", - reentrant='n', - UIinfo={"groupes":("Matrices et vecteurs",)}, - NUME_DDL =SIMP(statut='o',typ=nume_ddl_sdaster ), - CHAR_CINE =SIMP(statut='o',typ=(char_cine_meca,char_cine_ther,char_cine_acou ),validators=NoRepeat(),max='**' ), - INST =SIMP(statut='f',typ='R',defaut= 0.E+0 ), - INFO =SIMP(statut='f',typ='I',defaut= 1,into=( 1 , 2 ) ), -) ; - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: Georges-cc.devesa at edf.fr -def calc_char_seisme_prod(MATR_MASS,**args ): - if AsType(MATR_MASS) == matr_asse_depl_r : return cham_no_sdaster - raise AsException("type de concept resultat non prevu") - -CALC_CHAR_SEISME=OPER(nom="CALC_CHAR_SEISME",op= 92,sd_prod=calc_char_seisme_prod, - reentrant='n',fr="Calcul du chargement sismique", - UIinfo={"groupes":("Matrices et vecteurs",)}, - regles=(UN_PARMI('MONO_APPUI','MODE_STAT' ),), - MATR_MASS =SIMP(statut='o',typ=matr_asse_depl_r,fr="Matrice de masse" ), - DIRECTION =SIMP(statut='o',typ='R',max=6,fr="Directions du séisme imposé"), - MONO_APPUI =SIMP(statut='f',typ='TXM',into=("OUI",) ), - MODE_STAT =SIMP(statut='f',typ=(mode_meca,) ), - b_mode_stat =BLOC ( condition = "MODE_STAT != None", - regles=(UN_PARMI('NOEUD','GROUP_NO' ),), - NOEUD =SIMP(statut='f',typ=no,validators=NoRepeat(),max='**'), - GROUP_NO =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'), - ), - TITRE =SIMP(statut='f',typ='TXM',max='**'), -) ; - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2011 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: mathieu.corus at edf.fr -CALC_CORR_SSD=OPER(nom="CALC_CORR_SSD",op= 91,sd_prod=table_container, - fr="Qualite d'un modele reduit en dynamique", - reentrant='n', - UIinfo={"groupes":("Dynamique",)}, - MODELE_GENE =SIMP(statut='o',typ=modele_gene), - RESU_GENE =SIMP(statut='o',typ=mode_gene ), - UNITE =SIMP(statut='f',typ='I',defaut=6,), - SHIFT =SIMP(statut='f',typ='R',defaut= 1. ), - VERIF =FACT(statut='f',max='**', - STOP_ERREUR =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON") ), - PRECISION =SIMP(statut='f',typ='R',defaut= 1.E-3 ), - CRITERE =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU") ), - ), - TITRE =SIMP(statut='f',typ='TXM',max='**'), -) ; - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2013 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: marina.bottoni at edf.fr - - -def calc_ecrevisse_prod(self,CHARGE_MECA,CHARGE_THER1,CHARGE_THER2,TABLE,DEBIT,**args): - - self.typeSDProd(CHARGE_MECA,char_meca) - self.typeSDProd(CHARGE_THER1,char_ther) - self.typeSDProd(CHARGE_THER2,char_ther) - self.typeSDProd(TABLE,table_sdaster) - self.typeSDProd(DEBIT,table_sdaster) - return None - - - -CALC_ECREVISSE=MACRO(nom="CALC_ECREVISSE", - op=OPS('Macro.calc_ecrevisse_ops.calc_ecrevisse_ops'), - sd_prod=calc_ecrevisse_prod, - reentrant='n', - UIinfo={"groupes":("Outils-métier",)},fr="Procedure de couplage avec Ecrevisse", - regles = (UN_PARMI('LOGICIEL','VERSION'),), - -# CONCEPTS SORTANTS : 2 CHARGEMENTS THERMIQUE + 1 MECANIQUE + 2 TABLES POUR LE POST-TRAITEMENT -# ******************************************** - CHARGE_MECA =SIMP(statut='o',typ=CO), - CHARGE_THER1 =SIMP(statut='o',typ=CO), - CHARGE_THER2 =SIMP(statut='o',typ=CO), - TABLE =SIMP(statut='o',typ=CO), - DEBIT =SIMP(statut='o',typ=CO), - - -# MODELES MECANIQUES -# ******************************************** - MODELE_MECA =SIMP(statut='o',typ=modele_sdaster), - MODELE_THER =SIMP(statut='o',typ=modele_sdaster), - - -# DONNEES GEOMETRIQUES RELATIVES AUX RESULTATS -# ******************************************** - RESULTAT =FACT(statut='o',min=1,max=1, - MECANIQUE =SIMP(statut='o',typ=resultat_sdaster), - THERMIQUE =SIMP(statut='o',typ=resultat_sdaster), - regles=(EXCLUS('NUME_ORDRE','INST'),), - NUME_ORDRE =SIMP(statut='f',typ='I',validators=NoRepeat(),), - INST =SIMP(statut='f',typ='R',validators=NoRepeat(),), - ), - -# DONNEES GEOMETRIQUES RELATIVES A LA FISSURE -# ******************************************* - - FISSURE =FACT(statut='o',min=1,max='**', - PREFIXE_FICHIER =SIMP(statut='f',typ='TXM',validators=LongStr(1,8),), - GROUP_MA =SIMP(statut='o',typ=grma,validators=NoRepeat(),min=2,max=2, - fr="Groupe(s) des noeuds definissant les levres de la fissure"), - GROUP_NO_ORIG =SIMP(statut='o',typ=grno,validators=NoRepeat(),min=2,max=2), - GROUP_NO_EXTR =SIMP(statut='o',typ=grno,validators=NoRepeat(),min=2,max=2), - ZETA =SIMP(statut='o',typ='R',fr="Coefficient de la perte de charge singuliere a l'entree [zeta]" ), - RUGOSITE =SIMP(statut='o',typ='R',fr="Rugosite absolu (metres) [eps]" ), - OUVERT_REMANENTE =SIMP(statut='o',typ='R',val_min=0.,fr="Ouverture remanente"), - TORTUOSITE =SIMP(statut='f',typ='R',defaut=1.0, val_min=0., val_max=1.0, - fr="Coefficient de tortuosite de la fissure" ), - SECTION =SIMP(statut='o',typ='TXM',into=("ELLIPSE","RECTANGLE"),fr="Type de section [is]" ), - b_section_ellipse =BLOC(condition="SECTION=='ELLIPSE'",fr="Fissure a section elliptique", - LISTE_COTES_BL =SIMP(statut='f',typ='R',max='**', - fr="Liste des cotes des points definissant le petit axe de la section", - validators=NoRepeat() ), - LISTE_VAL_BL =SIMP(statut='o',typ='R',max='**', - fr="Liste des valeurs des points definissant le petit axe de la section", ), - ), - b_section_rectangle =BLOC(condition="SECTION=='RECTANGLE'",fr="Fissure a section rectangulaire", - LISTE_COTES_BL =SIMP(statut='f',typ='R',max='**', - fr="Liste des cotes des points definissant la largeur de la section", - validators=NoRepeat() ), - LISTE_VAL_BL =SIMP(statut='o',typ='R',max='**', - fr="Liste des valeurs des points definissant la largeur de la section", ), - ), - ), - - -# DONNEES RELATIVES A L"ECOULEMENT -# ******************************** - - ECOULEMENT =FACT(statut='o',min=1,max=1, - PRES_ENTREE =SIMP(statut='o',typ='R',fr="Pression de stagnation a l'entree (Pa) [pe]" ), - PRES_SORTIE =SIMP(statut='o',typ='R',fr="Pression de stagnation a la sortie (Pa) [ps]" ), - FLUIDE_ENTREE =SIMP(statut='o',typ='I',into=(1,2,3,4,5,6),fr="Condition du fluide a l'entree [iflow]" ), - b_condition_1 =BLOC(condition="FLUIDE_ENTREE==1",fr="Eau sous-refroidie ou saturee", - TEMP_ENTREE =SIMP(statut='o',typ='R',fr="Temperature a l'entree (degres C) [te]" ), - ), - b_condition_2 =BLOC(condition="FLUIDE_ENTREE==2",fr="Fluide diphasique", - TITR_MASS =SIMP(statut='o',typ='R',fr="Titre massique eau vap/eau tot a l'entree [xe]" ), - ), - b_condition_3 =BLOC(condition="FLUIDE_ENTREE==3",fr="Vapeur saturee ou surchauffee", - TEMP_ENTREE =SIMP(statut='o',typ='R',fr="Temperature a l'entree (degres C) [te]" ), - ), - b_condition_4 =BLOC(condition="FLUIDE_ENTREE==4",fr="Air + vapeur surchauffee", - TEMP_ENTREE =SIMP(statut='o',typ='R',fr="Temperature a l'entree (degres C) [te]" ), - PRES_PART =SIMP(statut='o',typ='R',fr="Pression partielle air en entree (Pa) [pae]" ), - ), - b_condition_5 =BLOC(condition="FLUIDE_ENTREE==5",fr="Air + vapeur saturee", - TITR_MASS =SIMP(statut='o',typ='R',fr="Titre massique eau vap/eau tot a l'entree [xe]" ), - PRES_PART =SIMP(statut='o',typ='R',fr="Pression partielle air en entree (Pa) [pae]" ), - ), - b_condition_6 =BLOC(condition="FLUIDE_ENTREE==6",fr="Air seul", - TEMP_ENTREE =SIMP(statut='o',typ='R',fr="Temperature a l'entree (degres C) [te]" ), - ), - ), - - -# CHOIX DES MODELES -# ***************** - - MODELE_ECRE =FACT(statut='o',min=1,max=1, - IVENAC =SIMP(statut='f', typ='I', into=(0,1), defaut=0, - fr="Calcul ECREVISSE avec prise en compte de la vena contracta"), - ECOULEMENT =SIMP(statut='o',typ='TXM',into=("SATURATION","GELE"), - fr="Type de modele d'ecoulement diphasique [imod]" ), - b_ecou_gele =BLOC(condition="ECOULEMENT=='GELE'",fr="Modele d'ecoulement gele", - PRESS_EBULLITION =SIMP(statut='o',typ='R',fr="Pression d'ebullition [corrp*psat(t)]" ), - ), - FROTTEMENT =SIMP(statut='o',typ='I',into=(-4,-3,-2,-1,0,1,2,3,4,11,12,13,14),fr="Correlation de frottement [ifrot]" ), - b_frottement =BLOC(condition="FROTTEMENT<0",fr="Modele d'ecoulement gele", - REYNOLDS_LIM =SIMP(statut='o',typ='R',fr="Coefficient de Reynolds limite [relim]" ), - FROTTEMENT_LIM =SIMP(statut='o',typ='R',fr="Coefficient de frottement impose [frtlim]" ), - ), - - TRANSFERT_CHAL =SIMP(statut='o',typ='I',into=(-12,-11,-2,-1,0,1,2,11,12),fr="Transfert de chaleur [ichal]" ), - b_transchal =BLOC(condition="TRANSFERT_CHAL<0", fr="Cas diphasique", - XMINCH =SIMP(statut='o',typ='R',fr="Titre massique gazeux min [xminch]"), - XMAXCH =SIMP(statut='o',typ='R',fr="Titre massique gazeux max [xmaxch]"), - ), - ), - - -# DONNEES RELATIVES A LA CONVERGENCE NUMERIQUE -# ******************************************** - - CONVERGENCE =FACT(statut='o',min=1,max=1, - KGTEST =SIMP(statut='f',typ='R',val_min=0.E+0,val_max=1.E+0,defaut= 0.5E+0, - fr="Parametre de l'algorithme iteratif [kgtest]" ), - ITER_GLOB_MAXI =SIMP(statut='f',typ='I',defaut= 400, - fr="Nombre maximum d'iterations de la methode de Newton [itnmax]" ), - CRIT_CONV_DEBI =SIMP(statut='f',typ='R',val_min=0.E+0,val_max=1.E+0,defaut= 1.E-5, - fr="Critere de convergence en debit [precdb]" ), - ), - -# GENERAL -# ******* - - COURBES =SIMP(statut='f',typ='TXM',into=("INTERACTIF","POSTSCRIPT","AUCUNE"),defaut="AUCUNE", - fr="Generation eventuelle des courbes" ), - LOGICIEL =SIMP(statut='f',typ='TXM',validators=LongStr(1,255),), - VERSION =SIMP(statut='f',typ='TXM',into = ("3.2.1",) ), - ENTETE =SIMP(statut='f',typ='TXM',max='**',defaut="Titre du calcul Ecrevisse" ), - IMPRESSION =SIMP(statut='f',typ='TXM',defaut='NON',into=( 'OUI','NON') ), - INFO =SIMP(statut='f',typ='I',defaut= 1,into=(1,2) ), - -) ; - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2012 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: josselin.delmas at edf.fr -def calc_erreur_prod(RESULTAT,**args): - if AsType(RESULTAT) != None : return AsType(RESULTAT) - raise AsException("type de concept resultat non prevu") - -CALC_ERREUR=OPER(nom="CALC_ERREUR",op=42,sd_prod=calc_erreur_prod,reentrant='f', - UIinfo={"groupes":("Post-traitements","Résultats et champs",)}, - fr="Compléter ou créer un résultat en calculant des champs d'erreur", - MODELE =SIMP(statut='f',typ=modele_sdaster), - CHAM_MATER =SIMP(statut='f',typ=cham_mater), - - RESULTAT =SIMP(statut='o',typ=resultat_sdaster, - fr="Résultat d'une commande globale"), - - regles=(EXCLUS('TOUT_ORDRE','NUME_ORDRE','INST','FREQ','NUME_MODE', - 'NOEUD_CMP','LIST_INST','LIST_FREQ','LIST_ORDRE','NOM_CAS'), - ), - TOUT_ORDRE =SIMP(statut='f',typ='TXM',into=("OUI",) ), - NUME_ORDRE =SIMP(statut='f',typ='I',validators=NoRepeat(),max='**'), - NUME_MODE =SIMP(statut='f',typ='I',validators=NoRepeat(),max='**'), - NOEUD_CMP =SIMP(statut='f',typ='TXM',validators=NoRepeat(),max='**'), - NOM_CAS =SIMP(statut='f',typ='TXM' ), - INST =SIMP(statut='f',typ='R',validators=NoRepeat(),max='**'), - FREQ =SIMP(statut='f',typ='R',validators=NoRepeat(),max='**'), - LIST_INST =SIMP(statut='f',typ=listr8_sdaster), - LIST_FREQ =SIMP(statut='f',typ=listr8_sdaster), - CRITERE =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU",) ), - b_prec_rela=BLOC(condition="(CRITERE=='RELATIF')", - PRECISION =SIMP(statut='f',typ='R',defaut= 1.E-6),), - b_prec_abso=BLOC(condition="(CRITERE=='ABSOLU')", - PRECISION =SIMP(statut='o',typ='R'),), - LIST_ORDRE =SIMP(statut='f',typ=listis_sdaster), - TOUT =SIMP(statut='f',typ='TXM',into=("OUI",),defaut="OUI"), - -#----------------------------------------------------------------------- -# pour conserver la compatibilité mais ne sert à rien -#----------------------------------------------------------------------- - CARA_ELEM =SIMP(statut='f',typ=cara_elem), - EXCIT =FACT(statut='f',max='**', - fr="Charges contenant les températures, les efforts répartis pour les poutres...", - regles=(EXCLUS('FONC_MULT','COEF_MULT',),), - CHARGE =SIMP(statut='o',typ=(char_meca,char_cine_meca),), - FONC_MULT =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule),), - COEF_MULT =SIMP(statut='f',typ='R'),), -#----------------------------------------------------------------------- - - OPTION =SIMP(statut='o',typ='TXM',validators=NoRepeat(),max='**',into=C_NOM_CHAM_INTO(phenomene='ERREUR',),), - - b_erre_qi =BLOC(condition = "au_moins_un(OPTION, ('QIRE_ELEM','QIZ1_ELEM','QIZ2_ELEM','QIRE_ELNO','QIRE_NOEU'))", - RESU_DUAL=SIMP(statut='o',typ=resultat_sdaster,fr="Résultat du problème dual"),), - - b_sing =BLOC(condition= "au_moins_un(OPTION, 'SING_ELEM')", - PREC_ERR=SIMP(statut='o',typ='R',val_min= 0., - fr="Précision demandée pour calculer la carte de taille des éléments"), - TYPE_ESTI=SIMP(statut='f',typ='TXM',into=("ERME_ELEM","ERZ1_ELEM","ERZ2_ELEM", - "QIRE_ELEM","QIZ1_ELEM","QIZ2_ELEM",), - fr="Choix de l'estimateur d'erreur"),), - -#------------------------------------------------------------------- -# Catalogue commun SOLVEUR (utilisé actuellement pour estimateur d'erreur ZZ1) - SOLVEUR =C_SOLVEUR('CALC_ERREUR'), -#------------------------------------------------------------------- - - INFO =SIMP(statut='f',typ='I',defaut= 1,into=( 1 , 2) ), - TITRE =SIMP(statut='f',typ='TXM',max='**'), -) ; - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2012 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== - -# person_in_charge: albert.alarcon at edf.fr - - -def calc_essai_prod(self,RESU_IDENTIFICATION, - RESU_MODIFSTRU, - **args): - - if RESU_IDENTIFICATION != None: - for res in RESU_IDENTIFICATION: - self.typeSDProd(res['TABLE'],interspectre) - - MTYPES = { - 'MODELE' : modele_sdaster, - 'MODE_MECA' : mode_meca, - 'NUME_DDL' : nume_ddl_sdaster, - 'MAILLAGE' : maillage_sdaster, - 'MASS_MECA' : matr_asse_depl_r, - 'RIGI_MECA' : matr_asse_depl_r, - 'AMOR_MECA' : matr_asse_depl_r, - 'MACR_ELEM' : macr_elem_stat, - 'PROJ_MESU' : mode_gene, - 'BASE_ES' : mode_meca, - 'BASE_LMME' : mode_meca, - 'MODE_STA' : mode_meca, - } - if RESU_MODIFSTRU != None: - for res in RESU_MODIFSTRU: - for mc, typ in MTYPES.items(): - if res[mc]: - self.typeSDProd(res[mc], typ) - return None - - -CALC_ESSAI = MACRO(nom = 'CALC_ESSAI', - op = OPS('Macro.calc_essai_ops.calc_essai_ops'), - sd_prod = calc_essai_prod, - reentrant = 'n', - UIinfo = {"groupes":("Outils-métier","Dynamique",)}, - fr = "Outil de post-traitement interactif pour Meidee ", - INTERACTIF = SIMP( statut='f',typ='TXM',into=('OUI','NON'),defaut='OUI' ), - RESU_IDENTIFICATION = FACT( statut='f',max='**', - TABLE = SIMP(statut='f', typ=CO), - ), - RESU_MODIFSTRU = FACT( statut='f', max=1, - MODELE=SIMP(statut='f',typ=CO,defaut=None), - MODE_MECA=SIMP(statut='f',typ=CO,defaut=None), - MAILLAGE=SIMP(statut='f',typ=CO,defaut=None), - NUME_DDL=SIMP(statut='f',typ=CO,defaut=None), - MASS_MECA=SIMP(statut='f',typ=CO,defaut=None), - RIGI_MECA=SIMP(statut='f',typ=CO,defaut=None), - AMOR_MECA=SIMP(statut='f',typ=CO,defaut=None), - MACR_ELEM=SIMP(statut='f',typ=CO,defaut=None), - PROJ_MESU=SIMP(statut='f',typ=CO,defaut=None), - BASE_ES=SIMP(statut='f',typ=CO,defaut=None), - BASE_LMME=SIMP(statut='f',typ=CO,defaut=None), - MODE_STA=SIMP(statut='f',typ=CO,defaut=None), - ), - - b_inter = BLOC( condition="INTERACTIF=='NON'", - - EXPANSION = FACT( statut='f',max='**', - CALCUL = SIMP(statut='o',typ=mode_meca), - NUME_MODE_CALCUL = SIMP(statut='f',typ='I',validators=NoRepeat(), - max='**',defaut=0), - MESURE = SIMP(statut='o',typ=mode_meca), - NUME_MODE_MESURE = SIMP(statut='f',typ='I',validators=NoRepeat(), - max='**',defaut=0), - RESOLUTION = SIMP(statut='f',typ='TXM',defaut='SVD',into=('SVD','LU')), - b_reso = BLOC(condition = "RESOLUTION=='SVD'", - EPS = SIMP(statut='f',typ='R', defaut = 0.) - ) - ), - IDENTIFICATION = FACT( statut='f',max='**', - ALPHA = SIMP(statut='f',typ='R', defaut = 0.), - EPS = SIMP(statut='f',typ='R', defaut = 0.), - OBSERVABILITE = SIMP(statut='o',typ=mode_meca), - COMMANDABILITE = SIMP(statut='o',typ=mode_meca), - INTE_SPEC = SIMP(statut='o',typ=interspectre), - RESU_EXPANSION = SIMP(statut='f',typ='TXM',defaut='NON',into=('OUI','NON')), - BASE = SIMP(statut='o',typ=mode_meca), - ), - MODIFSTRUCT = FACT( statut='f', max=1, - MESURE = SIMP(statut='o', typ=mode_meca), - MODELE_SUP = SIMP(statut='o', typ=modele_sdaster), - MATR_RIGI = SIMP(statut='o', typ=matr_asse_depl_r), - RESOLUTION = SIMP(statut='f', typ='TXM', - into=('ES', 'LMME'), defaut='ES'), - b_resol = BLOC( condition = "RESOLUTION=='LMME'", - MATR_MASS = SIMP(statut='o', typ=matr_asse_depl_r), - ), - NUME_MODE_MESU = SIMP(statut='o', typ='I',max='**'), - NUME_MODE_CALCUL = SIMP(statut='o', typ='I',max='**'), - MODELE_MODIF = SIMP(statut='o', typ=modele_sdaster), - ), - # Si on realise une modification structurale, on donne les DDL capteurs et interface - b_modif = BLOC( condition="MODIFSTRUCT!=None", - GROUP_NO_CAPTEURS = FACT( statut='f', max='**', - GROUP_NO = SIMP(statut='o',typ=grno,), - NOM_CMP = SIMP(statut='o',typ='TXM', max='**'), - ), - GROUP_NO_EXTERIEUR = FACT( statut='f', max='**', - GROUP_NO = SIMP(statut='o',typ=grno,), - NOM_CMP = SIMP(statut='o',typ='TXM', max='**'), - ), - ), - ), - ); - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2012 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: sam.cuvilliez at edf.fr - -def calc_essai_geomeca_prod(self, - ESSAI_TD, - ESSAI_TND, - ESSAI_CISA_C, - ESSAI_TND_C, - #ESSAI_XXX, - **args): - List_essais = [] - if ESSAI_TD != None : List_essais += ESSAI_TD.List_F() - if ESSAI_TND != None : List_essais += ESSAI_TND.List_F() - if ESSAI_CISA_C != None : List_essais += ESSAI_CISA_C.List_F() - if ESSAI_TND_C != None : List_essais += ESSAI_TND_C.List_F() - #if ESSAI_XXX != None : List_essais += ESSAI_XXX.List_F() - for DicoEssai in List_essais : - if DicoEssai.has_key('TABLE_RESU'): - for Table in DicoEssai['TABLE_RESU']: - self.typeSDProd(Table,table_sdaster) - return None - - -CALC_ESSAI_GEOMECA = MACRO(nom="CALC_ESSAI_GEOMECA", - op=OPS('Macro.calc_essai_geomeca_ops.calc_essai_geomeca_ops'), - sd_prod=calc_essai_geomeca_prod, - UIinfo={"groupes":("",)}, - reentrant='n', - fr="", - MATER = SIMP(statut='o',typ=mater_sdaster), - COMPORTEMENT = C_COMPORTEMENT(), - CONVERGENCE = C_CONVERGENCE(), - regles=(AU_MOINS_UN('COMPORTEMENT'), # car COMPORTEMENT est facultatif dans C_COMPORTEMENT - AU_MOINS_UN( - 'ESSAI_TD' , - 'ESSAI_TND' , - 'ESSAI_CISA_C', - 'ESSAI_TND_C' , - #'ESSAI_XXX' , - ),), - # --- - # Essai Triaxial Monotone Draine ('TD') - # --- - ESSAI_TD = FACT(statut='f',max='**', - - PRES_CONF = SIMP(statut='o',typ='R',max='**',), - EPSI_IMPOSE = SIMP(statut='o',typ='R',max='**',), - NB_INST = SIMP(statut='f',typ='I',val_min=100,defaut=100), - - TABLE_RESU = SIMP(statut='f',typ=CO,max='**',validators=NoRepeat(),), - GRAPHIQUE = SIMP(statut='f',typ='TXM',max='**',validators=NoRepeat(), - into= ('P-Q','EPS_AXI-Q','EPS_AXI-EPS_VOL',), - defaut=('P-Q','EPS_AXI-Q','EPS_AXI-EPS_VOL',),), - TABLE_REF = SIMP(statut='f',typ=table_sdaster,max='**',), - - ), - - # --- - # Essai Triaxial Monotone Non Draine ('TND') - # --- - ESSAI_TND = FACT(statut='f',max='**', - - PRES_CONF = SIMP(statut='o',typ='R',max='**',), - EPSI_IMPOSE = SIMP(statut='o',typ='R',max='**',), - BIOT_COEF = SIMP(statut='f',typ='R',defaut=1.,), - NB_INST = SIMP(statut='f',typ='I',val_min=100,defaut=100), - - TABLE_RESU = SIMP(statut='f',typ=CO,max='**',validators=NoRepeat(),), - GRAPHIQUE = SIMP(statut='f',typ='TXM',max='**',validators=NoRepeat(), - into= ('P-Q','EPS_AXI-Q','EPS_AXI-PRE_EAU',), - defaut=('P-Q','EPS_AXI-Q','EPS_AXI-PRE_EAU',),), - TABLE_REF = SIMP(statut='f',typ=table_sdaster,max='**',), - - ), - - # --- - # Essai de Cisaillement Cyclique Draine ('CISA_C') - # --- - ESSAI_CISA_C = FACT(statut='f',max='**', - - PRES_CONF = SIMP(statut='o',typ='R',max='**',), - EPSI_IMPOSE = SIMP(statut='o',typ='R',max='**',), - EPSI_ELAS = SIMP(statut='f',typ='R',defaut=1.E-7,val_max=1.E-7), - NB_CYCLE = SIMP(statut='o',typ='I',val_min=1), - NB_INST = SIMP(statut='f',typ='I',val_min=25,defaut=25), - - TABLE_RESU = SIMP(statut='f',typ=CO,max='**',validators=NoRepeat(),), - GRAPHIQUE = SIMP(statut='f',typ='TXM',max='**',validators=NoRepeat(), - into= ('EPSXY-SIGXY','EPSXY-G','EPSXY-D',), - defaut=('EPSXY-SIGXY','EPSXY-G','EPSXY-D',),), - TABLE_REF = SIMP(statut='f',typ=table_sdaster,max='**',), - - ), - - # --- - # Essai Triaxial Non Draine Cyclique ('TND_C') - # --- - ESSAI_TND_C = FACT(statut='f',max='**', - - PRES_CONF = SIMP(statut='o',typ='R',max='**',), - SIGM_IMPOSE = SIMP(statut='o',typ='R',max='**',), - BIOT_COEF = SIMP(statut='f',typ='R',defaut=1.,), - UN_SUR_K = SIMP(statut='o',typ='R',), - NB_CYCLE = SIMP(statut='o',typ='I',val_min=1), - NB_INST = SIMP(statut='f',typ='I',val_min=25,defaut=25), - - TABLE_RESU = SIMP(statut='f',typ=CO,max='**',validators=NoRepeat(),), - GRAPHIQUE = SIMP(statut='f',typ='TXM',max='**',validators=NoRepeat(), - into= ('NCYCL-DSIGM','P-Q','SIG_AXI-PRE_EAU',), - defaut=('NCYCL-DSIGM','P-Q','SIG_AXI-PRE_EAU',),), - TABLE_REF = SIMP(statut='f',typ=table_sdaster,max='**',), - - ), - - # --- - # Essai ... ('XXX') - # --- - #ESSAI_XXX = FACT(statut='f',max='**', - # - # PRES_CONF = SIMP(statut='o',typ='R',max='**',), - # ... - # - # TABLE_RESU = SIMP(statut='f',typ=CO,max='**',validators=NoRepeat(),), - # GRAPHIQUE = SIMP(statut='f',typ='TXM',max='**',validators=NoRepeat(), - # into= ('XXX','XXX','XXX',), - # defaut=('XXX','XXX','XXX',),), - # TABLE_REF = SIMP(statut='f',typ=table_sdaster,max='**',), - # - # ), - - INFO = SIMP(statut='f',typ='I',defaut= 1,into=(1,2) ),) - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2013 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: aimery.assire at edf.fr - -def calc_europlexus_prod(self,COURBE=None,**args): - if COURBE is not None: - self.typeSDProd(args['TABLE_COURBE'],table_sdaster) - return evol_noli - -CALC_EUROPLEXUS = MACRO(nom="CALC_EUROPLEXUS", - op=OPS('Macro.calc_europlexus_ops.calc_europlexus_ops'), - sd_prod=calc_europlexus_prod, - reentrant='n', - UIinfo={"groupes":("Outils-métier","Dynamique",)}, - fr="Chainage Code_Aster-Europlexus", - regles=(PRESENT_ABSENT('ETAT_INIT','MODELE'), - PRESENT_ABSENT('ETAT_INIT','CARA_ELEM'), - PRESENT_ABSENT('ETAT_INIT','CHAM_MATER'), - EXCLUS('ETAT_INIT','FONC_PARASOL'), - AU_MOINS_UN('COMPORTEMENT'),), - LOGICIEL = SIMP(statut='f', typ='TXM', defaut='/home/europlex/EPXD/bin/europlexus'), - LANCEMENT = SIMP(statut='f', typ='TXM', defaut='OUI',into=('OUI','NON')), - - ETAT_INIT = FACT(statut='f', - RESULTAT = SIMP(statut='o',typ=evol_noli), - CONTRAINTE = SIMP(statut='f', typ='TXM', defaut='NON',into=('OUI','NON')), - EQUILIBRE = SIMP(statut='f', typ='TXM', defaut='OUI',into=('OUI','NON')), - b_niter =BLOC(condition = "CONTRAINTE == 'NON' ", - NITER = SIMP(statut='f',typ='I',defaut=1), - ), - ), - MODELE = SIMP(statut='f',typ=modele_sdaster), - CARA_ELEM = SIMP(statut='f',typ=cara_elem), - - FONC_PARASOL = FACT(statut='f', - regles=(PRESENT_PRESENT('NFKT','NFKR'),), - NFKT = SIMP(statut='f',typ=(fonction_sdaster,)), - NFKR = SIMP(statut='f',typ=(fonction_sdaster,)), - NFAT = SIMP(statut='f',typ=(fonction_sdaster,)), - NFAR = SIMP(statut='f',typ=(fonction_sdaster,)), - GROUP_MA = SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - ), - - - CHAM_MATER = SIMP(statut='f',typ=cham_mater), - COMPORTEMENT =C_COMPORTEMENT('CALC_EUROPLEXUS'), - - EXCIT = FACT(statut='o',max='**', - CHARGE = SIMP(statut='o',typ=(char_meca,)), - FONC_MULT = SIMP(statut='f',typ=(fonction_sdaster,)), - ), - - DIME = FACT(statut='f', regles=(AU_MOINS_UN('UNITE_DIME','Q4GS','FORCE', - 'PT6L','ZONE','POUT','ECRO', - 'APPU','BLOQ','PRESS','PMAT', - 'DKT3','DEPL','FNOM','TABLE','FTAB', - 'MTTI','NEPE','LIAI',), ), - UNITE_DIME=SIMP(statut='f',typ='I'), - - Q4GS = SIMP(statut='f',typ='I'), - FORCE = SIMP(statut='f',typ='I'), - PT6L = SIMP(statut='f',typ='I'), - ZONE = SIMP(statut='f',typ='I'), - POUT = SIMP(statut='f',typ='I'), - ECRO = SIMP(statut='f',typ='I'), - APPU = SIMP(statut='f',typ='I'), - BLOQ = SIMP(statut='f',typ='I'), - PRESS = SIMP(statut='f',typ='I',min=2,max=2,), - PMAT = SIMP(statut='f',typ='I'), - DKT3 = SIMP(statut='f',typ='I'), - DEPL = SIMP(statut='f',typ='I'), - FNOM = SIMP(statut='f',typ='I'), - TABLE = SIMP(statut='f',typ='I',min=2,max=2,), - FTAB = SIMP(statut='f',typ='I'), - MTTI = SIMP(statut='f',typ='I'), - NEPE = SIMP(statut='f',typ='I'), - LIAI = SIMP(statut='f',typ='I'), - ), - - CALCUL = FACT(statut='o', - TYPE_DISCRETISATION = SIMP(statut='o',typ='TXM',defaut='AUTO',into=('AUTO','UTIL')), - INST_FIN = SIMP(statut='o',typ='R'), - INST_INIT = SIMP(statut='o',typ='R'), - NMAX = SIMP(statut='f',typ='R'), - - b_auto =BLOC( condition = "TYPE_DISCRETISATION=='AUTO'", - CSTAB = SIMP(statut='o',typ='R',defaut=0.3), -# DTMAX = SIMP(statut='f',typ='R'), - ), - - b_util =BLOC( condition = "TYPE_DISCRETISATION=='UTIL'", - PASFIX = SIMP(statut='o',typ='R'), - ), - ), - - - OBSERVATION =FACT(statut='f',max='**', - SUIVI_DDL = SIMP(statut='o',typ='TXM',defaut="OUI",max=1,into=("OUI","NON")), - b_suivi =BLOC(condition = "SUIVI_DDL == 'OUI' ", - regles=( AU_MOINS_UN('PAS_NBRE','PAS_INST',), - EXCLUS('PAS_NBRE','PAS_INST',), - EXCLUS('GROUP_NO','TOUT_GROUP_NO',), - EXCLUS('GROUP_MA','TOUT_GROUP_MA',), ), - NOM_CHAM = SIMP(statut='f',typ='TXM',validators=NoRepeat(),max='**',defaut=('DEPL',),into=('DEPL' - ,'VITE','ACCE','SIEF_ELGA','EPSI_ELGA','VARI_ELGA'),), - PAS_INST = SIMP(statut='f',typ='R'), - PAS_NBRE = SIMP(statut='f',typ='I'), - GROUP_NO = SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'), - GROUP_MA = SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - TOUT_GROUP_NO = SIMP(statut='f',typ='TXM',into=('OUI',),), - TOUT_GROUP_MA = SIMP(statut='f',typ='TXM',into=('OUI',),), - ), - ), - - - ARCHIVAGE =FACT(statut='o', regles=( AU_MOINS_UN('PAS_NBRE','PAS_INST',), EXCLUS('PAS_NBRE','PAS_INST',), ), - PAS_INST = SIMP(statut='f',typ='R'), - PAS_NBRE = SIMP(statut='f',typ='I'), - CONT_GENER = SIMP(statut='o',typ='TXM',defaut="OUI",max=1,into=("OUI","NON")), - ), - COURBE = FACT(statut='f',max='**', regles=(EXCLUS('GROUP_NO','GROUP_MA')), - UNITE_ALIT = SIMP(statut='f',typ='I'), - NOM_CHAM = SIMP(statut='f',typ='TXM'), - NOM_CMP = SIMP(statut='f',typ='TXM'), -# NOEUD = SIMP(statut='f',typ='TXM',validators=NoRepeat(),max='**'), -# MAILLE = SIMP(statut='f',typ='TXM',validators=NoRepeat(),max='**'), - GROUP_NO = SIMP(statut='f',typ=grno,validators=NoRepeat(),max=1), - GROUP_MA = SIMP(statut='f',typ=grma,validators=NoRepeat(),max=1), - - b_maille = BLOC(condition = "GROUP_MA != None", regles=(AU_MOINS_UN('NUM_GAUSS')), - NUM_GAUSS = SIMP(statut='f',typ='I',validators=NoRepeat(),max='**'),), - ), - b_courbe = BLOC(condition = "COURBE != None", - regles=(AU_MOINS_UN('PAS_NBRE_COURBE','PAS_INST_COURBE',), - AU_MOINS_UN('TABLE_COURBE',)), - PAS_INST_COURBE = SIMP(statut='f',typ='R'), - PAS_NBRE_COURBE = SIMP(statut='f',typ='I'), - TABLE_COURBE = SIMP(statut='f', typ=CO), - ), - DOMAINES = FACT(statut='f',max='**', - GROUP_MA = SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - IDENTIFIANT = SIMP(statut='f',typ='I'),), - INTERFACES = FACT(statut='f',max='**', - GROUP_MA_1 = SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - GROUP_MA_2 = SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - TOLE = SIMP(statut='f',typ='R'), - IDENT_DOMAINE_1 = SIMP(statut='f',typ='I'), - IDENT_DOMAINE_2 = SIMP(statut='f',typ='I'),), - - INFO =SIMP(statut='f',typ='I',defaut=1,into=( 1, 2 ) ), - ) ; - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2012 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: van-xuan.tran at edf.fr -def calc_fatigue_prod(TYPE_CALCUL,OPTION,**args): - if TYPE_CALCUL == "CUMUL_DOMMAGE" : return cham_elem - if TYPE_CALCUL == "FATIGUE_MULTI" and OPTION == "DOMA_ELGA": return cham_elem - if TYPE_CALCUL == "FATIGUE_MULTI" and OPTION == "DOMA_NOEUD": return cham_no_sdaster - if TYPE_CALCUL == "FATIGUE_VIBR" : return cham_elem - raise AsException("type de calcul non prevu") - -CALC_FATIGUE=OPER(nom="CALC_FATIGUE",op= 151,sd_prod=calc_fatigue_prod,reentrant='n', - fr="Calculer un champ de dommage de fatigue subit par une structure et déterminer le plan critique" - +" dans lequel le cisaillement est maximal.", - UIinfo={"groupes":("Post-traitements","Rupture",)}, - - TYPE_CALCUL = SIMP(statut='o',typ='TXM', - into=("CUMUL_DOMMAGE","FATIGUE_MULTI","FATIGUE_VIBR") ), - - b_cumul_domma =BLOC(condition = "TYPE_CALCUL == 'CUMUL_DOMMAGE'", - fr="Calcul d un champ de dommage subi par une structure.", - regles=(PRESENT_PRESENT('DOMMAGE','MATER', ),), - OPTION =SIMP(statut='o',typ='TXM', - into=("DOMA_ELNO_SIGM","DOMA_ELGA_SIGM", - "DOMA_ELNO_EPSI","DOMA_ELGA_EPSI", - "DOMA_ELNO_EPME","DOMA_ELGA_EPME") ), - - b_sigm =BLOC(condition = "OPTION == 'DOMA_ELNO_SIGM' or OPTION == 'DOMA_ELGA_SIGM'", - fr="Calcul a partir d un champ de contraintes.", - HISTOIRE =FACT(statut='o', - RESULTAT =SIMP(statut='o',typ=(evol_elas,dyna_trans, - evol_noli) ), - EQUI_GD =SIMP(statut='f',typ='TXM',defaut="VMIS_SG", - into=("VMIS_SG",) ), - ), - ), - b_epsi =BLOC(condition = "OPTION != 'DOMA_ELNO_SIGM' and OPTION != 'DOMA_ELGA_SIGM'", - fr="Calcul a partir d un champ de déformations.", - HISTOIRE =FACT(statut='o', - RESULTAT =SIMP(statut='o',typ=(evol_elas,dyna_trans, - evol_noli) ), - EQUI_GD =SIMP(statut='o',typ='TXM',defaut="INVA_2_SG", - into=("INVA_2_SG",) ), - ), - ), - DOMMAGE =SIMP(statut='o',typ='TXM', - into=("WOHLER","MANSON_COFFIN","TAHERI_MANSON", - "TAHERI_MIXTE",) ), - MATER =SIMP(statut='o',typ=(mater_sdaster) ), - TAHERI_NAPPE =SIMP(statut='f',typ=(nappe_sdaster,formule) ), - TAHERI_FONC =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - ), - - b_domma_moda =BLOC(condition = "TYPE_CALCUL == 'FATIGUE_VIBR'", - fr="Calcul d un champ de dommage en dynamique vibratoire", - regles=(PRESENT_PRESENT('DOMMAGE','MATER', ),), - OPTION =SIMP(statut='o',typ='TXM', - into=("DOMA_ELNO_SIGM","DOMA_ELGA_SIGM",) ), - CORR_SIGM_MOYE = SIMP(statut='o',typ='TXM',into=("GOODMAN","GERBER")), - HISTOIRE =FACT(statut='o', - RESULTAT =SIMP(statut='o',typ=(evol_elas, evol_noli) ), - MODE_MECA =SIMP(statut='o',typ=(mode_meca) ), - NUME_MODE =SIMP(statut='o',typ='I',min=1 ,max='**'), - FACT_PARTICI =SIMP(statut='o',typ='R',min=1, max='**',defaut=1. ), - EQUI_GD =SIMP(statut='f',typ='TXM',defaut="VMIS_SG", - into=("VMIS_SG",) ), - ), - DOMMAGE =SIMP(statut='o',typ='TXM', - into=("WOHLER",) ), - MATER =SIMP(statut='o',typ=(mater_sdaster) ), - ), - - b_fatigue_multi =BLOC(condition = "TYPE_CALCUL == 'FATIGUE_MULTI'", - fr="Plan critique dans le cas de la fatigue multiaxiale à grand nombre de cycles.", - TYPE_CHARGE =SIMP(statut='o',typ='TXM',into=("PERIODIQUE","NON_PERIODIQUE") ), - OPTION =SIMP(statut='o',typ='TXM',into=("DOMA_ELGA","DOMA_NOEUD") ), - RESULTAT =SIMP(statut='o',typ=(evol_elas, evol_noli) ), - CHAM_MATER =SIMP(statut='f',typ=(cham_mater) ), - MAILLAGE =SIMP(statut='o',typ=maillage_sdaster ), - regles=(UN_PARMI('GROUP_NO','NOEUD','GROUP_MA','MAILLE'),), - GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**' ), - MAILLE =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**' ), - GROUP_NO =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**' ), - NOEUD =SIMP(statut='f',typ=no ,validators=NoRepeat(),max='**' ), - COEF_PREECROU =SIMP(statut='f',typ='R',defaut= 1.0E+0), - b_period =BLOC(condition = "TYPE_CHARGE == 'PERIODIQUE'", - CRITERE =SIMP(statut='o',typ='TXM',into=("MATAKE_MODI_AC", - "DANG_VAN_MODI_AC","VMIS_TRESCA","FORMULE_CRITERE") ), - b_fati_p =BLOC(condition = "(CRITERE == 'MATAKE_MODI_AC' or CRITERE == 'DANG_VAN_MODI_AC')", - METHODE =SIMP(statut='o',typ='TXM',into=("CERCLE_EXACT",) ), - ), - - b_fati_pf =BLOC(condition = "(CRITERE == 'FORMULE_CRITERE')", - FORMULE_GRDEQ = SIMP(statut='o',typ=(fonction_sdaster,formule) ), - COURBE_GRD_VIE = SIMP(statut='o',typ='TXM',into=("WOHLER","MANSON_C","FORM_VIE") ), - FORMULE_CRITIQUE = SIMP(statut='f',typ=(fonction_sdaster,formule) ), - b_fati_pfvie = BLOC(condition = "(COURBE_GRD_VIE == 'FORM_VIE')", - FORMULE_VIE =SIMP(statut='o',typ=(fonction_sdaster,formule) ), - ), - ), - - INST_INIT_CYCL =SIMP(statut='f',typ='R',min=1, max=1), - INST_CRIT =SIMP(statut='f',typ='TXM',into=("RELATIF","ABSOLU",) ), - regles=(PRESENT_PRESENT('INST_INIT_CYCL','INST_CRIT', ),), - b_prec_rela=BLOC(condition="(INST_CRIT=='RELATIF')", - PRECISION =SIMP(statut='f',typ='R',defaut= 1.E-6),), - b_prec_abso=BLOC(condition="(INST_CRIT=='ABSOLU')", - PRECISION =SIMP(statut='o',typ='R'),), - ), - b_non_period =BLOC(condition = "TYPE_CHARGE == 'NON_PERIODIQUE'", - CRITERE =SIMP(statut='o',typ='TXM', - into=("MATAKE_MODI_AV","DANG_VAN_MODI_AV","FATESOCI_MODI_AV","FORMULE_CRITERE","VMIS_TRESCA") ), - b_fati_np =BLOC(condition = - "(CRITERE != 'VMIS_TRESCA')", - PROJECTION =SIMP(statut='o',typ='TXM',into=("UN_AXE", "DEUX_AXES") ), - DELTA_OSCI =SIMP(statut='f',typ='R',defaut= 0.0E+0), - ), - b_fati_npf =BLOC(condition = "(CRITERE == 'FORMULE_CRITERE')", - FORMULE_GRDEQ =SIMP(statut='o',typ=(fonction_sdaster,formule) ), - COURBE_GRD_VIE = SIMP(statut='o',typ='TXM',into=("WOHLER","MANSON_C","FORM_VIE") ), - b_fati_npfvie = BLOC(condition = "(COURBE_GRD_VIE == 'FORM_VIE')", - FORMULE_VIE =SIMP(statut='o',typ=(fonction_sdaster,formule) ), - ), - ), - ), - ), - - INFO =SIMP(statut='f',typ='I',defaut= 1,into=(1,2) ), -) ; - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2011 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: jacques.pellet at edf.fr - -def calc_ferraillage_prod(RESULTAT,**args): - if AsType(RESULTAT) != None : return AsType(RESULTAT) - raise AsException("type de concept resultat non prevu") - - -CALC_FERRAILLAGE=OPER(nom="CALC_FERRAILLAGE",op=175,sd_prod=calc_ferraillage_prod, reentrant='o', - UIinfo={"groupes":("Post-traitements","Outils-métier",)}, - fr="calcul de cartes de densité de ferraillage ", - - RESULTAT =SIMP(statut='o',typ=(evol_elas,evol_noli,dyna_trans,) ), - - -#==== -# Sélection des numéros d'ordre pour lesquels on fait le calcul : -#==== - TOUT_ORDRE =SIMP(statut='f',typ='TXM',into=("OUI",) ), - NUME_ORDRE =SIMP(statut='f',typ='I',validators=NoRepeat(),max='**' ), - LIST_ORDRE =SIMP(statut='f',typ=listis_sdaster), - INST =SIMP(statut='f',typ='R',validators=NoRepeat(),max='**' ), - LIST_INST =SIMP(statut='f',typ=listr8_sdaster), - FREQ =SIMP(statut='f',typ='R',validators=NoRepeat(),max='**' ), - LIST_FREQ =SIMP(statut='f',typ=listr8_sdaster), - - b_acce_reel =BLOC(condition="(FREQ != None)or(LIST_FREQ != None)or(INST != None)or(LIST_INST != None)", - CRITERE =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU",),), - b_prec_rela=BLOC(condition="(CRITERE=='RELATIF')", - PRECISION =SIMP(statut='f',typ='R',defaut= 1.E-6,),), - b_prec_abso=BLOC(condition="(CRITERE=='ABSOLU')", - PRECISION =SIMP(statut='o',typ='R',),), - ), - - -# -#==== -# Définition des grandeurs caractéristiques -#==== -# - TYPE_COMB =SIMP(statut='o',typ='TXM',into=('ELU','ELS')), - -# mot clé facteur répétable pour assigner les caractéristiques locales par zones topologiques (GROUP_MA) - AFFE =FACT(statut='o',max='**', - regles=(UN_PARMI('TOUT','GROUP_MA','MAILLE'),), - TOUT =SIMP(statut='f',typ='TXM',into=("OUI",) ), - GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - MAILLE =SIMP(statut='f',typ=ma,validators=NoRepeat(),max='**'), - ENROBG =SIMP(statut='o',typ='R'), # enrobage - CEQUI =SIMP(statut='f',typ='R'), # coefficient d'équivalence acier/béton (pour ELS) - SIGM_ACIER =SIMP(statut='o',typ='R'), # contrainte admissible dans l'acier - SIGM_BETON =SIMP(statut='o',typ='R'), # contrainte admissible dans le béton - PIVA =SIMP(statut='f',typ='R'), # valeur du pivot a (pour ELU) - PIVB =SIMP(statut='f',typ='R'), # valeur du pivot b (pour ELU) - ES =SIMP(statut='f',typ='R'), # valeur du Module d'Young de l'acier (pour ELU) - ), - ) - - -############################################################################################################## -# Remarques : -#----------- -# l'épaisseur des coques sera récupérée automatiquement -# via le cara_elem sous-jacent au résultat - -# Le résultat produit est un champ constant par éléments associé à la grandeur FER2_R -# qui comporte les composantes : -# -# DNSXI densité d'acier longitudinal suivant X, peau inf -# DNSXS densité d'acier longitudinal suivant X, peau sup -# DNSYI densité d'acier longitudinal suivant Y, peau inf -# DNSYS densité d'acier longitudinal suivant Y, peau sup -# DNST densité d'acier transversal à l'ELU -# SIGMBE contrainte beton -# EPSIBE deformation béton - -# arrêt en erreur si: -# - EFGE_ELNO n'a pas été précédemment calculé et n'est donc pas présent dans la structure de données RESULTAT -# - si aucun CARA_ELEM n'est récupérable via la structure de données RESULTAT - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: andre.adobes at edf.fr -CALC_FLUI_STRU=OPER(nom="CALC_FLUI_STRU",op= 144,sd_prod=melasflu_sdaster, - reentrant='n', - fr="Calculer les paramètres modaux d'une structure soumise à un écoulement", - UIinfo={"groupes":("Matrices et vecteurs",)}, - VITE_FLUI =FACT(statut='f', - fr="Définir la plage de vitesse fluide étudiée", - VITE_MIN =SIMP(statut='f',typ='R' ), - VITE_MAX =SIMP(statut='f',typ='R' ), - NB_POIN =SIMP(statut='f',typ='I' ), - ), - BASE_MODALE =FACT(statut='o', - - regles=(AU_MOINS_UN('AMOR_REDUIT','AMOR_UNIF','AMOR_REDUIT_CONN'),), - MODE_MECA =SIMP(statut='o',typ=mode_meca ), - NUME_ORDRE =SIMP(statut='f',typ='I',max='**'), - AMOR_REDUIT =SIMP(statut='f',typ='R',max='**',val_min=0.E+00), - AMOR_UNIF =SIMP(statut='f',typ='R',val_min=0.E+00 ), - AMOR_REDUIT_CONN=SIMP(statut='f',typ='R',max='**',val_min=0.E+00), - ), - TYPE_FLUI_STRU =SIMP(statut='o',typ=type_flui_stru ), - IMPRESSION =FACT(statut='f', - fr="Choix des informations à imprimer dans le fichier RESULTAT", - PARA_COUPLAGE =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON") ), - DEFORMEE =SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON") ), - ), -) ; - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2012 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: mathieu.courtois at edf.fr -def calc_fonc_interp_prod(FONCTION, NOM_PARA_FONC, **args): - if AsType(FONCTION) == nappe_sdaster: - return nappe_sdaster - elif AsType(FONCTION) == fonction_sdaster: - return fonction_sdaster - elif AsType(FONCTION) == fonction_c: - return fonction_c - elif AsType(FONCTION) == formule_c: - return fonction_c - elif AsType(FONCTION) == formule: - if NOM_PARA_FONC != None: - return nappe_sdaster - return fonction_sdaster - raise AsException("type de concept resultat non prevu") - -CALC_FONC_INTERP=OPER(nom="CALC_FONC_INTERP",op= 134,sd_prod=calc_fonc_interp_prod, - docu="U4.32.01",reentrant='n', - fr="Définit une fonction (ou une nappe) à partir d'une fonction FORMULE à 1 ou 2 variables", - UIinfo={"groupes":("Fonctions",)}, - regles=(UN_PARMI('VALE_PARA','LIST_PARA'),), - FONCTION =SIMP(statut='o',typ=(formule,fonction_sdaster,nappe_sdaster,fonction_c) ), - VALE_PARA =SIMP(statut='f',typ='R',max='**'), - LIST_PARA =SIMP(statut='f',typ=listr8_sdaster ), - NOM_RESU =SIMP(statut='f',typ='TXM'), - NOM_PARA =SIMP(statut='f',typ='TXM'), - INTERPOL =SIMP(statut='f',typ='TXM',max=2,into=("NON","LIN","LOG") ), - PROL_DROITE =SIMP(statut='f',typ='TXM',into=("EXCLU","CONSTANT","LINEAIRE") ), - PROL_GAUCHE =SIMP(statut='f',typ='TXM',into=("EXCLU","CONSTANT","LINEAIRE") ), - NOM_PARA_FONC =SIMP(statut='f',typ='TXM'), - b_eval_nappe =BLOC(condition = "NOM_PARA_FONC != None", - regles=(UN_PARMI('VALE_PARA_FONC','LIST_PARA_FONC'),), - VALE_PARA_FONC =SIMP(statut='f',typ='R',max='**'), - LIST_PARA_FONC =SIMP(statut='f',typ=listr8_sdaster ), - INTERPOL_FONC =SIMP(statut='f',typ='TXM',max=2,into=("NON","LIN","LOG")), - PROL_DROITE_FONC=SIMP(statut='f',typ='TXM',into=("EXCLU","CONSTANT","LINEAIRE") ), - PROL_GAUCHE_FONC=SIMP(statut='f',typ='TXM',into=("EXCLU","CONSTANT","LINEAIRE") ), - ), - TITRE =SIMP(statut='f',typ='TXM',max='**'), - INFO =SIMP(statut='f',typ='I',defaut= 1,into=( 1 , 2 ) ), -) ; - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2012 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: mathieu.courtois at edf.fr -def calc_fonction_prod(self, DERIVE, EXTRACTION, INTEGRE, INVERSE, COMB, COMB_C, MULT, - ENVELOPPE, FRACTILE, SPEC_OSCI, ASSE, FFT, COMPOSE, CORR_ACCE, - PUISSANCE, LISS_ENVELOP, ABS, REGR_POLYNOMIALE, DSP, **args): - - if (INTEGRE != None): return fonction_sdaster - if (DERIVE != None): return fonction_sdaster - if (INVERSE != None): return fonction_sdaster - if (COMB != None): - type_vale=AsType(COMB[0]['FONCTION']) - for mcfact in COMB : - if(AsType(mcfact['FONCTION'])!=type_vale): - raise AsException("CALC_FONCTION/COMB : pas de types hétérogènes nappe/fonction") - return type_vale - if (COMB_C != None): - vale=COMB_C[0]['FONCTION'] - if(AsType(vale) == nappe_sdaster): - for mcfact in COMB_C[1:] : - if(AsType(mcfact['FONCTION'])!=nappe_sdaster): - raise AsException("CALC_FONCTION/COMB_C : pas de types hétérogènes nappe/fonction") - return nappe_sdaster - else: - for mcfact in COMB_C : - if(AsType(mcfact['FONCTION'])==nappe_sdaster): - raise AsException("CALC_FONCTION/COMB_C : pas de types hétérogènes nappe/fonction") - return fonction_c - if (ENVELOPPE != None): return AsType(ENVELOPPE[0]['FONCTION']) - if (FRACTILE != None): return AsType(FRACTILE[0] ['FONCTION']) - if (EXTRACTION != None): return fonction_sdaster - if (SPEC_OSCI != None): return nappe_sdaster - if (DSP != None): return fonction_sdaster - if (COMPOSE != None): return fonction_sdaster - if (ASSE != None): return fonction_sdaster - if (MULT != None): - type_vale = AsType(MULT[0]['FONCTION']) - for mcfact in MULT: - if(AsType(mcfact['FONCTION']) != type_vale): - raise AsException("CALC_FONCTION/MULT : pas de types hétérogènes nappe/fonction") - return type_vale - if (FFT != None): - vale=FFT[0]['FONCTION'] - if (AsType(vale) == fonction_sdaster ) : return fonction_c - if (AsType(vale) == fonction_c) : return fonction_sdaster - if (CORR_ACCE != None): return fonction_sdaster - if (LISS_ENVELOP!= None): return nappe_sdaster - if (REGR_POLYNOMIALE != None): return fonction_sdaster - if (PUISSANCE != None): return AsType(PUISSANCE[0]['FONCTION']) - if (ABS != None): return fonction_sdaster - raise AsException("type de concept resultat non prevu") - - -CALC_FONCTION=MACRO(nom="CALC_FONCTION", - op=OPS('Macro.calc_fonction_ops.calc_fonction_ops'), - sd_prod=calc_fonction_prod, - fr="Effectue des opérations mathématiques sur des concepts de type fonction", - reentrant='n', - UIinfo={"groupes":("Fonctions",)}, - regles=(UN_PARMI('DERIVE', 'INTEGRE', 'SPEC_OSCI', 'DSP', 'FFT', 'CORR_ACCE', - 'COMB', 'COMB_C', 'MULT', 'ASSE', 'INVERSE', 'ABS', - 'ENVELOPPE', 'COMPOSE', 'EXTRACTION', 'PUISSANCE', - 'LISS_ENVELOP', 'FRACTILE', 'REGR_POLYNOMIALE'),), - FFT =FACT(statut='f',fr="Transformée de Fourier ou de son inverse", - FONCTION =SIMP(statut='o',typ=(fonction_sdaster,fonction_c) ), - METHODE =SIMP(statut='f',typ='TXM',defaut="PROL_ZERO",into=("PROL_ZERO","TRONCATURE","COMPLET") ), - b_syme =BLOC ( condition = " AsType(FONCTION)==fonction_c ", - SYME =SIMP(statut='f',typ='TXM',into=('OUI','NON'),defaut='OUI' ), - ), - ), - DERIVE =FACT(statut='f',fr="Dérivée d une fonction", - METHODE =SIMP(statut='f',typ='TXM',defaut="DIFF_CENTREE",into=("DIFF_CENTREE",) ), - FONCTION =SIMP(statut='o',typ=fonction_sdaster ), - ), - INTEGRE =FACT(statut='f',fr="Intégrale d'une fonction", - METHODE =SIMP(statut='f',typ='TXM',defaut="TRAPEZE",into=("SIMPSON","TRAPEZE") ), - FONCTION =SIMP(statut='o',typ=fonction_sdaster), - COEF =SIMP(statut='f',typ='R',defaut= 0.E+0,fr="Valeur de la constante d intégration" ), - ), - LISS_ENVELOP = FACT(statut='f',fr="Lissage d une enveloppe", - NAPPE =SIMP(statut='o',typ=nappe_sdaster ), - FREQ_MIN =SIMP(statut='f',typ='R',defaut =0.2), - FREQ_MAX =SIMP(statut='f',typ='R',defaut =35.5), - ELARG =SIMP(statut='f',typ='R',defaut =0.1 ), - TOLE_LISS =SIMP(statut='f',typ='R',defaut =0.25 ), - ), - REGR_POLYNOMIALE = FACT(statut='f',fr="Régression polynomiale d'une fonction", - FONCTION =SIMP(statut='o',typ=fonction_sdaster), - DEGRE =SIMP(statut='o',typ='I'), - ), - SPEC_OSCI =FACT(statut='f',fr="Spectre d'oscillateur", - METHODE =SIMP(statut='f',typ='TXM',defaut="NIGAM",into=("NIGAM","HARMO","RICE") ), - FONCTION =SIMP(statut='o',typ=fonction_sdaster ), - AMOR_REDUIT =SIMP(statut='f',typ='R',max='**'), - LIST_FREQ =SIMP(statut='f',typ=listr8_sdaster ), - FREQ =SIMP(statut='f',typ='R', max='**'), - NORME =SIMP(statut='o',typ='R',fr="Valeur de la norme du spectre d oscillateur" ), - NATURE =SIMP(statut='f',typ='TXM',defaut="ACCE",into=("DEPL","VITE","ACCE") ), - b_methode =BLOC(condition = "METHODE !='RICE' ", - NATURE_FONC =SIMP(statut='f', typ='TXM', defaut="ACCE", into=("ACCE",),),), - b_rice =BLOC(condition = "METHODE =='RICE' ", - DUREE =SIMP(statut='o', typ='R', val_min=0., - fr="durée de la phase forte pour facteur de pic"), - NATURE_FONC =SIMP(statut='f', typ='TXM', defaut="DSP", into=("DSP",),),), - ), - DSP =FACT(statut='f', fr="Densité spectrale", - FONCTION =SIMP(statut='o', typ=fonction_sdaster ), - AMOR_REDUIT =SIMP(statut='o', typ='R', val_min=0., val_max=1.), - NORME =SIMP(statut='o', typ='R'), - LIST_FREQ =SIMP(statut='f', typ=listr8_sdaster ), - FREQ_PAS =SIMP(statut='f', typ='R'), - regles=(UN_PARMI('FREQ_PAS','LIST_FREQ'),), - FREQ_COUP =SIMP(statut='o', typ='R', fr="fréquence de coupure" ), - DUREE =SIMP(statut='o', typ='R', val_min=0., - fr="durée de la phase forte pour facteur de peak"), - FRACT =SIMP(statut='o', typ='R', defaut=0.5, val_min=0., val_max=1., fr="fractile" ), - ), - ABS =FACT(statut='f',fr="Valeur absolue d'une fonction", - FONCTION =SIMP(statut='o',typ=fonction_sdaster,), - ), - COMB =FACT(statut='f',max='**',fr="Combinaison linéaire réelle de fonctions", - FONCTION =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster) ), - COEF =SIMP(statut='o',typ='R',fr="Coefficient réel de la combinaison linéaire associée à la fonction" ), - ), - COMB_C =FACT(statut='f',max='**',fr="Combinaison linéaire complexe de fonctions", - regles=(UN_PARMI('COEF_R','COEF_C'),), - FONCTION =SIMP(statut='o',typ=(fonction_sdaster,fonction_c,nappe_sdaster) ), - COEF_R =SIMP(statut='f',typ='R',fr="Coefficient réel de la combinaison linéaire associée à la fonction" ), - COEF_C =SIMP(statut='f',typ='C',fr="Coefficient complexe de la combinaison linéaire associée à la fonction" ), - ), - MULT =FACT(statut='f',max='**',fr="Produit de fonctions réelles", - FONCTION =SIMP(statut='o',typ=(fonction_sdaster,fonction_c,nappe_sdaster) ), - ), - b_comb =BLOC ( condition = "COMB != None or COMB_C != None " \ - "or REGR_POLYNOMIALE != None or MULT != None", - LIST_PARA =SIMP(statut='f',typ=listr8_sdaster ), - ), - COMPOSE =FACT(statut='f',fr="Composition de deux fonctions FONC_RESU(FONC_PARA)", - FONC_RESU =SIMP(statut='o',typ=fonction_sdaster), - FONC_PARA =SIMP(statut='o',typ=fonction_sdaster), - ), - EXTRACTION =FACT(statut='f',fr="Extraction sur une fonction complexe", - FONCTION =SIMP(statut='o',typ=fonction_c), - PARTIE =SIMP(statut='o',typ='TXM',into=("REEL","IMAG","MODULE","PHASE"),fr="Partie à extraire"), - ), - ENVELOPPE =FACT(statut='f',fr="Enveloppe d une famille de fonctions", - FONCTION =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster),max='**' ), - CRITERE =SIMP(statut='f',typ='TXM',defaut="SUP",into=("SUP","INF"),fr="Type de l enveloppe" ), - ), - FRACTILE =FACT(statut='f',fr="Fractile d une famille de fonctions ou de nappes", - FONCTION =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster),max='**' ), - FRACT =SIMP(statut='o',typ='R',defaut=1.,val_min=0.,val_max=1.,fr="Valeur du fractile" ), - ), - ASSE =FACT(statut='f',fr="Concatenation de fonctions", - FONCTION =SIMP(statut='o',typ=fonction_sdaster,min=2,max=2 ), - SURCHARGE =SIMP(statut='f',typ='TXM',defaut="DROITE",into=("DROITE","GAUCHE")), - ), - CORR_ACCE =FACT(statut='f',fr="Correction d un accelerogramme reel", - CORR_DEPL =SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON")), - FONCTION =SIMP(statut='o',typ=fonction_sdaster ), - ), - PUISSANCE =FACT(statut='f',fr="Fonction élevée à une puissance", - FONCTION =SIMP(statut='o', typ=(fonction_sdaster,nappe_sdaster) ), - EXPOSANT =SIMP(statut='f', typ='I', defaut=1 ), - ), - INVERSE =FACT(statut='f',fr="Inverse d'une fonction", - FONCTION =SIMP(statut='o', typ=fonction_sdaster), - ), - NOM_PARA =SIMP(statut='f',typ='TXM',into=C_PARA_FONCTION() ), - NOM_RESU =SIMP(statut='f',typ='TXM' ), - INTERPOL =SIMP(statut='f',typ='TXM',max=2,into=("NON","LIN","LOG"), - fr="Type d'interpolation pour les abscisses et les ordonnées de la " \ - "fonction ou bien pour le paramètre de la nappe."), - PROL_DROITE =SIMP(statut='f',typ='TXM',into=("CONSTANT","LINEAIRE","EXCLU") ), - PROL_GAUCHE =SIMP(statut='f',typ='TXM',into=("CONSTANT","LINEAIRE","EXCLU") ), - NOM_PARA_FONC =SIMP(statut='f',typ='TXM',into=C_PARA_FONCTION() ), - INTERPOL_FONC =SIMP(statut='f',typ='TXM',max=2,into=("NON","LIN","LOG"), - fr="Type d'interpolation pour les abscisses et les ordonnées de la fonction"), - PROL_DROITE_FONC=SIMP(statut='f',typ='TXM',into=("CONSTANT","LINEAIRE","EXCLU") ), - PROL_GAUCHE_FONC=SIMP(statut='f',typ='TXM',into=("CONSTANT","LINEAIRE","EXCLU") ), - INFO =SIMP(statut='f',typ='I',defaut=1,into=(1,2) ), -) - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2011 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: nicolas.greffet at edf.fr -CALC_FORC_AJOU=OPER(nom="CALC_FORC_AJOU",op=199,sd_prod=vect_asse_gene, - fr="Calculer l'effet de surpression hydrodynamique due au mouvement d'entrainement de la structure" - +" en analyse sismique", - reentrant ='n', - UIinfo={"groupes":("Matrices et vecteurs",)}, - - regles=(EXCLUS('MODE_MECA','MODELE_GENE'), - PRESENT_PRESENT( 'MODELE_GENE','NUME_DDL_GENE'), - UN_PARMI('MONO_APPUI', 'NOEUD','GROUP_NO'), - UN_PARMI('MONO_APPUI','MODE_STAT')), - - MODELE_FLUIDE =SIMP(statut='o',typ=modele_sdaster ), - MODELE_INTERFACE=SIMP(statut='o',typ=modele_sdaster ), - CHAM_MATER =SIMP(statut='o',typ=cham_mater ), - CHARGE =SIMP(statut='o',typ=char_ther ), - MODE_MECA =SIMP(statut='f',typ=mode_meca ), - MODELE_GENE =SIMP(statut='f',typ=modele_gene ), - NUME_DDL_GENE =SIMP(statut='f',typ=nume_ddl_gene ), - DIST_REFE =SIMP(statut='f',typ='R',defaut= 1.E-2 ), - AVEC_MODE_STAT =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON") ), - NUME_MODE_MECA =SIMP(statut='f',typ='I',validators=NoRepeat(),max='**'), - POTENTIEL =SIMP(statut='f',typ=evol_ther ), - NOEUD_DOUBLE =SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON") ), - - DIRECTION =SIMP(statut='o',typ='R',max=3), - MONO_APPUI =SIMP(statut='f',typ='TXM',into=("OUI",),), - NOEUD =SIMP(statut='f',typ=no ,validators=NoRepeat(),max='**'), - GROUP_NO =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'), - MODE_STAT =SIMP(statut='f',typ=mode_meca,), - INFO =SIMP(statut='f',typ='I',defaut= 1,into=( 1 , 2 ) ), -#------------------------------------------------------------------- -# Catalogue commun SOLVEUR - SOLVEUR =C_SOLVEUR('CALC_FORC_AJOU'), -#------------------------------------------------------------------- - ) ; - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2010 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: Georges-cc.devesa at edf.fr - -CALC_FORC_NONL=OPER(nom="CALC_FORC_NONL",op= 183,sd_prod=dyna_trans,reentrant='n', - fr="Créer un dyna_trans contenant des champs nommés 'DEPL' correspondant à 'FONL_NOEU' ", - UIinfo={"groupes":("Post-traitements","Résultats et champs",)}, - RESULTAT =SIMP(statut='o',typ=resultat_sdaster), - - regles=(EXCLUS('TOUT_ORDRE','NUME_ORDRE','INST','FREQ','NUME_MODE', - 'NOEUD_CMP','LIST_INST','LIST_FREQ','LIST_ORDRE','NOM_CAS'), - ), - TOUT_ORDRE =SIMP(statut='f',typ='TXM',into=("OUI",) ), - NUME_ORDRE =SIMP(statut='f',typ='I',validators=NoRepeat(),max='**'), - NUME_MODE =SIMP(statut='f',typ='I',validators=NoRepeat(),max='**'), - NOEUD_CMP =SIMP(statut='f',typ='TXM',validators=NoRepeat(),max='**'), - NOM_CAS =SIMP(statut='f',typ='TXM' ), - INST =SIMP(statut='f',typ='R',validators=NoRepeat(),max='**'), - FREQ =SIMP(statut='f',typ='R',validators=NoRepeat(),max='**'), - LIST_INST =SIMP(statut='f',typ=listr8_sdaster), - LIST_FREQ =SIMP(statut='f',typ=listr8_sdaster), - LIST_ORDRE =SIMP(statut='f',typ=listis_sdaster), - CRITERE =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU",),), - b_prec_rela=BLOC(condition="(CRITERE=='RELATIF')", - PRECISION =SIMP(statut='f',typ='R',defaut= 1.E-6,),), - b_prec_abso=BLOC(condition="(CRITERE=='ABSOLU')", - PRECISION =SIMP(statut='o',typ='R',),), - OPTION =SIMP(statut='o',typ='TXM',validators=NoRepeat(),max=1, defaut="FONL_NOEU", - into=("FONL_NOEU",) ), - - MODELE =SIMP(statut='o',typ=modele_sdaster), - CHAM_MATER =SIMP(statut='f',typ=cham_mater), - CARA_ELEM =SIMP(statut='f',typ=cara_elem), - - COMPORTEMENT =C_COMPORTEMENT(), -) ; - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2013 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: samuel.geniaut at edf.fr -CALC_G=OPER(nom="CALC_G",op=100,sd_prod=table_sdaster, - fr="Calcul du taux de restitution d'énergie par la méthode theta en thermo-élasticité" - +" et les facteurs d'intensité de contraintes.", - reentrant='f', - UIinfo={"groupes":("Post-traitements","Rupture",)}, - - THETA =FACT(statut='o', - THETA =SIMP(statut='f',typ=(theta_geom,cham_no_sdaster),), - FOND_FISS =SIMP(statut='f',typ=fond_fiss,max=1), - FISSURE =SIMP(statut='f',position='global',typ=fiss_xfem,max=1), - NB_POINT_FOND =SIMP(statut='f',typ='I',val_min=2), - regles=( - EXCLUS('FOND_FISS','NB_POINT_FOND'), - UN_PARMI('THETA','FOND_FISS','FISSURE') - ), - b_theta =BLOC(condition="THETA == None",fr="calcul de theta", - regles=(PRESENT_PRESENT('R_INF','R_SUP'), - PRESENT_PRESENT('R_INF_FO','R_SUP_FO'), ), - NUME_FOND =SIMP(statut='f',typ='I',defaut=1), - R_INF =SIMP(statut='f',typ='R'), - R_SUP =SIMP(statut='f',typ='R'), - MODULE =SIMP(statut='f',typ='R',defaut=1.), - DIRE_THETA =SIMP(statut='f',typ=cham_no_sdaster ), - DIRECTION =SIMP(statut='f',typ='R',max=3,min=3), - R_INF_FO =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - R_SUP_FO =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - MODULE_FO =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - ), - b_no_fond_fiss =BLOC(condition="FOND_FISS== None", - SYME =SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON") ), - ), - ), - - RESULTAT =SIMP(statut='o',typ=(evol_elas,evol_noli,dyna_trans,mode_meca,mult_elas),), - - b_no_mult =BLOC(condition="(AsType(RESULTAT) != mult_elas)", - regles=(EXCLUS('TOUT_ORDRE','NUME_ORDRE','LIST_ORDRE','INST','LIST_INST', - 'TOUT_MODE','NUME_MODE','LIST_MODE','FREQ','LIST_FREQ'),), - - TOUT_ORDRE =SIMP(statut='f',typ='TXM',into=("OUI",) ), - NUME_ORDRE =SIMP(statut='f',typ='I',validators=NoRepeat(),max='**'), - LIST_ORDRE =SIMP(statut='f',typ=listis_sdaster), - INST =SIMP(statut='f',typ='R',validators=NoRepeat(),max='**'), - LIST_INST =SIMP(statut='f',typ=listr8_sdaster), - TOUT_MODE =SIMP(statut='f',typ='TXM',into=("OUI",) ), - NUME_MODE =SIMP(statut='f',typ='I',validators=NoRepeat(),max='**'), - LIST_MODE =SIMP(statut='f',typ=listis_sdaster), - LIST_FREQ =SIMP(statut='f',typ=listr8_sdaster), - FREQ =SIMP(statut='f',typ='R',validators=NoRepeat(),max='**'), - - b_acce_reel =BLOC(condition="(INST != None)or(LIST_INST != None)or(FREQ != None)or(LIST_FREQ != None)", - CRITERE =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU") ), - b_prec_rela=BLOC(condition="(CRITERE=='RELATIF')", - PRECISION =SIMP(statut='f',typ='R',defaut= 1.E-6,),), - b_prec_abso=BLOC(condition="(CRITERE=='ABSOLU')", - PRECISION =SIMP(statut='o',typ='R'),), - ), - ), - - b_mult_elas =BLOC(condition="(AsType(RESULTAT) == mult_elas)", - NOM_CAS =SIMP(statut='f',typ='TXM',validators=NoRepeat(),max='**' ), - ), - - b_no_mult_elas =BLOC(condition="(AsType(RESULTAT) != mult_elas)", - EXCIT =FACT(statut='f',max='**', - CHARGE =SIMP(statut='f',typ=(char_meca,char_cine_meca)), - FONC_MULT =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - TYPE_CHARGE =SIMP(statut='f',typ='TXM',defaut="FIXE",into=("FIXE",) ), - ), - ), - - COMPORTEMENT =FACT(statut='f', - RELATION =SIMP( statut='o',typ='TXM',into=C_RELATION('CALC_G')), - DEFORMATION =SIMP(statut='f',typ='TXM',defaut="PETIT",into=("PETIT","PETIT_REAC") ), - regles=(PRESENT_ABSENT('TOUT','GROUP_MA','MAILLE'),), - TOUT =SIMP(statut='f',typ='TXM',into=("OUI",) ), - GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - MAILLE =SIMP(statut='f',typ=ma,validators=NoRepeat(),max='**'), - - b_init =BLOC(condition="RELATION=='ELAS'",), - SIGM_INIT=SIMP(statut='f', typ=(cham_no_sdaster,cham_elem)), - ), - -# ETAT_INIT =FACT(statut='f', -# SIGM =SIMP(statut='f',typ=cham_elem), -# DEPL =SIMP(statut='f',typ=cham_no_sdaster), -# ), - LISSAGE =FACT(statut='d', - LISSAGE_THETA =SIMP(statut='f',typ='TXM',defaut="LEGENDRE",into=("LEGENDRE","LAGRANGE","LAGRANGE_REGU"),), - LISSAGE_G =SIMP(statut='f',typ='TXM',defaut="LEGENDRE",into=("LEGENDRE","LAGRANGE", - "LAGRANGE_NO_NO","LAGRANGE_REGU"),), - b_legen =BLOC(condition="(LISSAGE_THETA=='LEGENDRE') or (LISSAGE_G=='LEGENDRE')", - DEGRE =SIMP(statut='f',typ='I',defaut=5,into=(0,1,2,3,4,5,6,7) ), - ), - ), - - OPTION =SIMP(statut='o',typ='TXM',max=1,defaut='CALC_G', - into=("CALC_G", - "CALC_G_GLOB", - "CALC_K_G", - "G_MAX", - "G_MAX_GLOB", - "G_BILI", - "G_BILI_GLOB", - "CALC_K_MAX"), - ), - - b_g_max =BLOC(condition="(OPTION=='G_MAX') or (OPTION=='G_MAX_GLOB')", - BORNES =FACT(statut='o',max='**', - NUME_ORDRE =SIMP(statut='o',typ='I'), - VALE_MIN =SIMP(statut='o',typ='R'), - VALE_MAX =SIMP(statut='o',typ='R'), - ), - ), - b_k_max =BLOC(condition="(OPTION=='CALC_K_MAX')", - SIGNES =FACT(statut='o',max=1, - CHARGE_S =SIMP(statut='o',typ='I',validators=NoRepeat(),max='**'), - CHARGE_NS =SIMP(statut='o',typ='I',validators=NoRepeat(),max='**'), - ), - ), - - b_cal_contrainte =BLOC(condition="(COMPORTEMENT!=None and (OPTION=='CALC_G' or OPTION=='CALC_G_GLOB'))", - CALCUL_CONTRAINTE =SIMP(statut='f',typ='TXM',into=("NON",),), - ), - - - TITRE =SIMP(statut='f',typ='TXM',max='**'), - INFO =SIMP(statut='f',typ='I',defaut=1,into=(1,2) ), -); - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2013 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: renaud.bargellini at edf.fr -#Quoi qu'il en soit, on sort la table GP -#Si on est sans copeau et que l'utilisateur souhaite verifier -#les copeaux automatiquement crees, il peut grace a CHAMP_COP -def calc_gp_prod(self,TRANCHE_2D,GPMAX, **args): - """Typage des sd_prod - """ - if TRANCHE_2D!=None: - if TRANCHE_2D['ZONE_MAIL']== "NON": - for ss_cop in TRANCHE_2D: - if ss_cop['CHAMP_VISU']!= None: - self.typeSDProd(ss_cop['CHAMP_VISU'], cham_elem) - if GPMAX !=None: - self.typeSDProd(GPMAX, table_sdaster) - return table_sdaster - - -CALC_GP =MACRO(nom="CALC_GP", - op=OPS('Macro.calc_gp_ops.calc_gp_ops'), - sd_prod=calc_gp_prod, -# sd_prod=table_sdaster, - UIinfo={"groupes":("Outils-métier","Rupture",)}, - reentrant='n', - fr="calcul du parametre de clivage energetique Gp en 2D et en 3D", - regles=UN_PARMI('TRANCHE_2D','TRANCHE_3D'), - RESULTAT =SIMP(statut='o',typ=resultat_sdaster, - fr="Resultat d'une commande globale STAT_NON_LINE"), - LIST_INST = SIMP(statut='o',typ=(listr8_sdaster) ), - PRECISION = SIMP(statut='f',typ='R',validators=NoRepeat(),val_min=0.,val_max=1E-3,defaut=1E-6), - CRITERE = SIMP(statut='f',typ='TXM',defaut="ABSOLU",into=("RELATIF","ABSOLU") ), - TRANCHE_2D = FACT(statut='f',max = 1, - ZONE_MAIL = SIMP(statut='o',typ='TXM',into=("NON","OUI") ), - b_cop= BLOC(condition = "ZONE_MAIL=='OUI'", - fr="Les copeaux sont mailles", - GROUP_MA = SIMP(statut='o', typ=grma, validators=NoRepeat(), max='**'), - TAILLE =SIMP(statut='o',typ=listr8_sdaster),), - b_ss_cop = BLOC(condition="ZONE_MAIL=='NON'", - fr="Les copeaux ne sont pas mailles", - CENTRE =SIMP(statut='o',typ='R',max=2), - RAYON =SIMP(statut='o',typ='R',max=1), - ANGLE =SIMP(statut='o',typ='R',max=1), - TAILLE =SIMP(statut='o',typ='R',max=1), - NB_ZONE =SIMP(statut='o',typ='I',), - CHAMP_VISU =SIMP(statut='f',typ=CO),), - ), - TRANCHE_3D = FACT(statut='f',max ='**', - GROUP_MA = SIMP(statut='o', typ=grma, validators=NoRepeat(), max='**'), - ), - b_tranche_2d = BLOC(condition="TRANCHE_2D!=None", - SYME =SIMP(statut='o',typ='TXM',into=("NON","OUI"), - fr="multiplication par 2 si SYME=OUI"),), - b_tranche_3d = BLOC(condition="TRANCHE_3D!=None", - FOND_FISS =SIMP(statut='o',typ=fond_fiss,max=1,),), - GPMAX = SIMP(statut='f',typ=CO,), - ) - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2012 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: nicolas.greffet at edf.fr -# -# MACRO DE COUPLAGE IFS AVEC SATURNE VIA YACS -# -CALC_IFS_DNL= MACRO(nom='CALC_IFS_DNL', - op=OPS("Macro.calc_ifs_dnl_ops.calc_ifs_dnl_ops"), - sd_prod=evol_noli, - reentrant='f', - fr="Calcul de l'évolution dynamique d'une structure couplée à un "\ - "domaine fluide (résolu avec le code Saturne) via YACS", - UIinfo={"groupes":("Résolution","Dynamique",)}, - -#IFS -#=> - GROUP_MA_IFS =SIMP(statut='o',typ=grma,max='**'), - NOM_CMP_IFS =SIMP(statut='o',typ='TXM',validators=NoRepeat(),max='**'), - UNITE_NOEUD =SIMP(statut='f',typ='I',defaut= 81 ), - UNITE_ELEM =SIMP(statut='f',typ='I',defaut= 82 ), - PAS_INIT =SIMP(statut='o',typ='R' ), -#<= -#IFS - MODELE =SIMP(statut='o',typ=modele_sdaster), - CHAM_MATER =SIMP(statut='o',typ=cham_mater), - MODE_STAT =SIMP(statut='f',typ=mode_meca), - CARA_ELEM =SIMP(statut='f',typ=cara_elem), - MASS_DIAG =SIMP(statut='f',typ='TXM',into=("OUI","NON",) ), -#IFS -#=> -#(une charge force nodale est fournie par le couplage avec code_saturne - EXCIT =FACT(statut='f',max='**', -#<= -#IFS - regles=(PRESENT_ABSENT('FONC_MULT','ACCE'), - PRESENT_PRESENT('ACCE','VITE','DEPL'), - ), - TYPE_CHARGE =SIMP(statut='f',typ='TXM',defaut="FIXE_CSTE", - into=("FIXE_CSTE","SUIV","DIDI")), -#IFS -#=> -#(une charge force nodale est fournie par le couplage avec code_saturne -# CHARGE =SIMP(statut='o',typ=(char_meca,char_cine_meca)), - CHARGE =SIMP(statut='f',typ=(char_meca,char_cine_meca)), -#<= -#IFS - FONC_MULT =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - DEPL =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - ACCE =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - VITE =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - MULT_APPUI =SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON") ), - DIRECTION =SIMP(statut='f',typ='R',max='**'), - NOEUD =SIMP(statut='f',typ=no ,validators=NoRepeat(),max='**'), - GROUP_NO =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'), - ), - EXCIT_GENE =FACT(statut='f',max='**', - FONC_MULT =SIMP(statut='f',typ=fonction_sdaster,max='**' ), - VECT_GENE =SIMP(statut='f',typ=vect_asse_gene,max='**' ), - ), - CONTACT =SIMP(statut='f',typ=char_contact), - SOUS_STRUC =FACT(statut='f',min=01,max='**', - regles=(UN_PARMI('TOUT','SUPER_MAILLE'),), - CAS_CHARGE =SIMP(statut='o',typ='TXM' ), - TOUT =SIMP(statut='f',typ='TXM',into=("OUI",) ), - SUPER_MAILLE=SIMP(statut='f',typ=ma,validators=NoRepeat(),max='**',), - FONC_MULT =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - ), - AMOR_RAYL_RIGI = SIMP(statut='f',typ='TXM',defaut="TANGENTE",into=("TANGENTE","ELASTIQUE"),), - AMOR_MODAL =FACT(statut='f', - regles=(EXCLUS('AMOR_REDUIT','LIST_AMOR'),), - MODE_MECA =SIMP(statut='f',typ=mode_meca), - AMOR_REDUIT =SIMP(statut='f',typ='R',max='**' ), - LIST_AMOR =SIMP(statut='f',typ=listr8_sdaster ), - NB_MODE =SIMP(statut='f',typ='I',defaut= 9999 ), - REAC_VITE =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON") ), - ), - PROJ_MODAL =FACT(statut='f',max='**', - MODE_MECA =SIMP(statut='o',typ=mode_meca), - NB_MODE =SIMP(statut='f',typ='I',defaut= 9999 ), - regles=(PRESENT_PRESENT('MASS_GENE','RIGI_GENE'),), - MASS_GENE =SIMP(statut='f',typ=matr_asse_gene_r), - RIGI_GENE =SIMP(statut='f',typ=matr_asse_gene_r), - AMOR_GENE =SIMP(statut='f',typ=matr_asse_gene_r), - DEPL_INIT_GENE =SIMP(statut='f',typ=vect_asse_gene), - VITE_INIT_GENE =SIMP(statut='f',typ=vect_asse_gene), - ACCE_INIT_GENE =SIMP(statut='f',typ=vect_asse_gene), - ), -#------------------------------------------------------------------- - COMPORTEMENT =C_COMPORTEMENT('DYNA_NON_LINE'), -#------------------------------------------------------------------- - b_reuse =BLOC(condition = "reuse",fr="en mode concept reentrant : ETAT_INIT obligatoire", - ETAT_INIT =FACT(statut='o', - regles=(AU_MOINS_UN('EVOL_NOLI','DEPL','VITE','ACCE','SIGM','VARI',), - EXCLUS('EVOL_NOLI','DEPL',), - EXCLUS('EVOL_NOLI','VITE'), - EXCLUS('EVOL_NOLI','ACCE'), - EXCLUS('EVOL_NOLI','SIGM',), - EXCLUS('EVOL_NOLI','VARI',), - EXCLUS('NUME_ORDRE','INST'), ), - DEPL =SIMP(statut='f',typ=cham_no_sdaster), - VITE =SIMP(statut='f',typ=cham_no_sdaster), - ACCE =SIMP(statut='f',typ=cham_no_sdaster), - SIGM =SIMP(statut='f',typ=(cham_elem,carte_sdaster)), - VARI =SIMP(statut='f',typ=cham_elem), - EVOL_NOLI =SIMP(statut='f',typ=evol_noli), - NUME_ORDRE =SIMP(statut='f',typ='I'), - INST =SIMP(statut='f',typ='R'), - CRITERE =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU") ), - b_prec_rela=BLOC(condition="(CRITERE=='RELATIF')", - PRECISION =SIMP(statut='f',typ='R',defaut= 1.E-6,),), - b_prec_abso=BLOC(condition="(CRITERE=='ABSOLU')", - PRECISION =SIMP(statut='o',typ='R',),), - NUME_DIDI =SIMP(statut='f',typ='I'), - INST_ETAT_INIT =SIMP(statut='f',typ='R'), - ),), - b_not_reuse =BLOC(condition = "not reuse",fr="en mode concept non reentrant : ETAT_INIT facultatif", - ETAT_INIT =FACT(statut='f', - regles=(AU_MOINS_UN('EVOL_NOLI','DEPL','VITE','ACCE','SIGM','VARI',), - EXCLUS('EVOL_NOLI','DEPL',), - EXCLUS('EVOL_NOLI','VITE'), - EXCLUS('EVOL_NOLI','ACCE'), - EXCLUS('EVOL_NOLI','SIGM',), - EXCLUS('EVOL_NOLI','VARI',), - EXCLUS('NUME_ORDRE','INST'), ), - DEPL =SIMP(statut='f',typ=cham_no_sdaster), - VITE =SIMP(statut='f',typ=cham_no_sdaster), - ACCE =SIMP(statut='f',typ=cham_no_sdaster), - SIGM =SIMP(statut='f',typ=(cham_elem,carte_sdaster)), - VARI =SIMP(statut='f',typ=cham_elem), - EVOL_NOLI =SIMP(statut='f',typ=evol_noli), - NUME_ORDRE =SIMP(statut='f',typ='I'), - INST =SIMP(statut='f',typ='R'), - CRITERE =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU") ), - b_prec_rela=BLOC(condition="(CRITERE=='RELATIF')", - PRECISION =SIMP(statut='f',typ='R',defaut= 1.E-6,),), - b_prec_abso=BLOC(condition="(CRITERE=='ABSOLU')", - PRECISION =SIMP(statut='o',typ='R',),), - NUME_DIDI =SIMP(statut='f',typ='I'), - INST_ETAT_INIT =SIMP(statut='f',typ='R'), - ),), -#------------------------------------------------------------------- -#IFS : pas besoin d'INCREMENT -# INCREMENT =C_INCREMENT('MECANIQUE'), -#------------------------------------------------------------------- - SCHEMA_TEMPS =FACT(statut='o', - SCHEMA =SIMP(statut='o',min=1,max=1,typ='TXM', - into=("DIFF_CENT","TCHAMWA","NEWMARK","HHT","THETA_METHODE","KRENK"),), - COEF_MASS_SHIFT =SIMP(statut='f',typ='R',defaut= 0.0E+0 ), - b_tchamwa = BLOC(condition="SCHEMA=='TCHAMWA'", - PHI =SIMP(statut='f',typ='R',defaut= 1.05),), - - b_newmark = BLOC(condition="SCHEMA=='NEWMARK'", - BETA =SIMP(statut='f',typ='R',defaut= 0.25), - GAMMA =SIMP(statut='f',typ='R',defaut= 0.5),), - - b_hht = BLOC(condition="SCHEMA=='HHT'", - ALPHA =SIMP(statut='f',typ='R',defaut= -0.3 ), - MODI_EQUI =SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON"),),), - - b_theta = BLOC(condition="SCHEMA=='THETA_METHODE'", - THETA =SIMP(statut='f',typ='R',defaut= 1.,val_min=0.5,val_max=100. ),), - - b_krenk = BLOC(condition="SCHEMA=='KRENK'", - KAPPA =SIMP(statut='f',typ='R',defaut= 1.0,val_min=1.0,val_max=100. ),), - - b_explicit= BLOC(condition="SCHEMA=='TCHAMWA'or SCHEMA=='DIFF_CENT'", - STOP_CFL =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON"),), - FORMULATION =SIMP(statut='o',typ='TXM',into=("ACCELERATION",),),), - - b_implicit= BLOC(condition="SCHEMA!='TCHAMWA'and SCHEMA!='DIFF_CENT'", - FORMULATION =SIMP(statut='o',max=1,typ='TXM',into=("DEPLACEMENT","VITESSE","ACCELERATION"),),), - ), -#------------------------------------------------------------------- - NEWTON =C_NEWTON(), -#------------------------------------------------------------------- - RECH_LINEAIRE =C_RECH_LINEAIRE(), -#------------------------------------------------------------------- - CONVERGENCE =C_CONVERGENCE(), -#------------------------------------------------------------------- - SOLVEUR =C_SOLVEUR('CALC_IFS_DNL'), -#------------------------------------------------------------------- - OBSERVATION =C_OBSERVATION(), -#------------------------------------------------------------------- - SUIVI_DDL =C_SUIVI_DDL(), -#------------------------------------------------------------------- - AFFICHAGE =C_AFFICHAGE(), -#------------------------------------------------------------------- - ARCHIVAGE =C_ARCHIVAGE(), -#------------------------------------------------------------------- - CRIT_STAB =FACT(statut='f',min=1,max=1, - NB_FREQ =SIMP(statut='f',typ='I',max=1,val_min=1,defaut=3), - COEF_DIM_ESPACE =SIMP(statut='f',typ='I',max=1,val_min=2,defaut=5), - RIGI_GEOM =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON")), - b_char_crit=BLOC(condition="(RIGI_GEOM=='OUI')", - CHAR_CRIT =SIMP(statut='f',typ='R',min=2,max=2, - fr="Valeur des deux charges critiques délimitant la bande de recherche en HPP"),), - MODI_RIGI =SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON")), - TYPE =SIMP(statut='f',typ='TXM',defaut="FLAMBEMENT",into=("FLAMBEMENT","STABILITE")), - PREC_INSTAB =SIMP(statut='f',typ='R',defaut=1.E-6,max=1,), - SIGNE =SIMP(statut='f',typ='TXM',defaut=("POSITIF_NEGATIF"),into=("NEGATIF","POSITIF","POSITIF_NEGATIF"),max=1,), - bloc_rigi_geom=BLOC(condition="(RIGI_GEOM=='NON'or MODI_RIGI=='OUI')", - DDL_EXCLUS =SIMP(statut='f',typ='TXM',validators=NoRepeat(),max=40, - into=('DX','DY','DZ','DRX','DRY','DRZ','GRX','PRES','PHI', - 'TEMP','PRE1','PRE2','UI2','UI3','VI2','VI3','WI2','WI3','UO2', - 'UO3','VO2','VO3','WO2','WO3','UI4','UI5','VI4','VI5','WI4', - 'WI5','UO4','UO5','VO4','VO5','WO4','WO5','UI6','UO6','VI6', - 'VO6','WI6','WO6','WO','WI1','WO1','GONF','LIAISON','DCX', - 'DCY','DCZ','H1X','H1Y','H1Z','E1X','E1Y','E1Z','E2X','E2Y','E2Z', - 'E3X','E3Y','E3Z','E4X','E4Y','E4Z','LAGS_C','V11','V12','V13','V21','V22', - 'V23','V31','V32','V33','PRES11','PRES12','PRES13','PRES21','PRES22','PRES23', - 'PRES31','PRES32','PRES33','VARI','LAG_GV','DAMG','DH')), - bloc_type_stab =BLOC(condition= "TYPE == 'STABILITE' and RIGI_GEOM == 'NON'", - DDL_STAB =SIMP(statut='o',typ='TXM',validators=NoRepeat(),min=1,max=40, - into=('DX','DY','DZ','DRX','DRY','DRZ','GRX','PRES','PHI', - 'TEMP','PRE1','PRE2','UI2','UI3','VI2','VI3','WI2','WI3','UO2', - 'UO3','VO2','VO3','WO2','WO3','UI4','UI5','VI4','VI5','WI4', - 'WI5','UO4','UO5','VO4','VO5','WO4','WO5','UI6','UO6','VI6', - 'VO6','WI6','WO6','WO','WI1','WO1','GONF','LIAISON','DCX', - 'DCY','DCZ','H1X','H1Y','H1Z','E1X','E1Y','E1Z','E2X','E2Y','E2Z', - 'E3X','E3Y','E3Z','E4X','E4Y','E4Z','LAGS_C','V11','V12','V13','V21','V22', - 'V23','V31','V32','V33','PRES11','PRES12','PRES13','PRES21','PRES22','PRES23', - 'PRES31','PRES32','PRES33','VARI','LAG_GV','DAMG','DH')),), - ), - regles = (EXCLUS('PAS_CALC','LIST_INST','INST'),), - LIST_INST = SIMP(statut='f',typ=(listr8_sdaster) ), - INST = SIMP(statut='f',typ='R',validators=NoRepeat(),max='**' ), - PAS_CALC = SIMP(statut='f',typ='I' ), - CRITERE = SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU") ), - b_prec_rela=BLOC(condition="(CRITERE=='RELATIF')", - PRECISION =SIMP(statut='f',typ='R',defaut= 1.E-6,),), - b_prec_abso=BLOC(condition="(CRITERE=='ABSOLU')", - PRECISION =SIMP(statut='o',typ='R',),), - ), - MODE_VIBR =FACT(statut='f',min=1,max=1, - MATR_RIGI =SIMP(statut='f',typ='TXM',defaut="ELASTIQUE",into=("ELASTIQUE","TANGENTE","SECANTE",) ), - NB_FREQ =SIMP(statut='f',typ='I',max=1,val_min=1,defaut=3, - fr="Nombre de fréquences propres à calculer"), - COEF_DIM_ESPACE =SIMP(statut='f',typ='I',max=1,val_min=2,defaut=5), - BANDE =SIMP(statut='f',typ='R',min=2,max=2, - fr="Valeur des deux fréquences délimitant la bande de recherche",), - regles = (EXCLUS('PAS_CALC','LIST_INST','INST'),), - LIST_INST = SIMP(statut='f',typ=(listr8_sdaster) ), - INST = SIMP(statut='f',typ='R',validators=NoRepeat(),max='**' ), - PAS_CALC = SIMP(statut='f',typ='I' ), - CRITERE = SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU") ), - b_prec_rela=BLOC(condition="(CRITERE=='RELATIF')", - PRECISION =SIMP(statut='f',typ='R',defaut= 1.E-6,),), - b_prec_abso=BLOC(condition="(CRITERE=='ABSOLU')", - PRECISION =SIMP(statut='o',typ='R',),), - ), -#------------------------------------------------------------------- - - INFO =SIMP(statut='f',typ='I',defaut=1,into=(1,2) ), - b_info=BLOC(condition="(INFO==2)", - fr="filtre les messages émis dans le .mess selon le type de message demandé", - INFO_DBG = SIMP(statut='f',typ='TXM',max='**',validators=NoRepeat(), - into=("CONTACT", - "MECA_NON_LINE", - "PILOTAGE", - "FACTORISATION", - "APPARIEMENT"), - ), - ), - TITRE =SIMP(statut='f',typ='TXM',max='**'), -) ; - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2012 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: irmela.zentner at edf.fr -CALC_INTE_SPEC=OPER(nom="CALC_INTE_SPEC",op= 120,sd_prod=interspectre, - fr="Calcul d'une matrice interspectrale à partir d'une fonction du temps", - reentrant='n', - UIinfo={"groupes":("Fonctions",)}, - INST_INIT =SIMP(statut='f',typ='R',defaut= 0.E+0 ), - INST_FIN =SIMP(statut='o',typ='R' ), - DUREE_ANALYSE =SIMP(statut='f',typ='R' ), - DUREE_DECALAGE =SIMP(statut='f',typ='R' ), - NB_POIN =SIMP(statut='o',typ='I' ), - FONCTION =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule),max='**' ), - TITRE =SIMP(statut='f',typ='TXM',validators=NoRepeat(),max='**'), - INFO =SIMP(statut='f',typ='I',defaut=1,into=(1 , 2) ), -) ; - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2013 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: romeo.fernandes at edf.fr - - -CALC_MAC3COEUR = MACRO(nom="CALC_MAC3COEUR", - op=OPS("Mac3coeur.calc_mac3coeur_ops.calc_mac3coeur_ops"), - sd_prod=evol_noli, - - TYPE_COEUR = SIMP(statut='o',typ='TXM',into=("MONO","TEST","900","1300","N4","EPR"),position='global' ), - # TYPE DE COEUR A CONSIDERER - TABLE_N = SIMP(statut='o',typ=table_sdaster), # TABLE INITIALE DES DAMAC A L INSTANT N - MAILLAGE_N = SIMP(statut='f',typ=maillage_sdaster), # MAILLAGE EN ATTENDANT MIEUX ??? - - LAME = FACT(statut='f',max=1, - fr="Estimation des lames d'eau entre AC", - TABLE_NP1 = SIMP(statut='o',typ=table_sdaster), # TABLE INITIALE DES DAMAC A L INSTANT N+1 - MAILLAGE_NP1 = SIMP(statut='o',typ=maillage_sdaster),), # MAILLAGE EN ATTENDANT MIEUX ??? - - DEFORMATION = FACT(statut='f',max=1, - fr="Estimation des deformations des AC", - RESU_INIT = SIMP(statut='f',typ=resultat_sdaster), - NIVE_FLUENCE = SIMP(statut='o',typ='R',validators=NoRepeat(),max=1), # FLUENCE MAXIMALE DANS LE COEUR - UNITE_THYC = SIMP(statut='o',typ='I', max=1), - - # choix du maintien dans le cas mono-assemblage - b_maintien_mono = BLOC(condition = "TYPE_COEUR == 'MONO'", - - TYPE_MAINTIEN = SIMP(statut='o',typ='TXM',into=("FORCE","DEPL_PSC"), ), - - b_maintien_mono_force = BLOC(condition = "TYPE_MAINTIEN == 'FORCE'", - fr="valeur de l'effort de maintien imposée", - FORCE_MAINTIEN =SIMP(statut='o',typ='R', max=1),), - - ), - - # choix du maintien dans le cas d'un coeur à plusieurs assemblages - b_maintien_coeur = BLOC(condition = "TYPE_COEUR != 'MONO'", - - TYPE_MAINTIEN = SIMP(statut='f',typ='TXM',into=("DEPL_PSC",),defaut="DEPL_PSC" ), - - ), - - ), - -); - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2011 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: nicolas.greffet at edf.fr -CALC_MATR_AJOU=OPER(nom="CALC_MATR_AJOU",op= 152,sd_prod=matr_asse_gene_r, - fr="Calcul des matrices de masse, d'amortissement ou de rigidité ajoutés", - reentrant='n', - UIinfo={"groupes":("Matrices et vecteurs",)}, - regles=(EXCLUS('MODE_MECA','CHAM_NO','MODELE_GENE'), - PRESENT_ABSENT('NUME_DDL_GENE','CHAM_NO'), - PRESENT_PRESENT('MODELE_GENE','NUME_DDL_GENE'),), - MODELE_FLUIDE =SIMP(statut='o',typ=modele_sdaster ), - MODELE_INTERFACE=SIMP(statut='o',typ=modele_sdaster ), - CHAM_MATER =SIMP(statut='o',typ=cham_mater ), - CHARGE =SIMP(statut='o',typ=char_ther ), - MODE_MECA =SIMP(statut='f',typ=mode_meca ), - CHAM_NO =SIMP(statut='f',typ=cham_no_sdaster ), - MODELE_GENE =SIMP(statut='f',typ=modele_gene ), - NUME_DDL_GENE =SIMP(statut='f',typ=nume_ddl_gene ), - DIST_REFE =SIMP(statut='f',typ='R',defaut= 1.E-2 ), - AVEC_MODE_STAT =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON") ), - NUME_MODE_MECA =SIMP(statut='f',typ='I',validators=NoRepeat(),max='**'), - OPTION =SIMP(statut='o',typ='TXM',into=("MASS_AJOU","AMOR_AJOU","RIGI_AJOU") ), - POTENTIEL =SIMP(statut='f',typ=evol_ther ), - NOEUD_DOUBLE =SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON") ), - INFO =SIMP(statut='f',typ='I',defaut= 1,into=( 1 , 2 ) ), -#------------------------------------------------------------------- -# Catalogue commun SOLVEUR - SOLVEUR =C_SOLVEUR('CALC_MATR_AJOU'), -#------------------------------------------------------------------- -) ; - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2012 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: jacques.pellet at edf.fr -def calc_matr_elem_prod(OPTION,**args): - if OPTION == "RIGI_MECA" : return matr_elem_depl_r - if OPTION == "RIGI_FLUI_STRU" : return matr_elem_depl_r - if OPTION == "MASS_MECA" : return matr_elem_depl_r - if OPTION == "MASS_FLUI_STRU" : return matr_elem_depl_r - if OPTION == "RIGI_GEOM" : return matr_elem_depl_r - if OPTION == "RIGI_ROTA" : return matr_elem_depl_r - if OPTION == "MECA_GYRO" : return matr_elem_depl_r - if OPTION == "RIGI_GYRO" : return matr_elem_depl_r - if OPTION == "AMOR_MECA" : return matr_elem_depl_r - if OPTION == "IMPE_MECA" : return matr_elem_depl_r - if OPTION == "ONDE_FLUI" : return matr_elem_depl_r - if OPTION == "AMOR_MECA_ABSO" : return matr_elem_depl_r - if OPTION == "RIGI_MECA_HYST" : return matr_elem_depl_c - if OPTION == "RIGI_THER" : return matr_elem_temp_r - if OPTION == "MASS_MECA_DIAG" : return matr_elem_depl_r - if OPTION == "RIGI_ACOU" : return matr_elem_pres_c - if OPTION == "MASS_ACOU" : return matr_elem_pres_c - if OPTION == "AMOR_ACOU" : return matr_elem_pres_c - raise AsException("type de concept resultat non prevu") - -CALC_MATR_ELEM=OPER(nom="CALC_MATR_ELEM",op= 9,sd_prod=calc_matr_elem_prod - ,fr="Calcul des matrices élémentaires",reentrant='n', - UIinfo={"groupes":("Matrices et vecteurs",)}, - - OPTION =SIMP(statut='o',typ='TXM', - into=("RIGI_MECA","MASS_MECA","RIGI_GEOM", - "AMOR_MECA","RIGI_THER","IMPE_MECA", - "ONDE_FLUI","AMOR_MECA_ABSO","MASS_FLUI_STRU","RIGI_FLUI_STRU", - "RIGI_ROTA","MECA_GYRO","RIGI_GYRO","MASS_MECA_DIAG","RIGI_ACOU", - "MASS_ACOU","AMOR_ACOU","RIGI_MECA_HYST") ), - MODELE =SIMP(statut='o',typ=modele_sdaster ), - - # mots clés facultatifs que l'on a du mal à mettre dans les blocs - # sans gener MACRO_MATR_ASSE : - #------------------------------------------------------------------ - INST=SIMP(statut='f',typ='R',defaut= 0.E+0 ), - - - b_rigi_meca = BLOC( condition = "OPTION=='RIGI_MECA'", - CHAM_MATER =SIMP(statut='f',typ=cham_mater ), - CARA_ELEM =SIMP(statut='f',typ=cara_elem ), - MODE_FOURIER =SIMP(statut='f',typ='I',defaut= 0 ), - CHARGE =SIMP(statut='f',typ=char_meca,validators=NoRepeat(),max='**' ), - ), - - b_mass_meca =BLOC(condition = "(OPTION=='MASS_MECA') or (OPTION=='MASS_MECA_DIAG')", - CHAM_MATER =SIMP(statut='f',typ=cham_mater ), - CARA_ELEM =SIMP(statut='f',typ=cara_elem ), - CHARGE =SIMP(statut='f',typ=char_meca,validators=NoRepeat(),max='**'), - ), - - b_rigi_geom =BLOC(condition = "OPTION=='RIGI_GEOM'", - CARA_ELEM =SIMP(statut='f',typ=cara_elem ), - SIEF_ELGA =SIMP(statut='o',typ=cham_elem ), - STRX_ELGA =SIMP(statut='f',typ=cham_elem ), - MODE_FOURIER =SIMP(statut='f',typ='I',defaut= 0 ), - ), - - b_rigi_rota =BLOC(condition = "OPTION=='RIGI_ROTA'", - CHAM_MATER =SIMP(statut='o',typ=cham_mater ), - CARA_ELEM =SIMP(statut='f',typ=cara_elem ), - CHARGE =SIMP(statut='o',typ=char_meca,validators=NoRepeat(),max='**' ), - ), - - b_meca_gyro = BLOC( condition = "OPTION=='MECA_GYRO'", - CHAM_MATER =SIMP(statut='o',typ=cham_mater ), - CARA_ELEM =SIMP(statut='f',typ=cara_elem ), - CHARGE =SIMP(statut='f',typ=char_meca,validators=NoRepeat(),max='**' ), - ), - - b_rigi_gyro = BLOC( condition = "OPTION=='RIGI_GYRO'", - CHAM_MATER =SIMP(statut='o',typ=cham_mater ), - CARA_ELEM =SIMP(statut='f',typ=cara_elem ), - CHARGE =SIMP(statut='f',typ=char_meca,validators=NoRepeat(),max='**' ), - ), - - b_amor_meca =BLOC(condition = "OPTION=='AMOR_MECA'", - regles=(AU_MOINS_UN('CARA_ELEM','RIGI_MECA'), - ENSEMBLE('RIGI_MECA','MASS_MECA','CHAM_MATER'), ), - CARA_ELEM =SIMP(statut='f',typ=cara_elem ), - CHAM_MATER =SIMP(statut='f',typ=cham_mater ), - RIGI_MECA =SIMP(statut='f',typ=matr_elem_depl_r ), - MASS_MECA =SIMP(statut='f',typ=matr_elem_depl_r ), - CHARGE =SIMP(statut='f',typ=char_meca,validators=NoRepeat(),max='**'), - ), - - b_amor_meca_abso =BLOC(condition = "OPTION=='AMOR_MECA_ABSO'", - regles=(AU_MOINS_UN('CARA_ELEM','RIGI_MECA'), - ENSEMBLE('RIGI_MECA','MASS_MECA','CHAM_MATER'), ), - CARA_ELEM =SIMP(statut='f',typ=cara_elem ), - CHAM_MATER =SIMP(statut='o',typ=cham_mater ), - RIGI_MECA =SIMP(statut='f',typ=matr_elem_depl_r ), - MASS_MECA =SIMP(statut='f',typ=matr_elem_depl_r ), - CHARGE =SIMP(statut='f',typ=char_meca,validators=NoRepeat(),max='**'), - ), - - b_rigi_meca_hyst =BLOC( condition = "OPTION=='RIGI_MECA_HYST'", - CHARGE =SIMP(statut='f',typ=char_meca ,validators=NoRepeat(),max='**' ), - CHAM_MATER =SIMP(statut='f',typ=cham_mater ), - CARA_ELEM =SIMP(statut='f',typ=cara_elem ), - RIGI_MECA =SIMP(statut='o',typ=matr_elem_depl_r ), - ), - - b_rigi_ther =BLOC(condition = "OPTION=='RIGI_THER'", - CHAM_MATER =SIMP(statut='o',typ=cham_mater ), - CARA_ELEM =SIMP(statut='f',typ=cara_elem ), - MODE_FOURIER =SIMP(statut='f',typ='I',defaut= 0 ), - CHARGE =SIMP(statut='f',typ=char_ther,validators=NoRepeat(),max='**' ), - ), - - b_rigi_acou =BLOC(condition = "OPTION=='RIGI_ACOU'", - CHAM_MATER =SIMP(statut='o',typ=cham_mater ), - CHARGE =SIMP(statut='f',typ=char_acou ,validators=NoRepeat(),max='**' ), - ), - - b_mass_acou =BLOC(condition = "(OPTION=='MASS_ACOU') or (OPTION=='AMOR_ACOU')", - CHAM_MATER =SIMP(statut='o',typ=cham_mater ), - CHARGE =SIMP(statut='f',typ=char_acou ,validators=NoRepeat(),max='**' ), - ), - - b_rigi_flui =BLOC(condition = "OPTION=='RIGI_FLUI_STRU'", - CARA_ELEM =SIMP(statut='o',typ=cara_elem ), - CHAM_MATER =SIMP(statut='o',typ=cham_mater ), - CHARGE =SIMP(statut='o',typ=char_meca ,validators=NoRepeat(),max='**' ), - ), - - b_mass_flui =BLOC(condition = "OPTION=='MASS_FLUI_STRU'", - CARA_ELEM =SIMP(statut='o',typ=cara_elem ), - CHAM_MATER =SIMP(statut='o',typ=cham_mater ), - CHARGE =SIMP(statut='o',typ=char_meca ,validators=NoRepeat(),max='**'), - ), - - b_impe_meca =BLOC(condition = "(OPTION=='IMPE_MECA') or (OPTION=='ONDE_FLUI')", - CHAM_MATER =SIMP(statut='o',typ=cham_mater ), - CHARGE =SIMP(statut='o',typ=char_meca,validators=NoRepeat(),max='**' ), - ), -) ; - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2012 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: renaud.bargellini at edf.fr -CALC_META=OPER(nom="CALC_META",op=194,sd_prod=evol_ther,reentrant='o', - UIinfo={"groupes":("Post-traitements","Thermique",)}, - fr="Calcule l'évolution métallurgique à partir du résultat d'un calcul thermique", - - regles=(PRESENT_ABSENT('TOUT','GROUP_MA','MAILLE'),), - - MODELE =SIMP(statut='f',typ=modele_sdaster ), - CHAM_MATER =SIMP(statut='f',typ=cham_mater ), - RESULTAT =SIMP(statut='o',typ=evol_ther ), - - OPTION =SIMP(statut='o',typ='TXM',validators=NoRepeat(),max='**',into=C_NOM_CHAM_INTO(phenomene='METALLURGIE',),), - - TOUT =SIMP(statut='f',typ='TXM',into=("OUI",) ), - GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**', - fr="le calcul ne sera effectué que sur ces mailles là"), - MAILLE =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**', - fr="le calcul ne sera effectué que sur ces mailles là"), - - b_meta =BLOC(condition= "au_moins_un(OPTION, ('META_ELNO','META_NOEU'))", - ETAT_INIT =FACT(statut='o', - regles=(UN_PARMI('EVOL_THER', 'META_INIT_ELNO'),), - EVOL_THER =SIMP(statut='f',typ=evol_ther ), - META_INIT_ELNO =SIMP(statut='f',typ=carte_sdaster ), - b_etat =BLOC(condition="EVOL_THER != None", - regles=(UN_PARMI('NUME_INIT', 'INST_INIT',),), - NUME_INIT =SIMP(statut='f',typ='I'), - INST_INIT =SIMP(statut='f',typ='R'), - b_inst =BLOC(condition="INST_INIT != None", - CRITERE =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU",),), - b_prec_rela=BLOC(condition="(CRITERE=='RELATIF')", - PRECISION =SIMP(statut='f',typ='R',defaut= 1.E-6,),), - b_prec_abso=BLOC(condition="(CRITERE=='ABSOLU')", - PRECISION =SIMP(statut='o',typ='R',),), - ), - ), - ), - - COMPORTEMENT =FACT(statut='o',max=1, - RELATION =SIMP(statut='o',typ='TXM',into=("ACIER","ZIRC",) ), - ACIER =SIMP(statut='c',typ='I',defaut=7,into=(7,) ), - ZIRC =SIMP(statut='c',typ='I',defaut=4,into=(4,) ), - - regles=(PRESENT_ABSENT('TOUT','GROUP_MA','MAILLE'),), - TOUT =SIMP(statut='f',typ='TXM',into=("OUI",) ), - GROUP_MA =SIMP(statut='f',typ=grma, validators=NoRepeat(), max='**'), - MAILLE =SIMP(statut='f',typ=ma, validators=NoRepeat(), max='**'), - ), - ), -) ; - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2013 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: mathieu.courtois at edf.fr - -def calc_miss_sdprod(self, TYPE_RESU, **kwargs): - """Typage des structures de données produites""" - if TYPE_RESU in ('TABLE', 'TABLE_CONTROL'): - return table_sdaster - elif TYPE_RESU == 'HARM_GENE': - return harm_gene - elif TYPE_RESU == 'TRAN_GENE': - return tran_gene - else: - return None - -CALC_MISS = MACRO(nom="CALC_MISS", - op=OPS('Macro.calc_miss_ops.calc_miss_ops'), - sd_prod=calc_miss_sdprod, - fr="Préparation des données, exécution du logiciel Miss3D, et post-traitement", - UIinfo={"groupes":("Résolution","Outils-métier",)}, - - TYPE_RESU = SIMP(statut='o', typ='TXM', - into=('HARM_GENE', 'TRAN_GENE', 'TABLE', 'TABLE_CONTROL', - 'FICHIER', 'FICHIER_TEMPS'), - fr="Type de résultat produit en post-traitement. FICHIER : pas de post-traitement"), - PROJET = SIMP(statut='f', typ='TXM', defaut='MODELE', - fr="Nom de l'étude Miss"), - REPERTOIRE = SIMP(statut='f', typ='TXM', - fr="Répertoire de travail de Miss"), - VERSION = SIMP(statut='f', typ='TXM', into=("V6.6","V6.5"), defaut="V6.6", - fr="Version de Miss utilisée"), - - TABLE_SOL = SIMP(statut='o', typ=table_sdaster, - fr="Table des propriétés du sol"), - - # pas de post-traitement - b_basic = BLOC(condition="TYPE_RESU in ('FICHIER', 'TABLE_CONTROL')", - regles=(UN_PARMI('MACR_ELEM_DYNA', 'BASE_MODALE'), - ENSEMBLE('GROUP_MA_FLU_STR', 'GROUP_MA_FLU_SOL', 'GROUP_MA_SOL_SOL'),), - MACR_ELEM_DYNA = SIMP(statut='f', typ=macr_elem_dyna, - fr="Macro élément produit en amont"), - BASE_MODALE = SIMP(statut='f', typ=mode_meca, - fr="Base de modes"), - b_base_modale = BLOC(condition="BASE_MODALE is not None", - MATR_RIGI = SIMP(statut='f', typ=(matr_asse_depl_r, matr_asse_depl_c),), - MATR_MASS = SIMP(statut='f', typ=matr_asse_depl_r ), - ), - AMOR_REDUIT = SIMP(statut='f', typ='R', max='**'), - GROUP_MA_INTERF = SIMP(statut='o', typ=grma, max='**', - fr="Groupe de mailles de l'interface"), - GROUP_MA_FLU_STR = SIMP(statut='f', typ=grma, max='**', - fr="Groupe de mailles fluide-structure"), - GROUP_MA_FLU_SOL = SIMP(statut='f', typ=grma, max='**', - fr="Groupe de mailles fluide-sol"), - GROUP_MA_SOL_SOL = SIMP(statut='f', typ=grma, max='**', - fr="Groupe de mailles sol-sol"), - UNITE_IMPR_ASTER = SIMP(statut='f', typ='I', - fr="Unité des résultats transmis par Code_Aster à Miss"), - UNITE_RESU_IMPE = SIMP(statut='f', typ='I', - fr="Unité logique des impédances écrites par Miss"), - UNITE_RESU_FORC = SIMP(statut='f', typ='I', - fr="Unité logique des forces sismiques écrites par Miss"), - ), - # post-traitement : passage du domaine de Laplace au domaine temporel - b_fichier_temps = BLOC(condition="TYPE_RESU == 'FICHIER_TEMPS'", - regles=(UN_PARMI('MACR_ELEM_DYNA', 'BASE_MODALE'), - AU_MOINS_UN('UNITE_RESU_RIGI','UNITE_RESU_AMOR','UNITE_RESU_MASS'), - PRESENT_PRESENT('UNITE_RESU_AMOR', 'MATR_GENE'), - PRESENT_PRESENT('UNITE_RESU_MASS', 'MATR_GENE'),), - MACR_ELEM_DYNA = SIMP(statut='f', typ=macr_elem_dyna, - fr="Macro élément produit en amont"), - BASE_MODALE = SIMP(statut='f', typ=mode_meca, - fr="Base de modes"), - b_base_modale = BLOC(condition="BASE_MODALE is not None", - MATR_RIGI = SIMP(statut='f', typ=(matr_asse_depl_r, matr_asse_depl_c),), - MATR_MASS = SIMP(statut='f', typ=matr_asse_depl_r ), - ), - AMOR_REDUIT = SIMP(statut='f', typ='R', max='**'), - GROUP_MA_INTERF = SIMP(statut='o', typ=grma, max='**', - fr="Groupe de mailles de l'interface"), - UNITE_IMPR_ASTER = SIMP(statut='f', typ='I', - fr="Unité des résultats transmis par Code_Aster à Miss"), - UNITE_RESU_RIGI =SIMP(statut='f',typ='I'), - UNITE_RESU_AMOR =SIMP(statut='f',typ='I'), - UNITE_RESU_MASS =SIMP(statut='f',typ='I'), - INST_FIN = SIMP(statut='f', typ='R', fr="Instant final du calcul"), - PAS_INST = SIMP(statut='f', typ='R', fr="Pas de temps du calcul"), - PRECISION = SIMP(statut='f',typ='R',defaut=0.000001), - COEF_SURECH = SIMP(statut='f',typ='I',defaut=1 ), - MATR_GENE =FACT(statut='f', max = 1, - DECOMP_IMPE= SIMP(statut='f',typ='TXM',defaut='PRODUIT',into=('PRODUIT','SANS_PRODUIT')), - AMOR_HYST = SIMP(statut='o',typ='TXM',into=('DANS_IMPEDANCE','DANS_MATR_AMOR'), - fr="Indique comment l'amortissement hysteretique est pris en compte"), - b_amor_nohyst = BLOC(condition="AMOR_HYST == 'DANS_MATR_AMOR'", - MATR_MASS = SIMP(statut='f',typ=(matr_asse_gene_r,matr_asse_depl_r ) ), - MATR_RIGI = SIMP(statut='f',typ=(matr_asse_gene_r,matr_asse_gene_c,matr_asse_depl_r ) ), - MATR_AMOR = SIMP(statut='o',typ=(matr_asse_gene_r,matr_asse_gene_c,matr_asse_depl_r ) ), - ), - b_amor_hyst = BLOC(condition="AMOR_HYST == 'DANS_IMPEDANCE'", - regles = (AU_MOINS_UN('MATR_MASS','MATR_RIGI','MATR_AMOR'),), - MATR_MASS = SIMP(statut='f',typ=(matr_asse_gene_r,matr_asse_depl_r ) ), - MATR_RIGI = SIMP(statut='f',typ=(matr_asse_gene_r,matr_asse_gene_c,matr_asse_depl_r ) ), - MATR_AMOR = SIMP(statut='f',typ=(matr_asse_gene_r,matr_asse_gene_c,matr_asse_depl_r ) ), - ), - ), - EXCIT_SOL =FACT(statut='f', max = 1, - regles = (AU_MOINS_UN('CHAM_X','CHAM_Y','CHAM_Z'),), - UNITE_RESU_FORC =SIMP(statut='o',typ='I', - fr="Unité logique des forces sismiques écrites par Miss"), - NOM_CHAM =SIMP(statut='f',typ='TXM',defaut='DEPL', - into=('ACCE','VITE','DEPL') ), - CHAM_X = SIMP(statut='f', typ=fonction_sdaster,), - CHAM_Y = SIMP(statut='f', typ=fonction_sdaster,), - CHAM_Z = SIMP(statut='f', typ=fonction_sdaster,), - ), - ), - # si post-traitement - b_donnees = BLOC(condition="TYPE_RESU not in ('FICHIER', 'FICHIER_TEMPS', 'TABLE_CONTROL')", - regles=(ENSEMBLE('GROUP_MA_FLU_STR', 'GROUP_MA_FLU_SOL', 'GROUP_MA_SOL_SOL'), - UN_PARMI('MATR_AMOR', 'AMOR_REDUIT'),), - MACR_ELEM_DYNA = SIMP(statut='f', typ=macr_elem_dyna, - fr="Macro élément produit en amont"), - BASE_MODALE = SIMP(statut='o', typ=mode_meca, - fr="Base de modes"), - MATR_RIGI = SIMP(statut='o', typ=(matr_asse_depl_r, matr_asse_depl_c),), - MATR_MASS = SIMP(statut='o', typ=matr_asse_depl_r ), - MATR_AMOR = SIMP(statut='f', typ=matr_asse_depl_r ), - AMOR_REDUIT = SIMP(statut='f', typ='R', max='**'), - GROUP_MA_INTERF = SIMP(statut='o', typ=grma, max='**', - fr="Groupe de mailles de l'interface"), - GROUP_MA_FLU_STR = SIMP(statut='f', typ=grma, max='**', - fr="Groupe de mailles fluide-structure"), - GROUP_MA_FLU_SOL = SIMP(statut='f', typ=grma, max='**', - fr="Groupe de mailles fluide-sol"), - GROUP_MA_SOL_SOL = SIMP(statut='f', typ=grma, max='**', - fr="Groupe de mailles sol-sol"), - UNITE_IMPR_ASTER = SIMP(statut='f', typ='I', - fr="Unité des résultats transmis par Code_Aster à Miss"), - UNITE_RESU_IMPE = SIMP(statut='f', typ='I', - fr="Unité logique des impédances à relire."), - UNITE_RESU_FORC = SIMP(statut='f', typ='I', - fr="Unité logique des forces sismiques à relire"), - ), - # Paramètres du calcul Miss - PARAMETRE = FACT(statut='o', - regles=(PRESENT_PRESENT('OFFSET_MAX', 'OFFSET_NB'), - PRESENT_PRESENT('FREQ_MIN', 'FREQ_MAX','FREQ_PAS'), - UN_PARMI('FREQ_MIN', 'LIST_FREQ', 'FREQ_IMAG'), - PRESENT_PRESENT('SPEC_MAX', 'SPEC_NB'),), - FREQ_MIN = SIMP(statut='f', typ='R'), - FREQ_MAX = SIMP(statut='f', typ='R'), - FREQ_PAS = SIMP(statut='f', typ='R'), - LIST_FREQ = SIMP(statut='f', typ='R', max='**'), - FREQ_IMAG = SIMP(statut='f', typ='R'), - Z0 = SIMP(statut='f', typ='R', defaut=0.), - SURF = SIMP(statut='f', typ='TXM', into=("OUI","NON",), defaut="NON"), - ISSF = SIMP(statut='f', typ='TXM', into=("OUI","NON",), defaut="NON"), - ALLU = SIMP(statut='f', typ='R', defaut=0.), - RFIC = SIMP(statut='f', typ='R', defaut=0.), - - ALGO = SIMP(statut='f', typ='TXM', into=("DEPL","REGU")), - DREF = SIMP(statut='f', typ='R'), - SPEC_MAX = SIMP(statut='f', typ='R'), - SPEC_NB = SIMP(statut='f', typ='I'), - OFFSET_MAX = SIMP(statut='f', typ='R'), - OFFSET_NB = SIMP(statut='f', typ='I'), - TYPE = SIMP(statut='f', typ='TXM', into=("BINAIRE","ASCII",), defaut="ASCII"), - ), - # Post-traitement type 1 - tran_gene - b_post_tran_gene = BLOC(condition="TYPE_RESU == 'TRAN_GENE'", - regles=(AU_MOINS_UN('ACCE_X', 'ACCE_Y', 'ACCE_Z','DEPL_X', 'DEPL_Y', 'DEPL_Z',), - PRESENT_ABSENT('ACCE_X','DEPL_X', 'DEPL_Y', 'DEPL_Z',), - PRESENT_ABSENT('ACCE_Y','DEPL_X', 'DEPL_Y', 'DEPL_Z',), - PRESENT_ABSENT('ACCE_Z','DEPL_X', 'DEPL_Y', 'DEPL_Z',), - ), - MODELE = SIMP(statut='o', typ=(modele_sdaster),), - GROUP_NO = SIMP(statut='f', typ=grno, max='**',), - ACCE_X = SIMP(statut='f', typ=fonction_sdaster,), - ACCE_Y = SIMP(statut='f', typ=fonction_sdaster,), - ACCE_Z = SIMP(statut='f', typ=fonction_sdaster,), - DEPL_X = SIMP(statut='f', typ=fonction_sdaster,), - DEPL_Y = SIMP(statut='f', typ=fonction_sdaster,), - DEPL_Z = SIMP(statut='f', typ=fonction_sdaster,), - INST_FIN = SIMP(statut='o', typ='R', fr="Instant final du calcul"), - PAS_INST = SIMP(statut='o', typ='R', fr="Pas de temps du calcul"), - ), - # Post-traitement type 1 - harm_gene - b_post_harm_gene = BLOC(condition="TYPE_RESU == 'HARM_GENE'", - regles=(#AU_MOINS_UN('EXCIT_HARMO', 'ACCE_X', 'ACCE_Y', 'ACCE_Z',), - AU_MOINS_UN('EXCIT_HARMO', 'ACCE_X', 'ACCE_Y', 'ACCE_Z','DEPL_X','DEPL_Y','DEPL_Z'), - PRESENT_ABSENT('EXCIT_HARMO', 'ACCE_X', 'ACCE_Y', 'ACCE_Z', 'INST_FIN'), - PRESENT_ABSENT('EXCIT_HARMO', 'DEPL_X', 'DEPL_Y', 'DEPL_Z'), - PRESENT_ABSENT('ACCE_X','DEPL_X', 'DEPL_Y', 'DEPL_Z',), - PRESENT_ABSENT('ACCE_Y','DEPL_X', 'DEPL_Y', 'DEPL_Z',), - PRESENT_ABSENT('ACCE_Z','DEPL_X', 'DEPL_Y', 'DEPL_Z',), - ENSEMBLE('INST_FIN', 'PAS_INST'),), - MODELE = SIMP(statut='o', typ=(modele_sdaster),), - GROUP_NO = SIMP(statut='f', typ=grno, max='**',), - ACCE_X = SIMP(statut='f', typ=fonction_sdaster,), - ACCE_Y = SIMP(statut='f', typ=fonction_sdaster,), - ACCE_Z = SIMP(statut='f', typ=fonction_sdaster,), - DEPL_X = SIMP(statut='f', typ=fonction_sdaster,), - DEPL_Y = SIMP(statut='f', typ=fonction_sdaster,), - DEPL_Z = SIMP(statut='f', typ=fonction_sdaster,), - INST_FIN = SIMP(statut='f', typ='R', fr="Instant final du calcul"), - PAS_INST = SIMP(statut='f', typ='R', fr="Pas de temps du calcul"), - # identique à EXCIT de DYNA_LINE_HARM au type attendu pour VECT_ASSE près - EXCIT_HARMO = FACT(statut='f', max='**', - regles=(UN_PARMI('VECT_ASSE', 'CHARGE'), - UN_PARMI('FONC_MULT', 'FONC_MULT_C', 'COEF_MULT', 'COEF_MULT_C'),), - VECT_ASSE = SIMP(statut='f', typ=cham_no_sdaster,), - CHARGE = SIMP(statut='f', typ=char_meca), - FONC_MULT_C = SIMP(statut='f', typ=(fonction_c, formule_c),), - COEF_MULT_C = SIMP(statut='f', typ='C'), - FONC_MULT = SIMP(statut='f', typ=(fonction_sdaster, nappe_sdaster, formule) ), - COEF_MULT = SIMP(statut='f', typ='R'), - PHAS_DEG = SIMP(statut='f', typ='R', defaut=0.), - PUIS_PULS = SIMP(statut='f', typ='I', defaut=0), - ), - ), - # Post-traitement type 2 - b_post_table = BLOC(condition="TYPE_RESU == 'TABLE'", - regles=(AU_MOINS_UN('ACCE_X', 'ACCE_Y', 'ACCE_Z'),), - MODELE = SIMP(statut='o', typ=(modele_sdaster),), - GROUP_NO = SIMP(statut='o', typ=grno, max='**', - fr="Liste des groupes de noeud de post-traitement"), - ACCE_X = SIMP(statut='f', typ=fonction_sdaster,), - ACCE_Y = SIMP(statut='f', typ=fonction_sdaster,), - ACCE_Z = SIMP(statut='f', typ=fonction_sdaster,), - INST_FIN = SIMP(statut='o', typ='R', fr="Instant final du calcul"), - PAS_INST = SIMP(statut='o', typ='R', fr="Pas de temps du calcul"), - NORME = SIMP(statut='o', typ='R', - fr="Valeur de la norme du spectre d'oscillateur" ), - AMOR_SPEC_OSCI = SIMP(statut='o', typ='R', max='**', - fr="Amortissement du spectre d'oscillateur"), - LIST_FREQ_SPEC_OSCI = SIMP(statut='f', typ=listr8_sdaster, - fr="Fréquences utilisées pour le calcul du spectre d'oscillateur"), - ), - - # Post-traitement type 3 - points de controle - b_post_control = BLOC(condition="TYPE_RESU == 'TABLE_CONTROL'", - regles=(PRESENT_PRESENT('ACCE_X', 'INST_FIN'), - PRESENT_PRESENT('ACCE_Y', 'INST_FIN'), - PRESENT_PRESENT('ACCE_Z', 'INST_FIN'), - ENSEMBLE('INST_FIN', 'PAS_INST', 'NORME', 'AMOR_SPEC_OSCI'),), - GROUP_MA_CONTROL = SIMP(statut='f', typ=grma, max='**', - fr="Groupe de mailles des points de contrôle"), - ACCE_X = SIMP(statut='f', typ=fonction_sdaster,), - ACCE_Y = SIMP(statut='f', typ=fonction_sdaster,), - ACCE_Z = SIMP(statut='f', typ=fonction_sdaster,), - INST_FIN = SIMP(statut='f', typ='R', fr="Instant final du calcul"), - PAS_INST = SIMP(statut='f', typ='R', fr="Pas de temps du calcul"), - NORME = SIMP(statut='f', typ='R', - fr="Valeur de la norme du spectre d'oscillateur" ), - AMOR_SPEC_OSCI = SIMP(statut='f', typ='R', max='**', - fr="Amortissement du spectre d'oscillateur"), - LIST_FREQ_SPEC_OSCI = SIMP(statut='f', typ=listr8_sdaster, - fr="Fréquences utilisées pour le calcul du spectre d'oscillateur"), - ), - - INFO = SIMP(statut='f', typ='I', defaut=1, into=(1,2)), -) - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2012 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: nicolas.brie at edf.fr - - -def calc_modal_prod(self,AMORTISSEMENT,**args): - if AMORTISSEMENT=="NON": return mode_meca - if AMORTISSEMENT=="OUI": return mode_meca_c - raise AsException("type de concept resultat non prevu") - - -CALC_MODAL=MACRO(nom="CALC_MODAL", - op=OPS('Macro.calc_modal_ops.calc_modal_ops'), - UIinfo={"groupes":("Résolution","Dynamique",)}, - sd_prod=calc_modal_prod, - fr="Calcul des modes propres reels ou complexes dans une seule commande", - MODELE =SIMP(statut='o',typ=modele_sdaster), - AMORTISSEMENT =SIMP(statut='f',typ='TXM',into=("OUI","NON"),defaut="NON" ), - CHAM_MATER =SIMP(statut='o',typ=cham_mater), - INST =SIMP(statut='f',typ='R',defaut=0.), - CARA_ELEM =SIMP(statut='f',typ=cara_elem), - CHARGE =SIMP(statut='f',typ=char_meca,validators=NoRepeat(),max='**'), - METHODE =SIMP(statut='f',typ='TXM',defaut="SORENSEN", - into=("TRI_DIAG","JACOBI","SORENSEN","QZ") ), - b_tri_diag =BLOC(condition = "METHODE == 'TRI_DIAG'", - PREC_ORTHO =SIMP(statut='f',typ='R',defaut= 1.E-12,val_min=0.E+0 ), - NMAX_ITER_ORTHO =SIMP(statut='f',typ='I',defaut= 5,val_min=0 ), - PREC_LANCZOS =SIMP(statut='f',typ='R',defaut= 1.E-8,val_min=0.E+0 ), - NMAX_ITER_QR =SIMP(statut='f',typ='I',defaut= 30,val_min=0 ), - ), - b_jacobi =BLOC(condition = "METHODE == 'JACOBI'", - PREC_BATHE =SIMP(statut='f',typ='R',defaut= 1.E-10,val_min=0.E+0 ), - NMAX_ITER_BATHE =SIMP(statut='f',typ='I',defaut= 40,val_min=0 ), - PREC_JACOBI =SIMP(statut='f',typ='R',defaut= 1.E-2,val_min=0.E+0 ), - NMAX_ITER_JACOBI=SIMP(statut='f',typ='I',defaut= 12,val_min=0 ), - ), - b_sorensen =BLOC(condition = "METHODE == 'SORENSEN'", - PREC_SOREN =SIMP(statut='f',typ='R',defaut= 0.E+0,val_min=0.E+0 ), - NMAX_ITER_SOREN =SIMP(statut='f',typ='I',defaut= 20,val_min=0 ), - PARA_ORTHO_SOREN=SIMP(statut='f',typ='R',defaut= 0.717), - ), - b_qz =BLOC(condition = "METHODE == 'QZ'", - TYPE_QZ =SIMP(statut='f',typ='TXM',defaut="QZ_SIMPLE",into=("QZ_QR","QZ_SIMPLE","QZ_EQUI") ), - ), - MODE_RIGIDE =SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON"), - fr="Calcul des modes de corps rigide, uniquement pour la méthode TRI_DIAG" ), - CALC_FREQ =FACT(statut='d',min=0, - OPTION =SIMP(statut='f',typ='TXM',defaut="PLUS_PETITE",into=("PLUS_PETITE","PLUS_GRANDE","BANDE","CENTRE","TOUT"), - fr="Choix de l option et par conséquent du shift du problème modal" ), - b_plus_petite =BLOC(condition = "OPTION == 'PLUS_PETITE'",fr="Recherche des plus petites fréquences propres", - NMAX_FREQ =SIMP(statut='f',typ='I',defaut=10,val_min=0 ), - ), - b_plus_grande =BLOC(condition = "OPTION == 'PLUS_GRANDE'",fr="Recherche des plus grandes fréquences propres", - NMAX_FREQ =SIMP(statut='f',typ='I',defaut=1,val_min=0 ), - ), - b_centre =BLOC(condition = "OPTION == 'CENTRE'", - fr="Recherche des fréquences propres les plus proches d une valeur donnée", - FREQ =SIMP(statut='o',typ='R', - fr="Fréquence autour de laquelle on cherche les fréquences propres"), - AMOR_REDUIT =SIMP(statut='f',typ='R',), - NMAX_FREQ =SIMP(statut='f',typ='I',defaut= 10,val_min=0 ), - ), - b_bande =BLOC(condition = "(OPTION == 'BANDE')", - fr="Recherche des fréquences propres dans une bande donnée", - FREQ =SIMP(statut='o',typ='R',min=2,validators=NoRepeat(),max=2, - fr="Valeurs des deux fréquences délimitant la bande de recherche"), - ), - APPROCHE =SIMP(statut='f',typ='TXM',defaut="REEL",into=("REEL","IMAG","COMPLEXE"), - fr="Choix du pseudo-produit scalaire pour la résolution du problème quadratique" ), - regles=(EXCLUS('DIM_SOUS_ESPACE','COEF_DIM_ESPACE'),), - DIM_SOUS_ESPACE =SIMP(statut='f',typ='I' ), - COEF_DIM_ESPACE =SIMP(statut='f',typ='I' ), - NMAX_ITER_SHIFT =SIMP(statut='f',typ='I',defaut= 3,val_min=0 ), - PREC_SHIFT =SIMP(statut='f',typ='R',defaut= 5.E-2,val_min=0.E+0 ), - SEUIL_FREQ =SIMP(statut='f',typ='R',defaut= 1.E-2,val_min=0.E+0 ), - STOP_BANDE_VIDE =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON") ), - ), - - VERI_MODE =FACT(statut='d',min=0, - STOP_ERREUR =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON") ), - PREC_SHIFT =SIMP(statut='f',typ='R',defaut= 5.E-3,val_min=0.E+0 ), - SEUIL =SIMP(statut='f',typ='R',defaut= 1.E-6,val_min=0.E+0, - fr="Valeur limite admise pour l ereur a posteriori des modes" ), - STURM =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON") ), - ), - - TITRE =SIMP(statut='f',typ='TXM',max='**'), - INFO =SIMP(statut='f',typ='I',defaut=1,into=(1,2)), -) ; - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2012 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: mohamed.torkhani at edf.fr - - -CALC_MODE_ROTATION=MACRO(nom="CALC_MODE_ROTATION", - op=OPS('Macro.calc_mode_rotation_ops.calc_mode_rotation_ops'), - sd_prod=table_container, - reentrant='n', - fr="calculer les fréquences et modes d'un système en fonction des " \ - "vitesses de rotation", - UIinfo={"groupes":("Résolution","Dynamique",)}, - - MATR_RIGI =SIMP(statut='o',typ=matr_asse_depl_r ), - MATR_MASS =SIMP(statut='o',typ=matr_asse_depl_r ), - MATR_AMOR =SIMP(statut='f',typ=matr_asse_depl_r ), - MATR_GYRO =SIMP(statut='f',typ=matr_asse_depl_r ), - VITE_ROTA =SIMP(statut='f',typ='R',max='**'), - - METHODE =SIMP(statut='f',typ='TXM',defaut="QZ", - into=("QZ","SORENSEN",) ), - - CALC_FREQ =FACT(statut='d',min=0, - OPTION =SIMP(statut='f',typ='TXM',defaut="PLUS_PETITE",into=("PLUS_PETITE","CENTRE",), - fr="Choix de l option et par conséquent du shift du problème modal" ), - b_plus_petite =BLOC(condition = "OPTION == 'PLUS_PETITE'",fr="Recherche des plus petites valeurs propres", - NMAX_FREQ =SIMP(statut='f',typ='I',defaut= 10,val_min=0 ), - ), - b_centre =BLOC(condition = "OPTION == 'CENTRE'", - fr="Recherche des valeurs propres les plus proches d une valeur donnée", - FREQ =SIMP(statut='o',typ='R', - fr="Fréquence autour de laquelle on cherche les fréquences propres"), - AMOR_REDUIT =SIMP(statut='f',typ='R',), - NMAX_FREQ =SIMP(statut='f',typ='I',defaut= 10,val_min=0 ), - ), - ), - - VERI_MODE =FACT(statut='d',min=0, - STOP_ERREUR =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON") ), - SEUIL =SIMP(statut='f',typ='R',defaut= 1.E-6 ), - PREC_SHIFT =SIMP(statut='f',typ='R',defaut= 5.E-3 ), - STURM =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON") ),), -); - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2012 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: jean-michel.proix at edf.fr -CALC_POINT_MAT=OPER(nom="CALC_POINT_MAT",op=33,sd_prod=table_sdaster,reentrant='f', - UIinfo={"groupes":("Résolution",)}, - fr="Intégrer une loi de comportement", - MATER =SIMP(statut='o',typ=mater_sdaster,max=1), - COMPORTEMENT =C_COMPORTEMENT('CALC_POINT_MAT'), - INCREMENT =C_INCREMENT('MECANIQUE'), - NEWTON =C_NEWTON(), - CONVERGENCE =C_CONVERGENCE(), - - # --MASSIF : orientation du materiau (monocristal, orthotropie) - MASSIF =FACT(statut='f',max='**', - regles=(UN_PARMI('ANGL_REP','ANGL_EULER'),), - ANGL_REP =SIMP(statut='f',typ='R',min=1,max=3), - ANGL_EULER =SIMP(statut='f',typ='R',min=1,max=3), - ), - ## ANGLE : rotation de ANGLE autour de Z uniquement, et seulement pour les déformations imposées. - ANGLE =SIMP(statut='f',typ='R',max=1, defaut=0.), - INFO =SIMP(statut='f',typ='I',defaut= 1,into=( 1 , 2)), - - regles=( - EXCLUS('SIXX','EPXX',), - EXCLUS('SIYY','EPYY',), - EXCLUS('SIZZ','EPZZ',), - EXCLUS('SIXY','EPXY',), - EXCLUS('SIXZ','EPXZ',), - EXCLUS('SIYZ','EPYZ',), - - ENSEMBLE('F11','F12','F13','F21','F22','F23','F31','F32','F33',),), - - SIXX = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - SIYY = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - SIZZ = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - SIXY = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - SIXZ = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - SIYZ = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - - EPXX = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - EPYY = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - EPZZ = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - EPXY = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - EPXZ = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - EPYZ = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - - F11 = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - F12 = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - F13 = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - F21 = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - F22 = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - F23 = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - F31 = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - F32 = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - F33 = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - - MATR_C1=FACT(statut='f',max='**', - VALE =SIMP(statut='o',typ='R',max=1, ), - NUME_LIGNE =SIMP(statut='o',typ='I',max=1,val_min=1,val_max=6 ), - NUME_COLONNE =SIMP(statut='o',typ='I',max=1,val_min=1,val_max=12 ), - ), - MATR_C2=FACT(statut='f',max='**', - VALE =SIMP(statut='o',typ='R',max=1, ), - NUME_LIGNE =SIMP(statut='o',typ='I',max=1,val_min=1,val_max=6 ), - NUME_COLONNE =SIMP(statut='o',typ='I',max=1,val_min=1,val_max=12 ), - ), - VECT_IMPO=FACT(statut='f',max=6, - VALE =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule),max=1, ), - NUME_LIGNE =SIMP(statut='o',typ='I',max=1,val_min=1,val_max=6 ), - ), - SIGM_INIT=FACT(statut='f', - SIXX = SIMP(statut='f',typ='R',max=1,defaut=0.0E+0), - SIYY = SIMP(statut='f',typ='R',max=1,defaut=0.0E+0), - SIZZ = SIMP(statut='f',typ='R',max=1,defaut=0.0E+0), - SIXY = SIMP(statut='f',typ='R',max=1,defaut=0.0E+0), - SIXZ = SIMP(statut='f',typ='R',max=1,defaut=0.0E+0), - SIYZ = SIMP(statut='f',typ='R',max=1,defaut=0.0E+0), - ), - EPSI_INIT=FACT(statut='f', - EPXX = SIMP(statut='o',typ='R',max=1), - EPYY = SIMP(statut='o',typ='R',max=1), - EPZZ = SIMP(statut='o',typ='R',max=1), - EPXY = SIMP(statut='o',typ='R',max=1), - EPXZ = SIMP(statut='o',typ='R',max=1), - EPYZ = SIMP(statut='o',typ='R',max=1), - ), - VARI_INIT=FACT(statut='f', - VALE = SIMP(statut='o',typ='R',max='**'), - ), - FORMAT_TABLE =SIMP(statut='f',typ='TXM',max=1,into=("CMP_COLONNE","CMP_LIGNE",),defaut=("CMP_COLONNE"),), - - NB_VARI_TABLE =SIMP(statut='f',typ='I',max=1,), - - OPER_TANGENT =SIMP(statut='f',typ='TXM',max=1,into=("OUI","NON",),defaut="NON",), - - ARCHIVAGE =FACT(statut='f', - LIST_INST =SIMP(statut='f',typ=(listr8_sdaster) ), - INST =SIMP(statut='f',typ='R',validators=NoRepeat(),max='**' ), - PAS_ARCH =SIMP(statut='f',typ='I' ), - PRECISION =SIMP(statut='f',typ='R',defaut= 1.0E-6), - ), - - - # on permet certaines variables de commandes scalaires, définies par une fonction du temps - # un mot clé caché qui ne sert qu'à boucler sur les VARC possibles : - LIST_NOM_VARC =SIMP(statut='c',typ='TXM', defaut=("TEMP","CORR","IRRA","HYDR","SECH","EPSA", - "M_ACIER","M_ZIRC","NEUT1","NEUT2")), - - AFFE_VARC = FACT(statut='f',max='**', - NOM_VARC =SIMP(statut='o',typ='TXM', into=("TEMP","CORR","IRRA","HYDR","SECH","M_ACIER","M_ZIRC", - "EPSA","NEUT1","NEUT2")), - VALE_FONC = SIMP(statut='o',typ=(fonction_sdaster,formule) ), - - # VALE_REF est nécessaire pour certaines VARC : - B_VALE_REF =BLOC(condition="NOM_VARC in ('TEMP', 'SECH')", - VALE_REF =SIMP(statut='o',typ='R'), - ), - ), - - - - ); - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2012 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: sylvie.michel-ponnelle at edf.fr - - -CALC_PRECONT=MACRO(nom="CALC_PRECONT", - op=OPS('Macro.calc_precont_ops.calc_precont_ops'), - sd_prod=evol_noli, - fr="Imposer la tension définie par le BPEL dans les cables", - reentrant='f',UIinfo={"groupes":("Modélisation",)}, - reuse =SIMP(statut='f',typ='evol_noli'), - MODELE =SIMP(statut='o',typ=modele_sdaster), - CHAM_MATER =SIMP(statut='o',typ=cham_mater), - CARA_ELEM =SIMP(statut='o',typ=cara_elem), - CABLE_BP =SIMP(statut='o',typ=cabl_precont,validators=NoRepeat(),max='**'), - CABLE_BP_INACTIF =SIMP(statut='f',typ=cabl_precont,validators=NoRepeat(),max='**'), - INCREMENT =C_INCREMENT('MECANIQUE'), - RECH_LINEAIRE =C_RECH_LINEAIRE(), - CONVERGENCE =C_CONVERGENCE(), - ETAT_INIT =FACT(statut='f', - regles=(AU_MOINS_UN('EVOL_NOLI','DEPL','SIGM','VARI',), - EXCLUS('EVOL_NOLI','DEPL',), - EXCLUS('EVOL_NOLI','SIGM',), - EXCLUS('EVOL_NOLI','VARI',), - EXCLUS('NUME_ORDRE','INST'), ), - DEPL =SIMP(statut='f',typ=cham_no_sdaster), - SIGM =SIMP(statut='f',typ=(carte_sdaster,cham_elem)), - VARI =SIMP(statut='f',typ=cham_elem), - EVOL_NOLI =SIMP(statut='f',typ=evol_noli), - NUME_ORDRE =SIMP(statut='f',typ='I'), - INST =SIMP(statut='f',typ='R'), - CRITERE =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU") ), - b_prec_rela=BLOC(condition="(CRITERE=='RELATIF')", - PRECISION =SIMP(statut='f',typ='R',defaut= 1.E-6,),), - b_prec_abso=BLOC(condition="(CRITERE=='ABSOLU')", - PRECISION =SIMP(statut='o',typ='R',),), - NUME_DIDI =SIMP(statut='f',typ='I'), - INST_ETAT_INIT =SIMP(statut='f',typ='R'), - ), - METHODE = SIMP(statut='d',typ='TXM',defaut="NEWTON",into=("NEWTON","IMPLEX")), - b_meth_newton = BLOC(condition = "METHODE == 'NEWTON'", - NEWTON = C_NEWTON(), - ), - ENERGIE =FACT(statut='f',max=1, - CALCUL =SIMP(statut='f',typ='TXM',into=("OUI",),defaut="OUI",), - ), -#------------------------------------------------------------------- -# Catalogue commun SOLVEUR - SOLVEUR =C_SOLVEUR('CALC_PRECONT'), -#------------------------------------------------------------------- - INFO =SIMP(statut='f',typ='I',into=(1,2) ), - TITRE =SIMP(statut='f',typ='TXM',max='**' ), - - EXCIT =FACT(statut='o',max='**', - CHARGE =SIMP(statut='o',typ=char_meca), - ), - - COMPORTEMENT =C_COMPORTEMENT(), - ) ; - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2012 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== - -# person_in_charge: mathieu.corus at edf.fr - - -CALC_SPEC=MACRO(nom="CALC_SPEC", - op=OPS('Macro.calc_spec_ops.calc_spec_ops'), - sd_prod=interspectre, - reentrant='n', - fr="Calcule une matrice interspectrale ou des fonctions de transferts", - UIinfo={"groupes":("Fonctions",)}, - TAB_ECHANT =FACT(statut='f', - NOM_TAB =SIMP(statut='o',typ=table_sdaster), - LONGUEUR_DUREE =SIMP(statut='f',typ='R'), - LONGUEUR_POURCENT =SIMP(statut='f',typ='R'), - LONGUEUR_NB_PTS =SIMP(statut='f',typ='I'), - RECOUVREMENT_DUREE =SIMP(statut='f',typ='R'), - RECOUVREMENT_POURCENT =SIMP(statut='f',typ='R'), - RECOUVREMENT_NB_PTS =SIMP(statut='f',typ='I'), - ), - ECHANT =FACT(statut='f',max='**', - NUME_ORDRE_I =SIMP(statut='o',typ='I' ), - NUME_MES =SIMP(statut='o',typ='I' ), - FONCTION =SIMP(statut='o',typ=fonction_sdaster), - ), -#-- Cas de la matrice interspectrale --# - INTERSPE =FACT(statut='f', - FENETRE =SIMP(statut='f',typ='TXM',defaut="RECT",into=("RECT","HAMM","HANN","EXPO","PART",)), - BLOC_DEFI_FENE =BLOC(condition = "FENETRE == 'EXPO' or FENETRE == 'PART' ", - DEFI_FENE =SIMP(statut='f',typ='R',max='**'), - ), - ), -#-- Cas des transferts - estimateurs H1 / H2 / Hv + Coherence --# - TRANSFERT =FACT(statut='f', - ESTIM =SIMP(statut='f',typ='TXM',defaut="H1",into=("H1","H2","CO",)), - REFER =SIMP(statut='o',typ='I',max='**'), - FENETRE =SIMP(statut='f',typ='TXM',defaut="RECT",into=("RECT","HAMM","HANN","EXPO","PART",)), -# DEFI_FENE =SIMP(statut='f',typ='R',max='**'), - BLOC_DEFI_FENE =BLOC(condition = "FENETRE == 'EXPO' or FENETRE == 'PART' ", - DEFI_FENE =SIMP(statut='f',typ='R',max='**'), - ), - ), - TITRE =SIMP(statut='f',typ='TXM',max='**'), - INFO =SIMP(statut='f',typ='I',defaut= 1,into=( 1 , 2) ), -); - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2013 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -CALC_STABILITE=MACRO(nom="CALC_STABILITE",sd_prod=table_container, - op=OPS('Macro.calc_stabilite_ops.calc_stabilite_ops'), - fr="post-traitement modes non-linéaires : filtre resultats et calcul de stabilité", - reentrant='f', - UIinfo={"groupes":("Résolution","Dynamique",)}, - - reuse =SIMP(statut='f',typ='table_container'), - - MODE_NON_LINE = SIMP(statut='o',typ=table_container,max=1), - SCHEMA_TEMPS = FACT(statut='d',max=1, - SCHEMA = SIMP(statut='f',typ='TXM',into=('NEWMARK',),defaut='NEWMARK'), - b_newmark= BLOC(condition="SCHEMA=='NEWMARK'", - NB_INST = SIMP(statut='f',typ='I',defaut= 1000 ), - ), - ), - TOLERANCE = SIMP(statut='f',typ='R',defaut= 1.E-2 ), - - FILTRE = FACT(statut='f',max=1,regles=(UN_PARMI('NUME_ORDRE','FREQ_MIN',),), - NUME_ORDRE = SIMP(statut='f',typ='I',validators=NoRepeat(),max='**'), - FREQ_MIN = SIMP(statut='f',typ='R' ), - b_freq_min = BLOC(condition = "FREQ_MIN != None", - FREQ_MAX = SIMP(statut='o',typ='R' ), - PRECISION = SIMP(statut='f',typ='R',defaut= 1.E-3 ), - ), - ), - - INFO = SIMP(statut='f',typ='I',defaut= 1,into=(1,2) ), - -) ; - - - - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2012 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: mathieu.courtois at edf.fr -def calc_table_prod(self, TABLE, ACTION, **kargs): - """Typage du concept produit. - """ - l_typ = [AsType(TABLE),] - for mcf in ACTION: - dmc = mcf.creeDictValeurs(mcf.mc_liste) - if dmc.get('TABLE') != None: - l_typ.append(AsType(dmc['TABLE'])) - # une table_fonction étant une table - if table_fonction in l_typ: - return table_fonction - elif table_container in l_typ: - return table_container - else: - return table_sdaster - -CALC_TABLE=MACRO(nom="CALC_TABLE", - op=OPS('Macro.calc_table_ops.calc_table_ops'), - sd_prod=calc_table_prod, - fr="Opérations sur une table", - UIinfo={"groupes":("Tables",)}, - reentrant='f', - TABLE = SIMP(statut='o',typ=table_sdaster), - ACTION = FACT(statut='o', max='**', - fr = "Suite des opérations à effectuer sur la table", - OPERATION = SIMP(statut='o', typ='TXM', - into=('FILTRE', 'EXTR', 'RENOMME', 'TRI', 'COMB', 'AJOUT_LIGNE', - 'OPER', 'SUPPRIME', 'AJOUT_COLONNE')), - - b_filtre = BLOC(condition="OPERATION == 'FILTRE'", - fr="Sélectionne les lignes de la table vérifiant un critère", - NOM_PARA = SIMP(statut='o',typ='TXM'), - CRIT_COMP = SIMP(statut='f',typ='TXM',defaut="EQ", - into=('EQ','NE','GT','LT','GE','LE','REGEXP', - 'VIDE','NON_VIDE','MAXI','MAXI_ABS','MINI','MINI_ABS'),), - b_vale = BLOC(condition = "(CRIT_COMP in ('EQ','NE','GT','LT','GE','LE'))", - regles=(UN_PARMI('VALE','VALE_I','VALE_K','VALE_C',),), - VALE = SIMP(statut='f',typ='R',max='**'), - VALE_I = SIMP(statut='f',typ='I',max='**'), - VALE_C = SIMP(statut='f',typ='C',max='**'), - VALE_K = SIMP(statut='f',typ='TXM',max='**'), - ), - b_regexp = BLOC(condition = "CRIT_COMP == 'REGEXP'", - VALE_K = SIMP(statut='o',typ='TXM',), - ), - b_crit = BLOC(condition = "CRIT_COMP in ('EQ','NE')", - CRITERE = SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU") ), - PRECISION = SIMP(statut='f',typ='R',defaut= 1.0E-3 ), - ), - ), - - b_extr = BLOC(condition="OPERATION == 'EXTR'", - fr="Extrait une ou plusieurs colonnes de la table", - NOM_PARA = SIMP(statut='o',typ='TXM',validators=NoRepeat(),max='**', - fr="Noms des colonnes à extraire"), - ), - - b_suppr = BLOC(condition="OPERATION == 'SUPPRIME'", - fr="Supprime une ou plusieurs colonnes de la table", - NOM_PARA = SIMP(statut='o',typ='TXM',validators=NoRepeat(),max='**', - fr="Noms des colonnes à supprimer"), - ), - - b_renomme = BLOC(condition="OPERATION == 'RENOMME'", - fr="Renomme un ou plusieurs paramètres de la table", - NOM_PARA = SIMP(statut='o', typ='TXM', validators=NoRepeat(), min=2, max=2, - fr="Couple (ancien nom du paramètre, nouveau nom du paramètre)",), - ), - - b_tri = BLOC(condition="OPERATION == 'TRI'", - fr="Ordonne les lignes de la table selon les valeurs d'un ou plusieurs paramètres", - NOM_PARA = SIMP(statut='o',typ='TXM',validators=NoRepeat(),max='**'), - ORDRE = SIMP(statut='f',typ='TXM',defaut="CROISSANT", - into=("CROISSANT","DECROISSANT") ), - ), - - b_comb = BLOC(condition="OPERATION == 'COMB'", - fr="Combine deux tables ayant éventuellement des paramètres communs", - TABLE = SIMP(statut='o',typ=table_sdaster, - fr="Table dont les colonnes vont venir surcharger la table initiale"), - NOM_PARA = SIMP(statut='f',typ='TXM',max='**', - fr="Noms des paramètres dont les valeurs doivent etre identiques dans les deux tables "\ - "pour que les colonnes soient combinées"), - RESTREINT = SIMP(statut='f', typ='TXM', into=('OUI', 'NON'), defaut='NON', - fr="Restreint la fusion uniquement aux lignes où les NOM_PARA sont communs"), - FORMAT_R =SIMP(statut='f',typ='TXM'), - ), - - b_ajout_lig = BLOC(condition="OPERATION == 'AJOUT_LIGNE'", - fr="Ajoute une ligne à la table initiale", - NOM_PARA = SIMP(statut='o',typ='TXM',max='**', - fr="Noms des paramètres dont les valeurs sont fournies sous VALE"), - VALE = SIMP(statut='o',typ=not_checked,max='**', fr='Valeurs des paramètres'), - ), - - b_ajout_col = BLOC(condition="OPERATION == 'AJOUT_COLONNE'", - fr="Ajoute une colonne constante à la table initiale", - NOM_PARA = SIMP(statut='o',typ='TXM',max='**', - fr="Noms des paramètres des colonnes à ajouter"), - VALE = SIMP(statut='o', typ=not_checked, max='**', - fr="Valeur constante pour chaque colonne"), - ), - - b_oper = BLOC(condition="OPERATION == 'OPER'", - fr="Applique une formule dans laquelle les variables sont les paramètres de la table", - FORMULE = SIMP(statut='o',typ=formule, - fr="Formule à appliquer aux colonnes de la table"), - NOM_PARA = SIMP(statut='o',typ='TXM', - fr="Nom de la nouvelle colonne"), - NOM_COLONNE = SIMP(statut='f',typ='TXM', max='**', - fr="Nom des colonnes à utiliser en tant que paramètres de la formule"), - ), - ), - - TITRE = SIMP(statut='f',typ='TXM',max='**', - fr="Titre de la table produite"), - INFO = SIMP(statut='f',typ='I',defaut=1,into=(1,2) ), -) - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2013 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: samuel.geniaut at edf.fr - -CALC_THETA=OPER(nom="CALC_THETA",op=54,sd_prod=theta_geom,reentrant='n', - UIinfo={"groupes":("Post-traitements","Rupture",)}, - fr="Définir un champ theta pour le calcul du taux de restitution d'énergie" - +" ou des facteurs d'intensité de contraintes", - regles=(UN_PARMI('THETA_2D','THETA_3D'), - PRESENT_ABSENT('THETA_2D','DIRE_THETA'), - EXCLUS('DIRECTION','DIRE_THETA'),), - MODELE =SIMP(statut='o',typ=(modele_sdaster) ), - THETA_3D =FACT(statut='f',max='**', - regles=(UN_PARMI('TOUT','GROUP_NO','NOEUD'), - UN_PARMI('MODULE','MODULE_FO'), - ENSEMBLE('MODULE_FO','R_INF_FO','R_SUP_FO'),), - TOUT =SIMP(statut='f',typ='TXM',into=("OUI",) ), - GROUP_NO =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'), - NOEUD =SIMP(statut='f',typ=no ,validators=NoRepeat(),max='**'), - MODULE =SIMP(statut='f',typ='R'), - R_INF =SIMP(statut='f',typ='R'), - R_SUP =SIMP(statut='f',typ='R'), - MODULE_FO =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - R_INF_FO =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - R_SUP_FO =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - ), - b_theta_3d =BLOC(condition="THETA_3D != None", - FOND_FISS =SIMP(statut='o',typ=fond_fiss),), - DIRE_THETA =SIMP(statut='f',typ=cham_no_sdaster ), - DIRECTION =SIMP(statut='f',typ='R',max='**'), - THETA_2D =FACT(statut='f',max='**', - regles=(UN_PARMI('GROUP_NO','NOEUD'),), - GROUP_NO =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'), - NOEUD =SIMP(statut='f',typ=no ,validators=NoRepeat(),max='**'), - MODULE =SIMP(statut='o',typ='R'), - R_INF =SIMP(statut='o',typ='R'), - R_SUP =SIMP(statut='o',typ='R'), - ), - IMPRESSION =FACT(statut='f', - UNITE =SIMP(statut='f',typ='I',defaut=8), - FORMAT =SIMP(statut='f',typ='TXM',defaut="EXCEL",into=("EXCEL","AGRAF") ), - ), -) ; - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: jacques.pellet at edf.fr -def calc_vect_elem_prod(OPTION,**args): - if OPTION == "CHAR_MECA" : return vect_elem_depl_r - if OPTION == "CHAR_THER" : return vect_elem_temp_r - if OPTION == "CHAR_ACOU" : return vect_elem_pres_c - raise AsException("type de concept resultat non prevu") - -CALC_VECT_ELEM=OPER(nom="CALC_VECT_ELEM",op=8,sd_prod=calc_vect_elem_prod,reentrant='n', - UIinfo={"groupes":("Matrices et vecteurs",)}, - fr="Calcul des seconds membres élémentaires", - OPTION =SIMP(statut='o',typ='TXM',into=("CHAR_MECA","CHAR_THER","CHAR_ACOU") ), - b_char_meca =BLOC(condition = "OPTION=='CHAR_MECA'", - regles=(AU_MOINS_UN('CHARGE','MODELE'),), - CHARGE =SIMP(statut='f',typ=char_meca,validators=NoRepeat(),max='**'), - MODELE =SIMP(statut='f',typ=modele_sdaster), - b_charge =BLOC(condition = "CHARGE != None", fr="modèle ne contenant pas de sous-structure", - CHAM_MATER =SIMP(statut='f',typ=cham_mater), - CARA_ELEM =SIMP(statut='f',typ=cara_elem), - INST =SIMP(statut='f',typ='R',defaut= 0.E+0 ), - MODE_FOURIER =SIMP(statut='f',typ='I',defaut= 0 ), - ), - b_modele =BLOC(condition = "(MODELE != None)",fr="modèle contenant une sous-structure", - SOUS_STRUC =FACT(statut='o',min=01, - regles=(UN_PARMI('TOUT','SUPER_MAILLE'),), - CAS_CHARGE =SIMP(statut='o',typ='TXM' ), - TOUT =SIMP(statut='f',typ='TXM',into=("OUI",) ), - SUPER_MAILLE=SIMP(statut='f',typ=ma,validators=NoRepeat(),max='**',), - ), - ), - ), - b_char_ther =BLOC(condition = "OPTION=='CHAR_THER'", - CARA_ELEM =SIMP(statut='f',typ=cara_elem), - CHARGE =SIMP(statut='o',typ=char_ther,validators=NoRepeat(),max='**'), - INST =SIMP(statut='f',typ='R',defaut= 0.E+0 ), - ), - - b_char_acou =BLOC(condition = "OPTION=='CHAR_ACOU'", - CHAM_MATER =SIMP(statut='o',typ=cham_mater), - CHARGE =SIMP(statut='o',typ=char_acou,validators=NoRepeat(),max='**'), - ), -) ; - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2007 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: mickael.abbas at edf.fr - -CALCUL=OPER(nom="CALCUL",op=26,sd_prod=table_container,reentrant='f', - UIinfo={"groupes":("Résolution",)}, - fr="Calculer des objets élémentaires comme une matrice tangente, intégrer une loi de comportement, etc...", - OPTION =SIMP(statut='o',typ='TXM',validators=NoRepeat(),max='**',defaut="COMPORTEMENT", - into=( "COMPORTEMENT","MATR_TANG_ELEM","FORC_INTE_ELEM","FORC_NODA_ELEM"),), - MODELE =SIMP(statut='o',typ=modele_sdaster), - CARA_ELEM =SIMP(statut='f',typ=cara_elem), - CHAM_MATER =SIMP(statut='o',typ=cham_mater), - TABLE =SIMP(statut='f',typ=table_container), - EXCIT =FACT(statut='o',max='**', - CHARGE =SIMP(statut='o',typ=(char_meca,char_cine_meca)), - FONC_MULT =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - TYPE_CHARGE =SIMP(statut='f',typ='TXM',defaut="FIXE_CSTE", - into=("FIXE_CSTE",)), - - ), - DEPL =SIMP(statut='o',typ=cham_no_sdaster ), - INCR_DEPL =SIMP(statut='o',typ=cham_no_sdaster ), - SIGM =SIMP(statut='o',typ=cham_elem), - VARI =SIMP(statut='o',typ=cham_elem), - INCREMENT =FACT(statut='o', - LIST_INST =SIMP(statut='o',typ=listr8_sdaster), - NUME_ORDRE =SIMP(statut='o',typ='I'),), - COMPORTEMENT =C_COMPORTEMENT('CALCUL'), - INFO =SIMP(statut='f',typ='I',defaut= 1,into=( 1 , 2) ), -) ; - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2011 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: sylvie.granet at edf.fr -#from Macro.chainage_thm_ops import chainage_thm_ops - -def chainage_thm_prod(self,TYPE_CHAINAGE,TYPE_RESU = None,**args) : - - if TYPE_CHAINAGE == "MECA_HYDR" : return evol_varc - - if TYPE_CHAINAGE == "HYDR_MECA" : - if TYPE_RESU == "CHAM_NO" : - return cham_no_sdaster - elif TYPE_RESU == "EVOL_VARC" : - return evol_varc - - if TYPE_CHAINAGE == "INIT" : - matr_mh = args['MATR_MH'] - matr_hm1 = args['MATR_HM1'] - matr_hm2 = args['MATR_HM2'] - - self.typeSDProd(matr_mh,corresp_2_mailla) - self.typeSDProd(matr_hm1,corresp_2_mailla) - self.typeSDProd(matr_hm2,corresp_2_mailla) - return None - - raise AsException("type de chainage THM non prevu") - -CHAINAGE_THM=MACRO(nom="CHAINAGE_THM", - op=OPS('Macro.chainage_thm_ops.chainage_thm_ops'), - sd_prod=chainage_thm_prod, - reentrant='n', - UIinfo={"groupes":("Résultats et champs",)}, - docu="Ux.xx.xx", - fr="Calcul des variables de commande pour le chaînage THM", - - TYPE_CHAINAGE = SIMP(statut='o',typ='TXM', - into=("HYDR_MECA","MECA_HYDR","INIT",), - fr="Sens du chaînage ou initialisation des matrices de projection"), - - # Cas HYDR_MECA : - - b_hydr_meca = BLOC(condition = "TYPE_CHAINAGE == 'HYDR_MECA'",fr="Chaînage hydraulique vers mécanique", - - RESU_HYDR = SIMP(statut='o',typ=resultat_sdaster,fr="Résultat hydraulique à chaîner" ), - MODELE_MECA = SIMP(statut='o',typ=modele_sdaster ,fr="Modèle d'arrivée mécanique"), - TYPE_RESU = SIMP(statut='f',typ='TXM',into=("EVOL_VARC","CHAM_NO"),defaut="EVOL_VARC", ), - MATR_HM1 = SIMP(statut='o',typ=corresp_2_mailla,), - MATR_HM2 = SIMP(statut='o',typ=corresp_2_mailla,), - - b_type_resu = BLOC(condition = "TYPE_RESU == 'EVOL_VARC'",fr="Instant obligatoire si TYPE_RESU=EVOL_VARC", - INST = SIMP(statut='o',typ='R',validators=NoRepeat(),min=1,max=1), - - ),), - - # Cas MECA_HYDR : - - b_meca_hydr = BLOC(condition = "TYPE_CHAINAGE == 'MECA_HYDR'",fr="Chaînage mécanique vers hydraulique", - - RESU_MECA = SIMP(statut='o',typ=resultat_sdaster,fr="Résultat mécanique à chaîner" ), - MODELE_HYDR = SIMP(statut='o',typ=modele_sdaster ,fr="Modèle d'arrivée hydraulique"), - - MATR_MH = SIMP(statut='o',typ=corresp_2_mailla,), - INST = SIMP(statut='o',typ='R',validators=NoRepeat(),min=1,max=1), - ), - - # Cas INIT : - - b_init = BLOC(condition = "TYPE_CHAINAGE == 'INIT'",fr="Calcul des matrices de projection", - - MODELE_MECA = SIMP(statut='o',typ=modele_sdaster ,fr="Modèle mécanique"), - MODELE_HYDR = SIMP(statut='o',typ=modele_sdaster ,fr="Modèle hydraulique"), - - MATR_MH = SIMP(statut='o',typ=CO,), - MATR_HM1 = SIMP(statut='o',typ=CO,), - MATR_HM2 = SIMP(statut='o',typ=CO,), - ), - - INFO = SIMP(statut='f',typ='I',defaut=1,into=( 1, 2 ) ), - -) ; - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2013 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: xavier.desroches at edf.fr -COMB_FOURIER=OPER(nom="COMB_FOURIER",op= 161,sd_prod=comb_fourier, - reentrant='n',fr="Recombiner les modes de Fourier d'une SD Résultat dans des directions particulières", - UIinfo={"groupes":("Post-traitements",)}, - RESULTAT =SIMP(statut='o',typ=(fourier_elas,fourier_ther),), - ANGLE =SIMP(statut='o',typ='R',max='**'), - NOM_CHAM =SIMP(statut='o',typ='TXM',validators=NoRepeat(),max=6,into=("DEPL","REAC_NODA", - "SIEF_ELGA","EPSI_ELNO","SIGM_ELNO","TEMP","FLUX_ELNO"),), -) ; - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: nicolas.sellenet at edf.fr -def comb_matr_asse_prod(COMB_R,COMB_C,CALC_AMOR_GENE,**args): - if COMB_C != None: - type_mat = AsType(COMB_C[0]['MATR_ASSE']) - if type_mat in (matr_asse_depl_c,matr_asse_depl_r) : return matr_asse_depl_c - if type_mat in (matr_asse_gene_c,matr_asse_gene_r) : return matr_asse_gene_c - if type_mat in (matr_asse_temp_c,matr_asse_temp_r) : return matr_asse_temp_c - if type_mat in (matr_asse_pres_c,matr_asse_pres_r) : return matr_asse_pres_c - elif COMB_R != None: - type_mat = AsType(COMB_R[0]['MATR_ASSE']) - if type_mat in (matr_asse_depl_c,matr_asse_depl_r) : return matr_asse_depl_r - if type_mat in (matr_asse_temp_c,matr_asse_temp_r) : return matr_asse_temp_r - if type_mat in (matr_asse_pres_c,matr_asse_pres_r) : return matr_asse_pres_r - if type_mat in (matr_asse_gene_c,matr_asse_gene_r) : return matr_asse_gene_r - elif CALC_AMOR_GENE != None: return matr_asse_gene_r - raise AsException("type de concept resultat non prevu") - -COMB_MATR_ASSE=OPER(nom="COMB_MATR_ASSE",op= 31,sd_prod=comb_matr_asse_prod, - fr="Effectuer la combinaison linéaire de matrices assemblées", - reentrant='f', - UIinfo={"groupes":("Matrices et vecteurs",)}, - regles=(UN_PARMI('COMB_R','COMB_C','CALC_AMOR_GENE' ),), - COMB_R =FACT(statut='f',max='**', - PARTIE =SIMP(statut='f',typ='TXM',into=("REEL","IMAG") ), - MATR_ASSE =SIMP(statut='o',typ=(matr_asse_depl_r,matr_asse_depl_c,matr_asse_temp_r,matr_asse_temp_c - ,matr_asse_pres_r,matr_asse_pres_c,matr_asse_gene_r,matr_asse_gene_c ) ), - COEF_R =SIMP(statut='o',typ='R' ), - ), - COMB_C =FACT(statut='f',max='**', - regles=(UN_PARMI('COEF_R','COEF_C' ),), - MATR_ASSE =SIMP(statut='o',typ=(matr_asse_depl_r,matr_asse_depl_c,matr_asse_temp_r,matr_asse_temp_c - ,matr_asse_pres_r,matr_asse_pres_c,matr_asse_gene_r,matr_asse_gene_c ) ), - COEF_R =SIMP(statut='f',typ='R' ), - COEF_C =SIMP(statut='f',typ='C' ), - ), - CALC_AMOR_GENE =FACT(statut='f', - RIGI_GENE = SIMP(statut='o', typ=matr_asse_gene_r), - MASS_GENE = SIMP(statut='o', typ=matr_asse_gene_r), - regles=(UN_PARMI('AMOR_REDUIT','LIST_AMOR' ),), - AMOR_REDUIT = SIMP(statut='f',typ='R',max='**'), - LIST_AMOR = SIMP(statut='f',typ=listr8_sdaster ), - ), - SANS_CMP =SIMP(statut='f',typ='TXM',into=("LAGR",) ), -) ; - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2012 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: sylvie.audebert at edf.fr -COMB_SISM_MODAL=OPER(nom="COMB_SISM_MODAL",op= 109,sd_prod=mode_meca, - fr="Réponse sismique par recombinaison modale par une méthode spectrale", - reentrant='n', - UIinfo={"groupes":("Post-traitements","Dynamique",)}, - regles=(EXCLUS('TOUT_ORDRE','NUME_ORDRE','FREQ','NUME_MODE','LIST_FREQ','LIST_ORDRE'), - UN_PARMI('AMOR_REDUIT','LIST_AMOR','AMOR_GENE' ), - UN_PARMI('MONO_APPUI','MULTI_APPUI' ),), - MODE_MECA =SIMP(statut='o',typ=mode_meca ), - TOUT_ORDRE =SIMP(statut='f',typ='TXM',into=("OUI",) ), - NUME_ORDRE =SIMP(statut='f',typ='I',validators=NoRepeat(),max='**'), - LIST_ORDRE =SIMP(statut='f',typ=listis_sdaster ), - NUME_MODE =SIMP(statut='f',typ='I',validators=NoRepeat(),max='**'), - FREQ =SIMP(statut='f',typ='R',validators=NoRepeat(),max='**'), - LIST_FREQ =SIMP(statut='f',typ=listr8_sdaster ), - b_freq =BLOC(condition = "FREQ != None or LIST_FREQ != None", - PRECISION =SIMP(statut='f',typ='R',defaut= 1.E-3 ), - CRITERE =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU") ), - ), - MODE_CORR =SIMP(statut='f',typ=mode_meca ), - FREQ_COUP = SIMP(statut='f',typ='R',min=1,max=1), - - AMOR_REDUIT =SIMP(statut='f',typ='R',max='**'), - LIST_AMOR =SIMP(statut='f',typ=listr8_sdaster ), - AMOR_GENE =SIMP(statut='f',typ=matr_asse_gene_r ), - - MASS_INER =SIMP(statut='f',typ=table_sdaster ), - CORR_FREQ =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON") ), - - EXCIT =FACT(statut='o',max='**', - regles=(UN_PARMI('AXE','TRI_AXE','TRI_SPEC' ),), - AXE =SIMP(statut='f',typ='R',max=3,fr="Excitation suivant un seul axe",), - TRI_AXE =SIMP(statut='f',typ='R',max=3,fr="Excitation suivant les trois axes mais avec le meme spectre",), - TRI_SPEC =SIMP(statut='f',typ='TXM',into=("OUI",), - fr="Excitation suivant les trois axes avec trois spectres"), - b_axe =BLOC(condition = "AXE != None",fr="Excitation suivant un seul axe", - SPEC_OSCI =SIMP(statut='o',typ=(nappe_sdaster,formule),), - ECHELLE =SIMP(statut='f',typ='R',), - ), - b_tri_axe =BLOC(condition = "TRI_AXE != None",fr="Excitation suivant les trois axes mais avec le meme spectre", - SPEC_OSCI =SIMP(statut='o',typ=(nappe_sdaster,formule),), - ECHELLE =SIMP(statut='f',typ='R',), - ), - b_tri_spec =BLOC(condition = "TRI_SPEC != None",fr="Excitation suivant les trois axes avec trois spectres", - SPEC_OSCI =SIMP(statut='o',typ=(nappe_sdaster,formule),min=3,max=3 ), - ECHELLE =SIMP(statut='f',typ='R',min=3,max=3), - ), - NATURE =SIMP(statut='f',typ='TXM',defaut="ACCE",into=("ACCE","VITE","DEPL") ), - b_mult_appui =BLOC(condition = "(MULTI_APPUI != None)", - regles=(UN_PARMI('NOEUD','GROUP_NO' ),), - NOEUD =SIMP(statut='f',typ=no ,validators=NoRepeat(),max='**'), - GROUP_NO =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'),) - ), - MONO_APPUI =SIMP(statut='f',typ='TXM',into=("OUI",), - fr="excitation imposée unique" ), - MULTI_APPUI =SIMP(statut='f',typ='TXM',position='global',into=("DECORRELE","CORRELE"), - fr="excitation imposée unique" ), - b_decorrele =BLOC(condition = "MULTI_APPUI == 'DECORRELE' ", - GROUP_APPUI =FACT(statut='f',max='**', - regles=(UN_PARMI('NOEUD','GROUP_NO' ),), - NOEUD =SIMP(statut='f',typ=no ,validators=NoRepeat(),max='**'), - GROUP_NO =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'),), - - ), - b_correle =BLOC(condition = "MULTI_APPUI == 'CORRELE' ", - COMB_MULT_APPUI =FACT(statut='f',max='**', - regles=(UN_PARMI('TOUT','NOEUD','GROUP_NO' ),), - TOUT =SIMP(statut='f',typ='TXM',into=("OUI",) ), - NOEUD =SIMP(statut='f',typ=no ,validators=NoRepeat(),max='**'), - GROUP_NO =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'), - TYPE_COMBI =SIMP(statut='f',typ='TXM',into=("QUAD","LINE",) ),), - ), - - COMB_MODE =FACT(statut='o', - TYPE =SIMP(statut='o',typ='TXM',into=("SRSS","CQC","DSC","ABS","DPC","GUPTA") ), - DUREE =SIMP(statut='f',typ='R' ), - b_gupta =BLOC(condition = "TYPE == 'GUPTA' ", - FREQ_1 =SIMP(statut='o',typ='R',), - FREQ_2 =SIMP(statut='o',typ='R',), - ), - ), - COMB_DIRECTION =FACT(statut='f', - TYPE =SIMP(statut='f',typ='TXM',into=("QUAD","NEWMARK") ), - ), - COMB_DEPL_APPUI=FACT(statut='f',max='**', - regles=(UN_PARMI('TOUT','LIST_CAS'),), - TOUT =SIMP(statut='f',typ='TXM',into=("OUI",)), - LIST_CAS =SIMP(statut='f',typ='I',max='**'), - TYPE_COMBI =SIMP(statut='f',typ='TXM',into=("QUAD","LINE","ABS") ), - ), - DEPL_MULT_APPUI =FACT(statut='f',max='**', - regles=(UN_PARMI('NOEUD','GROUP_NO'), - AU_MOINS_UN('DX','DY','DZ' ),), - NOM_CAS =SIMP(statut='o',typ='TXM',max='**'), - NUME_CAS =SIMP(statut='o',typ='I',max='**'), - MODE_STAT =SIMP(statut='o',typ=mode_meca, ), - NOEUD_REFE =SIMP(statut='f',typ=no), - NOEUD =SIMP(statut='f',typ=no ,validators=NoRepeat(),max='**'), - GROUP_NO =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'), - DX =SIMP(statut='f',typ='R' ), - DY =SIMP(statut='f',typ='R' ), - DZ =SIMP(statut='f',typ='R' ), - ), - OPTION =SIMP(statut='o',typ='TXM',validators=NoRepeat(),max=9, - into=("DEPL","VITE","ACCE_ABSOLU","SIGM_ELNO","SIEF_ELGA", - "EFGE_ELNO","REAC_NODA","FORC_NODA", - "SIPO_ELNO") ), - INFO =SIMP(statut='f',typ='I',defaut= 1,into=( 1 , 2 ) ), - IMPRESSION =FACT(statut='f',max='**', - regles=(EXCLUS('TOUT','NIVEAU'),), - TOUT =SIMP(statut='f',typ='TXM',into=("OUI",) ), - NIVEAU =SIMP(statut='f',typ='TXM',into=("SPEC_OSCI","MASS_EFFE","MAXI_GENE"),validators=NoRepeat(),max=3 ), - ), - TITRE =SIMP(statut='f',typ='TXM',max='**'), -) ; - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2012 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: jacques.pellet at edf.fr - -def copier_prod(CONCEPT,**args): - return AsType(CONCEPT) - -# liste des types de concept acceptes par la commande : -copier_ltyp=( - cabl_precont, - listr8_sdaster, - listis_sdaster, - fonction_sdaster, - nappe_sdaster, - table_sdaster, - maillage_sdaster, - modele_sdaster, - evol_elas, - evol_noli, - evol_ther, -) - -COPIER=OPER(nom="COPIER",op= 185,sd_prod=copier_prod,reentrant='f', - UIinfo={"groupes":("Gestion du travail",)}, - fr="Copier un concept utilisateur sous un autre nom", - - CONCEPT = SIMP(statut='o',typ=copier_ltyp,), - INFO = SIMP(statut='f', typ='I', into=(1, 2), defaut=1, ), -) - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2013 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: jacques.pellet at edf.fr - -def crea_champ_prod(TYPE_CHAM,**args): - if TYPE_CHAM[0:5] == "CART_" : - return carte_sdaster - elif TYPE_CHAM[0:5] == "NOEU_" : - return cham_no_sdaster - elif TYPE_CHAM[0:2] == "EL" : - return cham_elem - else : - raise AsException("type de concept resultat_sdaster non prevu") - - -CREA_CHAMP=OPER(nom="CREA_CHAMP",op= 195,sd_prod=crea_champ_prod, - fr="Création d'un champ ",reentrant='f', - UIinfo={"groupes":("Résultats et champs",)}, - - # TYPE_CHAM doit etre de la forme : CART_xx, NOEU_xx, ELEM_xx, ELGA_xx ou ELNO_xx - # ou xx est le nom d'une grandeur définie dans le catalogue des grandeurs - TYPE_CHAM =SIMP(statut='o',typ='TXM',into=C_TYPE_CHAM_INTO()), - -# SI CREATION D'UN CHAM_NO, POUR IMPOSER LA NUMEROTATION DES DDLS : -# ------------------------------------------------------------------ - regles=(EXCLUS('NUME_DDL','CHAM_NO',)), - NUME_DDL =SIMP(statut='f',typ=(nume_ddl_sdaster) ), - CHAM_NO =SIMP(statut='f',typ=(cham_no_sdaster) ), - - -# AUTORISE-T-ON LE PROLONGEMENT DU CHAMP PAR ZERO ? -# ------------------------------------------------------------------ -# CE MOT CLE N'A DE SENS QUE DANS 2 CAS DE FIGURE : -# - POUR LES CHAM_ELEM (AVEC LE MOT CLE MODELE) -# - POUR LES CHAM_NO SI ON IMPOSE LEUR NUMEROTATION - b_prol_zero =BLOC(condition = "NUME_DDL != None or CHAM_NO != None or (TYPE_CHAM != None and TYPE_CHAM[0:2] == 'EL')", - PROL_ZERO =SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON",)),), - - -# SI CREATION D'UN CHAM_ELEM, POUR POUVOIR AIDER A L'ALLOCATION DU CHAMP : -# (PAR DEFAUT : TOU_INI_ELNO/_ELGA/_ELEM) -# ------------------------------------------------------------------ - OPTION =SIMP(statut='f',typ='TXM',validators=NoRepeat(),), - - -# Si creation d'un cham_elem avec sous-points, pour que tous les sous-points -# soient affectes : on duplique la valeur sur tous les sous-points -# ------------------------------------------------------------------ - AFFE_SP =FACT(statut='f',max=1, - CARA_ELEM =SIMP(statut='o',typ=cara_elem,min=1,max=1), - ), - - -# LE MOT-CLE OPERATION EST OBLIGATOIRE. IL PERMET LE BON AIGUILLAGE. -# ------------------------------------------------------------------ - OPERATION =SIMP(statut='o',typ='TXM',into=("AFFE","ASSE","EVAL","EXTR","DISC","NORMALE","R2C","C2R","COMB") ), - -# ------------------------------------------------------------------ - b_norm =BLOC(condition = "OPERATION == 'NORMALE'", - regles=(AU_MOINS_UN('GROUP_MA','MAILLE',),), - MODELE =SIMP(statut='o',typ=(modele_sdaster) ), - GROUP_MA =SIMP(statut='f',typ=grma ,validators=NoRepeat(),max='**'), - MAILLE =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), - ), -# ------------------------------------------------------------------ - b_affe =BLOC(condition = "OPERATION == 'AFFE'", - regles=(UN_PARMI('MAILLAGE','MODELE'),), - MAILLAGE =SIMP(statut='f',typ=(maillage_sdaster) ), - MODELE =SIMP(statut='f',typ=(modele_sdaster) ), - AFFE =FACT(statut='o',max='**', - regles=(AU_MOINS_UN('TOUT','GROUP_MA','MAILLE','GROUP_NO','NOEUD',), - UN_PARMI('VALE','VALE_I','VALE_C','VALE_F', ),), - TOUT =SIMP(statut='f',typ='TXM',into=("OUI",) ), - GROUP_MA =SIMP(statut='f',typ=grma ,validators=NoRepeat(),max='**'), - MAILLE =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), - GROUP_NO =SIMP(statut='f',typ=grno ,validators=NoRepeat(),max='**'), - NOEUD =SIMP(statut='f',typ=no ,validators=NoRepeat(),max='**'), - NOM_CMP =SIMP(statut='o',typ='TXM',max='**'), - VALE =SIMP(statut='f',typ='R',max='**' ), - VALE_I =SIMP(statut='f',typ='I',max='**' ), - VALE_C =SIMP(statut='f',typ='C',max='**' ), - VALE_F =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule),max='**'), - ), - ), -# ------------------------------------------------------------------ - b_asse =BLOC(condition = "OPERATION == 'ASSE'", - regles=(UN_PARMI('MAILLAGE','MODELE'),), - MAILLAGE =SIMP(statut='f',typ=(maillage_sdaster) ), - MODELE =SIMP(statut='f',typ=(modele_sdaster) ), - ASSE =FACT(statut='o',max='**', - regles=(AU_MOINS_UN('TOUT','GROUP_MA','GROUP_NO','MAILLE','NOEUD',), - PRESENT_PRESENT('NOM_CMP_RESU','NOM_CMP', ),), - TOUT =SIMP(statut='f',typ='TXM',into=("OUI",) ), - GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - GROUP_NO =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'), - MAILLE =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), - NOEUD =SIMP(statut='f',typ=no ,validators=NoRepeat(),max='**'), - CHAM_GD =SIMP(statut='o',typ=cham_gd_sdaster), - NOM_CMP =SIMP(statut='f',typ='TXM',max='**' ), - NOM_CMP_RESU =SIMP(statut='f',typ='TXM',max='**' ), - CUMUL =SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON",) ), - COEF_R =SIMP(statut='f',typ='R',defaut= 1. ), - COEF_C =SIMP(statut='f',typ='C',max=1), - ), - ), -# ------------------------------------------------------------------ - b_comb =BLOC(condition = "OPERATION == 'COMB'", - fr="Pour faire une combinaison linéaire de cham_no ayant meme profil", - COMB =FACT(statut='o',max='**', - CHAM_GD =SIMP(statut='o',typ=cham_no_sdaster), - COEF_R =SIMP(statut='o',typ='R'), - ), - ), -# ------------------------------------------------------------------ - b_eval =BLOC(condition = "OPERATION == 'EVAL'", - CHAM_F =SIMP(statut='o',typ=cham_gd_sdaster), - CHAM_PARA =SIMP(statut='o',typ=cham_gd_sdaster,max='**'), - ), -# ------------------------------------------------------------------ - b_r2c =BLOC(condition = "OPERATION == 'R2C'", - CHAM_GD =SIMP(statut='o',typ=cham_gd_sdaster), - ), -# ------------------------------------------------------------------ - b_c2r =BLOC(condition = "OPERATION == 'C2R'", - CHAM_GD =SIMP(statut='o',typ=cham_gd_sdaster), - PARTIE =SIMP(statut='o',typ='TXM',into=('REEL','IMAG','MODULE','PHASE'),), - ), -# ------------------------------------------------------------------ - b_disc =BLOC(condition = "OPERATION == 'DISC'", - MODELE =SIMP(statut='f',typ=(modele_sdaster) ), - CHAM_GD =SIMP(statut='o',typ=cham_gd_sdaster), - ), -# ------------------------------------------------------------------ - b_extr =BLOC(condition = "OPERATION == 'EXTR'", - regles=(AU_MOINS_UN('MAILLAGE','FISSURE','RESULTAT','TABLE','CARA_ELEM','CHARGE'), - PRESENT_ABSENT('MAILLAGE','FISSURE','RESULTAT','CARA_ELEM','CHARGE'), - PRESENT_ABSENT('FISSURE','MAILLAGE','RESULTAT','TABLE','CARA_ELEM','CHARGE'), - PRESENT_ABSENT('RESULTAT','FISSURE','MAILLAGE','TABLE','CARA_ELEM','CHARGE'), - PRESENT_ABSENT('TABLE','RESULTAT','FISSURE','CARA_ELEM','CHARGE'), - PRESENT_ABSENT('CARA_ELEM','MAILLAGE','TABLE','RESULTAT','FISSURE','CHARGE'), - PRESENT_ABSENT('CHARGE','MAILLAGE','TABLE','RESULTAT','FISSURE','CARA_ELEM'), - ), - MAILLAGE =SIMP(statut='f',typ=(maillage_sdaster) ), - FISSURE =SIMP(statut='f',typ=(fiss_xfem) ), - RESULTAT =SIMP(statut='f',typ=(resultat_sdaster) ), - TABLE =SIMP(statut='f',typ=(table_sdaster),min=1,max=1), - CARA_ELEM =SIMP(statut='f',typ=(cara_elem),min=1,max=1), - CHARGE =SIMP(statut='f',typ=(char_meca),min=1,max=1), - b_extr_maillage =BLOC(condition = "MAILLAGE != None and TABLE == None", - NOM_CHAM =SIMP(statut='o',typ='TXM',validators=NoRepeat(),into=("GEOMETRIE",)), - ), - - b_extr_cara_elem =BLOC(condition = "CARA_ELEM != None", - NOM_CHAM =SIMP(statut='o',typ='TXM',validators=NoRepeat(), - into=('.CARGENBA', '.CARMASSI', '.CARCABLE', '.CARCOQUE', '.CARGEOBA', '.CARDISCK', - '.CARARCPO', '.CARGENPO', '.CARDISCM', '.CARORIEN', '.CARDISCA', '.CVENTCXF', - '.CARPOUFL', '.CARGEOPO', '.CARDNSCK', '.CARDNSCM', '.CARDNSCA', '.CARDINFO', - '.CAFIBR', '.CANBSP',)), - ), - - b_extr_charge =BLOC(condition = "CHARGE != None", - NOM_CHAM =SIMP(statut='o',typ='TXM',validators=NoRepeat(), - into=('.CHME.EPSIN', '.CHME.F1D1D', '.CHME.F1D2D', '.CHME.F1D3D', '.CHME.F2D2D', - '.CHME.F2D3D', '.CHME.F3D3D', '.CHME.FCO2D', '.CHME.FCO3D', '.CHME.FELEC', - '.CHME.FL101', '.CHME.FL102', '.CHME.FLUX', '.CHME.FORNO', '.CHME.IMPE', - '.CHME.ONDE', '.CHME.ONDPL', '.CHME.ONDPR', '.CHME.PESAN', '.CHME.PRESS', - '.CHME.ROTAT', '.CHME.SIGIN', '.CHME.SIINT', '.CHME.VNOR',)), - ), - - b_extr_fissure = BLOC(condition = "FISSURE != None", - NOM_CHAM=SIMP(statut='o',typ='TXM',validators=NoRepeat(),into=("LTNO","LNNO", - "GRLTNO","GRLNNO","STNO","STNOR","BASLOC","GRI.LNNO","GRI.LTNO","GRI.GRLNNO","GRI.GRLTNO")), - - ), - - b_extr_table =BLOC(condition = "TABLE != None", - MODELE =SIMP(statut='f',typ=(modele_sdaster),), - ), - b_extr_resultat =BLOC(condition = "RESULTAT != None", - NOM_CHAM =SIMP(statut='o',typ='TXM',validators=NoRepeat(),into=C_NOM_CHAM_INTO()), - TYPE_MAXI =SIMP(statut='f',typ='TXM',into=("MAXI","MINI","MAXI_ABS","MINI_ABS","NORM_TRAN",) ), - - # si TYPE_MAXI, on spécifie en général plusieurs numéros d'ordre : - b_type_maxi =BLOC(condition = "TYPE_MAXI != None", - TYPE_RESU =SIMP(statut='o',typ='TXM',defaut="VALE",into=("VALE","INST",) ), - - regles=(EXCLUS('TOUT_ORDRE','LIST_INST','LIST_FREQ','NUME_ORDRE','INST', - 'FREQ','NUME_MODE','NOEUD_CMP','NOM_CAS','ANGLE'),), - TOUT_ORDRE =SIMP(statut='f',typ='TXM',into=("OUI",) ), - LIST_INST =SIMP(statut='f',typ=(listr8_sdaster) ), - LIST_FREQ =SIMP(statut='f',typ=(listr8_sdaster) ), - NUME_ORDRE =SIMP(statut='f',typ='I',max='**'), - INST =SIMP(statut='f',typ='R',max='**'), - FREQ =SIMP(statut='f',typ='R',max='**'), - NUME_MODE =SIMP(statut='f',typ='I',max='**'), - NOEUD_CMP =SIMP(statut='f',typ='TXM',max='**'), - NOM_CAS =SIMP(statut='f',typ='TXM',max='**'), - ANGLE =SIMP(statut='f',typ='R',max='**'), - ), - - # si .not. TYPE_MAXI, on ne doit spécifier qu'un seul numéro d'ordre : - b_non_type_maxi =BLOC(condition = "TYPE_MAXI == None", - regles=(EXCLUS('NUME_ORDRE','INST','FREQ','NUME_MODE','NOEUD_CMP','NOM_CAS','ANGLE'),), - NUME_ORDRE =SIMP(statut='f',typ='I'), - INST =SIMP(statut='f',typ='R'), - FREQ =SIMP(statut='f',typ='R'), - NUME_MODE =SIMP(statut='f',typ='I'), - NOEUD_CMP =SIMP(statut='f',typ='TXM',max=2), - NOM_CAS =SIMP(statut='f',typ='TXM'), - ANGLE =SIMP(statut='f',typ='R'), - - INTERPOL =SIMP(statut='f',typ='TXM',defaut="NON",into=("NON","LIN",) ), - ), - - CRITERE =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU",) ), - b_prec_rela=BLOC(condition="(CRITERE=='RELATIF')", - PRECISION =SIMP(statut='f',typ='R',defaut= 1.E-6,),), - b_prec_abso=BLOC(condition="(CRITERE=='ABSOLU')", - PRECISION =SIMP(statut='o',typ='R',),), - - ), # fin bloc b_extr - - - ), -# FIN DU CATALOGUE : INFO,TITRE ET TYPAGE DU RESULTAT : -#----------------------------------------------------- - INFO =SIMP(statut='f',typ='I',defaut= 1,into=(1,2,) ), - TITRE =SIMP(statut='f',typ='TXM',max='**' ), -) ; - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2012 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: harinaivo.andriambololona at edf.fr - -def crea_elem_ssd_prod(self,NUME_DDL,**args): - if NUME_DDL: - self.typeSDProd(NUME_DDL,nume_ddl_sdaster) - return macr_elem_dyna - -CREA_ELEM_SSD=MACRO(nom="CREA_ELEM_SSD", - op=OPS('Macro.crea_elem_ssd_ops.crea_elem_ssd_ops'), - sd_prod=crea_elem_ssd_prod, - reentrant='n', - fr="Creation de macro-element dynamique en enchainant les commandes : "\ - "CALC_MATR_ELEM, NUME_DDL, ASSE_MATRICE, MODE_ITER_SIMULT, "\ - "DEFI_INTERF_DYNA, DEFI_BASE_MODALE et MACR_ELEM_DYNA", - UIinfo={"groupes":("Matrices/vecteurs",)}, - -# pour CAL_MATR_ELEM + NUME_DDL + ASSE_MATRICE + MODE_ITER_SIMULT + MODE_STATIQUE - MODELE =SIMP(statut='o',typ=modele_sdaster), - CHAM_MATER =SIMP(statut='o',typ=cham_mater), - CARA_ELEM =SIMP(statut='f',typ=cara_elem), - NUME_DDL =SIMP(statut='f',typ=CO,defaut=None), - CHARGE =SIMP(statut='f',typ=(char_meca,char_ther,char_acou),validators=NoRepeat(),max='**'), - -# pour DEFI_INTERF_DYNA - INTERFACE =FACT(statut='o',max='**', - regles=(ENSEMBLE('NOM','TYPE'), - UN_PARMI('NOEUD','GROUP_NO'),), - NOM =SIMP(statut='f',typ='TXM' ), - TYPE =SIMP(statut='f',typ='TXM',into=("MNEAL","CRAIGB","CB_HARMO",) ), - NOEUD =SIMP(statut='f',typ=no,max='**'), - GROUP_NO =SIMP(statut='f',typ=grno,max='**'), - FREQ =SIMP(statut='f',typ='R',defaut= 1.), - ), - -# pour DEFI_BASE_MODALE - BASE_MODALE = FACT(statut='o',max = 1, - TYPE =SIMP(statut='o',typ='TXM',max=1,into=('CLASSIQUE','RITZ',),), - b_ritz = BLOC(condition = "TYPE == 'RITZ' ",fr="Base de type Ritz", - TYPE_MODE = SIMP(statut='f',typ='TXM',into=('STATIQUE','INTERFACE',),defaut='INTERFACE',), - b_intf = BLOC(condition = "TYPE_MODE == 'INTERFACE' ", - NMAX_MODE_INTF =SIMP(statut='f',typ='I',defaut=10,val_min=1),), - ), - ), - - INFO =SIMP(statut='f',typ='I',defaut= 1,into=(1,2) ), - -#------------------------------------------------------------------- -# Catalogue commun SOLVEUR (pour MODE_ITER_SIMULT, MODE_STATIQUE, DEFI_BASE_MODALE) - SOLVEUR =C_SOLVEUR('CREA_ELEM_SSD'), -#------------------------------------------------------------------- - -# pour le calcul modal - CALC_FREQ =FACT(statut='d',min=0, - STOP_ERREUR =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON") ), - OPTION =SIMP(statut='f',typ='TXM',defaut="PLUS_PETITE",into=("PLUS_PETITE","BANDE","CENTRE","SANS"), - fr="Choix de l option et par consequent du shift du probleme modal" ), - b_plus_petite =BLOC(condition = "OPTION == 'PLUS_PETITE'",fr="Recherche des plus petites valeurs propres", - NMAX_FREQ =SIMP(statut='f',typ='I',defaut= 10,val_min=0 ), - ), - b_centre =BLOC(condition = "OPTION == 'CENTRE'", - fr="Recherche des valeurs propres les plus proches d une valeur donnee", - FREQ =SIMP(statut='o',typ='R', - fr="Frequence autour de laquelle on cherche les frequences propres"), - AMOR_REDUIT =SIMP(statut='f',typ='R',), - NMAX_FREQ =SIMP(statut='f',typ='I',defaut= 10,val_min=0 ), - ), - b_bande =BLOC(condition = "(OPTION == 'BANDE')", - fr="Recherche des valeurs propres dans une bande donnee", - NMAX_FREQ =SIMP(statut='f',typ='I',defaut= 9999,val_min=0 ), - FREQ =SIMP(statut='o',typ='R',min=2,validators=NoRepeat(),max='**', - fr="Valeurs des frequences delimitant les bandes de recherche"), - ), - APPROCHE =SIMP(statut='f',typ='TXM',defaut="REEL",into=("REEL","IMAG","COMPLEXE"), - fr="Choix du pseudo-produit scalaire pour la resolution du probleme quadratique" ), - DIM_SOUS_ESPACE =SIMP(statut='f',typ='I' ), - ), - - -) ; - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2013 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: jacques.pellet at edf.fr -CREA_MAILLAGE=OPER(nom="CREA_MAILLAGE",op= 167,sd_prod=maillage_sdaster, - reentrant='n',fr="Crée un maillage à partir d'un maillage existant", - UIinfo={"groupes":("Maillage",)}, - regles=(UN_PARMI('COQU_VOLU', 'CREA_FISS', 'CREA_GROUP_MA', 'CREA_MAILLE', 'CREA_POI1', - 'DETR_GROUP_MA', 'ECLA_PG', 'HEXA20_27', 'LINE_QUAD', 'MODI_MAILLE', - 'QUAD_LINE', 'REPERE','RESTREINT','PENTA15_18','GEOM_FIBRE'),), - - - - # le MAILLAGE est inutile si ECLA_PG et GEOM_FIBRE - MAILLAGE =SIMP(statut='f',typ=maillage_sdaster ), - GEOM_FIBRE = SIMP(statut='f',max=1,typ=gfibre_sdaster), - - CREA_POI1 =FACT(statut='f',max='**',fr="Création de mailles de type POI1 à partir de noeuds", - regles=(AU_MOINS_UN('TOUT','GROUP_MA','MAILLE','GROUP_NO','NOEUD' ),), - NOM_GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - TOUT =SIMP(statut='f',typ='TXM',into=("OUI",) ), - GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - MAILLE =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), - GROUP_NO =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'), - NOEUD =SIMP(statut='f',typ=no ,validators=NoRepeat(),max='**'), - ), - CREA_MAILLE =FACT(statut='f',max='**',fr="Duplication de mailles", - regles=(AU_MOINS_UN('TOUT','MAILLE','GROUP_MA'),), - TOUT =SIMP(statut='f',typ='TXM',into=("OUI",) ), - MAILLE =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), - GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - PREF_MAILLE =SIMP(statut='o',typ='TXM' ), - PREF_NUME =SIMP(statut='f',typ='I' ), - ), - CREA_GROUP_MA =FACT(statut='f',max='**',fr="Duplication de mailles et création de groupes de mailles", - regles=(AU_MOINS_UN('TOUT','MAILLE','GROUP_MA' ),), - NOM =SIMP(statut='o',typ='TXM'), - TOUT =SIMP(statut='f',typ='TXM',into=("OUI",) ), - MAILLE =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), - GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - PREF_MAILLE =SIMP(statut='o',typ='TXM' ), - PREF_NUME =SIMP(statut='f',typ='I' ), - ), - DETR_GROUP_MA =FACT(statut='f',fr="Destruction de groupes de mailles", - GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - NB_MAILLE =SIMP(statut='f',typ='I',defaut= 0, - fr="Nombre minimal de mailles que doit contenir le groupe pour etre détruit", ), - ), - RESTREINT =FACT(statut='f',fr="Restreindre un maillage à des groupes de mailles",max=1, - regles=(AU_MOINS_UN('GROUP_MA','MAILLE',),), - GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - MAILLE =SIMP(statut='f',typ=ma,validators=NoRepeat(),max='**'), - TOUT_GROUP_MA =SIMP(statut='f',typ='TXM',defaut='NON',into=('OUI','NON'),), - GROUP_NO =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'), - TOUT_GROUP_NO =SIMP(statut='f',typ='TXM',defaut='NON',into=('OUI','NON'),), - ), - COQU_VOLU =FACT(statut='f', - fr="Creation de mailles volumiques à partir de mailles surfaciques", - NOM =SIMP(statut='o',typ='TXM'), - GROUP_MA =SIMP(statut='o',typ=grma,validators=NoRepeat(),max ='**'), - EPAIS =SIMP(statut='o',typ='R' ), - PREF_MAILLE =SIMP(statut='f',typ='TXM',defaut="MS" ), - PREF_NOEUD =SIMP(statut='f',typ='TXM',defaut="NS" ), - PREF_NUME =SIMP(statut='f',typ='I' ,defaut=1 ), - PLAN =SIMP(statut='o',typ='TXM',into=("SUP","MOY","INF")), - b_MOY =BLOC(condition = "PLAN == 'MOY'", - TRANSLATION =SIMP(statut='o',typ='TXM',into=("SUP","INF") ), - ), - ), - MODI_MAILLE =FACT(statut='f',max='**',fr="Modification du type de mailles", - regles=(AU_MOINS_UN('TOUT','MAILLE','GROUP_MA' ),), - TOUT =SIMP(statut='f',typ='TXM',into=("OUI",) ), - MAILLE =SIMP(statut='f',typ=ma,validators=NoRepeat(),max='**'), - GROUP_MA =SIMP(statut='f',typ=grma ,validators=NoRepeat(),max='**'), - OPTION =SIMP(statut='o',typ='TXM',into=("TRIA6_7","QUAD8_9","SEG3_4","QUAD_TRIA3"),validators=NoRepeat(), - fr="Choix de la transformation" ), - b_NOS =BLOC(condition = "OPTION == 'TRIA6_7' or OPTION == 'QUAD8_9' or OPTION == 'SEG3_4'", - PREF_NOEUD =SIMP(statut='f',typ='TXM',defaut="NS"), - PREF_NUME =SIMP(statut='f',typ='I',defaut= 1 ), - ), - b_QTR =BLOC(condition = "OPTION == 'QUAD_TRIA3'", - PREF_MAILLE =SIMP(statut='f',typ='TXM',defaut="MS" ), - PREF_NUME =SIMP(statut='f',typ='I',defaut= 1 ), - ), - ), - CREA_FISS = FACT(statut='f',max='**',fr="Creation d'une fissure potentielle avec elts de joint ou elts à disc", - NOM =SIMP(statut='o',typ='TXM'), - GROUP_NO_1 =SIMP(statut='o',typ=grno), - GROUP_NO_2 =SIMP(statut='o',typ=grno), - PREF_MAILLE =SIMP(statut='o',typ='TXM'), - PREF_NUME =SIMP(statut='f',typ='I',defaut=1 ), - ), - LINE_QUAD =FACT(statut='f',fr="Passage linéaire -> quadratique", - regles=(AU_MOINS_UN('TOUT','MAILLE','GROUP_MA' ),), - TOUT =SIMP(statut='f',typ='TXM',into=("OUI",) ), - MAILLE =SIMP(statut='f',typ=ma,validators=NoRepeat(),max='**'), - GROUP_MA =SIMP(statut='f',typ=grma ,validators=NoRepeat(),max='**'), - PREF_NOEUD =SIMP(statut='f',typ='TXM',defaut="NS"), - PREF_NUME =SIMP(statut='f',typ='I',defaut= 1 ), - ), - HEXA20_27 =FACT(statut='f',fr="Passage HEXA20 -> HEXA27", - regles=(AU_MOINS_UN('TOUT','MAILLE','GROUP_MA' ),), - TOUT =SIMP(statut='f',typ='TXM',into=("OUI",) ), - MAILLE =SIMP(statut='f',typ=ma,validators=NoRepeat(),max='**'), - GROUP_MA =SIMP(statut='f',typ=grma ,validators=NoRepeat(),max='**'), - PREF_NOEUD =SIMP(statut='f',typ='TXM',defaut="NS"), - PREF_NUME =SIMP(statut='f',typ='I',defaut= 1 ), - ), - PENTA15_18 =FACT(statut='f',fr="Passage PENTA15 -> PENTA18", - regles=(AU_MOINS_UN('TOUT','MAILLE','GROUP_MA' ),), - TOUT =SIMP(statut='f',typ='TXM',into=("OUI",) ), - MAILLE =SIMP(statut='f',typ=ma,validators=NoRepeat(),max='**'), - GROUP_MA =SIMP(statut='f',typ=grma ,validators=NoRepeat(),max='**'), - PREF_NOEUD =SIMP(statut='f',typ='TXM',defaut="NS"), - PREF_NUME =SIMP(statut='f',typ='I',defaut= 1 ), - ), - QUAD_LINE =FACT(statut='f',fr="Passage quadratique -> linéaire", - regles=(AU_MOINS_UN('TOUT','MAILLE','GROUP_MA' ),), - TOUT =SIMP(statut='f',typ='TXM',into=("OUI",) ), - MAILLE =SIMP(statut='f',typ=ma,validators=NoRepeat(),max='**'), - GROUP_MA =SIMP(statut='f',typ=grma ,validators=NoRepeat(),max='**'), - ), - REPERE =FACT(statut='f',max='**', - fr="changement de repère servant à déterminer les caractéristiques d'une section de poutre", - TABLE =SIMP(statut='o',typ=table_sdaster, - fr="Nom de la table contenant les caractéristiques de la section de poutre" ), - NOM_ORIG =SIMP(statut='f',typ='TXM',into=("CDG","TORSION"),fr="Origine du nouveau repère" ), - NOM_ROTA =SIMP(statut='f',typ='TXM',into=("INERTIE",),fr="Direction du repére" ), - b_cdg =BLOC(condition = "NOM_ORIG == 'CDG'", - GROUP_MA =SIMP(statut='f',typ=grma, - fr="Nom du groupe de mailles dont le centre de gravité sera l origine du nouveau repère"), - ), - ), - ECLA_PG =FACT(statut='f', - fr="Eclatement des mailles en petites mailles contenant chacune un seul point de gauss", - MODELE =SIMP(statut='o',typ=modele_sdaster ), - TOUT =SIMP(statut='f',typ='TXM',into=("OUI",) ), - MAILLE =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), - GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - SHRINK =SIMP(statut='f',typ='R',defaut= 0.9, fr="Facteur de réduction" ), - TAILLE_MIN =SIMP(statut='f',typ='R',defaut= 0.0, fr="Taille minimale d'un coté" ), - NOM_CHAM =SIMP(statut='f',typ='TXM',validators=NoRepeat(),max='**',into=C_NOM_CHAM_INTO('ELGA'),), - ), - TITRE =SIMP(statut='f',typ='TXM',max='**'), -# - INFO =SIMP(statut='f',typ='I',defaut= 1,into=(1,2) ), -) ; - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2013 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: j-pierre.lefebvre at edf.fr -def crea_resu_prod(TYPE_RESU,**args): - if TYPE_RESU == "EVOL_ELAS" : return evol_elas - if TYPE_RESU == "EVOL_NOLI" : return evol_noli - if TYPE_RESU == "EVOL_THER" : return evol_ther - if TYPE_RESU == "MULT_ELAS" : return mult_elas - if TYPE_RESU == "MODE_MECA" : return mode_meca - if TYPE_RESU == "DYNA_TRANS" : return dyna_trans - if TYPE_RESU == "DYNA_HARMO" : return dyna_harmo - if TYPE_RESU == "FOURIER_ELAS" : return fourier_elas - if TYPE_RESU == "FOURIER_THER" : return fourier_ther - if TYPE_RESU == "EVOL_VARC" : return evol_varc - if TYPE_RESU == "EVOL_CHAR" : return evol_char - raise AsException("type de concept resultat non prevu") - -CREA_RESU=OPER(nom="CREA_RESU",op=124,sd_prod=crea_resu_prod,reentrant='f', - UIinfo={"groupes":("Resultats et champs",)}, - fr="Creer ou enrichir une structure de donnees resultat a partir de champs aux noeuds", - - OPERATION =SIMP(statut='o',typ='TXM',into=("AFFE","ASSE","ECLA_PG","PERM_CHAM","PROL_RTZ","PREP_VRC1","PREP_VRC2",), - fr="choix de la fonction a activer",), - - TYPE_RESU =SIMP(statut='o',position='global',typ='TXM', - into=( - # pour bloc AFFE - "MODE_MECA","MULT_ELAS","EVOL_ELAS","EVOL_NOLI","DYNA_HARMO","DYNA_TRANS", - "FOURIER_ELAS","EVOL_THER","EVOL_VARC","EVOL_CHAR","FOURIER_THER" - # pour bloc ASSE - # "EVOL_THER " - # pour bloc ECLA_PG - # "EVOL_ELAS","EVOL_NOLI","EVOL_THER" - # pour bloc PERM_CHAM - # "EVOL_NOLI" - # pour bloc PROL_RTZ - # "EVOL_THER" - # pour bloc PREP_VRC1 - # "EVOL_THER" - # pour bloc PREP_VRC2 - # "EVOL_THER" - ), - ), - - - # Creation par affectation de champs : - #------------------------------------- - b_affe =BLOC(condition = "OPERATION == 'AFFE'", - - b_type_resu =BLOC(condition = "TYPE_RESU == 'EVOL_CHAR'", - NOM_CHAM =SIMP(statut='o',typ='TXM',validators=NoRepeat(),into=("PRES", - "FSUR_2D","FSUR_3D","FVOL_2D","FVOL_3D","VITE_VENT")), - ), - - b_evol_char =BLOC(condition = "TYPE_RESU != 'EVOL_CHAR'", - NOM_CHAM =SIMP(statut='o',typ='TXM',validators=NoRepeat(),into=C_NOM_CHAM_INTO()), - ), - - b_mode =BLOC(condition = "au_moins_un(TYPE_RESU, ('MODE_MECA', 'DYNA_HARMO', 'DYNA_TRANS'))", - MATR_RIGI =SIMP(statut='f',typ=matr_asse_depl_r,), - MATR_MASS =SIMP(statut='f',typ=matr_asse_depl_r,), - ), -# -# pour ajouter un comportement dans la SD -# - COMPORTEMENT =C_COMPORTEMENT(), -# -# pour ajouter une charge dans la SD -# - b_evol_elas = BLOC(condition="TYPE_RESU=='EVOL_ELAS'", - EXCIT =FACT(statut='f',max='**', - CHARGE =SIMP(statut='o',typ=(char_meca,char_cine_meca)), - FONC_MULT =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - TYPE_CHARGE =SIMP(statut='f',typ='TXM',defaut="FIXE",into=("FIXE",) ),), - ), - - b_evol_ther = BLOC(condition="TYPE_RESU=='EVOL_THER'", - EXCIT =FACT(statut='f',max='**', - CHARGE =SIMP(statut='o',typ=(char_ther,char_cine_ther)), - FONC_MULT =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)),), - ), - - b_evol_noli = BLOC(condition="TYPE_RESU=='EVOL_NOLI'", - EXCIT =FACT(statut='f',max='**', - CHARGE =SIMP(statut='o',typ=(char_meca,char_cine_meca)), - FONC_MULT =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - TYPE_CHARGE =SIMP(statut='f',typ='TXM',defaut="FIXE_CSTE", - into=("FIXE_CSTE","FIXE_PILO","SUIV","DIDI")), - DEPL =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - ACCE =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - VITE =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - MULT_APPUI =SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON") ), - DIRECTION =SIMP(statut='f',typ='R',max='**'), - NOEUD =SIMP(statut='f',typ=no ,validators=NoRepeat(),max='**'), - GROUP_NO =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'),), - ), - - - AFFE =FACT(statut='o',max='**', - CHAM_GD =SIMP(statut='o',typ=(cham_gd_sdaster)), - MODELE =SIMP(statut='f',typ=modele_sdaster), - CHAM_MATER =SIMP(statut='f',typ=cham_mater), - CARA_ELEM =SIMP(statut='f',typ=cara_elem), - -# - b_mult_elas =BLOC(condition = "TYPE_RESU == 'MULT_ELAS' ", - NOM_CAS =SIMP(statut='f',typ='TXM' ), - CHARGE =SIMP(statut='f',typ=(char_meca),max='**'), - ), - b_evol =BLOC(condition = "au_moins_un(TYPE_RESU, ('EVOL_ELAS', 'EVOL_NOLI', \ - 'EVOL_THER', 'EVOL_VARC', 'EVOL_CHAR', 'DYNA_TRANS'))", - regles=(UN_PARMI('INST','LIST_INST'),), - INST =SIMP(statut='f',typ='R',validators=NoRepeat(),max='**'), - LIST_INST =SIMP(statut='f',typ=listr8_sdaster), - NUME_INIT =SIMP(statut='f',typ='I', val_min=1), - NUME_FIN =SIMP(statut='f',typ='I', val_min=1), - PRECISION =SIMP(statut='f',typ='R',defaut= 0.0 ), - CRITERE =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU") ), - ), - b_fourier_elas =BLOC(condition = "(TYPE_RESU == 'FOURIER_ELAS') ", - NUME_MODE =SIMP(statut='f',typ='I'), - TYPE_MODE =SIMP(statut='f',typ='TXM',defaut="SYME",into=("SYME","ANTI","TOUS") ), - CHARGE =SIMP(statut='f',typ=(char_meca),max='**'), - ), - b_fourier_ther =BLOC(condition = "(TYPE_RESU == 'FOURIER_THER') ", - NUME_MODE =SIMP(statut='f',typ='I'), - TYPE_MODE =SIMP(statut='f',typ='TXM',defaut="SYME",into=("SYME","ANTI","TOUS") ), - ), - b_mode =BLOC(condition = "TYPE_RESU == 'MODE_MECA'", - NUME_MODE =SIMP(statut='f',typ='I'), - FREQ =SIMP(statut='f',typ='R'), - ), - b_dyna_harmo =BLOC(condition = "TYPE_RESU == 'DYNA_HARMO'", - regles=(UN_PARMI('FREQ','LIST_FREQ',),), - FREQ =SIMP(statut='f',typ='R',validators=NoRepeat(),max='**'), - LIST_FREQ =SIMP(statut='f',typ=listr8_sdaster), - CRITERE =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU") ), - PRECISION =SIMP(statut='f',typ='R',defaut=0.0), - ), - ), - ), - - - # Creation par assemblage d'evol_ther : - #----------------------------------------- - b_asse =BLOC(condition = "OPERATION == 'ASSE'", - ASSE =FACT(statut='o',max='**', - RESULTAT =SIMP(statut='o',typ=evol_ther), - TRANSLATION =SIMP(statut='f',typ='R',defaut= 0. ), - ), - ), - - - b_ecla_pg =BLOC(condition = "OPERATION == 'ECLA_PG'", - - ECLA_PG =FACT(statut='o', - regles=(EXCLUS('TOUT_ORDRE','NUME_ORDRE','INST','LIST_INST','LIST_ORDRE'),), - NOM_CHAM =SIMP(statut='o',typ='TXM',validators=NoRepeat(),max='**',into=C_NOM_CHAM_INTO('ELGA'),), - MODELE_INIT =SIMP(statut='o',typ=modele_sdaster), - TOUT =SIMP(statut='f',typ='TXM',into=("OUI",) ), - MAILLE =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), - GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - RESU_INIT =SIMP(statut='o',typ=resultat_sdaster), - MAILLAGE =SIMP(statut='o',typ=maillage_sdaster), - TOUT_ORDRE =SIMP(statut='f',typ='TXM',into=("OUI",) ), - NUME_ORDRE =SIMP(statut='f',typ='I',validators=NoRepeat(),max='**'), - LIST_ORDRE =SIMP(statut='f',typ=listis_sdaster), - INST =SIMP(statut='f',typ='R',validators=NoRepeat(),max='**'), - LIST_INST =SIMP(statut='f',typ=listr8_sdaster), - CRITERE =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU",),), - b_prec_rela=BLOC(condition="(CRITERE=='RELATIF')", - PRECISION =SIMP(statut='f',typ='R',defaut= 1.E-6,),), - b_prec_abso=BLOC(condition="(CRITERE=='ABSOLU')", - PRECISION =SIMP(statut='o',typ='R',),), - ), - ), - - - b_perm_cham =BLOC(condition = "OPERATION == 'PERM_CHAM'", - - NOM_CHAM =SIMP(statut='f',typ='TXM',into=("DEPL","SIEF_ELGA","VARI_ELGA","STRX_ELGA"), - validators=NoRepeat(),max='**'), - RESU_INIT =SIMP(statut='o',typ=evol_noli), - INST_INIT =SIMP(statut='f',typ='R'), - CRITERE =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU",),), - b_prec_rela=BLOC(condition="(CRITERE=='RELATIF')", - PRECISION =SIMP(statut='f',typ='R',defaut= 1.E-6,),), - b_prec_abso=BLOC(condition="(CRITERE=='ABSOLU')", - PRECISION =SIMP(statut='o',typ='R',),), - MAILLAGE_INIT =SIMP(statut='o',typ=maillage_sdaster,), - RESU_FINAL =SIMP(statut='o',typ=evol_noli,), - MAILLAGE_FINAL =SIMP(statut='o',typ=maillage_sdaster,), - PERM_CHAM =FACT(statut='o',max='**', - GROUP_MA_FINAL =SIMP(statut='o',typ=grma), - GROUP_MA_INIT =SIMP(statut='o',typ=grma), - TRAN =SIMP(statut='o',typ='R',min=3,max=3), - PRECISION =SIMP(statut='f',typ='R',defaut=1.0E-3), - ), - ), - - b_prol_rtz =BLOC(condition = "OPERATION == 'PROL_RTZ'", - - PROL_RTZ =FACT(statut='o', - regles=(EXCLUS('INST','LIST_INST'),), - MAILLAGE_FINAL =SIMP(statut='o',typ=maillage_sdaster,), - TABLE =SIMP(statut='o',typ=table_sdaster,fr="Table issue de post_releve_t"), - INST =SIMP(statut='f',typ='R',validators=NoRepeat(),max='**'), - LIST_INST =SIMP(statut='f',typ=listr8_sdaster), - b_acce_reel =BLOC(condition="(INST != None)or(LIST_INST != None)", - CRITERE =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU",),), - b_prec_rela=BLOC(condition="(CRITERE=='RELATIF')", - PRECISION =SIMP(statut='f',typ='R',defaut= 1.E-6,),), - b_prec_abso=BLOC(condition="(CRITERE=='ABSOLU')", - PRECISION =SIMP(statut='o',typ='R',),), - ), - PROL_DROITE =SIMP(statut='f',typ='TXM',defaut="EXCLU",into=("CONSTANT","LINEAIRE","EXCLU",),), - PROL_GAUCHE =SIMP(statut='f',typ='TXM',defaut="EXCLU",into=("CONSTANT","LINEAIRE","EXCLU",),), - REPERE =SIMP(statut='o',typ='TXM',into=("CYLINDRIQUE",),), - ORIGINE =SIMP(statut='o',typ='R',min=3,max=3), - AXE_Z =SIMP(statut='o',typ='R',min=3,max=3), - ), - ), - - b_prep_vrc1 =BLOC(condition = "OPERATION == 'PREP_VRC1'", - # calculer la temperature dans les couches des coques multicouche a partir d'un champ de fonctions - # de fonctions du temps et de l'espace (epaisseur) - - PREP_VRC1 =FACT(statut='o',max=1, - CHAM_GD =SIMP(statut='o',typ=(cham_gd_sdaster)), # carte de fonctions du temps et de l'epaisseur - MODELE =SIMP(statut='o',typ=modele_sdaster), # modele mecanique contenant les coques multicouche - CARA_ELEM =SIMP(statut='o',typ=cara_elem), # CARA_ELEM pour connaitre EPAIS et COQU_NCOU - INST =SIMP(statut='o',typ='R',validators=NoRepeat(),max='**'), - ), - ), - - b_prep_vrc2 =BLOC(condition = "OPERATION == 'PREP_VRC2'", - # calculer la temperature dans les couches des coques multicouche a partir d'un evol_ther "coque" - # contenant TEMP_MIL/TEMP_INF/TEMP_SUP - - PREP_VRC2 =FACT(statut='o',max=1, - EVOL_THER =SIMP(statut='o',typ=(evol_ther)), # evol_ther de type "coque" (TEMP_MIL/TEMP_INF/TEMP_SUP) - MODELE =SIMP(statut='o',typ=modele_sdaster), # modele mecanique contenant les coques multicouche - CARA_ELEM =SIMP(statut='o',typ=cara_elem), # CARA_ELEM pour connaitre EPAIS et COQU_NCOU - - TOUT =SIMP(statut='f',typ='TXM',into=("OUI",) ), - MAILLE =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), - GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - - ), - ), -) ; - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2012 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: mathieu.courtois at edf.fr - -def crea_table_prod(TYPE_TABLE, **args): - """Typage du concept résultat - """ - if TYPE_TABLE == 'TABLE_FONCTION': - return table_fonction - elif TYPE_TABLE == 'TABLE_CONTENEUR': - return table_container - else: - return table_sdaster - -CREA_TABLE=OPER(nom="CREA_TABLE",op=36,sd_prod=crea_table_prod, - fr="Création d'une table à partir d'une fonction ou de deux listes", - reentrant='f', - UIinfo={"groupes":("Tables",)}, - - regles=(EXCLUS('FONCTION','LISTE','RESU'),), - - LISTE=FACT(statut='f',max='**', - fr="Creation d'une table a partir de listes", - regles=(UN_PARMI('LISTE_I','LISTE_R','LISTE_K')), - PARA =SIMP(statut='o',typ='TXM'), - TYPE_K =SIMP(statut='f',typ='TXM',defaut='K8', - into=('K8','K16','K24')), - NUME_LIGN=SIMP(statut='f',typ='I',max='**'), - LISTE_I =SIMP(statut='f',typ='I',max='**'), - LISTE_R =SIMP(statut='f',typ='R',max='**'), - LISTE_K =SIMP(statut='f',typ='TXM', max='**'), - ), - FONCTION=FACT(statut='f', - fr="Creation d'une table a partir d'une fonction", - FONCTION=SIMP(statut='o',typ=(fonction_c,fonction_sdaster)), - PARA=SIMP(statut='f',typ='TXM',min=2,max=2), - ), - RESU=FACT(statut='f',max=1, - fr="Creation d'une table a partir d'un resultat ou d'un champ", - regles=(UN_PARMI('CHAM_GD','RESULTAT'), - UN_PARMI('TOUT_CMP','NOM_CMP'), - PRESENT_ABSENT('TOUT','GROUP_MA','GROUP_NO','MAILLE','NOEUD',), - AU_MOINS_UN('TOUT','GROUP_MA','GROUP_NO','MAILLE','NOEUD',), - ), - CHAM_GD =SIMP(statut='f',typ=cham_gd_sdaster), - RESULTAT =SIMP(statut='f',typ=(resultat_sdaster) ), - b_resultat =BLOC(condition = "RESULTAT != None", - regles=(EXCLUS('TOUT_ORDRE','NUME_ORDRE','LIST_ORDRE','INST','LIST_INST', - 'MODE','LIST_MODE','FREQ','LIST_FREQ'),), - NOM_CHAM =SIMP(statut='o',typ='TXM',validators=NoRepeat(),into=C_NOM_CHAM_INTO()), - TOUT_ORDRE =SIMP(statut='f',typ='TXM',into=("OUI",) ), - NUME_ORDRE =SIMP(statut='f',typ='I',max='**'), - LIST_ORDRE =SIMP(statut='f',typ=(listis_sdaster) ), - INST =SIMP(statut='f',typ='R',max='**'), - LIST_INST =SIMP(statut='f',typ=(listr8_sdaster) ), - MODE =SIMP(statut='f',typ='I',max='**'), - LIST_MODE =SIMP(statut='f',typ=(listis_sdaster) ), - FREQ =SIMP(statut='f',typ='R',max='**'), - LIST_FREQ =SIMP(statut='f',typ=(listr8_sdaster) ), - CRITERE =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU",) ), - b_prec_rela=BLOC(condition="(CRITERE=='RELATIF')", - PRECISION =SIMP(statut='f',typ='R',defaut= 1.E-6,),), - b_prec_abso=BLOC(condition="(CRITERE=='ABSOLU')", - PRECISION =SIMP(statut='o',typ='R',),), - ), - b_cham_gd =BLOC(condition = "CHAM_GD != None", - CARA_ELEM =SIMP(statut='f',typ=cara_elem),), - TOUT_CMP =SIMP(statut='f',typ='TXM',into=("OUI",) ), - NOM_CMP =SIMP(statut='f',typ='TXM',max='**'), - TOUT =SIMP(statut='f',typ='TXM',into=("OUI",) ), - GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - GROUP_NO =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'), - MAILLE =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), - NOEUD =SIMP(statut='f',typ=no ,validators=NoRepeat(),max='**'), - ), - - TYPE_TABLE = SIMP(statut='f', typ='TXM', defaut="TABLE", - into=('TABLE', 'TABLE_FONCTION', 'TABLE_CONTENEUR'),), - - TITRE=SIMP(statut='f',typ='TXM',max='**'), -) ; - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2007 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: j-pierre.lefebvre at edf.fr - -DEBUG=PROC(nom="DEBUG",op=137, - UIinfo={"groupes":("Utilitaires",)}, - fr="Permettre de changer entre 2 commandes quelques variables globales de debug", - - SDVERI =SIMP(fr="vérifie la conformité des SD produites par les commandes", - statut='f',typ='TXM',into=('OUI','NON')), - JXVERI =SIMP(fr="vérifie l intégrité de la segmentation mémoire", - statut='f',typ='TXM',into=('OUI','NON')), - JEVEUX =SIMP(fr="force les déchargement sur disque", - statut='f',typ='TXM',into=('OUI','NON')), - IMPR_MACRO =SIMP(fr="affichage des sous-commandes produites par les macros dans le fichier mess", - statut='f',typ='TXM',into=("OUI","NON")), - ); - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2012 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: j-pierre.lefebvre at edf.fr -DEBUT=MACRO(nom="DEBUT", - op=OPS("Cata.ops.build_debut"), - repetable='n', - UIinfo={"groupes":("Gestion du travail",)}, - fr="Ouverture d'une étude. Allocation des ressources mémoire et disque et fichiers", - sd_prod=ops.DEBUT, - - PAR_LOT =SIMP(fr="mode de traitement des commandes",statut='f',typ='TXM', - into=("OUI","NON"),defaut="OUI"), - IMPR_MACRO =SIMP(fr="affichage des sous-commandes produites par les macros dans le fichier mess", - statut='f',typ='TXM',into=("OUI","NON"),defaut="NON"), -# FORMAT_HDF =SIMP(fr="sauvegarde de la base GLOBALE au format HDF",statut='f', -# typ='TXM',defaut="NON",into=("OUI","NON",) ), - BASE =FACT(fr="définition des paramètres associés aux bases JEVEUX", - statut='f',min=1,max=2, - FICHIER =SIMP(fr="nom de la base",statut='o',typ='TXM', - into=('GLOBALE','VOLATILE'),), - TITRE =SIMP(statut='f',typ='TXM'), - CAS =SIMP(statut='f',typ='TXM'), - NMAX_ENRE =SIMP(fr="nombre maximum d enregistrements",statut='f',typ='I'), - LONG_ENRE =SIMP(fr="longueur des enregistrements",statut='f',typ='I'), - LONG_REPE =SIMP(fr="longueur du répertoire",statut='f',typ='I'), - ), - - CATALOGUE =FACT(statut='f',min=1,max=10, - FICHIER =SIMP(statut='o',typ='TXM'), - UNITE =SIMP(statut='f',typ='I'), - ), - - CODE =FACT(fr="paramètres réservés aux cas-tests", - statut='f',min=1,max=1, - NIV_PUB_WEB =SIMP(statut='o',typ='TXM',into=('INTERNET','INTRANET')), - VISU_EFICAS =SIMP(statut='f',typ='TXM',into=('OUI','NON'),defaut='OUI'), - ), - - ERREUR =FACT(fr="comportement en cas d'erreur",statut='f',min=1,max=1, - ERREUR_F =SIMP(statut='f',typ='TXM',into=('ABORT','EXCEPTION'),), - ), - - DEBUG =FACT(fr="option de déboggage reservée aux développeurs", - statut='f',min=1,max=1, - JXVERI =SIMP(fr="vérifie l intégrité de la segmentation mémoire", - statut='f',typ='TXM',into=('OUI','NON'),defaut='NON'), - SDVERI =SIMP(fr="vérifie la conformité des SD produites par les commandes", - statut='f',typ='TXM',into=('OUI','NON')), - JEVEUX =SIMP(fr="force les déchargement sur disque", - statut='f',typ='TXM',into=('OUI','NON'),defaut='NON'), - ENVIMA =SIMP(fr="imprime les valeurs définies dans ENVIMA", - statut='f',typ='TXM',into=('TEST',)), - HIST_ETAPE = SIMP(fr="permet de conserver toutes les étapes du jeu de commandes", - statut='f', typ='TXM', into=('OUI', 'NON'), defaut='NON'), - ), - - MESURE_TEMPS =FACT(fr="Pour afficher le temps des principales étapes de calcul", - statut='d',min=1,max=1, - NIVE_DETAIL =SIMP(fr="niveau de détail des impressions", - statut='f',typ='I',into=(0,1,2,3),defaut=1), - # 0 : rien - # 1 : impression en fin de commande des mesures principales - # 2 : impression en fin de commande des mesures principales et secondaires - # 3 : impression des mesures principales et secondaires pour chaque pas de temps - MOYENNE =SIMP(fr="affichage des moyennes et écart-types en parallèle", - statut='f',typ='TXM',into=('OUI','NON',),defaut='NON'), - ), - - MEMOIRE =FACT(fr="mode de gestion mémoire utilisé",statut='d',min=1,max=1, - TAILLE_BLOC =SIMP(statut='f',typ='R',defaut=800.), - TAILLE_GROUP_ELEM =SIMP(statut='f',typ='I',defaut=1000), - ), - - RESERVE_CPU =FACT(fr="reserve de temps pour terminer une execution",statut='d',max=1, - regles=(EXCLUS('VALE','POURCENTAGE'),), -# par défaut VALE fixée à 10. dans le FORTRAN si CODE présent - VALE =SIMP(statut='f',typ='I',val_min=0,), -# par défaut 10% dans le FORTRAN - POURCENTAGE =SIMP(statut='f',typ='R',val_min=0.,val_max=1.0), -# valeur en secondes de la réserve maximum bornée à 900 secondes - BORNE =SIMP(statut='f',typ='I',val_min=0,defaut=900),), - - IGNORE_ALARM = SIMP(statut='f', typ='TXM', max='**', fr="Alarmes que l'utilisateur souhaite délibérément ignorer"), - - LANG = SIMP(statut='f', typ='TXM', - fr="Permet de choisir la langue utilisée pour les messages (si disponible)", - ang="Allows to choose the language used for messages (if available)"), - - INFO = SIMP(statut='f', typ='I', defaut=1, into=(1,2),), -); - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2011 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: nicolas.brie at edf.fr -DEFI_BASE_MODALE=OPER(nom="DEFI_BASE_MODALE",op= 99,sd_prod=mode_meca, - reentrant='f', - fr="Définit la base d'une sous-structuration dynamique ou d'une recombinaison modale", - UIinfo={"groupes":("Matrices et vecteurs","Dynamique",)}, - regles=(UN_PARMI('CLASSIQUE','RITZ','DIAG_MASS','ORTHO_BASE'),), - CLASSIQUE =FACT(statut='f', - INTERF_DYNA =SIMP(statut='o',typ=interf_dyna_clas ), - MODE_MECA =SIMP(statut='o',typ=mode_meca,max='**' ), - NMAX_MODE =SIMP(statut='f',typ='I',defaut=10,max='**' ), - ), - RITZ =FACT(statut='f',max='**', - regles=(UN_PARMI('MODE_MECA','BASE_MODALE','MODE_INTF'),), - MODE_MECA =SIMP(statut='f',typ=mode_meca,max='**' ), - NMAX_MODE =SIMP(statut='f',typ='I',max='**'), - BASE_MODALE =SIMP(statut='f',typ=mode_meca ), - MODE_INTF =SIMP(statut='f',typ=(mode_meca,mult_elas), ), - ), - b_ritz =BLOC(condition = "RITZ != None", - INTERF_DYNA =SIMP(statut='f',typ=interf_dyna_clas ), - NUME_REF =SIMP(statut='f',typ=nume_ddl_sdaster ), - ORTHO =SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON"), - fr="Reorthonormalisation de la base de Ritz" ), - LIST_AMOR =SIMP(statut='f',typ=listr8_sdaster ), - b_ortho =BLOC(condition = "ORTHO == 'OUI' ", - MATRICE =SIMP(statut='o',typ=(matr_asse_depl_r,matr_asse_depl_c,matr_asse_gene_r,matr_asse_pres_r ) ), - ), - ), - DIAG_MASS =FACT(statut='f',max='**', - MODE_MECA =SIMP(statut='o',typ=mode_meca,max='**' ), - MODE_STAT =SIMP(statut='o',typ=mode_meca ), - ), - ORTHO_BASE =FACT(statut='f',max='**', - BASE =SIMP(statut='o',typ=(mode_meca,mult_elas)), - MATRICE =SIMP(statut='o',typ=(matr_asse_depl_r,matr_asse_depl_c,matr_asse_gene_r,matr_asse_pres_r ) ), - ), - -#------------------------------------------------------------------- -# Catalogue commun SOLVEUR - SOLVEUR =C_SOLVEUR('DEFI_BASE_MODALE'), -#------------------------------------------------------------------- - - - - TITRE =SIMP(statut='f',typ='TXM',max='**'), - INFO =SIMP(statut='f',typ='I',defaut= 1,into=( 1 , 2) ), -) ; - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2013 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: sylvie.michel-ponnelle at edf.fr - - -DEFI_CABLE_BP=MACRO(nom="DEFI_CABLE_BP", - op=OPS('Macro.defi_cable_bp_ops.defi_cable_bp_ops'), - sd_prod=cabl_precont, - fr="Calculer les profils initiaux de tension le long des cables " \ - "de précontrainte d'une structure en béton", - reentrant='n',UIinfo={"groupes":("Modélisation",)}, - MODELE =SIMP(statut='o',typ=modele_sdaster ), - CHAM_MATER =SIMP(statut='o',typ=cham_mater ), - CARA_ELEM =SIMP(statut='o',typ=cara_elem ), - GROUP_MA_BETON =SIMP(statut='o',typ=grma,max='**'), - DEFI_CABLE =FACT(statut='o',max='**', - regles=(UN_PARMI('MAILLE','GROUP_MA'), - UN_PARMI('NOEUD_ANCRAGE','GROUP_NO_ANCRAGE'),), - MAILLE =SIMP(statut='f',typ=ma,min=2,validators=NoRepeat(),max='**'), - GROUP_MA =SIMP(statut='f',typ=grma), - NOEUD_ANCRAGE =SIMP(statut='f',typ=no ,validators=NoRepeat(),max=2), - GROUP_NO_ANCRAGE=SIMP(statut='f',typ=grno,validators=NoRepeat(),max=2), - TENSION_CT =SIMP(statut='f',typ=table_sdaster), - ), - ADHERENT =SIMP(statut='o',typ='TXM',defaut='OUI',into=("OUI","NON") ), - TYPE_ANCRAGE =SIMP(statut='o',typ='TXM',min=2,max=2,into=("ACTIF","PASSIF") ), - TENSION_INIT =SIMP(statut='o',typ='R',val_min=0.E+0 ), - RECUL_ANCRAGE =SIMP(statut='o',typ='R',val_min=0.E+0 ), - b_adherent=BLOC(condition="(ADHERENT=='OUI')", - TYPE_RELAX =SIMP(statut='o',typ='TXM',into=("SANS","BPEL","ETCC_DIRECT","ETCC_REPRISE"),defaut="SANS",), - b_relax_bpel =BLOC(condition = "TYPE_RELAX =='BPEL'", - R_J =SIMP(statut='o',typ='R',val_min=0.E+0), - ), - b_relax_etcc =BLOC(condition = "((TYPE_RELAX=='ETCC_DIRECT') or (TYPE_RELAX=='ETCC_REPRISE'))", - NBH_RELAX =SIMP(statut='o',typ='R',val_min=0.E+0), - ), -# PERT_ELAS =SIMP(statut='o',typ='TXM',into=("OUI","NON"),defaut="NON"), -# b_pert_elas =BLOC(condition = "PERT_ELAS=='OUI'", -# EP_BETON = SIMP(statut='o',typ='R',val_min=0.E+0), -# ESP_CABLE = SIMP(statut='o',typ='R',val_min=0.E+0) -# ) , - CONE =FACT(statut='f', - RAYON =SIMP(statut='o',typ='R',val_min=0.E+0 ), - LONGUEUR =SIMP(statut='o',typ='R',val_min=0.E+0 ), - PRESENT =SIMP(statut='o',typ='TXM',min=2,max=2,into=("OUI","NON") ), - ), - ), - b_non_adherent=BLOC(condition="(ADHERENT=='NON')", - TYPE_RELAX =SIMP(statut='c',typ='TXM',into=("SANS",),defaut="SANS",), - ), - TITRE =SIMP(statut='f',typ='TXM',max='**' ), - INFO =SIMP(statut='f',typ='I',defaut= 1,into=( 1 , 2) ), -) ; - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2013 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: sylvie.michel-ponnelle at edf.fr - -DEFI_CABLE_OP=OPER(nom="DEFI_CABLE_OP",op= 180,sd_prod=cabl_precont,reentrant='n', - fr="Définit les profils initiaux de tension d'une structure en béton le long des cables de précontrainte" - +" (utilisée par la macro DEFI_CABLE_BP)", - UIinfo={"groupes":("Modélisation",)}, - MODELE =SIMP(statut='o',typ=modele_sdaster ), - CHAM_MATER =SIMP(statut='o',typ=cham_mater ), - CARA_ELEM =SIMP(statut='o',typ=cara_elem ), - GROUP_MA_BETON =SIMP(statut='o',typ=grma,max='**'), - DEFI_CABLE =FACT(statut='o',max='**', - regles=(UN_PARMI('MAILLE','GROUP_MA'), - UN_PARMI('NOEUD_ANCRAGE','GROUP_NO_ANCRAGE'),), - MAILLE =SIMP(statut='f',typ=ma,min=2,validators=NoRepeat(),max='**'), - GROUP_MA =SIMP(statut='f',typ=grma), - NOEUD_ANCRAGE =SIMP(statut='f',typ=no ,validators=NoRepeat(),max=2), - GROUP_NO_ANCRAGE=SIMP(statut='f',typ=grno,validators=NoRepeat(),max=2), - GROUP_NO_FUT =SIMP(statut='f',typ=grno,validators=NoRepeat(),max=2), - TENSION_CT =SIMP(statut='f',typ=table_sdaster), - ), - ADHERENT =SIMP(statut='o',typ='TXM',defaut='OUI',into=("OUI","NON") ), - TYPE_ANCRAGE =SIMP(statut='o',typ='TXM',min=2,max=2,into=("ACTIF","PASSIF") ), - TENSION_INIT =SIMP(statut='o',typ='R',val_min=0.E+0 ), - RECUL_ANCRAGE =SIMP(statut='o',typ='R',val_min=0.E+0 ), - TYPE_RELAX =SIMP(statut='o',typ='TXM',into=("SANS","BPEL","ETCC_DIRECT","ETCC_REPRISE"),defaut="SANS",), - R_J =SIMP(statut='f',typ='R',val_min=0.E+0), - NBH_RELAX =SIMP(statut='f',typ='R',val_min=0.E+0), -# PERT_ELAS =SIMP(statut='o',typ='TXM',into=("OUI","NON"),defaut="NON"), -# EP_BETON =SIMP(statut='f',typ='R',val_min=0.E+0), -# ESP_CABLE =SIMP(statut='f',typ='R',val_min=0.E+0), - TITRE =SIMP(statut='f',typ='TXM',max='**' ), - INFO =SIMP(statut='f',typ='I',defaut= 1,into=( 1 , 2) ), - CONE =FACT(statut='f',min=0, - RAYON =SIMP(statut='o',typ='R',val_min=0.E+0 ), - LONGUEUR =SIMP(statut='o',typ='R',val_min=0.E+0, defaut=0.E+0 ), - PRESENT =SIMP(statut='o',typ='TXM',min=2,max=2,into=("OUI","NON") ), - ), -) ; - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2012 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: jean-michel.proix at edf.fr -DEFI_COMPOR=OPER(nom="DEFI_COMPOR",op=59,sd_prod=compor_sdaster, - fr="Définir le comportement d'un monocristal, d'un polycristal ou de groupes de fibres", - reentrant='n', - UIinfo={"groupes":("Modélisation",)}, -# on exclut MULTIFBRE de MONOCRISTAL ou POLYCRISTAL car la structure de données n'est pas organisée pareil pour ces cas - regles=(UN_PARMI('MONOCRISTAL','POLYCRISTAL','MULTIFIBRE'), - PRESENT_PRESENT('MULTIFIBRE','GEOM_FIBRE','MATER_SECT'), - ), - MONOCRISTAL =FACT(statut='f', max=5, - MATER =SIMP(statut='o', typ=mater_sdaster, max=1), - ECOULEMENT =SIMP(statut='o', typ='TXM', max=1, - into=('MONO_VISC1', 'MONO_VISC2', 'MONO_DD_KR', 'MONO_DD_CFC', 'MONO_DD_CFC_IRRA', - 'MONO_DD_CC', 'MONO_DD_CC_IRRA', 'MONO_DD_FAT',), - fr="Donner le nom du mot-clé facteur de DEFI_MATERIAU précisant le type d'écoulement viscoplastique"), - ELAS =SIMP(statut='f', typ='TXM', max=1, - fr="Donner le nom du mot-clé facteur de DEFI_MATERIAU précisant le comportement élastique (un et un seul)"), - b_non_dd =BLOC(condition="ECOULEMENT=='MONO_VISC1' or ECOULEMENT=='MONO_VISC2'", - ECRO_ISOT =SIMP(statut='o', typ='TXM', max=1, - fr="Donner le nom du mot-clé facteur de DEFI_MATERIAU précisant le type d'écrouissage isotrope"), - ECRO_CINE =SIMP(statut='o', typ='TXM', max=1, - fr="Donner le nom du mot-clé facteur de DEFI_MATERIAU précisant le type d'écrouissage cinématique"), - FAMI_SYST_GLIS =SIMP(statut='f',typ='TXM', max=1, - into=('OCTAEDRIQUE','BCC24','CUBIQUE1','CUBIQUE2','ZIRCONIUM','UNIAXIAL','UTILISATEUR'), - ), - b_util =BLOC(condition="FAMI_SYST_GLIS=='UTILISATEUR' ", - TABL_SYST_GLIS =SIMP(statut='f', typ=table_sdaster, max=1,), - ), - ), - b_dd_kr =BLOC(condition="ECOULEMENT=='MONO_DD_KR' ", - FAMI_SYST_GLIS =SIMP(statut='f',typ='TXM', max=1, - into=('BCC24','UTILISATEUR'),defaut=('BCC24',),), - b_util =BLOC(condition="FAMI_SYST_GLIS=='UTILISATEUR' ", - TABL_SYST_GLIS =SIMP(statut='f', typ=table_sdaster, max=1,), - ), - ), - b_ecp_cfc =BLOC(condition="ECOULEMENT=='MONO_DD_FAT' ", - FAMI_SYST_GLIS =SIMP(statut='f',typ='TXM', max=1, - into=('OCTAEDRIQUE','UTILISATEUR',),defaut=('OCTAEDRIQUE',),), - ), - b_dd_cfc =BLOC(condition="ECOULEMENT=='MONO_DD_CFC' or ECOULEMENT=='MONO_DD_CFC_IRRA'", - FAMI_SYST_GLIS =SIMP(statut='f',typ='TXM', max=1, - into=('OCTAEDRIQUE','UTILISATEUR',),defaut=('OCTAEDRIQUE',),), - b_util =BLOC(condition="FAMI_SYST_GLIS=='UTILISATEUR' ", - TABL_SYST_GLIS =SIMP(statut='f', typ=table_sdaster, max=1,), - ), - ), - b_dd_cc =BLOC(condition="ECOULEMENT=='MONO_DD_CC' or ECOULEMENT=='MONO_DD_CC_IRRA' ", - FAMI_SYST_GLIS =SIMP(statut='f',typ='TXM', max=1, - into=('CUBIQUE1','UTILISATEUR',),defaut=('CUBIQUE1',),), - b_util =BLOC(condition="FAMI_SYST_GLIS=='UTILISATEUR' ", - TABL_SYST_GLIS =SIMP(statut='f', typ=table_sdaster, max=1,), - ), - ), - ), - - MATR_INTER =SIMP(statut='f', typ=table_sdaster, max=1,), - - ROTA_RESEAU =SIMP(statut='f', typ='TXM', max=1,into=('NON','POST','CALC'),defaut='NON', - fr="rotation de reseau : NON, POST, CALC"), - - POLYCRISTAL =FACT(statut='f', max='**', - regles=(UN_PARMI('ANGL_REP','ANGL_EULER'),), - MONOCRISTAL =SIMP(statut='o', typ=compor_sdaster, max=1), - FRAC_VOL =SIMP(statut='o', typ='R', max=1,fr="fraction volumique de la phase correspondant au monocristal"), - ANGL_REP =SIMP(statut='f',typ='R',max=3,fr="orientation du monocristal : 3 angles nautiques en degrés"), - ANGL_EULER=SIMP(statut='f',typ='R',max=3,fr="orientation du monocristal : 3 angles d'Euler en degrés"), - ), - - - b_poly =BLOC( condition = "POLYCRISTAL!='None'", - LOCALISATION =SIMP(statut='f', typ='TXM', max=1, into=('BZ', 'BETA', 'RL',), - fr="Donner le nom de la règle de localisation"), - - b_beta =BLOC( condition = "LOCALISATION=='BETA'", - DL =SIMP(statut='o',typ='R',max=1), - DA =SIMP(statut='o',typ='R',max=1), - ), - ), - -##################################################################################### - GEOM_FIBRE = SIMP(statut='f',max=1,typ=gfibre_sdaster, - fr="Donner le nom du concept regroupant tous les groupes de fibres (issu de DEFI_GEOM_FIBRE)"), - MATER_SECT = SIMP(statut='f',max=1,typ=mater_sdaster, - fr="Donner le nom du materiau pour les caracteristiques homogeneisees sur la section"), - MULTIFIBRE = FACT(statut='f',max='**', - GROUP_FIBRE =SIMP(statut='o', typ='TXM', max='**'), - MATER =SIMP(statut='o', typ=mater_sdaster, max=1, - fr="Donner le nom du materiau pour le groupe de fibres"), - RELATION =SIMP(statut='f', typ='TXM', max=1,defaut="ELAS",into=C_RELATION('DEFI_COMPOR'), - fr="Donner le nom de la relation incrementale pour le groupe de fibres", - ), - RELATION_KIT =SIMP(statut='f',typ='TXM',max='**',validators=NoRepeat(), - into=( -# MECA KIT_DDI - "VMIS_ISOT_TRAC", - "VMIS_ISOT_LINE", - "VMIS_ISOT_PUIS", - "GRANGER_FP", - "GRANGER_FP_INDT", - "GRANGER_FP_V", - "BETON_UMLV_FP", - "ROUSS_PR", - "BETON_DOUBLE_DP", - ),), -# on pourrait ajouter TOUT_GROUP_FIBRE - - ) ); - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2012 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: xavier.desroches at edf.fr -DEFI_COMPOSITE=OPER(nom="DEFI_COMPOSITE",op=56,sd_prod=mater_sdaster,reentrant='n', - UIinfo={"groupes":("Modélisation",)}, - fr="Déterminer les caractéristiques matériaux homogénéisées d'une coque multicouche à partir" - +" des caractéristiques de chaque couche", - COUCHE =FACT(statut='o',max='**', - EPAIS =SIMP(statut='o',typ='R',val_min=0.E+0 ), - MATER =SIMP(statut='o',typ=(mater_sdaster) ), - ORIENTATION =SIMP(statut='f',typ='R',defaut= 0.E+0, - val_min=-90.E+0,val_max=90.E+0 ), - ), - IMPRESSION =FACT(statut='f', - UNITE =SIMP(statut='f',typ='I',defaut=8), - ), -) ; - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: mathieu.courtois at edf.fr -DEFI_CONSTANTE=OPER(nom="DEFI_CONSTANTE",op= 2,sd_prod=fonction_sdaster, - fr="Définir la valeur d'une grandeur invariante", - reentrant='n', - UIinfo={"groupes":("Fonctions",)}, - NOM_RESU =SIMP(statut='f',typ='TXM',defaut="TOUTRESU"), - VALE =SIMP(statut='o',typ='R',), - TITRE =SIMP(statut='f',typ='TXM',max='**'), -) ; - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2013 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: mickael.abbas at edf.fr -# -DEFI_CONTACT=OPER(nom = "DEFI_CONTACT", - op = 30, - sd_prod = char_contact, - fr = "Définit les zones soumises à des conditions de contact unilatéral avec ou sans frottement", - #en = "Allows the definition of contact surfaces as well as unilateral conditions", - reentrant = 'n', - UIinfo = {"groupes":("Modélisation",)}, - -# MODELE - - MODELE =SIMP(statut='o',typ=modele_sdaster,), - INFO =SIMP(statut='f',typ='I',into=(1,2),), - -# FORMULATION (UNIQUE PAR OCCURRENCE DE DEFI_CONTACT) - - FORMULATION =SIMP(statut='o', - position='global', - typ='TXM', - fr="Choix d'une formulation de contact ou de liaisons unilatérales", - defaut="DISCRETE", - into=("DISCRETE","CONTINUE","XFEM","LIAISON_UNIL",),), - -# PARAMETRE GENERAL : FROTTEMENT - - FROTTEMENT =SIMP(statut='f', - position='global', - typ='TXM', - fr="Choix d'un modèle de frottement (uniquement pour les formulations de contact)", - defaut="SANS", - into=("COULOMB","SANS",)), - -### PARAMETRES GENERAUX (UNIQUEMENT POUR LE CONTACT MAILLE, NE DEPENDENT PAS DE LA ZONE DE CONTACT) - - b_contact_mail=BLOC(condition = "((FORMULATION == 'CONTINUE') or (FORMULATION == 'DISCRETE'))", -# ARRET DU CALCUL POUR LE MODE SANS RESOLUTION DU CONTACT - STOP_INTERP = SIMP(statut='f', - typ='TXM', - fr="Arrête le calcul dès qu'une interpénétration est détectée en mode RESOLUTION='NON'", - defaut="NON", - into=("OUI","NON")), -# LISSAGE DES NORMALES PAR MOYENNATION AUX NOEUDS - LISSAGE = SIMP(statut='f', - typ='TXM', - fr="Lissage des normales par moyennation aux noeuds", - defaut="NON", - into=("OUI","NON")), -# VERIFICATION DE L'ORIENTATION ET DE LA COHERENCE DES NORMALES - VERI_NORM =SIMP(statut='f', - typ='TXM', - fr="Vérification de l'orientation (sortante) des normales aux surfaces", - defaut="OUI", - into=("OUI","NON"),), - ), - -### PARAMETRES GENERAUX (UNIQUEMENT POUR LE CONTACT, NE DEPENDENT PAS DE LA ZONE DE CONTACT) - - b_contact=BLOC(condition = "FORMULATION != 'LIAISON_UNIL' ", - -# PARAMETRE GENERAL : BOUCLE DE GEOMETRIE - Cas discret - - b_bouc_geom_maild=BLOC(condition = "FORMULATION == 'DISCRETE'", - ALGO_RESO_GEOM = SIMP(statut='f', - typ='TXM', - into=("POINT_FIXE",), - defaut="POINT_FIXE"), - REAC_GEOM = SIMP(statut='f', - typ='TXM', - into=("AUTOMATIQUE","CONTROLE","SANS",), - defaut="AUTOMATIQUE"), - b_automatique = BLOC(condition = "REAC_GEOM == 'AUTOMATIQUE' ", - ITER_GEOM_MAXI = SIMP(statut='f',typ='I',defaut=10), - RESI_GEOM = SIMP(statut='f',typ='R',defaut=0.01)), - b_controle = BLOC(condition = "REAC_GEOM == 'CONTROLE' ", - NB_ITER_GEOM = SIMP(statut='f',typ='I',defaut = 2)), - )), - -# PARAMETRE GENERAL : BOUCLE DE GEOMETRIE - Cas continu - - b_bouc_geom_mailc=BLOC(condition = "FORMULATION == 'CONTINUE'", - ALGO_RESO_GEOM = SIMP(statut='f', - typ='TXM', - into=("POINT_FIXE","NEWTON",), - defaut="POINT_FIXE"), - b_algo_reso_geomNE = BLOC(condition = "ALGO_RESO_GEOM=='NEWTON'", - RESI_GEOM = SIMP(statut='f',typ='R',defaut=0.000001),), - - b_algo_reso_geomPF = BLOC(condition = "ALGO_RESO_GEOM=='POINT_FIXE'", - REAC_GEOM = SIMP(statut='f', - typ='TXM', - into=("AUTOMATIQUE","CONTROLE","SANS",), - defaut="AUTOMATIQUE"), - b_automatique = BLOC(condition = "REAC_GEOM == 'AUTOMATIQUE' ", - ITER_GEOM_MAXI = SIMP(statut='f',typ='I',defaut=10), - RESI_GEOM = SIMP(statut='f',typ='R',defaut=0.01)), - b_controle = BLOC(condition = "REAC_GEOM == 'CONTROLE' ", - NB_ITER_GEOM = SIMP(statut='f',typ='I',defaut = 2))) - ), - -# PARAMETRE GENERAL : BOUCLE DE GEOMETRIE - Cas XFEM - - b_bouc_geom_xfem=BLOC(condition = "FORMULATION == 'XFEM' ", - ALGO_RESO_GEOM = SIMP(statut='f', - typ='TXM', - into=("POINT_FIXE",), - defaut="POINT_FIXE"), - REAC_GEOM =SIMP(statut='f', - typ='TXM', - into=("AUTOMATIQUE","CONTROLE","SANS",), - defaut="SANS", - ), - b_automatique = BLOC(condition = "REAC_GEOM == 'AUTOMATIQUE' ", - ITER_GEOM_MAXI = SIMP(statut='f',typ='I',defaut=10), - RESI_GEOM = SIMP(statut='f',typ='R',defaut=0.0001), - ), - b_controle = BLOC(condition = "REAC_GEOM == 'CONTROLE' ", - NB_ITER_GEOM = SIMP(statut='f',typ='I',defaut = 2), - ), - ), - - -# PARAMETRE GENERAL : BOUCLE DE CONTACT - - b_bouc_cont_disc=BLOC(condition = "FORMULATION == 'DISCRETE' ", - ITER_CONT_MULT = SIMP(statut='f',typ='I',defaut = 4), - ), - - - b_bouc_cont_cont=BLOC(condition = "FORMULATION == 'CONTINUE' ", - ALGO_RESO_CONT = SIMP(statut='f',typ='TXM',defaut="NEWTON", - into=("POINT_FIXE","NEWTON")), - b_algo_reso_contPF = BLOC(condition = "ALGO_RESO_CONT=='POINT_FIXE'", - ITER_CONT_TYPE = SIMP(statut='f',typ='TXM',defaut="MAXI", - into=("MULT","MAXI")), - b_bouc_cont_mult = BLOC(condition = "ITER_CONT_TYPE=='MULT'", - ITER_CONT_MULT = SIMP(statut='f',typ='I',defaut = 4), - ), - b_bouc_cont_maxi = BLOC(condition = "ITER_CONT_TYPE=='MAXI'", - ITER_CONT_MAXI = SIMP(statut='f',typ='I',defaut = 30), - ), - ) - ), - - b_bouc_cont_xfem=BLOC(condition = "FORMULATION == 'XFEM' ", - ITER_CONT_TYPE= SIMP(statut='f',typ='TXM',defaut="MAXI", - into=("MULT","MAXI")), - b_bouc_cont_mult = BLOC(condition = "ITER_CONT_TYPE=='MULT'", - ITER_CONT_MULT = SIMP(statut='f',typ='I',defaut = 4), - ), - b_bouc_cont_maxi = BLOC(condition = "ITER_CONT_TYPE=='MAXI'", - ITER_CONT_MAXI = SIMP(statut='f',typ='I',defaut = 30), - ), - ), - -# PARAMETRE GENERAL : BOUCLE DE FROTTEMENT - Cas continu - - b_bouc_frot_cont= BLOC(condition = "FROTTEMENT=='COULOMB' and FORMULATION == 'CONTINUE' ", - ALGO_RESO_FROT = SIMP(statut='f', - typ='TXM', - into=("POINT_FIXE","NEWTON",), - defaut="NEWTON"), - b_algo_reso_frotPF = BLOC(condition = "ALGO_RESO_FROT=='POINT_FIXE'", - ITER_FROT_MAXI = SIMP(statut='f',typ='I',defaut=10), - RESI_FROT = SIMP(statut='f',typ='R',defaut=0.0001), - ), - b_algo_reso_frotNE = BLOC(condition = "ALGO_RESO_FROT=='NEWTON'", - - RESI_FROT = SIMP(statut='f',typ='R',defaut=0.0001), - ADAPT_COEF = SIMP(statut='f', - typ='TXM', - defaut="NON", - into=("OUI","NON")), - ), - ), - - -# PARAMETRE GENERAL : BOUCLE DE FROTTEMENT - Cas XFEM - - b_bouc_frot_xfem= BLOC(condition = "FROTTEMENT=='COULOMB' and FORMULATION == 'XFEM' ", - ITER_FROT_MAXI = SIMP(statut='f',typ='I',defaut=10), - RESI_FROT = SIMP(statut='f',typ='R',defaut=0.0001), - ), - -# PARAMETRES GENERAUX : METHODES DISCRETES - - b_para_discret = BLOC(condition = "FORMULATION == 'DISCRETE' ", -# ## METHODES DE DUALISATION ## - STOP_SINGULIER= SIMP(statut='f', - typ='TXM', - fr="Tient compte de la singularité de la matrice de contact", - defaut="OUI", - into=("OUI","NON"),), - NB_RESOL = SIMP(statut='f', - typ='I', - fr="Nombre de résolutions simultanées pour la construction du complément de Schur", - defaut=10,), -# ## GCP ## - RESI_ABSO = SIMP(statut='f', - typ='R', - fr="Critère de convergence (niveau d'interpénétration autorisé pour 'GCP')",), - ITER_GCP_MAXI = SIMP(statut='f', - typ='I', - fr="Nombre d'itérations maximal ('GCP')", - defaut=0,), - RECH_LINEAIRE = SIMP(statut='f', - typ='TXM', - fr="Autorisation de sortie du domaine admissible lors de la recherche linéaire", - defaut="ADMISSIBLE", - into=("ADMISSIBLE","NON_ADMISSIBLE"),), - PRE_COND = SIMP(statut='f', - typ='TXM', - fr="Choix d'un préconditionneur (accélère la convergence de 'GCP')", - defaut="SANS", - into=("DIRICHLET","SANS"),), - b_dirichlet = BLOC (condition = "PRE_COND == 'DIRICHLET'", - COEF_RESI = SIMP(statut='f', - typ='R', - fr="Activation du préconditionneur quand le résidu a été divisé par COEF_RESI", - defaut = -1.0,), - ITER_PRE_MAXI = SIMP(statut='f', - typ='I', - fr="Nombre d'itérations maximal pour le préconditionneur ('GCP')", - defaut=0,), - ), - ), - -## AFFECTATIONS (ZONES PAR ZONES) - -# AFFECTATION - CAS LIAISON_UNILATERALE - - b_affe_unil = BLOC(condition = "FORMULATION == 'LIAISON_UNIL'", - ZONE=FACT(statut='o', - max='**', -# -- Liaison unilatérale - regles=(UN_PARMI('GROUP_MA','MAILLE','GROUP_NO','NOEUD'),), - GROUP_MA =SIMP(statut='f',typ=grma ,validators=NoRepeat(),max='**'), - MAILLE =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), - GROUP_NO =SIMP(statut='f',typ=grno ,validators=NoRepeat(),max='**'), - NOEUD =SIMP(statut='f',typ=no ,validators=NoRepeat(),max='**'), -# - NOM_CMP =SIMP(statut='o',typ='TXM',max='**'), - COEF_IMPO =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule),), - COEF_MULT =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule),max='**'), -# -- Incompatibilité avec CL - SANS_NOEUD =SIMP(statut='f',typ=no ,validators=NoRepeat(),max='**'), - SANS_GROUP_NO =SIMP(statut='f',typ=grno ,validators=NoRepeat(),max='**'), - - - ), - ), - -# AFFECTATION - CAS DISCRET - - b_affe_discret = BLOC(condition = "FORMULATION == 'DISCRETE'", - ZONE=FACT(statut='o', - max='**', -# -- Appariement - APPARIEMENT =SIMP(statut='f',typ='TXM',defaut="MAIT_ESCL", - into=("NODAL","MAIT_ESCL"),), -# - regles=(UN_PARMI('GROUP_MA_ESCL','MAILLE_ESCL'), - UN_PARMI('GROUP_MA_MAIT','MAILLE_MAIT'),), - GROUP_MA_MAIT =SIMP(statut='f',typ=grma ,validators=NoRepeat(),max=1), - MAILLE_MAIT =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), - GROUP_MA_ESCL =SIMP(statut='f',typ=grma ,validators=NoRepeat(),max=1), - MAILLE_ESCL =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), -# - NORMALE =SIMP(statut='f',typ='TXM',defaut="MAIT", - into=("MAIT","MAIT_ESCL","ESCL"),), -# - VECT_MAIT =SIMP(statut='f',typ='TXM',defaut="AUTO", - into=("AUTO","FIXE","VECT_Y")), - - b_nmait_fixe=BLOC(condition = "VECT_MAIT == 'FIXE'", - MAIT_FIXE =SIMP(statut='o',typ='R',min=3,max=3), - ), - - b_nmait_vecty=BLOC(condition = "VECT_MAIT == 'VECT_Y'", - MAIT_VECT_Y =SIMP(statut='o',typ='R',min=3,max=3), - ), -# - VECT_ESCL =SIMP(statut='f',typ='TXM',defaut="AUTO", - into=("AUTO","FIXE","VECT_Y")), - - b_nescl_fixe=BLOC(condition = "VECT_ESCL == 'FIXE'", - ESCL_FIXE =SIMP(statut='o',typ='R',min=3,max=3), - ), - - b_nescl_vecty=BLOC(condition = "VECT_ESCL == 'VECT_Y'", - ESCL_VECT_Y =SIMP(statut='o',typ='R',min=3,max=3), - ), -# - TYPE_APPA =SIMP(statut='f',typ='TXM',defaut="PROCHE", - into =("PROCHE","FIXE")), - - b_appa_fixe =BLOC(condition = "TYPE_APPA == 'FIXE'", - DIRE_APPA =SIMP(statut='f',typ='R',min=3,max=3), - ), -# - DIST_POUTRE =SIMP(statut='f',typ='TXM',defaut="NON", into=("OUI","NON")), - DIST_COQUE =SIMP(statut='f',typ='TXM',defaut="NON", into=("OUI","NON")), - b_cara=BLOC(condition = "DIST_POUTRE == 'OUI' or DIST_COQUE == 'OUI'", - CARA_ELEM =SIMP(statut='o',typ=(cara_elem) ), - ), - - DIST_MAIT =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - DIST_ESCL =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), -# - TOLE_APPA =SIMP(statut='f',typ='R' ,defaut=-1.0), - TOLE_PROJ_EXT =SIMP(statut='f',typ='R' ,defaut=0.50), -# -- Incompatibilité avec CL - SANS_NOEUD =SIMP(statut='f',typ=no ,validators=NoRepeat(),max='**'), - SANS_GROUP_NO =SIMP(statut='f',typ=grno ,validators=NoRepeat(),max='**'), - SANS_MAILLE =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), - SANS_GROUP_MA =SIMP(statut='f',typ=grma ,validators=NoRepeat(),max='**'), -# -- Mode sans calcul - RESOLUTION =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON")), - b_verif=BLOC(condition = "RESOLUTION == 'NON' ", - TOLE_INTERP = SIMP(statut='f',typ='R',defaut = 0.), - ), -# -- Résolution - ALGO_CONT =SIMP(statut='o',typ='TXM',defaut="CONTRAINTE", - into=("CONTRAINTE","LAGRANGIEN","PENALISATION","GCP"),), - - b_active=BLOC(condition = "ALGO_CONT == 'CONTRAINTE' ", - fr="Paramètres de la méthode des contraintes actives (contact uniquement)", - GLISSIERE=SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON")), - b_glissiere=BLOC(condition = "GLISSIERE == 'OUI' ", - ALARME_JEU =SIMP(statut='f',typ='R',defaut=0.), - ), - ), -# - b_penal_contact=BLOC(condition = "ALGO_CONT == 'PENALISATION' ", - fr="Paramètres de la méthode pénalisée (contact)", - E_N=SIMP(statut='o',typ='R'), - ), -# - b_frottement=BLOC(condition = "FROTTEMENT == 'COULOMB' ", - fr="Paramètres du frottement de Coulomb", - COULOMB =SIMP(statut='o',typ='R',), - COEF_MATR_FROT=SIMP(statut='f',typ='R',defaut=0.E+0), - ALGO_FROT =SIMP(statut='o',typ='TXM',defaut="PENALISATION", - into=("PENALISATION","LAGRANGIEN"),), -# - b_penal_frot=BLOC(condition = "ALGO_FROT == 'PENALISATION' ", - fr="Paramètres de la méthode pénalisée (frottement)", - E_T=SIMP(statut='o',typ='R'), - ), - ), - ), #fin mot-clé facteur ZONE - ), #fin bloc b_affe_discret - -# AFFECTATION - CAS CONTINUE - - b_affe_continue = BLOC(condition = "FORMULATION == 'CONTINUE'", - ZONE=FACT(statut='o', - max='**', -# -- Appariement - APPARIEMENT =SIMP(statut='f',typ='TXM',defaut="MAIT_ESCL", - into=("MAIT_ESCL",)), - - -# - regles=(UN_PARMI('GROUP_MA_ESCL','MAILLE_ESCL'), - UN_PARMI('GROUP_MA_MAIT','MAILLE_MAIT'),), - GROUP_MA_MAIT =SIMP(statut='f',typ=grma ,validators=NoRepeat(),max=1), - MAILLE_MAIT =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), - GROUP_MA_ESCL =SIMP(statut='f',typ=grma ,validators=NoRepeat(),max=1), - MAILLE_ESCL =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), -# - NORMALE =SIMP(statut='f',typ='TXM',defaut="MAIT", - into=("MAIT","MAIT_ESCL","ESCL"),), -# - VECT_MAIT =SIMP(statut='f',typ='TXM',defaut="AUTO", - into=("AUTO","FIXE","VECT_Y")), - - b_nmait_fixe=BLOC(condition = "VECT_MAIT == 'FIXE'", - MAIT_FIXE =SIMP(statut='o',typ='R',min=3,max=3), - ), - - b_nmait_vecty=BLOC(condition = "VECT_MAIT == 'VECT_Y'", - MAIT_VECT_Y =SIMP(statut='o',typ='R',min=3,max=3), - ), -# - VECT_ESCL =SIMP(statut='f',typ='TXM',defaut="AUTO", - into=("AUTO","FIXE","VECT_Y")), - - b_nescl_fixe=BLOC(condition = "VECT_ESCL == 'FIXE'", - ESCL_FIXE =SIMP(statut='o',typ='R',min=3,max=3), - ), - - b_nescl_vecty=BLOC(condition = "VECT_ESCL == 'VECT_Y'", - ESCL_VECT_Y =SIMP(statut='o',typ='R',min=3,max=3), - ), -# - TYPE_APPA =SIMP(statut='f',typ='TXM',defaut="PROCHE", - into =("PROCHE","FIXE")), - - b_appa_fixe=BLOC(condition = "TYPE_APPA == 'FIXE'", - DIRE_APPA =SIMP(statut='f',typ='R',min=3,max=3), - ), -# - DIST_POUTRE =SIMP(statut='f',typ='TXM',defaut="NON", into=("OUI","NON")), - DIST_COQUE =SIMP(statut='f',typ='TXM',defaut="NON", into=("OUI","NON")), - b_cara=BLOC(condition = "DIST_POUTRE == 'OUI' or DIST_COQUE == 'OUI'", - CARA_ELEM =SIMP(statut='o',typ=(cara_elem) ), - ), - - DIST_MAIT =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - DIST_ESCL =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), -# - TOLE_APPA =SIMP(statut='f',typ='R' ,defaut=-1.0), - TOLE_PROJ_EXT =SIMP(statut='f',typ='R' ,defaut=0.50), -# -- Incompatibilité avec CL - SANS_NOEUD =SIMP(statut='f',typ=no ,validators=NoRepeat(),max='**'), - SANS_GROUP_NO =SIMP(statut='f',typ=grno ,validators=NoRepeat(),max='**'), - SANS_MAILLE =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), - SANS_GROUP_MA =SIMP(statut='f',typ=grma ,validators=NoRepeat(),max='**'), -# -- Mode sans calcul - RESOLUTION =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON")), - b_verif=BLOC(condition = "RESOLUTION == 'NON' ", - TOLE_INTERP = SIMP(statut='f',typ='R',defaut = 0.), - ), -# -- Fonctionnalités spécifiques 'CONTINUE' - - INTEGRATION =SIMP(statut='f',typ='TXM',defaut="AUTO", - into=("AUTO","GAUSS","SIMPSON","NCOTES",),), - b_gauss =BLOC(condition = "INTEGRATION == 'GAUSS' ", - fr="Degré du polynôme de Legendre donnant les points de Gauss", - ORDRE_INT = SIMP(statut='f',typ='I',defaut=3,val_min=1,val_max=6), - ), - b_simpson =BLOC(condition = "INTEGRATION == 'SIMPSON' ", - fr="Nombre de subdivisions du domaine", - ORDRE_INT = SIMP(statut='f',typ='I',defaut=1,val_min=1,val_max=4), - ), - b_ncotes =BLOC(condition = "INTEGRATION == 'NCOTES' ", - fr="Degré du polynôme interpolateur", - ORDRE_INT = SIMP(statut='f',typ='I',defaut=3,val_min=3,val_max=8), - ), -# - CONTACT_INIT =SIMP(statut='f',typ='TXM',defaut="INTERPENETRE", - into=("OUI","INTERPENETRE","NON"),), -# - GLISSIERE =SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON"),), -# - ALGO_CONT =SIMP(statut='f',typ='TXM',defaut="STANDARD", - into=("STANDARD","PENALISATION"),), - - b_cont_std=BLOC(condition = "ALGO_CONT == 'STANDARD' ", - fr="Paramètres de la formulation Lagrangienne", - COEF_CONT = SIMP(statut='f',typ='R',defaut=100.E+0), - ), - b_cont_pena=BLOC(condition = "ALGO_CONT == 'PENALISATION' ", - fr="Paramètres de la méthode pénalisée", - COEF_PENA_CONT =SIMP(statut='o',typ='R'), - ), -# - b_frottement=BLOC(condition = "FROTTEMENT == 'COULOMB' ", - fr="Paramètres du frottement de Coulomb", - COULOMB = SIMP(statut='o',typ='R',), - SEUIL_INIT = SIMP(statut='f',typ='R',defaut=0.E+0), -# - regles=(EXCLUS('SANS_NOEUD_FR','SANS_GROUP_NO_FR'),), - SANS_NOEUD_FR =SIMP(statut='f',typ=no ,validators=NoRepeat(),max='**'), - SANS_GROUP_NO_FR =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'), - b_sans_group_no_frot=BLOC(condition = " SANS_GROUP_NO_FR != None or \ - SANS_NOEUD_FR != None ", - fr="Direction de frottement à exclure (uniquement dans le cas 3D)", - DIRE_EXCL_FROT=SIMP(statut='f',typ='R',min=3,max=3), - ), - - ALGO_FROT =SIMP(statut='f',typ='TXM',defaut="STANDARD", - into=("STANDARD","PENALISATION"),), - b_frot_std =BLOC(condition = "ALGO_FROT == 'STANDARD' ", - fr="Paramètres de la formulation Lagrangienne", - COEF_FROT =SIMP(statut='f',typ='R',defaut=100.E+0), - ), - - b_frot_pena =BLOC(condition = "ALGO_FROT == 'PENALISATION' ", - fr="Paramètres de la méthode pénalisée", - COEF_PENA_FROT =SIMP(statut='o',typ='R'), - ), - - ), #fin bloc b_frottement - ), #fin mot-clé facteur ZONE - ), #fin bloc b_affe_continue - - -# AFFECTATION - CAS XFEM - - b_affe_xfem =BLOC(condition = "FORMULATION == 'XFEM'", - ZONE=FACT(statut='o', - max='**', -# -- Fissure - FISS_MAIT = SIMP(statut='o',typ=fiss_xfem,max=1), - TOLE_PROJ_EXT =SIMP(statut='f',typ='R' ,defaut=0.50), - -# -- Fonctionnalités spécifiques 'XFEM' - INTEGRATION = SIMP(statut='f', - typ='TXM', - defaut="GAUSS", - - into=("NOEUD","GAUSS","SIMPSON","NCOTES",),), - b_gauss =BLOC(condition = "INTEGRATION == 'GAUSS' ", - fr="Dégré du polynôme de Legendre donnant les points de Gauss", - ORDRE_INT = SIMP(statut='f',typ='I',defaut=6,val_min=1,val_max=6), - ), - b_simpson =BLOC(condition = "INTEGRATION == 'SIMPSON' ", - fr="Nombre de subdivisions du domaine", - ORDRE_INT = SIMP(statut='f',typ='I',defaut=1,val_min=1,val_max=4), - ), - b_ncotes =BLOC(condition = "INTEGRATION == 'NCOTES' ", - fr="Dégré du polynôme interpolateur", - ORDRE_INT = SIMP(statut='f',typ='I',defaut=3,val_min=3,val_max=8), - ), - - ALGO_LAGR = SIMP(statut='f',typ='TXM',defaut="VERSION1", - into=("NON","VERSION1","VERSION2"),), - - ALGO_CONT = SIMP(statut='f',typ='TXM',defaut="STANDARD", - into=("STANDARD","PENALISATION","CZM"),), - - b_cont_nczm =BLOC(condition = "ALGO_CONT!='CZM'", - CONTACT_INIT = SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON"),), - GLISSIERE = SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON"),), - ), - - b_cont_std=BLOC(condition = "ALGO_CONT == 'STANDARD'", - fr="Parametres de la formulation Lagrangienne", - COEF_CONT =SIMP(statut='f',typ='R',defaut=100.E+0), - ), - - b_cont_pen=BLOC(condition = "ALGO_CONT == 'PENALISATION' ", - fr="Paramètre de la méthode pénalisée", - COEF_PENA_CONT =SIMP(statut='o',typ='R'), - ), - - b_cont_czm=BLOC(condition = "ALGO_CONT == 'CZM'", - fr="Parametres de la formulation cohesive", - RELATION = SIMP(statut='o',typ='TXM', - into=("CZM_EXP_REG","CZM_LIN_REG","CZM_TAC_MIX","CZM_OUV_MIX"),) - ), - - b_frottement=BLOC(condition = "FROTTEMENT == 'COULOMB' and ALGO_CONT != 'CZM' ", - fr="Paramètres du frottement", - COULOMB =SIMP(statut='o',typ='R',), - SEUIL_INIT =SIMP(statut='f',typ='R',defaut=0.E+0), - ALGO_FROT =SIMP(statut='f',typ='TXM',defaut="STANDARD", - into=("STANDARD","PENALISATION"),), - - b_frot_std=BLOC(condition = "ALGO_FROT == 'STANDARD' ", - fr="Parametres de la formulation Lagrangienne", - COEF_FROT =SIMP(statut='f',typ='R',defaut=100.E+0), - ), - b_frot_pen=BLOC(condition = "ALGO_FROT == 'PENALISATION' ", - fr="Paramètre de la méthode pénalisée", - COEF_PENA_FROT =SIMP(statut='o',typ='R'), - ), - ), #fin bloc b_frottement - ), #fin mot-clé facteur ZONE - ), #fin bloc b_affe_xfem - - ) #fin OPER - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2012 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: j-pierre.lefebvre at edf.fr -def DEFIC_prod(self,ACTION,UNITE,**args): - if ACTION == "ASSOCIER" or ACTION == "RESERVER": - if UNITE != None : - return - else : - return entier - elif ACTION == "LIBERER" : - return - else : - raise AsException("ACTION non prevue : %s" % ACTION) - -DEFI_FICHIER=MACRO(nom="DEFI_FICHIER", - op=OPS("Cata.ops.build_DEFI_FICHIER"), - sd_prod=DEFIC_prod, - reentrant='n', - UIinfo={"groupes":("Gestion du travail",)}, - fr="Ouvre ou ferme un fichier associé à un numéro d'unité logique", - - ACTION =SIMP(statut='f',typ='TXM',into=("ASSOCIER","LIBERER","RESERVER"),defaut="ASSOCIER"), - - b_associer =BLOC(condition = "ACTION == 'ASSOCIER'", - fr="Paramètres pour l'ouverture du fichier", - regles=(AU_MOINS_UN('FICHIER','UNITE'),), - UNITE =SIMP(statut='f',typ='I' ,val_min=1), - FICHIER =SIMP(statut='f',typ='TXM',validators=LongStr(1,255)), - TYPE =SIMP(statut='f',typ='TXM',into=("ASCII","BINARY","LIBRE"),defaut="ASCII"), - - b_type_ascii =BLOC(condition = "TYPE == 'ASCII'",fr="Paramètres pour le type ASCII", - ACCES =SIMP(statut='f',typ='TXM',into=("NEW","APPEND","OLD"),defaut="NEW"), - ), - b_type_autre =BLOC(condition = "TYPE != 'ASCII'",fr="Paramètres pour les types BINARY et LIBRE", - ACCES =SIMP(statut='f',typ='TXM',into=("NEW","OLD"),defaut="NEW"), - ), - ), - - b_reserver =BLOC(condition = "ACTION == 'RESERVER'", - fr="Paramètres pour la réservation de l'unité du fichier", - regles=(AU_MOINS_UN('FICHIER','UNITE'),), - UNITE =SIMP(statut='f',typ='I' ,val_min=1), - FICHIER =SIMP(statut='f',typ='TXM',validators=LongStr(1,255)), - TYPE =SIMP(statut='f',typ='TXM',into=("ASCII",),defaut="ASCII"), - ACCES =SIMP(statut='f',typ='TXM',into=("APPEND",),defaut="APPEND"), - ), - - b_liberer =BLOC(condition = "ACTION == 'LIBERER'", - fr="Paramètres pour la fermeture du fichier", - regles=(UN_PARMI('FICHIER','UNITE'),), - UNITE =SIMP(statut='f',typ='I' ,val_min=1), - FICHIER =SIMP(statut='f',typ='TXM',validators=LongStr(1,255)), - ), - - INFO =SIMP(statut='f',typ='I',into=(1,2) ), - ) - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2012 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: samuel.geniaut at edf.fr - -DEFI_FISS_XFEM=OPER(nom="DEFI_FISS_XFEM",op= 41,sd_prod=fiss_xfem,reentrant='n', - UIinfo={"groupes":("Modélisation",)}, - fr="Définition des caratéristiques d'une fissure ou d'une interface avec X-FEM", - regles = EXCLUS('MODELE_GRILLE','FISS_GRILLE'), - -# ------------------------------------------------------------------------------------------------------------------------ -# modele sous-jacent -# ------------------------------------------------------------------------------------------------------------------------ - - MODELE =SIMP(statut='o',typ=modele_sdaster), - -# ------------------------------------------------------------------------------------------------------------------------ -# grille auxiliaire -# ------------------------------------------------------------------------------------------------------------------------ - - MODELE_GRILLE =SIMP(statut='f',typ=modele_sdaster,max=1,position='global'), - FISS_GRILLE =SIMP(statut='f',typ=fiss_xfem,max=1), - -# ------------------------------------------------------------------------------------------------------------------------ -# fissure/interface -# ------------------------------------------------------------------------------------------------------------------------ - - TYPE_DISCONTINUITE =SIMP(statut='f',typ='TXM',into=("FISSURE","INTERFACE",) ,defaut="FISSURE",position='global'), - -# ------------------------------------------------------------------------------------------------------------------------ -# caracteristiques de la fissure/interface -# ------------------------------------------------------------------------------------------------------------------------ - - DEFI_FISS =FACT(statut='o',max=1, - - regles =UN_PARMI('GROUP_MA_FISS','FONC_LN','FORM_FISS','CHAM_NO_LSN'), - -# impossible de faire des regles dans des blocs condition, dommage -# b_fissure =BLOC(condition = "TYPE_DISCONTINUITE == 'FISSURE' ",fr="Regles pour les fissures", -# regles =(ENSEMBLE('FONC_LN','FONC_LT'), -# ENSEMBLE('CHAM_NO_LSN','CHAM_NO_LST'), -# ENSEMBLE('GROUP_MA_FISS','GROUP_MA_FOND')), -# ), -# -# b_interface =BLOC(condition = "TYPE_DISCONTINUITE == 'INTERFACE' ",fr="Regles pour les interfaces", -# regles =(PRESENT_ABSENT('FONC_LN','FONC_LT'), -# PRESENT_ABSENT('CHAM_NO_LSN','CHAM_NO_LST'), -# PRESENT_ABSENT('GROUP_MA_FISS','GROUP_MA_FOND')), -# ), - - FONC_LT =SIMP(statut='f',typ=(fonction_sdaster,formule) ), - FONC_LN =SIMP(statut='f',typ=(fonction_sdaster,formule) ), - CHAM_NO_LSN =SIMP(statut='f',typ=cham_no_sdaster,min=1,max=1), - CHAM_NO_LST =SIMP(statut='f',typ=cham_no_sdaster,min=1,max=1), - GROUP_MA_FISS =SIMP(statut='f',typ=grma,min=1,max=1), - GROUP_MA_FOND =SIMP(statut='f',typ=grma,min=1,max=1), - FORM_FISS =SIMP(statut='f',typ='TXM',into=("ELLIPSE","RECTANGLE","CYLINDRE","DEMI_PLAN", - "SEGMENT","DEMI_DROITE","DROITE","ENTAILLE") ), - b_ellipse =BLOC(condition = "FORM_FISS == 'ELLIPSE' ",fr="Paramètres de la fissure/interface elliptique", - DEMI_GRAND_AXE =SIMP(statut='o',typ='R',val_min=0.), - DEMI_PETIT_AXE =SIMP(statut='o',typ='R',val_min=0.), - CENTRE =SIMP(statut='o',typ='R',min=3,max=3), - VECT_X =SIMP(statut='o',typ='R',min=3,max=3), - VECT_Y =SIMP(statut='o',typ='R',min=3,max=3), - COTE_FISS =SIMP(statut='f',typ='TXM',defaut="IN",into=("IN","OUT",) ), ), - b_rectangle =BLOC(condition = "FORM_FISS == 'RECTANGLE' ",fr="Paramètres de la fissure/interface rectangulaire", - DEMI_GRAND_AXE =SIMP(statut='o',typ='R',val_min=0.), - DEMI_PETIT_AXE =SIMP(statut='o',typ='R',val_min=0.), - RAYON_CONGE =SIMP(statut='f',typ='R',val_min=0.,defaut=0.), - CENTRE =SIMP(statut='o',typ='R',min=3,max=3), - VECT_X =SIMP(statut='o',typ='R',min=3,max=3), - VECT_Y =SIMP(statut='o',typ='R',min=3,max=3), - COTE_FISS =SIMP(statut='f',typ='TXM',defaut="IN",into=("IN","OUT",) ), ), - b_entaille =BLOC(condition = "FORM_FISS == 'ENTAILLE' ",fr="Paramètres de l'interface entaille", - DEMI_LONGUEUR =SIMP(statut='o',typ='R',val_min=0.), - RAYON_CONGE =SIMP(statut='o',typ='R',val_min=0.), - CENTRE =SIMP(statut='o',typ='R',min=3,max=3), - VECT_X =SIMP(statut='o',typ='R',min=3,max=3), - VECT_Y =SIMP(statut='o',typ='R',min=3,max=3), ), - b_cylindre =BLOC(condition = "FORM_FISS == 'CYLINDRE' ",fr="Paramètres de la fissure cylindrique", - DEMI_GRAND_AXE =SIMP(statut='o',typ='R',val_min=0.), - DEMI_PETIT_AXE =SIMP(statut='o',typ='R',val_min=0.), - CENTRE =SIMP(statut='o',typ='R',min=3,max=3), - VECT_X =SIMP(statut='o',typ='R',min=3,max=3), - VECT_Y =SIMP(statut='o',typ='R',min=3,max=3),), - b_demiplan =BLOC(condition = "FORM_FISS == 'DEMI_PLAN' ",fr="Paramètres de la fissure plane à front droit", - PFON =SIMP(statut='o',typ='R',min=3,max=3), - NORMALE =SIMP(statut='o',typ='R',min=3,max=3), - DTAN =SIMP(statut='o',typ='R',min=3,max=3),), - b_segment =BLOC(condition = "FORM_FISS == 'SEGMENT' ",fr="Paramètres de la fissure 2D segment", - PFON_ORIG =SIMP(statut='o',typ='R',min=3,max=3), - PFON_EXTR =SIMP(statut='o',typ='R',min=3,max=3),), - b_demidroite =BLOC(condition = "FORM_FISS == 'DEMI_DROITE' ",fr="Paramètres de la fissure 2D demi-droite", - PFON =SIMP(statut='o',typ='R',min=3,max=3), - DTAN =SIMP(statut='o',typ='R',min=3,max=3),), - b_droite =BLOC(condition = "FORM_FISS == 'DROITE' ",fr="Paramètres de l'interface 2D (fissure traversante)", - POINT =SIMP(statut='o',typ='R',min=3,max=3), - DTAN =SIMP(statut='o',typ='R',min=3,max=3),), - ), - -# ------------------------------------------------------------------------------------------------------------------------ -# partie du maillage potentiellement enrichie -# ------------------------------------------------------------------------------------------------------------------------ - - GROUP_MA_ENRI =SIMP(statut='f',typ=grma,max=01), - -# ------------------------------------------------------------------------------------------------------------------------ -# types d'enrichissement -# ------------------------------------------------------------------------------------------------------------------------ - - b_enri_inte =BLOC(condition = "TYPE_DISCONTINUITE == 'INTERFACE' ", - - CHAM_DISCONTINUITE =SIMP(statut='f',typ='TXM',into=("DEPL","SIGM"),defaut="DEPL" ), - - ), - - - b_enri_fiss =BLOC(condition = "TYPE_DISCONTINUITE == 'FISSURE' ", - - CHAM_DISCONTINUITE =SIMP(statut='f',typ='TXM',into=("DEPL",),defaut="DEPL" ), - TYPE_ENRI_FOND =SIMP(statut='f',typ='TXM',into=("TOPOLOGIQUE","GEOMETRIQUE"),defaut="TOPOLOGIQUE" ), - - b_enri_geom =BLOC(condition = "TYPE_ENRI_FOND == 'GEOMETRIQUE' ",fr="Paramètres de l enrichissement geometrique", - RAYON_ENRI =SIMP(statut='f',typ='R',val_min=0.E+0), - - b_enri_couches =BLOC(condition = "(RAYON_ENRI == None) ",fr="Paramètres de l enrichissement à n couches", - NB_COUCHES =SIMP(statut='f',typ='I',defaut=4,val_min=1), - - ), - ), - ), - -# ------------------------------------------------------------------------------------------------------------------------ -# branchement -# ------------------------------------------------------------------------------------------------------------------------ - - b_jonction =BLOC(condition = "(MODELE_GRILLE == None) and (FISS_GRILLE == None)", - JONCTION =FACT(statut='f',max=1, - FISSURE =SIMP(statut='o',typ=fiss_xfem,min=1,max='**',), - POINT =SIMP(statut='o',typ='R',max=3,), - ), - ), -# ------------------------------------------------------------------------------------------------------------------------ -# info -# ------------------------------------------------------------------------------------------------------------------------ - - INFO =SIMP(statut='f',typ='I',defaut= 1,into=(1,2,3,) ), - -) ; - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: andre.adobes at edf.fr -DEFI_FLUI_STRU=OPER(nom="DEFI_FLUI_STRU",op= 143,sd_prod=type_flui_stru, - reentrant='n',fr="Définit les caractéristiques nécessaires à l'étude dynamique d'une structure sous écoulement", - UIinfo={"groupes":("Modélisation",)}, - regles=( UN_PARMI('FAISCEAU_TRANS','GRAPPE','FAISCEAU_AXIAL','COQUE_COAX',),), - FAISCEAU_TRANS =FACT(statut='f',max='**', - regles=( ENSEMBLE('CSTE_CONNORS','NB_CONNORS','RHO_TUBE'),), - COUPLAGE =SIMP(statut='f',typ='TXM',into=("OUI","NON") ), - CARA_ELEM =SIMP(statut='f',typ=cara_elem ), - PROF_VITE_FLUI =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule) ), - PROF_RHO_F_INT =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - PROF_RHO_F_EXT =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - NOM_CMP =SIMP(statut='f',typ='TXM',into=("DX","DY","DZ") ), - COEF_MASS_AJOU =SIMP(statut='f',typ='R' ), - TYPE_PAS =SIMP(statut='f',typ='TXM',into=("CARRE_LIGN","TRIA_LIGN") ), - TYPE_RESEAU =SIMP(statut='f',typ='I' ), - UNITE_CD =SIMP(statut='f',typ='I',defaut=70), - UNITE_CK =SIMP(statut='f',typ='I',defaut=71), - PAS =SIMP(statut='f',typ='R' ), - CSTE_CONNORS =SIMP(statut='f',typ='R',min=2,max=2,val_min=0.E+00), - NB_CONNORS =SIMP(statut='f',typ='I',val_min=2,), - RHO_TUBE =SIMP(statut='f',typ='R' ), - ), - GRAPPE =FACT(statut='f', - regles=(ENSEMBLE('GRAPPE_2','NOEUD','CARA_ELEM','MODELE','RHO_FLUI',), - PRESENT_PRESENT('COEF_MASS_AJOU','GRAPPE_2', ),), -# peut on créer un bloc a partir de la valeur de couplage - COUPLAGE =SIMP(statut='o',typ='TXM',into=("OUI","NON") ), - GRAPPE_2 =SIMP(statut='f',typ='TXM', - into=("ASC_CEN","ASC_EXC","DES_CEN","DES_EXC") ), - NOEUD =SIMP(statut='f',typ=no), - CARA_ELEM =SIMP(statut='f',typ=cara_elem ), - MODELE =SIMP(statut='f',typ=modele_sdaster ), - COEF_MASS_AJOU =SIMP(statut='f',typ='R' ), - RHO_FLUI =SIMP(statut='f',typ='R' ), - UNITE_CA =SIMP(statut='f',typ='I',defaut=70), - UNITE_KA =SIMP(statut='f',typ='I',defaut=71), - ), - FAISCEAU_AXIAL =FACT(statut='f',max='**', - regles=(UN_PARMI('GROUP_MA','TRI_GROUP_MA'), - UN_PARMI('CARA_ELEM','RAYON_TUBE'), - ENSEMBLE('RAYON_TUBE','COOR_TUBE'), - PRESENT_ABSENT('RAYON_TUBE','TRI_GROUP_MA'), - ENSEMBLE('CARA_PAROI','VALE_PAROI'), - ENSEMBLE('LONG_TYPG','LARG_TYPG','EPAI_TYPG','RUGO_TYPG','COEF_TRAI_TYPG','COEF_DPOR_TYPG', - 'COOR_GRILLE','TYPE_GRILLE', ),), -# on doit pouvoir mettre des blocs conditionnels mais pas assez d infos pour le faire - GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - TRI_GROUP_MA =SIMP(statut='f',typ='TXM' ), - VECT_X =SIMP(statut='f',typ='R',max=3), - PROF_RHO_FLUI =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - PROF_VISC_CINE =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - CARA_ELEM =SIMP(statut='f',typ=cara_elem ), - RAYON_TUBE =SIMP(statut='f',typ='R' ), - COOR_TUBE =SIMP(statut='f',typ='R',max='**'), - PESANTEUR =SIMP(statut='f',typ='R',min=4,max=4), - RUGO_TUBE =SIMP(statut='f',typ='R' ), - CARA_PAROI =SIMP(statut='f',typ='TXM',validators=NoRepeat(),max=5, - into=("YC","ZC","R","HY","HZ") ), - VALE_PAROI =SIMP(statut='f',typ='R',max=5), - ANGL_VRIL =SIMP(statut='f',typ='R' ), - LONG_TYPG =SIMP(statut='f',typ='R',max='**',val_min=0.E+0), - LARG_TYPG =SIMP(statut='f',typ='R',max='**',val_min=0.E+0), - EPAI_TYPG =SIMP(statut='f',typ='R',max='**',val_min=0.E+0), - RUGO_TYPG =SIMP(statut='f',typ='R',max='**',val_min=0.E+0), - COEF_TRAI_TYPG =SIMP(statut='f',typ='R',max='**',val_min=0.E+0), - COEF_DPOR_TYPG =SIMP(statut='f',typ='R',max='**'), - COOR_GRILLE =SIMP(statut='f',typ='R',max='**'), - TYPE_GRILLE =SIMP(statut='f',typ='I',max='**'), - ), - COQUE_COAX =FACT(statut='f', - MASS_AJOU =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON") ), - GROUP_MA_INT =SIMP(statut='o',typ=grma), - GROUP_MA_EXT =SIMP(statut='o',typ=grma), - VECT_X =SIMP(statut='o',typ='R',max='**'), - CARA_ELEM =SIMP(statut='o',typ=cara_elem ), - MATER_INT =SIMP(statut='o',typ=mater_sdaster ), - MATER_EXT =SIMP(statut='o',typ=mater_sdaster ), - RHO_FLUI =SIMP(statut='o',typ='R' ), - VISC_CINE =SIMP(statut='o',typ='R' ), - RUGOSITE =SIMP(statut='o',typ='R' ), - PDC_MOY_1 =SIMP(statut='o',typ='R' ), - PDC_DYN_1 =SIMP(statut='o',typ='R' ), - PDC_MOY_2 =SIMP(statut='o',typ='R' ), - PDC_DYN_2 =SIMP(statut='o',typ='R' ), - ), - INFO =SIMP(statut='f',typ='I',defaut= 1,into=( 1 , 2) ), -) ; - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2011 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: nicolas.relun at edf.fr - - -DEFI_FONC_ELEC=MACRO(nom="DEFI_FONC_ELEC", - op=OPS('Macro.defi_fonc_elec_ops.defi_fonc_elec_ops'), - sd_prod=fonction_sdaster, - reentrant='n', - UIinfo={"groupes":("Outils-métier",)}, - fr="Définir une fonction du temps intervenant dans le calcul des " \ - "forces de LAPLACE", - regles=(UN_PARMI('COUR_PRIN','COUR'), - EXCLUS('COUR','COUR_SECO'), ), - FREQ =SIMP(statut='f',typ='R',defaut= 50.), - SIGNAL =SIMP(statut='f',typ='TXM',defaut="COMPLET",into=("COMPLET","CONTINU") ), - COUR =FACT(statut='f',max='**', - fr="Définition du courant de court-circuit", - regles=(UN_PARMI('PHI_CC_1','INTC_CC_1'), - UN_PARMI('PHI_CC_2','INTC_CC_2'),), - INTE_CC_1 =SIMP(statut='o',typ='R'), - TAU_CC_1 =SIMP(statut='o',typ='R'), - PHI_CC_1 =SIMP(statut='f',typ='R'), - INTC_CC_1 =SIMP(statut='f',typ='R'), - INTE_CC_2 =SIMP(statut='o',typ='R'), - TAU_CC_2 =SIMP(statut='o',typ='R'), - PHI_CC_2 =SIMP(statut='f',typ='R'), - INTC_CC_2 =SIMP(statut='f',typ='R'), - INST_CC_INIT =SIMP(statut='o',typ='R'), - INST_CC_FIN =SIMP(statut='o',typ='R'), - ), - COUR_PRIN =FACT(statut='f', - fr="Définition du courant de court-circuit avec réenclenchement", - regles=(UN_PARMI('PHI_CC_1','INTC_CC_1'),), - INTE_CC_1 =SIMP(statut='o',typ='R'), - TAU_CC_1 =SIMP(statut='o',typ='R'), - PHI_CC_1 =SIMP(statut='f',typ='R'), - INTC_CC_1 =SIMP(statut='f',typ='R'), - INTE_RENC_1 =SIMP(statut='f',typ='R'), - TAU_RENC_1 =SIMP(statut='f',typ='R'), - PHI_RENC_1 =SIMP(statut='f',typ='R'), - INST_CC_INIT =SIMP(statut='o',typ='R'), - INST_CC_FIN =SIMP(statut='o',typ='R'), - INST_RENC_INIT =SIMP(statut='f',typ='R',defaut= 0.0E+0), - INST_RENC_FIN =SIMP(statut='f',typ='R',defaut= 0.0E+0), - ), - COUR_SECO =FACT(statut='f',max='**', - fr="Définition du courant de court-circuit avec un intervalle de temps différent de celui de COUR_PRIN", - regles=(UN_PARMI('PHI_CC_2','INTC_CC_2'),), - INTE_CC_2 =SIMP(statut='o',typ='R'), - TAU_CC_2 =SIMP(statut='o',typ='R'), - PHI_CC_2 =SIMP(statut='f',typ='R'), - INTC_CC_2 =SIMP(statut='f',typ='R'), - INTE_RENC_2 =SIMP(statut='f',typ='R'), - TAU_RENC_2 =SIMP(statut='f',typ='R'), - PHI_RENC_2 =SIMP(statut='f',typ='R'), - DIST =SIMP(statut='f',typ='R',defaut=1.0E+0), - ), - INFO =SIMP(statut='f',typ='I',defaut=1,into=(1,2) ), -) - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: andre.adobes at edf.fr -DEFI_FONC_FLUI=OPER(nom="DEFI_FONC_FLUI",op= 142,sd_prod=fonction_sdaster, - reentrant='n', - fr="Définit un profil de vitesse d'écoulement fluide le long d'une poutre", - UIinfo={"groupes":("Modélisation","Fonctions",)}, - MAILLAGE =SIMP(statut='o',typ=(maillage_sdaster) ), - NOEUD_INIT =SIMP(statut='o',typ=no), - NOEUD_FIN =SIMP(statut='o',typ=no), - VITE =FACT(statut='o', - VALE =SIMP(statut='f',typ='R',defaut= 1. ), - PROFIL =SIMP(statut='o',typ='TXM',into=("UNIFORME","LEONARD") ), - NB_BAV =SIMP(statut='f',typ='I',defaut= 0,into=( 0 , 2 , 3 ) ), - ), - INTERPOL =SIMP(statut='f',typ='TXM',max=2,defaut="LIN", - into=("NON","LIN","LOG") ), - PROL_DROITE =SIMP(statut='f',typ='TXM',defaut="EXCLU", - into=("CONSTANT","LINEAIRE","EXCLU") ), - PROL_GAUCHE =SIMP(statut='f',typ='TXM' ,defaut="EXCLU", - into=("CONSTANT","LINEAIRE","EXCLU") ), - INFO =SIMP(statut='f',typ='I',defaut= 1,into=( 1 , 2 ) ), - TITRE =SIMP(statut='f',typ='TXM',max='**'), -) ; - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2013 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: mathieu.courtois at edf.fr -def defi_fonction_prod(VALE,VALE_PARA,VALE_C,NOEUD_PARA,ABSCISSE,**args): - if VALE != None : return fonction_sdaster - if VALE_C != None : return fonction_c - if VALE_PARA != None : return fonction_sdaster - if ABSCISSE != None : return fonction_sdaster - if NOEUD_PARA != None : return fonction_sdaster - raise AsException("type de concept resultat non prevu") - -DEFI_FONCTION=OPER(nom="DEFI_FONCTION",op=3,sd_prod=defi_fonction_prod - ,fr="Définit une fonction réelle ou complexe d'une variable réelle", - reentrant='n', - UIinfo={"groupes":("Fonctions",)}, - regles=(UN_PARMI('VALE','VALE_C','VALE_PARA','NOEUD_PARA','ABSCISSE'),), - NOM_PARA =SIMP(statut='o',typ='TXM',into=C_PARA_FONCTION() ), - NOM_RESU =SIMP(statut='f',typ='TXM',defaut="TOUTRESU"), - VALE =SIMP(statut='f',typ='R',min=2,max='**', - fr ="Fonction réelle définie par une liste de couples " - "(abscisse,ordonnée)"), - ABSCISSE =SIMP(statut='f',typ='R',min=2,max='**', - fr ="Liste d abscisses d une fonction réelle"), - VALE_C =SIMP(statut='f',typ='R',min=2,max='**', - fr ="Fonction complexe définie par une liste de triplets " - "(absc, partie réelle, partie imaginaire)"), - VALE_PARA =SIMP(statut='f',typ=listr8_sdaster, - fr ="Fonction réelle définie par deux concepts de type listr8" ), - b_vale_para =BLOC(condition = "VALE_PARA != None", - VALE_FONC =SIMP(statut='o',typ=listr8_sdaster ), - ), - b_abscisse =BLOC(condition = "ABSCISSE != None", - ORDONNEE =SIMP(statut='o',typ='R',min=2,max='**', - fr ="Liste d ordonnées d une fonction réelle"), - ), - NOEUD_PARA =SIMP(statut='f',typ=no,max='**', - fr ="Fonction réelle définie par une liste de noeuds et un maillage"), - b_noeud_para =BLOC(condition = "NOEUD_PARA != None", - MAILLAGE =SIMP(statut='o',typ=maillage_sdaster ), - VALE_Y =SIMP(statut='o',typ='R',max='**'), - ), - - INTERPOL =SIMP(statut='f',typ='TXM',max=2,defaut="LIN",into=("NON","LIN","LOG") ), - PROL_DROITE =SIMP(statut='f',typ='TXM',defaut="EXCLU",into=("CONSTANT","LINEAIRE","EXCLU") ), - PROL_GAUCHE =SIMP(statut='f',typ='TXM',defaut="EXCLU",into=("CONSTANT","LINEAIRE","EXCLU") ), - VERIF =SIMP(statut='f',typ='TXM',defaut="CROISSANT",into=("CROISSANT","NON") ), - INFO =SIMP(statut='f',typ='I',defaut= 1,into=( 1 , 2) ), - TITRE =SIMP(statut='f',typ='TXM',max='**'), -) ; - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2012 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: samuel.geniaut at edf.fr - -DEFI_FOND_FISS=OPER(nom="DEFI_FOND_FISS", - op=55, - sd_prod=fond_fiss, - reentrant='n', - UIinfo={"groupes":("Modélisation",)},fr="Définition de lèvres et d'un fond de fissure", - - MAILLAGE = SIMP(statut='o',typ=maillage_sdaster ), - INFO =SIMP(statut='f',typ='I',defaut=1,into=(1,2) ), - - # definition du fond de fissure - FOND_FISS = FACT(statut='o',max=2, - - TYPE_FOND = SIMP(statut='f',typ='TXM',into=("OUVERT","FERME","INF","SUP"),defaut="OUVERT"), - - NOEUD = SIMP(statut='f',typ=no ,validators=NoRepeat(),max='**'), - GROUP_NO = SIMP(statut='f',typ=grno,validators=NoRepeat(),max=1 ), - GROUP_MA = SIMP(statut='f',typ=grma,validators=NoRepeat(),max=1 ), - MAILLE = SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), - regles=(UN_PARMI('GROUP_NO','NOEUD','GROUP_MA','MAILLE'),), - - # possibilite d'ordonnencement automatique du fond si groupe de mailles - b_grma = BLOC(condition = "(GROUP_MA != None or MAILLE != None) and TYPE_FOND != 'FERME'", - NOEUD_ORIG =SIMP(statut='f',typ=no, max=1), - GROUP_NO_ORIG =SIMP(statut='f',typ=grno,max=1), - regles=(EXCLUS('NOEUD_ORIG','GROUP_NO_ORIG'),), - - # si ordo - b_ordo = BLOC(condition = "NOEUD_ORIG != None or GROUP_NO_ORIG != None", - NOEUD_EXTR = SIMP(statut='f',typ=no, max=1), - GROUP_NO_EXTR = SIMP(statut='f',typ=grno,max=1), - regles=(EXCLUS('NOEUD_EXTR','GROUP_NO_EXTR'),), - ), - ), - # possibilite d'ordonnencement automatique du fond si groupe de mailles - b_grma_ferme= BLOC(condition = "(GROUP_MA != None or MAILLE != None) and TYPE_FOND == 'FERME'", - NOEUD_ORIG =SIMP(statut='f',typ=no, max=1), - GROUP_NO_ORIG =SIMP(statut='f',typ=grno,max=1), - regles=(EXCLUS('NOEUD_ORIG','GROUP_NO_ORIG'),), - - # si ordo - b_ordo_ferme = BLOC(condition = "NOEUD_ORIG != None or GROUP_NO_ORIG != None", - MAILLE_ORIG = SIMP(statut='f',typ=ma, max=1), - GROUP_MA_ORIG = SIMP(statut='f',typ=grma, max=1), - regles=(UN_PARMI('MAILLE_ORIG','GROUP_MA_ORIG'),), - ), - ), - # definition des directions des tangentes aux bords (uniquement pour les fonds non fermes) - b_dtan = BLOC(condition = "TYPE_FOND != 'FERME'", - DTAN_ORIG =SIMP(statut='f',typ='R',max='**'), - DTAN_EXTR =SIMP(statut='f',typ='R',max='**'), - VECT_GRNO_ORIG =SIMP(statut='f',typ=grno,validators=NoRepeat(),max=2), - VECT_GRNO_EXTR =SIMP(statut='f',typ=grno,validators=NoRepeat(),max=2), - regles=(EXCLUS('DTAN_ORIG','VECT_GRNO_ORIG'), - EXCLUS('DTAN_EXTR','VECT_GRNO_EXTR'),), - ), - ), - - CONFIG_INIT = SIMP(statut='f',typ='TXM',into=("COLLEE","DECOLLEE"), defaut="COLLEE",position='global'), - - SYME = SIMP(statut='f',typ='TXM',into=("OUI","NON"), defaut="NON", position='global'), - -# remarque : dans le cas symetrique, il faut soit LEVRE_SUP, soit DTAN_ORIG -# mais impossible de faire une regle. - - LEVRE_SUP =FACT(statut='f',max=1, - regles=(UN_PARMI('GROUP_MA','MAILLE'),), - GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - MAILLE =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), - ), - - b_levre_inf = BLOC(condition = "LEVRE_SUP != None and SYME == 'NON'", - - LEVRE_INF =FACT(statut='o',max=1, - regles=(UN_PARMI('GROUP_MA','MAILLE'),), - GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - MAILLE =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), - ), - ), - - # dans le cas decolle - b_decolle = BLOC(condition = "CONFIG_INIT == 'DECOLLEE'", - NORMALE =SIMP(statut='o',typ='R',max=3),), - - PREC_NORM = SIMP(statut='f',typ='R',defaut=0.1), - -) - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2007 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: jean-luc.flejou at edf.fr -# -DEFI_GEOM_FIBRE=OPER(nom="DEFI_GEOM_FIBRE",op= 119, sd_prod=gfibre_sdaster, - fr="Definition des groupes de fibres pour les elements multifibres", - reentrant='n', - UIinfo={"groupes":("Modélisation",)}, - regles=(AU_MOINS_UN('SECTION','FIBRE'),), - - INFO =SIMP(statut='f',typ='I', defaut= 1 ,into=(1,2) ), -#============================================================================ - SECTION =FACT(statut='f',max='**', - regles=(AU_MOINS_UN('TOUT_SECT','GROUP_MA_SECT','MAILLE_SECT'), - PRESENT_ABSENT('TOUT_SECT','GROUP_MA_SECT','MAILLE_SECT'),), - - GROUP_FIBRE =SIMP(statut='o',typ='TXM',min=1,max=1), - TOUT_SECT =SIMP(statut='f',typ='TXM',into=("OUI",) ), - GROUP_MA_SECT =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - MAILLE_SECT =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), - - MAILLAGE_SECT =SIMP(statut='o',typ=maillage_sdaster), - COOR_AXE_POUTRE =SIMP(statut='o',typ='R',min=2,max=2), - ), - - -#============================================================================ - FIBRE =FACT(statut='f',max='**', - GROUP_FIBRE =SIMP(statut='o',typ='TXM',min=1,max=1), - CARA =SIMP(statut='f',typ='TXM',defaut='SURFACE',into=('SURFACE','DIAMETRE',)), - VALE =SIMP(statut='o',typ='R',max='**'), - COOR_AXE_POUTRE =SIMP(statut='o',typ='R',min=2,max=2), - ), - - -) ; - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2012 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: sebastien.fayolle at edf.fr -DEFI_GLRC=OPER(nom="DEFI_GLRC",op=57,sd_prod=mater_sdaster,reentrant='f', - UIinfo={"groupes":("Modélisation",)}, - fr="Déterminer les caractéristiques homogenéisées du béton armé à partir des propriétés du béton et des " - +" armatures", - reuse = SIMP(statut='f',typ=mater_sdaster), - RELATION = SIMP(statut='o',typ='TXM',defaut="GLRC_DAMAGE", - into=("GLRC_DM","GLRC_DAMAGE"),), - - b_glrc_dm=BLOC(condition = "RELATION == 'GLRC_DM'", - fr="Paramètres de la loi GLRC_DM", - BETON = FACT(statut='o',max=1, - MATER = SIMP(statut='o',typ=(mater_sdaster),), - EPAIS = SIMP(statut='o',typ='R',val_min=0.E+0 ),), - NAPPE = FACT(statut='o',max=1, - MATER = SIMP(statut='o',typ=(mater_sdaster),), - OMY = SIMP(statut='o',typ='R',val_min=0.E+0,), - OMX = SIMP(statut='o',typ='R',val_min=0.E+0,), - RY = SIMP(statut='o',typ='R',val_min=-1.0E+0,val_max=1.0E+0,), - RX = SIMP(statut='o',typ='R',val_min=-1.0E+0,val_max=1.0E+0),), - RHO = SIMP(statut='f',typ='R',val_min=0.E+0,), - AMOR_ALPHA = SIMP(statut='f',typ='R',val_min=0.E+0,), - AMOR_BETA = SIMP(statut='f',typ='R',val_min=0.E+0,), - AMOR_HYST = SIMP(statut='f',typ='R',val_min=0.E+0,), - COMPR = SIMP(statut='o',typ='TXM',defaut="GAMMA", - into=("GAMMA","SEUIL")), - b_gamma=BLOC(condition = "COMPR == 'GAMMA'", - fr="Paramètre d'endommagement en compression ", - GAMMA_C = SIMP(statut='o',typ='R',defaut=1.0E+0,val_min=0.0E+0, val_max=1.0E+0),), - b_seuil=BLOC(condition = "COMPR == 'SEUIL'", - fr="Seuil d'endommagement en compression ", - NYC = SIMP(statut='o',typ='R'),), - PENTE = SIMP(statut='o',typ='TXM',defaut="RIGI_ACIER", - into=("PLAS_ACIER","UTIL","RIGI_ACIER")), - b_util = BLOC(condition = "PENTE == 'UTIL'", - fr="Valeur de la déformation maximale de l'élément", - EPSI_MEMB = SIMP(statut='o',typ='R',defaut=0.E+0), - KAPPA_FLEX = SIMP(statut='o',typ='R',defaut=0.E+0),), - CISAIL = SIMP(statut='o',typ='TXM',defaut="NON", - into=("OUI","NON"),), - METHODE_ENDO = SIMP(statut='o',typ='TXM',defaut="ENDO_INTER", - into=("ENDO_NAISS","ENDO_LIM","ENDO_INTER"),), - INFO = SIMP(statut='f',typ='I',defaut=1,into=(1,2),), - ), - b_glrc_damage=BLOC(condition = "RELATION == 'GLRC_DAMAGE'", - fr="Paramètres de la loi GLRC_DAMAGE", - CISAIL_NL =FACT(statut='f',max=1, - BTD1 =SIMP(statut='o',typ='R'), - BTD2 =SIMP(statut='o',typ='R'), - TSD =SIMP(statut='o',typ='R'), - ), - BETON =FACT(statut='o',max=1, - regles=(ENSEMBLE('MP1X', 'MP1Y', 'MP2X', 'MP2Y'), - ENSEMBLE('MP1X_FO', 'MP1Y_FO', 'MP2X_FO', 'MP2Y_FO'), - PRESENT_ABSENT('MP1X', 'MP1X_FO', 'MP1Y_FO', 'MP2X_FO', 'MP2Y_FO'), - ENSEMBLE('OMT', 'EAT'), - ENSEMBLE('BT1','BT2'),), - MATER =SIMP(statut='o',typ=(mater_sdaster) ), - EPAIS =SIMP(statut='o',typ='R',val_min=0.E+0 ), - GAMMA =SIMP(statut='o',typ='R',val_min=0.E+0,val_max=1.E+0), - QP1 =SIMP(statut='o',typ='R',val_min=0.E+0,val_max=1.E+0), - QP2 =SIMP(statut='o',typ='R',val_min=0.E+0,val_max=1.E+0), - - C1N1 =SIMP(statut='o',typ='R',val_min=0.E+0), - C1N2 =SIMP(statut='o',typ='R',val_min=0.E+0), - C1N3 =SIMP(statut='o',typ='R',val_min=0.E+0), - C2N1 =SIMP(statut='o',typ='R',val_min=0.E+0), - C2N2 =SIMP(statut='o',typ='R',val_min=0.E+0), - C2N3 =SIMP(statut='o',typ='R',val_min=0.E+0), - C1M1 =SIMP(statut='o',typ='R',val_min=0.E+0), - C1M2 =SIMP(statut='o',typ='R',val_min=0.E+0), - C1M3 =SIMP(statut='o',typ='R',val_min=0.E+0), - C2M1 =SIMP(statut='o',typ='R',val_min=0.E+0), - C2M2 =SIMP(statut='o',typ='R',val_min=0.E+0), - C2M3 =SIMP(statut='o',typ='R',val_min=0.E+0), - - OMT =SIMP(statut='f',typ='R',val_min=0.E+0), - EAT =SIMP(statut='f',typ='R',val_min=0.E+0), - BT1 =SIMP(statut='f',typ='R',val_min=0.E+0), - BT2 =SIMP(statut='f',typ='R',val_min=0.E+0), - - MP1X =SIMP(statut='f',typ='R'), - MP2X =SIMP(statut='f',typ='R'), - MP1Y =SIMP(statut='f',typ='R'), - MP2Y =SIMP(statut='f',typ='R'), - - MP1X_FO =SIMP(statut='f',typ=fonction_sdaster), - MP2X_FO =SIMP(statut='f',typ=fonction_sdaster), - MP1Y_FO =SIMP(statut='f',typ=fonction_sdaster), - MP2Y_FO =SIMP(statut='f',typ=fonction_sdaster), - ), - NAPPE =FACT(statut='o',max=10, - MATER =SIMP(statut='o',typ=(mater_sdaster) ), - OMX =SIMP(statut='o',typ='R',val_min=0.E+0), - OMY =SIMP(statut='o',typ='R',val_min=0.E+0), - RX =SIMP(statut='o',typ='R',val_min=-1.E+0,val_max=1.E+0), - RY =SIMP(statut='o',typ='R',val_min=-1.E+0,val_max=1.E+0), - ), - CABLE_PREC =FACT(statut='f',max=1, - MATER =SIMP(statut='o',typ=(mater_sdaster) ), - OMX =SIMP(statut='o',typ='R',val_min=0.E+0), - OMY =SIMP(statut='o',typ='R',val_min=0.E+0), - RX =SIMP(statut='o',typ='R',val_min=-1.E+0,val_max=1.E+0), - RY =SIMP(statut='o',typ='R',val_min=-1.E+0,val_max=1.E+0), - PREX =SIMP(statut='o',typ='R'), - PREY =SIMP(statut='o',typ='R'), - ), - LINER =FACT(statut='f',max=10, - MATER =SIMP(statut='o',typ=(mater_sdaster) ), - OML =SIMP(statut='o',typ='R',val_min=0.E+0), - RLR =SIMP(statut='o',typ='R',val_min=-1.E+0,val_max=1.E+0), - ), - INFO =SIMP(statut='f',typ='I',defaut=1,into=(1,2),), - ), -) ; - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2011 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: samuel.geniaut at edf.fr -DEFI_GRILLE=OPER(nom="DEFI_GRILLE",op=82,sd_prod=grille_sdaster,reentrant='n', - UIinfo={"groupes":("Modélisation",)}, - fr="Définition d'une grille", - - MAILLAGE = SIMP(statut='o',typ=maillage_sdaster), - - INFO = SIMP(statut='f',typ='I',defaut= 0,into=(0,1,2) ), -) ; - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2013 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: jacques.pellet at edf.fr -def defi_group_prod(MAILLAGE,GRILLE,**args): - if ( MAILLAGE != None ) : - if AsType(MAILLAGE) == maillage_sdaster : return maillage_sdaster - if AsType(MAILLAGE) == squelette : return squelette - if ( GRILLE != None ) : - return grille_sdaster - raise AsException("type de concept resultat non prevu") - -DEFI_GROUP=OPER(nom="DEFI_GROUP",op= 104,sd_prod=defi_group_prod, - fr="Définition de nouveaux groupes de noeuds et/ou de mailles dans un concept maillage", - reentrant='o', - UIinfo={"groupes":("Maillage",)}, - regles=(AU_MOINS_UN('CREA_GROUP_MA','CREA_GROUP_NO','DETR_GROUP_NO','DETR_GROUP_MA'), - UN_PARMI('MAILLAGE','GRILLE'),), - MAILLAGE =SIMP(statut='f',typ=(maillage_sdaster,squelette) ), - GRILLE =SIMP(statut='f',typ=(grille_sdaster) ), - DETR_GROUP_MA =FACT(statut='f',max='**', - NOM =SIMP(statut='o',typ=grma,validators=NoRepeat(),max='**'),), - DETR_GROUP_NO =FACT(statut='f',max='**', - NOM =SIMP(statut='o',typ=grno,validators=NoRepeat(),max='**'),), - - - CREA_GROUP_MA =FACT(statut='f',max='**', - regles=(UN_PARMI('TOUT','GROUP_MA','MAILLE','INTERSEC','UNION','DIFFE','OPTION'),), - NOM =SIMP(statut='o',typ=grma), - TOUT =SIMP(statut='f',typ='TXM',into=("OUI",) ), - GROUP_MA =SIMP(statut='f',typ=grma), - MAILLE =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), - INTERSEC =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - UNION =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - DIFFE =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - TYPE_MAILLE =SIMP(statut='f',typ='TXM',defaut="TOUT",into=("TOUT","1D","2D","3D", - "POI1","SEG2","SEG3","SEG4","TRIA3","TRIA6","TRIA7", - "QUAD4","QUAD8","QUAD9","TETRA4","TETRA10", - "PENTA6","PENTA15","PENTA18","HEXA8","HEXA20","HEXA27", - "PYRAM5","PYRAM13",),max=1 ), - - OPTION =SIMP(statut='f',typ='TXM',into=("FACE_NORMALE","SPHERE","CYLINDRE", - "BANDE","APPUI_LACHE","APPUI","FISS_XFEM") ), - b_group_ma =BLOC(condition = "GROUP_MA != None", - regles=(EXCLUS('POSITION','NUME_INIT'),), - NUME_INIT =SIMP(statut='f',typ='I'), - POSITION =SIMP(statut='f',typ='TXM',into=("INIT","FIN","MILIEU") ), - b_nume_init =BLOC(condition = "NUME_INIT != None", - NUME_FIN =SIMP(statut='f',typ='I' ), - ), - ), - b_face_normale =BLOC(condition = "OPTION == 'FACE_NORMALE'", - regles=(UN_PARMI('ANGL_NAUT','VECT_NORMALE'),), - ANGL_NAUT =SIMP(statut='f',typ='R',max=2), - VECT_NORMALE =SIMP(statut='f',typ='R',max=3), - ANGL_PREC =SIMP(statut='f',typ='R',defaut= 0.5 ), - VERI_SIGNE =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON") ), - ), - b_sphere =BLOC(condition = "OPTION == 'SPHERE'", - regles=(UN_PARMI('POINT','NOEUD_CENTRE','GROUP_NO_CENTRE'),), - POINT =SIMP(statut='f',typ='R',max=3), - NOEUD_CENTRE =SIMP(statut='f',typ=no), - GROUP_NO_CENTRE =SIMP(statut='f',typ=grno), - RAYON =SIMP(statut='o',typ='R' ), - CRIT_NOEUD = SIMP(statut='f',typ='TXM',defaut="AU_MOINS_UN", - into=("TOUS","AU_MOINS_UN","MAJORITE"),), - ), - b_cylindre =BLOC(condition = "OPTION == 'CYLINDRE'", - regles=(UN_PARMI('POINT','NOEUD_CENTRE','GROUP_NO_CENTRE'), - UN_PARMI('ANGL_NAUT','VECT_NORMALE'),), - POINT =SIMP(statut='f',typ='R',max=3), - NOEUD_CENTRE =SIMP(statut='f',typ=no), - GROUP_NO_CENTRE =SIMP(statut='f',typ=grno), - RAYON =SIMP(statut='o',typ='R' ), - ANGL_NAUT =SIMP(statut='f',typ='R',max=2), - VECT_NORMALE =SIMP(statut='f',typ='R',max=3), - CRIT_NOEUD = SIMP(statut='f',typ='TXM',defaut="AU_MOINS_UN", - into=("TOUS","AU_MOINS_UN","MAJORITE"),), - ), - b_bande =BLOC(condition = "OPTION == 'BANDE'", - regles=(UN_PARMI('POINT','NOEUD_CENTRE','GROUP_NO_CENTRE'), - UN_PARMI('ANGL_NAUT','VECT_NORMALE'),), - POINT =SIMP(statut='f',typ='R' ,max=3), - NOEUD_CENTRE =SIMP(statut='f',typ=no ,validators=NoRepeat(),max=1), - GROUP_NO_CENTRE =SIMP(statut='f',typ=grno,validators=NoRepeat(),max=1), - DIST =SIMP(statut='o',typ='R' ), - ANGL_NAUT =SIMP(statut='f',typ='R',max=2), - VECT_NORMALE =SIMP(statut='f',typ='R',max=3), - CRIT_NOEUD = SIMP(statut='f',typ='TXM',defaut="AU_MOINS_UN", - into=("TOUS","AU_MOINS_UN","MAJORITE"),), - ), - b_app_lache =BLOC(condition = "OPTION == 'APPUI_LACHE'", - regles=(UN_PARMI('NOEUD','GROUP_NO'),), - NOEUD =SIMP(statut='f',typ=no ,validators=NoRepeat(),max='**'), - GROUP_NO =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'), - ), - b_appui =BLOC(condition = "OPTION == 'APPUI'", - regles=(UN_PARMI('NOEUD','GROUP_NO'),), - NOEUD =SIMP(statut='f',typ=no ,validators=NoRepeat(),max='**'), - GROUP_NO =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'), - TYPE_APPUI =SIMP(statut='o',typ='TXM',max=1, into=('AU_MOINS_UN','TOUT','SOMMET','MAJORITE')), - ), - b_fiss_xfem =BLOC(condition = "OPTION == 'FISS_XFEM'", - TYPE_GROUP =SIMP(statut='o',typ='TXM',max=1,defaut='XFEM', - into=('HEAVISIDE','CRACKTIP','MIXTE','FISSUREE','XFEM',),), - FISSURE =SIMP(statut='o',typ=fiss_xfem,min=1,max='**'), - ), - ), - - - CREA_GROUP_NO =FACT(statut='f',max='**', - OPTION =SIMP(statut='f',typ='TXM',into=("ENV_SPHERE","ENV_CYLINDRE","PLAN", - "SEGM_DROI_ORDO","NOEUD_ORDO","TUNNEL", - "INCLUSION","FISS_XFEM","INTERVALLE_VALE") ), - - b_option =BLOC(condition = "OPTION == None" , - regles=(UN_PARMI('TOUT_GROUP_MA','GROUP_MA','GROUP_NO','NOEUD', - 'INTERSEC','UNION','DIFFE'),), - TOUT_GROUP_MA =SIMP(statut='f',typ='TXM',into=("OUI",) ), - GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - GROUP_NO =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'), - NOEUD =SIMP(statut='f',typ=no ,validators=NoRepeat(),max='**'), - INTERSEC =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'), - UNION =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'), - DIFFE =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'), - - b_nom_group_ma =BLOC(condition = "GROUP_MA != None", - NOM = SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - CRIT_NOEUD = SIMP(statut='f',typ='TXM',defaut="TOUS", - into=("TOUS","SOMMET","MILIEU","CENTRE"),), - ), - b_group_no =BLOC(condition = "GROUP_NO != None", - regles=(EXCLUS('POSITION','NUME_INIT'),), - NUME_INIT =SIMP(statut='f',typ='I'), - POSITION =SIMP(statut='f',typ='TXM',into=("INIT","FIN","MILIEU") ), - b_nume_init =BLOC(condition = "NUME_INIT != None", - NUME_FIN =SIMP(statut='f',typ='I' ), - ), - ), - b_nom =BLOC(condition = "GROUP_MA == None and TOUT_GROUP_MA == None" , - NOM =SIMP(statut='o',typ=grma), - ), - ), - - b_env_sphere =BLOC(condition = "OPTION == 'ENV_SPHERE'", - regles=(UN_PARMI('POINT','NOEUD_CENTRE','GROUP_NO_CENTRE'),), - NOM =SIMP(statut='o',typ=grno), - POINT =SIMP(statut='f',typ='R' ,max=3), - NOEUD_CENTRE =SIMP(statut='f',typ=no ,validators=NoRepeat(),max=1), - GROUP_NO_CENTRE =SIMP(statut='f',typ=grno,validators=NoRepeat(),max=1), - RAYON =SIMP(statut='o',typ='R' ), - PRECISION =SIMP(statut='o',typ='R' ), - ), - b_env_cylindre =BLOC(condition = "OPTION == 'ENV_CYLINDRE'", - regles=(UN_PARMI('POINT','NOEUD_CENTRE','GROUP_NO_CENTRE'), - UN_PARMI('ANGL_NAUT','VECT_NORMALE'),), - NOM =SIMP(statut='o',typ=grno), - POINT =SIMP(statut='f',typ='R' ,max=3), - NOEUD_CENTRE =SIMP(statut='f',typ=no ,validators=NoRepeat(),max=1), - GROUP_NO_CENTRE =SIMP(statut='f',typ=grno,validators=NoRepeat(),max=1), - RAYON =SIMP(statut='o',typ='R' ), - ANGL_NAUT =SIMP(statut='f',typ='R',max=3), - VECT_NORMALE =SIMP(statut='f',typ='R',max=3), - PRECISION =SIMP(statut='o',typ='R' ), - ), - b_env_plan =BLOC(condition = "OPTION == 'PLAN'", - regles=(UN_PARMI('POINT','NOEUD_CENTRE','GROUP_NO_CENTRE'), - UN_PARMI('ANGL_NAUT','VECT_NORMALE'),), - NOM =SIMP(statut='o',typ=grno), - POINT =SIMP(statut='f',typ='R' ,max=3), - NOEUD_CENTRE =SIMP(statut='f',typ=no ,validators=NoRepeat(),max=1), - GROUP_NO_CENTRE =SIMP(statut='f',typ=grno,validators=NoRepeat(),max=1), - ANGL_NAUT =SIMP(statut='f',typ='R' ,max=3), - VECT_NORMALE =SIMP(statut='f',typ='R' ,max=3), - PRECISION =SIMP(statut='o',typ='R' ), - ), - b_segm_droi_ordo=BLOC(condition = "OPTION == 'SEGM_DROI_ORDO'", - regles=(AU_MOINS_UN('NOEUD','GROUP_NO'), - UN_PARMI('NOEUD_ORIG','GROUP_NO_ORIG'), - UN_PARMI('NOEUD_EXTR','GROUP_NO_EXTR'),), - NOM =SIMP(statut='o',typ=grno), - NOEUD =SIMP(statut='f',typ=no ,validators=NoRepeat(),max='**'), - GROUP_NO =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'), - NOEUD_ORIG =SIMP(statut='f',typ=no), - GROUP_NO_ORIG =SIMP(statut='f',typ=grno), - NOEUD_EXTR =SIMP(statut='f',typ=no), - GROUP_NO_EXTR =SIMP(statut='f',typ=grno), - PRECISION =SIMP(statut='o',typ='R' ), - CRITERE =SIMP(statut='o',typ='TXM',into=("ABSOLU","RELATIF") ), - ), - b_noeud_ordo =BLOC(condition = "OPTION == 'NOEUD_ORDO'", - regles=(EXCLUS('NOEUD_ORIG','GROUP_NO_ORIG'), - EXCLUS('NOEUD_EXTR','GROUP_NO_EXTR'),), - NOM =SIMP(statut='o',typ=grno), - GROUP_MA =SIMP(statut='o',typ=grma,validators=NoRepeat(),max='**'), - # si le groupe de mailles forme une ligne ouverte, on peut choisir le sens de parcours en choissant l'origine: - # si le groupe de mailles forme une ligne fermée, il FAUT choisir l'origine et l'extrémité (= origine): - NOEUD_ORIG =SIMP(statut='f',typ=no), - GROUP_NO_ORIG =SIMP(statut='f',typ=grno), - NOEUD_EXTR =SIMP(statut='f',typ=no), - GROUP_NO_EXTR =SIMP(statut='f',typ=grno), - # si le groupe de mailles forme une ligne fermée, on peut choisir le sens de parcours : - VECT_ORIE =SIMP(statut='f',typ='R',max=3), # utilisé seulement si NOEUD_ORIG=NOEUD_EXTR - - ), - b_tunnel =BLOC(condition = "OPTION == 'TUNNEL'", - regles=(AU_MOINS_UN ('TOUT','GROUP_MA','MAILLE'), - EXCLUS('NOEUD_ORIG','GROUP_NO_ORIG'), - AU_MOINS_UN ('GROUP_MA_AXE','MAILLE_AXE'),), - NOM =SIMP(statut='o',typ=grma), - TOUT =SIMP(statut='f',typ='TXM',into=("OUI",) ), - GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - MAILLE =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), - GROUP_MA_AXE =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - MAILLE_AXE =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), - NOEUD_ORIG =SIMP(statut='f',typ=no), - GROUP_NO_ORIG =SIMP(statut='f',typ=grno), - RAYON =SIMP(statut='o',typ='R'), - LONGUEUR =SIMP(statut='f',typ='R'), - ), - b_inclusion =BLOC(condition = "OPTION == 'INCLUSION'", - fr="""crée le groupe des noeuds des mailles de GROUP_MA inclus géométriquement - dans les mailles de GROUP_MA_INCL""", - NOM =SIMP(statut='o',typ=grma), - CAS_FIGURE =SIMP(statut='o',typ='TXM',into=("2D","3D","2.5D",)), - DISTANCE_MAX =SIMP(statut='f',typ='R',), - GROUP_MA =SIMP(statut='o',typ=grma,validators=NoRepeat(),max='**'), - GROUP_MA_INCL =SIMP(statut='o',typ=grma,validators=NoRepeat(),max='**'), - MAILLAGE_INCL =SIMP(statut='f',typ=maillage_sdaster), - ), - b_fiss_xfem =BLOC(condition = "OPTION == 'FISS_XFEM'", - NOM =SIMP(statut='o',typ=grma), - TYPE_GROUP =SIMP(statut='o',typ='TXM',max=1,into=('HEAVISIDE','CRACKTIP','MIXTE','XFEM','ZONE_MAJ','TORE')), - FISSURE =SIMP(statut='o',typ=fiss_xfem,min=1,max='**'), - b_rayon =BLOC(condition = "TYPE_GROUP == 'TORE'", - RAYON_TORE =SIMP(statut='o',typ='R',max=1,val_min=0.0), - ), - ), - b_intervalle_vale =BLOC(condition = "OPTION == 'INTERVALLE_VALE'", - NOM =SIMP(statut='o',typ=grma), - CHAM_GD =SIMP(statut='o',typ=cham_no_sdaster), - NOM_CMP =SIMP(statut='o',typ='TXM',max=1), - VALE =SIMP(statut='o',typ='R',min=2,max=2), - ), - ), - ALARME =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON") ), - INFO =SIMP(statut='f',typ='I',into=( 1 , 2 ) ), -) ; - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2012 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: irmela.zentner at edf.fr - -DEFI_INTE_SPEC=OPER(nom="DEFI_INTE_SPEC",op= 115, - sd_prod=interspectre, - reentrant='n', - fr="Définit une matrice interspectrale", - UIinfo={"groupes":("Fonctions",)}, - - DIMENSION =SIMP(statut='f',typ='I',defaut= 1 ), - - regles=(UN_PARMI('PAR_FONCTION','KANAI_TAJIMI','CONSTANT'),), - - PAR_FONCTION =FACT(statut='f',max='**', - regles=(UN_PARMI('NUME_ORDRE_I','NOEUD_I'),), - NOEUD_I =SIMP(statut='f',typ=no,max=1,), - NUME_ORDRE_I =SIMP(statut='f',typ='I',max=1), - b_nume_ordre_i = BLOC (condition = "NUME_ORDRE_I != None", - NUME_ORDRE_J =SIMP(statut='o',typ='I',max=1), - ), - b_noeud_i = BLOC (condition = "NOEUD_I != None", - NOEUD_J =SIMP(statut='o',typ=no,max=1,), - NOM_CMP_I =SIMP(statut='o',typ='TXM',max=1,), - NOM_CMP_J =SIMP(statut='o',typ='TXM',max=1,), - ), - FONCTION =SIMP(statut='o',typ=(fonction_sdaster,fonction_c ),max=1), - ), - - KANAI_TAJIMI =FACT(statut='f',max='**', - regles=(EXCLUS('VALE_R','VALE_C'), - UN_PARMI('NUME_ORDRE_I','NOEUD_I'),), - NUME_ORDRE_I =SIMP(statut='f',typ='I',max=1), - NOEUD_I =SIMP(statut='f',typ=no,max=1,), - b_nume_ordre_i = BLOC (condition = "NUME_ORDRE_I != None", - NUME_ORDRE_J =SIMP(statut='o',typ='I',max=1), - ), - b_noeud_i = BLOC (condition = "NOEUD_I != None", - NOEUD_J =SIMP(statut='o',typ=no,max=1,), - NOM_CMP_I =SIMP(statut='o',typ='TXM',max=1,), - NOM_CMP_J =SIMP(statut='o',typ='TXM',max=1,), - ), - FREQ_MIN =SIMP(statut='f',typ='R',defaut= 0.E+0 ), - FREQ_MAX =SIMP(statut='f',typ='R',defaut= 100. ), - PAS =SIMP(statut='f',typ='R',defaut= 1. ), - AMOR_REDUIT =SIMP(statut='f',typ='R',defaut= 0.6 ), - FREQ_MOY =SIMP(statut='f',typ='R',defaut= 5. ), - VALE_R =SIMP(statut='f',typ='R' ), - VALE_C =SIMP(statut='f',typ='C' ), - INTERPOL =SIMP(statut='f',typ='TXM',max=2,defaut="LIN",into=("NON","LIN","LOG") ), - PROL_DROITE =SIMP(statut='f',typ='TXM',defaut="EXCLU",into=("CONSTANT","LINEAIRE","EXCLU") ), - PROL_GAUCHE =SIMP(statut='f',typ='TXM',defaut="EXCLU",into=("CONSTANT","LINEAIRE","EXCLU") ), - ), - CONSTANT =FACT(statut='f',max='**', - regles=(EXCLUS('VALE_R','VALE_C'), - UN_PARMI('NUME_ORDRE_I','NOEUD_I'),), - NUME_ORDRE_I =SIMP(statut='f',typ='I',max=1), - NOEUD_I =SIMP(statut='f',typ=no,max=1,), - b_nume_ordre_i = BLOC (condition = "NUME_ORDRE_I != None", - NUME_ORDRE_J =SIMP(statut='o',typ='I',max=1), - ), - b_noeud_i = BLOC (condition = "NOEUD_I != None", - NOEUD_J =SIMP(statut='o',typ=no,max=1,), - NOM_CMP_I =SIMP(statut='o',typ='TXM',max=1,), - NOM_CMP_J =SIMP(statut='o',typ='TXM',max=1,), - ), - FREQ_MIN =SIMP(statut='f',typ='R',defaut= 0.E+0 ), - FREQ_MAX =SIMP(statut='f',typ='R',defaut= 100. ), - PAS =SIMP(statut='f',typ='R',defaut= 1. ), - VALE_R =SIMP(statut='f',typ='R' ), - VALE_C =SIMP(statut='f',typ='C' ), - INTERPOL =SIMP(statut='f',typ='TXM',max=2,defaut="LIN",into=("NON","LIN","LOG") ), - PROL_DROITE =SIMP(statut='f',typ='TXM',defaut="EXCLU",into=("CONSTANT","LINEAIRE","EXCLU") ), - PROL_GAUCHE =SIMP(statut='f',typ='TXM',defaut="EXCLU",into=("CONSTANT","LINEAIRE","EXCLU") ), - ), - TITRE =SIMP(statut='f',typ='TXM',max='**'), - INFO =SIMP(statut='f',typ='I',defaut= 1,into=( 1 , 2) ), -) ; - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2013 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: mathieu.corus at edf.fr - -DEFI_INTERF_DYNA=OPER(nom="DEFI_INTERF_DYNA",op= 98,sd_prod=interf_dyna_clas, - reentrant='n', - UIinfo={"groupes":("Matrices et vecteurs","Dynamique",)}, - fr="Définir les interfaces d'une structure et leur affecter un type", - NUME_DDL =SIMP(statut='o',typ=nume_ddl_sdaster ), - INTERFACE =FACT(statut='o',max='**', - regles=(ENSEMBLE('NOM','TYPE'), -# erreur doc U sur la condition qui suit - UN_PARMI('NOEUD','GROUP_NO'),), - NOM =SIMP(statut='f',typ='TXM' ), - TYPE =SIMP(statut='f',typ='TXM',into=("MNEAL","CRAIGB","CB_HARMO","AUCUN") ), - NOEUD =SIMP(statut='f',typ=no,validators=NoRepeat(),max='**'), - GROUP_NO =SIMP(statut='f',typ=grno,max='**'), -# DDL_ACTIF =SIMP(statut='f',typ='TXM',max='**'), - MASQUE =SIMP(statut='f',typ='TXM',max='**'), - ), - FREQ =SIMP(statut='f',typ='R',defaut= 1.), - INFO =SIMP(statut='f',typ='I',defaut= 1,into=( 1 , 2) ), -) ; - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: mathieu.courtois at edf.fr -DEFI_LIST_ENTI=OPER(nom="DEFI_LIST_ENTI",op=22,sd_prod=listis_sdaster, - fr="Définir une liste d'entiers strictement croissante", - reentrant='n', - UIinfo={"groupes":("Fonctions",)}, - - OPERATION =SIMP(statut='o',typ='TXM',defaut='DEFI',into=('DEFI','NUME_ORDRE',)), - - - # définition d'une liste d'entiers - #---------------------------------- - b_defi =BLOC(condition = "OPERATION == 'DEFI'", - regles=(UN_PARMI('VALE','DEBUT'), - EXCLUS('VALE','INTERVALLE'),), - VALE =SIMP(statut='f',typ='I',max='**'), - DEBUT =SIMP(statut='f',typ='I'), - INTERVALLE =FACT(statut='f',max='**', - regles=(UN_PARMI('NOMBRE','PAS'),), - JUSQU_A =SIMP(statut='o',typ='I'), - NOMBRE =SIMP(statut='f',typ='I',val_min=1,), - PAS =SIMP(statut='f',typ='I',val_min=1,), - ), - ), - - - # extraction d'une liste de nume_ordre dans une sd_resultat : - #------------------------------------------------------------ - b_extr =BLOC(condition = "OPERATION == 'NUME_ORDRE'", - RESULTAT =SIMP(statut='o',typ=resultat_sdaster), - PARAMETRE =SIMP(statut='o',typ='TXM',), - INTERV_R =SIMP(statut='o',typ='R',min=2,max=2), - ), - - - INFO =SIMP(statut='f',typ='I',defaut=1,into=(1,2)), - TITRE =SIMP(statut='f',typ='TXM',max='**'), -) ; - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: nicolas.brie at edf.fr -DEFI_LIST_FREQ=MACRO(nom="DEFI_LIST_FREQ", - op=OPS('Macro.defi_list_freq_ops.defi_list_freq_ops'), - sd_prod=listr8_sdaster, - fr="Définir une liste de fréquences strictement croissante", - reentrant='n', - UIinfo={"groupes":("Fonctions",)}, - regles=(UN_PARMI('VALE','DEBUT',), - EXCLUS('VALE','INTERVALLE'), - ENSEMBLE('DEBUT','INTERVALLE')), - VALE =SIMP(statut='f',typ='R',max='**'), - DEBUT =SIMP(statut='f',typ='R'), - INTERVALLE =FACT(statut='f',max='**', - regles=(UN_PARMI('NOMBRE','PAS'),), - JUSQU_A =SIMP(statut='o',typ='R'), - NOMBRE =SIMP(statut='f',typ='I'), - PAS =SIMP(statut='f',typ='R'), - ), - RAFFINEMENT =FACT(statut='f', - LIST_RAFFINE =SIMP(statut='o',typ='R',max='**'), - NB_POINTS =SIMP(statut='f',typ='I',defaut=5), - PAS_MINI =SIMP(statut='f',typ='R',defaut=0.001), - CRITERE =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU","LARGEUR_3DB")), - b_crit_rela_abs=BLOC(condition="(CRITERE=='RELATIF' or CRITERE=='ABSOLU')", - DISPERSION =SIMP(statut='f',typ='R',defaut=0.01),), - b_crit_larg=BLOC(condition="(CRITERE=='LARGEUR_3DB')", - AMOR_MODAL =FACT(statut='o', - regles = UN_PARMI('AMOR_REDUIT','LIST_AMOR'), - AMOR_REDUIT =SIMP(statut='f',typ='R',max='**'), - LIST_AMOR =SIMP(statut='f',typ=listr8_sdaster ),),), - ), - INFO =SIMP(statut='f',typ='I',defaut=1,into=(1,2)), - TITRE =SIMP(statut='f',typ='TXM',max='**'), -) ; - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2012 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: samuel.geniaut at edf.fr - - - -# Bloc pour decoupe automatique -bloc_auto =BLOC(fr = "Subdivision de type automatique", - condition = "SUBD_METHODE == 'AUTO'", - SUBD_PAS_MINI = SIMP(fr = "Pas de temps en dessous duquel on ne subdivise plus", - statut = 'f', - typ = 'R', - val_min = 0.0, - max = 1, - defaut = 0., - ), - ) - -# Bloc pour decoupe manuel -bloc_manu =BLOC(fr = "Subdivision de type manuel", - condition = "SUBD_METHODE == 'MANUEL'", - regles = (AU_MOINS_UN('SUBD_NIVEAU','SUBD_PAS_MINI'),), - SUBD_PAS = SIMP(fr = "Nombre de subdivision d'un pas de temps", - statut = 'f', - typ = 'I', - val_min = 2, - max = 1, - defaut = 4, - ), - - SUBD_NIVEAU = SIMP(fr = "Nombre maximum de niveau de subdivision d'un pas de temps", - statut = 'f', - typ = 'I', - val_min = 2, - max = 1, - defaut = 3, - ), - SUBD_PAS_MINI = SIMP(fr = "Pas de temps en dessous duquel on ne subdivise plus", - statut = 'f', - typ = 'R', - val_min = 0.0, - max = 1, - defaut = 0., - ), - ) - -# Bloc pour decoupe automatique - Cas de la collision -bloc_auto2 =BLOC(fr = "Subdivision de type automatique", - condition = "SUBD_METHODE == 'AUTO'", - SUBD_INST = SIMP(fr = "Parametre de decoupe fine du pas de temps", - statut = 'o', - typ = 'R', - val_min = 0.0, - max = 1, - ), - SUBD_DUREE = SIMP(fr = "Duree de decoupe apres collision", - statut = 'o', - typ = 'R', - val_min = 0.0, - max = 1, - ), - ) - -# Bloc pour decoupe du pas de temps -bloc_deco =BLOC(fr = "Action de decoupe du pas temps", - condition = "ACTION == 'DECOUPE' or ACTION == 'REAC_PRECOND' or ACTION == 'AUTRE_PILOTAGE'", - SUBD_METHODE = SIMP(fr = "Méthode de subdivision des pas de temps en cas de divergence", - statut = 'f', - typ = 'TXM', - max = 1, - into = ("MANUEL","AUTO"), - defaut = "MANUEL", - ), - b_deco_manu = bloc_manu, - b_deco_auto = bloc_auto, - ) - - -# Bloc pour decoupe du pas de temps - special pour collision -bloc_deco2 =BLOC(fr = "Action de decoupe du pas temps", - condition = "ACTION == 'DECOUPE'", - SUBD_METHODE = SIMP(fr = "Méthode de subdivision des pas de temps en cas de collision", - statut = 'f', - typ = 'TXM', - max = 1, - into = ("MANUEL","AUTO"), - defaut = "AUTO", - ), - - - - b_deco_manu = bloc_manu, - b_deco_auto = bloc_auto2, - ) - -# Bloc pour extrapolation du nombre d'iterations de Newton -bloc_supp =BLOC(fr = "Action d'extrapolation du nombre d'iterations de Newton", - condition = "ACTION == 'ITER_SUPPL'", - PCENT_ITER_PLUS = SIMP(fr = "Pourcentage d'itérations autorisées en plus", - statut = 'f', - typ = 'I', - val_min = 20, - max = 1, - defaut = 50, - ), - SUBD_METHODE = SIMP(fr = "Méthode de subdivision des pas de temps en cas de divergence", - statut = 'f', - typ = 'TXM', - max = 1, - into = ("MANUEL","AUTO"), - defaut = "MANUEL", - ), - b_deco_manu = bloc_manu, - b_deco_auto = bloc_auto, - ) - -# Bloc pour adaptation du coefficient de penalisation -bloc_pene =BLOC(fr = "Action d' adaptation du coefficient de penalisation", - condition = "ACTION == 'ADAPT_COEF_PENA'", - COEF_MAXI = SIMP(fr = "Coefficient multiplicateur maximum du coefficient de penalisation", - statut = 'f', - typ = 'R', - val_min = 1., - max = 1, - defaut = 1E12, - ), - ) - -DEFI_LIST_INST = OPER(nom="DEFI_LIST_INST",op= 28,sd_prod=list_inst,reentrant='n', - UIinfo={"groupes":("Fonctions",)}, - fr="Définition de la gestion de la liste d'instants", - -# ---------------------------------------------------------------------------------------------------------------------------------- -# mot-cle pour la definition a priori de la liste d'instant -# ---------------------------------------------------------------------------------------------------------------------------------- - -DEFI_LIST =FACT(fr = "Definition a priori de la liste d'instants", - statut = 'o', - max = 1, - METHODE = SIMP(fr = "Methode de definition de la liste d'instants", - statut = 'o', - typ = 'TXM', - max = 1, - position = 'global', - into = ("MANUEL","AUTO",), - defaut = "MANUEL", - ), - b_manuel = BLOC(fr = "Liste d'instants donnée par l'utilisateur", - condition = "METHODE == 'MANUEL' ", - regles=(UN_PARMI('LIST_INST','VALE','RESULTAT'), - PRESENT_PRESENT('RESULTAT','SUBD_PAS'),), - VALE = SIMP(statut = 'f', - typ = 'R', - max = '**'), - LIST_INST = SIMP(statut = 'f', - typ = listr8_sdaster, - ), - RESULTAT = SIMP(statut = 'f', - typ = resultat_sdaster, - ), - SUBD_PAS = SIMP(statut = 'f', - typ = 'I', - max = 1, - val_min = 1, - ), - - ), - b_auto = BLOC(fr = "Gestion automatique de la liste d'instants", - condition = "(METHODE == 'AUTO') ", - regles=(UN_PARMI('LIST_INST','VALE',),), - VALE = SIMP(statut = 'f', - typ = 'R', - max = '**'), - LIST_INST = SIMP(statut = 'f', - typ = listr8_sdaster, - ), - PAS_MINI = SIMP(statut = 'f', - typ = 'R', - max = 1, - val_min = 1.e-12, - ), - PAS_MAXI = SIMP(statut = 'f', - typ = 'R', - max = 1, - ), - NB_PAS_MAXI = SIMP(statut = 'f', - typ = 'I', - max = 1, - val_max = 1000000, - defaut = 1000000, - ), - ), - ), -# ---------------------------------------------------------------------------------------------------------------------------------- -# mot-cle pour le comportement en cas d'echec (on doit recommencer le meme instant) -# ---------------------------------------------------------------------------------------------------------------------------------- - -ECHEC =FACT(fr = "Comportement en cas d'echec", - statut = 'd', - max = '**', - EVENEMENT = SIMP(fr = "Type de l'evenement", - statut = 'f', - typ = 'TXM', - max = 1, - into = ("ERREUR","DELTA_GRANDEUR","COLLISION", - "INTERPENETRATION","DIVE_RESI","INSTABILITE"), - defaut = "ERREUR", - ), - b_erreur = BLOC(fr = "Event: erreur ou iter_maxi", - condition = "EVENEMENT == 'ERREUR' ", - ACTION = SIMP(fr = "Actions possibles", - statut = 'f', - max = 1, - typ = 'TXM', - into = ("ARRET","DECOUPE","REAC_PRECOND", - "ITER_SUPPL","AUTRE_PILOTAGE"), - defaut = "DECOUPE", - ), - b_deco = bloc_deco, - b_supp = bloc_supp, - ), - b_edelta = BLOC(fr = "Event: l'increment d'une composante d'un champ depasse le seuil", - condition = "EVENEMENT == 'DELTA_GRANDEUR' ", - VALE_REF = SIMP(fr = "Valeur du seuil", - statut = 'o', - typ = 'R', - max = 1, - ), - NOM_CHAM = SIMP(fr = "Nom du champ", - statut = 'o', - typ = 'TXM', - max = 1, - into = ("DEPL","VARI_ELGA","SIEF_ELGA",), - ), - NOM_CMP = SIMP(fr = "Nom de la composante", - statut = 'o', - typ = 'TXM', - max = 1, - ), - ACTION = SIMP(fr = "Actions possibles", - statut = 'f', - max = 1, - typ = 'TXM', - into = ("ARRET","DECOUPE",), - defaut = "DECOUPE", - ), - b_deco = bloc_deco, - ), - b_colli = BLOC(fr = "Event: collision", - condition = "EVENEMENT == 'COLLISION' ", - ACTION = SIMP(fr = "Actions possibles", - statut = 'f', - max = 1, - typ = 'TXM', - into = ("ARRET","DECOUPE",), - defaut = "DECOUPE", - ), - b_deco2 = bloc_deco2, - ), - b_penetration = BLOC(fr = "Event: interpenetration des surfaces en contact", - condition = "EVENEMENT == 'INTERPENETRATION' ", - PENE_MAXI = SIMP(fr = "Valeur maxi de l'interpenetration", - statut = 'o', - typ = 'R', - max = 1, - ), - - - ACTION = SIMP(fr = "Actions possibles", - statut = 'f', - max = 1, - typ = 'TXM', - into = ("ARRET","ADAPT_COEF_PENA",), - defaut = "ADAPT_COEF_PENA", - ), - b_pene = bloc_pene, - ), - b_dive_resi = BLOC(fr = "Event: divergence du residu", - condition = "EVENEMENT == 'DIVE_RESI' ", - ACTION = SIMP(fr = "Actions possibles", - statut = 'f', - max = 1, - typ = 'TXM', - into = ("DECOUPE",), - defaut = "DECOUPE", - ), - b_deco = bloc_deco, - ), - b_instabilite = BLOC(fr = "Event: instabilite", - condition = "EVENEMENT == 'INSTABILITE' ", - ACTION = SIMP(fr = "Actions possibles", - statut = 'f', - max = 1, - typ = 'TXM', - into = ("ARRET","CONTINUE",), - defaut = "CONTINUE", - ), - ), - - ), - -# ---------------------------------------------------------------------------------------------------------------------------------- -# Mot-cle pour le comportement en cas de succes (on a bien converge) -# ---------------------------------------------------------------------------------------------------------------------------------- - -b_adap = BLOC(condition="METHODE == 'AUTO'", - -ADAPTATION =FACT(fr = "Parametres de l'evenement declencheur de l'adaptation du pas de temps", - statut = 'd', - max = '**', - EVENEMENT = SIMP(fr = "Nom de l'evenement declencheur de l'adaptation", - statut = 'f', - max = 1, - typ = 'TXM', - into = ("SEUIL","TOUT_INST","AUCUN"), - defaut = "SEUIL", - ), - b_adap_seuil = BLOC(fr = "Seuil d'adaptation", - condition = "EVENEMENT == 'SEUIL' ", - regles = (PRESENT_PRESENT('NB_INCR_SEUIL','NOM_PARA',), - PRESENT_PRESENT('NB_INCR_SEUIL','CRIT_COMP',), - PRESENT_PRESENT('NB_INCR_SEUIL','CRIT_COMP',),), - NB_INCR_SEUIL = SIMP(statut = 'f', - typ = 'I', - defaut = 2, - ), - NOM_PARA = SIMP(statut = 'f', - typ = 'TXM', - into = ("NB_ITER_NEWTON",), - defaut = "NB_ITER_NEWTON", - ), - CRIT_COMP = SIMP(statut = 'f', - typ = 'TXM', - into = ("LT","GT","LE","GE"), - defaut = "LE", - ), - b_vale_I = BLOC(fr = "Valeur entiere", - condition = "NOM_PARA == 'NB_ITER_NEWTON' ", - VALE_I = SIMP(statut='f',typ='I',), - ), - ), - - -# -# Parametres du mode de calcul de dt+ -# dans le cas FIXE :(deltaT+) = (deltaT-)x(1+PCENT_AUGM/100) -# dans le cas DELTA_GRANDEUR : (deltaT+) = (deltaT-)x(VALREF/deltaVAL) : l'acceleration est inversement proportionnelle -# a la variation de la grandeur -# dans le cas ITER_NEWTON : (deltaT+) = (deltaT-) x sqrt(VALREF/N) : l'acceleration est inversement proportionnelle -# au nombre d'iterations de Newton precedent - - MODE_CALCUL_TPLUS = SIMP(fr = "Parametres du mode de calcul de dt+", - statut = 'f', - max = 1, - typ = 'TXM', - into = ("FIXE","DELTA_GRANDEUR","ITER_NEWTON","IMPLEX"), - defaut = 'FIXE', - ), - - b_mfixe = BLOC(fr = "Mode de calcul de dt+: fixe", - condition = "MODE_CALCUL_TPLUS == 'FIXE' ", - PCENT_AUGM = SIMP(statut = 'f', - max = 1, - typ = 'R', - defaut = 100., - val_min = -100., - ), - ), - b_mdelta = BLOC(fr = "Mode de calcul de dt+: increment d'une grandeur", - condition = "MODE_CALCUL_TPLUS == 'DELTA_GRANDEUR' ", - VALE_REF = SIMP(statut = 'o', - max = 1, - typ = 'R', - ), - NOM_CHAM = SIMP(statut = 'o', - max = 1, - typ = 'TXM', - into = ("DEPL","VARI_ELGA","SIEF_ELGA",), - ), - NOM_CMP = SIMP(statut = 'o', - max = 1, - typ = 'TXM',), - ), - b_mitnew = BLOC(fr = "Mode de calcul de dt+: nb iterations de Newton", - condition = "MODE_CALCUL_TPLUS == 'ITER_NEWTON' ", - NB_ITER_NEWTON_REF= SIMP(statut = 'o', - max = 1, - typ = 'I', - ), - ), -# les schemas pre-definis : -# abaqus : -# EVENEMENT ='SEUIL' -# NB_INCR_SEUIL = 2 -# NOM_PARA ='NB_ITER_NEWTON' -# CRIT_COMP ='LE' -# VALE_I = 5 -# MODE_CALCUL_TPLUS ='FIXE' -# PCENT_AUGM = 50. -# Zebulon 1 : -# EVENEMENT ='TOUT_INST' -# MODE_CALCUL_TPLUS ='DELTA_GRANDEUR' -# VALE_REF = valref -# NOM_CHAM ='VARI_ELGA' -# NOM_CMP ='V1' -# Zebulon 2 : -# EVENEMENT ='TOUT_INST' -# MODE_CALCUL_TPLUS ='ITER_NEWTON' -# NB_ITER_NEWTON_REF= nc -# Tough2 : -# EVENEMENT ='SEUIL' -# NB_INCR_SEUIL = 1 -# NOM_PARA ='NB_ITER_NEWTON' -# CRIT_COMP ='LE' -# VALE_I = n -# MODE_CALCUL_TPLUS ='FIXE' -# PCENT_AUGM = 100. -# Oliver : -# EVENEMENT ='TOUT_INST' -# MODE_CALCUL_TPLUS ='FORMULE' -# NOM_SCHEMA ='OLIVER' - - ), - ), -# ---------------------------------------------------------------------------------------------------------------------------------- - - INFO =SIMP(statut='f',typ='I',defaut= 1,into=(1,2) ), - -) ; - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: mathieu.courtois at edf.fr -DEFI_LIST_REEL=OPER(nom="DEFI_LIST_REEL",op=24,sd_prod=listr8_sdaster, - fr="Définir une liste de réels strictement croissante", - reentrant='n', - UIinfo={"groupes":("Fonctions",)}, - regles=(UN_PARMI('VALE','DEBUT',), - EXCLUS('VALE','INTERVALLE'), - ENSEMBLE('DEBUT','INTERVALLE')), - VALE =SIMP(statut='f',typ='R',max='**'), - DEBUT =SIMP(statut='f',typ='R'), - INTERVALLE =FACT(statut='f',max='**', - regles=(UN_PARMI('NOMBRE','PAS'),), - JUSQU_A =SIMP(statut='o',typ='R'), - NOMBRE =SIMP(statut='f',typ='I'), - PAS =SIMP(statut='f',typ='R'), - ), - INFO =SIMP(statut='f',typ='I',defaut=1,into=(1,2)), - TITRE =SIMP(statut='f',typ='TXM',max='**'), -) ; - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: jacques.pellet at edf.fr -DEFI_MAILLAGE=OPER(nom="DEFI_MAILLAGE",op= 88,sd_prod=maillage_sdaster, - fr="Définition d'un nouveau maillage à partir de macro-éléments", - reentrant='n', - UIinfo={"groupes":("Maillage",)}, - DEFI_SUPER_MAILLE =FACT(statut='o',max='**', - MACR_ELEM =SIMP(statut='o',typ=(macr_elem_stat,macr_elem_dyna),max='**' ), - SUPER_MAILLE =SIMP(statut='f',typ=ma,max='**'), - TRAN =SIMP(statut='f',typ='R',max=3), - ANGL_NAUT =SIMP(statut='f',typ='R',max=3), - b_angl_naut =BLOC(condition = "ANGL_NAUT != None", - CENTRE =SIMP(statut='f',typ='R',max=3), - ), - ), - RECO_GLOBAL =FACT(statut='f',max='**', - regles=(UN_PARMI('TOUT','SUPER_MAILLE'),), - TOUT =SIMP(statut='f',typ='TXM',into=("OUI",) ), - SUPER_MAILLE =SIMP(statut='f',typ=ma,max='**'), - CRITERE =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU") ), - PRECISION =SIMP(statut='f',typ='R',defaut= 1.E-3 ), - ), - RECO_SUPER_MAILLE =FACT(statut='f',max='**', - SUPER_MAILLE =SIMP(statut='o',typ=ma,max='**'), - GROUP_NO =SIMP(statut='o',typ=grno,max='**'), - OPTION =SIMP(statut='f',typ='TXM',defaut="GEOMETRIQUE",into=("GEOMETRIQUE","NOEUD_A_NOEUD","INVERSE") ), - geometrique =BLOC(condition = "OPTION == 'GEOMETRIQUE'", - CRITERE =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU") ), - PRECISION =SIMP(statut='f',typ='R',defaut= 1.E-3 ), - ), - ), - DEFI_NOEUD =FACT(statut='f',max='**', - regles=(UN_PARMI('TOUT','NOEUD_INIT'),), - TOUT =SIMP(statut='f',typ='TXM',into=("OUI",), - fr="Renommage de tous les noeuds" ), - NOEUD_INIT =SIMP(statut='f',typ=no, - fr="Renommage d un seul noeud"), - b_tout =BLOC(condition = "TOUT != None", - PREFIXE =SIMP(statut='f',typ='TXM' ), - INDEX =SIMP(statut='o',typ='I',max='**'), - ), - b_noeud_init =BLOC(condition = "NOEUD_INIT != None", - SUPER_MAILLE =SIMP(statut='o',typ=ma), - NOEUD_FIN =SIMP(statut='o',typ=no), - ), - ), - DEFI_GROUP_NO =FACT(statut='f',max='**', - regles=(UN_PARMI('TOUT','SUPER_MAILLE'), - AU_MOINS_UN('INDEX','GROUP_NO_FIN'), - ENSEMBLE('GROUP_NO_INIT','GROUP_NO_FIN'),), -# la regle ancien catalogue AU_MOINS_UN__: ( INDEX , GROUP_NO_FIN ) incoherente avec doc U - TOUT =SIMP(statut='f',typ='TXM',into=("OUI",), - fr="Création de plusieurs groupes de noeuds" ), - SUPER_MAILLE =SIMP(statut='f',typ=ma, - fr="Création de plusieurs groupes de noeuds"), - GROUP_NO_INIT =SIMP(statut='f',typ=grno, - fr="Création d un seul groupe de noeuds"), - PREFIXE =SIMP(statut='f',typ='TXM' ), - INDEX =SIMP(statut='f',typ='I',max='**'), - GROUP_NO_FIN =SIMP(statut='f',typ=grno), - ), -) ; - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2013 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: jean-luc.flejou at edf.fr - -DEFI_MATER_GC=MACRO(nom="DEFI_MATER_GC", - op=OPS('Macro.defi_mater_gc_ops.defi_mater_gc_ops'), - sd_prod=mater_sdaster, - reentrant='n', - UIinfo={"groupes":("Modélisation",) }, - fr="Définir des lois matériaux spécifique au Génie Civil", - # - regles = (UN_PARMI('MAZARS','ACIER','ENDO_FISS_EXP'), ), - # - REGLE =SIMP(statut='f',typ='TXM', into=('EC2',), defaut='EC2'), - # ============================================================================ - MAZARS =FACT(statut= 'f',max= 1, - fr="Paramètres matériaux de MAZARS unilatéral en 1D à partir des caractéristiques du béton", - UNITE_LONGUEUR =SIMP(statut='o',typ='TXM', into=("M","MM"), - fr="Unité de longueur du problème [M|MM]"), - FCJ =SIMP(statut='o',typ='R', val_min=0.0E+0, - fr="Contrainte au pic en compression [Unité]"), - EIJ =SIMP(statut='f',typ='R', val_min=0.0E+0, - fr="Module d'Young [Unité]"), - EPSI_C =SIMP(statut='f',typ='R', val_min=0.0E+0, - fr="Déformation au pic en compression"), - FTJ =SIMP(statut='f',typ='R', val_min=0.0E+0, - fr="Contrainte au pic en traction [Unité]"), - NU =SIMP(statut='f',typ='R', val_min=0.0E+0, val_max=0.5E+0, - fr="Coefficient de poisson"), - EPSD0 =SIMP(statut='f',typ='R', val_min=0.0E+0, - fr="Déformation, seuil d'endommagement"), - K =SIMP(statut='f',typ='R', val_min=0.0E+0, - fr="Asymptote en cisaillement pur"), - AC =SIMP(statut='f',typ='R', val_min=0.E+0, - fr="Paramètre de décroissance post-pic en compression"), - BC =SIMP(statut='f',typ='R', val_min=0.0E+0, - fr="Paramètre de décroissance post-pic en compression"), - AT =SIMP(statut='f',typ='R', val_min=0.0E+0, val_max=1.0E+0, - fr="Paramètre de décroissance post-pic en traction"), - BT =SIMP(statut='f',typ='R', val_min=0.0E+0, - fr="Paramètre de décroissance post-pic en traction"), - # Pour post-traitement ELS et ELU - SIGM_LIM =SIMP(statut='f',typ='R', fr="Contrainte limite, post-traitement"), - EPSI_LIM =SIMP(statut='f',typ='R', fr="Déformation limite, post-traitement"), - ), - # ============================================================================ - ACIER =FACT(statut= 'f',max= 1, - fr="Définir les paramètres matériaux de l'acier pour le Génie Civil", - E =SIMP(statut='o',typ='R', val_min=0.0E+0, fr="Module d'Young"), - SY =SIMP(statut='o',typ='R', fr="Limite élastique"), - NU =SIMP(statut='f',typ='R', val_min=0.0E+0, val_max=0.5E+0, fr="Coefficient de poisson"), - D_SIGM_EPSI =SIMP(statut='f',typ='R', fr="Module plastique"), - # Pour post-traitement ELS et ELU - SIGM_LIM =SIMP(statut='f',typ='R', fr="Contrainte limite, post-traitement"), - EPSI_LIM =SIMP(statut='f',typ='R', fr="Déformation limite, post-traitement"), - ), - # ============================================================================ - ENDO_FISS_EXP =FACT(statut= 'f',max= 1, - fr="Définir les paramètres matériaux du béton pour la loi ENDO_FISS_EXP", - regles = ( - UN_PARMI('FT','FT_FENDAGE'), - UN_PARMI('P','DSIG_DU'), - EXCLUS('Q','Q_REL'), - ), - E =SIMP(statut='o',typ='R', val_min=0.0E+0, fr="Module d'Young"), - NU =SIMP(statut='o',typ='R', val_min=0.0E+0, val_max=0.5E+0, fr="Coefficient de poisson"), - FT =SIMP(statut='f',typ='R', val_min=0.0E+0 , fr="Limite en traction simple"), - FT_FENDAGE =SIMP(statut='f',typ='R', val_min=0.0E+0 , fr="Limite en traction obtenue via un essai brésilien"), - FC =SIMP(statut='o',typ='R', val_min=0.0E+0 , fr="Limite en compression simple"), - GF =SIMP(statut='o',typ='R', val_min=0.0E+0 , fr="Energie de fissuration"), - P =SIMP(statut='f',typ='R', val_min=1.0E+0 , fr="Parametre dominant de la loi cohésive asymptotique"), - DSIG_DU =SIMP(statut='f',typ='R', val_min=1.102658 , fr="Pente initiale (au signe pres) de la loi cohesive asymptotique"), - Q =SIMP(statut='f',typ='R', val_min=0.0E+0 , fr="Parametre secondaire de la loi cohesive asymptotique"), - Q_REL =SIMP(statut='f',typ='R', val_min=0.0E+0, val_max=1.0 , fr="Parametre Q exprime de maniere relative par rapport a Qmax(P)"), - LARG_BANDE =SIMP(statut='o',typ='R', val_min=0.0E+0 , fr="Largeur de bande d'endommagement (2*D)"), - COEF_RIGI_MINI =SIMP(statut='f',typ='R', val_min=0.0, defaut = 0.0 , fr="Rigidite minimale dans la matrice tangente"), - ), - # ============================================================================ - INFO =SIMP(statut='f',typ='I', into=(1,2,), defaut=1), - RHO =SIMP(statut='f',typ='R', fr="Masse volumique"), - ALPHA =SIMP(statut='f',typ='R', fr="Coefficient de dilatation"), - AMOR_ALPHA =SIMP(statut='f',typ='R'), - AMOR_BETA =SIMP(statut='f',typ='R'), - AMOR_HYST =SIMP(statut='f',typ='R'), -) - - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2013 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: j-pierre.lefebvre at edf.fr -DEFI_MATERIAU=OPER(nom="DEFI_MATERIAU",op=5,sd_prod=mater_sdaster, - fr="Définition des paramètres décrivant le comportement d un matériau", - reentrant='f', - UIinfo={"groupes":("Modélisation",)}, - regles=(EXCLUS('ELAS','ELAS_FO','ELAS_FLUI','ELAS_ISTR','ELAS_ISTR_FO','ELAS_ORTH', - 'ELAS_ORTH_FO','ELAS_COQUE','ELAS_COQUE_FO', - 'ELAS_HYPER','ELAS_2NDG','ELAS_GLRC'), - EXCLUS('THER','THER_FO','THER_ORTH','THER_NL'), - EXCLUS('ECRO_LINE','ECRO_LINE_FO','ECRO_PUIS','ECRO_COOK','ECRO_COOK_FO',), - EXCLUS('ENDO_HETEROGENE'), - EXCLUS('TAHERI','TAHERI_FO'), - EXCLUS('ENDO_SCALAIRE','ENDO_SCALAIRE_FO'), - EXCLUS('ENDO_FISS_EXP','ENDO_FISS_EXP_FO'), - EXCLUS('ROUSSELIER','ROUSSELIER_FO'), - EXCLUS('VISC_SINH','VISC_SINH_FO'), - PRESENT_PRESENT('ROUSSELIER','TRACTION'), - PRESENT_PRESENT('ROUSSELIER_FO','TRACTION'), - EXCLUS('CIN1_CHAB','CIN1_CHAB_FO'), - EXCLUS('CIN2_CHAB','CIN2_CHAB_FO'), - EXCLUS('VISCOCHAB','VISCOCHAB_FO'), - EXCLUS('LEMAITRE','LEMAITRE_FO','VISC_IRRA_LOG', - 'LEMA_SEUIL','LEMA_SEUIL_FO','LEMAITRE_IRRA','LMARC_IRRA',), - EXCLUS('META_LEMA_ANI','META_LEMA_ANI_FO'), - EXCLUS('VENDOCHAB','VENDOCHAB_FO'), - EXCLUS('VISC_ENDO','VISC_ENDO_FO'), - PRESENT_PRESENT('BPEL_ACIER','ELAS'), - PRESENT_PRESENT('ETCC_ACIER','ELAS'), - EXCLUS('ETCC_ACIER','BPEL_ACIER'), - EXCLUS('ETCC_BETON','BPEL_BETON'), - - EXCLUS('RCCM','RCCM_FO'), - EXCLUS('WEIBULL','WEIBULL_FO'), - PRESENT_PRESENT('DHRC','DHRC_SEUILS'), - PRESENT_PRESENT('LAIGLE','ELAS'), - PRESENT_PRESENT('LETK','ELAS'), - PRESENT_PRESENT('DRUCK_PRAGER','ELAS'), - PRESENT_PRESENT('VISC_DRUC_PRAG','ELAS'), - PRESENT_PRESENT('ELAS_GONF','ELAS'), - PRESENT_PRESENT('HOEK_BROWN','ELAS'), - EXCLUS('MAZARS','MAZARS_FO'), - PRESENT_PRESENT('JOINT_BA','ELAS'), - PRESENT_PRESENT('CABLE','ELAS'), - PRESENT_PRESENT('MOHR_COULOMB','ELAS'), - PRESENT_PRESENT('ELAS_GLRC','GLRC_DM'), - ), - MATER =SIMP(statut='f',typ=mater_sdaster), -# -# comportement élastique -# - ELAS =FACT(statut='f', - E =SIMP(statut='o',typ='R',val_min=0.E+0), - NU =SIMP(statut='o',typ='R',val_min=-1.E+0,val_max=0.5E+0), - RHO =SIMP(statut='f',typ='R'), - ALPHA =SIMP(statut='f',typ='R'), - AMOR_ALPHA =SIMP(statut='f',typ='R'), - AMOR_BETA =SIMP(statut='f',typ='R'), - AMOR_HYST =SIMP(statut='f',typ='R'), - ), - ELAS_FO =FACT(statut='f', - regles=(PRESENT_PRESENT('ALPHA','TEMP_DEF_ALPHA'),), - E =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - NU =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - RHO =SIMP(statut='f',typ='R'), - TEMP_DEF_ALPHA =SIMP(statut='f',typ='R'), - PRECISION =SIMP(statut='f',typ='R',defaut= 1.), - ALPHA =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - AMOR_ALPHA =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - AMOR_BETA =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - AMOR_HYST =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - K_DESSIC =SIMP(statut='f',typ='R',defaut= 0.E+0 ), - B_ENDOGE =SIMP(statut='f',typ='R',defaut= 0.E+0 ), - FONC_DESORP =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - ), - ELAS_FLUI =FACT(statut='f', - E =SIMP(statut='o',typ='R'), - NU =SIMP(statut='o',typ='R'), - RHO =SIMP(statut='o',typ='R'), - PROF_RHO_F_INT =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - PROF_RHO_F_EXT =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - COEF_MASS_AJOU =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - ), - ELAS_ISTR =FACT(statut='f', - E_L =SIMP(statut='o',typ='R'), - E_N =SIMP(statut='o',typ='R'), - NU_LT =SIMP(statut='o',typ='R'), - NU_LN =SIMP(statut='o',typ='R'), - G_LN =SIMP(statut='o',typ='R'), - RHO =SIMP(statut='f',typ='R'), - ALPHA_L =SIMP(statut='f',typ='R',defaut= 0.E+0 ), - ALPHA_N =SIMP(statut='f',typ='R',defaut= 0.E+0 ), - ), - ELAS_ISTR_FO =FACT(statut='f', - regles=( - PRESENT_PRESENT('ALPHA_L','TEMP_DEF_ALPHA'), - PRESENT_PRESENT('ALPHA_N','TEMP_DEF_ALPHA'), - ), - E_L =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - E_N =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - NU_LT =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - NU_LN =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - G_LN =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - RHO =SIMP(statut='f',typ='R'), - TEMP_DEF_ALPHA =SIMP(statut='f',typ='R'), - PRECISION =SIMP(statut='f',typ='R',defaut= 1.), - ALPHA_L =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - ALPHA_N =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - ), - ELAS_ORTH =FACT(statut='f', - E_L =SIMP(statut='o',typ='R'), - E_T =SIMP(statut='o',typ='R'), - E_N =SIMP(statut='f',typ='R'), - NU_LT =SIMP(statut='o',typ='R'), - NU_LN =SIMP(statut='f',typ='R'), - NU_TN =SIMP(statut='f',typ='R'), - G_LT =SIMP(statut='o',typ='R'), - G_LN =SIMP(statut='f',typ='R'), - G_TN =SIMP(statut='f',typ='R'), - RHO =SIMP(statut='f',typ='R'), - ALPHA_L =SIMP(statut='f',typ='R',defaut= 0.E+0 ), - ALPHA_T =SIMP(statut='f',typ='R',defaut= 0.E+0 ), - ALPHA_N =SIMP(statut='f',typ='R',defaut= 0.E+0 ), - XT =SIMP(statut='f',typ='R',defaut= 1. ), - XC =SIMP(statut='f',typ='R',defaut= 1. ), - YT =SIMP(statut='f',typ='R',defaut= 1. ), - YC =SIMP(statut='f',typ='R',defaut= 1. ), - S_LT =SIMP(statut='f',typ='R',defaut= 1. ), - AMOR_ALPHA =SIMP(statut='f',typ='R'), - AMOR_BETA =SIMP(statut='f',typ='R'), - AMOR_HYST =SIMP(statut='f',typ='R'), - ), - ELAS_ORTH_FO =FACT(statut='f', - regles=( - PRESENT_PRESENT('ALPHA_L','TEMP_DEF_ALPHA'), - PRESENT_PRESENT('ALPHA_N','TEMP_DEF_ALPHA'), - PRESENT_PRESENT('ALPHA_T','TEMP_DEF_ALPHA'), - ), - E_L =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - E_T =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - E_N =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - NU_LT =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - NU_LN =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - NU_TN =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - G_LT =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - G_LN =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - G_TN =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - RHO =SIMP(statut='f',typ='R'), - TEMP_DEF_ALPHA =SIMP(statut='f',typ='R'), - PRECISION =SIMP(statut='f',typ='R',defaut= 1. ), - ALPHA_L =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - ALPHA_T =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - ALPHA_N =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - AMOR_ALPHA =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - AMOR_BETA =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - AMOR_HYST =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - ), - ELAS_HYPER =FACT(statut='f', - regles=(UN_PARMI('K','NU'),), - C10 =SIMP(statut='o',typ='R', - fr="Si C10 est le seul coefficient fourni, alors le matériau est Néo-Hookéen."), - C01 =SIMP(statut='f',typ='R',defaut=0.0, - fr="Si l'on fournit C01 en plus de C10, on obtient un matériau de type Mooney-Rivlin."), - C20 =SIMP(statut='f',typ='R',defaut=0.0, - fr="Si l'on fournit C20 en plus de C10 et C01, on obtient un matériau de type Signorini."), - K =SIMP(statut='f',typ='R',fr="Module de compressibilité."), - NU =SIMP(statut='f',typ='R',val_min=-1.E+0,val_max=0.5E+0,fr="Coefficient de Poisson."), - RHO =SIMP(statut='f',typ='R',defaut=0.0,fr="Masse volumique."), - ), - ELAS_COQUE =FACT(statut='f', - regles=(EXCLUS('MEMB_L','M_LLLL',), - PRESENT_PRESENT('MEMB_L','MEMB_LT', 'MEMB_T','MEMB_G_LT','FLEX_L','FLEX_LT', - 'FLEX_T','FLEX_G_LT','CISA_L','CISA_T',), - PRESENT_PRESENT('M_LLLL','M_LLTT','M_LLLT','M_TTTT','M_TTLT','M_LTLT','F_LLLL', - 'F_LLTT','F_LLLT','F_TTTT','F_TTLT','F_LTLT','MF_LLLL', - 'MF_LLTT','MF_LLLT','MF_TTTT','MF_TTLT','MF_LTLT','MC_LLLZ', - 'MC_LLTZ','MC_TTLZ','MC_TTTZ','MC_LTLZ','MC_LTTZ','FC_LLLZ', - 'FC_LLTZ','FC_TTLZ','FC_TTTZ','FC_LTLZ','FC_LTTZ','C_LZLZ', - 'C_LZTZ','C_TZTZ'),), - MEMB_L =SIMP(statut='f',typ='R'), - MEMB_LT =SIMP(statut='f',typ='R'), - MEMB_T =SIMP(statut='f',typ='R'), - MEMB_G_LT =SIMP(statut='f',typ='R'), - FLEX_L =SIMP(statut='f',typ='R'), - FLEX_LT =SIMP(statut='f',typ='R'), - FLEX_T =SIMP(statut='f',typ='R'), - FLEX_G_LT =SIMP(statut='f',typ='R'), - CISA_L =SIMP(statut='f',typ='R'), - CISA_T =SIMP(statut='f',typ='R'), - M_LLLL =SIMP(statut='f',typ='R'), - M_LLTT =SIMP(statut='f',typ='R'), - M_LLLT =SIMP(statut='f',typ='R'), - M_TTTT =SIMP(statut='f',typ='R'), - M_TTLT =SIMP(statut='f',typ='R'), - M_LTLT =SIMP(statut='f',typ='R'), - F_LLLL =SIMP(statut='f',typ='R'), - F_LLTT =SIMP(statut='f',typ='R'), - F_LLLT =SIMP(statut='f',typ='R'), - F_TTTT =SIMP(statut='f',typ='R'), - F_TTLT =SIMP(statut='f',typ='R'), - F_LTLT =SIMP(statut='f',typ='R'), - MF_LLLL =SIMP(statut='f',typ='R'), - MF_LLTT =SIMP(statut='f',typ='R'), - MF_LLLT =SIMP(statut='f',typ='R'), - MF_TTTT =SIMP(statut='f',typ='R'), - MF_TTLT =SIMP(statut='f',typ='R'), - MF_LTLT =SIMP(statut='f',typ='R'), - MC_LLLZ =SIMP(statut='f',typ='R'), - MC_LLTZ =SIMP(statut='f',typ='R'), - MC_TTLZ =SIMP(statut='f',typ='R'), - MC_TTTZ =SIMP(statut='f',typ='R'), - MC_LTLZ =SIMP(statut='f',typ='R'), - MC_LTTZ =SIMP(statut='f',typ='R'), - FC_LLLZ =SIMP(statut='f',typ='R'), - FC_LLTZ =SIMP(statut='f',typ='R'), - FC_TTLZ =SIMP(statut='f',typ='R'), - FC_TTTZ =SIMP(statut='f',typ='R'), - FC_LTLZ =SIMP(statut='f',typ='R'), - FC_LTTZ =SIMP(statut='f',typ='R'), - C_LZLZ =SIMP(statut='f',typ='R'), - C_LZTZ =SIMP(statut='f',typ='R'), - C_TZTZ =SIMP(statut='f',typ='R'), - RHO =SIMP(statut='f',typ='R'), - ALPHA =SIMP(statut='f',typ='R'), - ), - ELAS_COQUE_FO =FACT(statut='f', - regles=(EXCLUS('MEMB_L','M_LLLL',), - PRESENT_PRESENT('MEMB_L','MEMB_LT','MEMB_T','MEMB_G_LT','FLEX_L','FLEX_LT', - 'FLEX_T','FLEX_G_LT','CISA_L','CISA_T',), - PRESENT_PRESENT('M_LLLL','M_LLTT','M_LLLT','M_TTTT','M_TTLT','M_LTLT','F_LLLL', - 'F_LLTT','F_LLLT','F_TTTT','F_TTLT','F_LTLT','MF_LLLL','MF_LLTT', - 'MF_LLLT','MF_TTTT','MF_TTLT','MF_LTLT','MC_LLLZ','MC_LLTZ', - 'MC_TTLZ','MC_TTTZ','MC_LTLZ','MC_LTTZ','FC_LLLZ','FC_LLTZ', - 'FC_TTLZ','FC_TTTZ','FC_LTLZ','FC_LTTZ','C_LZLZ','C_LZTZ','C_TZTZ'),), - MEMB_L =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - MEMB_LT =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - MEMB_T =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - MEMB_G_LT =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - FLEX_L =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - FLEX_LT =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - FLEX_T =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - FLEX_G_LT =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - CISA_L =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - CISA_T =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - M_LLLL =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - M_LLTT =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - M_LLLT =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - M_TTTT =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - M_TTLT =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - M_LTLT =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - F_LLLL =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - F_LLTT =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - F_LLLT =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - F_TTTT =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - F_TTLT =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - F_LTLT =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - MF_LLLL =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - MF_LLTT =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - MF_LLLT =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - MF_TTTT =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - MF_TTLT =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - MF_LTLT =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - MC_LLLZ =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - MC_LLTZ =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - MC_TTLZ =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - MC_TTTZ =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - MC_LTLZ =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - MC_LTTZ =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - FC_LLLZ =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - FC_LLTZ =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - FC_TTLZ =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - FC_TTTZ =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - FC_LTLZ =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - FC_LTTZ =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - C_LZLZ =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - C_LZTZ =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - C_TZTZ =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - RHO =SIMP(statut='f',typ='R'), - ALPHA =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - ), - ELAS_MEMBRANE =FACT(statut='f', - M_LLLL =SIMP(statut='o',typ='R'), - M_LLTT =SIMP(statut='o',typ='R'), - M_LLLT =SIMP(statut='o',typ='R'), - M_TTTT =SIMP(statut='o',typ='R'), - M_TTLT =SIMP(statut='o',typ='R'), - M_LTLT =SIMP(statut='o',typ='R'), - RHO =SIMP(statut='f',typ='R'), - ALPHA =SIMP(statut='f',typ='R'), - ), - ELAS_2NDG =FACT(statut='f', - A1 =SIMP(statut='o',typ='R'), - A2 =SIMP(statut='f',typ='R'), - A3 =SIMP(statut='f',typ='R'), - A4 =SIMP(statut='f',typ='R'), - A5 =SIMP(statut='f',typ='R'), - ), - ELAS_GLRC =FACT(statut='f', - regles=(PRESENT_PRESENT('BT1','BT2'),), - E_M =SIMP(statut='o',typ='R',val_min=0.E+0), - NU_M =SIMP(statut='o',typ='R',val_min=0.E+0,val_max=0.5+0), - E_F =SIMP(statut='f',typ='R',val_min=0.E+0), - NU_F =SIMP(statut='f',typ='R',val_min=0.E+0,val_max=0.5+0), - BT1 =SIMP(statut='f',typ='R',val_min=0.E+0), - BT2 =SIMP(statut='f',typ='R',val_min=0.E+0,val_max=0.5+0), - RHO =SIMP(statut='f',typ='R',val_min=0.E+0), - ALPHA =SIMP(statut='f',typ='R'), - AMOR_ALPHA =SIMP(statut='f',typ='R'), - AMOR_BETA =SIMP(statut='f',typ='R'), - AMOR_HYST =SIMP(statut='f',typ='R'), - ), - ELAS_GLRC_FO =FACT(statut='f', - regles=(PRESENT_PRESENT('ALPHA','TEMP_DEF_ALPHA'), - PRESENT_PRESENT('BT1','BT2'),), - E_M =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - NU_M =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - E_F =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - NU_F =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - BT1 =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - BT2 =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - RHO =SIMP(statut='f',typ='R'), - TEMP_DEF_ALPHA =SIMP(statut='f',typ='R'), - ALPHA =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - AMOR_ALPHA =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - AMOR_BETA =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - AMOR_HYST =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - ), - CABLE =FACT(statut='f', - EC_SUR_E =SIMP(statut='f',typ='R',defaut= 1.E-4 ), - ), -# -# comportements mécanique non linéaire -# vérification du domaine de validité - VERI_BORNE =FACT(statut='f', - regles=(ENSEMBLE('TEMP_MAXI','TEMP_MINI'), - ), - EPSI_MAXI =SIMP(statut='f',typ='R'), - TEMP_MAXI =SIMP(statut='f',typ='R'), - TEMP_MINI =SIMP(statut='f',typ='R'), - VEPS_MAXI =SIMP(statut='f',typ='R'), - ), - TRACTION =FACT(statut='f', - SIGM =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - - ), - ECRO_LINE =FACT(statut='f', - D_SIGM_EPSI =SIMP(statut='o',typ='R',), - SY =SIMP(statut='o',typ='R',), - SIGM_LIM =SIMP(statut='f',typ='R'), - EPSI_LIM =SIMP(statut='f',typ='R'), - ), - ENDO_HETEROGENE =FACT(statut='f', - WEIBULL =SIMP(statut='o',typ='R',), - SY =SIMP(statut='o',typ='R',), - KI =SIMP(statut='o',typ='R',), - EPAI =SIMP(statut='o',typ='R',), - GR =SIMP(statut='f',typ='R',defaut= 1.0), - ), - ECRO_LINE_FO =FACT(statut='f', - D_SIGM_EPSI =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - SY =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - ), - ECRO_PUIS =FACT(statut='f', - SY =SIMP(statut='o',typ='R',), - A_PUIS =SIMP(statut='o',typ='R',val_min=0.0), - N_PUIS =SIMP(statut='o',typ='R',val_min=1.E-6), - ), - ECRO_PUIS_FO =FACT(statut='f', - SY =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - A_PUIS =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - N_PUIS =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - ), - ECRO_COOK =FACT(statut='f', - regles=(PRESENT_PRESENT('C','EPSP0'), - PRESENT_PRESENT('TROOM','TMELT','M_PUIS'),), - A =SIMP(statut='o',typ='R',val_min=0.0), - B =SIMP(statut='o',typ='R',val_min=0.0), - C =SIMP(statut='f',typ='R',val_min=0.0), - N_PUIS =SIMP(statut='o',typ='R',val_min=0.0), - M_PUIS =SIMP(statut='f',typ='R',val_min=0.0), - EPSP0 =SIMP(statut='f',typ='R',val_min=1.E-6), - TROOM =SIMP(statut='f',typ='R',val_min=0.0), - TMELT =SIMP(statut='f',typ='R',val_min=0.0), - ), - ECRO_COOK_FO =FACT(statut='f', - regles=(PRESENT_PRESENT('C','EPSP0'), - PRESENT_PRESENT('TROOM','TMELT','M_PUIS'),), - A =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - B =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - C =SIMP(statut='f',typ='R',val_min=0.0), - N_PUIS =SIMP(statut='o',typ='R',val_min=0.0), - M_PUIS =SIMP(statut='f',typ='R',val_min=0.0), - EPSP0 =SIMP(statut='f',typ='R',val_min=1.E-6), - TROOM =SIMP(statut='f',typ='R',val_min=0.0), - TMELT =SIMP(statut='f',typ='R',val_min=0.0), - ), - BETON_ECRO_LINE =FACT(statut='f', - D_SIGM_EPSI =SIMP(statut='o',typ='R'), - SYT =SIMP(statut='o',typ='R'), - SYC =SIMP(statut='f',typ='R'), - ), - BETON_REGLE_PR =FACT(statut='f', - D_SIGM_EPSI =SIMP(statut='o',typ='R'), - SYT =SIMP(statut='o',typ='R'), - SYC =SIMP(statut='f',typ='R'), - EPSC =SIMP(statut='f',typ='R'), - N =SIMP(statut='f',typ='R'), - ), - ENDO_ORTH_BETON =FACT(statut='f', - ALPHA =SIMP(statut='f',typ='R',defaut=0.9), - K0 =SIMP(statut='o',typ='R'), - K1 =SIMP(statut='o',typ='R'), - K2 =SIMP(statut='f',typ='R',defaut=7.E-4), - ECROB =SIMP(statut='o',typ='R'), - ECROD =SIMP(statut='o',typ='R'), - ), - PRAGER =FACT(statut='f', - C =SIMP(statut='o',typ='R'), - ), - PRAGER_FO =FACT(statut='f', - C =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - ), - TAHERI =FACT(statut='f', - R_0 =SIMP(statut='o',typ='R'), - ALPHA =SIMP(statut='o',typ='R'), - M =SIMP(statut='o',typ='R'), - A =SIMP(statut='o',typ='R'), - B =SIMP(statut='o',typ='R'), - C1 =SIMP(statut='o',typ='R'), - C_INF =SIMP(statut='o',typ='R'), - S =SIMP(statut='o',typ='R'), - ), - TAHERI_FO =FACT(statut='f', - R_0 =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - ALPHA =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - M =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - A =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - B =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - C1 =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - C_INF =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - S =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - ), - ROUSSELIER =FACT(statut='f', - D =SIMP(statut='o',typ='R'), - SIGM_1 =SIMP(statut='o',typ='R'), - PORO_INIT =SIMP(statut='o',typ='R'), - PORO_CRIT =SIMP(statut='f',typ='R',defaut= 1. ), - PORO_ACCE =SIMP(statut='f',typ='R',defaut= 1. ), - PORO_LIMI =SIMP(statut='f',typ='R',defaut= 0.999 ), - D_SIGM_EPSI_NORM=SIMP(statut='f',typ='R',defaut= 1. ), - AN =SIMP(statut='f',typ='R',defaut= 0. ), - DP_MAXI =SIMP(statut='f',typ='R',defaut= 0.1), - BETA =SIMP(statut='f',typ='R',defaut=0.85), - ), - ROUSSELIER_FO =FACT(statut='f', - D =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - SIGM_1 =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - PORO_INIT =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - PORO_CRIT =SIMP(statut='f',typ='R',defaut= 1. ), - PORO_ACCE =SIMP(statut='f',typ='R',defaut= 1. ), - PORO_LIMI =SIMP(statut='f',typ='R',defaut= 0.999 ), - D_SIGM_EPSI_NORM=SIMP(statut='f',typ='R',defaut= 1. ), - AN =SIMP(statut='f',typ='R',defaut= 0. ), - DP_MAXI =SIMP(statut='f',typ='R',defaut= 0.1), - BETA =SIMP(statut='f',typ='R',defaut=0.85), - ), - VISC_SINH =FACT(statut='f', - SIGM_0 =SIMP(statut='o',typ='R'), - EPSI_0 =SIMP(statut='o',typ='R'), - M =SIMP(statut='o',typ='R'), - ), - VISC_SINH_FO =FACT(statut='f', - SIGM_0 =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - EPSI_0 =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - M =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - ), - CIN1_CHAB =FACT(statut='f', - R_0 =SIMP(statut='o',typ='R'), - R_I =SIMP(statut='f',typ='R'), - B =SIMP(statut='f',typ='R',defaut= 0.0E+0), - C_I =SIMP(statut='o',typ='R'), - K =SIMP(statut='f',typ='R',defaut= 1.0E+0), - W =SIMP(statut='f',typ='R',defaut= 0.0E+0), - G_0 =SIMP(statut='o',typ='R'), - A_I =SIMP(statut='f',typ='R',defaut= 1.0E+0), - ), - CIN1_CHAB_FO =FACT(statut='f', - R_0 =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - R_I =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - B =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - C_I =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - K =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - W =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - G_0 =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - A_I =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - ), - CIN2_CHAB =FACT(statut='f', - R_0 =SIMP(statut='o',typ='R'), - R_I =SIMP(statut='f',typ='R'), - B =SIMP(statut='f',typ='R',defaut= 0.E+0), - C1_I =SIMP(statut='o',typ='R'), - C2_I =SIMP(statut='o',typ='R'), - K =SIMP(statut='f',typ='R',defaut= 1.), - W =SIMP(statut='f',typ='R',defaut= 0.E+0), - G1_0 =SIMP(statut='o',typ='R'), - G2_0 =SIMP(statut='o',typ='R'), - A_I =SIMP(statut='f',typ='R',defaut= 1.E+0 ), - ), - CIN2_CHAB_FO =FACT(statut='f', - R_0 =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - R_I =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - B =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - C1_I =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - C2_I =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - K =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - W =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - G1_0 =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - G2_0 =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - A_I =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - ), - CIN2_NRAD =FACT(statut='f', - DELTA1 =SIMP(statut='f',typ='R',defaut= 1.E+0,val_min=0.E+0, val_max=1.E+0), - DELTA2 =SIMP(statut='f',typ='R',defaut= 1.E+0,val_min=0.E+0, val_max=1.E+0), - ), - MEMO_ECRO =FACT(statut='f', - MU =SIMP(statut='o',typ='R'), - Q_M =SIMP(statut='o',typ='R'), - Q_0 =SIMP(statut='o',typ='R'), - ETA =SIMP(statut='f',typ='R',defaut= 0.5E+0 ), - ), - MEMO_ECRO_FO =FACT(statut='f', - MU =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - Q_M =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - Q_0 =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - ETA =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - ), - VISCOCHAB =FACT(statut='f', - K_0 =SIMP(statut='o',typ='R'), - A_K =SIMP(statut='f',typ='R',defaut= 0.E+0 ), - A_R =SIMP(statut='f',typ='R',defaut= 1.E+0 ), - K =SIMP(statut='o',typ='R'), - N =SIMP(statut='o',typ='R'), - ALP =SIMP(statut='f',typ='R',defaut= 0.E+0 ), - B =SIMP(statut='f',typ='R'), - M_R =SIMP(statut='f',typ='R',defaut= 1.E+0 ), - G_R =SIMP(statut='f',typ='R',defaut= 0.E+0 ), - MU =SIMP(statut='o',typ='R',defaut= 0.E+0 ), - Q_M =SIMP(statut='o',typ='R'), - Q_0 =SIMP(statut='o',typ='R'), - QR_0 =SIMP(statut='f',typ='R',defaut= 0.E+0 ), - ETA =SIMP(statut='f',typ='R',defaut= 0.5E+0 ), - C1 =SIMP(statut='o',typ='R'), - M_1 =SIMP(statut='f',typ='R',defaut= 1.E+0 ), - D1 =SIMP(statut='f',typ='R',defaut= 1.E+0 ), - G_X1 =SIMP(statut='f',typ='R',defaut= 0.E+0 ), - G1_0 =SIMP(statut='o',typ='R'), - C2 =SIMP(statut='o',typ='R'), - M_2 =SIMP(statut='f',typ='R',defaut= 1.E+0 ), - D2 =SIMP(statut='f',typ='R',defaut= 1.E+0 ), - G_X2 =SIMP(statut='f',typ='R',defaut= 0.E+0 ), - G2_0 =SIMP(statut='o',typ='R'), - A_I =SIMP(statut='f',typ='R',defaut= 1.E+0 ), - ), - VISCOCHAB_FO =FACT(statut='f', - K_0 =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - A_K =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - A_R =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - K =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - N =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - ALP =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - B =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - M_R =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - G_R =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - MU =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - Q_M =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - Q_0 =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - QR_0 =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - ETA =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - C1 =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - M_1 =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - D1 =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - G_X1 =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - G1_0 =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - C2 =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - M_2 =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - D2 =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - G_X2 =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - G2_0 =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - A_I =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - ), - LEMAITRE =FACT(statut='f', - N =SIMP(statut='o',typ='R'), - UN_SUR_K =SIMP(statut='o',typ='R'), - UN_SUR_M =SIMP(statut='f',typ='R',defaut= 0.E+0 ), - ), - LEMAITRE_IRRA =FACT(statut='f', - N =SIMP(statut='o',typ='R'), - UN_SUR_K =SIMP(statut='o',typ='R'), - UN_SUR_M =SIMP(statut='f',typ='R',defaut= 0.E+0 ), - QSR_K =SIMP(statut='f',typ='R',defaut= 0.E+0 ), - BETA =SIMP(statut='f',typ='R',defaut= 0.E+0 ), - PHI_ZERO =SIMP(statut='f',typ='R',defaut= 1.E+20), - L =SIMP(statut='f',typ='R',defaut= 0.E+0 ), - GRAN_FO =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - ), - LMARC_IRRA =FACT(statut='f', - DE_0 =SIMP(statut='o',typ='R'), - R_0 =SIMP(statut='o',typ='R'), - N =SIMP(statut='o',typ='R'), - K =SIMP(statut='o',typ='R'), - Y_I =SIMP(statut='o',typ='R'), - Y_0 =SIMP(statut='o',typ='R'), - B =SIMP(statut='o',typ='R'), - A_0 =SIMP(statut='o',typ='R'), - RM =SIMP(statut='o',typ='R'), - M =SIMP(statut='o',typ='R'), - P =SIMP(statut='o',typ='R'), - P1 =SIMP(statut='o',typ='R'), - P2 =SIMP(statut='o',typ='R'), - M11 =SIMP(statut='o',typ='R'), - M22 =SIMP(statut='o',typ='R'), - M33 =SIMP(statut='o',typ='R'), - M66 =SIMP(statut='o',typ='R'), - N11 =SIMP(statut='o',typ='R'), - N22 =SIMP(statut='o',typ='R'), - N33 =SIMP(statut='o',typ='R'), - N66 =SIMP(statut='o',typ='R'), - Q11 =SIMP(statut='o',typ='R'), - Q22 =SIMP(statut='o',typ='R'), - Q33 =SIMP(statut='o',typ='R'), - Q66 =SIMP(statut='o',typ='R'), - R11 =SIMP(statut='o',typ='R'), - R22 =SIMP(statut='o',typ='R'), - R33 =SIMP(statut='o',typ='R'), - R66 =SIMP(statut='o',typ='R'), - GRAN_FO =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - ), - VISC_IRRA_LOG =FACT(statut='f', - A =SIMP(statut='f',typ='R',defaut= 1.28E-1), - B =SIMP(statut='f',typ='R',defaut= 0.01159), - CSTE_TPS =SIMP(statut='f',typ='R',defaut= 0.3540), - ENER_ACT =SIMP(statut='f',typ='R',defaut= 5000.), - FLUX_PHI =SIMP(statut='o',typ='R',), - ), - GRAN_IRRA_LOG =FACT(statut='f', - A =SIMP(statut='f',typ='R',defaut= 1.28E-1), - B =SIMP(statut='f',typ='R',defaut= 0.01159), - CSTE_TPS =SIMP(statut='f',typ='R',defaut= 0.3540), - ENER_ACT =SIMP(statut='f',typ='R',defaut= 5000.), - FLUX_PHI =SIMP(statut='o',typ='R',), - GRAN_FO =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - ), - LEMA_SEUIL =FACT(statut='f', - A =SIMP(statut='o',typ='R',), - S =SIMP(statut='o',typ='R',), - ), - LEMA_SEUIL_FO=FACT(statut='f', - A =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - S =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - ), - IRRAD3M=FACT(statut='f', - R02 =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - EPSI_U =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - RM =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - AI0 =SIMP(statut='o',typ='R',val_min=0.0), - ZETA_F =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - ETAI_S =SIMP(statut='o',typ='R',val_min=0.0), - RG0 =SIMP(statut='o',typ='R',val_min=0.0), - ALPHA =SIMP(statut='o',typ='R',val_min=0.0), - PHI0 =SIMP(statut='o',typ='R',val_min=0.0), - KAPPA =SIMP(statut='f',typ='R',val_min=0.0,defaut=0.8,val_max=1.0), - ZETA_G =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - TOLER_ET =SIMP(statut='f',typ='R',val_min=0.0,defaut=0.15 ), - ), - LEMAITRE_FO =FACT(statut='f', - N =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - UN_SUR_K =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - UN_SUR_M =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - ), - META_LEMA_ANI =FACT(statut='f', - F1_A =SIMP(statut='o',typ='R'), - F2_A =SIMP(statut='o',typ='R'), - C_A =SIMP(statut='o',typ='R'), - F1_M =SIMP(statut='o',typ='R'), - F2_M =SIMP(statut='o',typ='R'), - C_M =SIMP(statut='o',typ='R'), - F1_N =SIMP(statut='o',typ='R'), - F2_N =SIMP(statut='o',typ='R'), - C_N =SIMP(statut='o',typ='R'), - F1_Q =SIMP(statut='o',typ='R'), - F2_Q =SIMP(statut='o',typ='R'), - C_Q =SIMP(statut='o',typ='R'), - F_MRR_RR =SIMP(statut='o',typ='R'), - C_MRR_RR =SIMP(statut='o',typ='R'), - F_MTT_TT =SIMP(statut='o',typ='R'), - C_MTT_TT =SIMP(statut='o',typ='R'), - F_MZZ_ZZ =SIMP(statut='o',typ='R'), - C_MZZ_ZZ =SIMP(statut='o',typ='R'), - F_MRT_RT =SIMP(statut='o',typ='R'), - C_MRT_RT =SIMP(statut='o',typ='R'), - F_MRZ_RZ =SIMP(statut='o',typ='R'), - C_MRZ_RZ =SIMP(statut='o',typ='R'), - F_MTZ_TZ =SIMP(statut='o',typ='R'), - C_MTZ_TZ =SIMP(statut='o',typ='R'), - ), - META_LEMA_ANI_FO =FACT(statut='f', - F1_A =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - F2_A =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - C_A =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - F1_M =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - F2_M =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - C_M =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - F1_N =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - F2_N =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - C_N =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - F1_Q =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - F2_Q =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - C_Q =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - F_MRR_RR =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - C_MRR_RR =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - F_MTT_TT =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - C_MTT_TT =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - F_MZZ_ZZ =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - C_MZZ_ZZ =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - F_MRT_RT =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - C_MRT_RT =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - F_MRZ_RZ =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - C_MRZ_RZ =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - F_MTZ_TZ =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - C_MTZ_TZ =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - ), - ARME =FACT(statut='f', - KYE =SIMP(statut='o',typ='R'), - DLE =SIMP(statut='o',typ='R'), - KYP =SIMP(statut='o',typ='R'), - DLP =SIMP(statut='o',typ='R'), - KYG =SIMP(statut='o',typ='R'), - ), - ASSE_CORN =FACT(statut='f', - NU_1 =SIMP(statut='o',typ='R'), - MU_1 =SIMP(statut='o',typ='R'), - DXU_1 =SIMP(statut='o',typ='R'), - DRYU_1 =SIMP(statut='o',typ='R'), - C_1 =SIMP(statut='o',typ='R'), - NU_2 =SIMP(statut='o',typ='R'), - MU_2 =SIMP(statut='o',typ='R'), - DXU_2 =SIMP(statut='o',typ='R'), - DRYU_2 =SIMP(statut='o',typ='R'), - C_2 =SIMP(statut='o',typ='R'), - KY =SIMP(statut='o',typ='R'), - KZ =SIMP(statut='o',typ='R'), - KRX =SIMP(statut='o',typ='R'), - KRZ =SIMP(statut='o',typ='R'), - R_P0 =SIMP(statut='f',typ='R',defaut= 1.E+4 ), - ), - DIS_CONTACT =FACT(statut='f', - RIGI_NOR =SIMP(statut='f',typ='R' ), - RIGI_TAN =SIMP(statut='f',typ='R',defaut= 0.E+0 ), - AMOR_NOR =SIMP(statut='f',typ='R' ), - AMOR_TAN =SIMP(statut='f',typ='R' ), - COULOMB =SIMP(statut='f',typ='R',defaut= 0.E+0 ), - DIST_1 =SIMP(statut='f',typ='R',defaut= 0.E+0 ), - DIST_2 =SIMP(statut='f',typ='R',defaut= 0.E+0 ), - JEU =SIMP(statut='f',typ='R',defaut= 0.E+0 ), - ), - ENDO_SCALAIRE =FACT(statut='f', - K =SIMP(statut='o',typ='R',val_min=0.0), - P =SIMP(statut='o',typ='R',val_min=1.0), - Q =SIMP(statut='f',typ='R',defaut=0.0), - M =SIMP(statut='o',typ='R',), - C_COMP =SIMP(statut='f',typ='R',defaut=0.0), - C_VOLU =SIMP(statut='f',typ='R',defaut=1.0,val_min=0.0), - COEF_RIGI_MINI =SIMP(statut='f',typ='R',defaut=1.E-5), - ), - ENDO_SCALAIRE_FO =FACT(statut='f', - K =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - P =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - Q =SIMP(statut='f',typ='R',defaut=0.0), - M =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - C_COMP =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - C_VOLU =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - COEF_RIGI_MINI =SIMP(statut='f',typ='R',defaut=1.E-5), - ), - ENDO_FISS_EXP =FACT(statut='f', - K =SIMP(statut='o',typ='R',val_min=0.0), - P =SIMP(statut='o',typ='R',val_min=1.0), - Q =SIMP(statut='f',typ='R',defaut=0.0), - M =SIMP(statut='o',typ='R',), - TAU =SIMP(statut='o',typ='R'), - SIG0 =SIMP(statut='o',typ='R'), - BETA =SIMP(statut='f',typ='R',defaut=0.1), - COEF_RIGI_MINI =SIMP(statut='f',typ='R',defaut=1.E-5), - ), - ENDO_FISS_EXP_FO =FACT(statut='f', - K =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - P =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - Q =SIMP(statut='f',typ='R',defaut=0.0), - M =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - TAU =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - SIG0 =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - BETA =SIMP(statut='f',typ='R',defaut=0.1), - COEF_RIGI_MINI =SIMP(statut='f',typ='R',defaut=1.E-5), - ), - DIS_GRICRA =FACT(statut='f', - KN_AX =SIMP(statut='o',typ='R' ), - KT_AX =SIMP(statut='o',typ='R' ), - COUL_AX =SIMP(statut='o',typ='R' ), - F_SER =SIMP(statut='f',typ='R' ), - F_SER_FO =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - ET_AX =SIMP(statut='f',typ='R',defaut=1.e-7 ), - ET_ROT =SIMP(statut='f',typ='R',defaut=1.e-7 ), - ANG1 =SIMP(statut='f',typ='R' ), - ANG2 =SIMP(statut='f',typ='R' ), - PEN1 =SIMP(statut='f',typ='R' ), - PEN2 =SIMP(statut='f',typ='R' ), - PEN3 =SIMP(statut='f',typ='R' ), - ANG1_FO =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - ANG2_FO =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - PEN1_FO =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - PEN2_FO =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - PEN3_FO =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - regles=(EXCLUS('ANG1','ANG1_FO',), - UN_PARMI('ANG1','ANG1_FO',), - EXCLUS('F_SER','F_SER_FO',), - UN_PARMI('F_SER','F_SER_FO',), - PRESENT_PRESENT('ANG1','ANG2','PEN1','PEN2','PEN3',), - PRESENT_PRESENT('ANG1_FO','ANG2_FO','PEN1_FO','PEN2_FO','PEN3_FO',), - ), - ), - BETON_DOUBLE_DP =FACT(statut='f', - F_C =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - F_T =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - COEF_BIAX =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - ENER_COMP_RUPT =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - ENER_TRAC_RUPT =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - COEF_ELAS_COMP =SIMP(statut='o',typ='R',val_min=0.E+0,val_max=100.E+0), - LONG_CARA =SIMP(statut='f',typ='R',val_min=0.E+0), - ECRO_COMP_P_PIC =SIMP(statut='f',typ='TXM',defaut="LINEAIRE",into=("LINEAIRE","PARABOLE") ), - ECRO_TRAC_P_PIC =SIMP(statut='f',typ='TXM',defaut="LINEAIRE",into=("LINEAIRE","EXPONENT") ), - ), - MAZARS=FACT(statut='f',min=0 , - EPSD0 =SIMP(statut='o',typ='R'), - K =SIMP(statut='o',typ='R'), - AC =SIMP(statut='o',typ='R'), - BC =SIMP(statut='o',typ='R'), - AT =SIMP(statut='o',typ='R'), - BT =SIMP(statut='o',typ='R'), - CHI =SIMP(statut='f',typ='R',val_min=0.0E+0,val_max=1.0E+0), - SIGM_LIM =SIMP(statut='f',typ='R'), - EPSI_LIM =SIMP(statut='f',typ='R'), - ), - MAZARS_FO=FACT(statut='f',min=0 , - EPSD0 =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - K =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - AC =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - BC =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - AT =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - BT =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - CHI =SIMP(statut='f',typ='R'), - ), - JOINT_BA=FACT(statut='f',min=0 ,max=1, - HPEN =SIMP(statut='o',typ='R',defaut= 1.E+0,val_min=0.E+0), - GTT =SIMP(statut='o',typ='R',val_min=0.E+0), - GAMD0 =SIMP(statut='o',typ='R',val_min=1.E-4,val_max=1.E-1), - AD1 =SIMP(statut='o',typ='R',val_min=0.E+0), - BD1 =SIMP(statut='o',typ='R',defaut= 5.E-1,val_min=1.E-1), - GAMD2 =SIMP(statut='o',typ='R',val_min=1.E-4,val_max=1.E+0), - AD2 =SIMP(statut='o',typ='R',val_min=0.E+0), - BD2 =SIMP(statut='o',typ='R',defaut= 1.E+0,val_min=1.E-1), - VIFROT =SIMP(statut='o',typ='R',val_min=0.E+0), - FA =SIMP(statut='o',typ='R',val_min=0.E+0), - FC =SIMP(statut='o',typ='R',val_min=0.E+0), - EPSTR0 =SIMP(statut='o',typ='R',val_min=1.E-4,val_max=1.E+0), - ADN =SIMP(statut='o',typ='R',val_min=0.E+0), - BDN =SIMP(statut='o',typ='R',defaut= 1.E+0,val_min=1.E-1), - ), - VENDOCHAB =FACT(statut='f', - SY =SIMP(statut='o',typ='R',defaut= 0.E+0), - ALPHA_D =SIMP(statut='o',typ='R',defaut= 0.E+0), - BETA_D =SIMP(statut='o',typ='R',defaut= 0.E+0), - R_D =SIMP(statut='o',typ='R'), - A_D =SIMP(statut='o',typ='R'), - K_D =SIMP(statut='o',typ='R'), - ), - VENDOCHAB_FO =FACT(statut='f', - SY =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - ALPHA_D =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - BETA_D =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - R_D =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - A_D =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - K_D =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - ), - HAYHURST =FACT(statut='f', - EPS0 =SIMP(statut='o',typ='R'), - K =SIMP(statut='o',typ='R'), - H1 =SIMP(statut='o',typ='R'), - H2 =SIMP(statut='o',typ='R'), - DELTA1 =SIMP(statut='o',typ='R'), - DELTA2 =SIMP(statut='o',typ='R'), - H1ST =SIMP(statut='o',typ='R'), - H2ST =SIMP(statut='o',typ='R'), - KC =SIMP(statut='f',typ='R',defaut=0.), - BIGA =SIMP(statut='o',typ='R'), - SIG0 =SIMP(statut='o',typ='R'), - ALPHAD =SIMP(statut='f',typ='R',defaut=0.), - S_EQUI_D =SIMP(statut='f',typ='R',defaut=0.,into=(0.,1.) ), - ), - VISC_ENDO =FACT(statut='f', - SY =SIMP(statut='o',typ='R',defaut= 0.E+0), - R_D =SIMP(statut='o',typ='R'), - A_D =SIMP(statut='o',typ='R'), - ), - VISC_ENDO_FO =FACT(statut='f', - SY =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - R_D =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - A_D =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - ), - PINTO_MENEGOTTO =FACT(statut='f', - SY =SIMP(statut='o',typ='R'), - EPSI_ULTM =SIMP(statut='o',typ='R'), - SIGM_ULTM =SIMP(statut='o',typ='R'), - ELAN =SIMP(statut='f',typ='R',defaut= 4. ), - EPSP_HARD =SIMP(statut='o',typ='R'), - R_PM =SIMP(statut='f',typ='R',defaut= 20. ), - EP_SUR_E =SIMP(statut='f',typ='R'), - A1_PM =SIMP(statut='f',typ='R',defaut= 18.5 ), - A2_PM =SIMP(statut='f',typ='R',defaut= 0.15 ), - A6_PM =SIMP(statut='f',typ='R',defaut= 620. ), - C_PM =SIMP(statut='f',typ='R',defaut= 0.5 ), - A_PM =SIMP(statut='f',typ='R',defaut= 6.0E-3 ), - ), - BPEL_BETON =FACT(statut='f', - PERT_FLUA =SIMP(statut='f',typ='R',defaut= 0.E+0 ), - PERT_RETR =SIMP(statut='f',typ='R',defaut= 0.E+0 ), - ), - BPEL_ACIER =FACT(statut='f', - regles=(PRESENT_PRESENT('RELAX_1000','F_PRG',), - PRESENT_PRESENT('MU0_RELAX','F_PRG',),), - RELAX_1000 =SIMP(statut='f',typ='R',defaut= 0.E+0 ), - MU0_RELAX =SIMP(statut='f',typ='R',defaut= 0.E+0 ), - F_PRG =SIMP(statut='f',typ='R'), - FROT_COURB =SIMP(statut='f',typ='R',defaut=0.E+0), - FROT_LINE =SIMP(statut='f',typ='R',defaut=0.E+0), - ), - ETCC_BETON =FACT(statut='f', - EP_BETON =SIMP(statut='f',typ='R',val_min=0.E+0,defaut=0. ), - ), - ETCC_ACIER =FACT(statut='f', - regles=(PRESENT_PRESENT('RELAX_1000','F_PRG',),), - F_PRG =SIMP(statut='f',typ='R',val_min=0.E+0), - COEF_FROT =SIMP(statut='f',typ='R',defaut=0.E+0,val_min=0.E+0), - PERT_LIGNE =SIMP(statut='f',typ='R',defaut=0.E+0,val_min=0.E+0), - RELAX_1000 =SIMP(statut='f',typ='R',defaut= 0.E+0,val_min=0.E+0 ), - - - ), - MOHR_COULOMB =FACT(statut='f', - PHI =SIMP(statut='o',typ='R',val_min=0.E+0,val_max=60.E+0,), - ANGDIL =SIMP(statut='o',typ='R',val_min=0.E+0,val_max=60.E+0,), - COHESION =SIMP(statut='o',typ='R',val_min=0.E+0,), - ), - - CAM_CLAY =FACT(statut='f', - MU =SIMP(statut='o',typ='R'), - PORO =SIMP(statut='o',typ='R'), - LAMBDA =SIMP(statut='o',typ='R'), - KAPA =SIMP(statut='o',typ='R'), - M =SIMP(statut='o',typ='R'), - PRES_CRIT =SIMP(statut='o',typ='R'), - KCAM =SIMP(statut='f',typ='R',val_min=0.E+0), - PTRAC =SIMP(statut='f',typ='R',val_max=0.E+0), - regles=(PRESENT_PRESENT('PTRAC','KCAM',),), - ), - BARCELONE =FACT(statut='f', - MU =SIMP(statut='o',typ='R'), - PORO =SIMP(statut='o',typ='R'), - LAMBDA =SIMP(statut='o',typ='R'), - KAPA =SIMP(statut='o',typ='R'), - M =SIMP(statut='o',typ='R'), - PRES_CRIT =SIMP(statut='o',typ='R'), - PA =SIMP(statut='o',typ='R'), - R =SIMP(statut='o',typ='R'), - BETA =SIMP(statut='o',typ='R'), - KC =SIMP(statut='o',typ='R'), - PC0_INIT =SIMP(statut='o',typ='R'), - KAPAS =SIMP(statut='o',typ='R'), - LAMBDAS =SIMP(statut='o',typ='R'), - ALPHAB =SIMP(statut='f',typ='R'), - ), - CJS =FACT(statut='f', - BETA_CJS =SIMP(statut='o',typ='R'), - RM =SIMP(statut='o',typ='R'), - N_CJS =SIMP(statut='f',typ='R',defaut= 0.E+0 ), - KP =SIMP(statut='f',typ='R',defaut= 0.E+0 ), - RC =SIMP(statut='f',typ='R',defaut= 0.E+0 ), - A_CJS =SIMP(statut='f',typ='R',defaut= 0.E+0 ), - B_CJS =SIMP(statut='f',typ='R',defaut= 1.0E+25 ), - C_CJS =SIMP(statut='f',typ='R',defaut= 0.E+0 ), - GAMMA_CJS =SIMP(statut='o',typ='R'), - MU_CJS =SIMP(statut='f',typ='R',defaut= 0.E+0 ), - PCO =SIMP(statut='f',typ='R',defaut= 0.E+0 ), - PA =SIMP(statut='o',typ='R'), - Q_INIT =SIMP(statut='f',typ='R',defaut= 0.E+0 ), - R_INIT =SIMP(statut='f',typ='R',defaut= 0.E+0 ), - ), - HUJEUX =FACT(statut='f', - N =SIMP(statut='o',typ='R' ), - BETA =SIMP(statut='o',typ='R' ), - B =SIMP(statut='o',typ='R' ), - D =SIMP(statut='o',typ='R' ), - PHI =SIMP(statut='o',typ='R' ), - ANGDIL =SIMP(statut='o',typ='R' ), - PCO =SIMP(statut='o',typ='R' ), - PREF =SIMP(statut='o',typ='R' ), - ACYC =SIMP(statut='o',typ='R' ), - AMON =SIMP(statut='o',typ='R' ), - CCYC =SIMP(statut='o',typ='R' ), - CMON =SIMP(statut='o',typ='R' ), - RD_ELA =SIMP(statut='o',typ='R' ), - RI_ELA =SIMP(statut='o',typ='R' ), - RHYS =SIMP(statut='o',typ='R' ), - RMOB =SIMP(statut='o',typ='R' ), - XM =SIMP(statut='o',typ='R' ), - RD_CYC =SIMP(statut='o',typ='R' ), - RI_CYC =SIMP(statut='o',typ='R' ), - DILA =SIMP(statut='o',typ='R' ), - PTRAC =SIMP(statut='f',typ='R',defaut= 0.E+0 ), - ), - ECRO_ASYM_LINE =FACT(statut='f', - DC_SIGM_EPSI =SIMP(statut='o',typ='R'), - SY_C =SIMP(statut='o',typ='R'), - DT_SIGM_EPSI =SIMP(statut='o',typ='R'), - SY_T =SIMP(statut='o',typ='R'), - ), - GRANGER_FP =FACT(statut='f', - J1 =SIMP(statut='f',typ='R'), - J2 =SIMP(statut='f',typ='R'), - J3 =SIMP(statut='f',typ='R'), - J4 =SIMP(statut='f',typ='R'), - J5 =SIMP(statut='f',typ='R'), - J6 =SIMP(statut='f',typ='R'), - J7 =SIMP(statut='f',typ='R'), - J8 =SIMP(statut='f',typ='R'), - TAUX_1 =SIMP(statut='f',typ='R'), - TAUX_2 =SIMP(statut='f',typ='R'), - TAUX_3 =SIMP(statut='f',typ='R'), - TAUX_4 =SIMP(statut='f',typ='R'), - TAUX_5 =SIMP(statut='f',typ='R'), - TAUX_6 =SIMP(statut='f',typ='R'), - TAUX_7 =SIMP(statut='f',typ='R'), - TAUX_8 =SIMP(statut='f',typ='R'), - QSR_K =SIMP(statut='f',typ='R'), - ), - GRANGER_FP_INDT =FACT(statut='f', - J1 =SIMP(statut='f',typ='R'), - J2 =SIMP(statut='f',typ='R'), - J3 =SIMP(statut='f',typ='R'), - J4 =SIMP(statut='f',typ='R'), - J5 =SIMP(statut='f',typ='R'), - J6 =SIMP(statut='f',typ='R'), - J7 =SIMP(statut='f',typ='R'), - J8 =SIMP(statut='f',typ='R'), - TAUX_1 =SIMP(statut='f',typ='R'), - TAUX_2 =SIMP(statut='f',typ='R'), - TAUX_3 =SIMP(statut='f',typ='R'), - TAUX_4 =SIMP(statut='f',typ='R'), - TAUX_5 =SIMP(statut='f',typ='R'), - TAUX_6 =SIMP(statut='f',typ='R'), - TAUX_7 =SIMP(statut='f',typ='R'), - TAUX_8 =SIMP(statut='f',typ='R'), - ), - V_GRANGER_FP =FACT(statut='f', - QSR_VEIL =SIMP(statut='f',typ='R'), - FONC_V =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - ), - BETON_BURGER_FP =FACT(statut='f',min=0 , - K_RS =SIMP(statut='o',typ='R'), - ETA_RS =SIMP(statut='o',typ='R'), - KAPPA =SIMP(statut='o',typ='R'), - ETA_IS =SIMP(statut='o',typ='R'), - K_RD =SIMP(statut='o',typ='R'), - ETA_RD =SIMP(statut='o',typ='R'), - ETA_ID =SIMP(statut='o',typ='R'), - ETA_FD =SIMP(statut='f',typ='R'), - ), - BETON_UMLV_FP =FACT(statut='f',min=0 , - K_RS =SIMP(statut='o',typ='R'), - ETA_RS =SIMP(statut='o',typ='R'), - K_IS =SIMP(statut='o',typ='R'), - ETA_IS =SIMP(statut='o',typ='R'), - K_RD =SIMP(statut='o',typ='R'), - ETA_RD =SIMP(statut='o',typ='R'), - ETA_ID =SIMP(statut='o',typ='R'), - ETA_FD =SIMP(statut='f',typ='R'), - ), - BETON_RAG =FACT(statut='f', - ACTIV_FL =SIMP(statut='f',typ='R',defaut=1.0 ), - K_RS =SIMP(statut='o',typ='R'), - K_IS =SIMP(statut='o',typ='R'), - ETA_RS =SIMP(statut='o',typ='R'), - ETA_IS =SIMP(statut='o',typ='R'), - K_RD =SIMP(statut='o',typ='R'), - K_ID =SIMP(statut='o',typ='R'), - ETA_RD =SIMP(statut='o',typ='R'), - ETA_ID =SIMP(statut='o',typ='R'), - EPS_0 =SIMP(statut='o',typ='R'), - TAU_0 =SIMP(statut='o',typ='R'), - EPS_FL_L =SIMP(statut='f',typ='R',defaut=3.0e-2 ), - ACTIV_LO =SIMP(statut='f',typ='R',defaut=1.0 ), - F_C =SIMP(statut='o',typ='R'), - F_T =SIMP(statut='o',typ='R'), - ANG_CRIT =SIMP(statut='f',typ='R',defaut=8.594367 ), - EPS_COMP =SIMP(statut='o',typ='R'), - EPS_TRAC =SIMP(statut='o',typ='R'), - LC_COMP =SIMP(statut='o',typ='R',defaut=1.0 ), - LC_TRAC =SIMP(statut='o',typ='R',defaut=1.0 ), - HYD_PRES =SIMP(statut='f',typ='R',defaut=0. ), - A_VAN_GE =SIMP(statut='f',typ='R',defaut=0.0 ), - B_VAN_GE =SIMP(statut='f',typ='R',defaut=1.9 ), - BIOT_EAU =SIMP(statut='o',typ='R',defaut=0.3 ), - MODU_EAU =SIMP(statut='o',typ='R',defaut=0.0 ), - W_EAU_0 =SIMP(statut='o',typ='R'), - BIOT_GEL =SIMP(statut='o',typ='R'), - MODU_GEL =SIMP(statut='o',typ='R'), - VOL_GEL =SIMP(statut='o',typ='R'), - AVANC_LI =SIMP(statut='o',typ='R'), - SEUIL_SR =SIMP(statut='o',typ='R'), - PARA_CIN =SIMP(statut='o',typ='R'), - ENR_AC_G =SIMP(statut='o',typ='R'), - ), - GLRC_DM =FACT(statut='f',max=1, - GAMMA_T =SIMP(statut='o',typ='R',val_min=-1.E+0,val_max=1.E+0), - GAMMA_C =SIMP(statut='f',typ='R',val_min=-1.E+0,val_max=1.E+0), - GAMMA_F =SIMP(statut='o',typ='R',val_min=-1.E+0,val_max=1.E+0), - NYT =SIMP(statut='o',typ='R',val_min=0.E+0), - NYC =SIMP(statut='f',typ='R'), - MYF =SIMP(statut='o',typ='R',val_min=0.E+0), - ALPHA_C =SIMP(statut='d',typ='R',val_min=1.E+0,defaut=1.E+0), - ), - DHRC_SEUILS =FACT(statut='f', - SYD =SIMP(statut='o',typ='R',), - SCRIT =SIMP(statut='o',typ='R',), - K0MICR =SIMP(statut='o',typ='R',), - A011 =SIMP(statut='o',typ='R',), - A012 =SIMP(statut='o',typ='R',), - A013 =SIMP(statut='o',typ='R',), - A014 =SIMP(statut='o',typ='R',), - A015 =SIMP(statut='o',typ='R',), - A016 =SIMP(statut='o',typ='R',), - A022 =SIMP(statut='o',typ='R',), - A023 =SIMP(statut='o',typ='R',), - A024 =SIMP(statut='o',typ='R',), - A025 =SIMP(statut='o',typ='R',), - A026 =SIMP(statut='o',typ='R',), - A033 =SIMP(statut='o',typ='R',), - A034 =SIMP(statut='o',typ='R',), - A035 =SIMP(statut='o',typ='R',), - A036 =SIMP(statut='o',typ='R',), - A044 =SIMP(statut='o',typ='R',), - A045 =SIMP(statut='o',typ='R',), - A046 =SIMP(statut='o',typ='R',), - A055 =SIMP(statut='o',typ='R',), - A056 =SIMP(statut='o',typ='R',), - A066 =SIMP(statut='o',typ='R',), - ), - DHRC =FACT(statut='f', - AAC111 =SIMP(statut='o',typ='R',), - AAC121 =SIMP(statut='o',typ='R',), - AAC131 =SIMP(statut='o',typ='R',), - AAC141 =SIMP(statut='o',typ='R',), - AAC151 =SIMP(statut='o',typ='R',), - AAC161 =SIMP(statut='o',typ='R',), - AAC221 =SIMP(statut='o',typ='R',), - AAC231 =SIMP(statut='o',typ='R',), - AAC241 =SIMP(statut='o',typ='R',), - AAC251 =SIMP(statut='o',typ='R',), - AAC261 =SIMP(statut='o',typ='R',), - AAC331 =SIMP(statut='o',typ='R',), - AAC341 =SIMP(statut='o',typ='R',), - AAC351 =SIMP(statut='o',typ='R',), - AAC361 =SIMP(statut='o',typ='R',), - AAC441 =SIMP(statut='o',typ='R',), - AAC451 =SIMP(statut='o',typ='R',), - AAC461 =SIMP(statut='o',typ='R',), - AAC551 =SIMP(statut='o',typ='R',), - AAC561 =SIMP(statut='o',typ='R',), - AAC661 =SIMP(statut='o',typ='R',), - AAC112 =SIMP(statut='o',typ='R',), - AAC122 =SIMP(statut='o',typ='R',), - AAC132 =SIMP(statut='o',typ='R',), - AAC142 =SIMP(statut='o',typ='R',), - AAC152 =SIMP(statut='o',typ='R',), - AAC162 =SIMP(statut='o',typ='R',), - AAC222 =SIMP(statut='o',typ='R',), - AAC232 =SIMP(statut='o',typ='R',), - AAC242 =SIMP(statut='o',typ='R',), - AAC252 =SIMP(statut='o',typ='R',), - AAC262 =SIMP(statut='o',typ='R',), - AAC332 =SIMP(statut='o',typ='R',), - AAC342 =SIMP(statut='o',typ='R',), - AAC352 =SIMP(statut='o',typ='R',), - AAC362 =SIMP(statut='o',typ='R',), - AAC442 =SIMP(statut='o',typ='R',), - AAC452 =SIMP(statut='o',typ='R',), - AAC462 =SIMP(statut='o',typ='R',), - AAC552 =SIMP(statut='o',typ='R',), - AAC562 =SIMP(statut='o',typ='R',), - AAC662 =SIMP(statut='o',typ='R',), - AAT111 =SIMP(statut='o',typ='R',), - AAT121 =SIMP(statut='o',typ='R',), - AAT131 =SIMP(statut='o',typ='R',), - AAT141 =SIMP(statut='o',typ='R',), - AAT151 =SIMP(statut='o',typ='R',), - AAT161 =SIMP(statut='o',typ='R',), - AAT221 =SIMP(statut='o',typ='R',), - AAT231 =SIMP(statut='o',typ='R',), - AAT241 =SIMP(statut='o',typ='R',), - AAT251 =SIMP(statut='o',typ='R',), - AAT261 =SIMP(statut='o',typ='R',), - AAT331 =SIMP(statut='o',typ='R',), - AAT341 =SIMP(statut='o',typ='R',), - AAT351 =SIMP(statut='o',typ='R',), - AAT361 =SIMP(statut='o',typ='R',), - AAT441 =SIMP(statut='o',typ='R',), - AAT451 =SIMP(statut='o',typ='R',), - AAT461 =SIMP(statut='o',typ='R',), - AAT551 =SIMP(statut='o',typ='R',), - AAT561 =SIMP(statut='o',typ='R',), - AAT661 =SIMP(statut='o',typ='R',), - AAT112 =SIMP(statut='o',typ='R',), - AAT122 =SIMP(statut='o',typ='R',), - AAT132 =SIMP(statut='o',typ='R',), - AAT142 =SIMP(statut='o',typ='R',), - AAT152 =SIMP(statut='o',typ='R',), - AAT162 =SIMP(statut='o',typ='R',), - AAT222 =SIMP(statut='o',typ='R',), - AAT232 =SIMP(statut='o',typ='R',), - AAT242 =SIMP(statut='o',typ='R',), - AAT252 =SIMP(statut='o',typ='R',), - AAT262 =SIMP(statut='o',typ='R',), - AAT332 =SIMP(statut='o',typ='R',), - AAT342 =SIMP(statut='o',typ='R',), - AAT352 =SIMP(statut='o',typ='R',), - AAT362 =SIMP(statut='o',typ='R',), - AAT442 =SIMP(statut='o',typ='R',), - AAT452 =SIMP(statut='o',typ='R',), - AAT462 =SIMP(statut='o',typ='R',), - AAT552 =SIMP(statut='o',typ='R',), - AAT562 =SIMP(statut='o',typ='R',), - AAT662 =SIMP(statut='o',typ='R',), - GAC111 =SIMP(statut='o',typ='R',), - GAC121 =SIMP(statut='o',typ='R',), - GAC131 =SIMP(statut='o',typ='R',), - GAC141 =SIMP(statut='o',typ='R',), - GAC151 =SIMP(statut='o',typ='R',), - GAC161 =SIMP(statut='o',typ='R',), - GAC221 =SIMP(statut='o',typ='R',), - GAC231 =SIMP(statut='o',typ='R',), - GAC241 =SIMP(statut='o',typ='R',), - GAC251 =SIMP(statut='o',typ='R',), - GAC261 =SIMP(statut='o',typ='R',), - GAC331 =SIMP(statut='o',typ='R',), - GAC341 =SIMP(statut='o',typ='R',), - GAC351 =SIMP(statut='o',typ='R',), - GAC361 =SIMP(statut='o',typ='R',), - GAC441 =SIMP(statut='o',typ='R',), - GAC451 =SIMP(statut='o',typ='R',), - GAC461 =SIMP(statut='o',typ='R',), - GAC551 =SIMP(statut='o',typ='R',), - GAC561 =SIMP(statut='o',typ='R',), - GAC661 =SIMP(statut='o',typ='R',), - GAC112 =SIMP(statut='o',typ='R',), - GAC122 =SIMP(statut='o',typ='R',), - GAC132 =SIMP(statut='o',typ='R',), - GAC142 =SIMP(statut='o',typ='R',), - GAC152 =SIMP(statut='o',typ='R',), - GAC162 =SIMP(statut='o',typ='R',), - GAC222 =SIMP(statut='o',typ='R',), - GAC232 =SIMP(statut='o',typ='R',), - GAC242 =SIMP(statut='o',typ='R',), - GAC252 =SIMP(statut='o',typ='R',), - GAC262 =SIMP(statut='o',typ='R',), - GAC332 =SIMP(statut='o',typ='R',), - GAC342 =SIMP(statut='o',typ='R',), - GAC352 =SIMP(statut='o',typ='R',), - GAC362 =SIMP(statut='o',typ='R',), - GAC442 =SIMP(statut='o',typ='R',), - GAC452 =SIMP(statut='o',typ='R',), - GAC462 =SIMP(statut='o',typ='R',), - GAC552 =SIMP(statut='o',typ='R',), - GAC562 =SIMP(statut='o',typ='R',), - GAC662 =SIMP(statut='o',typ='R',), - GAT111 =SIMP(statut='o',typ='R',), - GAT121 =SIMP(statut='o',typ='R',), - GAT131 =SIMP(statut='o',typ='R',), - GAT141 =SIMP(statut='o',typ='R',), - GAT151 =SIMP(statut='o',typ='R',), - GAT161 =SIMP(statut='o',typ='R',), - GAT221 =SIMP(statut='o',typ='R',), - GAT231 =SIMP(statut='o',typ='R',), - GAT241 =SIMP(statut='o',typ='R',), - GAT251 =SIMP(statut='o',typ='R',), - GAT261 =SIMP(statut='o',typ='R',), - GAT331 =SIMP(statut='o',typ='R',), - GAT341 =SIMP(statut='o',typ='R',), - GAT351 =SIMP(statut='o',typ='R',), - GAT361 =SIMP(statut='o',typ='R',), - GAT441 =SIMP(statut='o',typ='R',), - GAT451 =SIMP(statut='o',typ='R',), - GAT461 =SIMP(statut='o',typ='R',), - GAT551 =SIMP(statut='o',typ='R',), - GAT561 =SIMP(statut='o',typ='R',), - GAT661 =SIMP(statut='o',typ='R',), - GAT112 =SIMP(statut='o',typ='R',), - GAT122 =SIMP(statut='o',typ='R',), - GAT132 =SIMP(statut='o',typ='R',), - GAT142 =SIMP(statut='o',typ='R',), - GAT152 =SIMP(statut='o',typ='R',), - GAT162 =SIMP(statut='o',typ='R',), - GAT222 =SIMP(statut='o',typ='R',), - GAT232 =SIMP(statut='o',typ='R',), - GAT242 =SIMP(statut='o',typ='R',), - GAT252 =SIMP(statut='o',typ='R',), - GAT262 =SIMP(statut='o',typ='R',), - GAT332 =SIMP(statut='o',typ='R',), - GAT342 =SIMP(statut='o',typ='R',), - GAT352 =SIMP(statut='o',typ='R',), - GAT362 =SIMP(statut='o',typ='R',), - GAT442 =SIMP(statut='o',typ='R',), - GAT452 =SIMP(statut='o',typ='R',), - GAT462 =SIMP(statut='o',typ='R',), - GAT552 =SIMP(statut='o',typ='R',), - GAT562 =SIMP(statut='o',typ='R',), - GAT662 =SIMP(statut='o',typ='R',), - AB111 =SIMP(statut='o',typ='R',), - AB121 =SIMP(statut='o',typ='R',), - AB211 =SIMP(statut='o',typ='R',), - AB221 =SIMP(statut='o',typ='R',), - AB311 =SIMP(statut='o',typ='R',), - AB321 =SIMP(statut='o',typ='R',), - AB411 =SIMP(statut='o',typ='R',), - AB421 =SIMP(statut='o',typ='R',), - AB511 =SIMP(statut='o',typ='R',), - AB521 =SIMP(statut='o',typ='R',), - AB611 =SIMP(statut='o',typ='R',), - AB621 =SIMP(statut='o',typ='R',), - AB112 =SIMP(statut='o',typ='R',), - AB122 =SIMP(statut='o',typ='R',), - AB212 =SIMP(statut='o',typ='R',), - AB222 =SIMP(statut='o',typ='R',), - AB312 =SIMP(statut='o',typ='R',), - AB322 =SIMP(statut='o',typ='R',), - AB412 =SIMP(statut='o',typ='R',), - AB422 =SIMP(statut='o',typ='R',), - AB512 =SIMP(statut='o',typ='R',), - AB522 =SIMP(statut='o',typ='R',), - AB612 =SIMP(statut='o',typ='R',), - AB622 =SIMP(statut='o',typ='R',), - GB111 =SIMP(statut='o',typ='R',), - GB121 =SIMP(statut='o',typ='R',), - GB211 =SIMP(statut='o',typ='R',), - GB221 =SIMP(statut='o',typ='R',), - GB311 =SIMP(statut='o',typ='R',), - GB321 =SIMP(statut='o',typ='R',), - GB411 =SIMP(statut='o',typ='R',), - GB421 =SIMP(statut='o',typ='R',), - GB511 =SIMP(statut='o',typ='R',), - GB521 =SIMP(statut='o',typ='R',), - GB611 =SIMP(statut='o',typ='R',), - GB621 =SIMP(statut='o',typ='R',), - GB112 =SIMP(statut='o',typ='R',), - GB122 =SIMP(statut='o',typ='R',), - GB212 =SIMP(statut='o',typ='R',), - GB222 =SIMP(statut='o',typ='R',), - GB312 =SIMP(statut='o',typ='R',), - GB322 =SIMP(statut='o',typ='R',), - GB412 =SIMP(statut='o',typ='R',), - GB422 =SIMP(statut='o',typ='R',), - GB512 =SIMP(statut='o',typ='R',), - GB522 =SIMP(statut='o',typ='R',), - GB612 =SIMP(statut='o',typ='R',), - GB622 =SIMP(statut='o',typ='R',), - C0111 =SIMP(statut='o',typ='R',), - C0211 =SIMP(statut='o',typ='R',), - C0121 =SIMP(statut='o',typ='R',), - C0221 =SIMP(statut='o',typ='R',), - C0212 =SIMP(statut='o',typ='R',), - C0112 =SIMP(statut='o',typ='R',), - C0122 =SIMP(statut='o',typ='R',), - C0222 =SIMP(statut='o',typ='R',), - AC111 =SIMP(statut='o',typ='R',), - AC211 =SIMP(statut='o',typ='R',), - AC121 =SIMP(statut='o',typ='R',), - AC221 =SIMP(statut='o',typ='R',), - AC112 =SIMP(statut='o',typ='R',), - AC212 =SIMP(statut='o',typ='R',), - AC122 =SIMP(statut='o',typ='R',), - AC222 =SIMP(statut='o',typ='R',), - GC111 =SIMP(statut='o',typ='R',), - GC211 =SIMP(statut='o',typ='R',), - GC121 =SIMP(statut='o',typ='R',), - GC221 =SIMP(statut='o',typ='R',), - GC112 =SIMP(statut='o',typ='R',), - GC212 =SIMP(statut='o',typ='R',), - GC122 =SIMP(statut='o',typ='R',), - GC222 =SIMP(statut='o',typ='R',), - ), - GATT_MONERIE =FACT(statut='f',min=0,max=1, - D_GRAIN =SIMP(statut='o',typ='R',val_min=0.E+0), - PORO_INIT =SIMP(statut='o',typ='R',val_min=0.E+0), - EPSI_01 =SIMP(statut='o',typ='R',defaut= 2.7252E-10,val_min=0.E+0), - EPSI_02 =SIMP(statut='o',typ='R',defaut= 9.1440E-41,val_min=0.E+0), - ), - CORR_ACIER =FACT(statut='f',min=0 ,max=1, - D_CORR =SIMP(statut='o',typ='R'), - ECRO_K =SIMP(statut='o',typ='R'), - ECRO_M =SIMP(statut='o',typ='R'), - SY =SIMP(statut='o',typ='R'), - ), - CABLE_GAINE_FROT=FACT(statut='f',min=0 ,max=1, - TYPE = SIMP(statut='o',typ='TXM',into=("FROTTANT","GLISSANT","ADHERENT")), - b_glissant =BLOC(condition="TYPE=='GLISSANT'", - fr="Loi cable gaine glissante", - FROT_LINE =SIMP(statut='c',typ='R',defaut= 0.0,), - FROT_COURB =SIMP(statut='c',typ='R',defaut= 0.0,), - ), - b_adherent =BLOC(condition="TYPE=='ADHERENT'", - fr="Loi cable gaine adherent", - FROT_LINE =SIMP(statut='c',typ='R',defaut= -1.0,), - FROT_COURB =SIMP(statut='c',typ='R',defaut= 0.0,), - ), - b_frottant =BLOC(condition="TYPE=='FROTTANT'", - fr="Loi cable gaine frottant", - FROT_LINE =SIMP(statut='o',typ='R',defaut= 0.0,), - FROT_COURB =SIMP(statut='o',typ='R',defaut= 0.0,), - ), - PENA_LAGR =SIMP(statut='o',typ='R',val_min=0.E+0), - ), - -# Discrets non-linéaires : début - DIS_ECRO_CINE =FACT(statut='f', - fr="Loi pour les discrets avec écrouissage cinématique.", - regles=(PRESENT_PRESENT('LIMY_DX','KCIN_DX',),PRESENT_PRESENT('PUIS_DX','LIMU_DX',), - PRESENT_PRESENT('LIMY_DY','KCIN_DY',),PRESENT_PRESENT('PUIS_DY','LIMU_DY',), - PRESENT_PRESENT('LIMY_DZ','KCIN_DZ',),PRESENT_PRESENT('PUIS_DZ','LIMU_DZ',), - PRESENT_PRESENT('LIMY_RX','KCIN_RX',),PRESENT_PRESENT('PUIS_RX','LIMU_RX',), - PRESENT_PRESENT('LIMY_RY','KCIN_RY',),PRESENT_PRESENT('PUIS_RY','LIMU_RY',), - PRESENT_PRESENT('LIMY_RZ','KCIN_RZ',),PRESENT_PRESENT('PUIS_RZ','LIMU_RZ',),), - LIMY_DX =SIMP(statut='f',typ='R',val_min = 0.0, - fr="Effort limite élastique suivant l'axe local x de l'élément."), - LIMY_DY =SIMP(statut='f',typ='R',val_min = 0.0, - fr="Effort limite élastique suivant l'axe local y de l'élément."), - LIMY_DZ =SIMP(statut='f',typ='R',val_min = 0.0, - fr="Effort limite élastique suivant l'axe local z de l'élément."), - LIMY_RX =SIMP(statut='f',typ='R',val_min = 0.0, - fr="Moment limite élastique suivant l'axe local x de l'élément."), - LIMY_RY =SIMP(statut='f',typ='R',val_min = 0.0, - fr="Moment limite élastique suivant l'axe local y de l'élément."), - LIMY_RZ =SIMP(statut='f',typ='R',val_min = 0.0, - fr="Moment limite élastique suivant l'axe local z de l'élément."), - KCIN_DX =SIMP(statut='f',typ='R',val_min = 0.0, - fr="Raideur suivant l'axe local x de l'élément."), - KCIN_DY =SIMP(statut='f',typ='R',val_min = 0.0, - fr="Raideur suivant l'axe local y de l'élément."), - KCIN_DZ =SIMP(statut='f',typ='R',val_min = 0.0, - fr="Raideur suivant l'axe local z de l'élément."), - KCIN_RX =SIMP(statut='f',typ='R',val_min = 0.0, - fr="Raideur suivant l'axe local Rx de l'élément."), - KCIN_RY =SIMP(statut='f',typ='R',val_min = 0.0, - fr="Raideur suivant l'axe local Ry de l'élément."), - KCIN_RZ =SIMP(statut='f',typ='R',val_min = 0.0, - fr="Raideur suivant l'axe local Rz de l'élément."), - LIMU_DX =SIMP(statut='f',typ='R',val_min = 0.0, - fr="Effort limite suivant l'axe local x de l'élément."), - LIMU_DY =SIMP(statut='f',typ='R',val_min = 0.0, - fr="Effort limite suivant l'axe local y de l'élément."), - LIMU_DZ =SIMP(statut='f',typ='R',val_min = 0.0, - fr="Effort limite suivant l'axe local z de l'élément."), - LIMU_RX =SIMP(statut='f',typ='R',val_min = 0.0, - fr="Moment limite suivant l'axe local x de l'élément."), - LIMU_RY =SIMP(statut='f',typ='R',val_min = 0.0, - fr="Moment limite suivant l'axe local y de l'élément."), - LIMU_RZ =SIMP(statut='f',typ='R',val_min = 0.0, - fr="Moment limite suivant l'axe local z de l'élément."), - PUIS_DX =SIMP(statut='f',typ='R',val_min = 1.0, - fr="Coefficient de non-linéarité suivant l'axe local x de l'élément."), - PUIS_DY =SIMP(statut='f',typ='R',val_min = 1.0, - fr="Coefficient de non-linéarité suivant l'axe local y de l'élément."), - PUIS_DZ =SIMP(statut='f',typ='R',val_min = 1.0, - fr="Coefficient de non-linéarité suivant l'axe local z de l'élément."), - PUIS_RX =SIMP(statut='f',typ='R',val_min = 1.0, - fr="Coefficient de non-linéarité suivant l'axe local Rx de l'élément."), - PUIS_RY =SIMP(statut='f',typ='R',val_min = 1.0, - fr="Coefficient de non-linéarité suivant l'axe local Ry de l'élément."), - PUIS_RZ =SIMP(statut='f',typ='R',val_min = 1.0, - fr="Coefficient de non-linéarité suivant l'axe local Rz de l'élément."), - ), - DIS_VISC =FACT(statut='f', - fr="Loi pour un discret de type visqueux : Zener Généralisé.", - regles=(UN_PARMI('K1','UNSUR_K1'), - UN_PARMI('K2','UNSUR_K2'), - UN_PARMI('K3','UNSUR_K3'), ), - K1 =SIMP(statut='f',typ='R',val_min = 1.0E-08, - fr="Raideur en série avec les 2 autres branches."), - K2 =SIMP(statut='f',typ='R',val_min = 0.0, - fr="Raideur en parallèle de la branche visqueuse."), - K3 =SIMP(statut='f',typ='R',val_min = 1.0E-08, - fr="Raideur dans la branche visqueuse."), - UNSUR_K1 =SIMP(statut='f',typ='R',val_min = 0.0, - fr="Souplesse en série avec les 2 autres branches."), - UNSUR_K2 =SIMP(statut='f',typ='R',val_min = 1.0E-08, - fr="Souplesse en parallèle de la branche visqueuse."), - UNSUR_K3 =SIMP(statut='f',typ='R',val_min = 0.0, - fr="Souplesse dans la branche visqueuse."), - C =SIMP(statut='o',typ='R',val_min = 1.0E-08, - fr="'Raideur' de la partie visqueuse."), - PUIS_ALPHA =SIMP(statut='o',typ='R',val_min = 1.0E-08, val_max=1.0, defaut=0.5, - fr="Puissance de la loi visqueuse ]0.0, 1.0] ."), - ), - DIS_BILI_ELAS =FACT(statut='f', - fr="Loi bi-linéaire pour les discrets.", - regles=(PRESENT_PRESENT('KDEB_DX','KFIN_DX','FPRE_DX',), - PRESENT_PRESENT('KDEB_DY','KFIN_DY','FPRE_DY',), - PRESENT_PRESENT('KDEB_DZ','KFIN_DZ','FPRE_DZ',),), - KDEB_DX =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule), - fr="Raideur début suivant l'axe local x de l'élément."), - KDEB_DY =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule), - fr="Raideur début suivant l'axe local y de l'élément."), - KDEB_DZ =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule), - fr="Raideur début suivant l'axe local z de l'élément."), - KFIN_DX =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule), - fr="Raideur fin l'axe local x de l'élément."), - KFIN_DY =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule), - fr="Raideur fin l'axe local y de l'élément."), - KFIN_DZ =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule), - fr="Raideur fin l'axe local z de l'élément."), - FPRE_DX =SIMP(statut='f',typ='R', - fr="Effort de préserrage suivant l'axe local x de l'élément."), - FPRE_DY =SIMP(statut='f',typ='R', - fr="Effort de préserrage suivant l'axe local y de l'élément."), - FPRE_DZ =SIMP(statut='f',typ='R', - fr="Effort de préserrage suivant l'axe local z de l'élément."), - ), -# Discrets non-linéaires : fin -# -# comportement thermique -# - THER_NL =FACT(statut='f', - regles=(UN_PARMI('BETA','RHO_CP', ),), - LAMBDA =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - BETA =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - RHO_CP =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - ), - THER_HYDR =FACT(statut='f', - LAMBDA =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - BETA =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - AFFINITE =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - CHALHYDR =SIMP(statut='o',typ='R'), - ), - THER =FACT(statut='f', - LAMBDA =SIMP(statut='o',typ='R'), - RHO_CP =SIMP(statut='f',typ='R'), - ), - THER_FO =FACT(statut='f', - LAMBDA =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - RHO_CP =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - ), - THER_ORTH =FACT(statut='f', - LAMBDA_L =SIMP(statut='o',typ='R'), - LAMBDA_T =SIMP(statut='o',typ='R'), - LAMBDA_N =SIMP(statut='f',typ='R'), - RHO_CP =SIMP(statut='f',typ='R'), - ), - THER_COQUE =FACT(statut='f', - COND_LMM =SIMP(statut='o',typ='R'), - COND_TMM =SIMP(statut='o',typ='R'), - COND_LMP =SIMP(statut='o',typ='R'), - COND_TMP =SIMP(statut='o',typ='R'), - COND_LPP =SIMP(statut='o',typ='R'), - COND_TPP =SIMP(statut='o',typ='R'), - COND_LSI =SIMP(statut='o',typ='R'), - COND_TSI =SIMP(statut='o',typ='R'), - COND_NMM =SIMP(statut='o',typ='R'), - COND_NMP =SIMP(statut='o',typ='R'), - COND_NPP =SIMP(statut='o',typ='R'), - COND_NSI =SIMP(statut='o',typ='R'), - CMAS_MM =SIMP(statut='f',typ='R'), - CMAS_MP =SIMP(statut='f',typ='R'), - CMAS_PP =SIMP(statut='f',typ='R'), - CMAS_SI =SIMP(statut='f',typ='R'), - ), - THER_COQUE_FO =FACT(statut='f', - COND_LMM =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - COND_TMM =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - COND_LMP =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - COND_TMP =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - COND_LPP =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - COND_TPP =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - COND_LSI =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - COND_TSI =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - COND_NMM =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - COND_NMP =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - COND_NPP =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - COND_NSI =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - CMAS_MM =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - CMAS_MP =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - CMAS_PP =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - CMAS_SI =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - ), - SECH_GRANGER =FACT(statut='f', - A =SIMP(statut='o',typ='R'), - B =SIMP(statut='o',typ='R'), - QSR_K =SIMP(statut='o',typ='R'), - TEMP_0_C =SIMP(statut='o',typ='R'), - ), - SECH_MENSI =FACT(statut='f', - A =SIMP(statut='o',typ='R'), - B =SIMP(statut='o',typ='R'), - ), - SECH_BAZANT =FACT(statut='f', - D1 =SIMP(statut='o',typ='R'), - ALPHA_BAZANT =SIMP(statut='o',typ='R'), - N =SIMP(statut='o',typ='R'), - FONC_DESORP =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - ), - SECH_NAPPE =FACT(statut='f', - FONCTION =SIMP(statut='o',typ=(nappe_sdaster,formule)), - ), -# -# comportement métallurgique -# - META_ACIER =FACT(statut='f', - TRC =SIMP(statut='o',typ=(table_sdaster) ), - AR3 =SIMP(statut='o',typ='R'), - ALPHA =SIMP(statut='o',typ='R'), - MS0 =SIMP(statut='o',typ='R'), - AC1 =SIMP(statut='o',typ='R'), - AC3 =SIMP(statut='o',typ='R'), - TAUX_1 =SIMP(statut='o',typ='R'), - TAUX_3 =SIMP(statut='o',typ='R'), - LAMBDA0 =SIMP(statut='f',typ='R'), - QSR_K =SIMP(statut='f',typ='R'), - D10 =SIMP(statut='f',typ='R'), - WSR_K =SIMP(statut='f',typ='R'), - ), - META_ZIRC =FACT(statut='f', - TDEQ =SIMP(statut='o',typ='R'), - N =SIMP(statut='o',typ='R'), - K =SIMP(statut='o',typ='R'), - T1C =SIMP(statut='o',typ='R'), - T2C =SIMP(statut='o',typ='R'), - AC =SIMP(statut='o',typ='R'), - M =SIMP(statut='o',typ='R'), - QSR_K =SIMP(statut='o',typ='R'), - T1R =SIMP(statut='o',typ='R'), - T2R =SIMP(statut='o',typ='R'), - AR =SIMP(statut='o',typ='R'), - BR =SIMP(statut='o',typ='R'), - ), - DURT_META =FACT(statut='f', - F1_DURT =SIMP(statut='o',typ='R'), - F2_DURT =SIMP(statut='o',typ='R'), - F3_DURT =SIMP(statut='o',typ='R'), - F4_DURT =SIMP(statut='o',typ='R'), - C_DURT =SIMP(statut='o',typ='R'), - ), - ELAS_META =FACT(statut='f', - E =SIMP(statut='o',typ='R'), - NU =SIMP(statut='o',typ='R'), - F_ALPHA =SIMP(statut='o',typ='R'), - C_ALPHA =SIMP(statut='o',typ='R'), - PHASE_REFE =SIMP(statut='o',typ='TXM',into=("CHAUD","FROID")), - EPSF_EPSC_TREF =SIMP(statut='o',typ='R'), - PRECISION =SIMP(statut='f',typ='R',defaut= 1.0E+0), - F1_SY =SIMP(statut='f',typ='R'), - F2_SY =SIMP(statut='f',typ='R'), - F3_SY =SIMP(statut='f',typ='R'), - F4_SY =SIMP(statut='f',typ='R'), - C_SY =SIMP(statut='f',typ='R'), - SY_MELANGE =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - F1_S_VP =SIMP(statut='f',typ='R'), - F2_S_VP =SIMP(statut='f',typ='R'), - F3_S_VP =SIMP(statut='f',typ='R'), - F4_S_VP =SIMP(statut='f',typ='R'), - C_S_VP =SIMP(statut='f',typ='R' ), - S_VP_MELANGE =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - ), - ELAS_META_FO =FACT(statut='f', - regles=( - PRESENT_PRESENT('F_ALPHA','TEMP_DEF_ALPHA'), - PRESENT_PRESENT('C_ALPHA','TEMP_DEF_ALPHA'), - ), - E =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - NU =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - F_ALPHA =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - C_ALPHA =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - PHASE_REFE =SIMP(statut='o',typ='TXM',into=("CHAUD","FROID")), - EPSF_EPSC_TREF =SIMP(statut='o',typ='R'), - TEMP_DEF_ALPHA =SIMP(statut='f',typ='R'), - PRECISION =SIMP(statut='f',typ='R',defaut= 1.0E+0), - F1_SY =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - F2_SY =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - F3_SY =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - F4_SY =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - C_SY =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - SY_MELANGE =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - F1_S_VP =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - F2_S_VP =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - F3_S_VP =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - F4_S_VP =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - C_S_VP =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - S_VP_MELANGE =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - ), - META_ECRO_LINE =FACT(statut='f', - F1_D_SIGM_EPSI =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - F2_D_SIGM_EPSI =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - F3_D_SIGM_EPSI =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - F4_D_SIGM_EPSI =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - C_D_SIGM_EPSI =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - ), - META_TRACTION =FACT(statut='f', - SIGM_F1 =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - SIGM_F2 =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - SIGM_F3 =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - SIGM_F4 =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - SIGM_C =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - ), - META_VISC_FO =FACT(statut='f', - F1_ETA =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - F1_N =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - F1_C =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - F1_M =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - F2_ETA =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - F2_N =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - F2_C =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - F2_M =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - F3_ETA =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - F3_N =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - F3_C =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - F3_M =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - F4_ETA =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - F4_N =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - F4_C =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - F4_M =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - C_ETA =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - C_N =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - C_C =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - C_M =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - ), - META_PT =FACT(statut='f', - F1_K =SIMP(statut='f',typ='R'), - F2_K =SIMP(statut='f',typ='R'), - F3_K =SIMP(statut='f',typ='R'), - F4_K =SIMP(statut='f',typ='R'), - F1_D_F_META =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - F2_D_F_META =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - F3_D_F_META =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - F4_D_F_META =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - ), - META_RE =FACT(statut='f', - C_F1_THETA =SIMP(statut='f',typ='R'), - C_F2_THETA =SIMP(statut='f',typ='R'), - C_F3_THETA =SIMP(statut='f',typ='R'), - C_F4_THETA =SIMP(statut='f',typ='R'), - F1_C_THETA =SIMP(statut='f',typ='R'), - F2_C_THETA =SIMP(statut='f',typ='R'), - F3_C_THETA =SIMP(statut='f',typ='R'), - F4_C_THETA =SIMP(statut='f',typ='R'), - ), -# -# comportement fluide -# - FLUIDE =FACT(statut='f', - regles=(EXCLUS('CELE_C','CELE_R'),), - RHO =SIMP(statut='o',typ='R'), - PESA_Z =SIMP(statut='f',typ='R',min=1,max=1), - CELE_C =SIMP(statut='f',typ='C'), - CELE_R =SIMP(statut='f',typ='R'), - ), -# ================================================================================= -# COMPORTEMENT THERMO_HYDRO_MECANIQUE -# LES DONNEES NECESSAIRES A LA DEFINITION DU MATERIAU SONT DEPENDANTES -# DE LA LOI DE COUPLAGE THM DE LA RELATION -# LE COMPORTEMENT DE COUPLAGE COMP_THM N EST VALABLE QUE POUR LES LOIS -# DE COUPLAGE : LIQU_SATU,LIQU_GAZ,GAZ,LIQU_GAZ_ATM,LIQU_VAPE_GAZ,LIQU_VAPE -# ET LIQU_AD_GAZ_VAPE -# LA CORRESPONDANCE AVEC LES VARIABLES CACHEES EST LA SUIVANTE : -# 1 --> LIQU_SATU -# 2 --> GAZ -# 3 --> LIQU_VAPE -# 4 --> LIQU_VAPE_GAZ -# 5 --> LIQU_GAZ -# 6 --> LIQU_GAZ_ATM -# 9 --> LIQU_AD_GAZ_VAPE -# 10 --> LIQU_AD_GAZ -# ================================================================================= - COMP_THM = SIMP(statut='f', typ='TXM', - into = ( "LIQU_SATU" , - "LIQU_GAZ" , - "GAZ" , - "LIQU_GAZ_ATM" , - "LIQU_VAPE_GAZ" , - "LIQU_VAPE" , - "LIQU_AD_GAZ_VAPE" , - "LIQU_AD_GAZ" , - ) ), -# ================================================================================= -# --- LOI DE COUPLAGE DE TYPE LIQU_SATU ------------------------------------------- -# ================================================================================= -# --- PRESENCE OBLIGATOIRE DES MOT-CLES SUIVANT : --------------------------------- -# --- THM_INIT, THM_DIFFU, THM_LIQU ----------------------------------------------- -# ================================================================================= - b_liqusatu = BLOC(condition = "COMP_THM == 'LIQU_SATU' ", - fr="Paramètres nécessaires pour une loi de couplage de type LIQU_SATU", -# ================================================================================= -# --- MOT-CLE OBLIGATOIRE --------------------------------------------------------- -# ================================================================================= - THM_INIT = FACT(statut='o', -# --------------------------------------------------------------------------------- -# ------------------- DONNEES OBLIGATOIRE ------------------------------------- -# --------------------------------------------------------------------------------- - PRE1 = SIMP(statut='o',typ='R'), - PORO = SIMP(statut='o',typ='R'), -# --------------------------------------------------------------------------------- -# ------------------- DONNEES NECESSAIRE SI THERMIQUE ------------------------- -# --------------------------------------------------------------------------------- - TEMP = SIMP(statut='f',typ='R'), -# --------------------------------------------------------------------------------- -# ------------------- DONNEES INUTILES ---------------------------------------- -# --------------------------------------------------------------------------------- - PRE2 = SIMP(statut='f',typ='R'), - PRES_VAPE = SIMP(statut='f',typ='R'), - DEGR_SATU = SIMP(statut='f',typ='R'), -# --------------------------------------------------------------------------------- -# ------------------- DONNEE CACHEE --------------------------------------------- -# --------------------------------------------------------------------------------- - COMP_THM = SIMP(statut='c',typ='R',defaut= 1.0,), - ), -# ================================================================================= -# --- MOT-CLE OBLIGATOIRE --------------------------------------------------------- -# ================================================================================= - THM_DIFFU = FACT(statut='o', - regles = (EXCLUS('BIOT_COEF','BIOT_N',), - PRESENT_PRESENT('BIOT_N','BIOT_L',), - PRESENT_PRESENT('BIOT_T','BIOT_L','BIOT_N',), - - EXCLUS('PERM_IN','PERM_END','PERMIN_L',), - PRESENT_ABSENT('PERMIN_N','PERMIN_T',), - PRESENT_PRESENT('PERMIN_N','PERMIN_L',), - PRESENT_PRESENT('PERMIN_T','PERMIN_L',), - - - EXCLUS('LAMB_T','LAMB_TL',), - PRESENT_ABSENT('LAMB_TN','LAMB_TT',), - PRESENT_PRESENT('LAMB_TN','LAMB_TL',), - PRESENT_PRESENT('LAMB_TT','LAMB_TL',), - - - EXCLUS('D_LB_T','D_LB_TL',), - PRESENT_ABSENT('D_LB_TN','D_LB_TT',), - PRESENT_PRESENT('D_LB_TN','D_LB_TL',), - - EXCLUS('LAMB_CT','LAMB_C_L',), - PRESENT_ABSENT('LAMB_C_N','LAMB_C_T',), - PRESENT_PRESENT('LAMB_C_N','LAMB_C_L',), - PRESENT_PRESENT('LAMB_C_T','LAMB_C_L',), - - EXCLUS('PERMIN_L','BIOT_COEF'), - EXCLUS('PERMIN_L','LAMB_T'), - PRESENT_PRESENT('BIOT_L','PERMIN_L',), - PRESENT_PRESENT('BIOT_T','PERMIN_T',), - PRESENT_PRESENT('LAMB_TN','PERMIN_N',), - PRESENT_PRESENT('LAMB_TL','PERMIN_L',), - PRESENT_PRESENT('LAMB_TT','PERMIN_T',), - - ), -# --------------------------------------------------------------------------------- -# ------------------- DONNEES OBLIGATOIRE ------------------------------------- -# --------------------------------------------------------------------------------- - RHO = SIMP(statut='o',typ='R'), - BIOT_COEF = SIMP(statut='f',typ='R'), - BIOT_L = SIMP(statut='f',typ='R'), - BIOT_N = SIMP(statut='f',typ='R'), - BIOT_T = SIMP(statut='f',typ='R'), - PESA_X = SIMP(statut='o',typ='R'), - PESA_Y = SIMP(statut='o',typ='R'), - PESA_Z = SIMP(statut='o',typ='R'), -# --------------------------------------------------------------------------------- -# ------------------- DONNEES FACULTATIVES ------------------------------------ -# --------------------------------------------------------------------------------- - PESA_MULT = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), -# --------------------------------------------------------------------------------- -# ------------------- DONNEES NECESSAIRE SI THERMIQUE ------------------------- -# --------------------------------------------------------------------------------- - CP = SIMP(statut='f',typ='R'), - PERM_IN = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - PERMIN_L = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - PERMIN_N = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - PERMIN_T = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - PERM_END = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - LAMB_PHI = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - D_LB_PHI = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - LAMB_T = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - LAMB_TL = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - LAMB_TN = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - LAMB_TT = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - D_LB_T = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - D_LB_TL = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - D_LB_TN = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - D_LB_TT = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - LAMB_S = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - D_LB_S = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - LAMB_CT = SIMP(statut='f',typ='R'), - LAMB_C_L = SIMP(statut='f',typ='R'), - LAMB_C_N = SIMP(statut='f',typ='R'), - LAMB_C_T = SIMP(statut='f',typ='R'), -# --------------------------------------------------------------------------------- -# ------------------- DONNEES INUTILES ---------------------------------------- -# --------------------------------------------------------------------------------- - R_GAZ = SIMP(statut='f',typ='R'), - EMMAG = SIMP(statut='f',typ='R'), - SATU_PRES =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - D_SATU_PRES =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - PERM_LIQU =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - D_PERM_LIQU_SATU=SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - PERM_GAZ =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - D_PERM_SATU_GAZ =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - D_PERM_PRES_GAZ =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - FICKV_T = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - FICKV_PV = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - FICKV_PG = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - FICKV_S = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - D_FV_T = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - D_FV_PG = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - FICKA_T = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - FICKA_PA = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - FICKA_PL = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - FICKA_S = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - D_FA_T = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - ), -# ================================================================================= -# --- MOT-CLE OBLIGATOIRE --------------------------------------------------------- -# ================================================================================= - THM_LIQU = FACT(statut='o', -# --------------------------------------------------------------------------------- -# ------------------- DONNEES OBLIGATOIRE ------------------------------------- -# --------------------------------------------------------------------------------- - RHO = SIMP(statut='o',typ='R'), - UN_SUR_K = SIMP(statut='o',typ='R'), - VISC = SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - D_VISC_TEMP = SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), -# --------------------------------------------------------------------------------- -# ------------------- DONNEES NECESSAIRE SI THERMIQUE ------------------------- -# --------------------------------------------------------------------------------- - ALPHA = SIMP(statut='f',typ='R'), - CP = SIMP(statut='f',typ='R'), - ), -# ================================================================================= -# --- MOT-CLE INUTILE ------------------------------------------------------------- -# ================================================================================= - THM_GAZ =FACT(statut='f', - MASS_MOL =SIMP(statut='f',typ='R'), - CP =SIMP(statut='f',typ='R'), - VISC =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - D_VISC_TEMP =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - ), -# ================================================================================= -# --- MOT-CLE INUTILE ------------------------------------------------------------- -# ================================================================================= - THM_VAPE_GAZ =FACT(statut='f', - MASS_MOL =SIMP(statut='f',typ='R'), - CP =SIMP(statut='f',typ='R'), - VISC =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - D_VISC_TEMP =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - ), - ), -# ================================================================================= -# --- LOI DE COUPLAGE DE TYPE LIQU_GAZ -------------------------------------------- -# ================================================================================= -# --- PRESENCE OBLIGATOIRE DES MOT-CLES SUIVANT : --------------------------------- -# --- THM_INIT, THM_DIFFU, THM_LIQU, THM_GAZ -------------------------------------- -# ================================================================================= - b_liqugaz = BLOC(condition = "COMP_THM == 'LIQU_GAZ' ", - fr="Paramètres nécessaires pour une loi de couplage de type LIQU_GAZ", -# ================================================================================= -# --- MOT-CLE OBLIGATOIRE --------------------------------------------------------- -# ================================================================================= - THM_INIT = FACT(statut='o', -# --------------------------------------------------------------------------------- -# ------------------- DONNEES OBLIGATOIRE ------------------------------------- -# --------------------------------------------------------------------------------- - PRE1 = SIMP(statut='o',typ='R'), - PRE2 = SIMP(statut='o',typ='R'), - PORO = SIMP(statut='o',typ='R'), -# --------------------------------------------------------------------------------- -# ------------------- DONNEES NECESSAIRE SI THERMIQUE ------------------------- -# --------------------------------------------------------------------------------- - TEMP = SIMP(statut='f',typ='R'), -# --------------------------------------------------------------------------------- -# ------------------- DONNEES INUTILES ---------------------------------------- -# --------------------------------------------------------------------------------- - PRES_VAPE = SIMP(statut='f',typ='R'), - DEGR_SATU = SIMP(statut='f',typ='R'), -# --------------------------------------------------------------------------------- -# ------------------- DONNEE CACHEE --------------------------------------------- -# --------------------------------------------------------------------------------- - COMP_THM = SIMP(statut='c',typ='R',defaut= 5.0,), - ), -# ================================================================================= -# --- MOT-CLE OBLIGATOIRE --------------------------------------------------------- -# ================================================================================= - THM_DIFFU = FACT(statut='o', - regles = (EXCLUS('BIOT_COEF','BIOT_N',), - PRESENT_PRESENT('BIOT_N','BIOT_L',), - PRESENT_PRESENT('BIOT_T','BIOT_L','BIOT_N',), - EXCLUS('PERM_IN','PERM_END','PERMIN_L',), - PRESENT_ABSENT('PERMIN_N','PERMIN_T',), - PRESENT_PRESENT('PERMIN_N','PERMIN_L',), - PRESENT_PRESENT('PERMIN_T','PERMIN_L',), - EXCLUS('LAMB_T','LAMB_TL',), - PRESENT_ABSENT('LAMB_TN','LAMB_TT',), - PRESENT_PRESENT('LAMB_TN','LAMB_TL',), - PRESENT_PRESENT('LAMB_TT','LAMB_TL',), - EXCLUS('D_LB_T','D_LB_TL',), - PRESENT_ABSENT('D_LB_TN','D_LB_TT',), - PRESENT_PRESENT('D_LB_TN','D_LB_TL',), - PRESENT_PRESENT('D_LB_TT','D_LB_TL',), - EXCLUS('LAMB_CT','LAMB_C_L',), - PRESENT_ABSENT('LAMB_C_N','LAMB_C_T',), - PRESENT_PRESENT('LAMB_C_N','LAMB_C_L',), - PRESENT_PRESENT('LAMB_C_T','LAMB_C_L',), - - EXCLUS('PERMIN_L','BIOT_COEF'), - EXCLUS('PERMIN_L','LAMB_T'), - PRESENT_PRESENT('BIOT_L','PERMIN_L',), - PRESENT_PRESENT('BIOT_T','PERMIN_T',), - PRESENT_PRESENT('LAMB_TN','PERMIN_N',), - PRESENT_PRESENT('LAMB_TL','PERMIN_L',), - PRESENT_PRESENT('LAMB_TT','PERMIN_T',), - ENSEMBLE('SATU_PRES','D_SATU_PRES','PERM_LIQU','D_PERM_LIQU_SATU', - 'PERM_GAZ','D_PERM_SATU_GAZ','D_PERM_PRES_GAZ',), - ENSEMBLE('VG_N','VG_SR','VG_PR','VG_SMAX','VG_SATUR',), - UN_PARMI('VG_N','SATU_PRES'), - ), -# --------------------------------------------------------------------------------- -# ------------------- DONNEES OBLIGATOIRE ------------------------------------- -# --------------------------------------------------------------------------------- - R_GAZ = SIMP(statut='o',typ='R'), - RHO = SIMP(statut='o',typ='R'), - BIOT_COEF = SIMP(statut='f',typ='R'), - BIOT_L = SIMP(statut='f',typ='R'), - BIOT_N = SIMP(statut='f',typ='R'), - BIOT_T = SIMP(statut='f',typ='R'), - PESA_X = SIMP(statut='o',typ='R'), - PESA_Y = SIMP(statut='o',typ='R'), - PESA_Z = SIMP(statut='o',typ='R'), - SATU_PRES = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - D_SATU_PRES = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - PERM_LIQU = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - D_PERM_LIQU_SATU = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - PERM_GAZ = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - D_PERM_SATU_GAZ = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - D_PERM_PRES_GAZ = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), -# ---Van Genhuchten et Muallen----------------------------------------------------------------------------- - - VG_N = SIMP(statut='f',typ='R'), - VG_SR = SIMP(statut='f',typ='R'), - VG_PR = SIMP(statut='f',typ='R'), - VG_SMAX = SIMP(statut='f',typ='R'), - VG_SATUR = SIMP(statut='f',typ='R'), -# --------------------------------------------------------------------------------- -# ------------------- DONNEES FACULTATIVES ------------------------------------ -# --------------------------------------------------------------------------------- - PESA_MULT = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), -# -# --------------------------------------------------------------------------------- -# ------------------- DONNEES NECESSAIRE SI THERMIQUE ------------------------- -# --------------------------------------------------------------------------------- - CP = SIMP(statut='f',typ='R'), - PERM_IN = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - PERMIN_L = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - PERMIN_N = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - PERMIN_T = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - PERM_END = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - LAMB_PHI = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - D_LB_PHI = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - LAMB_T = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - LAMB_TL = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - LAMB_TN = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - LAMB_TT = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - D_LB_T = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - D_LB_TL = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - D_LB_TN = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - D_LB_TT = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - LAMB_S = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - D_LB_S = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - LAMB_CT = SIMP(statut='f',typ='R'), - LAMB_C_L = SIMP(statut='f',typ='R'), - LAMB_C_N = SIMP(statut='f',typ='R'), - LAMB_C_T = SIMP(statut='f',typ='R'), -# --------------------------------------------------------------------------------- -# ------------------- DONNEES INUTILES ---------------------------------------- -# --------------------------------------------------------------------------------- - EMMAG = SIMP(statut='f',typ='R'), - FICKV_T = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - FICKV_PV = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - FICKV_PG = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - FICKV_S = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - D_FV_T = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - D_FV_PG = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - FICKA_T = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - FICKA_PA = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - FICKA_PL = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - FICKA_S = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - D_FA_T = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - ) , -# ================================================================================= -# --- MOT-CLE OBLIGATOIRE --------------------------------------------------------- -# ================================================================================= - THM_LIQU = FACT(statut='o', -# --------------------------------------------------------------------------------- -# ------------------- DONNEES OBLIGATOIRE ------------------------------------- -# --------------------------------------------------------------------------------- - RHO = SIMP(statut='o',typ='R'), - UN_SUR_K = SIMP(statut='o',typ='R'), - VISC = SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - D_VISC_TEMP = SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), -# --------------------------------------------------------------------------------- -# ------------------- DONNEES NECESSAIRE SI THERMIQUE ------------------------- -# --------------------------------------------------------------------------------- - ALPHA = SIMP(statut='f',typ='R'), - CP = SIMP(statut='f',typ='R'), - ), -# ================================================================================= -# --- MOT-CLE OBLIGATOIRE --------------------------------------------------------- -# ================================================================================= - THM_GAZ = FACT(statut='o', -# --------------------------------------------------------------------------------- -# ------------------- DONNEES OBLIGATOIRE ------------------------------------- -# --------------------------------------------------------------------------------- - MASS_MOL = SIMP(statut='o',typ='R'), - VISC = SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - D_VISC_TEMP = SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), -# --------------------------------------------------------------------------------- -# ------------------- DONNEES NECESSAIRE SI THERMIQUE ------------------------- -# --------------------------------------------------------------------------------- - CP = SIMP(statut='f',typ='R'), - ), -# ================================================================================= -# --- MOT-CLE INUTILE ------------------------------------------------------------- -# ================================================================================= - THM_VAPE_GAZ =FACT(statut='f', - MASS_MOL =SIMP(statut='f',typ='R'), - CP =SIMP(statut='f',typ='R'), - VISC =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - D_VISC_TEMP =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - ), - ), -# ================================================================================= -# --- LOI DE COUPLAGE DE TYPE GAZ ------------------------------------------------- -# ================================================================================= -# --- PRESENCE OBLIGATOIRE DES MOT-CLES SUIVANT : --------------------------------- -# --- THM_INIT, THM_DIFFU, THM_GAZ ------------------------------------------------ -# ================================================================================= - b_gaz = BLOC(condition = "COMP_THM == 'GAZ' ", - fr="Paramètres nécessaires pour une loi de couplage de type GAZ", -# ================================================================================= -# --- MOT-CLE OBLIGATOIRE --------------------------------------------------------- -# ================================================================================= - THM_INIT = FACT(statut='o', -# --------------------------------------------------------------------------------- -# ------------------- DONNEES OBLIGATOIRE ------------------------------------- -# --------------------------------------------------------------------------------- - TEMP = SIMP(statut='o',typ='R'), - PRE1 = SIMP(statut='o',typ='R'), - PORO = SIMP(statut='o',typ='R'), -# --------------------------------------------------------------------------------- -# ------------------- DONNEES INUTILES ---------------------------------------- -# --------------------------------------------------------------------------------- - PRE2 = SIMP(statut='f',typ='R'), - PRES_VAPE = SIMP(statut='f',typ='R'), - DEGR_SATU = SIMP(statut='f',typ='R'), -# --------------------------------------------------------------------------------- -# ------------------- DONNEE CACHEE --------------------------------------------- -# --------------------------------------------------------------------------------- - COMP_THM = SIMP(statut='c',typ='R',defaut= 2.0,), - ), -# ================================================================================= -# --- MOT-CLE OBLIGATOIRE --------------------------------------------------------- -# ================================================================================= - THM_DIFFU = FACT(statut='o', - regles = (EXCLUS('BIOT_COEF','BIOT_N',), - PRESENT_PRESENT('BIOT_N','BIOT_L',), - PRESENT_PRESENT('BIOT_T','BIOT_L','BIOT_N',), - EXCLUS('PERM_IN','PERM_END','PERMIN_L',), - PRESENT_ABSENT('PERMIN_N','PERMIN_T',), - PRESENT_PRESENT('PERMIN_N','PERMIN_L',), - PRESENT_PRESENT('PERMIN_T','PERMIN_L',), - EXCLUS('LAMB_T','LAMB_TL',), - PRESENT_ABSENT('LAMB_TN','LAMB_TT',), - PRESENT_PRESENT('LAMB_TN','LAMB_TL',), - PRESENT_PRESENT('LAMB_TT','LAMB_TL',), - EXCLUS('D_LB_T','D_LB_TL',), - PRESENT_ABSENT('D_LB_TN','D_LB_TT',), - PRESENT_PRESENT('D_LB_TN','D_LB_TL',), - PRESENT_PRESENT('D_LB_TT','D_LB_TL',), - EXCLUS('LAMB_CT','LAMB_C_L',), - PRESENT_ABSENT('LAMB_C_N','LAMB_C_T',), - PRESENT_PRESENT('LAMB_C_N','LAMB_C_L',), - PRESENT_PRESENT('LAMB_C_T','LAMB_C_L',), - EXCLUS('PERMIN_L','BIOT_COEF'), - EXCLUS('PERMIN_L','LAMB_T'), - PRESENT_PRESENT('BIOT_L','PERMIN_L',), - PRESENT_PRESENT('BIOT_T','PERMIN_T',), - PRESENT_PRESENT('LAMB_TN','PERMIN_N',), - PRESENT_PRESENT('LAMB_TL','PERMIN_L',), - PRESENT_PRESENT('LAMB_TT','PERMIN_T',), - ), -# --------------------------------------------------------------------------------- -# ------------------- DONNEES OBLIGATOIRE ------------------------------------- -# --------------------------------------------------------------------------------- - R_GAZ = SIMP(statut='o',typ='R'), - RHO = SIMP(statut='o',typ='R'), - BIOT_COEF = SIMP(statut='f',typ='R'), - BIOT_L = SIMP(statut='f',typ='R'), - BIOT_N = SIMP(statut='f',typ='R'), - BIOT_T = SIMP(statut='f',typ='R'), - PESA_X = SIMP(statut='o',typ='R'), - PESA_Y = SIMP(statut='o',typ='R'), - PESA_Z = SIMP(statut='o',typ='R'), -# --------------------------------------------------------------------------------- -# ------------------- DONNEES FACULTATIVES ------------------------------------ -# --------------------------------------------------------------------------------- - PESA_MULT = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), -# --------------------------------------------------------------------------------- -# ------------------- DONNEES NECESSAIRE SI THERMIQUE ------------------------- -# --------------------------------------------------------------------------------- - CP = SIMP(statut='f',typ='R'), - PERM_IN = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - PERMIN_L = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - PERMIN_N = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - PERMIN_T = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - PERM_END = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - LAMB_PHI = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - D_LB_PHI = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - LAMB_T = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - LAMB_TL = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - LAMB_TN = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - LAMB_TT = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - D_LB_T = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - D_LB_TL = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - D_LB_TN = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - D_LB_TT = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - LAMB_S = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - D_LB_S = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - LAMB_CT = SIMP(statut='f',typ='R'), - LAMB_C_L = SIMP(statut='f',typ='R'), - LAMB_C_N = SIMP(statut='f',typ='R'), - LAMB_C_T = SIMP(statut='f',typ='R'), -# --------------------------------------------------------------------------------- -# ------------------- DONNEES INUTILES ---------------------------------------- -# --------------------------------------------------------------------------------- - EMMAG = SIMP(statut='f',typ='R'), - SATU_PRES =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - D_SATU_PRES =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - PERM_LIQU =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - D_PERM_LIQU_SATU=SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - PERM_GAZ =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - D_PERM_SATU_GAZ =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - D_PERM_PRES_GAZ =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - FICKV_T = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - FICKV_PV = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - FICKV_PG = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - FICKV_S = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - D_FV_T = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - D_FV_PG = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - FICKA_T = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - FICKA_PA = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - FICKA_PL = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - FICKA_S = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - D_FA_T = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - ) , -# ================================================================================= -# --- MOT-CLE OBLIGATOIRE --------------------------------------------------------- -# ================================================================================= - THM_GAZ = FACT(statut='o', -# --------------------------------------------------------------------------------- -# ------------------- DONNEES OBLIGATOIRE ------------------------------------- -# --------------------------------------------------------------------------------- - MASS_MOL = SIMP(statut='o',typ='R'), - VISC = SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - D_VISC_TEMP = SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), -# --------------------------------------------------------------------------------- -# ------------------- DONNEES NECESSAIRE SI THERMIQUE ------------------------- -# --------------------------------------------------------------------------------- - CP = SIMP(statut='f',typ='R'), - ), -# ================================================================================= -# --- MOT-CLE INUTILE ------------------------------------------------------------- -# ================================================================================= - THM_LIQU =FACT(statut='f', - RHO =SIMP(statut='f',typ='R'), - UN_SUR_K =SIMP(statut='f',typ='R'), - ALPHA =SIMP(statut='f',typ='R'), - CP =SIMP(statut='f',typ='R'), - VISC =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - D_VISC_TEMP =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - COEF_HENRY =SIMP(statut='f',typ='R'), - ), -# ================================================================================= -# --- MOT-CLE INUTILE ------------------------------------------------------------- -# ================================================================================= - THM_VAPE_GAZ =FACT(statut='f', - MASS_MOL =SIMP(statut='f',typ='R'), - CP =SIMP(statut='f',typ='R'), - VISC =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - D_VISC_TEMP =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - ), - ), -# ================================================================================= -# --- LOI DE COUPLAGE DE TYPE LIQU_GAZ_ATM ---------------------------------------- -# ================================================================================= -# --- PRESENCE OBLIGATOIRE DES MOT-CLES SUIVANT : --------------------------------- -# --- THM_INIT, THM_DIFFU, THM_LIQU, THM_GAZ -------------------------------------- -# ================================================================================= - b_liqugazatm = BLOC(condition = "COMP_THM == 'LIQU_GAZ_ATM' ", - fr="Paramètres nécessaires pour une loi de couplage de type LIQU_GAZ_ATM", -# ================================================================================= -# --- MOT-CLE OBLIGATOIRE --------------------------------------------------------- -# ================================================================================= - THM_INIT = FACT(statut='o', -# --------------------------------------------------------------------------------- -# ------------------- DONNEES OBLIGATOIRE ------------------------------------- -# --------------------------------------------------------------------------------- - PRE1 = SIMP(statut='o',typ='R'), - PORO = SIMP(statut='o',typ='R'), -# --------------------------------------------------------------------------------- -# ------------------- DONNEES NECESSAIRE SI THERMIQUE ------------------------- -# --------------------------------------------------------------------------------- - TEMP = SIMP(statut='f',typ='R'), -# --------------------------------------------------------------------------------- -# ------------------- DONNEES INUTILES ---------------------------------------- -# --------------------------------------------------------------------------------- - PRE2 = SIMP(statut='f',typ='R'), - PRES_VAPE = SIMP(statut='f',typ='R'), - DEGR_SATU = SIMP(statut='f',typ='R'), -# --------------------------------------------------------------------------------- -# ------------------- DONNEE CACHEE --------------------------------------------- -# --------------------------------------------------------------------------------- - COMP_THM = SIMP(statut='c',typ='R',defaut= 6.0,), - ), -# ================================================================================= -# --- MOT-CLE OBLIGATOIRE --------------------------------------------------------- -# ================================================================================= - THM_DIFFU = FACT(statut='o', - regles = (EXCLUS('BIOT_COEF','BIOT_N',), - PRESENT_PRESENT('BIOT_N','BIOT_L',), - PRESENT_PRESENT('BIOT_T','BIOT_L','BIOT_N',), - EXCLUS('PERM_IN','PERM_END','PERMIN_L',), - PRESENT_ABSENT('PERMIN_N','PERMIN_T',), - PRESENT_PRESENT('PERMIN_N','PERMIN_L',), - PRESENT_PRESENT('PERMIN_T','PERMIN_L',), - EXCLUS('LAMB_T','LAMB_TL',), - PRESENT_ABSENT('LAMB_TN','LAMB_TT',), - PRESENT_PRESENT('LAMB_TN','LAMB_TL',), - PRESENT_PRESENT('LAMB_TT','LAMB_TL',), - EXCLUS('D_LB_T','D_LB_TL',), - PRESENT_ABSENT('D_LB_TN','D_LB_TT',), - PRESENT_PRESENT('D_LB_TN','D_LB_TL',), - PRESENT_PRESENT('D_LB_TT','D_LB_TL',), - EXCLUS('LAMB_CT','LAMB_C_L',), - PRESENT_ABSENT('LAMB_C_N','LAMB_C_T',), - PRESENT_PRESENT('LAMB_C_N','LAMB_C_L',), - PRESENT_PRESENT('LAMB_C_T','LAMB_C_L',), - EXCLUS('PERMIN_L','BIOT_COEF'), - EXCLUS('PERMIN_L','LAMB_T'), - PRESENT_PRESENT('BIOT_L','PERMIN_L',), - PRESENT_PRESENT('BIOT_T','PERMIN_T',), - PRESENT_PRESENT('LAMB_TN','PERMIN_N',), - PRESENT_PRESENT('LAMB_TL','PERMIN_L',), - PRESENT_PRESENT('LAMB_TT','PERMIN_T',), - ), -# --------------------------------------------------------------------------------- -# ------------------- DONNEES OBLIGATOIRE ------------------------------------- -# --------------------------------------------------------------------------------- - RHO = SIMP(statut='o',typ='R'), - BIOT_COEF = SIMP(statut='f',typ='R'), - BIOT_L = SIMP(statut='f',typ='R'), - BIOT_N = SIMP(statut='f',typ='R'), - BIOT_T = SIMP(statut='f',typ='R'), - PESA_X = SIMP(statut='o',typ='R'), - PESA_Y = SIMP(statut='o',typ='R'), - PESA_Z = SIMP(statut='o',typ='R'), - SATU_PRES = SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - D_SATU_PRES = SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - PERM_LIQU = SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - D_PERM_LIQU_SATU = SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), -# --------------------------------------------------------------------------------- -# ------------------- DONNEES FACULTATIVES ------------------------------------ -# --------------------------------------------------------------------------------- - PESA_MULT = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), -# --------------------------------------------------------------------------------- -# ------------------- DONNEES NECESSAIRE SI THERMIQUE ------------------------- -# --------------------------------------------------------------------------------- - CP = SIMP(statut='f',typ='R'), - PERM_IN = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - PERMIN_L = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - PERMIN_N = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - PERMIN_T = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - PERM_END = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - LAMB_PHI = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - D_LB_PHI = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - LAMB_T = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - LAMB_TL = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - LAMB_TN = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - LAMB_TT = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - D_LB_T = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - D_LB_TL = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - D_LB_TN = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - D_LB_TT = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - LAMB_S = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - D_LB_S = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - LAMB_CT = SIMP(statut='f',typ='R'), - LAMB_C_L = SIMP(statut='f',typ='R'), - LAMB_C_N = SIMP(statut='f',typ='R'), - LAMB_C_T = SIMP(statut='f',typ='R'), -# --------------------------------------------------------------------------------- -# ------------------- DONNEES INUTILES ---------------------------------------- -# --------------------------------------------------------------------------------- - EMMAG = SIMP(statut='f',typ='R'), - R_GAZ =SIMP(statut='f',typ='R'), - PERM_GAZ =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - D_PERM_SATU_GAZ =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - D_PERM_PRES_GAZ =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - FICKV_T = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - FICKV_PV = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - FICKV_PG = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - FICKV_S = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - D_FV_T = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - D_FV_PG = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - FICKA_T = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - FICKA_PA = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - FICKA_PL = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - FICKA_S = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - D_FA_T = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - ) , -# ================================================================================= -# --- MOT-CLE OBLIGATOIRE --------------------------------------------------------- -# ================================================================================= - THM_LIQU = FACT(statut='o', -# --------------------------------------------------------------------------------- -# ------------------- DONNEES OBLIGATOIRE ------------------------------------- -# --------------------------------------------------------------------------------- - RHO = SIMP(statut='o',typ='R'), - UN_SUR_K = SIMP(statut='o',typ='R'), - VISC = SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - D_VISC_TEMP = SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), -# --------------------------------------------------------------------------------- -# ------------------- DONNEES NECESSAIRE SI THERMIQUE ------------------------- -# --------------------------------------------------------------------------------- - ALPHA = SIMP(statut='f',typ='R'), - CP = SIMP(statut='f',typ='R'), - ), -# ================================================================================= -# --- MOT-CLE INUTILE ------------------------------------------------------------- -# ================================================================================= - THM_GAZ = FACT(statut='f', - MASS_MOL = SIMP(statut='f',typ='R'), - VISC = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - D_VISC_TEMP = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - CP = SIMP(statut='f',typ='R'), - ), -# ================================================================================= -# --- MOT-CLE INUTILE ------------------------------------------------------------- -# ================================================================================= - THM_VAPE_GAZ =FACT(statut='f', - MASS_MOL =SIMP(statut='f',typ='R'), - CP =SIMP(statut='f',typ='R'), - VISC =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - D_VISC_TEMP =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - ), - ), - -# ================================================================================= -# --- LOI DE COUPLAGE DE TYPE LIQU_AD_GAZ ------------------------------------- -# ================================================================================= -# --- PRESENCE OBLIGATOIRE DES MOT-CLES SUIVANT : --------------------------------- -# --- THM_INIT, THM_DIFFU, THM_LIQU, THM_GAZ, THM_AIR_DISSOUS--------- -# ================================================================================= - b_liquadgaz = BLOC(condition = "COMP_THM == 'LIQU_AD_GAZ' ", - fr="Paramètres nécessaires pour une loi de couplage de type LIQU_AD_GAZ", -# ================================================================================= -# --- MOT-CLE OBLIGATOIRE --------------------------------------------------------- -# ================================================================================= - THM_INIT = FACT(statut='o', -# --------------------------------------------------------------------------------- -# ------------------- DONNEES OBLIGATOIRE ------------------------------------- -# --------------------------------------------------------------------------------- - PRE1 = SIMP(statut='o',typ='R'), - PRE2 = SIMP(statut='o',typ='R'), - PORO = SIMP(statut='o',typ='R'), - PRES_VAPE = SIMP(statut='f',typ='R'), -# --------------------------------------------------------------------------------- -# ------------------- DONNEES NECESSAIRE SI THERMIQUE ------------------------- -# --------------------------------------------------------------------------------- - TEMP = SIMP(statut='f',typ='R'), -# --------------------------------------------------------------------------------- -# ------------------- DONNEES INUTILES ---------------------------------------- -# --------------------------------------------------------------------------------- - DEGR_SATU = SIMP(statut='f',typ='R'), -# --------------------------------------------------------------------------------- -# ------------------- DONNEE CACHEE --------------------------------------------- -# --------------------------------------------------------------------------------- - COMP_THM = SIMP(statut='c',typ='R',defaut= 10.0,), - ), -# ================================================================================= -# --- MOT-CLE OBLIGATOIRE --------------------------------------------------------- -# ================================================================================= - THM_DIFFU = FACT(statut='o', - regles = (EXCLUS('BIOT_COEF','BIOT_N',), - PRESENT_PRESENT('BIOT_N','BIOT_L',), - PRESENT_PRESENT('BIOT_T','BIOT_L','BIOT_N',), - EXCLUS('PERM_IN','PERM_END','PERMIN_L',), - PRESENT_ABSENT('PERMIN_N','PERMIN_T',), - PRESENT_PRESENT('PERMIN_N','PERMIN_L',), - PRESENT_PRESENT('PERMIN_T','PERMIN_L',), - EXCLUS('LAMB_T','LAMB_TL',), - PRESENT_ABSENT('LAMB_TN','LAMB_TT',), - PRESENT_PRESENT('LAMB_TN','LAMB_TL',), - PRESENT_PRESENT('LAMB_TT','LAMB_TL',), - EXCLUS('D_LB_T','D_LB_TL',), - PRESENT_ABSENT('D_LB_TN','D_LB_TT',), - PRESENT_PRESENT('D_LB_TN','D_LB_TL',), - PRESENT_PRESENT('D_LB_TT','D_LB_TL',), - EXCLUS('LAMB_CT','LAMB_C_L',), - PRESENT_ABSENT('LAMB_C_N','LAMB_C_T',), - PRESENT_PRESENT('LAMB_C_N','LAMB_C_L',), - PRESENT_PRESENT('LAMB_C_T','LAMB_C_L',), - EXCLUS('PERMIN_L','BIOT_COEF'), - EXCLUS('PERMIN_L','LAMB_T'), - PRESENT_PRESENT('BIOT_L','PERMIN_L',), - PRESENT_PRESENT('BIOT_T','PERMIN_T',), - PRESENT_PRESENT('LAMB_TN','PERMIN_N',), - PRESENT_PRESENT('LAMB_TL','PERMIN_L',), - PRESENT_PRESENT('LAMB_TT','PERMIN_T',), - ENSEMBLE('SATU_PRES','D_SATU_PRES','PERM_LIQU','D_PERM_LIQU_SATU', - 'PERM_GAZ','D_PERM_SATU_GAZ','D_PERM_PRES_GAZ',), - ENSEMBLE('VG_N','VG_SR','VG_PR','VG_SMAX','VG_SATUR',), - UN_PARMI('VG_N','SATU_PRES'), - ), -# --------------------------------------------------------------------------------- -# ------------------- DONNEES OBLIGATOIRE ------------------------------------- -# --------------------------------------------------------------------------------- - R_GAZ = SIMP(statut='o',typ='R'), - RHO = SIMP(statut='o',typ='R'), - BIOT_COEF = SIMP(statut='f',typ='R'), - BIOT_L = SIMP(statut='f',typ='R'), - BIOT_N = SIMP(statut='f',typ='R'), - BIOT_T = SIMP(statut='f',typ='R'), - PESA_X = SIMP(statut='o',typ='R'), - PESA_Y = SIMP(statut='o',typ='R'), - PESA_Z = SIMP(statut='o',typ='R'), - SATU_PRES = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - D_SATU_PRES = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - PERM_LIQU = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - D_PERM_LIQU_SATU = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - PERM_GAZ = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - D_PERM_SATU_GAZ = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - D_PERM_PRES_GAZ = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), -# ---Van Genhuchten et Muallen----------------------------------------------------------------------------- - VG_N = SIMP(statut='f',typ='R'), - VG_SR = SIMP(statut='f',typ='R'), - VG_PR = SIMP(statut='f',typ='R'), - VG_SMAX = SIMP(statut='f',typ='R'), - VG_SATUR = SIMP(statut='f',typ='R'), -# - FICKV_T = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - FICKA_T = SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), -# --------------------------------------------------------------------------------- -# ------------------- DONNEES FACULTATIVES ------------------------------------ -# --------------------------------------------------------------------------------- - PESA_MULT = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), -# --------------------------------------------------------------------------------- -# ------------------- DONNEES NECESSAIRE SI THERMIQUE ------------------------- -# --------------------------------------------------------------------------------- - CP = SIMP(statut='f',typ='R'), - PERM_IN = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - PERMIN_L = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - PERMIN_N = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - PERMIN_T = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - PERM_END = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - LAMB_PHI = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - D_LB_PHI = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - LAMB_T = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - LAMB_TL = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - LAMB_TN = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - LAMB_TT = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - D_LB_T = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - D_LB_TL = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - D_LB_TN = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - D_LB_TT = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - LAMB_S = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - D_LB_S = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - LAMB_CT = SIMP(statut='f',typ='R'), - LAMB_C_L = SIMP(statut='f',typ='R'), - LAMB_C_N = SIMP(statut='f',typ='R'), - LAMB_C_T = SIMP(statut='f',typ='R'), -# --------------------------------------------------------------------------------- -# ------------------- DONNEES FACULTATIVES ------------------------------------ -# --------------------------------------------------------------------------------- - EMMAG = SIMP(statut='f',typ='R'), - FICKV_PV = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - FICKV_PG = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - FICKV_S = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - D_FV_T = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - D_FV_PG = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), -# - FICKA_PA = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - FICKA_PL = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - FICKA_S = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - D_FA_T = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), -# --------------------------------------------------------------------------------- -# ------------------- DONNEES CACHEES ------------------------------------------- -# --------------------------------------------------------------------------------- - ) , -# ================================================================================= -# --- MOT-CLE OBLIGATOIRE --------------------------------------------------------- -# ================================================================================= - THM_LIQU = FACT(statut='o', -# --------------------------------------------------------------------------------- -# ------------------- DONNEES OBLIGATOIRE ------------------------------------- -# --------------------------------------------------------------------------------- - RHO = SIMP(statut='o',typ='R'), - UN_SUR_K = SIMP(statut='o',typ='R'), - VISC = SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - D_VISC_TEMP = SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), -# --------------------------------------------------------------------------------- -# ------------------- DONNEES NECESSAIRE SI THERMIQUE ------------------------- -# --------------------------------------------------------------------------------- - ALPHA = SIMP(statut='f',typ='R'), - CP = SIMP(statut='f',typ='R'), -# --------------------------------------------------------------------------------- -# ------------------- DONNEES CACHEES ------------------------------------------- -# --------------------------------------------------------------------------------- - ), -# ================================================================================= -# --- MOT-CLE OBLIGATOIRE --------------------------------------------------------- -# ================================================================================= - THM_GAZ = FACT(statut='o', -# --------------------------------------------------------------------------------- -# ------------------- DONNEES OBLIGATOIRE ------------------------------------- -# --------------------------------------------------------------------------------- - MASS_MOL = SIMP(statut='o',typ='R'), - VISC = SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - D_VISC_TEMP = SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), -# --------------------------------------------------------------------------------- -# ------------------- DONNEES NECESSAIRE SI THERMIQUE ------------------------- -# --------------------------------------------------------------------------------- - CP = SIMP(statut='f',typ='R'), -# --------------------------------------------------------------------------------- -# ------------------- DONNEES CACHEES ------------------------------------------- -# --------------------------------------------------------------------------------- - ), -# ================================================================================= -# --- MOT-CLE FACULTATIF --------------------------------------------------------- -# ================================================================================= - THM_VAPE_GAZ = FACT(statut='f', -# --------------------------------------------------------------------------------- -# ------------------- DONNEES OBLIGATOIRE ------------------------------------- -# --------------------------------------------------------------------------------- - MASS_MOL = SIMP(statut='o',typ='R'), - CP = SIMP(statut='o',typ='R'), - VISC = SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - D_VISC_TEMP = SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), -# --------------------------------------------------------------------------------- -# ------------------- DONNEES CACHEES ------------------------------------------- -# --------------------------------------------------------------------------------- - ), -# ================================================================================= -# --- MOT-CLE OBLIGATOIRE --------------------------------------------------------- -# ================================================================================= - THM_AIR_DISS = FACT(statut='o', -# --------------------------------------------------------------------------------- -# ------------------- DONNEES OBLIGATOIRE ------------------------------------- -# --------------------------------------------------------------------------------- - CP = SIMP(statut='o',typ='R'), - COEF_HENRY = SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - ), - ), - -# ================================================================================= -# --- LOI DE COUPLAGE DE TYPE LIQU_VAPE_GAZ --------------------------------------- -# ================================================================================= -# --- PRESENCE OBLIGATOIRE DES MOT-CLES SUIVANT : --------------------------------- -# --- THM_INIT, THM_DIFFU, THM_LIQU, THM_GAZ, THM_VAPE_GAZ ------------------------ -# ================================================================================= - b_liquvapegaz = BLOC(condition = "COMP_THM == 'LIQU_VAPE_GAZ' ", - fr="Paramètres nécessaires pour une loi de couplage de type LIQU_VAPE_GAZ", -# ================================================================================= -# --- MOT-CLE OBLIGATOIRE --------------------------------------------------------- -# ================================================================================= - THM_INIT = FACT(statut='o', -# --------------------------------------------------------------------------------- -# ------------------- DONNEES OBLIGATOIRE ------------------------------------- -# --------------------------------------------------------------------------------- - PRE1 = SIMP(statut='o',typ='R'), - PRE2 = SIMP(statut='o',typ='R'), - PORO = SIMP(statut='o',typ='R'), - PRES_VAPE = SIMP(statut='o',typ='R'), -# --------------------------------------------------------------------------------- -# ------------------- DONNEES NECESSAIRE SI THERMIQUE ------------------------- -# --------------------------------------------------------------------------------- - TEMP = SIMP(statut='f',typ='R'), -# --------------------------------------------------------------------------------- -# ------------------- DONNEES INUTILES ---------------------------------------- -# --------------------------------------------------------------------------------- - DEGR_SATU = SIMP(statut='f',typ='R'), -# --------------------------------------------------------------------------------- -# ------------------- DONNEE CACHEE --------------------------------------------- -# --------------------------------------------------------------------------------- - COMP_THM = SIMP(statut='c',typ='R',defaut= 4.0,), - ), -# ================================================================================= -# --- MOT-CLE OBLIGATOIRE --------------------------------------------------------- -# ================================================================================= - THM_DIFFU = FACT(statut='o', -# --------------------------------------------------------------------------------- -# ------------------- DONNEES OBLIGATOIRE ------------------------------------- -# --------------------------------------------------------------------------------- - R_GAZ = SIMP(statut='o',typ='R'), - RHO = SIMP(statut='o',typ='R'), - BIOT_COEF = SIMP(statut='f',typ='R'), - BIOT_L = SIMP(statut='f',typ='R'), - BIOT_N = SIMP(statut='f',typ='R'), - BIOT_T = SIMP(statut='f',typ='R'), - PESA_X = SIMP(statut='o',typ='R'), - PESA_Y = SIMP(statut='o',typ='R'), - PESA_Z = SIMP(statut='o',typ='R'), - SATU_PRES = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - D_SATU_PRES = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - PERM_LIQU = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - D_PERM_LIQU_SATU = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - PERM_GAZ = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - D_PERM_SATU_GAZ = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - D_PERM_PRES_GAZ = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), -# ---Van Genhuchten et Muallen----------------------------------------------------------------------------- - - VG_N = SIMP(statut='f',typ='R'), - VG_SR = SIMP(statut='f',typ='R'), - VG_PR = SIMP(statut='f',typ='R'), - VG_SMAX = SIMP(statut='f',typ='R'), - VG_SATUR = SIMP(statut='f',typ='R'), -# - FICKV_T = SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), -# --------------------------------------------------------------------------------- -# ------------------- DONNEES FACULTATIVES ------------------------------------ -# --------------------------------------------------------------------------------- - PESA_MULT = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), -# --------------------------------------------------------------------------------- -# ------------------- DONNEES NECESSAIRE SI THERMIQUE ------------------------- -# --------------------------------------------------------------------------------- - CP = SIMP(statut='f',typ='R'), - PERM_IN = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - PERMIN_L = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - PERMIN_N = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - PERMIN_T = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - PERM_END = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - LAMB_PHI = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - D_LB_PHI = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - LAMB_T = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - LAMB_TL = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - LAMB_TN = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - LAMB_TT = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - D_LB_T = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - D_LB_TL = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - D_LB_TN = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - D_LB_TT = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - LAMB_S = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - D_LB_S = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - LAMB_CT = SIMP(statut='f',typ='R'), - LAMB_C_L = SIMP(statut='f',typ='R'), - LAMB_C_N = SIMP(statut='f',typ='R'), - LAMB_C_T = SIMP(statut='f',typ='R'), -# - regles = (EXCLUS('BIOT_COEF','BIOT_N',), - PRESENT_PRESENT('BIOT_N','BIOT_L',), - PRESENT_PRESENT('BIOT_T','BIOT_L','BIOT_N',), - EXCLUS('PERM_IN','PERM_END','PERMIN_L',), - PRESENT_ABSENT('PERMIN_N','PERMIN_T',), - PRESENT_PRESENT('PERMIN_N','PERMIN_L',), - PRESENT_PRESENT('PERMIN_T','PERMIN_L',), - EXCLUS('LAMB_T','LAMB_TL',), - PRESENT_ABSENT('LAMB_TN','LAMB_TT',), - PRESENT_PRESENT('LAMB_TN','LAMB_TL',), - PRESENT_PRESENT('LAMB_TT','LAMB_TL',), - EXCLUS('D_LB_T','D_LB_TL',), - PRESENT_ABSENT('D_LB_TN','D_LB_TT',), - PRESENT_PRESENT('D_LB_TN','D_LB_TL',), - PRESENT_PRESENT('D_LB_TT','D_LB_TL',), - EXCLUS('LAMB_CT','LAMB_C_L',), - PRESENT_ABSENT('LAMB_C_N','LAMB_C_T',), - PRESENT_PRESENT('LAMB_C_N','LAMB_C_L',), - PRESENT_PRESENT('LAMB_C_T','LAMB_C_L',), - EXCLUS('PERMIN_L','BIOT_COEF'), - EXCLUS('PERMIN_L','LAMB_T'), - PRESENT_PRESENT('BIOT_L','PERMIN_L',), - PRESENT_PRESENT('BIOT_T','PERMIN_T',), - PRESENT_PRESENT('LAMB_TN','PERMIN_N',), - PRESENT_PRESENT('LAMB_TL','PERMIN_L',), - PRESENT_PRESENT('LAMB_TT','PERMIN_T',), - - ENSEMBLE('SATU_PRES','D_SATU_PRES','PERM_LIQU','D_PERM_LIQU_SATU', - 'PERM_GAZ','D_PERM_SATU_GAZ','D_PERM_PRES_GAZ',), - ENSEMBLE('VG_N','VG_SR','VG_PR','VG_SMAX','VG_SATUR',), - UN_PARMI('VG_N','SATU_PRES'), - ), -# --------------------------------------------------------------------------------- -# ------------------- DONNEES FACULTATIVE ---------------------------------- -# --------------------------------------------------------------------------------- - EMMAG = SIMP(statut='f',typ='R'), - FICKV_PV = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - FICKV_PG = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - FICKV_S = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - D_FV_T = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - D_FV_PG = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), -# --------------------------------------------------------------------------------- -# ------------------- DONNEES INUTILES ---------------------------------------- -# --------------------------------------------------------------------------------- - FICKA_T = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - FICKA_PA = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - FICKA_PL = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - FICKA_S = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - D_FA_T = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - ) , -# ================================================================================= -# --- MOT-CLE OBLIGATOIRE --------------------------------------------------------- -# ================================================================================= - THM_LIQU = FACT(statut='o', -# --------------------------------------------------------------------------------- -# ------------------- DONNEES OBLIGATOIRE ------------------------------------- -# --------------------------------------------------------------------------------- - RHO = SIMP(statut='o',typ='R'), - UN_SUR_K = SIMP(statut='o',typ='R'), - VISC = SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - D_VISC_TEMP = SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), -# --------------------------------------------------------------------------------- -# ------------------- DONNEES NECESSAIRE SI THERMIQUE ------------------------- -# --------------------------------------------------------------------------------- - ALPHA = SIMP(statut='f',typ='R'), - CP = SIMP(statut='f',typ='R'), - ), -# ================================================================================= -# --- MOT-CLE OBLIGATOIRE --------------------------------------------------------- -# ================================================================================= - THM_GAZ = FACT(statut='o', -# --------------------------------------------------------------------------------- -# ------------------- DONNEES OBLIGATOIRE ------------------------------------- -# --------------------------------------------------------------------------------- - MASS_MOL = SIMP(statut='o',typ='R'), - VISC = SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - D_VISC_TEMP = SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), -# --------------------------------------------------------------------------------- -# ------------------- DONNEES NECESSAIRE SI THERMIQUE ------------------------- -# --------------------------------------------------------------------------------- - CP = SIMP(statut='f',typ='R'), - ), -# ================================================================================= -# --- MOT-CLE OBLIGATOIRE --------------------------------------------------------- -# ================================================================================= - THM_VAPE_GAZ = FACT(statut='o', -# --------------------------------------------------------------------------------- -# ------------------- DONNEES OBLIGATOIRE ------------------------------------- -# --------------------------------------------------------------------------------- - MASS_MOL = SIMP(statut='o',typ='R'), - CP = SIMP(statut='o',typ='R'), - VISC = SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - D_VISC_TEMP = SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - ), - ), -# ================================================================================= -# --- LOI DE COUPLAGE DE TYPE LIQU_AD_GAZ_VAPE ------------------------------------- -# ================================================================================= -# --- PRESENCE OBLIGATOIRE DES MOT-CLES SUIVANT : --------------------------------- -# --- THM_INIT, THM_DIFFU, THM_LIQU, THM_GAZ, THM_VAPE_GAZ THM_AIR_DISSOUS--------- -# ================================================================================= - b_liquadvape = BLOC(condition = "COMP_THM == 'LIQU_AD_GAZ_VAPE' ", - fr="Paramètres nécessaires pour une loi de couplage de type LIQU_AD_GAZ_VAPE", -# ================================================================================= -# --- MOT-CLE OBLIGATOIRE --------------------------------------------------------- -# ================================================================================= - THM_INIT = FACT(statut='o', -# --------------------------------------------------------------------------------- -# ------------------- DONNEES OBLIGATOIRE ------------------------------------- -# --------------------------------------------------------------------------------- - PRE1 = SIMP(statut='o',typ='R'), - PRE2 = SIMP(statut='o',typ='R'), - PORO = SIMP(statut='o',typ='R'), - PRES_VAPE = SIMP(statut='o',typ='R'), -# --------------------------------------------------------------------------------- -# ------------------- DONNEES NECESSAIRE SI THERMIQUE ------------------------- -# --------------------------------------------------------------------------------- - TEMP = SIMP(statut='f',typ='R'), -# --------------------------------------------------------------------------------- -# ------------------- DONNEES INUTILES ---------------------------------------- -# --------------------------------------------------------------------------------- - DEGR_SATU = SIMP(statut='f',typ='R'), -# --------------------------------------------------------------------------------- -# ------------------- DONNEE CACHEE --------------------------------------------- -# --------------------------------------------------------------------------------- - COMP_THM = SIMP(statut='c',typ='R',defaut= 9.0,), - ), -# ================================================================================= -# --- MOT-CLE OBLIGATOIRE --------------------------------------------------------- -# ================================================================================= - THM_DIFFU = FACT(statut='o', -# --------------------------------------------------------------------------------- -# ------------------- DONNEES OBLIGATOIRE ------------------------------------- -# --------------------------------------------------------------------------------- - R_GAZ = SIMP(statut='o',typ='R'), - RHO = SIMP(statut='o',typ='R'), - BIOT_COEF = SIMP(statut='f',typ='R'), - BIOT_L = SIMP(statut='f',typ='R'), - BIOT_N = SIMP(statut='f',typ='R'), - BIOT_T = SIMP(statut='f',typ='R'), - PESA_X = SIMP(statut='o',typ='R'), - PESA_Y = SIMP(statut='o',typ='R'), - PESA_Z = SIMP(statut='o',typ='R'), - SATU_PRES = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - D_SATU_PRES = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - PERM_LIQU = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - D_PERM_LIQU_SATU = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - PERM_GAZ = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - D_PERM_SATU_GAZ = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - D_PERM_PRES_GAZ = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), -# ---Van Genhuchten et Muallen----------------------------------------------------------------------------- - VG_N = SIMP(statut='f',typ='R'), - VG_SR = SIMP(statut='f',typ='R'), - VG_PR = SIMP(statut='f',typ='R'), - VG_SMAX = SIMP(statut='f',typ='R'), - VG_SATUR = SIMP(statut='f',typ='R'), -# - FICKV_T = SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - FICKA_T = SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), -# --------------------------------------------------------------------------------- -# ------------------- DONNEES FACULTATIVES ------------------------------------ -# --------------------------------------------------------------------------------- - PESA_MULT = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), -# --------------------------------------------------------------------------------- -# ------------------- DONNEES NECESSAIRE SI THERMIQUE ------------------------- -# --------------------------------------------------------------------------------- - CP = SIMP(statut='f',typ='R'), - PERM_IN = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - PERMIN_L = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - PERMIN_N = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - PERMIN_T = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - PERM_END = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - LAMB_PHI = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - D_LB_PHI = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - LAMB_T = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - LAMB_TL = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - LAMB_TN = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - LAMB_TT = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - D_LB_T = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - D_LB_TL = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - D_LB_TN = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - D_LB_TT = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - LAMB_S = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - D_LB_S = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - LAMB_CT = SIMP(statut='f',typ='R'), - LAMB_C_L = SIMP(statut='f',typ='R'), - LAMB_C_N = SIMP(statut='f',typ='R'), - LAMB_C_T = SIMP(statut='f',typ='R'), -# - regles = (EXCLUS('BIOT_COEF','BIOT_N',), - PRESENT_PRESENT('BIOT_N','BIOT_L',), - PRESENT_PRESENT('BIOT_T','BIOT_L','BIOT_N',), - EXCLUS('PERM_IN','PERM_END','PERMIN_L',), - PRESENT_ABSENT('PERMIN_N','PERMIN_T',), - PRESENT_PRESENT('PERMIN_N','PERMIN_L',), - PRESENT_PRESENT('PERMIN_T','PERMIN_L',), - EXCLUS('LAMB_T','LAMB_TL',), - PRESENT_PRESENT('LAMB_TT','PERMIN_T',), - PRESENT_ABSENT('LAMB_TN','LAMB_TT',), - PRESENT_PRESENT('LAMB_TN','LAMB_TL',), - PRESENT_PRESENT('LAMB_TT','LAMB_TL',), - EXCLUS('D_LB_T','D_LB_TL',), - PRESENT_ABSENT('D_LB_TN','D_LB_TT',), - PRESENT_PRESENT('D_LB_TN','D_LB_TL',), - PRESENT_PRESENT('D_LB_TT','D_LB_TL',), - EXCLUS('LAMB_CT','LAMB_C_L',), - PRESENT_ABSENT('LAMB_C_N','LAMB_C_T',), - PRESENT_PRESENT('LAMB_C_N','LAMB_C_L',), - PRESENT_PRESENT('LAMB_C_T','LAMB_C_L',), - EXCLUS('PERMIN_L','BIOT_COEF'), - EXCLUS('PERMIN_L','LAMB_T'), - PRESENT_PRESENT('BIOT_L','PERMIN_L',), - PRESENT_PRESENT('BIOT_T','PERMIN_T',), - PRESENT_PRESENT('LAMB_TN','PERMIN_N',), - PRESENT_PRESENT('LAMB_TL','PERMIN_L',), - PRESENT_PRESENT('LAMB_TT','PERMIN_T',), - ENSEMBLE('SATU_PRES','D_SATU_PRES','PERM_LIQU','D_PERM_LIQU_SATU', - 'PERM_GAZ','D_PERM_SATU_GAZ','D_PERM_PRES_GAZ',), - ENSEMBLE('VG_N','VG_SR','VG_PR','VG_SMAX','VG_SATUR',), - UN_PARMI('VG_N','SATU_PRES'), - ), -# --------------------------------------------------------------------------------- -# ------------------- DONNEES FACULTATIVES ------------------------------------ -# --------------------------------------------------------------------------------- - EMMAG = SIMP(statut='f',typ='R'), - FICKV_PV = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - FICKV_PG = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - FICKV_S = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - D_FV_T = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - D_FV_PG = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), -# - FICKA_PA = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - FICKA_PL = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - FICKA_S = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - D_FA_T = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - ) , -# ================================================================================= -# --- MOT-CLE OBLIGATOIRE --------------------------------------------------------- -# ================================================================================= - THM_LIQU = FACT(statut='o', -# --------------------------------------------------------------------------------- -# ------------------- DONNEES OBLIGATOIRE ------------------------------------- -# --------------------------------------------------------------------------------- - RHO = SIMP(statut='o',typ='R'), - UN_SUR_K = SIMP(statut='o',typ='R'), - VISC = SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - D_VISC_TEMP = SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), -# --------------------------------------------------------------------------------- -# ------------------- DONNEES NECESSAIRE SI THERMIQUE ------------------------- -# --------------------------------------------------------------------------------- - ALPHA = SIMP(statut='f',typ='R'), - CP = SIMP(statut='f',typ='R'), - ), -# ================================================================================= -# --- MOT-CLE OBLIGATOIRE --------------------------------------------------------- -# ================================================================================= - THM_GAZ = FACT(statut='o', -# --------------------------------------------------------------------------------- -# ------------------- DONNEES OBLIGATOIRE ------------------------------------- -# --------------------------------------------------------------------------------- - MASS_MOL = SIMP(statut='o',typ='R'), - VISC = SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - D_VISC_TEMP = SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), -# --------------------------------------------------------------------------------- -# ------------------- DONNEES NECESSAIRE SI THERMIQUE ------------------------- -# --------------------------------------------------------------------------------- - CP = SIMP(statut='f',typ='R'), - ), -# ================================================================================= -# --- MOT-CLE OBLIGATOIRE --------------------------------------------------------- -# ================================================================================= - THM_VAPE_GAZ = FACT(statut='o', -# --------------------------------------------------------------------------------- -# ------------------- DONNEES OBLIGATOIRE ------------------------------------- -# --------------------------------------------------------------------------------- - MASS_MOL = SIMP(statut='o',typ='R'), - CP = SIMP(statut='o',typ='R'), - VISC = SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - D_VISC_TEMP = SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - ), -# ================================================================================= -# --- MOT-CLE OBLIGATOIRE --------------------------------------------------------- -# ================================================================================= - THM_AIR_DISS = FACT(statut='o', -# --------------------------------------------------------------------------------- -# ------------------- DONNEES OBLIGATOIRE ------------------------------------- -# --------------------------------------------------------------------------------- - CP = SIMP(statut='o',typ='R'), - COEF_HENRY = SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - ), - ), -# ================================================================================= -# --- LOI DE COUPLAGE DE TYPE LIQU_VAPE ------------------------------------------- -# ================================================================================= -# --- PRESENCE OBLIGATOIRE DES MOT-CLES SUIVANT : --------------------------------- -# --- THM_INIT, THM_DIFFU, THM_LIQU, THM_VAPE_GAZ --------------------------------- -# ================================================================================= - b_liquvape = BLOC(condition = "COMP_THM == 'LIQU_VAPE' ", - fr="Paramètres nécessaires pour une loi de couplage de type LIQU_VAPE", -# ================================================================================= -# --- MOT-CLE OBLIGATOIRE --------------------------------------------------------- -# ================================================================================= - THM_INIT = FACT(statut='o', -# --------------------------------------------------------------------------------- -# ------------------- DONNEES OBLIGATOIRE ------------------------------------- -# --------------------------------------------------------------------------------- - PRE1 = SIMP(statut='o',typ='R'), - PORO = SIMP(statut='o',typ='R'), - PRES_VAPE = SIMP(statut='o',typ='R'), -# --------------------------------------------------------------------------------- -# ------------------- DONNEES NECESSAIRE SI THERMIQUE ------------------------- -# --------------------------------------------------------------------------------- - TEMP = SIMP(statut='f',typ='R'), -# --------------------------------------------------------------------------------- -# ------------------- DONNEES INUTILES ---------------------------------------- -# --------------------------------------------------------------------------------- - PRE2 = SIMP(statut='f',typ='R'), - DEGR_SATU = SIMP(statut='f',typ='R'), -# --------------------------------------------------------------------------------- -# ------------------- DONNEE CACHEE --------------------------------------------- -# --------------------------------------------------------------------------------- - COMP_THM = SIMP(statut='c',typ='R',defaut= 3.0,), - ), -# ================================================================================= -# --- MOT-CLE OBLIGATOIRE --------------------------------------------------------- -# ================================================================================= - THM_DIFFU = FACT(statut='o', -# --------------------------------------------------------------------------------- -# ------------------- DONNEES OBLIGATOIRE ------------------------------------- -# --------------------------------------------------------------------------------- - R_GAZ = SIMP(statut='o',typ='R'), - RHO = SIMP(statut='o',typ='R'), - BIOT_COEF = SIMP(statut='f',typ='R'), - BIOT_L = SIMP(statut='f',typ='R'), - BIOT_N = SIMP(statut='f',typ='R'), - BIOT_T = SIMP(statut='f',typ='R'), - PESA_X = SIMP(statut='o',typ='R'), - PESA_Y = SIMP(statut='o',typ='R'), - PESA_Z = SIMP(statut='o',typ='R'), - SATU_PRES = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - D_SATU_PRES = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - PERM_LIQU = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - D_PERM_LIQU_SATU = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - PERM_GAZ = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - D_PERM_SATU_GAZ = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - D_PERM_PRES_GAZ = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), -# ---Van Genhuchten et Muallen----------------------------------------------------------------------------- - - VG_N = SIMP(statut='f',typ='R'), - VG_SR = SIMP(statut='f',typ='R'), - VG_PR = SIMP(statut='f',typ='R'), - VG_SMAX = SIMP(statut='f',typ='R'), - VG_SATUR = SIMP(statut='f',typ='R'), -# --------------------------------------------------------------------------------- -# ------------------- DONNEES FACULTATIVES ------------------------------------ -# --------------------------------------------------------------------------------- - PESA_MULT = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), -# --------------------------------------------------------------------------------- -# ------------------- DONNEES NECESSAIRE SI THERMIQUE ------------------------- -# --------------------------------------------------------------------------------- - CP = SIMP(statut='f',typ='R'), - PERM_IN = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - PERMIN_L = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - PERMIN_N = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - PERMIN_T = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - PERM_END = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - LAMB_PHI = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - D_LB_PHI = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - LAMB_T = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - LAMB_TL = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - LAMB_TN = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - LAMB_TT = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - D_LB_T = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - D_LB_TL = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - D_LB_TN = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - D_LB_TT = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - LAMB_S = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - D_LB_S = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - LAMB_CT = SIMP(statut='f',typ='R'), - LAMB_C_L = SIMP(statut='f',typ='R'), - LAMB_C_N = SIMP(statut='f',typ='R'), - LAMB_C_T = SIMP(statut='f',typ='R'), -# - regles = (EXCLUS('BIOT_COEF','BIOT_N',), - PRESENT_PRESENT('BIOT_N','BIOT_L',), - PRESENT_PRESENT('BIOT_T','BIOT_L','BIOT_N',), - EXCLUS('PERM_IN','PERM_END','PERMIN_L',), - PRESENT_ABSENT('PERMIN_N','PERMIN_T',), - PRESENT_PRESENT('PERMIN_N','PERMIN_L',), - PRESENT_PRESENT('PERMIN_T','PERMIN_L',), - EXCLUS('LAMB_T','LAMB_TL',), - PRESENT_ABSENT('LAMB_TN','LAMB_TT',), - PRESENT_PRESENT('LAMB_TN','LAMB_TL',), - PRESENT_PRESENT('LAMB_TT','LAMB_TL',), - EXCLUS('D_LB_T','D_LB_TL',), - PRESENT_ABSENT('D_LB_TN','D_LB_TT',), - PRESENT_PRESENT('D_LB_TN','D_LB_TL',), - PRESENT_PRESENT('D_LB_TT','D_LB_TL',), - EXCLUS('LAMB_CT','LAMB_C_L',), - PRESENT_ABSENT('LAMB_C_N','LAMB_C_T',), - PRESENT_PRESENT('LAMB_C_N','LAMB_C_L',), - PRESENT_PRESENT('LAMB_C_T','LAMB_C_L',), - EXCLUS('PERMIN_L','BIOT_COEF'), - EXCLUS('PERMIN_L','LAMB_T'), - PRESENT_PRESENT('BIOT_L','PERMIN_L',), - PRESENT_PRESENT('BIOT_T','PERMIN_T',), - PRESENT_PRESENT('LAMB_TN','PERMIN_N',), - PRESENT_PRESENT('LAMB_TL','PERMIN_L',), - PRESENT_PRESENT('LAMB_TT','PERMIN_T',), - - ENSEMBLE('SATU_PRES','D_SATU_PRES','PERM_LIQU','D_PERM_LIQU_SATU', - 'PERM_GAZ','D_PERM_SATU_GAZ','D_PERM_PRES_GAZ',), - ENSEMBLE('VG_N','VG_SR','VG_PR','VG_SMAX','VG_SATUR',), - UN_PARMI('VG_N','SATU_PRES'), - ), -# --------------------------------------------------------------------------------- -# ------------------- DONNEES INUTILES ---------------------------------------- -# --------------------------------------------------------------------------------- - EMMAG = SIMP(statut='f',typ='R'), - FICKV_T = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - FICKV_PV = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - FICKV_PG = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - FICKV_S = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - D_FV_T = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - D_FV_PG = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - FICKA_T = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - FICKA_PA = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - FICKA_PL = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - FICKA_S = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - D_FA_T = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - ) , -# ================================================================================= -# --- MOT-CLE OBLIGATOIRE --------------------------------------------------------- -# ================================================================================= - THM_LIQU = FACT(statut='o', -# --------------------------------------------------------------------------------- -# ------------------- DONNEES OBLIGATOIRE ------------------------------------- -# --------------------------------------------------------------------------------- - RHO = SIMP(statut='o',typ='R'), - UN_SUR_K = SIMP(statut='o',typ='R'), - VISC = SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - D_VISC_TEMP = SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), -# --------------------------------------------------------------------------------- -# ------------------- DONNEES NECESSAIRE SI THERMIQUE ------------------------- -# --------------------------------------------------------------------------------- - ALPHA = SIMP(statut='f',typ='R'), - CP = SIMP(statut='f',typ='R'), - ), -# ================================================================================= -# --- MOT-CLE OBLIGATOIRE --------------------------------------------------------- -# ================================================================================= - THM_VAPE_GAZ = FACT(statut='o', -# --------------------------------------------------------------------------------- -# ------------------- DONNEES OBLIGATOIRE ------------------------------------- -# --------------------------------------------------------------------------------- - MASS_MOL = SIMP(statut='o',typ='R'), - CP = SIMP(statut='o',typ='R'), - VISC = SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - D_VISC_TEMP = SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - ), -# ================================================================================= -# --- MOT-CLE INUTILE ------------------------------------------------------------- -# ================================================================================= - THM_GAZ =FACT(statut='f', - MASS_MOL =SIMP(statut='f',typ='R'), - CP =SIMP(statut='f',typ='R'), - VISC =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - D_VISC_TEMP =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - ), - ), -# courbes et coefficients associés à la fatigue et au dommage -# - FATIGUE =FACT(statut='f', - regles=(PRESENT_ABSENT('WOHLER','A_BASQUIN','BETA_BASQUIN'), - PRESENT_ABSENT('WOHLER','A0','A1','A2','A3','SL'), - PRESENT_ABSENT('A_BASQUIN','A0','A1','A2','A3','SL'), - ENSEMBLE('A_BASQUIN','BETA_BASQUIN'), - ENSEMBLE('A0','A1','A2','A3','SL'), - PRESENT_PRESENT('A0','E_REFE'), - ENSEMBLE('D0','TAU0'),), - WOHLER =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - A_BASQUIN =SIMP(statut='f',typ='R'), - BETA_BASQUIN =SIMP(statut='f',typ='R'), - A0 =SIMP(statut='f',typ='R'), - A1 =SIMP(statut='f',typ='R'), - A2 =SIMP(statut='f',typ='R'), - A3 =SIMP(statut='f',typ='R'), - SL =SIMP(statut='f',typ='R'), - MANSON_COFFIN =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - E_REFE =SIMP(statut='f',typ='R'), - D0 =SIMP(statut='f',typ='R'), - TAU0 =SIMP(statut='f',typ='R'), - ), - DOMMA_LEMAITRE =FACT(statut='f', - S =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - EPSP_SEUIL =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - EXP_S =SIMP(statut='f',typ='R',val_min=0.0E0,defaut=1.0), - ), - CISA_PLAN_CRIT =FACT(statut='f', - CRITERE =SIMP(statut='o',typ='TXM',into=("MATAKE_MODI_AC", - "DANG_VAN_MODI_AC", - "DANG_VAN_MODI_AV", - "MATAKE_MODI_AV", - "FATESOCI_MODI_AV", - ) ), - - b_critere_matake =BLOC(condition="CRITERE=='MATAKE_MODI_AC' or CRITERE=='MATAKE_MODI_AV'", - fr="Cisaillement plan critique critère de matake pour les cas amplitude constante et amplitude variable", - MATAKE_A =SIMP(statut='o',typ='R'), - MATAKE_B =SIMP(statut='o',typ='R'), - COEF_FLEX_TORS =SIMP(statut='o',typ='R',val_min=1.0E0,val_max=1.7321E0), - ), - - b_critere_dang_van =BLOC(condition="(CRITERE=='DANG_VAN_MODI_AC' or CRITERE=='DANG_VAN_MODI_AV')", - fr="Critère de Dang Van modifié pour les cas amplitude constante et amplitude variable", - D_VAN_A =SIMP(statut='o',typ='R'), - D_VAN_B =SIMP(statut='o',typ='R'), - COEF_CISA_TRAC =SIMP(statut='o',typ='R',val_min=1.0E0,val_max=1.7321E0), - ), - - b_critere_fate_soci =BLOC(condition="CRITERE=='FATESOCI_MODI_AV'", - fr="Critère de Fatemi et Socie, en élasticité ou élastoplasticité, pour le cas amplitude variable", - FATSOC_A =SIMP(statut='o',typ='R'), - COEF_CISA_TRAC =SIMP(statut='o',typ='R',val_min=1.0E0,val_max=1.7321E0), - ), - ), - - - THM_RUPT =FACT(statut='f', - OUV_FICT =SIMP(statut='o',typ='R'), - UN_SUR_N =SIMP(statut='f',typ='R',defaut= 0.), - ), -# -# autres comportements ... -# - WEIBULL =FACT(statut='f', - M =SIMP(statut='o',typ='R'), - VOLU_REFE =SIMP(statut='o',typ='R'), - SIGM_REFE =SIMP(statut='o',typ='R'), - SEUIL_EPSP_CUMU =SIMP(statut='f',typ='R',defaut= 1.0E-6), - ), - WEIBULL_FO =FACT(statut='f', - M =SIMP(statut='o',typ='R'), - VOLU_REFE =SIMP(statut='o',typ='R'), - SIGM_CNV =SIMP(statut='o',typ='R'), - SIGM_REFE =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - SEUIL_EPSP_CUMU =SIMP(statut='f',typ='R',defaut= 1.0E-6), - ), - NON_LOCAL =FACT(statut='f', - regles=(AU_MOINS_UN('LONG_CARA','C_GONF','C_GRAD_VARI','PENA_LAGR',),), - LONG_CARA =SIMP(statut='f',typ='R'), - C_GRAD_VARI =SIMP(statut='f',typ='R'), - PENA_LAGR =SIMP(statut='f',typ='R',defaut= 1.0E3), - C_GONF =SIMP(statut='f',typ='R'), - COEF_RIGI_MINI =SIMP(statut='f',typ='R'), - ), - RUPT_FRAG =FACT(statut='f', - GC =SIMP(statut='o',typ='R'), - SIGM_C =SIMP(statut='f',typ='R'), - PENA_ADHERENCE =SIMP(statut='f',typ='R',val_min=1.E-12,val_max=1.E+0), - PENA_CONTACT =SIMP(statut='f',typ='R',defaut=1.), - PENA_LAGR =SIMP(statut='f',typ='R',defaut=1.0E2,val_min=1.01E+0), - RIGI_GLIS =SIMP(statut='f',typ='R',defaut=1.0E1), - CINEMATIQUE =SIMP(statut='f',typ='TXM',defaut="UNILATER",into=("UNILATER","GLIS_1D","GLIS_2D")), - ), - RUPT_FRAG_FO =FACT(statut='f', - GC =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - SIGM_C =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - PENA_ADHERENCE =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - PENA_CONTACT =SIMP(statut='f',typ='R',defaut=1.), - CINEMATIQUE =SIMP(statut='f',typ='TXM',defaut="UNILATER",into=("UNILATER","GLIS_1D","GLIS_2D")), - ), - CZM_LAB_MIX =FACT(statut='f', - SIGM_C =SIMP(statut='o',typ='R', val_min=1.E-100), - GLIS_C =SIMP(statut='o',typ='R', val_min=1.E-100), - ALPHA =SIMP(statut='f',typ='R', defaut=0.5, val_min=1.E-3), - BETA =SIMP(statut='f',typ='R', defaut=1., val_min=0.), - PENA_LAGR =SIMP(statut='f',typ='R', defaut=100.,val_min=1.01E+0), - CINEMATIQUE =SIMP(statut='f',typ='TXM',defaut="GLIS_1D",into=("UNILATER","GLIS_1D","GLIS_2D")), - ), - RUPT_DUCT =FACT(statut='f', - GC =SIMP(statut='o',typ='R'), - SIGM_C =SIMP(statut='o',typ='R'), - COEF_EXTR =SIMP(statut='o',typ='R',val_min=0.E+0,val_max=9.99E-1), - COEF_PLAS =SIMP(statut='o',typ='R',val_min=0.E+0,val_max=9.99E-1), - PENA_LAGR =SIMP(statut='f',typ='R',defaut=1.0E2,val_min=1.01E+0), - RIGI_GLIS =SIMP(statut='f',typ='R',defaut=1.0E1), - ), - JOINT_MECA_RUPT =FACT(statut='f', - regles=(EXCLUS('PRES_FLUIDE','PRES_CLAVAGE'), - EXCLUS('PRES_FLUIDE','SCIAGE'), - PRESENT_PRESENT('RHO_FLUIDE','VISC_FLUIDE','OUV_MIN'), - PRESENT_ABSENT('PRES_FLUIDE','RHO_FLUIDE','VISC_FLUIDE','OUV_MIN'), - PRESENT_ABSENT('PRES_CLAVAGE','RHO_FLUIDE','VISC_FLUIDE','OUV_MIN'), - PRESENT_ABSENT('SCIAGE','RHO_FLUIDE','VISC_FLUIDE','OUV_MIN'), - PRESENT_ABSENT('RHO_FLUIDE','PRES_FLUIDE','PRES_CLAVAGE','SCIAGE'), - PRESENT_ABSENT('VISC_FLUIDE','PRES_FLUIDE','PRES_CLAVAGE','SCIAGE'), - PRESENT_ABSENT('OUV_MIN','PRES_FLUIDE','PRES_CLAVAGE','SCIAGE'), - ), - K_N =SIMP(statut='o',typ='R',val_min=1.E-12), - K_T =SIMP(statut='f',typ='R',val_min=1.E-12), - SIGM_MAX =SIMP(statut='o',typ='R',val_min=0.), - ALPHA =SIMP(statut='f',typ='R',defaut=1., val_min=0., val_max=2.), - PENA_RUPTURE =SIMP(statut='f',typ='R',val_min=1.E-12,val_max=10.E+0), - PENA_CONTACT =SIMP(statut='f',typ='R',defaut=1.,val_min=1.E-12), - PRES_FLUIDE =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - PRES_CLAVAGE =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - SCIAGE =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - RHO_FLUIDE =SIMP(statut='f',typ='R',val_min=0.), - VISC_FLUIDE =SIMP(statut='f',typ='R',val_min=1.E-20), - OUV_MIN =SIMP(statut='f',typ='R',val_min=1.E-15), - ), - JOINT_MECA_FROT =FACT(statut='f', - regles=( - EXCLUS('PRES_FLUIDE','SCIAGE'), - PRESENT_PRESENT('RHO_FLUIDE','VISC_FLUIDE','OUV_MIN'), - PRESENT_ABSENT('PRES_FLUIDE','RHO_FLUIDE','VISC_FLUIDE','OUV_MIN'), - PRESENT_ABSENT('SCIAGE','RHO_FLUIDE','VISC_FLUIDE','OUV_MIN'), - PRESENT_ABSENT('RHO_FLUIDE','PRES_FLUIDE'), - PRESENT_ABSENT('VISC_FLUIDE','PRES_FLUIDE'), - PRESENT_ABSENT('OUV_MIN','PRES_FLUIDE'), - ), - K_N =SIMP(statut='o',typ='R',val_min=1.E-12), - K_T =SIMP(statut='f',typ='R',val_min=1.E-12), - MU =SIMP(statut='o',typ='R',val_min=1.E-3), - PENA_TANG =SIMP(statut='f',typ='R',val_min=0.), - ADHESION =SIMP(statut='f',typ='R',defaut=0., val_min=0.), - PRES_FLUIDE =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - SCIAGE =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - RHO_FLUIDE =SIMP(statut='f',typ='R',val_min=0.), - VISC_FLUIDE =SIMP(statut='f',typ='R',val_min=1.E-20), - OUV_MIN =SIMP(statut='f',typ='R',val_min=1.E-15), - ), - RCCM =FACT(statut='f', - regles=(ENSEMBLE('A_AMORC','B_AMORC','D_AMORC','R_AMORC'),), - SY_02 =SIMP(statut='f',typ='R'), - SM =SIMP(statut='f',typ='R'), - SU =SIMP(statut='f',typ='R'), - SC =SIMP(statut='f',typ='R'), - SH =SIMP(statut='f',typ='R'), - N_KE =SIMP(statut='f',typ='R'), - M_KE =SIMP(statut='f',typ='R'), - A_AMORC =SIMP(statut='f',typ='R'), - B_AMORC =SIMP(statut='f',typ='R'), - D_AMORC =SIMP(statut='f',typ='R'), - R_AMORC =SIMP(statut='f',typ='R'), - ), - RCCM_FO =FACT(statut='f', - regles=(ENSEMBLE('A_AMORC','B_AMORC','D_AMORC','R_AMORC'),), - SY_02 =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - SM =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - SU =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - S =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - N_KE =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - M_KE =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - A_AMORC =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - B_AMORC =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - D_AMORC =SIMP(statut='f',typ='R'), - R_AMORC =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - ), - LAIGLE =FACT(statut='f', - GAMMA_ULT =SIMP(statut='o',typ='R'), - GAMMA_E =SIMP(statut='o',typ='R'), - M_ULT =SIMP(statut='o',typ='R'), - M_E =SIMP(statut='o',typ='R'), - A_E =SIMP(statut='o',typ='R'), - M_PIC =SIMP(statut='o',typ='R'), - A_PIC =SIMP(statut='o',typ='R'), - ETA =SIMP(statut='o',typ='R'), - SIGMA_C =SIMP(statut='o',typ='R'), - GAMMA =SIMP(statut='o',typ='R'), - KSI =SIMP(statut='o',typ='R'), - GAMMA_CJS =SIMP(statut='o',typ='R'), - SIGMA_P1 =SIMP(statut='o',typ='R'), - PA =SIMP(statut='o',typ='R'), - ), - LETK =FACT(statut='f', - PA =SIMP(statut='o',typ='R',fr="pression atmospherique"), - NELAS =SIMP(statut='o',typ='R',fr="exposant de la loi de variation des modules K et G"), - SIGMA_C =SIMP(statut='o',typ='R',fr="résistance en compression simple "), - H0_EXT =SIMP(statut='o',typ='R',fr="parametre pilotant la résistance en extension"), - GAMMA_CJS =SIMP(statut='o',typ='R',fr="parametre de forme du critere ds le plan déviatoire entre 0 et 1."), - XAMS =SIMP(statut='o',typ='R',fr="parametre non nul intervenant dans les lois d'écrouissage pre pic"), - ETA =SIMP(statut='o',typ='R',fr="parametre non nul intervenant dans les lois d'écrouissage post pic"), - A_0 =SIMP(statut='o',typ='R',fr="a de la limite d'élasticité initiale"), - A_E =SIMP(statut='o',typ='R',fr="a de la limite de clivage ou seuil intermédiaire"), - A_PIC =SIMP(statut='o',typ='R',fr="a du seuil de pic"), - S_0 =SIMP(statut='o',typ='R',fr="s de la limite d'élasticité initiale"), - M_0 =SIMP(statut='o',typ='R',fr="m de la limite d'élasticité initiale"), - M_E =SIMP(statut='o',typ='R',fr="m de la limite de clivage ou seuil intermédiaire"), - M_PIC =SIMP(statut='o',typ='R',fr="m du seuil de pic"), - M_ULT =SIMP(statut='o',typ='R',fr="m du seuil residuel"), - XI_ULT =SIMP(statut='o',typ='R',fr="niveau d écrouissage pour atteindre le seuil résiduel"), - XI_E =SIMP(statut='o',typ='R',fr="niveau d écrouissage pour atteindre le seuil de clivage"), - XI_PIC =SIMP(statut='o',typ='R',fr="niveau d écrouissage pour atteindre le seuil de pic"), - MV_MAX =SIMP(statut='o',typ='R',fr="m du seuil viscoplastique maximal"), - XIV_MAX =SIMP(statut='o',typ='R',fr="niveau d écrouissage pour atteindre le seuil viscoplastique maximal"), - A =SIMP(statut='o',typ='R',fr="parametre carcaterisant l amplitude de la vitesse de fluage"), - N =SIMP(statut='o',typ='R',fr="parametre intervenant dans la formule pilotant la cinetique de fluage"), - SIGMA_P1 =SIMP(statut='o',typ='R',fr="SIG min de l intersection du seuil de pic et intermediaire "), - MU0_V =SIMP(statut='o',typ='R',fr="relatif à l angle de dilatance des mecanismes pre pic et viscoplastique"), - XI0_V =SIMP(statut='o',typ='R',fr="relatif à l angle de dilatance des mecanismes pre pic et viscoplastique"), - MU1 =SIMP(statut='o',typ='R',fr="relatif à l angle de dilatance du mecanisme post pic "), - XI1 =SIMP(statut='o',typ='R',fr="relatif à l angle de dilatance du mecanisme post pic "), - ), - DRUCK_PRAGER =FACT(statut='f', - ALPHA =SIMP(statut='o',typ='R'), - SY =SIMP(statut='o',typ='R'), - P_ULTM =SIMP(statut='o',typ='R'), - ECROUISSAGE = SIMP(statut='o',typ='TXM',into=("LINEAIRE","PARABOLIQUE")), - b_lineaire =BLOC(condition="ECROUISSAGE=='LINEAIRE'", - fr="Loi de comportement de type Drucker Prager avec un ecrouissage lineaire", - H =SIMP(statut='o',typ='R'), - TYPE_DP =SIMP(statut='c',typ='R',defaut= 1.0,), - ), - b_parabolique =BLOC(condition="ECROUISSAGE=='PARABOLIQUE'", - fr="Loi de comportement de type Drucker Prager avec un ecrouissage parabolique", - SY_ULTM =SIMP(statut='o',typ='R'), - TYPE_DP =SIMP(statut='c',typ='R',defaut= 2.0,), - ), - DILAT =SIMP(statut='f',typ='R',defaut=0.0), - ), - - DRUCK_PRAGER_FO =FACT(statut='f', - ALPHA =SIMP(statut='o',typ=(fonction_sdaster,formule)), - SY =SIMP(statut='o',typ=(fonction_sdaster,formule)), - P_ULTM =SIMP(statut='o',typ=(fonction_sdaster,formule)), - ECROUISSAGE = SIMP(statut='o',typ='TXM',into=("LINEAIRE","PARABOLIQUE")), - b_lineaire =BLOC(condition="ECROUISSAGE=='LINEAIRE'", - fr="Loi de comportement de type Drucker Prager avec un ecrouissage lineaire", - H =SIMP(statut='o',typ=(fonction_sdaster,formule)), - TYPE_DP =SIMP(statut='c',typ='R',defaut= 1.0,), - ), - b_parabolique =BLOC(condition="ECROUISSAGE=='PARABOLIQUE'", - fr="Loi de comportement de type Drucker Prager avec un ecrouissage parabolique", - SY_ULTM =SIMP(statut='o',typ=(fonction_sdaster,formule)), - TYPE_DP =SIMP(statut='c',typ='R',defaut= 2.0,), - ), - DILAT =SIMP(statut='f',typ='R',defaut=0.0), - ), - - VISC_DRUC_PRAG =FACT(statut='f', - PREF =SIMP(statut='o',typ='R',fr="pression de reference"), - A =SIMP(statut='o',typ='R',fr="parametre carcaterisant l amplitude de la vitesse de fluage"), - N =SIMP(statut='o',typ='R',fr="parametre intervenant dans la formule pilotant la cinetique de fluage"), - P_PIC =SIMP(statut='o',typ='R',fr="niveau d ecrouissage pour atteindre le seuil de pic"), - P_ULT =SIMP(statut='o',typ='R',fr="niveau d ecrouissage pour atteindre le seuil utime"), - ALPHA_0 =SIMP(statut='o',typ='R',fr="parametre d ecrouissage relatif à la cohesion au seuil d elasticite"), - ALPHA_PIC =SIMP(statut='o',typ='R',fr="parametre d ecrouissage relatif à la cohesion au seuil de pic"), - ALPHA_ULT =SIMP(statut='o',typ='R',fr="parametre d ecrouissage relatif à la cohesion au seuil ultime"), - R_0 =SIMP(statut='o',typ='R',fr="parametre d ecrouissage correspondant au seuil d'elasticite"), - R_PIC =SIMP(statut='o',typ='R',fr="parametre d ecrouissage correspondant au seuil de pic"), - R_ULT =SIMP(statut='o',typ='R',fr="parametre d ecrouissage correspondant au seuil ultime"), - BETA_0 =SIMP(statut='o',typ='R',fr="parametre d ecrouissage relatif à la dilatance au seuil d elasticite"), - BETA_PIC =SIMP(statut='o',typ='R',fr="parametre d ecrouissage relatif à la dilatance au seuil de pic"), - BETA_ULT =SIMP(statut='o',typ='R',fr="parametre d ecrouissage relatif à la dilatance au seuil ultime"), - ), - HOEK_BROWN =FACT(statut='f', - GAMMA_RUP =SIMP(statut='o',typ='R'), - GAMMA_RES =SIMP(statut='o',typ='R'), - S_END =SIMP(statut='o',typ='R'), - S_RUP =SIMP(statut='o',typ='R'), - M_END =SIMP(statut='o',typ='R'), - M_RUP =SIMP(statut='o',typ='R'), - BETA =SIMP(statut='o',typ='R'), - ALPHAHB =SIMP(statut='o',typ='R'), - PHI_RUP =SIMP(statut='o',typ='R'), - PHI_RES =SIMP(statut='o',typ='R'), - PHI_END =SIMP(statut='f',typ='R'), - ), - ELAS_GONF =FACT(statut='f', - BETAM =SIMP(statut='o',typ='R'), - PREF =SIMP(statut='o',typ='R'), - ), - JOINT_BANDIS =FACT(statut='f', - K =SIMP(statut='o',typ='R'), - DMAX =SIMP(statut='o',typ='R'), - GAMMA =SIMP(statut='o',typ='R'), - KT =SIMP(statut='f',typ='R',defaut = 1.E12), - ), -#### MONOCRISTAL - - MONO_VISC1 =FACT(statut='f', - TYPE_PARA =SIMP(statut='f',typ='TXM',into=("ECOU_VISC",),), - N =SIMP(statut='o',typ='R'), - K =SIMP(statut='o',typ='R'), - C =SIMP(statut='o',typ='R'), - ), - MONO_VISC2 =FACT(statut='f', - TYPE_PARA =SIMP(statut='f',typ='TXM',into=("ECOU_VISC",),), - N =SIMP(statut='o',typ='R'), - K =SIMP(statut='o',typ='R'), - C =SIMP(statut='o',typ='R'), - D =SIMP(statut='o',typ='R'), - A =SIMP(statut='o',typ='R'), - ), - MONO_ISOT1 =FACT(statut='f', - regles=(UN_PARMI('H','H1'), - PRESENT_PRESENT('H1','H2','H3','H4'), - PRESENT_ABSENT('H','H1','H2','H3','H4','H5','H6'), - ), - TYPE_PARA =SIMP(statut='f',typ='TXM',into=("ECRO_ISOT",),), - R_0 =SIMP(statut='o',typ='R'), - Q =SIMP(statut='o',typ='R'), - B =SIMP(statut='o',typ='R'), - H =SIMP(statut='f',typ='R'), - H1 =SIMP(statut='f',typ='R'), - H2 =SIMP(statut='f',typ='R'), - H3 =SIMP(statut='f',typ='R'), - H4 =SIMP(statut='f',typ='R'), - H5 =SIMP(statut='f',typ='R'), - H6 =SIMP(statut='f',typ='R'), - ), - MONO_ISOT2 =FACT(statut='f', - regles=(UN_PARMI('H','H1'), - PRESENT_PRESENT('H1','H2','H3','H4'), - PRESENT_ABSENT('H','H1','H2','H3','H4','H5','H6'), - ), - TYPE_PARA =SIMP(statut='f',typ='TXM',into=("ECRO_ISOT",),), - R_0 =SIMP(statut='o',typ='R'), - Q1 =SIMP(statut='o',typ='R'), - B1 =SIMP(statut='o',typ='R'), - H =SIMP(statut='f',typ='R'), - H1 =SIMP(statut='f',typ='R'), - H2 =SIMP(statut='f',typ='R'), - H3 =SIMP(statut='f',typ='R'), - H4 =SIMP(statut='f',typ='R'), - H5 =SIMP(statut='f',typ='R'), - H6 =SIMP(statut='f',typ='R'), - Q2 =SIMP(statut='o',typ='R'), - B2 =SIMP(statut='o',typ='R'), - ), - MONO_CINE1 =FACT(statut='f', - TYPE_PARA =SIMP(statut='f',typ='TXM',into=("ECRO_CINE",),), - D =SIMP(statut='o',typ='R'), - ), - MONO_CINE2 =FACT(statut='f', - TYPE_PARA =SIMP(statut='f',typ='TXM',into=("ECRO_CINE",),), - D =SIMP(statut='o',typ='R'), - GM =SIMP(statut='o',typ='R'), - PM =SIMP(statut='o',typ='R'), - C =SIMP(statut='o',typ='R'), - ), - MONO_DD_KR =FACT(statut='f', - regles=(UN_PARMI('H','H1'), - PRESENT_PRESENT('H1','H2','H3','H4'), - PRESENT_ABSENT('H','H1','H2','H3','H4','H5','H6'), - ), - # TYPE_PARA =SIMP(statut='f',typ='TXM',into=("ECOU_VISC",),), - K =SIMP(statut='o',typ='R',fr="Constante de Boltzmann, en eV/K"), - TAUR =SIMP(statut='o',typ='R',fr="Contraintes de cisaillement à T=0K, en unite de contraintes"), - TAU0 =SIMP(statut='o',typ='R',fr="Contraintes critique initiale de cisaillement, en unite de contraintes"), - GAMMA0 =SIMP(statut='o',typ='R',fr="Vitesse d ecoulement initiale"), - DELTAG0 =SIMP(statut='o',typ='R',fr="Gain d energie lie au franchissement d obstacle"), - BSD =SIMP(statut='o',typ='R',fr="fonction de la taille du grain B/D"), - GCB =SIMP(statut='o',typ='R',fr="distance critique d'annihilation GC/B"), - KDCS =SIMP(statut='o',typ='R',fr="Parametre relatif à la direction principale de la dislocation"), - P =SIMP(statut='o',typ='R',fr="Parametre materiau dépendant de la forme de l'obstacle"), - Q =SIMP(statut='o',typ='R',fr="Parametre materiau dépendant de la forme de l'obstacle"), - H =SIMP(statut='f',typ='R'), - H1 =SIMP(statut='f',typ='R'), - H2 =SIMP(statut='f',typ='R'), - H3 =SIMP(statut='f',typ='R'), - H4 =SIMP(statut='f',typ='R'), - H5 =SIMP(statut='f',typ='R'), - H6 =SIMP(statut='f',typ='R'), - ), - MONO_DD_CFC =FACT(statut='f', - regles=(UN_PARMI('H','H1'), - PRESENT_PRESENT('H1','H2','H3','H4','H5'), - PRESENT_ABSENT('H','H1','H2','H3','H4','H5'), - ), - #TYPE_PARA =SIMP(statut='f',typ='TXM',into=("ECOU_VISC",),), - GAMMA0 =SIMP(statut='f',typ='R',defaut=0.001,fr="Vitesse d ecoulement initiale en s**-1"), - TAU_F =SIMP(statut='o',typ='R',fr="Contraintes , en unite de contraintes ex 20 MPa"), - A =SIMP(statut='f',typ='R',defaut=0.13,fr="paramètre A, sans unité"), - B =SIMP(statut='f',typ='R',defaut=0.005,fr="paramètre B, sans unité"), - N =SIMP(statut='f',typ='R',defaut=200.,fr="paramètre n, sans unité"), - Y =SIMP(statut='o',typ='R',fr="paramète Y, en unité de longueur ex 2.5 A"), - ALPHA =SIMP(statut='f',typ='R',defaut=0.35,fr="ecrouissage, paramètre alpha"), - BETA =SIMP(statut='o',typ='R',fr="ecrouissage, paramètre b, en unite de longueur"), - RHO_REF =SIMP(statut='o',typ='R',fr="ecrouissage, paramètre rho_ref, en unité de longueur **-2"), - H =SIMP(statut='f',typ='R'), - H1 =SIMP(statut='f',typ='R',defaut=0.124,fr="matrice d'interaction, terme a*",), - H2 =SIMP(statut='f',typ='R',defaut=0.625,fr="matrice d'interaction, terme a_colineaire",), - H3 =SIMP(statut='f',typ='R',defaut=0.137,fr="matrice d'interaction, terme a_glissile",), - H4 =SIMP(statut='f',typ='R',defaut=0.122,fr="matrice d'interaction, terme a_Lomer",), - H5 =SIMP(statut='f',typ='R',defaut=0.07,fr="matrice d'interaction, terme a_Hirth",), - ), - - MONO_DD_CFC_IRRA =FACT(statut='f', - regles=(UN_PARMI('H','H1'), - PRESENT_PRESENT('H1','H2','H3','H4','H5'), - PRESENT_ABSENT('H','H1','H2','H3','H4','H5'), - ), - #TYPE_PARA =SIMP(statut='f',typ='TXM',into=("ECOU_VISC",),), - GAMMA0 =SIMP(statut='f',typ='R',defaut=0.001,fr="Vitesse d ecoulement initiale en s**-1"), - TAU_F =SIMP(statut='o',typ='R',fr="Contraintes , en unite de contraintes ex 20 MPa"), - A =SIMP(statut='f',typ='R',defaut=0.13,fr="paramètre A, sans unité"), - B =SIMP(statut='f',typ='R',defaut=0.005,fr="paramètre B, sans unité"), - N =SIMP(statut='f',typ='R',defaut=200.,fr="paramètre n, sans unité"), - Y =SIMP(statut='o',typ='R',fr="paramète Y, en unité de longueur ex 2.5 A"), - ALPHA =SIMP(statut='f',typ='R',defaut=0.35,fr="ecrouissage, paramètre alpha"), - BETA =SIMP(statut='o',typ='R',fr="ecrouissage, paramètre b, en unite de longueur"), - RHO_REF =SIMP(statut='o',typ='R',fr="ecrouissage, paramètre rho_ref, en unité de longueur **-2"), - H =SIMP(statut='f',typ='R'), - H1 =SIMP(statut='f',typ='R',defaut=0.124,fr="matrice d'interaction, terme a*",), - H2 =SIMP(statut='f',typ='R',defaut=0.625,fr="matrice d'interaction, terme a_colineaire",), - H3 =SIMP(statut='f',typ='R',defaut=0.137,fr="matrice d'interaction, terme a_glissile",), - H4 =SIMP(statut='f',typ='R',defaut=0.122,fr="matrice d'interaction, terme a_Lomer",), - H5 =SIMP(statut='f',typ='R',defaut=0.07,fr="matrice d'interaction, terme a_Hirth",), - - DZ_IRRA =SIMP(statut='o',typ='R',val_min=0.E+0,fr="Parametre dzeta pour irradiation"), - XI_IRRA =SIMP(statut='o',typ='R',val_min=0.E+0,fr="Parametre xi pour irradiation"), - RHO_VOID =SIMP(statut='o',typ='R',fr="Parametre rho_voids pour irradiation"), - PHI_LOOP =SIMP(statut='o',typ='R',fr="Parametre phi_loops pour irradiation"), - ALP_VOID =SIMP(statut='o',typ='R',fr="Parametre alpha_voids pour irradiation"), - ALP_LOOP =SIMP(statut='o',typ='R',fr="Parametre alpha_loops pour irradiation"), - RHO_SAT =SIMP(statut='o',typ='R',fr="Parametre rho_sat*b*b pour irradiation"), - PHI_SAT =SIMP(statut='o',typ='R',fr="Parametre phi_sat pour irradiation"), - - ), - - MONO_DD_FAT =FACT(statut='f', - regles=(UN_PARMI('H','H1'), - PRESENT_PRESENT('H1','H2','H3','H4','H5'), - PRESENT_ABSENT('H','H1','H2','H3','H4','H5'), - ), - #TYPE_PARA =SIMP(statut='f',typ='TXM',into=("ECOU_VISC",),), - GAMMA0 =SIMP(statut='o',typ='R',fr="Vitesse d ecoulement initiale en s**-1"), - TAU_F =SIMP(statut='o',typ='R',fr="Contraintes , en unite de contraintes ex 20 MPa"), - BETA =SIMP(statut='o',typ='R',fr="ecrouissage, paramètre b, en unite de longueur"), - N =SIMP(statut='o',typ='R',fr="paramètre n, sans unite"), - UN_SUR_D =SIMP(statut='o',typ='R',fr="paramètre 1/D, en unite de 1/longueur"), - GC0 =SIMP(statut='o',typ='R',fr="paramètre GC0, en unite de longueur"), - K =SIMP(statut='o',typ='R',fr="paramètre K, sans unite"), - H =SIMP(statut='f',typ='R'), - H1 =SIMP(statut='f',typ='R',defaut=0.124,fr="matrice d'interaction, terme a*",), - H2 =SIMP(statut='f',typ='R',defaut=0.625,fr="matrice d'interaction, terme a_colineaire",), - H3 =SIMP(statut='f',typ='R',defaut=0.137,fr="matrice d'interaction, terme a_glissile",), - H4 =SIMP(statut='f',typ='R',defaut=0.122,fr="matrice d'interaction, terme a_Lomer",), - H5 =SIMP(statut='f',typ='R',defaut=0.07,fr="matrice d'interaction, terme a_Hirth",), - ), - - MONO_DD_CC =FACT(statut='f', - #TYPE_PARA =SIMP(statut='f',typ='TXM',into=("ECOU_VISC",),), - B =SIMP(statut='o',typ='R',fr="parametre B, en unite de longueur"), - GH =SIMP(statut='o',typ='R',fr="parametre H, en unite de 1/temps"), - DELTAG0 =SIMP(statut='o',typ='R',fr="energie d'activation, en unite d'energie (eV ou J)"), - TAU_0 =SIMP(statut='o',typ='R',fr="contrainte ultime, en unite de contraintes "), - TAU_F =SIMP(statut='o',typ='R',fr="seuil en contrainte , en unite de contraintes"), - GAMMA0 =SIMP(statut='o',typ='R',fr="Vitesse d ecoulement initiale en s**-1"), - N =SIMP(statut='o',typ='R',fr="parametre n, sans unite"), - RHO_MOB =SIMP(statut='o',typ='R',fr="densite de dislocations mobiles, en unite de longueur **-2"), - D =SIMP(statut='o',typ='R',fr="parametre D, en unite de longueur"), - BETA =SIMP(statut='o',typ='R',fr="parametre beta, sans unite"), - D_LAT =SIMP(statut='o',typ='R',fr="parametre D_LAT, en unite de longueur"), - Y_AT =SIMP(statut='o',typ='R',fr="parametre Y_AT, en unite de longueur"), - K_F =SIMP(statut='o',typ='R',fr="Parametre K_F"), - K_SELF =SIMP(statut='o',typ='R',fr="Parametre K_SELF"), - K_BOLTZ =SIMP(statut='o',typ='R',fr="Constante de Boltzmann, en eV/K"), - H1 =SIMP(statut='o',typ='R',fr="Parametre a_self"), - H2 =SIMP(statut='o',typ='R',fr="Parametre a_coli"), - H3 =SIMP(statut='o',typ='R',fr="Parametre a_ncol"), - H4 =SIMP(statut='f',typ='R',defaut=0.), - H5 =SIMP(statut='f',typ='R',defaut=0.), - H6 =SIMP(statut='f',typ='R',defaut=0.), - DELTA1 =SIMP(statut='f',typ='R',defaut=1.,fr="parametre permettant la variation de Y_AT avec tau_eff"), - DELTA2 =SIMP(statut='f',typ='R',defaut=1.,fr="parametre permettant la variation de a_AT avec tau_eff"), - DEPDT =SIMP(statut='f',typ='R',defaut=0.,fr="parametre dEps/dT pour le calcul de DeltaG"), - ), - - MONO_DD_CC_IRRA =FACT(statut='f', - #TYPE_PARA =SIMP(statut='f',typ='TXM',into=("ECOU_VISC",),), - B =SIMP(statut='o',typ='R',fr="parametre B, en unite de longueur"), - GH =SIMP(statut='o',typ='R',fr="parametre H, en unite de 1/temps"), - DELTAG0 =SIMP(statut='o',typ='R',fr="Gain d energie lie au franchissement d obstacle"), - TAU_0 =SIMP(statut='o',typ='R',fr="Contraintes , en unite de contraintes ex 20 MPa"), - TAU_F =SIMP(statut='o',typ='R',fr="Contraintes , en unite de contraintes ex 20 MPa"), - GAMMA0 =SIMP(statut='o',typ='R',fr="Vitesse d ecoulement initiale en s**-1"), - N =SIMP(statut='o',typ='R',fr="parametre n, sans unite"), - RHO_MOB =SIMP(statut='o',typ='R',fr="densite de dislocations mobiles, en unite de longueur **-2"), - D =SIMP(statut='o',typ='R',fr="parametre D, en unite de longueur"), - BETA =SIMP(statut='o',typ='R',fr="ecrouissage, parametre beta"), - D_LAT =SIMP(statut='o',typ='R',fr="parametre D_LAT, en unite de longueur"), - Y_AT =SIMP(statut='o',typ='R',fr="parametre Y_AT, en unite de longueur"), - K_F =SIMP(statut='o',typ='R',fr="Parametre K_F"), - K_SELF =SIMP(statut='o',typ='R',fr="Parametre K_SELF"), - K_BOLTZ =SIMP(statut='o',typ='R',fr="Constante de Boltzmann, en eV/K"), - H1 =SIMP(statut='o',typ='R',fr="Parametre a_self"), - H2 =SIMP(statut='o',typ='R',fr="Parametre a_coli"), - H3 =SIMP(statut='o',typ='R',fr="Parametre a_ncol"), - H4 =SIMP(statut='f',typ='R',defaut=0.), - H5 =SIMP(statut='f',typ='R',defaut=0.), - H6 =SIMP(statut='f',typ='R',defaut=0.), - DELTA1 =SIMP(statut='f',typ='R',defaut=1.,fr="parametre permettant la variation de Y_AT avec tau_eff"), - DELTA2 =SIMP(statut='f',typ='R',defaut=1.,fr="parametre permettant la variation de a_AT avec tau_eff"), - DEPDT =SIMP(statut='f',typ='R',defaut=0.,fr="parametre dEps/dT pour le calcul de DeltaG"), - A_IRRA =SIMP(statut='o',typ='R',fr="Parametre a_loops pour irradiation"), - XI_IRRA =SIMP(statut='o',typ='R',fr="Parametre xi pour irradiation"), - ), - - -#### FIN MONOCRISTAL - -### UMAT - UMAT =FACT(statut='f', - NB_VALE =SIMP(statut='f',typ='R'), - C1 =SIMP(statut='f',typ='R'), - C2 =SIMP(statut='f',typ='R'), - C3 =SIMP(statut='f',typ='R'), - C4 =SIMP(statut='f',typ='R'), - C5 =SIMP(statut='f',typ='R'), - C6 =SIMP(statut='f',typ='R'), - C7 =SIMP(statut='f',typ='R'), - C8 =SIMP(statut='f',typ='R'), - C9 =SIMP(statut='f',typ='R'), - C10 =SIMP(statut='f',typ='R'), - C11 =SIMP(statut='f',typ='R'), - C12 =SIMP(statut='f',typ='R'), - C13 =SIMP(statut='f',typ='R'), - C14 =SIMP(statut='f',typ='R'), - C15 =SIMP(statut='f',typ='R'), - C16 =SIMP(statut='f',typ='R'), - C17 =SIMP(statut='f',typ='R'), - C18 =SIMP(statut='f',typ='R'), - C19 =SIMP(statut='f',typ='R'), - C20 =SIMP(statut='f',typ='R'), - C21 =SIMP(statut='f',typ='R'), - C22 =SIMP(statut='f',typ='R'), - C23 =SIMP(statut='f',typ='R'), - C24 =SIMP(statut='f',typ='R'), - C25 =SIMP(statut='f',typ='R'), - C26 =SIMP(statut='f',typ='R'), - C27 =SIMP(statut='f',typ='R'), - C28 =SIMP(statut='f',typ='R'), - C29 =SIMP(statut='f',typ='R'), - C30 =SIMP(statut='f',typ='R'), - C31 =SIMP(statut='f',typ='R'), - C32 =SIMP(statut='f',typ='R'), - C33 =SIMP(statut='f',typ='R'), - C34 =SIMP(statut='f',typ='R'), - C35 =SIMP(statut='f',typ='R'), - C36 =SIMP(statut='f',typ='R'), - C37 =SIMP(statut='f',typ='R'), - C38 =SIMP(statut='f',typ='R'), - C39 =SIMP(statut='f',typ='R'), - C40 =SIMP(statut='f',typ='R'), - C41 =SIMP(statut='f',typ='R'), - C42 =SIMP(statut='f',typ='R'), - C43 =SIMP(statut='f',typ='R'), - C44 =SIMP(statut='f',typ='R'), - C45 =SIMP(statut='f',typ='R'), - C46 =SIMP(statut='f',typ='R'), - C47 =SIMP(statut='f',typ='R'), - C48 =SIMP(statut='f',typ='R'), - C49 =SIMP(statut='f',typ='R'), - C50 =SIMP(statut='f',typ='R'), - C51 =SIMP(statut='f',typ='R'), - C52 =SIMP(statut='f',typ='R'), - C53 =SIMP(statut='f',typ='R'), - C54 =SIMP(statut='f',typ='R'), - C55 =SIMP(statut='f',typ='R'), - C56 =SIMP(statut='f',typ='R'), - C57 =SIMP(statut='f',typ='R'), - C58 =SIMP(statut='f',typ='R'), - C59 =SIMP(statut='f',typ='R'), - C60 =SIMP(statut='f',typ='R'), - C61 =SIMP(statut='f',typ='R'), - C62 =SIMP(statut='f',typ='R'), - C63 =SIMP(statut='f',typ='R'), - C64 =SIMP(statut='f',typ='R'), - C65 =SIMP(statut='f',typ='R'), - C66 =SIMP(statut='f',typ='R'), - C67 =SIMP(statut='f',typ='R'), - C68 =SIMP(statut='f',typ='R'), - C69 =SIMP(statut='f',typ='R'), - C70 =SIMP(statut='f',typ='R'), - C71 =SIMP(statut='f',typ='R'), - C72 =SIMP(statut='f',typ='R'), - C73 =SIMP(statut='f',typ='R'), - C74 =SIMP(statut='f',typ='R'), - C75 =SIMP(statut='f',typ='R'), - C76 =SIMP(statut='f',typ='R'), - C77 =SIMP(statut='f',typ='R'), - C78 =SIMP(statut='f',typ='R'), - C79 =SIMP(statut='f',typ='R'), - C80 =SIMP(statut='f',typ='R'), - C81 =SIMP(statut='f',typ='R'), - C82 =SIMP(statut='f',typ='R'), - C83 =SIMP(statut='f',typ='R'), - C84 =SIMP(statut='f',typ='R'), - C85 =SIMP(statut='f',typ='R'), - C86 =SIMP(statut='f',typ='R'), - C87 =SIMP(statut='f',typ='R'), - C88 =SIMP(statut='f',typ='R'), - C89 =SIMP(statut='f',typ='R'), - C90 =SIMP(statut='f',typ='R'), - C91 =SIMP(statut='f',typ='R'), - C92 =SIMP(statut='f',typ='R'), - C93 =SIMP(statut='f',typ='R'), - C94 =SIMP(statut='f',typ='R'), - C95 =SIMP(statut='f',typ='R'), - C96 =SIMP(statut='f',typ='R'), - C97 =SIMP(statut='f',typ='R'), - C98 =SIMP(statut='f',typ='R'), - C99 =SIMP(statut='f',typ='R'), - C100 =SIMP(statut='f',typ='R'), - C101 =SIMP(statut='f',typ='R'), - C102 =SIMP(statut='f',typ='R'), - C103 =SIMP(statut='f',typ='R'), - C104 =SIMP(statut='f',typ='R'), - C105 =SIMP(statut='f',typ='R'), - C106 =SIMP(statut='f',typ='R'), - C107 =SIMP(statut='f',typ='R'), - C108 =SIMP(statut='f',typ='R'), - C109 =SIMP(statut='f',typ='R'), - C110 =SIMP(statut='f',typ='R'), - C111 =SIMP(statut='f',typ='R'), - C112 =SIMP(statut='f',typ='R'), - C113 =SIMP(statut='f',typ='R'), - C114 =SIMP(statut='f',typ='R'), - C115 =SIMP(statut='f',typ='R'), - C116 =SIMP(statut='f',typ='R'), - C117 =SIMP(statut='f',typ='R'), - C118 =SIMP(statut='f',typ='R'), - C119 =SIMP(statut='f',typ='R'), - C120 =SIMP(statut='f',typ='R'), - C121 =SIMP(statut='f',typ='R'), - C122 =SIMP(statut='f',typ='R'), - C123 =SIMP(statut='f',typ='R'), - C124 =SIMP(statut='f',typ='R'), - C125 =SIMP(statut='f',typ='R'), - C126 =SIMP(statut='f',typ='R'), - C127 =SIMP(statut='f',typ='R'), - C128 =SIMP(statut='f',typ='R'), - C129 =SIMP(statut='f',typ='R'), - C130 =SIMP(statut='f',typ='R'), - C131 =SIMP(statut='f',typ='R'), - C132 =SIMP(statut='f',typ='R'), - C133 =SIMP(statut='f',typ='R'), - C134 =SIMP(statut='f',typ='R'), - C135 =SIMP(statut='f',typ='R'), - C136 =SIMP(statut='f',typ='R'), - C137 =SIMP(statut='f',typ='R'), - C138 =SIMP(statut='f',typ='R'), - C139 =SIMP(statut='f',typ='R'), - C140 =SIMP(statut='f',typ='R'), - C141 =SIMP(statut='f',typ='R'), - C142 =SIMP(statut='f',typ='R'), - C143 =SIMP(statut='f',typ='R'), - C144 =SIMP(statut='f',typ='R'), - C145 =SIMP(statut='f',typ='R'), - C146 =SIMP(statut='f',typ='R'), - C147 =SIMP(statut='f',typ='R'), - C148 =SIMP(statut='f',typ='R'), - C149 =SIMP(statut='f',typ='R'), - C150 =SIMP(statut='f',typ='R'), - C151 =SIMP(statut='f',typ='R'), - C152 =SIMP(statut='f',typ='R'), - C153 =SIMP(statut='f',typ='R'), - C154 =SIMP(statut='f',typ='R'), - C155 =SIMP(statut='f',typ='R'), - C156 =SIMP(statut='f',typ='R'), - C157 =SIMP(statut='f',typ='R'), - C158 =SIMP(statut='f',typ='R'), - C159 =SIMP(statut='f',typ='R'), - C160 =SIMP(statut='f',typ='R'), - C161 =SIMP(statut='f',typ='R'), - C162 =SIMP(statut='f',typ='R'), - C163 =SIMP(statut='f',typ='R'), - C164 =SIMP(statut='f',typ='R'), - C165 =SIMP(statut='f',typ='R'), - C166 =SIMP(statut='f',typ='R'), - C167 =SIMP(statut='f',typ='R'), - C168 =SIMP(statut='f',typ='R'), - C169 =SIMP(statut='f',typ='R'), - C170 =SIMP(statut='f',typ='R'), - C171 =SIMP(statut='f',typ='R'), - C172 =SIMP(statut='f',typ='R'), - C173 =SIMP(statut='f',typ='R'), - C174 =SIMP(statut='f',typ='R'), - C175 =SIMP(statut='f',typ='R'), - C176 =SIMP(statut='f',typ='R'), - C177 =SIMP(statut='f',typ='R'), - C178 =SIMP(statut='f',typ='R'), - C179 =SIMP(statut='f',typ='R'), - C180 =SIMP(statut='f',typ='R'), - C181 =SIMP(statut='f',typ='R'), - C182 =SIMP(statut='f',typ='R'), - C183 =SIMP(statut='f',typ='R'), - C184 =SIMP(statut='f',typ='R'), - C185 =SIMP(statut='f',typ='R'), - C186 =SIMP(statut='f',typ='R'), - C187 =SIMP(statut='f',typ='R'), - C188 =SIMP(statut='f',typ='R'), - C189 =SIMP(statut='f',typ='R'), - C190 =SIMP(statut='f',typ='R'), - C191 =SIMP(statut='f',typ='R'), - C192 =SIMP(statut='f',typ='R'), - C193 =SIMP(statut='f',typ='R'), - C194 =SIMP(statut='f',typ='R'), - C195 =SIMP(statut='f',typ='R'), - C196 =SIMP(statut='f',typ='R'), - C197 =SIMP(statut='f',typ='R'), - ), - UMAT_FO =FACT(statut='f', - NB_VALE =SIMP(statut='f',typ='R'), - C1 =SIMP(statut='f',typ=(fonction_sdaster,formule)), - C2 =SIMP(statut='f',typ=(fonction_sdaster,formule)), - C3 =SIMP(statut='f',typ=(fonction_sdaster,formule)), - C4 =SIMP(statut='f',typ=(fonction_sdaster,formule)), - C5 =SIMP(statut='f',typ=(fonction_sdaster,formule)), - C6 =SIMP(statut='f',typ=(fonction_sdaster,formule)), - C7 =SIMP(statut='f',typ=(fonction_sdaster,formule)), - C8 =SIMP(statut='f',typ=(fonction_sdaster,formule)), - C9 =SIMP(statut='f',typ=(fonction_sdaster,formule)), - C10 =SIMP(statut='f',typ=(fonction_sdaster,formule)), - C11 =SIMP(statut='f',typ=(fonction_sdaster,formule)), - C12 =SIMP(statut='f',typ=(fonction_sdaster,formule)), - C13 =SIMP(statut='f',typ=(fonction_sdaster,formule)), - C14 =SIMP(statut='f',typ=(fonction_sdaster,formule)), - C15 =SIMP(statut='f',typ=(fonction_sdaster,formule)), - C16 =SIMP(statut='f',typ=(fonction_sdaster,formule)), - C17 =SIMP(statut='f',typ=(fonction_sdaster,formule)), - C18 =SIMP(statut='f',typ=(fonction_sdaster,formule)), - C19 =SIMP(statut='f',typ=(fonction_sdaster,formule)), - C20 =SIMP(statut='f',typ=(fonction_sdaster,formule)), - C21 =SIMP(statut='f',typ=(fonction_sdaster,formule)), - C22 =SIMP(statut='f',typ=(fonction_sdaster,formule)), - C23 =SIMP(statut='f',typ=(fonction_sdaster,formule)), - C24 =SIMP(statut='f',typ=(fonction_sdaster,formule)), - C25 =SIMP(statut='f',typ=(fonction_sdaster,formule)), - C26 =SIMP(statut='f',typ=(fonction_sdaster,formule)), - C27 =SIMP(statut='f',typ=(fonction_sdaster,formule)), - C28 =SIMP(statut='f',typ=(fonction_sdaster,formule)), - C29 =SIMP(statut='f',typ=(fonction_sdaster,formule)), - C30 =SIMP(statut='f',typ=(fonction_sdaster,formule)), - C31 =SIMP(statut='f',typ=(fonction_sdaster,formule)), - C32 =SIMP(statut='f',typ=(fonction_sdaster,formule)), - C33 =SIMP(statut='f',typ=(fonction_sdaster,formule)), - C34 =SIMP(statut='f',typ=(fonction_sdaster,formule)), - C35 =SIMP(statut='f',typ=(fonction_sdaster,formule)), - C36 =SIMP(statut='f',typ=(fonction_sdaster,formule)), - C37 =SIMP(statut='f',typ=(fonction_sdaster,formule)), - C38 =SIMP(statut='f',typ=(fonction_sdaster,formule)), - C39 =SIMP(statut='f',typ=(fonction_sdaster,formule)), - C40 =SIMP(statut='f',typ=(fonction_sdaster,formule)), - C41 =SIMP(statut='f',typ=(fonction_sdaster,formule)), - C42 =SIMP(statut='f',typ=(fonction_sdaster,formule)), - C43 =SIMP(statut='f',typ=(fonction_sdaster,formule)), - C44 =SIMP(statut='f',typ=(fonction_sdaster,formule)), - C45 =SIMP(statut='f',typ=(fonction_sdaster,formule)), - C46 =SIMP(statut='f',typ=(fonction_sdaster,formule)), - C47 =SIMP(statut='f',typ=(fonction_sdaster,formule)), - C48 =SIMP(statut='f',typ=(fonction_sdaster,formule)), - C49 =SIMP(statut='f',typ=(fonction_sdaster,formule)), - C50 =SIMP(statut='f',typ=(fonction_sdaster,formule)), - C51 =SIMP(statut='f',typ=(fonction_sdaster,formule)), - C52 =SIMP(statut='f',typ=(fonction_sdaster,formule)), - C53 =SIMP(statut='f',typ=(fonction_sdaster,formule)), - C54 =SIMP(statut='f',typ=(fonction_sdaster,formule)), - C55 =SIMP(statut='f',typ=(fonction_sdaster,formule)), - C56 =SIMP(statut='f',typ=(fonction_sdaster,formule)), - C57 =SIMP(statut='f',typ=(fonction_sdaster,formule)), - C58 =SIMP(statut='f',typ=(fonction_sdaster,formule)), - C59 =SIMP(statut='f',typ=(fonction_sdaster,formule)), - C60 =SIMP(statut='f',typ=(fonction_sdaster,formule)), - C61 =SIMP(statut='f',typ=(fonction_sdaster,formule)), - C62 =SIMP(statut='f',typ=(fonction_sdaster,formule)), - C63 =SIMP(statut='f',typ=(fonction_sdaster,formule)), - C64 =SIMP(statut='f',typ=(fonction_sdaster,formule)), - C65 =SIMP(statut='f',typ=(fonction_sdaster,formule)), - C66 =SIMP(statut='f',typ=(fonction_sdaster,formule)), - C67 =SIMP(statut='f',typ=(fonction_sdaster,formule)), - C68 =SIMP(statut='f',typ=(fonction_sdaster,formule)), - C69 =SIMP(statut='f',typ=(fonction_sdaster,formule)), - C70 =SIMP(statut='f',typ=(fonction_sdaster,formule)), - C71 =SIMP(statut='f',typ=(fonction_sdaster,formule)), - C72 =SIMP(statut='f',typ=(fonction_sdaster,formule)), - C73 =SIMP(statut='f',typ=(fonction_sdaster,formule)), - C74 =SIMP(statut='f',typ=(fonction_sdaster,formule)), - C75 =SIMP(statut='f',typ=(fonction_sdaster,formule)), - C76 =SIMP(statut='f',typ=(fonction_sdaster,formule)), - C77 =SIMP(statut='f',typ=(fonction_sdaster,formule)), - C78 =SIMP(statut='f',typ=(fonction_sdaster,formule)), - C79 =SIMP(statut='f',typ=(fonction_sdaster,formule)), - C80 =SIMP(statut='f',typ=(fonction_sdaster,formule)), - C81 =SIMP(statut='f',typ=(fonction_sdaster,formule)), - C82 =SIMP(statut='f',typ=(fonction_sdaster,formule)), - C83 =SIMP(statut='f',typ=(fonction_sdaster,formule)), - C84 =SIMP(statut='f',typ=(fonction_sdaster,formule)), - C85 =SIMP(statut='f',typ=(fonction_sdaster,formule)), - C86 =SIMP(statut='f',typ=(fonction_sdaster,formule)), - C87 =SIMP(statut='f',typ=(fonction_sdaster,formule)), - C88 =SIMP(statut='f',typ=(fonction_sdaster,formule)), - C89 =SIMP(statut='f',typ=(fonction_sdaster,formule)), - C90 =SIMP(statut='f',typ=(fonction_sdaster,formule)), - C91 =SIMP(statut='f',typ=(fonction_sdaster,formule)), - C92 =SIMP(statut='f',typ=(fonction_sdaster,formule)), - C93 =SIMP(statut='f',typ=(fonction_sdaster,formule)), - C94 =SIMP(statut='f',typ=(fonction_sdaster,formule)), - C95 =SIMP(statut='f',typ=(fonction_sdaster,formule)), - C96 =SIMP(statut='f',typ=(fonction_sdaster,formule)), - C97 =SIMP(statut='f',typ=(fonction_sdaster,formule)), - C98 =SIMP(statut='f',typ=(fonction_sdaster,formule)), - C99 =SIMP(statut='f',typ=(fonction_sdaster,formule)), - C100 =SIMP(statut='f',typ=(fonction_sdaster,formule)), - C101 =SIMP(statut='f',typ=(fonction_sdaster,formule)), - C102 =SIMP(statut='f',typ=(fonction_sdaster,formule)), - C103 =SIMP(statut='f',typ=(fonction_sdaster,formule)), - C104 =SIMP(statut='f',typ=(fonction_sdaster,formule)), - C105 =SIMP(statut='f',typ=(fonction_sdaster,formule)), - C106 =SIMP(statut='f',typ=(fonction_sdaster,formule)), - C107 =SIMP(statut='f',typ=(fonction_sdaster,formule)), - C108 =SIMP(statut='f',typ=(fonction_sdaster,formule)), - C109 =SIMP(statut='f',typ=(fonction_sdaster,formule)), - C110 =SIMP(statut='f',typ=(fonction_sdaster,formule)), - C111 =SIMP(statut='f',typ=(fonction_sdaster,formule)), - C112 =SIMP(statut='f',typ=(fonction_sdaster,formule)), - C113 =SIMP(statut='f',typ=(fonction_sdaster,formule)), - C114 =SIMP(statut='f',typ=(fonction_sdaster,formule)), - C115 =SIMP(statut='f',typ=(fonction_sdaster,formule)), - C116 =SIMP(statut='f',typ=(fonction_sdaster,formule)), - C117 =SIMP(statut='f',typ=(fonction_sdaster,formule)), - C118 =SIMP(statut='f',typ=(fonction_sdaster,formule)), - C119 =SIMP(statut='f',typ=(fonction_sdaster,formule)), - C120 =SIMP(statut='f',typ=(fonction_sdaster,formule)), - C121 =SIMP(statut='f',typ=(fonction_sdaster,formule)), - C122 =SIMP(statut='f',typ=(fonction_sdaster,formule)), - C123 =SIMP(statut='f',typ=(fonction_sdaster,formule)), - C124 =SIMP(statut='f',typ=(fonction_sdaster,formule)), - C125 =SIMP(statut='f',typ=(fonction_sdaster,formule)), - C126 =SIMP(statut='f',typ=(fonction_sdaster,formule)), - C127 =SIMP(statut='f',typ=(fonction_sdaster,formule)), - C128 =SIMP(statut='f',typ=(fonction_sdaster,formule)), - C129 =SIMP(statut='f',typ=(fonction_sdaster,formule)), - C130 =SIMP(statut='f',typ=(fonction_sdaster,formule)), - C131 =SIMP(statut='f',typ=(fonction_sdaster,formule)), - C132 =SIMP(statut='f',typ=(fonction_sdaster,formule)), - C133 =SIMP(statut='f',typ=(fonction_sdaster,formule)), - C134 =SIMP(statut='f',typ=(fonction_sdaster,formule)), - C135 =SIMP(statut='f',typ=(fonction_sdaster,formule)), - C136 =SIMP(statut='f',typ=(fonction_sdaster,formule)), - C137 =SIMP(statut='f',typ=(fonction_sdaster,formule)), - C138 =SIMP(statut='f',typ=(fonction_sdaster,formule)), - C139 =SIMP(statut='f',typ=(fonction_sdaster,formule)), - C140 =SIMP(statut='f',typ=(fonction_sdaster,formule)), - C141 =SIMP(statut='f',typ=(fonction_sdaster,formule)), - C142 =SIMP(statut='f',typ=(fonction_sdaster,formule)), - C143 =SIMP(statut='f',typ=(fonction_sdaster,formule)), - C144 =SIMP(statut='f',typ=(fonction_sdaster,formule)), - C145 =SIMP(statut='f',typ=(fonction_sdaster,formule)), - C146 =SIMP(statut='f',typ=(fonction_sdaster,formule)), - C147 =SIMP(statut='f',typ=(fonction_sdaster,formule)), - C148 =SIMP(statut='f',typ=(fonction_sdaster,formule)), - C149 =SIMP(statut='f',typ=(fonction_sdaster,formule)), - C150 =SIMP(statut='f',typ=(fonction_sdaster,formule)), - C151 =SIMP(statut='f',typ=(fonction_sdaster,formule)), - C152 =SIMP(statut='f',typ=(fonction_sdaster,formule)), - C153 =SIMP(statut='f',typ=(fonction_sdaster,formule)), - C154 =SIMP(statut='f',typ=(fonction_sdaster,formule)), - C155 =SIMP(statut='f',typ=(fonction_sdaster,formule)), - C156 =SIMP(statut='f',typ=(fonction_sdaster,formule)), - C157 =SIMP(statut='f',typ=(fonction_sdaster,formule)), - C158 =SIMP(statut='f',typ=(fonction_sdaster,formule)), - C159 =SIMP(statut='f',typ=(fonction_sdaster,formule)), - C160 =SIMP(statut='f',typ=(fonction_sdaster,formule)), - C161 =SIMP(statut='f',typ=(fonction_sdaster,formule)), - C162 =SIMP(statut='f',typ=(fonction_sdaster,formule)), - C163 =SIMP(statut='f',typ=(fonction_sdaster,formule)), - C164 =SIMP(statut='f',typ=(fonction_sdaster,formule)), - C165 =SIMP(statut='f',typ=(fonction_sdaster,formule)), - C166 =SIMP(statut='f',typ=(fonction_sdaster,formule)), - C167 =SIMP(statut='f',typ=(fonction_sdaster,formule)), - C168 =SIMP(statut='f',typ=(fonction_sdaster,formule)), - C169 =SIMP(statut='f',typ=(fonction_sdaster,formule)), - C170 =SIMP(statut='f',typ=(fonction_sdaster,formule)), - C171 =SIMP(statut='f',typ=(fonction_sdaster,formule)), - C172 =SIMP(statut='f',typ=(fonction_sdaster,formule)), - C173 =SIMP(statut='f',typ=(fonction_sdaster,formule)), - C174 =SIMP(statut='f',typ=(fonction_sdaster,formule)), - C175 =SIMP(statut='f',typ=(fonction_sdaster,formule)), - C176 =SIMP(statut='f',typ=(fonction_sdaster,formule)), - C177 =SIMP(statut='f',typ=(fonction_sdaster,formule)), - C178 =SIMP(statut='f',typ=(fonction_sdaster,formule)), - C179 =SIMP(statut='f',typ=(fonction_sdaster,formule)), - C180 =SIMP(statut='f',typ=(fonction_sdaster,formule)), - C181 =SIMP(statut='f',typ=(fonction_sdaster,formule)), - C182 =SIMP(statut='f',typ=(fonction_sdaster,formule)), - C183 =SIMP(statut='f',typ=(fonction_sdaster,formule)), - C184 =SIMP(statut='f',typ=(fonction_sdaster,formule)), - C185 =SIMP(statut='f',typ=(fonction_sdaster,formule)), - C186 =SIMP(statut='f',typ=(fonction_sdaster,formule)), - C187 =SIMP(statut='f',typ=(fonction_sdaster,formule)), - C188 =SIMP(statut='f',typ=(fonction_sdaster,formule)), - C189 =SIMP(statut='f',typ=(fonction_sdaster,formule)), - C190 =SIMP(statut='f',typ=(fonction_sdaster,formule)), - C191 =SIMP(statut='f',typ=(fonction_sdaster,formule)), - C192 =SIMP(statut='f',typ=(fonction_sdaster,formule)), - C193 =SIMP(statut='f',typ=(fonction_sdaster,formule)), - C194 =SIMP(statut='f',typ=(fonction_sdaster,formule)), - C195 =SIMP(statut='f',typ=(fonction_sdaster,formule)), - C196 =SIMP(statut='f',typ=(fonction_sdaster,formule)), - C197 =SIMP(statut='f',typ=(fonction_sdaster,formule)), - ), -### UMAT -### CRITERE DE RUPTURE - CRIT_RUPT =FACT(statut='f', - SIGM_C =SIMP(statut='o',typ='R',fr="contrainte critique"), - COEF =SIMP(statut='o',typ='R',fr="E=E/COEF,si la contrainte principale max est atteinte dans l'element"), - ), -# - - INFO =SIMP(statut='f',typ='I',defaut=1,into=(1,2) ), -) ; - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: mathieu.corus at edf.fr -DEFI_MODELE_GENE=OPER(nom="DEFI_MODELE_GENE",op= 126,sd_prod=modele_gene, - reentrant='n', - fr="Créer la structure globale à partir des sous-structures en sous-structuration dynamique", - UIinfo={"groupes":("Matrices et vecteurs",)}, - SOUS_STRUC =FACT(statut='o',max='**', - NOM =SIMP(statut='o',typ='TXM' ), - MACR_ELEM_DYNA =SIMP(statut='o',typ=macr_elem_dyna ), - ANGL_NAUT =SIMP(statut='o',typ='R',max=3), - TRANS =SIMP(statut='o',typ='R',max=3), - ), - LIAISON =FACT(statut='o',max='**', - SOUS_STRUC_1 =SIMP(statut='o',typ='TXM' ), - INTERFACE_1 =SIMP(statut='o',typ='TXM' ), - SOUS_STRUC_2 =SIMP(statut='o',typ='TXM' ), - INTERFACE_2 =SIMP(statut='o',typ='TXM' ), - regles=(EXCLUS('GROUP_MA_MAIT_1','GROUP_MA_MAIT_2','MAILLE_MAIT_2'), - EXCLUS('MAILLE_MAIT_1','GROUP_MA_MAIT_2','MAILLE_MAIT_2'),), - GROUP_MA_MAIT_1 =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - MAILLE_MAIT_1 =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), - GROUP_MA_MAIT_2 =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - MAILLE_MAIT_2 =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), - OPTION =SIMP(statut='f',typ='TXM',defaut="CLASSIQUE",into=("REDUIT","CLASSIQUE") ), - ), - VERIF =FACT(statut='f',max='**', -# dans la doc U stop_erreur est obligatoire - STOP_ERREUR =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON") ), - PRECISION =SIMP(statut='f',typ='R',defaut= 1.E-3 ), - CRITERE =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU") ), - ), - INFO =SIMP(statut='f',typ='I',defaut= 1,into=( 1 , 2) ), -) ; - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2012 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: mathieu.courtois at edf.fr -DEFI_NAPPE=OPER(nom="DEFI_NAPPE",op=4,sd_prod=nappe_sdaster, - fr="Définir une fonction réelle de deux variables réelles", - reentrant='n',UIinfo={"groupes":("Fonctions",)}, - regles=(UN_PARMI('FONCTION','DEFI_FONCTION'), - EXCLUS('FONCTION','NOM_PARA_FONC',), - ENSEMBLE('NOM_PARA_FONC','DEFI_FONCTION'),), - NOM_PARA =SIMP(statut='o',typ='TXM',into=C_PARA_FONCTION() ), - NOM_RESU =SIMP(statut='f',typ='TXM',defaut="TOUTRESU"), - PARA =SIMP(statut='o',typ='R',max='**'), - FONCTION =SIMP(statut='f',typ=fonction_sdaster, max='**' ), - NOM_PARA_FONC =SIMP(statut='f',typ='TXM',into=C_PARA_FONCTION() ), - DEFI_FONCTION =FACT(statut='f',max='**', - VALE =SIMP(statut='o',typ='R',max='**'), - INTERPOL =SIMP(statut='f',typ='TXM',max=2,defaut="LIN",into=("NON","LIN","LOG"), - fr="Type d'interpolation pour les abscisses et les ordonnées de la fonction."), - PROL_DROITE =SIMP(statut='f',typ='TXM',defaut="EXCLU",into=("CONSTANT","LINEAIRE","EXCLU") ), - PROL_GAUCHE =SIMP(statut='f',typ='TXM',defaut="EXCLU",into=("CONSTANT","LINEAIRE","EXCLU") ), - ), - INTERPOL =SIMP(statut='f',typ='TXM',max=2,defaut="LIN",into=("NON","LIN","LOG"), - fr="Type d'interpolation pour le paramètre de la nappe"), - PROL_DROITE =SIMP(statut='f',typ='TXM',defaut="EXCLU",into=("CONSTANT","LINEAIRE","EXCLU") ), - PROL_GAUCHE =SIMP(statut='f',typ='TXM',defaut="EXCLU",into=("CONSTANT","LINEAIRE","EXCLU") ), - INFO =SIMP(statut='f',typ='I',defaut= 1,into=(1, 2) ), - VERIF =SIMP(statut='f',typ='TXM',into=("CROISSANT",) ), - TITRE =SIMP(statut='f',typ='TXM',max='**'), -) ; - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: marc.kham at edf.fr -DEFI_OBSTACLE=OPER(nom="DEFI_OBSTACLE",op= 73,sd_prod=table_fonction, - fr="Définition d'un obstacle plan perpendiculaire à une structure filaire", - reentrant='n', - UIinfo={"groupes":("Modélisation",)}, - TYPE =SIMP(statut='o',typ='TXM',defaut="CERCLE", - into=("CERCLE","PLAN_Y","PLAN_Z","DISCRET", - "BI_CERCLE","BI_PLAN_Y","BI_PLAN_Z","BI_CERC_INT", - ) ), - VALE =SIMP(statut='f',typ='R',max='**'), - VERIF =SIMP(statut='f',typ='TXM',defaut="FERME"), -) ; - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2004 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: aimery.assire at edf.fr - -DEFI_PART_OPS=OPER(nom="DEFI_PART_OPS",op=21,sd_prod=sd_partit, - fr="Creation partitionnement en sous-domaines", - docu="U4.23.05",reentrant='n', - UIinfo={"groupes":("Modélisation",)}, - MODELE =SIMP(statut='o',typ=(modele_sdaster) ), - MAILLAGE =SIMP(statut='f',typ=(maillage_sdaster) ), - NOM =SIMP(statut='f',typ='TXM',defaut='SD'), - INFO =SIMP(statut='f',typ='I',defaut=1,into=(1,2,3,4) ), - DEFI =FACT(statut='f',max='**', - GROUP_MA =SIMP(statut='o',typ=grma), - GROUP_MA_BORD =SIMP(statut='f',typ=grma), - ), - EXCIT =FACT(statut='f',max='**', - CHARGE =SIMP(statut='f',typ=(char_meca,char_cine_meca)), - ), -); - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2005 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: aimery.assire at edf.fr - -DEFI_PART_PA_OPS=PROC(nom="DEFI_PART_PA_OPS",op=29, - fr="Creation partitionnement en sous-domaines", - docu="U4.00.00", - UIinfo={"groupes":("Modélisation",)}, - MAILLAGE =SIMP(statut='o',typ=(maillage_sdaster,squelette) ), - MODELE =SIMP(statut='f',typ=(modele_sdaster)), - NB_PART =SIMP(statut='o',typ='I',), - - # Methode de partitionnement - METHODE =SIMP(statut='f',typ='TXM',into=("PMETIS","SCOTCH","KMETIS",), defaut="KMETIS" ), - - LOGICIEL =SIMP(statut='f',typ='TXM'), - - # Corrige les problemes possibles de non-connexite des sous-domaines - CORRECTION_CONNEX =SIMP(statut='f',typ='TXM',defaut='NON',into=('OUI','NON')), - - # Permet de grouper des mailles dans un meme sous-doamine - GROUPAGE =FACT(statut='f',max='**', - GROUP_MA =SIMP(statut='o',typ=grma,), - ), - # Permet d'appliquer des poids sur certaines mailles - POIDS_MAILLES =FACT(statut='f',max='**', - GROUP_MA =SIMP(statut='o',typ=grma,), - POIDS =SIMP(statut='f',typ='I'), - ), - # Prefixe pour le nom des group_ma definissant les sous-domaines - NOM_GROUP_MA =SIMP(statut='f',typ='TXM',defaut='SD' ), - - # Traiter les mailles de bords (elles sont enlevees du graphe puis reinjectees) - TRAITER_BORDS =SIMP(statut='f',typ='TXM',defaut='OUI',into=('OUI','NON') ), - - # Si le mot-clé suivant est renseigné, crée de nouveau group_ma a partir des bords - b_traiter_bords =BLOC(condition="TRAITER_BORDS == 'OUI'", fr="Crée t on des nouveaux group_ma", - NOM_GROUP_MA_BORD =SIMP(statut='f',typ='TXM'), - ), - - INFO =SIMP(statut='f',typ='I',into=(1, 2), defaut=1), - -); - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2011 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: aimery.assire at edf.fr - - -DEFI_PARTITION=MACRO(nom="DEFI_PARTITION", - op=OPS('Macro.defi_partition_ops.defi_partition_ops'), - sd_prod=sd_partit, - reentrant='n',UIinfo={"groupes":("Modélisation",)}, - fr="Creation partitionnement en sous-domaines", - regles=(UN_PARMI('MAILLAGE','MODELE'),PRESENT_PRESENT('MODELE','EXCIT'),), - - NB_PART =SIMP(statut='o',typ='I',val_min=2), - MAILLAGE =SIMP(statut='f',typ=maillage_sdaster), - MODELE =SIMP(statut='f',typ=modele_sdaster), - EXCIT =FACT(statut='f',max='**', - CHARGE =SIMP(statut='f',typ=(char_meca,char_cine_meca)),), - - # Methode de partitionnement - METHODE =SIMP(statut='f',typ='TXM',into=("PMETIS","SCOTCH","KMETIS",), defaut="KMETIS" ), - - LOGICIEL =SIMP(statut='f',typ='TXM'), - - # Corrige les problemes possibles de non-connexite des sous-domaines - CORRECTION_CONNEX =SIMP(statut='f',typ='TXM',defaut='NON',into=('OUI','NON')), - - # Permet de grouper des mailles dans un meme sous-doamine - GROUPAGE =FACT(statut='f',max='**', - GROUP_MA =SIMP(statut='o',typ=grma,), - ), - # Permet d'appliquer des poids sur certaines mailles - POIDS_MAILLES =FACT(statut='f',max='**', - GROUP_MA =SIMP(statut='o',typ=grma,), - POIDS =SIMP(statut='f',typ='I',val_min=2), - ), - # Prefixe pour le nom des group_ma definissant les sous-domaines - NOM_GROUP_MA =SIMP(statut='f',typ='TXM',defaut='SD' ), - - # Traiter les mailles de bords (elles sont enlevees du graphe puis reinjectees) - TRAITER_BORDS =SIMP(statut='f',typ='TXM',defaut='OUI',into=('OUI','NON') ), - - # Si le mot-clé suivant est renseigné, crée de nouveau group_ma a partir des bords - b_traiter_bords =BLOC(condition="TRAITER_BORDS == 'OUI'", fr="Crée t on des nouveaux group_ma", - NOM_GROUP_MA_BORD =SIMP(statut='f',typ='TXM'), - ), - - INFO =SIMP(statut='f',typ='I',into=(1, 2), defaut=1), -); - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2011 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: mathieu.courtois at edf.fr - - -DEFI_SOL_MISS = MACRO(nom="DEFI_SOL_MISS", - op=OPS('Macro.defi_sol_miss_ops.defi_sol_miss_ops'), - sd_prod=table_sdaster, - fr="Définition des données de sol pour Miss", - reentrant='n', - UIinfo={"groupes":("Modélisation","Outils-métier",)}, - MATERIAU = FACT(statut='o', max='**', - fr="Définition des matériaux", - E = SIMP(statut='o', typ='R', fr="Module d'Young"), - NU = SIMP(statut='o', typ='R', fr="Coefficient de Poisson"), - RHO = SIMP(statut='o', typ='R', fr="Masse volumique"), - AMOR_HYST = SIMP(statut='o', typ='R', fr="Coefficient d'amortissement"), - ), - COUCHE = FACT(statut='o', max='**', - fr="Définition des couches", - regles=(AU_MOINS_UN('EPAIS','SUBSTRATUM'),), - SUBSTRATUM= SIMP(statut='f', typ='TXM', into=("OUI","NON"),), - EPAIS = SIMP(statut='f', typ='R', fr="Epaisseur de la couche"), - RECEPTEUR = SIMP(statut='f', typ='TXM', defaut="NON", into=("OUI", "NON"),), - SOURCE = SIMP(statut='f', typ='TXM', defaut="NON", into=("OUI", "NON"),), - NUME_MATE = SIMP(statut='o', typ='I', fr="Numéro du matériau"), - ), - TITRE = SIMP(statut='f', typ='TXM', max='**', - fr="Titre de la table produite"), - INFO = SIMP(statut='f', typ='I', defaut=1, into=(1,2)), -) - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2013 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: andre.adobes at edf.fr -DEFI_SPEC_TURB=OPER(nom="DEFI_SPEC_TURB",op= 145,sd_prod=spectre_sdaster, - fr="Definition d'un spectre d'excitation turbulente", - reentrant='n', - UIinfo={"groupes":("Modelisation","Outils-metier",)}, - regles=(UN_PARMI('SPEC_LONG_COR_1','SPEC_LONG_COR_2','SPEC_LONG_COR_3', - 'SPEC_LONG_COR_4','SPEC_CORR_CONV_1','SPEC_CORR_CONV_2', - 'SPEC_CORR_CONV_3','SPEC_FONC_FORME','SPEC_EXCI_POINT'),), - SPEC_LONG_COR_1 =FACT(statut='f', - LONG_COR =SIMP(statut='o',typ='R' ), - PROF_VITE_FLUI =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule) ), - VISC_CINE =SIMP(statut='o',typ='R' ), - ), - SPEC_LONG_COR_2 =FACT(statut='f', - regles=(ENSEMBLE('FREQ_COUP','PHI0','BETA' ),), - LONG_COR =SIMP(statut='o',typ='R' ), - PROF_VITE_FLUI =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule) ), - FREQ_COUP =SIMP(statut='f',typ='R',defaut= 0.1 ), - PHI0 =SIMP(statut='f',typ='R',defaut= 1.5E-3 ), - BETA =SIMP(statut='f',typ='R',defaut= 2.7 ), - ), - SPEC_LONG_COR_3 =FACT(statut='f', - regles=(ENSEMBLE('PHI0_1','BETA_1','PHI0_2','BETA_2','FREQ_COUP'),), - LONG_COR =SIMP(statut='o',typ='R' ), - PROF_VITE_FLUI =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule) ), - FREQ_COUP =SIMP(statut='f',typ='R',defaut= 0.2 ), - PHI0_1 =SIMP(statut='f',typ='R',defaut= 5.E-3 ), - BETA_1 =SIMP(statut='f',typ='R',defaut= 0.5 ), - PHI0_2 =SIMP(statut='f',typ='R',defaut= 4.E-5 ), - BETA_2 =SIMP(statut='f',typ='R',defaut= 3.5 ), - ), - SPEC_LONG_COR_4 =FACT(statut='f', - regles=(ENSEMBLE('BETA','GAMMA'),), - LONG_COR =SIMP(statut='o',typ='R' ), - PROF_VITE_FLUI =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule) ), - TAUX_VIDE =SIMP(statut='o',typ='R' ), - BETA =SIMP(statut='f',typ='R',defaut= 2. ), - GAMMA =SIMP(statut='f',typ='R',defaut= 4. ), - ), - SPEC_CORR_CONV_1=FACT(statut='f', - LONG_COR_1 =SIMP(statut='o',typ='R' ), - LONG_COR_2 =SIMP(statut='f',typ='R' ), - VITE_FLUI =SIMP(statut='o',typ='R' ), - RHO_FLUI =SIMP(statut='o',typ='R' ), - FREQ_COUP =SIMP(statut='f',typ='R' ), - K =SIMP(statut='f',typ='R',defaut= 5.8E-3 ), - D_FLUI =SIMP(statut='o',typ='R' ), - COEF_VITE_FLUI_A=SIMP(statut='f',typ='R' ), - COEF_VITE_FLUI_O=SIMP(statut='f',typ='R' ), - METHODE =SIMP(statut='f',typ='TXM',defaut="GENERALE", - into=("AU_YANG","GENERALE","CORCOS") ), - ), - SPEC_CORR_CONV_2=FACT(statut='f', - FONCTION =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule) ), - VITE_FLUI =SIMP(statut='o',typ='R' ), - FREQ_COUP =SIMP(statut='f',typ='R' ), - METHODE =SIMP(statut='f',typ='TXM',defaut="GENERALE", - into=("AU_YANG","GENERALE","CORCOS",) ), - COEF_VITE_FLUI_A=SIMP(statut='f',typ='R' ), - COEF_VITE_FLUI_O=SIMP(statut='f',typ='R' ), - ), - SPEC_CORR_CONV_3=FACT(statut='f', - TABLE_FONCTION =SIMP(statut='o',typ=(table_fonction) ), - ), - SPEC_FONC_FORME =FACT(statut='f', - regles=(UN_PARMI('INTE_SPEC','GRAPPE_1'), - ENSEMBLE('INTE_SPEC','FONCTION'),), - INTE_SPEC =SIMP(statut='f',typ=interspectre), - FONCTION =SIMP(statut='f',typ=(table_fonction),max='**'), - GRAPPE_1 =SIMP(statut='f',typ='TXM',into=("DEBIT_180","DEBIT_300",) ), - NOEUD =SIMP(statut='o',typ=no), - CARA_ELEM =SIMP(statut='o',typ=cara_elem ), - MODELE =SIMP(statut='o',typ=modele_sdaster ), - ), - SPEC_EXCI_POINT =FACT(statut='f', - regles=(UN_PARMI('INTE_SPEC','GRAPPE_2'),), - INTE_SPEC =SIMP(statut='f',typ=interspectre), - GRAPPE_2 =SIMP(statut='f',typ='TXM', - into=("ASC_CEN","ASC_EXC","DES_CEN","DES_EXC",) ), -# Quels sont les statuts des mots cles a l interieur des deux blocs qui suivent - b_inte_spec =BLOC(condition = "INTE_SPEC != None", - NATURE =SIMP(statut='o',typ='TXM',max='**',into=("FORCE","MOMENT",) ), - ANGLE =SIMP(statut='o',typ='R',max='**'), - NOEUD =SIMP(statut='o',typ=no,max='**'), - ), - b_grappe_2 =BLOC(condition = "GRAPPE_2 != None", - RHO_FLUI =SIMP(statut='o',typ='R' ), - NOEUD =SIMP(statut='o',typ=no), - ), - CARA_ELEM =SIMP(statut='o',typ=cara_elem ), - MODELE =SIMP(statut='o',typ=modele_sdaster ), - ), - TITRE =SIMP(statut='f',typ='TXM',max='**'), -); - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2011 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: mathieu.corus at edf.fr -DEFI_SQUELETTE=OPER(nom="DEFI_SQUELETTE",op= 110,sd_prod=squelette, - fr="Définit un maillage pour visualiser les résultats d'une sous-structuration dynamique", - reentrant='n', - UIinfo={"groupes":("Maillage","Dynamique",)}, - regles=(UN_PARMI('CYCLIQUE','MODELE_GENE','MAILLAGE'), - PRESENT_PRESENT('CYCLIQUE','SECTEUR'), - EXCLUS('SOUS_STRUC','SECTEUR'), - PRESENT_PRESENT('NOM_GROUP_MA','MODELE_GENE'), - PRESENT_PRESENT('NOM_GROUP_MA','SOUS_STRUC'),), - CYCLIQUE =FACT(statut='f',max='**', - regles=(UN_PARMI('MODE_CYCL','MAILLAGE'), - PRESENT_PRESENT('NB_SECTEUR','MAILLAGE'),), - MODE_CYCL =SIMP(statut='f',typ=mode_cycl ), - NB_SECTEUR =SIMP(statut='f',typ='I',validators=NoRepeat(),max=1 ), - MAILLAGE =SIMP(statut='f',typ=maillage_sdaster ), - ), - MODELE_GENE =SIMP(statut='f',typ=modele_gene ), - SQUELETTE =SIMP(statut='f',typ=squelette ), - RECO_GLOBAL =FACT(statut='f',max='**', - regles=(EXCLUS('TOUT','GROUP_NO_1'), - PRESENT_PRESENT('GROUP_NO_1','GROUP_NO_2'), - PRESENT_PRESENT('GROUP_NO_1','SOUS_STRUC_1'), - PRESENT_PRESENT('GROUP_NO_2','SOUS_STRUC_2'), - PRESENT_PRESENT('SOUS_STRUC_1','SOUS_STRUC_2'),), - TOUT =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI",) ), - GROUP_NO_1 =SIMP(statut='f',typ=grno), - SOUS_STRUC_1 =SIMP(statut='f',typ='TXM' ), - GROUP_NO_2 =SIMP(statut='f',typ=grno), - SOUS_STRUC_2 =SIMP(statut='f',typ='TXM' ), - PRECISION =SIMP(statut='f',typ='R',defaut= 1.E-3 ), - CRITERE =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU") ), - DIST_REFE =SIMP(statut='f',typ='R' ), - ), - NOM_GROUP_MA =FACT(statut='f',max='**', - NOM =SIMP(statut='o',typ='TXM' ), - SOUS_STRUC =SIMP(statut='o',typ='TXM' ), - GROUP_MA =SIMP(statut='o',typ=grma), - ), - EXCLUSIF =SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON") ), - MAILLAGE =SIMP(statut='f',typ=maillage_sdaster ), - MAILLE =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), - GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - TOUT =SIMP(statut='f',typ='TXM',into=("OUI",) ), - TRANS =SIMP(statut='f',typ='R',min=3,max=3), - ANGL_NAUT =SIMP(statut='f',typ='R',min=3,max=3), - SOUS_STRUC =FACT(statut='f',max='**', - regles=(UN_PARMI('TOUT','MAILLE','GROUP_MA'),), - NOM =SIMP(statut='o',typ='TXM' ), - MAILLE =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), - GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - TOUT =SIMP(statut='f',typ='TXM',into=("OUI",) ), - ), - SECTEUR =FACT(statut='f',max='**', - MAILLE =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), - GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - TOUT =SIMP(statut='f',typ='TXM',into=("OUI",) ), - ), - TITRE =SIMP(statut='f',typ='TXM',max='**'), -) ; - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: renaud.bargellini at edf.fr -DEFI_TRC=OPER(nom="DEFI_TRC",op=94,sd_prod=table_sdaster,reentrant='n', - UIinfo={"groupes":("Modélisation","Thermique",)}, - fr="Définir d'un diagramme de transformations en refroidissement continu (TRC) de référence d'un acier" - +" pour les calculs métallurgiques.", - HIST_EXP =FACT(statut='o',max='**', - VALE =SIMP(statut='o',typ='R',max='**'), - ), - TEMP_MS =FACT(statut='o',max='**', - SEUIL =SIMP(statut='o',typ='R'), - AKM =SIMP(statut='o',typ='R'), - BKM =SIMP(statut='o',typ='R'), - TPLM =SIMP(statut='o',typ='R'), - ), - GRAIN_AUST =FACT(statut='f',max='**', - DREF =SIMP(statut='f',typ='R'), - A =SIMP(statut='f',typ='R'), - ), -) ; - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: jacques.pellet at edf.fr -def depl_interne_prod(DEPL_GLOBAL,**args ): - if AsType(DEPL_GLOBAL) == cham_no_sdaster: return cham_no_sdaster - if AsType(DEPL_GLOBAL) == evol_elas : return evol_elas - if AsType(DEPL_GLOBAL) == dyna_trans : return dyna_trans - if AsType(DEPL_GLOBAL) == dyna_harmo : return dyna_harmo - if AsType(DEPL_GLOBAL) == mode_meca : return mode_meca - if AsType(DEPL_GLOBAL) == mode_meca_c : return mode_meca_c - raise AsException("type de concept resultat non prevu") - -DEPL_INTERNE=OPER(nom="DEPL_INTERNE",op=89,sd_prod=depl_interne_prod,reentrant='n', - UIinfo={"groupes":("Matrices et vecteurs",)}, - fr="Calculer le champ de déplacement à l'intérieur d'une sous-structure statique", - DEPL_GLOBAL =SIMP(statut='o',typ=(cham_no_sdaster,mode_meca,mode_meca_c,evol_elas,dyna_trans,dyna_harmo),), - SUPER_MAILLE =SIMP(statut='o',typ=ma,), - NOM_CAS =SIMP(statut='f',typ='TXM',defaut=" "), -) ; - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2012 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: j-pierre.lefebvre at edf.fr -DETRUIRE=MACRO(nom="DETRUIRE", - op=OPS("Cata.ops.DETRUIRE"), - UIinfo={"groupes":("Gestion du travail",)}, - fr="Détruit des concepts utilisateurs dans la base GLOBALE ou des objets JEVEUX", - op_init=ops.build_detruire, - regles=(UN_PARMI('CONCEPT', 'OBJET',),), - - CONCEPT = FACT(statut='f',max='**', - NOM = SIMP(statut='o',typ=assd,validators=NoRepeat(),max='**'), - ), - OBJET = FACT(statut='f',max='**', - CLASSE = SIMP(statut='f', typ='TXM', into=('G', 'V', 'L'), defaut='G'), - CHAINE = SIMP(statut='o', typ='TXM', validators=NoRepeat(), max='**'), - POSITION = SIMP(statut='f', typ='I', max='**'), - ), - INFO = SIMP(statut='f', typ='I', into=(1, 2), defaut=2, ), -) - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2012 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: irmela.zentner at edf.fr -DYNA_ALEA_MODAL=OPER(nom="DYNA_ALEA_MODAL",op= 131,sd_prod=interspectre, - fr="Calcul de la réponse spectrale d'une structure linéaire sous une excitation connue par sa DSP", - reentrant='n', - UIinfo={"groupes":("Résolution","Dynamique",)}, - BASE_MODALE =FACT(statut='o', - regles=(UN_PARMI('NUME_ORDRE','BANDE'),), - MODE_MECA =SIMP(statut='o',typ=mode_meca ), - BANDE =SIMP(statut='f',typ='R',validators=NoRepeat(),max=2), - NUME_ORDRE =SIMP(statut='f',typ='I',validators=NoRepeat(),max='**'), - b_bande =BLOC(condition = "BANDE != None", - AMOR_UNIF =SIMP(statut='o',typ='R' ), - ), - b_nume_ordre =BLOC(condition = "NUME_ORDRE != None", - AMOR_REDUIT =SIMP(statut='o',typ='R',max='**'), - ), - ), - MODE_STAT =SIMP(statut='f',typ=mode_meca), -# MODE_STAT devrait etre dans EXCIT car est utile et obligatoire que si NOM_CMP=depl_r, on pourrait -# ainsi rajouter un bloc du genre b_mod_stat= BLOC(condition = "(GRANDEUR == None) or (GRANDEUR == 'DEPL_R')", - EXCIT =FACT(statut='o', - INTE_SPEC =SIMP(statut='o',typ=interspectre), - NUME_VITE_FLUI =SIMP(statut='f',typ='I' ), - OPTION =SIMP(statut='f',typ='TXM',defaut="TOUT",into=("TOUT","DIAG",) ), - MODAL =SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON") ), - b_modal_non = BLOC(condition = "(MODAL == None) or (MODAL == 'NON')", - regles=(UN_PARMI('NOEUD_I','NUME_ORDRE_I'),), - NUME_ORDRE_I =SIMP(statut='f',typ='I',max='**'), - NOEUD_I =SIMP(statut='f',typ=no,max='**'), - b_nume_ordre_i =BLOC(condition = "NUME_ORDRE_I != None", - regles=(EXCLUS('CHAM_NO','NOEUD'),), -# on devrait rajouter EXCLUS('GRANDEUR','CHAM_NO') pour eviter ambiguite car CHAM_NO => GRANDEUR='EFFO' -# cela impliquerait d'enlever la valeur par defaut a GRANDEUR - NUME_ORDRE_J =SIMP(statut='o',typ='I',max='**'), - CHAM_NO =SIMP(statut='f',typ=cham_no_sdaster), - NOEUD =SIMP(statut='f',typ=no,max='**'), - b_noeud =BLOC(condition = "NOEUD != None", - NOM_CMP =SIMP(statut='o',typ='TXM',max='**'), - ), - GRANDEUR =SIMP(statut='f',typ='TXM',defaut="DEPL_R", - into=("DEPL_R","EFFO","SOUR_DEBI_VOLU","SOUR_DEBI_MASS","SOUR_PRESS","SOUR_FORCE")), -# que se passe-t-il en cas d'incompatibilite entre GRANDEUR et NOM_CMP - DERIVATION =SIMP(statut='f',typ='I',defaut= 0,into=( 0 , 1 , 2 ) ), - ), - b_noeud_i =BLOC(condition = "NOEUD_I != None", - NOEUD_J =SIMP(statut='o',typ=no,max='**'), - NOM_CMP_I =SIMP(statut='o',typ='TXM',max='**'), - NOM_CMP_J =SIMP(statut='o',typ='TXM',max='**'), - NOEUD =SIMP(statut='o',typ=no,max='**'), - NOM_CMP =SIMP(statut='o',typ='TXM',max='**'), -# ne serait-il pas bien que NOEUD et NOM_CMP soient facultatifs, car l'information peut etre contenue dans -# NOEUD_I, NOM_CMP_I ... => modif. du Fortran - GRANDEUR =SIMP(statut='f',typ='TXM',defaut="DEPL_R", - into=("DEPL_R","EFFO","SOUR_DEBI_VOLU","SOUR_DEBI_MASS","SOUR_PRESS","SOUR_FORCE")), -# que se passe-t-il en cas d'incompatibilite entre GRANDEUR et NOM_CMP_I - DERIVATION =SIMP(statut='f',typ='I',defaut= 0,into=( 0 , 1 , 2 ) ), - ), - ), - b_modal_oui = BLOC(condition = "(MODAL == 'OUI')", -# dans ce cas, y-a-t-il vraiment la possibilite d'une matrice interspectrale avec plusieurs termes - NUME_ORDRE_I =SIMP(statut='o',typ='I',max='**'), - NUME_ORDRE_J =SIMP(statut='o',typ='I',max='**'), - GRANDEUR =SIMP(statut='f',typ='TXM',defaut="DEPL_R", - into=("DEPL_R","EFFO","SOUR_DEBI_VOLU","SOUR_DEBI_MASS","SOUR_PRESS","SOUR_FORCE")), - DERIVATION =SIMP(statut='f',typ='I',defaut= 0,into=( 0 , 1 , 2 ) ), -# dans le cas MODAL=OUI, GRANDEUR peut-il etre different de EFFO et doit il etre impose a EFFO On devrait -# pouvoir supprimer GRANDEUR et DERIVATION ici - ), - - ), - REPONSE =FACT(statut='f', - regles=( ENSEMBLE('FREQ_MIN','FREQ_MAX'),), - DERIVATION =SIMP(statut='f',typ='I',defaut= 0,into=( 0 , 1 , 2 ,) ), - OPTION =SIMP(statut='f',typ='TXM',defaut="TOUT",into=("TOUT","DIAG") ), - FREQ_MIN =SIMP(statut='f',typ='R' ), - FREQ_MAX =SIMP(statut='f',typ='R' ), - PAS =SIMP(statut='f',typ='R' ), - b_defaut_freq =BLOC(condition = "FREQ_MIN == NONE", - FREQ_EXCIT =SIMP(statut='f',typ='TXM',defaut="AVEC",into=("AVEC","SANS") ), - NB_POIN_MODE =SIMP(statut='f',typ='I',defaut= 50 ), - ), - ), - TITRE =SIMP(statut='f',typ='TXM',max='**'), - INFO =SIMP(statut='f',typ='I',defaut= 1,into=( 1 , 2) ), -) ; - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2012 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: irmela.zentner at edf.fr - -def dyna_iss_vari_prod(self, FONC_SIGNAL,**args): - if FONC_SIGNAL !=None : - return tran_gene - else: - return interspectre - raise AsException("type de concept resultat non prevu") - -DYNA_ISS_VARI=MACRO(nom="DYNA_ISS_VARI", - op=OPS('Macro.dyna_iss_vari_ops.dyna_iss_vari_ops'), - sd_prod=dyna_iss_vari_prod, - fr="Calcul du spectre de réponse ou de la reponse temporelle " \ - "sismique incoherente par decomposition spectrale", - reentrant='n', - UIinfo={"groupes":("Outils métier",)}, - regles=(UN_PARMI('FONC_SIGNAL','NB_FREQ'),), - FONC_SIGNAL =SIMP(statut='f',typ=(fonction_sdaster) ), - NB_FREQ =SIMP(statut='f',typ='I' ), - NOM_CMP =SIMP(statut='o',typ='TXM',into=("DX","DY","DZ") ), - PRECISION =SIMP(statut='f',typ='R',defaut=0.999 ), - ISSF =SIMP(statut='f',typ='TXM',into=("OUI","NON",),defaut="NON"), - INTERF =FACT(statut='o', - GROUP_NO_INTERF =SIMP(statut='o',typ=grno,), - MODE_INTERF =SIMP(statut='o',typ='TXM',into=("CORP_RIGI","TOUT","QUELCONQUE")), - ), - MATR_COHE =FACT(statut='o', - TYPE = SIMP(statut='o',typ='TXM' , into=("MITA_LUCO","ABRAHAMSON") ), - b_type_coh = BLOC(condition="TYPE=='MITA_LUCO' ", - VITE_ONDE =SIMP(statut='f',typ='R', defaut=600.), - PARA_ALPHA =SIMP(statut='f',typ='R',defaut=0.5),), - ), -# LIST_FREQ =SIMP(statut='o',typ='liste' ), - UNITE_RESU_FORC = SIMP(statut='f',typ='I',defaut=33), - UNITE_RESU_IMPE = SIMP(statut='f',typ='I',defaut=32), - TYPE = SIMP(statut='f',typ='TXM', into=("BINAIRE","ASCII"), defaut="ASCII"), -# NOM_CHAM =SIMP(statut='f',typ='TXM',into=("DEPL","VITE","ACCE") , validators=NoRepeat(),max=3,defaut="DEPL" ), -# - MATR_GENE = FACT(statut='o', - MATR_MASS = SIMP(statut='o',typ=(matr_asse_gene_r ) ), - MATR_RIGI = SIMP(statut='o',typ=(matr_asse_gene_r,matr_asse_gene_c ) ), - MATR_AMOR = SIMP(statut='f',typ=(matr_asse_gene_r,matr_asse_gene_c ) ), - ), -# - INFO =SIMP(statut='f',typ='I' ,defaut=1,into=( 1 , 2)), -# - b_type_trans = BLOC(condition="FONC_SIGNAL !=None", - FREQ_MAX =SIMP(statut='f',typ='R' ), - FREQ_PAS =SIMP(statut='f',typ='R' ), - regles=( ENSEMBLE('FREQ_MAX','FREQ_PAS'), ) - - ), - - b_type_spec = BLOC(condition="NB_FREQ != None", - FREQ_INIT =SIMP(statut='o',typ='R' ), - FREQ_PAS =SIMP(statut='o',typ='R' ), - OPTION = SIMP(statut='f',typ='TXM',into=("TOUT","DIAG"),defaut="TOUT"), - ), - - - ) ; - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2012 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: harinaivo.andriambololona at edf.fr -def dyna_line_harm_prod(MATR_RIGI,**args): - if (AsType(MATR_RIGI) == matr_asse_depl_r) : return dyna_harmo - elif (AsType(MATR_RIGI) == matr_asse_depl_c) : return dyna_harmo - elif (AsType(MATR_RIGI) == matr_asse_pres_c) : return acou_harmo - elif (AsType(MATR_RIGI) == matr_asse_gene_r) : return harm_gene - elif (AsType(MATR_RIGI) == matr_asse_gene_c) : return harm_gene - raise AsException("type de concept resultat non prevu") - -DYNA_LINE_HARM=OPER(nom="DYNA_LINE_HARM",op= 60,sd_prod=dyna_line_harm_prod, - fr="Calcul de la réponse dynamique complexe d'un système à une excitation harmonique", - reentrant='f', - UIinfo={"groupes":("Résolution","Dynamique",)}, - regles=(PRESENT_ABSENT('MATR_AMOR','AMOR_MODAL'), - UN_PARMI('FREQ','LIST_FREQ'),), - CHAM_MATER =SIMP(statut='f',typ=cham_mater ), - CARA_ELEM =SIMP(statut='f',typ=cara_elem ), - MATR_MASS =SIMP(statut='o',typ=(matr_asse_depl_r,matr_asse_pres_c,matr_asse_gene_r ) ), - MATR_RIGI =SIMP(statut='o',typ=(matr_asse_depl_r,matr_asse_depl_c,matr_asse_pres_c - ,matr_asse_gene_r,matr_asse_gene_c ) ), - MATR_AMOR =SIMP(statut='f',typ=(matr_asse_depl_r,matr_asse_pres_c,matr_asse_gene_r ) ), - AMOR_MODAL =FACT(statut='f', max=1, - regles=(EXCLUS('AMOR_REDUIT','LIST_AMOR'),), - AMOR_REDUIT =SIMP(statut='f',typ='R',max='**'), - LIST_AMOR =SIMP(statut='f',typ=listr8_sdaster ), - ), - MATR_IMPE_PHI =SIMP(statut='f',typ=(matr_asse_depl_r,matr_asse_gene_r) ), - FREQ =SIMP(statut='f',typ='R',validators=NoRepeat(),max='**'), - LIST_FREQ =SIMP(statut='f',typ=listr8_sdaster ), - TOUT_CHAM =SIMP(statut='f',typ='TXM',into=("OUI",)), - NOM_CHAM =SIMP(statut='f',typ='TXM',validators=NoRepeat(),max=3,into=("DEPL","VITE","ACCE") ), - b_reuse =BLOC(condition = "reuse",fr="en mode concept reentrant : RESULTAT obligatoire", - RESULTAT =SIMP(statut='o',typ=(dyna_harmo,harm_gene)), - ), - EXCIT =FACT(statut='o',max='**', - regles=(UN_PARMI('VECT_ASSE','VECT_ASSE_GENE','CHARGE'), - UN_PARMI('FONC_MULT','FONC_MULT_C','COEF_MULT','COEF_MULT_C'), - ), - VECT_ASSE =SIMP(statut='f',position='global',typ=cham_no_sdaster), - VECT_ASSE_GENE =SIMP(statut='f',position='global',typ=vect_asse_gene), - CHARGE =SIMP(statut='f',position='global', typ=char_meca ), - FONC_MULT_C =SIMP(statut='f',typ=(fonction_c,formule_c) ), - COEF_MULT_C =SIMP(statut='f',typ='C' ), - FONC_MULT =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - COEF_MULT =SIMP(statut='f',typ='R' ), - PHAS_DEG =SIMP(statut='f',typ='R',defaut= 0.E+0 ), - PUIS_PULS =SIMP(statut='f',typ='I',defaut= 0 ), - ), - b_modele_char =BLOC(condition = " CHARGE != None ", - MODELE =SIMP(statut='o',typ=modele_sdaster ), - ), - b_modele_vect =BLOC(condition = " VECT_ASSE != None ", - MODELE =SIMP(statut='f',typ=modele_sdaster ), - ), - EXCIT_RESU =FACT(statut='f',max='**', - RESULTAT =SIMP(statut='o',typ=(dyna_harmo,harm_gene)), - COEF_MULT_C =SIMP(statut='o',typ='C' ), - ), -#------------------------------------------------------------------- -# Catalogue commun SOLVEUR - b_matr_gene =BLOC(condition = "AsType(MATR_MASS) in (matr_asse_gene_r,)", - fr="Methode de resolution matrice generalisee", - SOLVEUR =C_SOLVEUR('DYNA_LINE_HARM','GENE'), - ), - - b_matr_phys =BLOC(condition = "AsType(MATR_MASS) in (matr_asse_depl_r,matr_asse_pres_c,)", - fr="Methode de resolution matrice sur ddl physique", - SOLVEUR =C_SOLVEUR('DYNA_LINE_HARM','PHYS'), - ), -#------------------------------------------------------------------- - - TITRE =SIMP(statut='f',typ='TXM',max='**'), -) ; - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2012 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: emmanuel.boyere at edf.fr -DYNA_LINE_TRAN=OPER(nom="DYNA_LINE_TRAN",op= 48,sd_prod=dyna_trans, - fr="Calcul de la réponse dynamique transitoire à une excitation temporelle quelconque", - reentrant='f', - UIinfo={"groupes":("Résolution","Dynamique",)}, - MODELE =SIMP(statut='f',typ=modele_sdaster ), - CHAM_MATER =SIMP(statut='f',typ=cham_mater ), - CARA_ELEM =SIMP(statut='f',typ=cara_elem ), - MATR_MASS =SIMP(statut='o',typ=matr_asse_depl_r ), - MATR_RIGI =SIMP(statut='o',typ=matr_asse_depl_r ), - MATR_AMOR =SIMP(statut='f',typ=matr_asse_depl_r ), - - SCHEMA_TEMPS =FACT(statut='d', - SCHEMA =SIMP(statut='f',typ='TXM',defaut="NEWMARK", - into=("NEWMARK","WILSON","DIFF_CENTRE","ADAPT_ORDRE2")), - b_newmark =BLOC(condition="SCHEMA=='NEWMARK'", - BETA =SIMP(statut='f',typ='R',defaut= 0.25 ), - GAMMA =SIMP(statut='f',typ='R',defaut= 0.5 ), - ), - b_wilson =BLOC(condition="SCHEMA=='WILSON'", - THETA =SIMP(statut='f',typ='R',defaut= 1.4 ), - ), - ), - - ETAT_INIT =FACT(statut='f', - regles=(AU_MOINS_UN('RESULTAT', 'DEPL', 'VITE', 'ACCE'), - PRESENT_ABSENT('RESULTAT', 'DEPL', 'VITE', 'ACCE'),), - RESULTAT =SIMP(statut='f',typ=dyna_trans ), - b_dyna_trans =BLOC(condition = "RESULTAT != None", - regles=(EXCLUS('NUME_ORDRE','INST_INIT' ),), - NUME_ORDRE =SIMP(statut='f',typ='I' ), - INST_INIT =SIMP(statut='f',typ='R' ), - b_inst_init =BLOC(condition = "INST_INIT != None", - CRITERE =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU") ), - b_prec_rela=BLOC(condition="(CRITERE=='RELATIF')", - PRECISION =SIMP(statut='f',typ='R',defaut= 1.E-6,),), - b_prec_abso=BLOC(condition="(CRITERE=='ABSOLU')", - PRECISION =SIMP(statut='o',typ='R',),), - ), - ), - DEPL =SIMP(statut='f',typ=cham_no_sdaster), - VITE =SIMP(statut='f',typ=cham_no_sdaster), - ACCE =SIMP(statut='f',typ=cham_no_sdaster), - ), - EXCIT =FACT(statut='f',max='**', - regles=(UN_PARMI('CHARGE','VECT_ASSE'), - EXCLUS('CHARGE','COEF_MULT'), - EXCLUS('FONC_MULT','COEF_MULT'), - EXCLUS('ACCE','COEF_MULT'), - PRESENT_ABSENT('ACCE','FONC_MULT'), - PRESENT_PRESENT('ACCE','VITE','DEPL'), - # PRESENT_ABSENT('MULT_APPUI','FONC_MULT'), - ), - VECT_ASSE =SIMP(statut='f',typ=cham_no_sdaster), - CHARGE =SIMP(statut='f',typ=char_meca ), - FONC_MULT =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - COEF_MULT =SIMP(statut='f',typ='R' ), - ACCE =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - VITE =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - DEPL =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - MULT_APPUI =SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON") ), - b_mult_appui =BLOC(condition = "MULT_APPUI == 'OUI'", - regles=(EXCLUS('NOEUD','GROUP_NO'),), - DIRECTION =SIMP(statut='f',typ='R',max='**'), - NOEUD =SIMP(statut='f',typ=no ,validators=NoRepeat(),max='**'), - GROUP_NO =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'), - ),), -### - MODE_STAT =SIMP(statut='f',typ=mode_meca), -### - EXCIT_RESU =FACT(statut='f',max='**', - RESULTAT =SIMP(statut='o',typ=dyna_trans ), - COEF_MULT =SIMP(statut='o',typ='R' ), - ), - AMOR_MODAL =FACT(statut='f', - MODE_MECA =SIMP(statut='o',typ=mode_meca ), - AMOR_REDUIT =SIMP(statut='o',typ='R',max='**'), - NB_MODE =SIMP(statut='f',typ='I',defaut= 9999 ), - ), - -#------------------------------------------------------------------- -# Catalogue commun SOLVEUR - SOLVEUR =C_SOLVEUR('DYNA_LINE_TRAN'), -#------------------------------------------------------------------- - INCREMENT =FACT(statut='o',max='**', - regles=(UN_PARMI('LIST_INST','PAS'),), - LIST_INST =SIMP(statut='f',typ=listr8_sdaster ), - PAS =SIMP(statut='f',typ='R' ), - b_pas =BLOC(condition = "PAS != None", - INST_INIT =SIMP(statut='f',typ='R' ), - INST_FIN =SIMP(statut='o',typ='R' ), - ), - b_list_fonc =BLOC(condition = "LIST_INST != None", - regles=(EXCLUS('INST_FIN','NUME_FIN'),), - NUME_FIN =SIMP(statut='f',typ='I' ), - INST_FIN =SIMP(statut='f',typ='R' ), - ), - VITE_MIN =SIMP(statut='f',typ='TXM',defaut="NORM",into=("MAXI","NORM") ), - COEF_MULT_PAS =SIMP(statut='f',typ='R',defaut= 1.1 ), - COEF_DIVI_PAS =SIMP(statut='f',typ='R',defaut= 1.33334 ), - PAS_LIMI_RELA =SIMP(statut='f',typ='R',defaut= 1.E-6 ), - NB_POIN_PERIODE =SIMP(statut='f',typ='I',defaut= 50 ), - NMAX_ITER_PAS =SIMP(statut='f',typ='I',defaut= 16 ), - PAS_MINI =SIMP(statut='f',typ='R' ), - ), - ENERGIE =FACT(statut='f',max=1, - CALCUL =SIMP(statut='f',typ='TXM',into=("OUI",),defaut="OUI",), - ), - ARCHIVAGE =FACT(statut='f',max=1, - regles = (EXCLUS('PAS_ARCH','LIST_INST','INST'),), - LIST_INST = SIMP(statut='f',typ=(listr8_sdaster) ), - INST = SIMP(statut='f',typ='R',validators=NoRepeat(),max='**' ), - PAS_ARCH = SIMP(statut='f',typ='I' ), - CRITERE = SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU") ), - b_prec_rela=BLOC(condition="(CRITERE=='RELATIF')", - PRECISION =SIMP(statut='f',typ='R',defaut= 1.E-6,),), - b_prec_abso=BLOC(condition="(CRITERE=='ABSOLU')", - PRECISION =SIMP(statut='o',typ='R',),), - CHAM_EXCLU =SIMP(statut='f',typ='TXM',validators=NoRepeat(),max='**',into=("DEPL","VITE","ACCE") ), - ), - TITRE =SIMP(statut='f',typ='TXM',max='**'), - INFO =SIMP(statut='f',typ='I',into=(1,2) ), -) ; - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2012 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: nicolas.greffet at edf.fr -# -DYNA_NON_LINE=OPER(nom="DYNA_NON_LINE",op= 70,sd_prod=evol_noli,reentrant='f', - fr="Calcul de l'évolution dynamique d'une structure dont le matériau ou la géométrie ont un comportement non linéaire", - UIinfo={"groupes":("Résolution","Dynamique",)}, - MODELE =SIMP(statut='o',typ=modele_sdaster), - CHAM_MATER =SIMP(statut='o',typ=cham_mater), - MODE_STAT =SIMP(statut='f',typ=mode_meca), - CARA_ELEM =SIMP(statut='f',typ=cara_elem), - MASS_DIAG =SIMP(statut='f',typ='TXM',into=("OUI","NON",) ), - EXCIT =FACT(statut='f',max='**', - regles=(PRESENT_ABSENT('FONC_MULT','ACCE'), - PRESENT_PRESENT('ACCE','VITE','DEPL'), - # PRESENT_ABSENT('MULT_APPUI','FONC_MULT'), - ), - TYPE_CHARGE =SIMP(statut='f',typ='TXM',defaut="FIXE_CSTE", - into=("FIXE_CSTE","SUIV","DIDI")), - CHARGE =SIMP(statut='o',typ=(char_meca,char_cine_meca)), - FONC_MULT =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - DEPL =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - ACCE =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - VITE =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - MULT_APPUI =SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON") ), - DIRECTION =SIMP(statut='f',typ='R',max='**'), - NOEUD =SIMP(statut='f',typ=no ,validators=NoRepeat(),max='**'), - GROUP_NO =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'), - ), - EXCIT_GENE =FACT(statut='f',max='**', - FONC_MULT =SIMP(statut='f',typ=fonction_sdaster,max='**' ), - VECT_GENE =SIMP(statut='f',typ=vect_asse_gene,max='**' ), - ), - CONTACT =SIMP(statut='f',typ=char_contact), - SOUS_STRUC =FACT(statut='f',min=01,max='**', - regles=(UN_PARMI('TOUT','SUPER_MAILLE'),), - CAS_CHARGE =SIMP(statut='o',typ='TXM' ), - TOUT =SIMP(statut='f',typ='TXM',into=("OUI",) ), - SUPER_MAILLE=SIMP(statut='f',typ=ma,validators=NoRepeat(),max='**',), - FONC_MULT =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - ), - AMOR_RAYL_RIGI = SIMP(statut='f',typ='TXM',defaut="TANGENTE",into=("TANGENTE","ELASTIQUE"),), - AMOR_MODAL =FACT(statut='f', - regles=(EXCLUS('AMOR_REDUIT','LIST_AMOR'),), - MODE_MECA =SIMP(statut='f',typ=mode_meca), - AMOR_REDUIT =SIMP(statut='f',typ='R',max='**' ), - LIST_AMOR =SIMP(statut='f',typ=listr8_sdaster ), - NB_MODE =SIMP(statut='f',typ='I',defaut= 9999 ), - REAC_VITE =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON") ), - ), - PROJ_MODAL =FACT(statut='f',max='**', - MODE_MECA =SIMP(statut='o',typ=mode_meca), - NB_MODE =SIMP(statut='f',typ='I',defaut= 9999 ), - regles=(PRESENT_PRESENT('MASS_GENE','RIGI_GENE'),), - MASS_GENE =SIMP(statut='f',typ=matr_asse_gene_r), - RIGI_GENE =SIMP(statut='f',typ=matr_asse_gene_r), - AMOR_GENE =SIMP(statut='f',typ=matr_asse_gene_r), - DEPL_INIT_GENE =SIMP(statut='f',typ=vect_asse_gene), - VITE_INIT_GENE =SIMP(statut='f',typ=vect_asse_gene), - ACCE_INIT_GENE =SIMP(statut='f',typ=vect_asse_gene), - ), -#------------------------------------------------------------------- - COMPORTEMENT =C_COMPORTEMENT('DYNA_NON_LINE'), -#------------------------------------------------------------------- - b_reuse =BLOC(condition = "reuse",fr="en mode concept reentrant : ETAT_INIT obligatoire", - ETAT_INIT =FACT(statut='o', - regles=(AU_MOINS_UN('EVOL_NOLI','DEPL','VITE','ACCE','SIGM','VARI',), - # EXCLUS('EVOL_NOLI','DEPL',), - # EXCLUS('EVOL_NOLI','VITE'), - # EXCLUS('EVOL_NOLI','ACCE'), - # EXCLUS('EVOL_NOLI','SIGM',), - # EXCLUS('EVOL_NOLI','VARI',), - EXCLUS('NUME_ORDRE','INST'), ), - DEPL =SIMP(statut='f',typ=cham_no_sdaster), - VITE =SIMP(statut='f',typ=cham_no_sdaster), - ACCE =SIMP(statut='f',typ=cham_no_sdaster), - SIGM =SIMP(statut='f',typ=(cham_elem,carte_sdaster)), - VARI =SIMP(statut='f',typ=cham_elem), - STRX =SIMP(statut='f',typ=cham_elem), - EVOL_NOLI =SIMP(statut='f',typ=evol_noli), - NUME_ORDRE =SIMP(statut='f',typ='I'), - INST =SIMP(statut='f',typ='R'), - CRITERE =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU") ), - b_prec_rela=BLOC(condition="(CRITERE=='RELATIF')", - PRECISION =SIMP(statut='f',typ='R',defaut= 1.E-6,),), - b_prec_abso=BLOC(condition="(CRITERE=='ABSOLU')", - PRECISION =SIMP(statut='o',typ='R',),), - NUME_DIDI =SIMP(statut='f',typ='I'), - INST_ETAT_INIT =SIMP(statut='f',typ='R'), - ),), - b_not_reuse =BLOC(condition = "not reuse",fr="en mode concept non reentrant : ETAT_INIT facultatif", - ETAT_INIT =FACT(statut='f', - regles=(AU_MOINS_UN('EVOL_NOLI','DEPL','VITE','ACCE','SIGM','VARI',), - # EXCLUS('EVOL_NOLI','DEPL',), - # EXCLUS('EVOL_NOLI','VITE'), - # EXCLUS('EVOL_NOLI','ACCE'), - # EXCLUS('EVOL_NOLI','SIGM',), - # EXCLUS('EVOL_NOLI','VARI',), - EXCLUS('NUME_ORDRE','INST'), ), - DEPL =SIMP(statut='f',typ=cham_no_sdaster), - VITE =SIMP(statut='f',typ=cham_no_sdaster), - ACCE =SIMP(statut='f',typ=cham_no_sdaster), - SIGM =SIMP(statut='f',typ=(cham_elem,carte_sdaster)), - VARI =SIMP(statut='f',typ=cham_elem), - EVOL_NOLI =SIMP(statut='f',typ=evol_noli), - NUME_ORDRE =SIMP(statut='f',typ='I'), - INST =SIMP(statut='f',typ='R'), - CRITERE =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU") ), - b_prec_rela=BLOC(condition="(CRITERE=='RELATIF')", - PRECISION =SIMP(statut='f',typ='R',defaut= 1.E-6,),), - b_prec_abso=BLOC(condition="(CRITERE=='ABSOLU')", - PRECISION =SIMP(statut='o',typ='R',),), - NUME_DIDI =SIMP(statut='f',typ='I'), - INST_ETAT_INIT =SIMP(statut='f',typ='R'), - ),), -#------------------------------------------------------------------- - INCREMENT =C_INCREMENT('MECANIQUE'), -#------------------------------------------------------------------- - SCHEMA_TEMPS =FACT(statut='o', - SCHEMA =SIMP(statut='o',min=1,max=1,typ='TXM', - into=("DIFF_CENT","TCHAMWA","NEWMARK","HHT","THETA_METHODE","KRENK"),), - COEF_MASS_SHIFT =SIMP(statut='f',typ='R',defaut= 0.0E+0 ), - b_tchamwa = BLOC(condition="SCHEMA=='TCHAMWA'", - PHI =SIMP(statut='f',typ='R',defaut= 1.05),), - - b_newmark = BLOC(condition="SCHEMA=='NEWMARK'", - BETA =SIMP(statut='f',typ='R',defaut= 0.25), - GAMMA =SIMP(statut='f',typ='R',defaut= 0.5),), - - b_hht = BLOC(condition="SCHEMA=='HHT'", - ALPHA =SIMP(statut='f',typ='R',defaut= -0.3 ), - MODI_EQUI =SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON"),),), - - b_theta = BLOC(condition="SCHEMA=='THETA_METHODE'", - THETA =SIMP(statut='f',typ='R',defaut= 1.,val_min=0.5,val_max=100. ),), - - b_krenk = BLOC(condition="SCHEMA=='KRENK'", - KAPPA =SIMP(statut='f',typ='R',defaut= 1.0,val_min=1.0,val_max=100. ),), - - b_explicit= BLOC(condition="SCHEMA=='TCHAMWA'or SCHEMA=='DIFF_CENT'", - STOP_CFL =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON"),), - FORMULATION =SIMP(statut='o',typ='TXM',into=("ACCELERATION",),),), - - b_implicit= BLOC(condition="SCHEMA!='TCHAMWA'and SCHEMA!='DIFF_CENT'", - FORMULATION =SIMP(statut='o',max=1,typ='TXM',into=("DEPLACEMENT","VITESSE","ACCELERATION"),),), - ), -#------------------------------------------------------------------- - METHODE =SIMP(statut='d',typ='TXM',defaut="NEWTON",into=("NEWTON","NEWTON_KRYLOV")), - NEWTON =C_NEWTON(), -#------------------------------------------------------------------- - RECH_LINEAIRE =C_RECH_LINEAIRE(), -#------------------------------------------------------------------- - CONVERGENCE =C_CONVERGENCE(), -#------------------------------------------------------------------- - SOLVEUR =C_SOLVEUR('DYNA_NON_LINE'), -#------------------------------------------------------------------- - OBSERVATION =C_OBSERVATION(), -#------------------------------------------------------------------- - ENERGIE =FACT(statut='f',max=1, - CALCUL =SIMP(statut='f',typ='TXM',into=("OUI",),defaut="OUI",), - ), -#------------------------------------------------------------------- - SUIVI_DDL =C_SUIVI_DDL(), -#------------------------------------------------------------------- - AFFICHAGE =C_AFFICHAGE(), -#------------------------------------------------------------------- - ARCHIVAGE =C_ARCHIVAGE(), -#------------------------------------------------------------------- - CRIT_STAB =FACT(statut='f',min=1,max=1, - NB_FREQ =SIMP(statut='f',typ='I',max=1,val_min=1,defaut=3), - COEF_DIM_ESPACE =SIMP(statut='f',typ='I',max=1,val_min=2,defaut=5), - RIGI_GEOM =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON")), - MODI_RIGI =SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON")), - bloc_char_crit=BLOC(condition="(RIGI_GEOM=='OUI')", - CHAR_CRIT =SIMP(statut='f',typ='R',min=2,max=2, - fr="Valeur des deux charges critiques délimitant la bande de recherche en HPP"),), - TYPE =SIMP(statut='f',typ='TXM',defaut="FLAMBEMENT",into=("FLAMBEMENT","STABILITE")), - PREC_INSTAB =SIMP(statut='f',typ='R',defaut=1.E-6,max=1,), - SIGNE =SIMP(statut='f',typ='TXM',defaut=("POSITIF_NEGATIF"),into=("NEGATIF","POSITIF","POSITIF_NEGATIF"),max=1,), - bloc_rigi_geom=BLOC(condition="(RIGI_GEOM=='NON'or MODI_RIGI=='OUI')", - DDL_EXCLUS =SIMP(statut='f',typ='TXM',validators=NoRepeat(),max=40, - into=('DX','DY','DZ','DRX','DRY','DRZ','GRX','PRES','PHI', - 'TEMP','PRE1','PRE2','UI2','UI3','VI2','VI3','WI2','WI3','UO2', - 'UO3','VO2','VO3','WO2','WO3','UI4','UI5','VI4','VI5','WI4', - 'WI5','UO4','UO5','VO4','VO5','WO4','WO5','UI6','UO6','VI6', - 'VO6','WI6','WO6','WO','WI1','WO1','GONF','LIAISON','DCX', - 'DCY','DCZ','H1X','H1Y','H1Z','E1X','E1Y','E1Z','E2X','E2Y','E2Z', - 'E3X','E3Y','E3Z','E4X','E4Y','E4Z','LAGS_C','V11','V12','V13','V21','V22', - 'V23','V31','V32','V33','PRES11','PRES12','PRES13','PRES21','PRES22','PRES23', - 'PRES31','PRES32','PRES33','VARI','LAG_GV','DAMG','DH')), - bloc_type_stab =BLOC(condition= "TYPE == 'STABILITE' and RIGI_GEOM == 'NON'", - DDL_STAB =SIMP(statut='o',typ='TXM',validators=NoRepeat(),min=1,max=40, - into=('DX','DY','DZ','DRX','DRY','DRZ','GRX','PRES','PHI', - 'TEMP','PRE1','PRE2','UI2','UI3','VI2','VI3','WI2','WI3','UO2', - 'UO3','VO2','VO3','WO2','WO3','UI4','UI5','VI4','VI5','WI4', - 'WI5','UO4','UO5','VO4','VO5','WO4','WO5','UI6','UO6','VI6', - 'VO6','WI6','WO6','WO','WI1','WO1','GONF','LIAISON','DCX', - 'DCY','DCZ','H1X','H1Y','H1Z','E1X','E1Y','E1Z','E2X','E2Y','E2Z', - 'E3X','E3Y','E3Z','E4X','E4Y','E4Z','LAGS_C','V11','V12','V13','V21','V22', - 'V23','V31','V32','V33','PRES11','PRES12','PRES13','PRES21','PRES22','PRES23', - 'PRES31','PRES32','PRES33','VARI','LAG_GV','DAMG','DH')),), - ), - regles = (EXCLUS('PAS_CALC','LIST_INST','INST'),), - LIST_INST = SIMP(statut='f',typ=(listr8_sdaster) ), - INST = SIMP(statut='f',typ='R',validators=NoRepeat(),max='**' ), - PAS_CALC = SIMP(statut='f',typ='I' ), - CRITERE = SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU") ), - b_prec_rela=BLOC(condition="(CRITERE=='RELATIF')", - PRECISION =SIMP(statut='f',typ='R',defaut= 1.E-6,),), - b_prec_abso=BLOC(condition="(CRITERE=='ABSOLU')", - PRECISION =SIMP(statut='o',typ='R',),), - ), - MODE_VIBR =FACT(statut='f',min=1,max=1, - MATR_RIGI =SIMP(statut='f',typ='TXM',defaut="ELASTIQUE",into=("ELASTIQUE","TANGENTE","SECANTE",) ), - NB_FREQ =SIMP(statut='f',typ='I',max=1,val_min=1,defaut=3, - fr="Nombre de fréquences propres à calculer"), - COEF_DIM_ESPACE =SIMP(statut='f',typ='I',max=1,val_min=2,defaut=5), - BANDE =SIMP(statut='f',typ='R',min=2,max=2, - fr="Valeur des deux fréquences délimitant la bande de recherche",), - regles = (EXCLUS('PAS_CALC','LIST_INST','INST'),), - LIST_INST = SIMP(statut='f',typ=(listr8_sdaster) ), - INST = SIMP(statut='f',typ='R',validators=NoRepeat(),max='**' ), - PAS_CALC = SIMP(statut='f',typ='I' ), - CRITERE = SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU") ), - b_prec_rela=BLOC(condition="(CRITERE=='RELATIF')", - PRECISION =SIMP(statut='f',typ='R',defaut= 1.E-6,),), - b_prec_abso=BLOC(condition="(CRITERE=='ABSOLU')", - PRECISION =SIMP(statut='o',typ='R',),), - ), -#------------------------------------------------------------------- - INFO =SIMP(statut='f',typ='I',defaut=1,into=(1,2) ), - b_info=BLOC(condition="(INFO==2)", - fr="filtre les messages émis dans le .mess selon le type de message demandé", - INFO_DBG = SIMP(statut='f',typ='TXM',max='**',validators=NoRepeat(), - into=("CONTACT", - "MECA_NON_LINE", - "PILOTAGE", - "FACTORISATION", - "APPARIEMENT"), - ), - ), - TITRE =SIMP(statut='f',typ='TXM',max='**'), -) - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2012 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: andre.adobes at edf.fr -DYNA_SPEC_MODAL=OPER(nom="DYNA_SPEC_MODAL",op= 147,sd_prod=interspectre, - fr="Calcul de la réponse par recombinaison modale d'une structure linéaire pour une excitation aléatoire", - reentrant='n', - UIinfo={"groupes":("Résolution","Dynamique",)}, - BASE_ELAS_FLUI =SIMP(statut='o',typ=melasflu_sdaster ), - VITE_FLUI =SIMP(statut='o',typ='R'), - PRECISION =SIMP(statut='f',typ='R',defaut=1.0E-3 ), - EXCIT =FACT(statut='o', - INTE_SPEC_GENE =SIMP(statut='o',typ=interspectre), - ), - OPTION =SIMP(statut='f',typ='TXM',defaut="TOUT",into=("TOUT","DIAG") ), - TITRE =SIMP(statut='f',typ='TXM',max='**'), -) ; - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2013 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: emmanuel.boyere at edf.fr -DYNA_TRAN_MODAL=OPER(nom="DYNA_TRAN_MODAL",op= 74,sd_prod=tran_gene, - fr="Calcul de la reponse dynamique transitoire d'un systeme amorti ou non en coordonees generalisees" - +" par superposition modale ou par sous structuration", - reentrant='f', - UIinfo={"groupes":("Resolution","Dynamique",)}, - regles=(EXCLUS('AMOR_MODAL','MATR_AMOR'), - PRESENT_ABSENT('MODE_STAT','MODE_CORR'),), - SCHEMA_TEMPS =FACT(statut='d', - SCHEMA =SIMP(statut='f',typ='TXM',defaut="NEWMARK", - into=("NEWMARK","EULER","DEVOGE","ADAPT_ORDRE1","ADAPT_ORDRE2","ITMI","RUNGE_KUTTA_54","RUNGE_KUTTA_32")), - b_newmark =BLOC(condition="SCHEMA=='NEWMARK'", - BETA =SIMP(statut='f',typ='R',defaut= 0.25 ), - GAMMA =SIMP(statut='f',typ='R',defaut= 0.5 ), - ), - b_runge_kutta =BLOC(condition="SCHEMA=='RUNGE_KUTTA_54' or SCHEMA=='RUNGE_KUTTA_32'", - TOLERANCE =SIMP(statut='f',typ='R',defaut= 1.E-3 ), - ), - b_itmi =BLOC(condition = "SCHEMA=='ITMI'", - regles=(ENSEMBLE('BASE_ELAS_FLUI','NUME_VITE_FLUI'),), - BASE_ELAS_FLUI =SIMP(statut='f',typ=melasflu_sdaster ), - NUME_VITE_FLUI =SIMP(statut='f',typ='I' ), - ETAT_STAT =SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON") ), - PREC_DUREE =SIMP(statut='f',typ='R',defaut= 1.E-2 ), - CHOC_FLUI =SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON") ), - NB_MODE =SIMP(statut='f',typ='I' ), - NB_MODE_FLUI =SIMP(statut='f',typ='I' ), - TS_REG_ETAB =SIMP(statut='f',typ='R' ), - ), - ), - MATR_MASS =SIMP(statut='o',typ=matr_asse_gene_r ), - MATR_RIGI =SIMP(statut='o',typ=matr_asse_gene_r ), - MATR_AMOR =SIMP(statut='f',typ=matr_asse_gene_r ), - VITESSE_VARIABLE =SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON") ), - b_variable =BLOC(condition="VITESSE_VARIABLE=='OUI'", - MATR_GYRO =SIMP(statut='o',typ=matr_asse_gene_r ), - VITE_ROTA =SIMP(statut='o',typ=(fonction_sdaster,formule) ), - MATR_RIGY =SIMP(statut='f',typ=matr_asse_gene_r ), - ACCE_ROTA =SIMP(statut='f',typ=(fonction_sdaster,formule) ), - ), - b_constante =BLOC(condition="VITESSE_VARIABLE=='NON'", - VITE_ROTA = SIMP(statut='o',typ='R',defaut=0.E0), - COUPLAGE_EDYOS =FACT(statut='f',max=1, - PAS_TPS_EDYOS = SIMP(statut='o',typ='R' ), - ), - - ), - - AMOR_MODAL =FACT(statut='f', max=1, - regles=(EXCLUS('AMOR_REDUIT','LIST_AMOR'),), - AMOR_REDUIT =SIMP(statut='f',typ='R',max='**'), - LIST_AMOR =SIMP(statut='f',typ=listr8_sdaster ), - ), - - ROTOR_FISS = FACT(statut='f',max='**', - regles=(UN_PARMI('NOEUD_D','GROUP_NO_D'), - EXCLUS('NOEUD_G','GROUP_NO_G'), - PRESENT_PRESENT('NOEUD_D','NOEUD_G'), - PRESENT_PRESENT('GROUP_NO_D','GROUP_NO_G',),), - ANGL_INIT = SIMP(statut='o',typ='R',defaut=0.E0), - ANGL_ROTA = SIMP(statut='f',typ=(fonction_sdaster,formule) ), - NOEUD_G = SIMP(statut='f',typ=no), - NOEUD_D = SIMP(statut='f',typ=no), - GROUP_NO_G = SIMP(statut='f',typ=grno), - GROUP_NO_D = SIMP(statut='f',typ=grno), - K_PHI = SIMP(statut='o',typ=(fonction_sdaster,formule) ), - DK_DPHI = SIMP(statut='o',typ=(fonction_sdaster,formule) ), - ), - - PALIER_EDYOS =FACT(statut='f',max='**', - regles=(PRESENT_ABSENT('UNITE','GROUP_NO'), - PRESENT_ABSENT('UNITE','TYPE_EDYOS'), - EXCLUS('GROUP_NO','NOEUD'),), - UNITE = SIMP(statut='f',typ='I',), - GROUP_NO = SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'), - NOEUD = SIMP(statut='f',typ=no), - TYPE_EDYOS = SIMP(statut='f',typ='TXM', - into=("PAPANL","PAFINL","PACONL","PAHYNL",),), - ), - - ETAT_INIT =FACT(statut='f', - regles=(EXCLUS('RESULTAT','DEPL'), - EXCLUS('RESULTAT','VITE'),), - RESULTAT =SIMP(statut='f',typ=tran_gene ), - b_resu =BLOC(condition = "RESULTAT != None", - regles=(EXCLUS('NUME_ORDRE','INST_INIT' ),), - INST_INIT =SIMP(statut='f',typ='R' ), - NUME_ORDRE =SIMP(statut='f',typ='I' ), - CRITERE =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU",),), - b_prec_rela=BLOC(condition="(CRITERE=='RELATIF')", - PRECISION =SIMP(statut='f',typ='R',defaut= 1.E-6,),), - b_prec_abso=BLOC(condition="(CRITERE=='ABSOLU')", - PRECISION =SIMP(statut='o',typ='R',),), - ), - DEPL =SIMP(statut='f',typ=vect_asse_gene ), - VITE =SIMP(statut='f',typ=vect_asse_gene ), - ), - INCREMENT =FACT(statut='o',max='**', - regles=(UN_PARMI('LIST_INST','PAS'),), - LIST_INST =SIMP(statut='f',typ=listr8_sdaster ), - b_list_inst =BLOC(condition = "LIST_INST != None", - regles=(EXCLUS('NUME_FIN','INST_FIN'),), - NUME_FIN =SIMP(statut='f',typ='I' ), - INST_FIN =SIMP(statut='f',typ='R' ), - ), - PAS =SIMP(statut='f',typ='R' ), - b_pas =BLOC(condition = "PAS != None", - INST_INIT =SIMP(statut='f',typ='R' ), - INST_FIN =SIMP(statut='o',typ='R' ), - ), - VERI_PAS =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON") ), - VITE_MIN =SIMP(statut='f',typ='TXM',defaut="NORM",into=("MAXI","NORM") ), - COEF_MULT_PAS =SIMP(statut='f',typ='R',defaut= 1.1 ), - COEF_DIVI_PAS =SIMP(statut='f',typ='R',defaut= 1.3333334 ), - PAS_LIMI_RELA =SIMP(statut='f',typ='R',defaut= 1.0E-6 ), - NB_POIN_PERIODE =SIMP(statut='f',typ='I',defaut= 50 ), - NMAX_ITER_PAS =SIMP(statut='f',typ='I',defaut= 16 ), - PAS_MAXI =SIMP(statut='f',typ='R' ), - PAS_MINI =SIMP(statut='f',typ='R' ), - ), - ARCHIVAGE =FACT(statut='f',max=1, - regles = (EXCLUS('PAS_ARCH','LIST_INST','INST'),), - LIST_INST = SIMP(statut='f',typ=(listr8_sdaster) ), - INST = SIMP(statut='f',typ='R',validators=NoRepeat(),max='**' ), - PAS_ARCH = SIMP(statut='f',typ='I' ), - CRITERE = SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU") ), - b_prec_rela=BLOC(condition="(CRITERE=='RELATIF')", - PRECISION =SIMP(statut='f',typ='R',defaut= 1.E-6,),), - b_prec_abso=BLOC(condition="(CRITERE=='ABSOLU')", - PRECISION =SIMP(statut='o',typ='R',),), - ), - EXCIT =FACT(statut='f',max='**', - regles=(UN_PARMI('FONC_MULT','COEF_MULT','ACCE'), - UN_PARMI('VECT_ASSE_GENE','NUME_ORDRE',), - PRESENT_PRESENT('ACCE','VITE','DEPL'), -# PRESENT_ABSENT('NUME_ORDRE','VECT_ASSE_GENE','COEF_MULT'), - EXCLUS('MULT_APPUI','CORR_STAT'), - PRESENT_PRESENT('MULT_APPUI','ACCE'),), - VECT_ASSE_GENE =SIMP(statut='f',typ=vect_asse_gene ), - NUME_ORDRE =SIMP(statut='f',typ='I' ), - FONC_MULT =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - COEF_MULT =SIMP(statut='f',typ='R' ), - ACCE =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - VITE =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - DEPL =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - MULT_APPUI =SIMP(statut='f',typ='TXM',into=("OUI",) ), - b_mult_appui =BLOC(condition = "MULT_APPUI == 'OUI'", - DIRECTION =SIMP(statut='f',typ='R',max='**'), - regles=(EXCLUS('NOEUD','GROUP_NO'),), - NOEUD =SIMP(statut='f',typ=no ,validators=NoRepeat(),max='**'), - GROUP_NO =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'), - ), - CORR_STAT =SIMP(statut='f',typ='TXM',into=("OUI",) ), - b_corr_stat =BLOC(condition = "CORR_STAT == 'OUI'", - D_FONC_DT =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule) ), - D_FONC_DT2 =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule) ), - ),), - - MODE_STAT =SIMP(statut='f',typ=mode_meca ), - MODE_CORR =SIMP(statut='f',typ=(mult_elas,mode_meca),), - - EXCIT_RESU =FACT(statut='f',max='**', - RESULTAT =SIMP(statut='o',typ=tran_gene ), - COEF_MULT =SIMP(statut='f',typ='R',defaut=1.0 ), - ), - - CHOC =FACT(statut='f',max='**', - regles=(UN_PARMI('MAILLE','GROUP_MA','NOEUD_1','GROUP_NO_1' ), - EXCLUS('NOEUD_2','GROUP_NO_2'), - PRESENT_ABSENT('GROUP_MA','NOEUD_2','GROUP_NO_2'), - PRESENT_ABSENT('MAILLE','NOEUD_2','GROUP_NO_2'),), - INTITULE =SIMP(statut='f',typ='TXM' ), - GROUP_MA =SIMP(statut='f',typ=grma,max='**'), - MAILLE =SIMP(statut='f',typ=ma,max='**'), - NOEUD_1 =SIMP(statut='f',typ=no), - NOEUD_2 =SIMP(statut='f',typ=no), - GROUP_NO_1 =SIMP(statut='f',typ=grno), - GROUP_NO_2 =SIMP(statut='f',typ=grno), - OBSTACLE =SIMP(statut='o',typ=table_fonction), - ORIG_OBST =SIMP(statut='f',typ='R',min=3,max=3), - NORM_OBST =SIMP(statut='o',typ='R',min=3,max=3), - ANGL_VRIL =SIMP(statut='f',typ='R' ), - JEU =SIMP(statut='f',typ='R',defaut= 1. ), - DIST_1 =SIMP(statut='f',typ='R',val_min=0.E+0 ), - DIST_2 =SIMP(statut='f',typ='R',val_min=0.E+0 ), - SOUS_STRUC_1 =SIMP(statut='f',typ='TXM' ), - SOUS_STRUC_2 =SIMP(statut='f',typ='TXM' ), - REPERE =SIMP(statut='f',typ='TXM',defaut="GLOBAL"), - RIGI_NOR =SIMP(statut='f',typ='R' ), - AMOR_NOR =SIMP(statut='f',typ='R',defaut= 0.E+0 ), - RIGI_TAN =SIMP(statut='f',typ='R',defaut= 0.E+0 ), - AMOR_TAN =SIMP(statut='f',typ='R' ), - FROTTEMENT =SIMP(statut='f',typ='TXM',defaut="NON",into=("NON","COULOMB","COULOMB_STAT_DYNA") ), - b_coulomb =BLOC(condition="FROTTEMENT=='COULOMB'", - COULOMB =SIMP(statut='o',typ='R' ),), - b_coulomb_stat_dyna =BLOC(condition="FROTTEMENT=='COULOMB_STAT_DYNA'", - COULOMB_STAT =SIMP(statut='o',typ='R' ), - COULOMB_DYNA =SIMP(statut='o',typ='R' ),), - ), - VERI_CHOC =FACT(statut='f', - STOP_CRITERE =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON") ), - SEUIL =SIMP(statut='f',typ='R',defaut= 0.5 ), - ), - FLAMBAGE =FACT(statut='f',max='**', - regles=(UN_PARMI('NOEUD_1','GROUP_NO_1'), - EXCLUS('NOEUD_2','GROUP_NO_2'),), - NOEUD_1 =SIMP(statut='f',typ=no), - NOEUD_2 =SIMP(statut='f',typ=no), - GROUP_NO_1 =SIMP(statut='f',typ=grno), - GROUP_NO_2 =SIMP(statut='f',typ=grno), - OBSTACLE =SIMP(statut='o',typ=table_fonction), - ORIG_OBST =SIMP(statut='f',typ='R',max='**'), - NORM_OBST =SIMP(statut='o',typ='R',max='**'), - ANGL_VRIL =SIMP(statut='f',typ='R' ), - JEU =SIMP(statut='f',typ='R',defaut= 1. ), - DIST_1 =SIMP(statut='f',typ='R' ), - DIST_2 =SIMP(statut='f',typ='R' ), - REPERE =SIMP(statut='f',typ='TXM',defaut="GLOBAL"), - RIGI_NOR =SIMP(statut='f',typ='R' ), - FNOR_CRIT =SIMP(statut='f',typ='R' ), - FNOR_POST_FL =SIMP(statut='f',typ='R' ), - RIGI_NOR_POST_FL=SIMP(statut='f',typ='R' ), - ), - ANTI_SISM =FACT(statut='f',max='**', - regles=(UN_PARMI('NOEUD_1','GROUP_NO_1'), - UN_PARMI('NOEUD_2','GROUP_NO_2'),), - NOEUD_1 =SIMP(statut='f',typ=no), - NOEUD_2 =SIMP(statut='f',typ=no), - GROUP_NO_1 =SIMP(statut='f',typ=grno), - GROUP_NO_2 =SIMP(statut='f',typ=grno), - RIGI_K1 =SIMP(statut='f',typ='R',defaut= 0.E+0 ), - RIGI_K2 =SIMP(statut='f',typ='R',defaut= 0.E+0 ), - SEUIL_FX =SIMP(statut='f',typ='R',defaut= 0.E+0 ), - C =SIMP(statut='f',typ='R',defaut= 0.E+0 ), - PUIS_ALPHA =SIMP(statut='f',typ='R',defaut= 0.E+0 ), - DX_MAX =SIMP(statut='f',typ='R',defaut= 1. ), - ), - RELA_EFFO_DEPL =FACT(statut='f',max='**', - NOEUD =SIMP(statut='o',typ=no), - SOUS_STRUC =SIMP(statut='f',typ='TXM' ), - NOM_CMP =SIMP(statut='f',typ='TXM' ), - RELATION =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule) ), - ), - RELA_EFFO_VITE =FACT(statut='f',max='**', - NOEUD =SIMP(statut='o',typ=no), - SOUS_STRUC =SIMP(statut='f',typ='TXM' ), - NOM_CMP =SIMP(statut='f',typ='TXM' ), - RELATION =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule) ), - ), - INFO =SIMP(statut='f',typ='I',defaut= 1,into=( 1 , 2) ), - IMPRESSION =FACT(statut='f', - regles=(EXCLUS('TOUT','NIVEAU'),), - TOUT =SIMP(statut='f',typ='TXM',into=("OUI",) ), - NIVEAU =SIMP(statut='f',typ='TXM',into=("DEPL_LOC","VITE_LOC","FORC_LOC","TAUX_CHOC") ), - INST_INIT =SIMP(statut='f',typ='R' ), - INST_FIN =SIMP(statut='f',typ='R' ), - ), - - -#------------------------------------------------------------------- -# Catalogue commun SOLVEUR - SOLVEUR =C_SOLVEUR('DYNA_TRAN_MODAL'), -#------------------------------------------------------------------- - - TITRE =SIMP(statut='f',typ='TXM',max='**'), - ) ; - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2013 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: albert.alarcon at edf.fr - -#choix de structure de donnees de sortie en fonction de BASE_CALCUL et TYPE_CALCUL -def dyna_vibra_prod(self,BASE_CALCUL,TYPE_CALCUL,MATR_RIGI,**args): - if BASE_CALCUL == 'PHYS': - if TYPE_CALCUL == 'TRAN': return dyna_trans - else: - if (AsType(MATR_RIGI) == matr_asse_pres_c) : return acou_harmo - else: return dyna_harmo - else: - if TYPE_CALCUL == 'TRAN': return tran_gene - else: return harm_gene - -#from Macro.dyna_vibra_ops import dyna_vibra_ops - -DYNA_VIBRA=MACRO(nom="DYNA_VIBRA", - op=OPS('Macro.dyna_vibra_ops.dyna_vibra_ops'), -# op=dyna_vibra_ops, - sd_prod=dyna_vibra_prod, - reentrant='f', - fr="Calcul dynamique", - UIinfo={"groupes":("Resolution","Dynamique",)}, - BASE_CALCUL =SIMP(statut='o',typ='TXM',position='global',into=("PHYS","GENE") ), - TYPE_CALCUL =SIMP(statut='o',typ='TXM',position='global',into=("HARM","TRAN") ), - -#parametres de mise en donnees - b_donnees =BLOC(condition = "TYPE_CALCUL=='HARM'or (TYPE_CALCUL=='TRAN' and BASE_CALCUL=='PHYS')", - MODELE =SIMP(statut='f',typ=modele_sdaster ), - CHAM_MATER =SIMP(statut='f',typ=cham_mater ), - CARA_ELEM =SIMP(statut='f',typ=cara_elem ), - ), - b_matr_tran_phys =BLOC(condition = "TYPE_CALCUL=='TRAN' and BASE_CALCUL=='PHYS'", - MATR_MASS =SIMP(statut='o',typ=matr_asse_depl_r), - MATR_RIGI =SIMP(statut='o',typ=matr_asse_depl_r), - MATR_AMOR =SIMP(statut='f',typ=matr_asse_depl_r), - ), - b_matr_tran_gene =BLOC(condition = "TYPE_CALCUL=='TRAN' and BASE_CALCUL=='GENE'", - MATR_MASS =SIMP(statut='o',typ=matr_asse_gene_r), - MATR_RIGI =SIMP(statut='o',typ=matr_asse_gene_r), - MATR_AMOR =SIMP(statut='f',typ=matr_asse_gene_r), - VITESSE_VARIABLE =SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON") ), - b_variable =BLOC(condition="VITESSE_VARIABLE=='OUI'", - MATR_GYRO =SIMP(statut='o',typ=matr_asse_gene_r ), - VITE_ROTA =SIMP(statut='o',typ=(fonction_sdaster,formule) ), - MATR_RIGY =SIMP(statut='f',typ=matr_asse_gene_r ), - ACCE_ROTA =SIMP(statut='f',typ=(fonction_sdaster,formule) ), - ), - b_constante =BLOC(condition="VITESSE_VARIABLE=='NON'", - VITE_ROTA = SIMP(statut='o',typ='R',defaut=0.E0), - ), - ), - b_reuse_harm =BLOC(condition = "reuse and TYPE_CALCUL == 'HARM'",fr="en mode concept reentrant : RESULTAT obligatoire", - RESULTAT =SIMP(statut='o',typ=(dyna_harmo,harm_gene)), - ), - b_matr_harm =BLOC(condition="TYPE_CALCUL == 'HARM'", - MATR_MASS =SIMP(statut='o',typ=(matr_asse_depl_r,matr_asse_pres_c,matr_asse_gene_r ) ), - MATR_RIGI =SIMP(statut='o',typ=(matr_asse_depl_r,matr_asse_depl_c,matr_asse_pres_c - ,matr_asse_gene_r,matr_asse_gene_c )), - MATR_AMOR =SIMP(statut='f',typ=(matr_asse_depl_r,matr_asse_pres_c,matr_asse_gene_r) ), - MATR_IMPE_PHI =SIMP(statut='f',typ=(matr_asse_depl_r,matr_asse_gene_r) ), - ), - - AMOR_MODAL =FACT(statut='f', - AMOR_REDUIT =SIMP(statut='f',typ='R',max='**'), - LIST_AMOR =SIMP(statut='f',typ=listr8_sdaster ), - b_mode =BLOC(condition = "BASE_CALCUL == 'PHYS' and TYPE_CALCUL == 'TRAN'", - MODE_MECA =SIMP(statut='o',typ=mode_meca ), - NB_MODE =SIMP(statut='f',typ='I',defaut= 9999 ), - ), - ), -#introduction parametres du calcul harmonique - b_param_harm =BLOC(condition="TYPE_CALCUL == 'HARM'", - regles=(UN_PARMI('FREQ','LIST_FREQ'), - EXCLUS('NOM_CHAM','TOUT_CHAM')), - FREQ =SIMP(statut='f',typ='R',validators=NoRepeat(),max='**'), - LIST_FREQ =SIMP(statut='f',typ=listr8_sdaster ), - NOM_CHAM =SIMP(statut='f',typ='TXM',validators=NoRepeat(),max=3,into=("DEPL","VITE","ACCE") ), - TOUT_CHAM =SIMP(statut='f',typ='TXM',into=("OUI",)), - ), - -#parametrage des calculs transitoires - b_tran = BLOC(condition = "TYPE_CALCUL == 'TRAN'", -#parametrage des schemas d'integration - SCHEMA_TEMPS =FACT(statut='d', - SCHEMA =SIMP(statut='f',typ='TXM',defaut="NEWMARK", - into=("NEWMARK","WILSON","ADAPT_ORDRE2","DIFF_CENTRE","ADAPT_ORDRE1","DEVOGE","EULER","ITMI","RUNGE_KUTTA_54","RUNGE_KUTTA_32"),), - b_itmi =BLOC(condition = "SCHEMA == 'ITMI'", -regles=(ENSEMBLE('BASE_ELAS_FLUI','NUME_VITE_FLUI'),), - BASE_ELAS_FLUI =SIMP(statut='f',typ=melasflu_sdaster ), - NUME_VITE_FLUI =SIMP(statut='f',typ='I' ), - ETAT_STAT =SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON") ), - PREC_DUREE =SIMP(statut='f',typ='R',defaut= 1.E-2 ), - CHOC_FLUI =SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON") ), - NB_MODE =SIMP(statut='f',typ='I' ), - NB_MODE_FLUI =SIMP(statut='f',typ='I' ), - TS_REG_ETAB =SIMP(statut='f',typ='R' ), - ), - b_newmark =BLOC(condition = "SCHEMA == 'NEWMARK'", - BETA =SIMP(statut='f',typ='R',defaut= 0.25 ), - GAMMA =SIMP(statut='f',typ='R',defaut= 0.5 ), - ), - b_wilson =BLOC(condition = "SCHEMA == 'WILSON'", - THETA =SIMP(statut='f',typ='R',defaut= 1.4 ), - ), - b_runge_kutta =BLOC(condition="SCHEMA=='RUNGE_KUTTA_54' or SCHEMA=='RUNGE_KUTTA_32'", - TOLERANCE =SIMP(statut='f',typ='R',defaut= 1.E-3 ), - ), - ), - - INCREMENT =FACT(statut='o', - regles=(UN_PARMI('LIST_INST','PAS'),), - LIST_INST =SIMP(statut='f',typ=listr8_sdaster ), - PAS =SIMP(statut='f',typ='R' ), - b_pas =BLOC(condition = "PAS != None", - INST_INIT =SIMP(statut='f',typ='R' ), - INST_FIN =SIMP(statut='o',typ='R' ), - ), - b_list =BLOC(condition = "LIST_INST != None", - regles=(EXCLUS('INST_FIN','NUME_FIN'),), - NUME_FIN =SIMP(statut='f',typ='I' ), - INST_FIN =SIMP(statut='f',typ='R' ), - ), - b_veri_pas = BLOC(condition="BASE_CALCUL == 'GENE'", - VERI_PAS =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON") ), - PAS_MAXI =SIMP(statut='f',typ='R' ), - ), - VITE_MIN =SIMP(statut='f',typ='TXM',defaut="NORM",into=("MAXI","NORM") ), - COEF_MULT_PAS =SIMP(statut='f',typ='R',defaut= 1.1 ), - COEF_DIVI_PAS =SIMP(statut='f',typ='R',defaut= 1.3333334 ), - PAS_LIMI_RELA =SIMP(statut='f',typ='R',defaut= 1.E-6 ), - NB_POIN_PERIODE =SIMP(statut='f',typ='I',defaut= 50 ), - NMAX_ITER_PAS =SIMP(statut='f',typ='I',defaut= 16 ), - PAS_MINI =SIMP(statut='f',typ='R' ), - ), - -#declaration de l'etat initial - b_init_gene =BLOC(condition="BASE_CALCUL == 'GENE'", - ETAT_INIT =FACT(statut='f', - regles=(EXCLUS('RESULTAT','DEPL'), - EXCLUS('RESULTAT','VITE'),), - RESULTAT =SIMP(statut='f',typ=tran_gene), - b_resu =BLOC(condition = "RESULTAT != NONE", - regles=( EXCLUS('NUME_ORDRE','INST_INIT' ),), - NUME_ORDRE =SIMP(statut='f',typ='I' ), - INST_INIT =SIMP(statut='f',typ='R' ), - b_inst_init =BLOC(condition = "INST_INIT != None", - CRITERE =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU") ), - b_prec_rela=BLOC(condition="(CRITERE=='RELATIF')", - PRECISION =SIMP(statut='f',typ='R',defaut= 1.E-6,), - ), - b_prec_abso=BLOC(condition="(CRITERE=='ABSOLU')", - PRECISION =SIMP(statut='o',typ='R',), - ), - ), - ), - DEPL =SIMP(statut='f',typ=vect_asse_gene), - VITE =SIMP(statut='f',typ=vect_asse_gene), - ), - ), - b_init_phys =BLOC(condition="BASE_CALCUL == 'PHYS'", - ETAT_INIT =FACT(statut='f', - regles=(AU_MOINS_UN('RESULTAT', 'DEPL', 'VITE', 'ACCE'), - PRESENT_ABSENT('RESULTAT', 'DEPL', 'VITE', 'ACCE'),), - RESULTAT =SIMP(statut='f',typ=dyna_trans), - b_resu =BLOC(condition = "RESULTAT != NONE", - regles=( EXCLUS('NUME_ORDRE','INST_INIT' ),), - NUME_ORDRE =SIMP(statut='f',typ='I' ), - INST_INIT =SIMP(statut='f',typ='R' ), - b_inst_init =BLOC(condition = "INST_INIT != None", - CRITERE =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU") ), - b_prec_rela=BLOC(condition="(CRITERE=='RELATIF')", - PRECISION =SIMP(statut='f',typ='R',defaut= 1.E-6,), - ), - b_prec_abso=BLOC(condition="(CRITERE=='ABSOLU')", - PRECISION =SIMP(statut='o',typ='R',), - ), - ), - ), - DEPL =SIMP(statut='f',typ=cham_no_sdaster), - VITE =SIMP(statut='f',typ=cham_no_sdaster), - ACCE =SIMP(statut='f',typ=cham_no_sdaster), - ), - ), -#parametres d'archivage - bloc_archi =BLOC(condition="TYPE_CALCUL == 'TRAN'", - ARCHIVAGE =FACT(statut='f',max=1, - regles=(EXCLUS('LIST_INST','PAS_ARCH','INST'),), - LIST_INST = SIMP(statut='f',typ=(listr8_sdaster) ), - INST = SIMP(statut='f',typ='R',validators=NoRepeat(),max='**' ), - PAS_ARCH = SIMP(statut='f',typ='I' ), - CRITERE = SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU") ), - b_prec_rela=BLOC(condition="(CRITERE=='RELATIF')", - PRECISION =SIMP(statut='f',typ='R',defaut= 1.E-6,),), - b_prec_abso=BLOC(condition="(CRITERE=='ABSOLU')", - PRECISION =SIMP(statut='o',typ='R',),), - - b_cham_exclu =BLOC(condition="BASE_CALCUL == 'PHYS'", - CHAM_EXCLU =SIMP(statut='f',typ='TXM',validators=NoRepeat(),max='**',into=("DEPL","VITE","ACCE") ), - ), - ),),), - -#calcul des energies - bloc_ener =BLOC(condition="TYPE_CALCUL == 'TRAN' and BASE_CALCUL == 'PHYS'", - ENERGIE =FACT(statut='f',max=1, - CALCUL =SIMP(statut='f',typ='TXM',into=("OUI",),defaut="OUI",), - ), - ), - -#definition du chargement - b_excit_harm =BLOC(condition="TYPE_CALCUL == 'HARM'", - EXCIT =FACT(statut='o',max='**', - regles=(UN_PARMI('VECT_ASSE','VECT_ASSE_GENE','CHARGE'), - UN_PARMI('FONC_MULT','FONC_MULT_C','COEF_MULT','COEF_MULT_C'), - ), - VECT_ASSE =SIMP(statut='f',typ=cham_no_sdaster), - VECT_ASSE_GENE =SIMP(statut='f',typ=vect_asse_gene), - CHARGE =SIMP(statut='f', typ=char_meca ), - FONC_MULT_C =SIMP(statut='f',typ=(fonction_c,formule_c) ), - COEF_MULT_C =SIMP(statut='f',typ='C' ), - FONC_MULT =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - COEF_MULT =SIMP(statut='f',typ='R' ), - PHAS_DEG =SIMP(statut='f',typ='R',defaut= 0.E+0 ), - PUIS_PULS =SIMP(statut='f',typ='I',defaut= 0 ), - - ), - EXCIT_RESU =FACT(statut='f',max='**', - RESULTAT =SIMP(statut='o',typ=(dyna_harmo,harm_gene) ), - COEF_MULT_C =SIMP(statut='o',typ='C' ),), - - ), - b_excit_tran_mod=BLOC(condition="TYPE_CALCUL == 'TRAN' and BASE_CALCUL == 'GENE'", - regles=(PRESENT_ABSENT('MODE_STAT','MODE_CORR'),), - EXCIT =FACT(statut='f',max='**', - regles=(UN_PARMI('FONC_MULT','COEF_MULT','ACCE'), - UN_PARMI('VECT_ASSE_GENE','NUME_ORDRE',), - PRESENT_PRESENT('ACCE','VITE','DEPL'), - EXCLUS('MULT_APPUI','CORR_STAT'), - PRESENT_PRESENT('MULT_APPUI','ACCE'), - ), - VECT_ASSE_GENE =SIMP(statut='f',typ=vect_asse_gene ), - NUME_ORDRE =SIMP(statut='f',typ='I' ), - FONC_MULT =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - COEF_MULT =SIMP(statut='f',typ='R' ), - ACCE =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - VITE =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - DEPL =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - MULT_APPUI =SIMP(statut='f',typ='TXM',into=("OUI",) ), - b_mult_appui =BLOC(condition = "MULT_APPUI == 'OUI'", - regles=(EXCLUS('NOEUD','GROUP_NO'),), - DIRECTION =SIMP(statut='f',typ='R',max='**'), - NOEUD =SIMP(statut='f',typ=no ,validators=NoRepeat(),max='**'), - GROUP_NO =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'), - ), - CORR_STAT =SIMP(statut='f',typ='TXM',into=("OUI",) ), - b_corr_stat =BLOC(condition = "CORR_STAT == 'OUI'", - D_FONC_DT =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule) ), - D_FONC_DT2 =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule) ), - ), - ), - MODE_STAT =SIMP(statut='f',typ=mode_meca ), - MODE_CORR =SIMP(statut='f',typ=(mult_elas,mode_meca),), - - EXCIT_RESU =FACT(statut='f',max='**', - RESULTAT =SIMP(statut='o',typ=tran_gene ), - COEF_MULT =SIMP(statut='f',typ='R',defaut=1.0 ), - ), - - ), - b_excit_line_tran =BLOC(condition="TYPE_CALCUL == 'TRAN' and BASE_CALCUL == 'PHYS'", - EXCIT =FACT(statut='f',max='**', - regles=(UN_PARMI('CHARGE','VECT_ASSE'), - EXCLUS('CHARGE','COEF_MULT'), - EXCLUS('FONC_MULT','COEF_MULT'), - EXCLUS('ACCE','COEF_MULT'), - PRESENT_ABSENT('ACCE','FONC_MULT'), - PRESENT_PRESENT('ACCE','VITE','DEPL'), - ), - VECT_ASSE =SIMP(statut='f',typ=cham_no_sdaster), - CHARGE =SIMP(statut='f',typ=char_meca ), - FONC_MULT =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - COEF_MULT =SIMP(statut='f',typ='R' ), - ACCE =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - VITE =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - DEPL =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - MULT_APPUI =SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON") ), - b_mult_appui =BLOC(condition = "MULT_APPUI == 'OUI'", - regles=(EXCLUS('NOEUD','GROUP_NO'),), - DIRECTION =SIMP(statut='f',typ='R',max='**'), - NOEUD =SIMP(statut='f',typ=no ,validators=NoRepeat(),max='**'), - GROUP_NO =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'), - ), - ), - MODE_STAT =SIMP(statut='f',typ=mode_meca ), - EXCIT_RESU =FACT(statut='f', - RESULTAT =SIMP(statut='o',typ=dyna_trans ), - COEF_MULT =SIMP(statut='o',typ='R' ), - ), - ), - -#definition des chocs - b_non_line_loca =BLOC(condition="TYPE_CALCUL == 'TRAN' and BASE_CALCUL=='GENE'", - CHOC =FACT(statut='f',max='**', - regles=(UN_PARMI('MAILLE','GROUP_MA','NOEUD_1','GROUP_NO_1' ), - EXCLUS('NOEUD_2','GROUP_NO_2'), - PRESENT_ABSENT('GROUP_MA','NOEUD_2','GROUP_NO_2'), - PRESENT_ABSENT('MAILLE','NOEUD_2','GROUP_NO_2'),), - INTITULE =SIMP(statut='f',typ='TXM' ), - GROUP_MA =SIMP(statut='f',typ=grma,max='**'), - MAILLE =SIMP(statut='f',typ=ma,max='**'), - NOEUD_1 =SIMP(statut='f',typ=no), - NOEUD_2 =SIMP(statut='f',typ=no), - GROUP_NO_1 =SIMP(statut='f',typ=grno), - GROUP_NO_2 =SIMP(statut='f',typ=grno), - OBSTACLE =SIMP(statut='o',typ=table_fonction), - ORIG_OBST =SIMP(statut='f',typ='R',min=3,max=3), - NORM_OBST =SIMP(statut='o',typ='R',min=3,max=3), - ANGL_VRIL =SIMP(statut='f',typ='R' ), - JEU =SIMP(statut='f',typ='R',defaut= 1. ), - DIST_1 =SIMP(statut='f',typ='R',val_min=0.E+0 ), - DIST_2 =SIMP(statut='f',typ='R',val_min=0.E+0 ), - SOUS_STRUC_1 =SIMP(statut='f',typ='TXM' ), - SOUS_STRUC_2 =SIMP(statut='f',typ='TXM' ), - REPERE =SIMP(statut='f',typ='TXM',defaut="GLOBAL"), - RIGI_NOR =SIMP(statut='f',typ='R' ), - AMOR_NOR =SIMP(statut='f',typ='R',defaut= 0.E+0 ), - RIGI_TAN =SIMP(statut='f',typ='R',defaut= 0.E+0 ), - AMOR_TAN =SIMP(statut='f',typ='R' ), - FROTTEMENT =SIMP(statut='f',typ='TXM',defaut="NON",into=("NON","COULOMB","COULOMB_STAT_DYNA") ), - b_coulomb =BLOC(condition="FROTTEMENT=='COULOMB'", - COULOMB =SIMP(statut='o',typ='R' ),), - b_coulomb_stat_dyna =BLOC(condition="FROTTEMENT=='COULOMB_STAT_DYNA'", - COULOMB_STAT =SIMP(statut='o',typ='R' ), - COULOMB_DYNA =SIMP(statut='o',typ='R' ),), - ), - VERI_CHOC =FACT(statut='f', - STOP_CRITERE =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON") ), - SEUIL =SIMP(statut='f',typ='R',defaut= 0.5 ), - ), - - ROTOR_FISS = FACT(statut='f',max='**', - regles=(UN_PARMI('NOEUD_D','GROUP_NO_D'), - EXCLUS('NOEUD_G','GROUP_NO_G'), - PRESENT_PRESENT('NOEUD_D','NOEUD_G'), - PRESENT_PRESENT('GROUP_NO_D','GROUP_NO_G',),), - ANGL_INIT = SIMP(statut='o',typ='R',defaut=0.E0), - ANGL_ROTA = SIMP(statut='f',typ=(fonction_sdaster,formule) ), - NOEUD_G = SIMP(statut='f',typ=no), - NOEUD_D = SIMP(statut='f',typ=no), - GROUP_NO_G = SIMP(statut='f',typ=grno), - GROUP_NO_D = SIMP(statut='f',typ=grno), - K_PHI = SIMP(statut='o',typ=(fonction_sdaster,formule) ), - DK_DPHI = SIMP(statut='o',typ=(fonction_sdaster,formule) ), - ), - -#parametres flambage - FLAMBAGE =FACT(statut='f',max='**', - regles=(UN_PARMI('NOEUD_1','GROUP_NO_1'), - EXCLUS('NOEUD_2','GROUP_NO_2'),), - NOEUD_1 =SIMP(statut='f',typ=no), - NOEUD_2 =SIMP(statut='f',typ=no), - GROUP_NO_1 =SIMP(statut='f',typ=grno), - GROUP_NO_2 =SIMP(statut='f',typ=grno), - OBSTACLE =SIMP(statut='o',typ=table_fonction), - ORIG_OBST =SIMP(statut='f',typ='R',max='**'), - NORM_OBST =SIMP(statut='o',typ='R',max='**'), - ANGL_VRIL =SIMP(statut='f',typ='R' ), - JEU =SIMP(statut='f',typ='R',defaut= 1. ), - DIST_1 =SIMP(statut='f',typ='R' ), - DIST_2 =SIMP(statut='f',typ='R' ), - REPERE =SIMP(statut='f',typ='TXM',defaut="GLOBAL"), - RIGI_NOR =SIMP(statut='f',typ='R' ), - FNOR_CRIT =SIMP(statut='f',typ='R' ), - FNOR_POST_FL =SIMP(statut='f',typ='R' ), - RIGI_NOR_POST_FL=SIMP(statut='f',typ='R' ), - ), - -#non-linearite si dispositif anti-sismique - ANTI_SISM =FACT(statut='f',max='**', - regles=(UN_PARMI('NOEUD_1','GROUP_NO_1'), - UN_PARMI('NOEUD_2','GROUP_NO_2'),), - NOEUD_1 =SIMP(statut='f',typ=no), - NOEUD_2 =SIMP(statut='f',typ=no), - GROUP_NO_1 =SIMP(statut='f',typ=grno), - GROUP_NO_2 =SIMP(statut='f',typ=grno), - RIGI_K1 =SIMP(statut='f',typ='R',defaut= 0.E+0 ), - RIGI_K2 =SIMP(statut='f',typ='R',defaut= 0.E+0 ), - SEUIL_FX =SIMP(statut='f',typ='R',defaut= 0.E+0 ), - C =SIMP(statut='f',typ='R',defaut= 0.E+0 ), - PUIS_ALPHA =SIMP(statut='f',typ='R',defaut= 0.E+0 ), - DX_MAX =SIMP(statut='f',typ='R',defaut= 1. ), - ), -#non-linearite effort-deplacement - RELA_EFFO_DEPL =FACT(statut='f',max='**', - NOEUD =SIMP(statut='o',typ=no), - SOUS_STRUC =SIMP(statut='f',typ='TXM' ), - NOM_CMP =SIMP(statut='f',typ='TXM' ), - RELATION =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule) ), - ), -#non-linearite effort-vitesse - RELA_EFFO_VITE =FACT(statut='f',max='**', - NOEUD =SIMP(statut='o',typ=no), - SOUS_STRUC =SIMP(statut='f',typ='TXM' ), - NOM_CMP =SIMP(statut='f',typ='TXM' ), - RELATION =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule) ), - ), - ), -#------------------------------------------------------------------- -# Catalogue commun SOLVEUR - b_solv_harm_gene =BLOC(condition = "BASE_CALCUL=='GENE' and TYPE_CALCUL=='HARM'", - fr="Methode de resolution matrice generalisee", - SOLVEUR =C_SOLVEUR('DYNA_LINE_HARM','GENE'), - ), - b_solv_harm_phys =BLOC(condition = "BASE_CALCUL=='PHYS' and TYPE_CALCUL=='HARM'", - fr="Methode de resolution matrice sur ddl physique", - SOLVEUR =C_SOLVEUR('DYNA_LINE_HARM','PHYS'), - ), - b_solv_line_tran =BLOC(condition = "BASE_CALCUL=='PHYS' and TYPE_CALCUL=='TRAN'", - SOLVEUR =C_SOLVEUR('DYNA_LINE_TRAN'), - ), - b_solv_tran_gene =BLOC(condition = "BASE_CALCUL=='GENE' and TYPE_CALCUL=='TRAN'", - SOLVEUR =C_SOLVEUR('DYNA_TRAN_MODAL'), - ), -#------------------------------------------------------------------- - TITRE =SIMP(statut='f',typ='TXM',max='**'), - INFO =SIMP(statut='f',typ='I',into=(1,2) ), - b_impression = BLOC(condition = "BASE_CALCUL=='GENE' and TYPE_CALCUL=='TRAN'", - IMPRESSION =FACT(statut='f', - regles=(EXCLUS('TOUT','NIVEAU'),), - TOUT =SIMP(statut='f',typ='TXM',into=("OUI",) ), - NIVEAU =SIMP(statut='f',typ='TXM',into=("DEPL_LOC","VITE_LOC","FORC_LOC","TAUX_CHOC") ), - INST_INIT =SIMP(statut='f',typ='R' ), - INST_FIN =SIMP(statut='f',typ='R' ), - ), - ), - ); - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2013 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: jacques.pellet at edf.fr - -def elim_lagr_prod(MATR_RIGI,**args): - if AsType(MATR_RIGI) == matr_asse_depl_r : return matr_asse_depl_r - raise AsException("type de concept resultat non prevu") - -ELIM_LAGR=OPER(nom="ELIM_LAGR",op=69,sd_prod=elim_lagr_prod, - fr="Créer une matrice en ayant éliminé les condition cinématiques dualisées.", - reentrant='f', UIinfo={"groupes":("Résolution",)}, - - # Matrice de "rigidité" (celle qui contient les équations dualisées) : - MATR_RIGI =SIMP(statut='o',typ=(matr_asse_depl_r,) ), - - # Matrice à réduire (si ce n'est pas la matrice de rigidité) : - MATR_ASSE =SIMP(statut='f',typ=(matr_asse_depl_r,) ), - - - INFO =SIMP(statut='f',typ='I',into=(1,2) ), -) ; - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: jacques.pellet at edf.fr -ENGENDRE_TEST=PROC(nom="ENGENDRE_TEST",op=178, - UIinfo={"groupes":("Impression","Utilitaires",)}, - fr="Engendre des tests pour la non régression du code (pour développeurs)", - UNITE =SIMP(statut='f',typ='I',defaut=8), - FORMAT =SIMP(statut='f',typ='TXM',into=("OBJET",) ), - FORMAT_R =SIMP(statut='f',typ='TXM',defaut="1PE20.13"), - PREC_R =SIMP(statut='f',typ='TXM',defaut="1.E-10"), -#============================================================================ - b_aster =BLOC( condition = "FORMAT==None", - CO =SIMP(statut='o',typ=(cham_gd_sdaster,resultat_sdaster,table_sdaster), - validators=NoRepeat(),max='**'), - TYPE_TEST =SIMP(statut='f',typ='TXM',defaut="SOMM_ABS",into=("SOMME","SOMM_ABS","MAX","MIN") ), - ), -#============================================================================ - b_objet =BLOC( condition = "FORMAT=='OBJET'", - regles=(UN_PARMI('TOUT','CO'),), - TOUT =SIMP(statut='f',typ='TXM',into=("OUI",) ), - CO =SIMP(statut='f',typ=assd,validators=NoRepeat(),max='**'), - TYPE_TEST =SIMP(statut='f',typ='TXM',defaut="SOMME",into=("SOMME",) ), - ), -) ; - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2011 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: nicolas.greffet at edf.fr -# -# ENVOI DES CHAMPS CINEMATIQUES VIA YACS POUR COUPLAGE IFS -# -ENV_CINE_YACS=PROC(nom = "ENV_CINE_YACS", - op = 111, - UIinfo = {"groupes":("Résultats et champs",)}, - fr = "Envoi des champs de deplacement et vitesse via YACS pour Couplage de Code_Aster et Saturne", - regles = (EXCLUS('ETAT_INIT','RESULTAT',),), - MATR_PROJECTION = SIMP(statut='o', typ=corresp_2_mailla,), - VIS_A_VIS = FACT(statut='o', max='**', - GROUP_MA_1=SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - GROUP_NO_2=SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'),), - RESULTAT = FACT(statut='f', - NUME_ORDRE=SIMP(statut='o', typ='I', validators=NoRepeat()), - RESU =SIMP(statut='o', typ=resultat_sdaster, validators=NoRepeat()),), - ETAT_INIT = FACT(statut='f', - DEPL=SIMP(statut='f', typ=cham_no_sdaster, validators=NoRepeat()), - VITE=SIMP(statut='f', typ=cham_no_sdaster, validators=NoRepeat()), - ACCE=SIMP(statut='f', typ=cham_no_sdaster, validators=NoRepeat()),), - INST = SIMP(statut='o',typ='R', ), - PAS = SIMP(statut='o',typ='R', ), - NUME_ORDRE_YACS = SIMP(statut='o', typ='I',), - INFO = SIMP(statut='f',typ='I',defaut=1,into=(1,2) ), -) ; - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2011 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: j-pierre.lefebvre at edf.fr - -def exec_logiciel_prod(self, MAILLAGE, **args): - if MAILLAGE != None: - mcf = MAILLAGE[0] - self.typeSDProd(mcf['MAILLAGE'], maillage_sdaster) - return None - -EXEC_LOGICIEL = MACRO(nom="EXEC_LOGICIEL", - op=OPS('Macro.exec_logiciel_ops.exec_logiciel_ops'), - sd_prod=exec_logiciel_prod, - fr="Exécute un logiciel ou une commande système depuis Aster", - UIinfo={"groupes":("Gestion du travail","Outils-métier",)}, - - regles = ( AU_MOINS_UN('LOGICIEL', 'MAILLAGE', 'SALOME'), - EXCLUS('MACHINE_DISTANTE','MAILLAGE'), - EXCLUS('MAILLAGE','SALOME'), - ), - - LOGICIEL = SIMP(statut='f', typ='TXM'), - ARGUMENT = SIMP(statut='f', max='**', typ='TXM'), - - - MACHINE_DISTANTE = FACT(statut='f', - SSH_ADRESSE = SIMP(statut='o', typ='TXM', val_min=1, val_max=255, - fr="Adresse IP ou nom de la machine sur laquelle le logiciel/script sera exécuté via SSH"), - SSH_LOGIN = SIMP(statut='f', typ='TXM', val_min=1, val_max=255, - fr="Nom d'utilisateur sur la machine distante"), - SSH_PORT = SIMP(statut='f', typ='I', val_min=1, val_max=65535, defaut=22, - fr="Port SSH de la machien distante"), - ), - - - MAILLAGE = FACT(statut='f', - FORMAT = SIMP(statut='o', typ='TXM', into=("GMSH", "GIBI", "SALOME")), - UNITE_GEOM = SIMP(statut='f', typ='I', val_min=10, val_max=90, defaut=16, - fr="Unité logique définissant le fichier (fort.N) contenant les données géométriques (datg)"), - UNITE = SIMP(statut='f', typ='I', val_min=10, val_max=90, defaut=19, - fr="Unité logique définissant le fichier (fort.N) produit par le mailleur"), - MAILLAGE = SIMP(statut='o', typ=CO), - ), - - - SALOME = FACT(statut='f', - regles=(UN_PARMI('CHEMIN_SCRIPT', 'UNITE_SCRIPT'), - PRESENT_PRESENT('NOM_PARA','VALE'),), - CHEMIN_SCRIPT = SIMP(statut='f', typ='TXM', - fr="Chemin du script Salome"), - UNITE_SCRIPT = SIMP(statut='f', typ='I', val_min=80, val_max=99, - fr="Unité logique du script Salome"), - SALOME_HOST = SIMP(statut='f', typ='TXM', defaut='localhost', - fr="Machine sur laquelle tourne Salome"), - SALOME_PORT = SIMP(statut='f', typ='I', val_min=2800, val_max=2900, defaut=2810, - fr="Port de l'instance Salome (2810 ou supérieur)"), - SALOME_RUNAPPLI = SIMP(statut='f', typ='TXM', - fr="Chemin vers le script de lancement runAppli de Salome"), - FICHIERS_ENTREE = SIMP(statut='f', typ='TXM', validators=NoRepeat(),max='**', - fr="Liste des fichiers d'entrée du script Salome"), - FICHIERS_SORTIE = SIMP(statut='f', typ='TXM', validators=NoRepeat(),max='**', - fr="Liste des fichiers générés par le script Salome"), - NOM_PARA = SIMP(statut='f',typ='TXM',max='**',validators=NoRepeat(), - fr="Liste des noms des paramètres à modifier dans le script Salome"), - VALE = SIMP(statut='f',typ='TXM',max='**', - fr="Valeur des paramètres à) modifier dans le script Salome"), - ), - - CODE_RETOUR_MAXI = SIMP(statut='f', typ='I', defaut=0, val_min=-1, - fr="Valeur maximale du code retour toléré (-1 pour l'ignorer)"), - - INFO = SIMP(statut='f', typ='I', defaut=2, into=(1,2),), -) - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: nicolas.brie at edf.fr - -def extr_mode_prod(FILTRE_MODE,**args): - vale=FILTRE_MODE[0]['MODE'] - if AsType(vale) == mode_meca : return mode_meca - if AsType(vale) == mode_meca_c : return mode_meca_c - if AsType(vale) == mode_gene : return mode_gene - raise AsException("type de concept resultat non prevu") - -EXTR_MODE=OPER(nom="EXTR_MODE",op= 168,sd_prod=extr_mode_prod, - reentrant='n',fr="Extraire séléctivement des modes des structures de données modales", - UIinfo={"groupes":("Résolution","Dynamique",)}, - FILTRE_MODE =FACT(statut='o',max='**', - regles=(UN_PARMI('TOUT_ORDRE','NUME_ORDRE','NUME_MODE','NUME_MODE_EXCLU','FREQ_MIN','CRIT_EXTR',),), - MODE =SIMP(statut='o',typ=(mode_meca,mode_meca_c,mode_gene ) ), - TOUT_ORDRE =SIMP(statut='f',typ='TXM',into=("OUI","NON") ), - NUME_ORDRE =SIMP(statut='f',typ='I',validators=NoRepeat(),max='**'), - NUME_MODE =SIMP(statut='f',typ='I',validators=NoRepeat(),max='**'), - NUME_MODE_EXCLU =SIMP(statut='f',typ='I',validators=NoRepeat(),max='**'), - FREQ_MIN =SIMP(statut='f',typ='R' ), - CRIT_EXTR =SIMP(statut='f',typ='TXM',into=("MASS_EFFE_UN","MASS_GENE") ), - b_freq_min =BLOC(condition = "FREQ_MIN != None", - FREQ_MAX =SIMP(statut='o',typ='R' ), - PRECISION =SIMP(statut='f',typ='R',defaut= 1.E-3 ), - ), - b_crit_extr =BLOC(condition = "CRIT_EXTR != None", - regles=(AU_MOINS_UN('SEUIL','SEUIL_X','SEUIL_Y','SEUIL_Z'),), - SEUIL =SIMP(statut='f',typ='R'), - SEUIL_X =SIMP(statut='f',typ='R'), - SEUIL_Y =SIMP(statut='f',typ='R'), - SEUIL_Z =SIMP(statut='f',typ='R'), - ), - ), - TITRE =SIMP(statut='f',typ='TXM',max='**'), - IMPRESSION =FACT(statut='f', - CUMUL =SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON") ), - CRIT_EXTR =SIMP(statut='f',typ='TXM',defaut="MASS_EFFE_UN",into=("MASS_EFFE_UN","MASS_GENE") ), - ), -) ; - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2012 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: j-pierre.lefebvre at edf.fr - -def extr_resu_prod(RESULTAT,**args): - if AsType(RESULTAT) == evol_elas : return evol_elas - if AsType(RESULTAT) == evol_noli : return evol_noli - if AsType(RESULTAT) == evol_ther : return evol_ther - if AsType(RESULTAT) == evol_varc : return evol_varc - if AsType(RESULTAT) == dyna_trans : return dyna_trans - if AsType(RESULTAT) == dyna_harmo : return dyna_harmo - if AsType(RESULTAT) == acou_harmo : return acou_harmo - if AsType(RESULTAT) == mode_meca : return mode_meca - if AsType(RESULTAT) == mode_acou : return mode_acou - if AsType(RESULTAT) == mult_elas : return mult_elas - if AsType(RESULTAT) == fourier_elas : return fourier_elas - - raise AsException("type de concept resultat non prevu") - -EXTR_RESU=OPER(nom="EXTR_RESU",op=176,sd_prod=extr_resu_prod,reentrant='f', - UIinfo={"groupes":("Résultats et champs",)}, - fr="Extraire des champs au sein d'une SD Résultat", - RESULTAT =SIMP(statut='o',typ=(evol_elas,dyna_trans,dyna_harmo,acou_harmo,mode_meca, - mode_acou,evol_ther,evol_noli,evol_varc, - mult_elas,fourier_elas,fourier_ther ) ), - - - ARCHIVAGE =FACT(statut='f', - regles=( UN_PARMI('NUME_ORDRE', 'INST', 'FREQ', 'NUME_MODE', - 'NOEUD_CMP', 'LIST_INST', 'LIST_FREQ', 'LIST_ORDRE', - 'NOM_CAS', 'LIST_ARCH', 'PAS_ARCH' ), - EXCLUS( 'CHAM_EXCLU','NOM_CHAM' ), ), - CHAM_EXCLU =SIMP(statut='f',typ='TXM',validators=NoRepeat(),max='**'), - NOM_CHAM =SIMP(statut='f',typ='TXM',validators=NoRepeat(),max='**',into=C_NOM_CHAM_INTO()), - CRITERE =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU",),), - b_prec_rela=BLOC(condition="(CRITERE=='RELATIF')", - PRECISION =SIMP(statut='f',typ='R',defaut= 1.E-6,),), - b_prec_abso=BLOC(condition="(CRITERE=='ABSOLU')", - PRECISION =SIMP(statut='o',typ='R',),), - LIST_ARCH =SIMP(statut='f',typ=listis_sdaster), - PAS_ARCH =SIMP(statut='f',typ='I'), - NUME_ORDRE =SIMP(statut='f',typ='I',validators=NoRepeat(),max='**'), - LIST_ORDRE =SIMP(statut='f',typ=listis_sdaster), - INST =SIMP(statut='f',typ='R',validators=NoRepeat(),max='**'), - LIST_INST =SIMP(statut='f',typ=listr8_sdaster), - FREQ =SIMP(statut='f',typ='R',validators=NoRepeat(),max='**'), - LIST_FREQ =SIMP(statut='f',typ=listr8_sdaster), - NUME_MODE =SIMP(statut='f',typ='I',validators=NoRepeat(),max='**'), - NOEUD_CMP =SIMP(statut='f',typ='TXM',validators=NoRepeat(),max='**'), - NOM_CAS =SIMP(statut='f',typ='TXM'), - ), - - RESTREINT =FACT(statut='f', max=1, - fr="Pour réduire une ou plusieurs sd_resultat sur un maillage ou un modèle réduit", - regles=(UN_PARMI('MAILLAGE','MODELE'),), - MAILLAGE =SIMP(statut='f',typ=maillage_sdaster), - MODELE =SIMP(statut='f',typ=modele_sdaster), - ), - - TITRE =SIMP(statut='f',typ='TXM',max='**' ), -) ; - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2013 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: mathieu.courtois at edf.fr - -def extr_table_prod(TYPE_RESU,**args): - defs = globals() - typ = TYPE_RESU.lower() - if defs.get(typ) is not None: - return defs[typ] - raise AsException("type de concept resultat non prevu") - -EXTR_TABLE=OPER(nom="EXTR_TABLE", - op=173, - sd_prod=extr_table_prod, - reentrant='n', - UIinfo={"groupes":("Résultats et champs","Tables")}, - fr="Extraire d'une table des concepts Code_Aster", - TYPE_RESU =SIMP(statut='o',typ='TXM', - into=('MATR_ASSE_GENE_R', 'MATR_ELEM_DEPL_R', - 'VECT_ELEM_DEPL_R', - 'CHAM_GD_SDASTER', 'CHAM_NO_SDASTER', - 'CARTE_SDASTER', 'CHAM_ELEM', - 'MODE_MECA','TABLE_SDASTER', - 'FONCTION_SDASTER', 'FONCTION_C', 'NAPPE_SDASTER', - 'ENTIER', 'REEL'),), - - TABLE =SIMP(statut='o',typ=(table_sdaster,table_container)), - - NOM_PARA =SIMP(statut='o',typ='TXM'), - - FILTRE =FACT(statut='f',min=1,max='**', - NOM_PARA =SIMP(statut='o',typ='TXM'), - CRIT_COMP =SIMP(statut='f',typ='TXM',defaut="EQ", - into=("EQ","LT","GT","NE","LE","GE","VIDE", - "NON_VIDE","MAXI","MAXI_ABS","MINI","MINI_ABS") ), - b_vale =BLOC(condition = "(CRIT_COMP in ('EQ','NE','GT','LT','GE','LE'))", - regles=(UN_PARMI('VALE','VALE_I','VALE_K','VALE_C',),), - VALE =SIMP(statut='f',typ='R'), - VALE_I =SIMP(statut='f',typ='I'), - VALE_C =SIMP(statut='f',typ='C'), - VALE_K =SIMP(statut='f',typ='TXM'),), - - CRITERE =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU") ), - PRECISION =SIMP(statut='f',typ='R',defaut= 1.0E-3 ), - ), - - TITRE =SIMP(statut='f',typ='TXM',max='**' ), -) ; - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2012 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: jacques.pellet at edf.fr - -def factoriser_prod(MATR_ASSE,**args): - if AsType(MATR_ASSE) == matr_asse_depl_r : return matr_asse_depl_r - if AsType(MATR_ASSE) == matr_asse_depl_c : return matr_asse_depl_c - if AsType(MATR_ASSE) == matr_asse_temp_r : return matr_asse_temp_r - if AsType(MATR_ASSE) == matr_asse_temp_c : return matr_asse_temp_c - if AsType(MATR_ASSE) == matr_asse_pres_r : return matr_asse_pres_r - if AsType(MATR_ASSE) == matr_asse_pres_c : return matr_asse_pres_c - raise AsException("type de concept resultat non prevu") - -FACTORISER=OPER(nom="FACTORISER",op=14,sd_prod=factoriser_prod, - fr="Factoriser une matrice assemblée en un produit de deux matrices triangulaires"+ - "ou construire une matrice de préconditionnement pour une résolution par gradient conjugué", - reentrant='f', UIinfo={"groupes":("Résolution",)}, - regles=(EXCLUS('BLOC_DEBUT','DDL_DEBUT'), - EXCLUS('BLOC_FIN','DDL_FIN'),), - MATR_ASSE =SIMP(statut='o',typ=(matr_asse_depl_r,matr_asse_depl_c,matr_asse_temp_r, - matr_asse_temp_c,matr_asse_pres_r,matr_asse_pres_c) ), - - # mots clés pour solveur LDLT et MULT_FRONT et MUMPS: - STOP_SINGULIER =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON") ), - NPREC =SIMP(statut='f',typ='I',defaut=8), - - # mots clés pour solveur LDLT : - BLOC_DEBUT =SIMP(statut='f',typ='I',val_min=1,), - DDL_DEBUT =SIMP(statut='f',typ='I',val_min=1,), - BLOC_FIN =SIMP(statut='f',typ='I',val_min=1,), - DDL_FIN =SIMP(statut='f',typ='I',val_min=1,), - - # mots clés pour solveur MUMPS : - TYPE_RESOL =SIMP(statut='f',typ='TXM',defaut='AUTO',into=('NONSYM','SYMGEN','SYMDEF','AUTO')), - PRETRAITEMENTS =SIMP(statut='f',typ='TXM',defaut="AUTO",into=("SANS","AUTO")), - PCENT_PIVOT =SIMP(statut='f',typ='I',defaut=20,), - ELIM_LAGR =SIMP(statut='f',typ='TXM',defaut="LAGR2",into=("LAGR2","NON")), - GESTION_MEMOIRE =SIMP(statut='f',typ='TXM',defaut="IN_CORE",into=("IN_CORE","OUT_OF_CORE","EVAL")), - - # mots clés pour solveur GCPC et PETSc : - PRE_COND =SIMP(statut='f',typ='TXM',into=("LDLT_INC","JACOBI","SOR","LDLT_SP"),defaut="LDLT_INC" ), - b_ldlt_inc =BLOC(condition = "PRE_COND == 'LDLT_INC' ", - NIVE_REMPLISSAGE = SIMP(statut='f',typ='I',defaut= 0 ), - REMPLISSAGE = SIMP(statut='f',typ='R',defaut= 1.0), - ), - b_ldlt_sp =BLOC(condition = "PRE_COND == 'LDLT_SP' ", fr="Paramètres de la factorisation simple précision", - REAC_PRECOND =SIMP(statut='f',typ='I',defaut=30, ), - ), - b_jacobi_sor =BLOC(condition = "PRE_COND == 'JACOBI' or PRE_COND == 'SOR'", - fr="Paramètres des préconditionneurs JACOBI et SOR", - RENUM =SIMP(statut='f',typ='TXM',defaut="SANS",into=("SANS","RCMK") ), - ), - - TITRE =SIMP(statut='f',typ='TXM',max='**'), - INFO =SIMP(statut='f',typ='I',into=(1,2) ), -) ; - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: j-pierre.lefebvre at edf.fr -FIN=PROC(nom="FIN",op=9999,repetable='n',fr="Fin d'une étude, fin du travail engagé par une des commandes DEBUT ou POURSUITE", - UIinfo={"groupes":("Gestion du travail",)}, -# -# FIN est appelé prématurément en cas d'exception ("SIGUSR1", ArretCPUError, -# NonConvergenceError..., erreurs ou erreurs récupérées). -# En cas d'ArretCPUError, on limite au maximum le travail à faire dans FIN. -# Pour cela, on force certains mots-clés dans Execution/E_JDC.py. -# - FORMAT_HDF =SIMP(fr="sauvegarde de la base GLOBALE au format HDF",statut='f', - typ='TXM',defaut="NON",into=("OUI","NON",) ), - RETASSAGE =SIMP(fr="provoque le retassage de la base GLOBALE", - statut='f',typ='TXM',defaut="NON",into=("OUI","NON",) ), - INFO_RESU =SIMP(fr="provoque l'impression des informations sur les structures de données", - statut='f',typ='TXM',defaut="OUI",into=("OUI","NON",) ), - UNITE =SIMP(statut='f',typ='I',defaut=6), -) ; - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: andre.adobes at edf.fr -FONC_FLUI_STRU=OPER(nom="FONC_FLUI_STRU",op= 169,sd_prod=fonction_sdaster, - reentrant='n',fr="Crée une fonction constante paramétrée par l'abscisse curviligne", - UIinfo={"groupes":("Fonctions",)}, - TYPE_FLUI_STRU =SIMP(statut='o',typ=(type_flui_stru) ), -) ; - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2011 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: mathieu.courtois at edf.fr -def formule_prod(self, VALE, VALE_C, **args): - if VALE != None: - return formule - elif VALE_C != None: - return formule_c - -FORMULE=FORM(nom="FORMULE", - op_init=ops.build_formule, - op=-5, - sd_prod=formule_prod, - UIinfo={"groupes":("Fonctions",)}, - fr="Définit une formule réelle ou complexe à partir de son expression mathématique", - regles = (UN_PARMI('VALE', 'VALE_C',),), - VALE = SIMP(statut='f', typ='TXM'), - VALE_C = SIMP(statut='f', typ='TXM'), - NOM_PARA = SIMP(statut='o', typ='TXM', max='**'), -) - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2012 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: irmela.zentner at edf.fr -GENE_ACCE_SEISME=MACRO(nom="GENE_ACCE_SEISME", - op=OPS('Macro.gene_acce_seisme_ops.gene_acce_seisme_ops'), - sd_prod=table_fonction, - fr="Generation d'accelerogrammes sismiques ", - reentrant='n', - UIinfo={"groupes":("Fonctions","Dynamique",)}, - - INIT_ALEA =SIMP(statut='f',typ='I'), - TITRE =SIMP(statut='f',typ='TXM',max='**'), - INFO =SIMP(statut='f',typ='I',defaut= 1,into=( 1 , 2) ), - PAS_INST =SIMP(statut='o',typ='R' ), - NB_POIN =SIMP(statut='f',typ='I',fr="nombre de points" ), - PESANTEUR =SIMP(statut='o', typ='R', fr="constante de normalisation de ACCE_MAX, ECART_TYPE et INTE_ARIAS (g) ou le spectre" ), - DUREE_PHASE_FORTE =SIMP(statut='o',typ='R',fr="durée phase forte du signal" ), - NB_TIRAGE =SIMP(statut='f',typ='I',defaut= 1,fr="nombre accelerogrammes" ), - FREQ_FILTRE =SIMP(statut='f',typ='R',fr="frequence du filtre: corner frequency"), -# - DSP = FACT(statut='f',max=1, - AMOR_REDUIT =SIMP(statut='o',typ='R'), - FREQ_FOND =SIMP(statut='o',typ='R', fr="frequence centrale"), - FREQ_PENTE =SIMP(statut='f',typ='R', fr="pente pour l'evolution de la frequence centrale"), - ), - SPEC_MEDIANE = FACT(statut='f',max=1, - regles=(ENSEMBLE('ERRE_ZPA','ERRE_MAX','ERRE_RMS'),EXCLUS('FREQ_PAS','LIST_FREQ'),), - SPEC_OSCI =SIMP(statut='o',typ=(fonction_sdaster),), - AMOR_REDUIT =SIMP(statut='o', typ='R', val_min=0., val_max=1.), - FREQ_PAS =SIMP(statut='f',typ='R' , fr="pas"), - LIST_FREQ =SIMP(statut='f', typ=listr8_sdaster ), - NB_ITER =SIMP(statut='f',typ='I' ,defaut=0, val_min=0,fr="nombre d'iterations pour fitter le spectre" ,), - ERRE_ZPA =SIMP(statut='f',typ='R' ,defaut=(1.,0.2), min=1,max=2, fr="coef et erreur maxi ZPA",), - ERRE_MAX =SIMP(statut='f',typ='R' ,defaut=(0.5,0.2), min=1,max=2, fr="coef et erreur maxi global",), - ERRE_RMS =SIMP(statut='f',typ='R' ,defaut=(0.5,0.2), min=1,max=2, fr="coef et erreur maxi rms",), - FREQ_PENTE =SIMP(statut='f',typ='R', fr="pente pour l'evolution de la frequence centrale"), - METHODE =SIMP(statut='f',typ='TXM',defaut="HARMO",into=("NIGAM","HARMO") ), - ), - SPEC_UNIQUE = FACT(statut='f',max=1, - regles=(ENSEMBLE('ERRE_ZPA','ERRE_MAX','ERRE_RMS'),EXCLUS('FREQ_PAS','LIST_FREQ'),), - ERRE_ZPA =SIMP(statut='f',typ='R' ,defaut=(1.,0.2), min=1,max=2, fr="coef et erreur maxi ZPA",), - ERRE_MAX =SIMP(statut='f',typ='R' ,defaut=(0.5,0.2), min=1,max=2, fr="coef et erreur maxi global",), - ERRE_RMS =SIMP(statut='f',typ='R' ,defaut=(0.5,0.2), min=1,max=2, fr="coef et erreur maxi rms",), - SPEC_OSCI =SIMP(statut='o',typ=(fonction_sdaster),), - AMOR_REDUIT =SIMP(statut='o', typ='R', val_min=0., val_max=1.), - FREQ_PAS =SIMP(statut='f',typ='R' , fr="pas"), - LIST_FREQ =SIMP(statut='f', typ=listr8_sdaster ), - NB_ITER =SIMP(statut='f',typ='I' ,defaut=0, val_min=0,fr="nombre d'iterations pour fitter le spectre" ,), - METHODE =SIMP(statut='f',typ='TXM',defaut="HARMO",into=("NIGAM","HARMO") ), - ), -# - SPEC_FRACTILE = FACT(statut='f',max=1, - regles=(ENSEMBLE('ERRE_ZPA','ERRE_MAX','ERRE_RMS'), EXCLUS('FREQ_PAS','LIST_FREQ'),), - SPEC_OSCI =SIMP(statut='o',typ=(fonction_sdaster),), - SPEC_1_SIGMA =SIMP(statut='o',typ=(fonction_sdaster),), - AMOR_REDUIT =SIMP(statut='o', typ='R', val_min=0., val_max=1.), - FREQ_PAS =SIMP(statut='f',typ='R' , fr="pas"), - LIST_FREQ =SIMP(statut='f', typ=listr8_sdaster ), - FREQ_PENTE =SIMP(statut='f',typ='R', fr="pente pour l'evolution de la frequence centrale"), - ), - - - regles=(UN_PARMI('DSP','SPEC_MEDIANE','SPEC_UNIQUE','SPEC_FRACTILE'),), - MODULATION = FACT(statut='o',max=1, - regles=(EXCLUS('ACCE_MAX','INTE_ARIAS','ECART_TYPE'),), - TYPE = SIMP(statut='o',typ='TXM' , into=("GAMMA","JENNINGS_HOUSNER","CONSTANT")), - ACCE_MAX = SIMP(statut='f',typ='R',fr="PGA: acceleration max au sol (g)" ), - ECART_TYPE = SIMP(statut='f',typ='R',fr="ecart-type" ), - INTE_ARIAS = SIMP(statut='f',typ='R',fr="intensite d'Arias" ), - c_type_mod = BLOC(condition="TYPE=='GAMMA' ", - INST_INI = SIMP(statut='o',typ='R',fr="instant debut phase forte" ), - ), - ), -) ; - - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2012 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: irmela.zentner at edf.fr -GENE_FONC_ALEA=OPER(nom="GENE_FONC_ALEA",op= 118,sd_prod=table_fonction, - fr="Génération de la fonction temporelle à partir d une matrice interspectrale", - reentrant='n', - UIinfo={"groupes":("Fonctions",)}, - INTE_SPEC =SIMP(statut='o',typ=interspectre), - NUME_VITE_FLUI =SIMP(statut='f',typ='I' ), - INTERPOL =SIMP(statut='f',typ='TXM',defaut="OUI",into=("NON","OUI") ), - b_interpol_oui =BLOC(condition = "INTERPOL == 'OUI' ",fr="Parametres cas interpolation autorisee", - DUREE_TIRAGE =SIMP(statut='f',typ='R' ), - FREQ_INIT =SIMP(statut='f',typ='R' ), - FREQ_FIN =SIMP(statut='f',typ='R' ), - ), - NB_POIN =SIMP(statut='f',typ='I'), - NB_TIRAGE =SIMP(statut='f',typ='I',defaut= 1 ), - INIT_ALEA =SIMP(statut='f',typ='I'), - INFO =SIMP(statut='f',typ='I',defaut= 1,into=( 1 , 2) ), - TITRE =SIMP(statut='f',typ='TXM',max='**'), -) ; - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2002 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: irmela.zentner at edf.fr -def gene_matr_alea_prod(MATR_MOYEN,**args ): - if (AsType(MATR_MOYEN) == matr_asse_gene_r ) : return matr_asse_gene_r - if (AsType(MATR_MOYEN) == macr_elem_dyna) : return macr_elem_dyna - raise AsException("type de concept resultat non prevu") - -GENE_MATR_ALEA=OPER(nom="GENE_MATR_ALEA",op= 27, -#sd_prod=matr_asse_gene_r, -sd_prod=gene_matr_alea_prod, - fr="Générer une réalisation d'une matrice aléatoire réelle sym. déf. positive ou d'un macro élément dynamique", - reentrant='n', - UIinfo={"groupes":("Matrices et vecteurs",)}, - MATR_MOYEN = SIMP(statut='o', typ=(matr_asse_gene_r,macr_elem_dyna)), - -# cas matrice generalisee - b_matr =BLOC( condition = "AsType(MATR_MOYEN) in (matr_asse_gene_r,)", - COEF_VAR = SIMP(statut='f', typ='R', defaut=0.1, val_min=0.E+0 , - fr="coefficient de variation de la matrice a generer" ), - ), -# cas macr_elem_dyna - b_macr =BLOC( condition = "AsType(MATR_MOYEN) in (macr_elem_dyna,)", - fr="cas macr_elem_dyna (sous-structuratio)", - COEF_VAR_RIGI = SIMP(statut='f', typ='R', defaut=0.1, val_min=0.E+0 , - fr="coefficient de variation de la matrice de raideur" ), - COEF_VAR_MASS = SIMP(statut='f', typ='R', defaut=0., val_min=0.E+0 , - fr="coefficient de variation de la matrice de masse" ), - COEF_VAR_AMOR = SIMP(statut='f', typ='R', defaut=0., val_min=0.E+0 , - fr="coefficient de variation de la matrice d'amortissement" ),), - - INIT_ALEA =SIMP(statut='f',typ='I'), -) ; - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2011 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: irmela.zentner at edf.fr - -GENE_VARI_ALEA=MACRO(nom="GENE_VARI_ALEA", - op_init=ops.build_gene_vari_alea, - op=EMPTY_OPS, - sd_prod=reel, - reentrant='n', - fr="Générer une réalisation d'une variable aléatoire réelle " \ - "de loi de probabilité donnée (Gamma ou Exponentielle)", - UIinfo={"groupes":("Fonctions",)}, - TYPE = SIMP(statut='f', typ='TXM', into=("EXP_TRONQUEE", "EXPONENTIELLE", "GAMMA"), defaut="GAMMA"), - b_gamma =BLOC(condition = "TYPE == 'GAMMA' ",fr="Parametres loi gamma", - VALE_MOY = SIMP(statut='f', typ='R', defaut=1.), - BORNE_INF = SIMP(statut='f', typ='R', defaut=0.), - COEF_VAR = SIMP(statut='f', typ='R', defaut=0.1), - ), - b_expo =BLOC(condition = "TYPE == 'EXPONENTIELLE' ",fr="Parametres loi exponentielle", - VALE_MOY = SIMP(statut='f', typ='R', defaut=0.), - BORNE_INF = SIMP(statut='f', typ='R', defaut=-1.), - ), - b_expo_tronq =BLOC(condition = "TYPE == 'EXP_TRONQUEE' ",fr="Parametres loi exponentielle tronquee", - VALE_MOY = SIMP(statut='f', typ='R', defaut=0.), - BORNE_INF = SIMP(statut='f', typ='R', defaut=-1.), - BORNE_SUP = SIMP(statut='f', typ='R', defaut=1.), - ), - INIT_ALEA =SIMP(statut='f',typ='I'), -) - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2012 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: j-pierre.lefebvre at edf.fr -IMPR_CO=PROC(nom="IMPR_CO",op=17, - UIinfo={"groupes":("Impression","Utilitaires",)}, - fr="Imprimer tous les objets JEVEUX qui constituent un concept utilisateur existant (pour les développeurs)", - regles=(UN_PARMI('CONCEPT','CHAINE','TOUT' ),), - - UNITE =SIMP(statut='f',typ='I',defaut=8), - NIVEAU =SIMP(statut='f',typ='I',defaut=2,into=(-1,0,1,2) ), - ATTRIBUT =SIMP(statut='f',typ='TXM',defaut="NON",into=("NON","OUI") ), - CONTENU =SIMP(statut='f',typ='TXM',defaut="OUI",into=("NON","OUI") ), - BASE =SIMP(statut='f',typ='TXM',defaut="G",into=(" ","G","V","L") ), - CONCEPT =FACT(statut='f',max='**', - NOM =SIMP(statut='o',typ=assd,validators=NoRepeat(),max='**'),), - CHAINE =SIMP(statut='f',typ='TXM'), - POSITION =SIMP(statut='f',typ='I',defaut=1), - TOUT =SIMP(statut='f',typ='TXM',into=("OUI",) ), -) ; - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2011 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# - - -IMPR_DIAG_CAMPBELL=MACRO(nom="IMPR_DIAG_CAMPBELL", - op=OPS('Macro.impr_diag_campbell_ops.impr_diag_campbell_ops'), - fr="Tracé du Diagramme de Campbell", - UIinfo={"groupes":("Impression","Outils-métier",)}, - MAILLAGE =SIMP(statut='o',typ=maillage_sdaster), - MODES =SIMP(statut='o',typ=table_container), - NFREQ_CAMP =SIMP(statut='o',typ='I' ), - TYP_PREC =SIMP(statut='f',typ='I',defaut= 1, into=(1,2) ), - TYP_TRI =SIMP(statut='f',typ='I',defaut= 2, into=(0,1,2) ), - UNIT_FLE =SIMP(statut='o',typ='I' ,val_min=1), - UNIT_TOR =SIMP(statut='o',typ='I' ,val_min=1), - UNIT_LON =SIMP(statut='o',typ='I' ,val_min=1), - UNIT_TOT =SIMP(statut='o',typ='I' ,val_min=1), - UNIT_INT =SIMP(statut='o',typ='I' ,val_min=1), - L_S =SIMP(statut='f',typ='R', defaut= 1., max='**'), -); - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2011 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: mathieu.courtois at edf.fr - -IMPR_FONCTION=MACRO(nom="IMPR_FONCTION", - op=OPS('Macro.impr_fonction_ops.impr_fonction_ops'), - sd_prod=None, - fr="Imprime le contenu d'objets de type fonction ou liste de " \ - "réels dans un fichier destiné à un traceur de courbe", - UIinfo={"groupes":("Impression","Fonctions",)}, - FORMAT =SIMP(statut='o',typ='TXM',position='global',defaut='TABLEAU', - into=("TABLEAU","AGRAF","XMGRACE",),), - b_pilote = BLOC(condition = "FORMAT == 'XMGRACE'", - fr="Mots-clés propres à XMGRACE", - PILOTE =SIMP(statut='f',typ='TXM',defaut='', - into=('','POSTSCRIPT','EPS','MIF','SVG','PNM','PNG','JPEG','PDF','INTERACTIF'), - fr="Pilote de sortie, PNG/JPEG/PDF ne sont pas disponibles sur toutes les installations de xmgrace"), - UNITE =SIMP(statut='f',typ='I',val_min=10,val_max=90,defaut=29, - fr="Unité logique définissant le fichier (fort.N) dans lequel on écrit"), - ), - b_agraf = BLOC(condition = "FORMAT == 'AGRAF'", - fr="Mots-clés propres à AGRAF", - UNITE =SIMP(statut='o',typ='I',defaut=25, - fr="Unité logique définissant le fichier (fort.N) dans lequel on écrit"), - UNITE_DIGR =SIMP(statut='o',typ='I',defaut=26, - fr="Unité logique définissant le fichier dans lequel on écrit les directives Agraf"), - ), - # unite pour TABLEAU dans le bloc de mise en forme spécifique - - COURBE =FACT(statut='o',max='**',fr="Définition de la fonction à tracer", - regles=(UN_PARMI('FONCTION','LIST_RESU','FONC_X','ABSCISSE'),), - FONCTION =SIMP(statut='f',typ=(fonction_sdaster, formule, fonction_c, nappe_sdaster), - fr="Fonction réelle ou complexe", ), - LIST_RESU =SIMP(statut='f',typ=listr8_sdaster, - fr="Liste des ordonnees d'une fonction réelle définie par deux listes", ), - FONC_X =SIMP(statut='f',typ=(fonction_sdaster,formule), - fr="Fonction abscisses d'une fonction paramétrique",), - ABSCISSE =SIMP(statut='f',typ='R',max='**', - fr="Valeurs des abscisses", ), - b_fonction =BLOC(condition = "FONCTION != None", - LIST_PARA =SIMP(statut='f',typ=listr8_sdaster ), - ), - b_fonction_c =BLOC(condition = "AsType(FONCTION) in (fonction_c, formule_c)", - fr="Fonction complexe définie par le mot-clé fonction", - PARTIE =SIMP(statut='f',typ='TXM',into=("REEL","IMAG") ), - ), - b_list_resu =BLOC(condition = "LIST_RESU != None", - LIST_PARA =SIMP(statut='o',typ=listr8_sdaster ), - ), - b_fonc_x =BLOC(condition = "FONC_X != None", - FONC_Y =SIMP(statut='o',typ=(fonction_sdaster,formule),fr="Fonction ordonnées d une fonction paramétrique" ), - LIST_PARA =SIMP(statut='f',typ=listr8_sdaster ), - ), - b_vale_resu =BLOC(condition = "ABSCISSE != None", - ORDONNEE =SIMP(statut='o',typ='R',max='**', - fr="Valeurs des ordonnées"), - ), - - # mots-clés utilisant uniquement aux formats autres que TABLEAU - # mais ce serait trop pénible de devoir les supprimer quand on change de format - # donc on ne les met pas dans un bloc - # "pseudo" bloc mise en forme : - LEGENDE =SIMP(statut='f',typ='TXM', - fr="Légende associée à la fonction" ), - STYLE =SIMP(statut='f',typ='I',val_min=0, - fr="Style de la ligne représentant la fonction",), - COULEUR =SIMP(statut='f',typ='I',val_min=0, - fr="Couleur associée à la fonction",), - MARQUEUR =SIMP(statut='f',typ='I',val_min=0, - fr="Type du marqueur associé à la fonction",), - FREQ_MARQUEUR =SIMP(statut='f',typ='I',defaut=0, - fr="Fréquence d impression du marqueur associé à la fonction", ), - # fin bloc mise en forme - - TRI =SIMP(statut='f',typ='TXM',defaut="N", - fr="Choix du tri effectué sur les abscisses ou sur les ordonnées", - into=("N","X","Y","XY","YX") ), - ), - # Mise en page du tableau ou du graphique - b_tableau = BLOC(condition = "FORMAT == 'TABLEAU'", - fr="Mots-clés propres au format Tableau", - UNITE =SIMP(statut='o',typ='I',defaut=8, - fr="Unité logique définissant le fichier (fort.N) dans lequel on écrit"), - TITRE =SIMP(statut='f',typ='TXM', - fr="Titre associé au graphique" ), - SOUS_TITRE =SIMP(statut='f',typ='TXM', - fr="Sous-titre du graphique" ), - SEPARATEUR =SIMP(statut='f',typ='TXM',defaut=' ', - fr="Séparateur des colonnes du tableau (ex : ' ', ';'...)"), - COMMENTAIRE =SIMP(statut='f',typ='TXM',defaut='#', - fr="Caractère indiquant au traceur de fonction que la ligne peut etre ignorée"), - COMM_PARA =SIMP(statut='f',typ='TXM',defaut='', - fr="Caractère utilisé pour commentariser la ligne des labels de colonnes"), - DEBUT_LIGNE =SIMP(statut='f',typ='TXM',defaut='', - fr="Caractère de debut de ligne"), - FIN_LIGNE =SIMP(statut='f',typ='TXM',defaut='\n', - fr="Caractère de fin de ligne"), - ), - b_graphique = BLOC(condition = "FORMAT != 'TABLEAU'", - fr="Mise en page du graphique", - TITRE =SIMP(statut='f',typ='TXM', - fr="Titre associé au graphique" ), - SOUS_TITRE =SIMP(statut='f',typ='TXM', - fr="Sous-titre du graphique" ), - BORNE_X =SIMP(statut='f',typ='R',min=2,max=2, - fr="Intervalles de variation des abscisses"), - BORNE_Y =SIMP(statut='f',typ='R',min=2,max=2, - fr="Intervalles de variation des ordonnées"), - ECHELLE_X =SIMP(statut='f',typ='TXM',defaut="LIN",into=("LIN","LOG"), - fr="Type d'échelle pour les abscisses" ), - ECHELLE_Y =SIMP(statut='f',typ='TXM',defaut="LIN",into=("LIN","LOG"), - fr="Type d'échelle pour les ordonnées" ), - GRILLE_X =SIMP(statut='f',typ='R',max=1,val_min=0., - fr="Pas du quadrillage vertical" ), - GRILLE_Y =SIMP(statut='f',typ='R',max=1,val_min=0., - fr="Pas du quadrillage horizontal" ), - LEGENDE_X =SIMP(statut='f',typ='TXM', - fr="Légende associée à l'axe des abscisses" ), - LEGENDE_Y =SIMP(statut='f',typ='TXM', - fr="Légende associée à l'axe des ordonnées" ), - ), - INFO =SIMP(statut='f',typ='I',defaut=1,into=(1,2) ), -) ; - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2011 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: emmanuel.boyere at edf.fr -IMPR_GENE=PROC(nom="IMPR_GENE",op= 157, - fr="Imprimer le résultat d'un calcul dynamique en variables généralisées au format RESULTAT", - UIinfo={"groupes":("Impression","Dynamique",)}, - FORMAT =SIMP(statut='f',typ='TXM',defaut="RESULTAT",into=("RESULTAT",) ), - UNITE =SIMP(statut='f',typ='I',defaut=8), - GENE =FACT(statut='o',max='**', - regles=(EXCLUS('TOUT_ORDRE','NUME_ORDRE','INST','FREQ','NUME_MODE', - 'LIST_INST','LIST_FREQ','TOUT_MODE','TOUT_INST','LIST_ORDRE'), - EXCLUS('TOUT_MODE','NUME_ORDRE','INST','FREQ','NUME_MODE', - 'LIST_INST','LIST_FREQ','TOUT_ORDRE','TOUT_INST','LIST_ORDRE'), - EXCLUS('TOUT_INST','NUME_ORDRE','INST','FREQ','NUME_MODE', - 'LIST_INST','LIST_FREQ','TOUT_ORDRE','LIST_ORDRE'), - EXCLUS('TOUT_CMP_GENE','NUME_CMP_GENE'), - EXCLUS('TOUT_CHAM','NOM_CHAM'), - EXCLUS('TOUT_PARA','NOM_PARA'),), -# faut-il faire des blocs selon le type de RESU_GENE - RESU_GENE =SIMP(statut='o',typ=(vect_asse_gene, tran_gene, mode_gene, harm_gene)), - TOUT_ORDRE =SIMP(statut='f',typ='TXM',into=("OUI",) ), - NUME_ORDRE =SIMP(statut='f',typ='I',validators=NoRepeat(),max='**'), - LIST_ORDRE =SIMP(statut='f',typ=listis_sdaster ), - INST =SIMP(statut='f',typ='R',validators=NoRepeat(),max='**'), - LIST_INST =SIMP(statut='f',typ=listr8_sdaster ), - TOUT_INST =SIMP(statut='f',typ='TXM',into=("OUI",) ), - FREQ =SIMP(statut='f',typ='R',validators=NoRepeat(),max='**'), - LIST_FREQ =SIMP(statut='f',typ=listr8_sdaster ), - TOUT_MODE =SIMP(statut='f',typ='TXM',into=("OUI",) ), - NUME_MODE =SIMP(statut='f',typ='I',validators=NoRepeat(),max='**'), - CRITERE =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU",),), - b_prec_rela=BLOC(condition="(CRITERE=='RELATIF')", - PRECISION =SIMP(statut='f',typ='R',defaut= 1.E-6,),), - b_prec_abso=BLOC(condition="(CRITERE=='ABSOLU')", - PRECISION =SIMP(statut='o',typ='R',),), - TOUT_CMP_GENE =SIMP(statut='f',typ='TXM',into=("OUI","NON") ), - NUME_CMP_GENE =SIMP(statut='f',typ='I',max='**'), - TOUT_CHAM =SIMP(statut='f',typ='TXM',into=("OUI","NON") ), - NOM_CHAM =SIMP(statut='f',typ='TXM',validators=NoRepeat(),max='**',into=C_NOM_CHAM_INTO(),), - TOUT_PARA =SIMP(statut='f',typ='TXM',into=("OUI","NON") ), - NOM_PARA =SIMP(statut='f',typ='TXM',max='**'), - SOUS_TITRE =SIMP(statut='f',typ='TXM',max='**'), - INFO_CMP_GENE =SIMP(statut='f',typ='TXM',into=("OUI","NON") ), - INFO_GENE =SIMP(statut='f',typ='TXM',into=("OUI","NON") ), - ), -) ; - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: j-pierre.lefebvre at edf.fr -IMPR_JEVEUX=PROC(nom="IMPR_JEVEUX",op=16, - UIinfo={"groupes":("Impression","Utilitaires",)}, - fr="Imprimer le contenu des objets créés par JEVEUX (pour développeur)", - ENTITE =SIMP(fr="choix de l'observation",statut='o',typ='TXM', - into=("DISQUE","MEMOIRE","REPERTOIRE", - "OBJET","ATTRIBUT","SYSTEME","ENREGISTREMENT") ), - b_objet =BLOC(condition = "(ENTITE=='OBJET')", - NOMOBJ =SIMP(fr="nom d'objet",statut='f',typ='TXM' ), - NUMOC =SIMP(fr="numéro d objet de collection",statut='f',typ='I' ), - NOMOC =SIMP(fr="nom d'objet de collection",statut='f',typ='TXM' ), - ), - b_attribut =BLOC(condition = "(ENTITE=='ATTRIBUT')", - NOMOBJ =SIMP(fr="nom de collection",statut='f',typ='TXM' ), - NOMATR =SIMP(fr="nom d attribut de collection",statut='f',typ='TXM', - into=('$$DESO','$$IADD','$$IADM','$$NOM','$$LONG', - '$$LONO','$$LUTI','$$NUM') ), - ), - b_systeme =BLOC(condition = "(ENTITE=='SYSTEME')", - CLASSE =SIMP(statut='o',typ='TXM',into=('G','V') ), - NOMATR =SIMP(fr="nom d attribut systeme",statut='f',typ='TXM', - into=('$$CARA','$$IADD','$$GENR','$$TYPE','$$MARQ', - '$$DOCU','$$ORIG','$$RNOM','$$LTYP','$$LONG', - '$$LONO','$$DATE','$$LUTI','$$HCOD','$$INDX', - '$$TLEC','$$TECR','$$IADM','$$ACCE','$$USADI') ), - ), - b_repertoire =BLOC(condition = "(ENTITE=='REPERTOIRE')", - CLASSE =SIMP(statut='f',typ='TXM',into=('G','V',' '),defaut=' '), - ), - b_disque =BLOC(condition = "(ENTITE=='DISQUE')", - CLASSE =SIMP(statut='f',typ='TXM' ,into=('G','V',' '),defaut=' '), - ), - b_enregist =BLOC(condition = "(ENTITE=='ENREGISTREMENT')", - CLASSE =SIMP(statut='f',typ='TXM' ,into=('G','V'),defaut='G'), - NUMERO =SIMP(statut='o',typ='I',val_min=1), - INFO =SIMP(statut='f',typ='I',into=(1,2),defaut=1), - ), - IMPRESSION =FACT(statut='f', - NOM =SIMP(statut='f',typ='TXM' ), - UNITE =SIMP(statut='f',typ='I'), - ), - COMMENTAIRE =SIMP(statut='f',typ='TXM' ), -) ; - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2011 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: mathieu.corus at edf.fr - -IMPR_MACR_ELEM=PROC(nom="IMPR_MACR_ELEM",op= 160, - UIinfo={"groupes":("Impression","Outils-métier",)}, - fr="Impression d'une structure de données MACR_ELEM_DYNA au format IDEAS MISS3D", - MACR_ELEM_DYNA =SIMP(statut='o',typ=macr_elem_dyna ), - FORMAT =SIMP(statut='f',typ='TXM',defaut="IDEAS", - into=("MISS_3D","IDEAS") ), - - b_ideas =BLOC(condition = "FORMAT == 'IDEAS'", - UNITE =SIMP(statut='f',typ='I',defaut=30), - VERSION =SIMP(statut='f',typ='I',defaut= 5,into=( 5 ,) ), - ), - - b_miss_3d =BLOC(condition = "FORMAT == 'MISS_3D'", - regles=(EXCLUS('AMOR_REDUIT','LIST_AMOR'),), - UNITE =SIMP(statut='f',typ='I',defaut= 26 ), - SOUS_TITRE =SIMP(statut='f',typ='TXM',max='**'), - AMOR_REDUIT =SIMP(statut='f',typ='R' ,max='**'), - LIST_AMOR =SIMP(statut='f',typ=listr8_sdaster ), - GROUP_MA_INTERF =SIMP(statut='o',typ=grma ,max='**'), - GROUP_MA_FLU_STR=SIMP(statut='f',typ=grma,max='**'), - GROUP_MA_FLU_SOL=SIMP(statut='f',typ=grma,max='**'), - GROUP_MA_SOL_SOL=SIMP(statut='f',typ=grma,max='**'), - GROUP_MA_CONTROL=SIMP(statut='f',typ=grma,max='**'), - FORMAT_R =SIMP(statut='f',typ='TXM',defaut="1PE12.5",into=("1PE12.5","1PE16.9") ), - IMPR_MODE_MECA =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON") ), - IMPR_MODE_STAT =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON") ), - ), - - -) ; - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2011 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: nicolas.greffet at edf.fr -# -# RECUPERATION DES MAILLAGES IFS VENANT DE SATURNE VIA YACS -# -IMPR_MAIL_YACS=PROC(nom="IMPR_MAIL_YACS",op=43, - UIinfo={"groupes":("Maillage",)}, - fr="Lecture d'un maillage via YACS lors du Couplage de Code_Aster et Saturne", - UNITE_MAILLAGE = SIMP(statut='f',typ='I',defaut=30), - TYPE_MAILLAGE = SIMP(statut='o',typ='TXM',into=("SOMMET","MILIEU")), - INFO =SIMP(statut='f',typ='I',defaut=1,into=(1,2)), -) ; - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2011 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: isabelle.fournier at edf.fr -# -IMPR_OAR =MACRO(nom="IMPR_OAR", - op=OPS('Macro.impr_oar_ops.impr_oar_ops'), - sd_prod=None, - fr="Impression au format OAR", - UIinfo={"groupes":("Impression","Outils-métier",)}, - TYPE_CALC = SIMP(statut='o', typ='TXM',into=('COMPOSANT', 'MEF', 'TUYAUTERIE')), - b_composant =BLOC(condition = "TYPE_CALC == 'COMPOSANT' ", - regles = (AU_MOINS_UN('RESU_MECA','RESU_THER')), - DIAMETRE = SIMP(statut='o', typ='R'), - ORIGINE = SIMP(statut='o', typ='TXM', defaut='INTERNE', into=('INTERNE', 'EXTERNE')), - COEF_U = SIMP(statut='f', typ='R', defaut=1.0), - ANGLE_C = SIMP(statut='o', typ='R', defaut=0.0), - REVET = SIMP(statut='f', typ='TXM', defaut='NON', into=('OUI', 'NON')), - RESU_MECA = FACT(statut='f', max='**', - NUM_CHAR = SIMP(statut='o', typ='I'), - TYPE = SIMP(statut='o', typ='TXM', defaut='FX', into=('FX', 'FY', 'FZ', 'MX', 'MY', 'MZ', 'PRE')), - TABLE = SIMP(statut='o', typ=table_sdaster), - TABLE_S = SIMP(statut='f', typ=table_sdaster)), - RESU_THER = FACT(statut='f', max='**', - NUM_TRAN = SIMP(statut='o', typ='I'), - TABLE_T = SIMP(statut='o', typ=table_sdaster), - TABLE_TEMP= SIMP(statut='o', typ=table_sdaster), - TABLE_S = SIMP(statut='f', typ=table_sdaster), - TABLE_ST = SIMP(statut='f', typ=table_sdaster)), - ), - b_mef = BLOC(condition = "TYPE_CALC == 'MEF' ", - regles = (AU_MOINS_UN('RESU_MECA','RESU_THER')), - DIAMETRE = SIMP(statut='o', typ='R'), - ORIGINE = SIMP(statut='o', typ='TXM', defaut='INTERNE', into=('INTERNE', 'EXTERNE')), - COEF_U = SIMP(statut='f', typ='R', defaut=1.0), - RESU_MECA = FACT(statut='f', max='**', - AZI = SIMP(statut='o', typ='R'), - TABLE_T = SIMP(statut='o', typ=table_sdaster), - TABLE_F = SIMP(statut='o', typ=table_sdaster), - TABLE_P = SIMP(statut='o', typ=table_sdaster), - TABLE_CA = SIMP(statut='o', typ=table_sdaster)), - RESU_THER=FACT(statut='f', max='**', - AZI = SIMP(statut='o', typ='R'), - NUM_CHAR = SIMP(statut='o', typ='I'), - TABLE_T = SIMP(statut='o', typ=table_sdaster), - TABLE_TI = SIMP(statut='o', typ=table_sdaster)), - ), - b_tuyauterie = BLOC(condition = "TYPE_CALC == 'TUYAUTERIE' ", - RESU_MECA = FACT(statut='o', max='**', - NUM_CHAR = SIMP(statut='o', typ='I'), - TABLE = SIMP(statut='o', typ=table_sdaster), - MAILLAGE = SIMP(statut='o', typ=maillage_sdaster)), - ), - UNITE = SIMP(statut='f',typ='I',defaut=38), - AJOUT = SIMP(statut='f', typ='TXM', defaut='NON', into=('OUI', 'NON')), - ); - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2013 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: nicolas.sellenet at edf.fr -IMPR_RESU=PROC(nom="IMPR_RESU",op=39, - UIinfo={"groupes":("Impression","Résultats et champs",)}, - fr="Imprimer un maillage et/ou les résultats d'un calcul (différents formats)", - - FORMAT =SIMP(statut='f',typ='TXM',position='global',defaut="RESULTAT", - into=("RESULTAT","IDEAS","ASTER","CASTEM","MED","GMSH") ), - - b_modele =BLOC(condition="FORMAT!='MED'",fr="Modèle", - MODELE =SIMP(statut='f',typ=modele_sdaster), - ), - - b_format_resultat =BLOC(condition="FORMAT=='RESULTAT'",fr="unité logique d'impression au format RESULTAT", - UNITE =SIMP(statut='f',typ='I',defaut=8), - ), - - b_format_ideas =BLOC(condition="FORMAT=='IDEAS'",fr="unité logique d'impression et version IDEAS", - UNITE =SIMP(statut='f',typ='I',defaut=30), - VERSION =SIMP(statut='f',typ='I',defaut=5,into=(4,5)), - ), - - b_format_aster =BLOC(condition="FORMAT=='ASTER'",fr="unité logique d'impression au format ASTER", - UNITE =SIMP(statut='f',typ='I',defaut=26), - ), - - b_format_castem =BLOC(condition="FORMAT=='CASTEM'",fr="unité logique d'impression et version CASTEM", - UNITE =SIMP(statut='f',typ='I',defaut=37), - NIVE_GIBI =SIMP(statut='f',typ='I',defaut=10,into=(3,10)), - ), - - b_format_med =BLOC(condition="FORMAT=='MED'",fr="unité logique d'impression au format MED", - UNITE =SIMP(statut='f',typ='I',defaut=80), - ), - - b_format_gmsh =BLOC(condition="FORMAT=='GMSH'",fr="unité logique d'impression et version GMSH", - UNITE =SIMP(statut='f',typ='I',defaut=37), - VERSION =SIMP(statut='f',typ='R',defaut=1.2,into=(1.0,1.2)), - ), - - regles=(AU_MOINS_UN('CONCEPT','RESU',),), - - b_restreint =BLOC(condition="FORMAT=='MED'",fr="Seulement pour les fichiers MED", - RESTREINT =FACT(statut='f', max=1, - fr="Pour réduire une ou plusieurs sd_resultat sur un ensemble de mailles", - regles=(AU_MOINS_UN('GROUP_MA','MAILLE',),), - GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - MAILLE =SIMP(statut='f',typ=ma,validators=NoRepeat(),max='**'), - TOUT_GROUP_MA =SIMP(statut='f',typ='TXM',defaut='NON',into=('OUI','NON'),), - GROUP_NO =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'), - TOUT_GROUP_NO =SIMP(statut='f',typ='TXM',defaut='NON',into=('OUI','NON'),), - ), - ), - - CONCEPT =FACT(statut='f',max='**', - fr='Pour imprimer les champs de "données" à des fins de visualisation (controle des affectations).', - # (valide pour les format RESULTAT et MED) - regles=(UN_PARMI('CHAM_MATER','CARA_ELEM','CHARGE'),), - CHAM_MATER =SIMP(statut='f',typ=cham_mater), - CARA_ELEM =SIMP(statut='f',typ=cara_elem), - CHARGE =SIMP(statut='f',typ=char_meca), - - b_cara_elem =BLOC(condition="CARA_ELEM != None", fr="impression des reperes locaux.", - REPERE_LOCAL =SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON")), - b_reploc =BLOC(condition="REPERE_LOCAL == 'OUI'", fr="impression des reperes locaux.", - MODELE =SIMP(statut='o',typ=modele_sdaster), - ), - ), - ), - - RESU =FACT(statut='f',max='**', - - regles=(AU_MOINS_UN('CHAM_GD','RESULTAT','MAILLAGE',), - EXCLUS('CHAM_GD','RESULTAT'),), - MAILLAGE =SIMP(statut='f',typ=(maillage_sdaster,squelette)), - CARA_ELEM =SIMP(statut='f',typ=cara_elem), - CHAM_GD =SIMP(statut='f',typ=cham_gd_sdaster), - RESULTAT =SIMP(statut='f',typ=resultat_sdaster), - - b_info_med =BLOC(condition="FORMAT=='MED'", - INFO_MAILLAGE =SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON") ), - ), - - - b_partie =BLOC(condition="""(AsType(RESULTAT) in (dyna_harmo, acou_harmo) or - AsType(CHAM_GD) != carte_sdaster) and FORMAT in ('CASTEM', 'GMSH', 'MED')""", - PARTIE =SIMP(statut='f',typ='TXM',into=("REEL","IMAG") ), - ), - - b_vari_el =BLOC(condition="FORMAT==('MED')", - IMPR_NOM_VARI=SIMP(statut='f',typ='TXM',into=("OUI","NON"),defaut="NON",), - ), - - b_extrac =BLOC(condition="RESULTAT != None", - fr="extraction d un champ de grandeur", - regles=(EXCLUS('TOUT_CHAM','NOM_CHAM'), - EXCLUS('TOUT_ORDRE','NUME_ORDRE','INST','FREQ','NUME_MODE','NOEUD_CMP', - 'LIST_INST','LIST_FREQ','LIST_ORDRE','NOM_CAS','ANGLE'),), - TOUT_CHAM =SIMP(statut='f',typ='TXM',into=("OUI","NON") ), - NOM_CHAM =SIMP(statut='f',typ='TXM',validators=NoRepeat(),max='**',into=C_NOM_CHAM_INTO()), - - TOUT_ORDRE =SIMP(statut='f',typ='TXM',into=("OUI",) ), - NUME_ORDRE =SIMP(statut='f',typ='I',validators=NoRepeat(),max='**'), - NUME_MODE =SIMP(statut='f',typ='I',validators=NoRepeat(),max='**'), - LIST_ORDRE =SIMP(statut='f',typ=listis_sdaster), - NOEUD_CMP =SIMP(statut='f',typ='TXM',validators=NoRepeat(),max='**'), - NOM_CAS =SIMP(statut='f',typ='TXM',validators=NoRepeat(),max='**'), - ANGLE =SIMP(statut='f',typ='R',validators=NoRepeat(),max='**'), - FREQ =SIMP(statut='f',typ='R',validators=NoRepeat(),max='**'), - LIST_FREQ =SIMP(statut='f',typ=listr8_sdaster), - INST =SIMP(statut='f',typ='R',validators=NoRepeat(),max='**'), - LIST_INST =SIMP(statut='f',typ=listr8_sdaster), - - b_acce_reel =BLOC(condition="(ANGLE != None)or(FREQ != None)or(LIST_FREQ != None)or(INST != None)or(LIST_INST != None)", - CRITERE =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU",),), - b_prec_rela=BLOC(condition="(CRITERE=='RELATIF')", - PRECISION =SIMP(statut='f',typ='R',defaut= 1.E-6,),), - b_prec_abso=BLOC(condition="(CRITERE=='ABSOLU')", - PRECISION =SIMP(statut='o',typ='R',),), - ), - ), -### - b_parametres =BLOC(condition="""(RESULTAT != None)and(FORMAT == 'RESULTAT')""", - regles=(EXCLUS('TOUT_PARA','NOM_PARA'),), - TOUT_PARA =SIMP(statut='f',typ='TXM',into=("OUI","NON",) ), - NOM_PARA =SIMP(statut='f',typ='TXM',max='**'), - FORM_TABL =SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON","EXCEL") ), - ), -### - b_cmp=BLOC(condition="""((CHAM_GD != None)or(RESULTAT != None))and\ - ((FORMAT == 'CASTEM')or(FORMAT == 'RESULTAT')or(FORMAT == 'IDEAS')or(FORMAT == 'MED'))""", - fr="sélection des composantes", - regles=(EXCLUS('TOUT_CMP','NOM_CMP'),), - TOUT_CMP =SIMP(statut='f',typ='TXM',into=("OUI",) ), - NOM_CMP =SIMP(statut='f',typ='TXM',max='**'), - ), -### - b_med=BLOC(condition="""((CHAM_GD != None)or(RESULTAT != None))and(FORMAT == 'MED')""", - fr="renommage du champ", - regles=(EXCLUS('NOM_CHAM_MED','NOM_RESU_MED'),), - NOM_CHAM_MED =SIMP(statut='f',typ='TXM', - validators=AndVal((LongStr(1,64), NoRepeat())), max='**'), - NOM_RESU_MED =SIMP(statut='f',typ='TXM'), - ), -### - b_gmsh=BLOC(condition="""((CHAM_GD != None)or(RESULTAT != None))and((FORMAT == 'GMSH'))""", - fr="sélection des composantes et des entités toplogiques", - MAILLE =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), - GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - TYPE_CHAM =SIMP(statut='f',typ='TXM',defaut="SCALAIRE", - into=("VECT_2D","VECT_3D","SCALAIRE","TENS_2D","TENS_3D"),), - b_scal =BLOC(condition = "TYPE_CHAM=='SCALAIRE'", - NOM_CMP =SIMP(statut='f',typ='TXM',max='**' ),), - b_vect_2d =BLOC(condition = "TYPE_CHAM=='VECT_2D'", - NOM_CMP =SIMP(statut='o',typ='TXM',min=2,max=2 ),), - b_vect_3d =BLOC(condition = "TYPE_CHAM=='VECT_3D'", - NOM_CMP =SIMP(statut='o',typ='TXM',min=3,max=3 ),), - b_tens_2d =BLOC(condition = "TYPE_CHAM=='TENS_2D'", - NOM_CMP =SIMP(statut='o',typ='TXM',min=4,max=4 ),), - b_tens_3d =BLOC(condition = "TYPE_CHAM=='TENS_3D'", - NOM_CMP =SIMP(statut='o',typ='TXM',min=6,max=6 ),), - ), -### - b_topologie=BLOC(condition="""((CHAM_GD != None)or(RESULTAT != None))and\ - ((FORMAT == 'RESULTAT')or(FORMAT == 'IDEAS')or(FORMAT == 'MED'))""", - fr="sélection des entités topologiques", - TOUT =SIMP(statut='f',typ='TXM',into=("OUI",) ), - NOEUD =SIMP(statut='f',typ=no ,validators=NoRepeat(),max='**'), - GROUP_NO =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'), - MAILLE =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), - GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - ), -### - b_valeurs=BLOC(condition="(FORMAT == 'RESULTAT')", - fr="sélection sur les valeurs", - VALE_MAX =SIMP(statut='f',typ='TXM',into=("OUI",) ), - VALE_MIN =SIMP(statut='f',typ='TXM',into=("OUI",) ), - BORNE_SUP =SIMP(statut='f',typ='R'), - BORNE_INF =SIMP(statut='f',typ='R'), - IMPR_COOR =SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON") ), - ), - - b_format_r=BLOC(condition="""((FORMAT == 'RESULTAT')or(FORMAT == 'ASTER'))""", - fr="Format des nombres réels", - FORMAT_R =SIMP(statut='f',typ='TXM',defaut="1PE21.14"), - ), - - SOUS_TITRE =SIMP(statut='f',typ='TXM',max='**'), - ), - INFO =SIMP(statut='f',typ='I',defaut=1,into=(1,2) ), -) ; - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2012 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: mathieu.courtois at edf.fr - -IMPR_TABLE=MACRO(nom="IMPR_TABLE", - op=OPS('Macro.impr_table_ops.impr_table_ops'), - sd_prod=None, - UIinfo={"groupes":("Impression","Tables",)}, - fr="Impression du contenu d'une table dans un fichier", - TABLE =SIMP(statut='o',typ=table_sdaster), - FORMAT =SIMP(statut='f',typ='TXM',defaut="TABLEAU", - into=("TABLEAU","ASTER","TABLEAU_CROISE","AGRAF","XMGRACE",),), - b_pilote =BLOC(condition = "FORMAT == 'XMGRACE'", - fr="Mots-clés propres à XMGRACE", - PILOTE =SIMP(statut='f',typ='TXM',defaut='', - into=('','POSTSCRIPT','EPS','MIF','SVG','PNM','PNG','JPEG','PDF','INTERACTIF'), - fr="Pilote de sortie, PNG/JPEG/PDF ne sont pas disponibles sur toutes les installations de xmgrace"), - UNITE =SIMP(statut='f',typ='I',val_min=10,val_max=90,defaut=29, - fr="Unité logique définissant le fichier (fort.N) dans lequel on écrit"), - ), - b_unite =BLOC(condition = "FORMAT != 'XMGRACE'", - UNITE =SIMP(statut='f',typ='I',defaut=8, - fr="Unité logique définissant le fichier (fort.N) dans lequel on écrit"), - ), - FILTRE =FACT(statut='f',max='**', - NOM_PARA =SIMP(statut='o',typ='TXM'), - CRIT_COMP =SIMP(statut='f',typ='TXM',defaut="EQ", - into=("EQ","LT","GT","NE","LE","GE","VIDE", - "NON_VIDE","MAXI","MAXI_ABS","MINI","MINI_ABS"),), - b_vale =BLOC(condition = "(CRIT_COMP in ('EQ','NE','GT','LT','GE','LE'))", - regles=(UN_PARMI('VALE','VALE_I','VALE_K','VALE_C',),), - VALE =SIMP(statut='f',typ='R',max='**'), - VALE_I =SIMP(statut='f',typ='I',max='**'), - VALE_C =SIMP(statut='f',typ='C',max='**'), - VALE_K =SIMP(statut='f',typ='TXM',max='**'), - ), - b_crit =BLOC(condition = "CRIT_COMP in ('EQ','NE')", - CRITERE =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU") ), - PRECISION =SIMP(statut='f',typ='R',defaut= 1.0E-3 ), - ), - ), - TRI =FACT(statut='f', - NOM_PARA =SIMP(statut='o',typ='TXM',validators=NoRepeat(),max='**'), - ORDRE =SIMP(statut='f',typ='TXM',defaut="CROISSANT", # max='**', - into=("CROISSANT","DECROISSANT") ), - ), - PAGINATION =SIMP(statut='f',typ='TXM',max='**'), - FORMAT_R =SIMP(statut='f',typ='TXM',defaut="E12.5"), - NOM_PARA =SIMP(statut='f',typ='TXM',validators=NoRepeat(),max='**'), - IMPR_FONCTION =SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON") ), - - # Mise en page du tableau ou du graphique - b_tableau = BLOC(condition = "FORMAT == 'TABLEAU'", - fr="Mots-clés propres au format Tableau", - SEPARATEUR =SIMP(statut='f',typ='TXM',defaut=' ', - fr="Séparateur des colonnes du tableau (ex : ' ', ';'...)"), - COMMENTAIRE =SIMP(statut='f',typ='TXM',defaut='#', - fr="Caractère indiquant au traceur de fonction que la ligne peut etre ignorée"), - COMM_PARA =SIMP(statut='f',typ='TXM',defaut='', - fr="Caractère utilisé pour commentariser la ligne des labels de colonnes"), - DEBUT_LIGNE =SIMP(statut='f',typ='TXM',defaut='', - fr="Caractère de debut de ligne"), - FIN_LIGNE =SIMP(statut='f',typ='TXM',defaut='\n', - fr="Caractère de fin de ligne"), - ), - - # mise en forme pour les formats qui passent par Graph - b_forme =BLOC(condition = "FORMAT == 'XMGRACE'", - fr="Données de mise en forme du graphique", - # pour la courbe - LEGENDE =SIMP(statut='f',typ='TXM', - fr="Légende associée à la fonction" ), - STYLE =SIMP(statut='f',typ='I',val_min=0, - fr="Style de la ligne représentant la fonction",), - COULEUR =SIMP(statut='f',typ='I',val_min=0, - fr="Couleur associée à la fonction",), - MARQUEUR =SIMP(statut='f',typ='I',val_min=0, - fr="Type du marqueur associé à la fonction",), - FREQ_MARQUEUR =SIMP(statut='f',typ='I',defaut=0, - fr="Fréquence d impression du marqueur associé à la fonction", ), - # format du graphique - BORNE_X =SIMP(statut='f',typ='R',min=2,max=2, - fr="Intervalles de variation des abscisses"), - BORNE_Y =SIMP(statut='f',typ='R',min=2,max=2, - fr="Intervalles de variation des ordonnées"), - ECHELLE_X =SIMP(statut='f',typ='TXM',defaut="LIN",into=("LIN","LOG"), - fr="Type d'échelle pour les abscisses" ), - ECHELLE_Y =SIMP(statut='f',typ='TXM',defaut="LIN",into=("LIN","LOG"), - fr="Type d'échelle pour les ordonnées" ), - GRILLE_X =SIMP(statut='f',typ='R',max=1,val_min=0., - fr="Pas du quadrillage vertical" ), - GRILLE_Y =SIMP(statut='f',typ='R',max=1,val_min=0., - fr="Pas du quadrillage horizontal" ), - LEGENDE_X =SIMP(statut='f',typ='TXM', - fr="Légende associée à l'axe des abscisses" ), - LEGENDE_Y =SIMP(statut='f',typ='TXM', - fr="Légende associée à l'axe des ordonnées" ), - ), - - TITRE =SIMP(statut='f',typ='TXM',max='**'), - INFO =SIMP(statut='f',typ='I',defaut=1,into=(1,2) ), -) - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2013 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: mathieu.courtois at edf.fr - -INCLUDE=MACRO(nom="INCLUDE", - op=OPS("Cata.ops.buildInclude"), - UIinfo={"groupes":("Gestion du travail",)}, - fr="Débranchement vers un fichier de commandes secondaires", - sd_prod=ops.INCLUDE, - op_init=ops.INCLUDE_context, - fichier_ini=1, - regles=(UN_PARMI('UNITE', 'DONNEE')), - UNITE = SIMP(statut='f', typ='I', - fr="Unité logique à inclure"), - DONNEE = SIMP(statut='f', typ='Fichier', - fr="Nom du fichier de données à inclure"), - INFO = SIMP(statut='f', typ='I', defaut=1, into=(1, 2)), -); - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2011 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: mathieu.courtois at edf.fr - -INCLUDE_MATERIAU = MACRO(nom="INCLUDE_MATERIAU", - op=OPS("Macro.include_materiau_ops.include_materiau_ops"), - sd_prod=mater_sdaster, - UIinfo={"groupes":("Modélisation", "Gestion du travail", )}, - fr="Récupérer les caractéristiques d'un matériau dans le Catalogue Materiaux d'Aster ", - - NOM_AFNOR = SIMP(statut='o', typ='TXM',), - TYPE_MODELE = SIMP(statut='o', typ='TXM', into=("REF", "PAR"),), - VARIANTE = SIMP(statut='o', typ='TXM', - into=("A", "B", "C", "D", "E", "F", "G", "H", "I", "J", - "K", "L", "M", "N", "O", "P", "Q", "R", "S", "T", - "U", "V", "W", "X", "Y", "Z",),), - TYPE_VALE = SIMP(statut='o', typ='TXM', into=("NOMI", "MINI", "MAXI"),), - #NOM_MATER = SIMP(statut='o', typ='TXM',), - #UNITE = SIMP(statut='f', typ='I', defaut= 32,), - EXTRACTION = FACT(statut='f', - COMPOR = SIMP(statut='o', typ='TXM', max='**',), - TEMP_EVAL = SIMP(statut='o', typ='R',), - ), - UNITE_LONGUEUR = SIMP(statut='f', typ='TXM', into=("M", "MM"), defaut="M",), - INFO = SIMP(statut='f', typ='I', defaut= 1, into=(1, 2),), -) - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2012 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: j-pierre.lefebvre at edf.fr -INFO_EXEC_ASTER=OPER(nom="INFO_EXEC_ASTER",op=35,sd_prod=table_sdaster, - fr="Récupère différentes informations propres à l'exécution en cours", - reentrant='n', - UIinfo={"groupes":("Gestion du travail",)}, - - regles=(), - LISTE_INFO =SIMP(statut='o',typ='TXM',validators=NoRepeat(),max=3, - into=("CPU_RESTANT","UNITE_LIBRE","ETAT_UNITE"),), - b_etat_unite =BLOC(condition = "au_moins_un(LISTE_INFO, 'ETAT_UNITE')", - regles=(UN_PARMI('UNITE','FICHIER'),), - UNITE =SIMP(statut='f',typ='I',val_min=1,val_max=99,max=1, - fr="Unité logique dont on veut obtenir l'état",), - FICHIER =SIMP(statut='f',typ='TXM',validators=LongStr(1,255), - fr="Nom du fichier dont on veut obtenir l'état",), - ), - TITRE =SIMP(statut='f',typ='TXM',max='**'), - INFO =SIMP(statut='f',typ='I',defaut=1,into=(1,2) ), -) ; - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2012 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: mathieu.courtois at edf.fr - -def info_fonction_prod(self,ECART_TYPE,RMS,NOCI_SEISME,MAX,NORME, **args): - if (RMS != None): return table_sdaster - if (MAX != None): return table_sdaster - if (NOCI_SEISME != None): return table_sdaster - if (ECART_TYPE != None): return table_sdaster - if (NORME != None): return table_sdaster - raise AsException("type de concept resultat non prevu") - -INFO_FONCTION=MACRO(nom="INFO_FONCTION", - op=OPS('Macro.info_fonction_ops.info_fonction_ops'), - sd_prod=info_fonction_prod, - fr="Opérations mathématiques sur des concepts de type fonction, " \ - "fonction_c ou nappe", - reentrant='n', - UIinfo={"groupes":("Fonctions",)}, - regles=(UN_PARMI('MAX','RMS','NOCI_SEISME','NORME','ECART_TYPE',),), - RMS =FACT(statut='f',fr="Valeur RMS d'une fonction",max='**', - METHODE =SIMP(statut='f',typ='TXM',defaut="TRAPEZE",into=("SIMPSON","TRAPEZE") ), - FONCTION =SIMP(statut='o',typ=fonction_sdaster ), - INST_INIT =SIMP(statut='f',typ='R',fr="Instant initial définissant le début du signal" ), - INST_FIN =SIMP(statut='f',typ='R',fr="Instant final définissant la fin du signal" ), - CRITERE =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU",) ), - b_prec_rela=BLOC(condition="(CRITERE=='RELATIF')", - PRECISION =SIMP(statut='f',typ='R',defaut= 1.E-6,val_min=0.E+0),), - b_prec_abso=BLOC(condition="(CRITERE=='ABSOLU')", - PRECISION =SIMP(statut='o',typ='R'),), - ), - NOCI_SEISME =FACT(statut='f', - regles=(UN_PARMI('FONCTION','SPEC_OSCI',),), - FONCTION =SIMP(statut='f',typ=fonction_sdaster ), - SPEC_OSCI =SIMP(statut='f',typ=nappe_sdaster ), - b_option_f =BLOC(condition="""FONCTION != None""", - OPTION =SIMP(statut='f',typ='TXM',defaut="TOUT",validators=NoRepeat(), - into=("INTE_ARIAS","POUV_DEST","INTE_SPEC","VITE_ABSO_CUMU", - "DUREE_PHAS_FORT","MAXI","ACCE_SUR_VITE","TOUT",), ), - b_amor_red =BLOC(condition="""au_moins_un(OPTION, ("TOUT", "INTE_SPEC")) """, - AMOR_REDUIT =SIMP(statut='o',typ='R'),), - b_pesanteur =BLOC(condition="""au_moins_un(OPTION, ("TOUT", "INTE_ARIAS", "POUV_DEST", "DUREE_PHAS_FORT")) """, - PESANTEUR =SIMP(statut='o',typ='R'),), - ), - b_option_n =BLOC(condition="""SPEC_OSCI !=None""", - OPTION =SIMP(statut='f',typ='TXM',defaut="INTE_SPEC",into=("INTE_SPEC",), ), - NATURE =SIMP(statut='o',typ='TXM',into=("DEPL","VITE","ACCE") ), - AMOR_REDUIT =SIMP(statut='o',typ='R'), ), - INST_INIT =SIMP(statut='f',typ='R'), - INST_FIN =SIMP(statut='f',typ='R'), - COEF =SIMP(statut='f',typ='R',defaut= 0.E+0 ), - FREQ_INIT =SIMP(statut='f',typ='R',defaut= 4.E-1 ), - FREQ_FIN =SIMP(statut='f',typ='R',defaut= 10.E+0 ), - LIST_FREQ =SIMP(statut='f',typ=listr8_sdaster ), - FREQ =SIMP(statut='f',typ='R',max='**'), - NORME =SIMP(statut='f',typ='R',defaut= 1.E+0 ), - BORNE_INF =SIMP(statut='f',typ='R',defaut= 0.05E+0 ), - BORNE_SUP =SIMP(statut='f',typ='R',defaut= 0.95E+0 ), - b_acce_reel =BLOC(condition="(INST_INIT != None)or(INST_FIN != None)or(FREQ_INIT != None)or(FREQ_FIN != None)", - CRITERE =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU",) ), - b_prec_rela=BLOC(condition="(CRITERE=='RELATIF')", - PRECISION =SIMP(statut='f',typ='R',defaut= 1.E-6,val_min=0.E+0),), - b_prec_abso=BLOC(condition="(CRITERE=='ABSOLU')", - PRECISION =SIMP(statut='o',typ='R'),), - ), - ), - MAX =FACT(statut='f',fr="Extrémas locaux d'une fonction", - FONCTION =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster),max='**' ), - INTERVALLE =SIMP(statut='f',typ='R',min=2,max='**', - fr ="définition des bornes des intervalles sous forme de couples (xi_i1,xs_i1,xi_i2,xs_i2)"), - ), - NORME =FACT(statut='f',fr="Norme L2 d'une fonction", - FONCTION =SIMP(statut='o', typ=nappe_sdaster), - ), - ECART_TYPE =FACT(statut='f',fr="Ecart-type d'une fonction", - METHODE =SIMP(statut='f',typ='TXM',defaut="TRAPEZE",into=("SIMPSON","TRAPEZE") ), - FONCTION =SIMP(statut='o',typ=fonction_sdaster), - INST_INIT =SIMP(statut='f',typ='R',fr="Instant initial définissant le début du signal" ), - INST_FIN =SIMP(statut='f',typ='R',fr="Instant final définissant la fin du signal" ), - CRITERE =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU",) ), - b_prec_rela=BLOC(condition="(CRITERE=='RELATIF')", - PRECISION =SIMP(statut='f',typ='R',defaut= 1.E-6,val_min=0.E+0),), - b_prec_abso=BLOC(condition="(CRITERE=='ABSOLU')", - PRECISION =SIMP(statut='o',typ='R'),), - ), - INFO =SIMP(statut='f',typ='I',defaut=1,into=(1,2) ), -) - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2013 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: olivier.boiteau at edf.fr -INFO_MODE=OPER(nom="INFO_MODE",op=32,sd_prod=table_sdaster, - fr="Calculer, imprimer, et sauvegarder le nombre de valeurs propres dans un contour donné", - UIinfo={"groupes":("Résolution","Dynamique",)}, - - TYPE_MODE =SIMP(statut='f',typ='TXM',defaut="DYNAMIQUE",into=("MODE_COMPLEXE","DYNAMIQUE", - "MODE_FLAMB", "GENERAL"), - fr="Type d analyse" ), - INFO =SIMP(statut='f',typ='I',defaut= 1,into=( 1 , 2) ), - - b_dynamique =BLOC(condition = "TYPE_MODE == 'DYNAMIQUE'",fr="Recherche du nombre de fréquences propres", - MATR_RIGI =SIMP(statut='o',typ=(matr_asse_depl_r,matr_asse_temp_r,matr_asse_pres_r,matr_asse_gene_r, - matr_asse_depl_c,matr_asse_gene_c) ), - MATR_MASS =SIMP(statut='o',typ=(matr_asse_depl_r,matr_asse_temp_r,matr_asse_pres_r,matr_asse_gene_r) ), - FREQ =SIMP(statut='o',typ='R',min=2,max='**', - validators=AndVal((OrdList('croissant'), NoRepeat())), - fr="Liste de frequences" ), - COMPTAGE =FACT(statut='d', - METHODE =SIMP(statut='f',typ='TXM',defaut="AUTO",into=("AUTO","STURM")), - SEUIL_FREQ =SIMP(statut='f',typ='R',defaut= 1.E-2 ), - PREC_SHIFT =SIMP(statut='f',typ='R',defaut= 5.E-2 ), - NMAX_ITER_SHIFT =SIMP(statut='f',typ='I',defaut= 3,val_min=0), - ), - ), - - b_flambement =BLOC(condition = "TYPE_MODE == 'MODE_FLAMB'",fr="Recherche du nombre de charges critiques", - MATR_RIGI =SIMP(statut='o',typ=(matr_asse_depl_r,matr_asse_temp_r,matr_asse_pres_r,matr_asse_gene_r, - matr_asse_depl_c,matr_asse_gene_c) ), - MATR_RIGI_GEOM =SIMP(statut='o',typ=(matr_asse_depl_r,matr_asse_temp_r,matr_asse_pres_r,matr_asse_gene_r) ), - CHAR_CRIT =SIMP(statut='o',typ='R',min=2,max='**', - validators=AndVal((OrdList('croissant'), NoRepeat())), - fr="Liste de charges critiques" ), - COMPTAGE =FACT(statut='d', - METHODE =SIMP(statut='f',typ='TXM',defaut="AUTO",into=("AUTO","STURM")), - SEUIL_CHAR_CRIT =SIMP(statut='f',typ='R',defaut= 1.E-2 ), - PREC_SHIFT =SIMP(statut='f',typ='R',defaut= 5.E-2 ), - NMAX_ITER_SHIFT =SIMP(statut='f',typ='I',defaut= 3,val_min=0), - ), - ), - - b_complexe =BLOC(condition = "TYPE_MODE == 'MODE_COMPLEXE'",fr="Recherche du nombre de fréquences propres", - MATR_RIGI =SIMP(statut='o',typ=(matr_asse_depl_r,matr_asse_temp_r,matr_asse_pres_r,matr_asse_gene_r, - matr_asse_depl_c,matr_asse_gene_c) ), - MATR_MASS =SIMP(statut='o',typ=(matr_asse_depl_r,matr_asse_temp_r,matr_asse_pres_r,matr_asse_gene_r) ), - MATR_AMOR =SIMP(statut='f',typ=(matr_asse_depl_r,matr_asse_temp_r,matr_asse_pres_r,matr_asse_gene_r) ), - TYPE_CONTOUR =SIMP(statut='f',typ='TXM',defaut="CERCLE",into=("CERCLE","CERCLE") ), - RAYON_CONTOUR =SIMP(statut='o',typ='R',val_min=1.E-2 ), - CENTRE_CONTOUR =SIMP(statut='f',typ='C',defaut= 0.0+0.0j), - COMPTAGE =FACT(statut='d', - METHODE =SIMP(statut='f',typ='TXM',defaut="AUTO",into=("AUTO","APM")), - NBPOINT_CONTOUR =SIMP(statut='f',typ='I',defaut= 40,val_min=10,val_max=1000), - NMAX_ITER_CONTOUR=SIMP(statut='f',typ='I',defaut= 3, val_min=1,val_max=5), - ), - ), - - b_general =BLOC(condition = "TYPE_MODE == 'GENERAL'",fr="Recherche du nombre de valeurs propres", - MATR_A =SIMP(statut='o',typ=(matr_asse_depl_r,matr_asse_temp_r,matr_asse_pres_r,matr_asse_gene_r, - matr_asse_depl_c,matr_asse_gene_c) ), - MATR_B =SIMP(statut='o',typ=(matr_asse_depl_r,matr_asse_temp_r,matr_asse_pres_r,matr_asse_gene_r) ), - MATR_C =SIMP(statut='f',typ=(matr_asse_depl_r,matr_asse_temp_r,matr_asse_pres_r,matr_asse_gene_r) ), - CHAR_CRIT =SIMP(statut='f',typ='R',min=2,max='**', - validators=AndVal((OrdList('croissant'), NoRepeat())), - fr="Liste de charges critiques" ), - b_contour =BLOC(condition = "CHAR_CRIT == None", - TYPE_CONTOUR =SIMP(statut='f',typ='TXM',defaut="CERCLE",into=("CERCLE","CERCLE") ), - RAYON_CONTOUR =SIMP(statut='o',typ='R',val_min=1.E-2 ), - CENTRE_CONTOUR =SIMP(statut='f',typ='C',defaut= 0.0+0.0j),), - COMPTAGE =FACT(statut='d', - METHODE =SIMP(statut='f',typ='TXM',defaut="AUTO",into=("AUTO","STURM","APM")), - SEUIL_CHAR_CRIT =SIMP(statut='f',typ='R',defaut= 1.E-2 ), - PREC_SHIFT =SIMP(statut='f',typ='R',defaut= 5.E-2 ), - NMAX_ITER_SHIFT =SIMP(statut='f',typ='I',defaut= 3,val_min=0), ), - NBPOINT_CONTOUR =SIMP(statut='f',typ='I',defaut= 40,val_min=10,val_max=1000), - NMAX_ITER_CONTOUR=SIMP(statut='f',typ='I',defaut= 3, val_min=1,val_max=5), - ), - - TITRE =SIMP(statut='f',typ='TXM',max='**'), - -#------------------------------------------------------------------- -# Catalogue commun SOLVEUR - SOLVEUR =C_SOLVEUR('INFO_MODE'), -# Mot-cle pour piloter les niveaux de parallelismes de l'operateur (a ne pas confondre avec le mot-cle -# cache PARALLELISME_MACRO) - NIVEAU_PARALLELISME =SIMP(statut='f',typ='TXM',defaut="COMPLET",into=("PARTIEL","COMPLET") ), -#------------------------------------------------------------------- -#------------------------------------------------------------------- -# Mot-cles caches pour activer le parallelisme au sein d'une macro-commande - PARALLELISME_MACRO=FACT(statut='d',min=0, - TYPE_COM =SIMP(statut='c',typ='I',defaut=-999,into=(-999,1,2),fr="Type de communication"), - ), -#------------------------------------------------------------------- - -) ; - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2010 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: nicolas.sellenet at edf.fr -INFO_RESU=PROC(nom="INFO_RESU",op=40, - UIinfo={"groupes":("Impression","Utilitaires",)}, - fr="Imprimer tous les champs présents dans une structure de données résultat", - RESULTAT=SIMP(statut='f',typ=resultat_sdaster), - UNITE=SIMP(statut='f',typ='I',defaut=6), -); - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2010 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: nicolas.greffet at edf.fr -INIT_COMPO=PROC(nom="INIT_COMPO", - op= 117, - UIinfo={"groupes":("Gestion du travail",)}, - fr="Initialiser adresse component YACS", - COMPO =SIMP(statut='o',typ='I',), -) ; - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: xavier.desroches at edf.fr -INTE_MAIL_2D=OPER(nom="INTE_MAIL_2D",op=50,sd_prod=courbe_sdaster, - UIinfo={"groupes":("Post-traitements",)}, - fr="Définition d'une courbe dans un maillage 2D",reentrant='n', - - MAILLAGE =SIMP(statut='o',typ=(maillage_sdaster) ), - - regles=(PRESENT_ABSENT('TOUT','GROUP_MA','MAILLE'), - AU_MOINS_UN('DEFI_SEGMENT','DEFI_ARC','DEFI_CHEMIN'), - PRESENT_ABSENT('DEFI_CHEMIN','DEFI_SEGMENT','DEFI_ARC'), - PRESENT_ABSENT('DEFI_SEGMENT','NOEUD_ORIG','GROUP_NO_ORIG'), - PRESENT_ABSENT('DEFI_ARC','NOEUD_ORIG','GROUP_NO_ORIG'), - EXCLUS('NOEUD_ORIG','GROUP_NO_ORIG'), - EXCLUS('DEFI_CHEMIN','DEFI_SEGMENT'), - EXCLUS('DEFI_CHEMIN','DEFI_ARC'),), - - TOUT =SIMP(statut='f',typ='TXM',into=("OUI",) ), - GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - MAILLE =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), - - DEFI_SEGMENT =FACT(statut='f',max='**', - regles=(UN_PARMI('ORIGINE','NOEUD_ORIG','GROUP_NO_ORIG'), - UN_PARMI('EXTREMITE','NOEUD_EXTR','GROUP_NO_EXTR'),), - ORIGINE =SIMP(statut='f',typ='R',min=2,max=2), - NOEUD_ORIG =SIMP(statut='f',typ=no,), - GROUP_NO_ORIG =SIMP(statut='f',typ=grno,), - EXTREMITE =SIMP(statut='f',typ='R',min=2,max=2), - NOEUD_EXTR =SIMP(statut='f',typ=no,), - GROUP_NO_EXTR =SIMP(statut='f',typ=grno,), - ), - - DEFI_ARC =FACT(statut='f',max='**', - regles=(UN_PARMI('CENTRE','NOEUD_CENTRE','GROUP_NO_CENTRE'), - UN_PARMI('RAYON','ORIGINE','NOEUD_ORIG','GROUP_NO_ORIG'), - UN_PARMI('RAYON','EXTREMITE','NOEUD_EXTR','GROUP_NO_EXTR'), - PRESENT_PRESENT('RAYON','SECTEUR'),), - CENTRE =SIMP(statut='f',typ='R',min=2,max=2), - NOEUD_CENTRE =SIMP(statut='f',typ=no,), - GROUP_NO_CENTRE =SIMP(statut='f',typ=grno,), - RAYON =SIMP(statut='f',typ='R',val_min=0.E+0), - SECTEUR =SIMP(statut='f',typ='R',min=2,max=2, - val_min=-180.E+0,val_max=180E+0), - ORIGINE =SIMP(statut='f',typ='R',min=2,max=2), - NOEUD_ORIG =SIMP(statut='f',typ=no,), - GROUP_NO_ORIG =SIMP(statut='f',typ=grno,), - EXTREMITE =SIMP(statut='f',typ='R',min=2,max=2), - NOEUD_EXTR =SIMP(statut='f',typ=no,), - GROUP_NO_EXTR =SIMP(statut='f',typ=grno,), - PRECISION =SIMP(statut='f',typ='R',defaut= 1.0E-3 ), - CRITERE =SIMP(statut='f',typ='TXM',defaut="RELATIF", - into=("RELATIF","ABSOLU",) ), - ), - - DEFI_CHEMIN =FACT(statut='f',max='**', - regles=(UN_PARMI('MAILLE','GROUP_MA'),), - MAILLE =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), - GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - ), - - NOEUD_ORIG =SIMP(statut='f',typ=no,), - GROUP_NO_ORIG =SIMP(statut='f',typ=grno,), - PRECISION =SIMP(statut='f',typ='R',defaut=1.0E-3), - INFO =SIMP(statut='f',typ='I',defaut=1,into=(1,2)), -) ; - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: xavier.desroches at edf.fr -INTE_MAIL_3D=OPER(nom="INTE_MAIL_3D",op=96,sd_prod=surface_sdaster, - UIinfo={"groupes":("Post-traitements",)}, - fr="Définir un chemin de type segment de droite dans un maillage 3D",reentrant='n', - MAILLAGE =SIMP(statut='o',typ=maillage_sdaster), - TOUT =SIMP(statut='f',typ='TXM',into=("OUI",) ), - GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - MAILLE =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), - DEFI_SEGMENT =FACT(statut='o',max='**', - regles=(UN_PARMI('ORIGINE','NOEUD_ORIG','GROUP_NO_ORIG'), - UN_PARMI('EXTREMITE','NOEUD_EXTR','GROUP_NO_EXTR'),), - ORIGINE =SIMP(statut='f',typ='R',min=3,max=3), - NOEUD_ORIG =SIMP(statut='f',typ=no,), - GROUP_NO_ORIG =SIMP(statut='f',typ=grno,), - EXTREMITE =SIMP(statut='f',typ='R',min=3,max=3), - NOEUD_EXTR =SIMP(statut='f',typ=no,), - GROUP_NO_EXTR =SIMP(statut='f',typ=grno,), - ), - PRECISION =SIMP(statut='f',typ='R',defaut=1.0E-6), - INFO =SIMP(statut='f',typ='I',defaut=1,into=(1,2)), -) ; - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2012 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: nicolas.sellenet at edf.fr -def lire_champ_prod(TYPE_CHAM=None,**args): -# Remarque : si cette liste évolue, il faut penser à mettre à jour son -# homologue dans macr_adap_mail - if TYPE_CHAM[0:5] == "NOEU_" : return cham_no_sdaster - if TYPE_CHAM[0:5] == "CART_" : return carte_sdaster - if TYPE_CHAM[0:2] == "EL" : return cham_elem - raise AsException("type de concept resultat non prevu") - -LIRE_CHAMP=OPER(nom="LIRE_CHAMP",op= 192,sd_prod=lire_champ_prod, - UIinfo={"groupes":("Lecture","Résultats et champs",)}, - fr="Lire un champ dans un fichier au format MED et le stocker dans un concept.", - reentrant='n', - MAILLAGE =SIMP(statut='o',typ=maillage_sdaster,), - FORMAT =SIMP(statut='f',typ='TXM',defaut="MED",into=("MED",),), - UNITE =SIMP(statut='f',typ='I',defaut= 81,), - b_format =BLOC(condition = "FORMAT == 'MED'", - regles=( UN_PARMI('NOM_CMP_IDEM','NOM_CMP'), - PRESENT_PRESENT('NOM_CMP','NOM_CMP_MED' ), - EXCLUS('NUME_ORDRE','INST'), - EXCLUS('NUME_PT','INST'),), - NOM_MED =SIMP(statut='o',typ='TXM', ), - NOM_CMP_IDEM =SIMP(statut='f',typ='TXM',into=("OUI",), ), - NOM_CMP =SIMP(statut='f',typ='TXM',validators=NoRepeat(),max='**',), - NOM_CMP_MED =SIMP(statut='f',typ='TXM',validators=NoRepeat(),max='**',), - PROL_ZERO =SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON",), - fr="Affecte des valeurs nulles la ou le champ n'est pas defini (sinon il y a NaN)"), - NUME_PT =SIMP(statut='f',typ='I' ,validators=NoRepeat(),max='**',), - NUME_ORDRE =SIMP(statut='f',typ='I' ,validators=NoRepeat(),max='**', - fr="Numero d ordre du champ à lire",ang="Rank of the field to be read" ), - INST =SIMP(statut='f',typ='R',fr="Instant associé",ang="Instant" ), -# - b_precision =BLOC(condition="(INST != None)", - CRITERE =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU",), - fr="Critère de précision sur le choix de l'instant associé", - ang="Accuracy criterium over instant choice" ), - b_prec_rela=BLOC(condition="(CRITERE=='RELATIF')", - PRECISION =SIMP(statut='f',typ='R',defaut= 1.E-6, - fr="Précision sur le choix de l'instant associé",ang="Accuracy over instant choice" ),), - b_prec_abso=BLOC(condition="(CRITERE=='ABSOLU')", - PRECISION =SIMP(statut='o',typ='R', - fr="Précision sur le choix de l'instant associé",ang="Accuracy over instant choice" ),),), -# - NOM_MAIL_MED =SIMP(statut='f',typ='TXM',), - ), -# Remarque : si cette liste évolue, il faut penser à mettre à jour son -# homologue dans macr_adap_mail - TYPE_CHAM =SIMP(statut='o',typ='TXM',into=C_TYPE_CHAM_INTO()), - b_modele =BLOC(condition = "TYPE_CHAM!=None and (TYPE_CHAM[0:2] == 'EL')", - MODELE =SIMP(statut='o',typ=modele_sdaster, ), - ), - INFO =SIMP(statut='f',typ='I',defaut= 1,into=(1,2) ), -) ; - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2011 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: mathieu.courtois at edf.fr - - -def lire_fonction_prod(self,TYPE,**args): - if (TYPE == 'FONCTION') : return fonction_sdaster - elif (TYPE == 'FONCTION_C'): return fonction_c - elif (TYPE == 'NAPPE' ) : return nappe_sdaster - raise AsException("type de concept resultat non prevu") - -LIRE_FONCTION=MACRO(nom="LIRE_FONCTION", - op=OPS('Macro.lire_fonction_ops.lire_fonction_ops'), - sd_prod=lire_fonction_prod, - fr="Lit les valeurs réelles dans un fichier de données représentant une " \ - "fonction et crée un concept de type fonction ou nappe", - reentrant='n', - UIinfo={"groupes":("Lecture","Fonctions",)}, - FORMAT =SIMP(statut='f',typ='TXM',into=("LIBRE",),defaut="LIBRE" ), - TYPE =SIMP(statut='f',typ='TXM',into=("FONCTION","FONCTION_C","NAPPE"),defaut="FONCTION" ), - SEPAR =SIMP(statut='f',typ='TXM',into=("None",",",";","/"),defaut="None" ), - INDIC_PARA =SIMP(statut='f',typ='I',min=2,max=2,defaut=[1,1]), - b_fonction =BLOC(condition = "TYPE=='FONCTION' ", - INDIC_RESU =SIMP(statut='f',typ='I',min=2,max=2,defaut=[1,2]), ), - b_fonction_c =BLOC(condition = "TYPE=='FONCTION_C' ", - FORMAT_C =SIMP(statut='f',typ='TXM',defaut="REEL_IMAG",into=("REEL_IMAG","MODULE_PHASE") ), - b_reel_imag =BLOC(condition = "FORMAT_C=='REEL_IMAG' ", - INDIC_REEL =SIMP(statut='o',typ='I',min=2,max=2,defaut=[1,2]), - INDIC_IMAG =SIMP(statut='o',typ='I',min=2,max=2,defaut=[1,3]), ) , - b_modu_phas =BLOC(condition = "FORMAT_C=='MODULE_PHASE' ", - INDIC_MODU =SIMP(statut='o',typ='I',min=2,max=2,defaut=[1,2]), - INDIC_PHAS =SIMP(statut='o',typ='I',min=2,max=2,defaut=[1,3]), ), ), - b_nappe =BLOC(condition = "TYPE=='NAPPE' ", - NOM_PARA_FONC =SIMP(statut='o',typ='TXM',into=C_PARA_FONCTION() ), - INDIC_ABSCISSE =SIMP(statut='o',typ='I',min=2,max=2,), - INTERPOL_FONC =SIMP(statut='f',typ='TXM',max=2,defaut="LIN",into=("NON","LIN","LOG"), - fr="Type d'interpolation pour les abscisses et les ordonnées de la fonction"), - PROL_DROITE_FONC=SIMP(statut='f',typ='TXM',defaut="EXCLU",into=("CONSTANT","LINEAIRE","EXCLU") ), - PROL_GAUCHE_FONC=SIMP(statut='f',typ='TXM',defaut="EXCLU",into=("CONSTANT","LINEAIRE","EXCLU") ), - DEFI_FONCTION =FACT(statut='f',max='**', - INDIC_RESU =SIMP(statut='o',typ='I',min=2,max=2,),), ), - UNITE =SIMP(statut='o',typ='I' ), - NOM_PARA =SIMP(statut='o',typ='TXM',into=C_PARA_FONCTION() ), - NOM_RESU =SIMP(statut='f',typ='TXM',defaut="TOUTRESU"), - INTERPOL =SIMP(statut='f',typ='TXM',max=2,defaut="LIN",into=("NON","LIN","LOG"), - fr="Type d'interpolation pour les abscisses et les ordonnées de la " \ - "fonction ou bien pour le paramètre de la nappe."), - PROL_DROITE =SIMP(statut='f',typ='TXM',defaut="EXCLU",into=("CONSTANT","LINEAIRE","EXCLU") ), - PROL_GAUCHE =SIMP(statut='f',typ='TXM',defaut="EXCLU",into=("CONSTANT","LINEAIRE","EXCLU") ), - VERIF =SIMP(statut='f',typ='TXM',defaut="CROISSANT",into=("CROISSANT","NON") ), - INFO =SIMP(statut='f',typ='I',defaut= 1,into=( 1 , 2) ), - TITRE =SIMP(statut='f',typ='TXM',max='**'), -) ; - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2005 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: Georges-cc.devesa at edf.fr -LIRE_FORC_MISS=OPER(nom="LIRE_FORC_MISS",op= 179,sd_prod=vect_asse_gene, - fr="Création d'un vecteur assemblé à partir d'une base modale", - reentrant='n', - UIinfo={"groupes":("Matrices et vecteurs","Outils-métier",)}, - BASE =SIMP(statut='o',typ=mode_meca), - NUME_DDL_GENE =SIMP(statut='o',typ=nume_ddl_gene ), - FREQ_EXTR =SIMP(statut='o',typ='R',max=1), - NOM_CMP =SIMP(statut='f',typ='TXM',into=("DX","DY","DZ") ), - NOM_CHAM =SIMP(statut='f',typ='TXM',into=("DEPL","VITE","ACCE"),defaut="DEPL"), - NUME_CHAR =SIMP(statut='f',typ='I' ), - ISSF =SIMP(statut='f',typ='TXM',defaut="NON",into=("NON","OUI") ), - UNITE_RESU_FORC =SIMP(statut='f',typ='I',defaut=30), - NOM_RESU_FORC =SIMP(statut='f',typ='TXM' ), -) ; - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2012 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: Georges-cc.devesa at edf.fr -LIRE_IMPE_MISS=OPER(nom="LIRE_IMPE_MISS",op= 164,sd_prod=matr_asse_gene_c, - fr="Création d une matrice assemblée à partir de base modale", - reentrant='n', - UIinfo={"groupes":("Matrices et vecteurs","Outils-métier",)}, - BASE =SIMP(statut='o',typ=mode_meca ), - NUME_DDL_GENE =SIMP(statut='o',typ=nume_ddl_gene ), - FREQ_EXTR =SIMP(statut='f',typ='R',max=1), - INST_EXTR =SIMP(statut='f',typ='R',max=1), - UNITE_RESU_IMPE =SIMP(statut='f',typ='I',defaut=30), - ISSF =SIMP(statut='f',typ='TXM',defaut="NON",into=("NON","OUI") ), - TYPE =SIMP(statut='f',typ='TXM',defaut="ASCII",into=("BINAIRE","ASCII") ), - SYME =SIMP(statut='f',typ='TXM',defaut="NON",into=("NON","OUI") ), -) ; - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2012 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: irmela.zentner at edf.fr - - -LIRE_INTE_SPEC=MACRO(nom="LIRE_INTE_SPEC", - op=OPS('Macro.lire_inte_spec_ops.lire_inte_spec_ops'), - sd_prod=interspectre, - fr="Lecture sur un fichier externe de fonctions complexes pour " \ - "créer une matrice interspectrale", - reentrant='n', - UIinfo={"groupes":("Lecture","Fonctions",)}, - UNITE =SIMP(statut='o',typ='I' ), - FORMAT_C =SIMP(statut='f',typ='TXM',defaut="MODULE_PHASE",into=("REEL_IMAG","MODULE_PHASE") ), - FORMAT =SIMP(statut='f',typ='TXM',defaut="ASTER",into=("ASTER","IDEAS") ), - NOM_PARA =SIMP(statut='f',typ='TXM',defaut="FREQ", - into=("DX","DY","DZ","DRX","DRY","DRZ","TEMP", - "INST","X","Y","Z","EPSI","FREQ","PULS","AMOR","ABSC",) ), - NOM_RESU =SIMP(statut='f',typ='TXM',defaut="DSP" ), - INTERPOL =SIMP(statut='f',typ='TXM',max=2,into=("NON","LIN","LOG") ), - PROL_DROITE =SIMP(statut='f',typ='TXM',into=("CONSTANT","LINEAIRE","EXCLU") ), - PROL_GAUCHE =SIMP(statut='f',typ='TXM',into=("CONSTANT","LINEAIRE","EXCLU") ), - TITRE =SIMP(statut='f',typ='TXM',max='**'), - INFO =SIMP(statut='f',typ='I',defaut= 1,into=( 1 , 2) ), -) ; - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2013 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: jacques.pellet at edf.fr -LIRE_MAILLAGE=OPER(nom="LIRE_MAILLAGE",op= 1,sd_prod=maillage_sdaster, - fr="Crée un maillage par lecture d'un fichier au format Aster ou Med", - ang="Readings of a mesh file", - reentrant='n', - UIinfo={"groupes":("Lecture","Maillage",)}, - - UNITE =SIMP(statut='f',typ='I',defaut= 20 ), - - FORMAT =SIMP(statut='f',typ='TXM',defaut="ASTER",into=("ASTER","MED"), - fr="Format du fichier : ASTER ou MED.", - ang="Format of the file : ASTER or MED.",), - - ABSC_CURV =FACT(statut='f',min=0, - TOUT =SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON") ), - ), - - VERI_MAIL =FACT(statut='d', - VERIF =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON") ), - APLAT =SIMP(statut='f',typ='R',defaut= 1.0E-3 ), - ), - - b_format_med =BLOC( condition = " ( FORMAT == 'MED' ) " , - fr="Informations complémentaires pour la lecture MED.", - ang="Further information for MED readings.", - -# Pour une lecture dans un fichier MED, on peut préciser le nom sous lequel -# le maillage y a été enregistré. Par défaut, on va le chercher sous le nom du concept à créer. - NOM_MED = SIMP(statut='f',typ='TXM', - fr="Nom du maillage dans le fichier MED.", - ang="Name of the mesh into the MED file.",), - INFO_MED = SIMP(statut='f',typ='I',defaut= 1,into=(1,2,3) ), - - RENOMME = FACT(statut='f', max='**', - fr="Renommer un nom de groupe MED", - NOM_MED = SIMP(statut='o', typ='TXM', validators=LongStr(1, 64), - fr="Nom du groupe dans le fichier MED"), - NOM = SIMP(statut='o', typ=grma, - fr="Nom du groupe dans le maillage ASTER"), - ), - ), - - INFO =SIMP(statut='f',typ='I',defaut= 1,into=(1,2) ), -) ; - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: serguei.potapov at edf.fr - -LIRE_PLEXUS=OPER(nom="LIRE_PLEXUS",op= 184,sd_prod=evol_char, - fr="Lire le fichier de résultats au format IDEAS produit par le logiciel EUROPLEXUS", - reentrant='n', - UIinfo={"groupes":("Lecture","Outils-métier",)}, - regles=(UN_PARMI('TOUT_ORDRE','NUME_ORDRE','INST','LIST_INST','LIST_ORDRE'),), - UNITE =SIMP(statut='f',typ='I',defaut= 19 ), - FORMAT =SIMP(statut='f',typ='TXM',defaut="IDEAS",into=("IDEAS",)), - MAIL_PLEXUS =SIMP(statut='o',typ=maillage_sdaster ), - MAILLAGE =SIMP(statut='o',typ=maillage_sdaster ), - MODELE =SIMP(statut='o',typ=modele_sdaster ), - TOUT_ORDRE =SIMP(statut='f',typ='TXM',into=("OUI",) ), - NUME_ORDRE =SIMP(statut='f',typ='I',validators=NoRepeat(),max='**'), - LIST_ORDRE =SIMP(statut='f',typ=listis_sdaster ), - INST =SIMP(statut='f',typ='R',validators=NoRepeat(),max='**'), - LIST_INST =SIMP(statut='f',typ=listr8_sdaster ), - b_prec_crit =BLOC(condition = "LIST_INST != None or INST != None", - CRITERE =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU",),), - b_prec_rela=BLOC(condition="(CRITERE=='RELATIF')", - PRECISION =SIMP(statut='f',typ='R',defaut= 1.E-6,),), - b_prec_abso=BLOC(condition="(CRITERE=='ABSOLU')", - PRECISION =SIMP(statut='o',typ='R',),),), - TITRE =SIMP(statut='f',typ='TXM',max='**'), -) ; - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2013 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: j-pierre.lefebvre at edf.fr - -def lire_resu_prod(TYPE_RESU,**args): - if TYPE_RESU == "EVOL_CHAR" : return evol_char - if TYPE_RESU == "EVOL_THER" : return evol_ther - if TYPE_RESU == "EVOL_ELAS" : return evol_elas - if TYPE_RESU == "EVOL_NOLI" : return evol_noli - if TYPE_RESU == "DYNA_TRANS" : return dyna_trans - if TYPE_RESU == "DYNA_HARMO" : return dyna_harmo - if TYPE_RESU == "MODE_MECA" : return mode_meca - if TYPE_RESU == "MODE_MECA_C" : return mode_meca_c - if TYPE_RESU == "EVOL_VARC" : return evol_varc - raise AsException("type de concept resultat non prevu") - -# pour éviter d'écrire 3 fois cette liste : -def l_nom_cham_pas_elga() : - return list(set(C_NOM_CHAM_INTO())-set(C_NOM_CHAM_INTO('ELGA',))) - -LIRE_RESU=OPER(nom="LIRE_RESU",op=150,sd_prod=lire_resu_prod,reentrant='n', - UIinfo={"groupes":("Lecture","Resultats et champs",)}, - fr="Lire dans un fichier, soit format IDEAS, soit au format ENSIGHT soit au format MED," - +" des champs et les stocker dans une SD résultat", - - -# 0) mots cles generaux : -#---------------------- - TYPE_RESU =SIMP(statut='o',typ='TXM',into=("EVOL_THER","EVOL_ELAS","EVOL_NOLI","MODE_MECA", - "MODE_MECA_C","DYNA_TRANS","DYNA_HARMO", - "EVOL_CHAR","EVOL_VARC") ), - - FORMAT =SIMP(statut='o',typ='TXM',into=("IDEAS","IDEAS_DS58","ENSIGHT","MED") ), - - INFO =SIMP(statut='f',typ='I',into=(1,2) ), - TITRE =SIMP(statut='f',typ='TXM',max='**'), - - regles=(UN_PARMI('MAILLAGE','MODELE'),), - MAILLAGE =SIMP(statut='f',typ=maillage_sdaster), - MODELE =SIMP(statut='f',typ=modele_sdaster), - COMPORTEMENT =C_COMPORTEMENT(), - NB_VARI =SIMP(statut='f',typ='I' ), - - CHAM_MATER =SIMP(statut='f',typ=cham_mater,), - - CARA_ELEM =SIMP(statut='f',typ=cara_elem,), - - b_evol_elas = BLOC(condition="TYPE_RESU=='EVOL_ELAS'", - EXCIT =FACT(statut='f',max='**', - CHARGE =SIMP(statut='o',typ=(char_meca,char_cine_meca)), - FONC_MULT =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - TYPE_CHARGE =SIMP(statut='f',typ='TXM',defaut="FIXE",into=("FIXE",) ),), - ), - - b_evol_ther = BLOC(condition="TYPE_RESU=='EVOL_THER'", - EXCIT =FACT(statut='f',max='**', - CHARGE =SIMP(statut='o',typ=(char_ther,char_cine_ther)), - FONC_MULT =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)),), - ), - - b_evol_noli = BLOC(condition="TYPE_RESU=='EVOL_NOLI'", - EXCIT =FACT(statut='f',max='**', - CHARGE =SIMP(statut='o',typ=(char_meca,char_cine_meca)), - FONC_MULT =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - TYPE_CHARGE =SIMP(statut='f',typ='TXM',defaut="FIXE_CSTE", - into=("FIXE_CSTE","FIXE_PILO","SUIV","DIDI")), - DEPL =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - ACCE =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - VITE =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - MULT_APPUI =SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON") ), - DIRECTION =SIMP(statut='f',typ='R',max='**'), - NOEUD =SIMP(statut='f',typ=no ,validators=NoRepeat(),max='**'), - GROUP_NO =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'),), - ), - - -# 1) blocs selon le format choisi : -#--------------------------------- - -# 1-1 ideas dataset-58 : -# ---------------------- - b_dataset_58 = BLOC(condition="FORMAT=='IDEAS_DS58'", - UNITE =SIMP(statut='f',typ='I',defaut= 19 ), - ), - b_dataset_58_b = BLOC(condition="(FORMAT=='IDEAS_DS58') and ((TYPE_RESU=='DYNA_TRANS') or\ - (TYPE_RESU=='DYNA_HARMO'))", - NOM_CHAM=SIMP(statut='o',typ='TXM',validators=NoRepeat(),into=("DEPL","VITE","ACCE","EPSI_NOEU","SIEF_NOEU",),max='**'), - REDEFI_ORIENT=FACT(statut='f',max='**', - regles=(PRESENT_PRESENT('CODE_DIR','DIRECTION','NOEUD',),), - CODE_DIR =SIMP(statut='f',typ='I',into=(1,2,3,) ), - DIRECTION=SIMP(statut='f',typ='R',min=3,max=3,), - NOEUD =SIMP(statut='f',typ=no,validators=NoRepeat(),max='**'),), - ), - -# 1-2 ideas : -# --------- - b_ideas =BLOC(condition="FORMAT=='IDEAS'", - UNITE =SIMP(statut='f',typ='I',defaut= 19 ), -# TEST =SIMP(statut='f',typ='TXM',into=("OUI","NON"),defaut="NON" ), - NOM_CHAM =SIMP(statut='o',typ='TXM',validators=NoRepeat(),max='**',into=l_nom_cham_pas_elga()), - PROL_ZERO =SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON",), - fr="Affecte des valeurs nulles la ou le champ n'est pas defini"), - FORMAT_IDEAS =FACT(statut='f',max='**', - regles=(UN_PARMI('POSI_INST','POSI_FREQ'),), - NOM_CHAM =SIMP(statut='o',typ='TXM',validators=NoRepeat(),into=l_nom_cham_pas_elga()), - NUME_DATASET =SIMP(statut='f',typ='I',into=(55,57,2414) ), - RECORD_3 =SIMP(statut='f',typ='I',max=10), - RECORD_6 =SIMP(statut='f',typ='I',max=10), - RECORD_9 =SIMP(statut='f',typ='I',max=10), - POSI_ORDRE =SIMP(statut='o',typ='I',min=2,max=2), - POSI_NUME_MODE =SIMP(statut='f',typ='I',min=2,max=2), - POSI_MASS_GENE =SIMP(statut='f',typ='I',min=2,max=2), - POSI_AMOR_GENE =SIMP(statut='f',typ='I',min=2,max=2), - POSI_INST =SIMP(statut='f',typ='I',min=2,max=2), - POSI_FREQ =SIMP(statut='f',typ='I',min=2,max=2), - NOM_CMP =SIMP(statut='o',typ='TXM',max='**'),), - ), - -# 1-3 ensight : -# ------------- - b_ensight =BLOC(condition="FORMAT=='ENSIGHT'", - NOM_FICHIER =SIMP(statut='f',typ='TXM'), - NOM_CHAM =SIMP(statut='o',typ='TXM',validators=NoRepeat(),max='**',into=l_nom_cham_pas_elga()), - ), - -# 1-4 med : -# --------- - b_med =BLOC(condition = "FORMAT == 'MED'",fr="Nom du champ dans le fichier MED", - UNITE =SIMP(statut='f',typ='I',defaut= 81, fr="Le fichier est : fort.n.",), - FORMAT_MED =FACT(statut='o',max='**', - regles=(ENSEMBLE('NOM_CMP','NOM_CMP_MED'),UN_PARMI('NOM_CHAM_MED','NOM_RESU'),), - NOM_CHAM =SIMP(statut='o',typ='TXM',validators=NoRepeat(),into=C_NOM_CHAM_INTO(),), - NOM_CHAM_MED =SIMP(statut='f',typ='TXM', fr="Nom du champ dans le fichier MED.", ), - NOM_RESU =SIMP(statut='f',typ='TXM', fr="Prefixe du nom de champ dans le fichier MED.", ), - NOM_CMP =SIMP(statut='f',typ='TXM',max='**', fr="Nom des composantes dans ASTER.", ), - NOM_CMP_MED =SIMP(statut='f',typ='TXM',max='**', fr="Nom des composantes dans MED.", ), - ), - PROL_ZERO =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON",), - fr="Affecte des valeurs nulles la ou le champ n'est pas defini (sinon il y a NaN)"), - ), - -# 2) blocs selon le type du resultat : -#--------------------------------- - b_mode_meca =BLOC(condition="(TYPE_RESU=='MODE_MECA')or(TYPE_RESU=='MODE_MECA_C')", - # Ces mots cles sont stockes dans l'objet .REFD des mode_meca - # Ces mots cles sont aussi utilises pour imposer la numerotation des cham_no de DEPL_R - MATR_RIGI =SIMP(statut='f',typ=matr_asse_depl_r,max=1), - MATR_MASS =SIMP(statut='f',typ=matr_asse_depl_r,max=1), - ), - - -# 3) autres blocs : -#--------------------------------- - b_extrac =BLOC(condition="1",fr="acces a un champ dans la structure de donnees resultat", - regles=(UN_PARMI('TOUT_ORDRE','NUME_ORDRE','LIST_ORDRE','INST','LIST_INST','FREQ','LIST_FREQ'),), - TOUT_ORDRE =SIMP(statut='f',typ='TXM',into=("OUI",) ), - NUME_ORDRE =SIMP(statut='f',typ='I',validators=NoRepeat(),max='**'), - INST =SIMP(statut='f',typ='R',validators=NoRepeat(),max='**'), - LIST_INST =SIMP(statut='f',typ=listr8_sdaster), - LIST_ORDRE =SIMP(statut='f',typ=listis_sdaster), - FREQ =SIMP(statut='f',typ='R',validators=NoRepeat(),max='**'), - LIST_FREQ =SIMP(statut='f',typ=listr8_sdaster), - - b_acce_reel =BLOC(condition="(INST != None)or(LIST_INST != None)or(FREQ != None)or(LIST_FREQ != None)", - CRITERE =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU",),), - b_prec_rela=BLOC(condition="(CRITERE=='RELATIF')", - PRECISION =SIMP(statut='f',typ='R',defaut= 1.E-6,),), - b_prec_abso=BLOC(condition="(CRITERE=='ABSOLU')", - PRECISION =SIMP(statut='o',typ='R',),), - ), - ), -) ; - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2012 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: mathieu.courtois at edf.fr - - -LIRE_TABLE=MACRO(nom="LIRE_TABLE", - op=OPS('Macro.lire_table_ops.lire_table_ops'), - sd_prod=table_sdaster, - fr="Lecture d'un fichier contenant une table", - UIinfo={"groupes":("Lecture","Tables",)}, - UNITE = SIMP(statut='o', typ='I' ), - FORMAT = SIMP(statut='f', typ='TXM', into=("ASTER", "LIBRE", "TABLEAU"), defaut="TABLEAU"), - NUME_TABLE = SIMP(statut='f', typ='I', defaut=1), - SEPARATEUR = SIMP(statut='f', typ='TXM', defaut=' '), - RENOMME_PARA = SIMP(statut='f', typ='TXM', into=("UNIQUE",),), - TITRE = SIMP(statut='f', typ='TXM', max='**'), - INFO = SIMP(statut='f', typ='I', into=(1, 2), ), - ) ; - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2005 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: harinaivo.andriambololona at edf.fr - -MAC_MODES=OPER(nom="MAC_MODES",op= 141,sd_prod=table_sdaster, - fr="Critere orthogonalite de modes propres", - reentrant='n', - UIinfo={"groupes":("Résolution","Dynamique",)}, - regles=(PRESENT_PRESENT('IERI','MATR_ASSE'),), - BASE_1 =SIMP(statut='o',typ=(mode_meca,mode_meca_c,mode_flamb) ), - BASE_2 =SIMP(statut='o',typ=(mode_meca,mode_meca_c,mode_flamb) ), - MATR_ASSE =SIMP(statut='f',typ=(matr_asse_depl_r,matr_asse_depl_c) ), - IERI =SIMP(statut='f',typ='TXM',into=("OUI",),), - TITRE =SIMP(statut='f',typ='TXM',max='**'), - INFO =SIMP(statut='f',typ='I',defaut= 1,into=( 1 , 2) ), -) ; - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2013 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: gerald.nicolas at edf.fr -# -def macr_adap_mail_prod(self, MAJ_CHAM, ADD_CHAM, ADAPTATION, **args): -# -# 0. Typage des structures produites -# - #print args - if ( args.has_key('MAILLAGE_NP1') ) : - if ( args['MAILLAGE_NP1'] is not None ) : - maillage_np1=args['MAILLAGE_NP1'] - self.typeSDProd(maillage_np1, maillage_sdaster) -# - if ( args.has_key('MAILLAGE_NP1_ANNEXE') ) : - if ( args['MAILLAGE_NP1_ANNEXE'] is not None ) : - maillage_np1_annexe=args['MAILLAGE_NP1_ANNEXE'] - self.typeSDProd(maillage_np1_annexe, maillage_sdaster) -# - #print "MAJ_CHAM =", MAJ_CHAM - if MAJ_CHAM is not None : -# Remarque : la liste qui suit doit etre conforme à son homologue de LIRE_CHAMP - for ch in MAJ_CHAM: - t=ch['TYPE_CHAM'] - if t[0:5] == "NOEU_":self.typeSDProd(ch['CHAM_MAJ'],cham_no_sdaster) - if t[0:2] == "EL": self.typeSDProd(ch['CHAM_MAJ'],cham_elem) -# - #print "ADD_CHAM =", ADD_CHAM - if ADD_CHAM is not None : - for ch in ADD_CHAM: - self.typeSDProd(ch['CHAM_GD'],carte_sdaster) -# - return None - -MACR_ADAP_MAIL=MACRO(nom="MACR_ADAP_MAIL", - op=OPS('Macro.macr_adap_mail_ops.macr_adap_mail_ops'), - sd_prod=macr_adap_mail_prod, - fr="Adapter un maillage avec le logiciel HOMARD.", - ang="Mesh adaptation with the HOMARD software.", - UIinfo={"groupes":("Maillage",)}, -# -# 1. Le niveau d'information -# - INFO = SIMP(statut='f',typ='I',defaut=1,into=(1,2,3,4)), -# -# 2. Les maillages -# 2.1. Quel que soit le type de traitement, il faut donner le concept du maillage initial (entree) -# - MAILLAGE_N = SIMP(statut='o',typ=maillage_sdaster, - fr="Maillage avant adaptation", - ang="Mesh before adaptation" ), -# -# 2.2. Si ce n'est pas une simple lecture : -# - b_maillage = BLOC( condition = " (ADAPTATION != 'LECTURE') " , - fr="Lectures de champs aux points de Gauss ou aux noeuds par element.", - ang="Readings of the fields over the Gauss points.", -# -# 2.2.1. Le concept du maillage final (sortie) -# - MAILLAGE_NP1 = SIMP(statut='o',typ=CO, - fr="Maillage après adaptation", - ang="Mesh after adaptation" ), -# -# 2.2.2. Eventuellement, on peut produire un maillage annexe -# Actuellement, c'est le maillage n+1, mais de degré différent. -# - MAILLAGE_NP1_ANNEXE = SIMP(statut='f',typ=CO, - fr="Maillage annexe après adaptation", - ang="Additional mesh after adaptation" ), -# - ) , -# -# 3. Le pilotage de l'adaptation, avec les variantes suivantes : -# . Raffinement et deraffinement, selon un champ -# . Raffinement seul, selon un champ -# . Deraffinement seul, selon un champ -# . Raffinement et deraffinement, selon des zones geometriques -# . Raffinement uniforme : toutes les mailles sont divisées -# . Deraffinement uniforme : toutes les mailles sont regroupées -# . Modification : le maillage subit des transformations specifiques -# . Rien : le maillage est le meme a la sortie et a l'entree -# - ADAPTATION = SIMP(statut='o',typ='TXM', - into=("RAFF_DERA", "RAFFINEMENT", "DERAFFINEMENT", "RAFF_DERA_ZONE", \ - "RAFFINEMENT_UNIFORME", "DERAFFINEMENT_UNIFORME", \ - "MODIFICATION", "LECTURE", "RIEN"), - fr="Pilotage de l'adaptation : selon un champ ou uniforme.", - ang="Adaptation control: either among an field or uniform" ), -# -# 4. Pour de l'adaptation libre, il faut un champ d'indicateur -# - b_champ = BLOC( condition = " (ADAPTATION == 'RAFF_DERA') or \ - (ADAPTATION == 'RAFFINEMENT') or \ - (ADAPTATION == 'DERAFFINEMENT') " , - fr="Pour une adaptation libre, choix du champ définissant la région à raffiner/déraffiner", - ang="For a free adaptation, selection of the field that defines the area for refinment/unrefinement", -# - regles=(UN_PARMI('CHAM_GD','RESULTAT_N')), -# -# 4.1. Reperage de la région a raffiner a l'aide d'un champ -# -# 4.1.1. Sous forme de champ de grandeur -# - CHAM_GD = SIMP(statut='f',typ=cham_gd_sdaster, - fr="Champ de grandeur Code_Aster pilotant l'adaptation", - ang="Code_Aster 'champ de grandeur' governing the adapatation" ), -# -# 4.1.2. Sous forme de concept resultat_sdaster -# - RESULTAT_N = SIMP(statut='f',typ=(evol_elas,evol_noli,evol_ther) , - fr="Concept résultat Code_Aster contenant le champ", - ang="The Code_Aster result with the field" ), -# - b_champ_adaptation = BLOC(condition="(RESULTAT_N != None)", - NOM_CHAM = SIMP(statut='o',typ='TXM',validators=NoRepeat(),into=C_NOM_CHAM_INTO(), - fr="Champ dans le résultat", - ang="The field in the result structure" ), - ), -# -# 4.1.4. La ou les composantes retenues -# - NOM_CMP = SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**', - fr="Liste des composante(s) retenue(s) pour le champ.", - ang="List of the selected component(s) for the field." ), -# -# 4.1.5. Le paramètre temporel pour le champ -# - b_parametre_temporel = BLOC(condition="(RESULTAT_N != None)", - fr="Choix éventuel du paramètre temporel pour le champ", - ang="Time selection for the field (option)", -# - regles=(EXCLUS('NUME_ORDRE','INST'),), -# -# 4.1.5.1. Soit le numero d'ordre -# - NUME_ORDRE = SIMP(statut='f',typ='I', - fr="Numéro d ordre", - ang="Rank" ), -# -# 4.1.5.2. Soit l'instant -# 4.1.5.2.1. Sa valeur -# - INST = SIMP(statut='f',typ='R', - fr="Instant associé", - ang="Instant" ), -# -# 4.1.5.2.2. La précision du choix de l'instant -# - b_precision = BLOC(condition="(INST != None)", - fr="Choix de la précision du choix de l'instant", - ang="Precision for the choice of the instant", - CRITERE =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF", "ABSOLU",), - fr="Critère de précision sur le choix de l'instant associé", - ang="Accuracy criterium over the choice of the instant"), - b_prec_rela=BLOC(condition="(CRITERE=='RELATIF')", - PRECISION =SIMP(statut='f',typ='R',defaut= 1.E-6, - fr="Précision relative sur le choix de l'instant associé", - ang="Relative accuracy over the choice of the instant"),), - b_prec_abso=BLOC(condition="(CRITERE=='ABSOLU')", - PRECISION =SIMP(statut='o',typ='R', - fr="Précision absolue sur le choix de l'instant associé", - ang="Absolute accuracy over the choice of the instant"),), - ), -# - ), -# -# 4.1.6. Usage des composantes : maximum, maximum de la valeur absolue, ou de la norme L2, ou de la norme infinie -# - USAGE_CMP = SIMP(statut='f',typ='TXM',defaut="NORME_L2", - into=("ABSOLU", "NORME_L2", "NORME_INFINIE", "RELATIF"), - fr="Valeur absolue de la composante, ou norme du champ, ou valeur relative de la composante", - ang="Absolute value of the component, or norm of the field, or relative value of the component" ), -# -# 4.1.7. Usage du champ : la valeur par maille ou le max du saut entre mailles -# - USAGE_CHAMP = SIMP(statut='f',typ='TXM',defaut="MAILLE",into=("MAILLE", "SAUT"), - fr="Usage du champ : la valeur par maille ou le saut entre mailles voisines", - ang="Use of the field: value over every mesh or jump between the neighbours" ), -# -# 4.1.8. Initialisation de l'adaptation : raffinement ou déraffinement -# - ADAP_INIT = SIMP(statut='f',typ='TXM',defaut="GARDER",into=("GARDER", "DERAFFINER"), - fr="Initialisation de l'adaptation dans les régions sans indicateur : garder ou déraffiner", - ang="Initialization of the adaptation in the areas without indicator: keep or unrefine" ), -# - ) , -# -# 5. Les criteres pour de l'adaptation libre avec un champ : -# absolu, relatif, en proportion d'entite -# 5.1. Pour le raffinement : -# - b_critere_de_raffinement = BLOC( condition = " (ADAPTATION == 'RAFF_DERA') or \ - (ADAPTATION == 'RAFFINEMENT') " , - fr="Critère de raffinement.", - ang="Refinement threshold.", -# - regles=(UN_PARMI ( 'CRIT_RAFF_ABS', 'CRIT_RAFF_REL', 'CRIT_RAFF_PE', 'CRIT_RAFF_MS' ),), -# - CRIT_RAFF_ABS = SIMP(statut='f',typ='R', - fr="Critère absolu", - ang="Absolute threshold" ), - CRIT_RAFF_REL = SIMP(statut='f',typ='R',val_min=0.0,val_max=1.0, - fr="Critère relatif : fraction réelle entre 0. et 1.", - ang="Relative threshold : ratio between 0. and 1." ), - CRIT_RAFF_PE = SIMP(statut='f',typ='R',val_min=0.0,val_max=1.0, - fr="Pourcentage de mailles : fraction réelle entre 0. et 1.", - ang="Percentage of meshes: ratio between 0. and 1." ), - CRIT_RAFF_MS = SIMP(statut='f',typ='R', - fr="Critère absolu valant moyenne + n*sigma, n étant > 0", - ang="Absolute threshold: mean + n*sigma, with n > 0" ), - ) , -# -# 5.2. Pour le deraffinement : -# - b_critere_de_deraffinement = BLOC( condition = " (ADAPTATION == 'RAFF_DERA') or \ - (ADAPTATION == 'DERAFFINEMENT') " , - fr="Critère de déraffinement.", - ang="Unrefinement threshold.", -# - regles=(UN_PARMI ( 'CRIT_DERA_ABS', 'CRIT_DERA_REL', 'CRIT_DERA_PE', 'CRIT_DERA_MS' ),), -# - CRIT_DERA_ABS = SIMP(statut='f',typ='R' , - fr="Critère absolu", - ang="Absolute threshold" ), - CRIT_DERA_REL = SIMP(statut='f',typ='R',val_min=0.0,val_max=1.0, - fr="Critère relatif : fraction réelle entre 0. et 1.", - ang="Relative threshold: ratio between 0. and 1." ), - CRIT_DERA_PE = SIMP(statut='f',typ='R',val_min=0.0,val_max=1.0, - fr="Pourcentage de mailles : fraction réelle entre 0. et 1.", - ang="Percentage of meshes: ratio between 0. and 1." ), - CRIT_DERA_MS = SIMP(statut='f',typ='R', - fr="Critère absolu valant moyenne - n*sigma, n étant > 0", - ang="Absolute threshold: mean - n*sigma, with n > 0" ), - ) , -# -# 6. Pour de l'adaptation par zone, définitions des zones -# - b_zone = BLOC( condition = " (ADAPTATION == 'RAFF_DERA_ZONE') " , - fr="Pour une adaptation selon une zone à raffiner", - ang="For adaptation among a zone", -# - ZONE = FACT(statut='o',min=1,max='**', - fr="Définition de zones à raffiner.", - ang="Refined zone definition.", -# -# 6.1. Type de la zone -# - TYPE = SIMP(statut='o',typ='TXM',into=("RECTANGLE", "BOITE", "DISQUE", "SPHERE", "CYLINDRE", "DISQUE_PERCE", "TUYAU"), - fr="Type de la zone", - ang="Type of the zone" ), -# -# 6.2. Usage de la zone -# - USAGE = SIMP(statut='f',typ='TXM',into=("RAFFINEMENT","DERAFFINEMENT"),defaut="RAFFINEMENT", - fr="Zone pour raffiner", - ang="Zone: refinement" ), -# -# Ne sachant pas exploiter les blocs, je mets des regles -# - regles=(AU_MOINS_UN('X_MINI','X_CENTRE','HAUTEUR'), - EXCLUS('X_MINI','X_CENTRE','HAUTEUR',), - EXCLUS('Z_MINI','X_CENTRE','HAUTEUR',), - EXCLUS('X_MINI','Z_CENTRE','HAUTEUR',), - EXCLUS('Z_MINI','Z_CENTRE','HAUTEUR',), - EXCLUS('X_MINI','RAYON',), - EXCLUS('Z_MINI','RAYON',), - EXCLUS('RAYON','RAYON_INT',),), -# -# 6.3. Une boite rectangulaire ou parallelepipedique -# 6.3.1. Incontournables -# -##gn b_z_boiteXY = BLOC( condition = " (TYPE == 'RECTANGLE') or (TYPE == 'BOITE') " , -##gn fr="X et Y mini/maxi pour un rectangle ou un parallelepipede.", -##gn ang="X and Y min/max for a rectangle or a parallelepipedic box", - X_MINI = SIMP(statut='f',typ='R', - fr="Abscisse minimum de la boite", - ang="Minimum X for the box"), - X_MAXI = SIMP(statut='f',typ='R', - fr="Abscisse maximum de la boite", - ang="Maximum X for the box"), - Y_MINI = SIMP(statut='f',typ='R', - fr="Ordonnée minimum de la boite", - ang="Minimum Y for the box"), - Y_MAXI = SIMP(statut='f',typ='R', - fr="Abscisse maximum de la boite", - ang="Maximum Y for the box"), -##gn ) , -# -# 6.3.2. Complement pour une boite parallelepipedique -# -##gn b_z_boiteZ = BLOC( condition = " (TYPE == 'BOITE') " , -##gn fr="Z mini/maxi pour un parallelepipede.", -##gn ang="Z min/max for a parallelepipedic box", - Z_MINI = SIMP(statut='f',typ='R', - fr="Cote minimum de la boite", - ang="Minimum Z for the box"), - Z_MAXI = SIMP(statut='f',typ='R', - fr="Cote maximum de la boite", - ang="Maximum Z for the box"), -##gn ) , -# -# 6.4. Rayon pour un disque, une sphere ou un cylindre -# -##gn b_z_rayon = BLOC( condition = " (TYPE == 'DISQUE') or (TYPE == 'SPHERE') or (TYPE == 'CYLINDRE') " , -##gn fr="Le rayon d'un disque, d'une sphere ou d'un cylindre.", -##gn ang="The radius of a disk or of a sphere or of a cylinder.", - RAYON = SIMP(statut='f',typ='R', - fr="Rayon", - ang="Radius"), -##gn ) , -# -# 6.5. Pour un disque plein ou perce, une sphere -# 6.5.1. Incontournables -# -##gn b_z_di_sp_XY = BLOC( condition = " (TYPE == 'DISQUE') or (TYPE == 'SPHERE') or (TYPE == 'DISQUE_PERCE') " , -##gn fr="X et Y du centre d'un disque plein ou perce, d'une sphere.", -##gn ang="X and Y of the centre of a disk or of a sphere.", - X_CENTRE = SIMP(statut='f',typ='R', - fr="Abscisse du centre du disque ou de la sphère", - ang="X for the center of the disk or of the sphere"), - Y_CENTRE = SIMP(statut='f',typ='R', - fr="Ordonnée du centre du disque ou de la sphère", - ang="Y for the center of the disk or of the sphere"), -##gn ) , -# -# 6.5.2. Complement pour une sphere -# -##gn b_z_sp_Z = BLOC( condition = " (TYPE == 'SPHERE') " , -##gn fr="Cote du centre de la sphere.", -##gn ang="Z for the center of the sphere.", - Z_CENTRE = SIMP(statut='f',typ='R', - fr="Cote du centre de la sphère", - ang="Z for the center of the sphere"), -##gn ) , -# -# 6.6. Rayons interieur et exterieur pour un disque perce ou un tuyau -# -##gn b_z_rayon_int_ext = BLOC( condition = " (TYPE == 'DISQUE_PERCE') or (TYPE == 'TUYAU') " , -##gn fr="Le rayon d'un disque perce ou d'un tuyau.", -##gn ang="The radius of a holed disk or of a pipe.", - RAYON_INT = SIMP(statut='f',typ='R', - fr="Rayon intérieur", - ang="Internal radius"), - RAYON_EXT = SIMP(statut='f',typ='R', - fr="Rayon extérieur", - ang="External radius"), -##gn ) , -# -# 6.7. Un cylindre ou un tuyau -# -##gn b_z_cylindre_tuyau = BLOC( condition = " (TYPE == 'CYLINDRE') or (TYPE == 'TUYAU') " , -##gn fr="Pour un cylindre ou un tuyau.", -##gn ang="For a cylinder or a pipe.", - X_AXE = SIMP(statut='f',typ='R', - fr="Abscisse du vecteur directeur de l'axe", - ang="X for the axial vector"), - Y_AXE = SIMP(statut='f',typ='R', - fr="Ordonnée du vecteur directeur de l'axe", - ang="Y for the axial vector"), - Z_AXE = SIMP(statut='f',typ='R', - fr="Cote du vecteur directeur de l'axe", - ang="Z for the axial vector"), - X_BASE = SIMP(statut='f',typ='R', - fr="Abscisse d'un point de la base, sur l'axe", - ang="X for the basis, on the axis"), - Y_BASE = SIMP(statut='f',typ='R', - fr="Ordonnée d'un point de la base, sur l'axe", - ang="Y for the basis, on the axis"), - Z_BASE = SIMP(statut='f',typ='R', - fr="Cote d'un point de la base, sur l'axe", - ang="Z for the basis, on the axis"), - HAUTEUR = SIMP(statut='f',typ='R', - fr="Hauteur", - ang="Height"), -##gn ) , -# - ) , -# - ) , -# -# 7. Les niveaux extremes pour le maillage adapte -# 7.1. Pour le raffinement : -# - b_niveau_maximum = BLOC( condition = " (ADAPTATION == 'RAFF_DERA') or \ - (ADAPTATION == 'RAFFINEMENT') or \ - (ADAPTATION == 'RAFFINEMENT_UNIFORME') or \ - (ADAPTATION == 'RAFF_DERA_ZONE') " , - fr="Profondeur maximale de raffinement", - ang="Maximum depth for the refinement", -# - NIVE_MAX = SIMP(statut='f',typ='I', - fr="Niveau maximum de profondeur de raffinement", - ang="Maximum level for the refinement"), -# - DIAM_MIN = SIMP(statut='f',typ='R', - fr="Diamètre minimal des mailles", - ang="Minimal diameter for the meshes" ), -# - ) , -# -# 7.2. Pour le deraffinement : -# - b_niveau_minimum = BLOC( condition = " (ADAPTATION == 'RAFF_DERA') or \ - (ADAPTATION == 'DERAFFINEMENT') or \ - (ADAPTATION == 'DERAFFINEMENT_UNIFORME') " , - fr="Niveau minimum de profondeur de déraffinement", - ang="Minimum level for the unrefinement", - NIVE_MIN = SIMP(statut='f',typ='I', - fr="Niveau minimum de profondeur de déraffinement", - ang="Minimum level for the unrefinement"), - ) , -# -# 8. Filtrage de l'adaptation par des groupes -# - b_filtrage_par_des_groupes = BLOC( condition = " (ADAPTATION == 'RAFF_DERA') or \ - (ADAPTATION == 'RAFFINEMENT') or \ - (ADAPTATION == 'RAFFINEMENT_UNIFORME') or \ - (ADAPTATION == 'RAFF_DERA_ZONE') or \ - (ADAPTATION == 'DERAFFINEMENT') or \ - (ADAPTATION == 'DERAFFINEMENT_UNIFORME') " , - fr="Filtrage de l'adaptation par des groupes.", - ang="Filtering of adaptation by the groups.", -# - GROUP_MA = SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**', - fr="Liste des groupes de mailles pour le filtrage de l'adaptation.", - ang="List of the groups of meshes for filtering of the adaptation." ), -# - GROUP_NO = SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**', - fr="Liste des groupes de noeuds pour le filtrage de l'adaptation.", - ang="List of the groups of nodes for filtering of the adaptation." ), - ) , -# -# 9. Suivi d'une frontière -# -# 9.1. Definition d'une frontière par un maillage (valable seulement pour des frontières 1D) -# - MAILLAGE_FRONTIERE = SIMP(statut='f',typ=maillage_sdaster, - fr="Maillage de la frontière discrète à suivre", - ang="Discrete boundary mesh" ), -# - b_FRONTIERE = BLOC( condition = " MAILLAGE_FRONTIERE != None " , - fr="Information complémentaire sur la frontière discrète", - ang="Further information about discrete boundary", -# - GROUP_MA_FRONT = SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**', - fr="Liste des groupes de mailles définissant la frontière discrète", - ang="Mesh groups which define the discrete boundary" ), -# - ) , -# -# 9.2. Definition analytique d'une frontière -# - FRONTIERE_ANALYTIQUE = FACT(statut='f',max='**', - fr="Definition analytique de frontières a suivre.", - ang="Analytical definition of a boundary.", -# -# 9.2.1. Nom de la frontière -# - NOM = SIMP(statut='o',typ='TXM',validators=NoRepeat(),max=1, - fr="Nom de la frontière analytique", - ang="Name of the analytic boundary" ), -# -# 9.2.2. Type de la frontière -# - TYPE = SIMP(statut='o',typ='TXM',into=("SPHERE", "CYLINDRE"), - fr="Type de la frontière analytique", - ang="Type of the analytic boundary" ), -# -# 9.2.3. Pour une sphere, un cylindre par ses rayons : rayon et centre -# - b_fr_rayon = BLOC( condition = " (TYPE == 'SPHERE') or (TYPE == 'CYLINDRE') " , - fr="Le rayon et le centre d'une sphère ou d'un cylindre.", - ang="The radius and the centre of a sphere or of a cylinder.", - RAYON = SIMP(statut='o',typ='R', - fr="Rayon", - ang="Radius"), - X_CENTRE = SIMP(statut='o',typ='R', - fr="Abscisse du centre", - ang="X for the center"), - Y_CENTRE = SIMP(statut='o',typ='R', - fr="Ordonnée du centre", - ang="Y for the center"), - Z_CENTRE = SIMP(statut='o',typ='R', - fr="Cote du centre", - ang="Z for the center"), - ) , -# -# 9.2.4. Pour un cylindre defini par axe et angle : axe -# - b_fr_cylindre = BLOC( condition = " (TYPE == 'CYLINDRE') " , - fr="Pour un cylindre.", - ang="For a cylinder.", - X_AXE = SIMP(statut='o',typ='R', - fr="Abscisse du vecteur directeur de l'axe", - ang="X for the axial vector"), - Y_AXE = SIMP(statut='o',typ='R', - fr="Ordonnée du vecteur directeur de l'axe", - ang="Y for the axial vector"), - Z_AXE = SIMP(statut='o',typ='R', - fr="Cote du vecteur directeur de l'axe", - ang="Z for the axial vector"), - ) , -# -# 9.2.7. Groupe(s) lie(s) a la frontière -# - GROUP_MA = SIMP(statut='o',typ=grma,validators=NoRepeat(),max='**', - fr="Liste des groupes de mailles placées sur la frontière", - ang="Groups of meshes which are located on the boundary" ), -# - ) , -# -# 10. mise à jour de champs sur le nouveau maillage -# - MAJ_CHAM = FACT(statut='f',max='**', - fr="Mise à jour de champs sur le nouveau maillage.", - ang="Updating of the fields over the new mesh.", -# -# 10.1. Le nom du champ de grandeur qui contiendra le resultat de la mise a jour -# - CHAM_MAJ = SIMP(statut='o',typ=CO, - fr="Nom du champ de grandeur qui contiendra le champ mis à jour", - ang="Name of the field for the updated field"), -# -# 10.2. Le type du champ qui contiendra le resultat de la mise a jour -# - TYPE_CHAM = SIMP(statut='o',typ='TXM',into=C_TYPE_CHAM_INTO( ('NOEU', 'ELEM', 'ELNO', 'ELGA') ), - fr="Type du champ qui contiendra le champ mis à jour", - ang="Type of the field for the updated field" ), -# -# 10.3. Le champ a interpoler -# - regles=(UN_PARMI('CHAM_GD','RESULTAT')), -# -# 10.3.1. Sous forme de champ de grandeur -# - CHAM_GD = SIMP(statut='f',typ=cham_gd_sdaster, - fr="Champ de grandeur Code_Aster contenant le champ à mettre à jour", - ang="Champ de grandeur with the field to be updated" ), -# -# 10.3.2. Sous forme de champ dans un resultat -# - RESULTAT = SIMP(statut='f',typ=(evol_elas,evol_noli,evol_ther), - fr="Résultat contenant le champ à mettre à jour", - ang="Result with the field to be updated" ), -# - b_nom_du_champ = BLOC(condition="(RESULTAT != None)", - fr="Choix éventuel du nom du champ à interpoler", - ang="Selection for the name of the field (option)", -# - NOM_CHAM = SIMP(statut='o',typ='TXM',validators=NoRepeat(),into=C_NOM_CHAM_INTO(), - fr="Nom du champ à mettre à jour", - ang="Name of the field to be updated" ), -# - ), -# -# 10.4. Les composantes -# - NOM_CMP = SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**', - fr="Liste des composante(s) retenue(s) pour le champ.", - ang="List of the selected component(s) for the field." ), -# -# 10.5. Le paramètre temporel pour le champ a interpoler -# - b_parametre_temporel = BLOC(condition="(RESULTAT != None)", - fr="Choix éventuel du paramètre temporel pour le champ à interpoler", - ang="Time selection for the field (option)", -# - regles=(EXCLUS('NUME_ORDRE','INST'),), -# -# 10.5.1. Soit le numero d'ordre -# - NUME_ORDRE = SIMP(statut='f',typ='I', - fr="Numéro d ordre du champ à mettre à jour", - ang="Rank of the field to be updated" ), -# -# 10.5.2. Soit l'instant -# 10.5.2.1. Sa valeur -# - INST = SIMP(statut='f',typ='R', - fr="Instant associé", - ang="Instant" ), -# -# 10.5.2.2. La précision du choix de l'instant -# - b_precision = BLOC(condition="(INST != None)", - fr="Choix de la précision du choix de l'instant", - ang="Selection for the choice of the instant", -# - CRITERE =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF", "ABSOLU",), - fr="Critère de précision sur le choix de l'instant associé", - ang="Accuracy criterium over the choice of the instant"), - b_prec_rela=BLOC(condition="(CRITERE=='RELATIF')", - PRECISION =SIMP(statut='f',typ='R',defaut= 1.E-6, - fr="Précision relative sur le choix de l'instant associé", - ang="Relative accuracy over the choice of the instant"),), - b_prec_abso=BLOC(condition="(CRITERE=='ABSOLU')", - PRECISION =SIMP(statut='o',typ='R', - fr="Précision absolue sur le choix de l'instant associé", - ang="Absolute accuracy over the choice of the instant"),), -# - ), -# - ), -# -# 10.6. Type d'interpolation -# - TYPE_MAJ = SIMP(statut='f',typ='TXM',defaut="AUTO", - into=("AUTO", "ISOP2"), - fr="Type de mise à jour : automatique ou iso-P2", - ang="Type of the updating" ), - ), -# -# 11. Les modifications -# - b_modifications = BLOC( condition = " (ADAPTATION == 'MODIFICATION') " , - fr="Modification de maillage.", - ang="Modification of the mesh.", -# - #regles=(AU_MOINS_UN('DEGRE','JOINT'),), -# -# 11.1. Changement de degre -# - DEGRE = SIMP(statut='o',typ='TXM',into=("OUI",), - fr="Changement de degré du maillage", - ang="Modification of the degree of the mesh" ), -# - ) , -# -# 12. Le modele pour les lectures de champs aux points de Gauss ou aux noeuds par element -# - b_lectures = BLOC( condition = " (ADAPTATION == 'LECTURE') " , - fr="Lectures de champs aux points de Gauss.", - ang="Readings of the fields over the Gauss points.", -# - MODELE = SIMP(statut='o',typ=modele_sdaster, - fr="Modèle", - ang="Model" ), -# - ) , -# -# 13. Les options d'analyse de maillage ; par defaut, on ne fait que les nombres -# - b_analyses = BLOC( condition = " (ADAPTATION != 'LECTURE') " , - fr="Analyse du maillage.", - ang="Analysis of the mesh.", -# -# 13.1. Nombre de noeuds et mailles -# - NOMBRE = SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI",), - fr="Nombre de noeuds et de mailles du maillage", - ang="Number of nodes and meshes in the mesh" ), -# -# 13.2. Determination de la qualité des mailles du maillage -# - QUALITE = SIMP(statut='f',typ='TXM',into=("OUI",), - fr="Qualité du maillage", - ang="Quality of the mesh" ), -# -# 13.3. Connexite du maillage -# - CONNEXITE = SIMP(statut='f',typ='TXM',into=("OUI",), - fr="Connexité du maillage.", - ang="Connexity of the mesh." ), -# -# 13.4. Taille des sous-domaines du maillage -# - TAILLE = SIMP(statut='f',typ='TXM',into=("OUI",), - fr="Tailles des sous-domaines du maillage.", - ang="Sizes of mesh sub-domains." ), -# -# 13.5. Controle de la non-interpenetration des mailles -# - INTERPENETRATION=SIMP(statut='f',typ='TXM',into=("OUI",), - fr="Controle de la non interpénétration des mailles.", - ang="Overlapping checking." ), -# -# 13.6. Propriétés du maillage de calcul -# - PROP_CALCUL = SIMP(statut='f',typ='TXM',into=("OUI",), - fr="Propriétés du maillage de calcul.", - ang="Properties of the calculation mesh." ), -# -# 13.7. Determination des diametres des mailles du maillage -# - DIAMETRE = SIMP(statut='f',typ='TXM',into=("OUI",), - fr="Diamètre du maillage", - ang="Diameters of the mesh" ), -# - ) , -# -# 14. champs supplementaires sur le nouveau maillage -# - ADD_CHAM = FACT(statut='f',max='**', - fr="Champs supplementaires sur le nouveau maillage.", - ang="Additional fields over the new mesh.", -# -# 14.1. Le nom du champ de grandeur qui contiendra le nouveau champ -# - CHAM_GD = SIMP(statut='o',typ=CO, - fr="Nom du champ de grandeur qui contiendra le champ supplementaire", - ang="Name of the field for the additional field"), -# -# 14.2. La categorie du champ supplementaire -# - CHAM_CAT = SIMP(statut='o',typ='TXM',into=("NIVEAU", "DIAMETRE"), - fr="Categorie du champ supplementaire : niveau ou diametre", - ang="Category of the additional field: level or diameter" ), -# - ) , -# -# 15. Les options avancées -# 15.1. Langue des messages issus de HOMARD -# - LANGUE = SIMP(statut='f',typ='TXM',defaut="FRANCAIS", - into=("FRANCAIS", "FRENCH", "ANGLAIS", "ENGLISH",), - fr="Langue des messages issus de HOMARD.", - ang="Language for HOMARD messages." ), -# -# 15.2. Gestion des mailles acceptees dans le maillage initial -# "HOMARD" : exclusivement les mailles pouvant etre decoupees (defaut) -# "IGNORE_PYRA" : elles sont ignorées -# - b_autres_mailles = BLOC( condition = " (ADAPTATION != 'LECTURE') " , - fr="Gestion des pyramides.", - ang="Pyramids.", -# - ELEMENTS_ACCEPTES = SIMP(statut='f',typ='TXM',defaut="HOMARD",into=("HOMARD", "IGNORE_PYRA"), - fr="Acceptation des mailles dans le maillage initial", - ang="Elements in the very first mesh" ), -# - ) , -# -# 15.3. Version de HOMARD -# - VERSION_HOMARD = SIMP(statut='f',typ='TXM',defaut="V10_6", - into=("V10_6", "V10_N", "V10_N_PERSO"), - fr="Version de HOMARD", - ang="HOMARD release"), -# -# 15.4. Exécutable pilotant HOMARD -# - LOGICIEL = SIMP(statut='f',typ='TXM', - fr="Logiciel pilotant HOMARD", - ang="HOMARD software"), -# -# 15.5. Unite logique d'un fichier à ajouter a HOMARD.Configuration -# - b_unite = BLOC( condition = " (VERSION_HOMARD == 'V10_N') or \ - (VERSION_HOMARD == 'V10_N_PERSO') " , - fr="Fichier supplementaire.", - ang="Additional file.", -# - UNITE = SIMP(statut='f',typ='I', - fr="Unite logique a ajouter a HOMARD.Configuration", - ang="Additional file to HOMARD.Configuration" ), -# - ) , -# -) ; - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2012 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: samuel.geniaut at edf.fr - -def macr_ascouf_calc_prod(self,MODELE,CHAM_MATER,CARA_ELEM,FOND_FISS,RESU_THER,**args): - self.typeSDProd(MODELE,modele_sdaster) - if CHAM_MATER != None:self.typeSDProd(CHAM_MATER,cham_mater) - if CARA_ELEM != None:self.typeSDProd(CARA_ELEM,cara_elem) - if FOND_FISS != None:self.typeSDProd(FOND_FISS,fond_fiss) - if RESU_THER != None:self.typeSDProd(RESU_THER,evol_ther) - return evol_noli - -MACR_ASCOUF_CALC=MACRO(nom="MACR_ASCOUF_CALC", - op=OPS('Macro.macr_ascouf_calc_ops.macr_ascouf_calc_ops'), - sd_prod=macr_ascouf_calc_prod, - fr="Réalise l'analyse thermomécanique du coude dont le maillage a " \ - "été concu par MACR_ASCOUF_MAIL", - reentrant='n', - UIinfo={"groupes":("Résolution","Outils-métier",)}, - - TYPE_MAILLAGE =SIMP(statut='o',typ='TXM', - into=("SAIN", - "FISS_COUDE", - "FISS_AXIS_DEB", - "SOUS_EPAIS_COUDE" - ) ), - - CL_BOL_P2_GV =FACT(statut='f', - ANGLE =SIMP(statut='o',typ='R' ), - AZIMUT =SIMP(statut='f',typ='R',defaut= 90. ), - ), - - MAILLAGE =SIMP(statut='o',typ=maillage_sdaster ), - MODELE =SIMP(statut='o',typ=CO,), - CHAM_MATER =SIMP(statut='f',typ=CO,), - CARA_ELEM =SIMP(statut='f',typ=CO,), - FOND_FISS =SIMP(statut='f',typ=CO,), - RESU_THER =SIMP(statut='f',typ=CO,), - - AFFE_MATERIAU =FACT(statut='o',max=3, - regles=(UN_PARMI('TOUT','GROUP_MA'),), - TOUT =SIMP(statut='f',typ='TXM',into=("OUI",) ), - GROUP_MA =SIMP(statut='f',typ=grma,into=("COUDE","BOL") ), - MATER =SIMP(statut='o',typ=mater_sdaster ), - TEMP_REF =SIMP(statut='f',typ='R',defaut= 0.E+0 ), - ), - - PRES_REP =FACT(statut='f', - PRES =SIMP(statut='o',typ='R' ), - EFFE_FOND_P1 =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON") ), - PRES_LEVRE =SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON") ), - FONC_MULT =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - ), - - ECHANGE =FACT(statut='f', - COEF_H =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - TEMP_EXT =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - ), - - TORS_P1 =FACT(statut='f',max=6, - regles=(AU_MOINS_UN('FX','FY','FZ','MX','MY','MZ'),), - FX =SIMP(statut='f',typ='R' ), - FY =SIMP(statut='f',typ='R' ), - FZ =SIMP(statut='f',typ='R' ), - MX =SIMP(statut='f',typ='R' ), - MY =SIMP(statut='f',typ='R' ), - MZ =SIMP(statut='f',typ='R' ), - FONC_MULT =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - ), - - - COMPORTEMENT =C_COMPORTEMENT('MACR_ASCOUF_CALC'), - -#------------------------------------------------------------------- -# Catalogue commun SOLVEUR - SOLVEUR =C_SOLVEUR('MACR_ASCOUF_CALC'), -#------------------------------------------------------------------- - - CONVERGENCE =C_CONVERGENCE(), - - NEWTON =C_NEWTON(), - - RECH_LINEAIRE =C_RECH_LINEAIRE(), - - INCREMENT =C_INCREMENT('MECANIQUE'), - - THETA_3D =FACT(statut='f',max='**', - R_INF =SIMP(statut='o',typ='R' ), - R_SUP =SIMP(statut='o',typ='R' ), - ), - - ENERGIE =FACT(statut='f',max=1, - CALCUL =SIMP(statut='f',typ='TXM',into=("OUI",),defaut="OUI",), - ), - - IMPR_TABLE =FACT(statut='f', - regles=(UN_PARMI('TOUT_PARA','NOM_PARA', ), - PRESENT_PRESENT('TOUT_PARA','ANGLE', ), - PRESENT_PRESENT('TOUT_PARA','R_CINTR', ), - UN_PARMI('POSI_CURV_LONGI','POSI_ANGUL',),), - NOM_PARA =SIMP(statut='f',typ='TXM',validators=NoRepeat(),max=4, - into=("TRESCA_MEMBRANE", - "TRESCA_MFLE", - "TRESCA", - "SI_LONG" - "SI_RADI" - "SI_CIRC" - ) ), - TOUT_PARA =SIMP(statut='f',typ='TXM',into=("OUI",) ), - ANGLE =SIMP(statut='f',typ='R', ), - R_CINTR =SIMP(statut='f',typ='R', ), - POSI_CURV_LONGI =SIMP(statut='f',typ='R', ), - POSI_ANGUL =SIMP(statut='f',typ='R', ), - TRANSFORMEE =SIMP(statut='f',typ='TXM',defaut="COUDE",into=("COUDE","TUBE") ), - ), - - IMPRESSION =FACT(statut='f', - FORMAT =SIMP(statut='f',typ='TXM',defaut="RESULTAT", - into=("RESULTAT","ASTER","IDEAS","CASTEM") ), - - b_format_ideas =BLOC(condition="FORMAT=='IDEAS'",fr="version Ideas", - VERSION =SIMP(statut='f',typ='I',defaut=5,into=(4,5)), - ), - - b_format_castem =BLOC(condition="FORMAT=='CASTEM'",fr="version Castem", - NIVE_GIBI =SIMP(statut='f',typ='I',defaut=10,into=(3,10)), - ), - - ), - - TITRE =SIMP(statut='f',typ='TXM' ), - - INFO =SIMP(statut='f',typ='I',defaut= 1,into=(1,2) ), -) ; - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2012 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: samuel.geniaut at edf.fr - -MACR_ASCOUF_MAIL=MACRO(nom="MACR_ASCOUF_MAIL", - op=OPS('Macro.macr_ascouf_mail_ops.macr_ascouf_mail_ops'), - sd_prod=maillage_sdaster, - fr="Engendre le maillage d'un coude sain ou comportant une fissure ou une (ou plusieurs) sous-épaisseur(s)", - UIinfo={"groupes":("Maillage","Outils-métier",)}, - reentrant='n', - - regles=(EXCLUS('SOUS_EPAIS_COUDE','FISS_COUDE','SOUS_EPAIS_MULTI'),), - - EXEC_MAILLAGE =FACT(statut='o', - LOGICIEL =SIMP(statut='o',typ='TXM',defaut="GIBI2000",into=("GIBI98","GIBI2000") ), - UNITE_DATG =SIMP(statut='f',typ='I',defaut=70), - UNITE_MGIB =SIMP(statut='f',typ='I',defaut=19), - NIVE_GIBI =SIMP(statut='f',typ='I',defaut=10,into=(3,4,5,6,7,8,9,10,11)), - ), - - TYPE_ELEM =SIMP(statut='f',typ='TXM',defaut="CU20",into=("CU20","CUB8") ), - - COUDE =FACT(statut='o', - ANGLE =SIMP(statut='o',typ='R' ), - R_CINTR =SIMP(statut='o',typ='R' ), - L_TUBE_P1 =SIMP(statut='o',typ='R' ), - L_TUBE_P2 =SIMP(statut='f',typ='R',defaut= 0.E+0 ), - NB_ELEM_EPAIS =SIMP(statut='f',typ='I',defaut= 3 ), - SYME =SIMP(statut='f',typ='TXM',defaut="ENTIER",into=("ENTIER","QUART","DEMI") ), - TRANSFORMEE =SIMP(statut='o',typ='TXM',defaut="COUDE",into=("COUDE","TUBE") ), - b_transf_coude =BLOC(condition = "TRANSFORMEE == 'COUDE' ", - DEXT =SIMP(statut='o',typ='R' ), - EPAIS =SIMP(statut='o',typ='R' ), - SUR_EPAIS =SIMP(statut='f',typ='R',defaut= 0.E+0 ), - BOL_P2 =SIMP(statut='f',typ='TXM',into=("ASP_MPP","CUVE","GV") ), - ), - b_transf_tube =BLOC(condition = "TRANSFORMEE == 'TUBE' ", - TRAN_EPAIS =SIMP(statut='o',typ='TXM',defaut="NON",into=("OUI","NON") ), - b_trans_epais_oui =BLOC(condition = "TRAN_EPAIS == 'OUI' ", - regles=(ENSEMBLE('ANGL_TETA2','EPAIS_TI'), - UN_PARMI('ABSC_CURV_TRAN','POSI_ANGU_TRAN'),), - DEXT_T1 =SIMP(statut='o',typ='R' ), - EPAIS_T1 =SIMP(statut='o',typ='R' ), - EPAIS_T2 =SIMP(statut='o',typ='R' ), - EPAIS_TI =SIMP(statut='f',typ='R' ), - ANGL_TETA1 =SIMP(statut='o',typ='R' ), - ANGL_TETA2 =SIMP(statut='f',typ='R' ), - ABSC_CURV_TRAN =SIMP(statut='f',typ='R' ), - POSI_ANGU_TRAN =SIMP(statut='f',typ='R' ), - ), - b_trans_epais_non =BLOC(condition = "TRAN_EPAIS == 'NON' ", - DEXT =SIMP(statut='o',typ='R' ), - EPAIS =SIMP(statut='o',typ='R' ), - SUR_EPAIS =SIMP(statut='f',typ='R',defaut= 0.E+0 ), - BOL_P2 =SIMP(statut='f',typ='TXM',into=("ASP_MPP","CUVE","GV") ), - ), - ), - ), - - SOUS_EPAIS_COUDE=FACT(statut='f', - regles=(UN_PARMI('POSI_CURV_LONGI','POSI_ANGUL'), - UN_PARMI('POSI_CURV_CIRC','AZIMUT'),), - TYPE =SIMP(statut='o',typ='TXM',into=("AXIS","ELLI") ), - AXE_CIRC =SIMP(statut='f',typ='R' ), - AXE_LONGI =SIMP(statut='o',typ='R' ), - PROFONDEUR =SIMP(statut='o',typ='R' ), - POSI_CURV_LONGI =SIMP(statut='f',typ='R' ), - POSI_ANGUL =SIMP(statut='f',typ='R' ), - POSI_CURV_CIRC =SIMP(statut='f',typ='R' ), - AZIMUT =SIMP(statut='f',typ='R' ), - SOUS_EPAIS =SIMP(statut='o',typ='TXM',into=("INTERNE","EXTERNE") ), - NB_ELEM_LONGI =SIMP(statut='o',typ='I' ), - NB_ELEM_CIRC =SIMP(statut='o',typ='I' ), - NB_ELEM_RADI =SIMP(statut='f',typ='I',defaut= 3 ), - EMPREINTE =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON") ), - ), - - SOUS_EPAIS_MULTI=FACT(statut='f',max='**', - regles=(UN_PARMI('POSI_CURV_LONGI','POSI_ANGUL'), - UN_PARMI('POSI_CURV_CIRC','AZIMUT'),), - TYPE =SIMP(statut='o',typ='TXM',into=("AXIS","ELLI") ), - AXE_CIRC =SIMP(statut='f',typ='R' ), - AXE_LONGI =SIMP(statut='o',typ='R' ), - PROFONDEUR =SIMP(statut='o',typ='R' ), - POSI_CURV_LONGI =SIMP(statut='f',typ='R' ), - POSI_ANGUL =SIMP(statut='f',typ='R' ), - POSI_CURV_CIRC =SIMP(statut='f',typ='R' ), - AZIMUT =SIMP(statut='f',typ='R' ), - SOUS_EPAIS =SIMP(statut='o',typ='TXM',into=("INTERNE","EXTERNE") ), - NB_ELEM_LONGI =SIMP(statut='o',typ='I' ), - NB_ELEM_CIRC =SIMP(statut='o',typ='I' ), - EMPREINTE =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON") ), - ), - - FISS_COUDE =FACT(statut='f', - regles=(UN_PARMI('ABSC_CURV','POSI_ANGUL'),), - AXIS =SIMP(statut='f',typ='TXM',into=("OUI","NON"),defaut="NON" ), - b_axis_non =BLOC(condition = "AXIS == 'NON' ", - LONGUEUR =SIMP(statut='o',typ='R' ), - ), - b_axis_oui =BLOC(condition = "AXIS == 'OUI' ", - LONGUEUR =SIMP(statut='f',typ='R' ), - ), - PROFONDEUR =SIMP(statut='o',typ='R' ), - ABSC_CURV =SIMP(statut='f',typ='R' ), - POSI_ANGUL =SIMP(statut='f',typ='R' ), - FISSURE =SIMP(statut='o',typ='TXM',into=("DEB_INT","DEB_EXT") ), - AZIMUT =SIMP(statut='f',typ='R',defaut= 90. ), - ORIEN =SIMP(statut='o',typ='R', - into=(45.,-45.,90.,0.E+0) ), - NB_TRANCHE =SIMP(statut='o',typ='I' ), - NB_SECTEUR =SIMP(statut='o',typ='I' ), - NB_COURONNE =SIMP(statut='o',typ='I' ), - RAYON_TORE =SIMP(statut='f',typ='R' ), - COEF_MULT_RC2 =SIMP(statut='f',typ='R',defaut= 1. ), - COEF_MULT_RC3 =SIMP(statut='f',typ='R' ), - ANGL_OUVERTURE =SIMP(statut='f',typ='R',defaut= 0.5 ), - ), - - IMPRESSION =FACT(statut='f',max='**', - regles=(PRESENT_PRESENT('FICHIER','UNITE'),), - FORMAT =SIMP(statut='f',typ='TXM',defaut="ASTER", - into=("ASTER","IDEAS","CASTEM") ), - b_format_ideas =BLOC(condition="FORMAT=='IDEAS'",fr="version Ideas", - VERSION =SIMP(statut='f',typ='I',defaut=5,into=(4,5)), - ), - b_format_castem =BLOC(condition="FORMAT=='CASTEM'",fr="version Castem", - NIVE_GIBI =SIMP(statut='f',typ='I',defaut=10,into=(3,10)), - ), - FICHIER =SIMP(statut='f',typ='TXM' ), - UNITE =SIMP(statut='f',typ='I' ), - ), - - INFO =SIMP(statut='f',typ='I',defaut= 1,into=(1,2) ), -) ; - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2012 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: samuel.geniaut at edf.fr - -def macr_aspic_calc_prod(self,MODELE,CHAM_MATER,CARA_ELEM,FOND_FISS_1,FOND_FISS_2,RESU_THER,**args): - if MODELE != None:self.typeSDProd(MODELE,modele_sdaster) - if CHAM_MATER != None:self.typeSDProd(CHAM_MATER,cham_mater) - if CARA_ELEM != None:self.typeSDProd(CARA_ELEM,cara_elem) - if FOND_FISS_1 != None:self.typeSDProd(FOND_FISS_1,fond_fiss) - if FOND_FISS_2 != None:self.typeSDProd(FOND_FISS_2,fond_fiss) - if RESU_THER != None:self.typeSDProd(RESU_THER,evol_ther) - return evol_noli - -MACR_ASPIC_CALC=MACRO(nom="MACR_ASPIC_CALC", - op=OPS('Macro.macr_aspic_calc_ops.macr_aspic_calc_ops'), - sd_prod=macr_aspic_calc_prod, - fr="Réalise un calcul prédéfini de piquages sains ou fissurés " \ - "ainsi que les post-traitements associés ", - UIinfo={"groupes":("Résolution","Outils-métier",)}, - reentrant='n', - - TYPE_MAILLAGE =SIMP(statut='o',typ='TXM', - into=("SAIN_FIN","SAIN_GROS","FISS_COUR_DEB","FISS_COUR_NONDEB","FISS_LONG_DEB", - "FISS_LONG_NONDEB","FISS_AXIS_DEB","FISS_AXIS_NONDEB") ), - - TUBULURE =FACT(statut='o', - TYPE =SIMP(statut='o',typ='TXM',into=("TYPE_1","TYPE_2") ), - ), - MAILLAGE =SIMP(statut='o',typ=maillage_sdaster), - MODELE =SIMP(statut='f',typ=CO,), - CHAM_MATER =SIMP(statut='f',typ=CO,), - CARA_ELEM =SIMP(statut='f',typ=CO,), - FOND_FISS_1 =SIMP(statut='f',typ=CO,), - FOND_FISS_2 =SIMP(statut='f',typ=CO,), - RESU_THER =SIMP(statut='f',typ=CO,), - - AFFE_MATERIAU =FACT(statut='o',max=3, - regles=(UN_PARMI('TOUT','GROUP_MA'),), - TOUT =SIMP(statut='f',typ='TXM',into=("OUI",)), - GROUP_MA =SIMP(statut='f',typ=grma,into=("TUBU","CORP","SOUD","SOUDCORP","SOUDTUBU") ), - MATER =SIMP(statut='o',typ=mater_sdaster), - TEMP_REF =SIMP(statut='f',typ='R',defaut= 0.E+0 ), - RCCM =SIMP(statut='o',typ='TXM',into=("OUI","NON")), - ), - - EQUILIBRE =FACT(statut='o', - NOEUD =SIMP(statut='o',typ=no), - ), - - PRES_REP =FACT(statut='o', - PRES =SIMP(statut='o',typ='R'), - NOEUD =SIMP(statut='f',typ=no), - EFFE_FOND =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON")), - PRES_LEVRE =SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON") ), - FONC_MULT =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - ), - - ECHANGE =FACT(statut='f', - COEF_H_TUBU =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - COEF_H_CORP =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - TEMP_EXT =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - ), - - TORS_CORP =FACT(statut='f',max=6, - regles=(AU_MOINS_UN('FX','FY','FZ','MX','MY','MZ'),), - NOEUD =SIMP(statut='o',typ=no), - FX =SIMP(statut='f',typ='R'), - FY =SIMP(statut='f',typ='R'), - FZ =SIMP(statut='f',typ='R'), - MX =SIMP(statut='f',typ='R'), - MY =SIMP(statut='f',typ='R'), - MZ =SIMP(statut='f',typ='R'), - FONC_MULT =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - ), - - TORS_TUBU =FACT(statut='f',max=6, - regles=(AU_MOINS_UN('FX','FY','FZ','MX','MY','MZ'),), - FX =SIMP(statut='f',typ='R'), - FY =SIMP(statut='f',typ='R'), - FZ =SIMP(statut='f',typ='R'), - MX =SIMP(statut='f',typ='R'), - MY =SIMP(statut='f',typ='R'), - MZ =SIMP(statut='f',typ='R'), - FONC_MULT =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - ), - - COMPORTEMENT =C_COMPORTEMENT('MACR_ASPIC_CALC'), - - THETA_3D =FACT(statut='f',max='**', - R_INF =SIMP(statut='o',typ='R'), - R_SUP =SIMP(statut='o',typ='R'), - ), - - OPTION =SIMP(statut='f',typ='TXM',into=("CALC_G_MAX","CALC_G_MAX_LOCAL") ), - BORNES =FACT(statut='f',max='**', - NUME_ORDRE =SIMP(statut='o',typ='I'), - VALE_MIN =SIMP(statut='o',typ='R'), - VALE_MAX =SIMP(statut='o',typ='R'), - ), - -#------------------------------------------------------------------- -# Catalogue commun SOLVEUR - SOLVEUR =C_SOLVEUR('MACR_ASPIC_CALC'), -#------------------------------------------------------------------- - - CONVERGENCE =C_CONVERGENCE(), - - NEWTON =C_NEWTON(), - - RECH_LINEAIRE =C_RECH_LINEAIRE(), - - INCREMENT =C_INCREMENT('MECANIQUE'), - - PAS_AZIMUT =SIMP(statut='f',typ='I',defaut=1), - - ENERGIE =FACT(statut='f',max=1, - CALCUL =SIMP(statut='f',typ='TXM',into=("OUI",),defaut="OUI",), - ), - - IMPRESSION =FACT(statut='f', - FORMAT =SIMP(statut='f',typ='TXM',defaut="RESULTAT", - into=("RESULTAT","ASTER","CASTEM","IDEAS")), - - b_format_ideas =BLOC(condition="FORMAT=='IDEAS'",fr="version Ideas", - VERSION =SIMP(statut='f',typ='I',defaut=5,into=(4,5)), - ), - - b_format_castem =BLOC(condition="FORMAT=='CASTEM'",fr="version Castem", - NIVE_GIBI =SIMP(statut='f',typ='I',defaut=10,into=(3,10)), - ), - - b_extrac =BLOC(condition="((FORMAT=='IDEAS')or(FORMAT=='CASTEM'))", - fr="extraction d un champ de grandeur", - regles=(EXCLUS('TOUT_ORDRE','NUME_ORDRE','INST'),), - NOM_CHAM =SIMP(statut='f',typ='TXM',validators=NoRepeat(),max=3,into=("DEPL","SIEQ_ELNO","TEMP")), - - TOUT_ORDRE =SIMP(statut='f',typ='TXM',into=("OUI",) ), - NUME_ORDRE =SIMP(statut='f',typ='I',validators=NoRepeat(),max='**'), - INST =SIMP(statut='f',typ='R',validators=NoRepeat(),max='**'), - ), - ), - - INFO =SIMP(statut='f',typ='I',defaut=1,into=(1,2)), - - TITRE =SIMP(statut='f',typ='TXM'), -) - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2012 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: samuel.geniaut at edf.fr - - -MACR_ASPIC_MAIL=MACRO(nom="MACR_ASPIC_MAIL", - op=OPS('Macro.macr_aspic_mail_ops.macr_aspic_mail_ops'), - sd_prod=maillage_sdaster, - reentrant='n', - fr="Engendre le maillage d'un piquage sain ou avec fissure (longue ou courte)", - UIinfo={"groupes":("Maillage","Outils-métier",)}, - - EXEC_MAILLAGE =FACT(statut='o', - LOGICIEL =SIMP(statut='o',typ='TXM',defaut="GIBI2000",into=("GIBI98","GIBI2000")), - UNITE_DATG =SIMP(statut='f',typ='I',defaut=70), - UNITE_MGIB =SIMP(statut='f',typ='I',defaut=19), - NIVE_GIBI =SIMP(statut='f',typ='I',defaut=10,into=(3,4,5,6,7,8,9,10,11)), - ), - - TYPE_ELEM =SIMP(statut='f',typ='TXM',defaut="CU20",into=("CU20","CUB8")), - - RAFF_MAIL =SIMP(statut='f',typ='TXM',defaut="GROS",into=("GROS","FIN")), - - TUBULURE =FACT(statut='o', - E_BASE =SIMP(statut='o',typ='R'), - DEXT_BASE =SIMP(statut='o',typ='R'), - L_BASE =SIMP(statut='o',typ='R'), - L_CHANF =SIMP(statut='o',typ='R'), - E_TUBU =SIMP(statut='o',typ='R'), - DEXT_TUBU =SIMP(statut='o',typ='R'), - Z_MAX =SIMP(statut='o',typ='R'), - TYPE =SIMP(statut='o',typ='TXM',into=("TYPE_1","TYPE_2")), - L_PENETR =SIMP(statut='f',typ='R',defaut= 0.0E+0), - ), - - SOUDURE =FACT(statut='o', - H_SOUD =SIMP(statut='o',typ='R'), - ANGL_SOUD =SIMP(statut='o',typ='R'), - JEU_SOUD =SIMP(statut='o',typ='R'), - ), - - CORPS =FACT(statut='o', - E_CORP =SIMP(statut='o',typ='R'), - DEXT_CORP =SIMP(statut='o',typ='R'), - X_MAX =SIMP(statut='o',typ='R'), - ), - - FISS_SOUDURE =FACT(statut='f', - TYPE =SIMP(statut='o',typ='TXM',into=("LONGUE","COURTE")), - AXIS =SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON")), - PROFONDEUR =SIMP(statut='o',typ='R'), - LONGUEUR =SIMP(statut='f',typ='R'), - AZIMUT =SIMP(statut='o',typ='R'), - RAYON_TORE =SIMP(statut='f',typ='R'), - POSITION =SIMP(statut='o',typ='TXM',into=("DROIT","INCLINE")), - FISSURE =SIMP(statut='o',typ='TXM',into=("DEB_INT","DEB_EXT","NON_DEB","TRAVERS")), - LIGA_INT =SIMP(statut='f',typ='R'), - ANGL_OUVERTURE =SIMP(statut='f',typ='R',defaut= 0.0E+0), - COEF_MULT_RC1 =SIMP(statut='f',typ='R'), - COEF_MULT_RC2 =SIMP(statut='f',typ='R'), - COEF_MULT_RC3 =SIMP(statut='f',typ='R'), - NB_TRANCHE =SIMP(statut='f',typ='I'), - NB_SECTEUR =SIMP(statut='f',typ='I'), - NB_COURONNE =SIMP(statut='f',typ='I'), - ), - - IMPRESSION =FACT(statut='f',max='**', - regles=(PRESENT_PRESENT('FICHIER','UNITE'),), - FORMAT =SIMP(statut='f',typ='TXM',defaut="ASTER",into=("ASTER","IDEAS","CASTEM")), - - b_format_ideas =BLOC(condition="FORMAT=='IDEAS'",fr="version Ideas", - VERSION =SIMP(statut='f',typ='I',defaut=5,into=(4,5)), - ), - - b_format_castem =BLOC(condition="FORMAT=='CASTEM'",fr="version Castem", - NIVE_GIBI =SIMP(statut='f',typ='I',defaut=10,into=(3,10)), - ), - FICHIER =SIMP(statut='f',typ='TXM'), - UNITE =SIMP(statut='f',typ='I'), - ), - - INFO =SIMP(statut='f',typ='I',defaut=1,into=(1,2)), -) ; - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2012 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: jean-luc.flejou at edf.fr - - -MACR_CARA_POUTRE=MACRO(nom="MACR_CARA_POUTRE", - op=OPS('Macro.macr_cara_poutre_ops.macr_cara_poutre_ops'), - sd_prod=table_sdaster, - reentrant='n', - UIinfo={"groupes":("Modélisation",)}, - fr="Calculer les caractéristiques d'une section transversale de " \ - "poutre à partir d'un maillage 2D de la section", - regles=( - EXCLUS('SYME_Y','GROUP_MA_BORD'), - EXCLUS('SYME_Z','GROUP_MA_BORD'), - ), - - MAILLAGE =SIMP(statut='f',typ=maillage_sdaster, fr="Nom du concept maillage"), - b_maillage =BLOC( - condition = "MAILLAGE == None", - regles=( PRESENT_PRESENT('FORMAT','UNITE') ), - FORMAT =SIMP(statut='f',typ='TXM',defaut="ASTER",into=("ASTER","MED"), - fr="Format du fichier"), - UNITE =SIMP(statut='f',typ='I',defaut= 20, - fr="Unite correspondant au format du fichier maillage"), - ), - - ORIG_INER =SIMP(statut='f',typ='R',max=3,defaut=(0.E+0,0.E+0), - fr="Point par rapport auquel sont calculées les inerties"), - INFO =SIMP(statut='f',typ='I',defaut=1,into=(1,2)), - - TABLE_CARA =SIMP(statut='f',typ='TXM',into=("OUI","NON"),defaut="NON",), - - SYME_Y =SIMP(statut='f',typ='TXM',into=("OUI",), fr="demi maillage par rapport a y=0"), - SYME_Z =SIMP(statut='f',typ='TXM',into=("OUI",), fr="demi maillage par rapport a z=0"), - - GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**', - fr="Calcul des caractéristiques équivalentes à plusieurs sections disjointes"), - - GROUP_MA_BORD =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**', - fr="Groupe(s) de mailles linéiques, bord(s) de(s) section(s)"), - - b_nom =BLOC( - condition = """(TABLE_CARA == 'OUI') and (GROUP_MA == None)""", - NOM =SIMP(statut='f',typ='TXM',max=1,validators=LongStr(1,8), - fr="Nom de la section, 8 caractères maximum.") - ), - - b_gma_bord =BLOC( - condition = "GROUP_MA_BORD != None", - fr=" calcul des carac. mecaniques", - regles=(UN_PARMI('NOEUD','GROUP_NO')), - NOEUD =SIMP(statut='f',typ=no,max='**', - fr="Simplement pour empecher des pivots nuls le cas echeant. " - "Fournir un noeud quelconque"), - GROUP_NO =SIMP(statut='f',typ=grno,max='**', - fr="Simplement pour empecher des pivots nuls le cas echeant. " - "Fournir un noeud quelconque par GROUP_MA"), - GROUP_MA_INTE =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**', - fr="groupes de mailles linéiques bordant des trous dans la section"), - ), - - b_reseau = BLOC( - condition ="""(GROUP_MA_BORD != None) and (GROUP_MA != None)""", - fr=" calcul des coef de cisaillement équivalents a un reseau de poutres", - regles=(ENSEMBLE('LONGUEUR','LIAISON','MATERIAU') ,), - LONGUEUR =SIMP(statut='f',typ='R', - fr="Longueur du réseau de poutres"), - MATERIAU =SIMP(statut='f',typ=mater_sdaster, - fr="Materiau elastique lineaire du reseau"), - LIAISON =SIMP(statut='f',typ='TXM',into=("ROTULE","ENCASTREMENT"), - fr="type de conditions aux limites sur le plancher supérieur" ), - ), -) - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2011 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: j-pierre.lefebvre at edf.fr - - -def macr_ecla_pg_prod(self,RESULTAT,MAILLAGE,RESU_INIT,**args): - self.typeSDProd(RESULTAT,AsType(RESU_INIT)) - self.typeSDProd(MAILLAGE,maillage_sdaster) - return None - - -MACR_ECLA_PG=MACRO(nom="MACR_ECLA_PG", - op=OPS('Macro.macr_ecla_pg_ops.macr_ecla_pg_ops'), - sd_prod=macr_ecla_pg_prod, - reentrant='n', - UIinfo={"groupes":("Post-traitements","Résultats et champs",)}, - fr="Permettre la visualisation des champs aux points de Gauss d'une " \ - "SD_RESULTAT sans lissage ni interpolation", - - # SD résultat ,modèle et champs à "éclater" : - RESU_INIT =SIMP(statut='o',typ=resultat_sdaster,fr="RESULTAT à éclater",), - MODELE_INIT =SIMP(statut='o',typ=modele_sdaster,fr="MODELE à éclater"), - NOM_CHAM =SIMP(statut='o',typ='TXM',validators=NoRepeat(),max='**',into=C_NOM_CHAM_INTO('ELGA'),), - - # paramètres numériques de la commande : - SHRINK =SIMP(statut='f',typ='R',defaut= 0.9, fr="Facteur de réduction" ), - TAILLE_MIN =SIMP(statut='f',typ='R',defaut= 0.0, fr="Taille minimale d'un coté" ), - - # concepts produits par la commande : - RESULTAT =SIMP(statut='o',typ=CO,fr="SD_RESULTAT résultat de la commande"), - MAILLAGE =SIMP(statut='o',typ=CO,fr="MAILLAGE associé aux cham_no de la SD_RESULTAT"), - - # Sélection éventuelle d'un sous-ensemble des éléments à visualiser : - TOUT =SIMP(statut='f',typ='TXM',into=("OUI",) ), - MAILLE =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), - GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - - # Sélection des numéros d'ordre : - regles=(EXCLUS('TOUT_ORDRE','NUME_ORDRE','INST','LIST_INST','LIST_ORDRE'),), - TOUT_ORDRE =SIMP(statut='f',typ='TXM',into=("OUI",) ), - NUME_ORDRE =SIMP(statut='f',typ='I',validators=NoRepeat(),max='**'), - LIST_ORDRE =SIMP(statut='f',typ=listis_sdaster), - INST =SIMP(statut='f',typ='R',validators=NoRepeat(),max='**'), - LIST_INST =SIMP(statut='f',typ=listr8_sdaster), - CRITERE =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU",),), - b_prec_rela=BLOC(condition="(CRITERE=='RELATIF')", - PRECISION =SIMP(statut='f',typ='R',defaut= 1.E-6,),), - b_prec_abso=BLOC(condition="(CRITERE=='ABSOLU')", - PRECISION =SIMP(statut='o',typ='R',),), - ) - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2013 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: marina.bottoni at edf.fr - - -def macr_ecre_calc_prod(self,TABLE,DEBIT,**args): - - self.typeSDProd(TABLE,table_sdaster) - self.typeSDProd(DEBIT,table_sdaster) - return None - -MACR_ECRE_CALC=MACRO(nom="MACR_ECRE_CALC", - op=OPS('Macro.macr_ecre_calc_ops.macr_ecre_calc_ops'), - sd_prod=macr_ecre_calc_prod, - reentrant='n', - UIinfo={"groupes":("Résolution","Outils-métier",)}, - fr="Procedure de couplage avec Ecrevisse", - - regles = (UN_PARMI('LOGICIEL','VERSION'),), - -# CONCEPTS SORTANT : 2 TABLES POUR LE POST-TRAITEMENT -# ******************************************** - TABLE =SIMP(statut='o',typ=CO), - DEBIT =SIMP(statut='o',typ=CO), - -# DONNEES GEOMETRIQUES RELATIVES A LA FISSURE -# ******************************************* - - FISSURE =FACT(statut='o',min=1,max=1, - LONGUEUR =SIMP(statut='o',typ='R',val_min=0.E+0,fr="Longueur de la fissure [zl]"), - RUGOSITE =SIMP(statut='o',typ='R',fr="Rugosite absolu (metres) [eps]"), - ANGLE =SIMP(statut='o',typ='R',fr="Angle par rapport a l'ascendante verticale (degres)"), - ZETA =SIMP(statut='o',typ='R',fr="Coefficient de la perte de charge singuliere a l'entree [zeta]"), - SECTION =SIMP(statut='o',typ='TXM',into=("ELLIPSE","RECTANGLE"),fr="Type de section [is]"), - b_section_ellipse =BLOC(condition="SECTION=='ELLIPSE'",fr="Fissure a section elliptique", - LISTE_COTES_AH =SIMP(statut='o',typ='R',max='**', - fr="Liste des cotes des points definissant le grand axe de la section", - validators=NoRepeat()), - LISTE_VAL_AH =SIMP(statut='o',typ='R',max='**', - fr="Liste des valeurs des points definissant le grand axe de la section",), - LISTE_COTES_BL =SIMP(statut='o',typ='R',max='**', - fr="Liste des cotes des points definissant le petit axe de la section", - validators=NoRepeat()), - LISTE_VAL_BL =SIMP(statut='o',typ='R',max='**', - fr="Liste des valeurs des points definissant le petit axe de la section",), - ), - b_section_rectangle =BLOC(condition="SECTION=='RECTANGLE'",fr="Fissure a section rectangulaire", - LISTE_COTES_AH =SIMP(statut='o',typ='R',max='**', - fr="Liste des cotes des points definissant la hauteur de la section", - validators=NoRepeat()), - LISTE_VAL_AH =SIMP(statut='o',typ='R',max='**', - fr="Liste des valeurs des points definissant la hauteur de la section",), - LISTE_COTES_BL =SIMP(statut='o',typ='R',max='**', - fr="Liste des cotes des points definissant la largeur de la section", - validators=NoRepeat()), - LISTE_VAL_BL =SIMP(statut='o',typ='R',max='**', - fr="Liste des valeurs des points definissant la largeur de la section",), - ), - ), - - -# DONNEES RELATIVES A L"ECOULEMENT -# ******************************** - - ECOULEMENT =FACT(statut='f',min=1,max=1, - PRES_ENTREE =SIMP(statut='o',typ='R',fr="Pression de stagnation a l'entree (Pa) [pe]" ), - PRES_SORTIE =SIMP(statut='o',typ='R',fr="Pression de stagnation a la sortie (Pa) [ps]" ), - FLUIDE_ENTREE =SIMP(statut='o',typ='I',into=(1,2,3,4,5,6),fr="Condition du fluide a l'entree [iflow]" ), - b_condition_1 =BLOC(condition="FLUIDE_ENTREE==1",fr="Eau sous-refroidie ou saturee", - TEMP_ENTREE =SIMP(statut='o',typ='R',fr="Temperature a l'entree (degres C) [te]" ), - ), - b_condition_2 =BLOC(condition="FLUIDE_ENTREE==2",fr="Fluide diphasique", - TITR_MASS =SIMP(statut='o',typ='R',fr="Titre massique eau vap/eau tot a l'entree [xe]" ), - ), - b_condition_3 =BLOC(condition="FLUIDE_ENTREE==3",fr="Vapeur saturee ou surchauffee", - TEMP_ENTREE =SIMP(statut='o',typ='R',fr="Temperature a l'entree (degres C) [te]" ), - ), - b_condition_4 =BLOC(condition="FLUIDE_ENTREE==4",fr="Air + vapeur surchauffee", - TEMP_ENTREE =SIMP(statut='o',typ='R',fr="Temperature a l'entree (degres C) [te]" ), - PRES_PART =SIMP(statut='o',typ='R',fr="Pression partielle air en entree (Pa) [pae]" ), - ), - b_condition_5 =BLOC(condition="FLUIDE_ENTREE==5",fr="Air + vapeur saturee", - TITR_MASS =SIMP(statut='o',typ='R',fr="Titre massique eau vap/eau tot a l'entree [xe]" ), - PRES_PART =SIMP(statut='o',typ='R',fr="Pression partielle air en entree (Pa) [pae]" ), - ), - b_condition_6 =BLOC(condition="FLUIDE_ENTREE==6",fr="Air seul", - TEMP_ENTREE =SIMP(statut='o',typ='R',fr="Temperature a l'entree (degres C) [te]" ), - ), - ), - - -# DONNEES RELATIVES AU PROFIL DE TEMPERATURE A TRAVERS LA PAROI -# ************************************************************* - - TEMPERATURE =FACT(statut='f',min=1,max=1, - GRADIENT =SIMP(statut='o',typ='TXM',into=("FOURNI","IMPOSE","CALCULE"), - fr="Modele de calcul du gradient de temperature [imograd]" ), - b_gradient_fourni =BLOC(condition="GRADIENT=='FOURNI'",fr="Distribution de temperature fournie [imograd=-1]", - LISTE_COTES_TEMP =SIMP(statut='o',typ='R',max='**',fr="Liste des cotes pour les temperatures", - validators=NoRepeat() ), - LISTE_VAL_TEMP =SIMP(statut='o',typ='R',max='**',fr="Liste des valeurs de temperature", ), - ), - b_gradient_impose =BLOC(condition="GRADIENT=='IMPOSE'",fr="Distribution imposee de temperature [imograd=0]", - TEMP1 =SIMP(statut='o',typ='R', - fr="Gradient de temperature de la paroi le long de l'ecoulement (degC/m) [tm1]", ), - TEMP2 =SIMP(statut='o',typ='R',fr="Temperature de la paroi a l'entree (degC) [tm2]", ), - ), - b_gradient_calcule =BLOC(condition="GRADIENT=='CALCULE'",fr="Profil de temperature calcule [imograd=1]", - EPAISSEUR_PAROI =SIMP(statut='o',typ='R',fr="Epaisseur de la paroi (m) [epp]", ), - CONVECTION_AMONT =SIMP(statut='o',typ='R', - fr="Coefficient de convection a la surface de la paroi cote amont (W/degC/m2) [alphe]", ), - CONVECTION_AVAL =SIMP(statut='o',typ='R', - fr="Coefficient de convection a la surface de la paroi cote aval (W/degC/m2) [alphs]", ), - LAMBDA =SIMP(statut='o',typ='R',fr="Conduction thermique de la paroi (W/degC/m) [lambd]", ), - TEMP_FLUIDE_AVAL =SIMP(statut='o',typ='R',fr="Temperature du fluide cote aval (degC) [ts]", ), - ), - ), - - -# CHOIX DES MODELES -# ***************** - - MODELE_ECRE =FACT(statut='f',min=1,max=1, - IVENAC =SIMP(statut='f', typ='I', into=(0,1), defaut=0, - fr="Calcul ECREVISSE avec prise en compte de la vena contracta"), - ECOULEMENT =SIMP(statut='o',typ='TXM',into=("SATURATION","GELE"), - fr="Type de modele d'ecoulement diphasique [imod]" ), - b_ecou_gele =BLOC(condition="ECOULEMENT=='GELE'",fr="Modele d'ecoulement gele", - PRESS_EBULLITION =SIMP(statut='o',typ='R',fr="Pression d'ebullition [corrp*psat(t)]"), - ), - FROTTEMENT =SIMP(statut='o',typ='I',into=(-4,-3,-2,-1,0,1,2,3,4,11,12,13,14),fr="Correlation de frottement [ifrot]"), - b_frottement =BLOC(condition="FROTTEMENT<0",fr="Modele d'ecoulement gele", - REYNOLDS_LIM =SIMP(statut='o',typ='R',fr="Coefficient de Reynolds limite [relim]"), - FROTTEMENT_LIM =SIMP(statut='o',typ='R',fr="Coefficient de frottement impose [frtlim]"), - ), - - TRANSFERT_CHAL =SIMP(statut='o',typ='I',into=(-12,-11,-2,-1,0,1,2,11,12),fr="Transfert de chaleur [ichal]"), - b_transchal =BLOC(condition="TRANSFERT_CHAL<0", fr="Cas diphasique", - XMINCH =SIMP(statut='o',typ='R',fr="Titre massique gazeux min [xminch]"), - XMAXCH =SIMP(statut='o',typ='R',fr="Titre massique gazeux max [xmaxch]"), - ), - ), - - -# DONNEES RELATIVES A LA CONVERGENCE NUMERIQUE -# ******************************************** - - CONVERGENCE =FACT(statut='f',min=1,max=1, - KGTEST =SIMP(statut='f',typ='R',val_min=0.E+0,val_max=1.E+0,defaut= 0.5E+0, - fr="Parametre de l'algorithme iteratif [kgtest]" ), - ITER_GLOB_MAXI =SIMP(statut='f',typ='I',defaut= 400, - fr="Nombre maximum d'iterations de la methode de Newton [itnmax]" ), - CRIT_CONV_DEBI =SIMP(statut='f',typ='R',val_min=0.E+0,val_max=1.E+0,defaut= 1.E-5, - fr="Critere de convergence en debit [precdb]" ), - ), - - -# GENERAL -# ******* - - COURBES =SIMP(statut='f',typ='TXM',into=("INTERACTIF","POSTSCRIPT","AUCUNE"),defaut="AUCUNE", - fr="Generation eventuelle des courbes" ), - LOGICIEL =SIMP(statut='f',typ='TXM',validators=LongStr(1,255),), - VERSION =SIMP(statut='f',typ='TXM',into = ("3.2.1",) ), - ENTETE =SIMP(statut='f',typ='TXM',max='**',defaut="Titre du calcul Ecrevisse" ), - IMPRESSION =SIMP(statut='f',typ='TXM',defaut='NON',into=( 'OUI','NON') ), - INFO =SIMP(statut='f',typ='I',defaut= 1,into=(1,2) ), - -) ; - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2013 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: marina.bottoni at edf.fr - - -def macr_ecrevisse_prod(self,TABLE,TEMPER,DEBIT,**args): - # On definit ici les concepts produits - self.typeSDProd(TABLE,table_sdaster) - self.typeSDProd(TEMPER,evol_ther) - self.typeSDProd(DEBIT,table_sdaster) - # concept retourne - return evol_noli - - -MACR_ECREVISSE=MACRO(nom="MACR_ECREVISSE", - op=OPS('Macro.macr_ecrevisse_ops.macr_ecrevisse_ops'), - sd_prod=macr_ecrevisse_prod, - reentrant='f', - UIinfo={"groupes":("Résolution","Outils-métier",)}, - fr="Procedure de couplage avec Ecrevisse", - - reuse = SIMP(statut='f',typ='evol_noli'), - regles = (EXCLUS('TEMPER','ETAT_INIT'), - UN_PARMI('LOGICIEL','VERSION'),), - -# CONCEPT SORTANT -# ******************************************** - TABLE =SIMP(statut='f',typ=CO), - DEBIT =SIMP(statut='f',typ=CO), - TEMPER =SIMP(statut='f',typ=CO), - -# ETAT_INITIAL -# ******************************************** - ETAT_INIT =FACT(statut='f', - EVOL_NOLI =SIMP(statut='o',typ=evol_noli), - EVOL_THER =SIMP(statut='o',typ=evol_ther), - NUME_ORDRE =SIMP(statut='o',typ='I'), - ), - - -# MODELES MECANIQUES -# ******************************************** - MODELE_MECA =SIMP(statut='o',typ=modele_sdaster), - MODELE_THER =SIMP(statut='o',typ=modele_sdaster), - - -# DONNEES GEOMETRIQUES RELATIVES A LA FISSURE -# ******************************************* - FISSURE =FACT(statut='o',min=1,max='**', - PREFIXE_FICHIER =SIMP(statut='f',typ='TXM',validators=LongStr(1,8)), - GROUP_MA =SIMP(statut='o',typ=grma,validators=NoRepeat(),min=2,max=2, - fr="Groupe(s) des noeuds definissant les levres de la fissure"), - GROUP_NO_ORIG =SIMP(statut='o',typ=grno,validators=NoRepeat(),min=2,max=2), - GROUP_NO_EXTR =SIMP(statut='o',typ=grno,validators=NoRepeat(),min=2,max=2), - ZETA =SIMP(statut='o',typ='R',fr="Coefficient de la perte de charge singuliere a l'entree [zeta]" ), - RUGOSITE =SIMP(statut='o',typ='R',fr="Rugosite absolu (metres) [eps]" ), - TORTUOSITE =SIMP(statut='f',typ='R',defaut=1.0, val_min=0., val_max=1.0, - fr="Coefficient de tortuosite de la fissure" ), - OUVERT_REMANENTE =SIMP(statut='o',typ='R',val_min=0.,fr="Ouverture remanente"), - SECTION =SIMP(statut='o',typ='TXM',into=("ELLIPSE","RECTANGLE"),fr="Type de section [is]" ), - b_section_ellipse =BLOC(condition="SECTION=='ELLIPSE'",fr="Fissure a section elliptique", - LISTE_COTES_BL =SIMP(statut='f',typ='R',max='**', - fr="Liste des cotes des points definissant le petit axe de la section", - validators=NoRepeat() ), - LISTE_VAL_BL =SIMP(statut='o',typ='R',max='**', - fr="Liste des valeurs des points definissant le petit axe de la section", ), - ), - b_section_rectangle =BLOC(condition="SECTION=='RECTANGLE'",fr="Fissure a section rectangulaire", - LISTE_COTES_BL =SIMP(statut='f',typ='R',max='**', - fr="Liste des cotes des points definissant la largeur de la section",validators=NoRepeat()), - LISTE_VAL_BL =SIMP(statut='o',typ='R',max='**', - fr="Liste des valeurs des points definissant la largeur de la section", ), - ), - ), - - -# DONNEES RELATIVES A L"ECOULEMENT -# ******************************** - ECOULEMENT =FACT(statut='o',min=1,max=1, - regles=(UN_PARMI('PRES_ENTREE','PRES_ENTREE_FO'), - UN_PARMI('PRES_SORTIE','PRES_SORTIE_FO'), - ), - PRES_ENTREE =SIMP(statut='f',typ='R',fr="Pression de stagnation a l'entree (Pa) [pe]" ), - PRES_ENTREE_FO =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule), - fr="Evolution de la pression de stagnation a l'entree (Pa) [pe]" ), - PRES_SORTIE =SIMP(statut='f',typ='R',fr="Pression de stagnation a la sortie (Pa) [ps]" ), - PRES_SORTIE_FO =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule), - fr="Evolution de la pression de stagnation a la sortie (Pa) [ps]" ), - FLUIDE_ENTREE =SIMP(statut='o',typ='I',into=(1,2,3,4,5,6),fr="Condition du fluide a l'entree [iflow]" ), - b_condition_1 =BLOC(condition="FLUIDE_ENTREE==1", - regles=(UN_PARMI('TEMP_ENTREE', 'TEMP_ENTREE_FO')), - fr="Eau sous-refroidie ou saturee", - TEMP_ENTREE =SIMP(statut='f',typ='R',fr="Temperature a l'entree (degres C) [te]" ), - TEMP_ENTREE_FO =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule), - fr="Evolution de la temperature a l'entree (degres C) [te]" ), - ), - b_condition_2 =BLOC(condition="FLUIDE_ENTREE==2", - regles=(UN_PARMI('TITR_MASS', 'TITR_MASS_FO')), - fr="Fluide diphasique", - TITR_MASS =SIMP(statut='f',typ='R',fr="Titre massique eau vap/eau tot a l'entree [xe]" ), - TITR_MASS_FO =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule), - fr="Evolution du titre massique eau vap/eau tot a l'entree [xe]" ), - ), - b_condition_3 =BLOC(condition="FLUIDE_ENTREE==3", - regles=(UN_PARMI('TEMP_ENTREE', 'TEMP_ENTREE_FO')), - fr="Vapeur saturee ou surchauffee", - TEMP_ENTREE =SIMP(statut='f',typ='R',fr="Temperature a l'entree (degres C) [te]" ), - TEMP_ENTREE_FO =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule), - fr="Evolution de la temperature a l'entree (degres C) [te]" ), - ), - b_condition_4 =BLOC(condition="FLUIDE_ENTREE==4", - regles=(UN_PARMI('TEMP_ENTREE', 'TEMP_ENTREE_FO'), - UN_PARMI('PRES_PART', 'PRES_PART_FO')), - fr="Air + vapeur surchauffee", - TEMP_ENTREE =SIMP(statut='f',typ='R',fr="Temperature a l'entree (degres C) [te]" ), - TEMP_ENTREE_FO =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule), - fr="Evolution de la temperature a l'entree (degres C) [te]" ), - PRES_PART =SIMP(statut='f',typ='R',fr="Pression partielle air en entree (Pa) [pae]" ), - PRES_PART_FO =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule), - fr="Evolution de la pression partielle air en entree (Pa) [pae]" ), - ), - b_condition_5 =BLOC(condition="FLUIDE_ENTREE==5", - regles=(UN_PARMI('TITR_MASS', 'TITR_MASS_FO'), - UN_PARMI('PRES_PART', 'PRES_PART_FO')), - fr="Air + vapeur saturee", - TITR_MASS =SIMP(statut='f',typ='R',fr="Titre massique eau vap/eau tot a l'entree [xe]" ), - TITR_MASS_FO =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule), - fr="Evolution du titre massique eau vap/eau tot a l'entree [xe]" ), - PRES_PART =SIMP(statut='f',typ='R',fr="Pression partielle air en entree (Pa) [pae]" ), - PRES_PART_FO =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule), - fr="Evolution de la pression partielle air en entree (Pa) [pae]" ), - ), - b_condition_6 =BLOC(condition="FLUIDE_ENTREE==6", - regles=(UN_PARMI('TEMP_ENTREE', 'TEMP_ENTREE_FO')), - fr="Air seul", - TEMP_ENTREE =SIMP(statut='f',typ='R',fr="Temperature a l'entree (degres C) [te]" ), - TEMP_ENTREE_FO =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule), - fr="Evolution de la temperature a l'entree (degres C) [te]" ), - ), - ), - - LIST_INST =SIMP(statut='f',typ=(listr8_sdaster), fr="Liste des instants de calcul imposes" ), - -# CHOIX DES MODELES -# ***************** - - MODELE_ECRE =FACT(statut='o',min=1,max=1, - IVENAC =SIMP(statut='f', typ='I', into=(0,1), defaut=0, - fr="Calcul ECREVISSE avec prise en compte de la vena contracta"), - ECOULEMENT =SIMP(statut='o',typ='TXM',into=("SATURATION","GELE"), - fr="Type de modele d'ecoulement diphasique [imod]" ), - b_ecou_gele =BLOC(condition="ECOULEMENT=='GELE'",fr="Modele d'ecoulement gele", - PRESS_EBULLITION =SIMP(statut='o',typ='R',fr="Pression d'ebullition [corrp*psat(t)]" ), - ), - FROTTEMENT =SIMP(statut='o',typ='I',into=(-4,-3,-2,-1,0,1,2,3,4,11,12,13,14),fr="Correlation de frottement [ifrot]" ), - b_frottement =BLOC(condition="FROTTEMENT<0",fr="Modele d'ecoulement gele", - REYNOLDS_LIM =SIMP(statut='o',typ='R',fr="Coefficient de Reynolds limite [relim]" ), - FROTTEMENT_LIM =SIMP(statut='o',typ='R',fr="Coefficient de frottement impose [frtlim]" ), - ), - - TRANSFERT_CHAL =SIMP(statut='o',typ='I',into=(-12,-11,-2,-1,0,1,2,11,12),fr="Transfert de chaleur [ichal]" ), - b_transchal =BLOC(condition="TRANSFERT_CHAL<0", fr="Cas diphasique", - XMINCH =SIMP(statut='o',typ='R',fr="Titre massique gazeux min [xminch]"), - XMAXCH =SIMP(statut='o',typ='R',fr="Titre massique gazeux max [xmaxch]"), - ), - ), - - -# CRITERE DE CONVERGENCE -# ********************** - - CONV_CRITERE =FACT(statut='o',min=1,max=1, - TEMP_REF =SIMP(statut='o',typ='R',val_min=1.0E-5,fr="Temperature de reference pour le calcul du critere"), - PRES_REF =SIMP(statut='o',typ='R',val_min=1.0E-5,fr="Pression de reference pour le calcul du critere"), - CRITERE =SIMP(statut='o',typ='TXM',defaut="TEMP_PRESS",into=("TEMP_PRESS","EXPLICITE","TEMP","PRESS"), - fr="La nature du critere pour la convergence"), - b_critere_autre =BLOC(condition="CRITERE=='TEMP_PRESS' or CRITERE=='TEMP' or CRITERE=='PRESS'", - fr="Critere de convergence temp_press, temp, ou press", - SUBD_NIVEAU =SIMP(statut='f',typ='I',val_min=2,defaut=3, - fr="Nombre maximum de niveau de subdivision d'un pas de temps"), - SUBD_PAS_MINI =SIMP(statut='f',typ='R',val_min=0.0, fr="Pas de temps en dessous duquel on ne subdivise plus"), - NUME_ORDRE_MIN =SIMP(statut='f',typ='I',val_min=-1,defaut=-1, - fr="Numero d'ordre a partir duquel le critere est pris en compte"), - PREC_CRIT =SIMP(statut='f',typ='R',val_min=1.0E-2,defaut=1.0, - fr="Valeur du critere pour l'erreur de convergence"), - ), - ), - - -# DONNEES RELATIVES A LA CONVERGENCE NUMERIQUE -# ******************************************** - - CONVERGENCE_ECREVISSE =FACT(statut='f',min=1,max=1, - KGTEST =SIMP(statut='f',typ='R',val_min=0.E+0,val_max=1.E+0,defaut= 0.5E+0, - fr="Parametre de l'algorithme iteratif [kgtest]" ), - ITER_GLOB_MAXI =SIMP(statut='f',typ='I',defaut= 400, - fr="Nombre maximum d'iterations de la methode de Newton [itnmax]" ), - CRIT_CONV_DEBI =SIMP(statut='f',typ='R',val_min=0.E+0,val_max=1.E+0,defaut= 1.E-5, - fr="Critere de convergence en debit [precdb]" ), - ), - - -# GENERAL -# ******* - - COURBES = SIMP(statut='f',typ='TXM',into=("INTERACTIF","POSTSCRIPT","AUCUNE"),defaut="AUCUNE", - fr="Generation eventuelle des courbes" ), - LOGICIEL = SIMP(statut='f',typ='TXM',validators=LongStr(1,255),), - VERSION = SIMP(statut='f',typ='TXM',into = ("3.2.1",) ), - ENTETE = SIMP(statut='f',typ='TXM',max='**',defaut="Titre du calcul Ecrevisse" ), - IMPRESSION = SIMP(statut='f',typ='TXM',defaut='NON',into=( 'OUI','NON') ), - INFO = SIMP(statut='f',typ='I',defaut="1",into=(1,2) ), - -# DONNEES POUR STAT_NON_LINE ET THER_NON_LINE -# ******************************************* - - # copie de stat_non_line.capy des options des mots cles qui nous interessent - - # donnees communes - - CHAM_MATER =SIMP(statut='o',typ=cham_mater), - CARA_ELEM =SIMP(statut='f',typ=cara_elem), - - # donnees specifiques a stat_non_line - - EXCIT_MECA =FACT(statut='o',max='**', - CHARGE =SIMP(statut='o',typ=(char_meca,char_cine_meca)), - FONC_MULT =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - TYPE_CHARGE =SIMP(statut='f',typ='TXM',defaut="FIXE_CSTE", - into=("FIXE_CSTE","SUIV","DIDI")), - ), - - CONTACT = SIMP(statut='o',typ=char_contact), - - COMPORTEMENT = C_COMPORTEMENT(), - NEWTON = FACT(statut='d', - REAC_INCR =SIMP(statut='f',typ='I',defaut= 1 ), - PREDICTION =SIMP(statut='f',typ='TXM',into=("DEPL_CALCULE","TANGENTE","ELASTIQUE","EXTRAPOL") ), - MATRICE =SIMP(statut='f',typ='TXM',defaut="TANGENTE",into=("TANGENTE","ELASTIQUE") ), - PAS_MINI_ELAS =SIMP(statut='f',typ='R',defaut=0.0E+0), - REAC_ITER =SIMP(statut='f',typ='I',defaut=0), - REAC_ITER_ELAS =SIMP(statut='f',typ='I',defaut=0), - EVOL_NOLI =SIMP(statut='f',typ=evol_noli), - ), - CONVERGENCE = FACT(statut='d',regles=(PRESENT_ABSENT('RESI_REFE_RELA','RESI_GLOB_MAXI','RESI_GLOB_RELA'),), - b_refe_rela =BLOC(condition = "RESI_REFE_RELA != None", - regles=(AU_MOINS_UN('SIGM_REFE','EPSI_REFE','FLUX_THER_REFE', - 'FLUX_HYD1_REFE','FLUX_HYD2_REFE','VARI_REFE'), - ), - SIGM_REFE =SIMP(statut='f',typ='R'), - EPSI_REFE =SIMP(statut='f',typ='R'), - FLUX_THER_REFE =SIMP(statut='f',typ='R'), - FLUX_HYD1_REFE =SIMP(statut='f',typ='R'), - FLUX_HYD2_REFE =SIMP(statut='f',typ='R'), - VARI_REFE =SIMP(statut='f',typ='R'), - ), - RESI_REFE_RELA =SIMP(statut='f',typ='R'), - RESI_GLOB_MAXI =SIMP(statut='f',typ='R'), - RESI_GLOB_RELA =SIMP(statut='f',typ='R'), - ITER_GLOB_MAXI =SIMP(statut='f',typ='I',defaut=10), - ITER_GLOB_ELAS =SIMP(statut='f',typ='I',defaut=25), - ARRET =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON")), - ), - - ENERGIE =FACT(statut='f',max=1, - CALCUL =SIMP(statut='f',typ='TXM',into=("OUI",),defaut="OUI",), - ), - - # donnees specifiques a ther_lineaire - - EXCIT_THER =FACT(statut='o',max='**', - CHARGE =SIMP(statut='o',typ=(char_ther,char_cine_ther)), - FONC_MULT =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - ), - PARM_THETA =SIMP(statut='f',typ='R',defaut= 0.57), - -) - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2013 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: mathieu.corus at edf.fr - -MACR_ELEM_DYNA=OPER(nom="MACR_ELEM_DYNA",op= 81,sd_prod=macr_elem_dyna, - fr="Definition d'un macro element pour analyse modale ou harmonique par sous structuration dynamique", - reentrant='n', - UIinfo={"groupes":("Matrices et vecteurs","Dynamique",)}, - regles=( - # AMOR_REDUIT et MATR_AMOR sont redondants - EXCLUS('MATR_AMOR','AMOR_REDUIT' ), - - # Si MODELE_MESURE, on ne rentre pas de donnees pour le calcul - EXCLUS('MODELE_MESURE','MATR_RIGI' ), - EXCLUS('MODELE_MESURE','MATR_MASS' ), - EXCLUS('MODELE_MESURE','MATR_AMOR' ), - EXCLUS('MODELE_MESURE','AMOR_REDUIT' ), - EXCLUS('MODELE_MESURE','MATR_IMPE' ), - EXCLUS('MODELE_MESURE','MATR_IMPE_RIGI' ), - EXCLUS('MODELE_MESURE','MATR_IMPE_MASS' ), - EXCLUS('MODELE_MESURE','MATR_IMPE_AMOR' ), - - PRESENT_ABSENT('MATR_IMPE','MATR_IMPE_RIGI'), - PRESENT_ABSENT('MATR_IMPE','MATR_IMPE_MASS'), - PRESENT_ABSENT('MATR_IMPE','MATR_IMPE_AMOR'), - PRESENT_ABSENT('MATR_IMPE','MATR_RIGI','MATR_MASS'), - PRESENT_ABSENT('MATR_IMPE_MASS','MATR_RIGI','MATR_MASS'), - PRESENT_ABSENT('MATR_IMPE_RIGI','MATR_RIGI','MATR_MASS'), - PRESENT_ABSENT('MATR_IMPE_AMOR','MATR_RIGI','MATR_MASS'),), - BASE_MODALE =SIMP(statut='o',typ=mode_meca ), - MATR_RIGI =SIMP(statut='f',typ=(matr_asse_depl_r,matr_asse_depl_c),), - MATR_MASS =SIMP(statut='f',typ=matr_asse_depl_r ), - MATR_AMOR =SIMP(statut='f',typ=matr_asse_depl_r ), - AMOR_REDUIT =SIMP(statut='f',typ='R',max='**'), - SANS_GROUP_NO =SIMP(statut='f',typ=grno ), - MATR_IMPE =SIMP(statut='f',typ=matr_asse_gene_c ), - MATR_IMPE_RIGI =SIMP(statut='f',typ=matr_asse_gene_c ), - MATR_IMPE_MASS =SIMP(statut='f',typ=matr_asse_gene_c ), - MATR_IMPE_AMOR =SIMP(statut='f',typ=matr_asse_gene_c ), - MODELE_MESURE =FACT(statut='f', - FREQ =SIMP(statut='o',typ='R',max='**' ), - MASS_GENE =SIMP(statut='o',typ='R',max='**' ), - AMOR_REDUIT =SIMP(statut='f',typ='R',max='**' ), - ), - b_matr_impe =BLOC(condition = "MATR_IMPE != None", - FREQ_EXTR =SIMP(statut='o',typ='R' ), - AMOR_SOL =SIMP(statut='f',typ='R',defaut=0.E+0 ), - MATR_IMPE_INIT =SIMP(statut='f',typ=matr_asse_gene_c ), - ), - CAS_CHARGE =FACT(statut='f',max='**', - NOM_CAS =SIMP(statut='o',typ='TXM'), - VECT_ASSE_GENE =SIMP(statut='o',typ=vect_asse_gene ), - ), -) ; - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: jacques.pellet at edf.fr -MACR_ELEM_STAT=OPER(nom="MACR_ELEM_STAT",op=86,sd_prod=macr_elem_stat,reentrant='f', - UIinfo={"groupes":("Matrices et vecteurs",)}, - fr="Définition d'un macro-élément pour l'analyse statique par sous-structuration", - regles=(AU_MOINS_UN('DEFINITION','RIGI_MECA','MASS_MECA','CAS_CHARGE'), - ENSEMBLE('DEFINITION','EXTERIEUR'),), - DEFINITION =FACT(statut='f', - regles=(PRESENT_PRESENT('PROJ_MESU','MODE_MESURE'),), - MODELE =SIMP(statut='o',typ=modele_sdaster), - CHAM_MATER =SIMP(statut='f',typ=cham_mater), - CARA_ELEM =SIMP(statut='f',typ=cara_elem), - CHAR_MACR_ELEM =SIMP(statut='f',typ=char_meca), - INST =SIMP(statut='f',typ='R',defaut=0.0E+0 ), - NMAX_CAS =SIMP(statut='f',typ='I',defaut=10), - NMAX_CHAR =SIMP(statut='f',typ='I',defaut=10), - PROJ_MESU =SIMP(statut='f',typ=(mode_gene,tran_gene,harm_gene),max=1), -# MODE_MESURE =SIMP(statut='f',typ=( mode_meca,base_modale) ), - MODE_MESURE =SIMP(statut='f',typ= mode_meca ), - ), - EXTERIEUR =FACT(statut='f', - regles=(AU_MOINS_UN('NOEUD','GROUP_NO'),), - NOEUD =SIMP(statut='f',typ=no ,validators=NoRepeat(),max='**'), - GROUP_NO =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'), - ), - RIGI_MECA =FACT(statut='f', - ), - MASS_MECA =FACT(statut='f', - ), - AMOR_MECA =FACT(statut='f', - ), - CAS_CHARGE =FACT(statut='f',max='**', - NOM_CAS =SIMP(statut='o',typ='TXM'), - SUIV =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON")), - CHARGE =SIMP(statut='f',typ=char_meca,validators=NoRepeat(),max='**'), - INST =SIMP(statut='f',typ='R',defaut=0.E+0), - ), - -) ; - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2013 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: gerald.nicolas at edf.fr -# -MACR_INFO_MAIL=MACRO(nom="MACR_INFO_MAIL", - op=OPS('Macro.macr_adap_mail_ops.macr_adap_mail_ops'), - docu="U7.03.02",UIinfo={"groupes":("Maillage",)}, - fr="Donner des informations sur un maillage.", - ang="To give information about a mesh.", -# -# 1. Le niveau d'information -# - INFO = SIMP(statut='f',typ='I',defaut=1,into=(1,2,3,4)), -# -# 2. Le nom du maillage a analyser -# - MAILLAGE = SIMP(statut='o',typ=maillage_sdaster, - fr="Maillage à analyser.", - ang="Mesh to be checked." ), -# -# 3. Suivi d'une frontiere -# - MAILLAGE_FRONTIERE = SIMP(statut='f',typ=maillage_sdaster, - fr="Maillage de la frontiere à suivre", - ang="Boundary mesh" ), -# - b_frontiere = BLOC( condition = " MAILLAGE_FRONTIERE != None " , - fr="Information complémentaire sur la frontière", - ang="Further information about boundary", -# - GROUP_MA_FRONT = SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**', - fr="Groupes de mailles définissant la frontière", - ang="Mesh groups which define the boundary" ), -# - ) , -# -# 4. Les options ; par defaut, on controle tout, sauf l'interpénétration -# 4.1. Nombre de noeuds et mailles -# - NOMBRE = SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI",), - fr="Nombre de noeuds et de mailles du maillage", - ang="Number of nodes and meshes in the mesh" ), -# -# 4.2. Determination de la qualite des mailles du maillage -# - QUALITE = SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI",), - fr="Qualité du maillage", - ang="Quality of the mesh" ), -# -# 4.3. Connexite du maillage -# - CONNEXITE = SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI",), - fr="Connexité du maillage.", - ang="Connexity of the mesh." ), -# -# 4.4. Taille des sous-domaines du maillage -# - TAILLE = SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI",), - fr="Tailles des sous-domaines du maillage.", - ang="Sizes of mesh sub-domains." ), -# -# 4.5. Controle de la non-interpénétration des mailles -# - INTERPENETRATION=SIMP(statut='f',typ='TXM',into=("OUI",), - fr="Controle de la non interpénétration des mailles.", - ang="Overlapping checking." ), -# -# 4.6. Propriétés du maillage de calcul -# - PROP_CALCUL = SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI",), - fr="Propriétés du maillage de calcul.", - ang="Properties of the calculation mesh." ), -# -# 4.7. Determination des diametres des mailles du maillage -# - DIAMETRE = SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI",), - fr="Diamètre du maillage", - ang="Diameters of the mesh" ), -# -# 5. Les options avancées -# 5.1. Langue des messages issus de HOMARD -# - LANGUE = SIMP(statut='f',typ='TXM',defaut="FRANCAIS", - into=("FRANCAIS","FRENCH","ANGLAIS","ENGLISH",), - fr="Langue des messages issus de HOMARD.", - ang="Language for HOMARD messages." ), -# -# 5.2. Gestion des mailles acceptees dans le maillage initial -# "HOMARD" : exclusivement les mailles pouvant etre decoupees (defaut) -# "IGNORE_PYRA" : elles sont ignorées -# - ELEMENTS_ACCEPTES = SIMP(statut='f',typ='TXM',defaut="HOMARD",into=("HOMARD", "IGNORE_PYRA"), - fr="Acceptation des mailles dans le maillage initial", - ang="Elements in the very first mesh" ), -# -# 5.3. Version de HOMARD -# - VERSION_HOMARD = SIMP(statut='f',typ='TXM',defaut="V10_6", - into=("V10_6", "V10_N", "V10_N_PERSO"), - fr="Version de HOMARD", - ang="HOMARD release"), -# -# 5.4. Exécutable pilotant HOMARD -# - LOGICIEL = SIMP(statut='f',typ='TXM', - fr="Logiciel pilotant HOMARD", - ang="HOMARD software"), -# -# 5.5. Unite logique d'un fichier à ajouter a HOMARD.Configuration -# - b_unite = BLOC( condition = " (VERSION_HOMARD == 'V10_N') or \ - (VERSION_HOMARD == 'V10_N_PERSO') " , - fr="Fichier supplementaire.", - ang="Additional file.", -# - UNITE = SIMP(statut='f',typ='I', - fr="Unite logique a ajouter a HOMARD.Configuration", - ang="Additional file to HOMARD.Configuration" ), -# - ) , -# -) ; - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2012 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: josselin.delmas at edf.fr - - -MACR_LIGN_COUPE=MACRO(nom="MACR_LIGN_COUPE", - op=OPS('Macro.macr_lign_coupe_ops.macr_lign_coupe_ops'), - sd_prod=table_sdaster, - reentrant='n', - UIinfo={"groupes":("Post-traitements","Résultats et champs",)}, - fr="Extraction des valeurs d'un résultat dans une ou plusieurs tables sur " \ - "des lignes de coupe définies par deux points et un intervalle", - regles=(UN_PARMI("RESULTAT","CHAM_GD"),), - - RESULTAT =SIMP(statut='f',typ=(evol_elas,evol_noli,evol_ther,mode_meca) ), - CHAM_GD =SIMP(statut='f',typ=(cham_gd_sdaster)), - - b_extrac =BLOC(condition = "RESULTAT != None",fr="extraction des résultats", - regles=(EXCLUS('NUME_ORDRE','NUME_MODE','LIST_ORDRE','INST','LIST_INST',), ), - NUME_ORDRE =SIMP(statut='f',typ='I',validators=NoRepeat(),max='**'), - NUME_MODE =SIMP(statut='f',typ='I',validators=NoRepeat(),max='**'), - LIST_ORDRE =SIMP(statut='f',typ=listis_sdaster), - INST =SIMP(statut='f',typ='R',validators=NoRepeat(),max='**'), - LIST_INST =SIMP(statut='f',typ=listr8_sdaster), - CRITERE =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU",),), - b_prec_rela=BLOC(condition="(CRITERE=='RELATIF')", - PRECISION =SIMP(statut='f',typ='R',defaut= 1.E-6,),), - b_prec_abso=BLOC(condition="(CRITERE=='ABSOLU')", - PRECISION =SIMP(statut='o',typ='R',),), - ), - -# extraction des résultats - b_meca =BLOC(condition = "AsType(RESULTAT) in (evol_elas,evol_noli,mode_meca)",fr="résultat mécanique", - NOM_CHAM =SIMP(statut='f',typ='TXM',validators=NoRepeat(),defaut='SIGM_NOEU',into=C_NOM_CHAM_INTO(),), - ), - b_ther =BLOC(condition = "AsType(RESULTAT) in (evol_ther,)",fr="résultat thermique", - NOM_CHAM =SIMP(statut='f',typ='TXM',validators=NoRepeat(),defaut='TEMP',into=("TEMP", - "FLUX_ELGA","FLUX_ELNO","FLUX_NOEU", - "META_ELNO","META_NOEU", - "DURT_ELNO","DURT_NOEU", - "HYDR_ELNO","HYDR_NOEU", - "DETE_ELNO","DETE_NOEU", - "SOUR_ELGA","COMPORTHER", - "ERTH_ELEM","ERTH_ELNO","ERTH_NOEU",),),), - b_cham =BLOC(condition = "CHAM_GD!=None", - NOM_CHAM =SIMP(statut='f',typ='TXM',validators=NoRepeat(),into=C_NOM_CHAM_INTO(),),), - - UNITE_MAILLAGE =SIMP(statut='f',typ='I',defaut=25), - MODELE =SIMP(statut='f',typ=modele_sdaster ), - - VIS_A_VIS =FACT(statut='f',max='**', - regles=(EXCLUS('GROUP_MA_1','MAILLE_1'),), - GROUP_MA_1 =SIMP(statut='f',typ=grma), - MAILLE_1 =SIMP(statut='f',typ=ma,max='**'),), - - LIGN_COUPE =FACT(statut='o',max='**', - regles=(EXCLUS("NOM_CMP","INVARIANT","ELEM_PRINCIPAUX","RESULTANTE"), - PRESENT_PRESENT("TRAC_DIR","DIRECTION"), - EXCLUS("TRAC_DIR","TRAC_NOR"), - PRESENT_PRESENT("TRAC_DIR","NOM_CMP"), - PRESENT_PRESENT("TRAC_NOR","NOM_CMP"),), - - INTITULE =SIMP(statut='f',typ='TXM',), - TYPE =SIMP(statut='o',typ='TXM',max=1, - into=("GROUP_NO","SEGMENT","ARC","GROUP_MA"),defaut="SEGMENT"), - REPERE =SIMP(statut='f',typ='TXM',defaut="GLOBAL", - into=("GLOBAL","LOCAL","POLAIRE","UTILISATEUR","CYLINDRIQUE"),), - OPERATION =SIMP(statut='f',typ='TXM',into=("EXTRACTION","MOYENNE",),defaut="EXTRACTION",), - - NOM_CMP =SIMP(statut='f',typ='TXM',max='**'), - INVARIANT =SIMP(statut='f',typ='TXM',into=("OUI",),), - ELEM_PRINCIPAUX =SIMP(statut='f',typ='TXM',into=("OUI",),), - RESULTANTE =SIMP(statut='f',typ='TXM',max='**'), - TRAC_NOR =SIMP(statut='f',typ='TXM',into=("OUI",)), - TRAC_DIR =SIMP(statut='f',typ='TXM',into=("OUI",)), - DIRECTION =SIMP(statut='f',typ='R',max='**'), - - - b_local =BLOC(condition = "REPERE=='LOCAL' ", - VECT_Y =SIMP(statut='f',typ='R',min=2,max=3),), - - b_utili =BLOC(condition = "REPERE=='UTILISATEUR'", - ANGL_NAUT =SIMP(statut='o',typ='R',min=3,max=3),), - - b_grno =BLOC(condition = "TYPE=='GROUP_NO'", - GROUP_NO =SIMP(statut='o',typ=grno, max=1),), - - b_grma =BLOC(condition = "TYPE=='GROUP_MA'", - regles=(EXCLUS('NOEUD_ORIG','GROUP_NO_ORIG'), - EXCLUS('NOEUD_EXTR','GROUP_NO_EXTR'),), - GROUP_MA =SIMP(statut='o',typ=grma, max=1), - MAILLAGE =SIMP(statut='o',typ=maillage_sdaster), - # si le groupe de mailles forme une ligne ouverte, on peut choisir le sens de parcours en choissant l'origine: - # si le groupe de mailles forme une ligne fermée, il FAUT choisir l'origine et l'extrémité (= origine): - NOEUD_ORIG =SIMP(statut='f',typ=no), - GROUP_NO_ORIG =SIMP(statut='f',typ=grno), - NOEUD_EXTR =SIMP(statut='f',typ=no), - GROUP_NO_EXTR =SIMP(statut='f',typ=grno), - # si le groupe de mailles forme une ligne fermée, on peut choisir le sens de parcours - VECT_ORIE =SIMP(statut='f',typ='R',max=3), # utilisé seulement si NOEUD_ORIG=NOEUD_EXTR - ), - - b_segment =BLOC(condition = "TYPE=='SEGMENT'", - NB_POINTS =SIMP(statut='o',typ='I',max=1), - COOR_ORIG =SIMP(statut='o',typ='R',min=2,max=3), - COOR_EXTR =SIMP(statut='o',typ='R',min=2,max=3),), - - b_arc =BLOC(condition = "TYPE=='ARC'", - NB_POINTS =SIMP(statut='o',typ='I',max=1), - COOR_ORIG =SIMP(statut='o',typ='R',min=2,max=3), - CENTRE =SIMP(statut='o',typ='R',min=2,max=3), - ANGLE =SIMP(statut='o',typ='R',max=1), - DNOR =SIMP(statut='f',typ='R',min=2,max=3),), - - b_cylind =BLOC(condition = ("REPERE=='CYLINDRIQUE' and TYPE!='ARC'"), - ORIGINE =SIMP(statut='f',typ='R',min=2,max=3), - AXE_Z =SIMP(statut='f',typ='R',min=3,max=3),), - - DISTANCE_MAX =SIMP(statut='f',typ='R',defaut=0., - fr="Si la distance entre un noeud de la ligne de coupe et le maillage coupé " - +"est > DISTANCE_MAX, ce noeud sera ignoré."), - - ), -) ; - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2013 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: aimery.assire at edf.fr - - -def macr_recal_prod(self,**args ): - return listr8_sdaster - -MACR_RECAL = MACRO(nom="MACR_RECAL", - op=OPS('Macro.macr_recal_ops.macr_recal_ops'), - sd_prod=macr_recal_prod, - UIinfo={"groupes":("Résolution","Résultats et champs",)}, - fr="Réalise le recalage des calculs Aster sur des résultats expérimentaux" \ - " ou sur d'autres résultats de calculs", - regles=(UN_PARMI('PARA_OPTI','LIST_PARA'), - PRESENT_PRESENT('PARA_OPTI','COURBE'), - PRESENT_PRESENT('LIST_PARA','RESU_EXP'), - PRESENT_PRESENT('LIST_PARA','RESU_CALC'), - EXCLUS('LIST_POIDS','COURBE'),), - - UNITE_ESCL =SIMP(statut='o',typ='I'), - RESU_EXP =SIMP(statut='f',typ=not_checked,max='**'), - COURBE =FACT(statut='f',max='**', - FONC_EXP =SIMP(statut='o',typ=(fonction_sdaster),), - NOM_FONC_CALC =SIMP(statut='o',typ='TXM',), - PARA_X =SIMP(statut='o',typ='TXM',), - PARA_Y =SIMP(statut='o',typ='TXM',), - POIDS =SIMP(statut='f',typ='R',), - ), - RESU_CALC =SIMP(statut='f',typ=not_checked,max='**'), - LIST_PARA =SIMP(statut='f',typ=not_checked,max='**'), - PARA_OPTI =FACT(statut='f',max='**', - NOM_PARA = SIMP(statut='o',typ='TXM'), - VALE_INI = SIMP(statut='o',typ='R'), - VALE_MIN = SIMP(statut='o',typ='R'), - VALE_MAX = SIMP(statut='o',typ='R'), - ), - LIST_POIDS =SIMP(statut='f',typ=not_checked,max='**'), - - UNITE_RESU =SIMP(statut='f',typ='I',defaut=91), - PARA_DIFF_FINI =SIMP(statut='f',typ='R',defaut=0.00001), - - GRAPHIQUE =FACT(statut='f', - FORMAT =SIMP(statut='f',typ='TXM',defaut='XMGRACE',into=("XMGRACE","GNUPLOT"),), - AFFICHAGE =SIMP(statut='f',typ='TXM',defaut='TOUTE_ITERATION',into=("TOUTE_ITERATION","ITERATION_FINALE"),), - - UNITE =SIMP(statut='f',typ='I',val_min=10,val_max=90,defaut=29, - fr="Unité logique définissant le fichier (fort.N) dans lequel on écrit"), - b_pilote = BLOC(condition = "FORMAT == 'XMGRACE'", fr="Mots-clés propres à XMGRACE", - PILOTE =SIMP(statut='f',typ='TXM',defaut='', - into=('','POSTSCRIPT','EPS','MIF','SVG','PNM','PNG','JPEG','PDF','INTERACTIF'), - fr="Pilote de sortie, PNG/JPEG/PDF ne sont pas disponibles sur toutes les installations de xmgrace"), - ), - ), - - - # Methodes d'optimisation - # ----------------------- - METHODE =SIMP(statut='f',typ='TXM',defaut='LEVENBERG',into=("LEVENBERG", "FMIN", "FMINBFGS", "FMINNCG", - "GENETIQUE","HYBRIDE")), - - b_genetique_options=BLOC(condition = "METHODE == 'GENETIQUE' or METHODE == 'HYBRIDE'" , - NB_PARENTS =SIMP(statut='f',typ='I',defaut=10), - NB_FILS =SIMP(statut='f',typ='I',defaut=5), - ECART_TYPE =SIMP(statut='f',typ='R',defaut=1.), - GRAINE =SIMP(statut='f',typ='I'), - ITER_ALGO_GENE =SIMP(statut='f',typ='I',defaut=10), - RESI_ALGO_GENE =SIMP(statut='f',typ='R',defaut=1.E-3), - ), - - - # Criteres d'arret globaux - # ------------------------- - ITER_MAXI =SIMP(statut='f',typ='I',defaut=10, fr="Nombre maximum d'iterations d'optimisation"), - ITER_FONC_MAXI =SIMP(statut='f',typ='I',defaut=1000, fr="Nombre maximum d'evaluations de la focntionnelle"), - RESI_GLOB_RELA =SIMP(statut='f',typ='R',defaut=1.E-3, fr="Critere d'arret sur la valeur du residu"), - TOLE_PARA =SIMP(statut='f',typ='R',defaut=1.E-8, fr="Critere d'arret sur la valeur des parametres"), - TOLE_FONC =SIMP(statut='f',typ='R',defaut=1.E-8, fr="Critere d'arret sur la valeur de la fonctionnelle"), - - - # Calculs des gradients - # --------------------- - b_gradient =BLOC(condition = "METHODE == 'FMINBFGS' or METHODE == 'FMINNCG'" , - GRADIENT =SIMP(statut='f',typ='TXM',defaut='NON_CALCULE', into=("NON_CALCULE", "NORMAL", "ADIMENSIONNE" )), - ), - - b_gradient_levenberg =BLOC(condition = "METHODE == 'LEVENBERG'" , - GRADIENT =SIMP(statut='f',typ='TXM',defaut='NORMAL', into=( "NORMAL", "ADIMENSIONNE" )), - ), - - - # Mode d'evaluation de l'esclave - # ------------------------------ - CALCUL_ESCLAVE =FACT(statut='d', -# regles=(PRESENT_PRESENT('MPI_NBNOEUD','MPI_NBCPU'),), - - LANCEMENT =SIMP(statut='f', typ='TXM', defaut='INCLUSION',into=("DISTRIBUTION","INCLUSION"),), - - b_eval_distrib =BLOC(condition = "LANCEMENT == 'DISTRIBUTION'", - UNITE_SUIVI =SIMP(statut='f', typ='I',val_min=10,val_max=99,defaut=29, - fr="Affichage de l'output et/ou error des jobs esclaves dans ce fichier"), - MODE =SIMP(statut='f', typ='TXM', into=("INTERACTIF","BATCH"),), - MEMOIRE =SIMP(statut='f', typ='I', fr="Memoire demandee pour les calculs esclaves (Mo)"), - TEMPS =SIMP(statut='f', typ='I', fr="Temps demandee pour les calculs esclaves (secondes)"), - MPI_NBCPU =SIMP(statut='f', typ='I', val_min=1, fr="Nombre de cpu pour les calculs MPI"), - MPI_NBNOEUD =SIMP(statut='f', typ='I', fr="Nombre de noeuds pour les calculs MPI"), - CLASSE =SIMP(statut='f', typ='TXM', fr="Classe demandee pour les calculs en batch"), - NMAX_SIMULT =SIMP(statut='f', typ='I', - fr="Nombre de calculs esclaves lances en parallele en mode distribution (non precise = automatique)"), - ), - ), - - DYNAMIQUE =FACT(statut='f', - MODE_EXP =SIMP(statut='o',typ='TXM'), - MODE_CALC =SIMP(statut='o',typ='TXM'), - APPARIEMENT_MANUEL =SIMP(statut='f',typ='TXM',defaut='NON',into=("OUI","NON")), - ), - - INFO =SIMP(statut='f',typ='I',defaut=1, into=( 1, 2 ) ), -); - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2012 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: francois.voldoire at edf.fr - - -MACR_SPECTRE=MACRO(nom="MACR_SPECTRE", - op=OPS('Macro.macr_spectre_ops.macr_spectre_ops'), - sd_prod=table_sdaster, - reentrant='n', - UIinfo={"groupes":("Post-traitements","Outils-métier",)}, - fr="Calcul de spectre, post-traitement de séisme", - MAILLAGE =SIMP(statut='o',typ=maillage_sdaster,), - PLANCHER =FACT(statut='o',max='**', - regles=(AU_MOINS_UN('NOEUD','GROUP_NO' ),), - NOM =SIMP(statut='o',typ='TXM',), - GROUP_NO =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'), - NOEUD =SIMP(statut='f',typ=no ,validators=NoRepeat(),max='**'), ), - NOM_CHAM =SIMP(statut='o',typ='TXM' ,into=('ACCE','DEPL')), - CALCUL =SIMP(statut='o',typ='TXM' ,into=('ABSOLU','RELATIF'),position='global'), - b_acce =BLOC( condition = "NOM_CHAM=='ACCE'", - regles=(UN_PARMI('LIST_FREQ','FREQ'),), - AMOR_SPEC =SIMP(statut='o',typ='R',max='**'), - LIST_INST =SIMP(statut='f',typ=listr8_sdaster ), - LIST_FREQ =SIMP(statut='f',typ=listr8_sdaster ), - FREQ =SIMP(statut='f',typ='R',max='**'), - NORME =SIMP(statut='o',typ='R'), - RESU =FACT(statut='o',max='**', - regles=(UN_PARMI('RESU_GENE','RESULTAT','TABLE'),), - TABLE =SIMP(statut='f',typ=table_sdaster), - RESU_GENE =SIMP(statut='f',typ=tran_gene), - RESULTAT =SIMP(statut='f',typ=(dyna_trans,evol_noli)), - b_calc =BLOC( condition = "CALCUL=='RELATIF'", - ACCE_X =SIMP(statut='o',typ=fonction_sdaster), - ACCE_Y =SIMP(statut='o',typ=fonction_sdaster), - ACCE_Z =SIMP(statut='o',typ=fonction_sdaster),), ), - IMPRESSION =FACT(statut='f', - TRI =SIMP(statut='f',typ='TXM',defaut='AMOR_SPEC',into=("AMOR_SPEC","DIRECTION",),), - FORMAT =SIMP(statut='f',typ='TXM',defaut='TABLEAU',into=("TABLEAU","XMGRACE",),), - UNITE =SIMP(statut='f',typ='I',val_min=10,val_max=90,defaut=29, - fr="Unité logique définissant le fichier (fort.N) dans lequel on écrit"), - b_pilote = BLOC(condition = "FORMAT == 'XMGRACE'", - PILOTE =SIMP(statut='f',typ='TXM',defaut='', - into=('','POSTSCRIPT','EPS','MIF','SVG','PNM','PNG','JPEG','PDF','INTERACTIF'),),), - TOUT =SIMP(statut='f',typ='TXM',defaut='NON',into=("OUI","NON",),), - ), - ), - b_depl =BLOC( condition = "NOM_CHAM=='DEPL'", - LIST_INST =SIMP(statut='f',typ=listr8_sdaster), - RESU =FACT(statut='o',max=3, - regles=(UN_PARMI('RESU_GENE','RESULTAT','TABLE'),), - TABLE =SIMP(statut='f',typ=table_sdaster), - RESU_GENE =SIMP(statut='f',typ=tran_gene), - RESULTAT =SIMP(statut='f',typ=(dyna_trans,evol_noli)), - b_calc =BLOC( condition = "CALCUL=='ABSOLU'", - DEPL_X =SIMP(statut='o',typ=fonction_sdaster), - DEPL_Y =SIMP(statut='o',typ=fonction_sdaster), - DEPL_Z =SIMP(statut='o',typ=fonction_sdaster),),), - ), -) - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2012 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: xavier.desroches at edf.fr - - -def macro_elas_mult_prod(self,NUME_DDL,CAS_CHARGE,**args ): - if NUME_DDL is not None and NUME_DDL.isTypCO(): - self.typeSDProd(NUME_DDL,nume_ddl_sdaster) - if CAS_CHARGE[0]['NOM_CAS'] != None : return mult_elas - if CAS_CHARGE[0]['MODE_FOURIER'] != None : return fourier_elas - raise AsException("type de concept resultat non prevu") - -MACRO_ELAS_MULT=MACRO(nom="MACRO_ELAS_MULT", - op=OPS('Macro.macro_elas_mult_ops.macro_elas_mult_ops'), - sd_prod=macro_elas_mult_prod, - reentrant='f', - UIinfo={"groupes":("Résolution",)}, - fr="Calculer les réponses statiques linéaires pour différents cas " \ - "de charges ou modes de Fourier", - regles=(UN_PARMI('CHAR_MECA_GLOBAL','LIAISON_DISCRET', ),), - MODELE =SIMP(statut='o',typ=modele_sdaster), - CHAM_MATER =SIMP(statut='f',typ=cham_mater), - CARA_ELEM =SIMP(statut='f',typ=cara_elem), - NUME_DDL =SIMP(statut='f',typ=(nume_ddl_sdaster,CO)), - CHAR_MECA_GLOBAL=SIMP(statut='f',typ=(char_meca),validators=NoRepeat(),max='**'), - LIAISON_DISCRET =SIMP(statut='f',typ='TXM',into=("OUI",)), - CAS_CHARGE =FACT(statut='o',max='**', - regles=(UN_PARMI('NOM_CAS','MODE_FOURIER'), - UN_PARMI('CHAR_MECA','VECT_ASSE'),), - NOM_CAS =SIMP(statut='f',typ='TXM' ), - MODE_FOURIER =SIMP(statut='f',typ='I' ), - TYPE_MODE =SIMP(statut='f',typ='TXM',defaut="SYME",into=("SYME","ANTI","TOUS") ), - CHAR_MECA =SIMP(statut='f',typ=(char_meca),validators=NoRepeat(),max='**'), - OPTION =SIMP(statut='f',typ='TXM',into=("SIEF_ELGA","SANS"),defaut="SIEF_ELGA",max=1, - fr="Contraintes aux points de Gauss.",), - SOUS_TITRE =SIMP(statut='f',typ='TXM',max='**'), - VECT_ASSE =SIMP(statut='f',typ=cham_no_sdaster), - ), - SOLVEUR =FACT(statut='d', - METHODE =SIMP(statut='f',typ='TXM',defaut="MULT_FRONT",into=("MULT_FRONT","LDLT") ), - b_mult_front = BLOC ( condition = "METHODE == 'MULT_FRONT' ", - fr="Paramètres de la méthode multi frontale", - RENUM =SIMP(statut='f',typ='TXM',defaut="METIS",into=("MD","MDA","METIS") ), - ), - b_ldlt =BLOC(condition = "METHODE == 'LDLT' ",fr="Paramètres de la méthode LDLT", - RENUM =SIMP(statut='f',typ='TXM',defaut="RCMK",into=("RCMK","SANS") ), - ), - b_ldlt_mult =BLOC(condition = "METHODE == 'LDLT' or METHODE == 'MULT_FRONT' ", - fr="Paramètres relatifs à la non inversibilité de la matrice à factorise", - NPREC =SIMP(statut='f',typ='I',defaut= 8 ), - STOP_SINGULIER =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON") ), - ), - ), - INFO =SIMP(statut='f',typ='I',defaut= 1,into=(1,2)), - TITRE =SIMP(statut='f',typ='TXM',max='**'), -) ; - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2012 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: albert.alarcon at edf.fr - - -def macro_expans_prod(self, MODELE_MESURE, RESU_NX, RESU_EX, RESU_ET, RESU_RD, **args): - RESU_EXP = MODELE_MESURE['MESURE'] - self.typeSDProd(RESU_NX, mode_meca) - for res in (RESU_EX, RESU_ET, RESU_RD): - if res is not None and res.isTypCO(): - if AsType(RESU_EXP) == mode_meca: - self.typeSDProd(res, mode_meca) - else: - self.typeSDProd(res, dyna_harmo) - return None - -MACRO_EXPANS=MACRO(nom="MACRO_EXPANS", - op=OPS('Macro.macro_expans_ops.macro_expans_ops'), - sd_prod=macro_expans_prod, - reentrant='n', - UIinfo={"groupes":("Outils-métier","Dynamique",)}, - fr="Outil d'expansion de resultats exprimentaux sur une base definie sur un modele numerique", - MODELE_CALCUL = FACT(statut='o', - MODELE = SIMP(statut='o',typ=(modele_sdaster) ), - BASE = SIMP(statut='o',typ=(mode_meca,) ), - NUME_MODE = SIMP(statut='f',typ='I',validators=NoRepeat(),max='**',defaut=0), - NUME_ORDRE = SIMP(statut='f',typ='I',validators=NoRepeat(),max='**',defaut=0), - - ), - MODELE_MESURE = FACT(statut='o', - MODELE = SIMP(statut='o',typ=(modele_sdaster) ), - MESURE = SIMP(statut='o',typ=(dyna_trans,dyna_harmo,mode_meca,mode_meca_c,) ), - NOM_CHAM = SIMP(statut='f',typ='TXM',defaut="DEPL", - into=("DEPL","VITE","ACCE","SIEF_NOEU","EPSI_NOEU",) ), - NUME_MODE = SIMP(statut='f',typ='I',validators=NoRepeat(),max='**',defaut=0), - NUME_ORDRE = SIMP(statut='f',typ='I',validators=NoRepeat(),max='**',defaut=0), - - ), - NUME_DDL = SIMP(statut='f',typ=(nume_ddl_sdaster)), - RESU_NX = SIMP(statut='f',typ=(mode_meca,dyna_harmo, CO)), - RESU_EX = SIMP(statut='f',typ=(mode_meca,dyna_harmo, CO)), - RESU_ET = SIMP(statut='f',typ=(mode_meca,dyna_harmo, CO)), - RESU_RD = SIMP(statut='f',typ=(mode_meca,dyna_harmo, CO)), - RESOLUTION = FACT(statut='f', - METHODE =SIMP(statut='f',typ='TXM',defaut="LU",into=("LU","SVD",) ), - b_svd =BLOC(condition="METHODE=='SVD'", - EPS=SIMP(statut='f',typ='R',defaut=0. ), - ), - REGUL =SIMP(statut='f',typ='TXM',defaut="NON",into=("NON","NORM_MIN","TIK_RELA",) ), - b_regul =BLOC(condition="REGUL!='NON'", - regles=(PRESENT_ABSENT('COEF_PONDER','COEF_PONDER_F', ),), - COEF_PONDER =SIMP(statut='f',typ='R',defaut=0. ,max='**' ), - COEF_PONDER_F =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule),max='**' ), - ), - ), - ) - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2011 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: nicolas.greffet at edf.fr - - -def macro_matr_ajou_prod(self,MATR_AMOR_AJOU,MATR_MASS_AJOU,MATR_RIGI_AJOU,FORC_AJOU,**args): - self.typeSDProd(MATR_AMOR_AJOU,matr_asse_gene_r) - self.typeSDProd(MATR_MASS_AJOU,matr_asse_gene_r) - self.typeSDProd(MATR_RIGI_AJOU,matr_asse_gene_r) - if FORC_AJOU != None: - for m in FORC_AJOU: - self.typeSDProd(m['VECTEUR'],vect_asse_gene) - - return None - -MACRO_MATR_AJOU=MACRO(nom="MACRO_MATR_AJOU", - op=OPS('Macro.macro_matr_ajou_ops.macro_matr_ajou_ops'), - sd_prod=macro_matr_ajou_prod, - UIinfo={"groupes":("Résolution","Matrices et vecteurs",)}, - fr="Calculer de facon plus condensée qu'avec CALC_MATR_AJOU des " \ - "matrices de masse, d'amortissement ou de rigidité ajoutés", - regles=(AU_MOINS_UN('MODE_MECA','DEPL_IMPO','MODELE_GENE'), - AU_MOINS_UN('MATR_MASS_AJOU','MATR_AMOR_AJOU','MATR_RIGI_AJOU'), - EXCLUS('MODE_MECA','DEPL_IMPO','MODELE_GENE'), - EXCLUS('MONO_APPUI','MODE_STAT',), - ), - MAILLAGE =SIMP(statut='o',typ=maillage_sdaster), - GROUP_MA_FLUIDE =SIMP(statut='o',typ=grma), - GROUP_MA_INTERF =SIMP(statut='o',typ=grma), - MODELISATION =SIMP(statut='o',typ='TXM',into=("PLAN","AXIS","3D")), - FLUIDE =FACT(statut='o',max='**', - RHO =SIMP(statut='o',typ='R'), - TOUT =SIMP(statut='f',typ='TXM',into=("OUI",)), - GROUP_MA =SIMP(statut='f',typ=grma), - MAILLE =SIMP(statut='f',typ=ma), - ), - DDL_IMPO =FACT(statut='o',max='**', - regles=(UN_PARMI('NOEUD','GROUP_NO'), - UN_PARMI('PRES_FLUIDE','PRES_SORTIE'),), - NOEUD =SIMP(statut='f',typ=no), - GROUP_NO =SIMP(statut='f',typ=grno), - PRES_FLUIDE =SIMP(statut='f',typ='R'), - PRES_SORTIE =SIMP(statut='f',typ='R'), - ), - ECOULEMENT =FACT(statut='f', - GROUP_MA_1 =SIMP(statut='o',typ=grma), - GROUP_MA_2 =SIMP(statut='o',typ=grma), - VNOR_1 =SIMP(statut='o',typ='R'), - VNOR_2 =SIMP(statut='f',typ='R'), - POTENTIEL =SIMP(statut='f',typ=evol_ther), - ), - MODE_MECA =SIMP(statut='f',typ=mode_meca), - DEPL_IMPO =SIMP(statut='f',typ=cham_no_sdaster), - MODELE_GENE =SIMP(statut='f',typ=modele_gene), - NUME_DDL_GENE =SIMP(statut='f',typ=nume_ddl_gene), - DIST_REFE =SIMP(statut='f',typ='R',defaut= 1.0E-2), - MATR_MASS_AJOU =SIMP(statut='f',typ=CO,), - MATR_RIGI_AJOU =SIMP(statut='f',typ=CO,), - MATR_AMOR_AJOU =SIMP(statut='f',typ=CO,), - MONO_APPUI =SIMP(statut='f',typ='TXM',into=("OUI",),), - MODE_STAT =SIMP(statut='f',typ=mode_meca,), - FORC_AJOU =FACT(statut='f',max='**', - DIRECTION =SIMP(statut='o',typ='R',max=3), - NOEUD =SIMP(statut='f',typ=no ,validators=NoRepeat(),max='**'), - GROUP_NO =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'), - VECTEUR =SIMP(statut='o',typ=CO), - ), -#------------------------------------------------------------------- -# Catalogue commun SOLVEUR - SOLVEUR =C_SOLVEUR('MACRO_MATR_AJOU'), -#------------------------------------------------------------------- - INFO =SIMP(statut='f',typ='I',defaut=1,into=(1,2)), - NOEUD_DOUBLE =SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON")), - AVEC_MODE_STAT =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON")), -) - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2013 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: nicolas.brie at edf.fr - -def macro_mode_meca_prod( self, MATR_RIGI,MATR_MASS, **args) : - if ( AsType(MATR_RIGI) == matr_asse_gene_r ): - if ( AsType(MATR_MASS) == matr_asse_gene_r ): - return mode_gene - else: - raise AsException("Matrices d'entrée de types différents : physique / généralisée.") - - return mode_meca - - -MACRO_MODE_MECA=MACRO(nom="MACRO_MODE_MECA", - op=OPS('Macro.macro_mode_meca_ops.macro_mode_meca_ops'), - sd_prod=macro_mode_meca_prod, - reentrant='n',fr="Lancer une succession de calculs de modes propres réels", - UIinfo={"groupes":("Résolution","Dynamique",)}, - MATR_RIGI =SIMP(statut='o',typ=(matr_asse_depl_r, matr_asse_gene_r) ), - MATR_MASS =SIMP(statut='o',typ=(matr_asse_depl_r, matr_asse_gene_r) ), - INFO =SIMP(statut='f',typ='I',defaut= 1,into=(1,2) ), -# ce mot cle ne devrait il pas etre dans calc_freq - METHODE =SIMP(statut='f',typ='TXM',defaut="SORENSEN", - into=("TRI_DIAG","JACOBI","SORENSEN",) ), - b_tri_diag =BLOC(condition = "METHODE == 'TRI_DIAG'", - PREC_ORTHO =SIMP(statut='f',typ='R',defaut= 1.E-12,val_min=0.E+0 ), - NMAX_ITER_ORTHO =SIMP(statut='f',typ='I',defaut= 5,val_min=0 ), - PREC_LANCZOS =SIMP(statut='f',typ='R',defaut= 1.E-8,val_min=0.E+0 ), - NMAX_ITER_QR =SIMP(statut='f',typ='I',defaut= 30,val_min=0 ), - ), - b_jacobi =BLOC(condition = "METHODE == 'JACOBI'", - PREC_BATHE =SIMP(statut='f',typ='R',defaut= 1.E-10,val_min=0.E+0 ), - NMAX_ITER_BATHE =SIMP(statut='f',typ='I',defaut= 40,val_min=0 ), - PREC_JACOBI =SIMP(statut='f',typ='R',defaut= 1.E-2,val_min=0.E+0 ), - NMAX_ITER_JACOBI=SIMP(statut='f',typ='I',defaut= 12,val_min=0 ), - ), - b_sorensen =BLOC(condition = "METHODE == 'SORENSEN'", - PREC_SOREN =SIMP(statut='f',typ='R',defaut= 0.E+0,val_min=0.E+0 ), - NMAX_ITER_SOREN =SIMP(statut='f',typ='I',defaut= 20,val_min=0 ), - PARA_ORTHO_SOREN=SIMP(statut='f',typ='R',defaut= 0.717), - ), - - OPTION =SIMP(statut='f',typ='TXM',defaut="SANS",into=("MODE_RIGIDE","SANS") ), - - CALC_FREQ =FACT(statut='o', - FREQ =SIMP(statut='o',typ='R',min=2,validators=NoRepeat(),max='**', ), - DIM_SOUS_ESPACE =SIMP(statut='f',typ='I' ), - COEF_DIM_ESPACE =SIMP(statut='f',typ='I' ), - NMAX_ITER_SHIFT =SIMP(statut='f',typ='I',defaut= 3 ), - PREC_SHIFT =SIMP(statut='f',typ='R',defaut= 5.E-2 ), - SEUIL_FREQ =SIMP(statut='f',typ='R' ,defaut= 1.E-2 ), - STOP_BANDE_VIDE =SIMP(statut='f',typ='TXM',defaut="NON" ,into=("OUI","NON") ), - ), - -#------------------------------------------------------------------- -# Catalogue commun SOLVEUR - SOLVEUR =C_SOLVEUR('INFO_MODE'), - NIVEAU_PARALLELISME =SIMP(statut='f',typ='TXM',defaut="COMPLET",into=("PARTIEL","COMPLET") ), -#------------------------------------------------------------------- - - VERI_MODE =FACT(statut='d',min=0, - STOP_ERREUR =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON") ), - SEUIL =SIMP(statut='f',typ='R',defaut= 1.E-6 ), - PREC_SHIFT =SIMP(statut='f',typ='R',defaut= 5.E-3 ), - STURM =SIMP(statut='f',typ='TXM',defaut="GLOBAL",into=("GLOBAL","LOCAL","NON") ), - ), - - b_matr_phys =BLOC( condition = "AsType(MATR_RIGI) == matr_asse_depl_r", - NORM_MODE =FACT(statut='d',max='**', - NORME =SIMP(statut='f',typ='TXM',defaut="TRAN_ROTA", - into=("MASS_GENE","RIGI_GENE","EUCL", - "EUCL_TRAN","TRAN","TRAN_ROTA") ), - INFO =SIMP(statut='f',typ='I',defaut= 1 ,into=(1,2) ), - ), - - FILTRE_MODE =FACT(statut='f', - CRIT_EXTR =SIMP(statut='f',typ='TXM',defaut="MASS_EFFE_UN", - into=("MASS_EFFE_UN","MASS_GENE") ), - SEUIL =SIMP(statut='f',typ='R',defaut= 1.E-3 ), - ), - - IMPRESSION =FACT(statut='d', - TOUT_PARA =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON") ), - CUMUL =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON") ), - CRIT_EXTR =SIMP(statut='f',typ='TXM',defaut="MASS_EFFE_UN", - into=("MASS_EFFE_UN","MASS_GENE",) ), - ), - ), -) ; - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2011 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: j-pierre.lefebvre at edf.fr -# -MAJ_CATA=PROC(nom="MAJ_CATA",op=20, - UIinfo={"groupes":("Gestion du travail",)}, - fr="Compilation des catalogues d'éléments et couverture des calculs élémentaires", - regles=(UN_PARMI('ELEMENT','TYPE_ELEM', ),), - - ELEMENT =FACT(statut='f',), - - UNITE =SIMP(statut='f',typ='I',defaut=8), - TYPE_ELEM =FACT(statut='f',), -); - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2012 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: jacques.pellet at edf.fr -MECA_STATIQUE=OPER(nom="MECA_STATIQUE",op=46,sd_prod=evol_elas, - fr="Résoudre un problème de mécanique statique linéaire",reentrant='f', - UIinfo={"groupes":("Résolution","Mécanique",)}, - regles=(EXCLUS("INST","LIST_INST"), - AU_MOINS_UN('CHAM_MATER','CARA_ELEM',),), - MODELE =SIMP(statut='o',typ=modele_sdaster), - CHAM_MATER =SIMP(statut='f',typ=cham_mater, - fr="le CHAM_MATER est nécessaire, sauf si le modèle ne contient que des éléments discrets (modélisations DIS_XXX)", - ang="CHAM_MATER is compulsory, except if the model contains only discret elements (modelizations DIS_XXX)"), - CARA_ELEM =SIMP(statut='f',typ=cara_elem, - fr="le CARA_ELEM est nécessaire dès que le modèle contient des éléments de structure : coques, poutres, ...", - ang="CARA_ELEM is compulsory as soon as the model contains structural elements : plates, beams, ..."), - TITRE =SIMP(statut='f',typ='TXM',max='**'), - EXCIT =FACT(statut='o',max='**', - CHARGE =SIMP(statut='o',typ=(char_meca,char_cine_meca)), - FONC_MULT =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - TYPE_CHARGE =SIMP(statut='f',typ='TXM',defaut="FIXE",into=("FIXE",) ), - ), - INST =SIMP(statut='f',typ='R',defaut= 0.E+0 ), - LIST_INST =SIMP(statut='f',typ=listr8_sdaster), - INST_FIN =SIMP(statut='f',typ='R'), - OPTION =SIMP(statut='f',typ='TXM',into=("SIEF_ELGA","SANS"),defaut="SIEF_ELGA",max=1, - fr="Seule option : contraintes aux points de Gauss. Utilisez CALC_CHAMP pour les autres options.", - ), - -#------------------------------------------------------------------- -# Catalogue commun SOLVEUR - SOLVEUR =C_SOLVEUR('MECA_STATIQUE'), -#------------------------------------------------------------------- - INFO =SIMP(statut='f',typ='I',defaut=1,into=(1,2) ), -) ; - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: mathieu.corus at edf.fr -MODE_ITER_CYCL=OPER(nom="MODE_ITER_CYCL",op= 80,sd_prod=mode_cycl, - fr="Calcul des modes propres d'une structure à répétitivité cyclique à partir" - +" d'une base de modes propres réels", - reentrant='n', - UIinfo={"groupes":("Résolution","Dynamique",)}, - BASE_MODALE =SIMP(statut='o',typ=mode_meca ), - NB_MODE =SIMP(statut='f',typ='I',defaut= 999 ), - NB_SECTEUR =SIMP(statut='o',typ='I' ), - LIAISON =FACT(statut='o', - DROITE =SIMP(statut='o',typ='TXM' ), - GAUCHE =SIMP(statut='o',typ='TXM' ), - AXE =SIMP(statut='f',typ='TXM' ), - ), - VERI_CYCL =FACT(statut='f', - PRECISION =SIMP(statut='f',typ='R',defaut= 1.E-3 ), - CRITERE =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF",) ), - DIST_REFE =SIMP(statut='f',typ='R' ), - ), - CALCUL =FACT(statut='o', - regles=(UN_PARMI('TOUT_DIAM','NB_DIAM'),), - TOUT_DIAM =SIMP(statut='f',typ='TXM',into=("OUI",) ), - NB_DIAM =SIMP(statut='f',typ='I',validators=NoRepeat(),max='**'), - OPTION =SIMP(statut='f',typ='TXM',defaut="PLUS_PETITE" - ,into=("PLUS_PETITE","CENTRE","BANDE") ), - b_centre =BLOC(condition = "OPTION == 'CENTRE'", - FREQ =SIMP(statut='o',typ='R',), - ), - b_bande =BLOC(condition = "OPTION == 'BANDE'", - FREQ =SIMP(statut='o',typ='R',min=2,validators=NoRepeat(),max=2), - ), -# NMAX_FREQ n a-t-il pas un sens qu avec OPTION CENTRE - NMAX_FREQ =SIMP(statut='f',typ='I',defaut= 10 ), - PREC_SEPARE =SIMP(statut='f',typ='R',defaut= 100. ), - PREC_AJUSTE =SIMP(statut='f',typ='R',defaut= 1.E-6 ), - NMAX_ITER =SIMP(statut='f',typ='I',defaut= 50 ), - ), - INFO =SIMP(statut='f',typ='I',defaut= 1,into=( 1 , 2) ), -) ; - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2013 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# - -def mode_iter_inv_prod(TYPE_RESU,**args ): - if (TYPE_RESU not in ["DYNAMIQUE","MODE_FLAMB","GENERAL"]): - # on retourne un type fictif pour que le plantage aie lieu dans la lecture du catalogue - return ASSD - if TYPE_RESU == "MODE_FLAMB" : return mode_flamb - if TYPE_RESU == "GENERAL" : return mode_flamb - # sinon on est dans le cas 'DYNAMIQUE' donc **args doit contenir les mots-clés - # MATR_RIGI et (faculativement) MATR_AMOR, et on peut y accéder - vale_rigi = args['MATR_RIGI'] - if (vale_rigi== None) : # si MATR_RIGI non renseigné - # on retourne un type fictif pour que le plantage aie lieu dans la lecture du catalogue - return ASSD - vale_amor = args['MATR_AMOR'] - if AsType(vale_amor) == matr_asse_depl_r : return mode_meca_c - if AsType(vale_rigi) == matr_asse_depl_r : return mode_meca - if AsType(vale_rigi) == matr_asse_pres_r : return mode_acou - if AsType(vale_rigi) == matr_asse_gene_r : return mode_gene - raise AsException("type de concept resultat non prevu") - -MODE_ITER_INV=OPER(nom="MODE_ITER_INV",op= 44,sd_prod=mode_iter_inv_prod - ,fr="Calcul des modes propres par itérations inverses ; valeurs propres et modes réels ou complexes", - reentrant='n', - UIinfo={"groupes":("Résolution","Dynamique",)}, - - TYPE_RESU =SIMP(statut='f',typ='TXM',defaut="DYNAMIQUE", - into=("MODE_FLAMB","DYNAMIQUE","GENERAL"), - fr="Type d analyse" ), - - b_dynam =BLOC(condition = "TYPE_RESU == 'DYNAMIQUE'", - MATR_RIGI =SIMP(statut='o',typ=(matr_asse_depl_r,matr_asse_gene_r,matr_asse_pres_r ) ), - MATR_MASS =SIMP(statut='o',typ=(matr_asse_depl_r,matr_asse_gene_r,matr_asse_pres_r ) ), - MATR_AMOR =SIMP(statut='f',typ=matr_asse_depl_r ), - CALC_FREQ =FACT(statut='o',fr="Choix des paramètres pour le calcul des valeurs propres", - - OPTION =SIMP(statut='f',typ='TXM',defaut="AJUSTE",into=("SEPARE","AJUSTE","PROCHE"), - fr="Choix de l option pour estimer les valeurs propres" ), - FREQ =SIMP(statut='o',typ='R',max='**', - validators=AndVal((OrdList('croissant'), NoRepeat())),), - AMOR_REDUIT =SIMP(statut='f',typ='R',max='**'), - NMAX_FREQ =SIMP(statut='f',typ='I',defaut= 0,val_min=0 ), - NMAX_ITER_SEPARE=SIMP(statut='f',typ='I' ,defaut= 30,val_min=1 ), - PREC_SEPARE =SIMP(statut='f',typ='R',defaut= 1.E-4,val_min=1.E-70 ), - NMAX_ITER_AJUSTE=SIMP(statut='f',typ='I',defaut= 15,val_min=1 ), - PREC_AJUSTE =SIMP(statut='f',typ='R',defaut= 1.E-4,val_min=1.E-70 ), - - NMAX_ITER_SHIFT =SIMP(statut='f',typ='I',defaut= 3,val_min=0 ), - PREC_SHIFT =SIMP(statut='f',typ='R',defaut= 5.E-2,val_min=0.E+0, ), - SEUIL_FREQ =SIMP(statut='f',typ='R',defaut= 1.E-2,val_min=0.E+0, ), - ), - ), - b_flamb =BLOC(condition = "TYPE_RESU == 'MODE_FLAMB'", - MATR_RIGI =SIMP(statut='o',typ=(matr_asse_depl_r,matr_asse_gene_r,matr_asse_pres_r ) ), - MATR_RIGI_GEOM =SIMP(statut='o',typ=(matr_asse_depl_r,matr_asse_gene_r,matr_asse_pres_r ) ), - ), - - b_general =BLOC(condition = "TYPE_RESU == 'GENERAL'", - MATR_A =SIMP(statut='o',typ=(matr_asse_depl_r,matr_asse_gene_r,matr_asse_pres_r ) ), - MATR_B =SIMP(statut='o',typ=(matr_asse_depl_r,matr_asse_gene_r,matr_asse_pres_r ) ), - ), - - b_flamb_general =BLOC(condition = "(TYPE_RESU == 'MODE_FLAMB') or (TYPE_RESU == 'GENERAL')", - CALC_CHAR_CRIT =FACT(statut='o',fr="Choix des paramètres pour le calcul des valeurs propres", - - OPTION =SIMP(statut='f',typ='TXM',defaut="AJUSTE",into=("SEPARE","AJUSTE","PROCHE"), - fr="Choix de l option pour estimer les valeurs propres" ), - CHAR_CRIT =SIMP(statut='o',typ='R',max='**', - validators=AndVal((OrdList('croissant'), NoRepeat())),), - NMAX_CHAR_CRIT =SIMP(statut='f',typ='I',defaut= 0,val_min=0 ), - NMAX_ITER_SEPARE=SIMP(statut='f',typ='I',defaut= 30,val_min=1 ), - PREC_SEPARE =SIMP(statut='f',typ='R',defaut= 1.E-4,val_min=1.E-70 ), - NMAX_ITER_AJUSTE=SIMP(statut='f',typ='I',defaut= 15,val_min=1 ), - PREC_AJUSTE =SIMP(statut='f',typ='R',defaut= 1.E-4,val_min=1.E-70 ), - - NMAX_ITER_SHIFT =SIMP(statut='f',typ='I',defaut= 3,val_min=0 ), - PREC_SHIFT =SIMP(statut='f',typ='R',defaut= 5.E-2,val_min=0.E+0, ), - SEUIL_CHAR_CRIT =SIMP(statut='f',typ='R',defaut= 1.E-2,val_min=0.E+0, ), - ), - ), - -#------------------------------------------------------------------- -# Catalogue commun SOLVEUR - SOLVEUR =C_SOLVEUR('MODE_ITER_INV'), -#------------------------------------------------------------------- - - CALC_MODE =FACT(statut='d',min=0,fr="Choix des paramètres pour le calcul des vecteurs propres", - OPTION =SIMP(statut='f',typ='TXM',defaut="DIRECT",into=("DIRECT","RAYLEIGH") ), - PREC =SIMP(statut='f',typ='R',defaut= 1.E-5,val_min=1.E-70,fr="Précision de convergence" ), - NMAX_ITER =SIMP(statut='f',typ='I',defaut= 30,val_min=1 ), - ), - VERI_MODE =FACT(statut='d',min=0, - STOP_ERREUR =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON") ), - SEUIL =SIMP(statut='f',typ='R',defaut= 1.E-2,val_min=0.E+0, - fr="Valeur limite admise pour l ereur a posteriori des modes" ), - ), - INFO =SIMP(statut='f',typ='I',defaut= 1,into=( 1 , 2) ), - TITRE =SIMP(statut='f',typ='TXM',validators=NoRepeat(),max='**'), -) ; - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2013 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# - -def mode_iter_simult_prod(TYPE_RESU,**args ): - if (TYPE_RESU not in ["DYNAMIQUE","MODE_FLAMB","GENERAL"]): - # on retourne un type fictif pour que le plantage aie lieu dans la lecture du catalogue - return ASSD - if TYPE_RESU == "MODE_FLAMB" : return mode_flamb - if TYPE_RESU == "GENERAL" : return mode_flamb - # sinon on est dans le cas 'DYNAMIQUE' donc **args doit contenir les mots-clés - # MATR_RIGI et (faculativement) MATR_AMOR, et on peut y accéder - vale_rigi = args['MATR_RIGI'] - if (vale_rigi== None) : # si MATR_RIGI non renseigné - # on retourne un type fictif pour que le plantage aie lieu dans la lecture du catalogue - return ASSD - vale_amor = args['MATR_AMOR'] - if (AsType(vale_amor)== matr_asse_depl_r) : return mode_meca_c - if (AsType(vale_rigi)== matr_asse_depl_r) : return mode_meca - if (AsType(vale_rigi)== matr_asse_depl_c) : return mode_meca_c - if (AsType(vale_rigi)== matr_asse_pres_r) : return mode_acou - if (AsType(vale_rigi)== matr_asse_gene_r) : return mode_gene - if (AsType(vale_rigi)== matr_asse_gene_c) : return mode_gene - - raise AsException("type de concept resultat non prevu") - - - -MODE_ITER_SIMULT=OPER(nom="MODE_ITER_SIMULT",op= 45, sd_prod= mode_iter_simult_prod, - fr="Calcul des modes propres par itérations simultanées ; valeurs propres et" - +" modes propres réels ou complexes", - reentrant='n', - UIinfo={"groupes":("Résolution","Dynamique",)}, - METHODE =SIMP(statut='f',typ='TXM',defaut="SORENSEN", - into=("TRI_DIAG","JACOBI","SORENSEN","QZ") ), - b_tri_diag =BLOC(condition = "METHODE == 'TRI_DIAG'", - PREC_ORTHO =SIMP(statut='f',typ='R',defaut= 1.E-12,val_min=0.E+0 ), - NMAX_ITER_ORTHO =SIMP(statut='f',typ='I',defaut= 5,val_min=0 ), - PREC_LANCZOS =SIMP(statut='f',typ='R',defaut= 1.E-8,val_min=0.E+0 ), - NMAX_ITER_QR =SIMP(statut='f',typ='I',defaut= 30,val_min=0 ), - ), - b_jacobi =BLOC(condition = "METHODE == 'JACOBI'", - PREC_BATHE =SIMP(statut='f',typ='R',defaut= 1.E-10,val_min=0.E+0 ), - NMAX_ITER_BATHE =SIMP(statut='f',typ='I',defaut= 40,val_min=0 ), - PREC_JACOBI =SIMP(statut='f',typ='R',defaut= 1.E-2,val_min=0.E+0 ), - NMAX_ITER_JACOBI=SIMP(statut='f',typ='I',defaut= 12,val_min=0 ), - ), - b_sorensen =BLOC(condition = "METHODE == 'SORENSEN'", - PREC_SOREN =SIMP(statut='f',typ='R',defaut= 0.E+0,val_min=0.E+0 ), - NMAX_ITER_SOREN =SIMP(statut='f',typ='I',defaut= 20,val_min=0 ), - PARA_ORTHO_SOREN=SIMP(statut='f',typ='R',defaut= 0.717), - ), - b_qz =BLOC(condition = "METHODE == 'QZ'", - TYPE_QZ =SIMP(statut='f',typ='TXM',defaut="QZ_SIMPLE",into=("QZ_QR","QZ_SIMPLE","QZ_EQUI") ), - ), - TYPE_RESU =SIMP(statut='f',typ='TXM',defaut="DYNAMIQUE", - into=("DYNAMIQUE","MODE_FLAMB","GENERAL"), - fr="Type d analyse" ), - OPTION =SIMP(statut='f',typ='TXM',defaut="SANS",into=("MODE_RIGIDE","SANS"), - fr="Calcul des modes de corps rigide, uniquement pour la méthode TRI_DIAG" ), - - - b_dynam =BLOC(condition = "TYPE_RESU == 'DYNAMIQUE'", - MATR_RIGI =SIMP(statut='o',typ=(matr_asse_depl_r,matr_asse_depl_c, - matr_asse_gene_r,matr_asse_gene_c,matr_asse_pres_r ) ), - MATR_MASS =SIMP(statut='o',typ=(matr_asse_depl_r,matr_asse_gene_r,matr_asse_pres_r ) ), - MATR_AMOR =SIMP(statut='f',typ=(matr_asse_depl_r,matr_asse_gene_r) ), - CALC_FREQ =FACT(statut='d',min=0, - OPTION =SIMP(statut='f',typ='TXM',defaut="PLUS_PETITE",into=("PLUS_PETITE","PLUS_GRANDE","BANDE","CENTRE","TOUT"), - fr="Choix de l option et par conséquent du shift du problème modal" ), - b_plus_petite =BLOC(condition = "OPTION == 'PLUS_PETITE'",fr="Recherche des plus petites fréquences propres", - NMAX_FREQ =SIMP(statut='f',typ='I',defaut=10,val_min=0 ), - ), - b_plus_grande =BLOC(condition = "OPTION == 'PLUS_GRANDE'",fr="Recherche des plus grandes fréquences propres", - NMAX_FREQ =SIMP(statut='f',typ='I',defaut=1,val_min=0 ), - ), - b_centre =BLOC(condition = "OPTION == 'CENTRE'", - fr="Recherche des fréquences propres les plus proches d'une valeur donnée", - FREQ =SIMP(statut='o',typ='R', - fr="Fréquence autour de laquelle on cherche les fréquences propres"), - AMOR_REDUIT =SIMP(statut='f',typ='R',), - NMAX_FREQ =SIMP(statut='f',typ='I',defaut= 10,val_min=0 ), - ), - b_bande =BLOC(condition = "(OPTION == 'BANDE')", - fr="Recherche des fréquences propres dans une bande donnée", - FREQ =SIMP(statut='o',typ='R',min=2,max=2, - validators=AndVal((OrdList('croissant'), NoRepeat())), - fr="Valeur des deux fréquences délimitant la bande de recherche"), - TABLE_FREQ =SIMP(statut= 'f',typ=table_sdaster), - ), - APPROCHE =SIMP(statut='f',typ='TXM',defaut="REEL",into=("REEL","IMAG","COMPLEXE"), - fr="Choix du pseudo-produit scalaire pour la résolution du problème quadratique" ), - regles=(EXCLUS('DIM_SOUS_ESPACE','COEF_DIM_ESPACE'),), - DIM_SOUS_ESPACE =SIMP(statut='f',typ='I' ), - COEF_DIM_ESPACE =SIMP(statut='f',typ='I' ), - NMAX_ITER_SHIFT =SIMP(statut='f',typ='I',defaut= 3,val_min=0 ), - PREC_SHIFT =SIMP(statut='f',typ='R',defaut= 5.E-2,val_min=0.E+0 ), - SEUIL_FREQ =SIMP(statut='f',typ='R',defaut= 1.E-2,val_min=0.E+0 ), - ), - ), - - - b_general =BLOC(condition = "TYPE_RESU == 'GENERAL'", - MATR_A =SIMP(statut='o',typ=(matr_asse_depl_r,matr_asse_gene_r,matr_asse_pres_r ) ), - MATR_B =SIMP(statut='o',typ=(matr_asse_depl_r,matr_asse_gene_r,matr_asse_pres_r ) ), - ), - - - b_flamb =BLOC(condition = "TYPE_RESU == 'MODE_FLAMB'", - MATR_RIGI =SIMP(statut='o',typ=(matr_asse_depl_r,matr_asse_gene_r,matr_asse_pres_r ) ), - MATR_RIGI_GEOM =SIMP(statut='o',typ=(matr_asse_depl_r,matr_asse_gene_r,matr_asse_pres_r ) ), - ), - - - b_flamb_general =BLOC(condition = "(TYPE_RESU == 'MODE_FLAMB') or (TYPE_RESU == 'GENERAL')", - CALC_CHAR_CRIT =FACT(statut='d',min=0, - OPTION =SIMP(statut='f',typ='TXM',defaut="PLUS_PETITE",into=("PLUS_PETITE","BANDE","CENTRE","TOUT"), - fr="Choix de l option et par conséquent du shift du problème modal" ), - b_plus_petite =BLOC(condition = "OPTION == 'PLUS_PETITE'",fr="Recherche des plus petites valeurs propres", - NMAX_CHAR_CRIT =SIMP(statut='f',typ='I',defaut= 10,val_min=0 ), - ), - b_centre =BLOC(condition = "OPTION == 'CENTRE'", - fr="Recherche des valeurs propres les plus proches d une valeur donnée", - CHAR_CRIT =SIMP(statut='o',typ='R', - fr="Charge critique autour de laquelle on cherche les charges critiques propres"), - NMAX_CHAR_CRIT =SIMP(statut='f',typ='I',defaut= 10,val_min=0 ), - ), - b_bande =BLOC(condition = "(OPTION == 'BANDE')", - fr="Recherche des valeurs propres dans une bande donnée", - CHAR_CRIT =SIMP(statut='o',typ='R',min=2,max=2, - validators=AndVal((OrdList('croissant'), NoRepeat())), - fr="Valeur des deux charges critiques délimitant la bande de recherche"), - TABLE_CHAR_CRIT =SIMP(statut= 'f',typ=table_sdaster), - - ), - APPROCHE =SIMP(statut='f',typ='TXM',defaut="REEL",into=("REEL","IMAG"), - fr="Choix du pseudo-produit scalaire pour la résolution du problème quadratique" ), - regles=(EXCLUS('DIM_SOUS_ESPACE','COEF_DIM_ESPACE'),), - DIM_SOUS_ESPACE =SIMP(statut='f',typ='I' ), - COEF_DIM_ESPACE =SIMP(statut='f',typ='I' ), - NMAX_ITER_SHIFT =SIMP(statut='f',typ='I',defaut= 3,val_min=0 ), - PREC_SHIFT =SIMP(statut='f',typ='R',defaut= 5.E-2,val_min=0.E+0 ), - SEUIL_CHAR_CRIT =SIMP(statut='f',typ='R',defaut= 1.E-2,val_min=0.E+0 ), - ), - ), - - -#------------------------------------------------------------------- -# Catalogue commun SOLVEUR - SOLVEUR =C_SOLVEUR('MODE_ITER_SIMULT'), -#------------------------------------------------------------------- -#------------------------------------------------------------------- -# Mot-cles caches pour activer le parallelisme au sein d'une macro-commande - PARALLELISME_MACRO=FACT(statut='d',min=0, - TYPE_COM =SIMP(statut='c',typ='I',defaut=-999,into=(-999,1),fr="Type de communication"), - IPARA1_COM =SIMP(statut='c',typ='I',defaut=-999,fr="Parametre entier n 1 de la communication"), - IPARA2_COM =SIMP(statut='c',typ='I',defaut=-999,fr="Parametre entier n 2 de la communication"), - ), -#------------------------------------------------------------------- - VERI_MODE =FACT(statut='d',min=0, - STOP_ERREUR =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON") ), - PREC_SHIFT =SIMP(statut='f',typ='R',defaut= 5.E-3,val_min=0.E+0 ), - SEUIL =SIMP(statut='f',typ='R',defaut= 1.E-6,val_min=0.E+0, - fr="Valeur limite admise pour l ereur a posteriori des modes" ), - STURM =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON") ), - ), - STOP_BANDE_VIDE =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON") ), - INFO =SIMP(statut='f',typ='I',defaut= 1,into=( 1 , 2) ), - TITRE =SIMP(statut='f',typ='TXM',max='**'), -) ; - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2013 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -MODE_NON_LINE=OPER(nom="MODE_NON_LINE",op= 61,sd_prod=table_container, - fr="Calcul des modes non-linéaires", - reentrant='f', - UIinfo={"groupes":("Résolution","Dynamique",)}, - - reuse =SIMP(statut='f',typ='table_container'), - - ETAT_INIT =FACT(statut='o',max=1, - regles=( UN_PARMI('MODE_LINE','MODE_NON_LINE'),), - MODE_LINE = SIMP(statut='f',typ=mode_meca,max = 1), - MODE_NON_LINE = SIMP(statut='f',typ=table_container,max = 1), - NUME_ORDRE = SIMP(statut='o',typ='I' ), - DIR_EVOLUTION = SIMP(statut='f',typ='I',defaut=-1, into=(-1,1)), - COEF_AMPL = SIMP(statut='f',typ='R',defaut=1,), - ), - - CHOC = FACT(statut='f',max='**', - regles=( UN_PARMI('NOEUD','GROUP_NO'),), - OBSTACLE = SIMP(statut='f',typ='TXM', into=("PLAN","BI_PLAN","CERCLE",)), - b_cercle = BLOC(condition="OBSTACLE=='CERCLE'", - NOM_CMP = SIMP(statut='o',typ='TXM',min=2,max=2,validators=NoRepeat(), - into=('DX','DY','DZ'),), - ORIG_OBST = SIMP(statut='f',typ='R',defaut=(0.,0.,0.),min=3,max=3), - ), - b_bi_plan = BLOC(condition="OBSTACLE=='BI_PLAN'", - NOM_CMP = SIMP(statut='o',typ='TXM',min=1,max=1,into=('DX','DY','DZ'),), - ), - b_plan = BLOC(condition="OBSTACLE=='PLAN'", - NOM_CMP = SIMP(statut='o',typ='TXM',min=1,max=1,into=('DX','DY','DZ'),), - ), - NOEUD = SIMP(statut='f', typ=no, max=1), - GROUP_NO = SIMP(statut='f', typ=grno, max=1), - JEU = SIMP(statut='o',typ='R',max=1 ), - RIGI_NOR = SIMP(statut='o',typ='R',max=1 ), - PARA_REGUL = SIMP(statut='f',typ='R',defaut=0.005 ), - ), - - MATR_RIGI = SIMP(statut='o',typ=(matr_asse_depl_r,) ), - MATR_MASS = SIMP(statut='o',typ=(matr_asse_depl_r,) ), - - RESOLUTION = FACT(statut='o',max=1, - METHODE = SIMP(statut='f',typ='TXM',defaut="EHMAN",into=("EHMAN",)), - b_ehman = BLOC(condition="METHODE=='EHMAN'", - NB_HARM_LINE = SIMP(statut='o',typ='I',val_min=1,), - NB_HARM_NONL = SIMP(statut='f',typ='I',defaut=201,val_min=1,), - NB_BRANCHE = SIMP(statut='o',typ='I',val_min=0), - NB_PAS_MAN = SIMP(statut='o',typ='I',val_min=1), - NB_ORDRE_MAN = SIMP(statut='f',typ='I',defaut=20,val_min=2), - PREC_MAN = SIMP(statut='f',typ='R',defaut=1.E-9,val_min=0.E+0), - PREC_NEWTON = SIMP(statut='f',typ='R',defaut=1.E-8,val_min=0.E+0), - ITER_NEWTON_MAXI = SIMP(statut='f',typ='I',defaut=15,val_min=1), - CRIT_ORDR_BIFURCATION = SIMP(statut='f',typ='I',defaut=3,val_min=1), - RESI_RELA_BIFURCATION = SIMP(statut='f',typ='R',defaut=1.E-4,val_min=0.E+0), - ), - ), - - SOLVEUR = C_SOLVEUR('MODE_NON_LINE'), - - INFO = SIMP(statut='f',typ='I',defaut=1), - -) ; - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2011 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: georges-cc.devesa at edf.fr - -MODE_STATIQUE=OPER(nom="MODE_STATIQUE",op= 93,sd_prod=mode_meca, - fr="Calcul de déformées statiques pour un déplacement, une force ou une accélération unitaire imposé", - reentrant='n', - UIinfo={"groupes":("Résolution","Dynamique",)}, - - regles=(UN_PARMI('MODE_STAT','FORCE_NODALE','PSEUDO_MODE','MODE_INTERF'), - PRESENT_PRESENT('MODE_INTERF','MATR_MASS'), - PRESENT_PRESENT('PSEUDO_MODE','MATR_MASS'), - ), - - - MATR_RIGI =SIMP(statut='o',typ=matr_asse_depl_r ), - MATR_MASS =SIMP(statut='f',typ=matr_asse_depl_r ), - - - - MODE_STAT =FACT(statut='f',max='**', - regles=(UN_PARMI('TOUT','NOEUD','GROUP_NO'), - UN_PARMI('TOUT_CMP','AVEC_CMP','SANS_CMP'),), - TOUT =SIMP(statut='f',typ='TXM',into=("OUI",) ,), - NOEUD =SIMP(statut='f',typ=no ,max='**'), - GROUP_NO =SIMP(statut='f',typ=grno ,max='**'), - TOUT_CMP =SIMP(statut='f',typ='TXM',into=("OUI",) ,), - AVEC_CMP =SIMP(statut='f',typ='TXM',max='**'), - SANS_CMP =SIMP(statut='f',typ='TXM',max='**'), - ), - FORCE_NODALE =FACT(statut='f',max='**', - regles=(UN_PARMI('TOUT','NOEUD','GROUP_NO'), - UN_PARMI('TOUT_CMP','AVEC_CMP','SANS_CMP'),), - TOUT =SIMP(statut='f',typ='TXM',into=("OUI",), ), - NOEUD =SIMP(statut='f',typ=no ,max='**'), - GROUP_NO =SIMP(statut='f',typ=grno ,max='**'), - TOUT_CMP =SIMP(statut='f',typ='TXM',into=("OUI",), ), - AVEC_CMP =SIMP(statut='f',typ='TXM',max='**'), - SANS_CMP =SIMP(statut='f',typ='TXM',max='**'), - ), - PSEUDO_MODE =FACT(statut='f',max='**', - regles=(UN_PARMI('AXE','DIRECTION','TOUT','NOEUD','GROUP_NO' ),), - AXE =SIMP(statut='f',typ='TXM',into=("X","Y","Z"),max=3), - DIRECTION =SIMP(statut='f',typ='R',min=3,max=3), - TOUT =SIMP(statut='f',typ='TXM',into=("OUI",)), - NOEUD =SIMP(statut='f',typ=no ,max='**'), - GROUP_NO =SIMP(statut='f',typ=grno ,max='**'), - b_dir =BLOC(condition = "DIRECTION != None", - NOM_DIR =SIMP(statut='f',typ='TXM' ),), - b_cmp =BLOC(condition="TOUT!= None or NOEUD!=None or GROUP_NO!=None", - regles=(UN_PARMI('TOUT_CMP','AVEC_CMP','SANS_CMP'),), - TOUT_CMP =SIMP(statut='f',typ='TXM',into=("OUI",) ), - AVEC_CMP =SIMP(statut='f',typ='TXM',max='**'), - SANS_CMP =SIMP(statut='f',typ='TXM',max='**'), - ), - ), - MODE_INTERF =FACT(statut='f',max='**', - regles=(UN_PARMI('TOUT','NOEUD','GROUP_NO'), - UN_PARMI('TOUT_CMP','AVEC_CMP','SANS_CMP'),), - TOUT =SIMP(statut='f',typ='TXM',into=("OUI",), ), - NOEUD =SIMP(statut='f',typ=no ,max='**'), - GROUP_NO =SIMP(statut='f',typ=grno ,max='**'), - TOUT_CMP =SIMP(statut='f',typ='TXM',into=("OUI",) ), - AVEC_CMP =SIMP(statut='f',typ='TXM',max='**'), - SANS_CMP =SIMP(statut='f',typ='TXM',max='**'), - NBMOD =SIMP(statut='o',typ='I',defaut= 1), - SHIFT =SIMP(statut='o',typ='R',defaut= 1.0), - - ), - -#------------------------------------------------------------------- -# Catalogue commun SOLVEUR - SOLVEUR =C_SOLVEUR('MODE_STATIQUE'), -#------------------------------------------------------------------- - - TITRE =SIMP(statut='f',typ='TXM',max='**'), - INFO =SIMP(statut='f',typ='I',defaut= 1,into=( 1 , 2 ,) ), -) ; - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: andre.adobes at edf.fr -MODI_BASE_MODALE=OPER(nom="MODI_BASE_MODALE",op= 149,sd_prod=mode_meca, - reentrant='f', - fr="Définir la base modale d'une structure sous écoulement", - UIinfo={"groupes":("Matrices et vecteurs",)}, -# la commande modi_base _modale : reentrant = f ou o - regles=(EXCLUS('AMOR_UNIF','AMOR_REDUIT', ),), - BASE =SIMP(statut='o',typ=mode_meca ), - BASE_ELAS_FLUI =SIMP(statut='o',typ=melasflu_sdaster ), - NUME_VITE_FLUI =SIMP(statut='o',typ='I' ), - NUME_ORDRE =SIMP(statut='f',typ='I',validators=NoRepeat(),max='**'), - AMOR_REDUIT =SIMP(statut='f',typ='R',max='**'), - AMOR_UNIF =SIMP(statut='f',typ='R' ), - INFO =SIMP(statut='f',typ='I',defaut= 1,into=(1,2) ), - TITRE =SIMP(statut='f',typ='TXM',max='**'), -) ; - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2011 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: nicolas.greffet at edf.fr -# -# RECUPERATION DES EFFORTS VIA YACS POUR COUPLAGE IFS -# -MODI_CHAR_YACS=OPER(nom = "MODI_CHAR_YACS", - op = 112, - sd_prod = char_meca, - reentrant = 'o', - UIinfo = {"groupes":("Résultats et champs",)}, - fr = "Reception des forces nodales via YACS lors du couplage de Code_Aster et Saturne", - CHAR_MECA = SIMP(statut ='o', typ = char_meca), - MATR_PROJECTION = SIMP(statut ='o', typ = corresp_2_mailla,), - NOM_CMP_IFS = SIMP(statut ='o', typ = 'TXM',validators = NoRepeat(), max = '**'), - VIS_A_VIS = FACT(statut ='o', max = '**', - GROUP_MA_1 = SIMP(statut='o',typ=grma,validators=NoRepeat(),max='**'), - GROUP_NO_2 = SIMP(statut='o',typ=grno,validators=NoRepeat(),max='**'),), - INST = SIMP(statut='o',typ='R', ), - PAS = SIMP(statut='o',typ='R', ), - NUME_ORDRE_YACS = SIMP(statut='o', typ='I',), - INFO = SIMP(statut='f',typ='I',defaut=1,into=(1,2) ), -); - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2013 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: jacques.pellet at edf.fr -MODI_MAILLAGE=OPER(nom="MODI_MAILLAGE",op= 154,sd_prod=maillage_sdaster, - fr="Effectuer des modifications sur un maillage existant: réorienter des mailles servant," - +" à l'application d'une pression, à la modélisation du contact,...", - reentrant='o', - UIinfo={"groupes":("Maillage",)}, - regles=(AU_MOINS_UN('ORIE_FISSURE','DEFORME','EQUE_PIQUA','ORIE_PEAU_2D', - 'ORIE_PEAU_3D','ORIE_NORM_COQUE','PLAQ_TUBE','MODI_MAILLE', - 'TRANSLATION','ROTATION','MODI_BASE','ECHELLE','ORIE_SHB','SYMETRIE', - 'ORIE_LIGNE',), - PRESENT_ABSENT('ORIE_FISSURE','DEFORME','EQUE_PIQUA','ORIE_PEAU_2D', - 'ORIE_PEAU_3D','ORIE_NORM_COQUE','PLAQ_TUBE','MODI_MAILLE', - 'ORIE_LIGNE'), - PRESENT_ABSENT('DEFORME','ORIE_FISSURE','EQUE_PIQUA','ORIE_PEAU_2D', - 'ORIE_PEAU_3D','ORIE_NORM_COQUE','PLAQ_TUBE','MODI_MAILLE', - 'ORIE_LIGNE'), - PRESENT_ABSENT('EQUE_PIQUA','ORIE_FISSURE','DEFORME','ORIE_PEAU_2D', - 'ORIE_PEAU_3D','ORIE_NORM_COQUE','PLAQ_TUBE','MODI_MAILLE', - 'ORIE_LIGNE'), - PRESENT_ABSENT('ORIE_PEAU_2D','ORIE_FISSURE','DEFORME','EQUE_PIQUA', - 'ORIE_PEAU_3D','ORIE_NORM_COQUE','PLAQ_TUBE','MODI_MAILLE', - 'ORIE_LIGNE'), - PRESENT_ABSENT('ORIE_PEAU_3D','ORIE_FISSURE','DEFORME','EQUE_PIQUA','ORIE_PEAU_2D', - 'PLAQ_TUBE','MODI_MAILLE',), - PRESENT_ABSENT('ORIE_NORM_COQUE','ORIE_FISSURE','DEFORME','EQUE_PIQUA','ORIE_PEAU_2D', - 'PLAQ_TUBE','MODI_MAILLE','ORIE_LIGNE'), - PRESENT_ABSENT('PLAQ_TUBE','ORIE_FISSURE','DEFORME','EQUE_PIQUA','ORIE_PEAU_2D', - 'ORIE_PEAU_3D','ORIE_NORM_COQUE','MODI_MAILLE','ORIE_LIGNE'), - PRESENT_ABSENT('MODI_MAILLE','ORIE_FISSURE','DEFORME','EQUE_PIQUA','ORIE_PEAU_2D', - 'ORIE_PEAU_3D','ORIE_NORM_COQUE','PLAQ_TUBE','ORIE_LIGNE'), - EXCLUS('EQUE_PIQUA','PLAQ_TUBE'), - EXCLUS('EQUE_PIQUA','TUBE_COUDE'), - EXCLUS('ROTATION','MODI_BASE'), - EXCLUS('SYMETRIE','ROTATION'), - EXCLUS('SYMETRIE','TRANSLATION'), - EXCLUS('SYMETRIE','MODI_BASE'), - EXCLUS('SYMETRIE','ECHELLE'), - ), - MAILLAGE =SIMP(statut='o',typ=maillage_sdaster ), - - ORIE_FISSURE =FACT(statut='f', - GROUP_MA =SIMP(statut='o',typ=grma,validators=NoRepeat(),max='**'), - ), - - DEFORME =FACT(statut='f', - OPTION =SIMP(statut='o',typ='TXM',into=("TRAN","TRAN_APPUI") ), - DEPL =SIMP(statut='o',typ=cham_no_sdaster ), - b_deform =BLOC(condition = "OPTION=='TRAN_APPUI'", - GROUP_NO_APPUI = SIMP(statut='o',typ=grno,validators=NoRepeat(),max='**' ), - GROUP_NO_STRU = SIMP(statut='o',typ=grno,validators=NoRepeat(),max='**' ),), - ), - - EQUE_PIQUA =FACT(statut='f', - GROUP_NO =SIMP(statut='o',typ=grno), - E_BASE =SIMP(statut='o',typ='R' ), - DEXT_BASE =SIMP(statut='o',typ='R' ), - L_BASE =SIMP(statut='o',typ='R' ), - L_CHANF =SIMP(statut='o',typ='R' ), - TYPE =SIMP(statut='o',typ='TXM',into=("TYPE_1","TYPE_2")), - H_SOUD =SIMP(statut='o',typ='R' ), - ANGL_SOUD =SIMP(statut='o',typ='R' ), - JEU_SOUD =SIMP(statut='o',typ='R' ), - E_CORP =SIMP(statut='o',typ='R' ), - DEXT_CORP =SIMP(statut='o',typ='R' ), - AZIMUT =SIMP(statut='o',typ='R' ), - RAFF_MAIL =SIMP(statut='o',typ='TXM' ), - X_MAX =SIMP(statut='o',typ='R' ), - ), - ORIE_PEAU_2D =FACT(statut='f',max='**', - GROUP_MA =SIMP(statut='o',typ=grma,validators=NoRepeat(),max='**'), - GROUP_MA_SURF =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - ), - ORIE_PEAU_3D =FACT(statut='f',max='**', - GROUP_MA =SIMP(statut='o',typ=grma,validators=NoRepeat(),max='**'), - GROUP_MA_VOLU =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - ), - ORIE_SHB =FACT(statut='f',max=1, - GROUP_MA =SIMP(statut='o',typ=grma,validators=NoRepeat(),max='**'), - ), - ORIE_NORM_COQUE =FACT(statut='f',max='**', - GROUP_MA =SIMP(statut='o',typ=grma,validators=NoRepeat(),max='**'), - VECT_NORM =SIMP(statut='f',typ='R',max=3), - b_vect_norm =BLOC(condition = "VECT_NORM != None", - regles=UN_PARMI('NOEUD','GROUP_NO'), - NOEUD =SIMP(statut='f',typ=no), - GROUP_NO =SIMP(statut='f',typ=grno), - ), - ), - ORIE_LIGNE =FACT(statut='f',max='**', - GROUP_MA =SIMP(statut='o',typ=grma,validators=NoRepeat(),max='**'), - VECT_TANG =SIMP(statut='f',typ='R',max=3), - b_vect_tang =BLOC(condition = "VECT_TANG != None", - regles=UN_PARMI('NOEUD','GROUP_NO'), - NOEUD =SIMP(statut='f',typ=no), - GROUP_NO =SIMP(statut='f',typ=grno), - ), - ), - PLAQ_TUBE =FACT(statut='f', - DEXT =SIMP(statut='o',typ='R' ), - EPAIS =SIMP(statut='o',typ='R' ), - L_TUBE_P1 =SIMP(statut='o',typ='R' ), - AZIMUT =SIMP(statut='f',typ='R',defaut= 90. ), - COUTURE =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON",) ), - ), - TUBE_COUDE =FACT(statut='f', - ANGLE =SIMP(statut='o',typ='R' ), - R_CINTR =SIMP(statut='o',typ='R' ), - L_TUBE_P1 =SIMP(statut='o',typ='R' ), - ), - MODI_MAILLE =FACT(statut='f',max=1, - regles=(AU_MOINS_UN('GROUP_MA_FOND','MAILLE_FOND','GROUP_NO_FOND','NOEUD_FOND'),), - OPTION =SIMP(statut='o',typ='TXM',into=("NOEUD_QUART",) ), - GROUP_MA_FOND =SIMP(statut='f',typ=grma,validators=NoRepeat(),max=1), - MAILLE_FOND =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max=1), - GROUP_NO_FOND =SIMP(statut='f',typ=grno,validators=NoRepeat(),max=1), - NOEUD_FOND =SIMP(statut='f',typ=no ,validators=NoRepeat(),max=1), - ), - MODI_BASE =FACT(statut='f', - VECT_X =SIMP(statut='o',typ='R',min=2,max=3), - VECT_Y =SIMP(statut='f',typ='R',min=2,max=3), - ), - ECHELLE =SIMP(statut='f',typ='R',), - TRANSLATION =SIMP(statut='f',typ='R',min=2,max=3), - ROTATION =FACT(statut='f',max='**', - POIN_1 =SIMP(statut='o',typ='R',min=2,max=3), - ANGLE =SIMP(statut='o',typ='R',defaut= 0.E+0 ), - regles=(EXCLUS('DIR','POIN_2'),), - POIN_2 =SIMP(statut='f',typ='R',min=2,max=3), - DIR =SIMP(statut='f',typ='R',min=2,max=3), - ), - SYMETRIE =FACT(statut='f',max='**', - fr = "Symétrie du maillage par rapport à un plan en 3D ou à une droite en 2D.", - POINT =SIMP(statut='o',typ='R',min=2,max=3, - fr="Point appartenant à la droite ou au plan."), - AXE_1 =SIMP(statut='o',typ='R',min=2,max=3, - fr="Vecteur directeur de la droite ou 1er vecteur appartenant au plan."), - AXE_2 =SIMP(statut='f',typ='R',min=3,max=3, - fr="2nd vecteur appartenant du plan."), - ), - INFO =SIMP(statut='f',typ='I',defaut= 1,into=( 1 , 2) ), -) ; - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2009 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: jacques.pellet at edf.fr - -MODI_MODELE=OPER(nom="MODI_MODELE",op= 103,sd_prod=modele_sdaster,reentrant='o', - UIinfo={"groupes":("Modélisation",)}, - fr="Modifier la partition d'un modèle (parallélisme) ", - - MODELE =SIMP(statut='o',typ=modele_sdaster,min=1,max=1,), - - PARTITION =FACT(statut='d', - PARALLELISME =SIMP(statut='f',typ='TXM',defaut="GROUP_ELEM", - into=("MAIL_CONTIGU","MAIL_DISPERSE","SOUS_DOMAINE","CENTRALISE","GROUP_ELEM")), - b_dist_maille =BLOC(condition = "PARALLELISME in ('MAIL_DISPERSE','MAIL_CONTIGU')", - CHARGE_PROC0_MA =SIMP(statut='f',typ='I',defaut=100,val_min=0), - ), - b_dist_sd =BLOC(condition = "PARALLELISME == 'SOUS_DOMAINE'", - PARTITION =SIMP(statut='o',typ=sd_partit), - CHARGE_PROC0_SD =SIMP(statut='f',typ='I',defaut=0,val_min=0), - ), - ), -) ; - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2012 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: samuel.geniaut at edf.fr - -MODI_MODELE_XFEM=OPER(nom="MODI_MODELE_XFEM",op= 113,sd_prod=modele_sdaster,docu="U4.44.12-e",reentrant='f', - UIinfo={"groupes":("Modélisation","Rupture",)}, - fr="Engendrer ou enrichir une structure de donnees en affectant les cham_gd associes", - - MODELE_IN =SIMP(statut='o',typ=modele_sdaster,min=1,max=1,), - FISSURE =SIMP(statut='o',typ=fiss_xfem,min=1,max='**',), - CRITERE =SIMP(statut='f',typ='R',defaut=1.1E-9), - INFO =SIMP(statut='f',typ='I',defaut= 1,into=(1,2,)), - CONTACT - =SIMP(statut='f',typ='TXM',defaut='NON',into=("OUI","NON"),min=1,max=1,), -) ; - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2013 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: xavier.desroches at edf.fr -def modi_repere_prod(RESULTAT,**args): - if AsType(RESULTAT) != None : return AsType(RESULTAT) - -MODI_REPERE=OPER(nom="MODI_REPERE",op=191,sd_prod=modi_repere_prod,reentrant='f', - UIinfo={"groupes":("Post-traitements","Résultats et champs",)}, - fr="Calcule des résultats dans le repère cylindrique", - RESULTAT =SIMP(statut='o',typ=resultat_sdaster), - - regles=(EXCLUS('TOUT_ORDRE','NUME_ORDRE','INST','FREQ','NUME_MODE', - 'NOEUD_CMP','LIST_INST','LIST_FREQ','NOM_CAS'),), - TOUT_ORDRE =SIMP(statut='f',typ='TXM',into=("OUI",) ), - NUME_ORDRE =SIMP(statut='f',typ='I',validators=NoRepeat(),max='**'), - NUME_MODE =SIMP(statut='f',typ='I',validators=NoRepeat(),max='**'), - NOEUD_CMP =SIMP(statut='f',typ='TXM',validators=NoRepeat(),max='**'), - NOM_CAS =SIMP(statut='f',typ='TXM' ), - - INST =SIMP(statut='f',typ='R',validators=NoRepeat(),max='**'), - FREQ =SIMP(statut='f',typ='R',validators=NoRepeat(),max='**'), - LIST_INST =SIMP(statut='f',typ=listr8_sdaster), - LIST_FREQ =SIMP(statut='f',typ=listr8_sdaster), - - CRITERE =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU",),), - b_prec_rela=BLOC(condition="(CRITERE=='RELATIF')", - PRECISION =SIMP(statut='f',typ='R',defaut= 1.E-6,),), - b_prec_abso=BLOC(condition="(CRITERE=='ABSOLU')", - PRECISION =SIMP(statut='o',typ='R',),), - - MODI_CHAM =FACT(statut='o',max='**', - TYPE_CHAM =SIMP(statut='o',typ='TXM', - into=("VECT_2D","VECT_3D","TENS_2D","TENS_3D","COQUE_GENE"),), - NOM_CHAM =SIMP(statut='o',typ='TXM',validators=NoRepeat(),into=C_NOM_CHAM_INTO()), - b_vect_2d =BLOC(condition = "TYPE_CHAM=='VECT_2D'", - NOM_CMP =SIMP(statut='o',typ='TXM',min=2,max=2 ),), - b_vect_3d =BLOC(condition = "TYPE_CHAM=='VECT_3D'", - NOM_CMP =SIMP(statut='o',typ='TXM',min=3,max=3 ),), - b_tens_2d =BLOC(condition = "TYPE_CHAM=='TENS_2D'", - NOM_CMP =SIMP(statut='o',typ='TXM',min=4,max=4 ),), - b_tens_3d =BLOC(condition = "TYPE_CHAM=='TENS_3D'", - NOM_CMP =SIMP(statut='o',typ='TXM',min=6,max=6 ),), - b_coque_gene =BLOC(condition = "TYPE_CHAM=='COQUE_GENE'", - NOM_CMP =SIMP(statut='o',typ='TXM',min=8,max=8 ),), - ), - b_reuse =BLOC(condition = "reuse",fr="en mode concept reentrant : COQUE_INTR_UTIL ou COQUE_UTIL_INTR autorise", - REPERE =SIMP(statut='o',typ='TXM',position='global', - into=("COQUE_INTR_UTIL","COQUE_UTIL_INTR"),), - AFFE =FACT(statut='o',max='**', - GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - MAILLE =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), - ), - ), - - b_not_reuse =BLOC(condition = "not reuse",fr="en mode concept non reentrant ", - REPERE =SIMP(statut='f',typ='TXM',defaut="UTILISATEUR",position='global', - into=("UTILISATEUR","CYLINDRIQUE","COQUE", - "COQUE_INTR_UTIL","COQUE_UTIL_INTR"),), - - AFFE =FACT(statut='o',max='**', - b_cyl =BLOC(condition = "REPERE == 'CYLINDRIQUE'", - ORIGINE =SIMP(statut='f',typ='R',min=2,max=3), - AXE_Z =SIMP(statut='f',typ='R',min=3,max=3),), - b_uti =BLOC(condition = "REPERE == 'UTILISATEUR'", - regles=(UN_PARMI('ANGL_NAUT','VECT_X'), - ENSEMBLE('VECT_X','VECT_Y')), - ANGL_NAUT =SIMP(statut='f',typ='R',max=3), - VECT_X =SIMP(statut='f',typ='R',min=3,max=3 ), - VECT_Y =SIMP(statut='f',typ='R',min=3,max=3 ),), - b_coq =BLOC(condition = "REPERE == 'COQUE'", - regles=(UN_PARMI('ANGL_REP','VECTEUR'),), - ANGL_REP =SIMP(statut='f',typ='R',min=2,max=2), - VECTEUR =SIMP(statut='f',typ='R',min=3,max=3),), - GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - GROUP_NO =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'), - MAILLE =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), - NOEUD =SIMP(statut='f',typ=no ,validators=NoRepeat(),max='**'), - ), - ), - TITRE =SIMP(statut='f',typ='TXM',max='**'), - INFO =SIMP(statut='f',typ='I',defaut=1,into=(1,2)), -) ; - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2013 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: nicolas.brie at edf.fr - -def norm_mode_prod(MODE,**args ): - if AsType(MODE) == mode_meca : return mode_meca - if AsType(MODE) == mode_meca_c : return mode_meca_c - if AsType(MODE) == mode_flamb : return mode_flamb - raise AsException("type de concept resultat non prevu") - -NORM_MODE=OPER(nom="NORM_MODE",op= 37,sd_prod=norm_mode_prod, - fr="Normer des modes propres en fonction d'un critère choisi par l'utilisateur", - reentrant='f', - UIinfo={"groupes":("Résolution","Dynamique",)}, - regles=(UN_PARMI('NORME','GROUP_NO','NOEUD','AVEC_CMP','SANS_CMP'),), - MODE =SIMP(statut='o',typ=(mode_meca,mode_flamb) ), - NORME =SIMP(statut='f',typ='TXM',fr="Norme prédéfinie : masse généralisée, euclidienne,...", - into=("MASS_GENE","RIGI_GENE","EUCL","EUCL_TRAN","TRAN","TRAN_ROTA") ), - NOEUD =SIMP(statut='f',typ=no, fr="Composante donnée d'un noeud spécifié égale à 1"), - GROUP_NO =SIMP(statut='f',typ=grno,fr="Composante donnée d'un groupe contenant un seul noeud spécifié égale à 1"), - b_noeud =BLOC(condition = "NOEUD != None or GROUP_NO != None", - NOM_CMP =SIMP(statut='o',typ='TXM' ), - ), - AVEC_CMP =SIMP(statut='f',typ='TXM',validators=NoRepeat(),max='**'), - SANS_CMP =SIMP(statut='f',typ='TXM',validators=NoRepeat(),max='**'), - MODE_SIGNE =FACT(statut='f',fr="Imposer un signe sur une des composantes des modes", - regles=(UN_PARMI('GROUP_NO','NOEUD'),), - NOEUD =SIMP(statut='f',typ=no,fr="Noeud où sera imposé le signe"), - GROUP_NO =SIMP(statut='f',typ=grno,fr="Groupe d'un seul noeud où sera imposé le signe"), - NOM_CMP =SIMP(statut='o',typ='TXM',fr="Composante du noeud où sera imposé le signe" ), - SIGNE =SIMP(statut='f',typ='TXM',defaut="POSITIF",into=("NEGATIF","POSITIF"), - fr="Choix du signe" ), - ), - - MASSE = SIMP(statut='f',typ=(matr_asse_depl_r,matr_asse_gene_r,matr_asse_pres_r ), ), - RAIDE = SIMP(statut='f',typ=(matr_asse_depl_r,matr_asse_depl_c,matr_asse_gene_r,matr_asse_pres_r ), ), - AMOR = SIMP(statut='f',typ=(matr_asse_depl_r,matr_asse_gene_r) ), - TITRE =SIMP(statut='f',typ='TXM',max='**'), - INFO =SIMP(statut='f',typ='I',defaut= 1,into=( 1 , 2) ), -) ; - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2012 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: jacques.pellet at edf.fr -NUME_DDL=OPER(nom="NUME_DDL",op=11,sd_prod=nume_ddl_sdaster,reentrant='n', - UIinfo={"groupes":("Matrices et vecteurs",)}, - fr="Etablissement de la numérotation des ddl avec ou sans renumérotation et du stockage de la matrice", - regles=(UN_PARMI('MATR_RIGI','MODELE'),), - MATR_RIGI =SIMP(statut='f',validators=NoRepeat(),max=100, - typ=(matr_elem_depl_r ,matr_elem_depl_c,matr_elem_temp_r ,matr_elem_pres_c) ), - MODELE =SIMP(statut='f',typ=modele_sdaster ), - b_modele =BLOC(condition = "MODELE != None", - CHARGE =SIMP(statut='f',validators=NoRepeat(),max='**',typ=(char_meca,char_ther,char_acou, ),), - ), - METHODE =SIMP(statut='f',typ='TXM',defaut="MULT_FRONT",into=("MULT_FRONT","LDLT","GCPC","PETSC","MUMPS") ), - b_mult_front =BLOC(condition="METHODE=='MULT_FRONT'",fr="paramètres associés à la méthode multifrontale", - RENUM =SIMP(statut='f',typ='TXM',into=("MD","MDA","METIS"),defaut="METIS" ), - ), - b_ldlt =BLOC(condition="METHODE=='LDLT'",fr="paramètres associés à la méthode LDLT", - RENUM =SIMP(statut='f',typ='TXM',into=("RCMK","SANS"),defaut="RCMK" ), - ), - b_mumps =BLOC(condition = "METHODE == 'MUMPS' ",fr="Paramètres de la méthode MUMPS", - RENUM =SIMP(statut='f',typ='TXM',defaut="AUTO",into=("AMD","AMF","PORD","METIS","QAMD","SCOTCH","AUTO")), - ), - b_gcpc =BLOC(condition="METHODE=='GCPC' or METHODE=='PETSC'",fr="paramètres associés à la GCPC ou PETSc", - RENUM =SIMP(statut='f',typ='TXM',into=("RCMK","SANS"),defaut="RCMK" ), - ), - INFO =SIMP(statut='f',typ='I',into=(1,2)), -) ; - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2011 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: mathieu.corus at edf.fr -NUME_DDL_GENE=OPER(nom="NUME_DDL_GENE",op= 127,sd_prod=nume_ddl_gene, - fr="Etablissement de la numérotation des ddl d'un modèle etabli en coordonnées généralisees", - reentrant='n', - UIinfo={"groupes":("Matrices et vecteurs",)}, - regles=UN_PARMI('MODELE_GENE','BASE'), - MODELE_GENE =SIMP(statut='f',typ=modele_gene ), - b_modele_gene =BLOC(condition = "MODELE_GENE != None", - STOCKAGE =SIMP(statut='f',typ='TXM',defaut="LIGN_CIEL",into=("LIGN_CIEL","PLEIN") ), - METHODE =SIMP(statut='f',typ='TXM',defaut="CLASSIQUE",into=("INITIAL","CLASSIQUE","ELIMINE") ), - ), - BASE =SIMP(statut='f',typ=(mode_meca,mode_gene ) ), - b_base =BLOC(condition = "BASE != None", - STOCKAGE =SIMP(statut='f',typ='TXM',defaut="PLEIN",into=("DIAG","PLEIN") ), - NB_VECT =SIMP(statut='f',typ='I',defaut= 9999 ), - ), -) ; - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2013 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: harinaivo.andriambololona at edf.fr - -def observation_prod(self, RESULTAT, **args): - if AsType(RESULTAT) == mode_meca : - return mode_meca - elif AsType(RESULTAT) == evol_elas : - return evol_elas - elif AsType(RESULTAT) == dyna_harmo : - return dyna_harmo - elif AsType(RESULTAT) == dyna_trans : - return dyna_trans - else : - return None - -OBSERVATION=MACRO(nom="OBSERVATION", - op=OPS('Macro.observation_ops.observation_ops'), - UIinfo={"groupes":("Matrices et vecteurs",)}, - sd_prod=observation_prod, - fr="Calcul de l'observabilite d'un champ aux noeuds ", -# - MODELE_1 =SIMP(statut='o',typ=modele_sdaster), - MODELE_2 =SIMP(statut='o',typ=modele_sdaster), - RESULTAT =SIMP(statut='o',typ=(mode_meca,evol_elas,dyna_harmo,dyna_trans,) ), - NOM_CHAM =SIMP(statut='o',typ='TXM',validators=NoRepeat(),max='**',into=C_NOM_CHAM_INTO(),), - -# ------------------------------------------------------------------ - - regles=(UN_PARMI('TOUT_ORDRE','NUME_ORDRE','FREQ','LIST_FREQ','NUME_MODE','INST','LIST_INST' ),), - TOUT_ORDRE =SIMP(statut='f',typ='TXM',into=("OUI",) ), - NUME_ORDRE =SIMP(statut='f',typ='I',validators=NoRepeat(),max='**' ), - FREQ =SIMP(statut='f',typ='R',validators=NoRepeat(),max='**' ), - LIST_FREQ =SIMP(statut='f',typ=listr8_sdaster), - NUME_MODE =SIMP(statut='f',typ='I',validators=NoRepeat(),max='**' ), - LIST_ORDRE =SIMP(statut='f',typ=listis_sdaster), - INST =SIMP(statut='f',typ='R',validators=NoRepeat(),max='**' ), - LIST_INST =SIMP(statut='f',typ=listr8_sdaster), - NOEUD_CMP =SIMP(statut='f',typ='TXM',validators=NoRepeat(),max='**'), - -# ------------------------------------------------------------------ -# OPTIONS DE PROJ_CHAMP (SANS MC FACTEUR PARTICULIER) -# ------------------------------------------------------------------ - PROJECTION =SIMP(statut='f',max=1,typ='TXM',into=("OUI","NON"),defaut="OUI"), - CAS_FIGURE =SIMP(statut='f',typ='TXM',into=("2D","3D","2.5D","1.5D",) ), - DISTANCE_MAX =SIMP(statut='f',typ='R', - fr="Distance maximale entre le noeud et l'élément le plus proche, lorsque le noeud n'est dans aucun élément."), - ALARME =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON") ), - - TYPE_CHAM =SIMP(statut='f',typ='TXM',into=("NOEU",), - fr="Pour forcer le type des champs projetés. NOEU -> cham_no"), - -# PROL_ZERO =SIMP(statut='f',typ='TXM',into=("OUI","NON"),defaut="NON", -# fr="Si le résultat est un mode_xxx ou une base_xxx, on peut prolonger" -# +" les champs par zéro la ou la projection ne donne pas de valeurs."), - - MATR_RIGI =SIMP(statut='f',typ=(matr_asse_depl_r) ), - MATR_MASS =SIMP(statut='f',typ=(matr_asse_depl_r) ), - VIS_A_VIS =FACT(statut='f',max='**', - regles=(AU_MOINS_UN('TOUT_1','GROUP_MA_1','MAILLE_1','GROUP_NO_1','NOEUD_1'), - AU_MOINS_UN('TOUT_2','GROUP_MA_2','MAILLE_2','GROUP_NO_2','NOEUD_2'),), - TOUT_1 =SIMP(statut='f',typ='TXM',into=("OUI",) ), - GROUP_MA_1 =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - MAILLE_1 =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), - GROUP_NO_1 =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'), - NOEUD_1 =SIMP(statut='f',typ=no ,validators=NoRepeat(),max='**'), - TOUT_2 =SIMP(statut='f',typ='TXM',into=("OUI",) ), - GROUP_MA_2 =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - MAILLE_2 =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), - GROUP_NO_2 =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'), - NOEUD_2 =SIMP(statut='f',typ=no ,validators=NoRepeat(),max='**'), - CAS_FIGURE =SIMP(statut='f',typ='TXM',into=("2D","3D","2.5D","1.5D",) ), - ), - -# ------------------------------------------------------------------ -# MODI_REPERE -# ------------------------------------------------------------------ - MODI_REPERE =FACT(statut='f',max='**', - regles=(UN_PARMI('REPERE'), - AU_MOINS_UN('TOUT','GROUP_MA','MAILLE','GROUP_NO','NOEUD'),), - GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - GROUP_NO =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'), - MAILLE =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), - NOEUD =SIMP(statut='f',typ=no ,validators=NoRepeat(),max='**'), - TOUT =SIMP(statut='f',typ='TXM',into=("OUI",) ), -# - TYPE_CHAM =SIMP(statut='f',typ='TXM', - into=("VECT_2D","VECT_3D","TENS_2D","TENS_3D"), - defaut="VECT_3D"), - b_vect_2d =BLOC(condition = "TYPE_CHAM=='VECT_2D'", - NOM_CMP =SIMP(statut='o',typ='TXM',min=2,max=2 ),), - b_vect_3d =BLOC(condition = "TYPE_CHAM=='VECT_3D'", - NOM_CMP =SIMP(statut='f',typ='TXM',min=3,max=3,defaut=('DX','DY','DZ') ),), - b_tens_2d =BLOC(condition = "TYPE_CHAM=='TENS_2D'", - NOM_CMP =SIMP(statut='f',typ='TXM',min=4,max=4,defaut=('EPXX','EPYY','EPZZ','EPXY',) ),), - b_tens_3d =BLOC(condition = "TYPE_CHAM=='TENS_3D'", - NOM_CMP =SIMP(statut='f',typ='TXM',min=6,max=6,defaut=('EPXX','EPYY','EPZZ','EPXY','EPXZ','EPYZ',),),), - - REPERE =SIMP(statut='o',typ='TXM', - into=("UTILISATEUR","CYLINDRIQUE","NORMALE","DIR_JAUGE"),), - b_normale =BLOC(condition = "REPERE=='NORMALE'", - regles=(UN_PARMI('VECT_X','VECT_Y')), - VECT_X =SIMP(statut='f',typ='R',min=3,max=3), - VECT_Y =SIMP(statut='f',typ='R',min=3,max=3), ), - b_utilisateur =BLOC(condition = "REPERE=='UTILISATEUR'", - ANGL_NAUT =SIMP(statut='o',typ='R',max=3)), - b_cylindrique =BLOC(condition = "REPERE=='CYLINDRIQUE'", - ORIGINE =SIMP(statut='o',typ='R',min=2,max=3), - AXE_Z =SIMP(statut='o',typ='R',min=3,max=3)), - b_dir_jauge =BLOC(condition = "REPERE=='DIR_JAUGE'", - VECT_X =SIMP(statut='f',typ='R',min=3,max=3), - VECT_Y =SIMP(statut='f',typ='R',min=3,max=3), ), - ), - -# ------------------------------------------------------------------ -# EPSI_MOYENNE -# ------------------------------------------------------------------ - EPSI_MOYENNE =FACT(statut='f',max='**', - regles=(AU_MOINS_UN('GROUP_MA','MAILLE','GROUP_NO','NOEUD'),), - NOEUD = SIMP(statut='f',typ=no ,validators=NoRepeat(),max='**'), - GROUP_NO = SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'), - MAILLE =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), - GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - SEUIL_VARI =SIMP(statut='f',typ='R',validators=NoRepeat(),defaut=0.1,), - MASQUE =SIMP(statut='f',typ='TXM',max=6), - ), - -# ------------------------------------------------------------------ -# FILTRE DES DDL -# ------------------------------------------------------------------ - FILTRE =FACT(statut='f',max='**', - regles=(UN_PARMI('DDL_ACTIF'), -# 'MASQUE'), - AU_MOINS_UN('TOUT','GROUP_MA','MAILLE','GROUP_NO','NOEUD'),), - GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - GROUP_NO =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'), - MAILLE =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), - NOEUD =SIMP(statut='f',typ=no ,validators=NoRepeat(),max='**'), - TOUT =SIMP(statut='f',typ='TXM',into=("OUI",) ), - NOM_CHAM =SIMP(statut='o',typ='TXM',validators=NoRepeat(),into=C_NOM_CHAM_INTO(),), - -# - DDL_ACTIF =SIMP(statut='f',typ='TXM',max=6), -# TODO : mettre en place le systeme de masques -# MASQUE =SIMP(statut='f',typ='TXM',max=6), - ), -# ------------------------------------------------------------------ - - TITRE =SIMP(statut='f',typ='TXM',max='**' ), - INFO =SIMP(statut='f',typ='I',defaut=1,into=(1,2)), - ) ; - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2013 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: romeo.fernandes at edf.fr - -PERM_MAC3COEUR = MACRO(nom="PERM_MAC3COEUR", - op=OPS("Mac3coeur.perm_mac3coeur_ops.perm_mac3coeur_ops"), - sd_prod=evol_noli, - - TYPE_COEUR = SIMP(statut='o',typ='TXM',into=("MONO","TEST","900","1300","N4","EPR") ), - TABLE_N = SIMP(statut='o',typ=table_sdaster), # TABLE INITIALE DES DAMAC A L INSTANT N - RESU_N = SIMP(statut='o',typ=evol_noli), # RESULTAT A L INSTANT N A PERMUTER - TABLE_NP1 = SIMP(statut='o',typ=table_sdaster), # TABLE INITIALE DES DAMAC A L INSTANT N+1 - MAILLAGE_NP1 = SIMP(statut='o',typ=maillage_sdaster),); # MAILLAGE A L INSTANT N+1 - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2011 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: renaud.bargellini at edf.fr - -POST_BORDET =MACRO(nom="POST_BORDET", - op=OPS('Macro.post_bordet_ops.post_bordet_ops'), - sd_prod=table_sdaster, - UIinfo={"groupes":("Outils-métier","Rupture",)}, - reentrant='n', - fr="calcul de la probabilite de clivage via le modele de Bordet", - regles=(UN_PARMI('TOUT','GROUP_MA'), - UN_PARMI('INST','NUME_ORDRE'), - ), - TOUT =SIMP(statut='f',typ='TXM',into=("OUI",)), - GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**', - fr="le calcul ne sera effectué que sur ces mailles"), - INST =SIMP(statut='f',typ='R',validators=NoRepeat(),), - PRECISION =SIMP(statut='f',typ='R',validators=NoRepeat(),val_min=0.,val_max=1E-3,defaut=1E-6), - CRITERE =SIMP(statut='f',typ='TXM',defaut="ABSOLU",into=("RELATIF","ABSOLU") ), - NUME_ORDRE =SIMP(statut='f',typ='I',validators=NoRepeat(),), - PROBA_NUCL =SIMP(statut='f',typ='TXM',into=("NON","OUI"), defaut="NON", - fr="prise en compte du facteur exponentiel"), - b_nucl =BLOC( condition = "PROBA_NUCL=='OUI'", - PARAM =FACT(statut='o', - M =SIMP(statut='o',typ='R',val_min=0.E+0), - SIGM_REFE =SIMP(statut='o',typ=(fonction_sdaster),val_min=0.E+0), - VOLU_REFE =SIMP(statut='o',typ='R',val_min=0.E+0), - SIG_CRIT =SIMP(statut='o',typ='R',val_min=0.E+0), - SEUIL_REFE =SIMP(statut='o',typ='R',val_min=0.E+0), - SEUIL_CALC =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster)), - DEF_PLAS_REFE =SIMP(statut='o',typ='R'),),), - - b_prop =BLOC( condition = "PROBA_NUCL=='NON'", - PARAM =FACT(statut='o', - M =SIMP(statut='o',typ='R',val_min=0.E+0), - SIGM_REFE =SIMP(statut='o',typ=fonction_sdaster,val_min=0.E+0), - VOLU_REFE =SIMP(statut='o',typ='R',val_min=0.E+0), - SIG_CRIT =SIMP(statut='o',typ='R',val_min=0.E+0), - SEUIL_REFE =SIMP(statut='o',typ='R',val_min=0.E+0), - SEUIL_CALC =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster),), - ), - ), - - RESULTAT =SIMP(statut='o',typ=resultat_sdaster, - fr="Resultat d'une commande globale STAT_NON_LINE"), - TEMP =SIMP(statut='o',typ=(fonction_sdaster,'R')), - COEF_MULT =SIMP(statut='f',typ='R', defaut=1.), - ) - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2013 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: samuel.geniaut at edf.fr -def post_cham_xfem_prod(RESULTAT,**args ): - - if AsType(RESULTAT) == evol_noli : return evol_noli - if AsType(RESULTAT) == mode_meca : return mode_meca - if AsType(RESULTAT) == evol_elas : return evol_elas - if AsType(RESULTAT) == evol_ther : return evol_ther - - raise AsException("type de concept resultat non prevu") - -POST_CHAM_XFEM=OPER(nom="POST_CHAM_XFEM",op= 196,sd_prod=post_cham_xfem_prod, - reentrant='n',UIinfo={"groupes":("Post-traitements","Rupture",)}, - fr="Calcul des champs DEPL, SIEF_ELGA et VARI_ELGA sur le maillage de visualisation (fissuré)", - RESULTAT = SIMP(statut='o',typ=resultat_sdaster), - MODELE_VISU = SIMP(statut='o',typ=modele_sdaster,), - INFO = SIMP(statut='f',typ='I',defaut= 1,into=(1,2,) ), -); - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2013 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: jacques.pellet at edf.fr - -def post_champ_prod(RESULTAT,**args): - if AsType(RESULTAT) != None : return AsType(RESULTAT) - raise AsException("type de concept resultat non prevu") - - -# liste des options possibles pour les 4 mots clés EXTR_COQUE, EXTR_TUYAY, EXTR_PMF et MIN_MAX_SP : -liste_option_extr=("EPEQ_ELGA","EPEQ_ELNO","EPSI_ELGA","EPSI_ELNO", - "SIEF_ELGA","SIEF_ELNO", - "SIEQ_ELGA","SIEQ_ELNO","SIGM_ELGA","SIGM_ELNO", - "VARI_ELGA","VARI_ELNO",) - - -POST_CHAMP=OPER(nom="POST_CHAMP",op=155,sd_prod=post_champ_prod, reentrant='n', - UIinfo={"groupes":("Post-traitements","Eléments de structure",)}, - fr="extraction de champs sur un sous-point. ", - - regles=(UN_PARMI('EXTR_COQUE','EXTR_TUYAU','EXTR_PMF','MIN_MAX_SP','COQU_EXCENT'), - EXCLUS('TOUT_ORDRE','NUME_ORDRE','INST','FREQ','NUME_MODE','NOEUD_CMP', - 'LIST_INST','LIST_FREQ','LIST_ORDRE','NOM_CAS',), - ), - - RESULTAT =SIMP(statut='o',typ=resultat_sdaster, - fr="Resultat d'une commande globale"), - - -#==== -# Sélection des numéros d'ordre pour lesquels on fait le calcul : -#==== - TOUT_ORDRE =SIMP(statut='f',typ='TXM',into=("OUI",) ), - NUME_ORDRE =SIMP(statut='f',typ='I',validators=NoRepeat(),max='**' ), - NUME_MODE =SIMP(statut='f',typ='I',validators=NoRepeat(),max='**'), - LIST_ORDRE =SIMP(statut='f',typ=listis_sdaster), - NOEUD_CMP =SIMP(statut='f',typ='TXM',validators=NoRepeat(),max='**'), - NOM_CAS =SIMP(statut='f',typ='TXM',validators=NoRepeat(),max='**'), - INST =SIMP(statut='f',typ='R',validators=NoRepeat(),max='**' ), - LIST_INST =SIMP(statut='f',typ=listr8_sdaster), - FREQ =SIMP(statut='f',typ='R',validators=NoRepeat(),max='**' ), - LIST_FREQ =SIMP(statut='f',typ=listr8_sdaster), - - b_acce_reel =BLOC(condition="(FREQ != None)or(LIST_FREQ != None)or(INST != None)or(LIST_INST != None)", - CRITERE =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU",),), - b_prec_rela=BLOC(condition="(CRITERE=='RELATIF')", - PRECISION =SIMP(statut='f',typ='R',defaut= 1.E-6,),), - b_prec_abso=BLOC(condition="(CRITERE=='ABSOLU')", - PRECISION =SIMP(statut='o',typ='R',),), - ), - - -#==== -# Sélection de la zone géométrique: -#==== - TOUT =SIMP(statut='f',typ='TXM',into=("OUI",) ), - GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - MAILLE =SIMP(statut='f',typ=ma,validators=NoRepeat(),max='**'), - - - -#==== -# Extraction sur un sous-point d'une coque : -#==== - EXTR_COQUE =FACT(statut='f', max=1, fr="extraction sur un sous-point d'une coque", - NOM_CHAM =SIMP(statut='o',typ='TXM',validators=NoRepeat(),max='**', - into=liste_option_extr,), - NUME_COUCHE =SIMP(statut='o',typ='I',val_min=1, - fr="numero de couche dans l'épaisseur de la coque" ), - NIVE_COUCHE =SIMP(statut='o',typ='TXM',into=("SUP","INF","MOY"), - fr="position dans l'épaisseur de la couche" ), - ), - - -#==== -# Extraction sur un sous-point d'un tuyau : -#==== - EXTR_TUYAU =FACT(statut='f', max=1, fr="extraction sur un sous-point d'un tuyau", - NOM_CHAM =SIMP(statut='o',typ='TXM',validators=NoRepeat(),max='**', - into=liste_option_extr ,), - NUME_COUCHE =SIMP(statut='o',typ='I',val_min=1, - fr="numero de couche dans l'épaisseur du tuyau" ), - NIVE_COUCHE =SIMP(statut='o',typ='TXM',into=("SUP","INF","MOY"), - fr="position dans l'épaisseur de la couche" ), - ANGLE =SIMP(statut='o',typ='I',val_min=0,val_max=360, - fr="angle de dépouillement pour les tuyaux, en degrés à partir de la génératrice" ), - ), - - -#==== -# Extraction sur un sous-point d'une poutre multifibre : -#==== - EXTR_PMF =FACT(statut='f', max=1, fr="extraction sur un sous-point d'une poutre multifibre", - NOM_CHAM =SIMP(statut='o',typ='TXM',validators=NoRepeat(),max='**', - into=liste_option_extr,), - NUME_FIBRE =SIMP(statut='o',typ='I',val_min=1, - fr="numéro de la fibre dans la poutre multifibre" ), - ), - - -#==== -# Extraction des min / max sur les sous-points : -#==== - MIN_MAX_SP =FACT(statut='f', max='**', fr="extraction du min/max d'une composante pour un champ", - NOM_CHAM =SIMP(statut='o',typ='TXM', - into=liste_option_extr,), - NOM_CMP =SIMP(statut='o',typ='TXM',fr="nom de la composante", ), - TYPE_MAXI =SIMP(statut='o',typ='TXM',into=("MAXI","MINI","MAXI_ABS","MINI_ABS",) ), - NUME_CHAM_RESU = SIMP(statut='o', typ='I', val_min=1, val_max=20, - fr="Numéro du champ produit. Exemple: 6 produit le champ UT06",), - ), - - -#==== -# Calcul des efforts des coques "excentrées" sur le feuillet moyen de la coque : -#==== - COQU_EXCENT =FACT(statut='f', max=2, fr="Calcul des efforts d'une coque 'excentrée' sur le feuillet moyen de la coque", - NOM_CHAM =SIMP(statut='o',typ='TXM',into=("EFGE_ELNO","EFGE_ELGA",),), - MODI_PLAN =SIMP(statut='o',typ='TXM',into=("OUI",),), - ), - ) - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2011 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: xavier.desroches at edf.fr - -POST_COQUE=MACRO(nom="POST_COQUE", - op=OPS('Macro.post_coque_ops.post_coque_ops'), - sd_prod=table_sdaster, - reentrant='n', - UIinfo={"groupes":("Post-traitements",)}, - fr="Calcul des efforts et déformations en un point et une cote " \ - "quelconque de la coque", - - regles=(EXCLUS('INST','NUME_ORDRE'),), - - # SD résultat et champ à posttraiter : - RESULTAT =SIMP(statut='o',typ=resultat_sdaster,fr="RESULTAT à posttraiter",), - CHAM =SIMP(statut='o',typ='TXM',into=("EFFORT","DEFORMATION",)), - NUME_ORDRE =SIMP(statut='f',typ='I'), - INST =SIMP(statut='f',typ='R'), - - # points de post-traitement : - COOR_POINT =FACT(statut='o',max='**',fr="coordonnées et position dans l'épaisseur", - COOR=SIMP(statut='o',typ='R',min=3,max=4),), - - ) - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2011 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: Georges-cc.devesa at edf.fr - - -POST_DECOLLEMENT=MACRO(nom="POST_DECOLLEMENT", - op=OPS('Macro.post_decollement_ops.post_decollement_ops'), - sd_prod=table_sdaster, - fr="calcul du rapport de surfaces de contact radier/sol", - reentrant='n', - UIinfo={"groupes":("Post-traitements",)}, - RESULTAT =SIMP(statut='o',typ=(evol_noli) ), - NOM_CHAM =SIMP(statut='f',typ='TXM',validators=NoRepeat(),defaut='DEPL',into=C_NOM_CHAM_INTO(),max=1), - NOM_CMP =SIMP(statut='f',typ='TXM',defaut='DZ',max=1), - GROUP_MA =SIMP(statut='o',typ=grma,max=1), - INFO =SIMP(statut='f',typ='I',defaut=1,into=(1,2) ), -) - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2013 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: irmela.zentner at edf.fr -POST_DYNA_ALEA=MACRO(nom="POST_DYNA_ALEA", - op=OPS('Macro.post_dyna_alea_ops.post_dyna_alea_ops'), - sd_prod=table_sdaster, - fr="traitements statistiques de résultats de type interspectre " \ - "et impression sur fichiers", - reentrant='n', - UIinfo={"groupes":("Post-traitements","Dynamique",)}, - regles=(UN_PARMI('FRAGILITE','INTERSPECTRE'),), - FRAGILITE =FACT(statut='f',fr="donnees pour courbe de fragilite",max=1, - TABL_RESU =SIMP(statut='o',typ=table_sdaster), - regles=(UN_PARMI('VALE','LIST_PARA'),), - VALE = SIMP(statut='f',typ='R', min=1,validators=NoRepeat(),max='**' ), - LIST_PARA = SIMP(statut='f',typ=listr8_sdaster), - AM_INI = SIMP(statut='f',typ='R',defaut= 0.4 ), - BETA_INI = SIMP(statut='f',typ='R',defaut= 0.3 ), - FRACTILE = SIMP(statut='f',typ='R', min=1,validators=NoRepeat(),max='**'), - b_inte_spec_f = BLOC(condition="""FRACTILE !=None""", - NB_TIRAGE =SIMP(statut='f',typ='I' ),), - ), - INTERSPECTRE =FACT(statut='f',fr="donnees pour interspectre",max=1, - regles=(UN_PARMI('NOEUD_I','NUME_ORDRE_I','OPTION'),), - INTE_SPEC =SIMP(statut='o',typ=interspectre), - NUME_ORDRE_I =SIMP(statut='f',typ='I',max='**' ), - NOEUD_I =SIMP(statut='f',typ=no,max='**'), - OPTION =SIMP(statut='f',typ='TXM',into=("DIAG","TOUT",) ), - b_nume_ordre_i =BLOC(condition = "NUME_ORDRE_I != None", - NUME_ORDRE_J =SIMP(statut='o',typ='I',max='**' ), - ), - b_noeud_i =BLOC(condition = "NOEUD_I != None", - NOEUD_J =SIMP(statut='o',typ=no,max='**'), - NOM_CMP_I =SIMP(statut='o',typ='TXM',max='**' ), - NOM_CMP_J =SIMP(statut='o',typ='TXM',max='**' ), - ), - MOMENT =SIMP(statut='f',typ='I',max='**',fr="Moments spectraux "\ - "en complément des cinq premiers" ), - DUREE =SIMP(statut='f',typ='R',fr="durée de la phase forte "\ - "pour facteur de peak" ), - ), - TITRE =SIMP(statut='f',typ='TXM',max='**' ), - INFO =SIMP(statut='f',typ='I',defaut= 1,into=(1,2) ), -) ; - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: emmanuel.boyere at edf.fr -POST_DYNA_MODA_T=OPER(nom="POST_DYNA_MODA_T",op= 130,sd_prod=table_sdaster, - fr="Post-traiter les résultats en coordonnées généralisées produit par DYNA_TRAN_MODAL", - reentrant='n', - UIinfo={"groupes":("Post-traitements","Dynamique",)}, - regles=(UN_PARMI('CHOC','RELA_EFFO_DEPL', ),), - RESU_GENE =SIMP(statut='o',typ=tran_gene ), - CHOC =FACT(statut='f',max='**', - fr="Analyse des non linéarités de choc", - INST_INIT =SIMP(statut='f',typ='R',defaut= -1. ), - INST_FIN =SIMP(statut='f',typ='R',defaut= 999. ), - NB_BLOC =SIMP(statut='f',typ='I',defaut= 1 ), - SEUIL_FORCE =SIMP(statut='f',typ='R',defaut= 0.E+0 ), - DUREE_REPOS =SIMP(statut='f',typ='R',defaut= 0.E+0 ), - OPTION =SIMP(statut='f',typ='TXM',defaut="USURE",into=("IMPACT","USURE") ), - NB_CLASSE =SIMP(statut='f',typ='I',defaut= 10 ), - ), - RELA_EFFO_DEPL =FACT(statut='f', - fr="Analyse des relationsnon linéaires effort-déplacement", - NOEUD =SIMP(statut='o',typ=no), - NOM_CMP =SIMP(statut='o',typ='TXM' ), - ), - INFO =SIMP(statut='f',typ='I',defaut= 1,into=(1,2) ), - TITRE =SIMP(statut='f',typ='TXM',max='**' ), -) ; - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2013 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: josselin.delmas at edf.fr - -POST_ELEM=OPER(nom="POST_ELEM",op=107,sd_prod=table_sdaster,reentrant='n', - UIinfo={"groupes":("Post-traitements","Résultats et champs",)}, - fr="Calcul de quantités globales (masse, inerties, énergie, ...) sur tout ou partie du modèle", - - regles=(UN_PARMI('MASS_INER', 'ENER_POT', 'ENER_CIN','TRAV_EXT','MINMAX', - 'WEIBULL', 'RICE_TRACEY', 'CARA_GEOM','CHAR_LIMITE','NORME', - 'CARA_POUTRE', 'INDIC_ENER', 'INDIC_SEUIL','VOLUMOGRAMME', - 'AIRE_INTERNE','ENER_ELAS','ENER_TOTALE','ENER_DISS','INTEGRALE'), - ), - - MASS_INER = FACT(statut='f',max='**', - regles=(UN_PARMI('TOUT','GROUP_MA','MAILLE'),), - TOUT = SIMP(statut='f',typ='TXM',into=("OUI",) ), - MAILLE = SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), - GROUP_MA = SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - ORIG_INER = SIMP(statut='f',typ='R',min=3,max=3 ), - ), - b_mass_iner = BLOC(condition = "( MASS_INER != None )", - fr="calcul de la masse, les inerties et le centre de gravité", - regles=(EXCLUS('CHAM_GD','RESULTAT'), - EXCLUS('TOUT_ORDRE','NUME_ORDRE','INST','FREQ','NUME_MODE', - 'NOEUD_CMP','LIST_ORDRE','LIST_INST','LIST_FREQ','NOM_CAS'),), - MODELE = SIMP(statut='f',typ=modele_sdaster), - CHAM_MATER = SIMP(statut='f',typ=cham_mater), - CARA_ELEM = SIMP(statut='f',typ=cara_elem), - CHARGE = SIMP(statut='f',typ=(char_meca,char_cine_meca, - char_ther,char_acou),validators=NoRepeat(),max='**' ), - NUME_COUCHE = SIMP(statut='f',typ='I',defaut=1), - NIVE_COUCHE = SIMP(statut='f',typ='TXM',defaut="MOY",into=("INF","SUP","MOY"),), - MODE_FOURIER = SIMP(statut='f',typ='I',defaut=0), - GEOMETRIE = SIMP(statut='f',typ='TXM',defaut="INITIALE",into=("INITIALE","DEFORMEE")), - CHAM_GD = SIMP(statut='f',typ=(cham_no_sdaster,cham_elem) ), - RESULTAT = SIMP(statut='f',typ=(mode_meca,evol_elas,evol_noli,mult_elas, - fourier_elas,dyna_trans) ), - CRITERE =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU",),), - b_prec_rela=BLOC(condition="(CRITERE=='RELATIF')", - PRECISION =SIMP(statut='f',typ='R',defaut= 1.E-6,),), - b_prec_abso=BLOC(condition="(CRITERE=='ABSOLU')", - PRECISION =SIMP(statut='o',typ='R',),), - TOUT_ORDRE = SIMP(statut='f',typ='TXM',into=("OUI",) ), - NUME_ORDRE = SIMP(statut='f',typ='I',), - LIST_ORDRE = SIMP(statut='f',typ=listis_sdaster), - INST = SIMP(statut='f',typ='R',), - LIST_INST = SIMP(statut='f',typ=listr8_sdaster), - FREQ = SIMP(statut='f',typ='R',), - LIST_FREQ = SIMP(statut='f',typ=listr8_sdaster), - NUME_MODE = SIMP(statut='f',typ='I',), - NOEUD_CMP = SIMP(statut='f',typ='TXM',min=2,validators=NoRepeat(),max=2), - NOM_CAS = SIMP(statut='f',typ='TXM',), - ), - - ENER_POT = FACT(statut='f',max='**', - regles=(UN_PARMI('TOUT','GROUP_MA','MAILLE'),), - TOUT = SIMP(statut='f',typ='TXM',into=("OUI",) ), - MAILLE = SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), - GROUP_MA = SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - ), - b_ener_pot = BLOC(condition = "( ENER_POT != None )", - fr="calcul de l'énergie potentielle de déformation", - regles=(UN_PARMI('CHAM_GD','RESULTAT'), - EXCLUS('TOUT_ORDRE','NUME_ORDRE','INST','FREQ','NUME_MODE', - 'NOEUD_CMP','LIST_ORDRE','LIST_INST','LIST_FREQ','NOM_CAS'),), - MODELE = SIMP(statut='f',typ=modele_sdaster), - CHAM_MATER = SIMP(statut='f',typ=cham_mater), - CARA_ELEM = SIMP(statut='f',typ=cara_elem), - CHARGE = SIMP(statut='f',typ=(char_meca,char_cine_meca, - char_ther,char_acou),validators=NoRepeat(),max='**' ), - NUME_COUCHE = SIMP(statut='f',typ='I',defaut=1), - NIVE_COUCHE = SIMP(statut='f',typ='TXM',defaut="MOY",into=("INF","SUP","MOY"),), - ANGLE = SIMP(statut='f',typ='I',defaut=0), - MODE_FOURIER = SIMP(statut='f',typ='I',defaut=0), - CHAM_GD = SIMP(statut='f',typ=(cham_no_sdaster,cham_elem) ), - RESULTAT = SIMP(statut='f',typ=(mode_meca,evol_elas,evol_ther,evol_noli,dyna_trans,mult_elas) ), - CRITERE =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU",),), - b_prec_rela=BLOC(condition="(CRITERE=='RELATIF')", - PRECISION =SIMP(statut='f',typ='R',defaut= 1.E-6,),), - b_prec_abso=BLOC(condition="(CRITERE=='ABSOLU')", - PRECISION =SIMP(statut='o',typ='R',),), - TOUT_ORDRE = SIMP(statut='f',typ='TXM',into=("OUI",) ), - NUME_ORDRE = SIMP(statut='f',typ='I',validators=NoRepeat(),max='**'), - LIST_ORDRE = SIMP(statut='f',typ=listis_sdaster), - INST = SIMP(statut='f',typ='R',validators=NoRepeat(),max='**'), - LIST_INST = SIMP(statut='f',typ=listr8_sdaster), - FREQ = SIMP(statut='f',typ='R',validators=NoRepeat(),max='**'), - LIST_FREQ = SIMP(statut='f',typ=listr8_sdaster), - NUME_MODE = SIMP(statut='f',typ='I' ,validators=NoRepeat(),max='**'), - NOEUD_CMP = SIMP(statut='f',typ='TXM',validators=NoRepeat(),max='**'), - NOM_CAS = SIMP(statut='f',typ='TXM',validators=NoRepeat(),max='**'), - ), - - ENER_CIN = FACT(statut='f',max='**', - regles=(UN_PARMI('TOUT','GROUP_MA','MAILLE'),), - OPTION = SIMP(statut='f',typ='TXM',validators=NoRepeat(), - into=("MASS_MECA","MASS_MECA_DIAG"), - defaut="MASS_MECA" ), - TOUT = SIMP(statut='f',typ='TXM',into=("OUI",) ), - MAILLE = SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), - GROUP_MA = SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - ), - b_ener_cin = BLOC(condition = "( ENER_CIN != None )", - fr="calcul de l'énergie cinétique", - regles=(UN_PARMI('CHAM_GD','RESULTAT'), - EXCLUS('TOUT_ORDRE','NUME_ORDRE','INST','FREQ','NUME_MODE', - 'NOEUD_CMP','LIST_ORDRE','LIST_INST','LIST_FREQ','NOM_CAS'),), - MODELE = SIMP(statut='f',typ=modele_sdaster), - CHAM_MATER = SIMP(statut='f',typ=cham_mater), - CARA_ELEM = SIMP(statut='f',typ=cara_elem), - CHARGE = SIMP(statut='f',typ=(char_meca,char_cine_meca, - char_ther,char_acou),validators=NoRepeat(),max='**' ), - NUME_COUCHE = SIMP(statut='f',typ='I',defaut=1), - NIVE_COUCHE = SIMP(statut='f',typ='TXM',defaut="MOY",into=("INF","SUP","MOY"),), - ANGLE = SIMP(statut='f',typ='I',defaut=0), - MODE_FOURIER = SIMP(statut='f',typ='I',defaut=0), - CHAM_GD = SIMP(statut='f',typ=(cham_no_sdaster,cham_elem) ), - RESULTAT = SIMP(statut='f',typ=(mode_meca,evol_elas,evol_ther,evol_noli,dyna_trans) ), - CRITERE =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU",),), - b_prec_rela=BLOC(condition="(CRITERE=='RELATIF')", - PRECISION =SIMP(statut='f',typ='R',defaut= 1.E-6,),), - b_prec_abso=BLOC(condition="(CRITERE=='ABSOLU')", - PRECISION =SIMP(statut='o',typ='R',),), - TOUT_ORDRE = SIMP(statut='f',typ='TXM',into=("OUI",) ), - NUME_ORDRE = SIMP(statut='f',typ='I',validators=NoRepeat(),max='**'), - LIST_ORDRE = SIMP(statut='f',typ=listis_sdaster), - INST = SIMP(statut='f',typ='R',validators=NoRepeat(),max='**'), - LIST_INST = SIMP(statut='f',typ=listr8_sdaster), - FREQ = SIMP(statut='f',typ='R',validators=NoRepeat(),max='**'), - LIST_FREQ = SIMP(statut='f',typ=listr8_sdaster), - NUME_MODE = SIMP(statut='f',typ='I',validators=NoRepeat(),max='**'), - NOEUD_CMP = SIMP(statut='f',typ='TXM',validators=NoRepeat(),max='**'), - NOM_CAS = SIMP(statut='f',typ='TXM',validators=NoRepeat(),max='**'), - ), - - ENER_DISS = FACT(statut='f',max='**', - regles=(UN_PARMI('TOUT','GROUP_MA','MAILLE'),), - TOUT = SIMP(statut='f',typ='TXM',into=("OUI",) ), - MAILLE = SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), - GROUP_MA = SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - ), - b_ener_diss = BLOC(condition = "( ENER_DISS != None )", - fr="calcul de l'énergie dissipée", - MODELE = SIMP(statut='f',typ=modele_sdaster), - CHAM_MATER = SIMP(statut='f',typ=cham_mater), - CARA_ELEM = SIMP(statut='f',typ=cara_elem), - CHARGE = SIMP(statut='f',typ=(char_meca,char_cine_meca, - char_ther,char_acou),validators=NoRepeat(),max='**' ), - NUME_COUCHE = SIMP(statut='f',typ='I',defaut=1), - NIVE_COUCHE = SIMP(statut='f',typ='TXM',defaut="MOY",into=("INF","SUP","MOY"),), - MODE_FOURIER = SIMP(statut='f',typ='I',defaut=0), - RESULTAT = SIMP(statut='o',typ=(evol_noli) ), - regles=(EXCLUS('TOUT_ORDRE','NUME_ORDRE','LIST_ORDRE','INST','LIST_INST'),), - CRITERE =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU",),), - b_prec_rela=BLOC(condition="(CRITERE=='RELATIF')", - PRECISION =SIMP(statut='f',typ='R',defaut= 1.E-6,),), - b_prec_abso=BLOC(condition="(CRITERE=='ABSOLU')", - PRECISION =SIMP(statut='o',typ='R',),), - TOUT_ORDRE = SIMP(statut='f',typ='TXM',into=("OUI",) ), - NUME_ORDRE = SIMP(statut='f',typ='I',validators=NoRepeat(),max='**'), - LIST_ORDRE = SIMP(statut='f',typ=listis_sdaster), - INST = SIMP(statut='f',typ='R',validators=NoRepeat(),max='**'), - LIST_INST = SIMP(statut='f',typ=listr8_sdaster), - ), - - - ENER_ELAS = FACT(statut='f',max='**', - regles=(UN_PARMI('TOUT','GROUP_MA','MAILLE'),), - TOUT = SIMP(statut='f',typ='TXM',into=("OUI",) ), - MAILLE = SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), - GROUP_MA = SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - ), - b_ener_elas = BLOC(condition = "( ENER_ELAS != None )", - fr="calcul de l'énergie de déformation élastique", - MODELE = SIMP(statut='f',typ=modele_sdaster), - CHAM_MATER = SIMP(statut='f',typ=cham_mater), - CARA_ELEM = SIMP(statut='f',typ=cara_elem), - CHARGE = SIMP(statut='f',typ=(char_meca,char_cine_meca, - char_ther,char_acou),validators=NoRepeat(),max='**' ), - NUME_COUCHE = SIMP(statut='f',typ='I',defaut=1), - NIVE_COUCHE = SIMP(statut='f',typ='TXM',defaut="MOY",into=("INF","SUP","MOY"),), - MODE_FOURIER = SIMP(statut='f',typ='I',defaut=0), - RESULTAT = SIMP(statut='o',typ=(evol_noli,evol_elas) ), - regles=(EXCLUS('TOUT_ORDRE','NUME_ORDRE','LIST_ORDRE','INST','LIST_INST'),), - CRITERE =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU",),), - b_prec_rela=BLOC(condition="(CRITERE=='RELATIF')", - PRECISION =SIMP(statut='f',typ='R',defaut= 1.E-6,),), - b_prec_abso=BLOC(condition="(CRITERE=='ABSOLU')", - PRECISION =SIMP(statut='o',typ='R',),), - TOUT_ORDRE = SIMP(statut='f',typ='TXM',into=("OUI",) ), - NUME_ORDRE = SIMP(statut='f',typ='I',validators=NoRepeat(),max='**'), - LIST_ORDRE = SIMP(statut='f',typ=listis_sdaster), - INST = SIMP(statut='f',typ='R',validators=NoRepeat(),max='**'), - LIST_INST = SIMP(statut='f',typ=listr8_sdaster), - ), - - ENER_TOTALE = FACT(statut='f',max='**', - regles=(UN_PARMI('TOUT','GROUP_MA','MAILLE'),), - TOUT = SIMP(statut='f',typ='TXM',into=("OUI",) ), - MAILLE = SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), - GROUP_MA = SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - ), - b_ener_totale = BLOC(condition = "( ENER_TOTALE != None )", - fr="calcul de l'énergie de déformation totale", - MODELE = SIMP(statut='f',typ=modele_sdaster), - CHAM_MATER = SIMP(statut='f',typ=cham_mater), - CARA_ELEM = SIMP(statut='f',typ=cara_elem), - CHARGE = SIMP(statut='f',typ=(char_meca,char_cine_meca, - char_ther,char_acou),validators=NoRepeat(),max='**' ), - NUME_COUCHE = SIMP(statut='f',typ='I',defaut=1), - NIVE_COUCHE = SIMP(statut='f',typ='TXM',defaut="MOY",into=("INF","SUP","MOY"),), - MODE_FOURIER = SIMP(statut='f',typ='I',defaut=0), - RESULTAT = SIMP(statut='o',typ=(evol_noli) ), - regles=(EXCLUS('TOUT_ORDRE','NUME_ORDRE','LIST_ORDRE','INST','LIST_INST'),), - CRITERE =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU",),), - b_prec_rela=BLOC(condition="(CRITERE=='RELATIF')", - PRECISION =SIMP(statut='f',typ='R',defaut= 1.E-6,),), - b_prec_abso=BLOC(condition="(CRITERE=='ABSOLU')", - PRECISION =SIMP(statut='o',typ='R',),), - TOUT_ORDRE = SIMP(statut='f',typ='TXM',into=("OUI",) ), - NUME_ORDRE = SIMP(statut='f',typ='I',validators=NoRepeat(),max='**'), - LIST_ORDRE = SIMP(statut='f',typ=listis_sdaster), - INST = SIMP(statut='f',typ='R',validators=NoRepeat(),max='**'), - LIST_INST = SIMP(statut='f',typ=listr8_sdaster), - ), - - INTEGRALE = FACT(statut='f',max='**', - regles=(UN_PARMI('TOUT','GROUP_MA','MAILLE'),), - TOUT = SIMP(statut='f',typ='TXM',into=("OUI",) ), - MAILLE = SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), - GROUP_MA = SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - NOM_CHAM = SIMP(statut='f',typ='TXM',validators=NoRepeat(),into=C_NOM_CHAM_INTO()), - NOM_CMP = SIMP(statut='o',typ='TXM',validators=NoRepeat(),max='**'), - DEJA_INTEGRE = SIMP(statut='f',typ='TXM',into=("OUI","NON",),), - ), - b_integrale = BLOC(condition = "( INTEGRALE != None )", - fr="calcul de la moyenne d'une composante", - regles=(UN_PARMI('CHAM_GD','RESULTAT'), - EXCLUS('TOUT_ORDRE','NUME_ORDRE','INST','LIST_ORDRE','LIST_INST'),), - MODELE = SIMP(statut='f',typ=modele_sdaster), - CHAM_MATER = SIMP(statut='f',typ=cham_mater), - RESULTAT = SIMP(statut='f',typ=(evol_noli,evol_ther,evol_elas,evol_char) ), - CHAM_GD = SIMP(statut='f',typ=(cham_no_sdaster,cham_elem) ), - CRITERE =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU",),), - b_prec_rela=BLOC(condition="(CRITERE=='RELATIF')", - PRECISION =SIMP(statut='f',typ='R',defaut= 1.E-6,),), - b_prec_abso=BLOC(condition="(CRITERE=='ABSOLU')", - PRECISION =SIMP(statut='o',typ='R',),), - TOUT_ORDRE = SIMP(statut='f',typ='TXM',into=("OUI",) ), - NUME_ORDRE = SIMP(statut='f',typ='I',validators=NoRepeat(),max='**'), - LIST_ORDRE = SIMP(statut='f',typ=listis_sdaster), - INST = SIMP(statut='f',typ='R',validators=NoRepeat(),max='**'), - LIST_INST = SIMP(statut='f',typ=listr8_sdaster), - ), - - VOLUMOGRAMME = FACT(statut='f',max='**', - regles=(UN_PARMI('TOUT','GROUP_MA'), - UN_PARMI('NB_INTERV','SEUIL'),), - TOUT = SIMP(statut='f',typ='TXM',into=("OUI",) ), - GROUP_MA = SIMP(statut='f',typ=grma,max=1), - TYPE_MAILLE = SIMP(statut='f',typ='TXM',into=('2D','3D',)), - NOM_CHAM = SIMP(statut='f',typ='TXM',validators=NoRepeat(),into=C_NOM_CHAM_INTO()), - NOM_CMP = SIMP(statut='o',typ='TXM'), - NB_INTERV = SIMP(statut='f',typ='I'), - SEUIL = SIMP(statut='f',typ='R'), - BORNES = SIMP(statut='f',typ='R',validators=NoRepeat(),min=2,max=2), - NORME = SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU")), - ), - b_volumogramme = BLOC(condition = "( VOLUMOGRAMME != None )", - fr="calcul de la distribution du volume d'une structure vis-à-vis d'une composante", - regles=(UN_PARMI('CHAM_GD','RESULTAT'), - EXCLUS('TOUT_ORDRE','NUME_ORDRE','INST','LIST_ORDRE','LIST_INST'),), - MODELE = SIMP(statut='f',typ=modele_sdaster), - CHAM_MATER = SIMP(statut='f',typ=cham_mater), - RESULTAT = SIMP(statut='f',typ=(evol_noli,evol_ther,evol_elas,evol_char) ), - CHAM_GD = SIMP(statut='f',typ=(cham_no_sdaster,cham_elem) ), - CRITERE =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU",),), - b_prec_rela=BLOC(condition="(CRITERE=='RELATIF')", - PRECISION =SIMP(statut='f',typ='R',defaut= 1.E-6,),), - b_prec_abso=BLOC(condition="(CRITERE=='ABSOLU')", - PRECISION =SIMP(statut='o',typ='R',),), - TOUT_ORDRE = SIMP(statut='f',typ='TXM',into=("OUI",) ), - NUME_ORDRE = SIMP(statut='f',typ='I',validators=NoRepeat(),max='**'), - LIST_ORDRE = SIMP(statut='f',typ=listis_sdaster), - INST = SIMP(statut='f',typ='R',validators=NoRepeat(),max='**'), - LIST_INST = SIMP(statut='f',typ=listr8_sdaster), - ), - - NORME = FACT(statut='f',max=1, - fr="calcul des extrema en espace d'une CMP d'un champ, pour tous les instants spécifiés", - regles=(UN_PARMI('TOUT','GROUP_MA'), - UN_PARMI('CHAM_GD','RESULTAT'), - PRESENT_PRESENT('CHAM_GD','MODELE'), - PRESENT_PRESENT('RESULTAT','NOM_CHAM'),), - TOUT = SIMP(statut='f',typ='TXM',into=("OUI",) ), - GROUP_MA = SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - TYPE_MAILLE = SIMP(statut='f',typ='TXM',into=('2D','3D',)), - TYPE_NORM = SIMP(statut='f',typ='TXM',into=('L2','FROBENIUS')), - RESULTAT = SIMP(statut='f',typ=(evol_noli,evol_ther,evol_elas) ), - NOM_CHAM = SIMP(statut='f',typ='TXM',validators=NoRepeat(), - into=("DEPL","TEMP","NEUT_R", - "FLUX_ELGA","FLUX_ELNO","FLUX_NOEU", - "EPSI_ELGA","EPSI_ELNO","EPSI_NOEU", - "SIEF_ELGA","SIEF_ELNO","SIEF_NOEU")), - CHAM_GD = SIMP(statut='f',typ=(cham_no_sdaster,cham_elem) ), - MODELE = SIMP(statut='f',typ=modele_sdaster), - - b_norme_GD = BLOC(condition = "( CHAM_GD != None )", - COEF_MULT = SIMP(statut='f',typ='R',max=30), - ), - - b_norme = BLOC(condition = "( RESULTAT != None )", - regles=(EXCLUS('TOUT_ORDRE','NUME_ORDRE','LIST_ORDRE','INST','LIST_INST'),), - CRITERE =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU",),), - b_prec_rela=BLOC(condition="(CRITERE=='RELATIF')", - PRECISION =SIMP(statut='f',typ='R',defaut= 1.E-6,),), - b_prec_abso=BLOC(condition="(CRITERE=='ABSOLU')", - PRECISION =SIMP(statut='o',typ='R',),), - TOUT_ORDRE = SIMP(statut='f',typ='TXM',into=("OUI",) ), - NUME_ORDRE = SIMP(statut='f',typ='I',validators=NoRepeat(),max='**'), - LIST_ORDRE = SIMP(statut='f',typ=listis_sdaster), - INST = SIMP(statut='f',typ='R',validators=NoRepeat(),max='**'), - LIST_INST = SIMP(statut='f',typ=listr8_sdaster), - ), - ), - - - MINMAX = FACT(statut='f',max=1, - fr="calcul des extrema en espace d'une CMP d'un champ, pour tous les instants spécifiés", - regles=(UN_PARMI('CHAM_GD','RESULTAT'), - PRESENT_PRESENT('CHAM_GD','MODELE'), - PRESENT_PRESENT('RESULTAT','NOM_CHAM'), - UN_PARMI('TOUT','GROUP_MA'),), - TOUT = SIMP(statut='f',typ='TXM',into=("OUI",) ), - GROUP_MA = SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - RESULTAT = SIMP(statut='f',typ=(evol_noli,evol_ther,evol_elas) ), - NOM_CHAM = SIMP(statut='f',typ='TXM',into=C_NOM_CHAM_INTO()), - CHAM_GD = SIMP(statut='f',typ=(cham_no_sdaster,cham_elem) ), - MODELE = SIMP(statut='f',typ=modele_sdaster), - NOM_CMP = SIMP(statut='o',typ='TXM',validators=NoRepeat(),max='**'), - b_minmax = BLOC(condition = "( RESULTAT != None )", - regles=(EXCLUS('TOUT_ORDRE','NUME_ORDRE','LIST_ORDRE','INST','LIST_INST'),), - CRITERE =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU",),), - b_prec_rela=BLOC(condition="(CRITERE=='RELATIF')", - PRECISION =SIMP(statut='f',typ='R',defaut= 1.E-6,),), - b_prec_abso=BLOC(condition="(CRITERE=='ABSOLU')", - PRECISION =SIMP(statut='o',typ='R',),), - TOUT_ORDRE = SIMP(statut='f',typ='TXM',into=("OUI",) ), - NUME_ORDRE = SIMP(statut='f',typ='I',validators=NoRepeat(),max='**'), - LIST_ORDRE = SIMP(statut='f',typ=listis_sdaster), - INST = SIMP(statut='f',typ='R',validators=NoRepeat(),max='**'), - LIST_INST = SIMP(statut='f',typ=listr8_sdaster), - ), - ), - - WEIBULL = FACT(statut='f',max='**', - regles=(UN_PARMI('TOUT','GROUP_MA','MAILLE'),), - TOUT = SIMP(statut='f',typ='TXM',into=("OUI",) ), - MAILLE = SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), - GROUP_MA = SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - OPTION = SIMP(statut='f',typ='TXM',validators=NoRepeat(), - into=("SIGM_ELGA","SIGM_ELMOY"), - defaut="SIGM_ELGA"), - CORR_PLAST = SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON")), - COEF_MULT = SIMP(statut='f',typ='R',defaut=1.), - ), - b_weibull = BLOC(condition = "( WEIBULL != None )", - fr="calcul du champ élémentaire de la puissance m-ième de la contrainte de Weibull", - regles=(UN_PARMI('CHAM_GD','RESULTAT'), - EXCLUS('TOUT_ORDRE','NUME_ORDRE','LIST_ORDRE','INST','LIST_INST'),), - MODELE = SIMP(statut='f',typ=modele_sdaster), - CHAM_MATER = SIMP(statut='f',typ=cham_mater), - CARA_ELEM = SIMP(statut='f',typ=cara_elem), - CHARGE = SIMP(statut='f',typ=(char_meca,char_cine_meca, - char_ther,char_acou),validators=NoRepeat(),max='**' ), - NUME_COUCHE = SIMP(statut='f',typ='I',defaut=1), - NIVE_COUCHE = SIMP(statut='f',typ='TXM',defaut="MOY",into=("INF","SUP","MOY"),), - MODE_FOURIER = SIMP(statut='f',typ='I',defaut=0), - CHAM_GD = SIMP(statut='f',typ=(cham_no_sdaster,cham_elem) ), - RESULTAT = SIMP(statut='f',typ=(evol_noli) ), - CRITERE =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU",),), - b_prec_rela=BLOC(condition="(CRITERE=='RELATIF')", - PRECISION =SIMP(statut='f',typ='R',defaut= 1.E-6,),), - b_prec_abso=BLOC(condition="(CRITERE=='ABSOLU')", - PRECISION =SIMP(statut='o',typ='R',),), - TOUT_ORDRE = SIMP(statut='f',typ='TXM',into=("OUI",) ), - NUME_ORDRE = SIMP(statut='f',typ='I',validators=NoRepeat(),max='**'), - LIST_ORDRE = SIMP(statut='f',typ=listis_sdaster), - INST = SIMP(statut='f',typ='R',validators=NoRepeat(),max='**'), - LIST_INST = SIMP(statut='f',typ=listr8_sdaster), - ), - - RICE_TRACEY = FACT(statut='f',max='**', - regles=(UN_PARMI('TOUT','GROUP_MA','MAILLE'),), - TOUT = SIMP(statut='f',typ='TXM',into=("OUI",) ), - MAILLE = SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), - GROUP_MA = SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - OPTION = SIMP(statut='f',typ='TXM',validators=NoRepeat(), - into=("SIGM_ELGA","SIGM_ELMOY"), - defaut="SIGM_ELGA"), - LOCAL = SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON")), - ), - b_rice_tracey = BLOC(condition = "( RICE_TRACEY != None )", - fr="calcul du taux de croissance d'une cavité sphérique par rapport à un domaine", - regles=(UN_PARMI('CHAM_GD','RESULTAT'), - EXCLUS('TOUT_ORDRE','NUME_ORDRE','LIST_ORDRE','INST','LIST_INST'),), - MODELE = SIMP(statut='f',typ=modele_sdaster), - CHAM_MATER = SIMP(statut='f',typ=cham_mater), - CARA_ELEM = SIMP(statut='f',typ=cara_elem), - CHARGE = SIMP(statut='f',typ=(char_meca,char_cine_meca, - char_ther,char_acou),validators=NoRepeat(),max='**' ), - NUME_COUCHE = SIMP(statut='f',typ='I',defaut=1), - NIVE_COUCHE = SIMP(statut='f',typ='TXM',defaut="MOY",into=("INF","SUP","MOY"),), - MODE_FOURIER = SIMP(statut='f',typ='I',defaut=0), - CHAM_GD = SIMP(statut='f',typ=(cham_no_sdaster,cham_elem) ), - RESULTAT = SIMP(statut='f',typ=(evol_noli) ), - CRITERE =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU",),), - b_prec_rela=BLOC(condition="(CRITERE=='RELATIF')", - PRECISION =SIMP(statut='f',typ='R',defaut= 1.E-6,),), - b_prec_abso=BLOC(condition="(CRITERE=='ABSOLU')", - PRECISION =SIMP(statut='o',typ='R',),), - TOUT_ORDRE = SIMP(statut='f',typ='TXM',into=("OUI",) ), - NUME_ORDRE = SIMP(statut='f',typ='I',validators=NoRepeat(),max='**'), - LIST_ORDRE = SIMP(statut='f',typ=listis_sdaster), - INST = SIMP(statut='f',typ='R',validators=NoRepeat(),max='**'), - LIST_INST = SIMP(statut='f',typ=listr8_sdaster), - ), - - INDIC_ENER = FACT(statut='f',max='**', - regles=(UN_PARMI('TOUT','GROUP_MA','MAILLE'),), - TOUT = SIMP(statut='f',typ='TXM',into=("OUI",) ), - MAILLE = SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), - GROUP_MA = SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - ), - b_indic_ener = BLOC(condition = "( INDIC_ENER != None )", - fr="calcul un indicateur global de perte de proportionnalité du chargement", - MODELE = SIMP(statut='f',typ=modele_sdaster), - CHAM_MATER = SIMP(statut='f',typ=cham_mater), - CHARGE = SIMP(statut='f',typ=(char_meca,char_cine_meca, - char_ther,char_acou),validators=NoRepeat(),max='**' ), - MODE_FOURIER = SIMP(statut='f',typ='I',defaut=0), - RESULTAT = SIMP(statut='o',typ=(evol_noli) ), - regles=(EXCLUS('TOUT_ORDRE','NUME_ORDRE','LIST_ORDRE','INST','LIST_INST'),), - CRITERE =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU",),), - b_prec_rela=BLOC(condition="(CRITERE=='RELATIF')", - PRECISION =SIMP(statut='f',typ='R',defaut= 1.E-6,),), - b_prec_abso=BLOC(condition="(CRITERE=='ABSOLU')", - PRECISION =SIMP(statut='o',typ='R',),), - TOUT_ORDRE = SIMP(statut='f',typ='TXM',into=("OUI",) ), - NUME_ORDRE = SIMP(statut='f',typ='I',validators=NoRepeat(),max='**'), - LIST_ORDRE = SIMP(statut='f',typ=listis_sdaster), - INST = SIMP(statut='f',typ='R',validators=NoRepeat(),max='**'), - LIST_INST = SIMP(statut='f',typ=listr8_sdaster), - ), - - INDIC_SEUIL = FACT(statut='f',max='**', - regles=(UN_PARMI('TOUT','GROUP_MA','MAILLE'),), - TOUT = SIMP(statut='f',typ='TXM',into=("OUI",) ), - MAILLE = SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), - GROUP_MA = SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - ), - b_indic_seuil = BLOC(condition = "( INDIC_SEUIL != None )", - fr="calcul un indicateur global de perte de proportionnalité du chargement", - MODELE = SIMP(statut='f',typ=modele_sdaster), - CHAM_MATER = SIMP(statut='f',typ=cham_mater), - CHARGE = SIMP(statut='f',typ=(char_meca,char_cine_meca, - char_ther,char_acou),validators=NoRepeat(),max='**' ), - MODE_FOURIER = SIMP(statut='f',typ='I',defaut=0), - RESULTAT = SIMP(statut='o',typ=(evol_noli) ), - regles=(EXCLUS('TOUT_ORDRE','NUME_ORDRE','LIST_ORDRE','INST','LIST_INST'),), - CRITERE =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU",),), - b_prec_rela=BLOC(condition="(CRITERE=='RELATIF')", - PRECISION =SIMP(statut='f',typ='R',defaut= 1.E-6,),), - b_prec_abso=BLOC(condition="(CRITERE=='ABSOLU')", - PRECISION =SIMP(statut='o',typ='R',),), - TOUT_ORDRE = SIMP(statut='f',typ='TXM',into=("OUI",) ), - NUME_ORDRE = SIMP(statut='f',typ='I',validators=NoRepeat(),max='**'), - LIST_ORDRE = SIMP(statut='f',typ=listis_sdaster), - INST = SIMP(statut='f',typ='R',validators=NoRepeat(),max='**'), - LIST_INST = SIMP(statut='f',typ=listr8_sdaster), - ), - - CHAR_LIMITE = FACT(statut='f',min=0, - CHAR_CSTE = SIMP(statut='f',typ='TXM',into=("OUI","NON"),defaut="NON") - ), - b_char_limite = BLOC(condition = "( CHAR_LIMITE != None )", - fr="post-traitement du calcul de la charge limite", - MODELE = SIMP(statut='f',typ=modele_sdaster), - CHAM_MATER = SIMP(statut='f',typ=cham_mater), - CARA_ELEM = SIMP(statut='f',typ=cara_elem), - CHARGE = SIMP(statut='f',typ=(char_meca,char_cine_meca, - char_ther,char_acou),validators=NoRepeat(),max='**' ), - MODE_FOURIER = SIMP(statut='f',typ='I',defaut=0), - RESULTAT = SIMP(statut='o',typ=(evol_noli) ), - regles=(EXCLUS('TOUT_ORDRE','NUME_ORDRE','LIST_ORDRE','INST','LIST_INST'),), - CRITERE =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU",),), - b_prec_rela=BLOC(condition="(CRITERE=='RELATIF')", - PRECISION =SIMP(statut='f',typ='R',defaut= 1.E-6,),), - b_prec_abso=BLOC(condition="(CRITERE=='ABSOLU')", - PRECISION =SIMP(statut='o',typ='R',),), - TOUT_ORDRE = SIMP(statut='f',typ='TXM',into=("OUI",) ), - NUME_ORDRE = SIMP(statut='f',typ='I',validators=NoRepeat(),max='**'), - LIST_ORDRE = SIMP(statut='f',typ=listis_sdaster), - INST = SIMP(statut='f',typ='R',validators=NoRepeat(),max='**'), - LIST_INST = SIMP(statut='f',typ=listr8_sdaster), - ), - - CARA_GEOM = FACT(statut='f',max='**', - regles=(AU_MOINS_UN('TOUT','GROUP_MA','MAILLE'),), - TOUT = SIMP(statut='f',typ='TXM',into=("OUI",) ), - MAILLE = SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), - GROUP_MA = SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - SYME_X = SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON") ), - SYME_Y = SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON") ), - ORIG_INER = SIMP(statut='f',typ='R',min=2,max=2), - ), - b_cara_geom = BLOC(condition = "( CARA_GEOM != None )", - fr="calcul des caractéristiques géométriques d'un section de poutre", - MODELE = SIMP(statut='f',typ=modele_sdaster), - CHAM_MATER = SIMP(statut='f',typ=cham_mater), - CHARGE = SIMP(statut='f',typ=(char_meca,char_cine_meca, - char_ther,char_acou),validators=NoRepeat(),max='**' ), - MODE_FOURIER = SIMP(statut='f',typ='I',defaut=0), - ), - - CARA_POUTRE = FACT(statut='f',max='**', - regles=(UN_PARMI('TOUT','GROUP_MA'), - ENSEMBLE('LONGUEUR','LIAISON','MATERIAU'),), - TOUT = SIMP(statut='f',typ='TXM',into=("OUI",) ), - GROUP_MA = SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - GROUP_MA_INTE = SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - CARA_GEOM = SIMP(statut='o',typ=table_sdaster), - RT = SIMP(statut='f',typ='R'), - LAPL_PHI = SIMP(statut='f',typ=evol_ther), - LAPL_PHI_Y = SIMP(statut='f',typ=evol_ther), - LAPL_PHI_Z = SIMP(statut='f',typ=evol_ther), - LIAISON = SIMP(statut='f',typ='TXM',into=("ROTULE","ENCASTREMENT")), - LONGUEUR = SIMP(statut='f',typ='R'), - MATERIAU = SIMP(statut='f',typ=mater_sdaster), - OPTION = SIMP(statut='f',typ='TXM',validators=NoRepeat(), - into=("CARA_TORSION","CARA_CISAILLEMENT","CARA_GAUCHI") ), - ), - b_cara_poutre = BLOC(condition = "( CARA_POUTRE != None )", - fr="calcul des caractéristiques mécaniques d'un section de poutre", - MODELE = SIMP(statut='f',typ=modele_sdaster), - CHAM_MATER = SIMP(statut='f',typ=cham_mater), - CHARGE = SIMP(statut='f',typ=(char_meca,char_cine_meca, - char_ther,char_acou),validators=NoRepeat(),max='**' ), - MODE_FOURIER = SIMP(statut='f',typ='I',defaut=0), - ), - - AIRE_INTERNE = FACT(statut='f',max='**', - GROUP_MA_BORD = SIMP(statut='o',typ=grma,validators=NoRepeat(),max='**'), - ), - b_aire_interne = BLOC(condition = "( AIRE_INTERNE != None )", - fr="calcul de l'aire d'un trou dans un maillage 2D", - MODELE = SIMP(statut='f',typ=modele_sdaster), - ), - - TRAV_EXT = FACT(statut='f',), - b_trav_ext = BLOC(condition = "( TRAV_EXT != None )", - fr="calcul du travail des efforts extérieurs", - RESULTAT = SIMP(statut='o',typ=(evol_elas,evol_noli,dyna_trans) ), - CRITERE =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU",),), - b_prec_rela=BLOC(condition="(CRITERE=='RELATIF')", - PRECISION =SIMP(statut='f',typ='R',defaut= 1.E-6,),), - b_prec_abso=BLOC(condition="(CRITERE=='ABSOLU')", - PRECISION =SIMP(statut='o',typ='R',),), - TOUT_ORDRE = SIMP(statut='f',typ='TXM',into=("OUI",) ), - ), - - TITRE =SIMP(statut='f',typ='TXM',max='**' ), - INFO =SIMP(statut='f',typ='I',defaut=1,into=(1,2)), - - ) ; - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2012 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: marina.bottoni at edf.fr - -# --------------------------------------------------------------------------- -# POST_ENDO_FISS -# RECHERCHE DU TRAJET DE FISSURATION SUR UN -# CHAMP SCALAIRE 2D - - -def post_endo_fiss_prod(self,TABLE,**args) : - self.typeSDProd(TABLE,table_sdaster) - return maillage_sdaster - -POST_ENDO_FISS=MACRO(nom="POST_ENDO_FISS", - op=OPS('Macro.post_endo_fiss_ops.post_endo_fiss_ops'), - sd_prod=post_endo_fiss_prod, - reentrant='n', - UIinfo={"groupes":("Post-traitements","Outils-métier",)}, - fr="Individuation du trace d'une fissure a partir d'un champ scalaire pertinant", - - TABLE = SIMP(statut = 'o', typ = CO,), - - regles = (UN_PARMI("RESULTAT","CHAM_GD"), - ), - OUVERTURE = SIMP(statut = 'f', typ = 'TXM', into=('OUI','NON',), defaut = 'NON' ), - b_resultat = BLOC(condition = "RESULTAT != None", - regles = (UN_PARMI('NUME_ORDRE','INST'),), - NUME_ORDRE = SIMP(statut = 'f', typ = 'I', validators = NoRepeat(), ), - INST = SIMP(statut = 'f', typ = 'R', validators = NoRepeat(), ), - ), - - #b_champ = BLOC(condition = "CHAM_GD != None",), - - CHAM_GD = SIMP(statut = 'f',typ = (cham_gd_sdaster)), - RESULTAT = SIMP(statut = 'f',typ = (evol_noli)), - NOM_CMP = SIMP(statut = 'o',typ='TXM',), - NOM_CHAM = SIMP(statut = 'o', typ = 'TXM', - fr = "nom du champ a post-traiter",), - - RECHERCHE = FACT(statut = 'o',min=1,max='**', - regles = ( - PRESENT_ABSENT('TOUT','GROUP_MA',), - ), - LONG_ORTH = SIMP(statut='o', typ='R'), - NB_POINT = SIMP(statut='f', typ='I', defaut = 500), - PAS = SIMP(statut='o', typ='R', ), - LONG_REG = SIMP(statut='o', typ='R'), - BORNE_MIN = SIMP(statut='f', typ='R', defaut=0.5), - ANGL_MAX = SIMP(statut='f', typ='R', defaut=120.), - TOUT = SIMP(statut='f', typ='TXM', into=('OUI',) ), - GROUP_MA = SIMP(statut='f', typ=grma, validators=NoRepeat(), ), - BORNE_MAX = SIMP(statut='f', typ='R'), - ), - ) - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: irmela.zentner at edf.fr -POST_FATI_ALEA=OPER(nom="POST_FATI_ALEA",op=170,sd_prod=table_sdaster,reentrant='n', - UIinfo={"groupes":("Post-traitements","Rupture",)}, - fr="Calculer le dommage de fatigue subi par une structure soumise à une sollicitation de type aléatoire", - regles=(ENSEMBLE('MOMENT_SPEC_0','MOMENT_SPEC_2'), - PRESENT_PRESENT( 'MOMENT_SPEC_4','MOMENT_SPEC_0'), - UN_PARMI('TABL_POST_ALEA','MOMENT_SPEC_0'), ), - MOMENT_SPEC_0 =SIMP(statut='f',typ='R'), - MOMENT_SPEC_2 =SIMP(statut='f',typ='R'), - MOMENT_SPEC_4 =SIMP(statut='f',typ='R'), - TABL_POST_ALEA =SIMP(statut='f',typ=table_sdaster), - COMPTAGE =SIMP(statut='o',typ='TXM',into=("PIC","NIVEAU")), - DUREE =SIMP(statut='f',typ='R',defaut= 1.), - CORR_KE =SIMP(statut='f',typ='TXM',into=("RCCM",)), - DOMMAGE =SIMP(statut='o',typ='TXM',into=("WOHLER",)), - MATER =SIMP(statut='o',typ=mater_sdaster), - TITRE =SIMP(statut='f',typ='TXM',max='**'), -) ; - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2012 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: van-xuan.tran at edf.fr -POST_FATIGUE=OPER(nom="POST_FATIGUE",op=136,sd_prod=table_sdaster,reentrant='n', - UIinfo={"groupes":("Post-traitements","Rupture",)}, - fr="Calculer en un point, le dommage de fatigue subi par une structure soumise à une histoire de chargement", - - CHARGEMENT = SIMP(statut='o',typ='TXM',into=("UNIAXIAL","MULTIAXIAL","QUELCONQUE")), - - b_uniaxial = BLOC( condition = "CHARGEMENT=='UNIAXIAL'", - regles=(PRESENT_PRESENT('CORR_KE','MATER'), - PRESENT_PRESENT('CORR_SIGM_MOYE','MATER'), - PRESENT_PRESENT('DOMMAGE','MATER'),), - HISTOIRE = FACT(statut='o', - regles=(UN_PARMI('SIGM','EPSI'),), - SIGM = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - EPSI = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)),), - COMPTAGE = SIMP(statut='o',typ='TXM',into=("RAINFLOW","RAINFLOW_MAX","RCCM","NATUREL")), - DELTA_OSCI = SIMP(statut='f',typ='R',defaut= 0.0E+0), - COEF_MULT = FACT(statut='f', - KT = SIMP(statut='o',typ='R'),), - CORR_KE = SIMP(statut='f',typ='TXM',into=("RCCM",)), - DOMMAGE = SIMP(statut='f',typ='TXM',into=("WOHLER","MANSON_COFFIN", - "TAHERI_MANSON","TAHERI_MIXTE")), - MATER = SIMP(statut='f',typ=mater_sdaster), - CORR_SIGM_MOYE = SIMP(statut='f',typ='TXM',into=("GOODMAN","GERBER")), - TAHERI_NAPPE = SIMP(statut='f',typ=(nappe_sdaster,formule)), - TAHERI_FONC = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - CUMUL = SIMP(statut='f',typ='TXM',into=("LINEAIRE",)), - ), - - b_multiaxial = BLOC( condition = "CHARGEMENT=='MULTIAXIAL'", - HISTOIRE = FACT(statut='o', - regles=(PRESENT_PRESENT('SIGM_XX','SIGM_YY','SIGM_ZZ','SIGM_XY','SIGM_XZ','SIGM_YZ'), - PRESENT_PRESENT('EPS_XX','EPS_YY','EPS_ZZ','EPS_XY','EPS_XZ','EPS_YZ'), - PRESENT_PRESENT('EPSP_XX','EPSP_YY','EPSP_ZZ','EPSP_XY','EPSP_XZ','EPSP_YZ'), - AU_MOINS_UN('SIGM_XX','SIGM_YY','SIGM_ZZ','SIGM_XY','SIGM_XZ','SIGM_YZ', - 'EPS_XX','EPS_YY','EPS_ZZ','EPS_XY','EPS_XZ','EPS_YZ', - 'EPSP_XX','EPSP_YY','EPSP_ZZ','EPSP_XY','EPSP_XZ','EPSP_YZ'), - ), - SIGM_XX = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - SIGM_YY = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - SIGM_ZZ = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - SIGM_XY = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - SIGM_XZ = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - SIGM_YZ = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - - EPS_XX = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - EPS_YY = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - EPS_ZZ = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - EPS_XY = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - EPS_XZ = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - EPS_YZ = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - - EPSP_XX = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - EPSP_YY = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - EPSP_ZZ = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - EPSP_XY = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - EPSP_XZ = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - EPSP_YZ = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - ), - - TYPE_CHARGE = SIMP(statut='o',typ='TXM',into=("PERIODIQUE","NON_PERIODIQUE")), - DOMMAGE = SIMP(statut='f',typ='TXM',into=("WOHLER","MANSON_C","FORM_VIE") ), - - b_fati_pfvie = BLOC(condition = "(DOMMAGE == 'FORM_VIE')", - FORMULE_VIE =SIMP(statut='o',typ=(fonction_sdaster,formule) ), - ), - - MATER = SIMP(statut='f',typ=mater_sdaster), - COEF_CORR = SIMP(statut='f',typ='R'), - COEF_PREECROU =SIMP(statut='f',typ='R',defaut= 1.0E+0), - - - b_period =BLOC(condition = "TYPE_CHARGE == 'PERIODIQUE'", - CRITERE =SIMP(statut='o',typ='TXM',into=("MATAKE_MODI_AC","DANG_VAN_MODI_AC","CROSSLAND", - "PAPADOPOULOS","FORMULE_CRITERE") ), - - METHODE =SIMP(statut='f',typ='TXM',into=("CERCLE_EXACT",) ), - b_fati_pf =BLOC(condition = "(CRITERE == 'FORMULE_CRITERE')", - FORMULE_GRDEQ = SIMP(statut='o',typ=(fonction_sdaster,formule) ), - FORMULE_CRITIQUE = SIMP(statut='f',typ=(fonction_sdaster,formule) ), - ), - ), - - b_non_period =BLOC(condition = "TYPE_CHARGE == 'NON_PERIODIQUE'", - CRITERE =SIMP(statut='o',typ='TXM', - into=("MATAKE_MODI_AV","DANG_VAN_MODI_AV","FATESOCI_MODI_AV","FORMULE_CRITERE") ), - PROJECTION =SIMP(statut='o',typ='TXM',into=("UN_AXE", "DEUX_AXES") ), - DELTA_OSCI =SIMP(statut='f',typ='R',defaut= 0.0E+0), - - b_fati_npf =BLOC(condition = "(CRITERE == 'FORMULE_CRITERE')", - FORMULE_GRDEQ =SIMP(statut='o',typ=(fonction_sdaster,formule) ), - ), - ), - - ), - - b_quelconque = BLOC( condition = "CHARGEMENT=='QUELCONQUE'", - HISTOIRE = FACT(statut='o', - SIGM_XX = SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - SIGM_YY = SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - SIGM_ZZ = SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - SIGM_XY = SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - SIGM_XZ = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - SIGM_YZ = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - EPSP = SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - TEMP = SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)),), - DOMMAGE = SIMP(statut='f',typ='TXM',into=("LEMAITRE",),), - MATER = SIMP(statut='o',typ=mater_sdaster), - CUMUL = SIMP(statut='f',typ='TXM',into=("LINEAIRE",)), - ), - - INFO =SIMP(statut='f',typ='I',defaut=1,into=(1,2)), - TITRE =SIMP(statut='f',typ='TXM',max='**'), -) ; - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2013 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: samuel.geniaut at edf.fr - -POST_K1_K2_K3=MACRO(nom="POST_K1_K2_K3", - op=OPS('Macro.post_k1_k2_k3_ops.post_k1_k2_k3_ops'), - sd_prod=table_sdaster, - fr="Calcul des facteurs d'intensité de contraintes en 2D et en 3D par "\ - "extrapolation des sauts de déplacements sur les lèvres de la fissure", - reentrant='n', - UIinfo={"groupes":("Post-traitements","Rupture",)}, - - regles=(UN_PARMI('FISSURE','FOND_FISS'),), - - MODELISATION =SIMP(statut='o',typ='TXM', - into=("3D","AXIS","D_PLAN","C_PLAN"),position='global', - fr="Modélisation cohérente avec celle utilisée pour le calcul des déplacements"), - FOND_FISS =SIMP(statut='f',typ=fond_fiss), - FISSURE =SIMP(statut='f',typ=fiss_xfem), - RESULTAT =SIMP(statut='o',typ=(evol_elas,evol_noli,mode_meca),position='global', - fr="Déplacement des noeuds de la lèvre supérieure et inférieure"), - NB_NOEUD_COUPE=SIMP(statut='f',typ='I',defaut=5,val_min = 3), - -# bloc correspondant a la donnee du fond de fissure pour les fissures maillees - b_fond_fiss =BLOC (condition="FOND_FISS!= None", - - b_no_mod =BLOC (condition="AsType(RESULTAT)!= mode_meca", - - EVOL_THER = SIMP(statut='f',typ=(evol_ther),fr="Température sur le fond de fissure"), - b_ref_3D = BLOC (condition="MODELISATION=='3D' ", - TYPE_MAILLAGE = SIMP(statut='f',typ='TXM',into=("LIBRE","REGLE"),defaut="REGLE"), - ), - ), - b_mod =BLOC (condition="AsType(RESULTAT)== mode_meca and MODELISATION=='3D'", - TYPE_MAILLAGE = SIMP(statut='f',typ='TXM',into=("REGLE",),defaut="REGLE"), - ), - - NOEUD = SIMP(statut='f',typ=no ,validators=NoRepeat(),max='**'), - GROUP_NO = SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'), - SANS_NOEUD = SIMP(statut='f',typ=no ,validators=NoRepeat(),max='**'), - SANS_GROUP_NO = SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'), - TOUT = SIMP(statut='f',typ='TXM',into=("OUI",) ), - ABSC_CURV_MAXI=SIMP(statut='f',typ='R', - fr="Distance maximum à partir du fond de fissure à utiliser pour le calcul"), - ), - -# bloc correspondant a la donnee de la fissure pour les fissures X-FEM - b_fissure =BLOC (condition="FISSURE!= None", - NB_POINT_FOND = SIMP(statut='f',typ='I' ,), - NUME_FOND = SIMP(statut='f',typ='I',defaut=1), - ABSC_CURV_MAXI=SIMP(statut='f',typ='R', - fr="Distance maximum à partir du fond de fissure à utiliser pour le calcul"), - ), - - MATER =SIMP(statut='o',typ=mater_sdaster, - fr="Matériau homogène et isotrope cohérent avec celui utilisé pour le calcul des déplacements"), - - - PREC_VIS_A_VIS=SIMP(statut='f',typ='R',defaut=0.1), - - b_mod_meca =BLOC (condition="AsType(RESULTAT)== mode_meca ", - TOUT_ORDRE =SIMP(statut='f',typ='TXM',into=("OUI",) ), - NUME_ORDRE =SIMP(statut='f',typ='I',validators=NoRepeat(),max='**'), - LIST_ORDRE =SIMP(statut='f',typ=listis_sdaster), - TOUT_MODE =SIMP(statut='f',typ='TXM',into=("OUI",) ), - NUME_MODE =SIMP(statut='f',typ='I',validators=NoRepeat(),max='**'), - LIST_MODE =SIMP(statut='f',typ=listis_sdaster), - FREQ =SIMP(statut='f',typ='R',validators=NoRepeat(),max='**'), - LIST_FREQ =SIMP(statut='f',typ=listr8_sdaster), - b_acce_reel =BLOC(condition="(FREQ!=None) or (LIST_FREQ!=None)", - CRITERE =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU") ), - b_prec_rela=BLOC(condition="(CRITERE=='RELATIF')", - PRECISION =SIMP(statut='f',typ='R',defaut= 1.E-6,),), - b_prec_abso=BLOC(condition="(CRITERE=='ABSOLU')", - PRECISION =SIMP(statut='o',typ='R',),), - ), - ), - b_no_mod_meca =BLOC (condition="AsType(RESULTAT)!= mode_meca ", - TOUT_ORDRE =SIMP(statut='f',typ='TXM',into=("OUI",) ), - NUME_ORDRE =SIMP(statut='f',typ='I',validators=NoRepeat(),max='**'), - LIST_ORDRE =SIMP(statut='f',typ=listis_sdaster), - INST =SIMP(statut='f',typ='R',validators=NoRepeat(),max='**'), - LIST_INST =SIMP(statut='f',typ=listr8_sdaster), - b_acce_reel =BLOC(condition="(INST != None)or(LIST_INST != None)", - CRITERE =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU") ), - b_prec_rela=BLOC(condition="(CRITERE=='RELATIF')", - PRECISION =SIMP(statut='f',typ='R',defaut= 1.E-6,),), - b_prec_abso=BLOC(condition="(CRITERE=='ABSOLU')", - PRECISION =SIMP(statut='o',typ='R',),), - ), - ), - INFO =SIMP(statut='f',typ='I',defaut=1,into=(1,2)), - TITRE =SIMP(statut='f',typ='TXM',max='**'), -) ; - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2013 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: aurore.parrot at edf.fr -# -POST_K_BETA=OPER(nom="POST_K_BETA",op=198,sd_prod=table_sdaster, - fr="Calcul des facteurs d'intensité de contraintes par la méthode K_BETA", - reentrant='n', - UIinfo={"groupes":("Post-traitements","Rupture",)}, - MAILLAGE = SIMP(statut='o',typ=maillage_sdaster), - MATER_REV = SIMP(statut='o',typ=mater_sdaster), - EPAIS_REV = SIMP(statut='o',typ='R'), - FISSURE = FACT(statut='o', - DECALAGE = SIMP(statut='f',typ='R',defaut=-2.e-04), - PROFONDEUR = SIMP(statut='o',typ='R'), - LONGUEUR = SIMP(statut='o',typ='R'), - ORIENTATION = SIMP(statut='o',typ='TXM', - into=("CIRC","LONGI"),), - ), - K1D = FACT(statut='o',max='**', - TABL_MECA_REV = SIMP(statut='o',typ=(table_sdaster)), - TABL_MECA_MDB = SIMP(statut='o',typ=(table_sdaster)), - TABL_THER = SIMP(statut='o',typ=(table_sdaster)), - INTITULE = SIMP(statut='o',typ='TXM' ), - ), - TITRE = SIMP(statut='f',typ='TXM',max='**'), -); - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2012 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: samuel.geniaut at edf.fr - - -POST_K_TRANS=MACRO(nom="POST_K_TRANS", - op=OPS('Macro.post_k_trans_ops.post_k_trans_ops'), - sd_prod=table_sdaster, - fr="Calcul des facteurs d intensite des contrainte par recombinaison modale", - reentrant='n', - UIinfo={"groupes":("Post-traitements","Rupture",)}, - RESU_TRANS =SIMP(statut='o',typ=tran_gene), - K_MODAL =FACT(statut='o', - TABL_K_MODA =SIMP(statut='o',typ=table_sdaster,), - FOND_FISS =SIMP(statut='f',typ=fond_fiss,), - FISSURE =SIMP(statut='f',typ=fiss_xfem,), - regles=( UN_PARMI('FISSURE','FOND_FISS'), ), - ), - - regles=(EXCLUS('TOUT_ORDRE','NUME_ORDRE','INST','LIST_INST','LIST_ORDRE'),), - TOUT_ORDRE =SIMP(statut='f',typ='TXM',into=("OUI",) ), - NUME_ORDRE =SIMP(statut='f',typ='I',validators=NoRepeat(),max='**'), - LIST_ORDRE =SIMP(statut='f',typ=listis_sdaster), - INST =SIMP(statut='f',typ='R',validators=NoRepeat(),max='**'), - LIST_INST =SIMP(statut='f',typ=listr8_sdaster), - CRITERE =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU",) ), - b_prec_rela=BLOC(condition="(CRITERE=='RELATIF')", - PRECISION =SIMP(statut='f',typ='R',defaut= 1.E-6),), - b_prec_abso=BLOC(condition="(CRITERE=='ABSOLU')", - PRECISION =SIMP(statut='o',typ='R'),), - INFO =SIMP(statut='f',typ='I',defaut=1,into=(1,2)), - TITRE =SIMP(statut='f',typ='TXM'), -) - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2013 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: romeo.fernandes at edf.fr - -POST_MAC3COEUR = MACRO(nom="POST_MAC3COEUR", - op=OPS("Mac3coeur.post_mac3coeur_ops.post_mac3coeur_ops"), - - TYPE_COEUR = SIMP(statut='o',typ='TXM',into=("MONO","TEST","900","1300","N4","EPR") ), - RESULTAT = SIMP(statut='o',typ=evol_noli), # SD_RESULTAT - INST = SIMP(statut='o',typ='R', max=1), # INSTANT - - LAME = FACT(statut='f',max='**', - fr="Post-traitement des lames d'eau, par grille ou valeurs min/max", - regles = UN_PARMI('NUME_GRILLE','TYPE_RESU',), - NUME_GRILLE = SIMP(statut='f',typ='I', max=1), # NUMERO DE LA GRILLE A POST-TRAITER - TYPE_RESU = SIMP(statut='f',typ='TXM',into=("MINI","MAXI")), # EXTREMA POUR LE POST - FORMAT = SIMP(statut='o',typ='TXM',into=("GRACE","TABLE")), - UNITE = SIMP(statut='o',typ='I', max=1), # NUMERO DE L'UNITE LOGIQUE POUR LE POST - ), - - DEFORMATION = FACT(statut='f',max='**', - fr="Post-traitement des deformations, par grille ou valeurs min/max", - - UNITE = SIMP(statut='o',typ='I', max=1), - FORMAT = SIMP(statut='o',typ='TXM',into=("GRACE","TABLE")), - - b_def_grace = BLOC(condition = "FORMAT == 'GRACE' ",fr="Paramètres pour le format GRACE", - regles=UN_PARMI('NUME_GRILLE','TYPE_RESU','POSITION'), - TYPE_VISU = SIMP(statut='o',typ='TXM',into=("AMPLITUDE","MODULE","VECTEUR","DEFORME")), - TYPE_RESU = SIMP(statut='f',typ='TXM',into=("MINI","MAXI")), - NUME_GRILLE = SIMP(statut='f',typ='I', max=1), # NUMERO DE LA GRILLE A POST-TRAITER - POSITION = SIMP(statut='f',typ='TXM', max=1), - CONCEPTION = SIMP(statut='f',typ='TXM', max=1), - ), - - b_def_table = BLOC(condition = "FORMAT == 'TABLE' ",fr="Paramètres pour le format TABLE", - NOM_CMP = SIMP(statut='o',typ='TXM',into=("DY","DZ","NORME")), - ), - - - ), -) - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2013 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: samuel.geniaut at edf.fr -POST_MAIL_XFEM=OPER(nom="POST_MAIL_XFEM",op= 187,sd_prod=maillage_sdaster, - reentrant='n',UIinfo={"groupes":("Maillage","Rupture",)}, - fr="Crée un maillage se conformant à la fissure pour le post-traitement des éléments XFEM", - MODELE = SIMP(statut='o',typ=modele_sdaster), - PREF_NOEUD_X =SIMP(statut='f',typ='TXM',defaut="NX",validators=LongStr(1,2),), - PREF_NOEUD_M =SIMP(statut='f',typ='TXM',defaut="NM",validators=LongStr(1,2),), - PREF_NOEUD_P =SIMP(statut='f',typ='TXM',defaut="NP",validators=LongStr(1,2),), - PREF_MAILLE_X =SIMP(statut='f',typ='TXM',defaut="MX",validators=LongStr(1,2),), - PREF_GROUP_CO =SIMP(statut='f',typ=grno ,defaut="NFISSU",), - TITRE = SIMP(statut='f',typ='TXM',max='**'), - INFO =SIMP(statut='f',typ='I',defaut= 1,into=(1,2,) ), -); - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: samuel.geniaut at edf.fr - -POST_RCCM=OPER(nom="POST_RCCM",op= 165,sd_prod=table_sdaster, - fr="Vérification des critères de niveau 0 et certains critères de niveau A du RCC-M-B3200 (Edition 1991)", - reentrant='n', - UIinfo={"groupes":("Post-traitements","Rupture",)}, - TYPE_RESU =SIMP(statut='f',typ='TXM',defaut="VALE_MAX",into=("VALE_MAX","DETAILS") ), - INFO =SIMP(statut='f',typ='I',into=(1,2) ), - TITRE =SIMP(statut='f',typ='TXM',max='**'), - TYPE_RESU_MECA =SIMP(statut='o',typ='TXM',into=("EVOLUTION","UNITAIRE","TUYAUTERIE") ), - -# ====================================================================== - b_evolution =BLOC(condition="(TYPE_RESU_MECA == 'EVOLUTION')", - - OPTION =SIMP(statut='o',typ='TXM',validators=NoRepeat(),max='**', - into=("PM_PB","SN","FATIGUE_ZH210","AMORCAGE") ), - MATER =SIMP(statut='o',typ=mater_sdaster ), - SY_MAX =SIMP(statut='f',typ='R', - fr="limite élastique utilisée pour le calcul du rochet thermique" ), - TYPE_KE =SIMP(statut='f',typ='TXM',defaut="KE_MECA",into=("KE_MECA","KE_MIXTE"), - fr="Ke meca seul ou partition mecanique + thermique" ), - - TRANSITOIRE =FACT(statut='o',max='**',fr="transitoire à dépouiller", - regles=(EXCLUS('TOUT_ORDRE','INST','LIST_INST'), - UN_PARMI('TABL_RESU_MECA','TABL_SIGM_THETA'),), - NB_OCCUR =SIMP(statut='f',typ='I',defaut= 1, - fr="nombre d occurences réelles de ce transitoire" ), - TABL_RESU_MECA =SIMP(statut='f',typ=table_sdaster, - fr="relevé des contraintes sur le chemin"), - TABL_SIGM_THER =SIMP(statut='f',typ=table_sdaster, - fr="résultat sous chargement thermique seul" ), - TABL_RESU_PRES =SIMP(statut='f',typ=table_sdaster, - fr="table relevé des contraintes sous chargement de pression" ), - TABL_SIGM_THETA =SIMP(statut='f',typ=table_sdaster, - fr="table relevé des contraintes a la distance d de la singularité pour chacun des angles THETA" ), - TOUT_ORDRE =SIMP(statut='f',typ='TXM',into=("OUI",) ), - INST =SIMP(statut='f',typ='R',validators=NoRepeat(),max='**'), - LIST_INST =SIMP(statut='f',typ=listr8_sdaster ), - b_inst =BLOC(condition = "(INST != None) or (LIST_INST != None)" , - CRITERE =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU",),), - b_prec_rela=BLOC(condition="(CRITERE=='RELATIF')", - PRECISION =SIMP(statut='f',typ='R',defaut= 1.E-6,),), - b_prec_abso=BLOC(condition="(CRITERE=='ABSOLU')", - PRECISION =SIMP(statut='o',typ='R',),),), - ), - ), - -# ====================================================================== - b_unitaire =BLOC(condition="(TYPE_RESU_MECA == 'UNITAIRE')", - - OPTION =SIMP(statut='o',typ='TXM',validators=NoRepeat(),max='**', - into=("PM_PB","SN","FATIGUE") ), - MATER =SIMP(statut='o',typ=mater_sdaster ), - SY_MAX =SIMP(statut='f',typ='R', - fr="limite élastique utilisée pourle calcul du rochet thermique" ), - TYPE_KE =SIMP(statut='f',typ='TXM',defaut="KE_MECA",into=("KE_MECA","KE_MIXTE"), - fr="Ke meca seul ou partition mecanique + thermique" ), - CHAR_MECA =FACT(statut='o',max='**',fr="Chargements mécaniques", - regles=(UN_PARMI('MX','MX_TUBU'),), - NUME_CHAR =SIMP(statut='o',typ='I',fr="numéro du chargement" ), - NOM_CHAR =SIMP(statut='f',typ='TXM',fr="nom du chargement" ), - MX =SIMP(statut='f',typ='R',fr="moment suivant x", ), - MX_TUBU =SIMP(statut='f',typ='R',fr="moment suivant x, tubulure", ), - b_1_tenseur =BLOC( condition = "MX != None", - FX =SIMP(statut='f',typ='R',fr="effort suivant x", ), - FY =SIMP(statut='f',typ='R',fr="effort suivant y", ), - FZ =SIMP(statut='f',typ='R',fr="effort suivant z", ), - MY =SIMP(statut='o',typ='R',fr="moment suivant y", ), - MZ =SIMP(statut='o',typ='R',fr="moment suivant z", ), - ), - b_2_tenseurs =BLOC( condition = "MX_TUBU != None", - FX_TUBU =SIMP(statut='f',typ='R',fr="effort suivant x, tubulure", ), - FY_TUBU =SIMP(statut='f',typ='R',fr="effort suivant y, tubulure", ), - FZ_TUBU =SIMP(statut='f',typ='R',fr="effort suivant z, tubulure", ), - MY_TUBU =SIMP(statut='o',typ='R',fr="moment suivant y, tubulure", ), - MZ_TUBU =SIMP(statut='o',typ='R',fr="moment suivant z, tubulure", ), - FX_CORP =SIMP(statut='f',typ='R',fr="effort suivant x, corps du piquage", ), - FY_CORP =SIMP(statut='f',typ='R',fr="effort suivant y, corps du piquage", ), - FZ_CORP =SIMP(statut='f',typ='R',fr="effort suivant z, corps du piquage", ), - MX_CORP =SIMP(statut='o',typ='R',fr="moment suivant x, corps du piquage", ), - MY_CORP =SIMP(statut='o',typ='R',fr="moment suivant y, corps du piquage", ), - MZ_CORP =SIMP(statut='o',typ='R',fr="moment suivant z, corps du piquage", ), - ), - - ), - RESU_MECA_UNIT =FACT(statut='o',fr="resultats mécaniques unitaires", - regles=(UN_PARMI('TABL_MX','TABL_MX_TUBU'),), - TABL_MX =SIMP(statut='f',typ=table_sdaster, - fr="table relevé des contraintes pour chargement unitaire MX"), - TABL_MX_TUBU =SIMP(statut='f',typ=table_sdaster, - fr="table relevé des contraintes pour chargement unitaire MX_TUBU"), - b_1_tenseur =BLOC( condition = "TABL_MX != None", - TABL_FX =SIMP(statut='f',typ=table_sdaster, - fr="table relevé des contraintes pour chargement unitaire FX"), - TABL_FY =SIMP(statut='f',typ=table_sdaster, - fr="table relevé des contraintes pour chargement unitaire FY"), - TABL_FZ =SIMP(statut='f',typ=table_sdaster, - fr="table relevé des contraintes pour chargement unitaire FZ"), - TABL_MY =SIMP(statut='o',typ=table_sdaster, - fr="table relevé des contraintes pour chargement unitaire MY"), - TABL_MZ =SIMP(statut='o',typ=table_sdaster, - fr="table relevé des contraintes pour chargement unitaire MZ"), - ), - b_2_tenseurs =BLOC( condition = "TABL_MX_TUBU != None", - TABL_FX_TUBU =SIMP(statut='f',typ=table_sdaster, - fr="table relevé des contraintes pour chargement unitaire FX_TUBU"), - TABL_FY_TUBU =SIMP(statut='f',typ=table_sdaster, - fr="table relevé des contraintes pour chargement unitaire FY_TUBU"), - TABL_FZ_TUBU =SIMP(statut='f',typ=table_sdaster, - fr="table relevé des contraintes pour chargement unitaire FZ_TUBU"), - TABL_MY_TUBU =SIMP(statut='o',typ=table_sdaster, - fr="table relevé des contraintes pour chargement unitaire MY_TUBU"), - TABL_MZ_TUBU =SIMP(statut='o',typ=table_sdaster, - fr="table relevé des contraintes pour chargement unitaire MZ_TUBU"), - TABL_FX_CORP =SIMP(statut='f',typ=table_sdaster, - fr="table relevé des contraintes pour chargement unitaire FX_CORP"), - TABL_FY_CORP =SIMP(statut='f',typ=table_sdaster, - fr="table relevé des contraintes pour chargement unitaire FY_CORP"), - TABL_FZ_CORP =SIMP(statut='f',typ=table_sdaster, - fr="table relevé des contraintes pour chargement unitaire FZ_CORP"), - TABL_MX_CORP =SIMP(statut='o',typ=table_sdaster, - fr="table relevé des contraintes pour chargement unitaire MX_CORP"), - TABL_MY_CORP =SIMP(statut='o',typ=table_sdaster, - fr="table relevé des contraintes pour chargement unitaire MY_CORP"), - TABL_MZ_CORP =SIMP(statut='o',typ=table_sdaster, - fr="table relevé des contraintes pour chargement unitaire MZ_CORP"), - ), - TABL_PRES =SIMP(statut='o',typ=table_sdaster, - fr="table relevé des contraintes pour chargement unitaire de pression"), - ), - - RESU_THER =FACT(statut='f',max='**',fr="resultats thermiques", - NUME_RESU_THER =SIMP(statut='o',typ='I',fr="numéro de la table de résultat thermique" ), - TABL_RESU_THER =SIMP(statut='o',typ=table_sdaster, - fr="table relevé des contraintes sous chargement thermique seul" ), - ), - SEISME =FACT(statut='f',max='**',fr="Situation séisme",ang="situation_ang", - NB_OCCUR =SIMP(statut='o',typ='I',fr="nombre d'occurences de la situation" ), - NB_CYCL_SEISME =SIMP(statut='o',typ='I',fr="nombre de cycles associé au séisme" ), - NUME_SITU =SIMP(statut='o',typ='I',fr="numéro de la situation" ), - NOM_SITU =SIMP(statut='f',typ='TXM',fr="nom de la situation" ), - NUME_GROUPE =SIMP(statut='o',typ='I',fr="numéros du groupe de la situation" ), - CHAR_ETAT =SIMP(statut='o',typ='I',max='**',fr="numeros de chargements etat A" ), - ), - SITUATION =FACT(statut='o',max='**',fr="Situation",ang="situation_ang", - NB_OCCUR =SIMP(statut='o',typ='I',fr="nombre d'occurences de la situation" ), - NUME_SITU =SIMP(statut='o',typ='I',fr="numéro de la situation" ), - NOM_SITU =SIMP(statut='f',typ='TXM',fr="nom de la situation" ), - COMBINABLE =SIMP(statut='f',typ='TXM',defaut= "OUI",into=("OUI","NON"),fr="non = sous-cycle" ), - NUME_PASSAGE =SIMP(statut='f',typ='I',min=2,max=2, - fr="numéro des situations de passage" ), - NUME_GROUPE =SIMP(statut='o',typ='I', - fr="numéros des groupes de la situation" ), - NUME_RESU_THER =SIMP(statut='f',typ='I',max=1,fr="numeros de transitoires thermiques" ), - CHAR_ETAT_A =SIMP(statut='o',typ='I',max='**',fr="numeros de chargements etat A" ), - CHAR_ETAT_B =SIMP(statut='o',typ='I',max='**',fr="numeros de chargements etat B" ), - PRES_A =SIMP(statut='o',typ='R',fr="pression etat A"), - PRES_B =SIMP(statut='o',typ='R',fr="pression etat B"), - TEMP_REF_A =SIMP(statut='f',typ='R',fr="temperature référence etat A"), - TEMP_REF_B =SIMP(statut='f',typ='R',fr="temperature référence etat B"), - ), - - ), -# ====================================================================== - b_tuyauterie =BLOC(condition="(TYPE_RESU_MECA == 'TUYAUTERIE')", - - OPTION =SIMP(statut='o',typ='TXM',into=("FATIGUE",) ), - CHAM_MATER =SIMP(statut='o',typ=cham_mater ), - TYPE_KE =SIMP(statut='f',typ='TXM',defaut="KE_MECA",into=("KE_MECA","KE_MIXTE"), - fr="Ke meca seul ou partition mecanique + thermique" ), - MODELE =SIMP(statut='o',typ=modele_sdaster), - CARA_ELEM =SIMP(statut='o',typ=cara_elem), - ZONE_ANALYSE =FACT(statut='o',fr="liste des mailles ou des noeuds analysés", - regles=(PRESENT_ABSENT('TOUT','GROUP_MA','MAILLE'),AU_MOINS_UN('TOUT','GROUP_MA','MAILLE'),), - TOUT =SIMP(statut='f',typ='TXM',into=("OUI",) ), - GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - MAILLE =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), - ), - RESU_MECA =FACT(statut='o',max='**',fr="Chargements mécaniques", - regles=(UN_PARMI('CHAM_GD','RESULTAT'),), - NUME_CHAR =SIMP(statut='o',typ='I',fr="numéro du chargement" ), - NOM_CHAR =SIMP(statut='f',typ='TXM',fr="nom du chargement" ), - CHAM_GD =SIMP(statut='f',typ=cham_gd_sdaster), - RESULTAT =SIMP(statut='f',typ=resultat_sdaster), - b_extrac =BLOC(condition="RESULTAT != None", - fr="extraction d un champ de grandeur", - regles=(UN_PARMI('TOUT_ORDRE','NUME_ORDRE','INST','NOEUD_CMP'),), - NOM_CHAM =SIMP(statut='o',typ='TXM',into=("EFGE_ELNO","SIEF_ELNO"),), - TOUT_ORDRE =SIMP(statut='f',typ='TXM',into=("OUI",) ), - NUME_ORDRE =SIMP(statut='f',typ='I',), - INST =SIMP(statut='f',typ='R',), - NOEUD_CMP =SIMP(statut='f',typ='TXM',validators=NoRepeat(),max='**'), - b_acce_reel =BLOC(condition="(INST != None)", - CRITERE =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU",),), - b_prec_rela=BLOC(condition="(CRITERE=='RELATIF')", - PRECISION =SIMP(statut='f',typ='R',defaut= 1.E-6,),), - b_prec_abso=BLOC(condition="(CRITERE=='ABSOLU')", - PRECISION =SIMP(statut='o',typ='R',),), - ), - ), - ), - INDI_SIGM =FACT(statut='o',max='**',fr="indices de contraintes", - regles=(PRESENT_ABSENT('TOUT','GROUP_MA','MAILLE'),AU_MOINS_UN('TOUT','GROUP_MA','MAILLE'),), - C1 =SIMP(statut='f',typ='R',defaut=1.0,fr="indice de contraintes C1 du RCCM"), - K1 =SIMP(statut='f',typ='R',defaut=1.0,fr="indice de contraintes K1 du RCCM"), - C2 =SIMP(statut='f',typ='R',defaut=1.0,fr="indice de contraintes C2 du RCCM"), - K2 =SIMP(statut='f',typ='R',defaut=1.0,fr="indice de contraintes K2 du RCCM"), - C3 =SIMP(statut='f',typ='R',defaut=0.5,fr="indice de contraintes C3 du RCCM"), - K3 =SIMP(statut='f',typ='R',defaut=1.0,fr="indice de contraintes K3 du RCCM"), - TOUT =SIMP(statut='f',typ='TXM',into=("OUI",),), - GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**', - fr="groupe(s) de mailles ou sont affectés les indices de contraintes"), - MAILLE =SIMP(statut='f',typ=ma,validators=NoRepeat(),max='**', - fr="liste des mailles ou sont affectés les indices de contraintes"), - b_grma =BLOC(condition="(GROUP_MA != None)or(MAILLE != None)", - GROUP_NO =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'), - NOEUD =SIMP(statut='f',typ=no ,validators=NoRepeat(),max='**'), - ), - TYPE_ELEM_STANDARD =SIMP(statut='f',typ='TXM',into=("DRO","COU","TRN","TEE"), - fr="type d'élément de tuyauterie ou sont affectés les indices de contraintes"), - ), - RESU_THER =FACT(statut='f',max='**',fr="resultats thermiques", - regles=(PRESENT_ABSENT('TOUT','GROUP_MA','MAILLE'),AU_MOINS_UN('TOUT','GROUP_MA','MAILLE'),), - NUME_RESU_THER =SIMP(statut='o',typ='I',fr="numéro de la table de résultat thermique" ), - TABL_RESU_THER =SIMP(statut='o',typ=table_sdaster, - fr="table relevé des températures sur la section"), - TABL_MOYE_THER =SIMP(statut='o',typ=table_sdaster, - fr="table relevé des moyennes sur la section"), - TOUT =SIMP(statut='f',typ='TXM',into=("OUI",) ), - GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - MAILLE =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), - b_grma =BLOC(condition="(GROUP_MA != None)or(MAILLE != None)", - GROUP_NO =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'), - NOEUD =SIMP(statut='f',typ=no ,validators=NoRepeat(),max='**'), - ), - ), - SEISME =FACT(statut='f',max='**',fr="Situation séisme",ang="situation_ang", - NB_OCCUR =SIMP(statut='o',typ='I',fr="nombre d'occurences de la situation" ), - NB_CYCL_SEISME =SIMP(statut='o',typ='I',fr="nombre de cycles associé au séisme" ), - NUME_SITU =SIMP(statut='o',typ='I',fr="numéro de la situation" ), - NOM_SITU =SIMP(statut='f',typ='TXM',fr="nom de la situation" ), - NUME_GROUPE =SIMP(statut='o',typ='I',fr="numéros du groupe de la situation" ), - CHAR_ETAT =SIMP(statut='o',typ='I',max='**',fr="numeros de chargements etat A" ), - TEMP_REF =SIMP(statut='f',typ='R',fr="temperature référence"), - ), - SITUATION =FACT(statut='o',max='**',fr="Situation",ang="situation_ang", - NB_OCCUR =SIMP(statut='o',typ='I',fr="nombre d'occurences de la situation" ), - NUME_SITU =SIMP(statut='o',typ='I',fr="numéro de la situation" ), - NOM_SITU =SIMP(statut='f',typ='TXM',fr="nom de la situation" ), - COMBINABLE =SIMP(statut='f',typ='TXM',defaut= "OUI",into=("OUI","NON"),fr="non = sous-cycle" ), - NUME_GROUPE =SIMP(statut='o',typ='I', - fr="numéros des groupes de la situation" ), - NUME_PASSAGE =SIMP(statut='f',typ='I',min=2,max=2, - fr="numéro des situations de passage" ), - NUME_RESU_THER =SIMP(statut='f',typ='I',max='**',fr="numeros de transitoires thermiques" ), - CHAR_ETAT_A =SIMP(statut='o',typ='I',max='**',fr="numeros de chargements etat A" ), - CHAR_ETAT_B =SIMP(statut='o',typ='I',max='**',fr="numeros de chargements etat B" ), - PRES_A =SIMP(statut='o',typ='R',fr="pression etat A"), - PRES_B =SIMP(statut='o',typ='R',fr="pression etat B"), - TEMP_REF_A =SIMP(statut='f',typ='R',fr="temperature référence etat A"), - TEMP_REF_B =SIMP(statut='f',typ='R',fr="temperature référence etat B"), - ), - ), -) ; - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2012 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: xavier.desroches at edf.fr -POST_RELEVE_T=OPER(nom="POST_RELEVE_T",op=51,sd_prod=table_sdaster,reentrant='f', - fr="Extraire des valeurs de composantes de champs de grandeurs pour y effectuer des calculs (moyenne,invariants,..)" - +" ou pour les exprimer dans d'autres repères", - docu="U4.81.21",UIinfo={"groupes":("Post-traitements","Résultats et champs",)}, - - ACTION =FACT(statut='o',max='**', - regles=(UN_PARMI('RESULTAT','CHAM_GD'),), - - OPERATION =SIMP(statut='o',typ='TXM',into=("EXTRACTION","MOYENNE","MOYENNE_ARITH","EXTREMA"), - validators=NoRepeat(), max=2), - INTITULE =SIMP(statut='o',typ='TXM'), - - CHAM_GD =SIMP(statut='f',typ=(cham_no_sdaster, - cham_elem,),), - RESULTAT =SIMP(statut='f',typ=resultat_sdaster), - - b_extrac =BLOC(condition = "RESULTAT != None",fr="extraction des résultats", - regles=(EXCLUS('TOUT_ORDRE','NUME_ORDRE','LIST_ORDRE','NUME_MODE','LIST_MODE', - 'INST','LIST_INST','FREQ','LIST_FREQ','NOEUD_CMP','NOM_CAS'), ), - NOM_CHAM =SIMP(statut='o',typ='TXM',validators=NoRepeat(),into=C_NOM_CHAM_INTO(),), - TOUT_ORDRE =SIMP(statut='f',typ='TXM',into=("OUI",) ), - NUME_ORDRE =SIMP(statut='f',typ='I',validators=NoRepeat(),max='**'), - LIST_ORDRE =SIMP(statut='f',typ=listis_sdaster), - NUME_MODE =SIMP(statut='f',typ='I',validators=NoRepeat(),max='**'), - LIST_MODE =SIMP(statut='f',typ=listis_sdaster), - NOEUD_CMP =SIMP(statut='f',typ='TXM',validators=NoRepeat(),max='**'), - NOM_CAS =SIMP(statut='f',typ='TXM',validators=NoRepeat(),max='**'), - FREQ =SIMP(statut='f',typ='R',validators=NoRepeat(),max='**'), - LIST_FREQ =SIMP(statut='f',typ=listr8_sdaster), - INST =SIMP(statut='f',typ='R',validators=NoRepeat(),max='**'), - LIST_INST =SIMP(statut='f',typ=listr8_sdaster), - CRITERE =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU",),), - b_prec_rela=BLOC(condition="(CRITERE=='RELATIF')", - PRECISION =SIMP(statut='f',typ='R',defaut= 1.E-6,),), - b_prec_abso=BLOC(condition="(CRITERE=='ABSOLU')", - PRECISION =SIMP(statut='o',typ='R',),), - ), - - b_extrema =BLOC(condition="au_moins_un(OPERATION, 'EXTREMA')", - fr="recherche de MIN MAX", - regles=(EXCLUS('TOUT_CMP','NOM_CMP'),), - TOUT =SIMP(statut='f',typ='TXM',into=("OUI",) ), - GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - MAILLE =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), - GROUP_NO =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'), - NOEUD =SIMP(statut='f',typ=no ,validators=NoRepeat(),max='**'), - TOUT_CMP =SIMP(statut='f',typ='TXM',into=("OUI",)), - NOM_CMP =SIMP(statut='f',typ='TXM',max='**'), - ), - - b_MOYENNE_ARITH =BLOC(condition="au_moins_un(OPERATION, 'MOYENNE_ARITH')", - fr="moyenne sur des groupes", - regles=(EXCLUS('TOUT_CMP','NOM_CMP'),), - TOUT =SIMP(statut='f',typ='TXM',into=("OUI",) ), - GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - MAILLE =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), - GROUP_NO =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'), - NOEUD =SIMP(statut='f',typ=no ,validators=NoRepeat(),max='**'), - TOUT_CMP =SIMP(statut='f',typ='TXM',into=("OUI",)), - NOM_CMP =SIMP(statut='f',typ='TXM',max='**'), - ), - - b_autre =BLOC(condition="aucun(OPERATION, ('EXTREMA', 'MOYENNE_ARITH'))", - fr="extraction et moyenne", - regles=(AU_MOINS_UN('CHEMIN','GROUP_NO','NOEUD'), - EXCLUS('CHEMIN','GROUP_NO'), - EXCLUS('CHEMIN','NOEUD'), - PRESENT_ABSENT('CHEMIN','GROUP_MA','MAILLE'), - UN_PARMI('TOUT_CMP','NOM_CMP','INVARIANT','ELEM_PRINCIPAUX','RESULTANTE'), - PRESENT_PRESENT('TRAC_DIR','DIRECTION'), - ENSEMBLE('MOMENT','POINT'), - PRESENT_PRESENT('MOMENT','RESULTANTE'), - PRESENT_ABSENT('TOUT_CMP','TRAC_DIR','TRAC_NOR'), - EXCLUS('TRAC_DIR','TRAC_NOR'), - PRESENT_PRESENT('ORIGINE','AXE_Z'),), - - CHEMIN =SIMP(statut='f',typ=(courbe_sdaster,surface_sdaster) ), - TOUT =SIMP(statut='f',typ='TXM',into=("OUI",) ), - GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - MAILLE =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), - GROUP_NO =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'), - NOEUD =SIMP(statut='f',typ=no ,validators=NoRepeat(),max='**'), - - TOUT_CMP =SIMP(statut='f',typ='TXM',into=("OUI",)), - NOM_CMP =SIMP(statut='f',typ='TXM',max='**'), - INVARIANT =SIMP(statut='f',typ='TXM',into=("OUI",)), - ELEM_PRINCIPAUX =SIMP(statut='f',typ='TXM',into=("OUI",) ), - RESULTANTE =SIMP(statut='f',typ='TXM',max='**'), - - MOMENT =SIMP(statut='f',typ='TXM',max='**'), - POINT =SIMP(statut='f',typ='R',max='**'), - - REPERE =SIMP(statut='f',typ='TXM',defaut="GLOBAL", - into=("GLOBAL","LOCAL","POLAIRE","UTILISATEUR","CYLINDRIQUE"),), - ANGL_NAUT =SIMP(statut='f',typ='R',min=3,max=3), - ORIGINE =SIMP(statut='f',typ='R',min=3,max=3), - AXE_Z =SIMP(statut='f',typ='R',min=3,max=3), - - TRAC_NOR =SIMP(statut='f',typ='TXM',into=("OUI",)), - TRAC_DIR =SIMP(statut='f',typ='TXM',into=("OUI",)), - DIRECTION =SIMP(statut='f',typ='R',max='**'), - - VECT_Y =SIMP(statut='f',typ='R',max='**'), - MOYE_NOEUD =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON")), - ), - - FORMAT_C =SIMP(statut='f',typ='TXM',defaut="MODULE",into=("MODULE","REEL","IMAG")), - - ), - INFO =SIMP(statut='f',typ='I',defaut=1,into=(1,2)), - TITRE =SIMP(statut='f',typ='TXM',max='**'), -) ; - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2013 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: samuel.geniaut at edf.fr - -POST_RUPTURE=MACRO(nom="POST_RUPTURE", - op=OPS("Macro.post_rupture_ops.post_rupture_ops"), - sd_prod=table_sdaster, - fr="post-traitements en Rupture", - reentrant='f', - UIinfo={"groupes":("Résultats et champs","Rupture",)}, - - TABLE = SIMP(statut='o',typ=table_sdaster,max='**'), - -# rq : il est impossible de proposer le bon choix pour OPERATION suivant la valeur de reuse... - OPERATION = SIMP(statut='o',typ='TXM',into=( - 'ABSC_CURV_NORM', - 'ANGLE_BIFURCATION', - 'K_EQ', - 'DELTA_K_EQ', - 'COMPTAGE_CYCLES', - 'LOI_PROPA', - 'CUMUL_CYCLES', - 'PILO_PROPA', - 'K1_NEGATIF', - ) - ), - -#----------------------------------------------------------------------------------------------------------------------------------- -# 'ABSC_CURV_NORM' -#----------------------------------------------------------------------------------------------------------------------------------- - - - b_absc = BLOC(condition="OPERATION == 'ABSC_CURV_NORM'",fr="normalise l'abscisse curviligne", - - NOM_PARA = SIMP(statut='f',typ='TXM',max=1,defaut="ABSC_CURV_NORM",fr="Nom de la nouvelle colonne"), - - ), - -#----------------------------------------------------------------------------------------------------------------------------------- -# 'ANGLE_BIFURCATION' -#----------------------------------------------------------------------------------------------------------------------------------- - - b_angle = BLOC(condition="OPERATION == 'ANGLE_BIFURCATION' ",fr="Angle de bifurcation", - - NOM_PARA = SIMP(statut='f',typ='TXM',max=1,defaut="BETA",fr="Nom de la nouvelle colonne"), - CRITERE = SIMP(statut='f',typ='TXM',max=1,defaut="SITT_MAX",into=('SITT_MAX','K1_MAX','K2_NUL','PLAN'),), - ), - -#----------------------------------------------------------------------------------------------------------------------------------- -# 'K_EQ' -#----------------------------------------------------------------------------------------------------------------------------------- - - b_Keq = BLOC(condition="OPERATION == 'K_EQ' ",fr="Cumul sur les modes : calcul du K equivalent", - - NOM_PARA = SIMP(statut='f',typ='TXM',max=1,defaut="K_EQ",fr="Nom de la nouvelle colonne"), - CUMUL = SIMP(statut='f',typ='TXM',max=1,defaut="CUMUL_G",fr="Formule de cumul des modes", - into=('LINEAIRE','QUADRATIQUE','CUMUL_G','MODE_I'),), - - b_mater = BLOC(condition="CUMUL in ('QUADRATIQUE','CUMUL_G')",fr="materiau du fond de fissure", - MATER = SIMP(statut='o',typ=mater_sdaster,), - ), - ), - -#----------------------------------------------------------------------------------------------------------------------------------- -# 'DELTA_K_EQ' -#----------------------------------------------------------------------------------------------------------------------------------- - - b_DeltaKeq = BLOC(condition="OPERATION == 'DELTA_K_EQ' ",fr="Cumul sur les modes : calcul du DeltaK equivalent", - - NOM_PARA = SIMP(statut='f',typ='TXM',max=1,defaut="DELTA_K_EQ",fr="Nom de la nouvelle colonne"), - CUMUL = SIMP(statut='f',typ='TXM',max=1,defaut="CUMUL_G",fr="Formule de cumul des modes", - into=('QUADRATIQUE','CUMUL_G','MODE_I'),), - - b_mater = BLOC(condition="CUMUL in ('QUADRATIQUE','CUMUL_G')",fr="materiau du fond de fissure", - MATER = SIMP(statut='o',typ=mater_sdaster,), - ), - - ), - -#----------------------------------------------------------------------------------------------------------------------------------- -# 'COMPTAGE_CYCLES' -#----------------------------------------------------------------------------------------------------------------------------------- - - b_Comptage = BLOC(condition="OPERATION == 'COMPTAGE_CYCLES' ",fr="Comptage des cycles", - - NOM_PARA = SIMP(statut='o',typ='TXM',validators=NoRepeat(),max='**', - fr="Nom des quantités sur lesquelles s'effectuent le comptage"), - COMPTAGE = SIMP(statut='o',typ='TXM',into=("RAINFLOW","RCCM","NATUREL","UNITAIRE")), - DELTA_OSCI = SIMP(statut='f',typ='R',defaut= 0.0E+0), - - b_Comptage_Unitaire = BLOC(condition="COMPTAGE=='UNITAIRE'", - fr="comptage unitaire pour les amplitudes constantes", - - COEF_MULT_MINI = SIMP(statut='o',typ='R',), - COEF_MULT_MAXI = SIMP(statut='o',typ='R',), - - ), - - ), - -#----------------------------------------------------------------------------------------------------------------------------------- -# 'LOI_PROPA' -#----------------------------------------------------------------------------------------------------------------------------------- - - b_Loi_Propa = BLOC(condition="OPERATION == 'LOI_PROPA' ",fr="calcul de l'incrément d'avancée de fissure par cycle", - - NOM_PARA = SIMP(statut='f',typ='TXM',defaut="DELTA_A" ,max=1,fr="Nom de la nouvelle colonne"), - NOM_DELTA_K_EQ = SIMP(statut='f',typ='TXM',defaut="DELTA_K_EQ",max=1, - fr="Nom de la quantité correspondant au Delta_K_eq"), - LOI = SIMP(statut='o',typ='TXM',into=("PARIS",)), - - b_paris = BLOC(condition = "LOI=='PARIS'", - C = SIMP(statut='o',typ='R',), - M = SIMP(statut='o',typ='R',), - ), - - ), - -#----------------------------------------------------------------------------------------------------------------------------------- -# 'CUMUL_CYCLES' -#----------------------------------------------------------------------------------------------------------------------------------- - - b_cumul = BLOC(condition="OPERATION == 'CUMUL_CYCLES' ",fr="Cumul sur les cycles", - - NOM_PARA = SIMP(statut='f',typ='TXM',max=1,defaut="DELTA_A",fr="Nom de la colonne à traiter"), - CUMUL = SIMP(statut='f',typ='TXM',max=1,defaut="LINEAIRE",into=('LINEAIRE',)), - - ), - -#----------------------------------------------------------------------------------------------------------------------------------- -# 'PILO_PROPA' -#----------------------------------------------------------------------------------------------------------------------------------- - - b_pilo_propa = BLOC(condition="OPERATION == 'PILO_PROPA' ",fr="Pilotage de la propagation", - - regles = UN_PARMI('DELTA_A_MAX','DELTA_N'), - DELTA_A_MAX = SIMP(statut='f',typ='R',max=1,val_min=0.,fr="Pilotage en incrément d'avancée max"), - DELTA_N = SIMP(statut='f',typ='R',max=1,val_min=1 ,fr="Pilotage en incrément de nombre de blocs"), - - ), - -#----------------------------------------------------------------------------------------------------------------------------------- -# 'K1_NEGATIF' -#----------------------------------------------------------------------------------------------------------------------------------- - - b_k1_neg = BLOC(condition="OPERATION == 'K1_NEGATIF' ",fr="Mise a zero des valeurs negatives de K1", - - MODELISATION = SIMP(statut='o',typ='TXM',into=("C_PLAN","D_PLAN","3D","AXIS")), - MATER = SIMP(statut='o',typ=mater_sdaster,), - - ), - -#----------------------------------------------------------------------------------------------------------------------------------- - -) ; - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2011 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: irmela.zentner at edf.fr -POST_USURE=OPER(nom="POST_USURE",op=153,sd_prod=table_sdaster,reentrant='f', - UIinfo={"groupes":("Post-traitements",)}, - fr="Calcul des volumes d'usure et des profondeurs d'usure d'après la puissance d'usure", - regles=(UN_PARMI('TUBE_NEUF','RESU_GENE','PUIS_USURE'), - PRESENT_PRESENT('RESU_GENE','NOEUD','LOI_USURE'), - PRESENT_PRESENT('PUIS_USURE','LOI_USURE'),), - TUBE_NEUF =SIMP(statut='f',typ='TXM',into=("OUI",) ), - ETAT_INIT =FACT(statut='f', - TABL_USURE =SIMP(statut='f',typ=table_sdaster), - INST_INIT =SIMP(statut='f',typ='R'), - ), - RESU_GENE =SIMP(statut='f',typ=tran_gene), - NOEUD =SIMP(statut='f',typ=no,), - INST_INIT =SIMP(statut='f',typ='R',defaut=-1.0E+0), - INST_FIN =SIMP(statut='f',typ='R'), - NB_BLOC =SIMP(statut='f',typ='I',defaut= 1 ), - PUIS_USURE =SIMP(statut='f',typ='R'), - LOI_USURE =SIMP(statut='f',typ='TXM',into=("ARCHARD","KWU_EPRI","EDF_MZ")), - b_archard =BLOC(condition = "LOI_USURE == 'ARCHARD'", - regles=(UN_PARMI('MOBILE','MATER_USURE','SECTEUR'), - EXCLUS('MATER_USURE','OBSTACLE'), - EXCLUS('MOBILE','USURE_OBST'),), - MOBILE =FACT(statut='f', - COEF_USURE =SIMP(statut='o',typ='R'), - ), - OBSTACLE =FACT(statut='f', - COEF_USURE =SIMP(statut='o',typ='R'), - ), - SECTEUR =FACT(statut='f',max='**', - CONTACT =SIMP(statut='f',typ='TXM',into=("TUBE_BAV","TUBE_ALESAGE","TUBE_4_ENCO", - "GRAPPE_ALESAGE","TUBE_3_ENCO","TUBE_TUBE", - "GRAPPE_1_ENCO","GRAPPE_2_ENCO")), - COEF_USUR_MOBILE=SIMP(statut='f',typ='R'), - COEF_USUR_OBST =SIMP(statut='f',typ='R'), - ANGL_INIT =SIMP(statut='f',typ='R'), - ANGL_FIN =SIMP(statut='f',typ='R'), - ), - MATER_USURE =SIMP(statut='f',typ='TXM'), - USURE_OBST =SIMP(statut='f',typ='TXM',into=("OUI",)), - ), - b_kwu_epri =BLOC(condition = "LOI_USURE == 'KWU_EPRI'", - regles=(UN_PARMI('MOBILE','MATER_USURE'), - EXCLUS('MATER_USURE','OBSTACLE'), - EXCLUS('MOBILE','USURE_OBST'),), - MOBILE =FACT(statut='f', - COEF_FNOR =SIMP(statut='f',typ='R'), - COEF_VTAN =SIMP(statut='f',typ='R'), - COEF_USURE =SIMP(statut='f',typ='R'), - COEF_K =SIMP(statut='f',typ='R',defaut=5.0E+0), - COEF_C =SIMP(statut='f',typ='R',defaut=10.0E+0), - ), - OBSTACLE =FACT(statut='f', - COEF_FNOR =SIMP(statut='f',typ='R' ), - COEF_VTAN =SIMP(statut='f',typ='R' ), - COEF_USURE =SIMP(statut='o',typ='R'), - COEF_K =SIMP(statut='f',typ='R',defaut=5.0E+0), - COEF_C =SIMP(statut='f',typ='R',defaut=10.0E+0), - ), - MATER_USURE =SIMP(statut='f',typ='TXM'), - USURE_OBST =SIMP(statut='f',typ='TXM',into=("OUI",)), - FNOR_MAXI =SIMP(statut='f',typ='R' ), - VTAN_MAXI =SIMP(statut='f',typ='R' ), - ), - b_edf_mz =BLOC(condition = "LOI_USURE == 'EDF_MZ'", - regles=(UN_PARMI('MOBILE','MATER_USURE'), - EXCLUS('MATER_USURE','OBSTACLE'), - EXCLUS('MOBILE','USURE_OBST'),), - MOBILE =FACT(statut='f', - COEF_USURE =SIMP(statut='f',typ='R',defaut=1.0E-13), - COEF_B =SIMP(statut='f',typ='R',defaut=1.2E+0), - COEF_N =SIMP(statut='f',typ='R',defaut=2.44E-8), - COEF_S =SIMP(statut='f',typ='R',defaut=1.14E-16), - ), - OBSTACLE =FACT(statut='f', - COEF_USURE =SIMP(statut='o',typ='R',defaut=1.0E-13), - COEF_B =SIMP(statut='f',typ='R',defaut=1.2E+0), - COEF_N =SIMP(statut='f',typ='R',defaut=2.44E-8), - COEF_S =SIMP(statut='f',typ='R',defaut=1.14E-16), - ), - MATER_USURE =SIMP(statut='f',typ='TXM'), - USURE_OBST =SIMP(statut='f',typ='TXM',into=("OUI",)), - ), - b_tube_neuf =BLOC(condition = "TUBE_NEUF == 'OUI'", - TABL_USURE =SIMP(statut='o',typ=table_sdaster), - ), - CONTACT =SIMP(statut='f',typ='TXM',into=("TUBE_BAV","TUBE_ALESAGE","TUBE_4_ENCO", - "GRAPPE_ALESAGE","TUBE_3_ENCO","TUBE_TUBE", - "GRAPPE_1_ENCO","GRAPPE_2_ENCO")), - RAYON_MOBILE =SIMP(statut='f',typ='R'), - RAYON_OBST =SIMP(statut='f',typ='R'), - LARGEUR_OBST =SIMP(statut='f',typ='R'), - ANGL_INCLI =SIMP(statut='f',typ='R'), - ANGL_ISTHME =SIMP(statut='f',typ='R'), - ANGL_IMPACT =SIMP(statut='f',typ='R'), - INST =SIMP(statut='f',typ='R',validators=NoRepeat(),max='**'), - LIST_INST =SIMP(statut='f',typ=listr8_sdaster), - COEF_INST =SIMP(statut='f',typ='R',defaut=1.0E+0), - INFO =SIMP(statut='f',typ='I',defaut=1,into=(1,2)), - TITRE =SIMP(statut='f',typ='TXM',max='**' ), -) ; - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2012 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: j-pierre.lefebvre at edf.fr - -POURSUITE=MACRO(nom="POURSUITE", - op=OPS("Cata.ops.buildPoursuite"), - repetable='n', - fr="Poursuite d'une étude à partir de la sauvegarde au format JEVEUX " \ - "ou HDF de sa base globale", - sd_prod = ops.POURSUITE, - UIinfo={"groupes":("Gestion du travail",)}, - op_init=ops.POURSUITE_context, - fichier_ini=1, - FORMAT_HDF =SIMP(fr="sauvegarde de la base GLOBALE au format HDF",statut='f', - typ='TXM',defaut="NON",into=("OUI","NON",) ), - PAR_LOT =SIMP(fr="mode de traitement des commandes",statut='f',typ='TXM', - into=("OUI","NON"),defaut="OUI"), - IMPR_MACRO =SIMP(fr="affichage des sous-commandes produites par les macros dans le fichier mess", - statut='f',typ='TXM',into=("OUI","NON"),defaut="NON"), - - BASE =FACT(fr="définition des paramètres associés aux bases JEVEUX", - statut='f',min=1,max=2, - FICHIER =SIMP(fr="nom de la base",statut='o',typ='TXM'), - TITRE =SIMP(statut='f',typ='TXM'), - CAS =SIMP(statut='f',typ='TXM'), - NMAX_ENRE =SIMP(fr="nombre maximum d enregistrements",statut='f',typ='I'), - LONG_ENRE =SIMP(fr="longueur des enregistrements",statut='f',typ='I'), - LONG_REPE =SIMP(fr="longueur du répertoire",statut='f',typ='I'), - ), - -# Le mot cle CATALOGUE n'est jamais utilise en POURSUITE mais sa presence est necessaire au bon fonctionnement -# de la commande, le code source etant commun aux commandes DEBUT et POURSUITE. -# - CATALOGUE =FACT(statut='f',min=1,max=10, - FICHIER =SIMP(statut='o',typ='TXM'), - UNITE =SIMP(statut='f',typ='I'), - ), - - ERREUR =FACT(fr="comportement en cas d'erreur",statut='f',min=1,max=1, - ERREUR_F =SIMP(statut='f',typ='TXM',into=('ABORT','EXCEPTION'),defaut='ABORT'), - ), - - DEBUG =FACT(fr="option de déboggage reservée aux développeurs", - statut='f',min=1,max=1, - JXVERI =SIMP(fr="vérifie l intégrité de la segmentation mémoire", - statut='f',typ='TXM',into=('OUI','NON'),defaut='NON'), - SDVERI =SIMP(fr="vérifie la conformité des SD produites par les commandes", - statut='f',typ='TXM',into=('OUI','NON')), - JEVEUX =SIMP(fr="force les déchargement sur disque", - statut='f',typ='TXM',into=('OUI','NON'),defaut='NON'), - ENVIMA =SIMP(fr="imprime les valeurs définies dans ENVIMA", - statut='f',typ='TXM',into=('TEST',)), - HIST_ETAPE = SIMP(fr="permet de conserver toutes les étapes du jeu de commandes", - statut='f', typ='TXM', into=('OUI', 'NON'), defaut='NON'), - ), - - MESURE_TEMPS =FACT(fr="Pour choisir les mesures de temps consommé dans les commandes", - statut='d',min=1,max=1, - NIVE_DETAIL =SIMP(fr="niveau de détail des impressions", - statut='f',typ='I',into=(0,1,2,3),defaut=1), - # 0 : rien - # 1 : impression en fin de commande des mesures principales - # 2 : impression en fin de commande des mesures principales et secondaires - # 3 : impression des mesures principales et secondaires pour chaque pas de temps - MOYENNE =SIMP(fr="affichage des moyennes et écart-types en parallèle", - statut='f',typ='TXM',into=('OUI','NON',),defaut='NON'), - ), - - MEMOIRE =FACT(fr="mode de gestion mémoire utilisé",statut='d',min=1,max=1, - TAILLE_BLOC =SIMP(statut='f',typ='R',defaut=800.), - TAILLE_GROUP_ELEM =SIMP(statut='f',typ='I',defaut=1000), - ), - - RESERVE_CPU =FACT(fr="reserve de temps pour terminer une execution",statut='d',max=1, - regles=(EXCLUS('VALE','POURCENTAGE'),), - VALE =SIMP(statut='f',typ='I',val_min=0), -# valeur par défaut fixée à 10. dans le FORTRAN si CODE présent - POURCENTAGE =SIMP(statut='f',typ='R',val_min=0.,val_max=1.0), -# valeur par défaut fixée à 10% dans le FORTRAN - BORNE =SIMP(statut='f',typ='I',val_min=0,defaut=900) ), -# valeur en pourcentage du temps maximum bornée à 900 secondes - - CODE =SIMP(statut='f',typ='TXM',into=('OUI', 'NON'),defaut='NON', - fr="paramètre réservé aux cas-tests"), - - IGNORE_ALARM = SIMP(statut='f', typ='TXM', max='**', fr="Alarmes que l'utilisateur souhaite délibérément ignorer"), - - LANG = SIMP(statut='f', typ='TXM', - fr="Permet de choisir la langue utilisée pour les messages (si disponible)", - ang="Allows to choose the language used for messages (if available)"), - - INFO = SIMP(statut='f', typ='I', defaut=1, into=(1,2),), -) ; - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: mathieu.courtois at edf.fr - -PRE_GIBI=PROC(nom="PRE_GIBI",op=49, - UIinfo={"groupes":("Gestion du travail",)}, - fr="Conversion d'un fichier de maillage GIBI au format Aster", - UNITE_GIBI =SIMP(statut='f',typ='I',defaut=19), - UNITE_MAILLAGE =SIMP(statut='f',typ='I',defaut=20), -) ; - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: mathieu.courtois at edf.fr - -PRE_GMSH=PROC(nom="PRE_GMSH",op=47, - UIinfo={"groupes":("Gestion du travail",)}, - fr="Conversion d'un fichier de maillage GMSH au format Aster", - UNITE_GMSH =SIMP(statut='f',typ='I',defaut=19), - UNITE_MAILLAGE =SIMP(statut='f',typ='I',defaut=20), -) ; - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: alexei.mikchevitch at edf.fr -PRE_IDEAS=PROC(nom="PRE_IDEAS",op=47, - UIinfo={"groupes":("Gestion du travail",)}, - fr="Conversion d'un fichier universel IDEAS-SUPERTAB au format Aster", - UNITE_IDEAS =SIMP(statut='f',typ='I',defaut=19), - UNITE_MAILLAGE =SIMP(statut='f',typ='I',defaut=20), - CREA_GROUP_COUL =SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON") ), -) ; - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: jacques.pellet at edf.fr - -PROD_MATR_CHAM=OPER(nom="PROD_MATR_CHAM",op= 156,sd_prod=cham_no_sdaster, - fr="Effectuer le produit d'une matrice par un vecteur", - reentrant='n', - UIinfo={"groupes":("Post-traitements","Matrices et vecteurs",)}, - MATR_ASSE =SIMP(statut='o',typ=(matr_asse_depl_r,matr_asse_depl_c,matr_asse_temp_r,matr_asse_pres_c ) ), - CHAM_NO =SIMP(statut='o',typ=cham_no_sdaster), - TITRE =SIMP(statut='f',typ='TXM',max='**'), -) ; - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2012 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== - -# person_in_charge: emmanuel.boyere at edf.fr - - -def proj_base_prod(self,MATR_ASSE_GENE,VECT_ASSE_GENE, - RESU_GENE, NUME_DDL_GENE, - STOCKAGE,**args ): - if NUME_DDL_GENE is not None and NUME_DDL_GENE.isTypCO(): - self.typeSDProd(NUME_DDL_GENE, nume_ddl_gene) - if MATR_ASSE_GENE != None: - for m in MATR_ASSE_GENE: - self.typeSDProd(m['MATRICE'],matr_asse_gene_r) - if VECT_ASSE_GENE != None: - for v in VECT_ASSE_GENE: - self.typeSDProd(v['VECTEUR'],vect_asse_gene) - if RESU_GENE != None: - for v in RESU_GENE: - self.typeSDProd(v['RESULTAT'],tran_gene) - return None - -PROJ_BASE=MACRO(nom="PROJ_BASE", - op=OPS('Macro.proj_base_ops.proj_base_ops'), - regles=(AU_MOINS_UN('MATR_ASSE_GENE','VECT_ASSE_GENE','RESU_GENE')), - UIinfo={"groupes":("Matrices et vecteurs","Dynamique",)}, - sd_prod=proj_base_prod, - fr="Projection des matrices et/ou vecteurs assembles sur une base (modale ou de RITZ)", - BASE =SIMP(statut='o',typ=(mode_meca,mode_gene) ), - NB_VECT =SIMP(statut='f',typ='I',defaut= 9999), - STOCKAGE =SIMP(statut='f',typ='TXM',defaut="PLEIN",into=("PLEIN","DIAG") ), - NUME_DDL_GENE =SIMP(statut='f',typ=(nume_ddl_gene,CO),defaut=None), - MATR_ASSE_GENE =FACT(statut='f',max='**', - MATRICE =SIMP(statut='o',typ=CO,), - regles=(UN_PARMI('MATR_ASSE','MATR_ASSE_GENE',),), - MATR_ASSE =SIMP(statut='f',typ=matr_asse_depl_r), - MATR_ASSE_GENE =SIMP(statut='f',typ=matr_asse_gene_r), - ), - VECT_ASSE_GENE =FACT(statut='f',max='**', - VECTEUR =SIMP(statut='o',typ=CO,), - regles=(UN_PARMI('VECT_ASSE','VECT_ASSE_GENE',),), - TYPE_VECT =SIMP(statut='f',typ='TXM',defaut="FORC"), - VECT_ASSE =SIMP(statut='f',typ=cham_no_sdaster), - VECT_ASSE_GENE =SIMP(statut='f',typ=vect_asse_gene), - ), - RESU_GENE =FACT(statut='f',max='**', - RESULTAT =SIMP(statut='o',typ=CO,), - TYPE_VECT =SIMP(statut='f',typ='TXM',defaut="FORC"), - RESU =SIMP(statut='o',typ=dyna_trans), - ), - INFO =SIMP(statut='f',typ='I',defaut=1,into=(1,2)), -) ; - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2013 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: jacques.pellet at edf.fr -def proj_champ_prod(RESULTAT=None,CHAM_GD=None,METHODE=None,**args ): - if (RESULTAT == None and CHAM_GD == None) : return corresp_2_mailla - if RESULTAT != None : return AsType(RESULTAT) - if CHAM_GD != None and METHODE == 'SOUS_POINT' : - return cham_elem - else : - return AsType(CHAM_GD) - raise AsException("type de concept resultat non prevu") - - - - -PROJ_CHAMP=OPER(nom="PROJ_CHAMP",op= 166,sd_prod=proj_champ_prod,reentrant='f', - UIinfo={"groupes":("Résultats et champs",)}, - fr="Projeter des champs d'un maillage sur un autre", - - # faut-il projeter les champs ? - PROJECTION =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON",),), - - # pour projeter avec une sd_corresp_2_mailla deja calculée : - MATR_PROJECTION =SIMP(statut='f',typ=corresp_2_mailla,), - - - - #----------------------------------------------------------------------------------------------------------- - # 1er cas : on fait tout d'un coup : creation de la sd_corresp_2_mailla + projection des champs - #----------------------------------------------------------------------------------------------- - b_1_et_2 =BLOC(condition= "PROJECTION == 'OUI' and MATR_PROJECTION == None", - regles=(UN_PARMI('RESULTAT','CHAM_GD'), - UN_PARMI('MODELE_1','MAILLAGE_1'), - UN_PARMI('MODELE_2','MAILLAGE_2'), - ), - RESULTAT =SIMP(statut='f',typ=resultat_sdaster), - CHAM_GD =SIMP(statut='f',typ=(cham_no_sdaster,cham_elem)), - - METHODE =SIMP(statut='f',typ='TXM',defaut="AUTO", - into=("NUAGE_DEG_0","NUAGE_DEG_1","AUTO","COLLOCATION","ECLA_PG","SOUS_POINT") ), - - - MODELE_1 =SIMP(statut='f',typ=modele_sdaster), - MAILLAGE_1 =SIMP(statut='f',typ=(maillage_sdaster,squelette)), - - MODELE_2 =SIMP(statut='f',typ=modele_sdaster), - MAILLAGE_2 =SIMP(statut='f',typ=maillage_sdaster), - - # Cas de la projection NUAGE_DEG_0/1 : - #-------------------------------------------- - b_nuage =BLOC(condition="METHODE in ('NUAGE_DEG_0','NUAGE_DEG_1')", - CHAM_NO_REFE =SIMP(statut='o',typ=cham_no_sdaster), - ), - - - # Cas de la projection COLLOCATION : - #-------------------------------------------- - b_elem =BLOC(condition="METHODE in ('COLLOCATION','ECLA_PG','AUTO')", - CAS_FIGURE =SIMP(statut='f',typ='TXM',into=("2D","3D","2.5D","1.5D",), - fr="Pour indiquer au programme le type de projection souhaité"), - DISTANCE_MAX =SIMP(statut='f',typ='R', - fr="Distance maximale entre le noeud et l'élément le plus proche, lorsque le noeud n'est dans aucun élément."), - - TRANSF_GEOM_1 =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule),min=2,max=3, - fr="2 (ou 3) fonctions fx,fy,fz définissant la transformation géométrique à appliquer"+ - " aux noeuds du MODELE_1 avant la projection."), - TRANSF_GEOM_2 =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule),min=2,max=3, - fr="2 (ou 3) fonctions fx,fy,fz définissant la transformation géométrique à appliquer"+ - " aux noeuds du MODELE_2 avant la projection."), - - ALARME =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON") ), - - TYPE_CHAM =SIMP(statut='f',typ='TXM',into=("NOEU",), - fr="Pour forcer le type des champs projetés. NOEU -> cham_no"), - - PROL_ZERO =SIMP(statut='f',typ='TXM',into=("OUI","NON"),defaut="NON", - fr="Pour prolonger les champs par zéro là ou la projection ne donne pas de valeurs."), - ), - - # Cas de la projection SOUS_POINT : - #-------------------------------------------- - b_sous_point =BLOC(condition="METHODE == 'SOUS_POINT'" , - CARA_ELEM =SIMP(statut='o',typ=cara_elem), - PROL_ZERO =SIMP(statut='f',typ='TXM',into=("OUI","NON"),defaut="NON", - fr="Pour prolonger les champs par zéro là ou la projection ne donne pas de valeurs."), - TRANSF_GEOM_1 =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule),min=2,max=3, - fr="2 (ou 3) fonctions fx,fy,fz définissant la transformation géométrique à appliquer"+ - " aux noeuds du MODELE_1 avant la projection."), - TRANSF_GEOM_2 =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule),min=2,max=3, - fr="2 (ou 3) fonctions fx,fy,fz définissant la transformation géométrique à appliquer"+ - " aux noeuds du MODELE_2 avant la projection."), - ), - - - # Cas de la projection d'une sd_resultat : - #-------------------------------------------- - b_resultat =BLOC(condition="RESULTAT != None", - regles=(EXCLUS('TOUT_ORDRE','NUME_ORDRE','INST','FREQ','LIST_INST','LIST_FREQ','LIST_ORDRE'), - EXCLUS('TOUT_CHAM','NOM_CHAM',),), - NOM_PARA =SIMP(statut='f',typ='TXM', max='**'), - TOUT_CHAM =SIMP(statut='f',typ='TXM',into=("OUI",) ), - NOM_CHAM =SIMP(statut='f',typ='TXM',validators=NoRepeat(),max='**',into=C_NOM_CHAM_INTO(),), - - NUME_DDL =SIMP(statut='f',typ=(nume_ddl_sdaster), - fr="Utile en dynamique pour pouvoir imoser la numérotation des cham_no."), - - TOUT_ORDRE =SIMP(statut='f',typ='TXM',into=("OUI",) ), - NUME_ORDRE =SIMP(statut='f',typ='I',validators=NoRepeat(),max='**' ), - LIST_ORDRE =SIMP(statut='f',typ=listis_sdaster), - INST =SIMP(statut='f',typ='R',validators=NoRepeat(),max='**' ), - LIST_INST =SIMP(statut='f',typ=listr8_sdaster), - FREQ =SIMP(statut='f',typ='R',validators=NoRepeat(),max='**' ), - LIST_FREQ =SIMP(statut='f',typ=listr8_sdaster), - NUME_MODE =SIMP(statut='f',typ='I',validators=NoRepeat(),max='**' ), - NOEUD_CMP =SIMP(statut='f',typ='TXM',validators=NoRepeat(),max='**'), - - b_acce_reel =BLOC(condition="(FREQ != None)or(LIST_FREQ != None)or(INST != None)or(LIST_INST != None)", - CRITERE =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU",),), - b_prec_rela=BLOC(condition="(CRITERE=='RELATIF')", - PRECISION =SIMP(statut='f',typ='R',defaut= 1.E-6,),), - b_prec_abso=BLOC(condition="(CRITERE=='ABSOLU')", - PRECISION =SIMP(statut='o',typ='R',),), - ), - ), - - - VIS_A_VIS =FACT(statut='f',max='**', - regles=(AU_MOINS_UN('TOUT_1','GROUP_MA_1','MAILLE_1','GROUP_NO_1','NOEUD_1'), - AU_MOINS_UN('TOUT_2','GROUP_MA_2','MAILLE_2','GROUP_NO_2','NOEUD_2'),), - TOUT_1 =SIMP(statut='f',typ='TXM',into=("OUI",) ), - GROUP_MA_1 =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - MAILLE_1 =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), - GROUP_NO_1 =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'), - NOEUD_1 =SIMP(statut='f',typ=no ,validators=NoRepeat(),max='**'), - TOUT_2 =SIMP(statut='f',typ='TXM',into=("OUI",) ), - GROUP_MA_2 =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - MAILLE_2 =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), - GROUP_NO_2 =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'), - NOEUD_2 =SIMP(statut='f',typ=no ,validators=NoRepeat(),max='**'), - - # les mots clés suivants ne sont actifs que si METHODE='COLLOCATION' mais on ne peut pas le vérifier: - CAS_FIGURE =SIMP(statut='f',typ='TXM',into=("2D","3D","2.5D","1.5D",) ), - TRANSF_GEOM_1 =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule),min=2,max=3, - fr="2 (ou 3) fonctions fx,fy,fz définissant la transformation géométrique à appliquer"+ - " aux noeuds du MODELE_1 avant la projection."), - TRANSF_GEOM_2 =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule),min=2,max=3, - fr="2 (ou 3) fonctions fx,fy,fz définissant la transformation géométrique à appliquer"+ - " aux noeuds du MODELE_2 avant la projection."), - ), - ), # fin bloc b_1_et_2 - - - - #----------------------------------------------------------------------------------------------------------- - # 2eme cas : on s'arrete apres la creation de la sd_corresp_2_mailla - #----------------------------------------------------------------------------------------------- - b_1 =BLOC(condition="PROJECTION == 'NON'", - - METHODE =SIMP(statut='f',typ='TXM',defaut="COLLOCATION", - into=("COLLOCATION","COUPLAGE",) ), - - regles=(UN_PARMI('MODELE_1','MAILLAGE_1'), - UN_PARMI('MODELE_2','MAILLAGE_2'), - ), - MODELE_1 =SIMP(statut='f',typ=modele_sdaster), - MAILLAGE_1 =SIMP(statut='f',typ=maillage_sdaster), - - MODELE_2 =SIMP(statut='f',typ=modele_sdaster), - MAILLAGE_2 =SIMP(statut='f',typ=maillage_sdaster), - - - # Cas de la projection COLLOCATION : - #-------------------------------------------- - b_elem =BLOC(condition="METHODE in ('COLLOCATION',)", - CAS_FIGURE =SIMP(statut='f',typ='TXM',into=("2D","3D","2.5D","1.5D",), - fr="Pour indiquer au programme le type de projection souhaité"), - DISTANCE_MAX =SIMP(statut='f',typ='R', - fr="Distance maximale entre le noeud et l'élément le plus proche, lorsque le noeud n'est dans aucun élément."), - - TRANSF_GEOM_1 =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule),min=2,max=3, - fr="2 (ou 3) fonctions fx,fy,fz définissant la transformation géométrique à appliquer"+ - " aux noeuds du MODELE_1 avant la projection."), - TRANSF_GEOM_2 =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule),min=2,max=3, - fr="2 (ou 3) fonctions fx,fy,fz définissant la transformation géométrique à appliquer"+ - " aux noeuds du MODELE_2 avant la projection."), - - ALARME =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON") ), - - ), - - VIS_A_VIS =FACT(statut='f',max='**', - regles=(AU_MOINS_UN('TOUT_1','GROUP_MA_1','MAILLE_1','GROUP_NO_1','NOEUD_1'), - AU_MOINS_UN('TOUT_2','GROUP_MA_2','MAILLE_2','GROUP_NO_2','NOEUD_2'),), - TOUT_1 =SIMP(statut='f',typ='TXM',into=("OUI",) ), - GROUP_MA_1 =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - MAILLE_1 =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), - GROUP_NO_1 =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'), - NOEUD_1 =SIMP(statut='f',typ=no ,validators=NoRepeat(),max='**'), - TOUT_2 =SIMP(statut='f',typ='TXM',into=("OUI",) ), - GROUP_MA_2 =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - MAILLE_2 =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), - GROUP_NO_2 =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'), - NOEUD_2 =SIMP(statut='f',typ=no ,validators=NoRepeat(),max='**'), - - # les mots clés suivants ne sont actifs que si METHODE='COLLOCATION' mais on ne peut pas le vérifier: - CAS_FIGURE =SIMP(statut='f',typ='TXM',into=("2D","3D","2.5D","1.5D",) ), - TRANSF_GEOM_1 =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule),min=2,max=3, - fr="2 (ou 3) fonctions fx,fy,fz définissant la transformation géométrique à appliquer"+ - " aux noeuds du MODELE_1 avant la projection."), - TRANSF_GEOM_2 =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule),min=2,max=3, - fr="2 (ou 3) fonctions fx,fy,fz définissant la transformation géométrique à appliquer"+ - " aux noeuds du MODELE_2 avant la projection."), - ), - ), # fin bloc b_1 - - - - #----------------------------------------------------------------------------------------------------------- - # 3eme cas : on projette les champs avec une sd_corresp_2_mailla déjé calculée - #----------------------------------------------------------------------------------------------- - b_2 =BLOC(condition="MATR_PROJECTION != None", - regles=(UN_PARMI('RESULTAT','CHAM_GD'),), - RESULTAT =SIMP(statut='f',typ=resultat_sdaster), - CHAM_GD =SIMP(statut='f',typ=(cham_no_sdaster,cham_elem)), - - TYPE_CHAM =SIMP(statut='f',typ='TXM',into=("NOEU",), - fr="Pour forcer le type des champs projetés. NOEU -> cham_no"), - - NUME_DDL =SIMP(statut='f',typ=(nume_ddl_sdaster), - fr="Parfois utile en dynamique pour pouvoir imposer la numérotation des cham_no."), - - # nécessaire si l'on projette des cham_elem : - MODELE_2 =SIMP(statut='f',typ=modele_sdaster), - - PROL_ZERO =SIMP(statut='f',typ='TXM',into=("OUI","NON"),defaut="NON", - fr="Pour prolonger les champs par zéro là où la projection ne donne pas de valeurs."), - - - - # Cas de la projection d'une sd_resultat : - #-------------------------------------------- - b_resultat =BLOC(condition="RESULTAT != None", - regles=(EXCLUS('TOUT_ORDRE','NUME_ORDRE','INST','FREQ','LIST_INST','LIST_FREQ','LIST_ORDRE'), - EXCLUS('TOUT_CHAM','NOM_CHAM',),), - - NOM_PARA =SIMP(statut='f',typ='TXM', max='**'), - TOUT_CHAM =SIMP(statut='f',typ='TXM',into=("OUI",) ), - NOM_CHAM =SIMP(statut='f',typ='TXM',validators=NoRepeat(),max='**',into=C_NOM_CHAM_INTO(),), - - - TOUT_ORDRE =SIMP(statut='f',typ='TXM',into=("OUI",) ), - NUME_ORDRE =SIMP(statut='f',typ='I',validators=NoRepeat(),max='**' ), - LIST_ORDRE =SIMP(statut='f',typ=listis_sdaster), - INST =SIMP(statut='f',typ='R',validators=NoRepeat(),max='**' ), - LIST_INST =SIMP(statut='f',typ=listr8_sdaster), - FREQ =SIMP(statut='f',typ='R',validators=NoRepeat(),max='**' ), - LIST_FREQ =SIMP(statut='f',typ=listr8_sdaster), - NUME_MODE =SIMP(statut='f',typ='I',validators=NoRepeat(),max='**' ), - NOEUD_CMP =SIMP(statut='f',typ='TXM',validators=NoRepeat(),max='**'), - - b_acce_reel =BLOC(condition="(FREQ != None)or(LIST_FREQ != None)or(INST != None)or(LIST_INST != None)", - CRITERE =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU",),), - b_prec_rela=BLOC(condition="(CRITERE=='RELATIF')", - PRECISION =SIMP(statut='f',typ='R',defaut= 1.E-6,),), - b_prec_abso=BLOC(condition="(CRITERE=='ABSOLU')", - PRECISION =SIMP(statut='o',typ='R',),), - ), - - ), - ), # fin bloc b_2 - - - - TITRE =SIMP(statut='f',typ='TXM',max='**' ), - INFO =SIMP(statut='f',typ='I',defaut=1,into=(1,2)), -) ; - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: emmanuel.boyere at edf.fr -def matr_asse_gene_prod(MATR_ASSE,MATR_ASSE_GENE,**args): - if AsType(MATR_ASSE) == matr_asse_depl_r : return matr_asse_gene_r - if AsType(MATR_ASSE_GENE) == matr_asse_gene_r : return matr_asse_gene_r - if AsType(MATR_ASSE) == matr_asse_depl_c : return matr_asse_gene_c - if AsType(MATR_ASSE_GENE) == matr_asse_gene_c : return matr_asse_gene_c - raise AsException("type de concept resultat non prevu") - -PROJ_MATR_BASE=OPER(nom="PROJ_MATR_BASE",op= 71,sd_prod=matr_asse_gene_prod, - fr="Projection d'une matrice assemblée sur une base (modale ou de RITZ)", - reentrant='n', - UIinfo={"groupes":("Matrices et vecteurs",)}, - regles=(UN_PARMI('MATR_ASSE','MATR_ASSE_GENE'),), - BASE =SIMP(statut='o',typ=(mode_meca,mode_gene ) ), - NUME_DDL_GENE =SIMP(statut='o',typ=nume_ddl_gene ), - MATR_ASSE =SIMP(statut='f',typ=(matr_asse_depl_r,matr_asse_depl_c) ), - MATR_ASSE_GENE =SIMP(statut='f',typ=(matr_asse_gene_r,matr_asse_gene_c) ), -) ; - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2011 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: harinaivo.andriambololona at edf.fr -def proj_mesu_modal_prod(MODELE_MESURE,**args): - vale=MODELE_MESURE['MESURE'] - if AsType(vale) == dyna_trans : return tran_gene - if AsType(vale) == dyna_harmo : return harm_gene - if AsType(vale) == mode_meca : return mode_gene - if AsType(vale) == mode_meca_c : return mode_gene -# if AsType(vale) == base_modale : return mode_gene - raise AsException("type de concept resultat non prevu") - -PROJ_MESU_MODAL=OPER(nom="PROJ_MESU_MODAL",op= 193, - sd_prod=proj_mesu_modal_prod, - reentrant='n', - UIinfo={"groupes":("Résultats et champs",)}, - fr="Calcul des coordonnees généralisees de mesure experimentale relatives a une base de projection", - - MODELE_CALCUL =FACT(statut='o', - MODELE =SIMP(statut='o',typ=(modele_sdaster) ), -# BASE =SIMP(statut='o',typ=(mode_meca,base_modale,) ), - BASE =SIMP(statut='o',typ= mode_meca, ), - ), - MODELE_MESURE =FACT(statut='o', - MODELE =SIMP(statut='o',typ=(modele_sdaster) ), -# MESURE =SIMP(statut='o',typ=(dyna_trans,dyna_harmo,base_modale,mode_meca,mode_meca_c,) ), - MESURE =SIMP(statut='o',typ=(dyna_trans,dyna_harmo,mode_meca,mode_meca_c,) ), - NOM_CHAM =SIMP(statut='f',typ='TXM',defaut="DEPL",into=("DEPL","VITE","ACCE", - "SIEF_NOEU","EPSI_NOEU",),max='**'), - ), - CORR_MANU =FACT(statut='f',max='**', - regles=(PRESENT_PRESENT('NOEU_CALCUL','NOEU_MESURE'),), - NOEU_CALCUL =SIMP(statut='f',typ=no), - NOEU_MESURE =SIMP(statut='f',typ=no), - ), - NOM_PARA =SIMP(statut='f',typ='TXM',max='**'), - RESOLUTION =FACT(statut='f', - METHODE =SIMP(statut='f',typ='TXM',defaut="LU",into=("LU","SVD",) ), - b_svd =BLOC(condition="METHODE=='SVD'", - EPS=SIMP(statut='f',typ='R',defaut=0. ), - ), - REGUL =SIMP(statut='f',typ='TXM',defaut="NON",into=("NON","NORM_MIN","TIK_RELA",) ), - b_regul =BLOC(condition="REGUL!='NON'", - regles=(PRESENT_ABSENT('COEF_PONDER','COEF_PONDER_F', ),), - COEF_PONDER =SIMP(statut='f',typ='R',defaut=0. ,max='**' ), - COEF_PONDER_F =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule),max='**' ), - ), - ), - - ); - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2012 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: albert.alarcon at edf.fr - -PROJ_RESU_BASE=OPER(nom="PROJ_RESU_BASE",op= 79,sd_prod=tran_gene, - fr="Projection d'une sd resultat assemblee sur une base (modale ou de RITZ)", - reentrant='n', - UIinfo={"groupes":("Matrices et vecteurs",)}, - BASE =SIMP(statut='o',typ=(mode_meca,mode_gene) ), - NUME_DDL_GENE =SIMP(statut='o',typ=nume_ddl_gene ), - TYPE_VECT =SIMP(statut='f',typ='TXM',defaut="FORC"), - RESU =SIMP(statut='o',typ=dyna_trans), -) ; - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2013 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: andre.adobes at edf.fr -PROJ_SPEC_BASE=OPER(nom="PROJ_SPEC_BASE",op= 146,sd_prod=interspectre,reentrant='n', - UIinfo={"groupes":("Matrices et vecteurs",)}, - fr="Projecter un ou plusieurs spectres de turbulence sur une (ou plusieurs) base(s) modale(s) ", - regles=(UN_PARMI('BASE_ELAS_FLUI','MODE_MECA','CHAM_NO'), - UN_PARMI('TOUT','GROUP_MA','MAILLE'), - PRESENT_PRESENT('CHAM_NO','MODELE_INTERFACE'),), - SPEC_TURB =SIMP(statut='o',typ=spectre_sdaster,validators=NoRepeat(),max='**' ), - TOUT_CMP =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON")), - BASE_ELAS_FLUI =SIMP(statut='f',typ=melasflu_sdaster ), - b_fluide = BLOC(condition="BASE_ELAS_FLUI !=None", - VITE_FLUI =SIMP(statut='o',typ='R'), - PRECISION =SIMP(statut='f',typ='R',defaut=1.0E-3 ), - ), - MODE_MECA =SIMP(statut='f',typ=mode_meca ), - CHAM_NO =SIMP(statut='f',typ=cham_no_sdaster), - FREQ_INIT =SIMP(statut='o',typ='R',val_min=0.E+0 ), - FREQ_FIN =SIMP(statut='o',typ='R',val_min=0.E+0 ), - NB_POIN =SIMP(statut='o',typ='I' ), - OPTION =SIMP(statut='f',typ='TXM',defaut="TOUT",into=("TOUT","DIAG")), - TOUT =SIMP(statut='f',typ='TXM',into=("OUI",), ), - GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - MAILLE =SIMP(statut='f',typ=ma,validators=NoRepeat(),max='**'), -# Quel est le type attendu derriere MODELE_INTERFACE - MODELE_INTERFACE=SIMP(statut='f',typ=modele_sdaster), - VECT_X =SIMP(statut='f',typ='R',min=3,max=3 ), - VECT_Y =SIMP(statut='f',typ='R',min=3,max=3 ), - ORIG_AXE =SIMP(statut='f',typ='R',min=3,max=3 ), - TITRE =SIMP(statut='f',typ='TXM',max='**' ), -); - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: emmanuel.boyere at edf.fr - -PROJ_VECT_BASE=OPER(nom="PROJ_VECT_BASE",op= 72,sd_prod=vect_asse_gene, - fr="Projection d'un vecteur assemblé sur une base (modale ou de RITZ)", - reentrant='n', - UIinfo={"groupes":("Matrices et vecteurs",)}, - regles=(UN_PARMI('VECT_ASSE','VECT_ASSE_GENE'),), - BASE =SIMP(statut='o',typ=(mode_meca,mode_gene) ), - NUME_DDL_GENE =SIMP(statut='o',typ=nume_ddl_gene ), - TYPE_VECT =SIMP(statut='f',typ='TXM',defaut="FORC"), - VECT_ASSE =SIMP(statut='f',typ=cham_no_sdaster), - VECT_ASSE_GENE =SIMP(statut='f',typ=vect_asse_gene ), -) ; - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2013 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: samuel.geniaut at edf.fr - - -def propa_fiss_prod(self,**args): - if args.has_key('MAIL_TOTAL') : - MAIL_TOTAL = args['MAIL_TOTAL'] - self.typeSDProd(MAIL_TOTAL,maillage_sdaster) - if args.has_key('MAIL_FISS') : - MAIL_FISS = args['MAIL_FISS'] - self.typeSDProd(MAIL_FISS,maillage_sdaster) - if args.has_key('FISSURE') : - FISSURE = args['FISSURE'] - for numfis in FISSURE : - if (args['METHODE_PROPA']=='MAILLAGE') : - self.typeSDProd(numfis['MAIL_PROPAGE'],maillage_sdaster) - else : - self.typeSDProd(numfis['FISS_PROPAGEE'],fiss_xfem) - return None - -PROPA_FISS=MACRO(nom="PROPA_FISS", - op=OPS('Macro.propa_fiss_ops.propa_fiss_ops'), - sd_prod=propa_fiss_prod, - fr="Propagation de fissure avec X-FEM",reentrant='n', - UIinfo={"groupes":("Post-traitements","Rupture",)}, - - METHODE_PROPA = SIMP(statut='o',typ='TXM', - into=("SIMPLEXE","UPWIND","MAILLAGE","INITIALISATION","GEOMETRIQUE") ), - - b_hamilton = BLOC(condition="(METHODE_PROPA=='SIMPLEXE') or (METHODE_PROPA=='UPWIND') or (METHODE_PROPA=='GEOMETRIQUE') ", - MODELE = SIMP(statut='o',typ=modele_sdaster), - TEST_MAIL = SIMP(statut='f',typ='TXM',into=("NON","OUI",),defaut="NON"), - DA_MAX = SIMP(statut='o',typ='R',max=1,val_min=0.0), - RAYON = SIMP(statut='o',typ='R',), - ZONE_MAJ = SIMP(statut='f',typ='TXM',into=("TOUT","TORE"),defaut="TORE"), - b_tore = BLOC(condition = "ZONE_MAJ == 'TORE' ", - RAYON_TORE = SIMP(statut='f',typ='R',max=1,val_min=0.0), - ), - b_propagation = BLOC(condition = "TEST_MAIL == 'NON' ", - FISSURE = FACT(statut='o',min=1,max='**', - FISS_ACTUELLE = SIMP(statut='o',typ=fiss_xfem,max=1), - FISS_PROPAGEE = SIMP(statut='o',typ=CO,max=1), - NB_POINT_FOND = SIMP(statut='f',typ='I',max='**',val_min=2), - TABLE = SIMP(statut='o',typ=table_sdaster,max=1), - ), - LOI_PROPA = FACT(statut='o',max=1, - LOI = SIMP(statut='o',typ='TXM',into=("PARIS",),defaut="PARIS"), - b_paris = BLOC(condition = "LOI=='PARIS'", - C = SIMP(statut='o',typ='R',), - M = SIMP(statut='o',typ='R',), - ), - MATER = SIMP(statut='o',typ=mater_sdaster,), - ), - COMP_LINE = FACT(statut='o',max=1, - COEF_MULT_MINI = SIMP(statut='o',typ='R',), - COEF_MULT_MAXI = SIMP(statut='o',typ='R',), - ), - CRIT_ANGL_BIFURCATION = SIMP(statut='f',typ='TXM',max=1,defaut="SITT_MAX", - into=('SITT_MAX','K1_MAX','K2_NUL','PLAN','ANGLE_IMPO'),), - ), - - b_test_const = BLOC(condition = "TEST_MAIL == 'OUI' ", - FISSURE = FACT(statut='o',min=1,max='**', - FISS_ACTUELLE = SIMP(statut='o',typ=fiss_xfem,max=1), - FISS_PROPAGEE = SIMP(statut='o',typ=CO,max=1), - ), - ITERATIONS = SIMP(statut='f',typ='I',max=1,val_min=3,defaut=5), - TOLERANCE = SIMP(statut='f',typ='R',max=1,val_min=0.0,val_max=100.0,defaut=5.0), - ), - - ), - - b_maillage =BLOC(condition="(METHODE_PROPA=='MAILLAGE')", - MAIL_STRUC = SIMP(statut='o',typ=maillage_sdaster), - ITERATION = SIMP(statut='o',typ='I',max=1), - DA_MAX = SIMP(statut='o',typ='R',max=1), - FISSURE = FACT(statut='o',min=1,max='**', - MAIL_ACTUEL = SIMP(statut='o',typ=maillage_sdaster,max=1), - GROUP_MA_FOND = SIMP(statut='f',typ=grma,defaut="FOND"), - GROUP_MA_FISS = SIMP(statut='f',typ=grma,defaut="FISS"), - FISS_ACTUELLE = SIMP(statut='o',typ=fiss_xfem,max=1), - MAIL_PROPAGE = SIMP(statut='f',typ=CO,max=1), - TABLE = SIMP(statut='o',typ=table_sdaster,max=1), - ), - MAIL_TOTAL = SIMP(statut='o',typ=CO), - LOI_PROPA = FACT(statut='o',max=1, - LOI = SIMP(statut='o',typ='TXM',into=("PARIS",),defaut="PARIS"), - b_paris = BLOC(condition = "LOI=='PARIS'", - C = SIMP(statut='o',typ='R',), - M = SIMP(statut='o',typ='R',), - ), - MATER = SIMP(statut='o',typ=mater_sdaster,), - ), - COMP_LINE = FACT(statut='o',max=1, - COEF_MULT_MINI = SIMP(statut='o',typ='R',), - COEF_MULT_MAXI = SIMP(statut='o',typ='R',), - ), - CRIT_ANGL_BIFURCATION = SIMP(statut='f',typ='TXM',max=1,defaut="SITT_MAX", - into=('SITT_MAX','K1_MAX','K2_NUL','PLAN','ANGLE_IMPO'),), - ), - - b_init =BLOC(condition="(METHODE_PROPA=='INITIALISATION')", - MAIL_STRUC = SIMP(statut='o',typ=maillage_sdaster), - FORM_FISS = SIMP(statut='o',typ='TXM', into=("DEMI_DROITE","DEMI_PLAN","ELLIPSE"), ), - GROUP_MA_FOND = SIMP(statut='f',typ=grma,defaut="FOND"), - GROUP_MA_FISS = SIMP(statut='f',typ=grma,defaut="FISS"), - MAIL_TOTAL = SIMP(statut='o',typ=CO), - MAIL_FISS = SIMP(statut='f',typ=CO), - - b_droite = BLOC(condition = "FORM_FISS == 'DEMI_DROITE' ", - PFON = SIMP(statut='o',typ='R',max=3), - DTAN = SIMP(statut='o',typ='R',min=3,max=3), - ), - - b_plan = BLOC(condition = "FORM_FISS == 'DEMI_PLAN' ", - DTAN = SIMP(statut='o',typ='R',min=3,max=3), - POINT_ORIG = SIMP(statut='o',typ='R',min=3,max=3), - POINT_EXTR = SIMP(statut='o',typ='R',min=3,max=3), - NB_POINT_FOND = SIMP(statut='o',typ='I',), - ), - - b_ellipse = BLOC(condition = "FORM_FISS == 'ELLIPSE' ", - CENTRE =SIMP(statut='o',typ='R',min=3,max=3), - DEMI_GRAND_AXE =SIMP(statut='o',typ='R',val_min=0.E+0), - DEMI_PETIT_AXE =SIMP(statut='o',typ='R',val_min=0.E+0), - VECT_X =SIMP(statut='o',typ='R',min=3,max=3), - VECT_Y =SIMP(statut='o',typ='R',min=3,max=3), - ANGLE_ORIG = SIMP(statut='o',typ='R',), - ANGLE_EXTR = SIMP(statut='o',typ='R',), - NB_POINT_FOND = SIMP(statut='o',typ='I',) - ), - ), - - INFO = SIMP(statut='f',typ='I',defaut=1,into=(0,1,2)), -) - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2013 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: samuel.geniaut at edf.fr - -PROPA_XFEM=OPER(nom="PROPA_XFEM",op=10,sd_prod=fiss_xfem,reentrant='n', - UIinfo={"groupes":("Post-traitements","Rupture",)}, - fr="Propagation de fissure avec X-FEM", - - MODELE =SIMP(statut='o',typ=modele_sdaster), - - TEST_MAIL =SIMP(statut='f',typ='TXM',into=("NON","OUI",),defaut="NON"), - - DA_MAX =SIMP(statut='o',typ='R'), - - FISS_PROP =SIMP(statut='o',typ=fiss_xfem), - - ZONE_MAJ =SIMP(statut='f',typ='TXM',into=("TOUT","TORE"),defaut="TORE"), - - RAYON_TORE =SIMP(statut='f',typ='R'), - - LISTE_FISS =SIMP(statut='o',typ=fiss_xfem,min=1,max='**'), - - ANGLE =SIMP(statut='f',typ='R',max='**'), - VITESSE =SIMP(statut='f',typ='R',max='**'), - DA_FISS =SIMP(statut='f',typ='R'), - NB_CYCLES =SIMP(statut='f',typ='R'), - - b_test_mail_const =BLOC( condition = "TEST_MAIL == 'OUI' ", - FISS_INITIALE =SIMP(statut='o',typ=fiss_xfem,max=1), - DISTANCE =SIMP(statut='o',typ='R',max=1), - TOLERANCE =SIMP(statut='o',typ='R',max=1), - ), - - RAYON =SIMP(statut='o',typ='R',), - - METHODE =SIMP(statut='f',typ='TXM',into=("SIMPLEXE","UPWIND","GEOMETRIQUE"),defaut="UPWIND"), - - INFO =SIMP(statut='f',typ='I',defaut= 0,into=(0,1,2) ), -) ; - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2013 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: renaud.bargellini at edf.fr - -RAFF_GP =MACRO(nom="RAFF_GP", - op=OPS('Macro.raff_gp_ops.raff_gp_ops'), - sd_prod=maillage_sdaster, - UIinfo={"groupes":("Outils-métier","Rupture",)}, - reentrant='n', - fr="Preparation du maillage pour calcul du Gp en 2D", - MAILLAGE_N = SIMP(statut='o',typ=maillage_sdaster, - fr="Maillage avant adaptation", - ang="Mesh before adaptation" ), - TRANCHE_2D = FACT(statut='0',max = 1, - CENTRE =SIMP(statut='o',typ='R',max=2), - RAYON =SIMP(statut='o',typ='R',max=1), - ANGLE =SIMP(statut='o',typ='R',max=1), - TAILLE =SIMP(statut='o',typ='R',max=1), - NB_ZONE =SIMP(statut='o',typ='I',), - ), - NB_RAFF = SIMP(statut='f',typ='I',defaut=4), -) - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2012 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: samuel.geniaut at edf.fr - -# determination du type de sd produite par la commande -def raff_xfem_prod(self,TYPE,**args): - if TYPE == 'DISTANCE' : - return cham_no_sdaster - elif TYPE == 'ZONE' : - return carte_sdaster - else : - raise AsException("type de concept non prevu") - - -RAFF_XFEM=MACRO(nom="RAFF_XFEM", - op=OPS('Macro.raff_xfem_ops.raff_xfem_ops'), - sd_prod=raff_xfem_prod, - fr="Calcul d'un indicateur pour le raffinement", - reentrant='n', - UIinfo={"groupes":("Résultats et champs","Rupture",)}, - - TYPE =SIMP(statut='f',typ='TXM',into=('DISTANCE','ZONE'),defaut='DISTANCE'), - FISSURE=SIMP(statut='o',typ=fiss_xfem,min=1,max='**',), - - b_zone =BLOC(condition = "TYPE == 'ZONE' ",fr="Paramètres de la zone", - RAYON =SIMP(statut='o',typ='R',val_min=0.), - ), - - ) ; - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2012 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: samuel.geniaut at edf.fr - -# commande cachee appelee uniquement par la macro RAFF_XFEM - -RAFF_XFEM_ZONE=OPER(nom="RAFF_XFEM_ZONE", - op=188, -# sd_prod=cham_elem, - sd_prod=carte_sdaster, - fr="Calcul d'un indicateur binaire pour le raffinement", - reentrant='n', - UIinfo={"groupes":("Résultats et champs","Rupture",)}, - - FISSURE=SIMP(statut='o',typ=fiss_xfem,min=1,max=1), - RAYON =SIMP(statut='o',typ='R',val_min=0.), - - ) ; - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: aurore.parrot at edf.fr -RECA_WEIBULL=OPER(nom="RECA_WEIBULL",op= 197,sd_prod=table_sdaster, - fr="Recaler les paramètres du modèle de WEIBULL sur des données expérimentales",reentrant='n', - UIinfo={"groupes":("Post-traitements",)}, - LIST_PARA =SIMP(statut='o',typ='TXM',validators=NoRepeat(),max=2,into=("SIGM_REFE","M",) ), - RESU =FACT(statut='o',max='**', - regles=(EXCLUS('TOUT_ORDRE','NUME_ORDRE','INST','LIST_INST',), - AU_MOINS_UN('TOUT','GROUP_MA','MAILLE', ),), - EVOL_NOLI =SIMP(statut='o',typ=(evol_noli) ), - MODELE =SIMP(statut='o',typ=(modele_sdaster) ), - CHAM_MATER =SIMP(statut='o',typ=(cham_mater) ), - TEMPE =SIMP(statut='f',typ='R' ), - LIST_INST_RUPT =SIMP(statut='o',typ='R',validators=NoRepeat(),max='**' ), - TOUT_ORDRE =SIMP(statut='f',typ='TXM',into=("OUI",) ), - NUME_ORDRE =SIMP(statut='f',typ='I',validators=NoRepeat(),max='**' ), - INST =SIMP(statut='f',typ='R',validators=NoRepeat(),max='**' ), - LIST_INST =SIMP(statut='f',typ=(listr8_sdaster) ), - TOUT =SIMP(statut='f',typ='TXM',into=("OUI",) ), - GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - MAILLE =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), - COEF_MULT =SIMP(statut='f',typ='R',defaut= 1.E0 ), - ), - OPTION =SIMP(statut='f',typ='TXM',defaut="SIGM_ELGA",into=("SIGM_ELGA","SIGM_ELMOY",) ), - CORR_PLAST =SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON",) ), - METHODE =SIMP(statut='f',typ='TXM',defaut="MAXI_VRAI",into=("MAXI_VRAI","REGR_LINE",) ), - INCO_GLOB_RELA =SIMP(statut='f',typ='R',defaut= 1.0E-3 ), - ITER_GLOB_MAXI =SIMP(statut='f',typ='I',defaut= 10 ), - INFO =SIMP(statut='f',typ='I',defaut= 1,into=( 1 , 2 ,) ), - ) ; - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2012 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: mathieu.courtois at edf.fr -def recu_fonction_prod(RESULTAT=None,TABLE=None,RESU_GENE=None, - BASE_ELAS_FLUI=None,CHAM_GD=None,NAPPE=None, - INTE_SPEC=None,NOEUD_J=None,NUME_ORDRE_J=None, - NOM_CMP_J=None,NOM_CMP_I=None,NUME_ORDRE_I=None,NOEUD_I=None, - NOM_PARA_TABL=None,**args): - if AsType(RESULTAT) == dyna_harmo or \ - AsType(RESU_GENE) == harm_gene or \ - (INTE_SPEC and NUME_ORDRE_J and (NUME_ORDRE_I != NUME_ORDRE_J) ) or \ - (INTE_SPEC and NOEUD_J and ((NOEUD_I != NOEUD_J) or (NOM_CMP_I != NOM_CMP_J)) ) or \ - (TABLE != None and NOM_PARA_TABL == "FONCTION_C"): - return fonction_c - else: - return fonction_sdaster - -RECU_FONCTION=OPER(nom="RECU_FONCTION",op=90,sd_prod=recu_fonction_prod, - fr="Extraire sous forme d'une fonction, l'évolution d'une grandeur en fonction d'une autre", - reentrant='f', - UIinfo={"groupes":("Résultats et champs","Fonctions",)}, - regles=(UN_PARMI('CHAM_GD','RESULTAT','RESU_GENE','TABLE','BASE_ELAS_FLUI','NAPPE','INTE_SPEC'),), - - CHAM_GD =SIMP(statut='f',typ=(cham_no_sdaster,cham_elem,),), - RESULTAT =SIMP(statut='f',typ=resultat_sdaster), - RESU_GENE =SIMP(statut='f',typ=(tran_gene, mode_gene, harm_gene)), - TABLE =SIMP(statut='f',typ=(table_sdaster,table_fonction)), - BASE_ELAS_FLUI =SIMP(statut='f',typ=melasflu_sdaster), - NAPPE =SIMP(statut='f',typ=nappe_sdaster), - INTE_SPEC =SIMP(statut='f',typ=interspectre), - -# ======= ACCES A LA SD RESULTAT ================================================= - b_acces = BLOC ( condition = "(RESULTAT != None) or (RESU_GENE != None)", - fr="acces a une SD résultat", -# on ne peut pas mettre de regles, le défaut TOUT_ORDRE est pris en compte dans le fortran - TOUT_ORDRE =SIMP(statut='f',typ='TXM',into=("OUI",) ), - NUME_ORDRE =SIMP(statut='f',typ='I',validators=NoRepeat(),max='**'), - LIST_ORDRE =SIMP(statut='f',typ=listis_sdaster ), - TOUT_INST =SIMP(statut='f',typ='TXM',into=("OUI",) ), - INST =SIMP(statut='f',typ='R',validators=NoRepeat(),max='**'), - LIST_INST =SIMP(statut='f',typ=listr8_sdaster ), - FREQ =SIMP(statut='f',typ='R',validators=NoRepeat(),max='**'), - LIST_FREQ =SIMP(statut='f',typ=listr8_sdaster ), - NUME_MODE =SIMP(statut='f',typ='I',validators=NoRepeat(),max='**'), - b_prec = BLOC ( condition = "(INST != None) or (LIST_INST != None) or (FREQ != None) or (LIST_FREQ != None)", - CRITERE =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU",),), - b_prec_rela=BLOC(condition="(CRITERE=='RELATIF')", - PRECISION =SIMP(statut='f',typ='R',defaut= 1.E-6,),), - b_prec_abso=BLOC(condition="(CRITERE=='ABSOLU')", - PRECISION =SIMP(statut='o',typ='R',),), - INTERP_NUME =SIMP(statut='f',typ='TXM',into=("NON","LIN") ), - ), - ), -# ======= BASE_ELAS_FLUI ================================================= - b_base_elas_flui = BLOC ( condition = "BASE_ELAS_FLUI != None", - fr="Récupération de la fonction à partir d un concept melasflu", - regles=(UN_PARMI('TOUT_ORDRE','NUME_ORDRE'),), - TOUT_ORDRE =SIMP(statut='f',typ='TXM',into=("OUI",) ), - NUME_ORDRE =SIMP(statut='f',typ='I',validators=NoRepeat(),max='**'), - NUME_MODE =SIMP(statut='o',typ='I' ), - PARA_X =SIMP(statut='o',typ='TXM',into=("VITE_FLU",) ), - PARA_Y =SIMP(statut='o',typ='TXM',into=("FREQ","AMOR") ), - ), - -# ======= INTERSPECTRE ================================================= - b_inte_spec = BLOC ( condition = "INTE_SPEC != None", - fr="Récupération de fonction dans un concept interspectre", - regles=(UN_PARMI('NUME_ORDRE_I','NOEUD_I'),), - NOM_CHAM =SIMP(statut='f',typ='TXM',validators=NoRepeat(),into=C_NOM_CHAM_INTO()), - NOEUD_I =SIMP(statut='f',typ=no,max=1), - NUME_ORDRE_I =SIMP(statut='f',typ='I',max=1 ), - b_nume_ordre_i = BLOC (condition = "NUME_ORDRE_I != None", - NUME_ORDRE_J =SIMP(statut='f',typ='I',max=1 ), - ), - b_noeud_i = BLOC (condition = "NOEUD_I != None", - NOEUD_J =SIMP(statut='f',typ=no,max=1), - NOM_CMP_I =SIMP(statut='o',typ='TXM',max=1 ), - NOM_CMP_J =SIMP(statut='f',typ='TXM',max=1 ), - ), - ), - -# ======= TABLE ================================================= - b_table = BLOC ( condition = "TABLE != None", - fr="Récupération de la fonction à partir d un concept table", - regles=(UN_PARMI('PARA_X','NOM_PARA_TABL'), - PRESENT_PRESENT('PARA_X','PARA_Y'),), - PARA_X = SIMP(statut='f',typ='TXM', - fr="1ère colonne de la table qui définit la fonction à récupérer", ), - PARA_Y = SIMP(statut='f',typ='TXM', - fr="2ème colonne de la table qui définit la fonction à récupérer", ), - #b_tabl_fonc = BLOC(condition = "AsType(TABLE) == table_fonction", - NOM_PARA_TABL = SIMP(statut='f',typ='TXM',into=("FONCTION","FONCTION_C"), - fr="Nom du paramètre de la table contenant la fonction" ), - #), - - FILTRE = FACT(statut='f',max='**', - NOM_PARA =SIMP(statut='o',typ='TXM' ), - CRIT_COMP =SIMP(statut='f',typ='TXM',defaut="EQ", - into=("EQ","LT","GT","NE","LE","GE","VIDE", - "NON_VIDE","MAXI","MAXI_ABS","MINI","MINI_ABS") ), - b_vale =BLOC(condition = "(CRIT_COMP in ('EQ','NE','GT','LT','GE','LE'))", - regles=(UN_PARMI('VALE','VALE_I','VALE_K','VALE_C',),), - VALE =SIMP(statut='f',typ='R' ), - VALE_I =SIMP(statut='f',typ='I' ), - VALE_C =SIMP(statut='f',typ='C' ), - VALE_K =SIMP(statut='f',typ='TXM' ),), - - CRITERE =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU") ), - PRECISION =SIMP(statut='f',typ='R',defaut= 1.E-3 ), - ), - ), - -# ======= RESULTAT ================================================= - b_resu = BLOC ( condition = "RESULTAT != None", fr="Opérandes en cas de RESULTAT", - regles=(UN_PARMI('NOM_CHAM','NOM_PARA_RESU'),), - NOM_CHAM =SIMP(statut='f',typ='TXM',validators=NoRepeat(),into=C_NOM_CHAM_INTO()), - NOM_PARA_RESU =SIMP(statut='f',typ='TXM' ), - b_cham = BLOC ( condition = "NOM_CHAM != None", - regles=(AU_MOINS_UN('MAILLE','GROUP_MA','GROUP_NO','NOEUD'), - PRESENT_ABSENT('POINT','NOEUD','GROUP_NO'), - PRESENT_ABSENT('SOUS_POINT','NOEUD','GROUP_NO'), - EXCLUS('GROUP_MA','MAILLE'), - EXCLUS('GROUP_NO','NOEUD'),), - NOM_CMP =SIMP(statut='o',typ='TXM' ), - MAILLE =SIMP(statut='f',typ=ma), - GROUP_MA =SIMP(statut='f',typ=grma), - NOEUD =SIMP(statut='f',typ=no), - GROUP_NO =SIMP(statut='f',typ=grno), - POINT =SIMP(statut='f',typ='I' ), - SOUS_POINT =SIMP(statut='f',typ='I' ), - ), - ), - -# ======= RESU_GENE ================================================= - b_tran_gene = BLOC ( condition = "AsType(RESU_GENE) == tran_gene", - fr="Récupération d'une fonction à partir d un concept TRAN_GENE", - regles=(UN_PARMI('NOM_CHAM','NOEUD_CHOC','GROUP_NO_CHOC'),), - NOM_CHAM =SIMP(statut='f',typ='TXM',validators=NoRepeat(),into=("DEPL","VITE","ACCE","PTEM") ), - NOEUD_CHOC =SIMP(statut='f',typ=no), - GROUP_NO_CHOC =SIMP(statut='f',typ=grno), - b_cham = BLOC ( condition = "(NOM_CHAM=='DEPL') or (NOM_CHAM=='VITE') or (NOM_CHAM=='ACCE')", - regles=(UN_PARMI('GROUP_NO','NOEUD','NUME_CMP_GENE',), - UN_PARMI('NOM_CMP','NUME_CMP_GENE',), - EXCLUS('MULT_APPUI','CORR_STAT'),), - NOM_CMP =SIMP(statut='f',typ='TXM' ), - NUME_CMP_GENE =SIMP(statut='f',typ='I' ), - NOEUD =SIMP(statut='f',typ=no), - GROUP_NO =SIMP(statut='f',typ=grno), - MULT_APPUI =SIMP(statut='f',typ='TXM',into=("OUI",) ), - CORR_STAT =SIMP(statut='f',typ='TXM',into=("OUI",) ), - ACCE_MONO_APPUI =SIMP(statut='f',typ=(fonction_sdaster,formule)), - ), - b_choc = BLOC ( condition = "(NOEUD_CHOC != None) or (GROUP_NO_CHOC != None)", - regles=(PRESENT_PRESENT('SOUS_STRUC','INTITULE'),), - PARA_X =SIMP(statut='o',typ='TXM', - into=("INST","FN","FT1","FT2","VN","VT1","VT2","DXLOC","DYLOC","DZLOC") ), - PARA_Y =SIMP(statut='o',typ='TXM', - into=("INST","FN","FT1","FT2","VN","VT1","VT2","DXLOC","DYLOC","DZLOC") ), - LIST_PARA =SIMP(statut='f',typ=listr8_sdaster ), - INTITULE =SIMP(statut='f',typ='TXM' ), - SOUS_STRUC =SIMP(statut='f',typ='TXM' ), - ), - ), - b_harm_gene = BLOC ( condition = "AsType(RESU_GENE)==harm_gene", - fr="Récupération d'une fonction à partir d un concept HARM_GENE", - regles=(UN_PARMI('NOM_CMP','NUME_CMP_GENE'), - UN_PARMI('GROUP_NO','NOEUD','NUME_CMP_GENE',),), - NOM_CHAM =SIMP(statut='f',typ='TXM',validators=NoRepeat(),into=("DEPL","VITE","ACCE") ), - NOM_CMP =SIMP(statut='f',typ='TXM' ), - NUME_CMP_GENE =SIMP(statut='f',typ='I' ), - NOEUD =SIMP(statut='f',typ=no), - GROUP_NO =SIMP(statut='f',typ=grno), - ), - # b_harm_gene = BLOC ( condition = "AsType(RESU_GENE)==harm_gene", - # fr="Récupération d'une fonction à partir d un concept HARM_GENE", - # regles=(UN_PARMI('NOM_CHAM','NOM_PARA_RESU'),), - # NOM_CHAM =SIMP(statut='f',typ='TXM',validators=NoRepeat(),into=C_NOM_CHAM_INTO()), - # NOM_PARA_RESU =SIMP(statut='f',typ='TXM' ), - # b_cham = BLOC ( condition = "NOM_CHAM != None", - # regles=(UN_PARMI('NUME_CMP_GENE','NOM_CMP'),), - # NUME_CMP_GENE =SIMP(statut='f',typ='I' ), - # NOM_CMP =SIMP(statut='f',typ='TXM' ), - # b_cmp = BLOC ( condition = "NOM_CMP != None", - # regles=(UN_PARMI('NOEUD','GROUP_NO'),), - # NOEUD =SIMP(statut='f',typ=no), - # GROUP_NO =SIMP(statut='f',typ=grno), - # ), - # ), - # ), - b_mode_gene = BLOC ( condition = "AsType(RESU_GENE)==mode_gene", - fr="Récupération d'une fonction à partir d un concept MODE_GENE", - regles=(UN_PARMI('NOM_CHAM','NOM_PARA_RESU'),), - NOM_CHAM =SIMP(statut='f',typ='TXM',validators=NoRepeat(),into=C_NOM_CHAM_INTO()), - NOM_PARA_RESU =SIMP(statut='f',typ='TXM' ), - b_cham = BLOC ( condition = "NOM_CHAM != None", - regles=(UN_PARMI('NUME_CMP_GENE','NOM_CMP'),), - NUME_CMP_GENE =SIMP(statut='f',typ='I' ), - NOM_CMP =SIMP(statut='f',typ='TXM' ), - b_cmp = BLOC ( condition = "NOM_CMP != None", - regles=(UN_PARMI('NOEUD','GROUP_NO'), - UN_PARMI('SQUELETTE','SOUS_STRUC'),), - NOEUD =SIMP(statut='f',typ=no), - GROUP_NO =SIMP(statut='f',typ=grno), - SQUELETTE =SIMP(statut='f',typ=squelette ), - SOUS_STRUC =SIMP(statut='f',typ='TXM' ), - ), - ), - ), - -# ======= CHAM_GD ================================================= - b_cham_gd = BLOC ( condition = "(CHAM_GD != None)", fr="Opérandes en cas de CHAM_GD", - regles=(AU_MOINS_UN('MAILLE','GROUP_MA','GROUP_NO','NOEUD'), - PRESENT_ABSENT('POINT','NOEUD','GROUP_NO'), - PRESENT_ABSENT('SOUS_POINT','NOEUD','GROUP_NO'), - EXCLUS('GROUP_MA','MAILLE'), - EXCLUS('GROUP_NO','NOEUD'),), - NOM_CMP =SIMP(statut='o',typ='TXM' ), - MAILLE =SIMP(statut='f',typ=ma), - GROUP_MA =SIMP(statut='f',typ=grma), - NOEUD =SIMP(statut='f',typ=no), - GROUP_NO =SIMP(statut='f',typ=grno), - POINT =SIMP(statut='f',typ='I' ), - SOUS_POINT =SIMP(statut='f',typ='I' ), - ), - -# ======= NAPPE ================================================= - b_nappe = BLOC ( condition = "(NAPPE != None)", fr="Opérandes en cas de NAPPE", - VALE_PARA_FONC =SIMP(statut='o',typ='R' ), - PRECISION =SIMP(statut='f',typ='R',defaut= 1.E-3 ), - CRITERE =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU") ), - ), - -# ======= SURCHARGE DES ATTRIBUTS ================================================= - NOM_PARA =SIMP(statut='f',typ='TXM', into=C_PARA_FONCTION() ), - NOM_RESU =SIMP(statut='f',typ='TXM' ), - INTERPOL =SIMP(statut='f',typ='TXM',max=2,into=("NON","LIN","LOG") ), - PROL_DROITE =SIMP(statut='f',typ='TXM',into=("CONSTANT","LINEAIRE","EXCLU") ), - PROL_GAUCHE =SIMP(statut='f',typ='TXM',into=("CONSTANT","LINEAIRE","EXCLU") ), - - TITRE =SIMP(statut='f',typ='TXM',max='**'), - INFO =SIMP(statut='f',typ='I',defaut= 1,into=( 1 , 2 ) ), -) ; - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2012 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: emmanuel.boyere at edf.fr -RECU_GENE=OPER(nom="RECU_GENE",op= 76,sd_prod=vect_asse_gene,reentrant='n', - UIinfo={"groupes":("Résultats et champs",)}, - fr="Extraire d'un champ de grandeur (déplacements, vitesses ou accélérations) à partir de résultats" - +" en coordonnées généralisées", - regles=(UN_PARMI('FREQ','INST',),), - RESU_GENE =SIMP(statut='o',typ=(tran_gene,harm_gene),), - INST =SIMP(statut='f',typ='R',), - FREQ =SIMP(statut='f',typ='R',), - NOM_CHAM =SIMP(statut='f',typ='TXM',defaut="DEPL",into=("DEPL","VITE","ACCE",),), - b_interp_temp=BLOC(condition="INST != None and FREQ == None", - INTERPOL =SIMP(statut='f',typ='TXM',defaut="NON",into=("NON","LIN",),), - CRITERE =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU",),), - b_prec_rela=BLOC(condition="(CRITERE=='RELATIF')", - PRECISION =SIMP(statut='f',typ='R',defaut= 1.E-6,),), - b_prec_abso=BLOC(condition="(CRITERE=='ABSOLU')", - PRECISION =SIMP(statut='o',typ='R',),),), -) ; - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2011 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: nicolas.greffet at edf.fr -# -# RECUPERATION DE PARAMETRES DE COUPLAGE VIA YACS -# -RECU_PARA_YACS=OPER(nom="RECU_PARA_YACS",op=114,sd_prod=listr8_sdaster, - reentrant = 'n', - UIinfo={"groupes":("Fonction",)}, - fr = "Gestion des scalaires via YACS pour le coupleur IFS", - DONNEES = SIMP(statut='o',typ='TXM',into=("INITIALISATION","CONVERGENCE","FIN","PAS",) ), - b_init = BLOC(condition= "DONNEES=='INITIALISATION'", - PAS = SIMP(statut='o',typ='R', ),), - b_noinit = BLOC(condition= "(DONNEES=='CONVERGENCE')or(DONNEES=='FIN')", - NUME_ORDRE_YACS = SIMP(statut='o', typ='I',), - INST = SIMP(statut='o',typ='R', ), - PAS = SIMP(statut='o',typ='R', ),), - b_pastps = BLOC(condition= "(DONNEES=='PAS')", - NUME_ORDRE_YACS = SIMP(statut='o', typ='I',), - INST = SIMP(statut='o',typ='R', ), - PAS = SIMP(statut='o',typ='R', ),), - INFO =SIMP(statut='f',typ='I',defaut=1,into=(1,2)), - TITRE =SIMP(statut='f',typ='TXM',max='**'), -); - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: mathieu.courtois at edf.fr -RECU_TABLE=OPER(nom="RECU_TABLE",op= 174,sd_prod=table_sdaster, - fr="Récupérer dans une table les valeurs d'un paramètre d'une SD Résultat ou d'extraire une table contenue" - +" dans une autre SD pour celles qui le permettent", - UIinfo={"groupes":("Résultats et champs","Tables",)},reentrant='n', - CO =SIMP(statut='o',typ=assd), - regles=(UN_PARMI('NOM_TABLE','NOM_PARA')), - NOM_TABLE =SIMP(statut='f',typ='TXM' ), - NOM_PARA =SIMP(statut='f',typ='TXM',max='**'), - TITRE =SIMP(statut='f',typ='TXM',max='**'), -) ; - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2012 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: jacques.pellet at edf.fr - -RESOUDRE=OPER(nom="RESOUDRE",op=15,sd_prod=cham_no_sdaster,reentrant='f', - fr="Résolution par méthode directe un système d'équations linéaires préalablement factorisé par FACT_LDLT"+ - "ou Résolution d'un système linéaire par la méthode du gradient conjugué préconditionné", - UIinfo={"groupes":("Résolution",)}, - MATR =SIMP(statut='o',typ=(matr_asse_depl_r,matr_asse_depl_c,matr_asse_temp_r, - matr_asse_temp_c,matr_asse_pres_r,matr_asse_pres_c) ), - CHAM_NO =SIMP(statut='o',typ=cham_no_sdaster), - CHAM_CINE =SIMP(statut='f',typ=cham_no_sdaster), - - # mot-clé commun aux solveurs MUMPS, GCPC et PETSc: - RESI_RELA =SIMP(statut='f',typ='R',defaut=1.E-6), - - # mot-clé pour les posttraitements de la phase de solve de MUMPS - POSTTRAITEMENTS =SIMP(statut='f',typ='TXM',defaut="AUTO",into=("SANS","AUTO","FORCE")), - - # mot-clé commun aux solveurs GCPC et PETSc: - NMAX_ITER =SIMP(statut='f',typ='I',defaut= 0 ), - MATR_PREC =SIMP(statut='f',typ=(matr_asse_depl_r,matr_asse_temp_r,matr_asse_pres_r ) ), - - # mots-clés pour solveur PETSc: - ALGORITHME =SIMP(statut='f',typ='TXM',into=("CG", "CR", "GMRES", "GCR", ),defaut="GMRES" ), - - TITRE =SIMP(statut='f',typ='TXM',max='**'), - INFO =SIMP(statut='f',typ='I',into=(1,2) ), -) ; - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2011 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== - -# person_in_charge: Georges-cc.devesa at edf.fr -def rest_cond_tran_prod(RESULTAT,TYPE_RESU,**args ): - - if AsType(RESULTAT) == dyna_trans : return dyna_trans - if (AsType(RESULTAT) == evol_noli and TYPE_RESU == "DYNA_TRANS") : return dyna_trans - if (AsType(RESULTAT) == evol_noli and TYPE_RESU == "EVOL_NOLI") : return evol_noli - - raise AsException("type de concept resultat non prevu") - -REST_COND_TRAN=OPER(nom="REST_COND_TRAN",op= 78,sd_prod=rest_cond_tran_prod, - fr="Restituer dans la base physique des résultats issus d'un calcul" - +"non-lineaire avec projection modale ou d'un calcul transitoire linear" - +"avec condensation dynamique", - reentrant='f', - UIinfo={"groupes":("Matrices et vecteurs",)}, - regles=( - EXCLUS('TOUT_ORDRE','NUME_ORDRE','INST','LIST_INST','TOUT_INST'), - EXCLUS('MACR_ELEM_DYNA','BASE_MODALE'),), - RESULTAT =SIMP(statut='f',typ=(evol_noli,dyna_trans) ), - TYPE_RESU =SIMP(statut='f',typ='TXM',defaut="DYNA_TRANS", - into=("DYNA_TRANS","EVOL_NOLI") ), - BASE_MODALE =SIMP(statut='f',typ=mode_meca), -# NUME_DDL =SIMP(statut='f',typ=nume_ddl_sdaster ), - MACR_ELEM_DYNA =SIMP(statut='f',typ=macr_elem_dyna), - TOUT_INST =SIMP(statut='f',typ='TXM',into=("OUI",) ), - INST =SIMP(statut='f',typ='R',validators=NoRepeat(),max='**' ), - LIST_INST =SIMP(statut='f',typ=listr8_sdaster ), - TOUT_ORDRE =SIMP(statut='f',typ='TXM',into=("OUI",) ), - NUME_ORDRE =SIMP(statut='f',typ='I',validators=NoRepeat(),max='**' ), - CRITERE =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("ABSOLU","RELATIF") ), - b_prec_rela=BLOC(condition="(CRITERE=='RELATIF')", - PRECISION =SIMP(statut='f',typ='R',defaut= 1.E-6,),), - b_prec_abso=BLOC(condition="(CRITERE=='ABSOLU')", - PRECISION =SIMP(statut='o',typ='R',),), - INTERPOL =SIMP(statut='f',typ='TXM',defaut="NON",into=("NON","LIN") ), - TOUT_CHAM =SIMP(statut='f',typ='TXM',into=("OUI",) ), - b_nom_cham=BLOC(condition="TOUT_CHAM == None", - NOM_CHAM =SIMP(statut='f',typ='TXM',validators=NoRepeat(),max=3,defaut="ACCE",into=("DEPL", - "VITE","ACCE",),),), - b_base_moda=BLOC(condition="BASE_MODALE != None", - CHAM_MATER =SIMP(statut='f',typ=cham_mater), - CARA_ELEM =SIMP(statut='f',typ=cara_elem),), - RESU_FINAL =SIMP(statut='f',typ=(evol_noli,dyna_trans) ), - TITRE =SIMP(statut='f',typ='TXM',max='**' ), -) ; - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2011 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== - -# person_in_charge: emmanuel.boyere at edf.fr - -def rest_gene_phys_prod(RESU_GENE,**args ): - if AsType(RESU_GENE) == tran_gene : return dyna_trans - if AsType(RESU_GENE) == mode_gene : return mode_meca - if AsType(RESU_GENE) == harm_gene : return dyna_harmo - - raise AsException("type de concept resultat non prevu") - -REST_GENE_PHYS=OPER(nom="REST_GENE_PHYS",op= 75,sd_prod=rest_gene_phys_prod, - fr="Restituer dans la base physique des résultats en coordonnées généralisées", - reentrant='n', - UIinfo={"groupes":("Matrices et vecteurs",)}, - regles=( - EXCLUS('INST','LIST_INST','TOUT_INST', - 'TOUT_ORDRE','NUME_ORDRE','NUME_MODE',), - EXCLUS('FREQ','LIST_FREQ'), - EXCLUS('MULT_APPUI','CORR_STAT'), - EXCLUS('MULT_APPUI','NOEUD','GROUP_NO'), - EXCLUS('CORR_STAT','NOEUD','GROUP_NO'), - EXCLUS('NOEUD','GROUP_NO'), - EXCLUS('MAILLE','GROUP_MA'), - PRESENT_PRESENT('ACCE_MONO_APPUI','DIRECTION'),), - RESU_GENE =SIMP(statut='f',typ=(tran_gene,mode_gene,harm_gene) ), - MODE_MECA =SIMP(statut='f',typ=mode_meca ), - NUME_DDL =SIMP(statut='f',typ=nume_ddl_sdaster ), - TOUT_INST =SIMP(statut='f',typ='TXM',into=("OUI",) ), - INST =SIMP(statut='f',typ='R',validators=NoRepeat(),max='**' ), - LIST_INST =SIMP(statut='f',typ=listr8_sdaster ), - TOUT_ORDRE =SIMP(statut='f',typ='TXM',into=("OUI",) ), - NUME_ORDRE =SIMP(statut='f',typ='I',validators=NoRepeat(),max='**' ), - NUME_MODE =SIMP(statut='f',typ='I',validators=NoRepeat(),max='**' ), - FREQ =SIMP(statut='f',typ='R',validators=NoRepeat(),max='**' ), - LIST_FREQ =SIMP(statut='f',typ=listr8_sdaster ), - CRITERE =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("ABSOLU","RELATIF") ), - b_prec_rela=BLOC(condition="(CRITERE=='RELATIF')", - PRECISION =SIMP(statut='f',typ='R',defaut= 1.E-6,),), - b_prec_abso=BLOC(condition="(CRITERE=='ABSOLU')", - PRECISION =SIMP(statut='o',typ='R',),), - INTERPOL =SIMP(statut='f',typ='TXM',defaut="NON",into=("NON","LIN") ), - MULT_APPUI =SIMP(statut='f',typ='TXM',into=("OUI",) ), - CORR_STAT =SIMP(statut='f',typ='TXM',into=("OUI",) ), - TOUT_CHAM =SIMP(statut='f',typ='TXM',into=("OUI",) ), - b_nom_cham=BLOC(condition="TOUT_CHAM == None", - NOM_CHAM =SIMP(statut='f',typ='TXM',validators=NoRepeat(),max=8,defaut="ACCE",into=("DEPL", - "VITE","ACCE","ACCE_ABSOLU","EFGE_ELNO","SIPO_ELNO","SIGM_ELNO","FORC_NODA",),),), - GROUP_NO =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'), - NOEUD =SIMP(statut='f',typ=no ,validators=NoRepeat(),max='**'), - GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - MAILLE =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), - ACCE_MONO_APPUI =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - DIRECTION =SIMP(statut='f',typ='R',min=3,max=3 ), - TITRE =SIMP(statut='f',typ='TXM',max='**' ), -) ; - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2013 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -def rest_mode_nonl_prod(TYPE_RESU,**args): - if TYPE_RESU == 'DYNA_TRANS' : return dyna_trans - elif TYPE_RESU == 'MODE_MECA' : return mode_meca - raise AsException("type de concept resultat non prevu") - -REST_MODE_NONL=OPER(nom="REST_MODE_NONL", op=63, - sd_prod=rest_mode_nonl_prod, reentrant='n', - fr="Post traitement de mode_non_line : \ - recuperation resultats ", - UIinfo={"groupes":("Post-traitements",)}, - - MODE_NON_LINE =SIMP(statut='o',typ=table_container,max=1), - TYPE_RESU =SIMP(statut='o',typ='TXM',into=('MODE_MECA','DYNA_TRANS'),defaut='DYNA_TRANS',max=1), - NUME_ORDRE =SIMP(statut='o',typ='I',max=1), - b_dyna_trans =BLOC(condition="TYPE_RESU=='DYNA_TRANS'", - NB_INST =SIMP(statut='f',typ='I',max=1,defaut=512),), - INFO =SIMP(statut='f',typ='I',defaut= 1,into=(1,2) ), - -) ; - - - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2011 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== - -# person_in_charge: mathieu.corus at edf.fr -def rest_sous_struc_prod(RESU_GENE,RESULTAT,**args ): - if AsType(RESU_GENE) == tran_gene : return dyna_trans - if AsType(RESU_GENE) == mode_gene : return mode_meca - if AsType(RESU_GENE) == mode_cycl : return mode_meca - if AsType(RESU_GENE) == harm_gene : return dyna_harmo - if AsType(RESULTAT) == evol_noli : return evol_noli - if AsType(RESULTAT) == dyna_trans : return dyna_trans - if AsType(RESULTAT) == mode_meca : return mode_meca - raise AsException("type de concept resultat non prevu") - -REST_SOUS_STRUC=OPER(nom="REST_SOUS_STRUC",op= 77,sd_prod=rest_sous_struc_prod, - fr="Restituer dans la base physique des résultats obtenus par sous-structuration", - reentrant='n', - UIinfo={"groupes":("Matrices et vecteurs",)}, - regles=(UN_PARMI('RESU_GENE','RESULTAT'), -# ajout d'une regle de Ionel et Nicolas: -# UN_PARMI('NOM_CHAM','TOUT_CHAM'), -# - EXCLUS('TOUT_ORDRE','NUME_ORDRE','INST','LIST_INST','TOUT_INST','NUME_MODE', - 'FREQ', 'LIST_FREQ'), -# Doc U à revoir - EXCLUS('NOEUD','GROUP_NO'), - EXCLUS('MAILLE','GROUP_MA'), - PRESENT_PRESENT('RESULTAT','SQUELETTE'), - UN_PARMI('SQUELETTE','SOUS_STRUC','SECTEUR'), - - ), - RESULTAT =SIMP(statut='f',typ=(evol_noli,dyna_trans, - mode_meca) ), - RESU_GENE =SIMP(statut='f',typ=(tran_gene,mode_gene,mode_cycl,harm_gene) ), - NUME_DDL =SIMP(statut='f',typ=nume_ddl_sdaster ), - MODE_MECA =SIMP(statut='f',typ=mode_meca ), - TOUT_ORDRE =SIMP(statut='f',typ='TXM',into=("OUI",) ), - NUME_ORDRE =SIMP(statut='f',typ='I',validators=NoRepeat(),max='**' ), - NUME_MODE =SIMP(statut='f',typ='I',validators=NoRepeat(),max='**' ), - TOUT_INST =SIMP(statut='f',typ='TXM',into=("OUI",) ), - INST =SIMP(statut='f',typ='R',validators=NoRepeat(),max='**' ), - LIST_INST =SIMP(statut='f',typ=listr8_sdaster ), - FREQ =SIMP(statut='f',typ='R',validators=NoRepeat(),max='**' ), - LIST_FREQ =SIMP(statut='f',typ=listr8_sdaster ), - CRITERE =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("ABSOLU","RELATIF") ), - b_prec_rela=BLOC(condition="(CRITERE=='RELATIF')", - PRECISION =SIMP(statut='f',typ='R',defaut= 1.E-6,),), - b_prec_abso=BLOC(condition="(CRITERE=='ABSOLU')", - PRECISION =SIMP(statut='o',typ='R',),), - INTERPOL =SIMP(statut='f',typ='TXM',defaut="NON",into=("NON","LIN") ), - TOUT_CHAM =SIMP(statut='f',typ='TXM',into=("OUI",) ), - b_nom_cham=BLOC(condition="TOUT_CHAM == None", - NOM_CHAM =SIMP(statut='f',typ='TXM',validators=NoRepeat(),max=8,defaut="ACCE",into=("DEPL", - "VITE","ACCE","ACCE_ABSOLU","EFGE_ELNO","SIPO_ELNO","SIGM_ELNO","FORC_NODA",) ),), - GROUP_NO =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'), - NOEUD =SIMP(statut='f',typ=no ,validators=NoRepeat(),max='**'), - GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - MAILLE =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), - CYCLIQUE =FACT(statut='f',max='**', - NB_SECTEUR =SIMP(statut='f',typ='I',validators=NoRepeat(),max=1 ), - NUME_DIAMETRE =SIMP(statut='f',typ='I',validators=NoRepeat(),max=1 ), - RESULTAT2 =SIMP(statut='f',typ=(evol_elas,evol_noli,dyna_trans,evol_char, - mode_meca) ), - ), - - SQUELETTE =SIMP(statut='f',typ=squelette ), - SOUS_STRUC =SIMP(statut='f',typ='TXM' ), - SECTEUR =SIMP(statut='f',typ='I'), - TITRE =SIMP(statut='f',typ='TXM',max='**' ), -) ; - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2012 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: andre.adobes at edf.fr -REST_SPEC_PHYS=OPER(nom="REST_SPEC_PHYS",op= 148,sd_prod=interspectre, - reentrant='n', - fr="Calculer la réponse d'une structure dans la base physique", - UIinfo={"groupes":("Matrices et vecteurs",)}, - regles=(AU_MOINS_UN('BASE_ELAS_FLUI','MODE_MECA'),), - BASE_ELAS_FLUI =SIMP(statut='f',typ=melasflu_sdaster ), - b_fluide = BLOC(condition="BASE_ELAS_FLUI !=None", - VITE_FLUI =SIMP(statut='o',typ='R'), - PRECISION =SIMP(statut='f',typ='R',defaut=1.0E-3 ), - ), - MODE_MECA =SIMP(statut='f',typ=mode_meca,), - BANDE =SIMP(statut='f',typ='R',min=2,validators=NoRepeat(),max=2 ), - NUME_ORDRE =SIMP(statut='f',typ='I' ,validators=NoRepeat(),max='**' ), - TOUT_ORDRE =SIMP(statut='f',typ='TXM',defaut="NON", into=("OUI","NON") ), - INTE_SPEC_GENE =SIMP(statut='o',typ=interspectre), - NOEUD =SIMP(statut='o',typ=no ,max='**'), - MAILLE =SIMP(statut='f',typ=ma ,max='**'), - NOM_CMP =SIMP(statut='o',typ='TXM',max='**'), - NOM_CHAM =SIMP(statut='o',typ='TXM',validators=NoRepeat(),max=7,into=("DEPL", - "VITE","ACCE","EFGE_ELNO","SIPO_ELNO","SIGM_ELNO","FORC_NODA") ), - MODE_STAT =SIMP(statut='f',typ=mode_meca ), - EXCIT =FACT(statut='f', - NOEUD =SIMP(statut='o',typ=no ,max='**'), - NOM_CMP =SIMP(statut='o',typ='TXM',max='**'), - ), - MOUVEMENT =SIMP(statut='f',typ='TXM',defaut="ABSOLU",into=("RELATIF","ABSOLU","DIFFERENTIEL") ), - OPTION =SIMP(statut='f',typ='TXM',defaut="DIAG_DIAG", - into=("DIAG_TOUT","DIAG_DIAG","TOUT_TOUT","TOUT_DIAG") ), - TITRE =SIMP(statut='f',typ='TXM',max='**' ), -) ; - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2008 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: Georges-cc.devesa at edf.fr -def rest_spec_temp_prod(RESU_GENE,RESULTAT,**args): - if AsType(RESULTAT) == dyna_harmo : return dyna_trans - if AsType(RESU_GENE) == harm_gene : return tran_gene - if AsType(RESULTAT) == dyna_trans : return dyna_harmo - if AsType(RESU_GENE) == tran_gene : return harm_gene - raise AsException("type de concept resultat non prevu") - - -REST_SPEC_TEMP=OPER(nom="REST_SPEC_TEMP",op=181,sd_prod=rest_spec_temp_prod, - fr="Transformée de Fourier d'un résultat", - reentrant='n', - UIinfo={"groupes":("Matrices et vecteurs",)}, - regles=UN_PARMI('RESU_GENE','RESULTAT'), - RESU_GENE =SIMP(statut='f',typ=(harm_gene,tran_gene,) ), - RESULTAT =SIMP(statut='f',typ=(dyna_harmo,dyna_trans,) ), - METHODE =SIMP(statut='f',typ='TXM',defaut="PROL_ZERO",into=("PROL_ZERO","TRONCATURE") ), - SYMETRIE =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON") ), - TOUT_CHAM =SIMP(statut='f',typ='TXM',into=("OUI",)), - NOM_CHAM =SIMP(statut='f',typ='TXM',validators=NoRepeat(),max=3,into=("DEPL","VITE","ACCE") ), -); - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2012 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: jean-michel.proix at edf.fr - - -SIMU_POINT_MAT=MACRO(nom="SIMU_POINT_MAT", - op=OPS('Macro.simu_point_mat_ops.simu_point_mat_ops'), - sd_prod=table_sdaster, - UIinfo={"groupes":("Résolution",)}, - fr="Calcul de l'évolution mécanique, en quasi-statique," \ - " d'un point matériel en non linéaire", - COMPORTEMENT =C_COMPORTEMENT(), - MATER =SIMP(statut='o',typ=mater_sdaster,max=30), - -## ANGLE : rotation de ANGLE autour de Z uniquement, et seulement pour les déformations imposées. - ANGLE =SIMP(statut='f',typ='R',max=1, defaut=0.), -# --MASSIF : orientation du materiau (monocristal, orthotropie) - MASSIF =FACT(statut='f',max='**', - regles=(UN_PARMI('ANGL_REP','ANGL_EULER'),), - ANGL_REP =SIMP(statut='f',typ='R',min=1,max=3), - ANGL_EULER =SIMP(statut='f',typ='R',min=1,max=3), - ), - INCREMENT =C_INCREMENT('MECANIQUE'), - NEWTON =C_NEWTON(), - CONVERGENCE =C_CONVERGENCE(), - - SUPPORT= SIMP(statut='f',typ='TXM',max=1,into=("POINT","ELEMENT",),defaut=("POINT"),), - - b_PM = BLOC(condition="SUPPORT == 'POINT'",fr="Simulation sans élément fini", - FORMAT_TABLE =SIMP(statut='f',typ='TXM',max=1,into=("CMP_COLONNE","CMP_LIGNE",),defaut=("CMP_COLONNE"),), - NB_VARI_TABLE =SIMP(statut='f',typ='I',max=1,), - OPER_TANGENT =SIMP(statut='f',typ='TXM',max=1,into=("OUI","NON",),defaut="NON",), - ARCHIVAGE =FACT(statut='f', - LIST_INST =SIMP(statut='f',typ=(listr8_sdaster) ), - INST =SIMP(statut='f',typ='R',validators=NoRepeat(),max='**' ), - PAS_ARCH =SIMP(statut='f',typ='I' ), - PRECISION =SIMP(statut='f',typ='R',defaut= 1.0E-6), - ), - # on permet certaines variables de commandes scalaires, définies par une fonction du temps - # on permet ici seulementn celles qui sont validees - AFFE_VARC = FACT(statut='f',max='**', - NOM_VARC =SIMP(statut='o',typ='TXM', into=("TEMP","IRRA","SECH")), - VALE_FONC = SIMP(statut='f',typ=(fonction_sdaster,formule) ), - - # VALE_REF est nécessaire pour certaines VARC : - B_VALE_REF =BLOC(condition="NOM_VARC in ('TEMP', 'SECH')", - VALE_REF =SIMP(statut='o',typ='R'), - ), - ), - # un mot clé caché qui ne sert qu'à boucler sur les VARC possibles : - LIST_NOM_VARC =SIMP(statut='c',typ='TXM', defaut=("TEMP","IRRA","SECH")), - - ), - b_EF = BLOC(condition="SUPPORT == 'ELEMENT'",fr="Simulation sur un élément fini", - MODELISATION =SIMP(statut='f',typ='TXM',max=1,into=("3D","C_PLAN","D_PLAN",)), - RECH_LINEAIRE =C_RECH_LINEAIRE(), - ARCHIVAGE =C_ARCHIVAGE(), - SUIVI_DDL =C_SUIVI_DDL(), - - # on permet certaines variables de commandes scalaires, définies par une fonction du temps - # a priori toutes doivent fonctionner - AFFE_VARC = FACT(statut='f',max='**', - NOM_VARC =SIMP(statut='o',typ='TXM', into=("TEMP","CORR","IRRA","HYDR","SECH","M_ACIER","M_ZIRC", - "EPSA","NEUT1","NEUT2")), - VALE_FONC = SIMP(statut='f',typ=(fonction_sdaster,formule) ), - VALE_REF = SIMP(statut='f',typ='R'), - - b_ZIRC = BLOC(condition="NOM_VARC=='M_ZIRC'", - V1 = SIMP(statut='o',typ=(fonction_sdaster,formule) ), - V2 = SIMP(statut='o',typ=(fonction_sdaster,formule) ), - V3 = SIMP(statut='o',typ=(fonction_sdaster,formule) ), - V4 = SIMP(statut='o',typ=(fonction_sdaster,formule) ), - ), - - b_ACIER = BLOC(condition="NOM_VARC=='M_ACIER'", - V1 = SIMP(statut='o',typ=(fonction_sdaster,formule) ), - V2 = SIMP(statut='o',typ=(fonction_sdaster,formule) ), - V3 = SIMP(statut='o',typ=(fonction_sdaster,formule) ), - V4 = SIMP(statut='o',typ=(fonction_sdaster,formule) ), - V5 = SIMP(statut='o',typ=(fonction_sdaster,formule) ), - V6 = SIMP(statut='o',typ=(fonction_sdaster,formule) ), - V7 = SIMP(statut='o',typ=(fonction_sdaster,formule) ), - ), - ), - # un mot clé caché qui ne sert qu'à boucler sur les VARC possibles : - LIST_NOM_VARC =SIMP(statut='c',typ='TXM', defaut=("TEMP","CORR","IRRA","HYDR","SECH","EPSA", - "M_ACIER","M_ZIRC","NEUT1","NEUT2")), - - SIGM_IMPOSE=FACT(statut='f', - SIXX = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - SIYY = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - SIZZ = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - SIXY = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - SIXZ = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - SIYZ = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - ), - EPSI_IMPOSE=FACT(statut='f', - EPXX = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - EPYY = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - EPZZ = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - EPXY = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - EPXZ = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - EPYZ = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - ), - - ), - b_COEF = BLOC(condition="SUPPORT == 'POINT'",fr="matrice de coefficients", - regles = (PRESENT_ABSENT('SIGM_IMPOSE','MATR_C1','MATR_C2','VECT_IMPO'), - PRESENT_ABSENT('EPSI_IMPOSE','MATR_C1','MATR_C2','VECT_IMPO'), - PRESENT_ABSENT('MATR_C1','SIGM_IMPOSE','EPSI_IMPOSE'), - PRESENT_ABSENT('MATR_C2','SIGM_IMPOSE','EPSI_IMPOSE'), - PRESENT_ABSENT('VECT_IMPO', 'SIGM_IMPOSE','EPSI_IMPOSE'), - EXCLUS('EPSI_IMPOSE','GRAD_IMPOSE'), - EXCLUS('SIGM_IMPOSE','GRAD_IMPOSE'), - ), - - SIGM_IMPOSE=FACT(statut='f', - SIXX = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - SIYY = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - SIZZ = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - SIXY = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - SIXZ = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - SIYZ = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - ), - EPSI_IMPOSE=FACT(statut='f', - EPXX = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - EPYY = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - EPZZ = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - EPXY = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - EPXZ = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - EPYZ = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - ), - GRAD_IMPOSE=FACT(statut='f', - regles = ( ENSEMBLE('F11','F12','F13','F21','F22','F23','F31','F32','F33',),), - F11 = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - F12 = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - F13 = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - F21 = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - F22 = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - F23 = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - F31 = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - F32 = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - F33 = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - ), - MATR_C1=FACT(statut='f',max='**', - VALE =SIMP(statut='o',typ='R',max=1, ), - NUME_LIGNE =SIMP(statut='o',typ='I',max=1,val_min=1,val_max=6 ), - NUME_COLONNE =SIMP(statut='o',typ='I',max=1,val_min=1,val_max=12 ), - ), - MATR_C2=FACT(statut='f',max='**', - VALE =SIMP(statut='o',typ='R',max=1, ), - NUME_LIGNE =SIMP(statut='o',typ='I',max=1,val_min=1,val_max=6 ), - NUME_COLONNE =SIMP(statut='o',typ='I',max=1,val_min=1,val_max=12 ), - ), - VECT_IMPO=FACT(statut='f',max='**', - VALE =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule),max=1, ), - NUME_LIGNE =SIMP(statut='o',typ='I',max=1,val_min=1,val_max=6 ), - ), - ), - SIGM_INIT=FACT(statut='f', - SIXX = SIMP(statut='f',typ='R',max=1,defaut=0.0E+0), - SIYY = SIMP(statut='f',typ='R',max=1,defaut=0.0E+0), - SIZZ = SIMP(statut='f',typ='R',max=1,defaut=0.0E+0), - SIXY = SIMP(statut='f',typ='R',max=1,defaut=0.0E+0), - SIXZ = SIMP(statut='f',typ='R',max=1,defaut=0.0E+0), - SIYZ = SIMP(statut='f',typ='R',max=1,defaut=0.0E+0), - ), - EPSI_INIT=FACT(statut='f', - EPXX = SIMP(statut='o',typ='R',max=1), - EPYY = SIMP(statut='o',typ='R',max=1), - EPZZ = SIMP(statut='o',typ='R',max=1), - EPXY = SIMP(statut='o',typ='R',max=1), - EPXZ = SIMP(statut='o',typ='R',max=1), - EPYZ = SIMP(statut='o',typ='R',max=1), - ), - VARI_INIT=FACT(statut='f', - VALE = SIMP(statut='o',typ='R',max='**'), - ), - - INFO =SIMP(statut='f',typ='I',defaut=1,into=(1,2) ), -) - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2011 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: aimery.assire at edf.fr - - -STANLEY=MACRO(nom="STANLEY", - op=OPS('Macro.stanley_ops.stanley_ops'), - sd_prod=None, - reentrant='n', - UIinfo={"groupes":("Post-traitements",)}, - fr="Outil de post-traitement interactif Stanley ", - RESULTAT =SIMP(statut='f',typ=(evol_elas,evol_noli,evol_ther,mode_meca,dyna_harmo,dyna_trans) ), - MODELE =SIMP(statut='f',typ=modele_sdaster), - CHAM_MATER =SIMP(statut='f',typ=cham_mater), - CARA_ELEM =SIMP(statut='f',typ=cara_elem), - DISPLAY =SIMP(statut='f',typ='TXM'), - UNITE_VALIDATION=SIMP(statut='f',typ='I',val_min=10,val_max=90, - fr="Unité logique définissant le fichier (fort.N) dans lequel on écrit les md5"), - -) ; - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2012 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: mickael.abbas at edf.fr -# -STAT_NON_LINE=OPER(nom="STAT_NON_LINE",op=70,sd_prod=evol_noli, - fr="Calcul de l'évolution mécanique ou thermo-hydro-mécanique couplée, en quasi-statique," - +" d'une structure en non linéaire", - reentrant='f', - UIinfo={"groupes":("Résolution","Mécanique",)}, - - MODELE =SIMP(statut='o',typ=modele_sdaster), - CHAM_MATER =SIMP(statut='o',typ=cham_mater), - CARA_ELEM =SIMP(statut='f',typ=cara_elem), - EXCIT =FACT(statut='o',max='**', - CHARGE =SIMP(statut='o',typ=(char_meca,char_cine_meca)), - FONC_MULT =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - TYPE_CHARGE =SIMP(statut='f',typ='TXM',defaut="FIXE_CSTE", - into=("FIXE_CSTE","FIXE_PILO","SUIV","DIDI")), - ), - CONTACT =SIMP(statut='f',typ=char_contact), - SOUS_STRUC =FACT(statut='f',min=01,max='**', - regles=(UN_PARMI('TOUT','SUPER_MAILLE'),), - CAS_CHARGE =SIMP(statut='o',typ='TXM' ), - TOUT =SIMP(statut='f',typ='TXM',into=("OUI",) ), - SUPER_MAILLE=SIMP(statut='f',typ=ma,validators=NoRepeat(),max='**',), - FONC_MULT =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - ), -#------------------------------------------------------------------- - COMPORTEMENT =C_COMPORTEMENT('STAT_NON_LINE'), -#------------------------------------------------------------------- - b_reuse =BLOC(condition = "reuse",fr="en mode concept reentrant : ETAT_INIT obligatoire", - ETAT_INIT =FACT(statut='o', - regles=(AU_MOINS_UN('EVOL_NOLI','DEPL','SIGM','VARI',), - # EXCLUS('EVOL_NOLI','DEPL',), - # EXCLUS('EVOL_NOLI','SIGM',), - # EXCLUS('EVOL_NOLI','VARI',), - EXCLUS('NUME_ORDRE','INST'), ), - DEPL =SIMP(statut='f',typ=cham_no_sdaster), - SIGM =SIMP(statut='f',typ=(cham_elem,carte_sdaster)), - VARI =SIMP(statut='f',typ=cham_elem), - STRX =SIMP(statut='f',typ=cham_elem), - EVOL_NOLI =SIMP(statut='f',typ=evol_noli), - NUME_ORDRE =SIMP(statut='f',typ='I'), - INST =SIMP(statut='f',typ='R'), - CRITERE =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU") ), - b_prec_rela=BLOC(condition="(CRITERE=='RELATIF')", - PRECISION =SIMP(statut='f',typ='R',defaut= 1.E-6,),), - b_prec_abso=BLOC(condition="(CRITERE=='ABSOLU')", - PRECISION =SIMP(statut='o',typ='R',),), - NUME_DIDI =SIMP(statut='f',typ='I'), - INST_ETAT_INIT =SIMP(statut='f',typ='R'), - ),), - b_not_reuse =BLOC(condition = "not reuse",fr="en mode concept non reentrant : ETAT_INIT facultatif", - ETAT_INIT =FACT(statut='f', - regles=(AU_MOINS_UN('EVOL_NOLI','DEPL','SIGM','VARI',), - # EXCLUS('EVOL_NOLI','DEPL',), - # EXCLUS('EVOL_NOLI','SIGM',), - # EXCLUS('EVOL_NOLI','VARI',), - EXCLUS('NUME_ORDRE','INST'), ), - DEPL =SIMP(statut='f',typ=cham_no_sdaster), - SIGM =SIMP(statut='f',typ=(cham_elem,carte_sdaster)), - VARI =SIMP(statut='f',typ=cham_elem), - STRX =SIMP(statut='f',typ=cham_elem), - EVOL_NOLI =SIMP(statut='f',typ=evol_noli), - NUME_ORDRE =SIMP(statut='f',typ='I'), - INST =SIMP(statut='f',typ='R'), - CRITERE =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU") ), - b_prec_rela=BLOC(condition="(CRITERE=='RELATIF')", - PRECISION =SIMP(statut='f',typ='R',defaut= 1.E-6,),), - b_prec_abso=BLOC(condition="(CRITERE=='ABSOLU')", - PRECISION =SIMP(statut='o',typ='R',),), - NUME_DIDI =SIMP(statut='f',typ='I'), - INST_ETAT_INIT =SIMP(statut='f',typ='R'), - ),), -#------------------------------------------------------------------- - INCREMENT =C_INCREMENT('MECANIQUE'), -#------------------------------------------------------------------- - METHODE =SIMP(statut='d',typ='TXM',defaut="NEWTON",into=("NEWTON","IMPLEX","NEWTON_KRYLOV")), - b_meth_newton = BLOC(condition = "METHODE == 'NEWTON' or METHODE == 'NEWTON_KRYLOV'", - NEWTON = C_NEWTON(), - ), -#------------------------------------------------------------------- - RECH_LINEAIRE =C_RECH_LINEAIRE(), -#------------------------------------------------------------------- - PILOTAGE =C_PILOTAGE(), -#------------------------------------------------------------------- - CONVERGENCE =C_CONVERGENCE(), -#------------------------------------------------------------------- - SOLVEUR =C_SOLVEUR('STAT_NON_LINE'), -#------------------------------------------------------------------- - OBSERVATION =C_OBSERVATION(), -#------------------------------------------------------------------- - SUIVI_DDL =C_SUIVI_DDL(), -#------------------------------------------------------------------- - ARCHIVAGE =C_ARCHIVAGE(), -#------------------------------------------------------------------- - CRIT_QUALITE =FACT(statut='f',max=1, - ERRE_TEMPS_THM =SIMP(statut='f',typ='TXM',into=("OUI","NON"),defaut="NON", - fr="Adaptation temporelle pour les modélisations HM instationnaires", - ang="Time adaptation for unstationary HM models"), - ), -#------------------------------------------------------------------- - ENERGIE =FACT(statut='f',max=1, - CALCUL =SIMP(statut='f',typ='TXM',into=("OUI",),defaut="OUI",), - ), -#------------------------------------------------------------------- - AFFICHAGE =C_AFFICHAGE(), -#------------------------------------------------------------------- - CRIT_STAB =FACT(statut='f',min=1,max=1, - NB_FREQ =SIMP(statut='f',typ='I',max=1,val_min=1,defaut=3), - COEF_DIM_ESPACE =SIMP(statut='f',typ='I',max=1,val_min=2,defaut=5), - RIGI_GEOM =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON")), - MODI_RIGI =SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON")), - b_char_crit =BLOC(condition="(RIGI_GEOM=='OUI')", - CHAR_CRIT =SIMP(statut='f',typ='R',min=2,max=2, - fr="Valeur des deux charges critiques délimitant la bande de recherche en HPP"), - ), - TYPE =SIMP(statut='f',typ='TXM',defaut="FLAMBEMENT",into=("FLAMBEMENT","STABILITE")), - PREC_INSTAB =SIMP(statut='f',typ='R',defaut=1.E-6,max=1,), - SIGNE =SIMP(statut='f',typ='TXM',defaut=("POSITIF_NEGATIF"),into=("NEGATIF","POSITIF","POSITIF_NEGATIF"),max=1,), - b_rigi_geom =BLOC(condition="(RIGI_GEOM=='NON')", - DDL_EXCLUS =SIMP(statut='f',typ='TXM',validators=NoRepeat(),max=40, - into=('DX','DY','DZ','DRX','DRY','DRZ','GRX','PRES','PHI', - 'TEMP','PRE1','PRE2','UI2','UI3','VI2','VI3','WI2','WI3','UO2', - 'UO3','VO2','VO3','WO2','WO3','UI4','UI5','VI4','VI5','WI4', - 'WI5','UO4','UO5','VO4','VO5','WO4','WO5','UI6','UO6','VI6', - 'VO6','WI6','WO6','WO','WI1','WO1','GONF','LIAISON','DCX', - 'DCY','DCZ','H1X','H1Y','H1Z','E1X','E1Y','E1Z','E2X','E2Y','E2Z', - 'E3X','E3Y','E3Z','E4X','E4Y','E4Z','LAGS_C','V11','V12','V13','V21','V22', - 'V23','V31','V32','V33','PRES11','PRES12','PRES13','PRES21','PRES22','PRES23', - 'PRES31','PRES32','PRES33','VARI','LAG_GV','DAMG')),), - b_type_stab =BLOC(condition= "TYPE == 'STABILITE' and RIGI_GEOM == 'NON'", - DDL_STAB =SIMP(statut='o',typ='TXM',validators=NoRepeat(),min=1,max=40, - into=('DX','DY','DZ','DRX','DRY','DRZ','GRX','PRES','PHI', - 'TEMP','PRE1','PRE2','UI2','UI3','VI2','VI3','WI2','WI3','UO2', - 'UO3','VO2','VO3','WO2','WO3','UI4','UI5','VI4','VI5','WI4', - 'WI5','UO4','UO5','VO4','VO5','WO4','WO5','UI6','UO6','VI6', - 'VO6','WI6','WO6','WO','WI1','WO1','GONF','LIAISON','DCX', - 'DCY','DCZ','H1X','H1Y','H1Z','E1X','E1Y','E1Z','E2X','E2Y','E2Z', - 'E3X','E3Y','E3Z','E4X','E4Y','E4Z','LAGS_C','V11','V12','V13','V21','V22', - 'V23','V31','V32','V33','PRES11','PRES12','PRES13','PRES21','PRES22','PRES23', - 'PRES31','PRES32','PRES33','VARI','LAG_GV','DAMG')),), - regles = (EXCLUS('PAS_CALC','LIST_INST','INST'),), - LIST_INST = SIMP(statut='f',typ=(listr8_sdaster) ), - INST = SIMP(statut='f',typ='R',validators=NoRepeat(),max='**' ), - PAS_CALC = SIMP(statut='f',typ='I' ), - CRITERE = SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU") ), - b_prec_rela=BLOC(condition="(CRITERE=='RELATIF')", - PRECISION =SIMP(statut='f',typ='R',defaut= 1.E-6,),), - b_prec_abso=BLOC(condition="(CRITERE=='ABSOLU')", - PRECISION =SIMP(statut='o',typ='R',),), - ), - INFO =SIMP(statut='f',typ='I',into=(1,2) ), - b_info=BLOC(condition="INFO==2", - fr="filtre les messages émis dans le .mess selon le type de message demandé", - INFO_DBG = SIMP(statut='f',typ='TXM',max='**',validators=NoRepeat(), - into=("CONTACT", - "MECA_NON_LINE", - "PILOTAGE", - "FACTORISATION", - "APPARIEMENT"), - ), - ), - TITRE =SIMP(statut='f',typ='TXM',max='**' ), - ) - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2012 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: jean-michel.proix at edf.fr - - -# MACRO "TEST_THERMOPLASTIQUE" -# ---------------------------- -# def test_compor_sdprod(self, COMPORTEMENT, **kwargs): -# """Ne produit une table qu'en présence de COMPORTEMENT.""" -# if COMPORTEMENT: -# return table_sdaster -# return None - - -TEST_COMPOR =MACRO(nom="TEST_COMPOR", - op=OPS('Macro.test_compor_ops.test_compor_ops'), - # sd_prod=test_compor_sdprod, - sd_prod=table_sdaster, - docu="",reentrant='n', - fr="macro de test des comportements incrementaux dependant de la temperature", - - OPTION =SIMP(statut='f',typ='TXM',into=("THER","MECA"),defaut="THER"), - - COMPORTEMENT =C_COMPORTEMENT('SIMU_POINT_MAT'), - NEWTON =C_NEWTON(), - CONVERGENCE =C_CONVERGENCE(), - - b_ther =BLOC(condition = "OPTION == 'THER'", - regles=(EXCLUS('C_PRAG','D_SIGM_EPSI'),), - MATER =SIMP(statut='o',typ=mater_sdaster,max=1,fr="materiau dependant de la temperature"), - ALPHA =SIMP(statut='o',typ=fonction_sdaster, - fr="coefficient de dilatation fonction de la temperature"), - YOUNG =SIMP(statut='o',typ=fonction_sdaster, - fr="module d'Young fonction de la temperature"), - LIST_MATER =SIMP(statut='o',typ=mater_sdaster,max='**', - fr="liste des materiaux constants interpolés à chaque température"), - TEMP_INIT =SIMP(statut='o',typ='R', fr="temperature initiale et de reference"), - TEMP_FIN =SIMP(statut='o',typ='R', fr="temperature finale"), - INST_FIN =SIMP(statut='f',typ='R',defaut=1.,fr="instant final"), - SUPPORT =SIMP(statut='f',typ='TXM',max=1,into=("POINT","ELEMENT",),defaut=("POINT"),), - NB_VARI =SIMP(statut='o',typ='I', fr="nombre de variables internes - 0 en elasticité"), - VARI_TEST =SIMP(statut='f',typ='TXM',max='**', - fr="liste de variables internes à tester - par defaut, toutes"), - -# special ecrouissage cinematique - D_SIGM_EPSI =SIMP(statut='f',typ=fonction_sdaster, - fr="module tangent fonction de la temperature- VMIS_CINE_LINE"), - C_PRAG =SIMP(statut='f',typ=fonction_sdaster, - fr="constante de Prager fonction de la temperature- VMIS_ECMI_*"), - ), - b_meca =BLOC(condition = "OPTION == 'MECA'", - LIST_MATER =SIMP(statut='o',typ=mater_sdaster,max=2,min=2, - fr="liste des materiaux en Pa puis MPa "), - YOUNG =SIMP(statut='o',typ='R',fr="module d'Young"), - POISSON =SIMP(statut='o',typ='R',fr="coef de Poisson"), - LIST_NPAS =SIMP(statut='f',typ='I',max='**', - fr="nombre de pas de temps pour chaque discretisation"), - LIST_TOLE =SIMP(statut='f',typ='R',max='**',), - PREC_ZERO =SIMP(statut='f',typ='R',max='**',), - VARI_TEST =SIMP(statut='f',typ='TXM',max='**',defaut=('V1','VMIS','TRACE'), - fr="liste des CMP à tester "), - SUPPORT =SIMP(statut='f',typ='TXM',max=1,into=("POINT","ELEMENT",)), - MODELISATION =SIMP(statut='f',typ='TXM',max=1,into=("3D","C_PLAN"),defaut="3D",), - ANGLE =SIMP(statut='f',typ='R',max=1, defaut=0., - fr='Rotation de ANGLE autour de Z uniquement, et seulement pour les déformations imposées',), - MASSIF =FACT(statut='f',max='**',fr='orientation du materiau (monocristal, orthotropie)', - regles=(UN_PARMI('ANGL_REP','ANGL_EULER'),), - ANGL_REP =SIMP(statut='f',typ='R',min=1,max=3), - ANGL_EULER =SIMP(statut='f',typ='R',min=1,max=3), - ), - TEST_TANGENTE =SIMP(statut='f',typ='TXM',max=1,into=("OUI","NON"),defaut="OUI",), - VERI_MATR_OPTION =FACT(statut='f',max=1,fr='options pour le test de la matrice tangente', - VALE_PERT_RELA =SIMP(statut='f',typ='R',defaut=1.E-5), - PRECISION =SIMP(statut='f',typ='R',defaut=1.E-4 ), - PREC_ZERO =SIMP(statut='f',typ='R',defaut=1.E-12 ), - ), - ), - INFO =SIMP(statut='f',typ='I',defaut=1,into=(1,2) ), - ) - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2012 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: mathieu.courtois at edf.fr - -TEST_FICHIER=MACRO(nom="TEST_FICHIER", - op=OPS('Macro.test_fichier_ops.test_fichier_ops'), - UIinfo={"groupes":("Utilitaires",)}, - fr="Tester la non régression de fichiers produits par des commandes aster", - FICHIER =SIMP(statut='o',typ='TXM',validators=LongStr(1,255)), - EXPR_IGNORE =SIMP(statut='f',typ='TXM',max='**', - fr="Liste d'expressions régulières permettant d'ignorer certaines lignes"), - NB_VALE =SIMP(statut='o',typ='I',), - - INFO =SIMP(statut='f',typ='I',defaut=1,into=(1,2) ), - **C_TEST_REFERENCE('FICHIER', max=1) -) - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2012 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: nicolas.sellenet at edf.fr - -TEST_FONCTION=MACRO(nom="TEST_FONCTION", - op=OPS('Macro.test_fonction_ops.test_fonction_ops'), - sd_prod=None, - fr="Extraction d'une valeur numérique ou d'un attribut de fonction pour comparaison à une valeur de référence", - UIinfo={"groupes":("Fonctions","Utilitaires",)}, - TEST_NOOK =SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON") ), - VALEUR =FACT(statut='f',max='**', - fr="Tester la valeur d une fonction ou d une nappe", - regles=(UN_PARMI('VALE_PARA','INTERVALLE'),), - FONCTION =SIMP(statut='o',typ=(fonction_sdaster,fonction_c,nappe_sdaster,formule) ), - NOM_PARA =SIMP(statut='f',typ='TXM',validators=NoRepeat(),max=2), - VALE_PARA =SIMP(statut='f',typ='R' ,validators=NoRepeat(),max=2), - INTERVALLE =SIMP(statut='f',typ='R' ,validators=NoRepeat(),min=2,max=2), - **C_TEST_REFERENCE('FONCTION', max='**') - ), - ATTRIBUT =FACT(statut='f',max='**', - fr="Tester la valeur d un attribut d une fonction ou d''une nappe", - FONCTION =SIMP(statut='o',typ=(fonction_sdaster,fonction_c,nappe_sdaster,formule) ), - PARA =SIMP(statut='f',typ='R' ), - CRIT_PARA =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU") ), - PREC_PARA =SIMP(statut='f',typ='R',defaut= 1.E-3 ), - ATTR =SIMP(statut='o',typ='TXM', - into=("NOM_PARA","NOM_RESU","PROL_DROITE","PROL_GAUCHE","INTERPOL", - "PROL_GAUCHE_FONC","PROL_DROITE_FONC","INTERPOL_FONC","NOM_PARA_FONC") ), - ATTR_REFE =SIMP(statut='o',typ='TXM' ), - REFERENCE =SIMP(statut='f',typ='TXM', - into=("ANALYTIQUE","SOURCE_EXTERNE","AUTRE_ASTER") ), - ), -) - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2013 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# -# -# ====================================================================== -# person_in_charge: j-pierre.lefebvre at edf.fr -TEST_RESU=PROC(nom="TEST_RESU",op=23, - UIinfo={"groupes":("Résultats et champs","Utilitaires",)}, - fr="Extraction d'une valeur d'une structure de donnée et comparaison à une valeur de référence", - regles=(AU_MOINS_UN('CHAM_NO','CHAM_ELEM','CARTE','RESU','GENE','OBJET','TEST_NAN',)), - - CHAM_NO =FACT(statut='f',max='**', - regles=(EXCLUS('NOEUD','GROUP_NO'), # EXCLUS avec 'TYPE_TEST' dans trchno.f - PRESENT_PRESENT('NOEUD','NOM_CMP'), - PRESENT_PRESENT( 'GROUP_NO','NOM_CMP'),), - CHAM_GD =SIMP(statut='o',typ=cham_no_sdaster), - NOEUD =SIMP(statut='f',typ=no ), - GROUP_NO =SIMP(statut='f',typ=grno ), - NOM_CMP =SIMP(statut='f',typ='TXM',max=1), - **C_TEST_REFERENCE('CHAM_NO', max='**') - ), - - CARTE =FACT(statut='f',max='**', - CHAM_GD =SIMP(statut='o',typ=carte_sdaster), - MAILLE =SIMP(statut='o',typ=ma), - NOM_CMP =SIMP(statut='o',typ='TXM',max=1), - **C_TEST_REFERENCE('CARTE', max=1) - ), - - CHAM_ELEM =FACT(statut='f',max='**', - regles=(#UN_PARMI('MAILLE','TYPE_TEST',) dans trchel.f - EXCLUS('NOEUD','GROUP_NO','POINT'), - PRESENT_PRESENT('NOEUD','NOM_CMP'), - PRESENT_PRESENT('GROUP_NO','NOM_CMP'), - PRESENT_PRESENT('POINT','NOM_CMP'),), - CHAM_GD =SIMP(statut='o',typ=cham_elem), - MAILLE =SIMP(statut='f',typ=ma), - POINT =SIMP(statut='f',typ='I' ), - SOUS_POINT =SIMP(statut='f',typ='I'), - NOEUD =SIMP(statut='f',typ=no), - GROUP_NO =SIMP(statut='f',typ=grno), - NOM_CMP =SIMP(statut='f',typ='TXM',max=1), - **C_TEST_REFERENCE('CHAM_ELEM', max='**') - ), - - RESU =FACT(statut='f',max='**', - regles=(UN_PARMI('NUME_ORDRE','INST','FREQ','NUME_MODE','NOEUD_CMP','NOM_CAS','ANGLE'), - UN_PARMI('NOM_CHAM','PARA'), - PRESENT_ABSENT('PARA','NOEUD','GROUP_NO','POINT','NOM_CMP',), - PRESENT_PRESENT('NOM_CMP','NOM_CHAM'), - EXCLUS('NOEUD','GROUP_NO','POINT'), # EXCLUS avec 'TYPE_TEST' dans trresu.f - PRESENT_PRESENT('NOEUD','NOM_CMP'), - PRESENT_PRESENT('GROUP_NO','NOM_CMP'), - PRESENT_PRESENT('POINT','NOM_CMP'),), - RESULTAT =SIMP(statut='o',typ=resultat_sdaster), - NUME_ORDRE =SIMP(statut='f',typ='I'), - INST =SIMP(statut='f',typ='R'), - FREQ =SIMP(statut='f',typ='R'), - NUME_MODE =SIMP(statut='f',typ='I'), - NOEUD_CMP =SIMP(statut='f',typ='TXM',min=2,max=2), - NOM_CAS =SIMP(statut='f',typ='TXM'), - ANGLE =SIMP(statut='f',typ='R'), - PARA =SIMP(statut='f',typ='TXM'), - NOM_CHAM =SIMP(statut='f',typ='TXM',validators=NoRepeat(),into=C_NOM_CHAM_INTO()), - NOM_CMP =SIMP(statut='f',typ='TXM',max=1), - MAILLE =SIMP(statut='f',typ=ma ,max='**'), - NOEUD =SIMP(statut='f',typ=no ,max='**'), - GROUP_NO =SIMP(statut='f',typ=grno ,max='**'), - POINT =SIMP(statut='f',typ='I'), - SOUS_POINT =SIMP(statut='f',typ='I'), - **C_TEST_REFERENCE('RESU', max='**') - ), - - GENE =FACT(statut='f',max='**', - RESU_GENE =SIMP(statut='o',typ=(vect_asse_gene, tran_gene, mode_gene, harm_gene)), - b_vect_asse =BLOC(condition = "AsType(RESU_GENE) == vect_asse_gene", - NUME_CMP_GENE =SIMP(statut='o',typ='I'), - ), - b_mode =BLOC(condition = "AsType(RESU_GENE) == mode_gene", - regles=(UN_PARMI('NUME_ORDRE','FREQ','NUME_MODE'), - UN_PARMI('NOM_CHAM','PARA'), - PRESENT_PRESENT('NOM_CHAM','NUME_CMP_GENE'),), - NOM_CHAM =SIMP(statut='f',typ='TXM',validators=NoRepeat(),into=C_NOM_CHAM_INTO()), - NUME_CMP_GENE =SIMP(statut='f',typ='I'), - PARA =SIMP(statut='f',typ='TXM'), - NUME_ORDRE =SIMP(statut='f',typ='I'), - NUME_MODE =SIMP(statut='f',typ='I'), - FREQ =SIMP(statut='f',typ='R'), - ), - b_harm =BLOC(condition = "AsType(RESU_GENE) == harm_gene", - regles=(UN_PARMI('NUME_ORDRE','FREQ') ,), - NOM_CHAM =SIMP(statut='o',typ='TXM',validators=NoRepeat(),into=C_NOM_CHAM_INTO()), - NUME_CMP_GENE =SIMP(statut='o',typ='I'), - NUME_ORDRE =SIMP(statut='f',typ='I'), - FREQ =SIMP(statut='f',typ='R'), - ), - b_tran =BLOC(condition = "AsType(RESU_GENE) == tran_gene", - regles=(UN_PARMI('NUME_ORDRE','INST') ,), - NOM_CHAM =SIMP(statut='o',typ='TXM',validators=NoRepeat(),into=C_NOM_CHAM_INTO()), - NUME_CMP_GENE =SIMP(statut='o',typ='I'), - NUME_ORDRE =SIMP(statut='f',typ='I'), - INST =SIMP(statut='f',typ='R'), - ), - **C_TEST_REFERENCE('GENE', max='**') - ), - - OBJET =FACT(statut='f',max='**', - NOM =SIMP(statut='o',typ='TXM'), - **C_TEST_REFERENCE('OBJET', max=1) - ), - - TEST_NAN =SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON") ), -) - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2012 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: mathieu.courtois at edf.fr -TEST_TABLE=PROC(nom="TEST_TABLE",op= 177, - UIinfo={"groupes":("Tables","Utilitaires",)}, - fr="Tester une cellule ou une colonne d'une table", -# concept table_sdaster à tester - TABLE =SIMP(statut='o',typ=table_sdaster), - FILTRE =FACT(statut='f',max='**', - NOM_PARA =SIMP(statut='o',typ='TXM' ), - CRIT_COMP =SIMP(statut='f',typ='TXM',defaut="EQ", - into=("EQ","LT","GT","NE","LE","GE","VIDE", - "NON_VIDE","MAXI","MAXI_ABS","MINI","MINI_ABS") ), - b_vale =BLOC(condition = "(CRIT_COMP in ('EQ','NE','GT','LT','GE','LE'))", - regles=(UN_PARMI('VALE','VALE_I','VALE_K','VALE_C',),), - VALE =SIMP(statut='f',typ='R',), - VALE_I =SIMP(statut='f',typ='I',), - VALE_C =SIMP(statut='f',typ='C',), - VALE_K =SIMP(statut='f',typ='TXM' ),), - - CRITERE =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU") ), - PRECISION =SIMP(statut='f',typ='R',defaut= 1.E-3 ), - ), - NOM_PARA =SIMP(statut='o',typ='TXM' ), - INFO =SIMP(statut='f',typ='I',defaut=1,into=(1,2) ), - **C_TEST_REFERENCE('TABLE', max='**') -) ; - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2012 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: mathieu.courtois at edf.fr - -TEST_TEMPS=MACRO(nom="TEST_TEMPS", - op=OPS('Macro.test_temps_ops.test_temps_ops'), - sd_prod=None, - UIinfo={"groupes":("Utilitaires",)}, - fr="Permet de vérifier le temps passé dans les commandes", - reentrant='n', - - RESU = FACT(statut='o',max='**', - COMMANDE = SIMP(statut='o', typ='TXM', - fr="Nom de la commande testee"), - NUME_ORDRE = SIMP(statut='f', typ='I', defaut=1, val_min=1, - fr="Numero de l'occurrence de la commande testee"), - MACHINE = SIMP(statut='o', typ='TXM', max='**', - fr="Liste des machines dont on a la référence"), - VALE = SIMP(statut='o', typ='R', max='**', - fr="Temps CPU sur les machines listees en secondes"), - CRITERE = SIMP(statut='f', typ='TXM', defaut='RELATIF', into=('ABSOLU', 'RELATIF')), - PRECISION = SIMP(statut='f', typ='R', defaut=0.01, max='**', - fr="Ecart admissible pour chaque machine"), - TYPE_TEST = SIMP(statut='o', typ='TXM', into=('USER', 'SYSTEM', 'USER+SYS', 'ELAPSED'), - defaut='USER+SYS', - fr="Valeur testee parmi 'USER', 'SYSTEM', 'USER+SYS', 'ELAPSED'"), - ), - - INFO = SIMP(statut='f',typ='I',defaut=1,into=(1,2) ), -) - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2012 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: jessica.haelewyn at edf.fr -THER_LINEAIRE=OPER(nom="THER_LINEAIRE",op=25,sd_prod=evol_ther,reentrant='f', - UIinfo={"groupes":("Résolution","Thermique",)}, - fr="Résoudre un problème thermique linéaire stationnaire ou transitoire", - MODELE =SIMP(statut='o',typ=modele_sdaster), - CHAM_MATER =SIMP(statut='o',typ=cham_mater), - CARA_ELEM =SIMP(statut='f',typ=cara_elem), - EXCIT =FACT(statut='o',max='**', - CHARGE =SIMP(statut='o',typ=(char_ther,char_cine_ther)), - FONC_MULT =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - ), - ETAT_INIT =FACT(statut='f', - regles=(EXCLUS('STATIONNAIRE','EVOL_THER','CHAM_NO','VALE'),), - STATIONNAIRE =SIMP(statut='f',typ='TXM',into=("OUI",)), - EVOL_THER =SIMP(statut='f',typ=evol_ther), - CHAM_NO =SIMP(statut='f',typ=cham_no_sdaster), - VALE =SIMP(statut='f',typ='R'), - NUME_ORDRE =SIMP(statut='f',typ='I'), - INST =SIMP(statut='f',typ='R'), - CRITERE =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU") ), - b_prec_rela=BLOC(condition="(CRITERE=='RELATIF')", - PRECISION =SIMP(statut='f',typ='R',defaut= 1.E-6,),), - b_prec_abso=BLOC(condition="(CRITERE=='ABSOLU')", - PRECISION =SIMP(statut='o',typ='R',),), - INST_ETAT_INIT =SIMP(statut='f',typ='R'), - ), -#------------------------------------------------------------------- - INCREMENT =C_INCREMENT('THERMIQUE'), -#------------------------------------------------------------------- -# Catalogue commun SOLVEUR - SOLVEUR =C_SOLVEUR('THER_LINEAIRE'), -#------------------------------------------------------------------- - PARM_THETA =SIMP(statut='f',typ='R',defaut= 0.57), -#------------------------------------------------------------------- - ARCHIVAGE =C_ARCHIVAGE(), -#------------------------------------------------------------------- - TITRE =SIMP(statut='f',typ='TXM',max='**'), - INFO =SIMP(statut='f',typ='I',into=(1,2)), -) ; - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2012 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: jessica.haelewyn at edf.fr -THER_NON_LINE=OPER(nom="THER_NON_LINE",op= 186,sd_prod=evol_ther,reentrant='f', - UIinfo={"groupes":("Résolution","Thermique",)}, - fr="Résoudre un problème thermique non linéaire (conditions limites ou comportement matériau)" - +" stationnaire ou transitoire" , - MODELE =SIMP(statut='o',typ=(modele_sdaster) ), - CHAM_MATER =SIMP(statut='o',typ=(cham_mater) ), - CARA_ELEM =SIMP(statut='c',typ=(cara_elem) ), - COMPORTEMENT =FACT(statut='d',max='**', - RELATION =SIMP(statut='f',typ='TXM',defaut="THER_NL", - into=("THER_NL", - "THER_HYDR", - "SECH_GRANGER", - "SECH_MENSI", - "SECH_BAZANT", - "SECH_NAPPE" - ) ), - regles=(PRESENT_ABSENT('TOUT','GROUP_MA','MAILLE'),), - TOUT =SIMP(statut='f',typ='TXM',into=("OUI",) ), - GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - MAILLE =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), - ), - EVOL_THER_SECH =SIMP(statut='f',typ=evol_ther), - EXCIT =FACT(statut='o',max='**', - CHARGE =SIMP(statut='o',typ=char_ther), - FONC_MULT =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - ), -#------------------------------------------------------------------- - INCREMENT =C_INCREMENT('THERMIQUE'), -#------------------------------------------------------------------- - ETAT_INIT =FACT(statut='f', - regles=(EXCLUS('STATIONNAIRE','EVOL_THER','CHAM_NO','VALE'),), - STATIONNAIRE =SIMP(statut='f',typ='TXM',into=("OUI",)), - EVOL_THER =SIMP(statut='f',typ=evol_ther), - CHAM_NO =SIMP(statut='f',typ=cham_no_sdaster), - VALE =SIMP(statut='f',typ='R'), - NUME_ORDRE =SIMP(statut='f',typ='I'), - INST =SIMP(statut='f',typ='R'), - CRITERE =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU") ), - b_prec_rela=BLOC(condition="(CRITERE=='RELATIF')", - PRECISION =SIMP(statut='f',typ='R',defaut= 1.E-6,),), - b_prec_abso=BLOC(condition="(CRITERE=='ABSOLU')", - PRECISION =SIMP(statut='o',typ='R',),), - INST_ETAT_INIT =SIMP(statut='f',typ='R'), - ), - NEWTON =FACT(statut='d', - REAC_ITER =SIMP(statut='f',typ='I',defaut= 0 ,val_min=0), - RESI_LINE_RELA =SIMP(statut='f',typ='R',defaut= 1.0E-3 ), - ITER_LINE_MAXI =SIMP(statut='f',typ='I',defaut= 0 ), - ), - CONVERGENCE =FACT(statut='d', - RESI_GLOB_MAXI =SIMP(statut='f',typ='R'), - RESI_GLOB_RELA =SIMP(statut='f',typ='R'), - ITER_GLOB_MAXI =SIMP(statut='f',typ='I',defaut= 10 ), - ), -#------------------------------------------------------------------- -# Catalogue commun SOLVEUR - SOLVEUR =C_SOLVEUR('THER_NON_LINE'), -#------------------------------------------------------------------- - PARM_THETA =SIMP(statut='f',typ='R',defaut= 0.57 ), -#------------------------------------------------------------------- - ARCHIVAGE =C_ARCHIVAGE(), -#------------------------------------------------------------------- - OBSERVATION =C_OBSERVATION(), -#------------------------------------------------------------------- - TITRE =SIMP(statut='f',typ='TXM',max='**'), - INFO =SIMP(statut='f',typ='I',into=(1,2) ), - -) ; - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2011 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: jessica.haelewyn at edf.fr -THER_NON_LINE_MO=OPER(nom="THER_NON_LINE_MO",op= 171,sd_prod=evol_ther, - fr="Résoudre un problème thermique non linéaire (conditions limites ou comportement matériau)" - +" stationnaire avec chargement mobile", - reentrant='n', - UIinfo={"groupes":("Résolution","Thermique",)}, - MODELE =SIMP(statut='o',typ=modele_sdaster ), - CHAM_MATER =SIMP(statut='o',typ=cham_mater ), - CARA_ELEM =SIMP(statut='c',typ=cara_elem ), - EXCIT =FACT(statut='o',max='**', - CHARGE =SIMP(statut='o',typ=char_ther ), - FONC_MULT =SIMP(statut='c',typ=(fonction_sdaster,nappe_sdaster,formule) ), - ), - ETAT_INIT =FACT(statut='f', - EVOL_THER =SIMP(statut='f',typ=evol_ther ), - NUME_ORDRE =SIMP(statut='f',typ='I',defaut= 0 ), - ), - CONVERGENCE =FACT(statut='d', - CRIT_TEMP_RELA =SIMP(statut='f',typ='R',defaut= 1.E-3 ), - CRIT_ENTH_RELA =SIMP(statut='f',typ='R',defaut= 1.E-2 ), - ITER_GLOB_MAXI =SIMP(statut='f',typ='I',defaut= 10 ), - ARRET =SIMP(statut='c',typ='TXM',defaut="OUI",into=("OUI","NON") ), - ), -#------------------------------------------------------------------- -# Catalogue commun SOLVEUR - SOLVEUR =C_SOLVEUR('THER_NON_LINE_MO'), -#------------------------------------------------------------------- - TITRE =SIMP(statut='f',typ='TXM',max='**' ), - INFO =SIMP(statut='f',typ='I',into=(1,2) ), -) ; - -# ====================================================================== -# COPYRIGHT (C) 1991 - 2011 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: mathieu.courtois at edf.fr - -# Vérification des imports et définitions non autorisés dans le catalogue -UNAUTHORIZED = ("numpy", "UTMESS", "Table", "Graph") - -for _name in UNAUTHORIZED: - _obj = globals().get(_name, None) - assert _obj is None, "Definition de '%s' interdite dans le catalogue." % _name - -assert aster_exists or aster is None - diff --git a/OldCodes/Aster/Cata/cataSTA11/ops.py b/OldCodes/Aster/Cata/cataSTA11/ops.py deleted file mode 100644 index 57c03ef4..00000000 --- a/OldCodes/Aster/Cata/cataSTA11/ops.py +++ /dev/null @@ -1,507 +0,0 @@ -# coding=utf-8 -# ====================================================================== -# COPYRIGHT (C) 1991 - 2013 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# person_in_charge: mathieu.courtois at edf.fr - -# Modules Python -import sys -import os -import os.path as osp -import traceback -import cPickle as pickle -import re -from math import sqrt, pi, atan2, tan, log, exp -from glob import glob - -# Modules Eficas -import Accas -from Accas import ASSD -from Noyau.ascheckers import CheckLog -from Noyau.N_info import message, SUPERV -from Noyau.N_types import forceList - -try: - import aster - import aster_core - aster_exists = True - # Si le module aster est présent, on le connecte - # au JDC - import Build.B_CODE - Build.B_CODE.CODE.codex=aster - - from Utilitai.Utmess import UTMESS, MessageLog -except: - aster_exists = False - - - -def commun_DEBUT_POURSUITE(jdc, PAR_LOT, IMPR_MACRO, CODE, DEBUG, IGNORE_ALARM, LANG, INFO): - """Fonction sdprod partie commune à DEBUT et POURSUITE. - (on stocke un entier au lieu du logique) - """ - jdc.set_parLot(PAR_LOT, user_value=True) - jdc.impr_macro = int(IMPR_MACRO == 'OUI') - jdc.jxveri = int(CODE != None or (DEBUG != None and DEBUG['JXVERI'] == 'OUI')) - jdc.sdveri = int(DEBUG != None and DEBUG['SDVERI'] == 'OUI') - jdc.fico = None - jdc.sd_checker = CheckLog() - jdc.info_level = INFO - jdc.hist_etape = (DEBUG != None and DEBUG['HIST_ETAPE'] == 'OUI') - if CODE != None: - jdc.fico = 'TEST' - if aster_exists: - if LANG: - from Execution.i18n import localization - localization.install(LANG) - # pb en cas d'erreur dans FIN : appeler reset_print_function dans traiterFinExec ? - #from functools import partial - #asprint = partial(aster.affiche, 'MESSAGE') - #message.register_print_function(asprint) - # ne faire qu'une fois - if not hasattr(jdc, 'msg_init'): - # messages d'alarmes désactivés - if IGNORE_ALARM: - if not type(IGNORE_ALARM) in (list, tuple): - IGNORE_ALARM = [IGNORE_ALARM] - for idmess in IGNORE_ALARM: - MessageLog.disable_alarm(idmess) - # en POURSUITE, conserver le catalogue de comportement picklé - if not hasattr(jdc, 'catalc'): - from Comportement import catalc - jdc.catalc = catalc - jdc.msg_init = True - - -def DEBUT(self, PAR_LOT, IMPR_MACRO, CODE, DEBUG, IGNORE_ALARM, LANG, INFO, **args): - """ - Fonction sdprod de la macro DEBUT - """ - # La commande DEBUT ne peut exister qu'au niveau jdc - if self.jdc is not self.parent : - raise Accas.AsException("La commande DEBUT ne peut exister qu'au niveau jdc") - commun_DEBUT_POURSUITE(self.jdc, PAR_LOT, IMPR_MACRO, CODE, DEBUG, IGNORE_ALARM, LANG, INFO) - suppr = False - for fname in glob('pick.*') + glob('glob.*'): - try: - UTMESS('I', 'SUPERVIS_4', valk=fname) - os.remove(fname) - suppr = True - except OSError: - UTMESS('A', 'SUPERVIS_5', valk=fname) - if suppr: - UTMESS('I', 'SUPERVIS_6') - -def build_debut(self,**args): - """ - Fonction ops pour la macro DEBUT - """ - self.jdc.UserError=self.codex.error - - if self.jdc.parLot == 'NON' : - self.jdc._Build() - # On execute la fonction debut pour initialiser les bases - # Cette execution est indispensable avant toute autre action sur ASTER - # op doit être un entier car la fonction debut appelle GCECDU qui demande - # le numéro de l'operateur associé (getoper) - self.definition.op=0 - self.set_icmd(1) - self.codex.debut(self) - # On remet op a None juste apres pour eviter que la commande DEBUT - # ne soit executée dans la phase d'execution - self.definition.op=None - return 0 - -def POURSUITE(self, PAR_LOT, IMPR_MACRO, CODE, DEBUG, IGNORE_ALARM, LANG, INFO, **args): - """ - Fonction sdprod de la macro POURSUITE - """ - # La commande POURSUITE ne peut exister qu'au niveau jdc - if self.jdc is not self.parent : - raise Accas.AsException("La commande POURSUITE ne peut exister qu'au niveau jdc") - - commun_DEBUT_POURSUITE(self.jdc, PAR_LOT, IMPR_MACRO, CODE, DEBUG, IGNORE_ALARM, LANG, INFO) - if aster_exists: - self.jdc.set_poursuite(True) - - if self.codex: - base = 'glob.1' - if aster_exists: - repglob = aster_core.get_option("repglob") - bhdf = osp.join(repglob, 'bhdf.1') - base = osp.join(repglob, 'glob.1') - if not osp.isfile(base) and not osp.isfile(bhdf): - UTMESS('F','SUPERVIS_89') - # Le module d'execution est accessible et glob.1 est present - # Pour eviter de rappeler plusieurs fois la sequence d'initialisation - # on memorise avec l'attribut fichier_init que l'initialisation - # est réalisée - if hasattr(self,'fichier_init'):return - self.fichier_init='glob.1' - self.jdc.initexec() - # le sous programme fortran appelé par self.codex.poursu demande le numéro - # de l'operateur (GCECDU->getoper), on lui donne la valeur 0 - self.definition.op=0 - self.codex.poursu(self) - # Par la suite pour ne pas executer la commande pendant la phase - # d'execution on le remet à None - self.definition.op = None - self.g_context = {} - - # Il peut exister un contexte python sauvegardé sous forme pickled - # On récupère ces objets après la restauration des concepts pour que - # la récupération des objets pickled soit prioritaire. - # On vérifie que les concepts relus dans glob.1 sont bien tous - # presents sous le même nom et du même type dans pick.1 - # Le contexte est ensuite updaté (surcharge) et donc enrichi des - # variables qui ne sont pas des concepts. - # On supprime du pickle_context les concepts valant None, ca peut - # être le cas des concepts non executés, placés après FIN. - UTMESS('I', 'SUPERVIS2_1', valk='pick.1') - pickle_context = get_pickled_context() - if pickle_context == None: - UTMESS('F', 'SUPERVIS_86') - return - self.jdc.restore_pickled_attrs(pickle_context) - # vérification cohérence pick/base - savsign = self.jdc._sign - newsign = self.jdc.signature(base) - if args.get('FORMAT_HDF') == 'OUI': - UTMESS('I', 'SUPERVIS_71') - elif newsign != savsign: - UTMESS('A', 'SUPERVIS_69', valk=(savsign, newsign), - vali=self.jdc.jeveux_sysaddr) - else: - UTMESS('I', 'SUPERVIS_70', valk=newsign, vali=self.jdc.jeveux_sysaddr) - from Cata.cata import entier - from Noyau.N_CO import CO - interrupt = [] - count = 0 - UTMESS('I', 'SUPERVIS_65') - for elem, co in pickle_context.items(): - if isinstance(co, ASSD): - count += 1 - typnam = co.__class__.__name__ - # on rattache chaque assd au nouveau jdc courant (en poursuite) - co.jdc = self.jdc - co.parent = self.jdc - # le marquer comme 'executed' - i_int = '' - if co.executed != 1: - interrupt.append((co.nom, typnam)) - i_int = 'exception' - co.executed = 1 - UTMESS('I', 'SUPERVIS_66', valk=(co.nom, typnam.lower(), i_int)) - # pour que sds_dict soit cohérent avec g_context - self.jdc.sds_dict[elem] = co - if elem != co.nom: - name = re.sub('_([0-9]+)$', '[\\1]', co.nom) - if self.jdc.info_level > 1: - UTMESS('I', 'SUPERVIS2_3', - valk=(elem, type(co).__name__.upper())) - UTMESS('A', 'SUPERVIS_93', valk=(elem, "del %s" % name)) - del pickle_context[elem] - continue - if co == None: - del pickle_context[elem] - if count == 0: - UTMESS('I', 'SUPERVIS_67') - for nom, typnam in interrupt: - UTMESS('I', 'SUPERVIS_76', valk=(nom, typnam)) - if not interrupt: - UTMESS('I', 'SUPERVIS_72') - if self.jdc.info_level > 1: - keys = pickle_context.keys() - keys.sort() - for key in keys: - try: - value = str(pickle_context[key]) - if len(value) > 1000: - value = value[:1000] + '...' - valk = key, value - except: - valk = key, '...' - UTMESS('I', 'SUPERVIS_73', valk=valk) - self.g_context.update(pickle_context) - return - - else: - # Si le module d'execution n est pas accessible ou glob.1 absent on - # demande un fichier (EFICAS) - # Il faut éviter de réinterpréter le fichier à chaque appel de - # POURSUITE - if hasattr(self,'fichier_init'): - return - self.makePoursuite() - -def get_pickled_context(): - """ - Cette fonction permet de réimporter dans le contexte courant du jdc (jdc.g_context) - les objets python qui auraient été sauvegardés, sous forme pickled, lors d'une - précédente étude. Un fichier pick.1 doit être présent dans le répertoire de travail - """ - fpick = 'pick.1' - if not osp.isfile(fpick): - return None - - # Le fichier pick.1 est présent. On essaie de récupérer les objets python sauvegardés - context={} - try: - file=open(fpick, 'rb') - # Le contexte sauvegardé a été picklé en une seule fois. Il est seulement - # possible de le récupérer en bloc. Si cette opération echoue, on ne récupère - # aucun objet. - context = pickle.load(file) - file.close() - except: - # En cas d'erreur on ignore le contenu du fichier - traceback.print_exc() - return None - - return context - -def POURSUITE_context(self,d): - """ - Fonction op_init de la macro POURSUITE - """ - # self représente la macro POURSUITE ... - d.update(self.g_context) - # Une commande POURSUITE n'est possible qu'au niveau le plus haut - # On ajoute directement les concepts dans le contexte du jdc - -def buildPoursuite(self,**args): - """ - Fonction ops pour la macro POURSUITE - """ - # Pour POURSUITE on ne modifie pas la valeur initialisee dans ops.POURSUITE - # Il n y a pas besoin d executer self.codex.poursu (c'est deja fait dans - # la fonction sdprod de la commande (ops.POURSUITE)) - self.set_icmd(1) - self.jdc.UserError = self.codex.error - return 0 - -def INCLUDE(self, UNITE, DONNEE, **args): - """Fonction sd_prod pour la macro INCLUDE""" - if not (UNITE or DONNEE) or hasattr(self, '_mark'): - return - self._mark = 1 - if self.jdc and self.jdc.parLot == 'NON': - # On est en mode commande par commande, on appelle la methode speciale - self.Execute_alone() - if UNITE: - fname = 'fort.%s' % UNITE - else: - fname = DONNEE - if aster_exists: - repdex = aster_core.get_option('repdex') - fname = osp.join(repdex, fname) - try: - if aster_exists: - self.makeInclude(fname=fname) - else: - # dans eficas - if UNITE: - self.makeInclude(unite=UNITE) - else: - self.makeInclude(fname=fname) - except Accas.AsException: - if aster_exists: - UTMESS('F+', 'FICHIER_1', valk=fname) - UTMESS('F', 'FICHIER_2') - raise - -def INCLUDE_context(self,d): - """Fonction op_init pour macro INCLUDE""" - ctxt = self.g_context - d.update(ctxt) - -def buildInclude(self,**args): - """Fonction ops de la macro INCLUDE appelée lors de la phase de Build""" - # Pour presque toutes les commandes (sauf FORMULE et POURSUITE) - # le numéro de la commande n est pas utile en phase de construction - # La macro INCLUDE ne sera pas numérotée (incrément=None) - ier=0 - self.set_icmd(None) - # On n'execute pas l'ops d'include en phase BUILD car il ne sert a rien. - #ier=self.codex.opsexe(self,1) - return ier - -def _detr_list_co(self, context): - """Utilitaire pour DETRUIRE""" - list_co = set() - # par nom de concept (typ=assd) - for mc in self['CONCEPT'] or []: - list_co.update(forceList(mc["NOM"])) - # par chaine de caractères (typ='TXM') - for mc in self['OBJET'] or []: - # longueur <= 8, on cherche les concepts existants - for nom in forceList(mc['CHAINE']): - assert type(nom) in (str, unicode), 'On attend une chaine de caractères : %s' % nom - if len(nom.strip()) <= 8: - if self.jdc.sds_dict.get(nom) != None: - list_co.add(self.jdc.sds_dict[nom]) - elif context.get(nom) != None: - list_co.add(context[nom]) - #else uniquement destruction des objets jeveux - return list_co - -def DETRUIRE(self, CONCEPT, OBJET, **args): - """Fonction OPS pour la macro DETRUIRE : exécution réelle.""" - # pour les formules, il ne faut pas vider l'attribut "parent_context" trop tôt - for co in _detr_list_co(self, {}): - co.supprime(force=True) - self.set_icmd(1) - ier = self.codex.opsexe(self, 7) - return ier - -def build_detruire(self, d): - """Fonction op_init de DETRUIRE.""" - # d est le g_context du jdc ou d'une macro - #message.debug(SUPERV, "id(d) : %s", id(d)) - for co in _detr_list_co(self, d): - assert isinstance(co, ASSD), 'On attend un concept : %s (type=%s)' % (co, type(co)) - nom = co.nom - #message.debug(SUPERV, "refcount_1(%s) = %d", nom, sys.getrefcount(co)) - # traitement particulier pour les listes de concepts, on va mettre à None - # le terme de l'indice demandé dans la liste : - # nomconcept_i est supprimé, nomconcept[i]=None - i = nom.rfind('_') - if i > 0 and not nom.endswith('_'): - concept_racine = nom[:i] - if d.has_key(concept_racine) and type(d[concept_racine]) is list: - try: - num = int(nom[i+1:]) - d[concept_racine][num] = None - except (ValueError, IndexError): - # cas : RESU_aaa ou (RESU_8 avec RESU[8] non initialisé) - pass - # pour tous les concepts : - if d.has_key(nom): - del d[nom] - if self.jdc.sds_dict.has_key(nom): - del self.jdc.sds_dict[nom] - # "suppression" du concept - co.supprime() - # On signale au parent que le concept n'existe plus après l'étape self - self.parent.deleteConceptAfterEtape(self, co) - # marque comme détruit == non executé - co.executed = 0 - - -def build_procedure(self,**args): - """ - Fonction ops de la macro PROCEDURE appelée lors de la phase de Build - """ - ier=0 - # Pour presque toutes les commandes (sauf FORMULE et POURSUITE) - # le numéro de la commande n est pas utile en phase de construction - # On ne numérote pas une macro PROCEDURE (incrément=None) - self.set_icmd(None) - #ier=self.codex.opsexe(self,3) - return ier - -def build_DEFI_FICHIER(self,**args): - """ - Fonction ops de la macro DEFI_FICHIER - """ - self.set_icmd(1) - ier = self.codex.opsexe(self, 26) - return ier - -def build_formule(self, d): - """Fonction ops de FORMULE.""" - NOM_PARA = self.etape['NOM_PARA'] or '' - VALE = self.etape['VALE'] - VALE_C = self.etape['VALE_C'] - if type(NOM_PARA) not in (list, tuple): - NOM_PARA = [NOM_PARA, ] - for para in NOM_PARA: - if para.strip() != para: - raise Accas.AsException("nom de paramètre invalide (contient des blancs)" \ - " : %s" % repr(para)) - if self.sd == None: - return - if VALE != None : - texte = ''.join(VALE.splitlines()) - elif VALE_C != None : - texte = ''.join(VALE_C.splitlines()) - self.sd.setFormule(NOM_PARA, texte.strip()) - -def build_gene_vari_alea(self, d): - """Fonction ops de la macro GENE_VARI_ALEA.""" - from Utilitai.Utmess import UTMESS - a = self.etape['BORNE_INF'] - moyen = self.etape['VALE_MOY' ] - TYPE = self.etape['TYPE'] - if self['INIT_ALEA'] is not None: - jump = self.etape['INIT_ALEA' ] - self.iniran(jump) - if TYPE == 'EXP_TRONQUEE': - b = self.etape['BORNE_SUP'] - if a >= b: - UTMESS('F', 'PROBA0_1', valr=[a, b]) - elif moyen <= a or moyen >= b: - UTMESS('F', 'PROBA0_2', valr=[a, moyen, b]) - k = 1. / (moyen - a) - if exp(-b * k) < 1.e-12: - UTMESS('F', 'PROBA0_3') - # résolution par point fixe - eps = 1.E-4 - nitmax = 100000 - test = 0. - while abs((test - k) / k) > eps: - test = k - k = 1. / (moyen - (a * exp(-a * k) - b * exp(-b * k)) / \ - (exp(-a * k) - exp(-b * k))) - # génération de la variable aléatoire - alpha = exp(-a * k) - exp(-b * k) - self.sd.valeur = -(log(exp(-a * k) - alpha * self.getran()[0])) / k - elif TYPE == 'EXPONENTIELLE': - if moyen <= a: - UTMESS('F', 'PROBA0_4', valr=[moyen, a]) - v = moyen - a - u = self.getran()[0] - x = -log(1 - u) - self.sd.valeur = a + v * x - elif TYPE == 'GAMMA': - delta = self.etape['COEF_VAR' ] - if moyen <= a: - UTMESS('F', 'PROBA0_4', valr=[moyen, a]) - v = moyen - a - alpha = 1. / delta**2 - if alpha <= 1.: - UTMESS('F', 'PROBA0_5') - gamma2 = alpha - 1. - gamm1 = 1. / gamma2 - beta = sqrt(2. * alpha - 1.) - beta2 = 1. / beta**2 - f0 = 0.5 + (1. / pi) * atan2(-gamma2 / beta, 1.) - c1 = 1. - f0 - c2 = f0 - 0.5 - vref = 0. - vv = -1. - while -vv > vref: - u = self.getran()[0] - gamdev = beta * tan(pi * (u * c1 + c2)) + gamma2 - unif = self.getran()[0] - if unif < 0.: - UTMESS('F', 'PROBA0_6') - vv = -log(unif) - vref = log(1 + beta2 * ((gamdev - gamma2)**2)) \ - + gamma2 * log(gamdev * gamm1) - gamdev + gamma2 - if vv <= 0.: - UTMESS('F', 'PROBA0_7') - self.sd.valeur = a + v * delta**2 * gamdev diff --git a/OldCodes/Aster/INSTALL b/OldCodes/Aster/INSTALL deleted file mode 100644 index 493c4676..00000000 --- a/OldCodes/Aster/INSTALL +++ /dev/null @@ -1,40 +0,0 @@ - - -1- Installation standard - -Pour installer EFICAS a partir de la distribution : .tgz -faire : - tar xzvf .tgz - -ce qui a pour effet de créer un répertoire de nom . - -Pour modifier l'emplacement de la doc, le chemin d'accès à Acrobat Reader, -les catalogues, il faut modifier le fichier editeur.ini dans le répertoire Aster. - - -ATTENTION : -Si Eficas est installé dans un répertoire particulier d'administration -dans lequel les utilisateurs n'ont pas le droit d'écriture, il faut que -l'administrateur lance Eficas pour générer -les fichiers et catalogues compilés .pyc - - - -2- Utilisation d'Eficas - -Pour utiliser Eficas, aller dans le répertoire Aster et faire : - python eficas_aster.py - - - -3- Installation avec un noyau pré-installé - -Aller dans le répertoire Aster du répertoire Eficas -et modifier le fichier prefs.py comme suit : -Mettre dans la variable CODE_PATH le chemin absolu vers -le répertoire contenant les deux répertoires Noyau et Validation que vous voulez -utiliser à la place de ceux fournis dans la livraison d'Eficas - -Pour changer les catalogues, modifier le fichier editeur.ini dans le répertoire Aster - - diff --git a/OldCodes/Aster/Include.com b/OldCodes/Aster/Include.com deleted file mode 100644 index 78fdda81..00000000 --- a/OldCodes/Aster/Include.com +++ /dev/null @@ -1,2 +0,0 @@ - -MAAA=LIRE_MAILLAGE(UNITE=20,); diff --git a/OldCodes/Aster/LICENSE.TERMS b/OldCodes/Aster/LICENSE.TERMS deleted file mode 100644 index 8c88a1e5..00000000 --- a/OldCodes/Aster/LICENSE.TERMS +++ /dev/null @@ -1,21 +0,0 @@ - ====================================================================== - THIS PROGRAM IS FREE SOFTWARE. YOU CAN REDISTRIBUTE IT AND/OR MODIFY - IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY - THE FREE SOFTWARE FOUNDATION, EITHER VERSION 2 OF THE LICENSE, AND - ANY LATER VERSION. - THIS PROGRAM 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 GENERAL PUBLIC LICENSE FOR MORE DETAILS. - ====================================================================== - TRADUCTION EDF ( POUR INFORMATION ) - ====================================================================== - CE PROGRAMME EST UN LOGICIEL LIBRE. VOUS POUVEZ LE DIFFUSER ET/OU LE - MODIFIER SELON LES DISPOSITIONS DE LA LICENCE GRAND PUBLIC GNU (GPL) - TELLE QU'ELLE EST PUBLIEE PAR LA FREE SOFTWARE FOUNDATION, VERSION 2 - DE LA LICENCE ET TOUTE VERSION ULTERIEURE. - CE PROGRAMME EST DIFFUSE AVEC L'ESPOIR QU'IL SERA UTILE, MAIS SANS - GARANTIE, SANS MEME LA GARANTIE IMPLICITE DE QUALIFICATION DE MISE SUR - LE MARCHE OU D'ADAPTATION A UNE UTILISATION PARTICULIERE. - VOIR POUR DE PLUS AMPLES DETAILS LA LICENCE GRAND PUBLIC GNU (GPL) - ====================================================================== diff --git a/OldCodes/Aster/NEWS b/OldCodes/Aster/NEWS deleted file mode 100644 index d228a9b0..00000000 --- a/OldCodes/Aster/NEWS +++ /dev/null @@ -1,53 +0,0 @@ -Version 1.12 (6/2007): - Mise en synchronisation avec la version 9.1 de Code_Aster de mai 2007. - -Version 1.11 (12/2006): - Mise en synchronisation avec la version 8.4 de Code_Aster de decembre 2006. - Première version du Traducteur de V7 en V8 - -Version 1.10 (6/2006): - Mise en synchronisation avec la version 8.3 de Code_Aster de juin 2006. - -Version 1.9 (12/2005): - Mise en synchronisation avec la version 8.2 de Code_Aster de decembre 2005. - -Version 1.8 (6/2005): - Mise en synchronisation avec la version 8.1 de Code_Aster de mai 2005. - Les includes et poursuites peuvent etre édités. Introduction de la notation - scientifique pour les flottants. - -Version 1.7 : (12/2004) - Mise en synchronisation avec la version STA7 de Code_Aster (7.4). - Les formules changent et deviennent des formules au sens python. - Disparition des PARAMETRE-EVAL - Les touches raccourcis (CtrlC par exple) sont activées et paramétrables dans prefs.py. - -Version 1.6 : (05/2004) - Mise en synchronisation avec la version STA7 de Code_Aster (7.2.26) - Evolution de la saisie des valeurs pour definir une fonction (EO2003-241) : - - Saisie des valeurs sous forme de tuple. - - Si une valeur est selectionnée, l'insertion se fera après cette valeur - et non en fin de liste - -Version 1.5 (10/2003): - Mise en synchronisation avec la version STA7 de Code_Aster d'octobre 2003 (7.2) - Introduction des validateurs de mots cles simples - -Version 1.4 (5/2003): - Mise en synchronisation avec la version STA7 de Code_Aster de mai 2003 (7.1) - Possibilité de donner un nom de fichier en argument lors de l'ouverture d'EFICAS (EO2003-060) - Correction d'une anomalie dans la fonctionnalité de commentarisation des commandes (AO2003-041) - Ajout du bouton de documentation dans le panneau FORMULE (AO2002-447) - Selection automatique du concept quand il n'en existe qu'un (EO2002-162) - -Version 1.3 (11/2002): - Mise en synchronisation avec la version STA6 de Code_Aster de septembre 2002 - Ajout de la possibilité de visualiser les INCLUDE, INCLUDE_MATERIAU et POURSUITE (popup - sur click droit de la souris sur l'icone de la commande) - Possibilité d'afficher la liste des commandes par groupe (menu option->affichage commandes) - Reprise profonde du mécanisme de gestion des fichiers inclus (voir menus d'AIDE pour plus de détails) - Corrections diverses - -Version 1.2 (5/2002): - Reconception de la version 1.1 : décomposition en packages Python - Mise en synchronisation avec la version STA6 de Code_Aster de fevrier 2002 diff --git a/OldCodes/Aster/README b/OldCodes/Aster/README deleted file mode 100644 index 0597ecbb..00000000 --- a/OldCodes/Aster/README +++ /dev/null @@ -1,2 +0,0 @@ - -Pour installer EFICAS voir dans le fichier INSTALL diff --git a/OldCodes/Aster/Tests/README b/OldCodes/Aster/Tests/README deleted file mode 100644 index bea23866..00000000 --- a/OldCodes/Aster/Tests/README +++ /dev/null @@ -1,8 +0,0 @@ -Ce repertoire contient quelques tests d'Eficas pour Aster. - -Les fichiers tests doivent etre lisibles par Eficas sans probleme. -Le repertoire Recette contient le cas de recette d'eficas_aster. -On doit pouvoir le relire tel que et le reconstruire de zero (fichier -normal et poursuite). - -Le test torsion.comm est un test pour format AsterV5 diff --git a/OldCodes/Aster/Tests/Recette/az.comm b/OldCodes/Aster/Tests/Recette/az.comm deleted file mode 100644 index ef01a563..00000000 --- a/OldCodes/Aster/Tests/Recette/az.comm +++ /dev/null @@ -1,119 +0,0 @@ - -DEBUT(); -P1 = 9.8; - -P2 = 8.8; - -P9 = 7; - -P5 = (P9 * P1); - -_param_6 = (P1 - 3); - - -#Pas trouve shellpanel - -MAILLA2=LIRE_MAILLAGE(); - -aaa = FORMULE(VALE='a+z', - NOM_PARA=('a','z',),); - -MAIL=LIRE_MAILLAGE(UNITE=P9,); - -# 'LIRE_MAILLAGE', 'UNITE' --> uniquebasepanel - -az = FORMULE(VALE='aaaaa', - NOM_PARA=('ae','inst',),); - -AFFE1=AFFE_MODELE(MAILLAGE=MAIL, - AFFE=(_F(GROUP_MA=('RESSORT','eee','Group_1',), - PHENOMENE='MECANIQUE', - MODELISATION='DIS_T',), - _F(GROUP_MA='MASSES', - PHENOMENE='MECANIQUE', - MODELISATION='DIS_T',), - _F(GROUP_NO=('GNP3','GNP5','GNP6','GNP7','GNP8','GNP9','GNP10','GNP11','GNP12',), - PHENOMENE='ACOUSTIQUE', - MODELISATION='PLAN',),),); - -MOD=AFFE_MODELE(MAILLAGE=MAIL, - AFFE=(_F(GROUP_MA='RESSORT', - PHENOMENE='MECANIQUE', - MODELISATION='DIS_T',), - _F(GROUP_MA='MASSES', - PHENOMENE='MECANIQUE', - MODELISATION='DIS_T',), - _F(TOUT='OUI', - PHENOMENE='THERMIQUE', - MODELISATION='COQUE',),),); - -CARA=AFFE_CARA_ELEM(MODELE=MOD, - POUTRE=_F(GROUP_MA='MA', - SECTION='CERCLE', - CARA='R', - VALE=(3.0,_param_6,),),); - -# 'AFFE_MODELE', 'MAILLAGE' --> uniqueassdpanel -# AFFE_MODELE', 'AFFE', 'GROUP_MA' --> plusieursbasepanel -# 'AFFE_MODELE', 'AFFE', 'PHENOMENE' --> uniqueintopanel -# 'AFFE_MODELE', 'AFFE', 'b_mecanique'--> plusieursintopanel - -F1=DEFI_FONCTION(NOM_PARA='DX',VALE=(5.0,3.0, - ),); - -F3=DEFI_FONCTION(NOM_PARA='DRX',VALE_C=(5.0,7.0,9.0, - 9.0,8.0,7.0, - ),); - -# 'DEFI_FONCTION', 'VALE' --> fonctionpanel - -MATER2=DEFI_MATERIAU(ELAS=_F(E=P5, - NU=0.0,), - ECRO_ASYM_LINE=_F(DC_SIGM_EPSI=0.0, - SY_C=200000000.0, - DT_SIGM_EPSI=0.0, - SY_T=50000000.0,),); - -PS1=DEFI_PARA_SENSI(VALE=1.0,); - -PS2=DEFI_PARA_SENSI(VALE=1.0,); - -PS3=DEFI_PARA_SENSI(VALE=1.0,); - -CHMAT2=AFFE_MATERIAU(MAILLAGE=MAIL, - AFFE=_F(TOUT='OUI', - MATER=MATER2,),); - -AAAZ=AFFE_CHAR_THER(MODELE=AFFE1, - TEMP_IMPO=_F(TOUT='OUI', - TEMP=0.0,),); - -TH1=THER_LINEAIRE(MODELE=AFFE1, - CHAM_MATER=CHMAT2, - EXCIT=_F(CHARGE=AAAZ,), - SENSIBILITE=(PS1,PS2,),); - -# 'THER_LINEAIRE', 'SENSIBILITE' --> plusieursassdpanel - -ACA1=AFFE_CHAR_ACOU(MODELE=AFFE1, - PRES_IMPO=_F(TOUT='OUI', - PRES=('RI',3.0,3.0,),),); - -# 'AFFE_CHAR_ACOU', 'PRES_IMPO', 'PRES' --> uniquecomppanel - -MACRO_MATR_ASSE(MODELE=AFFE1, - NUME_DDL=CO('DDL1'), - MATR_ASSE=_F(MATRICE=CO('MAT1'), - OPTION='RIGI_THER',),); - -# 'MACRO_MATR_ASSE', 'MATR_ASSE', 'MATRICE' --> uniquesdcopanel - -INCLUDE(UNITE=12,); - -Tinclude=AFFE_MODELE(MAILLAGE=MINCLUDE, - AFFE=_F(MAILLE='ss', - PHENOMENE='THERMIQUE', - MODELISATION='AXIS_FOURIER',),); - -FIN(); -#CHECKSUM:62d9fdf65439daf4987e928b1c76bfbd -:FIN CHECKSUM \ No newline at end of file diff --git a/OldCodes/Aster/Tests/Recette/efica01a.11 b/OldCodes/Aster/Tests/Recette/efica01a.11 deleted file mode 100755 index c140f8b1..00000000 --- a/OldCodes/Aster/Tests/Recette/efica01a.11 +++ /dev/null @@ -1,19 +0,0 @@ -DEPL2 = FORMULE(NOM_PARA='INST',VALE='sin(OMEGAA*INST)/(OMEGAA**xx)') -DEPLACE2=CALC_FONC_INTERP( FONCTION=DEPL2, - LIST_PARA=L_INST, - NOM_PARA='INST', - PROL_DROITE='LINEAIRE', - PROL_GAUCHE='LINEAIRE', - NOM_RESU='DEPL' ) - -MONO_X=CALC_CHAR_SEISME( MATR_MASS=MASSE, - DIRECTION=( 1., 0., 0.,), - MONO_APPUI='OUI' ) - - -MACRO_PROJ_BASE(BASE=MODE_MEC,MATR_ASSE_GENE=( - _F( MATRICE = CO("MASS_GEN"), MATR_ASSE = MASSE), - _F( MATRICE = CO("RIGI_GEN"), MATR_ASSE = RIGIDITE)), - VECT_ASSE_GENE=_F( VECTEUR = CO("VECT_X"), VECT_ASSE = MONO_X) - ) - diff --git a/OldCodes/Aster/Tests/Recette/efica01a.com0 b/OldCodes/Aster/Tests/Recette/efica01a.com0 deleted file mode 100755 index 214e3b89..00000000 --- a/OldCodes/Aster/Tests/Recette/efica01a.com0 +++ /dev/null @@ -1,49 +0,0 @@ -POURSUITE(CODE=_F( NOM = 'EFICA01A')) - -INCLUDE_MATERIAU( NOM_AFNOR='18MND5', TYPE_MODELE='REF', - VARIANTE='A', TYPE_VALE='NOMI', - NOM_MATER='MAT3', INFO=2 ) - -CHMAT3=AFFE_MATERIAU( MAILLAGE=MAILLA3, - AFFE=_F( TOUT='OUI', MATER = MAT3, TEMP_REF = 20.)) - -riginor = 2.88E7 - -TRAN_GE2=DYNA_TRAN_MODAL( MASS_GENE=MGEN_BIC, RIGI_GENE=RGEN_BIC, - METHODE='EULER', - AMOR_REDUIT=( 0.07, 0.07, ), - MODE_STAT=MSTA_BIC,EXCIT=( - _F( VECT_GENE = VECT_X1, ACCE = ACCELER1, - MULT_APPUI = 'OUI', - DIRECTION = ( 1., 0., 0.,), NOEUD = 'NO1', - VITE = VITESSE1, DEPL = DEPLACE1), - _F( VECT_GENE = VECT_X2, ACCE = ACCELER2, - MULT_APPUI = 'OUI', - DIRECTION = ( 1., 0., 0.,), NOEUD = 'NO11', - VITE = VITESSE2, DEPL = DEPLACE2)), - CHOC=_F( GROUP_NO_1 = 'MASSES1', - GROUP_NO_2 = 'MASSES2', - OBSTACLE = GRILLE, - INTITULE = 'NO2/NO12', - NORM_OBST = (0., 0., 1.,), - DIST_1 = 0.4495, - DIST_2 = 0.4495, - RIGI_NOR = riginor, - AMOR_NOR = 0., - RIGI_TAN = 0., - COULOMB = 0.), - INCREMENT=_F( INST_INIT = 0., INST_FIN = 1., PAS = 0.00025), - ARCHIVAGE=_F( PAS_ARCH = 8) - ) - -LISTIMP=DEFI_LIST_REEL( DEBUT=0., - INTERVALLE=_F( JUSQU_A = 1., NOMBRE = 500)) - -RESUA1=REST_BASE_PHYS( RESU_GENE=TRAN_GE1, - LIST_INST=LISTIMP, - INTERPOL='LIN', - NOM_CHAM='DEPL', - MULT_APPUI='OUI' - ) - -FIN() diff --git a/OldCodes/Aster/Tests/Recette/efica01a.comm b/OldCodes/Aster/Tests/Recette/efica01a.comm deleted file mode 100755 index 20eea866..00000000 --- a/OldCodes/Aster/Tests/Recette/efica01a.comm +++ /dev/null @@ -1,275 +0,0 @@ -# MODIF DATE 20/09/2004 AUTEUR DURAND C.DURAND -# TITRE TEST DE NON REGRESSION DE L IHM EFICAS - DERIVE DE SDND102A -# CONFIGURATION MANAGEMENT OF EDF VERSION -# ====================================================================== -# COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# Ce cas test est gere en configuration dans la base ASTER, il sert de -# modele pour prononcer la recette de l IHM d EFICAS : l objectif est de -# pouvoir recreer ce test a l identique dans EFICAS a partir d une page -# blanche. -# On a donc essaye d y placer toutes les commandes un peu particulieres -# du langage de commandes d ASTER -# -# Il s agit en fait du test SDND102A auquel on a ajoute : -# la definition d un parametre (VAL) -# l inclusion d un fichier (INCLUDE) -# une poursuite (POURSUITE) -# Il contient ainsi : -# des parametres, des formules, des macros, des mots cles facteurs repetes -# (y compris conditionnes par des regles : calc_fonction / COMB), -# des blocs (mode_iter_simult,calc_char_seisme), un defi_valeur, un parametre. -# -# -# Il faudra y associer quelques recommandations pour la recette : -# - verifier qu en ouvrant le .com0, il demande bien a browser le .comm puis, en cascade, le .11 -# - verifier qu on peut bien supprimer une commande, un mot cle simple et facteur -# - verifier les acces a la doc -# -# - - -DEBUT(CODE=_F(NOM='EFICA01A',NIV_PUB_WEB='INTERNET',VISU_EFICAS='NON'),) - -MAILLAGE=LIRE_MAILLAGE() - -MAILLAGE=DEFI_GROUP(reuse=MAILLAGE, - MAILLAGE=MAILLAGE, - CREA_GROUP_NO=(_F(NOEUD='NO2', - NOM='MASSES',), - _F(NOEUD='NO1', - NOM='ENCASTRE',),),) - -MAILLA2=LIRE_MAILLAGE(UNITE=21,) - -MODELE=AFFE_MODELE(MAILLAGE=MAILLAGE, - AFFE=(_F(GROUP_MA='RESSORT', - PHENOMENE='MECANIQUE', - MODELISATION='DIS_T',), - _F(GROUP_NO='MASSES', - PHENOMENE='MECANIQUE', - MODELISATION='DIS_T',),),) - -BICHOC=AFFE_MODELE(MAILLAGE=MAILLA2, - AFFE=(_F(GROUP_MA='RESSORTS', - PHENOMENE='MECANIQUE', - MODELISATION='DIS_T',), - _F(GROUP_NO=('MASSES1','MASSES2',), - PHENOMENE='MECANIQUE', - MODELISATION='DIS_T',),),) -VAL = 98696.0 - - -CARA_ELE=AFFE_CARA_ELEM(MODELE=MODELE, - DISCRET=(_F(GROUP_MA='RESSORT', - REPERE='GLOBAL', - CARA='K_T_D_L', - VALE=(VAL,0.0,0.0,),), - _F(GROUP_NO='MASSES', - CARA='M_T_D_N', - VALE=25.0,),),) - -CARA_BIC=AFFE_CARA_ELEM(MODELE=BICHOC, - DISCRET=(_F(GROUP_MA='RESSORTS', - REPERE='GLOBAL', - CARA='K_T_D_L', - VALE=(VAL,0.0,0.0,),), - _F(GROUP_NO='MASSES1', - CARA='M_T_D_N', - VALE=25.0,), - _F(GROUP_NO='MASSES2', - CARA='M_T_D_N', - VALE=25.0,),),) - -CON_LIM=AFFE_CHAR_MECA(MODELE=MODELE, - DDL_IMPO=(_F(GROUP_NO='ENCASTRE', - DX=0.0, - DY=0.0, - DZ=0.0,), - _F(GROUP_NO='MASSES', - DY=0.0, - DZ=0.0,),),) - -CL_BICHO=AFFE_CHAR_MECA(MODELE=BICHOC, - DDL_IMPO=(_F(GROUP_NO='ENCBICHO', - DX=0.0, - DY=0.0, - DZ=0.0,), - _F(GROUP_NO=('MASSES1','MASSES2',), - DY=0.0, - DZ=0.0,),),) - -MACRO_MATR_ASSE(MODELE=MODELE, - CARA_ELEM=CARA_ELE, - CHARGE=CON_LIM, - NUME_DDL=CO('NUMEDDL'), - MATR_ASSE=(_F(MATRICE=CO('RIGIDITE'), - OPTION='RIGI_MECA',), - _F(MATRICE=CO('MASSE'), - OPTION='MASS_MECA',),),) - -MACRO_MATR_ASSE(MODELE=BICHOC, - CARA_ELEM=CARA_BIC, - CHARGE=CL_BICHO, - NUME_DDL=CO('NUMDDLC'), - MATR_ASSE=(_F(MATRICE=CO('RIGI_BIC'), - OPTION='RIGI_MECA',), - _F(MATRICE=CO('MASS_BIC'), - OPTION='MASS_MECA',),),) - -MODE_MEC=MODE_ITER_SIMULT(MATR_A=RIGIDITE, - MATR_B=MASSE,) - -MODE_MEC=NORM_MODE(reuse =MODE_MEC, - MODE=MODE_MEC, - NORME='MASS_GENE',) - -MODE_BIC=MODE_ITER_SIMULT(MATR_A=RIGI_BIC, - MATR_B=MASS_BIC, - METHODE='JACOBI', - OPTION='SANS', - CALC_FREQ=_F(OPTION='BANDE', - FREQ=(1.0,10.0,),),) - -MODE_BIC=NORM_MODE(reuse =MODE_BIC, - MODE=MODE_BIC, - NORME='MASS_GENE',) - -MODE_STA=MODE_STATIQUE(MATR_RIGI=RIGIDITE, - MATR_MASS=MASSE, - MODE_STAT=_F(TOUT='OUI', - AVEC_CMP='DX',),) - -MSTA_BIC=MODE_STATIQUE(MATR_RIGI=RIGI_BIC, - MATR_MASS=MASS_BIC, - MODE_STAT=_F(TOUT='OUI', - AVEC_CMP='DX',),) - -L_INST=DEFI_LIST_REEL(DEBUT=0.0, - INTERVALLE=_F(JUSQU_A=1.0, - PAS=1.E-4,),) - -OMEGAA=2.*pi*10. - -ACCE1 = FORMULE(VALE = 'sin(OMEGAA*INST)', - NOM_PARA='INST') - -ACCELER1=CALC_FONC_INTERP(FONCTION=ACCE1, - NOM_RESU='ACCE', - LIST_PARA=L_INST, - NOM_PARA = 'INST', - PROL_DROITE='LINEAIRE', - PROL_GAUCHE='LINEAIRE',) - -ACCE2 = FORMULE(VALE = '-sin(OMEGAA*INST)', - NOM_PARA='INST') - -ACCELER2=CALC_FONC_INTERP(FONCTION=ACCE2, - NOM_RESU='ACCE', - LIST_PARA=L_INST, - NOM_PARA = 'INST', - PROL_DROITE='LINEAIRE', - PROL_GAUCHE='LINEAIRE',) - -VITE1 = FORMULE(VALE = '-cos(OMEGAA*INST)/OMEGAA', - NOM_PARA='INST') - -VITESSE1=CALC_FONC_INTERP(FONCTION=VITE1, - NOM_RESU='VITE', - LIST_PARA=L_INST, - NOM_PARA = 'INST', - PROL_DROITE='LINEAIRE', - PROL_GAUCHE='LINEAIRE',) - -DEPL1 = FORMULE(VALE = '-sin(OMEGAA*INST)/(OMEGAA**2)', - NOM_PARA='INST') - -DEPLACE1=CALC_FONC_INTERP(FONCTION=DEPL1, - NOM_RESU='DEPL', - LIST_PARA=L_INST, - NOM_PARA = 'INST', - PROL_DROITE='LINEAIRE', - PROL_GAUCHE='LINEAIRE',) - -VITE2 = FORMULE(VALE = 'cos(OMEGAA*INST)/OMEGAA', - NOM_PARA='INST') - -VITESSE2=CALC_FONC_INTERP(FONCTION=VITE2, - NOM_RESU='VITE', - LIST_PARA=L_INST, - NOM_PARA = 'INST', - PROL_DROITE='LINEAIRE', - PROL_GAUCHE='LINEAIRE',) - -xx=2 - -INCLUDE(UNITE=11, - INFO=1,) - -MUR=DEFI_OBSTACLE(TYPE='PLAN_Z',) - -TRAN_GE1=DYNA_TRAN_MODAL(METHODE='EULER', - MASS_GENE=MASS_GEN, - RIGI_GENE=RIGI_GEN, - AMOR_REDUIT=0.07, - MODE_STAT=MODE_STA, - INCREMENT=_F(INST_INIT=0.0, - INST_FIN=1.0, - PAS=2.0E-4,), - ARCHIVAGE=_F(PAS_ARCH=8,), - EXCIT=_F(VECT_GENE=VECT_X, - ACCE=ACCELER1, - VITE=VITESSE1, - DEPL=DEPLACE1, - MULT_APPUI='OUI', - DIRECTION=(1.0,0.0,0.0,), - NOEUD='NO1',), - CHOC=_F(INTITULE='NO2/MUR', - GROUP_NO_1='MASSES', - OBSTACLE=MUR, - ORIG_OBST=(-1.0,0.0,0.0,), - NORM_OBST=(0.0,0.0,1.0,), - JEU=1.1005, - RIGI_NOR=5.76E7, - AMOR_NOR=0.0, - RIGI_TAN=0.0, - COULOMB=0.0,),) - -MULT_X1=CALC_CHAR_SEISME(MATR_MASS=MASS_BIC, - DIRECTION=(1.0,0.0,0.0,), - MODE_STAT=MSTA_BIC, - NOEUD='NO1',) - -MULT_X2=CALC_CHAR_SEISME(MATR_MASS=MASS_BIC, - DIRECTION=(1.0,0.0,0.0,), - MODE_STAT=MSTA_BIC, - NOEUD='NO11',) - -MACRO_PROJ_BASE(BASE=MODE_BIC, - MATR_ASSE_GENE=(_F(MATRICE=CO('MGEN_BIC'), - MATR_ASSE=MASS_BIC,), - _F(MATRICE=CO('RGEN_BIC'), - MATR_ASSE=RIGI_BIC,),), - VECT_ASSE_GENE=(_F(VECTEUR=CO('VECT_X1'), - VECT_ASSE=MULT_X1,), - _F(VECTEUR=CO('VECT_X2'), - VECT_ASSE=MULT_X2,),),) - -GRILLE=DEFI_OBSTACLE(TYPE='BI_PLAN_Z',) - -MAILLA3=LIRE_MAILLAGE(UNITE=22,) - -FIN() diff --git a/OldCodes/Aster/Tests/d0.comm b/OldCodes/Aster/Tests/d0.comm deleted file mode 100644 index 726e2840..00000000 --- a/OldCodes/Aster/Tests/d0.comm +++ /dev/null @@ -1,6 +0,0 @@ -DEBUT() -print "***********************************" -print "*********COUCOU1*******************" -print "***********************************" -INCLUDE(UNITE=11) -FIN() diff --git a/OldCodes/Aster/Tests/err.comm b/OldCodes/Aster/Tests/err.comm deleted file mode 100644 index 6ded4a0a..00000000 --- a/OldCodes/Aster/Tests/err.comm +++ /dev/null @@ -1,39 +0,0 @@ - -# Test pour vérifier qu'une commande dont le concept -# produit est nommé sansnom est considérée comme invalide -#plusieurs commandes : PROC, MACRO, OPER - -DEBUT(); - -MA=LIRE_MAILLAGE(); - -kk=DEFI_MATERIAU(ELAS=_F(E=56.24, - NU=0.3,),); - -uu=DEFI_MATERIAU(ELAS=_F(E=56.24, - NU=0.3,),); - -SD_4=DEFI_MATERIAU(ELAS=_F(E=56.24, - NU=0.3,),); - -sansnom=AFFE_CHAR_CINE(MODELE=None,); - -MACR_ADAP_MAIL(ADAPTATION=_F(LIBRE='RAFFINEMENT', - MAILLAGE_N=MA, - MAILLAGE_NP1=CO('MAA'), - RESULTAT_N=None, - INDICATEUR=None, - NOM_CMP_INDICA=None, - CRIT_RAFF_ABS=1.0,),); - -MACR_ADAP_MAIL(ADAPTATION=_F(LIBRE='RAFFINEMENT', - MAILLAGE_N=MA, - MAILLAGE_NP1=MAA, - RESULTAT_N=None, - INDICATEUR=None, - NOM_CMP_INDICA=None, - CRIT_RAFF_ABS=1.0,),); - -PRE_CHAR_IDEAS(MODELE=None,); - -FIN(); diff --git a/OldCodes/Aster/Tests/err2.comm b/OldCodes/Aster/Tests/err2.comm deleted file mode 100644 index 485c0f77..00000000 --- a/OldCodes/Aster/Tests/err2.comm +++ /dev/null @@ -1,18 +0,0 @@ - -DEBUT(); - -MA=LIRE_MAILLAGE(); - -kk=DEFI_MATERIAU(ELAS=_F(E=56.24, - NU=0.3,),); - -uu=DEFI_MATERIAU(ELAS=_F(E=56.24, - NU=0.3,),); - -zezea=DEFI_MATERIAU(ELAS=_F(E=56.24, - NU=0.3,),); - -SD_5=DEFI_MATERIAU(ELAS=_F(E=56.24, - NU=0.3,),); - -FIN(); diff --git a/OldCodes/Aster/Tests/err3.comm b/OldCodes/Aster/Tests/err3.comm deleted file mode 100644 index 371a2426..00000000 --- a/OldCodes/Aster/Tests/err3.comm +++ /dev/null @@ -1,60 +0,0 @@ - - -DEBUT(); - -ma=LIRE_MAILLAGE(); - -air=DEFI_MATERIAU(); - -champmat=AFFE_MATERIAU(MAILLAGE=ma, - AFFE=_F(TOUT='OUI', - MATER=air,),); - -mo=AFFE_MODELE(MAILLAGE=ma, - AFFE=_F(TOUT='OUI', - PHENOMENE='ACOUSTIQUE', - MODELISATION='3D',),); - -characou=AFFE_CHAR_ACOU(MODELE=mo, - VITE_FACE=_F(GROUP_MA=('ENTREE','SORTIE','TOTO','TITI',), - VNOR=('RI',0.014,0.0,),),); - -MACRO_MATR_ASSE(MODELE=mo, - NUME_DDL=CO('num'), - MATR_ASSE=_F(MATRICE=CO('matasm'), - OPTION='MASS_ACOU',),); - -vectelem=CALC_VECT_ELEM(OPTION='CHAR_ACOU', - CHAM_MATER=champmat, - CHARGE=characou,); - -sansnom=ASSE_VECTEUR(VECT_ELEM=None, - NUME_DDL=num,); - -sansnom=ASSE_VECTEUR(VECT_ELEM=vectelem, - NUME_DDL=num,); - -ch=ASSE_VECTEUR(VECT_ELEM=vectelem, - NUME_DDL=num,); - -sansnom=COMB_CHAM_NO(COMB_C=_F(CHAM_NO=None,),); - -sansnom=COMB_CHAM_NO(COMB_C=_F(CHAM_NO=ch, - COEF_R=1,),); - -chno=COMB_CHAM_NO(COMB_C=_F(CHAM_NO=ch, - COEF_R=1,),); - -matasm=FACT_LDLT(reuse =matasm, - MATR_ASSE=matasm,); - -sansnom=RESO_LDLT(MATR_FACT=matasm, - CHAM_NO=None, - ); -sansnom=RESO_LDLT(MATR_FACT=matasm, - CHAM_NO=chno, - ); -rr =RESO_LDLT(MATR_FACT=matasm, - CHAM_NO=chno, - ); - diff --git a/OldCodes/Aster/Tests/incl.11 b/OldCodes/Aster/Tests/incl.11 deleted file mode 100644 index 4d2f5fdc..00000000 --- a/OldCodes/Aster/Tests/incl.11 +++ /dev/null @@ -1,3 +0,0 @@ -MA=LIRE_MAILLAGE() - - diff --git a/OldCodes/Aster/Tests/incl.12 b/OldCodes/Aster/Tests/incl.12 deleted file mode 100644 index 6bdb45de..00000000 --- a/OldCodes/Aster/Tests/incl.12 +++ /dev/null @@ -1 +0,0 @@ -MMA=LIRE_MAILLAGE() diff --git a/OldCodes/Aster/Tests/incl.13 b/OldCodes/Aster/Tests/incl.13 deleted file mode 100644 index 3e1feeec..00000000 --- a/OldCodes/Aster/Tests/incl.13 +++ /dev/null @@ -1 +0,0 @@ -a=1/ diff --git a/OldCodes/Aster/Tests/incl.14 b/OldCodes/Aster/Tests/incl.14 deleted file mode 100644 index e1d48a40..00000000 --- a/OldCodes/Aster/Tests/incl.14 +++ /dev/null @@ -1 +0,0 @@ -INCLUDE(UNITE=15) diff --git a/OldCodes/Aster/Tests/incl.15 b/OldCodes/Aster/Tests/incl.15 deleted file mode 100644 index 16b438a8..00000000 --- a/OldCodes/Aster/Tests/incl.15 +++ /dev/null @@ -1 +0,0 @@ -XXX=LIRE_MAILLAGE() diff --git a/OldCodes/Aster/Tests/incl.16 b/OldCodes/Aster/Tests/incl.16 deleted file mode 100644 index 79db1b98..00000000 --- a/OldCodes/Aster/Tests/incl.16 +++ /dev/null @@ -1 +0,0 @@ -mm=LIRE_MAILLAGE() diff --git a/OldCodes/Aster/Tests/incl.17 b/OldCodes/Aster/Tests/incl.17 deleted file mode 100644 index d3ec5d6d..00000000 --- a/OldCodes/Aster/Tests/incl.17 +++ /dev/null @@ -1,15 +0,0 @@ -MMA=LIRE_MAILLAGE() - -mo=AFFE_MODELE(MAILLAGE=MMA, - AFFE=_F(TOUT='OUI', - PHENOMENE='MECANIQUE', - MODELISATION='3D',),); - -MACRO_MATR_ASSE(MODELE=mo, - NUME_DDL=CO('numdl'), - MATR_ASSE=_F(MATRICE=CO('mm'), - OPTION='RIGI_MECA',),); - -mm=FACT_LDLT(reuse =mm, - MATR_ASSE=mm,); - diff --git a/OldCodes/Aster/Tests/incl.25 b/OldCodes/Aster/Tests/incl.25 deleted file mode 100644 index 2e89f000..00000000 --- a/OldCodes/Aster/Tests/incl.25 +++ /dev/null @@ -1 +0,0 @@ -MA=LIRE_MAILLAGE() diff --git a/OldCodes/Aster/Tests/incl1.comm b/OldCodes/Aster/Tests/incl1.comm deleted file mode 100644 index e68cf5a3..00000000 --- a/OldCodes/Aster/Tests/incl1.comm +++ /dev/null @@ -1,3 +0,0 @@ -DEBUT() -INCLUDE(UNITE=13) -FIN() diff --git a/OldCodes/Aster/Tests/inclmat.comm b/OldCodes/Aster/Tests/inclmat.comm deleted file mode 100644 index b05656a2..00000000 --- a/OldCodes/Aster/Tests/inclmat.comm +++ /dev/null @@ -1,9 +0,0 @@ -DEBUT() -MA=LIRE_MAILLAGE() -INCLUDE_MATERIAU(NOM_AFNOR='A42', - TYPE_MODELE='REF', - VARIANTE='C', - TYPE_VALE='NOMI', - NOM_MATER='MAT', - ) -FIN() diff --git a/OldCodes/Aster/Tests/inclmat2.comm b/OldCodes/Aster/Tests/inclmat2.comm deleted file mode 100644 index b605ec5c..00000000 --- a/OldCodes/Aster/Tests/inclmat2.comm +++ /dev/null @@ -1,14 +0,0 @@ -DEBUT() -INCLUDE_MATERIAU(NOM_AFNOR='A42', - TYPE_MODELE='REF', - VARIANTE='C', - TYPE_VALE='NOMI', - NOM_MATER='M', - ) -INCLUDE_MATERIAU(NOM_AFNOR='A42', - TYPE_MODELE='REF', - VARIANTE='F', - TYPE_VALE='NOMI', - NOM_MATER='N', - ) -FIN() diff --git a/OldCodes/Aster/Tests/j0.comm b/OldCodes/Aster/Tests/j0.comm deleted file mode 100644 index 7aa78c2f..00000000 --- a/OldCodes/Aster/Tests/j0.comm +++ /dev/null @@ -1,6 +0,0 @@ - -DEBUT(PAR_LOT='OUI',); - -INCLUDE(UNITE=11,); - -FIN(); diff --git a/OldCodes/Aster/Tests/j1.comm b/OldCodes/Aster/Tests/j1.comm deleted file mode 100644 index 35190d65..00000000 --- a/OldCodes/Aster/Tests/j1.comm +++ /dev/null @@ -1,2 +0,0 @@ -POURSUITE() -FIN() diff --git a/OldCodes/Aster/Tests/j1.ini b/OldCodes/Aster/Tests/j1.ini deleted file mode 100644 index 2fb4dc86..00000000 --- a/OldCodes/Aster/Tests/j1.ini +++ /dev/null @@ -1,5 +0,0 @@ -[jdc] -jdc=a -[a] -comm=Tests/j0.comm -11=Tests/incl.11 diff --git a/OldCodes/Aster/Tests/j2.ini b/OldCodes/Aster/Tests/j2.ini deleted file mode 100644 index f0dd6ce1..00000000 --- a/OldCodes/Aster/Tests/j2.ini +++ /dev/null @@ -1,20 +0,0 @@ -[jdc] -jdc=a -[a] -comm=p3.comm -poursuite=b -11=incl.11 -17=incl.17 -16=incl.16 -25=incl.25 -[b] -comm=p2.comm -poursuite=c -11=pincl.11 -[c] -comm=p1.comm -poursuite=d -11=qincl.11 -[d] -comm=d0.comm -11=rincl.11 diff --git a/OldCodes/Aster/Tests/jdc.ini b/OldCodes/Aster/Tests/jdc.ini deleted file mode 100644 index eae54ec9..00000000 --- a/OldCodes/Aster/Tests/jdc.ini +++ /dev/null @@ -1,17 +0,0 @@ -[jdc] -jdc=a -[a] -comm=Tests/p0.comm -poursuite=pours1 -11=Tests/incl.11 -[pours1] -comm=Tests/p1.comm -poursuite=pours2 -12=Tests/incl.11 -[pours2] -comm=Tests/p2.comm -poursuite=pours3 -13=Tests/incl.11 -[pours3] -comm=Tests/p3.comm -14=Tests/incl.11 diff --git a/OldCodes/Aster/Tests/p0.comm b/OldCodes/Aster/Tests/p0.comm deleted file mode 100644 index 35190d65..00000000 --- a/OldCodes/Aster/Tests/p0.comm +++ /dev/null @@ -1,2 +0,0 @@ -POURSUITE() -FIN() diff --git a/OldCodes/Aster/Tests/p1.comm b/OldCodes/Aster/Tests/p1.comm deleted file mode 100644 index 7f15f690..00000000 --- a/OldCodes/Aster/Tests/p1.comm +++ /dev/null @@ -1,6 +0,0 @@ -POURSUITE() -print "+++++++++++++++++++++++++++++++++++" -print "+++++++++COUCOU3+++++++++++++++++++" -print "+++++++++++++++++++++++++++++++++++" -INCLUDE(UNITE=11) -FIN() diff --git a/OldCodes/Aster/Tests/p2.comm b/OldCodes/Aster/Tests/p2.comm deleted file mode 100644 index 7f15f690..00000000 --- a/OldCodes/Aster/Tests/p2.comm +++ /dev/null @@ -1,6 +0,0 @@ -POURSUITE() -print "+++++++++++++++++++++++++++++++++++" -print "+++++++++COUCOU3+++++++++++++++++++" -print "+++++++++++++++++++++++++++++++++++" -INCLUDE(UNITE=11) -FIN() diff --git a/OldCodes/Aster/Tests/p3.comm b/OldCodes/Aster/Tests/p3.comm deleted file mode 100644 index 40ec7776..00000000 --- a/OldCodes/Aster/Tests/p3.comm +++ /dev/null @@ -1,7 +0,0 @@ -POURSUITE() -print "+++++++++++++++++++++++++++++++++++" -print "+++++++++COUCOU4+++++++++++++++++++" -print "+++++++++++++++++++++++++++++++++++" -INCLUDE(UNITE=17) -INCLUDE(UNITE=11) -FIN() diff --git a/OldCodes/Aster/Tests/perr.comm b/OldCodes/Aster/Tests/perr.comm deleted file mode 100644 index ee7d6fec..00000000 --- a/OldCodes/Aster/Tests/perr.comm +++ /dev/null @@ -1,5 +0,0 @@ -DEBUT() -import traceback -traceback.print_stack() -a= -FIN() diff --git a/OldCodes/Aster/Tests/perr2.comm b/OldCodes/Aster/Tests/perr2.comm deleted file mode 100644 index bb93df79..00000000 --- a/OldCodes/Aster/Tests/perr2.comm +++ /dev/null @@ -1,3 +0,0 @@ -DEBUT() -IMPR_CO() -FIN() diff --git a/OldCodes/Aster/Tests/pincl.11 b/OldCodes/Aster/Tests/pincl.11 deleted file mode 100644 index b1bd46d9..00000000 --- a/OldCodes/Aster/Tests/pincl.11 +++ /dev/null @@ -1 +0,0 @@ -MAA=LIRE_MAILLAGE() diff --git a/OldCodes/Aster/Tests/pp.comm b/OldCodes/Aster/Tests/pp.comm deleted file mode 100644 index dda00d50..00000000 --- a/OldCodes/Aster/Tests/pp.comm +++ /dev/null @@ -1,2 +0,0 @@ -DEBUT() -FIN() diff --git a/OldCodes/Aster/Tests/princ.comm b/OldCodes/Aster/Tests/princ.comm deleted file mode 100644 index 59f33a88..00000000 --- a/OldCodes/Aster/Tests/princ.comm +++ /dev/null @@ -1,16 +0,0 @@ - -POURSUITE(); - -# commentaire - -xx=LIRE_MAILLAGE(); - -INCLUDE(UNITE=12,); - -INCLUDE(UNITE=35,); - -INCLUDE(UNITE=11,); - -yy=LIRE_MAILLAGE(); - -DETRUIRE(CONCEPT=_F(NOM=None,),); diff --git a/OldCodes/Aster/Tests/princ.ini b/OldCodes/Aster/Tests/princ.ini deleted file mode 100644 index a8865fbc..00000000 --- a/OldCodes/Aster/Tests/princ.ini +++ /dev/null @@ -1,20 +0,0 @@ -[jdc] -jdc=a -[a] -comm=princ.comm -poursuite=pours1 -11=princl.11 -12=princl.12 -14=princl.14 -35=princl.35 -[pours1] -comm=p1.comm -poursuite=pours2 -11=incl.11 -[pours2] -comm=p2.comm -poursuite=pours3 -11=incl.12 -[pours3] -comm=d0.comm -11=incl.16 diff --git a/OldCodes/Aster/Tests/princl.11 b/OldCodes/Aster/Tests/princl.11 deleted file mode 100644 index ef02b73e..00000000 --- a/OldCodes/Aster/Tests/princl.11 +++ /dev/null @@ -1,3 +0,0 @@ -MAA=LIRE_MAILLAGE() - - diff --git a/OldCodes/Aster/Tests/princl.12 b/OldCodes/Aster/Tests/princl.12 deleted file mode 100644 index eb15ffd4..00000000 --- a/OldCodes/Aster/Tests/princl.12 +++ /dev/null @@ -1,15 +0,0 @@ -MMAA=LIRE_MAILLAGE() - -mo=AFFE_MODELE(MAILLAGE=MMAA, - AFFE=_F(TOUT='OUI', - PHENOMENE='MECANIQUE', - MODELISATION='3D',),); - -MACRO_MATR_ASSE(MODELE=mo, - NUME_DDL=CO('numdl'), - MATR_ASSE=_F(MATRICE=CO('mmm'), - OPTION='RIGI_MECA',),); - -mmm=FACT_LDLT(reuse =mmm, - MATR_ASSE=mmm,); - diff --git a/OldCodes/Aster/Tests/princl.14 b/OldCodes/Aster/Tests/princl.14 deleted file mode 100644 index 3ee3c9fe..00000000 --- a/OldCodes/Aster/Tests/princl.14 +++ /dev/null @@ -1,11 +0,0 @@ - -mmo=AFFE_MODELE(MAILLAGE=xx, - AFFE=_F(TOUT='OUI', - PHENOMENE='MECANIQUE', - MODELISATION='3D',),); - -MACRO_MATR_ASSE(MODELE=mmo, - NUME_DDL=CO('nume'), - MATR_ASSE=_F(MATRICE=CO('mmb'), - OPTION='RIGI_MECA',),); - diff --git a/OldCodes/Aster/Tests/princl.35 b/OldCodes/Aster/Tests/princl.35 deleted file mode 100644 index 4a9f4aab..00000000 --- a/OldCodes/Aster/Tests/princl.35 +++ /dev/null @@ -1,5 +0,0 @@ - - -INCLUDE(UNITE=14,); - -DETRUIRE(CONCEPT=_F(NOM=None,),); \ No newline at end of file diff --git a/OldCodes/Aster/Tests/qincl.11 b/OldCodes/Aster/Tests/qincl.11 deleted file mode 100644 index c7101a0d..00000000 --- a/OldCodes/Aster/Tests/qincl.11 +++ /dev/null @@ -1 +0,0 @@ -MAAA=LIRE_MAILLAGE() diff --git a/OldCodes/Aster/Tests/rincl.11 b/OldCodes/Aster/Tests/rincl.11 deleted file mode 100644 index c0277244..00000000 --- a/OldCodes/Aster/Tests/rincl.11 +++ /dev/null @@ -1 +0,0 @@ -MAAAA=LIRE_MAILLAGE() diff --git a/OldCodes/Aster/Tests/torsion.comm b/OldCodes/Aster/Tests/torsion.comm deleted file mode 100755 index 83f56092..00000000 --- a/OldCodes/Aster/Tests/torsion.comm +++ /dev/null @@ -1,340 +0,0 @@ - DEBUT(); - - - INCLUDE(UNITE: 80); - -TPS = 1. ; - - - -SY = 90. ; - - - -A = 1. ; -H = 0.01 ; -N = 50 ; -T = 0.01 ; -TD = DEFI_VALEUR(R8: EVAL(T*180./PI)) ; -CT = DEFI_VALEUR(R8: EVAL(COS(T))) ; -ST = DEFI_VALEUR(R8: EVAL(SIN(T))) ; -MST= DEFI_VALEUR(R8: EVAL(-ST)); -RAT= DEFI_VALEUR(R8: EVAL(H/A)); - - -K_REF = DEFI_VALEUR( R8: EVAL(0.9845615*Q1) ); -EPS_Y = DEFI_VALEUR( R8: EVAL( (1./K_REF)**5. )); -YOUNG = DEFI_VALEUR( R8: EVAL(SY/EPS_Y) ); - -!FORMULE( REEL: ( - RP(REEL:EPSI) = K_REF * SY * EPSI**0.2 - ) ); - -ECH_EPSI = DEFI_LIST_REEL ( - DEBUT: EPS_Y - INTERVALLE: ( - JUSQU_A: 3. - NOMBRE : 300 - ) - ) ; - -TRAC = CALC_FONC_INTERP ( - FONCTION: RP - LIST_PARA : ECH_EPSI - PROL_GAUCHE: 'LINEAIRE' - PROL_DROIT : 'LINEAIRE' - ) ; - - - PRE_GIBI(); - MA = LIRE_MAILLAGE(); - -&MA = DEFI_GROUP - ( - MAILLAGE: MA - CREA_GROUP_NO: - ( - TOUT_GROUP_MA: 'OUI' - ) - ) ; - - - CUIVRE = DEFI_MATERIAU - ( - ELAS : - ( - E : YOUNG - NU: 0.3 - ) - TRACTION : ( - SIGM: TRAC - ) - NON_LOCAL: ( - LONG_CARA: LC - ) - ) ; - - CHMAT = AFFE_MATERIAU - ( - MAILLAGE: MA - AFFE : - ( - GROUP_MA: TRANCHE - MATER : CUIVRE - ) - ) ; - - - MO_MECA = AFFE_MODELE - ( - MAILLAGE: MA - AFFE : - ( - GROUP_MA : TRANCHE - PHENOMENE : 'MECANIQUE' - MODELISATION : '3D_SI' - ) - ) ; - - MO_DELO = AFFE_MODELE ( - MAILLAGE: MA - AFFE: - ( - GROUP_MA: TRANCHE - PHENOMENE: 'NON_LOCAL' - MODELISATION: '3D' - ) - ) ; - - -!FORMULE ( REEL : ( UX_IMP(REEL: INST, REEL:X, REEL:Y) = - -INST*RAT*Y - )); -!FORMULE ( REEL : ( UY_IMP(REEL: INST, REEL:X, REEL:Y) = - INST*RAT*X - )); -!FORMULE ( REEL : ( UZ_IMP(REEL:X, REEL:Y) = 0. )); - - - ANCRAGE = AFFE_CHAR_MECA ( - MODELE : MO_MECA - FACE_IMPO: - ( - GROUP_MA: BAS - DX: 0. - DY: 0. - DZ: 0. - ) - ) ; - - TORSION = AFFE_CHAR_MECA_F ( - MODELE : MO_MECA - FACE_IMPO: - ( - GROUP_MA: HAUT - DX : UX_IMP - DY : UY_IMP - DZ : UZ_IMP - ) - ) ; - - - SYMETRIE = AFFE_CHAR_MECA ( - MODELE: MO_MECA - LIAISON_GROUP: ( - GROUP_MA_1 : SYM_CY_0 - GROUP_MA_2 : SYM_CY_1 - SANS_GROUP_NO: (HAUT, BAS) - DDL_1 : ('DX' 'DY' ) - DDL_2 : ('DX' ) - COEF_MULT_1 : (CT MST) - COEF_MULT_2 : (-1.) - COEF_IMPO : 0. - CENTRE : (0. 0. 0.) - ANGL_NAUT : (TD 0. 0.) - SOMMET : 'OUI' - ) - LIAISON_GROUP: ( - GROUP_MA_1 : SYM_CY_0 - GROUP_MA_2 : SYM_CY_1 - SANS_GROUP_NO: (HAUT, BAS) - DDL_1 : ('DX' 'DY' ) - DDL_2 : ('DY' ) - COEF_MULT_1 : (ST CT) - COEF_MULT_2 : (-1.) - COEF_IMPO : 0. - CENTRE : (0. 0. 0.) - ANGL_NAUT : (TD 0. 0.) - SOMMET : 'OUI' - ) - LIAISON_GROUP: ( - GROUP_MA_1 : SYM_CY_0 - GROUP_MA_2 : SYM_CY_1 - SANS_GROUP_NO: (HAUT, BAS) - DDL_1 : ('DZ') - DDL_2 : ('DZ') - COEF_MULT_1 : (1.) - COEF_MULT_2 : (-1.) - COEF_IMPO : 0. - CENTRE : (0. 0. 0.) - ANGL_NAUT : (TD 0. 0.) - SOMMET : 'OUI' - ) - ) ; - - - INSTANTS = DEFI_LIST_REEL - ( - DEBUT: 0. - INTERVALLE: - (JUSQU_A: TPS NOMBRE: 50) - ) ; - - - - EVOL = STAT_NON_LINE - ( - MODELE: MO_MECA - CHAM_MATER: CHMAT - EXCIT : - (CHARGE: TORSION) - (CHARGE: ANCRAGE) - (CHARGE: SYMETRIE) - INCREMENT: - ( - LIST_INST: INSTANTS - SUBD_PAS : 5 - SUBD_PAS_MINI: 0.0001 - ) - COMP_INCR: - ( - RELATION: 'PLAS_GRAD_TRAC' - DEFORMATION: 'PETIT' - ) - NEWTON: - ( - MATRICE:'ELASTIQUE' - ) - CONVERGENCE: - ( - RESI_GLOB_RELA: 1.E-4 - ITER_GLOB_MAXI: 500 - ITER_INTE_MAXI: 250 - RESI_INTE_RELA: 1.E-9 - ) - ARCHIVAGE: ( - ARCH_ETAT_INIT: 'OUI' - LIST_INST : INSTANTS - ) - - MODELE_NON_LOCAL: MO_DELO - LAGR_NON_LOCAL: ( - RESI_PRIM_ABSO: 1.E-9 - RESI_DUAL_ABSO: 1.E-4 - RHO: 1000. - ITER_PRIM_MAXI: 100 - ITER_DUAL_MAXI: 10 - ) - ) ; - - - -&EVOL = CALC_ELEM ( - MODELE: MO_MECA - CHAM_MATER: CHMAT - RESULTAT : EVOL - OPTION: ('SIEF_ELNO_ELGA' 'VARI_ELNO_ELGA') - ) ; - -&EVOL = CALC_NO ( - RESULTAT: EVOL - OPTION: ('FORC_NODA' - 'SIEF_NOEU_ELGA' 'VARI_NOEU_ELGA') - ) ; - - -ECHAN = INTE_MAIL_3D ( - MAILLAGE : MA - DEFI_SEGMENT: ( - GROUP_NO_ORIG: O1 - GROUP_NO_EXTR: A1 - ) - ) ; - - PLAS_CUM = POST_RELEVE_T ( - ACTION: ( - INTITULE : 'P' - CHEMIN : ECHAN - RESULTAT : EVOL - NOM_CHAM : 'VARI_NOEU_ELGA' - NOM_CMP : 'V1' - INST : TPS - OPERATION: 'EXTRACTION' - ) - ) ; - - - SIGMA = POST_RELEVE_T ( - ACTION: ( - INTITULE : 'SIYZ' - CHEMIN : ECHAN - RESULTAT : EVOL - NOM_CHAM : 'SIEF_NOEU_ELGA' - NOM_CMP : 'SIYZ' - INST : TPS - OPERATION: 'EXTRACTION' - ) - ) ; - - - - MOM_A = POST_RELEVE_T ( - ACTION: ( - INTITULE : 'MOMENT' - GROUP_NO : HAUT - RESULTAT : EVOL - NOM_CHAM : 'FORC_NODA' - RESULTANTE: ('DX' 'DY' 'DZ') - MOMENT : ('DRX' 'DRY' 'DRZ') - POINT : (0. 0. H) - TOUT_ORDRE: 'OUI' - OPERATION : 'EXTRACTION' - ) - ) ; - - MOM_KA_A = RECU_FONCTION ( - TABLE : MOM_A - PARA_X: 'INST' - PARA_Y: 'MOMENT_Z' - ) ; - -!FORMULE ( REEL:( MA3_KA(REEL: INST) = MOM_KA_A(INST)*360/TD/A**3/SY)); - - - - DEFUFI( - IMPRESSION: ( - NOM: 'POST_PY' - UNITE: 81 - ) - ) ; - - - - IMPR_COURBE( - FORMAT: 'AGRAF' - FICHIER: 'POST_PY' - COURBE: ( - FONCTION : MA3_KA - LIST_PARA: INSTANTS - ) - ) ; - - - FIN(); - - -IMPR_TABLE(TABLE:SIGMA); -IMPR_TABLE(TABLE:PLAS_CUM); - - FIN(); \ No newline at end of file diff --git a/OldCodes/Aster/__init__.py b/OldCodes/Aster/__init__.py deleted file mode 100644 index 8ed65e16..00000000 --- a/OldCodes/Aster/__init__.py +++ /dev/null @@ -1,19 +0,0 @@ -# -*- coding: utf-8 -*- -# Copyright (C) 2007-2012 EDF R&D -# -# 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 -# diff --git a/OldCodes/Aster/a.dat b/OldCodes/Aster/a.dat deleted file mode 100644 index 1122ebca..00000000 --- a/OldCodes/Aster/a.dat +++ /dev/null @@ -1,3 +0,0 @@ -1,2 -3,7 -8,9 diff --git a/OldCodes/Aster/alphasdist.py b/OldCodes/Aster/alphasdist.py deleted file mode 100644 index bd19d8f9..00000000 --- a/OldCodes/Aster/alphasdist.py +++ /dev/null @@ -1,147 +0,0 @@ -# -*- coding: utf-8 -*- -""" - Ce module sert à construire les distributions de versions alpha d'EFICAS en fonction - du tag CVS courant (Vx_yaz). Une version alpha est une version dont toutes les fonctionnalités - ne sont pas implémentées. On utilise pour ces versions, les packages Noyau Validation Cata et Macro - locaux. - Les distributions sont : - - un tar.gz pour UNIX ne contenant pas mxTextTools - - un zip pour Windows contenant mx TextTools préinstallé - L'utilisation de ce module est la suivante : - 1- Se mettre dans un répertoire de travail - 2- Configurer son environnement pour utiliser le référentiel CVS EFICAS - 3- Exporter les sources d'Eficas par la commande : - cvs export -r TAG -d Eficas_export EficasV1_2 - ou TAG est le tag CVS de la version que l'on veut distribuer (par exemple V1_3a1) - 4- Aller dans le répertoire Eficas_export - 4- Executer le script alphasdist.py - python alphasdist.py - Ce qui a pour effet de creer un repertoire dist contenant les 2 distributions - et de les copier dans le répertoire indiqué par dir_download s'il est accessible - -""" -import os,shutil,glob,sys -import types - -version="$Name: V7_main $"[7:-2] or 'Test1_4' -# ==========Path du noyau local ==================== -path_Noyau=".." -# ============================================================ -nom_distrib="Eficas"+version+"AsterSTA8" -path_distrib=os.path.join("dist",nom_distrib) -path_TextTools="/home/eficas/pkg/mxTools/egenix2.0.2pourWindows/mx/TextTools" -dir_download= "/home/eficas/WWW/telechargement/eficas" - -def main(): - if os.path.isdir('dist'):shutil.rmtree('dist') - - copyfiles('.',path_distrib,['LICENSE.TERMS','INSTALL']) - - copyfiles('../Editeur',os.path.join(path_distrib,'Editeur'),['*.py','faqs.txt']) - copyfiles('../Traducteur',os.path.join(path_distrib,'Traducteur'),['*.py']) - copyfiles('../Ihm',os.path.join(path_distrib,'Ihm'),['*.py']) - copyfiles('../Extensions',os.path.join(path_distrib,'Extensions'),['*.py']) - copyfiles('../Misc',os.path.join(path_distrib,'Misc'),['*.py']) - copyfiles('../Accas',os.path.join(path_distrib,'Accas'),['*.py']) -# Packages globaux (pour toutes les versions sauf surcharge) - copyfiles('../Aster/Cata',os.path.join(path_distrib,'Aster','Cata'),['*.py', ]) - copyfiles('Cata/Utilitai',os.path.join(path_distrib,'Aster','Cata','Utilitai'),['*.py']) - copyfiles('Cata/pre74',os.path.join(path_distrib,'Aster','Cata','pre74'),['*.py']) -# version 5 -# On enleve la V5 a la demande d AMA -# copyfiles('Cata/cataSTA5',os.path.join(path_distrib,'Aster','Cata','cataSTA5'),['*.py']) -#version 6 - copyfiles('Cata/cataSTA6',os.path.join(path_distrib,'Aster','Cata','cataSTA6'),['*.py']) - copyfiles('Cata/cataSTA6/Macro',os.path.join(path_distrib,'Aster','Cata','cataSTA6','Macro'),['*.py']) -#version 7.3 -# copyfiles('Cata/cataSTA73',os.path.join(path_distrib,'Aster','Cata','cataSTA73'),['*.py']) -# copyfiles('Cata/cataSTA73/Macro',os.path.join(path_distrib,'Aster','Cata','cataSTA73','Macro'),['*.py']) -#version 7.6 - copyfiles('Cata/cataSTA76',os.path.join(path_distrib,'Aster','Cata','cataSTA76'),['*.py']) - copyfiles('Cata/cataSTA76/Macro',os.path.join(path_distrib,'Aster','Cata','cataSTA76','Macro'),['*.py']) -#version 8 - copyfiles('Cata/cataSTA8',os.path.join(path_distrib,'Aster','Cata','cataSTA8'),['*.py']) - copyfiles('Cata/cataSTA8/Macro',os.path.join(path_distrib,'Aster','Cata','cataSTA8,'Macro'),['*.py']) - - copyfiles('../AIDE',os.path.join(path_distrib,'AIDE'),['*.py']) - copyfiles('../AIDE/fichiers',os.path.join(path_distrib,'AIDE','fichiers'),['*']) - copyfiles('../Aster',os.path.join(path_distrib,'Aster'),['prefs.py', - 'editeur.ini', - 'properties.py', - 'eficas_aster.py', - 'style.py', - ]) - copyfiles('../Aster/Cata',os.path.join(path_distrib,'Aster'),['aster.py',]) - copyfiles('../convert',os.path.join(path_distrib,'convert'),['*.py']) - copyfiles('../convert/parserv5',os.path.join(path_distrib,'convert','parserv5'),['*.py']) - - copyfiles('../generator',os.path.join(path_distrib,'generator'),['*.py']) - - copyfiles('../Editeur/icons',os.path.join(path_distrib,'Editeur','icons'),['*.gif']) - copyfiles('../Editeur/Patrons',os.path.join(path_distrib,'Editeur','Patrons'),['*.com*']) - - copyfiles(os.path.join(path_Noyau,'Noyau'),os.path.join(path_distrib,'Noyau'),['*.py']) - copyfiles(os.path.join(path_Noyau,'Validation'),os.path.join(path_distrib,'Validation'),['*.py']) - - copyfiles('../Tools',os.path.join(path_distrib,'Tools'),['*.py']) - copyfiles('../Tools/foztools',os.path.join(path_distrib,'Tools','foztools'),['*.py']) - copyfiles('../Pmw',os.path.join(path_distrib,'Pmw'),['*.py']) - copyfiles('../Pmw/Pmw_1_2',os.path.join(path_distrib,'Pmw','Pmw_1_2'),['*.py']) - copyfiles('../Pmw/Pmw_1_2/lib',os.path.join(path_distrib,'Pmw','Pmw_1_2','lib'),['*.py','Pmw.def']) - - tarball= maketarball('dist',nom_distrib,nom_distrib) - try: - shutil.copy(tarball,dir_download) - except: - print "Repertoire de download inconnu : ",dir_download - - try: - shutil.copytree(path_TextTools,os.path.join(path_distrib,'Tools','TextTools')) - except: - print "Impossible de recuperer mxTextTools : ",dir_download - sys.exit(1) - - zipfile= makezipfile('dist',nom_distrib,nom_distrib) - try: - shutil.copy(zipfile,dir_download) - except: - print "Repertoire de download inconnu : ",dir_download - -def make_dir(dir_cible): - if type(dir_cible) is not types.StringType: - raise "make_dir : dir_cible doit etre une string (%s)" % `dir_cible` - head,tail=os.path.split(dir_cible) - tails=[tail] - while head and tail and not os.path.isdir(head): - head,tail=os.path.split(head) - tails.insert(0, tail) - - for d in tails: - head = os.path.join(head, d) - if not os.path.isdir(head):os.mkdir(head) - - -def copyfiles(dir_origin,dir_cible,listfiles): - if not os.path.isdir(dir_cible):make_dir(dir_cible) - for glob_files in listfiles: - for file in glob.glob(os.path.join(dir_origin,glob_files)): - if os.path.isfile(file):shutil.copy(file,dir_cible) - -def maketarball(dir_trav,dir_cible,nom_tar): - prev=os.getcwd() - print prev - os.chdir(dir_trav) - os.system("tar -cf "+nom_tar+".tar "+dir_cible) - os.system("gzip -f9 "+nom_tar+".tar ") - os.chdir(prev) - return os.path.join(dir_trav,nom_tar+".tar.gz") - -def makezipfile(dir_trav,dir_cible,nom_tar): - prev=os.getcwd() - os.chdir(dir_trav) - os.system("zip -rq "+nom_tar+".zip "+dir_cible) - os.chdir(prev) - return os.path.join(dir_trav,nom_tar+".zip") - -main() - diff --git a/OldCodes/Aster/configuration_ASTER.py b/OldCodes/Aster/configuration_ASTER.py deleted file mode 100644 index 79ed72d2..00000000 --- a/OldCodes/Aster/configuration_ASTER.py +++ /dev/null @@ -1,42 +0,0 @@ -# -*- coding: utf-8 -*- -# Copyright (C) 2007-2012 EDF R&D -# -# 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 -# -""" - Ce module sert pour charger les parametres de configuration d'EFICAS -""" -# Modules Python -import configuration -import os - - -class CONFIG(configuration.configBase): - - #----------------------------------- - def __init__(self,appli,repIni): - #----------------------------------- - - self.labels_user=['exec_acrobat', 'catalogues','savedir','lang'] - self.labels_eficas=['path_doc','exec_acrobat','lang','rep_cata','catalogues'] - - configuration.configBase.__init__(self,appli,repIni) - - -def make_config(appli,rep): - return CONFIG(appli,rep) - diff --git a/OldCodes/Aster/configuration_Aster.py b/OldCodes/Aster/configuration_Aster.py deleted file mode 100644 index 79ed72d2..00000000 --- a/OldCodes/Aster/configuration_Aster.py +++ /dev/null @@ -1,42 +0,0 @@ -# -*- coding: utf-8 -*- -# Copyright (C) 2007-2012 EDF R&D -# -# 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 -# -""" - Ce module sert pour charger les parametres de configuration d'EFICAS -""" -# Modules Python -import configuration -import os - - -class CONFIG(configuration.configBase): - - #----------------------------------- - def __init__(self,appli,repIni): - #----------------------------------- - - self.labels_user=['exec_acrobat', 'catalogues','savedir','lang'] - self.labels_eficas=['path_doc','exec_acrobat','lang','rep_cata','catalogues'] - - configuration.configBase.__init__(self,appli,repIni) - - -def make_config(appli,rep): - return CONFIG(appli,rep) - diff --git a/OldCodes/Aster/eficasManager.py b/OldCodes/Aster/eficasManager.py deleted file mode 100644 index 161ab3c0..00000000 --- a/OldCodes/Aster/eficasManager.py +++ /dev/null @@ -1,117 +0,0 @@ -#!/usr/bin/env python -# -*- coding: iso-8859-1 -*- -# -# This module helps you to dynamically add a catalog in the list of -# Aster catalogs and then start Eficas with this catalog -# -# WARN: this requires that and /Aster are -# both in the PYTHONPATH -# -# WARN: This python module is a prototype. For industrial usage, it -# should be integrated in a package outside from the Aster specific -# package ==> define a generic prefs -# -# (gboulant - 23/03/2012) - -import sys -sys.path.append("..") - -# =================================================================== -# This part is to manage the catalog that defines the data structure -import prefs_ASTER -def addCatalog(catalogName, catalogPath): - """ - Function to add a catalog caraterized by a name (for the -c option - of the command line) and a path (the location of the python module - that corresponds to the catalog). - """ - prefs_ASTER.addCatalog(catalogName, catalogPath) - -import sys -import prefs -from InterfaceQT4 import eficas_go -def start(catalogName=None): - """ - This simply start Eficas as usual, and passing the catalog name as - an argument if not already present on the command line. - """ - if catalogName is not None and not "-c" in sys.argv: - # The catalogName can be consider as the -c option - sys.argv.append("-c") - sys.argv.append(catalogName) - eficas_go.lanceEficas(code=prefs.code) - -# =================================================================== -# This part is to manage the data saved from Eficas to comm file. -# The text contained in a comm file defines a JdC ("Jeu de Commandes"). - -def loadJdc(filename): - """ - This function loads the text from the specified JdC file. A JdC - file is the persistence file of Eficas (*.comm). - """ - fcomm=open(filename,'r') - jdc = "" - for line in fcomm.readlines(): - jdc+="%s"%line - - # Warning, we have to make sure that the jdc comes as a simple - # string without any extra spaces/newlines - return jdc.strip() - -def getJdcParameters(jdc,macro): - """ - This function converts the data from the specified macro of the - specified jdc text to a python dictionnary whose keys are the - names of the data of the macro. - """ - context = {} - source = "def args_to_dict(**kwargs): return kwargs \n" - source+= "%s = _F = args_to_dict \n"%macro - source+= "parameters="+jdc+" \n" - source+= "context['parameters'] = parameters \n" - #print source - code = compile(source, 'file.py', 'exec') - eval(code) - parameters = context['parameters'] - return parameters - -# -# =========================================================== -# Unit tests -# =========================================================== -# -def TEST_start(): - addCatalog(catalogName="demo", catalogPath="mycata.py") - #start() - start("demo") - -def TEST_getJdcParameters_fromString(): - jdc="S_EP_INTERNE(dir_name='/tmp', \n \ - TYPE_SEP='TUBE_SOUS_EPAISSEUR', \n \ - MAIL_TUBE=_F(UNITE_LONGUEUR='MM', \n \ - R_EXT=130., \n \ - EP_NOMINALE=22.0, \n \ - NB_SEG_AMORTISSEMENT=11, \n \ - NB_SEG_TRANSITION=4, \n \ - NB_SEG_GENERATRICES=5, \n \ - DIST_PTS_GEN_MIN=100.0, \n \ - NB_SEG_GEN_MIN=3, \n \ - NB_SEG_ARC=5, \n \ - NB_SEG_EP=3,),);" - - parameters=getJdcParameters(jdc,"S_EP_INTERNE") - print "parameters = ",parameters - print parameters['MAIL_TUBE']['R_EXT'] - - -def TEST_getJdcParameters_fromFile(): - jdc = loadJdc('data.comm') - parameters=getJdcParameters(jdc,"EPREUVE_ENCEINTE") - print parameters - - -if __name__ == "__main__": - TEST_start() - TEST_getJdcParameters_fromString() - TEST_getJdcParameters_fromFile() diff --git a/OldCodes/Aster/eficas_aster.py b/OldCodes/Aster/eficas_aster.py deleted file mode 100755 index 60fd247c..00000000 --- a/OldCodes/Aster/eficas_aster.py +++ /dev/null @@ -1,35 +0,0 @@ -#!/usr/bin/env python -# -*- coding: utf-8 -*- -# maConfiguration MANAGEMENT OF EDF VERSION -# ====================================================================== -# COPYRIGHT (C) 1991 - 2002 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# -# -# ====================================================================== - -""" - Ce module sert à lancer EFICAS configuré pour Code_Aster -""" -# Modules Python - -# Modules Eficas -import prefs -name='prefs_'+prefs.code -__import__(name) - -from InterfaceTK import eficas_go - -eficas_go.lanceEficas(code=prefs.code) diff --git a/OldCodes/Aster/lance_test.sh b/OldCodes/Aster/lance_test.sh deleted file mode 100755 index 743c70be..00000000 --- a/OldCodes/Aster/lance_test.sh +++ /dev/null @@ -1,43 +0,0 @@ -#unalias do -#set -x -version=NEW9 -passe=1 -rm -rf ./Batch/${version}/ok_${passe} -rm -rf ./Batch/${version}/bad_${passe} -rm -rf ./Batch/${version}/badfile_${passe} -rm -rf ./Batch/${version}/nt_${passe} -for file in `cat ./Batch/${version}/aTester` -do - echo $file - grep "VISU_EFICAS='NON'" $file > /dev/null 2>/dev/null - rc=$? - if [ "$rc" != "0" ] - then - grep INCLUDE $file | grep -v "#" | grep -v INCLUDE_MATERIAU > /dev/null 2>/dev/null - rc=$? - if [ "$rc" != "0" ] - then - cr=`./test_eficas.py $file` - if [ "${cr}" == "" ] - then - echo $file >> ./Batch/${version}/bad_${passe} - else - nomfeuille=`basename $file` - boncr="DEBUT CR validation : "${nomfeuille}" FIN CR validation :"${nomfeuille} - cr=`echo $cr` - if [ "${cr}" != "$boncr" ] - then - echo $file >> ./Batch/${version}/bad_${passe} - echo $cr >>./Batch/${version}/bad_${passe} - echo $file >>./Batch/${version}/badfile_${passe} - else - echo $file >> ./Batch/${version}/ok_${passe} - fi - fi - else - echo $file >> ./Batch/${version}/nt_${passe} - fi - else - echo $file >> ./Batch/${version}/nt_${passe} - fi -done diff --git a/OldCodes/Aster/prefs.py b/OldCodes/Aster/prefs.py deleted file mode 100644 index b4663f8f..00000000 --- a/OldCodes/Aster/prefs.py +++ /dev/null @@ -1,22 +0,0 @@ -# Copyright (C) 2007-2012 EDF R&D -# -# 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 -# -code="ASTER" -import sys, os -if os.path.dirname(os.path.abspath(__file__)) not in sys.path : - sys.path.insert(0,os.path.dirname(os.path.abspath(__file__))) diff --git a/OldCodes/Aster/prefs.py.win b/OldCodes/Aster/prefs.py.win deleted file mode 100644 index c70c90fe..00000000 --- a/OldCodes/Aster/prefs.py.win +++ /dev/null @@ -1,101 +0,0 @@ -# -*- coding: utf-8 -*- -# CONFIGURATION MANAGEMENT OF EDF VERSION -# ====================================================================== -# COPYRIGHT (C) 1991 - 2002 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# -# -# ====================================================================== - -import os,sys - -# repIni sert à localiser le fichier editeur.ini -# Obligatoire -repIni=os.path.dirname(os.path.abspath(__file__)) - -# INSTALLDIR sert à localiser l'installation d'Eficas -# Obligatoire -INSTALLDIR=os.path.join(repIni,'..') - -# CODE_PATH sert à localiser Noyau et Validation éventuellement -# non contenus dans la distribution EFICAS -# Par défaut on utilise les modules de INSTALLDIR -# Peut valoir None (defaut) -CODE_PATH = None -#CODE_PATH = os.path.join(repIni,'../../Superv') - -# la variable code donne le nom du code a selectionner -code="ASTER" - -# ICONDIR sert à localiser le répertoire contenant les icones -# Par défaut on utilise le répertoire icons dans Editeur -ICONDIR=os.path.join(INSTALLDIR,'Editeur','icons') - -# lang indique la langue utilisée pour les chaines d'aide : fr ou ang -lang='fr' - -# Codage des strings qui accepte les accents (en remplacement de 'ascii') -encoding='iso-8859-1' - -labels= ('Fichier','Edition','Jeu de commandes', -# 'Catalogue','Browsers', - 'Options', - 'Aide', - ) - -appli_composants=['readercata','bureau', -# 'browser', - 'options', - ] - -menu_defs={ 'bureau': [ - ('Fichier',[ - ('Nouveau','newJDC','','Ctrl+N'), - ('Nouvel INCLUDE','newJDC_include'), - ('Ouvrir','openJDC','','Ctrl+O'), - ('Enregistrer','saveJDC','','Ctrl+S'), - ('Enregistrer sous','saveasJDC','','Ctrl+E'), - None, - ('Fermer','closeJDC','','Ctrl+W'), - ('Quitter','exitEFICAS','','Ctrl+Q'), - ] - ), - ('Edition',[ - ('Copier','copy','','Ctrl+C'), - ('Couper','cut','','Ctrl+X'), - ('Coller','paste','','Ctrl+V'), - ] - ), - ('Jeu de commandes',[ - ('Rapport de validation','visuCRJDC','','Ctrl+R'), - ('Fichier source','visu_txt_brut_JDC','','Ctrl+B'), - #('Paramètres Eficas','affichage_fichier_ini'), - ] - ), - ('Aide',[ - ('Aide EFICAS','aideEFICAS','','Ctrl+A'), - ] - ), - ] - } - -userprefs=os.path.expanduser("~/Eficas_install/prefs.py") -if os.path.isfile(userprefs): - try: - execfile(userprefs) - except: - pass - -sys.path[:0]=[INSTALLDIR] diff --git a/OldCodes/Aster/prefs_ASTER.py b/OldCodes/Aster/prefs_ASTER.py deleted file mode 100644 index f9aa732c..00000000 --- a/OldCodes/Aster/prefs_ASTER.py +++ /dev/null @@ -1,66 +0,0 @@ -# -*- coding: utf-8 -*- -# Copyright (C) 2007-2012 EDF R&D -# -# 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 - -# repIni sert a localiser le fichier editeur.ini -# Obligatoire -repIni=os.path.dirname(os.path.abspath(__file__)) -rep_cata = os.path.join(repIni,'Cata') -mode_nouv_commande='alpha' - - -# lang indique la langue utilisee pour les chaines d'aide : fr ou ang -lang='fr' - -# Codage des strings qui accepte les accents (en remplacement de 'ascii') -encoding='iso-8859-1' - -# Utilisateur/Developpeur -isdeveloppeur = "NON" - -rep_mat_STA88=os.path.join(rep_cata,'cataSTA8','materiau') -rep_mat_STA98=os.path.join(rep_cata,'cataSTA9','materiau') -rep_mat_STA103=os.path.join(rep_cata,'cataSTA10','materiau') - -#path_doc="/local/noyret/Docs" -rep_doc_STA88="/local/noyret/Docs" -rep_doc_STA103="/local/noyret/Docs" -rep_doc_STA11="/local/noyret/Docs/cataSTA11c_clefs_docu" - -# Choix des catalogues -catalogues=( -#('ASTER','STA8.8',os.path.join(rep_cata,'cataSTA8'),'python'), -#('ASTER','STA9.8',os.path.join(rep_cata,'cataSTA9'),'python'), -#('ASTER','STA10.3',os.path.join(rep_cata,'cataSTA10'),'python'), -#('ASTER','STA11',os.path.join(rep_cata,'cataSTA11'),'python','defaut'), -('ASTER','STA12',os.path.join(rep_cata,'cataSTA12'),'python','defaut'), -) -exec_acrobat = '/usr/bin/xgd-open' - - -def addCatalog(catalogName, catalogPath): - """ - This function helps you to add a new catalog dynamically - """ - global catalogues - item=('ASTER',catalogName,catalogPath,'python') - catalogues+=(item,) - diff --git a/OldCodes/Aster/prefs_Aster.py b/OldCodes/Aster/prefs_Aster.py deleted file mode 100644 index f9aa732c..00000000 --- a/OldCodes/Aster/prefs_Aster.py +++ /dev/null @@ -1,66 +0,0 @@ -# -*- coding: utf-8 -*- -# Copyright (C) 2007-2012 EDF R&D -# -# 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 - -# repIni sert a localiser le fichier editeur.ini -# Obligatoire -repIni=os.path.dirname(os.path.abspath(__file__)) -rep_cata = os.path.join(repIni,'Cata') -mode_nouv_commande='alpha' - - -# lang indique la langue utilisee pour les chaines d'aide : fr ou ang -lang='fr' - -# Codage des strings qui accepte les accents (en remplacement de 'ascii') -encoding='iso-8859-1' - -# Utilisateur/Developpeur -isdeveloppeur = "NON" - -rep_mat_STA88=os.path.join(rep_cata,'cataSTA8','materiau') -rep_mat_STA98=os.path.join(rep_cata,'cataSTA9','materiau') -rep_mat_STA103=os.path.join(rep_cata,'cataSTA10','materiau') - -#path_doc="/local/noyret/Docs" -rep_doc_STA88="/local/noyret/Docs" -rep_doc_STA103="/local/noyret/Docs" -rep_doc_STA11="/local/noyret/Docs/cataSTA11c_clefs_docu" - -# Choix des catalogues -catalogues=( -#('ASTER','STA8.8',os.path.join(rep_cata,'cataSTA8'),'python'), -#('ASTER','STA9.8',os.path.join(rep_cata,'cataSTA9'),'python'), -#('ASTER','STA10.3',os.path.join(rep_cata,'cataSTA10'),'python'), -#('ASTER','STA11',os.path.join(rep_cata,'cataSTA11'),'python','defaut'), -('ASTER','STA12',os.path.join(rep_cata,'cataSTA12'),'python','defaut'), -) -exec_acrobat = '/usr/bin/xgd-open' - - -def addCatalog(catalogName, catalogPath): - """ - This function helps you to add a new catalog dynamically - """ - global catalogues - item=('ASTER',catalogName,catalogPath,'python') - catalogues+=(item,) - diff --git a/OldCodes/Aster/properties.py b/OldCodes/Aster/properties.py deleted file mode 100644 index 3e8be170..00000000 --- a/OldCodes/Aster/properties.py +++ /dev/null @@ -1,21 +0,0 @@ -# Copyright (C) 2007-2012 EDF R&D -# -# 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 -# -version = "10.1.27" -date = "02/06/2010" -exploit = False diff --git a/OldCodes/Aster/qtEficas_aster.py b/OldCodes/Aster/qtEficas_aster.py deleted file mode 100755 index de3797de..00000000 --- a/OldCodes/Aster/qtEficas_aster.py +++ /dev/null @@ -1,32 +0,0 @@ -#!/usr/bin/env python -# -*- coding: utf-8 -*- -# Copyright (C) 2007-2012 EDF R&D -# -# 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 -# -""" - Ce module sert a lancer EFICAS configure pour Code_Aster -""" -# Modules Python -# Modules Eficas - -import sys,os -sys.path.append(os.path.join(os.path.abspath(os.path.dirname(__file__)),'..')) - -import prefs -from InterfaceQT4 import eficas_go -eficas_go.lanceEficas(code=prefs.code) diff --git a/OldCodes/Aster/qtGroup.py b/OldCodes/Aster/qtGroup.py deleted file mode 100755 index 4998d8be..00000000 --- a/OldCodes/Aster/qtGroup.py +++ /dev/null @@ -1,36 +0,0 @@ -#!/usr/bin/env python -# -*- coding: utf-8 -*- -# Copyright (C) 2007-2012 EDF R&D -# -# 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 -# -""" - Ce module sert à lancer EFICAS configuré pour Code_Aster -""" -# Modules Python -import sys,os - -# Modules Eficas -import prefs -name='prefs_'+prefs.code -__import__(name) - - -sys.path.append(os.path.join(os.path.abspath(os.path.dirname(__file__)),'..')) -from InterfaceQT4 import eficas_go - -eficas_go.lanceEficas_ssIhm_cherche_Groupes(code=prefs.code,version='STA10.3') diff --git a/OldCodes/Aster/reecrit_comm.py b/OldCodes/Aster/reecrit_comm.py deleted file mode 100755 index 4164ab0a..00000000 --- a/OldCodes/Aster/reecrit_comm.py +++ /dev/null @@ -1,45 +0,0 @@ -#!/usr/bin/env python -# -*- coding: utf-8 -*- -# maConfiguration MANAGEMENT OF EDF VERSION -# ====================================================================== -# COPYRIGHT (C) 1991 - 2002 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# -# -# ====================================================================== - -""" - Ce module sert a lancer EFICAS configure pour Code_Aster -""" -# Modules Python -import sys,os - -# Modules Eficas -import prefs -if hasattr(prefs,'encoding'): - # Hack pour changer le codage par defaut des strings - import sys - reload(sys) - sys.setdefaultencoding(prefs.encoding) - del sys.setdefaultencoding - # Fin hack - - -sys.path.append(os.path.join(os.path.abspath(os.path.dirname(__file__)),'..')) -from InterfaceQT4 import eficas_go - -if len(sys.argv) > 1 : - # on veut ouvrir un fichier directement au lancement d'Eficas - eficas_go.lanceEficas_ssIhm_reecrit(code='ASTER',fichier = sys.argv[1],version='STA11') diff --git a/OldCodes/Aster/sdist.py b/OldCodes/Aster/sdist.py deleted file mode 100644 index 3c691dcf..00000000 --- a/OldCodes/Aster/sdist.py +++ /dev/null @@ -1,180 +0,0 @@ -# -*- coding: utf-8 -*- -""" - Ce module sert à construire les distributions d'EFICAS en fonction - du tag CVS courant - Les distributions sont : - - un tar.gz pour UNIX ne contenant pas mxTextTools - - un zip pour Windows contenant mx TextTools préinstallé - L'utilisation de ce module est la suivante : - 1- Se mettre dans un répertoire de travail - 2- Configurer son environnement pour utiliser le référentiel CVS EFICAS - 3- Exporter les sources d'EficasV1 par la commande : - cvs export -r TAG -d Eficas_export EficasV1 - ou TAG est le tag CVS de la version que l'on veut distribuer (par exemple V1_1p1) - 4- Copier le répertoire fourni par Aster (ACCAS6.2.0) au meme niveau que Eficas_export - 5- Aller dans le répertoire Eficas_export - 6- Executer le script sdist.py - python sdist.py - Ce qui a pour effet de creer un repertoire dist contenant les 2 distributions - et de les copier dans le répertoire indiqué par dir_download s'il est accessible - -""" -import os,shutil,glob,sys -import types - -version="$Name: V7_main $"[7:-2] or 'Test1_4' -# ==========Path du noyau fourni par Aster==================== -path_Noyau="../../AccasAster" -# ============================================================ -nom_distrib="Eficas"+version -path_distrib=os.path.join("dist",nom_distrib) -path_TextTools="/home/eficas/pkg/mxTools/egenix2.0.2pourWindows/mx/TextTools" -dir_download= "/home/eficas/WWW/telechargement/eficas" - -def main(): - if os.path.isdir('dist'):shutil.rmtree('dist') - - copyfiles('.',path_distrib,['LICENSE.TERMS','INSTALL','NEWS']) - - copyfiles('../Editeur',os.path.join(path_distrib,'Editeur'),['*.py','faqs.txt']) - copyfiles('../InterfaceTK',os.path.join(path_distrib,'InterfaceTK'),['*.py','faqs.txt']) - copyfiles('../InterfaceQT4',os.path.join(path_distrib,'InterfaceQT4'),['*.py']) - copyfiles('../UiQT4',os.path.join(path_distrib,'UiQT4'),['*.ui','makefile']) - copyfiles('../Traducteur',os.path.join(path_distrib,'Traducteur'),['*.py']) - copyfiles('../Ihm',os.path.join(path_distrib,'Ihm'),['*.py']) - copyfiles('../Extensions',os.path.join(path_distrib,'Extensions'),['*.py']) - copyfiles('../Misc',os.path.join(path_distrib,'Misc'),['*.py']) - copyfiles('../Accas',os.path.join(path_distrib,'Accas'),['*.py']) - # AIDE - copyfiles('../Aide',os.path.join(path_distrib,'Aide'),['*_ASTER.adp']) - copyfiles('../Aide/fichiers_ASTER',os.path.join(path_distrib,'Aide','fichiers_ASTER'),['*']) - #pour Aster TK - copyfiles('../AIDE',os.path.join(path_distrib,'AIDE'),['*.py']) - copyfiles('../AIDE/fichiers',os.path.join(path_distrib,'AIDE','fichiers'),['*']) - copyfiles('.',os.path.join(path_distrib,'AIDE','fichiers'),['INSTALL','NEWS']) - copyfiles('../Editeur',os.path.join(path_distrib,'AIDE','fichiers'),['faqs.txt']) - # Code_Aster - copyfiles('../Aster',os.path.join(path_distrib,'Aster'),['prefs.py', - 'prefs_ASTER.py', - 'editeur.ini', - 'editeur_salome.ini', - 'eficas_aster.py', - 'qtEficas_aster.py', - 'configuration.py', - 'configuration_ASTER.py', - 'test_eficas.py', - 'style.py', - '__init__.py' - ]) - - # Les Catalogues, Macros, Materiaux et SD - # copyfiles('Cata/Utilitai',os.path.join(path_distrib,'Aster','Cata','Utilitai'),['*.py']) - # copyfiles('Cata/pre74',os.path.join(path_distrib,'Aster','Cata','pre74'),['*.py']) - - #copyfiles('Cata/cataSTA6',os.path.join(path_distrib,'Aster','Cata','cataSTA6'),['*.py']) - #copyfiles('Cata/cataSTA6/Macro',os.path.join(path_distrib,'Aster','Cata','cataSTA6','Macro'),['*.py']) - - #copyfiles('Cata/cataSTA7',os.path.join(path_distrib,'Aster','Cata','cataSTA7'),['*.py']) - #copyfiles('Cata/cataSTA7/Macro',os.path.join(path_distrib,'Aster','Cata','cataSTA7','Macro'),['*.py']) - #copyfiles('Cata/cataSTA7/materiau',os.path.join(path_distrib,'Aster','Cata','cataSTA7/materiau'),['README.py']) - - copyfiles('Cata/cataSTA8',os.path.join(path_distrib,'Aster','Cata','cataSTA8'),['*.py']) - copyfiles('Cata/cataSTA8/Macro',os.path.join(path_distrib,'Aster','Cata','cataSTA8/Macro'),['*.py']) - copyfiles('Cata/cataSTA8/materiau',os.path.join(path_distrib,'Aster','Cata','cataSTA8/materiau'),['README.py']) - - copyfiles('Cata/cataSTA9',os.path.join(path_distrib,'Aster','Cata','cataSTA9'),['*.py']) - copyfiles('Cata/cataSTA9/Macro',os.path.join(path_distrib,'Aster','Cata','cataSTA9/Macro'),['*.py']) - copyfiles('Cata/cataSTA9/materiau',os.path.join(path_distrib,'Aster','Cata','cataSTA9/materiau'),['README.py']) - copyfiles('Cata/cataSTA9/SD',os.path.join(path_distrib,'Aster','Cata','cataSTA9/SD'),['*.py']) - - copyfiles('Cata/cataSTA10',os.path.join(path_distrib,'Aster','Cata','cataSTA10'),['*.py']) - copyfiles('Cata/cataSTA10/Macro',os.path.join(path_distrib,'Aster','Cata','cataSTA10/Macro'),['*.py']) - #copyfiles('Cata/cataSTA10/materiau',os.path.join(path_distrib,'Aster','Cata','cataSTA10/materiau'),['README.py']) - copyfiles('Cata/cataSTA10/SD',os.path.join(path_distrib,'Aster','Cata','cataSTA10/SD'),['*.py']) - - copyfiles('Cata',os.path.join(path_distrib,'Aster','Cata'),['*9c_clefs_docu']) - copyfiles('../Aster/Cata',os.path.join(path_distrib,'Aster'),['aster.py',]) - - # ______________________ - - copyfiles('../convert',os.path.join(path_distrib,'convert'),['*.py']) - copyfiles('../convert/parserv5',os.path.join(path_distrib,'convert','parserv5'),['*.py']) - copyfiles('../generator',os.path.join(path_distrib,'generator'),['*.py']) - copyfiles('../Editeur/icons',os.path.join(path_distrib,'Editeur','icons'),['*.gif','*.png']) - copyfiles('../Editeur/Patrons',os.path.join(path_distrib,'Editeur','Patrons'),['*.com*']) - copyfiles('../Editeur/Patrons/ASTER',os.path.join(path_distrib,'Editeur','Patrons','ASTER'),['*.com*']) - - copyfiles(os.path.join(path_Noyau,'Noyau'),os.path.join(path_distrib,'Noyau'),['*.py']) - copyfiles(os.path.join(path_Noyau,'Validation'),os.path.join(path_distrib,'Validation'),['*.py']) - copyfiles(os.path.join(path_Noyau,'Accas'),os.path.join(path_distrib,'Aster'),['properties.py']) - copyfiles(os.path.join(path_Noyau,'Cata'),os.path.join(path_distrib,'Aster','Cata'),['__init__.py',]) - copyfiles(os.path.join(path_Noyau,'Macro'),os.path.join(path_distrib,'Aster','Cata','cataSTA9','Macro'),['.py']) - #os.system("mv "+path_distrib+"/Aster/Cata/cata_STA9.py "+path_distrib+"/Aster/Cata/cataSTA9/cata.py") - - copyfiles('../Tools',os.path.join(path_distrib,'Tools'),['*.py']) - copyfiles('../Tools/foztools',os.path.join(path_distrib,'Tools','foztools'),['*.py']) - copyfiles('../Pmw',os.path.join(path_distrib,'Pmw'),['*.py']) - copyfiles('../Pmw/Pmw_1_2',os.path.join(path_distrib,'Pmw','Pmw_1_2'),['*.py']) - copyfiles('../Pmw/Pmw_1_2/lib',os.path.join(path_distrib,'Pmw','Pmw_1_2','lib'),['*.py','Pmw.def']) - - - tarball= maketarball('dist',nom_distrib,nom_distrib) - try: - shutil.copy(tarball,dir_download) - except: - print "Repertoire de download inconnu : ",dir_download - - shutil.copy('prefs.py.win',os.path.join(path_distrib,'Aster','prefs.py')) - shutil.copy('editeur.ini.win',os.path.join(path_distrib,'Aster','editeur.ini')) - - try: - shutil.copytree(path_TextTools,os.path.join(path_distrib,'Tools','TextTools')) - except: - print "Impossible de recuperer mxTextTools : ",dir_download - sys.exit(1) - - zipfile= makezipfile('dist',nom_distrib,nom_distrib) - try: - shutil.copy(zipfile,dir_download) - except: - print "Repertoire de download inconnu : ",dir_download - -def make_dir(dir_cible): - if type(dir_cible) is not types.StringType: - raise "make_dir : dir_cible doit etre une string (%s)" % `dir_cible` - head,tail=os.path.split(dir_cible) - tails=[tail] - while head and tail and not os.path.isdir(head): - head,tail=os.path.split(head) - tails.insert(0, tail) - - for d in tails: - head = os.path.join(head, d) - if not os.path.isdir(head):os.mkdir(head) - - -def copyfiles(dir_origin,dir_cible,listfiles): - if not os.path.isdir(dir_cible):make_dir(dir_cible) - for glob_files in listfiles: - for file in glob.glob(os.path.join(dir_origin,glob_files)): - shutil.copy(file,dir_cible) - - -def maketarball(dir_trav,dir_cible,nom_tar): - prev=os.getcwd() - print prev - os.chdir(dir_trav) - os.system("tar -cf "+nom_tar+".tar "+dir_cible) - os.system("gzip -f9 "+nom_tar+".tar ") - os.chdir(prev) - return os.path.join(dir_trav,nom_tar+".tar.gz") - -def makezipfile(dir_trav,dir_cible,nom_tar): - prev=os.getcwd() - os.chdir(dir_trav) - os.system("zip -rq "+nom_tar+".zip "+dir_cible) - os.chdir(prev) - return os.path.join(dir_trav,nom_tar+".zip") - -main() - diff --git a/OldCodes/Aster/style.py b/OldCodes/Aster/style.py deleted file mode 100644 index 7ee50545..00000000 --- a/OldCodes/Aster/style.py +++ /dev/null @@ -1,84 +0,0 @@ -# -*- coding: utf-8 -*- -# Copyright (C) 2007-2012 EDF R&D -# -# 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 -# -""" -Pour modifier le style d'EFICAS il faut ajouter un fichier style.py qui contiendra les -informations sur le style voulu dans son repertoire Eficas_install. - -La methode la plus simple consiste à modifier directement les attributs de l'objet style dans le -fichier style.py d'Eficas_install. Exemple:: - - style.background='yellow' - -pour modifier la couleur du background. - -Il existe une autre méthode qui peut être utilisée quand on veut modifier plusieurs propriétés à la fois. - -Le fichier style.py doit définir une nouvelle classe qui dérive de la classe de base STYLE avec des attributs -de classe qui définiront le nouveau style (par exemple, si on veut modifier le background):: - - class STYLE(STYLE): - background='yellow' - -Il faut ensuite instancier cette classe, dans ce meme fichier, en donnant le nom style à l'objet cree:: - - style=STYLE() - -Tous les attributs de classe possibles sont visibles dans le module Editeur/basestyle.py:: - - background='gray90' - foreground='black' - entry_background='white' - list_background='white' - list_select_background='#00008b' - list_select_foreground='grey' - tooltip_background="yellow" - - standard = ("Helvetica",12) - standard_italique = ("Helvetica",12,'italic') - standard_gras = ("Helvetica",12,'bold') - standard_gras_souligne = ("Helvetica",12,'bold','underline') - - canvas = ('Helvetica',10) - canvas_italique = ('Helvetica',10,'italic') - canvas_gras = ("Helvetica",10,'bold') - canvas_gras_italique = ("Helvetica",12,'bold','italic') - - standard12 = ("Helvetica",14) - standard12_gras = ("Helvetica",14,'bold') - standard12_gras_italique = ( "Helvetica",14,'bold','italic') - - -Le fichier style.py contenu dans le répertoire Aster permet de spécifier des propriétés globales pour une installation. -Les modifications de style contenues dans ce fichier et dans le fichier style.py d'Eficas_install -sont prises en compte dans cet ordre. -""" - -p1=10 -p2=14 -f1="Helvetica" - -style.background='gray90' -style.foreground='black' -style.standard = (f1,p1) -style.standard_italique = (f1,p1,'italic') -style.standard_gras = (f1,p1,'bold') -style.canvas_italique = (f1,p1,'italic') -style.canvas_gras = (f1,p1,'bold') -style.statusfont = (f1,p2) diff --git a/OldCodes/Aster/test_eficas.py b/OldCodes/Aster/test_eficas.py deleted file mode 100755 index bd1e6c96..00000000 --- a/OldCodes/Aster/test_eficas.py +++ /dev/null @@ -1,45 +0,0 @@ -#!/usr/bin/env python -# -*- coding: utf-8 -*- -# maConfiguration MANAGEMENT OF EDF VERSION -# ====================================================================== -# COPYRIGHT (C) 1991 - 2002 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# -# -# ====================================================================== - -""" - Ce module sert a lancer EFICAS configure pour Code_Aster -""" -# Modules Python -import sys,os - -# Modules Eficas -import prefs -if hasattr(prefs,'encoding'): - # Hack pour changer le codage par defaut des strings - import sys - reload(sys) - sys.setdefaultencoding(prefs.encoding) - del sys.setdefaultencoding - # Fin hack - - -sys.path.append(os.path.join(os.path.abspath(os.path.dirname(__file__)),'..')) -from InterfaceQT4 import eficas_go - -if len(sys.argv) > 1 : - # on veut ouvrir un fichier directement au lancement d'Eficas - eficas_go.lanceEficas_ssIhm_cherche_cr(code='ASTER',fichier = sys.argv[1],version='STA10.3') diff --git a/OldCodes/CarmelCND/CMakeLists.txt b/OldCodes/CarmelCND/CMakeLists.txt deleted file mode 100644 index b708105c..00000000 --- a/OldCodes/CarmelCND/CMakeLists.txt +++ /dev/null @@ -1,31 +0,0 @@ -# -*- coding: utf-8 -*- -# CONFIGURATION MANAGEMENT OF EDF VERSION -# ====================================================================== -# COPYRIGHT (C) 1991 - 2002 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# -# -# ====================================================================== - - -install ( FILES - qtEficas_CarmelCND.py prefs_CARMELCND.py prefs.py configuration_CARMELCND.py - acquiertGroupes.py CarmelCND_Cata.py PrepareRunCarmel.py - DESTINATION ${CMAKE_INSTALL_PREFIX}/CarmelCND - ) - -### Local Variables: -### mode: cmake -### End: diff --git a/OldCodes/CarmelCND/CarmelCND_Cata.py b/OldCodes/CarmelCND/CarmelCND_Cata.py deleted file mode 100644 index a8413ce9..00000000 --- a/OldCodes/CarmelCND/CarmelCND_Cata.py +++ /dev/null @@ -1,75 +0,0 @@ -from Accas import * - -class source(ASSD): - pass - -class conducteur(ASSD): - pass - -class nocond(ASSD): - pass - -class vcut(ASSD): - pass - -class zs(ASSD): - pass - - -import types -class Tuple: - def __init__(self,ntuple): - self.ntuple=ntuple - - def __convert__(self,valeur): - if type(valeur) == types.StringType: - return None - if len(valeur) != self.ntuple: - return None - return valeur - - def info(self): - return "Tuple de %s elements" % self.ntuple - - __repr__=info - __str__=info - -JdC = JDC_CATA (code = 'monCode', - execmodul = None, - ) - -# ====================================================================== - - -SOURCE=OPER(nom='SOURCE',op=None,sd_prod=source,UIinfo = { "groupes" : ( "CACHE", ) }, - EnveloppeConnexeInducteur=SIMP(statut='o',typ='TXM',defaut="default"), - VecteurDirecteur=SIMP(statut='o',typ=Tuple(3),validators=VerifTypeTuple(('R','R','R'))), - #VecteurDirecteur=SIMP(statut='o',typ=Tuple(3),homo="constant",validators=VerifTypeTuple(('R','R','R'))), - Centre=SIMP(statut='o',typ=Tuple(3),validators=VerifTypeTuple(('R','R','R'))), - SectionBobine=SIMP(statut='o',typ='R',fr='en m2',ang='(m2)'), - Amplitude=SIMP(statut='o',typ='R',fr='en A',ang='(A)'), - NbdeTours=SIMP(statut='o',typ='I',val_min=1), -) - -CONDUCTEUR=OPER(nom='CONDUCTEUR',op=None,sd_prod=conducteur,UIinfo = { "groupes" : ( "CACHE", ) }, - Conductivite=SIMP(statut='o',typ='R',fr='en S/m',ang='(S/m)'), - PermeabiliteRelative=SIMP(statut='o',typ='R',), -) -NOCOND=OPER(nom='NOCOND',op=None,sd_prod=nocond,UIinfo = { "groupes" : ( "CACHE", ) }, - PermeabiliteRelative=SIMP(statut='o',typ='R',), -) -# -VCUT=OPER(nom='VCUT',op=None,sd_prod=vcut,UIinfo = { "groupes" : ( "CACHE", ) }, - Orientation=SIMP(statut='o',typ='TXM',into=("Oppose","Meme sens"),defaut="Oppose"), -) -ZS=OPER(nom='ZS',op=None,sd_prod=zs,UIinfo = { "groupes" : ( "CACHE", ) }, - Conductivite=SIMP(statut='o',typ='R',), - PermeabiliteRelative=SIMP(statut='o',typ='R',), -) -PARAMETRES=PROC(nom='PARAMETRES',op=None, UIinfo = { "groupes" : ( "CACHE", ) }, - RepCarmel=SIMP(typ='Repertoire',fr= "Repertoire Carmel",ang= "Carmel Directory",statut= "o",defaut="/projets/projets.002/carmel3d.001/frequentiel/V_240/Compil"), - TypedeFormule=SIMP(statut='o',typ='TXM',into=("TOMEGA","APHI")), - Frequence=SIMP(statut='o',typ='I',fr="en Hz",ang="(Hz)"), - Nb_Max_Iterations=SIMP(statut='o',typ='I',val_min=1,val_max=50000,defaut=10000), - Erreur_Max=SIMP(statut='o',typ='R',defaut=1E-9), -) diff --git a/OldCodes/CarmelCND/PourTraductionCarmel.py b/OldCodes/CarmelCND/PourTraductionCarmel.py deleted file mode 100644 index c0056847..00000000 --- a/OldCodes/CarmelCND/PourTraductionCarmel.py +++ /dev/null @@ -1,21 +0,0 @@ -print tr("SOURCE") -print tr("EnveloppeConnexeInducteur") -print tr("EnveloppeConnexe2") -print tr("VecteurDirecteur") -print tr("Centre") -print tr("SectionBobine") -print tr("Amplitude") -print tr("NbdeTours") -print tr("CONDUCTEUR") -print tr("Conductivite") -print tr("PermeabiliteRelative") -print tr("NOCOND") -print tr("VCUT") -print tr("Orientation") -print tr("ZS") -print tr("PARAMETRES") -print tr("RepCarmel") -print tr("TypedeFormule") -print tr("Frequence") -print tr("Nb_Max_Iterations") -print tr("Erreur_Max") diff --git a/OldCodes/CarmelCND/PrepareRunCarmel.py b/OldCodes/CarmelCND/PrepareRunCarmel.py deleted file mode 100644 index 58af31d7..00000000 --- a/OldCodes/CarmelCND/PrepareRunCarmel.py +++ /dev/null @@ -1,24 +0,0 @@ -def prepareRunCarmel(repertoireExe,repertoireMed,nom): - texte= 'echo "Debut execution gendof" \n' - texte+= 'cd ' + repertoireMed + ' \n' - texte+= repertoireExe+"/gendof.exe -scale 0.001 < " + nom + ".ingendof\n" - texte+= 'echo "Debut execution fcarmel" \n' - #texte+= repertoireExe+"/gendof.exe -scale 0.001 \n" - #texte+= 'if [ ! -f "'+nom+'.car" ]\n' - #texte+= 'then\n exit(1)\nfi \n\n' - texte+= repertoireExe+"/fcarmel.exe < " + nom + ".infcarmel\n" - #texte+= repertoireExe+"/fcarmel.exe \n" - #texte+= 'if [ ! -f "'+nom+'.xmat" ]\n' - #texte+= 'then\n exit(1)\nfi \n\n' - texte+= 'echo "Debut execution postprocess" \n' - texte+= repertoireExe+"/postprocess.exe < " + nom + ".inpostprocess\n" - texte+= 'read a' - #texte+= repertoireExe+"/postprocess.exe" - - return texte - -if __name__ == "__main__": - repertoire="/home/A96028/ExecCarmel/Compil" - nom="lance/Domaine" - print prepareRunCarmel(repertoire,nom) - diff --git a/OldCodes/CarmelCND/acquiertGroupes.py b/OldCodes/CarmelCND/acquiertGroupes.py deleted file mode 100755 index 35eb0918..00000000 --- a/OldCodes/CarmelCND/acquiertGroupes.py +++ /dev/null @@ -1,123 +0,0 @@ -#! /usr/bin/env python -# -*- coding:utf-8 -*- -# /* This file is part of MED. -# * -# * COPYRIGHT (C) 1999 - 2013 EDF R&D, CEA/DEN -# * MED 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 3 of the License, or -# * (at your option) any later version. -# * -# * MED 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 MED. If not, see . -# */ - - -import sys -sys.path.append('/home/A96028/Salome/V7_main/tools/install/Medfichier-307-hdf51810/lib/python2.7/site-packages') - -from med.medfile import * -from med.medmesh import * -from med.medfamily import * -from med.medfilter import * - - -def getGroupes(filename,debug=0) : - listeGroupes=[] - maa="" - - dicoNumFam={} - - try : - fid = MEDfileOpen(filename,MED_ACC_RDONLY) - except : - return ("Pb a la lecture du fichier", listeGroupes,maa) - - - # /* Lecture des infos concernant le premier maillage */ - maa, sdim, mdim, type, desc, dtunit, sort, nstep, rep, nomcoo,unicoo = MEDmeshInfo(fid, 1) - if debug : - print "Maillage de nom : |%s| de dimension : %ld , et de type %s\n"%(maa,mdim,type) - print "Maillage de nom : |%s| , de dimension : %ld , et de type %s\n"%(maa,mdim,type) - print "\t -Dimension de l'espace : %ld\n"%(sdim) - print "\t -Description du maillage : %s\n"%(desc) - print "\t -Noms des axes : |%s|\n"%(nomcoo) - print "\t -Unités des axes : |%s|\n"%(unicoo) - print "\t -Type de repère : %s\n"%(rep) - print "\t -Nombre d'étape de calcul : %ld\n"%(nstep) - print "\t -Unité des dates : |%s|\n"%(dtunit) - - # /* Lecture du nombre de familles */ - nfam = MEDnFamily(fid,maa) - if debug : - print "Nombre de familles : %d \n"%(nfam) - - # /* Lecture de chaque famille */ - for i in xrange(0,nfam): - - # /* Lecture du nombre de groupe */ - ngro = MEDnFamilyGroup(fid,maa,i+1) - if debug : - print "Famille %d a %d groupes \n"%(i+1,ngro) - - gro = MEDCHAR(MED_LNAME_SIZE*ngro+1) - - nomfam,numfam,gro = MEDfamilyInfo(fid,maa,i+1,gro) - if debug : - print "Famille de nom %s et de numero %d : \n"%(nomfam,numfam) - print "Attributs : \n" - - for j in xrange(0,ngro): - # print "gro = %s\n"%(gro[j*MED_LNAME_SIZE:j*MED_LNAME_SIZE+MED_LNAME_SIZE]) - groupSplit=gro[j*MED_LNAME_SIZE:j*MED_LNAME_SIZE+MED_LNAME_SIZE] - groupeName="".join(groupSplit).split("\x00")[0] - groupeName=groupeName.replace(' ','') - if groupeName[0:7]=="CENTRE_" : dicoNumFam[groupeName]=numfam - if groupeName not in listeGroupes : listeGroupes.append(groupeName) - - - #print dicoNumFam - #print listeGroupes - - # /* Lecture des Numeros de Familles */ - - nnoe, chgt, trsf = MEDmeshnEntity(fid,maa,MED_NO_DT,MED_NO_IT, MED_NODE,MED_NONE,MED_COORDINATE,MED_NO_CMODE) - nufano = MEDINT(nnoe) - MEDmeshEntityFamilyNumberRd(fid,maa, MED_NO_DT, MED_NO_IT, MED_NODE,MED_NONE,nufano) - dicoNumNode={} - for groupe in dicoNumFam.keys(): - famille=dicoNumFam[groupe] - i=0 - while i < nufano.size(): - if nufano[i]==famille : - dicoNumNode[groupe]=i+1 - break - i=i+1 - - - #print dicoNumNode - dicoCoord={} - for groupe in dicoNumNode.keys() : - flt=MEDINT(1) - flt[0]=dicoNumNode[groupe] - coo1=MEDFLOAT(3) - filter=med_filter() - err=MEDfilterEntityCr( fid, nnoe, 1, sdim, MED_ALL_CONSTITUENT, MED_FULL_INTERLACE, MED_COMPACT_PFLMODE, MED_NO_PROFILE,1 , flt, filter) - MEDmeshNodeCoordinateAdvancedRd(fid, maa, MED_NO_DT, MED_NO_IT, filter, coo1) - MEDfilterClose(filter) - dicoCoord[groupe]=coo1 -# dicoCoord['CENTRE_saxBas']=(0,0,28.5e-3) -# dicoCoord['CENTRE_saxHaut']=(0,0,31.5e-3) - - MEDfileClose(fid) - return ("",listeGroupes,maa,dicoCoord) - -if __name__ == "__main__": - filename="/home/A96028/Carmel/Pascale/Domaine_Bidouille.med" - #filename="/home/A96028/Carmel/nouveauMed/Domaine.med" - print getGroupes(filename) diff --git a/OldCodes/CarmelCND/configuration_CARMELCND.py b/OldCodes/CarmelCND/configuration_CARMELCND.py deleted file mode 100644 index 9a068500..00000000 --- a/OldCodes/CarmelCND/configuration_CARMELCND.py +++ /dev/null @@ -1,43 +0,0 @@ -# -*- coding: utf-8 -*- -# maConfiguration MANAGEMENT OF EDF VERSION -# ====================================================================== -# COPYRIGHT (C) 1991 - 2002 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# -# -# ====================================================================== -""" - Ce module sert pour charger les paramètres de configuration d'EFICAS -""" -# Modules Python -from InterfaceQT4 import configuration -import os - - -class CONFIG(configuration.configBase): - - #----------------------------------- - def __init__(self,appli,repIni): - #----------------------------------- - - self.labels_user=['catalogues','lang'] - self.labels_eficas=['lang','rep_cata','catalogues'] - - configuration.configBase.__init__(self,appli,'.Eficas_monCode') - - -def make_config(appli,rep): - return CONFIG(appli,rep) - diff --git a/OldCodes/CarmelCND/prefs.py b/OldCodes/CarmelCND/prefs.py deleted file mode 100644 index cfd8503b..00000000 --- a/OldCodes/CarmelCND/prefs.py +++ /dev/null @@ -1,22 +0,0 @@ -# Copyright (C) 2007-2012 EDF R&D -# -# 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 -# -code="CARMELCND" -import sys, os -if os.path.dirname(os.path.abspath(__file__)) not in sys.path : - sys.path.insert(0,os.path.dirname(os.path.abspath(__file__))) diff --git a/OldCodes/CarmelCND/prefs_CARMELCND.py b/OldCodes/CarmelCND/prefs_CARMELCND.py deleted file mode 100644 index 8c057bf6..00000000 --- a/OldCodes/CarmelCND/prefs_CARMELCND.py +++ /dev/null @@ -1,43 +0,0 @@ -# -*- coding: utf-8 -*- -# maConfiguration MANAGEMENT OF EDF VERSION -# ====================================================================== -# COPYRIGHT (C) 1991 - 2002 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# -# -# ====================================================================== - -import os,sys -# repIni sert a localiser le fichier editeur.ini -# Obligatoire -repIni=os.path.dirname(os.path.abspath(__file__)) -INSTALLDIR=os.path.join(repIni,'..') -sys.path[:0]=[INSTALLDIR] -sys.path[:0]=[repIni] - - -# lang indique la langue utilisee pour les chaines d'aide : fr ou ang -lang='fr' - -# Codage des strings qui accepte les accents (en remplacement de 'ascii') -encoding='iso-8859-1' -docPath=repIni -fileName="docMonCode.png" -image=1 - -# -catalogues=( - ('monCode','default',os.path.join(repIni,'CarmelCND_Cata.py'),'CARMELCND','python'), -) diff --git a/OldCodes/CarmelCND/qtEficas_CarmelCND.py b/OldCodes/CarmelCND/qtEficas_CarmelCND.py deleted file mode 100755 index de3797de..00000000 --- a/OldCodes/CarmelCND/qtEficas_CarmelCND.py +++ /dev/null @@ -1,32 +0,0 @@ -#!/usr/bin/env python -# -*- coding: utf-8 -*- -# Copyright (C) 2007-2012 EDF R&D -# -# 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 -# -""" - Ce module sert a lancer EFICAS configure pour Code_Aster -""" -# Modules Python -# Modules Eficas - -import sys,os -sys.path.append(os.path.join(os.path.abspath(os.path.dirname(__file__)),'..')) - -import prefs -from InterfaceQT4 import eficas_go -eficas_go.lanceEficas(code=prefs.code) diff --git a/OldCodes/CarmelCS/CMakeLists.txt b/OldCodes/CarmelCS/CMakeLists.txt deleted file mode 100644 index 70486eae..00000000 --- a/OldCodes/CarmelCS/CMakeLists.txt +++ /dev/null @@ -1,31 +0,0 @@ -# -*- coding: utf-8 -*- -# CONFIGURATION MANAGEMENT OF EDF VERSION -# ====================================================================== -# COPYRIGHT (C) 1991 - 2002 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# -# -# ====================================================================== - - -install ( FILES - CarmelCS_cata.py configuration_CARMELCS.py pilotyacsCS.py - prefs_CARMELCS.py prefs.py qtEficas_CarmelCS.py - DESTINATION ${CMAKE_INSTALL_PREFIX}/CarmelCND - ) - -### Local Variables: -### mode: cmake -### End: diff --git a/OldCodes/CarmelCS/CarmelCS_cata.py b/OldCodes/CarmelCS/CarmelCS_cata.py deleted file mode 100644 index 7fe65f74..00000000 --- a/OldCodes/CarmelCS/CarmelCS_cata.py +++ /dev/null @@ -1,25 +0,0 @@ -from Accas import * - - -JdC = JDC_CATA (code = 'CarmelCS', - execmodul = None, - regles=(AU_MOINS_UN('PARAM_CS',),) - ) - -# ====================================================================== -# ====================================================================== - - -PARAM_CS=PROC(nom='PARAM_CS',op=None, - Formulation=SIMP(statut='o',typ='TXM',defaut="tomega",into=('tomega','aphi'),), - Per=SIMP(statut='o',typ='I',min=1), - Ind=SIMP(statut='o',typ='I',min=0), - FinalTime=SIMP(statut='o',typ='I',min=1), - SyrthesProcNumber=SIMP(statut='o',typ='I',defaut=1,min=1), - HomogenousPhysFile=SIMP(statut='o',typ='TXM',defaut="MeshC_homogene.phys",), - HeterogenousPhysFile=SIMP(statut='o',typ='TXM',defaut="MeshC_heterogene.phys",), - Carmel3D_StudyDirectory=SIMP(typ='Repertoire', statut='o'), - Syrthes_StudyDirectory=SIMP(typ='Repertoire', statut='o'), - XMLYacsFile=SIMP(typ=('Fichier','Files (*.xml)'),fr= 'Schema yacs du couplage a executer',ang= 'Yacs coupling schema for running', statut='o'), -#TODO examiner comment generer un schema yacs de maniere automatique -) diff --git a/OldCodes/CarmelCS/configuration_CARMELCS.py b/OldCodes/CarmelCS/configuration_CARMELCS.py deleted file mode 100644 index 9a068500..00000000 --- a/OldCodes/CarmelCS/configuration_CARMELCS.py +++ /dev/null @@ -1,43 +0,0 @@ -# -*- coding: utf-8 -*- -# maConfiguration MANAGEMENT OF EDF VERSION -# ====================================================================== -# COPYRIGHT (C) 1991 - 2002 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# -# -# ====================================================================== -""" - Ce module sert pour charger les paramètres de configuration d'EFICAS -""" -# Modules Python -from InterfaceQT4 import configuration -import os - - -class CONFIG(configuration.configBase): - - #----------------------------------- - def __init__(self,appli,repIni): - #----------------------------------- - - self.labels_user=['catalogues','lang'] - self.labels_eficas=['lang','rep_cata','catalogues'] - - configuration.configBase.__init__(self,appli,'.Eficas_monCode') - - -def make_config(appli,rep): - return CONFIG(appli,rep) - diff --git a/OldCodes/CarmelCS/pilotyacsCS.py b/OldCodes/CarmelCS/pilotyacsCS.py deleted file mode 100644 index 374b2d85..00000000 --- a/OldCodes/CarmelCS/pilotyacsCS.py +++ /dev/null @@ -1,40 +0,0 @@ -def pilotyacsCS(runxmlfile) : - import sys - import pilot - import SALOMERuntime - import loader - SALOMERuntime.RuntimeSALOME_setRuntime() - - xmlLoader = loader.YACSLoader() - - try: - p = xmlLoader.load(runxmlfile) - except IOError,ex: - print "IO exception:",ex - sys.exit(1) - - logger=p.getLogger("parser") - if not logger.isEmpty(): - print "The imported file has errors :" - print logger.getStr() - sys.exit(1) - - if not p.isValid(): - print "The schema is not valid and can not be executed" - print p.getErrorReport() - sys.exit(1) - - info=pilot.LinkInfo(pilot.LinkInfo.ALL_DONT_STOP) - p.checkConsistency(info) - if info.areWarningsOrErrors(): - print "The schema is not consistent and can not be executed" - print info.getGlobalRepr() - sys.exit(1) - executor = pilot.ExecutorSwig() - executor.RunPy(p) - -if __name__ == '__main__' : - - import sys - if sys.argv <> None : - pilotyacsCS(sys.argv[1]) diff --git a/OldCodes/CarmelCS/prefs.py b/OldCodes/CarmelCS/prefs.py deleted file mode 100644 index 2692b028..00000000 --- a/OldCodes/CarmelCS/prefs.py +++ /dev/null @@ -1,22 +0,0 @@ -# Copyright (C) 2007-2012 EDF R&D -# -# 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 -# -code="CARMELCS" -import sys, os -if os.path.dirname(os.path.abspath(__file__)) not in sys.path : - sys.path.insert(0,os.path.dirname(os.path.abspath(__file__))) diff --git a/OldCodes/CarmelCS/prefs_CARMELCS.py b/OldCodes/CarmelCS/prefs_CARMELCS.py deleted file mode 100644 index b4c6c632..00000000 --- a/OldCodes/CarmelCS/prefs_CARMELCS.py +++ /dev/null @@ -1,45 +0,0 @@ -# -*- coding: utf-8 -*- -# maConfiguration MANAGEMENT OF EDF VERSION -# ====================================================================== -# COPYRIGHT (C) 1991 - 2002 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# -# -# ====================================================================== - -import os,sys -# repIni sert a localiser le fichier editeur.ini -# Obligatoire -repIni=os.path.dirname(os.path.abspath(__file__)) -INSTALLDIR=os.path.join(repIni,'..') -sys.path[:0]=[INSTALLDIR] - - -# lang indique la langue utilisee pour les chaines d'aide : fr ou ang -lang='fr' - -# Codage des strings qui accepte les accents (en remplacement de 'ascii') -encoding='iso-8859-1' -docPath=repIni -fileName="docMonCode.png" -image=1 - -# -catalogues=( - ('carmelCS','default',os.path.join(repIni,'CarmelCS_cata.py'),'CARMELCS','python'), -) -#catalogues=( -# ('carmelCS','default',os.path.join(repIni,'CarmelCS_cata.py'),'dico','python'), -#) diff --git a/OldCodes/CarmelCS/qtEficas_CarmelCS.py b/OldCodes/CarmelCS/qtEficas_CarmelCS.py deleted file mode 100755 index 7bbb62b3..00000000 --- a/OldCodes/CarmelCS/qtEficas_CarmelCS.py +++ /dev/null @@ -1,33 +0,0 @@ -#!/usr/bin/env python -# -*- coding: utf-8 -*- -# Copyright (C) 2007-2012 EDF R&D -# -# 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 -# -""" - Ce module sert a lancer EFICAS configure pour Code_Aster -""" -# Modules Python -# Modules Eficas - -import sys,os -sys.path.append(os.path.join(os.path.abspath(os.path.dirname(__file__)),'..')) - -from PyQt4.QtCore import * -import prefs -from InterfaceQT4 import eficas_go -eficas_go.lanceEficas(code=prefs.code) diff --git a/OldCodes/Openturns_Study/CMakeLists.txt b/OldCodes/Openturns_Study/CMakeLists.txt deleted file mode 100644 index 4c0c9ab9..00000000 --- a/OldCodes/Openturns_Study/CMakeLists.txt +++ /dev/null @@ -1,37 +0,0 @@ -# -*- coding: utf-8 -*- -# CONFIGURATION MANAGEMENT OF EDF VERSION -# ====================================================================== -# COPYRIGHT (C) 1991 - 2002 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# -# -# ====================================================================== - -# Question : Que faire des fichiers sdistOTqt.py et style.py - -install ( FILES qtEficas_openturns_study.py - ${CMAKE_CURRENT_SOURCE_DIR}/prefs_OPENTURNS_STUDY.py - prefs.py - configuration_OPENTURNS_STUDY.py - opsOT.py - #catalogues_openturns.ini - OpenTURNS_Cata_Study_V8.py - DESTINATION ${CMAKE_INSTALL_PREFIX}/Openturns_Study - ) - - -### Local Variables: -### mode: cmake -### End: diff --git a/OldCodes/Openturns_Study/OpenTURNS_Cata_Study_V1.py b/OldCodes/Openturns_Study/OpenTURNS_Cata_Study_V1.py deleted file mode 100644 index 2ce3bf41..00000000 --- a/OldCodes/Openturns_Study/OpenTURNS_Cata_Study_V1.py +++ /dev/null @@ -1,1436 +0,0 @@ -# -*- coding: utf-8 -*- - -# -------------------------------------------------- -# debut entete -# -------------------------------------------------- - -import Accas -from Accas import * - -class loi ( ASSD ) : pass -class variable ( ASSD ) : pass - - -#CONTEXT.debug = 1 -JdC = JDC_CATA ( code = 'OPENTURNS_STUDY', - execmodul = None, - regles = ( AU_MOINS_UN ( 'CRITERIA' ), ), - ) # Fin JDC_CATA - -# -------------------------------------------------- -# fin entete -# -------------------------------------------------- - - - - - - -#================================ -# 1. Definition des LOIS -#================================ - -# Nota : les variables de type OPER doivent etre en majuscules ! -# Nota : les variables de type OPER doivent etre de premier niveau (pas imbriquees dans un autre type) -DISTRIBUTION = OPER ( nom = "DISTRIBUTION", - sd_prod = loi, - op = 68, - fr = "Definitions des lois marginales utilisees par les variables d'entree", - - -#==== -# Type de distribution -#==== - - Kind = SIMP ( statut = "o", typ = "TXM", - into = ( "Beta", - "Exponential", - "Gamma", - "Geometric", - "Gumbel", - "Histogram", - "Logistic", - "LogNormal", - "MultiNomial", - "Normal", - "TruncatedNormal", - "Poisson", - "Student", - "Triangular", - "Uniform", - "UserDefined", - "Weibull", - ), - fr = "Choix du type de la loi marginale", - ang = "1D marginal distribution", - ), - -#==== -# Definition des parametres selon le type de la loi -#==== - - BETA = BLOC ( condition = " Kind in ( 'Beta', ) ", - - Settings = SIMP ( statut = "o", - typ = "TXM", - max = 1, - into = ( "RT", "MuSigma" ), - defaut = "RT", - fr = "Parametrage de la loi beta", - ang = "Beta distribution parameter set", - ), - - RT_Parameters = BLOC ( condition = " Settings in ( 'RT', ) ", - - R = SIMP ( statut = "o", - typ = "R", - max = 1, - val_min = 0., - fr = "Parametre R de la loi", - ang = "R parameter", - ), - - # T > R - T = SIMP ( statut = "o", - typ = "R", - max = 1, - val_min = 0., - fr = "Parametre T de la loi | T > R", - ang = "T parameter | T > R", - ), - - ), # Fin BLOC RT_Parameters - - - MuSigma_Parameters = BLOC ( condition = " Settings in ( 'MuSigma', ) ", - - Mu = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Parametre Mu de la loi", - ang = "Mu parameter", - ), - - Sigma = SIMP ( statut = "o", - typ = "R", - max = 1, - val_min = 0., - fr = "Parametre Sigma de la loi | Sigma > 0", - ang = "Sigma parameter | Sigma > 0", - ), - - ), # Fin BLOC MuSigma_Parameters - - - A = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Parametre A de la loi", - ang = "A parameter", - ), - - # B > A - B = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Parametre B de la loi | B > A", - ang = "B parameter | B > A", - ), - - ), # Fin BLOC BETA - - - - EXPONENTIAL = BLOC ( condition = " Kind in ( 'Exponential', ) ", - - Lambda = SIMP ( statut = "o", - typ = "R", - max = 1, - val_min = 0., - fr = "Parametre Lambda | Lambda > 0", - ang = "Lambda parameter | Lambda > 0", - ), - - Gamma = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Parametre Gamma", - ang = "Gamma parameter", - ), - - ), # Fin BLOC EXPONENTIAL - - - - GAMMA = BLOC ( condition = " Kind in ( 'Gamma', ) ", - - Settings = SIMP ( statut = "o", - typ = "TXM", - max = 1, - into = ( "KLambda", "MuSigma" ), - defaut = "KLambda", - fr = "Parametrage de la loi gamma", - ang = "Gamma distribution parameter set", - ), - - KLambda_Parameters = BLOC ( condition = " Settings in ( 'KLambda', ) ", - - K = SIMP ( statut = "o", - typ = "R", - max = 1, - val_min = 0., - fr = "Parametre K de la loi | K > 0", - ang = "K parameter | K > 0", - ), - - Lambda = SIMP ( statut = "o", - typ = "R", - max = 1, - val_min = 0., - fr = "Parametre Lambda de la loi | Lambda > 0", - ang = "Lambda parameter | Lambda > 0", - ), - - ), # Fin BLOC KLambda_Parameters - - - MuSigma_Parameters = BLOC ( condition = " Settings in ( 'MuSigma', ) ", - - Mu = SIMP ( statut = "o", - typ = "R", - max = 1, - defaut = 0.0, - fr = "Parametre Mu de la loi", - ang = "Mu parameter", - ), - - Sigma = SIMP ( statut = "o", - typ = "R", - max = 1, - defaut = 1.0, - val_min = 0., - fr = "Parametre Sigma de la loi | Sigma > 0", - ang = "Sigma parameter | Sigma > 0", - ), - - ), # Fin BLOC MuSigma_Parameters - - Gamma = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Parametre Gamma", - ang = "Gamma parameter", - ), - - - ), # Fin BLOC GAMMA - - - - GEOMETRIC = BLOC ( condition = " Kind in ( 'Geometric', ) ", - - P = SIMP ( statut = "o", - typ = "R", - max = 1, - val_min = 0., - val_max = 1., - fr = "Parametre P | 0 < P < 1", - ang = "P parameter | 0 < P < 1", - ), - - ), # Fin BLOC GEOMETRIC - - - - GUMBEL = BLOC ( condition = " Kind in ( 'Gumbel', ) ", - - Settings = SIMP ( statut = "o", - typ = "TXM", - max = 1, - into = ( "AlphaBeta", "MuSigma" ), - defaut = "AlphaBeta", - fr = "Parametrage de la loi gumbel", - ang = "Gumbel distribution parameter set", - ), - - AlphaBeta_Parameters = BLOC ( condition = " Settings in ( 'AlphaBeta', ) ", - - Alpha = SIMP ( statut = "o", - typ = "R", - max = 1, - val_min = 0., - fr = "Parametre Alpha de la loi | Alpha > 0", - ang = "Alpha parameter | Alpha > 0", - ), - - Beta = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Parametre Beta de la loi", - ang = "Beta parameter", - ), - - ), # Fin BLOC AlphaBeta_Parameters - - - MuSigma_Parameters = BLOC ( condition = " Settings in ( 'MuSigma', ) ", - - Mu = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Parametre Mu de la loi", - ang = "Mu parameter", - ), - - Sigma = SIMP ( statut = "o", - typ = "R", - max = 1, - val_min = 0., - fr = "Parametre Sigma de la loi | Sigma > 0", - ang = "Sigma parameter | Sigma > 0", - ), - - ), # Fin BLOC MuSigma_Parameters - - ), # Fin BLOC GUMBEL - - - - HISTOGRAM = BLOC ( condition = " Kind in ( 'Histogram', ) ", - - Sup = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Borne superieure de la distribution", - ang = "Upper bound", - ), - - # Il faut definir une collection de couples ( x,p ) - Values = SIMP ( statut = 'o', - typ = 'R', - max = '**', - ), - - ), # Fin BLOC HISTOGRAM - - - - LOGNORMAL = BLOC ( condition = " Kind in ( 'LogNormal', ) ", - - Settings = SIMP ( statut = "o", - typ = "TXM", - max = 1, - into = ( "MuSigmaLog", "MuSigma", "MuSigmaOverMu" ), - defaut = "MuSigmaLog", - fr = "Parametrage de la loi lognormale", - ang = "Lognormal distribution parameter set", - ), - - MuSigma_Parameters = BLOC ( condition = " Settings in ( 'MuSigma', ) ", - - Mu = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Parametre Mu de la loi | Mu > Gamma", - ang = "Mu parameter | Mu > Gamma", - ), - - Sigma = SIMP ( statut = "o", - typ = "R", - max = 1, - val_min = 0., - fr = "Parametre Sigma de la loi | Sigma > 0", - ang = "Sigma parameter | Sigma > 0", - ), - - ), # Fin BLOC MuSigma_Parameters - - MuSigmaOverMu_Parameters = BLOC ( condition = " Settings in ( 'MuSigmaOverMu', ) ", - - Mu = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Parametre Mu de la loi | Mu > Gamma", - ang = "Mu parameter | Mu > Gamma", - ), - - SigmaOverMu = SIMP ( statut = "o", - typ = "R", - max = 1, - val_min = 0., - fr = "Parametre SigmaOverMu de la loi | SigmaOverMu > 0", - ang = "SigmaOverMu parameter | SigmaOverMu > 0", - ), - - ), # Fin BLOC MuSigmaOverMu_Parameters - - MuSigmaLog_Parameters = BLOC ( condition = " Settings in ( 'MuSigmaLog', ) ", - - MuLog = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Parametre Mu log de la loi", - ang = "Mu log parameter", - ), - - SigmaLog = SIMP ( statut = "o", - typ = "R", - max = 1, - val_min = 0., - fr = "Parametre Sigma log de la loi | SigmaLog > 0", - ang = "Sigma log parameter | SigmaLog > 0", - ), - - ), # Fin BLOC MuSigmaLog_Parameters - - Gamma = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Parametre Gamma", - ang = "Gamma parameter", - ), - - ), # Fin BLOC LOGNORMAL - - - - LOGISTIC = BLOC ( condition = " Kind in ( 'Logistic', ) ", - - Alpha = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Parametre Alpha de la loi", - ang = "Alpha parameter", - ), - - Beta = SIMP ( statut = "o", - typ = "R", - max = 1, - val_min = 0., - fr = "Parametre Beta de la loi | Beta > = 0", - ang = "Beta parameter | Beta > = 0", - ), - - ), # Fin BLOC LOGISTIC - - - - MULTINOMIAL = BLOC ( condition = " Kind in ( 'MultiNomial', ) ", - - N = SIMP ( statut = "o", - typ = "I", - max = 1, - fr = "Dimension de la loi", - ang = "Distribution dimension", - ), - - # Il faut un vecteur P de taille N - Values = SIMP ( statut = 'o', - typ = 'R', - max = '**', - ), - - ), # Fin BLOC MULTINOMIAL - - - - NORMAL = BLOC ( condition = " Kind in ( 'Normal', ) ", - - Mu = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Parametre Mu de la loi", - ang = "Mu parameter", - ), - - Sigma = SIMP ( statut = "o", - typ = "R", - max = 1, - val_min = 0., - fr = "Parametre Sigma de la loi | Sigma > 0", - ang = "Sigma parameter | Sigma > 0", - ), - - ), # Fin BLOC NORMAL - - - - POISSON = BLOC ( condition = " Kind in ( 'Poisson', ) ", - - Lambda = SIMP ( statut = "o", - typ = "R", - max = 1, - val_min = 0., - fr = "Parametre Lambda de la loi | Lambda > 0", - ang = "Lambda parameter | Lambda > 0", - ), - - ), # Fin BLOC POISSON - - - - STUDENT = BLOC ( condition = " Kind in ( 'Student', ) ", - - Mu = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Parametre Mu de la loi", - ang = "Mu parameter", - ), - - Nu = SIMP ( statut = "o", - typ = "R", - max = 1, - val_min = 2., - fr = "Parametre Nu de la loi | V > = 2", - ang = "Nu parameter | V > = 2", - ), - - ), # Fin BLOC STUDENT - - - - TRIANGULAR = BLOC ( condition = " Kind in ( 'Triangular', ) ", - - A = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Borne inferieure de la loi | A < = M < = B", - ang = "Lower bound | A < = M < = B", - ), - - M = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Mode de la loi | A < = M < = B", - ang = "Mode | A < = M < = B", - ), - - B = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Borne superieure de la loi | A < = M < = B", - ang = "Upper bound | A < = M < = B", - ), - - ), # Fin BLOC TRIANGULAR - - - - TRUNCATEDNORMAL = BLOC ( condition = " Kind in ( 'TruncatedNormal', ) ", - - MuN = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Parametre Mu de la loi", - ang = "Mu parameter", - ), - - SigmaN = SIMP ( statut = "o", - typ = "R", - max = 1, - val_min = 0., - fr = "Parametre SigmaN de la loi | SigmaN > 0", - ang = "SigmaN parameter | SigmaN> 0", - ), - - A = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Borne inferieure de la loi | A < = B", - ang = "Lower bound | A < = B", - ), - - B = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Borne superieure de la loi | A < = B", - ang = "Upper bound | A < = B", - ), - - ), # Fin BLOC TRUNCATEDNORMAL - - - - UNIFORM = BLOC ( condition = " Kind in ( 'Uniform', ) ", - - A = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Borne inferieure de la loi | A < = B", - ang = "Lower bound | A < = B", - ), - - B = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Borne superieure de la loi | A < = B", - ang = "Upper bound | A < = B", - ), - - ), # Fin BLOC UNIFORM - - - - USERDEFINED = BLOC ( condition = " Kind in ( 'UserDefined', ) ", - - # Il faut definir une collection de couples ( x,p ) - Values = SIMP ( statut = 'o', - typ = 'R', - max = '**', - ), - - ), # Fin BLOC USERDEFINED - - - - WEIBULL = BLOC ( condition = " Kind in ( 'Weibull', ) ", - - Settings = SIMP ( statut = "o", - typ = "TXM", - max = 1, - into = ( "AlphaBeta", "MuSigma" ), - defaut = "AlphaBeta", - fr = "Parametrage de la loi weibull", - ang = "Weibull distribution parameter set", - ), - - AlphaBeta_Parameters = BLOC ( condition = " Settings in ( 'AlphaBeta', ) ", - - Alpha = SIMP ( statut = "o", - typ = "R", - max = 1, - val_min = 0., - fr = "Parametre Alpha de la loi | Alpha > 0", - ang = "Alpha parameter | Alpha > 0", - ), - - Beta = SIMP ( statut = "o", - typ = "R", - max = 1, - val_min = 0., - fr = "Parametre Beta de la loi | Beta > 0", - ang = "Beta parameter | Beta > 0", - ), - - ), # Fin BLOC AlphaBeta_Parameters - - - MuSigma_Parameters = BLOC ( condition = " Settings in ( 'MuSigma', ) ", - - Mu = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Parametre Mu de la loi", - ang = "Mu parameter", - ), - - Sigma = SIMP ( statut = "o", - typ = "R", - max = 1, - val_min = 0., - fr = "Parametre Sigma de la loi | Sigma > 0", - ang = "Sigma parameter | Sigma > 0", - ), - - ), # Fin BLOC MuSigma_Parameters - - Gamma = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Parametre Gamma", - ang = "Gamma parameter", - ), - - ), # Fin BLOC WEIBULL - -) # Fin OPER DISTRIBUTION - - - - - - -#================================ -# 3. Definition de l'etude -#================================ - -# Nota : les variables de type PROC doivent etre en majuscules ! -CRITERIA = PROC ( nom = "CRITERIA", - op = None, - docu = "", - fr = "Mise en donnee pour le fichier de configuration de OPENTURNS.", - ang = "Writes the configuration file for OPENTURNS.", - - - - Type = SIMP ( statut = "o", - typ = "TXM", - into = ( "Min/Max", "Central Uncertainty", "Threshold Exceedence" ), - fr = "Type d'Analyse", - ang = "Analysis", - ), - - - - - MinMax = BLOC ( condition = " Type in ( 'Min/Max', ) ", - - Method = SIMP ( statut = "o", - typ = "TXM", - into = ( "Experiment Plane", "Random Sampling" ), - fr = "Methode", - ang = "Method", - ), - # UC 3.1.1 - ExperimentPlaneSettings = BLOC ( condition = " Method in ( 'Experiment Plane', ) ", - - ExperimentPlane = SIMP ( statut = "o", - typ = "TXM", - into = ( "Axial", "Factorial", "Composite", ), - fr = "Methode", - ang = "Method", - ), - - Levels = SIMP ( statut = "o", - typ = "R", - val_min = 0.0, - max = '**', - fr = "Nombre de niveaux dans chaque direction", - ang = "Levels in each direction", - ), - - # Scaled Vector - UnitsPerDimension = SIMP ( statut = "o", - typ = "R", - max = '**', - fr = "Unite par dimension (autant que de variables declarees)", - ang = "Units per dimension (as much as declared variables)", - ), - - # Translation Vector - Center = SIMP ( statut = "o", - typ = "R", - max = '**', - fr = "Unite par dimension", - ang = "Units per dimension", - ), - - ), # Fin BLOC ExperimentPlaneSettings - - - - RandomSamplingSettings = BLOC ( condition = " Method in ( 'Random Sampling', ) ", - - PointsNumber = SIMP ( statut = "o", - typ = "I", - val_min = 1, - fr = "Nombre de points", - ang = "Points number", - ), - - ), # Fin BLOC RandomSamplingSettings - - Result = SIMP ( statut = "o", - typ = "TXM", - into = ( "Min/Max", ), - defaut = "Min/Max", - fr = "Le minimum et le maximum", - ang = "The min and max values", - ), - - - ), # Fin BLOC MinMax - - - - - CentralUncertainty = BLOC ( condition = " Type in ( 'Central Uncertainty', ) ", - - Method = SIMP ( statut = "o", - typ = "TXM", - into = ( "Taylor Variance Decomposition", "Random Sampling" ), - fr = "Methode", - ang = "Method", - ), - - # UC 3.2. - TaylorVarianceDecompositionSettings = BLOC ( condition = " Method in ( 'Taylor Variance Decomposition', ) ", - - Result = FACT ( statut = "o", - min = 1, - max = "**", - - MeanFirstOrder = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'yes', - max = 1, - fr = "Moyenne au premier ordre", - ang = "MeanFirstOrder", - ), - - StandardDeviationFirstOrder = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'yes', - max = 1, - fr = "Ecart-type au premier ordre", - ang = "StandardDeviationFirstOrder", - ), - - MeanSecondOrder = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'yes', - max = 1, - fr = "Moyenne au second ordre", - ang = "MeanSecondOrder", - ), - - ImportanceFactor = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'no', - max = 1, - fr = "Facteur d'importance pour variable de sortie scalaire", - ang = "ImportanceFactor", - ), - - ImportanceFactorSettings = BLOC ( condition = " ImportanceFactor in ( 'yes', ) ", - - NumericalResults = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'yes', - max = 1, - fr = "Resultats numeriques", - ang = "NumericalResults", - ), - - GraphicalResults = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'no', - max = 1, - fr = "Resultats graphiques", - ang = "GraphicalResults", - ), - - ), # Fin BLOC ImportanceFactorSettings - - ), # Fin FACT Result - - ), # Fin BLOC TaylorVarianceDecompositionSettings - - - - RandomSamplingSettings = BLOC ( condition = " Method in ( 'Random Sampling', ) ", - - PointsNumber = SIMP ( statut = "o", - typ = "I", - val_min = 1, - fr = "Nombre de points", - ang = "Points number", - ), - - Result = FACT ( statut = "o", - min = 1, - max = "**", - - EmpiricalMean = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'yes', - max = 1, - fr = "Moyenne empirique", - ang = "Empirical mean", - ), - - EmpiricalStandardDeviation = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'yes', - max = 1, - fr = "Ecart-type empirique", - ang = "Empirical standard deviation", - ), - - EmpiricalQuantile = SIMP ( statut = "o", - typ = 'R', - defaut = 0.0, - max = 1, - val_min = 0.0, - val_max = 1.0, - fr = "Quantile empirique", - ang = "Empirical quantile", - ), - - AnalysedCorrelations = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'no', - max = 1, - fr = "Correlations analysees", - ang = "Analysed correlations", - ), - - KernelSmoothing = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'no', - max = 1, - fr = "Kernel smoothing de l'echantillon", - ang = "Kernel smoothing of the sample", - ), - - ), # Fin FACT Result - - ), # Fin BLOC RandomSamplingSettings - - ), # Fin BLOC CentralUncertainty - - - - - ThresholdExceedence = BLOC ( condition = " Type in ( 'Threshold Exceedence', ) ", - - Event = FACT ( statut = "o", - min = 1, - max = 1, - - Threshold = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Le seuil de defaillance", - ang = "Failure threshold", - ), - - ComparisonOperator = SIMP ( statut = "o", - typ = "TXM", - max = 1, - into = ( "Less", "LessOrEqual", "Equal", "GreaterOrEqual", "Greater" ), - fr = "Que faut-il ne pas depasser : un maximum ou un minimum", - ang = "What is the failure threshold : maximum or minimum", - ), - ), # Fin FACT Event - - - Method = SIMP ( statut = "o", - typ = "TXM", - into = ( "Simulation", "Analytical" ), - fr = "Methode", - ang = "Method", - ), - - SimulationSettings = BLOC ( condition = " Method in ( 'Simulation', ) ", - - Algorithm = SIMP ( statut = "o", - typ = "TXM", - into = ( "MonteCarlo", "LHS", "ImportanceSampling" ), - fr = "Algorithme de simulation", - ang = "Simulation algorithm", - ), - - - RandomGenerator = FACT ( statut = "o", - min = 1, - max = 1, - - SeedToBeSet = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'no', - max = 1, - fr = "La racine du generateur aleatoire doit-elle etre positionnee ?", - ang = "Does the random generator seed need to be set ?", - ), - - SeedSettings = BLOC ( condition = " SeedToBeSet in ( 'yes', ) ", - - RandomGeneratorSeed = SIMP ( statut = "o", - typ = "I", - max = 1, - fr = "Racine du generateur aleatoire", - ang = "Random generator seed", - ), - - ), # Fin BLOC SeedSettings - - ), # Fin FACT RandomGenerator - - - BlockSize = SIMP ( statut = "f", - typ = "I", - max = 1, - val_min = 1, - defaut = 1, - fr = "Nombre de calculs realises en bloc", - ang = "Number of computations as a block", - ), - - MaximumOuterSampling = SIMP ( statut = "o", - typ = "I", - max = 1, - val_min = 1, - fr = "Maximum d'iterations externes", - ang = "Maximum outer Sampling value", - ), - - MaximumCoefficientOfVariation = SIMP ( statut = "f", - typ = "R", - max = 1, - defaut = 0.1, - val_min = 0.0, - fr = " maximum ...", - ang = "Absolute maximum ...." - ), - - ImportanceSamplingSettings = BLOC ( condition = " Algorithm in ( 'ImportanceSampling', ) ", - - MeanVector = SIMP ( statut = "o", - typ = "R", - max = "**", - fr = "Moyenne", - ang = "Mean vector", - ), - - Correlation = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'Independent', 'Linear' ), - defaut = 'Linear', - max = 1, - fr = "Le type de correlation entre les variables", - ang = "Correlation between variables", - ), - - ), # Fin BLOC ImportanceSamplingSettings - - Result = FACT ( statut = "o", - min = 1, - max = "**", - - Probability = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', ), - defaut = 'yes', - max = 1, - fr = "Probabiblite", - ang = "Probability", - ), - - ConfidenceInterval = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'yes', - max = 1, - fr = "Ecart-type empirique", - ang = "Empirical standard deviation", - ), - - ConfidenceIntervalSettings = BLOC ( condition = " ConfidenceInterval in ( 'yes', ) ", - - Level = SIMP ( statut = "o", - typ = 'R', - defaut = 0.0, - max = 1, - val_min = 0.0, - val_max = 1.0, - fr = "Niveau de confiance", - ang = "Confidence level", - ), - - ), # Fin BLOC ConfidenceIntervalSettings - - VariationCoefficient = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'yes', - max = 1, - fr = "Coefficient de variation", - ang = "VariationCoefficient", - ), - - IterationNumber = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'yes', - max = 1, - fr = "Nombre d'iterations", - ang = "Iteration number", - ), - - ConvergenceGraph = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'yes', - max = 1, - fr = "Graphe de convergence", - ang = "Convergence graph", - ), - - ), # Fin FACT Result - - - - ), # Fin BLOC SimulationSettings - - - - AnalyticalSettings = BLOC ( condition = " Method in ( 'Analytical', ) ", - - Approximation = SIMP ( statut = "o", - typ = "TXM", - into = ( "FORM", "SORM" ), - fr = "Approximation", - ang = "Approximation", - ), - - OptimizationAlgorithm = SIMP ( statut = "o", - typ = "TXM", - into = ( "Cobyla", "AbdoRackwitz" ), - fr = "Methode d'optimisation", - ang = "Optimisation method", - ), - - - PhysicalStartingPoint = SIMP ( statut = "f", - typ = "R", - max = "**", - fr = "Point de demarrage de l'algorithme iteratif", - ang = "Initial point for iterative process", - ), - - MaximumIterationsNumber = SIMP ( statut = "f", - typ = "I", - max = 1, - val_min = 1, - fr = "Nombre maximum d iterations", - ang = "Maximum number of iterations", - ), - - regles = ( EXCLUS ( "MaximumAbsoluteError", "RelativeAbsoluteError" ), ), - - MaximumAbsoluteError = SIMP ( statut = "f", - typ = "R", - max = 1, - defaut = 1E-6, - val_min = 0.0, - fr = "Distance maximum absolue entre 2 iterations successifs", - ang = "Absolute maximum distance between 2 successive iterates", - ), - - RelativeAbsoluteError = SIMP ( statut = "f", - typ = "R", - max = 1, - defaut = 1E-6, - val_min = 0.0, - fr = "Distance maximum relative entre 2 iterations successives", - ang = "Relative maximum distance between 2 successive iterates", - ), - - MaximumConstraintError = SIMP ( statut = "f", - typ = "R", - max = 1, - val_min = 0.0, - fr = "Valeur maximum absolue de la fonction moins la valeur du niveau", - ang = "Maximum absolute value of the constraint function minus the level value", - ), - - ImportanceSampling = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'no', - max = 1, - fr = "Tirage d'importance au point de conception", - ang = "Importance sampling at design point", - ), - - FORM = BLOC ( condition = " Approximation in ( 'FORM', ) ", - - Probability = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', ), - defaut = 'yes', - max = 1, - fr = "Probabiblite", - ang = "Probability", - ), - - DesignPoint = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'yes', - max = 1, - fr = "Point de conception", - ang = "Design point", - ), - - HasReliabilityIndex = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'yes', - max = 1, - fr = "Indice de fiabilite", - ang = "Reliability index", - ), - - ImportanceFactor = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'no', - max = 1, - fr = "Facteur d'importance pour variable de sortie scalaire", - ang = "ImportanceFactor", - ), - - ImportanceFactorSettings = BLOC ( condition = " ImportanceFactor in ( 'yes', ) ", - - NumericalResults = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'yes', - max = 1, - fr = "Resultats numeriques", - ang = "NumericalResults", - ), - - GraphicalResults = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'no', - max = 1, - fr = "Resultats graphiques", - ang = "GraphicalResults", - ), - - ), # Fin BLOC ImportanceFactorSettings - - - SensitivityAnalysis = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'no', - max = 1, - fr = "Analyse de sensibilite", - ang = "Sensitivity analysis", - ), - - SensitivityAnalysisSettings = BLOC ( condition = " SensitivityAnalysis in ( 'yes', ) ", - - HasoferReliabilityIndex = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'no', - max = 1, - fr = "Indice de fiabilite de Hasofer", - ang = "Hasofer reliability index", - ), - - HasoferReliabilityIndexSettings = BLOC ( condition = " HasoferReliabilityIndex in ( 'yes', ) ", - - NumericalResults = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'yes', - max = 1, - fr = "Resultats numeriques", - ang = "NumericalResults", - ), - - GraphicalResults = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'no', - max = 1, - fr = "Resultats graphiques", - ang = "GraphicalResults", - ), - - ), # Fin BLOC HasoferReliabilityIndexSettings - - ), # Fin BLOC SensitivityAnalysisSettings - - FunctionCallsNumber = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'no', - max = 1, - fr = "Nombre d'appels a la fonction", - ang = "Function calls number", - ), - - - ), # Fin BLOC FORM - - - SORM = BLOC ( condition = " Approximation in ( 'SORM', ) ", - - - TvedtApproximation = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'no', - max = 1, - fr = "Approximation de Tvedt", - ang = "Tvedt approximation", - ), - - HohenBichlerApproximation = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'no', - max = 1, - fr = "Approximation de HohenBichler", - ang = "HohenBichler approximation", - ), - - BreitungApproximation = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'no', - max = 1, - fr = "Approximation de Breitung", - ang = "Breitung approximation", - ), - - DesignPoint = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'yes', - max = 1, - fr = "Point de conception", - ang = "Design point", - ), - - ImportanceFactor = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'no', - max = 1, - fr = "Facteur d'importance pour variable de sortie scalaire", - ang = "ImportanceFactor", - ), - - ImportanceFactorSettings = BLOC ( condition = " ImportanceFactor in ( 'yes', ) ", - - NumericalResults = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'yes', - max = 1, - fr = "Resultats numeriques", - ang = "NumericalResults", - ), - - GraphicalResults = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'no', - max = 1, - fr = "Resultats graphiques", - ang = "GraphicalResults", - ), - - ), # Fin BLOC ImportanceFactorSettings - - - SensitivityAnalysis = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'no', - max = 1, - fr = "Analyse de sensibilite", - ang = "Sensitivity analysis", - ), - - SensitivityAnalysisSettings = BLOC ( condition = " SensitivityAnalysis in ( 'yes', ) ", - - HasoferReliabilityIndex = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'no', - max = 1, - fr = "Indice de fiabilite de Hasofer", - ang = "Hasofer reliability index", - ), - - HasoferReliabilityIndexSettings = BLOC ( condition = " HasoferReliabilityIndex in ( 'yes', ) ", - - NumericalResults = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'yes', - max = 1, - fr = "Resultats numeriques", - ang = "NumericalResults", - ), - - GraphicalResults = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'no', - max = 1, - fr = "Resultats graphiques", - ang = "GraphicalResults", - ), - - ), # Fin BLOC HasoferReliabilityIndexSettings - - ), # Fin BLOC SensitivityAnalysisSettings - - FunctionCallsNumber = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'no', - max = 1, - fr = "Nombre d'appels a la fonction", - ang = "Function calls number", - ), - - - ), # Fin BLOC SORM - - - - ), # Fin BLOC AnalyticalSettings - - - - ), # Fin BLOC ThresholdExceedence - - - -) # Fin PROC CRITERIA - - -#=============================== -# 5. Definition des parametres -#=============================== -VARI = OPER ( nom = "VARI", - sd_prod = variable, - op = None, - fr = "Definitions des lois marginales utilisees par les variables d'entree", - type=SIMP(statut='f',defaut="IN",into=("IN","OUT"), typ = "TXM",) - ) - -AAA=PROC(nom="AAA", - op=None, - fr="Essai", - ang = "Test", - - MALOI = SIMP(statut='o',typ=(loi,),), - MAVARIABLE = SIMP(statut='o',typ=(variable,),), -) ; - - - -import ops -FICXML=MACRO(nom="FICXML", - op=None, - UIinfo={"groupes":("Gestion du travail",)}, - fr="Débranchement vers un fichier de commandes secondaires", - sd_prod=ops.INCLUDE,op_init=ops.INCLUDE_context,fichier_ini=1, - FICHIER = SIMP(statut='o',typ='TXM',), -); - diff --git a/OldCodes/Openturns_Study/OpenTURNS_Cata_Study_V10.py b/OldCodes/Openturns_Study/OpenTURNS_Cata_Study_V10.py deleted file mode 100644 index f53ee908..00000000 --- a/OldCodes/Openturns_Study/OpenTURNS_Cata_Study_V10.py +++ /dev/null @@ -1,60 +0,0 @@ -# -*- coding: utf-8 -*- - -# -------------------------------------------------- -# debut entete -# -------------------------------------------------- - -import Accas -from Accas import * - -class loi ( ASSD ) : pass -class variable ( ASSD ) : pass - - -#CONTEXT.debug = 1 -JdC = JDC_CATA ( code = 'OPENTURNS_STUDY', - execmodul = None, - regles = ( AU_MOINS_UN ( 'CRITERIA' ), ), - ) # Fin JDC_CATA - -# -------------------------------------------------- -# fin entete -# -------------------------------------------------- -#=============================== -# 5. Definition des parametres -#=============================== -VARI = OPER ( nom = "VARI", - sd_prod = variable, - op = None, - fr = "Definitions des lois marginales utilisees par les variables d'entree", - type=SIMP(statut='f',defaut="IN",into=("IN","OUT"), typ = "TXM",) - ) - -VARI1 = OPER ( nom = "VARI1", - sd_prod = variable, - op = None, - fr = "Definitions des lois marginales utilisees par les variables d'entree", - - POUTRE = FACT(statut= 'f',max= '**', - MAILLE = SIMP(statut= 'f',typ= 'TXM' ,validators= NoRepeat(),max= '**'), - GROUP_MA = SIMP(statut= 'f',typ= 'TXM' ,validators= NoRepeat(),max= '**'), - ), - POUTRE2 = FACT(statut= 'f',max= '**', - MAILLE2 = SIMP(statut= 'f',typ= 'TXM' ,validators= NoRepeat(),max= '**'), - GROUP_MA2 = SIMP(statut= 'f',typ= 'TXM' ,validators= NoRepeat(),max= '**'), - ), - FINAL =FACT(statut= 'f',max= '**', - type=SIMP(statut='f',min=1,max= '**', into=("POUTRE","POUTRE2"), - validators=[VerifExiste(2),NoRepeat()], typ="TXM",), - ), - ) - - -FICXML=MACRO(nom="FICXML", - op=None, - UIinfo={"groupes":("Gestion du travail",)}, - fr="Débranchement vers un fichier de commandes secondaires", - sd_prod=loi, - FICHIER = SIMP(statut='o',typ='TXM',), -); - diff --git a/OldCodes/Openturns_Study/OpenTURNS_Cata_Study_V2.py b/OldCodes/Openturns_Study/OpenTURNS_Cata_Study_V2.py deleted file mode 100644 index 58128f14..00000000 --- a/OldCodes/Openturns_Study/OpenTURNS_Cata_Study_V2.py +++ /dev/null @@ -1,1486 +0,0 @@ -# -*- coding: utf-8 -*- - -# -------------------------------------------------- -# debut entete -# -------------------------------------------------- - -import Accas -from Accas import * - -class loi ( ASSD ) : pass - - -#CONTEXT.debug = 1 -JdC = JDC_CATA ( code = 'OPENTURNS_STUDY', - execmodul = None, - regles = ( AU_MOINS_UN ( 'CRITERIA' ), AU_MOINS_UN ( 'MODEL' ), ), - ) # Fin JDC_CATA - -# -------------------------------------------------- -# fin entete -# -------------------------------------------------- - -LOG = PROC ( nom = "LOG", - op = None, - docu = "", - - DebugMessages = SIMP ( statut = "o", - typ = "TXM", - into = ( 'yes', 'no' ), - defaut = 'no', - fr = "Affichage du niveau de debug de la bibliotheque Open TURNS", - ang = "Open TURNS library debug level print", - ), - - WrapperMessages = SIMP ( statut = "o", - typ = "TXM", - into = ( 'yes', 'no' ), - defaut = 'no', - fr = "Affichage du niveau de wrapper de la bibliotheque Open TURNS", - ang = "Open TURNS library debug level print", - ), - - UserMessages = SIMP ( statut = "o", - typ = "TXM", - into = ( 'yes', 'no' ), - defaut = 'no', - fr = "Affichage du niveau de user de la bibliotheque Open TURNS", - ang = "Open TURNS library user level print", - ), - - InfoMessages = SIMP ( statut = "o", - typ = "TXM", - into = ( 'yes', 'no' ), - defaut = 'yes', - fr = "Affichage du niveau de info de la bibliotheque Open TURNS", - ang = "Open TURNS library info level print", - ), - - WarningMessages = SIMP ( statut = "o", - typ = "TXM", - into = ( 'yes', 'no' ), - defaut = 'yes', - fr = "Affichage du niveau de warning de la bibliotheque Open TURNS", - ang = "Open TURNS library warning level print", - ), - - ErrorMessages = SIMP ( statut = "o", - typ = "TXM", - into = ( 'yes', 'no' ), - defaut = 'yes', - fr = "Affichage du niveau de error de la bibliotheque Open TURNS", - ang = "Open TURNS library error level print", - ), - -) # Fin PROC LOG - - - - -#================================ -# 0. Definition du modele physique -#================================ - -MODEL = PROC ( nom = "MODEL", - op = None, - docu = "", - - Name = SIMP ( statut = "o", - typ = "TXM", - fr = "Nom du modele physique", - ang = "Physical model identifier", - ), - -) # Fin PROC MODEL - - - - - - -#================================ -# 1. Definition des LOIS -#================================ - -# Nota : les variables de type OPER doivent etre en majuscules ! -# Nota : les variables de type OPER doivent etre de premier niveau (pas imbriquees dans un autre type) -DISTRIBUTION = OPER ( nom = "DISTRIBUTION", - sd_prod = loi, - op = 68, - fr = "Definitions des lois marginales utilisees par les variables d'entree", - - -#==== -# Type de distribution -#==== - - Kind = SIMP ( statut = "o", typ = "TXM", - into = ( "Beta", - "Exponential", - "Gamma", - "Geometric", - "Gumbel", - "Histogram", - "Logistic", - "LogNormal", - "MultiNomial", - "Normal", - "TruncatedNormal", - "Poisson", - "Student", - "Triangular", - "Uniform", - "UserDefined", - "Weibull", - ), - fr = "Choix du type de la loi marginale", - ang = "1D marginal distribution", - ), - -#==== -# Definition des parametres selon le type de la loi -#==== - - BETA = BLOC ( condition = " Kind in ( 'Beta', ) ", - - Settings = SIMP ( statut = "o", - typ = "TXM", - max = 1, - into = ( "RT", "MuSigma" ), - defaut = "RT", - fr = "Parametrage de la loi beta", - ang = "Beta distribution parameter set", - ), - - RT_Parameters = BLOC ( condition = " Settings in ( 'RT', ) ", - - R = SIMP ( statut = "o", - typ = "R", - max = 1, - val_min = 0., - fr = "Parametre R de la loi", - ang = "R parameter", - ), - - # T > R - T = SIMP ( statut = "o", - typ = "R", - max = 1, - val_min = 0., - fr = "Parametre T de la loi | T > R", - ang = "T parameter | T > R", - ), - - ), # Fin BLOC RT_Parameters - - - MuSigma_Parameters = BLOC ( condition = " Settings in ( 'MuSigma', ) ", - - Mu = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Parametre Mu de la loi", - ang = "Mu parameter", - ), - - Sigma = SIMP ( statut = "o", - typ = "R", - max = 1, - val_min = 0., - fr = "Parametre Sigma de la loi | Sigma > 0", - ang = "Sigma parameter | Sigma > 0", - ), - - ), # Fin BLOC MuSigma_Parameters - - - A = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Parametre A de la loi", - ang = "A parameter", - ), - - # B > A - B = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Parametre B de la loi | B > A", - ang = "B parameter | B > A", - ), - - ), # Fin BLOC BETA - - - - EXPONENTIAL = BLOC ( condition = " Kind in ( 'Exponential', ) ", - - Lambda = SIMP ( statut = "o", - typ = "R", - max = 1, - val_min = 0., - fr = "Parametre Lambda | Lambda > 0", - ang = "Lambda parameter | Lambda > 0", - ), - - Gamma = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Parametre Gamma", - ang = "Gamma parameter", - ), - - ), # Fin BLOC EXPONENTIAL - - - - GAMMA = BLOC ( condition = " Kind in ( 'Gamma', ) ", - - Settings = SIMP ( statut = "o", - typ = "TXM", - max = 1, - into = ( "KLambda", "MuSigma" ), - defaut = "KLambda", - fr = "Parametrage de la loi gamma", - ang = "Gamma distribution parameter set", - ), - - KLambda_Parameters = BLOC ( condition = " Settings in ( 'KLambda', ) ", - - K = SIMP ( statut = "o", - typ = "R", - max = 1, - val_min = 0., - fr = "Parametre K de la loi | K > 0", - ang = "K parameter | K > 0", - ), - - Lambda = SIMP ( statut = "o", - typ = "R", - max = 1, - val_min = 0., - fr = "Parametre Lambda de la loi | Lambda > 0", - ang = "Lambda parameter | Lambda > 0", - ), - - ), # Fin BLOC KLambda_Parameters - - - MuSigma_Parameters = BLOC ( condition = " Settings in ( 'MuSigma', ) ", - - Mu = SIMP ( statut = "o", - typ = "R", - max = 1, - defaut = 0.0, - fr = "Parametre Mu de la loi", - ang = "Mu parameter", - ), - - Sigma = SIMP ( statut = "o", - typ = "R", - max = 1, - defaut = 1.0, - val_min = 0., - fr = "Parametre Sigma de la loi | Sigma > 0", - ang = "Sigma parameter | Sigma > 0", - ), - - ), # Fin BLOC MuSigma_Parameters - - Gamma = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Parametre Gamma", - ang = "Gamma parameter", - ), - - - ), # Fin BLOC GAMMA - - - - GEOMETRIC = BLOC ( condition = " Kind in ( 'Geometric', ) ", - - P = SIMP ( statut = "o", - typ = "R", - max = 1, - val_min = 0., - val_max = 1., - fr = "Parametre P | 0 < P < 1", - ang = "P parameter | 0 < P < 1", - ), - - ), # Fin BLOC GEOMETRIC - - - - GUMBEL = BLOC ( condition = " Kind in ( 'Gumbel', ) ", - - Settings = SIMP ( statut = "o", - typ = "TXM", - max = 1, - into = ( "AlphaBeta", "MuSigma" ), - defaut = "AlphaBeta", - fr = "Parametrage de la loi gumbel", - ang = "Gumbel distribution parameter set", - ), - - AlphaBeta_Parameters = BLOC ( condition = " Settings in ( 'AlphaBeta', ) ", - - Alpha = SIMP ( statut = "o", - typ = "R", - max = 1, - val_min = 0., - fr = "Parametre Alpha de la loi | Alpha > 0", - ang = "Alpha parameter | Alpha > 0", - ), - - Beta = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Parametre Beta de la loi", - ang = "Beta parameter", - ), - - ), # Fin BLOC AlphaBeta_Parameters - - - MuSigma_Parameters = BLOC ( condition = " Settings in ( 'MuSigma', ) ", - - Mu = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Parametre Mu de la loi", - ang = "Mu parameter", - ), - - Sigma = SIMP ( statut = "o", - typ = "R", - max = 1, - val_min = 0., - fr = "Parametre Sigma de la loi | Sigma > 0", - ang = "Sigma parameter | Sigma > 0", - ), - - ), # Fin BLOC MuSigma_Parameters - - ), # Fin BLOC GUMBEL - - - - HISTOGRAM = BLOC ( condition = " Kind in ( 'Histogram', ) ", - - Sup = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Borne superieure de la distribution", - ang = "Upper bound", - ), - - # Il faut definir une collection de couples ( x,p ) - Values = SIMP ( statut = 'o', - typ = 'R', - max = '**', - ), - - ), # Fin BLOC HISTOGRAM - - - - LOGNORMAL = BLOC ( condition = " Kind in ( 'LogNormal', ) ", - - Settings = SIMP ( statut = "o", - typ = "TXM", - max = 1, - into = ( "MuSigmaLog", "MuSigma", "MuSigmaOverMu" ), - defaut = "MuSigmaLog", - fr = "Parametrage de la loi lognormale", - ang = "Lognormal distribution parameter set", - ), - - MuSigma_Parameters = BLOC ( condition = " Settings in ( 'MuSigma', ) ", - - Mu = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Parametre Mu de la loi | Mu > Gamma", - ang = "Mu parameter | Mu > Gamma", - ), - - Sigma = SIMP ( statut = "o", - typ = "R", - max = 1, - val_min = 0., - fr = "Parametre Sigma de la loi | Sigma > 0", - ang = "Sigma parameter | Sigma > 0", - ), - - ), # Fin BLOC MuSigma_Parameters - - MuSigmaOverMu_Parameters = BLOC ( condition = " Settings in ( 'MuSigmaOverMu', ) ", - - Mu = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Parametre Mu de la loi | Mu > Gamma", - ang = "Mu parameter | Mu > Gamma", - ), - - SigmaOverMu = SIMP ( statut = "o", - typ = "R", - max = 1, - val_min = 0., - fr = "Parametre SigmaOverMu de la loi | SigmaOverMu > 0", - ang = "SigmaOverMu parameter | SigmaOverMu > 0", - ), - - ), # Fin BLOC MuSigmaOverMu_Parameters - - MuSigmaLog_Parameters = BLOC ( condition = " Settings in ( 'MuSigmaLog', ) ", - - MuLog = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Parametre Mu log de la loi", - ang = "Mu log parameter", - ), - - SigmaLog = SIMP ( statut = "o", - typ = "R", - max = 1, - val_min = 0., - fr = "Parametre Sigma log de la loi | SigmaLog > 0", - ang = "Sigma log parameter | SigmaLog > 0", - ), - - ), # Fin BLOC MuSigmaLog_Parameters - - Gamma = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Parametre Gamma", - ang = "Gamma parameter", - ), - - ), # Fin BLOC LOGNORMAL - - - - LOGISTIC = BLOC ( condition = " Kind in ( 'Logistic', ) ", - - Alpha = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Parametre Alpha de la loi", - ang = "Alpha parameter", - ), - - Beta = SIMP ( statut = "o", - typ = "R", - max = 1, - val_min = 0., - fr = "Parametre Beta de la loi | Beta > = 0", - ang = "Beta parameter | Beta > = 0", - ), - - ), # Fin BLOC LOGISTIC - - - - MULTINOMIAL = BLOC ( condition = " Kind in ( 'MultiNomial', ) ", - - N = SIMP ( statut = "o", - typ = "I", - max = 1, - fr = "Dimension de la loi", - ang = "Distribution dimension", - ), - - # Il faut un vecteur P de taille N - Values = SIMP ( statut = 'o', - typ = 'R', - max = '**', - ), - - ), # Fin BLOC MULTINOMIAL - - - - NORMAL = BLOC ( condition = " Kind in ( 'Normal', ) ", - - Mu = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Parametre Mu de la loi", - ang = "Mu parameter", - ), - - Sigma = SIMP ( statut = "o", - typ = "R", - max = 1, - val_min = 0., - fr = "Parametre Sigma de la loi | Sigma > 0", - ang = "Sigma parameter | Sigma > 0", - ), - - ), # Fin BLOC NORMAL - - - - POISSON = BLOC ( condition = " Kind in ( 'Poisson', ) ", - - Lambda = SIMP ( statut = "o", - typ = "R", - max = 1, - val_min = 0., - fr = "Parametre Lambda de la loi | Lambda > 0", - ang = "Lambda parameter | Lambda > 0", - ), - - ), # Fin BLOC POISSON - - - - STUDENT = BLOC ( condition = " Kind in ( 'Student', ) ", - - Mu = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Parametre Mu de la loi", - ang = "Mu parameter", - ), - - Nu = SIMP ( statut = "o", - typ = "R", - max = 1, - val_min = 2., - fr = "Parametre Nu de la loi | V > = 2", - ang = "Nu parameter | V > = 2", - ), - - ), # Fin BLOC STUDENT - - - - TRIANGULAR = BLOC ( condition = " Kind in ( 'Triangular', ) ", - - A = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Borne inferieure de la loi | A < = M < = B", - ang = "Lower bound | A < = M < = B", - ), - - M = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Mode de la loi | A < = M < = B", - ang = "Mode | A < = M < = B", - ), - - B = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Borne superieure de la loi | A < = M < = B", - ang = "Upper bound | A < = M < = B", - ), - - ), # Fin BLOC TRIANGULAR - - - - TRUNCATEDNORMAL = BLOC ( condition = " Kind in ( 'TruncatedNormal', ) ", - - MuN = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Parametre Mu de la loi", - ang = "Mu parameter", - ), - - SigmaN = SIMP ( statut = "o", - typ = "R", - max = 1, - val_min = 0., - fr = "Parametre SigmaN de la loi | SigmaN > 0", - ang = "SigmaN parameter | SigmaN> 0", - ), - - A = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Borne inferieure de la loi | A < = B", - ang = "Lower bound | A < = B", - ), - - B = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Borne superieure de la loi | A < = B", - ang = "Upper bound | A < = B", - ), - - ), # Fin BLOC TRUNCATEDNORMAL - - - - UNIFORM = BLOC ( condition = " Kind in ( 'Uniform', ) ", - - A = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Borne inferieure de la loi | A < = B", - ang = "Lower bound | A < = B", - ), - - B = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Borne superieure de la loi | A < = B", - ang = "Upper bound | A < = B", - ), - - ), # Fin BLOC UNIFORM - - - - USERDEFINED = BLOC ( condition = " Kind in ( 'UserDefined', ) ", - - # Il faut definir une collection de couples ( x,p ) - Values = SIMP ( statut = 'o', - typ = 'R', - max = '**', - ), - - ), # Fin BLOC USERDEFINED - - - - WEIBULL = BLOC ( condition = " Kind in ( 'Weibull', ) ", - - Settings = SIMP ( statut = "o", - typ = "TXM", - max = 1, - into = ( "AlphaBeta", "MuSigma" ), - defaut = "AlphaBeta", - fr = "Parametrage de la loi weibull", - ang = "Weibull distribution parameter set", - ), - - AlphaBeta_Parameters = BLOC ( condition = " Settings in ( 'AlphaBeta', ) ", - - Alpha = SIMP ( statut = "o", - typ = "R", - max = 1, - val_min = 0., - fr = "Parametre Alpha de la loi | Alpha > 0", - ang = "Alpha parameter | Alpha > 0", - ), - - Beta = SIMP ( statut = "o", - typ = "R", - max = 1, - val_min = 0., - fr = "Parametre Beta de la loi | Beta > 0", - ang = "Beta parameter | Beta > 0", - ), - - ), # Fin BLOC AlphaBeta_Parameters - - - MuSigma_Parameters = BLOC ( condition = " Settings in ( 'MuSigma', ) ", - - Mu = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Parametre Mu de la loi", - ang = "Mu parameter", - ), - - Sigma = SIMP ( statut = "o", - typ = "R", - max = 1, - val_min = 0., - fr = "Parametre Sigma de la loi | Sigma > 0", - ang = "Sigma parameter | Sigma > 0", - ), - - ), # Fin BLOC MuSigma_Parameters - - Gamma = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Parametre Gamma", - ang = "Gamma parameter", - ), - - ), # Fin BLOC WEIBULL - -) # Fin OPER DISTRIBUTION - - - - - - -#================================ -# 3. Definition de l'etude -#================================ - -# Nota : les variables de type PROC doivent etre en majuscules ! -CRITERIA = PROC ( nom = "CRITERIA", - op = None, - docu = "", - fr = "Mise en donnee pour le fichier de configuration de OPENTURNS.", - ang = "Writes the configuration file for OPENTURNS.", - - - - Type = SIMP ( statut = "o", - typ = "TXM", - into = ( "Min/Max", "Central Uncertainty", "Threshold Exceedence" ), - fr = "Type d'Analyse", - ang = "Analysis", - ), - - - - - - - - MinMax = BLOC ( condition = " Type in ( 'Min/Max', ) ", - - Method = SIMP ( statut = "o", - typ = "TXM", - into = ( "Experiment Plane", "Random Sampling" ), - fr = "Methode", - ang = "Method", - ), - # UC 3.1.1 - ExperimentPlaneSettings = BLOC ( condition = " Method in ( 'Experiment Plane', ) ", - - ExperimentPlane = SIMP ( statut = "o", - typ = "TXM", - into = ( "Axial", "Factorial", "Composite", ), - fr = "Methode", - ang = "Method", - ), - - Levels = SIMP ( statut = "o", - typ = "R", - val_min = 0.0, - max = '**', - fr = "Nombre de niveaux dans chaque direction", - ang = "Levels in each direction", - ), - - # Scaled Vector - UnitsPerDimension = SIMP ( statut = "o", - typ = "R", - max = '**', - fr = "Unite par dimension (autant que de variables declarees)", - ang = "Units per dimension (as much as declared variables)", - ), - - # Translation Vector - Center = SIMP ( statut = "o", - typ = "R", - max = '**', - fr = "Unite par dimension", - ang = "Units per dimension", - ), - - ), # Fin BLOC ExperimentPlaneSettings - - - - RandomSamplingSettings = BLOC ( condition = " Method in ( 'Random Sampling', ) ", - - PointsNumber = SIMP ( statut = "o", - typ = "I", - val_min = 1, - fr = "Nombre de points", - ang = "Points number", - ), - - ), # Fin BLOC RandomSamplingSettings - - Result = SIMP ( statut = "o", - typ = "TXM", - into = ( "Min/Max", ), - defaut = "Min/Max", - fr = "Le minimum et le maximum", - ang = "The min and max values", - ), - - - ), # Fin BLOC MinMax - - - - - CentralUncertainty = BLOC ( condition = " Type in ( 'Central Uncertainty', ) ", - - Method = SIMP ( statut = "o", - typ = "TXM", - into = ( "Taylor Variance Decomposition", "Random Sampling" ), - fr = "Methode", - ang = "Method", - ), - - # UC 3.2. - TaylorVarianceDecompositionSettings = BLOC ( condition = " Method in ( 'Taylor Variance Decomposition', ) ", - - Result = FACT ( statut = "o", - min = 1, - max = "**", - - MeanFirstOrder = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'yes', - max = 1, - fr = "Moyenne au premier ordre", - ang = "MeanFirstOrder", - ), - - StandardDeviationFirstOrder = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'yes', - max = 1, - fr = "Ecart-type au premier ordre", - ang = "StandardDeviationFirstOrder", - ), - - MeanSecondOrder = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'yes', - max = 1, - fr = "Moyenne au second ordre", - ang = "MeanSecondOrder", - ), - - ImportanceFactor = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'no', - max = 1, - fr = "Facteur d'importance pour variable de sortie scalaire", - ang = "ImportanceFactor", - ), - - ImportanceFactorSettings = BLOC ( condition = " ImportanceFactor in ( 'yes', ) ", - - NumericalResults = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'yes', - max = 1, - fr = "Resultats numeriques", - ang = "NumericalResults", - ), - - GraphicalResults = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'no', - max = 1, - fr = "Resultats graphiques", - ang = "GraphicalResults", - ), - - ), # Fin BLOC ImportanceFactorSettings - - ), # Fin FACT Result - - ), # Fin BLOC TaylorVarianceDecompositionSettings - - - - RandomSamplingSettings = BLOC ( condition = " Method in ( 'Random Sampling', ) ", - - PointsNumber = SIMP ( statut = "o", - typ = "I", - val_min = 1, - fr = "Nombre de points", - ang = "Points number", - ), - - Result = FACT ( statut = "o", - min = 1, - max = "**", - - EmpiricalMean = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'yes', - max = 1, - fr = "Moyenne empirique", - ang = "Empirical mean", - ), - - EmpiricalStandardDeviation = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'yes', - max = 1, - fr = "Ecart-type empirique", - ang = "Empirical standard deviation", - ), - - EmpiricalQuantile = SIMP ( statut = "o", - typ = 'R', - defaut = 0.0, - max = 1, - val_min = 0.0, - val_max = 1.0, - fr = "Quantile empirique", - ang = "Empirical quantile", - ), - - AnalysedCorrelations = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'no', - max = 1, - fr = "Correlations analysees", - ang = "Analysed correlations", - ), - - KernelSmoothing = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'no', - max = 1, - fr = "Kernel smoothing de l'echantillon", - ang = "Kernel smoothing of the sample", - ), - - ), # Fin FACT Result - - ), # Fin BLOC RandomSamplingSettings - - ), # Fin BLOC CentralUncertainty - - - - - ThresholdExceedence = BLOC ( condition = " Type in ( 'Threshold Exceedence', ) ", - - Event = FACT ( statut = "o", - min = 1, - max = 1, - - Threshold = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Le seuil de defaillance", - ang = "Failure threshold", - ), - - ComparisonOperator = SIMP ( statut = "o", - typ = "TXM", - max = 1, - into = ( "Less", "LessOrEqual", "Equal", "GreaterOrEqual", "Greater" ), - fr = "Que faut-il ne pas depasser : un maximum ou un minimum", - ang = "What is the failure threshold : maximum or minimum", - ), - ), # Fin FACT Event - - - Method = SIMP ( statut = "o", - typ = "TXM", - into = ( "Simulation", "Analytical" ), - fr = "Methode", - ang = "Method", - ), - - SimulationSettings = BLOC ( condition = " Method in ( 'Simulation', ) ", - - Algorithm = SIMP ( statut = "o", - typ = "TXM", - into = ( "MonteCarlo", "LHS", "ImportanceSampling" ), - fr = "Algorithme de simulation", - ang = "Simulation algorithm", - ), - - - RandomGenerator = FACT ( statut = "o", - min = 1, - max = 1, - - SeedToBeSet = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'no', - max = 1, - fr = "La racine du generateur aleatoire doit-elle etre positionnee ?", - ang = "Does the random generator seed need to be set ?", - ), - - SeedSettings = BLOC ( condition = " SeedToBeSet in ( 'yes', ) ", - - RandomGeneratorSeed = SIMP ( statut = "o", - typ = "I", - max = 1, - fr = "Racine du generateur aleatoire", - ang = "Random generator seed", - ), - - ), # Fin BLOC SeedSettings - - ), # Fin FACT RandomGenerator - - - BlockSize = SIMP ( statut = "f", - typ = "I", - max = 1, - val_min = 1, - defaut = 1, - fr = "Nombre de calculs realises en bloc", - ang = "Number of computations as a block", - ), - - MaximumOuterSampling = SIMP ( statut = "o", - typ = "I", - max = 1, - val_min = 1, - fr = "Maximum d'iterations externes", - ang = "Maximum outer Sampling value", - ), - - MaximumCoefficientOfVariation = SIMP ( statut = "f", - typ = "R", - max = 1, - defaut = 0.1, - val_min = 0.0, - fr = " maximum ...", - ang = "Absolute maximum ...." - ), - - ImportanceSamplingSettings = BLOC ( condition = " Algorithm in ( 'ImportanceSampling', ) ", - - MeanVector = SIMP ( statut = "o", - typ = "R", - max = "**", - fr = "Moyenne", - ang = "Mean vector", - ), - - Correlation = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'Independent', 'Linear' ), - defaut = 'Linear', - max = 1, - fr = "Le type de correlation entre les variables", - ang = "Correlation between variables", - ), - - ), # Fin BLOC ImportanceSamplingSettings - - Result = FACT ( statut = "o", - min = 1, - max = "**", - - Probability = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', ), - defaut = 'yes', - max = 1, - fr = "Probabiblite", - ang = "Probability", - ), - - ConfidenceInterval = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'yes', - max = 1, - fr = "Ecart-type empirique", - ang = "Empirical standard deviation", - ), - - ConfidenceIntervalSettings = BLOC ( condition = " ConfidenceInterval in ( 'yes', ) ", - - Level = SIMP ( statut = "o", - typ = 'R', - defaut = 0.0, - max = 1, - val_min = 0.0, - val_max = 1.0, - fr = "Niveau de confiance", - ang = "Confidence level", - ), - - ), # Fin BLOC ConfidenceIntervalSettings - - VariationCoefficient = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'yes', - max = 1, - fr = "Coefficient de variation", - ang = "VariationCoefficient", - ), - - IterationNumber = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'yes', - max = 1, - fr = "Nombre d'iterations", - ang = "Iteration number", - ), - - ConvergenceGraph = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'yes', - max = 1, - fr = "Graphe de convergence", - ang = "Convergence graph", - ), - - ), # Fin FACT Result - - - - ), # Fin BLOC SimulationSettings - - - - AnalyticalSettings = BLOC ( condition = " Method in ( 'Analytical', ) ", - - Approximation = SIMP ( statut = "o", - typ = "TXM", - into = ( "FORM", "SORM" ), - fr = "Approximation", - ang = "Approximation", - ), - - OptimizationAlgorithm = SIMP ( statut = "o", - typ = "TXM", - into = ( "Cobyla", "AbdoRackwitz" ), - fr = "Methode d'optimisation", - ang = "Optimisation method", - ), - - - PhysicalStartingPoint = SIMP ( statut = "f", - typ = "R", - max = "**", - fr = "Point de demarrage de l'algorithme iteratif", - ang = "Initial point for iterative process", - ), - - MaximumIterationsNumber = SIMP ( statut = "f", - typ = "I", - max = 1, - val_min = 1, - fr = "Nombre maximum d iterations", - ang = "Maximum number of iterations", - ), - - regles = ( EXCLUS ( "MaximumAbsoluteError", "RelativeAbsoluteError" ), ), - - MaximumAbsoluteError = SIMP ( statut = "f", - typ = "R", - max = 1, - defaut = 1E-6, - val_min = 0.0, - fr = "Distance maximum absolue entre 2 iterations successifs", - ang = "Absolute maximum distance between 2 successive iterates", - ), - - RelativeAbsoluteError = SIMP ( statut = "f", - typ = "R", - max = 1, - defaut = 1E-6, - val_min = 0.0, - fr = "Distance maximum relative entre 2 iterations successives", - ang = "Relative maximum distance between 2 successive iterates", - ), - - MaximumConstraintError = SIMP ( statut = "f", - typ = "R", - max = 1, - val_min = 0.0, - fr = "Valeur maximum absolue de la fonction moins la valeur du niveau", - ang = "Maximum absolute value of the constraint function minus the level value", - ), - - ImportanceSampling = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'no', - max = 1, - fr = "Tirage d'importance au point de conception", - ang = "Importance sampling at design point", - ), - - FORM = BLOC ( condition = " Approximation in ( 'FORM', ) ", - - Probability = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', ), - defaut = 'yes', - max = 1, - fr = "Probabiblite", - ang = "Probability", - ), - - DesignPoint = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'yes', - max = 1, - fr = "Point de conception", - ang = "Design point", - ), - - HasReliabilityIndex = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'yes', - max = 1, - fr = "Indice de fiabilite", - ang = "Reliability index", - ), - - ImportanceFactor = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'no', - max = 1, - fr = "Facteur d'importance pour variable de sortie scalaire", - ang = "ImportanceFactor", - ), - - ImportanceFactorSettings = BLOC ( condition = " ImportanceFactor in ( 'yes', ) ", - - NumericalResults = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'yes', - max = 1, - fr = "Resultats numeriques", - ang = "NumericalResults", - ), - - GraphicalResults = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'no', - max = 1, - fr = "Resultats graphiques", - ang = "GraphicalResults", - ), - - ), # Fin BLOC ImportanceFactorSettings - - - SensitivityAnalysis = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'no', - max = 1, - fr = "Analyse de sensibilite", - ang = "Sensitivity analysis", - ), - - SensitivityAnalysisSettings = BLOC ( condition = " SensitivityAnalysis in ( 'yes', ) ", - - HasoferReliabilityIndex = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'no', - max = 1, - fr = "Indice de fiabilite de Hasofer", - ang = "Hasofer reliability index", - ), - - HasoferReliabilityIndexSettings = BLOC ( condition = " HasoferReliabilityIndex in ( 'yes', ) ", - - NumericalResults = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'yes', - max = 1, - fr = "Resultats numeriques", - ang = "NumericalResults", - ), - - GraphicalResults = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'no', - max = 1, - fr = "Resultats graphiques", - ang = "GraphicalResults", - ), - - ), # Fin BLOC HasoferReliabilityIndexSettings - - ), # Fin BLOC SensitivityAnalysisSettings - - FunctionCallsNumber = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'no', - max = 1, - fr = "Nombre d'appels a la fonction", - ang = "Function calls number", - ), - - - ), # Fin BLOC FORM - - - SORM = BLOC ( condition = " Approximation in ( 'SORM', ) ", - - - TvedtApproximation = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'no', - max = 1, - fr = "Approximation de Tvedt", - ang = "Tvedt approximation", - ), - - HohenBichlerApproximation = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'no', - max = 1, - fr = "Approximation de HohenBichler", - ang = "HohenBichler approximation", - ), - - BreitungApproximation = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'no', - max = 1, - fr = "Approximation de Breitung", - ang = "Breitung approximation", - ), - - DesignPoint = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'yes', - max = 1, - fr = "Point de conception", - ang = "Design point", - ), - - ImportanceFactor = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'no', - max = 1, - fr = "Facteur d'importance pour variable de sortie scalaire", - ang = "ImportanceFactor", - ), - - ImportanceFactorSettings = BLOC ( condition = " ImportanceFactor in ( 'yes', ) ", - - NumericalResults = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'yes', - max = 1, - fr = "Resultats numeriques", - ang = "NumericalResults", - ), - - GraphicalResults = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'no', - max = 1, - fr = "Resultats graphiques", - ang = "GraphicalResults", - ), - - ), # Fin BLOC ImportanceFactorSettings - - - SensitivityAnalysis = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'no', - max = 1, - fr = "Analyse de sensibilite", - ang = "Sensitivity analysis", - ), - - SensitivityAnalysisSettings = BLOC ( condition = " SensitivityAnalysis in ( 'yes', ) ", - - HasoferReliabilityIndex = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'no', - max = 1, - fr = "Indice de fiabilite de Hasofer", - ang = "Hasofer reliability index", - ), - - HasoferReliabilityIndexSettings = BLOC ( condition = " HasoferReliabilityIndex in ( 'yes', ) ", - - NumericalResults = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'yes', - max = 1, - fr = "Resultats numeriques", - ang = "NumericalResults", - ), - - GraphicalResults = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'no', - max = 1, - fr = "Resultats graphiques", - ang = "GraphicalResults", - ), - - ), # Fin BLOC HasoferReliabilityIndexSettings - - ), # Fin BLOC SensitivityAnalysisSettings - - FunctionCallsNumber = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'no', - max = 1, - fr = "Nombre d'appels a la fonction", - ang = "Function calls number", - ), - - - ), # Fin BLOC SORM - - - - ), # Fin BLOC AnalyticalSettings - - - - ), # Fin BLOC ThresholdExceedence - - - -) # Fin PROC CRITERIA - - - - - - - diff --git a/OldCodes/Openturns_Study/OpenTURNS_Cata_Study_V3.py b/OldCodes/Openturns_Study/OpenTURNS_Cata_Study_V3.py deleted file mode 100644 index 80dbe832..00000000 --- a/OldCodes/Openturns_Study/OpenTURNS_Cata_Study_V3.py +++ /dev/null @@ -1,1598 +0,0 @@ -# -*- coding: utf-8 -*- - -# -------------------------------------------------- -# debut entete -# -------------------------------------------------- - -from Accas import ASSD, JDC_CATA, AU_MOINS_UN, PROC, SIMP, FACT, OPER, MACRO, BLOC - -class loi ( ASSD ) : pass -class variable ( ASSD ) : pass - - -#CONTEXT.debug = 1 -JdC = JDC_CATA ( code = 'OPENTURNS_STUDY', - execmodul = None, - regles = ( AU_MOINS_UN ( 'CRITERIA' ), AU_MOINS_UN ( 'MODEL' ), ), - ) # Fin JDC_CATA - -# -------------------------------------------------- -# fin entete -# -------------------------------------------------- - -LOG = PROC ( nom = "LOG", - op = None, - docu = "", - - DebugMessages = SIMP ( statut = "o", - typ = "TXM", - into = ( 'yes', 'no' ), - defaut = 'no', - fr = "Affichage du niveau de debug de la bibliotheque Open TURNS", - ang = "Open TURNS library debug level print", - ), - - WrapperMessages = SIMP ( statut = "o", - typ = "TXM", - into = ( 'yes', 'no' ), - defaut = 'no', - fr = "Affichage du niveau de wrapper de la bibliotheque Open TURNS", - ang = "Open TURNS library debug level print", - ), - - UserMessages = SIMP ( statut = "o", - typ = "TXM", - into = ( 'yes', 'no' ), - defaut = 'no', - fr = "Affichage du niveau de user de la bibliotheque Open TURNS", - ang = "Open TURNS library user level print", - ), - - InfoMessages = SIMP ( statut = "o", - typ = "TXM", - into = ( 'yes', 'no' ), - defaut = 'yes', - fr = "Affichage du niveau de info de la bibliotheque Open TURNS", - ang = "Open TURNS library info level print", - ), - - WarningMessages = SIMP ( statut = "o", - typ = "TXM", - into = ( 'yes', 'no' ), - defaut = 'yes', - fr = "Affichage du niveau de warning de la bibliotheque Open TURNS", - ang = "Open TURNS library warning level print", - ), - - ErrorMessages = SIMP ( statut = "o", - typ = "TXM", - into = ( 'yes', 'no' ), - defaut = 'yes', - fr = "Affichage du niveau de error de la bibliotheque Open TURNS", - ang = "Open TURNS library error level print", - ), - -) # Fin PROC LOG - - - - -#================================ -# 0. Definition du modele physique -#================================ - - -DETERMINISTICVARIABLE = OPER ( nom = "DETERMINISTICVARIABLE", - sd_prod = variable, - op = None, - fr = "Variable deterministe", - ang = "Deterministic variable", - - N = SIMP ( statut = 'o', - typ = "TXM", - fr = "Nom", - ang = "Name", - ), - - T = SIMP ( statut = 'o', - defaut = "in", - into = ( "in" , "out", ), - typ = "TXM", - fr = "Type", - ang = "Type", - ), - - R = SIMP ( statut = 'o', - defaut = 0, - typ = "I", - fr = "Rang", - ang = "Rank", - ), - -) # Fin OPER DETERMINISTICVARIABLE - - - -import ops -MODEL = MACRO ( nom = "MODEL", - op = None, - UIinfo = { "groupes" : ( "Gestion du travail", ) }, - fr = "Chargement du wrapper du modele physique", - ang = "Physical model wrapper load", - sd_prod = ops.INCLUDE, - op_init = ops.INCLUDE_context, - fichier_ini = 1, - - FileName = SIMP ( statut = "o", - typ = "TXM", - fr = "Nom du modele physique", - ang = "Physical model identifier", - ), - -) # Fin PROC MODEL - - - - -VARIABLE = PROC ( nom = "VARIABLE", - op = None, - docu = "", - fr = "Variable probabiliste", - ang = "Probabilistic variable", - - ModelVariable = SIMP ( statut = "o", - typ = ( variable, ), - ), - - Distribution = SIMP ( statut = "o", - typ = ( loi, ), - ), - -) # Fin PROC VARIABLE - - - - -#================================ -# 1. Definition des LOIS -#================================ - -# Nota : les variables de type OPER doivent etre en majuscules ! -# Nota : les variables de type OPER doivent etre de premier niveau (pas imbriquees dans un autre type) -DISTRIBUTION = OPER ( nom = "DISTRIBUTION", - sd_prod = loi, - op = 68, - fr = "Definitions des lois marginales utilisees par les variables d'entree", - - -#==== -# Type de distribution -#==== - - Kind = SIMP ( statut = "o", typ = "TXM", - into = ( "Beta", - "Exponential", - "Gamma", - "Geometric", - "Gumbel", - "Histogram", - "Logistic", - "LogNormal", - "MultiNomial", - "Normal", - "TruncatedNormal", - "Poisson", - "Student", - "Triangular", - "Uniform", - "UserDefined", - "Weibull", - ), - fr = "Choix du type de la loi marginale", - ang = "1D marginal distribution", - ), - -#==== -# Definition des parametres selon le type de la loi -#==== - - BETA = BLOC ( condition = " Kind in ( 'Beta', ) ", - - Settings = SIMP ( statut = "o", - typ = "TXM", - max = 1, - into = ( "RT", "MuSigma" ), - defaut = "RT", - fr = "Parametrage de la loi beta", - ang = "Beta distribution parameter set", - ), - - RT_Parameters = BLOC ( condition = " Settings in ( 'RT', ) ", - - R = SIMP ( statut = "o", - typ = "R", - max = 1, - val_min = 0., - fr = "Parametre R de la loi", - ang = "R parameter", - ), - - # T > R - T = SIMP ( statut = "o", - typ = "R", - max = 1, - val_min = 0., - fr = "Parametre T de la loi | T > R", - ang = "T parameter | T > R", - ), - - ), # Fin BLOC RT_Parameters - - - MuSigma_Parameters = BLOC ( condition = " Settings in ( 'MuSigma', ) ", - - Mu = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Parametre Mu de la loi", - ang = "Mu parameter", - ), - - Sigma = SIMP ( statut = "o", - typ = "R", - max = 1, - val_min = 0., - fr = "Parametre Sigma de la loi | Sigma > 0", - ang = "Sigma parameter | Sigma > 0", - ), - - ), # Fin BLOC MuSigma_Parameters - - - A = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Parametre A de la loi", - ang = "A parameter", - ), - - # B > A - B = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Parametre B de la loi | B > A", - ang = "B parameter | B > A", - ), - - ), # Fin BLOC BETA - - - - EXPONENTIAL = BLOC ( condition = " Kind in ( 'Exponential', ) ", - - Lambda = SIMP ( statut = "o", - typ = "R", - max = 1, - val_min = 0., - fr = "Parametre Lambda | Lambda > 0", - ang = "Lambda parameter | Lambda > 0", - ), - - Gamma = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Parametre Gamma", - ang = "Gamma parameter", - ), - - ), # Fin BLOC EXPONENTIAL - - - - GAMMA = BLOC ( condition = " Kind in ( 'Gamma', ) ", - - Settings = SIMP ( statut = "o", - typ = "TXM", - max = 1, - into = ( "KLambda", "MuSigma" ), - defaut = "KLambda", - fr = "Parametrage de la loi gamma", - ang = "Gamma distribution parameter set", - ), - - KLambda_Parameters = BLOC ( condition = " Settings in ( 'KLambda', ) ", - - K = SIMP ( statut = "o", - typ = "R", - max = 1, - val_min = 0., - fr = "Parametre K de la loi | K > 0", - ang = "K parameter | K > 0", - ), - - Lambda = SIMP ( statut = "o", - typ = "R", - max = 1, - val_min = 0., - fr = "Parametre Lambda de la loi | Lambda > 0", - ang = "Lambda parameter | Lambda > 0", - ), - - ), # Fin BLOC KLambda_Parameters - - - MuSigma_Parameters = BLOC ( condition = " Settings in ( 'MuSigma', ) ", - - Mu = SIMP ( statut = "o", - typ = "R", - max = 1, - defaut = 0.0, - fr = "Parametre Mu de la loi", - ang = "Mu parameter", - ), - - Sigma = SIMP ( statut = "o", - typ = "R", - max = 1, - defaut = 1.0, - val_min = 0., - fr = "Parametre Sigma de la loi | Sigma > 0", - ang = "Sigma parameter | Sigma > 0", - ), - - ), # Fin BLOC MuSigma_Parameters - - Gamma = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Parametre Gamma", - ang = "Gamma parameter", - ), - - - ), # Fin BLOC GAMMA - - - - GEOMETRIC = BLOC ( condition = " Kind in ( 'Geometric', ) ", - - P = SIMP ( statut = "o", - typ = "R", - max = 1, - val_min = 0., - val_max = 1., - fr = "Parametre P | 0 < P < 1", - ang = "P parameter | 0 < P < 1", - ), - - ), # Fin BLOC GEOMETRIC - - - - GUMBEL = BLOC ( condition = " Kind in ( 'Gumbel', ) ", - - Settings = SIMP ( statut = "o", - typ = "TXM", - max = 1, - into = ( "AlphaBeta", "MuSigma" ), - defaut = "AlphaBeta", - fr = "Parametrage de la loi gumbel", - ang = "Gumbel distribution parameter set", - ), - - AlphaBeta_Parameters = BLOC ( condition = " Settings in ( 'AlphaBeta', ) ", - - Alpha = SIMP ( statut = "o", - typ = "R", - max = 1, - val_min = 0., - fr = "Parametre Alpha de la loi | Alpha > 0", - ang = "Alpha parameter | Alpha > 0", - ), - - Beta = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Parametre Beta de la loi", - ang = "Beta parameter", - ), - - ), # Fin BLOC AlphaBeta_Parameters - - - MuSigma_Parameters = BLOC ( condition = " Settings in ( 'MuSigma', ) ", - - Mu = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Parametre Mu de la loi", - ang = "Mu parameter", - ), - - Sigma = SIMP ( statut = "o", - typ = "R", - max = 1, - val_min = 0., - fr = "Parametre Sigma de la loi | Sigma > 0", - ang = "Sigma parameter | Sigma > 0", - ), - - ), # Fin BLOC MuSigma_Parameters - - ), # Fin BLOC GUMBEL - - - - HISTOGRAM = BLOC ( condition = " Kind in ( 'Histogram', ) ", - - Sup = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Borne superieure de la distribution", - ang = "Upper bound", - ), - - # Il faut definir une collection de couples ( x,p ) - Values = SIMP ( statut = 'o', - typ = 'R', - max = '**', - ), - - ), # Fin BLOC HISTOGRAM - - - - LOGNORMAL = BLOC ( condition = " Kind in ( 'LogNormal', ) ", - - Settings = SIMP ( statut = "o", - typ = "TXM", - max = 1, - into = ( "MuSigmaLog", "MuSigma", "MuSigmaOverMu" ), - defaut = "MuSigmaLog", - fr = "Parametrage de la loi lognormale", - ang = "Lognormal distribution parameter set", - ), - - MuSigma_Parameters = BLOC ( condition = " Settings in ( 'MuSigma', ) ", - - Mu = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Parametre Mu de la loi | Mu > Gamma", - ang = "Mu parameter | Mu > Gamma", - ), - - Sigma = SIMP ( statut = "o", - typ = "R", - max = 1, - val_min = 0., - fr = "Parametre Sigma de la loi | Sigma > 0", - ang = "Sigma parameter | Sigma > 0", - ), - - ), # Fin BLOC MuSigma_Parameters - - MuSigmaOverMu_Parameters = BLOC ( condition = " Settings in ( 'MuSigmaOverMu', ) ", - - Mu = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Parametre Mu de la loi | Mu > Gamma", - ang = "Mu parameter | Mu > Gamma", - ), - - SigmaOverMu = SIMP ( statut = "o", - typ = "R", - max = 1, - val_min = 0., - fr = "Parametre SigmaOverMu de la loi | SigmaOverMu > 0", - ang = "SigmaOverMu parameter | SigmaOverMu > 0", - ), - - ), # Fin BLOC MuSigmaOverMu_Parameters - - MuSigmaLog_Parameters = BLOC ( condition = " Settings in ( 'MuSigmaLog', ) ", - - MuLog = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Parametre Mu log de la loi", - ang = "Mu log parameter", - ), - - SigmaLog = SIMP ( statut = "o", - typ = "R", - max = 1, - val_min = 0., - fr = "Parametre Sigma log de la loi | SigmaLog > 0", - ang = "Sigma log parameter | SigmaLog > 0", - ), - - ), # Fin BLOC MuSigmaLog_Parameters - - Gamma = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Parametre Gamma", - ang = "Gamma parameter", - ), - - ), # Fin BLOC LOGNORMAL - - - - LOGISTIC = BLOC ( condition = " Kind in ( 'Logistic', ) ", - - Alpha = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Parametre Alpha de la loi", - ang = "Alpha parameter", - ), - - Beta = SIMP ( statut = "o", - typ = "R", - max = 1, - val_min = 0., - fr = "Parametre Beta de la loi | Beta > = 0", - ang = "Beta parameter | Beta > = 0", - ), - - ), # Fin BLOC LOGISTIC - - - - MULTINOMIAL = BLOC ( condition = " Kind in ( 'MultiNomial', ) ", - - N = SIMP ( statut = "o", - typ = "I", - max = 1, - fr = "Dimension de la loi", - ang = "Distribution dimension", - ), - - # Il faut un vecteur P de taille N - Values = SIMP ( statut = 'o', - typ = 'R', - max = '**', - ), - - ), # Fin BLOC MULTINOMIAL - - - - NORMAL = BLOC ( condition = " Kind in ( 'Normal', ) ", - - Mu = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Parametre Mu de la loi", - ang = "Mu parameter", - ), - - Sigma = SIMP ( statut = "o", - typ = "R", - max = 1, - val_min = 0., - fr = "Parametre Sigma de la loi | Sigma > 0", - ang = "Sigma parameter | Sigma > 0", - ), - - ), # Fin BLOC NORMAL - - - - POISSON = BLOC ( condition = " Kind in ( 'Poisson', ) ", - - Lambda = SIMP ( statut = "o", - typ = "R", - max = 1, - val_min = 0., - fr = "Parametre Lambda de la loi | Lambda > 0", - ang = "Lambda parameter | Lambda > 0", - ), - - ), # Fin BLOC POISSON - - - - STUDENT = BLOC ( condition = " Kind in ( 'Student', ) ", - - Mu = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Parametre Mu de la loi", - ang = "Mu parameter", - ), - - Nu = SIMP ( statut = "o", - typ = "R", - max = 1, - val_min = 2., - fr = "Parametre Nu de la loi | V > = 2", - ang = "Nu parameter | V > = 2", - ), - - ), # Fin BLOC STUDENT - - - - TRIANGULAR = BLOC ( condition = " Kind in ( 'Triangular', ) ", - - A = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Borne inferieure de la loi | A < = M < = B", - ang = "Lower bound | A < = M < = B", - ), - - M = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Mode de la loi | A < = M < = B", - ang = "Mode | A < = M < = B", - ), - - B = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Borne superieure de la loi | A < = M < = B", - ang = "Upper bound | A < = M < = B", - ), - - ), # Fin BLOC TRIANGULAR - - - - TRUNCATEDNORMAL = BLOC ( condition = " Kind in ( 'TruncatedNormal', ) ", - - MuN = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Parametre Mu de la loi", - ang = "Mu parameter", - ), - - SigmaN = SIMP ( statut = "o", - typ = "R", - max = 1, - val_min = 0., - fr = "Parametre SigmaN de la loi | SigmaN > 0", - ang = "SigmaN parameter | SigmaN> 0", - ), - - A = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Borne inferieure de la loi | A < = B", - ang = "Lower bound | A < = B", - ), - - B = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Borne superieure de la loi | A < = B", - ang = "Upper bound | A < = B", - ), - - ), # Fin BLOC TRUNCATEDNORMAL - - - - UNIFORM = BLOC ( condition = " Kind in ( 'Uniform', ) ", - - A = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Borne inferieure de la loi | A < = B", - ang = "Lower bound | A < = B", - ), - - B = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Borne superieure de la loi | A < = B", - ang = "Upper bound | A < = B", - ), - - ), # Fin BLOC UNIFORM - - - - USERDEFINED = BLOC ( condition = " Kind in ( 'UserDefined', ) ", - - # Il faut definir une collection de couples ( x,p ) - Values = SIMP ( statut = 'o', - typ = 'R', - max = '**', - ), - - ), # Fin BLOC USERDEFINED - - - - WEIBULL = BLOC ( condition = " Kind in ( 'Weibull', ) ", - - Settings = SIMP ( statut = "o", - typ = "TXM", - max = 1, - into = ( "AlphaBeta", "MuSigma" ), - defaut = "AlphaBeta", - fr = "Parametrage de la loi weibull", - ang = "Weibull distribution parameter set", - ), - - AlphaBeta_Parameters = BLOC ( condition = " Settings in ( 'AlphaBeta', ) ", - - Alpha = SIMP ( statut = "o", - typ = "R", - max = 1, - val_min = 0., - fr = "Parametre Alpha de la loi | Alpha > 0", - ang = "Alpha parameter | Alpha > 0", - ), - - Beta = SIMP ( statut = "o", - typ = "R", - max = 1, - val_min = 0., - fr = "Parametre Beta de la loi | Beta > 0", - ang = "Beta parameter | Beta > 0", - ), - - ), # Fin BLOC AlphaBeta_Parameters - - - MuSigma_Parameters = BLOC ( condition = " Settings in ( 'MuSigma', ) ", - - Mu = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Parametre Mu de la loi", - ang = "Mu parameter", - ), - - Sigma = SIMP ( statut = "o", - typ = "R", - max = 1, - val_min = 0., - fr = "Parametre Sigma de la loi | Sigma > 0", - ang = "Sigma parameter | Sigma > 0", - ), - - ), # Fin BLOC MuSigma_Parameters - - Gamma = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Parametre Gamma", - ang = "Gamma parameter", - ), - - ), # Fin BLOC WEIBULL - -) # Fin OPER DISTRIBUTION - - - - - - - -#================================ -# 3. Definition de l'etude -#================================ - -# Nota : les variables de type PROC doivent etre en majuscules ! -CRITERIA = PROC ( nom = "CRITERIA", - op = None, - docu = "", - fr = "Mise en donnee pour le fichier de configuration de OPENTURNS.", - ang = "Writes the configuration file for OPENTURNS.", - - - - Type = SIMP ( statut = "o", - typ = "TXM", - into = ( "Min/Max", "Central Uncertainty", "Threshold Exceedence" ), - fr = "Type d'Analyse", - ang = "Analysis", - ), - - - - - - - - MinMax = BLOC ( condition = " Type in ( 'Min/Max', ) ", - - Method = SIMP ( statut = "o", - typ = "TXM", - into = ( "Experiment Plane", "Random Sampling" ), - fr = "Methode", - ang = "Method", - ), - # UC 3.1.1 - ExperimentPlaneSettings = BLOC ( condition = " Method in ( 'Experiment Plane', ) ", - - ExperimentPlane = SIMP ( statut = "o", - typ = "TXM", - into = ( "Axial", "Factorial", "Composite", ), - fr = "Methode", - ang = "Method", - ), - - Levels = SIMP ( statut = "o", - typ = "R", - val_min = 0.0, - max = '**', - fr = "Nombre de niveaux dans chaque direction", - ang = "Levels in each direction", - ), - - # Scaled Vector - UnitsPerDimension = SIMP ( statut = "o", - typ = "R", - max = '**', - fr = "Unite par dimension (autant que de variables declarees)", - ang = "Units per dimension (as much as declared variables)", - ), - - # Translation Vector - Center = SIMP ( statut = "o", - typ = "R", - max = '**', - fr = "Unite par dimension", - ang = "Units per dimension", - ), - - ), # Fin BLOC ExperimentPlaneSettings - - - - RandomSamplingSettings = BLOC ( condition = " Method in ( 'Random Sampling', ) ", - - PointsNumber = SIMP ( statut = "o", - typ = "I", - val_min = 1, - fr = "Nombre de points", - ang = "Points number", - ), - - ), # Fin BLOC RandomSamplingSettings - - Result = SIMP ( statut = "o", - typ = "TXM", - into = ( "Min/Max", ), - defaut = "Min/Max", - fr = "Le minimum et le maximum", - ang = "The min and max values", - ), - - - ), # Fin BLOC MinMax - - - - - CentralUncertainty = BLOC ( condition = " Type in ( 'Central Uncertainty', ) ", - - Method = SIMP ( statut = "o", - typ = "TXM", - into = ( "Taylor Variance Decomposition", "Random Sampling" ), - fr = "Methode", - ang = "Method", - ), - - # UC 3.2. - TaylorVarianceDecompositionSettings = BLOC ( condition = " Method in ( 'Taylor Variance Decomposition', ) ", - - Result = FACT ( statut = "o", - min = 1, - max = "**", - - MeanFirstOrder = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'yes', - max = 1, - fr = "Moyenne au premier ordre", - ang = "MeanFirstOrder", - ), - - StandardDeviationFirstOrder = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'yes', - max = 1, - fr = "Ecart-type au premier ordre", - ang = "StandardDeviationFirstOrder", - ), - - MeanSecondOrder = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'yes', - max = 1, - fr = "Moyenne au second ordre", - ang = "MeanSecondOrder", - ), - - ImportanceFactor = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'no', - max = 1, - fr = "Facteur d'importance pour variable de sortie scalaire", - ang = "ImportanceFactor", - ), - - ImportanceFactorSettings = BLOC ( condition = " ImportanceFactor in ( 'yes', ) ", - - NumericalResults = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'yes', - max = 1, - fr = "Resultats numeriques", - ang = "NumericalResults", - ), - - GraphicalResults = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'no', - max = 1, - fr = "Resultats graphiques", - ang = "GraphicalResults", - ), - - ), # Fin BLOC ImportanceFactorSettings - - ), # Fin FACT Result - - ), # Fin BLOC TaylorVarianceDecompositionSettings - - - - RandomSamplingSettings = BLOC ( condition = " Method in ( 'Random Sampling', ) ", - - PointsNumber = SIMP ( statut = "o", - typ = "I", - val_min = 1, - fr = "Nombre de points", - ang = "Points number", - ), - - Result = FACT ( statut = "o", - min = 1, - max = "**", - - EmpiricalMean = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'yes', - max = 1, - fr = "Moyenne empirique", - ang = "Empirical mean", - ), - - EmpiricalStandardDeviation = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'yes', - max = 1, - fr = "Ecart-type empirique", - ang = "Empirical standard deviation", - ), - - EmpiricalQuantile = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'yes', - max = 1, - fr = "Quantile empirique", - ang = "Empirical quantile", - ), - - EmpiricalQuantileSettings = BLOC ( condition = " EmpiricalQuantile in ( 'yes', ) ", - - EmpiricalQuantile_Order = SIMP ( statut = "o", - typ = 'R', - defaut = 0.95, - max = 1, - val_min = 0.0, - val_max = 1.0, - fr = "Ordre du quantile empirique", - ang = "Empirical quantile order", - ), - - ), # Fin BLOC EmpiricalQuantileSettings - - AnalysedCorrelations = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'no', - max = 1, - fr = "Correlations analysees", - ang = "Analysed correlations", - ), - - KernelSmoothing = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'no', - max = 1, - fr = "Kernel smoothing de l'echantillon", - ang = "Kernel smoothing of the sample", - ), - - ), # Fin FACT Result - - ), # Fin BLOC RandomSamplingSettings - - ), # Fin BLOC CentralUncertainty - - - - - ThresholdExceedence = BLOC ( condition = " Type in ( 'Threshold Exceedence', ) ", - - Event = FACT ( statut = "o", - min = 1, - max = 1, - - Threshold = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Le seuil de defaillance", - ang = "Failure threshold", - ), - - ComparisonOperator = SIMP ( statut = "o", - typ = "TXM", - max = 1, - into = ( "Less", "LessOrEqual", "Equal", "GreaterOrEqual", "Greater" ), - fr = "Que faut-il ne pas depasser : un maximum ou un minimum", - ang = "What is the failure threshold : maximum or minimum", - ), - ), # Fin FACT Event - - - Method = SIMP ( statut = "o", - typ = "TXM", - into = ( "Simulation", "Analytical" ), - fr = "Methode", - ang = "Method", - ), - - SimulationSettings = BLOC ( condition = " Method in ( 'Simulation', ) ", - - Algorithm = SIMP ( statut = "o", - typ = "TXM", - into = ( "MonteCarlo", "LHS", "ImportanceSampling" ), - fr = "Algorithme de simulation", - ang = "Simulation algorithm", - ), - - - RandomGenerator = FACT ( statut = "o", - min = 1, - max = 1, - - SeedToBeSet = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'no', - max = 1, - fr = "La racine du generateur aleatoire doit-elle etre positionnee ?", - ang = "Does the random generator seed need to be set ?", - ), - - SeedSettings = BLOC ( condition = " SeedToBeSet in ( 'yes', ) ", - - RandomGeneratorSeed = SIMP ( statut = "o", - typ = "I", - max = 1, - fr = "Racine du generateur aleatoire", - ang = "Random generator seed", - ), - - ), # Fin BLOC SeedSettings - - ), # Fin FACT RandomGenerator - - - BlockSize = SIMP ( statut = "f", - typ = "I", - max = 1, - val_min = 1, - defaut = 1, - fr = "Nombre de calculs realises en bloc", - ang = "Number of computations as a block", - ), - - MaximumOuterSampling = SIMP ( statut = "o", - typ = "I", - max = 1, - val_min = 1, - fr = "Maximum d'iterations externes", - ang = "Maximum outer Sampling value", - ), - - MaximumCoefficientOfVariation = SIMP ( statut = "f", - typ = "R", - max = 1, - defaut = 0.1, - val_min = 0.0, - fr = " maximum ...", - ang = "Absolute maximum ...." - ), - - ImportanceSamplingSettings = BLOC ( condition = " Algorithm in ( 'ImportanceSampling', ) ", - - MeanVector = SIMP ( statut = "o", - typ = "R", - max = "**", - fr = "Moyenne", - ang = "Mean vector", - ), - - Correlation = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'Independent', 'Linear' ), - defaut = 'Linear', - max = 1, - fr = "Le type de correlation entre les variables", - ang = "Correlation between variables", - ), - - ), # Fin BLOC ImportanceSamplingSettings - - Result = FACT ( statut = "o", - min = 1, - max = "**", - - Probability = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', ), - defaut = 'yes', - max = 1, - fr = "Probabiblite", - ang = "Probability", - ), - - StandardDeviation = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', ), - defaut = 'yes', - max = 1, - fr = "Ecart type", - ang = "Standard deviation", - ), - - ConfidenceInterval = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'yes', - max = 1, - fr = "Ecart-type empirique", - ang = "Empirical standard deviation", - ), - - ConfidenceIntervalSettings = BLOC ( condition = " ConfidenceInterval in ( 'yes', ) ", - - Level = SIMP ( statut = "o", - typ = 'R', - defaut = 0.9, - max = 1, - val_min = 0.0, - val_max = 1.0, - fr = "Niveau de confiance", - ang = "Confidence level", - ), - - ), # Fin BLOC ConfidenceIntervalSettings - - VariationCoefficient = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'yes', - max = 1, - fr = "Coefficient de variation", - ang = "VariationCoefficient", - ), - - IterationNumber = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'yes', - max = 1, - fr = "Nombre d'iterations", - ang = "Iteration number", - ), - - ConvergenceGraph = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'yes', - max = 1, - fr = "Graphe de convergence", - ang = "Convergence graph", - ), - - ), # Fin FACT Result - - - - ), # Fin BLOC SimulationSettings - - - - AnalyticalSettings = BLOC ( condition = " Method in ( 'Analytical', ) ", - - Approximation = SIMP ( statut = "o", - typ = "TXM", - defaut = "FirstOrder", - into = ( "FirstOrder", "SecondOrder" ), - max = 1, - fr = "Approximation", - ang = "Approximation", - ), - - OptimizationAlgorithm = SIMP ( statut = "o", - typ = "TXM", - defaut = "Cobyla", - into = ( "Cobyla", "AbdoRackwitz" ), - max = 1, - fr = "Methode d'optimisation", - ang = "Optimisation method", - ), - - - PhysicalStartingPoint = SIMP ( statut = "f", - typ = "R", - max = "**", - fr = "Point de demarrage de l'algorithme iteratif", - ang = "Initial point for iterative process", - ), - - MaximumIterationsNumber = SIMP ( statut = "f", - typ = "I", - max = 1, - val_min = 1, - fr = "Nombre maximum d iterations", - ang = "Maximum number of iterations", - ), - - - MaximumAbsoluteError = SIMP ( statut = "f", - typ = "R", - max = 1, - defaut = 1E-4, - val_min = 0.0, - fr = "Distance maximum absolue entre 2 iterations successifs", - ang = "Absolute maximum distance between 2 successive iterates", - ), - - MaximumRelativeError = SIMP ( statut = "f", - typ = "R", - max = 1, - defaut = 1E-4, - val_min = 0.0, - fr = "Distance maximum relative entre 2 iterations successives", - ang = "Relative maximum distance between 2 successive iterates", - ), - - MaximumConstraintError = SIMP ( statut = "f", - typ = "R", - max = 1, - defaut = 1E-4, - val_min = 0.0, - fr = "Valeur maximum absolue de la fonction moins la valeur du niveau", - ang = "Maximum absolute value of the constraint function minus the level value", - ), - - ImportanceSampling = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'no', - max = 1, - fr = "Tirage d'importance au point de conception", - ang = "Importance sampling at design point", - ), - - FirstOrder = BLOC ( condition = " Approximation in ( 'FirstOrder', ) ", - - Probability = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', ), - defaut = 'yes', - max = 1, - fr = "Probabiblite", - ang = "Probability", - ), - - DesignPoint = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'yes', - max = 1, - fr = "Point de conception", - ang = "Design point", - ), - - HasoferReliabilityIndex = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'yes', - max = 1, - fr = "Indice de fiabilite", - ang = "Reliability index", - ), - - ImportanceFactor = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'no', - max = 1, - fr = "Facteur d'importance pour variable de sortie scalaire", - ang = "ImportanceFactor", - ), - - ImportanceFactorSettings = BLOC ( condition = " ImportanceFactor in ( 'yes', ) ", - - ImportanceFactorNumericalResults = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'yes', - max = 1, - fr = "Resultats numeriques", - ang = "NumericalResults", - ), - - ImportanceFactorGraphicalResults = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'no', - max = 1, - fr = "Resultats graphiques", - ang = "GraphicalResults", - ), - - ), # Fin BLOC ImportanceFactorSettings - - - SensitivityAnalysis = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'no', - max = 1, - fr = "Analyse de sensibilite", - ang = "Sensitivity analysis", - ), - - SensitivityAnalysisSettings = BLOC ( condition = " SensitivityAnalysis in ( 'yes', ) ", - - FORMEventProbabilitySensitivity = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'no', - max = 1, - fr = "Indice de fiabilite de Hasofer", - ang = "Hasofer reliability index", - ), - - FORMEventProbabilitySensitivitySettings = BLOC ( condition = " FORMEventProbabilitySensitivity in ( 'yes', ) ", - - FORMEventProbabilitySensitivityNumericalResults = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'yes', - max = 1, - fr = "Resultats numeriques", - ang = "NumericalResults", - ), - - FORMEventProbabilitySensitivityGraphicalResults = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'no', - max = 1, - fr = "Resultats graphiques", - ang = "GraphicalResults", - ), - - ), # Fin BLOC FORMEventProbabilitySensitivitySettings - - HasoferReliabilityIndexSensitivity = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'no', - max = 1, - fr = "Indice de fiabilite de Hasofer", - ang = "Hasofer reliability index", - ), - - HasoferReliabilityIndexSensitivitySettings = BLOC ( condition = " HasoferReliabilityIndexSensitivity in ( 'yes', ) ", - - HasoferReliabilityIndexSensitivityNumericalResults = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'yes', - max = 1, - fr = "Resultats numeriques", - ang = "NumericalResults", - ), - - HasoferReliabilityIndexSensitivityGraphicalResults = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'no', - max = 1, - fr = "Resultats graphiques", - ang = "GraphicalResults", - ), - - ), # Fin BLOC HasoferReliabilityIndexSettings - - ), # Fin BLOC SensitivityAnalysisSettings - - FunctionCallsNumber = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'no', - max = 1, - fr = "Nombre d'appels a la fonction", - ang = "Function calls number", - ), - - - ), # Fin BLOC FirstOrder - - - SecondOrder = BLOC ( condition = " Approximation in ( 'SecondOrder', ) ", - - - TvedtApproximation = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'no', - max = 1, - fr = "Approximation de Tvedt", - ang = "Tvedt approximation", - ), - - HohenBichlerApproximation = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'no', - max = 1, - fr = "Approximation de HohenBichler", - ang = "HohenBichler approximation", - ), - - BreitungApproximation = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'no', - max = 1, - fr = "Approximation de Breitung", - ang = "Breitung approximation", - ), - - DesignPoint = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'yes', - max = 1, - fr = "Point de conception", - ang = "Design point", - ), - - ImportanceFactor = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'no', - max = 1, - fr = "Facteur d'importance pour variable de sortie scalaire", - ang = "ImportanceFactor", - ), - - ImportanceFactorSettings = BLOC ( condition = " ImportanceFactor in ( 'yes', ) ", - - ImportanceFactorNumericalResults = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'yes', - max = 1, - fr = "Resultats numeriques", - ang = "NumericalResults", - ), - - ImportanceFactorGraphicalResults = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'no', - max = 1, - fr = "Resultats graphiques", - ang = "GraphicalResults", - ), - - ), # Fin BLOC ImportanceFactorSettings - - SensitivityAnalysis = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'no', - max = 1, - fr = "Analyse de sensibilite", - ang = "Sensitivity analysis", - ), - - SensitivityAnalysisSettings = BLOC ( condition = " SensitivityAnalysis in ( 'yes', ) ", - - HasoferReliabilityIndexSensitivity = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'no', - max = 1, - fr = "Indice de fiabilite de Hasofer", - ang = "Hasofer reliability index", - ), - - HasoferReliabilityIndexSensitivitySettings = BLOC ( condition = " HasoferReliabilityIndexSensitivity in ( 'yes', ) ", - - HasoferReliabilityIndexSensitivityNumericalResults = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'yes', - max = 1, - fr = "Resultats numeriques", - ang = "NumericalResults", - ), - - HasoferReliabilityIndexSensitivityGraphicalResults = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'no', - max = 1, - fr = "Resultats graphiques", - ang = "GraphicalResults", - ), - - ), # Fin BLOC HasoferReliabilityIndexSettings - - ), # Fin BLOC SensitivityAnalysisSettings - - FunctionCallsNumber = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'no', - max = 1, - fr = "Nombre d'appels a la fonction", - ang = "Function calls number", - ), - - - ), # Fin BLOC SecondOrder - - - - ), # Fin BLOC AnalyticalSettings - - - - ), # Fin BLOC ThresholdExceedence - - - -) # Fin PROC CRITERIA - - - - - - - diff --git a/OldCodes/Openturns_Study/OpenTURNS_Cata_Study_V4.py b/OldCodes/Openturns_Study/OpenTURNS_Cata_Study_V4.py deleted file mode 100644 index 05fdd221..00000000 --- a/OldCodes/Openturns_Study/OpenTURNS_Cata_Study_V4.py +++ /dev/null @@ -1,1630 +0,0 @@ -# -*- coding: utf-8 -*- - -# -------------------------------------------------- -# debut entete -# -------------------------------------------------- - -# Les commentaires du style # Ordre Catalogue MOTCLEF sont utilises pour -# retrouver l ordre du catalogue - - -#from Accas import ASSD, JDC_CATA, AU_MOINS_UN, PROC, SIMP, FACT, OPER, MACRO, BLOC, A_VALIDATOR -from Accas import * - -class loi ( ASSD ) : pass -class variable ( ASSD ) : pass - -import types -class Tuple: - def __init__(self,ntuple): - self.ntuple=ntuple - - def __convert__(self,valeur): - if type(valeur) == types.StringType: - return None - if len(valeur) != self.ntuple: - return None - return valeur - - def info(self): - return "Tuple de %s elements" % self.ntuple - - __repr__=info - __str__=info - - -#CONTEXT.debug = 1 -JdC = JDC_CATA ( code = 'OPENTURNS_STUDY', - execmodul = None, - regles = ( AU_MOINS_UN ( 'CRITERIA' ), AU_MOINS_UN ( 'MODEL' ), - A_CLASSER(('LOG','DETERMINISTICVARIABLE'),'VARIABLE'),) - ) # Fin JDC_CATA - -# -------------------------------------------------- -# fin entete -# -------------------------------------------------- - -LOG = PROC ( nom = "LOG", - op = None, - docu = "", - - DebugMessages = SIMP ( statut = "o", - typ = "TXM", - into = ( 'yes', 'no' ), - defaut = 'no', - fr = "Affichage du niveau de debug de la bibliotheque Open TURNS", - ang = "Open TURNS library debug level print", - ), - - WrapperMessages = SIMP ( statut = "o", - typ = "TXM", - into = ( 'yes', 'no' ), - defaut = 'no', - fr = "Affichage du niveau de wrapper de la bibliotheque Open TURNS", - ang = "Open TURNS library debug level print", - ), - - UserMessages = SIMP ( statut = "o", - typ = "TXM", - into = ( 'yes', 'no' ), - defaut = 'no', - fr = "Affichage du niveau de user de la bibliotheque Open TURNS", - ang = "Open TURNS library user level print", - ), - - InfoMessages = SIMP ( statut = "o", - typ = "TXM", - into = ( 'yes', 'no' ), - defaut = 'yes', - fr = "Affichage du niveau de info de la bibliotheque Open TURNS", - ang = "Open TURNS library info level print", - ), - - WarningMessages = SIMP ( statut = "o", - typ = "TXM", - into = ( 'yes', 'no' ), - defaut = 'yes', - fr = "Affichage du niveau de warning de la bibliotheque Open TURNS", - ang = "Open TURNS library warning level print", - ), - - ErrorMessages = SIMP ( statut = "o", - typ = "TXM", - into = ( 'yes', 'no' ), - defaut = 'yes', - fr = "Affichage du niveau de error de la bibliotheque Open TURNS", - ang = "Open TURNS library error level print", - ), - -) # Fin PROC LOG -# Ordre Catalogue LOG - - - - -#================================ -# 0. Definition du modele physique -#================================ - - -DETERMINISTICVARIABLE = OPER ( nom = "DETERMINISTICVARIABLE", - sd_prod = variable, - op = None, - fr = "Variable deterministe", - ang = "Deterministic variable", - - N = SIMP ( statut = 'o', - typ = "TXM", - fr = "Nom", - ang = "Name", - ), - - T = SIMP ( statut = 'o', - defaut = "in", - into = ( "in" , "out", ), - typ = "TXM", - fr = "Type", - ang = "Type", - ), - - R = SIMP ( statut = 'o', - defaut = 0, - typ = "I", - fr = "Rang", - ang = "Rank", - ), - -) # Fin OPER DETERMINISTICVARIABLE -# Ordre Catalogue DETERMINISTICVARIABLE - - -import opsOT -MODEL = MACRO ( nom = "MODEL", - op = None, - UIinfo = { "groupes" : ( "Gestion du travail", ) }, - fr = "Chargement du wrapper du modele physique", - ang = "Physical model wrapper load", - sd_prod = opsOT.INCLUDE, - op_init = opsOT.INCLUDE_context, - fichier_ini = 1, - - FileName = SIMP ( statut = "o", - typ = "TXM", - fr = "Nom du modele physique", - ang = "Physical model identifier", - ), - -) # Fin PROC MODEL -# Ordre Catalogue MODEL - - - - -VARIABLE = PROC ( nom = "VARIABLE", - op = None, - docu = "", - fr = "Variable probabiliste", - ang = "Probabilistic variable", - - ModelVariable = SIMP ( statut = "o", - typ = ( variable, ), - ), - - Distribution = SIMP ( statut = "o", - typ = ( loi, ), - ), - -) # Fin PROC VARIABLE -# Ordre Catalogue VARIABLE - - - - -#================================ -# 1. Definition des LOIS -#================================ - -# Nota : les variables de type OPER doivent etre en majuscules ! -# Nota : les variables de type OPER doivent etre de premier niveau (pas imbriquees dans un autre type) -DISTRIBUTION = OPER ( nom = "DISTRIBUTION", - sd_prod = loi, - op = 68, - fr = "Definitions des lois marginales utilisees par les variables d'entree", - - -#==== -# Type de distribution -#==== - - Kind = SIMP ( statut = "o", typ = "TXM", - into = ( "Beta", - "Exponential", - "Gamma", - "Geometric", - "Gumbel", - "Histogram", - "Logistic", - "LogNormal", - "MultiNomial", - "Normal", - "TruncatedNormal", - "Poisson", - "Student", - "Triangular", - "Uniform", - #"UserDefined", - "Weibull", - ), - fr = "Choix du type de la loi marginale", - ang = "1D marginal distribution", - ), - -#==== -# Definition des parametres selon le type de la loi -#==== - - BETA = BLOC ( condition = " Kind in ( 'Beta', ) ", - - Settings = SIMP ( statut = "o", - typ = "TXM", - max = 1, - into = ( "RT", "MuSigma" ), - defaut = "RT", - fr = "Parametrage de la loi beta", - ang = "Beta distribution parameter set", - ), - - RT_Parameters = BLOC ( condition = " Settings in ( 'RT', ) ", - - R = SIMP ( statut = "o", - typ = "R", - max = 1, - val_min = 0., - fr = "Parametre R de la loi", - ang = "R parameter", - ), - - # T > R - T = SIMP ( statut = "o", - typ = "R", - max = 1, - val_min = 0., - fr = "Parametre T de la loi | T > R", - ang = "T parameter | T > R", - ), - - ), # Fin BLOC RT_Parameters - - - MuSigma_Parameters = BLOC ( condition = " Settings in ( 'MuSigma', ) ", - - Mu = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Parametre Mu de la loi", - ang = "Mu parameter", - ), - - Sigma = SIMP ( statut = "o", - typ = "R", - max = 1, - val_min = 0., - fr = "Parametre Sigma de la loi | Sigma > 0", - ang = "Sigma parameter | Sigma > 0", - ), - - ), # Fin BLOC MuSigma_Parameters - - - A = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Parametre A de la loi", - ang = "A parameter", - ), - - # B > A - B = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Parametre B de la loi | B > A", - ang = "B parameter | B > A", - ), - - ), # Fin BLOC BETA - - - - EXPONENTIAL = BLOC ( condition = " Kind in ( 'Exponential', ) ", - - Lambda = SIMP ( statut = "o", - typ = "R", - max = 1, - val_min = 0., - fr = "Parametre Lambda | Lambda > 0", - ang = "Lambda parameter | Lambda > 0", - ), - - Gamma = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Parametre Gamma", - ang = "Gamma parameter", - ), - - ), # Fin BLOC EXPONENTIAL - - - - GAMMA = BLOC ( condition = " Kind in ( 'Gamma', ) ", - - Settings = SIMP ( statut = "o", - typ = "TXM", - max = 1, - into = ( "KLambda", "MuSigma" ), - defaut = "KLambda", - fr = "Parametrage de la loi gamma", - ang = "Gamma distribution parameter set", - ), - - KLambda_Parameters = BLOC ( condition = " Settings in ( 'KLambda', ) ", - - K = SIMP ( statut = "o", - typ = "R", - max = 1, - val_min = 0., - fr = "Parametre K de la loi | K > 0", - ang = "K parameter | K > 0", - ), - - Lambda = SIMP ( statut = "o", - typ = "R", - max = 1, - val_min = 0., - fr = "Parametre Lambda de la loi | Lambda > 0", - ang = "Lambda parameter | Lambda > 0", - ), - - ), # Fin BLOC KLambda_Parameters - - - MuSigma_Parameters = BLOC ( condition = " Settings in ( 'MuSigma', ) ", - - Mu = SIMP ( statut = "o", - typ = "R", - max = 1, - defaut = 0.0, - fr = "Parametre Mu de la loi", - ang = "Mu parameter", - ), - - Sigma = SIMP ( statut = "o", - typ = "R", - max = 1, - defaut = 1.0, - val_min = 0., - fr = "Parametre Sigma de la loi | Sigma > 0", - ang = "Sigma parameter | Sigma > 0", - ), - - ), # Fin BLOC MuSigma_Parameters - - Gamma = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Parametre Gamma", - ang = "Gamma parameter", - ), - - - ), # Fin BLOC GAMMA - - - - GEOMETRIC = BLOC ( condition = " Kind in ( 'Geometric', ) ", - - P = SIMP ( statut = "o", - typ = "R", - max = 1, - val_min = 0., - val_max = 1., - fr = "Parametre P | 0 < P < 1", - ang = "P parameter | 0 < P < 1", - ), - - ), # Fin BLOC GEOMETRIC - - - - GUMBEL = BLOC ( condition = " Kind in ( 'Gumbel', ) ", - - Settings = SIMP ( statut = "o", - typ = "TXM", - max = 1, - into = ( "AlphaBeta", "MuSigma" ), - defaut = "AlphaBeta", - fr = "Parametrage de la loi gumbel", - ang = "Gumbel distribution parameter set", - ), - - AlphaBeta_Parameters = BLOC ( condition = " Settings in ( 'AlphaBeta', ) ", - - Alpha = SIMP ( statut = "o", - typ = "R", - max = 1, - val_min = 0., - fr = "Parametre Alpha de la loi | Alpha > 0", - ang = "Alpha parameter | Alpha > 0", - ), - - Beta = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Parametre Beta de la loi", - ang = "Beta parameter", - ), - - ), # Fin BLOC AlphaBeta_Parameters - - - MuSigma_Parameters = BLOC ( condition = " Settings in ( 'MuSigma', ) ", - - Mu = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Parametre Mu de la loi", - ang = "Mu parameter", - ), - - Sigma = SIMP ( statut = "o", - typ = "R", - max = 1, - val_min = 0., - fr = "Parametre Sigma de la loi | Sigma > 0", - ang = "Sigma parameter | Sigma > 0", - ), - - ), # Fin BLOC MuSigma_Parameters - - ), # Fin BLOC GUMBEL - - - - HISTOGRAM = BLOC ( condition = " Kind in ( 'Histogram', ) ", - - First = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Premier point de la distribution", - ang = "First point", - ), - - # Il faut definir une collection de couples ( x,p ) - Values = SIMP ( statut = 'o', - typ = Tuple(2), - max = '**', - fr = "Liste de couples (point,probabilite)", - ang = "(point,probabiblity) couple list", - validators=VerifTypeTuple(('R','R')), - ), - - ), # Fin BLOC HISTOGRAM - - - - LOGNORMAL = BLOC ( condition = " Kind in ( 'LogNormal', ) ", - - Settings = SIMP ( statut = "o", - typ = "TXM", - max = 1, - into = ( "MuSigmaLog", "MuSigma", "MuSigmaOverMu" ), - defaut = "MuSigmaLog", - fr = "Parametrage de la loi lognormale", - ang = "Lognormal distribution parameter set", - ), - - MuSigma_Parameters = BLOC ( condition = " Settings in ( 'MuSigma', ) ", - - Mu = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Parametre Mu de la loi | Mu > Gamma", - ang = "Mu parameter | Mu > Gamma", - ), - - Sigma = SIMP ( statut = "o", - typ = "R", - max = 1, - val_min = 0., - fr = "Parametre Sigma de la loi | Sigma > 0", - ang = "Sigma parameter | Sigma > 0", - ), - - ), # Fin BLOC MuSigma_Parameters - - MuSigmaOverMu_Parameters = BLOC ( condition = " Settings in ( 'MuSigmaOverMu', ) ", - - Mu = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Parametre Mu de la loi | Mu > Gamma", - ang = "Mu parameter | Mu > Gamma", - ), - - SigmaOverMu = SIMP ( statut = "o", - typ = "R", - max = 1, - val_min = 0., - fr = "Parametre SigmaOverMu de la loi | SigmaOverMu > 0", - ang = "SigmaOverMu parameter | SigmaOverMu > 0", - ), - - ), # Fin BLOC MuSigmaOverMu_Parameters - - MuSigmaLog_Parameters = BLOC ( condition = " Settings in ( 'MuSigmaLog', ) ", - - MuLog = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Parametre Mu log de la loi", - ang = "Mu log parameter", - ), - - SigmaLog = SIMP ( statut = "o", - typ = "R", - max = 1, - val_min = 0., - fr = "Parametre Sigma log de la loi | SigmaLog > 0", - ang = "Sigma log parameter | SigmaLog > 0", - ), - - ), # Fin BLOC MuSigmaLog_Parameters - - Gamma = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Parametre Gamma", - ang = "Gamma parameter", - ), - - ), # Fin BLOC LOGNORMAL - - - - LOGISTIC = BLOC ( condition = " Kind in ( 'Logistic', ) ", - - Alpha = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Parametre Alpha de la loi", - ang = "Alpha parameter", - ), - - Beta = SIMP ( statut = "o", - typ = "R", - max = 1, - val_min = 0., - fr = "Parametre Beta de la loi | Beta > = 0", - ang = "Beta parameter | Beta > = 0", - ), - - ), # Fin BLOC LOGISTIC - - - - MULTINOMIAL = BLOC ( condition = " Kind in ( 'MultiNomial', ) ", - - N = SIMP ( statut = "o", - typ = "I", - max = 1, - fr = "Dimension de la loi", - ang = "Distribution dimension", - ), - - # Il faut un vecteur P de taille N - Mu = SIMP ( statut = 'o', - typ = 'R', - max = '**', - ), - - ), # Fin BLOC MULTINOMIAL - - - - NORMAL = BLOC ( condition = " Kind in ( 'Normal', ) ", - - Mu = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Parametre Mu de la loi", - ang = "Mu parameter", - ), - - Sigma = SIMP ( statut = "o", - typ = "R", - max = 1, - val_min = 0., - fr = "Parametre Sigma de la loi | Sigma > 0", - ang = "Sigma parameter | Sigma > 0", - ), - - ), # Fin BLOC NORMAL - - - - POISSON = BLOC ( condition = " Kind in ( 'Poisson', ) ", - - Lambda = SIMP ( statut = "o", - typ = "R", - max = 1, - val_min = 0., - fr = "Parametre Lambda de la loi | Lambda > 0", - ang = "Lambda parameter | Lambda > 0", - ), - - ), # Fin BLOC POISSON - - - - STUDENT = BLOC ( condition = " Kind in ( 'Student', ) ", - - Mu = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Parametre Mu de la loi", - ang = "Mu parameter", - ), - - Nu = SIMP ( statut = "o", - typ = "R", - max = 1, - val_min = 2., - fr = "Parametre Nu de la loi | V > = 2", - ang = "Nu parameter | V > = 2", - ), - - ), # Fin BLOC STUDENT - - - - TRIANGULAR = BLOC ( condition = " Kind in ( 'Triangular', ) ", - - A = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Borne inferieure de la loi | A < = M < = B", - ang = "Lower bound | A < = M < = B", - ), - - M = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Mode de la loi | A < = M < = B", - ang = "Mode | A < = M < = B", - ), - - B = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Borne superieure de la loi | A < = M < = B", - ang = "Upper bound | A < = M < = B", - ), - - ), # Fin BLOC TRIANGULAR - - - - TRUNCATEDNORMAL = BLOC ( condition = " Kind in ( 'TruncatedNormal', ) ", - - MuN = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Parametre Mu de la loi", - ang = "Mu parameter", - ), - - SigmaN = SIMP ( statut = "o", - typ = "R", - max = 1, - val_min = 0., - fr = "Parametre SigmaN de la loi | SigmaN > 0", - ang = "SigmaN parameter | SigmaN> 0", - ), - - A = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Borne inferieure de la loi | A < = B", - ang = "Lower bound | A < = B", - ), - - B = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Borne superieure de la loi | A < = B", - ang = "Upper bound | A < = B", - ), - - ), # Fin BLOC TRUNCATEDNORMAL - - - - UNIFORM = BLOC ( condition = " Kind in ( 'Uniform', ) ", - - A = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Borne inferieure de la loi | A < = B", - ang = "Lower bound | A < = B", - ), - - B = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Borne superieure de la loi | A < = B", - ang = "Upper bound | A < = B", - ), - - ), # Fin BLOC UNIFORM - - - - USERDEFINED = BLOC ( condition = " Kind in ( 'UserDefined', ) ", - - # Il faut definir une collection de couples ( x,p ) - Values = SIMP ( statut = 'o', - typ = 'R', - max = '**', - ), - - ), # Fin BLOC USERDEFINED - - - - WEIBULL = BLOC ( condition = " Kind in ( 'Weibull', ) ", - - Settings = SIMP ( statut = "o", - typ = "TXM", - max = 1, - into = ( "AlphaBeta", "MuSigma" ), - defaut = "AlphaBeta", - fr = "Parametrage de la loi weibull", - ang = "Weibull distribution parameter set", - ), - - AlphaBeta_Parameters = BLOC ( condition = " Settings in ( 'AlphaBeta', ) ", - - Alpha = SIMP ( statut = "o", - typ = "R", - max = 1, - val_min = 0., - fr = "Parametre Alpha de la loi | Alpha > 0", - ang = "Alpha parameter | Alpha > 0", - ), - - Beta = SIMP ( statut = "o", - typ = "R", - max = 1, - val_min = 0., - fr = "Parametre Beta de la loi | Beta > 0", - ang = "Beta parameter | Beta > 0", - ), - - ), # Fin BLOC AlphaBeta_Parameters - - - MuSigma_Parameters = BLOC ( condition = " Settings in ( 'MuSigma', ) ", - - Mu = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Parametre Mu de la loi", - ang = "Mu parameter", - ), - - Sigma = SIMP ( statut = "o", - typ = "R", - max = 1, - val_min = 0., - fr = "Parametre Sigma de la loi | Sigma > 0", - ang = "Sigma parameter | Sigma > 0", - ), - - ), # Fin BLOC MuSigma_Parameters - - Gamma = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Parametre Gamma", - ang = "Gamma parameter", - ), - - ), # Fin BLOC WEIBULL - -) # Fin OPER DISTRIBUTION -# Ordre Catalogue DISTRIBUTION - - - - - - - -#================================ -# 3. Definition de l'etude -#================================ - -# Nota : les variables de type PROC doivent etre en majuscules ! -CRITERIA = PROC ( nom = "CRITERIA", - op = None, - docu = "", - fr = "Mise en donnee pour le fichier de configuration de OPENTURNS.", - ang = "Writes the configuration file for OPENTURNS.", - - - - Type = SIMP ( statut = "o", - typ = "TXM", - into = ( "Min/Max", "Central Uncertainty", "Threshold Exceedence" ), - fr = "Type d'Analyse", - ang = "Analysis", - ), - - - - - - - - MinMax = BLOC ( condition = " Type in ( 'Min/Max', ) ", - - Method = SIMP ( statut = "o", - typ = "TXM", - into = ( "Experiment Plane", "Random Sampling" ), - fr = "Methode", - ang = "Method", - ), - # UC 3.1.1 - ExperimentPlaneSettings = BLOC ( condition = " Method in ( 'Experiment Plane', ) ", - - ExperimentPlane = SIMP ( statut = "o", - typ = "TXM", - into = ( "Axial", "Factorial", "Composite", ), - fr = "Methode", - ang = "Method", - ), - - Levels = SIMP ( statut = "o", - typ = "R", - val_min = 0.0, - max = '**', - fr = "Nombre de niveaux dans chaque direction", - ang = "Levels in each direction", - ), - - # Scaled Vector - UnitsPerDimension = SIMP ( statut = "o", - typ = "R", - max = '**', - fr = "Unite par dimension (autant que de variables declarees)", - ang = "Units per dimension (as much as declared variables)", - ), - - # Translation Vector - Center = SIMP ( statut = "o", - typ = "R", - max = '**', - fr = "Unite par dimension", - ang = "Units per dimension", - ), - - ), # Fin BLOC ExperimentPlaneSettings - - - - RandomSamplingSettings = BLOC ( condition = " Method in ( 'Random Sampling', ) ", - - PointsNumber = SIMP ( statut = "o", - typ = "I", - val_min = 1, - fr = "Nombre de points", - ang = "Points number", - ), - - ), # Fin BLOC RandomSamplingSettings - - Result = SIMP ( statut = "o", - typ = "TXM", - into = ( "Min/Max", ), - defaut = "Min/Max", - fr = "Le minimum et le maximum", - ang = "The min and max values", - ), - - - ), # Fin BLOC MinMax - - - - - CentralUncertainty = BLOC ( condition = " Type in ( 'Central Uncertainty', ) ", - - Method = SIMP ( statut = "o", - typ = "TXM", - into = ( "Taylor Variance Decomposition", "Random Sampling" ), - fr = "Methode", - ang = "Method", - ), - - # UC 3.2. - TaylorVarianceDecompositionSettings = BLOC ( condition = " Method in ( 'Taylor Variance Decomposition', ) ", - - Result = FACT ( statut = "o", - min = 1, - max = "**", - - MeanFirstOrder = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'yes', - max = 1, - fr = "Moyenne au premier ordre", - ang = "MeanFirstOrder", - ), - - StandardDeviationFirstOrder = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'yes', - max = 1, - fr = "Ecart-type au premier ordre", - ang = "StandardDeviationFirstOrder", - ), - - MeanSecondOrder = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'yes', - max = 1, - fr = "Moyenne au second ordre", - ang = "MeanSecondOrder", - ), - - ImportanceFactor = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'no', - max = 1, - fr = "Facteur d'importance pour variable de sortie scalaire", - ang = "ImportanceFactor", - ), - - ImportanceFactorSettings = BLOC ( condition = " ImportanceFactor in ( 'yes', ) ", - - NumericalResults = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'yes', - max = 1, - fr = "Resultats numeriques", - ang = "NumericalResults", - ), - - GraphicalResults = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'no', - max = 1, - fr = "Resultats graphiques", - ang = "GraphicalResults", - ), - - ), # Fin BLOC ImportanceFactorSettings - - ), # Fin FACT Result - - ), # Fin BLOC TaylorVarianceDecompositionSettings - - - - RandomSamplingSettings = BLOC ( condition = " Method in ( 'Random Sampling', ) ", - - PointsNumber = SIMP ( statut = "o", - typ = "I", - val_min = 1, - fr = "Nombre de points", - ang = "Points number", - ), - - Result = FACT ( statut = "o", - min = 1, - max = "**", - - EmpiricalMean = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'yes', - max = 1, - fr = "Moyenne empirique", - ang = "Empirical mean", - ), - - EmpiricalStandardDeviation = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'yes', - max = 1, - fr = "Ecart-type empirique", - ang = "Empirical standard deviation", - ), - - EmpiricalQuantile = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'yes', - max = 1, - fr = "Quantile empirique", - ang = "Empirical quantile", - ), - - EmpiricalQuantileSettings = BLOC ( condition = " EmpiricalQuantile in ( 'yes', ) ", - - EmpiricalQuantile_Order = SIMP ( statut = "o", - typ = 'R', - defaut = 0.95, - max = 1, - val_min = 0.0, - val_max = 1.0, - fr = "Ordre du quantile empirique", - ang = "Empirical quantile order", - ), - - ), # Fin BLOC EmpiricalQuantileSettings - - AnalysedCorrelations = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'no', - max = 1, - fr = "Correlations analysees", - ang = "Analysed correlations", - ), - - KernelSmoothing = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'no', - max = 1, - fr = "Kernel smoothing de l'echantillon", - ang = "Kernel smoothing of the sample", - ), - - ), # Fin FACT Result - - ), # Fin BLOC RandomSamplingSettings - - ), # Fin BLOC CentralUncertainty - - - - - ThresholdExceedence = BLOC ( condition = " Type in ( 'Threshold Exceedence', ) ", - - Event = FACT ( statut = "o", - min = 1, - max = 1, - - Threshold = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Le seuil de defaillance", - ang = "Failure threshold", - ), - - ComparisonOperator = SIMP ( statut = "o", - typ = "TXM", - max = 1, - into = ( "Less", "LessOrEqual", "Equal", "GreaterOrEqual", "Greater" ), - fr = "Que faut-il ne pas depasser : un maximum ou un minimum", - ang = "What is the failure threshold : maximum or minimum", - ), - ), # Fin FACT Event - - - Method = SIMP ( statut = "o", - typ = "TXM", - into = ( "Simulation", "Analytical" ), - fr = "Methode", - ang = "Method", - ), - - SimulationSettings = BLOC ( condition = " Method in ( 'Simulation', ) ", - - Algorithm = SIMP ( statut = "o", - typ = "TXM", - into = ( "MonteCarlo", "LHS", "ImportanceSampling" ), - fr = "Algorithme de simulation", - ang = "Simulation algorithm", - ), - - - RandomGenerator = FACT ( statut = "o", - min = 1, - max = 1, - - SeedToBeSet = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'no', - max = 1, - fr = "La racine du generateur aleatoire doit-elle etre positionnee ?", - ang = "Does the random generator seed need to be set ?", - ), - - SeedSettings = BLOC ( condition = " SeedToBeSet in ( 'yes', ) ", - - RandomGeneratorSeed = SIMP ( statut = "o", - typ = "I", - max = 1, - fr = "Racine du generateur aleatoire", - ang = "Random generator seed", - ), - - ), # Fin BLOC SeedSettings - - ), # Fin FACT RandomGenerator - - - BlockSize = SIMP ( statut = "f", - typ = "I", - max = 1, - val_min = 1, - defaut = 1, - fr = "Nombre de calculs realises en bloc", - ang = "Number of computations as a block", - ), - - MaximumOuterSampling = SIMP ( statut = "o", - typ = "I", - max = 1, - val_min = 1, - fr = "Maximum d'iterations externes", - ang = "Maximum outer Sampling value", - ), - - MaximumCoefficientOfVariation = SIMP ( statut = "f", - typ = "R", - max = 1, - defaut = 0.1, - val_min = 0.0, - fr = " maximum ...", - ang = "Absolute maximum ...." - ), - - ImportanceSamplingSettings = BLOC ( condition = " Algorithm in ( 'ImportanceSampling', ) ", - - MeanVector = SIMP ( statut = "o", - typ = "R", - max = "**", - fr = "Moyenne", - ang = "Mean vector", - ), - - Correlation = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'Independent', 'Linear' ), - defaut = 'Linear', - max = 1, - fr = "Le type de correlation entre les variables", - ang = "Correlation between variables", - ), - - ), # Fin BLOC ImportanceSamplingSettings - - Result = FACT ( statut = "o", - min = 1, - max = "**", - - Probability = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', ), - defaut = 'yes', - max = 1, - fr = "Probabiblite", - ang = "Probability", - ), - - StandardDeviation = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', ), - defaut = 'yes', - max = 1, - fr = "Ecart type", - ang = "Standard deviation", - ), - - ConfidenceInterval = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'yes', - max = 1, - fr = "Ecart-type empirique", - ang = "Empirical standard deviation", - ), - - ConfidenceIntervalSettings = BLOC ( condition = " ConfidenceInterval in ( 'yes', ) ", - - Level = SIMP ( statut = "o", - typ = 'R', - defaut = 0.9, - max = 1, - val_min = 0.0, - val_max = 1.0, - fr = "Niveau de confiance", - ang = "Confidence level", - ), - - ), # Fin BLOC ConfidenceIntervalSettings - - VariationCoefficient = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'yes', - max = 1, - fr = "Coefficient de variation", - ang = "VariationCoefficient", - ), - - IterationNumber = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'yes', - max = 1, - fr = "Nombre d'iterations", - ang = "Iteration number", - ), - - ConvergenceGraph = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'yes', - max = 1, - fr = "Graphe de convergence", - ang = "Convergence graph", - ), - - ), # Fin FACT Result - - - - ), # Fin BLOC SimulationSettings - - - - AnalyticalSettings = BLOC ( condition = " Method in ( 'Analytical', ) ", - - Approximation = SIMP ( statut = "o", - typ = "TXM", - defaut = "FirstOrder", - into = ( "FirstOrder", "SecondOrder" ), - max = 1, - fr = "Approximation", - ang = "Approximation", - ), - - OptimizationAlgorithm = SIMP ( statut = "o", - typ = "TXM", - defaut = "Cobyla", - into = ( "Cobyla", "AbdoRackwitz" ), - max = 1, - fr = "Methode d'optimisation", - ang = "Optimisation method", - ), - - - PhysicalStartingPoint = SIMP ( statut = "f", - typ = "R", - max = "**", - fr = "Point de demarrage de l'algorithme iteratif", - ang = "Initial point for iterative process", - ), - - MaximumIterationsNumber = SIMP ( statut = "f", - typ = "I", - max = 1, - val_min = 1, - fr = "Nombre maximum d iterations", - ang = "Maximum number of iterations", - ), - - - MaximumAbsoluteError = SIMP ( statut = "f", - typ = "R", - max = 1, - defaut = 1E-4, - val_min = 0.0, - fr = "Distance maximum absolue entre 2 iterations successifs", - ang = "Absolute maximum distance between 2 successive iterates", - ), - - MaximumRelativeError = SIMP ( statut = "f", - typ = "R", - max = 1, - defaut = 1E-4, - val_min = 0.0, - fr = "Distance maximum relative entre 2 iterations successives", - ang = "Relative maximum distance between 2 successive iterates", - ), - - MaximumConstraintError = SIMP ( statut = "f", - typ = "R", - max = 1, - defaut = 1E-4, - val_min = 0.0, - fr = "Valeur maximum absolue de la fonction moins la valeur du niveau", - ang = "Maximum absolute value of the constraint function minus the level value", - ), - - ImportanceSampling = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'no', - max = 1, - fr = "Tirage d'importance au point de conception", - ang = "Importance sampling at design point", - ), - - FirstOrder = BLOC ( condition = " Approximation in ( 'FirstOrder', ) ", - - Probability = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', ), - defaut = 'yes', - max = 1, - fr = "Probabiblite", - ang = "Probability", - ), - - DesignPoint = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'yes', - max = 1, - fr = "Point de conception", - ang = "Design point", - ), - - HasoferReliabilityIndex = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'yes', - max = 1, - fr = "Indice de fiabilite", - ang = "Reliability index", - ), - - ImportanceFactor = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'no', - max = 1, - fr = "Facteur d'importance pour variable de sortie scalaire", - ang = "ImportanceFactor", - ), - - ImportanceFactorSettings = BLOC ( condition = " ImportanceFactor in ( 'yes', ) ", - - ImportanceFactorNumericalResults = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'yes', - max = 1, - fr = "Resultats numeriques", - ang = "NumericalResults", - ), - - ImportanceFactorGraphicalResults = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'no', - max = 1, - fr = "Resultats graphiques", - ang = "GraphicalResults", - ), - - ), # Fin BLOC ImportanceFactorSettings - - - SensitivityAnalysis = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'no', - max = 1, - fr = "Analyse de sensibilite", - ang = "Sensitivity analysis", - ), - - SensitivityAnalysisSettings = BLOC ( condition = " SensitivityAnalysis in ( 'yes', ) ", - - FORMEventProbabilitySensitivity = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'no', - max = 1, - fr = "Indice de fiabilite de Hasofer", - ang = "Hasofer reliability index", - ), - - FORMEventProbabilitySensitivitySettings = BLOC ( condition = " FORMEventProbabilitySensitivity in ( 'yes', ) ", - - FORMEventProbabilitySensitivityNumericalResults = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'yes', - max = 1, - fr = "Resultats numeriques", - ang = "NumericalResults", - ), - - FORMEventProbabilitySensitivityGraphicalResults = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'no', - max = 1, - fr = "Resultats graphiques", - ang = "GraphicalResults", - ), - - ), # Fin BLOC FORMEventProbabilitySensitivitySettings - - HasoferReliabilityIndexSensitivity = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'no', - max = 1, - fr = "Indice de fiabilite de Hasofer", - ang = "Hasofer reliability index", - ), - - HasoferReliabilityIndexSensitivitySettings = BLOC ( condition = " HasoferReliabilityIndexSensitivity in ( 'yes', ) ", - - HasoferReliabilityIndexSensitivityNumericalResults = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'yes', - max = 1, - fr = "Resultats numeriques", - ang = "NumericalResults", - ), - - HasoferReliabilityIndexSensitivityGraphicalResults = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'no', - max = 1, - fr = "Resultats graphiques", - ang = "GraphicalResults", - ), - - ), # Fin BLOC HasoferReliabilityIndexSettings - - ), # Fin BLOC SensitivityAnalysisSettings - - FunctionCallsNumber = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'no', - max = 1, - fr = "Nombre d'appels a la fonction", - ang = "Function calls number", - ), - - - ), # Fin BLOC FirstOrder - - - SecondOrder = BLOC ( condition = " Approximation in ( 'SecondOrder', ) ", - - - TvedtApproximation = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'no', - max = 1, - fr = "Approximation de Tvedt", - ang = "Tvedt approximation", - ), - - HohenBichlerApproximation = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'no', - max = 1, - fr = "Approximation de HohenBichler", - ang = "HohenBichler approximation", - ), - - BreitungApproximation = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'no', - max = 1, - fr = "Approximation de Breitung", - ang = "Breitung approximation", - ), - - DesignPoint = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'yes', - max = 1, - fr = "Point de conception", - ang = "Design point", - ), - - ImportanceFactor = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'no', - max = 1, - fr = "Facteur d'importance pour variable de sortie scalaire", - ang = "ImportanceFactor", - ), - - ImportanceFactorSettings = BLOC ( condition = " ImportanceFactor in ( 'yes', ) ", - - ImportanceFactorNumericalResults = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'yes', - max = 1, - fr = "Resultats numeriques", - ang = "NumericalResults", - ), - - ImportanceFactorGraphicalResults = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'no', - max = 1, - fr = "Resultats graphiques", - ang = "GraphicalResults", - ), - - ), # Fin BLOC ImportanceFactorSettings - - SensitivityAnalysis = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'no', - max = 1, - fr = "Analyse de sensibilite", - ang = "Sensitivity analysis", - ), - - SensitivityAnalysisSettings = BLOC ( condition = " SensitivityAnalysis in ( 'yes', ) ", - - HasoferReliabilityIndexSensitivity = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'no', - max = 1, - fr = "Indice de fiabilite de Hasofer", - ang = "Hasofer reliability index", - ), - - HasoferReliabilityIndexSensitivitySettings = BLOC ( condition = " HasoferReliabilityIndexSensitivity in ( 'yes', ) ", - - HasoferReliabilityIndexSensitivityNumericalResults = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'yes', - max = 1, - fr = "Resultats numeriques", - ang = "NumericalResults", - ), - - HasoferReliabilityIndexSensitivityGraphicalResults = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'no', - max = 1, - fr = "Resultats graphiques", - ang = "GraphicalResults", - ), - - ), # Fin BLOC HasoferReliabilityIndexSettings - - ), # Fin BLOC SensitivityAnalysisSettings - - FunctionCallsNumber = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'no', - max = 1, - fr = "Nombre d'appels a la fonction", - ang = "Function calls number", - ), - - - ), # Fin BLOC SecondOrder - - - - ), # Fin BLOC AnalyticalSettings - - - - ), # Fin BLOC ThresholdExceedence - - - -) # Fin PROC CRITERIA -# Ordre Catalogue CRITERIA - - - - - - - diff --git a/OldCodes/Openturns_Study/OpenTURNS_Cata_Study_V5.py b/OldCodes/Openturns_Study/OpenTURNS_Cata_Study_V5.py deleted file mode 100644 index 89ce0150..00000000 --- a/OldCodes/Openturns_Study/OpenTURNS_Cata_Study_V5.py +++ /dev/null @@ -1,1528 +0,0 @@ -# -*- coding: utf-8 -*- - -# -------------------------------------------------- -# debut entete -# -------------------------------------------------- - -#from Accas import ASSD, JDC_CATA, AU_MOINS_UN, PROC, SIMP, FACT, OPER, MACRO, BLOC, A_VALIDATOR -from Accas import * - -class loi ( ASSD ) : pass -class variable ( ASSD ) : pass - -import types -class Tuple: - def __init__(self,ntuple): - self.ntuple=ntuple - - def __convert__(self,valeur): - if type(valeur) == types.StringType: - return None - if len(valeur) != self.ntuple: - return None - return valeur - - def info(self): - return "Tuple de %s elements" % self.ntuple - - __repr__=info - __str__=info - - -#CONTEXT.debug = 1 -JdC = JDC_CATA ( code = 'OPENTURNS_STUDY', - execmodul = None, - regles = ( AU_MOINS_UN ( 'CRITERIA' ), - AU_MOINS_UN ( 'MODEL' ), - AVANT ( ('DISTRIBUTION', 'MODEL'), 'VARIABLE' ), -# A_CLASSER ( 'VARIABLE', ) 'CORRELATION' ), -# A_CLASSER ( 'VARIABLE', 'CRITERIA' ), -# A_CLASSER ( 'CORRELATION', 'CRITERIA' ), - ), - ) # Fin JDC_CATA - - -# -------------------------------------------------- -# fin entete -# -------------------------------------------------- - -LOG = PROC ( nom = "LOG", - op = None, - docu = "", - - DebugMessages = SIMP ( statut = "o", - typ = "TXM", - into = ( 'yes', 'no' ), - defaut = 'no', - fr = "Affichage du niveau de debug de la bibliotheque Open TURNS", - ang = "Open TURNS library debug level print", - ), - - WrapperMessages = SIMP ( statut = "o", - typ = "TXM", - into = ( 'yes', 'no' ), - defaut = 'no', - fr = "Affichage du niveau de wrapper de la bibliotheque Open TURNS", - ang = "Open TURNS library debug level print", - ), - - UserMessages = SIMP ( statut = "o", - typ = "TXM", - into = ( 'yes', 'no' ), - defaut = 'no', - fr = "Affichage du niveau de user de la bibliotheque Open TURNS", - ang = "Open TURNS library user level print", - ), - - InfoMessages = SIMP ( statut = "o", - typ = "TXM", - into = ( 'yes', 'no' ), - defaut = 'yes', - fr = "Affichage du niveau de info de la bibliotheque Open TURNS", - ang = "Open TURNS library info level print", - ), - - WarningMessages = SIMP ( statut = "o", - typ = "TXM", - into = ( 'yes', 'no' ), - defaut = 'yes', - fr = "Affichage du niveau de warning de la bibliotheque Open TURNS", - ang = "Open TURNS library warning level print", - ), - - ErrorMessages = SIMP ( statut = "o", - typ = "TXM", - into = ( 'yes', 'no' ), - defaut = 'yes', - fr = "Affichage du niveau de error de la bibliotheque Open TURNS", - ang = "Open TURNS library error level print", - ), - -) # Fin PROC LOG -# Ordre Catalogue LOG - - - -TOTO = PROC( nom='toto', op = None, docu = "", - fr = "toto", ang = "toto", - - TITI=SIMP(statut = 'o', - typ = "TXM", - fr = "Nom", - ang = "Name", - ), -) -# Ordre Catalogue TOTO - - - -#================================ -# 0. Definition du modele physique -#================================ - - -DETERMINISTICVARIABLE = OPER ( nom = "DETERMINISTICVARIABLE", - sd_prod = variable, - op = None, - fr = "Variable deterministe", - ang = "Deterministic variable", - - N = SIMP ( statut = 'o', - typ = "TXM", - fr = "Nom", - ang = "Name", - ), - - T = SIMP ( statut = 'o', - defaut = "in", - into = ( "in" , "out", ), - typ = "TXM", - fr = "Type", - ang = "Type", - ), - - R = SIMP ( statut = 'o', - defaut = 0, - typ = "I", - fr = "Rang", - ang = "Rank", - ), - -) # Fin OPER DETERMINISTICVARIABLE -# Ordre Catalogue DETERMINISTICVARIABLE - - - - -import opsOT -MODEL = MACRO ( nom = "MODEL", - op = None, - UIinfo = { "groupes" : ( "Gestion du travail", ) }, - fr = "Chargement du wrapper du modele physique", - ang = "Physical model wrapper load", - sd_prod = opsOT.INCLUDE, - op_init = opsOT.INCLUDE_context, - fichier_ini = 1, - - FileName = SIMP ( statut = "o", - typ = "Fichier", - fr = "Nom du modele physique", - ang = "Physical model identifier", - ), - -) # Fin PROC MODEL -# Ordre Catalogue MODEL - - - - -VARIABLE = PROC ( nom = "VARIABLE", - op = None, - docu = "", - fr = "Variable probabiliste", - ang = "Probabilistic variable", - - ModelVariable = SIMP ( statut = "o", - typ = ( variable, ), - ), - - Distribution = SIMP ( statut = "o", - typ = ( loi, ), - ), - -) # Fin PROC VARIABLE -# Ordre Catalogue VARIABLE - - -CORRELATION = PROC ( nom = 'CORRELATION', - op = None, - docu = "", - fr = "Correlation entre variables", - ang = "Variable correlation", - - Copula = SIMP ( statut = "o", - typ = "TXM", - into = ( "Independent", ), - defaut = "Independent", - fr = "Type de la copule", - ang = "Copula kind", - ), - - -) # Fin PROC CORRELATION -# Ordre Catalogue CORRELATION - - -#================================ -# 1. Definition des LOIS -#================================ - -# Nota : les variables de type OPER doivent etre en majuscules ! -# Nota : les variables de type OPER doivent etre de premier niveau (pas imbriquees dans un autre type) -DISTRIBUTION = OPER ( nom = "DISTRIBUTION", - sd_prod = loi, - op = 68, - fr = "Definitions des lois marginales utilisees par les variables d'entree", - - -#==== -# Type de distribution -#==== - - Kind = SIMP ( statut = "o", typ = "TXM", - into = ( "Beta", - "Exponential", - "Gamma", - "Geometric", - "Gumbel", - "Histogram", - "Logistic", - "LogNormal", - "MultiNomial", - "Normal", - "Poisson", - "Student", - "Triangular", - "TruncatedNormal", - "Uniform", - #"UserDefined", - "Weibull", - ), - fr = "Choix du type de la loi marginale", - ang = "1D marginal distribution", - ), - -#==== -# Definition des parametres selon le type de la loi -#==== - - BETA = BLOC ( condition = " Kind in ( 'Beta', ) ", - - Settings = SIMP ( statut = "o", - typ = "TXM", - max = 1, - into = ( "RT", "MuSigma" ), - defaut = "RT", - fr = "Parametrage de la loi beta", - ang = "Beta distribution parameter set", - ), - - RT_Parameters = BLOC ( condition = " Settings in ( 'RT', ) ", - - R = SIMP ( statut = "o", - typ = "R", - max = 1, - val_min = 0., - fr = "Parametre R de la loi", - ang = "R parameter", - ), - - # T > R - T = SIMP ( statut = "o", - typ = "R", - max = 1, - val_min = 0., - fr = "Parametre T de la loi | T > R", - ang = "T parameter | T > R", - ), - - ), # Fin BLOC RT_Parameters - - - MuSigma_Parameters = BLOC ( condition = " Settings in ( 'MuSigma', ) ", - - Mu = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Parametre Mu de la loi", - ang = "Mu parameter", - ), - - Sigma = SIMP ( statut = "o", - typ = "R", - max = 1, - val_min = 0., - fr = "Parametre Sigma de la loi | Sigma > 0", - ang = "Sigma parameter | Sigma > 0", - ), - - ), # Fin BLOC MuSigma_Parameters - - - A = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Parametre A de la loi", - ang = "A parameter", - ), - - # B > A - B = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Parametre B de la loi | B > A", - ang = "B parameter | B > A", - ), - - ), # Fin BLOC BETA - - - - EXPONENTIAL = BLOC ( condition = " Kind in ( 'Exponential', ) ", - - Lambda = SIMP ( statut = "o", - typ = "R", - max = 1, - val_min = 0., - fr = "Parametre Lambda | Lambda > 0", - ang = "Lambda parameter | Lambda > 0", - ), - - Gamma = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Parametre Gamma", - ang = "Gamma parameter", - ), - - ), # Fin BLOC EXPONENTIAL - - - - GAMMA = BLOC ( condition = " Kind in ( 'Gamma', ) ", - - Settings = SIMP ( statut = "o", - typ = "TXM", - max = 1, - into = ( "KLambda", "MuSigma" ), - defaut = "KLambda", - fr = "Parametrage de la loi gamma", - ang = "Gamma distribution parameter set", - ), - - KLambda_Parameters = BLOC ( condition = " Settings in ( 'KLambda', ) ", - - K = SIMP ( statut = "o", - typ = "R", - max = 1, - val_min = 0., - fr = "Parametre K de la loi | K > 0", - ang = "K parameter | K > 0", - ), - - Lambda = SIMP ( statut = "o", - typ = "R", - max = 1, - val_min = 0., - fr = "Parametre Lambda de la loi | Lambda > 0", - ang = "Lambda parameter | Lambda > 0", - ), - - ), # Fin BLOC KLambda_Parameters - - - MuSigma_Parameters = BLOC ( condition = " Settings in ( 'MuSigma', ) ", - - Mu = SIMP ( statut = "o", - typ = "R", - max = 1, - defaut = 0.0, - fr = "Parametre Mu de la loi", - ang = "Mu parameter", - ), - - Sigma = SIMP ( statut = "o", - typ = "R", - max = 1, - defaut = 1.0, - val_min = 0., - fr = "Parametre Sigma de la loi | Sigma > 0", - ang = "Sigma parameter | Sigma > 0", - ), - - ), # Fin BLOC MuSigma_Parameters - - Gamma = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Parametre Gamma", - ang = "Gamma parameter", - ), - - - ), # Fin BLOC GAMMA - - - - GEOMETRIC = BLOC ( condition = " Kind in ( 'Geometric', ) ", - - P = SIMP ( statut = "o", - typ = "R", - max = 1, - val_min = 0., - val_max = 1., - fr = "Parametre P | 0 < P < 1", - ang = "P parameter | 0 < P < 1", - ), - - ), # Fin BLOC GEOMETRIC - - - - GUMBEL = BLOC ( condition = " Kind in ( 'Gumbel', ) ", - - Settings = SIMP ( statut = "o", - typ = "TXM", - max = 1, - into = ( "AlphaBeta", "MuSigma" ), - defaut = "AlphaBeta", - fr = "Parametrage de la loi gumbel", - ang = "Gumbel distribution parameter set", - ), - - AlphaBeta_Parameters = BLOC ( condition = " Settings in ( 'AlphaBeta', ) ", - - Alpha = SIMP ( statut = "o", - typ = "R", - max = 1, - val_min = 0., - fr = "Parametre Alpha de la loi | Alpha > 0", - ang = "Alpha parameter | Alpha > 0", - ), - - Beta = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Parametre Beta de la loi", - ang = "Beta parameter", - ), - - ), # Fin BLOC AlphaBeta_Parameters - - - MuSigma_Parameters = BLOC ( condition = " Settings in ( 'MuSigma', ) ", - - Mu = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Parametre Mu de la loi", - ang = "Mu parameter", - ), - - Sigma = SIMP ( statut = "o", - typ = "R", - max = 1, - val_min = 0., - fr = "Parametre Sigma de la loi | Sigma > 0", - ang = "Sigma parameter | Sigma > 0", - ), - - ), # Fin BLOC MuSigma_Parameters - - ), # Fin BLOC GUMBEL - - - - HISTOGRAM = BLOC ( condition = " Kind in ( 'Histogram', ) ", - - First = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Premier point de la distribution", - ang = "First point", - ), - - # Il faut definir une collection de couples ( x,p ) - Values = SIMP ( statut = 'o', - typ = Tuple(2), - max = '**', - fr = "Liste de couples (point,probabilite)", - ang = "(point,probabiblity) couple list", - validators=VerifTypeTuple(('R','R')), - ), - - ), # Fin BLOC HISTOGRAM - - - - LOGNORMAL = BLOC ( condition = " Kind in ( 'LogNormal', ) ", - - Settings = SIMP ( statut = "o", - typ = "TXM", - max = 1, - into = ( "MuSigmaLog", "MuSigma", "MuSigmaOverMu" ), - defaut = "MuSigmaLog", - fr = "Parametrage de la loi lognormale", - ang = "Lognormal distribution parameter set", - ), - - MuSigma_Parameters = BLOC ( condition = " Settings in ( 'MuSigma', ) ", - - Mu = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Parametre Mu de la loi | Mu > Gamma", - ang = "Mu parameter | Mu > Gamma", - ), - - Sigma = SIMP ( statut = "o", - typ = "R", - max = 1, - val_min = 0., - fr = "Parametre Sigma de la loi | Sigma > 0", - ang = "Sigma parameter | Sigma > 0", - ), - - ), # Fin BLOC MuSigma_Parameters - - MuSigmaOverMu_Parameters = BLOC ( condition = " Settings in ( 'MuSigmaOverMu', ) ", - - Mu = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Parametre Mu de la loi | Mu > Gamma", - ang = "Mu parameter | Mu > Gamma", - ), - - SigmaOverMu = SIMP ( statut = "o", - typ = "R", - max = 1, - val_min = 0., - fr = "Parametre SigmaOverMu de la loi | SigmaOverMu > 0", - ang = "SigmaOverMu parameter | SigmaOverMu > 0", - ), - - ), # Fin BLOC MuSigmaOverMu_Parameters - - MuSigmaLog_Parameters = BLOC ( condition = " Settings in ( 'MuSigmaLog', ) ", - - MuLog = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Parametre Mu log de la loi", - ang = "Mu log parameter", - ), - - SigmaLog = SIMP ( statut = "o", - typ = "R", - max = 1, - val_min = 0., - fr = "Parametre Sigma log de la loi | SigmaLog > 0", - ang = "Sigma log parameter | SigmaLog > 0", - ), - - ), # Fin BLOC MuSigmaLog_Parameters - - Gamma = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Parametre Gamma", - ang = "Gamma parameter", - ), - - ), # Fin BLOC LOGNORMAL - - - - LOGISTIC = BLOC ( condition = " Kind in ( 'Logistic', ) ", - - Alpha = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Parametre Alpha de la loi", - ang = "Alpha parameter", - ), - - Beta = SIMP ( statut = "o", - typ = "R", - max = 1, - val_min = 0., - fr = "Parametre Beta de la loi | Beta > = 0", - ang = "Beta parameter | Beta > = 0", - ), - - ), # Fin BLOC LOGISTIC - - - - MULTINOMIAL = BLOC ( condition = " Kind in ( 'MultiNomial', ) ", - - N = SIMP ( statut = "o", - typ = "I", - max = 1, - fr = "Dimension de la loi", - ang = "Distribution dimension", - ), - - # Il faut un vecteur P de taille N - Mu = SIMP ( statut = 'o', - typ = 'R', - max = '**', - ), - - ), # Fin BLOC MULTINOMIAL - - - - NORMAL = BLOC ( condition = " Kind in ( 'Normal', ) ", - - Mu = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Parametre Mu de la loi", - ang = "Mu parameter", - ), - - Sigma = SIMP ( statut = "o", - typ = "R", - max = 1, - val_min = 0., - fr = "Parametre Sigma de la loi | Sigma > 0", - ang = "Sigma parameter | Sigma > 0", - ), - - ), # Fin BLOC NORMAL - - - - POISSON = BLOC ( condition = " Kind in ( 'Poisson', ) ", - - Lambda = SIMP ( statut = "o", - typ = "R", - max = 1, - val_min = 0., - fr = "Parametre Lambda de la loi | Lambda > 0", - ang = "Lambda parameter | Lambda > 0", - ), - - ), # Fin BLOC POISSON - - - - STUDENT = BLOC ( condition = " Kind in ( 'Student', ) ", - - Mu = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Parametre Mu de la loi", - ang = "Mu parameter", - ), - - Nu = SIMP ( statut = "o", - typ = "R", - max = 1, - val_min = 2., - fr = "Parametre Nu de la loi | V > = 2", - ang = "Nu parameter | V > = 2", - ), - - ), # Fin BLOC STUDENT - - - - TRIANGULAR = BLOC ( condition = " Kind in ( 'Triangular', ) ", - - A = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Borne inferieure de la loi | A < = M < = B", - ang = "Lower bound | A < = M < = B", - ), - - M = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Mode de la loi | A < = M < = B", - ang = "Mode | A < = M < = B", - ), - - B = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Borne superieure de la loi | A < = M < = B", - ang = "Upper bound | A < = M < = B", - ), - - ), # Fin BLOC TRIANGULAR - - - - TRUNCATEDNORMAL = BLOC ( condition = " Kind in ( 'TruncatedNormal', ) ", - - MuN = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Parametre Mu de la loi", - ang = "Mu parameter", - ), - - SigmaN = SIMP ( statut = "o", - typ = "R", - max = 1, - val_min = 0., - fr = "Parametre SigmaN de la loi | SigmaN > 0", - ang = "SigmaN parameter | SigmaN> 0", - ), - - A = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Borne inferieure de la loi | A < = B", - ang = "Lower bound | A < = B", - ), - - B = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Borne superieure de la loi | A < = B", - ang = "Upper bound | A < = B", - ), - - ), # Fin BLOC TRUNCATEDNORMAL - - - - UNIFORM = BLOC ( condition = " Kind in ( 'Uniform', ) ", - - A = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Borne inferieure de la loi | A < = B", - ang = "Lower bound | A < = B", - ), - - B = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Borne superieure de la loi | A < = B", - ang = "Upper bound | A < = B", - ), - - ), # Fin BLOC UNIFORM - - - - USERDEFINED = BLOC ( condition = " Kind in ( 'UserDefined', ) ", - - # Il faut definir une collection de couples ( x,p ) - Values = SIMP ( statut = 'o', - typ = 'R', - max = '**', - ), - - ), # Fin BLOC USERDEFINED - - - - WEIBULL = BLOC ( condition = " Kind in ( 'Weibull', ) ", - - Settings = SIMP ( statut = "o", - typ = "TXM", - max = 1, - into = ( "AlphaBeta", "MuSigma" ), - defaut = "AlphaBeta", - fr = "Parametrage de la loi weibull", - ang = "Weibull distribution parameter set", - ), - - AlphaBeta_Parameters = BLOC ( condition = " Settings in ( 'AlphaBeta', ) ", - - Alpha = SIMP ( statut = "o", - typ = "R", - max = 1, - val_min = 0., - fr = "Parametre Alpha de la loi | Alpha > 0", - ang = "Alpha parameter | Alpha > 0", - ), - - Beta = SIMP ( statut = "o", - typ = "R", - max = 1, - val_min = 0., - fr = "Parametre Beta de la loi | Beta > 0", - ang = "Beta parameter | Beta > 0", - ), - - ), # Fin BLOC AlphaBeta_Parameters - - - MuSigma_Parameters = BLOC ( condition = " Settings in ( 'MuSigma', ) ", - - Mu = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Parametre Mu de la loi", - ang = "Mu parameter", - ), - - Sigma = SIMP ( statut = "o", - typ = "R", - max = 1, - val_min = 0., - fr = "Parametre Sigma de la loi | Sigma > 0", - ang = "Sigma parameter | Sigma > 0", - ), - - ), # Fin BLOC MuSigma_Parameters - - Gamma = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Parametre Gamma", - ang = "Gamma parameter", - ), - - ), # Fin BLOC WEIBULL - -) # Fin OPER DISTRIBUTION -# Ordre Catalogue DISTRIBUTION - - - - - - -#================================ -# 3. Definition de l'etude -#================================ - -# Nota : les variables de type PROC doivent etre en majuscules ! -CRITERIA = PROC ( nom = "CRITERIA", - op = None, - docu = "", - fr = "Mise en donnee pour le fichier de configuration de OPENTURNS.", - ang = "Writes the configuration file for OPENTURNS.", - - - - Type = SIMP ( statut = "o", - typ = "TXM", - into = ( "Min/Max", "Central Uncertainty", "Threshold Exceedence" ), - fr = "Type d'Analyse", - ang = "Analysis", - ), - - - - - - - - MinMax = BLOC ( condition = " Type in ( 'Min/Max', ) ", - - Method = SIMP ( statut = "o", - typ = "TXM", - into = ( "Experiment Plane", "Random Sampling" ), - fr = "Methode", - ang = "Method", - ), - # UC 3.1.1 - ExperimentPlaneSettings = BLOC ( condition = " Method in ( 'Experiment Plane', ) ", - - ExperimentPlane = SIMP ( statut = "o", - typ = "TXM", - into = ( "Axial", "Factorial", "Composite", ), - fr = "Methode", - ang = "Method", - ), - - Levels = SIMP ( statut = "o", - typ = "R", - val_min = 0.0, - max = '**', - fr = "Nombre de niveaux dans chaque direction", - ang = "Levels in each direction", - ), - - # Scaled Vector - UnitsPerDimension = SIMP ( statut = "o", - typ = "R", - max = '**', - fr = "Unite par dimension (autant que de variables declarees)", - ang = "Units per dimension (as much as declared variables)", - ), - - # Translation Vector - Center = SIMP ( statut = "o", - typ = "R", - max = '**', - fr = "Unite par dimension", - ang = "Units per dimension", - ), - - ), # Fin BLOC ExperimentPlaneSettings - - - - RandomSamplingSettings = BLOC ( condition = " Method in ( 'Random Sampling', ) ", - - SimulationsNumber = SIMP ( statut = "o", - typ = "I", - val_min = 1, - fr = "Nombre de points", - ang = "Points number", - ), - - ), # Fin BLOC RandomSamplingSettings - - Result = SIMP ( statut = "o", - typ = "TXM", - into = ( "Min/Max", ), - defaut = "Min/Max", - fr = "Le minimum et le maximum", - ang = "The min and max values", - ), - - - ), # Fin BLOC MinMax - - - - - CentralUncertainty = BLOC ( condition = " Type in ( 'Central Uncertainty', ) ", - - Method = SIMP ( statut = "o", - typ = "TXM", - into = ( "Taylor Variance Decomposition", "Random Sampling" ), - fr = "Methode", - ang = "Method", - ), - - # UC 3.2. - TaylorVarianceDecompositionSettings = BLOC ( condition = " Method in ( 'Taylor Variance Decomposition', ) ", - - Result = FACT ( statut = "o", - min = 1, - max = "**", - - MeanFirstOrder = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'yes', - max = 1, - fr = "Moyenne au premier ordre", - ang = "MeanFirstOrder", - ), - - StandardDeviationFirstOrder = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'yes', - max = 1, - fr = "Ecart-type au premier ordre", - ang = "StandardDeviationFirstOrder", - ), - - MeanSecondOrder = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'no', - max = 1, - fr = "Moyenne au second ordre", - ang = "MeanSecondOrder", - ), - - ImportanceFactor = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'yes', - max = 1, - fr = "Facteur d'importance pour variable de sortie scalaire", - ang = "ImportanceFactor", - ), - ), # Fin FACT Result - - ), # Fin BLOC TaylorVarianceDecompositionSettings - - - - RandomSamplingSettings = BLOC ( condition = " Method in ( 'Random Sampling', ) ", - - SimulationsNumber = SIMP ( statut = "o", - typ = "I", - val_min = 1, - fr = "Nombre de points", - ang = "Points number", - ), - - Result = FACT ( statut = "o", - min = 1, - max = "**", - - EmpiricalMean = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'yes', - max = 1, - fr = "Moyenne empirique", - ang = "Empirical mean", - ), - - EmpiricalStandardDeviation = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'yes', - max = 1, - fr = "Ecart-type empirique", - ang = "Empirical standard deviation", - ), - - EmpiricalQuantile = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'yes', - max = 1, - fr = "Quantile empirique", - ang = "Empirical quantile", - ), - - EmpiricalQuantileSettings = BLOC ( condition = " EmpiricalQuantile in ( 'yes', ) ", - - EmpiricalQuantile_Order = SIMP ( statut = "o", - typ = 'R', - defaut = 0.95, - max = 1, - val_min = 0.0, - val_max = 1.0, - fr = "Ordre du quantile empirique", - ang = "Empirical quantile order", - ), - - ), # Fin BLOC EmpiricalQuantileSettings - - CorrelationAnalysis = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'yes', - max = 1, - fr = "Correlations analysees", - ang = "Analysed correlations", - ), - - KernelSmoothing = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'yes', - max = 1, - fr = "Kernel smoothing de l'echantillon", - ang = "Kernel smoothing of the sample", - ), - - ), # Fin FACT Result - - ), # Fin BLOC RandomSamplingSettings - - ), # Fin BLOC CentralUncertainty - - - - - ThresholdExceedence = BLOC ( condition = " Type in ( 'Threshold Exceedence', ) ", - - Event = FACT ( statut = "o", - min = 1, - max = 1, - - Threshold = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Le seuil de defaillance", - ang = "Failure threshold", - ), - - ComparisonOperator = SIMP ( statut = "o", - typ = "TXM", - max = 1, - into = ( "Less", "LessOrEqual", "Equal", "GreaterOrEqual", "Greater" ), - fr = "Que faut-il ne pas depasser : un maximum ou un minimum", - ang = "What is the failure threshold : maximum or minimum", - ), - ), # Fin FACT Event - - - Method = SIMP ( statut = "o", - typ = "TXM", - into = ( "Simulation", "FORM_SORM" ), - fr = "Methode", - ang = "Method", - ), - - SimulationSettings = BLOC ( condition = " Method in ( 'Simulation', ) ", - - Algorithm = SIMP ( statut = "o", - typ = "TXM", - into = ( "MonteCarlo", "LHS", "ImportanceSampling" ), - fr = "Algorithme de simulation", - ang = "Simulation algorithm", - ), - - - RandomGenerator = FACT ( statut = "o", - min = 1, - max = 1, - - SeedToBeSet = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'no', - max = 1, - fr = "La racine du generateur aleatoire doit-elle etre positionnee ?", - ang = "Does the random generator seed need to be set ?", - ), - - SeedSettings = BLOC ( condition = " SeedToBeSet in ( 'yes', ) ", - - RandomGeneratorSeed = SIMP ( statut = "o", - typ = "I", - max = 1, - fr = "Racine du generateur aleatoire", - ang = "Random generator seed", - ), - - ), # Fin BLOC SeedSettings - - ), # Fin FACT RandomGenerator - - - BlockSize = SIMP ( statut = "f", - typ = "I", - max = 1, - val_min = 1, - defaut = 1, - fr = "Nombre de calculs realises en bloc", - ang = "Number of computations as a block", - ), - - MaximumOuterSampling = SIMP ( statut = "o", - typ = "I", - max = 1, - val_min = 1, - fr = "Maximum d'iterations externes", - ang = "Maximum outer Sampling value", - ), - - MaximumCoefficientOfVariation = SIMP ( statut = "o", - typ = "R", - max = 1., - defaut = 0.1, - val_min = 0.0, - fr = " maximum ...", - ang = "Absolute maximum ...." - ), - - ImportanceSamplingSettings = BLOC ( condition = " Algorithm in ( 'ImportanceSampling', ) ", - - MeanVector = SIMP ( statut = "o", - typ = "R", - max = "**", - fr = "Moyenne", - ang = "Mean vector", - ), - - Correlation = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'Independent', 'Linear' ), - defaut = 'Linear', - max = 1, - fr = "Le type de correlation entre les variables", - ang = "Correlation between variables", - ), - - ), # Fin BLOC ImportanceSamplingSettings - - Result = FACT ( statut = "o", - min = 1, - max = "**", - - Probability = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', ), - defaut = 'yes', - max = 1, - fr = "Probabiblite", - ang = "Probability", - ), - - StandardDeviation = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', ), - defaut = 'yes', - max = 1, - fr = "Ecart type", - ang = "Standard deviation", - ), - - ConfidenceInterval = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'yes', - max = 1, - fr = "Ecart-type empirique", - ang = "Empirical standard deviation", - ), - - ConfidenceIntervalSettings = BLOC ( condition = " ConfidenceInterval in ( 'yes', ) ", - - Level = SIMP ( statut = "o", - typ = 'R', - defaut = 0.9, - max = 1, - val_min = 0.0, - val_max = 1.0, - fr = "Niveau de confiance", - ang = "Confidence level", - ), - - ), # Fin BLOC ConfidenceIntervalSettings - - VariationCoefficient = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'yes', - max = 1, - fr = "Coefficient de variation", - ang = "VariationCoefficient", - ), - - SimulationsNumber = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'yes', - max = 1, - fr = "Nombre d'iterations", - ang = "Iteration number", - ), - - ConvergenceGraph = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'yes', - max = 1, - fr = "Graphe de convergence", - ang = "Convergence graph", - ), - - ), # Fin FACT Result - - - - ), # Fin BLOC SimulationSettings - - - - FORM_SORMSettings = BLOC ( condition = " Method in ( 'FORM_SORM', ) ", - - Approximation = SIMP ( statut = "o", - typ = "TXM", - defaut = "FirstOrder", - into = ( "FirstOrder", "SecondOrder" ), - max = 1, - fr = "Approximation", - ang = "Approximation", - ), - - OptimizationAlgorithm = SIMP ( statut = "o", - typ = "TXM", - defaut = "Cobyla", - into = ( "Cobyla", "AbdoRackwitz" ), - max = 1, - fr = "Methode d'optimisation", - ang = "Optimisation method", - ), - - - PhysicalStartingPoint = SIMP ( statut = "o", - typ = "R", - max = "**", - fr = "Point de demarrage de l'algorithme iteratif", - ang = "Initial point for iterative process", - ), - - MaximumIterationsNumber = SIMP ( statut = "o", - typ = "I", - max = 1, - val_min = 1, - fr = "Nombre maximum d iterations", - ang = "Maximum number of iterations", - ), - - - MaximumAbsoluteError = SIMP ( statut = "o", - typ = "R", - max = 1, - defaut = 1E-4, - val_min = 0.0, - fr = "Distance maximum absolue entre 2 iterations successifs", - ang = "Absolute maximum distance between 2 successive iterates", - ), - - MaximumRelativeError = SIMP ( statut = "o", - typ = "R", - max = 1, - defaut = 1E-4, - val_min = 0.0, - fr = "Distance maximum relative entre 2 iterations successives", - ang = "Relative maximum distance between 2 successive iterates", - ), - - MaximumConstraintError = SIMP ( statut = "o", - typ = "R", - max = 1, - defaut = 1E-4, - val_min = 0.0, - fr = "Valeur maximum absolue de la fonction moins la valeur du niveau", - ang = "Maximum absolute value of the constraint function minus the level value", - ), - - ImportanceSampling = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'no', - max = 1, - fr = "Tirage d'importance au point de conception", - ang = "Importance sampling at design point", - ), - - FORMResult = BLOC ( condition = " Approximation in ( 'FirstOrder', ) ", - - Probability = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', ), - defaut = 'yes', - max = 1, - fr = "Probabiblite", - ang = "Probability", - ), - - DesignPoint = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'yes', - max = 1, - fr = "Point de conception", - ang = "Design point", - ), - - HasoferReliabilityIndex = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'yes', - max = 1, - fr = "Indice de fiabilite", - ang = "Reliability index", - ), - - ImportanceFactor = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'yes', - max = 1, - fr = "Facteur d'importance pour variable de sortie scalaire", - ang = "ImportanceFactor", - ), - - SensitivityAnalysis = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'yes', - max = 1, - fr = "Analyse de sensibilite", - ang = "Sensitivity analysis", - ), - - SensitivityAnalysisSettings = BLOC ( condition = " SensitivityAnalysis in ( 'yes', ) ", - - FORMEventProbabilitySensitivity = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'yes', - max = 1, - fr = "Indice de fiabilite de Hasofer", - ang = "Hasofer reliability index", - ), - - HasoferReliabilityIndexSensitivity = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'yes', - max = 1, - fr = "Indice de fiabilite de Hasofer", - ang = "Hasofer reliability index", - ), - - ), # Fin BLOC SensitivityAnalysisSettings - - FunctionCallsNumber = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'yes', - max = 1, - fr = "Nombre d'appels a la fonction", - ang = "Function calls number", - ), - - - ), # Fin BLOC FORMResult - - - SORMResult = BLOC ( condition = " Approximation in ( 'SecondOrder', ) ", - - - TvedtApproximation = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'no', - max = 1, - fr = "Approximation de Tvedt", - ang = "Tvedt approximation", - ), - - HohenBichlerApproximation = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'no', - max = 1, - fr = "Approximation de HohenBichler", - ang = "HohenBichler approximation", - ), - - BreitungApproximation = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'no', - max = 1, - fr = "Approximation de Breitung", - ang = "Breitung approximation", - ), - - DesignPoint = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'yes', - max = 1, - fr = "Point de conception", - ang = "Design point", - ), - - ImportanceFactor = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'yes', - max = 1, - fr = "Facteur d'importance pour variable de sortie scalaire", - ang = "ImportanceFactor", - ), - - SensitivityAnalysis = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'yes', - max = 1, - fr = "Analyse de sensibilite", - ang = "Sensitivity analysis", - ), - - SensitivityAnalysisSettings = BLOC ( condition = " SensitivityAnalysis in ( 'yes', ) ", - - HasoferReliabilityIndexSensitivity = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'yes', - max = 1, - fr = "Indice de fiabilite de Hasofer", - ang = "Hasofer reliability index", - ), - - ), # Fin BLOC SensitivityAnalysisSettings - - FunctionCallsNumber = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'yes', - max = 1, - fr = "Nombre d'appels a la fonction", - ang = "Function calls number", - ), - - - ), # Fin BLOC SecondOrder - - - - ), # Fin BLOC FORM_SORMSettings - - - - ), # Fin BLOC ThresholdExceedence - - - -) # Fin PROC CRITERIA -# Ordre Catalogue CRITERIA - - - - - - - diff --git a/OldCodes/Openturns_Study/OpenTURNS_Cata_Study_V6.py b/OldCodes/Openturns_Study/OpenTURNS_Cata_Study_V6.py deleted file mode 100644 index 940481a7..00000000 --- a/OldCodes/Openturns_Study/OpenTURNS_Cata_Study_V6.py +++ /dev/null @@ -1,1726 +0,0 @@ -# -*- coding: utf-8 -*- - -# -------------------------------------------------- -# debut entete -# -------------------------------------------------- - -#from Accas import ASSD, JDC_CATA, AU_MOINS_UN, PROC, SIMP, FACT, OPER, MACRO, BLOC, A_VALIDATOR -from Accas import * - -class loi ( ASSD ) : pass -class variable ( ASSD ) : pass - -import types -class Tuple: - def __init__(self,ntuple): - self.ntuple=ntuple - - def __convert__(self,valeur): - if type(valeur) == types.StringType: - return None - if len(valeur) != self.ntuple: - return None - return valeur - - def info(self): - return "Tuple de %s elements" % self.ntuple - - __repr__=info - __str__=info - -class Matrice: - def __init__(self,nbLigs=None,nbCols=None,methodeCalculTaille=None,formatSortie="ligne",valSup=None,valMin=None,structure=None): - self.nbLigs=nbLigs - self.nbCols=nbCols - self.methodeCalculTaille=methodeCalculTaille - self.formatSortie=formatSortie - self.valSup=valSup - self.valMin=valMin - self.structure=structure - - def __convert__(self,valeur): - # Attention ne verifie pas grand chose - if type(valeur) != types.ListType : - return None - return valeur - - def info(self): - return "Matrice %s x %s" % (self.nbLigs, self.nbCols) - - __repr__=info - __str__=info - - -#CONTEXT.debug = 1 -JdC = JDC_CATA ( code = 'OPENTURNS_STUDY', - execmodul = None, - regles = ( AU_MOINS_UN ( 'CRITERIA' ), - AU_MOINS_UN ( 'MODEL' ), - AVANT ( ('DISTRIBUTION', 'MODEL'), 'VARIABLE' ), -# A_CLASSER ( 'VARIABLE', 'CORRELATION' ), -# A_CLASSER ( 'VARIABLE', 'CRITERIA' ), -# A_CLASSER ( 'CORRELATION', 'CRITERIA' ), - ), - ) # Fin JDC_CATA - - -# -------------------------------------------------- -# fin entete -# -------------------------------------------------- - -LOG = PROC ( nom = "LOG", - op = None, - docu = "", - - DebugMessages = SIMP ( statut = "o", - typ = "TXM", - into = ( 'yes', 'no' ), - defaut = 'no', - fr = "Affichage du niveau de debug de la bibliotheque Open TURNS", - ang = "Open TURNS library debug level print", - ), - - WrapperMessages = SIMP ( statut = "o", - typ = "TXM", - into = ( 'yes', 'no' ), - defaut = 'no', - fr = "Affichage du niveau de wrapper de la bibliotheque Open TURNS", - ang = "Open TURNS library debug level print", - ), - - UserMessages = SIMP ( statut = "o", - typ = "TXM", - into = ( 'yes', 'no' ), - defaut = 'no', - fr = "Affichage du niveau de user de la bibliotheque Open TURNS", - ang = "Open TURNS library user level print", - ), - - InfoMessages = SIMP ( statut = "o", - typ = "TXM", - into = ( 'yes', 'no' ), - defaut = 'yes', - fr = "Affichage du niveau de info de la bibliotheque Open TURNS", - ang = "Open TURNS library info level print", - ), - - WarningMessages = SIMP ( statut = "o", - typ = "TXM", - into = ( 'yes', 'no' ), - defaut = 'yes', - fr = "Affichage du niveau de warning de la bibliotheque Open TURNS", - ang = "Open TURNS library warning level print", - ), - - ErrorMessages = SIMP ( statut = "o", - typ = "TXM", - into = ( 'yes', 'no' ), - defaut = 'yes', - fr = "Affichage du niveau de error de la bibliotheque Open TURNS", - ang = "Open TURNS library error level print", - ), - -) # Fin PROC LOG -# Ordre Catalogue LOG - - - - - -#================================ -# Definition des LOIS -#================================ - -# Nota : les variables de type OPER doivent etre en majuscules ! -# Nota : les variables de type OPER doivent etre de premier niveau (pas imbriquees dans un autre type) -DISTRIBUTION = OPER ( nom = "DISTRIBUTION", - sd_prod = loi, - op = 68, - fr = "Definitions des lois marginales utilisees par les variables d'entree", - - -#==== -# Type de distribution -#==== - - Kind = SIMP ( statut = "o", typ = "TXM", - into = ( "Beta", - "Exponential", - "Gamma", - "Geometric", - "Gumbel", - "Histogram", - "Laplace", - "Logistic", - "LogNormal", - "MultiNomial", - "NonCentralStudent", - "Normal", - "Poisson", - "Rayleigh", - "Student", - "Triangular", - "TruncatedNormal", - "Uniform", - #"UserDefined", - "Weibull", - ), - fr = "Choix du type de la loi marginale", - ang = "1D marginal distribution", - ), - -#==== -# Definition des parametres selon le type de la loi -#==== - - BETA = BLOC ( condition = " Kind in ( 'Beta', ) ", - - Settings = SIMP ( statut = "o", - typ = "TXM", - max = 1, - into = ( "RT", "MuSigma" ), - defaut = "RT", - fr = "Parametrage de la loi beta", - ang = "Beta distribution parameter set", - ), - - RT_Parameters = BLOC ( condition = " Settings in ( 'RT', ) ", - - R = SIMP ( statut = "o", - typ = "R", - max = 1, - val_min = 0., - fr = "Parametre R de la loi | R > 0", - ang = "R parameter | R > 0", - ), - - # T > R - T = SIMP ( statut = "o", - typ = "R", - max = 1, - val_min = 0., - fr = "Parametre T de la loi | T > R", - ang = "T parameter | T > R", - ), - - ), # Fin BLOC RT_Parameters - - - MuSigma_Parameters = BLOC ( condition = " Settings in ( 'MuSigma', ) ", - - Mu = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Moyenne de la loi", - ang = "Mean value", - ), - - Sigma = SIMP ( statut = "o", - typ = "R", - max = 1, - val_min = 0., - fr = "Ecart type de la loi", - ang = "Standard deviation", - ), - - ), # Fin BLOC MuSigma_Parameters - - - A = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Borne inferieure du support de la loi", - ang = "Support lower bound", - ), - - # B > A - B = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Borne superieure du support de la loi", - ang = "Support upper bound", - ), - - ), # Fin BLOC BETA - - - - EXPONENTIAL = BLOC ( condition = " Kind in ( 'Exponential', ) ", - - Lambda = SIMP ( statut = "o", - typ = "R", - max = 1, - val_min = 0., - fr = "Parametre Lambda | Lambda > 0", - ang = "Lambda parameter | Lambda > 0", - ), - - Gamma = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Borne inferieure du support de la loi", - ang = "Support lower bound", - ), - - ), # Fin BLOC EXPONENTIAL - - - - GAMMA = BLOC ( condition = " Kind in ( 'Gamma', ) ", - - Settings = SIMP ( statut = "o", - typ = "TXM", - max = 1, - into = ( "KLambda", "MuSigma" ), - defaut = "KLambda", - fr = "Parametrage de la loi gamma", - ang = "Gamma distribution parameter set", - ), - - KLambda_Parameters = BLOC ( condition = " Settings in ( 'KLambda', ) ", - - K = SIMP ( statut = "o", - typ = "R", - max = 1, - val_min = 0., - fr = "Parametre K de la loi | K > 0", - ang = "K parameter | K > 0", - ), - - Lambda = SIMP ( statut = "o", - typ = "R", - max = 1, - val_min = 0., - fr = "Parametre Lambda de la loi | Lambda > 0", - ang = "Lambda parameter | Lambda > 0", - ), - - ), # Fin BLOC KLambda_Parameters - - - MuSigma_Parameters = BLOC ( condition = " Settings in ( 'MuSigma', ) ", - - Mu = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Moyenne de la loi", - ang = "Mean value", - ), - - Sigma = SIMP ( statut = "o", - typ = "R", - max = 1, - val_min = 0., - fr = "Ecart type de la loi", - ang = "Standard deviation", - ), - - ), # Fin BLOC MuSigma_Parameters - - Gamma = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Borne inferieure du supoport de la loi", - ang = "Support lower bound", - ), - - - ), # Fin BLOC GAMMA - - - - GEOMETRIC = BLOC ( condition = " Kind in ( 'Geometric', ) ", - - P = SIMP ( statut = "o", - typ = "R", - max = 1, - val_min = 0., - val_max = 1., - fr = "Parametre P | 0 < P < 1", - ang = "P parameter | 0 < P < 1", - ), - - ), # Fin BLOC GEOMETRIC - - - - GUMBEL = BLOC ( condition = " Kind in ( 'Gumbel', ) ", - - Settings = SIMP ( statut = "o", - typ = "TXM", - max = 1, - into = ( "AlphaBeta", "MuSigma" ), - defaut = "AlphaBeta", - fr = "Parametrage de la loi gumbel", - ang = "Gumbel distribution parameter set", - ), - - AlphaBeta_Parameters = BLOC ( condition = " Settings in ( 'AlphaBeta', ) ", - - Alpha = SIMP ( statut = "o", - typ = "R", - max = 1, - val_min = 0., - fr = "Parametre Alpha de la loi | Alpha > 0", - ang = "Alpha parameter | Alpha > 0", - ), - - Beta = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Parametre Beta de la loi", - ang = "Beta parameter", - ), - - ), # Fin BLOC AlphaBeta_Parameters - - - MuSigma_Parameters = BLOC ( condition = " Settings in ( 'MuSigma', ) ", - - Mu = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Moyenne de la loi", - ang = "Mean value", - ), - - Sigma = SIMP ( statut = "o", - typ = "R", - max = 1, - val_min = 0., - fr = "Ecart type de la loi", - ang = "Standard deviation", - ), - - ), # Fin BLOC MuSigma_Parameters - - ), # Fin BLOC GUMBEL - - - - HISTOGRAM = BLOC ( condition = " Kind in ( 'Histogram', ) ", - - First = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Borne inferieure du supoport de la loi", - ang = "Support lower bound", - ), - - # Il faut definir une collection de couples ( x,p ) - Values = SIMP ( statut = 'o', - typ = Tuple(2), - max = '**', - fr = "Liste de couples : largeur de classe, probabilité associée", - ang = "Class bandwidth, associated probability couple list", - validators=VerifTypeTuple(('R','R')), - ), - - ), # Fin BLOC HISTOGRAM - - - - LAPLACE = BLOC ( condition = " Kind in ( 'Laplace', ) ", - - Lambda = SIMP ( statut = "o", - typ = "R", - max = 1, - val_min = 0., - fr = "Parametre Lambda | Lambda > 0", - ang = "Lambda parameter | Lambda > 0", - ), - - Mu = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Moyenne de la loi", - ang = "Mean value", - ), - - ), # Fin BLOC LAPLACE - - LOGNORMAL = BLOC ( condition = " Kind in ( 'LogNormal', ) ", - - Settings = SIMP ( statut = "o", - typ = "TXM", - max = 1, - into = ( "MuSigmaLog", "MuSigma", "MuSigmaOverMu" ), - defaut = "MuSigmaLog", - fr = "Parametrage de la loi lognormale", - ang = "Lognormal distribution parameter set", - ), - - MuSigma_Parameters = BLOC ( condition = " Settings in ( 'MuSigma', ) ", - - Mu = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Moyenne de la loi", - ang = "Mean value", - ), - - Sigma = SIMP ( statut = "o", - typ = "R", - max = 1, - val_min = 0., - fr = "Ecart type de la loi", - ang = "Standard deviation", - ), - - ), # Fin BLOC MuSigma_Parameters - - MuSigmaOverMu_Parameters = BLOC ( condition = " Settings in ( 'MuSigmaOverMu', ) ", - - Mu = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Moyenne de la loi", - ang = "Mean value", - ), - - SigmaOverMu = SIMP ( statut = "o", - typ = "R", - max = 1, - val_min = 0., - fr = "Rapport ecart type / moyenne de la loi", - ang = "Standard deviation / mean value ratio", - ), - - ), # Fin BLOC MuSigmaOverMu_Parameters - - MuSigmaLog_Parameters = BLOC ( condition = " Settings in ( 'MuSigmaLog', ) ", - - MuLog = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Moyenne du log", - ang = "Log mean value", - ), - - SigmaLog = SIMP ( statut = "o", - typ = "R", - max = 1, - val_min = 0., - fr = "Ecart type du log", - ang = "Log standard deviation", - ), - - ), # Fin BLOC MuSigmaLog_Parameters - - Gamma = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Borne inferieure du support de la loi", - ang = "Support lower bound", - ), - - ), # Fin BLOC LOGNORMAL - - - - LOGISTIC = BLOC ( condition = " Kind in ( 'Logistic', ) ", - - Alpha = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Borne inferieure du supoport de la loi", - ang = "Support lower bound", - ), - - Beta = SIMP ( statut = "o", - typ = "R", - max = 1, - val_min = 0., - fr = "Parametre Beta de la loi | Beta > 0", - ang = "Beta parameter | Beta > 0", - ), - - ), # Fin BLOC LOGISTIC - - - - MULTINOMIAL = BLOC ( condition = " Kind in ( 'MultiNomial', ) ", - - N = SIMP ( statut = "o", - typ = "I", - max = 1, - fr = "Parametre N de la loi | N > 0", - ang = "N parameter | N > 0", - ), - - # Il faut definir une collection de couples ( x,p ) - Values = SIMP ( statut = 'o', - typ = "R", - max = '**', - fr = "Liste de probabilités", - ang = "Probability list", - validators=VerifTypeTuple(('R','R')), - ), - - ), # Fin BLOC MULTINOMIAL - - - NONCENTRALSTUDENT = BLOC ( condition = " Kind in ( 'NonCentralStudent', ) ", - - Nu = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Parametre Nu de la loi | Nu > 0", - ang = "Nu parameter | Nu > 0", - ), - - Delta = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Parametre Delta de la loi | Delta > 0", - ang = "Delta parameter | Delta > 0", - ), - - Gamma = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Parametre Gamma de centrage de la loi", - ang = "Gamma parameter", - ), - - ), # Fin BLOC NONCENTRALSTUDENT - - - NORMAL = BLOC ( condition = " Kind in ( 'Normal', ) ", - - Mu = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Moyenne de la loi", - ang = "Mean value", - ), - - Sigma = SIMP ( statut = "o", - typ = "R", - max = 1, - val_min = 0., - fr = "Ecart type de la loi", - ang = "Standard deviation", - ), - - ), # Fin BLOC NORMAL - - - - POISSON = BLOC ( condition = " Kind in ( 'Poisson', ) ", - - Lambda = SIMP ( statut = "o", - typ = "R", - max = 1, - val_min = 0., - fr = "Parametre Lambda de la loi | Lambda > 0", - ang = "Lambda parameter | Lambda > 0", - ), - - ), # Fin BLOC POISSON - - - - RAYLEIGH = BLOC ( condition = " Kind in ( 'Rayleigh', ) ", - - Sigma = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Parametre Sigma de la loi | Sigma > 0", - ang = "Sigma parameter | Sigma > 0", - ), - - Gamma = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Borne inferieure du support de la loi", - ang = "Support lower bound", - ), - ), # Fin BLOC RAYLEIGH - - - STUDENT = BLOC ( condition = " Kind in ( 'Student', ) ", - - Mu = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Parametre Mu de la loi", - ang = "Mu parameter", - ), - - Nu = SIMP ( statut = "o", - typ = "R", - max = 1, - val_min = 2., - fr = "Parametre Nu de la loi | Nu > 2", - ang = "Nu parameter | Nu > 2", - ), - - Sigma = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Parametre Sigma de la loi", - ang = "Sigma parameter", - ), - - ), # Fin BLOC STUDENT - - - - TRIANGULAR = BLOC ( condition = " Kind in ( 'Triangular', ) ", - - A = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Borne inferieure du support de la loi | A < M < B", - ang = "Support lower bound | A < M < B", - ), - - M = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Mode de la loi | A < M < B", - ang = "Mode | A < M < B", - ), - - B = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Borne superieure du support de la loi | A < M < B", - ang = "Support upper bound | A < M < B", - ), - - ), # Fin BLOC TRIANGULAR - - - - TRUNCATEDNORMAL = BLOC ( condition = " Kind in ( 'TruncatedNormal', ) ", - - MuN = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Moyenne de la loi Normale non tronquée", - ang = "Mean value of the associated non truncated normal distribution", - ), - - SigmaN = SIMP ( statut = "o", - typ = "R", - max = 1, - val_min = 0., - fr = "Ecart-type de la loi Normale non tronquée", - ang = "Standard deviation of the associated non truncated normal distribution", - ), - - A = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Borne inferieure de la loi | A < B", - ang = "Lower bound | A < B", - ), - - B = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Borne superieure de la loi | A < B", - ang = "Upper bound | A < B", - ), - - ), # Fin BLOC TRUNCATEDNORMAL - - - - UNIFORM = BLOC ( condition = " Kind in ( 'Uniform', ) ", - - A = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Borne inferieure du support de la loi | A < B", - ang = "Support lower bound | A < B", - ), - - B = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Borne superieure du support de la loi | A < B", - ang = "Support upper bound | A < B", - ), - - ), # Fin BLOC UNIFORM - - - - USERDEFINED = BLOC ( condition = " Kind in ( 'UserDefined', ) ", - - # Il faut definir une collection de couples ( x,p ) - Values = SIMP ( statut = 'o', - typ = 'R', - max = '**', - ), - - ), # Fin BLOC USERDEFINED - - - - WEIBULL = BLOC ( condition = " Kind in ( 'Weibull', ) ", - - Settings = SIMP ( statut = "o", - typ = "TXM", - max = 1, - into = ( "AlphaBeta", "MuSigma" ), - defaut = "AlphaBeta", - fr = "Parametrage de la loi weibull", - ang = "Weibull distribution parameter set", - ), - - AlphaBeta_Parameters = BLOC ( condition = " Settings in ( 'AlphaBeta', ) ", - - Alpha = SIMP ( statut = "o", - typ = "R", - max = 1, - val_min = 0., - fr = "Parametre Alpha de la loi | Alpha > 0", - ang = "Alpha parameter | Alpha > 0", - ), - - Beta = SIMP ( statut = "o", - typ = "R", - max = 1, - val_min = 0., - fr = "Parametre Beta de la loi | Beta > 0", - ang = "Beta parameter | Beta > 0", - ), - - ), # Fin BLOC AlphaBeta_Parameters - - - MuSigma_Parameters = BLOC ( condition = " Settings in ( 'MuSigma', ) ", - - Mu = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Moyenne de la loi", - ang = "Mean value", - ), - - Sigma = SIMP ( statut = "o", - typ = "R", - max = 1, - val_min = 0., - fr = "Ecart type de la loi", - ang = "Standard deviation", - ), - - ), # Fin BLOC MuSigma_Parameters - - Gamma = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Borne inferieure du support de la loi", - ang = "Support lower bound", - ), - - ), # Fin BLOC WEIBULL - -) # Fin OPER DISTRIBUTION -# Ordre Catalogue DISTRIBUTION - - - -#================================ -# Definition du modele physique -#================================ - - -DETERMINISTICVARIABLE = OPER ( nom = "DETERMINISTICVARIABLE", - sd_prod = variable, - op = None, - fr = "Variable deterministe", - ang = "Deterministic variable", - - N = SIMP ( statut = 'o', - typ = "TXM", - fr = "Nom", - ang = "Name", - ), - - T = SIMP ( statut = 'o', - defaut = "in", - into = ( "in" , "out", ), - typ = "TXM", - fr = "Type", - ang = "Type", - ), - - R = SIMP ( statut = 'o', - defaut = 0, - typ = "I", - fr = "Rang", - ang = "Rank", - ), - -) # Fin OPER DETERMINISTICVARIABLE -# Ordre Catalogue DETERMINISTICVARIABLE - - - -import opsOT -MODEL = MACRO ( nom = "MODEL", - op = None, - UIinfo = { "groupes" : ( "Gestion du travail", ) }, - fr = "Chargement du wrapper du modele physique", - ang = "Physical model wrapper load", - sd_prod = opsOT.INCLUDE, - op_init = opsOT.INCLUDE_context, - fichier_ini = 1, - - FileName = SIMP ( statut = "o", - typ = "Fichier", - fr = "Nom du modele physique", - ang = "Physical model identifier", - ), - -) # Fin PROC MODEL -# Ordre Catalogue MODEL - - - - -VARIABLE = PROC ( nom = "VARIABLE", - op = None, - docu = "", - fr = "Variable probabiliste", - ang = "Probabilistic variable", - - ModelVariable = SIMP ( statut = "o", - typ = ( variable, ), - fr = "Variable d'entrée du modèle", - ang = "Input variable of the model", - ), - - Distribution = SIMP ( statut = "o", - typ = ( loi, ), - fr = "Modélisation probabiliste", - ang = "Probabilistic modelisation", - ), - -) # Fin PROC VARIABLE -# Ordre Catalogue VARIABLE - - -CORRELATION = PROC ( nom = 'CORRELATION', - op = None, - docu = "", - fr = "Correlation entre variables", - ang = "Variable correlation", - - Copula = SIMP ( statut = "o", - typ = 'TXM', - into = ( "Independent", "Normal" ), - defaut = "Independent", - fr = "Type de la copule", - ang = "Copula kind", - ), - - Matrix = BLOC ( condition = "Copula in ( 'Normal', )", - - CorrelationMatrix = SIMP ( statut = "o", - typ = Matrice(nbLigs=None, - nbCols=None, - methodeCalculTaille='nbDeVariables', - valSup=1, - valMin=-1, - structure="symetrique"), - fr = "Matrice de correlation entre les variables d'entree", - ang = "Correlation matrix for input variables", - ), - ), # Fin BLOC Matrix - - -) # Fin PROC CORRELATION -# Ordre Catalogue CORRELATION - - - - - -#================================ -# Definition de l'etude -#================================ - -# Nota : les variables de type PROC doivent etre en majuscules ! -CRITERIA = PROC ( nom = "CRITERIA", - op = None, - docu = "", - fr = "Critère de l'étude d'incertitudes", - ang = "Uncertainty study criteria", - - - - Type = SIMP ( statut = "o", - typ = "TXM", - into = ( "Min/Max", "Central Uncertainty", "Threshold Exceedence" ), - fr = "Type du critère", - ang = "Criteria type", - ), - - - - - - - - MinMax = BLOC ( condition = " Type in ( 'Min/Max', ) ", - - Method = SIMP ( statut = "o", - typ = "TXM", - into = ( "Experiment Plane", "Random Sampling" ), - fr = "Methode", - ang = "Method", - ), - # UC 3.1.1 - ExperimentPlaneSettings = BLOC ( condition = " Method in ( 'Experiment Plane', ) ", - - ExperimentPlane = SIMP ( statut = "o", - typ = "TXM", - into = ( "Axial", "Factorial", "Composite", ), - fr = "Type du plan d'expérience", - ang = "Experiment plane type", - ), - - Levels = SIMP ( statut = "o", - typ = "R", - val_min = 0.0, - max = '**', - fr = "Liste de niveaux dans chaque direction", - ang = "Levels in each direction", - ), - - # Scaled Vector - UnitPerDimension = SIMP ( statut = "o", - typ = "R", - max = '**', - fr = "Unité par dimension (autant que de variables declarées)", - ang = "Units per dimension (as much as declared variables)", - ), - - # Translation Vector - Center = SIMP ( statut = "o", - typ = "R", - max = '**', - fr = "Centre du plan d'expérience", - ang = "Experiment plan center", - ), - - ), # Fin BLOC ExperimentPlaneSettings - - - - RandomSamplingSettings = BLOC ( condition = " Method in ( 'Random Sampling', ) ", - - SimulationsNumber = SIMP ( statut = "o", - typ = "I", - val_min = 1, - fr = "Nombre de points", - ang = "Points number", - ), - - ), # Fin BLOC RandomSamplingSettings - - Result = SIMP ( statut = "o", - typ = "TXM", - into = ( "Min/Max", ), - defaut = "Min/Max", - fr = "Le minimum et le maximum de la variable d'intérêt", - ang = "The min and max values", - ), - - - ), # Fin BLOC MinMax - - - - - CentralUncertainty = BLOC ( condition = " Type in ( 'Central Uncertainty', ) ", - - Method = SIMP ( statut = "o", - typ = "TXM", - into = ( "Taylor Variance Decomposition", "Random Sampling" ), - fr = "Methode", - ang = "Method", - ), - - # UC 3.2. - TaylorVarianceDecompositionSettings = BLOC ( condition = " Method in ( 'Taylor Variance Decomposition', ) ", - - Result = FACT ( statut = "o", - min = 1, - max = "**", - - MeanFirstOrder = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'yes', - max = 1, - fr = "Moyenne au premier ordre", - ang = "MeanFirstOrder", - ), - - StandardDeviationFirstOrder = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'yes', - max = 1, - fr = "Ecart-type au premier ordre", - ang = "StandardDeviationFirstOrder", - ), - - MeanSecondOrder = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'no', - max = 1, - fr = "Moyenne au second ordre", - ang = "MeanSecondOrder", - ), - - ImportanceFactor = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'yes', - max = 1, - fr = "Facteur d'importance pour variable de sortie scalaire", - ang = "ImportanceFactor", - ), - ImportanceFactorSettings = BLOC ( condition = " ImportanceFactor in ( 'yes', ) ", - - ImportanceFactorDrawingFilename = SIMP ( statut = "o", - typ = "TXM", - max = 1, - fr = "Nom du fichier graphique des facteurs d'importance", - ang = "Importance Factor Drawing Filename", - ), - - - ), # Fin BLOC ImportanceFactorSettings - - ), # Fin FACT Result - - ), # Fin BLOC TaylorVarianceDecompositionSettings - - - - RandomSamplingSettings = BLOC ( condition = " Method in ( 'Random Sampling', ) ", - - SimulationsNumber = SIMP ( statut = "o", - typ = "I", - val_min = 1, - fr = "Nombre de points", - ang = "Points number", - ), - - Result = FACT ( statut = "o", - min = 1, - max = "**", - - EmpiricalMean = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'yes', - max = 1, - fr = "Moyenne empirique", - ang = "Empirical mean", - ), - - EmpiricalStandardDeviation = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'yes', - max = 1, - fr = "Ecart-type empirique", - ang = "Empirical standard deviation", - ), - - EmpiricalQuantile = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'yes', - max = 1, - fr = "Quantile empirique", - ang = "Empirical quantile", - ), - - EmpiricalQuantileSettings = BLOC ( condition = " EmpiricalQuantile in ( 'yes', ) ", - - EmpiricalQuantile_Order = SIMP ( statut = "o", - typ = 'R', - defaut = 0.95, - max = 1, - val_min = 0.0, - val_max = 1.0, - fr = "Ordre du quantile empirique", - ang = "Empirical quantile order", - ), - - ), # Fin BLOC EmpiricalQuantileSettings - - CorrelationAnalysis = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'yes', - max = 1, - fr = "Correlations analysees", - ang = "Analysed correlations", - ), - - KernelSmoothing = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'yes', - max = 1, - fr = "Kernel smoothing de l'echantillon", - ang = "Kernel smoothing of the sample", - ), - - KernelSmoothingSettings = BLOC ( condition = " KernelSmoothing in ( 'yes', ) ", - - KernelSmoothingDrawingFilename = SIMP ( statut = "o", - typ = "TXM", - max = 1, - fr = "Nom du fichier graphique de la reconstruction a noyau", - ang = "Kernel Smoothing Drawing Filename", - ), - - - ), # Fin BLOC KernelSmoothingSettings - - ), # Fin FACT Result - - ), # Fin BLOC RandomSamplingSettings - - ), # Fin BLOC CentralUncertainty - - - - - ThresholdExceedence = BLOC ( condition = " Type in ( 'Threshold Exceedence', ) ", - - Event = FACT ( statut = "o", - min = 1, - max = 1, - - Threshold = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Le seuil de defaillance", - ang = "Failure threshold", - ), - - ComparisonOperator = SIMP ( statut = "o", - typ = "TXM", - max = 1, - into = ( "Less", "LessOrEqual", "Equal", "GreaterOrEqual", "Greater" ), - fr = "Que faut-il ne pas depasser : un maximum ou un minimum", - ang = "What is the failure threshold : maximum or minimum", - ), - ), # Fin FACT Event - - - Method = SIMP ( statut = "o", - typ = "TXM", - into = ( "Simulation", "FORM_SORM" ), - fr = "Methode", - ang = "Method", - ), - - SimulationSettings = BLOC ( condition = " Method in ( 'Simulation', ) ", - - Algorithm = SIMP ( statut = "o", - typ = "TXM", - into = ( "MonteCarlo", "LHS", "ImportanceSampling" ), - fr = "Algorithme de simulation", - ang = "Simulation algorithm", - ), - - - RandomGenerator = FACT ( statut = "o", - min = 1, - max = 1, - - SeedToBeSet = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'no', - max = 1, - fr = "La racine du generateur aleatoire doit-elle etre positionnee ?", - ang = "Does the random generator seed need to be set ?", - ), - - SeedSettings = BLOC ( condition = " SeedToBeSet in ( 'yes', ) ", - - RandomGeneratorSeed = SIMP ( statut = "o", - typ = "I", - max = 1, - fr = "Racine du generateur aleatoire", - ang = "Random generator seed", - ), - - ), # Fin BLOC SeedSettings - - ), # Fin FACT RandomGenerator - - - BlockSize = SIMP ( statut = "o", - typ = "I", - max = 1, - val_min = 1, - defaut = 1, - fr = "Nombre de calculs realises en bloc", - ang = "Number of computations as a block", - ), - - MaximumOuterSampling = SIMP ( statut = "o", - typ = "I", - max = 1, - val_min = 1, - fr = "Maximum d'iterations externes", - ang = "Maximum outer Sampling value", - ), - - MaximumCoefficientOfVariation = SIMP ( statut = "o", - typ = "R", - max = 1, - defaut = 0.1, - val_min = 0.0, - val_max = 1.0, - fr = "Coefficient de variation maximum", - ang = "Maximum coefficient of variation" - ), - - ImportanceSamplingSettings = BLOC ( condition = " Algorithm in ( 'ImportanceSampling', ) ", - - MeanVector = SIMP ( statut = "o", - typ = "R", - max = "**", - fr = "Moyenne", - ang = "Mean vector", - ), - - Correlation = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'Independent', 'Linear' ), - defaut = 'Independent', - max = 1, - fr = "Le type de correlation entre les variables", - ang = "Correlation between variables", - ), - - ), # Fin BLOC ImportanceSamplingSettings - - Result = FACT ( statut = "o", - min = 1, - max = "**", - - Probability = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', ), - defaut = 'yes', - max = 1, - fr = "Probabiblite", - ang = "Probability", - ), - - StandardDeviation = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', ), - defaut = 'yes', - max = 1, - fr = "Ecart type", - ang = "Standard deviation", - ), - - ConfidenceInterval = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'yes', - max = 1, - fr = "Intervale de confiance", - ang = "Confidence interval", - ), - - ConfidenceIntervalSettings = BLOC ( condition = " ConfidenceInterval in ( 'yes', ) ", - - Level = SIMP ( statut = "o", - typ = 'R', - defaut = 0.9, - max = 1, - val_min = 0.0, - val_max = 1.0, - fr = "Niveau de confiance", - ang = "Confidence level", - ), - - ), # Fin BLOC ConfidenceIntervalSettings - - VariationCoefficient = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'yes', - max = 1, - fr = "Coefficient de variation", - ang = "Coefficient of variation", - ), - - SimulationsNumber = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'yes', - max = 1, - fr = "Nombre d'iterations", - ang = "Iteration number", - ), - - ConvergenceGraph = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'yes', - max = 1, - fr = "Graphe de convergence", - ang = "Convergence graph", - ), - - ConvergenceGraphSettings = BLOC ( condition = " ConvergenceGraph in ( 'yes', ) ", - - ConvergenceDrawingFilename = SIMP ( statut = "o", - typ = "TXM", - max = 1, - fr = "Nom du fichier graphique de la convergence", - ang = "Convergence Drawing Filename", - ), - - - ), # Fin BLOC ConvergenceGraphSettings - - ), # Fin FACT Result - - - - ), # Fin BLOC SimulationSettings - - - - FORM_SORMSettings = BLOC ( condition = " Method in ( 'FORM_SORM', ) ", - - Approximation = SIMP ( statut = "o", - typ = "TXM", - defaut = "FirstOrder", - into = ( "FirstOrder", "SecondOrder" ), - max = 1, - fr = "Approximation", - ang = "Approximation", - ), - - OptimizationAlgorithm = SIMP ( statut = "o", - typ = "TXM", - defaut = "Cobyla", - into = ( "Cobyla", "AbdoRackwitz" ), - max = 1, - fr = "Methode d'optimisation", - ang = "Optimization method", - ), - - - PhysicalStartingPoint = SIMP ( statut = "f", - typ = "R", - max = "**", - fr = "Point de demarrage de l'algorithme iteratif", - ang = "Initial point for iterative process", - ), - - MaximumIterationsNumber = SIMP ( statut = "f", - typ = "I", - max = 1, - val_min = 1, - fr = "Nombre maximum d'iterations", - ang = "Maximum number of iterations", - ), - - - MaximumAbsoluteError = SIMP ( statut = "o", - typ = "R", - max = 1, - defaut = 1E-4, - val_min = 0.0, - fr = "Distance maximum absolue entre 2 iterations successives", - ang = "Absolute maximum distance between 2 successive iterates", - ), - - MaximumRelativeError = SIMP ( statut = "o", - typ = "R", - max = 1, - defaut = 1E-4, - val_min = 0.0, - fr = "Distance maximum relative entre 2 iterations successives", - ang = "Relative maximum distance between 2 successive iterates", - ), - - MaximumConstraintError = SIMP ( statut = "o", - typ = "R", - max = 1, - defaut = 1E-4, - val_min = 0.0, - fr = "Valeur maximum absolue de la fonction moins la valeur du niveau", - ang = "Maximum absolute value of the constraint function minus the level value", - ), - - ImportanceSampling = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'no', - max = 1, - fr = "Tirage d'importance au point de conception", - ang = "Importance sampling at design point", - ), - - FORMResult = BLOC ( condition = " Approximation in ( 'FirstOrder', ) ", - - Probability = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', ), - defaut = 'yes', - max = 1, - fr = "Probabiblite", - ang = "Probability", - ), - - DesignPoint = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'yes', - max = 1, - fr = "Point de conception", - ang = "Design point", - ), - - HasoferReliabilityIndex = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'yes', - max = 1, - fr = "Indice de fiabilite", - ang = "Reliability index", - ), - - ImportanceFactor = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'yes', - max = 1, - fr = "Facteur d'importance pour variable de sortie scalaire", - ang = "Importance factor", - ), - - ImportanceFactorSettings = BLOC ( condition = " ImportanceFactor in ( 'yes', ) ", - - ImportanceFactorDrawingFilename = SIMP ( statut = "o", - typ = "TXM", - max = 1, - fr = "Nom du fichier graphique des facteurs d'importance", - ang = "Importance Factor Drawing Filename", - ), - - - ), # Fin BLOC ImportanceFactorSettings - - SensitivityAnalysis = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'yes', - max = 1, - fr = "Analyse de sensibilite", - ang = "Sensitivity analysis", - ), - - SensitivityAnalysisSettings = BLOC ( condition = " SensitivityAnalysis in ( 'yes', ) ", - - FORMEventProbabilitySensitivity = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'yes', - max = 1, - fr = "Indice de fiabilite de Hasofer", - ang = "Hasofer reliability index", - ), - - FORMEventProbabilitySensitivitySettings = BLOC ( condition = " FORMEventProbabilitySensitivity in ( 'yes', ) ", - - FORMEventProbabilitySensitivityDrawingFilename = SIMP ( statut = "o", - typ = "TXM", - max = 1, - fr = "Nom du fichier graphique des sensibilites", - ang = "Sensitivity Drawing Filename", - ), - - - ), # Fin BLOC FORMEventProbabilitySensitivitySettings - - HasoferReliabilityIndexSensitivity = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'yes', - max = 1, - fr = "Indice de fiabilite de Hasofer", - ang = "Hasofer reliability index", - ), - - HasoferReliabilityIndexSensitivitySettings = BLOC ( condition = " HasoferReliabilityIndexSensitivity in ( 'yes', ) ", - - HasoferReliabilityIndexSensitivityDrawingFilename = SIMP ( statut = "o", - typ = "TXM", - max = 1, - fr = "Nom du fichier graphique des sensibilites", - ang = "Sensitivity Drawing Filename", - ), - - - ), # Fin BLOC FHasoferReliabilityIndexSensitivitySettings - - ), # Fin BLOC SensitivityAnalysisSettings - - FunctionCallsNumber = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'yes', - max = 1, - fr = "Nombre d'appels a la fonction", - ang = "Function calls number", - ), - - - ), # Fin BLOC FORMResult - - - SORMResult = BLOC ( condition = " Approximation in ( 'SecondOrder', ) ", - - - TvedtApproximation = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'yes', - max = 1, - fr = "Approximation de Tvedt", - ang = "Tvedt approximation", - ), - - HohenBichlerApproximation = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'yes', - max = 1, - fr = "Approximation de HohenBichler", - ang = "HohenBichler approximation", - ), - - BreitungApproximation = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'yes', - max = 1, - fr = "Approximation de Breitung", - ang = "Breitung approximation", - ), - - DesignPoint = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'yes', - max = 1, - fr = "Point de conception", - ang = "Design point", - ), - - ImportanceFactor = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'yes', - max = 1, - fr = "Facteur d'importance pour variable de sortie scalaire", - ang = "Importance factor", - ), - - ImportanceFactorSettings = BLOC ( condition = " ImportanceFactor in ( 'yes', ) ", - - ImportanceFactorDrawingFilename = SIMP ( statut = "o", - typ = "TXM", - max = 1, - fr = "Nom du fichier graphique des facteurs d'importance", - ang = "Importance Factor Drawing Filename", - ), - - - ), # Fin BLOC ImportanceFactorSettings - - SensitivityAnalysis = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'yes', - max = 1, - fr = "Analyse de sensibilite", - ang = "Sensitivity analysis", - ), - - SensitivityAnalysisSettings = BLOC ( condition = " SensitivityAnalysis in ( 'yes', ) ", - - HasoferReliabilityIndexSensitivity = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'yes', - max = 1, - fr = "Indice de fiabilite de Hasofer", - ang = "Hasofer reliability index", - ), - - HasoferReliabilityIndexSensitivitySettings = BLOC ( condition = " HasoferReliabilityIndexSensitivity in ( 'yes', ) ", - - HasoferReliabilityIndexSensitivityDrawingFilename = SIMP ( statut = "o", - typ = "TXM", - max = 1, - fr = "Nom du fichier graphique des sensibilites", - ang = "Sensitivity Drawing Filename", - ), - - - ), # Fin BLOC FHasoferReliabilityIndexSensitivitySettings - - ), # Fin BLOC SensitivityAnalysisSettings - - FunctionCallsNumber = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'yes', - max = 1, - fr = "Nombre d'appels a la fonction", - ang = "Function calls number", - ), - - - ), # Fin BLOC SecondOrder - - - - ), # Fin BLOC FORM_SORMSettings - - - - ), # Fin BLOC ThresholdExceedence - - - -) # Fin PROC CRITERIA -# Ordre Catalogue CRITERIA - - - - - - - diff --git a/OldCodes/Openturns_Study/OpenTURNS_Cata_Study_V7.py b/OldCodes/Openturns_Study/OpenTURNS_Cata_Study_V7.py deleted file mode 100644 index f5109fe4..00000000 --- a/OldCodes/Openturns_Study/OpenTURNS_Cata_Study_V7.py +++ /dev/null @@ -1,1726 +0,0 @@ -# -*- coding: utf-8 -*- - -# -------------------------------------------------- -# debut entete -# -------------------------------------------------- - -#from Accas import ASSD, JDC_CATA, AU_MOINS_UN, PROC, SIMP, FACT, OPER, MACRO, BLOC, A_VALIDATOR -from Accas import * - -class loi ( ASSD ) : pass -class variable ( ASSD ) : pass - -import types -class Tuple: - def __init__(self,ntuple): - self.ntuple=ntuple - - def __convert__(self,valeur): - if type(valeur) == types.StringType: - return None - if len(valeur) != self.ntuple: - return None - return valeur - - def info(self): - return "Tuple de %s elements" % self.ntuple - - __repr__=info - __str__=info - -class Matrice: - def __init__(self,nbLigs=None,nbCols=None,methodeCalculTaille=None,formatSortie="ligne",valSup=None,valMin=None,structure=None): - self.nbLigs=nbLigs - self.nbCols=nbCols - self.methodeCalculTaille=methodeCalculTaille - self.formatSortie=formatSortie - self.valSup=valSup - self.valMin=valMin - self.structure=structure - - def __convert__(self,valeur): - # Attention ne verifie pas grand chose - if type(valeur) != types.ListType : - return None - return valeur - - def info(self): - return "Matrice %s x %s" % (self.nbLigs, self.nbCols) - - __repr__=info - __str__=info - - -#CONTEXT.debug = 1 -JdC = JDC_CATA ( code = 'OPENTURNS_STUDY', - execmodul = None, - regles = ( AU_MOINS_UN ( 'CRITERIA' ), - AU_MOINS_UN ( 'MODEL' ), - AVANT ( ('DISTRIBUTION', 'MODEL'), 'VARIABLE' ), -# A_CLASSER ( 'VARIABLE', 'CORRELATION' ), -# A_CLASSER ( 'VARIABLE', 'CRITERIA' ), -# A_CLASSER ( 'CORRELATION', 'CRITERIA' ), - ), - ) # Fin JDC_CATA - - -# -------------------------------------------------- -# fin entete -# -------------------------------------------------- - -LOG = PROC ( nom = "LOG", - op = None, - docu = "", - - DebugMessages = SIMP ( statut = "o", - typ = "TXM", - into = ( 'yes', 'no' ), - defaut = 'no', - fr = "Affichage du niveau de debug de la bibliotheque Open TURNS", - ang = "Open TURNS library debug level print", - ), - - WrapperMessages = SIMP ( statut = "o", - typ = "TXM", - into = ( 'yes', 'no' ), - defaut = 'no', - fr = "Affichage du niveau de wrapper de la bibliotheque Open TURNS", - ang = "Open TURNS library debug level print", - ), - - UserMessages = SIMP ( statut = "o", - typ = "TXM", - into = ( 'yes', 'no' ), - defaut = 'no', - fr = "Affichage du niveau de user de la bibliotheque Open TURNS", - ang = "Open TURNS library user level print", - ), - - InfoMessages = SIMP ( statut = "o", - typ = "TXM", - into = ( 'yes', 'no' ), - defaut = 'yes', - fr = "Affichage du niveau de info de la bibliotheque Open TURNS", - ang = "Open TURNS library info level print", - ), - - WarningMessages = SIMP ( statut = "o", - typ = "TXM", - into = ( 'yes', 'no' ), - defaut = 'yes', - fr = "Affichage du niveau de warning de la bibliotheque Open TURNS", - ang = "Open TURNS library warning level print", - ), - - ErrorMessages = SIMP ( statut = "o", - typ = "TXM", - into = ( 'yes', 'no' ), - defaut = 'yes', - fr = "Affichage du niveau de error de la bibliotheque Open TURNS", - ang = "Open TURNS library error level print", - ), - -) # Fin PROC LOG -# Ordre Catalogue LOG - - - - - -#================================ -# Definition des LOIS -#================================ - -# Nota : les variables de type OPER doivent etre en majuscules ! -# Nota : les variables de type OPER doivent etre de premier niveau (pas imbriquees dans un autre type) -DISTRIBUTION = OPER ( nom = "DISTRIBUTION", - sd_prod = loi, - op = 68, - fr = "Definitions des lois marginales utilisees par les variables d'entree", - - -#==== -# Type de distribution -#==== - - Kind = SIMP ( statut = "o", typ = "TXM", - into = ( "Beta", - "Exponential", - "Gamma", - "Geometric", - "Gumbel", - "Histogram", - "Laplace", - "Logistic", - "LogNormal", - "MultiNomial", - "NonCentralStudent", - "Normal", - "Poisson", - "Rayleigh", - "Student", - "Triangular", - "TruncatedNormal", - "Uniform", - #"UserDefined", - "Weibull", - ), - fr = "Choix du type de la loi marginale", - ang = "1D marginal distribution", - ), - -#==== -# Definition des parametres selon le type de la loi -#==== - - BETA = BLOC ( condition = " Kind in ( 'Beta', ) ", - - Settings = SIMP ( statut = "o", - typ = "TXM", - max = 1, - into = ( "RT", "MuSigma" ), - defaut = "RT", - fr = "Parametrage de la loi beta", - ang = "Beta distribution parameter set", - ), - - RT_Parameters = BLOC ( condition = " Settings in ( 'RT', ) ", - - R = SIMP ( statut = "o", - typ = "R", - max = 1, - val_min = 0., - fr = "Parametre R de la loi | R > 0", - ang = "R parameter | R > 0", - ), - - # T > R - T = SIMP ( statut = "o", - typ = "R", - max = 1, - val_min = 0., - fr = "Parametre T de la loi | T > R", - ang = "T parameter | T > R", - ), - - ), # Fin BLOC RT_Parameters - - - MuSigma_Parameters = BLOC ( condition = " Settings in ( 'MuSigma', ) ", - - Mu = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Moyenne de la loi", - ang = "Mean value", - ), - - Sigma = SIMP ( statut = "o", - typ = "R", - max = 1, - val_min = 0., - fr = "Ecart type de la loi", - ang = "Standard deviation", - ), - - ), # Fin BLOC MuSigma_Parameters - - - A = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Borne inferieure du support de la loi", - ang = "Support lower bound", - ), - - # B > A - B = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Borne superieure du support de la loi", - ang = "Support upper bound", - ), - - ), # Fin BLOC BETA - - - - EXPONENTIAL = BLOC ( condition = " Kind in ( 'Exponential', ) ", - - Lambda = SIMP ( statut = "o", - typ = "R", - max = 1, - val_min = 0., - fr = "Parametre Lambda | Lambda > 0", - ang = "Lambda parameter | Lambda > 0", - ), - - Gamma = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Borne inferieure du support de la loi", - ang = "Support lower bound", - ), - - ), # Fin BLOC EXPONENTIAL - - - - GAMMA = BLOC ( condition = " Kind in ( 'Gamma', ) ", - - Settings = SIMP ( statut = "o", - typ = "TXM", - max = 1, - into = ( "KLambda", "MuSigma" ), - defaut = "KLambda", - fr = "Parametrage de la loi gamma", - ang = "Gamma distribution parameter set", - ), - - KLambda_Parameters = BLOC ( condition = " Settings in ( 'KLambda', ) ", - - K = SIMP ( statut = "o", - typ = "R", - max = 1, - val_min = 0., - fr = "Parametre K de la loi | K > 0", - ang = "K parameter | K > 0", - ), - - Lambda = SIMP ( statut = "o", - typ = "R", - max = 1, - val_min = 0., - fr = "Parametre Lambda de la loi | Lambda > 0", - ang = "Lambda parameter | Lambda > 0", - ), - - ), # Fin BLOC KLambda_Parameters - - - MuSigma_Parameters = BLOC ( condition = " Settings in ( 'MuSigma', ) ", - - Mu = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Moyenne de la loi", - ang = "Mean value", - ), - - Sigma = SIMP ( statut = "o", - typ = "R", - max = 1, - val_min = 0., - fr = "Ecart type de la loi", - ang = "Standard deviation", - ), - - ), # Fin BLOC MuSigma_Parameters - - Gamma = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Borne inferieure du supoport de la loi", - ang = "Support lower bound", - ), - - - ), # Fin BLOC GAMMA - - - - GEOMETRIC = BLOC ( condition = " Kind in ( 'Geometric', ) ", - - P = SIMP ( statut = "o", - typ = "R", - max = 1, - val_min = 0., - val_max = 1., - fr = "Parametre P | 0 < P < 1", - ang = "P parameter | 0 < P < 1", - ), - - ), # Fin BLOC GEOMETRIC - - - - GUMBEL = BLOC ( condition = " Kind in ( 'Gumbel', ) ", - - Settings = SIMP ( statut = "o", - typ = "TXM", - max = 1, - into = ( "AlphaBeta", "MuSigma" ), - defaut = "AlphaBeta", - fr = "Parametrage de la loi gumbel", - ang = "Gumbel distribution parameter set", - ), - - AlphaBeta_Parameters = BLOC ( condition = " Settings in ( 'AlphaBeta', ) ", - - Alpha = SIMP ( statut = "o", - typ = "R", - max = 1, - val_min = 0., - fr = "Parametre Alpha de la loi | Alpha > 0", - ang = "Alpha parameter | Alpha > 0", - ), - - Beta = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Parametre Beta de la loi", - ang = "Beta parameter", - ), - - ), # Fin BLOC AlphaBeta_Parameters - - - MuSigma_Parameters = BLOC ( condition = " Settings in ( 'MuSigma', ) ", - - Mu = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Moyenne de la loi", - ang = "Mean value", - ), - - Sigma = SIMP ( statut = "o", - typ = "R", - max = 1, - val_min = 0., - fr = "Ecart type de la loi", - ang = "Standard deviation", - ), - - ), # Fin BLOC MuSigma_Parameters - - ), # Fin BLOC GUMBEL - - - - HISTOGRAM = BLOC ( condition = " Kind in ( 'Histogram', ) ", - - First = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Borne inferieure du supoport de la loi", - ang = "Support lower bound", - ), - - # Il faut definir une collection de couples ( x,p ) - Values = SIMP ( statut = 'o', - typ = Tuple(2), - max = '**', - fr = "Liste de couples : largeur de classe, hauteur de classe", - ang = "Class bandwidth, class height couple list", - validators=VerifTypeTuple(('R','R')), - ), - - ), # Fin BLOC HISTOGRAM - - - - LAPLACE = BLOC ( condition = " Kind in ( 'Laplace', ) ", - - Lambda = SIMP ( statut = "o", - typ = "R", - max = 1, - val_min = 0., - fr = "Parametre Lambda | Lambda > 0", - ang = "Lambda parameter | Lambda > 0", - ), - - Mu = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Moyenne de la loi", - ang = "Mean value", - ), - - ), # Fin BLOC LAPLACE - - LOGNORMAL = BLOC ( condition = " Kind in ( 'LogNormal', ) ", - - Settings = SIMP ( statut = "o", - typ = "TXM", - max = 1, - into = ( "MuSigmaLog", "MuSigma", "MuSigmaOverMu" ), - defaut = "MuSigmaLog", - fr = "Parametrage de la loi lognormale", - ang = "Lognormal distribution parameter set", - ), - - MuSigma_Parameters = BLOC ( condition = " Settings in ( 'MuSigma', ) ", - - Mu = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Moyenne de la loi", - ang = "Mean value", - ), - - Sigma = SIMP ( statut = "o", - typ = "R", - max = 1, - val_min = 0., - fr = "Ecart type de la loi", - ang = "Standard deviation", - ), - - ), # Fin BLOC MuSigma_Parameters - - MuSigmaOverMu_Parameters = BLOC ( condition = " Settings in ( 'MuSigmaOverMu', ) ", - - Mu = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Moyenne de la loi", - ang = "Mean value", - ), - - SigmaOverMu = SIMP ( statut = "o", - typ = "R", - max = 1, - val_min = 0., - fr = "Rapport ecart type / moyenne de la loi", - ang = "Standard deviation / mean value ratio", - ), - - ), # Fin BLOC MuSigmaOverMu_Parameters - - MuSigmaLog_Parameters = BLOC ( condition = " Settings in ( 'MuSigmaLog', ) ", - - MuLog = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Moyenne du log", - ang = "Log mean value", - ), - - SigmaLog = SIMP ( statut = "o", - typ = "R", - max = 1, - val_min = 0., - fr = "Ecart type du log", - ang = "Log standard deviation", - ), - - ), # Fin BLOC MuSigmaLog_Parameters - - Gamma = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Borne inferieure du support de la loi", - ang = "Support lower bound", - ), - - ), # Fin BLOC LOGNORMAL - - - - LOGISTIC = BLOC ( condition = " Kind in ( 'Logistic', ) ", - - Alpha = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Borne inferieure du supoport de la loi", - ang = "Support lower bound", - ), - - Beta = SIMP ( statut = "o", - typ = "R", - max = 1, - val_min = 0., - fr = "Parametre Beta de la loi | Beta > 0", - ang = "Beta parameter | Beta > 0", - ), - - ), # Fin BLOC LOGISTIC - - - - MULTINOMIAL = BLOC ( condition = " Kind in ( 'MultiNomial', ) ", - - N = SIMP ( statut = "o", - typ = "I", - max = 1, - fr = "Parametre N de la loi | N > 0", - ang = "N parameter | N > 0", - ), - - # Il faut definir une collection de couples ( x,p ) - Values = SIMP ( statut = 'o', - typ = "R", - max = '**', - fr = "Liste de probabilités", - ang = "Probability list", - validators=VerifTypeTuple(('R','R')), - ), - - ), # Fin BLOC MULTINOMIAL - - - NONCENTRALSTUDENT = BLOC ( condition = " Kind in ( 'NonCentralStudent', ) ", - - Nu = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Parametre Nu de la loi | Nu > 0", - ang = "Nu parameter | Nu > 0", - ), - - Delta = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Parametre Delta de la loi | Delta > 0", - ang = "Delta parameter | Delta > 0", - ), - - Gamma = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Parametre Gamma de centrage de la loi", - ang = "Gamma parameter", - ), - - ), # Fin BLOC NONCENTRALSTUDENT - - - NORMAL = BLOC ( condition = " Kind in ( 'Normal', ) ", - - Mu = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Moyenne de la loi", - ang = "Mean value", - ), - - Sigma = SIMP ( statut = "o", - typ = "R", - max = 1, - val_min = 0., - fr = "Ecart type de la loi", - ang = "Standard deviation", - ), - - ), # Fin BLOC NORMAL - - - - POISSON = BLOC ( condition = " Kind in ( 'Poisson', ) ", - - Lambda = SIMP ( statut = "o", - typ = "R", - max = 1, - val_min = 0., - fr = "Parametre Lambda de la loi | Lambda > 0", - ang = "Lambda parameter | Lambda > 0", - ), - - ), # Fin BLOC POISSON - - - - RAYLEIGH = BLOC ( condition = " Kind in ( 'Rayleigh', ) ", - - Sigma = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Parametre Sigma de la loi | Sigma > 0", - ang = "Sigma parameter | Sigma > 0", - ), - - Gamma = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Borne inferieure du support de la loi", - ang = "Support lower bound", - ), - ), # Fin BLOC RAYLEIGH - - - STUDENT = BLOC ( condition = " Kind in ( 'Student', ) ", - - Mu = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Parametre Mu de la loi", - ang = "Mu parameter", - ), - - Nu = SIMP ( statut = "o", - typ = "R", - max = 1, - val_min = 2., - fr = "Parametre Nu de la loi | Nu > 2", - ang = "Nu parameter | Nu > 2", - ), - - Sigma = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Parametre Sigma de la loi", - ang = "Sigma parameter", - ), - - ), # Fin BLOC STUDENT - - - - TRIANGULAR = BLOC ( condition = " Kind in ( 'Triangular', ) ", - - A = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Borne inferieure du support de la loi | A < M < B", - ang = "Support lower bound | A < M < B", - ), - - M = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Mode de la loi | A < M < B", - ang = "Mode | A < M < B", - ), - - B = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Borne superieure du support de la loi | A < M < B", - ang = "Support upper bound | A < M < B", - ), - - ), # Fin BLOC TRIANGULAR - - - - TRUNCATEDNORMAL = BLOC ( condition = " Kind in ( 'TruncatedNormal', ) ", - - MuN = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Moyenne de la loi Normale non tronquée", - ang = "Mean value of the associated non truncated normal distribution", - ), - - SigmaN = SIMP ( statut = "o", - typ = "R", - max = 1, - val_min = 0., - fr = "Ecart-type de la loi Normale non tronquée", - ang = "Standard deviation of the associated non truncated normal distribution", - ), - - A = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Borne inferieure de la loi | A < B", - ang = "Lower bound | A < B", - ), - - B = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Borne superieure de la loi | A < B", - ang = "Upper bound | A < B", - ), - - ), # Fin BLOC TRUNCATEDNORMAL - - - - UNIFORM = BLOC ( condition = " Kind in ( 'Uniform', ) ", - - A = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Borne inferieure du support de la loi | A < B", - ang = "Support lower bound | A < B", - ), - - B = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Borne superieure du support de la loi | A < B", - ang = "Support upper bound | A < B", - ), - - ), # Fin BLOC UNIFORM - - - - USERDEFINED = BLOC ( condition = " Kind in ( 'UserDefined', ) ", - - # Il faut definir une collection de couples ( x,p ) - Values = SIMP ( statut = 'o', - typ = 'R', - max = '**', - ), - - ), # Fin BLOC USERDEFINED - - - - WEIBULL = BLOC ( condition = " Kind in ( 'Weibull', ) ", - - Settings = SIMP ( statut = "o", - typ = "TXM", - max = 1, - into = ( "AlphaBeta", "MuSigma" ), - defaut = "AlphaBeta", - fr = "Parametrage de la loi weibull", - ang = "Weibull distribution parameter set", - ), - - AlphaBeta_Parameters = BLOC ( condition = " Settings in ( 'AlphaBeta', ) ", - - Alpha = SIMP ( statut = "o", - typ = "R", - max = 1, - val_min = 0., - fr = "Parametre Alpha de la loi | Alpha > 0", - ang = "Alpha parameter | Alpha > 0", - ), - - Beta = SIMP ( statut = "o", - typ = "R", - max = 1, - val_min = 0., - fr = "Parametre Beta de la loi | Beta > 0", - ang = "Beta parameter | Beta > 0", - ), - - ), # Fin BLOC AlphaBeta_Parameters - - - MuSigma_Parameters = BLOC ( condition = " Settings in ( 'MuSigma', ) ", - - Mu = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Moyenne de la loi", - ang = "Mean value", - ), - - Sigma = SIMP ( statut = "o", - typ = "R", - max = 1, - val_min = 0., - fr = "Ecart type de la loi", - ang = "Standard deviation", - ), - - ), # Fin BLOC MuSigma_Parameters - - Gamma = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Borne inferieure du support de la loi", - ang = "Support lower bound", - ), - - ), # Fin BLOC WEIBULL - -) # Fin OPER DISTRIBUTION -# Ordre Catalogue DISTRIBUTION - - - -#================================ -# Definition du modele physique -#================================ - - -DETERMINISTICVARIABLE = OPER ( nom = "DETERMINISTICVARIABLE", - sd_prod = variable, - op = None, - fr = "Variable deterministe", - ang = "Deterministic variable", - - N = SIMP ( statut = 'o', - typ = "TXM", - fr = "Nom", - ang = "Name", - ), - - T = SIMP ( statut = 'o', - defaut = "in", - into = ( "in" , "out", ), - typ = "TXM", - fr = "Type", - ang = "Type", - ), - - R = SIMP ( statut = 'o', - defaut = 0, - typ = "I", - fr = "Rang", - ang = "Rank", - ), - -) # Fin OPER DETERMINISTICVARIABLE -# Ordre Catalogue DETERMINISTICVARIABLE - - - -import opsOT -MODEL = MACRO ( nom = "MODEL", - op = None, - UIinfo = { "groupes" : ( "Gestion du travail", ) }, - fr = "Chargement du wrapper du modele physique", - ang = "Physical model wrapper load", - sd_prod = opsOT.INCLUDE, - op_init = opsOT.INCLUDE_context, - fichier_ini = 1, - - FileName = SIMP ( statut = "o", - typ = "Fichier", - fr = "Nom du modele physique", - ang = "Physical model identifier", - ), - -) # Fin PROC MODEL -# Ordre Catalogue MODEL - - - - -VARIABLE = PROC ( nom = "VARIABLE", - op = None, - docu = "", - fr = "Variable probabiliste", - ang = "Probabilistic variable", - - ModelVariable = SIMP ( statut = "o", - typ = ( variable, ), - fr = "Variable d'entrée du modèle", - ang = "Input variable of the model", - ), - - Distribution = SIMP ( statut = "o", - typ = ( loi, ), - fr = "Modélisation probabiliste", - ang = "Probabilistic modelisation", - ), - -) # Fin PROC VARIABLE -# Ordre Catalogue VARIABLE - - -CORRELATION = PROC ( nom = 'CORRELATION', - op = None, - docu = "", - fr = "Correlation entre variables", - ang = "Variable correlation", - - Copula = SIMP ( statut = "o", - typ = 'TXM', - into = ( "Independent", "Normal" ), - defaut = "Independent", - fr = "Type de la copule", - ang = "Copula kind", - ), - - Matrix = BLOC ( condition = "Copula in ( 'Normal', )", - - CorrelationMatrix = SIMP ( statut = "o", - typ = Matrice(nbLigs=None, - nbCols=None, - methodeCalculTaille='nbDeVariables', - valSup=1, - valMin=-1, - structure="symetrique"), - fr = "Matrice de correlation entre les variables d'entree", - ang = "Correlation matrix for input variables", - ), - ), # Fin BLOC Matrix - - -) # Fin PROC CORRELATION -# Ordre Catalogue CORRELATION - - - - - -#================================ -# Definition de l'etude -#================================ - -# Nota : les variables de type PROC doivent etre en majuscules ! -CRITERIA = PROC ( nom = "CRITERIA", - op = None, - docu = "", - fr = "Critère de l'étude d'incertitudes", - ang = "Uncertainty study criteria", - - - - Type = SIMP ( statut = "o", - typ = "TXM", - into = ( "Min/Max", "Central Uncertainty", "Threshold Exceedence" ), - fr = "Type du critère", - ang = "Criteria type", - ), - - - - - - - - MinMax = BLOC ( condition = " Type in ( 'Min/Max', ) ", - - Method = SIMP ( statut = "o", - typ = "TXM", - into = ( "Experiment Plane", "Random Sampling" ), - fr = "Methode", - ang = "Method", - ), - # UC 3.1.1 - ExperimentPlaneSettings = BLOC ( condition = " Method in ( 'Experiment Plane', ) ", - - ExperimentPlane = SIMP ( statut = "o", - typ = "TXM", - into = ( "Axial", "Factorial", "Composite", ), - fr = "Type du plan d'expérience", - ang = "Experiment plane type", - ), - - Levels = SIMP ( statut = "o", - typ = "R", - val_min = 0.0, - max = '**', - fr = "Liste de niveaux dans chaque direction", - ang = "Levels in each direction", - ), - - # Scaled Vector - UnitPerDimension = SIMP ( statut = "o", - typ = "R", - max = '**', - fr = "Unité par dimension (autant que de variables declarées)", - ang = "Units per dimension (as much as declared variables)", - ), - - # Translation Vector - Center = SIMP ( statut = "o", - typ = "R", - max = '**', - fr = "Centre du plan d'expérience", - ang = "Experiment plan center", - ), - - ), # Fin BLOC ExperimentPlaneSettings - - - - RandomSamplingSettings = BLOC ( condition = " Method in ( 'Random Sampling', ) ", - - SimulationsNumber = SIMP ( statut = "o", - typ = "I", - val_min = 1, - fr = "Nombre de points", - ang = "Points number", - ), - - ), # Fin BLOC RandomSamplingSettings - - Result = SIMP ( statut = "o", - typ = "TXM", - into = ( "Min/Max", ), - defaut = "Min/Max", - fr = "Le minimum et le maximum de la variable d'intérêt", - ang = "The min and max values", - ), - - - ), # Fin BLOC MinMax - - - - - CentralUncertainty = BLOC ( condition = " Type in ( 'Central Uncertainty', ) ", - - Method = SIMP ( statut = "o", - typ = "TXM", - into = ( "Taylor Variance Decomposition", "Random Sampling" ), - fr = "Methode", - ang = "Method", - ), - - # UC 3.2. - TaylorVarianceDecompositionSettings = BLOC ( condition = " Method in ( 'Taylor Variance Decomposition', ) ", - - Result = FACT ( statut = "o", - min = 1, - max = "**", - - MeanFirstOrder = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'yes', - max = 1, - fr = "Moyenne au premier ordre", - ang = "MeanFirstOrder", - ), - - StandardDeviationFirstOrder = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'yes', - max = 1, - fr = "Ecart-type au premier ordre", - ang = "StandardDeviationFirstOrder", - ), - - MeanSecondOrder = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'no', - max = 1, - fr = "Moyenne au second ordre", - ang = "MeanSecondOrder", - ), - - ImportanceFactor = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'yes', - max = 1, - fr = "Facteur d'importance pour variable de sortie scalaire", - ang = "ImportanceFactor", - ), - ImportanceFactorSettings = BLOC ( condition = " ImportanceFactor in ( 'yes', ) ", - - ImportanceFactorDrawingFilename = SIMP ( statut = "o", - typ = "TXM", - max = 1, - fr = "Nom du fichier graphique des facteurs d'importance", - ang = "Importance Factor Drawing Filename", - ), - - - ), # Fin BLOC ImportanceFactorSettings - - ), # Fin FACT Result - - ), # Fin BLOC TaylorVarianceDecompositionSettings - - - - RandomSamplingSettings = BLOC ( condition = " Method in ( 'Random Sampling', ) ", - - SimulationsNumber = SIMP ( statut = "o", - typ = "I", - val_min = 1, - fr = "Nombre de points", - ang = "Points number", - ), - - Result = FACT ( statut = "o", - min = 1, - max = "**", - - EmpiricalMean = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'yes', - max = 1, - fr = "Moyenne empirique", - ang = "Empirical mean", - ), - - EmpiricalStandardDeviation = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'yes', - max = 1, - fr = "Ecart-type empirique", - ang = "Empirical standard deviation", - ), - - EmpiricalQuantile = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'yes', - max = 1, - fr = "Quantile empirique", - ang = "Empirical quantile", - ), - - EmpiricalQuantileSettings = BLOC ( condition = " EmpiricalQuantile in ( 'yes', ) ", - - EmpiricalQuantile_Order = SIMP ( statut = "o", - typ = 'R', - defaut = 0.95, - max = 1, - val_min = 0.0, - val_max = 1.0, - fr = "Ordre du quantile empirique", - ang = "Empirical quantile order", - ), - - ), # Fin BLOC EmpiricalQuantileSettings - - CorrelationAnalysis = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'yes', - max = 1, - fr = "Correlations analysees", - ang = "Analysed correlations", - ), - - KernelSmoothing = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'yes', - max = 1, - fr = "Kernel smoothing de l'echantillon", - ang = "Kernel smoothing of the sample", - ), - - KernelSmoothingSettings = BLOC ( condition = " KernelSmoothing in ( 'yes', ) ", - - KernelSmoothingDrawingFilename = SIMP ( statut = "o", - typ = "TXM", - max = 1, - fr = "Nom du fichier graphique de la reconstruction a noyau", - ang = "Kernel Smoothing Drawing Filename", - ), - - - ), # Fin BLOC KernelSmoothingSettings - - ), # Fin FACT Result - - ), # Fin BLOC RandomSamplingSettings - - ), # Fin BLOC CentralUncertainty - - - - - ThresholdExceedence = BLOC ( condition = " Type in ( 'Threshold Exceedence', ) ", - - Event = FACT ( statut = "o", - min = 1, - max = 1, - - Threshold = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Le seuil de defaillance", - ang = "Failure threshold", - ), - - ComparisonOperator = SIMP ( statut = "o", - typ = "TXM", - max = 1, - into = ( "Less", "LessOrEqual", "Equal", "GreaterOrEqual", "Greater" ), - fr = "Que faut-il ne pas depasser : un maximum ou un minimum", - ang = "What is the failure threshold : maximum or minimum", - ), - ), # Fin FACT Event - - - Method = SIMP ( statut = "o", - typ = "TXM", - into = ( "Simulation", "FORM_SORM" ), - fr = "Methode", - ang = "Method", - ), - - SimulationSettings = BLOC ( condition = " Method in ( 'Simulation', ) ", - - Algorithm = SIMP ( statut = "o", - typ = "TXM", - into = ( "MonteCarlo", "LHS", "ImportanceSampling" ), - fr = "Algorithme de simulation", - ang = "Simulation algorithm", - ), - - - RandomGenerator = FACT ( statut = "o", - min = 1, - max = 1, - - SeedToBeSet = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'no', - max = 1, - fr = "La racine du generateur aleatoire doit-elle etre positionnee ?", - ang = "Does the random generator seed need to be set ?", - ), - - SeedSettings = BLOC ( condition = " SeedToBeSet in ( 'yes', ) ", - - RandomGeneratorSeed = SIMP ( statut = "o", - typ = "I", - max = 1, - fr = "Racine du generateur aleatoire", - ang = "Random generator seed", - ), - - ), # Fin BLOC SeedSettings - - ), # Fin FACT RandomGenerator - - - BlockSize = SIMP ( statut = "o", - typ = "I", - max = 1, - val_min = 1, - defaut = 1, - fr = "Nombre de calculs realises en bloc", - ang = "Number of computations as a block", - ), - - MaximumOuterSampling = SIMP ( statut = "o", - typ = "I", - max = 1, - val_min = 1, - fr = "Maximum d'iterations externes", - ang = "Maximum outer Sampling value", - ), - - MaximumCoefficientOfVariation = SIMP ( statut = "o", - typ = "R", - max = 1, - defaut = 0.1, - val_min = 0.0, - val_max = 1.0, - fr = "Coefficient de variation maximum", - ang = "Maximum coefficient of variation" - ), - - ImportanceSamplingSettings = BLOC ( condition = " Algorithm in ( 'ImportanceSampling', ) ", - - MeanVector = SIMP ( statut = "o", - typ = "R", - max = "**", - fr = "Moyenne", - ang = "Mean vector", - ), - - Correlation = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'Independent', 'Linear' ), - defaut = 'Independent', - max = 1, - fr = "Le type de correlation entre les variables", - ang = "Correlation between variables", - ), - - ), # Fin BLOC ImportanceSamplingSettings - - Result = FACT ( statut = "o", - min = 1, - max = "**", - - Probability = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', ), - defaut = 'yes', - max = 1, - fr = "Probabiblite", - ang = "Probability", - ), - - StandardDeviation = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', ), - defaut = 'yes', - max = 1, - fr = "Ecart type", - ang = "Standard deviation", - ), - - ConfidenceInterval = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'yes', - max = 1, - fr = "Intervale de confiance", - ang = "Confidence interval", - ), - - ConfidenceIntervalSettings = BLOC ( condition = " ConfidenceInterval in ( 'yes', ) ", - - Level = SIMP ( statut = "o", - typ = 'R', - defaut = 0.9, - max = 1, - val_min = 0.0, - val_max = 1.0, - fr = "Niveau de confiance", - ang = "Confidence level", - ), - - ), # Fin BLOC ConfidenceIntervalSettings - - VariationCoefficient = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'yes', - max = 1, - fr = "Coefficient de variation", - ang = "Coefficient of variation", - ), - - SimulationsNumber = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'yes', - max = 1, - fr = "Nombre d'iterations", - ang = "Iteration number", - ), - - ConvergenceGraph = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'yes', - max = 1, - fr = "Graphe de convergence", - ang = "Convergence graph", - ), - - ConvergenceGraphSettings = BLOC ( condition = " ConvergenceGraph in ( 'yes', ) ", - - ConvergenceDrawingFilename = SIMP ( statut = "o", - typ = "TXM", - max = 1, - fr = "Nom du fichier graphique de la convergence", - ang = "Convergence Drawing Filename", - ), - - - ), # Fin BLOC ConvergenceGraphSettings - - ), # Fin FACT Result - - - - ), # Fin BLOC SimulationSettings - - - - FORM_SORMSettings = BLOC ( condition = " Method in ( 'FORM_SORM', ) ", - - Approximation = SIMP ( statut = "o", - typ = "TXM", - defaut = "FirstOrder", - into = ( "FirstOrder", "SecondOrder" ), - max = 1, - fr = "Approximation", - ang = "Approximation", - ), - - OptimizationAlgorithm = SIMP ( statut = "o", - typ = "TXM", - defaut = "Cobyla", - into = ( "Cobyla", "AbdoRackwitz" ), - max = 1, - fr = "Methode d'optimisation", - ang = "Optimization method", - ), - - - PhysicalStartingPoint = SIMP ( statut = "f", - typ = "R", - max = "**", - fr = "Point de demarrage de l'algorithme iteratif", - ang = "Initial point for iterative process", - ), - - MaximumIterationsNumber = SIMP ( statut = "f", - typ = "I", - max = 1, - val_min = 1, - fr = "Nombre maximum d'iterations", - ang = "Maximum number of iterations", - ), - - - MaximumAbsoluteError = SIMP ( statut = "o", - typ = "R", - max = 1, - defaut = 1E-4, - val_min = 0.0, - fr = "Distance maximum absolue entre 2 iterations successives", - ang = "Absolute maximum distance between 2 successive iterates", - ), - - MaximumRelativeError = SIMP ( statut = "o", - typ = "R", - max = 1, - defaut = 1E-4, - val_min = 0.0, - fr = "Distance maximum relative entre 2 iterations successives", - ang = "Relative maximum distance between 2 successive iterates", - ), - - MaximumConstraintError = SIMP ( statut = "o", - typ = "R", - max = 1, - defaut = 1E-4, - val_min = 0.0, - fr = "Valeur maximum absolue de la fonction moins la valeur du niveau", - ang = "Maximum absolute value of the constraint function minus the level value", - ), - - ImportanceSampling = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'no', - max = 1, - fr = "Tirage d'importance au point de conception", - ang = "Importance sampling at design point", - ), - - FORMResult = BLOC ( condition = " Approximation in ( 'FirstOrder', ) ", - - Probability = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', ), - defaut = 'yes', - max = 1, - fr = "Probabiblite", - ang = "Probability", - ), - - DesignPoint = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'yes', - max = 1, - fr = "Point de conception", - ang = "Design point", - ), - - HasoferReliabilityIndex = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'yes', - max = 1, - fr = "Indice de fiabilite", - ang = "Reliability index", - ), - - ImportanceFactor = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'yes', - max = 1, - fr = "Facteur d'importance pour variable de sortie scalaire", - ang = "Importance factor", - ), - - ImportanceFactorSettings = BLOC ( condition = " ImportanceFactor in ( 'yes', ) ", - - ImportanceFactorDrawingFilename = SIMP ( statut = "o", - typ = "TXM", - max = 1, - fr = "Nom du fichier graphique des facteurs d'importance", - ang = "Importance Factor Drawing Filename", - ), - - - ), # Fin BLOC ImportanceFactorSettings - - SensitivityAnalysis = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'yes', - max = 1, - fr = "Analyse de sensibilite", - ang = "Sensitivity analysis", - ), - - SensitivityAnalysisSettings = BLOC ( condition = " SensitivityAnalysis in ( 'yes', ) ", - - FORMEventProbabilitySensitivity = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'yes', - max = 1, - fr = "Indice de fiabilite de Hasofer", - ang = "Hasofer reliability index", - ), - - FORMEventProbabilitySensitivitySettings = BLOC ( condition = " FORMEventProbabilitySensitivity in ( 'yes', ) ", - - FORMEventProbabilitySensitivityDrawingFilename = SIMP ( statut = "o", - typ = "TXM", - max = 1, - fr = "Nom du fichier graphique des sensibilites", - ang = "Sensitivity Drawing Filename", - ), - - - ), # Fin BLOC FORMEventProbabilitySensitivitySettings - - HasoferReliabilityIndexSensitivity = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'yes', - max = 1, - fr = "Indice de fiabilite de Hasofer", - ang = "Hasofer reliability index", - ), - - HasoferReliabilityIndexSensitivitySettings = BLOC ( condition = " HasoferReliabilityIndexSensitivity in ( 'yes', ) ", - - HasoferReliabilityIndexSensitivityDrawingFilename = SIMP ( statut = "o", - typ = "TXM", - max = 1, - fr = "Nom du fichier graphique des sensibilites", - ang = "Sensitivity Drawing Filename", - ), - - - ), # Fin BLOC FHasoferReliabilityIndexSensitivitySettings - - ), # Fin BLOC SensitivityAnalysisSettings - - FunctionCallsNumber = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'yes', - max = 1, - fr = "Nombre d'appels a la fonction", - ang = "Function calls number", - ), - - - ), # Fin BLOC FORMResult - - - SORMResult = BLOC ( condition = " Approximation in ( 'SecondOrder', ) ", - - - TvedtApproximation = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'yes', - max = 1, - fr = "Approximation de Tvedt", - ang = "Tvedt approximation", - ), - - HohenBichlerApproximation = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'yes', - max = 1, - fr = "Approximation de HohenBichler", - ang = "HohenBichler approximation", - ), - - BreitungApproximation = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'yes', - max = 1, - fr = "Approximation de Breitung", - ang = "Breitung approximation", - ), - - DesignPoint = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'yes', - max = 1, - fr = "Point de conception", - ang = "Design point", - ), - - ImportanceFactor = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'yes', - max = 1, - fr = "Facteur d'importance pour variable de sortie scalaire", - ang = "Importance factor", - ), - - ImportanceFactorSettings = BLOC ( condition = " ImportanceFactor in ( 'yes', ) ", - - ImportanceFactorDrawingFilename = SIMP ( statut = "o", - typ = "TXM", - max = 1, - fr = "Nom du fichier graphique des facteurs d'importance", - ang = "Importance Factor Drawing Filename", - ), - - - ), # Fin BLOC ImportanceFactorSettings - - SensitivityAnalysis = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'yes', - max = 1, - fr = "Analyse de sensibilite", - ang = "Sensitivity analysis", - ), - - SensitivityAnalysisSettings = BLOC ( condition = " SensitivityAnalysis in ( 'yes', ) ", - - HasoferReliabilityIndexSensitivity = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'yes', - max = 1, - fr = "Indice de fiabilite de Hasofer", - ang = "Hasofer reliability index", - ), - - HasoferReliabilityIndexSensitivitySettings = BLOC ( condition = " HasoferReliabilityIndexSensitivity in ( 'yes', ) ", - - HasoferReliabilityIndexSensitivityDrawingFilename = SIMP ( statut = "o", - typ = "TXM", - max = 1, - fr = "Nom du fichier graphique des sensibilites", - ang = "Sensitivity Drawing Filename", - ), - - - ), # Fin BLOC FHasoferReliabilityIndexSensitivitySettings - - ), # Fin BLOC SensitivityAnalysisSettings - - FunctionCallsNumber = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'yes', - max = 1, - fr = "Nombre d'appels a la fonction", - ang = "Function calls number", - ), - - - ), # Fin BLOC SecondOrder - - - - ), # Fin BLOC FORM_SORMSettings - - - - ), # Fin BLOC ThresholdExceedence - - - -) # Fin PROC CRITERIA -# Ordre Catalogue CRITERIA - - - - - - - diff --git a/OldCodes/Openturns_Study/OpenTURNS_Cata_Study_V7.py.orig b/OldCodes/Openturns_Study/OpenTURNS_Cata_Study_V7.py.orig deleted file mode 100644 index 9a239a09..00000000 --- a/OldCodes/Openturns_Study/OpenTURNS_Cata_Study_V7.py.orig +++ /dev/null @@ -1,1719 +0,0 @@ -# -*- coding: utf-8 -*- - -# -------------------------------------------------- -# debut entete -# -------------------------------------------------- - -#from Accas import ASSD, JDC_CATA, AU_MOINS_UN, PROC, SIMP, FACT, OPER, MACRO, BLOC, A_VALIDATOR -from Accas import * - -class loi ( ASSD ) : pass -class variable ( ASSD ) : pass - -import types -class Tuple: - def __init__(self,ntuple): - self.ntuple=ntuple - - def __convert__(self,valeur): - if type(valeur) == types.StringType: - return None - if len(valeur) != self.ntuple: - return None - return valeur - - def info(self): - return "Tuple de %s elements" % self.ntuple - - __repr__=info - __str__=info - -class Matrice: - def __init__(self,nbLigs=None,nbCols=None,methodeCalculTaille=None,formatSortie="ligne",valSup=None,valMin=None,structure=None): - self.nbLigs=nbLigs - self.nbCols=nbCols - self.methodeCalculTaille=methodeCalculTaille - self.formatSortie=formatSortie - self.valSup=valSup - self.valMin=valMin - self.structure=structure - - def __convert__(self,valeur): - # Attention ne verifie pas grand chose - if type(valeur) != types.ListType : - return None - return valeur - - def info(self): - return "Matrice %s x %s" % (self.nbLigs, self.nbCols) - - __repr__=info - __str__=info - - -#CONTEXT.debug = 1 -JdC = JDC_CATA ( code = 'OPENTURNS_STUDY', - execmodul = None, - regles = ( AU_MOINS_UN ( 'CRITERIA' ), - AU_MOINS_UN ( 'MODEL' ), - AVANT ( ('DISTRIBUTION', 'MODEL'), 'VARIABLE' ), -# A_CLASSER ( 'VARIABLE', 'CORRELATION' ), -# A_CLASSER ( 'VARIABLE', 'CRITERIA' ), -# A_CLASSER ( 'CORRELATION', 'CRITERIA' ), - ), - ) # Fin JDC_CATA - - -# -------------------------------------------------- -# fin entete -# -------------------------------------------------- - -LOG = PROC ( nom = "LOG", - op = None, - docu = "", - - DebugMessages = SIMP ( statut = "o", - typ = "TXM", - into = ( 'yes', 'no' ), - defaut = 'no', - fr = "Affichage du niveau de debug de la bibliotheque Open TURNS", - ang = "Open TURNS library debug level print", - ), - - WrapperMessages = SIMP ( statut = "o", - typ = "TXM", - into = ( 'yes', 'no' ), - defaut = 'no', - fr = "Affichage du niveau de wrapper de la bibliotheque Open TURNS", - ang = "Open TURNS library debug level print", - ), - - UserMessages = SIMP ( statut = "o", - typ = "TXM", - into = ( 'yes', 'no' ), - defaut = 'no', - fr = "Affichage du niveau de user de la bibliotheque Open TURNS", - ang = "Open TURNS library user level print", - ), - - InfoMessages = SIMP ( statut = "o", - typ = "TXM", - into = ( 'yes', 'no' ), - defaut = 'yes', - fr = "Affichage du niveau de info de la bibliotheque Open TURNS", - ang = "Open TURNS library info level print", - ), - - WarningMessages = SIMP ( statut = "o", - typ = "TXM", - into = ( 'yes', 'no' ), - defaut = 'yes', - fr = "Affichage du niveau de warning de la bibliotheque Open TURNS", - ang = "Open TURNS library warning level print", - ), - - ErrorMessages = SIMP ( statut = "o", - typ = "TXM", - into = ( 'yes', 'no' ), - defaut = 'yes', - fr = "Affichage du niveau de error de la bibliotheque Open TURNS", - ang = "Open TURNS library error level print", - ), - -) # Fin PROC LOG -# Ordre Catalogue LOG - - - - - -#================================ -# Definition des LOIS -#================================ - -# Nota : les variables de type OPER doivent etre en majuscules ! -# Nota : les variables de type OPER doivent etre de premier niveau (pas imbriquees dans un autre type) -DISTRIBUTION = OPER ( nom = "DISTRIBUTION", - sd_prod = loi, - op = 68, - fr = "Definitions des lois marginales utilisees par les variables d'entree", - - -#==== -# Type de distribution -#==== - - Kind = SIMP ( statut = "o", typ = "TXM", - into = ( "Beta", - "Exponential", - "Gamma", - "Geometric", - "Gumbel", - "Histogram", - "Laplace", - "Logistic", - "LogNormal", - "MultiNomial", - "NonCentralStudent", - "Normal", - "Poisson", - "Rayleigh", - "Student", - "Triangular", - "TruncatedNormal", - "Uniform", - #"UserDefined", - "Weibull", - ), - fr = "Choix du type de la loi marginale", - ang = "1D marginal distribution", - ), - -#==== -# Definition des parametres selon le type de la loi -#==== - - BETA = BLOC ( condition = " Kind in ( 'Beta', ) ", - - Settings = SIMP ( statut = "o", - typ = "TXM", - max = 1, - into = ( "RT", "MuSigma" ), - defaut = "RT", - fr = "Parametrage de la loi beta", - ang = "Beta distribution parameter set", - ), - - RT_Parameters = BLOC ( condition = " Settings in ( 'RT', ) ", - - R = SIMP ( statut = "o", - typ = "R", - max = 1, - val_min = 0., - fr = "Parametre R de la loi | R > 0", - ang = "R parameter | R > 0", - ), - - # T > R - T = SIMP ( statut = "o", - typ = "R", - max = 1, - val_min = 0., - fr = "Parametre T de la loi | T > R", - ang = "T parameter | T > R", - ), - - ), # Fin BLOC RT_Parameters - - - MuSigma_Parameters = BLOC ( condition = " Settings in ( 'MuSigma', ) ", - - Mu = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Moyenne de la loi", - ang = "Mean value", - ), - - Sigma = SIMP ( statut = "o", - typ = "R", - max = 1, - val_min = 0., - fr = "Ecart type de la loi", - ang = "Standard deviation", - ), - - ), # Fin BLOC MuSigma_Parameters - - - A = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Borne inferieure du support de la loi", - ang = "Support lower bound", - ), - - # B > A - B = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Borne superieure du support de la loi", - ang = "Support upper bound", - ), - - ), # Fin BLOC BETA - - - - EXPONENTIAL = BLOC ( condition = " Kind in ( 'Exponential', ) ", - - Lambda = SIMP ( statut = "o", - typ = "R", - max = 1, - val_min = 0., - fr = "Parametre Lambda | Lambda > 0", - ang = "Lambda parameter | Lambda > 0", - ), - - Gamma = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Borne inferieure du support de la loi", - ang = "Support lower bound", - ), - - ), # Fin BLOC EXPONENTIAL - - - - GAMMA = BLOC ( condition = " Kind in ( 'Gamma', ) ", - - Settings = SIMP ( statut = "o", - typ = "TXM", - max = 1, - into = ( "KLambda", "MuSigma" ), - defaut = "KLambda", - fr = "Parametrage de la loi gamma", - ang = "Gamma distribution parameter set", - ), - - KLambda_Parameters = BLOC ( condition = " Settings in ( 'KLambda', ) ", - - K = SIMP ( statut = "o", - typ = "R", - max = 1, - val_min = 0., - fr = "Parametre K de la loi | K > 0", - ang = "K parameter | K > 0", - ), - - Lambda = SIMP ( statut = "o", - typ = "R", - max = 1, - val_min = 0., - fr = "Parametre Lambda de la loi | Lambda > 0", - ang = "Lambda parameter | Lambda > 0", - ), - - ), # Fin BLOC KLambda_Parameters - - - MuSigma_Parameters = BLOC ( condition = " Settings in ( 'MuSigma', ) ", - - Mu = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Moyenne de la loi", - ang = "Mean value", - ), - - Sigma = SIMP ( statut = "o", - typ = "R", - max = 1, - val_min = 0., - fr = "Ecart type de la loi", - ang = "Standard deviation", - ), - - ), # Fin BLOC MuSigma_Parameters - - Gamma = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Parametre Gamma", - ang = "Gamma parameter", - ), - - - ), # Fin BLOC GAMMA - - - - GEOMETRIC = BLOC ( condition = " Kind in ( 'Geometric', ) ", - - P = SIMP ( statut = "o", - typ = "R", - max = 1, - val_min = 0., - val_max = 1., - fr = "Parametre P | 0 < P < 1", - ang = "P parameter | 0 < P < 1", - ), - - ), # Fin BLOC GEOMETRIC - - - - GUMBEL = BLOC ( condition = " Kind in ( 'Gumbel', ) ", - - Settings = SIMP ( statut = "o", - typ = "TXM", - max = 1, - into = ( "AlphaBeta", "MuSigma" ), - defaut = "AlphaBeta", - fr = "Parametrage de la loi gumbel", - ang = "Gumbel distribution parameter set", - ), - - AlphaBeta_Parameters = BLOC ( condition = " Settings in ( 'AlphaBeta', ) ", - - Alpha = SIMP ( statut = "o", - typ = "R", - max = 1, - val_min = 0., - fr = "Parametre Alpha de la loi | Alpha > 0", - ang = "Alpha parameter | Alpha > 0", - ), - - Beta = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Parametre Beta de la loi", - ang = "Beta parameter", - ), - - ), # Fin BLOC AlphaBeta_Parameters - - - MuSigma_Parameters = BLOC ( condition = " Settings in ( 'MuSigma', ) ", - - Mu = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Moyenne de la loi", - ang = "Mean value", - ), - - Sigma = SIMP ( statut = "o", - typ = "R", - max = 1, - val_min = 0., - fr = "Ecart type de la loi", - ang = "Standard deviation", - ), - - ), # Fin BLOC MuSigma_Parameters - - ), # Fin BLOC GUMBEL - - - - HISTOGRAM = BLOC ( condition = " Kind in ( 'Histogram', ) ", - - First = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Premier point de la distribution", - ang = "First point", - ), - - # Il faut definir une collection de couples ( x,p ) - Values = SIMP ( statut = 'o', - typ = Tuple(2), - max = '**', - fr = "Liste de couples (point,probabilite)", - ang = "(point,probabiblity) couple list", - validators=VerifTypeTuple(('R','R')), - ), - - ), # Fin BLOC HISTOGRAM - - - - LAPLACE = BLOC ( condition = " Kind in ( 'Laplace', ) ", - - Lambda = SIMP ( statut = "o", - typ = "R", - max = 1, - val_min = 0., - fr = "Parametre Lambda | Lambda > 0", - ang = "Lambda parameter | Lambda > 0", - ), - - Mu = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Moyenne de la loi", - ang = "Mean value", - ), - - ), # Fin BLOC LAPLACE - - LOGNORMAL = BLOC ( condition = " Kind in ( 'LogNormal', ) ", - - Settings = SIMP ( statut = "o", - typ = "TXM", - max = 1, - into = ( "MuSigmaLog", "MuSigma", "MuSigmaOverMu" ), - defaut = "MuSigmaLog", - fr = "Parametrage de la loi lognormale", - ang = "Lognormal distribution parameter set", - ), - - MuSigma_Parameters = BLOC ( condition = " Settings in ( 'MuSigma', ) ", - - Mu = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Moyenne de la loi", - ang = "Mean value", - ), - - Sigma = SIMP ( statut = "o", - typ = "R", - max = 1, - val_min = 0., - fr = "Ecart type de la loi", - ang = "Standard deviation", - ), - - ), # Fin BLOC MuSigma_Parameters - - MuSigmaOverMu_Parameters = BLOC ( condition = " Settings in ( 'MuSigmaOverMu', ) ", - - Mu = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Moyenne de la loi", - ang = "Mean value", - ), - - SigmaOverMu = SIMP ( statut = "o", - typ = "R", - max = 1, - val_min = 0., - fr = "Rapport ecart type / moyenne de la loi", - ang = "Standard deviation / mean value ratio", - ), - - ), # Fin BLOC MuSigmaOverMu_Parameters - - MuSigmaLog_Parameters = BLOC ( condition = " Settings in ( 'MuSigmaLog', ) ", - - MuLog = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Moyenne du log", - ang = "Log mean value", - ), - - SigmaLog = SIMP ( statut = "o", - typ = "R", - max = 1, - val_min = 0., - fr = "Ecart type du log", - ang = "Log standard deviation", - ), - - ), # Fin BLOC MuSigmaLog_Parameters - - Gamma = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Borne inferieure du supoport de la loi", - ang = "Support lower bound", - ), - - ), # Fin BLOC LOGNORMAL - - - - LOGISTIC = BLOC ( condition = " Kind in ( 'Logistic', ) ", - - Alpha = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Borne inferieure du supoport de la loi", - ang = "Support lower bound", - ), - - Beta = SIMP ( statut = "o", - typ = "R", - max = 1, - val_min = 0., - fr = "Parametre Beta de la loi | Beta > = 0", - ang = "Beta parameter | Beta > = 0", - ), - - ), # Fin BLOC LOGISTIC - - - - MULTINOMIAL = BLOC ( condition = " Kind in ( 'MultiNomial', ) ", - - N = SIMP ( statut = "o", - typ = "I", - max = 1, - fr = "Dimension de la loi", - ang = "Distribution dimension", - ), - - # Il faut un vecteur P de taille N - Mu = SIMP ( statut = 'o', - typ = 'R', - max = '**', - ), - - ), # Fin BLOC MULTINOMIAL - - - NONCENTRALSTUDENT = BLOC ( condition = " Kind in ( 'NonCentralStudent', ) ", - - Nu = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Parametre Nu de la loi", - ang = "Nu parameter", - ), - - Delta = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Parametre Delta de la loi", - ang = "Delta parameter", - ), - - Gamma = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Parametre Gamma de la loi", - ang = "Gamma parameter", - ), - - ), # Fin BLOC NONCENTRALSTUDENT - - - NORMAL = BLOC ( condition = " Kind in ( 'Normal', ) ", - - Mu = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Moyenne de la loi", - ang = "Mean value", - ), - - Sigma = SIMP ( statut = "o", - typ = "R", - max = 1, - val_min = 0., - fr = "Ecart type de la loi", - ang = "Standard deviation", - ), - - ), # Fin BLOC NORMAL - - - - POISSON = BLOC ( condition = " Kind in ( 'Poisson', ) ", - - Lambda = SIMP ( statut = "o", - typ = "R", - max = 1, - val_min = 0., - fr = "Parametre Lambda de la loi | Lambda > 0", - ang = "Lambda parameter | Lambda > 0", - ), - - ), # Fin BLOC POISSON - - - - RAYLEIGH = BLOC ( condition = " Kind in ( 'Rayleigh', ) ", - - Sigma = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Parametre Sigma de la loi | Sigma > 0", - ang = "Sigma parameter | Sigma > 0", - ), - - Gamma = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Borne inferieure du support de la loi", - ang = "Support lower bound", - ), - ), # Fin BLOC RAYLEIGH - - - STUDENT = BLOC ( condition = " Kind in ( 'Student', ) ", - - Mu = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Moyenne de la loi", - ang = "Mean value", - ), - - Nu = SIMP ( statut = "o", - typ = "R", - max = 1, - val_min = 2., - fr = "Parametre Nu de la loi | V > 2", - ang = "Nu parameter | V > 2", - ), - - Sigma = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Parametre Sigma de la loi", - ang = "Sigma parameter", - ), - - ), # Fin BLOC STUDENT - - - - TRIANGULAR = BLOC ( condition = " Kind in ( 'Triangular', ) ", - - A = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Borne inferieure du support de la loi | A < M < B", - ang = "Support lower bound | A < M < B", - ), - - M = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Mode de la loi | A < M < B", - ang = "Mode | A < M < B", - ), - - B = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Borne superieure du support de la loi | A < M < B", - ang = "Support upper bound | A < M < B", - ), - - ), # Fin BLOC TRIANGULAR - - - - TRUNCATEDNORMAL = BLOC ( condition = " Kind in ( 'TruncatedNormal', ) ", - - MuN = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Parametre Mu de la loi", - ang = "Mu parameter", - ), - - SigmaN = SIMP ( statut = "o", - typ = "R", - max = 1, - val_min = 0., - fr = "Parametre SigmaN de la loi | SigmaN > 0", - ang = "SigmaN parameter | SigmaN> 0", - ), - - A = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Borne inferieure de la loi | A < = B", - ang = "Lower bound | A < = B", - ), - - B = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Borne superieure de la loi | A < = B", - ang = "Upper bound | A < = B", - ), - - ), # Fin BLOC TRUNCATEDNORMAL - - - - UNIFORM = BLOC ( condition = " Kind in ( 'Uniform', ) ", - - A = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Borne inferieure du support de la loi | A < B", - ang = "Support lower bound | A < B", - ), - - B = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Borne superieure du support de la loi | A < B", - ang = "Support upper bound | A < B", - ), - - ), # Fin BLOC UNIFORM - - - - USERDEFINED = BLOC ( condition = " Kind in ( 'UserDefined', ) ", - - # Il faut definir une collection de couples ( x,p ) - Values = SIMP ( statut = 'o', - typ = 'R', - max = '**', - ), - - ), # Fin BLOC USERDEFINED - - - - WEIBULL = BLOC ( condition = " Kind in ( 'Weibull', ) ", - - Settings = SIMP ( statut = "o", - typ = "TXM", - max = 1, - into = ( "AlphaBeta", "MuSigma" ), - defaut = "AlphaBeta", - fr = "Parametrage de la loi weibull", - ang = "Weibull distribution parameter set", - ), - - AlphaBeta_Parameters = BLOC ( condition = " Settings in ( 'AlphaBeta', ) ", - - Alpha = SIMP ( statut = "o", - typ = "R", - max = 1, - val_min = 0., - fr = "Parametre Alpha de la loi | Alpha > 0", - ang = "Alpha parameter | Alpha > 0", - ), - - Beta = SIMP ( statut = "o", - typ = "R", - max = 1, - val_min = 0., - fr = "Parametre Beta de la loi | Beta > 0", - ang = "Beta parameter | Beta > 0", - ), - - ), # Fin BLOC AlphaBeta_Parameters - - - MuSigma_Parameters = BLOC ( condition = " Settings in ( 'MuSigma', ) ", - - Mu = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Moyenne de la loi", - ang = "Mean value", - ), - - Sigma = SIMP ( statut = "o", - typ = "R", - max = 1, - val_min = 0., - fr = "Ecart type de la loi", - ang = "Standard deviation", - ), - - ), # Fin BLOC MuSigma_Parameters - - Gamma = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Borne inferieure du support de la loi", - ang = "Support lower bound", - ), - - ), # Fin BLOC WEIBULL - -) # Fin OPER DISTRIBUTION -# Ordre Catalogue DISTRIBUTION - - - -#================================ -# Definition du modele physique -#================================ - - -DETERMINISTICVARIABLE = OPER ( nom = "DETERMINISTICVARIABLE", - sd_prod = variable, - op = None, - fr = "Variable deterministe", - ang = "Deterministic variable", - - N = SIMP ( statut = 'o', - typ = "TXM", - fr = "Nom", - ang = "Name", - ), - - T = SIMP ( statut = 'o', - defaut = "in", - into = ( "in" , "out", ), - typ = "TXM", - fr = "Type", - ang = "Type", - ), - - R = SIMP ( statut = 'o', - defaut = 0, - typ = "I", - fr = "Rang", - ang = "Rank", - ), - -) # Fin OPER DETERMINISTICVARIABLE -# Ordre Catalogue DETERMINISTICVARIABLE - - - -import opsOT -MODEL = MACRO ( nom = "MODEL", - op = None, - UIinfo = { "groupes" : ( "Gestion du travail", ) }, - fr = "Chargement du wrapper du modele physique", - ang = "Physical model wrapper load", - sd_prod = opsOT.INCLUDE, - op_init = opsOT.INCLUDE_context, - fichier_ini = 1, - - FileName = SIMP ( statut = "o", - typ = "Fichier", - fr = "Nom du modele physique", - ang = "Physical model identifier", - ), - -) # Fin PROC MODEL -# Ordre Catalogue MODEL - - - - -VARIABLE = PROC ( nom = "VARIABLE", - op = None, - docu = "", - fr = "Variable probabiliste", - ang = "Probabilistic variable", - - ModelVariable = SIMP ( statut = "o", - typ = ( variable, ), - ), - - Distribution = SIMP ( statut = "o", - typ = ( loi, ), - ), - -) # Fin PROC VARIABLE -# Ordre Catalogue VARIABLE - - -CORRELATION = PROC ( nom = 'CORRELATION', - op = None, - docu = "", - fr = "Correlation entre variables", - ang = "Variable correlation", - - Copula = SIMP ( statut = "o", - typ = 'TXM', - into = ( "Independent", "Normal" ), - defaut = "Independent", - fr = "Type de la copule", - ang = "Copula kind", - ), - - Matrix = BLOC ( condition = "Copula in ( 'Normal', )", - - CorrelationMatrix = SIMP ( statut = "o", - typ = Matrice(nbLigs=None, - nbCols=None, - methodeCalculTaille='NbDeVariables', - valSup=1, - valMin=-1, - structure="symetrique"), - fr = "Matrice de correlation entre les variables d'entree", - ang = "Correlation matrix for input variables", - ), - ), # Fin BLOC Matrix - - -) # Fin PROC CORRELATION -# Ordre Catalogue CORRELATION - - - - - -#================================ -# Definition de l'etude -#================================ - -# Nota : les variables de type PROC doivent etre en majuscules ! -CRITERIA = PROC ( nom = "CRITERIA", - op = None, - docu = "", - fr = "Mise en donnee pour le fichier de configuration de OPENTURNS.", - ang = "Writes the configuration file for OPENTURNS.", - - - - Type = SIMP ( statut = "o", - typ = "TXM", - into = ( "Min/Max", "Central Uncertainty", "Threshold Exceedence" ), - fr = "Type d'Analyse", - ang = "Analysis", - ), - - - - - - - - MinMax = BLOC ( condition = " Type in ( 'Min/Max', ) ", - - Method = SIMP ( statut = "o", - typ = "TXM", - into = ( "Experiment Plane", "Random Sampling" ), - fr = "Methode", - ang = "Method", - ), - # UC 3.1.1 - ExperimentPlaneSettings = BLOC ( condition = " Method in ( 'Experiment Plane', ) ", - - ExperimentPlane = SIMP ( statut = "o", - typ = "TXM", - into = ( "Axial", "Factorial", "Composite", ), - fr = "Methode", - ang = "Method", - ), - - Levels = SIMP ( statut = "o", - typ = "R", - val_min = 0.0, - max = '**', - fr = "Nombre de niveaux dans chaque direction", - ang = "Levels in each direction", - ), - - # Scaled Vector - UnitsPerDimension = SIMP ( statut = "o", - typ = "R", - max = '**', - fr = "Unite par dimension (autant que de variables declarees)", - ang = "Units per dimension (as much as declared variables)", - ), - - # Translation Vector - Center = SIMP ( statut = "o", - typ = "R", - max = '**', - fr = "Unite par dimension", - ang = "Units per dimension", - ), - - ), # Fin BLOC ExperimentPlaneSettings - - - - RandomSamplingSettings = BLOC ( condition = " Method in ( 'Random Sampling', ) ", - - SimulationsNumber = SIMP ( statut = "o", - typ = "I", - val_min = 1, - fr = "Nombre de points", - ang = "Points number", - ), - - ), # Fin BLOC RandomSamplingSettings - - Result = SIMP ( statut = "o", - typ = "TXM", - into = ( "Min/Max", ), - defaut = "Min/Max", - fr = "Le minimum et le maximum", - ang = "The min and max values", - ), - - - ), # Fin BLOC MinMax - - - - - CentralUncertainty = BLOC ( condition = " Type in ( 'Central Uncertainty', ) ", - - Method = SIMP ( statut = "o", - typ = "TXM", - into = ( "Taylor Variance Decomposition", "Random Sampling" ), - fr = "Methode", - ang = "Method", - ), - - # UC 3.2. - TaylorVarianceDecompositionSettings = BLOC ( condition = " Method in ( 'Taylor Variance Decomposition', ) ", - - Result = FACT ( statut = "o", - min = 1, - max = "**", - - MeanFirstOrder = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'yes', - max = 1, - fr = "Moyenne au premier ordre", - ang = "MeanFirstOrder", - ), - - StandardDeviationFirstOrder = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'yes', - max = 1, - fr = "Ecart-type au premier ordre", - ang = "StandardDeviationFirstOrder", - ), - - MeanSecondOrder = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'no', - max = 1, - fr = "Moyenne au second ordre", - ang = "MeanSecondOrder", - ), - - ImportanceFactor = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'yes', - max = 1, - fr = "Facteur d'importance pour variable de sortie scalaire", - ang = "ImportanceFactor", - ), - ImportanceFactorSettings = BLOC ( condition = " ImportanceFactor in ( 'yes', ) ", - - ImportanceFactorDrawingFilename = SIMP ( statut = "o", - typ = "TXM", - max = 1, - fr = "Nom du fichier graphique des facteurs d'importance", - ang = "Importance Factor Drawing Filename", - ), - - - ), # Fin BLOC ImportanceFactorSettings - - ), # Fin FACT Result - - ), # Fin BLOC TaylorVarianceDecompositionSettings - - - - RandomSamplingSettings = BLOC ( condition = " Method in ( 'Random Sampling', ) ", - - SimulationsNumber = SIMP ( statut = "o", - typ = "I", - val_min = 1, - fr = "Nombre de points", - ang = "Points number", - ), - - Result = FACT ( statut = "o", - min = 1, - max = "**", - - EmpiricalMean = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'yes', - max = 1, - fr = "Moyenne empirique", - ang = "Empirical mean", - ), - - EmpiricalStandardDeviation = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'yes', - max = 1, - fr = "Ecart-type empirique", - ang = "Empirical standard deviation", - ), - - EmpiricalQuantile = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'yes', - max = 1, - fr = "Quantile empirique", - ang = "Empirical quantile", - ), - - EmpiricalQuantileSettings = BLOC ( condition = " EmpiricalQuantile in ( 'yes', ) ", - - EmpiricalQuantile_Order = SIMP ( statut = "o", - typ = 'R', - defaut = 0.95, - max = 1, - val_min = 0.0, - val_max = 1.0, - fr = "Ordre du quantile empirique", - ang = "Empirical quantile order", - ), - - ), # Fin BLOC EmpiricalQuantileSettings - - CorrelationAnalysis = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'yes', - max = 1, - fr = "Correlations analysees", - ang = "Analysed correlations", - ), - - KernelSmoothing = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'yes', - max = 1, - fr = "Kernel smoothing de l'echantillon", - ang = "Kernel smoothing of the sample", - ), - - KernelSmoothingSettings = BLOC ( condition = " KernelSmoothing in ( 'yes', ) ", - - KernelSmoothingDrawingFilename = SIMP ( statut = "o", - typ = "TXM", - max = 1, - fr = "Nom du fichier graphique de la reconstruction a noyau", - ang = "Kernel Smoothing Drawing Filename", - ), - - - ), # Fin BLOC KernelSmoothingSettings - - ), # Fin FACT Result - - ), # Fin BLOC RandomSamplingSettings - - ), # Fin BLOC CentralUncertainty - - - - - ThresholdExceedence = BLOC ( condition = " Type in ( 'Threshold Exceedence', ) ", - - Event = FACT ( statut = "o", - min = 1, - max = 1, - - Threshold = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Le seuil de defaillance", - ang = "Failure threshold", - ), - - ComparisonOperator = SIMP ( statut = "o", - typ = "TXM", - max = 1, - into = ( "Less", "LessOrEqual", "Equal", "GreaterOrEqual", "Greater" ), - fr = "Que faut-il ne pas depasser : un maximum ou un minimum", - ang = "What is the failure threshold : maximum or minimum", - ), - ), # Fin FACT Event - - - Method = SIMP ( statut = "o", - typ = "TXM", - into = ( "Simulation", "FORM_SORM" ), - fr = "Methode", - ang = "Method", - ), - - SimulationSettings = BLOC ( condition = " Method in ( 'Simulation', ) ", - - Algorithm = SIMP ( statut = "o", - typ = "TXM", - into = ( "MonteCarlo", "LHS", "ImportanceSampling" ), - fr = "Algorithme de simulation", - ang = "Simulation algorithm", - ), - - - RandomGenerator = FACT ( statut = "o", - min = 1, - max = 1, - - SeedToBeSet = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'no', - max = 1, - fr = "La racine du generateur aleatoire doit-elle etre positionnee ?", - ang = "Does the random generator seed need to be set ?", - ), - - SeedSettings = BLOC ( condition = " SeedToBeSet in ( 'yes', ) ", - - RandomGeneratorSeed = SIMP ( statut = "o", - typ = "I", - max = 1, - fr = "Racine du generateur aleatoire", - ang = "Random generator seed", - ), - - ), # Fin BLOC SeedSettings - - ), # Fin FACT RandomGenerator - - - BlockSize = SIMP ( statut = "o", - typ = "I", - max = 1, - val_min = 1, - defaut = 1, - fr = "Nombre de calculs realises en bloc", - ang = "Number of computations as a block", - ), - - MaximumOuterSampling = SIMP ( statut = "o", - typ = "I", - max = 1, - val_min = 1, - fr = "Maximum d'iterations externes", - ang = "Maximum outer Sampling value", - ), - - MaximumCoefficientOfVariation = SIMP ( statut = "o", - typ = "R", - max = 1, - defaut = 0.1, - val_min = 0.0, - val_max = 1.0, - fr = " maximum ...", - ang = "Absolute maximum ...." - ), - - ImportanceSamplingSettings = BLOC ( condition = " Algorithm in ( 'ImportanceSampling', ) ", - - MeanVector = SIMP ( statut = "o", - typ = "R", - max = "**", - fr = "Moyenne", - ang = "Mean vector", - ), - - Correlation = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'Independent', 'Linear' ), - defaut = 'Independent', - max = 1, - fr = "Le type de correlation entre les variables", - ang = "Correlation between variables", - ), - - ), # Fin BLOC ImportanceSamplingSettings - - Result = FACT ( statut = "o", - min = 1, - max = "**", - - Probability = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', ), - defaut = 'yes', - max = 1, - fr = "Probabiblite", - ang = "Probability", - ), - - StandardDeviation = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', ), - defaut = 'yes', - max = 1, - fr = "Ecart type", - ang = "Standard deviation", - ), - - ConfidenceInterval = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'yes', - max = 1, - fr = "Intervale de confiance", - ang = "Confidence interval", - ), - - ConfidenceIntervalSettings = BLOC ( condition = " ConfidenceInterval in ( 'yes', ) ", - - Level = SIMP ( statut = "o", - typ = 'R', - defaut = 0.9, - max = 1, - val_min = 0.0, - val_max = 1.0, - fr = "Niveau de confiance", - ang = "Confidence level", - ), - - ), # Fin BLOC ConfidenceIntervalSettings - - VariationCoefficient = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'yes', - max = 1, - fr = "Coefficient de variation", - ang = "Coefficient of variation", - ), - - SimulationsNumber = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'yes', - max = 1, - fr = "Nombre d'iterations", - ang = "Iteration number", - ), - - ConvergenceGraph = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'yes', - max = 1, - fr = "Graphe de convergence", - ang = "Convergence graph", - ), - - ConvergenceGraphSettings = BLOC ( condition = " ConvergenceGraph in ( 'yes', ) ", - - ConvergenceDrawingFilename = SIMP ( statut = "o", - typ = "TXM", - max = 1, - fr = "Nom du fichier graphique de la convergence", - ang = "Convergence Drawing Filename", - ), - - - ), # Fin BLOC ConvergenceGraphSettings - - ), # Fin FACT Result - - - - ), # Fin BLOC SimulationSettings - - - - FORM_SORMSettings = BLOC ( condition = " Method in ( 'FORM_SORM', ) ", - - Approximation = SIMP ( statut = "o", - typ = "TXM", - defaut = "FirstOrder", - into = ( "FirstOrder", "SecondOrder" ), - max = 1, - fr = "Approximation", - ang = "Approximation", - ), - - OptimizationAlgorithm = SIMP ( statut = "o", - typ = "TXM", - defaut = "Cobyla", - into = ( "Cobyla", "AbdoRackwitz" ), - max = 1, - fr = "Methode d'optimisation", - ang = "Optimization method", - ), - - - PhysicalStartingPoint = SIMP ( statut = "f", - typ = "R", - max = "**", - fr = "Point de demarrage de l'algorithme iteratif", - ang = "Initial point for iterative process", - ), - - MaximumIterationsNumber = SIMP ( statut = "f", - typ = "I", - max = 1, - val_min = 1, - fr = "Nombre maximum d'iterations", - ang = "Maximum number of iterations", - ), - - - MaximumAbsoluteError = SIMP ( statut = "o", - typ = "R", - max = 1, - defaut = 1E-4, - val_min = 0.0, - fr = "Distance maximum absolue entre 2 iterations successives", - ang = "Absolute maximum distance between 2 successive iterates", - ), - - MaximumRelativeError = SIMP ( statut = "o", - typ = "R", - max = 1, - defaut = 1E-4, - val_min = 0.0, - fr = "Distance maximum relative entre 2 iterations successives", - ang = "Relative maximum distance between 2 successive iterates", - ), - - MaximumConstraintError = SIMP ( statut = "o", - typ = "R", - max = 1, - defaut = 1E-4, - val_min = 0.0, - fr = "Valeur maximum absolue de la fonction moins la valeur du niveau", - ang = "Maximum absolute value of the constraint function minus the level value", - ), - - ImportanceSampling = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'no', - max = 1, - fr = "Tirage d'importance au point de conception", - ang = "Importance sampling at design point", - ), - - FORMResult = BLOC ( condition = " Approximation in ( 'FirstOrder', ) ", - - Probability = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', ), - defaut = 'yes', - max = 1, - fr = "Probabiblite", - ang = "Probability", - ), - - DesignPoint = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'yes', - max = 1, - fr = "Point de conception", - ang = "Design point", - ), - - HasoferReliabilityIndex = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'yes', - max = 1, - fr = "Indice de fiabilite", - ang = "Reliability index", - ), - - ImportanceFactor = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'yes', - max = 1, - fr = "Facteur d'importance pour variable de sortie scalaire", - ang = "Importance factor", - ), - - ImportanceFactorSettings = BLOC ( condition = " ImportanceFactor in ( 'yes', ) ", - - ImportanceFactorDrawingFilename = SIMP ( statut = "o", - typ = "TXM", - max = 1, - fr = "Nom du fichier graphique des facteurs d'importance", - ang = "Importance Factor Drawing Filename", - ), - - - ), # Fin BLOC ImportanceFactorSettings - - SensitivityAnalysis = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'yes', - max = 1, - fr = "Analyse de sensibilite", - ang = "Sensitivity analysis", - ), - - SensitivityAnalysisSettings = BLOC ( condition = " SensitivityAnalysis in ( 'yes', ) ", - - FORMEventProbabilitySensitivity = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'yes', - max = 1, - fr = "Indice de fiabilite de Hasofer", - ang = "Hasofer reliability index", - ), - - FORMEventProbabilitySensitivitySettings = BLOC ( condition = " FORMEventProbabilitySensitivity in ( 'yes', ) ", - - FORMEventProbabilitySensitivityDrawingFilename = SIMP ( statut = "o", - typ = "TXM", - max = 1, - fr = "Nom du fichier graphique des sensibilites", - ang = "Sensitivity Drawing Filename", - ), - - - ), # Fin BLOC FORMEventProbabilitySensitivitySettings - - HasoferReliabilityIndexSensitivity = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'yes', - max = 1, - fr = "Indice de fiabilite de Hasofer", - ang = "Hasofer reliability index", - ), - - HasoferReliabilityIndexSensitivitySettings = BLOC ( condition = " HasoferReliabilityIndexSensitivity in ( 'yes', ) ", - - HasoferReliabilityIndexSensitivityDrawingFilename = SIMP ( statut = "o", - typ = "TXM", - max = 1, - fr = "Nom du fichier graphique des sensibilites", - ang = "Sensitivity Drawing Filename", - ), - - - ), # Fin BLOC FHasoferReliabilityIndexSensitivitySettings - - ), # Fin BLOC SensitivityAnalysisSettings - - FunctionCallsNumber = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'yes', - max = 1, - fr = "Nombre d'appels a la fonction", - ang = "Function calls number", - ), - - - ), # Fin BLOC FORMResult - - - SORMResult = BLOC ( condition = " Approximation in ( 'SecondOrder', ) ", - - - TvedtApproximation = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'no', - max = 1, - fr = "Approximation de Tvedt", - ang = "Tvedt approximation", - ), - - HohenBichlerApproximation = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'no', - max = 1, - fr = "Approximation de HohenBichler", - ang = "HohenBichler approximation", - ), - - BreitungApproximation = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'no', - max = 1, - fr = "Approximation de Breitung", - ang = "Breitung approximation", - ), - - DesignPoint = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'yes', - max = 1, - fr = "Point de conception", - ang = "Design point", - ), - - ImportanceFactor = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'yes', - max = 1, - fr = "Facteur d'importance pour variable de sortie scalaire", - ang = "Importance factor", - ), - - ImportanceFactorSettings = BLOC ( condition = " ImportanceFactor in ( 'yes', ) ", - - ImportanceFactorDrawingFilename = SIMP ( statut = "o", - typ = "TXM", - max = 1, - fr = "Nom du fichier graphique des facteurs d'importance", - ang = "Importance Factor Drawing Filename", - ), - - - ), # Fin BLOC ImportanceFactorSettings - - SensitivityAnalysis = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'yes', - max = 1, - fr = "Analyse de sensibilite", - ang = "Sensitivity analysis", - ), - - SensitivityAnalysisSettings = BLOC ( condition = " SensitivityAnalysis in ( 'yes', ) ", - - HasoferReliabilityIndexSensitivity = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'yes', - max = 1, - fr = "Indice de fiabilite de Hasofer", - ang = "Hasofer reliability index", - ), - - HasoferReliabilityIndexSensitivitySettings = BLOC ( condition = " HasoferReliabilityIndexSensitivity in ( 'yes', ) ", - - HasoferReliabilityIndexSensitivityDrawingFilename = SIMP ( statut = "o", - typ = "TXM", - max = 1, - fr = "Nom du fichier graphique des sensibilites", - ang = "Sensitivity Drawing Filename", - ), - - - ), # Fin BLOC FHasoferReliabilityIndexSensitivitySettings - - ), # Fin BLOC SensitivityAnalysisSettings - - FunctionCallsNumber = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'yes', - max = 1, - fr = "Nombre d'appels a la fonction", - ang = "Function calls number", - ), - - - ), # Fin BLOC SecondOrder - - - - ), # Fin BLOC FORM_SORMSettings - - - - ), # Fin BLOC ThresholdExceedence - - - -) # Fin PROC CRITERIA -# Ordre Catalogue CRITERIA - - - - - - - diff --git a/OldCodes/Openturns_Study/OpenTURNS_Cata_Study_V8.py b/OldCodes/Openturns_Study/OpenTURNS_Cata_Study_V8.py deleted file mode 100644 index ef705c03..00000000 --- a/OldCodes/Openturns_Study/OpenTURNS_Cata_Study_V8.py +++ /dev/null @@ -1,1748 +0,0 @@ -# -*- coding: iso-8859-1 -*- -# Copyright (C) 2007-2013 EDF R&D -# -# 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 -# - -# -------------------------------------------------- -# debut entete -# -------------------------------------------------- - -#from Accas import ASSD, JDC_CATA, AU_MOINS_UN, PROC, SIMP, FACT, OPER, MACRO, BLOC, A_VALIDATOR -from Accas import * - -class loi ( ASSD ) : pass -class variable ( ASSD ) : pass - -import types -class Tuple: - def __init__(self,ntuple): - self.ntuple=ntuple - - def __convert__(self,valeur): - if type(valeur) == types.StringType: - return None - if len(valeur) != self.ntuple: - return None - return valeur - - def info(self): - return "Tuple de %s elements" % self.ntuple - - __repr__=info - __str__=info - -class Matrice: - def __init__(self,nbLigs=None,nbCols=None,methodeCalculTaille=None,formatSortie="ligne",valSup=None,valMin=None,structure=None): - self.nbLigs=nbLigs - self.nbCols=nbCols - self.methodeCalculTaille=methodeCalculTaille - self.formatSortie=formatSortie - self.valSup=valSup - self.valMin=valMin - self.structure=structure - - def __convert__(self,valeur): - # Attention ne verifie pas grand chose - if type(valeur) != types.ListType : - return None - return valeur - - def info(self): - return "Matrice %s x %s" % (self.nbLigs, self.nbCols) - - __repr__=info - __str__=info - - -#CONTEXT.debug = 1 -JdC = JDC_CATA ( code = 'OPENTURNS_STUDY', - execmodul = None, - regles = ( AU_MOINS_UN ( 'CRITERIA' ), - AU_MOINS_UN ( 'MODEL' ), -# AVANT ( ('DISTRIBUTION', 'MODEL'), 'VARIABLE' ), -# A_CLASSER ( 'VARIABLE', 'CORRELATION' ), -# A_CLASSER ( 'VARIABLE', 'CRITERIA' ), -# A_CLASSER ( 'CORRELATION', 'CRITERIA' ), - ), - ) # Fin JDC_CATA - - -# -------------------------------------------------- -# fin entete -# -------------------------------------------------- - -SIMULATION = PROC ( nom = "SIMULATION", - op = None, - docu = "", - - FileName = SIMP ( statut = "o", - typ = ('Fichier', 'Wrapper Files (*.csv);;All Files (*)',), - fr = "Nom du modele physique", - ), - SAMPLE = SIMP ( statut = "o", - typ = "R", - ), - - WrapperMessages = SIMP ( statut = "o", - typ = "TXM", - into = ( 'yes', 'no' ), - defaut = 'no', - fr = "Affichage du niveau de wrapper de la bibliotheque Open TURNS", - ang = "Open TURNS library debug level print", - ), - - UserMessages = SIMP ( statut = "o", - typ = "TXM", - into = ( 'yes', 'no' ), - defaut = 'no', - fr = "Affichage du niveau de user de la bibliotheque Open TURNS", - ang = "Open TURNS library user level print", - ), - - InfoMessages = SIMP ( statut = "o", - typ = "TXM", - into = ( 'yes', 'no' ), - defaut = 'yes', - fr = "Affichage du niveau de info de la bibliotheque Open TURNS", - ang = "Open TURNS library info level print", - ), - - WarningMessages = SIMP ( statut = "o", - typ = "TXM", - into = ( 'yes', 'no' ), - defaut = 'yes', - fr = "Affichage du niveau de warning de la bibliotheque Open TURNS", - ang = "Open TURNS library warning level print", - ), - - ErrorMessages = SIMP ( statut = "o", - typ = "TXM", - into = ( 'yes', 'no' ), - defaut = 'yes', - fr = "Affichage du niveau de error de la bibliotheque Open TURNS", - ang = "Open TURNS library error level print", - ), - -) # Fin PROC SIMULATION -# Ordre Catalogue SIMULATION - - - - - -#================================ -# Definition des LOIS -#================================ - -# Nota : les variables de type OPER doivent etre en majuscules ! -# Nota : les variables de type OPER doivent etre de premier niveau (pas imbriquees dans un autre type) -#VARIABLE2=OPER( nom= "VARIABLE2", - -#DISTRIBUTION = OPER ( nom = "DISTRIBUTION", -VARIABLE2=OPER(nom="VARIABLE2", - sd_prod = variable, - #sd_prod = None, - op = None, - fr = "Definitions des lois marginales utilisees par les variables d'entree", - - #VARIABLE = FACT (statut='f',max='**', - # NOM=SIMP(statut = "o", typ = "TXM",), - -#DISTRIBUTION= FACT(statut = "o", -#==== -# Type de distribution -#==== - - Kind = SIMP ( statut = "o", typ = "TXM", - into = ( "Beta", - "Exponential", - "Gamma", - "Geometric", - "Gumbel", - "Histogram", - "Laplace", - "Logistic", - "LogNormal", - "MultiNomial", - "NonCentralStudent", - "Normal", - "Poisson", - "Rayleigh", - "Student", - "Triangular", - "TruncatedNormal", - "Uniform", - #"UserDefined", - "Weibull", - ), - fr = "Choix du type de la loi marginale", - ang = "1D marginal distribution", - defaut="Beta", - ), - -#==== -# Definition des parametres selon le type de la loi -#==== - - BETA = BLOC ( condition = " Kind in ( 'Beta', ) ", - - Settings = SIMP ( statut = "o", - typ = "TXM", - max = 1, - into = ( "RT", "MuSigma" ), - defaut = "RT", - fr = "Parametrage de la loi beta", - ang = "Beta distribution parameter set", - ), - - RT_Parameters = BLOC ( condition = " Settings in ( 'RT', ) ", - - R = SIMP ( statut = "o", - typ = "R", - max = 1, - val_min = 0., - fr = "Parametre R de la loi | R > 0", - ang = "R parameter | R > 0", - defaut=1, - ), - - # T > R - T = SIMP ( statut = "o", - typ = "R", - max = 1, - val_min = 0., - fr = "Parametre T de la loi | T > R", - ang = "T parameter | T > R", - defaut=2, - ), - - ), # Fin BLOC RT_Parameters - - - MuSigma_Parameters = BLOC ( condition = " Settings in ( 'MuSigma', ) ", - - Mu = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Moyenne de la loi", - ang = "Mean value", - ), - - Sigma = SIMP ( statut = "o", - typ = "R", - max = 1, - val_min = 0., - fr = "Ecart type de la loi", - ang = "Standard deviation", - ), - - ), # Fin BLOC MuSigma_Parameters - - - A = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Borne inferieure du support de la loi", - ang = "Support lower bound", - ), - - # B > A - B = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Borne superieure du support de la loi", - ang = "Support upper bound", - ), - - ), # Fin BLOC BETA - - - - EXPONENTIAL = BLOC ( condition = " Kind in ( 'Exponential', ) ", - - Lambda = SIMP ( statut = "o", - typ = "R", - max = 1, - val_min = 0., - fr = "Parametre Lambda | Lambda > 0", - ang = "Lambda parameter | Lambda > 0", - ), - - Gamma = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Borne inferieure du support de la loi", - ang = "Support lower bound", - ), - - ), # Fin BLOC EXPONENTIAL - - - - GAMMA = BLOC ( condition = " Kind in ( 'Gamma', ) ", - - Settings = SIMP ( statut = "o", - typ = "TXM", - max = 1, - into = ( "KLambda", "MuSigma" ), - defaut = "KLambda", - fr = "Parametrage de la loi gamma", - ang = "Gamma distribution parameter set", - ), - - KLambda_Parameters = BLOC ( condition = " Settings in ( 'KLambda', ) ", - - K = SIMP ( statut = "o", - typ = "R", - max = 1, - val_min = 0., - fr = "Parametre K de la loi | K > 0", - ang = "K parameter | K > 0", - ), - - Lambda = SIMP ( statut = "o", - typ = "R", - max = 1, - val_min = 0., - fr = "Parametre Lambda de la loi | Lambda > 0", - ang = "Lambda parameter | Lambda > 0", - ), - - ), # Fin BLOC KLambda_Parameters - - - MuSigma_Parameters = BLOC ( condition = " Settings in ( 'MuSigma', ) ", - - Mu = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Moyenne de la loi", - ang = "Mean value", - ), - - Sigma = SIMP ( statut = "o", - typ = "R", - max = 1, - val_min = 0., - fr = "Ecart type de la loi", - ang = "Standard deviation", - ), - - ), # Fin BLOC MuSigma_Parameters - - Gamma = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Borne inferieure du supoport de la loi", - ang = "Support lower bound", - ), - - - ), # Fin BLOC GAMMA - - - - GEOMETRIC = BLOC ( condition = " Kind in ( 'Geometric', ) ", - - P = SIMP ( statut = "o", - typ = "R", - max = 1, - val_min = 0., - val_max = 1., - fr = "Parametre P | 0 < P < 1", - ang = "P parameter | 0 < P < 1", - ), - - ), # Fin BLOC GEOMETRIC - - - - GUMBEL = BLOC ( condition = " Kind in ( 'Gumbel', ) ", - - Settings = SIMP ( statut = "o", - typ = "TXM", - max = 1, - into = ( "AlphaBeta", "MuSigma" ), - defaut = "AlphaBeta", - fr = "Parametrage de la loi gumbel", - ang = "Gumbel distribution parameter set", - ), - - AlphaBeta_Parameters = BLOC ( condition = " Settings in ( 'AlphaBeta', ) ", - - Alpha = SIMP ( statut = "o", - typ = "R", - max = 1, - val_min = 0., - fr = "Parametre Alpha de la loi | Alpha > 0", - ang = "Alpha parameter | Alpha > 0", - ), - - Beta = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Parametre Beta de la loi", - ang = "Beta parameter", - ), - - ), # Fin BLOC AlphaBeta_Parameters - - - MuSigma_Parameters = BLOC ( condition = " Settings in ( 'MuSigma', ) ", - - Mu = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Moyenne de la loi", - ang = "Mean value", - ), - - Sigma = SIMP ( statut = "o", - typ = "R", - max = 1, - val_min = 0., - fr = "Ecart type de la loi", - ang = "Standard deviation", - ), - - ), # Fin BLOC MuSigma_Parameters - - ), # Fin BLOC GUMBEL - - - - HISTOGRAM = BLOC ( condition = " Kind in ( 'Histogram', ) ", - - First = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Borne inferieure du supoport de la loi", - ang = "Support lower bound", - ), - - # Il faut definir une collection de couples ( x,p ) - Values = SIMP ( statut = 'o', - typ = Tuple(2), - #max = '**', - fr = "Liste de couples : largeur de classe, hauteur de classe", - ang = "Class bandwidth, class height couple list", - validators=VerifTypeTuple(('R','R')), - ), - - ), # Fin BLOC HISTOGRAM - - - - LAPLACE = BLOC ( condition = " Kind in ( 'Laplace', ) ", - - Lambda = SIMP ( statut = "o", - typ = "R", - max = 1, - val_min = 0., - fr = "Parametre Lambda | Lambda > 0", - ang = "Lambda parameter | Lambda > 0", - ), - - Mu = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Moyenne de la loi", - ang = "Mean value", - ), - - ), # Fin BLOC LAPLACE - - LOGNORMAL = BLOC ( condition = " Kind in ( 'LogNormal', ) ", - - Settings = SIMP ( statut = "o", - typ = "TXM", - max = 1, - into = ( "MuSigmaLog", "MuSigma", "MuSigmaOverMu" ), - defaut = "MuSigmaLog", - fr = "Parametrage de la loi lognormale", - ang = "Lognormal distribution parameter set", - ), - - MuSigma_Parameters = BLOC ( condition = " Settings in ( 'MuSigma', ) ", - - Mu = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Moyenne de la loi", - ang = "Mean value", - ), - - Sigma = SIMP ( statut = "o", - typ = "R", - max = 1, - val_min = 0., - fr = "Ecart type de la loi", - ang = "Standard deviation", - ), - - ), # Fin BLOC MuSigma_Parameters - - MuSigmaOverMu_Parameters = BLOC ( condition = " Settings in ( 'MuSigmaOverMu', ) ", - - Mu = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Moyenne de la loi", - ang = "Mean value", - ), - - SigmaOverMu = SIMP ( statut = "o", - typ = "R", - max = 1, - val_min = 0., - fr = "Rapport ecart type / moyenne de la loi", - ang = "Standard deviation / mean value ratio", - ), - - ), # Fin BLOC MuSigmaOverMu_Parameters - - MuSigmaLog_Parameters = BLOC ( condition = " Settings in ( 'MuSigmaLog', ) ", - - MuLog = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Moyenne du log", - ang = "Log mean value", - ), - - SigmaLog = SIMP ( statut = "o", - typ = "R", - max = 1, - val_min = 0., - fr = "Ecart type du log", - ang = "Log standard deviation", - ), - - ), # Fin BLOC MuSigmaLog_Parameters - - Gamma = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Borne inferieure du support de la loi", - ang = "Support lower bound", - ), - - ), # Fin BLOC LOGNORMAL - - - - LOGISTIC = BLOC ( condition = " Kind in ( 'Logistic', ) ", - - Alpha = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Borne inferieure du supoport de la loi", - ang = "Support lower bound", - ), - - Beta = SIMP ( statut = "o", - typ = "R", - max = 1, - val_min = 0., - fr = "Parametre Beta de la loi | Beta > 0", - ang = "Beta parameter | Beta > 0", - ), - - ), # Fin BLOC LOGISTIC - - - - MULTINOMIAL = BLOC ( condition = " Kind in ( 'MultiNomial', ) ", - - N = SIMP ( statut = "o", - typ = "I", - max = 1, - fr = "Parametre N de la loi | N > 0", - ang = "N parameter | N > 0", - ), - - # Il faut definir une collection de couples ( x,p ) - Values = SIMP ( statut = 'o', - typ = "R", - max = '**', - fr = "Liste de probabilités", - ang = "Probability list", - validators=VerifTypeTuple(('R','R')), - ), - - ), # Fin BLOC MULTINOMIAL - - - NONCENTRALSTUDENT = BLOC ( condition = " Kind in ( 'NonCentralStudent', ) ", - - Nu = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Parametre Nu de la loi | Nu > 0", - ang = "Nu parameter | Nu > 0", - ), - - Delta = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Parametre Delta de la loi | Delta > 0", - ang = "Delta parameter | Delta > 0", - ), - - Gamma = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Parametre Gamma de centrage de la loi", - ang = "Gamma parameter", - ), - - ), # Fin BLOC NONCENTRALSTUDENT - - - NORMAL = BLOC ( condition = " Kind in ( 'Normal', ) ", - - Mu = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Moyenne de la loi", - ang = "Mean value", - ), - - Sigma = SIMP ( statut = "o", - typ = "R", - max = 1, - val_min = 0., - fr = "Ecart type de la loi", - ang = "Standard deviation", - ), - - ), # Fin BLOC NORMAL - - - - POISSON = BLOC ( condition = " Kind in ( 'Poisson', ) ", - - Lambda = SIMP ( statut = "o", - typ = "R", - max = 1, - val_min = 0., - fr = "Parametre Lambda de la loi | Lambda > 0", - ang = "Lambda parameter | Lambda > 0", - ), - - ), # Fin BLOC POISSON - - - - RAYLEIGH = BLOC ( condition = " Kind in ( 'Rayleigh', ) ", - - Sigma = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Parametre Sigma de la loi | Sigma > 0", - ang = "Sigma parameter | Sigma > 0", - ), - - Gamma = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Borne inferieure du support de la loi", - ang = "Support lower bound", - ), - ), # Fin BLOC RAYLEIGH - - - STUDENT = BLOC ( condition = " Kind in ( 'Student', ) ", - - Mu = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Parametre Mu de la loi", - ang = "Mu parameter", - ), - - Nu = SIMP ( statut = "o", - typ = "R", - max = 1, - val_min = 2., - fr = "Parametre Nu de la loi | Nu > 2", - ang = "Nu parameter | Nu > 2", - ), - - Sigma = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Parametre Sigma de la loi", - ang = "Sigma parameter", - ), - - ), # Fin BLOC STUDENT - - - - TRIANGULAR = BLOC ( condition = " Kind in ( 'Triangular', ) ", - - A = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Borne inferieure du support de la loi | A < M < B", - ang = "Support lower bound | A < M < B", - ), - - M = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Mode de la loi | A < M < B", - ang = "Mode | A < M < B", - ), - - B = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Borne superieure du support de la loi | A < M < B", - ang = "Support upper bound | A < M < B", - ), - - ), # Fin BLOC TRIANGULAR - - - - TRUNCATEDNORMAL = BLOC ( condition = " Kind in ( 'TruncatedNormal', ) ", - - MuN = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Moyenne de la loi Normale non tronquée", - ang = "Mean value of the associated non truncated normal distribution", - ), - - SigmaN = SIMP ( statut = "o", - typ = "R", - max = 1, - val_min = 0., - fr = "Ecart-type de la loi Normale non tronquée", - ang = "Standard deviation of the associated non truncated normal distribution", - ), - - A = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Borne inferieure de la loi | A < B", - ang = "Lower bound | A < B", - ), - - B = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Borne superieure de la loi | A < B", - ang = "Upper bound | A < B", - ), - - ), # Fin BLOC TRUNCATEDNORMAL - - - - UNIFORM = BLOC ( condition = " Kind in ( 'Uniform', ) ", - - A = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Borne inferieure du support de la loi | A < B", - ang = "Support lower bound | A < B", - ), - - B = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Borne superieure du support de la loi | A < B", - ang = "Support upper bound | A < B", - ), - - ), # Fin BLOC UNIFORM - - - - USERDEFINED = BLOC ( condition = " Kind in ( 'UserDefined', ) ", - - # Il faut definir une collection de couples ( x,p ) - Values = SIMP ( statut = 'o', - typ = 'R', - max = '**', - ), - - ), # Fin BLOC USERDEFINED - - - - WEIBULL = BLOC ( condition = " Kind in ( 'Weibull', ) ", - - Settings = SIMP ( statut = "o", - typ = "TXM", - max = 1, - into = ( "AlphaBeta", "MuSigma" ), - defaut = "AlphaBeta", - fr = "Parametrage de la loi weibull", - ang = "Weibull distribution parameter set", - ), - - AlphaBeta_Parameters = BLOC ( condition = " Settings in ( 'AlphaBeta', ) ", - - Alpha = SIMP ( statut = "o", - typ = "R", - max = 1, - val_min = 0., - fr = "Parametre Alpha de la loi | Alpha > 0", - ang = "Alpha parameter | Alpha > 0", - ), - - Beta = SIMP ( statut = "o", - typ = "R", - max = 1, - val_min = 0., - fr = "Parametre Beta de la loi | Beta > 0", - ang = "Beta parameter | Beta > 0", - ), - - ), # Fin BLOC AlphaBeta_Parameters - - - MuSigma_Parameters = BLOC ( condition = " Settings in ( 'MuSigma', ) ", - - Mu = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Moyenne de la loi", - ang = "Mean value", - ), - - Sigma = SIMP ( statut = "o", - typ = "R", - max = 1, - val_min = 0., - fr = "Ecart type de la loi", - ang = "Standard deviation", - ), - - ), # Fin BLOC MuSigma_Parameters - - Gamma = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Borne inferieure du support de la loi", - ang = "Support lower bound", - ), - - ), # Fin BLOC WEIBULL - -#), # Fin OPER DISTRIBUTION -#), # Fin OPER DISTRIBUTION -) # Fin OPER DISTRIBUTION - - - -#================================ -# Definition du modele physique -#================================ - - -DETERMINISTICVARIABLE = OPER ( nom = "DETERMINISTICVARIABLE", - sd_prod = variable, - op = None, - fr = "Variable deterministe", - ang = "Deterministic variable", - UIinfo = {"groupes": ("CACHE")}, - - N = SIMP ( statut = 'o', - typ = "TXM", - fr = "Nom", - ang = "Name", - ), - - T = SIMP ( statut = 'o', - defaut = "in", - into = ( "in" , "out", ), - typ = "TXM", - fr = "Type", - ang = "Type", - ), - - R = SIMP ( statut = 'o', - defaut = 0, - typ = "I", - fr = "Rang", - ang = "Rank", - ), - -) # Fin OPER DETERMINISTICVARIABLE -# Ordre Catalogue DETERMINISTICVARIABLE - - - -import opsOT -MODEL = MACRO ( nom = "MODEL", - op = None, - UIinfo = { "groupes" : ( "Gestion du travail", ) }, - fr = "Chargement du wrapper du modele physique", - ang = "Physical model wrapper load", - sd_prod = opsOT.INCLUDE, - op_init = opsOT.INCLUDE_context, - fichier_ini = 1, - - FileName = SIMP ( statut = "o", - typ = ('Fichier', 'Wrapper Files (*.xml);;All Files (*)',), - fr = "Nom du modele physique", - ang = "Physical model identifier", - ), - -) # Fin PROC MODEL -# Ordre Catalogue MODEL - - - - -VARIABLE = PROC ( nom = "VARIABLE", - op = None, - docu = "", - fr = "Variable probabiliste", - ang = "Probabilistic variable", - - ModelVariable = SIMP ( statut = "o", - typ = ( variable, ), - fr = "Variable d'entrée du modèle", - ang = "Input variable of the model", - ), - - Distribution = SIMP ( statut = "o", - typ = ( loi, ), - fr = "Modélisation probabiliste", - ang = "Probabilistic modelisation", - ), - -) # Fin PROC VARIABLE -# Ordre Catalogue VARIABLE - - -CORRELATION = PROC ( nom = 'CORRELATION', - op = None, - docu = "", - fr = "Correlation entre variables", - ang = "Variable correlation", - - Copula = SIMP ( statut = "o", - typ = 'TXM', - into = ( "Independent", "Normal" ), - defaut = "Independent", - fr = "Type de la copule", - ang = "Copula kind", - ), - - Matrix = BLOC ( condition = "Copula in ( 'Normal', )", - - CorrelationMatrix = SIMP ( statut = "o", - typ = Matrice(nbLigs=None, - nbCols=None, - methodeCalculTaille='nbDeVariables', - valSup=1, - valMin=-1, - structure="symetrique"), - fr = "Matrice de correlation entre les variables d'entree", - ang = "Correlation matrix for input variables", - ), - ), # Fin BLOC Matrix - - -) # Fin PROC CORRELATION -# Ordre Catalogue CORRELATION - - - - - -#================================ -# Definition de l'etude -#================================ - -# Nota : les variables de type PROC doivent etre en majuscules ! -CRITERIA = PROC ( nom = "CRITERIA", - op = None, - docu = "", - fr = "Critère de l'étude d'incertitudes", - ang = "Uncertainty study criteria", - - - - Type = SIMP ( statut = "o", - typ = "TXM", - into = ( "Min/Max", "Central Uncertainty", "Threshold Exceedence" ), - fr = "Type du critère", - ang = "Criteria type", - ), - - - - - - - - MinMax = BLOC ( condition = " Type in ( 'Min/Max', ) ", - - Method = SIMP ( statut = "o", - typ = "TXM", - into = ( "Experiment Plane", "Random Sampling" ), - fr = "Methode", - ang = "Method", - ), - # UC 3.1.1 - ExperimentPlaneSettings = BLOC ( condition = " Method in ( 'Experiment Plane', ) ", - - ExperimentPlane = SIMP ( statut = "o", - typ = "TXM", - into = ( "Axial", "Factorial", "Composite", ), - fr = "Type du plan d'expérience", - ang = "Experiment plane type", - ), - - Levels = SIMP ( statut = "o", - typ = "R", - val_min = 0.0, - max = '**', - fr = "Liste de niveaux dans chaque direction", - ang = "Levels in each direction", - ), - - # Scaled Vector - UnitPerDimension = SIMP ( statut = "o", - typ = "R", - max = '**', - fr = "Unité par dimension (autant que de variables declarées)", - ang = "Units per dimension (as much as declared variables)", - ), - - # Translation Vector - Center = SIMP ( statut = "o", - typ = "R", - max = '**', - fr = "Centre du plan d'expérience", - ang = "Experiment plan center", - ), - - ), # Fin BLOC ExperimentPlaneSettings - - - - RandomSamplingSettings = BLOC ( condition = " Method in ( 'Random Sampling', ) ", - - SimulationsNumber = SIMP ( statut = "o", - typ = "I", - val_min = 1, - fr = "Nombre de points", - ang = "Points number", - ), - - ), # Fin BLOC RandomSamplingSettings - - Result = SIMP ( statut = "o", - typ = "TXM", - into = ( "Min/Max", ), - defaut = "Min/Max", - fr = "Le minimum et le maximum de la variable d'intérêt", - ang = "The min and max values", - ), - - - ), # Fin BLOC MinMax - - - - - CentralUncertainty = BLOC ( condition = " Type in ( 'Central Uncertainty', ) ", - - Method = SIMP ( statut = "o", - typ = "TXM", - into = ( "Taylor Variance Decomposition", "Random Sampling" ), - fr = "Methode", - ang = "Method", - ), - - # UC 3.2. - TaylorVarianceDecompositionSettings = BLOC ( condition = " Method in ( 'Taylor Variance Decomposition', ) ", - - Result = FACT ( statut = "o", - min = 1, - max = "**", - - MeanFirstOrder = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'yes', - max = 1, - fr = "Moyenne au premier ordre", - ang = "MeanFirstOrder", - ), - - StandardDeviationFirstOrder = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'yes', - max = 1, - fr = "Ecart-type au premier ordre", - ang = "StandardDeviationFirstOrder", - ), - - MeanSecondOrder = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'no', - max = 1, - fr = "Moyenne au second ordre", - ang = "MeanSecondOrder", - ), - - ImportanceFactor = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'yes', - max = 1, - fr = "Facteur d'importance pour variable de sortie scalaire", - ang = "ImportanceFactor", - ), - ImportanceFactorSettings = BLOC ( condition = " ImportanceFactor in ( 'yes', ) ", - - ImportanceFactorDrawingFilename = SIMP ( statut = "o", - typ = "TXM", - max = 1, - fr = "Nom du fichier graphique des facteurs d'importance", - ang = "Importance Factor Drawing Filename", - ), - - - ), # Fin BLOC ImportanceFactorSettings - - ), # Fin FACT Result - - ), # Fin BLOC TaylorVarianceDecompositionSettings - - - - RandomSamplingSettings = BLOC ( condition = " Method in ( 'Random Sampling', ) ", - - SimulationsNumber = SIMP ( statut = "o", - typ = "I", - val_min = 1, - fr = "Nombre de points", - ang = "Points number", - ), - - Result = FACT ( statut = "o", - min = 1, - max = "**", - - EmpiricalMean = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'yes', - max = 1, - fr = "Moyenne empirique", - ang = "Empirical mean", - ), - - EmpiricalStandardDeviation = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'yes', - max = 1, - fr = "Ecart-type empirique", - ang = "Empirical standard deviation", - ), - - EmpiricalQuantile = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'yes', - max = 1, - fr = "Quantile empirique", - ang = "Empirical quantile", - ), - - EmpiricalQuantileSettings = BLOC ( condition = " EmpiricalQuantile in ( 'yes', ) ", - - EmpiricalQuantile_Order = SIMP ( statut = "o", - typ = 'R', - defaut = 0.95, - max = 1, - val_min = 0.0, - val_max = 1.0, - fr = "Ordre du quantile empirique", - ang = "Empirical quantile order", - ), - - ), # Fin BLOC EmpiricalQuantileSettings - - CorrelationAnalysis = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'yes', - max = 1, - fr = "Correlations analysees", - ang = "Analysed correlations", - ), - - KernelSmoothing = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'yes', - max = 1, - fr = "Kernel smoothing de l'echantillon", - ang = "Kernel smoothing of the sample", - ), - - KernelSmoothingSettings = BLOC ( condition = " KernelSmoothing in ( 'yes', ) ", - - KernelSmoothingDrawingFilename = SIMP ( statut = "o", - typ = "TXM", - max = 1, - fr = "Nom du fichier graphique de la reconstruction a noyau", - ang = "Kernel Smoothing Drawing Filename", - ), - - - ), # Fin BLOC KernelSmoothingSettings - - ), # Fin FACT Result - - ), # Fin BLOC RandomSamplingSettings - - ), # Fin BLOC CentralUncertainty - - - - - ThresholdExceedence = BLOC ( condition = " Type in ( 'Threshold Exceedence', ) ", - - Event = FACT ( statut = "o", - min = 1, - max = 1, - - Threshold = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Le seuil de defaillance", - ang = "Failure threshold", - ), - - ComparisonOperator = SIMP ( statut = "o", - typ = "TXM", - max = 1, - into = ( "Less", "LessOrEqual", "Equal", "GreaterOrEqual", "Greater" ), - fr = "Que faut-il ne pas depasser : un maximum ou un minimum", - ang = "What is the failure threshold : maximum or minimum", - ), - ), # Fin FACT Event - - - Method = SIMP ( statut = "o", - typ = "TXM", - into = ( "Simulation", "FORM_SORM" ), - fr = "Methode", - ang = "Method", - ), - - SimulationSettings = BLOC ( condition = " Method in ( 'Simulation', ) ", - - Algorithm = SIMP ( statut = "o", - typ = "TXM", - into = ( "MonteCarlo", "LHS", "ImportanceSampling" ), - fr = "Algorithme de simulation", - ang = "Simulation algorithm", - ), - - - RandomGenerator = FACT ( statut = "o", - min = 1, - max = 1, - - SeedToBeSet = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'no', - max = 1, - fr = "La racine du generateur aleatoire doit-elle etre positionnee ?", - ang = "Does the random generator seed need to be set ?", - ), - - SeedSettings = BLOC ( condition = " SeedToBeSet in ( 'yes', ) ", - - RandomGeneratorSeed = SIMP ( statut = "o", - typ = "I", - max = 1, - fr = "Racine du generateur aleatoire", - ang = "Random generator seed", - ), - - ), # Fin BLOC SeedSettings - - ), # Fin FACT RandomGenerator - - - BlockSize = SIMP ( statut = "o", - typ = "I", - max = 1, - val_min = 1, - defaut = 1, - fr = "Nombre de calculs realises en bloc", - ang = "Number of computations as a block", - ), - - MaximumOuterSampling = SIMP ( statut = "o", - typ = "I", - max = 1, - val_min = 1, - fr = "Maximum d'iterations externes", - ang = "Maximum outer Sampling value", - ), - - MaximumCoefficientOfVariation = SIMP ( statut = "o", - typ = "R", - max = 1, - defaut = 0.1, - val_min = 0.0, - val_max = 1.0, - fr = "Coefficient de variation maximum", - ang = "Maximum coefficient of variation" - ), - - ImportanceSamplingSettings = BLOC ( condition = " Algorithm in ( 'ImportanceSampling', ) ", - - MeanVector = SIMP ( statut = "o", - typ = "R", - max = "**", - fr = "Moyenne", - ang = "Mean vector", - ), - - - ), # Fin BLOC ImportanceSamplingSettings - - Result = FACT ( statut = "o", - min = 1, - max = "**", - - Probability = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', ), - defaut = 'yes', - max = 1, - fr = "Probabiblite", - ang = "Probability", - ), - - StandardDeviation = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', ), - defaut = 'yes', - max = 1, - fr = "Ecart type", - ang = "Standard deviation", - ), - - ConfidenceInterval = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'yes', - max = 1, - fr = "Intervale de confiance", - ang = "Confidence interval", - ), - - ConfidenceIntervalSettings = BLOC ( condition = " ConfidenceInterval in ( 'yes', ) ", - - Level = SIMP ( statut = "o", - typ = 'R', - defaut = 0.9, - max = 1, - val_min = 0.0, - val_max = 1.0, - fr = "Niveau de confiance", - ang = "Confidence level", - ), - - ), # Fin BLOC ConfidenceIntervalSettings - - VariationCoefficient = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'yes', - max = 1, - fr = "Coefficient de variation", - ang = "Coefficient of variation", - ), - - SimulationsNumber = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'yes', - max = 1, - fr = "Nombre d'iterations", - ang = "Iteration number", - ), - - ConvergenceGraph = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'yes', - max = 1, - fr = "Graphe de convergence", - ang = "Convergence graph", - ), - - ConvergenceGraphSettings = BLOC ( condition = " ConvergenceGraph in ( 'yes', ) ", - - ConvergenceDrawingFilename = SIMP ( statut = "o", - typ = "TXM", - max = 1, - fr = "Nom du fichier graphique de la convergence", - ang = "Convergence Drawing Filename", - ), - - - ), # Fin BLOC ConvergenceGraphSettings - - ), # Fin FACT Result - - - - ), # Fin BLOC SimulationSettings - - - - FORM_SORMSettings = BLOC ( condition = " Method in ( 'FORM_SORM', ) ", - - Approximation = SIMP ( statut = "o", - typ = "TXM", - defaut = "FirstOrder", - into = ( "FirstOrder", "SecondOrder" ), - max = 1, - fr = "Approximation", - ang = "Approximation", - ), - - OptimizationAlgorithm = SIMP ( statut = "o", - typ = "TXM", - defaut = "Cobyla", - into = ( "Cobyla", "AbdoRackwitz" ), - max = 1, - fr = "Methode d'optimisation", - ang = "Optimization method", - ), - - - PhysicalStartingPoint = SIMP ( statut = "f", - typ = "R", - max = "**", - fr = "Point de demarrage de l'algorithme iteratif", - ang = "Initial point for iterative process", - ), - - MaximumIterationsNumber = SIMP ( statut = "f", - typ = "I", - max = 1, - val_min = 1, - fr = "Nombre maximum d'iterations", - ang = "Maximum number of iterations", - ), - - - MaximumAbsoluteError = SIMP ( statut = "o", - typ = "R", - max = 1, - defaut = 1E-4, - val_min = 0.0, - fr = "Distance maximum absolue entre 2 iterations successives", - ang = "Absolute maximum distance between 2 successive iterates", - ), - - MaximumRelativeError = SIMP ( statut = "o", - typ = "R", - max = 1, - defaut = 1E-4, - val_min = 0.0, - fr = "Distance maximum relative entre 2 iterations successives", - ang = "Relative maximum distance between 2 successive iterates", - ), - - MaximumConstraintError = SIMP ( statut = "o", - typ = "R", - max = 1, - defaut = 1E-4, - val_min = 0.0, - fr = "Valeur maximum absolue de la fonction moins la valeur du niveau", - ang = "Maximum absolute value of the constraint function minus the level value", - ), - - ImportanceSampling = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'no', - max = 1, - fr = "Tirage d'importance au point de conception", - ang = "Importance sampling at design point", - ), - - FORMResult = BLOC ( condition = " Approximation in ( 'FirstOrder', ) ", - - Probability = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', ), - defaut = 'yes', - max = 1, - fr = "Probabiblite", - ang = "Probability", - ), - - DesignPoint = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'yes', - max = 1, - fr = "Point de conception", - ang = "Design point", - ), - - HasoferReliabilityIndex = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'yes', - max = 1, - fr = "Indice de fiabilite", - ang = "Reliability index", - ), - - ImportanceFactor = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'yes', - max = 1, - fr = "Facteur d'importance pour variable de sortie scalaire", - ang = "Importance factor", - ), - - ImportanceFactorSettings = BLOC ( condition = " ImportanceFactor in ( 'yes', ) ", - - ImportanceFactorDrawingFilename = SIMP ( statut = "o", - typ = "TXM", - max = 1, - fr = "Nom du fichier graphique des facteurs d'importance", - ang = "Importance Factor Drawing Filename", - ), - - - ), # Fin BLOC ImportanceFactorSettings - - SensitivityAnalysis = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'yes', - max = 1, - fr = "Analyse de sensibilite", - ang = "Sensitivity analysis", - ), - - SensitivityAnalysisSettings = BLOC ( condition = " SensitivityAnalysis in ( 'yes', ) ", - - FORMEventProbabilitySensitivity = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'yes', - max = 1, - fr = "Indice de fiabilite de Hasofer", - ang = "Hasofer reliability index", - ), - - FORMEventProbabilitySensitivitySettings = BLOC ( condition = " FORMEventProbabilitySensitivity in ( 'yes', ) ", - - FORMEventProbabilitySensitivityDrawingFilename = SIMP ( statut = "o", - typ = "TXM", - max = 1, - fr = "Nom du fichier graphique des sensibilites", - ang = "Sensitivity Drawing Filename", - ), - - - ), # Fin BLOC FORMEventProbabilitySensitivitySettings - - HasoferReliabilityIndexSensitivity = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'yes', - max = 1, - fr = "Indice de fiabilite de Hasofer", - ang = "Hasofer reliability index", - ), - - HasoferReliabilityIndexSensitivitySettings = BLOC ( condition = " HasoferReliabilityIndexSensitivity in ( 'yes', ) ", - - HasoferReliabilityIndexSensitivityDrawingFilename = SIMP ( statut = "o", - typ = "TXM", - max = 1, - fr = "Nom du fichier graphique des sensibilites", - ang = "Sensitivity Drawing Filename", - ), - - - ), # Fin BLOC FHasoferReliabilityIndexSensitivitySettings - - ), # Fin BLOC SensitivityAnalysisSettings - - FunctionCallsNumber = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'yes', - max = 1, - fr = "Nombre d'appels a la fonction", - ang = "Function calls number", - ), - - - ), # Fin BLOC FORMResult - - - SORMResult = BLOC ( condition = " Approximation in ( 'SecondOrder', ) ", - - - TvedtApproximation = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'yes', - max = 1, - fr = "Approximation de Tvedt", - ang = "Tvedt approximation", - ), - - HohenBichlerApproximation = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'yes', - max = 1, - fr = "Approximation de HohenBichler", - ang = "HohenBichler approximation", - ), - - BreitungApproximation = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'yes', - max = 1, - fr = "Approximation de Breitung", - ang = "Breitung approximation", - ), - - DesignPoint = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'yes', - max = 1, - fr = "Point de conception", - ang = "Design point", - ), - - ImportanceFactor = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'yes', - max = 1, - fr = "Facteur d'importance pour variable de sortie scalaire", - ang = "Importance factor", - ), - - ImportanceFactorSettings = BLOC ( condition = " ImportanceFactor in ( 'yes', ) ", - - ImportanceFactorDrawingFilename = SIMP ( statut = "o", - typ = "TXM", - max = 1, - fr = "Nom du fichier graphique des facteurs d'importance", - ang = "Importance Factor Drawing Filename", - ), - - - ), # Fin BLOC ImportanceFactorSettings - - SensitivityAnalysis = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'yes', - max = 1, - fr = "Analyse de sensibilite", - ang = "Sensitivity analysis", - ), - - SensitivityAnalysisSettings = BLOC ( condition = " SensitivityAnalysis in ( 'yes', ) ", - - HasoferReliabilityIndexSensitivity = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'yes', - max = 1, - fr = "Indice de fiabilite de Hasofer", - ang = "Hasofer reliability index", - ), - - HasoferReliabilityIndexSensitivitySettings = BLOC ( condition = " HasoferReliabilityIndexSensitivity in ( 'yes', ) ", - - HasoferReliabilityIndexSensitivityDrawingFilename = SIMP ( statut = "o", - typ = "TXM", - max = 1, - fr = "Nom du fichier graphique des sensibilites", - ang = "Sensitivity Drawing Filename", - ), - - - ), # Fin BLOC FHasoferReliabilityIndexSensitivitySettings - - ), # Fin BLOC SensitivityAnalysisSettings - - FunctionCallsNumber = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'yes', - max = 1, - fr = "Nombre d'appels a la fonction", - ang = "Function calls number", - ), - - - ), # Fin BLOC SecondOrder - - - - ), # Fin BLOC FORM_SORMSettings - - - - ), # Fin BLOC ThresholdExceedence - - - -) # Fin PROC CRITERIA -# Ordre Catalogue CRITERIA - - - - - - - diff --git a/OldCodes/Openturns_Study/OpenTURNS_Cata_Study_V9.py b/OldCodes/Openturns_Study/OpenTURNS_Cata_Study_V9.py deleted file mode 100644 index 32df1aa8..00000000 --- a/OldCodes/Openturns_Study/OpenTURNS_Cata_Study_V9.py +++ /dev/null @@ -1,1718 +0,0 @@ -# -*- coding: iso-8859-1 -*- - -# -------------------------------------------------- -# debut entete -# -------------------------------------------------- - -#from Accas import ASSD, JDC_CATA, AU_MOINS_UN, PROC, SIMP, FACT, OPER, MACRO, BLOC, A_VALIDATOR -from Accas import * - -class loi ( ASSD ) : pass -class variable ( ASSD ) : pass - -import types -class Tuple: - def __init__(self,ntuple): - self.ntuple=ntuple - - def __convert__(self,valeur): - if type(valeur) == types.StringType: - return None - if len(valeur) != self.ntuple: - return None - return valeur - - def info(self): - return "Tuple de %s elements" % self.ntuple - - __repr__=info - __str__=info - -class Matrice: - def __init__(self,nbLigs=None,nbCols=None,methodeCalculTaille=None,formatSortie="ligne",valSup=None,valMin=None,structure=None): - self.nbLigs=nbLigs - self.nbCols=nbCols - self.methodeCalculTaille=methodeCalculTaille - self.formatSortie=formatSortie - self.valSup=valSup - self.valMin=valMin - self.structure=structure - - def __convert__(self,valeur): - # Attention ne verifie pas grand chose - if type(valeur) != types.ListType : - return None - return valeur - - def info(self): - return "Matrice %s x %s" % (self.nbLigs, self.nbCols) - - __repr__=info - __str__=info - - -#CONTEXT.debug = 1 -JdC = JDC_CATA ( code = 'OPENTURNS_STUDY', - execmodul = None, - regles = ( AU_MOINS_UN ( 'CRITERIA' ), - AU_MOINS_UN ( 'MODEL' ), - AVANT ( ('DISTRIBUTION', 'MODEL'), 'VARIABLE' ), -# A_CLASSER ( 'VARIABLE', 'CORRELATION' ), -# A_CLASSER ( 'VARIABLE', 'CRITERIA' ), -# A_CLASSER ( 'CORRELATION', 'CRITERIA' ), - ), - ) # Fin JDC_CATA - - -# -------------------------------------------------- -# fin entete -# -------------------------------------------------- - -LOG = PROC ( nom = "LOG", - op = None, - docu = "", - - DebugMessages = SIMP ( statut = "o", - typ = "TXM", - into = ( 'yes', 'no' ), - defaut = 'no', - fr = "Affichage du niveau de debug de la bibliotheque Open TURNS", - ang = "Open TURNS library debug level print", - ), - - WrapperMessages = SIMP ( statut = "o", - typ = "TXM", - into = ( 'yes', 'no' ), - defaut = 'no', - fr = "Affichage du niveau de wrapper de la bibliotheque Open TURNS", - ang = "Open TURNS library debug level print", - ), - - UserMessages = SIMP ( statut = "o", - typ = "TXM", - into = ( 'yes', 'no' ), - defaut = 'no', - fr = "Affichage du niveau de user de la bibliotheque Open TURNS", - ang = "Open TURNS library user level print", - ), - - InfoMessages = SIMP ( statut = "o", - typ = "TXM", - into = ( 'yes', 'no' ), - defaut = 'yes', - fr = "Affichage du niveau de info de la bibliotheque Open TURNS", - ang = "Open TURNS library info level print", - ), - - WarningMessages = SIMP ( statut = "o", - typ = "TXM", - into = ( 'yes', 'no' ), - defaut = 'yes', - fr = "Affichage du niveau de warning de la bibliotheque Open TURNS", - ang = "Open TURNS library warning level print", - ), - - ErrorMessages = SIMP ( statut = "o", - typ = "TXM", - into = ( 'yes', 'no' ), - defaut = 'yes', - fr = "Affichage du niveau de error de la bibliotheque Open TURNS", - ang = "Open TURNS library error level print", - ), - -) # Fin PROC LOG -# Ordre Catalogue LOG - - - - - -#================================ -# Definition des LOIS -#================================ - -# Nota : les variables de type OPER doivent etre en majuscules ! -# Nota : les variables de type OPER doivent etre de premier niveau (pas imbriquees dans un autre type) -DISTRIBUTION = OPER ( nom = "DISTRIBUTION", - sd_prod = loi, - op = 68, - fr = "Definitions des lois marginales utilisees par les variables d'entree", - - -#==== -# Type de distribution -#==== - - Kind = SIMP ( statut = "o", typ = "TXM", - into = ( "Beta", - "Exponential", - "Gamma", - "Geometric", - "Gumbel", - "Histogram", - "Laplace", - "Logistic", - "LogNormal", - "MultiNomial", - "NonCentralStudent", - "Normal", - "Poisson", - "Rayleigh", - "Student", - "Triangular", - "TruncatedNormal", - "Uniform", - #"UserDefined", - "Weibull", - ), - fr = "Choix du type de la loi marginale", - ang = "1D marginal distribution", - ), - -#==== -# Definition des parametres selon le type de la loi -#==== - - BETA = BLOC ( condition = " Kind in ( 'Beta', ) ", - - Settings = SIMP ( statut = "o", - typ = "TXM", - max = 1, - into = ( "RT", "MuSigma" ), - defaut = "RT", - fr = "Parametrage de la loi beta", - ang = "Beta distribution parameter set", - ), - - RT_Parameters = BLOC ( condition = " Settings in ( 'RT', ) ", - - R = SIMP ( statut = "o", - typ = "R", - max = 1, - val_min = 0., - fr = "Parametre R de la loi | R > 0", - ang = "R parameter | R > 0", - ), - - # T > R - T = SIMP ( statut = "o", - typ = "R", - max = 1, - val_min = 0., - fr = "Parametre T de la loi | T > R", - ang = "T parameter | T > R", - ), - - ), # Fin BLOC RT_Parameters - - - MuSigma_Parameters = BLOC ( condition = " Settings in ( 'MuSigma', ) ", - - Mu = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Moyenne de la loi", - ang = "Mean value", - ), - - Sigma = SIMP ( statut = "o", - typ = "R", - max = 1, - val_min = 0., - fr = "Ecart type de la loi", - ang = "Standard deviation", - ), - - ), # Fin BLOC MuSigma_Parameters - - - A = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Borne inferieure du support de la loi", - ang = "Support lower bound", - ), - - # B > A - B = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Borne superieure du support de la loi", - ang = "Support upper bound", - ), - - ), # Fin BLOC BETA - - - - EXPONENTIAL = BLOC ( condition = " Kind in ( 'Exponential', ) ", - - Lambda = SIMP ( statut = "o", - typ = "R", - max = 1, - val_min = 0., - fr = "Parametre Lambda | Lambda > 0", - ang = "Lambda parameter | Lambda > 0", - ), - - Gamma = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Borne inferieure du support de la loi", - ang = "Support lower bound", - ), - - ), # Fin BLOC EXPONENTIAL - - - - GAMMA = BLOC ( condition = " Kind in ( 'Gamma', ) ", - - Settings = SIMP ( statut = "o", - typ = "TXM", - max = 1, - into = ( "KLambda", "MuSigma" ), - defaut = "KLambda", - fr = "Parametrage de la loi gamma", - ang = "Gamma distribution parameter set", - ), - - KLambda_Parameters = BLOC ( condition = " Settings in ( 'KLambda', ) ", - - K = SIMP ( statut = "o", - typ = "R", - max = 1, - val_min = 0., - fr = "Parametre K de la loi | K > 0", - ang = "K parameter | K > 0", - ), - - Lambda = SIMP ( statut = "o", - typ = "R", - max = 1, - val_min = 0., - fr = "Parametre Lambda de la loi | Lambda > 0", - ang = "Lambda parameter | Lambda > 0", - ), - - ), # Fin BLOC KLambda_Parameters - - - MuSigma_Parameters = BLOC ( condition = " Settings in ( 'MuSigma', ) ", - - Mu = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Moyenne de la loi", - ang = "Mean value", - ), - - Sigma = SIMP ( statut = "o", - typ = "R", - max = 1, - val_min = 0., - fr = "Ecart type de la loi", - ang = "Standard deviation", - ), - - ), # Fin BLOC MuSigma_Parameters - - Gamma = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Borne inferieure du supoport de la loi", - ang = "Support lower bound", - ), - - - ), # Fin BLOC GAMMA - - - - GEOMETRIC = BLOC ( condition = " Kind in ( 'Geometric', ) ", - - P = SIMP ( statut = "o", - typ = "R", - max = 1, - val_min = 0., - val_max = 1., - fr = "Parametre P | 0 < P < 1", - ang = "P parameter | 0 < P < 1", - ), - - ), # Fin BLOC GEOMETRIC - - - - GUMBEL = BLOC ( condition = " Kind in ( 'Gumbel', ) ", - - Settings = SIMP ( statut = "o", - typ = "TXM", - max = 1, - into = ( "AlphaBeta", "MuSigma" ), - defaut = "AlphaBeta", - fr = "Parametrage de la loi gumbel", - ang = "Gumbel distribution parameter set", - ), - - AlphaBeta_Parameters = BLOC ( condition = " Settings in ( 'AlphaBeta', ) ", - - Alpha = SIMP ( statut = "o", - typ = "R", - max = 1, - val_min = 0., - fr = "Parametre Alpha de la loi | Alpha > 0", - ang = "Alpha parameter | Alpha > 0", - ), - - Beta = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Parametre Beta de la loi", - ang = "Beta parameter", - ), - - ), # Fin BLOC AlphaBeta_Parameters - - - MuSigma_Parameters = BLOC ( condition = " Settings in ( 'MuSigma', ) ", - - Mu = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Moyenne de la loi", - ang = "Mean value", - ), - - Sigma = SIMP ( statut = "o", - typ = "R", - max = 1, - val_min = 0., - fr = "Ecart type de la loi", - ang = "Standard deviation", - ), - - ), # Fin BLOC MuSigma_Parameters - - ), # Fin BLOC GUMBEL - - - - HISTOGRAM = BLOC ( condition = " Kind in ( 'Histogram', ) ", - - First = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Borne inferieure du supoport de la loi", - ang = "Support lower bound", - ), - - # Il faut definir une collection de couples ( x,p ) - Values = SIMP ( statut = 'o', - typ = Tuple(2), - max = '**', - fr = "Liste de couples : largeur de classe, hauteur de classe", - ang = "Class bandwidth, class height couple list", - validators=VerifTypeTuple(('R','R')), - ), - - ), # Fin BLOC HISTOGRAM - - - - LAPLACE = BLOC ( condition = " Kind in ( 'Laplace', ) ", - - Lambda = SIMP ( statut = "o", - typ = "R", - max = 1, - val_min = 0., - fr = "Parametre Lambda | Lambda > 0", - ang = "Lambda parameter | Lambda > 0", - ), - - Mu = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Moyenne de la loi", - ang = "Mean value", - ), - - ), # Fin BLOC LAPLACE - - LOGNORMAL = BLOC ( condition = " Kind in ( 'LogNormal', ) ", - - Settings = SIMP ( statut = "o", - typ = "TXM", - max = 1, - into = ( "MuSigmaLog", "MuSigma", "MuSigmaOverMu" ), - defaut = "MuSigmaLog", - fr = "Parametrage de la loi lognormale", - ang = "Lognormal distribution parameter set", - ), - - MuSigma_Parameters = BLOC ( condition = " Settings in ( 'MuSigma', ) ", - - Mu = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Moyenne de la loi", - ang = "Mean value", - ), - - Sigma = SIMP ( statut = "o", - typ = "R", - max = 1, - val_min = 0., - fr = "Ecart type de la loi", - ang = "Standard deviation", - ), - - ), # Fin BLOC MuSigma_Parameters - - MuSigmaOverMu_Parameters = BLOC ( condition = " Settings in ( 'MuSigmaOverMu', ) ", - - Mu = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Moyenne de la loi", - ang = "Mean value", - ), - - SigmaOverMu = SIMP ( statut = "o", - typ = "R", - max = 1, - val_min = 0., - fr = "Rapport ecart type / moyenne de la loi", - ang = "Standard deviation / mean value ratio", - ), - - ), # Fin BLOC MuSigmaOverMu_Parameters - - MuSigmaLog_Parameters = BLOC ( condition = " Settings in ( 'MuSigmaLog', ) ", - - MuLog = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Moyenne du log", - ang = "Log mean value", - ), - - SigmaLog = SIMP ( statut = "o", - typ = "R", - max = 1, - val_min = 0., - fr = "Ecart type du log", - ang = "Log standard deviation", - ), - - ), # Fin BLOC MuSigmaLog_Parameters - - Gamma = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Borne inferieure du support de la loi", - ang = "Support lower bound", - ), - - ), # Fin BLOC LOGNORMAL - - - - LOGISTIC = BLOC ( condition = " Kind in ( 'Logistic', ) ", - - Alpha = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Borne inferieure du supoport de la loi", - ang = "Support lower bound", - ), - - Beta = SIMP ( statut = "o", - typ = "R", - max = 1, - val_min = 0., - fr = "Parametre Beta de la loi | Beta > 0", - ang = "Beta parameter | Beta > 0", - ), - - ), # Fin BLOC LOGISTIC - - - - MULTINOMIAL = BLOC ( condition = " Kind in ( 'MultiNomial', ) ", - - N = SIMP ( statut = "o", - typ = "I", - max = 1, - fr = "Parametre N de la loi | N > 0", - ang = "N parameter | N > 0", - ), - - # Il faut definir une collection de couples ( x,p ) - Values = SIMP ( statut = 'o', - typ = "R", - max = '**', - fr = "Liste de probabilités", - ang = "Probability list", - validators=VerifTypeTuple(('R','R')), - ), - - ), # Fin BLOC MULTINOMIAL - - - NONCENTRALSTUDENT = BLOC ( condition = " Kind in ( 'NonCentralStudent', ) ", - - Nu = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Parametre Nu de la loi | Nu > 0", - ang = "Nu parameter | Nu > 0", - ), - - Delta = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Parametre Delta de la loi | Delta > 0", - ang = "Delta parameter | Delta > 0", - ), - - Gamma = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Parametre Gamma de centrage de la loi", - ang = "Gamma parameter", - ), - - ), # Fin BLOC NONCENTRALSTUDENT - - - NORMAL = BLOC ( condition = " Kind in ( 'Normal', ) ", - - Mu = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Moyenne de la loi", - ang = "Mean value", - ), - - Sigma = SIMP ( statut = "o", - typ = "R", - max = 1, - val_min = 0., - fr = "Ecart type de la loi", - ang = "Standard deviation", - ), - - ), # Fin BLOC NORMAL - - - - POISSON = BLOC ( condition = " Kind in ( 'Poisson', ) ", - - Lambda = SIMP ( statut = "o", - typ = "R", - max = 1, - val_min = 0., - fr = "Parametre Lambda de la loi | Lambda > 0", - ang = "Lambda parameter | Lambda > 0", - ), - - ), # Fin BLOC POISSON - - - - RAYLEIGH = BLOC ( condition = " Kind in ( 'Rayleigh', ) ", - - Sigma = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Parametre Sigma de la loi | Sigma > 0", - ang = "Sigma parameter | Sigma > 0", - ), - - Gamma = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Borne inferieure du support de la loi", - ang = "Support lower bound", - ), - ), # Fin BLOC RAYLEIGH - - - STUDENT = BLOC ( condition = " Kind in ( 'Student', ) ", - - Mu = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Parametre Mu de la loi", - ang = "Mu parameter", - ), - - Nu = SIMP ( statut = "o", - typ = "R", - max = 1, - val_min = 2., - fr = "Parametre Nu de la loi | Nu > 2", - ang = "Nu parameter | Nu > 2", - ), - - Sigma = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Parametre Sigma de la loi", - ang = "Sigma parameter", - ), - - ), # Fin BLOC STUDENT - - - - TRIANGULAR = BLOC ( condition = " Kind in ( 'Triangular', ) ", - - A = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Borne inferieure du support de la loi | A < M < B", - ang = "Support lower bound | A < M < B", - ), - - M = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Mode de la loi | A < M < B", - ang = "Mode | A < M < B", - ), - - B = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Borne superieure du support de la loi | A < M < B", - ang = "Support upper bound | A < M < B", - ), - - ), # Fin BLOC TRIANGULAR - - - - TRUNCATEDNORMAL = BLOC ( condition = " Kind in ( 'TruncatedNormal', ) ", - - MuN = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Moyenne de la loi Normale non tronquée", - ang = "Mean value of the associated non truncated normal distribution", - ), - - SigmaN = SIMP ( statut = "o", - typ = "R", - max = 1, - val_min = 0., - fr = "Ecart-type de la loi Normale non tronquée", - ang = "Standard deviation of the associated non truncated normal distribution", - ), - - A = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Borne inferieure de la loi | A < B", - ang = "Lower bound | A < B", - ), - - B = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Borne superieure de la loi | A < B", - ang = "Upper bound | A < B", - ), - - ), # Fin BLOC TRUNCATEDNORMAL - - - - UNIFORM = BLOC ( condition = " Kind in ( 'Uniform', ) ", - - A = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Borne inferieure du support de la loi | A < B", - ang = "Support lower bound | A < B", - ), - - B = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Borne superieure du support de la loi | A < B", - ang = "Support upper bound | A < B", - ), - - ), # Fin BLOC UNIFORM - - - - USERDEFINED = BLOC ( condition = " Kind in ( 'UserDefined', ) ", - - # Il faut definir une collection de couples ( x,p ) - Values = SIMP ( statut = 'o', - typ = 'R', - max = '**', - ), - - ), # Fin BLOC USERDEFINED - - - - WEIBULL = BLOC ( condition = " Kind in ( 'Weibull', ) ", - - Settings = SIMP ( statut = "o", - typ = "TXM", - max = 1, - into = ( "AlphaBeta", "MuSigma" ), - defaut = "AlphaBeta", - fr = "Parametrage de la loi weibull", - ang = "Weibull distribution parameter set", - ), - - AlphaBeta_Parameters = BLOC ( condition = " Settings in ( 'AlphaBeta', ) ", - - Alpha = SIMP ( statut = "o", - typ = "R", - max = 1, - val_min = 0., - fr = "Parametre Alpha de la loi | Alpha > 0", - ang = "Alpha parameter | Alpha > 0", - ), - - Beta = SIMP ( statut = "o", - typ = "R", - max = 1, - val_min = 0., - fr = "Parametre Beta de la loi | Beta > 0", - ang = "Beta parameter | Beta > 0", - ), - - ), # Fin BLOC AlphaBeta_Parameters - - - MuSigma_Parameters = BLOC ( condition = " Settings in ( 'MuSigma', ) ", - - Mu = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Moyenne de la loi", - ang = "Mean value", - ), - - Sigma = SIMP ( statut = "o", - typ = "R", - max = 1, - val_min = 0., - fr = "Ecart type de la loi", - ang = "Standard deviation", - ), - - ), # Fin BLOC MuSigma_Parameters - - Gamma = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Borne inferieure du support de la loi", - ang = "Support lower bound", - ), - - ), # Fin BLOC WEIBULL - -) # Fin OPER DISTRIBUTION -# Ordre Catalogue DISTRIBUTION - - - -#================================ -# Definition du modele physique -#================================ - - -DETERMINISTICVARIABLE = OPER ( nom = "DETERMINISTICVARIABLE", - sd_prod = variable, - op = None, - fr = "Variable deterministe", - ang = "Deterministic variable", - - N = SIMP ( statut = 'o', - typ = "TXM", - fr = "Nom", - ang = "Name", - ), - - T = SIMP ( statut = 'o', - defaut = "in", - into = ( "in" , "out", ), - typ = "TXM", - fr = "Type", - ang = "Type", - ), - - R = SIMP ( statut = 'o', - defaut = 0, - typ = "I", - fr = "Rang", - ang = "Rank", - ), - -) # Fin OPER DETERMINISTICVARIABLE -# Ordre Catalogue DETERMINISTICVARIABLE - - - -import opsOT -MODEL = MACRO ( nom = "MODEL", - op = None, - UIinfo = { "groupes" : ( "Gestion du travail", ) }, - fr = "Chargement du wrapper du modele physique", - ang = "Physical model wrapper load", - sd_prod = opsOT.INCLUDE, - op_init = opsOT.INCLUDE_context, - fichier_ini = 1, - - FileName = SIMP ( statut = "o", - typ = ('Fichier', 'Wrapper Files (*.xml);;All Files (*)',), - fr = "Nom du modele physique", - ang = "Physical model identifier", - ), - -) # Fin PROC MODEL -# Ordre Catalogue MODEL - - - - -VARIABLE = PROC ( nom = "VARIABLE", - op = None, - docu = "", - fr = "Variable probabiliste", - ang = "Probabilistic variable", - - ModelVariable = SIMP ( statut = "o", - typ = ( variable, ), - fr = "Variable d'entrée du modèle", - ang = "Input variable of the model", - ), - - Distribution = SIMP ( statut = "o", - typ = ( loi, ), - fr = "Modélisation probabiliste", - ang = "Probabilistic modelisation", - ), - -) # Fin PROC VARIABLE -# Ordre Catalogue VARIABLE - - -CORRELATION = PROC ( nom = 'CORRELATION', - op = None, - docu = "", - fr = "Correlation entre variables", - ang = "Variable correlation", - - Copula = SIMP ( statut = "o", - typ = 'TXM', - into = ( "Independent", "Normal" ), - defaut = "Independent", - fr = "Type de la copule", - ang = "Copula kind", - ), - - Matrix = BLOC ( condition = "Copula in ( 'Normal', )", - - CorrelationMatrix = SIMP ( statut = "o", - typ = Matrice(nbLigs=None, - nbCols=None, - methodeCalculTaille='nbDeVariables', - valSup=1, - valMin=-1, - structure="symetrique"), - fr = "Matrice de correlation entre les variables d'entree", - ang = "Correlation matrix for input variables", - ), - ), # Fin BLOC Matrix - - -) # Fin PROC CORRELATION -# Ordre Catalogue CORRELATION - - - - - -#================================ -# Definition de l'etude -#================================ - -# Nota : les variables de type PROC doivent etre en majuscules ! -CRITERIA = PROC ( nom = "CRITERIA", - op = None, - docu = "", - fr = "Critère de l'étude d'incertitudes", - ang = "Uncertainty study criteria", - - - - Type = SIMP ( statut = "o", - typ = "TXM", - into = ( "Min/Max", "Central Uncertainty", "Threshold Exceedence" ), - fr = "Type du critère", - ang = "Criteria type", - ), - - - - - - - - MinMax = BLOC ( condition = " Type in ( 'Min/Max', ) ", - - Method = SIMP ( statut = "o", - typ = "TXM", - into = ( "Experiment Plane", "Random Sampling" ), - fr = "Methode", - ang = "Method", - ), - # UC 3.1.1 - ExperimentPlaneSettings = BLOC ( condition = " Method in ( 'Experiment Plane', ) ", - - ExperimentPlane = SIMP ( statut = "o", - typ = "TXM", - into = ( "Axial", "Factorial", "Composite", ), - fr = "Type du plan d'expérience", - ang = "Experiment plane type", - ), - - Levels = SIMP ( statut = "o", - typ = "R", - val_min = 0.0, - max = '**', - fr = "Liste de niveaux dans chaque direction", - ang = "Levels in each direction", - ), - - # Scaled Vector - UnitPerDimension = SIMP ( statut = "o", - typ = "R", - max = '**', - fr = "Unité par dimension (autant que de variables declarées)", - ang = "Units per dimension (as much as declared variables)", - ), - - # Translation Vector - Center = SIMP ( statut = "o", - typ = "R", - max = '**', - fr = "Centre du plan d'expérience", - ang = "Experiment plan center", - ), - - ), # Fin BLOC ExperimentPlaneSettings - - - - RandomSamplingSettings = BLOC ( condition = " Method in ( 'Random Sampling', ) ", - - SimulationsNumber = SIMP ( statut = "o", - typ = "I", - val_min = 1, - fr = "Nombre de points", - ang = "Points number", - ), - - ), # Fin BLOC RandomSamplingSettings - - Result = SIMP ( statut = "o", - typ = "TXM", - into = ( "Min/Max", ), - defaut = "Min/Max", - fr = "Le minimum et le maximum de la variable d'intérêt", - ang = "The min and max values", - ), - - - ), # Fin BLOC MinMax - - - - - CentralUncertainty = BLOC ( condition = " Type in ( 'Central Uncertainty', ) ", - - Method = SIMP ( statut = "o", - typ = "TXM", - into = ( "Taylor Variance Decomposition", "Random Sampling" ), - fr = "Methode", - ang = "Method", - ), - - # UC 3.2. - TaylorVarianceDecompositionSettings = BLOC ( condition = " Method in ( 'Taylor Variance Decomposition', ) ", - - Result = FACT ( statut = "o", - min = 1, - max = "**", - - MeanFirstOrder = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'yes', - max = 1, - fr = "Moyenne au premier ordre", - ang = "MeanFirstOrder", - ), - - StandardDeviationFirstOrder = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'yes', - max = 1, - fr = "Ecart-type au premier ordre", - ang = "StandardDeviationFirstOrder", - ), - - MeanSecondOrder = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'no', - max = 1, - fr = "Moyenne au second ordre", - ang = "MeanSecondOrder", - ), - - ImportanceFactor = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'yes', - max = 1, - fr = "Facteur d'importance pour variable de sortie scalaire", - ang = "ImportanceFactor", - ), - ImportanceFactorSettings = BLOC ( condition = " ImportanceFactor in ( 'yes', ) ", - - ImportanceFactorDrawingFilename = SIMP ( statut = "o", - typ = "TXM", - max = 1, - fr = "Nom du fichier graphique des facteurs d'importance", - ang = "Importance Factor Drawing Filename", - ), - - - ), # Fin BLOC ImportanceFactorSettings - - ), # Fin FACT Result - - ), # Fin BLOC TaylorVarianceDecompositionSettings - - - - RandomSamplingSettings = BLOC ( condition = " Method in ( 'Random Sampling', ) ", - - SimulationsNumber = SIMP ( statut = "o", - typ = "I", - val_min = 1, - fr = "Nombre de points", - ang = "Points number", - ), - - Result = FACT ( statut = "o", - min = 1, - max = "**", - - EmpiricalMean = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'yes', - max = 1, - fr = "Moyenne empirique", - ang = "Empirical mean", - ), - - EmpiricalStandardDeviation = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'yes', - max = 1, - fr = "Ecart-type empirique", - ang = "Empirical standard deviation", - ), - - EmpiricalQuantile = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'yes', - max = 1, - fr = "Quantile empirique", - ang = "Empirical quantile", - ), - - EmpiricalQuantileSettings = BLOC ( condition = " EmpiricalQuantile in ( 'yes', ) ", - - EmpiricalQuantile_Order = SIMP ( statut = "o", - typ = 'R', - defaut = 0.95, - max = 1, - val_min = 0.0, - val_max = 1.0, - fr = "Ordre du quantile empirique", - ang = "Empirical quantile order", - ), - - ), # Fin BLOC EmpiricalQuantileSettings - - CorrelationAnalysis = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'yes', - max = 1, - fr = "Correlations analysees", - ang = "Analysed correlations", - ), - - KernelSmoothing = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'yes', - max = 1, - fr = "Kernel smoothing de l'echantillon", - ang = "Kernel smoothing of the sample", - ), - - KernelSmoothingSettings = BLOC ( condition = " KernelSmoothing in ( 'yes', ) ", - - KernelSmoothingDrawingFilename = SIMP ( statut = "o", - typ = "TXM", - max = 1, - fr = "Nom du fichier graphique de la reconstruction a noyau", - ang = "Kernel Smoothing Drawing Filename", - ), - - - ), # Fin BLOC KernelSmoothingSettings - - ), # Fin FACT Result - - ), # Fin BLOC RandomSamplingSettings - - ), # Fin BLOC CentralUncertainty - - - - - ThresholdExceedence = BLOC ( condition = " Type in ( 'Threshold Exceedence', ) ", - - Event = FACT ( statut = "o", - min = 1, - max = 1, - - Threshold = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Le seuil de defaillance", - ang = "Failure threshold", - ), - - ComparisonOperator = SIMP ( statut = "o", - typ = "TXM", - max = 1, - into = ( "Less", "LessOrEqual", "Equal", "GreaterOrEqual", "Greater" ), - fr = "Que faut-il ne pas depasser : un maximum ou un minimum", - ang = "What is the failure threshold : maximum or minimum", - ), - ), # Fin FACT Event - - - Method = SIMP ( statut = "o", - typ = "TXM", - into = ( "Simulation", "FORM_SORM" ), - fr = "Methode", - ang = "Method", - ), - - SimulationSettings = BLOC ( condition = " Method in ( 'Simulation', ) ", - - Algorithm = SIMP ( statut = "o", - typ = "TXM", - into = ( "MonteCarlo", "LHS", "ImportanceSampling" ), - fr = "Algorithme de simulation", - ang = "Simulation algorithm", - ), - - - RandomGenerator = FACT ( statut = "o", - min = 1, - max = 1, - - SeedToBeSet = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'no', - max = 1, - fr = "La racine du generateur aleatoire doit-elle etre positionnee ?", - ang = "Does the random generator seed need to be set ?", - ), - - SeedSettings = BLOC ( condition = " SeedToBeSet in ( 'yes', ) ", - - RandomGeneratorSeed = SIMP ( statut = "o", - typ = "I", - max = 1, - fr = "Racine du generateur aleatoire", - ang = "Random generator seed", - ), - - ), # Fin BLOC SeedSettings - - ), # Fin FACT RandomGenerator - - - BlockSize = SIMP ( statut = "o", - typ = "I", - max = 1, - val_min = 1, - defaut = 1, - fr = "Nombre de calculs realises en bloc", - ang = "Number of computations as a block", - ), - - MaximumOuterSampling = SIMP ( statut = "o", - typ = "I", - max = 1, - val_min = 1, - fr = "Maximum d'iterations externes", - ang = "Maximum outer Sampling value", - ), - - MaximumCoefficientOfVariation = SIMP ( statut = "o", - typ = "R", - max = 1, - defaut = 0.1, - val_min = 0.0, - val_max = 1.0, - fr = "Coefficient de variation maximum", - ang = "Maximum coefficient of variation" - ), - - ImportanceSamplingSettings = BLOC ( condition = " Algorithm in ( 'ImportanceSampling', ) ", - - MeanVector = SIMP ( statut = "o", - typ = "R", - max = "**", - fr = "Moyenne", - ang = "Mean vector", - ), - - - ), # Fin BLOC ImportanceSamplingSettings - - Result = FACT ( statut = "o", - min = 1, - max = "**", - - Probability = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', ), - defaut = 'yes', - max = 1, - fr = "Probabiblite", - ang = "Probability", - ), - - StandardDeviation = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', ), - defaut = 'yes', - max = 1, - fr = "Ecart type", - ang = "Standard deviation", - ), - - ConfidenceInterval = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'yes', - max = 1, - fr = "Intervale de confiance", - ang = "Confidence interval", - ), - - ConfidenceIntervalSettings = BLOC ( condition = " ConfidenceInterval in ( 'yes', ) ", - - Level = SIMP ( statut = "o", - typ = 'R', - defaut = 0.9, - max = 1, - val_min = 0.0, - val_max = 1.0, - fr = "Niveau de confiance", - ang = "Confidence level", - ), - - ), # Fin BLOC ConfidenceIntervalSettings - - VariationCoefficient = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'yes', - max = 1, - fr = "Coefficient de variation", - ang = "Coefficient of variation", - ), - - SimulationsNumber = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'yes', - max = 1, - fr = "Nombre d'iterations", - ang = "Iteration number", - ), - - ConvergenceGraph = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'yes', - max = 1, - fr = "Graphe de convergence", - ang = "Convergence graph", - ), - - ConvergenceGraphSettings = BLOC ( condition = " ConvergenceGraph in ( 'yes', ) ", - - ConvergenceDrawingFilename = SIMP ( statut = "o", - typ = "TXM", - max = 1, - fr = "Nom du fichier graphique de la convergence", - ang = "Convergence Drawing Filename", - ), - - - ), # Fin BLOC ConvergenceGraphSettings - - ), # Fin FACT Result - - - - ), # Fin BLOC SimulationSettings - - - - FORM_SORMSettings = BLOC ( condition = " Method in ( 'FORM_SORM', ) ", - - Approximation = SIMP ( statut = "o", - typ = "TXM", - defaut = "FirstOrder", - into = ( "FirstOrder", "SecondOrder" ), - max = 1, - fr = "Approximation", - ang = "Approximation", - ), - - OptimizationAlgorithm = SIMP ( statut = "o", - typ = "TXM", - defaut = "Cobyla", - into = ( "Cobyla", "AbdoRackwitz" ), - max = 1, - fr = "Methode d'optimisation", - ang = "Optimization method", - ), - - - PhysicalStartingPoint = SIMP ( statut = "f", - typ = "R", - max = "**", - fr = "Point de demarrage de l'algorithme iteratif", - ang = "Initial point for iterative process", - ), - - MaximumIterationsNumber = SIMP ( statut = "f", - typ = "I", - max = 1, - val_min = 1, - fr = "Nombre maximum d'iterations", - ang = "Maximum number of iterations", - ), - - - MaximumAbsoluteError = SIMP ( statut = "o", - typ = "R", - max = 1, - defaut = 1E-4, - val_min = 0.0, - fr = "Distance maximum absolue entre 2 iterations successives", - ang = "Absolute maximum distance between 2 successive iterates", - ), - - MaximumRelativeError = SIMP ( statut = "o", - typ = "R", - max = 1, - defaut = 1E-4, - val_min = 0.0, - fr = "Distance maximum relative entre 2 iterations successives", - ang = "Relative maximum distance between 2 successive iterates", - ), - - MaximumConstraintError = SIMP ( statut = "o", - typ = "R", - max = 1, - defaut = 1E-4, - val_min = 0.0, - fr = "Valeur maximum absolue de la fonction moins la valeur du niveau", - ang = "Maximum absolute value of the constraint function minus the level value", - ), - - ImportanceSampling = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'no', - max = 1, - fr = "Tirage d'importance au point de conception", - ang = "Importance sampling at design point", - ), - - FORMResult = BLOC ( condition = " Approximation in ( 'FirstOrder', ) ", - - Probability = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', ), - defaut = 'yes', - max = 1, - fr = "Probabiblite", - ang = "Probability", - ), - - DesignPoint = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'yes', - max = 1, - fr = "Point de conception", - ang = "Design point", - ), - - HasoferReliabilityIndex = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'yes', - max = 1, - fr = "Indice de fiabilite", - ang = "Reliability index", - ), - - ImportanceFactor = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'yes', - max = 1, - fr = "Facteur d'importance pour variable de sortie scalaire", - ang = "Importance factor", - ), - - ImportanceFactorSettings = BLOC ( condition = " ImportanceFactor in ( 'yes', ) ", - - ImportanceFactorDrawingFilename = SIMP ( statut = "o", - typ = "TXM", - max = 1, - fr = "Nom du fichier graphique des facteurs d'importance", - ang = "Importance Factor Drawing Filename", - ), - - - ), # Fin BLOC ImportanceFactorSettings - - SensitivityAnalysis = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'yes', - max = 1, - fr = "Analyse de sensibilite", - ang = "Sensitivity analysis", - ), - - SensitivityAnalysisSettings = BLOC ( condition = " SensitivityAnalysis in ( 'yes', ) ", - - FORMEventProbabilitySensitivity = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'yes', - max = 1, - fr = "Indice de fiabilite de Hasofer", - ang = "Hasofer reliability index", - ), - - FORMEventProbabilitySensitivitySettings = BLOC ( condition = " FORMEventProbabilitySensitivity in ( 'yes', ) ", - - FORMEventProbabilitySensitivityDrawingFilename = SIMP ( statut = "o", - typ = "TXM", - max = 1, - fr = "Nom du fichier graphique des sensibilites", - ang = "Sensitivity Drawing Filename", - ), - - - ), # Fin BLOC FORMEventProbabilitySensitivitySettings - - HasoferReliabilityIndexSensitivity = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'yes', - max = 1, - fr = "Indice de fiabilite de Hasofer", - ang = "Hasofer reliability index", - ), - - HasoferReliabilityIndexSensitivitySettings = BLOC ( condition = " HasoferReliabilityIndexSensitivity in ( 'yes', ) ", - - HasoferReliabilityIndexSensitivityDrawingFilename = SIMP ( statut = "o", - typ = "TXM", - max = 1, - fr = "Nom du fichier graphique des sensibilites", - ang = "Sensitivity Drawing Filename", - ), - - - ), # Fin BLOC FHasoferReliabilityIndexSensitivitySettings - - ), # Fin BLOC SensitivityAnalysisSettings - - FunctionCallsNumber = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'yes', - max = 1, - fr = "Nombre d'appels a la fonction", - ang = "Function calls number", - ), - - - ), # Fin BLOC FORMResult - - - SORMResult = BLOC ( condition = " Approximation in ( 'SecondOrder', ) ", - - - TvedtApproximation = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'yes', - max = 1, - fr = "Approximation de Tvedt", - ang = "Tvedt approximation", - ), - - HohenBichlerApproximation = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'yes', - max = 1, - fr = "Approximation de HohenBichler", - ang = "HohenBichler approximation", - ), - - BreitungApproximation = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'yes', - max = 1, - fr = "Approximation de Breitung", - ang = "Breitung approximation", - ), - - DesignPoint = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'yes', - max = 1, - fr = "Point de conception", - ang = "Design point", - ), - - ImportanceFactor = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'yes', - max = 1, - fr = "Facteur d'importance pour variable de sortie scalaire", - ang = "Importance factor", - ), - - ImportanceFactorSettings = BLOC ( condition = " ImportanceFactor in ( 'yes', ) ", - - ImportanceFactorDrawingFilename = SIMP ( statut = "o", - typ = "TXM", - max = 1, - fr = "Nom du fichier graphique des facteurs d'importance", - ang = "Importance Factor Drawing Filename", - ), - - - ), # Fin BLOC ImportanceFactorSettings - - SensitivityAnalysis = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'yes', - max = 1, - fr = "Analyse de sensibilite", - ang = "Sensitivity analysis", - ), - - SensitivityAnalysisSettings = BLOC ( condition = " SensitivityAnalysis in ( 'yes', ) ", - - HasoferReliabilityIndexSensitivity = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'yes', - max = 1, - fr = "Indice de fiabilite de Hasofer", - ang = "Hasofer reliability index", - ), - - HasoferReliabilityIndexSensitivitySettings = BLOC ( condition = " HasoferReliabilityIndexSensitivity in ( 'yes', ) ", - - HasoferReliabilityIndexSensitivityDrawingFilename = SIMP ( statut = "o", - typ = "TXM", - max = 1, - fr = "Nom du fichier graphique des sensibilites", - ang = "Sensitivity Drawing Filename", - ), - - - ), # Fin BLOC FHasoferReliabilityIndexSensitivitySettings - - ), # Fin BLOC SensitivityAnalysisSettings - - FunctionCallsNumber = SIMP ( statut = "o", - typ = 'TXM', - into = ( 'yes', 'no' ), - defaut = 'yes', - max = 1, - fr = "Nombre d'appels a la fonction", - ang = "Function calls number", - ), - - - ), # Fin BLOC SecondOrder - - - - ), # Fin BLOC FORM_SORMSettings - - - - ), # Fin BLOC ThresholdExceedence - - - -) # Fin PROC CRITERIA -# Ordre Catalogue CRITERIA - - - - - - - diff --git a/OldCodes/Openturns_Study/configuration_OPENTURNS_STUDY.py b/OldCodes/Openturns_Study/configuration_OPENTURNS_STUDY.py deleted file mode 100644 index 316342aa..00000000 --- a/OldCodes/Openturns_Study/configuration_OPENTURNS_STUDY.py +++ /dev/null @@ -1,59 +0,0 @@ -# -*- coding: utf-8 -*- -# Copyright (C) 2007-2013 EDF R&D -# -# 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 -# -""" - Ce module sert pour charger les paramètres de configuration d'EFICAS -""" -# Modules Python -import configuration -import os - - -class CONFIG(configuration.configBase): - - #----------------------------------- - def __init__(self,appli,repIni): - #----------------------------------- - - - self.labels_user=['exec_acrobat', 'catalogues','savedir','path_doc'] - self.labels_eficas=["OpenTURNS_path","path_doc","exec_acrobat"] - self.labels_eficas=self.labels_eficas+["rep_cata","lang","catalogues"] - configuration.configBase.__init__(self,appli,repIni) - - #--------------------------------------- - def lectureFichierIniStandard(self): - #--------------------------------------- - configuration.configBase.lectureFichierIniStandard(self) - if hasattr(self,'OpenTURNS_path') : self.oldOTPath=self.OpenTURNS_path - - #--------------------------------------- - def lectureFichierIniIntegrateur(self): - #--------------------------------------- - configuration.configBase.lectureFichierIniUtilisateur(self) - if hasattr(self,'OpenTURNS_path') : - if hasattr(self,'oldOTPath') and (self.OpenTURNS_path != self.oldOTPath): - import sys - sys.path.remove(self.oldOTPath) - sys.path[:0]=[self.OpenTURNS_path] - self.oldOTPath=self.OpenTURNS_path - -def make_config(appli,rep): - return CONFIG(appli,rep) - diff --git a/OldCodes/Openturns_Study/opsOT.py b/OldCodes/Openturns_Study/opsOT.py deleted file mode 100644 index 5297377f..00000000 --- a/OldCodes/Openturns_Study/opsOT.py +++ /dev/null @@ -1,38 +0,0 @@ -# -*- coding: iso-8859-1 -*- -# Copyright (C) 2007-2013 EDF R&D -# -# 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 -# - -def INCLUDE(self,FileName,**args): - """ - Fonction sd_prod pour la macro INCLUDE - """ - if hasattr(self,'change_fichier'): - delattr(self,'change_fichier') - delattr(self,'fichier_ini') - - self.makeInclude2(fichier=FileName) - -def INCLUDE_context(self,d): - """ - Fonction op_init pour macro INCLUDE - """ - for k,v in self.g_context.items(): - d[k]=v - - diff --git a/OldCodes/Openturns_Study/prefs.py b/OldCodes/Openturns_Study/prefs.py deleted file mode 100644 index f83b0a29..00000000 --- a/OldCodes/Openturns_Study/prefs.py +++ /dev/null @@ -1,22 +0,0 @@ -# Copyright (C) 2007-2013 EDF R&D -# -# 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 -# -code='OPENTURNS_STUDY' -import sys, os -if os.path.abspath(__file__) not in sys.path : - sys.path.insert(0,os.path.dirname(os.path.abspath(__file__))) diff --git a/OldCodes/Openturns_Study/prefs_OPENTURNS_STUDY.py b/OldCodes/Openturns_Study/prefs_OPENTURNS_STUDY.py deleted file mode 100644 index f686f516..00000000 --- a/OldCodes/Openturns_Study/prefs_OPENTURNS_STUDY.py +++ /dev/null @@ -1,56 +0,0 @@ -# -*- coding: utf-8 -*- -# Copyright (C) 2007-2015 EDF R&D -# -# 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, sys -# Les variables pouvant positionnees sont : -print "import des prefs de OPENTURNS" - -# repIni sert a localiser le fichier -# initialdir sert comme directory initial des QFileDialog -# positionnee a repin au debut mise a jour dans configuration -repIni=os.path.dirname(os.path.abspath(__file__)) -INSTALLDIR=os.path.join(repIni,'..') -sys.path[:0]=[INSTALLDIR] - - -# Codage des strings qui accepte les accents (en remplacement de 'ascii') -# lang indique la langue utilisée pour les chaines d'aide : fr ou ang -lang='fr' -encoding='iso-8859-1' - -# Acces a la documentation -path_doc = os.path.join(INSTALLDIR,'Doc') -exec_acrobat = "/usr/bin/xpdf" -savedir = os.environ['HOME'] - - -# OpenTURNS Python module -OpenTURNS_path="" -if len(OpenTURNS_path) > 0: sys.path[:0]=[OpenTURNS_path] - -# Choix des catalogues -from Editeur.catadesc import CatalogDescription - -catalogues = ( - CatalogDescription(identifier = "OPENTURNS_STUDY_V8", - cata_file_path = os.path.join(os.path.abspath(repIni), 'OpenTURNS_Cata_Study_V8.py'), - file_format = "openturns_study"), -) - diff --git a/OldCodes/Openturns_Study/properties.py b/OldCodes/Openturns_Study/properties.py deleted file mode 100644 index 95f71b1d..00000000 --- a/OldCodes/Openturns_Study/properties.py +++ /dev/null @@ -1,25 +0,0 @@ -# -*- coding: utf-8 -*- -#@ MODIF properties Accas DATE 10/10/2002 AUTEUR gcbhhhh M.ADMINISTRATEUR -# maConfiguration MANAGEMENT OF EDF VERSION -# RESPONSABLE D6BHHHH J-P.LEFEBVRE -# ====================================================================== -# COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# IDENTIFICATION DU GESTIONNAIRE DE COMMANDE ACCAS A PARTIR -# DE LA VERSION DU CODE_ASTER ASSOCIE -#---------------------------------------------------------------------- -version = "7.1.0" -date = "23/04/2003" diff --git a/OldCodes/Openturns_Study/qtEficas_openturns_study.py b/OldCodes/Openturns_Study/qtEficas_openturns_study.py deleted file mode 100755 index f191f88a..00000000 --- a/OldCodes/Openturns_Study/qtEficas_openturns_study.py +++ /dev/null @@ -1,33 +0,0 @@ -#!/usr/bin/env python -# -*- coding: utf-8 -*- -# Copyright (C) 2007-2013 EDF R&D -# -# 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 -# -""" - Ce module sert à lancer EFICAS configuré pour Openturns -""" -# Modules Python - -# Modules Eficas -import prefs -name='prefs_'+prefs.code -__import__(name) - -import sys -from InterfaceQT4 import eficas_go -eficas_go.lanceEficas(code=prefs.code) diff --git a/OldCodes/Openturns_Study/sdistOTqt.py b/OldCodes/Openturns_Study/sdistOTqt.py deleted file mode 100644 index 883d9e31..00000000 --- a/OldCodes/Openturns_Study/sdistOTqt.py +++ /dev/null @@ -1,103 +0,0 @@ -# -*- coding: utf-8 -*- -""" - Ce module sert à construire les distributions d'EFICAS pour Openturns - en fonction du tag CVS courant - Les distributions sont : - - un tar.gz pour UNIX ne contenant pas mxTextTools - L'utilisation de ce module est la suivante : - 1- Se mettre dans un répertoire de travail - 2- Configurer son environnement pour utiliser le référentiel CVS EFICAS - 3- Exporter les sources d'EficasV1 par la commande : - cvs export -r TAG -d Eficas_export EficasV1 - ou TAG est le tag CVS de la version que l'on veut distribuer (par exemple V1_1p1) - 5- Aller dans le répertoire Eficas_export - 6- Executer le script sdist.py - python sdist.py - Ce qui a pour effet de creer un repertoire dist contenant la distribution - et de la copier dans le répertoire indiqué par dir_download s'il est accessible - -""" -import os,shutil,glob,sys -import types - -nom_distrib="QTEficasOpenturns_V1_0" -path_distrib=os.path.join("dist",nom_distrib) -path_TextTools="/home/eficas/pkg/mxTools/egenix2.0.2pourWindows/mx/TextTools" -dir_download= "/home/eficas/WWW/telechargement/eficas" - -def main(): - if os.path.isdir('dist'):shutil.rmtree('dist') - - copyfiles('.',path_distrib,['LICENSE.TERMS','INSTALL','NEWS']) - - copyfiles('../Editeur',os.path.join(path_distrib,'Editeur'),['*.py','faqs.txt']) - copyfiles('../InterfaceTK',os.path.join(path_distrib,'InterfaceTK'),['*.py','faqs.txt']) - copyfiles('../InterfaceQT',os.path.join(path_distrib,'InterfaceQT'),['*.py','faqs.txt']) - copyfiles('../Ui',os.path.join(path_distrib,'Ui'),['*.ui','makefile']) - copyfiles('../Openturns',os.path.join(path_distrib,'Openturns'),['*.py','*.ini']) - copyfiles('../Ihm',os.path.join(path_distrib,'Ihm'),['*.py']) - copyfiles('../Extensions',os.path.join(path_distrib,'Extensions'),['*.py']) - copyfiles('../Misc',os.path.join(path_distrib,'Misc'),['*.py']) - copyfiles('../Accas',os.path.join(path_distrib,'Accas'),['*.py']) - copyfiles('../Accas',os.path.join(path_distrib,'Noyau'),['*.py']) - copyfiles('../Accas',os.path.join(path_distrib,'Validation'),['*.py']) - # AIDE - copyfiles('../AIDE',os.path.join(path_distrib,'AIDE'),['*.py']) - copyfiles('../AIDE/fichiers',os.path.join(path_distrib,'AIDE','fichiers'),['*']) - copyfiles('.',os.path.join(path_distrib,'AIDE','fichiers'),['INSTALL','NEWS']) - copyfiles('../Editeur',os.path.join(path_distrib,'AIDE','fichiers'),['faqs.txt']) - # ______________________ - - copyfiles('../convert',os.path.join(path_distrib,'convert'),['*.py']) - copyfiles('../convert/parserv5',os.path.join(path_distrib,'convert','parserv5'),['*.py']) - copyfiles('../generator',os.path.join(path_distrib,'generator'),['*.py']) - copyfiles('../Editeur/icons',os.path.join(path_distrib,'Editeur','icons'),['*.gif']) - copyfiles('../Editeur/icons',os.path.join(path_distrib,'Editeur','icons'),['*.png']) - copyfiles('../Editeur/Patrons/',os.path.join(path_distrib,'Editeur','Patrons'),['*.com*']) - copyfiles('../Editeur/Patrons/OPENTURNS',os.path.join(path_distrib,'Editeur','Patrons','OPENTURNS'),['*.com*']) - - copyfiles('../Noyau',os.path.join(path_distrib,'Noyau'),['*.py']) - copyfiles('../Validation',os.path.join(path_distrib,'Validation'),['*.py']) - - - tarball= maketarball('dist',nom_distrib,nom_distrib) - try: - shutil.copy(tarball,dir_download) - except: - print "Repertoire de download inconnu : ",dir_download - - - -def make_dir(dir_cible): - if type(dir_cible) is not types.StringType: - raise "make_dir : dir_cible doit etre une string (%s)" % `dir_cible` - head,tail=os.path.split(dir_cible) - tails=[tail] - while head and tail and not os.path.isdir(head): - head,tail=os.path.split(head) - tails.insert(0, tail) - - for d in tails: - head = os.path.join(head, d) - if not os.path.isdir(head):os.mkdir(head) - - -def copyfiles(dir_origin,dir_cible,listfiles): - if not os.path.isdir(dir_cible):make_dir(dir_cible) - for glob_files in listfiles: - for file in glob.glob(os.path.join(dir_origin,glob_files)): - shutil.copy(file,dir_cible) - - -def maketarball(dir_trav,dir_cible,nom_tar): - prev=os.getcwd() - print prev - os.chdir(dir_trav) - os.system("tar -cf "+nom_tar+".tar "+dir_cible) - os.system("gzip -f9 "+nom_tar+".tar ") - os.chdir(prev) - return os.path.join(dir_trav,nom_tar+".tar.gz") - - -main() - diff --git a/OldCodes/Openturns_Study/style.py b/OldCodes/Openturns_Study/style.py deleted file mode 100644 index 7da9d534..00000000 --- a/OldCodes/Openturns_Study/style.py +++ /dev/null @@ -1 +0,0 @@ -# Necessaire pour compatibilite avec Aster diff --git a/OldCodes/Openturns_Study/test/MinMax_ExpPlane.comm b/OldCodes/Openturns_Study/test/MinMax_ExpPlane.comm deleted file mode 100644 index 6f671ab3..00000000 --- a/OldCodes/Openturns_Study/test/MinMax_ExpPlane.comm +++ /dev/null @@ -1,17 +0,0 @@ - -LOG(DebugMessages='no', - WrapperMessages='no', - UserMessages='no', - InfoMessages='yes', - WarningMessages='yes', - ErrorMessages='yes',); - -MODEL(Name='poutre',); - -CRITERIA(Type='Min/Max', - Method='Experiment Plane', - ExperimentPlane='Axial', - Levels=(1.0,2.0,5.0,), - UnitsPerDimension=(100.0,5.0,0.5,1e-07,), - Center=(3000000000.0,300.0,2.5,4e-06,), - Result='Min/Max',); diff --git a/OldCodes/Openturns_Study/test/MinMax_ExpPlane.py b/OldCodes/Openturns_Study/test/MinMax_ExpPlane.py deleted file mode 100644 index 098c853e..00000000 --- a/OldCodes/Openturns_Study/test/MinMax_ExpPlane.py +++ /dev/null @@ -1,68 +0,0 @@ -#! /usr/bin/env python - -# Chargement du module systeme -import sys -sys.path.append( '/local00/home/dutka/OpenTURNS/trunk/build/install/lib/python2.4/site-packages/openturns' ) - -# Chargement du module Open TURNS -from openturns import * - -# Definit le niveau d'affichage de la log -flags = Log.NONE -flags = flags + Log.WARN -flags = flags + Log.ERROR -flags = flags - Log.WRAPPER -flags = flags + Log.INFO -flags = flags - Log.USER -flags = flags - Log.DBG -Log.Show( flags ) - -# Etude 'Min/Max' -# Charge le modele physique -model = NumericalMathFunction( 'poutre' ) -n = model.getInputNumericalPointDimension() - -# Etude par plan d'experience -# Definit les niveaux de la structure de grille -levels = NumericalPoint( 3 ) -levels[0] = 1 -levels[1] = 2 -levels[2] = 5 - -# Cree le plan d'experience centre reduit -myCenteredReductedGrid = Axial(n, levels) -myExperimentPlane = myCenteredReductedGrid.generate() - -# Definit les facteurs d'echelle dans chaque direction -scaledVector = NumericalPoint( n ) -scaledVector[0] = 100 -scaledVector[1] = 5 -scaledVector[2] = 0.5 -scaledVector[3] = 1e-07 -myExperimentPlane.scale( scaledVector ) - -# Definit le vecteur de translation -translationVector = NumericalPoint( n ) -translationVector[0] = 3e+09 -translationVector[1] = 300 -translationVector[2] = 2.5 -translationVector[3] = 4e-06 -myExperimentPlane.translate( translationVector ) - - -inputSample = myExperimentPlane - -# Calcul -outputSample = model( inputSample ) - -# Resultats -minValue = outputSample.getMin() -maxValue = outputSample.getMax() - -print 'minValue = ', minValue -print 'maxValue = ', maxValue - - - -# Terminaison du fichier -sys.exit( 0 ) diff --git a/OldCodes/Openturns_Study/test/MinMax_RandomSampling.comm b/OldCodes/Openturns_Study/test/MinMax_RandomSampling.comm deleted file mode 100644 index e9ed474b..00000000 --- a/OldCodes/Openturns_Study/test/MinMax_RandomSampling.comm +++ /dev/null @@ -1,30 +0,0 @@ - -LOG(DebugMessages='no', - WrapperMessages='no', - UserMessages='no', - InfoMessages='yes', - WarningMessages='yes', - ErrorMessages='yes',); - -MODEL(Name='poutre',); - -L_E=DISTRIBUTION(Kind='Normal', - Mu=0.1, - Sigma=0.1,); - -L_F=DISTRIBUTION(Kind='Exponential', - Lambda=1.0, - Gamma=2.0,); - -L_L=DISTRIBUTION(Kind='MultiNomial', - N=1, - Values=1.0,); - -L_I=DISTRIBUTION(Kind='Uniform', - A=10.0, - B=20.0,); - -CRITERIA(Type='Min/Max', - Method='Random Sampling', - PointsNumber=1000, - Result='Min/Max',); diff --git a/OldCodes/Openturns_Wrapper/CMakeLists.txt b/OldCodes/Openturns_Wrapper/CMakeLists.txt deleted file mode 100644 index 570b3ca9..00000000 --- a/OldCodes/Openturns_Wrapper/CMakeLists.txt +++ /dev/null @@ -1,36 +0,0 @@ -# -*- coding: utf-8 -*- -# CONFIGURATION MANAGEMENT OF EDF VERSION -# ====================================================================== -# COPYRIGHT (C) 1991 - 2002 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# -# -# ====================================================================== - -# Question : Que faire des fichiers sdistOTqt.py et style.py - -install ( FILES qtEficas_openturns_wrapper.py - ${CMAKE_CURRENT_SOURCE_DIR}/prefs_OPENTURNS_WRAPPER.py - prefs.py - configuration_OPENTURNS_WRAPPER.py - #catalogues_openturns.ini - OpenTURNS_Cata_Wrapper_V4.py - DESTINATION ${CMAKE_INSTALL_PREFIX}/Openturns_Wrapper - ) - - -### Local Variables: -### mode: cmake -### End: diff --git a/OldCodes/Openturns_Wrapper/OpenTURNS_Cata_Wrapper_V1.py b/OldCodes/Openturns_Wrapper/OpenTURNS_Cata_Wrapper_V1.py deleted file mode 100644 index 7bad7c17..00000000 --- a/OldCodes/Openturns_Wrapper/OpenTURNS_Cata_Wrapper_V1.py +++ /dev/null @@ -1,216 +0,0 @@ -# -*- coding: utf-8 -*- - -# -------------------------------------------------- -# debut entete -# -------------------------------------------------- - -import Accas -from Accas import * - - -#CONTEXT.debug = 1 -JdC = JDC_CATA ( code = 'OPENTURNS_WRAPPER', - execmodul = None, - regles = ( AU_MOINS_UN ( 'WRAPPER' ), ), - ) # Fin JDC_CATA - -# -------------------------------------------------- -# fin entete -# -------------------------------------------------- - - -#================================ -# 2. Definition des variables -#================================ - -VARIABLEPOOL = PROC ( nom = "VARIABLEPOOL", - op = None, - docu = "", - fr = "L'ensemble des variables probabilistes", - ang = "The pool of probabilistic variables", - - - Variables = FACT ( statut = "o", - min = 1, - max = "**", - - - - Name = SIMP ( statut = "o", - typ = "TXM", - max = 1, - fr = "Nom de la variable, identique au nom dans le solver.", - ang = "Name of the variable, identical to the name in solver." - ), - - Type = SIMP ( statut = "o", - typ = "TXM", - max = 1, - into = ( "in", "out", ), - defaut = "in", - fr = "variable d'entree ou de sortie du solver", - ang = "Input or Output variable", - ), - - Unit = SIMP ( statut = "f", - typ = "TXM", - max = 1, - fr = "Unite", - ang = "Unit", - ), - - Comment = SIMP ( statut = "f", - typ = "TXM", - max = 1, - fr = "Commentaire", - ang = "Comment", - ), - - Regexp = SIMP ( statut = "f", - typ = "TXM", - max = 1, - fr = "Expression reguliere", - ang = "Regular expression", - ), - - Format = SIMP ( statut = "f", - typ = "TXM", - max = 1, - fr = "Format d'ecriture", - ang = "Format", - ), - - - ), # Fin FACT Variables - -) # Fin PROC VARIABLEPOOL - - -#================================ -# Definition des parametres du wrapper -#================================ - -# Nota : les variables de type PROC doivent etre en majuscules ! -WRAPPER = PROC ( nom = "WRAPPER", - op = None, - docu = "", - fr = "Mise en donnee pour le fichier de configuration de OPENTURNS.", - ang = "Writes the configuration file for OPENTURNS.", - - - WrapperPath = SIMP ( statut = "o", - typ = "TXM", - max = 1, - fr = "Chemin d acces au wrapper", - ang = "Wrapper library path", - ), - - FunctionName = SIMP ( statut = "o", - typ = "TXM", - max = 1, - fr = "Nom de la fonction dans le wrapper", - ang = "Function's name in wrapper", - ), - - GradientName = SIMP ( statut = "f", - typ = "TXM", - max = 1, - fr = "Nom du gradient dans le wrapper", - ang = "Gradient's name in wrapper", - ), - - HessianName = SIMP ( statut = "f", - typ = "TXM", - max = 1, - fr = "Nom du hessian dans le wrapper", - ang = "Hessian's name in wrapper", - ), - - WrapCouplingMode = SIMP ( statut = "o", - typ = "TXM", - max = 1, - into = ( "static-link", "dynamic-link", "fork", ), - fr = "Mode de couplage du solver", - ang = "Solver coupling mode", - ), - - Fork = BLOC ( condition = " WrapCouplingMode in ( 'fork', ) ", - - Command = SIMP ( statut = "o", - max = 1, - typ = "TXM", - fr = "Chemin du solver", - ang = "solver path", - ), - ), # Fin BLOC Fork - - State = SIMP ( statut = "f", - typ = "TXM", - max = 1, - into = ( "shared", "specific" ), - fr = "Partage de l'etat interne entre les fonctions", - ang = "Internal state sharing", - ), - - InDataTransfer = SIMP ( statut = "o", - typ = "TXM", - max = 1, - into = ( "files", "arguments", ), - fr = "Mode de transfert des donnees d'entree", - ang = "Input transfering mode", - ), - - OutDataTransfer = SIMP ( statut = "o", - typ = "TXM", - max = 1, - into = ( "files", "arguments", ), - fr = "Mode de transfert des donnees de sortie", - ang = "Output transfering mode", - ), - - - - - Files = FACT ( statut = "f", - min = 1, - max = "**", - - Id = SIMP ( statut = "o", - typ = "TXM", - max = 1, - fr = "Identificateur du fichier", - ang = "File id", - ), - - Type = SIMP ( statut = "o", - typ = "TXM", - max = 1, - into = ( "in", "out", ), - fr = "Fichier d entree ou de sortie du solveur ?", - ang = "Input or Output file ?", - ), - - Name = SIMP ( statut = "f", - typ = "TXM", - max = 1, - fr = "Nom du fichier", - ang = "File name", - ), - - Path = SIMP ( statut = "o", - typ = "TXM", - max = 1, - fr = "Chemin du fichier", - ang = "Path file ", - ), - - Subst = SIMP ( statut = "f", - typ = "TXM", - max = "**", - fr = "Liste de variables", - ang = "List", - ), - - ), # Fin FACT Files - -) # Fin PROC WRAPPER diff --git a/OldCodes/Openturns_Wrapper/OpenTURNS_Cata_Wrapper_V2.py b/OldCodes/Openturns_Wrapper/OpenTURNS_Cata_Wrapper_V2.py deleted file mode 100644 index a3895d3f..00000000 --- a/OldCodes/Openturns_Wrapper/OpenTURNS_Cata_Wrapper_V2.py +++ /dev/null @@ -1,206 +0,0 @@ -# -*- coding: utf-8 -*- - -# -------------------------------------------------- -# debut entete -# -------------------------------------------------- - -import Accas -from Accas import * - -class variable(ASSD ) : pass - - -#CONTEXT.debug = 1 -JdC = JDC_CATA ( code = 'OPENTURNS_WRAPPER', - execmodul = None, - regles = ( AU_MOINS_UN ( 'WRAPPER' ), ), - ) # Fin JDC_CATA - -# -------------------------------------------------- -# fin entete -# -------------------------------------------------- - - -#================================ -# 2. Definition des variables -#================================ - - - -VARIABLE = OPER ( nom = "VARIABLE", - sd_prod = variable, - op = None, - fr = "Definitions des lois marginales utilisees par les variables d'entree", - - - Type = SIMP ( statut = "o", - typ = "TXM", - max = 1, - into = ( "in", "out", ), - defaut = "in", - fr = "variable d'entree ou de sortie du solver", - ang = "Input or Output variable", - ), - - Unit = SIMP ( statut = "f", - typ = "TXM", - max = 1, - fr = "Unite", - ang = "Unit", - ), - - Comment = SIMP ( statut = "f", - typ = "TXM", - max = 1, - fr = "Commentaire", - ang = "Comment", - ), - - Regexp = SIMP ( statut = "f", - typ = "TXM", - max = 1, - fr = "Expression reguliere", - ang = "Regular expression", - ), - - Format = SIMP ( statut = "f", - typ = "TXM", - max = 1, - fr = "Format d'ecriture", - ang = "Format", - ), - - - ) # Fin FACT Variables -# - - -#================================ -# Definition des parametres du wrapper -#================================ - -# Nota : les variables de type PROC doivent etre en majuscules ! -WRAPPER = PROC ( nom = "WRAPPER", - op = None, - docu = "", - fr = "Mise en donnee pour le fichier de configuration de OPENTURNS.", - ang = "Writes the configuration file for OPENTURNS.", - - - WrapperPath = SIMP ( statut = "o", - typ = "TXM", - max = 1, - fr = "Chemin d acces au wrapper", - ang = "Wrapper library path", - ), - - FunctionName = SIMP ( statut = "o", - typ = "TXM", - max = 1, - fr = "Nom de la fonction dans le wrapper", - ang = "Function's name in wrapper", - ), - - GradientName = SIMP ( statut = "f", - typ = "TXM", - max = 1, - fr = "Nom du gradient dans le wrapper", - ang = "Gradient's name in wrapper", - ), - - HessianName = SIMP ( statut = "f", - typ = "TXM", - max = 1, - fr = "Nom du hessian dans le wrapper", - ang = "Hessian's name in wrapper", - ), - - WrapCouplingMode = SIMP ( statut = "o", - typ = "TXM", - max = 1, - into = ( "static-link", "dynamic-link", "fork", ), - defaut = "fork", - fr = "Mode de couplage du solver", - ang = "Solver coupling mode", - ), - - Fork = BLOC ( condition = " WrapCouplingMode in ( 'fork', ) ", - - Command = SIMP ( statut = "o", - max = 1, - typ = "TXM", - fr = "Chemin du solver", - ang = "solver path", - ), - ), # Fin BLOC Fork - - State = SIMP ( statut = "f", - typ = "TXM", - max = 1, - into = ( "shared", "specific" ), - fr = "Partage de l'etat interne entre les fonctions", - ang = "Internal state sharing", - ), - - InDataTransfer = SIMP ( statut = "o", - typ = "TXM", - max = 1, - into = ( "files", "arguments", ), - fr = "Mode de transfert des donnees d'entree", - ang = "Input transfering mode", - ), - - OutDataTransfer = SIMP ( statut = "o", - typ = "TXM", - max = 1, - into = ( "files", "arguments", ), - fr = "Mode de transfert des donnees de sortie", - ang = "Output transfering mode", - ), - - - - - Files = FACT ( statut = "f", - min = 1, - max = "**", - - Id = SIMP ( statut = "o", - typ = "TXM", - max = 1, - fr = "Identificateur du fichier", - ang = "File id", - ), - - Type = SIMP ( statut = "o", - typ = "TXM", - max = 1, - into = ( "in", "out", ), - fr = "Fichier d entree ou de sortie du solveur ?", - ang = "Input or Output file ?", - ), - - Name = SIMP ( statut = "f", - typ = "TXM", - max = 1, - fr = "Nom du fichier", - ang = "File name", - ), - - Path = SIMP ( statut = "o", - typ = "TXM", - max = 1, - fr = "Chemin du fichier", - ang = "Path file ", - ), - - Subst = SIMP ( statut = "f", - typ = "TXM", - max = "**", - fr = "Liste de variables", - ang = "List", - ), - - ), # Fin FACT Files - -) # Fin PROC WRAPPER diff --git a/OldCodes/Openturns_Wrapper/OpenTURNS_Cata_Wrapper_V3.py b/OldCodes/Openturns_Wrapper/OpenTURNS_Cata_Wrapper_V3.py deleted file mode 100644 index f99f40b3..00000000 --- a/OldCodes/Openturns_Wrapper/OpenTURNS_Cata_Wrapper_V3.py +++ /dev/null @@ -1,301 +0,0 @@ -# -*- coding: utf-8 -*- - -# -------------------------------------------------- -# debut entete -# -------------------------------------------------- - -import Accas -from Accas import * - -class variable(ASSD ) : pass - - -#CONTEXT.debug = 1 -JdC = JDC_CATA ( code = 'OPENTURNS_WRAPPER', - execmodul = None, - regles = ( AU_MOINS_UN ( 'WRAPPER' ), ), - ) # Fin JDC_CATA - -# -------------------------------------------------- -# fin entete -# -------------------------------------------------- - - -#================================ -# 2. Definition des variables -#================================ - - - -VARIABLE = OPER ( nom = "VARIABLE", - sd_prod = variable, - op = None, - fr = "Definitions des lois marginales utilisees par les variables d'entree", - - - Type = SIMP ( statut = "o", - typ = "TXM", - max = 1, - into = ( "in", "out", ), - defaut = "in", - fr = "variable d'entree ou de sortie du solver", - ang = "Input or Output variable", - ), - - Unit = SIMP ( statut = "f", - typ = "TXM", - max = 1, - fr = "Unite", - ang = "Unit", - ), - - Comment = SIMP ( statut = "f", - typ = "TXM", - max = 1, - fr = "Commentaire", - ang = "Comment", - ), - - Regexp = SIMP ( statut = "f", - typ = "TXM", - max = 1, - fr = "Expression reguliere", - ang = "Regular expression", - ), - - Format = SIMP ( statut = "f", - typ = "TXM", - max = 1, - fr = "Format d'ecriture", - ang = "Format", - ), - - - ) # Fin FACT Variables -# - - -#================================ -# Definition des parametres du wrapper -#================================ - -# Nota : les variables de type PROC doivent etre en majuscules ! -WRAPPER = PROC ( nom = "WRAPPER", - op = None, - docu = "", - fr = "Mise en donnee pour le fichier de configuration de OPENTURNS.", - ang = "Writes the configuration file for OPENTURNS.", - - Framework = SIMP ( statut = "o", - typ = "TXM", - into = ( "Salome", "Stand-alone", ), - max = 1, - fr = "Dans quel environnement le wrapper doit-il etre utilise ?", - ang = "Which framework is this wrapper designed for ?", - ), - - StandAlone = BLOC ( condition = " Framework in ( 'Stand-alone', ) ", - - - WrapperPath = SIMP ( statut = "o", - typ = "TXM", - max = 1, - fr = "Chemin d acces au wrapper", - ang = "Wrapper library path", - ), - - FunctionName = SIMP ( statut = "o", - typ = "TXM", - max = 1, - fr = "Nom de la fonction dans le wrapper", - ang = "Function's name in wrapper", - ), - - GradientName = SIMP ( statut = "f", - typ = "TXM", - max = 1, - fr = "Nom du gradient dans le wrapper", - ang = "Gradient's name in wrapper", - ), - - HessianName = SIMP ( statut = "f", - typ = "TXM", - max = 1, - fr = "Nom du hessian dans le wrapper", - ang = "Hessian's name in wrapper", - ), - - WrapCouplingMode = SIMP ( statut = "o", - typ = "TXM", - max = 1, - into = ( "static-link", "dynamic-link", "fork", ), - defaut = "fork", - fr = "Mode de couplage du solver", - ang = "Solver coupling mode", - ), - - Fork = BLOC ( condition = " WrapCouplingMode in ( 'fork', ) ", - - Command = SIMP ( statut = "o", - max = 1, - typ = "TXM", - fr = "Chemin du solver", - ang = "solver path", - ), - ), # Fin BLOC Fork - - State = SIMP ( statut = "f", - typ = "TXM", - max = 1, - into = ( "shared", "specific" ), - fr = "Partage de l'etat interne entre les fonctions", - ang = "Internal state sharing", - ), - - InDataTransfer = SIMP ( statut = "o", - typ = "TXM", - max = 1, - into = ( "files", "arguments", "corba" ), - fr = "Mode de transfert des donnees d'entree", - ang = "Input transfering mode", - ), - - OutDataTransfer = SIMP ( statut = "o", - typ = "TXM", - max = 1, - into = ( "files", "arguments", "corba" ), - fr = "Mode de transfert des donnees de sortie", - ang = "Output transfering mode", - ), - - ), # Fin BLOC StandAlone - - - Salome = BLOC ( condition = " Framework in ( 'Salome', ) ", - - SolverComponentName = SIMP ( statut = "f", - typ = "TXM", - max = 1, - defaut = "UNDEFINED", - fr = "Nom du composant solver", - ang = "Solver component name", - ), - - - WrapperPath = SIMP ( statut = "o", - typ = "TXM", - into = ( "GenericWrapper4Salome.so", ), - defaut = "GenericWrapper4Salome.so", - max = 1, - fr = "Chemin d acces au wrapper", - ang = "Wrapper library path", - ), - - FunctionName = SIMP ( statut = "o", - typ = "TXM", - into = ( "GENERICSOLVER", ), - defaut = "GENERICSOLVER", - max = 1, - fr = "Nom de la fonction dans le wrapper", - ang = "Function's name in wrapper", - ), - - GradientName = SIMP ( statut = "f", - typ = "TXM", - into = ( "GENERICSOLVER", ), - defaut = "GENERICSOLVER", - max = 1, - fr = "Nom du gradient dans le wrapper", - ang = "Gradient's name in wrapper", - ), - - HessianName = SIMP ( statut = "f", - typ = "TXM", - into = ( "GENERICSOLVER", ), - defaut = "GENERICSOLVER", - max = 1, - fr = "Nom du hessian dans le wrapper", - ang = "Hessian's name in wrapper", - ), - - WrapCouplingMode = SIMP ( statut = "o", - typ = "TXM", - max = 1, - into = ( "static-link", ), - defaut = "static-link", - fr = "Mode de couplage du solver", - ang = "Solver coupling mode", - ), - - State = SIMP ( statut = "f", - typ = "TXM", - max = 1, - into = ( "shared", "specific" ), - fr = "Partage de l'etat interne entre les fonctions", - ang = "Internal state sharing", - ), - - InDataTransfer = SIMP ( statut = "o", - typ = "TXM", - max = 1, - into = ( "files", "arguments", "corba", ), - defaut = "corba", - fr = "Mode de transfert des donnees d'entree", - ang = "Input transfering mode", - ), - - OutDataTransfer = SIMP ( statut = "o", - typ = "TXM", - max = 1, - into = ( "files", "arguments", "corba", ), - defaut = "corba", - fr = "Mode de transfert des donnees de sortie", - ang = "Output transfering mode", - ), - - ), # Fin BLOC Salome - - - Files = FACT ( statut = "f", - min = 1, - max = "**", - - Id = SIMP ( statut = "o", - typ = "TXM", - max = 1, - fr = "Identificateur du fichier", - ang = "File id", - ), - - Type = SIMP ( statut = "o", - typ = "TXM", - max = 1, - into = ( "in", "out", ), - fr = "Fichier d entree ou de sortie du solveur ?", - ang = "Input or Output file ?", - ), - - Name = SIMP ( statut = "f", - typ = "TXM", - max = 1, - fr = "Nom du fichier", - ang = "File name", - ), - - Path = SIMP ( statut = "o", - typ = "TXM", - max = 1, - fr = "Chemin du fichier", - ang = "Path file ", - ), - - Subst = SIMP ( statut = "f", - typ = "TXM", - max = "**", - fr = "Liste de variables", - ang = "List", - ), - - ), # Fin FACT Files - -) # Fin PROC WRAPPER diff --git a/OldCodes/Openturns_Wrapper/OpenTURNS_Cata_Wrapper_V4.py b/OldCodes/Openturns_Wrapper/OpenTURNS_Cata_Wrapper_V4.py deleted file mode 100644 index 651d5b82..00000000 --- a/OldCodes/Openturns_Wrapper/OpenTURNS_Cata_Wrapper_V4.py +++ /dev/null @@ -1,326 +0,0 @@ -# -*- coding: utf-8 -*- -# Copyright (C) 2007-2013 EDF R&D -# -# 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 -# - -# -------------------------------------------------- -# debut entete -# -------------------------------------------------- - -import Accas -from Accas import * - -class variable(ASSD ) : pass - - -#CONTEXT.debug = 1 -JdC = JDC_CATA ( code = 'OPENTURNS_WRAPPER', - execmodul = None, - regles = ( AU_MOINS_UN ( 'WRAPPER' ), ), - ) # Fin JDC_CATA - -# -------------------------------------------------- -# fin entete -# -------------------------------------------------- - - -#================================ -# 2. Definition des variables -#================================ - - - -VARIABLE = OPER ( nom = "VARIABLE", - sd_prod = variable, - op = None, - fr = "Definitions des lois marginales utilisees par les variables d'entree", - - - Type = SIMP ( statut = "o", - typ = "TXM", - max = 1, - into = ( "in", "out", ), - defaut = "in", - fr = "variable d'entree ou de sortie du solver", - ang = "Input or Output variable", - ), - - Unit = SIMP ( statut = "f", - typ = "TXM", - max = 1, - fr = "Unite", - ang = "Unit", - ), - - Comment = SIMP ( statut = "f", - typ = "TXM", - max = 1, - fr = "Commentaire", - ang = "Comment", - ), - - Regexp = SIMP ( statut = "f", - typ = "TXM", - max = 1, - fr = "Expression reguliere", - ang = "Regular expression", - ), - - Format = SIMP ( statut = "f", - typ = "TXM", - max = 1, - fr = "Format d'ecriture", - ang = "Format", - ), - - - ) # Fin FACT Variables -# - - -#================================ -# Definition des parametres du wrapper -#================================ - -# Nota : les variables de type PROC doivent etre en majuscules ! -WRAPPER = PROC ( nom = "WRAPPER", - op = None, - docu = "", - fr = "Mise en donnee pour le fichier de configuration de OPENTURNS.", - ang = "Writes the configuration file for OPENTURNS.", - - Framework = SIMP ( statut = "o", - typ = "TXM", - into = ( "Salome", "Stand-alone", ), - max = 1, - fr = "Dans quel environnement le wrapper doit-il etre utilise ?", - ang = "Which framework is this wrapper designed for ?", - ), - - StandAlone = BLOC ( condition = " Framework in ( 'Stand-alone', ) ", - - - WrapperPath = SIMP ( statut = "o", - typ = "TXM", - max = 1, - fr = "Chemin d acces au wrapper", - ang = "Wrapper library path", - ), - - FunctionName = SIMP ( statut = "o", - typ = "TXM", - max = 1, - fr = "Nom de la fonction dans le wrapper", - ang = "Function's name in wrapper", - ), - - GradientName = SIMP ( statut = "f", - typ = "TXM", - max = 1, - fr = "Nom du gradient dans le wrapper", - ang = "Gradient's name in wrapper", - ), - - HessianName = SIMP ( statut = "f", - typ = "TXM", - max = 1, - fr = "Nom du hessian dans le wrapper", - ang = "Hessian's name in wrapper", - ), - - WrapCouplingMode = SIMP ( statut = "o", - typ = "TXM", - max = 1, - into = ( "static-link", "dynamic-link", "fork", ), - defaut = "fork", - fr = "Mode de couplage du solver", - ang = "Solver coupling mode", - ), - - Fork = BLOC ( condition = " WrapCouplingMode in ( 'fork', ) ", - - Command = SIMP ( statut = "o", - max = 1, - typ = "TXM", - fr = "Chemin du solver", - ang = "Solver path", - ), - - UserPrefix = SIMP ( statut = "f", - max = 1, - typ = "TXM", - fr = "Prefixe pour retrouver les repertories temporaires de calcul", - ang = "Prefix to help finding compute directories", - ), - ), # Fin BLOC Fork - - State = SIMP ( statut = "f", - typ = "TXM", - max = 1, - into = ( "shared", "specific" ), - fr = "Partage de l'etat interne entre les fonctions", - ang = "Internal state sharing", - ), - - InDataTransfer = SIMP ( statut = "o", - typ = "TXM", - max = 1, - into = ( "files", "arguments", "corba" ), - fr = "Mode de transfert des donnees d'entree", - ang = "Input transfering mode", - ), - - OutDataTransfer = SIMP ( statut = "o", - typ = "TXM", - max = 1, - into = ( "files", "arguments", "corba" ), - fr = "Mode de transfert des donnees de sortie", - ang = "Output transfering mode", - ), - - ), # Fin BLOC StandAlone - - - Salome = BLOC ( condition = " Framework in ( 'Salome', ) ", - - SolverComponentName = SIMP ( statut = "f", - typ = "TXM", - max = 1, - defaut = "UNDEFINED", - fr = "Nom du composant solver", - ang = "Solver component name", - ), - - - WrapperPath = SIMP ( statut = "o", - typ = "TXM", - into = ( "GenericWrapper4Salome.so", ), - defaut = "GenericWrapper4Salome.so", - max = 1, - fr = "Chemin d acces au wrapper", - ang = "Wrapper library path", - ), - - FunctionName = SIMP ( statut = "o", - typ = "TXM", - into = ( "GENERICSOLVER", ), - defaut = "GENERICSOLVER", - max = 1, - fr = "Nom de la fonction dans le wrapper", - ang = "Function's name in wrapper", - ), - - GradientName = SIMP ( statut = "f", - typ = "TXM", - into = ( "GENERICSOLVER", ), - defaut = "GENERICSOLVER", - max = 1, - fr = "Nom du gradient dans le wrapper", - ang = "Gradient's name in wrapper", - ), - - HessianName = SIMP ( statut = "f", - typ = "TXM", - into = ( "GENERICSOLVER", ), - defaut = "GENERICSOLVER", - max = 1, - fr = "Nom du hessian dans le wrapper", - ang = "Hessian's name in wrapper", - ), - - WrapCouplingMode = SIMP ( statut = "o", - typ = "TXM", - max = 1, - into = ( "static-link", ), - defaut = "static-link", - fr = "Mode de couplage du solver", - ang = "Solver coupling mode", - ), - - State = SIMP ( statut = "f", - typ = "TXM", - max = 1, - into = ( "shared", "specific" ), - fr = "Partage de l'etat interne entre les fonctions", - ang = "Internal state sharing", - ), - - InDataTransfer = SIMP ( statut = "o", - typ = "TXM", - max = 1, - into = ( "files", "arguments", "corba", ), - defaut = "corba", - fr = "Mode de transfert des donnees d'entree", - ang = "Input transfering mode", - ), - - OutDataTransfer = SIMP ( statut = "o", - typ = "TXM", - max = 1, - into = ( "files", "arguments", "corba", ), - defaut = "corba", - fr = "Mode de transfert des donnees de sortie", - ang = "Output transfering mode", - ), - - ), # Fin BLOC Salome - - - Files = FACT ( statut = "f", - min = 1, - max = "**", - - Id = SIMP ( statut = "o", - typ = "TXM", - max = 1, - fr = "Identificateur du fichier", - ang = "File id", - ), - - Type = SIMP ( statut = "o", - typ = "TXM", - max = 1, - into = ( "in", "out", ), - fr = "Fichier d entree ou de sortie du solveur ?", - ang = "Input or Output file ?", - ), - - Name = SIMP ( statut = "f", - typ = "TXM", - max = 1, - fr = "Nom du fichier", - ang = "File name", - ), - - Path = SIMP ( statut = "o", - typ = "TXM", - max = 1, - fr = "Chemin du fichier", - ang = "Path file ", - ), - - Subst = SIMP ( statut = "f", - typ = "TXM", - max = "**", - fr = "Liste de variables", - ang = "List", - ), - - ), # Fin FACT Files - -) # Fin PROC WRAPPER diff --git a/OldCodes/Openturns_Wrapper/configuration_OPENTURNS_WRAPPER.py b/OldCodes/Openturns_Wrapper/configuration_OPENTURNS_WRAPPER.py deleted file mode 100644 index 316342aa..00000000 --- a/OldCodes/Openturns_Wrapper/configuration_OPENTURNS_WRAPPER.py +++ /dev/null @@ -1,59 +0,0 @@ -# -*- coding: utf-8 -*- -# Copyright (C) 2007-2013 EDF R&D -# -# 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 -# -""" - Ce module sert pour charger les paramètres de configuration d'EFICAS -""" -# Modules Python -import configuration -import os - - -class CONFIG(configuration.configBase): - - #----------------------------------- - def __init__(self,appli,repIni): - #----------------------------------- - - - self.labels_user=['exec_acrobat', 'catalogues','savedir','path_doc'] - self.labels_eficas=["OpenTURNS_path","path_doc","exec_acrobat"] - self.labels_eficas=self.labels_eficas+["rep_cata","lang","catalogues"] - configuration.configBase.__init__(self,appli,repIni) - - #--------------------------------------- - def lectureFichierIniStandard(self): - #--------------------------------------- - configuration.configBase.lectureFichierIniStandard(self) - if hasattr(self,'OpenTURNS_path') : self.oldOTPath=self.OpenTURNS_path - - #--------------------------------------- - def lectureFichierIniIntegrateur(self): - #--------------------------------------- - configuration.configBase.lectureFichierIniUtilisateur(self) - if hasattr(self,'OpenTURNS_path') : - if hasattr(self,'oldOTPath') and (self.OpenTURNS_path != self.oldOTPath): - import sys - sys.path.remove(self.oldOTPath) - sys.path[:0]=[self.OpenTURNS_path] - self.oldOTPath=self.OpenTURNS_path - -def make_config(appli,rep): - return CONFIG(appli,rep) - diff --git a/OldCodes/Openturns_Wrapper/prefs.py b/OldCodes/Openturns_Wrapper/prefs.py deleted file mode 100644 index 10b557d2..00000000 --- a/OldCodes/Openturns_Wrapper/prefs.py +++ /dev/null @@ -1,23 +0,0 @@ -# -*- coding: utf-8 -*- -# Copyright (C) 2007-2013 EDF R&D -# -# 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 -# -code = "OPENTURNS_WRAPPER" -import sys, os -if os.path.dirname(os.path.abspath(__file__)) not in sys.path : - sys.path.insert(0,os.path.dirname(os.path.abspath(__file__))) diff --git a/OldCodes/Openturns_Wrapper/prefs_OPENTURNS_WRAPPER.py b/OldCodes/Openturns_Wrapper/prefs_OPENTURNS_WRAPPER.py deleted file mode 100644 index b60be596..00000000 --- a/OldCodes/Openturns_Wrapper/prefs_OPENTURNS_WRAPPER.py +++ /dev/null @@ -1,55 +0,0 @@ -# -*- coding: utf-8 -*- -# Copyright (C) 2007-2015 EDF R&D -# -# 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, sys -# Les variables pouvant positionnees sont : -print "import des prefs de OPENTURNS" - -# repIni sert a localiser le fichier -# initialdir sert comme directory initial des QFileDialog -# positionnee a repin au debut mise a jour dans configuration -repIni=os.path.dirname(os.path.abspath(__file__)) -INSTALLDIR=os.path.join(repIni,'..') -sys.path[:0]=[INSTALLDIR] - - -# Codage des strings qui accepte les accents (en remplacement de 'ascii') -# lang indique la langue utilisée pour les chaines d'aide : fr ou ang -lang='fr' -encoding='iso-8859-1' - -# Acces a la documentation -path_doc = os.path.join(INSTALLDIR,'Doc') -exec_acrobat = "/usr/bin/xpdf" -savedir = os.environ['HOME'] - - -# OpenTURNS Python module -OpenTURNS_path="" -if len(OpenTURNS_path) > 0: sys.path[:0]=[OpenTURNS_path] - -# Choix des catalogues -from Editeur.catadesc import CatalogDescription - -catalogues = ( - CatalogDescription(identifier = "OPENTURNS_WRAPPER_V4", - cata_file_path = os.path.join(os.path.abspath(repIni), 'OpenTURNS_Cata_Wrapper_V4.py'), - file_format = "openturns_wrapper"), -) - diff --git a/OldCodes/Openturns_Wrapper/properties.py b/OldCodes/Openturns_Wrapper/properties.py deleted file mode 100644 index 95f71b1d..00000000 --- a/OldCodes/Openturns_Wrapper/properties.py +++ /dev/null @@ -1,25 +0,0 @@ -# -*- coding: utf-8 -*- -#@ MODIF properties Accas DATE 10/10/2002 AUTEUR gcbhhhh M.ADMINISTRATEUR -# maConfiguration MANAGEMENT OF EDF VERSION -# RESPONSABLE D6BHHHH J-P.LEFEBVRE -# ====================================================================== -# COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# IDENTIFICATION DU GESTIONNAIRE DE COMMANDE ACCAS A PARTIR -# DE LA VERSION DU CODE_ASTER ASSOCIE -#---------------------------------------------------------------------- -version = "7.1.0" -date = "23/04/2003" diff --git a/OldCodes/Openturns_Wrapper/qtEficas_openturns_wrapper.py b/OldCodes/Openturns_Wrapper/qtEficas_openturns_wrapper.py deleted file mode 100755 index 1e128dce..00000000 --- a/OldCodes/Openturns_Wrapper/qtEficas_openturns_wrapper.py +++ /dev/null @@ -1,36 +0,0 @@ -#!/usr/bin/env python -# -*- coding: utf-8 -*- -# maConfiguration MANAGEMENT OF EDF VERSION -# ====================================================================== -# COPYRIGHT (C) 1991 - 2002 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# -# -# ====================================================================== - -""" - Ce module sert à lancer EFICAS configuré pour Openturns -""" -# Modules Python - -# Modules Eficas -import prefs -name='prefs_'+prefs.code -__import__(name) - -import sys -from InterfaceQT4 import eficas_go - -eficas_go.lanceEficas(code=prefs.code) diff --git a/OldCodes/Openturns_Wrapper/sdistOTqt.py b/OldCodes/Openturns_Wrapper/sdistOTqt.py deleted file mode 100644 index 883d9e31..00000000 --- a/OldCodes/Openturns_Wrapper/sdistOTqt.py +++ /dev/null @@ -1,103 +0,0 @@ -# -*- coding: utf-8 -*- -""" - Ce module sert à construire les distributions d'EFICAS pour Openturns - en fonction du tag CVS courant - Les distributions sont : - - un tar.gz pour UNIX ne contenant pas mxTextTools - L'utilisation de ce module est la suivante : - 1- Se mettre dans un répertoire de travail - 2- Configurer son environnement pour utiliser le référentiel CVS EFICAS - 3- Exporter les sources d'EficasV1 par la commande : - cvs export -r TAG -d Eficas_export EficasV1 - ou TAG est le tag CVS de la version que l'on veut distribuer (par exemple V1_1p1) - 5- Aller dans le répertoire Eficas_export - 6- Executer le script sdist.py - python sdist.py - Ce qui a pour effet de creer un repertoire dist contenant la distribution - et de la copier dans le répertoire indiqué par dir_download s'il est accessible - -""" -import os,shutil,glob,sys -import types - -nom_distrib="QTEficasOpenturns_V1_0" -path_distrib=os.path.join("dist",nom_distrib) -path_TextTools="/home/eficas/pkg/mxTools/egenix2.0.2pourWindows/mx/TextTools" -dir_download= "/home/eficas/WWW/telechargement/eficas" - -def main(): - if os.path.isdir('dist'):shutil.rmtree('dist') - - copyfiles('.',path_distrib,['LICENSE.TERMS','INSTALL','NEWS']) - - copyfiles('../Editeur',os.path.join(path_distrib,'Editeur'),['*.py','faqs.txt']) - copyfiles('../InterfaceTK',os.path.join(path_distrib,'InterfaceTK'),['*.py','faqs.txt']) - copyfiles('../InterfaceQT',os.path.join(path_distrib,'InterfaceQT'),['*.py','faqs.txt']) - copyfiles('../Ui',os.path.join(path_distrib,'Ui'),['*.ui','makefile']) - copyfiles('../Openturns',os.path.join(path_distrib,'Openturns'),['*.py','*.ini']) - copyfiles('../Ihm',os.path.join(path_distrib,'Ihm'),['*.py']) - copyfiles('../Extensions',os.path.join(path_distrib,'Extensions'),['*.py']) - copyfiles('../Misc',os.path.join(path_distrib,'Misc'),['*.py']) - copyfiles('../Accas',os.path.join(path_distrib,'Accas'),['*.py']) - copyfiles('../Accas',os.path.join(path_distrib,'Noyau'),['*.py']) - copyfiles('../Accas',os.path.join(path_distrib,'Validation'),['*.py']) - # AIDE - copyfiles('../AIDE',os.path.join(path_distrib,'AIDE'),['*.py']) - copyfiles('../AIDE/fichiers',os.path.join(path_distrib,'AIDE','fichiers'),['*']) - copyfiles('.',os.path.join(path_distrib,'AIDE','fichiers'),['INSTALL','NEWS']) - copyfiles('../Editeur',os.path.join(path_distrib,'AIDE','fichiers'),['faqs.txt']) - # ______________________ - - copyfiles('../convert',os.path.join(path_distrib,'convert'),['*.py']) - copyfiles('../convert/parserv5',os.path.join(path_distrib,'convert','parserv5'),['*.py']) - copyfiles('../generator',os.path.join(path_distrib,'generator'),['*.py']) - copyfiles('../Editeur/icons',os.path.join(path_distrib,'Editeur','icons'),['*.gif']) - copyfiles('../Editeur/icons',os.path.join(path_distrib,'Editeur','icons'),['*.png']) - copyfiles('../Editeur/Patrons/',os.path.join(path_distrib,'Editeur','Patrons'),['*.com*']) - copyfiles('../Editeur/Patrons/OPENTURNS',os.path.join(path_distrib,'Editeur','Patrons','OPENTURNS'),['*.com*']) - - copyfiles('../Noyau',os.path.join(path_distrib,'Noyau'),['*.py']) - copyfiles('../Validation',os.path.join(path_distrib,'Validation'),['*.py']) - - - tarball= maketarball('dist',nom_distrib,nom_distrib) - try: - shutil.copy(tarball,dir_download) - except: - print "Repertoire de download inconnu : ",dir_download - - - -def make_dir(dir_cible): - if type(dir_cible) is not types.StringType: - raise "make_dir : dir_cible doit etre une string (%s)" % `dir_cible` - head,tail=os.path.split(dir_cible) - tails=[tail] - while head and tail and not os.path.isdir(head): - head,tail=os.path.split(head) - tails.insert(0, tail) - - for d in tails: - head = os.path.join(head, d) - if not os.path.isdir(head):os.mkdir(head) - - -def copyfiles(dir_origin,dir_cible,listfiles): - if not os.path.isdir(dir_cible):make_dir(dir_cible) - for glob_files in listfiles: - for file in glob.glob(os.path.join(dir_origin,glob_files)): - shutil.copy(file,dir_cible) - - -def maketarball(dir_trav,dir_cible,nom_tar): - prev=os.getcwd() - print prev - os.chdir(dir_trav) - os.system("tar -cf "+nom_tar+".tar "+dir_cible) - os.system("gzip -f9 "+nom_tar+".tar ") - os.chdir(prev) - return os.path.join(dir_trav,nom_tar+".tar.gz") - - -main() - diff --git a/OldCodes/Openturns_Wrapper/style.py b/OldCodes/Openturns_Wrapper/style.py deleted file mode 100644 index 7da9d534..00000000 --- a/OldCodes/Openturns_Wrapper/style.py +++ /dev/null @@ -1 +0,0 @@ -# Necessaire pour compatibilite avec Aster diff --git a/OldCodes/PSEN_N1/PSEN_Cata_N1.py b/OldCodes/PSEN_N1/PSEN_Cata_N1.py deleted file mode 100644 index 6d926367..00000000 --- a/OldCodes/PSEN_N1/PSEN_Cata_N1.py +++ /dev/null @@ -1,199 +0,0 @@ -# -*- coding: iso-8859-1 -*- -# Copyright (C) 2007-2013 EDF R&D -# -# 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 -# - -# -------------------------------------------------- -# debut entete -# -------------------------------------------------- - -#from Accas import ASSD, JDC_CATA, AU_MOINS_UN, PROC, SIMP, FACT, OPER, MACRO, BLOC, A_VALIDATOR -from Accas import * -import opsPSEN_N1 -# -#class loi ( ASSD ) : pass -#class variable ( ASSD ) : pass -class sd_charge ( ASSD ) : pass -class sd_generateur ( ASSD ) : pass -class sd_ligne ( ASSD ) : pass -class sd_transfo ( ASSD ) : pass -class sd_moteur ( ASSD ) : pass -# - -# import types -class Tuple: - def __init__(self,ntuple): - self.ntuple=ntuple - - def __convert__(self,valeur): - if type(valeur) == types.StringType: - return None - if len(valeur) != self.ntuple: - return None - return valeur - - def info(self): - return "Tuple de %s elements" % self.ntuple - - __repr__=info - __str__=info - -# class Matrice: -# def __init__(self,nbLigs=None,nbCols=None,methodeCalculTaille=None,formatSortie="ligne",valSup=None,valMin=None,structure=None): -# self.nbLigs=nbLigs -# self.nbCols=nbCols -# self.methodeCalculTaille=methodeCalculTaille -# self.formatSortie=formatSortie -# self.valSup=valSup -# self.valMin=valMin -# self.structure=structure -# -# def __convert__(self,valeur): -# # Attention ne verifie pas grand chose -# if type(valeur) != types.ListType : -# return None -# return valeur -# -# def info(self): -# return "Matrice %s x %s" % (self.nbLigs, self.nbCols) -# -# __repr__=info -# __str__=info - - -#CONTEXT.debug = 1 -JdC = JDC_CATA ( code = 'PSEN', - execmodul = None, - regles = ( AU_MOINS_UN ( 'CASE_SELECTION' ), - # AU_MOINS_UN ( 'DIRECTORY' ), - # AU_MOINS_UN ( 'DISTRIBUTION' ), - # AU_MOINS_UN ( 'SIMULATION' ), - # AU_PLUS_UN ( 'PSSE_PARAMETERS' ), - # AU_PLUS_UN ( 'DIRECTORY' ), - # AU_PLUS_UN ( 'SIMULATION' ), - # AU_PLUS_UN ( 'CORRELATION' ), - # AU_PLUS_UN ( 'N_1_GENERATORS' ), - # AU_PLUS_UN ( 'N_1_LINES' ), - # AU_PLUS_UN ( 'N_1_LOADS' ), - # AU_PLUS_UN ( 'N_1_TRANSFORMERS' ), - - ), - ) # Fin JDC_CATA - - -# -------------------------------------------------- -# fin entete -# -------------------------------------------------- -## TODO : RUN -CASE_SELECTION = MACRO ( nom = "CASE_SELECTION", - sd_prod = opsPSEN_N1.INCLUDE, - op_init = opsPSEN_N1.INCLUDE_context, - regles = (UN_PARMI('FromFile', 'AllCases', 'WorstCases'),), - fichier_ini = 1, - op = None, - fr = "Sélectionnez les cas à analyser", - ang = 'Select the cases to analyze', - PSSE_path = SIMP(statut="o",typ='Repertoire',defaut='C:\Program Files (x86)\PTI\PSSE33\PSSBIN'), - output_folder = SIMP(statut="o", typ="Repertoire"), - - FromFile = FACT( - statut = 'f', - input_path = SIMP(statut="f",typ='Repertoire'), - branch_cases = SIMP(statut='o', typ='TXM'), - transfo_cases = SIMP(statut='o', typ='TXM'), - high_cases = SIMP(statut='o', typ='TXM'), - low_cases = SIMP(statut='o', typ='TXM'), - ), - - AllCases = FACT( - statut='f', - all_cases = SIMP(statut='o', typ=bool, defaut = True), - ), - - WorstCases = FACT( - regles = (UN_PARMI('AvgBranchLoad', 'AvgBranchLoadPercent'), UN_PARMI('AvgTransfoLoad', 'AvgTransfoLoadPercent'), UN_PARMI('AvgHighVoltage', 'AvgHighVoltagePercent'), UN_PARMI('AvgLowVoltage', 'AvgLowVoltagePercent'),), - statut = 'f', - AvgBranchLoad = SIMP(statut = 'f', typ = 'I', defaut = 0, val_min = 0), - AvgBranchLoadPercent = SIMP(statut = 'f', typ = 'I', defaut = 0, val_min = 0, val_max = 100), - AvgTransfoLoad = SIMP(statut = 'f', typ = 'I', defaut = 0, val_min = 0), - AvgTransfoLoadPercent = SIMP(statut = 'f', typ = 'I', defaut = 0, val_min = 0, val_max = 100), - AvgHighVoltage = SIMP(statut = 'f', typ = 'I', defaut = 0, val_min = 0), - AvgHighVoltagePercent = SIMP(statut = 'f', typ = 'I', defaut = 0, val_min = 0, val_max = 100), - AvgLowVoltage = SIMP(statut = 'f', typ = 'I', defaut = 0, val_min = 0), - AvgLowVoltagePercent = SIMP(statut = 'f', typ = 'I', defaut = 0, val_min = 0, val_max = 100), - ), - - MaxDepth = SIMP(statut = 'o', typ = 'I', defaut = 5), - Consigne = SIMP(statut = "o",homo = 'information',typ = "TXM", defaut = "complete CASE SELECTION"), - - BusesList = SIMP(statut = 'f', typ = 'R', min = 0, max = '**', defaut = (), homo = 'SansOrdreNiDoublon'), - - optionsLF = FACT ( - statut = 'o', - AdjTaps = SIMP(statut = 'o', typ = 'TXM', into = ['0 - Lock', '1 - Stepping', '2 - Direct'], defaut = '1 - Stepping'), - AdjDCtaps = SIMP(statut = 'o', typ = 'TXM', into = ['0 - Disable', '1 - Enable'], defaut = '1 - Enable'), - SolutionMethod = SIMP(statut = 'o', typ = 'TXM', into = ['0 - FDNS', '1 - FNSL', '2 - Optimized FDNS'], defaut = '1 - FNSL'), - AdjSwitchedShunts = SIMP(statut = 'o', typ = 'TXM', into = ['0 - Disable', '1 - Enable', '2 - Enable continuous mode'], defaut = '1 - Enable'), - DispatchMode = SIMP(statut = 'o', typ = 'TXM', into = ['0 - Disable', '1 - Reserve', '2 - Pmax', '3 - Inertia', '4 - Droop'], defaut = '1 - Reserve'), - FlatStart = SIMP(statut = 'o', typ = bool, defaut = False), - VarLimits = SIMP(statut = 'o', typ = 'I', defaut = 99), - ), - ) - -CONTINGENCY_OPTIONS = PROC ( nom = 'CONTINGENCY_OPTIONS', - op = None, - fr = "Definitions des lois marginales utilisees par les variables d'entree", - ang = 'Nyu', - Vmin = SIMP(statut = 'o', typ = 'R', defaut = 0.9, val_min = 0), - Vmax = SIMP(statut = 'o', typ = 'R', defaut = 1.1, val_min = 0), - ContRate = SIMP(statut = 'o', typ = 'TXM', defaut = 'a', into=['a', 'b']), - FlowLimitLines = SIMP(statut = 'o', typ = 'I', defaut = 110, val_min = 0), - FloLimitTransfos = SIMP(statut = 'o', typ = 'I', defaut = 100, val_min = 0), - Tolance = SIMP(statut = 'o', typ = 'I', defaut = 10, val_min = 0), - RadialLinesOnly = SIMP(statut = 'o', typ = bool, defaut = False), - TripTransfos = SIMP(statut = 'o', typ = bool, defaut = True), - TripGenerators = SIMP(statut = 'o', typ = bool, defaut = True), - TripN_2 = SIMP(statut = 'o', typ = bool, defaut = False), - IsolatedGen = SIMP(statut = 'o', typ = bool, defaut = True), - ) - -OUTPUT_OPTIONS = PROC ( nom = 'OUTPUT_OPTIONS', - op = None, - fr = "Definitions des lois marginales utilisees par les variables d'entree", - ang = 'Nyu', - TrNoGSUorGNDOutput = SIMP(statut = 'o', typ = bool, defaut = True), - TestBusName = SIMP(statut = 'o', typ = bool, defaut = True), - ReportSpaces = SIMP(statut = 'o', typ = bool, defaut = True), - RepeatComponentAllLines = SIMP(statut = 'o', typ = bool, defaut = True), - MultipleContingencyReport = SIMP(statut = 'o', typ = bool, defaut = True), - WriteIndivExcels = SIMP(statut = 'o', typ = bool, defaut = True), - WriteFlowDifs = SIMP(statut = 'o', typ = bool, defaut = True), - ) - -DATA_PROCESSING = MACRO ( nom = 'DATA_PROCESSING', - sd_prod = opsPSEN_N1.PROCESS, - op_init = opsPSEN_N1.PROCESS_context, - fichier_ini = 1, - op = None, - fr = "Sélectionnez les cas à analyser", - ang = 'Select the cases to analyze', - XLS_file = SIMP(statut="o", typ = ('Fichier', 'XLS file (*.xls);;All Files (*)',),), - Onglets = SIMP(statut = 'f', typ = 'TXM', min = 0, max = '**', homo = 'SansOrdreNiDoublon',into=(),), - BusList = SIMP(statut = 'f', typ = 'TXM', min = 0, max = '**', homo = 'SansOrdreNiDoublon',into=(),), - ContList = SIMP(statut = 'f', typ = 'TXM', min = 0, max = '**', homo = 'SansOrdreNiDoublon',into=(),), - ) diff --git a/OldCodes/PSEN_N1/configuration_PSEN_N1.py b/OldCodes/PSEN_N1/configuration_PSEN_N1.py deleted file mode 100644 index 9a068500..00000000 --- a/OldCodes/PSEN_N1/configuration_PSEN_N1.py +++ /dev/null @@ -1,43 +0,0 @@ -# -*- coding: utf-8 -*- -# maConfiguration MANAGEMENT OF EDF VERSION -# ====================================================================== -# COPYRIGHT (C) 1991 - 2002 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# -# -# ====================================================================== -""" - Ce module sert pour charger les paramètres de configuration d'EFICAS -""" -# Modules Python -from InterfaceQT4 import configuration -import os - - -class CONFIG(configuration.configBase): - - #----------------------------------- - def __init__(self,appli,repIni): - #----------------------------------- - - self.labels_user=['catalogues','lang'] - self.labels_eficas=['lang','rep_cata','catalogues'] - - configuration.configBase.__init__(self,appli,'.Eficas_monCode') - - -def make_config(appli,rep): - return CONFIG(appli,rep) - diff --git a/OldCodes/PSEN_N1/mesScripts_PSEN_N1.py b/OldCodes/PSEN_N1/mesScripts_PSEN_N1.py deleted file mode 100644 index ca1d1e83..00000000 --- a/OldCodes/PSEN_N1/mesScripts_PSEN_N1.py +++ /dev/null @@ -1,56 +0,0 @@ -def processXLS(listeparam) : - print "dans processXLS" - item=listeparam[0] - fileNameObj=item.object.getChild('XLS_file') - if fileNameObj : fileName=fileNameObj.getValeur() - else : fileName = "" - if fileName == "" : return 0, 'Nom de fichier invalide' - - ongletListObj=item.object.getChild('Onglets') - if ongletListObj : ongletList= ongletListObj.getValeur() - else : ongletList = [] - if ongletList == [] : return 0, 'ongletList invalide' - - busListObj=item.object.getChild('BusList') - if busListObj : busList= busListObj.getValeur() - else : busList = [] - if busList == [] : return 0, 'BusList invalide' - - contListObj=item.object.getChild('ContList') - if contListObj : contList=contListObj.getValeur() - else : contList = [] - if contList == [] : return 0, 'ContList invalide' - - dicoBus={} - dicoCont={} - for onglet in ongletList: - recherche=str(" ("+ str(onglet) +" )") - listeBusPourOnglet=[] - listeContPourOnglet=[] - for bus in busList : - nomBusSplit=str(bus).split(recherche) - if len(nomBusSplit) == 2 : listeBusPourOnglet.append(nomBusSplit[0]) - for cont in contList : - nomContSplit=str(cont).split(recherche) - if len(nomContSplit) == 2 : listeContPourOnglet.append(nomContSplit[0]) - if listeBusPourOnglet != [] : dicoBus[onglet]=listeBusPourOnglet - if listeContPourOnglet != [] : dicoCont[onglet]=listeContPourOnglet - - from Processor import processXLS - processXLS(fileName,dicoBus,dicoCont) - #if nouvelleVal != [] : prob.set_valeur(nouvelleVal) - -# le dictionnaire des commandes a la structure suivante : -# la clef est la commande qui va proposer l action -# puis un tuple qui contient -# - la fonction a appeler -# - le label dans le menu du clic droit -# - un tuple contenant les parametres attendus par la fonction -# - appelable depuis Salome uniquement -) -# - appelable depuis un item valide uniquement -# - toolTip -dict_commandes={ - 'DATA_PROCESSING': ( - (processXLS,"process",('item',),False,True,"process values "), - ), - } diff --git a/OldCodes/PSEN_N1/opsPSEN_N1.py b/OldCodes/PSEN_N1/opsPSEN_N1.py deleted file mode 100644 index 25187a2b..00000000 --- a/OldCodes/PSEN_N1/opsPSEN_N1.py +++ /dev/null @@ -1,112 +0,0 @@ -# -*- coding: iso-8859-1 -*- -# Copyright (C) 2007-2013 EDF R&D -# -# 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 -# - -#from ExtractGeneratorLoadLineandTransfoDico import * -#from ExtractGeneratorLoadLineandTransfoDico import ExtractGeneratorLoadLineandTransfoDico2 - -def INCLUDE(self,PSSE_path,**args): - """ - Fonction sd_prod pour la macro INCLUDE - """ - #print('in INCLUDE') - #print args - CaseFolder = args['output_folder'] - if CaseFolder==None: return - reevalue=0 - if hasattr(self,'fichier_ini'): - reevalue=1 - if self.fichier_ini == CaseFolder : return - if hasattr(self,'old_context_fichier_init' ): - for concept in self.old_context_fichier_init.values(): - self.jdc.deleteConcept(concept) - self.jdc_aux=None - self.contexte_fichier_init={} - self.reevalueSdJdc() - self.jdc.resetContext() - - self.fichier_ini=CaseFolder - self.contexte_fichier_init = {} - self.fichier_unite = 999 - self.fichier_err = None - self.fichier_text="" - - unite = 999 - - BusList = [138, 77, 69] - self.jdc.appli.changeIntoMC(self,'BusesList',BusList) - - - -def INCLUDE_context(self,d): - """ - Fonction op_init pour macro INCLUDE - """ - for k,v in self.g_context.items(): - d[k]=v - - -def PROCESS_context(self,d): - print "dans le init du Process" - -def PROCESS(self,XLS_file,**args): - if XLS_file == "" or XLS_file == None: return - if not (hasattr(self,'dico')) : - from Processor import getXLS - self.dico=getXLS(XLS_file) - self.jdc.appli.changeIntoMC(self,'Onglets',self.dico.keys()) - self.OngletsValeurs=[] - else : - # On teste si on a modifie la liste des onglets - OngletsValeurs= self.getChild('Onglets').getVal() - - - if not (hasattr(self,'OngletsValeurs')) : self.OngletsValeurs=OngletsValeurs - elif self.OngletsValeurs == OngletsValeurs : print 'return' ;return - else : self.OngletsValeurs=OngletsValeurs - - if OngletsValeurs==() or OngletsValeurs == []: - self.jdc.appli.deleteMC(self,'BusList') - self.jdc.appli.deleteMC(self,'ContList') - self.OngletsValeurs=[] - return - - OldBusValeurs= self.getChild('BusList').getVal() - OldContValeurs= self.getChild('ContList').getVal() - if OldBusValeurs == None : OldBusValeurs=[] - if OldContValeurs == None : OldContValeurs=[] - - listeBus=[] - listeCont=[] - listeBusCoches=[] - listeContCoches=[] - for o in OngletsValeurs : - for b in self.dico[o][0]: - texte=b+" ("+ str(o) +" )" - listeBus.append(str(texte)) - if texte in OldBusValeurs : listeBusCoches.append(str(texte)) - for c in self.dico[o][1]: - texte=c+" ("+ str(o) +" )" - listeCont.append(str(texte)) - if texte in OldContValeurs : listeContCoches.append(str(texte)) - - self.jdc.appli.changeIntoMCandSet(self,'BusList',listeBus,listeBusCoches) - self.jdc.appli.changeIntoMCandSet(self,'ContList',listeCont,listeContCoches) - - diff --git a/OldCodes/PSEN_N1/prefs.py b/OldCodes/PSEN_N1/prefs.py deleted file mode 100644 index 647d0ae9..00000000 --- a/OldCodes/PSEN_N1/prefs.py +++ /dev/null @@ -1,22 +0,0 @@ -# Copyright (C) 2007-2012 EDF R&D -# -# 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 -# -code="PSEN_N1" -import sys, os -if os.path.dirname(os.path.abspath(__file__)) not in sys.path : - sys.path.insert(0,os.path.dirname(os.path.abspath(__file__))) diff --git a/OldCodes/PSEN_N1/prefs_PSEN_N1.py b/OldCodes/PSEN_N1/prefs_PSEN_N1.py deleted file mode 100644 index 45a25ec1..00000000 --- a/OldCodes/PSEN_N1/prefs_PSEN_N1.py +++ /dev/null @@ -1,41 +0,0 @@ -# -*- coding: utf-8 -*- -# maConfiguration MANAGEMENT OF EDF VERSION -# ====================================================================== -# COPYRIGHT (C) 1991 - 2002 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# -# -# ====================================================================== - -import os,sys -# repIni sert a localiser le fichier editeur.ini -# Obligatoire -repIni=os.path.dirname(os.path.abspath(__file__)) -INSTALLDIR=os.path.join(repIni,'..') -sys.path[:0]=[INSTALLDIR] - - -# lang indique la langue utilisee pour les chaines d'aide : fr ou ang -lang='en' #'fr' - -# Codage des strings qui accepte les accents (en remplacement de 'ascii') -encoding='iso-8859-1' -docPath=repIni - - -# -catalogues=( - ('PSEN_N1','default',os.path.join(repIni,'PSEN_Cata_N1.py'),'python','python'), -) diff --git a/OldCodes/PSEN_N1/properties.py b/OldCodes/PSEN_N1/properties.py deleted file mode 100644 index 1d328a46..00000000 --- a/OldCodes/PSEN_N1/properties.py +++ /dev/null @@ -1,24 +0,0 @@ -#@ MODIF properties Accas DATE 11/06/2008 AUTEUR aster M.ADMINISTRATEUR -# RESPONSABLE D6BHHHH J-P.LEFEBVRE -# ====================================================================== -# COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# IDENTIFICATION DU GESTIONNAIRE DE COMMANDE ACCAS A PARTIR -# DE LA VERSION DU CODE_ASTER ASSOCIE -#---------------------------------------------------------------------- -version = "1.2" -date = "25/05/2010" -exploit = False diff --git a/OldCodes/PSEN_N1/qtEficas_PSEN_N1.py b/OldCodes/PSEN_N1/qtEficas_PSEN_N1.py deleted file mode 100755 index 845fbfef..00000000 --- a/OldCodes/PSEN_N1/qtEficas_PSEN_N1.py +++ /dev/null @@ -1,34 +0,0 @@ -#!/usr/bin/env python -# -*- coding: utf-8 -*- -# Copyright (C) 2007-2012 EDF R&D -# -# 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 -# -""" - Ce module sert a lancer EFICAS configure pour Code_Aster -""" -# Modules Python -# Modules Eficas - -import sys,os -#sys.path.append(os.path.join(os.path.abspath(os.path.dirname(__file__)),'..')) -import prefs -name='prefs_'+prefs.code -__import__(name) - -from InterfaceQT4 import eficas_go -eficas_go.lanceEficas(code=prefs.code) diff --git a/OldCodes/PSEN_N1/run.py b/OldCodes/PSEN_N1/run.py deleted file mode 100644 index 4a660891..00000000 --- a/OldCodes/PSEN_N1/run.py +++ /dev/null @@ -1,15 +0,0 @@ -import sys - -def runPSEN_N1(dico) : - try : - for k in dico.keys() : - print k - except : - pass - print dico - return 1,'hhhh' - -if __name__ == "__main__": - if dico == None : dico={} - runPSEN_N1(dico) - diff --git a/OldCodes/Sep/CMakeLists.txt b/OldCodes/Sep/CMakeLists.txt deleted file mode 100644 index c996b408..00000000 --- a/OldCodes/Sep/CMakeLists.txt +++ /dev/null @@ -1,33 +0,0 @@ -# -*- coding: utf-8 -*- -# CONFIGURATION MANAGEMENT OF EDF VERSION -# ====================================================================== -# COPYRIGHT (C) 1991 - 2002 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# -# -# ====================================================================== - - -install ( FILES - qtEficas_SEP.py SEP_Cata_V1_4.py configuration_SEP.py prefs.py - __init__.py prefs_SEP.py - DESTINATION ${CMAKE_INSTALL_PREFIX}/Sep - ) - - - -### Local Variables: -### mode: cmake -### End: diff --git a/OldCodes/Sep/SEP_Cata_V0.py b/OldCodes/Sep/SEP_Cata_V0.py deleted file mode 100644 index 0e0957b3..00000000 --- a/OldCodes/Sep/SEP_Cata_V0.py +++ /dev/null @@ -1,114 +0,0 @@ -## -*- coding: utf-8 -*- -# -## -------------------------------------------------- -## debut entete -## -------------------------------------------------- -# -from Accas import * - -# -#CONTEXT.debug = 1 -JdC = JDC_CATA ( code = 'SEP', - execmodul = None, - # regles=(AU_MOINS_UN('STRUCTURE_SIMPLE','STRUCTURE_COMPOSEE',),), - regles=(AU_PLUS_UN('STRUCTURE_SIMPLE',),), - )# Fin JDC_CATA -# - - -STRUCTURE_SIMPLE= MACRO (nom = 'STRUCTURE_SIMPLE', - op = None, - sd_prod = None, - reentrant = 'n', - UIinfo = {"groupes":("Outils métier",)}, - fr = "sous epaisseur ", - dir_name = SIMP(statut='o', typ='TXM',), - - - TYPE_SEP = SIMP(statut='o', typ='TXM',into=('TUBE_SOUS_EP_INTERNE','COUDE_SOUS_EP_INTERNE')), - - CHARGE_LIMITE = SIMP(statut='o', typ='TXM',into=('OUI', 'NON')), - - - b_tube_sous_epaisseur =BLOC(condition="(TYPE_SEP=='TUBE_SOUS_EP_INTERNE') ", - - MAIL_TUBE = FACT( statut='o', - fr = "Parametres maillage du tube ", - POINTS_DE_MESURE = FACT( statut='o', - FICHIER1 =SIMP(statut='f',typ='Fichier', - fr="Format du fichier : CSV.",), - FICHIER2 =SIMP(statut='f',typ='Fichier', - fr="Format du fichier : CSV.",), - ), - R_EXT =SIMP(statut='o', typ='R', fr="rayon exterieur du tube"), - EP_NOMINALE =SIMP(statut='o', typ='R', fr="epaisseur nominale du tube sans sous epaisseur"), - NB_SEG_AMORTISSEMENT =SIMP(statut='o', typ='I', defaut=11 , val_min=1, fr="nombre de segments dans la longueur d'amortissement"), - NB_SEG_TRANSITION =SIMP(statut='o', typ='I', defaut=4 , val_min=1, fr="nombre de segments dans longueur de transition"), - NB_SEG_GENERATRICES =SIMP(statut='o', typ='I', defaut=5 , val_min=1, fr="nombre de segments dans la longueur des generatrices dans la zone de sous épaisseur"), - PETITE_DISTANCE =SIMP(statut='o', typ='R', defaut=100.0 , fr="distance entre deux abscisses de points de mesure au dessous de laquelle on discrétise avec nb_seg_petites_distances au lieu de nb_seg_generatrices"), - NB_SEG_PETITES_DISTANCES =SIMP(statut='o', typ='I', defaut=3 , val_min=3 , fr="nombre de segments dans les aretes dont la longueur est inferieur a petite distance"), - NB_SEG_ARC =SIMP(statut='o', typ='I', defaut=5 , val_min=2 , fr="nombre de segments dans l'arc du tube entre deux generatrices"), - NB_SEG_EP =SIMP(statut='o', typ='I', defaut=3 , val_min=1 , fr="nombre de segments dans l'epaisseur du tube"), - ), - - INFO = SIMP(statut='f',typ='I',defaut=1,into=(0,1,2)), - ), - - - b_coude_sous_epaisseur =BLOC(condition="(TYPE_SEP=='COUDE_SOUS_EP_INTERNE') ", - - MAIL_COUDE = FACT( statut='o', - fr = "Parametres maillage du coude ", - POINTS_DE_MESURE = FACT( statut='o', - FICHIER1 =SIMP(statut='f',typ='Fichier', - fr="Format du fichier : CSV.",), - ), - R_COUDE =SIMP(statut='o', typ='R', fr="rayon du coude"), - R_EXT =SIMP(statut='o', typ='R', fr="rayon exterieur"), - EP_NOMINALE =SIMP(statut='o', typ='R', fr="epaisseur nominale sans sous epaisseur"), - ANGLE_COUDE =SIMP(statut='o', typ='R', defaut=90 , val_min=90. , val_max=90. ,fr="angle du coude"), - ORIENTATION_COUDE =SIMP(statut='o', typ='TXM',defaut='D',into=('D','G'),fr="orientation du coude"), - LONGUEUR_PROLONGEMENT_AMONT=SIMP(statut='o', typ='R', fr="longueur du prolongement amont"), - LONGUEUR_PROLONGEMENT_AVAL =SIMP(statut='o', typ='R', fr="longueur du prologenment aval"), - PAS_MESURE =SIMP(statut='o', typ='I', fr="pas de la mesure"), - DEBUT_MESURE =SIMP(statut='o', typ='R', fr="distance de la premiere mesure"), - ANGLE_MESURE =SIMP(statut='o', typ='R', defaut=45. ,fr="angle entre deux generatrices"), - NB_SEG_PROLONGEMENT_AMONT =SIMP(statut='o', typ='I', defaut=6 , val_min=1 ,fr="nombre de segments dans la longueur de prolongement amont"), - NB_SEG_PROLONGEMENT_AVAL =SIMP(statut='o', typ='I', defaut=6 , val_min=1 ,fr="nombre de segments dans la longueur de prolongement aval"), - NB_SEG_AMORTISSEMENT =SIMP(statut='o', typ='I', defaut=10 , val_min=1 ,fr="nombre de segments dans la longueur d'amortissement"), - NB_SEG_TRANSITION =SIMP(statut='o', typ='I', defaut=5 , val_min=1 ,fr="nombre de segments dans longueur de transition"), - NB_SEG_GENERATRICES =SIMP(statut='o', typ='I', defaut=25 , val_min=25 ,fr="nombre de segments dans la longueur des generatrices dans la zone de sous épaisseur"), - NB_SEG_ARC =SIMP(statut='o', typ='I', defaut=7 , val_min=2 ,fr="nombre de segments dans l'arc du coude entre deux generatrices"), - NB_SEG_EP =SIMP(statut='o', typ='I', defaut=3 , val_min=1 ,fr="nombre de segments dans l'epaissuer"), - ), - - INFO = SIMP(statut='f',typ='I',defaut=1,into=(0,1,2)), - ), - - - b_charge_limite_non=BLOC(condition = "CHARGE_LIMITE == 'NON' ", - INFO = SIMP(statut='f',typ='I',defaut=1,into=(0,1,2)), - ), - - b_charge_limite_oui=BLOC(condition = "((CHARGE_LIMITE == 'OUI') )", - - TYPE_CHARGE_LIMITE= SIMP(statut='o', typ='TXM', into=('CHARGE_LIMITE_INF','CHARGE_LIMITE_SUP',),), - - PARAMETRES_CALCUL = FACT( statut='o', - fr = "Parametres pour calcul de charge limite ", - - MEMOIRE=SIMP(statut='o', typ='I', ), - TEMPS =SIMP(statut='o', typ='I', ), - MACHINE=SIMP(statut='o', typ='TXM', defaut='LOCAL',into=('LOCAL','DISTANT'),), - - ), - PARAMETRES_CHARGE_LIMITE = FACT( statut='o', - fr = "Parametres materiau pour calcul de charge limite ", - - E =SIMP(statut='o', typ='R', fr="Module d'Young"), - NU=SIMP(statut='o', typ='R', fr="coefficient de poisson"), - SY=SIMP(statut='o', typ='R', fr="limite d'elasticite"), - ), - - ), -) diff --git a/OldCodes/Sep/SEP_Cata_V1.py b/OldCodes/Sep/SEP_Cata_V1.py deleted file mode 100644 index 65bab217..00000000 --- a/OldCodes/Sep/SEP_Cata_V1.py +++ /dev/null @@ -1,127 +0,0 @@ -## -*- coding: utf-8 -*- -# -## -------------------------------------------------- -## debut entete -## -------------------------------------------------- -# -from Accas import * - -# -#CONTEXT.debug = 1 -JdC = JDC_CATA ( code = 'SEP', - execmodul = None, - # regles=(AU_MOINS_UN('SOUS_EPAISSEUR_INTERNE','SOUS_EPAISSEUR_EXTERNE',),), - regles=( UN_PARMI('S_EP_INTERNE','MACRO_OUTIL1','MACRO_OUTIL2'),), - )# Fin JDC_CATA -# - - -S_EP_INTERNE= MACRO (nom = 'S_EP_INTERNE', - op = None, - sd_prod = None, - reentrant = 'n', - UIinfo = {"groupes":("Outils métier",)}, - fr = "sous epaisseur ", - dir_name = SIMP(statut='o', typ='TXM',), - TYPE_SEP = SIMP(statut='o', typ='TXM',into=('TUBE_SOUS_EPAISSEUR','COUDE_SOUS_EPAISSEUR',)), - b_tube_sous_epaisseur =BLOC(condition = "TYPE_SEP == 'TUBE_SOUS_EPAISSEUR' ", - regles = (AU_MOINS_UN('MAIL_TUBE','CHARGE_LIMITE')), - MAIL_TUBE = FACT( statut='f',max='**', - fr = "Parametres maillage du tube ", - unite_longueur=SIMP(statut='o', typ='TXM', defaut='mm',into=('mm',),), - r_ext=SIMP(statut='o', typ='R', defaut=228.6,val_min=100,val_max=300, fr="rayon exterieur du tube"), - ep_nominale=SIMP(statut='o', typ='R', defaut=22.0, fr="epaisseur nominale du tube sans sous epaisseur"), - nb_seg_amortissement=SIMP(statut='o', typ='I', defaut=11, fr="nombre de segments dans la longueur d'amortissement"), - nb_seg_transition=SIMP(statut='o', typ='I', defaut=4, fr="nombre de segments dans longueur de transition"), - nb_seg_generatrices=SIMP(statut='o', typ='I', defaut=5, fr="nombre de segments dans la longueur des génératrices dans la zone de sous épaisseur"), - petite_distance=SIMP(statut='o', typ='R', defaut=100.0, fr="distance entre deux abscisses de points de mesure au dessous de laquelle on discrétise avec nb_seg_petites_distances au lieu de nb_seg_generatrices"), - nb_seg_petites_distances=SIMP(statut='o', typ='I', defaut=3, fr="nombre de segments dans les aretes dont la longueur est inferieur a petite distance"), - nb_seg_arc=SIMP(statut='o', typ='I', defaut=5, fr="nombre de segments dans l'arc du tube entre deux generatrices"), - nb_seg_ep=SIMP(statut='o', typ='I', defaut=3, fr="nombre de segments dans l'epaisseur du tube"), - critere_dist_radial=SIMP(statut='o', typ='R', defaut=0.5, fr="Critère de rafinement de maillage"), - ), - CHARGE_LIMITE = FACT( statut='f',max='**', - fr = "Parametres pour calcul de charge limite ", - unite_mem=SIMP(statut='o', typ='TXM', defaut='Mo',into=('Mo',),), - memoire=SIMP(statut='o', typ='R', defaut=4096.,val_min=4096.,val_max=8000.), - unite_temps=SIMP(statut='o', typ='TXM', defaut='h',into=('h',),), - temps=SIMP(statut='o', typ='R', defaut=50.), - version_aster=SIMP(statut='o', typ='TXM', defaut='STA8',into=('STA8','STA9','STA9_mpi'),), - unite_sig=SIMP(statut='o', typ='TXM', defaut='MPa',into=('PA','MPa'),), - E=SIMP(statut='o', typ='R', defaut=200000., fr="Module d'Young"), - NU=SIMP(statut='o', typ='R', defaut=0.3, fr="coefficient de poisson"), - SY=SIMP(statut='o', typ='R', defaut=98.7, fr="limite d'elasticite"), - D_SIGM_EPSI=SIMP(statut='o', typ='R', defaut=100.0, fr="pente de la courbe d'ecrouissage"), - ), - ), - b_coude_sous_epaisseur =BLOC(condition = "TYPE_SEP == 'COUDE_SOUS_EPAISSEUR' ", - regles = (AU_MOINS_UN('MAIL_COUDE','CHARGE_LIMITE')), - MAIL_COUDE = FACT( statut='f',max='**', - fr = "Parametres maillage du coude ", - unite_longueur=SIMP(statut='o', typ='TXM', defaut='mm',into=('mm',),), - r_coude=SIMP(statut='o', typ='R', defaut=381.,val_min=100,val_max=500,fr="rayon du coude"), - r_ext=SIMP(statut='o', typ='R', defaut=136.5,val_min=100,val_max=200,fr="rayon exterieur"), - ep_nominale=SIMP(statut='o', typ='R', defaut=15.1,fr="epaisseur nominale sans sous epaisseur"), - angle_coude=SIMP(statut='o', typ='R', defaut=90,fr="angle du coude"), - orientation_coude=SIMP(statut='o', typ='TXM', defaut='D',into=('D','G'),fr="orientation du coude"), - longueur_prolongement_amont=SIMP(statut='o', typ='R', defaut=150.,fr="longueur du prolongement amont"), - longueur_prolongement_aval=SIMP(statut='o', typ='R', defaut=150.,fr="longueur du prologenment aval"), - pas_mesure=SIMP(statut='o', typ='I', defaut=80,fr="pas de la mesure"), - debut_mesure=SIMP(statut='o', typ='R', defaut=40.,fr="distance de la premiere mesure"), - angle_mesure=SIMP(statut='o', typ='R', defaut=45.,fr="angle entre deux generatrices"), - nb_seg_prolongement_amont = SIMP(statut='o', typ='I', defaut=6, fr="nombre de segments dans la longueur de prolongement amont"), - nb_seg_prolongement_aval = SIMP(statut='o', typ='I', defaut=6, fr="nombre de segments dans la longueur de prolongement aval"), - nb_seg_amortissement=SIMP(statut='o', typ='I', defaut=11, fr="nombre de segments dans la longueur d'amortissement"), - nb_seg_transition=SIMP(statut='o', typ='I', defaut=4, fr="nombre de segments dans longueur de transition"), - nb_seg_generatrices=SIMP(statut='o', typ='I', defaut=5, fr="nombre de segments dans la longueur des génératrices dans la zone de sous épaisseur"), - nb_seg_arc=SIMP(statut='o', typ='I', defaut=5, fr="nombre de segments dans l'arc du coude entre deux generatrices"), - nb_seg_ep=SIMP(statut='o', typ='I', defaut=3, fr="nombre de segments dans l'epaissuer"), - critere_dist_radial=SIMP(statut='o', typ='R', defaut=0.5, fr="Critère de rafinement de maillage"), - ), - CHARGE_LIMITE = FACT( statut='f',max='**', - fr = "Parametres pour calcul de charge limite ", - unite_mem=SIMP(statut='o', typ='TXM', defaut='Mo',into=('Mo',),), - memoire=SIMP(statut='o', typ='R', defaut=4096,val_min=4096,val_max=8000), - unite_temps=SIMP(statut='o', typ='TXM', defaut='h',into=('h',),), - temps=SIMP(statut='o', typ='R', defaut=50.), - version_aster=SIMP(statut='o', typ='TXM', defaut='STA8',into=('STA8','STA9','STA9_mpi'),), - unite_sig=SIMP(statut='o', typ='TXM', defaut='MPa',into=('PA','MPa'),), - E=SIMP(statut='o', typ='R', defaut=200000, fr="Module d'Young"), - NU=SIMP(statut='o', typ='R', defaut=0.3, fr="coefficient de poisson"), - SY=SIMP(statut='o', typ='R', defaut=98.7, fr="limite d'elasticite"), - D_SIGM_EPSI=SIMP(statut='o', typ='R', defaut=100.0, fr="pente de la courbe d'ecrouissage"), - ), - ), -) - - -MACRO_OUTIL1= MACRO (nom = 'MACRO_OUTIL1', - op = None, - sd_prod = None, - reentrant = 'n', - UIinfo = {"groupes":("Outils métier",)}, - fr = "Outil 1", - dir_name = SIMP(statut='o', typ='TXM',), - PARA_GEOM = FACT( statut='o', - max=1, - r_ext=SIMP(statut='o', typ='R', defaut=228.6,val_min=100,val_max=300), - unite=SIMP(statut='o', typ='TXM', defaut='mm',into=('mm',),), - ep_nominale=SIMP(statut='o', typ='R', defaut=22.000), - ), -) - -MACRO_OUTIL2= MACRO (nom = 'MACRO_OUTIL2', - op = None, - sd_prod = None, - reentrant = 'n', - UIinfo = {"groupes":("Outils métier",)}, - fr = "Outil 2", - dir_name = SIMP(statut='o', typ='TXM',), - PARA_GEOM = FACT( statut='o', - max=1, - r_ext=SIMP(statut='o', typ='R', defaut=228.6,val_min=100,val_max=300), - unite=SIMP(statut='o', typ='TXM', defaut='mm',into=('mm',),), - ep_nominale=SIMP(statut='o', typ='R', defaut=22.000), - ), -) - diff --git a/OldCodes/Sep/SEP_Cata_V1_2.py b/OldCodes/Sep/SEP_Cata_V1_2.py deleted file mode 100644 index 3f1c7713..00000000 --- a/OldCodes/Sep/SEP_Cata_V1_2.py +++ /dev/null @@ -1,127 +0,0 @@ -## -*- coding: utf-8 -*- -# -## -------------------------------------------------- -## debut entete -## -------------------------------------------------- -# -from Accas import * - -# -#CONTEXT.debug = 1 -JdC = JDC_CATA ( code = 'SEP', - execmodul = None, - # regles=(AU_MOINS_UN('SOUS_EPAISSEUR_INTERNE','SOUS_EPAISSEUR_EXTERNE',),), - regles=( UN_PARMI('S_EP_INTERNE'),), - )# Fin JDC_CATA -# - - -S_EP_INTERNE= MACRO (nom = 'S_EP_INTERNE', - op = None, - sd_prod = None, - reentrant = 'n', - UIinfo = {"groupes":("Outils métier",)}, - fr = "sous epaisseur ", - dir_name = SIMP(statut='o', typ='TXM',), - TYPE_EXEC = SIMP(statut='o', typ='TXM',into=('MAILLAGE','CALCUL',)), - TYPE_SEP = SIMP(statut='o', typ='TXM',into=('TUBE_SOUS_EPAISSEUR','COUDE_SOUS_EPAISSEUR','TEST_SOUS_EPAISSEUR')), - b_tube_sous_epaisseur =BLOC(condition = "TYPE_SEP == 'TUBE_SOUS_EPAISSEUR' ", - regles = (AU_MOINS_UN('MAIL_TUBE','CHARGE_LIMITE')), - MAIL_TUBE = FACT( statut='f',max='**', - fr = "Parametres maillage du tube ", - unite_longueur=SIMP(statut='o', typ='TXM', defaut='mm',into=('mm',),), - r_ext=SIMP(statut='o', typ='R', defaut=228.6,val_min=100,val_max=300, fr="rayon exterieur du tube"), - ep_nominale=SIMP(statut='o', typ='R', defaut=22.0, fr="epaisseur nominale du tube sans sous epaisseur"), - nb_seg_amortissement=SIMP(statut='o', typ='I', defaut=11, fr="nombre de segments dans la longueur d'amortissement"), - nb_seg_transition=SIMP(statut='o', typ='I', defaut=4, fr="nombre de segments dans longueur de transition"), - nb_seg_generatrices=SIMP(statut='o', typ='I', defaut=5, fr="nombre de segments dans la longueur des génératrices dans la zone de sous épaisseur"), - petite_distance=SIMP(statut='o', typ='R', defaut=100.0, fr="distance entre deux abscisses de points de mesure au dessous de laquelle on discrétise avec nb_seg_petites_distances au lieu de nb_seg_generatrices"), - nb_seg_petites_distances=SIMP(statut='o', typ='I', defaut=3, fr="nombre de segments dans les aretes dont la longueur est inferieur a petite distance"), - nb_seg_arc=SIMP(statut='o', typ='I', defaut=5, fr="nombre de segments dans l'arc du tube entre deux generatrices"), - nb_seg_ep=SIMP(statut='o', typ='I', defaut=3, fr="nombre de segments dans l'epaisseur du tube"), - critere_dist_radial=SIMP(statut='o', typ='R', defaut=0.5, fr="Critère de rafinement de maillage"), - ), - CHARGE_LIMITE = FACT( statut='f',max='**', - fr = "Parametres pour calcul de charge limite ", - unite_mem=SIMP(statut='o', typ='TXM', defaut='Mo',into=('Mo',),), - memoire=SIMP(statut='o', typ='I', defaut=2000,val_min=128,val_max=8000), - unite_temps=SIMP(statut='o', typ='TXM', defaut='h',into=('h',),), - temps=SIMP(statut='o', typ='R', defaut=50.), - version_aster=SIMP(statut='o', typ='TXM', defaut='STA8',into=('STA8','STA9','STA9_mpi'),), - unite_sig=SIMP(statut='o', typ='TXM', defaut='MPa',into=('PA','MPa'),), - E=SIMP(statut='o', typ='R', defaut=200000., fr="Module d'Young"), - NU=SIMP(statut='o', typ='R', defaut=0.3, fr="coefficient de poisson"), - SY=SIMP(statut='o', typ='R', defaut=98.7, fr="limite d'elasticite"), - D_SIGM_EPSI=SIMP(statut='o', typ='R', defaut=100.0, fr="pente de la courbe d'ecrouissage"), - ), - ), - b_coude_sous_epaisseur =BLOC(condition = "TYPE_SEP == 'COUDE_SOUS_EPAISSEUR' ", - regles = (AU_MOINS_UN('MAIL_COUDE','CHARGE_LIMITE')), - MAIL_COUDE = FACT( statut='f',max='**', - fr = "Parametres maillage du coude ", - unite_longueur=SIMP(statut='o', typ='TXM', defaut='mm',into=('mm',),), - r_coude=SIMP(statut='o', typ='R', defaut=381.,val_min=100,val_max=500,fr="rayon du coude"), - r_ext=SIMP(statut='o', typ='R', defaut=136.5,val_min=100,val_max=200,fr="rayon exterieur"), - ep_nominale=SIMP(statut='o', typ='R', defaut=15.1,fr="epaisseur nominale sans sous epaisseur"), - angle_coude=SIMP(statut='o', typ='R', defaut=90,fr="angle du coude"), - orientation_coude=SIMP(statut='o', typ='TXM', defaut='D',into=('D','G'),fr="orientation du coude"), - longueur_prolongement_amont=SIMP(statut='o', typ='R', defaut=150.,fr="longueur du prolongement amont"), - longueur_prolongement_aval=SIMP(statut='o', typ='R', defaut=150.,fr="longueur du prologenment aval"), - pas_mesure=SIMP(statut='o', typ='I', defaut=80,fr="pas de la mesure"), - debut_mesure=SIMP(statut='o', typ='R', defaut=40.,fr="distance de la premiere mesure"), - angle_mesure=SIMP(statut='o', typ='R', defaut=45.,fr="angle entre deux generatrices"), - nb_seg_prolongement_amont = SIMP(statut='o', typ='I', defaut=6, fr="nombre de segments dans la longueur de prolongement amont"), - nb_seg_prolongement_aval = SIMP(statut='o', typ='I', defaut=6, fr="nombre de segments dans la longueur de prolongement aval"), - nb_seg_amortissement=SIMP(statut='o', typ='I', defaut=11, fr="nombre de segments dans la longueur d'amortissement"), - nb_seg_transition=SIMP(statut='o', typ='I', defaut=5, fr="nombre de segments dans longueur de transition"), - nb_seg_generatrices=SIMP(statut='o', typ='I', defaut=25, fr="nombre de segments dans la longueur des génératrices dans la zone de sous épaisseur"), - nb_seg_arc=SIMP(statut='o', typ='I', defaut=7, fr="nombre de segments dans l'arc du coude entre deux generatrices"), - nb_seg_ep=SIMP(statut='o', typ='I', defaut=3, fr="nombre de segments dans l'epaissuer"), - critere_dist_radial=SIMP(statut='o', typ='R', defaut=0.5, fr="Critère de rafinement de maillage"), - ), - CHARGE_LIMITE = FACT( statut='f',max='**', - fr = "Parametres pour calcul de charge limite ", - unite_mem=SIMP(statut='o', typ='TXM', defaut='Mo',into=('Mo',),), - memoire=SIMP(statut='o', typ='I', defaut=2000,val_min=128,val_max=8000), - unite_temps=SIMP(statut='o', typ='TXM', defaut='h',into=('h',),), - temps=SIMP(statut='o', typ='R', defaut=50.), - version_aster=SIMP(statut='o', typ='TXM', defaut='STA8',into=('STA8','STA9','STA9_mpi'),), - unite_sig=SIMP(statut='o', typ='TXM', defaut='MPa',into=('PA','MPa'),), - E=SIMP(statut='o', typ='R', defaut=200000, fr="Module d'Young"), - NU=SIMP(statut='o', typ='R', defaut=0.3, fr="coefficient de poisson"), - SY=SIMP(statut='o', typ='R', defaut=98.7, fr="limite d'elasticite"), - D_SIGM_EPSI=SIMP(statut='o', typ='R', defaut=100.0, fr="pente de la courbe d'ecrouissage"), - ), - ), - b_test_sous_epaisseur =BLOC(condition = "TYPE_SEP == 'TEST_SOUS_EPAISSEUR' ", - regles = (AU_MOINS_UN('MAIL_TUBE','CHARGE_LIMITE')), - MAIL_TUBE = FACT( statut='f',max='**', - fr = "Parametres maillage du tube ", - unite_longueur=SIMP(statut='o', typ='TXM', defaut='mm',into=('mm',),), - r_ext=SIMP(statut='o', typ='R', defaut=228.6,val_min=100,val_max=300, fr="rayon exterieur du tube"), - ep_nominale=SIMP(statut='o', typ='R', defaut=22.0, fr="epaisseur nominale du tube sans sous epaisseur"), - nb_seg_amortissement=SIMP(statut='o', typ='I', defaut=11, fr="nombre de segments dans la longueur d'amortissement"), - nb_seg_transition=SIMP(statut='o', typ='I', defaut=4, fr="nombre de segments dans longueur de transition"), - nb_seg_generatrices=SIMP(statut='o', typ='I', defaut=5, fr="nombre de segments dans la longueur des génératrices dans la zone de sous épaisseur"), - petite_distance=SIMP(statut='o', typ='R', defaut=100.0, fr="distance entre deux abscisses de points de mesure au dessous de laquelle on discrétise avec nb_seg_petites_distances au lieu de nb_seg_generatrices"), - nb_seg_petites_distances=SIMP(statut='o', typ='I', defaut=3, fr="nombre de segments dans les aretes dont la longueur est inferieur a petite distance"), - nb_seg_arc=SIMP(statut='o', typ='I', defaut=5, fr="nombre de segments dans l'arc du tube entre deux generatrices"), - nb_seg_ep=SIMP(statut='o', typ='I', defaut=3, fr="nombre de segments dans l'epaisseur du tube"), - critere_dist_radial=SIMP(statut='o', typ='R', defaut=0.5, fr="Critère de rafinement de maillage"), - ), - CHARGE_LIMITE = FACT( statut='f',max='**', - fr = "Parametres pour calcul de charge limite ", - unite_mem=SIMP(statut='o', typ='TXM', defaut='Mo',into=('Mo',),), - memoire=SIMP(statut='o', typ='I', defaut=128,val_min=128,val_max=8000), - unite_temps=SIMP(statut='o', typ='TXM', defaut='h',into=('h',),), - temps=SIMP(statut='o', typ='R', defaut=50.), - version_aster=SIMP(statut='o', typ='TXM', defaut='STA8',into=('STA8','STA9','STA9_mpi'),), - unite_sig=SIMP(statut='o', typ='TXM', defaut='MPa',into=('PA','MPa'),), - E=SIMP(statut='o', typ='R', defaut=200000., fr="Module d'Young"), - NU=SIMP(statut='o', typ='R', defaut=0.3, fr="coefficient de poisson"), - SY=SIMP(statut='o', typ='R', defaut=98.7, fr="limite d'elasticite"), - D_SIGM_EPSI=SIMP(statut='o', typ='R', defaut=100.0, fr="pente de la courbe d'ecrouissage"), - ), - ) -) - diff --git a/OldCodes/Sep/SEP_Cata_V1_3.py b/OldCodes/Sep/SEP_Cata_V1_3.py deleted file mode 100644 index 2895dbb7..00000000 --- a/OldCodes/Sep/SEP_Cata_V1_3.py +++ /dev/null @@ -1,126 +0,0 @@ -## -*- coding: utf-8 -*- -# -## -------------------------------------------------- -## debut entete -## -------------------------------------------------- -# -from Accas import * - -# -#CONTEXT.debug = 1 -JdC = JDC_CATA ( code = 'SEP', - execmodul = None, - # regles=(AU_MOINS_UN('STRUCTURE_SIMPLE','STRUCTURE_COMPOSEE',),), - regles=(AU_MOINS_UN('STRUCTURE_SIMPLE',),), - )# Fin JDC_CATA -# - - -STRUCTURE_SIMPLE= MACRO (nom = 'STRUCTURE_SIMPLE', - op = None, - sd_prod = None, - reentrant = 'n', - UIinfo = {"groupes":("Outils métier",)}, - fr = "sous epaisseur ", - dir_name = SIMP(statut='o', typ='TXM',), - - MAILLAGE = SIMP(statut='o', typ='TXM',into=('OUI', 'NON')), - CHARGE_LIMITE = SIMP(statut='o', typ='TXM',into=('OUI', 'NON')), - - lecture_maillage = BLOC(condition = "(MAILLAGE == 'NON') and (CHARGE_LIMITE=='OUI') ", - LECTURE_MAILLAGE = FACT( statut='o',max='**', - FICHIER =SIMP(statut='o',typ='Fichier',), - FORMAT =SIMP(statut='f',typ='TXM',defaut="ASTER",into=("ASTER","MED"), - fr="Format du fichier : ASTER ou MED.",), - NOM = SIMP(statut='f',typ='TXM', - fr="Nom du maillage dans le fichier MED.",),), - ), - - execution_maillage = BLOC(condition = "MAILLAGE == 'OUI' ", - - TYPE_SEP = SIMP(statut='o', typ='TXM',into=('TUBE_SOUS_EP_INTERNE','TUBE_SOUS_EP_EXTERNE','COUDE_SOUS_EP_INTERNE','COUDE_SOUS_EP_EXTERNE')), - - b_tube_sous_epaisseur =BLOC(condition="(TYPE_SEP=='TUBE_SOUS_EP_INTERNE') or (TYPE_SEP=='TUBE_SOUS_EP_EXTERNE') ", - regles=(UN_PARMI('TUBE_SOUS_EP_INTERNE','TUBE_SOUS_EP_EXTERNE'),), - MAIL_TUBE = FACT( statut='f',max='**', - fr = "Parametres maillage du tube ", - points_de_mesure = FACT( statut='o',max='**', - FICHIER =SIMP(statut='o',typ='Fichier', - fr="Format du fichier : CSV.",), - FORMAT =SIMP(statut='f',typ='TXM',defaut="CSV",into=("CSV"), - fr="Format du fichier : CSV",), - ), - unite_longueur=SIMP(statut='o', typ='TXM', defaut='mm',into=('mm',),), - r_ext=SIMP(statut='o', typ='R', defaut=228.6,val_min=100,val_max=300, fr="rayon exterieur du tube"), - ep_nominale=SIMP(statut='o', typ='R', defaut=22.0, fr="epaisseur nominale du tube sans sous epaisseur"), - nb_seg_amortissement=SIMP(statut='o', typ='I', defaut=11, fr="nombre de segments dans la longueur d'amortissement"), - nb_seg_transition=SIMP(statut='o', typ='I', defaut=4, fr="nombre de segments dans longueur de transition"), - nb_seg_generatrices=SIMP(statut='o', typ='I', defaut=5, fr="nombre de segments dans la longueur des generatrices dans la zone de sous épaisseur"), - petite_distance=SIMP(statut='o', typ='R', defaut=100.0, fr="distance entre deux abscisses de points de mesure au dessous de laquelle on discrétise avec nb_seg_petites_distances au lieu de nb_seg_generatrices"), - nb_seg_petites_distances=SIMP(statut='o', typ='I', defaut=3, fr="nombre de segments dans les aretes dont la longueur est inferieur a petite distance"), - nb_seg_arc=SIMP(statut='o', typ='I', defaut=5, fr="nombre de segments dans l'arc du tube entre deux generatrices"), - nb_seg_ep=SIMP(statut='o', typ='I', defaut=3, fr="nombre de segments dans l'epaisseur du tube"), - critere_dist_radial=SIMP(statut='o', typ='R', defaut=0.5, fr="Critère de raffinement de maillage"), - ), - INFO = SIMP(statut='f',typ='I',defaut=1,into=(0,1,2)), - ), - - - b_coude_sous_epaisseur =BLOC(condition="(TYPE_SEP=='COUDE_SOUS_EP_INTERNE') or (TYPE_SEP=='COUDE_SOUS_EP_EXTERNE') ", - regles=(UN_PARMI('COUDE_SOUS_EP_INTERNE','COUDE_SOUS_EP_EXTERNE'),), - MAIL_COUDE = FACT( statut='f',max='**', - fr = "Parametres maillage du coude ", - points_de_mesure = FACT( statut='o',max='**', - FICHIER =SIMP(statut='o',typ='Fichier', - fr="Format du fichier : CSV.",), - FORMAT =SIMP(statut='f',typ='TXM',defaut="CSV",into=("CSV"), - fr="Format du fichier : CSV",), - ), - unite_longueur=SIMP(statut='o', typ='TXM', defaut='mm',into=('mm',),), - r_coude=SIMP(statut='o', typ='R', defaut=381.,val_min=100,val_max=500,fr="rayon du coude"), - r_ext=SIMP(statut='o', typ='R', defaut=136.5,val_min=100,val_max=200,fr="rayon exterieur"), - ep_nominale=SIMP(statut='o', typ='R', defaut=15.1,fr="epaisseur nominale sans sous epaisseur"), - angle_coude=SIMP(statut='o', typ='R', defaut=90,fr="angle du coude"), - orientation_coude=SIMP(statut='o', typ='TXM', defaut='D',into=('D','G'),fr="orientation du coude"), - longueur_prolongement_amont=SIMP(statut='o', typ='R', defaut=150.,fr="longueur du prolongement amont"), - longueur_prolongement_aval=SIMP(statut='o', typ='R', defaut=150.,fr="longueur du prologenment aval"), - pas_mesure=SIMP(statut='o', typ='I', defaut=80,fr="pas de la mesure"), - debut_mesure=SIMP(statut='o', typ='R', defaut=40.,fr="distance de la premiere mesure"), - angle_mesure=SIMP(statut='o', typ='R', defaut=45.,fr="angle entre deux generatrices"), - nb_seg_prolongement_amont = SIMP(statut='o', typ='I', defaut=6, fr="nombre de segments dans la longueur de prolongement amont"), - nb_seg_prolongement_aval = SIMP(statut='o', typ='I', defaut=6, fr="nombre de segments dans la longueur de prolongement aval"), - nb_seg_amortissement=SIMP(statut='o', typ='I', defaut=11, fr="nombre de segments dans la longueur d'amortissement"), - nb_seg_transition=SIMP(statut='o', typ='I', defaut=5, fr="nombre de segments dans longueur de transition"), - nb_seg_generatrices=SIMP(statut='o', typ='I', defaut=25, fr="nombre de segments dans la longueur des generatrices dans la zone de sous épaisseur"), - nb_seg_arc=SIMP(statut='o', typ='I', defaut=7, fr="nombre de segments dans l'arc du coude entre deux generatrices"), - nb_seg_ep=SIMP(statut='o', typ='I', defaut=3, fr="nombre de segments dans l'epaissuer"), - critere_dist_radial=SIMP(statut='o', typ='R', defaut=0.5, fr="critère de rafinement de maillage"), - - ), - INFO = SIMP(statut='f',typ='I',defaut=1,into=(0,1,2)), - ), - ), - - b_charge_limite_non=BLOC(condition = "CHARGE_LIMITE == 'NON' ", - INFO = SIMP(statut='f',typ='I',defaut=1,into=(0,1,2)), - ), - b_charge_limite_oui=BLOC(condition = "CHARGE_LIMITE == 'OUI' ", - CHARGE_LIMITE = FACT( statut='f',max='**', - fr = "Parametres pour calcul de charge limite ", - unite_mem=SIMP(statut='o', typ='TXM', defaut='Mo',into=('Mo',),), - memoire=SIMP(statut='o', typ='I', defaut=2000,val_min=128,val_max=8000), - unite_temps=SIMP(statut='o', typ='TXM', defaut='h',into=('h',),), - temps=SIMP(statut='o', typ='R', defaut=50.), - version_aster=SIMP(statut='o', typ='TXM', defaut='STA10',into=('STA9','STA10'),), - unite_sig=SIMP(statut='o', typ='TXM', defaut='MPa',into=('PA','MPa'),), - E=SIMP(statut='o', typ='R', defaut=200000., fr="Module d'Young"), - NU=SIMP(statut='o', typ='R', defaut=0.3, fr="coefficient de poisson"), - SY=SIMP(statut='o', typ='R', defaut=98.7, fr="limite d'elasticite"), - D_SIGM_EPSI=SIMP(statut='o', typ='R', defaut=100.0, fr="pente de la courbe d'ecrouissage"), - ), - INFO = SIMP(statut='f',typ='I',defaut=1,into=(0,1,2)), - ), - - -) - diff --git a/OldCodes/Sep/SEP_Cata_V1_4.py b/OldCodes/Sep/SEP_Cata_V1_4.py deleted file mode 100644 index 462b8c6d..00000000 --- a/OldCodes/Sep/SEP_Cata_V1_4.py +++ /dev/null @@ -1,150 +0,0 @@ -## -*- coding: utf-8 -*- -# Copyright (C) 2007-2012 EDF R&D -# -# 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 -# -# -## -------------------------------------------------- -## debut entete -## -------------------------------------------------- -# -from Accas import * - -# -#CONTEXT.debug = 1 -JdC = JDC_CATA ( code = 'SEP', - execmodul = None, - # regles=(AU_MOINS_UN('STRUCTURE_SIMPLE','STRUCTURE_COMPOSEE',),), - regles=(AU_MOINS_UN('STRUCTURE_SIMPLE',),), - )# Fin JDC_CATA -# - - -STRUCTURE_SIMPLE= MACRO (nom = 'STRUCTURE_SIMPLE', - op = None, - sd_prod = None, - reentrant = 'n', - UIinfo = {"groupes":("Outils métier",)}, - fr = "sous epaisseur ", - dir_name = SIMP(statut='o', typ='TXM',), - - CHARGE_LIMITE = SIMP(statut='o', typ='TXM',into=('OUI', 'NON')), - - TYPE_SEP = SIMP(statut='o', typ='TXM',into=('TUBE_SOUS_EP_INTERNE','COUDE_SOUS_EP_INTERNE')), - - - b_tube_sous_epaisseur =BLOC(condition="(TYPE_SEP=='TUBE_SOUS_EP_INTERNE') ", - - points_de_mesure = FACT( statut='o',max='**', - FICHIER =SIMP(statut='o',typ='Fichier', - fr="Format du fichier : CSV.",), - ), - - - MAIL_TUBE = FACT( statut='f',max='**', - fr = "Parametres maillage du tube ", - - unite_longueur=SIMP(statut='o', typ='TXM', defaut='mm',into=('mm',),), - r_ext=SIMP(statut='o', typ='R', defaut=228.6,val_min=100,val_max=300, fr="rayon exterieur du tube"), - ep_nominale=SIMP(statut='o', typ='R', defaut=22.0, fr="epaisseur nominale du tube sans sous epaisseur"), - nb_seg_amortissement=SIMP(statut='o', typ='I', defaut=11, fr="nombre de segments dans la longueur d'amortissement"), - nb_seg_transition=SIMP(statut='o', typ='I', defaut=4, fr="nombre de segments dans longueur de transition"), - nb_seg_generatrices=SIMP(statut='o', typ='I', defaut=5, fr="nombre de segments dans la longueur des generatrices dans la zone de sous épaisseur"), - petite_distance=SIMP(statut='o', typ='R', defaut=100.0, fr="distance entre deux abscisses de points de mesure au dessous de laquelle on discrétise avec nb_seg_petites_distances au lieu de nb_seg_generatrices"), - nb_seg_petites_distances=SIMP(statut='o', typ='I', defaut=3, fr="nombre de segments dans les aretes dont la longueur est inferieur a petite distance"), - nb_seg_arc=SIMP(statut='o', typ='I', defaut=5, fr="nombre de segments dans l'arc du tube entre deux generatrices"), - nb_seg_ep=SIMP(statut='o', typ='I', defaut=3, fr="nombre de segments dans l'epaisseur du tube"), - critere_dist_radial=SIMP(statut='o', typ='R', defaut=0.5, fr="Critère de raffinement de maillage"), - ), - INFO = SIMP(statut='f',typ='I',defaut=1,into=(0,1,2)), - ), - - - b_coude_sous_epaisseur =BLOC(condition="(TYPE_SEP=='COUDE_SOUS_EP_INTERNE') ", - - points_de_mesure = FACT( statut='o',max='**', - FICHIER =SIMP(statut='o',typ='Fichier', - fr="Format du fichier : CSV.",), - FORMAT =SIMP(statut='f',typ='TXM',defaut="CSV",into=("CSV"), - fr="Format du fichier : CSV",), - ), - MAIL_COUDE = FACT( statut='f',max='**', - fr = "Parametres maillage du coude ", - - unite_longueur=SIMP(statut='o', typ='TXM', defaut='mm',into=('mm',),), - r_coude=SIMP(statut='o', typ='R', defaut=381.,val_min=100,val_max=500,fr="rayon du coude"), - r_ext=SIMP(statut='o', typ='R', defaut=136.5,val_min=100,val_max=200,fr="rayon exterieur"), - ep_nominale=SIMP(statut='o', typ='R', defaut=15.1,fr="epaisseur nominale sans sous epaisseur"), - angle_coude=SIMP(statut='o', typ='R', defaut=90,fr="angle du coude"), - orientation_coude=SIMP(statut='o', typ='TXM', defaut='D',into=('D','G'),fr="orientation du coude"), - longueur_prolongement_amont=SIMP(statut='o', typ='R', defaut=150.,fr="longueur du prolongement amont"), - longueur_prolongement_aval=SIMP(statut='o', typ='R', defaut=150.,fr="longueur du prologenment aval"), - pas_mesure=SIMP(statut='o', typ='I', defaut=80,fr="pas de la mesure"), - debut_mesure=SIMP(statut='o', typ='R', defaut=40.,fr="distance de la premiere mesure"), - angle_mesure=SIMP(statut='o', typ='R', defaut=45.,fr="angle entre deux generatrices"), - nb_seg_prolongement_amont = SIMP(statut='o', typ='I', defaut=6, fr="nombre de segments dans la longueur de prolongement amont"), - nb_seg_prolongement_aval = SIMP(statut='o', typ='I', defaut=6, fr="nombre de segments dans la longueur de prolongement aval"), - nb_seg_amortissement=SIMP(statut='o', typ='I', defaut=11, fr="nombre de segments dans la longueur d'amortissement"), - nb_seg_transition=SIMP(statut='o', typ='I', defaut=5, fr="nombre de segments dans longueur de transition"), - nb_seg_generatrices=SIMP(statut='o', typ='I', defaut=25, fr="nombre de segments dans la longueur des generatrices dans la zone de sous épaisseur"), - nb_seg_arc=SIMP(statut='o', typ='I', defaut=7, fr="nombre de segments dans l'arc du coude entre deux generatrices"), - nb_seg_ep=SIMP(statut='o', typ='I', defaut=3, fr="nombre de segments dans l'epaissuer"), - critere_dist_radial=SIMP(statut='o', typ='R', defaut=0.5, fr="critère de rafinement de maillage"), - - ), - INFO = SIMP(statut='f',typ='I',defaut=1,into=(0,1,2)), - ), - - - b_charge_limite_non=BLOC(condition = "CHARGE_LIMITE == 'NON' ", - INFO = SIMP(statut='f',typ='I',defaut=1,into=(0,1,2)), - ), - b_charge_limite_oui=BLOC(condition = "CHARGE_LIMITE == 'OUI' ", - - TYPE_CHARGE_LIMITE= SIMP(statut='o', typ='TXM',into=('CHARGE_LIMITE_INF','CHARGE_LIMITE_SUP')), - - PARAMETRES = FACT( statut='o',max='**', - fr = "Parametres pour calcul de charge limite ", - - unite_mem=SIMP(statut='o', typ='TXM', defaut='Mo',into=('Mo',),), - memoire=SIMP(statut='o', typ='I', defaut=2000,val_min=128,val_max=8000), - unite_temps=SIMP(statut='o', typ='TXM', defaut='h',into=('h',),), - temps=SIMP(statut='o', typ='R', defaut=50.), - machine=SIMP(statut='o', typ='TXM', defaut='locale',into=('locale','distante'),), - unite_sig=SIMP(statut='o', typ='TXM', defaut='MPa',into=('Pa','MPa'),), - - E =SIMP(statut='o', typ='R', defaut=200000., fr="Module d'Young"), - NU=SIMP(statut='o', typ='R', defaut=0.3 , fr="coefficient de poisson"), - SY=SIMP(statut='o', typ='R', defaut=98.7 , fr="limite d'elasticite"), - ), - - CHARGE_LIMITE_INF = BLOC(condition="(TYPE_CHARGE_LIMITE =='CHARGE_LIMITE_INF') ", - FICHIER =SIMP(statut='o',typ='Fichier', - fr="Format du fichier : .COMM",), - ), - - CHARGE_LIMITE_SUP = BLOC(condition="(TYPE_CHARGE_LIMITE =='CHARGE_LIMITE_SUP') ", - FICHIER =SIMP(statut='o',typ='Fichier', - fr="Format du fichier : .COMM",), - ), - - INFO = SIMP(statut='f',typ='I',defaut=1,into=(0,1,2)), - ), - - -) - diff --git a/OldCodes/Sep/__init__.py b/OldCodes/Sep/__init__.py deleted file mode 100644 index 8ed65e16..00000000 --- a/OldCodes/Sep/__init__.py +++ /dev/null @@ -1,19 +0,0 @@ -# -*- coding: utf-8 -*- -# Copyright (C) 2007-2012 EDF R&D -# -# 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 -# diff --git a/OldCodes/Sep/catalogues_sep.ini b/OldCodes/Sep/catalogues_sep.ini deleted file mode 100644 index 7aee501b..00000000 --- a/OldCodes/Sep/catalogues_sep.ini +++ /dev/null @@ -1,14 +0,0 @@ -# Choix des catalogues -import os -#rep_cata=os.path.dirname(os.path.abspath(__file__)) -rep_cata=os.getcwd() - -catalogues = ( - #('SEP','V0',os.path.join(rep_cata,'SEP_Cata_V0.py'),'SEP','SEP'), - #('SEP','V1',os.path.join(rep_cata,'SEP_Cata_V1.py'),'SEP','SEP'), - #('SEP','V1_1',os.path.join(rep_cata,'SEP_Cata_V1_1.py'),'SEP','SEP'), - #('SEP','V1_2',os.path.join(rep_cata,'SEP_Cata_V1_2.py'),'SEP','SEP'), - # ('SEP','V1_3',os.path.join(rep_cata,'SEP_Cata_V1_3.py'),'SEP','SEP'), - ('SEP','V1',os.path.join(rep_cata,'SEP_Cata_V0.py'),'SEP','SEP'), -) - diff --git a/OldCodes/Sep/configuration_SEP.py b/OldCodes/Sep/configuration_SEP.py deleted file mode 100644 index daf74021..00000000 --- a/OldCodes/Sep/configuration_SEP.py +++ /dev/null @@ -1,50 +0,0 @@ -# -*- coding: utf-8 -*- -# Copyright (C) 2007-2012 EDF R&D -# -# 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 -# -""" - Ce module sert pour charger les paramètres de configuration d'EFICAS -""" -# Modules Python -import os, sys, string, types, re -import traceback -from PyQt4.QtGui import * - -# Modules Eficas -import configuration -import os - - -class CONFIG(configuration.configBase): - - #----------------------------------- - def __init__(self,appli,repIni): - #----------------------------------- - - self.labels_user=['exec_acrobat', 'catalogues','savedir'] - self.labels_eficas=['path_doc','exec_acrobat','lang','rep_cata','catalogues'] - - self.INSTALLDIR =os.path.dirname(__file__) - configuration.configBase.__init__(self,appli,repIni) - - - -def make_config(appli,rep): - return CONFIG(appli,rep) - - diff --git a/OldCodes/Sep/editeur.ini b/OldCodes/Sep/editeur.ini deleted file mode 100644 index 83dff66c..00000000 --- a/OldCodes/Sep/editeur.ini +++ /dev/null @@ -1,44 +0,0 @@ -# CONFIGURATION MANAGEMENT OF EDF VERSION -# ====================================================================== -# COPYRIGHT (C) 1991 - 2002 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# -# -# ====================================================================== - -import os - -from Sous_epaisseur import prefs - -rep_cata = os.path.join(prefs.repIni,'Cata') -print rep_cata - -# Accès à la documentation Aster -path_doc = os.path.join(rep_cata,'..','Doc') -exec_acrobat = "acroread" -# Utilisateur/Développeur -isdeveloppeur = "NON" -path_cata_dev = "/tmp/cata" -# Répertoire temporaire -rep_travail = "/tmp" -# Répertoire initial -initialdir=os.curdir - -# Choix des catalogues - -catalogues = ( - ('Sous_epaisseur','v1.0',os.path.join(rep_cata,'SEP_Cata_V1_4'),'python'), - ) - diff --git a/OldCodes/Sep/prefs.py b/OldCodes/Sep/prefs.py deleted file mode 100644 index f91e53af..00000000 --- a/OldCodes/Sep/prefs.py +++ /dev/null @@ -1,62 +0,0 @@ -# -*- coding: utf-8 -*- -# Copyright (C) 2007-2012 EDF R&D -# -# 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,sys - -# repIni sert à localiser le fichier editeur.ini -# Obligatoire -repIni=os.path.dirname(os.path.abspath(__file__)) - -# INSTALLDIR sert à localiser l'installation d'Eficas -# Obligatoire -INSTALLDIR=os.path.join(repIni,'..') - -# CODE_PATH sert à localiser Noyau et Validation éventuellement -# non contenus dans la distribution EFICAS -# Par défaut on utilise les modules de INSTALLDIR -# Peut valoir None (defaut) -CODE_PATH = None - -# la variable code donne le nom du code a selectionner -code="SEP" - -# lang indique la langue utilisée pour les chaines d'aide : fr ou ang -lang='fr' - -# Codage des strings qui accepte les accents (en remplacement de 'ascii') -encoding='iso-8859-1' - - -EditeurDir=INSTALLDIR+"/Editeur" -sys.path.insert(0,INSTALLDIR) - -ICONDIR=os.path.join(INSTALLDIR,'Editeur','icons') - -# Preference -if os.name == 'nt': - userprefs = os.sep.join( [ os.environ['HOMEDRIVE'], os.environ['HOMEPATH'], 'Eficas_install', 'prefs.py' ]) -else : - userprefs=os.path.expanduser("~/.Eficas_SEP/prefs.py") - -if os.path.isfile(userprefs): - try: - execfile(userprefs) - except: - pass - diff --git a/OldCodes/Sep/prefs_SEP.py b/OldCodes/Sep/prefs_SEP.py deleted file mode 100644 index 66a112fb..00000000 --- a/OldCodes/Sep/prefs_SEP.py +++ /dev/null @@ -1,35 +0,0 @@ -# -*- coding: utf-8 -*- -# Copyright (C) 2007-2012 EDF R&D -# -# 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,sys - -# repIni sert à localiser le fichier editeur.ini -# Obligatoire -repIni=os.path.dirname(os.path.abspath(__file__)) - -# lang indique la langue utilisée pour les chaines d'aide : fr ou ang -lang='fr' - -# Codage des strings qui accepte les accents (en remplacement de 'ascii') -encoding='iso-8859-1' - -catalogues = ( - ('Sous_epaisseur','v1.0',os.path.join(repIni,'SEP_Cata_V1_4.py'),'python'), -) - diff --git a/OldCodes/Sep/properties.py b/OldCodes/Sep/properties.py deleted file mode 100644 index bd8236ca..00000000 --- a/OldCodes/Sep/properties.py +++ /dev/null @@ -1,24 +0,0 @@ -#@ MODIF properties Accas DATE 11/06/2008 AUTEUR aster M.ADMINISTRATEUR -# RESPONSABLE D6BHHHH J-P.LEFEBVRE -# ====================================================================== -# COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# IDENTIFICATION DU GESTIONNAIRE DE COMMANDE ACCAS A PARTIR -# DE LA VERSION DU CODE_ASTER ASSOCIE -#---------------------------------------------------------------------- -version = "0.1" -date = "20/05/2009" -exploit = False diff --git a/OldCodes/Sep/qtEficas_SEP.py b/OldCodes/Sep/qtEficas_SEP.py deleted file mode 100755 index 487607f4..00000000 --- a/OldCodes/Sep/qtEficas_SEP.py +++ /dev/null @@ -1,30 +0,0 @@ -#!/usr/bin/env python -# Copyright (C) 2007-2012 EDF R&D -# -# 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 -# -""" - Ce module sert a lancer EFICAS configure pour Code_Aster Outils Metier Sous-Epaisseur -""" -# Modules Python - -# Modules Eficas -import prefs -from InterfaceQT4 import eficas_go -#from InterfaceQT import eficas_go - -eficas_go.lanceEficas(code=prefs.code) diff --git a/OldCodes/Sep/sdistSEP.py b/OldCodes/Sep/sdistSEP.py deleted file mode 100644 index 6b9ff4eb..00000000 --- a/OldCodes/Sep/sdistSEP.py +++ /dev/null @@ -1,99 +0,0 @@ -# -*- coding: utf-8 -*- -""" - Ce module sert à construire les distributions d'EFICAS pour SEP - en fonction du tag CVS courant - Les distributions sont : - - un tar.gz pour UNIX ne contenant pas mxTextTools - L'utilisation de ce module est la suivante : - 1- Se mettre dans un répertoire de travail - 2- Configurer son environnement pour utiliser le référentiel CVS EFICAS - 3- Exporter les sources d'EficasV1 par la commande : - cvs export -r TAG -d Eficas_export EficasV1 - ou TAG est le tag CVS de la version que l'on veut distribuer (par exemple V1_1p1) - 5- Aller dans le répertoire Eficas_export - 6- Executer le script sdist.py - python sdist.py - Ce qui a pour effet de creer un repertoire dist contenant la distribution - et de la copier dans le répertoire indiqué par dir_download s'il est accessible - -""" -import os,shutil,glob,sys -import types - -nom_distrib="QTEficasSEP_V1_0" -path_distrib=os.path.join("dist",nom_distrib) -dir_download= "/home/eficas/WWW/telechargement/eficas" - -def main(): - if os.path.isdir('dist'):shutil.rmtree('dist') - - copyfiles('.',path_distrib,['LICENSE.TERMS','INSTALL','NEWS']) - - copyfiles('../Editeur',os.path.join(path_distrib,'Editeur'),['*.py','faqs.txt']) - copyfiles('../InterfaceQT4',os.path.join(path_distrib,'InterfaceQT4'),['*.py','faqs.txt']) - copyfiles('../UiQT4',os.path.join(path_distrib,'UiQT4'),['*.ui','makefile']) - copyfiles('../Sous_epaisseur',os.path.join(path_distrib,'Sous_epaisseur'),['*.py','*.ini']) - copyfiles('../Ihm',os.path.join(path_distrib,'Ihm'),['*.py']) - copyfiles('../Extensions',os.path.join(path_distrib,'Extensions'),['*.py']) - copyfiles('../Misc',os.path.join(path_distrib,'Misc'),['*.py']) - copyfiles('../Accas',os.path.join(path_distrib,'Accas'),['*.py']) - # AIDE - copyfiles('../AIDE',os.path.join(path_distrib,'AIDE'),['*.py']) - copyfiles('../AIDE/fichiers',os.path.join(path_distrib,'AIDE','fichiers'),['*']) - copyfiles('.',os.path.join(path_distrib,'AIDE','fichiers'),['INSTALL','NEWS']) - copyfiles('../Editeur',os.path.join(path_distrib,'AIDE','fichiers'),['faqs.txt']) - # ______________________ - - copyfiles('../convert',os.path.join(path_distrib,'convert'),['*.py']) - os.system("rm -rf .././convert/parserv5 ") - os.system("rm -rf .././convert/convert_asterv5.py ") - copyfiles('../generator',os.path.join(path_distrib,'generator'),['*.py']) - copyfiles('../Editeur/icons',os.path.join(path_distrib,'Editeur','icons'),['*.gif']) - copyfiles('../Editeur/icons',os.path.join(path_distrib,'Editeur','icons'),['*.png']) - copyfiles('../Editeur/Patrons/',os.path.join(path_distrib,'Editeur','Patrons'),['*.com*']) - - copyfiles('../Noyau',os.path.join(path_distrib,'Noyau'),['*.py']) - copyfiles('../Validation',os.path.join(path_distrib,'Validation'),['*.py']) - - - tarball= maketarball('dist',nom_distrib,nom_distrib) - try: - shutil.copy(tarball,dir_download) - except: - print "Repertoire de download inconnu : ",dir_download - - - -def make_dir(dir_cible): - if type(dir_cible) is not types.StringType: - raise "make_dir : dir_cible doit etre une string (%s)" % `dir_cible` - head,tail=os.path.split(dir_cible) - tails=[tail] - while head and tail and not os.path.isdir(head): - head,tail=os.path.split(head) - tails.insert(0, tail) - - for d in tails: - head = os.path.join(head, d) - if not os.path.isdir(head):os.mkdir(head) - - -def copyfiles(dir_origin,dir_cible,listfiles): - if not os.path.isdir(dir_cible):make_dir(dir_cible) - for glob_files in listfiles: - for file in glob.glob(os.path.join(dir_origin,glob_files)): - shutil.copy(file,dir_cible) - - -def maketarball(dir_trav,dir_cible,nom_tar): - prev=os.getcwd() - print prev - os.chdir(dir_trav) - os.system("tar -cf "+nom_tar+".tar "+dir_cible) - os.system("gzip -f9 "+nom_tar+".tar ") - os.chdir(prev) - return os.path.join(dir_trav,nom_tar+".tar.gz") - - -main() - diff --git a/OldCodes/Sep/style.py b/OldCodes/Sep/style.py deleted file mode 100644 index d4855725..00000000 --- a/OldCodes/Sep/style.py +++ /dev/null @@ -1,66 +0,0 @@ -# -*- coding: utf-8 -*- -""" -Pour modifier le style d'EFICAS il faut ajouter un fichier style.py qui contiendra les -informations sur le style voulu dans son repertoire Eficas_install. - -La methode la plus simple consiste à modifier directement les attributs de l'objet style dans le -fichier style.py d'Eficas_install. Exemple:: - - style.background='yellow' - -pour modifier la couleur du background. - -Il existe une autre méthode qui peut être utilisée quand on veut modifier plusieurs propriétés à la fois. - -Le fichier style.py doit définir une nouvelle classe qui dérive de la classe de base STYLE avec des attributs -de classe qui définiront le nouveau style (par exemple, si on veut modifier le background):: - - class STYLE(STYLE): - background='yellow' - -Il faut ensuite instancier cette classe, dans ce meme fichier, en donnant le nom style à l'objet cree:: - - style=STYLE() - -Tous les attributs de classe possibles sont visibles dans le module Editeur/basestyle.py:: - - background='gray90' - foreground='black' - entry_background='white' - list_background='white' - list_select_background='#00008b' - list_select_foreground='grey' - tooltip_background="yellow" - - standard = ("Helvetica",12) - standard_italique = ("Helvetica",12,'italic') - standard_gras = ("Helvetica",12,'bold') - standard_gras_souligne = ("Helvetica",12,'bold','underline') - - canvas = ('Helvetica',10) - canvas_italique = ('Helvetica',10,'italic') - canvas_gras = ("Helvetica",10,'bold') - canvas_gras_italique = ("Helvetica",12,'bold','italic') - - standard12 = ("Helvetica",14) - standard12_gras = ("Helvetica",14,'bold') - standard12_gras_italique = ( "Helvetica",14,'bold','italic') - - -Le fichier style.py contenu dans le répertoire Aster permet de spécifier des propriétés globales pour une installation. -Les modifications de style contenues dans ce fichier et dans le fichier style.py d'Eficas_install -sont prises en compte dans cet ordre. -""" - -p1=10 -p2=14 -f1="Helvetica" - -style.background='gray90' -style.foreground='black' -style.standard = (f1,p1) -style.standard_italique = (f1,p1,'italic') -style.standard_gras = (f1,p1,'bold') -style.canvas_italique = (f1,p1,'italic') -style.canvas_gras = (f1,p1,'bold') -style.statusfont = (f1,p2) diff --git a/OldCodes/UiQT4/CMakeLists.txt b/OldCodes/UiQT4/CMakeLists.txt deleted file mode 100644 index 5e60625a..00000000 --- a/OldCodes/UiQT4/CMakeLists.txt +++ /dev/null @@ -1,111 +0,0 @@ -# -*- coding: utf-8 -*- -# CONFIGURATION MANAGEMENT OF EDF VERSION -# ====================================================================== -# COPYRIGHT (C) 1991 - 2002, 2013 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# -# -# ====================================================================== - -set ( _PYFILES ) -macro ( eficas_compile_ui uifile ) - get_filename_component ( _file_we ${uifile} NAME_WE ) - set ( _pyfile "${_file_we}.py" ) - add_custom_command ( OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/${_pyfile} - COMMAND ${PYUIC4} ARGS -x -o ${CMAKE_CURRENT_BINARY_DIR}/${_pyfile} ${CMAKE_CURRENT_SOURCE_DIR}/${uifile} - MAIN_DEPENDENCY ${CMAKE_CURRENT_SOURCE_DIR}/${uifile} - COMMENT "Compiling ${uifile}" - ) - list ( APPEND _PYFILES ${CMAKE_CURRENT_BINARY_DIR}/${_pyfile} ) -endmacro ( eficas_compile_ui ) - -eficas_compile_ui ( myMain.ui ) -eficas_compile_ui ( desBaseWidget.ui ) -eficas_compile_ui ( desChoixCata.ui ) -eficas_compile_ui ( desChoixCode.ui ) -eficas_compile_ui ( desChoixCommandes.ui ) -eficas_compile_ui ( desChoixLangue.ui ) -eficas_compile_ui ( desRecherche.ui ) -eficas_compile_ui ( desRechercheCatalogue.ui ) -eficas_compile_ui ( desSelectVal.ui ) -eficas_compile_ui ( desViewTexte.ui ) -eficas_compile_ui ( desViewRegles.ui ) -eficas_compile_ui ( desVisu.ui ) -eficas_compile_ui ( desWidgetCreeParam.ui ) -eficas_compile_ui ( desWidgetCommande.ui ) -eficas_compile_ui ( desWidgetFormule.ui ) -eficas_compile_ui ( desWidgetOptionnel.ui ) -eficas_compile_ui ( desGroupeOptionnel.ui ) -eficas_compile_ui ( Tuple2.ui ) -eficas_compile_ui ( Tuple3.ui ) -# -eficas_compile_ui ( desWidgetBloc.ui ) -eficas_compile_ui ( desWidgetCB.ui ) -eficas_compile_ui ( desWidgetCommentaire.ui ) -eficas_compile_ui ( desWidgetDate.ui ) -eficas_compile_ui ( desWidgetFact.ui ) -eficas_compile_ui ( desWidgetFactPlie.ui ) -eficas_compile_ui ( desWidgetHeure.ui ) -eficas_compile_ui ( desWidgetInactif.ui ) -eficas_compile_ui ( desWidgetInformation.ui ) -eficas_compile_ui ( desWidgetMatrice.ui ) -eficas_compile_ui ( desWidgetParam.ui ) -eficas_compile_ui ( desWidgetPlusieursBase.ui ) -eficas_compile_ui ( desWidgetPlusieursInto.ui ) -eficas_compile_ui ( desWidgetPlusieursIntoOrdonne.ui ) -eficas_compile_ui ( desWidgetPlusieursTuple.ui ) -eficas_compile_ui ( desWidgetPlusieursPlie.ui ) -eficas_compile_ui ( desWidgetRadioButton.ui ) -eficas_compile_ui ( desWidget4a6RadioButton.ui ) -eficas_compile_ui ( desWidgetSDCOInto.ui ) -eficas_compile_ui ( desWidgetSimpBase.ui ) -eficas_compile_ui ( desWidgetSimpBool.ui ) -eficas_compile_ui ( desWidgetSimpComplexe.ui ) -eficas_compile_ui ( desWidgetSimpFichier.ui ) -eficas_compile_ui ( desWidgetSimpSalome.ui ) -eficas_compile_ui ( desWidgetSimpTxt.ui ) -eficas_compile_ui ( desWidgetTuple2.ui ) -eficas_compile_ui ( desWidgetTuple3.ui ) -eficas_compile_ui ( desWidgetUniqueSDCO.ui ) -eficas_compile_ui ( desWidgetVide.ui ) - -add_custom_target ( CompileUI ALL DEPENDS ${_PYFILES} - COMMENT "Built UI files" - ) - -install ( FILES ${_PYFILES} - DESTINATION ${CMAKE_INSTALL_PREFIX}/UiQT4 - ) - -# Rules to compile TS files -SET(TSFILES eficas_en.ts - eficas_fr.ts) - -SET(QMFILES) -FOREACH(input ${TSFILES}) - GET_FILENAME_COMPONENT(base ${input} NAME_WE) - SET(output ${CMAKE_CURRENT_BINARY_DIR}/${base}.qm) - SET(QMFILES ${QMFILES} ${output}) - ADD_CUSTOM_COMMAND(OUTPUT ${output} - COMMAND ${QT_LRELEASE_EXECUTABLE} ${CMAKE_CURRENT_SOURCE_DIR}/${input} -qm ${output} - MAIN_DEPENDENCY ${input}) -ENDFOREACH(input ${TSFILES}) - -ADD_CUSTOM_TARGET(CompileTS ALL DEPENDS ${QMFILES}) -INSTALL(FILES ${QMFILES} DESTINATION ${CMAKE_INSTALL_PREFIX}/UiQT4) - -### Local Variables: -### mode: cmake -### End: diff --git a/OldCodes/UiQT4/Newdoc.tgz b/OldCodes/UiQT4/Newdoc.tgz deleted file mode 100644 index 1ec9456b..00000000 Binary files a/OldCodes/UiQT4/Newdoc.tgz and /dev/null differ diff --git a/OldCodes/UiQT4/Tuple2.ui b/OldCodes/UiQT4/Tuple2.ui deleted file mode 100644 index fb7c2ab6..00000000 --- a/OldCodes/UiQT4/Tuple2.ui +++ /dev/null @@ -1,149 +0,0 @@ - - - Tuple2 - - - - 0 - 0 - 482 - 34 - - - - - 0 - 0 - - - - Form - - - - 0 - - - 0 - - - 1 - - - 0 - - - 0 - - - - - <html><head/><body><p><span style=" font-size:14pt;">(</span></p></body></html> - - - - - - - - 0 - 0 - - - - - 0 - 25 - - - - - 805 - 16777215 - - - - background:rgb(235,235,235); -border:0px; - - - - - - - - false - - - - - - - <html><head/><body><p><span style=" font-size:14pt;">,</span></p></body></html> - - - - - - - - 0 - 0 - - - - - 0 - 25 - - - - - 805 - 16777215 - - - - Qt::StrongFocus - - - background:rgb(235,235,235); -border:0px; - - - - - - - <html><head/><body><p><span style=" font-size:14pt;">)</span></p></body></html> - - - - - - - Qt::Horizontal - - - QSizePolicy::Preferred - - - - 5 - 20 - - - - - - - - - LECustomTuple - QLineEdit -
        gereListe.h
        -
        -
        - - -
        diff --git a/OldCodes/UiQT4/Tuple3.ui b/OldCodes/UiQT4/Tuple3.ui deleted file mode 100644 index 10c44979..00000000 --- a/OldCodes/UiQT4/Tuple3.ui +++ /dev/null @@ -1,164 +0,0 @@ - - - Tuple3 - - - - 0 - 0 - 880 - 33 - - - - Form - - - - 0 - - - 0 - - - - - <html><head/><body><p><span style=" font-size:14pt;">(</span></p></body></html> - - - - - - - - 0 - 0 - - - - - 0 - 25 - - - - - 805 - 16777215 - - - - background:rgb(235,235,235); -border:0px; - - - - - false - - - - - - - <html><head/><body><p><span style=" font-size:14pt;">,</span></p></body></html> - - - - - - - - 0 - 0 - - - - - 0 - 25 - - - - - 805 - 16777215 - - - - Qt::StrongFocus - - - background:rgb(235,235,235); -border:0px; - - - - - - - <html><head/><body><p><span style=" font-size:14pt;">,</span></p></body></html> - - - - - - - - 0 - 0 - - - - - 0 - 25 - - - - - 805 - 16777215 - - - - Qt::StrongFocus - - - background:rgb(235,235,235); -border:0px; - - - - - - - <html><head/><body><p><span style=" font-size:14pt;">)</span></p></body></html> - - - - - - - Qt::Horizontal - - - - 123 - 20 - - - - - - - - - LECustomTuple - QLineEdit -
        gereListe.h
        -
        -
        - - -
        diff --git a/OldCodes/UiQT4/desBaseWidget.ui b/OldCodes/UiQT4/desBaseWidget.ui deleted file mode 100644 index 43289173..00000000 --- a/OldCodes/UiQT4/desBaseWidget.ui +++ /dev/null @@ -1,92 +0,0 @@ - - - baseWidget - - - - 0 - 0 - 1038 - 557 - - - - - 0 - 0 - - - - - 0 - 0 - - - - DMacro - - - - - - - 0 - - - - - Qt::Horizontal - - - 3 - - - - background:rgb(247,247,247); - - - - - - 0 - - - - - - - 0 - - - - - - - - - - 0 - 0 - - - - - 0 - 0 - - - - - - - - - - - - - - qPixmapFromMimeSource - - - diff --git a/OldCodes/UiQT4/desChoixCata.ui b/OldCodes/UiQT4/desChoixCata.ui deleted file mode 100644 index 39a16c5a..00000000 --- a/OldCodes/UiQT4/desChoixCata.ui +++ /dev/null @@ -1,201 +0,0 @@ - - - DChoixCata - - - - 0 - 0 - 466 - 206 - - - - Choix d'une version du code Aster - - - true - - - - - - - - - 0 - 0 - - - - <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> -<html><head><meta name="qrichtext" content="1" /><style type="text/css"> -p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal;"> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:11pt;">2 versions sont disponibles</span></p></body></html> - - - false - - - - - - - Qt::Horizontal - - - - 40 - 20 - - - - - - - - - - Qt::Vertical - - - - 20 - 45 - - - - - - - - true - - - - 400 - 41 - - - - - 150 - 16777215 - - - - - - - - Qt::Vertical - - - - 20 - 45 - - - - - - - - - - Qt::Horizontal - - - - 40 - 20 - - - - - - - - - 140 - 40 - - - - - - - background-color:rgb(104,110,149); -color :white; -border-radius : 12px - - - - &Cancel - - - - - - true - - - - - - - Qt::Horizontal - - - QSizePolicy::Fixed - - - - 40 - 20 - - - - - - - - - 140 - 40 - - - - Validate choice - - - background-color:rgb(104,110,149); -color :white; -border-radius : 12px - - - - - &OK - - - - - - true - - - true - - - - - - - - - qPixmapFromMimeSource - - - diff --git a/OldCodes/UiQT4/desChoixCode.ui b/OldCodes/UiQT4/desChoixCode.ui deleted file mode 100644 index 33ea0f8b..00000000 --- a/OldCodes/UiQT4/desChoixCode.ui +++ /dev/null @@ -1,155 +0,0 @@ - - - ChoixCode - - - - 0 - 0 - 555 - 332 - - - - - 0 - 0 - - - - Choix du code - - - - - - - 0 - 0 - - - - - 0 - 30 - - - - Veuillez choisir un code : - - - - - - - - 0 - 0 - - - - - - - - - - - QLayout::SetFixedSize - - - - - Qt::Horizontal - - - - 40 - 20 - - - - - - - - - 140 - 40 - - - - - - - background-color:rgb(104,110,149); -color :white; -border-radius : 12px - - - - &Cancel - - - - - - true - - - - - - - Qt::Horizontal - - - QSizePolicy::Fixed - - - - 40 - 20 - - - - - - - - - 140 - 40 - - - - Validate choice - - - background-color:rgb(104,110,149); -color :white; -border-radius : 12px - - - - - &OK - - - - - - true - - - true - - - - - - - - - - diff --git a/OldCodes/UiQT4/desChoixCommandes.ui b/OldCodes/UiQT4/desChoixCommandes.ui deleted file mode 100644 index be67512d..00000000 --- a/OldCodes/UiQT4/desChoixCommandes.ui +++ /dev/null @@ -1,449 +0,0 @@ - - - ChoixCommandes - - - - 0 - 0 - 1244 - 652 - - - - - 0 - 0 - - - - - 505 - 0 - - - - DMacro - - - background-color : rgb(248,247,246) - - - - 0 - - - 2 - - - - - - 0 - 0 - - - - - 0 - 130 - - - - - 16777215 - 130 - - - - background-color:rgb(224,223,222) - - - QFrame::NoFrame - - - QFrame::Raised - - - - - - 0 - - - QLayout::SetFixedSize - - - - - - 0 - 0 - - - - <html><head/><body><p align="center"><span style=" text-decoration: underline;">Affichage</span></p></body></html> - - - - - - - affiche les commandes par ordre alphabetique - - - Alphabetique - - - - - - - affiche les commandes selon les thèmes - - - Ordre de la modélisation - - - - - - - affiche les commandes selon les thèmes - - - Par Groupe - - - - - - - - - Qt::Horizontal - - - - 109 - 20 - - - - - - - - 5 - - - - - - 0 - 0 - - - - - 141 - 25 - - - - - 16777215 - 25 - - - - selectionne les mots qui CONTIENNENT l expression - - - QFrame::Box - - - QFrame::Raised - - - 1 - - - <html><head/><body><p align="center">Filtre Commande</p></body></html> - - - false - - - - - - - Qt::Vertical - - - QSizePolicy::Fixed - - - - 20 - 2 - - - - - - - - - 0 - 0 - - - - - 195 - 30 - - - - filter commands - - - background-color : rgb(248,247,246) - - - false - - - - - - - QLayout::SetMinimumSize - - - - - - 0 - 0 - - - - Sensible à la casse - - - false - - - - - - - Qt::Horizontal - - - - 40 - 20 - - - - - - - - - 0 - 0 - - - - - 100 - 30 - - - - - 70 - 40 - - - - ré-affiche toutes les commandes - - - background-color:rgb(104,110,149); -color :white; -border-radius : 12px - - - - Effacer - - - - - - - - - - - Qt::Horizontal - - - - 108 - 20 - - - - - - - - - - - - - 21 - 31 - - - - - 21 - 31 - - - - Qt::ClickFocus - - - affiche les régles de validité - - - border : 0px - - - ... - - - - ../Editeur/icons/lettreRblanc30.png../Editeur/icons/lettreRblanc30.png - - - - 21 - 31 - - - - - - - - Règles de construction - - - - - - - - - Qt::Vertical - - - - 168 - 13 - - - - - - - - - - Qt::Horizontal - - - - 173 - 20 - - - - - - - - - - - - - - QFrame::NoFrame - - - Qt::ScrollBarAsNeeded - - - true - - - - - 0 - 0 - 1240 - 518 - - - - - 0 - 0 - - - - - 0 - - - 0 - - - 2 - - - 0 - - - 0 - - - - - 0 - - - - - - - - - - - qPixmapFromMimeSource - - - diff --git a/OldCodes/UiQT4/desChoixLangue.ui b/OldCodes/UiQT4/desChoixLangue.ui deleted file mode 100644 index 7beb2787..00000000 --- a/OldCodes/UiQT4/desChoixLangue.ui +++ /dev/null @@ -1,125 +0,0 @@ - - - ChoixLangue - - - - 0 - 0 - 191 - 119 - - - - - 0 - 0 - - - - Langue - - - - - - - 0 - 0 - - - - - - - - 0 - - - 0 - - - 0 - - - 4 - - - 0 - - - - - Français - - - - - - - English - - - - - rbEnglish - rbFrancais - - - - - - QLayout::SetFixedSize - - - - - Qt::Horizontal - - - - 20 - 20 - - - - - - - - - 60 - 30 - - - - Validate choice - - - background-color:rgb(104,110,149); -color :white; -border-radius : 12px - - - - - &OK - - - - - - true - - - true - - - - - - - - - - diff --git a/OldCodes/UiQT4/desGroupeOptionnel.ui b/OldCodes/UiQT4/desGroupeOptionnel.ui deleted file mode 100644 index c40c4c22..00000000 --- a/OldCodes/UiQT4/desGroupeOptionnel.ui +++ /dev/null @@ -1,130 +0,0 @@ - - - groupeOptionnel - - - - 0 - 0 - 400 - 300 - - - - Form - - - - - - - 0 - 0 - - - - QFrame::Box - - - QFrame::Raised - - - - - - - 0 - 0 - - - - - 0 - 31 - - - - QFrame::NoFrame - - - QFrame::Raised - - - <html><head/><body><p><span style=" color:#0000ff;">commande </span></p></body></html> - - - - - - - Qt::Horizontal - - - - 1037 - 20 - - - - - - - - - - - - 0 - 0 - - - - background : rgb(247,247,247) - - - QFrame::NoFrame - - - 0 - - - true - - - - - 0 - 0 - 382 - 225 - - - - - 0 - 0 - - - - - - - Qt::Vertical - - - - 20 - 75 - - - - - - - - - - - - - diff --git a/OldCodes/UiQT4/desRecherche.ui b/OldCodes/UiQT4/desRecherche.ui deleted file mode 100644 index a0a44f98..00000000 --- a/OldCodes/UiQT4/desRecherche.ui +++ /dev/null @@ -1,75 +0,0 @@ - - - desRecherche - - - - 0 - 0 - 525 - 55 - - - - Rechercher dans le JDC - - - Next - - - - - 0 - 10 - 411 - 41 - - - - - 0 - 0 - - - - background:rgb(240,240,240) - - - - - true - - - - 420 - 10 - 101 - 41 - - - - - 0 - 0 - - - - background-color:rgb(104,110,149); -color :white; -border-radius : 12px - - - - Suivant - - - false - - - true - - - - - - diff --git a/OldCodes/UiQT4/desRechercheCatalogue.ui b/OldCodes/UiQT4/desRechercheCatalogue.ui deleted file mode 100644 index ef529e25..00000000 --- a/OldCodes/UiQT4/desRechercheCatalogue.ui +++ /dev/null @@ -1,85 +0,0 @@ - - - desRechercheCatalogue - - - - 0 - 0 - 817 - 359 - - - - Rechercher dans le Catalogue - - - - - - - - - 105 - 0 - - - - - 105 - 22 - - - - Mot à charcher - - - - - - - - - - - - Généalogie - - - - - - - - 419 - 91 - - - - - - - - - - Documentation - - - - - - - - 419 - 101 - - - - - - - - - - - diff --git a/OldCodes/UiQT4/desSelectVal.ui b/OldCodes/UiQT4/desSelectVal.ui deleted file mode 100644 index 125bae0e..00000000 --- a/OldCodes/UiQT4/desSelectVal.ui +++ /dev/null @@ -1,268 +0,0 @@ - - - DSelVal - - - - 0 - 0 - 635 - 744 - - - - - 0 - 0 - - - - Sélection de valeurs - - - background:rgb(235,235,235) - - - - 0 - - - 0 - - - - - - 0 - 400 - - - - background:rgb(250,250,250) - - - - - - - Qt::Vertical - - - QSizePolicy::Fixed - - - - 20 - 10 - - - - - - - - - - - 0 - 0 - - - - - 280 - 150 - - - - Separateur - - - - 15 - - - 0 - - - - - Qt::Vertical - - - QSizePolicy::Fixed - - - - 20 - 7 - - - - - - - - 0 - - - QLayout::SetFixedSize - - - - - - 0 - 0 - - - - espace - - - true - - - - - - - virgule - - - - - - - point-virgule - - - - - - - - - - - - Qt::Horizontal - - - - 40 - 20 - - - - - - - - 0 - - - - - - 23 - 43 - - - - Qt::Vertical - - - QSizePolicy::Fixed - - - - 20 - 40 - - - - - - - - - 0 - 0 - - - - - 200 - 40 - - - - - 200 - 40 - - - - background-color:rgb(104,110,149); -color :white; -border-radius : 12px - - - - Importer Tout - - - - - - - - 0 - 0 - - - - - 200 - 40 - - - - - 200 - 40 - - - - background-color:rgb(104,110,149); -color :white; -border-radius : 12px - - - - Ajouter Selection - - - - - - - - - - - - 16777215 - 31 - - - - - - - - qPixmapFromMimeSource - - - diff --git a/OldCodes/UiQT4/desViewRegles.ui b/OldCodes/UiQT4/desViewRegles.ui deleted file mode 100644 index 1742aa92..00000000 --- a/OldCodes/UiQT4/desViewRegles.ui +++ /dev/null @@ -1,72 +0,0 @@ - - - viewRegles - - - - 0 - 0 - 283 - 250 - - - - Dialog - - - - - - Fermer - - - - - - - QFrame::NoFrame - - - true - - - - - 0 - 0 - 265 - 194 - - - - - 0 - - - 0 - - - - - - - - - - - - Qt::Horizontal - - - - 171 - 20 - - - - - - - - - diff --git a/OldCodes/UiQT4/desViewTexte.ui b/OldCodes/UiQT4/desViewTexte.ui deleted file mode 100644 index 6cfa950e..00000000 --- a/OldCodes/UiQT4/desViewTexte.ui +++ /dev/null @@ -1,53 +0,0 @@ - - dView - - - - 0 - 0 - 400 - 322 - - - - Dialog - - - - - - - - - Qt::Horizontal - - - - 209 - 20 - - - - - - - - Fermer - - - - - - - Sauver - - - - - view - bclose - bsave - - - - diff --git a/OldCodes/UiQT4/desVisu.ui b/OldCodes/UiQT4/desVisu.ui deleted file mode 100644 index 6f25807a..00000000 --- a/OldCodes/UiQT4/desVisu.ui +++ /dev/null @@ -1,39 +0,0 @@ - - - DVisu - - - - 0 - 0 - 501 - 61 - - - - Visualisation Include Materiau - - - - 0 - - - 0 - - - - - QFrame::NoFrame - - - QFrame::Plain - - - - - - - qPixmapFromMimeSource - - - diff --git a/OldCodes/UiQT4/desWidget4a6RadioButton.ui b/OldCodes/UiQT4/desWidget4a6RadioButton.ui deleted file mode 100644 index 71780e85..00000000 --- a/OldCodes/UiQT4/desWidget4a6RadioButton.ui +++ /dev/null @@ -1,376 +0,0 @@ - - - Widget4a6RadioButton - - - - 0 - 0 - 949 - 73 - - - - - 0 - 0 - - - - - 0 - 0 - - - - - 16777215 - 16777215 - - - - Form - - - - 0 - - - 0 - - - 2 - - - 0 - - - 2 - - - - - 0 - - - - - 0 - - - QLayout::SetFixedSize - - - - - Qt::Horizontal - - - QSizePolicy::Fixed - - - - 21 - 20 - - - - - - - - - 21 - 25 - - - - - 21 - 25 - - - - Qt::ClickFocus - - - Affiche le rapport de validation du mot-clef - - - border : 0px - - - ... - - - - ../Editeur/icons/ast-green-ball.png../Editeur/icons/ast-green-ball.png - - - - 25 - 25 - - - - - - - - - - Qt::Vertical - - - - 20 - 5 - - - - - - - - - - - 0 - 0 - - - - - 300 - 25 - - - - - 178 - 16777215 - - - - QFrame::NoFrame - - - <html><head/><body><p>aaa</p><p>dqsklmdqm</p></body></html> - - - false - - - Qt::AlignLeading|Qt::AlignLeft|Qt::AlignTop - - - - - - - QFrame::Box - - - - 1 - - - 0 - - - 1 - - - 0 - - - 1 - - - 0 - - - - - - 0 - 0 - - - - RadioButton - - - - - - - - 0 - 0 - - - - RadioButton - - - - - - - RadioButton - - - - - - - - 0 - 0 - - - - RadioButton - - - - - - - - 0 - 0 - - - - RadioButton - - - - - - - - 0 - 0 - - - - RadioButton - - - - - - - - - - - - Qt::Horizontal - - - QSizePolicy::Maximum - - - - 10 - 20 - - - - - - - - Qt::Vertical - - - - 17 - 40 - - - - - - - - - - - - - 25 - 25 - - - - - 25 - 25 - - - - Qt::StrongFocus - - - Détruit le mot-clef - - - border : 0px - - - ... - - - - ../Editeur/icons/deleteRond.png../Editeur/icons/deleteRond.png - - - - 25 - 25 - - - - - - - - Qt::Vertical - - - - 20 - 40 - - - - - - - - - - - MonBoutonValide - QToolButton -
        monBoutonValide.h
        -
        - - MonLabelClic - QLabel -
        monLabelClic.h
        -
        -
        - - radioButton_1 - radioButton_4 - RBPoubelle - - - -
        diff --git a/OldCodes/UiQT4/desWidgetBloc.ui b/OldCodes/UiQT4/desWidgetBloc.ui deleted file mode 100644 index 439dd60f..00000000 --- a/OldCodes/UiQT4/desWidgetBloc.ui +++ /dev/null @@ -1,45 +0,0 @@ - - - WidgetBloc - - - - 0 - 0 - 1033 - 25 - - - - Form - - - QGroupBox { - border: 1px solid gray; - border-radius: 5px; - margin-top: 1ex; /* leave space at the top for the title */ - } - - QGroupBox::title { - padding: 0 3px; - } - - - - 0 - - - - - 0 - - - 5 - - - - - - - - diff --git a/OldCodes/UiQT4/desWidgetCB.ui b/OldCodes/UiQT4/desWidgetCB.ui deleted file mode 100644 index c5f16d2c..00000000 --- a/OldCodes/UiQT4/desWidgetCB.ui +++ /dev/null @@ -1,314 +0,0 @@ - - - WidgetCB - - - - 0 - 0 - 739 - 63 - - - - - 0 - 0 - - - - - 0 - 0 - - - - - 1493 - 85 - - - - Form - - - QComboBox{combobox-popup:0;}; - - - - 0 - - - 0 - - - 2 - - - 0 - - - 1 - - - - - 0 - - - - - 0 - - - QLayout::SetFixedSize - - - - - Qt::Horizontal - - - QSizePolicy::Fixed - - - - 21 - 20 - - - - - - - - - 21 - 25 - - - - - 21 - 25 - - - - Qt::ClickFocus - - - Affiche le rapport de validation du mot-clef - - - border : 0px - - - ... - - - - ../Editeur/icons/ast-green-ball.png../Editeur/icons/ast-green-ball.png - - - - 25 - 25 - - - - - - - - - - Qt::Vertical - - - - 20 - 5 - - - - - - - - - - - 0 - 0 - - - - - 300 - 25 - - - - - 178 - 16777215 - - - - QFrame::NoFrame - - - <html><head/><body><p>aaa</p><p>dqsklmdqm</p></body></html> - - - false - - - Qt::AlignLeading|Qt::AlignLeft|Qt::AlignTop - - - - - - - 0 - - - - - 0 - - - - - - 0 - 0 - - - - - 361 - 25 - - - - - - - - - - QComboBox { - background:rgb(235,235,235); - } -/*QComboBox: on { - font : italic - } -background:rgb(235,235,235); -border:0px; - - -QComboBox:!editable:on, QComboBox::drop-down:editable:on { -background: black; - font : italic 14px - } -QComboBox:on { - font : italic 20px; - background: red ; -}/* - - - - 100 - - - false - - - - - - - Qt::Horizontal - - - QSizePolicy::Expanding - - - - 301 - 20 - - - - - - - - - 21 - 25 - - - - - 21 - 25 - - - - Détruit le mot-clef - - - border : 0px - - - ... - - - - ../Editeur/icons/deleteRond.png../Editeur/icons/deleteRond.png - - - - 25 - 25 - - - - - - - - - - Qt::Vertical - - - - 20 - 5 - - - - - - - - - - - MonBoutonValide - QToolButton -
        monBoutonValide.h
        -
        - - MonLabelClic - QLabel -
        monLabelClic.h
        -
        -
        - - -
        diff --git a/OldCodes/UiQT4/desWidgetCommande.ui b/OldCodes/UiQT4/desWidgetCommande.ui deleted file mode 100644 index 577965c1..00000000 --- a/OldCodes/UiQT4/desWidgetCommande.ui +++ /dev/null @@ -1,715 +0,0 @@ - - - WidgetCommande - - - - 0 - 0 - 1353 - 596 - - - - - 0 - 0 - - - - - 0 - 0 - - - - DCommandeUnique - - - - - - background-color : rgb(224,223,222); -font : 'times' 9px - - - - 0 - - - 0 - - - - - - 0 - 0 - - - - - 0 - 130 - - - - - 16777215 - 130 - - - - background-color:rgb(224,223,222) - - - - 2 - - - 3 - - - 2 - - - - - - 0 - 0 - - - - QFrame::Box - - - QFrame::Raised - - - - 0 - - - - - Qt::Horizontal - - - QSizePolicy::Fixed - - - - 13 - 20 - - - - - - - - - 17 - 31 - - - - - 21 - 31 - - - - Qt::ClickFocus - - - Affiche le rapport de validité de la commande - - - border : 0px - - - ... - - - - ../../../.designer/Editeur/icons/ast-green-ball.png../../../.designer/Editeur/icons/ast-green-ball.png - - - - 21 - 31 - - - - - - - - Qt::Horizontal - - - QSizePolicy::Fixed - - - - 13 - 20 - - - - - - - - - 0 - 0 - - - - - 150 - 31 - - - - QFrame::NoFrame - - - QFrame::Raised - - - <html><head/><body><p><span style=" color:#0000ff;">commande </span></p></body></html> - - - - - - - Qt::Horizontal - - - QSizePolicy::Maximum - - - - 2 - 40 - - - - - - - - - 0 - 0 - - - - Nom de l'objet. Seuls, les objets valides peuvent être nommés - - - QLineEdit { - border: 2px solid gray; - border-radius: 10px; - padding: 0 8px; - background: darkgray; - /* selection-background-color: darkgray;*/ - } -QLineEdit:disabled -{ - background: lightgray; -} -/*read-only { - background: lightblue;*/ - - - false - - - - - - - Qt::Horizontal - - - - 108 - 20 - - - - - - - - Qt::Horizontal - - - QSizePolicy::Ignored - - - - 2 - 40 - - - - - - - - 4 - - - QLayout::SetFixedSize - - - - - - 21 - 31 - - - - - 21 - 31 - - - - Qt::ClickFocus - - - Lance un script associé à la commande - - - border : 0px - - - ... - - - - ../../../.designer/Editeur/icons/roue.png../../../.designer/Editeur/icons/roue.png - - - - 21 - 31 - - - - - - - - - 0 - 0 - - - - - 0 - 38 - - - - true - - - - - - - - 21 - 31 - - - - - 31 - 31 - - - - Qt::ClickFocus - - - ouvre un navigateur sur l'aide contextuelle - - - border : 0px - - - ... - - - - ../../../.designer/Editeur/icons/point-interrogation.png../../../.designer/Editeur/icons/point-interrogation.png - - - - 21 - 31 - - - - - - - - - 21 - 31 - - - - - 31 - 31 - - - - Qt::ClickFocus - - - affiche les régles de validité - - - border : 0px - - - ... - - - - ../../../.designer/Editeur/icons/lettreRblanc30.png../../../.designer/Editeur/icons/lettreRblanc30.png - - - - 21 - 31 - - - - - - - - - - Qt::Horizontal - - - QSizePolicy::Fixed - - - - 13 - 20 - - - - - - - - - 21 - 31 - - - - - 21 - 31 - - - - Qt::ClickFocus - - - Détruit la commande - - - border : 0px - - - ... - - - - ../../../.designer/Editeur/icons/deleteRond.png../../../.designer/Editeur/icons/deleteRond.png - - - - 21 - 31 - - - - - - RBValide - labelNomCommande - LENom - horizontalSpacer_3 - horizontalSpacer_4 - RBPoubelle - horizontalSpacer_5 - horizontalSpacer_7 - - - - - - - 0 - 0 - - - - - 160 - 40 - - - - Qt::ClickFocus - - - Affiche les commandes possibles - - - background-color:rgb(104,110,149); -color :white; -border-radius : 12px - - - - &Commandes - - - Shift+A, Alt+A, Alt+A, Alt+A - - - true - - - true - - - - - - - TextLabel - - - - - - - 0 - - - - - - 0 - 0 - - - - - 60 - 24 - - - - - 60 - 24 - - - - Qt::ClickFocus - - - Affiche le formulaire de la commande précédente - - - background-color:rgb(104,110,149); -color :white; -border-radius : 12px - - - - << - - - Shift+A, Alt+A, Alt+A, Alt+A - - - true - - - true - - - - - - - - 0 - 0 - - - - - 60 - 24 - - - - - 60 - 24 - - - - Qt::ClickFocus - - - Affiche le formulaire de la commande suivante - - - background-color:rgb(104,110,149); -color :white; -border-radius : 12px - - - - >> - - - Shift+A, Alt+A, Alt+A, Alt+A - - - true - - - true - - - - - - - Qt::Vertical - - - - 20 - 0 - - - - - - - - - - - - - - 0 - 81 - - - - background : rgb(247,247,247) - - - - - - QFrame::NoFrame - - - Qt::ScrollBarAsNeeded - - - Qt::ScrollBarAsNeeded - - - true - - - - - 0 - 0 - 1353 - 466 - - - - - - - 1 - - - - - - - Qt::Vertical - - - - 20 - 5 - - - - - - - - - - - - qPixmapFromMimeSource - - - MonBoutonValide - QToolButton -
        monBoutonValide.h
        -
        - - MonLabelClic - QLabel -
        monLabelClic.h
        -
        -
        - - LENom - - - -
        diff --git a/OldCodes/UiQT4/desWidgetCommentaire.ui b/OldCodes/UiQT4/desWidgetCommentaire.ui deleted file mode 100644 index 6a452e8b..00000000 --- a/OldCodes/UiQT4/desWidgetCommentaire.ui +++ /dev/null @@ -1,540 +0,0 @@ - - - WidgetCommentaire - - - - 0 - 0 - 847 - 453 - - - - - 0 - 0 - - - - - 0 - 0 - - - - DCommandeUnique - - - - - - background-color : rgb(224,223,222); -font : 'times' 9px - - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - - - - 0 - 0 - - - - - 0 - 130 - - - - - 16777215 - 130 - - - - background-color:rgb(224,223,222) - - - QFrame::NoFrame - - - QFrame::Raised - - - - 0 - - - 0 - - - 0 - - - 0 - - - - - 6 - - - - - - - - 0 - 0 - - - - QFrame::Box - - - QFrame::Raised - - - - 0 - - - - - Qt::Horizontal - - - QSizePolicy::Fixed - - - - 13 - 20 - - - - - - - - - 17 - 31 - - - - - 21 - 31 - - - - Qt::ClickFocus - - - Affiche le rapport de validité de la commande - - - border : 0px - - - ... - - - - ../Editeur/icons/ast-green-ball.png../Editeur/icons/ast-green-ball.png - - - - 21 - 31 - - - - - - - - Qt::Horizontal - - - QSizePolicy::Fixed - - - - 13 - 20 - - - - - - - - - 0 - 0 - - - - - 150 - 31 - - - - QFrame::NoFrame - - - QFrame::Raised - - - <html><head/><body><p>Commentaire</p></body></html> - - - - - - - Qt::Horizontal - - - QSizePolicy::Maximum - - - - 2 - 40 - - - - - - - - Qt::Horizontal - - - QSizePolicy::Ignored - - - - 2 - 40 - - - - - - - - Qt::Horizontal - - - QSizePolicy::Fixed - - - - 13 - 20 - - - - - - - - - 21 - 31 - - - - - 21 - 31 - - - - Qt::ClickFocus - - - Détruit la commande - - - border : 0px - - - ... - - - - ../Editeur/icons/deleteRond.png../Editeur/icons/deleteRond.png - - - - 21 - 31 - - - - - - - - - - - - - 8 - - - 15 - - - - - - 0 - 0 - - - - - 160 - 31 - - - - Qt::ClickFocus - - - Affiche les commandes possibles - - - background-color:rgb(104,110,149); -color :white; -border-radius : 12px - - - - &Commandes - - - Shift+A, Alt+A, Alt+A, Alt+A - - - true - - - true - - - - - - - - - - 0 - 0 - - - - - 60 - 24 - - - - - 60 - 24 - - - - Qt::ClickFocus - - - Affiche le formulaire de la commande précédente - - - background-color:rgb(104,110,149); -color :white; -border-radius : 12px - - - - << - - - Shift+A, Alt+A, Alt+A, Alt+A - - - true - - - true - - - - - - - - 0 - 0 - - - - - 60 - 24 - - - - - 60 - 24 - - - - Qt::ClickFocus - - - Affiche le formulaire de la commande suivante - - - background-color:rgb(104,110,149); -color :white; -border-radius : 12px - - - - >> - - - Shift+A, Alt+A, Alt+A, Alt+A - - - true - - - true - - - - - - - - - - - - - - - - - 0 - 0 - - - - - - - QFrame::NoFrame - - - Qt::ScrollBarAsNeeded - - - true - - - - - 0 - 0 - 847 - 323 - - - - - 0 - - - 4 - - - 0 - - - 4 - - - 0 - - - - - background : rgb(247,247,247) - - - - - - - Qt::Vertical - - - - 20 - 32 - - - - - - - - - - - - qPixmapFromMimeSource - - - MonBoutonValide - QToolButton -
        monBoutonValide.h
        -
        -
        - - scrollAreaCommandes - - - -
        diff --git a/OldCodes/UiQT4/desWidgetCreeParam.ui b/OldCodes/UiQT4/desWidgetCreeParam.ui deleted file mode 100644 index cbcdb1c3..00000000 --- a/OldCodes/UiQT4/desWidgetCreeParam.ui +++ /dev/null @@ -1,245 +0,0 @@ - - - desWidgetCreeParam - - - - 0 - 0 - 728 - 530 - - - - Gestion des Paramètres - - - - - - - 701 - 291 - - - - QFrame::NoFrame - - - true - - - - - 0 - 0 - 710 - 349 - - - - - 0 - 0 - - - - - 0 - - - 0 - - - - - - 0 - 0 - - - - - 701 - 291 - - - - alternate-background-color:rgb(235,235,235); -background-color: rgb(247,247,247); - - - - QFrame::NoFrame - - - QFrame::Raised - - - true - - - QAbstractItemView::SingleSelection - - - - - - - - - - - Qt::Vertical - - - QSizePolicy::Fixed - - - - 20 - 20 - - - - - - - - - 701 - 131 - - - - background:rgb(247,247,247) - - - QFrame::StyledPanel - - - QFrame::Raised - - - - - 30 - 40 - 531 - 76 - - - - - 12 - - - - - - 231 - 31 - - - - background:rgb(235,235,235); -border:0px; - - - false - - - - - - - <html><head/><body><p>Nom: </p></body></html> - - - false - - - - - - - - 231 - 31 - - - - background:rgb(235,235,235); -border:0px; - - - false - - - - - - - <html><head/><body><p>Valeur: </p></body></html> - - - false - - - - - - - - - 30 - 10 - 531 - 22 - - - - - - - - 0 - 0 - - - - <html><head/><body><p><span style=" text-decoration: underline;">Créer un paramètre</span></p></body></html> - - - false - - - - - - - Qt::Horizontal - - - - 288 - 20 - - - - - - - - - - - - lineEditNom - lineEditVal - scrollArea - LBParam - - - - diff --git a/OldCodes/UiQT4/desWidgetDate.ui b/OldCodes/UiQT4/desWidgetDate.ui deleted file mode 100644 index 873ab4f7..00000000 --- a/OldCodes/UiQT4/desWidgetDate.ui +++ /dev/null @@ -1,283 +0,0 @@ - - - WidgetDate - - - - 0 - 0 - 736 - 62 - - - - - 0 - 0 - - - - - 0 - 0 - - - - Form - - - - 0 - - - 0 - - - 1 - - - 0 - - - 1 - - - - - 0 - - - - - 0 - - - QLayout::SetFixedSize - - - - - Qt::Horizontal - - - QSizePolicy::Fixed - - - - 21 - 20 - - - - - - - - - 21 - 25 - - - - - 21 - 25 - - - - Qt::ClickFocus - - - Affiche le rapport de validation du mot-clef - - - border : 0px - - - ... - - - - ../Editeur/icons/ast-green-ball.png../Editeur/icons/ast-green-ball.png - - - - 25 - 25 - - - - - - - - - - Qt::Vertical - - - - 20 - 5 - - - - - - - - - - - 0 - 0 - - - - - 300 - 25 - - - - - 178 - 16777215 - - - - QFrame::NoFrame - - - <html><head/><body><p>aaa</p><p>dqsklmdqm</p></body></html> - - - false - - - Qt::AlignLeading|Qt::AlignLeft|Qt::AlignTop - - - - - - - - - - - - - - - - - - Qt::Horizontal - - - QSizePolicy::Preferred - - - - 20 - 20 - - - - - - - - - - - Qt::Horizontal - - - - 411 - 20 - - - - - - - - - - - - - - - - 21 - 25 - - - - - 21 - 25 - - - - Qt::ClickFocus - - - Détruit le mot-clef - - - border : 0px - - - ... - - - - ../Editeur/icons/deleteRond.png../Editeur/icons/deleteRond.png - - - - 25 - 25 - - - - - - - - - - Qt::Vertical - - - - 20 - 5 - - - - - - - - - - - MonBoutonValide - QToolButton -
        monBoutonValide.h
        -
        - - MonLabelClic - QLabel -
        monLabelClic.h
        -
        -
        - - -
        diff --git a/OldCodes/UiQT4/desWidgetFact.ui b/OldCodes/UiQT4/desWidgetFact.ui deleted file mode 100644 index 28f196af..00000000 --- a/OldCodes/UiQT4/desWidgetFact.ui +++ /dev/null @@ -1,444 +0,0 @@ - - - WidgetFact - - - - 0 - 0 - 949 - 61 - - - - Qt::StrongFocus - - - Form - - - QGroupBox { - border: 1px solid gray; - border-radius: 5px; - margin-top: 1ex; /* leave space at the top for the title */ - } - - QGroupBox::title { - padding: 0 3px; - } - - - - 0 - - - 0 - - - 2 - - - 0 - - - 0 - - - - - 0 - - - - - Qt::Vertical - - - QSizePolicy::Fixed - - - - 20 - 5 - - - - - - - - - 21 - 15 - - - - - 21 - 21 - - - - border : 0px - - - ... - - - - ../Editeur/icons/minusnode.png../Editeur/icons/minusnode.png - - - - 21 - 21 - - - - - - - - - - Qt::Vertical - - - - - - - - - - - 0 - - - - - - 17 - 25 - - - - - 21 - 25 - - - - border : 0px - - - ... - - - - ../Editeur/icons/ast-green-ball.png../Editeur/icons/ast-green-ball.png - - - - 21 - 25 - - - - - - - - 0 - - - - - - 0 - 0 - - - - - 0 - 25 - - - - - 12121213 - 25 - - - - <html><head/><body><p><span style=" font-style:italic;">TextLabel</span></p></body></html> - - - - - - - Qt::Horizontal - - - QSizePolicy::Fixed - - - - 13 - 20 - - - - - - - - - 0 - 0 - - - - - 200 - 0 - - - - - 1500 - 16 - - - - Qt::Horizontal - - - - - - - Qt::Horizontal - - - QSizePolicy::Fixed - - - - 13 - 20 - - - - - - - - 0 - - - QLayout::SetFixedSize - - - - - - 21 - 31 - - - - - 21 - 31 - - - - Qt::ClickFocus - - - Lance un script associé à la commande - - - border : 0px - - - ... - - - - ../Editeur/icons/roue.png../Editeur/icons/roue.png - - - - 21 - 31 - - - - - - - - - 21 - 25 - - - - - 21 - 25 - - - - border : 0px - - - ... - - - - ../Editeur/icons/point-interrogation30.png../Editeur/icons/point-interrogation30.png - - - - 21 - 25 - - - - - - - - - 21 - 25 - - - - - 21 - 25 - - - - border : 0px - - - ... - - - - ../Editeur/icons/lettreRblanc30.png../Editeur/icons/lettreRblanc30.png - - - - 21 - 25 - - - - - - - - - - Qt::Horizontal - - - QSizePolicy::Fixed - - - - 13 - 20 - - - - - - - - - 21 - 25 - - - - - 21 - 25 - - - - border : 0px - - - ... - - - - ../Editeur/icons/deleteRond.png../Editeur/icons/deleteRond.png - - - - 21 - 25 - - - - - - - - - - 0 - - - 2 - - - - - Qt::Vertical - - - QSizePolicy::Minimum - - - - 20 - 2 - - - - - - - - - - - - - - - MonBoutonValide - QToolButton -
        monBoutonValide.h
        -
        - - MonLabelClic - QLabel -
        monLabelClic.h
        -
        -
        - - -
        diff --git a/OldCodes/UiQT4/desWidgetFactPlie.ui b/OldCodes/UiQT4/desWidgetFactPlie.ui deleted file mode 100644 index 57ccde00..00000000 --- a/OldCodes/UiQT4/desWidgetFactPlie.ui +++ /dev/null @@ -1,221 +0,0 @@ - - - WidgetFactPlie - - - - 0 - 0 - 727 - 27 - - - - Form - - - QGroupBox { - border: 1px solid gray; - border-radius: 5px; - margin-top: 1ex; /* leave space at the top for the title */ - } - - QGroupBox::title { - padding: 0 3px; - } - - - - 0 - - - 0 - - - - - - 21 - 15 - - - - - 21 - 21 - - - - border : 0px - - - ... - - - - ../Editeur/icons/plusnode.png../Editeur/icons/plusnode.png - - - - 25 - 25 - - - - - - - - - 0 - 0 - - - - - 0 - - - 0 - - - - - - 17 - 25 - - - - - 21 - 25 - - - - border : 0px - - - ... - - - - ../Editeur/icons/ast-green-ball.png../Editeur/icons/ast-green-ball.png - - - - 25 - 25 - - - - - - - - - - - 22 - - - - - - 0 - 0 - - - - - 0 - 25 - - - - - 12121213 - 25 - - - - TextLabel - - - - - - - - 0 - 0 - - - - - 500 - 0 - - - - - 1500 - 16 - - - - Qt::Horizontal - - - - - - - - 21 - 25 - - - - - 21 - 25 - - - - border : 0px - - - ... - - - - ../Editeur/icons/deleteRond.png../Editeur/icons/deleteRond.png - - - - 25 - 25 - - - - - - - - - - - MonBoutonValide - QToolButton -
        monBoutonValide.h
        -
        - - MonLabelClic - QLabel -
        monLabelClic.h
        -
        -
        - - -
        diff --git a/OldCodes/UiQT4/desWidgetFormule.ui b/OldCodes/UiQT4/desWidgetFormule.ui deleted file mode 100644 index 7d3647be..00000000 --- a/OldCodes/UiQT4/desWidgetFormule.ui +++ /dev/null @@ -1,709 +0,0 @@ - - - WidgetFormule - - - - 0 - 0 - 1156 - 689 - - - - - 0 - 0 - - - - - 0 - 0 - - - - DCommandeUnique - - - - - - background-color : rgb(224,223,222); -font : 'times' 9px - - - - - - - - - 0 - 0 - - - - QFrame::Box - - - QFrame::Raised - - - - 0 - - - - - Qt::Horizontal - - - QSizePolicy::Fixed - - - - 13 - 20 - - - - - - - - - 17 - 31 - - - - - 21 - 31 - - - - Qt::ClickFocus - - - Affiche le rapport de validité de la commande - - - border : 0px - - - ... - - - - ../Editeur/icons/ast-green-ball.png../Editeur/icons/ast-green-ball.png - - - - 21 - 31 - - - - - - - - Qt::Horizontal - - - QSizePolicy::Fixed - - - - 13 - 20 - - - - - - - - - 0 - 0 - - - - - 150 - 31 - - - - QFrame::NoFrame - - - QFrame::Raised - - - <html><head/><body><p><span style=" color:#0000ff;">Formule</span></p></body></html> - - - - - - - Qt::Horizontal - - - QSizePolicy::Maximum - - - - 2 - 40 - - - - - - - - - 0 - 0 - - - - Nom de l'objet. Seuls, les objets valides peuvent être nommés - - - QLineEdit { - border: 2px solid gray; - border-radius: 10px; - padding: 0 8px; - background: darkgray; - /* selection-background-color: darkgray;*/ - } -QLineEdit:disabled -{ - background: lightgray; -} -/*read-only { - background: lightblue;*/ - - - false - - - - - - - Qt::Horizontal - - - QSizePolicy::Ignored - - - - 2 - 40 - - - - - - - - 4 - - - QLayout::SetFixedSize - - - - - - - Qt::Horizontal - - - QSizePolicy::Fixed - - - - 13 - 20 - - - - - - - - - 21 - 31 - - - - - 21 - 31 - - - - Qt::ClickFocus - - - Détruit la commande - - - border : 0px - - - ... - - - - ../Editeur/icons/deleteRond.png../Editeur/icons/deleteRond.png - - - - 21 - 31 - - - - - - RBValide - labelNomCommande - LENom - horizontalSpacer_3 - horizontalSpacer_4 - RBPoubelle - horizontalSpacer_5 - - - - - - - - - 0 - 0 - - - - - 160 - 31 - - - - Qt::ClickFocus - - - Affiche les commandes possibles - - - background-color:rgb(104,110,149); -color :white; -border-radius : 12px - - - - &Commandes - - - Shift+A, Alt+A, Alt+A, Alt+A - - - true - - - true - - - - - - - - - - 0 - 0 - - - - - 60 - 24 - - - - - 60 - 24 - - - - Qt::ClickFocus - - - Affiche le formulaire de la commande précédente - - - background-color:rgb(104,110,149); -color :white; -border-radius : 12px - - - - << - - - Shift+A, Alt+A, Alt+A, Alt+A - - - true - - - true - - - - - - - - 0 - 0 - - - - - 60 - 24 - - - - - 60 - 24 - - - - Qt::ClickFocus - - - Affiche le formulaire de la commande suivante - - - background-color:rgb(104,110,149); -color :white; -border-radius : 12px - - - - >> - - - Shift+A, Alt+A, Alt+A, Alt+A - - - true - - - true - - - - - - - - - - - - - - 0 - 81 - - - - background : rgb(247,247,247) - - - - - - QFrame::NoFrame - - - Qt::ScrollBarAsNeeded - - - Qt::ScrollBarAsNeeded - - - true - - - - - 0 - 0 - 1138 - 598 - - - - - - - - - - 0 - 0 - - - - <h3><p align="center"><u><b>Nom de la formule</b></u></p></h3> - - - false - - - - - - - - - <h3><p align="center"><u><b>Arguments</b></u></p></h3> - - - false - - - - - - - variables séparées par des "," - par ex. : x,y,z - - - false - - - - - - - - - - 0 - 0 - - - - - 0 - 0 - - - - <h3><p align="center"><u><b>Expression</b></u></p></h3> - - - false - - - - - - - Qt::Horizontal - - - QSizePolicy::Fixed - - - - 17 - 17 - - - - - - - - - 0 - 40 - - - - - - - - - - <h1><b>(</b></h1> - - - false - - - - - - - - 230 - 40 - - - - - - - - <h1><b>)</b></h1> - - - false - - - - - - - - - - - Qt::Vertical - - - - 20 - 5 - - - - - - - - - 0 - 0 - - - - - 0 - 35 - - - - - 16777215 - 35 - - - - <font size="+4" face="Helvetica"><b>=</b></font> - - - false - - - - - - - Qt::Vertical - - - - 20 - 10 - - - - - - - - - - - 0 - 0 - - - - - 0 - 40 - - - - - - - - - - Qt::Vertical - - - - 20 - 446 - - - - - - - - - - - - qPixmapFromMimeSource - - - MonBoutonValide - QToolButton -
        monBoutonValide.h
        -
        - - MonLabelClic - QLabel -
        monLabelClic.h
        -
        -
        - - scrollAreaCommandes - LENomsArgs - LECorpsFormule - LENom - LENomFormule - - - -
        diff --git a/OldCodes/UiQT4/desWidgetHeure.ui b/OldCodes/UiQT4/desWidgetHeure.ui deleted file mode 100644 index 03d5dfba..00000000 --- a/OldCodes/UiQT4/desWidgetHeure.ui +++ /dev/null @@ -1,256 +0,0 @@ - - - WidgetHeure - - - - 0 - 0 - 658 - 61 - - - - - 0 - 0 - - - - - 0 - 0 - - - - Form - - - - 0 - - - 0 - - - 1 - - - 0 - - - 0 - - - - - 0 - - - QLayout::SetFixedSize - - - - - Qt::Horizontal - - - QSizePolicy::Fixed - - - - 21 - 20 - - - - - - - - - 21 - 25 - - - - - 21 - 25 - - - - Qt::ClickFocus - - - Affiche le rapport de validation du mot-clef - - - border : 0px - - - ... - - - - ../Editeur/icons/ast-green-ball.png../Editeur/icons/ast-green-ball.png - - - - 25 - 25 - - - - - - - - - - - 0 - 0 - - - - - 300 - 25 - - - - - 178 - 16777215 - - - - QFrame::NoFrame - - - <html><head/><body><p>aaa</p><p>dqsklmdqm</p></body></html> - - - false - - - Qt::AlignLeading|Qt::AlignLeft|Qt::AlignTop - - - - - - - <html><head/><body><p><br/></p></body></html> - - - - - - - - - - - Qt::Horizontal - - - QSizePolicy::Preferred - - - - 17 - 17 - - - - - - - - - - - Qt::Horizontal - - - - 454 - 20 - - - - - - - - - 21 - 25 - - - - - 21 - 25 - - - - Qt::ClickFocus - - - Détruit le mot-clef - - - border : 0px - - - ... - - - - ../Editeur/icons/deleteRond.png../Editeur/icons/deleteRond.png - - - - 25 - 25 - - - - - - - - - - Qt::Vertical - - - - 20 - 3 - - - - - - - - - - - MonBoutonValide - QToolButton -
        monBoutonValide.h
        -
        - - MonLabelClic - QLabel -
        monLabelClic.h
        -
        -
        - - -
        diff --git a/OldCodes/UiQT4/desWidgetInactif.ui b/OldCodes/UiQT4/desWidgetInactif.ui deleted file mode 100644 index 336a26fa..00000000 --- a/OldCodes/UiQT4/desWidgetInactif.ui +++ /dev/null @@ -1,471 +0,0 @@ - - - WidgetInactif - - - - 0 - 0 - 946 - 495 - - - - - 350 - 0 - - - - DInactif - - - - - - - - - 0 - 0 - - - - QFrame::Box - - - QFrame::Raised - - - - 0 - - - - - Qt::Horizontal - - - QSizePolicy::Fixed - - - - 13 - 20 - - - - - - - - - 17 - 31 - - - - - 21 - 31 - - - - Qt::ClickFocus - - - Affiche le rapport de validité de la commande - - - border : 0px - - - - - - - ../Editeur/icons/ast-white-square.png../Editeur/icons/ast-white-square.png - - - - 21 - 31 - - - - false - - - - - - - Qt::Horizontal - - - QSizePolicy::Fixed - - - - 13 - 20 - - - - - - - - - 0 - 0 - - - - - 150 - 31 - - - - QFrame::NoFrame - - - QFrame::Raised - - - <html><head/><body><p><span style=" color:#0000ff;">commande </span></p></body></html> - - - - - - - Qt::Horizontal - - - QSizePolicy::Maximum - - - - 2 - 40 - - - - - - - - Qt::Horizontal - - - QSizePolicy::Ignored - - - - 2 - 40 - - - - - - - - 4 - - - QLayout::SetFixedSize - - - - - - - Qt::Horizontal - - - QSizePolicy::Fixed - - - - 13 - 20 - - - - - - - - - 21 - 31 - - - - - 21 - 31 - - - - Qt::ClickFocus - - - Détruit la commande - - - border : 0px - - - ... - - - - ../Editeur/icons/deleteRond.png../Editeur/icons/deleteRond.png - - - - 21 - 31 - - - - - - RBValide - labelNomCommande - horizontalSpacer_3 - horizontalSpacer_4 - RBPoubelle - horizontalSpacer_5 - - - - - - - - - 0 - 0 - - - - - 160 - 31 - - - - Qt::ClickFocus - - - Affiche les commandes possibles - - - background-color:rgb(104,110,149); -color :white; -border-radius : 12px - - - - &Commandes - - - Shift+A, Alt+A, Alt+A, Alt+A - - - true - - - true - - - - - - - - - - 0 - 0 - - - - - 60 - 24 - - - - - 60 - 24 - - - - Qt::ClickFocus - - - Affiche le formulaire de la commande précédente - - - background-color:rgb(104,110,149); -color :white; -border-radius : 12px - - - - << - - - Shift+A, Alt+A, Alt+A, Alt+A - - - true - - - true - - - - - - - - 0 - 0 - - - - - 60 - 24 - - - - - 60 - 24 - - - - Qt::ClickFocus - - - Affiche le formulaire de la commande suivante - - - background-color:rgb(104,110,149); -color :white; -border-radius : 12px - - - - >> - - - Shift+A, Alt+A, Alt+A, Alt+A - - - true - - - true - - - - - - - - - - - - - Qt::Vertical - - - - 20 - 66 - - - - - - - - - 0 - 0 - - - - <html><head/><body><p align="center"><span style=" font-size:16pt;">Le noeud sélectionné</span></p><p align="center"><span style=" font-size:16pt;">ne correspond pas à un objet actif</span></p></body></html> - - - false - - - - - - - Qt::Vertical - - - - 20 - 67 - - - - - - - - <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> -<html><head><meta name="qrichtext" content="1" /><style type="text/css"> -p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal;"> -<p align="center" style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:x-large;"><span style=" font-size:x-large;">Seules les commandes placées</span></p> -<p align="center" style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:x-large;"><span style=" font-size:x-large;"> entre : DEBUT / FIN sont actives </span></p></body></html> - - - false - - - - - - - Qt::Vertical - - - - 20 - 66 - - - - - - - - qPixmapFromMimeSource - - - MonLabelClic - QLabel -
        monLabelClic.h
        -
        -
        - - -
        diff --git a/OldCodes/UiQT4/desWidgetInformation.ui b/OldCodes/UiQT4/desWidgetInformation.ui deleted file mode 100644 index 25e2933f..00000000 --- a/OldCodes/UiQT4/desWidgetInformation.ui +++ /dev/null @@ -1,106 +0,0 @@ - - - WidgetInformative - - - - 0 - 0 - 837 - 44 - - - - - 0 - 0 - - - - - 0 - 0 - - - - Form - - - - 0 - - - 0 - - - 1 - - - 0 - - - 1 - - - - - Qt::Horizontal - - - QSizePolicy::Fixed - - - - 38 - 17 - - - - - - - - - 1 - 0 - - - - - 0 - 25 - - - - - 16777215 - 16777215 - - - - background:rgb(255,255,235); -border:0px; - - - - - - - Qt::Horizontal - - - - 13 - 17 - - - - - - - - lineEditVal - - - - diff --git a/OldCodes/UiQT4/desWidgetMatrice.ui b/OldCodes/UiQT4/desWidgetMatrice.ui deleted file mode 100644 index 7d0a82a6..00000000 --- a/OldCodes/UiQT4/desWidgetMatrice.ui +++ /dev/null @@ -1,191 +0,0 @@ - - - desWidgetMatrice - - - - 0 - 0 - 802 - 300 - - - - Dialog - - - - 4 - - - 0 - - - - - 0 - - - - - 0 - - - QLayout::SetFixedSize - - - - - Qt::Horizontal - - - QSizePolicy::Fixed - - - - 21 - 20 - - - - - - - - - 21 - 25 - - - - - 21 - 25 - - - - Qt::ClickFocus - - - Affiche le rapport de validation du mot-clef - - - border : 0px - - - ... - - - - ../../../../../../home/A96028/GitEficasTravail/eficas/Editeur/icons/ast-green-ball.png../../../../../../home/A96028/GitEficasTravail/eficas/Editeur/icons/ast-green-ball.png - - - - 25 - 25 - - - - - - - - - - Qt::Vertical - - - QSizePolicy::Fixed - - - - 20 - 15 - - - - - - - - <html><head/><body><p>Met à jour l'en-tête</p></body></html> - - - - - - - - - - - - - - - Qt::Vertical - - - - 20 - 40 - - - - - - - - - - - 0 - 0 - - - - - 300 - 25 - - - - - 178 - 16777215 - - - - QFrame::NoFrame - - - <html><head/><body><p>aaa</p><p>dqsklmdqm</p></body></html> - - - false - - - Qt::AlignLeading|Qt::AlignLeft|Qt::AlignTop - - - - - - - - - - - MonBoutonValide - QToolButton -
        monBoutonValide.h
        -
        - - MonLabelClic - QLabel -
        monLabelClic.h
        -
        -
        - - -
        diff --git a/OldCodes/UiQT4/desWidgetOptionnel.ui b/OldCodes/UiQT4/desWidgetOptionnel.ui deleted file mode 100644 index 6e9e3935..00000000 --- a/OldCodes/UiQT4/desWidgetOptionnel.ui +++ /dev/null @@ -1,190 +0,0 @@ - - - WidgetOptionnel - - - - 0 - 0 - 297 - 199 - - - - - 0 - 0 - - - - - 0 - 0 - - - - WidgetOptionnel - - - background-color : rgb(224,223,222); -font : 'times' 9px - - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - - - - 0 - 0 - - - - QFrame::Box - - - QFrame::Raised - - - - - - - 0 - 0 - - - - - 0 - 31 - - - - QFrame::NoFrame - - - QFrame::Raised - - - <html><head/><body><p><span style=" color:#0000ff;">commande </span></p></body></html> - - - - - - - Qt::Horizontal - - - - 1037 - 20 - - - - - - - - - - - - 0 - 0 - - - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - - - - 0 - 0 - - - - background : rgb(247,247,247) - - - QFrame::NoFrame - - - 0 - - - true - - - - - 0 - 0 - 297 - 146 - - - - - 0 - 0 - - - - - - - Qt::Vertical - - - - 20 - 75 - - - - - - - - - - - - - - - qPixmapFromMimeSource - - - diff --git a/OldCodes/UiQT4/desWidgetOptionnelMC.ui b/OldCodes/UiQT4/desWidgetOptionnelMC.ui deleted file mode 100644 index 950792e0..00000000 --- a/OldCodes/UiQT4/desWidgetOptionnelMC.ui +++ /dev/null @@ -1,127 +0,0 @@ - - - desWidgetOptionnel - - - - 0 - 0 - 384 - 218 - - - - Form - - - - 0 - - - - - - - Qt::Horizontal - - - - - - - - 0 - 0 - - - - - 0 - 25 - - - - - 12121213 - 25 - - - - TextLabel - - - - - - - Qt::Horizontal - - - - - - - - - - 0 - 0 - - - - background : rgb(247,247,247) - - - QFrame::NoFrame - - - 0 - - - true - - - - - 0 - 0 - 384 - 185 - - - - - 0 - 0 - - - - - - - Qt::Vertical - - - - 20 - 75 - - - - - - - - - - - - - MonLabelClic - QLabel -
        monLabelClic.h
        -
        -
        - - -
        diff --git a/OldCodes/UiQT4/desWidgetParam.ui b/OldCodes/UiQT4/desWidgetParam.ui deleted file mode 100644 index 357c0097..00000000 --- a/OldCodes/UiQT4/desWidgetParam.ui +++ /dev/null @@ -1,635 +0,0 @@ - - - WidgetParam - - - - 0 - 0 - 786 - 515 - - - - - 0 - 0 - - - - - 0 - 0 - - - - DCommandeUnique - - - - - - background-color : rgb(224,223,222); -font : 'times' 9px - - - - - - - 0 - 0 - - - - - 0 - 130 - - - - - 16777215 - 130 - - - - background-color:rgb(224,223,222) - - - QFrame::NoFrame - - - QFrame::Raised - - - - 0 - - - 0 - - - 0 - - - - - - - - - - 0 - 0 - - - - QFrame::Box - - - QFrame::Raised - - - - 0 - - - - - Qt::Horizontal - - - QSizePolicy::Fixed - - - - 13 - 20 - - - - - - - - - 17 - 31 - - - - - 21 - 31 - - - - Qt::ClickFocus - - - Affiche le rapport de validité de la commande - - - border : 0px - - - ... - - - - ../Editeur/icons/ast-green-ball.png../Editeur/icons/ast-green-ball.png - - - - 21 - 31 - - - - - - - - Qt::Horizontal - - - QSizePolicy::Fixed - - - - 13 - 20 - - - - - - - - - 0 - 0 - - - - - 150 - 31 - - - - QFrame::NoFrame - - - QFrame::Raised - - - <html><head/><body><p><span style=" color:#000000;">Paramètre</span></p></body></html> - - - - - - - Qt::Horizontal - - - QSizePolicy::Maximum - - - - 2 - 40 - - - - - - - - Qt::Horizontal - - - QSizePolicy::Ignored - - - - 2 - 40 - - - - - - - - Qt::Horizontal - - - QSizePolicy::Fixed - - - - 13 - 20 - - - - - - - - - 21 - 31 - - - - - 21 - 31 - - - - Qt::ClickFocus - - - Détruit la commande - - - border : 0px - - - ... - - - - ../Editeur/icons/deleteRond.png../Editeur/icons/deleteRond.png - - - - 21 - 31 - - - - - - RBValide - RBPoubelle - horizontalSpacer_4 - labelParam - - - - - - Qt::Vertical - - - - 20 - 40 - - - - - - - - - - 8 - - - 15 - - - - - - 0 - 0 - - - - - 160 - 31 - - - - Qt::ClickFocus - - - Affiche les commandes possibles - - - background-color:rgb(104,110,149); -color :white; -border-radius : 12px - - - - &Commandes - - - Shift+A, Alt+A, Alt+A, Alt+A - - - true - - - true - - - - - - - - - - 0 - 0 - - - - - 60 - 24 - - - - - 60 - 24 - - - - Qt::ClickFocus - - - Affiche le formulaire de la commande précédente - - - background-color:rgb(104,110,149); -color :white; -border-radius : 12px - - - - << - - - Shift+A, Alt+A, Alt+A, Alt+A - - - true - - - true - - - - - - - - 0 - 0 - - - - - 60 - 24 - - - - - 60 - 24 - - - - Qt::ClickFocus - - - Affiche le formulaire de la commande suivante - - - background-color:rgb(104,110,149); -color :white; -border-radius : 12px - - - - >> - - - Shift+A, Alt+A, Alt+A, Alt+A - - - true - - - true - - - - - - - - - - - - - - - - - 0 - 81 - - - - background : rgb(247,247,247); - - - - - - - QFrame::NoFrame - - - Qt::ScrollBarAsNeeded - - - true - - - - - 0 - 0 - 768 - 361 - - - - - - - 25 - - - - - <html><head/><body><p>Valeur: </p></body></html> - - - false - - - - - - - - 231 - 31 - - - - background:rgb(235,235,235); -border:0px; - - - - - - - - - - 231 - 31 - - - - background:rgb(235,235,235); -border:0px; - - - - - - - <html><head/><body><p>Nom: </p></body></html> - - - false - - - - - - - Qt::Vertical - - - - 20 - 40 - - - - - - - - - 0 - 0 - - - - - 160 - 31 - - - - Affiche les commandes possibles - - - background-color:rgb(104,110,149); -color :white; -border-radius : 12px - - - - Verifie la valeur - - - Shift+A, Alt+A, Alt+A, Alt+A - - - true - - - true - - - - - - - - - <html><head/><body><p><br/></p></body></html> - - - false - - - - - - - Qt::Vertical - - - - 20 - 70 - - - - - - - - - - - - qPixmapFromMimeSource - - - MonBoutonValide - QToolButton -
        monBoutonValide.h
        -
        -
        - - scrollAreaCommandes - - - -
        diff --git a/OldCodes/UiQT4/desWidgetPlusieursBase.ui b/OldCodes/UiQT4/desWidgetPlusieursBase.ui deleted file mode 100644 index 799a330e..00000000 --- a/OldCodes/UiQT4/desWidgetPlusieursBase.ui +++ /dev/null @@ -1,842 +0,0 @@ - - - WidgetPlusieursBase - - - - 0 - 0 - 764 - 202 - - - - - 0 - 0 - - - - - 100 - 20 - - - - Form - - - /* QFrame { -border: 1px solid gray; -}*/ - - - - - 0 - - - 0 - - - 2 - - - 2 - - - 0 - - - - - 0 - - - - - 0 - - - QLayout::SetFixedSize - - - - - - 0 - 0 - - - - - 21 - 25 - - - - permet de gérer la liste - - - border:0px - - - ... - - - - ../Editeur/icons/minusnode.png../Editeur/icons/minusnode.png - - - - 25 - 25 - - - - - - - - - 21 - 25 - - - - - 21 - 25 - - - - Qt::ClickFocus - - - Affiche le rapport de validation du mot-clef - - - border : 0px - - - ... - - - - ../Editeur/icons/ast-green-ball.png../Editeur/icons/ast-green-ball.png - - - - 25 - 25 - - - - - - - - - - Qt::Vertical - - - - 20 - 5 - - - - - - - - - - 0 - - - - - - 0 - 0 - - - - - 300 - 25 - - - - - 178 - 16777215 - - - - QFrame::NoFrame - - - <html><head/><body><p>aaa</p><p>dqsklmdqm</p></body></html> - - - false - - - Qt::AlignLeading|Qt::AlignLeft|Qt::AlignTop - - - - - - - - 0 - 0 - - - - QFrame::NoFrame - - - QFrame::Plain - - - true - - - - - 0 - 0 - 112 - 138 - - - - - 0 - 0 - - - - - - - - 0 - 0 - - - - TextLabel - - - - - - - - - - - - - 0 - - - - - - 0 - 0 - - - - - 400 - 50 - - - - background : rgb(247,247,247); -border: 1px solid gray; -/* QFrame { -border: 1px solid gray; -}*/ - - - - - QFrame::Box - - - QFrame::Plain - - - 1 - - - true - - - Qt::AlignBottom|Qt::AlignLeading|Qt::AlignLeft - - - - - 0 - 0 - 398 - 161 - - - - - 0 - 0 - - - - - 2 - - - 2 - - - 0 - - - 2 - - - 0 - - - - - Qt::Vertical - - - - 20 - 40 - - - - - - - - - - - - QFrame::Box - - - - 0 - - - - - Qt::Horizontal - - - QSizePolicy::Fixed - - - - 13 - 20 - - - - - - - - 0 - - - QLayout::SetFixedSize - - - - - - 21 - 31 - - - - - 21 - 31 - - - - Qt::ClickFocus - - - Remonte la ligne - - - border : 0px - - - ... - - - - - - - - - 32 - 32 - - - - - - - - - 21 - 31 - - - - - 21 - 31 - - - - Qt::ClickFocus - - - Descend la ligne - - - border : 0px - - - ... - - - - - - - - - 32 - 32 - - - - - - - - - 21 - 31 - - - - - 21 - 31 - - - - Qt::ClickFocus - - - supprime une ligne - - - border : 0px - - - ... - - - - ../Editeur/icons/MoinsBleu2.png - - - - - 32 - 32 - - - - - - - - - 21 - 31 - - - - - 21 - 31 - - - - Qt::ClickFocus - - - Ajoute une ligne - - - border : 0px - - - ... - - - - ../Editeur/icons/PlusBleu.png../Editeur/icons/PlusBleu.png - - - - 32 - 32 - - - - - - - - - - Qt::Horizontal - - - QSizePolicy::Minimum - - - - 40 - 20 - - - - - - - - - 21 - 31 - - - - - 21 - 31 - - - - Qt::ClickFocus - - - Montre l'ensemble des valeurs - - - border : 0px - - - ... - - - - ../Editeur/icons/verre-loupe-icone-6087-64.png../Editeur/icons/verre-loupe-icone-6087-64.png - - - - 32 - 32 - - - - - - - - Qt::Horizontal - - - QSizePolicy::Minimum - - - - 40 - 20 - - - - - - - - 0 - - - QLayout::SetFixedSize - - - - - - 21 - 31 - - - - - 21 - 31 - - - - Qt::ClickFocus - - - Sélectionne depuis Salome - - - border : 0px - - - ... - - - - ../Editeur/icons/flecheSalome.png../Editeur/icons/flecheSalome.png - - - - 32 - 32 - - - - - - - - - 21 - 31 - - - - - 21 - 31 - - - - Qt::ClickFocus - - - Visualise dans Salome - - - border : 0px - - - ... - - - - ../Editeur/icons/eye.png../Editeur/icons/eye.png - - - - 32 - 32 - - - - - - - - - - - - - - - 0 - - - 0 - - - - - 0 - - - - - - 0 - 0 - - - - - 25 - 30 - - - - Qt::ClickFocus - - - Ouvre un fichier de sélection des valeurs - - - border:0px - - - ... - - - - - - - - - 32 - 32 - - - - - - - - Qt::Horizontal - - - QSizePolicy::Fixed - - - - 13 - 20 - - - - - - - - - 21 - 31 - - - - - 21 - 31 - - - - Qt::ClickFocus - - - Détruit le mot-clef - - - border : 0px - - - ... - - - - ../Editeur/icons/deleteRond.png../Editeur/icons/deleteRond.png - - - - 32 - 32 - - - - - - - - - - Qt::Vertical - - - - 20 - 40 - - - - - - - - - label - monCommentaireLabel - scrollArea_2 - layoutWidget - verticalSpacer_6 - - - - MonBoutonValide - QToolButton -
        monBoutonValide.h
        -
        - - MonLabelClic - QLabel -
        monLabelClic.h
        -
        -
        - - scrollArea - RBHaut - RBBas - RBMoins - RBVoisListe - RBSalome - RBSalomeVue - BSelectFichier - RBPoubelle - - - -
        diff --git a/OldCodes/UiQT4/desWidgetPlusieursInto.ui b/OldCodes/UiQT4/desWidgetPlusieursInto.ui deleted file mode 100644 index a9968d9b..00000000 --- a/OldCodes/UiQT4/desWidgetPlusieursInto.ui +++ /dev/null @@ -1,613 +0,0 @@ - - - WidgetPlusieursInto - - - - 0 - 0 - 1061 - 279 - - - - - 0 - 0 - - - - - 0 - 0 - - - - Form - - - - 0 - - - 0 - - - 0 - - - - - 0 - - - - - 0 - - - QLayout::SetFixedSize - - - - - - 0 - 0 - - - - - 21 - 25 - - - - permet de gérer la liste - - - border:0px - - - ... - - - - ../Editeur/icons/minusnode.png../Editeur/icons/minusnode.png - - - - 25 - 25 - - - - - - - - - 21 - 25 - - - - - 21 - 25 - - - - Qt::ClickFocus - - - Affiche le rapport de validation du mot-clef - - - border : 0px - - - ... - - - - ../Editeur/icons/ast-green-ball.png../Editeur/icons/ast-green-ball.png - - - - 25 - 25 - - - - - - - - - - Qt::Vertical - - - - 20 - 5 - - - - - - - - - - - - - 0 - 0 - - - - - 280 - 25 - - - - - 280 - 16777215 - - - - QFrame::NoFrame - - - <html><head/><body><p>aaa</p><p>dqsklmdqm</p></body></html> - - - false - - - Qt::AlignLeading|Qt::AlignLeft|Qt::AlignTop - - - - - - - - 0 - 0 - - - - - 0 - 0 - - - - - 16777215 - 111 - - - - QFrame::NoFrame - - - QFrame::Raised - - - - 2 - - - 0 - - - - - 0 - - - - - - - - - 0 - 0 - - - - - 250 - 0 - - - - - 250 - 16777215 - - - - background:rgb(255,255,255) - - - - - - - - - Qt::Horizontal - - - QSizePolicy::Fixed - - - - 5 - 20 - - - - - - - - - 21 - 31 - - - - - 21 - 31 - - - - Cherche la valeur - - - border : 0px - - - ... - - - - - - - - - 32 - 32 - - - - - - - - Qt::Horizontal - - - - 40 - 20 - - - - - - - - - - - - - 0 - 0 - - - - Originel - - - - - - - Alpha - - - - - - - Qt::Horizontal - - - - 40 - 20 - - - - - - - - - - - - - Qt::Vertical - - - - 20 - 40 - - - - - - - - - 0 - 0 - - - - - 300 - 0 - - - - - 300 - 16777215 - - - - QFrame::NoFrame - - - 0 - - - true - - - - - 0 - 0 - 300 - 73 - - - - - 0 - - - 0 - - - - - - 0 - 0 - - - - - 0 - 0 - - - - - 278 - 16777215 - - - - QFrame::NoFrame - - - <html><head/><body><p><br/></p></body></html> - - - false - - - Qt::AlignLeading|Qt::AlignLeft|Qt::AlignTop - - - - - - - - - - - - - - 0 - 0 - - - - background : rgb(247,247,247) - - - QFrame::NoFrame - - - QFrame::Plain - - - 1 - - - true - - - Qt::AlignBottom|Qt::AlignLeading|Qt::AlignLeft - - - - - 0 - 0 - 650 - 261 - - - - - 0 - 0 - - - - - 0 - - - 0 - - - - - Qt::Vertical - - - - 20 - 40 - - - - - - - - - - - - Qt::Horizontal - - - QSizePolicy::Preferred - - - - 20 - 17 - - - - - - - - - - - 21 - 31 - - - - - 21 - 31 - - - - Détruit le mot-clef - - - border : 0px - - - ... - - - - ../Editeur/icons/deleteRond.png../Editeur/icons/deleteRond.png - - - - 32 - 32 - - - - - - - - - - - true - - - - - - - Qt::Vertical - - - - 20 - 40 - - - - - - - - horizontalSpacer - scrollArea - - - - - - MonBoutonValide - QToolButton -
        monBoutonValide.h
        -
        - - MonLabelClic - QLabel -
        monLabelClic.h
        -
        -
        - - -
        diff --git a/OldCodes/UiQT4/desWidgetPlusieursIntoOrdonne.ui b/OldCodes/UiQT4/desWidgetPlusieursIntoOrdonne.ui deleted file mode 100644 index 86b75d90..00000000 --- a/OldCodes/UiQT4/desWidgetPlusieursIntoOrdonne.ui +++ /dev/null @@ -1,838 +0,0 @@ - - - WidgetPlusieursIntoOrdonne - - - - 0 - 0 - 1013 - 538 - - - - - 0 - 0 - - - - - 0 - 0 - - - - Form - - - - 0 - - - 0 - - - 2 - - - 0 - - - 7 - - - - - 0 - - - - - 0 - - - QLayout::SetFixedSize - - - - - - 0 - 0 - - - - - 21 - 25 - - - - permet de gérer la liste - - - border:0px - - - ... - - - - ../../../.designer/Editeur/icons/minusnode.png../../../.designer/Editeur/icons/minusnode.png - - - - 25 - 25 - - - - - - - - - 21 - 25 - - - - - 21 - 25 - - - - Qt::ClickFocus - - - Affiche le rapport de validation du mot-clef - - - border : 0px - - - ... - - - - ../../../.designer/Editeur/icons/ast-green-ball.png../../../.designer/Editeur/icons/ast-green-ball.png - - - - 25 - 25 - - - - - - - - - - Qt::Vertical - - - - 20 - 5 - - - - - - - - - - 0 - - - - - - 0 - 0 - - - - - 300 - 25 - - - - - 178 - 16777215 - - - - QFrame::NoFrame - - - <html><head/><body><p><br/></p></body></html> - - - false - - - Qt::AlignLeading|Qt::AlignLeft|Qt::AlignTop - - - - - - - Qt::Vertical - - - - 20 - 40 - - - - - - - - - - - background:rgb(255,255,255) - - - - - - - - - - 21 - 31 - - - - - 21 - 31 - - - - Détruit une ligne - - - border : 0px - - - ... - - - - ../../../.designer/backup../../../.designer/backup - - - - 32 - 32 - - - - - - - - - - - - - - Catalogue - - - - - - - Alpha - - - - - - - Qt::Horizontal - - - - 40 - 20 - - - - - - - - - - - Qt::Vertical - - - QSizePolicy::Fixed - - - - 20 - 20 - - - - - - - - - 0 - 0 - - - - QFrame::NoFrame - - - QFrame::Plain - - - true - - - - - 0 - 0 - 18 - 180 - - - - - 0 - 0 - - - - - - - <html><head/><body><p><br/></p></body></html> - - - - - - - - - - - - - Qt::Horizontal - - - QSizePolicy::Fixed - - - - 8 - 20 - - - - - - - - - 0 - 0 - - - - background : rgb(247,247,247) - - - QFrame::Box - - - QFrame::Plain - - - 1 - - - true - - - Qt::AlignBottom|Qt::AlignLeading|Qt::AlignLeft - - - - - 0 - 0 - 300 - 527 - - - - - 0 - 0 - - - - - 0 - - - 0 - - - - - Qt::Vertical - - - - 20 - 40 - - - - - - - - - - - - Qt::Horizontal - - - QSizePolicy::Preferred - - - - 8 - 108 - - - - - - - - - - 0 - - - - - - 0 - 0 - - - - background : rgb(247,247,247) - - - QFrame::Box - - - QFrame::Plain - - - 1 - - - true - - - Qt::AlignBottom|Qt::AlignLeading|Qt::AlignLeft - - - - - 0 - 0 - 297 - 482 - - - - - 0 - 0 - - - - - 0 - - - 0 - - - - - Qt::Vertical - - - - 20 - 40 - - - - - - - - - - - - - - - 0 - 0 - - - - QFrame::Box - - - - 0 - - - 0 - - - - - 0 - - - QLayout::SetFixedSize - - - - - - 21 - 31 - - - - - 21 - 31 - - - - Remonte d'une ligne - - - border : 0px - - - ... - - - - ../../../.designer/backup../../../.designer/backup - - - - 32 - 32 - - - - - - - - - 21 - 31 - - - - - 21 - 31 - - - - Descend d'une ligne - - - border : 0px - - - ... - - - - ../../../.designer/backup../../../.designer/backup - - - - 32 - 32 - - - - - - - - - 21 - 31 - - - - - 21 - 31 - - - - Détruit une ligne - - - border : 0px - - - ... - - - - ../Editeur/icons/MoinsBleu.png../Editeur/icons/MoinsBleu.png - - - - 32 - 32 - - - - - - - - - 21 - 31 - - - - - 21 - 31 - - - - ajoute une ligne - - - border : 0px - - - ... - - - - ../Editeur/icons/PlusBleu.png../Editeur/icons/PlusBleu.png - - - - 32 - 32 - - - - - - - - - - Qt::Horizontal - - - - 40 - 20 - - - - - - - - - 21 - 31 - - - - - 21 - 31 - - - - visualise l'ensemble des valeurs - - - border : 0px - - - ... - - - - ../Editeur/icons/verre-loupe-icone-6087-64.png../Editeur/icons/verre-loupe-icone-6087-64.png - - - - 32 - 32 - - - - - - - - Qt::Horizontal - - - - 18 - 20 - - - - - - - - - - - - - Qt::Horizontal - - - QSizePolicy::Preferred - - - - 20 - 17 - - - - - - - - - - - 21 - 31 - - - - - 21 - 31 - - - - Détruit le mot-clef - - - border : 0px - - - ... - - - - ../../../.designer/Editeur/icons/deleteRond.png../../../.designer/Editeur/icons/deleteRond.png - - - - 32 - 32 - - - - - - - - Qt::Vertical - - - - 20 - 40 - - - - - - - - horizontalSpacer - horizontalSpacer_2 - horizontalSpacer_3 - scrollArea - - - - - MonBoutonValide - QToolButton -
        monBoutonValide.h
        -
        - - MonLabelClic - QLabel -
        monLabelClic.h
        -
        -
        - - -
        diff --git a/OldCodes/UiQT4/desWidgetPlusieursPlie.ui b/OldCodes/UiQT4/desWidgetPlusieursPlie.ui deleted file mode 100644 index c9dbe943..00000000 --- a/OldCodes/UiQT4/desWidgetPlusieursPlie.ui +++ /dev/null @@ -1,330 +0,0 @@ - - - WidgetPlusieursPlie - - - - 0 - 0 - 1095 - 62 - - - - - 0 - 0 - - - - - 0 - 0 - - - - Form - - - - 0 - - - 0 - - - 1 - - - 0 - - - 1 - - - - - - - 0 - - - - - - 0 - 0 - - - - - 21 - 25 - - - - permet de gérer la liste - - - border:0px - - - ... - - - - ../Editeur/icons/plusnode.png../Editeur/icons/plusnode.png - - - - 25 - 25 - - - - - - - - - 21 - 25 - - - - - 21 - 25 - - - - Affiche le rapport de validité du mot-clef - - - border : 0px - - - ... - - - - ../Editeur/icons/ast-green-ball.png../Editeur/icons/ast-green-ball.png - - - - 25 - 25 - - - - - - - - - - Qt::Vertical - - - - 20 - 5 - - - - - - - - - - - 0 - 0 - - - - - 300 - 25 - - - - - 178 - 16777215 - - - - QFrame::NoFrame - - - <html><head/><body><p>aaa</p><p>dqsklmdqm</p></body></html> - - - false - - - Qt::AlignLeading|Qt::AlignLeft|Qt::AlignTop - - - - - - - - - - - false - - - - 1 - 0 - - - - - 0 - 25 - - - - - 805 - 16777215 - - - - background:rgb(195,195,195); -border:0px; - - - - - - - - Qt::Horizontal - - - QSizePolicy::MinimumExpanding - - - - 71 - 20 - - - - - - - - 0 - - - QLayout::SetFixedSize - - - - - Qt::Horizontal - - - QSizePolicy::Fixed - - - - 13 - 20 - - - - - - - - - 0 - 0 - - - - - 21 - 25 - - - - - 21 - 25 - - - - Détruit le mot-clef - - - border : 0px - - - ... - - - - ../Editeur/icons/deleteRond.png../Editeur/icons/deleteRond.png - - - - 21 - 25 - - - - - - - - - - - - Qt::Vertical - - - QSizePolicy::Expanding - - - - 20 - 5 - - - - - - - - - - - MonBoutonValide - QToolButton -
        monBoutonValide.h
        -
        - - MonLabelClic - QLabel -
        monLabelClic.h
        -
        -
        - - lineEditVal - RBPoubelle - RBValide - - - -
        diff --git a/OldCodes/UiQT4/desWidgetPlusieursTuple.ui b/OldCodes/UiQT4/desWidgetPlusieursTuple.ui deleted file mode 100644 index 391a2325..00000000 --- a/OldCodes/UiQT4/desWidgetPlusieursTuple.ui +++ /dev/null @@ -1,668 +0,0 @@ - - - WidgetPlusieursTuple - - - - 0 - 0 - 612 - 175 - - - - - 0 - 0 - - - - - 0 - 0 - - - - Form - - - - 0 - - - 0 - - - 2 - - - 0 - - - 2 - - - - - - - 0 - - - - - 0 - - - QLayout::SetFixedSize - - - - - Qt::Horizontal - - - QSizePolicy::Fixed - - - - 21 - 20 - - - - - - - - - 21 - 25 - - - - - 21 - 25 - - - - Qt::ClickFocus - - - Affiche le rapport de validation du mot-clef - - - border : 0px - - - ... - - - - ../Editeur/icons/ast-green-ball.png../Editeur/icons/ast-green-ball.png - - - - 25 - 25 - - - - - - - - - - Qt::Vertical - - - - 20 - 5 - - - - - - - - - - - - 0 - - - - - - 0 - 0 - - - - - 300 - 25 - - - - - 178 - 16777215 - - - - QFrame::NoFrame - - - <html><head/><body><p>aaa</p><p>dqsklmdqm</p></body></html> - - - false - - - Qt::AlignLeading|Qt::AlignLeft|Qt::AlignTop - - - - - - - - 0 - 0 - - - - QFrame::NoFrame - - - QFrame::Plain - - - true - - - - - 0 - 0 - 112 - 109 - - - - - 0 - 0 - - - - - - - - 0 - 0 - - - - TextLabel - - - - - - - - - - - - - - - QFrame::NoFrame - - - - 0 - - - 0 - - - - - - 0 - 0 - - - - background : rgb(247,247,247) - - - QFrame::NoFrame - - - 1 - - - true - - - Qt::AlignBottom|Qt::AlignLeading|Qt::AlignLeft - - - - - 0 - 0 - 197 - 110 - - - - - 0 - 0 - - - - - 0 - - - 0 - - - - - Qt::Vertical - - - - 20 - 13 - - - - - - - - - - - - - - - QFrame::Box - - - - 0 - - - - - 0 - - - QLayout::SetFixedSize - - - - - - 21 - 31 - - - - - 21 - 31 - - - - Qt::ClickFocus - - - Remonte la ligne - - - border : 0px - - - ... - - - - - - - - - 32 - 32 - - - - - - - - - 21 - 31 - - - - - 21 - 31 - - - - Qt::ClickFocus - - - Descend la ligne - - - border : 0px - - - ... - - - - - - - - - 32 - 32 - - - - - - - - - 21 - 31 - - - - - 21 - 31 - - - - Qt::ClickFocus - - - supprime une ligne - - - border : 0px - - - ... - - - - ../Editeur/icons/MoinsBleu2.png - - - - - 32 - 32 - - - - - - - - - 21 - 31 - - - - - 21 - 31 - - - - Qt::ClickFocus - - - Ajoute une ligne - - - border : 0px - - - ... - - - - ../Editeur/icons/PlusBleu.png../Editeur/icons/PlusBleu.png - - - - 32 - 32 - - - - - - - - - - Qt::Horizontal - - - QSizePolicy::Minimum - - - - 40 - 20 - - - - - - - - - 21 - 31 - - - - - 21 - 31 - - - - Qt::ClickFocus - - - Montre l'ensemble des valeurs - - - border : 0px - - - ... - - - - ../Editeur/icons/verre-loupe-icone-6087-64.png../Editeur/icons/verre-loupe-icone-6087-64.png - - - - 32 - 32 - - - - - - - - - - - - - - - 0 - - - - - - 0 - 0 - - - - - 25 - 30 - - - - Qt::ClickFocus - - - Ouvre un fichier de sélection des valeurs - - - border:0px - - - ... - - - - - - - - - 32 - 32 - - - - - - - - Qt::Horizontal - - - QSizePolicy::Fixed - - - - 13 - 20 - - - - - - - - - 21 - 31 - - - - - 21 - 31 - - - - Qt::ClickFocus - - - Détruit le mot-clef - - - border : 0px - - - ... - - - - ../Editeur/icons/deleteRond.png../Editeur/icons/deleteRond.png - - - - 32 - 32 - - - - - - - - - - Qt::Vertical - - - - 20 - 40 - - - - - - - - - - - MonBoutonValide - QToolButton -
        monBoutonValide.h
        -
        - - MonLabelClic - QLabel -
        monLabelClic.h
        -
        -
        - - -
        diff --git a/OldCodes/UiQT4/desWidgetRadioButton.ui b/OldCodes/UiQT4/desWidgetRadioButton.ui deleted file mode 100644 index b39fa176..00000000 --- a/OldCodes/UiQT4/desWidgetRadioButton.ui +++ /dev/null @@ -1,342 +0,0 @@ - - - WidgetRadioButton - - - - 0 - 0 - 851 - 62 - - - - - 0 - 0 - - - - - 0 - 0 - - - - - 16777215 - 90 - - - - Form - - - - 0 - - - 0 - - - 1 - - - 0 - - - 1 - - - - - 0 - - - - - 0 - - - QLayout::SetFixedSize - - - - - Qt::Horizontal - - - QSizePolicy::Fixed - - - - 21 - 20 - - - - - - - - - 21 - 25 - - - - - 21 - 25 - - - - Qt::ClickFocus - - - Affiche le rapport de validation du mot-clef - - - border : 0px - - - ... - - - - ../Editeur/icons/ast-green-ball.png../Editeur/icons/ast-green-ball.png - - - - 25 - 25 - - - - - - - - - - Qt::Vertical - - - QSizePolicy::Minimum - - - - 20 - 5 - - - - - - - - - - - 0 - 0 - - - - - 300 - 25 - - - - - 178 - 16777215 - - - - QFrame::NoFrame - - - <html><head/><body><p>aaa</p><p>dqsklmdqm</p></body></html> - - - false - - - Qt::AlignLeading|Qt::AlignLeft|Qt::AlignTop - - - - - - - 0 - - - - - 0 - - - - - - 0 - 0 - - - - - 0 - 25 - - - - RadioButton - - - - - - - Qt::Horizontal - - - QSizePolicy::Fixed - - - - 2 - 20 - - - - - - - - - 0 - 0 - - - - RadioButton - - - - - - - Qt::Horizontal - - - QSizePolicy::Fixed - - - - 2 - 20 - - - - - - - - - 0 - 0 - - - - RadioButton - - - - - - - Qt::Horizontal - - - - 5 - 20 - - - - - - - - - 21 - 25 - - - - - 21 - 25 - - - - Détruit le mot-clef - - - border : 0px - - - ... - - - - ../Editeur/icons/deleteRond.png../Editeur/icons/deleteRond.png - - - - 25 - 25 - - - - - - - - - - Qt::Vertical - - - QSizePolicy::Minimum - - - - 20 - 5 - - - - - - - - - - - MonBoutonValide - QToolButton -
        monBoutonValide.h
        -
        - - MonLabelClic - QLabel -
        monLabelClic.h
        -
        -
        - - -
        diff --git a/OldCodes/UiQT4/desWidgetSDCOInto.ui b/OldCodes/UiQT4/desWidgetSDCOInto.ui deleted file mode 100644 index 8974f213..00000000 --- a/OldCodes/UiQT4/desWidgetSDCOInto.ui +++ /dev/null @@ -1,360 +0,0 @@ - - - WidgetSDCOInto - - - - 0 - 0 - 858 - 312 - - - - - 0 - 0 - - - - - 0 - 0 - - - - Form - - - - 0 - - - 0 - - - 1 - - - 0 - - - 1 - - - - - 0 - - - - - 0 - - - QLayout::SetFixedSize - - - - - Qt::Horizontal - - - QSizePolicy::Fixed - - - - 21 - 20 - - - - - - - - - 21 - 25 - - - - - 21 - 25 - - - - Qt::ClickFocus - - - Affiche le rapport de validation du mot-clef - - - border : 0px - - - ... - - - - ../Editeur/icons/ast-green-ball.png../Editeur/icons/ast-green-ball.png - - - - 25 - 25 - - - - - - - - - - Qt::Vertical - - - - 20 - 5 - - - - - - - - - - - 0 - 0 - - - - - 300 - 25 - - - - - 178 - 16777215 - - - - QFrame::NoFrame - - - <html><head/><body><p>aaa</p><p>dqsklmdqm</p></body></html> - - - false - - - Qt::AlignLeading|Qt::AlignLeft|Qt::AlignTop - - - - - - - QFrame::Box - - - - 0 - - - - - - 0 - 0 - - - - - 16777215 - 31 - - - - <html><head/><body><p>Structures de données du type requis </p><p><br/></p></body></html> - - - false - - - - - - - - 0 - 0 - - - - - 16777215 - 200 - - - - QFrame::NoFrame - - - true - - - - - 0 - 0 - 462 - 200 - - - - - - - QFrame::NoFrame - - - - - - - - - - - - 0 - 0 - - - - <html><head/><body><p>ou Nom du concept</p></body></html> - - - - - - - - 0 - 0 - - - - - 0 - 25 - - - - - 805 - 31 - - - - background:rgb(235,235,235); -border:0px; - - - - - - - - - - Qt::Horizontal - - - QSizePolicy::Preferred - - - - 20 - 17 - - - - - - - - - - - 21 - 31 - - - - - 21 - 31 - - - - Détruit le mot-clef - - - border : 0px - - - ... - - - - ../Editeur/icons/deleteRond.png../Editeur/icons/deleteRond.png - - - - 32 - 32 - - - - - - - - Qt::Vertical - - - - 20 - 40 - - - - - - - - - - - MonBoutonValide - QToolButton -
        monBoutonValide.h
        -
        - - MonLabelClic - QLabel -
        monLabelClic.h
        -
        -
        - - -
        diff --git a/OldCodes/UiQT4/desWidgetSimpBase.ui b/OldCodes/UiQT4/desWidgetSimpBase.ui deleted file mode 100644 index 60c7dce5..00000000 --- a/OldCodes/UiQT4/desWidgetSimpBase.ui +++ /dev/null @@ -1,304 +0,0 @@ - - - WidgetSimpBase - - - - 0 - 0 - 743 - 60 - - - - - 0 - 0 - - - - - 0 - 0 - - - - - 1677721 - 60 - - - - Form - - - - 0 - - - 0 - - - 1 - - - 0 - - - 1 - - - - - 0 - - - - - 0 - - - QLayout::SetFixedSize - - - - - Qt::Horizontal - - - QSizePolicy::Fixed - - - - 21 - 20 - - - - - - - - - 21 - 25 - - - - - 21 - 25 - - - - Qt::ClickFocus - - - Affiche le rapport de validation du mot-clef - - - border : 0px - - - ... - - - - ../Editeur/icons/ast-green-ball.png../Editeur/icons/ast-green-ball.png - - - - 25 - 25 - - - - - - - - - - Qt::Vertical - - - - 20 - 5 - - - - - - - - - - - 0 - 0 - - - - - 300 - 25 - - - - - 178 - 16777215 - - - - QFrame::NoFrame - - - <html><head/><body><p>aaa</p><p>dqsklmdqm</p></body></html> - - - false - - - Qt::AlignLeading|Qt::AlignLeft|Qt::AlignTop - - - - - - - 0 - - - - - - - - 0 - 0 - - - - - 0 - 25 - - - - - 805 - 16777215 - - - - background:rgb(235,235,235); -border:0px; - - - - - - - Qt::Horizontal - - - QSizePolicy::Fixed - - - - 3 - 20 - - - - - - - - Qt::Horizontal - - - QSizePolicy::Expanding - - - - 58 - 20 - - - - - - - - - 21 - 25 - - - - - 21 - 25 - - - - Qt::ClickFocus - - - Détruit le mot-clef - - - border : 0px - - - ... - - - - ../Editeur/icons/deleteRond.png../Editeur/icons/deleteRond.png - - - - 25 - 25 - - - - - - - - - - Qt::Vertical - - - - 20 - 5 - - - - - - - - - - - MonBoutonValide - QToolButton -
        monBoutonValide.h
        -
        - - MonLabelClic - QLabel -
        monLabelClic.h
        -
        -
        - - -
        diff --git a/OldCodes/UiQT4/desWidgetSimpBool.ui b/OldCodes/UiQT4/desWidgetSimpBool.ui deleted file mode 100644 index f9a78c7a..00000000 --- a/OldCodes/UiQT4/desWidgetSimpBool.ui +++ /dev/null @@ -1,300 +0,0 @@ - - - WidgetSimpBool - - - - 0 - 0 - 572 - 56 - - - - - 0 - 0 - - - - - 0 - 0 - - - - - 1493 - 56 - - - - Form - - - - 0 - - - 0 - - - - - 0 - - - - - 0 - - - QLayout::SetFixedSize - - - - - Qt::Horizontal - - - QSizePolicy::Fixed - - - - 21 - 20 - - - - - - - - - 21 - 25 - - - - - 21 - 25 - - - - Qt::ClickFocus - - - Affiche le rapport de validation du mot-clef - - - border : 0px - - - ... - - - - ../Editeur/icons/ast-green-ball.png../Editeur/icons/ast-green-ball.png - - - - 25 - 25 - - - - - - - - - - Qt::Vertical - - - - 20 - 5 - - - - - - - - - - - 0 - 0 - - - - - 300 - 25 - - - - - 178 - 16777215 - - - - QFrame::NoFrame - - - <html><head/><body><p>aaa</p><p>dqsklmdqm</p></body></html> - - - false - - - Qt::AlignLeading|Qt::AlignLeft|Qt::AlignTop - - - - - - - - - - - True - - - - - - - Qt::Horizontal - - - QSizePolicy::Fixed - - - - 40 - 20 - - - - - - - - False - - - - - - - Qt::Horizontal - - - - 50 - 20 - - - - - - - - - - Qt::Vertical - - - QSizePolicy::Minimum - - - - 20 - 5 - - - - - - - - - - - - - 0 - 0 - - - - - 21 - 25 - - - - - 21 - 25 - - - - Détruit le mot-clef - - - border : 0px - - - ... - - - - ../Editeur/icons/deleteRond.png../Editeur/icons/deleteRond.png - - - - 25 - 25 - - - - - - - - Qt::Vertical - - - - 20 - 5 - - - - - - - - - - - MonBoutonValide - QToolButton -
        monBoutonValide.h
        -
        - - MonLabelClic - QLabel -
        monLabelClic.h
        -
        -
        - - -
        diff --git a/OldCodes/UiQT4/desWidgetSimpComplexe.ui b/OldCodes/UiQT4/desWidgetSimpComplexe.ui deleted file mode 100644 index 4e9db7e6..00000000 --- a/OldCodes/UiQT4/desWidgetSimpComplexe.ui +++ /dev/null @@ -1,390 +0,0 @@ - - - WidgetSimpComplexe - - - - 0 - 0 - 1242 - 87 - - - - - 0 - 0 - - - - - 940 - 0 - - - - - 1493 - 1400 - - - - Form - - - QLineEdit { -background:rgb(235,235,235); -border:0px; -} - - - - 0 - - - 0 - - - 1 - - - 0 - - - 1 - - - - - 0 - - - - - 0 - - - QLayout::SetFixedSize - - - - - Qt::Horizontal - - - QSizePolicy::Fixed - - - - 21 - 20 - - - - - - - - - 21 - 25 - - - - - 21 - 25 - - - - Qt::ClickFocus - - - Affiche le rapport de validation du mot-clef - - - border : 0px - - - ... - - - - ../Editeur/icons/ast-green-ball.png../Editeur/icons/ast-green-ball.png - - - - 25 - 25 - - - - - - - - - - Qt::Vertical - - - - 20 - 5 - - - - - - - - - - - 0 - 0 - - - - - 300 - 25 - - - - - 178 - 16777215 - - - - QFrame::NoFrame - - - <html><head/><body><p>aaa</p><p>dqsklmdqm</p></body></html> - - - false - - - Qt::AlignLeading|Qt::AlignLeft|Qt::AlignTop - - - - - - - QFrame::Box - - - - - - - - - 0 - 0 - - - - - 0 - 29 - - - - - 16777215 - 29 - - - - Complexe : a+bj - - - - - - - Qt::Horizontal - - - - 19 - 20 - - - - - - - - - - false - - - - - - - - 0 - 0 - - - - - 50 - 24 - - - - <html><head/><body><p align="center">OU </p></body></html> - - - - - - - 4 - - - 0 - - - - - Réel/Imaginaire - - - - - - - Module/Phase - - - - - - - - - - - false - - - - - - - Qt::Horizontal - - - - 5 - 20 - - - - - - - - false - - - - - - - - - Qt::Vertical - - - - 17 - 20 - - - - - - - - - - - - - - 21 - 31 - - - - - 21 - 31 - - - - border : 0px - - - ... - - - - ../Editeur/icons/deleteRond.png../Editeur/icons/deleteRond.png - - - - 32 - 32 - - - - - - - - Qt::Vertical - - - - 18 - 47 - - - - - - - - - - - MonBoutonValide - QToolButton -
        monBoutonValide.h
        -
        - - MonLabelClic - QLabel -
        monLabelClic.h
        -
        -
        - - LEComp - RBRI - RBMP - RBPoubelle - - - -
        diff --git a/OldCodes/UiQT4/desWidgetSimpFichier.ui b/OldCodes/UiQT4/desWidgetSimpFichier.ui deleted file mode 100644 index 408f8dfb..00000000 --- a/OldCodes/UiQT4/desWidgetSimpFichier.ui +++ /dev/null @@ -1,374 +0,0 @@ - - - WidgetSimpFichier - - - - 0 - 0 - 1095 - 62 - - - - - 0 - 0 - - - - - 0 - 0 - - - - Form - - - - 0 - - - 0 - - - 1 - - - 0 - - - 1 - - - - - - - 0 - - - - - Qt::Horizontal - - - QSizePolicy::Fixed - - - - 21 - 20 - - - - - - - - - 21 - 25 - - - - - 21 - 25 - - - - Affiche le rapport de validité du mot-clef - - - border : 0px - - - ... - - - - ../Editeur/icons/ast-green-ball.png../Editeur/icons/ast-green-ball.png - - - - 25 - 25 - - - - - - - - - - Qt::Vertical - - - - 20 - 5 - - - - - - - - - - - 0 - 0 - - - - - 300 - 25 - - - - - 178 - 16777215 - - - - QFrame::NoFrame - - - <html><head/><body><p>aaa</p><p>dqsklmdqm</p></body></html> - - - false - - - Qt::AlignLeading|Qt::AlignLeft|Qt::AlignTop - - - - - - - - - - - - 1 - 0 - - - - - 0 - 25 - - - - - 805 - 16777215 - - - - background:rgb(235,235,235); -border:0px; - - - - - - - Qt::Horizontal - - - QSizePolicy::MinimumExpanding - - - - 71 - 20 - - - - - - - - 0 - - - QLayout::SetFixedSize - - - - - - 0 - 0 - - - - - 25 - 25 - - - - affiche l'explorateur de fichier - - - border : 0px - - - ... - - - - - - - - - 25 - 25 - - - - - - - - - 25 - 25 - - - - ouvre le fichier choisi - - - border:0px - - - ... - - - - ../Editeur/icons/visuFichier.png../Editeur/icons/visuFichier.png - - - - 25 - 25 - - - - - - - - Qt::Horizontal - - - QSizePolicy::Fixed - - - - 13 - 20 - - - - - - - - - 0 - 0 - - - - - 21 - 25 - - - - - 21 - 25 - - - - Détruit le mot-clef - - - border : 0px - - - ... - - - - ../Editeur/icons/deleteRond.png../Editeur/icons/deleteRond.png - - - - 21 - 25 - - - - - - - - - - - - Qt::Vertical - - - QSizePolicy::Expanding - - - - 20 - 5 - - - - - - - - - - - MonBoutonValide - QToolButton -
        monBoutonValide.h
        -
        - - MonLabelClic - QLabel -
        monLabelClic.h
        -
        -
        - - lineEditVal - BFichier - BVisuFichier - RBPoubelle - RBValide - - - -
        diff --git a/OldCodes/UiQT4/desWidgetSimpSalome.ui b/OldCodes/UiQT4/desWidgetSimpSalome.ui deleted file mode 100644 index ba8ed2fd..00000000 --- a/OldCodes/UiQT4/desWidgetSimpSalome.ui +++ /dev/null @@ -1,373 +0,0 @@ - - - WidgetSimpSalome - - - - 0 - 0 - 1095 - 62 - - - - - 0 - 0 - - - - - 0 - 0 - - - - Form - - - - 0 - - - 0 - - - 1 - - - 0 - - - 1 - - - - - - - 0 - - - - - Qt::Horizontal - - - QSizePolicy::Fixed - - - - 21 - 20 - - - - - - - - - 21 - 25 - - - - - 21 - 25 - - - - Affiche le rapport de validité du mot-clef - - - border : 0px - - - ... - - - - ../Editeur/icons/ast-green-ball.png../Editeur/icons/ast-green-ball.png - - - - 25 - 25 - - - - - - - - - - Qt::Vertical - - - - 20 - 5 - - - - - - - - - - - 0 - 0 - - - - - 300 - 25 - - - - - 178 - 16777215 - - - - QFrame::NoFrame - - - <html><head/><body><p>aaa</p><p>dqsklmdqm</p></body></html> - - - false - - - Qt::AlignLeading|Qt::AlignLeft|Qt::AlignTop - - - - - - - - - - - - 1 - 0 - - - - - 0 - 25 - - - - - 805 - 16777215 - - - - background:rgb(235,235,235); -border:0px; - - - - - - - Qt::Horizontal - - - QSizePolicy::MinimumExpanding - - - - 71 - 20 - - - - - - - - 0 - - - QLayout::SetFixedSize - - - - - - 0 - 0 - - - - - 25 - 25 - - - - affiche l'explorateur de fichier - - - border : 0px - - - ... - - - - ../Editeur/icons/flecheSalome.png../Editeur/icons/flecheSalome.png - - - - 25 - 25 - - - - - - - - - 25 - 25 - - - - ouvre le fichier choisi - - - border:0px - - - ... - - - - ../Editeur/icons/eye.png../Editeur/icons/eye.png - - - - 25 - 25 - - - - - - - - Qt::Horizontal - - - QSizePolicy::Fixed - - - - 13 - 20 - - - - - - - - - 0 - 0 - - - - - 21 - 25 - - - - - 21 - 25 - - - - Détruit le mot-clef - - - border : 0px - - - ... - - - - ../Editeur/icons/deleteRond.png../Editeur/icons/deleteRond.png - - - - 21 - 25 - - - - - - - - - - - - Qt::Vertical - - - QSizePolicy::Expanding - - - - 20 - 5 - - - - - - - - - - - MonBoutonValide - QToolButton -
        monBoutonValide.h
        -
        - - MonLabelClic - QLabel -
        monLabelClic.h
        -
        -
        - - lineEditVal - RBSalome - RBSalomeVue - RBPoubelle - RBValide - - - -
        diff --git a/OldCodes/UiQT4/desWidgetSimpTxt.ui b/OldCodes/UiQT4/desWidgetSimpTxt.ui deleted file mode 100644 index 6fa4b7e9..00000000 --- a/OldCodes/UiQT4/desWidgetSimpTxt.ui +++ /dev/null @@ -1,304 +0,0 @@ - - - WidgetSimpTxt - - - - 0 - 0 - 743 - 60 - - - - - 0 - 0 - - - - - 0 - 0 - - - - - 1677721 - 60 - - - - Form - - - - 0 - - - 1 - - - 0 - - - 0 - - - 1 - - - - - 0 - - - - - 0 - - - QLayout::SetFixedSize - - - - - Qt::Horizontal - - - QSizePolicy::Fixed - - - - 21 - 20 - - - - - - - - - 21 - 25 - - - - - 21 - 25 - - - - Qt::ClickFocus - - - Affiche le rapport de validation du mot-clef - - - border : 0px - - - ... - - - - ../Editeur/icons/ast-green-ball.png../Editeur/icons/ast-green-ball.png - - - - 25 - 25 - - - - - - - - - - Qt::Vertical - - - - 20 - 5 - - - - - - - - - - - 0 - 0 - - - - - 300 - 25 - - - - - 178 - 16777215 - - - - QFrame::NoFrame - - - <html><head/><body><p>aaa</p><p>dqsklmdqm</p></body></html> - - - false - - - Qt::AlignLeading|Qt::AlignLeft|Qt::AlignTop - - - - - - - 0 - - - - - - - - 1 - 0 - - - - - 0 - 25 - - - - - 805 - 16777215 - - - - background:rgb(235,235,235); -border:0px; - - - - - - - Qt::Horizontal - - - QSizePolicy::Fixed - - - - 3 - 20 - - - - - - - - Qt::Horizontal - - - QSizePolicy::Expanding - - - - 5 - 20 - - - - - - - - - 21 - 25 - - - - - 21 - 25 - - - - Qt::ClickFocus - - - Détruit le mot-clef - - - border : 0px - - - ... - - - - ../Editeur/icons/deleteRond.png../Editeur/icons/deleteRond.png - - - - 25 - 25 - - - - - - - - - - Qt::Vertical - - - - 20 - 5 - - - - - - - - - - - MonBoutonValide - QToolButton -
        monBoutonValide.h
        -
        - - MonLabelClic - QLabel -
        monLabelClic.h
        -
        -
        - - -
        diff --git a/OldCodes/UiQT4/desWidgetTuple2.ui b/OldCodes/UiQT4/desWidgetTuple2.ui deleted file mode 100644 index 9c45154b..00000000 --- a/OldCodes/UiQT4/desWidgetTuple2.ui +++ /dev/null @@ -1,345 +0,0 @@ - - - WidgetTuple2 - - - - 0 - 0 - 936 - 62 - - - - - 0 - 0 - - - - - 0 - 0 - - - - Form - - - - - - - 0 - - - 0 - - - 1 - - - 0 - - - 1 - - - - - 0 - - - - - 0 - - - QLayout::SetFixedSize - - - - - Qt::Horizontal - - - QSizePolicy::Fixed - - - - 21 - 20 - - - - - - - - - 21 - 25 - - - - - 21 - 25 - - - - Qt::ClickFocus - - - Affiche le rapport de validation du mot-clef - - - border : 0px - - - ... - - - - ../Editeur/icons/ast-green-ball.png../Editeur/icons/ast-green-ball.png - - - - 25 - 25 - - - - - - - - - - Qt::Vertical - - - - 20 - 5 - - - - - - - - - - - 0 - 0 - - - - - 300 - 25 - - - - - 178 - 16777215 - - - - QFrame::NoFrame - - - <html><head/><body><p>aaa</p><p>dqsklmdqm</p></body></html> - - - false - - - Qt::AlignLeading|Qt::AlignLeft|Qt::AlignTop - - - - - - - - - - - - - <html><head/><body><p><span style=" font-size:14pt;">(</span></p></body></html> - - - - - - - - 0 - 0 - - - - - 0 - 25 - - - - - 805 - 16777215 - - - - background:rgb(235,235,235); -border:0px; - - - - - false - - - - - - - <html><head/><body><p><span style=" font-size:14pt;">,</span></p></body></html> - - - - - - - - 0 - 0 - - - - - 0 - 25 - - - - - 805 - 16777215 - - - - Qt::StrongFocus - - - background:rgb(235,235,235); -border:0px; - - - - - - - <html><head/><body><p><span style=" font-size:14pt;">)</span></p></body></html> - - - - - - - - - Qt::Horizontal - - - QSizePolicy::Expanding - - - - 58 - 20 - - - - - - - - - 21 - 25 - - - - - 21 - 25 - - - - Qt::ClickFocus - - - Détruit le mot-clef - - - border : 0px - - - ... - - - - ../Editeur/icons/deleteRond.png../Editeur/icons/deleteRond.png - - - - 25 - 25 - - - - - - - - - - Qt::Vertical - - - - 20 - 5 - - - - - - - - - - - MonBoutonValide - QToolButton -
        monBoutonValide.h
        -
        - - MonLabelClic - QLabel -
        monLabelClic.h
        -
        -
        - - lineEditVal1 - lineEditVal2 - - - -
        diff --git a/OldCodes/UiQT4/desWidgetTuple3.ui b/OldCodes/UiQT4/desWidgetTuple3.ui deleted file mode 100644 index a31e9b55..00000000 --- a/OldCodes/UiQT4/desWidgetTuple3.ui +++ /dev/null @@ -1,362 +0,0 @@ - - - WidgetTuple3 - - - - 0 - 0 - 1282 - 61 - - - - - 0 - 0 - - - - - 0 - 0 - - - - Form - - - - 0 - - - 1 - - - 0 - - - 0 - - - 1 - - - - - 0 - - - - - 0 - - - QLayout::SetFixedSize - - - - - Qt::Horizontal - - - QSizePolicy::Fixed - - - - 21 - 20 - - - - - - - - - 21 - 25 - - - - - 21 - 25 - - - - Qt::ClickFocus - - - Affiche le rapport de validation du mot-clef - - - border : 0px - - - ... - - - - ../Editeur/icons/ast-green-ball.png../Editeur/icons/ast-green-ball.png - - - - 25 - 25 - - - - - - - - - - Qt::Vertical - - - - 20 - 5 - - - - - - - - - - - 0 - 0 - - - - - 300 - 25 - - - - - 178 - 16777215 - - - - QFrame::NoFrame - - - <html><head/><body><p>aaa</p><p>dqsklmdqm</p></body></html> - - - false - - - Qt::AlignLeading|Qt::AlignLeft|Qt::AlignTop - - - - - - - - - - - <html><head/><body><p><span style=" font-size:14pt;">(</span></p></body></html> - - - - - - - - 0 - 0 - - - - - 0 - 25 - - - - - 805 - 16777215 - - - - background:rgb(235,235,235); -border:0px; - - - - - - - <html><head/><body><p><span style=" font-size:14pt;">,</span></p></body></html> - - - - - - - - 0 - 0 - - - - - 0 - 25 - - - - - 805 - 16777215 - - - - Qt::StrongFocus - - - background:rgb(235,235,235); -border:0px; - - - - - - - <html><head/><body><p><span style=" font-size:14pt;">,</span></p></body></html> - - - - - - - - 0 - 0 - - - - - 0 - 25 - - - - - 805 - 16777215 - - - - Qt::StrongFocus - - - background:rgb(235,235,235); -border:0px; - - - - - - - <html><head/><body><p><span style=" font-size:14pt;">)</span></p></body></html> - - - - - - - Qt::Horizontal - - - - 40 - 20 - - - - - - - - - 21 - 25 - - - - - 21 - 25 - - - - Qt::ClickFocus - - - Détruit le mot-clef - - - border : 0px - - - ... - - - - ../Editeur/icons/deleteRond.png../Editeur/icons/deleteRond.png - - - - 25 - 25 - - - - - - - - - - Qt::Vertical - - - - 20 - 13 - - - - - - - - - - - MonBoutonValide - QToolButton -
        monBoutonValide.h
        -
        - - MonLabelClic - QLabel -
        monLabelClic.h
        -
        -
        - - -
        diff --git a/OldCodes/UiQT4/desWidgetUniqueSDCO.ui b/OldCodes/UiQT4/desWidgetUniqueSDCO.ui deleted file mode 100644 index 178cfc04..00000000 --- a/OldCodes/UiQT4/desWidgetUniqueSDCO.ui +++ /dev/null @@ -1,277 +0,0 @@ - - - WidgetUniqueSDCO - - - - 0 - 0 - 1069 - 56 - - - - - 0 - 0 - - - - - 0 - 0 - - - - Form - - - - 1 - - - 0 - - - - - 0 - - - - - 0 - - - QLayout::SetFixedSize - - - - - Qt::Horizontal - - - QSizePolicy::Fixed - - - - 21 - 20 - - - - - - - - - 21 - 25 - - - - - 21 - 25 - - - - Qt::ClickFocus - - - Affiche le rapport de validation du mot-clef - - - border : 0px - - - ... - - - - ../Editeur/icons/ast-green-ball.png../Editeur/icons/ast-green-ball.png - - - - 25 - 25 - - - - - - - - - - Qt::Vertical - - - - 20 - 2 - - - - - - - - - - - 0 - 0 - - - - - 300 - 25 - - - - - 178 - 16777215 - - - - QFrame::NoFrame - - - <html><head/><body><p>aaa</p><p>dqsklmdqm</p></body></html> - - - false - - - Qt::AlignLeading|Qt::AlignLeft|Qt::AlignTop - - - - - - - 0 - - - - - - 0 - 25 - - - - - 805 - 16777215 - - - - background:rgb(235,235,235); -border:0px; - - - - - - - Attend un objet de type CO - - - - - - - - - Qt::Horizontal - - - QSizePolicy::MinimumExpanding - - - - 79 - 17 - - - - - - - - - - - 21 - 25 - - - - - 21 - 25 - - - - Qt::ClickFocus - - - Détruit le mot-clef - - - border : 0px - - - ... - - - - ../Editeur/icons/deleteRond.png../Editeur/icons/deleteRond.png - - - - 25 - 25 - - - - - - - - Qt::Vertical - - - - 20 - 2 - - - - - - - - - - - MonBoutonValide - QToolButton -
        monBoutonValide.h
        -
        - - MonLabelClic - QLabel -
        monLabelClic.h
        -
        -
        - - LESDCO - - - -
        diff --git a/OldCodes/UiQT4/desWidgetVide.ui b/OldCodes/UiQT4/desWidgetVide.ui deleted file mode 100644 index 03a815f7..00000000 --- a/OldCodes/UiQT4/desWidgetVide.ui +++ /dev/null @@ -1,330 +0,0 @@ - - - WidgetVide - - - - 0 - 0 - 1069 - 55 - - - - - 0 - 0 - - - - - 0 - 0 - - - - Form - - - - 0 - - - 0 - - - 2 - - - 0 - - - 0 - - - - - 0 - - - QLayout::SetFixedSize - - - - - Qt::Horizontal - - - QSizePolicy::Fixed - - - - 21 - 20 - - - - - - - - - 21 - 31 - - - - - 21 - 35 - - - - Qt::ClickFocus - - - border : 0px - - - ... - - - - ../Editeur/icons/ast-green-ball.png../Editeur/icons/ast-green-ball.png - - - - 32 - 32 - - - - - - - - - - - 0 - 0 - - - - - 300 - 24 - - - - - 178 - 16777215 - - - - QFrame::NoFrame - - - <html><head/><body><p><span style=" color:#0055ff;">Label</span></p></body></html> - - - - - - - - 1 - 0 - - - - - 0 - 32 - - - - - 805 - 16777215 - - - - background:rgb(235,235,235); -border:0px; - - - Attend un objet de type XXXX. Il faut le créer - - - - - - - Qt::Horizontal - - - QSizePolicy::MinimumExpanding - - - - 79 - 17 - - - - - - - - 0 - - - - - - 25 - 30 - - - - - 25 - 30 - - - - Qt::ClickFocus - - - border : 0px - - - ... - - - - ../Editeur/icons/flecheSalome.png../Editeur/icons/flecheSalome.png - - - - 32 - 32 - - - - - - - - - 0 - 0 - - - - - 25 - 30 - - - - - 25 - 30 - - - - Qt::ClickFocus - - - border:0px - - - ... - - - - ../Editeur/icons/icon_salome.png../Editeur/icons/icon_salome.png - - - - 32 - 32 - - - - - - - - Qt::Horizontal - - - QSizePolicy::Fixed - - - - 13 - 20 - - - - - - - - - 21 - 31 - - - - - 21 - 31 - - - - Qt::ClickFocus - - - border : 0px - - - ... - - - - ../Editeur/icons/deleteRond.png../Editeur/icons/deleteRond.png - - - - 21 - 32 - - - - - - - - - - - MonBoutonValide - QToolButton -
        monBoutonValide.h
        -
        -
        - - lineEditVal - RBSalome - RBSalomeVue - RBValide - RBPoubelle - - - -
        diff --git a/OldCodes/UiQT4/eficas_en.0106.ts b/OldCodes/UiQT4/eficas_en.0106.ts deleted file mode 100644 index e514c2ef..00000000 --- a/OldCodes/UiQT4/eficas_en.0106.ts +++ /dev/null @@ -1,3948 +0,0 @@ - - - - @default - - - lecture du fichier impossible : - unable to read file : - - - - Impossible d'ouvrir le fichier %s - unable to open file %s - - - - Impossible de convertir le fichier Python qui doit contenir des erreurs. - - On retourne le fichier non converti. Prevenir la maintenance. - - %s - Unable to translate the file. it probably contains mistake -ask eficas team -%s - - - - Format de sortie : %s, non supporte - Unsupported format %s - - - - Impossible d'ouvrir le fichier : %s - unable to open file: %s - - - - Erreur ! Erreur ! - Error! - - - - Erreur rencontree dans recherche_enfants : %s - Error in recherche_enfants : %s - - - - Erreur dans la creation du mot-cle : %s - Error when creating %s - - - - Impossible d'ouvrir le fichier : %s - unable to open file : %s - - - - le texte a analyser n'est pas celui d'une commande ou d'un operateur : - text is no eficas text: - - - - Erreur dans la recherche du nom de la commande : - error when searching command's name : - - - - Erreur dans la recherche des args de la commande : - error when searching argument's command : - - - - Erreur dans la recherche du nom de la commande : - error when searching command's name : - - - - Erreur dans la recherche des args de la commande : - error when searching argument's command : - - - - %d n'est pas un index valide pour append_brother - %d is not a valid index for append-brother - - - - le fichier de commandes %s n'existe pas - commands file %s does not exist - - - - un fichier de commandes doit etre defini avant une poursuite %s - You have to define principal commands file before a secondary (poursuite) file %s - - - - le fichier poursuite %s n'existe pas - the secondary (poursuite) file does not exist - - - - include mal defini %s - include is not correct %s - - - - un fichier de commandes doit etre defini avant un include %s - You have to define principal commands file before include %s - - - - le fichier include %s n'existe pas - include file does not exist - - - - jdc %(v_1)s, le fichier - de commandes %(v_2)s n'existe pas - v_1 - jdc %(v_1)s : .comm %(v_2)s does not exist - - - - le fichier jdc %s n'existe pas - file %s does not exist - - - - jdc %s manque option jdc dans section jdc - jdc %s does not have jdc option in command line - - - - %(v_1)s include %(v_2)s : %(v_3)s - v_1 - %(v_1)s include %(v_2)s : %(v_3)s - - - - %(v_1)s fichier poursuite: %(v_2)s - v_1 - %(v_1)ssecondary (poursuite) file %(v_2)s - - - - nom etude : %s - study's name : %s - - - - utilisation : %prog [options] - use : %prog[options] - - - - nom du fichier de commandes - principal .comm file's name - - - - nom du fichier poursuite - secondary (poursuite) file's name - - - - numero d'unite suivi du nom du fichier include - unit number and include file's name - - - - fichier decrivant une etude - file containing a study - - - - version de catalogue a utiliser - catalog's version - - - - nom du code a utiliser - code's name - - - - niveau de debug - debug level - - - - schema - schema - - - - Nombre incorrect d'arguments - incorrect number of arguments - - - - Localisation specifiee pour l'application. - specified localization for the application. - - - - Impossible de transferer les fichiers requis dans : %s - unable to transfer files to : %s - - - - Erreur - error - - - - Erreurs fatales - fatale error - - - - Impossible reconstruire commande - - unable to construct command - - - - Objet commentaire non valorise - comment object has no value - - - - Debut Fonction %s - start function %s - - - - Fin Fonction %s - end function %s - - - - Nom de concept deja defini : %s - Concept's name %s is already existing - - - - Longueur incorrecte - incorrect length - - - - L'attribut 'min' doit etre un entier : - min must be an integer : - - - - L'attribut 'max' doit etre un entier : - max must be an integer : - - - - Nombres d'occurrence min et max invalides : - min and max are invalid: - - - - L'attribut 'fr' doit etre une chaine de caracteres - 'fr' must be a string - - - - L'attribut 'statut' doit valoir 'o','f','c' ou 'd' - values for statut arguments are : 'o','f','c' or 'd' - - - - L'attribut 'docu' doit etre une chaine de caracteres - docu must be a string - - - - Fin - end - - - - Le parametre EVAL %s ne peut valoir None - None is not a valid value for Eval parameter %s - - - - Pas de nom donne au parametre EVAL - No name for parameter EVAL - - - - Un nom de parametre ne peut depasser 8 caracteres - parameter's name can not exceed 8 characters - - - - Un concept de nom %s existe deja ! - Concept's name %s is already existing! - - - - ERREUR - ERROR - - - - Format pas implemente : %s - format : %s not implemented - - - - Type d'objet non prevu : %s - object type not expected : %s - - - - ce groupe de maillage %s est associe a au moins un materiau et au moins une source. - mesh group %s is associated with at least one material and at least a source. - - - - ce groupe de maillage %s n'est associe a aucun materiau ou source. - mesh group %s is associated with no material or no source. - - - - ATTENTION! Une source constante n'est possible qu'a frequence nulle en regime frequentiel - - - - - toutes les donnees ne sont pas connues - all data are not available - - - - Fichier patron %s n'existe pas. - pattern file %s does not exist. - - - - Pas supporte - not implemented - - - - Entite inconnue ou interdite :%s - Unknown or unsupported entity : %s - - - - Entite inconnue ou interdite :%s. Elle est ignoree - Unknown or unsupported entity : %s. ignored - - - - Les tuples ne sont pas supportes pour le format ini :%s - Tuple are not allowed for format ini : %s - - - - Type de valeur non supportee par le format ini :%(nom)s -%(exception)s - nom - Unsupported type of value for .ini format %(nom)s -%(exception)s - - - - Il y a un pb a la Creation du XML - problem when creating XML - - - - Il y a un pb a la Creation du STD - problem when creating STD - - - - Entite inconnue ou interdite : %s. Elle est ignoree - unkown ou unsupported entity : %s. ignored - - - - Tag %s non-defini. Ceci est un bogue interne. en informer les developpeurs. - Tag %s not defined. Ask developpeurs team. - - - - Le mot-cle %s est obligatoire. - mandatory keyword : %s. - - - - concept %(inst_name)s de type %(class_name)s - inst_name - concept %(inst_name)s of type %(class_name)s - - - - Un nom de concept doit etre un identificateur Python - concept's name must be a python identifier - - - - Concept existant - allready existing concept - - - - Operateur reentrant mais concept non existant - operator 'reentrant' but concept does not exist - - - - Operateur reentrant et concept existant trouve - Operator 're-entrant' and concept exists - - - - Concept deja existant et de mauvais type - already existing concept of not supported type - - - - Nommage du concept refuse : un concept de meme nom existe deja - Name is refused : already existing concept - - - - Nommage du concept effectue - Concept named - - - - Nommage impossible %s - unable to name %s - - - - La liste des arguments d'une formule doit etre entre parentheses : parenthese ouvrante manquante - formula expects a list of arguments : no left parenthesis - - - - La liste des arguments d'une formule doit etre entre parentheses : parenthese fermante manquante - formula expects a list of arguments : no right parenthes - - - - Pas de nom donne a la FORMULE - no name given - - - - Un nom de FORMULE ne peut depasser 8 caracteres - name too long (8 characters max) - - - - Un nom de FORMULE ne peut pas commencer par un chiffre - name does not begin with a figure - - - - Le type de la valeur retournee n'est pas specifie - no type is specified for the return value - - - - Une formule ne peut retourner une valeur de type : %s - impossible to return a value of type : %s - - - - Impossible d'ajouter la commande - unable to add the keyword (commande) - - - - Impossible d ajouter la commande - unable to add the keyword (commande) - - - - Pas implemente - not implemented - - - - Nom de concept deja defini - already defined concept - - - - Nom de concept deja defini : - already defined concept : - - - - Impossible de trouver le fichier correspondant a l'unite - unable to find file corresponding to unit - - - - n'est pas un fichier existant - is not an existing file - - - - Fichier invalide %s - invalid file %s - - - - Impossible de construire le jeu de commandes correspondant au fichier - unable to create the jdc corresponding to the file - - - - Erreur lors de l'evaluation du fichier inclus - Error when reading the 'include' file - - - - Ce fichier ne sera pas pris en compte - %s - the file is ignored -%s - - - - Ce fichier ne sera pas pris en compte -Le fichier associe n'est pas defini - the file is ignored : associated file is not defined - - - - Le fichier n est pas defini - file is not defined - - - - le fichier doit contenir une unique variable de sortie - file must declare a single output variable - - - - Fichier invalide - invalid file - - - - Le contenu de ce fichier ne sera pas pris en compte - %s - the file will be ignored : -%s - - - - Le fichier INCLUDE n est pas defini - include file is not defined - - - - Le contenu de ce fichier ne sera pas pris en compte - - file will be ignored - - - - - Erreur lors de l'evaluation du fichier poursuite - Error when creating secondary (poursuite) file - - - - L'objet %(v_1)s ne peut etre un fils de %(v_2)s - v_1 - Object %(v_1)s can not be a child for %(v_2)s - - - - L'objet %s ne peut pas etre repete - Object %s can not be repeated - - - - Erreur - mclist inexistante : %s - Error - mclist does not exist : %s - - - - Erreur - mot cle facteur de nom : %s - Error - keyword "mot-clef facteur" nammed : %s - - - - traitement non-prevu - unexpected task - - - - L'objet %s ne peut pas etre ajoute - Object %s cannot be add - - - - None n'est pas une valeur autorisee - None is not a valid value - - - - un concept de meme nom existe deja - concept already exists - - - - Concept cree - concept created - - - - La matrice n'est pas une matrice %(n_lign)d sur %(n_col)d - n_lign - matrix is not a %(n_lign)d x %(n_col)d matrix - - - - Decommenter - uncomment - - - - Decommente la commande - uncomment the command - - - - Impossible de supprimer un mot-cle obligatoire - mandatory keyword cannot be deleted - - - - Mot-cle %s supprime - Keyword %s deleted - - - - Pb interne : impossible de supprimer ce mot-cle - internal problem : unable to delete keyword - - - - Commentaire supprime - comment is deleted - - - - Commande %s supprimee - command %s is deleted - - - - Pb interne : impossible de supprimer cet objet - internal problem : unable to delete object - - - - Le fichier de commande n'a pas pu etre converti pour etre editable par Eficas - - - unable to convert .comm file in order to open it with Eficas - - - - Include vide - include file is empty - - - - L'include doit etre correctement initialise pour etre visualise - include file must be correct - - - - Impossible de supprimer ce mot-clef - unable to delete this keyword - - - - View3D - View3D - - - - affiche dans Geom les elements de structure - diplay SE in Geom - - - - Graphique - graphic - - - - affiche la distribution - display distribution - - - - Impossible de supprimer un mot-clef obligatoire - unable to delete a mandatory keyword - - - - Mot-clef %s supprime - Keyword %s is deleted - - - - Definition d'un parametre - defines a parameter - - - - Import du fichier de Configuration - import configuration file - - - - Erreur a la lecture du fichier de configuration %s - Error when reading configuration file - - - - Erreur fatale au chargement de %s - fatal error when loading %s - - - - Erreur fatale au chargement d'un fichier - Fatal error when loading file - - - - fichier modifie - file updated - - - - Attention! fichier change hors EFICAS - Warning ! this file was modified outside Eficas - - - - Type de fichier non reconnu - unsupported file type - - - - EFICAS ne sait pas ouvrir le type de fichier %s - Eficas is not able to open this file's type : %s - - - - EFICAS ne sait pas ouvrir ce type de fichier - Eficas is not able to open this file's type - - - - Copie impossible - unable to copy - - - - Veuillez selectionner un objet a copier - you have to select an object to copy - - - - Veuillez selectionner un seul objet : la copie se fera apres le noeud selectionne - You have to select a single object : copy will be done after the selected node - - - - Aucun Objet n a ete copie ou coupe - No object was cut or copied - - - - Copie refusee - rejected copy - - - - Eficas n a pas reussi a copier l objet - Eficas cannot copy this object - - - - Copie refusee pour ce type d objet - Copy rejected : bad object type - - - - Deplacement refuse - move rejected - - - - Deplacement refuse entre 2 fichiers. Seule la copie est autorisee - move rejected. no move between two files : only copy is available - - - - Copie impossible a cet endroit - unable to copy here - - - - Veuillez selectionner une commande, un parametre, un commentaire ou une macro - select a command; a parameter, a comment or a macro - - - - Choix d'un fichier XML - Choice of XML file - - - - Ouvrir Fichier - Open file - - - - Erreur a la generation - Error when generating - - - - EFICAS ne sait pas convertir ce JDC - Eficas is unable to convert JDC - - - - Format %s non reconnu - not supported format %s - - - - Execution impossible - Unable to execute - - - - le JDC doit etre valide pour une execution MAP - JDC has to be valid before run - - - - le JDC doit contenir un et un seul composant - JDC must contains a single componant - - - - sauvegarde - save - - - - Sauvegarde du Fichier - save file - - - - Le fichier <b>%s</b> existe deja. - file <b>%s</b> already exists. - - - - &Ecraser - &Replace - - - - Donnez le nom du fichier correspondant a l unite logique - Choose file corresponding to unit - - - - Choix d'un fichier de poursuite - Choose poursuite file - - - - Le fichier %s contient une commande POURSUITE - - file %s contains a POURSUITE command - - - - Traduire Fichier - file translation - - - - Fichiers JDC (*.comm);;Tous les Fichiers (*) - JDC files(*.comm);; All FIles(*) - - - - Fichier Traduit : %s - - - Translated file : %s - - - - Pas de difference entre le fichier origine et le fichier traduit - No difference between the primary file and the translated file - - - - %d versions du catalogue sont disponibles - %d catalogs versions are available - - - - &Ok - &Ok - - - - Entrez - enter - - - - valeurs - values - - - - Entrez entre - enter between - - - - et - and - - - - Selection - selection - - - - Type de base inconnu - unkown type - - - - Visualisation Fichier - view file - - - - Impossibilite d'afficher le Fichier - Unable to display file - - - - Sauvegarder Fichier - save File - - - - Fichier selectionne - file selected - - - - expression valide - valid expression - - - - expression invalide - unvalid expression - - - - expression n est pas de la forme a+bj - expression is not as a+bj - - - - entrer une seule valeur SVP - Please, enter a single value - - - - saisir le type de complexe - choose complex's type - - - - Sauvegarder le fichier - save file - - - - Le fichier <b>%(v_1)s</b> n'a pu etre sauvegarde. <br>Raison : %(v_2)s - v_1 - file <b>%(v_1)s</b> was not saved. Raison : %(v_2)s - - - - &Recents - &Recently Opened - - - - Aide specifique - code's help - - - - Traduction - translation - - - - Options - Options - - - - TraduitV7V8 - - - - - TraduitV8V9 - - - - - TraduitV9V10 - - - - - Acquiert Groupe Maille - - - - - Specificites Maille - - - - - version - version - - - - pour - for - - - - Aide Indisponible - no help avalaible - - - - Parametrage - Options - - - - Veuillez d abord choisir un code - Choose a code - - - - Pas de possibilite de personnalisation de la configuration - no options avalaible for configuration - - - - &Effacer - &Delete - - - - Veuillez entrer le complexe sous forme aster ou sous forme python - enter a complex - - - - Import du catalogue - Loading catalog - - - - Pas de catalogue defini pour le code - No catalog for this code - - - - Aucun catalogue trouve - No catalog - - - - avec le catalogue - with catalog - - - - Impossible d'importer le catalogue - unable to load catalog - - - - Choix d une version du code - Choose a version for - - - - Choix d une version - choose a version - - - - Parametre - parameter - - - - Insere un parametre - insert a parameter - - - - item invalide - invalid item - - - - l item doit etre valide - item must be valid - - - - apres - after - - - - Insere un commentaire apres la commande - insert a comment after the command - - - - avant - before - - - - Insere un commentaire avant la commande - insert a comment before the command - - - - Insere un parametre apres la commande - insert a parameter after the command - - - - Insere un parametre avant la commande - insert a parameter before the commande - - - - Supprimer - delete - - - - supprime le mot clef - delete keyword - - - - Documentation - documentation - - - - documentation sur la commande - command's documentation - - - - Documentation Vide - empty documentation - - - - Aucune documentation n'est associee a ce noeud - no documentation is available for this node - - - - impossible de trouver la commande - unable to find command - - - - Lecteur PDF - PDF reader - - - - impossible d'ouvrir - unable to open - - - - Commentaire - Comment - - - - ce noeud - this node - - - - commente le noeud - comment this node - - - - Fichiers JDC (*.comm);;Tous les Fichiers (*) - JDC Files (*.comm);;All Files(*) - - - - &Quitter - &Exit - - - - Quitter - Exit - - - - Fichier Duplique - file is duplicated - - - - Le fichier ne sera pas sauvegarde. - File will not be saved. - - - - &Annuler - &Cancel - - - - Fichier - File - - - - Le fichier <b>%s</b> est deja ouvert. - File <b>%s</b> is already open. - - - - &Duplication - &Duplication - - - - &Abort - &Abort - - - - Fichier Modifie - File is modified - - - - Le fichier %s n a pas ete sauvegarde. - file %s was not saved. - - - - &Sauvegarder - &Save - - - - Erreur a l'evaluation : - %s - Error when loadind : -%s - - - - Un fichier de nom %s existe deja : impossible de creer un repertoire de meme nom - File %s already exists : unable to create a directory with the same name - - - - Creation du repertoire %s impossible - Verifiez vos droits d'acces - Unable to create directory : check your access rights - - - - localisation de l'application, pour la traduction - use for application translation - - - - ERREUR! ce groupe de maille (%s) n'a pas de prefixe valable - - - - - ERREUR! ce type de bloc (%s) n'est pas valable - - - - - n'est pas un index valide pour append_brother - is not correct - no possible "append_brother" - - - - Erreur interne - Internal error - - - - La PDF de la loi ne peut pas etre affichee. - unable to display law's PDF. - - - - Le fichier contient une commande MODEL - - file contains MODEL command - - - - Donnez le nom du fichier XML qui contient la description des variables - - - - - Choix unite %d - Choice for unit %d - - - - Fichier pour unite - File for unit - - - - La formule passee a l'interpreteur doit etre sous forme de tuple - formula must be written as tuple - - - - Debut - Beginning - - - - Le parametre EVAL ne peut valoir None - None is not a valid value for EVAL - - - - Pas de nom donne au parametre - No name given - - - - Le parametre %s ne peut valoir None - None is an incorrect value for parameter %s - - - - Format non implemente : %s - Not implemented format - - - - Type de valeur non supporte par le format pyth : n %(exception)s - nom - unsupported type of value - - - - Impossible de realiser la verification de la formule - unable to verify formula - - - - Pb interne : impossible de supprimer ce mot-clef - internal problem : unable to delete keyword - - - - Eficas ne peut pas traiter plusieurs instructions - sur la meme ligne : %s - Eficas is not able to manage many instructions on a same line - - - - le texte a analyser n'est pas celui d'une commande ou - d'un operateur : %s - text is not valid for a command or a operaor - - - - le texte a analyser n'est pas celui d'une commande connue : - %(v_1)s %(v_2)s - v_1 - text is not valid for command %(v_1)s %(v_2)s - - - - le texte a analyser n'est pas celui d'une commande connue : - %(v_1)s %(v_2)s - v_1 - text is not valid for command %(v_1)s %(v_2)s - - - - jdc %(v_1)s manque - fichier comm dans section %(v_2)s - v_1 - file %(v_1)s need a .comm file in section %(v_2)s - - - - jdc %(v_1)s - fichier include %(v_2)s, %(v_3)s - n'existe pas - v_1 - file %(v_1)s need an include file %(v_2)s,%(v_3)s does not exist - - - - jdc %(v_1)s manque fichier comm - dans section %(v_2)s - v_1 - file %(v_1)s need a .comm file in section %(v_2)s - - - - jdc %(v_1)s, le fichier de commandes - %(v_2)s n'existe pas - v_1 - jdc%(v_1)s, .comm %(v_2)s does not exist - - - - ATTENTION! Une source constante - n'est possible qu'a frequence nulle - en regime frequentiel - - - - - ERREUR! Une forme de la source du - type WAVEFORM_CONSTANT ou WAVEFORM_SINUS est attendue. - - - - - ATTENTION! Une source constante n'est - possible qu'a frequence nulle en regime frequentiel - - - - - ERREUR! Une forme de la source du type - WAVEFORM_CONSTANT ou WAVEFORM_SINUS est attendue. - - - - - ERREUR! ce groupe de maille (%s) n'a pas de prefixe - indiquant le type de materiau ou de source associee - - - - - ERREUR! ce groupe de maille (%(nom)s) n'a pas - le prefixe correct pour etre associe a un type %(type_bloc)s - nom - - - - - - Include Invalide. - ne sera pas pris en compte - Invalid include file. text will not be included - - - - Impossible de relire le fichier %s - - unable to read file - - - - Le fichier include contient des erreurs - include file contains errors - - - - PARAMETRE - PARAMETER - - - - EFICAS ne sait pas convertir le JDC selon le format - Eficas does not know how to convert data according to the defined format - - - - le JDC doit etre valide pour une execution - Before a run action, JDC must be valid - - - - Sauvegarder SVP avant l'execution - Save before run action - - - - Sauvegarde de l'input impossible - unable to save input file - - - - Un JdC valide est necessaire pour creer un .input - file must be valid to create a .input file - - - - Choix du composant obligatoire - You have to choose a component - - - - Le fichier %s contient une commande INCLUDE - - file %s contains an "INCLUDE" command - - - - Donnez le nom du fichier dont vous - voulez faire une poursuite - Name the principal file - - - - Fichiers Med (*.med);;Tous les Fichiers (*) - Med Files (*.med);;All Files(*) - - - - Fichier Med - Med File - - - - Veuillez selectionner un fichier Med - Choose a Med file - - - - reel - float - - - - entier - integer - - - - complexe - complex - - - - l'aide n est pas installee - Help is not available - - - - Export Med vers Fichier - export Med Mesh in a file - - - - Impossibilite d exporter le Fichier - Unable to export file - - - - objet valide - valid object - - - - Valeur non modifiable - value can not be changed - - - - Options pour - - Settings - - - - Nombre minimal de valeurs : - minimal number of values : - - - - Nombre maximal de valeurs : - Maximal number of values : - - - - l expression n est pas de la forme a+bj - expression must be as a+bj - - - - Valeur du mot-cle enregistree - Value is recorded - - - - Valeur du mot-cle non autorisee - Value is not authorized - - - - Fichier non encore nomme - unnamed file - - - - SOURCE - SOURCE - - - - EnveloppeConnexeInducteur - Bounding_Box - - - - EnveloppeConnexe2 - - - - - VecteurDirecteur - Direction_Vector - - - - Centre - Center - - - - SectionBobine - Section - - - - Amplitude - Amplitude - - - - NbdeTours - NbTurns - - - - CONDUCTEUR - CONDUCTOR - - - - Conductivite - Conductivity - - - - PermeabiliteRelative - Relative_Permeability - - - - NOCOND - DIELECTRIC - - - - VCUT - CUT - - - - Orientation - Orientation - - - - ZS - ZS - - - - PARAMETRES - SETTINGS - - - - RepCarmel - Carmel_Directory - - - - TypedeFormule - Formula - - - - Frequence - Frequency - - - - Nb_Max_Iterations - Max_Nb_Iterations - - - - Erreur_Max - Max_Error - - - - Format non implemente - non implemented format - - - - Type d'objet non prevu - - - - - Fichier de donnees - data file - - - - Tous les Fichiers (*) - all files (*) - - - - Select - select - - - - nb min de valeurs : - minimal number of values : - - - - nb max de valeurs atteint - maximum number of values - - - - TraduitV10V11 - - - - - TraduitV11V12 - - - - - Sauve Format Ligne - save file in line format - - - - Valeur du mot-clef enregistree - value recorded - - - - Valeur du mot-clef non autorisee : - unvalid value - - - - %s n'est pas un fichier valide - %s is not a valid file - - - - : verifie les types dans un tuple - valids type in a tuple - - - - Les types entres ne sont pas permis - unvalid type for values - - - - La cardinalite n'est pas correcte, la derniere valeur est ignoree - unvalid multiplicity. last value will be ignored - - - - n est pas un tuple de - is not a tuple - - - - valeurs - values - - - - Valeur incorrecte - incorrect value - - - - n est pas un identifiant correct - - is not a valid name - - - - Entrer un float SVP - Float expected - - - - Entrer un float inferieur a - float lower than - - - - Entrer un float superieur a - float superior than - - - - Mauvaise execution - bad run - - - - impossible d executer la methode - unable to run method - - - - Mauvaise Commande - bad command - - - - Aucune variable connue - no possible variable - - - - Mauvaise dimension de matrice - bad matrix dimension - - - - le nombre de ligne n est pas egal a - number of lines is not - - - - le nombre de colonne n est pas egal a - number of columns is not - - - - Mauvaise Valeur - bad value - - - - l element - element - - - - n est pas correct - is not correct - - - - Modification Impossible - unable to modify - - - - le parametre n'est pas valide - parameter is not valid - - - - n est pas un identifiant correct - is not a correct name - - - - Valeur incorrecte: - incorrect value : - - - - Valeur incorrecte - incorrect value - - - - Valeur correcte - valid value - - - - impossible d'evaluer : - unable to evaluate : - - - - Un concept de nom %s existe déjà ! - already existing concept with name : %s ! - - - - existe deja - - already exists - - - - La matrice n'a pas le bon entete - header does not match with matrix - - - - le mot clef - keyword - - - - doit etre insere avant - has to be inserted before - - - - insertion impossible - unable to insert keyword - - - - doit etre insere apres - has to be inserted after - - - - Nb maximum de valeurs atteint - Maximal number of values - - - - pas de regle de construction pour ce jeu de commandes - No specific rules for building this dataset - - - - Gestion Maillage - Mesh Menu - - - - Acquiert groupe mailles - Read elements mesh - - - - Acquisition Groupe Maille - Read elements mesh - - - - VERSION - VERSION_EN - - - - NUM - NUMBER - - - - FILETYPE - FILETYPE - - - - PARAMETERS - Parametres - - - - Fichier_maillage - FichierMaillage - - - - Echelle_du_maillage - MeshScale - - - - Formulation - Fomulation - - - - Timeproblem - TimeProblem - - - - spectral - EssaiSpectral - - - - Basis - Basis - - - - Fourier - Fourier - - - - Ordre - Ordre - - - - FREQUENCY - Frequency - - - - minimisation - Minimisation - - - - no - no - - - - yes - yes - - - - nb_procs_para - NbProcs - - - - POLYMER - Polymer_en_Anglais - - - - MODEL_DATABASE - MoDEL_DATa_Anglais - - - - Stabilise - Srabilise_Anglais - - - - Non Stabilise - Non Stabilise anglais - - - - Local - local_anglais - - - - ESSAI_OPTION - essai_option_anglais - - - - MATERIEL - mater_anglais - - - - Cable - cable_anglais - - - - Peinture - peinture_anglais - - - - Tuyauterie - tuyau_anglais - - - - Materiau_De_Cable - mat_cable_anglais - - - - PE - pe_anglais - - - - EPDM - epdm_anglais - - - - Modele - modele_anglais - - - - Objet commande commentarisé invalide - - - - - ChoixCode - - - Choix du code - Choose code - - - - Veuillez choisir un code : - Choose code : - - - - &Cancel - - - - - Validate choice - - - - - &OK - - - - - ChoixCommandes - - - DMacro - DMacro - - - - Alphabetique - alphabetic sort - - - - Par Groupe - Sort by group - - - - <html><head/><body><p align="center"><span style=" text-decoration: underline;">Affichage</span></p></body></html> - <html><head/><body><p align="center"><span style=" text-decoration: underline;">Order</span></p></body></html> - - - - affiche les commandes par ordre alphabetique - display commands in alphabetic order - - - - affiche les commandes selon les thèmes - display commands by thema - - - - Ordre de la modélisation - ordered by modelisation - - - - <html><head/><body><p align="center">Filtre Commande</p></body></html> - <html><head/><body><p align="center">Filters Commands</p></body></html> - - - - filter commands - filters commands - - - - affiche les régles de validité - display validity rules - - - - ... - - - - - Règles de construction - Building Rules - - - - Sensible à la casse - case-sensitive - - - - Effacer - Clear - - - - selectionne les mots qui CONTIENNENT l expression - select words that CONTAINS the filter - - - - ré-affiche toutes les commandes - re-display the list of commands - - - - DChoixCata - - - Choix d'une version du code Aster - Choose a version for code Aster - - - - <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> -<html><head><meta name="qrichtext" content="1" /><style type="text/css"> -p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal;"> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:11pt;">2 versions sont disponibles</span></p></body></html> - <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"><html><head><meta name="qrichtext" content="1" /><style type="text/css">p, li { white-space: pre-wrap; }</style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal;"><p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:11pt;">2 catalogs are available </span></p></body></html> - - - - &OK - &Ok - - - - &Cancel - &Cancel - - - - Validate choice - validate choice - - - - DSelVal - - - Sélection de valeurs - Values Selections - - - - Separateur - marker - - - - espace - space - - - - virgule - comma - - - - point-virgule - semi-colon - - - - Ajouter Selection - add selected value - - - - Importer Tout - imports all values - - - - DVisu - - - Visualisation Include Materiau - View Include - - - - Eficas - - - MainWindow - Main Window - - - - &Fichier - &File - - - - &Aide - &Help - - - - toolBar - toolBar - - - - &Nouveau - &New - - - - Ctrl+N - Ctrl+N - - - - Nouvel Include - New Include - - - - &Ouvrir - &Open - - - - Ctrl+O - Ctrl+O - - - - Enregistrer - Save - - - - Enregistrer sous - Save as - - - - Fermer - Close - - - - Ctrl+W - - - - - Fermer tout - Close all - - - - Couper - Cut - - - - Ctrl+X - Ctrl+X - - - - Copier - Copy - - - - Ctrl+C - Ctrl+C - - - - Coller - Paste - - - - Ctrl+V - Ctrl+V - - - - Quitter - Exit - - - - Ctrl+Q - Ctrl+Q - - - - Rapport de Validation - Validation Report - - - - Fichier Source - Source File - - - - Fichier Résultat - Result File - - - - Parametres Eficas - Eficas Parameters - - - - Lecteur documentation - documentation reader - - - - Eficas - Eficas - - - - Version - Version - - - - Supprimer - Delete - - - - Rechercher - Find - - - - Rechercher dans l'arbre d'etude - Find in Data Tree - - - - Ctrl+F - Ctrl+F - - - - Replier/Deplier - Expand/Collapse - - - - Execution - Run - - - - Execution - Run - - - - Patrons - Patterns - - - - Tab 1 - - - - - &Edition - &Edit - - - - &JeuDeDonnées - &Data - - - - Shift+I - - - - - Ctrl+S - - - - - Ctrl+Shift+S - - - - - Shift+V - - - - - Chercher Mot-Clef - Find Keyword - - - - Rechercher dans le catalogue - Find Keyword in Catalog - - - - Shift+F - - - - - Shift+D - - - - - Commentaire - Comment - - - - Shift+C - - - - - Paramètres - Parameters - - - - Gestion des paramètres - Managing parameters - - - - Shift+P - - - - - Parametre Eficas - Eficas Settings - - - - Save Run - Save run - - - - Run - run - - - - &bad - - - - - Régles du JdC - Rules for dataset - - - - JDCEditor - - - Save File - - - - - The file <b>%1</b> could not be saved.<br>Reason: %2 - - - - - JDC (*.comm);;All Files (*) - - - - - &Abandonner - &Cancel - - - - Tuple2 - - - Form - - - - - <html><head/><body><p><span style=" font-size:14pt;">(</span></p></body></html> - - - - - <html><head/><body><p><span style=" font-size:14pt;">,</span></p></body></html> - - - - - <html><head/><body><p><span style=" font-size:14pt;">)</span></p></body></html> - - - - - Tuple3 - - - Form - - - - - <html><head/><body><p><span style=" font-size:14pt;">(</span></p></body></html> - - - - - <html><head/><body><p><span style=" font-size:14pt;">,</span></p></body></html> - - - - - <html><head/><body><p><span style=" font-size:14pt;">)</span></p></body></html> - - - - - Widget4a6RadioButton - - - Affiche le rapport de validation du mot-clef - Display validity report for the keyword - - - - Détruit le mot-clef - Delete the keyword - - - - Form - - - - - ... - - - - - <html><head/><body><p>aaa</p><p>dqsklmdqm</p></body></html> - - - - - RadioButton - - - - - WidgetBloc - - - Form - - - - - WidgetCB - - - Affiche le rapport de validation du mot-clef - display validation report for the keyword - - - - Détruit le mot-clef - Delete the keyword - - - - Form - - - - - ... - - - - - <html><head/><body><p>aaa</p><p>dqsklmdqm</p></body></html> - - - - - WidgetCommande - - - Affiche le rapport de validité de la commande - Display validity report for the keyword - - - - <html><head/><body><p><span style=" color:#0000ff;">commande </span></p></body></html> - <html><head/><body><p><span style=" color:#0000ff;">command </span></p></body></html - - - - Nom de l'objet. Seuls, les objets valides peuvent être nommés - Object Name. Only valid objects can be named - - - - Lance un script associé à la commande - Run associated script - - - - ouvre un navigateur sur l'aide contextuelle - open a browser to navigate to contextual help - - - - affiche les régles de validité - display validity rules - - - - Détruit la commande - Delete the command - - - - Affiche les commandes possibles - display allowed commands - - - - &Commandes - &Commands - - - - Shift+A, Alt+A, Alt+A, Alt+A - Shift+A, Alt+A, Alt+A, Alt+A - - - - Affiche le formulaire de la commande précédente - display previous command - - - - Affiche le formulaire de la commande suivante - display next command - - - - DCommandeUnique - - - - - ... - - - - - << - - - - - >> - - - - - TextLabel - - - - - WidgetCommentaire - - - <html><head/><body><p><span style=" color:#0000ff;">Commentaire</span></p></body></html> - <html><head/><body><p><span style=" color:#0000ff;">Comment</span></p></body></html> - - - - Affiche les commandes possibles - display allowed commands - - - - Shift+A, Alt+A, Alt+A, Alt+A - Shift+A, Alt+A, Alt+A, Alt+A - - - - Détruit le commentaire - Delete the comment - - - - &Commandes - &Commands - - - - Affiche le formulaire de la commande précédente - display previous command - - - - Affiche le formulaire de la commande suivante - display next command - - - - DCommandeUnique - - - - - ... - - - - - << - - - - - >> - - - - - WidgetDate - - - Affiche le rapport de validation du mot-clef - Display validity report for keyword - - - - Détruit le mot-clef - Delete the keyword - - - - Form - - - - - ... - - - - - <html><head/><body><p>aaa</p><p>dqsklmdqm</p></body></html> - - - - - WidgetFact - - - Form - - - - - ... - - - - - <html><head/><body><p><span style=" font-style:italic;">TextLabel</span></p></body></html> - - - - - WidgetFactPlie - - - TextLabel - TextLabel - - - - Form - - - - - ... - - - - - WidgetHeure - - - Affiche le rapport de validation du mot-clef - Display validity report for keyword - - - - Détruit le mot-clef - Delete the keyword - - - - Form - - - - - ... - - - - - <html><head/><body><p>aaa</p><p>dqsklmdqm</p></body></html> - - - - - <html><head/><body><p><br/></p></body></html> - - - - - WidgetInformative - - - Form - - - - - WidgetOptionnel - - - <html><head/><body><p><span style=" color:#0000ff;">commande </span></p></body></html> - <html><head/><body><p><span style=" color:#0000ff;">command </span></p></body></html - - - - WidgetOptionnel - - - - - WidgetParam - - - <html><head/><body><p><span style=" color:#000000;">Paramètre</span></p></body></html> - <html><head/><body><p><span style=" color:#000000;">Parameter</span></p></body></html> - - - - Détruit le commentaire - Delete the comment - - - - Affiche les commandes possibles - Display allowed commands - - - - &Commandes - &Commands - - - - Shift+A, Alt+A, Alt+A, Alt+A - Shift+A, Alt+A, Alt+A, Alt+A - - - - Affiche le formulaire de la commande précédente - Display previous command - - - - Affiche le formulaire de la commande suivante - Display next command - - - - <html><head/><body><p>Valeur: </p></body></html> - <html><head/><body><p>Value: </p></body></html< - - - - <html><head/><body><p>Nom: </p></body></html> - <html><head/><body><p>Name: </p></body></html> - - - - Verifie la valeur - Valid the value - - - - DCommandeUnique - - - - - ... - - - - - << - - - - - >> - - - - - <html><head/><body><p><br/></p></body></html> - - - - - WidgetPlusieursBase - - - Affiche le rapport de validation du mot-clef - Display validity report for keyword - - - - Remonte la ligne - up - - - - Descend la ligne - down - - - - supprime une ligne - deletes a line - - - - Ajoute une ligne - add a line - - - - Montre l'ensemble des valeurs - display all the value - - - - Sélectionne depuis Salome - from salome - - - - Visualise dans Salome - Show in salome - - - - Ouvre un fichier de sélection des valeurs - Open a file for selection - - - - Détruit le mot-clef - Delete the keyword - - - - Form - - - - - ... - - - - - <html><head/><body><p>aaa</p><p>dqsklmdqm</p></body></html> - - - - - permet de gérer la liste - manage list - - - - TextLabel - TextLabel - - - - WidgetPlusieursInto - - - Affiche le rapport de validation du mot-clef - Display validity report for the keyword - - - - Détruit le mot-clef - Delete the keyword - - - - Form - - - - - ... - - - - - <html><head/><body><p>aaa</p><p>dqsklmdqm</p></body></html> - - - - - permet de gérer la liste - manage list - - - - WidgetPlusieursIntoOrdonne - - - Affiche le rapport de validation du mot-clef - display validity report for the keyword - - - - TextLabel - TextLabel - - - - Remonte d'une ligne - Up - - - - Descend d'une ligne - Down - - - - Détruit une ligne - Delete a line - - - - ajoute une ligne - add a line - - - - visualise l'ensemble des valeurs - show all values - - - - Détruit le mot-clef - Delete the keyword - - - - Form - - - - - ... - - - - - <html><head/><body><p>aaa</p><p>dqsklmdqm</p></body></html> - - - - - permet de gérer la liste - manage list - - - - WidgetPlusieursPlie - - - Form - - - - - Affiche le rapport de validité du mot-clef - Display validity report for the keyword - - - - ... - - - - - <html><head/><body><p>aaa</p><p>dqsklmdqm</p></body></html> - - - - - permet de gérer la liste - manage list - - - - Détruit le mot-clef - Delete the keyword - - - - WidgetPlusieursTuple - - - Form - - - - - Affiche le rapport de validation du mot-clef - Display validity report for the keyword - - - - ... - - - - - <html><head/><body><p>aaa</p><p>dqsklmdqm</p></body></html> - - - - - Remonte la ligne - Up - - - - Descend la ligne - Down - - - - supprime une ligne - delete a line - - - - Ajoute une ligne - add a line - - - - Montre l'ensemble des valeurs - show all values - - - - Ouvre un fichier de sélection des valeurs - import data from a file - - - - Détruit le mot-clef - Delete the keyword - - - - TextLabel - TextLabel - - - - WidgetRadioButton - - - Affiche le rapport de validation du mot-clef - Display validity report for the keyword - - - - Détruit le mot-clef - Delete the keyword - - - - Form - - - - - ... - - - - - <html><head/><body><p>aaa</p><p>dqsklmdqm</p></body></html> - - - - - RadioButton - - - - - WidgetSDCOInto - - - Affiche le rapport de validation du mot-clef - Display validity report for the keyword - - - - <html><head/><body><p>Structures de données du type requis </p><p><br/></p></body></html> - <html><head/><body><p>Objects with the recquired type</p><p><br/></p></body></html> - - - - <html><head/><body><p>ou Nom du concept</p></body></html> - or name the object - - - - Détruit le mot-clef - Delete the keyword - - - - Form - - - - - ... - - - - - <html><head/><body><p>aaa</p><p>dqsklmdqm</p></body></html> - - - - - WidgetSimpBase - - - Affiche le rapport de validation du mot-clef - Display validity report for the keyword - - - - Détruit le mot-clef - Delete the keyword - - - - Form - - - - - ... - - - - - <html><head/><body><p>aaa</p><p>dqsklmdqm</p></body></html> - - - - - WidgetSimpBool - - - Affiche le rapport de validation du mot-clef - Display validity report for the keyword - - - - Détruit le mot-clef - Delete the keyword - - - - Form - - - - - ... - - - - - <html><head/><body><p>aaa</p><p>dqsklmdqm</p></body></html> - - - - - True - - - - - False - - - - - WidgetSimpComplexe - - - Complexe : a+bj - Complex : a+bj - - - - Réel/Imaginaire - Real/Imaginary - - - - Module/Phase - Module/Phase - - - - Affiche le rapport de validation du mot-clef - Display validity report for the keyword - - - - Form - - - - - ... - - - - - <html><head/><body><p>aaa</p><p>dqsklmdqm</p></body></html> - - - - - <html><head/><body><p align="center">OU </p></body></html> - - - - - WidgetSimpFichier - - - Affiche le rapport de validité du mot-clef - Display validity report for the keyword - - - - affiche l'explorateur de fichier - open file explorer - - - - ouvre le fichier choisi - Open the file - - - - Détruit le mot-clef - Delete the keyword - - - - Form - - - - - ... - - - - - <html><head/><body><p>aaa</p><p>dqsklmdqm</p></body></html> - - - - - WidgetSimpTxt - - - Affiche le rapport de validation du mot-clef - Display validity report for the keyword - - - - Détruit le mot-clef - Delete the keyword - - - - Form - - - - - ... - - - - - <html><head/><body><p>aaa</p><p>dqsklmdqm</p></body></html> - - - - - WidgetTuple2 - - - Affiche le rapport de validation du mot-clef - Display validity report for the keyword - - - - Détruit le mot-clef - Delete the keyword - - - - Form - - - - - ... - - - - - <html><head/><body><p>aaa</p><p>dqsklmdqm</p></body></html> - - - - - <html><head/><body><p><span style=" font-size:14pt;">(</span></p></body></html> - - - - - <html><head/><body><p><span style=" font-size:14pt;">,</span></p></body></html> - - - - - <html><head/><body><p><span style=" font-size:14pt;">)</span></p></body></html> - - - - - WidgetTuple3 - - - Affiche le rapport de validation du mot-clef - Display validity report for the keyword - - - - Détruit le mot-clef - Delete the keyword - - - - Form - - - - - ... - - - - - <html><head/><body><p>aaa</p><p>dqsklmdqm</p></body></html> - - - - - <html><head/><body><p><span style=" font-size:14pt;">(</span></p></body></html> - - - - - <html><head/><body><p><span style=" font-size:14pt;">,</span></p></body></html> - - - - - <html><head/><body><p><span style=" font-size:14pt;">)</span></p></body></html> - - - - - WidgetUniqueSDCO - - - Affiche le rapport de validation du mot-clef - Display validity report for the keyword - - - - Attend un objet de type CO - expect a CO Object - - - - Détruit le mot-clef - Delete the keyword - - - - Form - - - - - ... - - - - - <html><head/><body><p>aaa</p><p>dqsklmdqm</p></body></html> - - - - - WidgetVide - - - Form - - - - - ... - - - - - <html><head/><body><p><span style=" color:#0055ff;">Label</span></p></body></html> - - - - - Attend un objet de type XXXX. Il faut le créer - object must be created - - - - baseWidget - - - DMacro - DMacro - - - - dView - - - Dialog - Dialog - - - - Fermer - Close - - - - Sauver - Save - - - - desRecherche - - - Rechercher dans le JDC - Find in JDC - - - - Suivant - Next - - - - Next - - - - - desWidgetCreeParam - - - Gestion des Paramètres - Parameters - - - - <html><head/><body><p>Nom: </p></body></html> - Name - - - - <html><head/><body><p>Valeur: </p></body></html> - Value - - - - <html><head/><body><p><span style=" text-decoration: underline;">Créer un paramètre</span></p></body></html> - <html><head/><body><p><span style=" text-decoration: underline;">New Parameter</span></p></body></html> - - - - desWidgetMatrice - - - Dialog - Dialog - - - - Affiche le rapport de validation du mot-clef - Display validity report for the keyword - - - - ... - - - - - <html><head/><body><p>Met à jour l'en-tête</p></body></html> - - - - - <html><head/><body><p>aaa</p><p>dqsklmdqm</p></body></html> - - - - - self.appliEficas - - - Wrapper Files (*.xml);;All Files (*) - - - - - Noname - - - - - viewRegles - - - Dialog - Dialog - - - diff --git a/OldCodes/UiQT4/eficas_en.ts b/OldCodes/UiQT4/eficas_en.ts deleted file mode 100644 index afe86d8a..00000000 --- a/OldCodes/UiQT4/eficas_en.ts +++ /dev/null @@ -1,5860 +0,0 @@ - - - - @default - - COEFFICIENT_TO_CALIBRATE_TIDAL_VELOCITIES - Coefficient to calibrate tidal velocities - - - BOTTOM_TOPOGRAPHY_FILE - Bottom topography file - - - NUMBER_OF_CORRECTIONS_OF_DISTRIBUTIVE_SCHEMES - Number of corrections of distributive schemes - - - WATER_DENSITY - Water density - - - VALUE_OF_ATMOSPHERIC_PRESSURE - Value of atmospheric pressure - - - LISTING_FOR_PRINTOUT_PERIOD - Listing for printout period - - - CONSERVATIVE_N_SCHEME - Conservative N-Scheme - - - wave_celerity_(m/s) - Wave celerity (m/s) - - - scalar_flowrate_of_fluid_(m2/s) - Scalar flowrate of fluid (m2/s) - - - constant_normal_profile - Constant normal profile - - - LAMBERT_4_CORSICA - Lambert 4 corsica - - - MERCATOR - Mercator - - - VELOCITY_DIFFUSIVITY - Velocity diffusivity - - - LINEARIZED_PROPAGATION - Linearized propagation - - - PRINTOUT_PERIOD_FOR_DROGUES - Printout period for drogues - - - BINARY_RESULTS_FILE_FORMAT - Binary results file format - - - COMPUTATION_CONTINUED - Computation continued - - - PARALLEL_PROCESSORS - Parallel processors - - - COEFFICIENT_FOR_DIFFUSION_OF_TRACERS - Coefficient for diffusion of tracers - - - LAMBERT_3_SOUTH - Lambert 3 south - - - DIAMETER_OF_ALGAE - Diameter of algae - - - FRICTION_DATA_FILE - Friction data file - - - Real_tide_(recommended_methodology) - Real tide (recommended methodology) - - - NAMES_OF_POINTS - Names of points - - - GIGARTINA_LEPTORHYNCHOS - Gigartina leptorhynchos - - - STOP_CRITERIA - Stop criteria - - - Roe_scheme - Roe scheme - - - FINITE_VOLUME_SCHEME - Finite volume scheme - - - IMPLICITATION_COEFFICIENT_OF_TRACERS - Implicitation coefficient of tracers - - - gradient_simple - Gradient simple - - - SPATIAL_PROJECTION_TYPE - Spatial projection type - - - PHYSICAL_CHARACTERISTICS_OF_THE_TSUNAMI - Physical characteristics of the tsunami - - - direct - Direct - - - zero - Zero - - - FRICTION_COEFFICIENT - Friction coefficient - - - BREACHES_DATA_FILE - Breaches data file - - - COEFFICIENT_1_FOR_LAW_OF_TRACERS_DEGRADATION - Coefficient 1 for law of tracers degradation - - - TREATMENT_OF_FLUXES_AT_THE_BOUNDARIES - Treatment of fluxes at the boundaries - - - GLOBAL_NUMBER_OF_THE_POINT_TO_CALIBRATE_HIGH_WATER - Global number of the point to calibrate high water - - - REFERENCE_FILE_FORMAT - Reference file format - - - conjugate_residual - Conjugate residual - - - BOTTOM_SURFACES_DELWAQ_FILE - Bottom surfaces DELWAQ file - - - N_SCHEME_FOR_TIDAL_FLATS - N-Scheme for tidal flats - - - NO_FRICTION - No friction - - - no_preconditioning_ - No preconditioning - - - CONTINUITY_CORRECTION - Continuity correction - - - F(T90)_LAW - F(T90) law - - - FREE_SURFACE_GRADIENT_COMPATIBILITY - Free surface gradient compatibility - - - gmres - GMRES - - - strong - Strong - - - 1/h_div_(_h_nu_grad(U) - 1/h div ( h nu grad(U) - - - SMAGORINSKI - Smagorinski - - - NAMES_OF_PRIVATE_VARIABLES - Names of private variables - - - NODES_DISTANCES_DELWAQ_FILE - Nodes distances DELWAQ file - - - SCHEME_OPTION_FOR_ADVECTION_OF_TRACERS - Scheme option for advection of tracers - - - MERCATOR_FOR_TELEMAC - Mercator for telemac - - - TIME_STEP_REDUCTION_FOR_K_EPSILON_MODEL - Time step reduction for K-Epsilon model - - - quasi_bubble - Quasi-bubble - - - NON_DIMENSIONAL_DISPERSION_COEFFICIENTS - Non-dimensional dispersion coefficients - - - classical_EBE - Classical ebe - - - IMPLICIT_NON_CONSERVATIVE_N_SCHEME - Implicit non conservative n scheme - - - GEOMETRY_FILE_FORMAT - Geometry file format - - - ORIGINAL_HOUR_OF_TIME - Original hour of time - - - DIFFUSIVITY_FOR_DELWAQ - Diffusivity for DELWAQ - - - Q(Z)_not_programmed - Q(Z) not programmed - - - DISSIPATION_COEFFICIENT_FOR_SECONDARY_CURRENTS - Dissipation coefficient for secondary currents - - - ALGAE_TRANSPORT_MODEL - Algae transport model - - - TOLERANCES_FOR_IDENTIFICATION - Tolerances for identification - - - WGS84_SOUTHERN_UTM - WGS84 southern utm - - - air_pressure_(Pa) - Air pressure (Pa) - - - No_model - No model - - - DELWAQ_PRINTOUT_PERIOD - DELWAQ printout period - - - DROGUES_FILE - Drogues file - - - MASS_LUMPING_FOR_WEAK_CHARACTERISTICS - Mass-lumping for weak characteristics - - - GRAVITY_ACCELERATION - Gravity acceleration - - - BINARY_DATABASE_2_FOR_TIDE - Binary database 2 for tide - - - 6_points - 6 points - - - TIME_RANGE_FOR_FOURIER_ANALYSIS - Time range for fourier analysis - - - EDGE_BASED_N_SCHEME - Edge-based N-Scheme - - - Priority_to_fluxes - Priority to fluxes - - - LAMBERT_1_NORTH - Lambert 1 north - - - velocity_proportional_to_square_root_of_depth - Velocity proportional to square root of depth - - - STRICKLER - Strickler - - - LAMBERT_2_EXTENDED - Lambert 2 extended - - - ELEMENTS_MASKED_BY_USER - Elements masked by user - - - NAMES_OF_TRACERS - Names of tracers - - - H_CLIPPING - H clipping - - - conjugate_residuals - Conjugate residuals - - - PARAMETER_ESTIMATION - Parameter estimation - - - CHECKING_THE_MESH - Checking the mesh - - - SOLVER_FOR_K_EPSILON_MODEL - Solver for K-Epsilon model - - - LIST_OF_FILES - List of files - - - Wave_equation - Wave equation - - - NAMES_OF_CLANDESTINE_VARIABLES - Names of clandestine variables - - - WAQTEL_STEERING_FILE - Waqtel steering file - - - MAXIMUM_NUMBER_OF_ITERATIONS_FOR_ADVECTION_SCHEMES - Maximum number of iterations for advection schemes - - - squared_conjugate_gradient - Squared conjugate gradient - - - LAW_OF_BOTTOM_FRICTION - Law of bottom friction - - - MATRIX_VECTOR_PRODUCT - Matrix-vector product - - - ACCURACY_FOR_DIFFUSION_OF_TRACERS - Accuracy for diffusion of tracers - - - cgstab - CGSTAB - - - MANNING - Manning - - - SCHEME_FOR_ADVECTION_OF_TRACERS - Scheme for advection of tracers - - - OPTION_FOR_THE_SOLVER_FOR_K_EPSILON_MODEL - Option for the solver for K-Epsilon model - - - conjugate_gradient_squared_stabilised_(cgstab) - Conjugate gradient squared stabilised (CGSTAB) - - - PELVETIOPSIS_LIMITATA - Pelvetiopsis limitata - - - LIKE_1_BUT_WITH_POROSITY_(DEFINA_METHOD) - Like 1 but with porosity (defina method) - - - FRICTION_DATA - Friction data - - - TUBES_DATA_FILE - Tubes data file - - - ZONES_FILE - Zones file - - - Mean_tide - Mean tide - - - DENSITY_EFFECTS - Density effects - - - THRESHOLD_DEPTH_FOR_RECEDING_PROCEDURE - Threshold depth for receding procedure - - - explicit - Explicit - - - DRY_ELEMENTS_FROZEN - Dry elements frozen - - - extrapolation - Extrapolation - - - conjugate_gradient_on_normal_equation - Conjugate gradient on normal equation - - - TREATMENT_OF_NEGATIVE_DEPTHS - Treatment of negative depths - - - STEERING_FILE - Steering file - - - ZONE_NUMBER_IN_GEOGRAPHIC_SYSTEM - Zone number in geographic system - - - DIFFUSION_OF_TRACERS - Diffusion of tracers - - - PREVIOUS_COMPUTATION_FILE - Previous computation file - - - DIAMETER_OF_ROUGHNESS_ELEMENTS - Diameter of roughness elements - - - friction_velocity - Friction velocity - - - NUMBER_OF_TIME_STEPS - Number of time steps - - - NEWMARK_TIME_INTEGRATION_COEFFICIENT - Newmark time integration coefficient - - - TOMAWAC_STEERING_FILE - TOMAWAC steering file - - - CONSTANT_VISCOSITY - Constant viscosity - - - INITIAL_DEPTH - Initial depth - - - WATER_QUALITY - Water quality - - - MAXIMUM_NUMBER_OF_ITERATIONS_FOR_DIFFUSION_OF_TRACERS - Maximum number of iterations for diffusion of tracers - - - ANGLAIS - Anglais - - - EQUATIONS_SOLVED_EVERYWHERE_WITH_CORRECTION_ON_TIDAL_FLATS - Equations solved everywhere with correction on tidal flats - - - LAW_OF_FRICTION_ON_LATERAL_BOUNDARIES - Law of friction on lateral boundaries - - - COUPLING_PERIOD_FOR_SISYPHE - Coupling period for sisyphe - - - NON_CONSERVATIVE_PSI_SCHEME - Non conservative PSI scheme - - - STAGE_DISCHARGE_CURVES_FILE - Stage-discharge curves file - - - INITIAL_CONDITIONS - Initial conditions - - - predictor_corrector - Predictor-corrector - - - LAMBERT - Lambert - - - OPTION_FOR_THE_DIFFUSION_OF_TRACERS - Option for the diffusion of tracers - - - ACCURACY_OF_EPSILON - Accuracy of epsilon - - - THRESHOLD_DEPTH_FOR_WIND - Threshold depth for wind - - - SOLVER_ACCURACY - Solver accuracy - - - TURBULENCE_MODEL_FOR_SOLID_BOUNDARIES - Turbulence model for solid boundaries - - - BOUNDARY_CONDITIONS_FILE - Boundary conditions file - - - VALIDATION - Validation - - - tracer - Tracer - - - TIDE_GENERATING_FORCE - Tide generating force - - - SUPG - SUPG - - - PRESCRIBED_FLOWRATES - Prescribed flowrates - - - Mean_spring_tide - Mean spring tide - - - BINARY_DATABASE_1_FOR_TIDE - Binary database 1 for tide - - - LAW_OF_TRACERS_DEGRADATION - Law of tracers degradation - - - SECTIONS_INPUT_FILE - Sections input file - - - MINIMUM_VALUE_OF_DEPTH - Minimum value of depth - - - No_tide - No tide - - - SPACING_OF_ROUGHNESS_ELEMENTS - Spacing of roughness elements - - - SCHEME_OPTION_FOR_ADVECTION_OF_K_EPSILON - Scheme option for advection of K-epsilon - - - LISTING_PRINTOUT_PERIOD - Listing printout period - - - COLEBROOK_WHITE - Colebrook-white - - - MINOR_CONSTITUENTS_INFERENCE - Minor constituents inference - - - CARTESIAN,_NOT_GEOREFERENCED - Cartesian, not georeferenced - - - No_Tsunami - No tsunami - - - drift_along_x_(m) - Drift along X (m) - - - UTM_ZONE,_E.G. - Utm zone, e.g. - - - CONSERVATIVE_PSI_SCHEME - Conservative PSI-Scheme - - - PREVIOUS_COMPUTATION_FILE_FORMAT - Previous computation file format - - - VALUES_OF_THE_TRACERS_AT_THE_SOURCES - Values of the tracers at the sources - - - linear - Linear - - - BINARY_RESULTS_FILE - Binary results file - - - diagonal - Diagonal - - - EXCHANGE_AREAS_DELWAQ_FILE - Exchange areas DELWAQ file - - - IMPLICITATION_FOR_DIFFUSION_OF_VELOCITY - Implicitation for diffusion of velocity - - - conjugate_gradient - Conjugate gradient - - - WGS84_NORTHERN_UTM - WGS84 northern utm - - - WEIRS_DATA_FILE - Weirs data file - - - IMPLICITATION_FOR_VELOCITY - Implicitation for velocity - - - DEFINITION_OF_ZONES - Definition of zones - - - MAXIMUM_NUMBER_OF_ITERATIONS_FOR_K_AND_EPSILON - Maximum number of iterations for K and Epsilon - - - MEAN_DEPTH_FOR_LINEARIZATION - Mean depth for linearization - - - 3_points - 3 points - - - wind_along_y_axis_(m/s) - Wind along Y axis (m/s) - - - div(_nu_grad(T)_) - Div( nu grad(t) ) - - - minimum_error - Minimum error - - - SCHEME_OPTION_FOR_ADVECTION_OF_VELOCITIES - Scheme option for advection of velocities - - - DESIRED_COURANT_NUMBER - Desired courant number - - - flowrate_along_x_axis_(m2/s) - Flowrate along X axis (m2/s) - - - SUPG_OPTION - SUPG option - - - 1/h_div_(_h_nu_grad(T) - 1/h div ( h nu grad(t) - - - crout - Crout - - - conjugate_gradient_squared - Conjugate gradient squared - - - STOP_IF_A_STEADY_STATE_IS_REACHED - Stop if a steady state is reached - - - DEFAULT_PARALLEL_EXECUTABLE - Default parallel executable - - - INFORMATION_ABOUT_SOLVER - Information about solver - - - K_EPSILON_MODEL - K-Epsilon model - - - AIR_PRESSURE - Air pressure - - - RESULTS_FILE - Results file - - - VERTICAL_FLUXES_DELWAQ_FILE - Vertical fluxes DELWAQ file - - - DELWAQ_STEERING_FILE - DELWAQ steering file - - - wind_along_x_axis_(m/s) - Wind along X axis (m/s) - - - Lagrange_interp. - Lagrange interp. - - - MASS_BALANCE - Mass-balance - - - turbulent_viscosity_(m2/s) - Turbulent viscosity (m2/s) - - - OPTION_FOR_TIDAL_BOUNDARY_CONDITIONS - Option for tidal boundary conditions - - - ADVECTION_OF_TRACERS - Advection of tracers - - - DIFFUSION_OF_VELOCITY - Diffusion of velocity - - - scalar_velocity_(m/s) - Scalar velocity (m/s) - - - COEFFICIENT_OF_WIND_INFLUENCE - Coefficient of wind influence - - - PRODUCTION_COEFFICIENT_FOR_SECONDARY_CURRENTS - Production coefficient for secondary currents - - - HLLC_scheme_order_1 - HLLC scheme order 1 - - - RESULTS_FILE_FORMAT - Results file format - - - COUPLING_PERIOD_FOR_TOMAWAC - Coupling period for TOMAWAC - - - NUMBER_OF_PRIVATE_ARRAYS - Number of private arrays - - - MAXIMUM_NUMBER_OF_FRICTION_DOMAINS - Maximum number of friction domains - - - DURATION - Duration - - - BINARY_DATA_FILE_2_FORMAT - Binary data file 2 format - - - HORIZONTAL_WITH_SAME_NUMBER_OF_NODES_UPSTREAM/DOWNSTREAM - Horizontal with same number of nodes upstream/downstream - - - OPTION_FOR_THE_DIFFUSION_OF_VELOCITIES - Option for the diffusion of velocities - - - MASS_LUMPING_ON_TRACERS - Mass-lumping on tracers - - - NORTH - North - - - RAIN_OR_EVAPORATION - Rain or evaporation - - - FRANCAIS - Francais - - - PARTITIONING_TOOL - Partitioning tool - - - FORMATTED_RESULTS_FILE - Formatted results file - - - VERTICAL_STRUCTURES - Vertical structures - - - OPTION_FOR_TSUNAMI_GENERATION - Option for tsunami generation - - - VARIABLE_TIME_STEP - Variable time-step - - - IRIDAEA_FLACCIDA_(CLOSE_TO_ULVA) - Iridaea flaccida (close to ulva) - - - PROPAGATION_OPTION - Propagation option - - - REFERENCE_FILE - Reference file - - - TIDAL_DATA_BASE - Tidal data base - - - INITIAL_ELEVATION - Initial elevation - - - average - Average - - - STOCHASTIC_DIFFUSION_MODEL - Stochastic diffusion model - - - FORTRAN_FILE - Fortran file - - - BREACH - Breach - - - Z(Q) - Z(Q) - - - NO_DEFAULT_VALUE - No default value - - - no_preconditioning - No preconditioning - - - TIME_STEP - Time step - - - rough - Rough - - - SALINITY_DELWAQ_FILE - Salinity DELWAQ file - - - IMPLICITATION_FOR_DEPTH - Implicitation for depth - - - NUMBER_OF_LAGRANGIAN_DRIFTS - Number of lagrangian drifts - - - TEMPERATURE_FOR_DELWAQ - Temperature for DELWAQ - - - GENERAL - General - - - SECONDARY_CURRENTS - Secondary currents - - - PRECONDITIONING - Preconditioning - - - MANNING_DEFAULT_VALUE_FOR_COLEBROOK_WHITE_LAW - Manning default value for colebrook-white law - - - ADVECTION_OF_H - Advection of H - - - DEBUGGER - Debugger - - - LATITUDE_OF_ORIGIN_POINT - Latitude of origin point - - - PRESCRIBED_TRACERS_VALUES - Prescribed tracers values - - - RECORD_NUMBER_FOR_RESTART - Record number for restart - - - turbulent_viscosity_of_k_epsilon_model_(m2/s) - Turbulent viscosity of K-epsilon model (m2/s) - - - LISTING_PRINTOUT - Listing printout - - - CORIOLIS_COEFFICIENT - Coriolis coefficient - - - TURBULENCE_MODEL - Turbulence model - - - NUMBER_OF_FIRST_TIME_STEP_FOR_LISTING_PRINTOUTS - Number of first time step for listing printouts - - - PRINTING_CUMULATED_FLOWRATES - Printing cumulated flowrates - - - OPTION_FOR_THE_TREATMENT_OF_TIDAL_FLATS - Option for the treatment of tidal flats - - - variable_in_time_and_space_given_by_formated_file - Variable in time and space given by formated file - - - CONTROL_SECTIONS - Control sections - - - SOLVER_FOR_DIFFUSION_OF_TRACERS - Solver for diffusion of tracers - - - SECTIONS_OUTPUT_FILE - Sections output file - - - NUMBER_OF_SUB_STEPS_OF_DISTRIBUTIVE_SCHEMES - Number of sub-steps of distributive schemes - - - UPWIND_COEFFICIENTS - Upwind coefficients - - - time_of_maximum_elevation - Time of maximum elevation - - - ALGAE_TYPE - Algae type - - - RAIN_OR_EVAPORATION_IN_MM_PER_DAY - Rain or evaporation in mm per day - - - FORMATTED_DATA_FILE_1 - Formatted data file 1 - - - FORMATTED_DATA_FILE_2 - Formatted data file 2 - - - C_U_PRECONDITIONING - C-U preconditioning - - - LIST_OF_POINTS - List of points - - - WGS84_LONGITUDE/LATITUDE_IN_REAL_DEGREES - WGS84 longitude/latitude in real degrees - - - MISCELLANEOUS_(LEGOS_NEA,_FES20XX,_PREVIMER...) - Miscellaneous (LEGOS-NEA, FES20XX, PREVIMER...) - - - conj_gradient - Conj gradient - - - weak - Weak - - - SCHEME_FOR_ADVECTION_OF_VELOCITIES - Scheme for advection of velocities - - - gmres_(see_option_for_the_solver_for_k_epsilon_model) - GMRES (see option for the solver for K-Epsilon model) - - - NO_ADVECTION - No advection - - - NUMBER_OF_FIRST_TIME_STEP_FOR_GRAPHIC_PRINTOUTS - Number of first time step for graphic printouts - - - DEPTH_IN_FRICTION_TERMS - Depth in friction terms - - - FOURIER_ANALYSIS_PERIODS - Fourier analysis periods - - - EQUATIONS - Equations - - - MAXIMUM_NUMBER_OF_ITERATIONS_FOR_IDENTIFICATION - Maximum number of iterations for identification - - - WIND - Wind - - - SPEED_AND_DIRECTION_OF_WIND - Speed and direction of wind - - - TYPE_OF_SOURCES - Type of sources - - - TITLE - Title - - - MASS_LUMPING_ON_H - Mass-lumping on H - - - NUMBER_OF_SUB_ITERATIONS_FOR_NON_LINEARITIES - Number of sub-iterations for non-linearities - - - PSI_SCHEME_OPTION - Psi scheme option - - - LIQUID_BOUNDARIES_FILE - Liquid boundaries file - - - VELOCITIES_OF_THE_SOURCES_ALONG_X - Velocities of the sources along X - - - VELOCITIES_OF_THE_SOURCES_ALONG_Y - Velocities of the sources along Y - - - CHARACTERISTICS - Characteristics - - - BOTTOM_SMOOTHINGS - Bottom smoothings - - - SALINITY_FOR_DELWAQ - Salinity for DELWAQ - - - OPTION_FOR_CHARACTERISTICS - Option for characteristics - - - MAXIMUM_NUMBER_OF_TRACERS - Maximum number of tracers - - - maximum_velocity - Maximum velocity - - - FREE_INTEGER_20 - Free integer 20 - - - ZERO - Zero - - - OPTION_FOR_WIND - Option for wind - - - BINARY_DATA_FILE_1 - Binary data file 1 - - - BINARY_DATA_FILE_2 - Binary data file 2 - - - free_surface_elevation_(m) - Free surface elevation (m) - - - PRESCRIBED_VELOCITIES - Prescribed velocities - - - water_depth_(m) - Water depth (m) - - - VELOCITY_DELWAQ_FILE - Velocity DELWAQ file - - - kinetic_order_2 - Kinetic order 2 - - - kinetic_order_1 - Kinetic order 1 - - - coupled - Coupled - - - LAMBERT_2_CENTER - Lambert 2 center - - - COMPATIBLE_COMPUTATION_OF_FLUXES - Compatible computation of fluxes - - - Astronomical_neap_tide - Astronomical neap tide - - - NUMBER_OF_TRACERS - Number of tracers - - - Dirac - Dirac - - - COUPLING_DIRECTORY - Coupling directory - - - DEFAULT_EXECUTABLE - Default executable - - - GEOMETRY_FILE - Geometry file - - - DICTIONARY - Dictionary - - - WAF_scheme_order_2 - WAF scheme order 2 - - - VARIABLES_FOR_GRAPHIC_PRINTOUTS - Variables for graphic printouts - - - INFORMATION_ABOUT_K_EPSILON_MODEL - Information about K-Epsilon model - - - OIL_SPILL_STEERING_FILE - Oil spill steering file - - - MAXIMUM_NUMBER_OF_BOUNDARIES - Maximum number of boundaries - - - DIFFUSIVITY_DELWAQ_FILE - Diffusivity DELWAQ file - - - Thompson_method_based_on_characteristics - Thompson method based on characteristics - - - DESCRIPTION_OF_LIBRARIES - Description of libraries - - - NUMBER_OF_WEIRS - Number of weirs - - - SPHERE - Sphere - - - Computed_with_c,u,v - Computed with C,U,V - - - Astronomical_tide - Astronomical tide - - - velocity_along_y_axis_(m/s) - Velocity along Y axis (m/s) - - - CULVERT_DATA_FILE - Culvert data file - - - bottom_elevation_(m) - Bottom elevation (m) - - - EXCHANGES_BETWEEN_NODES_DELWAQ_FILE - Exchanges between nodes DELWAQ file - - - SOLVER_OPTION_FOR_TRACERS_DIFFUSION - Solver option for tracers diffusion - - - INITIAL_VALUES_OF_TRACERS - Initial values of tracers - - - flowrate_along_y_axis_(m2/s) - Flowrate along Y axis (m2/s) - - - NUMBER_OF_TUBES - Number of tubes - - - LONGITUDE_OF_ORIGIN_POINT - Longitude of origin point - - - MAXIMUM_NUMBER_OF_ITERATIONS_FOR_SOLVER - Maximum number of iterations for solver - - - CORIOLIS - Coriolis - - - ADVECTION - Advection - - - Edge_based_storage - Edge-based storage - - - EXPLICIT_+_MURD_SCHEME_PSI - Explicit + murd scheme PSI - - - previous - Previous - - - ABSCISSAE_OF_SOURCES - Abscissae of sources - - - VECTOR_LENGTH - Vector length - - - GRAPHIC_PRINTOUT_PERIOD - Graphic printout period - - - COUPLING_WITH - Coupling with - - - CHEZY - CHEZY - - - variable_in_time_given_by_formated_file - Variable in time given by formated file - - - WATER_DISCHARGE_OF_SOURCES - Water discharge of sources - - - ADVECTION_OF_U_AND_V - Advection of U and V - - - Zokagoa_scheme_order_1 - Zokagoa scheme order 1 - - - DEFINED_BY_USER - Defined by user - - - LATITUDE_LONGITUDE - Latitude longitude - - - VOLUMES_DELWAQ_FILE - Volumes DELWAQ file - - - VELOCITY_FOR_DELWAQ - Velocity for DELWAQ - - - ROUGHNESS_COEFFICIENT_OF_BOUNDARIES - Roughness coefficient of boundaries - - - TPXO - TPXO - - - INITIAL_TIME_SET_TO_ZERO - Initial time set to zero - - - EXPLICIT_+_SUPG - Explicit + SUPG - - - INITIAL_GUESS_FOR_U - Initial guess for U - - - SCHEME_FOR_ADVECTION_OF_K_EPSILON - Scheme for advection of K-epsilon - - - NO_DEGRADATION - No degradation - - - TEMPERATURE_DELWAQ_FILE - Temperature DELWAQ file - - - Froude_number - Froude number - - - classical - Classical - - - nombre_de_courants_ - Nombre de courants - - - SOURCES_FILE - Sources file - - - LOG_LAW - Log law - - - CONTROL_OF_LIMITS - Control of limits - - - NUMBER_OF_GAUSS_POINTS_FOR_WEAK_CHARACTERISTICS - Number of Gauss points for weak characteristics - - - TYPE_OF_WEIRS - Type of weirs - - - THRESHOLD_FOR_NEGATIVE_DEPTHS - Threshold for negative depths - - - velocity_proportional_to_square_root_of_depth,_variant - Velocity proportional to square root of depth, variant - - - VELOCITY_PROFILES - Velocity profiles - - - LANGUAGE - Language - - - STAGE_DISCHARGE_CURVES - Stage-discharge curves - - - Courant_number_ - Courant number - - - COST_FUNCTION - Cost function - - - JMJ - JMJ - - - ORIGIN_COORDINATES - Origin coordinates - - - RECORD_NUMBER_IN_WAVE_FILE - Record number in wave file - - - tracer_1_etc. - Tracer 1 etc. - - - TYPE_OF_ADVECTION - Type of advection - - - WIND_VELOCITY_ALONG_X - Wind velocity along X - - - WIND_VELOCITY_ALONG_Y - Wind velocity along Y - - - MAXIMUM_NUMBER_OF_SOURCES - Maximum number of sources - - - HAALAND - HAALAND - - - div(_nu_grad(U)_) - Div( nu grad(U) ) - - - DISCRETIZATIONS_IN_SPACE - Discretizations in space - - - SISYPHE_STEERING_FILE - Sisyphe steering file - - - ADVECTION_OF_K_AND_EPSILON - Advection of K and epsilon - - - NUMBER_OF_CULVERTS - Number of culverts - - - RELEASE - Release - - - list_of_tests - List of tests - - - PRECONDITIONING_FOR_DIFFUSION_OF_TRACERS - Preconditioning for diffusion of tracers - - - EXPLICIT_LEO_POSTMA - Explicit Leo Postma - - - LOCAL_NUMBER_OF_THE_POINT_TO_CALIBRATE_HIGH_WATER - Local number of the point to calibrate high water - - - Tchamen_scheme_order_1 - Tchamen scheme order 1 - - - supplementary_variable_O - Supplementary variable o - - - WAVE_ENHANCED_FRICTION_FACTOR - Wave enhanced friction factor - - - ELDER - Elder - - - supplementary_variable_N - Supplementary variable n - - - gauss_seidel - Gauss-Seidel - - - TREATMENT_OF_THE_LINEAR_SYSTEM - Treatment of the linear system - - - VARIABLES_TO_BE_PRINTED - Variables to be printed - - - normal_velocity_given_in_ubor_in_the_conlim_file - Normal velocity given in ubor in the conlim file - - - DENSITY_OF_ALGAE - Density of algae - - - NON_SUBMERGED_VEGETATION_FRICTION - Non-submerged vegetation friction - - - TIDAL_FLATS - Tidal flats - - - diagonal_and_crout - Diagonal and Crout - - - HARMONIC_CONSTANTS_FILE - Harmonic constants file - - - Priority_to_prescribed_values - Priority to prescribed values - - - BINARY_DATA_FILE_1_FORMAT - Binary data file 1 format - - - Normal - Normal - - - nodal - Nodal - - - PRESCRIBED_ELEVATIONS - Prescribed elevations - - - LIMIT_VALUES - Limit values - - - quadratic - Quadratic - - - ORDINATES_OF_SOURCES - Ordinates of sources - - - Real_tide_(methodology_before_2010) - Real tide (methodology before 2010) - - - NUMBER_OF_DROGUES - Number of drogues - - - maximum_elevation - Maximum elevation - - - dissipation_of_turbulent_energy_(W/kg) - Dissipation of turbulent energy (W/kg) - - - PROPAGATION - Propagation - - - constant_in_time_and_space - Constant in time and space - - - Mean_neap_tide - Mean neap tide - - - gmres_(see_option_for_the_solver_for_tracer_diffusion) - GMRES (see option for the solver for tracer diffusion) - - - SOLVER_OPTION - Solver option - - - MATRIX_STORAGE - Matrix storage - - - COEFFICIENT_TO_CALIBRATE_TIDAL_RANGE - Coefficient to calibrate tidal range - - - brownian_movement - Brownian movement - - - SOLVER - Solver - - - smooth - Smooth - - - turbulent_kinetic_energy_in_k_epsilon_model_(J/kg) - Turbulent kinetic energy in K-Epsilon model (W/kg) - - - NIKURADSE - Nikuradse - - - PRECONDITIONING_FOR_K_EPSILON_MODEL - Preconditioning for K-Epsilon model - - - drift_along_y_(m) - Drift along Y (m) - - - velocity_along_x_axis_(m/s) - Velocity along X axis (m/s) - - - LEO_POSTMA_FOR_TIDAL_FLATS - Leo Postma for tidal flats - - - block_diagonal_(4_9_matrices) - Block-diagonal (4-9 matrices) - - - Computed_with_h,u,v - Computed with H,U,V - - - ACCURACY_OF_K - Accuracy of K - - - WATER_QUALITY_PROCESS - Water quality process - - - OPTION_FOR_LIQUID_BOUNDARIES - Option for liquid boundaries - - - COEFFICIENT_TO_CALIBRATE_SEA_LEVEL - Coefficient to calibrate sea level - - - INITIAL_GUESS_FOR_H - Initial guess for H - - - SPHERICAL_COORDINATES - Spherical coordinates - - - no - No - - - THICKNESS_OF_ALGAE - Thickness of algae - - - MEAN_TEMPERATURE - Mean temperature - - - IDENTIFICATION_METHOD - Identification method - - - friction_coefficient - Friction coefficient - - - MASS_LUMPING_ON_VELOCITY - Mass-lumping on velocity - - - time_of_maximum_velocity - Time of maximum velocity - - - VALUES_OF_TRACERS_IN_THE_RAIN - Values of tracers in the rain - - - supplementary_variable_Z - Supplementary variable Z - - - supplementary_variable_R - Supplementary variable R - - - EXPLICIT_+_MURD_SCHEME_N - Explicit + murd Scheme N - - - conjugate_gradient_on_a_normal_equation - Conjugate gradient on a normal equation - - - WAVE_DRIVEN_CURRENTS - Wave driven currents - - - Tsunami_generated_on_the_basis_of_the_Okada_model_1992 - Tsunami generated on the basis of the Okada model 1992 - - - ASCII_DATABASE_FOR_TIDE - ASCII database for tide - - - OIL_SPILL_MODEL - Oil spill model - - - 1_point - 1 point - - - ORIGINAL_DATE_OF_TIME - Original date of time - - - GEOGRAPHIC_SYSTEM - Geographic system - - - TIDAL_MODEL_FILE - Tidal model file - - - absolute_value_of_diagonal - Absolute value of diagonal - - - u_and_v_given_in_the_conlim_file - U and V given in the conlim file - - - - lecture du fichier impossible : - unable to read file : - - - - Impossible d'ouvrir le fichier %s - unable to open file %s - - - - Impossible de convertir le fichier Python qui doit contenir des erreurs. - - On retourne le fichier non converti. Prevenir la maintenance. - - %s - Unable to translate the file. it probably contains mistake -ask eficas team -%s - - - - Format de sortie : %s, non supporte - Unsupported format %s - - - - Impossible d'ouvrir le fichier : %s - unable to open file: %s - - - - Erreur ! Erreur ! - Error! - - - - Erreur rencontree dans recherche_enfants : %s - Error in recherche_enfants : %s - - - - Erreur dans la creation du mot-cle : %s - Error when creating %s - - - - Impossible d'ouvrir le fichier : %s - unable to open file : %s - - - - le texte a analyser n'est pas celui d'une commande ou d'un operateur : - text is no eficas text: - - - - Erreur dans la recherche du nom de la commande : - error when searching command's name : - - - - Erreur dans la recherche des args de la commande : - error when searching argument's command : - - - - Erreur dans la recherche du nom de la commande : - error when searching command's name : - - - - Erreur dans la recherche des args de la commande : - error when searching argument's command : - - - - %d n'est pas un index valide pour append_brother - %d is not a valid index for append-brother - - - - le fichier de commandes %s n'existe pas - commands file %s does not exist - - - - un fichier de commandes doit etre defini avant une poursuite %s - You have to define principal commands file before a secondary (poursuite) file %s - - - - le fichier poursuite %s n'existe pas - the secondary (poursuite) file does not exist - - - - include mal defini %s - include is not correct %s - - - - un fichier de commandes doit etre defini avant un include %s - You have to define principal commands file before include %s - - - - le fichier include %s n'existe pas - include file does not exist - - - - jdc %(v_1)s, le fichier - de commandes %(v_2)s n'existe pas - v_1 - jdc %(v_1)s : .comm %(v_2)s does not exist - - - - le fichier jdc %s n'existe pas - file %s does not exist - - - - jdc %s manque option jdc dans section jdc - jdc %s does not have jdc option in command line - - - - %(v_1)s include %(v_2)s : %(v_3)s - v_1 - %(v_1)s include %(v_2)s : %(v_3)s - - - - %(v_1)s fichier poursuite: %(v_2)s - v_1 - %(v_1)ssecondary (poursuite) file %(v_2)s - - - - nom etude : %s - study's name : %s - - - - utilisation : %prog [options] - use : %prog[options] - - - - nom du fichier de commandes - principal .comm file's name - - - - nom du fichier poursuite - secondary (poursuite) file's name - - - - numero d'unite suivi du nom du fichier include - unit number and include file's name - - - - fichier decrivant une etude - file containing a study - - - - version de catalogue a utiliser - catalog's version - - - - nom du code a utiliser - code's name - - - - niveau de debug - debug level - - - - schema - schema - - - - Nombre incorrect d'arguments - incorrect number of arguments - - - - Localisation specifiee pour l'application. - specified localization for the application. - - - - Impossible de transferer les fichiers requis dans : %s - unable to transfer files to : %s - - - - Erreur - error - - - - Erreurs fatales - fatale error - - - - Impossible reconstruire commande - - unable to construct command - - - - Objet commentaire non valorise - comment object has no value - - - - Debut Fonction %s - start function %s - - - - Fin Fonction %s - end function %s - - - - Nom de concept deja defini : %s - Concept's name %s is already existing - - - - Longueur incorrecte - incorrect length - - - - L'attribut 'min' doit etre un entier : - min must be an integer : - - - - L'attribut 'max' doit etre un entier : - max must be an integer : - - - - Nombres d'occurrence min et max invalides : - min and max are invalid: - - - - L'attribut 'fr' doit etre une chaine de caracteres - 'fr' must be a string - - - - L'attribut 'statut' doit valoir 'o','f','c' ou 'd' - values for statut arguments are : 'o','f','c' or 'd' - - - - L'attribut 'docu' doit etre une chaine de caracteres - docu must be a string - - - - Fin - end - - - - Le parametre EVAL %s ne peut valoir None - None is not a valid value for Eval parameter %s - - - - Pas de nom donne au parametre EVAL - No name for parameter EVAL - - - - Un nom de parametre ne peut depasser 8 caracteres - parameter's name can not exceed 8 characters - - - - Un concept de nom %s existe deja ! - Concept's name %s is already existing! - - - - ERREUR - ERROR - - - - Format pas implemente : %s - format : %s not implemented - - - - Type d'objet non prevu : %s - object type not expected : %s - - - - ce groupe de maillage %s est associe a au moins un materiau et au moins une source. - mesh group %s is associated with at least one material and at least a source. - - - - ce groupe de maillage %s n'est associe a aucun materiau ou source. - mesh group %s is associated with no material or no source. - - - - ATTENTION! Une source constante n'est possible qu'a frequence nulle en regime frequentiel - - - - - toutes les donnees ne sont pas connues - all data are not available - - - - Fichier patron %s n'existe pas. - pattern file %s does not exist. - - - - Pas supporte - not implemented - - - - Entite inconnue ou interdite :%s - Unknown or unsupported entity : %s - - - - Entite inconnue ou interdite :%s. Elle est ignoree - Unknown or unsupported entity : %s. ignored - - - - Les tuples ne sont pas supportes pour le format ini :%s - Tuple are not allowed for format ini : %s - - - - Type de valeur non supportee par le format ini :%(nom)s -%(exception)s - nom - Unsupported type of value for .ini format %(nom)s -%(exception)s - - - - Il y a un pb a la Creation du XML - problem when creating XML - - - - Il y a un pb a la Creation du STD - problem when creating STD - - - - Entite inconnue ou interdite : %s. Elle est ignoree - unkown ou unsupported entity : %s. ignored - - - - Tag %s non-defini. Ceci est un bogue interne. en informer les developpeurs. - Tag %s not defined. Ask developpeurs team. - - - - Le mot-cle %s est obligatoire. - mandatory keyword : %s. - - - - concept %(inst_name)s de type %(class_name)s - inst_name - concept %(inst_name)s of type %(class_name)s - - - - Un nom de concept doit etre un identificateur Python - concept's name must be a python identifier - - - - Concept existant - allready existing concept - - - - Operateur reentrant mais concept non existant - operator 'reentrant' but concept does not exist - - - - Operateur reentrant et concept existant trouve - Operator 're-entrant' and concept exists - - - - Concept deja existant et de mauvais type - already existing concept of not supported type - - - - Nommage du concept refuse : un concept de meme nom existe deja - Name is refused : already existing concept - - - - Nommage du concept effectue - Concept named - - - - Nommage impossible %s - unable to name %s - - - - La liste des arguments d'une formule doit etre entre parentheses : parenthese ouvrante manquante - formula expects a list of arguments : no left parenthesis - - - - La liste des arguments d'une formule doit etre entre parentheses : parenthese fermante manquante - formula expects a list of arguments : no right parenthes - - - - Pas de nom donne a la FORMULE - no name given - - - - Un nom de FORMULE ne peut depasser 8 caracteres - name too long (8 characters max) - - - - Un nom de FORMULE ne peut pas commencer par un chiffre - name does not begin with a figure - - - - Le type de la valeur retournee n'est pas specifie - no type is specified for the return value - - - - Une formule ne peut retourner une valeur de type : %s - impossible to return a value of type : %s - - - - Impossible d'ajouter la commande - unable to add the keyword (commande) - - - - Impossible d ajouter la commande - unable to add the keyword (commande) - - - - Pas implemente - not implemented - - - - Nom de concept deja defini - already defined concept - - - - Nom de concept deja defini : - already defined concept : - - - - Impossible de trouver le fichier correspondant a l'unite - unable to find file corresponding to unit - - - - n'est pas un fichier existant - is not an existing file - - - - Fichier invalide %s - invalid file %s - - - - Impossible de construire le jeu de commandes correspondant au fichier - unable to create the jdc corresponding to the file - - - - Erreur lors de l'evaluation du fichier inclus - Error when reading the 'include' file - - - - Ce fichier ne sera pas pris en compte - %s - the file is ignored -%s - - - - Ce fichier ne sera pas pris en compte -Le fichier associe n'est pas defini - the file is ignored : associated file is not defined - - - - Le fichier n est pas defini - file is not defined - - - - le fichier doit contenir une unique variable de sortie - file must declare a single output variable - - - - Fichier invalide - invalid file - - - - Le contenu de ce fichier ne sera pas pris en compte - %s - the file will be ignored : -%s - - - - Le fichier INCLUDE n est pas defini - include file is not defined - - - - Le contenu de ce fichier ne sera pas pris en compte - - file will be ignored - - - - - Erreur lors de l'evaluation du fichier poursuite - Error when creating secondary (poursuite) file - - - - L'objet %(v_1)s ne peut etre un fils de %(v_2)s - v_1 - Object %(v_1)s can not be a child for %(v_2)s - - - - L'objet %s ne peut pas etre repete - Object %s can not be repeated - - - - Erreur - mclist inexistante : %s - Error - mclist does not exist : %s - - - - Erreur - mot cle facteur de nom : %s - Error - keyword "mot-clef facteur" nammed : %s - - - - traitement non-prevu - unexpected task - - - - L'objet %s ne peut pas etre ajoute - Object %s cannot be add - - - - None n'est pas une valeur autorisee - None is not a valid value - - - - un concept de meme nom existe deja - concept already exists - - - - Concept cree - concept created - - - - La matrice n'est pas une matrice %(n_lign)d sur %(n_col)d - n_lign - matrix is not a %(n_lign)d x %(n_col)d matrix - - - - Decommenter - uncomment - - - - Decommente la commande - uncomment the command - - - - Impossible de supprimer un mot-cle obligatoire - mandatory keyword cannot be deleted - - - - Mot-cle %s supprime - Keyword %s deleted - - - - Pb interne : impossible de supprimer ce mot-cle - internal problem : unable to delete keyword - - - - Commentaire supprime - comment is deleted - - - - Commande %s supprimee - command %s is deleted - - - - Pb interne : impossible de supprimer cet objet - internal problem : unable to delete object - - - - Le fichier de commande n'a pas pu etre converti pour etre editable par Eficas - - - unable to convert .comm file in order to open it with Eficas - - - - Include vide - include file is empty - - - - L'include doit etre correctement initialise pour etre visualise - include file must be correct - - - - Impossible de supprimer ce mot-clef - unable to delete this keyword - - - - View3D - View3D - - - - affiche dans Geom les elements de structure - diplay SE in Geom - - - - Graphique - graphic - - - - affiche la distribution - display distribution - - - - Impossible de supprimer un mot-clef obligatoire - unable to delete a mandatory keyword - - - - Mot-clef %s supprime - Keyword %s is deleted - - - - Definition d'un parametre - defines a parameter - - - - Import du fichier de Configuration - import configuration file - - - - Erreur a la lecture du fichier de configuration %s - Error when reading configuration file - - - - Erreur fatale au chargement de %s - fatal error when loading %s - - - - Erreur fatale au chargement d'un fichier - Fatal error when loading file - - - - fichier modifie - file updated - - - - Attention! fichier change hors EFICAS - Warning ! this file was modified outside Eficas - - - - Type de fichier non reconnu - unsupported file type - - - - EFICAS ne sait pas ouvrir le type de fichier %s - Eficas is not able to open this file's type : %s - - - - EFICAS ne sait pas ouvrir ce type de fichier - Eficas is not able to open this file's type - - - - Copie impossible - unable to copy - - - - Veuillez selectionner un objet a copier - you have to select an object to copy - - - - Veuillez selectionner un seul objet : la copie se fera apres le noeud selectionne - You have to select a single object : copy will be done after the selected node - - - - Aucun Objet n a ete copie ou coupe - No object was cut or copied - - - - Copie refusee - rejected copy - - - - Eficas n a pas reussi a copier l objet - Eficas cannot copy this object - - - - Copie refusee pour ce type d objet - Copy rejected : bad object type - - - - Deplacement refuse - move rejected - - - - Deplacement refuse entre 2 fichiers. Seule la copie est autorisee - move rejected. no move between two files : only copy is available - - - - Copie impossible a cet endroit - unable to copy here - - - - Veuillez selectionner une commande, un parametre, un commentaire ou une macro - select a command; a parameter, a comment or a macro - - - - Choix d'un fichier XML - Choice of XML file - - - - Ouvrir Fichier - Open file - - - - Erreur a la generation - Error when generating - - - - EFICAS ne sait pas convertir ce JDC - Eficas is unable to convert JDC - - - - Format %s non reconnu - not supported format %s - - - - Execution impossible - Unable to execute - - - - le JDC doit etre valide pour une execution MAP - JDC has to be valid before run - - - - le JDC doit contenir un et un seul composant - JDC must contains a single componant - - - - sauvegarde - save - - - - Sauvegarde du Fichier - save file - - - - Le fichier <b>%s</b> existe deja. - file <b>%s</b> already exists. - - - - &Ecraser - &Replace - - - - Donnez le nom du fichier correspondant a l unite logique - Choose file corresponding to unit - - - - Choix d'un fichier de poursuite - Choose poursuite file - - - - Le fichier %s contient une commande POURSUITE - - file %s contains a POURSUITE command - - - - Traduire Fichier - file translation - - - - Fichiers JDC (*.comm);;Tous les Fichiers (*) - JDC files(*.comm);; All FIles(*) - - - - Fichier Traduit : %s - - - Translated file : %s - - - - Pas de difference entre le fichier origine et le fichier traduit - No difference between the primary file and the translated file - - - - %d versions du catalogue sont disponibles - %d catalogs versions are available - - - - &Ok - &Ok - - - - Entrez - enter - - - - valeurs - values - - - - Entrez entre - enter between - - - - et - and - - - - Selection - selection - - - - Type de base inconnu - unkown type - - - - Visualisation Fichier - view file - - - - Impossibilite d'afficher le Fichier - Unable to display file - - - - Sauvegarder Fichier - save File - - - - Fichier selectionne - file selected - - - - expression valide - valid expression - - - - expression invalide - unvalid expression - - - - expression n est pas de la forme a+bj - expression is not as a+bj - - - - entrer une seule valeur SVP - Please, enter a single value - - - - saisir le type de complexe - choose complex's type - - - - Sauvegarder le fichier - save file - - - - Le fichier <b>%(v_1)s</b> n'a pu etre sauvegarde. <br>Raison : %(v_2)s - v_1 - file <b>%(v_1)s</b> was not saved. Raison : %(v_2)s - - - - &Recents - &Recently Opened - - - - Aide specifique - code's help - - - - Traduction - translation - - - - Options - Options - - - - TraduitV7V8 - - - - - TraduitV8V9 - - - - - TraduitV9V10 - - - - - Acquiert Groupe Maille - - - - - Specificites Maille - - - - - version - version - - - - pour - for - - - - Aide Indisponible - no help avalaible - - - - Parametrage - Options - - - - Veuillez d abord choisir un code - Choose a code - - - - Pas de possibilite de personnalisation de la configuration - no options avalaible for configuration - - - - &Effacer - &Delete - - - - Veuillez entrer le complexe sous forme aster ou sous forme python - enter a complex - - - - Import du catalogue - Loading catalog - - - - Pas de catalogue defini pour le code - No catalog for this code - - - - Aucun catalogue trouve - No catalog - - - - avec le catalogue - with catalog - - - - Impossible d'importer le catalogue - unable to load catalog - - - - Choix d une version du code - Choose a version for - - - - Choix d une version - choose a version - - - - Parametre - parameter - - - - Insere un parametre - insert a parameter - - - - item invalide - invalid item - - - - l item doit etre valide - item must be valid - - - - apres - after - - - - Insere un commentaire apres la commande - insert a comment after the command - - - - avant - before - - - - Insere un commentaire avant la commande - insert a comment before the command - - - - Insere un parametre apres la commande - insert a parameter after the command - - - - Insere un parametre avant la commande - insert a parameter before the commande - - - - Supprimer - delete - - - - supprime le mot clef - delete keyword - - - - Documentation - documentation - - - - documentation sur la commande - command's documentation - - - - Documentation Vide - empty documentation - - - - Aucune documentation n'est associee a ce noeud - no documentation is available for this node - - - - impossible de trouver la commande - unable to find command - - - - Lecteur PDF - PDF reader - - - - impossible d'ouvrir - unable to open - - - - Commentaire - Comment - - - - ce noeud - this node - - - - commente le noeud - comment this node - - - - Fichiers JDC (*.comm);;Tous les Fichiers (*) - JDC Files (*.comm);;All Files(*) - - - - &Quitter - &Exit - - - - Quitter - Exit - - - - Fichier Duplique - file is duplicated - - - - Le fichier ne sera pas sauvegarde. - File will not be saved. - - - - &Annuler - &Cancel - - - - Fichier - File - - - - Le fichier <b>%s</b> est deja ouvert. - File <b>%s</b> is already open. - - - - &Duplication - &Duplication - - - - &Abort - &Abort - - - - Fichier Modifie - File is modified - - - - Le fichier %s n a pas ete sauvegarde. - file %s was not saved. - - - - &Sauvegarder - &Save - - - - Erreur a l'evaluation : - %s - Error when loadind : -%s - - - - Un fichier de nom %s existe deja : impossible de creer un repertoire de meme nom - File %s already exists : unable to create a directory with the same name - - - - Creation du repertoire %s impossible - Verifiez vos droits d'acces - Unable to create directory : check your access rights - - - - localisation de l'application, pour la traduction - use for application translation - - - - ERREUR! ce groupe de maille (%s) n'a pas de prefixe valable - - - - - ERREUR! ce type de bloc (%s) n'est pas valable - - - - - n'est pas un index valide pour append_brother - is not correct - no possible "append_brother" - - - - Erreur interne - Internal error - - - - La PDF de la loi ne peut pas etre affichee. - unable to display law's PDF. - - - - Le fichier contient une commande MODEL - - file contains MODEL command - - - - Donnez le nom du fichier XML qui contient la description des variables - - - - - Choix unite %d - Choice for unit %d - - - - Fichier pour unite - File for unit - - - - La formule passee a l'interpreteur doit etre sous forme de tuple - formula must be written as tuple - - - - Debut - Beginning - - - - Le parametre EVAL ne peut valoir None - None is not a valid value for EVAL - - - - Pas de nom donne au parametre - No name given - - - - Le parametre %s ne peut valoir None - None is an incorrect value for parameter %s - - - - Format non implemente : %s - Not implemented format - - - - Type de valeur non supporte par le format pyth : n %(exception)s - nom - unsupported type of value - - - - Impossible de realiser la verification de la formule - unable to verify formula - - - - Pb interne : impossible de supprimer ce mot-clef - internal problem : unable to delete keyword - - - - Eficas ne peut pas traiter plusieurs instructions - sur la meme ligne : %s - Eficas is not able to manage many instructions on a same line - - - - le texte a analyser n'est pas celui d'une commande ou - d'un operateur : %s - text is not valid for a command or a operaor - - - - le texte a analyser n'est pas celui d'une commande connue : - %(v_1)s %(v_2)s - v_1 - text is not valid for command %(v_1)s %(v_2)s - - - - le texte a analyser n'est pas celui d'une commande connue : - %(v_1)s %(v_2)s - v_1 - text is not valid for command %(v_1)s %(v_2)s - - - - jdc %(v_1)s manque - fichier comm dans section %(v_2)s - v_1 - file %(v_1)s need a .comm file in section %(v_2)s - - - - jdc %(v_1)s - fichier include %(v_2)s, %(v_3)s - n'existe pas - v_1 - file %(v_1)s need an include file %(v_2)s,%(v_3)s does not exist - - - - jdc %(v_1)s manque fichier comm - dans section %(v_2)s - v_1 - file %(v_1)s need a .comm file in section %(v_2)s - - - - jdc %(v_1)s, le fichier de commandes - %(v_2)s n'existe pas - v_1 - jdc%(v_1)s, .comm %(v_2)s does not exist - - - - ATTENTION! Une source constante - n'est possible qu'a frequence nulle - en regime frequentiel - - - - - ERREUR! Une forme de la source du - type WAVEFORM_CONSTANT ou WAVEFORM_SINUS est attendue. - - - - - ATTENTION! Une source constante n'est - possible qu'a frequence nulle en regime frequentiel - - - - - ERREUR! Une forme de la source du type - WAVEFORM_CONSTANT ou WAVEFORM_SINUS est attendue. - - - - - ERREUR! ce groupe de maille (%s) n'a pas de prefixe - indiquant le type de materiau ou de source associee - - - - - ERREUR! ce groupe de maille (%(nom)s) n'a pas - le prefixe correct pour etre associe a un type %(type_bloc)s - nom - - - - - - Include Invalide. - ne sera pas pris en compte - Invalid include file. text will not be included - - - - Impossible de relire le fichier %s - - unable to read file - - - - Le fichier include contient des erreurs - include file contains errors - - - - PARAMETRE - PARAMETER - - - - EFICAS ne sait pas convertir le JDC selon le format - Eficas does not know how to convert data according to the defined format - - - - le JDC doit etre valide pour une execution - Before a run action, JDC must be valid - - - - Sauvegarder SVP avant l'execution - Save before run action - - - - Sauvegarde de l'input impossible - unable to save input file - - - - Un JdC valide est necessaire pour creer un .input - file must be valid to create a .input file - - - - Choix du composant obligatoire - You have to choose a component - - - - Le fichier %s contient une commande INCLUDE - - file %s contains an "INCLUDE" command - - - - Donnez le nom du fichier dont vous - voulez faire une poursuite - Name the principal file - - - - Fichiers Med (*.med);;Tous les Fichiers (*) - Med Files (*.med);;All Files(*) - - - - Fichier Med - Med File - - - - Veuillez selectionner un fichier Med - Choose a Med file - - - - reel - float - - - - entier - integer - - - - complexe - complex - - - - l'aide n est pas installee - Help is not available - - - - Export Med vers Fichier - export Med Mesh in a file - - - - Impossibilite d exporter le Fichier - Unable to export file - - - - objet valide - valid object - - - - Valeur non modifiable - value can not be changed - - - - Options pour - - Settings - - - - Nombre minimal de valeurs : - minimal number of values : - - - - Nombre maximal de valeurs : - Maximal number of values : - - - - l expression n est pas de la forme a+bj - expression must be as a+bj - - - - Valeur du mot-cle enregistree - Value is recorded - - - - Valeur du mot-cle non autorisee - Value is not authorized - - - - Fichier non encore nomme - unnamed file - - - - SOURCE - SOURCE - - - - EnveloppeConnexeInducteur - Bounding_Box - - - - EnveloppeConnexe2 - - - - - VecteurDirecteur - Direction_Vector - - - - Centre - Center - - - - SectionBobine - Section - - - - Amplitude - Amplitude - - - - NbdeTours - NbTurns - - - - CONDUCTEUR - CONDUCTOR - - - - Conductivite - Conductivity - - - - PermeabiliteRelative - Relative_Permeability - - - - NOCOND - DIELECTRIC - - - - VCUT - CUT - - - - Orientation - Orientation - - - - ZS - ZS - - - - PARAMETRES - SETTINGS - - - - RepCarmel - Carmel_Directory - - - - TypedeFormule - Formula - - - - Frequence - Frequency - - - - Nb_Max_Iterations - Max_Nb_Iterations - - - - Erreur_Max - Max_Error - - - - Format non implemente - non implemented format - - - - Type d'objet non prevu - - - - - Fichier de donnees - data file - - - - Tous les Fichiers (*) - all files (*) - - - - Select - select - - - - nb min de valeurs : - minimal number of values : - - - - nb max de valeurs atteint - maximum number of values - - - - TraduitV10V11 - - - - - TraduitV11V12 - - - - - Sauve Format Ligne - save file in line format - - - - Valeur du mot-clef enregistree - value recorded - - - - Valeur du mot-clef non autorisee : - unvalid value - - - - %s n'est pas un fichier valide - %s is not a valid file - - - - : verifie les types dans un tuple - valids type in a tuple - - - - Les types entres ne sont pas permis - unvalid type for values - - - - La cardinalite n'est pas correcte, la derniere valeur est ignoree - unvalid multiplicity. last value will be ignored - - - - n est pas un tuple de - is not a tuple - - - - valeurs - values - - - - Valeur incorrecte - incorrect value - - - - n est pas un identifiant correct - - is not a valid name - - - - Entrer un float SVP - Float expected - - - - Entrer un float inferieur a - float lower than - - - - Entrer un float superieur a - float superior than - - - - Mauvaise execution - bad run - - - - impossible d executer la methode - unable to run method - - - - Mauvaise Commande - bad command - - - - Aucune variable connue - no possible variable - - - - Mauvaise dimension de matrice - bad matrix dimension - - - - le nombre de ligne n est pas egal a - number of lines is not - - - - le nombre de colonne n est pas egal a - number of columns is not - - - - Mauvaise Valeur - bad value - - - - l element - element - - - - n est pas correct - is not correct - - - - Modification Impossible - unable to modify - - - - le parametre n'est pas valide - parameter is not valid - - - - n est pas un identifiant correct - is not a correct name - - - - Valeur incorrecte: - incorrect value : - - - - Valeur incorrecte - incorrect value - - - - Valeur correcte - valid value - - - - impossible d'evaluer : - unable to evaluate : - - - - Un concept de nom %s existe déjà ! - already existing concept with name : %s ! - - - - existe deja - - already exists - - - - La matrice n'a pas le bon entete - header does not match with matrix - - - - le mot clef - keyword - - - - doit etre insere avant - has to be inserted before - - - - insertion impossible - unable to insert keyword - - - - doit etre insere apres - has to be inserted after - - - - Nb maximum de valeurs atteint - Maximal number of values - - - - pas de regle de construction pour ce jeu de commandes - No specific rules for building this dataset - - - - Gestion Maillage - Mesh Menu - - - - Acquiert groupe mailles - Read elements mesh - - - - Acquisition Groupe Maille - Read elements mesh - - - - VERSION - VERSION_EN - - - - NUM - NUMBER - - - - FILETYPE - FILETYPE - - - - PARAMETERS - Parametres - - - - Fichier_maillage - FichierMaillage - - - - Echelle_du_maillage - MeshScale - - - - Formulation - Fomulation - - - - Timeproblem - TimeProblem - - - - spectral - EssaiSpectral - - - - Basis - Basis - - - - Fourier - Fourier - - - - Ordre - Ordre - - - - FREQUENCY - Frequency - - - - minimisation - Minimisation - - - - no - no - - - - yes - yes - - - - nb_procs_para - NbProcs - - - - POLYMER - Polymer_en_Anglais - - - - MODEL_DATABASE - MoDEL_DATa_Anglais - - - - Stabilise - Srabilise_Anglais - - - - Non Stabilise - Non Stabilise anglais - - - - Local - local_anglais - - - - ESSAI_OPTION - essai_option_anglais - - - - MATERIEL - mater_anglais - - - - Cable - cable_anglais - - - - Peinture - peinture_anglais - - - - Tuyauterie - tuyau_anglais - - - - Materiau_De_Cable - mat_cable_anglais - - - - PE - pe_anglais - - - - EPDM - epdm_anglais - - - - Modele - modele_anglais - - - - Objet commande commentarisé invalide - - - - - ChoixCode - - - Choix du code - Choose code - - - - Veuillez choisir un code : - Choose code : - - - - &Cancel - - - - - Validate choice - - - - - &OK - - - - - ChoixCommandes - - - DMacro - DMacro - - - - Alphabetique - alphabetic sort - - - - Par Groupe - Sort by group - - - - <html><head/><body><p align="center"><span style=" text-decoration: underline;">Affichage</span></p></body></html> - <html><head/><body><p align="center"><span style=" text-decoration: underline;">Order</span></p></body></html> - - - - affiche les commandes par ordre alphabetique - display commands in alphabetic order - - - - affiche les commandes selon les thèmes - display commands by thema - - - - Ordre de la modélisation - ordered by modelisation - - - - <html><head/><body><p align="center">Filtre Commande</p></body></html> - <html><head/><body><p align="center">Filters Commands</p></body></html> - - - - filter commands - filters commands - - - - affiche les régles de validité - display validity rules - - - - ... - - - - - Règles de construction - Building Rules - - - - Sensible à la casse - case-sensitive - - - - Effacer - Clear - - - - selectionne les mots qui CONTIENNENT l expression - select words that CONTAINS the filter - - - - ré-affiche toutes les commandes - re-display the list of commands - - - - DChoixCata - - - Choix d'une version du code Aster - Choose a version for code Aster - - - - <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> -<html><head><meta name="qrichtext" content="1" /><style type="text/css"> -p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal;"> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:11pt;">2 versions sont disponibles</span></p></body></html> - <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"><html><head><meta name="qrichtext" content="1" /><style type="text/css">p, li { white-space: pre-wrap; }</style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal;"><p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:11pt;">2 catalogs are available </span></p></body></html> - - - - &OK - &Ok - - - - &Cancel - &Cancel - - - - Validate choice - validate choice - - - - DSelVal - - - Sélection de valeurs - Values Selections - - - - Separateur - marker - - - - espace - space - - - - virgule - comma - - - - point-virgule - semi-colon - - - - Ajouter Selection - add selected value - - - - Importer Tout - imports all values - - - - DVisu - - - Visualisation Include Materiau - View Include - - - - Eficas - - - MainWindow - Main Window - - - - &Fichier - &File - - - - &Aide - &Help - - - - toolBar - toolBar - - - - &Nouveau - &New - - - - Ctrl+N - Ctrl+N - - - - Nouvel Include - New Include - - - - &Ouvrir - &Open - - - - Ctrl+O - Ctrl+O - - - - Enregistrer - Save - - - - Enregistrer sous - Save as - - - - Fermer - Close - - - - Ctrl+W - - - - - Fermer tout - Close all - - - - Couper - Cut - - - - Ctrl+X - Ctrl+X - - - - Copier - Copy - - - - Ctrl+C - Ctrl+C - - - - Coller - Paste - - - - Ctrl+V - Ctrl+V - - - - Quitter - Exit - - - - Ctrl+Q - Ctrl+Q - - - - Rapport de Validation - Validation Report - - - - Fichier Source - Source File - - - - Fichier Résultat - Result File - - - - Parametres Eficas - Eficas Parameters - - - - Lecteur documentation - documentation reader - - - - Eficas - Eficas - - - - Version - Version - - - - Supprimer - Delete - - - - Rechercher - Find - - - - Rechercher dans l'arbre d'etude - Find in Data Tree - - - - Ctrl+F - Ctrl+F - - - - Replier/Deplier - Expand/Collapse - - - - Execution - Run - - - - Execution - Run - - - - Patrons - Patterns - - - - Tab 1 - - - - - &Edition - &Edit - - - - &JeuDeDonnées - &Data - - - - Shift+I - - - - - Ctrl+S - - - - - Ctrl+Shift+S - - - - - Shift+V - - - - - Chercher Mot-Clef - Find Keyword - - - - Rechercher dans le catalogue - Find Keyword in Catalog - - - - Shift+F - - - - - Shift+D - - - - - Commentaire - Comment - - - - Shift+C - - - - - Paramètres - Parameters - - - - Gestion des paramètres - Managing parameters - - - - Shift+P - - - - - Parametre Eficas - Eficas Settings - - - - Save Run - Save run - - - - Run - run - - - - &bad - - - - - Régles du JdC - Rules for dataset - - - - JDCEditor - - - Save File - - - - - The file <b>%1</b> could not be saved.<br>Reason: %2 - - - - - JDC (*.comm);;All Files (*) - - - - - &Abandonner - &Cancel - - - - Tuple2 - - - Form - - - - - <html><head/><body><p><span style=" font-size:14pt;">(</span></p></body></html> - - - - - <html><head/><body><p><span style=" font-size:14pt;">,</span></p></body></html> - - - - - <html><head/><body><p><span style=" font-size:14pt;">)</span></p></body></html> - - - - - Tuple3 - - - Form - - - - - <html><head/><body><p><span style=" font-size:14pt;">(</span></p></body></html> - - - - - <html><head/><body><p><span style=" font-size:14pt;">,</span></p></body></html> - - - - - <html><head/><body><p><span style=" font-size:14pt;">)</span></p></body></html> - - - - - Widget4a6RadioButton - - - Affiche le rapport de validation du mot-clef - Display validity report for the keyword - - - - Détruit le mot-clef - Delete the keyword - - - - Form - - - - - ... - - - - - <html><head/><body><p>aaa</p><p>dqsklmdqm</p></body></html> - - - - - RadioButton - - - - - WidgetBloc - - - Form - - - - - WidgetCB - - - Affiche le rapport de validation du mot-clef - display validation report for the keyword - - - - Détruit le mot-clef - Delete the keyword - - - - Form - - - - - ... - - - - - <html><head/><body><p>aaa</p><p>dqsklmdqm</p></body></html> - - - - - WidgetCommande - - - Affiche le rapport de validité de la commande - Display validity report for the keyword - - - - <html><head/><body><p><span style=" color:#0000ff;">commande </span></p></body></html> - <html><head/><body><p><span style=" color:#0000ff;">command </span></p></body></html - - - - Nom de l'objet. Seuls, les objets valides peuvent être nommés - Object Name. Only valid objects can be named - - - - Lance un script associé à la commande - Run associated script - - - - ouvre un navigateur sur l'aide contextuelle - open a browser to navigate to contextual help - - - - affiche les régles de validité - display validity rules - - - - Détruit la commande - Delete the command - - - - Affiche les commandes possibles - display allowed commands - - - - &Commandes - &Commands - - - - Shift+A, Alt+A, Alt+A, Alt+A - Shift+A, Alt+A, Alt+A, Alt+A - - - - Affiche le formulaire de la commande précédente - display previous command - - - - Affiche le formulaire de la commande suivante - display next command - - - - DCommandeUnique - - - - - ... - - - - - << - - - - - >> - - - - - TextLabel - - - - - WidgetCommentaire - - - <html><head/><body><p><span style=" color:#0000ff;">Commentaire</span></p></body></html> - <html><head/><body><p><span style=" color:#0000ff;">Comment</span></p></body></html> - - - - Affiche les commandes possibles - display allowed commands - - - - Shift+A, Alt+A, Alt+A, Alt+A - Shift+A, Alt+A, Alt+A, Alt+A - - - - Détruit le commentaire - Delete the comment - - - - &Commandes - &Commands - - - - Affiche le formulaire de la commande précédente - display previous command - - - - Affiche le formulaire de la commande suivante - display next command - - - - DCommandeUnique - - - - - ... - - - - - << - - - - - >> - - - - - WidgetDate - - - Affiche le rapport de validation du mot-clef - Display validity report for keyword - - - - Détruit le mot-clef - Delete the keyword - - - - Form - - - - - ... - - - - - <html><head/><body><p>aaa</p><p>dqsklmdqm</p></body></html> - - - - - WidgetFact - - - Form - - - - - ... - - - - - <html><head/><body><p><span style=" font-style:italic;">TextLabel</span></p></body></html> - - - - - WidgetFactPlie - - - TextLabel - TextLabel - - - - Form - - - - - ... - - - - - WidgetHeure - - - Affiche le rapport de validation du mot-clef - Display validity report for keyword - - - - Détruit le mot-clef - Delete the keyword - - - - Form - - - - - ... - - - - - <html><head/><body><p>aaa</p><p>dqsklmdqm</p></body></html> - - - - - <html><head/><body><p><br/></p></body></html> - - - - - WidgetInformative - - - Form - - - - - WidgetOptionnel - - - <html><head/><body><p><span style=" color:#0000ff;">commande </span></p></body></html> - <html><head/><body><p><span style=" color:#0000ff;">command </span></p></body></html - - - - WidgetOptionnel - - - - - WidgetParam - - - <html><head/><body><p><span style=" color:#000000;">Paramètre</span></p></body></html> - <html><head/><body><p><span style=" color:#000000;">Parameter</span></p></body></html> - - - - Détruit le commentaire - Delete the comment - - - - Affiche les commandes possibles - Display allowed commands - - - - &Commandes - &Commands - - - - Shift+A, Alt+A, Alt+A, Alt+A - Shift+A, Alt+A, Alt+A, Alt+A - - - - Affiche le formulaire de la commande précédente - Display previous command - - - - Affiche le formulaire de la commande suivante - Display next command - - - - <html><head/><body><p>Valeur: </p></body></html> - <html><head/><body><p>Value: </p></body></html< - - - - <html><head/><body><p>Nom: </p></body></html> - <html><head/><body><p>Name: </p></body></html> - - - - Verifie la valeur - Valid the value - - - - DCommandeUnique - - - - - ... - - - - - << - - - - - >> - - - - - <html><head/><body><p><br/></p></body></html> - - - - - WidgetPlusieursBase - - - Affiche le rapport de validation du mot-clef - Display validity report for keyword - - - - Remonte la ligne - up - - - - Descend la ligne - down - - - - supprime une ligne - deletes a line - - - - Ajoute une ligne - add a line - - - - Montre l'ensemble des valeurs - display all the value - - - - Sélectionne depuis Salome - from salome - - - - Visualise dans Salome - Show in salome - - - - Ouvre un fichier de sélection des valeurs - Open a file for selection - - - - Détruit le mot-clef - Delete the keyword - - - - Form - - - - - ... - - - - - <html><head/><body><p>aaa</p><p>dqsklmdqm</p></body></html> - - - - - permet de gérer la liste - manage list - - - - TextLabel - TextLabel - - - - WidgetPlusieursInto - - - Affiche le rapport de validation du mot-clef - Display validity report for the keyword - - - - Détruit le mot-clef - Delete the keyword - - - - Form - - - - - ... - - - - - <html><head/><body><p>aaa</p><p>dqsklmdqm</p></body></html> - - - - - permet de gérer la liste - manage list - - - - WidgetPlusieursIntoOrdonne - - - Affiche le rapport de validation du mot-clef - display validity report for the keyword - - - - TextLabel - TextLabel - - - - Remonte d'une ligne - Up - - - - Descend d'une ligne - Down - - - - Détruit une ligne - Delete a line - - - - ajoute une ligne - add a line - - - - visualise l'ensemble des valeurs - show all values - - - - Détruit le mot-clef - Delete the keyword - - - - Form - - - - - ... - - - - - <html><head/><body><p>aaa</p><p>dqsklmdqm</p></body></html> - - - - - permet de gérer la liste - manage list - - - - WidgetPlusieursPlie - - - Form - - - - - Affiche le rapport de validité du mot-clef - Display validity report for the keyword - - - - ... - - - - - <html><head/><body><p>aaa</p><p>dqsklmdqm</p></body></html> - - - - - permet de gérer la liste - manage list - - - - Détruit le mot-clef - Delete the keyword - - - - WidgetPlusieursTuple - - - Form - - - - - Affiche le rapport de validation du mot-clef - Display validity report for the keyword - - - - ... - - - - - <html><head/><body><p>aaa</p><p>dqsklmdqm</p></body></html> - - - - - Remonte la ligne - Up - - - - Descend la ligne - Down - - - - supprime une ligne - delete a line - - - - Ajoute une ligne - add a line - - - - Montre l'ensemble des valeurs - show all values - - - - Ouvre un fichier de sélection des valeurs - import data from a file - - - - Détruit le mot-clef - Delete the keyword - - - - TextLabel - TextLabel - - - - WidgetRadioButton - - - Affiche le rapport de validation du mot-clef - Display validity report for the keyword - - - - Détruit le mot-clef - Delete the keyword - - - - Form - - - - - ... - - - - - <html><head/><body><p>aaa</p><p>dqsklmdqm</p></body></html> - - - - - RadioButton - - - - - WidgetSDCOInto - - - Affiche le rapport de validation du mot-clef - Display validity report for the keyword - - - - <html><head/><body><p>Structures de données du type requis </p><p><br/></p></body></html> - <html><head/><body><p>Objects with the recquired type</p><p><br/></p></body></html> - - - - <html><head/><body><p>ou Nom du concept</p></body></html> - or name the object - - - - Détruit le mot-clef - Delete the keyword - - - - Form - - - - - ... - - - - - <html><head/><body><p>aaa</p><p>dqsklmdqm</p></body></html> - - - - - WidgetSimpBase - - - Affiche le rapport de validation du mot-clef - Display validity report for the keyword - - - - Détruit le mot-clef - Delete the keyword - - - - Form - - - - - ... - - - - - <html><head/><body><p>aaa</p><p>dqsklmdqm</p></body></html> - - - - - WidgetSimpBool - - - Affiche le rapport de validation du mot-clef - Display validity report for the keyword - - - - Détruit le mot-clef - Delete the keyword - - - - Form - - - - - ... - - - - - <html><head/><body><p>aaa</p><p>dqsklmdqm</p></body></html> - - - - - True - - - - - False - - - - - WidgetSimpComplexe - - - Complexe : a+bj - Complex : a+bj - - - - Réel/Imaginaire - Real/Imaginary - - - - Module/Phase - Module/Phase - - - - Affiche le rapport de validation du mot-clef - Display validity report for the keyword - - - - Form - - - - - ... - - - - - <html><head/><body><p>aaa</p><p>dqsklmdqm</p></body></html> - - - - - <html><head/><body><p align="center">OU </p></body></html> - - - - - WidgetSimpFichier - - - Affiche le rapport de validité du mot-clef - Display validity report for the keyword - - - - affiche l'explorateur de fichier - open file explorer - - - - ouvre le fichier choisi - Open the file - - - - Détruit le mot-clef - Delete the keyword - - - - Form - - - - - ... - - - - - <html><head/><body><p>aaa</p><p>dqsklmdqm</p></body></html> - - - - - WidgetSimpTxt - - - Affiche le rapport de validation du mot-clef - Display validity report for the keyword - - - - Détruit le mot-clef - Delete the keyword - - - - Form - - - - - ... - - - - - <html><head/><body><p>aaa</p><p>dqsklmdqm</p></body></html> - - - - - WidgetTuple2 - - - Affiche le rapport de validation du mot-clef - Display validity report for the keyword - - - - Détruit le mot-clef - Delete the keyword - - - - Form - - - - - ... - - - - - <html><head/><body><p>aaa</p><p>dqsklmdqm</p></body></html> - - - - - <html><head/><body><p><span style=" font-size:14pt;">(</span></p></body></html> - - - - - <html><head/><body><p><span style=" font-size:14pt;">,</span></p></body></html> - - - - - <html><head/><body><p><span style=" font-size:14pt;">)</span></p></body></html> - - - - - WidgetTuple3 - - - Affiche le rapport de validation du mot-clef - Display validity report for the keyword - - - - Détruit le mot-clef - Delete the keyword - - - - Form - - - - - ... - - - - - <html><head/><body><p>aaa</p><p>dqsklmdqm</p></body></html> - - - - - <html><head/><body><p><span style=" font-size:14pt;">(</span></p></body></html> - - - - - <html><head/><body><p><span style=" font-size:14pt;">,</span></p></body></html> - - - - - <html><head/><body><p><span style=" font-size:14pt;">)</span></p></body></html> - - - - - WidgetUniqueSDCO - - - Affiche le rapport de validation du mot-clef - Display validity report for the keyword - - - - Attend un objet de type CO - expect a CO Object - - - - Détruit le mot-clef - Delete the keyword - - - - Form - - - - - ... - - - - - <html><head/><body><p>aaa</p><p>dqsklmdqm</p></body></html> - - - - - WidgetVide - - - Form - - - - - ... - - - - - <html><head/><body><p><span style=" color:#0055ff;">Label</span></p></body></html> - - - - - Attend un objet de type XXXX. Il faut le créer - object must be created - - - - baseWidget - - - DMacro - DMacro - - - - dView - - - Dialog - Dialog - - - - Fermer - Close - - - - Sauver - Save - - - - desRecherche - - - Rechercher dans le JDC - Find in JDC - - - - Suivant - Next - - - - Next - - - - - desWidgetCreeParam - - - Gestion des Paramètres - Parameters - - - - <html><head/><body><p>Nom: </p></body></html> - Name - - - - <html><head/><body><p>Valeur: </p></body></html> - Value - - - - <html><head/><body><p><span style=" text-decoration: underline;">Créer un paramètre</span></p></body></html> - <html><head/><body><p><span style=" text-decoration: underline;">New Parameter</span></p></body></html> - - - - desWidgetMatrice - - - Dialog - Dialog - - - - Affiche le rapport de validation du mot-clef - Display validity report for the keyword - - - - ... - - - - - <html><head/><body><p>Met à jour l'en-tête</p></body></html> - - - - - <html><head/><body><p>aaa</p><p>dqsklmdqm</p></body></html> - - - - - self.appliEficas - - - Wrapper Files (*.xml);;All Files (*) - - - - - Noname - - - - - viewRegles - - - Dialog - Dialog - - - diff --git a/OldCodes/UiQT4/eficas_fr.0106.ts b/OldCodes/UiQT4/eficas_fr.0106.ts deleted file mode 100644 index 22d9c577..00000000 --- a/OldCodes/UiQT4/eficas_fr.0106.ts +++ /dev/null @@ -1,4745 +0,0 @@ - - - - @default - - Values_Of_Tracers_In_The_Rain - Valeurs_Des_Traceurs_Dans_La_Pluie - - - Threshold_Depth_For_Receding_Procedure - Profondeur_Limite_Pour_Procedure_De_Ressuyage - - - Title - Titre - - - Spatial_Projection_Type - Type_De_Projection_Spatiale - - - Stochastic_Diffusion_Model - Modele_De_Diffusion_Stochastique - - - Drogues_File - Fichier_Des_Flotteurs - - - Origin_Coordinates - Coordonnees_De_L'origine - - - Thickness_Of_Algae - Epaisseur_Des_Algues - - - Velocities_Of_The_Sources_Along_X - Vitesses_Des_Sources_Selon_X - - - Velocities_Of_The_Sources_Along_Y - Vitesses_Des_Sources_Selon_Y - - - Finite_Volume_Scheme - Schema_En_Volumes_Finis - - - Density_Of_Algae - Masse_Volumique_Des_Algues - - - Geometry_File - Fichier_De_Geometrie - - - Turbulence_Model - Modele_De_Turbulence - - - Oil_Spill_Model - Modele_De_Nappes_D'hydrocarbures - - - Definition_Of_Zones - Definition_De_Zones - - - Rain_Or_Evaporation - Pluie_Ou_Evaporation - - - Sources_File - Fichier_Des_Sources - - - Friction_Coefficient - Coefficient_De_Frottement - - - Wind - Vent - - - Option_For_Tidal_Boundary_Conditions - Option_Pour_Les_Conditions_Aux_Limites_De_Maree - - - Coefficient_To_Calibrate_Tidal_Velocities - Coefficient_De_Calage_Des_Vitesses_De_Courant - - - Initial_Time_Set_To_Zero - Remise_A_Zero_Du_Temps - - - Maximum_Number_Of_Iterations_For_Diffusion_Of_Tracers - Maximum_D'iterations_Pour_La_Diffusion_Des_Traceurs - - - Binary_Results_File - Fichier_De_Resultats_Binaire - - - Number_Of_Drogues - Nombre_De_Flotteurs - - - Air_Pressure - Pression_Atmospherique - - - Mean_Depth_For_Linearization - Profondeur_Moyenne_Pour_La_Linearisation - - - Control_Of_Limits - Controle_Des_Limites - - - Free_Surface_Gradient_Compatibility - Compatibilite_Du_Gradient_De_Surface_Libre - - - Prescribed_Tracers_Values - Valeurs_Imposees_Des_Traceurs - - - defaut - Saint-venant_Ef - - - Velocity_Diffusivity - Coefficient_De_Diffusion_Des_Vitesses - - - Time_Step - Pas_De_Temps - - - Validation - Validation - - - Roughness_Coefficient_Of_Boundaries - Coefficient_De_Rugosite_Des_Bords - - - Density_Effects - Effets_De_Densite - - - Implicitation_Coefficient_Of_Tracers - Coefficient_D'implicitation_Des_Traceurs - - - Formatted_Results_File - Fichier_De_Resultats_Formate - - - Debugger - Debugger - - - Liquid_Boundaries_File - Fichier_Des_Frontieres_Liquides - - - Sections_Output_File - Fichier_De_Sortie_Des_Sections_De_Controle - - - Number_Of_Private_Arrays - Nombre_De_Tableaux_Prives - - - Coefficient_Of_Wind_Influence - Coefficient_D'influence_Du_Vent - - - Depth_In_Friction_Terms - Hauteur_Dans_Les_Termes_De_Frottement - - - Coefficient_To_Calibrate_Sea_Level - Coefficient_De_Calage_Du_Niveau_De_Mer - - - Variables_To_Be_Printed - Variables_A_Imprimer - - - Preconditioning - Preconditionnement - - - Cost_Function - Fonction_Cout - - - Type_Of_Sources - Type_Des_Sources - - - Tidal_Flats - Bancs_Decouvrants - - - Ascii_Database_For_Tide - Base_Ascii_De_Donnees_De_Maree - - - Original_Date_Of_Time - Date_De_L'origine_Des_Temps - - - Mean_Temperature - Temperature_Moyenne - - - Initial_Elevation - Cote_Initiale - - - Tubes_Data_File - Fichier_De_Donnees_Des_Buses - - - Boundary_Conditions_File - Fichier_Des_Conditions_Aux_Limites - - - Breach - Breche - - - Treatment_Of_The_Linear_System - Traitement_Du_Systeme_Lineaire - - - Prescribed_Elevations - Cotes_Imposees - - - List_Of_Points - Liste_De_Points - - - Listing_Printout_Period - Periode_Pour_Les_Sorties_Listing - - - Initial_Guess_For_H - Ordre_Du_Tir_Initial_Pour_H - - - Geometry_File_Format - Format_Du_Fichier_De_Geometrie - - - Coefficient_1_For_Law_Of_Tracers_Degradation - Coefficient_1_De_La_Loi_De_Degradation_Des_Traceurs - - - Number_Of_Lagrangian_Drifts - Nombre_De_Derives_Lagrangiennes - - - Weirs_Data_File - Fichier_De_Donnees_Des_Seuils - - - Rain_Or_Evaporation_In_Mm_Per_Day - Pluie_Ou_Evaporation_En_Mm_Par_Jour - - - Minor_Constituents_Inference - Interpolation_De_Composantes_Mineures - - - Maximum_Number_Of_Friction_Domains - Nombre_Maximum_De_Domaines_De_Frottement - - - Elements_Masked_By_User - Elements_Masques_Par_L'utilisateur - - - Control_Sections - Sections_De_Controle - - - Number_Of_Time_Steps - Nombre_De_Pas_De_Temps - - - Solver_Accuracy - Precision_Du_Solveur - - - Wave_Driven_Currents - Courants_De_Houle - - - Number_Of_Culverts - Nombre_De_Siphons - - - Equations - Equations - - - Maximum_Number_Of_Iterations_For_Identification - Maximum_D'iterations_Pour_L'identification - - - Coefficient_For_Diffusion_Of_Tracers - Coefficient_De_Diffusion_Des_Traceurs - - - Option_For_The_Diffusion_Of_Velocities - Option_Pour_La_Diffusion_Des_Vitesses - - - Coefficient_To_Calibrate_Tidal_Range - Coefficient_De_Calage_Du_Marnage - - - Binary_Data_File_1 - Fichier_De_Donnees_Binaire_1 - - - Binary_Data_File_2 - Fichier_De_Donnees_Binaire_2 - - - Solver - Solveur - - - Implicitation_For_Velocity - Implicitation_Pour_La_Vitesse - - - Longitude_Of_Origin_Point - Longitude_Du_Point_Origine - - - Original_Hour_Of_Time - Heure_De_L'origine_Des_Temps - - - Law_Of_Friction_On_Lateral_Boundaries - Loi_De_Frottement_Sur_Les_Parois_Laterales - - - Propagation - Propagation - - - Solver_For_Diffusion_Of_Tracers - Solveur_Pour_La_Diffusion_Des_Traceurs - - - Discretizations_In_Space - Discretisations_En_Espace - - - Solver_Option - Option_Du_Solveur - - - Advection_Of_H - Convection_De_H - - - Output_Of_Initial_Conditions - Sortie_Des_Conditions_Initiales - - - Record_Number_For_Restart - Enregistrement_Pour_Suite_De_Calcul - - - Accuracy_For_Diffusion_Of_Tracers - Precision_Pour_La_Diffusion_Des_Traceurs - - - Initial_Guess_For_U - Ordre_Du_Tir_Initial_Pour_U - - - Advection_Of_K_And_Epsilon - Convection_De_K_Et_Epsilon - - - Identification_Method - Methode_D'identification - - - Names_Of_Points - Noms_Des_Points - - - Zone_Number_In_Geographic_System - Numero_De_Fuseau_Ou_Projection_Dans_Le_Systeme_Geographique - - - Matrix_Storage - Stockage_Des_Matrices - - - Algae_Type - Type_Des_Algues - - - Water_Density - Masse_Volumique_De_L'eau - - - Newmark_Time_Integration_Coefficient - Coefficient_D'integration_En_Temps_De_Newmark - - - Friction_Data_File - Fichier_De_Donnees_Pour_Le_Frottement - - - Implicitation_For_Diffusion_Of_Velocity - Implicitation_Pour_La_Diffusion_Des_Vitesses - - - Limit_Values - Valeurs_Limites - - - Advection - Convection - - - Geographic_System - Systeme_Geographique - - - Results_File - Fichier_Des_Resultats - - - Algae_Transport_Model - Modele_De_Transport_Des_Algues - - - Treatment_Of_Negative_Depths - Traitement_Des_Hauteurs_Negatives - - - Ordinates_Of_Sources - Ordonnees_Des_Sources - - - Coriolis_Coefficient - Coefficient_De_Coriolis - - - Water_Discharge_Of_Sources - Debits_Des_Sources - - - Advection_Of_U_And_V - Convection_De_U_Et_V - - - Latitude_Of_Origin_Point - Latitude_Du_Point_Origine - - - Binary_Database_1_For_Tide - Base_Binaire_1_De_Donnees_De_Maree - - - Coriolis - Coriolis - - - Desired_Courant_Number - Nombre_De_Courant_Souhaite - - - Variables_For_Graphic_Printouts - Variables_Pour_Les_Sorties_Graphiques - - - Time_Range_For_Fourier_Analysis - Bornes_En_Temps_Pour_L'analyse_De_Fourier - - - Graphic_Printout_Period - Periode_Pour_Les_Sorties_Graphiques - - - Tide_Generating_Force - Force_Generatrice_De_La_Maree - - - Preconditioning_For_Diffusion_Of_Tracers - Preconditionnement_Pour_La_Diffusion_Des_Traceurs - - - Number_Of_Tubes - Nombre_De_Buses - - - Vertical_Structures - Structures_Verticales - - - Stop_If_A_Steady_State_Is_Reached - Arret_Si_Un_Etat_Permanent_Est_Atteint - - - Number_Of_Weirs - Nombre_De_Seuils - - - Listing_Printout - Sortie_Listing - - - Previous_Computation_File - Fichier_Du_Calcul_Precedent - - - Fortran_File - Fichier_Fortran - - - Sections_Input_File - Fichier_Des_Sections_De_Controle - - - Binary_Database_2_For_Tide - Base_Binaire_2_De_Donnees_De_Maree - - - Results_File_Format - Format_Du_Fichier_Des_Resultats - - - Accuracy_Of_K - Precision_Sur_K - - - Tidal_Model_File - Fichier_Du_Modele_De_Maree - - - Fourier_Analysis_Periods - Periodes_D'analyse_De_Fourier - - - H_Clipping - Clipping_De_H - - - Tolerances_For_Identification - Precisions_Pour_L'identification - - - Previous_Computation_File_Format - Format_Du_Fichier_Du_Calcul_Precedent - - - Prescribed_Flowrates - Debits_Imposes - - - Bottom_Topography_File - Fichier_Des_Fonds - - - Implicitation_For_Depth - Implicitation_Pour_La_Hauteur - - - Reference_File_Format - Format_Du_Fichier_De_Reference - - - Diffusion_Of_Tracers - Diffusion_Des_Traceurs - - - Formatted_Data_File_1 - Fichier_De_Donnees_Formate_1 - - - Formatted_Data_File_2 - Fichier_De_Donnees_Formate_2 - - - Computation_Continued - Suite_De_Calcul - - - Breaches_Data_File - Fichier_De_Donnees_Des_Breches - - - Diffusion_Of_Velocity - Diffusion_Des_Vitesses - - - Type_Of_Advection - Forme_De_La_Convection - - - Solver_Option_For_Tracers_Diffusion - Option_Du_Solveur_Pour_La_Diffusion_Des_Traceurs - - - Advection_Of_Tracers - Convection_Des_Traceurs - - - Printout_Period_For_Drogues - Periode_Pour_Les_Sorties_De_Flotteurs - - - Option_For_The_Treatment_Of_Tidal_Flats - Option_De_Traitement_Des_Bancs_Decouvrants - - - Physical_Characteristics_Of_The_Tsunami - Parametres_Physiques_Du_Tsunami - - - Maximum_Number_Of_Iterations_For_K_And_Epsilon - Maximum_D'iterations_Pour_K_Et_Epsilon - - - Tidal_Data_Base - Base_De_Donnees_De_Maree - - - Maximum_Number_Of_Iterations_For_Solver - Maximum_D'iterations_Pour_Le_Solveur - - - Number_Of_Tracers - Nombre_De_Traceurs - - - Threshold_Depth_For_Wind - Profondeur_Limite_Pour_Le_Vent - - - Gravity_Acceleration - Acceleration_De_La_Pesanteur - - - Option_For_Characteristics - Option_Pour_Les_Caracteristiques - - - Spacing_Of_Roughness_Elements - Espacement_Des_Elements_De_Frottement - - - Parallel_Processors - Processeurs_Paralleles - - - Harmonic_Constants_File - Fichier_Des_Constantes_Harmoniques - - - Spherical_Coordinates - Coordonnees_Spheriques - - - Parameter_Estimation - Estimation_De_Parametre - - - Linearized_Propagation - Propagation_Linearisee - - - Accuracy_Of_Epsilon - Precision_Sur_Epsilon - - - Diameter_Of_Roughness_Elements - Diametre_Des_Elements_De_Frottement - - - Number_Of_First_Time_Step_For_Graphic_Printouts - Numero_Du_Premier_Pas_De_Temps_Pour_Les_Sorties_Graphiques - - - Threshold_For_Negative_Depths - Seuil_Pour_Les_Profondeurs_Negatives - - - Wind_Velocity_Along_X - Vitesse_Du_Vent_Suivant_X - - - Wind_Velocity_Along_Y - Vitesse_Du_Vent_Suivant_Y - - - Information_About_Solver - Informations_Sur_Le_Solveur - - - Initial_Conditions - Conditions_Initiales - - - Culvert_Data_File - Fichier_De_Donnees_Des_Siphons - - - Maximum_Number_Of_Iterations_For_Advection_Schemes - Maximum_D'iterations_Pour_Les_Schemas_De_Convection - - - Turbulence_Model_For_Solid_Boundaries - Regime_De_Turbulence_Pour_Les_Parois - - - Continuity_Correction - Correction_De_Continuite - - - Law_Of_Bottom_Friction - Loi_De_Frottement_Sur_Le_Fond - - - Option_For_Tsunami_Generation - Option_Pour_La_Generation_De_Tsunami - - - Type_Of_Weirs - Type_Des_Seuils - - - Record_Number_In_Wave_File - Numero_De_L'enregistrement_Dans_Le_Fichier_De_Houle - - - Abscissae_Of_Sources - Abscisses_Des_Sources - - - Values_Of_The_Tracers_At_The_Sources - Valeurs_Des_Traceurs_Des_Sources - - - Treatment_Of_Fluxes_At_The_Boundaries - Traitement_Des_Flux_Aux_Frontieres - - - Printing_Cumulated_Flowrates - Impression_Du_Cumul_Des_Flux - - - Compatible_Computation_Of_Fluxes - Calcul_Compatible_Des_Flux - - - Bottom_Smoothings - Lissages_Du_Fond - - - Initial_Depth - Hauteur_Initiale - - - Minimum_Value_Of_Depth - Valeur_Minimum_De_H - - - Option_For_The_Diffusion_Of_Tracers - Option_Pour_La_Diffusion_Des_Traceurs - - - Duration - Duree_Du_Calcul - - - Stop_Criteria - Criteres_D'arret - - - Prescribed_Velocities - Vitesses_Imposees - - - Initial_Values_Of_Tracers - Valeurs_Initiales_Des_Traceurs - - - Reference_File - Fichier_De_Reference - - - - lecture du fichier impossible : - unable to read file - - - - Impossible d'ouvrir le fichier %s - unable to read file - - - - Format de sortie : %s, non supporte - - - - - Impossible d'ouvrir le fichier : %s - - - - - Erreur a l'evaluation : - %s - - - - - Erreur ! Erreur ! - - - - - Erreur rencontree dans recherche_enfants : %s - - - - - Erreur dans la creation du mot-cle : %s - - - - - Impossible d'ouvrir le fichier : %s - - - - - le texte a analyser n'est pas celui d'une commande ou d'un operateur : - - - - - Erreur dans la recherche du nom de la commande : - - - - - Erreur dans la recherche des args de la commande : - - - - - Erreur dans la recherche du nom de la commande : - - - - - Erreur dans la recherche des args de la commande : - - - - - %d n'est pas un index valide pour append_brother - - - - - le fichier de commandes %s n'existe pas - - - - - un fichier de commandes doit etre defini avant une poursuite %s - - - - - le fichier poursuite %s n'existe pas - - - - - include mal defini %s - - - - - un fichier de commandes doit etre defini avant un include %s - - - - - le fichier include %s n'existe pas - - - - - le fichier jdc %s n'existe pas - - - - - jdc %s manque option jdc dans section jdc - - - - - %(v_1)s include %(v_2)s : %(v_3)s - v_1 - - - - - %(v_1)s fichier poursuite: %(v_2)s - v_1 - - - - - nom etude : %s - - - - - utilisation : %prog [options] - - - - - nom du fichier de commandes - - - - - nom du fichier poursuite - - - - - numero d'unite suivi du nom du fichier include - - - - - fichier decrivant une etude - - - - - version de catalogue a utiliser - - - - - nom du code a utiliser - - - - - niveau de debug - - - - - schema - - - - - localisation de l'application, pour la traduction - - - - - Nombre incorrect d'arguments - - - - - Localisation specifiee pour l'application. - - - - - Un fichier de nom %s existe deja : impossible de creer un repertoire de meme nom - - - - - Creation du repertoire %s impossible - Verifiez vos droits d'acces - - - - - Impossible de transferer les fichiers requis dans : %s - - - - - Erreur - - - - - Erreurs fatales - - - - - Impossible reconstruire commande - - - - - - Objet commentaire non valorise - - - - - Debut Fonction %s - - - - - Fin Fonction %s - - - - - Nom de concept deja defini : %s - - - - - Longueur incorrecte - - - - - L'attribut 'min' doit etre un entier : - - - - - L'attribut 'max' doit etre un entier : - - - - - Nombres d'occurrence min et max invalides : - - - - - L'attribut 'fr' doit etre une chaine de caracteres - - - - - L'attribut 'statut' doit valoir 'o','f','c' ou 'd' - - - - - L'attribut 'docu' doit etre une chaine de caracteres - - - - - Fin - - - - - Le parametre EVAL %s ne peut valoir None - - - - - Le parametre EVAL ne peut valoir None - - - - - Pas de nom donne au parametre EVAL - - - - - Un nom de parametre ne peut depasser 8 caracteres - - - - - ERREUR - - - - - Format pas implemente : %s - - - - - Type d'objet non prevu : %s - - - - - ce groupe de maillage %s est associe a au moins un materiau et au moins une source. - - - - - ce groupe de maillage %s n'est associe a aucun materiau ou source. - - - - - ATTENTION! Une source constante n'est possible qu'a frequence nulle en regime frequentiel - - - - - ERREUR! ce groupe de maille (%s) n'a pas de prefixe valable - - - - - ERREUR! ce type de bloc (%s) n'est pas valable - - - - - toutes les donnees ne sont pas connues - - - - - Fichier patron %s n'existe pas. - - - - - Pas supporte - - - - - Entite inconnue ou interdite :%s - - - - - Entite inconnue ou interdite :%s. Elle est ignoree - - - - - Les tuples ne sont pas supportes pour le format ini :%s - - - - - Type de valeur non supportee par le format ini :%(nom)s -%(exception)s - nom - - - - - Il y a un pb a la Creation du XML - - - - - Il y a un pb a la Creation du STD - - - - - Entite inconnue ou interdite : %s. Elle est ignoree - - - - - Type de valeur non supporte par le format pyth : n %(exception)s - nom - - - - - Tag %s non-defini. Ceci est un bogue interne. en informer les developpeurs. - - - - - Le mot-cle %s est obligatoire. - - - - - concept %(inst_name)s de type %(class_name)s - inst_name - - - - - Un nom de concept doit etre un identificateur Python - - - - - Concept existant - - - - - Operateur reentrant mais concept non existant - - - - - Operateur reentrant et concept existant trouve - - - - - Concept deja existant et de mauvais type - - - - - Nommage du concept refuse : un concept de meme nom existe deja - - - - - Nommage du concept effectue - - - - - Nommage impossible %s - - - - - La liste des arguments d'une formule doit etre entre parentheses : parenthese ouvrante manquante - - - - - La liste des arguments d'une formule doit etre entre parentheses : parenthese fermante manquante - - - - - Pas de nom donne a la FORMULE - - - - - Un nom de FORMULE ne peut depasser 8 caracteres - - - - - Un nom de FORMULE ne peut pas commencer par un chiffre - - - - - Le type de la valeur retournee n'est pas specifie - - - - - Une formule ne peut retourner une valeur de type : %s - - - - - Impossible d'ajouter la commande - - - - - Impossible d ajouter la commande - - - - - Pas implemente - - - - - Nom de concept deja defini - - - - - Nom de concept deja defini : - - - - - Impossible de trouver le fichier correspondant a l'unite - - - - - n'est pas un fichier existant - - - - - Fichier invalide %s - - - - - Impossible de construire le jeu de commandes correspondant au fichier - - - - - Erreur lors de l'evaluation du fichier inclus - - - - - Ce fichier ne sera pas pris en compte - %s - - - - - Ce fichier ne sera pas pris en compte -Le fichier associe n'est pas defini - - - - - Le fichier n est pas defini - - - - - le fichier doit contenir une unique variable de sortie - - - - - Fichier invalide - - - - - Le contenu de ce fichier ne sera pas pris en compte - %s - - - - - Le fichier INCLUDE n est pas defini - - - - - Le contenu de ce fichier ne sera pas pris en compte - - - - - - Erreur lors de l'evaluation du fichier poursuite - - - - - L'objet %(v_1)s ne peut etre un fils de %(v_2)s - v_1 - - - - - L'objet %s ne peut pas etre repete - - - - - Erreur - mclist inexistante : %s - - - - - Erreur - mot cle facteur de nom : %s - - - - - traitement non-prevu - - - - - L'objet %s ne peut pas etre ajoute - - - - - None n'est pas une valeur autorisee - - - - - un concept de meme nom existe deja - - - - - Concept cree - - - - - La matrice n'est pas une matrice %(n_lign)d sur %(n_col)d - n_lign - - - - - Impossible de relire le fichier %s - - - - - - Le fichier include contient des erreurs - - - - - n'est pas un index valide pour append_brother - - - - - Decommenter - - - - - Decommente la commande - - - - - Impossible de supprimer un mot-cle obligatoire - - - - - Mot-cle %s supprime - - - - - Pb interne : impossible de supprimer ce mot-cle - - - - - Commentaire supprime - - - - - Commande %s supprimee - - - - - Pb interne : impossible de supprimer cet objet - - - - - Le fichier de commande n'a pas pu etre converti pour etre editable par Eficas - - - - - - - Include vide - - - - - L'include doit etre correctement initialise pour etre visualise - - - - - Impossible de supprimer ce mot-clef - - - - - View3D - - - - - affiche dans Geom les elements de structure - - - - - Graphique - - - - - affiche la distribution - - - - - Erreur interne - - - - - La PDF de la loi ne peut pas etre affichee. - - - - - &Annuler - - - - - Impossible de supprimer un mot-clef obligatoire - - - - - Mot-clef %s supprime - - - - - Pb interne : impossible de supprimer ce mot-clef - - - - - Definition d'un parametre - - - - - Import du fichier de Configuration - - - - - Erreur a la lecture du fichier de configuration %s - - - - - Erreur fatale au chargement de %s - - - - - Erreur fatale au chargement d'un fichier - - - - - fichier modifie - - - - - Attention! fichier change hors EFICAS - - - - - Type de fichier non reconnu - - - - - EFICAS ne sait pas ouvrir le type de fichier %s - - - - - EFICAS ne sait pas ouvrir ce type de fichier - - - - - Copie impossible - - - - - Veuillez selectionner un objet a copier - - - - - Veuillez selectionner un seul objet : la copie se fera apres le noeud selectionne - - - - - Aucun Objet n a ete copie ou coupe - - - - - Copie refusee - - - - - Eficas n a pas reussi a copier l objet - - - - - Copie refusee pour ce type d objet - - - - - Deplacement refuse - - - - - Deplacement refuse entre 2 fichiers. Seule la copie est autorisee - - - - - Copie impossible a cet endroit - - - - - Veuillez selectionner une commande, un parametre, un commentaire ou une macro - - - - - Choix d'un fichier XML - - - - - Le fichier contient une commande MODEL - - - - - - Donnez le nom du fichier XML qui contient la description des variables - - - - - Ouvrir Fichier - - - - - Erreur a la generation - - - - - EFICAS ne sait pas convertir ce JDC - - - - - Format %s non reconnu - - - - - EFICAS ne sait pas convertir le JDC selon le format - - - - - Execution impossible - - - - - le JDC doit etre valide pour une execution MAP - - - - - le JDC doit contenir un et un seul composant - - - - - le JDC doit etre valide pour une execution - - - - - Sauvegarder SVP avant l'execution - - - - - sauvegarde - - - - - Sauvegarde du Fichier - - - - - Le fichier <b>%s</b> existe deja. - - - - - &Ecraser - - - - - Sauvegarde de l'input impossible - - - - - Un JdC valide est necessaire pour creer un .input - - - - - Choix du composant obligatoire - - - - - Choix unite %d - - - - - Le fichier %s contient une commande INCLUDE - - - - - - Donnez le nom du fichier correspondant a l unite logique - - - - - Fichier pour unite - - - - - Choix d'un fichier de poursuite - - - - - Le fichier %s contient une commande POURSUITE - - - - - - Donnez le nom du fichier dont vous - voulez faire une poursuite - - - - - Fichiers Med (*.med);;Tous les Fichiers (*) - - - - - Fichier Med - - - - - Veuillez selectionner un fichier Med - - - - - reel - - - - - entier - - - - - complexe - - - - - Entrez - - - - - Entrez entre - - - - - et - - - - - Type de base inconnu - - - - - Aide Indisponible - - - - - l'aide n est pas installee - - - - - Visualisation Fichier - - - - - Impossibilite d'afficher le Fichier - - - - - Sauvegarder Fichier - - - - - Fichier selectionne - - - - - Selection - - - - - Export Med vers Fichier - - - - - Impossibilite d exporter le Fichier - - - - - Traduire Fichier - - - - - Fichiers JDC (*.comm);;Tous les Fichiers (*) - - - - - Fichier Traduit : %s - - - - - - - Pas de difference entre le fichier origine et le fichier traduit - - - - - objet valide - - - - - %d versions du catalogue sont disponibles - - - - - Sauvegarder le fichier - - - - - Le fichier <b>%(v_1)s</b> n'a pu etre sauvegarde. <br>Raison : %(v_2)s - v_1 - - - - - Options pour - - - - - - valeurs - - - - - Nombre minimal de valeurs : - - - - - Nombre maximal de valeurs : - - - - - expression valide - - - - - expression invalide - - - - - l expression n est pas de la forme a+bj - - - - - expression n est pas de la forme a+bj - - - - - entrer une seule valeur SVP - - - - - saisir le type de complexe - - - - - Valeur du mot-cle enregistree - - - - - Valeur du mot-cle non autorisee - - - - - &Recents - - - - - Aide specifique - - - - - Options - - - - - Traduction - - - - - TraduitV7V8 - - - - - TraduitV8V9 - - - - - TraduitV9V10 - - - - - Acquiert Groupe Maille - - - - - Specificites Maille - - - - - version - - - - - pour - - - - - Parametrage - - - - - Veuillez d abord choisir un code - - - - - Pas de possibilite de personnalisation de la configuration - - - - - &Effacer - - - - - Veuillez entrer le complexe sous forme aster ou sous forme python - - - - - Import du catalogue - - - - - Pas de catalogue defini pour le code - - - - - Aucun catalogue trouve - - - - - Impossible d'importer le catalogue - - - - - avec le catalogue - - - - - Choix d une version du code - - - - - Choix d une version - - - - - Parametre - - - - - Insere un parametre - - - - - item invalide - - - - - l item doit etre valide - - - - - &Ok - &Ok - - - - apres - - - - - Insere un commentaire apres la commande - - - - - avant - - - - - Insere un commentaire avant la commande - - - - - Insere un parametre apres la commande - - - - - Insere un parametre avant la commande - - - - - Supprimer - - - - - supprime le mot clef - - - - - Documentation - - - - - documentation sur la commande - - - - - Documentation Vide - - - - - Aucune documentation n'est associee a ce noeud - - - - - impossible de trouver la commande - - - - - Lecteur PDF - - - - - impossible d'ouvrir - - - - - Commentaire - - - - - ce noeud - - - - - commente le noeud - - - - - Fichiers JDC (*.comm);;Tous les Fichiers (*) - - - - - &Quitter - - - - - Quitter - - - - - Fichier Duplique - - - - - Le fichier ne sera pas sauvegarde. - - - - - Fichier - - - - - Le fichier <b>%s</b> est deja ouvert. - - - - - &Duplication - - - - - &Abort - - - - - Fichier Modifie - - - - - Le fichier %s n a pas ete sauvegarde. - - - - - &Sauvegarder - - - - - SOURCE - - - - - EnveloppeConnexeInducteur - - - - - EnveloppeConnexe2 - - - - - VecteurDirecteur - - - - - Centre - - - - - SectionBobine - - - - - Amplitude - - - - - NbdeTours - - - - - CONDUCTEUR - - - - - Conductivite - - - - - PermeabiliteRelative - - - - - NOCOND - - - - - VCUT - - - - - Orientation - - - - - ZS - - - - - PARAMETRES - - - - - RepCarmel - - - - - TypedeFormule - - - - - Frequence - - - - - Nb_Max_Iterations - - - - - Erreur_Max - - - - - PARAMETRE - - - - - Valeur non modifiable - - - - - Format non implemente - - - - - Type d'objet non prevu - - - - - Select - - - - - Sauve Format Ligne - - - - - %s n'est pas un fichier valide - - - - - Fichier de donnees - - - - - Tous les Fichiers (*) - - - - - nb min de valeurs : - - - - - nb max de valeurs atteint - - - - - TraduitV10V11 - - - - - TraduitV11V12 - - - - - Valeur du mot-clef enregistree - - - - - Valeur du mot-clef non autorisee : - - - - - Un concept de nom %s existe déjà ! - - - - - La cardinalite n'est pas correcte, la derniere valeur est ignoree - - - - - n est pas un tuple de - - - - - valeurs - - - - - Valeur incorrecte - - - - - n est pas un identifiant correct - - - - - - Entrer un float SVP - - - - - Entrer un float inferieur a - - - - - Entrer un float superieur a - - - - - Mauvaise execution - - - - - impossible d executer la methode - - - - - Mauvaise Commande - - - - - Aucune variable connue - - - - - Mauvaise dimension de matrice - - - - - le nombre de ligne n est pas egal a - - - - - le nombre de colonne n est pas egal a - - - - - Mauvaise Valeur - - - - - l element - - - - - n est pas correct - - - - - Modification Impossible - - - - - le parametre n'est pas valide - - - - - n est pas un identifiant correct - - - - - Valeur incorrecte: - - - - - Valeur incorrecte - - - - - Valeur correcte - - - - - impossible d'evaluer : - - - - - La formule passee a l'interpreteur doit etre sous forme de tuple - - - - - Debut - - - - - Pas de nom donne au parametre - - - - - Le parametre %s ne peut valoir None - - - - - Format non implemente : %s - - - - - Impossible de realiser la verification de la formule - - - - - Un concept de nom %s existe deja ! - - - - - existe deja - - - - - - Fichier non encore nomme - - - - - La matrice n'a pas le bon entete - - - - - le mot clef - - - - - doit etre insere avant - - - - - insertion impossible - - - - - doit etre insere apres - - - - - Nb maximum de valeurs atteint - - - - - pas de regle de construction pour ce jeu de commandes - - - - - Gestion Maillage - - - - - Acquiert groupe mailles - - - - - Acquisition Groupe Maille - - - - - VERSION - - - - - NUM - - - - - FILETYPE - - - - - PARAMETERS - - - - - Fichier_maillage - - - - - Echelle_du_maillage - - - - - Formulation - - - - - Timeproblem - - - - - spectral - - - - - Basis - - - - - Fourier - - - - - Ordre - - - - - FREQUENCY - - - - - minimisation - - - - - no - - - - - yes - - - - - nb_procs_para - - - - - POLYMER - - - - - MODEL_DATABASE - - - - - Stabilise - - - - - Non Stabilise - - - - - Local - - - - - ESSAI_OPTION - - - - - MATERIEL - - - - - Cable - - - - - Peinture - - - - - Tuyauterie - - - - - Materiau_De_Cable - - - - - PE - - - - - EPDM - - - - - Modele - - - - - Impossible de convertir le fichier Python qui doit contenir des erreurs. - - On retourne le fichier non converti. Prevenir la maintenance. - - %s - - - - - Eficas ne peut pas traiter plusieurs instructions - sur la meme ligne : %s - - - - - le texte a analyser n'est pas celui d'une commande ou - d'un operateur : %s - - - - - le texte a analyser n'est pas celui d'une commande connue : - %(v_1)s %(v_2)s - v_1 - - - - - le texte a analyser n'est pas celui d'une commande connue : - %(v_1)s %(v_2)s - v_1 - - - - - jdc %(v_1)s manque - fichier comm dans section %(v_2)s - v_1 - - - - - jdc %(v_1)s, le fichier - de commandes %(v_2)s n'existe pas - v_1 - - - - - jdc %(v_1)s - fichier include %(v_2)s, %(v_3)s - n'existe pas - v_1 - - - - - jdc %(v_1)s manque fichier comm - dans section %(v_2)s - v_1 - - - - - jdc %(v_1)s, le fichier de commandes - %(v_2)s n'existe pas - v_1 - - - - - Objet commande commentarisé invalide - - - - - ATTENTION! Une source constante - n'est possible qu'a frequence nulle - en regime frequentiel - - - - - ERREUR! Une forme de la source du - type WAVEFORM_CONSTANT ou WAVEFORM_SINUS est attendue. - - - - - ATTENTION! Une source constante n'est - possible qu'a frequence nulle en regime frequentiel - - - - - ERREUR! Une forme de la source du type - WAVEFORM_CONSTANT ou WAVEFORM_SINUS est attendue. - - - - - ERREUR! ce groupe de maille (%s) n'a pas de prefixe - indiquant le type de materiau ou de source associee - - - - - ERREUR! ce groupe de maille (%(nom)s) n'a pas - le prefixe correct pour etre associe a un type %(type_bloc)s - nom - - - - - - Include Invalide. - ne sera pas pris en compte - - - - - : verifie les types dans un tuple - - - - - Les types entres ne sont pas permis - - - - - ChoixCode - - - Choix du code - - - - - Veuillez choisir un code : - - - - - &Cancel - - - - - Validate choice - - - - - &OK - - - - - ChoixCommandes - - - DMacro - - - - - <html><head/><body><p align="center"><span style=" text-decoration: underline;">Affichage</span></p></body></html> - - - - - affiche les commandes par ordre alphabetique - - - - - Alphabetique - - - - - affiche les commandes selon les thèmes - - - - - Ordre de la modélisation - - - - - Par Groupe - - - - - <html><head/><body><p align="center">Filtre Commande</p></body></html> - - - - - filter commands - - - - - affiche les régles de validité - - - - - ... - - - - - Règles de construction - - - - - Sensible à la casse - - - - - Effacer - - - - - selectionne les mots qui CONTIENNENT l expression - - - - - ré-affiche toutes les commandes - - - - - DChoixCata - - - Choix d'une version du code Aster - - - - - <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> -<html><head><meta name="qrichtext" content="1" /><style type="text/css"> -p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal;"> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:11pt;">2 versions sont disponibles</span></p></body></html> - - - - - &Cancel - - - - - Validate choice - - - - - &OK - - - - - DSelVal - - - Sélection de valeurs - - - - - Separateur - - - - - espace - - - - - virgule - - - - - point-virgule - - - - - Ajouter Selection - - - - - Importer Tout - - - - - DVisu - - - Visualisation Include Materiau - - - - - Eficas - - - MainWindow - - - - - &Fichier - - - - - &Aide - - - - - toolBar - - - - - &Nouveau - ME VOILA - - - - Ctrl+N - - - - - Nouvel Include - - - - - &Ouvrir - - - - - Ctrl+O - - - - - Enregistrer - - - - - Enregistrer sous - - - - - Fermer - - - - - Ctrl+W - - - - - Fermer tout - - - - - Couper - - - - - Ctrl+X - - - - - Copier - - - - - Ctrl+C - - - - - Coller - - - - - Ctrl+V - - - - - Quitter - - - - - Ctrl+Q - - - - - Rapport de Validation - - - - - Fichier Source - - - - - Fichier Résultat - - - - - Parametres Eficas - - - - - Lecteur documentation - - - - - Eficas - - - - - Version - - - - - Supprimer - - - - - Rechercher - - - - - Rechercher dans l'arbre d'etude - - - - - Ctrl+F - - - - - Replier/Deplier - - - - - Tab 1 - - - - - &Edition - - - - - &JeuDeDonnées - - - - - Shift+I - - - - - Ctrl+S - - - - - Ctrl+Shift+S - - - - - Shift+V - - - - - Chercher Mot-Clef - - - - - Rechercher dans le catalogue - - - - - Shift+F - - - - - Shift+D - - - - - Commentaire - - - - - Shift+C - - - - - Paramètres - - - - - Gestion des paramètres - - - - - Shift+P - - - - - Parametre Eficas - - - - - Execution - - - - - Execution - - - - - Save Run - - - - - Patrons - - - - - Run - - - - - &bad - - - - - Régles du JdC - - - - - JDCEditor - - - Save File - - - - - The file <b>%1</b> could not be saved.<br>Reason: %2 - - - - - JDC (*.comm);;All Files (*) - - - - - &Abandonner - &Abandonner - - - - Tuple2 - - - Form - - - - - <html><head/><body><p><span style=" font-size:14pt;">(</span></p></body></html> - - - - - <html><head/><body><p><span style=" font-size:14pt;">,</span></p></body></html> - - - - - <html><head/><body><p><span style=" font-size:14pt;">)</span></p></body></html> - - - - - Tuple3 - - - Form - - - - - <html><head/><body><p><span style=" font-size:14pt;">(</span></p></body></html> - - - - - <html><head/><body><p><span style=" font-size:14pt;">,</span></p></body></html> - - - - - <html><head/><body><p><span style=" font-size:14pt;">)</span></p></body></html> - - - - - Widget4a6RadioButton - - - Form - - - - - Affiche le rapport de validation du mot-clef - - - - - ... - - - - - <html><head/><body><p>aaa</p><p>dqsklmdqm</p></body></html> - - - - - RadioButton - - - - - Détruit le mot-clef - - - - - WidgetBloc - - - Form - - - - - WidgetCB - - - Form - - - - - Affiche le rapport de validation du mot-clef - - - - - ... - - - - - <html><head/><body><p>aaa</p><p>dqsklmdqm</p></body></html> - - - - - Détruit le mot-clef - - - - - WidgetCommande - - - DCommandeUnique - - - - - Affiche le rapport de validité de la commande - - - - - ... - - - - - <html><head/><body><p><span style=" color:#0000ff;">commande </span></p></body></html> - - - - - Nom de l'objet. Seuls, les objets valides peuvent être nommés - - - - - Lance un script associé à la commande - - - - - ouvre un navigateur sur l'aide contextuelle - - - - - affiche les régles de validité - - - - - Détruit la commande - - - - - Affiche les commandes possibles - - - - - &Commandes - - - - - Shift+A, Alt+A, Alt+A, Alt+A - - - - - Affiche le formulaire de la commande précédente - - - - - << - - - - - Affiche le formulaire de la commande suivante - - - - - >> - - - - - TextLabel - - - - - WidgetCommentaire - - - DCommandeUnique - - - - - ... - - - - - <html><head/><body><p><span style=" color:#0000ff;">Commentaire</span></p></body></html> - - - - - Détruit le commentaire - - - - - Affiche les commandes possibles - - - - - &Commandes - - - - - Shift+A, Alt+A, Alt+A, Alt+A - - - - - Affiche le formulaire de la commande précédente - - - - - << - - - - - Affiche le formulaire de la commande suivante - - - - - >> - - - - - WidgetDate - - - Form - - - - - Affiche le rapport de validation du mot-clef - - - - - ... - - - - - <html><head/><body><p>aaa</p><p>dqsklmdqm</p></body></html> - - - - - Détruit le mot-clef - - - - - WidgetFact - - - Form - - - - - ... - - - - - <html><head/><body><p><span style=" font-style:italic;">TextLabel</span></p></body></html> - - - - - WidgetFactPlie - - - Form - - - - - ... - - - - - TextLabel - - - - - WidgetHeure - - - Form - - - - - Affiche le rapport de validation du mot-clef - - - - - ... - - - - - <html><head/><body><p>aaa</p><p>dqsklmdqm</p></body></html> - - - - - <html><head/><body><p><br/></p></body></html> - - - - - Détruit le mot-clef - - - - - WidgetInformative - - - Form - - - - - WidgetOptionnel - - - WidgetOptionnel - - - - - <html><head/><body><p><span style=" color:#0000ff;">commande </span></p></body></html> - - - - - WidgetParam - - - DCommandeUnique - - - - - ... - - - - - <html><head/><body><p><span style=" color:#000000;">Paramètre</span></p></body></html> - - - - - Détruit le commentaire - - - - - Affiche les commandes possibles - - - - - &Commandes - - - - - Shift+A, Alt+A, Alt+A, Alt+A - - - - - Affiche le formulaire de la commande précédente - - - - - << - - - - - Affiche le formulaire de la commande suivante - - - - - >> - - - - - <html><head/><body><p>Valeur: </p></body></html> - - - - - <html><head/><body><p>Nom: </p></body></html> - - - - - Verifie la valeur - - - - - <html><head/><body><p><br/></p></body></html> - - - - - WidgetPlusieursBase - - - Form - - - - - Affiche le rapport de validation du mot-clef - - - - - ... - - - - - <html><head/><body><p>aaa</p><p>dqsklmdqm</p></body></html> - - - - - Remonte la ligne - - - - - Descend la ligne - - - - - supprime une ligne - - - - - Ajoute une ligne - - - - - Montre l'ensemble des valeurs - - - - - Sélectionne depuis Salome - - - - - Visualise dans Salome - - - - - Ouvre un fichier de sélection des valeurs - - - - - Détruit le mot-clef - - - - - permet de gérer la liste - - - - - TextLabel - - - - - WidgetPlusieursInto - - - Form - - - - - Affiche le rapport de validation du mot-clef - - - - - ... - - - - - <html><head/><body><p>aaa</p><p>dqsklmdqm</p></body></html> - - - - - Détruit le mot-clef - - - - - permet de gérer la liste - - - - - WidgetPlusieursIntoOrdonne - - - Form - - - - - Affiche le rapport de validation du mot-clef - - - - - ... - - - - - <html><head/><body><p>aaa</p><p>dqsklmdqm</p></body></html> - - - - - TextLabel - - - - - Remonte d'une ligne - - - - - Descend d'une ligne - - - - - Détruit une ligne - - - - - ajoute une ligne - - - - - visualise l'ensemble des valeurs - - - - - Détruit le mot-clef - - - - - permet de gérer la liste - - - - - WidgetPlusieursPlie - - - Form - - - - - Affiche le rapport de validité du mot-clef - - - - - ... - - - - - <html><head/><body><p>aaa</p><p>dqsklmdqm</p></body></html> - - - - - permet de gérer la liste - - - - - Détruit le mot-clef - - - - - WidgetPlusieursTuple - - - Form - - - - - Affiche le rapport de validation du mot-clef - - - - - ... - - - - - <html><head/><body><p>aaa</p><p>dqsklmdqm</p></body></html> - - - - - Remonte la ligne - - - - - Descend la ligne - - - - - supprime une ligne - - - - - Ajoute une ligne - - - - - Montre l'ensemble des valeurs - - - - - Ouvre un fichier de sélection des valeurs - - - - - Détruit le mot-clef - - - - - TextLabel - - - - - WidgetRadioButton - - - Form - - - - - Affiche le rapport de validation du mot-clef - - - - - ... - - - - - <html><head/><body><p>aaa</p><p>dqsklmdqm</p></body></html> - - - - - RadioButton - - - - - Détruit le mot-clef - - - - - WidgetSDCOInto - - - Form - - - - - Affiche le rapport de validation du mot-clef - - - - - ... - - - - - <html><head/><body><p>aaa</p><p>dqsklmdqm</p></body></html> - - - - - <html><head/><body><p>Structures de données du type requis </p><p><br/></p></body></html> - - - - - <html><head/><body><p>ou Nom du concept</p></body></html> - - - - - Détruit le mot-clef - - - - - WidgetSimpBase - - - Form - - - - - Affiche le rapport de validation du mot-clef - - - - - ... - - - - - <html><head/><body><p>aaa</p><p>dqsklmdqm</p></body></html> - - - - - Détruit le mot-clef - - - - - WidgetSimpBool - - - Form - - - - - Affiche le rapport de validation du mot-clef - - - - - ... - - - - - <html><head/><body><p>aaa</p><p>dqsklmdqm</p></body></html> - - - - - True - - - - - False - - - - - Détruit le mot-clef - - - - - WidgetSimpComplexe - - - Form - - - - - Affiche le rapport de validation du mot-clef - - - - - ... - - - - - <html><head/><body><p>aaa</p><p>dqsklmdqm</p></body></html> - - - - - Complexe : a+bj - - - - - <html><head/><body><p align="center">OU </p></body></html> - - - - - Réel/Imaginaire - - - - - Module/Phase - - - - - WidgetSimpFichier - - - Form - - - - - Affiche le rapport de validité du mot-clef - - - - - ... - - - - - <html><head/><body><p>aaa</p><p>dqsklmdqm</p></body></html> - - - - - affiche l'explorateur de fichier - - - - - ouvre le fichier choisi - - - - - Détruit le mot-clef - - - - - WidgetSimpTxt - - - Form - - - - - Affiche le rapport de validation du mot-clef - - - - - ... - - - - - <html><head/><body><p>aaa</p><p>dqsklmdqm</p></body></html> - - - - - Détruit le mot-clef - - - - - WidgetTuple2 - - - Form - - - - - Affiche le rapport de validation du mot-clef - - - - - ... - - - - - <html><head/><body><p>aaa</p><p>dqsklmdqm</p></body></html> - - - - - <html><head/><body><p><span style=" font-size:14pt;">(</span></p></body></html> - - - - - <html><head/><body><p><span style=" font-size:14pt;">,</span></p></body></html> - - - - - <html><head/><body><p><span style=" font-size:14pt;">)</span></p></body></html> - - - - - Détruit le mot-clef - - - - - WidgetTuple3 - - - Form - - - - - Affiche le rapport de validation du mot-clef - - - - - ... - - - - - <html><head/><body><p>aaa</p><p>dqsklmdqm</p></body></html> - - - - - <html><head/><body><p><span style=" font-size:14pt;">(</span></p></body></html> - - - - - <html><head/><body><p><span style=" font-size:14pt;">,</span></p></body></html> - - - - - <html><head/><body><p><span style=" font-size:14pt;">)</span></p></body></html> - - - - - Détruit le mot-clef - - - - - WidgetUniqueSDCO - - - Form - - - - - Affiche le rapport de validation du mot-clef - - - - - ... - - - - - <html><head/><body><p>aaa</p><p>dqsklmdqm</p></body></html> - - - - - Attend un objet de type CO - - - - - Détruit le mot-clef - - - - - WidgetVide - - - Form - - - - - ... - - - - - <html><head/><body><p><span style=" color:#0055ff;">Label</span></p></body></html> - - - - - Attend un objet de type XXXX. Il faut le créer - - - - - baseWidget - - - DMacro - - - - - dView - - - Dialog - - - - - Fermer - - - - - Sauver - - - - - desRecherche - - - Rechercher dans le JDC - - - - - Next - - - - - Suivant - - - - - desWidgetCreeParam - - - Gestion des Paramètres - - - - - <html><head/><body><p>Nom: </p></body></html> - - - - - <html><head/><body><p>Valeur: </p></body></html> - - - - - <html><head/><body><p><span style=" text-decoration: underline;">Créer un paramètre</span></p></body></html> - - - - - desWidgetMatrice - - - Dialog - - - - - Affiche le rapport de validation du mot-clef - - - - - ... - - - - - <html><head/><body><p>Met à jour l'en-tête</p></body></html> - - - - - <html><head/><body><p>aaa</p><p>dqsklmdqm</p></body></html> - - - - - self.appliEficas - - - Wrapper Files (*.xml);;All Files (*) - - - - - Noname - - - - - viewRegles - - - Dialog - - - - diff --git a/OldCodes/UiQT4/eficas_fr.ts b/OldCodes/UiQT4/eficas_fr.ts deleted file mode 100644 index d93d2f5b..00000000 --- a/OldCodes/UiQT4/eficas_fr.ts +++ /dev/null @@ -1,5069 +0,0 @@ - - - - @default - - Year - Annee - - - Month - Mois - - - Day - Jour - - - Hour - Heure - - - Minute - Minute - - - Second - Seconde - - - Discretizations_In_Space - Discretisations_En_Espace - - - Discretizations_In_Space_Tracers - Discretisations_En_Espace_Tracers - - - Discretizations_In_Space_U_And_V - Discretisations_En_Espace_U_And_V - - - Discretizations_In_Space_K_And_Epsilon - Discretisations_En_Espace_K_And_Epsilon - - - Discretizations_In_Space_H - Discretisations_En_Espace_H - - - Supg_Option - Option_De_Supg - - - Supg_Option_Tracers - Option_De_Supg_Tracers - - - Supg_Option_U_And_V - Option_De_Supg_U_And_V - - - Supg_Option_K_And_Epsilon - Option_De_Supg_K_And_Epsilon - - - Supg_Option_H - Option_De_Supg_H - - - Type_Of_Advection - Forme_De_La_Convection - - - Forme_De_La_Convection - Type_Of_Advection - - - Type_Of_Advection_Tracers - Forme_De_La_Convection_Tracers - - - Type_Of_Advection_U_And_V - Forme_De_La_Convection_U_And_V - - - Type_Of_Advection_K_And_Epsilon - Forme_De_La_Convection_K_And_Epsilon - - - Type_Of_Advection_H - Forme_De_La_Convection_H - - - Hauteur constante - Constant depth - - - Mass_Lumping_On_H - Mass_Lumping_Sur_H - - - Mass_Lumping_On_Velocity - Mass_Lumping_Sur_La_Vitesse - - - Mass_Lumping_On_Tracers - Mass_Lumping_Sur_Les_Traceurs - - - Mass_Lumping_For_Weak_Characteristics - Mass_Lumping_Pour_Les_Caracteristiques_Faibles - - - INITIALIZATION - INITIALISATION - - - Input_Files - Fichiers_D_Entree - - - Formatted_And_Binary_Files - Fichiers_Formates_Et_Binaires - - - Initial_State - Etat_Initial - - - Coupling - Couplage - - - Mass_Balance - Bilan_De_Masse - - - BOUNDARY_CONDITIONS - CONDITIONS_AUX_LIMITES - - - NUMERICAL_PARAMETERS - PARAMETRES_NUMERIQUES - - - PHYSICAL_PARAMETERS - PARAMETRES_PHYSIQUES - - - OUTPUT_FILES - FICHIERS_DE_SORTIE - - - CONSTRUCTION_WORKS_MODELLING - MODELISATION_DES_OUVRAGES - - - GENERAL_PARAMETERS - PARAMETRES_GENERAUX - - - PARTICLE_TRANSPORT - TRANSPORT_DE_PARTICULE - - - Computation_Continued_Settings - Parametres_De_Continuation_Du_Calcul - - - Inputs_Outputs_For_Tide - Entrees_Sorties_Pour_La_Maree - - - Location - Localisation - - - Physical_Parameters - Parametres_Physiques - - - Liquid_Boundaries - Frontieres_Liquide - - - Solver_Definition - Definition_Du_Solver - - - Linearity - Linearite - - - Precondionning_Setting - Parametres_Preconditionnement - - - Matrix_Informations - Stockage_Des_Matrices - - - Advection - Advection - - - Propagation - Propagation - - - Diffusion - Diffusion - - - Discretization_Implicitation - Discretisation - - - Tidal - Maree - - - Various - Divers - - - Friction_Setting - Parametres_De_Friction - - - Meteorology - Meteorologie - - - Wave - Houle - - - Parameters_Estimation - Parametres_A_Estimer - - - Tolerances_For_Identification - Tolerances_Pour_L_Identification - - - Sources - Sources - - - Coriolis_Settings - Parametres_Pour_Coriolis - - - Various_For_Numerical - Divers_Parametres_Numeriques - - - Secondary_Currents_Settings - Parametres_Pour_Les_Courants_Secondaires - - - Tsunami - Tsunami - - - Graphic_And_Listing_Printouts - Sorties_Listing_Et_Graphiques - - - Controls - Controles - - - Fourier - Fourier - - - General_Location - Localisation_Generale - - - Time - Temps - - - Original_Date_Of_Time - Date_A_L_Origine - - - Original_Hour_Of_Time - Temps_A_L_Origine - - - Limit_Values - Valeurs_Limites - - - Tracers_Setting - Parametres_Des_Traceurs - - - Tracer - Traceur - - - Boundary_Conditions_For_Tracers - Conditions_Aux_Limites_Pour_Les_Traceurs - - - Solving - - - - Accuracy - - - - Source - Source - - - Metereology - Metereologie - - - Numerical - Numerique - - - Degradation - Degradation - - - Values_Of_Tracers_In_The_Rain - Valeurs_Des_Traceurs_Dans_La_Pluie - - - Threshold_Depth_For_Receding_Procedure - Profondeur_Limite_Pour_Procedure_De_Ressuyage - - - Title - Titre - - - Spatial_Projection_Type - Type_De_Projection_Spatiale - - - Stochastic_Diffusion_Model - Modele_De_Diffusion_Stochastique - - - Drogues_File - Fichier_Des_Flotteurs - - - Origin_Coordinates - Coordonnees_De_L_Origine - - - Thickness_Of_Algae - Epaisseur_Des_Algues - - - Velocities_Of_The_Sources_Along_X - Vitesses_Des_Sources_Selon_X - - - Velocities_Of_The_Sources_Along_Y - Vitesses_Des_Sources_Selon_Y - - - Finite_Volume_Scheme - Schema_En_Volumes_Finis - - - Density_Of_Algae - Masse_Volumique_Des_Algues - - - Geometry_File - Fichier_De_Geometrie - - - Turbulence_Model - Modele_De_Turbulence - - - Oil_Spill_Model - Modele_De_Nappes_D_Hydrocarbures - - - Definition_Of_Zones - Definition_De_Zones - - - Rain_Or_Evaporation - Pluie_Ou_Evaporation - - - Sources_File - Fichier_Des_Sources - - - Friction_Coefficient - Coefficient_De_Frottement - - - Wind - Vent - - - Option_For_Tidal_Boundary_Conditions - Option_Pour_Les_Conditions_Aux_Limites_De_Maree - - - Option_For_Liquid_Boundaries - Option_Pour_Les_Frontieres_Liquides - - - Coefficient_To_Calibrate_Tidal_Velocities - Coefficient_De_Calage_Des_Vitesses_De_Courant - - - Initial_Time_Set_To_Zero - Remise_A_Zero_Du_Temps - - - Maximum_Number_Of_Iterations_For_Diffusion_Of_Tracers - Maximum_D_Iterations_Pour_La_Diffusion_Des_Traceurs - - - Binary_Results_File - Fichier_De_Resultats_Binaire - - - Number_Of_Drogues - Nombre_De_Flotteurs - - - Air_Pressure - Pression_Atmospherique - - - Mean_Depth_For_Linearization - Profondeur_Moyenne_Pour_La_Linearisation - - - Control_Of_Limits - Controle_Des_Limites - - - Free_Surface_Gradient_Compatibility - Compatibilite_Du_Gradient_De_Surface_Libre - - - Prescribed_Tracers_Values - Valeurs_Imposees_Des_Traceurs - - - defaut - Saint-venant_Ef - - - Velocity_Diffusivity - Coefficient_De_Diffusion_Des_Vitesses - - - Time_Step - Pas_De_Temps - - - Validation - Validation - - - Roughness_Coefficient_Of_Boundaries - Coefficient_De_Rugosite_Des_Bords - - - Density_Effects - Effets_De_Densite - - - Implicitation_Coefficient_Of_Tracers - Coefficient_D_Implicitation_Des_Traceurs - - - Formatted_Results_File - Fichier_De_Resultats_Formate - - - Debugger - Debugger - - - Liquid_Boundaries_File - Fichier_Des_Frontieres_Liquides - - - Sections_Output_File - Fichier_De_Sortie_Des_Sections_De_Controle - - - Number_Of_Private_Arrays - Nombre_De_Tableaux_Prives - - - Coefficient_Of_Wind_Influence - Coefficient_D_Influence_Du_Vent - - - Depth_In_Friction_Terms - Hauteur_Dans_Les_Termes_De_Frottement - - - Coefficient_To_Calibrate_Sea_Level - Coefficient_De_Calage_Du_Niveau_De_Mer - - - Variables_To_Be_Printed - Variables_A_Imprimer - - - Preconditioning - Preconditionnement - - - Cost_Function - Fonction_Cout - - - Type_Of_Sources - Type_Des_Sources - - - Tidal_Flats - Bancs_Decouvrants - - - Ascii_Database_For_Tide - Base_Ascii_De_Donnees_De_Maree - - - Original_Date_Of_Time - Date_De_L_origine_Des_Temps - - - Mean_Temperature - Temperature_Moyenne - - - Initial_Elevation - Cote_Initiale - - - Tubes_Data_File - Fichier_De_Donnees_Des_Buses - - - Boundary_Conditions_File - Fichier_Des_Conditions_Aux_Limites - - - Breach - Breche - - - Treatment_Of_The_Linear_System - Traitement_Du_Systeme_Lineaire - - - Prescribed_Elevations - Cotes_Imposees - - - List_Of_Points - Liste_De_Points - - - Listing_Printout_Period - Periode_De_Sortie_Listing - - - Initial_Guess_For_H - Ordre_Du_Tir_Initial_Pour_H - - - Geometry_File_Format - Format_Du_Fichier_De_Geometrie - - - Coefficient_1_For_Law_Of_Tracers_Degradation - Coefficient_1_De_La_Loi_De_Degradation_Des_Traceurs - - - Number_Of_Lagrangian_Drifts - Nombre_De_Derives_Lagrangiennes - - - Weirs_Data_File - Fichier_De_Donnees_Des_Seuils - - - Rain_Or_Evaporation_In_Mm_Per_Day - Pluie_Ou_Evaporation_En_Mm_Par_Jour - - - Minor_Constituents_Inference - Interpolation_De_Composantes_Mineures - - - Maximum_Number_Of_Friction_Domains - Nombre_Maximum_De_Domaines_De_Frottement - - - Elements_Masked_By_User - Elements_Masques_Par_L_Utilisateur - - - Control_Sections - Sections_De_Controle - - - Number_Of_Time_Steps - Nombre_De_Pas_De_Temps - - - Solver_Accuracy - Precision_Du_Solveur - - - Wave_Driven_Currents - Courants_De_Houle - - - Number_Of_Culverts - Nombre_De_Siphons - - - Equations - Equations - - - Maximum_Number_Of_Iterations_For_Identification - Maximum_D_Iterations_Pour_L_Identification - - - Coefficient_For_Diffusion_Of_Tracers - Coefficient_De_Diffusion_Des_Traceurs - - - Option_For_The_Diffusion_Of_Velocities - Option_Pour_La_Diffusion_Des_Vitesses - - - Coefficient_To_Calibrate_Tidal_Range - Coefficient_De_Calage_Du_Marnage - - - Binary_Data_File_1 - Fichier_De_Donnees_Binaire_1 - - - Binary_Data_File_2 - Fichier_De_Donnees_Binaire_2 - - - Solver - Solveur - - - Implicitation_For_Velocity - Implicitation_Pour_La_Vitesse - - - Longitude_Of_Origin_Point - Longitude_Du_Point_Origine - - - Original_Hour_Of_Time - Heure_De_L_origine_Des_Temps - - - Law_Of_Friction_On_Lateral_Boundaries - Loi_De_Frottement_Sur_Les_Parois_Laterales - - - Propagation - Propagation - - - Solver_For_Diffusion_Of_Tracers - Solveur_Pour_La_Diffusion_Des_Traceurs - - - Solver_Option - Option_Du_Solveur - - - Advection_Of_H - Convection_De_H - - - Output_Of_Initial_Conditions - Sortie_Des_Conditions_Initiales - - - Record_Number_For_Restart - Enregistrement_Pour_Suite_De_Calcul - - - Accuracy_For_Diffusion_Of_Tracers - Precision_Pour_La_Diffusion_Des_Traceurs - - - Initial_Guess_For_U - Ordre_Du_Tir_Initial_Pour_U - - - Advection_Of_K_And_Epsilon - Convection_De_K_Et_Epsilon - - - Identification_Method - Methode_D_Identification - - - Names_Of_Points - Noms_Des_Points - - - Zone_Number_In_Geographic_System - Numero_De_Fuseau_Ou_Projection_Dans_Le_Systeme_Geographique - - - Matrix_Storage - Stockage_Des_Matrices - - - Matrix_Vector_Product - Produit_Matrice_Vecteur - - - Algae_Type - Type_Des_Algues - - - Water_Density - Masse_Volumique_De_L_Eau - - - Newmark_Time_Integration_Coefficient - Coefficient_D_Integration_En_Temps_De_Newmark - - - Friction_Data_File - Fichier_De_Donnees_Pour_Le_Frottement - - - Implicitation_For_Diffusion_Of_Velocity - Implicitation_Pour_La_Diffusion_Des_Vitesses - - - Advection - Convection - - - Geographic_System - Systeme_Geographique - - - Results_File - Fichier_Des_Resultats - - - Algae_Transport_Model - Modele_De_Transport_Des_Algues - - - Treatment_Of_Negative_Depths - Traitement_Des_Hauteurs_Negatives - - - Ordinates_Of_Sources - Ordonnees_Des_Sources - - - Coriolis_Coefficient - Coefficient_De_Coriolis - - - Water_Discharge_Of_Sources - Debits_Des_Sources - - - Advection_Of_U_And_V - Convection_De_U_Et_V - - - Latitude_Of_Origin_Point - Latitude_Du_Point_Origine - - - Binary_Database_1_For_Tide - Base_Binaire_1_De_Donnees_De_Maree - - - Coriolis - Coriolis - - - Desired_Courant_Number - Nombre_De_Courant_Souhaite - - - Variables_For_Graphic_Printouts - Variables_Pour_Les_Sorties_Graphiques - - - Time_Range_For_Fourier_Analysis - Bornes_En_Temps_Pour_L_Analyse_De_Fourier - - - Graphic_Printout_Period - Periode_Pour_Les_Sorties_Graphiques - - - Tide_Generating_Force - Force_Generatrice_De_La_Maree - - - Preconditioning_For_Diffusion_Of_Tracers - Preconditionnement_Pour_La_Diffusion_Des_Traceurs - - - Number_Of_Tubes - Nombre_De_Buses - - - Vertical_Structures - Structures_Verticales - - - Stop_If_A_Steady_State_Is_Reached - Arret_Si_Un_Etat_Permanent_Est_Atteint - - - Number_Of_Weirs - Nombre_De_Seuils - - - Listing_Printout - Sortie_Listing - - - Previous_Computation_File - Fichier_Du_Calcul_Precedent - - - Fortran_File - Fichier_Fortran - - - Sections_Input_File - Fichier_Des_Sections_De_Controle - - - Binary_Database_2_For_Tide - Base_Binaire_2_De_Donnees_De_Maree - - - Results_File_Format - Format_Du_Fichier_Des_Resultats - - - Accuracy_Of_K - Precision_Sur_K - - - Tidal_Model_File - Fichier_Du_Modele_De_Maree - - - Fourier_Analysis_Periods - Periodes_D_Analyse_De_Fourier - - - H_Clipping - Clipping_De_H - - - Tolerances_For_Identification - Precisions_Pour_L_Identification - - - Previous_Computation_File_Format - Format_Du_Fichier_Du_Calcul_Precedent - - - Prescribed_Flowrates - Debits_Imposes - - - Bottom_Topography_File - Fichier_Des_Fonds - - - Implicitation_For_Depth - Implicitation_Pour_La_Hauteur - - - Reference_File_Format - Format_Du_Fichier_De_Reference - - - Diffusion_Of_Tracers - Diffusion_Des_Traceurs - - - Formatted_Data_File_1 - Fichier_De_Donnees_Formate_1 - - - Formatted_Data_File_2 - Fichier_De_Donnees_Formate_2 - - - Computation_Continued - Suite_De_Calcul - - - Breaches_Data_File - Fichier_De_Donnees_Des_Breches - - - Diffusion_Of_Velocity - Diffusion_Des_Vitesses - - - Solver_Option_For_Tracers_Diffusion - Option_Du_Solveur_Pour_La_Diffusion_Des_Traceurs - - - Advection_Of_Tracers - Convection_Des_Traceurs - - - Printout_Period_For_Drogues - Periode_Pour_Les_Sorties_De_Flotteurs - - - Option_For_The_Treatment_Of_Tidal_Flats - Option_De_Traitement_Des_Bancs_Decouvrants - - - Physical_Characteristics_Of_The_Tsunami - Parametres_Physiques_Du_Tsunami - - - Maximum_Number_Of_Iterations_For_K_And_Epsilon - Maximum_D_Iterations_Pour_K_Et_Epsilon - - - Tidal_Data_Base - Base_De_Donnees_De_Maree - - - Maximum_Number_Of_Iterations_For_Solver - Maximum_D_Iterations_Pour_Le_Solveur - - - Number_Of_Tracers - Nombre_De_Traceurs - - - Threshold_Depth_For_Wind - Profondeur_Limite_Pour_Le_Vent - - - Gravity_Acceleration - Acceleration_De_La_Pesanteur - - - Option_For_Characteristics - Option_Pour_Les_Caracteristiques - - - Spacing_Of_Roughness_Elements - Espacement_Des_Elements_De_Frottement - - - Parallel_Processors - Processeurs_Paralleles - - - Harmonic_Constants_File - Fichier_Des_Constantes_Harmoniques - - - Spherical_Coordinates - Coordonnees_Spheriques - - - Parameter_Estimation - Estimation_De_Parametre - - - Linearized_Propagation - Propagation_Linearisee - - - Accuracy_Of_Epsilon - Precision_Sur_Epsilon - - - Diameter_Of_Roughness_Elements - Diametre_Des_Elements_De_Frottement - - - Number_Of_First_Time_Step_For_Graphic_Printouts - Numero_Du_Premier_Pas_De_Temps_Pour_Les_Sorties_Graphiques - - - Threshold_For_Negative_Depths - Seuil_Pour_Les_Profondeurs_Negatives - - - Wind_Velocity_Along_X - Vitesse_Du_Vent_Suivant_X - - - Wind_Velocity_Along_Y - Vitesse_Du_Vent_Suivant_Y - - - Information_About_Solver - Informations_Sur_Le_Solveur - - - Initial_Conditions - Conditions_Initiales - - - Culvert_Data_File - Fichier_De_Donnees_Des_Siphons - - - Maximum_Number_Of_Iterations_For_Advection_Schemes - Maximum_D_Iterations_Pour_Les_Schemas_De_Convection - - - Turbulence_Model_For_Solid_Boundaries - Regime_De_Turbulence_Pour_Les_Parois - - - Continuity_Correction - Correction_De_Continuite - - - Law_Of_Bottom_Friction - Loi_De_Frottement_Sur_Le_Fond - - - Option_For_Tsunami_Generation - Option_Pour_La_Generation_De_Tsunami - - - Type_Of_Weirs - Type_Des_Seuils - - - Record_Number_In_Wave_File - Numero_De_L_Enregistrement_Dans_Le_Fichier_De_Houle - - - Abscissae_Of_Sources - Abscisses_Des_Sources - - - Values_Of_The_Tracers_At_The_Sources - Valeurs_Des_Traceurs_Des_Sources - - - Treatment_Of_Fluxes_At_The_Boundaries - Traitement_Des_Flux_Aux_Frontieres - - - Printing_Cumulated_Flowrates - Impression_Du_Cumul_Des_Flux - - - Compatible_Computation_Of_Fluxes - Calcul_Compatible_Des_Flux - - - Bottom_Smoothings - Lissages_Du_Fond - - - Initial_Depth - Hauteur_Initiale - - - Minimum_Value_Of_Depth - Valeur_Minimum_De_H - - - Option_For_The_Diffusion_Of_Tracers - Option_Pour_La_Diffusion_Des_Traceurs - - - Duration - Duree_Du_Calcul - - - Stop_Criteria - Criteres_D_Arret - - - Prescribed_Velocities - Vitesses_Imposees - - - Initial_Values_Of_Tracers - Valeurs_Initiales_Des_Traceurs - - - Reference_File - Fichier_De_Reference - - - - lecture du fichier impossible : - unable to read file - - - - Impossible d'ouvrir le fichier %s - unable to read file - - - - Format de sortie : %s, non supporte - - - - - Impossible d'ouvrir le fichier : %s - - - - - Erreur a l'evaluation : - %s - - - - - Erreur ! Erreur ! - - - - - Erreur rencontree dans recherche_enfants : %s - - - - - Erreur dans la creation du mot-cle : %s - - - - - Impossible d'ouvrir le fichier : %s - - - - - le texte a analyser n'est pas celui d'une commande ou d'un operateur : - - - - - Erreur dans la recherche du nom de la commande : - - - - - Erreur dans la recherche des args de la commande : - - - - - Erreur dans la recherche du nom de la commande : - - - - - Erreur dans la recherche des args de la commande : - - - - - %d n'est pas un index valide pour append_brother - - - - - le fichier de commandes %s n'existe pas - - - - - un fichier de commandes doit etre defini avant une poursuite %s - - - - - le fichier poursuite %s n'existe pas - - - - - include mal defini %s - - - - - un fichier de commandes doit etre defini avant un include %s - - - - - le fichier include %s n'existe pas - - - - - le fichier jdc %s n'existe pas - - - - - jdc %s manque option jdc dans section jdc - - - - - %(v_1)s include %(v_2)s : %(v_3)s - v_1 - - - - - %(v_1)s fichier poursuite: %(v_2)s - v_1 - - - - - nom etude : %s - - - - - utilisation : %prog [options] - - - - - nom du fichier de commandes - - - - - nom du fichier poursuite - - - - - numero d'unite suivi du nom du fichier include - - - - - fichier decrivant une etude - - - - - version de catalogue a utiliser - - - - - nom du code a utiliser - - - - - niveau de debug - - - - - schema - - - - - localisation de l'application, pour la traduction - - - - - Nombre incorrect d'arguments - - - - - Localisation specifiee pour l'application. - - - - - Un fichier de nom %s existe deja : impossible de creer un repertoire de meme nom - - - - - Creation du repertoire %s impossible - Verifiez vos droits d'acces - - - - - Impossible de transferer les fichiers requis dans : %s - - - - - Erreur - - - - - Erreurs fatales - - - - - Impossible reconstruire commande - - - - - - Objet commentaire non valorise - - - - - Debut Fonction %s - - - - - Fin Fonction %s - - - - - Nom de concept deja defini : %s - - - - - Longueur incorrecte - - - - - L'attribut 'min' doit etre un entier : - - - - - L'attribut 'max' doit etre un entier : - - - - - Nombres d'occurrence min et max invalides : - - - - - L'attribut 'fr' doit etre une chaine de caracteres - - - - - L'attribut 'statut' doit valoir 'o','f','c' ou 'd' - - - - - L'attribut 'docu' doit etre une chaine de caracteres - - - - - Fin - - - - - Le parametre EVAL %s ne peut valoir None - - - - - Le parametre EVAL ne peut valoir None - - - - - Pas de nom donne au parametre EVAL - - - - - Un nom de parametre ne peut depasser 8 caracteres - - - - - ERREUR - - - - - Format pas implemente : %s - - - - - Type d'objet non prevu : %s - - - - - ce groupe de maillage %s est associe a au moins un materiau et au moins une source. - - - - - ce groupe de maillage %s n'est associe a aucun materiau ou source. - - - - - ATTENTION! Une source constante n'est possible qu'a frequence nulle en regime frequentiel - - - - - ERREUR! ce groupe de maille (%s) n'a pas de prefixe valable - - - - - ERREUR! ce type de bloc (%s) n'est pas valable - - - - - toutes les donnees ne sont pas connues - - - - - Fichier patron %s n'existe pas. - - - - - Pas supporte - - - - - Entite inconnue ou interdite :%s - - - - - Entite inconnue ou interdite :%s. Elle est ignoree - - - - - Les tuples ne sont pas supportes pour le format ini :%s - - - - - Type de valeur non supportee par le format ini :%(nom)s -%(exception)s - nom - - - - - Il y a un pb a la Creation du XML - - - - - Il y a un pb a la Creation du STD - - - - - Entite inconnue ou interdite : %s. Elle est ignoree - - - - - Type de valeur non supporte par le format pyth : n %(exception)s - nom - - - - - Tag %s non-defini. Ceci est un bogue interne. en informer les developpeurs. - - - - - Le mot-cle %s est obligatoire. - - - - - concept %(inst_name)s de type %(class_name)s - inst_name - - - - - Un nom de concept doit etre un identificateur Python - - - - - Concept existant - - - - - Operateur reentrant mais concept non existant - - - - - Operateur reentrant et concept existant trouve - - - - - Concept deja existant et de mauvais type - - - - - Nommage du concept refuse : un concept de meme nom existe deja - - - - - Nommage du concept effectue - - - - - Nommage impossible %s - - - - - La liste des arguments d'une formule doit etre entre parentheses : parenthese ouvrante manquante - - - - - La liste des arguments d'une formule doit etre entre parentheses : parenthese fermante manquante - - - - - Pas de nom donne a la FORMULE - - - - - Un nom de FORMULE ne peut depasser 8 caracteres - - - - - Un nom de FORMULE ne peut pas commencer par un chiffre - - - - - Le type de la valeur retournee n'est pas specifie - - - - - Une formule ne peut retourner une valeur de type : %s - - - - - Impossible d'ajouter la commande - - - - - Impossible d ajouter la commande - - - - - Pas implemente - - - - - Nom de concept deja defini - - - - - Nom de concept deja defini : - - - - - Impossible de trouver le fichier correspondant a l'unite - - - - - n'est pas un fichier existant - - - - - Fichier invalide %s - - - - - Impossible de construire le jeu de commandes correspondant au fichier - - - - - Erreur lors de l'evaluation du fichier inclus - - - - - Ce fichier ne sera pas pris en compte - %s - - - - - Ce fichier ne sera pas pris en compte -Le fichier associe n'est pas defini - - - - - Le fichier n est pas defini - - - - - le fichier doit contenir une unique variable de sortie - - - - - Fichier invalide - - - - - Le contenu de ce fichier ne sera pas pris en compte - %s - - - - - Le fichier INCLUDE n est pas defini - - - - - Le contenu de ce fichier ne sera pas pris en compte - - - - - - Erreur lors de l'evaluation du fichier poursuite - - - - - L'objet %(v_1)s ne peut etre un fils de %(v_2)s - v_1 - - - - - L'objet %s ne peut pas etre repete - - - - - Erreur - mclist inexistante : %s - - - - - Erreur - mot cle facteur de nom : %s - - - - - traitement non-prevu - - - - - L'objet %s ne peut pas etre ajoute - - - - - None n'est pas une valeur autorisee - - - - - un concept de meme nom existe deja - - - - - Concept cree - - - - - La matrice n'est pas une matrice %(n_lign)d sur %(n_col)d - n_lign - - - - - Impossible de relire le fichier %s - - - - - - Le fichier include contient des erreurs - - - - - n'est pas un index valide pour append_brother - - - - - Decommenter - - - - - Decommente la commande - - - - - Impossible de supprimer un mot-cle obligatoire - - - - - Mot-cle %s supprime - - - - - Pb interne : impossible de supprimer ce mot-cle - - - - - Commentaire supprime - - - - - Commande %s supprimee - - - - - Pb interne : impossible de supprimer cet objet - - - - - Le fichier de commande n'a pas pu etre converti pour etre editable par Eficas - - - - - - - Include vide - - - - - L'include doit etre correctement initialise pour etre visualise - - - - - Impossible de supprimer ce mot-clef - - - - - View3D - - - - - affiche dans Geom les elements de structure - - - - - Graphique - - - - - affiche la distribution - - - - - Erreur interne - - - - - La PDF de la loi ne peut pas etre affichee. - - - - - &Annuler - - - - - Impossible de supprimer un mot-clef obligatoire - - - - - Mot-clef %s supprime - - - - - Pb interne : impossible de supprimer ce mot-clef - - - - - Definition d'un parametre - - - - - Import du fichier de Configuration - - - - - Erreur a la lecture du fichier de configuration %s - - - - - Erreur fatale au chargement de %s - - - - - Erreur fatale au chargement d'un fichier - - - - - fichier modifie - - - - - Attention! fichier change hors EFICAS - - - - - Type de fichier non reconnu - - - - - EFICAS ne sait pas ouvrir le type de fichier %s - - - - - EFICAS ne sait pas ouvrir ce type de fichier - - - - - Copie impossible - - - - - Veuillez selectionner un objet a copier - - - - - Veuillez selectionner un seul objet : la copie se fera apres le noeud selectionne - - - - - Aucun Objet n a ete copie ou coupe - - - - - Copie refusee - - - - - Eficas n a pas reussi a copier l objet - - - - - Copie refusee pour ce type d objet - - - - - Deplacement refuse - - - - - Deplacement refuse entre 2 fichiers. Seule la copie est autorisee - - - - - Copie impossible a cet endroit - - - - - Veuillez selectionner une commande, un parametre, un commentaire ou une macro - - - - - Choix d'un fichier XML - - - - - Le fichier contient une commande MODEL - - - - - - Donnez le nom du fichier XML qui contient la description des variables - - - - - Ouvrir Fichier - - - - - Erreur a la generation - - - - - EFICAS ne sait pas convertir ce JDC - - - - - Format %s non reconnu - - - - - EFICAS ne sait pas convertir le JDC selon le format - - - - - Execution impossible - - - - - le JDC doit etre valide pour une execution MAP - - - - - le JDC doit contenir un et un seul composant - - - - - le JDC doit etre valide pour une execution - - - - - Sauvegarder SVP avant l'execution - - - - - sauvegarde - - - - - Sauvegarde du Fichier - - - - - Le fichier <b>%s</b> existe deja. - - - - - &Ecraser - - - - - Sauvegarde de l'input impossible - - - - - Un JdC valide est necessaire pour creer un .input - - - - - Choix du composant obligatoire - - - - - Choix unite %d - - - - - Le fichier %s contient une commande INCLUDE - - - - - - Donnez le nom du fichier correspondant a l unite logique - - - - - Fichier pour unite - - - - - Choix d'un fichier de poursuite - - - - - Le fichier %s contient une commande POURSUITE - - - - - - Donnez le nom du fichier dont vous - voulez faire une poursuite - - - - - Fichiers Med (*.med);;Tous les Fichiers (*) - - - - - Fichier Med - - - - - Veuillez selectionner un fichier Med - - - - - reel - - - - - entier - - - - - complexe - - - - - Entrez - - - - - Entrez entre - - - - - et - - - - - Type de base inconnu - - - - - Aide Indisponible - - - - - l'aide n est pas installee - - - - - Visualisation Fichier - - - - - Impossibilite d'afficher le Fichier - - - - - Sauvegarder Fichier - - - - - Fichier selectionne - - - - - Selection - - - - - Export Med vers Fichier - - - - - Impossibilite d exporter le Fichier - - - - - Traduire Fichier - - - - - Fichiers JDC (*.comm);;Tous les Fichiers (*) - - - - - Fichier Traduit : %s - - - - - - - Pas de difference entre le fichier origine et le fichier traduit - - - - - objet valide - - - - - %d versions du catalogue sont disponibles - - - - - Sauvegarder le fichier - - - - - Le fichier <b>%(v_1)s</b> n'a pu etre sauvegarde. <br>Raison : %(v_2)s - v_1 - - - - - Options pour - - - - - - valeurs - - - - - Nombre minimal de valeurs : - - - - - Nombre maximal de valeurs : - - - - - expression valide - - - - - expression invalide - - - - - l expression n est pas de la forme a+bj - - - - - expression n est pas de la forme a+bj - - - - - entrer une seule valeur SVP - - - - - saisir le type de complexe - - - - - Valeur du mot-cle enregistree - - - - - Valeur du mot-cle non autorisee - - - - - &Recents - - - - - Aide specifique - - - - - Options - - - - - Traduction - - - - - TraduitV7V8 - - - - - TraduitV8V9 - - - - - TraduitV9V10 - - - - - Acquiert Groupe Maille - - - - - Specificites Maille - - - - - version - - - - - pour - - - - - Parametrage - - - - - Veuillez d abord choisir un code - - - - - Pas de possibilite de personnalisation de la configuration - - - - - &Effacer - - - - - Veuillez entrer le complexe sous forme aster ou sous forme python - - - - - Import du catalogue - - - - - Pas de catalogue defini pour le code - - - - - Aucun catalogue trouve - - - - - Impossible d'importer le catalogue - - - - - avec le catalogue - - - - - Choix d une version du code - - - - - Choix d une version - - - - - Parametre - - - - - Insere un parametre - - - - - item invalide - - - - - l item doit etre valide - - - - - &Ok - &Ok - - - - apres - - - - - Insere un commentaire apres la commande - - - - - avant - - - - - Insere un commentaire avant la commande - - - - - Insere un parametre apres la commande - - - - - Insere un parametre avant la commande - - - - - Supprimer - - - - - supprime le mot clef - - - - - Documentation - - - - - documentation sur la commande - - - - - Documentation Vide - - - - - Aucune documentation n'est associee a ce noeud - - - - - impossible de trouver la commande - - - - - Lecteur PDF - - - - - impossible d'ouvrir - - - - - Commentaire - - - - - ce noeud - - - - - commente le noeud - - - - - Fichiers JDC (*.comm);;Tous les Fichiers (*) - - - - - &Quitter - - - - - Quitter - - - - - Fichier Duplique - - - - - Le fichier ne sera pas sauvegarde. - - - - - Fichier - - - - - Le fichier <b>%s</b> est deja ouvert. - - - - - &Duplication - - - - - &Abort - - - - - Fichier Modifie - - - - - Le fichier %s n a pas ete sauvegarde. - - - - - &Sauvegarder - - - - - SOURCE - - - - - EnveloppeConnexeInducteur - - - - - EnveloppeConnexe2 - - - - - VecteurDirecteur - - - - - Centre - - - - - SectionBobine - - - - - Amplitude - - - - - NbdeTours - - - - - CONDUCTEUR - - - - - Conductivite - - - - - PermeabiliteRelative - - - - - NOCOND - - - - - VCUT - - - - - Orientation - - - - - ZS - - - - - PARAMETRES - - - - - RepCarmel - - - - - TypedeFormule - - - - - Frequence - - - - - Nb_Max_Iterations - - - - - Erreur_Max - - - - - PARAMETRE - - - - - Valeur non modifiable - - - - - Format non implemente - - - - - Type d'objet non prevu - - - - - Select - - - - - Sauve Format Ligne - - - - - %s n'est pas un fichier valide - - - - - Fichier de donnees - - - - - Tous les Fichiers (*) - - - - - nb min de valeurs : - - - - - nb max de valeurs atteint - - - - - TraduitV10V11 - - - - - TraduitV11V12 - - - - - Valeur du mot-clef enregistree - - - - - Valeur du mot-clef non autorisee : - - - - - Un concept de nom %s existe déjà ! - - - - - La cardinalite n'est pas correcte, la derniere valeur est ignoree - - - - - n est pas un tuple de - - - - - valeurs - - - - - Valeur incorrecte - - - - - n est pas un identifiant correct - - - - - - Entrer un float SVP - - - - - Entrer un float inferieur a - - - - - Entrer un float superieur a - - - - - Mauvaise execution - - - - - impossible d executer la methode - - - - - Mauvaise Commande - - - - - Aucune variable connue - - - - - Mauvaise dimension de matrice - - - - - le nombre de ligne n est pas egal a - - - - - le nombre de colonne n est pas egal a - - - - - Mauvaise Valeur - - - - - l element - - - - - n est pas correct - - - - - Modification Impossible - - - - - le parametre n'est pas valide - - - - - n est pas un identifiant correct - - - - - Valeur incorrecte: - - - - - Valeur incorrecte - - - - - Valeur correcte - - - - - impossible d'evaluer : - - - - - La formule passee a l'interpreteur doit etre sous forme de tuple - - - - - Debut - - - - - Pas de nom donne au parametre - - - - - Le parametre %s ne peut valoir None - - - - - Format non implemente : %s - - - - - Impossible de realiser la verification de la formule - - - - - Un concept de nom %s existe deja ! - - - - - existe deja - - - - - - Fichier non encore nomme - - - - - La matrice n'a pas le bon entete - - - - - le mot clef - - - - - doit etre insere avant - - - - - insertion impossible - - - - - doit etre insere apres - - - - - Nb maximum de valeurs atteint - - - - - pas de regle de construction pour ce jeu de commandes - - - - - Gestion Maillage - - - - - Acquiert groupe mailles - - - - - Acquisition Groupe Maille - - - - - VERSION - - - - - NUM - - - - - FILETYPE - - - - - PARAMETERS - - - - - Fichier_maillage - - - - - Echelle_du_maillage - - - - - Formulation - - - - - Timeproblem - - - - - spectral - - - - - Basis - - - - - Fourier - - - - - Ordre - - - - - FREQUENCY - - - - - minimisation - - - - - no - - - - - yes - - - - - nb_procs_para - - - - - POLYMER - - - - - MODEL_DATABASE - - - - - Stabilise - - - - - Non Stabilise - - - - - Local - - - - - ESSAI_OPTION - - - - - MATERIEL - - - - - Cable - - - - - Peinture - - - - - Tuyauterie - - - - - Materiau_De_Cable - - - - - PE - - - - - EPDM - - - - - Modele - - - - - Impossible de convertir le fichier Python qui doit contenir des erreurs. - - On retourne le fichier non converti. Prevenir la maintenance. - - %s - - - - - Eficas ne peut pas traiter plusieurs instructions - sur la meme ligne : %s - - - - - le texte a analyser n'est pas celui d'une commande ou - d'un operateur : %s - - - - - le texte a analyser n'est pas celui d'une commande connue : - %(v_1)s %(v_2)s - v_1 - - - - - le texte a analyser n'est pas celui d'une commande connue : - %(v_1)s %(v_2)s - v_1 - - - - - jdc %(v_1)s manque - fichier comm dans section %(v_2)s - v_1 - - - - - jdc %(v_1)s, le fichier - de commandes %(v_2)s n'existe pas - v_1 - - - - - jdc %(v_1)s - fichier include %(v_2)s, %(v_3)s - n'existe pas - v_1 - - - - - jdc %(v_1)s manque fichier comm - dans section %(v_2)s - v_1 - - - - - jdc %(v_1)s, le fichier de commandes - %(v_2)s n'existe pas - v_1 - - - - - Objet commande commentarisé invalide - - - - - ATTENTION! Une source constante - n'est possible qu'a frequence nulle - en regime frequentiel - - - - - ERREUR! Une forme de la source du - type WAVEFORM_CONSTANT ou WAVEFORM_SINUS est attendue. - - - - - ATTENTION! Une source constante n'est - possible qu'a frequence nulle en regime frequentiel - - - - - ERREUR! Une forme de la source du type - WAVEFORM_CONSTANT ou WAVEFORM_SINUS est attendue. - - - - - ERREUR! ce groupe de maille (%s) n'a pas de prefixe - indiquant le type de materiau ou de source associee - - - - - ERREUR! ce groupe de maille (%(nom)s) n'a pas - le prefixe correct pour etre associe a un type %(type_bloc)s - nom - - - - - - Include Invalide. - ne sera pas pris en compte - - - - - : verifie les types dans un tuple - - - - - Les types entres ne sont pas permis - - - - - ChoixCode - - - Choix du code - - - - - Veuillez choisir un code : - - - - - &Cancel - - - - - Validate choice - - - - - &OK - - - - - ChoixCommandes - - - DMacro - - - - - <html><head/><body><p align="center"><span style=" text-decoration: underline;">Affichage</span></p></body></html> - - - - - affiche les commandes par ordre alphabetique - - - - - Alphabetique - - - - - affiche les commandes selon les thèmes - - - - - Ordre de la modélisation - - - - - Par Groupe - - - - - <html><head/><body><p align="center">Filtre Commande</p></body></html> - - - - - filter commands - - - - - affiche les régles de validité - - - - - ... - - - - - Règles de construction - - - - - Sensible à la casse - - - - - Effacer - - - - - selectionne les mots qui CONTIENNENT l expression - - - - - ré-affiche toutes les commandes - - - - - DChoixCata - - - Choix d'une version du code Aster - - - - - <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> -<html><head><meta name="qrichtext" content="1" /><style type="text/css"> -p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal;"> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:11pt;">2 versions sont disponibles</span></p></body></html> - - - - - &Cancel - - - - - Validate choice - - - - - &OK - - - - - DSelVal - - - Sélection de valeurs - - - - - Separateur - - - - - espace - - - - - virgule - - - - - point-virgule - - - - - Ajouter Selection - - - - - Importer Tout - - - - - DVisu - - - Visualisation Include Materiau - - - - - Eficas - - - MainWindow - - - - - &Fichier - - - - - &Aide - - - - - toolBar - - - - - &Nouveau - - - - - Ctrl+N - - - - - Nouvel Include - - - - - &Ouvrir - - - - - Ctrl+O - - - - - Enregistrer - - - - - Enregistrer sous - - - - - Fermer - - - - - Ctrl+W - - - - - Fermer tout - - - - - Couper - - - - - Ctrl+X - - - - - Copier - - - - - Ctrl+C - - - - - Coller - - - - - Ctrl+V - - - - - Quitter - - - - - Ctrl+Q - - - - - Rapport de Validation - - - - - Fichier Source - - - - - Fichier Résultat - - - - - Parametres Eficas - - - - - Lecteur documentation - - - - - Eficas - - - - - Version - - - - - Supprimer - - - - - Rechercher - - - - - Rechercher dans l'arbre d'etude - - - - - Ctrl+F - - - - - Replier/Deplier - - - - - Tab 1 - - - - - &Edition - - - - - &JeuDeDonnées - - - - - Shift+I - - - - - Ctrl+S - - - - - Ctrl+Shift+S - - - - - Shift+V - - - - - Chercher Mot-Clef - - - - - Rechercher dans le catalogue - - - - - Shift+F - - - - - Shift+D - - - - - Commentaire - - - - - Shift+C - - - - - Paramètres - - - - - Gestion des paramètres - - - - - Shift+P - - - - - Parametre Eficas - - - - - Execution - - - - - Execution - - - - - Save Run - - - - - Patrons - - - - - Run - - - - - &bad - - - - - Régles du JdC - - - - - JDCEditor - - - Save File - - - - - The file <b>%1</b> could not be saved.<br>Reason: %2 - - - - - JDC (*.comm);;All Files (*) - - - - - &Abandonner - &Abandonner - - - - Tuple2 - - - Form - - - - - <html><head/><body><p><span style=" font-size:14pt;">(</span></p></body></html> - - - - - <html><head/><body><p><span style=" font-size:14pt;">,</span></p></body></html> - - - - - <html><head/><body><p><span style=" font-size:14pt;">)</span></p></body></html> - - - - - Tuple3 - - - Form - - - - - <html><head/><body><p><span style=" font-size:14pt;">(</span></p></body></html> - - - - - <html><head/><body><p><span style=" font-size:14pt;">,</span></p></body></html> - - - - - <html><head/><body><p><span style=" font-size:14pt;">)</span></p></body></html> - - - - - Widget4a6RadioButton - - - Form - - - - - Affiche le rapport de validation du mot-clef - - - - - ... - - - - - <html><head/><body><p>aaa</p><p>dqsklmdqm</p></body></html> - - - - - RadioButton - - - - - Détruit le mot-clef - - - - - WidgetBloc - - - Form - - - - - WidgetCB - - - Form - - - - - Affiche le rapport de validation du mot-clef - - - - - ... - - - - - <html><head/><body><p>aaa</p><p>dqsklmdqm</p></body></html> - - - - - Détruit le mot-clef - - - - - WidgetCommande - - - DCommandeUnique - - - - - Affiche le rapport de validité de la commande - - - - - ... - - - - - <html><head/><body><p><span style=" color:#0000ff;">commande </span></p></body></html> - - - - - Nom de l'objet. Seuls, les objets valides peuvent être nommés - - - - - Lance un script associé à la commande - - - - - ouvre un navigateur sur l'aide contextuelle - - - - - affiche les régles de validité - - - - - Détruit la commande - - - - - Affiche les commandes possibles - - - - - &Commandes - - - - - Shift+A, Alt+A, Alt+A, Alt+A - - - - - Affiche le formulaire de la commande précédente - - - - - << - - - - - Affiche le formulaire de la commande suivante - - - - - >> - - - - - TextLabel - - - - - WidgetCommentaire - - - DCommandeUnique - - - - - ... - - - - - <html><head/><body><p><span style=" color:#0000ff;">Commentaire</span></p></body></html> - - - - - Détruit le commentaire - - - - - Affiche les commandes possibles - - - - - &Commandes - - - - - Shift+A, Alt+A, Alt+A, Alt+A - - - - - Affiche le formulaire de la commande précédente - - - - - << - - - - - Affiche le formulaire de la commande suivante - - - - - >> - - - - - WidgetDate - - - Form - - - - - Affiche le rapport de validation du mot-clef - - - - - ... - - - - - <html><head/><body><p>aaa</p><p>dqsklmdqm</p></body></html> - - - - - Détruit le mot-clef - - - - - WidgetFact - - - Form - - - - - ... - - - - - <html><head/><body><p><span style=" font-style:italic;">TextLabel</span></p></body></html> - - - - - WidgetFactPlie - - - Form - - - - - ... - - - - - TextLabel - - - - - WidgetHeure - - - Form - - - - - Affiche le rapport de validation du mot-clef - - - - - ... - - - - - <html><head/><body><p>aaa</p><p>dqsklmdqm</p></body></html> - - - - - <html><head/><body><p><br/></p></body></html> - - - - - Détruit le mot-clef - - - - - WidgetInformative - - - Form - - - - - WidgetOptionnel - - - WidgetOptionnel - - - - - <html><head/><body><p><span style=" color:#0000ff;">commande </span></p></body></html> - - - - - WidgetParam - - - DCommandeUnique - - - - - ... - - - - - <html><head/><body><p><span style=" color:#000000;">Paramètre</span></p></body></html> - - - - - Détruit le commentaire - - - - - Affiche les commandes possibles - - - - - &Commandes - - - - - Shift+A, Alt+A, Alt+A, Alt+A - - - - - Affiche le formulaire de la commande précédente - - - - - << - - - - - Affiche le formulaire de la commande suivante - - - - - >> - - - - - <html><head/><body><p>Valeur: </p></body></html> - - - - - <html><head/><body><p>Nom: </p></body></html> - - - - - Verifie la valeur - - - - - <html><head/><body><p><br/></p></body></html> - - - - - WidgetPlusieursBase - - - Form - - - - - Affiche le rapport de validation du mot-clef - - - - - ... - - - - - <html><head/><body><p>aaa</p><p>dqsklmdqm</p></body></html> - - - - - Remonte la ligne - - - - - Descend la ligne - - - - - supprime une ligne - - - - - Ajoute une ligne - - - - - Montre l'ensemble des valeurs - - - - - Sélectionne depuis Salome - - - - - Visualise dans Salome - - - - - Ouvre un fichier de sélection des valeurs - - - - - Détruit le mot-clef - - - - - permet de gérer la liste - - - - - TextLabel - - - - - WidgetPlusieursInto - - - Form - - - - - Affiche le rapport de validation du mot-clef - - - - - ... - - - - - <html><head/><body><p>aaa</p><p>dqsklmdqm</p></body></html> - - - - - Détruit le mot-clef - - - - - permet de gérer la liste - - - - - WidgetPlusieursIntoOrdonne - - - Form - - - - - Affiche le rapport de validation du mot-clef - - - - - ... - - - - - <html><head/><body><p>aaa</p><p>dqsklmdqm</p></body></html> - - - - - TextLabel - - - - - Remonte d'une ligne - - - - - Descend d'une ligne - - - - - Détruit une ligne - - - - - ajoute une ligne - - - - - visualise l'ensemble des valeurs - - - - - Détruit le mot-clef - - - - - permet de gérer la liste - - - - - WidgetPlusieursPlie - - - Form - - - - - Affiche le rapport de validité du mot-clef - - - - - ... - - - - - <html><head/><body><p>aaa</p><p>dqsklmdqm</p></body></html> - - - - - permet de gérer la liste - - - - - Détruit le mot-clef - - - - - WidgetPlusieursTuple - - - Form - - - - - Affiche le rapport de validation du mot-clef - - - - - ... - - - - - <html><head/><body><p>aaa</p><p>dqsklmdqm</p></body></html> - - - - - Remonte la ligne - - - - - Descend la ligne - - - - - supprime une ligne - - - - - Ajoute une ligne - - - - - Montre l'ensemble des valeurs - - - - - Ouvre un fichier de sélection des valeurs - - - - - Détruit le mot-clef - - - - - TextLabel - - - - - WidgetRadioButton - - - Form - - - - - Affiche le rapport de validation du mot-clef - - - - - ... - - - - - <html><head/><body><p>aaa</p><p>dqsklmdqm</p></body></html> - - - - - RadioButton - - - - - Détruit le mot-clef - - - - - WidgetSDCOInto - - - Form - - - - - Affiche le rapport de validation du mot-clef - - - - - ... - - - - - <html><head/><body><p>aaa</p><p>dqsklmdqm</p></body></html> - - - - - <html><head/><body><p>Structures de données du type requis </p><p><br/></p></body></html> - - - - - <html><head/><body><p>ou Nom du concept</p></body></html> - - - - - Détruit le mot-clef - - - - - WidgetSimpBase - - - Form - - - - - Affiche le rapport de validation du mot-clef - - - - - ... - - - - - <html><head/><body><p>aaa</p><p>dqsklmdqm</p></body></html> - - - - - Détruit le mot-clef - - - - - WidgetSimpBool - - - Form - - - - - Affiche le rapport de validation du mot-clef - - - - - ... - - - - - <html><head/><body><p>aaa</p><p>dqsklmdqm</p></body></html> - - - - - True - - - - - False - - - - - Détruit le mot-clef - - - - - WidgetSimpComplexe - - - Form - - - - - Affiche le rapport de validation du mot-clef - - - - - ... - - - - - <html><head/><body><p>aaa</p><p>dqsklmdqm</p></body></html> - - - - - Complexe : a+bj - - - - - <html><head/><body><p align="center">OU </p></body></html> - - - - - Réel/Imaginaire - - - - - Module/Phase - - - - - WidgetSimpFichier - - - Form - - - - - Affiche le rapport de validité du mot-clef - - - - - ... - - - - - <html><head/><body><p>aaa</p><p>dqsklmdqm</p></body></html> - - - - - affiche l'explorateur de fichier - - - - - ouvre le fichier choisi - - - - - Détruit le mot-clef - - - - - WidgetSimpTxt - - - Form - - - - - Affiche le rapport de validation du mot-clef - - - - - ... - - - - - <html><head/><body><p>aaa</p><p>dqsklmdqm</p></body></html> - - - - - Détruit le mot-clef - - - - - WidgetTuple2 - - - Form - - - - - Affiche le rapport de validation du mot-clef - - - - - ... - - - - - <html><head/><body><p>aaa</p><p>dqsklmdqm</p></body></html> - - - - - <html><head/><body><p><span style=" font-size:14pt;">(</span></p></body></html> - - - - - <html><head/><body><p><span style=" font-size:14pt;">,</span></p></body></html> - - - - - <html><head/><body><p><span style=" font-size:14pt;">)</span></p></body></html> - - - - - Détruit le mot-clef - - - - - WidgetTuple3 - - - Form - - - - - Affiche le rapport de validation du mot-clef - - - - - ... - - - - - <html><head/><body><p>aaa</p><p>dqsklmdqm</p></body></html> - - - - - <html><head/><body><p><span style=" font-size:14pt;">(</span></p></body></html> - - - - - <html><head/><body><p><span style=" font-size:14pt;">,</span></p></body></html> - - - - - <html><head/><body><p><span style=" font-size:14pt;">)</span></p></body></html> - - - - - Détruit le mot-clef - - - - - WidgetUniqueSDCO - - - Form - - - - - Affiche le rapport de validation du mot-clef - - - - - ... - - - - - <html><head/><body><p>aaa</p><p>dqsklmdqm</p></body></html> - - - - - Attend un objet de type CO - - - - - Détruit le mot-clef - - - - - WidgetVide - - - Form - - - - - ... - - - - - <html><head/><body><p><span style=" color:#0055ff;">Label</span></p></body></html> - - - - - Attend un objet de type XXXX. Il faut le créer - - - - - baseWidget - - - DMacro - - - - - dView - - - Dialog - - - - - Fermer - - - - - Sauver - - - - - desRecherche - - - Rechercher dans le JDC - - - - - Next - - - - - Suivant - - - - - desWidgetCreeParam - - - Gestion des Paramètres - - - - - <html><head/><body><p>Nom: </p></body></html> - - - - - <html><head/><body><p>Valeur: </p></body></html> - - - - - <html><head/><body><p><span style=" text-decoration: underline;">Créer un paramètre</span></p></body></html> - - - - - desWidgetMatrice - - - Dialog - - - - - Affiche le rapport de validation du mot-clef - - - - - ... - - - - - <html><head/><body><p>Met à jour l'en-tête</p></body></html> - - - - - <html><head/><body><p>aaa</p><p>dqsklmdqm</p></body></html> - - - - - self.appliEficas - - - Wrapper Files (*.xml);;All Files (*) - - - - - Noname - - - - - viewRegles - - - Dialog - - - - diff --git a/OldCodes/UiQT4/makefile b/OldCodes/UiQT4/makefile deleted file mode 100644 index ae76eed3..00000000 --- a/OldCodes/UiQT4/makefile +++ /dev/null @@ -1,34 +0,0 @@ -PYUIC = pyuic4 -QTRELEASE = lrelease-qt4 -.PHONY : all -.SUFFIXES : .ui .py .ts .qm - - -PY_FILES = myMain.py desBaseWidget.py desChoixCata.py desChoixCode.py desChoixLangue.py desChoixCommandes.py \ - desRecherche.py desRechercheCatalogue.py \ - desSelectVal.py desViewTexte.py desViewRegles.py desVisu.py desWidgetCreeParam.py desWidgetCommande.py \ - desWidgetOptionnel.py desWidgetOptionnelMC.py Tuple2.py Tuple3.py \ - desWidgetBloc.py desWidgetCB.py desWidgetCommentaire.py desWidgetDate.py \ - desWidgetFact.py desWidgetFactPlie.py desWidgetFormule.py desGroupeOptionnel.py \ - desWidgetHeure.py desWidgetInformation.py desWidgetInactif.py \ - desWidgetMatrice.py desWidgetParam.py desWidgetPlusieursBase.py desWidgetPlusieursInto.py \ - desWidgetPlusieursIntoOrdonne.py desWidgetPlusieursTuple.py desWidgetRadioButton.py \ - desWidget4a6RadioButton.py desWidgetSimpBase.py desWidgetSDCOInto.py desWidgetSimpBool.py \ - desWidgetSimpSalome.py \ - desWidgetSimpComplexe.py desWidgetSimpFichier.py desWidgetSimpTxt.py desWidgetTuple2.py \ - desWidgetTuple3.py desWidgetVide.py desWidgetUniqueSDCO.py desWidgetPlusieursPlie.py - - - -QM_FILES=eficas_en.qm eficas_fr.qm - -%.py:%.ui - ${PYUIC} -x -o $@ $< - -%.qm:%.ts - ${QTRELEASE} -qm $@ $< - -all : $(PY_FILES) $(QM_FILES) -clean : - -rm -rf $(PY_FILES) *.pyc - diff --git a/OldCodes/UiQT4/myMain.ui b/OldCodes/UiQT4/myMain.ui deleted file mode 100644 index c5d95434..00000000 --- a/OldCodes/UiQT4/myMain.ui +++ /dev/null @@ -1,471 +0,0 @@ - - - Eficas - - - - 0 - 0 - 1676 - 811 - - - - - 0 - 0 - - - - MainWindow - - - /* QMenuBar { - background-color: qlineargradient(x1:0, y1:0, x2:0, y2:1, - stop:0 rgb(226,255,253), stop:1 rgb(191,237,255)); - }*/ - -QMenuBar { - background-color: qlineargradient(x1:0, y1:0, x2:0, y2:1, - stop:0 rgb(164,165,178), stop:1 rgb(55,66,126)); - } - QMenuBar::item { - spacing: 3px; /* spacing between menu bar items */ - color: white; - padding: 1px 4px; - background: transparent; - border-radius: 4px; - } - - QMenuBar::item:selected { /* when selected using mouse or keyboard */ - background: #a8a8a8; - } - - QMenuBar::item:pressed { - background: #888888; - } - - - - - - - - - - - - - QComboBox{combobox-popup:0;} - - - - 0 - - - 0 - - - 0 - - - 0 - - - - - - 0 - 61 - - - - - 16777215 - 61 - - - - /*background-color: qlineargradient(x1:0, y1:0, x2:0, y2:1, - stop:0 rgb(218,229,248), stop:1 rgb(9,86,109));*/ -/*background-color:rgb(208,225,238)*/ - - - QFrame::NoFrame - - - QFrame::Raised - - - 2 - - - - - - - background-color:rgb(224,223,222) - - - QTabWidget::North - - - 0 - - - true - - - - Tab 1 - - - - - - - - - - 0 - 0 - 1676 - 25 - - - - - &Fichier - - - - - - - - - - - - - - - - &Edition - - - - - - - - - - - - - &JeuDeDonnées - - - - - - - - - - - - &Aide - - - - - - - - - - - - - - toolBar - - - - 36 - 36 - - - - TopToolBarArea - - - false - - - - - - - - - - - - - - - - .. - - - &Nouveau - - - Ctrl+N - - - - - Nouvel Include - - - Shift+I - - - - - &bad - - - - - - .. - - - &Ouvrir - - - Ctrl+O - - - - - - .. - - - Enregistrer - - - Ctrl+S - - - - - Parametres Eficas - - - - - - .. - - - Enregistrer sous - - - Ctrl+Shift+S - - - - - Fermer - - - Ctrl+W - - - - - Fermer tout - - - - - - .. - - - Couper - - - Ctrl+X - - - Qt::ApplicationShortcut - - - - - - .. - - - Copier - - - Ctrl+C - - - Qt::ApplicationShortcut - - - - - - .. - - - Coller - - - Ctrl+V - - - Qt::ApplicationShortcut - - - - - Quitter - - - Ctrl+Q - - - - - Rapport de Validation - - - Shift+V - - - false - - - - - Fichier Source - - - - - Fichier Résultat - - - - - Lecteur documentation - - - - - Eficas - - - - - Version - - - - - - .. - - - Supprimer - - - - - Chercher Mot-Clef - - - Rechercher dans le catalogue - - - Shift+F - - - Qt::ApplicationShortcut - - - - - - .. - - - Rechercher - - - Rechercher dans l'arbre d'etude - - - Ctrl+F - - - Qt::ApplicationShortcut - - - - - Replier/Deplier - - - Shift+D - - - - - Commentaire - - - Shift+C - - - - - - ../Editeur/icons/parametres.png../Editeur/icons/parametres.png - - - Paramètres - - - Gestion des paramètres - - - Shift+P - - - - - Parametre Eficas - - - - - Régles du JdC - - - - - - diff --git a/OldCodes/ZCracks/CMakeLists.txt b/OldCodes/ZCracks/CMakeLists.txt deleted file mode 100644 index 62b62ebb..00000000 --- a/OldCodes/ZCracks/CMakeLists.txt +++ /dev/null @@ -1,31 +0,0 @@ -# -*- coding: utf-8 -*- -# CONFIGURATION MANAGEMENT OF EDF VERSION -# ====================================================================== -# COPYRIGHT (C) 1991 - 2002 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# -# -# ====================================================================== - - -install ( FILES configuration_ZCRACKS.py monCode_Cata.py prefs.py prefs_ZCRACKS.py properties.py qtEficas_ZCracks.py - DESTINATION ${CMAKE_INSTALL_PREFIX}/ZCracks - ) - - - -### Local Variables: -### mode: cmake -### End: diff --git a/OldCodes/ZCracks/configuration_ZCRACKS.py b/OldCodes/ZCracks/configuration_ZCRACKS.py deleted file mode 100644 index 9a068500..00000000 --- a/OldCodes/ZCracks/configuration_ZCRACKS.py +++ /dev/null @@ -1,43 +0,0 @@ -# -*- coding: utf-8 -*- -# maConfiguration MANAGEMENT OF EDF VERSION -# ====================================================================== -# COPYRIGHT (C) 1991 - 2002 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# -# -# ====================================================================== -""" - Ce module sert pour charger les paramètres de configuration d'EFICAS -""" -# Modules Python -from InterfaceQT4 import configuration -import os - - -class CONFIG(configuration.configBase): - - #----------------------------------- - def __init__(self,appli,repIni): - #----------------------------------- - - self.labels_user=['catalogues','lang'] - self.labels_eficas=['lang','rep_cata','catalogues'] - - configuration.configBase.__init__(self,appli,'.Eficas_monCode') - - -def make_config(appli,rep): - return CONFIG(appli,rep) - diff --git a/OldCodes/ZCracks/mesScripts_ZCRACKS.py b/OldCodes/ZCracks/mesScripts_ZCRACKS.py deleted file mode 100644 index 7fbe08d0..00000000 --- a/OldCodes/ZCracks/mesScripts_ZCRACKS.py +++ /dev/null @@ -1,28 +0,0 @@ - -def view_med(params,appli) : - mcSimp=params[0].object.getChild('cracked_name') - fileName=mcSimp.valeur - import os - if not os.path.isfile(fileName) : - from PyQt4.QtGui import QMessageBox - QMessageBox.warning( None, "Erreur","Le fichier n'existe pas") - return - result,message=appli.importMedFile(fileName) - if result==1 : return - from PyQt4.QtGui import QMessageBox - QMessageBox.warning( None, "Erreur a l import",message) - return - - -# le dictionnaire des commandes a la structure suivante : -# la clef est la commande qui va proposer l action -# puis un tuple qui contient -# - la fonction a appeler -# - le label dans le menu du clic droit -# - un tuple contenant les parametres attendus par la fonction -# - appelable depuis Salome uniquement -) -# - appelable depuis un item valide uniquement -# - toolTip -dict_commandes={ - 'MAILLAGE_RESULTAT':((view_med,"View Result",('item','editor'),False,False,"affiche dans Smesh le fichier med resultat"),), - } diff --git a/OldCodes/ZCracks/monCode_Cata.py b/OldCodes/ZCracks/monCode_Cata.py deleted file mode 100644 index 6ab23c08..00000000 --- a/OldCodes/ZCracks/monCode_Cata.py +++ /dev/null @@ -1,66 +0,0 @@ -from Accas import * - -JdC = JDC_CATA (code = 'ZCrack', - execmodul = None, - ) - -class grma(GEOM): - pass - -class grno(GEOM): - pass - -ONGLET="oui" - -MAILLAGES = PROC(nom='MAILLAGES',op=None, - MAILLAGE_SAIN=FACT(statut='o', - sane_name=SIMP(typ=('Fichier', 'Med Files(*.med);;All Files (*)'),fr= "",ang= "Name of the initial uncracked mesh",statut= "o"), - if_quad=SIMP(typ="I",fr="",ang="1 for quadratic mesh",defaut=0,statut='o',into=[0,1]), - scale=SIMP(typ="R",fr="",ang="",statut='o',defaut=1), - ), - FISSURE=FACT(statut='o', - crack_name=SIMP(typ=('Fichier', 'Med Files(*.med);;All Files (*)',),fr= "",ang= "Name of the crack surface mesh",statut= "o"), - GENERE_FISSURE=FACT( - regles=(AU_MOINS_UN('ELLIPSE','DISQUE'),), - ELLIPSE=FACT( - center=SIMP(typ="R",fr="",ang="",statut='o',min=3,max=3), - normal=SIMP(typ="R",fr="",ang="",statut='o',min=3,max=3), - ra=SIMP(typ="R",fr="",ang="",statut='o'), - rb=SIMP(typ="R",fr="",ang="",statut='o'), - dir=SIMP(typ="R",fr="",ang="",statut='o',min=3,max=3), - ), - DISQUE=FACT( - center=SIMP(typ="R",fr="",ang="",statut='o',min=3,max=3), - normal=SIMP(typ="R",fr="",ang="",statut='o',min=3,max=3), - rayon=SIMP(typ="R",fr="",ang="",statut='o'), - ), - ), - ), - MAILLAGE_RESULTAT=FACT(statut='o', - cracked_name=SIMP(typ=('Fichier', 'Med Files(med);;All Files (*)','Sauvegarde'),fr= "",ang= "Name of the final mesh",statut= "o"), - crack_id=SIMP(typ="I",fr="",val_min=0, defaut=1), - repertoire=SIMP(typ='Repertoire',fr= "Repertoire ",ang= " Directory",statut= "f",), - ), - GROUPES=FACT(statut='f', - regles=(AU_MOINS_UN('elsetNames','fasetNames','lisetNames','nsetNames'),), - elsetNames=SIMP(typ=grma,fr="",ang="names of volume element groups to be kept",min=1,max="**",statut="f"), - fasetNames=SIMP(typ=grma,fr="",ang="names of surface element groups to be kept",min=1,max="**",statut="f"), - lisetNames=SIMP(typ=grma,fr="",ang="names of line element groups to be kept",min=1,max="**",statut="f"), - nsetNames=SIMP(typ=grno,fr="" ,ang="names of node element groups to be kept",min=1,max="**",statut="f"), -) -) - -REMESHING=PROC(nom='REMESHING',op=None, - yams_options=SIMP(typ='TXM',fr="",ang="parameters for yams command line",statut="f"), - gradation=SIMP(typ="R",fr="",ang="gradation remeshing parameter",val_max=2.3,defaut=1.3,statut='o'), - min_size=SIMP(typ="R",fr="",ang="minimal element edges length",statut='o'), - max_size=SIMP(typ="R",fr="",ang="maximal element edges length",statut='o'), - nb_iter=SIMP(typ="I",fr="",ang="number of iterations for remeshing process",defaut=2,statut='o'), - ridge_names=SIMP(typ=grma,fr="",ang="",min=1,max="**",statut="f"), - topo_names=SIMP(typ=grma,fr="",ang="",min=1,max="**",statut="f"), - geom_names=SIMP(typ=grma,fr="",ang="",min=1,max="**",statut="f"), - REMAILLAGE_LOCAL=FACT(statut='f', - elset_radius=SIMP(typ="R",fr="",ang="",statut='o'), - ), - filter_tol=SIMP(typ="R",fr="",ang="filtering tolerance for meshing operations",defaut=1.e-6,statut="f"), -) diff --git a/OldCodes/ZCracks/monCode_Cata.py.V0 b/OldCodes/ZCracks/monCode_Cata.py.V0 deleted file mode 100644 index 8ad40ea4..00000000 --- a/OldCodes/ZCracks/monCode_Cata.py.V0 +++ /dev/null @@ -1,40 +0,0 @@ -from Accas import * - -JdC = JDC_CATA (code = 'ZCrack', - execmodul = None, - ) - -class grma(GEOM): - pass - -class grno(GEOM): - pass - -FILES = PROC(nom='FILES',op=None, - crack_name=SIMP(typ=('Fichier', 'Med Files(*.med);;All Files (*)',),fr= "",ang= "Name of the crack surface mesh",statut= "o"), - sane_name=SIMP(typ=('Fichier', 'Med Files(*.med);;All Files (*)'),fr= "",ang= "Name of the initial uncracked mesh",statut= "o"), - cracked_name=SIMP(typ=('Fichier', 'Med Files(med);;All Files (*)','Sauvegarde'),fr= "",ang= "Name of the final mesh",statut= "o"), -) -PRESERVATION = PROC(nom='PRESERVATION',op=None, - elset_names=SIMP(typ=grma,fr="",ang="names of volume element groups to be kept",min=1,max="**",statut="f"), - faset_names=SIMP(typ=grma,fr="",ang="names of surface element groups to be kept",min=1,max="**",statut="f"), - liset_names=SIMP(typ=grma,fr="",ang="names of line element groups to be kept",min=1,max="**",statut="f"), - nset_names=SIMP(typ=grno,fr="" ,ang="names of node element groups to be kept",min=1,max="**",statut="f"), -) -REMESHING=PROC(nom='REMESHING',op=None, - gradation=SIMP(typ="R",fr="",ang="gradation remeshing parameter",val_max=2.3,defaut=1.3,statut='o'), - min_size=SIMP(typ="R",fr="",ang="minimal element edges length",statut='o'), - max_size=SIMP(typ="R",fr="",ang="maximal element edges length",statut='o'), - nb_iter=SIMP(typ="I",fr="",ang="number of iterations for remeshing process",defaut=2,statut='o'), - if_quad=SIMP(typ="I",fr="",ang="1 for quadratic mesh",defaut=0,statut='o',into=[0,1]), - - REMESHING_ADVANCED=FACT(statut="f", - yams_options=SIMP(typ='TXM',fr="",ang="parameters for yams command line",statut="f"), - filter_tol=SIMP(typ="R",fr="",ang="filtering tolerance for meshing operations",defaut=1.e-6,statut="f"), - grid_max=SIMP(typ="R",fr="",ang="truncation number for meshing operations",defaut=1.e11,statut="f"), - nb_velem=SIMP(typ="I",fr="",ang="number of element layers which size should be fixed to min_size",defaut=3,statut='f'), - if_barsoum=SIMP(typ="I",fr="",ang="element barsoum",defaut=1,statut='f',into=[0,1]), - -) -) - diff --git a/OldCodes/ZCracks/prefs.py b/OldCodes/ZCracks/prefs.py deleted file mode 100644 index d7a65711..00000000 --- a/OldCodes/ZCracks/prefs.py +++ /dev/null @@ -1,22 +0,0 @@ -# Copyright (C) 2007-2012 EDF R&D -# -# 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 -# -code="ZCRACKS" -import sys, os -if os.path.dirname(os.path.abspath(__file__)) not in sys.path : - sys.path.insert(0,os.path.dirname(os.path.abspath(__file__))) diff --git a/OldCodes/ZCracks/prefs_ZCRACKS.py b/OldCodes/ZCracks/prefs_ZCRACKS.py deleted file mode 100644 index 294f19b3..00000000 --- a/OldCodes/ZCracks/prefs_ZCRACKS.py +++ /dev/null @@ -1,42 +0,0 @@ -# -*- coding: utf-8 -*- -# maConfiguration MANAGEMENT OF EDF VERSION -# ====================================================================== -# COPYRIGHT (C) 1991 - 2002 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# -# -# ====================================================================== - -import os,sys -# repIni sert a localiser le fichier editeur.ini -# Obligatoire -repIni=os.path.dirname(os.path.abspath(__file__)) -INSTALLDIR=os.path.join(repIni,'..') -sys.path[:0]=[INSTALLDIR] - - -# lang indique la langue utilisee pour les chaines d'aide : fr ou ang -lang='fr' - -# Codage des strings qui accepte les accents (en remplacement de 'ascii') -encoding='iso-8859-1' -docPath=repIni -fileName="docMonCode.png" -image=1 - -# -catalogues=( - ('monCode','default',os.path.join(repIni,'monCode_Cata.py'),'ZCRACKS','python'), -) diff --git a/OldCodes/ZCracks/properties.py b/OldCodes/ZCracks/properties.py deleted file mode 100644 index 1d328a46..00000000 --- a/OldCodes/ZCracks/properties.py +++ /dev/null @@ -1,24 +0,0 @@ -#@ MODIF properties Accas DATE 11/06/2008 AUTEUR aster M.ADMINISTRATEUR -# RESPONSABLE D6BHHHH J-P.LEFEBVRE -# ====================================================================== -# COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# IDENTIFICATION DU GESTIONNAIRE DE COMMANDE ACCAS A PARTIR -# DE LA VERSION DU CODE_ASTER ASSOCIE -#---------------------------------------------------------------------- -version = "1.2" -date = "25/05/2010" -exploit = False diff --git a/OldCodes/ZCracks/qtEficas_ZCracks.py b/OldCodes/ZCracks/qtEficas_ZCracks.py deleted file mode 100755 index 7bbb62b3..00000000 --- a/OldCodes/ZCracks/qtEficas_ZCracks.py +++ /dev/null @@ -1,33 +0,0 @@ -#!/usr/bin/env python -# -*- coding: utf-8 -*- -# Copyright (C) 2007-2012 EDF R&D -# -# 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 -# -""" - Ce module sert a lancer EFICAS configure pour Code_Aster -""" -# Modules Python -# Modules Eficas - -import sys,os -sys.path.append(os.path.join(os.path.abspath(os.path.dirname(__file__)),'..')) - -from PyQt4.QtCore import * -import prefs -from InterfaceQT4 import eficas_go -eficas_go.lanceEficas(code=prefs.code) diff --git a/OldCodes/ts/Telemac_Cata.py b/OldCodes/ts/Telemac_Cata.py deleted file mode 100644 index b3f63f6f..00000000 --- a/OldCodes/ts/Telemac_Cata.py +++ /dev/null @@ -1,2666 +0,0 @@ -# coding: utf-8 - -from Accas import * -class DateJJMMAAAA: - def __init__(self): - self.ntuple=3 - - def __convert__(self,valeur): - if type(valeur) == types.StringType: return None - if len(valeur) != self.ntuple: return None - return valeur - - def info(self): - return "Date : jj/mm/aaaa " - - __repr__=info - __str__=info - -import types -class Tuple: - def __init__(self,ntuple): - self.ntuple=ntuple - - def __convert__(self,valeur): - if type(valeur) == types.StringType: - return None - if len(valeur) != self.ntuple: - return None - return valeur - - def info(self): - return "Tuple de %s elements" % self.ntuple - - - -JdC = JDC_CATA (code = 'TELEMAC', - execmodul = None, - ) -# ====================================================================== -# Catalog entry for the MAP function : c_pre_interfaceBody_mesh -# ====================================================================== - -# ----------------------------------------------------------------------- -INITIALIZATION = PROC(nom = "INITIALIZATION",op = None, -# ----------------------------------------------------------------------- - - fr = "Initialisation des fichiers d'entrée et de sortie", - ang = "Input and Output files initialization", - UIinfo = { "groupes" : ( "CACHE", )}, - #UIinfo = { "groupes" : ( "iiii", )}, - -# ------------------------------------ - Title = SIMP( statut = 'o',typ = 'TXM', -# ------------------------------------ - fr = 'Titre du cas etudie. Ce titre figurera sur les dessins.', - ang = 'Title of the case being considered. This title shall be marked on the drawings.'), - #Working_Directory = SIMP( statut='o',typ='Repertoire',defaut='/tmp'), - -# ------------------------------------ - Input_Files = FACT(statut='o', -# ------------------------------------ - - # Dictionary = SIMP( statut='o', typ = ('Fichier', 'Dico (*.dico);;All Files (*)',), - # defaut='telemac2d.dico', - # fr='Dictionnaire des mots cles.', ang='Key word dictionary.',), -# PN : le mot cle doit etre dans le dictionnaire et repris du catalogue mais n -# est pas modifiable - -# ------------------------------------ - Geometry_File_Format = SIMP( statut = 'o', typ = 'TXM', -# ------------------------------------ - into = ['Serafin', 'MED', 'SerafinD'], - defaut = 'Serafin', - fr = 'Format du fichier de geometrie. Les valeurs possibles sont : \n \ - - SERAFIN : format standard simple precision pour Telemac; \n \ - - SERAFIND: format standard double precision pour Telemac; \n \ - - MED : format MED base sur HDF5', - ang = 'Results file format. Possible values are: \n\ - - SERAFIN : classical single precision format in Telemac;\n\ - - SERAFIND: classical double precision format in Telemac;\n\ - - MED : MED format based on HDF5',) , - - b_geofile_med = BLOC (condition = "Geometry_File_Format == 'MED'", -# ------------------------------------ - Geometry_File = SIMP( statut = 'o', -# ------------------------------------ -# PNPNPN Question Soizic --> pourqoi Geo Files -# idem pour Bottom_Topography_File - typ = ('Fichier',' Med Files (*.med);;All Files (*)',), - fr = 'Nom du fichier contenant le maillage du calcul a realiser.', - ang = 'Name of the file containing the mesh. \n\ -This file may also contain the topography and the friction coefficients.'), - - ), - b_geofile_serafin = BLOC (condition = "Geometry_File_Format in ( 'Serafin','SerafinD')", -# ------------------------------------ - Geometry_File = SIMP( statut = 'o', -# ------------------------------------ -# PNPNPN Question Soizic --> pourqoi Geo Files -# idem pour Bottom_Topography_File - typ = ('Fichier', 'Geo Files (*.geo);;All Files (*)',), - fr = 'Nom du fichier contenant le maillage du calcul a realiser.', - ang = 'Name of the file containing the mesh. \n\ -This file may also contain the topography and the friction coefficients.'), - - ), - #Steering_File = SIMP( statut = 'o', typ = ('Fichier', 'Steering Files (*.cas);;All Files (*)',),), - - -# ------------------------------------ - Fortran_File = SIMP(statut = 'f', -# ------------------------------------ - typ = ('Fichier', 'Fortran files (*.f);;All Files (*)'), - fr = 'Nom du fichier a soumettre', - ang = 'Name of FORTRAN file to be submitted',), - -# ------------------------------------ - Bottom_Topography_File = SIMP( statut = 'f', -# ------------------------------------ - typ = ('Fichier', 'Geo Files (*.geo);;All Files (*)',), - fr = "Nom du fichier eventuel contenant la bathymetrie associee au maillage. \ -Si ce mot-cle est utilise; c'est cette bathymetrie qui sera utilisee pour le calcul.", - ang = 'Name of the possible file containing the bathymetric data.\ -Where this keyword is used, these bathymetric data shall be used in the computation.', - ), - -# ------------------------------------ - Bottom_Smoothings = SIMP( statut = 'o',typ = 'I', defaut = 0 , -# ------------------------------------ - fr = 'Nombre de lissages effectues sur la topographie. chaque lissage, effectue a l aide dune matrice de masse, est conservatif.\n\ -Utilise lorsque les donnees de bathymetrie donnent des resultats trop irreguliers apres interpolation.', - ang = 'Number of smoothings on bottom topography. each smoothing is mass conservative. \n\ -to be used when interpolation of bathymetry on the mesh gives very rough results.',), - -# ------------------------------------ - Boundary_Conditions_File = SIMP( statut = 'o', -# ------------------------------------ - typ = ('Fichier', 'Boundary Condition (*.cli);;All Files (*)',), - fr = 'Nom du fichier contenant les types de conditions aux limites. Ce fichier est rempli de facon automatique\n\ -par le mailleur au moyen de couleurs affectees aux noeuds des frontieres du domaine de calcul.', - ang = 'Name of the file containing the types of boundary conditions. This file is filled automatically\n\ -by the mesh generator through through colours that are assigned to the boundary nodes.',), - - -# ------------------------------------ - Validation = FACT( statut = 'f', -# ------------------------------------ -#PNPN--> creer le Mot_clef simple Validation si ce fact existe - -# ------------------------------------ - Reference_File_Format = SIMP( statut = 'o', -# ------------------------------------ - typ = 'TXM', - into = ['Serafin','MED','SerafinD'], - defaut = 'Serafin', - fr = 'Format du fichier de resultats. Les valeurs possibles sont : \n\ - - SERAFIN : format standard simple precision pour Telemac; \n\ - - SERAFIND: format standard double precision pour Telemac; \n\ - - MED : format MED base sur HDF5' , - ang = 'Results file format. Possible values are:\n \ - - SERAFIN : classical single precision format in Telemac;\n\ - - SERAFIND: classical double precision format in Telemac; \n\ - - MED : MED format based on HDF5' ,), - -# ------------------------------------ - Reference_File = SIMP( statut = 'o', -# ------------------------------------ - typ = ('Fichier', 'Reference File (*.ref);;All Files (*)',), - fr = 'Fichier de resultats de reference pour la validation. Les resultats a placer dans ce fichier seront a ecrire sur le canal 22.', - ang = 'Binary-coded result file for validation. The results to be entered into this file shall be written on channel 22.',), - - ), # Fin de Validation - -# ------------------------------------ - Formatted_And_Binary_Files = FACT( statut = 'f', -# ------------------------------------ - -# ------------------------------------ - Formatted_Data_File_1 = SIMP( statut = 'f', typ = ('Fichier', 'formated File (*.txt);;All Files (*)',), -# ------------------------------------ - fr = "Fichier de donnees formate mis a la disposition de l''utilisateur. \n\ -Les donnees de ce fichier seront a lire sur le canal 26.", - ang = 'Formatted data file made available to the user.\n\ -The data in this file shall be read on channel 26.',), - -# ------------------------------------ - Formatted_Data_File_2 = SIMP( statut = 'f', typ = ('Fichier', 'formated File (*.txt);;All Files (*)',), -# ------------------------------------ - fr = "Fichier de donnees formate mis a la disposition de l'utilisateur. \n\ -Les donnees de ce fichier seront a lire sur le canal 27.", - ang = "Formatted data file made available to the user.\n\ -The data in this file shall be read on channel 27.",), - -# ------------------------------------ - Binary_Data_File_1 = SIMP( statut = 'f', typ = ('Fichier', 'All Files (*)',), -# ------------------------------------ - fr = 'Fichier de donnees code en binaire mis a la disposition de l utilisateur. \n\ -Les donnees de ce fichier seront a lire sur le canal 24.', - ang = 'Binary-coded data file made available to the user.\n\ -The data in this file shall be read on channel 24.',), - -# ------------------------------------ - Binary_Data_File_2 = SIMP( statut = 'f', typ = ('Fichier', 'All Files (*)',), -# ------------------------------------ - fr = 'Fichier de donnees code en binaire mis a la disposition de l utilisateur.\n\ -Les donnees de ce fichier seront a lire sur le canal 25.', - ang = 'Binary-coded data file made available to the user. \n\ -The data in this file shall be read on channel 25.',), - - ), # fin Formatted_And_Binary_Files - - ), # Fin de InputFile - - # ----------------------------------------------------------------------- - Initial_State = FACT(statut='o', - # ----------------------------------------------------------------------- - -# ------------------------------------ - Initial_Conditions = SIMP(statut = 'o',typ = 'TXM', -# ------------------------------------ - into = ['Zero elevation','Constant elevation','Zero depth','Constant depth','Special','TPXO satellite altimetry'], - defaut = 'Zero elevation', - fr = "Permet de definir les conditions initiales sur les hauteurs d'eau. Les valeurs possibles sont :\n\ - - COTE NULLE. Initialise la cote de surface libre a 0. \nLes hauteurs d'eau initiales sont alors retrouvees en faisant la difference entre les cotes de surface libre et du fond. \n\ - - COTE CONSTANTE . Initialise la cote de surface libre a la valeur donnee par le mot-cle COTE INITIALE. Les hauteurs d'eau initiales sont calculees comme precedemment.\n\ - - HAUTEUR NULLE .Initialise les hauteurs d'eau a 0. \n\ - - HAUTEUR CONSTANTE. Initialise les hauteurs d'eau a la valeur donnee par le mot-cle HAUTEUR INITIALE. \n\ - - PARTICULIERES. Les conditions initiales sur la hauteur d'eau doivent etre precisees dans le sous-programme CONDIN. \n\ - - ALTIMETRIE SATELLITE TPXO. Les conditions initiales sur la hauteur d'eau et les vitesses sont etablies sur \n\ - la base des donnees satellite TPXO dont les 8 premiers constistuents ont ete extraits et sauves dans le fichier\n\ - BASE DE DONNEES DE MAREE." , - ang = 'Makes it possible to define the initial conditions with the water depth. The possible values are : \n\ - - ZERO ELEVATION. Initializes the free surface elevation to 0. \n The initial water depths are then found by computing the difference between the free surface and the bottom. \n\ - - CONSTANT ELEVATION. Initializes the water elevation to the value given by the keyword \n\ - - INITIAL ELEVATION. The initial water depths are computed as in the previous case. \n\ - - ZERO DEPTH. Initializes the water depths to 0. \n\ - - CONSTANT DEPTH. Initializes the water depths to the value givenby the key-word INITIAL DEPTH. \n\ - - SPECIAL. The initial conditions with the water depth should be stated in the CONDIN subroutine. \n\ - - TPXO SATELITE ALTIMETRY. The initial conditions on the free surface and velocities are established from the TPXO satellite program data,\n the harmonic constituents of which are stored in the TIDE DATA BASE file.', ), - -# ------------------------------------ - b_initial_elevation = BLOC (condition = "Initial_Conditions == 'Constant elevation'", -# ------------------------------------ -# ------------------------------------ - Initial_Elevation = SIMP(statut = 'o',typ = 'R', -# ------------------------------------ - fr = 'Valeur utilisee avec l''option : CONDITIONS INITIALES - COTE CONSTANTE', - ang = 'Value to be used with the option : INITIAL CONDITIONS -CONSTANT ELEVATION' ), - ) , # fin b_initial_elevation - -# ------------------------------------ - b_initial_depth = BLOC (condition = "Initial_Conditions == 'Constant depth'", -# ------------------------------------ -# ------------------------------------ - Initial_Depth = SIMP(statut = 'o',typ = 'R', -# ------------------------------------ - fr = 'Valeur utilisee avec l''option : CONDITIONS INITIALES :-HAUTEUR CONSTANTE-', - ang = 'Value to be used along with the option: INITIAL CONDITIONS -CONSTANT DEPTH-' ), - ),# fin b_initial_depth - -# ------------------------------------ - b_special = BLOC (condition = "Initial_Conditions == 'Special'", -# ------------------------------------ -# ------------------------------------ - Consigne = SIMP(statut = "o",homo = 'information',typ = "TXM", -# ------------------------------------ - defaut = "The initial conditions with the water depth should be stated in the CONDIN subroutine"), - ), # fin b_special - -#PNPN il faut changer la condition pour que cela soit dans maree. il faut une position = global_jdc et remonter # cela -# ------------------------------------ - b_initial_TPXO = BLOC (condition = "Initial_Conditions == 'TPXO satellite altimetry'", -# ------------------------------------ -# ------------------------------------ - Ascii_Database_For_Tide = SIMP( statut = 'o', -# ------------------------------------ - typ = ('Fichier', 'All Files (*)',), - fr = 'Base de donnees de constantes harmoniques tirees du fichier du modele de maree', - ang = 'Tide data base of harmonic constituents extracted from the tidal model file',), - ), # fin b_initial_TPXO - - ), # fin Initial_State - - -# ------------------------------------ - Computation_Continued = SIMP( statut = 'o',typ = bool,defaut = False,position = "global_jdc"), -# ------------------------------------ - -# ------------------------------------ - b_comput_con = BLOC(condition = 'Computation_Continued == True', - Computation_Continued_Settings = FACT(statut = 'o', - -# ------------------------------------ - Previous_Computation_File_Format = SIMP( statut = 'o',typ = 'TXM', -# ------------------------------------ - into = ['Serafin','MED','SerafinD'], - defaut = 'Serafin', - fr = 'Format du fichier de resultats du calcul precedent. Les valeurs possibles sont : \n\ - - SERAFIN : format standard simple precision pour Telemac; \n\ - - SERAFIND: format standard double precision pour Telemac; \n\ - - MED : format MED base sur HDF5', - ang = 'Previous computation results file format. Possible values are: \n\ - - SERAFIN : classical single precision format in Telemac; \n\ - - SERAFIND: classical double precision format in Telemac; \n\ - - MED : MED format based on HDF5',), - -# ------------------------------------ - Previous_Computation_File = SIMP( statut = 'o', -# ------------------------------------ - typ = ('Fichier', 'Computation File (*.res);;All Files (*)',), - fr = "Nom d'un fichier contenant les resultats d'un calcul precedent realise sur le meme maillage \n\ - et dont le dernier pas de temps enregistre va fournir les conditions initiales pour une suite de de calcul.", - ang = 'Name of a file containing the results of an earlier computation which was made on the same mesh.\n\ - The last recorded time step will provid the initial conditions for the new computation.', - ), -# ------------------------------------ - Initial_Time_Set_To_Zero = SIMP(typ = bool, statut = 'o', -# ------------------------------------ - fr = 'Remet le temps a zero en cas de suite de calcul', - ang = 'Initial time set to zero in case of restart', - defaut = "False"), - -# ------------------------------------ - Record_Number_For_Restart = SIMP(typ = 'I', statut = 'o', defaut = 0, -# ------------------------------------ - fr = "numero de l'enregistrement de depart dans le fichier du calcul precedent. 0 signifie qu'on prend le dernier enregistrement", - ang = "record number to start from in the previous computation file, 0 for last record" ), - - ), - ),# fin BLOC b_comput_con - -# ------------------------------------ - Coupling = FACT( statut = 'o', -# ------------------------------------ -# PNPNPN Attention 1 seul choix possible - fr = 'Liste des codes avec lesquels on couple Telemac-2D', - ang = 'List of codes to be coupled with Telemac-2D', - -# ------------------------------------ - Sisyphe = SIMP(statut = 'o',typ = bool,defaut = False , -# ------------------------------------ - fr = 'couplage interne avec Sisyphe', - ang = 'internal coupling with Sisyphe'), - -# ------------------------------------ - Tomawac = SIMP(statut = 'o',typ = bool,defaut = False, -# ------------------------------------ - fr = 'couplage interne avec Tomawac', - ang = 'internal coupling with Tomawac'), - -# ------------------------------------ - Delwacq = SIMP(statut = 'o',typ = bool,defaut = False, -# ------------------------------------ - fr = 'couplage interne avec Delwacq', - ang = 'internal coupling with Delwacq'), -# PNPNPN Attention : il faut des mots cles si Delwacq. a voir avec Soizic -# On verra apres - - ), # fin Coupling - -# ------------------------------------ - Parallel_Computation = SIMP(statut = 'o',typ = 'TXM', -# ------------------------------------ -# Ce mot clef n existe pas dans le dico - into = ['Sequentiel','Parallel'], - defaut = 'Sequentiel',), - -# ------------------------------------ - b_para = BLOC(condition = 'Parallel_Computation == "Parallel"', -# ------------------------------------ -# ------------------------------------ - Parallel_Processors = SIMP(statut = 'o',typ = 'I', -# ------------------------------------ - val_min = 0,defaut = 1, - fr = 'NOMBRE DE PROCESSEURS EN CALCUL PARALLELE \n\ -0 : 1 machine, compilation sans bibliotheque de parallelisme \n\ -1 : 1 machine, compilation avec bibliotheque de parallelisme \n\ -2 : 2 processeurs ou machines en parallele etc... ', - ang = 'NUMBER OF PROCESSORS FOR PARALLEL PROCESSING \n\ -0 : 1 machine, compiling without parallel library \n\ -1 : 1 machine, compiling with a parallel library \n\ -2 : 2 processors or machines in parallel'), - ), # fin b_para - -)# INITIALISATION - -# ----------------------------------------------------------------------- -TIDE_PARAMETERS = PROC(nom = "TIDE_PARAMETERS",op = None, -# ----------------------------------------------------------------------- -# ------------------------------------ - Inputs_Outputs_For_Tide = FACT( statut = 'o', -# ------------------------------------ - -# ------------------------------------ - Harmonic_Constants_File = SIMP( statut = 'o', -# ------------------------------------ - typ = ('Fichier', 'All Files (*)',), - fr = 'Constantes harmoniques extraites du fichier du modele de maree', - ang = 'Harmonic constants extracted from the tidalmodel file',), - -# ------------------------------------ - Tidal_Model_File = SIMP( statut = 'o', -# ------------------------------------ - typ = ('Fichier', 'All Files (*)',), - fr = 'Fichier de geometrie du modele dont sont extraites les constantes harmoniques', - ang = 'Geometry file of the model from which harmonic constituents are extracted',), - - ), # Fin Inputs_Outputs_For_Tide - -# ------------------------------------ - Location = FACT( statut = 'o', -# ------------------------------------ -# ------------------------------------ - Geographic_System = SIMP(statut = 'o',typ = 'TXM', -# ------------------------------------ - into = ["Defined by user", "WGS84 longitude/latitude in real degrees", "WGS84 nothern UTM",\ - "WGS84 southern UTM","Lambert", "Mercator",], - defaut = "Defined by user", - fr = 'Systeme de coordonnees geographiques dans lequel est construit le modele numerique.', - ang = 'Geographic coordinates system in which the numerical model is built.',), - -# ------------------------------------ - b_geo_plan = BLOC(condition = "Geographic_System in ['WGS84 nothern UTM','WGS84 southern UTM','Lambert']", -# ------------------------------------ - -# ------------------------------------ - Zone_Number_In_Geographic_System = SIMP(statut = 'f',typ = 'TXM', -# ------------------------------------ - into = [ 'Lambert 1 north', 'Lambert 2 center', 'Lambert 3 south', \ - 'Lambert 4 corsica', 'Lambert 2 extended', 'UTM zone,E.G.'], - fr = "Numero de zone (fuseau ou type de projection) lors de l'utilisation d'une projection plane.\n \ -Indiquer le systeme geographique dans lequel est construit le modele numerique avec le mot-cle SYSTEME GEOGRAPHIQUE", - ang = 'Number of zone when using a plane projection. \n\ -Indicate the geographic system in which the numerical model is built with the keyword GEOGRAPHIC SYSTEM'), - ), # Fin b_geo_plan - ), # Fin Location - -# ------------------------------------ - Physical_Parameters = FACT(statut = 'o', -# ------------------------------------ - -# ------------------------------------ - Tide_Generating_Force = SIMP(statut = 'o', -# ------------------------------------ - typ = bool, defaut = False), - -# ------------------------------------ - b_Tide = BLOC(condition = "Tide_Generating_Force == True", -# ------------------------------------ -# ------------------------------------ - Longitude_Of_Origin_Point = SIMP(typ = 'R', -# ------------------------------------ - statut = 'o', defaut = 48., - fr = 'Fixe la valeur de la longitude du point origine du modele, lors de l utilisation de la force generatrice de la maree.', - ang = 'Give the value of the longitude of the origin point of the model, when taking into account of the tide generator force.',), - -# ------------------------------------ - Tidal_Data_Base = SIMP(statut = 'o',typ = 'TXM', -# ------------------------------------ -# Soizic . Il faudrait une consigne ? avec des blocs ? -# en suspens pour JMJ - into = [ "JMJ", "TPXO", "Miscellaneous (LEGOS-NEA, FES20XX, PREVIMER...)",], - fr = 'Pour JMJ, renseigner la localisation du fichier bdd_jmj et geofin dans les mots-cles BASE DE DONNEES DE MAREE \n\ -et FICHIER DU MODELE DE MAREE. Pour TPXO, LEGOS-NEA, FES20XX et PREVIMER, l utilisateur doit telecharger les fichiers \n\ -de constantes harmoniques sur internet', - ang = 'For JMJ, indicate the location of the files bdd_jmj and geofin with keywords TIDE DATA BASE and TIDAL MODEL FILE.\n\ -For TPXO, LEGOS-NEA, FES20XX and PREVIMER, the user has to download files of harmonic constituents on the internet',), - -# ------------------------------------ - b_tpxo = BLOC(condition = "Tidal_Data_Base == 'TPXO'", -# ------------------------------------ - -# ------------------------------------ - Minor_Constituents_Inference = SIMP( statut = 'o',typ = bool, -# ------------------------------------ - defaut = False , - fr = 'Interpolation de composantes harmoniques mineures a partir de celles lues dans les \n\ -fichiers d entrees lies aux mots-cles BASE BINAIRE 1 DE DONNEES DE MAREE et BASE BINAIRE 2 DE DONNEES DE MAREE', - ang = 'Inference of minor constituents from the one read in input files linked to \n\ -keywords BINARY DATABASE 1 FOR TIDE and BINARY DATABASE 2 FOR TIDE',), - - - -# ------------------------------------ - Binary_Database_1_For_Tide = SIMP( statut = 'o', -# ------------------------------------ - typ = ('Fichier', '(All Files (*),)',), - fr = 'Base de donnees binaire 1 tiree du fichier du modele de maree.\n\ -Dans le cas des donnees satellitaires de TPXO, ce fichier correspond aux donnees de niveau d''eau, par exemple h_tpxo7.2', - ang = 'Binary database 1 extracted from the tidal model file.\n\ -In the case of the TPXO satellite altimetry model, this file should be for free surface level, for instance h_tpxo7.2',), - -# ------------------------------------ - Binary_Database_2_For_Tide = SIMP( statut = 'o', -# ------------------------------------ - typ = ('Fichier', '(All Files (*),)',), - fr= 'Base de donnees binaire 2 tiree du fichier du modele de maree.\n\ -Dans le cas des donnees satellitaires de TPXO, ce fichier correspond aux donnees de vitesse de marrees, par exemple u_tpxo7.2', - ang = 'Binary database 2 extracted from the tidal model file.\n\ -In the case of the TPXO satellite altimetry model, this file should be for tidal velocities, for instance u_tpxo7.2' ), - - ),#fin du bloc b_tpxo - ), # Fin du Bloc b_Tide - -# ------------------------------------ - Option_For_Tidal_Boundary_Conditions = SIMP( statut = 'o', -# ------------------------------------ - typ = 'TXM', defaut = 'No tide', - into = ['No tide', 'Real tide (recommended methodology)', 'Astronomical tide', \ - 'Mean spring tide', 'Mean tide', 'Mean neap tide', \ - 'Astronomical neap tide', 'Real tide (methodology before 2010)'],), - -# ------------------------------------ - b_Option_B = BLOC(condition = 'Option_For_Tidal_Boundary_Conditions!= "No tide"', -# ------------------------------------ -# ------------------------------------ - Coefficient_To_Calibrate_Tidal_Range = SIMP(statut = 'o', -# ------------------------------------ - typ = 'R', defaut = 1., - fr = 'Coefficient pour ajuster le marnage de l''onde de maree aux frontieres maritimes', - ang = 'Coefficient to calibrate the tidal range of tidal wave at tidal open boundary conditions'), - -# ------------------------------------ - Coefficient_To_Calibrate_Tidal_Velocities = SIMP(statut = 'o', -# ------------------------------------ - typ = 'R', defaut = 999999, - fr = 'Coefficient pour ajuster les composantes de vitesse de l''onde de maree aux frontieres maritimes.\n\ -La valeur par defaut 999999. signifie que c''est la racine carree du Coefficient_De_Calage_Du_Marnage qui est prise', - ang = 'Coefficient to calibrate the tidal velocities of tidal wave at tidal open boundary conditions.\n\ - Default value 999999. means that the square root of Coefficient_To_Calibrate_Tidal_Range is taken'), - -# ------------------------------------ - Coefficient_To_Calibrate_Sea_Level = SIMP(statut = 'o',typ = 'R', -# ------------------------------------ - defaut = 0., - fr = 'Coefficient pour ajuster le niveau de mer', - ang = 'Coefficient to calibrate the sea level'), - ), # fin b_Option_B - - ), #fin Physical_Parameters -) # Fin TIDE_PARAMETERS - -# ----------------------------------------------------------------------- -BOUNDARY_CONDITIONS = PROC(nom = "BOUNDARY_CONDITIONS",op = None, -# ----------------------------------------------------------------------- - fr = 'On donne un ensemble de conditions par frontiere liquide', - ang = 'One condition set per liquid boundary is given', - UIinfo = { "groupes" : ( "CACHE", )}, - #UIinfo = { "groupes" : ( "iiii", )}, - # Dans l ideal il faut aller regarder selon les groupes dans le fichier med - # en sortie il faut aller chercher le .cli qui va bien - #Liquid_Boundaries = FACT(statut = 'f',max = '**', - # Options = SIMP(statut = 'f',typ = 'I',into = ['classical boundary conditions','Thompson method based on characteristics']) - # Prescribed_Flowrates = SIMP(statut = 'f',typ = 'R'), - # Prescribed_Elevations = SIMP(statut = 'f',typ = 'R'), - # Prescribed_Velocity = SIMP(statut = 'f',typ = 'R'), - # ), - -# Il va falloir une "traduction dans le langage du dico" -# Il faut seulement l un des 3 - -# ------------------------------------ - Liquid_Boundaries = FACT(statut = 'o',max = '**', -# ------------------------------------ - -# ------------------------------------ - Options = SIMP(statut = 'f',typ = 'I', -# ------------------------------------ - into = ['Classical boundary conditions','Thompson method based on characteristics'], - fr = 'On donne 1 entier par frontiere liquide', - ang = 'One integer per liquid boundary is given',), - -# ------------------------------------ - Type_Condition = SIMP(statut = 'o',typ = 'TXM', -# On ajoute le type pour rendre l 'ihm plus lisible -# mais ce mot-cle n existe pas dans le dico -# ------------------------------------ - into = ['Prescribed Flowrates', 'Prescribed Elevations', 'Prescribed Velocity'],), - -# ------------------------------------ - b_Flowrates = BLOC (condition = "Type_Condition == 'Prescribed Flowrates'", -# ------------------------------------ -# ------------------------------------ - Prescribed_Flowrates = SIMP(statut = 'o', -# ------------------------------------ - typ = 'R', - fr = ' Valeurs des debits imposes aux frontieres liquides entrantes.\n\ -Lire la partie du mode d''emploi consacree aux conditions aux limites', - ang = 'Values of prescribed flowrates at the inflow boundaries.\n\ -The section about boundary conditions is to be read in the manual'), - ), # fin b_Flowrates - -# ------------------------------------ - b_Elevations = BLOC (condition = "Type_Condition == 'Prescribed Elevations'", -# ------------------------------------ -# ------------------------------------ - Prescribed_Elevations = SIMP(statut = 'o',typ = 'R', -# ------------------------------------ - fr = 'Valeurs des cotes imposees aux frontieres liquides entrantes.\n\ -Lire la partie du mode d''emploi consacree aux conditions aux limites', - ang = 'Values of prescribed elevations at the inflow boundaries.\n\ -The section about boundary conditions is to be read in the manual'), - ), # fin b_Elevations - -# ------------------------------------ - b_Velocity = BLOC (condition = "Type_Condition == 'Prescribed Velocity'", -# ------------------------------------ -# ------------------------------------ - Prescribed_Velocities = SIMP(statut = 'o',typ = 'R', -# ------------------------------------ - fr = 'Valeurs des vitesses imposees aux frontieres liquides entrantes.\n\ -Lire la partie du mode d''emploi consacree aux conditions aux limites', - ang = 'Values of prescribed velocities at the liquid inflow boundaries.\n\ -Refer to the section dealing with the boundary conditions'), - ), # fin b_Velocity - - ), # fin des Liquid_Boundaries - -# ------------------------------------ - Liquid_Boundaries_File = SIMP( statut = 'f', -# ------------------------------------ - typ = ('Fichier', 'All Files (*)',), - fr = 'Fichier de variations en temps des conditions aux limites.\n\ -Les donnees de ce fichier seront a lire sur le canal 12.', - ang = 'Variations in time of boundary conditions. Data of this file are read on channel 12.', - ), - - -#PNPN Attention dans le Dico STAGE-DISCHARGE CURVES -#PNPN regarder le document de reference pour changer non programme -# ------------------------------------ - Stage_Discharge_Curves = SIMP(statut = 'f',typ = 'TXM', -# ------------------------------------ - into = ["No one","Z(Q)","Q(Z)"], - fr = 'Indique si une courbe de tarage doit etre utilisee pour une frontiere', - ang = 'Says if a discharge-elevation curve must be used for a given boundary',), - -# ------------------------------------ - b_discharge_curve = BLOC (condition = "Stage_Discharge_Curves != 'no'", -# ------------------------------------ -# ------------------------------------ - Stage_Discharge_Curves_File = SIMP( statut = 'f', -# ------------------------------------ - typ = ('Fichier', 'All Files (*)',), - fr = 'Nom du fichier contenant les courbes de tarage', - ang = 'Name of the file containing stage-discharge curves',), - ), # fin b_discharge_curve - -# ------------------------------------ - Elements_Masked_By_User = SIMP(statut = 'o',typ = bool, -# ------------------------------------ - defaut = False, - fr = 'Si oui remplir le sous-programme maskob', - ang = 'if yes rewrite subroutine maskob',), - -# ------------------------------------ - maskob = BLOC (condition = 'Elements_Masked_By_User == True', -# ------------------------------------ -# ------------------------------------ - Consigne = SIMP(statut = "o",homo = 'information',typ = "TXM", -# ------------------------------------ - defaut = "Remplir le sous-programme maskob"), - ) # fin maskob - -) # fin Boundary_Conditions - -# ----------------------------------------------------------------------- -NUMERICAL_PARAMETERS = PROC(nom = "NUMERICAL_PARAMETERS",op = None, -# ----------------------------------------------------------------------- - - UIinfo = { "groupes" : ( "CACHE", )}, - #UIinfo = { "groupes" : ( "iiii", )}, - -# ------------------------------------ - Equations = SIMP(statut = 'o',typ = 'TXM', -# ------------------------------------ - into = ['Saint-Venant EF','Saint-Venant VF','Boussinesq'], - defaut = 'Saint-Venant EF', - fr = 'Choix des equations a resoudre', - ang = 'Choice of equations to solve',), - -# ------------------------------------ - Treatment_Of_The_Linear_System = SIMP(statut = 'o', typ = 'TXM', -# ------------------------------------ - into = ["Coupled", "Wave equation"], - defaut = "Coupled",), - -# ------------------------------------ - Finite_Volume_Scheme = SIMP( statut = 'o',typ = 'TXM', -# ------------------------------------ - into = [ "Roe scheme", "Kinetic order 1", "Kinetic order 2", "Zokagoa scheme order 1",\ - "Tchamen scheme order 1", "HLLC scheme order 1", "WAF scheme order 2"], - defaut = "Kinetic order 1",), - -# ------------------------------------ - Solver_Definition = FACT(statut = 'o', -# ------------------------------------ - -# ------------------------------------ - Solver = SIMP(statut = 'o',typ = 'TXM', -# ------------------------------------ - into = ["Conjugate gradient", "Conjugate residual","Conjugate gradient on a normal equation",\ - "Minimum error", "CGSTAB", "GMRES", "Direct",], - fr = 'Permet de choisir le solveur utilise pour la resolution de l''etape de propagation. \n\ -Toutes les methodes proposees actuellement s''apparentent au Gradient Conjugue. Ce sont :\n\ - 1 : gradient conjugue 2 : residu conjugue 3 : gradient conjugue sur equation normale \n\ - 4 : erreur minimale 5 : gradient conjugue carre (non programme) 6 : gradient conjugue carre stabilise (cgstab)\n\ - 7 : gmres (voir aussi option du solveur) 8 : direct', - ang = 'Makes it possible to select the solver used for solving the propagation step.\n\ -All the currently available methods are variations of the Conjugate Gradient method. They are as follows: \n\ -1: conjugate gradient 2: conjugate residual 3: conjugate gradient on a normal equation\n\ -4: minimum error 5: conjugate gradient squared (not implemented) 6: conjugate gradient squared stabilised (cgstab) \n\ -7: gmres (see option for solver) 8: direct',), - -# ------------------------------------ - b_gmres = BLOC (condition = "Solver == 'GMRES'", -# ------------------------------------ -# ------------------------------------ - Solver_Option = SIMP(statut = 'o',typ = 'I', defaut = 2, val_min = 2,val_max = 15, -# ------------------------------------ - fr = 'la dimension de l''espace de KRILOV', - ang = 'dimension of the KRYLOV space',), - ), # fin b_gmres - -# ------------------------------------ - Solver_Accuracy = SIMP(statut = 'o',typ = 'R', defaut = 1e-4, -# ------------------------------------ - fr = 'Precision demandee pour la resolution de l''etape de propagation (cf. Note de principe).', - ang = 'Required accuracy for solving the propagation step (refer to Principle note).',), - -# ------------------------------------ - Maximum_Number_Of_Iterations_For_Solver = SIMP(statut = 'o',typ = 'I', defaut = 100, -# ------------------------------------ - fr = 'Les algorithmes utilises pour la resolution de l''etape de propagation etant iteratifs, \n\ -il est necessaire de limiter le nombre d''iterations autorisees.\n\ -Remarque : un maximum de 40 iterations par pas de temps semble raisonnable.', - ang = 'Since the algorithms used for solving the propagation step are iterative, \ -the allowed number of iterations should be limited.\n\ -Note: a maximum number of 40 iterations per time step seems to be reasonable.',), - - ), # fin Solver - -# ------------------------------------ - Linearity = FACT(statut = 'f', -# ------------------------------------ -# ------------------------------------ - Continuity_Correction = SIMP(typ = bool, statut = 'o', -# ------------------------------------ - defaut = False, - fr = 'Corrige les vitesses sur les points avec hauteur imposee ou l equation de continuite n a pas ete resolue', - ang = 'Correction of the velocities on points with a prescribed elevation, where the continuity equation has not been solved',), - - ), # Fin Linearity - -# ------------------------------------ - Precondionning_setting = FACT(statut = 'f', -# ------------------------------------ - -# ------------------------------------ - Preconditioning = SIMP(statut = 'o',typ = 'TXM',max="**", -# ------------------------------------ -# PNPN Soizic ? Est ce que c'est une liste -# Comment fait-on le into est faux : voir l aide -# PN Je propose qu 'on puisse faire +sieurs choix et qu on recalcule en sortie -# ou on propose des choix croisés parce que toutes les combinaisons ne sont pas possibles ? -# - into = [ "Diagonal", "No preconditioning", "Diagonal condensee", "Crout", "Gauss-Seidel", ], - defaut=("Diagonal",), homo="SansOrdreNiDoublon", - fr='Permet de preconditionner le systeme de l etape de propagation afin d accelerer la convergence \n\ -lors de sa resolution. Certains preconditionnements sont cumulables : (les diagonaux 2 ou 3 avec les autres)\n\ -Pour cette raison on ne retient que les nombres premiers pour designer les preconditionnements. Si l on souhaite en cumuler\n\ -plusieurs on formera le produit des options correspondantes.', - ang='Choice of the preconditioning in the propagation step linear system that the convergence is speeded up\n\ -when it is being solved.Some operations (either 2 or 3 diagonal preconditioning) can be performed concurrently with the others.\n\ -Only prime numbers are therefore kept to denote the preconditioning operations. When several of them are to be performed concurrently,\n\ -the product of relevant options shall be made.', - ), -# ------------------------------------ - C_U_Preconditioning = SIMP(typ = bool, statut = 'o', defaut=False, -# ------------------------------------ - fr = 'Changement de variable de H en C dans le systeme lineaire final', - ang = 'Change of variable from H to C in the final linear system' - ), - - ),# fin Preconditionnement - -# ------------------------------------ - Matrix_Informations = FACT(statut = 'f', -# ------------------------------------ -# ------------------------------------ - Matrix_Vector_Product = SIMP(statut = 'o',typ = 'TXM', -# ------------------------------------ - into = ["Classic", "Frontal"], - defaut='Classic', - fr = 'attention, si frontal, il faut une numerotation speciale des points', - ang = 'beware, with option 2, a special numbering of points is required', - ), -# ------------------------------------ - Matrix_Storage = SIMP(statut = 'o',typ = 'TXM', -# ------------------------------------ - into = ["Classical EBE","Edge-based storage",], - defaut='Edge-based storage', - ), - ),# fin Matrix_Informations - - -# ------------------------------------ - Advection = FACT(statut = 'o', -# ------------------------------------ - -# ------------------------------------ - Type_Of_Advection = FACT(statut = 'o', -# ------------------------------------ - -# PNPNPN recalcul -# Tres differents du dico liste de 4 -# PNPN eclaircir les choix SVP -# soizic. choix 3 et 4 et 13 et 14 -# Attention recalcul de Type_Of_Advection -# ------------------------------------ - Advection_Of_U_And_V = SIMP(statut = 'o',typ = bool, defaut = True, -# ------------------------------------ - fr = 'Prise en compte ou non de la convection de U et V.', - ang = 'The advection of U and V is taken into account or ignored.'), - -# ------------------------------------ - b_u_v = BLOC( condition = "Advection_Of_U_And_V == True", -# ------------------------------------ -# ------------------------------------ - Type_Of_Advection_U_And_V = SIMP(statut = 'o',typ = 'TXM',position = "global", -# ------------------------------------ - into = ["Characteristics", "SUPG", "Conservative N-scheme", 'Conservative N-scheme',\ - 'Conservative PSI-scheme', 'Non conservative PSI scheme', 'Implicit non conservative N scheme',\ - 'Edge-based N-scheme'], - defaut = "Characteristics", ), - -# ------------------------------------ - b_upwind = BLOC(condition = "Type_Of_Advection_U_And_V == 'SUPG'", -# ------------------------------------ -# ------------------------------------ - Supg_Option_U_And_V = SIMP(statut = 'o', defaut = 'Modified SUPG', typ = 'TXM', -# ------------------------------------ - into = ['No upwinding', 'Classical SUPG','Modified SUPG']), - -# ------------------------------------ - Upwind_Coefficients_Of_U_And_V = SIMP(statut = 'o',typ = 'R', defaut = 1.) -# ------------------------------------ - ), # fin b_upwind - ),# fin b_u_v - -# ------------------------------------ - Advection_Of_H = SIMP(statut = 'o',typ = bool, defaut = True, -# ------------------------------------ - fr = 'Prise en compte ou non de la convection de H.', - ang = 'The advection of H is taken into account or ignored.'), - -# ------------------------------------ - b_h = BLOC( condition = "Advection_Of_H == True", -# ------------------------------------ -# ------------------------------------ - Type_Of_Advection_H = SIMP(statut = 'o',typ = 'TXM',position = "global", -# ------------------------------------ - into = ["characteristics", "SUPG", "conservative N-scheme", 'conservative N-scheme',\ - 'conservative PSI-scheme', 'non conservative PSI scheme', 'implicit non conservative N scheme',\ - 'edge-based N-scheme'], - defaut = "conservative PSI-scheme",), -# ------------------------------------ - b_upwind_H = BLOC(condition = "Type_Of_Advection_H == 'SUPG'", -# ------------------------------------ -# ------------------------------------ - Supg_Option_H = SIMP(statut = 'o', defaut = 'Modified SUPG', typ = 'TXM', -# ------------------------------------ - into = ['No upwinding', 'Classical SUPG','Modified SUPG']), - -# ------------------------------------ - Upwind_Coefficients_Of_H = SIMP(statut = 'o',typ = 'R', defaut = 1.) -# ------------------------------------ - ), # fin b_upwind_H - ),# fin b_h - -# ------------------------------------ - Advection_Of_K_And_Epsilon = SIMP(statut = 'o',typ = bool, defaut = True, -# ------------------------------------ - fr = 'Prise en compte ou non de la convection de Tracer.', - ang = 'The advection of Tracer is taken into account or ignored.'), - -# ------------------------------------ - b_k = BLOC( condition = "Advection_Of_K_And_Epsilon == True", -# ------------------------------------ -# ------------------------------------ - Type_Of_Advection_K_And_Epsilon = SIMP(statut = 'o',typ = 'TXM',position = "global", -# ------------------------------------ - into = ["Characteristics", "SUPG", "Conservative N-scheme", 'Conservative N-scheme',\ - 'Conservative PSI-scheme', 'Non conservative PSI scheme', 'Implicit non conservative N scheme',\ - 'Edge-based N-scheme'], - defaut = "Characteristics",), -# ------------------------------------ - b_upwind_k = BLOC(condition = "Type_Of_Advection_K_And_Epsilon == 'SUPG'", -# ------------------------------------ -# ------------------------------------ - Supg_Option_Tracers = SIMP(statut = 'o', defaut = 'Modified SUPG', typ = 'TXM', -# ------------------------------------ - into = ['No upwinding', 'Classical SUPG','Modified SUPG']), - -# ------------------------------------ - Upwind_Coefficients_Of_K_And_Epsilon = SIMP(statut = 'o',typ = 'R', defaut = 1.) -# ------------------------------------ - ),# fin b_upwind_k - ),# fin b_k - -# ------------------------------------ - Advection_Of_Tracers = SIMP(statut = 'o',typ = bool, defaut = True, -# ------------------------------------ - fr = 'Prise en compte ou non de la convection de Tracer.', - ang = 'The advection of Tracer is taken into account or ignored.'), - -# ------------------------------------ - b_tracers = BLOC( condition = "Advection_Of_Tracers == True", -# ------------------------------------ -# ------------------------------------ - Type_Of_Advection_Tracers = SIMP(statut = 'o',typ = 'TXM',position = "global", -# ------------------------------------ - into = ["Characteristics", "SUPG", "Conservative N-scheme", 'Conservative N-scheme',\ - 'Conservative PSI-scheme', 'Non conservative PSI scheme', 'Implicit non conservative N scheme',\ - 'Edge-based N-scheme'],), -# ------------------------------------ - b_upwind_Tracers = BLOC(condition = "Type_Of_Advection_Tracers == 'SUPG'", -# ------------------------------------ -# ------------------------------------ - Supg_Option_K_And_Epsilon = SIMP(statut = 'o', defaut = 'Modified SUPG', typ = 'TXM', -# ------------------------------------ - into = ['No upwinding', 'Classical SUPG','Modified SUPG']), - -# ------------------------------------ - Upwind_Coefficients_Of_Tracers = SIMP(statut = 'o',typ = 'R', defaut = 1.) -# ------------------------------------ - ), # fin b_upwind_Tracers - ), # fin b_Tracers - -# ------------------------------------ - b_max = BLOC( condition = "(Advection_Of_Tracers == True and Type_Of_Advection_Tracers == 'Edge-based N-scheme') or (Advection_Of_K_And_Epsilon == True and Type_Of_Advection_K_And_Epsilon == 'Edge-based N-scheme') or (Advection_Of_U_And_V == True and Type_Of_Advection_U_And_V == 'Edge-based N-scheme') or ( Advection_Of_H == True and Type_Of_Advection_H == 'Edge-based N-scheme')", -# ------------------------------------ -# ------------------------------------ - Maximum_Number_Of_Iterations_For_Advection_Schemes = SIMP( statut = 'o',typ = 'I', defaut = 10 , -# ------------------------------------ - fr = 'Seulement pour schemes Edge-based N-scheme', - ang = 'Only for Edge-based N-scheme',), - ), # fin b_max - -# ------------------------------------ - b_traitement = BLOC( condition = "(Advection_Of_Tracers == True and Type_Of_Advection_Tracers in ['Edge-based N-scheme','SUPG','Conservative N-scheme','Conservative PSI-scheme']) or (Advection_Of_K_And_Epsilon == True and Type_Of_Advection_K_And_Epsilon in ['Edge-based N-scheme','SUPG','Conservative N-scheme','Conservative PSI-scheme']) or (Advection_Of_U_And_V == True and Type_Of_Advection_U_And_V in ['Edge-based N-scheme','SUPG','Conservative N-scheme','Conservative PSI-scheme']) or ( Advection_Of_H == True and Type_Of_Advection_H in ['Edge-based N-scheme','SUPG','Conservative N-scheme','Conservative PSI-scheme'])", -# ------------------------------------ - -# ------------------------------------ - Treatment_Of_Fluxes_At_The_Boundaries = SIMP( statut = 'o',typ = 'TXM', -# ------------------------------------ - into = ["Priority to prescribed values","Priority to fluxes"], - fr = 'Utilise pour les schemas SUPG, PSI et N, \n\ -si Priorité aux flux, on ne retrouve pas exactement les valeurs imposees des traceurs,mais le flux est correct', - ang = 'Used so far only with the SUPG, PSI and N schemes.\n\ -if Priority to fluxes, Dirichlet prescribed values are not obeyed,but the fluxes are correct',), - - ), # fin b_traitement - ), # Fin Type_Of_Advection - - -#PNPNPN -# recalculer la liste de 4 -# Attention bloc selon le type de convection -# ------------------------------------ -# SUPG = FACT(statut = 'o', -# ------------------------------------ -# ------------------------------------ -# Supg_Option_U_And_V = SIMP(statut = 'o', defaut = 'Modified SUPG', typ = 'TXM', -# ------------------------------------ -# into = ['No upwinding', 'Classical SUPG','Modified SUPG']), -# ------------------------------------ -# Supg_Option_H = SIMP(statut = 'o', defaut = 'Modified SUPG', typ = 'TXM', -# ------------------------------------ -# into = ['No upwinding', 'Classical SUPG','Modified SUPG']), -# ------------------------------------ -# Supg_Option_Tracers = SIMP(statut = 'o', defaut = 'Modified SUPG', typ = 'TXM', -# ------------------------------------ -# into = ['No upwinding', 'Classical SUPG','Modified SUPG']), -# ------------------------------------ -# Supg_Option_K_And_Epsilon = SIMP(statut = 'o', defaut = 'Modified SUPG', typ = 'TXM', -# ------------------------------------ -# into = ['No upwinding', 'Classical SUPG','Modified SUPG']), -# ), # Fin de SUPG - -# ------------------------------------ - Mass_Lumping_On_H = SIMP(statut = 'o',typ = 'R', defaut = 0, -# ------------------------------------ - fr = 'TELEMAC offre la possibilite d''effectuer du mass-lumping sur H ou U.\n\ -Ceci revient a ramener tout ou partie (suivant la valeur de ce coefficient) des matrices AM1 (h) ou AM2 (U) \n\ -et AM3 (V) sur leur diagonale. Cette technique permet d''accelerer le code dans des proportions tres\n\ -importantes et de le rendre egalement beaucoup plus stable. Cependant les solutions obtenues se trouvent lissees.\n\ -Ce parametre fixe le taux de mass-lumping effectue sur h.', - ang = 'TELEMAC provides an opportunity to carry out mass-lumping either on C,H or on the velocity. \n\ -This is equivalent to bringing the matrices AM1(h) or AM2(U) and AM3(V) wholly or partly, back onto their diagonal.\n\ -Thanks to that technique, the code can be speeded up to a quite significant extent and it can also be made much \n\ -more stable. The resulting solutions, however, become artificially smoothed. \n\ -This parameter sets the extent of mass-lumping that is performed on h.'), - -# ------------------------------------ - Mass_Lumping_On_Velocity = SIMP(statut = 'o', typ = 'R', defaut = 0, -# ------------------------------------ - fr = 'Fixe le taux de mass-lumping effectue sur la vitesse.', - ang = 'Sets the amount of mass-lumping that is performed on the velocity.'), - -# ------------------------------------ - Mass_Lumping_For_Weak_Characteristics = SIMP(statut = 'o',typ = 'R',defaut = 0, -# ------------------------------------ - fr = 'Applique a la matrice de masse', - ang = 'To be applied to the mass matrix',), -# ------------------------------------ - Free_Surface_Gradient_Compatibility = SIMP(statut = 'o',typ = 'R',defaut = 1., -# ------------------------------------ - fr = 'Des valeurs inferieures a 1 suppriment les oscillations parasites', - ang = 'Values less than 1 suppress spurious oscillations'), - -# ------------------------------------ - Number_Of_Sub_Iterations_For_Non_Linearities = SIMP(statut = 'o',typ = 'I', -# ------------------------------------ - defaut = 1, - fr = 'Permet de reactualiser, pour un meme pas de temps, les champs convecteur et propagateur \n\ -au cours de plusieurs sous-iterations.\n\ -A la premiere sous-iteration, ces champs sont donnes par C et le champ de vitesses au pas de temps precedent.\n\ -Aux iterations suivantes, ils sont pris egaux au champ de vitesse obtenu a la fin de la sous-iteration precedente. \n\ -Cette technique permet d''ameliorer la prise en compte des non linearites.', - ang = 'Used for updating, within one time step, the advection and propagation field.\n\ -upon the first sub-iteration, \n\ -these fields are given by C and the velocity field in the previous time step. At subsequent iterations, \n\ -the results of the previous sub-iteration is used to update the advection and propagation field.\n\ -The non-linearities can be taken into account through this technique.',), - - - ), # fin Advection - -#PNPNPN Il faut recalculer le MCSIMP Propagation -# ------------------------------------ - Propagation = FACT(statut = 'o', -# ------------------------------------ -# ------------------------------------ - Initial_Guess_For_H = SIMP(statut = 'o',typ = 'TXM', -# ------------------------------------ - into = ['Zero', 'Previous', 'Extrapolation'], - defaut = 'Previous', - fr = 'Tir initial du solveur de l etape de propagation. Offre la possibilite de modifier la valeur initiale de DH,\n\ -accroissement de H, a chaque iteration, dans l etape de propagation en utilisant les valeurs finales de cette variable \n\ -aux pas de temps precedents. Ceci peut permettre daccelerer la vitesse de convergence lors de la resolution du systeme.', - ang = 'Initial guess for the solver in the propagation step. Makes it possible to modify the initial value of H, \n\ -upon each iteration in the propagation step, by using the ultimate values this variable had in the earlier time steps.\n\ -Thus, the convergence can be speeded up when the system is being solved.',), - - -# ------------------------------------ - Linearized_Propagation = SIMP(statut = 'o',typ = bool,defaut = False, -# ------------------------------------ - fr = 'Permet de lineariser l''etape de propagation; \n\ -par exemple lors de la realisation de cas tests pour lesquels on dispose d une solution analytique dans le cas linearise.', - ang = 'Provided for linearizing the propagation step; \n\ -e.g. when performing test-cases for which an analytical solution in the linearized case is available.' ), - -# ------------------------------------ - b_linear = BLOC(condition = "Linearized_Propagation == True ", -# ------------------------------------ -# ------------------------------------ - Mean_Depth_For_Linearization = SIMP(statut = 'o',typ = 'R', defaut = 0.0, val_min = 0, -# ------------------------------------ - fr = 'Fixe la hauteur d eau autour de laquelle s effectue la linearisation lorsque l option PROPAGATION LINEARISEE est choisie.', - ang = 'Sets the water depth about which the linearization is made when the LINEARIZED PROPAGATION OPTION is selected.'), - -# ------------------------------------ - Initial_Guess_For_U = SIMP(statut = 'o',typ = 'TXM', -# ------------------------------------ - into = ['Zero', 'Previous', 'Extrapolation'], - defaut = 'Previous', - fr = 'Tir initial du solveur de l etape de propagation. Offre la possibilite de modifier la valeur initiale de DH,\n\ -accroissement de U, a chaque iteration, dans l etape de propagation en utilisant les valeurs finales de cette variable \n\ -aux pas de temps precedents. Ceci peut permettre daccelerer la vitesse de convergence lors de la resolution du systeme.', - ang = 'Initial guess for the solver in the propagation step. Makes it possible to modify the initial value of U, \n\ -upon each iteration in the propagation step, by using the ultimate values this variable had in the earlier time steps.\n\ -Thus, the convergence can be speeded up when the system is being solved.',), - - ), # fin b_linear - - ), # fin Propagation - - -# ------------------------------------ - Diffusion = FACT(statut = 'o', -# ------------------------------------ - -# ------------------------------------ - Diffusion_Of_Velocity = SIMP( statut='o',typ=bool, -# ------------------------------------ - defaut=False , - fr = 'Permet de decider si lon prend ou non en compte la diffusion des vitesses.', - ang= 'Makes it possible to decide whether the diffusion of velocity (i.e. viscosity) is taken into account or not.', - ), -# ------------------------------------ - b_Diffu = BLOC(condition = 'Diffusion_Of_Velocity == True', -# ------------------------------------ -# ------------------------------------ - Implicitation_For_Diffusion_Of_Velocity = SIMP(statut = 'o',typ = 'R',defaut = 0, -# ------------------------------------ - fr = 'Fixe la valeur du coefficient d''implicitation sur les termes de diffusion des vitesses', - ang = 'Sets the value of the implicitation coefficient for the diffusion of velocity',), - -# ------------------------------------ - Option_For_The_Diffusion_Of_Velocities = SIMP( statut='o',typ='TXM', -# ------------------------------------ - defaut=1 , - into=['Diffusion in the form div( nu grad(U))','Diffusion in the form 1/h div ( h nu grad(U) )'], - fr = '1: Diffusion de la forme div( nu grad(U) ) 2: Diffusion de la forme 1/h div ( h nu grad(U) )', - ang= '1: Diffusion in the form div( nu grad(U) ) 2: Diffusion in the form 1/h div ( h nu grad(U) )',), - - ), # fin b_Diffu - ), # fin Diffusion -# ------------------------------------ - Discretization_Implicitation = FACT(statut = 'f', -# ------------------------------------ - -# ------------------------------------ - Discretizations_In_Space = SIMP(statut = 'o',typ = 'TXM', -# ------------------------------------ - into = ["Linear", "Quasi-bubble", "Quadratic"], - defaut = "Linear",), - -# ------------------------------------ - Implicitation_For_Depth = SIMP(statut = 'o',typ = 'R',defaut = 0.55, -# ------------------------------------ - fr = 'Fixe la valeur du coefficient d''implicitation sur C dans l''etape de propagation (cf. Note de principe).\n\ -Les valeurs inferieures a 0.5 donnent un schema instable.', - ang = 'Sets the value of the implicitation coefficient for C (the celerity of waves) in the propagation step (refer to principle note).\n\ -Values below 0.5 result in an unstable scheme.'), - -# ------------------------------------ - Implicitation_For_Velocity = SIMP(statut = 'o',typ = 'R',defaut = 0.55, -# ------------------------------------ - fr = 'Fixe la valeur du coefficient d''implicitation sur la vitesse dans l''etape de propagation (cf. Note de principe).\n\ -Les valeurs inferieures a 0.5 donnent un schema instable.', - ang = 'Sets the value of the implicitation coefficient for velocity in the propagation step (refer to principle note).\n\ -Values below 0.5 result in an unstable condition.'), - - ), # fin Discretization_Implicitation - - -# ------------------------------------ - Tidal=FACT(statut='f', -# ------------------------------------ - Tidal_Flats = SIMP(statut = 'o',typ = bool,defaut = True, -# ------------------------------------ - fr = 'permet de supprimer les tests sur les bancs decouvrants si on est certain qu''il n''y en aura pas, En cas de doute : oui', - ang = 'When no,the specific treatments for tidal flats are by-passed. This spares time, but of course you must be sure that you have no tidal flats'), - -# ------------------------------------ - b_tidal_flats = BLOC(condition = 'Tidal_Flats == True', -# ------------------------------------ -# ------------------------------------ - Option_For_The_Treatment_Of_Tidal_Flats = SIMP(statut = 'o',typ = 'TXM', -# ------------------------------------ - into = ["Equations solved everywhere with correction on tidal flats", "Dry elements frozen", "1 but with porosity (defina method)",], - defaut="Equations solved everywhere with correction on tidal flats",), - -# ------------------------------------ - b_option_tidal_flats = BLOC(condition = 'Option_For_The_Treatment_Of_Tidal_Flats == "Equations solved everywhere with correction on tidal flats"', -# ------------------------------------ -# ------------------------------------ - Treatment_Of_Negative_Depths = SIMP( statut = 'o',typ = 'TXM', -# ------------------------------------ - into = [ 'No treatment', 'Smoothing', 'Flux control'], - defaut = 'Smoothing' ,), - ), # fin bloc b_option_tidal_flats - -# ------------------------------------ - Threshold_For_Negative_Depths = SIMP( statut = 'o',typ = 'R', defaut = 0.0 , -# ------------------------------------ - fr = 'En dessous du seuil, les hauteurs negatives sont lissees', - ang = 'Below the threshold the negative depths are smoothed',), - -# ------------------------------------ - Threshold_Depth_For_Receding_Procedure = SIMP(statut = 'o',typ = 'R',defaut = 0 , -# ------------------------------------ - fr = 'Si > 0., declenche la procedure de ressuyage qui evite le franchissement parasite des digues mal discretisees', - ang = 'If > 0., will trigger the receding procedure that avoids overwhelming of dykes which are too loosely discretised ',), - - -# ------------------------------------ - H_Clipping = SIMP(statut = 'o',typ = bool,defaut = False, -# ------------------------------------ - fr = 'Determine si on desire ou non limiter par valeur inferieure la hauteur d eau H (dans le cas des bancs decouvrants par exemple).', - ang = 'Determines whether limiting the water depth H by a lower value desirable or not. (for instance in the case of tidal flats)\n\ -This key-word may have an influence on mass conservation since the truncation of depth is equivalent to adding mass.',), - -# ------------------------------------ - b_clipping = BLOC(condition = 'H_Clipping == True', -# ------------------------------------ -# ------------------------------------ - Minimum_Value_Of_Depth = SIMP( statut = 'o',typ = 'R', defaut = 0.0 , -# ------------------------------------ - fr = 'Fixe la valeur minimale de a lorsque loption CLIPPING DE H est activee.', - ang = 'Sets the minimum H value when option H CLIPPING is implemented. Not fully implemented.',), - ), # fin b_clipping - ), # fin bloc b_tidal_flats - ), # fin bloc tidal - -# ------------------------------------ - Various = FACT( -# ------------------------------------ - -# ------------------------------------ - Newmark_Time_Integration_Coefficient = SIMP( statut = 'o',typ = 'TXM', -# ------------------------------------ - defaut = "Euler explicite", - into = ["Euler explicite","Order 2 in time"],), - -# ------------------------------------ - Option_For_Characteristics = SIMP( statut = 'o',typ = 'TXM', -# ------------------------------------ - defaut = "Strong" , - into = ['Strong','Weak',],), - - ),# fin Various - - -)# fin NUMERICAL_PARAMETERS - -# ----------------------------------------------------------------------- -PHYSICAL_PARAMETERS = PROC(nom = "PHYSICAL_PARAMETERS",op = None, -# ----------------------------------------------------------------------- - UIinfo = { "groupes" : ( "CACHE", )}, -# ------------------------------------ - Friction_Setting = FACT(statut = 'o', -# ------------------------------------ -# ------------------------------------ - Friction_Data_File = SIMP( statut = 'o', -# ------------------------------------ - typ = ('Fichier', ';;All Files (*)'), - fr = 'fichier de donnees pour le frottement', - ang = 'friction data file',), - -# ------------------------------------ - Depth_In_Friction_Terms = SIMP( statut = 'o',typ = 'TXM', -# ------------------------------------ - defaut = "Nodal" , - into = ("Nodal", "Average"),), - -# ------------------------------------ - Law_Of_Bottom_Friction = SIMP( statut = 'o',typ = 'TXM', -# ------------------------------------ - defaut = 'No friction' , - into = ('No friction', 'Haaland', 'Chezy', 'Strickler', 'Manning', 'Nikuradse','Log law','Colebrooke_white'), - fr = 'selectionne le type de formulation utilisee pour le calcul du frottement sur le fond.', - ang = 'Selects the type of formulation used for the bottom friction.',), - -# ------------------------------------ - b_Law_Friction = BLOC(condition = "Law_Of_Bottom_Friction!= 'No friction'", -# ------------------------------------ -# ------------------------------------ - Friction_Coefficient = SIMP( statut = 'o',typ = 'R', -# ------------------------------------ - defaut = 50.0 , - fr = 'Fixe la valeur du coefficient de frottement pour la formulation choisie. \ -Attention, la signification de ce chiffre varie suivant la formule choisie : \ -1 : coefficient lineaire 2 : coefficient de Chezy 3 : coefficient de Strickler \ -4 : coefficient de Manning 5 : hauteur de rugosite de Nikuradse', - ang = 'Sets the value of the friction coefficient for the selected formulation. \ -It is noteworthy that the meaning of this figure changes according to the selected formula (Chezy, Strickler, etc.) : \ -1 : linear coefficient 2 : Chezy coefficient 3 : Strickler coefficient 4 : Manning coefficient 5 : Nikuradse grain size',), - ), # Fin b_Law_Friction - -# ------------------------------------ - b_Colebrooke_White = BLOC(condition = "Law_Of_Bottom_Friction == 'Colebrooke_white'", -# ------------------------------------ -# ------------------------------------ - Manning_Default_Value_For_Colebrook_White_Law = SIMP( statut = 'o',typ = 'R', -# ------------------------------------ - defaut = 0.02 , - fr = 'valeur par defaut du manning pour la loi de frottement de Colebrook-White ', - ang = 'Manning default value for the friction law of Colebrook-White ',), - ), # Fin b_Colebrooke_White - -# ------------------------------------ - Non_Submerged_Vegetation_Friction = SIMP( statut = 'o',typ = bool, -# ------------------------------------ - defaut = False , - fr = 'calcul du frottement du a la vegetation non submergee', - ang = 'friction calculation of the non-submerged vegetation',), - -# ------------------------------------ - b_Non_Sub = BLOC(condition = ' Non_submerged_Vegetation_Friction == True', -# ------------------------------------ -# ------------------------------------ - Diameter_Of_Roughness_Elements = SIMP( statut = 'o',typ = 'R', -# ------------------------------------ - defaut = 0.006 , - fr = 'diametre des elements de frottements', - ang = 'diameter of roughness element',), - -# ------------------------------------ - Spacing_Of_Roughness_Elements = SIMP( statut = 'o',typ = 'R', -# ------------------------------------ - defaut = 0.14 , - fr = 'espacement des elements de frottement', - ang = 'spacing of rouhness element',), - ), # Fin b_Non_Sub - -# ------------------------------------ - Law_Of_Friction_On_Lateral_Boundaries = SIMP( statut = 'o',typ = 'TXM', -# ------------------------------------ - defaut = "No friction" , - into = ("No friction", "Haaland", "Chezy", "Strickler", "Manning", "Nikuradse", "Log law", "Colebrook-white"), - fr = 'selectionne le type de formulation utilisee pour le calcul du frottement sur les parois laterales.', - ang = 'Selects the type of formulation used for the friction on lateral boundaries.',), - - -# ------------------------------------ - b_Fric = BLOC(condition = 'Law_Of_Friction_On_Lateral_Boundaries != "No friction"', -# ------------------------------------ - -# PNPNPN soizic ?Ne faut-il pas un bloc sur Law_Of_Friction_On_Lateral_Boundaries -# ------------------------------------ - Roughness_Coefficient_Of_Boundaries = SIMP( statut = 'o',typ = 'R', -# ------------------------------------ - defaut = 100.0 , - fr = 'Fixe la valeur du coefficient de frottement sur les frontieres solides avec un regime turbulent rugueux\n\ - sur les bords du domaine. meme convention que pour le coefficient de frottement', - ang = 'Sets the value of the friction coefficient of the solid boundary with the bed roughness option. Same meaning than friction coefficient',), - -# ------------------------------------ - Maximum_Number_Of_Friction_Domains = SIMP( statut = 'o',typ = 'I', -# ------------------------------------ - defaut = 10 , - fr = 'nombre maximal de zones pouvant etre definies pour le frottement. Peut etre augmente si necessaire', - ang = 'maximal number of zones defined for the friction. Could be increased if needed',), - ), - -# ------------------------------------ - Definition_Of_Zones = SIMP(typ = bool, statut = 'o', defaut = False, -# ------------------------------------ - fr = 'Declenche l''appel a def_zones, pour donner un numero de zone a chaque point', - ang = 'Triggers the call to def_zones to give a zone number to every point',), - -# ------------------------------------ - b_def_zone = BLOC (condition = 'Definition_Of_Zones == True', -# ------------------------------------ -# ------------------------------------ - Consigne = SIMP(statut = "o",homo = 'information',typ = "TXM", defaut = "complete DEF_ZONES subroutine"), -# ------------------------------------ - ), # fin b_def_zone - - ), # Fin du bloc Friction -# ------------------------------------ - Meteorology = FACT(statut = 'f', -# ------------------------------------ - -# ------------------------------------ - Wind = SIMP(statut = 'o',typ = bool,defaut = False, -# ------------------------------------ - fr = 'Prise en compte ou non des effets du vent.', - ang = 'Determines whether the wind effects are to be taken into account or not.'), - -# ------------------------------------ - b_Wind = BLOC(condition = "Wind == True", -# ------------------------------------ -# ------------------------------------ - Wind_Velocity_Along_X = SIMP(statut = 'o',typ = 'R', defaut = 0., -# ------------------------------------ - fr = 'Composante de la vitesse du vent suivant l''axe des x (m/s).', - ang = 'Wind velocity, component along x axis (m/s).',), - -# ------------------------------------ - Wind_Velocity_Along_Y = SIMP(statut = 'o',typ = 'R',defaut = 0., -# ------------------------------------ - fr = 'Composante de la vitesse du vent suivant l''axe des y (m/s).', - ang = 'Wind velocity, component along y axis (m/s).',), - -# ------------------------------------ - Threshold_Depth_For_Wind = SIMP(statut = 'o',typ = 'R',defaut = 0., -# ------------------------------------ - fr = 'Retire la force due au vent dans les petites profondeurs', - ang = 'Wind is not taken into account for small depths' ), - -# ------------------------------------ - Coefficient_Of_Wind_Influence = SIMP( statut = 'o',typ = 'R', defaut = 0.0 , -# ------------------------------------ - fr = 'Fixe la valeur du coefficient d entrainement du vent (cf. Note de principe).', - ang = 'Sets the value of the wind driving coefficient. Refer to principle note.',), - -# ------------------------------------ - Option_For_Wind = SIMP( statut = 'o',typ = 'TXM', defaut = 0 , -# ------------------------------------ - into = ["No wind","Constant in time and space","Variable in time","Variable in time and space"], - fr = 'donne les options pour introduire le vent', - ang = 'gives option for managing the wind'), - -# ------------------------------------ - file_For_wind = BLOC (condition = 'Option_For_Wind == "Variable in time" or Option_For_Wind == "Variable in time and space"', -# ------------------------------------ -# ------------------------------------ - Consigne = SIMP(statut = "o",homo = 'information',typ = "TXM", -# ------------------------------------ - defaut = "give formated file 3"), - ), # fin bloc file_For_wind - -# ------------------------------------ - speed_For_wind = BLOC (condition = 'Option_For_Wind == "Constant in time and space"', -# ------------------------------------ -# ------------------------------------ - Speed_And_Direction_Of_Wind = SIMP( statut = 'o', defaut = (0.0, 0.0) , -# ------------------------------------ - typ = Tuple(2),validators = VerifTypeTuple(('R','R')), - fr = 'Donne la vitesse et la direction (en degres de 0 a 360, 0 etant y = 0 et x = +inf) du vent', - ang = 'gives the speed and direction (degre (from 0 to 360), 0 given y = 0 anx x = +infinity)',), - ), # speed_For_wind - - ), # fin b_Wind - -# ------------------------------------ - Air_Pressure = SIMP(statut = 'o',typ = bool, defaut = False, -# ------------------------------------ - fr = 'Permet de decider si l''on prend ou non en compte l''influence d''un champ de pression.', - ang = 'Provided to decide whether the influence of an atmosphere field is taken into account or not.'), - -# ------------------------------------ - b_air = BLOC(condition = "Air_Pressure == True", -# ------------------------------------ -# ------------------------------------ - Value_Of_Atmospheric_Pressure = SIMP( statut = 'o',typ = 'R', -# ------------------------------------ - defaut = 100000.0 , - fr = 'donne la valeur de la pression atmospherique lorsquelle est constante en temps et en espace', - ang = 'gives the value of atmospheric pressure when it is contant in time and space',), - ), # fin b_air - -# ------------------------------------ - Rain_Or_Evaporation = SIMP(statut = 'o',typ = bool, -# ------------------------------------ - defaut = False, - fr = 'Pour ajouter un apport ou une perte d''eau en surface.', - ang = 'to add or remove water at the free surface. ',), - -# ----------------------------------- - b_Rain = BLOC(condition = "Rain_Or_Evaporation == True", -# ------------------------------------ -# ------------------------------------ - Rain_Or_Evaporation_In_Mm_Per_Day = SIMP(statut = 'o',typ = 'I',defaut = 0.), -# ------------------------------------ - ), # fin b_Rain - - ), # fin Meteorology - -# ------------------------------------ - Wave = FACT(statut = 'f', -# ------------------------------------ - -# ------------------------------------ - Wave_Driven_Currents = SIMP(statut = 'o', -# ------------------------------------ - typ = bool, defaut = False, - fr = 'Active la prise en compte des courants de houle', - ang = 'Wave driven currents are taken into account.'), - -# ------------------------------------ - b_Wave = BLOC(condition = "Wave_Driven_Currents == True", -# ------------------------------------ -# ------------------------------------ - Record_Number_In_Wave_File = SIMP(statut = 'o',typ = 'I', defaut = 1, -# ------------------------------------ - fr = 'Numero d enregistrement dans le fichier des courants de houle', - ang = 'Record number to read in the wave driven currents file'), - ), # fin b_Wave - ), # fin Wave - - - -# ------------------------------------ - Parameters_Estimation = FACT(statut = 'f', -# ------------------------------------ -# ------------------------------------ - Parameter_Estimation = SIMP( statut = 'o',typ = 'TXM', into = ["Friction","Frottement","Steady"], -# ------------------------------------ - fr = 'Liste des parametres a estimer', - ang = 'List of parameter to be estimated',), - -# ------------------------------------ - Identification_Method = SIMP( statut = 'o',typ = 'TXM', -# ------------------------------------ - into = ["List of tests", "Gradient simple", "Conj gradient", "Lagrange interp."], - defaut = 'GRadient simple',), - -# ------------------------------------ - Maximum_Number_Of_Iterations_For_Identification = SIMP(statut = 'o',typ = 'I',defaut = 20, -# ------------------------------------ - fr = 'chaque iteration comprend au moins un calcul direct et un calcul adjoint', - ang = 'every iteration implies at least a direct and an adjoint computation', ), - -# ------------------------------------ - Cost_Function = SIMP(statut = "f",typ = 'TXM', -# ------------------------------------ - defaut = 'Computed with h, u , v', - into = ['Computed with h, u , v', 'Computed with c, u , v'],), - -# ------------------------------------ - Tolerances_For_Identification = FACT( statut = 'o', -# ------------------------------------ -# PNPNPN recalculer en liste de 4 reels -# ------------------------------------ - Tolerance_For_H = SIMP( statut = 'o',typ = 'R', defaut=1.E-3, -# ------------------------------------ - fr = "precision absolue sur H", - ang = "absolute precision on H",), -# ------------------------------------ - Tolerance_For_U = SIMP( statut = 'o',typ = 'R', defaut=1.E-3, -# ------------------------------------ - fr = "precision absolue sur U", - ang = "absolute precision on U",), -# ------------------------------------ - Tolerance_For_V = SIMP( statut = 'o',typ = 'R', defaut=1.E-3, -# ------------------------------------ - fr = "precision absolue sur V", - ang = "absolute precision on V",), -# ------------------------------------ - Tolerance_For_cout = SIMP( statut = 'o',typ = 'R', defaut=1.E-4, -# ------------------------------------ - fr = "precision relative sur la fonction cout", - ang = "relative precision on the cost function",), - ),# fin Tolerances_For_Identification - - ), # fin fact Parameters_Estimation - -# ------------------------------------ - Sources = FACT( statut = 'f', -# ------------------------------------ -# ------------------------------------ - Number_Of_Sources = SIMP( statut = 'o',typ = 'I', defaut = 0 ,), -# ------------------------------------ -# Attention a la sortie a reformatter. voir page 68 du user manuel V7 - -# ------------------------------------ - sources_exists = BLOC(condition = "Number_Of_Sources!= 0", -# ------------------------------------ - -# ------------------------------------ - Sources_File = SIMP( statut = 'o', -# ------------------------------------ - typ = ('Fichier', 'All Files (*)',), - fr = 'Nom du fichier contenant les informations variables en temps des sources', - ang = 'Name of the file containing time-dependent information on sources',), - -#PNPNPNPN saisir autant de source que le nombre -# ------------------------------------ - Source = FACT(statut = 'o', -# ------------------------------------ - max = "**", -# ------------------------------------ - Abscissae_Of_Sources = SIMP( statut = 'o', -# ------------------------------------ - typ = Tuple(2),validators = VerifTypeTuple(('R','R')), - fr = 'Valeurs des abscisses des sources de debit et de traceur.', - ang = 'abscissae of sources of flowrate and/or tracer',), - -# ------------------------------------ - Ordinates_Of_Sources = SIMP( statut = 'o', -# ------------------------------------ - typ = Tuple(2),validators = VerifTypeTuple(('R','R')), - fr = 'Valeurs des ordonnees des sources de debit et de traceur.', - ang = 'ordinates of sources of flowrate and/or tracer',), - -# ------------------------------------ - Water_Discharge_Of_Sources = SIMP( statut = 'o', -# ------------------------------------ - typ = Tuple(2),validators = VerifTypeTuple(('R','R')), - fr = 'Valeurs des debits des sources.', - ang = 'values of water discharge of sources',), - -# ------------------------------------ - Velocities_Of_The_Sources_Along_X = SIMP( statut = 'f', -# ------------------------------------ - typ = Tuple(2),validators = VerifTypeTuple(('R','R')), - fr = 'Vitesses du courant a chacune des sources. Si elles ne sont pas donnees, on considere que la vitesse est celle du courant', - ang = 'Velocities at the sources. If they are not given, the velocity of the flow at this location is taken',), - -# ------------------------------------ - Velocities_Of_The_Sources_Along_Y = SIMP( statut = 'f', -# ------------------------------------ - typ = Tuple(2),validators = VerifTypeTuple(('R','R')), - fr = 'Vitesses du courant a chacune des sources', - ang = 'Velocities at the sources',), - - ), # Fin du Fact Source - -# ------------------------------------ - Type_Of_Sources = SIMP(statut = 'o',typ = 'TXM',into = ["Normal","Dirac"], -# ------------------------------------ - fr = 'Source portee par une base elements finis Source portee par une fonction de Dirac', - ang = 'Source term multiplied by a finite element basis, Source term multiplied by a Dirac function',), - - ),#fin bloc source - exits - ),#fin MC source - exits - - -# ------------------------------------ - Coriolis_Settings = FACT(statut = 'f', -# ------------------------------------ -# ------------------------------------ - Coriolis = SIMP( statut='o',typ=bool, -# ------------------------------------ - defaut=False , - fr = 'Prise en compte ou non de la force de Coriolis.', - ang= 'The Coriolis force is taken into account or ignored.',), - -# ------------------------------------------------------- - Coriolis_Coefficient = SIMP( statut='o',typ='R', -# ------------------------------------------------------- - defaut=0.0 , - fr = 'Fixe la valeur du coefficient de la force de Coriolis. Celui-ci doit etre calcule en fonction de la latitude l \n\ -par la formule FCOR = 2w sin(l) , w etant la vitesse de rotation de la terre. w = 7.27 10-5 rad/s \n\ -Les composantes de la force de Coriolis sont alors : FU = FCOR x V FV = - FCOR x U', - ang= 'Sets the value of the Coriolis force coefficient, in cartesian coordinates. This coefficient,\n\ -denoted FCOR in the code, should be equal to 2 w sin(l)d where w denotes the earth angular speed of rotation and l the latitude. \n\ -w = 7.27 10-5 rad/sec The Coriolis force components are then: FU = FCOR x V, FV = -FCOR x U In spherical coordinates, the latitudes are known',), - ), #fin Coriolis_Settings - - - -# ------------------------------------ - Various = FACT( statut = 'f', -# ------------------------------------ -# ------------------------------------ - Water_Density = SIMP(statut = 'o',typ = 'R',defaut = 1000., -# ------------------------------------ - fr = 'Fixe la valeur de la masse volumique de l eau.', - ang = 'set the value of water density', - ), - -# ------------------------------------ - Gravity_Acceleration = SIMP(statut = 'o',typ = 'R',defaut = 9.81, -# ------------------------------------ - fr = 'Fixe la valeur de l acceleration de la pesanteur.', - ang = 'Set the value of the acceleration due to gravity.', - ), - -# ------------------------------------ - Vertical_Structures = SIMP(statut = 'o',typ = bool,defaut = False, -# ------------------------------------ - fr = 'Prise en compte de la force de trainee de structures verticales', - ang = 'drag forces from vertical structures are taken into account',), - -# ------------------------------------ - maskob = BLOC (condition = 'Vertical_Structures == True', -# ------------------------------------ -# ------------------------------------ - Consigne = SIMP(statut = "o",homo = 'information',typ = "TXM", -# ------------------------------------ - defaut = "subroutine DRAGFO must then be implemented"), - ), # fin maskob - ), - -# ----------------------------------------------------------------------- - Secondary_Currents_Settings = FACT( statut='f', -# ----------------------------------------------------------------------- -# ----------------------------------------------------------------------- - Secondary_Currents = SIMP( statut='o',typ=bool, -# ----------------------------------------------------------------------- - defaut=False , - fr = 'Pour prendre en compte les courants secondaires', - ang= 'Using the parametrisation for secondary currents', - ), - -# ----------------------------------------------------------------------- - b_currents_exists = BLOC(condition = "Secondary_Currents == True", -# ----------------------------------------------------------------------- -# ----------------------------------------------------------------------- - Production_Coefficient_For_Secondary_Currents = SIMP( statut='o',typ='R', -# ----------------------------------------------------------------------- - defaut=7.071 , - fr = 'Une constante dans les termes de creation de Omega', - ang= 'A constant in the production terms of Omega',), - -# ----------------------------------------------------------------------- - Dissipation_Coefficient_For_Secondary_Currents = SIMP( statut='o',typ='R', -# ----------------------------------------------------------------------- - defaut=0.5 , - fr = 'Coefficient de dissipation de Omega', - ang= 'Coefficient of dissipation term of Omega',), - - ), # fin b_currents_exists - ), # fin Secondary_Currents_Settings - -# ------------------------------------ - Tsunami = FACT(statut = 'f', -# ------------------------------------ -# ------------------------------------------------------- - Option_For_Tsunami_Generation = SIMP( statut='o',typ='I', defaut=0 , -# ------------------------------------------------------- - fr = '', - ang= '',), - -# ------------------------------------------------------- - Physical_Characteristics_Of_The_Tsunami = SIMP( statut='o',typ='R', -# ------------------------------------------------------- - min=10,max=10, - defaut=(100.0, 210000.0, 75000.0, 13.6, 81.0, 41.0, 110.0, 0.0, 0.0, 3.0) , - fr = '', - ang= '',), - ), #fin Tsunami - -)# fin PHYSICAL_PARAMETERS - -# ----------------------------------------------------------------------- -OUTPUT_FILES = PROC(nom = "OUTPUT_FILES",op = None, -# ----------------------------------------------------------------------- - -# ------------------------------------ - Graphic_And_Listing_Printouts = FACT(statut = 'f', -# ------------------------------------ -# ------------------------------------ - Variables_For_Graphic_Printouts = SIMP(statut = 'o',max = "**", typ = 'TXM', -# ------------------------------------ - into=[ "Velocity along X axis (m/s)", "Velocity along Y axis (m/s)", "Wave celerity (m/s)", "Water depth (m)", - "Free surface elevation (m)", "Bottom elevation (m)", "Froude number ", "Scalar flowrate of fluid (m2/s)", - "Tracer 1 etc. ", "Turbulent kinetic energy in K-Epsilon model (J/kg)", "Dissipation of turbulent energy (W/kg)", - "Turbulent viscosity of K-Epsilon model (m2/s)", "Flowrate along X axis (m2/s)", "Flowrate along Y axis (m2/s)", - "Scalar velocity (m/s)", "Wind along X axis (m/s)", "Wind along Y axis (m/s)", "Air pressure (Pa)", - "Friction coefficient", "Drift along X (m)", "Drift along Y (m)", "Courant number ", "Supplementary variable N ", - "Supplementary variable O ", "Supplementary variable R ", "Supplementary variable Z ", "Maximum elevation", - "Time of maximum elevation ", "Maximum velocity", "Time of maximum velocity", "Friction velocity "], - ), - #homo="SansOrdreNiDoublon"), - -# ------------------------------------ - Graphic_Printout_Period = SIMP(statut = 'o', typ = 'I',defaut = 1, -# ------------------------------------ - fr = 'Determine la periode en nombre de pas de temps d''impression des VARIABLES POUR LES SORTIES GRAPHIQUES \n\ - dans le FICHIER DES RESULTATS.', - ang = 'Determines, in number of time steps, the printout period for the VARIABLES FOR GRAPHIC PRINTOUTS in the RESULTS FILE.' ,), - -# ------------------------------------ - Number_Of_First_Time_Step_For_Graphic_Printouts = SIMP(statut = 'o', typ = 'I',defaut = 1, -# ------------------------------------ - fr = 'Determine le nombre de pas de temps a partir duquel debute l''ecriture des resultats dans le listing.', - ang = 'Determines the number of time steps after which the results are first written into the listing.'), - - -# ------------------------------------ - Results_File = SIMP( statut = 'o', -# ------------------------------------ - typ = ('Fichier', 'All Files (*)',), - fr = 'Nom du fichier dans lequel sont ecrits les resultats du calcul avec la periodicite donnee PERIODE POUR LES SORTIES GRAPHIQUES.', - ang = 'Name of the file into which the computation results shall be written, the periodicity being given by GRAPHIC PRINTOUT PERIOD.',), - -# ------------------------------------ - Results_File_Format = SIMP( statut = 'o',typ = 'TXM',into = ['Serafin','MED','SerafinD'], defaut = 'Serafin', -# ------------------------------------ - fr = 'Format du fichier de resultats. Les valeurs possibles sont : \n\ - - SERAFIN : format standard simple precision pour Telemac; \n\ - - SERAFIND: format standard double precision pour Telemac; \n\ - - MED : format MED base sur HDF5' , - ang = 'Results file format. Possible values are:\n \ - - SERAFIN : classical single precision format in Telemac;\n\ - - SERAFIND: classical double precision format in Telemac; \n\ - - MED : MED format based on HDF5' , - ), - -# ------------------------------------ - Listing_Printout_Period = SIMP(statut = 'o', typ = 'I',defaut = 1, -# ------------------------------------ - fr = 'Determine la periode en nombre de pas de temps d''impression des variables', - ang = 'Determines, in number of time steps, the printout period for the variables',), - -# ------------------------------------ - Listing_Printout = SIMP( statut='o',typ=bool, defaut=True , -# ------------------------------------ - fr = 'Sortie des resultats sur support papier. Si on met False, le listing ne contient que lentete et la mention FIN NORMALE DU PROGRAMME : La Valeur False est a eviter', - ang= 'Result printout on hard copy. When NO is selected, the listing only includes the heading and the phrase "NORMAL END OF PROGRAM" In addition, the options MASS BALANCE and VALIDATION are inhibited. Value False Not recommended for use.', - ), - -# ------------------------------------ - Variables_To_Be_Printed = SIMP(statut = 'o',max = "**", typ = 'TXM', -# ------------------------------------ - into = [ "Velocity along X axis (m/s)", "Velocity along Y axis (m/s)", "Wave celerity (m/s)", "Water depth (m)", - "Free surface elevation (m)", "Bottom elevation (m)", "Froude number", "Scalar flowrate of fluid (m2/s)", - "Tracer", "Turbulent kinetic energy in K-Epsilon model (J/kg)", "Dissipation of turbulent energy (W/kg)", - "Turbulent viscosity of K-Epsilon model (m2/s)", "Flowrate along x axis (m2/s)", "Flowrate along y axis (m2/s)", - "Scalar velocity (m/s)", "Wind along x axis (m/s)", "Wind along y axis (m/s)", "Air pressure (Pa)", - "Friction coefficient", "Drift along x (m)", "Drift along y (m)", "Courant number", - "Supplementary variable N", "Supplementary variable O", "Supplementary variable R", "Supplementary variable Z"] -,homo="SansOrdreNiDoublon"), - - ),# fin Listing_Graphic_Printouts - -# ------------------------------------ - Formatted_Results_File = SIMP( statut = 'f', -# ------------------------------------ - typ = ('Fichier','All Files (*)',), - fr = 'Fichier de resultats formate mis a la disposition de l utilisateur. \ -Les resultats a placer dans ce fichier seront a ecrire sur le canal 29.', - ang = 'Formatted file of results made available to the user. \ -The results to be entered into this file shall be written on channel 29.',), - - -# ------------------------------------ - Binary_Results_File = SIMP( statut = 'f', -# ------------------------------------ - typ = ('Fichier', ';;All Files (*)',), - fr = "Fichier de resultats code en binaire mis a la disposition de l'utilisateur.\n\ -Les resultats a placer dans ce fichier seront a ecrire sur le canal 28.", - ang = "Additional binary-coded result file made available to the user. \n\ -The results to be entered into this file shall be written on channel 28.",), - - -# ------------------------------------ - Output_Of_Initial_Conditions = SIMP(typ = bool, statut = 'o', -# ------------------------------------ - defaut = True, - fr = 'Si Vrai, impression des conditions initiales dans les resultats', - ang = 'If True, output of initial conditions in the results'), - -# ------------------------------------ - Number_Of_Private_Arrays = SIMP( statut='o',typ='I', -# ------------------------------------ - defaut=0 , - fr = 'Nombre de tableaux mis a disposition de l utilisateur', - ang= 'Number of arrays for own user programming', - ), - - -# ------------------------------------ - Information_About_Solver = SIMP(typ = bool, statut = 'f', -# ------------------------------------ - defaut = False, - fr = "Si vrai, Donne a chaque pas de temps le nombre d'iterations necessaires a la convergence du solveur de l'etape de propagation.", - ang = "if True, prints the number of iterations that have been necessary to get the solution of the linear system.",), - -# ------------------------------------ - Mass_Balance = SIMP( statut='o',typ=bool, -# ------------------------------------ - defaut=False , - fr = 'Determine si l on effectue ou non le bilan de masse sur le domaine. Cette procedure calcule a chaque pas de temps : \n\ -- les flux aux entrees et sorties du domaine, - le flux global a travers lensemble des parois du domaine (liquides ou solides) \n\ -- l erreur relative sur la masse pour ce pas de temps.\n\ -En fin de listing, on trouve l erreur relative sur la masse pour l ensemble du calcul.\n\ -Il ne sagit que dun calcul indicatif car il nexiste pas dexpression compatible du debit en formulation c,u,v.', - - ang= 'Determines whether a check of the mass-balance over the domain is mader or not.\n\ -This procedures computes the following at each time step: the domain inflows and outflows, the overall flow across all the boundaries,\n\ -the relative error in the mass for that time step. The relative error in the mass over the whole computation can be found at the end of the listing.', - ), - -# ------------------------------------ - Controls = FACT( statut='f', -# ------------------------------------ -# ------------------------------------ - Control_Sections = SIMP(statut = 'f',typ = Tuple(2),validators = VerifTypeTuple(('I','I')), -# ------------------------------------ - fr = 'Couples de points (numeros globaux dans le maillage) entre lesquels les debits instantanes et cumules seront donnes.', - ang = 'Couples of points (global numbers in the mesh) defining sections where the instantaneous and cumulated discharges will be given',), - -# ------------------------------------ - Printing_Cumulated_Flowrates = SIMP( statut = 'o',typ = bool, defaut = False , -# ------------------------------------ - fr = 'impression du flux cumule a travers les sections de controle', - ang = 'printing the cumulated flowrates through control sections',), - -# ------------------------------------ - Compatible_Computation_Of_Fluxes = SIMP( statut = 'o',typ = bool, defaut = False , -# ------------------------------------ - fr = 'flux a travers les sections de controle, calcul compatible avec l impermeabilite sous forme faible', - ang = 'flowrates through control sections, computation compatible with the weak formulation of no-flux boundary condition',), - -# ------------------------------------ - Sections_Input_File = SIMP( statut = 'f', typ = ('Fichier', 'All Files (*)'), -# ------------------------------------ - fr = 'sections input file, partitioned', - ang = 'sections input file, partitioned',), - -# ------------------------------------ - Sections_Output_File = SIMP( statut = 'f', typ = ('Fichier', 'All Files (*)'), -# ------------------------------------ - fr = 'sections output file, written by the master', - ang = 'sections output file, written by the master',), - - ),# fin controls -# ------------------------------------ - Fourier = FACT(statut = 'f', -# ------------------------------------ -# ------------------------------------ - Fourier_Analysis_Periods = SIMP( statut='o', -# ------------------------------------ - max='**', typ = 'R', - fr = 'Liste des periodes que lon veut analyser', - ang= 'List of periods to be analysed',), - -# ------------------------------------ - Time_Range_For_Fourier_Analysis = SIMP( statut='o', -# ------------------------------------ - typ = Tuple(2), validators = VerifTypeTuple(('R','R')), - defaut=(0.0, 0.0) , - fr = 'Pour le calcul du marnage et de la phase de la maree', - ang= 'For computing tidal range and phase of tide', - ), - -# ------------------------------------ - List_Of_Points = SIMP( statut='o', -# ------------------------------------ - typ = Tuple(2), validators = VerifTypeTuple(('I','I')), - fr = 'Liste de points remarquables pour les impressions', - ang= 'List of remarkable points for printouts',), - -# ------------------------------------ - Names_Of_Points = SIMP( statut='o',typ='TXM', -# ------------------------------------ - min=2,max=2 , - fr = 'Noms des points remarquables pour les impressions', - ang= 'Names of remarkable points for printouts', - ), - - ),# fin fourier -) # FIN OUTPUT_FILES - - -# ----------------------------------------------------------------------- -CONSTRUCTION_WORKS_MODELLING = PROC(nom = "CONSTRUCTION_WORKS_MODELLING",op = None, -# ----------------------------------------------------------------------- - -# Attention calculer le logique BREACH - -# ------------------------------------ - Number_Of_Culverts = SIMP( statut = 'o',typ = 'I', -# ------------------------------------ - defaut = 0 , - fr = 'Nombre de siphons traites comme des termes sources ou puits. Ces siphons doivent etre decrits comme des sources \ -dans le fichier cas. Leurs caracteristiques sont donnees dans le fichier de donnees des siphons (voir la documentation ecrite)', - ang = 'Number of culverts treated as source terms. They must be described as sources in the domain\ - and their features are given in the culvert data file (see written documentation)',), -# ------------------------------------ - culvert_exists = BLOC(condition = "Number_Of_Culverts!= 0", -# ------------------------------------ -# ------------------------------------ - Culvert_Data_File = SIMP( statut = 'o',typ = ('Fichier', 'All Files (*)',), -# ------------------------------------ - fr = 'Fichier de description des siphons presents dans le modele', - ang = 'Description of culvert existing in the model',), - ), # fin bloc culvert_exists - -# ------------------------------------ - Number_Of_Tubes = SIMP( statut = 'o',typ = 'I', -# ------------------------------------ - defaut = 0 , - fr = 'Nombre de buses ou ponts traites comme des termes sources ou puits. Ces buses doivent etre decrits comme des sources\n\ -dans le fichier cas. Leurs caracteristiques sont donnees dans le fichier de donnees des buses (voir la documentation ecrite)', - ang = 'Number of tubes or bridges treated as source terms. They must be described as sources in the domain \n\ -and their features are given in the tubes data file (see written documentation)',), -# ------------------------------------ - b_Tubes = BLOC(condition = "Number_Of_Tubes!= 0", -# ------------------------------------ -# ------------------------------------ - Tubes_Data_File = SIMP( statut = 'o', -# ------------------------------------ - typ = ('Fichier', 'All Files (*)',), - fr = 'Fichier de description des buses/ponts presents dans le modele', - ang = 'Description of tubes/bridges existing in the model',), - ), # in bloc b_Tubes - -# ------------------------------------ - Number_Of_Weirs = SIMP(statut = 'o',typ = 'I',defaut = 0, -# ------------------------------------ - fr = 'Nombre de seuils qui seront traites par des conditions aux limites. \n\ -Ces seuils doivent etre decrits comme des frontieres du domaine de calcul', - ang = 'Number of weirs that will be treated by boundary conditions.', - ), -# ------------------------------------ - b_Weirs = BLOC(condition = "Number_Of_Weirs!= 0", -# ------------------------------------ -# ------------------------------------ - Weirs_Data_File = SIMP( statut = 'o', -# ------------------------------------ - typ = ('Fichier', 'All Files (*)',), - fr = 'Fichier de description des seuils presents dans le modele', - ang = 'Description of weirs existing in the model',), - -# ------------------------------------ - Type_Of_Weirs = SIMP( statut = 'o',typ = 'TXM', -# ------------------------------------ - into = ["Horizontal with same number of nodes upstream/downstream (Historical solution with bord)", - "General (New solution with sources points)"], - defaut = "Horizontal with same number of nodes upstream/downstream (Historical solution with bord)", - fr = 'Méthode de traitement des seuils ', - ang = 'Method for treatment of weirs',), - ),# fin b_Weirs - -# ------------------------------------ - Breach = SIMP(statut = 'o',typ = bool,defaut = False, -# ------------------------------------ - fr = 'Prise en compte de breches dans le calcul par modification altimetrique dans le maillage.', - ang = 'Take in account some breaches during the computation by modifying the bottom level of the mesh.',), - -# ------------------------------------ - b_Breaches = BLOC (condition = 'Breach == True', -# ------------------------------------ -# ------------------------------------ - Breaches_Data_File = SIMP( statut = 'o',typ = ('Fichier', 'All Files (*)',), -# ------------------------------------ - fr = 'Fichier de description des breches', - ang = 'Description of breaches',), - ), # fin b_Breaches - - -) # Fin CONSTRUCTION_WORKS_MODELLING - - -# ----------------------------------------------------------------------- -GENERAL_PARAMETERS = PROC(nom = "GENERAL_PARAMETERS",op = None, -# ----------------------------------------------------------------------- - UIinfo = { "groupes" : ( "CACHE", )}, -# ------------------------------------ - Location = FACT(statut = 'o', -# ------------------------------------ -# ------------------------------------ - Origin_Coordinates = SIMP( statut='o', -# ------------------------------------ - typ = Tuple(2),validators = VerifTypeTuple(('I','I')),defaut = (0,0), - fr = 'Valeur en metres, utilise pour eviter les trop grands nombres, transmis dans le format Selafin mais pas d autre traitement pour l instant', - ang= 'Value in metres, used to avoid large real numbers, added in Selafin format, but so far no other treatment',), - - -# ------------------------------------ - Spherical_Coordinates = SIMP(typ = bool,statut = 'o',defaut = False, -# ------------------------------------ - fr = 'Choix des coordonnees spheriques pour la realisation du calcul ( pour les grands domaines de calcul).', - ang = 'Selection of spherical coordinates to perform the computation (for large computation domains).'), - -# ------------------------------------ - b_Spher = BLOC(condition = 'Spherical_Coordinates == True', -# ------------------------------------ -# ------------------------------------ - Latitude_Of_Origin_Point = SIMP(typ = 'R',statut = 'o',defaut = 48., -# ------------------------------------ - fr = 'Determine l origine utilisee pour le calcul de latitudes lorsque l on effectue un calcul en coordonnees spheriques.', - ang = 'Determines the origin used for computing latitudes when a computation is made in spherical coordinates.this latitude\n\ -is in particular used to compute the Coriolis force. In cartesian coordinates, Coriolis coefficient is considered constant.'), - -# ------------------------------------ - Spatial_Projection_Type = SIMP(statut = 'o',typ = 'TXM', -# ------------------------------------ - into = ["Mercator","Latitude longitude"]), - ), # fin b_Spher - -# ------------------------------------ - b_Spher_faux = BLOC(condition = 'Spherical_Coordinates == False', -# ------------------------------------ -# ------------------------------------ - Spatial_Projection_Type = SIMP(statut = 'o',typ = 'TXM', -# ------------------------------------ - into = ["Cartesian, not georeferenced","Mercator","Latitude longitude"], - defaut = "Cartesian, not georeferenced",), - ), # fin b_Spher_faux - - ), # Fin de Location -# ------------------------------------ - Time = FACT(statut = 'o', -# ------------------------------------ - regles = (AU_MOINS_UN('Number_Of_Time_Steps','Duration'), - EXCLUS('Number_Of_Time_Steps','Duration'), - ), - -# ----------------------------------------------------------------------- - Consigne = SIMP(statut = "o",homo = 'information',typ = "TXM", -# ----------------------------------------------------------------------- - defaut = "Choose between Keywords 'Number_Of_Time_Steps' or 'Duration'"), - -# ------------------------------------ - Time_Step = SIMP(statut = 'o', -# ------------------------------------ - typ = 'R', defaut = 1, - fr = 'Definit le nombre de pas de temps effectues lors de l''execution du code.', - ang = 'Specifies the number of time steps performed when running the code.'), - -# ------------------------------------ - Number_Of_Time_Steps = SIMP(statut = 'f',typ = 'I', -# ------------------------------------ - fr = 'Definit le nombre de pas de temps effectues lors de l''execution du code.', - ang = 'Specifies the number of time steps performed when running the code.'), - -# ------------------------------------ - Duration = SIMP(statut = 'f',typ = 'R', -# ------------------------------------ - fr = 'duree de la simulation. alternative au parametre nombre de pas de temps. \n\ -On en deduit le nombre de pas de temps en prenant l''entier le plus proche de (duree du calcul/pas de temps).\n\ -Si le nombre de pas de temps est aussi donne, on prend la plus grande valeur', - ang = 'duration of simulation. May be used instead of the parameter NUMBER OF TIME STEPS. \n\ -The nearest integer to (duration/time step) is taken. If NUMBER OF TIME STEPS is also given, the greater value is taken',), - -# PNPN -# Attention, on laisse la règle mais il est possible d avoir les 2 en entrées --> attention au convert -# ------------------------------------ - Variable_Time_Step = SIMP(statut = 'o',typ = bool, defaut=False, -# ------------------------------------ - fr = 'Pas de temps variable pour avoir un nombre de courant souhaite', - ang = 'Variable time-step to get a given Courant number'), - -# ------------------------------------ - b_var_time = BLOC(condition = "Variable_Time_Step == True" , -# ------------------------------------ -# ------------------------------------ - Desired_Courant_Number = SIMP(statut = 'o',typ = 'R', -# ------------------------------------ - fr = 'Nombre de Courant souhaite ', - ang = 'Desired Courant number',), - ), - -# ------------------------------------ - Original_Date_Of_Time = FACT( statut = 'o', -# ------------------------------------ - fr = "Permet de fixer la date d'origine des temps du modele lors de la prise en compte de la force generatrice de la maree.", - ang = 'Give the date of the time origin of the model when taking into account the tide generating force.', - Year = SIMP(statut = 'o',typ = 'I',val_min = 1900, defaut = 1900), - Month = SIMP(statut = 'o',typ = 'I',val_min = 1,val_max = 12, defaut = 1), - Day = SIMP(statut = 'o',typ = 'I',val_min = 1,val_max = 31,defaut = 1),), - -# ------------------------------------ - Original_Hour_Of_Time = FACT( statut = 'o', -# ------------------------------------ - fr = "Permet de fixer l'heure d'origine des temps du modele lors de la prise en compte de la force generatrice de la maree.", - ang = 'Give the time of the time origin of the model when taking into account the tide generating force.', - Hour = SIMP(statut = 'o',typ = 'I',val_min = 0,val_max = 24, defaut = 0), - Minute = SIMP(statut = 'o',typ = 'I',val_min = 0,val_max = 60, defaut = 0), - Second = SIMP(statut = 'o',typ = 'I',val_min = 0,val_max = 60, defaut = 0), - ), - -# ------------------------------------ - Stop_If_A_Steady_State_Is_Reached = SIMP(statut = 'o', -# ------------------------------------ - typ = bool,defaut = False), - -# ------------------------------------ - b_stop = BLOC(condition = "Stop_If_A_Steady_State_Is_Reached == True" , -# ------------------------------------ -# ------------------------------------ - Stop_Criteria = SIMP(statut = 'o',typ = Tuple(3),validators = VerifTypeTuple(('R','R','R')), -# ------------------------------------ - fr = "Criteres d'arret pour un ecoulement permanent. ces coefficients sont respectivement appliques a\n\ - 1- U et V 2- H 3- T ", - ang = 'Stop criteria for a steady state These coefficients are applied respectively to\n\ - 1- U and V 2- H 3- T ',), - ), # fin b_stop - -# ------------------------------------ - Control_Of_Limits = SIMP(statut = 'o', -# ------------------------------------ - typ = bool, defaut = False, - fr = 'Le programme s''arrete si les limites sur u,v,h ou t sont depassees', - ang = 'The program is stopped if the limits on u,v,h, or t are trespassed',), - -# ------------------------------------ - b_limit = BLOC(condition = "Control_Of_Limit == True" , - Limit_Values = FACT(statut = 'o', -# Attention : 1 seul MC ds Telemac -# ------------------------------------ - fr = 'valeurs mini et maxi acceptables min puis max', - ang = 'min and max acceptable values ', - -# ------------------------------------ - Limit_Values_H = SIMP(statut = 'o',typ = Tuple(2), -# ------------------------------------ - validators = VerifTypeTuple(('R','R')), defaut = (-1000,9000)), -# ------------------------------------ - Limit_Values_U = SIMP(statut = 'o',typ = Tuple(2), -# ------------------------------------ - validators = VerifTypeTuple(('R','R')), defaut = (-1000,1000)), -# ------------------------------------ - Limit_Values_V = SIMP(statut = 'o',typ = Tuple(2), -# ------------------------------------ - validators = VerifTypeTuple(('R','R')), defaut = (-1000,1000)), -# ------------------------------------ - Limit_Values_T = SIMP(statut = 'o',typ = Tuple(2), -# ------------------------------------ - validators = VerifTypeTuple(('R','R')), defaut = (-1000,1000)), - ),), # fin Fact et b_limit - ), # Fin de Time - -# Attention il faut recalculer en sortie : il faut 0 ou 1 et non un boolean -# ------------------------------------ - Debugger = SIMP(typ = bool , statut = 'o', -# ------------------------------------ - defaut = False, - fr= 'Pour imprimer la sequence des appels, mettre 1', - ang = 'If 1, calls of subroutines will be printed in the listing',), - -) # Fin GENERAL_PARAMETERS - - -# ----------------------------------------------------------------------- -TURBULENCE = PROC(nom = "TURBULENCE",op = None, -# ----------------------------------------------------------------------- - -# ----------------------------------------------------------------------- - Turbulence_Model = SIMP( statut = 'o',typ = 'TXM', defaut = "Constant Viscosity", -# ----------------------------------------------------------------------- - into = ("Constant Viscosity", "Elder", "K-Epsilon Model", "Smagorinski"), - fr = 'Pour Elder, il faut pas oublier d ajuster les deux valeurs du mot-cle : COEFFICIENTS ADIMENSIONNELS DE DISPERSION\n\ -Pour K-Epsilon Model, ce meme parametre doit retrouver sa vraie valeur physique car elle est utilisee comme telle dans le modele de turbulence', - ang = 'When Elder, the two values of key-word : NON-DIMENSIONAL DISPERSION COEFFICIENTS are used \n\ -When K-Epsilon Model, this parameter should recover its true physical value, since it is used as such in the turbulence model.',), - -# ------------------------------------ - b_turbu_const = BLOC(condition = 'Turbulence_Model == "Constant Viscosity"', -# ------------------------------------ -# ------------------------------------ - Velocity_Diffusivity = SIMP( statut = 'o',typ = 'R', -# ------------------------------------ - defaut = 1.E-6, - fr = 'Fixe de facon uniforme pour l ensemble du domaine la valeur du coefficient de diffusion de viscosite globale (dynamique + turbulente).\n\ -Cette valeur peut avoir une influence non negligeable sur la forme et la taille des recirculations.', - ang = 'Sets, in an even way for the whole domain, the value of the coefficient of global (dynamic+turbulent) viscosity. \n\ -this value may have a significant effect both on the shapes and sizes of recirculation zones.',), - ), # fin b_turbu_const - -# ------------------------------------ - b_turbu_elder = BLOC(condition = 'Turbulence_Model == "Elder"', -# ------------------------------------ -# ------------------------------------ - Non_Dimensional_Dispersion_Coefficients = SIMP (statut = 'o', -# ------------------------------------ - typ = Tuple(2),validators = VerifTypeTuple(('R','R')),defaut = (6.,0.6), - fr = 'coefficients longitudinal et transversal dans la formule de Elder.', - ang = 'Longitudinal and transversal coefficients in elder s formula. Used only with turbulence model number 2',), - ), # fin bloc b_turbu_elder - -# ----------------------------------------------------------------------- - Accuracy_Of_K = SIMP( statut = 'o',typ = 'R', defaut = 1e-09 , -# ----------------------------------------------------------------------- - fr = 'Fixe la precision demandee sur k pour le test d arret dans letape de diffusion et termes sources du modele k-epsilon.', - ang = 'Sets the required accuracy for computing k in the diffusion and source terms step of the k-epsilon model.',), - -# ----------------------------------------------------------------------- - Accuracy_Of_Epsilon = SIMP( statut = 'o',typ = 'R', defaut = 1e-09 , -# ----------------------------------------------------------------------- - fr = 'Fixe la precision demandee sur epsilon pour le test darret dans letape de diffusion et termes sources de k et epsilon.', - ang = 'Sets the required accuracy for computing epsilon in the diffusion and source-terms step of the k-epsilon model.',), - -# ----------------------------------------------------------------------- - Time_Step_Reduction_For_K_Epsilon_Model = SIMP( statut = 'f',typ = 'R', defaut = 1.0 , -# ----------------------------------------------------------------------- - fr = 'Coefficient reducteur du pas de temps pour le modele k-epsilon (qui est normalement identique a celui du systeme hydrodynamique).\n\ -Utilisation deconseillee', - ang = 'Time step reduction coefficient for k-epsilon model (which is normally same the same as that of the hydrodynamic system).\n\ -Not recommended for use.',), - -# ----------------------------------------------------------------------- - Maximum_Number_Of_Iterations_For_K_And_Epsilon = SIMP( statut = 'o',typ = 'I', -# ----------------------------------------------------------------------- - defaut = 50 , - fr = 'Fixe le nombre maximum diterations accepte lors de la resolution du systeme diffusion-termes sources du modele k-epsilon.', - ang = 'Sets the maximum number of iterations that are acceptable when solving the diffusion source-terms step of the k-epsilon model.',), - -# ----------------------------------------------------------------------- - Turbulence_Model_For_Solid_Boundaries = SIMP( statut = 'o',typ = 'TXM', -# ----------------------------------------------------------------------- - defaut = 'Rough' , - into = ('Smooth', 'Rough'), - fr = 'Permet de choisir le regime de turbulence aux parois ', - ang = 'Provided for selecting the type of friction on the walls',), - -# ----------------------------------------------------------------------- - Solver_For_K_Epsilon_Model = SIMP( statut = 'o',typ = 'TXM', -# ----------------------------------------------------------------------- - defaut = "Conjugate gradient" , - into = ("Conjugate gradient", "Conjugate residuals", "Conjugate gradient on normal equation", - "Minimum error", "Conjugate gradient squared", "Conjugate gradient squared stabilised (CGSTAB)", - "GMRES", "Direct"), - fr = 'Permet de choisir le solveur utilise pour la resolution du systeme du modele k-epsilon', - ang = 'Makes it possible to select the solver used for solving the system of the k-epsilon model.',), - -# ----------------------------------------------------------------------- - b_gmres = BLOC(condition = 'Solver_For_K_Epsilon_Model == "GMRES"', -# ----------------------------------------------------------------------- -# ----------------------------------------------------------------------- - Option_For_The_Solver_For_K_Epsilon_Model = SIMP( statut = 'o',typ = 'I', -# ----------------------------------------------------------------------- - defaut = 2 ,val_min = 2,val_max = 15, - fr = 'le mot cle est la dimension de lespace de KRILOV (valeurs conseillees entre 2 et 7)', - ang = 'dimension of the krylov space try values between 2 and 7',), - ), # fin bloc b_gmres - -# ----------------------------------------------------------------------- - Preconditioning_For_K_Epsilon_Model = SIMP( statut = 'o',typ = 'TXM', -# ----------------------------------------------------------------------- - defaut = 'Diagonal' , - into = ("Diagonal", "No preconditioning", "Diagonal condensed", "Crout", "Diagonal and crout", "Diagonal condensed and crout"), - fr = 'Permet de preconditionner le systeme relatif au modele k-epsilon', - ang = 'Preconditioning of the linear system in the diffusion step of the k-epsilon model.', - ), -# ----------------------------------------------------------------------- - Information_About_K_Epsilon_Model = SIMP(statut = 'o',typ = bool,defaut = True, -# ----------------------------------------------------------------------- - fr = 'Donne le nombre d iterations du solveur de l etape de diffusion et termes sources du modele k-epsilon.', - ang = 'Gives the number of iterations of the solver in the diffusion and source terms step of the k-epsilon model.', - ), -)# fin TURBULENCE - - - - -# ----------------------------------------------------------------------- -PARTICLE_TRANSPORT = PROC(nom = "PARTICLE_TRANSPORT",op = None, -# ----------------------------------------------------------------------- -# ----------------------------------------------------------------------- - Number_Of_Drogues = SIMP(statut = 'o',typ = 'I',defaut = 0, -# ----------------------------------------------------------------------- - fr = 'Permet d''effectuer un suivi de flotteurs', - ang = 'Number of drogues in the computation.',), - -# ----------------------------------------------------------------------- - Algae_Transport_Model = SIMP( statut = 'o',typ = bool, defaut = False , -# ----------------------------------------------------------------------- - fr = 'Si oui, les flotteurs seront des algues', - ang = 'If yes, the floats or particles will be algae',), - -# ----------------------------------------------------------------------- - algae_exists = BLOC(condition = "Algae_Transport_Model == True", -# ----------------------------------------------------------------------- -# ----------------------------------------------------------------------- - Algae_Type = SIMP( statut = 'o',typ = 'TXM', -# ----------------------------------------------------------------------- - into = ["Sphere", "Iridaea flaccida (close to ulva)", "Pelvetiopsis limitata", "Gigartina leptorhynchos"], - defaut = "Sphere", - fr = 'Type des algues. Pour sphere les algues seront modelisees comme des spheres, pour les autres choix voir Gaylord et al.(1994)', - ang = 'Algae type. For sphere, the algae particles will be modeled as spheres, for the other choices see Gaylord et al.(1994)',), - -# ----------------------------------------------------------------------- - Diameter_Of_Algae = SIMP( statut = 'o',typ = 'R', defaut = 0.1 , -# ----------------------------------------------------------------------- - fr = 'Diametre des algues en m', - ang = 'Diametre of algae in m',), - -# ----------------------------------------------------------------------- - Density_Of_Algae = SIMP( statut = 'o',typ = 'R', defaut = 1050.0 , -# ----------------------------------------------------------------------- - fr = 'Masse volumique des algues en kg/m3', - ang = 'Density of algae in kg/m3',), - -# ----------------------------------------------------------------------- - Thickness_Of_Algae = SIMP( statut = 'o',typ = 'R', defaut = 0.01 , -# ----------------------------------------------------------------------- - fr = 'Epaisseur des algues en m', - ang = 'Thickness of algae in m',), - ), # fin algae - - -# ----------------------------------------------------------------------- - Oil_Spill_Model = SIMP( statut = 'o',typ = bool, defaut = False , -# ----------------------------------------------------------------------- - fr = 'pour declencher le modele de derive de nappes, dans ce cas le fichier de commandes migrhycar est necessaire', - ang = 'will trigger the oil spill model, in this case the migrhycar steering file is needed',), - -# ----------------------------------------------------------------------- - oil_exists = BLOC(condition = "Oil_Spill_Model == True", -# ----------------------------------------------------------------------- -# ----------------------------------------------------------------------- - Oil_Spill_Steering_File = SIMP( statut = 'o',typ = ('Fichier', 'All Files (*)',), -# ----------------------------------------------------------------------- - fr = 'Contient les donnees pour le modele de derive de nappes', - ang = 'Contains data for the oil spill model',), - ), # fin oil_exists - -# ----------------------------------------------------------------------- - drogues_exists = BLOC(condition = "Number_Of_Drogues!= 0 or Algae_Transport_Model == True or Oil_Spill_Model == True", -# ----------------------------------------------------------------------- -# ----------------------------------------------------------------------- - Drogues_File = SIMP( statut = 'o',typ = ('Fichier', 'All Files (*)',), -# ----------------------------------------------------------------------- - fr = 'Fichier de resultat avec les positions des flotteurs', - ang = 'Results file with positions of drogues',), - -# ----------------------------------------------------------------------- - Printout_Period_For_Drogues = SIMP(statut = 'o',typ = 'I',defaut = 1, -# ----------------------------------------------------------------------- - fr = 'Nombre de pas de temps entre 2 sorties de positions de flotteurs dans le fichier des resultats binaire supplementaire\n\ -N affecte pas la qualite du calcul de la trajectoire', - ang = 'Number of time steps between 2 outputs of drogues positions in the binary file',), - ),#fin drogues ou algae - - -# ----------------------------------------------------------------------- - Stochastic_Diffusion_Model = SIMP( statut = 'o',typ = 'I', defaut = 0 , -# ----------------------------------------------------------------------- - fr = 'Pour les particules : flotteurs, algues, hydrocarbures', - ang = 'Meant for particles: drogues, algae, oil spills',), - -# ----------------------------------------------------------------------- - Number_Of_Lagrangian_Drifts = SIMP( statut = 'o',typ = 'I', defaut = 0 , -# ----------------------------------------------------------------------- - fr = 'Permet deffectuer simultanement plusieurs calculs de derives lagrangiennes initiees a des pas differents', - ang = 'Provided for performing several computations of lagrangian drifts starting at different times.',), - -# ----------------------------------------------------------------------- - b_cons = BLOC(condition = "Number_Of_Lagrangian_Drifts != 0", -# ----------------------------------------------------------------------- -# ----------------------------------------------------------------------- - Consigne = SIMP(statut = "o",homo = 'information',typ = "TXM", -# ----------------------------------------------------------------------- - defaut = "Add A and G in the VARIABLES FOR GRAPHIC PRINTOUTS key-word in POST_PROCESSING SECTION"), - ), # fin b_cons - -)# fin PARTICULE -# ----------------------------------------------------------------------- -TRACERS = PROC(nom = "TRACERS",op = None, -# ----------------------------------------------------------------------- - -# ----------------------------------------------------------------------- - Tracers_Setting = FACT(statut = 'o', -# ----------------------------------------------------------------------- - -# ----------------------------------------------------------------------- - Number_Of_Tracers = SIMP( statut='o',typ='I', -# ----------------------------------------------------------------------- - defaut=0 , - fr = 'Definit le nombre de traceurs.', - ang= 'Defines the number of tracers',), -#PNPNPN Recalculer Names_Of_Tracers et Initial_Values_Of_Tracers comme des listes -# pour Names_Of_Tracers = Names_Of_Tracers+Names_Of_Unit -# il faut faire un validateur (la chaine doit faire 16 caracteres evtuellement complete par des blancs) - -# ------------------------------------ - Tracer = FACT(statut = 'o', max="**", -# ------------------------------------ -# ----------------------------------------------------------------------- - Name_Of_Tracer = SIMP( statut='o',typ='TXM', -# ----------------------------------------------------------------------- - fr = 'Noms des traceurs en 16 caracteres', - ang= 'Name of tracers in 32 characters',), - -# ----------------------------------------------------------------------- - Name_Of_Unit = SIMP( statut='o',typ='TXM', -# ----------------------------------------------------------------------- - fr = 'Noms de l unité en 16 caracteres', - ang= 'Name of unit in 16 characters',), - - b_Computation_Continued = BLOC(condition = 'Computation_Continued == True', -#PNPNPN Attention: global_jdc ne fonctionne pas bien : pas de propagation si chgt de valeur de Computation_Continued -# ----------------------------------------------------------------------- - Initial_Values_Of_Tracers = SIMP( statut='o', -# ----------------------------------------------------------------------- - typ = Tuple(2),validators = VerifTypeTuple(('R','R')), - defaut=(0.0, 0.0) , - fr = 'Fixe la valeur initiale du traceur.', - ang= 'Sets the initial value of the tracer.',), - - ), # fin b_Computation_Continued -# ------------------------------------ - Boundary_Conditions = FACT( statut = 'f', -# ------------------------------------ -# ----------------------------------------------------------------------- - Prescribed_Tracers_Values = SIMP( statut='o', -# ----------------------------------------------------------------------- - typ = Tuple(2),validators = VerifTypeTuple(('R','R')), - fr = 'Valeurs du traceur imposees aux frontieres liquides entrantes. Lire la partie du manuel consacree aux conditions aux limites', - ang= 'Tracer values prescribed at the inflow boundaries. Read the manual section dealing with the boundary conditions',), - ), # fin Boundary_Conditions - ), # fin tracer - -# ----------------------------------------------------------------------- - Density_Effects = SIMP( statut='o',typ=bool, -# ----------------------------------------------------------------------- - defaut=False , - fr = 'prise en compte du gradient horizontal de densite le traceur est alors la salinite', - ang= 'the horizontal gradient of density is taken into account the tracer is then the salinity',), - -# ----------------------------------------------------------------------- - b_Density_Effects = BLOC(condition = 'Density_Effects == True', -# ----------------------------------------------------------------------- -# ------------------------------------ - Consigne = SIMP(statut = "o",homo = 'information',typ = "TXM", -# ------------------------------------ - defaut='the first Tracer must be the salinity expressed in kg/m3'), - -# ----------------------------------------------------------------------- - Mean_Temperature = SIMP( statut='o',typ='R', -# ----------------------------------------------------------------------- - defaut=20.0 , - fr = 'temperature de reference pour le calcul des effets de densite ', - ang= 'reference temperature for density effects',), - - ), # fin b_Density_Effects - - ), # fin b_Tracers_Settings -# ----------------------------------------------------------------------- - Solving = FACT( statut='o', -# ----------------------------------------------------------------------- -# ----------------------------------------------------------------------- - Solver_For_Diffusion_Of_Tracers = SIMP( statut='o',typ='TXM', -# ----------------------------------------------------------------------- - defaut='1="conjugate gradient"' , - into =('1="conjugate gradient"', '2="conjugate residual"', '3="conjugate gradient on a normal equation"', - '4="minimum error"', '5="squared conjugate gradient"', '6="cgstab"', '7="gmres "', '8="direct"'),), - -# ----------------------------------------------------------------------- - Solver_Option_For_Tracers_Diffusion = SIMP( statut='o',typ='I', -# ----------------------------------------------------------------------- - defaut=2 , - fr = 'si le solveur est GMRES (7) le mot cle est la dimension de lespace de KRILOV (valeurs conseillees entre 2 et 15)', - ang= 'WHEN GMRES (7) IS CHOSEN, DIMENSION OF THE KRYLOV SPACE TRY VALUES BETWEEN 2 AND 15',), - -# ----------------------------------------------------------------------- - Preconditioning_For_Diffusion_Of_Tracers = SIMP( statut='o',typ='TXM', -# ----------------------------------------------------------------------- - defaut='2="diagonal"' , - into =('2="diagonal"', '0="no preconditioning "', '3="diagonal condensed"', '7="crout"', '14="diagonal and crout"', '21="diagonal condensed and crout"'), - fr = 'Permet de preconditionner le systeme relatif au traceur. Memes definition et possibilites que pour le mot-cle PRECONDITIONNEMENT.', - ang= 'Preconditioning of the linear system in the tracer diffusion step. Same definition and possibilities as for the keyword PRECONDITIONING', - ), - ), # fin_Solving - -# ----------------------------------------------------------------------- - Accuracy = FACT( statut='o', -# ----------------------------------------------------------------------- -# ----------------------------------------------------------------------- - Accuracy_For_Diffusion_Of_Tracers = SIMP( statut='o',typ='R', defaut=1e-06 , -# ----------------------------------------------------------------------- - fr = 'Fixe la precision demandee pour le calcul de la diffusion du traceur.', - ang= 'Sets the required accuracy for computing the tracer diffusion.',), - -# ----------------------------------------------------------------------- - Maximum_Number_Of_Iterations_For_Diffusion_Of_Tracers = SIMP( statut='o',typ='I', defaut=60 , -# ----------------------------------------------------------------------- - fr = 'Limite le nombre diterations du solveur a chaque pas de temps pour le calcul de la diffusion du traceur.', - ang= 'Limits the number of solver iterations at each time step for the diffusion of tracer.',), - - ), # fin Accuracy -# ----------------------------------------------------------------------- - Sources = FACT( statut='o', -# ----------------------------------------------------------------------- -# ------------------------------------ - Consigne = SIMP(statut = "o",homo = 'information',typ = "TXM", -# ------------------------------------ - defaut = "La longueur de la liste doit etre nb de source * nb de tracers"), -# ----------------------------------------------------------------------- - Values_Of_The_Tracers_At_The_Sources = SIMP( statut='o',typ='R', max='**' , -# ----------------------------------------------------------------------- - fr = 'Valeurs des traceurs a chacune des sources', - ang= 'Values of the tracers at the sources',), - ), # fin Sources -# ----------------------------------------------------------------------- - Metereology = FACT( statut='o', -# ----------------------------------------------------------------------- -# en fait, c'est une liste de Tuple de 2. Il faudrait caluler la taille en fonction du Nombre de sources -# ----------------------------------------------------------------------- - Values_Of_Tracers_In_The_Rain = SIMP( -# ----------------------------------------------------------------------- - statut='o',typ='R',defaut=0, max=2 , fr = '', ang= '',), - ), # fin Metereology - -# ----------------------------------------------------------------------- - Numerical = FACT( statut='o', -# ----------------------------------------------------------------------- - -# ----------------------------------------------------------------------- - Implicitation_Coefficient_Of_Tracers = SIMP( statut='o',typ='R', -# ----------------------------------------------------------------------- - defaut=0.6 , - fr = 'Fixe la valeur du coefficient dimplicitation du traceur', - ang= 'Sets the value of the implicitation coefficient for the tracer',), - -# ----------------------------------------------------------------------- - Diffusion_Of_Tracers = SIMP( statut='o',typ=bool, -# ----------------------------------------------------------------------- - defaut=True , - fr = 'Prise en compte ou non de la diffusion du traceur passif.', - ang= 'The diffusion of the passive tracer is taken into account or ignored.',), - -# ------------------------------------ - b_Diffusion_Of_Tracers = BLOC(condition = 'Diffusion_Of_Tracers == True', -# ------------------------------------ -# ------------------------------------ - Coefficient_For_Diffusion_Of_Tracers = SIMP( statut='o',typ='R', -# ------------------------------------ - defaut=1e-06 , - fr = 'Fixe la valeur du coefficient de diffusion du traceur. Linfluence de ce parametre sur levolution du traceur dans le temps est importante.', - ang= 'Sets the value of the tracer diffusivity.',), - -# ------------------------------------ - Option_For_The_Diffusion_Of_Tracers = SIMP( statut='o',typ='TXM', -# ------------------------------------ - defaut='Diffusion in the form div( nu grad(T))' , - into=[ 'Diffusion in the form div( nu grad(T))', 'Diffusion in the form 1/h div ( h nu grad(T))',],), - ), # fin b_Diffusion_Of_Tracers - -# ------------------------------------ - Scheme_For_Advection_Of_Tracers = SIMP( statut='o',typ='TXM', -# ------------------------------------ - defaut="CHARACTERISTICS" , - into =("NO ADVECTION", "CHARACTERISTICS", "EXPLICIT + SUPG", "EXPLICIT LEO POSTMA", "EXPLICIT + MURD SCHEME N", - "EXPLICIT + MURD SCHEME PSI", "LEO POSTMA FOR TIDAL FLATS", "N-SCHEME FOR TIDAL FLATS"), - fr = 'Choix du schema de convection pour les traceurs, remplace FORME DE LA CONVECTION', - ang= 'Choice of the advection scheme for the tracers, replaces TYPE OF ADVECTION',), - -# ------------------------------------ - Scheme_Option_For_Advection_Of_Tracers = SIMP( statut='o',typ='TXM', -# ------------------------------------ - defaut='explicit' , - into=['explicit','predictor-corrector for tracers'], - fr = 'Si present remplace et a priorite sur : OPTION POUR LES CARACTERISTIQUES OPTION DE SUPG Si schema PSI : 1=explicite 2=predicteur-correcteur pour les traceurs', - ang= 'If present replaces and has priority over: OPTION FOR CHARACTERISTICS SUPG OPTION IF PSI SCHEME: 1=explicit 2=predictor-corrector for tracers',), - -# ------------------------------------ - Mass_Lumping_On_Tracers = SIMP ( statut='o',typ='R', -# ------------------------------------ - defaut=0, - fr = 'Fixe le taux de mass-lumping effectue sur le traceur.', - ang = 'Sets the amount of mass-lumping that is performed on the tracer.',), - - ), # fin Numerical -# ----------------------------------------------------------------------- - Degradation = FACT( statut='o', -# ----------------------------------------------------------------------- - -# PN Attention, il faut recalculer Law_Of_Tracers_Degradation -# et les coefficients. -# Question : pourquoi 2 et pas selon le nb de tracer -# Est ce que ce $ va sous tracer ? -# ----------------------------------------------------------------------- - Law1_Of_Tracers_Degradation = SIMP( statut='o',typ='TXM', -# ----------------------------------------------------------------------- - into=["NO DEGRADATION","F(T90) LAW"], - defaut="NO DEGRADATION", - fr = 'Prise en compte dune loi de decroissance des traceurs', - ang= 'Take in account a law for tracers decrease',), - -# ----------------------------------------------------------------------- - b_Law1 = BLOC(condition = 'Law1_Of_Tracers_Degradation == "F(T90) LAW"', -# ----------------------------------------------------------------------- -# ----------------------------------------------------------------------- - Coefficient_1_For_Law_Of_Tracers_Degradation = SIMP( statut='o',typ='R', -# ----------------------------------------------------------------------- - fr = 'Coefficient 1 de la loi de decroissance des traceurs', - ang= 'Coefficient 1 of law for tracers decrease',), - ),# fin b_Law1 - -# ----------------------------------------------------------------------- - Law2_Of_Tracers_Degradation = SIMP( statut='o',typ='TXM', -# ----------------------------------------------------------------------- - into=["NO DEGRADATION","F(T90) LAW"], - defaut="NO DEGRADATION", - fr = 'Prise en compte dune loi de decroissance des traceurs', - ang= 'Take in account a law for tracers decrease',), - -# ----------------------------------------------------------------------- - b_Law2 = BLOC(condition = 'Law2_Of_Tracers_Degradation == "F(T90) LAW"', -# ----------------------------------------------------------------------- -# ----------------------------------------------------------------------- - Coefficient_2_For_Law_Of_Tracers_Degradation = SIMP( statut='o',typ='R', -# ----------------------------------------------------------------------- - fr = 'Coefficient 2 de la loi de decroissance des traceurs', - ang= 'Coefficient 2 of law for tracers decrease',), - ),# fin b_Law2 - ), # fin Degradation - -)# fin TRACERS - - -Ordre_Des_Commandes = ( 'INITIALIZATION', 'BOUNDARY_CONDITIONS','GENERAL_PARAMETERS', 'PHYSICAL_PARAMETERS', 'NUMERICAL_PARAMETERS', -'TURBULENCE', 'TRACERS', 'PARTICLE_TRANSPORT', 'CONSTRUCTION_WORKS_MODELLING', 'TIDE_PARAMETERS', 'OUTPUT_FILES') diff --git a/OldCodes/ts/a.py b/OldCodes/ts/a.py deleted file mode 100644 index 3e93a25c..00000000 --- a/OldCodes/ts/a.py +++ /dev/null @@ -1,8 +0,0 @@ -liste=l.split() -if len(liste) > 1 : - txt="" - for e in liste: - txt+='_'+e - txt=txt[1:] -else : - txt=l diff --git a/OldCodes/ts/dicoparser.py b/OldCodes/ts/dicoparser.py deleted file mode 100644 index 69c5f95e..00000000 --- a/OldCodes/ts/dicoparser.py +++ /dev/null @@ -1,160 +0,0 @@ - -import shlex - -DICO_EXT = '.dico' - -class Dicoparser: - def __init__( self, theFileName, theStartAttr, theIndexAttr ): - if theFileName=='': - return - if not theFileName.endswith( DICO_EXT ): - theFileName += DICO_EXT - aFile = open( theFileName ) - self.data = self.parse( aFile.read(), theStartAttr, theIndexAttr ) - aFile.close() - - def parse( self, theText, theStartAttr, theIndexAttr ): - aTokenList = self.parse_tokens( theText ) - self.expand_values( aTokenList ) - aList = self.convert_to_tuples( aTokenList ) - return self.convert_to_blocks( aList, theStartAttr, theIndexAttr ) - - def parse_tokens( self, theText ): - theText = theText.replace( "''", "`" ) - aLexer = shlex.shlex( theText ) - aLexer.commenters = '/' - aLexer.quotes = '\'"' - aLexer.wordchars = aLexer.wordchars + '-.' - aTokenList = [] - for aToken in aLexer: - #print aToken - if aToken[0]=="'" and aToken[-1]=="'": - aToken = aToken[1:-1] - elif aToken[0]=='"' and aToken[-1]=='"': - aToken = aToken[1:-1] - if aToken=='`': - aToken = '' - aToken = aToken.replace( "`", "'" ) - aToken = aToken.replace( "\n", "" ) - aToken = self.simplify_spaces( aToken ) - #print aToken - aTokenList.append( aToken ) - return aTokenList - - def simplify_spaces( self, theToken ): - return ' '.join( theToken.split() ) - - def expand_values( self, theList ): - for i in xrange( 0, len( theList ) ): - if '=' in theList[i] and theList[i]!='=': - aTokenList = self.parse_tokens( theList[i] ) - aSubItemsList = self.convert_to_tuples( aTokenList ) - if( len( aSubItemsList ) == 0 ): - print theList[i] - theList[i] = aSubItemsList[0] # we assume that only one '=' in the subitem - - def convert_to_tuples( self, theList ): - aPairsList = [] - aKey = '' - i = 0 - n = len( theList ) - while i 0 and i0: - aData[aBlockKey] = aBlock - aBlockKey = '' - aBlock = {} - elif aKey==theIndexAttr: - #print "__index__" - aBlockKey = aValue - #print aBlockKey - aBlock[aKey] = aValue - #print aData - if len(aBlock)>0: - aData[aBlockKey] = aBlock - return aData - - def are_equal( self, theStrDico, theStrCata ): - return theStrDico == self.to_dico_str( theStrCata ) - - def to_dico_str( self, theStrCata ): - aCata = theStrCata.replace( '_', ' ' ) - aCata = aCata.upper() - return aCata - - def to_cata_str( self, theStrDico ): - aWordsList = theStrDico.split() - aCata = [] - for aWord in aWordsList: - aWord = aWord.lower() - aWord = aWord[0].upper() + aWord[1:] - aCata.append( aWord ) - return ' '.join( aCata ) - - def search_in_block( self, theBlock, theAttrTr ): - #print 'search_in_block:', theAttrTr - return theBlock[theAttrTr] - - def search( self, theIndexText, theAttrTr, theChoiceText, theAttrCh, theAttrChTr ): - anIndexText = self.to_dico_str( theIndexText ) - if not anIndexText in self.data: - return '' - - if theAttrCh=='': - return self.search_in_block( self.data[anIndexText], theAttrTr ) - - aDataCh = self.search_in_block( self.data[anIndexText], theAttrCh ) - aDataChTr = self.search_in_block( self.data[anIndexText], theAttrChTr ) - if isinstance( theChoiceText, basestring ): - aChoiceText = self.to_dico_str( theChoiceText ) - else: - aChoiceText = theChoiceText - #print 'Choice text:', aChoiceText - #print 'Choice data:', aDataCh - #print 'Choice tr data:', aDataChTr - if isinstance( aDataCh, basestring ) and aDataCh==aChoiceText: - return aDataChTr - - for i in xrange( 0, len(aDataCh) ): - if isinstance( aDataCh[i], tuple ): - aKey, aValue = aDataCh[i] - elif isinstance( aDataCh[i], basestring ): - aKey = '' - aValue = aDataCh[i] - #print aKey, aValue - if aValue==aChoiceText: - if isinstance( aDataChTr[i], tuple ): - aKeyTr, aValueTr = aDataChTr[i] - elif isinstance( aDataChTr[i], basestring ): - aKeyTr = '' - aValueTr = aDataChTr[i] - return aValueTr - return '' - - def translate( self, theIndexText, theAttrTr, theChoiceText='', theAttrCh='', theAttrChTr='' ): - aTrText = self.search( theIndexText, theAttrTr, theChoiceText, theAttrCh, theAttrChTr ) - #print aTrText - return self.to_cata_str( aTrText ) diff --git a/OldCodes/ts/main.ts b/OldCodes/ts/main.ts deleted file mode 100644 index f192f4e8..00000000 --- a/OldCodes/ts/main.ts +++ /dev/null @@ -1,1614 +0,0 @@ - - - - - - - Values_Of_Tracers_In_The_Rain - - - Valeurs_Des_Traceurs_Dans_La_Pluie - - - - - Threshold_Depth_For_Receding_Procedure - - - Profondeur_Limite_Pour_Procedure_De_Ressuyage - - - - - Title - - - Titre - - - - - Spatial_Projection_Type - - - Type_De_Projection_Spatiale - - - - - Stochastic_Diffusion_Model - - - Modele_De_Diffusion_Stochastique - - - - - Drogues_File - - - Fichier_Des_Flotteurs - - - - - Origin_Coordinates - - - Coordonnees_De_L'origine - - - - - Velocities_Of_The_Sources_Along_X - - - Vitesses_Des_Sources_Selon_X - - - - - Velocities_Of_The_Sources_Along_Y - - - Vitesses_Des_Sources_Selon_Y - - - - - Finite_Volume_Scheme - - - Schema_En_Volumes_Finis - - - - - Density_Of_Algae - - - Masse_Volumique_Des_Algues - - - - - Geometry_File - - - Fichier_De_Geometrie - - - - - Turbulence_Model - - - Modele_De_Turbulence - - - - - Oil_Spill_Model - - - Modele_De_Nappes_D'hydrocarbures - - - - - Definition_Of_Zones - - - Definition_De_Zones - - - - - Rain_Or_Evaporation - - - Pluie_Ou_Evaporation - - - - - Water_Density - - - Masse_Volumique_De_L'eau - - - - - Sources_File - - - Fichier_Des_Sources - - - - - Friction_Coefficient - - - Coefficient_De_Frottement - - - - - Roughness_Coefficient_Of_Boundaries - - - Coefficient_De_Rugosite_Des_Bords - - - - - Option_For_Tidal_Boundary_Conditions - - - Option_Pour_Les_Conditions_Aux_Limites_De_Maree - - - - - Coefficient_To_Calibrate_Tidal_Velocities - - - Coefficient_De_Calage_Des_Vitesses_De_Courant - - - - - Initial_Time_Set_To_Zero - - - Remise_A_Zero_Du_Temps - - - - - Maximum_Number_Of_Iterations_For_Diffusion_Of_Tracers - - - Maximum_D'iterations_Pour_La_Diffusion_Des_Traceurs - - - - - Binary_Results_File - - - Fichier_De_Resultats_Binaire - - - - - Number_Of_Drogues - - - Nombre_De_Flotteurs - - - - - Air_Pressure - - - Pression_Atmospherique - - - - - Mean_Depth_For_Linearization - - - Profondeur_Moyenne_Pour_La_Linearisation - - - - - Control_Of_Limits - - - Controle_Des_Limites - - - - - Free_Surface_Gradient_Compatibility - - - Compatibilite_Du_Gradient_De_Surface_Libre - - - - - Prescribed_Tracers_Values - - - Valeurs_Imposees_Des_Traceurs - - - - - defaut - - - Saint-venant_Ef - - - - - Velocity_Diffusivity - - - Coefficient_De_Diffusion_Des_Vitesses - - - - - Time_Step - - - Pas_De_Temps - - - - - Validation - - - Validation - - - - - Wind - - - Vent - - - - - Density_Effects - - - Effets_De_Densite - - - - - Implicitation_Coefficient_Of_Tracers - - - Coefficient_D'implicitation_Des_Traceurs - - - - - Formatted_Results_File - - - Fichier_De_Resultats_Formate - - - - - Debugger - - - Debugger - - - - - Equations - - - Equations - - - - - Original_Date_Of_Time - - - Date_De_L'origine_Des_Temps - - - - - Number_Of_Private_Arrays - - - Nombre_De_Tableaux_Prives - - - - - Prescribed_Elevations - - - Cotes_Imposees - - - - - Number_Of_Time_Steps - - - Nombre_De_Pas_De_Temps - - - - - Wind_Velocity_Along_X - - - Vitesse_Du_Vent_Suivant_X - - - - - Variables_To_Be_Printed - - - Variables_A_Imprimer - - - - - Preconditioning - - - Preconditionnement - - - - - Reference_File_Format - - - Format_Du_Fichier_De_Reference - - - - - Type_Of_Sources - - - Type_Des_Sources - - - - - Tidal_Flats - - - Bancs_Decouvrants - - - - - Ascii_Database_For_Tide - - - Base_Ascii_De_Donnees_De_Maree - - - - - Sections_Output_File - - - Fichier_De_Sortie_Des_Sections_De_Controle - - - - - Mean_Temperature - - - Temperature_Moyenne - - - - - Initial_Elevation - - - Cote_Initiale - - - - - Tubes_Data_File - - - Fichier_De_Donnees_Des_Buses - - - - - Boundary_Conditions_File - - - Fichier_Des_Conditions_Aux_Limites - - - - - Breach - - - Breche - - - - - Treatment_Of_The_Linear_System - - - Traitement_Du_Systeme_Lineaire - - - - - Coefficient_Of_Wind_Influence - - - Coefficient_D'influence_Du_Vent - - - - - List_Of_Points - - - Liste_De_Points - - - - - Listing_Printout_Period - - - Periode_Pour_Les_Sorties_Listing - - - - - Initial_Guess_For_H - - - Ordre_Du_Tir_Initial_Pour_H - - - - - Geometry_File_Format - - - Format_Du_Fichier_De_Geometrie - - - - - Coefficient_1_For_Law_Of_Tracers_Degradation - - - Coefficient_1_De_La_Loi_De_Degradation_Des_Traceurs - - - - - Number_Of_Lagrangian_Drifts - - - Nombre_De_Derives_Lagrangiennes - - - - - Weirs_Data_File - - - Fichier_De_Donnees_Des_Seuils - - - - - Rain_Or_Evaporation_In_Mm_Per_Day - - - Pluie_Ou_Evaporation_En_Mm_Par_Jour - - - - - Solver - - - Solveur - - - - - Maximum_Number_Of_Friction_Domains - - - Nombre_Maximum_De_Domaines_De_Frottement - - - - - Elements_Masked_By_User - - - Elements_Masques_Par_L'utilisateur - - - - - Control_Sections - - - Sections_De_Controle - - - - - Depth_In_Friction_Terms - - - Hauteur_Dans_Les_Termes_De_Frottement - - - - - Solver_Accuracy - - - Precision_Du_Solveur - - - - - Wave_Driven_Currents - - - Courants_De_Houle - - - - - Number_Of_Culverts - - - Nombre_De_Siphons - - - - - Liquid_Boundaries_File - - - Fichier_Des_Frontieres_Liquides - - - - - Maximum_Number_Of_Iterations_For_Identification - - - Maximum_D'iterations_Pour_L'identification - - - - - Coefficient_For_Diffusion_Of_Tracers - - - Coefficient_De_Diffusion_Des_Traceurs - - - - - Option_For_The_Diffusion_Of_Velocities - - - Option_Pour_La_Diffusion_Des_Vitesses - - - - - Coefficient_To_Calibrate_Tidal_Range - - - Coefficient_De_Calage_Du_Marnage - - - - - Binary_Data_File_1 - - - Fichier_De_Donnees_Binaire_1 - - - - - Binary_Data_File_2 - - - Fichier_De_Donnees_Binaire_2 - - - - - Minor_Constituents_Inference - - - Interpolation_De_Composantes_Mineures - - - - - Implicitation_For_Velocity - - - Implicitation_Pour_La_Vitesse - - - - - Continuity_Correction - - - Correction_De_Continuite - - - - - Original_Hour_Of_Time - - - Heure_De_L'origine_Des_Temps - - - - - Law_Of_Friction_On_Lateral_Boundaries - - - Loi_De_Frottement_Sur_Les_Parois_Laterales - - - - - Propagation - - - Propagation - - - - - Solver_For_Diffusion_Of_Tracers - - - Solveur_Pour_La_Diffusion_Des_Traceurs - - - - - Discretizations_In_Space - - - Discretisations_En_Espace - - - - - Solver_Option - - - Option_Du_Solveur - - - - - Advection_Of_H - - - Convection_De_H - - - - - Output_Of_Initial_Conditions - - - Sortie_Des_Conditions_Initiales - - - - - Record_Number_For_Restart - - - Enregistrement_Pour_Suite_De_Calcul - - - - - Accuracy_For_Diffusion_Of_Tracers - - - Precision_Pour_La_Diffusion_Des_Traceurs - - - - - Initial_Guess_For_U - - - Ordre_Du_Tir_Initial_Pour_U - - - - - Advection_Of_K_And_Epsilon - - - Convection_De_K_Et_Epsilon - - - - - Identification_Method - - - Methode_D'identification - - - - - Names_Of_Points - - - Noms_Des_Points - - - - - Zone_Number_In_Geographic_System - - - Numero_De_Fuseau_Ou_Projection_Dans_Le_Systeme_Geographique - - - - - Matrix_Storage - - - Stockage_Des_Matrices - - - - - Algae_Type - - - Type_Des_Algues - - - - - Thickness_Of_Algae - - - Epaisseur_Des_Algues - - - - - Newmark_Time_Integration_Coefficient - - - Coefficient_D'integration_En_Temps_De_Newmark - - - - - Friction_Data_File - - - Fichier_De_Donnees_Pour_Le_Frottement - - - - - Implicitation_For_Diffusion_Of_Velocity - - - Implicitation_Pour_La_Diffusion_Des_Vitesses - - - - - Limit_Values - - - Valeurs_Limites - - - - - Advection - - - Convection - - - - - Binary_Database_1_For_Tide - - - Base_Binaire_1_De_Donnees_De_Maree - - - - - Results_File - - - Fichier_Des_Resultats - - - - - Algae_Transport_Model - - - Modele_De_Transport_Des_Algues - - - - - Treatment_Of_Negative_Depths - - - Traitement_Des_Hauteurs_Negatives - - - - - Option_For_The_Diffusion_Of_Tracers - - - Option_Pour_La_Diffusion_Des_Traceurs - - - - - Ordinates_Of_Sources - - - Ordonnees_Des_Sources - - - - - Coriolis_Coefficient - - - Coefficient_De_Coriolis - - - - - Water_Discharge_Of_Sources - - - Debits_Des_Sources - - - - - Advection_Of_U_And_V - - - Convection_De_U_Et_V - - - - - Variables_For_Graphic_Printouts - - - Variables_Pour_Les_Sorties_Graphiques - - - - - Geographic_System - - - Systeme_Geographique - - - - - Coriolis - - - Coriolis - - - - - Desired_Courant_Number - - - Nombre_De_Courant_Souhaite - - - - - Latitude_Of_Origin_Point - - - Latitude_Du_Point_Origine - - - - - Time_Range_For_Fourier_Analysis - - - Bornes_En_Temps_Pour_L'analyse_De_Fourier - - - - - Graphic_Printout_Period - - - Periode_Pour_Les_Sorties_Graphiques - - - - - Tide_Generating_Force - - - Force_Generatrice_De_La_Maree - - - - - Preconditioning_For_Diffusion_Of_Tracers - - - Preconditionnement_Pour_La_Diffusion_Des_Traceurs - - - - - Number_Of_Tubes - - - Nombre_De_Buses - - - - - Vertical_Structures - - - Structures_Verticales - - - - - Stop_If_A_Steady_State_Is_Reached - - - Arret_Si_Un_Etat_Permanent_Est_Atteint - - - - - Number_Of_Weirs - - - Nombre_De_Seuils - - - - - Listing_Printout - - - Sortie_Listing - - - - - Previous_Computation_File - - - Fichier_Du_Calcul_Precedent - - - - - Fortran_File - - - Fichier_Fortran - - - - - Sections_Input_File - - - Fichier_Des_Sections_De_Controle - - - - - Binary_Database_2_For_Tide - - - Base_Binaire_2_De_Donnees_De_Maree - - - - - Results_File_Format - - - Format_Du_Fichier_Des_Resultats - - - - - Accuracy_Of_K - - - Precision_Sur_K - - - - - Tidal_Model_File - - - Fichier_Du_Modele_De_Maree - - - - - Fourier_Analysis_Periods - - - Periodes_D'analyse_De_Fourier - - - - - H_Clipping - - - Clipping_De_H - - - - - Tolerances_For_Identification - - - Precisions_Pour_L'identification - - - - - Previous_Computation_File_Format - - - Format_Du_Fichier_Du_Calcul_Precedent - - - - - Prescribed_Flowrates - - - Debits_Imposes - - - - - Bottom_Topography_File - - - Fichier_Des_Fonds - - - - - Implicitation_For_Depth - - - Implicitation_Pour_La_Hauteur - - - - - Cost_Function - - - Fonction_Cout - - - - - Diffusion_Of_Tracers - - - Diffusion_Des_Traceurs - - - - - Formatted_Data_File_1 - - - Fichier_De_Donnees_Formate_1 - - - - - Formatted_Data_File_2 - - - Fichier_De_Donnees_Formate_2 - - - - - Computation_Continued - - - Suite_De_Calcul - - - - - Breaches_Data_File - - - Fichier_De_Donnees_Des_Breches - - - - - Diffusion_Of_Velocity - - - Diffusion_Des_Vitesses - - - - - Type_Of_Advection - - - Forme_De_La_Convection - - - - - Solver_Option_For_Tracers_Diffusion - - - Option_Du_Solveur_Pour_La_Diffusion_Des_Traceurs - - - - - Advection_Of_Tracers - - - Convection_Des_Traceurs - - - - - Printout_Period_For_Drogues - - - Periode_Pour_Les_Sorties_De_Flotteurs - - - - - Option_For_The_Treatment_Of_Tidal_Flats - - - Option_De_Traitement_Des_Bancs_Decouvrants - - - - - Physical_Characteristics_Of_The_Tsunami - - - Parametres_Physiques_Du_Tsunami - - - - - Maximum_Number_Of_Iterations_For_K_And_Epsilon - - - Maximum_D'iterations_Pour_K_Et_Epsilon - - - - - Tidal_Data_Base - - - Base_De_Donnees_De_Maree - - - - - Maximum_Number_Of_Iterations_For_Solver - - - Maximum_D'iterations_Pour_Le_Solveur - - - - - Number_Of_Tracers - - - Nombre_De_Traceurs - - - - - Threshold_Depth_For_Wind - - - Profondeur_Limite_Pour_Le_Vent - - - - - Gravity_Acceleration - - - Acceleration_De_La_Pesanteur - - - - - Option_For_Characteristics - - - Option_Pour_Les_Caracteristiques - - - - - Spacing_Of_Roughness_Elements - - - Espacement_Des_Elements_De_Frottement - - - - - Parallel_Processors - - - Processeurs_Paralleles - - - - - Harmonic_Constants_File - - - Fichier_Des_Constantes_Harmoniques - - - - - Spherical_Coordinates - - - Coordonnees_Spheriques - - - - - Parameter_Estimation - - - Estimation_De_Parametre - - - - - Linearized_Propagation - - - Propagation_Linearisee - - - - - Accuracy_Of_Epsilon - - - Precision_Sur_Epsilon - - - - - Diameter_Of_Roughness_Elements - - - Diametre_Des_Elements_De_Frottement - - - - - Number_Of_First_Time_Step_For_Graphic_Printouts - - - Numero_Du_Premier_Pas_De_Temps_Pour_Les_Sorties_Graphiques - - - - - Threshold_For_Negative_Depths - - - Seuil_Pour_Les_Profondeurs_Negatives - - - - - Coefficient_To_Calibrate_Sea_Level - - - Coefficient_De_Calage_Du_Niveau_De_Mer - - - - - Wind_Velocity_Along_Y - - - Vitesse_Du_Vent_Suivant_Y - - - - - Information_About_Solver - - - Informations_Sur_Le_Solveur - - - - - Initial_Conditions - - - Conditions_Initiales - - - - - Culvert_Data_File - - - Fichier_De_Donnees_Des_Siphons - - - - - Maximum_Number_Of_Iterations_For_Advection_Schemes - - - Maximum_D'iterations_Pour_Les_Schemas_De_Convection - - - - - Longitude_Of_Origin_Point - - - Longitude_Du_Point_Origine - - - - - Law_Of_Bottom_Friction - - - Loi_De_Frottement_Sur_Le_Fond - - - - - Option_For_Tsunami_Generation - - - Option_Pour_La_Generation_De_Tsunami - - - - - Type_Of_Weirs - - - Type_Des_Seuils - - - - - Record_Number_In_Wave_File - - - Numero_De_L'enregistrement_Dans_Le_Fichier_De_Houle - - - - - Abscissae_Of_Sources - - - Abscisses_Des_Sources - - - - - Values_Of_The_Tracers_At_The_Sources - - - Valeurs_Des_Traceurs_Des_Sources - - - - - Treatment_Of_Fluxes_At_The_Boundaries - - - Traitement_Des_Flux_Aux_Frontieres - - - - - Printing_Cumulated_Flowrates - - - Impression_Du_Cumul_Des_Flux - - - - - Bottom_Smoothings - - - Lissages_Du_Fond - - - - - Initial_Depth - - - Hauteur_Initiale - - - - - Minimum_Value_Of_Depth - - - Valeur_Minimum_De_H - - - - - Reference_File - - - Fichier_De_Reference - - - - - Turbulence_Model_For_Solid_Boundaries - - - Regime_De_Turbulence_Pour_Les_Parois - - - - - Duration - - - Duree_Du_Calcul - - - - - Stop_Criteria - - - Criteres_D'arret - - - - - Prescribed_Velocities - - - Vitesses_Imposees - - - - - Initial_Values_Of_Tracers - - - Valeurs_Initiales_Des_Traceurs - - - - - Compatible_Computation_Of_Fluxes - - - Calcul_Compatible_Des_Flux - - - - diff --git a/OldCodes/ts/prefs.py b/OldCodes/ts/prefs.py deleted file mode 100644 index 87710926..00000000 --- a/OldCodes/ts/prefs.py +++ /dev/null @@ -1,24 +0,0 @@ -# Copyright (C) 2007-2012 EDF R&D -# -# 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 -# -code="TELEMAC" -import sys, os -if os.path.dirname(os.path.abspath(__file__)) not in sys.path : - sys.path.insert(0,os.path.dirname(os.path.abspath(__file__))) -if os.path.join(os.path.dirname(os.path.abspath(__file__)),'..') not in sys.path: - sys.path.insert(0,os.path.join(os.path.dirname(os.path.abspath(__file__)),'..')) diff --git a/OldCodes/ts/telemac2dv6p3.dico b/OldCodes/ts/telemac2dv6p3.dico deleted file mode 100644 index 578f26b7..00000000 --- a/OldCodes/ts/telemac2dv6p3.dico +++ /dev/null @@ -1,5687 +0,0 @@ -&DYN -/ -/!RUBRIQUE 'ENTREES-SORTIES, FICHIERS' -/!BACKGROUND 'LightGray' -/!FOREGROUND 'Brown' -/!RUBRIQUE 'ENTREES-SORTIES, GENERALITES' -/!BACKGROUND 'LightGray' -/!FOREGROUND 'Brown' -/!RUBRIQUE 'ENTREES-SORTIES, GRAPHIQUES ET LISTING' -/!BACKGROUND 'LightGray' -/!FOREGROUND 'Brown' -/!RUBRIQUE 'PARAMETRES NUMERIQUES' -/!BACKGROUND 'LightGray' -/!FOREGROUND 'Brown' -/!RUBRIQUE 'PARAMETRES NUMERIQUES, SOLVEUR' -/!BACKGROUND 'LightGray' -/!FOREGROUND 'Brown' -/!RUBRIQUE 'PARAMETRES NUMERIQUES, VITESSE-CELERITE-HAUTEUR' -/!BACKGROUND 'LightGray' -/!FOREGROUND 'Brown' -/!RUBRIQUE 'PARAMETRES NUMERIQUES, MODELE K-EPSILON' -/!BACKGROUND 'LightGray' -/!FOREGROUND 'Brown' -/!RUBRIQUE 'EQUATIONS' -/!BACKGROUND 'LightGray' -/!FOREGROUND 'Brown' -/!RUBRIQUE 'EQUATIONS, CONDITIONS LIMITES' -/!BACKGROUND 'LightGray' -/!FOREGROUND 'Brown' -/!RUBRIQUE 'EQUATIONS, CONDITIONS INITIALES' -/!BACKGROUND 'LightGray' -/!FOREGROUND 'Brown' -/!RUBRIQUE 'EQUATIONS, SOURCES' -/!BACKGROUND 'LightGray' -/!FOREGROUND 'Brown' -/!RUBRIQUE 'CONSTANTES PHYSIQUES' -/!BACKGROUND 'LightGray' -/!FOREGROUND 'Brown' -/---SYSTEME-TELEMAC-V6P3------------------------------TELEMAC-2D------------- -/ -/Signification des differents mode d'acquisition/restitution -/des fichiers vis a vis du parallelisme : -/ -/ - "SCAL" : -/ Meme fichier pour tous les processeurs lu par tous. -/ Seule la version du maitre est consideree apres calcul. -/ -/ - "SELAFIN" : -/ Le fichier est "decompose/regroupe en sous-domaines" avec les outils -/ "partel/gretel" (dans le mode par defaut "parallelisme automatique") -/ Chaque processeur dispose d'un fichier prive. -/ - "SELAFIN-GEOM" : -/ idem SELAFIN mais pour le fichier de geometrie ='FICHIER DE GEOMETRIE' -/ (usage par le regroupeur GRETEL en parallelisme) -/ -/ - "PARAL" : -/ Le fichier est duplique avant calcul ("LIT") pour chaque processeur -/ (avec une extension numerique), sauf s'il pre-existe avec cette -/ extension numerique : il est alors utilise (copie). -/ En mode "non automatique" : les fichiers lus doivent pre-exister avec -/ leur extension numerique. -/ S'il s'agit d'un fichier resultat ("ECR"), le fichier est restitue -/ avec son extension numerique (fichier specifique a chaque processeur). -/ -/ - "CONLIM" : -/ Cette valeur designe le fichier des "conditions aux limites" -/ (utilise par le decoupeur "partel"). -/ -/ - "SECTION" : -/ Sections input file, to be treated in parallel by partel in -/ a similar way as CONLIM !jaj #### -/ -/---SYSTEME-TELEMAC-V6P3------------------------DeltaCAD-/-Septembre-2003---- - -NOM = 'FICHIER DE GEOMETRIE' -NOM1 = 'GEOMETRY FILE' -TYPE = CARACTERE -INDEX = 6 -MNEMO = 'T2D_FILES(T2DGEO)%NAME' -TAILLE = 0 -SUBMIT = 'T2DGEO-READ-01;T2DGEO;OBLIG;BIN;LIT;SELAFIN-GEOM' -/DEFAUT = ' ' -/DEFAUT1 = ' ' -RUBRIQUE = 'ENTREES-SORTIES, FICHIERS';'NOMS' -RUBRIQUE1 = 'INPUT-OUTPUT, FILES';'NAMES' -COMPORT = -'Foreground ("ENTREES-SORTIES, FICHIERS*NOMS") -IS VALEUR (red)' -NIVEAU = 1 -APPARENCE = 'LISTE IS FICHIER' -AIDE = 'Nom du fichier contenant le maillage du calcul a realiser.' -AIDE1 = 'Name of the file containing the mesh. This file may also -contain the topography and the friction coefficients.' - -NOM = 'CONTROLE DES LIMITES' -NOM1 = 'CONTROL OF LIMITS' -TYPE = LOGIQUE -INDEX = 23 -MNEMO = 'VERLIM' -TAILLE = 0 -DEFAUT = NON -DEFAUT1 = NO -RUBRIQUE = 'ENTREES-SORTIES, GENERALITES';'CONTROLE' -RUBRIQUE1 = 'INPUT-OUTPUT, INFORMATION';'CONTROL' -COMPORT = 'Affichage ("VALEURS LIMITES") IS VALEUR ()' -NIVEAU = 2 -AIDE = 'UTILISER AVEC LE MOT-CLE : VALEURS LIMITES, LE PROGRAMME -S''ARRETE SI LES LIMITES SUR U,V,H OU T SONT DEPASSEES' -AIDE1 = 'USE WITH THE KEY-WORD : LIMIT VALUES, THE PROGRAM IS STOPPED IF -THE LIMITS ON U,V,H, OR T ARE TRESPASSED' - -NOM = 'VALEURS LIMITES' -NOM1 = 'LIMIT VALUES' -TYPE = REEL -INDEX = 15 -MNEMO = '' -TAILLE = 8 -DEFAUT = -1000.;9000.;-1000.;1000.;-1000.;1000.;-1000.;1000. -DEFAUT1 = -1000.;9000.;-1000.;1000.;-1000.;1000.;-1000.;1000. -RUBRIQUE = 'ENTREES-SORTIES, GENERALITES';'CONTROLE' -RUBRIQUE1 = 'INPUT-OUTPUT, INFORMATION';'CONTROL' -COMPORT = -'Foreground ("ENTREES-SORTIES, GENERALITES*CONTROLE") -IS VALEUR (red)' -NIVEAU = 2 -AIDE = 'Utilise avec le mot-cle CONTROLE DES LIMITES - valeurs mini et maxi acceptables pour H,U,V et T dans l''ordre - suivant : min(H) max(H) min(U) max(U) - min(V) max(V) min(T) max(T)' -AIDE1 = 'To be used with the key-word CONTROL OF LIMITS - min and max acceptable values for H,U,V et T in the following - order : min(H) max(H) min(U) max(U) - min(V) max(V) min(T) max(T)' - -NOM = 'PERIODE POUR LES SORTIES GRAPHIQUES' -NOM1 = 'GRAPHIC PRINTOUT PERIOD' -TYPE = ENTIER -INDEX = 1 -MNEMO = 'LEOPRD' -TAILLE = 0 -DEFAUT = 1 -DEFAUT1 = 1 -RUBRIQUE = 'ENTREES-SORTIES, GRAPHIQUES ET LISTING' -RUBRIQUE1 = 'INPUT-OUTPUT, GRAPHICS AND LISTING' -COMPORT = -'Foreground ("ENTREES-SORTIES, GRAPHIQUES ET LISTING") -IS VALEUR (red)' -NIVEAU = 1 -AIDE = 'Determine la periode en nombre de pas de temps d''impression -des ''VARIABLES POUR LES SORTIES GRAPHIQUES'' (voir ce mot-cle) -dans le FICHIER DES RESULTATS.' -AIDE1 = 'Determines, in number of time steps, the printout period for -the VARIABLES FOR GRAPHIC PRINTOUTS in the RESULTS FILE.' - -NOM = 'PERIODE DE SORTIE LISTING' -NOM1 = 'LISTING PRINTOUT PERIOD' -TYPE = ENTIER -INDEX = 2 -MNEMO = 'LISPRD' -TAILLE = 0 -DEFAUT = 1 -DEFAUT1 = 1 -RUBRIQUE = 'ENTREES-SORTIES, GRAPHIQUES ET LISTING' -RUBRIQUE1 = 'INPUT-OUTPUT, GRAPHICS AND LISTING' -NIVEAU = 1 -AIDE = 'Determine la periode en nombre de pas de temps d''impression -des ''VARIABLES A IMPRIMER'' (voir ce mot-cle) Pour la mise au point, -il faut savoir que la sortie des resultats est effectuee -systematiquement sur le fichier de retour d''execution du code -(actuellement accessible par le menu 3.f de SPF sur IBM, et dans -le fichier !CAS.SORTIE sur station de travail)' -AIDE1 = 'Determines, in number of time steps, the printout period of -the VARIABLES TO BE PRINTED -The results are systematically printed out on the listing file -(file CAS.SORTIE at the workstation).' - -NOM = 'NOMBRE DE PAS DE TEMPS' -NOM1 = 'NUMBER OF TIME STEPS' -TYPE = ENTIER -INDEX = 3 -MNEMO = 'NIT' -TAILLE = 0 -DEFAUT = 1 -DEFAUT1 = 1 -RUBRIQUE = 'PARAMETRES NUMERIQUES';'DUREE DU CALCUL' -RUBRIQUE1 = 'NUMERICAL PARAMETERS';'DURATION' -COMPORT = -'Foreground ("PARAMETRES NUMERIQUES*DUREE DU CALCUL") -IS VALEUR (blue)' -NIVEAU = 1 -AIDE = 'Definit le nombre de pas de temps effectues lors de -l''execution du code.' -AIDE1 = 'Specifies the number of time steps performed when running -the code.' - -NOM = 'ENTIER LIBRE 1' -NOM1 = 'FREE INTEGER 1' -TYPE = ENTIER -INDEX = 4 -MNEMO = 'ICONV' -TAILLE = 0 -DEFAUT = 1 -DEFAUT1 = 1 -RUBRIQUE = 'PARAMETRES NUMERIQUES';'GENERAL' -RUBRIQUE1 = 'NUMERICAL PARAMETERS';'GENERAL' -NIVEAU = -13 -AIDE = 'Non active pour l''instant' -AIDE1 = 'So far not implemented' - -NOM = 'FORME DE LA CONVECTION' -NOM1 = 'TYPE OF ADVECTION' -TYPE = ENTIER -INDEX = 5 -MNEMO = 'ICONVF' -TAILLE = 4 -DEFAUT = 1;5;1;1 -DEFAUT1 = 1;5;1;1 -CHOIX = -'1="CARACTERISTIQUES"'; -'2="SUPG"'; -'3="SCHEMA N CONSERVATIF"' ; -'4="SCHEMA N CONSERVATIF"' ; -'5="SCHEMA PSI CONSERVATIF"'; -'6="SCHEMA PSI NON CONSERVATIF"'; -'7="SCHEMA N IMPLICITE NON CONSERVATIF"'; -'13="SCHEMA N PAR SEGMENTS"'; -'14="SCHEMA N PAR SEGMENTS"' -CHOIX1 = -'1="CHARACTERISTICS"'; -'2="SUPG"'; -'3="CONSERVATIVE N-SCHEME"'; -'4="CONSERVATIVE N-SCHEME"'; -'5="CONSERVATIVE PSI-SCHEME"'; -'6="NON CONSERVATIVE PSI SCHEME"'; -'7="IMPLICIT NON CONSERVATIVE N SCHEME"'; -'13="EDGE-BASED N-SCHEME"'; -'14="EDGE-BASED N-SCHEME"' -RUBRIQUE = 'PARAMETRES NUMERIQUES';'FORME DE LA CONVECTION' -RUBRIQUE1 = 'NUMERICAL PARAMETERS';'TYPE OF ADVECTION' -COMPORT = -'Foreground ("PARAMETRES NUMERIQUES*FORME DE LA CONVECTION") -IS VALEUR (blue)' -NIVEAU = 1 -AIDE = 'Choix du schema de convection pour chaque variable -ces coefficients sont respectivement appliques a -1) U et V 2) H 3) T 4) K ET EPSILON -1 : caracteristiques sur h -2 : SUPG -3 : Schema N conservatif -4 : Schema N conservatif -5 : Schema PSI conservatif -6 : Schema PSI non conservatif -7 : schema N implicite non conservatif -13 : Schema N par segment -14 : Schema N par segment -Second integer must be 5' -AIDE1 = 'Choice of advection schemes for every variable -These coefficients are applied respectively to -1) U et V 2) H 3) T 4) K and EPSILON -1: characteristics -2: SUPG -3: Conservative N-scheme -4: Conservative N-scheme -5: Conservative PSI-scheme -6 : Non conservative PSI scheme -7 : Implicit non conservative N scheme -13 : Edge-based N-scheme -14 : Edge-based N-scheme -Second integer must be 5' - -NOM = 'PRECONDITIONNEMENT' -NOM1 = 'PRECONDITIONING' -TYPE = ENTIER -INDEX = 14 -MNEMO = 'IPRECO' -TAILLE = 0 -DEFAUT = 2 -DEFAUT1 = 2 -CHOIX = '2="diagonal"'; '0="aucun"'; -'3="diagonal condensee"'; '7="crout"';'11="gauss-seidel"'; -'14="diagonal et crout"'; '21="diagonal condense et crout"' -CHOIX1 = '2="diagonal"'; '0="no preconditioning"'; -'3="diagonal condensee"'; '7="crout"';'11="gauss-seidel"'; -'14="diagonal and crout"'; '21="diagonal condensed and crout"' -RUBRIQUE = 'PARAMETRES NUMERIQUES';'GENERAL' -RUBRIQUE1 = 'NUMERICAL PARAMETERS';'GENERAL' -COMPORT = -'Foreground ("PARAMETRES NUMERIQUES*GENERAL") -IS VALEUR (blue)' -NIVEAU = 2 -AIDE = 'Permet de preconditionner le systeme de l''etape de propagation -afin d''accelerer la convergence lors de sa resolution. - - 0 : pas de preconditionnement; - - 2 : preconditionnement diagonal. - - 3 : preconditionnement diagonal-bloc - - 7 : preconditionnement de Crout par element ou segment - -11 : preconditionnement de Gauss-Seidel par element ou segment -Certains preconditionnements sont cumulables -(les diagonaux 2 ou 3 avec les autres) -Pour cette raison on ne retient que les nombres premiers pour -designer les preconditionnements. Si l''on souhaite en cumuler -plusieurs on formera le produit des options correspondantes.' -AIDE1 = 'Choice of the preconditioning in the propagation step linear -system that the convergence is speeded up when it is being solved. - 0: no preconditioning - 2: diagonal preconditioning - 3: diagonal preconditioning with the condensed matrix - 7: Crout''s preconditioning per element or segment -11: Gauss-Seidel''s preconditioning per element or segment -Some operations (either 2 or 3 diagonal preconditioning) can be -performed concurrently with the others. -Only prime numbers are therefore kept to denote the preconditioning -operations. When several of them are to be performed concurrently, -the product of relevant options shall be made.' - -NOM = 'MAXIMUM D''ITERATIONS POUR LE SOLVEUR' -NOM1 = 'MAXIMUM NUMBER OF ITERATIONS FOR SOLVER' -TYPE = ENTIER -INDEX = 10 -MNEMO = 'NITMAX' -TAILLE = 0 -DEFAUT = 100 -DEFAUT1 = 100 -RUBRIQUE = 'PARAMETRES NUMERIQUES, SOLVEUR' -RUBRIQUE1 = 'NUMERICAL PARAMETERS, SOLVER' -COMPORT = -'Foreground ("PARAMETRES NUMERIQUES, SOLVEUR") -IS VALEUR (blue)' -NIVEAU = 2 -AIDE = 'Les algorithmes utilises pour la resolution de l''etape de -propagation etant iteratifs; il est necessaire de limiter le nombre -d''iterations autorisees. -Remarque : un maximum de 40 iterations par pas de temps semble -raisonnable.' -AIDE1 = 'Since the algorithms used for solving the propagation step are -iterative, the allowed number of iterations should be limited. -NOTE: a maximum number of 40 iterations per time step seems to be -reasonable.' - -NOM = 'ORDRE DU TIR INITIAL POUR H' -NOM1 = 'INITIAL GUESS FOR H' -TYPE = ENTIER -INDEX = 15 -MNEMO = 'IORDRH' -TAILLE = 0 -DEFAUT = 1 -DEFAUT1 = 1 -CHOIX = '1=precedent'; -'0=zero'; -'2=extrapolation' -CHOIX1 = '1=previous'; -'0=zero'; -'2=extrapolation' -RUBRIQUE = 'PARAMETRES NUMERIQUES, VITESSE-CELERITE-HAUTEUR' -RUBRIQUE1 = 'NUMERICAL PARAMETERS, VELOCITY-CELERITY-HIGHT' -COMPORT = -'Foreground ("PARAMETRES NUMERIQUES, VITESSE-CELERITE-HAUTEUR") -IS VALEUR (blue)' -NIVEAU = 2 -AIDE = 'Tir initial du solveur de l''etape de propagation. -Offre la possibilite de modifier la valeur i -nitiale de DH, -accroissement de H, a chaque iteration, -dans l''etape de propagation en utilisant les valeurs -finales de cette variable aux pas de temps precedents. Ceci peut -permettre d''accelerer la vitesse de convergence lors de la resolution -du systeme. Trois possibilites sont offertes : - 0 : DH = 0. - 1 : DH = DHn (valeur finale de DH au pas de temps precedent), - 2 : DH = 2DHn - DHn-1 (extrapolation).' -AIDE1 = 'Initial guess for the solver in the propagation step. -Makes it possible to modify the initial value of C, upon each -iteration in the propagation step, by using the ultimate values this -variable had in the earlier time steps. Thus, the convergence can be -speeded up when the system is being solved. 3 options are available: - 0: DH = 0 - 1: DH = DHn (ultimate DH value in the next previous time step) - 2: DH = 2DHn - DHn-1 (extrapolation)' - -NOM = 'MAXIMUM D''ITERATIONS POUR K ET EPSILON' -NOM1 = 'MAXIMUM NUMBER OF ITERATIONS FOR K AND EPSILON' -TYPE = ENTIER -INDEX = 13 -MNEMO = 'NKEMAX' -TAILLE = 0 -DEFAUT = 50 -DEFAUT1 = 50 -RUBRIQUE = 'PARAMETRES NUMERIQUES, MODELE K-EPSILON' -RUBRIQUE1 = 'NUMERICAL PARAMETERS, K-EPSILON MODEL' -COMPORT = -'Foreground ("PARAMETRES NUMERIQUES, MODELE K-EPSILON") -IS VALEUR (blue)' -NIVEAU = 2 -AIDE = 'Fixe le nombre maximum d''iterations accepte lors de la -resolution du systeme diffusion-termes sources du modele k-epsilon.' -AIDE1 = 'Sets the maximum number of iterations that are acceptable when -solving the diffusion source-terms step of the k-epsilon model.' - -NOM = 'LOI DE FROTTEMENT SUR LE FOND' -NOM1 = 'LAW OF BOTTOM FRICTION' -TYPE = ENTIER -INDEX = 8 -MNEMO = 'KFROT' -TAILLE = 0 -DEFAUT = 0 -DEFAUT1 = 0 -CHOIX = '0="PAS DE FROTTEMENT"'; -'1="HAALAND"'; -'2="CHEZY"'; -'3="STRICKLER"'; -'4="MANNING"'; -'5="NIKURADSE"' -CHOIX1 = '0="NO FRICTION"'; -'1="HAALAND"'; -'2="CHEZY"'; -'3="STRICKLER"'; -'4="MANNING"'; -'5="NIKURADSE"' -RUBRIQUE = 'EQUATIONS';'FROTTEMENT ET LISSAGE' -RUBRIQUE1 = 'EQUATIONS';'FRICTION AND SMOOTHINGS' -COMPORT = -'Foreground ("EQUATIONS*FROTTEMENT ET LISSAGE") -IS VALEUR (brown)' -NIVEAU = 1 -AIDE = 'selectionne le type de formulation utilisee pour le calcul -du frottement sur le fond. -Les lois possibles sont les suivantes (cf. -Note de principe) : - 0 : pas de frottement sur le fond; -1 : formule de Haaland -2 : formule de Chezy -3 : formule de STRICKLER -4 : formule de MANNING -5 : formule de NIKURADSE ' -AIDE1 = 'Selects the type of formulation used for the bottom friction. -The possible laws are as follows (refer to the Principle note): -0: no friction against bottom, -1: Haaland''s formula -2: CHEZY''s formula -3: STRICKLER''s formula -4: MANNING''s formula -5: NIKURADSE''s formula ' - -NOM = 'MAXIMUM D''ITERATIONS POUR LA DIFFUSION DES TRACEURS' -NOM1 = 'MAXIMUM NUMBER OF ITERATIONS FOR DIFFUSION OF TRACERS' -TYPE = ENTIER -INDEX = 9 -MNEMO = 'NITDIF' -TAILLE = 0 -DEFAUT = 60 -DEFAUT1 = 60 -RUBRIQUE = 'EQUATIONS';'TRACEUR';'OPTIONS TRACEUR' -RUBRIQUE1 = 'EQUATIONS';'TRACER';'TRACER OPTIONS' -COMPORT = -'Foreground ("EQUATIONS*TRACEUR*OPTIONS TRACEUR") IS VALEUR (brown)' -NIVEAU = 2 -AIDE = 'Limite le nombre d''iterations du solveur a chaque pas -de temps pour le calcul de la diffusion du traceur.' -AIDE1 = 'Limits the number of solver iterations at each time step for -the diffusion of tracer.' - -NOM = 'SOLVEUR POUR LA DIFFUSION DES TRACEURS' -NOM1 = 'SOLVER FOR DIFFUSION OF TRACERS' -TYPE = ENTIER -INDEX = 11 -MNEMO = 'SLVTRA%SLV' -TAILLE = 0 -DEFAUT = 1 -DEFAUT1 = 1 -CHOIX = '1="gradient conjuge"'; -'2="residu conjuge"'; -'3="gradient conjuge sur equation normale"'; -'4="erreur minimale"'; -'5="gradient conjuge carre"'; -'6="cgstab"'; -'7="gmres (voir ausi option du solveur)"'; -'8="direct"' -CHOIX1 = '1="conjugate gradient"'; -'2="conjugate residual"'; -'3="conjugate gradient on a normal equation"'; -'4="minimum error"'; -'5="squared conjugate gradient"'; -'6="cgstab"'; -'7="gmres (see option for the solver for tracer diffusion)"'; -'8="direct"' -RUBRIQUE = 'PARAMETRES NUMERIQUES, SOLVEUR' -RUBRIQUE1 = 'NUMERICAL PARAMETERS, SOLVER' -NIVEAU = 2 -AIDE = '1 : gradient conjugue 2 : residu conjugue 3 : gradient conjugue -sur equation normale 4 : erreur minimale 5 : gradient conjugue carre' -AIDE1 = '1 : conjugate gradient 2 : conjugate gradient -3 : conjugate gradient on a normal equation 4 : minimum error -5 : squared conjugate gradient 6 : cgstab -7 : gmres (see option for the solver for tracer diffusion) -8 : direct' - -NOM = 'OPTION DE PROPAGATION' -NOM1 = 'PROPAGATION OPTION' -TYPE = ENTIER -INDEX = 12 -MNEMO = 'OPTPRO' -TAILLE = 0 -DEFAUT = 3 -DEFAUT1 = 3 -RUBRIQUE = 'EQUATIONS';'PROPAGATION' -RUBRIQUE1 = 'EQUATIONS';'PROPAGATION' -COMPORT = -'Foreground ("EQUATIONS*PROPAGATION") IS VALEUR (brown)' -NIVEAU = -13 -AIDE = 'Non active pour l''instant.' -AIDE1 = 'Not yet implemented.' - -NOM = 'ENTIER LIBRE 17' -NOM1 = 'FREE INTEGER 17' -TYPE = ENTIER -INDEX = 17 -MNEMO = 'STDGEO' -TAILLE = 0 -DEFAUT = 3 -DEFAUT1 = 3 -NIVEAU = 2 -RUBRIQUE = 'PARAMETRES NUMERIQUES';'GENERAL' -RUBRIQUE1 = 'NUMERICAL PARAMETERS';'GENERAL' -AIDE = ' ' -AIDE1 = ' ' - -NOM = 'ENTIER LIBRE 18' -NOM1 = 'FREE INTEGER 18' -TYPE = ENTIER -INDEX = 18 -MNEMO = 'STDRES' -TAILLE = 0 -DEFAUT = 3 -DEFAUT1 = 3 -NIVEAU = 2 -RUBRIQUE = 'PARAMETRES NUMERIQUES';'GENERAL' -RUBRIQUE1 = 'NUMERICAL PARAMETERS';'GENERAL' -AIDE = ' ' -AIDE1 = ' ' - -NOM = 'SOLVEUR' -NOM1 = 'SOLVER' -TYPE = ENTIER -INDEX = 19 -MNEMO = 'ISOLVE' -TAILLE = 0 -DEFAUT = 3 -DEFAUT1 = 3 -CHOIX = '3="equation normale"'; -'1="gradient conjuge"'; -'2="residu conjuge"'; -'4="erreur minimale"'; -'6="cgstab"'; -'7="gmres"'; -'8="direct"' -CHOIX1 = '3="conjugate gradient on a normal equation"'; -'1="conjugate gradient"'; -'2="conjugate residual"'; -'4="minimum error"'; -'6="cgstab"'; -'7="gmres"'; -'8="direct"' -RUBRIQUE = 'PARAMETRES NUMERIQUES, SOLVEUR' -RUBRIQUE1 = 'NUMERICAL PARAMETERS, SOLVER' -NIVEAU = 2 -AIDE = 'Permet de choisir le solveur utilise pour la resolution de -l''etape de propagation. Toutes les methodes proposees actuellement -s''apparentent au Gradient Conjugue. Ce sont : - 1 : gradient conjugue - 2 : residu conjugue - 3 : gradient conjugue sur equation normale - 4 : erreur minimale - 5 : gradient conjugue carre (non programme) - 6 : gradient conjugue carre stabilise (cgstab) - 7 : gmres (voir aussi option du solveur) - 8 : direct' -AIDE1 = 'Makes it possible to select the solver used for solving the -propagation step. All the currently available methods are variations -of the Conjugate Gradient method. They are as follows: -1: conjugate gradient -2: conjugate residual -3: conjugate gradient on a normal equation -4: minimum error -5: conjugate gradient squared (not implemented) -6: conjugate gradient squared stabilised (cgstab) -7: gmres (see option for solver) -8: direct' - -NOM = 'ENTIER LIBRE 20' -NOM1 = 'FREE INTEGER 20' -TYPE = ENTIER -INDEX = 20 -MNEMO = 'STDPRE' -TAILLE = 0 -DEFAUT = 3 -DEFAUT1 = 3 -NIVEAU = 2 -RUBRIQUE = 'PARAMETRES NUMERIQUES';'GENERAL' -RUBRIQUE1 = 'NUMERICAL PARAMETERS';'GENERAL' -AIDE = ' ' -AIDE1 = ' ' - -NOM = 'NOMBRE DE SOUS-ITERATIONS POUR LES NON-LINEARITES' -NOM1 = 'NUMBER OF SUB-ITERATIONS FOR NON-LINEARITIES' -TYPE = ENTIER -INDEX = 21 -MNEMO = 'NSOUSI' -TAILLE = 0 -DEFAUT = 1 -DEFAUT1 = 1 -RUBRIQUE = 'PARAMETRES NUMERIQUES';'GENERAL' -RUBRIQUE1 = 'NUMERICAL PARAMETERS';'GENERAL' -NIVEAU = 1 -AIDE = 'Permet de reactualiser, pour un meme pas de temps, les champs -convecteur et propagateur au cours de plusieurs sous-iterations. A la -premiere sous-iteration, ces champs sont donnes par C et le champ de -vitesses au pas de temps precedent. Aux iterations suivantes, ils sont -pris egaux au champ de vitesse obtenu a la fin de la sous-iteration -precedente. Cette technique permet d''ameliorer la prise en compte des -non linearites.' -AIDE1 = 'Used for updating, within one time step, the advection and -propagation field. -upon the first sub-iteration, these fields are given by -C and the velocity field in the previous time step. At subsequent -iterations, the results of the previous sub-iteration is used to -update the advection and propagation field. -The non-linearities can be taken into account through this technique.' - -NOM = 'NUMERO DU PREMIER PAS DE TEMPS POUR LES SORTIES GRAPHIQUES' -NOM1 = 'NUMBER OF FIRST TIME STEP FOR GRAPHIC PRINTOUTS' -TYPE = ENTIER -INDEX = 22 -MNEMO = 'PTINIG' -TAILLE = 0 -DEFAUT = 0 -DEFAUT1 = 0 -RUBRIQUE = 'ENTREES-SORTIES, GRAPHIQUES ET LISTING' -RUBRIQUE1 = 'INPUT-OUTPUT, GRAPHICS AND LISTING' -NIVEAU = 2 -AIDE = 'Determine le nombre de pas de temps a partir duquel debute -l''ecriture des resultats dans le ''FICHIER DES RESULTATS''.' -AIDE1 = 'Determines the number of time steps after which the results -are first written into the RESULTS FILE.' - -NOM = 'NUMERO DU PREMIER PAS DE TEMPS POUR LES SORTIES LISTING' -NOM1 = 'NUMBER OF FIRST TIME STEP FOR LISTING PRINTOUTS' -TYPE = ENTIER -INDEX = 23 -MNEMO = 'PTINIL' -TAILLE = 0 -DEFAUT = 0 -DEFAUT1 = 0 -RUBRIQUE = 'ENTREES-SORTIES, GRAPHIQUES ET LISTING' -RUBRIQUE1 = 'INPUT-OUTPUT, GRAPHICS AND LISTING' -NIVEAU = 2 -AIDE = 'Determine le nombre de pas de temps a partir duquel debute -l''ecriture des resultats dans le listing.' -AIDE1 = 'Determines the number of time steps after which the results -are first written into the listing.' - -NOM = 'PRECONDITIONNEMENT POUR LA DIFFUSION DES TRACEURS' -NOM1 = 'PRECONDITIONING FOR DIFFUSION OF TRACERS' -TYPE = ENTIER -INDEX = 24 -MNEMO = 'IPREDI' -TAILLE = 0 -DEFAUT = 2 -DEFAUT1 = 2 -CHOIX = '2="diagonal"'; '0="aucun"'; -'3="diagonal condensee"'; '7="crout"'; -'14="diagonal et crout"'; '21="diagonal condense et crout"' -CHOIX1 = '2="diagonal"'; '0="no preconditioning "'; -'3="diagonal condensed"'; '7="crout"'; -'14="diagonal and crout"'; '21="diagonal condensed and crout"' -RUBRIQUE = 'EQUATIONS';'TRACEUR';'OPTIONS TRACEUR' -RUBRIQUE1 = 'EQUATIONS';'TRACER';'TRACER OPTIONS' -NIVEAU = 2 -AIDE = 'Permet de preconditionner le systeme relatif au traceur. -Memes definition et possibilites que pour le mot-cle PRECONDITIONNEMENT. - 0 : pas de preconditionnement; - 2 : preconditionnement diagonal. - 3 : preconditionnement diagonal avec la matrice conde' -AIDE1 = 'Preconditioning of the linear system in the tracer diffusion -step. -Same definition and possibilities as for the keyword PRECONDITIONING - 0: no preconditioning - 2: diagonal preconditioning - 3: diagonal preconditioning with the condensed matrix - 7: Crout''s preconditioning per element.' - -NOM = 'SOLVEUR POUR LE MODELE K-EPSILON' -NOM1 = 'SOLVER FOR K-EPSILON MODEL' -TYPE = ENTIER -INDEX = 25 -MNEMO = 'ISOLKE' -TAILLE = 0 -DEFAUT = 1 -DEFAUT1 = 1 -CHOIX = '1="gradient conjugue"'; -'2="residu conjuge"'; -'3="gradient conjugue sur equation normal"'; -'4="erreur minimale"'; -'5="gradient conjugue carre"'; -'6="gradient conjugue carre stabilise (cgstab)"'; -'7="gmres (voir aussi option du solveur pour le modele k-epsilon"'; -'8="direct"' -CHOIX1 = '1="conjugate gradient"'; -'2="conjugate residuals"'; -'3="conjugate gradient on normal equation"'; -'4="minimum error"'; -'5="conjugate gradient squared"'; -'6="conjugate gradient squared stabilised (cgstab)"'; -'7="gmres (see option for the solver for k-epsilon model)"'; -'8="direct"' -RUBRIQUE = 'EQUATIONS';'MODELE DE TURBULENCE';'MODELE K-EPSILON' -RUBRIQUE1 = 'EQUATIONS';'TURBULENCE MODEL';'K-EPSILON MODEL' -COMPORT = -'Foreground ("EQUATIONS*MODELE DE TURBULENCE*MODELE K-EPSILON") -IS VALEUR (brown)' -NIVEAU = 2 -AIDE = 'Permet de choisir le solveur utilise pour la resolution -du systeme du modele k-epsilon : -1 : gradient conjugue -2 : residu conjugue -3 : gradient conjugue sur equation normale -4 : erreur minimale -5 : gradient conjugue carre -6 : gradient conjugue carre stabilise (cgstab) -7 : gmres (voir aussi option du solveur pour le modele k-epsilon) -8 : direct' -AIDE1 = 'Makes it possible to select the solver used for solving -the system of the k-epsilon model. -1: conjugate gradient -2: conjugate residuals -3: conjugate gradient on normal equation -4: minimum error -5: conjugate gradient squared -6: conjugate gradient squared stabilised (cgstab) -7: gmres (see option for the solver for k-epsilon model) -8: direct' - -NOM = 'PRECONDITIONNEMENT POUR LE MODELE K-EPSILON' -NOM1 = 'PRECONDITIONING FOR K-EPSILON MODEL' -TYPE = ENTIER -INDEX = 26 -MNEMO = 'IPREKE' -TAILLE = 0 -DEFAUT = 2 -DEFAUT1 = 2 -CHOIX = '2="diagonal"'; '0="aucun"'; -'3="diagonal condensee"'; '7="crout"'; -'14="diagonal et crout"'; '21="diagonal condense et crout"' -CHOIX1 = '2="diagonal"'; '0="no preconditioning"'; -'3="diagonal condensed"'; '7="crout"'; -'14="diagonal and crout"'; '21="diagonal condensed and crout"' -RUBRIQUE = 'PARAMETRES NUMERIQUES, MODELE K-EPSILON' -RUBRIQUE1 = 'NUMERICAL PARAMETERS, K-EPSILON MODEL' -NIVEAU = 2 -AIDE = 'Permet de preconditionner le systeme relatif au modele k-epsilon -0 : pas de preconditionnement; -2 : preconditionnement diagonal. -3 : preconditionnement diagonal avec la matrice condensee. -7 : preconditionnement de Crout par element.' -AIDE1 = 'Preconditioning of the linear system in the diffusion step of -the k-epsilon model. -0: no preconditioning -2: diagonal preconditioning -3: diagonal preconditioning with the condensed matrix -7: Crout''s preconditioning per element' - -NOM = 'REGIME DE TURBULENCE POUR LES PAROIS' -NOM1 = 'TURBULENCE MODEL FOR SOLID BOUNDARIES' -TYPE = ENTIER -INDEX = 27 -MNEMO = 'LISRUG' -TAILLE = 0 -DEFAUT = 2 -DEFAUT1 = 2 -CHOIX = '1=lisse'; '2=rugueux' -CHOIX1 = '1=smooth'; '2=rough' -RUBRIQUE = 'EQUATIONS';'MODELE DE TURBULENCE' -RUBRIQUE1 = 'EQUATIONS';'TURBULENCE MODEL' -NIVEAU = 1 -AIDE = 'Permet de choisir le regime de turbulence aux parois - 1 : regime turbulent lisse. - 2 : regime turbulent rugueux.' -AIDE1 = 'Provided for selecting the type of friction on the walls - 1: smooth - 2: rough' - -NOM = 'NOMBRE DE FLOTTEURS' -NOM1 = 'NUMBER OF DROGUES' -TYPE = ENTIER -INDEX = 28 -MNEMO = 'NFLOT' -CONTROLE = 0 ; 10 -TAILLE = 0 -DEFAUT = 0 -DEFAUT1 = 0 -RUBRIQUE = 'ENTREES-SORTIES, GRAPHIQUES ET LISTING' -RUBRIQUE1 = 'INPUT-OUTPUT, GRAPHICS AND LISTING' -NIVEAU = 2 -AIDE = 'Permet d''effectuer un suivi de flotteurs' -AIDE1 = 'Number of drogues in the computation. -The user must then fill the subroutine FLOT specifying -the coordinates of the starting points, their departure -and arrival times. -The trajectory of drogues is recorded in the BINARY RESULTS -FILE that must be given in the steering file' - -NOM = 'PERIODE POUR LES SORTIES DE FLOTTEURS' -NOM1 = 'PRINTOUT PERIOD FOR DROGUES' -TYPE = ENTIER -INDEX = 29 -MNEMO = 'FLOPRD' -TAILLE = 0 -DEFAUT = 1 -DEFAUT1 = 1 -RUBRIQUE = 'ENTREES-SORTIES, GRAPHIQUES ET LISTING' -RUBRIQUE1 = 'INPUT-OUTPUT, GRAPHICS AND LISTING' -NIVEAU = 2 -AIDE = 'Nombre de pas de temps entre 2 sorties de positions de -flotteurs dans le fichier des resultats binaire supplementaire -N affecte pas la qualite du calcul de la trajectoire' -AIDE1 = 'Number of time steps between 2 outputs of drogues -positions in the binary file' - -NOM = 'NOMBRE DE DERIVES LAGRANGIENNES' -NOM1 = 'NUMBER OF LAGRANGIAN DRIFTS' -TYPE = ENTIER -INDEX = 30 -MNEMO = 'NFLAG' -CONTROLE = 0; 10 -TAILLE = 0 -DEFAUT = 0 -DEFAUT1 = 0 -RUBRIQUE = 'PARAMETRES NUMERIQUES';'GENERAL' -RUBRIQUE1 = 'NUMERICAL PARAMETERS';'GENERAL' -NIVEAU = 2 -AIDE = 'Permet d''effectuer simultanement plusieurs calculs de derives -lagrangiennes initiees a des pas differents' -AIDE1 = 'Provided for performing several computations of lagrangian -drifts starting at different times. -Add A and G in the VARIABLES FOR GRAPHIC PRINTOUTS key-word' - -NOM = 'LISSAGES DU FOND' -NOM1 = 'BOTTOM SMOOTHINGS' -TYPE = ENTIER -INDEX = 31 -MNEMO = 'LISFOND' -TAILLE = 0 -CONTROLE = 0 ; 10 -DEFAUT = 0 -DEFAUT1 = 0 -RUBRIQUE = 'EQUATIONS';'FROTTEMENT ET LISSAGE' -RUBRIQUE1 = 'EQUATIONS';'FRICTION AND SMOOTHINGS' -NIVEAU = 2 -AIDE = 'Nombre de lissages effectues sur la topographie. -chaque lissage, effectue a l''aide d''une matrice de masse, -est conservatif. -Utilise lorsque les donnees de bathymetrie donnent des resultats -trop irreguliers apres interpolation.' -AIDE1 ='Number of smoothings on bottom topography. -each smoothing is mass conservative. -to be used when interpolation of bathymetry on the mesh gives -very rough results.' - -NOM = 'OPTION DU SOLVEUR POUR LA DIFFUSION DES TRACEURS' -NOM1 = 'SOLVER OPTION FOR TRACERS DIFFUSION' -TYPE = ENTIER -INDEX = 32 -MNEMO = 'ISOLDI' -TAILLE = 0 -DEFAUT = 2 -DEFAUT1 = 2 -RUBRIQUE = 'EQUATIONS';'TRACEUR';'OPTIONS TRACEUR' -RUBRIQUE1 = 'EQUATIONS';'TRACER';'TRACER OPTIONS' -NIVEAU = 2 -AIDE = 'si le solveur est GMRES (7) le mot cle est la dimension de -l''espace de KRILOV (valeurs conseillees entre 2 et 15)' -AIDE1 = 'WHEN GMRES (7) IS CHOSEN, DIMENSION OF THE KRYLOV SPACE -TRY VALUES BETWEEN 2 AND 15' - -NOM = 'OPTION DU SOLVEUR' -NOM1 = 'SOLVER OPTION' -TYPE = ENTIER -INDEX = 33 -MNEMO = 'ISOLVE' -TAILLE = 0 -DEFAUT = 2 -DEFAUT1 = 2 -RUBRIQUE = 'PARAMETRES NUMERIQUES, SOLVEUR' -RUBRIQUE1 = 'NUMERICAL PARAMETERS, SOLVER' -NIVEAU = 2 -AIDE = 'si le solveur est GMRES (7) le mot cle est la dimension de -l''espace de KRILOV (valeurs conseillees entre 2 et 15)' -AIDE1 = 'WHEN GMRES (7) IS CHOSEN, DIMENSION OF THE KRYLOV SPACE -TRY VALUES BETWEEN 2 AND 15' - -NOM = 'OPTION DU SOLVEUR POUR LE MODELE K-EPSILON' -NOM1 = 'OPTION FOR THE SOLVER FOR K-EPSILON MODEL' -TYPE = ENTIER -INDEX = 34 -MNEMO = 'ISOLKE' -TAILLE = 0 -DEFAUT = 2 -DEFAUT1 = 2 -RUBRIQUE = 'EQUATIONS';'MODELE DE TURBULENCE';'MODELE K-EPSILON' -RUBRIQUE1 = 'EQUATIONS';'TURBULENCE MODEL';'K-EPSILON MODEL' -NIVEAU = 2 -AIDE = 'si le solveur est GMRES (7) le mot cle est la dimension de -l''espace de KRILOV (valeurs conseillees entre 2 et 15)' -AIDE1 = 'WHEN GMRES (7) IS CHOSEN, DIMENSION OF THE KRYLOV SPACE -TRY VALUES BETWEEN 2 AND 15' - -NOM = 'PAS DE TEMPS' -NOM1 = 'TIME STEP' -TYPE = REEL -INDEX = 1 -MNEMO = 'DT' -TAILLE = 0 -DEFAUT = 1. -DEFAUT1 = 1. -RUBRIQUE = 'PARAMETRES NUMERIQUES';'DUREE DU CALCUL' -RUBRIQUE1 = 'NUMERICAL PARAMETERS';'DURATION' -NIVEAU = 1 -AIDE = 'Definit le pas de temps en secondes. -Remarque : Pour une bonne precision; il est souhaitable de choisir -le pas de temps de telle sorte que le nombre de Courant de propagation -soit inferieur a 2 ; voir 3. -Ceci peut etre realisable en hydraulique fluviale ; mais ne l''est -pratiquement jamais en hydraulique maritime ou l''on peut atteindre -des valeurs de 50.' -AIDE1 = 'Specifies the time step in seconds.' - -NOM = 'ZERO' -NOM1 = 'ZERO' -TYPE = REEL -INDEX = 3 -MNEMO = 'ZERO' -TAILLE = 0 -DEFAUT = 1.E-12 -DEFAUT1 = 1.E-12 -RUBRIQUE = 'PARAMETRES NUMERIQUES';'GENERAL' -RUBRIQUE1 = 'NUMERICAL PARAMETERS';'GENERAL' -NIVEAU = -13 -AIDE = 'Non active pour l''instant.' -AIDE1 = 'Not yet implemented' - -NOM = 'COEFFICIENT DE FROTTEMENT' -NOM1 = 'FRICTION COEFFICIENT' -TYPE = REEL -INDEX = 4 -MNEMO = 'FFON' -TAILLE = 0 -DEFAUT = 50. -DEFAUT1 = 50. -RUBRIQUE = 'EQUATIONS';'FROTTEMENT ET LISSAGE' -RUBRIQUE1 = 'EQUATIONS';'FRICTION AND SMOOTHINGS' -NIVEAU = 1 -AIDE = 'Fixe la valeur du coefficient de frottement pour la -formulation choisie. -Attention; la signification de ce chiffre varie suivant la formule -choisie : - 1 : coefficient lineaire - 2 : coefficient de Chezy - 3 : coefficient de Strickler - 4 : coefficient de Manning - 5 : hauteur de rugosite de Nikuradse' -AIDE1 = 'Sets the value of the friction coefficient for the selected -formulation. It is noteworthy that the meaning of this figure changes -according to the selected formula (Chezy, Strickler, etc.) : - 1 : linear coefficient - 2 : Chezy coefficient - 3 : Strickler coefficient - 4 : Manning coefficient - 5 : Nikuradse grain size' - -NOM = 'COEFFICIENT D''INFLUENCE DU VENT' -NOM1 = 'COEFFICIENT OF WIND INFLUENCE' -TYPE = REEL -INDEX = 6 -MNEMO = 'FAIR' -TAILLE = 0 -DEFAUT = 0. -DEFAUT1 = 0. -RUBRIQUE = 'EQUATIONS';'VENT';'VALEURS NUMERIQUES' -RUBRIQUE1 = 'EQUATIONS';'WIND';'NUMERICS VALUES' -COMPORT = -'Foreground ("EQUATIONS*VENT*VALEURS NUMERIQUES") IS VALEUR (brown)' -NIVEAU = 1 -AIDE = 'Fixe la valeur du coefficient d''entrainement du vent (cf. -Note de principe).' -AIDE1 = 'Sets the value of the wind driving coefficient. -Refer to principle note.' - -NOM = 'VITESSE DU VENT SUIVANT X' -NOM1 = 'WIND VELOCITY ALONG X' -TYPE = REEL -INDEX = 7 -MNEMO = 'FUAIR' -TAILLE = 0 -DEFAUT = 0. -DEFAUT1 = 0. -RUBRIQUE = 'EQUATIONS';'VENT';'VALEURS NUMERIQUES' -RUBRIQUE1 = 'EQUATIONS';'WIND';'NUMERICS VALUES' -NIVEAU = 1 -AIDE = 'Composante de la vitesse du vent suivant l''axe des x (m/s).' -AIDE1 = 'Wind velocity, component along x axis (m/s).' - -NOM = 'VITESSE DU VENT SUIVANT Y' -NOM1 = 'WIND VELOCITY ALONG Y' -TYPE = REEL -INDEX = 8 -MNEMO = 'FVAIR' -TAILLE = 0 -DEFAUT = 0. -DEFAUT1 = 0. -RUBRIQUE = 'EQUATIONS';'VENT';'VALEURS NUMERIQUES' -RUBRIQUE1 = 'EQUATIONS';'WIND';'NUMERICS VALUES' -NIVEAU = 1 -AIDE = 'Composante de la vitesse du vent suivant l''axe des y (m/s).' -AIDE1 = 'Wind velocity, component along y axis (m/s).' - -NOM = 'VENT' -NOM1 = 'WIND' -TYPE = LOGIQUE -INDEX = 14 -MNEMO = 'VENT' -TAILLE = 0 -DEFAUT = NON -DEFAUT1 = NO -RUBRIQUE = 'EQUATIONS';'VENT' -RUBRIQUE1 = 'EQUATIONS';'WIND' -COMPORT = -'Affichage ("EQUATIONS*VENT*VALEURS NUMERIQUES") IS VALEUR ()'; -'Foreground ("EQUATIONS*VENT") IS VALEUR (brown)' -NIVEAU = 1 -AIDE = 'Prise en compte ou non des effets du vent.' -AIDE1 = 'Determines whether the wind effects are to be taken into -account or not.' - -NOM = 'VALEURS INITIALES DES TRACEURS' -NOM1 = 'INITIAL VALUES OF TRACERS' -TYPE = REEL -INDEX = 9 -MNEMO = 'TRAC0' -TAILLE = 2 -DEFAUT = 0.;0. -DEFAUT1 = 0.;0. -RUBRIQUE = 'EQUATIONS';'TRACEUR';'OPTIONS TRACEUR' -RUBRIQUE1 = 'EQUATIONS';'TRACER';'TRACER OPTIONS' -NIVEAU = 1 -AIDE = 'Fixe la valeur initiale du traceur.' -AIDE1 = 'Sets the initial value of the tracer.' - -NOM = 'COEFFICIENT DE DIFFUSION DES TRACEURS' -NOM1 = 'COEFFICIENT FOR DIFFUSION OF TRACERS' -TYPE = REEL -INDEX = 10 -MNEMO = 'DIFNU' -TAILLE = 0 -DEFAUT = 1.E-6 -DEFAUT1 = 1.E-6 -RUBRIQUE = 'EQUATIONS';'TRACEUR';'OPTIONS TRACEUR' -RUBRIQUE1 = 'EQUATIONS';'TRACER';'TRACER OPTIONS' -NIVEAU = 1 -AIDE = 'Fixe la valeur du coefficient de diffusion du traceur. -L''influence de ce parametre sur l''evolution du traceur dans -le temps est importante.' -AIDE1 = 'Sets the value of the tracer diffusivity.' - -NOM = 'PRECISION POUR LA DIFFUSION DES TRACEURS' -NOM1 = 'ACCURACY FOR DIFFUSION OF TRACERS' -TYPE = REEL -INDEX = 11 -MNEMO = 'EPSDIF' -TAILLE = 0 -DEFAUT = 1.E-6 -DEFAUT1 = 1.E-6 -RUBRIQUE = 'EQUATIONS';'SOLVEUR' -RUBRIQUE1 = 'EQUATIONS';'SOLVER' -COMPORT = -'Foreground ("EQUATIONS*SOLVEUR") IS VALEUR (brown)' -NIVEAU = 2 -AIDE = 'Fixe la precision demandee pour le calcul de la diffusion -du traceur.' -AIDE1 = 'Sets the required accuracy for computing the tracer -diffusion.' - -NOM = 'COEFFICIENT D''IMPLICITATION DES TRACEURS' -NOM1 = 'IMPLICITATION COEFFICIENT OF TRACERS' -TYPE = REEL -INDEX = 12 -MNEMO = 'TETADF' -TAILLE = 0 -DEFAUT = 0.6 -DEFAUT1 = 0.6 -RUBRIQUE = 'EQUATIONS';'TRACEUR';'OPTIONS TRACEUR' -RUBRIQUE1 = 'EQUATIONS';'TRACER';'TRACER OPTIONS' -NIVEAU = 2 -AIDE = 'Fixe la valeur du coefficient d''implicitation du traceur' -AIDE1 = 'Sets the value of the implicitation coefficient for the tracer' - -NOM = 'COEFFICIENT DE DIFFUSION DES VITESSES' -NOM1 = 'VELOCITY DIFFUSIVITY' -TYPE = REEL -INDEX = 13 -MNEMO = 'PROPNU' -TAILLE = 0 -DEFAUT = 1.E-6 -DEFAUT1 = 1.E-6 -RUBRIQUE = 'EQUATIONS';'MODELE DE TURBULENCE';'VISCOSITE CONSTANTE' -RUBRIQUE1 = 'EQUATIONS';'TURBULENCE MODEL';'CONSTANT VISCOSITY' -COMPORT = -'Foreground ("EQUATIONS*MODELE DE TURBULENCE*VISCOSITE CONSTANTE") -IS VALEUR (brown)' -NIVEAU = 1 -AIDE = 'Fixe de facon uniforme pour l''ensemble du domaine; -la valeur du coefficient de diffusion de viscosite globale (dynamique + -turbulente). Cette valeur peut avoir une influence non negligeable sur -la forme et la taille des recirculations.' -AIDE1 = 'Sets, in an even way for the whole domain, the value of the -coefficient of global (dynamic+turbulent) viscosity. this value may -have a significant effect both on the shapes and sizes of -recirculation zones.' - -NOM = 'MODELE DE TURBULENCE' -NOM1 = 'TURBULENCE MODEL' -TYPE = ENTIER -INDEX = 7 -MNEMO = 'ITURB' -TAILLE = 0 -DEFAUT = 1 -DEFAUT1 = 1 -CHOIX = '1="VISCOSITE CONSTANTE"';'2="ELDER"';'3="MODELE K-EPSILON"' -;'4="SMAGORINSKI"' -CHOIX1 = '1="CONSTANT VISCOSITY"';'2="ELDER"';'3="K-EPSILON MODEL"' -;'4="SMAGORINSKI"' -RUBRIQUE = 'EQUATIONS';'MODELE DE TURBULENCE' -RUBRIQUE1 = 'EQUATIONS';'TURBULENCE MODEL' -COMPORT = 'Affichage -("COEFFICIENT DE DIFFUSION DES VITESSES") -IS VALEUR (#"MODELE DE TURBULENCE" - 3)'; -'Affichage -("EQUATIONS*MODELE DE TURBULENCE*MODELE K-EPSILON") IS VALEUR -(#"MODELE DE TURBULENCE" - 1)'; -'Foreground ("EQUATIONS*MODELE DE TURBULENCE") IS VALEUR (brown)' -NIVEAU = 1 -AIDE = '3 choix sont possibles actuellement : viscosite constante (1) -modele de Elder (2) ou modele k-epsilon (3). -Attention : si on choisit l''option 1 -il ne faut pas oublier d''ajuster la valeur du mot-cle COEFFICIENT DE -DIFFUSION DES VITESSES. -si on choisit l''option 2 -il ne faut pas oublier d''ajuster les deux valeurs du mot-cle : -COEFFICIENTS ADIMENSIONNELS DE DISPERSION -Si on choisit l''option 3; -ce meme parametre doit retrouver sa vraie valeur physique car elle est -utilisee comme telle dans le modele de turbulence' -AIDE1 = 'The current alternatives are as follows: constant viscosity (1) -elder''s model (2) or k-epsilon model (3). -NOTE: when option 1 is chosen, it should be kept in mind that the -value of the keyword VELOCITY DIFFUSIVITY has to be ajusted. -When option 2 is chosen, the two values of key-word : -NON-DIMENSIONAL DISPERSION COEFFICIENTS are used -When option 3 is chosen, this parameter should recover its true -physical value, since it is used as such in the turbulence model.' - -NOM = 'PRECISION DU SOLVEUR' -NOM1 = 'SOLVER ACCURACY' -TYPE = REEL -INDEX = 14 -MNEMO = 'EPSI1' -TAILLE = 0 -DEFAUT = 1.E-4 -DEFAUT1 = 1.E-4 -RUBRIQUE = 'PARAMETRES NUMERIQUES, SOLVEUR' -RUBRIQUE1 = 'NUMERICAL PARAMETERS, SOLVER' -NIVEAU = 2 -AIDE = 'Precision demandee pour la resolution de l''etape de propagation - (cf. Note de principe).' -AIDE1 = 'Required accuracy for solving the propagation step -(refer to Principle note).' - -NOM = 'PROFONDEUR LIMITE POUR PROCEDURE DE RESSUYAGE' -NOM1 = 'THRESHOLD DEPTH FOR RECEDING PROCEDURE' -TYPE = REEL -INDEX = 16 -MNEMO = 'HREC' -TAILLE = 0 -DEFAUT = 0. -DEFAUT1 = 0. -RUBRIQUE = 'PARAMETRES NUMERIQUES';'GENERAL' -RUBRIQUE1 = 'NUMERICAL PARAMETERS';'GENERAL' -NIVEAU = 2 -AIDE = 'Si > 0., declenche la procedure de ressuyage qui evite -le franchissement parasite des digues mal discretisees' -AIDE1 = 'If > 0., will trigger the receding procedure that -avoids overwhelming of dykes which are too loosely -discretised ' - -NOM = 'IMPLICITATION POUR LA HAUTEUR' -NOM1 = 'IMPLICITATION FOR DEPTH' -TYPE = REEL -INDEX = 17 -MNEMO = 'TETAC' -TAILLE = 0 -DEFAUT = 0.55 -DEFAUT1 = 0.55 -RUBRIQUE = 'PARAMETRES NUMERIQUES, VITESSE-CELERITE-HAUTEUR' -RUBRIQUE1 = 'NUMERICAL PARAMETERS, VELOCITY-CELERITY-HIGHT' -NIVEAU = 2 -CONTROLE = 0.5 -AIDE = 'Fixe la valeur du coefficient d''implicitation sur C dans -l''etape de propagation (cf. Note de principe). -Les valeurs inferieures a 0.5 donnent un schema instable.' -AIDE1 = 'Sets the value of the implicitation coefficient for C -(the celerity of waves) in the propagation step -(refer to principle note). -Values below 0.5 result in an unstable scheme.' - -NOM = 'IMPLICITATION POUR LA VITESSE' -NOM1 = 'IMPLICITATION FOR VELOCITY' -TYPE = REEL -INDEX = 18 -MNEMO = 'TETAU' -TAILLE = 0 -DEFAUT = 0.55 -DEFAUT1 = 0.55 -RUBRIQUE = 'PARAMETRES NUMERIQUES, VITESSE-CELERITE-HAUTEUR' -RUBRIQUE1 = 'NUMERICAL PARAMETERS, VELOCITY-CELERITY-HIGHT' -NIVEAU = 2 -AIDE = 'Fixe la valeur du coefficient d''implicitation sur la vitesse -dans l''etape de propagation (cf. Note de principe). -Les valeurs inferieures a 0.5 donnent un schema instable.' -AIDE1 = 'Sets the value of the implicitation coefficient for velocity -in the propagation step (refer to principle note). -Values below 0.5 result in an unstable condition.' - -NOM = 'IMPLICITATION POUR LA DIFFUSION DES VITESSES' -NOM1 = 'IMPLICITATION FOR DIFFUSION OF VELOCITY' -TYPE = REEL -INDEX = 19 -MNEMO = 'TETAD' -TAILLE = 0 -DEFAUT = 1. -DEFAUT1 = 1. -RUBRIQUE = 'PARAMETRES NUMERIQUES, VITESSE-CELERITE-HAUTEUR' -RUBRIQUE1 = 'NUMERICAL PARAMETERS, VELOCITY-CELERITY-HIGHT' -NIVEAU = 2 -AIDE = 'Fixe la valeur du coefficient d''implicitation sur les termes de -diffusion des vitesses' -AIDE1 = 'Sets the value of the implicitation coefficient for -the diffusion of velocity' - -NOM = 'MASS-LUMPING SUR H' -NOM1 = 'MASS-LUMPING ON H' -TYPE = REEL -INDEX = 20 -MNEMO = 'AGGLOC' -TAILLE = 0 -DEFAUT = 0. -DEFAUT1 = 0. -RUBRIQUE = 'PARAMETRES NUMERIQUES, VITESSE-CELERITE-HAUTEUR' -RUBRIQUE1 = 'NUMERICAL PARAMETERS, VELOCITY-CELERITY-HIGHT' -NIVEAU = 2 -AIDE = 'TELEMAC offre la possibilite d''effectuer du mass-lumping -sur H ou U. -Ceci revient a ramener tout ou partie (suivant la valeur de ce -coefficient) des matrices AM1 (h) ou AM2 (U) et AM3 (V) sur -leur diagonale. -Cette technique permet d''accelerer le code dans des proportions tres -importantes et de le rendre egalement beaucoup plus stable. Cependant -les solutions obtenues se trouvent lissees. -Ce parametre fixe le taux de mass-lumping effectue sur h.' -AIDE1 = 'TELEMAC provides an opportunity to carry out mass-lumping -either on C,H or on the velocity. -This is equivalent to bringing the matrices AM1 (h) or AM2 (U) and -AM3 (V) wholly or partly, back onto their diagonal. -Thanks to that technique, the code can be speeded up to a quite -significant extent and it can also be made much more stable. The -resulting solutions, however, become artificially smoothed. -This parameter sets the extent of mass-lumping that is performed on h.' - -NOM = 'MASS-LUMPING SUR LA VITESSE' -NOM1 = 'MASS-LUMPING ON VELOCITY' -TYPE = REEL -INDEX = 21 -MNEMO = 'AGGLOU' -TAILLE = 0 -DEFAUT = 0. -DEFAUT1 = 0. -RUBRIQUE = 'PARAMETRES NUMERIQUES, VITESSE-CELERITE-HAUTEUR' -RUBRIQUE1 = 'NUMERICAL PARAMETERS, VELOCITY-CELERITY-HIGHT' -NIVEAU = 2 -AIDE = 'Fixe le taux de mass-lumping effectue sur la vitesse.' -AIDE1 = 'Sets the amount of mass-lumping that is performed on -the velocity.' - -NOM = 'VALEUR MINIMUM DE H' -NOM1 = 'MINIMUM VALUE OF DEPTH' -TYPE = REEL -INDEX = 22 -MNEMO = 'HMIN' -TAILLE = 0 -DEFAUT = 0. -DEFAUT1 = 0. -RUBRIQUE = 'PARAMETRES NUMERIQUES, VITESSE-CELERITE-HAUTEUR' -RUBRIQUE1 = 'NUMERICAL PARAMETERS, VELOCITY-CELERITY-HIGHT' -NIVEAU = 3 -AIDE = 'Fixe la valeur minimale de a lorsque l''option CLIPPING -DE H est activee.' -AIDE1 = 'Sets the minimum H value when option H CLIPPING is -implemented. Not fully implemented.' - -NOM = 'REDUCTION DU PAS DE TEMPS POUR LE MODELE K-EPSILON' -NOM1 = 'TIME STEP REDUCTION FOR K-EPSILON MODEL' -TYPE = REEL -INDEX = 23 -MNEMO = 'REDUC' -TAILLE = 0 -DEFAUT = 1. -DEFAUT1 = 1. -RUBRIQUE = 'PARAMETRES NUMERIQUES, MODELE K-EPSILON' -RUBRIQUE1 = 'NUMERICAL PARAMETERS, K-EPSILON MODEL' -NIVEAU = 3 -AIDE = 'Coefficient reducteur du pas de temps pour le modele k-epsilon -(qui est normalement identique a celui du systeme hydrodynamique). -Utilisation deconseillee' -AIDE1 = 'Time step reduction coefficient for k-epsilon model -(which is normally same the same as that of the hydrodynamic system) -Not recommended for use.' - -NOM = 'PRECISION SUR K' -NOM1 = 'ACCURACY OF K' -TYPE = REEL -INDEX = 24 -MNEMO = 'EPSIK' -TAILLE = 0 -DEFAUT = 1.E-9 -DEFAUT1 = 1.E-9 -RUBRIQUE = 'PARAMETRES NUMERIQUES, MODELE K-EPSILON' -RUBRIQUE1 = 'NUMERICAL PARAMETERS, K-EPSILON MODEL' -NIVEAU = 2 -AIDE = 'Fixe la precision demandee sur k pour le test d''arret dans -l''etape de diffusion et termes sources du modele k-epsilon.' -AIDE1 = 'Sets the required accuracy for computing k in the diffusion -and source terms step of the k-epsilon model.' - -NOM = 'PRECISION SUR EPSILON' -NOM1 = 'ACCURACY OF EPSILON' -TYPE = REEL -INDEX = 25 -MNEMO = 'EPSIE' -TAILLE = 0 -DEFAUT = 1.E-9 -DEFAUT1 = 1.E-9 -RUBRIQUE = 'PARAMETRES NUMERIQUES, MODELE K-EPSILON' -RUBRIQUE1 = 'NUMERICAL PARAMETERS, K-EPSILON MODEL' -NIVEAU = 2 -AIDE = 'Fixe la precision demandee sur epsilon pour le test d''arret dan -s l''etape de diffusion et termes sources de k et epsilon.' -AIDE1 = 'Sets the required accuracy for computing epsilon in -the diffusion and source-terms step of the k-epsilon model.' - -NOM = 'PROFONDEUR MOYENNE POUR LA LINEARISATION' -NOM1 = 'MEAN DEPTH FOR LINEARIZATION' -TYPE = REEL -INDEX = 26 -MNEMO = 'HAULIN' -TAILLE = 0 -DEFAUT = 0. -DEFAUT1 = 0. -RUBRIQUE = 'EQUATIONS';'HAUTEUR' -RUBRIQUE1 = 'EQUATIONS';'HIGHT' -COMPORT = -'Foreground ("EQUATIONS*HAUTEUR") IS VALEUR (brown)' -NIVEAU = 2 -AIDE = 'Fixe la hauteur d''eau autour de laquelle s''effectue la -linearisation lorsque l''option PROPAGATION LINEARISEE est choisie.' -AIDE1 = 'Sets the water depth about which the linearization is made when -the LINEARIZED PROPAGATION OPTION is selected.' - -NOM = 'COEFFICIENT DE RUGOSITE DES BORDS' -NOM1 = 'ROUGHNESS COEFFICIENT OF BOUNDARIES' -TYPE = REEL -INDEX = 29 -MNEMO = 'SB' -TAILLE = 0 -DEFAUT = 100. -DEFAUT1 = 100. -RUBRIQUE = 'EQUATIONS' -RUBRIQUE1 = 'EQUATIONS' -NIVEAU = 1 -AIDE = 'Fixe la valeur du coefficient de frottement sur les frontieres -solides avec un regime turbulent rugueux sur les bords du domaine. -meme convention que pour le coefficient de frottement: - 1 : non programme - 2 : coefficient de Chezy - 3 : coefficient de Strickler - 4 : coefficient de Manning - 5 : hauteur de rugosite de Nikuradse' -AIDE1 = 'Sets the value of the friction coefficient of the solid boundary -with the bed roughness option. Same meaning than friction coefficient' - -NOM = 'DEBITS IMPOSES' -NOM1 = 'PRESCRIBED FLOWRATES' -TYPE = REEL -INDEX = 30 -MNEMO = 'DEBIT' -TAILLE = 2 -RUBRIQUE = 'EQUATIONS, CONDITIONS LIMITES' -RUBRIQUE1 = 'EQUATIONS, BOUNDARY CONDITIONS' -COMPORT = -'Foreground ("EQUATIONS, CONDITIONS LIMITES") IS VALEUR (brown)' -NIVEAU = 1 -AIDE = ' Valeurs des debits imposes aux frontieres liquides entrantes. -Lire la partie du mode d''emploi consacree aux conditions aux limites' -AIDE1 = 'Values of prescribed flowrates at the inflow boundaries. -The section about boundary conditions is to be read in the manual' - -NOM = 'COTES IMPOSEES' -NOM1 = 'PRESCRIBED ELEVATIONS' -TYPE = REEL -INDEX = 31 -MNEMO = 'COTES' -TAILLE = 2 -RUBRIQUE = 'EQUATIONS, CONDITIONS LIMITES' -RUBRIQUE1 = 'EQUATIONS, BOUNDARY CONDITIONS' -NIVEAU = 1 -AIDE = 'Valeurs des cotes imposees aux frontieres liquides entrantes. -Lire la partie du mode d''emploi consacree aux conditions aux limites' -AIDE1 = 'Values of prescribed elevations at the inflow boundaries. -The section about boundary conditions is to be read in the manual' - -NOM = 'VITESSES IMPOSEES' -NOM1 = 'PRESCRIBED VELOCITIES' -TYPE = REEL -INDEX = 32 -MNEMO = 'VITES' -TAILLE = 2 -RUBRIQUE = 'EQUATIONS, CONDITIONS LIMITES' -RUBRIQUE1 = 'EQUATIONS, BOUNDARY CONDITIONS' -COMPORT = -'Foreground ("EQUATIONS, CONDITIONS LIMITES") IS VALEUR (brown)' -NIVEAU = 1 -AIDE = 'Valeurs des vitesses imposees aux frontieres liquides entrantes. -Lire la partie du mode d''emploi consacree aux conditions aux limites' -AIDE1 ='Values of prescribed velocities at the liquid inflow boundaries. -Refer to the section dealing with the boundary conditions' - -NOM = 'COTE INITIALE' -NOM1 = 'INITIAL ELEVATION' -TYPE = REEL -INDEX = 33 -MNEMO = 'COTINI' -TAILLE = 0 -DEFAUT = 0. -DEFAUT1 = 0. -RUBRIQUE = 'EQUATIONS, CONDITIONS INITIALES' -RUBRIQUE1 = 'EQUATIONS, INITIAL CONDITIONS' -COMPORT = -'Foreground ("EQUATIONS, CONDITIONS INITIALES") IS VALEUR (brown)' -NIVEAU = 1 -CONTROLE = -427.; 8848. -AIDE = 'Valeur utilisee avec l''option : - CONDITIONS INITIALES - COTE CONSTANTE' -AIDE1 ='Value to be used with the option : -INITIAL CONDITIONS -CONSTANT ELEVATION' - -NOM = 'HAUTEUR INITIALE' -NOM1 = 'INITIAL DEPTH' -TYPE = REEL -INDEX = 34 -MNEMO = 'HAUTINI' -TAILLE = 0 -DEFAUT = 0. -DEFAUT1 = 0. -RUBRIQUE = 'EQUATIONS, CONDITIONS INITIALES' -RUBRIQUE1 = 'EQUATIONS, INITIAL CONDITIONS' -NIVEAU = 1 -CONTROLE = 0; 20 -AIDE = 'Valeur utilisee avec l''option : -CONDITIONS INITIALES :-HAUTEUR CONSTANTE-' -AIDE1 = 'Value to be used along with the option: - INITIAL CONDITIONS -CONSTANT DEPTH-' - -NOM = 'VALEURS IMPOSEES DES TRACEURS' -NOM1 = 'PRESCRIBED TRACERS VALUES' -TYPE = REEL -INDEX = 35 -MNEMO = 'TRACER' -TAILLE = 2 -RUBRIQUE = 'EQUATIONS, CONDITIONS LIMITES' -RUBRIQUE1 = 'EQUATIONS, BOUNDARY CONDITIONS' -NIVEAU = 1 -AIDE = 'Valeurs du traceur imposees aux frontieres liquides entrantes. -Lire la partie du mode d''emploi consacree aux conditions aux limites' -AIDE1 = 'Tracer values prescribed at the inflow boundaries. -Read the usermanual section dealing with the boundary conditions' - -NOM = 'ABSCISSES DES SOURCES' -NOM1 = 'ABSCISSAE OF SOURCES' -TYPE = REEL -INDEX = 36 -MNEMO = 'XSCE' -CONTROLE = -10000 ; 10000 -TAILLE = 2 -RUBRIQUE = 'EQUATIONS, SOURCES' -RUBRIQUE1 = 'EQUATIONS, SOURCE TERMS' -NIVEAU = 1 -AIDE = 'Valeurs des abscisses des sources de debit et de traceur.' -AIDE1 = 'abscissae of sources of flowrate and/or tracer' - -NOM = 'ORDONNEES DES SOURCES' -NOM1 = 'ORDINATES OF SOURCES' -TYPE = REEL -INDEX = 37 -MNEMO = 'YSCE' -CONTROLE = -10000 ; 10000 -TAILLE = 2 -RUBRIQUE = 'EQUATIONS, SOURCES' -RUBRIQUE1 = 'EQUATIONS, SOURCE TERMS' -NIVEAU = 1 -AIDE = 'Valeurs des ordonnees des sources de debit et de traceur.' -AIDE1 = 'ordinates of sources of flowrate and/or tracer' - -NOM = 'DEBITS DES SOURCES' -NOM1 = 'WATER DISCHARGE OF SOURCES' -TYPE = REEL -INDEX = 38 -MNEMO = 'DSCE' -CONTROLE = 0 ; 10000 -TAILLE = 2 -RUBRIQUE = 'EQUATIONS, SOURCES' -RUBRIQUE1 = 'EQUATIONS, SOURCE TERMS' -NIVEAU = 1 -AIDE = 'Valeurs des debits des sources.' -AIDE1 = 'values of water discharge of sources' - -NOM = 'VALEURS DES TRACEURS DES SOURCES' -NOM1 = 'VALUES OF THE TRACERS AT THE SOURCES' -TYPE = REEL -INDEX = 39 -MNEMO = 'TSCE' -CONTROLE = 0 ; 10000 -TAILLE = 2 -RUBRIQUE = 'EQUATIONS, SOURCES' -RUBRIQUE1 = 'EQUATIONS, SOURCE TERMS' -NIVEAU = 1 -AIDE = 'Valeurs des traceurs a chacune des sources' -AIDE1 = 'Values of the tracers at the sources' - -NOM = 'VITESSES DES SOURCES SELON X' -NOM1 = 'VELOCITIES OF THE SOURCES ALONG X' -TYPE = REEL -INDEX = 43 -MNEMO = 'USCE' -CONTROLE = 0 ; 10000 -TAILLE = 2 -RUBRIQUE = 'EQUATIONS, SOURCES' -RUBRIQUE1 = 'EQUATIONS, SOURCE TERMS' -NIVEAU = 1 -AIDE = 'Vitesses du courant a chacune des sources. Si elles ne sont pas -donnees, on considere que la vitesse est celle du courant' -AIDE1 = 'Velocities at the sources. If they are not given, the velocity -of the flow at this location is taken' - -NOM = 'VITESSES DES SOURCES SELON Y' -NOM1 = 'VELOCITIES OF THE SOURCES ALONG Y' -TYPE = REEL -INDEX = 44 -MNEMO = 'VSCE' -CONTROLE = 0 ; 10000 -TAILLE = 2 -RUBRIQUE = 'EQUATIONS, SOURCES' -RUBRIQUE1 = 'EQUATIONS, SOURCE TERMS' -NIVEAU = 1 -AIDE = 'Vitesses du courant a chacune des sources' -AIDE1 = 'Velocities at the sources' - -NOM = 'COEFFICIENTS DE DECENTREMENT' -NOM1 = 'UPWIND COEFFICIENTS' -TYPE = REEL -INDEX = 40 -MNEMO = 'COSUPG' -CONTROLE = 0 ; 10 -TAILLE = 4 -DEFAUT = 1.;1.;1.;1 -DEFAUT1 = 1.;1.;1.;1 -RUBRIQUE = 'PARAMETRES NUMERIQUES';'GENERAL' -RUBRIQUE1 = 'NUMERICAL PARAMETERS';'GENERAL' -NIVEAU = 3 -AIDE = 'Coefficients utilises par la methode S.U.P.G. -ces coefficients sont respectivement appliques a - 1) U et V - 2) H ou C - 3) T - 4) K ET EPSILON ' -AIDE1 = 'Upwind coefficients used by the S.U.P.G. method -These coefficients are applied respectively to - 1) U and V - 2) H or C - 3) T - 4) K and epsilon ' - -NOM = 'CRITERES D''ARRET' -NOM1 = 'STOP CRITERIA' -TYPE = REEL -INDEX = 41 -MNEMO = 'CRIPER' -CONTROLE = 0 ; 10 -TAILLE = 3 -DEFAUT = 1.E-4;1.E-4;1.E-4 -DEFAUT1= 1.E-4;1.E-4;1.E-4 -RUBRIQUE = 'PARAMETRES NUMERIQUES';'GENERAL' -RUBRIQUE1 = 'NUMERICAL PARAMETERS';'GENERAL' -NIVEAU = 2 -AIDE = 'Criteres d''arret pour un ecoulement permanent -ces coefficients sont respectivement appliques a - 1) U et V - 2) H - 3) T -A utiliser avec le mot-cle : ARRET SI UN ETAT PERMANENT EST ATTEINT' -AIDE1 = 'Stop criteria for a steady state -These coefficients are applied respectively to - 1) U and V - 2) H - 3) T -To be used with the key-word: STOP IF A STEADY STATE IS REACHED' - - -NOM = 'DUREE DU CALCUL' -NOM1 = 'DURATION' -TYPE = REEL -INDEX = 45 -MNEMO = 'DUREE' -TAILLE = 0 -DEFAUT = 0. -DEFAUT1= 0. -RUBRIQUE = 'PARAMETRES NUMERIQUES';'DUREE DU CALCUL' -RUBRIQUE1 = 'NUMERICAL PARAMETERS';'DURATION' -NIVEAU = 1 -AIDE = 'duree de la simulation. alternative au parametre nombre de pas -de temps. On en deduit le nombre de pas de temps en prenant l''entier le -plus proche de (duree du calcul/pas de temps). Si le nombre de pas de -temps est aussi donne, on prend la plus grande valeur' -AIDE1 = 'duration of simulation. May be used instead of the parameter -NUMBER OF TIME STEPS. The nearest integer to (duration/time step) is -taken. -If NUMBER OF TIME STEPS is also given, the greater value is taken' - -NOM = 'NORD' -NOM1 = 'NORTH' -TYPE = REEL -INDEX = 46 -MNEMO = 'NORD' -TAILLE = 0 -DEFAUT = 0. -DEFAUT1= 0. -RUBRIQUE = 'CONSTANTES PHYSIQUES' -RUBRIQUE1 = 'PHYSICAL CONSTANTS' -NIVEAU = 2 -AIDE = 'Direction du nord en degres, par rapport a l''axe des y -dans le sens trigonometrique. Notation decimale 10.5 signifie 10 degres -et trente minutes.' -AIDE1 = 'Angle of the North with the y axis, in degrees. 10.5 means -10 degrees and 30 minutes.' - -NOM = 'TITRE' -NOM1 = 'TITLE' -TYPE = CARACTERE -INDEX = 1 -MNEMO = 'TITCAS' -TAILLE = 0 -DEFAUT = ' ' -DEFAUT1 = ' ' -RUBRIQUE = 'ENTREES-SORTIES, GENERALITES';'CALCUL' -RUBRIQUE1 = 'INPUT-OUTPUT, INFORMATION';'COMPUTATIONAL INFORMATION' -COMPORT = -'Foreground ("ENTREES-SORTIES, GENERALITES*CALCUL") -IS VALEUR (red)' -NIVEAU = 1 -AIDE = 'Titre du cas etudie. Ce titre figurera sur les dessins.' -AIDE1 = 'Title of the case being considered. This title shall be marked -on the drawings.' - -NOM = 'VARIABLES POUR LES SORTIES GRAPHIQUES' -NOM1 = 'VARIABLES FOR GRAPHIC PRINTOUTS' -TYPE = CARACTERE -INDEX = 2 -MNEMO = 'SORTIE' -TAILLE = 0 -DEFAUT = 'U,V,H,B' -DEFAUT1 = 'U,V,H,B' -CHOIX = 'U="vitesse suivant l''axe des x (m/s)"'; -'V="vitesse suivant l''axe des y (m/s)"'; -'C="celerite des onde (m/s)"'; -'H="hauteur d''eau (m)"'; -'S="cote de surface libre (m)"'; -'B="cote du fond (m)"'; -'F="nombre de Froude "'; -'Q="debit scalaire du fluide (m2/s)"'; -'T1="traceur 1, etc. "'; -'K="energie turbulente du modele k-epsilon (J/kg)"'; -'E="dissipation de l''energie turbulente (W/kg)"'; -'D="viscosite turbulente du modele k-epsilon (m2/s)"'; -'I="debit suivant l''axe des x (m2/s)"'; -'J="debit suivant l''axe des y (m2/s)"'; -'M="vitesse scalaire (m/s)"'; -'X="vent suivant l''axe des x (m/s)"'; -'Y="vent suivant l''axe des y (m/s)"'; -'P="pression atmospherique (Pa)"'; -'W="coefficient de frottement sur le fond "'; -'A="derive en x (m)"'; -'G="derive en y (m)"'; -'L="nombre de Courant "'; -'N="variable supplementaire N "'; -'O="variable supplementaire O "'; -'R="variable supplementaire R "'; -'Z="variable supplementaire Z "'; -'MAXZ="cote maximum "'; -'TMXZ="temps de la cote maximum "'; -'MAXV="vitesse maximum "'; -'TMXV="temps de la vitesse maximum "'; -'US="vitesse de frottement "' -CHOIX1= 'U="velocity along x axis (m/s)"'; -'V="velocity along y axis (m/s)"'; -'C="wave celerity (m/s)"'; -'H="water depth (m)"'; -'S="free surface elevation (m)"'; -'B="bottom elevation (m)"'; -'F="Froude number "'; -'Q="scalar flowrate of fluid (m2/s)"'; -'T1="tracer 1 etc. "'; -'K="turbulent kinetic energy in k-epsilon model (J/kg)"'; -'E="dissipation of turbulent energy (W/kg)"'; -'D="turbulent viscosity of k-epsilon model (m2/s)"'; -'I="flowrate along x axis (m2/s)"'; -'J="flowrate along y axis (m2/s)"'; -'M="scalar velocity (m/s)"'; -'X="wind along x axis (m/s)"'; -'Y="wind along y axis (m/s)"'; -'P="air pressure (Pa)"'; -'W="friction coefficient"'; -'A="drift along x (m)"'; -'G="drift along y (m)"'; -'L="Courant number "'; -'N="supplementary variable N "'; -'O="supplementary variable O "'; -'R="supplementary variable R "'; -'Z="supplementary variable Z "'; -'MAXZ="maximum elevation"'; -'TMXZ="time of maximum elevation "'; -'MAXV="maximum velocity"'; -'TMXV="time of maximum velocity"'; -'US="friction velocity "' -COMPOSE=',' -APPARENCE = 'packing IS XmPACK_COLUMN' ; - 'numColumns IS 26';'LISTE IS EDITABLE' -RUBRIQUE = 'ENTREES-SORTIES, GRAPHIQUES ET LISTING' -RUBRIQUE1 = 'INPUT-OUTPUT, GRAPHICS AND LISTING' -NIVEAU = 1 -AIDE = 'Noms des variables que l''utilisateur veut ecrire dans -le fichier des resultats. -Chaque variable est representee par une lettre. -Le choix des separateurs est libre. -Les possibilites offertes sont les suivantes : - - U : vitesse suivant l''axe des x (m/s), - - V : vitesse suivant l''axe des y (m/s), - - C : celerite des ondes (m/s), - - H : hauteur d''eau (m), - - S : cote de surface libre (m), - - B : cote du fond (m), - - F : nombre de Froude, - - Q : debit scalaire du fluide (m2/s), - - T : traceur, - - K : energie turbulente du modele k-epsilon (J/kg), - - E : dissipation de l''energie turbulente (W/kg), - - D : viscosite turbulente du modele k-epsilon (m2/s), - - I : debit suivant l''axe des x (m2/s), - - J : debit suivant l''axe des y (m2/s), - - M : vitesse scalaire (m/s), - - X : vent suivant l''axe des x (m/s), - - Y : vent suivant l''axe des y (m/s), - - P : pression atmospherique (Pa), - - W : coefficient de frottement sur le fond, - - A : derive en x (m), - - G : derive en y (m), - - L : coefficient de frottement sur le fond. -L''utilisateur dispose egalement de 4 champs libres, qu''il peut -utiliser pour ecrire dans le fichier des resultats des variables -qu''il cree lui-meme. Ces variables propres a l''utlisateur doivent -etre calculees dans le sous-programme PRERES et le nom que l''on -desire leur donner doit etre ecrit dans le sous-programme NOMVAR. -Ces 7 champs sont : - - N, O, R, Z qui correspondent aux tableaux PRIVE(1,1), PRIVE(1,2), -PRIVE(1,3), PRIVE(1,4). A la difference des variables -precedentes, celles-ci sont conservees dans tout le programme, et -peuvent donc etre reutilisees. -Dans ce dernier cas ne pas oublier de donner une taille -suffisante au tableau PRIVE (dans le programme principal). -Il est ainsi possible de limiter, par exemple, la taille des fichiers -de resultats pour de tres gros calculs. Cependant, il faut etre -conscient du fait que, dans l''eventualite d''une reprise de calcul, -le code doit disposer, dans le fichier des resultats, des informations -necessaires a sa poursuite, a savoir : - - les vitesses U et V, - - les hauteurs d''eau H, - - les cotes du fond B. -Toutefois, TELEMAC peut recalculer certaines de ces variables a partir -d''autres qui lui seront fournies (par exemple, il recalculera H a -partir de S et B).' -AIDE1 = 'Names of variables the user wants to write into the results -file. Each variable is represented by a letter. The separators can be -freely selected. -The available capabilities are as follows: - U : velocity along x axis (m/s), - V : velocity along y axis (m/s), - C : wave celerity (m/s), - H : water depth (m), - S : free surface elevation (m), - B : bottom elevation (m), - F : Froude number, - Q : scalar flowrate of fluid (m2/s), - T : tracer - K : turbulent kinetic energy in k-epsilon model (J/kg), - E : dissipation of turbulent energy (W/kg), - D : turbulent viscosity of k-epsilon model (m2/s), - I : flowrate along x axis (m2/s), - J : flowrate along y axis (m2/s), - M : scalar velocity (m/s), - X : wind along x axis (m/s) - Y : wind along y axis (m/s), - P : air pressure (Pa), - W : friction coefficient , - A : drift along x, - G : drift along y, - L : nombre de courant. - -four other variables are also made available to the user who may use -them for writing into the file the results of variables he creates -himself. These user-specific variables should be computed in the -subroutine PRERES and their desired name should be written -into the subroutine NOMVAR. -These seven variables are as follows: - -N, O, R, Z which correspond to arrays PRIVE(1,1) up to PRIVE(1, -Unlike the preceding variables, they are preserved throughout the -program, so that they can be used again. -In the latter case, do not forget to provide the array PRIVE with -sufficiently large dimensions (in FORTRAN file). -With this key-word, one can limit the size of the RESULTS FILE. -It should be kept in mind, however, that if a computation has to be -continued, the RESULTS FILE should contain the appropriate information -for running the code,i.e.: - - velocities U and V, - - water depths H, - - bottom elevations B. -TELEMAC, however, can compute some of these variables from others -for example, it will compute H from S and B.' - -NOM = 'VARIABLES A IMPRIMER' -NOM1 = 'VARIABLES TO BE PRINTED' -TYPE = CARACTERE -INDEX = 3 -MNEMO = 'VARIMP' -TAILLE = 0 -DEFAUT = ' ' -DEFAUT1 = ' ' -/CHOIX = '" "="pas de variables"'; -CHOIX = 'U="vitesse suivant l''axe des x (m/s)"'; -'V="vitesse suivant l''axe des y (m/s)"'; -'C="celerite des ondes (m/s)"'; -'H="hauteur d''eau (m)"'; -'S="cote de surface libre (m)"'; -'B="cote du fond (m)"'; -'F="nombre de Froude"'; -'Q="debit scalaire du fluide (m2/s)"'; -'T="traceur"'; -'K="energie turbulente du modele k-epsilon (J/kg)"'; -'E="dissipation de l''energie turbulente (W/kg)"'; -'D="viscosite turbulente du modele k-epsilon (m2/s)"'; -'I="debit suivant l''axe des x (m2/s)"'; -'J="debit suivant l''axe des y (m2/s)"'; -'M="vitesse scalaire (m/s)"'; -'X="vent suivant l''axe des x (m/s)"'; -'Y="vent suivant l''axe des y (m/s)"'; -'P="pression atmospherique (Pa)"'; -'W="coefficient de frottement sur le fond"'; -'A="derive en x (m)"'; -'G="derive en y (m)"'; -'L="nombre de courants "'; -'N="variable supplementaire N"'; -'O="variable supplementaire O"'; -'R="variable supplementaire R"'; -'Z="variable supplementaire Z"' -CHOIX1 = 'U="velocity along x axis (m/s)"'; -'V="velocity along y axis (m/s)"'; -'C="wave celerity (m/s)"'; -'H="water depth (m)"'; -'S="free surface elevation (m)"'; -'B="bottom elevation (m)"'; -'F="Froude number"'; -'Q="scalar flowrate of fluid (m2/s)"'; -'T="tracer"'; -'K="turbulent kinetic energy in k-epsilon model (J/kg)"'; -'E="dissipation of turbulent energy (W/kg)"'; -'D="turbulent viscosity of k-epsilon model (m2/s)"'; -'I="flowrate along x axis (m2/s)"'; -'J="flowrate along y axis (m2/s)"'; -'M="scalar velocity (m/s)"'; -'X="wind along x axis (m/s)"'; -'Y="wind along y axis (m/s)"'; -'P="air pressure (Pa)"'; -'W="friction coefficient"'; -'A="drift along x (m)"'; -'G="drift along y (m)"'; -'L="nombre de courants "'; -'N="supplementary variable N"'; -'O="supplementary variable O"'; -'R="supplementary variable R"'; -'Z="supplementary variable Z"' -COMPOSE=',' -APPARENCE = 'packing IS XmPACK_COLUMN' ; 'numColumns IS 26' ; -'LISTE IS EDITABLE' - -RUBRIQUE = 'ENTREES-SORTIES, GRAPHIQUES ET LISTING' -RUBRIQUE1 = 'INPUT-OUTPUT, GRAPHICS AND LISTING' -NIVEAU = 1 -AIDE = 'Nom des variables que l''utilisateur desire ecrire a l''ecran. -Meme possibilites que pour les sorties graphiques.' -AIDE1 = '' - -NOM = 'USER CRAY' -NOM1 = 'USER CRAY' -TYPE = CARACTERE -INDEX = 4 -MNEMO = '' -TAILLE = 0 -DEFAUT = ' ' -DEFAUT1 = ' ' -RUBRIQUE = 'ENTREES-SORTIES, GENERALITES';'ENVIRONNEMENT' -RUBRIQUE1 = 'INPUT-OUTPUT, INFORMATION';'COMPUTATION ENVIRONMENT' -COMPORT = -'Foreground ("ENTREES-SORTIES, GENERALITES*ENVIRONNEMENT") -IS VALEUR (red)' -NIVEAU = 2 -AIDE = 'Userid CRAY de l''utilisateur.' -AIDE1 = 'User''s identity on CRAY.' - -NOM = 'MOT DE PASSE CRAY' -NOM1 = 'PASSWORD' -TYPE = CARACTERE -INDEX = 5 -MNEMO = '' -TAILLE = 0 -DEFAUT = ' ' -DEFAUT1 = ' ' -RUBRIQUE = 'ENTREES-SORTIES, GENERALITES';'ENVIRONNEMENT' -RUBRIQUE1 = 'INPUT-OUTPUT, INFORMATION';'COMPUTATION ENVIRONMENT' -NIVEAU = 2 -AIDE = 'Mot de passe associe a l''USER CRAY.' -AIDE1 = 'Password related to USER CRAY.' - -NOM = 'FICHIER FORTRAN' -NOM1 = 'FORTRAN FILE' -TYPE = CARACTERE -INDEX = 7 -MNEMO = 'NOMFOR' -SUBMIT = 'INUTILE;t2dfort.f;FACUL;ASC;LIT;FORTRAN' -DEFAUT = 'DEFAUT' -DEFAUT1 = 'DEFAUT' -RUBRIQUE = 'ENTREES-SORTIES, FICHIERS';'NOMS' -RUBRIQUE1 = 'INPUT-OUTPUT, FILES';'NAMES' -NIVEAU = 1 -APPARENCE = 'LISTE IS FICHIER' -AIDE = 'Nom du fichier FORTRAN a soumettre.' -AIDE1 = 'Name of FORTRAN file to be submitted.' - -NOM = 'FICHIER DES PARAMETRES' -NOM1 = 'STEERING FILE' -TYPE = CARACTERE -INDEX = 8 -MNEMO = 'NOMCAS' -SUBMIT = 'INUTILE;T2DCAS;OBLIG;ASC;LIT;CAS' -DEFAUT = ' ' -DEFAUT1 = ' ' -NIVEAU = 1 -APPARENCE = 'LISTE IS FICHIER' -RUBRIQUE = 'ENTREES-SORTIES, FICHIERS';'NOMS' -RUBRIQUE1 = 'INPUT-OUTPUT, FILES';'NAMES' -AIDE = 'Nom du fichier contenant les parametres du calcul a realiser.' -AIDE1 = 'Name of the file containing the parameters of the computation -Written by the user.' - -NOM = 'FICHIER DES CONDITIONS AUX LIMITES' -NOM1 = 'BOUNDARY CONDITIONS FILE' -TYPE = CARACTERE -INDEX = 9 -MNEMO = 'T2D_FILES(T2DLIM)%NAME' -SUBMIT = 'T2DLIM-READ-07;T2DCLI;OBLIG;ASC;LIT;CONLIM' -/DEFAUT = ' ' -/DEFAUT1 = ' ' -RUBRIQUE = 'ENTREES-SORTIES, FICHIERS';'NOMS' -RUBRIQUE1 = 'INPUT-OUTPUT, FILES';'NAMES' -APPARENCE = 'LISTE IS FICHIER' -NIVEAU = 1 -AIDE = 'Nom du fichier contenant les types de conditions aux limites. -Ce fichier est rempli de facon automatique par le mailleur au moyen de -couleurs affectees aux noeuds des frontieres du domaine de calcul.' -AIDE1 = 'Name of the file containing the types of boundary conditions. -This file is filled automatically by the mesh generator through -through colours that are assigned to the boundary nodes.' - -NOM = 'FICHIER DU CALCUL PRECEDENT' -NOM1 = 'PREVIOUS COMPUTATION FILE' -TYPE = CARACTERE -INDEX = 10 -MNEMO = 'T2D_FILES(T2DPRE)%NAME' -SUBMIT = 'T2DPRE-READ-04;T2DPRE;FACUL;BIN;LIT;SELAFIN' -DEFAUT = ' ' -DEFAUT1 = ' ' -NIVEAU = 1 -APPARENCE = 'LISTE IS FICHIER' -RUBRIQUE = 'ENTREES-SORTIES, FICHIERS';'NOMS' -RUBRIQUE1 = 'INPUT-OUTPUT, FILES';'NAMES' -AIDE = 'Nom d''un fichier contenant les resultats d''un calcul precedent -realise sur le meme maillage et dont le dernier pas de temps enregistre -va fournir les conditions initiales pour une suite de de calcul.' -AIDE1 = 'Name of a file containing the results of an earlier computation -which was made on the same mesh. The last recorded time step will provid -the initial conditions for the new computation.' - -NOM = 'FICHIER DES RESULTATS' -NOM1 = 'RESULTS FILE' -TYPE = CARACTERE -INDEX = 11 -MNEMO = 'T2D_FILES(T2DRES)%NAME' -/ READWRITE CAR RELU EN CAS DE VALIDATION -SUBMIT = 'T2DRES-READWRITE-08;T2DRES;OBLIG;BIN;ECR;SELAFIN' -DEFAUT = ' ' -DEFAUT1 = ' ' -NIVEAU = 1 -APPARENCE = 'LISTE IS FICHIER' -RUBRIQUE = 'ENTREES-SORTIES, FICHIERS';'NOMS' -RUBRIQUE1 = 'INPUT-OUTPUT, FILES';'NAMES' -AIDE = 'Nom du fichier dans lequel seront ecrits les resultats du calcul -avec la periodicite donnee par le mot cle ''PERIODE POUR LES SORTIES -GRAPHIQUES''.' -AIDE1 = 'Name of the file into which the computation results shall be -written, -the periodicity being given by the key-word: -GRAPHIC PRINTOUT PERIOD.' - -NOM = 'NUMERO DE VERSION' -NOM1 = 'RELEASE' -TYPE = CARACTERE -INDEX = 12 -MNEMO = '' -TAILLE = 0 -DEFAUT = 'V6P3' -DEFAUT1 = 'V6P3' -RUBRIQUE = 'ENTREES-SORTIES, GENERALITES';'CALCUL' -RUBRIQUE1 = 'INPUT-OUTPUT, INFORMATION';'COMPUTATIONAL INFORMATION' -NIVEAU = -3 -AIDE = 'Numero de version des bibliotheques utilisees par TELEMAC. -SUR UNE STATION DE TRAVAIL -5 versions sont donnees correspondant a : -TELEMAC,DAMO,UTILE,BIEF,HP' -AIDE1 = 'version number of the libraries used by TELEMAC. -ON A WORKSTATION -5 numbers are given, corresponding to the libraries called: -TELEMAC,DAMO,UTILE,BIEF,HP' - -NOM = 'TEMPS MACHINE CRAY' -NOM1 = 'CPU TIME' -TYPE = CARACTERE -INDEX = 13 -MNEMO = '' -DEFAUT = '10' -DEFAUT1 = '10' -NIVEAU = 2 -RUBRIQUE = 'ENTREES-SORTIES, GENERALITES';'ENVIRONNEMENT' -RUBRIQUE1 = 'INPUT-OUTPUT, INFORMATION';'COMPUTATION ENVIRONMENT' -AIDE = 'Temps CPU (en secondes) alloue pour la realisation du calcul. -Attention; il s''agit bien d''une chaine de caracteres.' -AIDE1 = 'C.P.U. time (in seconds) allowed for making the computation. -Please note that this keyword is a string of characters.' - -NOM = 'PLACE MEMOIRE CRAY' -NOM1 = 'MEMORY SPACE' -TYPE = CARACTERE -INDEX = 14 -MNEMO = '' -TAILLE = 0 -DEFAUT = '1500000W' -DEFAUT1 = '1500000W' -RUBRIQUE = 'ENTREES-SORTIES, GENERALITES';'ENVIRONNEMENT' -RUBRIQUE1 = 'INPUT-OUTPUT, INFORMATION';'COMPUTATION ENVIRONMENT' -NIVEAU = 2 -AIDE = 'Place memoire (en mots de 8 octets) reservee en machine pour la -realisation du calcul.' -AIDE1 = 'Storage capacity (in words of 8 bytes) reserved in machine for -making the computation.' - -NOM = 'FICHIER DES FONDS' -NOM1 = 'BOTTOM TOPOGRAPHY FILE' -TYPE = CARACTERE -INDEX = 15 -MNEMO = 'T2D_FILES(T2DFON)%NAME' -SUBMIT = 'T2DFON-READ-23;T2DFON;FACUL;ASC;LIT;PARAL' -DEFAUT = ' ' -DEFAUT1 = ' ' -NIVEAU = 1 -APPARENCE = 'LISTE IS FICHIER' -RUBRIQUE = 'ENTREES-SORTIES, FICHIERS';'NOMS' -RUBRIQUE1 = 'INPUT-OUTPUT, FILES';'NAMES' -AIDE = 'Nom du fichier eventuel contenant la bathymetrie associee au -maillage. -Si ce mot-cle est utilise; c''est cette bathymetrie qui sera utilisee -pour le calcul.' -AIDE1 = 'Name of the possible file containing the bathymetric data. -Where this keyword is used, these bathymetric data shall be used in -the computation.' - -NOM = 'NUMERO DE COMPTE' -NOM1 = 'ACCOUNT NUMBER' -TYPE = CARACTERE -INDEX = 16 -MNEMO = ' ' -DEFAUT = ' ' -DEFAUT1 = ' ' -NIVEAU = 2 -RUBRIQUE = 'ENTREES-SORTIES, GENERALITES';'ENVIRONNEMENT' -RUBRIQUE1 = 'INPUT-OUTPUT, INFORMATION';'COMPUTATION ENVIRONMENT' -AIDE = 'Numero du compte calcul sur lequel sera impute le cout -du calcul.' -AIDE1 = 'Account number to which the cost of computation shall be -charged.' - -NOM = 'FICHIER DE DONNEES BINAIRE 1' -NOM1 = 'BINARY DATA FILE 1' -TYPE = CARACTERE -INDEX = 17 -MNEMO = 'T2D_FILES(T2DBI1)%NAME' -/WITH WAVE FORCING, IS A SELAFIN FILE -SUBMIT = 'T2DBI1-READ-24;T2DBI1;FACUL;BIN;LIT;SELAFIN' -/SUBMIT = 'NBI1-READ-24;T2DBI1;FACUL;BIN;LIT;PARAL' -DEFAUT = ' ' -DEFAUT1 = ' ' -APPARENCE = 'LISTE IS FICHIER' -NIVEAU = 1 -RUBRIQUE = 'ENTREES-SORTIES, FICHIERS';'NOMS' -RUBRIQUE1 = 'INPUT-OUTPUT, FILES';'NAMES' -AIDE = 'Fichier de donnees code en binaire mis a la disposition -de l''utilisateur. -Les donnees de ce fichier seront a lire sur le canal 24.' -AIDE1 = 'Binary-coded data file made available to the user. -The data in this file shall be read on channel 24.' - -NOM = 'FICHIER DE DONNEES BINAIRE 2' -NOM1 = 'BINARY DATA FILE 2' -TYPE = CARACTERE -INDEX = 18 -MNEMO = 'T2D_FILES(T2DBI2)%NAME' -TAILLE = 0 -SUBMIT = 'T2DBI2-READ-25;T2DBI2;FACUL;BIN;LIT;PARAL' -DEFAUT = ' ' -DEFAUT1 = ' ' -NIVEAU = 1 -APPARENCE = 'LISTE IS FICHIER' -RUBRIQUE = 'ENTREES-SORTIES, FICHIERS';'NOMS' -RUBRIQUE1 = 'INPUT-OUTPUT, FILES';'NAMES' -AIDE = 'Fichier de donnees code en binaire mis a la disposition -de l''utilisateur. -Les donnees de ce fichier seront a lire sur le canal 25.' -AIDE1 = 'Binary-coded data file made available to the user. -The data in this file shall be read on channel 25.' - -NOM = 'FICHIER DE DONNEES FORMATE 1' -NOM1 = 'FORMATTED DATA FILE 1' -TYPE = CARACTERE -INDEX = 19 -MNEMO = 'T2D_FILES(T2DFO1)%NAME' -SUBMIT = 'T2DFO1-READ-26;T2DFO1;FACUL;ASC;LIT;PARAL' -DEFAUT = ' ' -DEFAUT1 = ' ' -NIVEAU = 1 -APPARENCE = 'LISTE IS FICHIER' -RUBRIQUE = 'ENTREES-SORTIES, FICHIERS';'NOMS' -RUBRIQUE1 = 'INPUT-OUTPUT, FILES';'NAMES' -AIDE = 'Fichier de donnees formate mis a la disposition de -l''utilisateur. -Les donnees de ce fichier seront a lire sur le canal 26.' -AIDE1 = 'Formatted data file made available to the user. -The data in this file shall be read on channel 26.' - -NOM = 'FICHIER DE DONNEES FORMATE 2' -NOM1 = 'FORMATTED DATA FILE 2' -TYPE = CARACTERE -INDEX = 20 -MNEMO = 'T2D_FILES(T2DFO2)%NAME' -SUBMIT = 'T2DFO2-READ-27;T2DFO2;FACUL;ASC;LIT;PARAL' -DEFAUT = ' ' -DEFAUT1 = ' ' -NIVEAU = 1 -APPARENCE = 'LISTE IS FICHIER' -RUBRIQUE = 'ENTREES-SORTIES, FICHIERS';'NOMS' -RUBRIQUE1 = 'INPUT-OUTPUT, FILES';'NAMES' -AIDE = 'Fichier de donnees formate mis a la disposition de -l''utilisateur. -Les donnees de ce fichier seront a lire sur le canal 27.' -AIDE1 = 'Formatted data file made available to the user. -The data in this file shall be read on channel 27.' - -NOM = 'DESTINATION' -NOM1 = 'DESTINATION' -TYPE = CARACTERE -INDEX = 21 -MNEMO = '' -DEFAUT = 'CHE43A' -DEFAUT1 = 'CHE43A' -RUBRIQUE = 'ENTREES-SORTIES, GENERALITES';'ENVIRONNEMENT' -RUBRIQUE1 = 'INPUT-OUTPUT, INFORMATION';'COMPUTATION ENVIRONMENT' -NIVEAU = 2 -AIDE = 'Nom eventuel d''une station de travail sur laquelle -l''utilisateur desire rediriger le fichier des resultats du calcul.' -AIDE1 = 'Possible name of a workstation to which the user wants -to reroute the result file.' - -NOM = 'USER SUR LA DESTINATION' -NOM1 = 'USER ON DESTINATION' -TYPE = CARACTERE -INDEX = 22 -MNEMO = '' -TAILLE = 0 -DEFAUT = 'JMH' -DEFAUT1 = 'JMH' -RUBRIQUE = 'ENTREES-SORTIES, GENERALITES';'ENVIRONNEMENT' -RUBRIQUE1 = 'INPUT-OUTPUT, INFORMATION';'COMPUTATION ENVIRONMENT' -NIVEAU = 2 -AIDE = 'Nom de l''USER de l''utilisateur sur la station de travail -ou l''on desire rediriger le fichier de resultts.' -AIDE1 = 'User''s name of USER at the workstation onto which the -results file shall desirebly be rerouted.' - -NOM = 'NOMS DES VARIABLES CLANDESTINES' -NOM1 = 'NAMES OF CLANDESTINE VARIABLES' -TYPE = CARACTERE -INDEX = 23 -MNEMO = 'VARCLA' -TAILLE = 2 -RUBRIQUE = 'ENTREES-SORTIES, GENERALITES';'CALCUL' -RUBRIQUE1 = 'INPUT-OUTPUT, INFORMATION';'COMPUTATIONAL INFORMATION' -NIVEAU = 1 -AIDE = 'Noms de variables qui ne sont pas utilisees par TELEMAC; -mais qui doivent etre conservees lors de son execution. -Ceci peut etre utilise entre autres lors du couplage de TELEMAC -avec un autre code. -Les variables clandestines sont alors des variables propres a l''autre -code et sont rendues dans le fichier de resultats.' -AIDE1 = 'Names of variables that are not used by TELEMAC, but should be -preserved when it is being run. This keyword may be used, for instance -when it if TELEMAC is coupled with another code. Thus, the clandestine -variables belong to the other code and are given back in the results -file.' - - -NOM = 'FICHIER DE RESULTATS BINAIRE' -NOM1 = 'BINARY RESULTS FILE' -TYPE = CARACTERE -INDEX = 24 -MNEMO = 'T2D_FILES(T2DRBI)%NAME' -SUBMIT = 'T2DRBI-WRITE-28;T2DRBI;FACUL;BIN;ECR;PARAL' -DEFAUT = ' ' -DEFAUT1 = ' ' -APPARENCE = 'LISTE IS FICHIER' -RUBRIQUE = 'ENTREES-SORTIES, FICHIERS';'NOMS' -RUBRIQUE1 = 'INPUT-OUTPUT, FILES';'NAMES' -NIVEAU = 1 -AIDE = 'Fichier de resultats code en binaire mis a la disposition -de l''utilisateur. Les resultats a placer dans ce fichier seront a -ecrire sur le canal 28.' -AIDE1 = 'Additional binary-coded result file made available -to the user. The results to be entered into this file shall be written -on channel 28.' - -NOM = 'FICHIER DE RESULTATS FORMATE' -NOM1 = 'FORMATTED RESULTS FILE' -TYPE = CARACTERE -INDEX = 25 -MNEMO = 'T2D_FILES(T2DRFO)%NAME' -SUBMIT = 'T2DRFO-WRITE-29;T2DRFO;FACUL;ASC;ECR;PARAL' -DEFAUT = ' ' -DEFAUT1 = ' ' -NIVEAU = 1 -APPARENCE = 'LISTE IS FICHIER' -RUBRIQUE = 'ENTREES-SORTIES, FICHIERS';'NOMS' -RUBRIQUE1 = 'INPUT-OUTPUT, FILES';'NAMES' -AIDE = 'Fichier de resultats formate mis a la disposition de -l''utilisateur. -Les resultats a placer dans ce fichier seront a ecrire sur -le canal 29.' -AIDE1 = 'Formatted file of results made available to the user. -The results to be entered into this file shall be written -on channel 29.' - -NOM = 'CONDITIONS INITIALES' -NOM1 = 'INITIAL CONDITIONS' -TYPE = CARACTERE -INDEX = 26 -MNEMO = 'CDTINI' -DEFAUT = 'COTE NULLE' -DEFAUT1 = 'ZERO ELEVATION' -NIVEAU = 1 -CHOIX = '"COTE NULLE"'; '"COTE CONSTANTE"'; -'"HAUTEUR NULLE"'; '"HAUTEUR CONSTANTE"'; '"PARTICULIERES"' ; -'"ALTIMETRIE SATELLITE TPXO"' -CHOIX1 = '"ZERO ELEVATION"'; '"CONSTANT ELEVATION"'; -'"ZERO DEPTH"'; '"CONSTANT DEPTH"'; '"SPECIAL"' ; -'"TPXO SATELLITE ALTIMETRY"' -RUBRIQUE = 'EQUATIONS, CONDITIONS INITIALES' -RUBRIQUE1 = 'EQUATIONS, INITIAL CONDITIONS' -AIDE = 'Permet de definir les conditions initiales sur -les hauteurs d''eau. -Les valeurs possibles sont : - - COTE NULLE. Initialise la cote de surface libre a 0. - Les hauteurs d''eau initiales sont alors retrouvees en - faisant la difference entre les cotes de surface libre - et du fond. - - COTE CONSTANTE .Initialise la cote de surface libre a la - valeur donnee par le mot-cle COTE INITIALE. Les hauteurs - d''eau initiales sont calculees comme precedemment. - - HAUTEUR NULLE .Initialise les hauteurs d''eau a 0. - - HAUTEUR CONSTANTE. Initialise les hauteurs d''eau a la valeur - donnee par le mot-cle HAUTEUR INITIALE. - - PARTICULIERES. Les conditions initiales sur la hauteur d''eau - doivent etre precisees dans le sous-programme CONDIN. - - ALTIMETRIE SATELLITE TPXO. Les conditions initiales sur la hauteur - d''eau et les vitesses sont etiblies sur la base des donnees - satellite TPXO dont les 8 premiers constistuents ont ete extrait - et sauves dans le fichier BASE DE DONNEES DE MAREE.' -AIDE1 = 'Makes it possible to define the initial conditions with -the water depth. -The possible values are as follows: - - ZERO ELEVATION-. Initializes the free surface elevation to 0. -The initial water depths are then found by computing the difference -between the free surface and the bottom. - - CONSTANT ELEVATION-. Initializes the water elevation to the value -given by the keyword -INITIAL ELEVATION-. The initial water depths -are computed as in the previous case. - - ZERO DEPTH-. Initializes the water depths to 0. - - CONSTANT DEPTH-. Initializes the water depths to the value given -by the key-word -INITIAL DEPTH-. - - SPECIAL-. The initial conditions with the water depth should be -stated in the CONDIN subroutine. - - TPXO SATELITE ALTIMETRY. The initial conditions on the free surface and -velocities are established from the TPXO satellite program data, the harmonic -constituents of which are stored in the TIDE DATA BASE file.' - -NOM = 'FORMAT DU FICHIER DE GEOMETRIE' -NOM1 = 'GEOMETRY FILE FORMAT' -TYPE = CARACTERE -INDEX = 27 -MNEMO = '????' -DEFAUT = 'SERAFIN ' -DEFAUT1 = 'SERAFIN ' -NIVEAU = 2 -CHOIX = 'SERAFIN ';'SERAFIND';'MED ' -RUBRIQUE = 'ENTREES-SORTIES, FICHIERS' -RUBRIQUE1 = 'INPUT-OUTPUT, FILES' -AIDE = 'Format du fichier de geometrie. -Les valeurs possibles sont : -- SERAFIN : format standard simple precision pour Telemac; -- SERAFIND: format standard double precision pour Telemac; -- MED : format MED base sur HDF5' -AIDE1 = 'Geometry file format. -Possible values are: -- SERAFIN : classical single precision format in Telemac; -- SERAFIND: classical double precision format in Telemac; -- MED : MED format based on HDF5' - -NOM = 'FORMAT DU FICHIER DES RESULTATS' -NOM1 = 'RESULTS FILE FORMAT' -TYPE = CARACTERE -INDEX = 28 -MNEMO = '?????' -DEFAUT = 'SERAFIN ' -DEFAUT1 = 'SERAFIN ' -CHOIX = 'SERAFIN ';'SERAFIND';'MED ' -NIVEAU = 2 -RUBRIQUE = 'ENTREES-SORTIES, FICHIERS' -RUBRIQUE1 = 'INPUT-OUTPUT, FILES' -AIDE = 'Format du fichier de resultats. -Les valeurs possibles sont : -- SERAFIN : format standard simple precision pour Telemac; -- SERAFIND: format standard double precision pour Telemac; -- MED : format MED base sur HDF5' -AIDE1 = 'Results file format. Possible values are: -- SERAFIN : classical single precision format in Telemac; -- SERAFIND: classical double precision format in Telemac; -- MED : MED format based on HDF5' - -NOM = 'FORMAT DU FICHIER DU CALCUL PRECEDENT' -NOM1 = 'PREVIOUS COMPUTATION FILE FORMAT' -TYPE = CARACTERE -INDEX = 29 -MNEMO = '?????' -DEFAUT = 'SERAFIN ' -DEFAUT1 = 'SERAFIN ' -CHOIX = 'SERAFIN ';'SERAFIND';'MED ' -NIVEAU = 2 -RUBRIQUE = 'ENTREES-SORTIES, FICHIERS' -RUBRIQUE1 = 'INPUT-OUTPUT, FILES' -AIDE = 'Format du fichier de resultats du calcul precedent. -Les valeurs possibles sont : -- SERAFIN : format standard simple precision pour Telemac; -- SERAFIND: format standard double precision pour Telemac; -- MED : format MED base sur HDF5' -AIDE1 = 'Previous computation results file format. -Possible values are: -- SERAFIN : classical single precision format in Telemac; -- SERAFIND: classical double precision format in Telemac; -- MED : MED format based on HDF5' - -NOM = 'BIBLIOTHEQUES' -NOM1 = 'LIBRARIES' -TYPE = CARACTERE -INDEX = 30 -MNEMO = '' -TAILLE = 0 -DEFAUT =' ' -DEFAUT1 =' ' -RUBRIQUE = 'ENTREES-SORTIES, GENERALITES';'CALCUL' -RUBRIQUE1 = 'INPUT-OUTPUT, INFORMATION';'COMPUTATIONAL INFORMATION' -NIVEAU = 1 -AIDE = 'Obsolete' -AIDE1 = 'Obsolete' - -NOM = 'PRIORITE' -NOM1 = 'PRIORITY' -TYPE = CARACTERE -INDEX = 31 -MNEMO = '' -TAILLE = 0 -CHOIX = 'JOUR';'NUIT';'WEEK-END' -DEFAUT = 'JOUR' -DEFAUT1 = 'JOUR' -RUBRIQUE = 'ENTREES-SORTIES, GENERALITES';'ENVIRONNEMENT' -RUBRIQUE1 = 'INPUT-OUTPUT, INFORMATION';'COMPUTATION ENVIRONMENT' -NIVEAU = 2 -AIDE = 'Utilise par la procedure de lancement sur station de travail' -AIDE1 = 'Utilise par la procedure de lancement sur station de travail' - - -NOM = 'SUITE DE CALCUL' -NOM1 = 'COMPUTATION CONTINUED' -TYPE = LOGIQUE -INDEX = 1 -MNEMO = 'DEBU' -TAILLE = 0 -DEFAUT = NON -DEFAUT1 = NO -RUBRIQUE = 'ENTREES-SORTIES, GENERALITES';'CALCUL' -RUBRIQUE1 = 'INPUT-OUTPUT, INFORMATION';'COMPUTATIONAL INFORMATION' -NIVEAU = 1 -AIDE = 'Determine si le calcul en cours est independant de tout autre -resultat ou est une reprise effectuee a partir du resultat d''un calcul -precedent. -NON : Il s''agit du premier passage pour ce calcul et il est necessaire -de definir un jeu complet de conditions initiales -OUI : Il s''agit d''une reprise de calcul : -les conditions initiales sont constituees par le dernier pas de -temps du ''FICHIER DU CALCUL PRECEDENT'' du fichier des parametres -utilise pour soumettre le calcul. -Par contre, l''ensemble des donnees du fichier des parametres -peuvent etre redefinies ; ce qui offre la possibilite de changer -par exemple, le pas de temps, le modele de turbulence, le -frottement, d''ajouter ou retirer un traceur ... -De meme, il est necessaire de definir des conditions aux limites -(sous-programme BORD ou valeurs placees dans le fichier des -parametres), qui peuvent egalement etre modifiees.' -AIDE1 = 'Determines whether the computation under way is independent -result or is following an earlier result. -NO: It is the first run for this computation and a whole set of -initial conditions should be defined. -YES: It follows a former computation: -the initial conditions consist in the last time step of the -PREVIOUS COMPUTATION FILE in the steering file used for submitting -the computation. -All the data from the steering file may be defined once again, which -provides an opportunity to change, for example, the time step, -the turbulence model, the friction, to add or remove a tracer... -It is also possible to define new boundary conditions.' - -NOM = 'DIFFUSION DES TRACEURS' -NOM1 = 'DIFFUSION OF TRACERS' -TYPE = LOGIQUE -INDEX = 11 -MNEMO = 'DIFT' -TAILLE = 0 -DEFAUT = OUI -DEFAUT1 = YES -RUBRIQUE = 'ENTREES-SORTIES, GENERALITES';'CALCUL' -RUBRIQUE1 = 'INPUT-OUTPUT, INFORMATION';'COMPUTATIONAL INFORMATION' -NIVEAU = 2 -AIDE = 'Prise en compte ou non de la diffusion du traceur passif.' -AIDE1 = 'The diffusion of the passive tracer is taken into account -or ignored.' - -NOM = 'SORTIE LISTING' -NOM1 = 'LISTING PRINTOUT' -TYPE = LOGIQUE -INDEX = 3 -MNEMO = 'LISTIN' -TAILLE = 0 -DEFAUT = OUI -DEFAUT1 = YES -RUBRIQUE = 'ENTREES-SORTIES, GRAPHIQUES ET LISTING' -RUBRIQUE1 = 'INPUT-OUTPUT, GRAPHICS AND LISTING' -NIVEAU = 1 -AIDE = 'Sortie des resultats sur support papier. -Si l''on met NON le listing ne contient que l''entete et la mention -FIN NORMALE DU PROGRAMME -Commande a eviter' -AIDE1 = 'Result printout on hard copy. -When NO is selected, the listing only includes the heading and the -phrase "NORMAL END OF PROGRAM" -In addition, the options MASS BALANCE and VALIDATION are inhibited. -Not recommended for use.' - -NOM = 'DIFFUSION DES VITESSES' -NOM1 = 'DIFFUSION OF VELOCITY' -TYPE = LOGIQUE -INDEX = 4 -MNEMO = 'DIFVIT' -TAILLE = 0 -DEFAUT = OUI -DEFAUT1 = YES -RUBRIQUE = 'EQUATIONS';'DIFFUSION DES VITESSES' -RUBRIQUE1 = 'EQUATIONS';'DIFFUSION OF VELOCITY' -COMPORT = -'Foreground ("EQUATIONS*DIFFUSION DES VITESSES") IS VALEUR (brown)' -NIVEAU = 2 -AIDE = 'Permet de decider si l''on prend ou non en compte la diffusion -des vitesses.' -AIDE1 = 'Makes it possible to decide whether the diffusion of velocity -(i.e. viscosity) is taken into account or not.' - -NOM = 'PRESSION ATMOSPHERIQUE' -NOM1 = 'AIR PRESSURE' -TYPE = LOGIQUE -INDEX = 5 -MNEMO = 'ATMOS' -TAILLE = 0 -DEFAUT = NON -DEFAUT1 = NO -RUBRIQUE = 'EQUATIONS';'PRESSION ATMOSPHERIQUE' -RUBRIQUE1 = 'EQUATIONS';'AIR PRESSURE' -COMPORT = -'Foreground ("EQUATIONS*PRESSION ATMOSPHERIQUE") IS VALEUR (brown)' -NIVEAU = 1 -AIDE = 'Permet de decider si l''on prend ou non en compte l''influence -d''un champ de pression.' -AIDE1 = 'Provided to decide whether the influence of an atmosphere field -is taken into account or not.' - -NOM = 'CONVECTION' -NOM1 = 'ADVECTION' -TYPE = LOGIQUE -INDEX = 6 -MNEMO = 'CONV' -TAILLE = 0 -DEFAUT = OUI -DEFAUT1 = YES -RUBRIQUE = 'EQUATIONS';'CONVECTION' -RUBRIQUE1 = 'EQUATIONS';'ADVECTION' -COMPORT = -'Foreground ("EQUATIONS*CONVECTION") IS VALEUR (brown)' -NIVEAU = 2 -AIDE = 'Prise en compte ou non des termes de convection. -En cas de reponse positive; -on peut encore supprimer certains termes de convection avec -les mots-cles CONVECTION DE ...' -AIDE1 = 'Are the advection terms taken into account or not? -If YES, some advection terms can still be deleted using the keywords --ADVECTION OF ..-' - -NOM = 'CONVECTION DE U ET V' -NOM1 = 'ADVECTION OF U AND V' -TYPE = LOGIQUE -INDEX = 7 -MNEMO = 'CONVV(1)' -TAILLE = 0 -DEFAUT = OUI -DEFAUT1 = YES -RUBRIQUE = 'EQUATIONS';'CONVECTION' -RUBRIQUE1 = 'EQUATIONS';'ADVECTION' -NIVEAU = 2 -AIDE = 'Prise en compte ou non de la convection de U et V.' -AIDE1= 'The advection of U and V is taken into account or ignored.' - -NOM = 'CONVECTION DE H' -NOM1 = 'ADVECTION OF H' -TYPE = LOGIQUE -INDEX = 8 -MNEMO = 'CONVV(2)' -TAILLE = 0 -DEFAUT = OUI -DEFAUT1 = YES -RUBRIQUE = 'EQUATIONS';'CONVECTION' -RUBRIQUE1 = 'EQUATIONS';'ADVECTION' -NIVEAU = 2 -AIDE = 'Prise en compte ou non de la convection de H. -Il s''agit en fait dans la version 2.0 de la convection de C' -AIDE1 = 'The advection of H is taken into account or ignored. -Actually, in version 2.0, the matter is about C advection.' - -NOM = 'CONVECTION DES TRACEURS' -NOM1 = 'ADVECTION OF TRACERS' -TYPE = LOGIQUE -INDEX = 9 -MNEMO = 'CONVV(3)' -TAILLE = 0 -DEFAUT = OUI -DEFAUT1 = YES -RUBRIQUE = 'EQUATIONS';'CONVECTION' -RUBRIQUE1 = 'EQUATIONS';'ADVECTION' -NIVEAU = 2 -AIDE = 'Prise en compte ou non de la convection du traceur passif.' -AIDE1 = 'The advection of the passive tracer is taken into account -or ignored.' - -NOM = 'CONVECTION DE K ET EPSILON' -NOM1 = 'ADVECTION OF K AND EPSILON' -TYPE = LOGIQUE -INDEX = 10 -MNEMO = 'CONVV(4)' -TAILLE = 0 -DEFAUT = OUI -DEFAUT1 = YES -RUBRIQUE = 'EQUATIONS';'MODELE DE TURBULENCE';'MODELE K-EPSILON' -RUBRIQUE1 = 'EQUATIONS';'TURBULENCE MODEL';'K-EPSILON MODEL' -NIVEAU = 2 -AIDE = 'Prise en compte ou non de la convection de k et epsilon.' -AIDE1 ='The k and epsilon advection is taken into account or ignored.' - -NOM = 'PROPAGATION' -NOM1 = 'PROPAGATION' -TYPE = LOGIQUE -INDEX = 12 -MNEMO = 'PROPA' -TAILLE = 0 -DEFAUT = OUI -DEFAUT1 = YES -RUBRIQUE = 'EQUATIONS';'PROPAGATION' -RUBRIQUE1 = 'EQUATIONS';'PROPAGATION' -NIVEAU = 2 -AIDE = 'Prise en compte ou non de la propagation de la vitesse et de la -hauteur d''eau. -La diffusion etant contenue dans cette etape sera supprimee aussi.' -AIDE1 = 'Determines whether the propagation step is taken into account -or not. -The diffusion being included in that step will be deleted as well.' - -NOM = 'CORIOLIS' -NOM1 = CORIOLIS -TYPE = LOGIQUE -INDEX = 13 -MNEMO = 'CORIOL' -TAILLE = 0 -DEFAUT = NON -DEFAUT1 = NO -RUBRIQUE = 'EQUATIONS';'CORIOLIS' -RUBRIQUE1 = 'EQUATIONS';'CORIOLIS' -COMPORT = -'Foreground ("EQUATIONS*CORIOLIS") IS VALEUR (brown)' -NIVEAU = 1 -AIDE = 'Prise en compte ou non de la force de Coriolis.' -AIDE1 = 'The Coriolis force is taken into account or ignored.' - -NOM = 'INFORMATIONS SUR LE SOLVEUR' -NOM1 = 'INFORMATION ABOUT SOLVER' -TYPE = LOGIQUE -INDEX = 15 -MNEMO = 'INFOGR' -TAILLE = 0 -DEFAUT = OUI -DEFAUT1 = YES -RUBRIQUE = 'ENTREES-SORTIES, GRAPHIQUES ET LISTING' -RUBRIQUE1 = 'INPUT-OUTPUT, GRAPHICS AND LISTING' -NIVEAU = 2 -AIDE = 'Donne a chaque pas de temps le nombre d''iterations necessaires -a la convergence du solveur de l''etape de propagation.' -AIDE1 = 'if YES, prints the number of iterations that have been necessar -to get the solution of the linear system.' - -NOM = 'BILAN DE MASSE' -NOM1 = 'MASS-BALANCE' -TYPE = LOGIQUE -INDEX = 16 -MNEMO = 'BILMAS' -TAILLE = 0 -DEFAUT = NON -DEFAUT1 = NO -RUBRIQUE = 'ENTREES-SORTIES, GRAPHIQUES ET LISTING' -RUBRIQUE1 = 'INPUT-OUTPUT, GRAPHICS AND LISTING' -NIVEAU = 1 -AIDE = 'Determine si l''on effectue ou non le bilan de masse -sur le domaine. -Cette procedure calcule a chaque pas de temps : - - les flux aux entrees et sorties du domaine; - - le flux global a travers l''ensemble des parois du domaine (liquides -ou solides) -- l''erreur relative sur la masse pour ce pas de temps. -En fin de listing, on trouve l''erreur relative sur la masse pour -l''ensemble du calcul. -Il ne s''agit que d''un calcul indicatif car il n''existe pas -d''expression compatible du debit en formulation c,u,v.' -AIDE1 = 'Determines whether a check of the mass-balance over -the domain is mader or not. -This procedures computes the following at each time step: -the domain inflows and outflows, -the overall flow across all the boundaries, -the relative error in the mass for that time step. -The relative error in the mass over the whole computation can be found -at the end of the listing.' - -NOM = 'CLIPPING DE H' -NOM1 = 'H CLIPPING' -TYPE = LOGIQUE -INDEX = 17 -MNEMO = 'CLIPH' -TAILLE = 0 -DEFAUT = NON -DEFAUT1 = NO -RUBRIQUE = 'PARAMETRES NUMERIQUES, VITESSE-CELERITE-HAUTEUR' -RUBRIQUE1 = 'NUMERICAL PARAMETERS, VELOCITY-CELERITY-HIGHT' -NIVEAU = 2 -AIDE = 'Determine si l''on desire ou non limiter par valeur inferieure -la hauteur d''eau H (dans le cas des bancs decouvrants par exemple).' -AIDE1 = 'Determines whether limiting the water depth H by a lower value -desirable or not. (for instance in the case of tidal flats) -This key-word may have an influence on mass conservation since -the truncation of depth is equivalent to adding mass.' - -NOM = 'COORDONNEES SPHERIQUES' -NOM1 = 'SPHERICAL COORDINATES' -TYPE = LOGIQUE -INDEX = 18 -MNEMO = 'SPHERI' -TAILLE = 0 -DEFAUT = NON -DEFAUT1 = NO -RUBRIQUE = 'EQUATIONS';'COORDONNEES SPHERIQUES' -RUBRIQUE1 = 'EQUATIONS';'SPHERICAL COORDINATES' -COMPORT = -'Foreground ("EQUATIONS*COORDONNEES SPHERIQUES") IS VALEUR (brown)' -NIVEAU = 1 -AIDE = 'Choix des coordonnees spheriques pour la realisation du calcul -( pour les grands domaines de calcul). -Attention : cette option est etroitement liee au maillage qui doit avoir -ete saisi sur une carte marine en projection de Mercator. -Il faut de plus relever sur la carte la LATITUDE DU POINT ORIGINE -(autre mot-cle) qui correspond dans le maillage a l''ordonnee y = 0.' -AIDE1 = 'Selection of spherical coordinates to perform the computation -(for large computation domains). -Warning: this option is closely related to the mesh that should have -been entered onto a nautical chart drawn as per Mercator projection -The LATITUDE OF ORIGIN POINT (another keyword), which corresponds to -ordinate y=0 in the mesh, must moreover be given.' - -NOM = 'PROPAGATION LINEARISEE' -NOM1 = 'LINEARIZED PROPAGATION' -TYPE = LOGIQUE -INDEX = 20 -MNEMO = 'PROLIN' -TAILLE = 0 -DEFAUT = NON -DEFAUT1 = NO -RUBRIQUE = 'EQUATIONS';'PROPAGATION' -RUBRIQUE1 = 'EQUATIONS';'PROPAGATION' -NIVEAU = 3 -AIDE = 'Permet de lineariser l''etape de propagation; -par exemple lors de la realisation de cas tests pour lesquels on dispose -d''une solution analytique dans le cas linearise.' -AIDE1 = 'Provided for linearizing the propagation step, e.g. when -performing test-cases for which an analytical solution in the linearized -case is available.' - -NOM = 'VALIDATION' -NOM1 = 'VALIDATION' -TYPE = LOGIQUE -INDEX = 21 -MNEMO = 'VALID' -TAILLE = 0 -DEFAUT = NON -DEFAUT1 = NO -RUBRIQUE = 'ENTREES-SORTIES, GENERALITES';'CALCUL' -RUBRIQUE1 = 'INPUT-OUTPUT, INFORMATION';'COMPUTATIONAL INFORMATION' -NIVEAU = 1 -AIDE = 'Option utilisee principalement pour le dossier de validation. Le -fichier des resultats du calcul precedent est alors considere comme une -reference a laquelle on va comparer le calcul. La comparaison -est effectuee par le sous-programme VALIDA qui peut etre une comparaison -avec une solution exacte par exemple.' -AIDE1 = 'This option is primarily used for the validation documents. -The PREVIOUS COMPUTATION FILE is then considered as a -reference which the computation is going to be compared with. -The comparison is made by the subroutine VALIDA, which can be -modified as to -so as to include, for example,a comparison with an exact solution.' - -NOM = 'INFORMATIONS SUR LE MODELE K-EPSILON' -NOM1 = 'INFORMATION ABOUT K-EPSILON MODEL' -TYPE = LOGIQUE -INDEX = 22 -MNEMO = 'INFOKE' -TAILLE = 0 -DEFAUT = OUI -DEFAUT1 = YES -RUBRIQUE = 'PARAMETRES NUMERIQUES, MODELE K-EPSILON' -RUBRIQUE1 = 'NUMERICAL PARAMETERS, K-EPSILON MODEL' -NIVEAU = 2 -AIDE = 'Donne le nombre d''iterations du solveur de l''etape de -diffusion et termes sources du modele k-epsilon.' -AIDE1 = 'Gives the number of iterations of the solver in the diffusion -and source terms step of the k-epsilon model.' - -NOM = 'BANCS DECOUVRANTS' -NOM1 = 'TIDAL FLATS' -TYPE = LOGIQUE -INDEX = 24 -MNEMO = 'BANDEC' -TAILLE = 0 -DEFAUT = OUI -DEFAUT1 = YES -RUBRIQUE = 'PARAMETRES NUMERIQUES';'GENERAL' -RUBRIQUE1 = 'NUMERICAL PARAMETERS';'GENERAL' -NIVEAU = 1 -AIDE = 'permet de supprimer les tests sur les bancs decouvrants, dans -les cas ou l''on est certain qu''il n''y en aura pas. -En cas de doute : oui' -AIDE1 = 'When no, the specific treatments for tidal flats are by-passed. -This spares time, but of course you must be sure that you have no -tidal flats' - -NOM = 'ARRET SI UN ETAT PERMANENT EST ATTEINT' -NOM1 = 'STOP IF A STEADY STATE IS REACHED' -TYPE = LOGIQUE -INDEX = 25 -MNEMO = 'STOPER' -TAILLE = 0 -DEFAUT = NON -DEFAUT1 = NO -RUBRIQUE = 'PARAMETRES NUMERIQUES';'GENERAL' -RUBRIQUE1 = 'NUMERICAL PARAMETERS';'GENERAL' -NIVEAU = 2 -AIDE = 'A UTILISER AVEC LE MOT-CLE : CRITERES D''ARRET' -AIDE1 = 'TO BE USED WITH THE KEY-WORD: STOP CRITERIA' - -NOM = 'ELEMENTS MASQUES PAR L''UTILISATEUR' -NOM1 = 'ELEMENTS MASKED BY USER' -TYPE = LOGIQUE -INDEX = 26 -MNEMO = 'MSKUSE' -TAILLE = 0 -DEFAUT = NON -DEFAUT1 = NO -RUBRIQUE = 'PARAMETRES NUMERIQUES';'GENERAL' -RUBRIQUE1 = 'NUMERICAL PARAMETERS';'GENERAL' -NIVEAU = 2 -AIDE = 'SI OUI REMPLIR LE SOUS-PROGRAMME MASKOB' -AIDE1 = 'IF YES REWRITE SUBROUTINE MASKOB' - -NOM = 'EFFETS DE DENSITE' -NOM1 = 'DENSITY EFFECTS' -TYPE = LOGIQUE -INDEX = 27 -MNEMO = 'ROVAR' -TAILLE = 0 -DEFAUT = NON -DEFAUT1 = NO -RUBRIQUE = 'PARAMETRES NUMERIQUES';'GENERAL' -RUBRIQUE1 = 'NUMERICAL PARAMETERS';'GENERAL' -NIVEAU = 1 -AIDE = 'PRISE EN COMPTE DU GRADIENT HORIZONTAL DE DENSITE - LE TRACEUR EST ALORS LA SALINITE' -AIDE1 = 'THE HORIZONTAL GRADIENT OF DENSITY IS TAKEN INTO ACCOUNT - THE TRACER IS THEN THE SALINITY' - -NOM = 'OPTION DE TRAITEMENT DES BANCS DECOUVRANTS' -NOM1 = 'OPTION FOR THE TREATMENT OF TIDAL FLATS' -TYPE = INTEGER -INDEX = 35 -MNEMO = 'OPTBAN' -TAILLE = 0 -DEFAUT = 1 -DEFAUT1 = 1 -RUBRIQUE = 'PARAMETRES NUMERIQUES';'GENERAL' -RUBRIQUE1 = 'NUMERICAL PARAMETERS';'GENERAL' -NIVEAU = 1 -AIDE = 'Utilise si BANCS DECOUVRANTS est vrai -1 : EQUATIONS RESOLUES PARTOUT AVEC CORRECTION SUR LES BANCS DECOUVRANTS -2 : GEL DES ELEMENTS DECOUVRANTS -3 : COMME 1 MAIS AVEC POROSITE (METHODE DEFINA)' -AIDE1 = 'Used if TIDAL FLATS is true -1 : EQUATIONS SOLVED EVERYWHERE WITH CORRECTION ON TIDAL FLATS -2 : DRY ELEMENTS FROZEN -3 : LIKE 1 BUT WITH POROSITY (DEFINA METHOD)' - -NOM = 'LONGUEUR DU VECTEUR' -NOM1 = 'VECTOR LENGTH' -TYPE = INTEGER -INDEX = 36 -MNEMO = 'LVMAC' -TAILLE = 0 -DEFAUT = 1 -DEFAUT1 = 1 -RUBRIQUE = 'PARAMETRES NUMERIQUES';'GENERAL' -RUBRIQUE1 = 'NUMERICAL PARAMETERS';'GENERAL' -NIVEAU = 3 -AIDE = 'LONGUEUR DU VECTEUR POUR LES MACHINES VECTORIELLES' -AIDE1 = 'VECTOR LENGTH ON VECTOR MACHINES' - -NOM = 'OPTION DE SUPG' -NOM1 = 'SUPG OPTION' -TYPE = INTEGER -INDEX = 37 -MNEMO = 'OPTSUP' -TAILLE = 4 -DEFAUT = 2;2;2;2 -DEFAUT1 = 2;2;2;2 -RUBRIQUE = 'PARAMETRES NUMERIQUES';'GENERAL' -RUBRIQUE1 = 'NUMERICAL PARAMETERS';'GENERAL' -NIVEAU = 1 -AIDE = '0:pas de decentrement SUPG 1:SUPG classique 2:SUPG modifiee -ces coefficients sont respectivement appliques a -1) U et V 2) H 3) T 4) K ET EPSILON ' -AIDE1 ='0:no upwinding 1: classical SUPG 2:modified SUPG -These coefficients are applied respectively to -1) U et V 2) H 3) T 4) K and EPSILON ' - -NOM = 'ORDRE DU TIR INITIAL POUR U' -NOM1 = 'INITIAL GUESS FOR U' -TYPE = INTEGER -INDEX = 38 -MNEMO = 'IORDRU' -TAILLE = 0 -DEFAUT = 1 -DEFAUT1 = 1 -CHOIX = '0=zero' ; '1=precedent'; '2=extrapolation' -CHOIX1 = '0=zero' ; '1=previous'; '2=extrapolation' -RUBRIQUE = 'PARAMETRES NUMERIQUES, VITESSE-CELERITE-HAUTEUR' -RUBRIQUE1 = 'NUMERICAL PARAMETERS, VELOCITY-CELERITY-HIGHT' -NIVEAU = 2 -AIDE = 'Tir initial du solveur de l''etape de propagation. -Offre la possibilite de modifier la valeur initiale de U, a chaque -iteration, dans l''etape de propagation en utilisant les valeurs -finales de cette variable aux pas de temps precedents. Ceci peut -permettre d''accelerer la vitesse de convergence lors de la resolution -du systeme. Trois possibilites sont offertes : - 0 : U = 0 - 1 : U = U(n) - 2 : U = 2 U(n)- U(n-1) (extrapolation)' -AIDE1 = 'Initial guess for the solver in the propagation step. -Makes it possible to modify the initial value of U, upon each -iteration in the propagation step, by using the ultimate values this -variable had in the earlier time steps. Thus, the convergence can be -speeded up when the system is being solved. 3 options are available: - 0 : U = 0 - 1 : U = U(n) - 2 : U = 2 U(n)- U(n-1) (extrapolation)' - -NOM = 'ENREGISTREMENT POUR SUITE DE CALCUL' -NOM1 = 'RECORD NUMBER FOR RESTART' -TYPE = ENTIER -INDEX = 39 -MNEMO = 'START_RECORD' -TAILLE = 0 -DEFAUT = 0 -DEFAUT1 = 0 -RUBRIQUE = 'PARAMETRES NUMERIQUES';'GENERAL' -RUBRIQUE1 = 'NUMERICAL PARAMETERS';'GENERAL' -NIVEAU = 1 -AIDE = 'En cas de suite de calcul, numero de l''enregistrement -de depart dans le fichier du calcul precedent. 0 signifie -qu''on prend le dernier enregistrement' -AIDE1 ='In case of COMPUTATION CONTINUED, record number to -start from in the PREVIOUS COMPUTATION FILE' - -NOM = 'MASSE VOLUMIQUE DE L''EAU' -NOM1 = 'WATER DENSITY' -TYPE = REEL -INDEX = 27 -MNEMO = 'ROEAU' -TAILLE = 0 -DEFAUT = 1000. -DEFAUT1 = 1000. -RUBRIQUE = 'CONSTANTES PHYSIQUES' -RUBRIQUE1 = 'PHYSICAL CONSTANTS' -NIVEAU = 1 -AIDE = 'Fixe la valeur de la masse volumique de l''eau.' -AIDE1 = 'set the value of water density' - -NOM = 'LATITUDE DU POINT ORIGINE' -NOM1 = 'LATITUDE OF ORIGIN POINT' -TYPE = REEL -INDEX = 28 -MNEMO = 'LAMBD0' -TAILLE = 0 -DEFAUT = 48. -DEFAUT1 = 48. -RUBRIQUE = 'CONSTANTES PHYSIQUES' -RUBRIQUE1 = 'PHYSICAL CONSTANTS' -NIVEAU = 1 -AIDE = 'Determine l''origine utilisee pour le calcul de latitudes -lorsque l''on effectue un calcul en coordonnees spheriques.' -AIDE1 = 'Determines the origin used for computing latitudes when -a computation is made in spherical coordinates. -this latitude is in particular used to compute the Coriolis force. -In cartesian coordinates, Coriolis coefficient is considered constant.' - -NOM = 'TEMPERATURE MOYENNE' -NOM1 = 'MEAN TEMPERATURE' -TYPE = REEL -INDEX = 42 -MNEMO = 'TREF' -CONTROLE = 0.; 100. -TAILLE = 0 -DEFAUT = 20. -DEFAUT1= 20. -RUBRIQUE = 'CONSTANTES PHYSIQUES' -RUBRIQUE1 = 'PHYSICAL CONSTANTS' -NIVEAU = 1 -AIDE = 'TEMPERATURE DE REFERENCE POUR LE CALCUL DES EFFETS DE DENSITE - A UTILISER AVEC LE MOT-CLE "EFFETS DE DENSITE"' -AIDE1 = 'REFERENCE TEMPERATURE FOR DENSITY EFFECTS - TO BE USED WITH THE KEY-WORD "DENSITY EFFECTS"' - -NOM = 'ACCELERATION DE LA PESANTEUR' -NOM1 = 'GRAVITY ACCELERATION' -TYPE = REEL -INDEX = 2 -MNEMO = 'GRAV' -TAILLE = 0 -DEFAUT = 9.81 -DEFAUT1 = 9.81 -RUBRIQUE = 'CONSTANTES PHYSIQUES' -RUBRIQUE1 = 'PHYSICAL CONSTANTS' -COMPORT = -'Foreground ("CONSTANTES PHYSIQUES") IS VALEUR (yellow)' -NIVEAU = 1 -AIDE = 'Fixe la valeur de l''acceleration de la pesanteur.' -AIDE1 = 'Set the value of the acceleration due to gravity.' - -NOM = 'COEFFICIENT DE CORIOLIS' -NOM1 = 'CORIOLIS COEFFICIENT' -TYPE = REEL -INDEX = 5 -MNEMO = 'FCOR' -TAILLE = 0 -DEFAUT = 0. -DEFAUT1 = 0. -RUBRIQUE = 'CONSTANTES PHYSIQUES' -RUBRIQUE1 = 'PHYSICAL CONSTANTS' -NIVEAU = 1 -AIDE = 'Fixe la valeur du coefficient de la force de Coriolis. -Celui-ci doit etre calcule en fonction de la latitude l par la formule - FCOR = 2w sin(l) , w etant la vitesse de rotation de la terre. - w = 7.27 10-5 rad/s -Les composantes de la force de Coriolis sont alors : - FU = FCOR x V - FV = - FCOR x U' -AIDE1 = 'Sets the value of the Coriolis force coefficient, in cartesian -coordinates. -This coefficient, denoted FCOR in the code, should be equal to -2 w sin(l)d where w denotes the earth angular speed of rotation -and l the latitude. w = 7.27 10-5 rad/sec -The Coriolis force components are then: -FU = FCOR x V, -FV = -FCOR x U -In spherical coordinates, the latitudes are known' -/ -/ -/ -/ -/ NOUVEAUTES 3.1 -/ -/ -/ -/ -NOM = 'DISCRETISATIONS EN ESPACE' -NOM1 = 'DISCRETIZATIONS IN SPACE' -TYPE = ENTIER -INDEX = 16 -MNEMO = 'DISCRE' -TAILLE = 4 -DEFAUT = 11;11;11;11 -DEFAUT1 = 11;11;11;11 -RUBRIQUE = 'PARAMETRES NUMERIQUES';'GENERAL' -RUBRIQUE1 = 'NUMERICAL PARAMETERS';'GENERAL' -NIVEAU = 13 -AIDE = 'Choix de la discretisation pour chaque variable -ces coefficients sont respectivement appliques a -1) U et V 2) H 3) T 4) K ET EPSILON (NON PROGRAMME) -11 : lineaire -12 : quasi-bulle -13 : quadratique' -AIDE1 = 'Choice of space discretisation for every variable -These coefficients are applied respectively to -1) U and V 2) H 3) T 4) K and EPSILON (NOT IMPLEMENTED) -11: linear -12: quasi-bubble -13: quadratic' - -NOM = 'STOCKAGE DES MATRICES' -NOM1 = 'MATRIX STORAGE' -TYPE = ENTIER -INDEX = 40 -MNEMO = 'OPTASS' -TAILLE = 0 -DEFAUT = 3 -DEFAUT1 = 3 -CHOIX = '1="EBE classique"'; -'3="Stockage par segments"' -CHOIX1 = '1="classical EBE"'; -'3="Edge-based storage"' -RUBRIQUE = 'PARAMETRES NUMERIQUES';'GENERAL' -RUBRIQUE1 = 'NUMERICAL PARAMETERS';'GENERAL' -NIVEAU = 1 -AIDE = '1 : EBE classique 3 : Stockage par segments' -AIDE1 = '1 : classical EBE 3 : Edge-based storage' - -NOM = 'COEFFICIENTS ADIMENSIONNELS DE DISPERSION' -NOM1 = 'NON-DIMENSIONAL DISPERSION COEFFICIENTS' -TYPE = REEL -INDEX = 47 -MNEMO = 'ELDER' -CONTROLE = 0 ; 10 -TAILLE = 2 -DEFAUT = 6. ; 0.6 -DEFAUT1= 6. ; 0.6 -RUBRIQUE = 'PARAMETRES NUMERIQUES';'GENERAL' -RUBRIQUE1 = 'NUMERICAL PARAMETERS';'GENERAL' -NIVEAU = 2 -AIDE = 'coefficients longitudinal et transversal dans la formule de -Elder. Utilises uniquement avec le modele de turbulence 2' -AIDE1 = 'Longitudinal and transversal coefficients in elder s formula. - Used only with turbulence model number 2' - -NOM = 'DICTIONNAIRE' -NOM1 = 'DICTIONARY' -TYPE = CARACTERE -INDEX = 100 -MNEMO = '' -SUBMIT = 'INUTILE;T2DDICO;OBLIG;ASC;LIT;DICO' -DEFAUT = 'telemac2d.dico' -DEFAUT1 = 'telemac2d.dico' -RUBRIQUE = 'ENTREES-SORTIES, GENERALITES';'ENVIRONNEMENT' -RUBRIQUE1 = 'INPUT-OUTPUT, INFORMATION';'COMPUTATION ENVIRONMENT' -NIVEAU = -3 -AIDE ='Dictionnaire des mots cles.' -AIDE1 ='Key word dictionary.' - -NOM = 'DATE DE L''ORIGINE DES TEMPS' -NOM1 = 'ORIGINAL DATE OF TIME' -TYPE = INTEGER -INDEX = 41 -MNEMO = 'MARDAT' -TAILLE = 3 -DEFAUT = 1900;1;1 -DEFAUT1 = 1900;1;1 -RUBRIQUE = 'PARAMETRES NUMERIQUES';'GENERAL' -RUBRIQUE1 = 'NUMERICAL PARAMETERS';'GENERAL' -NIVEAU = 1 -AIDE = 'Permet de fixer la date d''origine des temps du modele lors -de la prise en compte de la force generatrice de la maree.' -AIDE1 ='Give the date of the time origin of the model when taking into -account the tide generating force.' - -NOM = 'HEURE DE L''ORIGINE DES TEMPS' -NOM1 = 'ORIGINAL HOUR OF TIME' -TYPE = INTEGER -INDEX = 42 -MNEMO = 'MARTIM' -TAILLE = 3 -DEFAUT = 0;0;0 -DEFAUT1 = 0;0;0 -RUBRIQUE = 'PARAMETRES NUMERIQUES';'GENERAL' -RUBRIQUE1 = 'NUMERICAL PARAMETERS';'GENERAL' -NIVEAU = 1 -AIDE = 'Permet de fixer l''heure d''origine des temps du modele lors -de la prise en compte de la force generatrice de la maree.' -AIDE1 ='Give the time of the time origin of the model when taking into -account of the tide generator force.' - -NOM = 'LONGITUDE DU POINT ORIGINE' -NOM1 = 'LONGITUDE OF ORIGIN POINT' -TYPE = REEL -INDEX = 48 -MNEMO = 'PHI0' -TAILLE = 0 -DEFAUT = 0. -DEFAUT1= 0. -RUBRIQUE = 'CONSTANTES PHYSIQUES' -RUBRIQUE1 = 'PHYSICAL CONSTANTS' -NIVEAU = 2 -AIDE = 'Fixe la valeur de la longitude du point origine du modele, -lors de l''utilisation de la force generatrice de la maree.' -AIDE1 = 'Give the value of the longitude of the origin point -of the model, when taking into account of the tide generator force.' - -NOM = 'FORCE GENERATRICE DE LA MAREE' -NOM1 = 'TIDE GENERATING FORCE' -TYPE = LOGIQUE -INDEX = 28 -MNEMO = 'MAREE' -TAILLE = 0 -DEFAUT = NON -DEFAUT1 = NO -RUBRIQUE = 'PARAMETRES NUMERIQUES';'GENERAL' -RUBRIQUE1 = 'NUMERICAL PARAMETERS';'GENERAL' -NIVEAU = 1 -AIDE = 'Active la prise en compte de la force generatrice de la maree' -AIDE1 = 'The tide generating force is taken into account. ' - -NOM = 'MASS-LUMPING SUR LES TRACEURS' -NOM1 = 'MASS-LUMPING ON TRACERS' -TYPE = REEL -INDEX = 49 -MNEMO = 'AGGLOT' -TAILLE = 0 -DEFAUT = 0. -DEFAUT1 = 0. -RUBRIQUE = 'EQUATIONS';'TRACEUR';'OPTIONS TRACEUR' -RUBRIQUE1 = 'EQUATIONS';'TRACER';'TRACER OPTIONS' -NIVEAU = 2 -AIDE = 'Fixe le taux de mass-lumping effectue sur le traceur.' -AIDE1 = 'Sets the amount of mass-lumping that is performed on - the tracer.' - -NOM = 'CORRECTION DE CONTINUITE' -NOM1 = 'CONTINUITY CORRECTION' -TYPE = LOGIQUE -INDEX = 29 -MNEMO = 'CORCON' -TAILLE = 0 -DEFAUT = NON -DEFAUT1 = NO -RUBRIQUE = 'PARAMETRES NUMERIQUES';'GENERAL' -RUBRIQUE1 = 'NUMERICAL PARAMETERS';'GENERAL' -NIVEAU = 2 -AIDE = 'Corrige les vitesses sur les points avec hauteur imposee ou -l''equation de continuite n''a pas ete resolue' -AIDE1 = 'Correction of the velocities on points with a prescribed -elevation, where the continuity equation has not been solved' - -/ NOUVEAUTES 3.2 - -NOM = 'REMISE A ZERO DU TEMPS' -NOM1 = 'INITIAL TIME SET TO ZERO' -TYPE = LOGIQUE -INDEX = 30 -MNEMO = 'RAZTIM' -TAILLE = 0 -DEFAUT = NON -DEFAUT1 = NO -RUBRIQUE = 'PARAMETRES NUMERIQUES';'GENERAL' -RUBRIQUE1 = 'NUMERICAL PARAMETERS';'GENERAL' -NIVEAU = 2 -AIDE = 'Remet le temps a zero en cas de suite de calcul' -AIDE1 = 'Initial time set to zero in case of restart' - -NOM = 'PRODUIT MATRICE-VECTEUR' -NOM1 = 'MATRIX-VECTOR PRODUCT' -TYPE = ENTIER -INDEX = 43 -MNEMO = 'PRODUC' -TAILLE = 0 -DEFAUT = 1 -DEFAUT1 = 1 -RUBRIQUE = 'PARAMETRES NUMERIQUES';'GENERAL' -RUBRIQUE1 = 'NUMERICAL PARAMETERS';'GENERAL' -NIVEAU = 1 -AIDE = '1 : classique 2 : frontal -attention, avec 2, il faut une numerotation speciale des points' -AIDE1 = '1 : classic 2 : frontal -beware, with option 2, a special numbering of points is required' - -NOM = 'SECTIONS DE CONTROLE' -NOM1 = 'CONTROL SECTIONS' -TYPE = INTEGER -INDEX = 44 -MNEMO = 'CTRLSC' -TAILLE = 2 -RUBRIQUE = 'PARAMETRES NUMERIQUES';'GENERAL' -RUBRIQUE1 = 'NUMERICAL PARAMETERS';'GENERAL' -NIVEAU = 1 -AIDE = 'Couples de points (numeros globaux dans le maillage) entre -lesquels les debits instantanes et cumules seront donnes.' -AIDE1 ='Couples of points (global numbers in the mesh) defining sections - where the instantaneous and cumulated discharges will be given' - - - -NOM = 'NOMBRE DE SEUILS' -NOM1 = 'NUMBER OF WEIRS' -TYPE = ENTIER -INDEX = 45 -MNEMO = 'NWEIRS' -CONTROLE = 0; 100 -TAILLE = 0 -DEFAUT = 0 -DEFAUT1 = 0 -RUBRIQUE = 'PARAMETRES NUMERIQUES';'GENERAL' -RUBRIQUE1 = 'NUMERICAL PARAMETERS';'GENERAL' -NIVEAU = 2 -AIDE = 'Nombre de seuils qui seront traites par des conditions aux -limites. Ces seuils doivent etre decrits comme des frontieres du -domaine de calcul, et leurs caracteristiques sont donnees dans le -fichier de donnees des seuils (voir la documentation ecrite)' -AIDE1 = 'Number of weirs that will be treated by boundary conditions. -They must be described as boundaries of the domain and their features -are given in the weir data file (see written documentation)' - -NOM = 'NOMBRE DE SIPHONS' -NOM1 = 'NUMBER OF CULVERTS' -TYPE = ENTIER -INDEX = 46 -MNEMO = 'NSIPH' -CONTROLE = 0; 100 -TAILLE = 0 -DEFAUT = 0 -DEFAUT1 = 0 -RUBRIQUE = 'PARAMETRES NUMERIQUES';'GENERAL' -RUBRIQUE1 = 'NUMERICAL PARAMETERS';'GENERAL' -NIVEAU = 2 -AIDE = 'Nombre de siphons traites comme des termes sources ou -puits. Ces siphons doivent etre decrits comme des sources dans le -fichier cas. Leurs caracteristiques sont donnees dans le -fichier de donnees des siphons (voir la documentation ecrite)' -AIDE1 = 'Number of culverts treated as source terms. -They must be described as sources in the domain and their features -are given in the culvert data file (see written documentation)' - -NOM = 'OPTION POUR LES FRONTIERES LIQUIDES' -NOM1 = 'OPTION FOR LIQUID BOUNDARIES' -TYPE = ENTIER -INDEX = 47 -MNEMO = 'FRTYPE' -CONTROLE = 1;2 -TAILLE = 2 -RUBRIQUE = 'EQUATIONS, CONDITIONS LIMITES' -RUBRIQUE1 = 'EQUATIONS, BOUNDARY CONDITIONS' -NIVEAU = 1 -AIDE = 'On donne 1 entier par frontiere liquide - 1 : conditions aux limites classiques - 2 : methode de Thompson avec calcul de caracteristiques' -AIDE1 = 'One integer per liquid boundary is given - 1 : classical boundary conditions - 2 : Thompson method based on characteristics' - -NOM = 'BIBLIOTHEQUE PVM1' -NOM1 = 'PVM1 LIBRARY' -TYPE = CARACTERE -INDEX = 32 -MNEMO = '' -TAILLE = 0 -/CHOIX= '1="conditions aux limites classiques"'; -/ '2="methode de Thompson avec calcul de caracteristiques"' -/CHOIX1 = '1="classical boundary conditions"'; -/ '2="Thompson method based on characteristics"' -DEFAUT = ' ' -DEFAUT1 = ' ' -CHOIX = '" "="pas de biliotheque"'; -'"$PVM_ROOT/lib/$PVM_ARCH/libpvm3.a"="bibliotheque PVM1"' -CHOIX1 = '" "="no library"'; -'"$PVM_ROOT/lib/$PVM_ARCH/libpvm3.a"="PVM1 library"' -RUBRIQUE = 'ENTREES-SORTIES, GENERALITES';'ENVIRONNEMENT' -RUBRIQUE1 = 'INPUT-OUTPUT, INFORMATION';'COMPUTATION ENVIRONMENT' -NIVEAU = 2 -AIDE = 'Utilise par la procedure de lancement sur station de travail' -AIDE1 = 'Utilise par la procedure de lancement sur station de travail' - - -NOM = 'BIBLIOTHEQUE PVM2' -NOM1 = 'PVM2 LIBRARY' -TYPE = CARACTERE -INDEX = 33 -MNEMO = '' -TAILLE = 0 -DEFAUT = ' ' -DEFAUT1 = ' ' -CHOIX = '" "="pas de biliotheque"'; -'"$PVM_ROOT/lib/$PVM_ARCH/libgpvm3.a"="bibliotheque PVM2"' -CHOIX1 = '" "="no library"'; -'"$PVM_ROOT/lib/$PVM_ARCH/libgpvm3.a"="PVM2 library"' -RUBRIQUE = 'ENTREES-SORTIES, GENERALITES';'ENVIRONNEMENT' -RUBRIQUE1 = 'INPUT-OUTPUT, INFORMATION';'COMPUTATION ENVIRONMENT' -NIVEAU = 2 -AIDE = 'Utilise par la procedure de lancement sur station de travail' -AIDE1 = 'Utilise par la procedure de lancement sur station de travail' - - -NOM = 'NOM DU CRAY' -NOM1 = 'CRAY NAME' -TYPE = CARACTERE -INDEX = 35 -DEFAUT = 'clcraya' -NIVEAU = 1 -RUBRIQUE = 'ENTREES-SORTIES, GENERALITES';'ENVIRONNEMENT' -RUBRIQUE1 = 'INPUT-OUTPUT, INFORMATION';'COMPUTATION ENVIRONMENT' -AIDE = '' -AIDE1 = '' - -/ NOUVEAUTES 4.0 - -NOM = 'PRECONDITIONNEMENT C-U' -NOM1 = 'C-U PRECONDITIONING' -TYPE = LOGIQUE -INDEX = 31 -MNEMO = 'PRECCU' -TAILLE = 0 -DEFAUT = OUI -DEFAUT1 = YES -RUBRIQUE = 'PARAMETRES NUMERIQUES';'GENERAL' -RUBRIQUE1 = 'NUMERICAL PARAMETERS';'GENERAL' -NIVEAU = 2 -AIDE = 'Changement de variable de H en C dans le systeme lineaire final' -AIDE1 = 'Change of variable from H to C in the final linear system' - -NOM = 'PAS DE TEMPS VARIABLE' -NOM1 = 'VARIABLE TIME-STEP' -TYPE = LOGIQUE -INDEX = 32 -MNEMO = 'DTVARI' -TAILLE = 0 -DEFAUT = NON -DEFAUT1 = NO -RUBRIQUE = 'PARAMETRES NUMERIQUES';'GENERAL' -RUBRIQUE1 = 'NUMERICAL PARAMETERS';'GENERAL' -NIVEAU = 2 -AIDE = 'Pas de temps variable pour avoir un nombre de courant souhaite' -AIDE1 = 'Variable time-step to get a given Courant number' - -NOM = 'TRAITEMENT DU SYSTEME LINEAIRE' -NOM1 = 'TREATMENT OF THE LINEAR SYSTEM' -TYPE = ENTIER -INDEX = 48 -MNEMO = 'SOLSYS' -CONTROLE = 1;2 -TAILLE = 0 -DEFAUT = 1 -DEFAUT1 =1 -CHOIX = '1="traitement couple"';'2="Equation d''onde"' -CHOIX1 = '1="coupled"';'2="Wave equation"' -RUBRIQUE = 'PARAMETRES NUMERIQUES';'GENERAL' -RUBRIQUE1 = 'NUMERICAL PARAMETERS';'GENERAL' -NIVEAU = 2 -AIDE = '1 : Traitement couple 2 : equation d onde' -AIDE1 = '1 : Coupled 2 : wave equation' - -NOM = 'NOMBRE DE COURANT SOUHAITE' -NOM1 = 'DESIRED COURANT NUMBER' -TYPE = REEL -INDEX = 50 -MNEMO = 'CFLWTD' -TAILLE = 0 -DEFAUT = 1. -DEFAUT1 = 1. -RUBRIQUE = 'PARAMETRES NUMERIQUES';'DUREE DU CALCUL' -RUBRIQUE1 = 'NUMERICAL PARAMETERS';'DURATION' -NIVEAU = 2 -AIDE = 'Nombre de Courant souhaite en cas de pas de temps variable' -AIDE1 = 'Desired Courant number when VARIABLE TIME-STEP is set to YES' - -NOM = 'PROCESSEURS PARALLELES' -NOM1 = 'PARALLEL PROCESSORS' -TYPE = ENTIER -INDEX = 49 -MNEMO = 'NCSIZE' -CONTROLE = 0;256 -TAILLE = 0 -DEFAUT = 0 -DEFAUT1 = 0 -RUBRIQUE = 'PARAMETRES NUMERIQUES';'GENERAL' -RUBRIQUE1 = 'NUMERICAL PARAMETERS';'GENERAL' -NIVEAU = 2 -AIDE = 'NOMBRE DE PROCESSEURS EN CALCUL PARALLELE -0 : 1 machine, compilation sans bibliotheque de parallelisme -1 : 1 machine, compilation avec bibliotheque de parallelisme -2 : 2 processeurs ou machines en parallele -etc... ' -AIDE1 = 'NUMBER OF PROCESSORS FOR PARALLEL PROCESSING -0 : 1 machine, compiling without parallel library -1 : 1 machine, compiling with a parallel library -2 : 2 processors or machines in parallel -etc....' - -NOM = 'EQUATIONS' -NOM1 = 'EQUATIONS' -TYPE = CARACTERE -INDEX = 36 -MNEMO = 'EQUA' -DEFAUT = 'SAINT-VENANT EF' -DEFAUT1 = 'SAINT-VENANT EF' -CHOIX = '"SAINT-VENANT EF"';'"SAINT-VENANT VF"';'"BOUSSINESQ"' -CHOIX1 = '"SAINT-VENANT EF"';'"SAINT-VENANT VF"';'"BOUSSINESQ"' -NIVEAU = 1 -RUBRIQUE = 'PARAMETRES NUMERIQUES';'GENERAL' -RUBRIQUE1 = 'NUMERICAL PARAMETERS';'GENERAL' -AIDE = 'CHOIX DES EQUATIONS A RESOUDRE : SAINT-VENANT ELEMENTS FINIS, -SAINT-VENANT VOLUMES FINIS OU BOUSSINESQ 20 CARACTERES' -AIDE1 = 'CHOICE OF EQUATIONS TO SOLVE : SAINT-VENANT FINITE ELEMENTS, -SAINT-VENANT FINITE VOLUMES OR BOUSSINESQ 20 CHARACTERS' - -NOM = 'PROFILS DE VITESSE' -NOM1 = 'VELOCITY PROFILES' -TYPE = INTEGER -INDEX = 50 -MNEMO = 'PROVEL' -TAILLE = 2 -CHOIX='1="Profil normal constant"';'2="u et v dans le fichier - conlim"';'3="Vitesse normale donnee dans ubor dans le fichier - conlim"';'4="vitesse en racine carree de h"'; -'5="vitesse en racine carree de h, variante"' -CHOIX1='1="constant normal profile"';'2="u and v given in the - conlim file"';'3="normal velocity given in ubor in the conlim - file"';'4="velocity proportional to square root of depth"'; -'5="velocity proportional to square root of depth, variant"' -RUBRIQUE = 'EQUATIONS, CONDITIONS LIMITES' -RUBRIQUE1 = 'EQUATIONS, BOUNDARY CONDITIONS' -NIVEAU = 1 -AIDE = '1:profil normal constant - 2:u et v donnes dans le fichier conditions aux limites - 3:vitesse normale donnee dans ubor dans le fichier conlim - 4:profil en racine de la profondeur - 5:profil en racine de la profondeur, variante' -AIDE1= '1:constant normal profile - 2:u and v given in the boudary conditions file - 3:normal velocity given in ubor in the conlim file - 4:sqrt(depth) profile - 5:sqrt(depth) profile, variant' - -NOM = 'OPTION POUR LA DIFFUSION DES TRACEURS' -NOM1 = 'OPTION FOR THE DIFFUSION OF TRACERS' -TYPE = INTEGER -INDEX = 51 -MNEMO = 'OPDTRA' -TAILLE = 0 -DEFAUT = 1 -DEFAUT1 = 1 -CHOIX = '1="div( nu grad(T) )"'; -'2="1/h div ( h nu grad(T)"' -CHOIX1= '1="div( nu grad(T) )"'; -'2="1/h div ( h nu grad(T)"' -RUBRIQUE = 'EQUATIONS';'TRACEUR';'OPTIONS TRACEUR' -RUBRIQUE1 = 'EQUATIONS';'TRACER';'TRACER OPTIONS' -NIVEAU = 1 -AIDE = '1: Diffusion de la forme div( nu grad(T) ) - 2: Diffusion de la forme 1/h div ( h nu grad(T) )' -AIDE1= '1: Diffusion in the form div( nu grad(T) ) - 2: Diffusion in the form 1/h div ( h nu grad(T) )' - -NOM = 'OPTION POUR LA DIFFUSION DES VITESSES' -NOM1 = 'OPTION FOR THE DIFFUSION OF VELOCITIES' -TYPE = INTEGER -INDEX = 52 -MNEMO = 'OPDVIT' -TAILLE = 0 -DEFAUT = 1 -DEFAUT1 = 1 -CHOIX = '1="div( nu grad(U) )"'; -'2="1/h div ( h nu grad(U)"' -CHOIX1= '1="div( nu grad(U) )"'; -'2="1/h div ( h nu grad(U)"' -RUBRIQUE = 'PARAMETRES NUMERIQUES, VITESSE-CELERITE-HAUTEUR' -RUBRIQUE1 = 'NUMERICAL PARAMETERS, VELOCITY-CELERITY-HIGHT' -NIVEAU = 1 -AIDE = '1: Diffusion de la forme div( nu grad(U) ) - 2: Diffusion de la forme 1/h div ( h nu grad(U) )' -AIDE1= '1: Diffusion in the form div( nu grad(U) ) - 2: Diffusion in the form 1/h div ( h nu grad(U) )' - -NOM = 'TYPE DES SOURCES' -NOM1 = 'TYPE OF SOURCES' -TYPE = ENTIER -INDEX = 53 -MNEMO = 'OPTSOU' -CONTROLE = 1;2 -TAILLE = 0 -DEFAUT = 1 -DEFAUT1 =1 -CHOIX = '1="Normal"';'2="Dirac"' -CHOIX1= '1="Normal"';'2="Dirac"' -RUBRIQUE = 'EQUATIONS, SOURCES' -RUBRIQUE1 = 'EQUATIONS, SOURCE TERMS' -NIVEAU = 2 -AIDE = '1: Source portee par une base elements finis - 2: Source portee par une fonction de Dirac' -AIDE1= '1: Source term multiplied by a finite element basis - 2: Source term multiplied by a Dirac function' - -/ NOUVEAUTES 5.0 - -NOM = 'NOMBRE DE TABLEAUX PRIVES' -NOM1 = 'NUMBER OF PRIVATE ARRAYS' -TYPE = ENTIER -INDEX = 54 -MNEMO = 'NPRIV' -TAILLE = 0 -DEFAUT = 0 -DEFAUT1 = 0 -RUBRIQUE = 'PARAMETRES NUMERIQUES';'GENERAL' -RUBRIQUE1 = 'NUMERICAL PARAMETERS';'GENERAL' -NIVEAU = 1 -AIDE = 'Nombre de tableaux mis a disposition de l utilisateur' -AIDE1 = 'Number of arrays for own user programming' - -NOM = 'LANGUE' -NOM1 = 'LANGUAGE' -TYPE = ENTIER -INDEX = 55 -MNEMO = 'LNG' -TAILLE = 0 -DEFAUT = 1 -DEFAUT1 = 2 -CHOIX = '1="FRANCAIS"';'2="ANGLAIS"' -CHOIX1 = '1="FRANCAIS"';'2="ANGLAIS"' -RUBRIQUE = 'GENERAL' -RUBRIQUE1 = 'GENERAL' -NIVEAU = 1 -AIDE = '1 : FRANCAIS 2 : ANGLAIS' -AIDE1 = '1: FRENCH 2: ENGLISH' - -NOM = 'FICHIER DE REFERENCE' -NOM1 = 'REFERENCE FILE' -TYPE = CARACTERE -INDEX = 37 -MNEMO = 'T2D_FILES(T2DREF)%NAME' -SUBMIT = 'T2DREF-READ-22;T2DREF;FACUL;BIN;LIT;SELAFIN' -DEFAUT = ' ' -DEFAUT1 = ' ' -APPARENCE = 'LISTE IS FICHIER' -RUBRIQUE = 'ENTREES-SORTIES, FICHIERS';'NOMS' -RUBRIQUE1 = 'INPUT-OUTPUT, FILES';'NAMES' -NIVEAU = 1 -AIDE = 'Fichier de resultats de reference pour la validation. Les resultats a placer dans ce fichier seront a -ecrire sur le canal 22.' -AIDE1 = 'Binary-coded result file for validation. The results to be entered into this file shall be written -on channel 22.' - -NOM = 'FICHIER DES FRONTIERES LIQUIDES' -NOM1 = 'LIQUID BOUNDARIES FILE' -TYPE = CARACTERE -INDEX = 38 -MNEMO = 'T2D_FILES(T2DIMP)%NAME' -SUBMIT = 'T2DIMP-READ-12;T2DIMP;FACUL;ASC;LIT;PARAL' -DEFAUT = ' ' -DEFAUT1 = ' ' -APPARENCE = 'LISTE IS FICHIER' -RUBRIQUE = 'ENTREES-SORTIES, FICHIERS';'NOMS' -RUBRIQUE1 = 'INPUT-OUTPUT, FILES';'NAMES' -NIVEAU = 1 -AIDE = 'Fichier de variations en temps des conditions aux limites. -Les donnees de ce fichier seront a lire sur le canal 12.' -AIDE1 = 'Variations in time of boundary conditions. Data of this file are read -on channel 12.' - -NOM = 'COURANTS DE HOULE' -NOM1 = 'WAVE DRIVEN CURRENTS' -TYPE = LOGIQUE -INDEX = 33 -MNEMO = 'COUROU' -TAILLE = 0 -DEFAUT = NON -DEFAUT1 = NO -RUBRIQUE = 'PARAMETRES NUMERIQUES';'GENERAL' -RUBRIQUE1 = 'NUMERICAL PARAMETERS';'GENERAL' -NIVEAU = 1 -AIDE = 'Active la prise en compte des courants de houle' -AIDE1 = 'Wave driven currents are taken into account. ' - -NOM = 'NUMERO DE L''ENREGISTREMENT DANS LE FICHIER DE HOULE' -NOM1 = 'RECORD NUMBER IN WAVE FILE' -TYPE = ENTIER -INDEX = 56 -MNEMO = 'NPTH' -TAILLE = 0 -DEFAUT = 1 -DEFAUT1 = 1 -RUBRIQUE = 'PARAMETRES NUMERIQUES';'GENERAL' -RUBRIQUE1 = 'NUMERICAL PARAMETERS';'GENERAL' -NIVEAU = 1 -AIDE = 'Numero d enregistrement dans le fichier des courants de houle' -AIDE1 = 'Record number to read in the wave driven currents file' - -/ NOUVEAUTES 5.1 - -NOM = 'STRUCTURES VERTICALES' -NOM1 = 'VERTICAL STRUCTURES' -TYPE = LOGIQUE -INDEX = 34 -MNEMO = 'VERTIC' -TAILLE = 0 -DEFAUT = NON -DEFAUT1 = NO -RUBRIQUE = 'PARAMETRES NUMERIQUES';'GENERAL' -RUBRIQUE1 = 'NUMERICAL PARAMETERS';'GENERAL' -NIVEAU = 1 -AIDE = 'Prise en compte de la force de trainee de structures verticales -(il faut alors remplir la subroutine DRAGFO)' -AIDE1 = 'drag forces from vertical structures are taken into account. -(subroutine DRAGFO must then be implemented) ' - -NOM = 'SORTIE DES CONDITIONS INITIALES' -NOM1 = 'OUTPUT OF INITIAL CONDITIONS' -TYPE = LOGIQUE -INDEX = 35 -MNEMO = 'OUTINI' -TAILLE = 0 -DEFAUT = OUI -DEFAUT1 = YES -RUBRIQUE = 'PARAMETRES NUMERIQUES';'GENERAL' -RUBRIQUE1 = 'NUMERICAL PARAMETERS';'GENERAL' -NIVEAU = 1 -AIDE = 'Si OUI, impression des conditions initiales dans les resultats' -AIDE1 = 'If YES, output of initial conditions in the results' - -/ NOUVEAUTES 5.2 - -NOM = 'DOSSIER DE COUPLAGE' -NOM1 = 'COUPLING DIRECTORY' -TYPE = CARACTERE -INDEX = 39 -MNEMO = 'DOSSIER_COUPLAGE' -DEFAUT = ' ' -DEFAUT1 = ' ' -RUBRIQUE = 'ENTREES-SORTIES, FICHIERS';'NOMS' -RUBRIQUE1 = 'INPUT-OUTPUT, FILES';'NAMES' -NIVEAU = 1 -AIDE = 'Nom complet du dossier d echange des fichiers - pour couplage de codes' -AIDE1 = 'Name with full path of the directory where the files will - be exchanged for coupling' - -NOM = 'COUPLAGE AVEC' -NOM1 = 'COUPLING WITH' -TYPE = CARACTERE -INDEX = 40 -MNEMO = 'COUPLING, IN BIEF' -DEFAUT = ' ' -DEFAUT1 = ' ' -CHOIX = '"SISYPHE"';'"TOMAWAC"';'"DELWAQ"' -CHOIX1 = '"SISYPHE"';'"TOMAWAC"';'"DELWAQ"' -RUBRIQUE = 'ENTREES-SORTIES, FICHIERS';'NOMS' -RUBRIQUE1 = 'INPUT-OUTPUT, FILES';'NAMES' -NIVEAU = 1 -AIDE = 'Liste des codes avec lesquels on couple Telemac-2D - SISYPHE : couplage interne avec Sisyphe - TOMAWAC : couplage interne avec Tomawac - DELWAQ : sortie de fichiers de resultats pour Delwaq' -AIDE1 = 'List of codes to be coupled with Telemac-2D - SISYPHE : internal coupling with Sisyphe - TOMAWAC : internal coupling with Tomawac - DELWAQ: will yield results file for Delwaq' - -NOM = 'ESTIMATION DE PARAMETRE' -NOM1 = 'PARAMETER ESTIMATION' -TYPE = CARACTERE -INDEX = 60 -MNEMO = 'ESTIME' -DEFAUT = ' ' -DEFAUT1 = ' ' -CHOIX = '"FROTTEMENT"';'"FROTTEMENT, PERMANENT"' -CHOIX1 = '"FRICTION"';'"FROTTEMENT, STEADY"' -RUBRIQUE = 'ENTREES-SORTIES, FICHIERS';'NOMS' -RUBRIQUE1 = 'INPUT-OUTPUT, FILES';'NAMES' -NIVEAU = 1 -AIDE = 'Liste des parametres a estimer, choix : FROTTEMENT - ou FROTTEMENT, PERMANENT' -AIDE1 = 'List of parameter to be estimated, choice : FRICTION - or FRICTION, STEADY' - -NOM = 'DEFINITION DE ZONES' -NOM1 = 'DEFINITION OF ZONES' -TYPE = LOGIQUE -INDEX = 36 -MNEMO = 'DEFZON' -TAILLE = 0 -DEFAUT = NON -DEFAUT1 = NO -RUBRIQUE = 'PARAMETRES NUMERIQUES';'GENERAL' -RUBRIQUE1 = 'NUMERICAL PARAMETERS';'GENERAL' -NIVEAU = 1 -AIDE = 'Declenche l''appel a def_zones, pour donner - un numero de zone a chaque point' -AIDE1 = 'Triggers the call to def_zones - to give a zone number to every point' - -NOM = 'METHODE D''IDENTIFICATION' -NOM1 = 'IDENTIFICATION METHOD' -TYPE = ENTIER -INDEX = 57 -MNEMO = 'OPTID' -TAILLE = 0 -DEFAUT = 1 -DEFAUT1 = 1 -CHOIX = '0="plan d''experience"'; -'1="gradient simple"'; -'2="gradient conj"'; -'3="interp. de Lagrange"' -CHOIX1 = '0="list of tests"'; -'1="gradient simple"'; -'2="conj gradient"'; -'3="Lagrange interp."' -RUBRIQUE = 'PARAMETRES NUMERIQUES';'GENERAL' -RUBRIQUE1 = 'NUMERICAL PARAMETERS';'GENERAL' -NIVEAU = 1 -AIDE = '0 : plan d''experience 1 : gradient simple - 2 : gradient conj. 3 : interp. de Lagrange' -AIDE1 = '0 : list of tests 1: gradient - 2 : conj. gradient 3 : lagrange interp.' - -NOM = 'PERIODES D''ANALYSE DE FOURIER' -NOM1 = 'FOURIER ANALYSIS PERIODS' -TYPE = REEL -INDEX = 51 -MNEMO = 'PERIAF' -TAILLE = 2 -RUBRIQUE = 'EQUATIONS, SOURCES' -RUBRIQUE1 = 'EQUATIONS, SOURCE TERMS' -NIVEAU = 1 -AIDE = 'Liste des periodes que l''on veut analyser' -AIDE1 = 'List of periods to be analysed' - -NOM = 'LISTE DE POINTS' -NOM1 = 'LIST OF POINTS' -TYPE = INTEGER -INDEX = 58 -MNEMO = 'LIST_PTS' -TAILLE = 2 -RUBRIQUE = 'PARAMETRES NUMERIQUES';'GENERAL' -RUBRIQUE1 = 'NUMERICAL PARAMETERS';'GENERAL' -NIVEAU = 1 -AIDE = 'Liste de points remarquables pour les impressions' -AIDE1= 'List of remarkable points for printouts' - -NOM = 'NOMS DES POINTS' -NOM1 = 'NAMES OF POINTS' -TYPE = CARACTERE -INDEX = 61 -MNEMO = 'NAME_PTS' -TAILLE = 2 -RUBRIQUE = 'PARAMETRES NUMERIQUES';'GENERAL' -RUBRIQUE1 = 'NUMERICAL PARAMETERS';'GENERAL' -NIVEAU = 1 -AIDE = 'Noms des points remarquables pour les impressions' -AIDE1= 'Names of remarkable points for printouts' - -NOM = 'FONCTION COUT' -NOM1 = 'COST FUNCTION' -TYPE = ENTIER -INDEX = 59 -MNEMO = 'OPTCOST' -TAILLE = 0 -DEFAUT = 1 -DEFAUT1 = 1 -RUBRIQUE = 'PARAMETRES NUMERIQUES';'GENERAL' -RUBRIQUE1 = 'NUMERICAL PARAMETERS';'GENERAL' -NIVEAU = 1 -AIDE = '1 : calculee sur h, u , v 2 : calculee avec c, u , v' -AIDE1 = '1: computed with h, u , v 2: computed with c, u , v' - -NOM = 'MAXIMUM D''ITERATIONS POUR L''IDENTIFICATION' -NOM1 = 'MAXIMUM NUMBER OF ITERATIONS FOR IDENTIFICATION' -TYPE = ENTIER -INDEX = 60 -MNEMO = 'MAXEST' -TAILLE = 0 -DEFAUT = 20 -DEFAUT1 = 20 -RUBRIQUE = 'PARAMETRES NUMERIQUES';'GENERAL' -RUBRIQUE1 = 'NUMERICAL PARAMETERS';'GENERAL' -NIVEAU = 1 -AIDE = 'chaque iteration comprend au moins un - calcul direct et un calcul adjoint' -AIDE1 = 'every iteration implies at least a direct and - an adjoint computation' - -NOM = 'PERIODE DE COUPLAGE POUR SISYPHE' -NOM1 = 'COUPLING PERIOD FOR SISYPHE' -TYPE = ENTIER -INDEX = 61 -MNEMO = 'PERCOU' -TAILLE = 0 -DEFAUT = 1 -DEFAUT1 = 1 -RUBRIQUE = 'PARAMETRES NUMERIQUES';'GENERAL' -RUBRIQUE1 = 'NUMERICAL PARAMETERS';'GENERAL' -NIVEAU = 1 -AIDE = 'pour eviter de faire le couplage a chaque pas de temps' -AIDE1 = 'to avoid coupling at every time-step' - -NOM = 'PRECISIONS POUR L''IDENTIFICATION' -NOM1 = 'TOLERANCES FOR IDENTIFICATION' -TYPE = REEL -INDEX = 52 -MNEMO = 'TOLEST' -TAILLE = 4 -DEFAUT = 1.E-3;1.E-3;1.E-3;1.E-4 -DEFAUT1 = 1.E-3;1.E-3;1.E-3;1.E-4 -RUBRIQUE = 'PARAMETRES NUMERIQUES';'GENERAL' -RUBRIQUE1 = 'NUMERICAL PARAMETERS';'GENERAL' -NIVEAU = 1 -AIDE = '4 nombres : precision absolue sur H, U, V, - et precision relative sur la fonction cout' -AIDE1 = '4 numbers: absolute precision on H, U V, - and relative precision on the cost function' -/ -/ NOUVEAUTES 5.3 -/ -NOM = 'SCHEMA EN VOLUMES FINIS' -NOM1 = 'FINITE VOLUME SCHEME' -TYPE = ENTIER -INDEX = 62 -MNEMO = 'OPTVF' -TAILLE = 0 -DEFAUT = 1 -DEFAUT1 = 1 -CHOIX = '0="schema de Roe"'; -'1="schéma cinetique ordre 1"'; -'2="schéma cinetique ordre 2"' ; -'3="schéma Zokagoa ordre 1"'; -'4="schéma Tchamen ordre 1"'; -'5="schéma HLLC ordre 1"'; -'6="schéma WAF ordre 2"' -CHOIX1 = '0="Roe scheme"'; -'1="kinetic order 1"'; -'2="kinetic order 2"'; -'3="Zokagoa scheme order 1"'; -'4="Tchamen scheme order 1"'; -'5="HLLC scheme order 1"'; -'6="WAF scheme order 2"' -RUBRIQUE = 'PARAMETRES NUMERIQUES';'GENERAL' -RUBRIQUE1 = 'NUMERICAL PARAMETERS';'GENERAL' -NIVEAU = 1 -AIDE = '0 : schema de Roe 1 : cinetique ordre 1 2 : cinetique ordre 2 -3 : schema de Zokagoa 4 : schema de Tchamen 5 : HLLC ordre 1 -6 : WAF ordre 2' -AIDE1 = '0: Roe scheme 1: kinetic order 1 2: kinetic order 2 -3 : Zokagoa scheme 4 : Tchamen scheme 5 : HLLC order 1 -6 : WAF order 2' -/ -/ NOUVEAUTES 5.4 -/ -NOM = 'FICHIER DES PARAMETRES DE SISYPHE' -NOM1 = 'SISYPHE STEERING FILE' -TYPE = CARACTERE -INDEX = 62 -MNEMO = 'PAS DE MNEMO' -DEFAUT = ' ' -DEFAUT1 = ' ' -APPARENCE = 'LISTE IS FICHIER' -RUBRIQUE = 'ENTREES-SORTIES, FICHIERS';'NOMS' -RUBRIQUE1 = 'INPUT-OUTPUT, FILES';'NAMES' -NIVEAU = 1 -AIDE = 'Fichier des parametres de Sisyphe en cas de couplage interne' -AIDE1 = 'Sisyphe parameter file in case of internal coupling' -/ -/ NOUVEAUTES 5.5 -/ -NOM = 'DONNEES POUR LE FROTTEMENT' -NOM1 = 'FRICTION DATA' -TYPE = LOGIQUE -INDEX = 37 -MNEMO = 'FRICTB' -DEFAUT = NON -DEFAUT1 = NO -RUBRIQUE = 'CONSTANTES PHYSIQUES' -RUBRIQUE1 = 'PHYSICAL CONSTANTS' -NIVEAU = 1 -AIDE = 'Lois de frottements definies par zone' -AIDE1 = 'Friction law defined by area' - -NOM = 'NOMBRE MAXIMUM DE DOMAINES DE FROTTEMENT' -NOM1 = 'MAXIMUM NUMBER OF FRICTION DOMAINS' -TYPE = INTEGER -INDEX = 63 -MNEMO = 'NZONMX' -DEFAUT = 10 -DEFAUT1 = 10 -RUBRIQUE = 'CONSTANTES PHYSIQUES' -RUBRIQUE1 = 'PHYSICAL CONSTANTS' -NIVEAU = 1 -AIDE = 'nombre maximal de zones pouvant etre definies pour le -frottement. Peut etre augmente si necessaire' -AIDE1 = 'maximal number of zones defined for the friction. -Could be increased if needed' - -NOM = 'FICHIER DE DONNEES POUR LE FROTTEMENT' -NOM1 = 'FRICTION DATA FILE' -TYPE = CARACTERE -INDEX = 63 -MNEMO = 'T2D_FILES(T2DCOF)%NAME' -SUBMIT = 'T2DCOF-READ-35;T2DCOF;FACUL;ASC;LIT;PARAL' -DEFAUT = ' ' -DEFAUT1 = ' ' -APPARENCE = 'LISTE IS FICHIER' -RUBRIQUE = 'ENTREES-SORTIES, FICHIERS';'NOMS' -RUBRIQUE1 = 'INPUT-OUTPUT, FILES';'NAMES' -NIVEAU = 1 -AIDE = 'fichier de donnees pour le frottement' -AIDE1 = 'friction data file' - -NOM = 'VALEUR PAR DEFAUT DU MANNING POUR LA LOI DE COLEBROOK-WHITE' -NOM1 = 'MANNING DEFAULT VALUE FOR COLEBROOK-WHITE LAW' -TYPE = REEL -INDEX = 53 -MNEMO = 'NDEF' -DEFAUT = 0.02 -DEFAUT1 = 0.02 -RUBRIQUE = 'CONSTANTES PHYSIQUES' -RUBRIQUE1 = 'PHYSICAL CONSTANTS' -NIVEAU = 1 -AIDE = 'valeur par defaut du manning pour la loi de frottement de -Colebrook-White (loi numero 7)' -AIDE1 = 'Manning default value for the friction law of Colebrook-White -(law number 7)' - -NOM = 'FROTTEMENT POUR LA VEGETATION NON SUBMERGEE' -NOM1 = 'NON-SUBMERGED VEGETATION FRICTION' -TYPE = LOGIQUE -INDEX = 38 -MNEMO = 'LINDNER' -DEFAUT = NON -DEFAUT1 = NO -RUBRIQUE = 'CONSTANTES PHYSIQUES' -RUBRIQUE1 = 'PHYSICAL CONSTANTS' -NIVEAU = 1 -AIDE = 'calcul du frottement du a la vegetation non submergee' -AIDE1 = 'friction calculation of the non-submerged vegetation' - -NOM = 'DIAMETRE DES ELEMENTS DE FROTTEMENT' -NOM1 = 'DIAMETER OF ROUGHNESS ELEMENTS' -TYPE = REEL -INDEX = 54 -MNEMO = 'DP' -DEFAUT = 0.006 -DEFAUT1 = 0.006 -RUBRIQUE = 'CONSTANTES PHYSIQUES' -RUBRIQUE1 = 'PHYSICAL CONSTANTS' -NIVEAU = 1 -AIDE = 'diametre des elements de frottements' -AIDE1 = 'diameter of roughness element' - -NOM = 'ESPACEMENT DES ELEMENTS DE FROTTEMENT' -NOM1 = 'SPACING OF ROUGHNESS ELEMENTS' -TYPE = REEL -INDEX = 55 -MNEMO = 'SP' -DEFAUT = 0.14 -DEFAUT1 = 0.14 -NIVEAU = 1 -RUBRIQUE = 'CONSTANTES PHYSIQUES' -RUBRIQUE1 = 'PHYSICAL CONSTANTS' -AIDE = 'espacement des elements de frottement' -AIDE1 = 'spacing of rouhness element' - -NOM = 'IMPRESSION DU CUMUL DES FLUX' -NOM1 = 'PRINTING CUMULATED FLOWRATES' -TYPE = LOGIQUE -INDEX = 39 -MNEMO = 'CUMFLO' -TAILLE = 0 -DEFAUT = NON -DEFAUT1 = NO -RUBRIQUE = 'ENTREES-SORTIES, GRAPHIQUES ET LISTING' -RUBRIQUE1 = 'INPUT-OUTPUT, GRAPHICS AND LISTING' -NIVEAU = 1 -AIDE = 'IMPRESSION DU FLUX CUMULE A TRAVERS LES SECTIONS DE CONTROLE' -AIDE1 = 'PRINTING THE CUMULATED FLOWRATES THROUGH CONTROL SECTIONS' - -NOM = 'CALCUL COMPATIBLE DES FLUX' -NOM1 = 'COMPATIBLE COMPUTATION OF FLUXES' -TYPE = LOGIQUE -INDEX = 40 -MNEMO = 'COMFLU' -TAILLE = 0 -DEFAUT = NON -DEFAUT1 = NO -RUBRIQUE = 'PARAMETRES NUMERIQUES' -RUBRIQUE1 = 'NUMERICAL PARAMETERS' -NIVEAU = 1 -AIDE = 'FLUX A TRAVERS LES SECTIONS DE CONTROLE, CALCUL COMPATIBLE -AVEC L''IMPERMEABILITE SOUS FORME FAIBLE' -AIDE1 = 'FLOWRATES THROUGH CONTROL SECTIONS, COMPUTATION COMPATIBLE -WITH THE WEAK FORMULATION OF NO-FLUX BOUNDARY CONDITION' -/ -/ NOUVEAUTES 5.6 -/ -NOM = 'PROFONDEUR LIMITE POUR LE VENT' -NOM1 = 'THRESHOLD DEPTH FOR WIND' -TYPE = REEL -INDEX = 56 -MNEMO = 'HWIND' -DEFAUT = 1. -DEFAUT1 = 1. -NIVEAU = 1 -RUBRIQUE = 'CONSTANTES PHYSIQUES' -RUBRIQUE1 = 'PHYSICAL CONSTANTS' -AIDE = 'Retire la force due au vent dans les petites profondeurs' -AIDE1 = 'Wind is not taken into account for small depths' -/ -NOM = 'SEUIL POUR LES PROFONDEURS NEGATIVES' -NOM1 = 'THRESHOLD FOR NEGATIVE DEPTHS' -TYPE = REEL -INDEX = 57 -MNEMO = 'HNEG' -DEFAUT = 0. -DEFAUT1 = 0. -RUBRIQUE = 'CONSTANTES PHYSIQUES' -RUBRIQUE1 = 'PHYSICAL CONSTANTS' -NIVEAU = 1 -AIDE = 'En dessous du seuil, les hauteurs negatives sont lissees' -AIDE1 = 'Below the threshold the negative depths are smoothed' -/ -/ FOR COMPATIBILITY WITH TELEMAC-3D -/ SEE TREATMENT IN LECDON_TELEMAC2D -/ -NOM = 'PERIODE POUR LES SORTIES LISTING' -NOM1 = 'LISTING PRINTOUT PERIOD' -TYPE = INTEGER -INDEX = 64 -MNEMO = 'LISPRD' -DEFAUT = 1 -DEFAUT1 = 1 -NIVEAU = 1 -RUBRIQUE = 'ENTREES-SORTIES, GRAPHIQUES ET LISTING' -RUBRIQUE1 = 'INPUT-OUTPUT, GRAPHICS AND LISTING' -AIDE = 'Determine la periode en nombre de pas de temps d''impression -des ''VARIABLES A IMPRIMER'' (voir ce mot-cle) Pour la mise au point, -il faut savoir que la sortie des resultats est effectuee -systematiquement sur le fichier de retour d''execution du code -(actuellement accessible par le menu 3.f de SPF sur IBM, et dans -le fichier !CAS.SORTIE sur station de travail)' -AIDE1 = 'Determines, in number of time steps, the printout period of -the VARIABLES TO BE PRINTED -The results are systematically printed out on the listing file -(file CAS.SORTIE at the workstation).' -/ -/ -NOM = 'COORDONNEES DE L''ORIGINE' -NOM1 = 'ORIGIN COORDINATES' -TYPE = ENTIER -INDEX = 65 -MNEMO = 'I_ORIG,J_ORIG' -TAILLE = 2 -DEFAUT = 0;0 -DEFAUT1 = 0;0 -RUBRIQUE = 'ENTREES-SORTIES, GENERALITES';'CONTROLE' -RUBRIQUE1 = 'INPUT-OUTPUT, INFORMATION';'CONTROL' -NIVEAU = 2 -AIDE = 'Valeur en metres, utilise pour eviter les trops grands nombres, transmis -dans le format Selafin mais pas d''autre traitement pour l''instant' -AIDE1 = 'Value in metres, used to avoid large real numbers, -added in Selafin format, but so far no other treatment' -/ -/ NOUVEAUTES 5.7 -/ -NOM = 'PERIODE DE SORTIE POUR DELWAQ' -NOM1 = 'DELWAQ PRINTOUT PERIOD' -TYPE = ENTIER -INDEX = 66 -MNEMO = 'WAQPRD' -TAILLE = 0 -DEFAUT = 1 -DEFAUT1 = 1 -RUBRIQUE = 'ENTREES-SORTIES, GENERALITES';'CONTROLE' -RUBRIQUE1 = 'INPUT-OUTPUT, INFORMATION';'CONTROL' -NIVEAU = 2 -AIDE = 'Periode de sortie des resultats pour Delwaq' -AIDE1 = 'Printout period for Delwaq file' -/ -NOM = 'FICHIER DELWAQ DES VOLUMES' -NOM1 = 'VOLUMES DELWAQ FILE' -TYPE = CARACTERE -INDEX = 64 -MNEMO = 'T2D_FILES(T2DSOU)%NAME' -SUBMIT = 'T2DDL1-WRITE-36;T2DDL1;FACUL;BIN;ECR;DELWAQPTS' -DEFAUT = ' ' -DEFAUT1 = ' ' -NIVEAU = 1 -APPARENCE = 'LISTE IS FICHIER' -RUBRIQUE = 'ENTREES-SORTIES, FICHIERS';'NOMS' -RUBRIQUE1 = 'INPUT-OUTPUT, FILES';'NAMES' -AIDE = 'Fichier de resultats pour le couplage avec Delwaq' -AIDE1 = 'Results file for coupling with Delwaq' -/ -NOM = 'FICHIER DELWAQ DES SURFACES DE FLUX' -NOM1 = 'EXCHANGE AREAS DELWAQ FILE' -TYPE = CARACTERE -INDEX = 65 -MNEMO = 'T2D_FILES(T2DDL2)%NAME' -SUBMIT = 'T2DDL2-WRITE-37;T2DDL2;FACUL;BIN;ECR;DELWAQSEG' -DEFAUT = ' ' -DEFAUT1 = ' ' -NIVEAU = 1 -APPARENCE = 'LISTE IS FICHIER' -RUBRIQUE = 'ENTREES-SORTIES, FICHIERS';'NOMS' -RUBRIQUE1 = 'INPUT-OUTPUT, FILES';'NAMES' -AIDE = 'Fichier de resultats pour le couplage avec Delwaq' -AIDE1 = 'Results file for coupling with Delwaq' -/ -NOM = 'FICHIER DELWAQ DES FLUX VERTICAUX' -NOM1 = 'VERTICAL FLUXES DELWAQ FILE' -TYPE = CARACTERE -INDEX = 66 -MNEMO = 'T2D_FILES(T2DDL3)%NAME' -SUBMIT = 'T2DDL3-WRITE-38;T2DDL3;FACUL;BIN;ECR;DELWAQSEG' -DEFAUT = ' ' -DEFAUT1 = ' ' -NIVEAU = 1 -APPARENCE = 'LISTE IS FICHIER' -RUBRIQUE = 'ENTREES-SORTIES, FICHIERS';'NOMS' -RUBRIQUE1 = 'INPUT-OUTPUT, FILES';'NAMES' -AIDE = 'Fichier de resultats pour le couplage avec Delwaq' -AIDE1 = 'Results file for coupling with Delwaq' -/ -NOM = 'FICHIER DELWAQ DE LA SALINITE' -NOM1 = 'SALINITY DELWAQ FILE' -TYPE = CARACTERE -INDEX = 67 -MNEMO = 'T2D_FILES(T2DDL4)%NAME' -SUBMIT = 'T2DDL4-WRITE-39;T2DDL4;FACUL;BIN;ECR;DELWAQPTS' -DEFAUT = ' ' -DEFAUT1 = ' ' -NIVEAU = 1 -APPARENCE = 'LISTE IS FICHIER' -RUBRIQUE = 'ENTREES-SORTIES, FICHIERS';'NOMS' -RUBRIQUE1 = 'INPUT-OUTPUT, FILES';'NAMES' -AIDE = 'Fichier de resultats pour le couplage avec Delwaq' -AIDE1 = 'Results file for coupling with Delwaq' -/ -NOM = 'FICHIER DELWAQ DES SURFACES DU FOND' -NOM1 = 'BOTTOM SURFACES DELWAQ FILE' -TYPE = CARACTERE -INDEX = 68 -MNEMO = 'T2D_FILES(T2DDL5)%NAME' -SUBMIT = 'T2DDL5-WRITE-40;T2DDL5;FACUL;BIN;ECR;DELWAQMET' -DEFAUT = ' ' -DEFAUT1 = ' ' -NIVEAU = 1 -APPARENCE = 'LISTE IS FICHIER' -RUBRIQUE = 'ENTREES-SORTIES, FICHIERS';'NOMS' -RUBRIQUE1 = 'INPUT-OUTPUT, FILES';'NAMES' -AIDE = 'Fichier de resultats pour le couplage avec Delwaq' -AIDE1 = 'Results file for coupling with Delwaq' -/ -NOM = 'FICHIER DELWAQ DES ECHANGES ENTRE NOEUDS' -NOM1 = 'EXCHANGES BETWEEN NODES DELWAQ FILE' -TYPE = CARACTERE -INDEX = 69 -MNEMO = 'T2D_FILES(T2DDL6)%NAME' -SUBMIT = 'T2DDL6-WRITE-41;T2DDL6;FACUL;BIN;ECR;DELWAQMET' -DEFAUT = ' ' -DEFAUT1 = ' ' -NIVEAU = 1 -APPARENCE = 'LISTE IS FICHIER' -RUBRIQUE = 'ENTREES-SORTIES, FICHIERS';'NOMS' -RUBRIQUE1 = 'INPUT-OUTPUT, FILES';'NAMES' -AIDE = 'Fichier de resultats pour le couplage avec Delwaq' -AIDE1 = 'Results file for coupling with Delwaq' -/ -NOM = 'FICHIER DELWAQ DES DISTANCES ENTRE NOEUDS' -NOM1 = 'NODES DISTANCES DELWAQ FILE' -TYPE = CARACTERE -INDEX = 70 -MNEMO = 'T2D_FILES(T2DDL7)%NAME' -SUBMIT = 'T2DDL7-WRITE-42;T2DDL7;FACUL;BIN;ECR;DELWAQMET' -DEFAUT = ' ' -DEFAUT1 = ' ' -NIVEAU = 1 -APPARENCE = 'LISTE IS FICHIER' -RUBRIQUE = 'ENTREES-SORTIES, FICHIERS';'NOMS' -RUBRIQUE1 = 'INPUT-OUTPUT, FILES';'NAMES' -AIDE = 'Fichier de resultats pour le couplage avec Delwaq' -AIDE1 = 'Results file for coupling with Delwaq' -/ -NOM = 'FICHIER DELWAQ DE LA TEMPERATURE' -NOM1 = 'TEMPERATURE DELWAQ FILE' -TYPE = CARACTERE -INDEX = 72 -MNEMO = 'T2D_FILES(T2DDL8)%NAME' -SUBMIT = 'T2DDL8-WRITE-43;T2DDL8;FACUL;BIN;ECR;DELWAQPTS' -DEFAUT = ' ' -DEFAUT1 = ' ' -NIVEAU = 1 -APPARENCE = 'LISTE IS FICHIER' -RUBRIQUE = 'ENTREES-SORTIES, FICHIERS';'NOMS' -RUBRIQUE1 = 'INPUT-OUTPUT, FILES';'NAMES' -AIDE = 'Fichier de resultats pour le couplage avec Delwaq' -AIDE1 = 'Results file for coupling with Delwaq' -/ -NOM = 'FICHIER DELWAQ DE LA VITESSE' -NOM1 = 'VELOCITY DELWAQ FILE' -TYPE = CARACTERE -INDEX = 76 -MNEMO = 'T2D_FILES(T2DDL9)%NAME' -SUBMIT = 'T2DDL9-WRITE-33;T2DDL9;FACUL;BIN;ECR;DELWAQPTS' -DEFAUT = ' ' -DEFAUT1 = ' ' -NIVEAU = 1 -APPARENCE = 'LISTE IS FICHIER' -RUBRIQUE = 'ENTREES-SORTIES, FICHIERS';'NOMS' -RUBRIQUE1 = 'INPUT-OUTPUT, FILES';'NAMES' -AIDE = 'Fichier de resultats pour le couplage avec Delwaq' -AIDE1 = 'Results file for coupling with Delwaq' -/ -NOM = 'FICHIER DELWAQ DE LA DIFFUSION' -NOM1 = 'DIFFUSIVITY DELWAQ FILE' -TYPE = CARACTERE -INDEX = 77 -MNEMO = 'T2D_FILES(T2DL10)%NAME' -SUBMIT = 'T2DL10-WRITE-34;T2DL10;FACUL;BIN;ECR;DELWAQPTS' -DEFAUT = ' ' -DEFAUT1 = ' ' -NIVEAU = 1 -APPARENCE = 'LISTE IS FICHIER' -RUBRIQUE = 'ENTREES-SORTIES, FICHIERS';'NOMS' -RUBRIQUE1 = 'INPUT-OUTPUT, FILES';'NAMES' -AIDE = 'Fichier de resultats pour le couplage avec Delwaq' -AIDE1 = 'Results file for coupling with Delwaq' -/ -NOM = 'FICHIER DE COMMANDE DELWAQ' -NOM1 = 'DELWAQ STEERING FILE' -TYPE = CARACTERE -INDEX = 71 -MNEMO = 'T2D_FILES(T2DL11)%NAME' -SUBMIT = 'T2DL11-WRITE-44;T2DL11;FACUL;ASC;ECR;DELWAQHYD' -DEFAUT = ' ' -DEFAUT1 = ' ' -NIVEAU = 1 -APPARENCE = 'LISTE IS FICHIER' -RUBRIQUE = 'ENTREES-SORTIES, FICHIERS';'NOMS' -RUBRIQUE1 = 'INPUT-OUTPUT, FILES';'NAMES' -AIDE = 'Fichier de resultats pour le couplage avec Delwaq' -AIDE1 = 'Results file for coupling with Delwaq' -/ -NOM = 'COMPATIBILITE DU GRADIENT DE SURFACE LIBRE' -NOM1 = 'FREE SURFACE GRADIENT COMPATIBILITY' -TYPE = REEL -INDEX = 58 -MNEMO = 'TETAZCOMP' -TAILLE = 0 -DEFAUT = 1. -DEFAUT1= 1. -RUBRIQUE = 'PARAMETRES NUMERIQUES';'DUREE DU CALCUL' -RUBRIQUE1 = 'NUMERICAL PARAMETERS';'DURATION' -NIVEAU = 1 -AIDE = 'Des valeurs inferieures a 1 suppriment les oscillations -parasites' -AIDE1 = 'Values less than 1 suppress spurious oscillations' -/ -NOM = 'BORNES EN TEMPS POUR L''ANALYSE DE FOURIER' -NOM1 = 'TIME RANGE FOR FOURIER ANALYSIS' -TYPE = REEL -INDEX = 59 -MNEMO = 'TAFBGN,TAFEND' -TAILLE = 2 -DEFAUT = 0.;0. -DEFAUT1= 0.;0. -RUBRIQUE = 'PARAMETRES NUMERIQUES';'DUREE DU CALCUL' -RUBRIQUE1 = 'NUMERICAL PARAMETERS';'DURATION' -NIVEAU = 1 -AIDE = 'Pour le calcul du marnage et de la phase de la maree' -AIDE1 = 'For computing tidal range and phase of tide' -/ -/ NOUVEAUTES 5.8 (SAUF DEUX FICHIERS POUR DELWAQ MIS CI-DESSUS) -/ -NOM = 'NOMBRE DE TRACEURS' -NOM1 = 'NUMBER OF TRACERS' -TYPE = ENTIER -INDEX = 67 -MNEMO = 'NTRAC' -TAILLE = 0 -DEFAUT = 0 -DEFAUT1 = 0 -RUBRIQUE = 'EQUATIONS, TRACEUR' -RUBRIQUE1 = 'EQUATIONS';'TRACER' -NIVEAU = 1 -/COMPORT = 'Affichage ("EQUATIONS*TRACEUR*OPTIONS TRACEUR") -/IS VALEUR ()'; -/'Foreground ("EQUATIONS*TRACEUR") IS VALEUR (brown)' -AIDE = 'Definit le nombre de traceurs.' -AIDE1 = 'Defines the number of tracers' -/ -NOM = 'NOMS DES TRACEURS' -NOM1 = 'NAMES OF TRACERS' -TYPE = CARACTERE -INDEX = 74 -MNEMO = 'NAMETRAC' -TAILLE = 2 -RUBRIQUE = 'ENTREES-SORTIES, FICHIERS';'NOMS' -RUBRIQUE1 = 'INPUT-OUTPUT, FILES';'NAMES' -NIVEAU = 1 -COMPORT = -'Foreground ("ENTREES-SORTIES, FICHIERS*NOMS") -IS BRUT (red)' -AIDE = 'Noms des traceurs en 32 caracteres, 16 pour le nom - 16 pour l''unite' -AIDE1 = 'Name of tracers in 32 characters, 16 for the name, - 16 for the unit.' -/ -NOM = 'SALINITE POUR DELWAQ' -NOM1 = 'SALINITY FOR DELWAQ' -TYPE = LOGIQUE -INDEX = 41 -MNEMO = 'SALI_DEL' -DEFAUT = NON -DEFAUT1 = NO -NIVEAU = 1 -RUBRIQUE = 'ENTREES-SORTIES, GRAPHIQUES ET LISTING' -RUBRIQUE1 = 'INPUT-OUTPUT, GRAPHICS AND LISTING' -AIDE = 'Decide de la sortie de la salinite pour Delwaq' -AIDE1 = 'Triggers output of salinity for Delwaq' -/ -NOM = 'TEMPERATURE POUR DELWAQ' -NOM1 = 'TEMPERATURE FOR DELWAQ' -TYPE = LOGIQUE -INDEX = 42 -MNEMO = 'TEMP_DEL' -DEFAUT = NON -DEFAUT1 = NO -NIVEAU = 1 -RUBRIQUE = 'ENTREES-SORTIES, GRAPHIQUES ET LISTING' -RUBRIQUE1 = 'INPUT-OUTPUT, GRAPHICS AND LISTING' -AIDE = 'Decide de la sortie de la temperature pour Delwaq' -AIDE1 = 'Triggers output of temperature for Delwaq' -/ -NOM = 'VITESSE POUR DELWAQ' -NOM1 = 'VELOCITY FOR DELWAQ' -TYPE = LOGIQUE -INDEX = 43 -MNEMO = 'VELO_DEL' -DEFAUT = NON -DEFAUT1 = NO -NIVEAU = 1 -RUBRIQUE = 'ENTREES-SORTIES, GRAPHIQUES ET LISTING' -RUBRIQUE1 = 'INPUT-OUTPUT, GRAPHICS AND LISTING' -AIDE = 'Decide de la sortie de la vitesse pour Delwaq' -AIDE1 = 'Triggers output of velocity for Delwaq' -/ -NOM = 'DIFFUSION POUR DELWAQ' -NOM1 = 'DIFFUSIVITY FOR DELWAQ' -TYPE = LOGIQUE -INDEX = 44 -MNEMO = 'DIFF_DEL' -DEFAUT = NON -DEFAUT1 = NO -NIVEAU = 1 -RUBRIQUE = 'ENTREES-SORTIES, GRAPHIQUES ET LISTING' -RUBRIQUE1 = 'INPUT-OUTPUT, GRAPHICS AND LISTING' -AIDE = 'Decide de la sortie du coefficient de diffusion pour Delwaq' -AIDE1 = 'Triggers output of diffusion for Delwaq' -/ -/ NOUVEAUTES 5.9 -/ -NOM = 'COURBES DE TARAGE' -NOM1 = 'STAGE-DISCHARGE CURVES' -TYPE = ENTIER -INDEX = 68 -MNEMO = 'STA_DIS_CURVES' -TAILLE = 2 -CHOIX = '0="non"';'1="Z(Q)"';'non programme 2="Q(Z)"' -CHOIX1 = '0="no"';'1="Z(Q)"';'not programmed 2="Q(Z)"' -RUBRIQUE = 'CONDITIONS LIMITES' -RUBRIQUE1 = 'BOUNDARY CONDITIONS' -NIVEAU = 1 -AIDE = 'Indique si une courbe de tarage doit etre utilisee -pour une frontiere 0:non 1:Z(Q) 2: Q(Z) (2 non programme)' -AIDE1 = 'Says if a discharge-elevation curve must be used -for a given boundary :NO 1:Z(Q) 2: Q(Z) (2 not programmed)' -/ -NOM = 'FICHIER DES COURBES DE TARAGE' -NOM1 = 'STAGE-DISCHARGE CURVES FILE' -TYPE = CARACTERE -INDEX = 73 -MNEMO = 'T2D_FILES(T2DMAB)%NAME' -TAILLE = 0 -SUBMIT = 'T2DMAB-READ-11;T2DMAB;FACUL;ASC;LIT;PARAL' -DEFAUT = ' ' -DEFAUT1 = ' ' -RUBRIQUE = 'ENTREES-SORTIES, FICHIERS';'NOMS' -RUBRIQUE1 = 'INPUT-OUTPUT, FILES';'NAMES' -COMPORT = -'Foreground ("ENTREES-SORTIES, FICHIERS*NOMS") -IS VALEUR (red)' -NIVEAU = 1 -APPARENCE = 'LISTE IS FICHIER' -AIDE = 'Nom du fichier contenant les courbes de tarage' -AIDE1 = 'Name of the file containing stage-discharge curves' -/ -NOM = 'FICHIER DES SOURCES' -NOM1 = 'SOURCES FILE' -TYPE = CARACTERE -INDEX = 75 -MNEMO = 'T2D_FILES(T2DVEF)%NAME' -TAILLE = 0 -SUBMIT = 'T2DVEF-READ-10;T2DVEF;FACUL;ASC;LIT;PARAL' -DEFAUT = ' ' -DEFAUT1 = ' ' -RUBRIQUE = 'ENTREES-SORTIES, FICHIERS';'NOMS' -RUBRIQUE1 = 'INPUT-OUTPUT, FILES';'NAMES' -COMPORT = -'Foreground ("ENTREES-SORTIES, FICHIERS*NOMS") -IS VALEUR (red)' -NIVEAU = 1 -APPARENCE = 'LISTE IS FICHIER' -AIDE = 'Nom du fichier contenant les informations variables -en temps des sources' -AIDE1 = 'Name of the file containing time-dependent -information on sources' -/ -NOM = 'DEBUGGER' -NOM1 = 'DEBUGGER' -TYPE = INTEGER -INDEX = 69 -MNEMO = 'DEBUG' -TAILLE = 0 -DEFAUT = 0 -DEFAUT1 = 0 -RUBRIQUE = 'PARAMETRES NUMERIQUES' -RUBRIQUE1 = 'NUMERICAL PARAMETERS' -NIVEAU = 1 -AIDE= 'Pour imprimer la sequence des appels, mettre 1' -AIDE1 = 'If 1, calls of subroutines will be printed in the listing' -/ -NOM = 'TRAITEMENT DES HAUTEURS NEGATIVES' -NOM1 = 'TREATMENT OF NEGATIVE DEPTHS' -TYPE = INTEGER -INDEX = 70 -MNEMO = 'OPT_HNEG' -TAILLE = 0 -DEFAUT = 1 -DEFAUT1 = 1 -RUBRIQUE = 'PARAMETRES NUMERIQUES' -RUBRIQUE1 = 'NUMERICAL PARAMETERS' -NIVEAU = 1 -AIDE= 'Seulement avec OPTION DE TRAITEMENT DES BANCS DECOUVRANTS = 1 - 0 : pas de traitement 1 : lissage 2 : limitation des flux' -AIDE1 = 'Only with OPTION FOR THE TREATMENT OF TIDAL FLATS=1 - 0: no treatment 1:smoothing 2:flux control' -/ -NOM = 'FORMAT DU FICHIER DE REFERENCE' -NOM1 = 'REFERENCE FILE FORMAT' -TYPE = CARACTERE -INDEX = 78 -MNEMO = '?????' -DEFAUT = 'SERAFIN ' -DEFAUT1 = 'SERAFIN ' -CHOIX = 'SERAFIN ';'SERAFIND';'MED ' -CHOIX1 = 'SERAFIN ';'SERAFIND';'MED ' -NIVEAU = 2 -RUBRIQUE = 'ENTREES-SORTIES, FICHIERS' -RUBRIQUE1 = 'INPUT-OUTPUT, FILES' -AIDE = 'Format du fichier de resultats du calcul precedent. -Les valeurs possibles sont : -- SERAFIN : format standard simple precision pour Telemac; -- SERAFIND: format standard double precision pour Telemac; -- MED : format MED base sur HDF5' -AIDE1 = 'Previous computation results file format. -Possible values are: -- SERAFIN : classical single precision format in Telemac; -- SERAFIND: classical double precision format in Telemac; -- MED : MED format based on HDF5' -/ -/ NOUVEAUTES 6.0 -/ -NOM = 'HAUTEUR DANS LES TERMES DE FROTTEMENT' -NOM1 = 'DEPTH IN FRICTION TERMS' -TYPE = ENTIER -INDEX = 71 -MNEMO = 'HFROT' -TAILLE = 0 -DEFAUT = 1 -DEFAUT1 = 1 -CHOIX = '1="nodale"';'2="moyenne"' -CHOIX1 = '1="nodal"';'2="average"' -RUBRIQUE = 'PARAMETRES NUMERIQUES';'GENERAL' -RUBRIQUE1 = 'NUMERICAL PARAMETERS';'GENERAL' -NIVEAU = 1 -AIDE = '1 : nodale 2 : moyenne' -AIDE1 = '1: nodal 2: average' -/ -// jaj #### added -/ -NOM = 'FICHIER DES SECTIONS DE CONTROLE' -NOM1 = 'SECTIONS INPUT FILE' -TYPE = CARACTERE -INDEX = 79 -MNEMO = 'T2D_FILES%ADR(T2DSEC)' -SUBMIT = 'NSCS-READ-45;T2DSEC;FACUL;ASC;LIT;SECTION' -DEFAUT = ' ' -DEFAUT1 = ' ' -RUBRIQUE = 'ENTREES-SORTIES, FICHIERS';'NOMS' -RUBRIQUE1 = 'INPUT-OUTPUT, FILES';'NAMES' -NIVEAU = 1 -APPARENCE = 'LISTE IS FICHIER' -AIDE = 'sections input file, partitioned' -AIDE1 = 'sections input file, partitioned' - -NOM = 'FICHIER DE SORTIE DES SECTIONS DE CONTROLE' -NOM1 = 'SECTIONS OUTPUT FILE' -TYPE = CARACTERE -INDEX = 80 -MNEMO = 'T2D_FILES%ADR(T2DSEO)' -SUBMIT = 'NSEO-WRITE-46;T2DSEO;FACUL;ASC;ECR;SCAL' -DEFAUT = ' ' -DEFAUT1 = ' ' -RUBRIQUE = 'ENTREES-SORTIES, FICHIERS';'NOMS' -RUBRIQUE1 = 'INPUT-OUTPUT, FILES';'NAMES' -NIVEAU = 1 -AIDE = 'sections output file, written by the master' -AIDE1 = 'sections output file, written by the master' -/ -// end of jaj #### added -/ -NOM = 'FICHIER DE COMMANDES HYDROCARBURES' -NOM1 = 'OILSPILL STEERING FILE' -TYPE = CARACTERE -INDEX = 81 -MNEMO = 'T2D_FILES(T2DMIG)' -SUBMIT = 'NMIG-READ-47;T2DMIG;FACUL;ASC;LIT;PARAL' -DEFAUT = ' ' -DEFAUT1 = ' ' -RUBRIQUE = 'ENTREES-SORTIES, FICHIERS';'NOMS' -RUBRIQUE1 = 'INPUT-OUTPUT, FILES';'NAMES' -NIVEAU = 1 -AIDE = 'Contient les donnees pour le modele de derive de nappes' -AIDE1 = 'Contains data for the oil spill model' - -NOM = 'MODELE DE NAPPES D''HYDROCARBURES' -NOM1 = 'OIL SPILL MODEL' -TYPE = LOGIQUE -INDEX = 45 -MNEMO = 'SPILL_MODEL' -TAILLE = 0 -DEFAUT = NON -DEFAUT1 = NO -RUBRIQUE = 'ENTREES-SORTIES, GENERALITES';'CONTROLE' -RUBRIQUE1 = 'INPUT-OUTPUT, INFORMATION';'CONTROL' -NIVEAU = 1 -AIDE = 'POUR DECLENCHER LE MODELE DE DERIVE DE NAPPES, DANS -CE CAS LE FICHIER DE COMMANDES MIGRHYCAR EST NECESSAIRE' -AIDE1 = 'WILL TRIGGER THE OIL SPILL MODEL, IN THIS CASE -THE MIGRHYCAR STEERING FILE IS NEEDED' -/ -/ VERSION 6.1 -/ -NOM = 'LOI DE FROTTEMENT SUR LES PAROIS LATERALES' -NOM1 = 'LAW OF FRICTION ON LATERAL BOUNDARIES' -TYPE = ENTIER -INDEX = 72 -MNEMO = 'KFROTL' -TAILLE = 0 -DEFAUT = 0 -DEFAUT1 = 0 -CHOIX = '0="PAS DE FROTTEMENT"'; -'1="HAALAND"'; -'2="CHEZY"'; -'3="STRICKLER"'; -'4="MANNING"'; -'5="NIKURADSE"'; -'6="LOG LAW"'; -'7="COLEBROOK-WHITE"' -CHOIX1 = '0="NO FRICTION"'; -'1="HAALAND"'; -'2="CHEZY"'; -'3="STRICKLER"'; -'4="MANNING"'; -'5="NIKURADSE"'; -'6="LOG LAW"'; -'7="COLEBROOK-WHITE"' -RUBRIQUE = 'EQUATIONS';'FROTTEMENT' -RUBRIQUE1 = 'EQUATIONS';'FRICTION' -NIVEAU = 1 -AIDE = 'selectionne le type de formulation utilisee pour le calcul -du frottement sur les parois laterales. -Les lois possibles sont les suivantes (cf. Note de principe) : -0 : pas de frottement -1 : lineaire -2 : Chezy -3 : Strickler -4 : Manning -5 : formule de NIKURADSE -6 : loi en log -7 : Colebrook-White' -AIDE1 = 'Selects the type of formulation used for the friction on lateral boundaries. -The possible laws are as follows (refer to the Principle note): -0: no friction -1: linear -2: Chezy -3: Strickler -4: Manning -5: NIKURADSE''s formula -6 : law log -7 : Colebrook-White' - -NOM = 'FICHIER DES PARAMETRES DE TOMAWAC' -NOM1 = 'TOMAWAC STEERING FILE' -TYPE = CARACTERE -INDEX = 82 -MNEMO = 'PAS DE MNEMO' -DEFAUT = ' ' -DEFAUT1 = ' ' -NIVEAU = 1 -APPARENCE = 'LISTE IS FICHIER' -RUBRIQUE = 'ENTREES-SORTIES, FICHIERS';'NOMS' -RUBRIQUE1 = 'INPUT-OUTPUT, FILES';'NAMES' -AIDE = 'Fichier des parametres de Tomawac en cas de couplage interne' -AIDE1 = 'Tomawac parameter file in case of internal coupling' - -NOM = 'PERIODE DE COUPLAGE POUR TOMAWAC' -NOM1 = 'COUPLING PERIOD FOR TOMAWAC' -TYPE = ENTIER -INDEX = 73 -MNEMO = 'PERCOU_WAC' -TAILLE = 0 -DEFAUT = 1 -DEFAUT1 = 1 -RUBRIQUE = 'PARAMETRES NUMERIQUES';'GENERAL' -RUBRIQUE1 = 'NUMERICAL PARAMETERS';'GENERAL' -NIVEAU = 1 -AIDE = 'pour eviter de faire le couplage a chaque pas de temps' -AIDE1 = 'to avoid coupling at every time-step' - -NOM = 'COEFFICIENT D''INTEGRATION EN TEMPS DE NEWMARK' -NOM1 = 'NEWMARK TIME INTEGRATION COEFFICIENT' -TYPE = REEL -INDEX = 60 -MNEMO = 'GAMMA' -TAILLE = 0 -DEFAUT = 1. -DEFAUT1= 1. -RUBRIQUE = 'PARAMETRES NUMERIQUES';'DUREE DU CALCUL' -RUBRIQUE1 = 'NUMERICAL PARAMETERS';'DURATION' -NIVEAU = 1 -AIDE = '1. : Euler explicite 0.5 : ordre 2 en temps' -AIDE1 = '1. : Euler explicit 0.5 : order 2 in time' - -NOM = 'TRAITEMENT DES FLUX AUX FRONTIERES' -NOM1 = 'TREATMENT OF FLUXES AT THE BOUNDARIES' -TYPE = INTEGER -INDEX = 74 -MNEMO = 'DIRFLU' -TAILLE = 0 -DEFAUT = 1 -DEFAUT1= 1 -CHOIX='1="Priorite aux valeurs imposees"';'2="Priorite aux flux"' -CHOIX1='1="Priority to prescribed values"';'2="Priority to fluxes"' -RUBRIQUE = 'PARAMETRES NUMERIQUES';'GENERAL' -RUBRIQUE1 = 'NUMERICAL PARAMETERS';'GENERAL' -NIVEAU = 1 -AIDE = 'Utilise pour les schemas SUPG, PSI et N, avec option 2, on ne retrouve -pas exactement les valeurs imposees des traceurs, -mais le flux est correct' -AIDE1= 'Used so far only with the SUPG, PSI and N schemes. -With option 2, Dirichlet prescribed values are not obeyed, -but the fluxes are correct' - -NOM = 'OPTION POUR LES CONDITIONS AUX LIMITES DE MAREE' -NOM1 = 'OPTION FOR TIDAL BOUNDARY CONDITIONS' -TYPE = INTEGER -INDEX = 75 -MNEMO = 'TIDALTYPE' -TAILLE = 0 -DEFAUT = 0 -DEFAUT1= 0 -CHOIX= -'0="Pas de maree"'; -'1="Maree reelle (methodologie recommandee)"'; -'2="Maree de vive-eau exceptionnelle (coef. presque 120)"'; -'3="Maree de vive-eau moyenne (coef. presque 95)"'; -'4="Maree moyenne (coef. presque 70)"'; -'5="Maree de morte-eau moyenne (coef. presque 45)"'; -'6="Maree de morte-eau exceptionnelle (coef. presque 20)"'; -'7="Maree reelle (methodologie d avant 2010)"' -CHOIX1= -'0="No tide"'; -'1="Real tide (recommended methodology)"'; -'2="Astronomical tide"'; -'3="Mean spring tide"'; -'4="Mean tide"'; -'5="Mean neap tide"'; -'6="Astronomical neap tide"'; -'7="Real tide (methodology before 2010)"' -RUBRIQUE = 'PARAMETRES NUMERIQUES';'GENERAL' -RUBRIQUE1 = 'NUMERICAL PARAMETERS';'GENERAL' -NIVEAU = 1 -AIDE = 'Option pour les conditions aux limites de maree. -Pour des marees reelles, l option 1 est recommandee. -Calage possible par les mots-cles COEFFICIENT POUR CALAGE EN MARNAGE -et COEFFICIENT POUR CALAGE EN NIVEAU.' -AIDE1= 'Option for tidal boundary conditions. -For real tides, option 1 is recommended. -Possible calibration with keywords COEFFICIENT TO ADJUST TIDAL RANGE -and COEFFICIENT TO ADJUST SEA LEVEL.' - -NOM = 'FICHIER DES CONSTANTES HARMONIQUES' -NOM1 = 'HARMONIC CONSTANTS FILE' -TYPE = CARACTERE -INDEX = 83 -MNEMO = 'T2D_FILES(T2DHAR)' -SUBMIT = 'NHAR-READWRITE-13;T2DHAR;FACUL;ASC;ECRLIT;PARAL' -DEFAUT = ' ' -DEFAUT1 = ' ' -RUBRIQUE = 'ENTREES-SORTIES, FICHIERS';'NOMS' -RUBRIQUE1 = 'INPUT-OUTPUT, FILES';'NAMES' -NIVEAU = 1 -AIDE = 'Constantes harmoniques extraites du fichier du modele de maree' -AIDE1 = 'Harmonic constants extracted from the tidalmodel file' - -NOM = 'FICHIER DU MODELE DE MAREE' -NOM1 = 'TIDAL MODEL FILE' -TYPE = CARACTERE -INDEX = 84 -MNEMO = 'T2D_FILES(T2DTID)' -SUBMIT = 'NTID-READ-14;T2DTID;FACUL;BIN;LIT;SCAL' -DEFAUT = ' ' -DEFAUT1 = ' ' -RUBRIQUE = 'ENTREES-SORTIES, FICHIERS';'NOMS' -RUBRIQUE1 = 'INPUT-OUTPUT, FILES';'NAMES' -NIVEAU = 1 -AIDE = 'Fichier de geometrie du modele dont sont extraites -les constantes harmoniques' -AIDE1 = 'Geometry file of the model from which harmonic constituents -are extracted' - -NOM = 'BASE ASCII DE DONNEES DE MAREE' -NOM1 = 'ASCII DATABASE FOR TIDE' -TYPE = CARACTERE -INDEX = 85 -MNEMO = 'T2D_FILES(T2DBDD)' -SUBMIT = 'NBDD-READ-15;T2DBDD;FACUL;ASC;LIT;PARAL' -DEFAUT = ' ' -DEFAUT1 = ' ' -RUBRIQUE = 'ENTREES-SORTIES, FICHIERS';'NOMS' -RUBRIQUE1 = 'INPUT-OUTPUT, FILES';'NAMES' -NIVEAU = 1 -AIDE = 'Base de donnees de constantes harmoniques -tirees du fichier du modele de maree. -Ancien nom en version 6.1 : BASE DE DONNEES DE MAREE' -AIDE1 = 'Tide data base of harmonic constituents -extracted from the tidal model file. -Old name in 6.1 version: TIDE DATA BASE' -/ -/ VERSION 6.2 -/ -NOM = 'PLUIE OU EVAPORATION' -NOM1 = 'RAIN OR EVAPORATION' -TYPE = LOGIQUE -INDEX = 19 -MNEMO = 'RAIN' -TAILLE = 0 -DEFAUT = NON -DEFAUT1 = NO -RUBRIQUE = 'PARAMETRES NUMERIQUES';'GENERAL' -RUBRIQUE1 = 'NUMERICAL PARAMETERS';'GENERAL' -NIVEAU = 1 -AIDE = 'Pour ajouter un apport ou une perte d''eau en surface. -Voir le mot-cle PLUIE OU EVAPORATION EN MM PAR JOUR' -AIDE1 = 'to add or remove water at the free surface. See the key-word -RAIN OR EVAPORATION IN MM PER DAY' -/ -NOM = 'PLUIE OU EVAPORATION EN MM PAR JOUR' -NOM1 = 'RAIN OR EVAPORATION IN MM PER DAY' -TYPE = REAL -INDEX = 61 -MNEMO = 'RAIN_MMPD' -TAILLE = 0 -DEFAUT = 0.D0 -DEFAUT1 = 0.D0 -RUBRIQUE = 'PARAMETRES NUMERIQUES';'GENERAL' -RUBRIQUE1 = 'NUMERICAL PARAMETERS';'GENERAL' -NIVEAU = 1 -AIDE = 'Pour ajouter un apport ou une perte d''eau en surface' -AIDE1 = 'to add or remove water at the free surface' -/ -NOM = 'BASE BINAIRE 1 DE DONNEES DE MAREE' -NOM1 = 'BINARY DATABASE 1 FOR TIDE' -TYPE = CARACTERE -INDEX = 86 -MNEMO = 'T2D_FILES(T2DBB1)' -SUBMIT = 'NBB1-READ-16;T2DBB1;FACUL;BIN;LIT;PARAL' -DEFAUT = ' ' -DEFAUT1 = ' ' -RUBRIQUE = 'ENTREES-SORTIES, FICHIERS';'NOMS' -RUBRIQUE1 = 'INPUT-OUTPUT, FILES';'NAMES' -NIVEAU = 1 -AIDE = 'Base de donnees binaire 1 tiree du fichier du modele de maree. - Dans le cas des donnees satellitaires de TPXO, ce fichier correspond - aux donnees de niveau d''eau, par exemple h_tpxo7.2' -AIDE1 = 'Binary database 1 extracted from the tidal model file. - In the case of the TPXO satellite altimetry model, this file should - be for free surface level, for instance h_tpxo7.2' - -NOM = 'BASE BINAIRE 2 DE DONNEES DE MAREE' -NOM1 = 'BINARY DATABASE 2 FOR TIDE' -TYPE = CARACTERE -INDEX = 87 -MNEMO = 'T2D_FILES(T2DBB2)' -SUBMIT = 'NBB2-READ-17;T2DBB2;FACUL;BIN;LIT;PARAL' -DEFAUT = ' ' -DEFAUT1 = ' ' -RUBRIQUE = 'ENTREES-SORTIES, FICHIERS';'NOMS' -RUBRIQUE1 = 'INPUT-OUTPUT, FILES';'NAMES' -NIVEAU = 1 -AIDE = 'Base de donnees binaire 2 tiree du fichier du modele de maree. - Dans le cas des donnees satellitaires de TPXO, ce fichier correspond - aux donnees de vitesse de marrees, par exemple u_tpxo7.2' -AIDE1 = 'Binary database 2 extracted from the tidal model file. - In the case of the TPXO satellite altimetry model, this file should - be for tidal velocities, for instance u_tpxo7.2' - -NOM = 'OPTION POUR LA GENERATION DE TSUNAMI' -NOM1 = 'OPTION FOR TSUNAMI GENERATION' -TYPE = INTEGER -INDEX = 76 -MNEMO = 'OPTTSUNAMI' -TAILLE = 0 -DEFAUT = 0 -DEFAUT1= 0 -CHOIX= -'0="Pas de Tsunami"'; -'1="Generation d''un Tsunami sur la base du modele de Okada 1992"' -CHOIX1= -'0="No Tsunami"'; -'1="Tsunami generated on the basis of the Okada model 1992"' -RUBRIQUE = 'PARAMETRES PHYSIQUES, CONDITIONS INITIALES' -RUBRIQUE1 = 'PHYSICAL PARAMETERS, INITIAL CONDITIONS' -NIVEAU = 1 -AIDE = '' -/'Option pour la generation de Tsunami. -/Pour l''instant, seul de modele de Okada est programme. -/Les parametres physiques du modele chosit sont definis avec -/PARAMETRES PHYSIQUES DU TSUNAMI.' -AIDE1= '' -/'Option for the generation of Tsunami. -/Only the Okada model 1992 is programmed. -/The physical characteristics of the chosen Tsunami are set in -/PHYSICAL CHARACTERISTICS OF THE TSUNAMI.' - -NOM = 'PARAMETRES PHYSIQUES DU TSUNAMI' -NOM1 = 'PHYSICAL CHARACTERISTICS OF THE TSUNAMI' -TYPE = REEL -INDEX = 62 -MNEMO = 'COETSUNAMI' -TAILLE = 10 -DEFAUT = 100.;210000.;75000.;13.6;81.;41.;110.;0.;0.;3. -DEFAUT1= 100.;210000.;75000.;13.6;81.;41.;110.;0.;0.;3. -RUBRIQUE = 'PARAMETRES PHYSIQUES, CONDITIONS INITIALES' -RUBRIQUE1 = 'PHYSICAL PARAMETERS, INITIAL CONDITIONS' -NIVEAU = 1 -AIDE = '' -/'Parametres physiques du modele de generation de tsunami' -AIDE1 = '' -/'Physical characteristics of the chosen Tsunami model: -/ - the focal depth (HH), -/ - the fault length (L), -/ - the fault width (W) -/ - the dislocation (D), -/ - the strike direction (TH), -/ - the dip angle (DL), -/ - the slip (RD), -/ - the epicentre latitude (Y0) and -/ - the epicentre longitude (X0) -/ - the ellipse ( WxL ) area of influence' - -NOM = 'VALEURS DES TRACEURS DANS LA PLUIE' -NOM1 = 'VALUES OF TRACERS IN THE RAIN' -TYPE = REEL -INDEX = 63 -MNEMO = 'TRAIN' -TAILLE = 2 -RUBRIQUE = 'PARAMETRES NUMERIQUES' -RUBRIQUE1 = 'NUMERICAL PARAMETERS' -NIVEAU = 1 -AIDE = '' -AIDE1 = '' - -NOM = 'NOMBRE DE BUSES' -NOM1 = 'NUMBER OF TUBES' -TYPE = ENTIER -INDEX = 6 -MNEMO = 'NBUSE' -CONTROLE = 0; 100 -TAILLE = 0 -DEFAUT = 0 -DEFAUT1 = 0 -RUBRIQUE = 'PARAMETRES NUMERIQUES';'GENERAL' -RUBRIQUE1 = 'NUMERICAL PARAMETERS';'GENERAL' -NIVEAU = 2 -AIDE = 'Nombre de buses ou ponts traites comme des termes sources ou -puits. Ces buses doivent etre decrits comme des sources dans le -fichier cas. Leurs caracteristiques sont donnees dans le -fichier de donnees des buses (voir la documentation ecrite)' -AIDE1 = 'Number of tubes or bridges treated as source terms. -They must be described as sources in the domain and their features -are given in the tubes data file (see written documentation)' - -NOM = 'FICHIER DE DONNEES DES SEUILS' -NOM1 = 'WEIRS DATA FILE' -TYPE = CARACTERE -INDEX = 88 -MNEMO = 'T2D_FILES(T2DSEU)%NAME' -SUBMIT = 'T2DSEU-READ-18;T2DSEU;FACUL;ASC;LIT;SCAL' -DEFAUT = ' ' -DEFAUT1 = ' ' -RUBRIQUE = 'ENTREES-SORTIES, FICHIERS';'NOMS' -RUBRIQUE1 = 'INPUT-OUTPUT, FILES';'NAMES' -NIVEAU = 1 -AIDE = 'Fichier de description des seuils presents dans le modele' -AIDE1 = 'Description of weirs existing in the model' - -NOM = 'FICHIER DE DONNEES DES SIPHONS' -NOM1 = 'CULVERT DATA FILE' -TYPE = CARACTERE -INDEX = 89 -MNEMO = 'T2D_FILES(T2DSIP)%NAME' -SUBMIT = 'T2DSIP-READ-19;T2DSIP;FACUL;ASC;LIT;SCAL' -DEFAUT = ' ' -DEFAUT1 = ' ' -RUBRIQUE = 'ENTREES-SORTIES, FICHIERS';'NOMS' -RUBRIQUE1 = 'INPUT-OUTPUT, FILES';'NAMES' -NIVEAU = 1 -AIDE = 'Fichier de description des siphons presents dans le modele' -AIDE1 = 'Description of culvert existing in the model' - -NOM = 'FICHIER DE DONNEES DES BUSES' -NOM1 = 'TUBES DATA FILE' -TYPE = CARACTERE -INDEX = 90 -MNEMO = 'T2D_FILES(T2DBUS)%NAME' -SUBMIT = 'T2DBUS-READ-20;T2DBUS;FACUL;ASC;LIT;SCAL' -DEFAUT = ' ' -DEFAUT1 = ' ' -RUBRIQUE = 'ENTREES-SORTIES, FICHIERS';'NOMS' -RUBRIQUE1 = 'INPUT-OUTPUT, FILES';'NAMES' -NIVEAU = 1 -AIDE = 'Fichier de description des buses/ponts presents dans le modele' -AIDE1 = 'Description of tubes/bridges existing in the model' - -NOM = 'COEFFICIENT DE CALAGE DU MARNAGE' -NOM1 = 'COEFFICIENT TO CALIBRATE TIDAL RANGE' -TYPE = REEL -INDEX = 64 -MNEMO = 'CTIDE' -TAILLE = 0 -DEFAUT = 1. -DEFAUT1 = 1. -RUBRIQUE = 'PARAMETRES NUMERIQUES' -RUBRIQUE1 = 'NUMERICAL PARAMETERS' -NIVEAU = 1 -AIDE = 'Coefficient pour ajuster le marnage de l''onde de maree -aux frontieres maritimes' -AIDE1 = 'Coefficient to calibrate the tidal range of tidal wave -at tidal open boundary conditions' - -NOM = 'COEFFICIENT DE CALAGE DES VITESSES DE COURANT' -NOM1 = 'COEFFICIENT TO CALIBRATE TIDAL VELOCITIES' -TYPE = REEL -INDEX = 65 -MNEMO = 'CTIDEV' -TAILLE = 0 -DEFAUT = 999999. -DEFAUT1 = 999999. -RUBRIQUE = 'PARAMETRES NUMERIQUES' -RUBRIQUE1 = 'NUMERICAL PARAMETERS' -NIVEAU = 1 -AIDE = 'Coefficient pour ajuster les composantes de vitesse -de l''onde de maree aux frontieres maritimes. -La valeur par defaut 999999. signifie que c''est la racine carree -du COEFFICIENT DE CALAGE DU MARNAGE qui est prise' -AIDE1 = 'Coefficient to calibrate the tidal velocities of tidal wave -at tidal open boundary conditions. -Default value 999999. means that the square root of -COEFFICIENT TO CALIBRATE TIDAL RANGE is taken' - -NOM = 'COEFFICIENT DE CALAGE DU NIVEAU DE MER' -NOM1 = 'COEFFICIENT TO CALIBRATE SEA LEVEL' -TYPE = REEL -INDEX = 66 -MNEMO = 'MSL' -TAILLE = 0 -DEFAUT = 0. -DEFAUT1 = 0. -RUBRIQUE = 'PARAMETRES NUMERIQUES' -RUBRIQUE1 = 'NUMERICAL PARAMETERS' -NIVEAU = 1 -AIDE = 'Coefficient pour ajuster le niveau de mer' -AIDE1 = 'Coefficient to calibrate the sea level' - -NOM = 'BASE DE DONNEES DE MAREE' -NOM1 = 'TIDAL DATA BASE' -TYPE = ENTIER -INDEX = 77 -MNEMO = 'TIDALDB' -TAILLE = 0 -DEFAUT = -1 -DEFAUT1 = -1 -CHOIX= -'-1="PAS DE VALEUR PAR DEFAUT. CHOISIR LA BASE PARMI LES CHOIX POSSIBLES"'; -'1="JMJ"'; -'2="TPXO"'; -'3="LEGOS-NEA"'; -'4="FES2004"' -CHOIX1= -'-1="NO DEFAULT VALUE. CHOOSE THE BASE AMONG THE POSSIBLE CHOICES"'; -'1="JMJ"'; -'2="TPXO"'; -'3="LEGOS-NEA"'; -'4="FES2004"' -RUBRIQUE = 'PARAMETRES NUMERIQUES' -RUBRIQUE1 = 'NUMERICAL PARAMETERS' -NIVEAU = 1 -AIDE = 'Pour JMJ, renseigner la localisation du fichier bdd_jmj et geofin -dans les mots-cles BASE DE DONNEES DE MAREE et FICHIER DU MODELE DE MAREE. -Pour TPXO et LEGOS-NEA, l''utilisateur doit telecharger -les fichiers de constantes harmoniques sur internet. -Pour FES2004 : pas encore disponible' -AIDE1 = 'For JMJ, indicate the location of the files bdd_jmj and geofin with keywords -TIDE DATA BASE and TIDAL MODEL FILE. -For TPXO and LEGOS-NEA, the user have to download -files of harmonic constituents on the internet. -For FES2004: not yet available' - -NOM = 'SYSTEME GEOGRAPHIQUE' -NOM1 = 'GEOGRAPHIC SYSTEM' -TYPE = ENTIER -INDEX = 78 -MNEMO = 'GEOSYST' -TAILLE = 0 -DEFAUT = -1 -DEFAUT1 = -1 -CHOIX= -'-1="PAS DE VALEUR PAR DEFAUT. CHOISIR LE SYSTEME PARMI LES CHOIX POSSIBLES"'; -'0="DEFINI PAR L''UTILISATEUR"'; -'1="WGS84 LONGITUDE/LATITUDE EN DEGRES REELS"'; -'2="WGS84 NORD UTM"'; -'3="WGS84 SUD UTM"'; -'4="LAMBERT"'; -'5="MERCATOR POUR TELEMAC"' -CHOIX1= -'-1="NO DEFAULT VALUE. CHOOSE THE SYSTEM AMONG THE POSSIBLE CHOICES"'; -'0="DEFINED BY USER"'; -'1="WGS84 LONGITUDE/LATITUDE IN REAL DEGREES"'; -'2="WGS84 NORTHERN UTM"'; -'3="WGS84 SOUTHERN UTM"'; -'4="LAMBERT"'; -'5="MERCATOR FOR TELEMAC"' -RUBRIQUE = 'PARAMETRES NUMERIQUES' -RUBRIQUE1 = 'NUMERICAL PARAMETERS' -NIVEAU = 1 -AIDE = 'Systeme de coordonnees geographiques dans lequel est construit -le modele numerique. -Indiquer la zone correspondante avec le mot-cle ' -AIDE1 = 'Geographic coordinates system in which the numerical model is built. -Indicate the corresponding zone with the keyword ' - -NOM = 'NUMERO DE FUSEAU OU PROJECTION DANS LE SYSTEME GEOGRAPHIQUE' -NOM1 = 'ZONE NUMBER IN GEOGRAPHIC SYSTEM' -TYPE = ENTIER -INDEX = 79 -MNEMO = 'NUMZONE' -TAILLE = 0 -DEFAUT = -1 -DEFAUT1 = -1 -CHOIX= -'-1="PAS DE VALEUR PAR DEFAUT. CHOISIR LE NUMERO PARMI LES CHOIX POSSIBLES"'; -'1="LAMBERT 1 NORD"'; -'2="LAMBERT 2 CENTRE"'; -'3="LAMBERT 3 SUD"'; -'4="LAMBERT 4 CORSE"'; -'22="LAMBERT 2 ETENDU"'; -'30="ZONE UTM, PAR EXEMPLE"' -CHOIX1= -'-1="NO DEFAULT VALUE. CHOOSE THE NUMBER AMONG THE POSSIBLE CHOICES"'; -'1="LAMBERT 1 NORTH"'; -'2="LAMBERT 2 CENTER"'; -'3="LAMBERT 3 SOUTH"'; -'4="LAMBERT 4 CORSICA"'; -'22="LAMBERT 2 EXTENDED"'; -'30="UTM ZONE, E.G."' -RUBRIQUE = 'PARAMETRES NUMERIQUES' -RUBRIQUE1 = 'NUMERICAL PARAMETERS' -NIVEAU = 1 -AIDE = 'Numero de zone (fuseau ou type de projection) -lors de l''utilisation d''une projection plane. -Indiquer le systeme geographique dans lequel est construit le modele numerique -avec le mot-cle SYSTEME GEOGRAPHIQUE' -AIDE1 = 'Number of zone when using a plane projection. -Indicate the geographic system in which the numerical model is built -with the keyword GEOGRAPHIC SYSTEM' - -NOM = 'INTERPOLATION DE COMPOSANTES MINEURES' -NOM1 = 'MINOR CONSTITUENTS INFERENCE' -TYPE = LOGIQUE -INDEX = 46 -MNEMO = 'INTMICON' -TAILLE = 0 -DEFAUT = NON -DEFAUT1 = NO -RUBRIQUE = 'PARAMETRES NUMERIQUES' -RUBRIQUE1 = 'NUMERICAL PARAMETERS' -NIVEAU = 1 -AIDE = 'Pour la base de donnees TPXO uniquement. -Interpolation de composantes harmoniques mineures -a partir de celles lues dans les fichiers d''entree -lies aux mots-cles BASE BINAIRE 1 DE DONNEES DE MAREE -et BASE BINAIRE 2 DE DONNEES DE MAREE' -AIDE1 = 'For TPXO tidal data base only. -Inference of minor constituents from the one read in input files -linked to keywords BINARY DATABASE 1 FOR TIDE -and BINARY DATABASE 2 FOR TIDE' - -NOM = 'LOI DE DEGRADATION DES TRACEURS' -NOM1 = 'LAW OF TRACERS DEGRADATION' -TYPE = ENTIER -INDEX = 80 -MNEMO = 'LOITRAC' -TAILLE = 2 -DEFAUT = 0;0 -DEFAUT1 = 0;0 -CHOIX= -'0="PAS DE DEGRADATION"'; -'1="LOI EN F(T90)"' -CHOIX1= -'0="NO DEGRADATION"'; -'1="F(T90) LAW"' -RUBRIQUE = 'EQUATIONS';'TRACEUR';'OPTIONS TRACEUR' -RUBRIQUE1 = 'EQUATIONS';'TRACER';'TRACER OPTIONS' -NIVEAU = 1 -AIDE = 'Prise en compte d''une loi de decroissance des traceurs' -AIDE1 = 'Take in account a law for tracers decrease' - -NOM = 'COEFFICIENT 1 DE LA LOI DE DEGRADATION DES TRACEURS' -NOM1 = 'COEFFICIENT 1 FOR LAW OF TRACERS DEGRADATION' -TYPE = REAL -INDEX = 67 -MNEMO = 'COEF1TRAC' -TAILLE = 2 -RUBRIQUE = 'EQUATIONS';'TRACEUR';'OPTIONS TRACEUR' -RUBRIQUE1 = 'EQUATIONS';'TRACER';'TRACER OPTIONS' -NIVEAU = 1 -AIDE = 'Coefficient 1 de la loi de decroissance des traceurs' -AIDE1 = 'Coefficient 1 of law for tracers decrease' - -NOM = 'BRECHE' -NOM1 = 'BREACH' -TYPE = LOGIQUE -INDEX = 2 -MNEMO = 'BRECHE' -TAILLE = 0 -DEFAUT = NON -DEFAUT1 = NO -RUBRIQUE = 'PARAMETRES PHYSIQUES' -RUBRIQUE1 = 'PHYSICAL PARAMETERS' -NIVEAU = 1 -AIDE = 'Prise en compte de breches dans le calcul par -modification altimetrique dans le maillage. La description -des breches se fait avec le fichier de donnees des breches.' -AIDE1 = 'Take in account some breaches during the computation -by modifying the bottom level of the mesh. Brech description -is done with the breaches data file.' - -NOM = 'FICHIER DE DONNEES DES BRECHES' -NOM1 = 'BREACHES DATA FILE' -TYPE = CARACTERE -INDEX = 91 -MNEMO = 'T2D_FILES(T2DBRC)%NAME' -SUBMIT = 'T2DBUS-READ-21;T2DBRC;FACUL;ASC;LIT;SCAL' -DEFAUT = ' ' -DEFAUT1 = ' ' -RUBRIQUE = 'ENTREES-SORTIES, FICHIERS';'NOMS' -RUBRIQUE1 = 'INPUT-OUTPUT, FILES';'NAMES' -NIVEAU = 1 -AIDE = 'Fichier de description des breches' -AIDE1 = 'Description of breaches' -/ -/ VERSION 6.3 -/ -NOM = 'FICHIER DES FLOTTEURS' -NOM1 = 'DROGUES FILE' -TYPE = CARACTERE -INDEX = 92 -MNEMO = 'T2D_FILES(T2DFLO)%NAME' -SUBMIT = 'T2DFLO-WRITE-09;T2DFLO;FACUL;ASC;ECR;SCAL' -DEFAUT = ' ' -DEFAUT1 = ' ' -RUBRIQUE = 'ENTREES-SORTIES, FICHIERS';'NOMS' -RUBRIQUE1 = 'INPUT-OUTPUT, FILES';'NAMES' -NIVEAU = 1 -AIDE = 'Fichier de resultat avec les positions des flotteurs' -AIDE1 = 'Results file with positions of drogues' - -NOM = 'TYPE DE PROJECTION SPATIALE' -NOM1 = 'SPATIAL PROJECTION TYPE' -TYPE = ENTIER -INDEX = 81 -MNEMO = 'PROTYP' -TAILLE = 0 -DEFAUT = 1 -DEFAUT1 = 1 -CHOIX = '1="CARTESIEN, NON GEOREFERENCE"'; - '2="MERCATOR"'; - '3="LATITUDE LONGITUDE"' -CHOIX1 = '1="CARTESIAN, NOT GEOREFERENCED"'; - '2="MERCATOR"'; - '3="LATITUDE LONGITUDE"' -CONTROLE = 1 ; 3 -RUBRIQUE = 'EQUATIONS';'GENERAL' -RUBRIQUE1 = 'EQUATIONS';'GENERAL' -NIVEAU = 1 -AIDE = 'Option 2 ou 3 obligatoire pour les coordonnees spheriques' -AIDE1 = 'Option 2 or 3 mandatory for spherical coordinates' - -NOM = 'MODELE DE TRANSPORT DES ALGUES' -NOM1 = 'ALGAE TRANSPORT MODEL' -TYPE = LOGIQUE -INDEX = 47 -MNEMO = 'ALGAE' -TAILLE = 0 -DEFAUT = NON -DEFAUT1 = NO -RUBRIQUE = 'PARAMETRES PHYSIQUES' -RUBRIQUE1 = 'PHYSICAL PARAMETERS' -NIVEAU = 2 -AIDE = 'Si oui, les flotteurs seront des algues' -AIDE1 = 'If yes, the floats or particles will be algae' - -NOM = 'DIAMETRE DES ALGUES' -NOM1 = 'DIAMETRE OF ALGAE' -TYPE = REAL -INDEX = 68 -MNEMO = 'DALGAE' -TAILLE = 0 -DEFAUT = 0.1 -DEFAUT1 = 0.1 -RUBRIQUE = 'PARAMETRES PHYSIQUES' -RUBRIQUE1 = 'PHYSICAL PARAMETERS' -NIVEAU = 2 -AIDE = 'Diametre des algues en m' -AIDE1 = 'Diametre of algae in m' - -NOM = 'MASSE VOLUMIQUE DES ALGUES' -NOM1 = 'DENSITY OF ALGAE' -TYPE = REAL -INDEX = 69 -MNEMO = 'RALGAE' -TAILLE = 0 -DEFAUT = 1050. -DEFAUT1 = 1050. -RUBRIQUE = 'PARAMETRES PHYSIQUES' -RUBRIQUE1 = 'PHYSICAL PARAMETERS' -NIVEAU = 2 -AIDE = 'Masse volumique des algues en kg/m3' -AIDE1 = 'Density of algae in kg/m3' - -NOM = 'EPAISSEUR DES ALGUES' -NOM1 = 'THICKNESS OF ALGAE' -TYPE = REAL -INDEX = 70 -MNEMO = 'EALGAE' -TAILLE = 0 -DEFAUT = 0.01 -DEFAUT1 = 0.01 -RUBRIQUE = 'PARAMETRES PHYSIQUES' -RUBRIQUE1 = 'PHYSICAL PARAMETERS' -NIVEAU = 2 -AIDE = 'Epaisseur des algues en m' -AIDE1 = 'Thickness of algae in m' - -NOM = 'TYPE DES ALGUES' -NOM1 = 'ALGAE TYPE' -TYPE = ENTIER -INDEX = 82 -MNEMO = 'ALGTYP' -TAILLE = 0 -DEFAUT = 1 -DEFAUT1 = 1 -CHOIX = '1="SPHERE"'; - '2="IRIDAEA FLACCIDA (PROCHE DES ULVES)"'; - '3="PELVETIOPSIS LIMITATA"'; - '4="GIGARTINA LEPTORHYNCHOS"' -CHOIX1= '1="SPHERE"'; - '2="IRIDAEA FLACCIDA (CLOSE TO ULVA)"'; - '3="PELVETIOPSIS LIMITATA"'; - '4="GIGARTINA LEPTORHYNCHOS"' -RUBRIQUE = 'PARAMETRES PHYSIQUES' -RUBRIQUE1 = 'PHYSICAL PARAMETERS' -NIVEAU = 2 -AIDE = 'Type des algues. Pour le choix 1 les algues seront -modelisees comme des spheres, pour les autres choix voir Gaylord -et al. (1994).' -AIDE1 = 'Algae type. For choice 1 the algae particles will be -modeled as spheres, and for the other choices see Gaylord et -al. (1994)' - -NOM = 'OPTION POUR LES CARACTERISTIQUES' -NOM1 = 'OPTION FOR CHARACTERISTICS' -TYPE = ENTIER -INDEX = 83 -MNEMO = 'OPTCHA' -TAILLE = 0 -DEFAUT = 1 -DEFAUT1 = 1 -CHOIX='1="fortes"';'2="faibles"' -CHOIX1='1="strong"';'2="weak"' -RUBRIQUE = 'PARAMETRES PHYSIQUES' -RUBRIQUE1 = 'PHYSICAL PARAMETERS' -NIVEAU = 2 -AIDE = '1: forme forte 2: forme faible' -AIDE1 = '1: strong form 2: weak form' - -NOM = 'MAXIMUM D''ITERATIONS POUR LES SCHEMAS DE CONVECTION' -NOM1 = 'MAXIMUM NUMBER OF ITERATIONS FOR ADVECTION SCHEMES' -TYPE = ENTIER -INDEX = 84 -MNEMO = 'MAXADV' -TAILLE = 0 -DEFAUT = 10 -DEFAUT1 = 10 -RUBRIQUE = 'PARAMETRES NUMERIQUES' -RUBRIQUE1 = 'NUMERICAL PARAMETERS' -NIVEAU = 2 -AIDE = 'Seulement pour schemes 13 et 14' -AIDE1 = 'Only for schemes 13 and 14' - -NOM = 'MODELE DE DIFFUSION STOCHASTIQUE' -NOM1 = 'STOCHASTIC DIFFUSION MODEL' -TYPE = ENTIER -INDEX = 85 -MNEMO = 'STOCHA' -TAILLE = 0 -DEFAUT = 0 -DEFAUT1 = 0 -CHOIX='0="Pas de modele"';'1="??"';'2="??"' -CHOIX1='0="No model"';'1="??"';'2="??"' -RUBRIQUE = 'PARAMETRES NUMERIQUES' -RUBRIQUE1 = 'NUMERICAL PARAMETERS' -NIVEAU = 2 -AIDE = 'Pour les particules : flotteurs, algues, hydrocarbures' -AIDE1 = 'Meant for particles: drogues, algae, oil spills' - -NOM = 'NOMBRE DE POINTS DE GAUSS POUR LES CARACTERISTIQUES FAIBLES' -NOM1 = 'NUMBER OF GAUSS POINTS FOR WEAK CHARACTERISTICS' -TYPE = ENTIER -INDEX = 86 -MNEMO = 'NGAUSS' -TAILLE = 0 -DEFAUT = 3 -DEFAUT1 = 3 -CHOIX='1="1 point"';'3="3 points"';'6="6 points"' -CHOIX1='1="1 point"';'3="3 points"';'6="6 points"' -RUBRIQUE = 'PARAMETRES NUMERIQUES' -RUBRIQUE1 = 'NUMERICAL PARAMETERS' -NIVEAU = 2 -AIDE = 'Voir les release notes 6.3' -AIDE1 = 'See release notes 6.3' - -NOM = 'MASS-LUMPING POUR LES CARACTERISTIQUES FAIBLES' -NOM1 = 'MASS-LUMPING FOR WEAK CHARACTERISTICS' -TYPE = REAL -INDEX = 71 -MNEMO = 'AGGLOW' -TAILLE = 0 -DEFAUT = 0. -DEFAUT1 = 0. -RUBRIQUE = 'PARAMETRES PHYSIQUES' -RUBRIQUE1 = 'PHYSICAL PARAMETERS' -NIVEAU = 2 -AIDE = 'Applique a la matrice de masse' -AIDE1 = 'To be applied to the mass matrix' - -NOM = 'TYPE DES SEUILS' -NOM1 = 'TYPE OF WEIRS' -TYPE = ENTIER -INDEX = 87 -MNEMO = 'TYPSEUIL' -TAILLE = 1 -DEFAUT = 1 -DEFAUT1 = 1 -CHOIX= -'1="HORIZONTAL AVEC MEME NOMBRE DE NOEUDS AMONT/AVAL (Solution historique avec bord)"'; -'2="GENERALE (Nouvelle solution avec pts sources)"' -CHOIX1= -'1="HORIZONTAL WITH SAME NUMBER OF NODES UPSTREAM/DOWNSTREAM (Historical solution with bord)"'; -'2="GENERAL (New solution with sources points)"' -RUBRIQUE = 'PARAMETRES NUMERIQUES';'GENERAL' -RUBRIQUE1 = 'NUMERICAL PARAMETERS';'GENERAL' -NIVEAU = 1 -AIDE = 'Méthode de traitement des seuils' -AIDE1 = 'Method for treatment of weirs' - -/ -/ POUR LES LANCEURS PERL : -/ - -NOM = 'LISTE DES FICHIERS' -NOM1 = 'LIST OF FILES' -TYPE = CARACTERE -INDEX = 99 -MNEMO = '' -TAILLE = 43 -DEFAUT = 'FICHIER DES PARAMETRES'; - 'DICTIONNAIRE'; - 'FICHIER FORTRAN'; - 'FICHIER DE GEOMETRIE'; - 'FICHIER DES CONDITIONS AUX LIMITES'; - 'FICHIER DES RESULTATS'; - 'FICHIER DU CALCUL PRECEDENT'; - 'FICHIER DES FONDS'; - 'FICHIER DE DONNEES BINAIRE 1'; - 'FICHIER DE DONNEES BINAIRE 2'; - 'FICHIER DE DONNEES FORMATE 1'; - 'FICHIER DE DONNEES FORMATE 2'; - 'FICHIER DE RESULTATS BINAIRE'; - 'FICHIER DE RESULTATS FORMATE'; - 'FICHIER DE REFERENCE'; - 'FICHIER DES FRONTIERES LIQUIDES'; - 'FICHIER DE DONNEES POUR LE FROTTEMENT'; - 'FICHIER DELWAQ DES VOLUMES'; - 'FICHIER DELWAQ DES SURFACES DE FLUX'; - 'FICHIER DELWAQ DES FLUX VERTICAUX'; - 'FICHIER DELWAQ DE LA SALINITE'; - 'FICHIER DELWAQ DES SURFACES DU FOND'; - 'FICHIER DELWAQ DES ECHANGES ENTRE NOEUDS'; - 'FICHIER DELWAQ DES DISTANCES ENTRE NOEUDS'; - 'FICHIER DELWAQ DE LA TEMPERATURE'; - 'FICHIER DELWAQ DE LA VITESSE'; - 'FICHIER DELWAQ DE LA DIFFUSION'; - 'FICHIER DE COMMANDE DELWAQ'; - 'FICHIER DES COURBES DE TARAGE'; - 'FICHIER DES SOURCES'; - 'FICHIER DES SECTIONS DE CONTROLE'; - 'FICHIER DE SORTIE DES SECTIONS DE CONTROLE'; - 'FICHIER DE COMMANDES HYDROCARBURES'; - 'FICHIER DES CONSTANTES HARMONIQUES'; - 'FICHIER DU MODELE DE MAREE'; - 'BASE ASCII DE DONNEES DE MAREE'; - 'BASE BINAIRE 1 DE DONNEES DE MAREE'; - 'BASE BINAIRE 2 DE DONNEES DE MAREE'; - 'FICHIER DE DONNEES DES SEUILS'; - 'FICHIER DE DONNEES DES SIPHONS'; - 'FICHIER DE DONNEES DES BUSES'; - 'FICHIER DE DONNEES DES BRECHES'; - 'FICHIER DES FLOTTEURS' -DEFAUT1 ='STEERING FILE'; - 'DICTIONARY'; - 'FORTRAN FILE'; - 'GEOMETRY FILE'; - 'BOUNDARY CONDITIONS FILE'; - 'RESULTS FILE'; - 'PREVIOUS COMPUTATION FILE'; - 'BOTTOM TOPOGRAPHY FILE'; - 'BINARY DATA FILE 1'; - 'BINARY DATA FILE 2'; - 'FORMATTED DATA FILE 1'; - 'FORMATTED DATA FILE 2'; - 'BINARY RESULTS FILE'; - 'FORMATTED RESULTS FILE'; - 'REFERENCE FILE'; - 'LIQUID BOUNDARIES FILE'; - 'FRICTION DATA FILE'; - 'VOLUMES DELWAQ FILE'; - 'EXCHANGE AREAS DELWAQ FILE'; - 'VERTICAL FLUXES DELWAQ FILE'; - 'SALINITY DELWAQ FILE'; - 'VELOCITY DELWAQ FILE'; - 'DIFFUSIVITY DELWAQ FILE'; - 'BOTTOM SURFACES DELWAQ FILE'; - 'EXCHANGES BETWEEN NODES DELWAQ FILE'; - 'NODES DISTANCES DELWAQ FILE'; - 'TEMPERATURE DELWAQ FILE'; - 'DELWAQ STEERING FILE'; - 'STAGE-DISCHARGE CURVES FILE'; - 'SOURCES FILE'; - 'SECTIONS INPUT FILE'; - 'SECTIONS OUTPUT FILE'; - 'OILSPILL STEERING FILE'; - 'HARMONIC CONSTANTS FILE'; - 'TIDAL MODEL FILE'; - 'ASCII DATABASE FOR TIDE'; - 'BINARY DATABASE 1 FOR TIDE'; - 'BINARY DATABASE 2 FOR TIDE'; - 'WEIRS DATA FILE'; - 'CULVERT DATA FILE'; - 'TUBES DATA FILE'; - 'BREACHES DATA FILE'; - 'DROGUES FILE' -RUBRIQUE = 'FICHIERS' -RUBRIQUE1 = 'FILES' -NIVEAU = 1 -AIDE = 'Noms des fichiers exploites par le code' -AIDE1= 'File names of the used files' -// -//----Librairies du code------------------------------------------- -// -//Conventions de notation : -// VVV = version -// MMM = mode (debug ou non) -// PPP = plateforme -// LLL = extension d'une librairie ("a" ou "lib") -// | = separateur dans un path (/ sous Unix, \ sous NT) -// -// ex : "telemac2d|tel2d_VVV|PPP|telemac2dMMMVVV.LLL" - -NOM = 'DESCRIPTION DES LIBRAIRIES' -NOM1 = 'DESCRIPTION OF LIBRARIES' -TYPE = CARACTERE -INDEX = 54 -MNEMO = 'LINKLIBS' -TAILLE = 8 -DEFAUT = 'builds|PPP|lib|telemac2dMMMVVV.LLL'; -'builds|PPP|lib|sisypheMMMVVV.LLL'; -'builds|PPP|lib|tomawacMMMVVV.LLL'; -'builds|PPP|lib|dredgesimMMMVVV.LLL'; -'builds|PPP|lib|biefMMMVVV.LLL'; -'builds|PPP|lib|damoMMMVVV.LLL'; -'builds|PPP|lib|parallelMMMVVV.LLL'; -'builds|PPP|lib|specialMMMVVV.LLL' - -DEFAUT1 = 'builds|PPP|lib|telemac2dMMMVVV.LLL'; -'builds|PPP|lib|sisypheMMMVVV.LLL'; -'builds|PPP|lib|tomawacMMMVVV.LLL'; -'builds|PPP|lib|dredgesimMMMVVV.LLL'; -'builds|PPP|lib|biefMMMVVV.LLL'; -'builds|PPP|lib|damoMMMVVV.LLL'; -'builds|PPP|lib|parallelMMMVVV.LLL'; -'builds|PPP|lib|specialMMMVVV.LLL' - -RUBRIQUE = 'ENTREES-SORTIES, GENERALITES';'CALCUL' -RUBRIQUE1 = 'INPUT-OUTPUT, INFORMATION';'COMPUTATIONAL INFORMATION' -NIVEAU = 1 -AIDE = 'Description des librairies de T2D' -AIDE1 = 'LIBRARIES description' - -//----Executable par defaut du code--------------------------------- -// -//Conventions de notation : -// VVV = version -// MMM = mode (debug ou non) -// PPP = plateforme -// | = separateur dans un path (/ sous Unix, \ sous NT) -// -// ex : "telemac2d|tel2d_VVV|PPP|telemac2dMMMVVV.LLL" - -NOM = 'EXECUTABLE PAR DEFAUT' -NOM1 = 'DEFAULT EXECUTABLE' -TYPE = CARACTERE -INDEX = 57 -MNEMO = 'EXEDEF' -TAILLE = 1 -DEFAUT = 'builds|PPP|bin|telemac2dMMMVVV.exe' -DEFAUT1 = 'builds|PPP|bin|telemac2dMMMVVV.exe' -RUBRIQUE = 'ENTREES-SORTIES, GENERALITES';'CALCUL' -RUBRIQUE1 = 'INPUT-OUTPUT, INFORMATION';'COMPUTATIONAL INFORMATION' -NIVEAU = 1 -AIDE = 'Executable par defaut de T2D' -AIDE1 = 'Default executable for T2D' - -NOM = 'EXECUTABLE PARALLELE PAR DEFAUT' -NOM1 = 'DEFAULT PARALLEL EXECUTABLE' -TYPE = CARACTERE -INDEX = 58 -MNEMO = 'EXEDEFPARA' -TAILLE = 1 -DEFAUT = 'builds|PPP|bin|telemac2dMMMVVV.exe' -DEFAUT1 = 'builds|PPP|bin|telemac2dMMMVVV.exe' -RUBRIQUE = 'ENTREES-SORTIES, GENERALITES';'CALCUL' -RUBRIQUE1 = 'INPUT-OUTPUT, INFORMATION';'COMPUTATIONAL INFORMATION' -NIVEAU = 1 -AIDE = 'Executable parallele par defaut de T2D' -AIDE1 = 'Default parallel executable for T2D' - diff --git a/OldCodes/ts/test_cata.py b/OldCodes/ts/test_cata.py deleted file mode 100644 index 748fd68d..00000000 --- a/OldCodes/ts/test_cata.py +++ /dev/null @@ -1,22 +0,0 @@ -from Accas import * -import types - -JdC = JDC_CATA (code = 'MAP', - execmodul = None, - ) -# ====================================================================== -# Catalog entry for the MAP function : c_pre_interfaceBody_mesh -# ====================================================================== -INITIALIZATION=PROC(nom="INITIALIZATION",op=None, -Control_Of_Limits = SIMP( statut='o',typ='bool', - defaut=False , - fr = 'UTILISER AVEC LE MOT-CLE : VALEURS LIMITES, LE PROGRAMME SARRETE SI LES LIMITES SUR U,V,H OU T SONT DEPASSEES', - ang= 'USE WITH THE KEY-WORD : LIMIT VALUES, THE PROGRAM IS STOPPED IF THE LIMITS ON U,V,H, OR T ARE TRESPASSED', - ), - -Limit_Values = SIMP( statut='o',typ='R', - defaut=(-1000.0, 9000.0, -1000.0, 1000.0, -1000.0, 1000.0, -1000.0, 1000.0) , - max=8 , - fr = 'Utilise avec le mot-cle CONTROLE DES LIMITES valeurs mini et maxi acceptables pour H,U,V et T dans lordre suivant : min(H) max(H) min(U) max(U) min(V) max(V) min(T) max(T)', - ang= 'To be used with the key-word CONTROL OF LIMITS min and max acceptable values for H,U,V et T in the following order : min(H) max(H) min(U) max(U) min(V) max(V) min(T) max(T)', - ) ) diff --git a/OldCodes/ts/test_dicoparser.py b/OldCodes/ts/test_dicoparser.py deleted file mode 100644 index 87017b65..00000000 --- a/OldCodes/ts/test_dicoparser.py +++ /dev/null @@ -1,140 +0,0 @@ - -import dicoparser -import unittest - -class Test1( unittest.TestCase ): - def runTest(self): - d = dicoparser.Dicoparser( '', '', '' ) - t = d.parse_tokens( """ - / comment - TYPE = LOGIQUE - INDEX = 23 - MNEMO = 'VERLIM' - MNEMO1 = '' - NOM = 'CONTROLE DES LIMITES' - RUBRIQUE1 = 'ENTREES-SORTIES, GENERALITES';'CONTROLE' - CHOIX1 = '0="list of tests"'; - '1="gradient simple"'; - '2="conj gradient"'; - '3="Lagrange interp."' - AIDE = 'UTILISER AVEC LE MOT-CLE : VALEURS LIMITES, LE PROGRAMME - S''ARRETE SI LES LIMITES SUR U,V,H OU T SONT DEPASSEES' - DEFAUT = -1000.;9000.;-1000. -""" ) - self.assertEqual( len(t), 39 ) - self.assertEqual( t[0], 'TYPE' ) - self.assertEqual( t[1], '=' ) - self.assertEqual( t[2], 'LOGIQUE' ) - self.assertEqual( t[3], 'INDEX' ) - self.assertEqual( t[4], '=' ) - self.assertEqual( t[5], '23' ) - self.assertEqual( t[6], 'MNEMO' ) - self.assertEqual( t[7], '=' ) - self.assertEqual( t[8], 'VERLIM' ) - self.assertEqual( t[9], 'MNEMO1' ) - self.assertEqual( t[10], '=' ) - self.assertEqual( t[11], '' ) - self.assertEqual( t[12], 'NOM' ) - self.assertEqual( t[13], '=' ) - self.assertEqual( t[14], 'CONTROLE DES LIMITES' ) - self.assertEqual( t[15], 'RUBRIQUE1' ) - self.assertEqual( t[16], '=' ) - self.assertEqual( t[17], 'ENTREES-SORTIES, GENERALITES' ) - self.assertEqual( t[18], ';' ) - self.assertEqual( t[19], 'CONTROLE' ) - self.assertEqual( t[20], 'CHOIX1' ) - self.assertEqual( t[21], '=' ) - self.assertEqual( t[22], '0="list of tests"' ) - self.assertEqual( t[23], ';' ) - self.assertEqual( t[24], '1="gradient simple"' ) - self.assertEqual( t[25], ';' ) - self.assertEqual( t[26], '2="conj gradient"' ) - self.assertEqual( t[27], ';' ) - self.assertEqual( t[28], '3="Lagrange interp."' ) - self.assertEqual( t[29], 'AIDE' ) - self.assertEqual( t[30], '=' ) - self.assertEqual( t[31], 'UTILISER AVEC LE MOT-CLE : VALEURS LIMITES, LE PROGRAMME S\'ARRETE SI LES LIMITES SUR U,V,H OU T SONT DEPASSEES' ) - self.assertEqual( t[32], 'DEFAUT' ) - self.assertEqual( t[33], '=' ) - self.assertEqual( t[34], '-1000.' ) - self.assertEqual( t[35], ';' ) - self.assertEqual( t[36], '9000.' ) - self.assertEqual( t[37], ';' ) - self.assertEqual( t[38], '-1000.' ) - - d.expand_values( t ) - self.assertEqual( t[24], ( '1', 'gradient simple' ) ) - self.assertEqual( t[26], ( '2', 'conj gradient' ) ) - self.assertEqual( t[28], ( '3', 'Lagrange interp.' ) ) - - lst = d.convert_to_tuples( t ) - self.assertEqual( len(lst), 9 ) - self.assertEqual( lst[0], ( 'TYPE', 'LOGIQUE' ) ) - self.assertEqual( lst[1], ( 'INDEX', '23' ) ) - self.assertEqual( lst[2], ( 'MNEMO', 'VERLIM' ) ) - self.assertEqual( lst[3], ( 'MNEMO1', '' ) ) - self.assertEqual( lst[4], ( 'NOM', 'CONTROLE DES LIMITES' ) ) - self.assertEqual( lst[5], ( 'RUBRIQUE1', ['ENTREES-SORTIES, GENERALITES', 'CONTROLE'] ) ) - self.assertEqual( lst[6], ( 'CHOIX1', [('0','list of tests'), ('1','gradient simple'), ('2','conj gradient'), ('3','Lagrange interp.') ] ) ) - self.assertEqual( lst[7], ( 'AIDE', 'UTILISER AVEC LE MOT-CLE : VALEURS LIMITES, LE PROGRAMME S\'ARRETE SI LES LIMITES SUR U,V,H OU T SONT DEPASSEES' ) ) - self.assertEqual( lst[8], ( 'DEFAUT', ['-1000.', '9000.', '-1000.' ] ) ) - -class Test2( unittest.TestCase ): - def runTest(self): - d = dicoparser.Dicoparser( '', '', '' ) - self.assertEqual( d.are_equal( 'WIND IN SUMMER', 'Wind_In_Summer' ), True ) - self.assertEqual( d.are_equal( 'HELLO', 'Bonjour' ), False ) - self.assertEqual( d.are_equal( 'MAXIMUM NUMBER OF ITERATIONS FOR SOLVER', 'Maximum_Number_Of_Iterations_For_Solver' ), True ) - #self.assertEqual( d.are_equal( 'WIND IN SUMMER', 'Wind' ), True ) #TODO: check the specification about this issue - -class Test3( unittest.TestCase ): - def runTest(self): - d = dicoparser.Dicoparser( 'test', 'NOM', 'NOM1' ) - #print d.data.keys() - #for aKey, aValue in d.data['TYPE OF ADVECTION'].iteritems(): - # print aKey, aValue - - self.assertEqual( d.data['TYPE OF ADVECTION'].keys(), ['AIDE', 'NOM', 'DEFAUT1', 'INDEX', 'NIVEAU', 'TAILLE', 'CHOIX1', 'RUBRIQUE1', 'MNEMO', 'NOM1', 'AIDE1', 'COMPORT', 'DEFAUT', 'CHOIX', 'RUBRIQUE', 'TYPE' ] ) - self.assertEqual( d.translate( 'Control_Of_Limits', 'NOM' ), 'Controle Des Limites' ) - self.assertEqual( d.translate( 'Type_Of_Advection', 'NOM' ), 'Forme De La Convection' ) - self.assertEqual( d.translate( 'Type_Of_Advection', '', 'Characteristics', 'CHOIX1', 'CHOIX' ), 'Caracteristiques' ) - -class Test4( unittest.TestCase ): - def runTest(self): - d = dicoparser.Dicoparser( 'telemac2dv6p3.dico', 'NOM', 'NOM1' ) - self.assertEqual( d.translate( 'Reference_File_Format', 'NOM' ), 'Format Du Fichier De Reference' ) - self.assertEqual( d.translate( 'Reference_File_Format', '', 'Serafin', 'CHOIX1', 'CHOIX' ), 'Serafin' ) - self.assertEqual( d.translate( 'Reference_File_Format', '', 'Serafin', 'DEFAUT1', 'DEFAUT' ), 'Serafin' ) - self.assertEqual( d.translate( 'Destination', '', 'CHE43A', 'DEFAUT1', 'DEFAUT' ), 'Che43a' ) - self.assertEqual( d.translate( 'Destination', '', 0.0, 'DEFAUT1', 'DEFAUT' ), '' ) - self.assertEqual( d.translate( 'Destination', '', (1,2,3), 'DEFAUT1', 'DEFAUT' ), '' ) - -class Test5( unittest.TestCase ): - def runTest(self): - d = dicoparser.Dicoparser( '', '', '' ) - t = d.parse_tokens( """ -CHOIX = '" "="pas de biliotheque"'; -'"$PVM_ROOT/lib/$PVM_ARCH/libpvm3.a"="bibliotheque PVM1"' -""" ) - self.assertEqual( len(t), 5 ) - self.assertEqual( t[0], 'CHOIX' ) - self.assertEqual( t[1], '=' ) - self.assertEqual( t[2], '" "="pas de biliotheque"' ) - self.assertEqual( t[3], ';' ) - self.assertEqual( t[4], '"$PVM_ROOT/lib/$PVM_ARCH/libpvm3.a"="bibliotheque PVM1"' ) - - -t1 = Test1() -t1.runTest() - -t2 = Test2() -t2.runTest() - -t3 = Test3() -t3.runTest() - -t4 = Test4() -t4.runTest() - -t5 = Test5() -t5.runTest() diff --git a/OldCodes/ts/test_translator.py b/OldCodes/ts/test_translator.py deleted file mode 100644 index 186d89b2..00000000 --- a/OldCodes/ts/test_translator.py +++ /dev/null @@ -1,19 +0,0 @@ -#! /usr/bin/env python -import prefs - -from translator import * -import unittest - -class Test1( unittest.TestCase ): - def runTest(self): - self.assertEqual( normalize( 'a_b' ), 'a__b' ) - self.assertEqual( normalize( 'a b' ), 'a_b' ) - self.assertEqual( normalize( 'a b' ), 'a__b' ) - self.assertEqual( normalize( 'a__b' ), 'a____b' ) - -t1 = Test1() -t1.runTest() - -#translate( 'telemac2dv6p3', 'test_cata', 'test' ) -#translate( 'telemac2dv6p3', 'Telemac_Cata_nouveau', 'test' ) -translate( 'telemac2dv6p3', 'Telemac_Cata', 'main', 'not_translated.txt' ) diff --git a/OldCodes/ts/translator.py b/OldCodes/ts/translator.py deleted file mode 100755 index c07c4293..00000000 --- a/OldCodes/ts/translator.py +++ /dev/null @@ -1,89 +0,0 @@ - -import copy -from tsparser import * -from Accas import * -from Noyau import * -from dicoparser import * - -def normalize( theTranslation ): - aTranslation = theTranslation - if '_' in aTranslation: - aTranslation = '__'.join( aTranslation.split( '_' ) ) - - aTranslation = aTranslation.replace( ' ', '_' ) - return aTranslation - -def translate( theDicoFile, theCataFile, theTSFile, theNotTranslatedFile = '' ): - - SPECIAL = ['into', 'defaut'] - DICO = Dicoparser( theDicoFile, 'NOM', 'NOM1' ) - PARSER = TSparser() - - def is_ok( theName, theObject ): - ok = isinstance( theObject, N_ENTITE.ENTITE ) or theName in SPECIAL - return ok - - def name_to_attr( theName ): - if theName=='into': - return 'CHOIX' - else: - return theName.upper() - - def dico_tr( theObject, theName, theParentObj, theParentName ): - #print "dicotr:", theObject, theName, theParentObj, theParentName - aTrans = '' - if theName in SPECIAL: - if theObject!=None: - #print theName, theObject - anAttrTr = name_to_attr( theName ) - anAttr = anAttrTr + '1' - if isinstance( theObject, basestring ): - #print theParentName, theName, theObject, '=>', - aTrans = DICO.translate( theParentName, '', theObject, anAttr, anAttrTr ) - #print aTrans - elif isinstance( theObject, tuple ): - #print theParentName, theName - for anItem in theObject: - #print anItem - if isinstance( anItem, basestring ) and '=' in anItem: - aList = DICO.convert_to_tuples( DICO.parse_tokens( anItem ) ) - #print " ", aList - for aListItem in aList: - if isinstance( aListItem, tuple ): - aKey, aValue = aListItem - #print " ", aValue, '=>', - aTrans = DICO.translate( theParentName, '', aValue, anAttr, anAttrTr ) - #print aTrans - #print - pass - - else: - #print theName, '=>', - aTrans = DICO.translate( theName, 'NOM' ) - #print aTrans - - aTrans = normalize( aTrans ) - return '', aTrans - - def sub( theObject ): - aDict = {} - if hasattr( theObject, 'entites' ): - aDict = copy.copy( theObject.entites ); - for s in SPECIAL: - if hasattr( theObject, s ): - aDict[s] = getattr( theObject, s ) - return aDict - - PARSER.check_object = is_ok - PARSER.translation = dico_tr - PARSER.sub_objects = sub - PARSER.parse( theCataFile, theTSFile ) - - if len( theNotTranslatedFile ) > 0: - PARSER.saveNotTranslated( theNotTranslatedFile ) - - #print - #print "Translations:" - #for key, value in p.data[''].iteritems(): - # print key, "=>", value - diff --git a/OldCodes/ts/tsparser.py b/OldCodes/ts/tsparser.py deleted file mode 100644 index 9a9b492f..00000000 --- a/OldCodes/ts/tsparser.py +++ /dev/null @@ -1,127 +0,0 @@ - -import os.path -from xml.etree import ElementTree as ET -from xml.etree.ElementTree import * -from xml.dom import minidom -import re - -def get_file_name( theScript, theFileName, theExtension ): - anExt = '.'+theExtension - if theFileName=='': - return theScript+anExt - if theFileName.lower().endswith( anExt ): - return theFileName - else: - return theFileName + anExt - -class TSparser: - def __init__( self ): - self.data = {} - self.check_object = None # the function to check if the object is suitable for translation - self.translation = None # the function to translate the object's name - self.sub_objects = None # the function to get sub-objects of the given object - self.not_translated = {} - - def add( self, theContext, theSource, theTranslation ): - if len(theSource)==0 or len(theTranslation)==0: - return - if not theContext in self.data: - self.data[theContext] = {} - self.data[theContext][theSource] = theTranslation - - def saveXML( self, theFileName, theEncoding, theDocType, theRootElem ): - aRoughRepr = ET.tostring( theRootElem, theEncoding ) - aDoc = minidom.parseString( aRoughRepr ) - aDocType = minidom.getDOMImplementation( '' ).createDocumentType( theDocType, '', '' ) - aDoc.insertBefore( aDocType, aDoc.documentElement ) - anXmlRepr = aDoc.toprettyxml( indent=' ' ) - anXmlLines = anXmlRepr.split( '\n' )[1:] - anXmlRepr = '\n'.join( anXmlLines ) - anExpr = re.compile( '>\n\s+([^<>\s].*?)\n\s+\g<1> 0: - self.add( aContext, aName, aTranslation ) - elif self.isOK( '', anObject ) and len( aName ) > 0: - #print anObject, aName - self.not_translated[aName] = '' - - aSubObjects = {} - if self.sub_objects: - aSubObjects = self.sub_objects( anObject ) - self.parseObjects( aSubObjects, anObject, aName ) - - def saveNotTranslated( self, theFileName ): - aFile = open( theFileName, 'w' ) - aNotTranslated = self.not_translated.keys() - aNotTranslated.sort() - for aKey in aNotTranslated: - aFile.write( aKey + '\n' ) - aFile.close() diff --git a/PSEN_Eficas/ExtractGeneratorLoadLineandTransfoDico.py b/PSEN_Eficas/ExtractGeneratorLoadLineandTransfoDico.py deleted file mode 100755 index d64f1ab8..00000000 --- a/PSEN_Eficas/ExtractGeneratorLoadLineandTransfoDico.py +++ /dev/null @@ -1,174 +0,0 @@ -#NetworkFile = r"C:\Users\J15773\Documents\GTDosier\PSENdocs\Victoria ALL - EFICAS PSEN\Data\2030Conv_HFP2.sav" -#PSSE_PATH = "C:/Program Files/PTI/PSSE33/PSSBIN" #emplacement de PSSE - - -def ExtractGeneratorLoadLineandTransfoDico(NetworkFile,PSSE_PATH): - - import os - import sys - - sys.path.append(PSSE_PATH) - os.environ['PATH'] += ';' + PSSE_PATH + ';' - - import psspy - import redirect - - ###initialization PSSE - psspy.psseinit(10000) - _i=psspy.getdefaultint() - _f=psspy.getdefaultreal() - _s=psspy.getdefaultchar() - redirect.psse2py() - - # Silent execution of PSSe - islct=6 # 6=no output; 1=standard - psspy.progress_output(islct) - - #open Network File - psspy.case(NetworkFile) - - #Extract Loads - sid = -1 #all buses - flag = 1 #all in service loads/generators (4 all loads/generators) - - - string = ['NUMBER'] - ierr,iarray = psspy.aloadint(sid,flag,string) - - string = ['NAME','ID','EXNAME'] - ierr,carray = psspy.aloadchar(sid,flag,string) - - LoadDico = {} # [Bus name, load ID, extended bus name, bus number] - for i in range(len(iarray[0])): - idname = "Lo" + str(int(carray[1][i])) - loadname = carray[0][i].strip()+ "__" + idname - loadname = loadname.replace(" ","_") - loadname = loadname.replace(".","_") - loadname = loadname.replace("&","and") - try: - int(loadname[0]) - loadname="_" + loadname - except: - pass - LoadDico[loadname]= {} - LoadDico[loadname]['BusName'] = carray[0][i].strip() - LoadDico[loadname]['ID'] = carray[1][i] - LoadDico[loadname]['BusExName'] =carray[2][i] - LoadDico[loadname]['BusNum']=iarray[0][i] - - #Extract Generators - sid = -1 #all buses - flag = 1 #all in service loads/generators (4 all loads/generators) - - string = ['NUMBER'] - ierr,iarray = psspy.amachint(sid,flag,string) - - string = ['NAME','ID','EXNAME'] - ierr,carray = psspy.amachchar(sid,flag,string) - - MachineDico = {} # [Bus name, machine ID, extended bus name, bus number] - for i in range(len(iarray[0])): - idname = "Gr" + str(int(carray[1][i])) - machinename = carray[0][i].strip()+ "__" + idname - machinename = machinename.replace(" ","_") - machinename = machinename.replace(".","_") - machinename = machinename.replace("&","and") - try: - int(machinename[0]) - machinename="_" + machinename - except: - pass - MachineDico[machinename]={} - MachineDico[machinename]['NAME'] = carray[0][i].strip() - MachineDico[machinename]['ID'] = carray[1][i] - MachineDico[machinename]['EXNAME'] =carray[2][i] - MachineDico[machinename]['NUMBER']=iarray[0][i] - - #Extract Lignes - sid = -1 - owner = 1 - ties = 1 - flag = 2 #6 for two-winding transfos - entry = 1 #each branch once, not both directions - string = ['FROMNUMBER','TONUMBER'] - ierr,iarray = psspy.abrnint(sid,owner,ties,flag,entry,string) - string = ['FROMNAME','TONAME','FROMEXNAME','TOEXNAME','ID'] - ierr,carray = psspy.abrnchar(sid,owner,ties,flag,entry,string) - - LineDico = {} #[linename, Bus name 1, Bus name 2, ID, extended bus name 1, extended bus name 2, bus number 1, bus number 2] - for i in range(len(iarray[0])): - idname = carray[4][i] - if '@' in idname: - idname = idname.replace('@','Br') - else: - idname = 'Li' + str(int(idname)) - linename =carray[0][i].strip() + "__" + carray[1][i].strip() + "__" + idname - linename = linename.replace(" ","_") - linename = linename.replace(".","_") - linename = linename.replace("&","and") - try: - int(linename[0]) - linename="_" + linename - except: - pass - LineDico[linename]={} - LineDico[linename]['FROMNAME']=carray[0][i].strip() - LineDico[linename]['TONAME']=carray[1][i].strip() - LineDico[linename]['ID']=carray[4][i] - LineDico[linename]['FROMEXNAME']=carray[2][i] - LineDico[linename]['TOEXNAME']=carray[3][i] - LineDico[linename]['FROMNUMBER']=iarray[0][i] - LineDico[linename]['TONUMBER']=iarray[1][i] - - #Extract Transfos - sid = -1 - owner = 1 - ties = 1 - flag = 6 #two-winding transfos - entry = 1 #each branch once, not both directions - string = ['FROMNUMBER','TONUMBER'] - ierr,iarray = psspy.abrnint(sid,owner,ties,flag,entry,string) - string = ['FROMNAME','TONAME','FROMEXNAME','TOEXNAME','ID'] - ierr,carray = psspy.abrnchar(sid,owner,ties,flag,entry,string) - - TfoDico = {} #[linename, Bus name 1, Bus name 2, machine ID, extended bus name 1, extended bus name 2, bus number 1, bus number 2] - for i in range(len(iarray[0])): - idname = 'Tr' + str(int(carray[4][i])) - tfoname = carray[0][i].strip() + "__" + carray[1][i].strip() + "__" + idname - tfoname = tfoname.replace(" ","_") - tfoname = tfoname.replace(".","_") - tfoname = tfoname.replace("&","and") - try: - int(tfoname[0]) - tfoname="_" + tfoname - except: - pass - TfoDico[tfoname]={} - TfoDico[tfoname]['FROMNAME']=carray[0][i].strip() - TfoDico[tfoname]['TONAME']=carray[1][i].strip() - TfoDico[tfoname]['ID']=carray[4][i] - TfoDico[tfoname]['FROMEXNAME']=carray[2][i] - TfoDico[tfoname]['TOEXNAME']=carray[3][i] - TfoDico[tfoname]['FROMNUMBER']=iarray[0][i] - TfoDico[tfoname]['TONUMBER']=iarray[1][i] - - return MachineDico, LoadDico, LineDico, TfoDico - - -#MachineDico, LoadDico, LineDico, TfoDico = ExtractGeneratorLoadLineandTransfoDico(NetworkFile,PSSE_PATH) - - -def ExtractGeneratorLoadLineandTransfoDico2(NetworkFile,PSSE_PATH): - print ('jjjjjjjjjjjjjjjjjjjjjj') -#def ExtractGeneratorLoadLineandTransfoDico(NetworkFile,PSSE_PATH): - MachineDico={'M1':'M1','M2':'M2','M3':'M3','M4':'M4','B6_BUS13__1':'AZ','CSPRING__1':'DD','GT12B__1':'ER','BSTMB__1':'JJ'} - LoadDico={'C1':'C1','C2':'C2','C3':'C3','C4':'C4'} - LineDico={'L1':'L1','L2':'L2','L3':'L3','L4':'L4'} - TfoDico={'T1':'T1','T2':'T2','T3':'T3','T4':'T4'} - MDico={'MZ1':'MZ1','MZ2':'MZ2','MZ3':'MZ3','MZ4':'MZ4'} - if NetworkFile == '/home/A96028/PSEN/PSEN_V8/Code/PSEN_Eficas/faux2.sav': - print ("sans T1") - TfoDico={'T2':'T2','T3':'T3','T4':'T4'} - - - return MachineDico, LoadDico, LineDico, TfoDico, MDico diff --git a/PSEN_Eficas/ExtractGeneratorandLoadList.py b/PSEN_Eficas/ExtractGeneratorandLoadList.py deleted file mode 100755 index 08f45480..00000000 --- a/PSEN_Eficas/ExtractGeneratorandLoadList.py +++ /dev/null @@ -1,70 +0,0 @@ -NetworkFile = r"C:\Users\J15773\Documents\GTDosier\PSENdocs\Victoria ALL - EFICAS PSEN\Data\2030Conv_HFP2.sav" -PSSE_PATH = "C:/Program Files/PTI/PSSE33/PSSBIN" #emplacement de PSSE - -def ExtractGeneratorandLoadList(NetworkFile,PSSE_PATH): - - import os - import sys - - print NetworkFile - print PSSE_PATH - sys.path.append(PSSE_PATH) - os.environ['PATH'] += ';' + PSSE_PATH + ';' - - import psspy - import redirect - - ###initialization PSSE - psspy.psseinit(10000) - _i=psspy.getdefaultint() - _f=psspy.getdefaultreal() - _s=psspy.getdefaultchar() - redirect.psse2py() - - # Silent execution of PSSe - islct=6 # 6=no output; 1=standard - psspy.progress_output(islct) - - #open Network File - psspy.case(NetworkFile) - - #Extract Loads - sid = -1 #all buses - flag = 1 #all in service loads/generators (4 all loads/generators) - - - string = ['NUMBER'] - ierr,iarray = psspy.aloadint(sid,flag,string) - - string = ['NAME','ID','EXNAME'] - ierr,carray = psspy.aloadchar(sid,flag,string) - - LoadList = [] # [Bus name, load ID, extended bus name, bus number] - for i in range(len(iarray[0])): - LoadList.append([carray[0][i].strip(),carray[1][i],carray[2][i],iarray[0][i]]) - - #Extract Generators - sid = -1 #all buses - flag = 1 #all in service loads/generators (4 all loads/generators) - - string = ['NUMBER'] - ierr,iarray = psspy.amachint(sid,flag,string) - - string = ['NAME','ID','EXNAME'] - ierr,carray = psspy.amachchar(sid,flag,string) - - MachineList = [] # [Bus name, machine ID, extended bus name, bus number] - for i in range(len(iarray[0])): - MachineList.append([carray[0][i].strip(),carray[1][i],carray[2][i],iarray[0][i]]) - - return MachineList, LoadList - -def ExtractGeneratorandLoadList2(NetworkFile,PSSE_PATH): - MachineList = [['GT 6', '1 ', 'GT 6 11.500', 10], ['GT 7', '1 ', 'GT 7 11.500', 11], ['GT10', '1 ', 'GT10 11.500', 12], ['GT 5', '1 ', 'GT 5 11.500', 13], ['NEWHUNT', '1 ', 'NEWHUNT 11.500', 15], ['BSTMB', '1 ', 'BSTMB 11.500', 23], ['HYD_MAG', '1 ', 'HYD_MAG 6.9000', 25], ['RF1', '1 ', 'RF1 13.800', 37], ['OH2', '1 ', 'OH2 13.800', 41], ['RF2', '1 ', 'RF2 13.800', 42], ['GT3', '1 ', 'GT3 11.500', 43], ['OH3', '1 ', 'OH3 13.800', 47], ['OH4', '1 ', 'OH4 13.800', 50], ['OH6', '1 ', 'OH6 13.800', 52], ['GT 11', '1 ', 'GT 11 11.500', 56], ['B6_BUS13', '1 ', 'B6_BUS13 13.800', 57], ['GT8', '1 ', 'GT8 11.500', 58], ['HYDRR', '1 ', 'HYDRR 6.9000', 59], ['GT9', '1 ', 'GT9 11.500', 63], ['HYD_UWR', '1 ', 'HYD_UWR 6.9000', 64], ['HYD_RIOB', '1 ', 'HYD_RIOB 6.9000', 65], ['HRYD_LW', '1 ', 'HRYD_LW 6.9000', 68], ['GT13B', '1 ', 'GT13B 11.500', 76], ['GT12B', '1 ', 'GT12B 11.500', 77], ['CSPRING', '1 ', 'CSPRING 69.000', 91], ['OLDHARB1', '1 ', 'OLDHARB1 138.00', 114], ['WIGTON', '1 ', 'WIGTON 0.6900', 202], ['JEPWK1', '1 ', 'JEPWK1 11.500', 300], ['JEPWK1', '2 ', 'JEPWK1 11.500', 300], ['JEPWK1', '3 ', 'JEPWK1 11.500', 300], ['JEPWK2', '1 ', 'JEPWK2 11.500', 301], ['JEPWK2', '2 ', 'JEPWK2 11.500', 301], ['JEPWK2', '3 ', 'JEPWK2 11.500', 301], ['W_MUN1', '1 ', 'W_MUN1 69.000', 503], ['HYD_RHORN', '1 ', 'HYD_RHORN 69.000', 711]] - - LoadList= [['TREDEGAR', '1 ', 'TREDEGAR 69.000', 5], ['HOPE', '1 ', 'HOPE 69.000', 16], ['MILCHELT', '1 ', 'MILCHELT 69.000', 17], ['PARADISE', '1 ', 'PARADISE 69.000', 24], ['BLEDGE', '1 ', 'BLEDGE 69.000', 26], ['CANE RIV', '1 ', 'CANE RIV 69.000', 27], ['HIGHGATE', '1 ', 'HIGHGATE 69.000', 29], ['QUEENS D', '1 ', 'QUEENS D 69.000', 30], ['OCHO', '1 ', 'OCHO 69.000', 32], ['BOGUE_69', '1 ', 'BOGUE_69 69.000', 33], ['ROSE HAL', '1 ', 'ROSE HAL 69.000', 35], ['OH1', '1 ', 'OH1 13.800', 36], ['RF1', '1 ', 'RF1 13.800', 37], ['CEMENT C', '1 ', 'CEMENT C 69.000', 38], ['OBAY69', '1 ', 'OBAY69 69.000', 39], ['DUNCANS6', '1 ', 'DUNCANS6 69.000', 40], ['OH2', '1 ', 'OH2 13.800', 41], ['RF2', '1 ', 'RF2 13.800', 42], ['3MLS69', '1 ', '3MLS69 69.000', 45], ['WBLVD69', '1 ', 'WBLVD69 69.000', 46], ['OH3', '1 ', 'OH3 13.800', 47], ['PORT ANT', '1 ', 'PORT ANT 69.000', 48], ['OH4', '1 ', 'OH4 13.800', 50], ['B6_BUS13', '1 ', 'B6_BUS13 13.800', 57], ['GREENWOO', '1 ', 'GREENWOO 69.000', 60], ['LYSSONS', '1 ', 'LYSSONS 69.000', 61], ['PORUS', '1 ', 'PORUS 69.000', 62], ['R RIVER', '1 ', 'R RIVER 69.000', 66], ['MARTHA B', '1 ', 'MARTHA B 69.000', 67], ['WKH69', '1 ', 'WKH69 69.000', 69], ['PNASUS69', '1 ', 'PNASUS69 69.000', 70], ['ANNOTTO', '1 ', 'ANNOTTO 69.000', 71], ['UW RIVER', '1 ', 'UW RIVER 69.000', 74], ['KNDAL 69', '1 ', 'KNDAL 69 69.000', 75], ['MONYMUSK', '1 ', 'MONYMUSK 69.000', 78], ['OROCABES', '1 ', 'OROCABES 69.000', 79], ['MAGGOTTY', '1 ', 'MAGGOTTY 69.000', 80], ['UP PARK', '1 ', 'UP PARK 69.000', 82], ['TWICKENH', '1 ', 'TWICKENH 69.000', 85], ['MAY PEN', '1 ', 'MAY PEN 69.000', 88], ['PAJ', '1 ', 'PAJ 69.000', 89], ['GROAD_69', '1 ', 'GROAD_69 69.000', 90], ['CSPRING', '1 ', 'CSPRING 69.000', 91], ['S_ TREE6', '1 ', 'S_ TREE6 69.000', 92], ['NAGGOS H', '1 ', 'NAGGOS H 69.000', 94], ['GOODYEAR', '1 ', 'GOODYEAR 69.000', 99], ['HBAY_69', '1 ', 'HBAY_69 69.000', 101], ['RFORT69', '1 ', 'RFORT69 69.000', 102], ['RHODEN P', '1 ', 'RHODEN P 69.000', 105], ['DUHANEY6', '1 ', 'DUHANEY6 69.000', 107], ['CARDIFF', '1 ', 'CARDIFF 69.000', 109], ['JAB13.8', '1 ', 'JAB13.8 13.800', 112], ['JAM13.8', '1 ', 'JAM13.8 13.800', 113]] - return MachineList, LoadList - -if __name__ == "__main__": - MachineList,LoadList= ExtractGeneratorandLoadList2(NetworkFile,PSSE_PATH) - print MachineList, LoadList diff --git a/PSEN_Eficas/PSEN/PSEN_GUI.py b/PSEN_Eficas/PSEN/PSEN_GUI.py deleted file mode 100755 index 32b22dbe..00000000 --- a/PSEN_Eficas/PSEN/PSEN_GUI.py +++ /dev/null @@ -1,1220 +0,0 @@ -# -*- coding: cp1252 -*- -# ======================== PSEN graphic interface ======================== -# This Python script creates a graphical interface to parameter and launch PSEN - -# ============== Import useful modules ================= -from Tkinter import * -from ttk import Combobox -import tkFileDialog, os -import subprocess -from time import sleep -import numpy as np - -# ============== Initialize some variables ================= -config=[] -for i in range (60) : # config[] will be used as a list of preferences for PSEN study - config.append('') - -root = Tk() # Creates the main window -root.wm_withdraw() # The main window is withdrawn/hidden - -CIST=PhotoImage(file="lib\CISTlogo.gif") # Load images -header=PhotoImage(file="lib\header.gif") -WTcurve=PhotoImage(file="lib\WTcurve.gif") - -# ============== Define functions ================= - -# browse_PSSe function is used to get the .SAV file path from the user. -# tkFileDialog.askopenfilename offers a browsing interface to the user -def browse_PSSe() : - global savAdress - savAdress = tkFileDialog.askopenfilename(parent=fenPref,title='Open PSSe SAV file',filetypes=[('SAV files', '.sav')]) - savAdressD.set(savAdress) - fenPref.update_idletasks() # this updates the values in the fenPref window (defined in preferences()) - print 'Added: '+str(savAdress) - return savAdress - -# browse_ENR function is used to get a .CSV file path from the user -# The CSV file contains a list of machines and their type (PV, Wind, Interconnexion) -# tkFileDialog.askopenfilename offers a browsing interface to the user -def browse_ENR() : - global ENRpath - ENRpath = tkFileDialog.askopenfilename(parent=fenPref,title='Open ENR configuration',filetypes=[('CSV files', '.csv'),('All files', '.*')]) - ENRpathD.set(ENRpath) - fenPref.update_idletasks() # this updates the values in the fenPref window (defined in preferences()) - print 'Added: '+str(ENRpath) - return ENRpath - -# browse_folder function is used to get a folder path from the user -# This folder is used to save all study files (.sav, .csv, ...) -# tkFileDialog.askdirectory offers a browsing interface to the user -def browse_folder() : - global folderPATH - folderPATH = tkFileDialog.askdirectory(parent=fenPref,title='Choose working folder') - folderPATHD.set(folderPATH) - fenPref.update_idletasks() # this updates the values in the fenPref window (defined in preferences()) - print 'Added: '+str(folderPATH) - return folderPATH - -# savePref function is used to save preferences input in fenPref window (defined in preferences()) -def savePref() : - global Vcin, Vrate, Vcout, Rho, lossrate # These variables are global because they are used in savePSEN() - try : # Test if the user has defined all the requested variables - savAdress - folderPATH - ENRpath - VcinD - VrateD - VcoutD - RhoD - lossrateD - except NameError : # If not a new window pops up and explains the data is missing - fenetre2 = Tk() - champ_label = Label(fenetre2, text="ERROR\nNo file and/or folder selected", fg="red", font=("Century Gothic",16)) - champ_label.pack(side=TOP, fill=BOTH, expand=YES) - else : # If it's OK it gets the data from the fields and save it into config[] - config[9]=VcinD.get(); config[10]=VrateD.get(); config[11]=VcoutD.get(); config[12]=RhoD.get(); config[13]=lossrateD.get(); config[2]=ENRpathD.get(); config[1]=folderPATHD.get(); config[0]=savAdressD.get() - Vcin=VcinD.get() - Vrate=VrateD.get() - Vcout=VcoutD.get() - Rho=RhoD.get() - lossrate=lossrateD.get() - f=open("lib\pref.psen", "w") # Creates a config file with values to give to PSSEWrapper.py - f.write(str(savAdress)+";"+str(folderPATH)+";"+str(ENRpath)+";"+str(Vcin)+";"+str(Vrate)+";"+str(Vcout)+";"+str(Rho)+";"+str(lossrate)+";0\n") - f.close() - try : - fenPref - except NameError : - pass - else : - fenPref.destroy() - print 'Preferences saved' - -# refresh_pref function is used to refresh fields value in fenPref window (defined in preferences()) -def refresh_pref () : - try : - saved - except NameError : # if saved hasn't been created yet there is no data to update - pass - print 'No configuration yet' - else : # if it has been created we set fields variables and update the window with update_idletasks() - print 'Update values' - global continpath - global model_Path - global PSSEfolder - VcinD.set(config[9]) - VrateD.set(config[10]) - VcoutD.set(config[11]) - RhoD.set(config[12]) - lossrateD.set(config[13]) - ENRpathD.set(ENRpath) - folderPATHD.set(folderPATH) - savAdressD.set(savAdress) - fenPref.update_idletasks() - -# savePSEN function is used to create a .PSEN file containing all users parameters and preferences -def savePSEN() : - global savePATH - global saved - saved=1 - - # === We get all the fields data === - - MCS_num=var_MCS.get() - N_1_opt=N_1.get() - PV_opt=PV.get() - Wind1_opt=Wind1.get() - Wind2_opt=Wind1.get() - Load_opt=Load.get() - - load_type=choix_load.get() - load1=var_loadn1.get() - load2=var_loadn2.get() - load3=var_loadn3.get() - load4=var_loadn4.get() - loadPath=loadPathD.get() - - wind11_type=choix_wind11.get() - wind11=var_windn11.get() - wind12=var_windn12.get() - wind13=var_windn13.get() - wind14=var_windn14.get() - wind1Path=wind1PathD.get() - - wind21_type=choix_wind21.get() - wind21=var_windn21.get() - wind22=var_windn22.get() - wind23=var_windn23.get() - wind24=var_windn24.get() - wind2Path=wind2PathD.get() - - pv_type=choix_pv.get() - pv1=var_pvn1.get() - pv2=var_pvn2.get() - pv3=var_pvn3.get() - pv4=var_pvn4.get() - pvPath=pvPathD.get() - - C01=C01D.get() - C02=C02D.get() - C03=C03D.get() - C04=C04D.get() - C12=C12D.get() - C14=C14D.get() - C13=C13D.get() - C23=C23D.get() - C24=C24D.get() - C34=C34D.get() - - fuel_cost_opt = fuel_cost.get() - bus_shunt_opt = bus_shunt.get() - bus_loads_opt = bus_loads.get() - - rate_choice = rate_choiceD.get() - - try : - contin_lines_Path - contin_groups_Path - except NameError : # If the user hasn't choose a path for the contingency CSV file, we create it as blank to save the data - contin_lines_Path='' - contin_groups_Path='' - - # We ask the user the name and path of the file - savePATH = tkFileDialog.asksaveasfilename(parent=fenetre,title='Save the file as ...',defaultextension='.psen',filetypes=[('PSEN file', '.psen')]) - try : - len(savePATH)>0 - except NameError : - pass - else : # Writing all the variables in a specific order (could be improved with XML file for instance) - f=open(savePATH,'w') - f.write(str(savAdress)+";"+str(folderPATH)+";"+str(ENRpath)+";" - +str(contin_lines_Path)+";"+str(contin_groups_Path)+";"+str(model_Path)+";"+str(PSSEfolder)+";"+str(orange_Path)+";"+str(python_Path)+";" - +str(Vcin)+";"+str(Vrate)+";"+str(Vcout)+";"+str(Rho)+";"+str(lossrate)+";" - +str(MCS_num)+";"+str(N_1_opt)+";"+str(PV_opt)+";"+str(Wind1_opt)+";"+str(Wind2_opt)+";"+str(Load_opt)+";" - +str(load_type)+";"+str(load1)+";"+str(load2)+";"+str(load3)+";"+str(load4)+";"+str(loadPath)+";" - +str(wind11_type)+";"+str(wind11)+";"+str(wind12)+";"+str(wind13)+";"+str(wind14)+";"+str(wind1Path)+";" - +str(wind21_type)+";"+str(wind21)+";"+str(wind22)+";"+str(wind23)+";"+str(wind24)+";"+str(wind2Path)+";" - +str(pv_type)+";"+str(pv1)+";"+str(pv2)+";"+str(pv3)+";"+str(pv4)+";"+str(pvPath)+";" - +str(C01)+";"+str(C02)+";"+str(C03)+";"+str(C04)+";"+str(C12)+";"+str(C13)+";"+str(C14)+";"+str(C23)+";"+str(C24)+";"+str(C34)+";" - +str(fuel_cost_opt)+";"+str(bus_shunt_opt)+";"+str(bus_loads_opt)+";" - +str(rate_choice)+";0\n") - f.close() - print 'Successfuly saved case study' - -# preferences function is a new window to update some PSEN parameters -def preferences () : - global fenPref - global savAdressD - global folderPATHD - global ENRpathD - global VcinD - global VrateD - global VcoutD - global RhoD - global lossrateD - global config - - fenPref = Toplevel(root) # Creating a new window - fenPref.wm_iconbitmap('lib\PSEN.ico') # Window icon - fenPref.wm_title('PSEN - Probabilistic Studies of Electrical Networks') # Window title - - f0p=Frame(fenPref, height=70, width=500, bd=2, relief=RIDGE) - f0p.pack_propagate(0) # don't shrink - f0p.pack() - - Label(f0p, text="PSSe .SAV file", fg="black", justify=LEFT, font=("Century Gothic",12)).pack(anchor=NW, padx=10, expand=YES) - savAdressD=StringVar() - Entry(f0p, textvariable=savAdressD, width=50).pack(side=LEFT, padx=15, expand=YES) - Button(f0p, text="Load SAV file", command=browse_PSSe, height=15, width=30).pack(side=LEFT, fill=BOTH, expand=1, padx=5, pady=3) - - fline=Frame(fenPref, height=2, width=500, bg="grey") - fline.pack_propagate(0) # don't shrink - fline.pack(expand=1) - - f1p=Frame(fenPref, height=70, width=500, bd=2, relief=RIDGE) - f1p.pack_propagate(0) # don't shrink - f1p.pack() - - Label(f1p, text="Working folder adress :", fg="black", justify=LEFT, font=("Century Gothic",12)).pack(anchor=NW, padx=10, expand=YES) - folderPATHD=StringVar() - Entry(f1p, textvariable=folderPATHD, width=50).pack(side=LEFT, padx=15, expand=YES) - Button(f1p, text="Browse to working folder", command=browse_folder, height=15, width=30).pack(side=LEFT, fill=BOTH, expand=1, padx=5, pady=3) - - fline=Frame(fenPref, height=5, width=500, bg="grey") - fline.pack_propagate(0) # don't shrink - fline.pack(expand=1) - - f3p=Frame(fenPref, height=100, width=500, bd=2, relief=RIDGE) - f3p.pack_propagate(0) # don't shrink - f3p.pack() - - Label(f3p, text="Machines configuration :", fg="black", justify=LEFT, font=("Century Gothic",12)).pack(anchor=NW, padx=10, expand=YES) - Label(f3p, text="N.B. Use the PSSe machine tab, insert a new column in first and write PV for PV, W1 for wind 1, W2 for wind 2 or do nothing for non-ENR. Save as CSV", fg="black", justify=LEFT, wraplength=450).pack(anchor=NW, padx=10, expand=YES) - ENRpathD=StringVar() - Entry(f3p, textvariable=ENRpathD, width=50).pack(side=LEFT, padx=15, expand=YES) - Button(f3p, text="Browse to ENR CSV file", command=browse_ENR, height=15, width=30).pack(side=LEFT, fill=BOTH, expand=1, padx=5, pady=3) - - fline=Frame(fenPref, height=5, width=500, bg="grey") - fline.pack_propagate(0) # don't shrink - fline.pack(expand=1) - - f4p=Frame(fenPref, height=120, width=500, bd=2, relief=RIDGE) - f4p.pack_propagate(0) # don't shrink - f4p.pack() - - # Creates 5 entry for wind turbines characteristics - Label(f4p, text="Wind 1 & 2 characteristics :", fg="black", justify=LEFT, font=("Century Gothic",12)).pack(anchor=NW, padx=10, expand=YES) - Label(f4p, text="If wind law, enter the following parameters : \nVcin, Vrate, Vcout, rho (air density kg.m-3, base is 1.225), lossrate (base is 0.05)\nIf power law: Vcin=0, Vrate=1, Vcout>=1. Law must take values between 0 and 1.", fg="black", justify=LEFT, wraplength=450).pack(anchor=NW, padx=10, expand=YES) - VcinD = StringVar() - Entry(f4p, textvariable=VcinD, width=13).pack(side=LEFT, padx=5, pady=5) - VrateD = StringVar() - Entry(f4p, textvariable=VrateD, width=13).pack(side=LEFT, padx=5, pady=5) - VcoutD = StringVar() - Entry(f4p, textvariable=VcoutD, width=13).pack(side=LEFT, padx=5, pady=5) - RhoD = StringVar() - Entry(f4p, textvariable=RhoD, width=13).pack(side=LEFT, padx=5, pady=5) - lossrateD = StringVar() - Entry(f4p, textvariable=lossrateD, width=13).pack(side=LEFT, padx=5, pady=5) - - fline=Frame(fenPref, height=2, width=500, bg="grey") - fline.pack_propagate(0) # don't shrink - fline.pack(expand=1) - - f2p=Frame(fenPref, height=40, width=500, bd=2, relief=RIDGE) - f2p.pack_propagate(0) # don't shrink - f2p.pack() - - Button(f2p, text="Save and quit", command=savePref, height=1, width=30).pack(anchor=N, fill=BOTH, expand=1, padx=5, pady=3) - - # Refresh the window data - refresh_pref () - -# openPSEN function opens a .PSEN file with all PSEN parameters, read them and updates their value in the GUI -def openPSEN () : - global openPATH - global folderPATH - global savAdress - global ENRpath - global contin_lines_Path - global contin_groups_Path - global model_Path - global loadPath, wind1Path, wind2Path, pvPath - global PSSEfolder - global orange_Path - global python_Path - global config - global Vcin; global Vrate; global Vcout; global Rho; global lossrate - global PVpath - - openPATH = tkFileDialog.askopenfilename(parent=fenetre,title='Open PSEN file',filetypes=[('PSEN files', '.psen'),('All files', '.*'),]) - try : - os.lstat(openPATH) - except WindowsError : # If the user doesn't choose any file we don't open it - pass - except NameError : # If the user doesn't choose any file we don't open it - pass - else : - global saved # Create a saved variable : config list will be created - saved=1 - f=open(openPATH,'r') - lines=f.readlines() - config=lines[0].split(";") - savAdress=config[0]; folderPATH=config[1]; ENRpath=config[2]; - contin_lines_Path=config[3]; contin_groups_Path=config[4]; model_Path=config[5]; PSSEfolder=config[6]; orange_Path=config[7]; python_Path=config[8]; - Vcin=config[9]; Vrate=config[10]; Vcout=config[11]; Rho=config[12]; lossrate=config[13]; - loadPath=config[25]; wind1Path=config[31]; wind2Path=config[37]; pvPath=config[43]; - refresh(config) - f=open("lib\pref.psen", "w") - f.write(str(savAdress)+";"+str(folderPATH)+";"+str(ENRpath)+";"+str(Vcin)+";"+str(Vrate)+";"+str(Vcout)+";"+str(Rho)+";"+str(lossrate)+";0\n") - f.close() - print 'Successfuly opened '+str(openPATH) - -# This function is not used yet -def numToName (num) : - num=int(num) - if num == 1 : - name = "Normal(mean, stdev)" - elif num == 2 : - name = "Uniform(min, max)" - elif num == 3 : - name = "Exponential(lambda, gamma)" - elif num == 4 : - name = "Weibull(alpha, beta, gamma)" - elif num == 5 : - name = "TruncatedNormal(mean, stdev, min, max)" - elif num == 6 : - name = "Value list ([[v1,p1],[v2,p2],...])" - elif num == 7 : - name = "Histogram (steps, probabilities)" - elif num == 10 : - name = "PDF from file ()" - elif num == 20 : - name = "Time Serie from file (stepsize, number of points)" - return name - -# refresh function updates fields values in fenetre window -def refresh (config) : - var_MCS.set(config[14]) - N_1.set(config[15]) - PV.set(config[16]) - Wind1.set(config[17]) - Wind2.set(config[18]) - Load.set(config[19]) - - choix_load.set(config[20]) - var_loadn1.set(config[21]) - var_loadn2.set(config[22]) - var_loadn3.set(config[23]) - var_loadn4.set(config[24]) - loadPathD.set(config[25]) - - choix_wind11.set(config[26]) - var_windn11.set(config[27]) - var_windn12.set(config[28]) - var_windn13.set(config[39]) - var_windn14.set(config[30]) - wind1PathD.set(config[31]) - - choix_wind21.set(config[32]) - var_windn21.set(config[33]) - var_windn22.set(config[34]) - var_windn23.set(config[35]) - var_windn24.set(config[36]) - wind2PathD.set(config[37]) - - choix_pv.set(config[38]) - var_pvn1.set(config[39]) - var_pvn2.set(config[40]) - var_pvn3.set(config[41]) - var_pvn4.set(config[42]) - pvPathD.set(config[43]) - - C01D.set(config[44]) - C02D.set(config[45]) - C03D.set(config[46]) - C04D.set(config[47]) - C12D.set(config[48]) - C13D.set(config[49]) - C14D.set(config[50]) - C23D.set(config[51]) - C24D.set(config[52]) - C34D.set(config[53]) - - fuel_cost.set(config[54]) - bus_shunt.set(config[55]) - bus_loads.set(config[56]) - - rate_choiceD.set(config[57]) - - fenetre.update_idletasks() - -# PCpreferences function creates a window in which the user can choose some requested paths -def PCpreferences (): - global fenPrefPC - global python_Path - global orange_Path - global PSSEfolder - - fenPrefPC = Tk() - fenPrefPC.wm_iconbitmap('lib\PSEN.ico') - fenPrefPC.wm_title('PSEN - Probabilistic Studies of Electrical Networks') - - Label(fenPrefPC, text="Configure PSEN for your computer : ", fg="black", justify=LEFT, font=("Century Gothic",12)).pack(anchor=NW, padx=10, expand=YES) - Button(fenPrefPC, text="Path to Python 2.7.exe...", command=browse_Python, height=3, width=30).pack(side=LEFT, fill=BOTH, expand=1, padx=5, pady=3) - Button(fenPrefPC, text="Path to orngCanvas.pyw...", command=browse_Orange, height=3, width=30).pack(side=LEFT, fill=BOTH, expand=1, padx=5, pady=3) - Button(fenPrefPC, text="Path to PSSE33\PSSBIN...", command=browse_PSSEfolder, height=3, width=30).pack(side=LEFT, fill=BOTH, expand=1, padx=5, pady=3) - Button(fenPrefPC, text="Save and close", command=closePCpref, height=3, width=15).pack(anchor=S, fill=BOTH, expand=1, padx=5, pady=10) - -def closePCpref () : - try : # Test if the user has defined all the requested variables - python_Path - orange_Path - PSSEfolder - except NameError : # If not a new window pops up and explains the data is missing - fenetre2 = Tk() - champ_label = Label(fenetre2, text="ERROR\nNo file and/or folder selected", fg="red", font=("Century Gothic",16)) - champ_label.pack(side=TOP, fill=BOTH, expand=YES) - else : # If it's OK it gets the data from the fields and save it into config[] - config[6]=PSSEfolder; config[7]=orange_Path; config[8]=python_Path - try : - fenPrefPC - except NameError : - pass - else : - fenPrefPC.destroy() - print 'Data saved' - -# PCpreferences function creates a window in which the user can choose some requested paths -def ContinPreferences (): - global fenPrefC - global contin_lines_Path - global contin_groups_Path - - fenPrefC = Tk() - fenPrefC.wm_iconbitmap('lib\PSEN.ico') - fenPrefC.wm_title('PSEN - Probabilistic Studies of Electrical Networks') - - Label(fenPrefC, text="Choose contingency files with probabilities : ", fg="black", justify=LEFT, font=("Century Gothic",12)).pack(anchor=NW, padx=10, expand=YES) - Button(fenPrefC, text="Path to branches file", command=contin_lines, height=3, width=30).pack(side=LEFT, fill=BOTH, expand=1, padx=5, pady=3) - Button(fenPrefC, text="Path to groups file", command=contin_groups, height=3, width=30).pack(side=LEFT, fill=BOTH, expand=1, padx=5, pady=3) - Button(fenPrefC, text="Save and close", command=closeCpref, height=3, width=15).pack(anchor=S, fill=BOTH, expand=1, padx=5, pady=10) - -def closeCpref () : - try : # Test if the user has defined all the requested variables - contin_lines_Path - contin_groups_Path - except NameError : # If not a new window pops up and explains the data is missing - fenetre2 = Tk() - champ_label = Label(fenetre2, text="ERROR\nNo file and/or folder selected", fg="red", font=("Century Gothic",16)) - champ_label.pack(side=TOP, fill=BOTH, expand=YES) - else : # If it's OK it gets the data from the fields and save it into config[] - config[3]=contin_lines_Path; config[4]=contin_lines_Path - f=open("lib\contin.psen", "w") - f.write(str(contin_lines_Path)+";"+str(contin_groups_Path)+";0\n") - f.close() - try : - fenPrefC - except NameError : - pass - else : - print 'Added :\n'+str(contin_lines_Path)+'\n'+str(contin_groups_Path) - fenPrefC.destroy() - print 'Saved contingency data' - -def contin_lines () : - global contin_lines_Path - contin_lines_Path = tkFileDialog.askopenfilename(parent=fenetre,title='Choose contingency lines file',filetypes=[('CSV file', '.csv'),('All files', '.*')]) - return contin_lines_Path - -def contin_groups () : - global contin_groups_Path - contin_groups_Path = tkFileDialog.askopenfilename(parent=fenetre,title='Choose contingency groups file',filetypes=[('CSV file', '.csv'),('All files', '.*')]) - return contin_groups_Path - -# Hide command window -if os.name == 'nt': # The functions only work with Windows OS - try: - import win32gui, win32console, win32con - win32console.GetConsoleWindow() # do nothing, this is just a test - def set_attached_console_visible(): - state=is_attached_console_visible() - win32gui.ShowWindow(win32console.GetConsoleWindow(), win32con.SW_HIDE if state else win32con.SW_SHOW) - def is_attached_console_visible(): - return win32gui.IsWindowVisible(win32console.GetConsoleWindow()) - except (ImportError, NotImplementedError): - pass - - -# config_save function is used to save configuration for PSSEWrapper -def config_save(): - MCS_num=var_MCS.get() - N_1_opt=N_1.get() - PV_opt=PV.get() - Wind1_opt=Wind1.get() - Wind2_opt=Wind2.get() - Load_opt=Load.get() - - load_type=choix_load.get() - load1=var_loadn1.get() - load2=var_loadn2.get() - load3=var_loadn3.get() - load4=var_loadn4.get() - loadPath=loadPathD.get() - - wind11_type=choix_wind11.get() - wind11=var_windn11.get() - wind12=var_windn12.get() - wind13=var_windn13.get() - wind14=var_windn14.get() - wind1Path=wind1PathD.get() - - wind21_type=choix_wind21.get() - wind21=var_windn21.get() - wind22=var_windn22.get() - wind23=var_windn23.get() - wind24=var_windn24.get() - wind2Path=wind2PathD.get() - - pv_type=choix_pv.get() - pv1=var_pvn1.get() - pv2=var_pvn2.get() - pv3=var_pvn3.get() - pv4=var_pvn4.get() - pvPath=pvPathD.get() - - C01=C01D.get() - C02=C02D.get() - C03=C03D.get() - C04=C04D.get() - C12=C12D.get() - C13=C13D.get() - C14=C14D.get() - C23=C23D.get() - C24=C24D.get() - C34=C34D.get() - - fuel_cost_opt = fuel_cost.get() - bus_shunt_opt = bus_shunt.get() - bus_loads_opt = bus_loads.get() - - rate_choice=rate_choiceD.get() - - f=open("lib\config.psen", "w") -# Write probabilistic model data - f.write(str(MCS_num)+";"+str(N_1_opt)+";"+str(PV_opt)+";"+str(Wind1_opt)+";"+str(Wind2_opt)+";"+str(Load_opt)+";"+str(fuel_cost_opt)+";"+str(bus_shunt_opt)+";"+str(bus_loads_opt)+"\n") - -# Write load probabilistic model data - if load_type == "Normal(mean, stdev)" : - f.write('1;'+str(load1)+";"+str(load2)+';0') - elif load_type == "Uniform(min, max)" : - f.write('2;'+str(load1)+";"+str(load2)+';0') - elif load_type == "Exponential(lambda, gamma)" : - f.write('3;'+str(load1)+";"+str(load2)+';0') - elif load_type == "Weibull(alpha, beta, gamma)" : - f.write('4;'+str(load1)+";"+str(load2)+";"+str(load3)+';0') - elif load_type == "TruncatedNormal(mean, stdev, min, max)" : - f.write('5;'+str(load1)+";"+str(load2)+";"+str(load3)+";"+str(load4)+';0') - elif load_type == "Value list (values, probabilities)" : - f.write('6;'+str(load1)+";"+str(load2)+';0') - elif load_type == 'Histogram (steps, probabilities)' : - f.write('7;'+str(load1)+";"+str(load2)+';0') - elif load_type== "PDF from file ()" : - try : - loadPath - except NameError : - fenetre2 = Tk() - Label(fenetre2, text="ERROR\nNo file selected", fg="red", font=("Century Gothic",16)).pack(side=TOP, fill=BOTH, expand=YES) - else : - f.write('10;'+loadPath+';0') - elif load_type== "Time Serie from file (stepsize, number of points)" : - try : - loadPath - except NameError : - fenetre2 = Tk() - Label(fenetre2, text="ERROR\nNo file selected", fg="red", font=("Century Gothic",16)).pack(side=TOP, fill=BOTH, expand=YES) - else : - f.write('20;'+loadPath+";"+str(load1)+";"+str(load2)+';0') - else : - fenetre2 = Tk() - Label(fenetre2, text="ERROR\nNo load model selected", fg="red", font=("Century Gothic",16)).pack(side=TOP, fill=BOTH, expand=YES) - f.write("\n") - -# Write wind 1 probabilistic model data - if wind11_type == "Normal(mean, stdev)" : - f.write('1;'+str(wind11)+";"+str(wind12)+';0') - elif wind11_type == "Uniform(min, max)" : - f.write('2;'+str(wind11)+";"+str(wind12)+';0') - elif wind11_type == "Exponential(lambda, gamma)" : - f.write('3;'+str(wind11)+";"+str(wind12)+';0') - elif wind11_type == "Weibull(alpha, beta, gamma)" : - f.write('4;'+str(wind11)+";"+str(wind12)+";"+str(wind13)+';0') - elif wind11_type == "TruncatedNormal(mean, stdev, min, max)" : - f.write('5;'+str(wind11)+";"+str(wind12)+";"+str(wind13)+";"+str(wind14)+';0') - elif wind11_type == "Value list (values, probabilities)" : - f.write('6;'+str(wind11)+";"+str(wind12)+';0') - elif wind11_type == 'Histogram (steps, probabilities)' : - f.write('7;'+str(wind11)+";"+str(wind12)+';0') - elif wind11_type== "PDF from file ()" : - try : - wind1Path - except NameError : - fenetre2 = Tk() - Label(fenetre2, text="ERROR\nNo file selected", fg="red", font=("Century Gothic",16)).pack(side=TOP, fill=BOTH, expand=YES) - else : - f.write('10;'+wind1Path+';0') - elif wind11_type== "Time Serie from file (stepsize, number of points)" : - try : - wind1Path - except NameError : - fenetre2 = Tk() - Label(fenetre2, text="ERROR\nNo file selected", fg="red", font=("Century Gothic",16)).pack(side=TOP, fill=BOTH, expand=YES) - else : - f.write('20;'+wind1Path+";"+str(wind11)+";"+str(wind12)+';0') - else : - fenetre2 = Tk() - Label(fenetre2, text="ERROR\nNo wind model selected", fg="red", font=("Century Gothic",16)).pack(side=TOP, fill=BOTH, expand=YES) - f.write("\n") - -# Write wind 2 probabilistic model data - if wind21_type == "Normal(mean, stdev)" : - f.write('1;'+str(wind21)+";"+str(wind22)+';0') - elif wind21_type == "Uniform(min, max)" : - f.write('2;'+str(wind21)+";"+str(wind22)+';0') - elif wind21_type == "Exponential(lambda, gamma)" : - f.write('3;'+str(wind21)+";"+str(wind22)+';0') - elif wind21_type == "Weibull(alpha, beta, gamma)" : - f.write('4;'+str(wind21)+";"+str(wind22)+";"+str(wind23)+';0') - elif wind21_type == "TruncatedNormal(mean, stdev, min, max)" : - f.write('5;'+str(wind21)+";"+str(wind22)+";"+str(wind23)+";"+str(wind24)+';0') - elif wind21_type == "Value list (values, probabilities)" : - f.write('6;'+str(wind21)+";"+str(wind22)+';0') - elif wind21_type == 'Histogram (steps, probabilities)' : - f.write('7;'+str(wind21)+";"+str(wind22)+';0') - elif wind21_type== "PDF from file ()" : - try : - wind2Path - except NameError : - fenetre2 = Tk() - Label(fenetre2, text="ERROR\nNo file selected", fg="red", font=("Century Gothic",16)).pack(side=TOP, fill=BOTH, expand=YES) - else : - f.write('10;'+wind2Path+';0') - elif wind21_type== "Time Serie from file (stepsize, number of points)" : - try : - wind2Path - except NameError : - fenetre2 = Tk() - Label(fenetre2, text="ERROR\nNo file selected", fg="red", font=("Century Gothic",16)).pack(side=TOP, fill=BOTH, expand=YES) - else : - f.write('20;'+wind2Path+";"+str(wind21)+";"+str(wind22)+';0') - else : - fenetre2 = Tk() - Label(fenetre2, text="ERROR\nNo wind 2 model selected", fg="red", font=("Century Gothic",16)).pack(side=TOP, fill=BOTH, expand=YES) - f.write("\n") - -# Write correlation probabilistic model data - f.write(str(C01)+";"+str(C02)+";"+str(C03)+";"+str(C04)+";"+str(C12)+";"+str(C13)+";"+str(C14)+";"+str(C23)+";"+str(C24)+";"+str(C34)+";0") - f.write("\n") - -# Write pv probabilistic model data - if pv_type == "Normal(mean, stdev)" : - f.write('1;'+str(pv1)+";"+str(pv2)+';0') - elif pv_type == "Uniform(min, max)" : - f.write('2;'+str(pv1)+";"+str(pv2)+';0') - elif pv_type == "Exponential(lambda, gamma)" : - f.write('3;'+str(pv1)+";"+str(pv2)+';0') - elif pv_type == "Weibull(alpha, beta, gamma)" : - f.write('4;'+str(pv1)+";"+str(pv2)+";"+str(pv3)+';0') - elif pv_type == "TruncatedNormal(mean, stdev, min, max)" : - f.write('5;'+str(pv1)+";"+str(pv2)+";"+str(pv3)+";"+str(pv4)+';0') - elif pv_type == "Value list (values, probabilities)" : - f.write('6;'+str(pv1)+";"+str(pv2)+';0') - elif pv_type == 'Histogram (steps, probabilities)' : - f.write('7;'+str(pv1)+";"+str(pv2)+';0') - elif pv_type== "PDF from file ()" : - try : - pvPath - except NameError : - fenetre2 = Tk() - champ_label = Label(fenetre2, text="ERROR\nNo file selected", fg="red", font=("Century Gothic",16)) - champ_label.pack(side=TOP, fill=BOTH, expand=YES) - else : - f.write('10;'+pvPath+';0') - elif pv_type== "Time Serie from file (stepsize, number of points)" : - try : - pvPath - except NameError : - fenetre2 = Tk() - champ_label = Label(fenetre2, text="ERROR\nNo file selected", fg="red", font=("Century Gothic",16)) - champ_label.pack(side=TOP, fill=BOTH, expand=YES) - else : - f.write('20;'+pvPath+";"+str(pv1)+";"+str(pv2)+';0') - else : - fenetre2 = Tk() - champ_label = Label(fenetre2, text="ERROR\nNo wind model selected", fg="red", font=("Century Gothic",16)) - champ_label.pack(side=TOP, fill=BOTH, expand=YES) - f.write("\n") - -# Write OPF data model - f.write(str(fuel_cost_opt) +";"+ str(bus_shunt_opt) +";"+ str(bus_loads_opt)+";0\n") - -# Write Imap rate choice - f.write(str(rate_choice)+";0\n") - - f.close() - - print 'Successfuly saved case data' - -# launch_PSEN function is used to run PSSEWrapper code with the configuration in the GUI -def launch_PSEN(): - config_save() # Current configuration is fist saved - PSEN_Path='PSEN/PSSEWrapper.py' - subprocess.Popen([python_Path,PSEN_Path]) - -# launch_orange function is used to launch Orange with the model file -def launch_Orange(): - subprocess.Popen([python_Path,orange_Path,model_Path]) - -# browse_load is used to select a .CSV file with a 1D array of load measures -def browse_load() : - global loadPath - loadPath = tkFileDialog.askopenfilename(parent=fenetre,title='Open file for load data estimation',filetypes=[('CSV files', '.csv'),('All files', '.*')]) - loadPathD.set(loadPath) - fenetre.update_idletasks() # updates the fields paths - return loadPath - -# browse_wind is used to select a .CSV file with a 1D array of wind measures -def browse_wind1() : - global wind1Path - wind1Path = tkFileDialog.askopenfilename(parent=fenetre,title='Open file for wind 1 data estimation',filetypes=[('CSV files', '.csv'),('All files', '.*')]) - wind1PathD.set(wind1Path) - fenetre.update_idletasks() # updates the fields paths - return wind1Path - -# browse_wind is used to select a .CSV file with a 1D array of wind measures -def browse_wind2() : - global wind2Path - wind2Path = tkFileDialog.askopenfilename(parent=fenetre,title='Open file for wind 2 data estimation',filetypes=[('CSV files', '.csv'),('All files', '.*')]) - wind2PathD.set(wind2Path) - fenetre.update_idletasks() # updates the fields paths - return wind2Path - -# browse_pv is used to select a .CSV file with a 1D array of PV measures -def browse_pv() : - global pvPath - pvPath = tkFileDialog.askopenfilename(parent=fenetre,title='Open file for PV data estimation',filetypes=[('CSV files', '.csv'),('All files', '.*')]) - pvPathD.set(pvPath) - fenetre.update_idletasks() # updates the fields paths - return pvPath - -# continload function is a browsing window returning the path to the contingency CSV file -def continload () : - global continpath - continpath = tkFileDialog.askopenfilename(parent=fenetre,title='Open contingency file',filetypes=[('CSV files', '.csv'),('All files', '.*')]) - try : - continpath - except NameError : - pass - else : # Saves the path into a file for PSSEWrapper.py - f=open("lib\contin.psen", "w") - f.write(str(continpath)+";0\n") - f.close() - return continpath - -# orangeload function is a browsing window returning the path to the orange model file OWS -def orangeload () : - global model_Path - model_Path = tkFileDialog.askopenfilename(parent=fenetre,title='Open orange file...',filetypes=[('Orange Widget Scripts', '.ows')]) - -def browse_PSSEfolder () : - global PSSEfolder - if os.path.exists("C:\Program Files\PTI\PSSE33\PSSBIN") == True : - path="C:\Program Files\PTI\PSSE33\PSSBIN" - else : - path="C:" - PSSEfolder = tkFileDialog.askdirectory(parent=fenPrefPC,title='Choose PSSE/PSSBIN folder', initialdir=path) - return PSSEfolder - -def browse_Python () : - global python_Path - if os.path.exists("C:\Python27") == True : - path="C:\Python27" - else : - path="C:" - python_Path = tkFileDialog.askopenfilename(parent=fenetre,title='Choose python.exe',filetypes=[('Executables', '.exe'),('All files', '.*')], initialdir=path) - return python_Path - -def browse_Orange () : - global orange_Path - if os.path.exists("C:\Python27\Lib\site-packages\Orange\OrangeCanvas") == True : - path="C:\Python27\Lib\site-packages\Orange\OrangeCanvas" - else : - path="C:" - orange_Path = tkFileDialog.askopenfilename(parent=fenetre,title='Choose orngCanvas.pyw',filetypes=[('Python file', '.pyw'),('All files', '.*')], initialdir=path) - return orange_Path -# On crée une fenêtre, racine de notre interface -def fenetre() : - global fenetre,var_MCS,N_1,PV,Wind1,Wind2,Load,choix_load,var_loadn1,var_loadn2,var_loadn3,var_loadn4,loadPathD,choix_wind11,var_windn11,var_windn12,var_windn13,var_windn14,wind1PathD,choix_wind21,var_windn21,var_windn22,var_windn23,var_windn24,wind2PathD,choix_pv,var_pvn1,var_pvn2,var_pvn3,var_pvn4,pvPathD,C01D,C02D,C03D,C04D,C12D,C13D,C14D,C23D,C24D,C34D,fuel_cost,bus_shunt,bus_loads,rate_choiceD - fenetre = Toplevel(root) - fenetre.wm_iconbitmap('lib\PSEN.ico') - fenetre.wm_title('PSEN - Probabilistic Studies of Electrical Networks') - - def openshort (event): - openPSEN() - def saveshort (event) : - savePSEN() - def quitshort (event) : - fenetre.destroy() - def orangeshort (event): - launch_Orange() - def runshort (event) : - launch_PSEN() - def prefshort (event) : - preferences() - - fenetre.bind_all("", quitshort) - fenetre.bind_all("", openshort) - fenetre.bind_all("", saveshort) - fenetre.bind_all("", orangeshort) - fenetre.bind_all("", runshort) - fenetre.bind_all("", prefshort) - - wd=500 - - # Create a toplevel menu - menubar=Menu(fenetre) - - filemenu = Menu(menubar, tearoff=0) - filemenu.add_command(label="Open PSEN", command=openPSEN, accelerator="Ctrl+O") - filemenu.add_command(label="Save PSEN", command=savePSEN, accelerator="Ctrl+S") - filemenu.add_separator() - filemenu.add_command(label="Exit", command=fenetre.quit, accelerator="Ctrl+Q") - menubar.add_cascade(label="File", menu=filemenu) - - editmenu = Menu(menubar, tearoff=0) - editmenu.add_command(label="Computer preferences", command=PCpreferences) - editmenu.add_separator() - editmenu.add_command(label="Study preferences", command=preferences, accelerator="Ctrl+P") - menubar.add_cascade(label="Edit", menu=editmenu) - - exemenu = Menu(menubar, tearoff=0) - exemenu.add_command(label="Run PSEN", command=preferences, accelerator="Ctrl+R") - menubar.add_cascade(label="Execution", menu=exemenu) - - contmenu = Menu(menubar, tearoff=0) - contmenu.add_command(label="Load contingency file", command=ContinPreferences) - menubar.add_cascade(label="Contingency analysis", menu=contmenu) - - orangemenu = Menu(menubar, tearoff=0) - orangemenu.add_command(label="Choose Orange model", command=orangeload) - orangemenu.add_command(label="Open Orange", command=launch_Orange, accelerator="Ctrl+A") - menubar.add_cascade(label="Orange analysis", menu=orangemenu) - - viewmenu = Menu(menubar, tearoff=0) - viewmenu.add_command(label="Show/Hide cmd window", command=set_attached_console_visible) - menubar.add_cascade(label="View", menu=viewmenu) - - # Display the menu - fenetre.config(menu=menubar) - - ftop=Frame(fenetre, height=140, width=2*wd, bd=2, relief=RIDGE) - ftop.pack_propagate(0) # don't shrink - ftop.pack() - - fmid=Frame(fenetre, height=500, width=2*wd) - fmid.pack_propagate(0) # don't shrink - fmid.pack() - - fleft=Frame(fmid, height=500, width=wd, bd=2, relief=RIDGE) - fleft.pack_propagate(0) # don't shrink - fleft.pack(side=LEFT) - - fright=Frame(fmid, height=500, width=wd, bd=2, relief=RIDGE) - fright.pack_propagate(0) # don't shrink - fright.pack(side=RIGHT) - - #canvas=Canvas(fenetre, width=600, height=100, bg='ivory') - Label(ftop, image=header).pack(side=TOP, fill=BOTH, expand=YES) - #canvas.pack(side=TOP,padx=5,pady=5) - - fline=Frame(ftop, height=2, width=2*wd, bg="grey") - fline.pack_propagate(0) # don't shrink - fline.pack(expand=1) - - fl0=Frame(fleft, height=55, width=wd) - fl0.pack_propagate(0) # don't shrink - fl0.pack() - - Label(fl0, text="Simulation parameters", fg="black", justify=LEFT, font=("Century Gothic",14)).pack(anchor=NW, padx=10, expand=NO) - - # Change Monte Carlo samplings - Label(fl0, text="Choose the number of samples:", fg="black").pack(side=LEFT, padx=10, expand=NO) - - var_MCS = StringVar() - Entry(fl0, textvariable=var_MCS, width=15).pack(side=LEFT, padx=15, expand=NO) - - fl01=Frame(fleft, height=30, width=wd) - fl01.pack_propagate(0) # don't shrink - fl01.pack() - - # Change N-1 study or not - N_1 = IntVar() - Checkbutton(fl01, text="N-1 study ?", variable=N_1).pack(side=LEFT, padx=2) - - # Include Load ? - Load = IntVar() - Checkbutton(fl01, text="Load study ?", variable=Load).pack(side=LEFT, padx=2) - - # Include Wind 1 ? - Wind1 = IntVar() - Checkbutton(fl01, text="Wind 1 study ?", variable=Wind1).pack(side=LEFT, padx=2) - - # Include Wind 2 ? - Wind2 = IntVar() - Checkbutton(fl01, text="Wind 2 study ?", variable=Wind2).pack(side=LEFT, padx=2) - - # Include PV - PV = IntVar() - Checkbutton(fl01, text="PV study ?", variable=PV).pack(side=LEFT, padx=2) - - Frame(fleft, height=2, width=wd, bg="grey").pack(pady=10, expand=NO) - - fl1=Frame(fleft, height=152, width=wd) - fl1.pack_propagate(0) # don't shrink - fl1.pack(pady=0, expand=NO) - - champ_label = Label(fl1, text="Correlation upper matrix :", fg="black", justify=LEFT, font=("Century Gothic",14)) - champ_label.pack(anchor=NW, padx=10, expand=NO) - - champ_label = Label(fl1, text="Load N-1 Wind1 Wind2 Solar ", fg="black") - champ_label.pack(anchor=NE, padx=10) - - fl11=Frame(fl1, height=25, width=wd) - fl11.pack_propagate(0) # don't shrink - fl11.pack(padx=10, expand=NO) - C04D = StringVar() - Entry(fl11, textvariable=C04D, width=10).pack(side=RIGHT, padx=10, pady=5) - C04D.set(0) - C03D = StringVar() - Entry(fl11, textvariable=C03D, width=10).pack(side=RIGHT, padx=10, pady=5) - C03D.set(0) - C02D = StringVar() - Entry(fl11, textvariable=C02D, width=10).pack(side=RIGHT, padx=10, pady=5) - C02D.set(0) - C01D = StringVar() - Entry(fl11, textvariable=C01D, width=10).pack(side=RIGHT, padx=10, pady=5) - C01D.set(0) - - champ_label = Label(fl11, text="Load ", fg="black") - champ_label.pack(side=RIGHT, padx=10) - - fl12=Frame(fl1, height=25, width=wd) - fl12.pack_propagate(0) # don't shrink - fl12.pack(padx=10, expand=NO) - C14D = StringVar() - Entry(fl12, textvariable=C14D, width=10).pack(side=RIGHT, padx=10, pady=5) - C14D.set(0) - C13D = StringVar() - Entry(fl12, textvariable=C13D, width=10).pack(side=RIGHT, padx=10, pady=5) - C13D.set(0) - C12D = StringVar() - Entry(fl12, textvariable=C12D, width=10).pack(side=RIGHT, padx=10, pady=5) - C12D.set(0) - - champ_label = Label(fl12, text="N-1 ", fg="black") - champ_label.pack(side=RIGHT, padx=10) - - fl13=Frame(fl1, height=25, width=wd) - fl13.pack_propagate(0) # don't shrink - fl13.pack(padx=10, expand=NO) - C24D = StringVar() - Entry(fl13, textvariable=C24D, width=10).pack(side=RIGHT, padx=10, pady=5) - C24D.set(0) - C23D = StringVar() - Entry(fl13, textvariable=C23D, width=10).pack(side=RIGHT, padx=10, pady=5) - C23D.set(0) - - champ_label = Label(fl13, text="Wind1 ", fg="black") - champ_label.pack(side=RIGHT, padx=10) - - fl14=Frame(fl1, height=25, width=wd) - fl14.pack_propagate(0) # don't shrink - fl14.pack(padx=10, expand=NO) - C34D = StringVar() - Entry(fl14, textvariable=C34D, width=10).pack(side=RIGHT, padx=10, pady=5) - C34D.set(0) - - champ_label = Label(fl14, text="Wind2 ", fg="black") - champ_label.pack(side=RIGHT, padx=10) - - fline=Frame(fleft, height=2, width=wd, bg="grey") - fline.pack(pady=10, expand=NO) - - fl2=Frame(fleft, height=20, width=wd) - fl2.pack_propagate(0) # don't shrink - fl2.pack() - - champ_label = Label(fl2, text="PSSe OPF parameters", fg="black", justify=LEFT, font=("Century Gothic",14)) - champ_label.pack(anchor=NW, padx=10, expand=NO) - - fl21=Frame(fleft, height=30, width=wd) - fl21.pack_propagate(0) # don't shrink - fl21.pack() - - # "Minimize fuel cost" - fuel_cost = IntVar() - Checkbutton(fl21, text="Minimize fuel cost", variable=fuel_cost).pack(side=LEFT, padx=10) - - # "Minimize adj. bus shunts" - bus_shunt = IntVar() - Checkbutton(fl21, text="Minimize adj. bus shunts", variable=bus_shunt).pack(side=LEFT, padx=10) - - # "Minimize adj. bus loads" - bus_loads = IntVar() - Checkbutton(fl21, text="Minimize adj. bus loads", variable=bus_loads).pack(side=LEFT, padx=10) - - fline=Frame(fleft, height=2, width=wd, bg="grey") - fline.pack(pady=10, expand=NO) - - fl3=Frame(fleft, height=20, width=wd) - fl3.pack_propagate(0) # don't shrink - fl3.pack() - - champ_label = Label(fl3, text="PSSe Irate choice :", fg="black", justify=LEFT, font=("Century Gothic",14)) - champ_label.pack(side=LEFT, padx=10, expand=NO) - - # "Minimize fuel cost" - rate_choiceD = IntVar() - Radiobutton(fl3, text="Rate A", variable=rate_choiceD, value=1).pack(side=LEFT, padx=20) - Radiobutton(fl3, text="Rate B", variable=rate_choiceD, value=2).pack(side=LEFT, padx=10) - Radiobutton(fl3, text="Rate C", variable=rate_choiceD, value=3).pack(side=LEFT, padx=10) - -#---- Choose the probability laws --- - #---- Load model ---- - fr0=Frame(fright, height=55, width=wd) - fr0.pack_propagate(0) # don't shrink - fr0.pack(expand=NO, anchor=NW) - - champ_label = Label(fr0, text="Load model :", fg="black", justify=LEFT, font=("Century Gothic",14)) - champ_label.pack(anchor=NW, padx=10, expand=NO) - - choix_load=StringVar() - laws_choice = ('Normal(mean, stdev)','Uniform(min, max)','Exponential(lambda, gamma)','Weibull(alpha, beta, gamma)', 'TruncatedNormal(mean, stdev, min, max)', 'Value list (values, probabilities)', 'Histogram (steps, probabilities)', 'PDF from file ()', 'Time Serie from file (stepsize, number of points)' ) - Combobox(fr0, textvariable = choix_load, values = laws_choice, state = 'readonly', width=50).pack(side=LEFT, padx=10, expand=NO) - choix_load.set('Choose your load model') - - fr01=Frame(fright, height=30, width=wd) - fr01.pack_propagate(0) # don't shrink - fr01.pack(expand=NO) - champ_label = Label(fr01, text="Parameters :", fg="black").pack(side=LEFT, padx=10, pady=0) - - var_loadn1 = StringVar() - Entry(fr01, textvariable=var_loadn1, width=12).pack(side=LEFT, padx=10, pady=5) - var_loadn2 = StringVar() - Entry(fr01, textvariable=var_loadn2, width=12).pack(side=LEFT, padx=10, pady=5) - var_loadn3 = StringVar() - Entry(fr01, textvariable=var_loadn3, width=12).pack(side=LEFT, padx=10, pady=5) - var_loadn4 = StringVar() - Entry(fr01, textvariable=var_loadn4, width=12).pack(side=LEFT, padx=10, pady=5) - - fr011=Frame(fright, height=35, width=wd) - fr011.pack_propagate(0) # don't shrink - fr011.pack(expand=NO) - - # We create the browse button - loadPathD=StringVar() - Entry(fr011, textvariable=loadPathD, width=50).pack(side=LEFT, padx=15, expand=YES) - - Button(fr011, text="Load data", command=browse_load).pack(side=LEFT, fill=BOTH, expand=1, padx=5, pady=3) - - fline=Frame(fright, height=2, width=wd, bg="grey") - fline.pack(pady=2, expand=NO) - - #---- Wind 1 model ---- - fr1=Frame(fright, height=55, width=wd) - fr1.pack_propagate(0) # don't shrink - fr1.pack(expand=NO, pady=0) - - champ_label = Label(fr1, text="Wind 1 distribution model :", fg="black", justify=LEFT, font=("Century Gothic",14)) - champ_label.pack(anchor=NW, padx=10, expand=NO) - - choix_wind11=StringVar() - laws_choice = ('Normal(mean, stdev)','Uniform(min, max)','Exponential(lambda, gamma)','Weibull(alpha, beta, gamma)', 'TruncatedNormal(mean, stdev, min, max)', 'Value list (values, probabilities)', 'Histogram (steps, probabilities)', 'PDF from file ()', 'Time Serie from file (stepsize, number of points)' ) - Combobox(fr1, textvariable = choix_wind11, values = laws_choice, state = 'readonly', width=50).pack(side=LEFT, padx=10, expand=NO) - choix_wind11.set('Choose your wind model') - - fr11=Frame(fright, height=30, width=wd) - fr11.pack_propagate(0) # don't shrink - fr11.pack(expand=NO) - Label(fr11, text="Parameters :", fg="black").pack(side=LEFT, padx=10, pady=0) - - var_windn11 = StringVar() - Entry(fr11, textvariable=var_windn11, width=12).pack(side=LEFT, padx=10, pady=5) - var_windn12 = StringVar() - Entry(fr11, textvariable=var_windn12, width=12).pack(side=LEFT, padx=10, pady=5) - var_windn13 = StringVar() - Entry(fr11, textvariable=var_windn13, width=12).pack(side=LEFT, padx=10, pady=5) - var_windn14 = StringVar() - Entry(fr11, textvariable=var_windn14, width=12).pack(side=LEFT, padx=10, pady=5) - - fr111=Frame(fright, height=35, width=wd) - fr111.pack_propagate(0) # don't shrink - fr111.pack(expand=NO) - - # We create the browse button - wind1PathD=StringVar() - Entry(fr111, textvariable=wind1PathD, width=50).pack(side=LEFT, padx=15, expand=YES) - - Button(fr111, text="Wind 1 data", command=browse_wind1).pack(side=LEFT, fill=BOTH, expand=1, padx=5, pady=3) - - fline=Frame(fright, height=2, width=wd, bg="grey") - fline.pack(pady=2, expand=NO) - - #---- Wind 2 model ---- - fr2=Frame(fright, height=55, width=wd) - fr2.pack_propagate(0) # don't shrink - fr2.pack(expand=NO, pady=0) - - champ_label = Label(fr2, text="Wind 2 distribution model :", fg="black", justify=LEFT, font=("Century Gothic",14)) - champ_label.pack(anchor=NW, padx=10, expand=NO) - - choix_wind21=StringVar() - laws_choice = ('Normal(mean, stdev)','Uniform(min, max)','Exponential(lambda, gamma)','Weibull(alpha, beta, gamma)', 'TruncatedNormal(mean, stdev, min, max)', 'Value list (values, probabilities)', 'Histogram (steps, probabilities)', 'PDF from file ()', 'Time Serie from file (stepsize, number of points)' ) - Combobox(fr2, textvariable = choix_wind21, values = laws_choice, state = 'readonly', width=50).pack(side=LEFT, padx=10, expand=NO) - choix_wind21.set('Choose your wind model') - - fr21=Frame(fright, height=30, width=wd) - fr21.pack_propagate(0) # don't shrink - fr21.pack(expand=NO) - Label(fr21, text="Parameters :", fg="black").pack(side=LEFT, padx=10, pady=0) - - var_windn21 = StringVar() - Entry(fr21, textvariable=var_windn21, width=12).pack(side=LEFT, padx=10, pady=5) - var_windn22 = StringVar() - Entry(fr21, textvariable=var_windn22, width=12).pack(side=LEFT, padx=10, pady=5) - var_windn23 = StringVar() - Entry(fr21, textvariable=var_windn23, width=12).pack(side=LEFT, padx=10, pady=5) - var_windn24 = StringVar() - Entry(fr21, textvariable=var_windn24, width=12).pack(side=LEFT, padx=10, pady=5) - - fr211=Frame(fright, height=35, width=wd) - fr211.pack_propagate(0) # don't shrink - fr211.pack(expand=NO) - - # We create the browse button - wind2PathD=StringVar() - Entry(fr211, textvariable=wind2PathD, width=50).pack(side=LEFT, padx=15, expand=YES) - - Button(fr211, text="Wind 2 data", command=browse_wind2).pack(side=LEFT, fill=BOTH, expand=1, padx=5, pady=3) - - fline=Frame(fright, height=2, width=wd, bg="grey") - fline.pack(pady=2, expand=NO) - - #---- PV model ---- - fr3=Frame(fright, height=55, width=wd) - fr3.pack_propagate(0) # don't shrink - fr3.pack(expand=NO, pady=0) - - champ_label = Label(fr3, text="Photovoltaic distribution model :", fg="black", justify=LEFT, font=("Century Gothic",14)) - champ_label.pack(anchor=NW, padx=10, expand=NO) - - choix_pv=StringVar() - laws_choice = ('Normal(mean, stdev)','Uniform(min, max)','Exponential(lambda, gamma)','Weibull(alpha, beta, gamma)', 'TruncatedNormal(mean, stdev, min, max)', 'Value list (values, probabilities)', 'Histogram (steps, probabilities)', 'PDF from file ()', 'Time Serie from file (stepsize, number of points)' ) - Combobox(fr3, textvariable = choix_pv, values = laws_choice, state = 'readonly', width=50).pack(side=LEFT, padx=10, expand=NO) - choix_pv.set('Choose your PV model') - - fr31=Frame(fright, height=30, width=wd) - fr31.pack_propagate(0) # don't shrink - fr31.pack(expand=NO) - Label(fr31, text="Parameters :", fg="black").pack(side=LEFT, padx=10, pady=0) - - var_pvn1 = StringVar() - Entry(fr31, textvariable=var_pvn1, width=12).pack(side=LEFT, padx=10, pady=5) - var_pvn2 = StringVar() - Entry(fr31, textvariable=var_pvn2, width=12).pack(side=LEFT, padx=10, pady=5) - var_pvn3 = StringVar() - Entry(fr31, textvariable=var_pvn3, width=12).pack(side=LEFT, padx=10, pady=5) - var_pvn4 = StringVar() - Entry(fr31, textvariable=var_pvn4, width=12).pack(side=LEFT, padx=10, pady=5) - - fr311=Frame(fright, height=35, width=wd) - fr311.pack_propagate(0) # don't shrink - fr311.pack(expand=NO) - - # We create the browse button - pvPathD=StringVar() - Entry(fr311, textvariable=pvPathD, width=50).pack(side=LEFT, padx=15, expand=YES) - - Button(fr311, text="PV data", command=browse_pv).pack(side=LEFT, fill=BOTH, expand=1, padx=5, pady=3) - - fb=Frame(fenetre, height=50, width=2*wd, bd=2, relief=RIDGE) - fb.pack_propagate(0) # don't shrink - fb.pack() - - Frame(fb, height=2, width=2*wd, bg="grey").pack(expand=1) - - # We create the launch button - Button(fb, text="Run PSEN", command=launch_PSEN, height=1, width=20, underline=YES).pack(expand=NO, padx=5, pady=3) - -# On démarre la boucle Tkinter qui s'interompt quand on ferme la fenêtre -fenetre() -root.mainloop() \ No newline at end of file diff --git a/PSEN_Eficas/PSEN/PSENconfig.py b/PSEN_Eficas/PSEN/PSENconfig.py deleted file mode 100644 index d9a69ff4..00000000 --- a/PSEN_Eficas/PSEN/PSENconfig.py +++ /dev/null @@ -1,7 +0,0 @@ -MachineDico = {'M4': 'M4', 'M1': 'M1', 'BSTMB__1': 'JJ', 'M3': 'M3', 'M2': 'M2', 'GT12B__1': 'ER', 'B6_BUS13__1': 'AZ', 'CSPRING__1': 'DD'} -LoadDico = {'C3': 'C3', 'C2': 'C2', 'C1': 'C1', 'C4': 'C4'} -LineDico = {'L4': 'L4', 'L2': 'L2', 'L3': 'L3', 'L1': 'L1'} -TransfoDico = {'T4': 'T4', 'T2': 'T2', 'T3': 'T3', 'T1': 'T1'} -MotorDico = {'MZ4': 'MZ4', 'MZ1': 'MZ1', 'MZ2': 'MZ2', 'MZ3': 'MZ3'} - -Dico ={'DIRECTORY': {'PSSE_path': '/home/A96028/QT5GitEficasTravail/eficas/PSEN_Eficas/PSEN', 'sav_file': '/home/A96028/QT5GitEficasTravail/eficas/PSEN_Eficas/faux.sav', 'results_folder': '/home/A96028/QT5GitEficasTravail/eficas/PSEN_Eficas/PSEN'}, 'PSSE_PARAMETERS': {'I_MAX': 'RateA', 'FUEL_COST': True, 'ALGORITHM': 'Optimum Power Flow', 'MVAR_COST': False, 'ITERATION_LIMIT': 20, 'SAVE_CASE_BEFORE_QCONTROL': False, 'LOCK_TAPS': True, 'LOADSHEDDING_COST': False, 'QGEN_CONTROL': True}, 'CORRELATION': {'CorrelationMatrix': ["['load']", '[1.0]']}, 'DISTRIBUTIONload': {'Load': ['C1'], 'FileName': '/home/A96028/QT5GitEficasTravail/eficas/PSEN_Eficas/faux.csv', 'Activated': True, 'Sampling': 'Same sample for all loads', 'ComponentType': 'Load', 'Law': 'TimeSeries_from_file', 'Type': 'Load Level'}, 'SIMULATION': {'NUMBER_PACKAGE': 1, 'SIZE_PACKAGE': 10}} \ No newline at end of file diff --git a/PSEN_Eficas/PSEN/PSSEWrapper.py b/PSEN_Eficas/PSEN/PSSEWrapper.py deleted file mode 100755 index 3adb5ace..00000000 --- a/PSEN_Eficas/PSEN/PSSEWrapper.py +++ /dev/null @@ -1,742 +0,0 @@ -#=============================================================================== -# PSEN SCRIPT FOR PROBABILISTIC STUDIES OF ELECTICAL NETWORKS -#=============================================================================== -from openturns import * -from pylab import * -from math import* -import os, random -import numpy as np -from time import gmtime, strftime -from array import * -from support_functions import * - -# Ouverture du fichier de configuration et recupecation des valeurs sous forme de listes -f=open("C:\B31272\Documents\PSEN\PSENdev\lib\config.psen","r") -lines=f.readlines() -data_config=lines[0].split(";") -data_load2 = getUserLaw(lines[1].split(";"))[0] -data_wind1=getUserLaw(lines[2].split(";"))[0] -data_wind2=getUserLaw(lines[3].split(";"))[0] -data_corr=lines[4].split(";") -data_PV=getUserLaw(lines[5].split(";"))[0] -data_OPF=lines[6].split(";") -Irate_num=int(lines[7].split(";")[0]) -f.close() - -# Definition des variables pour les series temporelles : getUserLaw(lines[1].split(";"))[1][0] doit valoir 1 -# pour que le programme etudie les series temporelles -time_serie_file=[] -time_serie_mat=[] -for i in ([1,2,3,5]) : - TSoptions = getUserLaw(lines[i].split(";"))[1] - if TSoptions[0] == 1 : - time_serie=1 - f=open(TSoptions[1],"r") - linesTS=f.readlines() - f.close() - tsm=[] - for j in range (len(linesTS)) : - try : - float(linesTS[j]) - except ValueError : - linesTS[j] = commaToPoint(linesTS[j]) - else : - pass - tsm.append(float(linesTS[j])) - time_serie_mat.append(tsm) - time_serie_file.append(TSoptions[1]) - """time_serie_SS = TSoptions[2] - time_serie_TH = TSoptions[3]""" - else : - time_serie_file.append(-1) -time_serie_mat=zip(*time_serie_mat) - -# Ouverture du fichier de preferences et recuperation des donnees -f=open("C:\B31272\Documents\PSEN\PSENdev\lib\pref.psen","r") -lines=f.readlines() -f.close() -paths=lines[0].split(";") -WTconfig=[] -for i in range (3,8): - try : - paths[i] - except : - print "Error in defining wind turbines characteristics" - WTconfig=[3.,5.,25.,1.225,0.05] - else : - WTconfig.append(float(paths[i])) - -# Ouverture du fichier d'analyse de N-1 et recuperation des donnees -f=open("C:\B31272\Documents\PSEN\PSENdev\lib\contin.psen","r") -lines=f.readlines() -path_config_contin=lines[0].split(";") -f.close() - -# Definition des lois des cinq variables aleatoires -N_1=int(data_config[1]) # N_1=1 to do N-1 studies -wind_var1=int(data_config[3]) # To take wind1 variability into account -wind_var2=int(data_config[4]) # To take wind2 variability into account -PV_var=int(data_config[2]) # To take PV variability into account -load_var=int(data_config[5]) # To take load variability into account - -# Creation variable nom dossier N-1 -if N_1 == 1 : - folderN_1 = '1_' -else : - folderN_1 = '_' - -# Recuperation des chemins du dossier d'installation de PSSE, .SAV de l'etude et nom du rapport -folder=paths[1] -doc_base= paths[0] -exec_file="report.txt" - -# Definition des groupes de production PV, eoliennes, des intercos et des lignes en N-1 -ENR=config_ENR(paths[2]) -windTurbines1 = ENR[1] # Buses with wind turbines 1 -windTurbines2 = ENR[2] # Buses with wind turbines 2 -solarPV = ENR[0] # Buses with solar PV plant -intercos=ENR[3] # Buses with interconnexions -# Lines with contingency -try : - config_contingency(path_config_contin) -except IOError : # Si le fichier n'est pas dans un bon format on traite l'exception - nb_lines=1 - print 'Error with contingency input file' -else : - continAll = config_contingency(path_config_contin) - continLines = continAll[0] - continGroups = continAll[1] - continVal = continAll[2] - continProb = continAll[3] - - -# Probabilistic study information -#============================================================================== -# Create the marginal distributions -distributionX0 = data_load2 -distributionX1 = getUserDefined(continVal,continProb) -distributionX2 = data_wind1 -distributionX3 = data_wind2 -distributionX4 = data_PV - -# Create the correlations between the distributions -corr10=float(data_corr[0]) -corr20=float(data_corr[1]) -corr30=float(data_corr[2]) -corr40=float(data_corr[3]) -corr21=float(data_corr[4]) -corr31=float(data_corr[5]) -corr41=float(data_corr[6]) -corr32=float(data_corr[7]) -corr42=float(data_corr[8]) -corr43=float(data_corr[9]) - -# Probabilistic Study: central dispersion => Monte Carlo or LHS iterations -montecarlosize = int(data_config[0]) - -#Extension name for the folders and files -day=time.strftime("%Y%m%d", gmtime()) -hour=time.strftime("%Hh%Mm%S", gmtime()) - -#=============================================================================== -# CHARGEMENT DE PSSE - LOADING OF PSSE -#=============================================================================== -pssFolder=str(paths[3]) -import sys -sys.path.append(pssFolder)#r"C:\Program Files\PTI\PSSE33\PSSBIN") -os.environ['PATH'] = pssFolder+":"+os.environ['PATH'] #r"C:\Program Files\PTI\PSSE33\PSSBIN;"+ os.environ['PATH'] -os.chdir(folder) -import psspy -import pssarrays -import redirect -_i=psspy.getdefaultint() -_f=psspy.getdefaultreal() -_s=psspy.getdefaultchar() -redirect.psse2py() -#import pssdb -psspy.psseinit(80000) - -# Silent execution of PSSe -islct=6 # 6=no output; 1=standard -psspy.progress_output(islct) - -# Enregistrement de l'heure de debut de simulation -f=open(exec_file, 'a') -start_time=time.clock() -f.write("Starting time: %f; Monte Carlo Size : %f; " % (start_time, montecarlosize)) -f.close() - -#=============================================================================== -# Fonction de wrappage - Wrapper function -#=============================================================================== -def PSSEFunction(x): - # Definition des variables globales - global TStest - global Xt - global sizeY0 - global sizeY1 - global sizeY2 - global sizeY3 - global sizeY4 - global sizeY - global wind_var - global PV_var - global N_1 - global load_var - global logCSVfilename - global logTXTfilename - global ite - global folder - global day - global folderN_1 - global fich - global hour - global montecarlosize - global WTconfig - global x2 - - ite+=1 # incrementation du compteur - - # Load data from PSSe - psspy.case(doc_base) #Launching of PSSE and opening the working file - all_inputs_base=read_sav(doc_base) - buses_base=all_inputs_base[0] - lines_base=all_inputs_base[1] - transf_base=all_inputs_base[2] - plants_base=all_inputs_base[3] - loads_base=all_inputs_base[4] - shunt_base=all_inputs_base[5] - doci=folder+"\N"+folderN_1+day+"\CasNum"+str(ite)+".sav" - psspy.save(doci) - - # Total initial shunt on buses - init_shunt = 0 - for i in range(len(shunt_base)) : - init_shunt += float(shunt_base[i][2]) - - # Configuration de l'OPF a partir des parametres de l'utilisateur - nbeOPF=5 # Nombre de lancement max de l'OPF pour atteindre la convergence de l'algorithme - psspy.report_output(6,"",[0,0]) - psspy.produce_opf_log_file(1,r"""DETAIL""") - psspy.minimize_fuel_cost(int(data_OPF[0])) - psspy.minimize_adj_bus_shunts(int(data_OPF[1])) - psspy.minimize_load_adjustments(int(data_OPF[2])) - psspy.initial_opf_barrier_coeff(100.0) - psspy.opf_fix_all_generators(1) - psspy.set_opf_report_subsystem(3,1) - - - print " PSEN simulator, case number: "+str(ite) - - # 1. Affiche X - nx = x.getSize() - if TStest==1 : - for i in range (len (Xt)) : - if Xt[i] == -1 : - if i == 0 and load_var==1 : - pass - elif i == 1 and N_1==1 : - x[i]=int(floor(x[i])) # Si on etudie le N-1 on arrondie la valeur tiree en floor : on obtient le numero de la ligne - elif i == 2 and wind_var1==1 : - x[i]=eol(x[i],WTconfig) - elif i == 3 and wind_var2==1 : - x[i]=eol(x[i],WTconfig) - elif i == 4 and PV_var==1 : # Si on etudie la variabilite de l'eolien on lui donne la valeur de production de l'eolienne a partir du vent - pass - else : - x[i]=-1 - else : - x[i]=float(Xt[i]) # Dans le cas d'une etude temporelle on lui donne la valeur de Xt - else : - if load_var==1 : - pass # Sinon on donne la valeur tiree si on etudie la variabilite de x[0] - else : - x[0]=1 # Sinon on laisse la valeur de base - - if N_1==1 : - x[1]=int(floor(x[1])) # Si on etudie le N-1 on arrondie la valeur tiree en floor : on obtient le numero de la ligne - else : - x[1]=-1 # Sinon on donne -1 comme marqueur - - if wind_var1==1: - x[2]=eol(x[2],WTconfig) # Si on etudie la variabilite de l'eolien on lui donne la valeur de production de l'eolienne a partir du vent - else : - x[2]=0 # Sinon on considere qu'il n'y a pas d'eolien - - if wind_var2==1: - x[3]=eol(x[3],WTconfig) # Si on etudie la variabilite de l'eolien on lui donne la valeur de production de l'eolienne a partir du vent - else : - x[3]=0 # Sinon on considere qu'il n'y a pas d'eolien - - if PV_var==1 : # Si on etudie la variabilite du PV on laisse sa valeur a la va - pass - else : - x[4]=0 # Sinon on considere qu'il n'y a pas de PV - for i in range(0,nx): - print "x[%d]=%f" % (i,x[i]) - - # 2. Fait le calcul avec PSSE - #Editing some values in the PSSE .sav input file - # Change the values of the different loads and treat large changes of load to help convergence - if x[0] > 0.75 : - for i in range(0,np.array(loads_base).shape[0]) : # On change directement toutes les charges - psspy.load_chng_4(int(loads_base[i][0]),r"""1""",[1,_i,_i,_i,_i,_i],[x[0]*loads_base[i][1],x[0]*loads_base[i][2],_f,_f,_f,_f]) - elif x[0] > 0.4 : - for i in range(0,np.array(loads_base).shape[0]) : # On effectue un pretraitement en passant par une charge intermediaire - psspy.load_chng_4(int(loads_base[i][0]),r"""1""",[1,_i,_i,_i,_i,_i],[(1+x[0])/2*loads_base[i][1],(1+x[0])/2*loads_base[i][2],_f,_f,_f,_f]) - psspy.fnsl([0,0,0,1,1,0,99,0]) # Load flow Newton Raphson - psspy.bsys(3,0,[0.0,0.0],0,[],1,[1],0,[],0,[]) - psspy.set_opf_report_subsystem(3,0) - psspy.nopf(0,1) # Lancement OPF - for i in range(0,np.array(loads_base).shape[0]) : # On change toutes les charges - psspy.load_chng_4(int(loads_base[i][0]),r"""1""",[1,_i,_i,_i,_i,_i],[x[0]*loads_base[i][1],x[0]*loads_base[i][2],_f,_f,_f,_f]) - else : - for i in range(0,np.array(loads_base).shape[0]) : # On effectue un pretraitement en passant par une charge intermediaire - psspy.load_chng_4(int(loads_base[i][0]),r"""1""",[1,_i,_i,_i,_i,_i],[0.7*loads_base[i][1],0.7*loads_base[i][2],_f,_f,_f,_f]) - psspy.fnsl([0,0,0,1,1,0,99,0]) - psspy.bsys(3,0,[0.0,0.0],0,[],1,[1],0,[],0,[]) - psspy.set_opf_report_subsystem(3,0) - psspy.nopf(0,1) - for i in range(0,np.array(loads_base).shape[0]) : # On effectue un pretraitement en passant par une charge intermediaire - psspy.load_chng_4(int(loads_base[i][0]),r"""1""",[1,_i,_i,_i,_i,_i],[0.4*loads_base[i][1],0.4*loads_base[i][2],_f,_f,_f,_f]) - psspy.fnsl([0,0,0,1,1,0,99,0]) - psspy.bsys(3,0,[0.0,0.0],0,[],1,[1],0,[],0,[]) - psspy.set_opf_report_subsystem(3,0) - psspy.nopf(0,1) - for i in range(0,np.array(loads_base).shape[0]) : # On change toutes les charges - psspy.load_chng_4(int(loads_base[i][0]),r"""1""",[1,_i,_i,_i,_i,_i],[x[0]*loads_base[i][1],x[0]*loads_base[i][2],_f,_f,_f,_f]) - - x2=[] - for sz in range(0,nx): - x2.append(float(x[sz])) - - if x[1]<0 : - pass - elif x[1] < len(continLines) : # L'element tire est une ligne - line_num=int(x[1]) - from_bus=continLines[int(line_num)][0] - to_bus=continLines[int(line_num)][1] - br_id=continLines[int(line_num)][2]#.replace('@','') - psspy.branch_chng(from_bus,to_bus,str(br_id),[0,_i,_i,_i,_i,_i],[ _f, _f, _f,_f,_f,_f,_f,_f,_f,_f,_f,_f,_f,_f,_f]) - x2[1]='Line '+str(from_bus)+'-'+str(to_bus)+'#'+str(br_id) - elif x[1] < (len(continLines)+len(continGroups)) : - group_num = int(x[1])-len(continLines) - bus_num = continGroups[int(group_num)][0] - bus_id = continGroups[int(group_num)][1] - psspy.machine_chng_2(int(bus_num),str(bus_id),[0,_i,_i,_i,_i,_i],[_f,_f,_f,_f,_f,_f,_f,_f,_f,_f,_f,_f,_f,_f,_f,_f,_f]) # Change Interconnection disponibility - psspy.opf_gendsp_indv(int(bus_num),str(bus_id),_i,0.0) - x2[1]='Group '+str(bus_num)+'#'+str(bus_id) - #elif x[1] < len(intercos) : - #mat_num=int(x[1]) - #psspy.machine_chng_2(int(intercos[mat_num][0]),str(intercos[mat_num][2]),[0,_i,_i,_i,_i,_i],[_f,_f,_f,_f,_f,_f,_f,_f,_f,_f,_f,_f,_f,_f,_f,_f,_f]) # Change Interconnection disponibility - #psspy.opf_gendsp_indv(int(intercos[mat_num][0]),str(intercos[mat_num][2]),_i,0.0) - #x[1]=-mat_num - else : - pass - # Change the bus that is not in service - #intercos = [] - #line_num=int(x[1]-len(intercos)) - #from_bus=lines_con[int(line_num)-1][0] - #to_bus=lines_con[int(line_num)-1][1] - #br_id=lines_con[int(line_num)-1][2]#.replace('@','') - #psspy.branch_chng(from_bus,to_bus,str(br_id),[0,_i,_i,_i,_i,_i],[ _f, _f, _f,_f,_f,_f,_f,_f,_f,_f,_f,_f,_f,_f,_f]) - #x[1]=line_num - # Change the production of the wind turbines - if np.matrix(windTurbines1).shape[1]>0 : - for i in range(0,np.matrix(windTurbines1).shape[0]) : - psspy.machine_chng_2(windTurbines1[i][0],str(windTurbines1[i][2]),[1,_i,_i,_i,_i,_i],[x[2]*plants_base[windTurbines1[i][1]][6],_f,_f,_f,_f,_f,_f,_f,_f,_f,_f,_f,_f,_f,_f,_f,_f]) - - if np.matrix(windTurbines2).shape[1]>0 : - for i in range(0,np.matrix(windTurbines2).shape[0]) : - psspy.machine_chng_2(windTurbines2[i][0],str(windTurbines2[i][2]),[1,_i,_i,_i,_i,_i],[x[3]*plants_base[windTurbines2[i][1]][6],_f,_f,_f,_f,_f,_f,_f,_f,_f,_f,_f,_f,_f,_f,_f,_f]) - - # Change the production of the PV stations - if np.matrix(solarPV).shape[1]>0 : - for i in range(0,np.matrix(solarPV).shape[0]) : - psspy.machine_chng_2(solarPV[i][0],str(solarPV[i][2]),[1,_i,_i,_i,_i,_i],[x[4]*plants_base[solarPV[i][1]][6],_f,_f,_f,_f,_f,_f,_f,_f,_f,_f,_f,_f,_f,_f,_f,_f]) - - psspy.save(doci) #Saving .sav modifications - ok=1 - while nbeOPF>=0 : - #for i in (zip(*buses_base)[0]) : psspy.bus_chng_3(i,[_i,_i,_i,_i],[_f, 1.05,_f,_f,_f,_f,_f],_s) - psspy.fnsl([0,0,0,1,1,1,99,0]) - psspy.bsys(3,0,[0.0,0.0],0,[],1,[1],0,[],0,[]) - psspy.set_opf_report_subsystem(3,0) - psspy.nopf(0,1) - if psspy.solved()==7: - print 'CONVERGENCE CAS '+str(ite) - ok=1 - break - else : - print '===================================================================' - print 'NO CONVERGENCE' - print '===================================================================' - ok=0 - #for i in range (134) : - #psspy.opf_bus_indv(i,[_i,0],[_f, 0.7,_f,_f,_f]) - nbeOPF-=1 - psspy.save(doci) - all_inputs=read_sav(doci) - buses=all_inputs[0];lines=all_inputs[1];transf=all_inputs[2];plants=all_inputs[3];loads=all_inputs[4]; shunt=all_inputs_base[5] - - # 3. Affiche Y - sizeY4=np.matrix(shunt).shape[0] - y=np.zeros(2*sizeY0+sizeY1+3*sizeY2+sizeY3+sizeY4) - z=np.zeros(8) - rate_mat_index=Irate_num+2 - if ok==1 : - # Creates the quantities of interest - for i in range (sizeY2) : - if lines [i][rate_mat_index]>100 : - z[0]+=1 # Number of lines above 100% of their limits - for i in range (sizeY1): - if buses[i][2]>1.06 : - z[1]+=1 - if buses[i][2]<0.9399 : - z[1]+=1 # Number of buses outside of their voltage limits - for i in range (sizeY0) : - z[2]+=float(plants[i][3]) # Total active production - for i in range (sizeY3) : - z[3]+=float(loads[i][1]) # Total active consumption - z[4]=(z[2]-z[3])/z[2]*100 # Active power losses - for i in range (sizeY2) : - if lines [i][3]>z[5] : - z[5]=lines [i][rate_mat_index] # Max flow in lines - for i in range (sizeY2) : - if lines [i][rate_mat_index]>90 : - z[6]+=1 - z[6]=z[6]-z[0] # Number of lines between 90% and 100% of their limits - - final_shunt=0 - for i in range (sizeY4) : - final_shunt+=shunt[i][2] - z[7]=final_shunt-init_shunt - - # Creates the output vectors - for Pmach in range (sizeY0): - y[Pmach]=float(plants[Pmach][3]) - for Qmach in range (sizeY0): - y[Qmach+sizeY0]=float(plants[Qmach][4]) - for Vbus in range (sizeY1): - y[Vbus+2*sizeY0]=float(buses[Vbus][2]) - for Iline in range (sizeY2): - y[Iline+2*sizeY0+sizeY1]=float(lines[Iline][rate_mat_index]) - for Pline in range (sizeY2): - y[Pline+2*sizeY0+sizeY1+sizeY2]=float(lines[Pline][6]) - for Qline in range (sizeY2): - y[Qline+2*sizeY0+sizeY1+2*sizeY2]=float(lines[Qline][7]) - for Pload in range (sizeY3) : - y[Pload+2*sizeY0+sizeY1+3*sizeY2]=float(loads[Pload][1]) - for Qshunt in range (sizeY4) : - y[Qshunt+2*sizeY0+sizeY1+3*sizeY2+sizeY3]=float(shunt[Qshunt][2]) - - #Ecris les sorties - print "sorties:" - nz = len(z) - for i in range(0,nz): - print "z[%d]=%f" % (i,z[i]) - MyLogger(x2,y,z,logCSVfilename,logTXTfilename,ite) - #MyMultiLogger (x2, y, sizeY, z, ite, folder, day, fich, hour) - return NumericalPoint(z) - else : - MyLogger(x2,y,z,logCSVfilename,logTXTfilename,ite) - #MyMultiLogger (x2, y, sizeY, z, ite, folder, day, fich, hour) - return NumericalPoint(z) - -#=============================================================================== -# DEFINITION DU WRAPPER - WRAPPER's DEFINITION -#=============================================================================== -# Initialize size output -psspy.case(doc_base) -all_inputs_base=read_sav(doc_base) -buses_base=all_inputs_base[0] -lines_base=all_inputs_base[1] -trans_base=all_inputs_base[2] -plants_base=all_inputs_base[3] -loads_base=all_inputs_base[4] -shunt_base=all_inputs_base[5] -sizeY0=np.matrix(plants_base).shape[0] -sizeY1=np.matrix(buses_base).shape[0] -sizeY2=np.matrix(lines_base).shape[0] -sizeY3=np.matrix(loads_base).shape[0] -sizeY4=np.matrix(shunt_base).shape[0] -sizeY=[sizeY0,sizeY1,sizeY2,sizeY3,sizeY4] -sizeOutput=sizeY2 - - -class PSSEWrapperClass(OpenTURNSPythonFunction) : - def __init__(self) : - OpenTURNSPythonFunction.__init__(self,5,8) - def _exec(self,x) : - return PSSEFunction(x) - -# Initialize the folder -newpath = folder+"\N"+folderN_1+day -if not os.path.exists(newpath): os.makedirs(newpath) - -# Test the Num. Math. Function -pssefun = NumericalMathFunction(PSSEWrapperClass()) - -# Definition of the function to use -inputDim = pssefun.getInputDimension() -outputDim = pssefun.getOutputDimension() - -# Initialization of the distribution collection: -#aCollection = DistributionCollection() - -# Create a collection of the marginal distributions -collectionMarginals = DistributionCollection(inputDim) -collectionMarginals[0] = Distribution(distributionX0) # Load distribution -collectionMarginals[1] = Distribution(distributionX1) # N-1 distribution -collectionMarginals[2] = Distribution(distributionX2) # Wind 1 distribution -collectionMarginals[3] = Distribution(distributionX3) # Wind 2 distribution -collectionMarginals[4] = Distribution(distributionX4) # PV distribution - -#Create a correlation matrix as copulas -corr=CorrelationMatrix(inputDim) - -corr[1,0]=corr10 -corr[2,0]=corr20 -corr[3,0]=corr30 -corr[4,0]=corr40 -corr[0,1]=corr10 -corr[2,1]=corr21 -corr[3,1]=corr31 -corr[4,1]=corr41 -corr[0,2]=corr20 -corr[1,2]=corr21 -corr[3,2]=corr32 -corr[4,2]=corr42 -corr[0,3]=corr30 -corr[1,3]=corr31 -corr[2,3]=corr32 -corr[4,3]=corr43 -corr[0,4]=corr40 -corr[1,4]=corr41 -corr[2,4]=corr42 -corr[3,4]=corr43 - -copula=Copula(NormalCopula(corr)) - - -# Create the input probability distribution, args are the distributions, the correlation laws -inputDistribution = ComposedDistribution(collectionMarginals, copula) - -# Create the input random vector -"""inputRandomVector = RandomVector(inputDistribution) - -# Create the output variable of interest -outputVariableOfInterest = RandomVector(pssefun, inputRandomVector) -outputVariableOfInterest.setDescription(pssefun.getOutputDescription())""" - -#=============================================================================== -# ETUDE DE DISPERSION CENTRALE - CENTRAL DEVIATION STUDY -#=============================================================================== -# Initialize the logger : write the headers -logCSVfilename=folder+"\N"+folderN_1+day+"\simulationDClog"+hour+".csv" # Name of the file : global variable -f = open(logCSVfilename, "a") -f.write("Iteration;;X:Load(pu);X:lineOff#;XProdEolienne1%Pnom;XProdEolienne2%Pnom;X:ProdPV%Pnom;;Y:NbeTransit;Y:NbeTension;Y:PProdTot;Y:PConsoTot;Y:%Losses;Y:Max%A;Y:NbeTransit_0.9-1;Y:AddedMVAR;;") -# Names of the Output variables withConso the bus number -for name in range (sizeY0): - f.write("Y:PMachine"+str(plants_base[name][0])+";") -for name in range (sizeY0): - f.write("Y:QMachine"+str(plants_base[name][0])+";") -for name in range (sizeY1): - f.write("Y:VBus"+str(buses_base[name][0])+";") -for name in range (sizeY2): - f.write("Y"+str(name+1)+":%Rate "+str(lines_base[name][0])+"-"+str(lines_base[name][1])+";") -for name in range (sizeY2): - f.write("Y"+str(name+1)+":P "+str(lines_base[name][0])+"-"+str(lines_base[name][1])+";") -for name in range (sizeY2): - f.write("Y"+str(name+1)+":Q "+str(lines_base[name][0])+"-"+str(lines_base[name][1])+";") -for name in range (sizeY3): - f.write("Y:Load "+str(loads_base[name][0])+";") -for name in range (sizeY4): - f.write("Y:Shunt bus "+str(shunt_base[name][0])+";") -f.write("\n") -# Names of the Output variables with the bus names -f.write("#;;pu;line number;%Pnom;%Pnom;%Pnom;;Nbe;Nbe;MW;MW;%;%;Nbe;MVAR;;") -for name in range (sizeY0): - f.write(str(plants_base[name][8])+";") -for name in range (sizeY0): - f.write(str(plants_base[name][8])+";") -for name in range (sizeY1): - f.write(str(buses_base[name][3])+";") -for name in range (sizeY2): - f.write(str(lines_base[name][8])+"-"+str(lines_base[name][9])+";") -for name in range (sizeY2): - f.write(str(lines_base[name][8])+"-"+str(lines_base[name][9])+";") -for name in range (sizeY2): - f.write(str(lines_base[name][8])+"-"+str(lines_base[name][9])+";") -for name in range (sizeY3): - f.write(str(loads_base[name][4])+";") -for name in range (sizeY4): - f.write(str(shunt_base[name][3])+";") -f.write("\n") -f.close() - -logTXTfilename=folder+"\N"+folderN_1+day+"\simulationDClog"+hour+".txt" # Name of the file : global variable -f = open(logTXTfilename, "a") -f.write("Iteration\tX:Load(pu)\tX:lineOff#\tXProdEolienne1%Pnom\ttXProdEolienne2%Pnom\tX:ProdPV%Pnom\tY:NbeTransit\tY:NbeTension\tY:PProdTot\tY:PConsoTot\tY:%Losses\tY:Max%A\tY:NbeTransit_0.9-1\tY:AddedShunt\t") -# Names of the Output variables withConso the bus number -for name in range (sizeY0): - f.write("Y:PMachine"+str(plants_base[name][0])+" - "+str(plants_base[name][8])+"\t") -for name in range (sizeY0): - f.write("Y:QMachine"+str(plants_base[name][0])+" - "+str(plants_base[name][8])+"\t") -for name in range (sizeY1): - f.write("Y:VBus"+str(buses_base[name][0])+" - "+str(buses_base[name][3])+"\t") -for name in range (sizeY2): - f.write("Y"+str(name+1)+":%RateA "+str(lines_base[name][0])+"-"+str(lines_base[name][1])+" - "+str(lines_base[name][8])+"-"+str(lines_base[name][9])+"\t") -for name in range (sizeY2): - f.write("Y"+str(name+1)+":P "+str(lines_base[name][0])+"-"+str(lines_base[name][1])+" - "+str(lines_base[name][8])+"-"+str(lines_base[name][9])+"\t") -for name in range (sizeY2): - f.write("Y"+str(name+1)+":Q "+str(lines_base[name][0])+"-"+str(lines_base[name][1])+" - "+str(lines_base[name][8])+"-"+str(lines_base[name][9])+"\t") -for name in range (sizeY3): - f.write("Y:Load "+str(loads_base[name][0])+" - "+str(loads_base[name][4])+"\t") -for name in range (sizeY4): - f.write("Y:Shunt "+str(shunt_base[name][0])+" - "+str(shunt_base[name][3])+"\t") -f.write("\n") -f.close() - -""" -# Initialize the multilogger : write the headers -for fich in range (np.size(sizeY,0)): - multilogfilename=folder+"\N"+day+"\Y"+str(fich)+"simulationDClog"+hour+".csv" - f=open(multilogfilename, 'a') - f.write("Iteration;;X:Load(pu);X:lineOff#;XProdEolienne1%Pnom;XProdEolienne2%Pnom;X:ProdPV%Pnom;;Y:NbeTransit;Y:NbeTension;Y:PProdTot;Y:PConsoTot;Y:Max%A;Y:NbeTransit_0.9-1;;") - if fich == 0 : - for name in range (sizeY[0]): - f.write("Y:PMachine"+str(plants_base[name][0])+";") - f.write("\n") - f.write("#;;pu;line number;%Pnom;%Pnom;%Pnom;;Nbe;Nbe;MW;MW;%;%;Nbe;;") - for name in range (sizeY[0]): - f.write(str(plants_base[name][8])+";") - f.write("\n") - f.close() - elif fich == 1 : - for name in range (sizeY[1]): - f.write("Y:VBus"+str(buses_base[name][0])+";") - f.write("\n") - f.write("#;;pu;line number;%Pnom;%Pnom;%Pnom;;Nbe;Nbe;MW;MW;%;%;Nbe;;") - for name in range (sizeY[1]): - f.write(str(buses_base[name][3])+";") - f.write("\n") - f.close() - elif fich == 2 : - for name in range (sizeY[2]): - f.write("Y"+str(name+1)+":%RateA "+str(lines_base[name][0])+"-"+str(lines_base[name][1])+";") - f.write("\n") - f.write("#;;pu;line number;%Pnom;%Pnom;%Pnom;;Nbe;Nbe;MW;MW;%;%;Nbe;;") - for name in range (sizeY[2]): - f.write(str(lines_base[name][8])+"-"+str(lines_base[name][9])+";") - f.write("\n") - f.close() - elif fich == 3 : - for name in range (sizeY[3]): - f.write("Y:Ploads "+str(loads_base[name][0])+";") - f.write("\n") - f.write("#;;pu;line number;%Pnom;%Pnom;%Pnom;;Nbe;Nbe;MW;MW;%;%;Nbe;;") - for name in range (sizeY[3]): - f.write(str(loads_base[name][4])+";") - f.write("\n") - f.close() - -""" -# Start the simulations -ite=0 -print "\n\n\n Starting PSEN "+str(montecarlosize)+" simulations" - -"""inputSample=inputRandomVector.getSample(montecarlosize) -inputSample.setDescription( ("X0","X1","X2","X3") ) -inputSample.exportToCSVFile("InputSamples.csv")""" - -if sum(corr) == 5 : - myLHSE = LHSExperiment(inputDistribution,montecarlosize) - inputSample = myLHSE.generate() -else : - myMCE = MonteCarloExperiment(inputDistribution,montecarlosize) - inputSample = myMCE.generate() - -try : - time_serie -except NameError : - print 'Probabilistic' - TStest=0 - outputSampleAll = pssefun(inputSample)#outputVariableOfInterest.getSample(montecarlosize) -else : - TStest=1 - for i in range (len(time_serie_mat)) : - print 'Time serie' - RandomGenerator.SetSeed(i) - Xt=[] - n=0 - for j in range (len(time_serie_file)) : - if time_serie_file[j] == -1 : - Xt.append(-1) - n+=1 - else : - Xt.append(time_serie_mat[i][j-n]) - Xt.insert(1,-1) - try : - outputSampleAll - except : - outputSampleAll = pssefun(inputSample) - else : - outputSampleAll.add(pssefun(inputSample)) - -outputDim=outputSampleAll.getDimension() -outputSize=outputSampleAll.getSize() - -outputSample=NumericalSample(0,outputDim) -outputSampleMissed=NumericalSample(0,outputDim) - -for i in range (outputSize): - if outputSampleAll[i,5]==0 : - outputSampleMissed.add(outputSampleAll[i]) - else : - outputSample.add(outputSampleAll[i]) - -outputDescription=[] -for i in range (outputDim): - outputDescription.append("Y"+str(i)) -outputSample.setDescription( outputDescription ) - -# Get the empirical mean and standard deviations -empMeanX = inputSample.computeMean() -empSdX = inputSample.computeStandardDeviationPerComponent() -empiricalMean = outputSample.computeMean() -empiricalSd = outputSample.computeStandardDeviationPerComponent() - -f=open(logCSVfilename, 'a') -f.write("\n") -f.write('Mean;;') -for i in range(0,inputDim): - f.write("%f;" % (empMeanX[i])) -f.write(";") -for i in range(0,outputDim): - f.write("%f;" % (empiricalMean[i])) -f.write(";") -f.write("\nStandard deviation;;") -for i in range(0,inputDim): - f.write("%f;" % (empSdX[i])) -f.write(";") -for i in range(0,outputDim): - f.write("%f;" % (empiricalSd[i])) -f.write(";") -f.close() - -f=open(exec_file,'a') -#stop_time=100*times()[0] -stop_time=time.clock() -f.write("Stop time: %f; Duration: %f; Time per execution: %f; " % (stop_time, stop_time-start_time, (stop_time-start_time)/montecarlosize)) -f.write("\n\n") -f.close() - -print '\n\nSimulated '+str(montecarlosize)+' cases in '+ str(stop_time-start_time)+' seconds. Average '+str((stop_time-start_time)/montecarlosize)+'s per case.' - -nMissed=int(outputSampleMissed.getSize()) - -print '\n\n Non-convergence rate is '+str(round(nMissed*100/montecarlosize,3))+' % ('+str(outputSampleMissed.getSize())+' cases on '+str(montecarlosize)+')' - -#graphical_out(inputSample, outputSampleAll, inputDim, outputDim, montecarlosize) - diff --git a/PSEN_Eficas/PSEN/__init__.py b/PSEN_Eficas/PSEN/__init__.py deleted file mode 100755 index e69de29b..00000000 diff --git a/PSEN_Eficas/PSEN/exploit2.ows b/PSEN_Eficas/PSEN/exploit2.ows deleted file mode 100755 index 56005895..00000000 --- a/PSEN_Eficas/PSEN/exploit2.ows +++ /dev/null @@ -1,23 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - diff --git a/PSEN_Eficas/PSEN/support_functions.py b/PSEN_Eficas/PSEN/support_functions.py deleted file mode 100755 index 36996c74..00000000 --- a/PSEN_Eficas/PSEN/support_functions.py +++ /dev/null @@ -1,599 +0,0 @@ -# -*- coding: utf-8 -*- -""" -Created on Mon Jun 03 15:31:42 2013 - -@author: B31272 - -Fonctions de support -""" -import os,sys,random,string -sys.path.append(r"C:\Program Files\PTI\PSSE33\PSSBIN") -os.environ['PATH'] = r"C:\Program Files\PTI\PSSE33\PSSBIN;"+ os.environ['PATH'] -#os.chdir(folder) -import psspy -import pssarrays -import redirect -_i=psspy.getdefaultint() -_f=psspy.getdefaultreal() -_s=psspy.getdefaultchar() -redirect.psse2py() -#import pssdb -psspy.psseinit(80000) - -import numpy as np -from math import* -from openturns import * - -#=============================================================================== -# DEFINITION DES FONCTIONS - CREATION OF THE FUNCTIONS -#=============================================================================== - -#Fonction de transfert vent-puissance d'une eolienne -def eol(wind, WTconfig): - Vcin = WTconfig [0] - Vrate = WTconfig [1] - Vcout = WTconfig [2] - Rho = WTconfig [3] - lossrate = WTconfig [4] - if wind <= Vcin : - Pnorm=0 - elif wind < Vrate : - Pnorm=wind*(1-lossrate)#((wind**2-Vcin**2)/(Vrate**2-Vcin**2)*Rho/1.225*(1-lossrate)) - elif wind < Vcout : - Pnorm = 1*(1-lossrate) - else : - Pnorm=0 - return Pnorm - -#Fonction permettant de lire les donnees qui nous interessent et de les mettre dans une matrice -def read_sav(doc): - psspy.case(doc) - # Select what to report - if psspy.bsysisdef(0): - sid = 0 - else: # Select subsytem with all buses - sid = -1 - - flag_bus = 1 # in-service - flag_plant = 4 # in-service - flag_load = 1 # in-service - flag_swsh = 1 # in-service - flag_brflow = 1 # in-service - owner_brflow = 1 # bus, ignored if sid is -ve - ties_brflow = 5 # ignored if sid is -ve - entry = 1 # gives a single entry (each branch once) - - #Bus data (number, basekV, pu, name, ...) : PSSe has 3 functions one for integer data, one for real data and one for strings - istrings = ['number'] - ierr, idata = psspy.abusint(sid, flag_bus, istrings) - buses=idata - - rstrings = ['base','pu'] - ierr, rdata = psspy.abusreal(sid, flag_bus, rstrings) - buses.append(rdata[0]) - buses.append(rdata[1]) - - cstrings = ['name'] - ierr, cdata = psspy.abuschar(sid, flag_bus, cstrings) - buses.append(cdata[0]) - - buses=zip(*buses) # transpose the matrix - - del idata, rdata, istrings, rstrings - - #Lines data (from, to, amps, rate%a, ploss, qloss) - flag=2 #All non-transformer branches - istrings = ['fromnumber','tonumber'] - ierr, idata = psspy.abrnint(sid, owner_brflow, ties_brflow, flag, entry, istrings) - lines=idata - - rstrings=['amps','pctratea','pctrateb','pctratec','p','q'] - ierr, rdata = psspy.abrnreal(sid, owner_brflow, ties_brflow, flag, entry, rstrings) - for rc in range (np.matrix(rdata).shape[0]) : - lines.append(rdata[rc]) - - cstrings=['fromname','toname','id'] - ierr, cdata = psspy.abrnchar(sid, owner_brflow, ties_brflow, flag, entry, cstrings) - for rc in range (np.matrix(cdata).shape[0]) : - lines.append(cdata[rc]) - - lines=zip(*lines) # transpose the matrix - - del idata, rdata, istrings, rstrings - - #2 windings transformers data (from, to, amps, rate%a, ploss, qloss) - flag=6 #All transformer branches - istrings = ['fromnumber','tonumber'] - ierr, idata = psspy.abrnint(sid, owner_brflow, ties_brflow, flag, entry, istrings) - transf=idata - - rstrings=['amps','pctratea','ploss','qloss'] - ierr, rdata = psspy.abrnreal(sid, owner_brflow, ties_brflow, flag, entry, rstrings) - for rc in range (np.matrix(rdata).shape[0]) : - transf.append(rdata[rc]) - - transf=zip(*transf) # transpose the matrix - - del idata, rdata, istrings, rstrings - - #Machines data (bus, inservice, number, pgen, qgen, mvabase) - istrings = ['number','status'] - ierr, idata = psspy.amachint(sid, flag_plant, istrings) - plants=idata - - cstrings = ['id'] - ierr, cdata = psspy.amachchar(sid, flag_plant, cstrings) - for rc in range (np.matrix(cdata).shape[0]) : - plants.append(cdata[rc]) - - rstrings = ['pgen','qgen','mbase','pmax','qmax'] - ierr, rdata = psspy.amachreal(sid, flag_plant, rstrings) - for rc in range (np.matrix(rdata).shape[0]) : - plants.append(rdata[rc]) - - cstrings = ['name'] - ierr, cdata = psspy.amachchar(sid, flag_plant, cstrings) - plants.append(cdata[0]) - - nb_plants=np.matrix(plants).shape[1] - for rc in range (0,nb_plants) : - plants[3][rc]=float(plants[3][rc]*int(plants[1][rc])) # If the plant isn't in service its production is fixed to zero - plants[4][rc]=float(plants[4][rc]*int(plants[1][rc])) # If the plant isn't in service its production is fixed to zero - - plants=zip(*plants) # transpose the matrix - - #Loads data (bus, active, reactive) - istrings = ['number'] - ierr, idata = psspy.aloadint(sid, flag_load, istrings) - loads=idata - - xstrings = ['mvaact'] - ierr, xdata = psspy.aloadcplx(sid, flag_load, xstrings) - loads.append(np.real(xdata)[0]) # Append the real part of the load - loads.append(np.imag(xdata)[0]) #Append the imaginary part of the load - - istrings = ['status'] - ierr, idata = psspy.aloadint(sid, flag_load, istrings) - loads.append(idata[0]) - - cstrings = ['name'] - ierr, cdata = psspy.aloadchar(sid, flag_load, cstrings) - loads.append(cdata[0]) - - nb_loads=np.matrix(loads).shape[1] - for rc in range (0,nb_loads) : - loads[1][rc]=float(loads[1][rc]*int(loads[3][rc])) # If the load isn't in service its consumption is fixed to zero - loads[2][rc]=float(loads[2][rc]*int(loads[3][rc])) # If the load isn't in service its consumption is fixed to zero - - loads=zip(*loads) # transpose the matrix - - #Fixed shunt data (number, MVAR, name, ...) - istrings = ['number','status'] - ierr, idata = psspy.afxshntbusint(sid, flag_bus, istrings) - shunt=idata - - xstrings = ['shuntact'] - ierr, xdata = psspy.afxshntbuscplx(sid, flag_bus, xstrings) - shunt.append(np.imag(xdata)[0]) #Append the imaginary part of the load - - cstrings = ['name'] - ierr, cdata = psspy.afxshntbuschar(sid, flag_bus, cstrings) - shunt.append(cdata[0]) - - shunt=zip(*shunt) # transpose the matrix - - return buses, lines, transf, plants, loads, shunt - -# Fonction pour ecrire un fichier de sortie type csv -def MyLogger(x,y,z,logCSVfilename,logTXTfilename,ite): - f=open(logCSVfilename, 'a') - f.write("%f;" % (ite)) - f.write(";") - nx = len(x) - for i in range(0,nx): - f.write(str(x[i]))#f.write("%f;" % (x[i])) - f.write(";") - f.write(";") - nz = len(z) - for i in range(0,nz): - f.write("%f;" % (z[i])) - f.write(";") - ny = len(y) - for j in range(0,ny): - f.write("%f;" % (y[j])) - f.write("\n") - f.close() - - f=open(logTXTfilename, 'a') - f.write("%f\t" % (ite)) - nx = len(x) - for i in range(0,nx): - f.write(str(x[i]))#f.write("%f\t" % (x[i])) - f.write("\t") - nz = len(z) - for i in range(0,nz): - f.write("%f\t" % (z[i])) - ny = len(y) - for j in range(0,ny): - f.write("%f\t" % (y[j])) - f.write("\n") - f.close() - - -# Fonction pour ecrire un fichier de sortie type csv pour chaque type de grandeur de sortie -def MyMultiLogger (x, y, sizeY, z, ite, folder, day, fich, hour): - global ny - y0=0 - for fich in range (np.size(sizeY,0)): - multilogfilename=folder+"\N"+day+"\Y"+str(fich)+"simulationDClog"+hour+".csv" - f=open(multilogfilename, 'a') - f.write("%f;" % (ite)) - f.write(";") - nx = len(x) - for i in range(0,nx): - f.write("%f;" % (x[i])) - f.write(";") - nz = len(z) - for i in range(0,nz): - f.write("%f;" % (z[i])) - f.write(";") - ny = sizeY[fich] - for j in range(0,ny): - f.write("%f;" % (y[j+y0])) - f.write("\n") - f.close() - y0 += ny - print "Fichiers "+str(ite)+" enregistres\n\n" - -# Analyses graphiques -def graphical_out (inputSample, outputSampleAll, inputDim, outputDim, montecarlosize) : - print "\n\n\n Writing graphical analysis files..." - # A Pairwise scatter plot of the inputs - myGraph = Graph() - myPairs = Pairs(inputSample, 'Inputs relations', inputSample.getDescription(), "red", "bullet") - myGraph.add(Drawable(myPairs)) - myGraph.draw("Input Samples",640,480,GraphImplementation.PDF) - #View(myGraph.getBitmap()) - print 'Input pairwise scatterplot done...' - - # A Pairwise scatter plot of the outputs - myGraph = Graph() - myPairs = Pairs(outputSampleAll, 'Output relations', outputSampleAll.getDescription(), "red", "bullet") - myGraph.add(Drawable(myPairs)) - myGraph.draw("Output Samples",640,480,GraphImplementation.PDF) - #View(myGraph.getBitmap()) - print 'Output pairwise scatterplot done...' - - # A Pairwise scatter plot of the inputs/outputs - # Draw all scatter plots yj vs xi - for j in range(outputDim): - outputSamplej=outputSampleAll.getMarginal(j) - Ylabelstr=outputSamplej.getDescription()[0] - for i in range(inputDim): - inputSamplei=inputSample.getMarginal(i) - Xlabelstr=inputSamplei.getDescription()[0] - X=NumericalSample(montecarlosize,2) - for k in range(montecarlosize): - X[k,0]=inputSamplei[k][0] - X[k,1]=outputSamplej[k][0] - myGraph = Graph() - myCloud=Cloud(X); - mytitle=Ylabelstr+"vs"+Xlabelstr - myGraph.add(Drawable(myCloud)) - myGraph.setAxes(1) - myGraph.setXTitle(Xlabelstr) - myGraph.setYTitle(Ylabelstr) - myGraph.draw(mytitle,640,480,GraphImplementation.PDF) - #ViewImage(myGraph.getBitmap()) - print 'Input/Output pairwise scatterplot done...' - - # An histogram of the inputs - for i in range(inputDim): - inputSamplei=inputSample.getMarginal(i) - myGraph = VisualTest.DrawHistogram(inputSamplei) - labelarray=inputSamplei.getDescription() - labelstr=labelarray[0] - myGraph.setTitle(labelstr) - myGraph.setName(labelstr) - myGraph.setXTitle(labelstr) - myGraph.setYTitle("Frequency") - myGraph.draw(labelstr,640,480,GraphImplementation.PDF) - #View(myGraph.getBitmap()) - print 'Input histogram done...' - - # An histogram of the outputs - for j in range(outputDim): - outputSamplej=outputSampleAll.getMarginal(j) - myGraph = VisualTest.DrawHistogram(outputSamplej) - labelarray=outputSamplej.getDescription() - labelstr=labelarray[0] - myGraph.setTitle(labelstr) - myGraph.setName(labelstr) - myGraph.setXTitle(labelstr) - myGraph.setYTitle("Frequency") - myGraph.draw(labelstr,640,480,GraphImplementation.PDF) - #View(myGraph.getBitmap()) - print 'Output histogram done' - print 'Graphical output terminated' - -def config_ENR(path_config_ENR) : - PV=[] - Wind1=[] - Wind2=[] - Interco=[] - f=open(path_config_ENR,"r") - lines=f.readlines() - for i in range (len(lines)) : - line = lines[i].split(";") - if str(line[0]).upper() == 'PV' : - PV.append([int(line[1]),i-1,int(line[3])]) - elif str(line[0]).upper() == 'W1' : - Wind1.append([int(line[1]),i-1,int(line[3])]) - elif str(line[0]).upper() == 'W2' : - Wind2.append([int(line[1]),i-1,int(line[3])]) - elif str(line[0]).upper() == 'I' : - Interco.append([int(line[1]),i-1,int(line[3])]) - else : - pass - return PV, Wind1, Wind2, Interco - -def config_contingency(path_config_contin) : - lines_con=[] - groups_con=[] - # Loading of lines contingency configuration - f=open(path_config_contin[0],"r") - lines=f.readlines() - f.close() - for i in range (len(lines)) : - line=lines[i].split(";") - try : - int(line[1]) - except ValueError : - pass - else : - if line[0] == '' : - line[0] = '0' - lines_con.append([int(line[1]), int(line[3]), str(line[5]),float(line[0].replace(',','.'))]) - - # Loading of groups contingency configuration - f=open(path_config_contin[1],"r") - lines=f.readlines() - f.close() - for i in range (len(lines)) : - line=lines[i].split(";") - try : - int(line[1]) - except ValueError : - pass - else : - if line[0] == '' : - line[0] = '0' - groups_con.append([int(line[1]), int(line[3]),float(line[0].replace(',','.'))]) - - sizeLines = len(lines_con) - sizeGroups = len(groups_con) - val=[] - prob=[] - for i in range(sizeLines+sizeGroups) : - val.append(int(i)) - - for i in range (sizeLines) : - prob.append(lines_con[i][3]) - for i in range (sizeGroups) : - prob.append(groups_con[i][2]) - - return lines_con, groups_con, val, prob - -def LoadARMA(time_serie_file, time_serie_SS, time_serie_TH) : - f=open(time_serie_file,"r") - lines=f.readlines() - N=len(lines) - Xt=[] - for i in range(N) : - Xt.append([float(lines[i])]) - - myTG=RegularGrid(0,float(time_serie_SS),N) - TS=TimeSeries(myTG,NumericalSample(Xt)) - myWN=WhiteNoise(Distribution(Normal(0,1)),myTG) - myState=ARMAState(TS.getSample(),NumericalSample()) - p=12 - q=0 - d=1 - myFactory = ARMALikelihoodFactory ( p , q , d ) - myARMA = myFactory.build(TS) - - myARMA.setState(myState) - - AR = myARMA.getARCoefficients() - MA = myARMA.getMACoefficients() - - ts = myARMA.getRealization() - ts.setName('A realization') - myTSGraph=ts.drawMarginal(0) - myTSGraph.draw('Realization'+str(p)+","+str(q),640,480,GraphImplementation.PDF) - myARMAState=myARMA.getState() - - #Make a prediction of the future on next Nit instants - Nit = int(time_serie_TH) - myARMA2=ARMA(AR,MA,myWN,myARMAState) - possibleFuture=myARMA2.getFuture(Nit) - possibleFuture.setName('Possible future') - - Xt2=[] - for i in range (len(possibleFuture)): - Xt2.append(possibleFuture.getValueAtIndex(i)[0]) - Max=float(max(Xt2)) - Min=float(min(Xt2)) - h=float(Max-Min) - for i in range (len(possibleFuture)): - value= (Xt2[i]-Min+h/3)/(Max-Min+h/3) - possibleFuture.setValueAtIndex(i,NumericalPoint(1,value)) - - myFG=possibleFuture.drawMarginal(0) - myFG.draw('Future'+str(Nit),640,480,GraphImplementation.PDF) - - return possibleFuture - -def LoadTS(time_serie_file) : - TS=[] - for i in range(len(time_serie_file)) : - if time_serie_file[i] == -1 : - pass - else : - f=open(time_serie_file[i],"r") - lines=f.readlines() - N=len(lines) - Xt=[] - for j in range(N) : - try : - float(lines[i]) - except ValueError : - lines[i] = commaToPoint(lines[i]) - else : - pass - Xt.append([float(lines[j])]) - TS.append(Xt) - return TS - - -def KSDist(filename) : - f=open(filename,"r") - print "Creating Kernel Smoothing distribution from: "+str(filename) - lines=f.readlines() - N=len(lines) - Xt=[] - for i in range(N) : - if lines[i] == "\n" : - print "End of file" - break - else : - try : - float(lines[i]) - except ValueError : - lines[i] = commaToPoint(lines[i]) - else : - pass - Xt.append([float(lines[i])]) - NS=NumericalSample(Xt) - kernel=KernelSmoothing(Uniform()) - myBandwith = kernel.computeSilvermanBandwidth(NS) - KS=kernel.build(NS,myBandwith,1) - return KS - -def threshold (inputRandomVector, outputVariableOfInterest,pssefun,inputDistribution) : - # We create a quadraticCumul algorithm - myQuadraticCumul = QuadraticCumul(outputVariableOfInterest) - - # We compute the several elements provided by the quadratic cumul algorithm - # and evaluate the number of calculus needed - nbBefr = pssefun.getEvaluationCallsNumber() - - # Mean first order - meanFirstOrder = myQuadraticCumul.getMeanFirstOrder()[0] - nbAfter1 = pssefun.getEvaluationCallsNumber() - - # Mean second order - meanSecondOrder = myQuadraticCumul.getMeanSecondOrder()[0] - nbAfter2 = pssefun.getEvaluationCallsNumber() - - # Standard deviation - stdDeviation = sqrt(myQuadraticCumul.getCovariance()[0,0]) - nbAfter3 = pssefun.getEvaluationCallsNumber() - - print "First order mean=", myQuadraticCumul.getMeanFirstOrder()[0] - print "Evaluation calls number = ", nbAfter1 - nbBefr - print "Second order mean=", myQuadraticCumul.getMeanSecondOrder()[0] - print "Evaluation calls number = ", nbAfter2 - nbAfter1 - print "Standard deviation=", sqrt(myQuadraticCumul.getCovariance()[0,0]) - print "Evaluation calls number = ", nbAfter3 - nbAfter2 - - print "Importance factors=" - for i in range(inputRandomVector.getDimension()) : - print inputDistribution.getDescription()[i], " = ", myQuadraticCumul.getImportanceFactors()[i] - print "" - -def getUserDefined (val, prob): - try : - val = val.split(',') - prob = prob.split(',') - except AttributeError : - pass - dim = len (val) - coll = UserDefinedPairCollection() - for i in range (dim) : - UDpair=UserDefinedPair(NumericalPoint(1,float(val[i])),float(prob[i])) - coll.add(UDpair) - return UserDefined(coll) - -def getHistogram (step, prob) : - try : - step = step.split(',') - prob = prob.split(',') - except AttributeError : - pass - dim = len (step) - myHistogram = HistogramPairCollection(dim) - for i in range (dim) : - myHistogram[i]=HistogramPair(float(step[i]),float(prob[i])) - return myHistogram - -def getUserLaw (description) : - law_num=int(description[0]) - time_serie=0 - time_serie_file='' - time_serie_SS=0 - time_serie_TH=0 - if law_num == 1 : - law=Normal(float(description[1]),float(description[2])) - elif law_num == 2 : - law=Uniform(float(description[1]),float(description[2])) - elif law_num == 3 : - law=Exponential(float(description[1]),float(description[2])) - elif law_num == 4 : - law=Weibull(float(description[1]),float(description[2]),float(description[3])) - elif law_num == 5 : - law=TruncatedNormal(float(description[1]),float(description[2]),float(description[3]),float(description[4])) - elif law_num == 6 : - law=UserDefined(getUserDefined (description[1], description[2])) - elif law_num == 7 : - law=Histogram(0.0, getHistogram (description[1], description[2])) - elif law_num == 10 : - law=KSDist(description[1]) - elif law_num == 20 : - law = Uniform(0.999999,1) - time_serie=1 - time_serie_file=description[1] - """time_serie_SS=description[2] - time_serie_TH=description[3]""" - else : - law = Uniform(0.999999,1) - return law, [time_serie, time_serie_file] #[time_serie, time_serie_file, time_serie_SS, time_serie_TH] - -def contingency_automatic (dfxPath, acccPath, rate) : - psspy.accc_with_dsp_3( 0.5,[0,0,0,1,1,2,0,0,0,0,0],r"""ALL""",dfxPath,acccPath,"","","") - psspy.accc_single_run_report_4([1,int(rate),int(rate),1,1,0,1,0,0,0,0,0],[0,0,0,0,6000],[ 0.5, 5.0, 100.0,0.0,0.0,0.0, 99999.],acccPath) - - rslt_summary=pssarrays.accc_summary(acccPath) - if int(rate) == 1 : - rate = rslt_summary.rating.a - elif int(rate) == 2 : - rate = rslt_summary.rating.b - elif int(rate) == 3 : - rate = rslt_summary.rating.c - else : - print "NO RATE CHOOSEN" - - Labels=rlst.colabel - contin_load=[] - for label in Labels : - t=[] - rslt=pssarrays.accc_solution(acccPath,contingency,label,0.5,5.0) - ampFlow=rslt.ampflow - for i in range (len(rA)) : - t.append(ampFlow[i]/rate[i]) - contin_load.append(t) - return contin_load - -def commaToPoint (string) : - stringReplaced = string.replace(',','.') - return stringReplaced diff --git a/PSEN_Eficas/PSEN_Cata.py b/PSEN_Eficas/PSEN_Cata.py deleted file mode 100644 index 908224b5..00000000 --- a/PSEN_Eficas/PSEN_Cata.py +++ /dev/null @@ -1,2498 +0,0 @@ -# -*- coding: iso-8859-1 -*- -# Copyright (C) 2007-2013 EDF R&D -# -# 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 -# - -# -------------------------------------------------- -# debut entete -# -------------------------------------------------- - -#from Accas import ASSD, JDC_CATA, AU_MOINS_UN, PROC, SIMP, FACT, OPER, MACRO, BLOC, A_VALIDATOR -from Accas import * -import opsPSEN - -class loi ( ASSD ) : pass -class variable ( ASSD ) : pass -class sd_charge ( ASSD ) : pass -class sd_generateur ( ASSD ) : pass -class sd_ligne ( ASSD ) : pass -class sd_transfo ( ASSD ) : pass -class sd_moteur (ASSD) : pass -#class sd_busbar ( sd_generateur,sd_charge ) : pass - -import types -class Tuple: - def __init__(self,ntuple): - self.ntuple=ntuple - - def __convert__(self,valeur): - if type(valeur) == types.StringType: - return None - if len(valeur) != self.ntuple: - return None - return valeur - - def info(self): - return "Tuple de %s elements" % self.ntuple - - __repr__=info - __str__=info - -class Matrice: - def __init__(self,nbLigs=None,nbCols=None,methodeCalculTaille=None,formatSortie="ligne",valSup=None,valMin=None,structure=None): - self.nbLigs=nbLigs - self.nbCols=nbCols - self.methodeCalculTaille=methodeCalculTaille - self.formatSortie=formatSortie - self.valSup=valSup - self.valMin=valMin - self.structure=structure - - def __convert__(self,valeur): - # Attention ne verifie pas grand chose - if type(valeur) != types.ListType : - return None - return valeur - - def info(self): - return "Matrice %s x %s" % (self.nbLigs, self.nbCols) - - __repr__=info - __str__=info - - -#CONTEXT.debug = 1 -JdC = JDC_CATA ( code = 'PSEN', - execmodul = None, - regles = ( AU_MOINS_UN ( 'PSSE_PARAMETERS' ), - AU_MOINS_UN ( 'DIRECTORY' ), - AU_MOINS_UN ( 'DISTRIBUTION' ), - AU_MOINS_UN ( 'SIMULATION' ), - AU_PLUS_UN ( 'PSSE_PARAMETERS' ), - AU_PLUS_UN ( 'DIRECTORY' ), - AU_PLUS_UN ( 'SIMULATION' ), - AU_PLUS_UN ( 'CORRELATION' ), - AU_PLUS_UN ( 'N_1_GENERATORS' ), - AU_PLUS_UN ( 'N_1_LINES' ), - AU_PLUS_UN ( 'N_1_LOADS' ), - AU_PLUS_UN ( 'N_1_MOTORS' ), - AU_PLUS_UN ( 'N_1_TRANSFORMERS' ), - - ), - ) # Fin JDC_CATA - - -# -------------------------------------------------- -# fin entete -# -------------------------------------------------- - -MONGENER = OPER ( nom = "MONGENER", - sd_prod = sd_generateur, - UIinfo = {"groupes": ("CACHE")}, - op = None, - fr = "Generateur", - ang = "Generator", - - ID = SIMP ( statut = 'o', typ = "TXM", fr = "num bus", ang = "num bus",), -) -MONMOTEUR = OPER ( nom = "MONMOTEUR", - sd_prod = sd_moteur, - UIinfo = {"groupes": ("CACHE")}, - op = None, - fr = "Moteur", - ang = "Motor", - - ID = SIMP ( statut = 'o', typ = "TXM", fr = "num bus", ang = "num bus",), -) -MACHARGE = OPER ( nom = "MACHARGE", - sd_prod = sd_charge, - UIinfo = {"groupes": ("CACHE")}, - op = None, - fr = "Charge", - ang = "Load", - - ID = SIMP ( statut = 'o', typ = "TXM", fr = "nom charge", ang = "load name",), -) -MALIGNE = OPER ( nom = "MALIGNE", - sd_prod = sd_ligne, - UIinfo = {"groupes": ("CACHE")}, - op = None, - fr = "Ligne", - ang = "Line", - - ID = SIMP ( statut = 'o', typ = "TXM", fr = "nom ligne", ang = "line name",), -) -MONTRANSFO = OPER ( nom = "MONTRANSFO", - sd_prod = sd_transfo, - UIinfo = {"groupes": ("CACHE")}, - op = None, - fr = "Transformateur", - ang = "Transformer", - - ID = SIMP ( statut = 'o', typ = "TXM", fr = "nom transformateur", ang = "transformer name",), -) - - - -PSSE_PARAMETERS = PROC ( nom = "PSSE_PARAMETERS", - op=None, - docu = "", - ALGORITHM = SIMP ( statut = "o", - typ='TXM', - into=["Optimum Power Flow","Economic Dispatch and Power Flow"], - defaut="Optimum Power Flow", - ), - I_MAX = SIMP ( statut = "o", - typ='TXM', - into=['RateA','RateB','RateC'], - defaut='RateA', - ), - LOCK_TAPS = SIMP ( statut = "o", - typ=bool, - defaut=True, - ), - - b_OPF = BLOC (condition = "ALGORITHM == 'Optimum Power Flow'", - FUEL_COST = SIMP ( statut = "o", - typ=bool, - defaut=True, - ), - LOADSHEDDING_COST = SIMP ( statut = "o", - typ=bool, - defaut=False, - ), - MVAR_COST = SIMP ( statut = "o", - typ=bool, - defaut=False, - ), - ITERATION_LIMIT = SIMP ( statut = "o", - typ = "I", - val_min=1, - defaut=20, - ), - QGEN_CONTROL = SIMP ( statut = "o", - typ = bool, - defaut = True, - ), - b_QgenControl = BLOC (condition = "QGEN_CONTROL == True", - SAVE_CASE_BEFORE_QCONTROL = SIMP ( statut = "o", - typ = bool, - defaut = False, - fr = "Sauvegarder des fichiers de cas avant d'avoir deconnecte les groupes ne produisant pas de la puissance active", - ang = "Save network case files before having disconnected groups that dont generate active power.", - ), - ), - ), - - b_ECD = BLOC (condition = "ALGORITHM == 'Economic Dispatch and Power Flow'", - ecd_file=SIMP(statut="o", typ = ('Fichier', 'Economic Dispatch Files (*.ecd);;All Files (*)',),), - ), - -## P_MIN= SIMP ( statut = "o", -## typ=bool, -## defaut=True, -## ), -) - -SIMULATION = PROC ( nom = "SIMULATION", - op = None, - docu = "", - regles =(EXCLUS('NUMBER_PACKAGE','CONVERGENCE'), UN_PARMI('NUMBER_PACKAGE','CONVERGENCE'),), - - SIZE_PACKAGE = SIMP ( statut = "o", - typ = "I", - val_min=10, - defaut=100, - ), - NUMBER_PACKAGE = SIMP ( statut = "f", - typ = "I", - val_min=1, - ), - CONVERGENCE = SIMP ( statut = "f", - typ="I", - into=[1], - ), - -## STUDY = SIMP ( statut = "o", -## typ = "TXM", -## into = ( 'N-1', 'Load', 'Wind-1', 'Wind-2', 'PV' ), -## max=5, -## fr = "Affichage du niveau de wrapper de la bibliotheque Open TURNS", -## ang = "Open TURNS library debug level print", -## ), -) - - -#================================ -# Definition du modele physique -#================================ - - - -CORRELATION = PROC ( nom = 'CORRELATION', - op = None, - docu = "", - fr = "Correlation entre variables", - ang = "Variable correlation", - -#### Copula = SIMP ( statut = "o", -#### typ = 'TXM', -#### into = ( "Independent", "Normal" ), -#### defaut = "Independent", -#### fr = "Type de la copule", -#### ang = "Copula kind", -#### ), -## -## # Matrix = BLOC ( condition = "Copula in ( 'Normal', )", -## - CorrelationMatrix = SIMP ( statut = "o", - typ = Matrice(nbLigs=None, - nbCols=None, - methodeCalculTaille='nNbDeDistributions', - structure="symetrique"), - fr = "Matrice de correlation entre les variables d'entree", - ang = "Correlation matrix for input variables", - #val_max=1.0, - #val_min=-1.0 - ), -## #), # Fin BLOC Matrix -## -## -) - -DIRECTORY = MACRO ( nom = 'DIRECTORY', - op=None, - fr = "Chargement des directoires et fichiers", - ang = "Load directories and files necessary to run PSEN", - sd_prod = opsPSEN.INCLUDE, - op_init = opsPSEN.INCLUDE_context, - #sd_prod=None, - fichier_ini = 1, - - PSSE_path=SIMP(statut="o",typ='Repertoire',defaut='C:\Program Files\PTI\PSSE33\PSSBIN'), - sav_file=SIMP(statut="o", typ = ('Fichier', 'Network Case Files (*.sav);;All Files (*)',),), - results_folder=SIMP(statut="o",typ='Repertoire'), - #lines_file=SIMP(statut="o" ,typ = ('Fichier', 'Wrapper Files (*.csv);;All Files (*)',),), - #groups_file=SIMP(statut="o", typ = ('Fichier', 'Wrapper Files (*.csv);;All Files (*)',),), - #generationsystem_file=SIMP(statut="o" ,typ = ('Fichier', 'Wrapper Files (*.csv);;All Files (*)',),), - -) - - - -#================================ -# Importation des fichiers csv N-1 -#================================ - -N_1_LINES = PROC( nom="N_1_LINES", - op = None, - docu = "", - fr = "N-1 lignes", - ang = "N-1 lines", - Activated = SIMP ( statut='o', typ=bool, defaut=True), -## FileName = SIMP ( statut = "o", -## typ = ('Fichier', 'Wrapper Files (*.csv);;All Files (*)',), -## fr = "chemin du fichier csv des probabilites des defauts lignes", -## ang = "csv file path with probabilities of line outages", -## ), - Probability = SIMP ( statut = 'o', - typ = Tuple(2), - max = '**', - fr = "Probabilite d'indisponibilite de la ligne", - ang = "Probability that the line is not available", - validators=VerifTypeTuple((sd_ligne,'R')),), - ) - -N_1_TRANSFORMERS = PROC( nom="N_1_TRANSFORMERS", - op = None, - docu = "", - fr = "N-1 transformateurs", - ang = "N-1 transformers", - Activated = SIMP ( statut='o', typ=bool, defaut=True), -## FileName = SIMP ( statut = "o", -## typ = ('Fichier', 'Wrapper Files (*.csv);;All Files (*)',), -## fr = "chemin du fichier csv des probabilites des defauts transformateur", -## ang = "csv file path with probabilities of transformer outages", -## ), - Probability = SIMP ( statut = 'o', - typ = Tuple(2), - max = '**', - fr = "Probabilite d'indisponibilite de la ligne", - ang = "Probability that the line is not available", - validators=VerifTypeTuple((sd_transfo,'R')),), - ) -N_1_GENERATORS = PROC( nom="N_1_GENERATORS", - op = None, - docu = "", - fr = "N-1 generateurs", - ang = "N-1 generators", - Activated = SIMP ( statut='o', typ=bool, defaut=True), -## FileName = SIMP ( statut = "o", -## typ = ('Fichier', 'Wrapper Files (*.csv);;All Files (*)',), -## fr = "chemin du fichier csv des probabilites des defauts generateurs", -## ang = "csv file path with probabilities of generator outages", -## ), - Probability = SIMP ( statut = 'o', - typ = Tuple(2), - max = '**', - fr = "Probabilite d'indisponibilite du generateur", - ang = "Probability that the generator is not available", - validators=VerifTypeTuple((sd_generateur,'R')),), - ) -N_1_MOTORS = PROC( nom="N_1_MOTORS", - op = None, - docu = "", - fr = "N-1 moteurs", - ang = "N-1 motors", - Activated = SIMP ( statut='o', typ=bool, defaut=True), -## FileName = SIMP ( statut = "o", -## typ = ('Fichier', 'Wrapper Files (*.csv);;All Files (*)',), -## fr = "chemin du fichier csv des probabilites des defauts generateurs", -## ang = "csv file path with probabilities of generator outages", -## ), - Probability = SIMP ( statut = 'o', - typ = Tuple(2), - max = '**', - fr = "Probabilite d'indisponibilite du moteur", - ang = "Probability that the motor is not available", - validators=VerifTypeTuple((sd_moteur,'R')),), - ) -N_1_LOADS = PROC( nom="N_1_LOADS", - op = None, - docu = "", - fr = "N-1 charges", - ang = "N-1 loads", - Activated = SIMP ( statut='o', typ=bool, defaut=True), -## FileName = SIMP ( statut = "o", -## typ = ('Fichier', 'Wrapper Files (*.csv);;All Files (*)',), -## fr = "chemin du fichier csv des probabilites des defauts charges", -## ang = "csv file path with probabilities of load outages", -## ), - Probability = SIMP ( statut = 'o', - typ = Tuple(2), - max = '**', - fr = "Probabilite d'indisponibilite du generateur", - ang = "Probability that the generator is not available", - validators=VerifTypeTuple((sd_charge,'R')),), - ) - - - - -#================================ -# Definition des LOIS -#================================ - -# Nota : les variables de type OPER doivent etre en majuscules ! -# Nota : les variables de type OPER doivent etre de premier niveau (pas imbriquees dans un autre type) -DISTRIBUTION = OPER ( nom = "DISTRIBUTION", - sd_prod = loi, - op = 68, - fr = "Definitions des lois marginales utilisees par les variables d'entree", - -#==== -# Choisir generateur ou charge -#==== - -## TypeMachine = SIMP ( statut='o', typ='TXM', -## into = ('charge','vent1','vent2','pv','N-1',), -## ), - Activated = SIMP ( statut='o', typ=bool, defaut=True), - ComponentType = SIMP (statut='o', typ='TXM', - into = ('Generator','Load','Motor','Line','Transformer'),), - b_gener = BLOC (condition = "ComponentType == 'Generator'", - - Type = SIMP (statut= "o", typ = "TXM", - into = ("Generator Power Level", "Generator Availability"), - fr = "Choisir si c'est le niveau de puissance ou la disponibilit� du generateur qui sera tiree", - ang= "Choose whether the power level or the availability of the generator will be set by the law", - defaut = "Generator Power Level", - ), - - Sampling = SIMP (statut= "o", typ = "TXM", - into = ("Same sample for all generators", "One sample per generator"), - fr = "Choisir si une seule tirage sera fait pour tous les generateurs ou si des tirages differents seront faits pour chaque generateur", - ang= "Choose whether one drawing/sample will be performed for all of the generators or whether a different drawing/sample will be performed for each generator.", - defaut = "Same sample for all generators", - ), - - Generator = SIMP(statut='o',typ=sd_generateur,max="**", homo="SansOrdreNiDoublon",docu="sd_generateur"), - -#==== -# Type de distribution -#==== - - b_gener_level = BLOC (condition= "Type == 'Generator Power Level'", - - Law = SIMP ( statut = "o", typ = "TXM", - into = ( "Exponential", - "Histogram", - "Normal", - #"Rayleigh", - "PDF_from_file", - "TruncatedNormal", - "TimeSeries_from_file", - "Uniform", - "UserDefined", - "Weibull", - ), - fr = "Choix du type de la loi marginale", - ang = "1D marginal distribution", - ), - - -#==== -# Definition des parametres selon le type de la loi -#==== - - - EXPONENTIAL = BLOC ( condition = " Law in ( 'Exponential', ) ", - - Lambda = SIMP ( statut = "o", - typ = "R", - max = 1, - val_min = 0., - fr = "Parametre Lambda | Lambda > 0", - ang = "Lambda parameter | Lambda > 0", - ), - - Gamma = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Borne inferieure du support de la loi", - ang = "Support lower bound", - ), - - ), # Fin BLOC EXPONENTIAL - - - HISTOGRAM = BLOC ( condition = " Law in ( 'Histogram', ) ", - - First = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Borne inferieure du supoport de la loi", - ang = "Support lower bound", - ), - - # Il faut definir une collection de couples ( x,p ) - Values = SIMP ( statut = 'o', - typ = Tuple(2), - max = '**', - fr = "Liste de couples : largeur de classe, hauteur de classe", - ang = "Class bandwidth, class height couple list", - validators=VerifTypeTuple(('R','R')), - ), - - ), # Fin BLOC HISTOGRAM - - - NORMAL = BLOC ( condition = " Law in ( 'Normal', ) ", - - Mu = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Moyenne de la loi", - ang = "Mean value", - ), - - Sigma = SIMP ( statut = "o", - typ = "R", - max = 1, - val_min = 0., - fr = "Ecart type de la loi", - ang = "Standard deviation", - ), - - ), # Fin BLOC NORMAL - - - RAYLEIGH = BLOC ( condition = " Law in ( 'Rayleigh', ) ", - - Sigma = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Parametre Sigma de la loi | Sigma > 0", - ang = "Sigma parameter | Sigma > 0", - ), - - Gamma = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Borne inferieure du support de la loi", - ang = "Support lower bound", - ), - ), # Fin BLOC RAYLEIGH - - PDF = BLOC ( condition = " Law in ( 'PDF_from_file', ) ", - - FileName = SIMP ( statut = "o", - typ = ('Fichier', 'Wrapper Files (*.csv);;All Files (*)',), - fr = "Nom du fichier .csv", - ang = ".csv file name", - ), - ), - - - - TRUNCATEDNORMAL = BLOC ( condition = " Law in ( 'TruncatedNormal', ) ", - - MuN = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Moyenne de la loi Normale non tronqu�e", - ang = "Mean value of the associated non truncated normal distribution", - ), - - SigmaN = SIMP ( statut = "o", - typ = "R", - max = 1, - val_min = 0., - fr = "Ecart-type de la loi Normale non tronqu�e", - ang = "Standard deviation of the associated non truncated normal distribution", - ), - - A = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Borne inferieure de la loi | A < B", - ang = "Lower bound | A < B", - ), - - B = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Borne superieure de la loi | A < B", - ang = "Upper bound | A < B", - ), - - ), # Fin BLOC TRUNCATEDNORMAL - - - TimeSeries = BLOC ( condition = " Law in ( 'TimeSeries_from_file', ) ", - - FileName = SIMP ( statut = "o", - typ = ('Fichier', 'Wrapper Files (*.csv);;All Files (*)',), - fr = "Fichier CSV d'une serie temporelle", - ang = "CSV file of a time series", - ), - ), - - - UNIFORM = BLOC ( condition = " Law in ( 'Uniform', ) ", - - A = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Borne inferieure du support de la loi | A < B", - ang = "Support lower bound | A < B", - ), - - B = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Borne superieure du support de la loi | A < B", - ang = "Support upper bound | A < B", - ), - - ), # Fin BLOC UNIFORM - - - USERDEFINED = BLOC ( condition = " Law in ( 'UserDefined', ) ", - - # Il faut definir une collection de couples ( x,p ) - Values = SIMP ( statut = 'o', - typ = Tuple(2), - max = '**', - fr = "Liste de couples : (valeur, prob.)", - ang = "List of pairs : (value, prob.)", - validators=VerifTypeTuple(('R','R')), - ), - - ), # Fin BLOC USERDEFINED - - - WEIBULL = BLOC ( condition = " Law in ( 'Weibull', ) ", - - Settings = SIMP ( statut = "o", - typ = "TXM", - max = 1, - into = ( "AlphaBeta", "MuSigma" ), - defaut = "AlphaBeta", - fr = "Parametrage de la loi weibull", - ang = "Weibull distribution parameter set", - ), - - AlphaBeta_Parameters = BLOC ( condition = " Settings in ( 'AlphaBeta', ) ", - - Alpha = SIMP ( statut = "o", - typ = "R", - max = 1, - val_min = 0., - fr = "Parametre Alpha de la loi | Alpha > 0", - ang = "Alpha parameter | Alpha > 0", - ), - - Beta = SIMP ( statut = "o", - typ = "R", - max = 1, - val_min = 0., - fr = "Parametre Beta de la loi | Beta > 0", - ang = "Beta parameter | Beta > 0", - ), - - ), # Fin BLOC AlphaBeta_Parameters - - - MuSigma_Parameters = BLOC ( condition = " Settings in ( 'MuSigma', ) ", - - Mu = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Moyenne de la loi", - ang = "Mean value", - ), - - Sigma = SIMP ( statut = "o", - typ = "R", - max = 1, - val_min = 0., - fr = "Ecart type de la loi", - ang = "Standard deviation", - ), - - ), # Fin BLOC MuSigma_Parameters - - Gamma = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Borne inferieure du support de la loi", - ang = "Support lower bound", - ), - - ), # Fin BLOC WEIBULL - - - Transfer_Function = FACT(statut='f', - - TF_Input = SIMP ( statut='o', - typ = 'TXM', - fr = 'Entrer une fonction de transfert � partir d''un fichier .pow (vitesse de vent - puissance eolienne)\n \ - ou entrer une liste de tuples (valeur tiree - puissance normalisee)', - ang = 'Enter wind speed - turbine production transfer function as a .pow file, \n \ - or enter a generic list of (law output value, normalized power output) tuples', - into = ('.pow file', 'tuples list'), - ), - b_file = BLOC(condition = "TF_Input == '.pow file'", - File_Name = SIMP ( statut = "o", - typ = ('Fichier', 'Pow files (*.pow);;All Files (*)',), - fr = "Nom du fichier de transfer .pow", - ang = ".pow file name", - ), - Wind_Speed_Measurement_Height = SIMP ( statut = 'o', - typ = "R", - max = 1, - fr = 'Hauteur (en metres) a laquelle les mesures de vitesse du vent ont ete prises', - ang = 'Height of wind speed measurements (m)', - sug = 10, - val_min = 0, - ), - Hub_Height = SIMP (statut = 'o', - typ = "R", - fr = 'hauteur de moyeu de l''eolienne', - ang = 'wind turbine hub height', - sug = 80, - val_min = 0,), - AlphaWS = SIMP (statut = 'o', - typ = "R", - fr = 'l''alpha pour extrapoler les mesures de vitesse du vent a la hauteur du moyeu ', - ang = 'alpha used to extrapolate wind speed measurements to hub height', - defaut = 1./7, - val_min = 0, - val_max = 1, - ), - Percent_Losses = SIMP (statut = 'o', - typ = "R", - fr = 'pourcentage de pertes entre la sortie theorique d''une turbine et la sortie de la centrale', - ang = 'percent losses between theoretical power output of a single turbine and the output of the farm', - defaut = 5, - val_min = 0, - val_max = 100, - ), - ), #fin du bloc FileName - - b_tuples = BLOC(condition = "TF_Input == 'tuples list'", - - TF_Values = SIMP ( statut = 'o', - typ = Tuple(2), - max = '**', - min = 2, - fr = "Liste de couples : valeur tiree, puissance normalisee sortie", - ang = "List of couples : value set by law, normalized power output", - validators=VerifTypeTuple(('R','R')), - ), - ), #fin du block Tuples List - - ), #fin du FACT Transfer Function - - ), #fin du bloc generator level - - - b_gener_avail = BLOC (condition= "Type == 'Generator Availability'", - - Law = SIMP ( statut = "o", typ = "TXM", - into = ( #"Exponential", - #"Histogram", - #"Normal", - #"Rayleigh", - #"PDF_from_file", - #"TruncatedNormal", - "TimeSeries_from_file", - #"Uniform", - "UserDefined", - #"Weibull", - ), - fr = "Choix du type de la loi marginale", - ang = "1D marginal distribution", - defaut="UserDefined", - ), - - -#==== -# Definition des parametres selon le type de la loi -#==== - - - TimeSeries = BLOC ( condition = " Law in ( 'TimeSeries_from_file', ) ", - - FileName = SIMP ( statut = "o", - typ = ('Fichier', 'Wrapper Files (*.csv);;All Files (*)',), - fr = "Fichier CSV d'une serie temporelle", - ang = "CSV file of a time series", - ), - ), - - - USERDEFINED = BLOC ( condition = " Law in ( 'UserDefined', ) ", - - # Il faut definir une collection de couples ( x,p ) - Values = SIMP ( statut = 'o', - typ = Tuple(2), - max = '**', - fr = "Liste de couples : (valeur, prob.)", - ang = "List of pairs : (value, prob.)", - validators=VerifTypeTuple(('R','R')), - defaut=((0,0.0),(1,1.0)), - ), - - ), # Fin BLOC USERDEFINED - - - ), #fin du bloc generator avail - - - ), #fin du bloc generateur - -#Bloc Charge - b_charge = BLOC (condition = "ComponentType == 'Load'", - - -#==== -# Type de distribution -#==== - - Type = SIMP (statut= "o", typ = "TXM", - into = ("Load Level", "Load Availability"), - fr = "Choisir si c'est le niveau de charge ou la disponibilit� de la charge qui sera tiree", - ang= "Choose whether the power level or the availability of the load will be set by the law", - defaut = "Load Level", - ), - - Sampling = SIMP (statut= "o", typ = "TXM", - into = ("Same sample for all loads", "One sample per load"), - fr = "Choisir si une seule tirage sera fait pour tous les charges ou si des tirages differents seront faits pour chaque charge", - ang= "Choose whether one drawing/sample will be performed for all of the loads or whether a different drawing/sample will be performed for each load.", - defaut = "Same sample for all loads", - ), - - Load = SIMP(statut='o',typ=sd_charge,max="**", homo="SansOrdreNiDoublon",), - - - b_charge_level = BLOC (condition = "Type == 'Load Level'", - - Law = SIMP ( statut = "o", typ = "TXM", - into = ( "Exponential", - "Histogram", - "Normal", - #"Rayleigh", - "PDF_from_file", - "TruncatedNormal", - "TimeSeries_from_file", - "Uniform", - "UserDefined", - "Weibull", - ), - fr = "Choix du type de la loi marginale", - ang = "1D marginal distribution", - ), - - -#==== -# Definition des parametres selon le type de la loi -#==== - - - EXPONENTIAL = BLOC ( condition = " Law in ( 'Exponential', ) ", - - Lambda = SIMP ( statut = "o", - typ = "R", - max = 1, - val_min = 0., - fr = "Parametre Lambda | Lambda > 0", - ang = "Lambda parameter | Lambda > 0", - ), - - Gamma = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Borne inferieure du support de la loi", - ang = "Support lower bound", - ), - - ), # Fin BLOC EXPONENTIAL - - - HISTOGRAM = BLOC ( condition = " Law in ( 'Histogram', ) ", - - First = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Borne inferieure du supoport de la loi", - ang = "Support lower bound", - ), - - # Il faut definir une collection de couples ( x,p ) - Values = SIMP ( statut = 'o', - typ = Tuple(2), - max = '**', - fr = "Liste de couples : largeur de classe, hauteur de classe", - ang = "Class bandwidth, class height couple list", - validators=VerifTypeTuple(('R','R')), - ), - - ), # Fin BLOC HISTOGRAM - - - NORMAL = BLOC ( condition = " Law in ( 'Normal', ) ", - - Mu = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Moyenne de la loi", - ang = "Mean value", - ), - - Sigma = SIMP ( statut = "o", - typ = "R", - max = 1, - val_min = 0., - fr = "Ecart type de la loi", - ang = "Standard deviation", - ), - - ), # Fin BLOC NORMAL - - - RAYLEIGH = BLOC ( condition = " Law in ( 'Rayleigh', ) ", - - Sigma = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Parametre Sigma de la loi | Sigma > 0", - ang = "Sigma parameter | Sigma > 0", - ), - - Gamma = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Borne inferieure du support de la loi", - ang = "Support lower bound", - ), - ), # Fin BLOC RAYLEIGH - - PDF = BLOC ( condition = " Law in ( 'PDF_from_file', ) ", - - FileName = SIMP ( statut = "o", - typ = ('Fichier', 'Wrapper Files (*.csv);;All Files (*)',), - fr = "Nom du fichier .csv", - ang = ".csv file name", - ), - ), - - - - TRUNCATEDNORMAL = BLOC ( condition = " Law in ( 'TruncatedNormal', ) ", - - MuN = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Moyenne de la loi Normale non tronqu�e", - ang = "Mean value of the associated non truncated normal distribution", - ), - - SigmaN = SIMP ( statut = "o", - typ = "R", - max = 1, - val_min = 0., - fr = "Ecart-type de la loi Normale non tronqu�e", - ang = "Standard deviation of the associated non truncated normal distribution", - ), - - A = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Borne inferieure de la loi | A < B", - ang = "Lower bound | A < B", - ), - - B = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Borne superieure de la loi | A < B", - ang = "Upper bound | A < B", - ), - - ), # Fin BLOC TRUNCATEDNORMAL - - - TimeSeries = BLOC ( condition = " Law in ( 'TimeSeries_from_file', ) ", - - FileName = SIMP ( statut = "o", - typ = ('Fichier', 'Wrapper Files (*.csv);;All Files (*)',), - fr = "Fichier CSV d'une serie temporelle", - ang = "CSV file of a time series", - ), - ), - - - UNIFORM = BLOC ( condition = " Law in ( 'Uniform', ) ", - - A = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Borne inferieure du support de la loi | A < B", - ang = "Support lower bound | A < B", - ), - - B = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Borne superieure du support de la loi | A < B", - ang = "Support upper bound | A < B", - ), - - ), # Fin BLOC UNIFORM - - - USERDEFINED = BLOC ( condition = " Law in ( 'UserDefined', ) ", - - # Il faut definir une collection de couples ( x,p ) - Values = SIMP ( statut = 'o', - typ = Tuple(2), - max = '**', - fr = "Liste de couples : (valeur, probabilite)", - ang = "List of pairs : (value, probability)", - validators=VerifTypeTuple(('R','R')), - ), - - ), # Fin BLOC USERDEFINED - - - WEIBULL = BLOC ( condition = " Law in ( 'Weibull', ) ", - - Settings = SIMP ( statut = "o", - typ = "TXM", - max = 1, - into = ( "AlphaBeta", "MuSigma" ), - defaut = "AlphaBeta", - fr = "Parametrage de la loi weibull", - ang = "Weibull distribution parameter set", - ), - - AlphaBeta_Parameters = BLOC ( condition = " Settings in ( 'AlphaBeta', ) ", - - Alpha = SIMP ( statut = "o", - typ = "R", - max = 1, - val_min = 0., - fr = "Parametre Alpha de la loi | Alpha > 0", - ang = "Alpha parameter | Alpha > 0", - ), - - Beta = SIMP ( statut = "o", - typ = "R", - max = 1, - val_min = 0., - fr = "Parametre Beta de la loi | Beta > 0", - ang = "Beta parameter | Beta > 0", - ), - - ), # Fin BLOC AlphaBeta_Parameters - - - MuSigma_Parameters = BLOC ( condition = " Settings in ( 'MuSigma', ) ", - - Mu = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Moyenne de la loi", - ang = "Mean value", - ), - - Sigma = SIMP ( statut = "o", - typ = "R", - max = 1, - val_min = 0., - fr = "Ecart type de la loi", - ang = "Standard deviation", - ), - - ), # Fin BLOC MuSigma_Parameters - - Gamma = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Borne inferieure du support de la loi", - ang = "Support lower bound", - ), - - ), # Fin BLOC WEIBULL - - ), #fin du block Load Level - - - b_charge_avail = BLOC (condition = "Type == 'Load Availability'", - - Law = SIMP ( statut = "o", typ = "TXM", - into = ( #"Exponential", - #"Histogram", - #"Normal", - #"Rayleigh", - #"PDF_from_file", - #"TruncatedNormal", - "TimeSeries_from_file", - #"Uniform", - "UserDefined", - #"Weibull", - ), - fr = "Choix du type de la loi marginale", - ang = "1D marginal distribution", - defaut = "UserDefined", - ), - - -#==== -# Definition des parametres selon le type de la loi -#==== - - TimeSeries = BLOC ( condition = " Law in ( 'TimeSeries_from_file', ) ", - - FileName = SIMP ( statut = "o", - typ = ('Fichier', 'Wrapper Files (*.csv);;All Files (*)',), - fr = "Fichier CSV d'une serie temporelle", - ang = "CSV file of a time series", - ), - ), - - - - USERDEFINED = BLOC ( condition = " Law in ( 'UserDefined', ) ", - - # Il faut definir une collection de couples ( x,p ) - Values = SIMP ( statut = 'o', - typ = Tuple(2), - max = '**', - fr = "Liste de couples : (valeur, probabilite)", - ang = "List of pairs : (value, probability)", - validators=VerifTypeTuple(('R','R')), - defaut=((0,0.0),(1,1.0)), - ), - - ), # Fin BLOC USERDEFINED - - - ), #fin du block Load Avail - - - ), #fin du bloc charge - - - -#Bloc Moteur - b_moteur = BLOC (condition = "ComponentType == 'Motor'", - - -#==== -# Type de distribution -#==== - - Type = SIMP (statut= "o", typ = "TXM", - into = ("Motor Level", "Motor Availability"), - fr = "Choisir si c'est le niveau de charge du moteur ou la disponibilit� du moteur qui sera tiree", - ang= "Choose whether the power level or the availability of the motor will be set by the law", - defaut = "Motor Level", - ), - - Sampling = SIMP (statut= "o", typ = "TXM", - into = ("Same sample for all motors", "One sample per motor"), - fr = "Choisir si une seule tirage sera fait pour tous les moteurs ou si des tirages differents seront faits pour chaque moteur", - ang= "Choose whether one drawing/sample will be performed for all of the motors or whether a different drawing/sample will be performed for each motor.", - defaut = "Same sample for all motors", - ), - - Motor = SIMP(statut='o',typ=sd_moteur,max="**", homo="SansOrdreNiDoublon",), - - - b_moteur_level = BLOC (condition = "Type == 'Motor Level'", - - Law = SIMP ( statut = "o", typ = "TXM", - into = ( "Exponential", - "Histogram", - "Normal", - #"Rayleigh", - "PDF_from_file", - "TruncatedNormal", - "TimeSeries_from_file", - "Uniform", - "UserDefined", - "Weibull", - ), - fr = "Choix du type de la loi marginale", - ang = "1D marginal distribution", - ), - - -#==== -# Definition des parametres selon le type de la loi -#==== - - - EXPONENTIAL = BLOC ( condition = " Law in ( 'Exponential', ) ", - - Lambda = SIMP ( statut = "o", - typ = "R", - max = 1, - val_min = 0., - fr = "Parametre Lambda | Lambda > 0", - ang = "Lambda parameter | Lambda > 0", - ), - - Gamma = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Borne inferieure du support de la loi", - ang = "Support lower bound", - ), - - ), # Fin BLOC EXPONENTIAL - - - HISTOGRAM = BLOC ( condition = " Law in ( 'Histogram', ) ", - - First = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Borne inferieure du supoport de la loi", - ang = "Support lower bound", - ), - - # Il faut definir une collection de couples ( x,p ) - Values = SIMP ( statut = 'o', - typ = Tuple(2), - max = '**', - fr = "Liste de couples : largeur de classe, hauteur de classe", - ang = "Class bandwidth, class height couple list", - validators=VerifTypeTuple(('R','R')), - ), - - ), # Fin BLOC HISTOGRAM - - - NORMAL = BLOC ( condition = " Law in ( 'Normal', ) ", - - Mu = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Moyenne de la loi", - ang = "Mean value", - ), - - Sigma = SIMP ( statut = "o", - typ = "R", - max = 1, - val_min = 0., - fr = "Ecart type de la loi", - ang = "Standard deviation", - ), - - ), # Fin BLOC NORMAL - - - RAYLEIGH = BLOC ( condition = " Law in ( 'Rayleigh', ) ", - - Sigma = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Parametre Sigma de la loi | Sigma > 0", - ang = "Sigma parameter | Sigma > 0", - ), - - Gamma = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Borne inferieure du support de la loi", - ang = "Support lower bound", - ), - ), # Fin BLOC RAYLEIGH - - PDF = BLOC ( condition = " Law in ( 'PDF_from_file', ) ", - - FileName = SIMP ( statut = "o", - typ = ('Fichier', 'Wrapper Files (*.csv);;All Files (*)',), - fr = "Nom du fichier .csv", - ang = ".csv file name", - ), - ), - - - - TRUNCATEDNORMAL = BLOC ( condition = " Law in ( 'TruncatedNormal', ) ", - - MuN = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Moyenne de la loi Normale non tronqu�e", - ang = "Mean value of the associated non truncated normal distribution", - ), - - SigmaN = SIMP ( statut = "o", - typ = "R", - max = 1, - val_min = 0., - fr = "Ecart-type de la loi Normale non tronqu�e", - ang = "Standard deviation of the associated non truncated normal distribution", - ), - - A = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Borne inferieure de la loi | A < B", - ang = "Lower bound | A < B", - ), - - B = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Borne superieure de la loi | A < B", - ang = "Upper bound | A < B", - ), - - ), # Fin BLOC TRUNCATEDNORMAL - - - TimeSeries = BLOC ( condition = " Law in ( 'TimeSeries_from_file', ) ", - - FileName = SIMP ( statut = "o", - typ = ('Fichier', 'Wrapper Files (*.csv);;All Files (*)',), - fr = "Fichier CSV d'une serie temporelle", - ang = "CSV file of a time series", - ), - ), - - - UNIFORM = BLOC ( condition = " Law in ( 'Uniform', ) ", - - A = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Borne inferieure du support de la loi | A < B", - ang = "Support lower bound | A < B", - ), - - B = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Borne superieure du support de la loi | A < B", - ang = "Support upper bound | A < B", - ), - - ), # Fin BLOC UNIFORM - - - USERDEFINED = BLOC ( condition = " Law in ( 'UserDefined', ) ", - - # Il faut definir une collection de couples ( x,p ) - Values = SIMP ( statut = 'o', - typ = Tuple(2), - max = '**', - fr = "Liste de couples : (valeur, probabilite)", - ang = "List of pairs : (value, probability)", - validators=VerifTypeTuple(('R','R')), - ), - - ), # Fin BLOC USERDEFINED - - - WEIBULL = BLOC ( condition = " Law in ( 'Weibull', ) ", - - Settings = SIMP ( statut = "o", - typ = "TXM", - max = 1, - into = ( "AlphaBeta", "MuSigma" ), - defaut = "AlphaBeta", - fr = "Parametrage de la loi weibull", - ang = "Weibull distribution parameter set", - ), - - AlphaBeta_Parameters = BLOC ( condition = " Settings in ( 'AlphaBeta', ) ", - - Alpha = SIMP ( statut = "o", - typ = "R", - max = 1, - val_min = 0., - fr = "Parametre Alpha de la loi | Alpha > 0", - ang = "Alpha parameter | Alpha > 0", - ), - - Beta = SIMP ( statut = "o", - typ = "R", - max = 1, - val_min = 0., - fr = "Parametre Beta de la loi | Beta > 0", - ang = "Beta parameter | Beta > 0", - ), - - ), # Fin BLOC AlphaBeta_Parameters - - - MuSigma_Parameters = BLOC ( condition = " Settings in ( 'MuSigma', ) ", - - Mu = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Moyenne de la loi", - ang = "Mean value", - ), - - Sigma = SIMP ( statut = "o", - typ = "R", - max = 1, - val_min = 0., - fr = "Ecart type de la loi", - ang = "Standard deviation", - ), - - ), # Fin BLOC MuSigma_Parameters - - Gamma = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Borne inferieure du support de la loi", - ang = "Support lower bound", - ), - - ), # Fin BLOC WEIBULL - - ), #fin du block Load Level - - - b_moteur_avail = BLOC (condition = "Type == 'Motor Availability'", - - Law = SIMP ( statut = "o", typ = "TXM", - into = ( #"Exponential", - #"Histogram", - #"Normal", - #"Rayleigh", - #"PDF_from_file", - #"TruncatedNormal", - "TimeSeries_from_file", - #"Uniform", - "UserDefined", - #"Weibull", - ), - fr = "Choix du type de la loi marginale", - ang = "1D marginal distribution", - defaut = "UserDefined", - ), - - -#==== -# Definition des parametres selon le type de la loi -#==== - - TimeSeries = BLOC ( condition = " Law in ( 'TimeSeries_from_file', ) ", - - FileName = SIMP ( statut = "o", - typ = ('Fichier', 'Wrapper Files (*.csv);;All Files (*)',), - fr = "Fichier CSV d'une serie temporelle", - ang = "CSV file of a time series", - ), - ), - - - - USERDEFINED = BLOC ( condition = " Law in ( 'UserDefined', ) ", - - # Il faut definir une collection de couples ( x,p ) - Values = SIMP ( statut = 'o', - typ = Tuple(2), - max = '**', - fr = "Liste de couples : (valeur, probabilite)", - ang = "List of pairs : (value, probability)", - validators=VerifTypeTuple(('R','R')), - defaut=((0,0.0),(1,1.0)), - ), - - ), # Fin BLOC USERDEFINED - - - ), #fin du block Load Avail - - - ), #fin du bloc moteur - - - b_ligne = BLOC (condition = "ComponentType == 'Line'", - - -#==== -# Type de distribution -#==== - - Type = SIMP (statut= "o", typ = "TXM", - into = ("Line Availability",), - fr = "La disponibilite de la ligne sera tiree", - ang= "Line availability will be set by the law", - defaut = "Line Availability", - ), - - Sampling = SIMP (statut= "o", typ = "TXM", - into = ("Same sample for all lines", "One sample per line"), - fr = "Choisir si une seule tirage sera fait pour tous les lignes ou si des tirages differents seront faits pour chaque ligne", - ang= "Choose whether one drawing/sample will be performed for all of the lines or whether a different drawing/sample will be performed for each line.", - defaut = "Same sample for all lines", - ), - - Line = SIMP(statut='o',typ=sd_ligne,max="**", homo="SansOrdreNiDoublon"), - - Law = SIMP ( statut = "o", typ = "TXM", - into = ( #"Exponential", - #"Histogram", - #"Normal", - #"Rayleigh", - #"PDF_from_file", - #"TruncatedNormal", - "TimeSeries_from_file", - #"Uniform", - "UserDefined", - #"Weibull", - ), - defaut = "UserDefined", - fr = "Choix du type de la loi marginale", - ang = "1D marginal distribution", - ), - - -#==== -# Definition des parametres selon le type de la loi -#==== - - - EXPONENTIAL = BLOC ( condition = " Law in ( 'Exponential', ) ", - - Lambda = SIMP ( statut = "o", - typ = "R", - max = 1, - val_min = 0., - fr = "Parametre Lambda | Lambda > 0", - ang = "Lambda parameter | Lambda > 0", - ), - - Gamma = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Borne inferieure du support de la loi", - ang = "Support lower bound", - ), - - ), # Fin BLOC EXPONENTIAL - - - HISTOGRAM = BLOC ( condition = " Law in ( 'Histogram', ) ", - - First = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Borne inferieure du supoport de la loi", - ang = "Support lower bound", - ), - - # Il faut definir une collection de couples ( x,p ) - Values = SIMP ( statut = 'o', - typ = Tuple(2), - max = '**', - fr = "Liste de couples : largeur de classe, hauteur de classe", - ang = "Class bandwidth, class height couple list", - validators=VerifTypeTuple(('R','R')), - ), - - ), # Fin BLOC HISTOGRAM - - - NORMAL = BLOC ( condition = " Law in ( 'Normal', ) ", - - Mu = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Moyenne de la loi", - ang = "Mean value", - ), - - Sigma = SIMP ( statut = "o", - typ = "R", - max = 1, - val_min = 0., - fr = "Ecart type de la loi", - ang = "Standard deviation", - ), - - ), # Fin BLOC NORMAL - - - RAYLEIGH = BLOC ( condition = " Law in ( 'Rayleigh', ) ", - - Sigma = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Parametre Sigma de la loi | Sigma > 0", - ang = "Sigma parameter | Sigma > 0", - ), - - Gamma = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Borne inferieure du support de la loi", - ang = "Support lower bound", - ), - ), # Fin BLOC RAYLEIGH - - PDF = BLOC ( condition = " Law in ( 'PDF_from_file', ) ", - - FileName = SIMP ( statut = "o", - typ = ('Fichier', 'Wrapper Files (*.csv);;All Files (*)',), - fr = "Nom du fichier .csv", - ang = ".csv file name", - ), - ), - - - - TRUNCATEDNORMAL = BLOC ( condition = " Law in ( 'TruncatedNormal', ) ", - - MuN = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Moyenne de la loi Normale non tronqu�e", - ang = "Mean value of the associated non truncated normal distribution", - ), - - SigmaN = SIMP ( statut = "o", - typ = "R", - max = 1, - val_min = 0., - fr = "Ecart-type de la loi Normale non tronqu�e", - ang = "Standard deviation of the associated non truncated normal distribution", - ), - - A = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Borne inferieure de la loi | A < B", - ang = "Lower bound | A < B", - ), - - B = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Borne superieure de la loi | A < B", - ang = "Upper bound | A < B", - ), - - ), # Fin BLOC TRUNCATEDNORMAL - - - TimeSeries = BLOC ( condition = " Law in ( 'TimeSeries_from_file', ) ", - - FileName = SIMP ( statut = "o", - typ = ('Fichier', 'Wrapper Files (*.csv);;All Files (*)',), - fr = "Fichier CSV d'une serie temporelle", - ang = "CSV file of a time series", - ), - ), - - - UNIFORM = BLOC ( condition = " Law in ( 'Uniform', ) ", - - A = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Borne inferieure du support de la loi | A < B", - ang = "Support lower bound | A < B", - ), - - B = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Borne superieure du support de la loi | A < B", - ang = "Support upper bound | A < B", - ), - - ), # Fin BLOC UNIFORM - - - USERDEFINED = BLOC ( condition = " Law in ( 'UserDefined', ) ", - - # Il faut definir une collection de couples ( x,p ) - Values = SIMP ( statut = 'o', - typ = Tuple(2), - max = '**', - fr = "Liste de couples : (valeur, probabilite)", - ang = "List of pairs : (value, probability)", - validators=VerifTypeTuple(('R','R')), - defaut=((0,0.0),(1,1.0)), - ), - - ), # Fin BLOC USERDEFINED - - - WEIBULL = BLOC ( condition = " Law in ( 'Weibull', ) ", - - Settings = SIMP ( statut = "o", - typ = "TXM", - max = 1, - into = ( "AlphaBeta", "MuSigma" ), - defaut = "AlphaBeta", - fr = "Parametrage de la loi weibull", - ang = "Weibull distribution parameter set", - ), - - AlphaBeta_Parameters = BLOC ( condition = " Settings in ( 'AlphaBeta', ) ", - - Alpha = SIMP ( statut = "o", - typ = "R", - max = 1, - val_min = 0., - fr = "Parametre Alpha de la loi | Alpha > 0", - ang = "Alpha parameter | Alpha > 0", - ), - - Beta = SIMP ( statut = "o", - typ = "R", - max = 1, - val_min = 0., - fr = "Parametre Beta de la loi | Beta > 0", - ang = "Beta parameter | Beta > 0", - ), - - ), # Fin BLOC AlphaBeta_Parameters - - - MuSigma_Parameters = BLOC ( condition = " Settings in ( 'MuSigma', ) ", - - Mu = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Moyenne de la loi", - ang = "Mean value", - ), - - Sigma = SIMP ( statut = "o", - typ = "R", - max = 1, - val_min = 0., - fr = "Ecart type de la loi", - ang = "Standard deviation", - ), - - ), # Fin BLOC MuSigma_Parameters - - Gamma = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Borne inferieure du support de la loi", - ang = "Support lower bound", - ), - - ), # Fin BLOC WEIBULL - - ), #fin du bloc ligne - - b_transfo = BLOC (condition = "ComponentType == 'Transformer'", - - -#==== -# Type de distribution -#==== - - Type = SIMP (statut= "o", typ = "TXM", - into = ("Transformer Availability",), - fr = "La disponibilite du transformateur sera tiree", - ang= "Transformer availability will be set by the law", - defaut = "Transformer Availability" - ), - - Sampling = SIMP (statut= "o", typ = "TXM", - into = ("Same sample for all transformers", "One sample per transformer"), - fr = "Choisir si une seule tirage sera fait pour tous les transforamteurs ou si des tirages differents seront faits pour chaque transformateur", - ang= "Choose whether one drawing/sample will be performed for all of the tranformers or whether a different drawing/sample will be performed for each transformer.", - defaut = "Same sample for all transformers", - ), - - Transformer = SIMP(statut='o',typ=sd_transfo,max="**", homo="SansOrdreNiDoublon"), - - Law = SIMP ( statut = "o", typ = "TXM", - into = ( #"Beta", - #"Exponential", - #"Gamma", - #"Geometric", - #"Gumbel", - #"Histogram", - #"Laplace", - #"Logistic", - #"LogNormal", - #"MultiNomial", - #"NonCentralStudent", - #"Normal", - #"Poisson", - #"Rayleigh", - #"Student", - #"PDF_from_file", - #"Triangular", - #"TruncatedNormal", - "TimeSeries_from_file", - #"Uniform", - "UserDefined", - #"Weibull", - ), - defaut="UserDefined", - fr = "Choix du type de la loi marginale", - ang = "1D marginal distribution", - ), - - -#==== -# Definition des parametres selon le type de la loi -#==== - -## NONPARAM = BLOC ( condition = " Law in ( 'NonParametrique', ) ", -## -## FileName = SIMP ( statut = "o", -## typ = ('Fichier', 'Wrapper Files (*.csv);;All Files (*)',), -## fr = "Nom du modele physique", -## ang = "Physical model identifier", -## ), -## ), - -# BETA = BLOC ( condition = " Law in ( 'Beta', ) ", -# -# Settings = SIMP ( statut = "o", -# typ = "TXM", -# max = 1, -# into = ( "RT", "MuSigma" ), -# defaut = "RT", -# fr = "Parametrage de la loi beta", -# ang = "Beta distribution parameter set", -# ), -# -# RT_Parameters = BLOC ( condition = " Settings in ( 'RT', ) ", -# -# R = SIMP ( statut = "o", -# typ = "R", -# max = 1, -# val_min = 0., -# fr = "Parametre R de la loi | R > 0", -# ang = "R parameter | R > 0", -# ), -# -# # T > R -# T = SIMP ( statut = "o", -# typ = "R", -# max = 1, -# val_min = 0., -# fr = "Parametre T de la loi | T > R", -# ang = "T parameter | T > R", -# ), -# -# ), # Fin BLOC RT_Parameters -# -# -# MuSigma_Parameters = BLOC ( condition = " Settings in ( 'MuSigma', ) ", -# -# Mu = SIMP ( statut = "o", -# typ = "R", -# max = 1, -# fr = "Moyenne de la loi", -# ang = "Mean value", -# ), -# -# Sigma = SIMP ( statut = "o", -# typ = "R", -# max = 1, -# val_min = 0., -# fr = "Ecart type de la loi", -# ang = "Standard deviation", -# ), -# -# ), # Fin BLOC MuSigma_Parameters -# -# -# A = SIMP ( statut = "o", -# typ = "R", -# max = 1, -# fr = "Borne inferieure du support de la loi", -# ang = "Support lower bound", -# ), -# -# # B > A -# B = SIMP ( statut = "o", -# typ = "R", -# max = 1, -# fr = "Borne superieure du support de la loi", -# ang = "Support upper bound", -# ), -# -# ), # Fin BLOC BETA - - - - EXPONENTIAL = BLOC ( condition = " Law in ( 'Exponential', ) ", - - Lambda = SIMP ( statut = "o", - typ = "R", - max = 1, - val_min = 0., - fr = "Parametre Lambda | Lambda > 0", - ang = "Lambda parameter | Lambda > 0", - ), - - Gamma = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Borne inferieure du support de la loi", - ang = "Support lower bound", - ), - - ), # Fin BLOC EXPONENTIAL - - - -# GAMMA = BLOC ( condition = " Law in ( 'Gamma', ) ", -# -# Settings = SIMP ( statut = "o", -# typ = "TXM", -# max = 1, -# into = ( "KLambda", "MuSigma" ), -# defaut = "KLambda", -# fr = "Parametrage de la loi gamma", -# ang = "Gamma distribution parameter set", -# ), -# -# KLambda_Parameters = BLOC ( condition = " Settings in ( 'KLambda', ) ", -# -# K = SIMP ( statut = "o", -# typ = "R", -# max = 1, -# val_min = 0., -# fr = "Parametre K de la loi | K > 0", -# ang = "K parameter | K > 0", -# ), -# -# Lambda = SIMP ( statut = "o", -# typ = "R", -# max = 1, -# val_min = 0., -# fr = "Parametre Lambda de la loi | Lambda > 0", -# ang = "Lambda parameter | Lambda > 0", -# ), -# -# ), # Fin BLOC KLambda_Parameters -# -# -# MuSigma_Parameters = BLOC ( condition = " Settings in ( 'MuSigma', ) ", -# -# Mu = SIMP ( statut = "o", -# typ = "R", -# max = 1, -# fr = "Moyenne de la loi", -# ang = "Mean value", -# ), -# -# Sigma = SIMP ( statut = "o", -# typ = "R", -# max = 1, -# val_min = 0., -# fr = "Ecart type de la loi", -# ang = "Standard deviation", -# ), -# -# ), # Fin BLOC MuSigma_Parameters -# -# Gamma = SIMP ( statut = "o", -# typ = "R", -# max = 1, -# fr = "Borne inferieure du supoport de la loi", -# ang = "Support lower bound", -# ), -# -# -# ), # Fin BLOC GAMMA - - -# -# GEOMETRIC = BLOC ( condition = " Law in ( 'Geometric', ) ", -# -# P = SIMP ( statut = "o", -# typ = "R", -# max = 1, -# val_min = 0., -# val_max = 1., -# fr = "Parametre P | 0 < P < 1", -# ang = "P parameter | 0 < P < 1", -# ), -# -# ), # Fin BLOC GEOMETRIC -# -# -# -# GUMBEL = BLOC ( condition = " Law in ( 'Gumbel', ) ", -# -# Settings = SIMP ( statut = "o", -# typ = "TXM", -# max = 1, -# into = ( "AlphaBeta", "MuSigma" ), -# defaut = "AlphaBeta", -# fr = "Parametrage de la loi gumbel", -# ang = "Gumbel distribution parameter set", -# ), -# -# AlphaBeta_Parameters = BLOC ( condition = " Settings in ( 'AlphaBeta', ) ", -# -# Alpha = SIMP ( statut = "o", -# typ = "R", -# max = 1, -# val_min = 0., -# fr = "Parametre Alpha de la loi | Alpha > 0", -# ang = "Alpha parameter | Alpha > 0", -# ), -# -# Beta = SIMP ( statut = "o", -# typ = "R", -# max = 1, -# fr = "Parametre Beta de la loi", -# ang = "Beta parameter", -# ), -# -# ), # Fin BLOC AlphaBeta_Parameters -# -# -# MuSigma_Parameters = BLOC ( condition = " Settings in ( 'MuSigma', ) ", -# -# Mu = SIMP ( statut = "o", -# typ = "R", -# max = 1, -# fr = "Moyenne de la loi", -# ang = "Mean value", -# ), -# -# Sigma = SIMP ( statut = "o", -# typ = "R", -# max = 1, -# val_min = 0., -# fr = "Ecart type de la loi", -# ang = "Standard deviation", -# ), -# -# ), # Fin BLOC MuSigma_Parameters -# -# ), # Fin BLOC GUMBEL - - - - HISTOGRAM = BLOC ( condition = " Law in ( 'Histogram', ) ", - - First = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Borne inferieure du supoport de la loi", - ang = "Support lower bound", - ), - - # Il faut definir une collection de couples ( x,p ) - Values = SIMP ( statut = 'o', - typ = Tuple(2), - max = '**', - fr = "Liste de couples : largeur de classe, hauteur de classe", - ang = "Class bandwidth, class height couple list", - validators=VerifTypeTuple(('R','R')), - ), - - ), # Fin BLOC HISTOGRAM - - - -# LAPLACE = BLOC ( condition = " Law in ( 'Laplace', ) ", -# -# Lambda = SIMP ( statut = "o", -# typ = "R", -# max = 1, -# val_min = 0., -# fr = "Parametre Lambda | Lambda > 0", -# ang = "Lambda parameter | Lambda > 0", -# ), -# -# Mu = SIMP ( statut = "o", -# typ = "R", -# max = 1, -# fr = "Moyenne de la loi", -# ang = "Mean value", -# ), -# -# ), # Fin BLOC LAPLACE -# -# LOGNORMAL = BLOC ( condition = " Law in ( 'LogNormal', ) ", -# -# Settings = SIMP ( statut = "o", -# typ = "TXM", -# max = 1, -# into = ( "MuSigmaLog", "MuSigma", "MuSigmaOverMu" ), -# defaut = "MuSigmaLog", -# fr = "Parametrage de la loi lognormale", -# ang = "Lognormal distribution parameter set", -# ), -# -# MuSigma_Parameters = BLOC ( condition = " Settings in ( 'MuSigma', ) ", -# -# Mu = SIMP ( statut = "o", -# typ = "R", -# max = 1, -# fr = "Moyenne de la loi", -# ang = "Mean value", -# ), -# -# Sigma = SIMP ( statut = "o", -# typ = "R", -# max = 1, -# val_min = 0., -# fr = "Ecart type de la loi", -# ang = "Standard deviation", -# ), -# -# ), # Fin BLOC MuSigma_Parameters -# -# MuSigmaOverMu_Parameters = BLOC ( condition = " Settings in ( 'MuSigmaOverMu', ) ", -# -# Mu = SIMP ( statut = "o", -# typ = "R", -# max = 1, -# fr = "Moyenne de la loi", -# ang = "Mean value", -# ), -# -# SigmaOverMu = SIMP ( statut = "o", -# typ = "R", -# max = 1, -# val_min = 0., -# fr = "Rapport ecart type / moyenne de la loi", -# ang = "Standard deviation / mean value ratio", -# ), -# -# ), # Fin BLOC MuSigmaOverMu_Parameters -# -# MuSigmaLog_Parameters = BLOC ( condition = " Settings in ( 'MuSigmaLog', ) ", -# -# MuLog = SIMP ( statut = "o", -# typ = "R", -# max = 1, -# fr = "Moyenne du log", -# ang = "Log mean value", -# ), -# -# SigmaLog = SIMP ( statut = "o", -# typ = "R", -# max = 1, -# val_min = 0., -# fr = "Ecart type du log", -# ang = "Log standard deviation", -# ), -# -# ), # Fin BLOC MuSigmaLog_Parameters -# -# Gamma = SIMP ( statut = "o", -# typ = "R", -# max = 1, -# fr = "Borne inferieure du support de la loi", -# ang = "Support lower bound", -# ), -# -# ), # Fin BLOC LOGNORMAL -# -# -# -# LOGISTIC = BLOC ( condition = " Law in ( 'Logistic', ) ", -# -# Alpha = SIMP ( statut = "o", -# typ = "R", -# max = 1, -# fr = "Borne inferieure du supoport de la loi", -# ang = "Support lower bound", -# ), -# -# Beta = SIMP ( statut = "o", -# typ = "R", -# max = 1, -# val_min = 0., -# fr = "Parametre Beta de la loi | Beta > 0", -# ang = "Beta parameter | Beta > 0", -# ), -# -# ), # Fin BLOC LOGISTIC -# -# -# -# MULTINOMIAL = BLOC ( condition = " Law in ( 'MultiNomial', ) ", -# -# N = SIMP ( statut = "o", -# typ = "I", -# max = 1, -# fr = "Parametre N de la loi | N > 0", -# ang = "N parameter | N > 0", -# ), -# -# # Il faut definir une collection de couples ( x,p ) -# Values = SIMP ( statut = 'o', -# typ = "R", -# max = '**', -# fr = "Liste de probabilit�s", -# ang = "Probability list", -# validators=VerifTypeTuple(('R','R')), -# ), -# -# ), # Fin BLOC MULTINOMIAL -# -# -# NONCENTRALSTUDENT = BLOC ( condition = " Law in ( 'NonCentralStudent', ) ", -# -# Nu = SIMP ( statut = "o", -# typ = "R", -# max = 1, -# fr = "Parametre Nu de la loi | Nu > 0", -# ang = "Nu parameter | Nu > 0", -# ), -# -# Delta = SIMP ( statut = "o", -# typ = "R", -# max = 1, -# fr = "Parametre Delta de la loi | Delta > 0", -# ang = "Delta parameter | Delta > 0", -# ), -# -# Gamma = SIMP ( statut = "o", -# typ = "R", -# max = 1, -# fr = "Parametre Gamma de centrage de la loi", -# ang = "Gamma parameter", -# ), -# -# ), # Fin BLOC NONCENTRALSTUDENT - - - NORMAL = BLOC ( condition = " Law in ( 'Normal', ) ", - - Mu = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Moyenne de la loi", - ang = "Mean value", - ), - - Sigma = SIMP ( statut = "o", - typ = "R", - max = 1, - val_min = 0., - fr = "Ecart type de la loi", - ang = "Standard deviation", - ), - - ), # Fin BLOC NORMAL - - -# -# POISSON = BLOC ( condition = " Law in ( 'Poisson', ) ", -# -# Lambda = SIMP ( statut = "o", -# typ = "R", -# max = 1, -# val_min = 0., -# fr = "Parametre Lambda de la loi | Lambda > 0", -# ang = "Lambda parameter | Lambda > 0", -# ), -# -# ), # Fin BLOC POISSON -# -# -# -# RAYLEIGH = BLOC ( condition = " Law in ( 'Rayleigh', ) ", -# -# Sigma = SIMP ( statut = "o", -# typ = "R", -# max = 1, -# fr = "Parametre Sigma de la loi | Sigma > 0", -# ang = "Sigma parameter | Sigma > 0", -# ), -# -# Gamma = SIMP ( statut = "o", -# typ = "R", -# max = 1, -# fr = "Borne inferieure du support de la loi", -# ang = "Support lower bound", -# ), -# ), # Fin BLOC RAYLEIGH - - PDF = BLOC ( condition = " Law in ( 'PDF_from_file', ) ", - - FileName = SIMP ( statut = "o", - typ = ('Fichier', 'Wrapper Files (*.csv);;All Files (*)',), - fr = "Nom du fichier .csv", - ang = ".csv file name", - ), - ), - -# STUDENT = BLOC ( condition = " Law in ( 'Student', ) ", -# -# Mu = SIMP ( statut = "o", -# typ = "R", -# max = 1, -# fr = "Parametre Mu de la loi", -# ang = "Mu parameter", -# ), -# -# Nu = SIMP ( statut = "o", -# typ = "R", -# max = 1, -# val_min = 2., -# fr = "Parametre Nu de la loi | Nu > 2", -# ang = "Nu parameter | Nu > 2", -# ), -# -# Sigma = SIMP ( statut = "o", -# typ = "R", -# max = 1, -# fr = "Parametre Sigma de la loi", -# ang = "Sigma parameter", -# ), -# -# ), # Fin BLOC STUDENT -# -# -# -# TRIANGULAR = BLOC ( condition = " Law in ( 'Triangular', ) ", -# -# A = SIMP ( statut = "o", -# typ = "R", -# max = 1, -# fr = "Borne inferieure du support de la loi | A < M < B", -# ang = "Support lower bound | A < M < B", -# ), -# -# M = SIMP ( statut = "o", -# typ = "R", -# max = 1, -# fr = "Mode de la loi | A < M < B", -# ang = "Mode | A < M < B", -# ), -# -# B = SIMP ( statut = "o", -# typ = "R", -# max = 1, -# fr = "Borne superieure du support de la loi | A < M < B", -# ang = "Support upper bound | A < M < B", -# ), -# -# ), # Fin BLOC TRIANGULAR -# -# - - TRUNCATEDNORMAL = BLOC ( condition = " Law in ( 'TruncatedNormal', ) ", - - MuN = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Moyenne de la loi Normale non tronqu�e", - ang = "Mean value of the associated non truncated normal distribution", - ), - - SigmaN = SIMP ( statut = "o", - typ = "R", - max = 1, - val_min = 0., - fr = "Ecart-type de la loi Normale non tronqu�e", - ang = "Standard deviation of the associated non truncated normal distribution", - ), - - A = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Borne inferieure de la loi | A < B", - ang = "Lower bound | A < B", - ), - - B = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Borne superieure de la loi | A < B", - ang = "Upper bound | A < B", - ), - - ), # Fin BLOC TRUNCATEDNORMAL - - - TimeSeries = BLOC ( condition = " Law in ( 'TimeSeries_from_file', ) ", - - FileName = SIMP ( statut = "o", - typ = ('Fichier', 'Wrapper Files (*.csv);;All Files (*)',), - fr = "Fichier CSV d'une serie temporelle", - ang = "CSV file of a time series", - ), - ), - - - UNIFORM = BLOC ( condition = " Law in ( 'Uniform', ) ", - - A = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Borne inferieure du support de la loi | A < B", - ang = "Support lower bound | A < B", - ), - - B = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Borne superieure du support de la loi | A < B", - ang = "Support upper bound | A < B", - ), - - ), # Fin BLOC UNIFORM - - - USERDEFINED = BLOC ( condition = " Law in ( 'UserDefined', ) ", - - # Il faut definir une collection de couples ( x,p ) - Values = SIMP ( statut = 'o', - typ = Tuple(2), - max = '**', - fr = "Liste de couples : (valeur, probabilite)", - ang = "List of pairs : (value, probability)", - validators=VerifTypeTuple(('R','R')), - defaut=((0,0.0),(1,1.0)), - ), - - ), # Fin BLOC USERDEFINED - - - WEIBULL = BLOC ( condition = " Law in ( 'Weibull', ) ", - - Settings = SIMP ( statut = "o", - typ = "TXM", - max = 1, - into = ( "AlphaBeta", "MuSigma" ), - defaut = "AlphaBeta", - fr = "Parametrage de la loi weibull", - ang = "Weibull distribution parameter set", - ), - - AlphaBeta_Parameters = BLOC ( condition = " Settings in ( 'AlphaBeta', ) ", - - Alpha = SIMP ( statut = "o", - typ = "R", - max = 1, - val_min = 0., - fr = "Parametre Alpha de la loi | Alpha > 0", - ang = "Alpha parameter | Alpha > 0", - ), - - Beta = SIMP ( statut = "o", - typ = "R", - max = 1, - val_min = 0., - fr = "Parametre Beta de la loi | Beta > 0", - ang = "Beta parameter | Beta > 0", - ), - - ), # Fin BLOC AlphaBeta_Parameters - - - MuSigma_Parameters = BLOC ( condition = " Settings in ( 'MuSigma', ) ", - - Mu = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Moyenne de la loi", - ang = "Mean value", - ), - - Sigma = SIMP ( statut = "o", - typ = "R", - max = 1, - val_min = 0., - fr = "Ecart type de la loi", - ang = "Standard deviation", - ), - - ), # Fin BLOC MuSigma_Parameters - - Gamma = SIMP ( statut = "o", - typ = "R", - max = 1, - fr = "Borne inferieure du support de la loi", - ang = "Support lower bound", - ), - - ), # Fin BLOC WEIBULL - - - - ), #fin du bloc transformer - - -) - -Classement_Commandes_Ds_Arbre=('DIRECTORY', 'DISTRIBUTION', 'CORRELATION',) - -Ordre_Des_Commandes = ( 'DIRECTORY', 'PSSE_PARAMETERS', 'SIMULATION', 'DISTRIBUTION', 'CORRELATION', - 'N_1_GENERATORS', 'N_1_LINES', 'N_1_TRANSFORMERS', 'N_1_LOADS',) diff --git a/PSEN_Eficas/configuration_PSEN.py b/PSEN_Eficas/configuration_PSEN.py deleted file mode 100755 index 9a068500..00000000 --- a/PSEN_Eficas/configuration_PSEN.py +++ /dev/null @@ -1,43 +0,0 @@ -# -*- coding: utf-8 -*- -# maConfiguration MANAGEMENT OF EDF VERSION -# ====================================================================== -# COPYRIGHT (C) 1991 - 2002 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# -# -# ====================================================================== -""" - Ce module sert pour charger les paramètres de configuration d'EFICAS -""" -# Modules Python -from InterfaceQT4 import configuration -import os - - -class CONFIG(configuration.configBase): - - #----------------------------------- - def __init__(self,appli,repIni): - #----------------------------------- - - self.labels_user=['catalogues','lang'] - self.labels_eficas=['lang','rep_cata','catalogues'] - - configuration.configBase.__init__(self,appli,'.Eficas_monCode') - - -def make_config(appli,rep): - return CONFIG(appli,rep) - diff --git a/PSEN_Eficas/faux.csv b/PSEN_Eficas/faux.csv deleted file mode 100644 index e69de29b..00000000 diff --git a/PSEN_Eficas/faux.sav b/PSEN_Eficas/faux.sav deleted file mode 100644 index e69de29b..00000000 diff --git a/PSEN_Eficas/mesScripts.py b/PSEN_Eficas/mesScripts.py deleted file mode 100755 index 15f80ed6..00000000 --- a/PSEN_Eficas/mesScripts.py +++ /dev/null @@ -1,35 +0,0 @@ -def view_zone(listeparam) : - item=listeparam[0] - import visu_geom - visu_zone = visu_geom.VisuGeom(from_eficas=True, - eficas_item=item, - ligne_arbre=False) - visu_zone.visualize() - -def view_ligne_arbre(listeparam) : - item=listeparam[0] - import visu_geom - visu_arbre = visu_geom.VisuGeom(from_eficas=True, - eficas_item=item, - ligne_arbre=True) - visu_arbre.visualize() - -def import_zone(listeparam,appli) : - item=listeparam[0] - # simulation de la recuperation zone - #import eficasSalome - #eficasSalome.runEficas(code='MT',fichier='/home/I29518/test_zone.comm') - appli.viewmanager.handleOpen(fichier='/home/A96028/Install_EficasV1/EficasV1/MT/MT_include.comm') - -def import_zone2(listeparam,appli) : - editor=listeparam[0] - itemWidget=listeparam[1] - texte="sansnom=ZONE(NOEUDS=(_F(NOM='N1', X=0.0,), _F(NOM='N2', X=0.19,),), ELEMENTS=(_F(NOM='E1', DEBUT='N1', FIN='N2', RAFFINAGE='NON', MATERIAU=MAT_R01, SECTION_MASSE=_F(TYPE_SECTION='CONSTANTE', DIAM_EXTERN_DEBUT=0.1, DIAM_INTERN_DEBUT=0,), SECTION_RIGIDITE=_F(TYPE_SECTION='CONSTANTE', DIAM_EXTERN_DEBUT=0.1, DIAM_INTERN_DEBUT=0.0,),), _F(NOM='E2', DEBUT='N2', FIN='N3', RAFFINAGE='NON', MATERIAU=MAT_R01, SECTION_MASSE=_F(TYPE_SECTION='VARIABLE', DIAM_EXTERN_DEBUT=0.1, DIAM_INTERN_DEBUT=0, DIAM_EXTERN_SORTIE=0.2, DIAM_INTERN_SORTIE=0.0,), SECTION_RIGIDITE=_F(TYPE_SECTION='VARIABLE', DIAM_EXTERN_DEBUT=0.1, DIAM_INTERN_DEBUT=0.0, DIAM_EXTERN_SORTIE=0.2, DIAM_INTERN_SORTIE=0.0,),),),);" - editor.updateJdc(itemWidget,texte) - -def Source(): - print "jjjjjjjjjjjjjjjjjjj" - -dict_commandes={ - 'GENDOF':(Source,"Source",(),False,True,"affiche un message"), - } diff --git a/PSEN_Eficas/mesScripts_PSEN.py b/PSEN_Eficas/mesScripts_PSEN.py deleted file mode 100644 index 827affd9..00000000 --- a/PSEN_Eficas/mesScripts_PSEN.py +++ /dev/null @@ -1,113 +0,0 @@ -def exportToCsv(listeparam) : - texte="" - editor= listeparam[0] - item = listeparam[1] - fn=None - try : - from PyQt4.QtGui import QFileDialog, QMessageBox - fichier = QFileDialog.getOpenFileName() - if fichier == None : return - except : - try : - from PyQt5.QtWidgets import QFileDialog, QMessageBox - fichier = QFileDialog.getOpenFileName() - if fichier[0] == None : return - fichier=fichier[0] - except: - pass - - nouvelleVal=[] - prob=item.object.getChild('Probability') - valeur=prob.getValeur() - texte="" - for v in valeur : - texte+=v[0].nom+";"+str(v[1]).replace('.',',')+"\n" - - try : - fn=open(fichier,'wb') - fn.write(texte) - fn.close() - except Exception, why: - QMessageBox.critical(editor, ("Save file failed"), - ('unable to save ')+str(fn) + str(why)) - - -def importFromCsv(listeparam) : - texte="" - editor= listeparam[0] - item = listeparam[1] - node = listeparam[2] - fn=None - try : - from PyQt4.QtGui import QFileDialog - fichier = QFileDialog.getOpenFileName() - if fichier == None : return - fn=open(fichier) - except : - try : - from PyQt5.QtWidgets import QFileDialog - fichier = QFileDialog.getOpenFileName() - if fichier[0] == None : return - fn=open(fichier[0]) - except: - pass - #fn=open('Classeur1.csv') - if not fn : return - nouvelleVal=[] - prob=item.object.getChild('Probability') - monType=prob.definition.validators.typeDesTuples[0] - listeObjet=item.object.etape.parent.getSdAvantDuBonType(item.object.etape,(monType,)) - for ligne in fn.readlines(): - try : - nom,valeur = ligne.split(';') - except : - texte += "not able to process: "+ ligne - continue - if nom not in listeObjet : - texte += nom + " : ignored (not known in Eficas) \n " - continue - try : - concept=item.jdc.getConcept(nom) - except : - texte += nom + ": ignored (not known in Eficas) \n " - continue - try : - valNum=valeur.replace (',','.') - valeur=eval (valNum, {}) - except : - texte += valeur + " : unable to eval \n " - continue - nouvelleVal.append((concept,valeur)) - # exec nom in self.jdc - - if nouvelleVal != [] : prob.setValeur(nouvelleVal) - if texte != "" : - try : - from PyQt5.QtWidgets import QMessageBox - except : - from PyQt4.QtGui import QMessageBox - QMessageBox.information( None,'unable to append values',texte,) - - node.affichePanneau() - - print "et ici" - -# le dictionnaire des commandes a la structure suivante : -# la clef est la commande qui va proposer l action -# puis un tuple qui contient -# - la fonction a appeler -# - le label dans le menu du clic droit -# - un tuple contenant les parametres attendus par la fonction -# - appelable depuis Salome uniquement -) -# - appelable depuis un item valide uniquement -# - toolTip -dict_commandes={ - 'N_1_GENERATORS':( - (exportToCsv,"exportToCsv",('editor','item'),False,False,"export values to cvs File"), - (importFromCsv,"importFromCsv",('editor','item','self'),False,False,"import values from cvs File"), - ), - 'N_1_LINES':( - (exportToCsv,"exportToCsv",('editor','item'),False,False,"export values to cvs File"), - (importFromCsv,"importFromCsv",('editor','item','self'),False,False,"import values from cvs File"), - ) - } diff --git a/PSEN_Eficas/opsPSEN.py b/PSEN_Eficas/opsPSEN.py deleted file mode 100755 index b5a1bce6..00000000 --- a/PSEN_Eficas/opsPSEN.py +++ /dev/null @@ -1,113 +0,0 @@ -# -*- coding: iso-8859-1 -*- -# Copyright (C) 2007-2013 EDF R&D -# -# 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 -# - -#from ExtractGeneratorLoadLineandTransfoDico import ExtractGeneratorLoadLineandTransfoDico -from ExtractGeneratorLoadLineandTransfoDico import ExtractGeneratorLoadLineandTransfoDico2 - -def INCLUDE(self,PSSE_path,sav_file,**args): - """ - Fonction sd_prod pour la macro INCLUDE - """ - - if sav_file==None: return - reevalue=0 - listeADeTruire=[] - listeNouveau=[] - toClean=False - if hasattr(self,'fichier_ini'): - reevalue=1 - if self.fichier_ini == sav_file : return - self.fichier_ini=sav_file - if hasattr(self,'old_context_fichier_init' ): - toClean=True - for concept in self.old_context_fichier_init.values(): - #self.jdc.deleteConcept(concept) - listeADeTruire.append(concept) - self.jdc_aux=None - self.contexte_fichier_init={} - #self.reevalueSdJdc() - self.jdc.resetContext() - - self.fichier_ini=sav_file - self.contexte_fichier_init = {} - self.fichier_unite = 999 - self.fichier_err = None - self.fichier_text="" - - unite = 999 - - #try : - if 1: - MachineDico,LoadDico,LineDico,TransfoDico, MotorDico = ExtractGeneratorLoadLineandTransfoDico2(sav_file,PSSE_path) - else : - #except : - if self.jdc.appli is not None: - self.jdc.appli.afficheAlerte("Error", 'An error happened in ExtractGeneratorandLoadList execution ') - self.g_context = {} - self.etapes = [] - self.jdc_aux = None - self.fichier_err = str(exc) - self.contexte_fichier_init = {} - - - for nom in MachineDico.keys(): - self.fichier_text += "%s=MONGENER(ID='%s',);\n" % (nom, 'a') - listeNouveau.append(nom) - - for nom in LoadDico.keys(): - self.fichier_text += "%s=MACHARGE(ID='%s',);\n" % (nom, 'a') - listeNouveau.append(nom) - - for nom in LineDico.keys(): - self.fichier_text += "%s=MALIGNE(ID='%s',);\n" % (nom,'a') - listeNouveau.append(nom) - - for nom in TransfoDico.keys(): - self.fichier_text += "%s=MONTRANSFO(ID='%s',);\n" % (nom,'a') - listeNouveau.append(nom) - - for nom in MotorDico.keys(): - self.fichier_text += "%s=MONMOTEUR(ID='%s',);\n" % (nom,'a') - listeNouveau.append(nom) - - import Extensions.jdc_include - self.JdC_aux = Extensions.jdc_include.JDC_CATA_INCLUDE(code='PSEN', execmodul=None) - self.makeContexteInclude(None, self.fichier_text) - self.old_context_fichier_init = self.contexte_fichier_init - self.parent.recordUnit(unite, self) - - self.jdc.MachineDico=MachineDico - self.jdc.LoadDico=LoadDico - self.jdc.LineDico=LineDico - self.jdc.TransfoDico=TransfoDico - self.jdc.MotorDico = MotorDico - - if toClean: - for concept in listeADeTruire : - if concept.nom not in listeNouveau: self.jdc.deleteConcept(concept) - self.reevalueSdJdc() - -def INCLUDE_context(self,d): - """ - Fonction op_init pour macro INCLUDE - """ - for k,v in self.g_context.items(): - d[k]=v - diff --git a/PSEN_Eficas/prefs.py b/PSEN_Eficas/prefs.py deleted file mode 100755 index c19b171d..00000000 --- a/PSEN_Eficas/prefs.py +++ /dev/null @@ -1,22 +0,0 @@ -# Copyright (C) 2007-2012 EDF R&D -# -# 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 -# -code="PSEN" -import sys, os -if os.path.dirname(os.path.abspath(__file__)) not in sys.path : - sys.path.insert(0,os.path.dirname(os.path.abspath(__file__))) diff --git a/PSEN_Eficas/prefs_PSEN.py b/PSEN_Eficas/prefs_PSEN.py deleted file mode 100755 index a736e956..00000000 --- a/PSEN_Eficas/prefs_PSEN.py +++ /dev/null @@ -1,41 +0,0 @@ -# -*- coding: utf-8 -*- -# maConfiguration MANAGEMENT OF EDF VERSION -# ====================================================================== -# COPYRIGHT (C) 1991 - 2002 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# -# -# ====================================================================== - -import os,sys -# repIni sert a localiser le fichier editeur.ini -# Obligatoire -repIni=os.path.dirname(os.path.abspath(__file__)) -INSTALLDIR=os.path.join(repIni,'..') -sys.path[:0]=[INSTALLDIR] - - -# lang indique la langue utilisee pour les chaines d'aide : fr ou ang -lang='ang' #'fr' - -# Codage des strings qui accepte les accents (en remplacement de 'ascii') -encoding='iso-8859-1' -docPath=repIni - - -# -catalogues=( - ('PSEN','default',os.path.join(repIni,'PSEN_Cata.py'),'PSEN','python'), -) diff --git a/PSEN_Eficas/properties.py b/PSEN_Eficas/properties.py deleted file mode 100755 index 1d328a46..00000000 --- a/PSEN_Eficas/properties.py +++ /dev/null @@ -1,24 +0,0 @@ -#@ MODIF properties Accas DATE 11/06/2008 AUTEUR aster M.ADMINISTRATEUR -# RESPONSABLE D6BHHHH J-P.LEFEBVRE -# ====================================================================== -# COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# IDENTIFICATION DU GESTIONNAIRE DE COMMANDE ACCAS A PARTIR -# DE LA VERSION DU CODE_ASTER ASSOCIE -#---------------------------------------------------------------------- -version = "1.2" -date = "25/05/2010" -exploit = False diff --git a/PSEN_Eficas/qtEficas_PSEN.py b/PSEN_Eficas/qtEficas_PSEN.py deleted file mode 100755 index 954a96a7..00000000 --- a/PSEN_Eficas/qtEficas_PSEN.py +++ /dev/null @@ -1,35 +0,0 @@ -#!/usr/bin/env python -# -*- coding: utf-8 -*- -# Copyright (C) 2007-2012 EDF R&D -# -# 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 -# -""" - Ce module sert a lancer EFICAS configure pour Code_Aster -""" -# Modules Python -# Modules Eficas - -import sys,os -#sys.path.append(os.path.join(os.path.abspath(os.path.dirname(__file__)),'..')) -import prefs -name='prefs_'+prefs.code -__import__(name) - - -from InterfaceQT4 import eficas_go -eficas_go.lanceEficas(code=prefs.code) diff --git a/Poc/cataPocRN.py b/Poc/cataPocRN.py deleted file mode 100644 index b1e71317..00000000 --- a/Poc/cataPocRN.py +++ /dev/null @@ -1,321 +0,0 @@ -# -*- 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 -from Extensions.i18n import tr -import types -monFichier = os.path.abspath(__file__) - -JdC = JDC_CATA( - code='Essai' -) -VERSION_CATALOGUE = 'V_0' - - -NMIN_ASSEMBLY = 1 -NMAX_ASSEMBLY = 18 - - -class Tuple: - def __init__(self, ntuple): - self.ntuple = ntuple - - def __convert__(self, valeur): - if len(valeur) != self.ntuple: - return None - return valeur - - def info(self): - return "Tuple de %s elements" % self.ntuple - - -# class Matrice: -# def __init__(self, nbLigs=None, nbCols=None, -# methodeCalculTaille=None, formatSortie="ligne", -# valSup=None, valMin=None, structure=None, typElt='R', -# typEltInto=None, listeHeaders=None): -# self.nbLigs = nbLigs -# self.nbCols = nbCols -# self.methodeCalculTaille = methodeCalculTaille -# self.formatSortie = formatSortie -# self.valSup = valSup -# self.valMin = valMin -# self.structure = structure -# self.typElt = typElt -# self.listeHeaders = listeHeaders -# self.typEltInto = typEltInto - -# def __convert__(self, valeur): -# # Attention ne verifie pas grand chose -# if not isinstance(valeur, types.ListType): -# return None -# return valeur - -# def info(self): -# return "Matrice %s x %s" % (self.nbLigs, self.nbCols) - -# __repr__ = info -# __str__ = info - - -class VerifPostTreatment(VerifTypeTuple): - - def __init__(self): - super(VerifPostTreatment, self).__init__(('TXM', 'TXM')) - self.cata_info = "" - self.physValeurs = ('Neutronics', 'Thermalhydraulics') - self.typeValeurs = ('MED', 'SUM', 'MIN', 'MAX', 'MEAN') - - def info(self): - return tr(": verifie les \ntypes dans un tuple") - - def infoErreurListe(self): - return tr("Les types entres ne sont pas permis") - - def default(self, valeur): - return valeur - - def isList(self): - return 1 - - def convertItem(self, valeur): - if len(valeur) != len(self.typeDesTuples): - raise ValueError( - tr("%s devrait etre de type %s ") % (valeur, self.typeDesTuples)) - ok = self.verifType(valeur) - if ok == 0: - raise ValueError( - tr("%s devrait etre de type %s (%d)") % (valeur, self.typeDesTuples, ok)) - if ok < 0: - raise ValueError( - tr("%s devrait etre dans %s ") % (valeur[1], self.typeValeurs)) - return valeur - - def verifItem(self, valeur): - try: - if len(valeur) != len(self.typeDesTuples): - return 0 - ok = self.verifType(valeur) - if ok != 1: - return 0 - except: - return 0 - return 1 - - def verifType(self, valeur): - ok = 0 - for v in valeur: - if type(v) == bytes or type(v) == str: - ok += 1 - if ok == len(self.typeDesTuples): - if valeur[1] in self.typeValeurs: # and valeur[1] in self.physValeurs: - return 1 - return -1 - return 0 - - def verif(self, valeur): - if type(valeur) in (list, tuple): - liste = list(valeur) - for val in liste: - if self.verifItem(val) != 1: - return 0 - return 1 - return 0 - - -class myAssembly(ASSD): - pass - - -class myTechnoData(ASSD): - pass - - -class myRodBank(ASSD): - pass - - -class myModelData(ASSD): - pass - - -class myScenarioData(ASSD): - pass - - -Assembly = OPER(nom='Assembly', sd_prod=myAssembly, - assembly_name=SIMP(statut='o', typ='TXM'), - assembly_type=SIMP(statut='o', typ='TXM', into=("UOX", "MOX", "REF")), - description=BLOC(condition='assembly_type != "REF"', - assembly_width=SIMP(statut='o', typ='R'), - radial_description=FACT(statut='o', - clad_outer_radius=SIMP(statut='o', typ='R'), - guide_tube_outer_radius=SIMP(statut='o', typ='R'), - fuel_rod_pitch=SIMP(statut='o', typ='R'), - nfuel_rods=SIMP(statut='o', typ='I')), - axial_description=FACT(statut='o', - active_length_start=SIMP(statut='o', typ='R'), - active_length_end=SIMP(statut='o', typ='R')), - grids=FACT(statut='o', - mixing=FACT(statut='o', - positions=SIMP( - statut='f', typ='R', max="**"), - size=SIMP(statut='o', typ='R')), - non_mixing=FACT(statut='o', - positions=SIMP( - statut='f', typ='R', max='**'), - size=SIMP(statut='o', typ='R')), - ) - ) - ) - - -RodBank = OPER(nom="RodBank", sd_prod=myRodBank, - rodbank_name=SIMP(statut='o', typ='TXM'), - step_height=SIMP(statut='o', typ='R'), - nsteps=SIMP(statut='o', typ='I')) - - -def add_lr_refl(ass_list): - return ["RW"] + ass_list + ["RE"] - - -def add_tb_refl(ass_list): - return ["RS"] + ass_list + ["RN"] - - -def generate_ass_map(nass_list): - xsym_list = [a for a in 'ABCDEFGHJKLNPRSTUVWXYZ'] - xsym_list.reverse() - ysym_list = ["%02d" % i for i in range(NMIN_ASSEMBLY, NMAX_ASSEMBLY+1)] - ysym_list.reverse() - def_xaxis = {} - def_yaxis = {} - for n in range(NMIN_ASSEMBLY, NMAX_ASSEMBLY+1): - def_xaxis[n] = add_lr_refl(xsym_list[-n:]) - def_yaxis[n] = add_tb_refl(ysym_list[-n:]) - - dico = {} -# for n in nass_list: - for n in (6,): - dico['assembly_map_%d' % n] = BLOC(condition="nb_assembly==%d" % n, - xaxis=SIMP(statut='o', - typ='TXM', - min=n+2, max=n+2, - defaut=def_xaxis[n]), - yaxis=SIMP(statut='o', - typ='TXM', - min=n+2, max=n+2, - defaut=def_yaxis[n]), - assembly_map=SIMP(statut="o", - typ=Matrice(nbLigs=n+2, - nbCols=n+2, - # valSup=1, - # valMin=-1, - typElt='TXM', # ici c'est le nom de l'assemblage - listeHeaders=None), - defaut=(n+2)*[(n+2)*['.']]), - rod_map=SIMP(statut="o", - typ=Matrice(nbLigs=n+2, - nbCols=n+2, - valSup=1, - valMin=-1, - typElt='TXM', # ici c'est le nom de l'assemblage - listeHeaders=None), - defaut=(n+2)*[(n+2)*['.']])) - - return dico - - -Techno_data = OPER(nom='Techno_data', sd_prod=myTechnoData, - assembly_list=SIMP(statut='o', typ=myAssembly, min=1, max="**"), # à resorber quand on mettra dans la Matrice - rodbank_list=SIMP(statut='o', typ=myRodBank, min=0, max="**"), # idem - radial_description=FACT(statut='o', - nb_assembly=SIMP(statut='o', typ='I', into=list(range(NMIN_ASSEMBLY, NMAX_ASSEMBLY))), - **(generate_ass_map(range(NMIN_ASSEMBLY, NMAX_ASSEMBLY))) - ), # Radial_Description - axial_description=FACT(statut='o', - lower_refl_size=SIMP(statut='o', typ='R'), - upper_refl_size=SIMP(statut='o', typ='R'), - ), - nominal_power=SIMP(statut='o', typ='R'), - fuel_power_fraction=SIMP(statut='o', typ='R'), - ) # Techno data - -Model_data = OPER(nom='Model_data', sd_prod=myModelData, - physics=SIMP(statut='o', typ='TXM', into=( - 'Neutronics', 'Thermalhydraulics')), - scale=SIMP(statut='o', typ='TXM', into=( - 'system', 'component', 'local')), - b_neutro_compo=BLOC(condition='physics=="Neutronics" and scale=="component"', - codeNeutro=SIMP(statut='o', typ='TXM', into=('COCAGNE', 'APOLLO3')), - radial_meshingNeutro=FACT(statut='o', - flux_solver=SIMP(statut='o', typ='TXM', into=('subdivision', 'pin-by-pin')), - b_flux_subdivision=BLOC(condition='flux_solver=="subdivision"', - flux_subdivision=SIMP(statut='o', typ='I')), - feedback_solver=SIMP(statut='o', typ='TXM', into=('subdivision', 'pin-by-pin')), - b_feedback_subdivision=BLOC(condition='feedback_solver=="subdivision"', - feedback_subdivision=SIMP(statut='o', typ='I')))), - b_thermo_compo=BLOC(condition='physics=="Thermalhydraulics" and scale=="component"', - code=SIMP(statut='o', typ='TXM', into=('THYC', 'CATHARE3', 'FLICA4')), - radial_meshing=FACT(statut='o', - fluid=SIMP(statut='o', typ='TXM', into=('subdivision', 'subchannel')), - b_fluid_subdivision=BLOC(condition='fluid=="subdivision"', - fluid_subdivision=SIMP(statut='o', typ='I')), - pellet=SIMP(statut='o', typ='I'), - clad=SIMP(statut='o', typ='I'))), - b_scale_compo=BLOC(condition='scale=="component"', - axial_meshing=FACT(statut='o', - lower_refl=SIMP(statut='o', typ='I'), - fuel=SIMP(statut='o', typ='I'), - upper_refl=SIMP(statut='o', typ='I'))), - b_scale_local=BLOC(condition='scale=="local"', - mesh_file=SIMP(statut='o', typ='Fichier')), - ) - - -Scenario_data = OPER(nom='Scenario_data', sd_prod=myScenarioData, - initial_power=SIMP(statut='o', typ='R', val_min=0., - defaut=100.), - initial_power_unit=SIMP(statut='o', typ='TXM', - into=('% Nominal power', 'W'), - defaut='% Nominal power'), - initial_rod_positions=SIMP(statut='o', - typ=Tuple(2), - validators=VerifTypeTuple(['TXM', 'I']), - ang="Type@label, position (e.g. RodBank@RB, 0)", - max='**'), - scenario_type=SIMP(statut='o', - typ='TXM', - into=['RIA']), - b_ria=BLOC(condition='scenario_type=="RIA"', - ejected_rod=SIMP(statut='o', - typ='TXM'), - rod_position_program=SIMP(statut='o', - typ=Tuple(2), - validators=VerifTypeTuple(['R', 'I']), - max='**'), - ), - post_processing=SIMP(statut='f', - typ=Tuple(2), - validators=VerifPostTreatment(), - max='**'), - ) diff --git a/Poc/cataPocRNWithAssemblyName.py b/Poc/cataPocRNWithAssemblyName.py deleted file mode 100644 index 4fdb2de6..00000000 --- a/Poc/cataPocRNWithAssemblyName.py +++ /dev/null @@ -1,295 +0,0 @@ -# -*- 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 -from Extensions.i18n import tr -import types -monFichier = os.path.abspath(__file__) - -JdC = JDC_CATA( - code='Essai' -) -VERSION_CATALOGUE = 'V_0' - - -NMIN_ASSEMBLY = 1 -NMAX_ASSEMBLY = 18 - - -class Tuple: - def __init__(self, ntuple): - self.ntuple = ntuple - - def __convert__(self, valeur): - if len(valeur) != self.ntuple: - return None - return valeur - - def info(self): - return "Tuple de %s elements" % self.ntuple - - - -class VerifPostTreatment(VerifTypeTuple): - - def __init__(self): - super(VerifPostTreatment, self).__init__(('TXM', 'TXM')) - self.cata_info = "" - self.physValeurs = ('Neutronics', 'Thermalhydraulics') - self.typeValeurs = ('MED', 'SUM', 'MIN', 'MAX', 'MEAN') - - def info(self): - return tr(": verifie les \ntypes dans un tuple") - - def infoErreurListe(self): - return tr("Les types entres ne sont pas permis") - - def default(self, valeur): - return valeur - - def isList(self): - return 1 - - def convertItem(self, valeur): - if len(valeur) != len(self.typeDesTuples): - raise ValueError( - tr("%s devrait etre de type %s ") % (valeur, self.typeDesTuples)) - ok = self.verifType(valeur) - if ok == 0: - raise ValueError( - tr("%s devrait etre de type %s (%d)") % (valeur, self.typeDesTuples, ok)) - if ok < 0: - raise ValueError( - tr("%s devrait etre dans %s ") % (valeur[1], self.typeValeurs)) - return valeur - - def verifItem(self, valeur): - try: - if len(valeur) != len(self.typeDesTuples): - return 0 - ok = self.verifType(valeur) - if ok != 1: - return 0 - except: - return 0 - return 1 - - def verifType(self, valeur): - ok = 0 - for v in valeur: - if type(v) == bytes or type(v) == str: - ok += 1 - if ok == len(self.typeDesTuples): - if valeur[1] in self.typeValeurs: # and valeur[1] in self.physValeurs: - return 1 - return -1 - return 0 - - def verif(self, valeur): - if type(valeur) in (list, tuple): - liste = list(valeur) - for val in liste: - if self.verifItem(val) != 1: - return 0 - return 1 - return 0 - - -class myAssembly(ASSD): - pass - - -class myTechnoData(ASSD): - pass - - -class myRodBank(ASSD): - pass - - -class myModelData(ASSD): - pass - - -class myScenarioData(ASSD): - pass - - -Assembly = OPER(nom='Assembly', sd_prod=myAssembly, - assembly_name=SIMP(statut='o', typ='TXM'), - assembly_type=SIMP(statut='o', typ='TXM', into=("UOX", "MOX", "REF")), - description=BLOC(condition='assembly_type != "REF"', - assembly_width=SIMP(statut='o', typ='R'), - radial_description=FACT(statut='o', - clad_outer_radius=SIMP(statut='o', typ='R'), - guide_tube_outer_radius=SIMP(statut='o', typ='R'), - fuel_rod_pitch=SIMP(statut='o', typ='R'), - nfuel_rods=SIMP(statut='o', typ='I')), - axial_description=FACT(statut='o', - active_length_start=SIMP(statut='o', typ='R'), - active_length_end=SIMP(statut='o', typ='R')), - grids=FACT(statut='o', - mixing=FACT(statut='o', - positions=SIMP( - statut='f', typ='R', max="**"), - size=SIMP(statut='o', typ='R')), - non_mixing=FACT(statut='o', - positions=SIMP( - statut='f', typ='R', max='**'), - size=SIMP(statut='o', typ='R')), - ) - ) - ) - - -RodBank = OPER(nom="RodBank", sd_prod=myRodBank, - rodbank_name=SIMP(statut='o', typ='TXM'), - step_height=SIMP(statut='o', typ='R'), - nsteps=SIMP(statut='o', typ='I')) - - -def add_lr_refl(ass_list): - return ["RW"] + ass_list + ["RE"] - - -def add_tb_refl(ass_list): - return ["RS"] + ass_list + ["RN"] - - -def generate_ass_map(nass_list): - xsym_list = [a for a in 'ABCDEFGHJKLNPRSTUVWXYZ'] - xsym_list.reverse() - ysym_list = ["%02d" % i for i in range(NMIN_ASSEMBLY, NMAX_ASSEMBLY+1)] - ysym_list.reverse() - def_xaxis = {} - def_yaxis = {} - for n in range(NMIN_ASSEMBLY, NMAX_ASSEMBLY+1): - def_xaxis[n] = add_lr_refl(xsym_list[-n:]) - def_yaxis[n] = add_tb_refl(ysym_list[-n:]) - - dico = {} - #for n in nass_list: - for n in (6,) : - dico['assembly_map_%d' % n] = BLOC(condition="nb_assembly==%d" % n, - xaxis=SIMP(statut='o', - typ='TXM', - min=n+2, max=n+2, - defaut=def_xaxis[n],), - #defaut=def_xaxis[n], - #nomXML='xaxis'+str(n)), - yaxis=SIMP(statut='o', - typ='TXM', - min=n+2, max=n+2, - defaut=def_yaxis[n]), - assembly_map=SIMP(statut="o", - typ=Matrice(nbLigs=n+2, - nbCols=n+2, - #valSup=1, - #valMin=-1, - #typElt='TXM', # ici c'est le nom de l'assemblage - typElt=myAssembly, # ici c'est le nom de l'assemblage - listeHeaders=None), - ), - rod_map=SIMP(statut="o", - typ=Matrice(nbLigs=n+2, - nbCols=n+2, - valSup=1, - valMin=-1, - typElt='TXM', # ici c'est le nom de l'assemblage - listeHeaders=None), - defaut=(n+2)*[(n+2)*['.']])) - - return dico - - -Techno_data = OPER(nom='Techno_data', sd_prod=myTechnoData, - assembly_list=SIMP(statut='o', typ=myAssembly, min=1, max="**"), # à resorber quand on mettra dans la Matrice - rodbank_list=SIMP(statut='o', typ=myRodBank, min=0, max="**"), # idem - radial_description=FACT(statut='o', - nb_assembly=SIMP(statut='o', typ='I', into=list(range(NMIN_ASSEMBLY, NMAX_ASSEMBLY))), - **(generate_ass_map(range(NMIN_ASSEMBLY, NMAX_ASSEMBLY))) - ), # Radial_Description - axial_description=FACT(statut='o', - lower_refl_size=SIMP(statut='o', typ='R'), - upper_refl_size=SIMP(statut='o', typ='R'), - ), - nominal_power=SIMP(statut='o', typ='R'), - fuel_power_fraction=SIMP(statut='o', typ='R'), - ) # Techno data - -Model_data = OPER(nom='Model_data', sd_prod=myModelData, - physics=SIMP(statut='o', typ='TXM', into=( - 'Neutronics', 'Thermalhydraulics')), - scale=SIMP(statut='o', typ='TXM', into=( - 'system', 'component', 'local')), - b_neutro_compo=BLOC(condition='physics=="Neutronics" and scale=="component"', - codeNeutro=SIMP(statut='o', typ='TXM', into=('COCAGNE', 'APOLLO3')), - radial_meshingNeutro=FACT(statut='o', - flux_solver=SIMP(statut='o', typ='TXM', into=('subdivision', 'pin-by-pin')), - b_flux_subdivision=BLOC(condition='flux_solver=="subdivision"', - flux_subdivision=SIMP(statut='o', typ='I')), - feedback_solver=SIMP(statut='o', typ='TXM', into=('subdivision', 'pin-by-pin')), - b_feedback_subdivision=BLOC(condition='feedback_solver=="subdivision"', - feedback_subdivision=SIMP(statut='o', typ='I')))), - b_thermo_compo=BLOC(condition='physics=="Thermalhydraulics" and scale=="component"', - code=SIMP(statut='o', typ='TXM', into=('THYC', 'CATHARE3', 'FLICA4')), - radial_meshing=FACT(statut='o', - fluid=SIMP(statut='o', typ='TXM', into=('subdivision', 'subchannel')), - b_fluid_subdivision=BLOC(condition='fluid=="subdivision"', - fluid_subdivision=SIMP(statut='o', typ='I')), - pellet=SIMP(statut='o', typ='I'), - clad=SIMP(statut='o', typ='I'))), - b_scale_compo=BLOC(condition='scale=="component"', - axial_meshing=FACT(statut='o', - lower_refl=SIMP(statut='o', typ='I'), - fuel=SIMP(statut='o', typ='I'), - upper_refl=SIMP(statut='o', typ='I'))), - b_scale_local=BLOC(condition='scale=="local"', - mesh_file=SIMP(statut='o', typ='Fichier')), - ) - - -Scenario_data = OPER(nom='Scenario_data', sd_prod=myScenarioData, - initial_power=SIMP(statut='o', typ='R', val_min=0., defaut=100.), - initial_power_unit=SIMP(statut='o', typ='TXM', - into=('% Nominal power', 'W'), - defaut ='% Nominal power',), - initial_rod_positions=SIMP(statut='o', - typ=Tuple(2), - validators=VerifTypeTuple(['TXM', 'I']), - ang="Type@label, position (e.g. RodBank@RB, 0)", - max='**'), - scenario_type=SIMP(statut='o', - typ='TXM', - into=['RIA']), - b_ria=BLOC(condition='scenario_type=="RIA"', - ejected_rod=SIMP(statut='o', - typ='TXM'), - rod_position_program=SIMP(statut='o', - typ=Tuple(2), - validators=VerifTypeTuple(['R', 'I']), - max='**'), - ), - post_processing=SIMP(statut='f', - typ=Tuple(2), - validators=VerifPostTreatment(), - max='**'), - ) diff --git a/Poc/cdm_helpers.py b/Poc/cdm_helpers.py deleted file mode 100644 index f09e022f..00000000 --- a/Poc/cdm_helpers.py +++ /dev/null @@ -1,32 +0,0 @@ -try: - import cataPocRN_driver as drv -except ImportError: - raise Exception("This module requires the Common Data Model Driver (cata_CSAndCPS_driver module)") - -def getMainEntities(wkflDataset,typeName,sdName=None): - cdm = wkflDataset.step_Essai - _typename='T_'+typeName - if sdName != None : - return [c for c in cdm[:] if ( isinstance(c,getattr(drv,_typename)) and (c.sdName == sdName) )] - else: - return [c for c in cdm[:] if isinstance(c,getattr(drv,_typename)) ] - - -#Si les attributs ne sont pas multiple values -def getMultipleAttr(e,attributename): - if attributename.count('.') != 0: - pIndex=attributename.index('.') - # print("--------",attributename[0:pIndex]," ",attributename[pIndex+1:],"------------") - return getMultipleAttr(getattr(e,attributename[0:pIndex]),attributename[pIndex+1:]) - else: - # print("+++++++++", getattr(e,attributename), type(getattr(e,attributename)) ) - return getattr(e,attributename) - -def getFilteredEntities(element,attributename=None,attributevalue=None): -# print("getFilteredEntities(element,attributename=None,attributevalue=None):",element,attributename,attributevalue) - if attributename != None : - return [e for e in element[:] if getMultipleAttr(e,attributename) == attributevalue] - else: - return element[:] - - diff --git a/Poc/edg32.comm b/Poc/edg32.comm deleted file mode 100644 index 211d5b00..00000000 --- a/Poc/edg32.comm +++ /dev/null @@ -1,78 +0,0 @@ - -REF=Assembly(assembly_name='REF', - assembly_type='REF',); - -U1=Assembly(assembly_name='U1', - assembly_type='UOX', - assembly_width=0.21504, - radial_description=_F(clad_outer_radius=0.00475, - guide_tube_outer_radius=0.006025, - fuel_rod_pitch=0.0126, - nfuel_rods=264,), - axial_description=_F(active_length_start=0.2, - active_length_end=1.5,), - grids=_F(mixing=_F(positions=(1.0807,), - size=0.033,), - non_mixing=_F(positions=(0.026,), - size=0.033,),),); - -RB=RodBank(rodbank_name='RB', - step_height=0.008, - nsteps=162,); - -techno_data=Techno_data(assembly_list=(REF,U1,), - rodbank_list=(RB,), - radial_description=_F(nb_assembly=6, - xaxis=('RW','F','E','D','C','B','A','RE',), - yaxis=('RS','06','05','04','03','02','01','RN',), - assembly_map= - (['REF','REF','REF','REF', - 'REF','REF','REF','REF'],['REF','REF','U1','U1','U1','U1', - 'REF','REF'],['REF','U1','U1','U1','U1','U1','U1','REF'], - ['REF','U1','U1','U1','U1','U1','U1','REF'],['REF','U1', - 'U1','U1','U1','U1','U1','REF'],['REF','U1','U1','U1', - 'U1','U1','U1','REF'],['REF','REF','U1','U1','U1','U1', - 'REF','REF'],['REF','REF','REF','REF','REF','REF','REF', - 'REF'],), - rod_map= - (['#','#','#','#','#','#','#', - '#'],['#','#','.','.','.','.','#','#'],['#','.','.','.','RB','.', - '.','#'],['#','.','RB','.','.','.','.','#'],['#','.','.','.','.', - 'RB','.','#'],['#','.','.','RB','.','.','.','#'],['#','#','.','.', - '.','.','#','#'],['#','#','#','#','#','#','#','#'],),), - axial_description=_F(lower_refl_size=0.2, - upper_refl_size=0.2,), - nominal_power=100000000.0, - fuel_power_fraction=0.974,); - -neutro_model=Model_data(physics='Neutronics', - scale='component', - codeNeutro='COCAGNE', - radial_meshingNeutro=_F(flux_solver='subdivision', - flux_subdivision=2, - feedback_solver='subdivision', - feedback_subdivision=1,), - axial_meshing=_F(lower_refl=1, - fuel=21, - upper_refl=1,),); - -thermo_model=Model_data(physics='Thermalhydraulics', - scale='component', - code='THYC', - radial_meshing=_F(fluid='subdivision', - fluid_subdivision=1, - pellet=8, - clad=2,), - axial_meshing=_F(lower_refl=1, - fuel=40, - upper_refl=1,),); - -scenario_data=Scenario_data(initial_power=100.0, - initial_power_unit='% Nominal power', - initial_rod_positions=(('Rodbank@RB',162),('Rodcluster@B04',0)), - scenario_type='RIA', - ejected_rod='B04', - rod_position_program=((0.0,0),(0.1,162)), - post_processing=(('Fuel temperature@Thermalhydraulics','MAX'),('Neutronic power@Neutronics','SUM'),('Fuel temperature@Thermalhydraulics','MED')),); -#VERSION_CATALOGUE:V_0:FIN VERSION_CATALOGUE -#CHECKSUM:7826a282bd2c99da86490d6dee3e0fd7 -:FIN CHECKSUM \ No newline at end of file diff --git a/Poc/edg32.comm.ref b/Poc/edg32.comm.ref deleted file mode 100644 index 7d9a605a..00000000 --- a/Poc/edg32.comm.ref +++ /dev/null @@ -1,78 +0,0 @@ - -REF=Assembly(assembly_name='REF', - assembly_type='REF',); - -U1=Assembly(assembly_name='U1', - assembly_type='UOX', - assembly_width=0.21504, - radial_description=_F(clad_outer_radius=0.00475, - guide_tube_outer_radius=0.006025, - fuel_rod_pitch=0.0126, - nfuel_rods=264,), - axial_description=_F(active_length_start=0.2, - active_length_end=1.5,), - grids=_F(mixing=_F(positions=(1.0807,), - size=0.033,), - non_mixing=_F(positions=(0.026,), - size=0.033,),),); - -RB=RodBank(rodbank_name='RB', - step_height=0.008, - nsteps=162,); - -techno_data=Techno_data(assembly_list=(REF,U1,), - rodbank_list=(RB,), - radial_description=_F(nb_assembly=6, - xaxis=('RW','F','E','D','C','B','A','RE',), - yaxis=('RS','06','05','04','03','02','01','RN',), - assembly_map= - (['REF','REF','REF','REF', - 'REF','REF','REF','REF'],['REF','REF','U1','U1','U1','U1', - 'REF','REF'],['REF','U1','U1','U1','U1','U1','U1','REF'], - ['REF','U1','U1','U1','U1','U1','U1','REF'],['REF','U1', - 'U1','U1','U1','U1','U1','REF'],['REF','U1','U1','U1', - 'U1','U1','U1','REF'],['REF','REF','U1','U1','U1','U1', - 'REF','REF'],['REF','REF','REF','REF','REF','REF','REF', - 'REF'],), - rod_map= - (['#','#','#','#','#','#','#', - '#'],['#','#','.','.','.','.','#','#'],['#','.','.','.','RB','.', - '.','#'],['#','.','RB','.','.','.','.','#'],['#','.','.','.','.', - 'RB','.','#'],['#','.','.','RB','.','.','.','#'],['#','#','.','.', - '.','.','#','#'],['#','#','#','#','#','#','#','#'],),), - axial_description=_F(lower_refl_size=0.2, - upper_refl_size=0.2,), - nominal_power=100000000.0, - fuel_power_fraction=0.974,); - -neutro_model=Model_data(physics='Neutronics', - scale='component', - code='COCAGNE', - radial_meshing=_F(flux_solver='subdivision', - flux_subdivision=2, - feedback_solver='subdivision', - feedback_subdivision=1,), - axial_meshing=_F(lower_refl=1, - fuel=21, - upper_refl=1,),); - -thermo_model=Model_data(physics='Thermalhydraulics', - scale='component', - code='THYC', - radial_meshing=_F(fluid='subdivision', - fluid_subdivision=1, - pellet=8, - clad=2,), - axial_meshing=_F(lower_refl=1, - fuel=40, - upper_refl=1,),); - -scenario_data=Scenario_data(initial_power=100.0, - initial_power_unit='% Nominal power', - initial_rod_positions=(('Rodbank@RB',162),('Rodcluster@B04',0)), - scenario_type='RIA', - ejected_rod='B04', - rod_position_program=((0.0,0),(0.1,162)), - post_processing=(('Fuel temperature@Thermalhydraulics','MAX'),('Neutronic power@Neutronics','SUM'),('Fuel temperature@Thermalhydraulics','MED')),); -#VERSION_CATALOGUE:V_0:FIN VERSION_CATALOGUE -#CHECKSUM:5a186f50f4816d725e42d0b050a11764 -:FIN CHECKSUM \ No newline at end of file diff --git a/Poc/edg32WithAssemblyName.comm b/Poc/edg32WithAssemblyName.comm deleted file mode 100644 index 38b82cf6..00000000 --- a/Poc/edg32WithAssemblyName.comm +++ /dev/null @@ -1,70 +0,0 @@ - -REF=Assembly(assembly_name='REF', - assembly_type='REF',); - -U1=Assembly(assembly_name='U1', - assembly_type='UOX', - assembly_width=0.21504, - radial_description=_F(clad_outer_radius=0.00475, - guide_tube_outer_radius=0.006025, - fuel_rod_pitch=0.0126, - nfuel_rods=264,), - axial_description=_F(active_length_start=0.2, - active_length_end=1.5,), - grids=_F(mixing=_F(positions=(1.0807,), - size=0.033,), - non_mixing=_F(positions=(0.026,), - size=0.033,),),); - -RB=RodBank(rodbank_name='RB', - step_height=0.008, - nsteps=162,); - -techno_data=Techno_data(assembly_list=(REF,U1,), - rodbank_list=(RB,), - radial_description=_F(nb_assembly=6, - xaxis=('RW','F','E','D','C','B','A','RE',), - yaxis=('RS','06','05','04','03','02','01','RN',), - assembly_map=((REF,REF,REF,REF,REF,REF,REF,REF,),(REF,REF,U1,U1,U1,U1,REF,REF,),(REF,U1,U1,U1,U1,U1,U1,REF,),(REF,U1,U1,U1,U1,U1,REF,REF,),(REF,U1,U1,U1,U1,U1,U1,REF,),(REF,U1,U1,U1,U1,U1,REF,REF,),(REF,REF,U1,U1,U1,U1,REF,REF,),(REF,REF,REF,REF,REF,REF,REF,REF,),), - rod_map= - (['#','#','#','#','#','#','#', - '#'],['#','#','.','.','.','.','#','#'],['#','.','.','.','RB','.', - '.','#'],['#','.','RB','.','.','.','.','#'],['#','.','.','.','.', - 'RB','.','#'],['#','.','.','RB','.','.','.','#'],['#','#','.','.', - '.','.','#','#'],['#','#','#','#','#','#','#','#'],),), - axial_description=_F(lower_refl_size=0.2, - upper_refl_size=0.2,), - nominal_power=100000000.0, - fuel_power_fraction=0.974,); - -neutro_model=Model_data(physics='Neutronics', - scale='component', - codeNeutro='COCAGNE', - radial_meshingNeutro=_F(flux_solver='subdivision', - flux_subdivision=2, - feedback_solver='subdivision', - feedback_subdivision=1,), - axial_meshing=_F(lower_refl=1, - fuel=21, - upper_refl=1,),); - -thermo_model=Model_data(physics='Thermalhydraulics', - scale='component', - code='THYC', - radial_meshing=_F(fluid='subdivision', - fluid_subdivision=1, - pellet=8, - clad=2,), - axial_meshing=_F(lower_refl=1, - fuel=40, - upper_refl=1,),); - -scenario_data=Scenario_data(initial_power=100.0, - initial_power_unit='% Nominal power', - initial_rod_positions=(('Rodbank@RB',162),('Rodcluster@B04',0)), - scenario_type='RIA', - ejected_rod='B04', - rod_position_program=((0.0,0),(0.1,162)), - post_processing=(('Fuel temperature@Thermalhydraulics','MAX'),('Neutronic power@Neutronics','SUM'),('Fuel temperature@Thermalhydraulics','MED')),); -#VERSION_CATALOGUE:V_0:FIN VERSION_CATALOGUE -#CHECKSUM:650687868fdfea444161002a5481615c -:FIN CHECKSUM \ No newline at end of file diff --git a/Poc/essaiGetattr.py b/Poc/essaiGetattr.py deleted file mode 100755 index c2f786c5..00000000 --- a/Poc/essaiGetattr.py +++ /dev/null @@ -1,57 +0,0 @@ -#!/usr/bin/env python -# -*- coding: utf-8 -*- -# Copyright (C) 2007-2021 EDF R&D -# -# 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 sys,os -import prefs -sys.path.append(os.path.join(os.path.abspath(os.path.dirname(__file__)),'..')) - -from InterfaceQT4 import eficas_go -jdd = eficas_go.createFromDocumentAccas('cataPocRN.py','edg32.comm') - - -monRodBank=jdd.RodBank[0] -print ('MonObjet ', monRodBank, ' a pour nom', monRodBank.sdnom) -print (monRodBank.rodbank_name) - -print ('on fait une erreur volontaire') -try : - monRodBank=jdd.rodrank[0] -except : pass - -monRodBank2=jdd.getEtapeByConceptName('RB') -assert monRodBank2 == monRodBank - - -techno=jdd.Techno_data[0] -print (techno.assembly_list) -print (techno.rodbank_list) -try : - print (techno.toto) -except : pass - -print (techno.radial_description) -print (techno.radial_description.nb_assembly) -print (techno.radial_description.xaxis) -print (techno.radial_description.yaxis) -print (techno.radial_description.assembly_map) -print (techno.radial_description.assembly_map[0][3]) - diff --git a/Poc/generateXML.py b/Poc/generateXML.py deleted file mode 100755 index d8fd33dd..00000000 --- a/Poc/generateXML.py +++ /dev/null @@ -1,36 +0,0 @@ -#!/usr/bin/env python -# -*- coding: utf-8 -*- -# Copyright (C) 2007-2013 EDF R&D -# -# 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 -# -""" - Ce module sert a lancer EFICAS configure pour Meteo -""" -# Modules Python -# Modules Eficas -import prefs -name='prefs_'+prefs.code -__import__(name) - -import sys -import os -sys.path.append(os.path.join(os.path.abspath(os.path.dirname(__file__)),'../..')) - -import prefs -from InterfaceQT4 import eficas_go -eficas_go.genereXML(code=prefs.code) diff --git a/Poc/generateXSD.py b/Poc/generateXSD.py deleted file mode 100755 index ed550619..00000000 --- a/Poc/generateXSD.py +++ /dev/null @@ -1,36 +0,0 @@ -#!/usr/bin/env python -# -*- coding: utf-8 -*- -# Copyright (C) 2007-2013 EDF R&D -# -# 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 -# -""" - Ce module sert a lancer EFICAS configure pour Meteo -""" -# Modules Python -# Modules Eficas -import prefs -name='prefs_'+prefs.code -__import__(name) - -import sys -import os -sys.path.append(os.path.join(os.path.abspath(os.path.dirname(__file__)),'../..')) - -import prefs -from InterfaceQT4 import eficas_go -eficas_go.genereXSD(code=prefs.code) diff --git a/Poc/metier.py b/Poc/metier.py deleted file mode 100644 index fa4f1d73..00000000 --- a/Poc/metier.py +++ /dev/null @@ -1,4 +0,0 @@ - -def RodsWorthSetting(*args,**kwargs) : - print ('je suis dans RodsWorthSetting') - print ('je peux effectuer un traitement') diff --git a/Poc/pocEssaiExecution.py b/Poc/pocEssaiExecution.py deleted file mode 100644 index f6a47efe..00000000 --- a/Poc/pocEssaiExecution.py +++ /dev/null @@ -1,47 +0,0 @@ -import os, sys -import prefs -name='prefs_'+prefs.code -__import__(name) -from Accas import * -from Noyau.N__F import _F - -print ('___________ Appel sans validation supplementaire ________________') -print ('\n l appel a ete cree par eficas et donc est valide') -from metier import * -RodsWorthSetting(version='1.0.0', - virtual_groups=_F(group_name='monG1', - value_def=('1','2','3',),), - xenon_feedback='locked', - cb='upstream_state', - states=('s1','s2',), - calcul_type='integral_worth', - Integral_O='pas compris', - Integral=_F(step_unit='inserted_steps', - config=_F(key_config='k1', - value_def=1.0,),),); - - - -print ('\n\n') -print ('___________ Appel avec validation supplementaire ________________') -print ('\n l appel a ete cree manuellement') -from InterfaceQT4.eficas_go import validateFonction -RodsWorthSetting=validateFonction(RodsWorthSetting) - -print ('fonction appel valide') -print ('____________________') -RodsWorthSetting(version='1.0.0', - virtual_groups=_F(group_name='monG1', - value_def=('1','2','3',),), - xenon_feedback='locked', - cb='upstream_state', - states=('s1','s2',), - calcul_type='integral_worth', - Integral_O='pas compris', - Integral=_F(step_unit='inserted_steps', - config=_F(key_config='k1', - value_def=1.0,),),); - -print ('fonction appel invalide') -print ('____________________') -RodsWorthSetting(monArgument='je ne passe pas les bons arguments') diff --git a/Poc/prefs.py b/Poc/prefs.py deleted file mode 100644 index 540898b5..00000000 --- a/Poc/prefs.py +++ /dev/null @@ -1,22 +0,0 @@ -# Copyright (C) 2007-2012 EDF R&D -# -# 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 -# -code="Essai" -import sys, os -if os.path.dirname(os.path.abspath(__file__)) not in sys.path : - sys.path.insert(0,os.path.dirname(os.path.abspath(__file__))) diff --git a/Poc/prefs_Essai.py b/Poc/prefs_Essai.py deleted file mode 100644 index 8d1bc00f..00000000 --- a/Poc/prefs_Essai.py +++ /dev/null @@ -1,50 +0,0 @@ -# -*- coding: utf-8 -*- -# maConfiguration MANAGEMENT OF EDF VERSION -# ====================================================================== -# COPYRIGHT (C) 1991 - 2002 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# -# -# ====================================================================== - -import os,sys -# repIni sert a localiser le fichier editeur.ini -# Obligatoire -repIni=os.path.dirname(os.path.abspath(__file__)) -INSTALLDIR=os.path.join(repIni,'..') -sys.path[:0]=[INSTALLDIR] - - -# lang indique la langue utilisee pour les chaines d'aide : fr ou ang -lang='fr' - -# Codage des strings qui accepte les accents (en remplacement de 'ascii') -encoding='iso-8859-1' - -# -#typeDeCata='XML' -catalogues=( - ('Essai','Poc',os.path.join(repIni,'cataPoc.py'),'python','python'), -) -#nombreDeBoutonParLigne=4 -simpleClic=True -#closeFrameRechercheCommande=True -boutonDsMenuBar=False -#closeArbre=True -afficheListesPliees=False -#withXSD=True -afficheCommandesPliees = False -#dumpXSD=True -#afficheIhm=False diff --git a/Poc/qtEficasEssai.py b/Poc/qtEficasEssai.py deleted file mode 100755 index 349334aa..00000000 --- a/Poc/qtEficasEssai.py +++ /dev/null @@ -1,36 +0,0 @@ -#!/usr/bin/env python -# -*- coding: utf-8 -*- -# Copyright (C) 2007-2013 EDF R&D -# -# 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 -# -""" - Ce module sert a lancer EFICAS configure pour MAP -""" -# Modules Python -# Modules Eficas -import prefs -name='prefs_'+prefs.code -__import__(name) - -import os, sys -sys.path.append(os.path.join(os.path.abspath(os.path.dirname(__file__)),'..')) - -import prefs -from InterfaceQT4 import eficas_go -print (prefs.code) -eficas_go.lanceEficas(code=prefs.code) diff --git a/Poc/raw/__init__.py b/Poc/raw/__init__.py deleted file mode 100644 index e69de29b..00000000 diff --git a/Poc/readExemple.py b/Poc/readExemple.py deleted file mode 100644 index 41453b26..00000000 --- a/Poc/readExemple.py +++ /dev/null @@ -1,80 +0,0 @@ -from cataPocRN_driver import * -import cataPocRN_driver as m -import cdm_helpers as hlp - -#pyxb.GlobalValidationConfig._setContentInfluencesGeneration(pyxb.GlobalValidationConfig.ALWAYS) -#pyxb.GlobalValidationConfig._setInvalidElementInContent(pyxb.GlobalValidationConfig.RAISE_EXCEPTION) -#pyxb.GlobalValidationConfig._setOrphanElementInContent(pyxb.GlobalValidationConfig.RAISE_EXCEPTION) - -jdd = CreateFromDocument(open('edg32.xml').read()) -print (jdd.toDOM().toprettyxml()) - -#Helper pour trier les PROC du premier niveau -# il est possible de filter par le nom aussi -technoList=hlp.getMainEntities(jdd,'Techno_data') -techno1=technoList[0] - -#Accès direct sans le helper -techno2=jdd.step_Essai[3] -assert(techno1==techno2) -techno=techno1 - -techno.assembly_list -techno.rodbank_list -techno.radial_description.nb_assembly -techno.radial_description.xaxis -techno.radial_description.yaxis -techno.radial_description.assembly_map.line[:] -techno.radial_description.assembly_map.line[0] -techno.radial_description.assembly_map.line[1] -techno.radial_description.assembly_map.line[1][3] -print(techno.toDOM().toprettyxml()) - -monAssembly1=T_Assembly('REF','REF') -#Sans élément racine, il faut spécifier un element_name -print(monAssembly1.toDOM(element_name='essai').toprettyxml()) -#Génère une erreur attendue : -try: - monAssembly1=T_Assembly('REF','REFP') -except BaseException as e: - print('Cette erreur est voulue...',e) - -#Avec l'élément racine, plus besoin de spécifier un element_name -m.Essai(monAssembly1).toxml() -print(m.Essai(monAssembly1).toDOM().toprettyxml()) - -l1=m.T_assembly_map_line(('REF','REF','REF','REF','REF','REF','REF','REF')) -l2=m.T_assembly_map_line(('REF','REF','REF','REF','REF','REF','REF','REF')) -l3=m.T_assembly_map_line(('REF','REF','REF','REF','REF','REF','REF','REF')) -l4=m.T_assembly_map_line(('REF','REF','REF','REF','REF','REF','REF','REF')) -l5=m.T_assembly_map_line(('REF','REF','REF','REF','REF','REF','REF','REF')) -l6=m.T_assembly_map_line(('REF','REF','REF','REF','REF','REF','REF','REF')) -l7=m.T_assembly_map_line(('REF','REF','REF','REF','REF','REF','REF','REF')) -l8=m.T_assembly_map_line(('REF','REF','REF','REF','REF','REF','REF','REF')) - -#On construit un assembly_map incomplet -ma=m.T_assembly_map(l1,l2,l3,l4,l5,l6,l7) -try: - print (ma.toDOM(element_name='Essai')) - ma.validateBinding() -except BaseException as e: - print('Cette erreur est voulue...',e) - -ma=m.T_assembly_map(l1,l2,l3,l4,l5,l6,l7,l8) -print (ma.toDOM(element_name='Essai')) - -ll1=m.T_rod_map_line(['#','#','#','#','#','#','#','#']) -ll2=ll1 -ll3=ll1 -ll4=ll1 -ll5=ll1 -ll6=ll1 -ll7=ll1 -ll8=ll1 -ro=m.T_rod_map(ll1,ll2,ll3,ll4,ll5,ll6,ll7,ll8) -print (ro.toDOM(element_name='essai2').toprettyxml()) - -nb=m.T_nb_assembly(6) -xa=m.T_xaxis(('RW', 'F', 'E', 'D', 'C', 'B', 'A', 'RE')) -ya=m.T_yaxis(['RS', '06', '05', '04', '03', '02', '01', 'RN']) - diff --git a/Poc/readExempleWithAssemblyName.py b/Poc/readExempleWithAssemblyName.py deleted file mode 100644 index e2be516e..00000000 --- a/Poc/readExempleWithAssemblyName.py +++ /dev/null @@ -1,73 +0,0 @@ -from cataPocRNWithAssemblyName_driver import * -import cataPocRNWithAssemblyName_driver as m - -pyxb.GlobalValidationConfig._setContentInfluencesGeneration(pyxb.GlobalValidationConfig.ALWAYS) -pyxb.GlobalValidationConfig._setInvalidElementInContent(pyxb.GlobalValidationConfig.RAISE_EXCEPTION) -pyxb.GlobalValidationConfig._setOrphanElementInContent(pyxb.GlobalValidationConfig.RAISE_EXCEPTION) - -jdd = CreateFromDocument(open('edg32WithAssemblyName.xml').read()) -print (jdd.toDOM().toprettyxml()) - -techno=jdd.step_Essai[3] -techno.assembly_list -techno.rodbank_list -techno.radial_description.nb_assembly -techno.radial_description.xaxis -techno.radial_description.yaxis -techno.radial_description.assembly_map.line[:] -techno.radial_description.assembly_map.line[0] -techno.radial_description.assembly_map.line[1] -techno.radial_description.assembly_map.line[1][3] -print(techno.toDOM().toprettyxml()) - -monAssembly1=T_Assembly('REF','REF') -#Sans élément racine, il faut spécifier un element_name -print(monAssembly1.toDOM(element_name='essai').toprettyxml()) -#Génère une erreur attendue : -try: - monAssembly1=T_Assembly('REF','REFP') -except BaseException as e: - print('Cette erreur est voulue...',e) - -#Avec l'élément racine, plus besoin de spécifier un element_name -m.Essai(monAssembly1).toxml() -print(m.Essai(monAssembly1).toDOM().toprettyxml()) - -l1=m.T_assembly_map_line(('REF','REF','REF','REF','REF','REF','REF','REF')) -l2=m.T_assembly_map_line(('REF','REF','REF','REF','REF','REF','REF','REF')) -l3=m.T_assembly_map_line(('REF','REF','REF','REF','REF','REF','REF','REF')) -l4=m.T_assembly_map_line(('REF','REF','REF','REF','REF','REF','REF','REF')) -l5=m.T_assembly_map_line(('REF','REF','REF','REF','REF','REF','REF','REF')) -l6=m.T_assembly_map_line(('REF','REF','REF','REF','REF','REF','REF','REF')) -l7=m.T_assembly_map_line(('REF','REF','REF','REF','REF','REF','REF','REF')) -l8=m.T_assembly_map_line(('REF','REF','REF','REF','REF','REF','REF','REF')) - -#On construit un assembly_map incomplet -ma=m.T_assembly_map(l1,l2,l3,l4,l5,l6,l7) -try: - print (ma.toDOM(element_name='Essai')) - ma.validateBinding() -except BaseException as e: - print('Cette erreur est voulue...',e) - -ma=m.T_assembly_map(l1,l2,l3,l4,l5,l6,l7,l8) -print (ma.toDOM(element_name='Essai')) - -ll1=m.T_rod_map_line(['#','#','#','#','#','#','#','#']) -ll2=ll1 -ll3=ll1 -ll4=ll1 -ll5=ll1 -ll6=ll1 -ll7=ll1 -ll8=ll1 -ro=m.T_rod_map(ll1,ll2,ll3,ll4,ll5,ll6,ll7,ll8) -print (ro.toDOM(element_name='essai2').toprettyxml()) - -nb=m.T_nb_assembly(6) -xa=m.T_xaxis(('RW', 'F', 'E', 'D', 'C', 'B', 'A', 'RE')) -ya=m.T_yaxis(['RS', '06', '05', '04', '03', '02', '01', 'RN']) - -jdd = CreateFromDocument(open('edg32.xml').read()) -print (jdd.toDOM().toprettyxml()) - diff --git a/PocRN/cataPocRNWithAssemblyName.py b/PocRN/cataPocRNWithAssemblyName.py deleted file mode 100644 index 260cd323..00000000 --- a/PocRN/cataPocRNWithAssemblyName.py +++ /dev/null @@ -1,295 +0,0 @@ -# -*- 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 -from Extensions.i18n import tr -import types -monFichier = os.path.abspath(__file__) - -JdC = JDC_CATA( - code='Essai' -) -VERSION_CATALOGUE = 'V_0' - - -NMIN_ASSEMBLY = 1 -NMAX_ASSEMBLY = 18 - - -class Tuple: - def __init__(self, ntuple): - self.ntuple = ntuple - - def __convert__(self, valeur): - if len(valeur) != self.ntuple: - return None - return valeur - - def info(self): - return "Tuple de %s elements" % self.ntuple - - - -class VerifPostTreatment(VerifTypeTuple): - - def __init__(self): - super(VerifPostTreatment, self).__init__(('TXM', 'TXM')) - self.cata_info = "" - self.physValeurs = ('Neutronics', 'Thermalhydraulics') - self.typeValeurs = ('MED', 'SUM', 'MIN', 'MAX', 'MEAN') - - def info(self): - return tr(": verifie les \ntypes dans un tuple") - - def infoErreurListe(self): - return tr("Les types entres ne sont pas permis") - - def default(self, valeur): - return valeur - - def isList(self): - return 1 - - def convertItem(self, valeur): - if len(valeur) != len(self.typeDesTuples): - raise ValueError( - tr("%s devrait etre de type %s ") % (valeur, self.typeDesTuples)) - ok = self.verifType(valeur) - if ok == 0: - raise ValueError( - tr("%s devrait etre de type %s (%d)") % (valeur, self.typeDesTuples, ok)) - if ok < 0: - raise ValueError( - tr("%s devrait etre dans %s ") % (valeur[1], self.typeValeurs)) - return valeur - - def verifItem(self, valeur): - try: - if len(valeur) != len(self.typeDesTuples): - return 0 - ok = self.verifType(valeur) - if ok != 1: - return 0 - except: - return 0 - return 1 - - def verifType(self, valeur): - ok = 0 - for v in valeur: - if type(v) == bytes or type(v) == str: - ok += 1 - if ok == len(self.typeDesTuples): - if valeur[1] in self.typeValeurs: # and valeur[1] in self.physValeurs: - return 1 - return -1 - return 0 - - def verif(self, valeur): - if type(valeur) in (list, tuple): - liste = list(valeur) - for val in liste: - if self.verifItem(val) != 1: - return 0 - return 1 - return 0 - - -class myAssembly(ASSD): - pass - - -class myTechnoData(ASSD): - pass - - -class myRodBank(ASSD): - pass - - -class myModelData(ASSD): - pass - - -class myScenarioData(ASSD): - pass - - -Assembly = OPER(nom='Assembly', sd_prod=myAssembly, - assembly_name=SIMP(statut='o', typ='TXM'), - assembly_type=SIMP(statut='o', typ='TXM', into=("UOX", "MOX", "REF")), - description=BLOC(condition='assembly_type != "REF"', - assembly_width=SIMP(statut='o', typ='R'), - radial_description=FACT(statut='o', - clad_outer_radius=SIMP(statut='o', typ='R'), - guide_tube_outer_radius=SIMP(statut='o', typ='R'), - fuel_rod_pitch=SIMP(statut='o', typ='R'), - nfuel_rods=SIMP(statut='o', typ='I')), - axial_description=FACT(statut='o', - active_length_start=SIMP(statut='o', typ='R'), - active_length_end=SIMP(statut='o', typ='R')), - grids=FACT(statut='o', - mixing=FACT(statut='o', - positions=SIMP( - statut='f', typ='R', max="**"), - size=SIMP(statut='o', typ='R')), - non_mixing=FACT(statut='o', - positions=SIMP( - statut='f', typ='R', max='**'), - size=SIMP(statut='o', typ='R')), - ) - ) - ) - - -RodBank = OPER(nom="RodBank", sd_prod=myRodBank, - rodbank_name=SIMP(statut='o', typ='TXM'), - step_height=SIMP(statut='o', typ='R'), - nsteps=SIMP(statut='o', typ='I')) - - -def add_lr_refl(ass_list): - return ["RW"] + ass_list + ["RE"] - - -def add_tb_refl(ass_list): - return ["RS"] + ass_list + ["RN"] - - -def generate_ass_map(nass_list): - xsym_list = [a for a in 'ABCDEFGHJKLNPRSTUVWXYZ'] - xsym_list.reverse() - ysym_list = ["%02d" % i for i in range(NMIN_ASSEMBLY, NMAX_ASSEMBLY+1)] - ysym_list.reverse() - def_xaxis = {} - def_yaxis = {} - for n in range(NMIN_ASSEMBLY, NMAX_ASSEMBLY+1): - def_xaxis[n] = add_lr_refl(xsym_list[-n:]) - def_yaxis[n] = add_tb_refl(ysym_list[-n:]) - - dico = {} - #for n in nass_list: - for n in (6,) : - dico['assembly_map_%d' % n] = BLOC(condition="nb_assembly==%d" % n, - xaxis=SIMP(statut='o', - typ='TXM', - min=n+2, max=n+2, - defaut=def_xaxis[n],), - #defaut=def_xaxis[n], - #nomXML='xaxis'+str(n)), - yaxis=SIMP(statut='o', - typ='TXM', - min=n+2, max=n+2, - defaut=def_yaxis[n]), - assembly_map=SIMP(statut="o", - typ=Matrice(nbLigs=n+2, - nbCols=n+2, - #valSup=1, - #valMin=-1, - #typElt='TXM', # ici c'est le nom de l'assemblage - typElt=myAssembly, # ici c'est le nom de l'assemblage - listeHeaders=None), - ), - rod_map=SIMP(statut="o", - typ=Matrice(nbLigs=n+2, - nbCols=n+2, - valSup=1, - valMin=-1, - typElt='TXM', # ici c'est le nom de l'assemblage - listeHeaders=None), - defaut=(n+2)*[(n+2)*['.']])) - - return dico - - -Techno_data = OPER(nom='Techno_data', sd_prod=myTechnoData, - assembly_list=SIMP(statut='o', typ=myAssembly, min=1, max="**"), # à resorber quand on mettra dans la Matrice - rodbank_list=SIMP(statut='o', typ=myRodBank, min=0, max="**"), # idem - radial_description=FACT(statut='o', - nb_assembly=SIMP(statut='o', typ='I', into=list(range(NMIN_ASSEMBLY, NMAX_ASSEMBLY))), - **(generate_ass_map(range(NMIN_ASSEMBLY, NMAX_ASSEMBLY))) - ), # Radial_Description - axial_description=FACT(statut='o', - lower_refl_size=SIMP(statut='o', typ='R'), - upper_refl_size=SIMP(statut='o', typ='R'), - ), - nominal_power=SIMP(statut='o', typ='R'), - fuel_power_fraction=SIMP(statut='o', typ='R'), - ) # Techno data - -Model_data = OPER(nom='Model_data', sd_prod=myModelData, - physics=SIMP(statut='o', typ='TXM', into=( - 'Neutronics', 'Thermalhydraulics')), - scale=SIMP(statut='o', typ='TXM', into=( - 'system', 'component', 'local')), - b_neutro_compo=BLOC(condition='physics=="Neutronics" and scale=="component"', - codeNeutro=SIMP(statut='o', typ='TXM', into=('COCAGNE', 'APOLLO3')), - radial_meshingNeutro=FACT(statut='o', - flux_solver=SIMP(statut='o', typ='TXM', into=('subdivision', 'pin-by-pin')), - b_flux_subdivision=BLOC(condition='flux_solver=="subdivision"', - flux_subdivision=SIMP(statut='o', typ='I')), - feedback_solver=SIMP(statut='o', typ='TXM', into=('subdivision', 'pin-by-pin')), - b_feedback_subdivision=BLOC(condition='feedback_solver=="subdivision"', - feedback_subdivision=SIMP(statut='o', typ='I')))), - b_scale_compo=BLOC(condition='scale=="component"', - axial_meshing=FACT(statut='o', - lower_refl=SIMP(statut='o', typ='I'), - fuel=SIMP(statut='o', typ='I'), - upper_refl=SIMP(statut='o', typ='I'))), - b_thermo_compo=BLOC(condition='physics=="Thermalhydraulics" and scale=="component"', - code=SIMP(statut='o', typ='TXM', into=('THYC', 'CATHARE3', 'FLICA4')), - radial_meshing=FACT(statut='o', - fluid=SIMP(statut='o', typ='TXM', into=('subdivision', 'subchannel')), - b_fluid_subdivision=BLOC(condition='fluid=="subdivision"', - fluid_subdivision=SIMP(statut='o', typ='I')), - pellet=SIMP(statut='o', typ='I'), - clad=SIMP(statut='o', typ='I'))), - b_scale_local=BLOC(condition='scale=="local"', - mesh_file=SIMP(statut='o', typ='Fichier')), - ) - - -Scenario_data = OPER(nom='Scenario_data', sd_prod=myScenarioData, - initial_power=SIMP(statut='o', typ='R', val_min=0., defaut=100.), - initial_power_unit=SIMP(statut='o', typ='TXM', - into=('% Nominal power', 'W'), - defaut ='% Nominal power',), - initial_rod_positions=SIMP(statut='o', - typ=Tuple(2), - validators=VerifTypeTuple(['TXM', 'I']), - ang="Type@label, position (e.g. RodBank@RB, 0)", - max='**'), - scenario_type=SIMP(statut='o', - typ='TXM', - into=['RIA']), - b_ria=BLOC(condition='scenario_type=="RIA"', - ejected_rod=SIMP(statut='o', - typ='TXM'), - rod_position_program=SIMP(statut='o', - typ=Tuple(2), - validators=VerifTypeTuple(['R', 'I']), - max='**'), - ), - post_processing=SIMP(statut='f', - typ=Tuple(2), - validators=VerifPostTreatment(), - max='**'), - ) diff --git a/PocRN/edg32WithAssemblyName.comm b/PocRN/edg32WithAssemblyName.comm deleted file mode 100644 index 312e85cd..00000000 --- a/PocRN/edg32WithAssemblyName.comm +++ /dev/null @@ -1,70 +0,0 @@ - -REF=Assembly(assembly_name='REF', - assembly_type='REF',); - -U1=Assembly(assembly_name='U1', - assembly_type='UOX', - assembly_width=0.21504, - radial_description=_F(clad_outer_radius=0.00475, - guide_tube_outer_radius=0.006025, - fuel_rod_pitch=0.0126, - nfuel_rods=264,), - axial_description=_F(active_length_start=0.2, - active_length_end=1.5,), - grids=_F(mixing=_F(positions=(1.0807,), - size=0.033,), - non_mixing=_F(positions=(0.026,), - size=0.033,),),); - -RB=RodBank(rodbank_name='RB', - step_height=0.008, - nsteps=162,); - -techno_data=Techno_data(assembly_list=(REF,U1,), - rodbank_list=(RB,), - radial_description=_F(nb_assembly=6, - xaxis=('RW','F','E','D','C','B','A','RE',), - yaxis=('RS','06','05','04','03','02','01','RN',), - assembly_map=((REF,REF,REF,REF,REF,REF,REF,REF,),(REF,REF,U1,U1,U1,U1,REF,REF,),(REF,U1,U1,U1,U1,U1,U1,REF,),(REF,U1,U1,U1,U1,U1,REF,REF,),(REF,U1,U1,U1,U1,U1,U1,REF,),(REF,U1,U1,U1,U1,U1,REF,REF,),(REF,REF,U1,U1,U1,U1,REF,REF,),(REF,REF,REF,REF,REF,REF,REF,REF,),), - rod_map= - (['#','#','#','#','#','#','#', - '#'],['#','#','.','.','.','.','#','#'],['#','.','.','.','RB','.', - '.','#'],['#','.','RB','.','.','.','.','#'],['#','.','.','.','.', - 'RB','.','#'],['#','.','.','RB','.','.','.','#'],['#','#','.','.', - '.','.','#','#'],['#','#','#','#','#','#','#','#'],),), - axial_description=_F(lower_refl_size=0.2, - upper_refl_size=0.2,), - nominal_power=100000000.0, - fuel_power_fraction=0.974,); - -neutro_model=Model_data(physics='Neutronics', - scale='component', - codeNeutro='COCAGNE', - radial_meshingNeutro=_F(flux_solver='subdivision', - flux_subdivision=1, - feedback_solver='subdivision', - feedback_subdivision=2,), - axial_meshing=_F(lower_refl=1, - fuel=21, - upper_refl=1,),); - -thermo_model=Model_data(physics='Thermalhydraulics', - scale='component', - axial_meshing=_F(lower_refl=1, - fuel=40, - upper_refl=1,), - code='THYC', - radial_meshing=_F(fluid='subdivision', - fluid_subdivision=1, - pellet=8, - clad=2,),); - -scenario_data=Scenario_data(initial_power=100.0, - initial_power_unit='% Nominal power', - initial_rod_positions=(('Rodbank@RB',162),('Rodcluster@B04',0)), - scenario_type='RIA', - ejected_rod='B04', - rod_position_program=((0.0,0),(0.1,162)), - post_processing=(('Fuel temperature@Thermalhydraulics','MAX'),('Neutronic power@Neutronics','SUM'),('Fuel temperature@Thermalhydraulics','MED')),); -#VERSION_CATALOGUE:V_0:FIN VERSION_CATALOGUE -#CHECKSUM:ce13abdd0825f97e69e9b5deb5d790c8 -:FIN CHECKSUM \ No newline at end of file diff --git a/ProcessOutputs_Eficas/EssaiMulti.py b/ProcessOutputs_Eficas/EssaiMulti.py deleted file mode 100755 index 87f9905b..00000000 --- a/ProcessOutputs_Eficas/EssaiMulti.py +++ /dev/null @@ -1,88 +0,0 @@ -#!/usr/bin/env python -# -*- coding: utf-8 -*- -import os -import sys -from multiprocessing import Process -from multiprocessing import Lock -from multiprocessing import Pool - -def worker(num): - """thread worker function""" - print 'Worker:', num - return - -def test1(): - for i in range(5): - p = Process(target=worker, args=(i,)) - p.start() - p.join() - -def info(title): - print(title) - print('parent process:', os.getppid()) - print('process id:', os.getpid()) - -def f(name): - info('function f') - print('hello', name) - -def test2(): - info('test2') - p = Process(target=f, args=('pascale',)) - p.start() - p.join() - -def f(l, i): - l.acquire() - try: - print('hello world', i) - finally: - l.release() - - -def test3(lock): - for num in range(10): - Process(target=f, args=(lock, num)).start() - - # sorties evt desordonnees - for i in range(50): - p = Process(target=worker, args=(i,)).start() - -def g(x): - return x*x - - -def test4(): - import traceback - traceback.print_stack() - num_cores = 4 - FolderPath='tmp' - - monPool=Pool(maxtasksperchild=1) #create a multiprocessing.Pool object - for l in range(num_cores): - print(" lct on core "+str(l) ) - p= monPool.apply_async(g,(l,)) - - res = monPool.apply_async(g, (20,)) # runs in *only* one process - print res.get(timeout=1) # prints "400" - - # evaluate "os.getpid()" asynchronously - res = monPool.apply_async(os.getpid, ()) # runs in *only* one process - print res.get(timeout=1) # prints the PID of that process - - # launching multiple evaluations asynchronously *may* use more processes - multiple_results = [monPool.apply_async(os.getpid, ()) for i in range(4)] - print [res.get(timeout=1) for res in multiple_results] - - - -if __name__ == '__main__': - #test1() - - #test2() - - #lock = Lock() - #test3(lock) - print ('je suis dans main du run') - test4() - diff --git a/ProcessOutputs_Eficas/ExtractGeneratorLoadLineandTransfoDico.py b/ProcessOutputs_Eficas/ExtractGeneratorLoadLineandTransfoDico.py deleted file mode 100644 index d9188102..00000000 --- a/ProcessOutputs_Eficas/ExtractGeneratorLoadLineandTransfoDico.py +++ /dev/null @@ -1,620 +0,0 @@ -import os -import sys -import numpy as np -import copy - -#import Storage - - -def getNominalkV(NetworkFile): - print "begin getNominalkV for ", NetworkFile - - print "version en dur" - BusList=(1,2,3,4,6) - LinesList=(7,8,9,10) - TransfosList=('Transfos_A', 'Transfos_B', 'Transfos_C', 'Transfos_D') - return BusList, LinesList, TransfosList - - import psspy - import redirect - - psspy.psseinit(80000) - redirect.psse2py() - psspy.progress_output(6) - - psspy.case(NetworkFile) - print "before buses" - # Buses - - sid = -1 - flag = 2 - ierr, ret = psspy.abusreal(sid, flag, ['BASE']) - Storage.BusBase = ret[0] - - ierr, carray = psspy.abuschar(sid, flag, ['NAME']) - Storage.BusBaseList = {} - for i in range(len(carray[0])): - Storage.BusBaseList[carray[0][i]] = ret[0][i] - - BusList = [] - for item in Storage.BusBase: - if item not in BusList: - BusList.append(item) - BusList = sorted(BusList) - - print "after buses" - - # Lines - - owner = 1 - ties = 1 - flag = 2 - entry = 1 - string = ['FROMNAME', 'TONAME'] - ierr, carray = psspy.abrnchar(sid, owner, ties, flag, entry, string) - - for i in range(len(carray[0])): - nom = Storage.BusBaseList[carray[0][i]] - name = carray[0][i] + '-' + carray[1][i] - Storage.LinesBaseList[name] = nom - Storage.LinesBase.append(nom) - - LinesList = [] - for item in Storage.LinesBase: - if item not in LinesList: - LinesList.append(item) - LinesList = sorted(LinesList) - - print "after lines" - - # Transfos - - owner = 1 - ties = 1 - flag = 6 - entry = 1 - string = ['FROMNAME', 'TONAME'] - ierr, carray = psspy.abrnchar(sid, owner, ties, flag, entry, string) - - for i in range(len(carray[0])): - nom1 = Storage.BusBaseList[carray[0][i]] - nom2 = Storage.BusBaseList[carray[1][i]] - name = carray[0][i] + '-' + carray[1][i] - Storage.TransfoBaseList[name] = [nom1, nom2] - Storage.TransfoBase.append([nom1, nom2]) - - TransfosList = [] - for item in Storage.TransfoBase: - string = str(item[0]) + ' - ' + str(item[1]) - if string not in TransfosList: - TransfosList.append(string) - TransfosList = sorted(TransfosList) - - print "after transfos" - - # Generators - - sid = -1 #all buses - flag = 1 #all in service loads/generators (4 all loads/generators) - - string = ['NUMBER'] - ierr,iarray = psspy.amachint(sid,flag,string) - - string = ['NAME','ID'] - ierr,carray = psspy.amachchar(sid,flag,string) - - for i in range(len(iarray[0])): - idname = "GR" + carray[1][i] - machinename = carray[0][i].strip()+ "__" + idname - machinename = machinename.replace(" ","_") - machinename = machinename.replace("-","_") - machinename = machinename.replace(".","_") - machinename = machinename.replace("&","and") - try: - int(machinename[0]) - machinename = "_" + machinename - except: - pass - Storage.GenBaseList[machinename] = iarray[0][i] - - return BusList, LinesList, TransfosList - -#PN --> inutiles -#def getBusNominalkV(NetworkFile): -# import psspy -# import redirect -# -# psspy.psseinit(80000) -# redirect.psse2py() -# psspy.progress_output(6) -# -# psspy.case(NetworkFile) -# -# sid = -1 -# flag = 2 -# ierr, ret = psspy.abusreal(sid, flag, ['BASE']) -# Storage.BusBase = ret[0] -# -# ierr, carray = psspy.abuschar(sid, flag, ['NAME']) -# buses = {} -# for i in range(len(carray[0])): -# buses[carray[0][i]] = ret[0][i] -# Storage.BusNames = buses -# ret = [] -# for item in Storage.BusBase: -# if item not in ret: -# ret.append(item) -# return sorted(ret) - -#def updateConts(): -# Storage.ContFullList = [] -# tmp = Storage.BusBaseList.keys() -# tmp.sort() -# for key in tmp: -# Storage.ContFullList.append(key) -# tmp = Storage.GenBaseList.keys() -# tmp.sort() -# for key in tmp: -# Storage.ContFullList.append(key) -# tmp = Storage.LinesBaseList.keys() -# tmp.sort() -# for key in tmp: -# Storage.ContFullList.append(key) -# tmp = Storage.TransfoBaseList.keys() -# tmp.sort() -# for key in tmp: -# Storage.ContFullList.append(key) -# print Storage.ContFullList -# return Storage.ContFullList -# -#def newContingency(MatList): -# Storage.CustomContingencies.append(MatList) -# -#def checkIfBorder(graph, key, depth, tmplist): -# if key in tmplist: -# return True -# if depth == 0: -# return False -# NonBorders = 0 -# for item in graph[key]: -# if not checkIfBorder(graph, item, depth - 1, tmplist): -# NonBorders += 1 -# if NonBorders < 2: # A generator is considered as isolated if it has less than two non-borders neighbours -# if key not in tmplist: -# tmplist.append(key) -# return True -# return False -# -#def getTrueLines(NetworkFile): -# import psspy -# import redirect -# -# psspy.psseinit(80000) -# redirect.psse2py() -# psspy.progress_output(6) -# -# psspy.case(NetworkFile) -# -# sid = -1 -# owner = 1 -# ties = 1 -# flag = 4 # 6 for two-winding transfos -# entry = 1 #each branch once, not both directions -# string = ['FROMNAME', 'TONAME', 'ID'] -# ierr, iarray = psspy.abrnchar(sid, owner, ties, flag, entry, string) -# string = ['FROMNUMBER', 'TONUMBER'] -# ierr, carray = psspy.abrnint(sid, owner, ties, flag, entry, string) -# -# lst = [] -# tmplist = [] -# try: -# for i in range(len(carray[0])): -# if carray[0][i] not in lst and carray[0][i] not in tmplist: -# tmplist.append(carray[0][i]) -# elif carray[0][i] not in lst and carray[0][i] in tmplist: -# tmplist.remove(carray[0][i]) -# lst.append(carray[0][i]) -# if carray[1][i] not in lst and carray[1][i] not in tmplist: -# tmplist.append(carray[1][i]) -# elif carray[1][i] not in lst and carray[1][i] in tmplist: -# tmplist.remove(carray[1][i]) -# lst.append(carray[1][i]) -# except: -# pass -# -# # Create the graph -# graph = {} -# for i in range(len(carray[0])): -# try: -# if graph[carray[0][i]]: -# pass -# except: -# graph[carray[0][i]] = [] -# if carray[1][i] not in graph[carray[0][i]]: -# graph[carray[0][i]].append(carray[1][i]) -# try: -# if graph[carray[1][i]]: -# pass -# except: -# graph[carray[1][i]] = [] -# if carray[0][i] not in graph[carray[1][i]]: -# graph[carray[1][i]].append(carray[0][i]) -# -# # Search it twice, to ensure everything is mapped -# for key in sorted(graph.keys()): -# checkIfBorder(graph, key, Storage.RecursiveDepth, tmplist) -# for key in reversed(sorted(graph.keys())): -# checkIfBorder(graph, key, Storage.RecursiveDepth, tmplist) -# -# Storage.IsolatedGenList = [] -# # Unfold it -# for i in range(len(carray[0])): -# if carray[0][i] in tmplist: -# if iarray[0][i] not in Storage.IsolatedGenList: -# Storage.IsolatedGenList.append(iarray[0][i]) -# if carray[1][i] in tmplist: -# if iarray[1][i] not in Storage.IsolatedGenList: -# Storage.IsolatedGenList.append(iarray[1][i]) -# -# lines = [] -# outLines = [] -# for i in range(len(iarray[0])): -# name = iarray[0][i] + '-' + iarray[1][i] -# if '@' in iarray[2][i] or '*' in iarray[2][i]: -# outLines.append(name) -# elif iarray[0][i] not in Storage.IsolatedGenList and iarray[1][i] not in Storage.IsolatedGenList: -# lines.append(name) -# else: -# outLines.append(name) -# Storage.TrueLines = lines -# return lines -# -#NoBreakersandSwitches = True -# -#def ExtractGeneratorLoadLineandTransfoDico(NetworkFile,PSSE_PATH): -# import os -# import sys -# import numpy as np -# -# print NetworkFile -# print PSSE_PATH -# sys.path.append(PSSE_PATH) -# os.environ['PATH'] += ';' + PSSE_PATH + ';' -# -# import psspy -# import redirect -# -# ###initialization PSSE -# psspy.psseinit(10000) -# _i=psspy.getdefaultint() -# _f=psspy.getdefaultreal() -# _s=psspy.getdefaultchar() -# redirect.psse2py() -# -# # Silent execution of PSSe -# islct=6 # 6=no output; 1=standard -# psspy.progress_output(islct) -# -# #open Network File -# psspy.case(NetworkFile) -# -# # Extract Buses -# sid = -1 # all buses -# flag = 2 -# string = ['NUMBER'] -# ierr, iarray = psspy.abusint(sid, flag, string) -# -# string = ['NAME', 'EXNAME'] -# ierr, carray = psspy.abuschar(sid, flag, string) -# -# string = ['BASE'] -# ierr, ret = psspy.abusreal(sid, flag, string) -# -# BusDico = {} -# BusNominal = {} -# for i in range(len(iarray[0])): -# BusNum = iarray[0][i] -# BusDico[str(BusNum)] = carray[0][i].strip() -# BusNominal[BusDico[str(BusNum)]] = ret[0][i] -# -# #Extract Loads -# sid = -1 #all buses -# flag = 1 #all in service loads/generators (4 all loads/generators) -# -# -# string = ['NUMBER'] -# ierr,iarray = psspy.aloadint(sid,flag,string) -# -# string = ['NAME','ID','EXNAME'] -# ierr,carray = psspy.aloadchar(sid,flag,string) -# -# string = ['mvaact'] -# ierr, xdata = psspy.aloadcplx(sid, flag, string) -# -# LoadDico = {} # [Bus name, load ID, extended bus name, bus number] -# for i in range(len(iarray[0])): -# idname = "Lo" + carray[1][i].strip() -## try: #id is an integer -## idname = "Lo" + str(int(carray[1][i])) -## except: #id is not an integer -## idname = "Lo" + carray[1][i] -# loadname = carray[0][i].strip()+ "__" + idname -# loadname = loadname.replace(" ","_") -# loadname = loadname.replace("-","_") -# loadname = loadname.replace(".","_") -# loadname = loadname.replace("&","and") -# try: -# int(loadname[0]) -# loadname="_" + loadname -# except: -# pass -# LoadDico[loadname]= {} -# LoadDico[loadname]['NAME'] = carray[0][i].strip() -# LoadDico[loadname]['ID'] = carray[1][i] -# LoadDico[loadname]['EXNAME'] =carray[2][i] -# LoadDico[loadname]['NUMBER']=iarray[0][i] -# LoadDico[loadname]['P']=np.real(xdata)[0][i] -# LoadDico[loadname]['Q']=np.imag(xdata)[0][i] -# -# #Extract Generators -# sid = -1 #all buses -# flag = 1 #all in service loads/generators (4 all loads/generators) -# -# string = ['NUMBER'] -# ierr,iarray = psspy.amachint(sid,flag,string) -# -# string = ['NAME','ID','EXNAME'] -# ierr,carray = psspy.amachchar(sid,flag,string) -# -# rstrings = ['pgen','qgen','mbase','pmax','qmax','pmin','qmin'] -# ierr, rarray = psspy.amachreal(sid, flag, rstrings) -# -# MachineDico = {} # [Bus name, machine ID, extended bus name, bus number] -# for i in range(len(iarray[0])): -# idname = "Gr" + carray[1][i].strip() -### try: -### idname = "Gr" + str(int(carray[1][i])) -### except: -### idname = "Gr" + carray[1][i] -# machinename = carray[0][i].strip()+ "__" + idname -# machinename = machinename.replace(" ","_") -# machinename = machinename.replace("-","_") -# machinename = machinename.replace(".","_") -# machinename = machinename.replace("&","and") -# try: -# int(machinename[0]) -# machinename="_" + machinename -# except: -# pass -# MachineDico[machinename]={} -# MachineDico[machinename]['NAME'] = carray[0][i].strip() -# MachineDico[machinename]['ID'] = carray[1][i] -# MachineDico[machinename]['EXNAME'] =carray[2][i] -# MachineDico[machinename]['NUMBER']=iarray[0][i] -# MachineDico[machinename]['P']=rarray[0][i] -# MachineDico[machinename]['Q']=rarray[1][i] -# MachineDico[machinename]['PMAX']=rarray[3][i] -# MachineDico[machinename]['QMAX']=rarray[4][i] -# MachineDico[machinename]['PMIN']=rarray[5][i] -# MachineDico[machinename]['QMIN']=rarray[6][i] -# -# #Extract Motors -# sid = -1 #all buses -# flag = 1 #all in service loads/generators (4 all loads/generators) -# -# string = ['NUMBER','PSETCODE','BASECODE'] -# ierr,iarray = psspy.aindmacint(sid,flag,string) -# -# string = ['NAME','ID','EXNAME'] -# ierr,carray = psspy.aindmacchar(sid,flag,string) -# -# rstrings = ['psetpoint','mbase','p','q'] -# ierr, rarray = psspy.aindmacreal(sid, flag, rstrings) -# -# -# MotorDico = {} # [Bus name, machine ID, extended bus name, bus number] -# for i in range(len(iarray[0])): -# idname = "Mo" + carray[1][i].strip() -### try: -### idname = "Gr" + str(int(carray[1][i])) -### except: -### idname = "Gr" + carray[1][i] -# motorname = carray[0][i].strip()+ "__" + idname -# motorname = motorname.replace(" ","_") -# motorname = motorname.replace("-","_") -# motorname = motorname.replace(".","_") -# motorname = motorname.replace("&","and") -# try: -# int(motorname[0]) -# motorname="_" + motorname -# except: -# pass -# MotorDico[motorname]={} -# MotorDico[motorname]['NAME'] = carray[0][i].strip() -# MotorDico[motorname]['ID'] = carray[1][i] -# MotorDico[motorname]['EXNAME'] =carray[2][i] -# MotorDico[motorname]['NUMBER']=iarray[0][i] -# MotorDico[motorname]['PSETCODE']=iarray[1][i] -# MotorDico[motorname]['BASECODE']=iarray[2][i] -# MotorDico[motorname]['PSETPOINT']=rarray[0][i] -# MotorDico[motorname]['MBASE']=rarray[1][i] -# MotorDico[motorname]['P']=rarray[2][i] -# MotorDico[motorname]['Q']=rarray[3][i] -# -# -# #Extract Lignes -# sid = -1 -# owner = 1 -# ties = 1 -# flag = 2 #6 for two-winding transfos -# entry = 1 #each branch once, not both directions -# string = ['FROMNUMBER','TONUMBER'] -# ierr,iarray = psspy.abrnint(sid,owner,ties,flag,entry,string) -# string = ['FROMNAME','TONAME','FROMEXNAME','TOEXNAME','ID'] -# ierr,carray = psspy.abrnchar(sid,owner,ties,flag,entry,string) -# -# LineDico = {} #[linename, Bus name 1, Bus name 2, ID, extended bus name 1, extended bus name 2, bus number 1, bus number 2] -# for i in range(len(iarray[0])): -# idname = carray[4][i].strip() -# #idname = carray[4][i] -# if '@' in idname: -# idname = idname.replace('@','Br') -# elif '*' in idname: -# idname = idname.replace('*','Sw') -# else: -# try: -# idname = 'Li' + str(int(idname)) -# except: -# idname = 'Li' + idname -# linename =carray[0][i].strip() + "__" + carray[1][i].strip() + "__" + idname -# linename = linename.replace(" ","_") -# linename = linename.replace("-","_") -# linename = linename.replace(".","_") -# linename = linename.replace("&","and") -# try: -# int(linename[0]) -# linename="_" + linename -# except: -# pass -# if NoBreakersandSwitches: -# if 'Br' not in idname and 'Sw' not in idname: -# LineDico[linename]={} -# LineDico[linename]['FROMNAME']=carray[0][i].strip() -# LineDico[linename]['TONAME']=carray[1][i].strip() -# LineDico[linename]['ID']=carray[4][i] -# LineDico[linename]['FROMEXNAME']=carray[2][i] -# LineDico[linename]['TOEXNAME']=carray[3][i] -# LineDico[linename]['FROMNUMBER']=iarray[0][i] -# LineDico[linename]['TONUMBER']=iarray[1][i] -# -# #Extract Branches -# sid = -1 -# owner = 1 -# ties = 1 -# flag = 4 # lines & transfos -# entry = 1 #each branch once, not both directions -# string = ['FROMNUMBER','TONUMBER'] -# ierr, iarray = psspy.abrnint(sid, owner, ties, flag, entry, string) -# string = ['FROMNAME','TONAME','FROMEXNAME','TOEXNAME','ID'] -# ierr, carray = psspy.abrnchar(sid, owner, ties, flag, entry, string) -# -# BranchesDico = {} #[linename, Bus name 1, Bus name 2, ID, extended bus name 1, extended bus name 2, bus number 1, bus number 2] -# for i in range(len(iarray[0])): -# idname = carray[4][i] -# if '@' in idname: -# idname = idname.replace('@','Br') -# elif '*' in idname: -# idname = idname.replace('*','Sw') -# else: -# idname = 'LI' + idname -# linename = carray[0][i].strip() + "__" + carray[1][i].strip() + "__" + idname -# linename = linename.replace(" ","_") -# linename = linename.replace("-","_") -# linename = linename.replace(".","_") -# linename = linename.replace("&","and") -# try: -# int(linename[0]) -# linename = "_" + linename -# except: -# pass -# if linename[-1] == '_': -# linename = linename[:-1] -# BranchesDico[linename] = {} -# BranchesDico[linename]['FROMNAME'] = carray[0][i].strip() -# BranchesDico[linename]['TONAME'] = carray[1][i].strip() -# BranchesDico[linename]['ID'] = carray[4][i] -# BranchesDico[linename]['FROMEXNAME'] = carray[2][i] -# BranchesDico[linename]['TOEXNAME'] = carray[3][i] -# BranchesDico[linename]['FROMNUMBER'] = iarray[0][i] -# BranchesDico[linename]['TONUMBER'] = iarray[1][i] -# -# -# #Extract Transfos -# sid = -1 -# owner = 1 -# ties = 1 -# flag = 6 #two-winding transfos -# entry = 1 #each branch once, not both directions -# string = ['FROMNUMBER','TONUMBER'] -# ierr,iarray = psspy.abrnint(sid,owner,ties,flag,entry,string) -# string = ['FROMNAME','TONAME','FROMEXNAME','TOEXNAME','ID'] -# ierr,carray = psspy.abrnchar(sid,owner,ties,flag,entry,string) -# -# TfoDico = {} #[linename, Bus name 1, Bus name 2, machine ID, extended bus name 1, extended bus name 2, bus number 1, bus number 2] -# for i in range(len(iarray[0])): -# idname = 'Tr' + carray[4][i].strip() -### try: -### idname = 'Tr' + str(int(carray[4][i])) -### except: -### idname = 'Tr' + carray[4][i] -# tfoname = carray[0][i].strip() + "__" + carray[1][i].strip() + "__" + idname -# tfoname = tfoname.replace(" ","_") -# tfoname = tfoname.replace("-","_") -# tfoname = tfoname.replace(".","_") -# tfoname = tfoname.replace("&","and") -# try: -# int(tfoname[0]) -# tfoname="_" + tfoname -# except: -# pass -# TfoDico[tfoname]={} -# TfoDico[tfoname]['FROMNAME']=carray[0][i].strip() -# TfoDico[tfoname]['TONAME']=carray[1][i].strip() -# TfoDico[tfoname]['ID']=carray[4][i] -# TfoDico[tfoname]['FROMEXNAME']=carray[2][i] -# TfoDico[tfoname]['TOEXNAME']=carray[3][i] -# TfoDico[tfoname]['FROMNUMBER']=iarray[0][i] -# TfoDico[tfoname]['TONUMBER']=iarray[1][i] -# TfoDico[tfoname]['#WIND']=2 -# print "Read Transfos" -# -# #Extract 3 winding Transfos -# sid = -1 #assume a subsystem containing all buses in working case -# owner_3flow = 1 #1 = use bus ownership 2 = use tfo ownership -# ties_3flow = 3 #ignored bc sid is negative. 3 = interior subsystem and subsystem tie 3 winding transformers -# flag=3 #all 3 winding transfo windings -# string = ['wind1number','wind2number','wind3number'] -# ierr,iarray = psspy.awndint(sid,owner,ties,flag,entry,string) -# string = ['wind1name','wind2name','wind3name','wind1exname','wind2exname','wind3exname','id'] -# ierr,carray = psspy.awndchar(sid,owner,ties,flag,entry,string) -# -# #[Bus name 1, Bus name 2, Bus name 3, machine ID, extended bus name 1, extended bus name 2, extended bus name 3, bus number 1, bus number 2, bus number 3] -# for i in range(len(iarray[0])): -# idname = 'Tr' + carray[6][i].strip() -### try: -### idname = 'Tr' + str(int(carray[4][i])) -### except: -### idname = 'Tr' + carray[4][i] -# tfoname = carray[0][i].strip() + "__" + carray[1][i].strip() + "__" + carray[2][i].strip() + "__" + idname -# tfoname = tfoname.replace(" ","_") -# tfoname = tfoname.replace("-","_") -# tfoname = tfoname.replace(".","_") -# tfoname = tfoname.replace("&","and") -# try: -# int(tfoname[0]) -# tfoname="_" + tfoname -# except: -# pass -# TfoDico[tfoname]={} -# TfoDico[tfoname]['FROMNAME']=carray[0][i].strip() -# TfoDico[tfoname]['TONAME']=carray[1][i].strip() -# TfoDico[tfoname]['3NAME']=carray[2][i].strip() -# TfoDico[tfoname]['ID']=carray[6][i] -# TfoDico[tfoname]['FROMEXNAME']=carray[3][i] -# TfoDico[tfoname]['TOEXNAME']=carray[4][i] -# TfoDico[tfoname]['3EXNAME']=carray[5][i] -# TfoDico[tfoname]['FROMNUMBER']=iarray[0][i] -# TfoDico[tfoname]['TONUMBER']=iarray[1][i] -# TfoDico[tfoname]['3NUMBER']=iarray[2][i] -# TfoDico[tfoname]['#WIND']=3 -# print "Read 3-Winding Transfos" -# -# return MachineDico, LoadDico, LineDico, TfoDico, MotorDico, BusDico, BranchesDico, BusNominal -# -# -##NetworkFile = r'\\Atlas.edf.fr\co\dpit-cist-siege\Der.012\Dpt-Etudes-Reseaux.001\Outils DER - Divers (excel, codes python, etc.)\PSEN_V15\Example\Results\N_20160705_17h36m34\package0_N_20160705_17h36m34\BaseCase.sav' -##PSSE_PATH=r"C:\Program Files (x86)\PTI\PSSE33\PSSBIN" -##sys.path.append(PSSE_PATH) -##os.environ['PATH'] += ';' + PSSE_PATH + ';' -##getNominalkV(NetworkFile) -##updateConts() diff --git a/ProcessOutputs_Eficas/ExtractGeneratorLoadLineandTransfoDicoProcess.py b/ProcessOutputs_Eficas/ExtractGeneratorLoadLineandTransfoDicoProcess.py deleted file mode 100644 index 653e23f8..00000000 --- a/ProcessOutputs_Eficas/ExtractGeneratorLoadLineandTransfoDicoProcess.py +++ /dev/null @@ -1,631 +0,0 @@ -import os -import sys -import numpy as np -import copy - -path1 = os.path.abspath(os.path.join(os.path.abspath(__file__), '../','TreatOutputs')) -sys.path.append(path1) -import Options - - -def getNominalkV(NetworkFile): - - print "version en dur" - - BusList=[11.0, 30.0, 90.0] - LinesList=[30.0, 90.0] - TransfosList=['11.0 - 30.0', '11.0 - 90.0', '30.0 - 90.0', '90.0 - 30.0'] - return BusList, LinesList, TransfosList - - - - - - import psspy - import redirect - - psspy.psseinit(80000) - redirect.psse2py() - psspy.progress_output(6) - - psspy.case(NetworkFile) - # Buses - - sid = -1 - flag = 2 - ierr, ret = psspy.abusreal(sid, flag, ['BASE']) - Options.BusBase = ret[0] - - ierr, carray = psspy.abuschar(sid, flag, ['NAME']) - Options.BusBaseList = {} - for i in range(len(carray[0])): - Options.BusBaseList[carray[0][i]] = ret[0][i] - - BusList = [] - for item in Options.BusBase: - if item not in BusList: - BusList.append(item) - BusList = sorted(BusList) - - # Lines - - owner = 1 - ties = 1 - flag = 2 - entry = 1 - string = ['FROMNAME', 'TONAME'] - ierr, carray = psspy.abrnchar(sid, owner, ties, flag, entry, string) - - for i in range(len(carray[0])): - nom = Options.BusBaseList[carray[0][i]] - name = carray[0][i] + '-' + carray[1][i] - Options.LinesBaseList[name] = nom - Options.LinesBase.append(nom) - - LinesList = [] - for item in Options.LinesBase: - if item not in LinesList: - LinesList.append(item) - LinesList = sorted(LinesList) - - # Transfos - - owner = 1 - ties = 1 - flag = 6 - entry = 1 - string = ['FROMNAME', 'TONAME'] - ierr, carray = psspy.abrnchar(sid, owner, ties, flag, entry, string) - - for i in range(len(carray[0])): - nom1 = Options.BusBaseList[carray[0][i]] - nom2 = Options.BusBaseList[carray[1][i]] - name = carray[0][i] + '-' + carray[1][i] - Options.TransfoBaseList[name] = [nom1, nom2] - Options.TransfoBase.append([nom1, nom2]) - - TransfosList = [] - for item in Options.TransfoBase: - string = str(item[0]) + ' - ' + str(item[1]) - if string not in TransfosList: - TransfosList.append(string) - TransfosList = sorted(TransfosList) - - # Generators - - sid = -1 #all buses - flag = 1 #all in service loads/generators (4 all loads/generators) - - string = ['NUMBER'] - ierr,iarray = psspy.amachint(sid,flag,string) - - string = ['NAME','ID'] - ierr,carray = psspy.amachchar(sid,flag,string) - - for i in range(len(iarray[0])): - idname = "GR" + carray[1][i] - machinename = carray[0][i].strip()+ "__" + idname - machinename = machinename.replace(" ","_") - machinename = machinename.replace("-","_") - machinename = machinename.replace(".","_") - machinename = machinename.replace("&","and") - try: - int(machinename[0]) - machinename = "_" + machinename - except: - pass - Options.GenBaseList[machinename] = iarray[0][i] - - return BusList, LinesList, TransfosList - -def getBusNominalkV(NetworkFile): - import psspy - import redirect - - psspy.psseinit(80000) - redirect.psse2py() - psspy.progress_output(6) - - psspy.case(NetworkFile) - - sid = -1 - flag = 2 - ierr, ret = psspy.abusreal(sid, flag, ['BASE']) - Options.BusBase = ret[0] - - ierr, carray = psspy.abuschar(sid, flag, ['NAME']) - buses = {} - for i in range(len(carray[0])): - buses[carray[0][i]] = ret[0][i] - Options.BusNames = buses - ret = [] - for item in Options.BusBase: - if item not in ret: - ret.append(item) - return sorted(ret) - -def updateConts(): - Options.ContFullList = [] - tmp = Options.BusBaseList - tmp.sort() - for key in tmp: - Options.ContFullList.append(key) - tmp = Options.GenBaseList - tmp.sort() - for key in tmp: - Options.ContFullList.append(key) - tmp = Options.LinesBaseList - tmp.sort() - for key in tmp: - Options.ContFullList.append(key) - tmp = Options.TransfoBaseList - tmp.sort() - for key in tmp: - Options.ContFullList.append(key) - print Options.ContFullList - return Options.ContFullList - -def newContingency(MatList): - Options.CustomContingencies.append(MatList) - -def checkIfBorder(graph, key, depth, tmplist): - #print "in checkifBorder" - #print "depth ",depth - #print graph - if key in tmplist: - return True - if depth == 0: - return False - NonBorders = 0 - for item in graph[key]: - if not checkIfBorder(graph, item, depth - 1, tmplist): - NonBorders += 1 - if NonBorders < 2: # A generator is considered as isolated if it has less than two non-borders neighbours - if key not in tmplist: - tmplist.append(key) - return True - return False - -def getTrueLines(NetworkFile): - import psspy - import redirect - - psspy.psseinit(80000) - redirect.psse2py() - psspy.progress_output(6) - - psspy.case(NetworkFile) - - sid = -1 - owner = 1 - ties = 1 - flag = 4 # 6 for two-winding transfos - entry = 1 #each branch once, not both directions - string = ['FROMNAME', 'TONAME', 'ID'] - ierr, iarray = psspy.abrnchar(sid, owner, ties, flag, entry, string) - string = ['FROMNUMBER', 'TONUMBER'] - ierr, carray = psspy.abrnint(sid, owner, ties, flag, entry, string) - - lst = [] - tmplist = [] - try: - for i in range(len(carray[0])): - if carray[0][i] not in lst and carray[0][i] not in tmplist: - tmplist.append(carray[0][i]) - elif carray[0][i] not in lst and carray[0][i] in tmplist: - tmplist.remove(carray[0][i]) - lst.append(carray[0][i]) - if carray[1][i] not in lst and carray[1][i] not in tmplist: - tmplist.append(carray[1][i]) - elif carray[1][i] not in lst and carray[1][i] in tmplist: - tmplist.remove(carray[1][i]) - lst.append(carray[1][i]) - except: - pass - - # Create the graph - graph = {} - for i in range(len(carray[0])): - try: - if graph[carray[0][i]]: - pass - except: - graph[carray[0][i]] = [] - if carray[1][i] not in graph[carray[0][i]]: - graph[carray[0][i]].append(carray[1][i]) - try: - if graph[carray[1][i]]: - pass - except: - graph[carray[1][i]] = [] - if carray[0][i] not in graph[carray[1][i]]: - graph[carray[1][i]].append(carray[0][i]) - - - # Search it twice, to ensure everything is mapped - for key in sorted(graph): - #print key - checkIfBorder(graph, key, Options.RecursiveDepth, tmplist) - #print "out of Checkif 0" - #print "" - for key in reversed(sorted(graph)): - checkIfBorder(graph, key, Options.RecursiveDepth, tmplist) - - Options.IsolatedGenList = [] - # Unfold it - for i in range(len(carray[0])): - if carray[0][i] in tmplist: - if iarray[0][i] not in Options.IsolatedGenList: - Options.IsolatedGenList.append(iarray[0][i]) - if carray[1][i] in tmplist: - if iarray[1][i] not in Options.IsolatedGenList: - Options.IsolatedGenList.append(iarray[1][i]) - - lines = [] - outLines = [] - for i in range(len(iarray[0])): - name = iarray[0][i] + '-' + iarray[1][i] - if '@' in iarray[2][i] or '*' in iarray[2][i]: - outLines.append(name) - elif iarray[0][i] not in Options.IsolatedGenList and iarray[1][i] not in Options.IsolatedGenList: - lines.append(name) - else: - outLines.append(name) - Options.TrueLines = lines - - return lines - -NoBreakersandSwitches = True - -def ExtractGeneratorLoadLineandTransfoDico(NetworkFile,PSSE_PATH): - - print "version en dur" - MachineDico={'M1':'M1','M2':'M2','M3':'M3','M4':'M4','B6_BUS13__1':'AZ','CSPRING__1':'DD','GT12B__1':'ER','BSTMB__1':'JJ'} - LoadDico={'C1':'C1','C2':'C2','C3':'C3','C4':'C4'} - LineDico={'L1':'L1','L2':'L2','L3':'L3','L4':'L4'} - TfoDico={'T1':'T1','T2':'T2','T3':'T3','T4':'T4'} - MDico={'MZ1':'MZ1','MZ2':'MZ2','MZ3':'MZ3','MZ4':'MZ4'} - BranchesDico={'B11':'B1','B2':'B2','B3':'B3','B4':'B4'} - BusNomial={'Bus1':'Bus1','Bus2':'Bus2','Bus3':'Bus3','Bus4':'Bus4'} - - return MachineDico, LoadDico, LineDico, TfoDico, MotorDico, BusDico, BranchesDico, BusNominal - - - import os - import sys - import numpy as np - - sys.path.append(PSSE_PATH) - os.environ['PATH'] += ';' + PSSE_PATH + ';' - - import psspy - import redirect - - ###initialization PSSE - psspy.psseinit(10000) - _i=psspy.getdefaultint() - _f=psspy.getdefaultreal() - _s=psspy.getdefaultchar() - redirect.psse2py() - - # Silent execution of PSSe - islct=6 # 6=no output; 1=standard - psspy.progress_output(islct) - - #open Network File - psspy.case(NetworkFile) - - # Extract Buses - sid = -1 # all buses - flag = 2 - string = ['NUMBER'] - ierr, iarray = psspy.abusint(sid, flag, string) - - string = ['NAME', 'EXNAME'] - ierr, carray = psspy.abuschar(sid, flag, string) - - string = ['BASE'] - ierr, ret = psspy.abusreal(sid, flag, string) - - BusDico = {} - BusNominal = {} - for i in range(len(iarray[0])): - BusNum = iarray[0][i] - BusDico[str(BusNum)] = carray[0][i].strip() - BusNominal[BusDico[str(BusNum)]] = ret[0][i] - - #Extract Loads - sid = -1 #all buses - flag = 1 #all in service loads/generators (4 all loads/generators) - - - string = ['NUMBER'] - ierr,iarray = psspy.aloadint(sid,flag,string) - - string = ['NAME','ID','EXNAME'] - ierr,carray = psspy.aloadchar(sid,flag,string) - - string = ['mvaact'] - ierr, xdata = psspy.aloadcplx(sid, flag, string) - - LoadDico = {} # [Bus name, load ID, extended bus name, bus number] - for i in range(len(iarray[0])): - idname = "Lo" + carray[1][i].strip() -# try: #id is an integer -# idname = "Lo" + str(int(carray[1][i])) -# except: #id is not an integer -# idname = "Lo" + carray[1][i] - loadname = carray[0][i].strip()+ "__" + idname - loadname = loadname.replace(" ","_") - loadname = loadname.replace("-","_") - loadname = loadname.replace(".","_") - loadname = loadname.replace("&","and") - try: - int(loadname[0]) - loadname="_" + loadname - except: - pass - LoadDico[loadname]= {} - LoadDico[loadname]['NAME'] = carray[0][i].strip() - LoadDico[loadname]['ID'] = carray[1][i] - LoadDico[loadname]['EXNAME'] =carray[2][i] - LoadDico[loadname]['NUMBER']=iarray[0][i] - LoadDico[loadname]['P']=np.real(xdata)[0][i] - LoadDico[loadname]['Q']=np.imag(xdata)[0][i] - - #Extract Generators - sid = -1 #all buses - flag = 1 #all in service loads/generators (4 all loads/generators) - - string = ['NUMBER'] - ierr,iarray = psspy.amachint(sid,flag,string) - - string = ['NAME','ID','EXNAME'] - ierr,carray = psspy.amachchar(sid,flag,string) - - rstrings = ['pgen','qgen','mbase','pmax','qmax','pmin','qmin'] - ierr, rarray = psspy.amachreal(sid, flag, rstrings) - - MachineDico = {} # [Bus name, machine ID, extended bus name, bus number] - for i in range(len(iarray[0])): - idname = "Gr" + carray[1][i].strip() -## try: -## idname = "Gr" + str(int(carray[1][i])) -## except: -## idname = "Gr" + carray[1][i] - machinename = carray[0][i].strip()+ "__" + idname - machinename = machinename.replace(" ","_") - machinename = machinename.replace("-","_") - machinename = machinename.replace(".","_") - machinename = machinename.replace("&","and") - try: - int(machinename[0]) - machinename="_" + machinename - except: - pass - MachineDico[machinename]={} - MachineDico[machinename]['NAME'] = carray[0][i].strip() - MachineDico[machinename]['ID'] = carray[1][i] - MachineDico[machinename]['EXNAME'] =carray[2][i] - MachineDico[machinename]['NUMBER']=iarray[0][i] - MachineDico[machinename]['P']=rarray[0][i] - MachineDico[machinename]['Q']=rarray[1][i] - MachineDico[machinename]['PMAX']=rarray[3][i] - MachineDico[machinename]['QMAX']=rarray[4][i] - MachineDico[machinename]['PMIN']=rarray[5][i] - MachineDico[machinename]['QMIN']=rarray[6][i] - - #Extract Motors - sid = -1 #all buses - flag = 1 #all in service loads/generators (4 all loads/generators) - - string = ['NUMBER','PSETCODE','BASECODE'] - ierr,iarray = psspy.aindmacint(sid,flag,string) - - string = ['NAME','ID','EXNAME'] - ierr,carray = psspy.aindmacchar(sid,flag,string) - - rstrings = ['psetpoint','mbase','p','q'] - ierr, rarray = psspy.aindmacreal(sid, flag, rstrings) - - - MotorDico = {} # [Bus name, machine ID, extended bus name, bus number] - for i in range(len(iarray[0])): - idname = "Mo" + carray[1][i].strip() -## try: -## idname = "Gr" + str(int(carray[1][i])) -## except: -## idname = "Gr" + carray[1][i] - motorname = carray[0][i].strip()+ "__" + idname - motorname = motorname.replace(" ","_") - motorname = motorname.replace("-","_") - motorname = motorname.replace(".","_") - motorname = motorname.replace("&","and") - try: - int(motorname[0]) - motorname="_" + motorname - except: - pass - MotorDico[motorname]={} - MotorDico[motorname]['NAME'] = carray[0][i].strip() - MotorDico[motorname]['ID'] = carray[1][i] - MotorDico[motorname]['EXNAME'] =carray[2][i] - MotorDico[motorname]['NUMBER']=iarray[0][i] - MotorDico[motorname]['PSETCODE']=iarray[1][i] - MotorDico[motorname]['BASECODE']=iarray[2][i] - MotorDico[motorname]['PSETPOINT']=rarray[0][i] - MotorDico[motorname]['MBASE']=rarray[1][i] - MotorDico[motorname]['P']=rarray[2][i] - MotorDico[motorname]['Q']=rarray[3][i] - - - #Extract Lignes - sid = -1 - owner = 1 - ties = 1 - flag = 2 #6 for two-winding transfos - entry = 1 #each branch once, not both directions - string = ['FROMNUMBER','TONUMBER'] - ierr,iarray = psspy.abrnint(sid,owner,ties,flag,entry,string) - string = ['FROMNAME','TONAME','FROMEXNAME','TOEXNAME','ID'] - ierr,carray = psspy.abrnchar(sid,owner,ties,flag,entry,string) - - LineDico = {} #[linename, Bus name 1, Bus name 2, ID, extended bus name 1, extended bus name 2, bus number 1, bus number 2] - for i in range(len(iarray[0])): - idname = carray[4][i].strip() - #idname = carray[4][i] - if '@' in idname: - idname = idname.replace('@','Br') - elif '*' in idname: - idname = idname.replace('*','Sw') - else: - try: - idname = 'Li' + str(int(idname)) - except: - idname = 'Li' + idname - linename =carray[0][i].strip() + "__" + carray[1][i].strip() + "__" + idname - linename = linename.replace(" ","_") - linename = linename.replace("-","_") - linename = linename.replace(".","_") - linename = linename.replace("&","and") - try: - int(linename[0]) - linename="_" + linename - except: - pass - if NoBreakersandSwitches: - if 'Br' not in idname and 'Sw' not in idname: - LineDico[linename]={} - LineDico[linename]['FROMNAME']=carray[0][i].strip() - LineDico[linename]['TONAME']=carray[1][i].strip() - LineDico[linename]['ID']=carray[4][i] - LineDico[linename]['FROMEXNAME']=carray[2][i] - LineDico[linename]['TOEXNAME']=carray[3][i] - LineDico[linename]['FROMNUMBER']=iarray[0][i] - LineDico[linename]['TONUMBER']=iarray[1][i] - - #Extract Branches - sid = -1 - owner = 1 - ties = 1 - flag = 4 # lines & transfos - entry = 1 #each branch once, not both directions - string = ['FROMNUMBER','TONUMBER'] - ierr, iarray = psspy.abrnint(sid, owner, ties, flag, entry, string) - string = ['FROMNAME','TONAME','FROMEXNAME','TOEXNAME','ID'] - ierr, carray = psspy.abrnchar(sid, owner, ties, flag, entry, string) - - BranchesDico = {} #[linename, Bus name 1, Bus name 2, ID, extended bus name 1, extended bus name 2, bus number 1, bus number 2] - for i in range(len(iarray[0])): - idname = carray[4][i] - if '@' in idname: - idname = idname.replace('@','Br') - elif '*' in idname: - idname = idname.replace('*','Sw') - else: - idname = 'LI' + idname - linename = carray[0][i].strip() + "__" + carray[1][i].strip() + "__" + idname - linename = linename.replace(" ","_") - linename = linename.replace("-","_") - linename = linename.replace(".","_") - linename = linename.replace("&","and") - try: - int(linename[0]) - linename = "_" + linename - except: - pass - if linename[-1] == '_': - linename = linename[:-1] - BranchesDico[linename] = {} - BranchesDico[linename]['FROMNAME'] = carray[0][i].strip() - BranchesDico[linename]['TONAME'] = carray[1][i].strip() - BranchesDico[linename]['ID'] = carray[4][i] - BranchesDico[linename]['FROMEXNAME'] = carray[2][i] - BranchesDico[linename]['TOEXNAME'] = carray[3][i] - BranchesDico[linename]['FROMNUMBER'] = iarray[0][i] - BranchesDico[linename]['TONUMBER'] = iarray[1][i] - - - #Extract Transfos - sid = -1 - owner = 1 - ties = 1 - flag = 6 #two-winding transfos - entry = 1 #each branch once, not both directions - string = ['FROMNUMBER','TONUMBER'] - ierr,iarray = psspy.abrnint(sid,owner,ties,flag,entry,string) - string = ['FROMNAME','TONAME','FROMEXNAME','TOEXNAME','ID'] - ierr,carray = psspy.abrnchar(sid,owner,ties,flag,entry,string) - - TfoDico = {} #[linename, Bus name 1, Bus name 2, machine ID, extended bus name 1, extended bus name 2, bus number 1, bus number 2] - for i in range(len(iarray[0])): - idname = 'Tr' + carray[4][i].strip() -## try: -## idname = 'Tr' + str(int(carray[4][i])) -## except: -## idname = 'Tr' + carray[4][i] - tfoname = carray[0][i].strip() + "__" + carray[1][i].strip() + "__" + idname - tfoname = tfoname.replace(" ","_") - tfoname = tfoname.replace("-","_") - tfoname = tfoname.replace(".","_") - tfoname = tfoname.replace("&","and") - try: - int(tfoname[0]) - tfoname="_" + tfoname - except: - pass - TfoDico[tfoname]={} - TfoDico[tfoname]['FROMNAME']=carray[0][i].strip() - TfoDico[tfoname]['TONAME']=carray[1][i].strip() - TfoDico[tfoname]['ID']=carray[4][i] - TfoDico[tfoname]['FROMEXNAME']=carray[2][i] - TfoDico[tfoname]['TOEXNAME']=carray[3][i] - TfoDico[tfoname]['FROMNUMBER']=iarray[0][i] - TfoDico[tfoname]['TONUMBER']=iarray[1][i] - TfoDico[tfoname]['#WIND']=2 - - #Extract 3 winding Transfos - sid = -1 #assume a subsystem containing all buses in working case - owner_3flow = 1 #1 = use bus ownership 2 = use tfo ownership - ties_3flow = 3 #ignored bc sid is negative. 3 = interior subsystem and subsystem tie 3 winding transformers - flag=3 #all 3 winding transfo windings - string = ['wind1number','wind2number','wind3number'] - ierr,iarray = psspy.awndint(sid,owner,ties,flag,entry,string) - string = ['wind1name','wind2name','wind3name','wind1exname','wind2exname','wind3exname','id'] - ierr,carray = psspy.awndchar(sid,owner,ties,flag,entry,string) - - #[Bus name 1, Bus name 2, Bus name 3, machine ID, extended bus name 1, extended bus name 2, extended bus name 3, bus number 1, bus number 2, bus number 3] - for i in range(len(iarray[0])): - idname = 'Tr' + carray[6][i].strip() -## try: -## idname = 'Tr' + str(int(carray[4][i])) -## except: -## idname = 'Tr' + carray[4][i] - tfoname = carray[0][i].strip() + "__" + carray[1][i].strip() + "__" + carray[2][i].strip() + "__" + idname - tfoname = tfoname.replace(" ","_") - tfoname = tfoname.replace("-","_") - tfoname = tfoname.replace(".","_") - tfoname = tfoname.replace("&","and") - try: - int(tfoname[0]) - tfoname="_" + tfoname - except: - pass - TfoDico[tfoname]={} - TfoDico[tfoname]['FROMNAME']=carray[0][i].strip() - TfoDico[tfoname]['TONAME']=carray[1][i].strip() - TfoDico[tfoname]['3NAME']=carray[2][i].strip() - TfoDico[tfoname]['ID']=carray[6][i] - TfoDico[tfoname]['FROMEXNAME']=carray[3][i] - TfoDico[tfoname]['TOEXNAME']=carray[4][i] - TfoDico[tfoname]['3EXNAME']=carray[5][i] - TfoDico[tfoname]['FROMNUMBER']=iarray[0][i] - TfoDico[tfoname]['TONUMBER']=iarray[1][i] - TfoDico[tfoname]['3NUMBER']=iarray[2][i] - TfoDico[tfoname]['#WIND']=3 - - #print MachineDico, LoadDico, LineDico, TfoDico, MotorDico, BusDico, BranchesDico, BusNominal - return MachineDico, LoadDico, LineDico, TfoDico, MotorDico, BusDico, BranchesDico, BusNominal - - - diff --git a/ProcessOutputs_Eficas/PSEN_Cata_N1.py b/ProcessOutputs_Eficas/PSEN_Cata_N1.py deleted file mode 100644 index 92d795f4..00000000 --- a/ProcessOutputs_Eficas/PSEN_Cata_N1.py +++ /dev/null @@ -1,280 +0,0 @@ -# -*- coding: iso-8859-1 -*- -# Copyright (C) 2007-2013 EDF R&D -# -# 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 -# - -# -------------------------------------------------- -# debut entete -# -------------------------------------------------- - -#from Accas import ASSD, JDC_CATA, AU_MOINS_UN, PROC, SIMP, FACT, OPER, MACRO, BLOC, A_VALIDATOR -from Accas import * -import opsPSEN_N1 -import pn -# -#class loi ( ASSD ) : pass -#class variable ( ASSD ) : pass -class sd_charge ( ASSD ) : pass -class sd_generateur ( ASSD ) : pass -class sd_ligne ( ASSD ) : pass -class sd_transfo ( ASSD ) : pass -class sd_moteur ( ASSD ) : pass -# - -# import types -class Tuple: - def __init__(self,ntuple): - self.ntuple=ntuple - - def __convert__(self,valeur): - import types - if type(valeur) == types.StringType: - return None - if len(valeur) != self.ntuple: - return None - return valeur - - def info(self): - return "Tuple de %s elements" % self.ntuple - - __repr__=info - __str__=info - -# class Matrice: -# def __init__(self,nbLigs=None,nbCols=None,methodeCalculTaille=None,formatSortie="ligne",valSup=None,valMin=None,structure=None): -# self.nbLigs=nbLigs -# self.nbCols=nbCols -# self.methodeCalculTaille=methodeCalculTaille -# self.formatSortie=formatSortie -# self.valSup=valSup -# self.valMin=valMin -# self.structure=structure -# -# def __convert__(self,valeur): -# # Attention ne verifie pas grand chose -# if type(valeur) != types.ListType : -# return None -# return valeur -# -# def info(self): -# return "Matrice %s x %s" % (self.nbLigs, self.nbCols) -# -# __repr__=info -# __str__=info - - -#CONTEXT.debug = 1 -JdC = JDC_CATA ( code = 'PSEN', - execmodul = None, - regles = ( AU_MOINS_UN ( 'CASE_SELECTION', 'CONTINGENCY_PROCESSING' ), - AU_MOINS_UN ( 'CONTINGENCY_SELECTION','N_PROCESSING_OPTIONS','CONTINGENCY_PROCESSING' ), - PRESENT_PRESENT ( 'CONTINGENCY_SELECTION','CONTINGENCY_OPTIONS' ), - PRESENT_PRESENT ( 'CONTINGENCY_PROCESSING','CONTINGENCY_OPTIONS' ), - AU_MOINS_UN ( 'SIMULATION' ), - # AU_PLUS_UN ( 'PSSE_PARAMETERS' ), - AU_PLUS_UN ( 'CASE_SELECTION' ), - AU_PLUS_UN ( 'CONTINGENCY_OPTIONS' ), - AU_PLUS_UN ( 'CONTINGENCY_SELECTION' ), - AU_PLUS_UN ( 'CONTINGENCY_PROCESSING' ), - AU_PLUS_UN ( 'N_PROCESSING_OPTIONS' ), - # AU_PLUS_UN ( 'N_1_LINES' ), - # AU_PLUS_UN ( 'N_1_LOADS' ), - # AU_PLUS_UN ( 'N_1_TRANSFORMERS' ), - - ), - ) # Fin JDC_CATA - -MODIFICATION_CATALOGUE = MACRO ( nom = "MODIFICATION_CATALOGUE", - sd_prod = pn.modification_catalogue, - op_init= pn.modification_catalogue2, - op=None, - UIinfo={"groupes":("CACHE")}, - Fonction=SIMP(statut='o', typ='TXM', into=['ajoutDefinitionMC']), - Etape=SIMP(statut='o', typ='TXM',), - Genea=SIMP(statut='o', typ='TXM', min=0, max='**'), - NomSIMP=SIMP(statut='o', typ='TXM',), - TypeSIMP=SIMP(statut='o', typ='TXM',), - PhraseArguments=SIMP(statut='o', typ='TXM',),) - - -# -------------------------------------------------- -# fin entete -# -------------------------------------------------- -## TODO : RUN -CASE_SELECTION = MACRO ( nom = "CASE_SELECTION", - sd_prod = opsPSEN_N1.INCLUDE, - op_init = opsPSEN_N1.INCLUDE_context, - fichier_ini = 1, - op = None, - fr = "Selectionnez les cas a analyser", - ang = 'Select the cases to analyze', - PSSE_path = SIMP(statut="o",typ='Repertoire',defaut='C:\Program Files (x86)\PTI\PSSE33\PSSBIN'), - output_folder = SIMP(statut="o", typ="Repertoire"), - - - BusesList = SIMP(statut = 'f', typ = 'R', min = 0, max = '**', defaut = (), homo = 'SansOrdreNiDoublon'), - LinesList = SIMP(statut = 'f', typ = 'R', min = 0, max = '**', defaut = (), homo = 'SansOrdreNiDoublon'), - TransformersList = SIMP(statut = 'f', typ = 'TXM', min = 0, max = '**', defaut = (), homo = 'SansOrdreNiDoublon'), - MaxDepth = SIMP(statut = 'o', typ = 'I', defaut = 5), - OutputNewCsv = SIMP ( statut = "o",typ=bool,defaut=False,), - ) -N_PROCESSING_OPTIONS = PROC ( nom = 'N_PROCESSING_OPTIONS', - op = None, - ang = "Select whether the program should be displaying data about the different categories.\nThe values displayed will be the min, max, and mean of each item, plus a chart.", - Output_bus_values = SIMP(statut = 'o', typ = bool, defaut = True), - Output_lines_values = SIMP(statut = 'o', typ = bool, defaut = True), - Output_transformer_values = SIMP(statut = 'o', typ = bool, defaut = True), - Threshold_selection_for_the_treated_cases = FACT( - statut = 'f', - Branches = SIMP(statut="o",typ=Tuple(3),defaut=(0,0,0),validators=VerifTypeTuple(('R','R','R'),),), - Transformers = SIMP(statut="o",typ=Tuple(3),defaut=(0,0,0),validators=VerifTypeTuple(('R','R','R'),),), - High_voltage = SIMP(statut="o",typ=Tuple(3),defaut=(0,0,0),validators=VerifTypeTuple(('R','R','R'),),), - Low_voltage = SIMP(statut="o",typ=Tuple(3),defaut=(0,0,0),validators=VerifTypeTuple(('R','R','R'),),), - ), - ) - - -CONTINGENCY_OPTIONS = PROC (nom = 'CONTINGENCY_OPTIONS', - op = None, - - GeneralOptions = FACT(statut='o', - Vmin = SIMP(statut = 'o', typ = 'R', defaut = 0.9, val_min = 0), - Vmax = SIMP(statut = 'o', typ = 'R', defaut = 1.1, val_min = 0), - ContingencyRate = SIMP(statut = 'o', typ = 'TXM', defaut = 'a', into=['a', 'b']), - FlowLimitLines = SIMP(statut = 'o', typ = 'I', defaut = 120, val_min = 0), - FlowLimitTransformers = SIMP(statut = 'o', typ = 'I', defaut = 120, val_min = 0), - Tolerance = SIMP(statut = 'o', typ = 'R', defaut = 0.5, val_min = 0), - TripLines = SIMP(statut = 'o', typ = bool, defaut = True), - TripTransfos = SIMP(statut = 'o', typ = bool, defaut = True), - TripGenerators = SIMP(statut = 'o', typ = bool, defaut = True), - TripBuses = SIMP(statut = 'o', typ = bool, defaut = False), - ), - - LoadFlowOptions = FACT(statut='o', - AdjustTaps = SIMP(statut = 'o', typ = 'TXM', into = ['0 - Lock', '1 - Stepping', '2 - Direct'], defaut = '1 - Stepping'), - AdjustDCtaps = SIMP(statut = 'o', typ = 'TXM', into = ['0 - Disable', '1 - Enable'], defaut = '1 - Enable'), - SolutionMethod = SIMP(statut = 'o', typ = 'TXM', into = ['0 - FDNS', '1 - FNSL', '2 - Optimized FDNS'], defaut = '1 - FNSL'), - AdjustSwitchedShunts = SIMP(statut = 'o', typ = 'TXM', into = ['0 - Disable', '1 - Enable', '2 - Enable continuous mode'], defaut = '1 - Enable'), - DispatchMode = SIMP(statut = 'o', typ = 'TXM', into = ['0 - Disable', '1 - Reserve', '2 - Pmax', '3 - Inertia', '4 - Droop'], defaut = '1 - Reserve'), - FlatStart = SIMP(statut = 'o', typ = bool, defaut = False), - VarLimits = SIMP(statut = 'o', typ = 'I', defaut = 99,ang = 'if set to -1, var limits will not be applied'), - ), - -# OutputOptions = FACT(statut='o', -# consigne1 = SIMP(statut='o',homo='information',typ = "TXM",defaut = 'Output PSSE multiple contingency report to Shell?'), -# MultipleContingencyReport = SIMP(statut = 'o', typ = bool, defaut = True, ang = 'Output PSSE multiple contingency report to Shell?'), -# consigne2 = SIMP(statut='o',homo='information',typ = "TXM",defaut = 'Write an Excel file for the results of each case file?'), -# WriteIndivExcels = SIMP(statut = 'o', typ = bool, defaut = True), -# consigne3 = SIMP(statut='o',homo='information',typ = "TXM",defaut = 'Add a tab in Excel results file for the differences between the max flow rate (MVAR) and the actual flow rate in lines and transformers?'), -# WriteFlowDifs = SIMP(statut = 'o', typ = bool, defaut = True), -# ), - ) - - - - -CONTINGENCY_SELECTION = PROC(nom='CONTINGENCY_SELECTION',op = None, - SelectionMethod = SIMP(statut='o',typ='TXM',into=['CaseSelectionFromFile','SelectAllCases','SelectWorstCases'], - ), - - b_file = BLOC(condition="SelectionMethod=='CaseSelectionFromFile'", - CaseSelectionFromFiles = FACT( - statut = 'o', - case = FACT(statut='o',max='**', - case_name=SIMP(statut='o',typ='TXM'), - csv_file= SIMP(statut='o', typ = ('Fichier', 'CSV file (*.csv);;All Files (*)',),),), -# regles=(AU_MOINS_UN('branch_cases','transformer_cases','high_voltage_cases','low_voltage_cases',),), -# branch_cases = SIMP(statut='o', defaut='', typ = ('Fichier', 'CSV file (*.csv);;All Files (*)','Sauvegarde'),), -# transformer_cases = SIMP(statut='o', defaut='', typ = ('Fichier', 'CSV file (*.csv);;All Files (*)','Sauvegarde',),), -# high_voltage_cases = SIMP(statut='o', defaut='', typ = ('Fichier', 'CSV file (*.csv);;All Files (*)','Sauvegarde'),), -# low_voltage_cases = SIMP(statut='o', defaut='', typ = ('Fichier', 'CSV file (*.csv);;All Files (*)','Sauvegarde'),), - ), - -# CaseSelectionFromFile = FACT( -# statut = 'o', -# input_path = SIMP(statut="o",typ='Repertoire'), -# branch_cases = SIMP(statut='o', typ='TXM'), -# transformer_cases = SIMP(statut='o', typ='TXM'), -# high_cases = SIMP(statut='o', typ='TXM'), -# low_cases = SIMP(statut='o', typ='TXM'), -# ), - - ), - -# b_all = BLOC(condition="SelectionMethod=='SelectAllCases'", -# SelectAllCases = FACT( -# statut='o', -# all_cases = SIMP(statut='o', typ=bool, defaut = True), -# ), -# ), - - b_worst = BLOC(condition="SelectionMethod=='SelectWorstCases'", - SelectWorstCases = FACT( - regles = (AU_MOINS_UN('AvgLineLoad', 'AvgLineLoadPercent','AvgTransformerLoad','AvgTransformerLoadPercent','AvgHighVoltage', 'AvgHighVoltagePercent','AvgLowVoltage', 'AvgLowVoltagePercent'), - EXCLUS('AvgLineLoad', 'AvgLineLoadPercent'),EXCLUS('AvgTransformerLoad','AvgTransformerLoadPercent'),EXCLUS('AvgHighVoltage', 'AvgHighVoltagePercent'),EXCLUS('AvgLowVoltage', 'AvgLowVoltagePercent'),), - statut = 'o', - consigne = SIMP(statut='o',homo='information',typ = "TXM",defaut = 'Choose at least one of the potential selection criteria from the SelectWorstCases list on the right.'), - AvgLineLoad = SIMP(statut = 'f', typ = 'I', defaut = 0, val_min = 0), - AvgLineLoadPercent = SIMP(statut = 'f', typ = 'I', defaut = 0, val_min = 0, val_max = 100), - AvgTransformerLoad = SIMP(statut = 'f', typ = 'I', defaut = 0, val_min = 0), - AvgTransformerLoadPercent = SIMP(statut = 'f', typ = 'I', defaut = 0, val_min = 0, val_max = 100), - AvgHighVoltage = SIMP(statut = 'f', typ = 'I', defaut = 0, val_min = 0), - AvgHighVoltagePercent = SIMP(statut = 'f', typ = 'I', defaut = 0, val_min = 0, val_max = 100), - AvgLowVoltage = SIMP(statut = 'f', typ = 'I', defaut = 0, val_min = 0), - AvgLowVoltagePercent = SIMP(statut = 'f', typ = 'I', defaut = 0, val_min = 0, val_max = 100), - ), - ), - - - Automatic_N_2_Selection = FACT(statut='f', - - BusesList = SIMP(statut = 'o', typ = 'R', min = 0, max = '**', defaut = (), homo = 'SansOrdreNiDoublon'), - LinesList = SIMP(statut = 'o', typ = 'R', min = 0, max = '**', defaut = (), homo = 'SansOrdreNiDoublon'), - TransformersList = SIMP(statut = 'o', typ = 'TXM', min = 0, max = '**', defaut = (), homo = 'SansOrdreNiDoublon'), - ), - - MultipleContingencyList = FACT (statut='f', - max="**", - ComponentList=SIMP(statut='o', typ = 'TXM', max='**', homo = 'SansOrdreNiDoublon',), - ), - - ) - -CONTINGENCY_PROCESSING = MACRO ( nom = 'CONTINGENCY_PROCESSING', - sd_prod = opsPSEN_N1.PROCESS, - op_init = opsPSEN_N1.PROCESS_context, - - #sd_prod=None, - - op = None, - fichier_ini = 1, - fr = "", - ang="", - XLS_file = SIMP(statut="o", typ = ('Fichier', 'XLS file (*.xls);;All Files (*)',),), - b_TabList = BLOC(condition="XLS_file != None and XLS_file != ''", - TabList = SIMP(statut = 'o', typ = 'TXM', min = 0, max = '**', defaut = (), homo = 'SansOrdreNiDoublon'), ), - -# b_highVoltage = BLOC(condition="'High Voltage 0' in TabList", -# HighVoltageBuses = SIMP(statut = 'o', typ = 'TXM', min = 0, max = '**', defaut = (), homo = 'SansOrdreNiDoublon'), -# HighVoltageContingencies = SIMP(statut = 'o', typ = 'TXM', min = 0, max = '**', defaut = (), homo = 'SansOrdreNiDoublon'), -# ), - - ) - -Ordre_Des_Commandes = ('CASE_SELECTION' , 'N_PROCESSING_OPTIONS' , 'CONTINGENCY_SELECTION', 'CONTINGENCY_OPTIONS' ,'CONTINGENCY_PROCESSING',) -Classement_Commandes_Ds_Arbre = ('CASE_SELECTION' , 'N_PROCESSING_OPTIONS' , 'CONTINGENCY_SELECTION', 'CONTINGENCY_OPTIONS' ,'CONTINGENCY_PROCESSING',) diff --git a/ProcessOutputs_Eficas/PSEN_Cata_N1.py.ok b/ProcessOutputs_Eficas/PSEN_Cata_N1.py.ok deleted file mode 100644 index f2598161..00000000 --- a/ProcessOutputs_Eficas/PSEN_Cata_N1.py.ok +++ /dev/null @@ -1,250 +0,0 @@ -# -*- coding: iso-8859-1 -*- -# Copyright (C) 2007-2013 EDF R&D -# -# 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 -# - -# -------------------------------------------------- -# debut entete -# -------------------------------------------------- - -#from Accas import ASSD, JDC_CATA, AU_MOINS_UN, PROC, SIMP, FACT, OPER, MACRO, BLOC, A_VALIDATOR -from Accas import * -import opsPSEN_N1 -# -# - -# import types -class Tuple: - def __init__(self,ntuple): - self.ntuple=ntuple - - def __convert__(self,valeur): - if type(valeur) == types.StringType: - return None - if len(valeur) != self.ntuple: - return None - return valeur - - def info(self): - return "Tuple de %s elements" % self.ntuple - - __repr__=info - __str__=info - -# class Matrice: -# def __init__(self,nbLigs=None,nbCols=None,methodeCalculTaille=None,formatSortie="ligne",valSup=None,valMin=None,structure=None): -# self.nbLigs=nbLigs -# self.nbCols=nbCols -# self.methodeCalculTaille=methodeCalculTaille -# self.formatSortie=formatSortie -# self.valSup=valSup -# self.valMin=valMin -# self.structure=structure -# -# def __convert__(self,valeur): -# # Attention ne verifie pas grand chose -# if type(valeur) != types.ListType : -# return None -# return valeur -# -# def info(self): -# return "Matrice %s x %s" % (self.nbLigs, self.nbCols) -# -# __repr__=info -# __str__=info - - -#CONTEXT.debug = 1 -JdC = JDC_CATA ( code = 'PSEN', - execmodul = None, - regles = ( AU_MOINS_UN ( 'CASE_SELECTION' ), - # AU_MOINS_UN ( 'DIRECTORY' ), - # AU_MOINS_UN ( 'DISTRIBUTION' ), - # AU_MOINS_UN ( 'SIMULATION' ), - # AU_PLUS_UN ( 'PSSE_PARAMETERS' ), - # AU_PLUS_UN ( 'DIRECTORY' ), - # AU_PLUS_UN ( 'SIMULATION' ), - # AU_PLUS_UN ( 'CORRELATION' ), - # AU_PLUS_UN ( 'N_1_GENERATORS' ), - # AU_PLUS_UN ( 'N_1_LINES' ), - # AU_PLUS_UN ( 'N_1_LOADS' ), - # AU_PLUS_UN ( 'N_1_TRANSFORMERS' ), - - ), - ) # Fin JDC_CATA - - -# -------------------------------------------------- -# fin entete -# -------------------------------------------------- -## TODO : RUN -CASE_SELECTION = MACRO ( nom = "CASE_SELECTION", - sd_prod = opsPSEN_N1.INCLUDE, - op_init = opsPSEN_N1.INCLUDE_context, - fichier_ini = 1, - op = None, - fr = "Sélectionnez les cas à analyser", - ang = 'Select the cases to analyze', - PSSE_path = SIMP(statut="o",typ='Repertoire',defaut='C:\Program Files (x86)\PTI\PSSE33\PSSBIN'), - output_folder = SIMP(statut="o", typ="Repertoire"), - - - BusesList = SIMP(statut = 'f', typ = 'R', min = 0, max = '**', defaut = (), homo = 'SansOrdreNiDoublon'), - LinesList = SIMP(statut = 'f', typ = 'R', min = 0, max = '**', defaut = (), homo = 'SansOrdreNiDoublon'), - TransformersList = SIMP(statut = 'f', typ = 'TXM', min = 0, max = '**', defaut = (), homo = 'SansOrdreNiDoublon'), - MaxDepth = SIMP(statut = 'o', typ = 'I', defaut = 5), - OutputNewCsv = SIMP ( statut = "o",typ=bool,defaut=False,), - ) -N_PROCESSING_OPTIONS = PROC ( nom = 'N_PROCESSING_OPTIONS', - op = None, - ang = "Select whether the program should be displaying data ablout the different categories. The values displayed will be the min, max, and mean of each item, plus a chart.", - Output_bus_values = SIMP(statut = 'o', typ = bool, defaut = True), - Output_lines_values = SIMP(statut = 'o', typ = bool, defaut = True), - Output_transformer_values = SIMP(statut = 'o', typ = bool, defaut = True), - Threshold_selection_for_the_treated_cases = FACT( - statut = 'f', - Branches = SIMP(statut="o",typ=Tuple(3),defaut=(0,0,0),validators=VerifTypeTuple(('R','R','R'),),), - Transformers = SIMP(statut="o",typ=Tuple(3),defaut=(0,0,0),validators=VerifTypeTuple(('R','R','R'),),), - High_voltage = SIMP(statut="o",typ=Tuple(3),defaut=(0,0,0),validators=VerifTypeTuple(('R','R','R'),),), - Low_voltage = SIMP(statut="o",typ=Tuple(3),defaut=(0,0,0),validators=VerifTypeTuple(('R','R','R'),),), - ), - ) - - -CONTINGENCY_OPTIONS = PROC (nom = 'CONTINGENCY_OPTIONS', - op = None, - - GeneralOptions = FACT(statut='o', - Vmin = SIMP(statut = 'o', typ = 'R', defaut = 0.9, val_min = 0), - Vmax = SIMP(statut = 'o', typ = 'R', defaut = 1.1, val_min = 0), - ContingencyRate = SIMP(statut = 'o', typ = 'TXM', defaut = 'a', into=['a', 'b']), - FlowLimitLines = SIMP(statut = 'o', typ = 'I', defaut = 120, val_min = 0), - FlowLimitTransformers = SIMP(statut = 'o', typ = 'I', defaut = 120, val_min = 0), - Tolerance = SIMP(statut = 'o', typ = 'R', defaut = 0.5, val_min = 0), - TripLines = SIMP(statut = 'o', typ = bool, defaut = True), - TripTransfos = SIMP(statut = 'o', typ = bool, defaut = True), - TripGenerators = SIMP(statut = 'o', typ = bool, defaut = True), - ), - - LoadFlowOptions = FACT(statut='o', - AdjustTaps = SIMP(statut = 'o', typ = 'TXM', into = ['0 - Lock', '1 - Stepping', '2 - Direct'], defaut = '1 - Stepping'), - AdjustDCtaps = SIMP(statut = 'o', typ = 'TXM', into = ['0 - Disable', '1 - Enable'], defaut = '1 - Enable'), - SolutionMethod = SIMP(statut = 'o', typ = 'TXM', into = ['0 - FDNS', '1 - FNSL', '2 - Optimized FDNS'], defaut = '1 - FNSL'), - AdjustSwitchedShunts = SIMP(statut = 'o', typ = 'TXM', into = ['0 - Disable', '1 - Enable', '2 - Enable continuous mode'], defaut = '1 - Enable'), - DispatchMode = SIMP(statut = 'o', typ = 'TXM', into = ['0 - Disable', '1 - Reserve', '2 - Pmax', '3 - Inertia', '4 - Droop'], defaut = '1 - Reserve'), - FlatStart = SIMP(statut = 'o', typ = bool, defaut = False), - VarLimits = SIMP(statut = 'o', typ = 'I', defaut = 99,ang = 'if set to -1, var limits will not be applied'), - ), - - OutputOptions = FACT(statut='o', - consigne1 = SIMP(statut='o',homo='information',typ = "TXM",defaut = 'Output PSSE multiple contingency report to Shell?'), - MultipleContingencyReport = SIMP(statut = 'o', typ = bool, defaut = True, ang = 'Output PSSE multiple contingency report to Shell?'), - consigne2 = SIMP(statut='o',homo='information',typ = "TXM",defaut = 'Write an Excel file for the results of each case file?'), - WriteIndivExcels = SIMP(statut = 'o', typ = bool, defaut = True), - consigne3 = SIMP(statut='o',homo='information',typ = "TXM",defaut = 'Add a tab in Excel results file for the differences between the max flow rate (MVAR) and the actual flow rate in lines and transformers?'), - WriteFlowDifs = SIMP(statut = 'o', typ = bool, defaut = True), - ), - ) - - - - -CONTINGENCY_SELECTION = PROC(nom='CONTINGENCY_SELECTION',op = None, - SelectionMethod = SIMP(statut='o',typ='TXM',into=['CaseSelectionFromFile','SelectAllCases','SelectWorstCases'], - ), - - b_file = BLOC(condition="SelectionMethod=='CaseSelectionFromFile'", - CaseSelectionFromFiles = FACT( - statut = 'o', - regles=(AU_MOINS_UN('branch_cases','transformer_cases','high_voltage_cases','low_voltage_cases',),), - branch_cases = SIMP(statut='o', defaut='', typ = ('Fichier', 'CSV file (*.csv);;All Files (*)','Sauvegarde'),), - transformer_cases = SIMP(statut='o', defaut='', typ = ('Fichier', 'CSV file (*.csv);;All Files (*)','Sauvegarde',),), - high_voltage_cases = SIMP(statut='o', defaut='', typ = ('Fichier', 'CSV file (*.csv);;All Files (*)','Sauvegarde'),), - low_voltage_cases = SIMP(statut='o', defaut='', typ = ('Fichier', 'CSV file (*.csv);;All Files (*)','Sauvegarde'),), - ), - -# CaseSelectionFromFile = FACT( -# statut = 'o', -# input_path = SIMP(statut="o",typ='Repertoire'), -# branch_cases = SIMP(statut='o', typ='TXM'), -# transformer_cases = SIMP(statut='o', typ='TXM'), -# high_cases = SIMP(statut='o', typ='TXM'), -# low_cases = SIMP(statut='o', typ='TXM'), -# ), - - ), - -# b_all = BLOC(condition="SelectionMethod=='SelectAllCases'", -# SelectAllCases = FACT( -# statut='o', -# all_cases = SIMP(statut='o', typ=bool, defaut = True), -# ), -# ), - - b_worst = BLOC(condition="SelectionMethod=='SelectWorstCases'", - SelectWorstCases = FACT( - regles = (UN_PARMI('AvgBranchLoad', 'AvgBranchLoadPercent'), UN_PARMI('AvgTransformerLoad', 'AvgTransformerLoadPercent'), UN_PARMI('AvgHighVoltage', 'AvgHighVoltagePercent'), UN_PARMI('AvgLowVoltage', 'AvgLowVoltagePercent'),), - statut = 'o', - consigne = SIMP(statut='o',homo='information',typ = "TXM",defaut = 'Choose at least one of the potential selection criteria from the SelectWorstCases list on the right.'), - AvgBranchLoad = SIMP(statut = 'f', typ = 'I', defaut = 0, val_min = 0), - AvgBranchLoadPercent = SIMP(statut = 'f', typ = 'I', defaut = 0, val_min = 0, val_max = 100), - AvgTransformerLoad = SIMP(statut = 'f', typ = 'I', defaut = 0, val_min = 0), - AvgTransformerLoadPercent = SIMP(statut = 'f', typ = 'I', defaut = 0, val_min = 0, val_max = 100), - AvgHighVoltage = SIMP(statut = 'f', typ = 'I', defaut = 0, val_min = 0), - AvgHighVoltagePercent = SIMP(statut = 'f', typ = 'I', defaut = 0, val_min = 0, val_max = 100), - AvgLowVoltage = SIMP(statut = 'f', typ = 'I', defaut = 0, val_min = 0), - AvgLowVoltagePercent = SIMP(statut = 'f', typ = 'I', defaut = 0, val_min = 0, val_max = 100), - ), - ), - - - Automatic_N_2_Selection = FACT(statut='f', - - BusesList = SIMP(statut = 'o', typ = 'R', min = 0, max = '**', defaut = (), homo = 'SansOrdreNiDoublon'), - LinesList = SIMP(statut = 'o', typ = 'R', min = 0, max = '**', defaut = (), homo = 'SansOrdreNiDoublon'), - TransformersList = SIMP(statut = 'o', typ = 'TXM', min = 0, max = '**', defaut = (), homo = 'SansOrdreNiDoublon'), - ), - - MultipleContingencyList = FACT (statut='f', - max="**", - ComponentList=SIMP(statut='o', typ = 'TXM', max='**', homo = 'SansOrdreNiDoublon',), - ), - - ) - -CONTINGENCY_PROCESSING = MACRO ( nom = 'CONTINGENCY_PROCESSING', - sd_prod = opsPSEN_N1.PROCESS, - op_init = opsPSEN_N1.PROCESS_context, - - #sd_prod=None, - - op = None, - fichier_ini = 1, - fr = "", - ang="", - XLS_file = SIMP(statut="o", typ = ('Fichier', 'XLS file (*.xls);;All Files (*)',),), - TabList = SIMP(statut = 'f', typ = 'TXM', min = 0, max = '**', homo = 'SansOrdreNiDoublon'), - -# b_highVoltage = BLOC(condition="'High Voltage 0' in TabList", -# HighVoltageBuses = SIMP(statut = 'o', typ = 'TXM', min = 0, max = '**', defaut = (), homo = 'SansOrdreNiDoublon'), -# HighVoltageContingencies = SIMP(statut = 'o', typ = 'TXM', min = 0, max = '**', defaut = (), homo = 'SansOrdreNiDoublon'), -# ), - - ) - -Ordre_Des_Commandes = ('CASE_SELECTION' , 'N_PROCESSING_OPTIONS' , 'CONTINGENCY_OPTIONS' , 'CONTINGENCY_SELECTION',) diff --git a/ProcessOutputs_Eficas/ProcessOutputs_Cata.py b/ProcessOutputs_Eficas/ProcessOutputs_Cata.py deleted file mode 100644 index 70144662..00000000 --- a/ProcessOutputs_Eficas/ProcessOutputs_Cata.py +++ /dev/null @@ -1,240 +0,0 @@ -# -*- coding: iso-8859-1 -*- -# Copyright (C) 2007-2013 EDF R&D -# -# 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 -# - -# -------------------------------------------------- -# debut entete -# -------------------------------------------------- - -from Accas import * -import opsPSEN_N1 -import pn -# - -# import types -class Tuple: - def __init__(self,ntuple): - self.ntuple=ntuple - - def __convert__(self,valeur): - import types - if type(valeur) == types.StringType: - return None - if len(valeur) != self.ntuple: - return None - return valeur - - def info(self): - return "Tuple de %s elements" % self.ntuple - - __repr__=info - __str__=info - - -#CONTEXT.debug = 1 -JdC = JDC_CATA ( code = 'PSEN', - execmodul = None, - regles = ( AU_MOINS_UN ( 'CASE_SELECTION', 'CONTINGENCY_PROCESSING' ), - AU_MOINS_UN ( 'CONTINGENCY_SELECTION','N_PROCESSING_OPTIONS','CONTINGENCY_PROCESSING' ), - PRESENT_PRESENT ( 'CONTINGENCY_SELECTION','CONTINGENCY_OPTIONS' ), - # AU_MOINS_UN ( 'SIMULATION' ), - # AU_PLUS_UN ( 'PSSE_PARAMETERS' ), - AU_PLUS_UN ( 'CASE_SELECTION' ), - AU_PLUS_UN ( 'CONTINGENCY_OPTIONS' ), - AU_PLUS_UN ( 'CONTINGENCY_SELECTION' ), - AU_PLUS_UN ( 'CONTINGENCY_PROCESSING' ), - AU_PLUS_UN ( 'N_PROCESSING_OPTIONS' ), - # AU_PLUS_UN ( 'N_1_LINES' ), - # AU_PLUS_UN ( 'N_1_LOADS' ), - # AU_PLUS_UN ( 'N_1_TRANSFORMERS' ), - - ), - ) # Fin JDC_CATA - -MODIFICATION_CATALOGUE = MACRO ( nom = "MODIFICATION_CATALOGUE", - sd_prod = pn.modification_catalogue, - op_init= pn.modification_catalogue2, - op=None, - UIinfo={"groupes":("CACHE")}, - Fonction=SIMP(statut='o', typ='TXM', into=['ajoutDefinitionMC']), - Etape=SIMP(statut='o', typ='TXM',), - Genea=SIMP(statut='o', typ='TXM', min=0, max='**'), - NomSIMP=SIMP(statut='o', typ='TXM',), - TypeSIMP=SIMP(statut='o', typ='TXM',), - PhraseArguments=SIMP(statut='o', typ='TXM',), -) -# -------------------------------------------------- -# fin entete -# -------------------------------------------------- -## TODO : RUN -CASE_SELECTION = MACRO ( nom = "CASE_SELECTION", - sd_prod = opsPSEN_N1.INCLUDE, - op_init = opsPSEN_N1.INCLUDE_context, - fichier_ini = 1, - op = None, - fr = "Sélectionnez les cas à analyser", - ang = 'Select the cases to analyze', - PSSE_path = SIMP(statut="o",typ='Repertoire',defaut='C:\Program Files (x86)\PTI\PSSE33\PSSBIN'), - output_folder = SIMP(statut="o", typ="Repertoire"), - - - BusesList = SIMP(statut = 'f', typ = 'R', min = 0, max = '**', defaut = (), homo = 'SansOrdreNiDoublon'), - LinesList = SIMP(statut = 'f', typ = 'R', min = 0, max = '**', defaut = (), homo = 'SansOrdreNiDoublon'), - TransformersList = SIMP(statut = 'f', typ = 'TXM', min = 0, max = '**', defaut = (), homo = 'SansOrdreNiDoublon'), - MaxDepth = SIMP(statut = 'o', typ = 'I', defaut = 5), - OutputNewCsv = SIMP ( statut = "o",typ=bool,defaut=False,), - ) -N_PROCESSING_OPTIONS = PROC ( nom = 'N_PROCESSING_OPTIONS', - op = None, - ang = "Select whether the program should be displaying data about the different categories.\nThe values displayed will be the min, max, and mean of each item, plus a chart.", - Output_bus_values = SIMP(statut = 'o', typ = bool, defaut = True), - Output_lines_values = SIMP(statut = 'o', typ = bool, defaut = True), - Output_transformer_values = SIMP(statut = 'o', typ = bool, defaut = True), - Threshold_selection_for_the_treated_cases = FACT( - statut = 'f', - Branches = SIMP(statut="o",typ=Tuple(3),defaut=(0,0,0),validators=VerifTypeTuple(('R','R','R'),),), - Transformers = SIMP(statut="o",typ=Tuple(3),defaut=(0,0,0),validators=VerifTypeTuple(('R','R','R'),),), - High_voltage = SIMP(statut="o",typ=Tuple(3),defaut=(0,0,0),validators=VerifTypeTuple(('R','R','R'),),), - Low_voltage = SIMP(statut="o",typ=Tuple(3),defaut=(0,0,0),validators=VerifTypeTuple(('R','R','R'),),), - ), - ) - - -CONTINGENCY_OPTIONS = PROC (nom = 'CONTINGENCY_OPTIONS', - op = None, - - GeneralOptions = FACT(statut='o', - Vmin = SIMP(statut = 'o', typ = 'R', defaut = 0.9, val_min = 0), - Vmax = SIMP(statut = 'o', typ = 'R', defaut = 1.1, val_min = 0), - ContingencyRate = SIMP(statut = 'o', typ = 'TXM', defaut = 'a', into=['a', 'b']), - FlowLimitLines = SIMP(statut = 'o', typ = 'I', defaut = 120, val_min = 0), - FlowLimitTransformers = SIMP(statut = 'o', typ = 'I', defaut = 120, val_min = 0), - Tolerance = SIMP(statut = 'o', typ = 'R', defaut = 0.5, val_min = 0), - TripLines = SIMP(statut = 'o', typ = bool, defaut = True), - TripTransfos = SIMP(statut = 'o', typ = bool, defaut = True), - TripGenerators = SIMP(statut = 'o', typ = bool, defaut = True), - ), - - LoadFlowOptions = FACT(statut='o', - AdjustTaps = SIMP(statut = 'o', typ = 'TXM', into = ['0 - Lock', '1 - Stepping', '2 - Direct'], defaut = '1 - Stepping'), - AdjustDCtaps = SIMP(statut = 'o', typ = 'TXM', into = ['0 - Disable', '1 - Enable'], defaut = '1 - Enable'), - SolutionMethod = SIMP(statut = 'o', typ = 'TXM', into = ['0 - FDNS', '1 - FNSL', '2 - Optimized FDNS'], defaut = '1 - FNSL'), - AdjustSwitchedShunts = SIMP(statut = 'o', typ = 'TXM', into = ['0 - Disable', '1 - Enable', '2 - Enable continuous mode'], defaut = '1 - Enable'), - DispatchMode = SIMP(statut = 'o', typ = 'TXM', into = ['0 - Disable', '1 - Reserve', '2 - Pmax', '3 - Inertia', '4 - Droop'], defaut = '1 - Reserve'), - FlatStart = SIMP(statut = 'o', typ = bool, defaut = False), - VarLimits = SIMP(statut = 'o', typ = 'I', defaut = 99,ang = 'if set to -1, var limits will not be applied'), - ), - -# OutputOptions = FACT(statut='o', -# consigne1 = SIMP(statut='o',homo='information',typ = "TXM",defaut = 'Output PSSE multiple contingency report to Shell?'), -# MultipleContingencyReport = SIMP(statut = 'o', typ = bool, defaut = True, ang = 'Output PSSE multiple contingency report to Shell?'), -# consigne2 = SIMP(statut='o',homo='information',typ = "TXM",defaut = 'Write an Excel file for the results of each case file?'), -# WriteIndivExcels = SIMP(statut = 'o', typ = bool, defaut = True), -# consigne3 = SIMP(statut='o',homo='information',typ = "TXM",defaut = 'Add a tab in Excel results file for the differences between the max flow rate (MVAR) and the actual flow rate in lines and transformers?'), -# WriteFlowDifs = SIMP(statut = 'o', typ = bool, defaut = True), -# ), - ) - - - - -CONTINGENCY_SELECTION = PROC(nom='CONTINGENCY_SELECTION',op = None, - SelectionMethod = SIMP(statut='o',typ='TXM',into=['CaseSelectionFromFile','SelectAllCases','SelectWorstCases'], - ), - - b_file = BLOC(condition="SelectionMethod=='CaseSelectionFromFile'", - CaseSelectionFromFiles = FACT( - statut = 'o', - case = FACT(statut='o',max='**', - case_name=SIMP(statut='o',typ='TXM'), - csv_file= SIMP(statut='o', typ = ('Fichier', 'CSV file (*.csv);;All Files (*)',),),), -# regles=(AU_MOINS_UN('branch_cases','transformer_cases','high_voltage_cases','low_voltage_cases',),), -# branch_cases = SIMP(statut='o', defaut='', typ = ('Fichier', 'CSV file (*.csv);;All Files (*)','Sauvegarde'),), -# transformer_cases = SIMP(statut='o', defaut='', typ = ('Fichier', 'CSV file (*.csv);;All Files (*)','Sauvegarde',),), -# high_voltage_cases = SIMP(statut='o', defaut='', typ = ('Fichier', 'CSV file (*.csv);;All Files (*)','Sauvegarde'),), -# low_voltage_cases = SIMP(statut='o', defaut='', typ = ('Fichier', 'CSV file (*.csv);;All Files (*)','Sauvegarde'),), - ), -# ', -# CaseSelectionFromFile = FACT( -# statut = 'o', -# input_path = SIMP(statut="o",typ='Repertoire'), -# branch_cases = SIMP(statut='o', typ='TXM'), -# transformer_cases = SIMP(statut='o', typ='TXM'), -# high_cases = SIMP(statut='o', typ='TXM'), -# low_cases = SIMP(statut='o', typ='TXM'), -# ), - - ), - -# b_all = BLOC(condition="SelectionMethod=='SelectAllCases'", -# SelectAllCases = FACT( -# statut='o', -# all_cases = SIMP(statut='o', typ=bool, defaut = True), -# ), -# ), - - b_worst = BLOC(condition="SelectionMethod=='SelectWorstCases'", - SelectWorstCases = FACT( - regles = (AU_MOINS_UN('AvgBranchLoad', 'AvgBranchLoadPercent','AvgTransformerLoad','AvgTransformerLoadPercent','AvgHighVoltage', 'AvgHighVoltagePercent','AvgLowVoltage', 'AvgLowVoltagePercent'), - EXCLUS('AvgBranchLoad', 'AvgBranchLoadPercent'),EXCLUS('AvgTransformerLoad','AvgTransformerLoadPercent'),EXCLUS('AvgHighVoltage', 'AvgHighVoltagePercent'),EXCLUS('AvgLowVoltage', 'AvgLowVoltagePercent'),), - statut = 'o', - consigne = SIMP(statut='o',homo='information',typ = "TXM",defaut = 'Choose at least one of the potential selection criteria from the SelectWorstCases list on the right.'), - AvgBranchLoad = SIMP(statut = 'f', typ = 'I', defaut = 0, val_min = 0), - AvgBranchLoadPercent = SIMP(statut = 'f', typ = 'I', defaut = 0, val_min = 0, val_max = 100), - AvgTransformerLoad = SIMP(statut = 'f', typ = 'I', defaut = 0, val_min = 0), - AvgTransformerLoadPercent = SIMP(statut = 'f', typ = 'I', defaut = 0, val_min = 0, val_max = 100), - AvgHighVoltage = SIMP(statut = 'f', typ = 'I', defaut = 0, val_min = 0), - AvgHighVoltagePercent = SIMP(statut = 'f', typ = 'I', defaut = 0, val_min = 0, val_max = 100), - AvgLowVoltage = SIMP(statut = 'f', typ = 'I', defaut = 0, val_min = 0), - AvgLowVoltagePercent = SIMP(statut = 'f', typ = 'I', defaut = 0, val_min = 0, val_max = 100), - ), - ), - - - Automatic_N_2_Selection = FACT(statut='f', - - BusesList = SIMP(statut = 'o', typ = 'R', min = 0, max = '**', defaut = (), homo = 'SansOrdreNiDoublon'), - LinesList = SIMP(statut = 'o', typ = 'R', min = 0, max = '**', defaut = (), homo = 'SansOrdreNiDoublon'), - TransformersList = SIMP(statut = 'o', typ = 'TXM', min = 0, max = '**', defaut = (), homo = 'SansOrdreNiDoublon'), - ), - - MultipleContingencyList = FACT (statut='f', - max="**", - ComponentList=SIMP(statut='o', typ = 'TXM', max='**', homo = 'SansOrdreNiDoublon',), - ), - - ) - -CONTINGENCY_PROCESSING = MACRO ( nom = 'CONTINGENCY_PROCESSING', - sd_prod = opsPSEN_N1.PROCESS, - op_init = opsPSEN_N1.PROCESS_context, - op = None, - fichier_ini = 1, - fr = "", - ang="", - XLS_file = SIMP(statut="f", typ = ('Fichier', 'XLS file (*.xls);;All Files (*)',),), - b_TabList = BLOC(condition="XLS_file != None and XLS_file != ''", - TabList = SIMP(statut = 'o', typ = 'TXM', min = 0, max = '**', defaut = (), homo = 'SansOrdreNiDoublon'), - - ), - - ) - -Ordre_Des_Commandes = ('CASE_SELECTION' , 'N_PROCESSING_OPTIONS' , 'CONTINGENCY_SELECTION', 'CONTINGENCY_OPTIONS' ,'CONTINGENCY_PROCESSING',) -Classement_Commandes_Ds_Arbre = ('CASE_SELECTION' , 'N_PROCESSING_OPTIONS' , 'CONTINGENCY_SELECTION', 'CONTINGENCY_OPTIONS' ,'CONTINGENCY_PROCESSING',) diff --git a/ProcessOutputs_Eficas/configuration_PSEN_N1.py b/ProcessOutputs_Eficas/configuration_PSEN_N1.py deleted file mode 100644 index c61ac010..00000000 --- a/ProcessOutputs_Eficas/configuration_PSEN_N1.py +++ /dev/null @@ -1,43 +0,0 @@ -# -*- coding: utf-8 -*- -# maConfiguration MANAGEMENT OF EDF VERSION -# ====================================================================== -# COPYRIGHT (C) 1991 - 2002 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# -# -# ====================================================================== -""" - Ce module sert pour charger les paramètres de configuration d'EFICAS -""" -# Modules Python -from InterfaceQT4 import configuration -import os - - -class CONFIG(configuration.configBase): - - #----------------------------------- - def __init__(self,appli,repIni): - #----------------------------------- - - self.labels_user=['catalogues','lang'] - self.labels_eficas=['lang','rep_cata','catalogues','affiche'] - - configuration.configBase.__init__(self,appli,'.Eficas_monCode') - - -def make_config(appli,rep): - return CONFIG(appli,rep) - diff --git a/ProcessOutputs_Eficas/mesScripts_PSEN_N1.py b/ProcessOutputs_Eficas/mesScripts_PSEN_N1.py deleted file mode 100644 index 12bf5db9..00000000 --- a/ProcessOutputs_Eficas/mesScripts_PSEN_N1.py +++ /dev/null @@ -1,23 +0,0 @@ -def EficasProcessXLS(listeparam) : - print "dans processXLS" - item=listeparam[0] - dico=item.process_N1() - print dico - - print "version pour Pascale --> decommenter les 2 lignes suivantes pour Laura" - #from Processor import processXLS - #processXLS(dico) - - -# le dictionnaire des commandes a la structure suivante : -# la clef est la commande qui va proposer l action -# puis un tuple qui contient -# - la fonction a appeler -# - le label dans le menu du clic droit -# - un tuple contenant les parametres attendus par la fonction -# - appelable depuis Salome uniquement -) -# - appelable depuis un item valide uniquement -# - toolTip -dict_commandes={ - 'CONTINGENCY_PROCESSING': ( (EficasProcessXLS,"process",('editor','item',),False,True,"process values "),), - } diff --git a/ProcessOutputs_Eficas/opsPSEN_N1.py b/ProcessOutputs_Eficas/opsPSEN_N1.py deleted file mode 100644 index 1bd34bd3..00000000 --- a/ProcessOutputs_Eficas/opsPSEN_N1.py +++ /dev/null @@ -1,195 +0,0 @@ - -# -*- coding: iso-8859-1 -*- -# Copyright (C) 2007-2013 EDF R&D -# -# 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 -# - -from ExtractGeneratorLoadLineandTransfoDicoProcess import * -import os - -path1 = os.path.abspath(os.path.join(os.path.abspath(__file__), '../','TreatOutputs')) -sys.path.append(path1) -import Options - -def INCLUDE(self,PSSE_path,**args): - """ - Fonction sd_prod pour la macro INCLUDE - """ - CaseFolder = args['output_folder'] - Options.RecursiveDepth = args['MaxDepth'] - if CaseFolder==None: - return - reevalue=0 - if hasattr(self,'fichier_ini'): - reevalue=1 - if self.fichier_ini == CaseFolder : return - if hasattr(self,'old_context_fichier_init' ): - for concept in self.old_context_fichier_init.values(): - self.jdc.deleteConcept(concept) - self.jdc_aux=None - self.contexte_fichier_init={} - self.reevalueSdJdc() - self.jdc.resetContext() - - self.fichier_ini=CaseFolder - self.contexte_fichier_init = {} - self.fichier_unite = 999 - self.fichier_err = None - self.fichier_text="" - - unite = 999 - - CaseFile = '' - FolderList = os.listdir(CaseFolder) - for folder in FolderList: - if folder[0:7] == 'package' or folder[0:4]== 'core': - # Get BaseCase.sav inside the first package folder we find - FolderContents = os.listdir(os.path.join(CaseFolder, folder)) - for file in FolderContents: - if file == 'BaseCase.sav': - CaseFile = os.path.join(os.path.join(CaseFolder, folder), file) - break - break - - - #try: - if 1 : - BusList, LinesList, TransfosList = getNominalkV(CaseFile) - #print "version en dur : decommenter la ligne suivante" - #getTrueLines(CaseFile) - #except Exception, e: - # exc_type, exc_obj, exc_tb = sys.exec_info() - # print(e) - # print(exc_type, exc_tb.tb_lineno) - - - for e in self.jdc.etapes: - if e.nom == 'CASE_SELECTION' : - etape=e - break - self.jdc.editor.changeIntoMC(e, 'BusesList', BusList) - self.jdc.editor.changeIntoMC(e, 'LinesList', LinesList) - self.jdc.editor.changeIntoMC(e, 'TransformersList', TransfosList) - - self.jdc.editor.changeIntoDefMC('CONTINGENCY_SELECTION', ('Automatic_N_2_Selection', 'BusesList'), BusList) - self.jdc.editor.changeIntoDefMC('CONTINGENCY_SELECTION', ('Automatic_N_2_Selection', 'LinesList'), LinesList) - self.jdc.editor.changeIntoDefMC('CONTINGENCY_SELECTION', ('Automatic_N_2_Selection', 'TransformersList'), TransfosList) - - - try: - print "version en dur : decommenter la ligne suivante" - #a = updateConts() - self.jdc.editor.changeIntoDefMC('CONTINGENCY_SELECTION', ('MultipleContingencyList', 'ComponentList'), Options.ContFullList) - except Exception as e: - exc_type, exc_obj, exc_tb = sys.exec_info() - print(e) - print(exc_type, exc_tb.tb_lineno) - - - - - -def INCLUDE_context(self,d): - """ - Fonction op_init pour macro INCLUDE - """ - for k,v in self.g_context.items(): - d[k]=v - - -def PROCESS_context(self,d): - print "dans le init du Process" - if self.getChild('XLS_file').valeur == "" or self.getChild('XLS_file').valeur== None : return - self.OngletsSelectionnes= self.getChild('b_TabList').getChild('TabList').valeur - print "fin de PROCESS_context" - -def PROCESS(self,XLS_file,**args): - - # self = Accas.A_MACRO_ETAPE.MACRO_ETAPE - self.sauve_args=args - if XLS_file == "" or XLS_file == None: return - #print XLS_file - #Storage.csvFileName = XLS_file - # c est la premiere fois - - if not (hasattr(self,'sheets')) : - #print 'attention en dur' - #from Processor_Storage import * - #print getSheets - #getSheets() - #ComponentList, ContingencyList = getComponentandContingencyList(Storage.sheets[0]) - #print ComponentList - #print ContingencyList - #Storage.selectedDoubleRow[Storage.sheets[0]]=['PV MATIMBA'] - #Storage.selectedDoubleCol[Storage.sheets[0]]=['MAZENOD_MHDAM_LI1_'] - #self.jdc.editor.changeIntoMC(self,'TabList',Storage.sheets) - #self.sheets=Storage.sheets - #self.OngletsValeurs=[] - - from Processor import getXLSinfo - self.sheets = getXLSinfo(XLS_file) - self.jdc.editor.changeIntoMC(self,'TabList',self.sheets.keys(),('b_TabList',)) - - self.MCAjoutes=[] - self.OngletsSelectionnes=[] - - else : - # On a selectionne un onglet - # On teste si on a modifie la liste des onglets - - nouveauxOngletsSelectionnes= self.getChild('b_TabList').getChild('TabList').valeur - if nouveauxOngletsSelectionnes==self.OngletsSelectionnes : return - if nouveauxOngletsSelectionnes==() or nouveauxOngletsSelectionnes == [] : - for MC in self.MCAjoutes : self.jdc.editor.deleteMC(self,MC,('b_TabList',)) - self.MCAjoutes=[] - self.OngletsSelectionnes=[] - self.jdc.editor.fenetreCentraleAffichee.reaffiche() - return - - for Onglet in nouveauxOngletsSelectionnes: - if Onglet in self.OngletsSelectionnes : continue - - MCFils='Component_List_For_'+Onglet - monInto=self.sheets[Onglet][0] - self.jdc.editor.ajoutDefinitionMC('CONTINGENCY_PROCESSING',('b_TabList',),MCFils,'TXM',min=0, max='**', into=monInto, homo= 'SansOrdreNiDoublon') - self.jdc.editor.ajoutMC(self,MCFils,[],('b_TabList',)) - self.MCAjoutes.append(MCFils) - - MCFils='Contingency_List_For_'+Onglet - monInto=self.sheets[Onglet][1] - self.jdc.editor.ajoutDefinitionMC('CONTINGENCY_PROCESSING',('b_TabList',),MCFils,'TXM',min=0, max='**', into=monInto, homo= 'SansOrdreNiDoublon') - self.jdc.editor.ajoutMC(self,MCFils,[],('b_TabList',)) - self.MCAjoutes.append(MCFils) - - - for Onglet in self.OngletsSelectionnes: - if Onglet in nouveauxOngletsSelectionnes : continue - - MCFils='Contingency_List_For_'+Onglet - self.jdc.editor.deleteMC(self,MCFils,('b_TabList',)) - self.jdc.editor.deleteDefinitionMC('CONTINGENCY_PROCESSING',('b_TabList',),MCFils) - self.MCAjoutes.remove(MCFils) - - MCFils='Component_List_For_'+Onglet - self.jdc.editor.deleteMC(self,MCFils,('b_TabList',)) - self.jdc.editor.deleteDefinitionMC('CONTINGENCY_PROCESSING',('b_TabList',),MCFils) - self.MCAjoutes.remove(MCFils) - - self.OngletsSelectionnes=nouveauxOngletsSelectionnes - self.jdc.editor.fenetreCentraleAffichee.reaffiche() - diff --git a/ProcessOutputs_Eficas/prefs.py b/ProcessOutputs_Eficas/prefs.py deleted file mode 100644 index 647d0ae9..00000000 --- a/ProcessOutputs_Eficas/prefs.py +++ /dev/null @@ -1,22 +0,0 @@ -# Copyright (C) 2007-2012 EDF R&D -# -# 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 -# -code="PSEN_N1" -import sys, os -if os.path.dirname(os.path.abspath(__file__)) not in sys.path : - sys.path.insert(0,os.path.dirname(os.path.abspath(__file__))) diff --git a/ProcessOutputs_Eficas/prefs_PSEN_N1.py b/ProcessOutputs_Eficas/prefs_PSEN_N1.py deleted file mode 100644 index ef67036a..00000000 --- a/ProcessOutputs_Eficas/prefs_PSEN_N1.py +++ /dev/null @@ -1,42 +0,0 @@ -# -*- coding: utf-8 -*- -# maConfiguration MANAGEMENT OF EDF VERSION -# ====================================================================== -# COPYRIGHT (C) 1991 - 2002 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# -# -# ====================================================================== - -import os,sys -# repIni sert a localiser le fichier editeur.ini -# Obligatoire -repIni=os.path.dirname(os.path.abspath(__file__)) -INSTALLDIR=os.path.join(repIni,'..') -sys.path[:0]=[INSTALLDIR] - - -# lang indique la langue utilisee pour les chaines d'aide : fr ou ang -lang='en' #'fr' - -# Codage des strings qui accepte les accents (en remplacement de 'ascii') -encoding='iso-8859-1' -docPath=repIni - -affiche='ordre' - -# -catalogues=( - ('PSEN_N1','default',os.path.join(repIni,'PSEN_Cata_N1.py'),'ProcessOutputs','python'), -) diff --git a/ProcessOutputs_Eficas/properties.py b/ProcessOutputs_Eficas/properties.py deleted file mode 100644 index 1d328a46..00000000 --- a/ProcessOutputs_Eficas/properties.py +++ /dev/null @@ -1,24 +0,0 @@ -#@ MODIF properties Accas DATE 11/06/2008 AUTEUR aster M.ADMINISTRATEUR -# RESPONSABLE D6BHHHH J-P.LEFEBVRE -# ====================================================================== -# COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# IDENTIFICATION DU GESTIONNAIRE DE COMMANDE ACCAS A PARTIR -# DE LA VERSION DU CODE_ASTER ASSOCIE -#---------------------------------------------------------------------- -version = "1.2" -date = "25/05/2010" -exploit = False diff --git a/ProcessOutputs_Eficas/qtEficas_PSEN_N1.py b/ProcessOutputs_Eficas/qtEficas_PSEN_N1.py deleted file mode 100755 index e9b1f956..00000000 --- a/ProcessOutputs_Eficas/qtEficas_PSEN_N1.py +++ /dev/null @@ -1,47 +0,0 @@ -#!/usr/bin/env python -# -*- coding: utf-8 -*- -# Copyright (C) 2007-2012 EDF R&D -# -# 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 -# -""" - Ce module sert a lancer EFICAS configure pour Code_Aster -""" -# Modules Python -# Modules Eficas - -import sys,os -#sys.path.append(os.path.join(os.path.abspath(os.path.dirname(__file__)),'..')) -import prefs -name='prefs_'+prefs.code -__import__(name) - -#acceder scripts de Lucie -path1 = os.path.abspath(os.path.join(os.path.abspath(__file__),'TreatOutputs')) -path1 = 'C:\\Logiciels DER\\PSEN_V15\\Code\\ProcessOutputs_Eficas\TreatOutputs' -sys.path.append(path1) - -print ('kjlkjlkjkl') -print ('kjlkjlkjkl') -print ('kjlkjlkjkl') -print ('kjlkjlkjkl') -print ('kjlkjlkjkl') -print ('kjlkjlkjkl') -print ('kjlkjlkjkl') - -from InterfaceQT4 import eficas_go -if __name__ == '__main__': eficas_go.lanceEficas(code=prefs.code) diff --git a/SPECA/SPECA_Cata_V1.py b/SPECA/SPECA_Cata_V1.py deleted file mode 100644 index 72771cf5..00000000 --- a/SPECA/SPECA_Cata_V1.py +++ /dev/null @@ -1,542 +0,0 @@ -## -*- coding: utf-8 -*- -# -## -------------------------------------------------- -## debut entete -## -------------------------------------------------- -# -from Accas import * - - -# rend disponible le type tuple (liste) -import types -class Tuple: - def __init__(self,ntuple): - self.ntuple=ntuple - - def __convert__(self,valeur): - if type(valeur) == types.StringType: - return None - if len(valeur) != self.ntuple: - return None - return valeur - - def info(self): - return "Tuple de %s elements" % self.ntuple - - __repr__=info - __str__=info - - - -# -#CONTEXT.debug = 1 - -VERSION_CATALOGUE="2.0.0"; - -JdC = JDC_CATA ( code = 'SPECA', - execmodul = None, - regles=(AU_MOINS_UN('SPECIFICATION_ANALYSE',), - AU_PLUS_UN('SPECIFICATION_ANALYSE',), - ), - )# Fin JDC_CATA - -## ----- SPECIFICATION DE L'ETUDE ----- ## -SPECIFICATION_ANALYSE= MACRO (nom = 'SPECIFICATION_ANALYSE', - op = None, - UIinfo = {"groupes":("Machine tournante",)}, - fr = "Specification des analyses", - TYPE_ANALYSE = SIMP(statut='o', typ='TXM',into=('STATIQUE', 'MODALE', 'HARMONIQUE', 'TRANSITOIRE', 'TRANSITOIRE_ACCIDENTEL','SYNTHESE')), - # pour V1.1 flexion uniquement - TYPE_COMPORTEMENT = BLOC(condition = "TYPE_ANALYSE in ('MODALE','HARMONIQUE','STATIQUE','TRANSITOIRE','TRANSITOIRE_ACCIDENTEL','SYNTHESE')", - FLEXION = SIMP(statut='o',typ='TXM',into=('OUI',),defaut='OUI',fr="Inclure la flexion ?"), - TORSION = SIMP(statut='f',typ='TXM',into=('OUI','NON'),defaut='NON',fr="Inclure la torsion ?"), - COMPRESSION = SIMP(statut='f',typ='TXM',into=('OUI','NON'),defaut='NON',fr="Inclure la compression ?"), - ), -### ----- CALCUL STATIQUE ----- ## - ANALYSE_STATIQUE = BLOC(condition = "TYPE_ANALYSE == 'STATIQUE' ", - - POIDS = SIMP(statut='o',typ='TXM',into=('OUI','NON'),defaut='OUI',fr="Choix d'application d'un poids"), - CHARGES = SIMP(statut='o',typ='TXM',into=('DELIGNAGE','FORCE','AUCUNE'),defaut=None,fr="Choix d'application d'une charge"), - DELIGNAGE = BLOC(condition = "CHARGES == 'DELIGNAGE' ",fr="Application d'un delignage", - PARAM_DELIGNAGE = FACT(statut='o',min=1,max='**',fr="Parametres du delignage", - NOM_PALIER = SIMP(statut='o',typ='TXM',min=1,max=1,defaut=None,fr="Renseignement du nom d'un palier deligne"), - #VALEURS = SIMP(statut='o',typ='R',min=3,max=3,defaut=None,fr="Renseignement des valeurs du delignage du palier"), - DX = SIMP(statut='o',typ='R',min=1,max=1,defaut=None,fr="Renseignement du DX du delignage du palier"), - DY = SIMP(statut='o',typ='R',min=1,max=1,defaut=None,fr="Renseignement du DY du delignage du palier"), - ), # fin PARAM_DELIGNAGE - ), # fin DELIGNAGE - # min=1,max=2, - FORCE = BLOC(condition = "CHARGES == 'FORCE' ",fr="Application d'une force", - PARAM_FORCE = FACT(statut='o',min=1,max='**',fr="Parametres de la force", - POSITION = SIMP(statut='o',typ='R',defaut=None,fr="Renseignement de la coordonnee de la force"), - MAGNITUDE = SIMP(statut='o',typ='R',min=3,max=3,defaut=None,fr="Renseignement de la magnitude de la force"), - FONC_APPLI = SIMP(statut='f',typ='R',min=2,max=2,defaut=None,fr="Renseignement de la fonction appliquee"), - ), # fin PARAM_FORCE - ), # fin FORCE - ## fin specification calcul statique - - ## POST-TRAITEMENTS DU CALCUL STATIQUE - POST_TRAITEMENTS = FACT(statut='o',max='**',fr="Choix du type de post-traitement", - TYPE = SIMP(statut='o',typ='TXM',into=('DEPL_ABS','DEPL_RELA','EFFORTS_PAL','REAC_NODA','CONTRAINTES'),defaut=None,fr="Choix du type de post-traitement"), - DEPL = BLOC(condition="TYPE in ('DEPL_ABS','DEPL_RELA') ",fr="Deplacement",regles=UN_PARMI('POSITION','PALIER'), - POSITION = SIMP(statut='f',typ='R',defaut=None,fr="Renseignement de la coordonnee du deplacement"), - PALIER = SIMP(statut='f',max='**',typ='TXM',defaut=None,fr="Renseignement du nom du palier"), - ), # fin DEPL - CONTRAINTES = BLOC(condition="TYPE == 'CONTRAINTES' ",fr="Contraintes",regles=UN_PARMI('POSITION','ZONE','TOUT'), - POSITION = SIMP(statut='f',typ='R',min=1,max=1,defaut=None,fr="Renseignement de la coordonnee de la contrainte"), - ZONE = SIMP(statut='f',typ='TXM',defaut=None,fr="Renseignement de la zone de la contrainte"), - TOUT = SIMP(statut='f',typ='TXM',into=('OUI'),fr="Choix de toutes les containtes"), - ), # fin CONTRAINTES - #REAC_NODA = BLOC(condition="TYPE == 'REAC_NODA' ", fr="Reaction nodale",regles=UN_PARMI('POSITION','ZONE','TOUT'), - #REAC_NODA = BLOC(condition="TYPE == 'REAC_NODA' ", fr="Reaction nodale",regles=UN_PARMI('POSITION','TOUT'), - REAC_NODA = BLOC(condition="TYPE == 'REAC_NODA' ", fr="Reaction nodale",regles=UN_PARMI('POSITION','PALIER'), - POSITION = SIMP(statut='f',typ='R',max=1,defaut=None,fr="Renseignement de la coordonnee de la reaction"), - #ZONE = SIMP(statut='f',typ='TXM',defaut=None,fr="Renseignement de l'etiquette de la zone de la reaction"), - PALIER = SIMP(statut='f',max='**',typ='TXM',defaut=None,fr="Renseignement du nom du palier"), - ), # fin REAC_NODA - ), # fin POST_TRAITEMENT - ## fin bloc POST_TRAITEMENTS - - ),# fin ANALYSE_STATIQUE - -### ----- CALCUL MODALE ----- ## - ANALYSE_MODALE = BLOC(condition = "TYPE_ANALYSE == 'MODALE' ", - BASE_CALCUL = SIMP(statut='o',typ="TXM",into=('MODALE','PHYSIQUE'),defaut=None,fr="Choix de la base du calcul modal"), - BASE_MODALE = BLOC(condition="BASE_CALCUL=='MODALE'",fr="Calcul sur base modale", - regles=UN_PARMI('NB_MODES','FREQ_MAX'), - NB_MODES=SIMP(statut='f',typ='I',min=1,max=1,defaut=None,fr="Renseignement du nombre de mode"), - FREQ_MAX=SIMP(statut='f',typ='R',min=1,max=1,defaut=None,fr="Renseignement de la frequence maximale"), - ), # fin BASE_MODALE - AMORTISSEMENT = SIMP(statut='o',typ='TXM',min=1,max=1,into=('OUI','NON'),defaut='OUI',fr="Choix de prise en compte de l'amortissment"), - GYROSCOPIE = SIMP(statut='o',typ='TXM',min=1,max=1,into=('OUI','NON'),defaut='OUI',fr="Choix de prise en compte de la gyroscopie"), - VITESSE_ROTATION = SIMP(statut='o',typ='R',min=1,max='**',defaut=None,fr="Renseignement de la liste des vitesses de rotation (tr/min)"), - OPTION_CALCUL = SIMP(statut='o',typ='TXM',min=1,max=1,into=('PLUS_PETITE','CENTRE'),defaut=None,fr="Choix de l'option de calcul"), - # 20121018 EDF demande de retirer cette option : l'option bande ne fonctionne pas avec MODE_ITER_SIMULT - #OPTION_CALCUL = SIMP(statut='o',typ='TXM',min=1,max=1,into=('BANDE','PLUS_PETITE','CENTRE'),defaut=None,fr="Choix de l'option de calcul"), - #BANDE = BLOC(condition="OPTION_CALCUL=='BANDE'",fr="Option BANDE", - # FREQ_MIN = SIMP(statut='o',typ='R',min=1,max=1,defaut=None,fr="Renseignement de la frequence minimale (Hz)"), - # FREQ_MAX = SIMP(statut='o',typ='R',min=1,max=1,defaut=None,fr="Renseignement de la frequence maximale (Hz)"), - #), # fin BANDE - PLUS_PETITE = BLOC(condition="OPTION_CALCUL=='PLUS_PETITE'",fr="Option PLUS_PETITE", - NMAX_FREQ = SIMP(statut='o',typ='I',min=1,max=1,defaut=None,fr="Renseignement du nombre maximal de frequence"), - ), # fin PLUS_PETITE - CENTRE = BLOC(condition="OPTION_CALCUL=='CENTRE'",fr="Option CENTRE", - FREQ = SIMP(statut='o',typ='R',min=1,max=1,defaut=None,fr="Renseignement de la frequence centrale (Hz)"), - NMAX_FREQ = SIMP(statut='o',typ='I',min=1,max=1,defaut=None,fr="Renseignement du nombre maximal de frequence"), - ), # fin CENTRE - METHODE=SIMP(statut='f',typ='TXM',min=1,max=1,into=('QZ','SORENSEN'),defaut='SORENSEN',fr="Choix de la méthode de résolution"), - - POST_TRAITEMENTS = FACT(statut='o',max='**',fr="Choix du type de post-traitement", - TYPE = SIMP(statut='o',typ='TXM',defaut=None,into=('TABLEAU_PARAM_MODAUX','DIAG_CAMPBELL'),), - #TABLEAU_PARAM_MODAUX = SIMP(statut='f',typ='TXM',min=1,max=1,defaut=None,into=('SIMPLE','COMPLET'),fr="Choix du type de tableau"), - TABLEAU_PARAM_MODAUX = BLOC(condition = "TYPE == 'TABLEAU_PARAM_MODAUX'",fr="Choix du type de tableau", - TABLEAU = SIMP(statut='o',max=1,typ='TXM',defaut='SIMPLE',into=('SIMPLE','COMPLET'),), - ), # fin TABLEAU_PARAM_MODAUX - DIAG_CAMPBELL = BLOC(condition = "TYPE == 'DIAG_CAMPBELL'", fr = "Choix des options du diagramme de Campbell", - PRECESSION = SIMP(statut='o',typ='TXM',max=1,defaut=None,into=('SOMME','PLUS_GRANDE_ORBITE'),), - SUIVI = SIMP(statut='o',typ='TXM',max=1,defaut=None,into=('SANS_TRI','TRI_PREC','TRI_FORM_MOD'),), - # 20121018 ajout de NB_MODES a la demande de Ionel Nistor - NB_MODES = SIMP(statut='o',typ='I',max=1,defaut=None,fr="Nombre de modes affiches dans le diagramme, doit etre inferieur au nombre de modes calcules"), - ), # fin DIAG_CAMPBELL - #DIAG_CAMPBELL = SIMP(statut='f',typ='TXM',min=1,max=1,defaut=None,into=('OUI','NON'),fr="Choix de calcul du diagramme de Campbell (uniquement si plusieurs vitesses de rotation ont ete renseignees)",), - ), # fin POST_TRAITEMENTS - - - ), # fin ANALYSE_MODALE - -## ----- CALCUL HARMONIQUE ----- ## - ANALYSE_HARMONIQUE = BLOC(condition = "TYPE_ANALYSE == 'HARMONIQUE' ",fr="Analyse harmonique", - - ## specification calcul harmonique - BASE_CALCUL = SIMP(statut='o',typ='TXM',into=('PHYSIQUE','MODALE'),defaut=None,fr="Choix de la base du calcul harmonique"), - BASE_MODALE = BLOC(condition = "BASE_CALCUL == 'MODALE' ", fr="Calcul harmonique sur base modale", - #MODALE = FACT(statut='o', - regles=UN_PARMI('NB_MODES','FREQ_MAX'), - NB_MODES = SIMP(statut='f',typ='I',min=1,max=1,defaut=None,fr="Renseignement du nombre de mode"), - FREQ_MAX = SIMP(statut='f',typ='R',min=1,max=1,defaut=None,fr="Renseignement de la frequence maximale"), - #),# fin MODALE - ),# fin BASE_MODALE - AMORTISSEMENT_P = BLOC(condition = "BASE_CALCUL == 'PHYSIQUE' ", - AMORTISSEMENT = SIMP(statut='o', typ='TXM',into=('STRUCTUREL'),defaut=None,fr="Choix du type d'amortissement"), - ), # fin AMORTISSEMENT_P - AMORTISSEMENT_M = BLOC(condition = "BASE_CALCUL == 'MODALE' ", - AMORTISSEMENT = SIMP(statut='o', typ='TXM',into=('REDUIT','STRUCTUREL'),defaut=None,fr="Choix du type d'amortissement"), - # cft modif 20130603 - #AMOR_REDUIT = BLOC(condition = "AMORTISSEMENT == 'REDUIT' ", - # LIST_AMOR = SIMP(statut='o', typ='R', min=1,max='**',defaut=None,fr="Renseignement de la liste des amortissements"), - #),# fin AMOR_REDUIT - AMOR_MODAL = BLOC(condition = "AMORTISSEMENT == 'REDUIT' ", - #AMOR_REDUIT = SIMP(statut='o', typ='R', min=1, max=1,defaut=None,fr="Renseignement de l'amortissement modal reduit (en %)"), - AMOR_REDUIT = SIMP(statut='o', typ='R', min=1, max='**',defaut=None,fr="Renseignement de l'amortissement modal reduit (en %), la taille de la liste doit etre egale au nombre de modes"), - ),# fin AMOR_MODALE - ), # fin AMORTISSEMENT_M - VITESSE_ROTATION = SIMP(statut='o',typ='R',min=1,max='**',defaut=None,fr="Renseignement de la liste des vitesses de rotation"), - # 20121018 retrait de defaut_fn a la demande de EDF - #CHARGES = SIMP(statut='o',typ='TXM',into=('BALOURD','HARMONIQUE','DEFAUT_FN','EXTERNE'),defaut=None,min=1,max=1,fr="Choix du type de charge a appliquer"), - #CHARGES = SIMP(statut='o',typ='TXM',into=('BALOURD','DELIGNAGE','HARMONIQUE','EXTERNE'),defaut=None,min=1,max=1,fr="Choix du type de charge a appliquer"), - CHARGES = SIMP(statut='o',typ='TXM',into=('BALOURD','HARMONIQUE','EXTERNE','AUCUNE'),defaut=None,min=1,max=1,fr="Choix du type de charge a appliquer"), - BALOURD = BLOC(condition = "CHARGES == 'BALOURD' ",fr="Charge balourd appliquee", - POSITION = SIMP(statut='o',typ='R',min=1,max=1,defaut=None,fr="Renseignement de la coordonnee de la charge balourd"), - MAGNITUDE = SIMP(statut='o',typ='R',min=1,max=1,defaut=None,fr="Renseignement de la magnitude de la charge balourd (en kg.m)"), - FONC_APPLI = SIMP(statut='o',typ='R',min=1,max='**',defaut=None,fr="Renseignement de la fonction appliquee de la charge balourd (autant de valeurs que de vitesses de rotation)"), - PHASE_DEG = SIMP(statut='o',typ='R',min=1,max=1,defaut=None,fr="Renseignement du decalage de la phase de la charge balourd (en degres)"), - ),# fin BALOURD - # 20121106 retrait de delgnage a le demande de EDF - #DELIGNAGE = BLOC(condition = "CHARGES == 'DELIGNAGE' ",fr="Application d'un delignage", - #PARAM_DELIGNAGE = FACT(statut='o',min=1,max='**',fr="Parametres du delignage", - #PALIERS = SIMP(statut='o',typ='TXM',min=1,max=1,defaut=None,fr="Renseignement du nom d'un palier deligne"), - #VALEURS = SIMP(statut='o',typ='R',min=3,max=3,defaut=None,fr="Renseignement des valeurs du delignage du palier"), - #), # fin PARAM_DELIGNAGE - #), # fin DELIGNAGE - HARMONIQUE = BLOC(condition = "CHARGES == 'HARMONIQUE' ",fr="Charge harmonique appliquee", - POSITION = SIMP(statut='o',typ='R',min=1,max=1,defaut=None,fr="Renseignement de la coordonnee de la charge harmonique"), - PUIS_PULS = SIMP(statut='o',typ='I',min=1,max=1,into=(0,1,2),defaut=None,fr="Renseignement de la puissance de pulsation de la charge harmonique"), - PULSATION = SIMP(statut='o',typ='R',min=1,max=1,defaut=None,fr="Renseignement de la pulsation d'excitation harmonique (en rad/s)"), - MAGNITUDE = SIMP(statut='o',typ='R',min=1,max=1,defaut=None,fr="Renseignement de la magnitude de la charge harmonique, (unite : N.s^i (avec i = PUIS_PULS))"), - FONC_APPLI = SIMP(statut='o',typ='R',min=1,max='**',defaut=None,fr="Renseignement de la fonction appliquee de la charge harmonique (autant de valeurs que de vitesses de rotation)"), - PHASE_DEG = SIMP(statut='o',typ='R',min=1,max=1,defaut=None,fr="Renseignement du decalage de la phase de la charge harmonique (en degres)"), - TYPE_DDL = SIMP(statut='o',typ='TXM',min=1,max=1,into=('DX','DRX','DY','DRY'),defaut=None,fr="Renseignement du type de DDL excite sur lequel porte la charge"), - ), # fin HARMONIQUE - # 20121018 retrait de defaut_fn a la demande de EDF - #DEFAUT_FN = BLOC(condition = "CHARGES == 'DEFAUT_FN' ",fr="Charge defaut de fibre neutre appliquee", - #POSITION = SIMP(statut='o',typ='R',min=1,max=1,defaut=None,fr="Renseignement de la coordonnee du defaut de fibre neutre"), - #TR_Y = SIMP(statut='o',typ='R',min=1,max=1,defaut=None,fr="Renseignement du vecteur de translation en Y du defaut de fibre neutre"), - #TR_Z = SIMP(statut='o',typ='R',min=1,max=1,defaut=None,fr="Renseignement du vecteur de translation en Z du defaut de fibre neutre"), - #ROT_Y = SIMP(statut='o',typ='R',min=1,max=1,defaut=None,fr="Renseignement du moment de rotation en Y du defaut de fibre neutre"), - #ROT_Z = SIMP(statut='o',typ='R',min=1,max=1,defaut=None,fr="Renseignement du moment de rotation en Z du defaut de fibre neutre"), - #), # fin DEFAUT_FN - EXTERNE = BLOC(condition = "CHARGES == 'EXTERNE' ",fr="Charge externe appliquee", - POSITION = SIMP(statut='o',typ='R',min=1,max=1,defaut=None,fr="Renseignement de la coordonnee de la charge externe"), - FONC_APPLI = SIMP(typ=('Fichier','Charge Externe (*.csv)'),docu='',min=1,max=1,statut='o',defaut=None,fr="Renseignement de la fonction appliquee à la charge externe (fichier cvs)"), - ), # fin EXTERNE - ## fin secification calcul harmonique - - # test cft 20120531 - ## POST-TRAITEMENTS DU CALCUL HARMONIQUE - POST_TRAITEMENTS = FACT(statut='o',max='**',fr="Choix du type de post-traitement", - #TYPE = SIMP(statut='o',typ='TXM',into=('DEPL_ABS','DEPL_RELA','EFFORTS_PAL','CONTRAINTES'),defaut=None,fr="Choix du type de post-traitement"), - # 2012119 retrait de DEPL_ABS - #TYPE = SIMP(statut='o',typ='TXM',into=('DEPL_RELA','EFFORTS_PAL','CONTRAINTES'),defaut=None,fr="Choix du type de post-traitement"), - # 20130513 ajout de REAC_NODA - TYPE = SIMP(statut='o',typ='TXM',into=('DEPL_RELA','REAC_NODA','EFFORTS_PAL','CONTRAINTES'),defaut=None,fr="Choix du type de post-traitement"), - DEPL = BLOC(condition = "TYPE in ('DEPL_ABS','DEPL_RELA') ",fr="Deplacement",regles=UN_PARMI('POSITION','PALIER'), - POSITION = SIMP(statut='f',typ='R',defaut=None,fr="Renseignement de la coordonnee du deplacement"), - PALIER = SIMP(statut='f',max='**',typ='TXM',defaut=None,fr="Renseignement du nom du palier"), - ), # fin DEPL - # pas d'options pour EFFORTS_PAL et REAC_NODA - #EFFORTS_PAL = BLOC(condition = "TYPE == 'EFFORTS_PAL'", fr = "Efforts paliers", - #PALIER = SIMP(statut='o',typ='TXM',max=1,defaut=None,fr="Renseignement de l'etiquette du palier"), - #), # fin EFFORTS_PAL - # BASE_CALCUL == 'MODALE' - CONTRAINTES = BLOC(condition="TYPE == 'CONTRAINTES' ",fr="Contraintes",regles=UN_PARMI('POSITION','ZONE','TOUT'), - POSITION = SIMP(statut='f',typ='R',min=1,max=1,defaut=None,fr="Renseignement de la coordonnee de la contrainte"), - ZONE = SIMP(statut='f',typ='TXM',min=1,max=1,defaut=None,fr="Renseignement du nom de la zone de la contrainte"), - TOUT = SIMP(statut='f',typ='TXM',into=('OUI'),min=1,max=1,fr="Renseignement de la contrainte"), - ), # fin CONTRAINTES - ), - ## fin bloc POST_TRAITEMENTS - - ),# fin ANALYSE_HARMONIQUE - -### ----- CALCUL TRANSITOIRE ----- ## - ANALYSE_TRANSISTOIRE = BLOC(condition = "TYPE_ANALYSE == 'TRANSITOIRE' ",fr="Analyse transitoire", - POIDS = SIMP(statut='o',typ='TXM',into=('OUI','NON'),defaut='OUI',fr="Choix d'application d'un poids"), - VITESSE = SIMP(statut='o',typ='TXM',min=1,max=1,defaut=None,into=('CONSTANTE','VARIABLE'),fr="Renseignement du type de vitesse de rotation"), - BASE_C = BLOC(condition ="VITESSE == 'CONSTANTE'", - BASE_CALCUL = SIMP(statut='o',typ='TXM',into=('PHYSIQUE','MODALE'),defaut=None,fr="Choix de la base du calcul transitoire"), - BASE_MODALE = BLOC(condition = "BASE_CALCUL == 'MODALE' ", fr="Calcul transitoire sur base modale", - regles=UN_PARMI('NB_MODES','FREQ_MAX'), - NB_MODES = SIMP(statut='f',typ='I',min=1,max=1,defaut=None,fr="Renseignement du nombre de mode"), - FREQ_MAX = SIMP(statut='f',typ='R',min=1,max=1,defaut=None,fr="Renseignement de la frequence maximale"), - ),# fin BASE_MODALE - AMORTISSEMENT_M = BLOC(condition = "BASE_CALCUL == 'MODALE' ", - AMORTISSEMENT = SIMP(statut='o', typ='TXM',into=('REDUIT','STRUCTUREL'),defaut=None,fr="Choix du type d'amortissement"), - # cft modif 20130603 - #AMOR_REDUIT = BLOC(condition = "AMORTISSEMENT == 'REDUIT' ", - # LIST_AMOR = SIMP(statut='o', typ='R', min=1,max='**',defaut=None,fr="Renseignement de la liste des amortissements"), - #),# fin AMOR_REDUIT - AMOR_MODAL = BLOC(condition = "AMORTISSEMENT == 'REDUIT' ", - AMOR_REDUIT = SIMP(statut='o', typ='R', min=1, max='**',defaut=None,fr="Renseignement de l'amortissement modal reduit (en %), la taille de la liste doit etre egale au nombre de modes"), - ),# fin AMOR_MODALE - ), # fin AMORTISSEMENT_M - ), # fin BASE_C - BASE_V = BLOC(condition ="VITESSE == 'VARIABLE'", - BASE_CALCUL = SIMP(statut='o',typ='TXM',into=('MODALE'),defaut='MODALE',fr="Choix de la base du calcul transitoire"), - BASE_MODALE = BLOC(condition = "BASE_CALCUL == 'MODALE' ", fr="Calcul transitoire sur base modale", - regles=UN_PARMI('NB_MODES','FREQ_MAX'), - NB_MODES = SIMP(statut='f',typ='I',min=1,max=1,defaut=None,fr="Renseignement du nombre de mode"), - FREQ_MAX = SIMP(statut='f',typ='R',min=1,max=1,defaut=None,fr="Renseignement de la frequence maximale"), - ),# fin BASE_MODALE - AMORTISSEMENT = SIMP(statut='o', typ='TXM',into=('REDUIT','STRUCTUREL'),defaut=None,fr="Choix du type d'amortissement"), - # cft modif 20130603 - #AMOR_REDUIT = BLOC(condition = "AMORTISSEMENT == 'REDUIT' ", - # LIST_AMOR = SIMP(statut='o', typ='R', min=1,max='**',defaut=None,fr="Renseignement de la liste des amortissements"), - #),# fin AMOR_REDUIT - AMOR_MODAL = BLOC(condition = "AMORTISSEMENT == 'REDUIT' ", - #AMOR_REDUIT = SIMP(statut='o', typ='R', min=1, max=1,defaut=None,fr="Renseignement de l'amortissement modal reduit (en %)"), - AMOR_REDUIT = SIMP(statut='o', typ='R', min=1, max='**',defaut=None,fr="Renseignement de l'amortissement modal reduit (en %), la taille de la liste doit etre egale au nombre de modes"), - ),# fin AMOR_MODALE - ), # fin BASE_C - #BASE_MODALE = BLOC(condition = "BASE_CALCUL == 'MODALE' ", fr="Calcul transitoire sur base modale", - # regles=UN_PARMI('NB_MODES','FREQ_MAX'), - # NB_MODES = SIMP(statut='f',typ='I',min=1,max=1,defaut=None,fr="Renseignement du nombre de mode"), - # FREQ_MAX = SIMP(statut='f',typ='R',min=1,max=1,defaut=None,fr="Renseignement de la frequence maximale"), - #),# fin BASE_MODALE - # cft modif 20130603 - - #AMORTISSEMENT_P = BLOC(condition = "BASE_CALCUL == 'PHYSIQUE' ", - # AMORTISSEMENT = SIMP(statut='o', typ='TXM',into=('STRUCTUREL'),defaut=None,fr="Choix du type d'amortissement"), - #), # fin AMORTISSEMENT_P - #AMORTISSEMENT_M = BLOC(condition = "BASE_CALCUL == 'MODALE' ", - # AMORTISSEMENT = SIMP(statut='o', typ='TXM',into=('REDUIT','STRUCTUREL'),defaut=None,fr="Choix du type d'amortissement"), - # # cft modif 20130603 - # #AMOR_REDUIT = BLOC(condition = "AMORTISSEMENT == 'REDUIT' ", - # # LIST_AMOR = SIMP(statut='o', typ='R', min=1,max='**',defaut=None,fr="Renseignement de la liste des amortissements"), - # #),# fin AMOR_REDUIT - # AMOR_MODAL = BLOC(condition = "AMORTISSEMENT == 'REDUIT' ", - # AMOR_REDUIT = SIMP(statut='o', typ='R', min=1, max=1,defaut=None,fr="Renseignement de l'amortissement modal reduit (en %)"), - # ),# fin AMOR_MODALE - #), # fin AMORTISSEMENT_M - - - #AMORTISSEMENT = SIMP(statut='o', typ='TXM',into=('STRUCTUREL','REDUIT'),defaut=None,fr="Choix du type d'amortissement"), - #AMOR_REDUIT = BLOC(condition = "AMORTISSEMENT == 'REDUIT' ", - # LIST_AMOR = SIMP(statut='o', typ='R', min=1,max='**',defaut=None,fr="Renseignement de la liste des amortissements"), - #),# fin AMOR_REDUIT - #AMOR_MODAL = BLOC(condition = "AMORTISSEMENT == 'REDUIT' ", - # AMOR_REDUIT = SIMP(statut='o', typ='R', min=1,max=1,defaut=None,fr="Renseignement de l'amortissement modal reduit (en %)"), - #),# fin AMOR_MODALE - #VITESSE = SIMP(statut='o',typ='TXM',min=1,max=1,defaut=None,into=('CONSTANTE','VARIABLE'),fr="Renseignement du type de vitesse de rotation"), - VITESSE_CONSTANTE = BLOC(condition = "VITESSE == 'CONSTANTE' ", fr="Vitesse de rotation constante", - VITESSE_ROTATION = SIMP(statut='o',typ='R',min=1,max=1,defaut=None,fr="Renseignement de la vitesse de rotation"), - ),# fin VITESSE_CONSTANTE - VITESSE_VARIABLE = BLOC(condition = "VITESSE == 'VARIABLE' ", fr="Vitesse de rotation variable", regles=UN_PARMI('LINEAIRE','EXPONENTIELLE','FORMULE'), - LINEAIRE = FACT(statut='f',min=1,max=1,fr="Renseignement de la fonction lineaire de la vitesse de rotation", - VITESSE_INITIALE = SIMP(statut='o',typ='R',min=1,max=1,defaut=None,fr="Renseignement de la vitesse de rotation initiale (en tr/min)",), - VITESSE_FINALE = SIMP(statut='o',typ='R',min=1,max=1,defaut=None,fr="Renseignement de la vitesse de rotation finale (en tr/min)",), - DEPHASAGE = SIMP(statut='o',typ='R',min=1,max=1,defaut=None,fr="Renseignement de la postion angulaire (en degre)"), - PAS_MAJ = SIMP(statut='f',typ='R',min=1,max=1,defaut=None,fr="Renseignement du pas (ou liste) de mise a jour des matrices des paliers (en tours)"), - ),# fin LINEAIRE - EXPONENTIELLE = FACT(statut='f',min=1,max=1,fr="Renseignement de la fonction exponentielle de la vitesse de rotation", - VITESSE_INITIALE = SIMP(statut='o',typ='R',min=1,max=1,defaut=None,fr="Renseignement de la vitesse de rotation initiale (en tr/min)",), - VITESSE_FINALE = SIMP(statut='o',typ='R',min=1,max=1,defaut=None,fr="Renseignement de la vitesse de rotation finale (en tr/min)",), - DEPHASAGE = SIMP(statut='o',typ='R',min=1,max=1,defaut=None,fr="Renseignement de la postion angulaire (en degre)"), - LAMBDA = SIMP(statut='o',typ='R',min=1,max=1,defaut=None,fr="Renseignement du parametre de l'exponentielle"), - PAS_MAJ = SIMP(statut='f',typ='R',min=1,max=1,defaut=None,fr="Renseignement du pas (ou liste) de mise a jour des matrices des paliers (en tours)"), - ),# fin VITESSE_EXPONENTIELLE - FORMULE = FACT(statut='f',min=1,max=1,fr="Renseignement de la fonction de la vitesse de rotation", - FICHIER = SIMP(statut='o',typ=('Fichier','Formule vitesse rotation (*.*)'),min=1,max=1,defaut=None,fr="Renseignement du fichier contenant les fonctions de la vitesse de rotation"), - OM = SIMP(statut='o',typ='TXM',min=1,max=1,defaut=None,fr="Renseignement du nom de la formule de position angulaire (max 8 caractere)"), - PHI = SIMP(statut='o',typ='TXM',min=1,max=1,defaut=None,fr="Renseignement du nom de la formule de vitesse angulaire (max 8 caractere)"), - ACC = SIMP(statut='o',typ='TXM',min=1,max=1,defaut=None,fr="Renseignement du nom de la formule d'acceleration angulaire (max 8 caractere)"), - PAS_MAJ = SIMP(statut='f',typ='R',min=1,max='**',defaut=None,fr="Renseignement du pas (ou liste) de mise a jour des matrices des paliers (en tours)"), - ),# fin VITESSE_EXPONENTIELLE - ),# fin VITESSE_VARIABLE - #POIDS_PROPRE = SIMP(statut='o',typ='TXM',into=('OUI','NON'),defaut='NON',fr="Choix d'application du poids propre (pesanteur)"), - # 20121018 retrait de defaut_fn a la demande de EDF - #CHARGES = SIMP(statut='o',typ='TXM',into=('BALOURD','DEFAUT_FN','DELIGNAGE','EXTERNE'),defaut=None,min=1,max=1,fr="Choix du type de charge a appliquer"), - # 20121119 retrait de delignage - #CHARGES = SIMP(statut='o',typ='TXM',into=('BALOURD','DELIGNAGE','EXTERNE'),defaut=None,min=1,max=1,fr="Choix du type de charge a appliquer"), - CHARGES = SIMP(statut='o',typ='TXM',into=('BALOURD','FORCE','HARMONIQUE'),defaut=None,min=1,max=1,fr="Choix du type de charge a appliquer"), - BALOURD = BLOC(condition = "CHARGES == 'BALOURD' ",fr="Charge balourd appliquee", - POSITION = SIMP(statut='o',typ='R',min=1,max=1,defaut=None,fr="Renseignement de la coordonnee de la charge balourd"), - MAGNITUDE = SIMP(statut='o',typ='R',min=1,max=1,defaut=None,fr="Renseignement de la magnitude de la charge balourd (en kg.m)"), - FONC_APPLI = SIMP(statut='o',typ='R',min=1,max='**',defaut=None,fr="Renseignement de la fonction appliquee de la charge balourd (autant de valeurs que de vitesses de rotation)"), - PHASE_DEG = SIMP(statut='o',typ='R',min=1,max=1,defaut=None,fr="Renseignement du decalage de la phase de la charge balourd (en degres)"), - INST_APPLI= SIMP(statut='f',typ='R',min=1,max=1,defaut=0,fr="Renseigner l'instant pour déclencher le balourd"), - TEMPS_MONTEE=SIMP(statut='f',typ='R',min=1,max=1,defaut=0,fr="Renseigner le temps pour la montée jusqu'à la valeur finale du balourd"), - ),# fin BALOURD - FORCE = BLOC(condition = "CHARGES == 'FORCE' ",fr="Application d'une force", - PARAM_FORCE = FACT(statut='o',min=1,max='**',fr="Parametres de la force", - POSITION = SIMP(statut='o',typ='R',defaut=None,fr="Renseignement de la coordonnee de la force"), - MAGNITUDE = SIMP(statut='o',typ='R',min=3,max=3,defaut=None,fr="Renseignement de la magnitude de la force"), - FONC_APPLI = SIMP(statut='f',typ='R',min=2,max=2,defaut=None,fr="Renseignement de la fonction appliquee"), - ), # fin PARAM_FORCE - ), # fin FORCE - HARMONIQUE = BLOC(condition = "CHARGES == 'HARMONIQUE' ",fr="Charge harmonique appliquee", - POSITION = SIMP(statut='o',typ='R',min=1,max=1,defaut=None,fr="Renseignement de la coordonnee de la charge harmonique"), - PUIS_PULS = SIMP(statut='o',typ='I',min=1,max=1,into=(0,1,2),defaut=None,fr="Renseignement de la puissance de pulsation de la charge harmonique"), - PULSATION = SIMP(statut='o',typ='R',min=1,max=1,defaut=None,fr="Renseignement de la pulsation d'excitation harmonique (en rad/s)"), - MAGNITUDE = SIMP(statut='o',typ='R',min=1,max=1,defaut=None,fr="Renseignement de la magnitude de la charge harmonique, (unite : N.s^i (avec i = PUIS_PULS)"), - FONC_APPLI = SIMP(statut='o',typ='R',min=1,max='**',defaut=None,fr="Renseignement de la fonction appliquee de la charge harmonique (autant de valeurs que de vitesses de rotation)"), - PHASE_DEG = SIMP(statut='o',typ='R',min=1,max=1,defaut=None,fr="Renseignement du decalage de la phase de la charge harmonique (en degres)"), - TYPE_DDL = SIMP(statut='o',typ='TXM',min=1,max=1,into=('DX','DRX','DY','DRY'),defaut=None,fr="Renseignement du type de DDL excite sur lequel porte la charge"), - ), # fin HARMONIQUE - # 20121018 retrait de defaut_fn a la demande de EDF - #DEFAUT_FN = BLOC(condition = "CHARGES == 'DEFAUT_FN' ",fr="Charge defaut de fibre neutre appliquee", - #POSITION = SIMP(statut='o',typ='R',min=1,max=1,defaut=None,fr="Renseignement de la coordonnee du defaut de fibre neutre"), - #TR_Y = SIMP(statut='o',typ='R',min=1,max=1,defaut=None,fr="Renseignement du vecteur de translation en Y du defaut de fibre neutre"), - #TR_Z = SIMP(statut='o',typ='R',min=1,max=1,defaut=None,fr="Renseignement du vecteur de translation en Z du defaut de fibre neutre"), - #ROT_Y = SIMP(statut='o',typ='R',min=1,max=1,defaut=None,fr="Renseignement du moment de rotation en Y du defaut de fibre neutre"), - #ROT_Z = SIMP(statut='o',typ='R',min=1,max=1,defaut=None,fr="Renseignement du moment de rotation en Z du defaut de fibre neutre"), - #), # fin DEFAUT_FN - # 20121119 retrait de delignage - #DELIGNAGE = BLOC(condition = "CHARGES == 'DELIGNAGE' ",fr="Application d'un delignage", - #PARAM_DELIGNAGE = FACT(statut='o',min=1,max='**',fr="Parametres du delignage", - #PALIERS = SIMP(statut='o',typ='TXM',min=1,max=1,defaut=None,fr="Renseignement du nom d'un palier deligne"), - #VALEURS = SIMP(statut='o',typ='R',min=3,max=3,defaut=None,fr="Renseignement des valeurs du delignage du palier"), - #), # fin PARAM_DELIGNAGE - #), # fin DELIGNAGE - # retrait force fichier externe - #EXTERNE = BLOC(condition = "CHARGES == 'EXTERNE' ",fr="Charge externe appliquee", - #POSITION = SIMP(statut='o',typ='R',min=1,max=1,defaut=None,fr="Renseignement de la coordonnee de la charge externe"), - #FONC_APPLI = SIMP(typ=('Fichier','Charge Externe (*.csv)'),docu='',min=1,max=1,statut='o',defaut=None,fr="Renseignement de la fonction appliquee à la charge externe (fichier cvs)"), - #), # fin EXTERNE - ETAT_INIT = FACT(statut='o',fr="Renseignement de l'etat initial", - #RESULTAT = SIMP(statut='o',typ=('sd_resultat'),max=1,defaut=None,fr="Choix de la structure de donnees resultat de code aster "), - RESULTAT = SIMP(statut='f',typ='TXM',max=1,defaut=None,fr="Choix de la structure de donnees resultat de code aster "), - INST_INIT = SIMP(statut='f',typ='R',max=1,defaut=0.0,fr="Renseignement de l'instant initial"), - ), # fin ETAT_INIT - PARAM_TEMPS = SIMP(statut='o',typ='TXM',max=1,into=('PAS','LISTE'),defaut=None,fr="Choix du type de parametrage temporel"), - #PAS = BLOC(condition = "VITESSE == 'VARIABLE'",fr="Renseignement des parametres des pas", - PAS = BLOC(condition = "PARAM_TEMPS == 'PAS'",fr="Renseignement des parametres des pas", - TEMPS_PAS = SIMP(statut='o',typ='R',max=1,defaut=None,fr="Renseignement du pas de temps (en s)"), - INST_INI = SIMP(statut='f',typ='R',max=1,defaut=None,fr="Renseignement de l'instant initial du pas"), - INST_FIN = SIMP(statut='o',typ='R',max=1,defaut=None,fr="Renseignement de l'instant final du pas"), - ), # fin TEMPS_PAS - LIST_INST = BLOC(condition = "PARAM_TEMPS == 'LISTE'",fr="Renseignement d'une liste de pas", - LISTE = SIMP(statut='o',typ='R',min=1,max='**',defaut=None,fr="Renseignement d'une liste de pas"), - ), # fin LIST_INST - PAS_ARCHIVAGE = SIMP(statut='o',typ='I',max=1,defaut=None,fr="Renseignement du pas d'archivage",), - SCHEMA_TEMPS = SIMP(statut='o',typ='TXM',max=1,into=('NEWMARK','EULER','WILSON','ADAPT_ORDRE1','ADAPT_ORDRE2','DIFF_CENTRE'),defaut='NEWMARK',fr="Choix d'un schema temporel"), - NEWMARK = BLOC(condition = "SCHEMA_TEMPS == 'NEWMARK' ",fr="Choix de la methode de NEWMARK", - BETA = SIMP(statut='f',typ='R',max=1,defaut=0.25,fr="Renseignement de la valeur beta pour la methode de NEWMARK"), - GAMMA = SIMP(statut='f',typ='R',max=1,defaut=0.25,fr="Renseignement de la valeur gamma pour la methode de NEWMARK"), - ),# fin NEWMARK - WILSON = BLOC(condition = "SCHEMA_TEMPS == 'WILSON' ",fr="Choix de la methode de WILSON", - THETA = SIMP(statut='f',typ='R',max=1,defaut=1.4,fr="Renseignement de la valeur theta pour la methode de WILSON"), - ), # fin WILSON - #Ionel le 19122012, FISSURE n'est pas dans la V1 - #FISSURE = BLOC(condition = "BASE_CALCUL == 'MODALE' ",fr="Choix de calcul avec fissure", - # EMPLACEMENT = FACT(statut='o',fr="Renseignement de l'emplacement de la fissure", - # regles=UN_PARMI('POSITION','NOEUD'), - # POSITION = SIMP(statut='f',typ='R',max=1,defaut=None,fr="Renseignement de la coordonnee de la fissure"), - # NOEUD = SIMP(statut='f',typ='TXM',max=1,defaut=None,fr="Renseignement de l'etiquette du noeud de la fissure"), - # ), # fin EMPLACEMENT - # VITE_ROTA = SIMP(statut='f',typ='R',max=1,defaut=None,fr="Renseignement de ?? "), - # ANGL_INIT = SIMP(statut='o',typ='R',max=1,defaut=None,fr="Renseignement de ?? "), - # K_PHI = SIMP(statut='o',typ=('Fichier','K.PHI (*.*)'),docu='',min=1,max=1,defaut=None,fr="Renseignement de la loi de comportement en raideur de la fissure"), - # DK_DPHI = SIMP(statut='o',typ=('Fichier','DK.DPHI (*.*)'),docu='',min=1,max=1,defaut=None,fr="Renseignement de la deivee de la loi de comportement en raideur de la fissure"), - #), # fin FISSURE - - ## POST_TRAITEMENTS de l'analyse transitoire - POST_TRAITEMENTS = FACT(statut='o',max='**',fr="Choix des post-traitements", - TYPE = SIMP(statut='o',typ='TXM',into=('DEPL_ABS','DEPL_RELA','EFFORTS_PAL','CONTRAINTES'),defaut=None,fr="Choix du type de post-traitement"), - DEPL = BLOC(condition = "TYPE in ('DEPL_ABS','DEPL_RELA') ",fr="Deplacement",regles=UN_PARMI('POSITION','PALIER'), - #POSITION_DEPL = SIMP(statut='o',typ='R',min=1,max=1,defaut=None,fr="Renseignement de la coordonnee du deplacement"), - POSITION = SIMP(statut='f',typ='R',min=1,max=1,defaut=None,fr="Renseignement de la coordonnee du deplacement"), - PALIER = SIMP(statut='f',typ='TXM',max=1,defaut=None,fr="Renseignement de l'etiquette du palier"), - ), # fin DEPL - # 20121119 pas de mots-cles specifique pour efforts_paliers - #EFFORTS_PAL = BLOC(condition = "TYPE == 'EFFORTS_PAL'", fr = "Efforts paliers", - #PALIER = SIMP(statut='o',typ='TXM',max=1,defaut=None,fr="Renseignement de l'etiquette du palier"), - #), # fin EFFORTS_PAL - CONTRAINTES = BLOC(condition = "TYPE == 'CONTRAINTES' ",fr="Contraintes", - regles=UN_PARMI('POSITION','ZONE','TOUT'), - POSITION = SIMP(statut='f',typ='R',max=1,defaut=None,fr="Renseignement de la coordonnee de la contrainte"), - ZONE = SIMP(statut='f',typ='TXM',max=1,defaut=None,fr="Renseignement de l'etiquette de la zone de la contrainte"), - TOUT = SIMP(statut='f',typ='TXM',into=('OUI'),max=1,fr="tout"), - ), # fin CONTRAINTES - ), # fin POST_TRAITEMENTS - - ), # fin ANALYSE_TRANSISTOIRE - - -### ----- CALCUL COUPLE CODE_ASTER/EYDOS ----- ## - ANALYSE_TRANSITOIRE_ACCIDENTEL = BLOC(condition = "TYPE_ANALYSE == 'TRANSITOIRE_ACCIDENTEL' ",fr="Analyse transitoire accidentelle", - #BASE_MODALE = FACT(statut='o', fr="Choix des parametres de la base modale", - POIDS = SIMP(statut='o',typ='TXM',into=('OUI','NON'),defaut='OUI',fr="Choix d'application d'un poids"), - BASE_MODALE = BLOC(condition = "True", fr="Choix des parametres de la base modale", - regles=UN_PARMI('NB_MODES','FREQ_MAX'), - NB_MODES = SIMP(statut='f',typ='I',min=1,max=1,defaut=None,fr="Renseignement du nombre de mode"), - FREQ_MAX = SIMP(statut='f',typ='R',min=1,max=1,defaut=None,fr="Renseignement de la frequence maximale"), - ),# fin BASE_MODALE - # cft 20131217 suppression amortissement reduit - #AMORTISSEMENT = SIMP(statut='o', typ='TXM',into=('STRUCTUREL','REDUIT'),defaut=None,fr="Choix du type d'amortissement"), - AMORTISSEMENT = SIMP(statut='o', typ='TXM',into=('STRUCTUREL'),defaut=None,fr="Choix du type d'amortissement"), - AMOR_REDUIT = BLOC(condition = "AMORTISSEMENT == 'REDUIT' ", - #LIST_AMOR = SIMP(statut='o', typ='R', min=1,max='**',defaut=None,fr="Renseignement de la liste des amortissements"), - LIST_AMOR = SIMP(statut='o', typ='R', min=1,max='**',defaut=None,fr="Renseignement de la liste des amortissements modaux reduits (en %), la taille de la liste doit etre egale au nombre de modes"), - ),# fin AMOR_REDUIT - VITESSE_ROTATION = SIMP(statut='o',typ='R',min=1,max=1,defaut=None,fr="Renseignement de la vitesse de rotation"), - #POIDS_PROPRE = SIMP(statut='o',typ='TXM',into=('OUI','NON'),defaut='NON',fr="Choix d'application du poids propre (pesanteur)"), - # 20121018 retrait de defaut_fn a la demande de EDF - #CHARGES = SIMP(statut='o',typ='TXM',into=('BALOURD','DEFAUT_FN','DELIGNAGE','EXTERNE','EFFORTS_PALIERS'),defaut=None,min=1,max=1,fr="Choix du type de charge a appliquer"), - #CHARGES = SIMP(statut='o',typ='TXM',into=('BALOURD','DELIGNAGE','EXTERNE','EFFORTS_PALIERS'),defaut=None,min=1,max=1,fr="Choix du type de charge a appliquer"), - CHARGES = SIMP(statut='o',typ='TXM',into=('BALOURD','EXTERNE'),defaut=None,min=1,max=1,fr="Choix du type de charge a appliquer"), - BALOURD = BLOC(condition = "CHARGES == 'BALOURD' ",fr="Charge balourd appliquee", - POSITION = SIMP(statut='o',typ='R',min=1,max=1,defaut=None,fr="Renseignement de la coordonnee de la charge balourd"), - MAGNITUDE = SIMP(statut='o',typ='R',min=1,max=1,defaut=None,fr="Renseignement de la magnitude de la charge balourd (en kg.m)"), - FONC_APPLI = SIMP(statut='o',typ='R',min=1,max='**',defaut=None,fr="Renseignement de la fonction appliquee de la charge balourd (autant de valeurs que de vitesses de rotation)"), - PHASE_DEG = SIMP(statut='o',typ='R',min=1,max=1,defaut=None,fr="Renseignement du decalage de la phase de la charge balourd (en degres)"), - INST_APPLI= SIMP(statut='f',typ='R',min=1,max=1,defaut=0,fr="Renseigner l'instant pour déclencher le balourd"), - TEMPS_MONTEE=SIMP(statut='f',typ='R',min=1,max=1,defaut=0,fr="Renseigner le temps pour la montée jusqu'à la valeur finale du balourd"), - ),# fin BALOURD - # a commenter - # 20121018 retrait de defaut_fn a la demande de EDF - #DEFAUT_FN = BLOC(condition = "CHARGES == 'DEFAUT_FN' ",fr="Charge defaut de fibre neutre appliquee", - #POSITION = SIMP(statut='o',typ='R',min=1,max=1,defaut=None,fr="Renseignement de la coordonnee du defaut de fibre neutre"), - #TR_Y = SIMP(statut='o',typ='R',min=1,max=1,defaut=None,fr="Renseignement du vecteur de translation en Y du defaut de fibre neutre"), - #TR_Z = SIMP(statut='o',typ='R',min=1,max=1,defaut=None,fr="Renseignement du vecteur de translation en Z du defaut de fibre neutre"), - #ROT_Y = SIMP(statut='o',typ='R',min=1,max=1,defaut=None,fr="Renseignement du moment de rotation en Y du defaut de fibre neutre"), - #ROT_Z = SIMP(statut='o',typ='R',min=1,max=1,defaut=None,fr="Renseignement du moment de rotation en Z du defaut de fibre neutre"), - #), # fin DEFAUT_FN - #DELIGNAGE = BLOC(condition = "CHARGES == 'DELIGNAGE' ",fr="Application d'un delignage", - #PARAM_DELIGNAGE = FACT(statut='o',min=1,max='**',fr="Parametres du delignage", - #PALIERS = SIMP(statut='o',typ='TXM',min=1,max=1,defaut=None,fr="Renseignement du nom d'un palier deligne"), - #VALEURS = SIMP(statut='o',typ='R',min=3,max=3,defaut=None,fr="Renseignement des valeurs du delignage du palier"), - #), # fin PARAM_DELIGNAGE - #), # fin DELIGNAGE - EXTERNE = BLOC(condition = "CHARGES == 'EXTERNE' ",fr="Charge externe appliquee", - POSITION = SIMP(statut='o',typ='R',min=1,max=1,defaut=None,fr="Renseignement de la coordonnee de la charge externe"), - FONC_APPLI = SIMP(typ=('Fichier','Charge Externe (*.csv)'),docu='',min=1,max=1,statut='o',defaut=None,fr="Renseignement de la fonction appliquee à la charge externe (fichier cvs)"), - ), # fin EXTERNE - #EFFORTS_PALIERS = BLOC(condition = "CHARGES == 'EFFORTS_PALIERS' ",fr="Application d'un effort palier", - #PALIER = SIMP(statut='o',typ='TXM',max=1,defaut=None,fr="Renseignement de l'etiquette du palier de l'effort"), - #VALEURS = SIMP(statut='o',typ='R',min=3,max=3,defaut=None,fr="Renseignment de la valeur de l'effort sur le palier"), - #), # fin EFFORTS_PALIERS - ETAT_INIT = FACT(statut='o',fr="Renseignement de l'etat initial", - #RESULTAT = SIMP(statut='o',typ=('sd_resultat'),max=1,defaut=None,fr="Choix de la structure de donnees resultat de code aster "), - # 20121126 - #RESULTAT = SIMP(statut='o',typ='TXM',max=1,defaut=None,fr="Choix de la structure de donnees resultat de code aster "), - INST_INIT = SIMP(statut='f',typ='R',max=1,defaut=None,fr="Renseignement de l'instant initial"), - ), # fin ETAT_INIT - #PARAM_TEMPS = SIMP(statut='o',typ='TXM',max=1,into=('PAS','LIST_INST'),defaut=None,fr="Choix du type de parametrage temporel"), - # 20121126 - PARAM_TEMPS = SIMP(statut='o',typ='TXM',max=1,into=('PAS'),defaut="PAS",fr="Choix du type de parametrage temporel",), - PAS = BLOC(condition = "PARAM_TEMPS == 'PAS' ",fr="Renseignement des parametres des pas", - PAS_ASTER = SIMP(statut='o',typ='R',max=1,defaut=None,fr="Renseignement du pas de temps Aster (en s)",), - PAS_EDYOS = SIMP(statut='o',typ='R',max=1,defaut=None,fr="Renseignement du pas de temps Edyos (en s)",), - INST_FIN = SIMP(statut='o',typ='R',max=1,defaut=None,fr="Renseignement de l'instant final (en s)",), - ), # fin TEMPS_PAS - #LIST_INST = BLOC(condition = "PARAM_TEMPS == 'LIST_INST' ",fr="Renseignement d'une liste de pas", - #LISTE = SIMP(statut='f',typ='R',min=1,max='**',defaut=None,fr="Renseignement d'une liste de pas"), - #), # fin LIST_INST - PAS_ARCHIVAGE = SIMP(statut='o',typ='I',max=1,defaut=None,fr="Renseignement du pas d'archivage",), - PARA_MEM = SIMP(statut='f',typ='I',max=1,defaut=6400,fr="Renseigner la taille de la memoire en Mo",), - PARA_CPU = SIMP(statut='f',typ='I',max=1,defaut=10000,fr="Renseigner le temps CPU max en secondes",), - SCHEMA_TEMPS = SIMP(statut='o',typ='TXM',max=1,into=('EULER','ADAPT_ORDRE1','ADAPT_ORDRE2'),defaut='ADAPT_ORDRE2',fr="Choix d'un schema temporel"), - - ## POST_TRAITEMENTS de l'analyse transitoire - POST_TRAITEMENTS = FACT(statut='o',fr="Choix des post-traitements", - TYPE = SIMP(statut='o',typ='TXM',into=('DEPL_ABS','DEPL_RELA','EFFORTS_PAL','CONTRAINTES'),defaut=None,fr="Choix du type de post-traitement"), - DEPL = BLOC(condition = "TYPE in ('DEPL_ABS','DEPL_RELA') ",fr="Deplacement", - POSITION = SIMP(statut='o',typ='R',min=1,max=1,defaut=None,fr="Renseignement de la coordonnee du deplacement"), - PALIER = SIMP(statut='f',typ='TXM',max=1,defaut=None,fr="Renseignement de l'etiquette du palier"), - ), # fin DEPL - # pas d'info à rentrer pour les efforts palier (post-traitement sur tout les paliers) - #EFFORTS_PAL = BLOC(condition = "TYPE == 'EFFORTS_PAL'", fr = "Efforts paliers", - #PALIER = SIMP(statut='o',typ='TXM',max=1,defaut=None,fr="Renseignement de l'etiquette du palier"), - #), # fin EFFORTS_PAL - CONTRAINTES = BLOC(condition = "TYPE == 'CONTRAINTES' ",fr="Contraintes", - regles=UN_PARMI('POSITION','ZONE','TOUT'), - POSITION = SIMP(statut='f',typ='R',max=1,defaut=None,fr="Renseignement de la coordonnee de la contrainte"), - ZONE = SIMP(statut='f',typ='TXM',max=1,defaut=None,fr="Renseignement de l'etiquette de la zone de la contrainte"), - TOUT = SIMP(statut='f',typ='TXM',into=('OUI'),max=1,fr="tout"), - ), # fin CONTRAINTES - ), # fin POST_TRAITEMENTS - - - ), # fin ANALYSE_TRANSITOIRE_ACCIDENTEL - -)# fin SPECIFICATION_ANALYSE diff --git a/SPECA/SPECA_Cata_V2016.py b/SPECA/SPECA_Cata_V2016.py deleted file mode 100644 index fddaecb4..00000000 --- a/SPECA/SPECA_Cata_V2016.py +++ /dev/null @@ -1,415 +0,0 @@ -## -*- coding: utf-8 -*- -# -## -------------------------------------------------- -## debut entete -## -------------------------------------------------- -# -from Accas import * - - -# rend disponible le type tuple (liste) -import types -class Tuple: - def __init__(self,ntuple): - self.ntuple=ntuple - - def __convert__(self,valeur): - if type(valeur) == types.StringType: - return None - if len(valeur) != self.ntuple: - return None - return valeur - - def info(self): - return "Tuple de %s elements" % self.ntuple - - __repr__=info - __str__=info - - - -# -#CONTEXT.debug = 1 - -VERSION_CATALOGUE="2016.0.0"; - -JdC = JDC_CATA ( code = 'SPECA', - execmodul = None, - regles=(AU_MOINS_UN('SPECIFICATION_ANALYSE',), - AU_PLUS_UN('SPECIFICATION_ANALYSE',), - ), - )# Fin JDC_CATA - -## ----- SPECIFICATION DE L'ETUDE ----- ## -SPECIFICATION_ANALYSE= MACRO (nom = 'SPECIFICATION_ANALYSE', - op = None, - UIinfo = {"groupes":("Machine tournante",)}, - fr = "Specification des analyses", - TYPE_ANALYSE = SIMP(statut='o', typ='TXM',into=('STATIQUE', 'MODALE', 'HARMONIQUE', 'TRANSITOIRE', 'TRANSITOIRE_ACCIDENTEL','SYNTHESE')), - # pour V1.1 flexion uniquement - #TYPE_COMPORTEMENT = SIMP(statut='o', typ='TXM',into=('FLEXION',),defaut='FLEXION',fr="Renseignement du type de comportement voulu"), - TYPE_COMPORTEMENT = BLOC(condition = "TYPE_ANALYSE in ('MODALE','HARMONIQUE','STATIQUE','TRANSITOIRE','TRANSITOIRE_ACCIDENTEL')", - FLEXION = SIMP(statut='o',typ='TXM',into=('OUI',),defaut='OUI',fr="Prise en compte la flexion de la ligne d'arbres: obligatoire"), - TORSION = SIMP(statut='f',typ='TXM',into=('OUI','NON'),defaut='NON',fr="Choix de la prise en compte la torsion de la ligne d'arbres"), - COMPRESSION = SIMP(statut='f',typ='TXM',into=('OUI','NON'),defaut='NON',fr="Choix de la prise en compte la traction/compression de la ligne d'arbres"), - ), - - SURCHARGE=BLOC(condition = "TYPE_ANALYSE in ('MODALE','HARMONIQUE','STATIQUE','TRANSITOIRE','TRANSITOIRE_ACCIDENTEL','SYNTHESE')",statut="f", - TEMPLATE=SIMP( statut="f", - typ=("Fichier","Fichier Template (*.tpl)"), - min=1,max=1, - fr="Utiliser un template d'analyse modifie" - ), - PARAMETRES= FACT(statut='f',min=1,max='**',fr="Definition et renseignement des parametres utilises dans le template surcharge", - CLE=SIMP(statut='o',typ='TXM',defaut=None,fr="Nom du parametre dans le template"), - TYPE=SIMP(statut='o',typ='TXM',into=('ENTIER','REEL','CHAINE','FICHIER','REPERTOIRE'),fr="Nature du parametre a renseigner"), - ENTIER=BLOC(condition="TYPE=='ENTIER'", - VALUE=SIMP(statut='o',typ='I',defaut=0,fr="Renseignement d'un nombre entier"), - ), - REEL=BLOC(condition="TYPE=='REEL'", - VALUE=SIMP(statut='o',typ='R',defaut=0.0,fr="Renseignement d'un nombre reel"), - ), - CHAINE=BLOC(condition="TYPE=='CHAINE'", - VALUE=SIMP(statut='o',typ='TXM',defaut='',fr="Renseignement d'une chaine de caracteres"), - ), - FICHIER=BLOC(condition="TYPE=='FICHIER'", - VALUE=SIMP(statut='o',typ=("Fichier","All files (*.*)"),fr="Renseignement d'un fichier") - ), - REPERTOIRE =BLOC(condition="TYPE=='REPERTOIRE'", - VALUE=SIMP(statut='o',typ="Repertoire",fr="Renseignement d'un repertoire") - ), - - ), - ), - - - -### ----- CALCUL STATIQUE ----- ## - ANALYSE_STATIQUE = BLOC(condition = "TYPE_ANALYSE == 'STATIQUE' ",fr="Analyse statique (vitesse de rotation nulle de la ligne d'arbres)", - CHARGES= FACT(statut='o',min=1,max='**',fr="Definition et renseignement du chargement applique", - TYPE = SIMP(statut='o',typ='TXM',into=('POIDS','FORCE','MOMENT','DELIGNAGE'),defaut=None,min=1,max=1,fr="Choix du type de chargement a appliquer"), - POIDS = BLOC(condition = "TYPE == 'POIDS' ",fr="Prise en compte du champ de pesanteur", - GRAVITE = SIMP(statut='o',typ='R',defaut=9.81,fr="Renseignement de l'intensite de la gravite (m/s^2)"), - DIRECTION = SIMP(statut='o',typ='R',min=3,max=3,defaut=(1,0,0),fr="Renseignement de la direction de la force de gravite"), - ), # fin POIDS - FORCE = BLOC(condition = "TYPE == 'FORCE' ",fr="Application d'une force ponctuelle", - POSITION = SIMP(statut='o',typ='R',defaut=None,fr="Renseignement de la position axiale ou s'applique la force (m)"), - AMPLITUDE = SIMP(statut='o',typ='R',min=3,max=3,defaut=None,fr="Renseignement des 3 composantes decrivant la force (N)"), - #FONC_APPLI = SIMP(statut='f',typ='R',min=2,max=2,defaut=None,fr="Renseignement de la fonction appliquee"), - ), # fin FORCE - MOMENT = BLOC(condition = "TYPE == 'MOMENT' ",fr="Application d'un moment ponctuel", - POSITION = SIMP(statut='o',typ='R',defaut=None,fr="Renseignement de la position axiale ou s'applique le moment (m)"), - AMPLITUDE = SIMP(statut='o',typ='R',min=3,max=3,defaut=None,fr="Renseignement des 3 composantes decrivant le moment (N/m)"), - ), # fin MOMENT - DELIGNAGE = BLOC(condition = "TYPE == 'DELIGNAGE' ",fr="Application d'un delignage sur un ou plusieurs paliers", - NOM_PALIER = SIMP(statut='o',typ='TXM',min=1,max=1,defaut=None,fr="Renseignement du nom du palier deligne"), - DX = SIMP(statut='o',typ='R',min=1,max=1,defaut=None,fr="Renseignement du delignage suivant X du palier (m)"), - DY = SIMP(statut='o',typ='R',min=1,max=1,defaut=None,fr="Renseignement du delignage suivant Y du palier (m)"), - ), # fin Delignage - ), #fin CHARGES - - # POST-TRAITEMENTS DU CALCUL STATIQUE - POST_TRAITEMENTS = FACT(statut='o',max='**',fr="Definition et renseignement des post-traitements", - CONTRAINTES = SIMP(statut='o',typ='TXM',into=('OUI', 'NON'),defaut='NON',fr="Export des contraintes en tout noeud de la ligne d'arbres"), - ), #fin POST_TRAITEMENTS - ),# fin ANALYSE_STATIQUE - -### ----- CALCUL MODALE ----- ## - ANALYSE_MODALE = BLOC(condition = "TYPE_ANALYSE == 'MODALE' ",fr="Analyse modale de la ligne d'arbres", - BASE_CALCUL = SIMP(statut='o',typ="TXM",into=('MODALE','PHYSIQUE'),defaut=None,fr="Choix du type de resolution de l'analyse modale (sur base physique ou sur base modale)"), - BASE_MODALE = BLOC(condition="BASE_CALCUL=='MODALE'",fr="Resolution sur base modale", - regles=UN_PARMI('NB_MODES','FREQ_MAX'), - NB_MODES=SIMP(statut='f',typ='I',min=1,max=1,defaut=None,fr="Renseignement du nombre de modes constituant la base de projection"), - FREQ_MAX=SIMP(statut='f',typ='R',min=1,max=1,defaut=None,fr="Renseignement de la frequence maximale des modes constituant la base de projection (Hz)"), - ), # fin BASE_MODALE - AMORTISSEMENT = SIMP(statut='o',typ='TXM',min=1,max=1,into=('OUI','NON'),defaut='OUI',fr="Choix de la prise en compte de l'amortissment"), - GYROSCOPIE = SIMP(statut='o',typ='TXM',min=1,max=1,into=('OUI','NON'),defaut='OUI',fr="Choix de la prise en compte de la gyroscopie"), - VITESSE_ROTATION = SIMP(statut='o',typ='R',min=1,max='**',defaut=None,fr="Renseignement de la liste des vitesses de rotation etudiees (tr/min)"), - OPTION_CALCUL = SIMP(statut='o',typ='TXM',min=1,max=1,into=('PLUS_PETITE','CENTRE'),defaut=None,fr="Choix de l'option de calcul"), - PLUS_PETITE = BLOC(condition="OPTION_CALCUL=='PLUS_PETITE'",fr="Calcul des n premieres frequences", - NMAX_FREQ = SIMP(statut='o',typ='I',min=1,max=1,defaut=None,fr="Renseignement du nombre maximal de frequences a calculer"), - ), # fin PLUS_PETITE - CENTRE = BLOC(condition="OPTION_CALCUL=='CENTRE'",fr="Calcul d'un nombre n de frequences autour d'une frequence donnee", - FREQ = SIMP(statut='o',typ='R',min=1,max=1,defaut=None,fr="Renseignement de la frequence centrale (Hz)"), - NMAX_FREQ = SIMP(statut='o',typ='I',min=1,max=1,defaut=None,fr="Renseignement du nombre maximal de frequences"), - ), # fin CENTRE - METHODE=SIMP(statut='f',typ='TXM',min=1,max=1,into=('QZ','SORENSEN'),defaut='SORENSEN',fr="Choix de la methode de resolution"), - - # POST-TRAITEMENTS DU CALCUL MODAL - POST_TRAITEMENTS = FACT(statut='o',max='**',fr="Definition et renseignement des post-traitements", - TYPE = SIMP(statut='o',typ='TXM',into=('AUCUN','DIAG_CAMPBELL'), defaut = 'AUCUN'), - DIAG_CAMPBELL = BLOC(condition="TYPE == 'DIAG_CAMPBELL'",fr="Choix des options du diagramme de Campbell", - PRECESSION = SIMP(statut='o',typ='TXM',min=1,max=1,defaut=None,into=('SOMME','PLUS_GRANDE_ORBITE'),fr="Critere de determination de la precession"), - SUIVI= SIMP(statut='o',typ='TXM',min=1,max=1,defaut=None,into=('SANS_TRI','TRI_PREC','TRI_FORM_MOD'),fr="Methode de suivi des modes"), - NB_MODES = SIMP(statut='o',typ='I',min=1,max=1,defaut=None,fr="Nombre de modes affiches dans le diagramme, doit etre inferieur au nombre de modes calcules (NMAX_FREQ)"), - ), # fin DIAG_CAMPBELL - ),# fin POST_TRAITEMENTS - ), # fin ANALYSE_MODALE - -## ----- CALCUL HARMONIQUE ----- ## - ANALYSE_HARMONIQUE = BLOC(condition = "TYPE_ANALYSE == 'HARMONIQUE' ",fr="Analyse harmonique de la ligne d'arbres", - - ## specification calcul harmonique - BASE_CALCUL = SIMP(statut='o',typ='TXM',into=('PHYSIQUE','MODALE'),defaut=None,fr="Choix du type de resolution de l'analyse modale (sur base physique ou sur base modale)"), - BASE_MODALE = BLOC(condition = "BASE_CALCUL == 'MODALE' ", fr="Resolution sur base modale", - #MODALE = FACT(statut='o', - regles=UN_PARMI('NB_MODES','FREQ_MAX'), - NB_MODES = SIMP(statut='f',typ='I',min=1,max=1,defaut=None,fr="Renseignement du nombre de modes constituant la base de projection"), - FREQ_MAX = SIMP(statut='f',typ='R',min=1,max=1,defaut=None,fr="Renseignement de la frequence maximale des modes constituant la base de projection (Hz)"), - #),# fin MODALE - ),# fin BASE_MODALE - AMORTISSEMENT_P = BLOC(condition = "BASE_CALCUL == 'PHYSIQUE' ", - AMORTISSEMENT = SIMP(statut='o', typ='TXM',into=('STRUCTUREL',),defaut='STRUCTUREL',fr="Choix du type d'amortissement"), - ), # fin AMORTISSEMENT_P - AMORTISSEMENT_M = BLOC(condition = "BASE_CALCUL == 'MODALE' ", - AMORTISSEMENT = SIMP(statut='o', typ='TXM',into=('REDUIT','STRUCTUREL'),defaut=None,fr="Choix du type d'amortissement"), - AMOR_MODAL = BLOC(condition = "AMORTISSEMENT == 'REDUIT' ", - #AMOR_REDUIT = SIMP(statut='o', typ='R', min=1, max=1,defaut=None,fr="Renseignement de l'amortissement modal reduit (en %)"), - AMOR_REDUIT = SIMP(statut='o', typ='R', min=1, max='**',defaut=None,fr="Renseignement de l'amortissement modal reduit (en %), la taille de la liste doit etre egale au nombre de modes constituant la base de projection"), - ),# fin AMOR_MODALE - ), # fin AMORTISSEMENT_M - VITESSE_ROTATION = SIMP(statut='o',typ='R',min=1,max='**',defaut=None,fr="Renseignement de la liste des vitesses de rotation etudiees (tr/min)"), - # 20121018 retrait de defaut_fn a la demande de EDF - CHARGES= FACT(statut='o',min=1,max='**',fr="Definition et renseignement du chargement applique", - TYPE = SIMP(statut='o',typ='TXM',into=('BALOURD','HARMONIQUE'),defaut=None,min=1,max=1,fr="Choix du type de chargement a appliquer"), - BALOURD = BLOC(condition = "TYPE == 'BALOURD' ",fr="Chargement de type balourd", - POSITION = SIMP(statut='o',typ='R',min=1,max=1,defaut=None,fr="Renseignement de la position axiale ou s'applique le balourd (m)"), - AMPLITUDE = SIMP(statut='o',typ='R',min=1,max=1,defaut=None,fr="Renseignement de l'amplitude du balourd (kg.m)"), - PHASE_DEG = SIMP(statut='o',typ='R',min=1,max=1,defaut=None,fr="Renseignement du decalage de la phase de la charge balourd (degres)"), - ),# fin BALOURD - HARMONIQUE = BLOC(condition = "TYPE == 'HARMONIQUE' ",fr="Charge harmonique", - POSITION = SIMP(statut='o',typ='R',min=1,max=1,defaut=None,fr="Renseignement de la position axiale ou s'applique la charge harmonique (m)"), - FREQUENCE = SIMP(statut='o',typ='R',min=1,max=1,defaut=None,fr="Renseignement de la frequence d'excitation harmonique (Hz)"), - AMPLITUDE = SIMP(statut='o',typ='R',min=1,max=1,defaut=None,fr="Renseignement de l'amplitude de la charge harmonique, (N)"), - FONC_APPLI = SIMP(statut='o',typ='R',min=1,max='**',defaut=None,fr="Renseignement de la liste de coefficients appliques sur la charge harmonique (autant que de vitesses de rotation)"), - PHASE_DEG = SIMP(statut='o',typ='R',min=1,max=1,defaut=None,fr="Renseignement du decalage de la phase de la charge harmonique (degres)"), - TYPE_DDL = SIMP(statut='o',typ='TXM',min=1,max=1,into=('DX','DRX','DY','DRY','DZ','DRZ'),defaut=None,fr="Renseignement du DDL sur lequel s'applique la charge harmonique"), - ), # fin HARMONIQUE - ), #FIN CHARGES - - # POST-TRAITEMENTS DU CALCUL HARMONIQUE - POST_TRAITEMENTS = FACT(statut='o',max='**',fr="Definition et renseignement des post-traitements", - CONTRAINTES = SIMP(statut='o',typ='TXM',into=('OUI', 'NON'),defaut='NON',fr="Export des contraintes en tout noeud de la ligne d'arbres"), - ), - ## fin POST_TRAITEMENTS - - ),# fin ANALYSE_HARMONIQUE - -### ----- CALCUL TRANSITOIRE ----- ## - ANALYSE_TRANSISTOIRE = BLOC(condition = "TYPE_ANALYSE == 'TRANSITOIRE' ",fr="Analyse transitoire de la ligne d'arbres", - - VITESSE = SIMP(statut='o',typ='TXM',min=1,max=1,defaut=None,into=('CONSTANTE','VARIABLE'),fr="Renseignement du type de vitesse de rotation consideree"), - BASE_C = BLOC(condition ="VITESSE == 'CONSTANTE'",fr="Analyse transitoire a vitesse constante", - BASE_CALCUL = SIMP(statut='o',typ='TXM',into=('PHYSIQUE','MODALE'),defaut=None,fr="Choix du type de resolution de l'analyse transitoire (sur base physique ou sur base modale)"), - BASE_MODALE = BLOC(condition = "BASE_CALCUL == 'MODALE' ", fr="Resolution sur base modale", - regles=UN_PARMI('NB_MODES','FREQ_MAX'), - NB_MODES = SIMP(statut='f',typ='I',min=1,max=1,defaut=None,fr="Renseignement du nombre de modes constituant la base de projection"), - FREQ_MAX = SIMP(statut='f',typ='R',min=1,max=1,defaut=None,fr="Renseignement de la frequence maximale des modes constituant la base de projection (Hz)"), - ),# fin BASE_MODALE - AMORTISSEMENT_M = BLOC(condition = "BASE_CALCUL == 'MODALE' ", - AMORTISSEMENT = SIMP(statut='o', typ='TXM',into=('REDUIT','STRUCTUREL'),defaut=None,fr="Choix du type d'amortissement"), - AMOR_MODAL = BLOC(condition = "AMORTISSEMENT == 'REDUIT' ", - AMOR_REDUIT = SIMP(statut='o', typ='R', min=1, max='**',defaut=None,fr="Renseignement de l'amortissement modal reduit (en %), la taille de la liste doit etre egale au nombre de modes constituant la base de projection"), - ),# fin AMOR_MODALE - ), # fin AMORTISSEMENT_M - ), # fin BASE_C - BASE_V = BLOC(condition ="VITESSE == 'VARIABLE'",fr="Analyse transitoire a vitesse variable", - BASE_CALCUL = SIMP(statut='o',typ='TXM',into=('MODALE',),defaut='MODALE',fr="Choix du type de resolution de l'analyse transitoire (obligatoirement sur base modale)"), - BASE_MODALE = BLOC(condition = "BASE_CALCUL == 'MODALE' ", fr="Resolution sur base modale", - regles=UN_PARMI('NB_MODES','FREQ_MAX'), - NB_MODES = SIMP(statut='f',typ='I',min=1,max=1,defaut=None,fr="Renseignement du nombre de modes constituant la base de projection"), - FREQ_MAX = SIMP(statut='f',typ='R',min=1,max=1,defaut=None,fr="Renseignement de la frequence maximale des modes constituant la base de projection (Hz)"), - ),# fin BASE_MODALE - AMORTISSEMENT = SIMP(statut='o', typ='TXM',into=('REDUIT','STRUCTUREL'),defaut=None,fr="Choix du type d'amortissement"), - AMOR_MODAL = BLOC(condition = "AMORTISSEMENT == 'REDUIT' ", - #AMOR_REDUIT = SIMP(statut='o', typ='R', min=1, max=1,defaut=None,fr="Renseignement de l'amortissement modal reduit (en %)"), - AMOR_REDUIT = SIMP(statut='o', typ='R', min=1, max='**',defaut=None,fr="Renseignement de l'amortissement modal reduit (en %), la taille de la liste doit etre egale au nombre de modes constituant la base de projection"), - ),# fin AMOR_MODALE - ), # fin BASE_C - VITESSE_CONSTANTE = BLOC(condition = "VITESSE == 'CONSTANTE' ", fr="Vitesse de rotation constante", - VITESSE_ROTATION = SIMP(statut='o',typ='R',min=1,max=1,defaut=None,fr="Renseignement de la vitesse de rotation (tr/min)"), - ),# fin VITESSE_CONSTANTE - VITESSE_VARIABLE = BLOC(condition = "VITESSE == 'VARIABLE' ", fr="Vitesse de rotation variable", regles=UN_PARMI('LINEAIRE','EXPONENTIELLE','FORMULE'), - LINEAIRE = FACT(statut='f',min=1,max=1,fr="Variation lineaire de la vitesse de rotation", - VITESSE_INITIALE = SIMP(statut='o',typ='R',min=1,max=1,defaut=None,fr="Renseignement de la vitesse de rotation initiale (tr/min)",), - VITESSE_FINALE = SIMP(statut='o',typ='R',min=1,max=1,defaut=None,fr="Renseignement de la vitesse de rotation finale (tr/min)",), - DEPHASAGE = SIMP(statut='o',typ='R',min=1,max=1,defaut=None,fr="Renseignement de la postion angulaire initiale (degres)"), - PAS_MAJ = SIMP(statut='f',typ='R',min=1,max=1,defaut=None,fr="Renseignement du pas de mise a jour des matrices des paliers (tr/min)"), - ),# fin LINEAIRE - EXPONENTIELLE = FACT(statut='f',min=1,max=1,fr="Variation exponentielle de la vitesse de rotation", - VITESSE_INITIALE = SIMP(statut='o',typ='R',min=1,max=1,defaut=None,fr="Renseignement de la vitesse de rotation initiale (tr/min)",), - VITESSE_FINALE = SIMP(statut='o',typ='R',min=1,max=1,defaut=None,fr="Renseignement de la vitesse de rotation finale (tr/min)",), - DEPHASAGE = SIMP(statut='o',typ='R',min=1,max=1,defaut=None,fr="Renseignement de la postion angulaire initiale (degres)"), - LAMBDA = SIMP(statut='o',typ='R',min=1,max=1,defaut=None,fr="Renseignement du parametre de la loi exponentielle (Hz)"), - PAS_MAJ = SIMP(statut='f',typ='R',min=1,max=1,defaut=None,fr="Renseignement du pas de mise a jour des matrices des paliers (tr/min)"), - ),# fin EXPONENTIELLE - FORMULE = FACT(statut='f',min=1,max=1,fr="Fonction personnalisee decrivant la variation de la vitesse de rotation", - FICHIER = SIMP(statut='o',typ=('Fichier','Formule vitesse rotation (*.*)'),min=1,max=1,defaut=None,fr="Renseignement du fichier contenant les fonctions de la vitesse de rotation"), - PHI = SIMP(statut='o',typ='TXM',min=1,max=1,defaut=None,fr="Renseignement du nom de la formule de position angulaire (max 8 caractere)"), - OM = SIMP(statut='o',typ='TXM',min=1,max=1,defaut=None,fr="Renseignement du nom de la formule de vitesse angulaire (max 8 caractere)"), - ACC = SIMP(statut='o',typ='TXM',min=1,max=1,defaut=None,fr="Renseignement du nom de la formule d'acceleration angulaire (max 8 caractere)"), - VITE_MOY = SIMP(statut='o',typ='R',min=1,max=1,defaut=None,fr="Renseignement de la moyenne des vitesses balayees (tr/min)"), - PAS_MAJ = SIMP(statut='f',typ='R',min=1,max='**',defaut=None,fr="Renseignement du pas de mise a jour des matrices des paliers (tr/min)"), - ),# fin FORMULE - ),# fin VITESSE_VARIABLE - #POIDS = SIMP(statut='o',typ='TXM',into=('OUI','NON'),defaut='OUI',fr="Choix d'application d'un poids"), - - CHARGES= FACT(statut='o',min=1,max='**',fr="Definition et renseignement du chargement applique", - TYPE = SIMP(statut='o',typ='TXM',into=('POIDS','BALOURD','FORCE','MOMENT','HARMONIQUE'),defaut=None,min=1,max=1,fr="Choix du type de chargement a appliquer"), - BALOURD = BLOC(condition = "TYPE == 'BALOURD' ",fr="Chargement de type balourd", - POSITION = SIMP(statut='o',typ='R',min=1,max=1,defaut=None,fr="Renseignement de la position axiale ou s'applique le balourd (m)"), - AMPLITUDE = SIMP(statut='o',typ='R',min=1,max=1,defaut=None,fr="Renseignement de l'amplitude du balourd (kg.m)"), - PHASE_DEG = SIMP(statut='o',typ='R',min=1,max=1,defaut=None,fr="Renseignement du decalage de la phase de la charge balourd (degres)"), - INST_APPLI= SIMP(statut='f',typ='R',min=1,max=1,defaut=0,fr="Renseignement de l'instant d'apparition du balourd (s)"), - TEMPS_MONTEE=SIMP(statut='f',typ='R',min=1,max=1,defaut=0,fr="Renseignement du temps necessaire pour atteindre l'amplitude nominale du balourd (s)"), - ),# fin BALOURD - POIDS = BLOC(condition = "TYPE == 'POIDS' ",fr="Prise en compte du champ de pesanteur", - GRAVITE = SIMP(statut='o',typ='R',defaut=9.81,fr="Renseignement de l'intensite de la gravite (m/s^2)"), - DIRECTION = SIMP(statut='o',typ='R',min=3,max=3,defaut=(1,0,0),fr="Renseignement de la direction de la force de gravite"), - INST_APPLI= SIMP(statut='f',typ='R',min=1,max=1,defaut=0,fr="Renseignement de l'instant d'apparition du poids (s)"), - TEMPS_MONTEE=SIMP(statut='f',typ='R',min=1,max=1,defaut=0,fr="Renseignement du temps necessaire pour atteindre la valeur nominale du poids (s)"), - ), # fin POIDS - FORCE = BLOC(condition = "TYPE == 'FORCE' ",fr="Application d'une force ponctuelle", - POSITION = SIMP(statut='o',typ='R',defaut=None,fr="Renseignement de la position axiale ou s'applique la force (m)"), - AMPLITUDE = SIMP(statut='o',typ='R',min=3,max=3,defaut=None,fr="Renseignement des 3 composantes decrivant la force (N)"), - INST_APPLI= SIMP(statut='f',typ='R',min=1,max=1,defaut=0,fr="Renseignement de l'instant d'apparition de la force (s)"), - TEMPS_MONTEE=SIMP(statut='f',typ='R',min=1,max=1,defaut=0,fr="Renseignement du temps necessaire pour atteindre la valeur nominale de la force (s)"), - #FONC_APPLI = SIMP(statut='f',typ='R',min=2,max=2,defaut=None,fr="Renseignement de la fonction appliquee"), - ), # fin FORCE - MOMENT = BLOC(condition = "TYPE == 'MOMENT' ",fr="Application d'un moment ponctuel", - POSITION = SIMP(statut='o',typ='R',defaut=None,fr="Renseignement de la position axiale ou s'applique le moment (m)"), - AMPLITUDE = SIMP(statut='o',typ='R',min=3,max=3,defaut=None,fr="Renseignement des 3 composantes decrivant le moment (N/m)"), - INST_APPLI= SIMP(statut='f',typ='R',min=1,max=1,defaut=0,fr="Renseignement de l'instant d'apparition du moment (s)"), - TEMPS_MONTEE=SIMP(statut='f',typ='R',min=1,max=1,defaut=0,fr="Renseignement du temps necessaire pour atteindre la valeur nominale du moment (s)"), - ), # fin MOMENT - HARMONIQUE = BLOC(condition = "TYPE == 'HARMONIQUE' ",fr="Charge harmonique", - POSITION = SIMP(statut='o',typ='R',min=1,max=1,defaut=None,fr="Renseignement de la position axiale ou s'applique la charge harmonique (m)"), - FREQUENCE = SIMP(statut='o',typ='R',min=1,max=1,defaut=None,fr="Renseignement de la frequence d'excitation harmonique (Hz)"), - AMPLITUDE = SIMP(statut='o',typ='R',min=1,max=1,defaut=None,fr="Renseignement de l'amplitude de la charge harmonique, (N)"), - INST_APPLI= SIMP(statut='f',typ='R',min=1,max=1,defaut=0,fr="Renseignement de l'instant d'apparition de la charge harmonique (s)"), - TEMPS_MONTEE=SIMP(statut='f',typ='R',min=1,max=1,defaut=0,fr="Renseignement du temps necessaire pour atteindre la valeur nominale de la charge harmonique (s)"), - #FONC_APPLI = SIMP(statut='o',typ='R',min=1,max='**',defaut=None,fr="Renseignement de la fonction appliquee de la charge harmonique (autant de valeurs que de vitesses de rotation)"), - PHASE_DEG = SIMP(statut='o',typ='R',min=1,max=1,defaut=None,fr="Renseignement du decalage de la phase de la charge harmonique (degres)"), - TYPE_DDL = SIMP(statut='o',typ='TXM',min=1,max=1,into=('DX','DRX','DY','DRY','DZ','DRZ'),defaut=None,fr="Renseignement du DDL sur lequel s'applique la charge harmonique"), - ), # fin HARMONIQUE - ), #fin CHARGES - - ETAT_INIT = FACT(statut='o',fr="Renseignement de l'etat initial du calcul", - #RESULTAT = SIMP(statut='o',typ=('sd_resultat'),max=1,defaut=None,fr="Choix de la structure de donnees resultat de code aster "), - RESULTAT = SIMP(statut='f',typ='TXM',max=1,defaut=None,fr="Choix de la structure de donnees de type 'resultat' de Code_Aster"), - INST_INIT = SIMP(statut='f',typ='R',max=1,defaut=0.0,fr="Renseignement de l'instant de la structure de donnees a partir duquel il faut lancer le calcul (s)"), - ), # fin ETAT_INIT - PARAM_TEMPS = SIMP(statut='o',typ='TXM',max=1,into=('PAS','LISTE'),defaut=None,fr="Choix du type de discretisation temporelle"), - #PAS = BLOC(condition = "VITESSE == 'VARIABLE'",fr="Renseignement des parametres des pas", - PAS = BLOC(condition = "PARAM_TEMPS == 'PAS'",fr="Renseignement de pas de temps", - TEMPS_PAS = SIMP(statut='o',typ='R',max=1,defaut=None,fr="Renseignement du pas de temps d'integration(en s)"), - INST_INI = SIMP(statut='f',typ='R',max=1,defaut=None,fr="Renseignement de l'instant initial du calcul (s)"), - INST_FIN = SIMP(statut='o',typ='R',max=1,defaut=None,fr="Renseignement de l'instant final du calcul (s)"), - ), # fin TEMPS_PAS - LIST_INST = BLOC(condition = "PARAM_TEMPS == 'LISTE'",fr="Renseignement d'une liste d'instants", - LISTE = SIMP(statut='o',typ='R',min=1,max='**',defaut=None,fr="Renseignement d'une liste d'instants auxquels resoudre le calcul (s)"), - ), # fin LIST_INST - PAS_ARCHIVAGE = SIMP(statut='o',typ='I',max=1,defaut=1,fr="Renseignement du pas d'archivage des resultats (une sauvegarde tous les 'PAS_ARCHIVAGE' instants d'integration)",), - SCHEMA_TEMPS = SIMP(statut='o',typ='TXM',max=1,into=('NEWMARK','EULER','WILSON','ADAPT_ORDRE1','ADAPT_ORDRE2','DIFF_CENTRE'),defaut='NEWMARK',fr="Choix d'un schema d'integration temporelle"), - NEWMARK = BLOC(condition = "SCHEMA_TEMPS == 'NEWMARK' ",fr="Methode de NEWMARK", - BETA = SIMP(statut='f',typ='R',max=1,defaut=0.25,fr="Renseignement de la valeur beta pour la methode de NEWMARK"), - GAMMA = SIMP(statut='f',typ='R',max=1,defaut=0.25,fr="Renseignement de la valeur gamma pour la methode de NEWMARK"), - ),# fin NEWMARK - WILSON = BLOC(condition = "SCHEMA_TEMPS == 'WILSON' ",fr="Methode de WILSON", - THETA = SIMP(statut='f',typ='R',max=1,defaut=1.4,fr="Renseignement de la valeur theta pour la methode de WILSON"), - ), # fin WILSON - - # POST-TRAITEMENTS DU CALCUL TRANSITOIRE - POST_TRAITEMENTS = FACT(statut='o',max='**',fr="Definition et renseignement des post-traitements", - CONTRAINTES = SIMP(statut='o',typ='TXM',into=('OUI', 'NON'),defaut='NON',fr="Export des contraintes en tout noeud de la ligne d'arbres"), - ), # fin POST_TRAITEMENTS - - ), # fin ANALYSE_TRANSISTOIRE - - -### ----- CALCUL COUPLE CODE_ASTER/EYDOS ----- ## - ANALYSE_TRANSITOIRE_ACCIDENTEL = BLOC(condition = "TYPE_ANALYSE == 'TRANSITOIRE_ACCIDENTEL' ",fr="Analyse transitoire accidentelle de la ligne d'arbres", - #BASE_MODALE = FACT(statut='o', fr="Choix des parametres de la base modale", - #POIDS = SIMP(statut='o',typ='TXM',into=('OUI','NON'),defaut='OUI',fr="Choix d'application d'un poids"), - BASE_MODALE = BLOC(condition = "True", fr="Resolution sur base modale", - regles=UN_PARMI('NB_MODES','FREQ_MAX'), - NB_MODES = SIMP(statut='f',typ='I',min=1,max=1,defaut=None,fr="Renseignement du nombre de modes constituant la base de projection"), - FREQ_MAX = SIMP(statut='f',typ='R',min=1,max=1,defaut=None,fr="Renseignement de la frequence maximale des modes constituant la base de projection (Hz)"), - ),# fin BASE_MODALE - # cft 20131217 suppression amortissement reduit - #AMORTISSEMENT = SIMP(statut='o', typ='TXM',into=('STRUCTUREL','REDUIT'),defaut=None,fr="Choix du type d'amortissement"), - AMORTISSEMENT = SIMP(statut='o', typ='TXM',into=('STRUCTUREL',),defaut='STRUCTUREL',fr="Choix du type d'amortissement"), - AMOR_REDUIT = BLOC(condition = "AMORTISSEMENT == 'REDUIT' ", - #LIST_AMOR = SIMP(statut='o', typ='R', min=1,max='**',defaut=None,fr="Renseignement de la liste des amortissements"), - LIST_AMOR = SIMP(statut='o', typ='R', min=1,max='**',defaut=None,fr="Renseignement de la liste des amortissements modaux reduits (en %), la taille de la liste doit etre egale au nombre de modes constituant la base de projection"), - ),# fin AMOR_REDUIT - VITESSE_ROTATION = SIMP(statut='o',typ='R',min=1,max=1,defaut=None,fr="Renseignement de la vitesse de rotation (tr/min)"), - - CHARGES= FACT(statut='o',min=1,max='**',fr="Definition et renseignement du chargement applique", - TYPE = SIMP(statut='o',typ='TXM',into=('POIDS','BALOURD','FORCE','MOMENT','HARMONIQUE'),defaut=None,min=1,max=1,fr="Choix du type de chargement a appliquer"), - BALOURD = BLOC(condition = "TYPE == 'BALOURD' ",fr="Chargement de type balourd", - POSITION = SIMP(statut='o',typ='R',min=1,max=1,defaut=None,fr="Renseignement de la position axiale ou s'applique le balourd (m)"), - AMPLITUDE = SIMP(statut='o',typ='R',min=1,max=1,defaut=None,fr="Renseignement de l'amplitude du balourd (kg.m)"), - PHASE_DEG = SIMP(statut='o',typ='R',min=1,max=1,defaut=None,fr="Renseignement du decalage de la phase de la charge balourd (degres)"), - INST_APPLI= SIMP(statut='f',typ='R',min=1,max=1,defaut=0,fr="Renseignement de l'instant d'apparition du balourd (s)"), - TEMPS_MONTEE=SIMP(statut='f',typ='R',min=1,max=1,defaut=0,fr="Renseignement du temps necessaire pour atteindre l'amplitude nominale du balourd (s)"), - ),# fin BALOURD - POIDS = BLOC(condition = "TYPE == 'POIDS' ",fr="Prise en compte du champ de pesanteur", - GRAVITE = SIMP(statut='o',typ='R',defaut=9.81,fr="Renseignement de l'intensite de la gravite (m/s^2)"), - DIRECTION = SIMP(statut='o',typ='R',min=3,max=3,defaut=(1,0,0),fr="Renseignement de la direction de la force de gravite"), - INST_APPLI= SIMP(statut='f',typ='R',min=1,max=1,defaut=0,fr="Renseignement de l'instant d'apparition du poids (s)"), - TEMPS_MONTEE=SIMP(statut='f',typ='R',min=1,max=1,defaut=0,fr="Renseignement du temps necessaire pour atteindre la valeur nominale du poids (s)"), - ), # fin POIDS - FORCE = BLOC(condition = "TYPE == 'FORCE' ",fr="Application d'une force ponctuelle", - POSITION = SIMP(statut='o',typ='R',defaut=None,fr="Renseignement de la position axiale ou s'applique le moment (m)"), - AMPLITUDE = SIMP(statut='o',typ='R',min=3,max=3,defaut=None,fr="Renseignement des 3 composantes decrivant le moment (N/m)"), - INST_APPLI= SIMP(statut='f',typ='R',min=1,max=1,defaut=0,fr="Renseignement de l'instant d'apparition de la force (s)"), - TEMPS_MONTEE=SIMP(statut='f',typ='R',min=1,max=1,defaut=0,fr="Renseignement du temps necessaire pour atteindre la valeur nominale de la force (s)"), - #FONC_APPLI = SIMP(statut='f',typ='R',min=2,max=2,defaut=None,fr="Renseignement de la fonction appliquee"), - ), # fin FORCE - MOMENT = BLOC(condition = "TYPE == 'MOMENT' ",fr="Application d'un moment ponctuel", - POSITION = SIMP(statut='o',typ='R',defaut=None,fr="Renseignement de la position axiale ou s'applique le moment (m)"), - AMPLITUDE = SIMP(statut='o',typ='R',min=3,max=3,defaut=None,fr="Renseignement des 3 composantes decrivant le moment (N/m)"), - INST_APPLI= SIMP(statut='f',typ='R',min=1,max=1,defaut=0,fr="Renseignement de l'instant d'apparition du moment (s)"), - TEMPS_MONTEE=SIMP(statut='f',typ='R',min=1,max=1,defaut=0,fr="Renseignement du temps necessaire pour atteindre la valeur nominale du moment (s)"), - ), # fin MOMENT - HARMONIQUE = BLOC(condition = "TYPE == 'HARMONIQUE' ",fr="Charge harmonique", - POSITION = SIMP(statut='o',typ='R',min=1,max=1,defaut=None,fr="Renseignement de la position axiale ou s'applique la charge harmonique (m)"), - FREQUENCE = SIMP(statut='o',typ='R',min=1,max=1,defaut=None,fr="Renseignement de la frequence d'excitation harmonique (Hz)"), - AMPLITUDE = SIMP(statut='o',typ='R',min=1,max=1,defaut=None,fr="Renseignement de l'amplitude de la charge harmonique, (N)"), - INST_APPLI= SIMP(statut='f',typ='R',min=1,max=1,defaut=0,fr="Renseignement de l'instant d'apparition de la charge harmonique (s)"), - TEMPS_MONTEE=SIMP(statut='f',typ='R',min=1,max=1,defaut=0,fr="Renseignement du temps necessaire pour atteindre la valeur nominale de la charge harmonique (s)"), - #FONC_APPLI = SIMP(statut='o',typ='R',min=1,max='**',defaut=None,fr="Renseignement de la fonction appliquee de la charge harmonique (autant de valeurs que de vitesses de rotation)"), - PHASE_DEG = SIMP(statut='o',typ='R',min=1,max=1,defaut=None,fr="Renseignement du decalage de la phase de la charge harmonique (degres)"), - TYPE_DDL = SIMP(statut='o',typ='TXM',min=1,max=1,into=('DX','DRX','DY','DRY','DZ','DRZ'),defaut=None,fr="Renseignement du DDL sur lequel s'applique la charge harmonique"), - ), # fin HARMONIQUE - ), #fin CHARGES - ETAT_INIT = FACT(statut='o',fr="Renseignement de l'etat initial du calcul", - #RESULTAT = SIMP(statut='o',typ=('sd_resultat'),max=1,defaut=None,fr="Choix de la structure de donnees resultat de code aster "), - # 20121126 - #RESULTAT = SIMP(statut='o',typ='TXM',max=1,defaut=None,fr="Choix de la structure de donnees resultat de code aster "), - INST_INIT = SIMP(statut='f',typ='R',max=1,defaut=None,fr="Renseignement de l'instant initial a partir duquel il faut lancer le calcul (s)"), - ), # fin ETAT_INIT - #PARAM_TEMPS = SIMP(statut='o',typ='TXM',max=1,into=('PAS','LIST_INST'),defaut=None,fr="Choix du type de parametrage temporel"), - # 20121126 - PARAM_TEMPS = SIMP(statut='o',typ='TXM',max=1,into=('PAS',),defaut="PAS",fr="Choix du type de discretisation temporelle",), - PAS = BLOC(condition = "PARAM_TEMPS == 'PAS' ",fr="Renseignement de pas de temps", - PAS_ASTER = SIMP(statut='o',typ='R',max=1,defaut=None,fr="Renseignement du pas de temps d'integration Code_Aster (en s)",), - PAS_EDYOS = SIMP(statut='o',typ='R',max=1,defaut=None,fr="Renseignement du pas de temps d'integration Edyos (en s)",), - INST_FIN = SIMP(statut='o',typ='R',max=1,defaut=None,fr="Renseignement de l'instant final du calcul (en s)",), - ), # fin TEMPS_PAS - #LIST_INST = BLOC(condition = "PARAM_TEMPS == 'LIST_INST' ",fr="Renseignement d'une liste de pas", - #LISTE = SIMP(statut='f',typ='R',min=1,max='**',defaut=None,fr="Renseignement d'une liste de pas"), - #), # fin LIST_INST - PAS_ARCHIVAGE = SIMP(statut='o',typ='I',max=1,defaut=1,fr="Renseignement du pas d'archivage des resultats (une sauvegarde tous les 'PAS_ARCHIVAGE' instants d'integration)",), - PARA_MEM = SIMP(statut='f',typ='I',max=1,defaut=6400,fr="Renseigner la taille maximale de la memoire (Mo)",), - PARA_CPU = SIMP(statut='f',typ='I',max=1,defaut=10000,fr="Renseigner le temps CPU maximal (s)",), - SCHEMA_TEMPS = SIMP(statut='o',typ='TXM',max=1,into=('EULER','ADAPT_ORDRE1','ADAPT_ORDRE2'),defaut='ADAPT_ORDRE2',fr="Choix d'un schema d'integration temporelle"), - - # POST-TRAITEMENTS DU CALCUL TRANSITOIRE ACCIDENTEL - POST_TRAITEMENTS = FACT(statut='o',max='**',fr="Definition et renseignement des post-traitements", - CONTRAINTES = SIMP(statut='o',typ='TXM',into=('OUI', 'NON'),defaut='NON',fr="Export des contraintes en tout noeud de la ligne d'arbres"), - ), # fin POST_TRAITEMENTS - ), # fin ANALYSE_TRANSITOIRE_ACCIDENTEL - -)# fin SPECIFICATION_ANALYSE diff --git a/SPECA/SPECA_Cata_V2017.py b/SPECA/SPECA_Cata_V2017.py deleted file mode 100755 index 801aba17..00000000 --- a/SPECA/SPECA_Cata_V2017.py +++ /dev/null @@ -1,399 +0,0 @@ -## -*- coding: utf-8 -*- -# -## -------------------------------------------------- -## debut entete -## -------------------------------------------------- -# -from Accas import * - - -# rend disponible le type tuple (liste) -import types -class Tuple: - def __init__(self,ntuple): - self.ntuple=ntuple - - def __convert__(self,valeur): - if type(valeur) == types.StringType: - return None - if len(valeur) != self.ntuple: - return None - return valeur - - def info(self): - return "Tuple de %s elements" % self.ntuple - - __repr__=info - __str__=info - - - -# -#CONTEXT.debug = 1 - -VERSION_CATALOGUE="2017.0.0"; - -JdC = JDC_CATA ( code = 'SPECA', - execmodul = None, - regles=(AU_MOINS_UN('SPECIFICATION_ANALYSE',), - AU_PLUS_UN('SPECIFICATION_ANALYSE',), - ), - )# Fin JDC_CATA - -## ----- SPECIFICATION DE L'ETUDE ----- ## -SPECIFICATION_ANALYSE= MACRO (nom = 'SPECIFICATION_ANALYSE', - op = None, - UIinfo = {"groupes":("Machine tournante",)}, - fr = "Specification des analyses", - TYPE_ANALYSE = SIMP(statut='o', typ='TXM',into=('STATIQUE', 'MODALE', 'HARMONIQUE', 'TRANSITOIRE', 'TRANSITOIRE_ACCIDENTEL','SYNTHESE')), - # pour V1.1 flexion uniquement - #TYPE_COMPORTEMENT = SIMP(statut='o', typ='TXM',into=('FLEXION',),defaut='FLEXION',fr="Renseignement du type de comportement voulu"), - TYPE_COMPORTEMENT = BLOC(condition = "TYPE_ANALYSE in ('MODALE','HARMONIQUE','STATIQUE','TRANSITOIRE','TRANSITOIRE_ACCIDENTEL')", - FLEXION = SIMP(statut='o',typ='TXM',into=('OUI','NON'),defaut='OUI',fr="Choix de la prise en compte la flexion de la ligne d'arbres"), - TORSION = SIMP(statut='o',typ='TXM',into=('OUI','NON'),defaut='NON',fr="Choix de la prise en compte la torsion de la ligne d'arbres"), - COMPRESSION = SIMP(statut='o',typ='TXM',into=('OUI','NON'),defaut='NON',fr="Choix de la prise en compte la traction/compression de la ligne d'arbres"), - ), - - SURCHARGE=BLOC(condition = "TYPE_ANALYSE in ('MODALE','HARMONIQUE','STATIQUE','TRANSITOIRE','TRANSITOIRE_ACCIDENTEL','SYNTHESE')",statut="f", - TEMPLATE=SIMP( statut="f", - typ=("Fichier","Fichier Template (*.tpl)"), - min=1,max=1, - fr="Utiliser un template d'analyse modifie" - ), - PARAMETRES= FACT(statut='f',min=1,max='**',fr="Definition et renseignement des parametres utilises dans le template surcharge", - CLE=SIMP(statut='o',typ='TXM',defaut=None,fr="Nom du parametre dans le template"), - TYPE=SIMP(statut='o',typ='TXM',into=('ENTIER','REEL','CHAINE','FICHIER','REPERTOIRE'),fr="Nature du parametre a renseigner"), - ENTIER=BLOC(condition="TYPE=='ENTIER'", - VALUE=SIMP(statut='o',typ='I',defaut=0,fr="Renseignement d'un nombre entier"), - ), - REEL=BLOC(condition="TYPE=='REEL'", - VALUE=SIMP(statut='o',typ='R',defaut=0.0,fr="Renseignement d'un nombre reel"), - ), - CHAINE=BLOC(condition="TYPE=='CHAINE'", - VALUE=SIMP(statut='o',typ='TXM',defaut='',fr="Renseignement d'une chaine de caracteres"), - ), - FICHIER=BLOC(condition="TYPE=='FICHIER'", - VALUE=SIMP(statut='o',typ=("Fichier","All files (*.*)"),fr="Renseignement d'un fichier") - ), - REPERTOIRE =BLOC(condition="TYPE=='REPERTOIRE'", - VALUE=SIMP(statut='o',typ="Repertoire",fr="Renseignement d'un repertoire") - ), - - ), - ), - - - -### ----- CALCUL STATIQUE ----- ## - ANALYSE_STATIQUE = BLOC(condition = "TYPE_ANALYSE == 'STATIQUE' ",fr="Analyse statique (vitesse de rotation nulle de la ligne d'arbres)", - CHARGES= FACT(statut='o',min=1,max='**',fr="Definition et renseignement du chargement applique", - TYPE = SIMP(statut='o',typ='TXM',into=('POIDS','FORCE','MOMENT','DELIGNAGE'),defaut=None,min=1,max=1,fr="Choix du type de chargement a appliquer"), - POIDS = BLOC(condition = "TYPE == 'POIDS' ",fr="Prise en compte du champ de pesanteur", - GRAVITE = SIMP(statut='o',typ='R',defaut=9.81,fr="Renseignement de l'intensite de la gravite (m/s^2)"), - DIRECTION = SIMP(statut='o',typ='R',min=3,max=3,defaut=(1,0,0),fr="Renseignement de la direction de la force de gravite"), - ), # fin POIDS - FORCE = BLOC(condition = "TYPE == 'FORCE' ",fr="Application d'une force ponctuelle", - POSITION = SIMP(statut='o',typ='R',defaut=None,fr="Renseignement de la position axiale ou s'applique la force (m)"), - AMPLITUDE = SIMP(statut='o',typ='R',min=3,max=3,defaut=None,fr="Renseignement des 3 composantes decrivant la force (N)"), - #FONC_APPLI = SIMP(statut='f',typ='R',min=2,max=2,defaut=None,fr="Renseignement de la fonction appliquee"), - ), # fin FORCE - MOMENT = BLOC(condition = "TYPE == 'MOMENT' ",fr="Application d'un moment ponctuel", - POSITION = SIMP(statut='o',typ='R',defaut=None,fr="Renseignement de la position axiale ou s'applique le moment (m)"), - AMPLITUDE = SIMP(statut='o',typ='R',min=3,max=3,defaut=None,fr="Renseignement des 3 composantes decrivant le moment (N/m)"), - ), # fin MOMENT - DELIGNAGE = BLOC(condition = "TYPE == 'DELIGNAGE' ",fr="Application d'un delignage sur un ou plusieurs paliers", - NOM_PALIER = SIMP(statut='o',typ='TXM',min=1,max=1,defaut=None,fr="Renseignement du nom du palier deligne"), - DX = SIMP(statut='o',typ='R',min=1,max=1,defaut=None,fr="Renseignement du delignage suivant X du palier (m)"), - DY = SIMP(statut='o',typ='R',min=1,max=1,defaut=None,fr="Renseignement du delignage suivant Y du palier (m)"), - ), # fin Delignage - ), #fin CHARGES - - # POST-TRAITEMENTS DU CALCUL STATIQUE - POST_TRAITEMENTS = FACT(statut='o',max='**',fr="Definition et renseignement des post-traitements", - CONTRAINTES = SIMP(statut='o',typ='TXM',into=('OUI', 'NON'),defaut='NON',fr="Export des contraintes en tout noeud de la ligne d'arbres"), - ), #fin POST_TRAITEMENTS - ),# fin ANALYSE_STATIQUE - -### ----- CALCUL MODAL ----- ## - ANALYSE_MODALE = BLOC(condition = "TYPE_ANALYSE == 'MODALE' ",fr="Analyse modale de la ligne d'arbres", - BASE_CALCUL = SIMP(statut='o',typ="TXM",into=('MODALE','PHYSIQUE'),defaut=None,fr="Choix du type de resolution de l'analyse modale (sur base physique ou sur base modale)"), - BASE_MODALE = BLOC(condition="BASE_CALCUL=='MODALE'",fr="Resolution sur base modale", - regles=UN_PARMI('NB_MODES','FREQ_MAX'), - NB_MODES=SIMP(statut='f',typ='I',min=1,max=1,defaut=None,fr="Renseignement du nombre de modes constituant la base de projection"), - FREQ_MAX=SIMP(statut='f',typ='R',min=1,max=1,defaut=None,fr="Renseignement de la frequence maximale des modes constituant la base de projection (Hz)"), - ), # fin BASE_MODALE - AMORTISSEMENT = SIMP(statut='o',typ='TXM',min=1,max=1,into=('OUI','NON'),defaut='OUI',fr="Choix de la prise en compte de l'amortissment"), - GYROSCOPIE = SIMP(statut='o',typ='TXM',min=1,max=1,into=('OUI','NON'),defaut='OUI',fr="Choix de la prise en compte de la gyroscopie"), - VITESSE_ROTATION = SIMP(statut='o',typ='R',min=1,max='**',defaut=None,fr="Renseignement de la liste des vitesses de rotation etudiees (tr/min)"), - OPTION_CALCUL = SIMP(statut='o',typ='TXM',min=1,max=1,into=('PLUS_PETITE','CENTRE'),defaut=None,fr="Choix de l'option de calcul"), - PLUS_PETITE = BLOC(condition="OPTION_CALCUL=='PLUS_PETITE'",fr="Calcul des n premieres frequences", - NMAX_FREQ = SIMP(statut='o',typ='I',min=1,max=1,defaut=None,fr="Renseignement du nombre maximal de frequences a calculer"), - METHODE=SIMP(statut='o',typ='TXM',min=1,max=1,into=('QZ',),defaut='QZ',fr="Choix de la methode de resolution"), - ), # fin PLUS_PETITE - CENTRE = BLOC(condition="OPTION_CALCUL=='CENTRE'",fr="Calcul d'un nombre n de frequences autour d'une frequence donnee", - FREQ = SIMP(statut='o',typ='R',min=1,max=1,defaut=None,fr="Renseignement de la frequence centrale (Hz)"), - NMAX_FREQ = SIMP(statut='o',typ='I',min=1,max=1,defaut=None,fr="Renseignement du nombre maximal de frequences"), - METHODE=SIMP(statut='o',typ='TXM',min=1,max=1,into=('QZ','SORENSEN'),defaut='QZ',fr="Choix de la methode de resolution"), - ), # fin CENTRE - #METHODE=SIMP(statut='f',typ='TXM',min=1,max=1,into=('QZ','SORENSEN'),defaut='QZ',fr="Choix de la methode de resolution"), - - # POST-TRAITEMENTS DU CALCUL MODAL - POST_TRAITEMENTS = FACT(statut='o',max='**',fr="Definition et renseignement des post-traitements", - RESU_SUPPORT_GENERALISE = SIMP(statut='o',typ='TXM',into=('OUI', 'NON'),defaut='NON',fr="Export de la reponse du support generalise au format rmed"), - ),# fin POST_TRAITEMENTS - ), # fin ANALYSE_MODALE - -## ----- CALCUL HARMONIQUE ----- ## - ANALYSE_HARMONIQUE = BLOC(condition = "TYPE_ANALYSE == 'HARMONIQUE' ",fr="Analyse harmonique de la ligne d'arbres", - - ## specification calcul harmonique - BASE_CALCUL = SIMP(statut='o',typ='TXM',into=('PHYSIQUE','MODALE'),defaut=None,fr="Choix du type de resolution de l'analyse modale (sur base physique ou sur base modale)"), - BASE_MODALE = BLOC(condition = "BASE_CALCUL == 'MODALE' ", fr="Resolution sur base modale", - #MODALE = FACT(statut='o', - regles=UN_PARMI('NB_MODES','FREQ_MAX'), - NB_MODES = SIMP(statut='f',typ='I',min=1,max=1,defaut=None,fr="Renseignement du nombre de modes constituant la base de projection"), - FREQ_MAX = SIMP(statut='f',typ='R',min=1,max=1,defaut=None,fr="Renseignement de la frequence maximale des modes constituant la base de projection (Hz)"), - #),# fin MODALE - ),# fin BASE_MODALE - AMORTISSEMENT_M = BLOC(condition = "BASE_CALCUL == 'MODALE' ", - AMORTISSEMENT_REDUIT = SIMP(statut='o', typ='TXM',into=('OUI','NON'),defaut=None,fr="Choix d'un amortissement reduit'"), - AMOR_MODAL = BLOC(condition = "AMORTISSEMENT_REDUIT == 'OUI' ", - AMOR_REDUIT = SIMP(statut='o', typ='R', min=1, max='**',defaut=None,fr="Renseignement de l'amortissement modal reduit (en %), la taille de la liste doit etre egale au nombre de modes constituant la base de projection"), - ),# fin AMOR_MODALE - ), # fin AMORTISSEMENT_M - VITESSE_ROTATION = SIMP(statut='o',typ='R',min=1,max='**',defaut=None,fr="Renseignement de la liste des vitesses de rotation etudiees (tr/min)"), - # 20121018 retrait de defaut_fn a la demande de EDF - CHARGES= FACT(statut='o',min=1,max='**',fr="Definition et renseignement du chargement applique", - TYPE = SIMP(statut='o',typ='TXM',into=('BALOURD','HARMONIQUE'),defaut=None,min=1,max=1,fr="Choix du type de chargement a appliquer"), - BALOURD = BLOC(condition = "TYPE == 'BALOURD' ",fr="Chargement de type balourd", - POSITION = SIMP(statut='o',typ='R',min=1,max=1,defaut=None,fr="Renseignement de la position axiale ou s'applique le balourd (m)"), - AMPLITUDE = SIMP(statut='o',typ='R',min=1,max=1,defaut=None,fr="Renseignement de l'amplitude du balourd (kg.m)"), - PHASE_DEG = SIMP(statut='o',typ='R',min=1,max=1,defaut=None,fr="Renseignement du decalage de la phase de la charge balourd (degres)"), - ),# fin BALOURD - HARMONIQUE = BLOC(condition = "TYPE == 'HARMONIQUE' ",fr="Charge harmonique", - POSITION = SIMP(statut='o',typ='R',min=1,max=1,defaut=None,fr="Renseignement de la position axiale ou s'applique la charge harmonique (m)"), - FREQUENCE = SIMP(statut='o',typ='R',min=1,max=1,defaut=None,fr="Renseignement de la frequence d'excitation harmonique (Hz)"), - AMPLITUDE = SIMP(statut='o',typ='R',min=1,max=1,defaut=None,fr="Renseignement de l'amplitude de la charge harmonique, (N)"), - FONC_APPLI = SIMP(statut='o',typ='R',min=1,max='**',defaut=None,fr="Renseignement de la liste de coefficients appliques sur la charge harmonique (autant que de vitesses de rotation)"), - PHASE_DEG = SIMP(statut='o',typ='R',min=1,max=1,defaut=None,fr="Renseignement du decalage de la phase de la charge harmonique (degres)"), - TYPE_DDL = SIMP(statut='o',typ='TXM',min=1,max=1,into=('DX','DRX','DY','DRY','DZ','DRZ'),defaut=None,fr="Renseignement du DDL sur lequel s'applique la charge harmonique"), - ), # fin HARMONIQUE - ), #FIN CHARGES - - # POST-TRAITEMENTS DU CALCUL HARMONIQUE - POST_TRAITEMENTS = FACT(statut='o',max='**',fr="Definition et renseignement des post-traitements", - CONTRAINTES = SIMP(statut='o',typ='TXM',into=('OUI', 'NON'),defaut='NON',fr="Export des contraintes en tout noeud de la ligne d'arbres"), - RESU_SUPPORT_GENERALISE = SIMP(statut='o',typ='TXM',into=('OUI', 'NON'),defaut='NON',fr="Export de la reponse du support generalise au format rmed"), - ), - ## fin POST_TRAITEMENTS - - ),# fin ANALYSE_HARMONIQUE - -### ----- CALCUL TRANSITOIRE ----- ## - ANALYSE_TRANSISTOIRE = BLOC(condition = "TYPE_ANALYSE == 'TRANSITOIRE' ",fr="Analyse transitoire de la ligne d'arbres", - - VITESSE = SIMP(statut='o',typ='TXM',min=1,max=1,defaut=None,into=('CONSTANTE','VARIABLE'),fr="Renseignement du type de vitesse de rotation consideree"), - BASE_C = BLOC(condition ="VITESSE == 'CONSTANTE'",fr="Analyse transitoire a vitesse constante", - BASE_CALCUL = SIMP(statut='o',typ='TXM',into=('PHYSIQUE','MODALE'),defaut=None,fr="Choix du type de resolution de l'analyse transitoire (sur base physique ou sur base modale)"), - BASE_MODALE = BLOC(condition = "BASE_CALCUL == 'MODALE' ", fr="Resolution sur base modale", - regles=UN_PARMI('NB_MODES','FREQ_MAX'), - NB_MODES = SIMP(statut='f',typ='I',min=1,max=1,defaut=None,fr="Renseignement du nombre de modes constituant la base de projection"), - FREQ_MAX = SIMP(statut='f',typ='R',min=1,max=1,defaut=None,fr="Renseignement de la frequence maximale des modes constituant la base de projection (Hz)"), - ),# fin BASE_MODALE - AMORTISSEMENT_M = BLOC(condition = "BASE_CALCUL == 'MODALE' ", - AMORTISSEMENT_REDUIT = SIMP(statut='o', typ='TXM',into=('OUI','NON'),defaut=None,fr="Choix du type d'amortissement"), - AMOR_MODAL = BLOC(condition = "AMORTISSEMENT_REDUIT == 'OUI' ", - AMOR_REDUIT = SIMP(statut='o', typ='R', min=1, max='**',defaut=None,fr="Renseignement de l'amortissement modal reduit (en %), la taille de la liste doit etre egale au nombre de modes constituant la base de projection"), - ),# fin AMOR_MODALE - ), # fin AMORTISSEMENT_M - ), # fin BASE_C - BASE_V = BLOC(condition ="VITESSE == 'VARIABLE'",fr="Analyse transitoire a vitesse variable", - BASE_CALCUL = SIMP(statut='o',typ='TXM',into=('MODALE',),defaut='MODALE',fr="Choix du type de resolution de l'analyse transitoire (obligatoirement sur base modale)"), - BASE_MODALE = BLOC(condition = "BASE_CALCUL == 'MODALE' ", fr="Resolution sur base modale", - regles=UN_PARMI('NB_MODES','FREQ_MAX'), - NB_MODES = SIMP(statut='f',typ='I',min=1,max=1,defaut=None,fr="Renseignement du nombre de modes constituant la base de projection"), - FREQ_MAX = SIMP(statut='f',typ='R',min=1,max=1,defaut=None,fr="Renseignement de la frequence maximale des modes constituant la base de projection (Hz)"), - ),# fin BASE_MODALE - AMORTISSEMENT_REDUIT = SIMP(statut='o', typ='TXM',into=('OUI','NON'),defaut=None,fr="Choix du type d'amortissement"), - AMOR_MODAL = BLOC(condition = "AMORTISSEMENT_REDUIT == 'OUI' ", - #AMOR_REDUIT = SIMP(statut='o', typ='R', min=1, max=1,defaut=None,fr="Renseignement de l'amortissement modal reduit (en %)"), - AMOR_REDUIT = SIMP(statut='o', typ='R', min=1, max='**',defaut=None,fr="Renseignement de l'amortissement modal reduit (en %), la taille de la liste doit etre egale au nombre de modes constituant la base de projection"), - ),# fin AMOR_MODALE - ), # fin BASE_C - VITESSE_CONSTANTE = BLOC(condition = "VITESSE == 'CONSTANTE' ", fr="Vitesse de rotation constante", - VITESSE_ROTATION = SIMP(statut='o',typ='R',min=1,max=1,defaut=None,fr="Renseignement de la vitesse de rotation (tr/min)"), - ),# fin VITESSE_CONSTANTE - VITESSE_VARIABLE = BLOC(condition = "VITESSE == 'VARIABLE' ", fr="Vitesse de rotation variable", regles=UN_PARMI('LINEAIRE','EXPONENTIELLE','PERSONNALISE'), - LINEAIRE = FACT(statut='f',min=1,max=1,fr="Variation lineaire de la vitesse de rotation", - VITESSE_INITIALE = SIMP(statut='o',typ='R',min=1,max=1,defaut=None,fr="Renseignement de la vitesse de rotation initiale (tr/min)",), - VITESSE_FINALE = SIMP(statut='o',typ='R',min=1,max=1,defaut=None,fr="Renseignement de la vitesse de rotation finale (tr/min)",), - DEPHASAGE = SIMP(statut='o',typ='R',min=1,max=1,defaut=None,fr="Renseignement de la postion angulaire initiale (degres)"), - PAS_MAJ = SIMP(statut='f',typ='R',min=1,max=1,defaut=None,fr="Renseignement du pas de mise a jour des matrices des paliers (tr/min)"), - ),# fin LINEAIRE - EXPONENTIELLE = FACT(statut='f',min=1,max=1,fr="Variation exponentielle de la vitesse de rotation", - VITESSE_INITIALE = SIMP(statut='o',typ='R',min=1,max=1,defaut=None,fr="Renseignement de la vitesse de rotation initiale (tr/min)",), - VITESSE_FINALE = SIMP(statut='o',typ='R',min=1,max=1,defaut=None,fr="Renseignement de la vitesse de rotation finale (tr/min)",), - DEPHASAGE = SIMP(statut='o',typ='R',min=1,max=1,defaut=None,fr="Renseignement de la postion angulaire initiale (degres)"), - LAMBDA = SIMP(statut='o',typ='R',min=1,max=1,defaut=None,fr="Renseignement du parametre de la loi exponentielle (Hz)"), - PAS_MAJ = SIMP(statut='f',typ='R',min=1,max=1,defaut=None,fr="Renseignement du pas de mise a jour des matrices des paliers (tr/min)"), - ),# fin EXPONENTIELLE - PERSONNALISE = FACT(statut='f',min=1,max=1,fr="Fonction personnalisee decrivant la variation de la vitesse de rotation", - FICHIER = SIMP(statut='o',typ=('Fichier','Formule vitesse rotation (*.*)'),min=1,max=1,defaut=None,fr="Renseignement du fichier contenant l'evolution temporelle (s) de la vitesse de rotation (tr/min)"), - PAS_MAJ = SIMP(statut='f',typ='R',min=1,max='**',defaut=None,fr="Renseignement du pas de mise a jour des matrices des paliers (tr/min)"), - ANGLE_INIT = SIMP(statut='o',typ='R',defaut=None,fr="Renseignement de la position angulaire initiale du rotor (degres)"), - ),# fin PERSONNALISE - ),# fin VITESSE_VARIABLE - #POIDS = SIMP(statut='o',typ='TXM',into=('OUI','NON'),defaut='OUI',fr="Choix d'application d'un poids"), - - CHARGES= FACT(statut='o',min=1,max='**',fr="Definition et renseignement du chargement applique", - TYPE = SIMP(statut='o',typ='TXM',into=('POIDS','BALOURD','FORCE','MOMENT','HARMONIQUE'),defaut=None,min=1,max=1,fr="Choix du type de chargement a appliquer"), - BALOURD = BLOC(condition = "TYPE == 'BALOURD' ",fr="Chargement de type balourd", - POSITION = SIMP(statut='o',typ='R',min=1,max=1,defaut=None,fr="Renseignement de la position axiale ou s'applique le balourd (m)"), - AMPLITUDE = SIMP(statut='o',typ='R',min=1,max=1,defaut=None,fr="Renseignement de l'amplitude du balourd (kg.m)"), - PHASE_DEG = SIMP(statut='o',typ='R',min=1,max=1,defaut=None,fr="Renseignement du decalage de la phase de la charge balourd (degres)"), - INST_APPLI= SIMP(statut='f',typ='R',min=1,max=1,defaut=0,fr="Renseignement de l'instant d'apparition du balourd (s)"), - TEMPS_MONTEE=SIMP(statut='f',typ='R',min=1,max=1,defaut=0,fr="Renseignement du temps necessaire pour atteindre l'amplitude nominale du balourd (s)"), - ),# fin BALOURD - POIDS = BLOC(condition = "TYPE == 'POIDS' ",fr="Prise en compte du champ de pesanteur", - GRAVITE = SIMP(statut='o',typ='R',defaut=9.81,fr="Renseignement de l'intensite de la gravite (m/s^2)"), - DIRECTION = SIMP(statut='o',typ='R',min=3,max=3,defaut=(1,0,0),fr="Renseignement de la direction de la force de gravite"), - INST_APPLI= SIMP(statut='f',typ='R',min=1,max=1,defaut=0,fr="Renseignement de l'instant d'apparition du poids (s)"), - TEMPS_MONTEE=SIMP(statut='f',typ='R',min=1,max=1,defaut=0,fr="Renseignement du temps necessaire pour atteindre la valeur nominale du poids (s)"), - ), # fin POIDS - FORCE = BLOC(condition = "TYPE == 'FORCE' ",fr="Application d'une force ponctuelle", - POSITION = SIMP(statut='o',typ='R',defaut=None,fr="Renseignement de la position axiale ou s'applique la force (m)"), - AMPLITUDE = SIMP(statut='o',typ='R',min=3,max=3,defaut=None,fr="Renseignement des 3 composantes decrivant la force (N)"), - INST_APPLI= SIMP(statut='f',typ='R',min=1,max=1,defaut=0,fr="Renseignement de l'instant d'apparition de la force (s)"), - TEMPS_MONTEE=SIMP(statut='f',typ='R',min=1,max=1,defaut=0,fr="Renseignement du temps necessaire pour atteindre la valeur nominale de la force (s)"), - #FONC_APPLI = SIMP(statut='f',typ='R',min=2,max=2,defaut=None,fr="Renseignement de la fonction appliquee"), - ), # fin FORCE - MOMENT = BLOC(condition = "TYPE == 'MOMENT' ",fr="Application d'un moment ponctuel", - POSITION = SIMP(statut='o',typ='R',defaut=None,fr="Renseignement de la position axiale ou s'applique le moment (m)"), - AMPLITUDE = SIMP(statut='o',typ='R',min=3,max=3,defaut=None,fr="Renseignement des 3 composantes decrivant le moment (N/m)"), - INST_APPLI= SIMP(statut='f',typ='R',min=1,max=1,defaut=0,fr="Renseignement de l'instant d'apparition du moment (s)"), - TEMPS_MONTEE=SIMP(statut='f',typ='R',min=1,max=1,defaut=0,fr="Renseignement du temps necessaire pour atteindre la valeur nominale du moment (s)"), - ), # fin MOMENT - HARMONIQUE = BLOC(condition = "TYPE == 'HARMONIQUE' ",fr="Charge harmonique", - POSITION = SIMP(statut='o',typ='R',min=1,max=1,defaut=None,fr="Renseignement de la position axiale ou s'applique la charge harmonique (m)"), - FREQUENCE = SIMP(statut='o',typ='R',min=1,max=1,defaut=None,fr="Renseignement de la frequence d'excitation harmonique (Hz)"), - AMPLITUDE = SIMP(statut='o',typ='R',min=1,max=1,defaut=None,fr="Renseignement de l'amplitude de la charge harmonique, (N)"), - INST_APPLI= SIMP(statut='f',typ='R',min=1,max=1,defaut=0,fr="Renseignement de l'instant d'apparition de la charge harmonique (s)"), - TEMPS_MONTEE=SIMP(statut='f',typ='R',min=1,max=1,defaut=0,fr="Renseignement du temps necessaire pour atteindre la valeur nominale de la charge harmonique (s)"), - #FONC_APPLI = SIMP(statut='o',typ='R',min=1,max='**',defaut=None,fr="Renseignement de la fonction appliquee de la charge harmonique (autant de valeurs que de vitesses de rotation)"), - PHASE_DEG = SIMP(statut='o',typ='R',min=1,max=1,defaut=None,fr="Renseignement du decalage de la phase de la charge harmonique (degres)"), - TYPE_DDL = SIMP(statut='o',typ='TXM',min=1,max=1,into=('DX','DRX','DY','DRY','DZ','DRZ'),defaut=None,fr="Renseignement du DDL sur lequel s'applique la charge harmonique"), - ), # fin HARMONIQUE - ), #fin CHARGES - - ETAT_INIT = FACT(statut='o',fr="Renseignement de l'etat initial du calcul", - #RESULTAT = SIMP(statut='o',typ=('sd_resultat'),max=1,defaut=None,fr="Choix de la structure de donnees resultat de code aster "), - RESULTAT = SIMP(statut='f',typ='TXM',max=1,defaut=None,fr="Choix de la structure de donnees de type 'resultat' de Code_Aster"), - INST_INIT = SIMP(statut='f',typ='R',max=1,defaut=0.0,fr="Renseignement de l'instant de la structure de donnees a partir duquel il faut lancer le calcul (s)"), - ), # fin ETAT_INIT - PARAM_TEMPS = SIMP(statut='o',typ='TXM',max=1,into=('PAS','LISTE'),defaut=None,fr="Choix du type de discretisation temporelle"), - #PAS = BLOC(condition = "VITESSE == 'VARIABLE'",fr="Renseignement des parametres des pas", - PAS = BLOC(condition = "PARAM_TEMPS == 'PAS'",fr="Renseignement de pas de temps", - TEMPS_PAS = SIMP(statut='o',typ='R',max=1,defaut=None,fr="Renseignement du pas de temps d'integration(en s)"), - INST_INI = SIMP(statut='f',typ='R',max=1,defaut=None,fr="Renseignement de l'instant initial du calcul (s)"), - INST_FIN = SIMP(statut='o',typ='R',max=1,defaut=None,fr="Renseignement de l'instant final du calcul (s)"), - ), # fin TEMPS_PAS - LIST_INST = BLOC(condition = "PARAM_TEMPS == 'LISTE'",fr="Renseignement d'une liste d'instants", - LISTE = SIMP(statut='o',typ='R',min=1,max='**',defaut=None,fr="Renseignement d'une liste d'instants auxquels resoudre le calcul (s)"), - ), # fin LIST_INST - PAS_ARCHIVAGE = SIMP(statut='o',typ='I',max=1,defaut=1,fr="Renseignement du pas d'archivage des resultats (une sauvegarde tous les 'PAS_ARCHIVAGE' instants d'integration)",), - SCHEMA_TEMPS = SIMP(statut='o',typ='TXM',max=1,into=('NEWMARK','WILSON','ADAPT_ORDRE1','ADAPT_ORDRE2','DIFF_CENTRE'),defaut='NEWMARK',fr="Choix d'un schema d'integration temporelle"), - NEWMARK = BLOC(condition = "SCHEMA_TEMPS == 'NEWMARK' ",fr="Methode de NEWMARK", - BETA = SIMP(statut='f',typ='R',max=1,defaut=0.25,fr="Renseignement de la valeur beta pour la methode de NEWMARK"), - GAMMA = SIMP(statut='f',typ='R',max=1,defaut=0.25,fr="Renseignement de la valeur gamma pour la methode de NEWMARK"), - ),# fin NEWMARK - WILSON = BLOC(condition = "SCHEMA_TEMPS == 'WILSON' ",fr="Methode de WILSON", - THETA = SIMP(statut='f',typ='R',max=1,defaut=1.4,fr="Renseignement de la valeur theta pour la methode de WILSON"), - ), # fin WILSON - - # POST-TRAITEMENTS DU CALCUL TRANSITOIRE - POST_TRAITEMENTS = FACT(statut='o',max='**',fr="Definition et renseignement des post-traitements", - CONTRAINTES = SIMP(statut='o',typ='TXM',into=('OUI', 'NON'),defaut='NON',fr="Export des contraintes en tout noeud de la ligne d'arbres"), - ), # fin POST_TRAITEMENTS - - ), # fin ANALYSE_TRANSISTOIRE - - -### ----- CALCUL COUPLE CODE_ASTER/EYDOS ----- ## - ANALYSE_TRANSITOIRE_ACCIDENTEL = BLOC(condition = "TYPE_ANALYSE == 'TRANSITOIRE_ACCIDENTEL' ",fr="Analyse transitoire accidentelle de la ligne d'arbres", - #BASE_MODALE = FACT(statut='o', fr="Choix des parametres de la base modale", - #POIDS = SIMP(statut='o',typ='TXM',into=('OUI','NON'),defaut='OUI',fr="Choix d'application d'un poids"), - BASE_MODALE = BLOC(condition = "True", fr="Resolution sur base modale", - regles=UN_PARMI('NB_MODES','FREQ_MAX'), - NB_MODES = SIMP(statut='f',typ='I',min=1,max=1,defaut=None,fr="Renseignement du nombre de modes constituant la base de projection"), - FREQ_MAX = SIMP(statut='f',typ='R',min=1,max=1,defaut=None,fr="Renseignement de la frequence maximale des modes constituant la base de projection (Hz)"), - ),# fin BASE_MODALE - VITESSE_ROTATION = SIMP(statut='o',typ='R',min=1,max=1,defaut=None,fr="Renseignement de la vitesse de rotation (tr/min)"), - - CHARGES= FACT(statut='o',min=1,max='**',fr="Definition et renseignement du chargement applique", - TYPE = SIMP(statut='o',typ='TXM',into=('POIDS','BALOURD','FORCE','MOMENT','HARMONIQUE'),defaut=None,min=1,max=1,fr="Choix du type de chargement a appliquer"), - BALOURD = BLOC(condition = "TYPE == 'BALOURD' ",fr="Chargement de type balourd", - POSITION = SIMP(statut='o',typ='R',min=1,max=1,defaut=None,fr="Renseignement de la position axiale ou s'applique le balourd (m)"), - AMPLITUDE = SIMP(statut='o',typ='R',min=1,max=1,defaut=None,fr="Renseignement de l'amplitude du balourd (kg.m)"), - PHASE_DEG = SIMP(statut='o',typ='R',min=1,max=1,defaut=None,fr="Renseignement du decalage de la phase de la charge balourd (degres)"), - INST_APPLI= SIMP(statut='f',typ='R',min=1,max=1,defaut=0,fr="Renseignement de l'instant d'apparition du balourd (s)"), - TEMPS_MONTEE=SIMP(statut='f',typ='R',min=1,max=1,defaut=0,fr="Renseignement du temps necessaire pour atteindre l'amplitude nominale du balourd (s)"), - ),# fin BALOURD - POIDS = BLOC(condition = "TYPE == 'POIDS' ",fr="Prise en compte du champ de pesanteur", - GRAVITE = SIMP(statut='o',typ='R',defaut=9.81,fr="Renseignement de l'intensite de la gravite (m/s^2)"), - DIRECTION = SIMP(statut='o',typ='R',min=3,max=3,defaut=(1,0,0),fr="Renseignement de la direction de la force de gravite"), - INST_APPLI= SIMP(statut='f',typ='R',min=1,max=1,defaut=0,fr="Renseignement de l'instant d'apparition du poids (s)"), - TEMPS_MONTEE=SIMP(statut='f',typ='R',min=1,max=1,defaut=0,fr="Renseignement du temps necessaire pour atteindre la valeur nominale du poids (s)"), - ), # fin POIDS - FORCE = BLOC(condition = "TYPE == 'FORCE' ",fr="Application d'une force ponctuelle", - POSITION = SIMP(statut='o',typ='R',defaut=None,fr="Renseignement de la position axiale ou s'applique le moment (m)"), - AMPLITUDE = SIMP(statut='o',typ='R',min=3,max=3,defaut=None,fr="Renseignement des 3 composantes decrivant le moment (N/m)"), - INST_APPLI= SIMP(statut='f',typ='R',min=1,max=1,defaut=0,fr="Renseignement de l'instant d'apparition de la force (s)"), - TEMPS_MONTEE=SIMP(statut='f',typ='R',min=1,max=1,defaut=0,fr="Renseignement du temps necessaire pour atteindre la valeur nominale de la force (s)"), - #FONC_APPLI = SIMP(statut='f',typ='R',min=2,max=2,defaut=None,fr="Renseignement de la fonction appliquee"), - ), # fin FORCE - MOMENT = BLOC(condition = "TYPE == 'MOMENT' ",fr="Application d'un moment ponctuel", - POSITION = SIMP(statut='o',typ='R',defaut=None,fr="Renseignement de la position axiale ou s'applique le moment (m)"), - AMPLITUDE = SIMP(statut='o',typ='R',min=3,max=3,defaut=None,fr="Renseignement des 3 composantes decrivant le moment (N/m)"), - INST_APPLI= SIMP(statut='f',typ='R',min=1,max=1,defaut=0,fr="Renseignement de l'instant d'apparition du moment (s)"), - TEMPS_MONTEE=SIMP(statut='f',typ='R',min=1,max=1,defaut=0,fr="Renseignement du temps necessaire pour atteindre la valeur nominale du moment (s)"), - ), # fin MOMENT - HARMONIQUE = BLOC(condition = "TYPE == 'HARMONIQUE' ",fr="Charge harmonique", - POSITION = SIMP(statut='o',typ='R',min=1,max=1,defaut=None,fr="Renseignement de la position axiale ou s'applique la charge harmonique (m)"), - FREQUENCE = SIMP(statut='o',typ='R',min=1,max=1,defaut=None,fr="Renseignement de la frequence d'excitation harmonique (Hz)"), - AMPLITUDE = SIMP(statut='o',typ='R',min=1,max=1,defaut=None,fr="Renseignement de l'amplitude de la charge harmonique, (N)"), - INST_APPLI= SIMP(statut='f',typ='R',min=1,max=1,defaut=0,fr="Renseignement de l'instant d'apparition de la charge harmonique (s)"), - TEMPS_MONTEE=SIMP(statut='f',typ='R',min=1,max=1,defaut=0,fr="Renseignement du temps necessaire pour atteindre la valeur nominale de la charge harmonique (s)"), - #FONC_APPLI = SIMP(statut='o',typ='R',min=1,max='**',defaut=None,fr="Renseignement de la fonction appliquee de la charge harmonique (autant de valeurs que de vitesses de rotation)"), - PHASE_DEG = SIMP(statut='o',typ='R',min=1,max=1,defaut=None,fr="Renseignement du decalage de la phase de la charge harmonique (degres)"), - TYPE_DDL = SIMP(statut='o',typ='TXM',min=1,max=1,into=('DX','DRX','DY','DRY','DZ','DRZ'),defaut=None,fr="Renseignement du DDL sur lequel s'applique la charge harmonique"), - ), # fin HARMONIQUE - ), #fin CHARGES - ETAT_INIT = FACT(statut='o',fr="Renseignement de l'etat initial du calcul", - #RESULTAT = SIMP(statut='o',typ=('sd_resultat'),max=1,defaut=None,fr="Choix de la structure de donnees resultat de code aster "), - # 20121126 - #RESULTAT = SIMP(statut='o',typ='TXM',max=1,defaut=None,fr="Choix de la structure de donnees resultat de code aster "), - INST_INIT = SIMP(statut='f',typ='R',max=1,defaut=None,fr="Renseignement de l'instant initial a partir duquel il faut lancer le calcul (s)"), - ), # fin ETAT_INIT - #PARAM_TEMPS = SIMP(statut='o',typ='TXM',max=1,into=('PAS','LIST_INST'),defaut=None,fr="Choix du type de parametrage temporel"), - # 20121126 - PARAM_TEMPS = SIMP(statut='o',typ='TXM',max=1,into=('PAS',),defaut="PAS",fr="Choix du type de discretisation temporelle",), - PAS = BLOC(condition = "PARAM_TEMPS == 'PAS' ",fr="Renseignement de pas de temps", - PAS_ASTER = SIMP(statut='o',typ='R',max=1,defaut=None,fr="Renseignement du pas de temps d'integration Code_Aster (en s)",), - PAS_EDYOS = SIMP(statut='o',typ='R',max=1,defaut=None,fr="Renseignement du pas de temps d'integration Edyos (en s)",), - INST_FIN = SIMP(statut='o',typ='R',max=1,defaut=None,fr="Renseignement de l'instant final du calcul (en s)",), - ), # fin TEMPS_PAS - #LIST_INST = BLOC(condition = "PARAM_TEMPS == 'LIST_INST' ",fr="Renseignement d'une liste de pas", - #LISTE = SIMP(statut='f',typ='R',min=1,max='**',defaut=None,fr="Renseignement d'une liste de pas"), - #), # fin LIST_INST - PAS_ARCHIVAGE = SIMP(statut='o',typ='I',max=1,defaut=1,fr="Renseignement du pas d'archivage des resultats (une sauvegarde tous les 'PAS_ARCHIVAGE' instants d'integration)",), - PARA_MEM = SIMP(statut='f',typ='I',max=1,defaut=6400,fr="Renseigner la taille maximale de la memoire (Mo)",), - PARA_CPU = SIMP(statut='f',typ='I',max=1,defaut=10000,fr="Renseigner le temps CPU maximal (s)",), - SCHEMA_TEMPS = SIMP(statut='o',typ='TXM',max=1,into=('DIFF_CENTRE', 'ADAPT_ORDRE1','ADAPT_ORDRE2'),defaut='ADAPT_ORDRE2',fr="Choix d'un schema d'integration temporelle"), - - # POST-TRAITEMENTS DU CALCUL TRANSITOIRE ACCIDENTEL - POST_TRAITEMENTS = FACT(statut='o',max='**',fr="Definition et renseignement des post-traitements", - CONTRAINTES = SIMP(statut='o',typ='TXM',into=('OUI', 'NON'),defaut='NON',fr="Export des contraintes en tout noeud de la ligne d'arbres"), - ), # fin POST_TRAITEMENTS - ), # fin ANALYSE_TRANSITOIRE_ACCIDENTEL - -)# fin SPECIFICATION_ANALYSE diff --git a/SPECA/SPECA_Cata_V2_00.py b/SPECA/SPECA_Cata_V2_00.py deleted file mode 100644 index f6c34acf..00000000 --- a/SPECA/SPECA_Cata_V2_00.py +++ /dev/null @@ -1,458 +0,0 @@ -## -*- coding: utf-8 -*- -# -## -------------------------------------------------- -## debut entete -## -------------------------------------------------- -# -from Accas import * - - -# rend disponible le type tuple (liste) -import types -class Tuple: - def __init__(self,ntuple): - self.ntuple=ntuple - - def __convert__(self,valeur): - if type(valeur) == types.StringType: - return None - if len(valeur) != self.ntuple: - return None - return valeur - - def info(self): - return "Tuple de %s elements" % self.ntuple - - __repr__=info - __str__=info - - - -# -#CONTEXT.debug = 1 - -VERSION_CATALOGUE="2.0.0"; - -JdC = JDC_CATA ( code = 'SPECA', - execmodul = None, - regles=(AU_MOINS_UN('SPECIFICATION_ANALYSE',), - AU_PLUS_UN('SPECIFICATION_ANALYSE',), - ), - )# Fin JDC_CATA - -## ----- SPECIFICATION DE L'ETUDE ----- ## -SPECIFICATION_ANALYSE= MACRO (nom = 'SPECIFICATION_ANALYSE', - op = None, - UIinfo = {"groupes":("Machine tournante",)}, - fr = "Specification des analyses", - TYPE_ANALYSE = SIMP(statut='o', typ='TXM',into=('STATIQUE', 'MODALE', 'HARMONIQUE', 'TRANSITOIRE', 'TRANSITOIRE_ACCIDENTEL','SYNTHESE')), - # pour V1.1 flexion uniquement - #TYPE_COMPORTEMENT = SIMP(statut='o', typ='TXM',into=('FLEXION'),defaut='FLEXION',fr="Renseignement du type de comportement voulu"), - TYPE_COMPORTEMENT = BLOC(condition = "TYPE_ANALYSE in ('MODALE','HARMONIQUE','STATIQUE','TRANSITOIRE','TRANSITOIRE_ACCIDENTEL','SYNTHESE')", - FLEXION = SIMP(statut='o',typ='TXM',into=('OUI',),defaut='OUI',fr="Prise en compte la flexion de la ligne d'arbres: obligatoire"), - TORSION = SIMP(statut='f',typ='TXM',into=('OUI','NON'),defaut='NON',fr="Choix de la prise en compte la torsion de la ligne d'arbres"), - COMPRESSION = SIMP(statut='f',typ='TXM',into=('OUI','NON'),defaut='NON',fr="Choix de la prise en compte la traction/compression de la ligne d'arbres"), - ), - - SURCHARGE=BLOC(condition = "TYPE_ANALYSE in ('MODALE','HARMONIQUE','STATIQUE','TRANSITOIRE','TRANSITOIRE_ACCIDENTEL','SYNTHESE')",statut="f", - TEMPLATE=SIMP( statut="f", - typ=("Fichier","Fichier Template (*.tpl)"), - min=1,max=1, - fr="Utiliser un template d'analyse modifie" - ), - PARAMETRES= FACT(statut='f',min=1,max='**',fr="Definition et renseignement des parametres utilises dans le template surcharge", - CLE=SIMP(statut='o',typ='TXM',defaut=None,fr="Nom du parametre dans le template"), - TYPE=SIMP(statut='o',typ='TXM',into=('ENTIER','REEL','CHAINE','FICHIER','REPERTOIRE'),fr="Nature du parametre a renseigner"), - ENTIER=BLOC(condition="TYPE=='ENTIER'", - VALUE=SIMP(statut='o',typ='I',defaut=0,fr="Renseignement d'un nombre entier"), - ), - REEL=BLOC(condition="TYPE=='REEL'", - VALUE=SIMP(statut='o',typ='R',defaut=0.0,fr="Renseignement d'un nombre reel"), - ), - CHAINE=BLOC(condition="TYPE=='CHAINE'", - VALUE=SIMP(statut='o',typ='TXM',defaut='',fr="Renseignement d'une chaine de caracteres"), - ), - FICHIER=BLOC(condition="TYPE=='FICHIER'", - VALUE=SIMP(statut='o',typ=("Fichier","All files (*.*)"),fr="Renseignement d'un fichier") - ), - REPERTOIRE =BLOC(condition="TYPE=='REPERTOIRE'", - VALUE=SIMP(statut='o',typ="Repertoire",fr="Renseignement d'un repertoire") - ), - - ), - ), - - - -### ----- CALCUL STATIQUE ----- ## - ANALYSE_STATIQUE = BLOC(condition = "TYPE_ANALYSE == 'STATIQUE' ",fr="Analyse statique (vitesse de rotation nulle de la ligne d'arbres)" - - CHARGES= FACT(statut='o',min=1,max='**',fr="Definition et renseignement du chargement applique", - TYPE = SIMP(statut='o',typ='TXM',into=('POIDS','FORCE','MOMENT','DELIGNAGE'),defaut=None,min=1,max=1,fr="Choix du type de chargement a appliquer"), - POIDS = BLOC(condition = "TYPE == 'POIDS' ",fr="Prise en compte du champ de pesanteur", - GRAVITE = SIMP(statut='o',typ='R',defaut=9.81,fr="Renseignement de l'intensite de la gravite (m/s^2)"), - DIRECTION = SIMP(statut='o',typ='R',min=3,max=3,defaut=(1,0,0),fr="Renseignement de la direction de la force de gravite"), - ), # fin POIDS - FORCE = BLOC(condition = "TYPE == 'FORCE' ",fr="Application d'une force ponctuelle", - POSITION = SIMP(statut='o',typ='R',defaut=None,fr="Renseignement de la position axiale ou s'applique la force (m)"), - MAGNITUDE = SIMP(statut='o',typ='R',min=3,max=3,defaut=None,fr="Renseignement des 3 composantes decrivant la force (N)"), - #FONC_APPLI = SIMP(statut='f',typ='R',min=2,max=2,defaut=None,fr="Renseignement de la fonction appliquee"), - ), # fin FORCE - MOMENT = BLOC(condition = "TYPE == 'MOMENT' ",fr="Application d'un moment ponctuel", - POSITION = SIMP(statut='o',typ='R',defaut=None,fr="Renseignement de la position axiale ou s'applique le moment (m)"), - MAGNITUDE = SIMP(statut='o',typ='R',min=3,max=3,defaut=None,fr="Renseignement des 3 composantes decrivant le moment (N/m)"), - ), # fin MOMENT - DELIGNAGE = BLOC(condition = "TYPE == 'DELIGNAGE' ",fr="Application d'un delignage sur un ou plusieurs paliers", - NOM_PALIER = SIMP(statut='o',typ='TXM',min=1,max=1,defaut=None,fr="Renseignement du nom du palier deligne"), - DX = SIMP(statut='o',typ='R',min=1,max=1,defaut=None,fr="Renseignement du delignage suivant X du palier (m)"), - DY = SIMP(statut='o',typ='R',min=1,max=1,defaut=None,fr="Renseignement du delignage suivant Y du palier (m)"), - ), # fin Delignage - ), #fin CHARGES - - ## POST-TRAITEMENTS DU CALCUL STATIQUE - POST_TRAITEMENTS = FACT(statut='o',max='**',fr="Definition et renseignement des post-traitements", - TYPE = SIMP(statut='o',typ='TXM',into=('DEPL_ABS','DEPL_RELA','EFFORTS_PAL','REAC_NODA','CONTRAINTES'),defaut=None,fr="Choix du type de post-traitement"), - DEPL = BLOC(condition="TYPE in ('DEPL_ABS','DEPL_RELA') ",fr="Deplacement",regles=UN_PARMI('POSITION','PALIER'), - POSITION = SIMP(statut='f',typ='R',defaut=None,fr="Renseignement de la coordonnee du deplacement"), - PALIER = SIMP(statut='f',max='**',typ='TXM',defaut=None,fr="Renseignement du nom du palier"), - ), # fin DEPL - CONTRAINTES = BLOC(condition="TYPE == 'CONTRAINTES' ",fr="Export des contraintes",regles=UN_PARMI('POSITION','ZONE','TOUT'), - POSITION = SIMP(statut='f',typ='R',min=1,max=1,defaut=None,fr="Renseignement de la coordonnee de la contrainte"), - ZONE = SIMP(statut='f',typ='TXM',defaut=None,fr="Renseignement de la zone de la contrainte"), - TOUT = SIMP(statut='f',typ='TXM',into=('OUI'),fr="Export pour tous les noeuds"), - ), # fin CONTRAINTES - REAC_NODA = BLOC(condition="TYPE == 'REAC_NODA' ", fr="Reaction nodale",regles=UN_PARMI('POSITION','PALIER'), - POSITION = SIMP(statut='f',typ='R',max=1,defaut=None,fr="Renseignement de la coordonnee de la reaction"), - #ZONE = SIMP(statut='f',typ='TXM',defaut=None,fr="Renseignement de l'etiquette de la zone de la reaction"), - PALIER = SIMP(statut='f',max='**',typ='TXM',defaut=None,fr="Renseignement du nom du palier"), - ), # fin REAC_NODA - ), # fin POST_TRAITEMENT - ## fin bloc POST_TRAITEMENTS - - ),# fin ANALYSE_STATIQUE - -### ----- CALCUL MODALE ----- ## - ANALYSE_MODALE = BLOC(condition = "TYPE_ANALYSE == 'MODALE' ",fr="Analyse modale de la ligne d'arbres" - BASE_CALCUL = SIMP(statut='o',typ="TXM",into=('MODALE','PHYSIQUE'),defaut=None,fr="Choix du type de resolution de l'analyse modale (sur base physique ou sur base modale)"), - BASE_MODALE = BLOC(condition="BASE_CALCUL=='MODALE'",fr="Resolution sur base modale", - regles=UN_PARMI('NB_MODES','FREQ_MAX'), - NB_MODES=SIMP(statut='f',typ='I',min=1,max=1,defaut=None,fr="Renseignement du nombre de modes constituant la base de projection"), - FREQ_MAX=SIMP(statut='f',typ='R',min=1,max=1,defaut=None,fr="Renseignement de la frequence maximale des modes constituant la base de projection (Hz)"), - ), # fin BASE_MODALE - AMORTISSEMENT = SIMP(statut='o',typ='TXM',min=1,max=1,into=('OUI','NON'),defaut='OUI',fr="Choix de la prise en compte de l'amortissment"), - GYROSCOPIE = SIMP(statut='o',typ='TXM',min=1,max=1,into=('OUI','NON'),defaut='OUI',fr="Choix de la prise en compte de la gyroscopie"), - VITESSE_ROTATION = SIMP(statut='o',typ='R',min=1,max='**',defaut=None,fr="Renseignement de la liste des vitesses de rotation etudiees (tr/min)"), - OPTION_CALCUL = SIMP(statut='o',typ='TXM',min=1,max=1,into=('PLUS_PETITE','CENTRE'),defaut=None,fr="Choix de l'option de calcul"), - PLUS_PETITE = BLOC(condition="OPTION_CALCUL=='PLUS_PETITE'",fr="Option PLUS_PETITE",fr="Calcul des n premieres frequences" - NMAX_FREQ = SIMP(statut='o',typ='I',min=1,max=1,defaut=None,fr="Renseignement du nombre maximal de frequences a calculer"), - ), # fin PLUS_PETITE - CENTRE = BLOC(condition="OPTION_CALCUL=='CENTRE'",fr="Option CENTRE",fr="Calcul d'un nombre n de frequences autour d'une frequence donnee" - FREQ = SIMP(statut='o',typ='R',min=1,max=1,defaut=None,fr="Renseignement de la frequence centrale (Hz)"), - NMAX_FREQ = SIMP(statut='o',typ='I',min=1,max=1,defaut=None,fr="Renseignement du nombre maximal de frequences"), - ), # fin CENTRE - METHODE=SIMP(statut='f',typ='TXM',min=1,max=1,into=('QZ','SORENSEN'),defaut='SORENSEN',fr="Choix de la methode de resolution"), - - POST_TRAITEMENTS = FACT(statut='o',max='**',fr="Definition et renseignement des post-traitements", - TYPE = SIMP(statut='o',typ='TXM',defaut=None,into=('TABLEAU_PARAM_MODAUX','DIAG_CAMPBELL'),fr="Choix du type de post-traitement",), - #TABLEAU_PARAM_MODAUX = SIMP(statut='f',typ='TXM',min=1,max=1,defaut=None,into=('SIMPLE','COMPLET'),fr="Choix du type de tableau"), - TABLEAU_PARAM_MODAUX = BLOC(condition = "TYPE == 'TABLEAU_PARAM_MODAUX'",fr="Choix du type de tableau", - TABLEAU = SIMP(statut='o',max=1,typ='TXM',defaut='SIMPLE',into=('SIMPLE','COMPLET'),), - ), # fin TABLEAU_PARAM_MODAUX - DIAG_CAMPBELL = BLOC(condition = "TYPE == 'DIAG_CAMPBELL'", fr = "Choix des options du diagramme de Campbell", - PRECESSION = SIMP(statut='o',typ='TXM',max=1,defaut=None,into=('SOMME','PLUS_GRANDE_ORBITE'),fr="Critere de determination de la precession"), - SUIVI = SIMP(statut='o',typ='TXM',max=1,defaut=None,into=('SANS_TRI','TRI_PREC','TRI_FORM_MOD'),fr="Methode de suivi des modes"), - # 20121018 ajout de NB_MODES a la demande de Ionel Nistor - NB_MODES = SIMP(statut='o',typ='I',max=1,defaut=None,fr="Nombre de modes affiches dans le diagramme, doit etre inferieur au nombre de modes calcules (NMAX_FREQ)"), - ), # fin DIAG_CAMPBELL - #DIAG_CAMPBELL = SIMP(statut='f',typ='TXM',min=1,max=1,defaut=None,into=('OUI','NON'),fr="Choix de calcul du diagramme de Campbell (uniquement si plusieurs vitesses de rotation ont ete renseignees)",), - ), # fin POST_TRAITEMENTS - - - ), # fin ANALYSE_MODALE - -## ----- CALCUL HARMONIQUE ----- ## - ANALYSE_HARMONIQUE = BLOC(condition = "TYPE_ANALYSE == 'HARMONIQUE' ",fr="Analyse harmonique de la ligne d'arbres", - - ## specification calcul harmonique - BASE_CALCUL = SIMP(statut='o',typ='TXM',into=('PHYSIQUE','MODALE'),defaut=None,fr="Choix du type de resolution de l'analyse modale (sur base physique ou sur base modale)"), - BASE_MODALE = BLOC(condition = "BASE_CALCUL == 'MODALE' ", fr="Resolution sur base modale", - #MODALE = FACT(statut='o', - regles=UN_PARMI('NB_MODES','FREQ_MAX'), - NB_MODES = SIMP(statut='f',typ='I',min=1,max=1,defaut=None,fr="Renseignement du nombre de modes constituant la base de projection"), - FREQ_MAX = SIMP(statut='f',typ='R',min=1,max=1,defaut=None,fr="Renseignement de la frequence maximale des modes constituant la base de projection (Hz)"), - #),# fin MODALE - ),# fin BASE_MODALE - AMORTISSEMENT_P = BLOC(condition = "BASE_CALCUL == 'PHYSIQUE' ", - AMORTISSEMENT = SIMP(statut='o', typ='TXM',into=('STRUCTUREL'),defaut=None,fr="Choix du type d'amortissement"), - ), # fin AMORTISSEMENT_P - AMORTISSEMENT_M = BLOC(condition = "BASE_CALCUL == 'MODALE' ", - AMORTISSEMENT = SIMP(statut='o', typ='TXM',into=('REDUIT','STRUCTUREL'),defaut=None,fr="Choix du type d'amortissement"), - AMOR_MODAL = BLOC(condition = "AMORTISSEMENT == 'REDUIT' ", - #AMOR_REDUIT = SIMP(statut='o', typ='R', min=1, max=1,defaut=None,fr="Renseignement de l'amortissement modal reduit (en %)"), - AMOR_REDUIT = SIMP(statut='o', typ='R', min=1, max='**',defaut=None,fr="Renseignement de l'amortissement modal reduit (en %), la taille de la liste doit etre egale au nombre de modes constituant la base de projection"), - ),# fin AMOR_MODALE - ), # fin AMORTISSEMENT_M - VITESSE_ROTATION = SIMP(statut='o',typ='R',min=1,max='**',defaut=None,fr="Renseignement de la liste des vitesses de rotation etudiees (tr/min)"), - # 20121018 retrait de defaut_fn a la demande de EDF - CHARGES= FACT(statut='o',min=1,max='**',fr="Definition et renseignement du chargement applique", - TYPE = SIMP(statut='o',typ='TXM',into=('BALOURD','HARMONIQUE'),defaut=None,min=1,max=1,fr="Choix du type de chargement a appliquer"), - BALOURD = BLOC(condition = "TYPE == 'BALOURD' ",fr="Chargement de type balourd", - POSITION = SIMP(statut='o',typ='R',min=1,max=1,defaut=None,fr="Renseignement de la position axiale ou s'applique le balourd (m)"), - MAGNITUDE = SIMP(statut='o',typ='R',min=1,max=1,defaut=None,fr="Renseignement de l'amplitude du balourd (kg.m)"), - PHASE_DEG = SIMP(statut='o',typ='R',min=1,max=1,defaut=None,fr="Renseignement du decalage de la phase de la charge balourd (degres)"), - ),# fin BALOURD - HARMONIQUE = BLOC(condition = "TYPE == 'HARMONIQUE' ",fr="Charge harmonique", - POSITION = SIMP(statut='o',typ='R',min=1,max=1,defaut=None,fr="Renseignement de la position axiale ou s'applique la charge harmonique (m)"), - FREQUENCE = SIMP(statut='o',typ='R',min=1,max=1,defaut=None,fr="Renseignement de la frequence d'excitation harmonique (Hz)"), - MAGNITUDE = SIMP(statut='o',typ='R',min=1,max=1,defaut=None,fr="Renseignement de l'amplitude de la charge harmonique, (N)"), - FONC_APPLI = SIMP(statut='o',typ='R',min=1,max='**',defaut=None,fr="Renseignement de la liste de coefficients appliques sur la charge harmonique (autant que de vitesses de rotation)"), - PHASE_DEG = SIMP(statut='o',typ='R',min=1,max=1,defaut=None,fr="Renseignement du decalage de la phase de la charge harmonique (degres)"), - TYPE_DDL = SIMP(statut='o',typ='TXM',min=1,max=1,into=('DX','DRX','DY','DRY','DZ','DRZ'),defaut=None,fr="Renseignement du DDL sur lequel s'applique la charge harmonique"), - ), # fin HARMONIQUE - ), #FIN CHARGES - ## POST-TRAITEMENTS DU CALCUL HARMONIQUE - POST_TRAITEMENTS = FACT(statut='o',max='**',fr="Definition et renseignement des post-traitements", - TYPE = SIMP(statut='o',typ='TXM',into=('DEPL_RELA','REAC_NODA','EFFORTS_PAL','CONTRAINTES'),defaut=None,fr="Choix du type de post-traitement"), - DEPL = BLOC(condition = "TYPE in ('DEPL_ABS','DEPL_RELA') ",fr="Deplacement",regles=UN_PARMI('POSITION','PALIER'), - POSITION = SIMP(statut='f',typ='R',defaut=None,fr="Renseignement de la coordonnee du deplacement"), - PALIER = SIMP(statut='f',max='**',typ='TXM',defaut=None,fr="Renseignement du nom du palier"), - ), # fin DEPL - CONTRAINTES = BLOC(condition="TYPE == 'CONTRAINTES' ",fr="Export des contraintes",regles=UN_PARMI('POSITION','ZONE','TOUT'), - POSITION = SIMP(statut='f',typ='R',min=1,max=1,defaut=None,fr="Renseignement de la coordonnee de la contrainte"), - ZONE = SIMP(statut='f',typ='TXM',min=1,max=1,defaut=None,fr="Renseignement du nom de la zone de la contrainte"), - TOUT = SIMP(statut='f',typ='TXM',into=('OUI'),min=1,max=1,fr="Export pour tous les noeuds"), - ), # fin CONTRAINTES - ), - ## fin bloc POST_TRAITEMENTS - - ),# fin ANALYSE_HARMONIQUE - -### ----- CALCUL TRANSITOIRE ----- ## - ANALYSE_TRANSISTOIRE = BLOC(condition = "TYPE_ANALYSE == 'TRANSITOIRE' ",fr="Analyse transitoire de la ligne d'arbres", - - VITESSE = SIMP(statut='o',typ='TXM',min=1,max=1,defaut=None,into=('CONSTANTE','VARIABLE'),fr="Renseignement du type de vitesse de rotation consideree"), - BASE_C = BLOC(condition ="VITESSE == 'CONSTANTE'",fr="Analyse transitoire a vitesse constante" - BASE_CALCUL = SIMP(statut='o',typ='TXM',into=('PHYSIQUE','MODALE'),defaut=None,fr="Choix du type de resolution de l'analyse transitoire (sur base physique ou sur base modale)"), - BASE_MODALE = BLOC(condition = "BASE_CALCUL == 'MODALE' ", fr="Resolution sur base modale", - regles=UN_PARMI('NB_MODES','FREQ_MAX'), - NB_MODES = SIMP(statut='f',typ='I',min=1,max=1,defaut=None,fr="Renseignement du nombre de modes constituant la base de projection"), - FREQ_MAX = SIMP(statut='f',typ='R',min=1,max=1,defaut=None,fr="Renseignement de la frequence maximale des modes constituant la base de projection (Hz)"), - ),# fin BASE_MODALE - AMORTISSEMENT_M = BLOC(condition = "BASE_CALCUL == 'MODALE' ", - AMORTISSEMENT = SIMP(statut='o', typ='TXM',into=('REDUIT','STRUCTUREL'),defaut=None,fr="Choix du type d'amortissement"), - AMOR_MODAL = BLOC(condition = "AMORTISSEMENT == 'REDUIT' ", - AMOR_REDUIT = SIMP(statut='o', typ='R', min=1, max='**',defaut=None,fr="Renseignement de l'amortissement modal reduit (en %), la taille de la liste doit etre egale au nombre de modes constituant la base de projection"), - ),# fin AMOR_MODALE - ), # fin AMORTISSEMENT_M - ), # fin BASE_C - BASE_V = BLOC(condition ="VITESSE == 'VARIABLE'",fr="Analyse transitoire a vitesse variable" - BASE_CALCUL = SIMP(statut='o',typ='TXM',into=('MODALE'),defaut='MODALE',fr="Choix du type de resolution de l'analyse transitoire (obligatoirement sur base modale)"), - BASE_MODALE = BLOC(condition = "BASE_CALCUL == 'MODALE' ", fr="Resolution sur base modale", - regles=UN_PARMI('NB_MODES','FREQ_MAX'), - NB_MODES = SIMP(statut='f',typ='I',min=1,max=1,defaut=None,fr="Renseignement du nombre de modes constituant la base de projection"), - FREQ_MAX = SIMP(statut='f',typ='R',min=1,max=1,defaut=None,fr="Renseignement de la frequence maximale des modes constituant la base de projection (Hz)"), - ),# fin BASE_MODALE - AMORTISSEMENT = SIMP(statut='o', typ='TXM',into=('REDUIT','STRUCTUREL'),defaut=None,fr="Choix du type d'amortissement"), - AMOR_MODAL = BLOC(condition = "AMORTISSEMENT == 'REDUIT' ", - #AMOR_REDUIT = SIMP(statut='o', typ='R', min=1, max=1,defaut=None,fr="Renseignement de l'amortissement modal reduit (en %)"), - AMOR_REDUIT = SIMP(statut='o', typ='R', min=1, max='**',defaut=None,fr="Renseignement de l'amortissement modal reduit (en %), la taille de la liste doit etre egale au nombre de modes constituant la base de projection"), - ),# fin AMOR_MODALE - ), # fin BASE_C - VITESSE_CONSTANTE = BLOC(condition = "VITESSE == 'CONSTANTE' ", fr="Vitesse de rotation constante", - VITESSE_ROTATION = SIMP(statut='o',typ='R',min=1,max=1,defaut=None,fr="Renseignement de la vitesse de rotation (tr/min)"), - ),# fin VITESSE_CONSTANTE - VITESSE_VARIABLE = BLOC(condition = "VITESSE == 'VARIABLE' ", fr="Vitesse de rotation variable", regles=UN_PARMI('LINEAIRE','EXPONENTIELLE','FORMULE'), - LINEAIRE = FACT(statut='f',min=1,max=1,fr="Variation lineaire de la vitesse de rotation", - VITESSE_INITIALE = SIMP(statut='o',typ='R',min=1,max=1,defaut=None,fr="Renseignement de la vitesse de rotation initiale (tr/min)",), - VITESSE_FINALE = SIMP(statut='o',typ='R',min=1,max=1,defaut=None,fr="Renseignement de la vitesse de rotation finale (tr/min)",), - DEPHASAGE = SIMP(statut='o',typ='R',min=1,max=1,defaut=None,fr="Renseignement de la postion angulaire initiale (degres)"), - PAS_MAJ = SIMP(statut='f',typ='R',min=1,max=1,defaut=None,fr="Renseignement du pas de mise a jour des matrices des paliers (tr/min)"), - ),# fin LINEAIRE - EXPONENTIELLE = FACT(statut='f',min=1,max=1,fr="Variation exponentielle de la vitesse de rotation", - VITESSE_INITIALE = SIMP(statut='o',typ='R',min=1,max=1,defaut=None,fr="Renseignement de la vitesse de rotation initiale (tr/min)",), - VITESSE_FINALE = SIMP(statut='o',typ='R',min=1,max=1,defaut=None,fr="Renseignement de la vitesse de rotation finale (tr/min)",), - DEPHASAGE = SIMP(statut='o',typ='R',min=1,max=1,defaut=None,fr="Renseignement de la postion angulaire initiale (degres)"), - LAMBDA = SIMP(statut='o',typ='R',min=1,max=1,defaut=None,fr="Renseignement du parametre de la loi exponentielle (Hz)"), - PAS_MAJ = SIMP(statut='f',typ='R',min=1,max=1,defaut=None,fr="Renseignement du pas de mise a jour des matrices des paliers (tr/min)"), - ),# fin EXPONENTIELLE - FORMULE = FACT(statut='f',min=1,max=1,fr="Fonction personnalisee decrivant la variation de la vitesse de rotation", - FICHIER = SIMP(statut='o',typ=('Fichier','Formule vitesse rotation (*.*)'),min=1,max=1,defaut=None,fr="Renseignement du fichier contenant les fonctions de la vitesse de rotation"), - PHI = SIMP(statut='o',typ='TXM',min=1,max=1,defaut=None,fr="Renseignement du nom de la formule de position angulaire (max 8 caractere)"), - OM = SIMP(statut='o',typ='TXM',min=1,max=1,defaut=None,fr="Renseignement du nom de la formule de vitesse angulaire (max 8 caractere)"), - ACC = SIMP(statut='o',typ='TXM',min=1,max=1,defaut=None,fr="Renseignement du nom de la formule d'acceleration angulaire (max 8 caractere)"), - VITE_MOY = SIMP(statut='o',typ='R',min=1,max=1,defaut=None,fr="Renseignement de la moyenne des vitesses balayees (tr/min)"), - PAS_MAJ = SIMP(statut='f',typ='R',min=1,max='**',defaut=None,fr="Renseignement du pas de mise a jour des matrices des paliers (tr/min)"), - ),# fin FORMULE - ),# fin VITESSE_VARIABLE - #POIDS = SIMP(statut='o',typ='TXM',into=('OUI','NON'),defaut='OUI',fr="Choix d'application d'un poids"), - - CHARGES= FACT(statut='o',min=1,max='**',fr="Definition et renseignement du chargement applique", - TYPE = SIMP(statut='o',typ='TXM',into=('POIDS','BALOURD','FORCE','MOMENT','HARMONIQUE'),defaut=None,min=1,max=1,fr="Choix du type de chargement a appliquer"), - BALOURD = BLOC(condition = "TYPE == 'BALOURD' ",fr="Chargement de type balourd", - POSITION = SIMP(statut='o',typ='R',min=1,max=1,defaut=None,fr="Renseignement de la position axiale ou s'applique le balourd (m)"), - MAGNITUDE = SIMP(statut='o',typ='R',min=1,max=1,defaut=None,fr="Renseignement de l'amplitude du balourd (kg.m)"), - PHASE_DEG = SIMP(statut='o',typ='R',min=1,max=1,defaut=None,fr="Renseignement du decalage de la phase de la charge balourd (degres)"), - INST_APPLI= SIMP(statut='f',typ='R',min=1,max=1,defaut=0,fr="Renseignement de l'instant d'apparition du balourd (s)"), - TEMPS_MONTEE=SIMP(statut='f',typ='R',min=1,max=1,defaut=0,fr="Renseignement du temps necessaire pour atteindre l'amplitude nominale du balourd (s)"), - ),# fin BALOURD - POIDS = BLOC(condition = "TYPE == 'POIDS' ",fr="Prise en compte du champ de pesanteur", - GRAVITE = SIMP(statut='o',typ='R',defaut=9.81,fr="Renseignement de l'intensite de la gravite (m/s^2)"), - DIRECTION = SIMP(statut='o',typ='R',min=3,max=3,defaut=(1,0,0),fr="Renseignement de la direction de la force de gravite"), - ), # fin POIDS - FORCE = BLOC(condition = "TYPE == 'FORCE' ",fr="Application d'une force ponctuelle", - POSITION = SIMP(statut='o',typ='R',defaut=None,fr="Renseignement de la position axiale ou s'applique la force (m)"), - MAGNITUDE = SIMP(statut='o',typ='R',min=3,max=3,defaut=None,fr="Renseignement des 3 composantes decrivant la force (N)"), - #FONC_APPLI = SIMP(statut='f',typ='R',min=2,max=2,defaut=None,fr="Renseignement de la fonction appliquee"), - ), # fin FORCE - MOMENT = BLOC(condition = "TYPE == 'MOMENT' ",fr="Application d'un moment ponctuel", - POSITION = SIMP(statut='o',typ='R',defaut=None,fr="Renseignement de la position axiale ou s'applique le moment (m)"), - MAGNITUDE = SIMP(statut='o',typ='R',min=3,max=3,defaut=None,fr="Renseignement des 3 composantes decrivant le moment (N/m)"), - ), # fin MOMENT - HARMONIQUE = BLOC(condition = "TYPE == 'HARMONIQUE' ",fr="Charge harmonique", - POSITION = SIMP(statut='o',typ='R',min=1,max=1,defaut=None,fr="Renseignement de la position axiale ou s'applique la charge harmonique (m)"), - FREQUENCE = SIMP(statut='o',typ='R',min=1,max=1,defaut=None,fr="Renseignement de la frequence d'excitation harmonique (Hz)"), - MAGNITUDE = SIMP(statut='o',typ='R',min=1,max=1,defaut=None,fr="Renseignement de l'amplitude de la charge harmonique, (N)"), - #FONC_APPLI = SIMP(statut='o',typ='R',min=1,max='**',defaut=None,fr="Renseignement de la fonction appliquee de la charge harmonique (autant de valeurs que de vitesses de rotation)"), - PHASE_DEG = SIMP(statut='o',typ='R',min=1,max=1,defaut=None,fr="Renseignement du decalage de la phase de la charge harmonique (degres)"), - TYPE_DDL = SIMP(statut='o',typ='TXM',min=1,max=1,into=('DX','DRX','DY','DRY','DZ','DRZ'),defaut=None,fr="Renseignement du DDL sur lequel s'applique la charge harmonique"), - ), # fin HARMONIQUE - ), #fin CHARGES - - ETAT_INIT = FACT(statut='o',fr="Renseignement de l'etat initial du calcul", - #RESULTAT = SIMP(statut='o',typ=('sd_resultat'),max=1,defaut=None,fr="Choix de la structure de donnees resultat de code aster "), - RESULTAT = SIMP(statut='f',typ='TXM',max=1,defaut=None,fr="Choix de la structure de donnees de type 'resultat' de Code_Aster"), - INST_INIT = SIMP(statut='f',typ='R',max=1,defaut=0.0,fr="Renseignement de l'instant de la structure de donnees a partir duquel il faut lancer le calcul (s)"), - ), # fin ETAT_INIT - PARAM_TEMPS = SIMP(statut='o',typ='TXM',max=1,into=('PAS','LISTE'),defaut=None,fr="Choix du type de discretisation temporelle"), - #PAS = BLOC(condition = "VITESSE == 'VARIABLE'",fr="Renseignement des parametres des pas", - PAS = BLOC(condition = "PARAM_TEMPS == 'PAS'",fr="Renseignement de pas de temps", - TEMPS_PAS = SIMP(statut='o',typ='R',max=1,defaut=None,fr="Renseignement du pas de temps d'integration(en s)"), - INST_INI = SIMP(statut='f',typ='R',max=1,defaut=None,fr="Renseignement de l'instant initial du calcul (s)"), - INST_FIN = SIMP(statut='o',typ='R',max=1,defaut=None,fr="Renseignement de l'instant final du calcul (s)"), - ), # fin TEMPS_PAS - LIST_INST = BLOC(condition = "PARAM_TEMPS == 'LISTE'",fr="Renseignement d'une liste d'instants", - LISTE = SIMP(statut='o',typ='R',min=1,max='**',defaut=None,fr="Renseignement d'une liste d'instants auxquels resoudre le calcul (s)"), - ), # fin LIST_INST - PAS_ARCHIVAGE = SIMP(statut='o',typ='I',max=1,defaut=1,fr="Renseignement du pas d'archivage des resultats (une sauvegarde tous les 'PAS_ARCHIVAGE' instants d'integration)",), - SCHEMA_TEMPS = SIMP(statut='o',typ='TXM',max=1,into=('NEWMARK','EULER','WILSON','ADAPT_ORDRE1','ADAPT_ORDRE2','DIFF_CENTRE'),defaut='NEWMARK',fr="Choix d'un schema d'integration temporelle"), - NEWMARK = BLOC(condition = "SCHEMA_TEMPS == 'NEWMARK' ",fr="Methode de NEWMARK", - BETA = SIMP(statut='f',typ='R',max=1,defaut=0.25,fr="Renseignement de la valeur beta pour la methode de NEWMARK"), - GAMMA = SIMP(statut='f',typ='R',max=1,defaut=0.25,fr="Renseignement de la valeur gamma pour la methode de NEWMARK"), - ),# fin NEWMARK - WILSON = BLOC(condition = "SCHEMA_TEMPS == 'WILSON' ",fr="Methode de WILSON", - THETA = SIMP(statut='f',typ='R',max=1,defaut=1.4,fr="Renseignement de la valeur theta pour la methode de WILSON"), - ), # fin WILSON - - ## POST_TRAITEMENTS de l'analyse transitoire - POST_TRAITEMENTS = FACT(statut='o',max='**',fr="Definition et renseignement des post-traitements", - TYPE = SIMP(statut='o',typ='TXM',into=('DEPL_ABS','DEPL_RELA','EFFORTS_PAL','CONTRAINTES'),defaut=None,fr="Choix du type de post-traitement"), - DEPL = BLOC(condition = "TYPE in ('DEPL_ABS','DEPL_RELA') ",fr="Deplacement",regles=UN_PARMI('POSITION','PALIER'), - #POSITION_DEPL = SIMP(statut='o',typ='R',min=1,max=1,defaut=None,fr="Renseignement de la coordonnee du deplacement"), - POSITION = SIMP(statut='f',typ='R',min=1,max=1,defaut=None,fr="Renseignement de la coordonnee du deplacement"), - PALIER = SIMP(statut='f',typ='TXM',max=1,defaut=None,fr="Renseignement de l'etiquette du palier"), - ), # fin DEPL - CONTRAINTES = BLOC(condition = "TYPE == 'CONTRAINTES' ",fr="Export des contraintes", - regles=UN_PARMI('POSITION','ZONE','TOUT'), - POSITION = SIMP(statut='f',typ='R',max=1,defaut=None,fr="Renseignement de la coordonnee de la contrainte"), - ZONE = SIMP(statut='f',typ='TXM',max=1,defaut=None,fr="Renseignement de l'etiquette de la zone de la contrainte"), - TOUT = SIMP(statut='f',typ='TXM',into=('OUI'),max=1,fr="Export pour tous les noeuds"), - ), # fin CONTRAINTES - ), # fin POST_TRAITEMENTS - - ), # fin ANALYSE_TRANSISTOIRE - - -### ----- CALCUL COUPLE CODE_ASTER/EYDOS ----- ## - ANALYSE_TRANSITOIRE_ACCIDENTEL = BLOC(condition = "TYPE_ANALYSE == 'TRANSITOIRE_ACCIDENTEL' ",fr="Analyse transitoire accidentelle de la ligne d'arbres", - #BASE_MODALE = FACT(statut='o', fr="Choix des parametres de la base modale", - #POIDS = SIMP(statut='o',typ='TXM',into=('OUI','NON'),defaut='OUI',fr="Choix d'application d'un poids"), - BASE_MODALE = BLOC(condition = "True", fr="Resolution sur base modale", - regles=UN_PARMI('NB_MODES','FREQ_MAX'), - NB_MODES = SIMP(statut='f',typ='I',min=1,max=1,defaut=None,fr="Renseignement du nombre de modes constituant la base de projection"), - FREQ_MAX = SIMP(statut='f',typ='R',min=1,max=1,defaut=None,fr="Renseignement de la frequence maximale des modes constituant la base de projection (Hz)"), - ),# fin BASE_MODALE - # cft 20131217 suppression amortissement reduit - #AMORTISSEMENT = SIMP(statut='o', typ='TXM',into=('STRUCTUREL','REDUIT'),defaut=None,fr="Choix du type d'amortissement"), - AMORTISSEMENT = SIMP(statut='o', typ='TXM',into=('STRUCTUREL'),defaut=None,fr="Choix du type d'amortissement"), - AMOR_REDUIT = BLOC(condition = "AMORTISSEMENT == 'REDUIT' ", - #LIST_AMOR = SIMP(statut='o', typ='R', min=1,max='**',defaut=None,fr="Renseignement de la liste des amortissements"), - LIST_AMOR = SIMP(statut='o', typ='R', min=1,max='**',defaut=None,fr="Renseignement de la liste des amortissements modaux reduits (en %), la taille de la liste doit etre egale au nombre de modes constituant la base de projection"), - ),# fin AMOR_REDUIT - VITESSE_ROTATION = SIMP(statut='o',typ='R',min=1,max=1,defaut=None,fr="Renseignement de la vitesse de rotation (tr/min)"), - - CHARGES= FACT(statut='o',min=1,max='**',fr="Definition et renseignement du chargement applique", - TYPE = SIMP(statut='o',typ='TXM',into=('POIDS','BALOURD','FORCE','MOMENT','HARMONIQUE'),defaut=None,min=1,max=1,fr="Choix du type de chargement a appliquer"), - BALOURD = BLOC(condition = "TYPE == 'BALOURD' ",fr="Chargement de type balourd", - POSITION = SIMP(statut='o',typ='R',min=1,max=1,defaut=None,fr="Renseignement de la position axiale ou s'applique le balourd (m)"), - MAGNITUDE = SIMP(statut='o',typ='R',min=1,max=1,defaut=None,fr="Renseignement de l'amplitude du balourd (kg.m)"), - PHASE_DEG = SIMP(statut='o',typ='R',min=1,max=1,defaut=None,fr="Renseignement du decalage de la phase de la charge balourd (degres)"), - INST_APPLI= SIMP(statut='f',typ='R',min=1,max=1,defaut=0,fr="Renseignement de l'instant d'apparition du balourd (s)"), - TEMPS_MONTEE=SIMP(statut='f',typ='R',min=1,max=1,defaut=0,fr="Renseignement du temps necessaire pour atteindre l'amplitude nominale du balourd (s)"), - ),# fin BALOURD - POIDS = BLOC(condition = "TYPE == 'POIDS' ",fr="Prise en compte du champ de pesanteur", - GRAVITE = SIMP(statut='o',typ='R',defaut=9.81,fr="Renseignement de l'intensite de la gravite (m/s^2)"), - DIRECTION = SIMP(statut='o',typ='R',min=3,max=3,defaut=(1,0,0),fr="Renseignement de la direction de la force de gravite"), - ), # fin POIDS - FORCE = BLOC(condition = "TYPE == 'FORCE' ",fr="Application d'une force ponctuelle", - POSITION = SIMP(statut='o',typ='R',defaut=None,fr="Renseignement de la position axiale ou s'applique le moment (m)"), - MAGNITUDE = SIMP(statut='o',typ='R',min=3,max=3,defaut=None,fr="Renseignement des 3 composantes decrivant le moment (N/m)"), - #FONC_APPLI = SIMP(statut='f',typ='R',min=2,max=2,defaut=None,fr="Renseignement de la fonction appliquee"), - ), # fin FORCE - MOMENT = BLOC(condition = "TYPE == 'MOMENT' ",fr="Application d'un moment ponctuel", - POSITION = SIMP(statut='o',typ='R',defaut=None,fr="Renseignement de la position axiale ou s'applique le moment (m)"), - MAGNITUDE = SIMP(statut='o',typ='R',min=3,max=3,defaut=None,fr="Renseignement des 3 composantes decrivant le moment (N/m)"), - ), # fin MOMENT - HARMONIQUE = BLOC(condition = "TYPE == 'HARMONIQUE' ",fr="Charge harmonique", - POSITION = SIMP(statut='o',typ='R',min=1,max=1,defaut=None,fr="Renseignement de la position axiale ou s'applique la charge harmonique (m)"), - FREQUENCE = SIMP(statut='o',typ='R',min=1,max=1,defaut=None,fr="Renseignement de la frequence d'excitation harmonique (Hz)"), - MAGNITUDE = SIMP(statut='o',typ='R',min=1,max=1,defaut=None,fr="Renseignement de l'amplitude de la charge harmonique, (N)"), - #FONC_APPLI = SIMP(statut='o',typ='R',min=1,max='**',defaut=None,fr="Renseignement de la fonction appliquee de la charge harmonique (autant de valeurs que de vitesses de rotation)"), - PHASE_DEG = SIMP(statut='o',typ='R',min=1,max=1,defaut=None,fr="Renseignement du decalage de la phase de la charge harmonique (degres)"), - TYPE_DDL = SIMP(statut='o',typ='TXM',min=1,max=1,into=('DX','DRX','DY','DRY','DZ','DRZ'),defaut=None,fr="Renseignement du DDL sur lequel s'applique la charge harmonique"), - ), # fin HARMONIQUE - ), #fin CHARGES - ETAT_INIT = FACT(statut='o',fr="Renseignement de l'etat initial du calcul", - #RESULTAT = SIMP(statut='o',typ=('sd_resultat'),max=1,defaut=None,fr="Choix de la structure de donnees resultat de code aster "), - # 20121126 - #RESULTAT = SIMP(statut='o',typ='TXM',max=1,defaut=None,fr="Choix de la structure de donnees resultat de code aster "), - INST_INIT = SIMP(statut='f',typ='R',max=1,defaut=None,fr="Renseignement de l'instant initial a partir duquel il faut lancer le calcul (s)"), - ), # fin ETAT_INIT - #PARAM_TEMPS = SIMP(statut='o',typ='TXM',max=1,into=('PAS','LIST_INST'),defaut=None,fr="Choix du type de parametrage temporel"), - # 20121126 - PARAM_TEMPS = SIMP(statut='o',typ='TXM',max=1,into=('PAS'),defaut="PAS",fr="Choix du type de discretisation temporelle",), - PAS = BLOC(condition = "PARAM_TEMPS == 'PAS' ",fr="Renseignement de pas de temps", - PAS_ASTER = SIMP(statut='o',typ='R',max=1,defaut=None,fr="Renseignement du pas de temps d'integration Code_Aster (en s)",), - PAS_EDYOS = SIMP(statut='o',typ='R',max=1,defaut=None,fr="Renseignement du pas de temps d'integration Edyos (en s)",), - INST_FIN = SIMP(statut='o',typ='R',max=1,defaut=None,fr="Renseignement de l'instant final du calcul (en s)",), - ), # fin TEMPS_PAS - #LIST_INST = BLOC(condition = "PARAM_TEMPS == 'LIST_INST' ",fr="Renseignement d'une liste de pas", - #LISTE = SIMP(statut='f',typ='R',min=1,max='**',defaut=None,fr="Renseignement d'une liste de pas"), - #), # fin LIST_INST - PAS_ARCHIVAGE = SIMP(statut='o',typ='I',max=1,defaut=1,fr="Renseignement du pas d'archivage des resultats (une sauvegarde tous les 'PAS_ARCHIVAGE' instants d'integration)",), - PARA_MEM = SIMP(statut='f',typ='I',max=1,defaut=6400,fr="Renseigner la taille maximale de la memoire (Mo)",), - PARA_CPU = SIMP(statut='f',typ='I',max=1,defaut=10000,fr="Renseigner le temps CPU maximal (s)",), - SCHEMA_TEMPS = SIMP(statut='o',typ='TXM',max=1,into=('EULER','ADAPT_ORDRE1','ADAPT_ORDRE2'),defaut='ADAPT_ORDRE2',fr="Choix d'un schema d'integration temporelle"), - - ## POST_TRAITEMENTS de l'analyse transitoire - POST_TRAITEMENTS = FACT(statut='o',max='**',fr="Definition et renseignement des post-traitements", - TYPE = SIMP(statut='o',typ='TXM',into=('DEPL_ABS','DEPL_RELA','EFFORTS_PAL','CONTRAINTES'),defaut=None,fr="Choix du type de post-traitement"), - DEPL = BLOC(condition = "TYPE in ('DEPL_ABS','DEPL_RELA') ",fr="Deplacement", - POSITION = SIMP(statut='o',typ='R',min=1,max=1,defaut=None,fr="Renseignement de la coordonnee du deplacement"), - PALIER = SIMP(statut='f',typ='TXM',max=1,defaut=None,fr="Renseignement de l'etiquette du palier"), - ), # fin DEPL - # pas d'info à rentrer pour les efforts palier (post-traitement sur tout les paliers) - #EFFORTS_PAL = BLOC(condition = "TYPE == 'EFFORTS_PAL'", fr = "Efforts paliers", - #PALIER = SIMP(statut='o',typ='TXM',max=1,defaut=None,fr="Renseignement de l'etiquette du palier"), - #), # fin EFFORTS_PAL - CONTRAINTES = BLOC(condition = "TYPE == 'CONTRAINTES' ",fr="Export des contraintes", - regles=UN_PARMI('POSITION','ZONE','TOUT'), - POSITION = SIMP(statut='f',typ='R',max=1,defaut=None,fr="Renseignement de la coordonnee de la contrainte"), - ZONE = SIMP(statut='f',typ='TXM',max=1,defaut=None,fr="Renseignement de l'etiquette de la zone de la contrainte"), - TOUT = SIMP(statut='f',typ='TXM',into=('OUI'),max=1,fr="Export pour tous les noeuds"), - ), # fin CONTRAINTES - ), # fin POST_TRAITEMENTS - - - ), # fin ANALYSE_TRANSITOIRE_ACCIDENTEL - -)# fin SPECIFICATION_ANALYSE diff --git a/SPECA/configuration_SPECA.py b/SPECA/configuration_SPECA.py deleted file mode 100644 index b4a61c31..00000000 --- a/SPECA/configuration_SPECA.py +++ /dev/null @@ -1,43 +0,0 @@ -# -*- coding: utf-8 -*- -# maConfiguration MANAGEMENT OF EDF VERSION -# ====================================================================== -# COPYRIGHT (C) 1991 - 2002 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# -# -# ====================================================================== -""" - Ce module sert pour charger les paramètres de configuration d'EFICAS -""" -# Modules Python -from InterfaceQT4 import configuration -import os - - -class CONFIG(configuration.configBase): - - #----------------------------------- - def __init__(self,appli,repIni): - #----------------------------------- - - self.labels_user=['catalogues','lang'] - self.labels_eficas=['lang','rep_cata','catalogues'] - - configuration.configBase.__init__(self,appli,repIni) - - -def make_config(appli,rep): - return CONFIG(appli,rep) - diff --git a/SPECA/prefs.py b/SPECA/prefs.py deleted file mode 100644 index cba83434..00000000 --- a/SPECA/prefs.py +++ /dev/null @@ -1,4 +0,0 @@ -code='SPECA' -import sys, os -if os.path.abspath(__file__) not in sys.path : - sys.path.insert(0,os.path.dirname(os.path.abspath(__file__))) diff --git a/SPECA/prefs_SPECA.py b/SPECA/prefs_SPECA.py deleted file mode 100644 index 5312bfd8..00000000 --- a/SPECA/prefs_SPECA.py +++ /dev/null @@ -1,38 +0,0 @@ -# -*- coding: utf-8 -*- -# maConfiguration MANAGEMENT OF EDF VERSION -# ====================================================================== -# COPYRIGHT (C) 1991 - 2002 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# -# -# ====================================================================== - -import os,sys -# repIni sert a localiser le fichier editeur.ini -# Obligatoire -repIni=os.path.dirname(os.path.abspath(__file__)) -INSTALLDIR=os.path.join(repIni,'..') -sys.path[:0]=[INSTALLDIR] - -# lang indique la langue utilisee pour les chaines d'aide : fr ou ang -lang='fr' - -# Codage des strings qui accepte les accents (en remplacement de 'ascii') -encoding='iso-8859-1' - -# -catalogues=( - ('SPECA','V2016',os.path.join(repIni,'SPECA_Cata_V2016.py'),'python','python'), -) diff --git a/SPECA/properties.py b/SPECA/properties.py deleted file mode 100644 index 1d328a46..00000000 --- a/SPECA/properties.py +++ /dev/null @@ -1,24 +0,0 @@ -#@ MODIF properties Accas DATE 11/06/2008 AUTEUR aster M.ADMINISTRATEUR -# RESPONSABLE D6BHHHH J-P.LEFEBVRE -# ====================================================================== -# COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# IDENTIFICATION DU GESTIONNAIRE DE COMMANDE ACCAS A PARTIR -# DE LA VERSION DU CODE_ASTER ASSOCIE -#---------------------------------------------------------------------- -version = "1.2" -date = "25/05/2010" -exploit = False diff --git a/SPECA/qtEficasSPECA.py b/SPECA/qtEficasSPECA.py deleted file mode 100755 index 863353f8..00000000 --- a/SPECA/qtEficasSPECA.py +++ /dev/null @@ -1,36 +0,0 @@ -#!/usr/bin/env python -# -*- coding: utf-8 -*- -# Copyright (C) 2007-2013 EDF R&D -# -# 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 -# -""" - Ce module sert a lancer EFICAS configure pour MAP -""" -# Modules Python -# Modules Eficas -import prefs -name='prefs_'+prefs.code -__import__(name) - - -import sys,os -sys.path.append(os.path.join(os.path.abspath(os.path.dirname(__file__)),'..')) - -import prefs -from InterfaceQT4 import eficas_go -eficas_go.lanceEficas(code=prefs.code) diff --git a/Telemac/.monCode_Cata.py.swp b/Telemac/.monCode_Cata.py.swp deleted file mode 100644 index 6d2dd181..00000000 Binary files a/Telemac/.monCode_Cata.py.swp and /dev/null differ diff --git a/Telemac/CMakeLists.txt b/Telemac/CMakeLists.txt deleted file mode 100644 index ab237d8c..00000000 --- a/Telemac/CMakeLists.txt +++ /dev/null @@ -1,84 +0,0 @@ -# -*- coding: utf-8 -*- -# CONFIGURATION MANAGEMENT OF EDF VERSION -# ====================================================================== -# COPYRIGHT (C) 1991 - 2002 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# -# -# ====================================================================== - - -install ( FILES aideAuxConvertisseurs.py - configuration_TELEMAC.py - artemis_dicoCasEnToCata.py - artemis_dicoCasFrToCata.py - artemis_enum_auto.py - artemis_labelCataToIhm_en.qm - artemis_labelCataToIhm_fr.qm - artemis_cata_auto.py - postel3d_dicoCasEnToCata.py - postel3d_dicoCasFrToCata.py - postel3d_enum_auto.py - postel3d_labelCataToIhm_en.qm - postel3d_labelCataToIhm_fr.qm - postel3d_cata_auto.py - sisyphe_dicoCasEnToCata.py - sisyphe_dicoCasFrToCata.py - sisyphe_enum_auto.py - sisyphe_labelCataToIhm_en.qm - sisyphe_labelCataToIhm_fr.qm - sisyphe_cata_auto.py - stbtel_dicoCasEnToCata.py - stbtel_dicoCasFrToCata.py - stbtel_enum_auto.py - stbtel_labelCataToIhm_en.qm - stbtel_labelCataToIhm_fr.qm - stbtel_cata_auto.py - telemac2d_dicoCasEnToCata.py - telemac2d_dicoCasFrToCata.py - telemac2d_enum_auto.py - telemac2d_labelCataToIhm_en.qm - telemac2d_labelCataToIhm_fr.qm - telemac2d_cata_auto.py - telemac3d_dicoCasEnToCata.py - telemac3d_dicoCasFrToCata.py - telemac3d_enum_auto.py - telemac3d_labelCataToIhm_en.qm - telemac3d_labelCataToIhm_fr.qm - telemac3d_cata_auto.py - tomawac_dicoCasEnToCata.py - tomawac_dicoCasFrToCata.py - tomawac_enum_auto.py - tomawac_labelCataToIhm_en.qm - tomawac_labelCataToIhm_fr.qm - tomawac_cata_auto.py - waqtel_dicoCasEnToCata.py - waqtel_dicoCasFrToCata.py - waqtel_enum_auto.py - waqtel_labelCataToIhm_en.qm - waqtel_labelCataToIhm_fr.qm - waqtel_cata_auto.py - prefs.py - prefs_TELEMAC.py - properties.py - qtEficas_Telemac.py - DESTINATION ${CMAKE_INSTALL_PREFIX}/Telemac - ) - - - -### Local Variables: -### mode: cmake -### End: diff --git a/Telemac/__init__.py b/Telemac/__init__.py deleted file mode 100644 index df53d551..00000000 --- a/Telemac/__init__.py +++ /dev/null @@ -1,19 +0,0 @@ -# -*- coding: utf-8 -*- -# Copyright (C) 2007-2013 EDF R&D -# -# 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 -# diff --git a/Telemac/aideAuxConvertisseurs.py b/Telemac/aideAuxConvertisseurs.py deleted file mode 100644 index a00a8f27..00000000 --- a/Telemac/aideAuxConvertisseurs.py +++ /dev/null @@ -1,23 +0,0 @@ -# -*- coding: utf-8 -*- -# Copyright (C) 2007-2013 EDF R&D -# -# 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 -# -"""Ce module contient le plugin generateur de fichier au format Code_Carmel3D pour EFICAS. -""" - -ListeSupprimeCasToEficas = ('Validation','Parallel_Processors') diff --git a/Telemac/artemis_cata_auto.py b/Telemac/artemis_cata_auto.py deleted file mode 100644 index 6589b102..00000000 --- a/Telemac/artemis_cata_auto.py +++ /dev/null @@ -1,2119 +0,0 @@ - -# -*- coding: latin-1 -*- - -from Accas import * -class DateJJMMAAAA: - def __init__(self): - self.ntuple=3 - - def __convert__(self,valeur): - if type(valeur) == types.StringType: return None - if len(valeur) != self.ntuple: return None - return valeur - - def info(self): - return "Date : jj/mm/aaaa " - - __repr__=info - __str__=info - -class grma(GEOM): - pass - -import types -class Tuple: - def __init__(self,ntuple): - self.ntuple=ntuple - - def __convert__(self,valeur): - if type(valeur) == types.StringType: - return None - if len(valeur) != self.ntuple: - return None - return valeur - - def info(self): - return "Tuple de %s elements" % self.ntuple - - - -JdC = JDC_CATA (code = 'ARTEMIS', - execmodul = None, - ) -# ======================================================================= -# Catalog entry for the MAP function : c_pre_interfaceBody_mesh -# ======================================================================= - -VERSION_CATALOGUE="TRUNK_20180306" -# ----------------------------------------------------------------------- -INPUT_OUTPUT_FILES = PROC(nom= "INPUT_OUTPUT_FILES",op = None, -# ----------------------------------------------------------------------- -# ----------------------------------- - NAMES = FACT(statut='f', -# ----------------------------------- -# ----------------------------------- - GEOMETRY_FILE = SIMP(statut ='f', -# ----------------------------------- - typ = ('Fichier','All Files (*)'), max='**', - fr = """Nom du fichier contenant le maillage du calcul a realiser.""", - ang = """Name of the file which contains the computational mesh.""", - ), -# ----------------------------------- - FORTRAN_FILE = SIMP(statut ='f', -# ----------------------------------- - typ = ('Fichier','All Files (*)'), max='**', - defaut = 'DEFAUT', - fr = """Nom du fichier FORTRAN a soumettre.""", - ang = """Name of the FORTRAN file used for the computation.""", - ), -# ----------------------------------- - STEERING_FILE = SIMP(statut ='f', -# ----------------------------------- - typ = ('Fichier','All Files (*)'), max='**', - defaut = '', - fr = """Nom du fichier contenant les parametres du calcul a realiser.""", - ang = """Name of the steering file used for the computation.""", - ), -# ----------------------------------- - BOUNDARY_CONDITIONS_FILE = SIMP(statut ='f', -# ----------------------------------- - typ = ('Fichier','All Files (*)'), max='**', - fr = """Nom du fichier contenant les types de conditions aux limites. -Ce fichier est construit de facon automatique par le mailleur et STBTEL -au moyen de couleurs affectees aux noeuds des frontieres du domaine -de calcul.""", - ang = """Name of the boundary conditions file. It is automatically built -by STBTEL or by the mesh generator MATISSE.""", - ), -# ----------------------------------- - RESULTS_FILE = SIMP(statut ='f', -# ----------------------------------- - typ = ('Fichier','All Files (*)','Sauvegarde'), max='**', - defaut = '', - fr = """Nom du fichier dans lequel seront ecrits les resultats du calcul, -avec la periodicite donnee par le mot cle PERIODE POUR LES SORTIES -GRAPHIQUES. -Sur IBM, ce fichier est alloue automatiquement s''il n''existe pas, -avec les caracteristiques suivantes : - Format d''enregistrement : VBS - Longueur d''enregistrement : X - Taille de bloc : 6204 - Nombre de pistes : 50 en primaire, 10 en secondaire -La place memoire ainsi reservee est suffisante pour la plupart des -calculs de dimension moyenne.""", - ang = """Name of the results file corresponding to the computations and -which contains the variables specified by the key-word -VARIABLES FOR GRAPHIC PRINTOUTS.""", - ), -# ----------------------------------- - BOTTOM_TOPOGRAPHY_FILE = SIMP(statut ='f', -# ----------------------------------- - typ = ('Fichier','All Files (*)'), max='**', - defaut = '', - fr = """Nom du fichier eventuel contenant la bathymetrie associee au -maillage. -Si ce mot-cle est utilise, c''est cette bathymetrie qui sera -utilisee pour le calcul.""", - ang = """Name of a potential bathymetry file. If this key-word is specified, -the bathymetry which it is defining is accounted for.""", - ), -# ----------------------------------- - TOMAWAC_DATA_FILE_1 = SIMP(statut ='f', -# ----------------------------------- - typ = ('Fichier','All Files (*)'), max='**', - defaut = '', - fr = """Fichier binaire contenant un spectre issu de TOMAWAC. -Les donnees de ce fichier seront a lire sur le canal 30.""", - ang = """Data file, written in binary mode, given a tomawac spectrum. -Data of this file must be read on unit 30.""", - ), -# ----------------------------------- - BINARY_DATA_FILE_1 = SIMP(statut ='f', -# ----------------------------------- - typ = ('Fichier','All Files (*)'), max='**', - defaut = '', - fr = """Fichier de donnees, code en binaire, mis a la disposition de -l''utilisateur. -Les donnees de ce fichier seront a lire sur le canal 24.""", - ang = """Data file, written in binary mode, at the disposal of the user. -Data of this file must be read on unit 24.""", - ), -# ----------------------------------- - BINARY_DATA_FILE_2 = SIMP(statut ='f', -# ----------------------------------- - typ = ('Fichier','All Files (*)'), max='**', - defaut = '', - fr = """Fichier de donnees, code en binaire, mis a la disposition de -l''utilisateur. -Les donnees de ce fichier seront a lire sur le canal 25.""", - ang = """Data file, written in binary mode, at the disposal of the user. -Data of this file must be read on unit 25.""", - ), -# ----------------------------------- - FORMATTED_DATA_FILE_1 = SIMP(statut ='f', -# ----------------------------------- - typ = ('Fichier','All Files (*)'), max='**', - defaut = '', - fr = """Fichier de donnees formate mis a la disposition de l''utilisateur. -Les donnees de ce fichier seront a lire sur le canal 26.""", - ang = """Data file, written in ASCII mode, at the disposal of the user. -Data of this file must be read on unit 26.""", - ), -# ----------------------------------- - FORMATTED_DATA_FILE_2 = SIMP(statut ='f', -# ----------------------------------- - typ = ('Fichier','All Files (*)'), max='**', - defaut = '', - fr = """Fichier de donnees formate mis a la disposition de l''utilisateur. -Les donnees de ce fichier seront a lire sur le canal 27.""", - ang = """Data file, written in ASCII mode, at the disposal of the user. -Data of this file must be read on unit 27.""", - ), -# ----------------------------------- - BINARY_RESULTS_FILE = SIMP(statut ='f', -# ----------------------------------- - typ = ('Fichier','All Files (*)','Sauvegarde'), max='**', - defaut = '', - fr = """Fichier des resultats, code en binaire, mis a la disposition de -l''utilisateur. -Les resultats a placer dans ce fichier seront a ecrire sur -le canal 28.""", - ang = """Results file, written in binary mode, at the disposal of the user. -Data of this file must be written on unit 28.""", - ), -# ----------------------------------- - FORMATTED_RESULTS_FILE = SIMP(statut ='f', -# ----------------------------------- - typ = ('Fichier','All Files (*)','Sauvegarde'), max='**', - defaut = '', - fr = """Fichier des resultats formate mis a la disposition de l''utilisateur. -Les resultats a placer dans ce fichier seront a ecrire sur -le canal 29.""", - ang = """Results file, written in ASCII mode, at the disposal of the user. -Data of this file must be written on unit 29.""", - ), -# ----------------------------------- - REFERENCE_FILE = SIMP(statut ='f', -# ----------------------------------- - typ = ('Fichier','All Files (*)'), max='**', - defaut = '', - fr = """Fichier de resultats de reference pour la validation. Les -resultats a placer dans ce fichier seront a ecrire sur le canal 22.""", - ang = """Binary-coded result file for validation. -The results to be entered into this file shall be written on channel""", - ), -# ----------------------------------- - AMPLITUDE_AND_PHASE_FILE = SIMP(statut ='f', -# ----------------------------------- - typ = ('Fichier','All Files (*)','Sauvegarde'), max='**', - defaut = '', - fr = """Nom du fichier dans lequel seront ecrits les phases et amplitudes -pour toutes les periodes et directions simulees dans le fichier des -parametres.""", - ang = """Name of the results file corresponding to the computations and -which contains the phase and amplitude at every point for all the -periods and directions specified in the steering file.""", - ), -# ----------------------------------- - FREE_SURFACE_FILE = SIMP(statut ='f', -# ----------------------------------- - typ = 'TXM', max='**', - defaut = '', - fr = """Nom du fichier dans lequel sera ecrite la surface libre fonction du -temps pour permettre une animation du fichier.""", - ang = """Name of the results file corresponding to the computations and -which contains the free surface at every point as a function of time. -This file can be animated to check free surface variations with time.""", - ), -# ----------------------------------- - LIST_OF_FILES = SIMP(statut ='f', -# ----------------------------------- - typ = 'TXM', min=16, max=16, - defaut = 'STEERING FILE;DICTIONARY;FORTRAN FILE;GEOMETRY FILE;BOUNDARY CONDITIONS FILE;RESULTS FILE;BOTTOM TOPOGRAPHY FILE;BINARY DATA FILE 1;BINARY DATA FILE 2;FORMATTED DATA FILE 1;FORMATTED DATA FILE 2;BINARY RESULTS FILE;FORMATTED RESULTS FILE;REFERENCE FILE;TOMAWAC DATA FILE 1;AMPLITUDE AND PHASE FILE', - fr = """Liste des fichiers""", - ang = """List of files""", - ), - ), -# ----------------------------------- - TYPE_OF_BINARY = FACT(statut='f', -# ----------------------------------- -# ----------------------------------- - RESULTS_FILE_BINARY = SIMP(statut ='f', -# ----------------------------------- - typ = 'TXM', max='**', - into = ['IBM','I3E','STD'], - defaut = 'STD', - fr = """Type du binaire utilise pour l''ecriture du fichier des resultats. -Ce type depend de la machine sur laquelle le fichier a ete genere. -Les valeurs possibles sont les memes que pour le fichier de geometrie.""", - ang = """Binary type used to write on the results file. This type depends on -the machine used to create this file. Allowed values are the same -as used for the geometry file.""", - ), -# ----------------------------------- - GEOMETRY_FILE_BINARY = SIMP(statut ='f', -# ----------------------------------- - typ = 'TXM', max='**', - into = ['IBM','I3E','STD'], - defaut = 'STD', - fr = """Type du binaire utilise pour l''ecriture du fichier de geometrie. -Ce type depend de la machine sur laquelle le fichier a ete genere. -Les valeurs possibles sont : - - IBM, pour un fichier cree sur IBM, - - I3E, pour un fichier cree sur HP, - - STD, permet de prendre par defaut le type de binaire associe - a la machine sur laquelle l''utilisateur travaille. - Il s''agit alors d''ordres READ et WRITE normaux.""", - ang = """Type of binary mode used for geometry file writing. -It depends on the machine used for the file generation. -Possible values are : - - IBM : for a file created on IBM, - - I3E : for a file created on HP, - - STD : enables to take the default binary type associated to - the machine on which the user is working. - It then concerns usual READ and WRITE instructiions.""", - ), - ), -# ----------------------------------- - STANDARD = FACT(statut='f', -# ----------------------------------- -# ----------------------------------- - GEOMETRY_FILE_STANDARD = SIMP(statut ='f', -# ----------------------------------- - typ = 'TXM', max='**', - into = ["LEONARD","RUBENS","SELAFIN"], - defaut = ["SELAFIN"], - fr = """Adapte la lecture du FICHIER DE GEOMETRIE au standard choisi pour -celui-ci. Ce peut etre : - - 1 : un maillage regulier au standard LEONARD, - - 2 : un maillage quelconque au standard RUBENS, - - 3 : un maillage quelconque au standard SELAFIN.""", - ang = """Adapts the reading of the GEOMETRY FILE to the specific standard : - - 1 : regular mesh on standard LEONARD - - 2 : any mesh on standard RUBENS - - 3 : any mesh on standard SELAFIN""", - ), -# ----------------------------------- - RESULTS_FILE_STANDARD = SIMP(statut ='f', -# ----------------------------------- - typ = 'TXM', max='**', - into = ["LEONARD","RUBENS","SELAFIN"], - defaut = ["SELAFIN"], - fr = """Standard du fichier des resultats : - - 1 : un maillage regulier au standard LEONARD, - - 2 : un maillage quelconque au standard RUBENS, - - 3 : un maillage quelconque au standard SELAFIN.""", - ang = """Specific standard of the results file : - - 1 : regular mesh on standard LEONARD - - 2 : any mesh on standard RUBENS - - 3 : any mesh on standard SELAFIN""", - ), - ), -) -# ----------------------------------------------------------------------- -INPUT_OUTPUT_INFORMATION = PROC(nom= "INPUT_OUTPUT_INFORMATION",op = None, -# ----------------------------------------------------------------------- -# ----------------------------------- - COMPUTATIONAL_INFORMATION = FACT(statut='f', -# ----------------------------------- -# ----------------------------------- - TITLE = SIMP(statut ='f', -# ----------------------------------- - typ = 'TXM', - defaut = 'NO TITLE IN THE STEERING FILE', - fr = """Titre du cas etudie.""", - ang = """Title of the studied case.""", - ), -# ----------------------------------- - RELEASE = SIMP(statut ='f', -# ----------------------------------- - typ = 'TXM', - defaut = 'TRUNK', - fr = """Numero de version des bibliotheques ARTEMIS TELEMAC2D UTILE DAMO -BIEF et HP. -Si ce nom commence par D il s''agit de l''option Debug (exemple DV1P0) -Si ce nom commence par F il s''agit de l''option Flowtrace.""", - ang = """Number of the release of the ARTEMIS TELEMAC2D UTILE DAMO BIEF -and HP libraries. -If this number begins by D, it corresponds to the Debug option -(example : DV3P0). -If this number begins by F, it corresponds to the Flowtrace option.""", - ), - ), -# ----------------------------------- - COMPUTATION_ENVIRONMENT = FACT(statut='f', -# ----------------------------------- -# ----------------------------------- - VECTOR_LENGTH = SIMP(statut ='f', -# ----------------------------------- - typ = 'I', - defaut = [1], - fr = """LONGUEUR DU VECTEUR POUR LES MACHINES VECTORIELLES""", - ang = """VECTOR LENGTH ON VECTOR MACHINES""", - ), -# ----------------------------------- - USER_CRAY = SIMP(statut ='f', -# ----------------------------------- - typ = 'TXM', - defaut = '', - fr = """Userid CRAY de l''utilisateur.""", - ang = """Userid CRAY of the user.""", - ), -# ----------------------------------- - PASSWORD = SIMP(statut ='f', -# ----------------------------------- - typ = 'TXM', - defaut = '', - fr = """Mot de passe associe a l''USER CRAY.""", - ang = """Password associated to the CRAY Userid.""", - ), -# ----------------------------------- - LIBRARIES = SIMP(statut ='f', -# ----------------------------------- - typ = 'TXM', - defaut = 'artemis,telemac,util,damo,bief,hp', - fr = """Ensemble des bibliotheques utilises pour un calcul.""", - ang = """Set of libraries required for an ARTEMIS computation.""", - ), -# ----------------------------------- - CPU_TIME = SIMP(statut ='f', -# ----------------------------------- - typ = 'TXM', - defaut = '10', - fr = """Temps CPU (en secondes) alloue pour la realisation du calcul. -Attention, il s''agit bien d''une chaine de caracteres.""", - ang = """CPU time (in sec) specified for a computation on CRAY. -Warning : it is written as a Character.""", - ), -# ----------------------------------- - MEMORY_SPACE = SIMP(statut ='f', -# ----------------------------------- - typ = 'TXM', - defaut = '1500000W', - fr = """Place memoire (en mots de 8 octets) reservee en machine pour la -realisation du calcul.""", - ang = """Memory space (in words of 8 bytes) reserved for a computation on -CRAY.""", - ), -# ----------------------------------- - PRIORITY = SIMP(statut ='f', -# ----------------------------------- - typ = 'TXM', - defaut = 'JOUR', - fr = """Classe de facturation demandee pour le calcul : il y a trois -possibilites : jour, nuit et weekend.""", - ang = """Type of invoice requested for CRAY computation : there are -3 possibilities : jour, nuit, and weekend.""", - ), -# ----------------------------------- - ACCOUNT_NUMBER = SIMP(statut ='f', -# ----------------------------------- - typ = 'TXM', - defaut = '', - fr = """Numero du compte calcul sur lequel sera impute le cout -du calcul.""", - ang = """Account number to which the cost of computation shall be -charged.""", - ), - ), -) -# ----------------------------------------------------------------------- -NUMERICAL_PARAMETERS = PROC(nom= "NUMERICAL_PARAMETERS",op = None, -# ----------------------------------------------------------------------- -# ----------------------------------- - DEBUGGER = SIMP(statut ='f', -# ----------------------------------- - typ = 'I', - defaut = [0], - fr = """Pour imprimer la sequence des appels, mettre 1""", - ang = """If 1, calls of subroutines will be printed in the listing""", - ), -# ----------------------------------- - MATRIX_STORAGE = SIMP(statut ='f', -# ----------------------------------- - typ = 'I', - defaut = [3], - fr = """1 : EBE classique 2 : EBE assemble 3 : par segment - attention, avec 2, il faut une numerotation speciale des points""", - ang = """1 : classical EBE 2 : assembled EBE 3 : edge by edge - beware, with option 2, a special numbering of points is required""", - ), -# ----------------------------------- - MATRIX_VECTOR_PRODUCT = SIMP(statut ='f', -# ----------------------------------- - typ = 'I', - defaut = [1], - fr = """1 : Ancien Produit 2 : Nouveau Produit Frontal""", - ang = """1 : Classical Product 2 : New Frontal Product""", - ), -# ----------------------------------- - NUMBER_OF_PRIVATE_VARIABLES = SIMP(statut ='f', -# ----------------------------------- - typ = 'I', - defaut = [0], - fr = """Permet de fixer le nombre de variables privees""", - ang = """Give the number of private variables""", - ), -# ----------------------------------- - PARALLEL_PROCESSORS = SIMP(statut ='f', -# ----------------------------------- - typ = 'I', - defaut = [0], - fr = """NOMBRE DE PROCESSEURS EN CALCUL PARALLELE -0 : 1 machine, compilation sans bibliotheque de parallelisme -1 : 1 machine, compilation avec bibliotheque de parallelisme -2 : 2 processeurs ou machines en parallele -etc...""", - ang = """NUMBER OF PROCESSORS FOR PARALLEL PROCESSING -0 : 1 machine, compiling without parallel library -1 : 1 machine, compiling with a parallel library -2 : 2 processors or machines in parallel -etc....""", - ), -# ----------------------------------- - GENERAL = FACT(statut='f', -# ----------------------------------- -# ----------------------------------- - ORIGINAL_DATE_OF_TIME = SIMP(statut ='f', -# ----------------------------------- - typ = 'I', min= 3, max= 3, - defaut = [0,0,0], - fr = """Permet de fixer la date d''origine des temps du modele lors -de la prise en compte de la force generatrice de la maree.""", - ang = """Give the date of the time origin of the model when taking into -account the tide generating force.""", - ), -# ----------------------------------- - PARTITIONING_TOOL = SIMP(statut ='f', -# ----------------------------------- - typ = 'TXM', - into = ['METIS','SCOTCH','PARMETIS','PTSCOTCH'], - defaut = 'METIS', - fr = """CHOIX DU PARTITIONNEUR -1 : METIS -2 : SCOTCH -3 : PARMETIS -4 : PTSCOTCH -etc...""", - ang = """PARTITIONING TOOL SELECTION -1 : METIS -2 : SCOTCH -3 : PARMETIS -4 : PTSCOTCH -etc...""", - ), - ), -) -# ----------------------------------------------------------------------- -DISSIPATION = PROC(nom= "DISSIPATION",op = None, -# ----------------------------------------------------------------------- -# ----------------------------------- - GAMMAS = SIMP(statut ='f', -# ----------------------------------- - typ = 'R', - defaut = [0.88], - fr = """Donne le coefficient Gammas dans le critere de la hauteur de -deferlement. Ne pas confondre avec le coefficient Gamma qui -intervient dans la formule du spectre de Jonswap""", - ang = """Fixes the coefficient Gammas used in the criterion of the critical -breaking wave height. Do not confuse with coefficient Gamma -used in the JONSAP spectrum.""", - ), -# ----------------------------------- - BOTTOM_FRICTION = FACT(statut='f', -# ----------------------------------- -# ----------------------------------- - LAW_OF_BOTTOM_FRICTION = SIMP(statut ='f', -# ----------------------------------- - typ = 'I', - defaut = [0], - fr = """Non utilise dans ARTEMIS. On le laisse par coherence avec TELEMAC2D""", - ang = """Not used in ARTEMIS. It is kept for consistence with TELEMAC2D""", - ), -# ----------------------------------- - FRICTION = SIMP(statut ='f', -# ----------------------------------- - typ = bool, - defaut = [False], - fr = """Oui, si on veut prendre en compte le frottement sur le fond dans -la simulation.""", - ang = """Yes, if one wants to include dissipation through bottom friction -in the computation.""", - ), -# ----------------------------------- - FRICTION_COEFFICIENT = SIMP(statut ='f', -# ----------------------------------- - typ = 'R', - defaut = [0.], - fr = """A ne pas confondre avec le FACTEUR DE FROTTEMENT. -Non utilise dans ARTEMIS. On le laisse par coherence avec TELEMAC2D""", - ang = """Do not confuse with the FRICTION FACTOR. -Not used in ARTEMIS. It is let here for consistence with TELEMAC2D.""", - ), -# ----------------------------------- - FORMULATION = FACT(statut='f', -# ----------------------------------- -# ----------------------------------- - BOTTOM_FRICTION_LAW = SIMP(statut ='f', -# ----------------------------------- - typ = 'TXM', max='**', - into = ["Formulation de Kostense integrant le calcul de Ue (1986)","Formulation de Putnam \& Johnson (1949)"], - defaut = ["Formulation de Kostense integrant le calcul de Ue (1986)"], - fr = """Utilise avec l''option FROTTEMENT = OUI. -Fixe le choix de la formulation du frottement : - 1 : Kostense et al., 1986 - 2 : Putnam \& Johnson, 1949.""", - ang = """Used with the option FRICTION = YES. -Fixes the formulation used for bottom friction law : - 1 : Kostense et al., 1986 - 2 : Putnam \& Johnson, 1949.""", - ), - ), -# ----------------------------------- - INFORMATION = FACT(statut='f', -# ----------------------------------- -# ----------------------------------- - FLUID_KINEMATIC_VISCOSITY = SIMP(statut ='f', -# ----------------------------------- - typ = 'R', max='**', - defaut = [1.0E-6], - fr = """viscosite cinematique du fluide (eau) en m2/s. -1.793E-6 : Pour une temperature de 0 C. -1.567E-6 : Pour une temperature de 4 C. -1.237E-6 : Pour une temperature de 12 C. -1.112E-6 : Pour une temperature de 16 C. -1.011E-6 : Pour une temperature de 20 C. -0.802E-6 : Pour une temperature de 30 C. -0.661E-6 : Pour une temperature de 40 C. -1.0E-6 : Valeur par defaut""", - ang = """Kinematic viscosity of the fluid (water) in m2/s. -1.793E-6 : Pour une temperature de 0 C. -1.567E-6 : Pour une temperature de 4 C. -1.237E-6 : Pour une temperature de 12 C. -1.112E-6 : Pour une temperature de 16 C. -1.011E-6 : Pour une temperature de 20 C. -0.802E-6 : Pour une temperature de 30 C. -0.661E-6 : Pour une temperature de 40 C. -1.0E-6 : Valeur par defaut""", - ), -# ----------------------------------- - DIAMETER90 = SIMP(statut ='f', -# ----------------------------------- - typ = 'R', max='**', - defaut = [0.15E-3], - fr = """DIAM90 represente le diametre maximum, en m, de 90% en poids des -sediments. -1.0E-3 : Pour des sables tres grossiers -0.5E-3 : Pour des sables grossiers -0.25E-3 : Pour des sables moyens -0.125E-3 : Pour des sables fins -0.062E-3 : Pour des sables tres fins -0.15E-3 : Valeur par defaut""", - ang = """DIAM90 is the maximum grain diameter, in m, which defines 90% of -the total weight of sediment. -1.0E-3 : Pour des sables tres grossiers -0.5E-3 : Pour des sables grossiers -0.25E-3 : Pour des sables moyens -0.125E-3 : Pour des sables fins -0.062E-3 : Pour des sables tres fins -0.15E-3 : Valeur par defaut""", - ), -# ----------------------------------- - DIAMETER50 = SIMP(statut ='f', -# ----------------------------------- - typ = 'R', max='**', - defaut = [0.10E-3], - fr = """DIAM50 represente le diametre maximum de 50% en poids des -sediments. En general, on a DIAM90 = 1.5 * DIAM50 -DIAM50 est plus souvent donne dans des tables -0.66E-3 : Pour des sables tres grossiers -0.33E-3 : Pour des sables grossiers -0.17E-3 : Pour des sables moyens -0.083E-3 : Pour des sables fins -0.040E-3 : Pour des sables tres fins -0.10E-3 : Valeur par defaut""", - ang = """DIAM50 is the maximum grain diameter, in m, which defines 50% of -the total weight of sediment. Usually, we have -DIAM90 = 1.5 * DIAM50. DIAM50 is a more common value used. -0.66E-3 : Pour des sables tres grossiers -0.33E-3 : Pour des sables grossiers -0.17E-3 : Pour des sables moyens -0.083E-3 : Pour des sables fins -0.040E-3 : Pour des sables tres fins -0.10E-3 : Valeur par defaut""", - ), -# ----------------------------------- - SEDIMENT_SPECIFIC_WEIGHT = SIMP(statut ='f', -# ----------------------------------- - typ = 'R', - defaut = [2650.0], - fr = """Masse volumique du sediment en Kg/m3.""", - ang = """Sediment specific weight in Kg/m3.""", - ), -# ----------------------------------- - FLUID_SPECIFIC_MASS = SIMP(statut ='f', -# ----------------------------------- - typ = 'R', - defaut = [1000.0], - fr = """Masse volumique du fluide (eau) en Kg/m3.""", - ang = """Fluid specific weight (water) in Kg/m3.""", - ), -# ----------------------------------- - RIPPLES_COEFFICIENT = SIMP(statut ='f', -# ----------------------------------- - typ = 'R', max='**', - defaut = [0.7], - fr = """Specifie le coefficient de rides utilise dans la formule de -Van Rijn pour calculer le facteur de frottement. -1.0 : Pour des rides seules -0.7 : Pour des rides superposees a des vagues de sable""", - ang = """Fixes the ripples coefficient used in the formulae of Van Rijn -to calculate the friction factor. -1.0 : Pour des rides seules -0.7 : Pour des rides superposees a des vagues de sable""", - ), - ), -# ----------------------------------- - FORMULATION_OF_REGIME = FACT(statut='f', -# ----------------------------------- -# ----------------------------------- - HYDRAULIC_REGIME_IMPOSED = SIMP(statut ='f', -# ----------------------------------- - typ = bool, - defaut = [False], - fr = """Utilise avec l''option FROTTEMENT = OUI. -Permet de choisir d''imposer le regime hydraulique dans le cas -d''un calcul automatique du facteur de frottement sur fonds sableux.""", - ang = """Used with the option FRICTION = YES. -Enables to impose the hydraulic regime in the case of an automatic -calculation of the friction factor for sandy beds.""", - ), -# ----------------------------------- - HYDRAULIC_REGIME_TYPE = SIMP(statut ='f', -# ----------------------------------- - typ = 'TXM', max='**', - into = ["regime laminaire","regime turbulent lisse","regime turbulent rugueux","regime transitoire"], - defaut = ["regime laminaire"], - fr = """Utilise si le mot-cle REGIME HYDRAULIQUE IMPOSE = OUI. -Determine le regime hydraulique""", - ang = """Used with option HYDRAULIC REGIME IMPOSED = YES. -Determines the type of the hydraulic regime (laminar, -smooth-turbulent, rough-turbulent, transient).""", - ), - ), -# ----------------------------------- - FORMULATION_OF_RUGOSITE = FACT(statut='f', -# ----------------------------------- -# ----------------------------------- - SKIN_ROUGHNESS_ONLY = SIMP(statut ='f', -# ----------------------------------- - typ = bool, - defaut = [False], - fr = """Utilise avec l''option FROTTEMENT = OUI. -Permet de choisir de ne prendre en compte -que la rugosite de peau dans le cas d''un calcul automatique -du facteur de frottement sur fonds sableux.""", - ang = """Used with the option FRICTION = YES. -Enables to restrict the total roughness to the skin roughnes -in the case of an automatic calculation of the friction -factor for sandy beds.""", - ), - ), -# ----------------------------------- - FORMULATION_OF_FW = FACT(statut='f', -# ----------------------------------- -# ----------------------------------- - FRICTION_FACTOR_IMPOSED = SIMP(statut ='f', -# ----------------------------------- - typ = bool, - defaut = [False], - fr = """Utilise avec l''option FROTTEMENT = OUI. -Oui, permet de choisir d''imposer un facteur de frottement, par un -mot-cle s''il est uniforme (voir le reel d''index 29) ou en -programmant dans le sous-programme FWSPEC. -Si Non, ARTEMIS considere par defaut que les fonds sont sableux, -et calcule automatiquement le facteur de frottement avec les -caracteristiques du sediment et de l''ecoulement.""", - ang = """Used with the option FRICTION = YES. -Yes, enables the user to impose a friction factor, by a key-word -for a constant value (see real of index 29) or by programming in -the FWSPEC sub-routine for non-uniform value. -If Not, ARTEMIS automatically computes the friction factor assuming -that the bottom is sandy and uses the characteristics of sediment -and of motion.""", - ), -# ----------------------------------- - FRICTION_FACTOR = SIMP(statut ='f', -# ----------------------------------- - typ = 'R', - defaut = [0.], - fr = """Utilise si le mot-cle FACTEUR DE FROTTEMENT IMPOSE = OUI. -Fixe le facteur de frottement choisi uniforme sur le domaine""", - ang = """Used with the option FRICTION FACTOR IMPOSED = YES. -Fixes the value of the friction factor uniform over the domain.""", - ), - ), - ), -# ----------------------------------- - INFORMATION = FACT(statut='f', -# ----------------------------------- -# ----------------------------------- - SUB_ITERATIONS_ACCURACY_FOR_DISSIPATION = SIMP(statut ='f', -# ----------------------------------- - typ = 'R', - defaut = [1.E-2], - fr = """Donne la precision requise pour les sous-iterations du calcul -du coefficient de dissipation.""", - ang = """Fixes the accuracy requested for sub-iterations necessary to -determine the dissipation coefficients.""", - ), -# ----------------------------------- - MAXIMUM_OF_SUB_ITERATIONS = SIMP(statut ='f', -# ----------------------------------- - typ = 'I', - defaut = [15], - fr = """Donne le nombre maximum admis de sous-iterations pour le calcul -du coefficient de dissipation""", - ang = """Fixes the maximum number of sub-iterations for the computation -of dissipation.""", - ), -# ----------------------------------- - DISSIPATION_RELAXATION = SIMP(statut ='f', -# ----------------------------------- - typ = 'R', - defaut = [0.5], - fr = """Donne le coefficient de relaxation entre deux sous-iterations -pour le calcul du coefficient de dissipation.""", - ang = """Fixes the relaxation coefficient used between two sub-iterations -for the computation of the dissipation term.""", - ), -# ----------------------------------- - MAXIMUM_OF_SUB_ITERATIONS_FOR_TETAP = SIMP(statut ='f', -# ----------------------------------- - typ = 'I', - defaut = [15], - fr = """Donne le nombre maximum admis de sous-iterations pour le calcul -automatique de tetap""", - ang = """Fixes the maximum number of sub-iterations for the automatic -computation of tetap""", - ), -# ----------------------------------- - RELAXATION_ON_TETAP = SIMP(statut ='f', -# ----------------------------------- - typ = 'R', - defaut = [1.], - fr = """Donne le coefficient de relaxation entre deux sous-iterations -pour le calcul de l angle d incidence automatique.""", - ang = """Fixes the relaxation coefficient used between two sub-iterations -for the computation of automatic tetap.""", - ), - ), -# ----------------------------------- - BREAKING = FACT(statut='f', -# ----------------------------------- -# ----------------------------------- - BREAKING = SIMP(statut ='f', -# ----------------------------------- - typ = bool, - defaut = [False], - fr = """oui, si l''on souhaite integrer le processus de deferlement -bathymetrique (voir reels index 18, 19, 20, 21, 22, 23 -et entiers index 12, 13).""", - ang = """Yes, if one wants to account for breaking process (see also -reals of index 18, 19, 20, 21, 22, 23, and integer of index -12, 13).""", - ), -# ----------------------------------- - FORMULATION_OF_DALLY = FACT(statut='f', -# ----------------------------------- -# ----------------------------------- - KDALLY = SIMP(statut ='f', -# ----------------------------------- - typ = 'R', - defaut = [0.1], - fr = """Donne le coefficient K dans la Formulation de la dissipation -par deferlement d''apres Dally et al., 1984""", - ang = """Fixes the coefficient K used in the formulation of the dissipation -coefficient proposed by Dally et al. 1984.""", - ), -# ----------------------------------- - GDALLY = SIMP(statut ='f', -# ----------------------------------- - typ = 'R', - defaut = [0.4], - fr = """Donne le coefficient Gammad dans la Formulation de la dissipation par -Dally et al., 1984. Ne pas confondre avec Gamma (Formule de Jonswap) et -Gammas (Critere de deferlement)""", - ang = """Fixes the Gamma coefficient used in the formulation of Dally et al., -1984, for the dissipation coefficient in surf-breaking. Do not confuse -with the coefficient GAMMA used in the JONSWAP formulae and coefficient -gammas used to determine the breaking wave height criterion.""", - ), - ), -# ----------------------------------- - FORMULATION = FACT(statut='f', -# ----------------------------------- -# ----------------------------------- - BREAKING_LAW = SIMP(statut ='f', -# ----------------------------------- - typ = 'TXM', - into = ["BATTJES \& JANSSEN","DALLY"], - defaut = ["BATTJES \& JANSSEN"], - fr = """Specifie la formulation choisie pour le coefficient de dissipation -par deferlement. N''est effectif qu''en Houle reguliere. - 1 : Formulation de Battjes \& Jansen, 1978 - 2 : Formulation de Dally et al., 1984 -En Houle aleatoire, la seule formulation utilisee est celle de -Battjes \& Janssen, 1978""", - ang = """Specifies the formulation choosen for calculating the dissipation -coefficient through breaking. Only effective for Monochromatic wave -mode. - 1 : Formulation of Battjes \& Janssen, 1978 - 2 : Formulation of Dally et al., 1984 -In random wave mode, the formulation of B \& J, 1978 is the only one -to be used.""", - ), - ), -# ----------------------------------- - FORMULATION_DE_BATTJES = FACT(statut='f', -# ----------------------------------- -# ----------------------------------- - ALPHA = SIMP(statut ='f', -# ----------------------------------- - typ = 'R', - defaut = [1.0], - fr = """Donne le coefficient Alpha dans la Formulation de la dissipation -par deferlement en houle aleatoire d''apres Battjes \& Janssen""", - ang = """Fixes the coefficient Alpha used in the formulation of the dissipation -coefficient through breaking proposed by Battjes \& Janssen, 1978 -for random waves.""", - ), - ), - ), -) -# ----------------------------------------------------------------------- -INPUT_OUTPUT_GRAPHICS_AND_LISTING = PROC(nom= "INPUT_OUTPUT_GRAPHICS_AND_LISTING",op = None, -# ----------------------------------------------------------------------- -# ----------------------------------- - GRAPHIC_PRINTOUT_PERIOD = SIMP(statut ='f', -# ----------------------------------- - typ = 'I', - defaut = [1], - fr = """Determine la periode, en nombre de periodes de houle, -d''impression des VARIABLES POUR LES SORTIES GRAPHIQUES (voir ce mot- -cle) dans le FICHIER DES RESULTATS""", - ang = """Fixes the period, in number of wave periods, for the writing -of the VARIABLES FOR GRAPHIC PRINTOUTS (see this key-word) in the -RESULTS FILE""", - ), -# ----------------------------------- - LISTING_PRINTOUT_PERIOD = SIMP(statut ='f', -# ----------------------------------- - typ = 'I', - defaut = [1], - fr = """Determine la periode, en nombre de periodes de houle, -d''impression des VARIABLES A IMPRIMER (voir ce mot-cle). Pour la mise -au point, il faut savoir que la sortie des resultats est effectuee -systematiquement sur le fichier de retour d''execution du code -(actuellement accessible par le menu 3.e de SPF sur IBM)""", - ang = """Fixes the period, in number of wave periods, for the writing -of the VARIABLES TO BE PRINTED (see this key-word)""", - ), -# ----------------------------------- - WAVE_HEIGHTS_SMOOTHING = SIMP(statut ='f', -# ----------------------------------- - typ = bool, - defaut = [False], - fr = """OUI si on souhaite lisser les hauteurs de houle -pour ameliorer le calcul des contraintes de radiation -(actif uniquement en houle reguliere). -Valeur par defaut = NON.""", - ang = """YES when one wants to smooth the wave heights -to improve the radiation stresses computation -(only used in regular wave mode). -Default value = NO.""", - ), -# ----------------------------------- - FREE_SURFACE_ANIMATION = SIMP(statut ='f', -# ----------------------------------- - typ = bool, - defaut = [False], - fr = """Option utilisee si l on veut produire le fichier de phases -et amplitudes qui servira a calculer la position de la surface libre -en tout point du maillage. -A besoin des noms de FICHIER DES PHASES ET AMPLITUDES et -FICHIER DE SURFACE LIBRE""", - ang = """This option informs that the phase and amplitude file is to -be generated. This file will be used to determine the free surface -elevation throughout the model area. -Remember to give AMPLITUDE AND PHASE FILE and FREE SURFACE FILE""", - ), -# ----------------------------------- - INFORMATION_SOLVER = FACT(statut='f', -# ----------------------------------- -# ----------------------------------- - RELAXATION_COEFFICIENT = SIMP(statut ='f', -# ----------------------------------- - typ = 'R', - defaut = [1.4], - fr = """ Non utilise dans la version 3.0 . - Ce coefficient doit etre compris entre 0 et 2. - coefficient de relaxation dans le cas d''une resolution par la - methode de panchang et al. - voir Solution of the Mild Slope Wave Problem by Iteration - Applied Ocean Research, 1991, Vol. 13, No. 4.""", - ang = """ Not used in version 3.0 . - This coefficient is a real between 0 and 2. - It is a relaxation coefficient used in the solving method proposed - by Panchang et al. - See Solution of the Mild Slope Wave Problem by Iteration - Applied Ocean Research, 1991, Vol. 13, No. 4.""", - ), -# ----------------------------------- - LISTING_PRINTOUT = SIMP(statut ='f', -# ----------------------------------- - typ = bool, - defaut = [True ], - fr = """Sortie des resultats sur support papier. -Si l''on met NON le listing ne contient que l''en-tete et la mention -FIN NORMALE DU PROGRAMME -Commande a eviter.""", - ang = """If NOT is specified for this key-word, the printout listing just -contains the head and the sentence END OF PROGRAM. -It is adviced not to use this way.""", - ), -# ----------------------------------- - INFORMATIONS_ABOUT_SOLVER = SIMP(statut ='f', -# ----------------------------------- - typ = bool, - defaut = [True ], - fr = """Donne le nombre d''iterations necessaires a la convergence du solveur.""", - ang = """Gives the iterations number which was necessary for the solver -to converge.""", - ), -# ----------------------------------- - VALIDATION = SIMP(statut ='f', -# ----------------------------------- - typ = bool, - defaut = [False], - fr = """Option utilisee principalement pour le dossier de validation. Le -fichier des resultats du calcul precedent est alors considere comme une -reference a laquelle on va comparer le calcul. La comparaison est -effectuee par le sous-programme VALIDA qui peut etre une comparaison -avec une solution exacte par exemple.""", - ang = """This option is primarily used for the validation documents. -The PREVIOUS COMPUTATION FILE is then considered as a -reference which the computation is going to be compared with. -The comparison is made by the subroutine VALIDA, which can be -modified as to -so as to include, for example,a comparison with an exact solution.""", - ), -# ----------------------------------- - b_VALIDATIONG = BLOC(condition="VALIDATION == True", -# ----------------------------------- -# ----------------------------------- - REFERENCE_FILE_FORMAT = SIMP(statut ='f', -# ----------------------------------- - typ = 'TXM', - into = ['SERAFIN','SERAFIND','MED'], - defaut = 'SERAFIN?', - fr = """Format du fichier de resultats du calcul precedent. -Les valeurs possibles sont : -- SERAFIN : format standard simple precision pour Telemac; -- SERAFIND: format standard double precision pour Telemac; -- MED : format MED base sur HDF5""", - ang = """Previous computation results file format. -Possible values are: -- SERAFIN : classical single precision format in Telemac; -- SERAFIND: classical double precision format in Telemac; -- MED : MED format based on HDF5""", - ), - ), - ), -) -# ----------------------------------------------------------------------- -NUMERICAL_PARAMETERS_SOLVER = PROC(nom= "NUMERICAL_PARAMETERS_SOLVER",op = None, -# ----------------------------------------------------------------------- -# ----------------------------------- - MAXIMUM_NUMBER_OF_ITERATIONS_FOR_SOLVER = SIMP(statut ='f', -# ----------------------------------- - typ = 'I', - defaut = [60000], - fr = """Les algorithmes utilises pour la resolution du systeme -matriciel etant iteratifs, il est necessaire de limiter le nombre -d''iterations autorisees""", - ang = """Algorithms used for solving the matrix system are iterative. -It is then necessary to limit the maximum number of iterations""", - ), -# ----------------------------------- - PRECONDITIONING = SIMP(statut ='f', -# ----------------------------------- - typ = 'TXM', - into = ["no preconditioning","diagonal preconditioning","block-diagonal preconditioning","absolute value diagonal preconditioning","Crout preconditioning"], - defaut = ["diagonal preconditioning"], - fr = """Permet de preconditionner le systeme de l''etape de propagation afin -d''accelerer la convergence lors de sa resolution. - - 0 : pas de preconditionnement, - - 2 : preconditionnement diagonal. - - 3 : preconditionnement bloc-diagonal. - - 5 : preconditionnement diagonal en valeur absolue. - - 7 : preconditionnement de Crout par element. -Certains preconditionnements sont cumulables -(les diagonaux 2 ou 3 avec les autres) -Pour cette raison on ne retient que les nombres premiers pour -designer les preconditionnements. Si l''on souhaite en cumuler -plusieurs on formera le produit des options correspondantes.""", - ang = """Enables to apply preconditionning the matrix system to accelerate -the convergence of the solver. - - 0 : no preconditionning - - 2 : diagonal preconditionning - - 3 : block-diagonal preconditionning - - 5 : diagonal preconditionning in absolute value - - 7 : Element Crout preconditionning. -Few of them can be combined -(numbers 2 or 3 with the other) -To combine some preconditionning, impose the product of the previous -numbers : example 6 means preconditionnig 2 and 3 applied.""", - ), -# ----------------------------------- - SOLVER = SIMP(statut ='f', -# ----------------------------------- - typ = 'TXM', - into = ["conjugate gradient","conjugate residual","conjugate gradient on a normal equation","minimum error","squared conjugate gradient","CGSTAB","GMRES","direct"], - defaut = ["direct"], - fr = """Permet de choisir le solveur utilise pour la resolution de l''etape de -propagation. Toutes les methodes proposees actuellement s''apparentent -au Gradient Conjugue. Ce sont : - 1 : gradient conjugue - 2 : residu conjugue - 3 : gradient conjugue sur equation normale - 4 : erreur minimale - 5 : gradient conjugue carre (non programme) - 6 : gradient conjugue de type CGSTAB - 7 : GMRES - 8 : solveur direct""", - ang = """Enables to choose the solver used for solving the matrix system. -They are : - 1 : conjugate gradient - 2 : conjugate residual - 3 : conjugate gradient on the normal equation - 4 : minimum error - 5 : squarred conjugate gradient (not programmed) - 6 : CGSTAB conjugate gradient - 7 : GMRES - 8 : direct solver""", - ), -# ----------------------------------- - SOLVER_OPTION = SIMP(statut ='f', -# ----------------------------------- - typ = 'I', - defaut = [3], - fr = """Parametre definissant la dimension de l''espace de Krylov -pour le solveur 7 (GMRES)""", - ang = """Defines the dimension of the Krylov space when using -the solver 7 (GMRES)""", - ), -# ----------------------------------- - SOLVER_ACCURACY = SIMP(statut ='f', -# ----------------------------------- - typ = 'R', - defaut = [1.E-4], - fr = """Precision demandee pour la resolution de l''equation de Berkhoff.""", - ang = """Accuracy requested for the linear system solver.""", - ), -# ----------------------------------- - INFORMATION = FACT(statut='f', -# ----------------------------------- -# ----------------------------------- - DISCRETIZATION_IN_SPACE = SIMP(statut ='f', -# ----------------------------------- - typ = 'I', - defaut = [1], - fr = """ NON ACTIVE POUR LE MOMENT""", - ang = """NOT ACTIVE FOR THE MOMENT""", - ), -# ----------------------------------- - ZERO = SIMP(statut ='f', -# ----------------------------------- - typ = 'R', - defaut = [1.E-12], - fr = """Non active pour l''instant.""", - ang = """Non active at the moment.""", - ), -# ----------------------------------- - BIDON_STRING = SIMP(statut ='f', -# ----------------------------------- - typ = 'TXM', - defaut = '', - fr = """TABLEAU DE CARACTERES DE TAILLE :4 -Place reservee pour eventuellement introduire - de nouvelles - chaines de caracteres (nouveaux fichiers...).""", - ang = """Character Array of size : 4 -Reserved to introduce new character strings (new file names...).""", - ), - ), -) -# ----------------------------------------------------------------------- -PHYSICAL_PARAMETERS = PROC(nom= "PHYSICAL_PARAMETERS",op = None, -# ----------------------------------------------------------------------- -# ----------------------------------- - RANDOM_WAVE = FACT(statut='f', -# ----------------------------------- -# ----------------------------------- - NUMBER_OF_PERIODS = SIMP(statut ='f', -# ----------------------------------- - typ = 'I', - defaut = [5], - fr = """Valeur utilisee avec l''option : - HOULE ALEATOIRE MONODIRECTIONNELLE = OUI - ou avec l''option - HOULE ALEATOIRE MULTIDIRECTIONNELLE = OUI -Pour un calcul en houle aleatoire monodirectionnelle ou -multidirectionnelle, nombre de bandes d''egale energie servant a -discretiser le spectre d''energie en frequence.""", - ang = """Used with otion : - MONODIRECTIONAL RANDOM WAVE = YES - or - MULTIDIRECTIONAL RANDOM WAVE = YES -It fixes the number of iso-energy frequency bands which discretize -the enrgy spectrum.""", - ), -# ----------------------------------- - PEAK_PERIOD = SIMP(statut ='f', -# ----------------------------------- - typ = 'R', - defaut = [10.0], - fr = """Valeur utilisee avec l''option : - HOULE ALEATOIRE MONODIRECTIONNELLE = OUI - ou avec l''option - HOULE ALEATOIRE MULTIDIRECTIONNELLE = OUI -Fixe la periode de pic (en sec) du spectre d''energie.""", - ang = """Used with otion : - MONODIRECTIONAL RANDOM WAVE = YES - or - MULTIDIRECTIONAL RANDOM WAVE = YES -Fixes the peak period (in sec) of the energy spectrum""", - ), -# ----------------------------------- - GAMMA = SIMP(statut ='f', -# ----------------------------------- - typ = 'TXM', - into = ["Pierson-Moskowitz","JONSWAP moyen","any spectre"], - defaut = ["JONSWAP moyen"], - fr = """Valeur utilisee avec l''option : - HOULE ALEATOIRE MONODIRECTIONNELLE = OUI - ou avec l''option - HOULE ALEATOIRE MULTIDIRECTIONNELLE = OUI -Indique la valeur de gamma pour le spectre d''energie - GAMMA = 1 spectre de Pierson-Moskowitz - GAMMA = 3.3 spectre de JONSWAP moyen (valeur par defaut).""", - ang = """Used with otion : - MONODIRECTIONAL RANDOM WAVE = YES - or - MULTIDIRECTIONAL RANDOM WAVE = YES -Fixes the gamma value tor the JONSWAP wave energy spectrum : - GAMMA = 1 : Pierson-Moskowitz - GAMMA = 3.3 : mean JONSWAP spectrum (default value).""", - ), -# ----------------------------------- - MINIMUM_SPECTRAL_PERIOD = SIMP(statut ='f', -# ----------------------------------- - typ = 'R', - defaut = [0.02], - fr = """Valeur de la periode minimum voulue en secondes -si on veut tronquer le spectre pour le calcul -des periodes en houle aleatoire (voir PERALE).""", - ang = """Minimum period value requested in seconds -if it is necessary to alter the energy spectrum -for the computation of the periods in the case -of random waves (see PERALE).""", - ), -# ----------------------------------- - MAXIMUM_SPECTRAL_PERIOD = SIMP(statut ='f', -# ----------------------------------- - typ = 'R', - defaut = [200.], - fr = """Valeur de la periode maximum voulue en secondes -si on veut tronquer le spectre pour le calcul -des periodes en houle aleatoire (voir PERALE).""", - ang = """Maximum period value requested in seconds -if it is necessary to alter the energy spectrum -for the computation of the periods in the case -of random waves (see PERALE).""", - ), - ), -# ----------------------------------- - MONODIRECTIONAL_RANDOM_WAVE = FACT(statut='f', -# ----------------------------------- -# ----------------------------------- - MONODIRECTIONAL_RANDOM_WAVE = SIMP(statut ='f', -# ----------------------------------- - typ = bool, - defaut = [False], - fr = """oui, si l''on veut effectuer un calcul en houle aleatoire -monodirectionnelle (voir reels index 12, 13 et entier index 10).""", - ang = """Yes, if one wants to run computation in random monodirectional waves -(see reals key-words of index 12, 13 and integer of index 10).""", - ), - ), -# ----------------------------------- - MULTIDIRECTIONAL_RANDOM_WAVE = FACT(statut='f', -# ----------------------------------- -# ----------------------------------- - MULTIDIRECTIONAL_RANDOM_WAVE = SIMP(statut ='f', -# ----------------------------------- - typ = bool, - defaut = [False], - fr = """oui, si l''on veut effectuer un calcul en houle aleatoire -multidirectionnelle (voir les reels index 12, 13, 14, 15 et 16 et -les entiers index 10 et 11.""", - ang = """Yes, if one wants to run computation in random multidirectional waves -(see reals key-words of index 12, 13 and integer of index 10).""", - ), -# ----------------------------------- - DONNEES = FACT(statut='f', -# ----------------------------------- -# ----------------------------------- - NUMBER_OF_DIRECTIONS = SIMP(statut ='f', -# ----------------------------------- - typ = 'I', - defaut = [5], - fr = """Valeur utilisee avec l''option : - HOULE ALEATOIRE MULTIDIRECTIONNELLE = OUI -Pour un calcul en houle aleatoire multidirectionnelle, -nombre de bandes d''egale energie servant a discretiser le spectre -directionnel d''energie.""", - ang = """Used with the option : - MULTIDIRECTIONAL RANDOM WAVE = YES -It fixes the number of iso-energy bands which discretizes the wave -directional spectrum.""", - ), -# ----------------------------------- - MINIMUM_ANGLE_OF_PROPAGATION = SIMP(statut ='f', -# ----------------------------------- - typ = 'R', - defaut = [-180.], - fr = """Valeur utilisee avec l''option : - HOULE ALEATOIRE MULTIDIRECTIONNELLE = OUI - indique la borne inferieure de l''intervalle des directions de - propagation dans le cas d''une houle aleatoire multidirectionnelle - L''angle est donne en degres et est compte positivement dans le sens - direct a partir de l''axe x.""", - ang = """Used with the option : - MULTIDIRECTIONAL RANDOM WAVE = YES -Fixes the minimum value (in deg) of the directions range. It is -counted positively in the trigonometric sense relatively to the x -axis.""", - ), -# ----------------------------------- - MAXIMUM_ANGLE_OF_PROPAGATION = SIMP(statut ='f', -# ----------------------------------- - typ = 'R', - defaut = [180.], - fr = """Valeur utilisee avec l''option : - HOULE ALEATOIRE MULTIDIRECTIONNELLE = OUI - indique la borne superieure de l''intervalle des directions de - propagation dans le cas d''une houle aleatoire multidirectionnelle - L''angle est donne en degres et est compte positivement dans le sens - direct a partir de l''axe x.""", - ang = """Used with the option : - MULTIDIRECTIONAL RANDOM WAVE = YES -Fixes the maximum value (in deg) of the directions range. It is -counted positively in the trigonometric sense relatively to the x -axis.""", - ), -# ----------------------------------- - S_EXPONENT = SIMP(statut ='f', -# ----------------------------------- - typ = 'R', - defaut = [20.], - fr = """Valeur utilisee avec l''option : - HOULE ALEATOIRE MULTIDIRECTIONNELLE = OUI - indique la valeur maximale de l''exposant s dans l''expression donnant - la repartition directionnelle de la houle. - Cette expression est celle donnee par Goda dans Random Seas and - Design of Maritime Structures - University of Tokyo Press : - G(f,teta) = G0 * (cos(teta/2))**2s. f est la frequence et teta est - la direction de propagation de la houle.""", - ang = """Used with the option : - MULTIDIRECTIONAL RANDOM WAVE = YES -Fixes the maximum value of exponent S in the Goda formula used to -express the directional wave energy spreading. -See GODA Y., Random Seas and Design of Maritime Structures - Univ. -of Tokyo Press, 1987.""", - ), - ), - ), -# ----------------------------------- - PERIOD_SCANNING = FACT(statut='f', -# ----------------------------------- -# ----------------------------------- - PERIOD_SCANNING = SIMP(statut ='f', -# ----------------------------------- - typ = bool, - defaut = [False], - fr = """oui, si l''on veut effectuer plusieurs calculs en balayant un -intervalle de periodes (voir reels index 8,9 et 10).""", - ang = """Yes, if one wants to run computations by scanning a period range -(resonance computations, see also reals of index 8, 9, and 10).""", - ), -# ----------------------------------- - DONNEES = FACT(statut='f', -# ----------------------------------- -# ----------------------------------- - BEGINNING_PERIOD_FOR_PERIOD_SCANNING = SIMP(statut ='f', -# ----------------------------------- - typ = 'R', - defaut = [0.], - fr = """Valeur utilisee avec l''option : - BALAYAGE EN PERIODE = OUI - indique la borne gauche de l''intervalle de periodes a parcourir - (pour par exemple rechercher les periodes de resonances).""", - ang = """Used with the option : - PERIOD SCANNING = YES -Fixes the minimum value (in sec) of the period range to be used for -the period scanning.""", - ), -# ----------------------------------- - ENDING_PERIOD_FOR_PERIOD_SCANNING = SIMP(statut ='f', -# ----------------------------------- - typ = 'R', - defaut = [0.], - fr = """Valeur utilisee avec l''option : - BALAYAGE EN PERIODE = OUI - indique la borne droite de l''intervalle de periodes a parcourir - (pour par exemple rechercher les periodes de resonances).""", - ang = """Used with the option : - PERIOD SCANNING = YES -Fixes the maximum value (in sec) of the period range to be used for -the period scanning.""", - ), -# ----------------------------------- - STEP_FOR_PERIOD_SCANNING = SIMP(statut ='f', -# ----------------------------------- - typ = 'R', - defaut = [0.], - fr = """Valeur utilisee avec l''option : - BALAYAGE EN PERIODE = OUI - indique le pas a prendre pour effectuer le balayage en periodes - (pour par exemple rechercher les periodes de resonances).""", - ang = """Used with the option : - PERIOD SCANNING = YES -Fixes the value of the period step (in sec) to be used for -the period scanning.""", - ), - ), - ), -# ----------------------------------- - INFORMATION = FACT(statut='f', -# ----------------------------------- -# ----------------------------------- - MINIMUM_VALUE_FOR_H = SIMP(statut ='f', -# ----------------------------------- - typ = 'R', - defaut = [1.E-7], - fr = """Fixe la valeur minimale de H -Non active pour l''instant.""", - ang = """Fixes the minimum value of H -Non active at the moment.""", - ), -# ----------------------------------- - WAVE_PERIOD = SIMP(statut ='f', -# ----------------------------------- - typ = 'R', - defaut = [10.], - fr = """Definit la periode de la houle en mode monochromatique.""", - ang = """Defines the wave period for monochromatic mode.""", - ), -# ----------------------------------- - DIRECTION_OF_WAVE_PROPAGATION = SIMP(statut ='f', -# ----------------------------------- - typ = 'R', - defaut = [0.0], - fr = """Donne la direction du vecteur d''onde de la houle incidente. L''angle -est donne en degres et est compte positivement dans le sens direct -a partir de l''axe des x. -Il s''agit de la direction principale de propagation. -Cette direction est la meme a toutes les frontieres maritimes. -Si l''utilisateur veut specifier des directions differentes sur -differentes frontieres, il doit le faire dans son FORTRAN dans le -sous-programme BORH en specifiant la variable TETAB.""", - ang = """Fixes the direction towards the incident waves at boundaries go to. -It is counted in degress and positively in the trigonometric sense -relatively to the x axis. -This value is prescribed as a constant value along all the wave -incident type boundaries. If one wants to specify a non uniform value, -the user has to specify the value TETAB in the sub-routine BORH.""", - ), -# ----------------------------------- - ORIGINAL_HOUR_OF_TIME = SIMP(statut ='f', -# ----------------------------------- - typ = 'I', min= 3, max= 3, - defaut = [0,0,0], - fr = """Permet de fixer l''heure d''origine des temps du modele lors -de la prise en compte de la force generatrice de la maree.""", - ang = """Give the time of the time origin of the model when taking into -account the tide generating force.""", - ), - ), -) -# ----------------------------------------------------------------------- -EQUATIONS_SMOOTHINGS = PROC(nom= "EQUATIONS_SMOOTHINGS",op = None, -# ----------------------------------------------------------------------- -# ----------------------------------- - BOTTOM_TOPOGRAPHY_SMOOTHING = SIMP(statut ='f', -# ----------------------------------- - typ = 'I', - defaut = [0], - fr = """Nombre de lissages effectues sur la topographie. -chaque lissage, effectue a l''aide d''une matrice de masse, -est conservatif. -Utilise lorsque les donnees de bathymetrie donnent des resultats -trop irreguliers apres interpolation.""", - ang = """Number of smoothings done on the topography. -Each smoothing, using a mass matrix, is conservative. -It is used when bathymetric data provide too irregular results -after interpolation.""", - ), -) -# ----------------------------------------------------------------------- -INITIAL_CONDITIONS_EQUATIONS = PROC(nom= "INITIAL_CONDITIONS_EQUATIONS",op = None, -# ----------------------------------------------------------------------- -# ----------------------------------- - INITIAL_WATER_LEVEL = SIMP(statut ='f', -# ----------------------------------- - typ = 'R', - defaut = [0.], - fr = """Valeur utilisee avec l''option CONDITIONS INITIALES : COTE CONSTANTE.""", - ang = """Used with the option INITIAL CONDITIONS : CONSTANT ELEVATION.""", - ), -# ----------------------------------- - INITIAL_DEPTH = SIMP(statut ='f', -# ----------------------------------- - typ = 'R', - defaut = [0.], - fr = """Valeur utilisee avec l''option : - CONDITIONS INITIALES : HAUTEUR CONSTANTE.""", - ang = """Value specified when using the option : - INITIAL CONDITIONS : CONSTANT DEPTH.""", - ), -# ----------------------------------- - INITIAL_CONDITIONS = SIMP(statut ='f', -# ----------------------------------- - typ = 'TXM', - into = ['ZERO ELEVATION','CONSTANT ELEVATION','ZERO DEPTH','CONSTANT DEPTH','SPECIAL'], - defaut = 'ZERO ELEVATION', - fr = """Permet de definir les conditions initiales sur les hauteurs d''eau. -Les valeurs possibles sont : - - COTE NULLE. Initialise la cote de surface libre a 0. - Les hauteurs d''eau initiales sont alors retrouvees en - faisant la difference entre les cotes de surface libre - et du fond. - - COTE CONSTANTE .Initialise la cote de surface libre a la - valeur donnee par le mot-cle COTE INITIALE. Les hauteurs - d''eau initiales sont calculees comme precedemment. - - HAUTEUR NULLE .Initialise les hauteurs d''eau a 0. - - HAUTEUR CONSTANTE. Initialise les hauteurs d''eau a la valeur - donnee par le mot-cle HAUTEUR INITIALE. - - PARTICULIERES. Les conditions initiales sur la hauteur d''eau - doivent etre precisees dans le sous-programme CONDIH.""", - ang = """Enables to define the initial conditions on water depths. -Allowable values are : - - ZERO ELEVATION : fixes the free surface level to 0. - Water depths are then equal to the difference between - free surface level and bottom level. - - CONSTANT ELEVATION : fixes the free surface level to the value - specified by the key-word INITIAL WATER LEVEL. Water - level are then computed as before. - - ZERO DEPTH : initializes the water depths to 0. - - CONSTANT DEPTH : initializes the water depths to the value - specified by the key-word INITIAL DEPTH. - - SPECIAL : initial conditions on water depths are to be - precised in the sub-routine CONDIH.""", - ), -) -# ----------------------------------------------------------------------- -PHYSICAL_CONSTANTS = PROC(nom= "PHYSICAL_CONSTANTS",op = None, -# ----------------------------------------------------------------------- -# ----------------------------------- - GRAVITY_ACCELERATION = SIMP(statut ='f', -# ----------------------------------- - typ = 'R', - defaut = [9.81], - fr = """Fixe la valeur de l''acceleration de la pesanteur.""", - ang = """Fixes the gravity acceleration value.""", - ), -) -# ----------------------------------------------------------------------- -RESULTS = PROC(nom= "RESULTS",op = None, -# ----------------------------------------------------------------------- -# ----------------------------------- - VARIABLES_FOR_GRAPHIC_PRINTOUTS = SIMP(statut ='f', -# ----------------------------------- - typ = 'TXM', - into = ["wave height","wave phase","velocity u (free surface)(t=0)","velocity v (free surface)(t=0)","free surface elevation (t=0)","bottom elevation","still water height","phase velocity","group velocity","wave number","real potential","imaginal potential","prive(1,1)","prive(1,2)","prive(1,3)","prive(1,4)","first mean spectral period","second mean spectral period","third mean spectral period","force along X","force along Y","wave incidence radian","breaking rate","SXX stress","SXY stress","SYY stress"], - defaut = [], - fr = """Noms des variables que l''utilisateur veut ecrire dans le fichier des -resultats. -Le choix des separateurs est libre. -Les possibilites offertes sont les suivantes : - - HS hauteur de la houle - - PHAS phase de la houle - - U0 vitesse u en surface (a t=0) - - V0 vitesse v en surface (a t=0) - - ZS cote de la surface libre (a t=0) - - ZF fond - - HW hauteur d''eau au repos - - C vitesse de phase - - CG vitesse de groupe - - K nombre d''onde - - PHIR potentiel reel - - PHII potentiel imaginaire - - D prive(1,1) (variable 13) - - E prive(1,2) (variable 14) - - F prive(1,3) (variable 15) - - G prive(1,4) (variable 16) - - T01 premiere periode moyenne spectrale - - T02 deuxieme periode moyenne spectrale - - TM troisieme periode moyenne spectrale - - FX force en X - - FY force en Y - - INC incidence de la houle - - QB taux de deferlement - - SXX contrainte SXX - - SXY contrainte SXY - - SYY contrainte SYY -L''utilisateur dispose de 4 champs libres, qu''il peut -utiliser pour ecrire dans le fichier des resultats des variables -qu''il cree lui-meme. Ces variables propres a l''utlisateur doivent -etre calculees dans le sous-programme CALRES et le nom que l''on -desire leur donner doit etre ecrit dans le sous-programme NOMVAR. -Ces 4 champs sont : - - D, E, F, G qui correspondent aux tableaux PRIVE(1,1), PRIVE(1,2), - PRIVE(1,3), PRIVE(1,4). A la difference des variables - precedentes, celles-ci sont conservees dans tout le programme, et - peuvent donc etre reutilisees. - Dans ce dernier cas ne pas oublier de donner une taille - suffisante au tableau PRIVE, - en precisant le parametre NPRIV (dans le programme principal).""", - ang = """Names of the variables that the user wants to write in the results -file. Separators between variable names can be choosen free. - The allowable values are : - - HS=wave height - - PHAS=wave phase - - U0=velocity u (free surface at t=0) - - V0=velocity v (free surface at t=0) - - ZS=free surface elevation (at t=0) - - ZF=bottom elevation - - HW=still water height - - C=phase velocity - - CG=group velocity - - K=wave number - - PHIR=real potential - - PHII=imaginal potential - - D=prive(1,1) - - E=prive(1,2) - - F=prive(1,3) - - G=prive(1,4) - - T01=first mean spectral period - - T02=second mean spectral period - - TM=third mean spectral period - - FX=force along X - - FY=force along Y - - INC=wave incidence radian - - QB=breaking rate - - SXX=SXX stress - - SXY=SXY stress - - SYY=SYY stress -The user has 4 free variables at his/her disposal to create other -variables by him/herself. These variables have to be computed -in the CALRES sub-routine, and the name that we want to attribute -has to be precibed in the NOMVAR sub-routine. -The 4 free variable fields are : - - D, E, F, G which corresponds to the private arrays PRIVE(1,1), - PRIVE(1,2), PRIVE(1,3) and PRIVE (1,4). Contrarily to the previous - variables, these are conserved all through the computation, and can - be used again. - Do not forget to specify the number of private arrays you want to - use in the principal programme (variable NPRIV).""", - ), -# ----------------------------------- - VARIABLES_TO_BE_PRINTED = SIMP(statut ='f', -# ----------------------------------- - typ = 'TXM', - into = ["wave height","wave phase","velocity u (free surface)(t=0)","velocity v (free surface)(t=0)","free surface elevation (t=0)","bottom elevation","still water height","phase velocity","group velocity","wave number","real potential","imaginal potential","prive(1,1)","prive(1,2)","prive(1,3)","prive(1,4)","first mean spectral period","second mean spectral period","third mean spectral period","force along X","force along Y","wave incidence radian","breaking rate","SXX stress","SXY stress","SYY stress"], - defaut = '', - fr = """Nom des variables que l''utilisateur desire ecrire a l''ecran. -Memes possibilites que pour les sorties graphiques.""", - ang = """Name of variables taht the user whishes to write on the screen. -Possibilities are the same as for graphic outputs.""", - ), -) -# ----------------------------------------------------------------------- -CURRENT = PROC(nom= "CURRENT",op = None, -# ----------------------------------------------------------------------- -# ----------------------------------- - INFORMATION = FACT(statut='f', -# ----------------------------------- -# ----------------------------------- - SUB_ITERATIONS_ACCURACY_FOR_CURRENT = SIMP(statut ='f', -# ----------------------------------- - typ = 'R', - defaut = [1.E-2], - fr = """Donne la precision requise pour les sous-iterations du calcul -du nombre d''onde en presencede courant (vecteur d''onde).""", - ang = """Fixes the accuracy requested for sub-iterations necessary to -determine the wave vector.""", - ), - ), -# ----------------------------------- - CURRENT = FACT(statut='f', -# ----------------------------------- -# ----------------------------------- - CURRENT = SIMP(statut ='f', -# ----------------------------------- - typ = bool, - defaut = [False], - fr = """TRUE : PRISE EN COMPTE DE LA REFRACTION DE LA HOULE PAR - LE COURANT. - Modele retenu : Kostense et Al. (1988)""", - ang = """TRUE : WAVE REFRACTION DUE TO CURRENT IS - DESCRIBED USING KOSTENSE MODEL (1988)""", - ), - ), -) -# ----------------------------------------------------------------------- -TETAP_CONVERGENCE = PROC(nom= "TETAP_CONVERGENCE",op = None, -# ----------------------------------------------------------------------- -# ----------------------------------- - INFORMATION = FACT(statut='f', -# ----------------------------------- -# ----------------------------------- - SUB_ITERATIONS_ACCURACY_FOR_TETAP = SIMP(statut ='f', -# ----------------------------------- - typ = 'R', - defaut = [1.E-2], - fr = """Donne la precision requise pour les sous-iterations du calcul -automatique de cos(TETAP).""", - ang = """Fixes the accuracy requested for sub-iterations necessary to -determine value of TETAP (criterion on cos(TETAP)).""", - ), - ), -) -# ----------------------------------------------------------------------- -REFLEXION_ANGLE = PROC(nom= "REFLEXION_ANGLE",op = None, -# ----------------------------------------------------------------------- -# ----------------------------------- - TETAP = FACT(statut='f', -# ----------------------------------- -# ----------------------------------- - AUTOMATIC_TETAP_CALCULATION = SIMP(statut ='f', -# ----------------------------------- - typ = bool, - defaut = [False], - fr = """TRUE : CALCUL AUTO DES ANGLES TETAP - (basee sur la direction de la vitesse)""", - ang = """TRUE : AUTOMATIC CALCULATION OF TETAP - (based on velocity direction)""", - ), - ), -) -# ----------------------------------------------------------------------- -INCIDENT_WAVE_PHASE = PROC(nom= "INCIDENT_WAVE_PHASE",op = None, -# ----------------------------------------------------------------------- -# ----------------------------------- - PHASE = FACT(statut='f', -# ----------------------------------- -# ----------------------------------- - AUTOMATIC_CALCULATION_OF_PHASE = SIMP(statut ='f', -# ----------------------------------- - typ = bool, - defaut = [False], - fr = """TRUE : CALCUL AUTOMATIQUE DE LA PHASE - (basee sur une profondeur de reference)""", - ang = """TRUE : AUTOMATIC CALCULATION OF INCIDENTE PHASE - (based on reference water depth)""", - ), - ), -) -# ----------------------------------------------------------------------- -PHASE_DEFINITION = PROC(nom= "PHASE_DEFINITION",op = None, -# ----------------------------------------------------------------------- -# ----------------------------------- - REFERENCE_WATER_DEPTH = FACT(statut='f', -# ----------------------------------- -# ----------------------------------- - REFERENCE_WATER_DEPTH_FOR_AUTOMATIC_PHASE = SIMP(statut ='f', -# ----------------------------------- - typ = 'R', - defaut = [-1.0], - fr = """PROFONDEUR DE REFERENCE POUR LE CALCUL DE LA PHASE. - ESSAYEZ DE METTRE LA FRONTIERE INCIDENTE SUR UNE ZONE - DE BATHYMETRIE HOMOGENE. LA PROFONDEUR A RENSEIGNER - DOIT ETRE REPRESENTATIVE DE LA PROFONDEUR D EAU SUR - LA FRONTIERE""", - ang = """WATER DEPTH FOR AUTOMATIC INCIDENT PHASE CALCULATION. - TRY TO PUT THE INCIDENT WAVE BOUNDARY ON A REGULAR - TOPOGRAPHY ZONE. THE REFERENCE WATER DEPTH SHOULD BE - REPRESENTATIVE OF THE WATER DEPTH ON THE BOUNDARY""", - ), - ), -) -# ----------------------------------------------------------------------- -INFORMATION = PROC(nom= "INFORMATION",op = None, -# ----------------------------------------------------------------------- -# ----------------------------------- - PHASE_DEFINITION = FACT(statut='f', -# ----------------------------------- -# ----------------------------------- - PHASE_REFERENCE_COORDINATES = SIMP(statut ='f', -# ----------------------------------- - typ = 'R', min= 2, max= 2, - defaut = [0,0], - fr = """Coordonnees pour l origine des phases. Ne change rien - aux hauteurs de vagues calculees""", - ang = """Coordinates of reference point for phase.Will - not change the wave height computed""", - ), - ), -) -# ----------------------------------------------------------------------- -CHAINING = PROC(nom= "CHAINING",op = None, -# ----------------------------------------------------------------------- -# ----------------------------------- - TOMAWAC = FACT(statut='f', -# ----------------------------------- -# ----------------------------------- - CHAINING_TOMAWAC_1 = SIMP(statut ='f', -# ----------------------------------- - typ = bool, - defaut = [False], - fr = """Oui, si on imposer un spectre tomawac unique sur la frontiere -onde incidente.""", - ang = """Yes, if one wants to use a spectrum from TOMAWAC on the incident -boundary.""", - ), -# ----------------------------------- - NUMBER_OF_DIRECTIONS_IN_TOMAWAC_SPECTRUM = SIMP(statut ='f', -# ----------------------------------- - typ = 'I', - defaut = [0], - fr = """Indique le nombre de directions dans le spectre importe -depuis TOMAWAC""", - ang = """Give the number of direction in the TOMAWAC imported -spectrum""", - ), -# ----------------------------------- - NUMBER_OF_FREQUENCIES_IN_TOMAWAC_SPECTRUM = SIMP(statut ='f', -# ----------------------------------- - typ = 'I', - defaut = [0], - fr = """Indique le nombre de frequences dans le spectre importe -depuis TOMAWAC""", - ang = """Give the number of frequences in the TOMAWAC imported -spectrum""", - ), -# ----------------------------------- - INSTANT_FOR_READING_TOMAWAC_SPECTRUM = SIMP(statut ='f', -# ----------------------------------- - typ = 'R', - defaut = [0.], - fr = """Indique l instant de calcul TOMAWAC associe au spectre -qui doit etre importe dans ARTEMIS""", - ang = """Give the instant of the TOMAWAC computation at which we -want to import the spectrum for ARTEMIS""", - ), - ), -) -# ----------------------------------------------------------------------- -INPUT_OUTPUT__INFORMATION = PROC(nom= "INPUT_OUTPUT__INFORMATION",op = None, -# ----------------------------------------------------------------------- -# ----------------------------------- - COMPUTATIONAL_INFORMATION = FACT(statut='f', -# ----------------------------------- -# ----------------------------------- - DESCRIPTION_DES_LIBRARIES = SIMP(statut ='f', -# ----------------------------------- - typ = 'TXM', min= 6, max= 6, - defaut = 'builds|PPP|lib|artemisMMMVVV.LLL;builds|PPP|lib|biefMMMVVV.LLL;builds|PPP|lib|hermesMMMVVV.LLL;builds|PPP|lib|damoMMMVVV.LLL;builds|PPP|lib|parallelMMMVVV.LLL;builds|PPP|lib|specialMMMVVV.LLL', - fr = """Description des librairies de ARTEMIS""", - ang = """ARTEMIS LIBRARIES description""", - ), -# ----------------------------------- - DEFAULT_EXECUTABLE = SIMP(statut ='f', -# ----------------------------------- - typ = 'TXM', - defaut = 'builds|PPP|bin|artemisMMMVVV.exe', - fr = """Executable par defaut de ARTEMIS""", - ang = """Default executable for ARTEMIS""", - ), -# ----------------------------------- - DEFAULT_PARALLEL_EXECUTABLE = SIMP(statut ='f', -# ----------------------------------- - typ = 'TXM', - defaut = 'builds|PPP|bin|artemisMMMVVV.exe', - fr = """Executable parallele par defaut de Artemis""", - ang = """Default parallel executable for Artemis""", - ), - ), -# ----------------------------------- - COMPUTATION_ENVIRONMENT = FACT(statut='f', -# ----------------------------------- -# ----------------------------------- - DICTIONARY = SIMP(statut ='f', -# ----------------------------------- - typ = ('Fichier','All Files (*)'), - defaut = 'artemis.dico', - fr = """Dictionnaire des mots cles.""", - ang = """Key word dictionary.""", - ), - ), -# ----------------------------------- - CONTROL = FACT(statut='f', -# ----------------------------------- -# ----------------------------------- - ORIGIN_COORDINATES = SIMP(statut ='f', -# ----------------------------------- - typ = 'I', min= 2, max= 2, - defaut = [0,0], - fr = """Valeur en metres, utilise pour eviter les trops grands -nombres, transmis -dans le format Selafin mais pas d''autre traitement pour l''instant""", - ang = """Value in metres, used to avoid large real numbers, -added in Selafin format, but so far no other treatment""", - ), - ), -) -# ----------------------------------------------------------------------- -INPUT_OUTPUT__FILES = PROC(nom= "INPUT_OUTPUT__FILES",op = None, -# ----------------------------------------------------------------------- -# ----------------------------------- - GEOMETRY_FILE_FORMAT = SIMP(statut ='f', -# ----------------------------------- - typ = 'TXM', - into = ['SERAFIN','SERAFIND','MED'], - defaut = 'SERAFIN?', - fr = """Format du fichier de geometrie. -Les valeurs possibles sont : -- SERAFIN : format standard simple precision pour Telemac; -- SERAFIND: format standard double precision pour Telemac; -- MED : format MED base sur HDF5""", - ang = """Geometry file format. -Possible values are: -- SERAFIN : classical single precision format in Telemac; -- SERAFIND: classical double precision format in Telemac; -- MED : MED format based on HDF5""", - ), -# ----------------------------------- - RESULTS_FILE_FORMAT = SIMP(statut ='f', -# ----------------------------------- - typ = 'TXM', - into = ['SERAFIN','SERAFIND','MED'], - defaut = 'SERAFIN?', - fr = """Format du fichier de resultats. -Les valeurs possibles sont : -- SERAFIN : format standard simple precision pour Telemac; -- SERAFIND: format standard double precision pour Telemac; -- MED : format MED base sur HDF5""", - ang = """Results file format. Possible values are: -- SERAFIN : classical single precision format in Telemac; -- SERAFIND: classical double precision format in Telemac; -- MED : MED format based on HDF5""", - ), -# ----------------------------------- - TOMAWAC_DATA_FILE_1_FORMAT = SIMP(statut ='f', -# ----------------------------------- - typ = 'TXM', - into = ['SERAFIN','SERAFIND','MED'], - defaut = 'SERAFIN?', - fr = """Format du fichier de resultats du calcul precedent. -Les valeurs possibles sont : -- SERAFIN : format standard simple precision pour Telemac; -- SERAFIND: format standard double precision pour Telemac; -- MED : format MED base sur HDF5""", - ang = """Previous computation results file format. -Possible values are: -- SERAFIN : classical single precision format in Telemac; -- SERAFIND: classical double precision format in Telemac; -- MED : MED format based on HDF5""", - ), -# ----------------------------------- - BINARY_DATA_FILE_1_FORMAT = SIMP(statut ='f', -# ----------------------------------- - typ = 'TXM', - into = ['SERAFIN','SERAFIND','MED'], - defaut = 'SERAFIN?', - fr = """Format du fichier de resultats du calcul precedent. -Les valeurs possibles sont : -- SERAFIN : format standard simple precision pour Telemac; -- SERAFIND: format standard double precision pour Telemac; -- MED : format MED base sur HDF5""", - ang = """Previous computation results file format. -Possible values are: -- SERAFIN : classical single precision format in Telemac; -- SERAFIND: classical double precision format in Telemac; -- MED : MED format based on HDF5""", - ), -# ----------------------------------- - BINARY_DATA_FILE_2_FORMAT = SIMP(statut ='f', -# ----------------------------------- - typ = 'TXM', - into = ['SERAFIN','SERAFIND','MED'], - defaut = 'SERAFIN?', - fr = """Format du fichier de resultats du calcul precedent. -Les valeurs possibles sont : -- SERAFIN : format standard simple precision pour Telemac; -- SERAFIND: format standard double precision pour Telemac; -- MED : format MED base sur HDF5""", - ang = """Previous computation results file format. -Possible values are: -- SERAFIN : classical single precision format in Telemac; -- SERAFIND: classical double precision format in Telemac; -- MED : MED format based on HDF5""", - ), -# ----------------------------------- - AMPLITUDE_AND_PHASE_FILE_FORMAT = SIMP(statut ='f', -# ----------------------------------- - typ = 'TXM', - defaut = 'SERAFIN', - fr = """""", - ang = """""", - ), -# ----------------------------------- - FREE_SURFACE_FILE_FORMAT = SIMP(statut ='f', -# ----------------------------------- - typ = 'TXM', - defaut = 'SERAFIN', - fr = """""", - ang = """""", - ), -# ----------------------------------- - NAMES = FACT(statut='f', -# ----------------------------------- -# ----------------------------------- - AD_NUMBER_OF_DERIVATIVES = SIMP(statut ='f', -# ----------------------------------- - typ = 'I', - defaut = [0], - fr = """Definit le nombre de derivees utilisateurs, dans le cadre -de la differentiation algorithmique.""", - ang = """Defines the number of user derivatives, within the framework -of the algorithmic differentiation.""", - ), -# ----------------------------------- - AD_NAMES_OF_DERIVATIVES = SIMP(statut ='f', -# ----------------------------------- - typ = 'TXM', min= 2, max= 2, - fr = """Noms des derivees utilisateurs en 32 caracteres, - 16 pour le nom, 16 pour l''unite""", - ang = """Name of user derivatives in 32 characters, - 16 for the name, 16 for the unit.""", - ), - ), -) -# ----------------------------------------------------------------------- -TOPOGRAPHY_EFFECTS_EXTENDED_MILD_SLOPE_EQUATION = PROC(nom= "TOPOGRAPHY_EFFECTS_EXTENDED_MILD_SLOPE_EQUATION",op = None, -# ----------------------------------------------------------------------- -# ----------------------------------- - RAPIDLY_VARYING_TOPOGRAPHY = SIMP(statut ='f', -# ----------------------------------- - typ = 'TXM', - into = ["BERKHOFF SIMPLE","PRISE EN COMPTE TERME DE PENTE","PRISE EN COMPTE TERME DE COURBURE","PRISE EN COMPTE DES TERMES DE PENTE ET COURBURE"], - defaut = ["BERKHOFF SIMPLE"], - fr = """PRISE EN COMPTE DES FORTES PENTES ET COURBURES DANS BERKHOFF - 0=> BERKHOFF SIMPLE - 1=> PRISE EN COMPTE TERME PENTE en grad(H) **2 - 2=> PRISE EN COMPTE TERME COURBURE en laplacien(H) - 3=> PRISE EN COMPTE DES TERMES PENTE ET COURBURE - Modele retenu pour les fonctions E1 et E2 : Chamberlain - et Porter (1995)""", - ang = """EXTENSION OF MILD-SLOPE EQUATION WITH SECOND - ORDER BOTTOM EFFECTS - 0=> MILD-SLOPE EQUATION - 1=> GRADIENT SECOND ORDER TERM : grad(H) **2 - 2=> CURVATURE SECOND ORDER TERM : laplacian(H) - 3=> GRADIENT + CURVATURE SECOND ORDER TERMS - Model used for functions E1 and E2 expression : Chamberlain - et Porter 1995""", - ), -) -# ----------------------------------------------------------------------- -GENERAL = PROC(nom= "GENERAL",op = None, -# ----------------------------------------------------------------------- -# ----------------------------------- - CHECKING_THE_MESH = SIMP(statut ='f', -# ----------------------------------- - typ = bool, - defaut = [False], - fr = """Si oui on appelle le sous-programme checkmesh qui verifie -la coherence du maillage, points superposes, etc.""", - ang = """if this key word is equal to yes, a call to subroutine -checkmesh will look for errors in the mesh, superimposed points, etc.""", - ), -) -# ----------------------------------------------------------------------- -INPUT_OUTPUT__GRAPHICS_AND_LISTING = PROC(nom= "INPUT_OUTPUT__GRAPHICS_AND_LISTING",op = None, -# ----------------------------------------------------------------------- -# ----------------------------------- - FIRST_TIME_IN_THE_FREE_SURFACE_FILE = SIMP(statut ='f', -# ----------------------------------- - typ = 'R', - defaut = [10000.], - fr = """Determine le temps a partir duquel debute l ecriture -des resultats dans le FICHIER DE SURFACE LIBRE.""", - ang = """Determines the time from which the results are written -in the FREE SURFACE FILE.""", - ), -# ----------------------------------- - TIME_STEP = SIMP(statut ='f', -# ----------------------------------- - typ = 'R', - defaut = [0.25], - fr = """Definit le pas de temps en secondes.""", - ang = """Specifies the time step in seconds.""", - ), -# ----------------------------------- - NUMBER_OF_TIME_STEPS = SIMP(statut ='f', -# ----------------------------------- - typ = 'I', - defaut = [0], - fr = """Definit le nombre de pas de temps pour la sortie graphique -FICHIER DE SURFACE LIBRE.""", - ang = """Specifies the number of time steps in FREE SURFACE FILE.""", - ), -) -TEXTE_NEW_JDC = "\ -" -Ordre_Des_Commandes = ( -'INPUT_OUTPUT_FILES', -'INPUT_OUTPUT_INFORMATION', -'NUMERICAL_PARAMETERS', -'DISSIPATION', -'INPUT_OUTPUT_GRAPHICS_AND_LISTING', -'NUMERICAL_PARAMETERS_SOLVER', -'PHYSICAL_PARAMETERS', -'EQUATIONS_SMOOTHINGS', -'INITIAL_CONDITIONS_EQUATIONS', -'PHYSICAL_CONSTANTS', -'RESULTS', -'CURRENT', -'TETAP_CONVERGENCE', -'REFLEXION_ANGLE', -'INCIDENT_WAVE_PHASE', -'PHASE_DEFINITION', -'INFORMATION', -'CHAINING', -'INPUT_OUTPUT__INFORMATION', -'INPUT_OUTPUT__FILES', -'TOPOGRAPHY_EFFECTS_EXTENDED_MILD_SLOPE_EQUATION', -'GENERAL', -'INPUT_OUTPUT__GRAPHICS_AND_LISTING') -try: - import TelApy - source = "eficas" -except Exception as excpt: - source = "Telemac" -enum = source+'.artemis_enum_auto' -dicoCasEn = source+'.artemis_dicoCasEnToCata' -dicoCasFr = source+'.artemis_dicoCasFrToCata' diff --git a/Telemac/artemis_dicoCasEnToCata.py b/Telemac/artemis_dicoCasEnToCata.py deleted file mode 100644 index 93959fea..00000000 --- a/Telemac/artemis_dicoCasEnToCata.py +++ /dev/null @@ -1,278 +0,0 @@ -dicoCataToEngTelemac = { - "GEOMETRY_FILE" : "GEOMETRY FILE", - "RESULTS_FILE_BINARY" : "RESULTS FILE BINARY", - "TITLE" : "TITLE", - "DEBUGGER" : "DEBUGGER", - "VECTOR_LENGTH" : "VECTOR LENGTH", - "LAW_OF_BOTTOM_FRICTION" : "LAW OF BOTTOM FRICTION", - "MATRIX_STORAGE" : "MATRIX STORAGE", - "MATRIX_VECTOR_PRODUCT" : "MATRIX-VECTOR PRODUCT", - "USER_CRAY" : "USER CRAY", - "GRAPHIC_PRINTOUT_PERIOD" : "GRAPHIC PRINTOUT PERIOD", - "LISTING_PRINTOUT_PERIOD" : "LISTING PRINTOUT PERIOD", - "MAXIMUM_NUMBER_OF_ITERATIONS_FOR_SOLVER" : "MAXIMUM NUMBER OF ITERATIONS FOR SOLVER", - "NUMBER_OF_PERIODS" : "NUMBER OF PERIODS", - "BOTTOM_TOPOGRAPHY_SMOOTHING" : "BOTTOM TOPOGRAPHY SMOOTHING", - "INITIAL_WATER_LEVEL" : "INITIAL WATER LEVEL", - "PRECONDITIONING" : "PRECONDITIONING", - "SOLVER" : "SOLVER", - "SOLVER_OPTION" : "SOLVER OPTION", - "GEOMETRY_FILE_STANDARD" : "GEOMETRY FILE STANDARD", - "RESULTS_FILE_STANDARD" : "RESULTS FILE STANDARD", - "PEAK_PERIOD" : "PEAK PERIOD", - "GAMMA" : "GAMMA", - "MONODIRECTIONAL_RANDOM_WAVE" : "MONODIRECTIONAL RANDOM WAVE", - "MULTIDIRECTIONAL_RANDOM_WAVE" : "MULTIDIRECTIONAL RANDOM WAVE", - "PERIOD_SCANNING" : "PERIOD SCANNING", - "SOLVER_ACCURACY" : "SOLVER ACCURACY", - "MINIMUM_VALUE_FOR_H" : "MINIMUM VALUE FOR H", - "INITIAL_DEPTH" : "INITIAL DEPTH", - "WAVE_PERIOD" : "WAVE PERIOD", - "GRAVITY_ACCELERATION" : "GRAVITY ACCELERATION", - "INITIAL_CONDITIONS" : "INITIAL CONDITIONS", - "RELAXATION_COEFFICIENT" : "RELAXATION COEFFICIENT", - "DISCRETIZATION_IN_SPACE" : "DISCRETIZATION IN SPACE", - "NUMBER_OF_DIRECTIONS" : "NUMBER OF DIRECTIONS", - "DIRECTION_OF_WAVE_PROPAGATION" : "DIRECTION OF WAVE PROPAGATION", - "ZERO" : "ZERO", - "BEGINNING_PERIOD_FOR_PERIOD_SCANNING" : "BEGINNING PERIOD FOR PERIOD SCANNING", - "ENDING_PERIOD_FOR_PERIOD_SCANNING" : "ENDING PERIOD FOR PERIOD SCANNING", - "STEP_FOR_PERIOD_SCANNING" : "STEP FOR PERIOD SCANNING", - "MINIMUM_ANGLE_OF_PROPAGATION" : "MINIMUM ANGLE OF PROPAGATION", - "MAXIMUM_ANGLE_OF_PROPAGATION" : "MAXIMUM ANGLE OF PROPAGATION", - "S_EXPONENT" : "S EXPONENT", - "LISTING_PRINTOUT" : "LISTING PRINTOUT", - "INFORMATIONS_ABOUT_SOLVER" : "INFORMATIONS ABOUT SOLVER", - "VARIABLES_FOR_GRAPHIC_PRINTOUTS" : "VARIABLES FOR GRAPHIC PRINTOUTS", - "VARIABLES_TO_BE_PRINTED" : "VARIABLES TO BE PRINTED", - "FORTRAN_FILE" : "FORTRAN FILE", - "STEERING_FILE" : "STEERING FILE", - "BOUNDARY_CONDITIONS_FILE" : "BOUNDARY CONDITIONS FILE", - "RESULTS_FILE" : "RESULTS FILE", - "RELEASE" : "RELEASE", - "PASSWORD" : "PASSWORD", - "LIBRARIES" : "LIBRARIES", - "CPU_TIME" : "CPU TIME", - "MEMORY_SPACE" : "MEMORY SPACE", - "BOTTOM_TOPOGRAPHY_FILE" : "BOTTOM TOPOGRAPHY FILE", - "TOMAWAC_DATA_FILE_1" : "TOMAWAC DATA FILE 1", - "BINARY_DATA_FILE_1" : "BINARY DATA FILE 1", - "BINARY_DATA_FILE_2" : "BINARY DATA FILE 2", - "FORMATTED_DATA_FILE_1" : "FORMATTED DATA FILE 1", - "FORMATTED_DATA_FILE_2" : "FORMATTED DATA FILE 2", - "BINARY_RESULTS_FILE" : "BINARY RESULTS FILE", - "FORMATTED_RESULTS_FILE" : "FORMATTED RESULTS FILE", - "PRIORITY" : "PRIORITY", - "BIDON_STRING" : "BIDON STRING", - "GEOMETRY_FILE_BINARY" : "GEOMETRY FILE BINARY", - "SUB_ITERATIONS_ACCURACY_FOR_DISSIPATION" : "SUB-ITERATIONS ACCURACY FOR DISSIPATION", - "SUB_ITERATIONS_ACCURACY_FOR_CURRENT" : "SUB-ITERATIONS ACCURACY FOR CURRENT", - "SUB_ITERATIONS_ACCURACY_FOR_TETAP" : "SUB-ITERATIONS ACCURACY FOR TETAP", - "BREAKING" : "BREAKING", - "CURRENT" : "CURRENT", - "AUTOMATIC_TETAP_CALCULATION" : "AUTOMATIC TETAP CALCULATION", - "AUTOMATIC_CALCULATION_OF_PHASE" : "AUTOMATIC CALCULATION OF PHASE", - "REFERENCE_WATER_DEPTH_FOR_AUTOMATIC_PHASE" : "REFERENCE WATER DEPTH FOR AUTOMATIC PHASE", - "PHASE_REFERENCE_COORDINATES" : "PHASE REFERENCE COORDINATES", - "KDALLY" : "KDALLY", - "BREAKING_LAW" : "BREAKING LAW", - "MAXIMUM_OF_SUB_ITERATIONS" : "MAXIMUM OF SUB-ITERATIONS", - "DISSIPATION_RELAXATION" : "DISSIPATION RELAXATION", - "MAXIMUM_OF_SUB_ITERATIONS_FOR_TETAP" : "MAXIMUM OF SUB-ITERATIONS FOR TETAP", - "RELAXATION_ON_TETAP" : "RELAXATION ON TETAP", - "CHAINING_TOMAWAC_1" : "CHAINING TOMAWAC 1", - "NUMBER_OF_DIRECTIONS_IN_TOMAWAC_SPECTRUM" : "NUMBER OF DIRECTIONS IN TOMAWAC SPECTRUM", - "NUMBER_OF_FREQUENCIES_IN_TOMAWAC_SPECTRUM" : "NUMBER OF FREQUENCIES IN TOMAWAC SPECTRUM", - "INSTANT_FOR_READING_TOMAWAC_SPECTRUM" : "INSTANT FOR READING TOMAWAC SPECTRUM", - "ALPHA" : "ALPHA", - "GAMMAS" : "GAMMAS", - "GDALLY" : "GDALLY", - "FRICTION" : "FRICTION", - "FLUID_KINEMATIC_VISCOSITY" : "FLUID KINEMATIC VISCOSITY", - "DIAMETER90" : "DIAMETER90", - "DIAMETER50" : "DIAMETER50", - "SEDIMENT_SPECIFIC_WEIGHT" : "SEDIMENT SPECIFIC WEIGHT", - "FLUID_SPECIFIC_MASS" : "FLUID SPECIFIC MASS", - "HYDRAULIC_REGIME_IMPOSED" : "HYDRAULIC REGIME IMPOSED", - "SKIN_ROUGHNESS_ONLY" : "SKIN ROUGHNESS ONLY", - "WAVE_HEIGHTS_SMOOTHING" : "WAVE HEIGHTS SMOOTHING", - "VALIDATION" : "VALIDATION", - "HYDRAULIC_REGIME_TYPE" : "HYDRAULIC REGIME TYPE", - "BOTTOM_FRICTION_LAW" : "BOTTOM FRICTION LAW", - "FRICTION_FACTOR_IMPOSED" : "FRICTION FACTOR IMPOSED", - "FRICTION_FACTOR" : "FRICTION FACTOR", - "FRICTION_COEFFICIENT" : "FRICTION COEFFICIENT", - "RIPPLES_COEFFICIENT" : "RIPPLES COEFFICIENT", - "ACCOUNT_NUMBER" : "ACCOUNT NUMBER", - "MINIMUM_SPECTRAL_PERIOD" : "MINIMUM SPECTRAL PERIOD", - "MAXIMUM_SPECTRAL_PERIOD" : "MAXIMUM SPECTRAL PERIOD", - "ORIGINAL_DATE_OF_TIME" : "ORIGINAL DATE OF TIME", - "ORIGINAL_HOUR_OF_TIME" : "ORIGINAL HOUR OF TIME", - "NUMBER_OF_PRIVATE_VARIABLES" : "NUMBER OF PRIVATE VARIABLES", - "PARALLEL_PROCESSORS" : "PARALLEL PROCESSORS", - "PARTITIONING_TOOL" : "PARTITIONING TOOL", - "ORIGIN_COORDINATES" : "ORIGIN COORDINATES", - "REFERENCE_FILE" : "REFERENCE FILE", - "GEOMETRY_FILE_FORMAT" : "GEOMETRY FILE FORMAT", - "RESULTS_FILE_FORMAT" : "RESULTS FILE FORMAT", - "REFERENCE_FILE_FORMAT" : "REFERENCE FILE FORMAT", - "TOMAWAC_DATA_FILE_1_FORMAT" : "TOMAWAC DATA FILE 1 FORMAT", - "BINARY_DATA_FILE_1_FORMAT" : "BINARY DATA FILE 1 FORMAT", - "BINARY_DATA_FILE_2_FORMAT" : "BINARY DATA FILE 2 FORMAT", - "RAPIDLY_VARYING_TOPOGRAPHY" : "RAPIDLY VARYING TOPOGRAPHY", - "CHECKING_THE_MESH" : "CHECKING THE MESH", - "FREE_SURFACE_ANIMATION" : "FREE SURFACE ANIMATION", - "AMPLITUDE_AND_PHASE_FILE" : "AMPLITUDE AND PHASE FILE", - "AMPLITUDE_AND_PHASE_FILE_FORMAT" : "AMPLITUDE AND PHASE FILE FORMAT", - "FREE_SURFACE_FILE" : "FREE SURFACE FILE", - "FREE_SURFACE_FILE_FORMAT" : "FREE SURFACE FILE FORMAT", - "FIRST_TIME_IN_THE_FREE_SURFACE_FILE" : "FIRST TIME IN THE FREE SURFACE FILE", - "TIME_STEP" : "TIME STEP", - "NUMBER_OF_TIME_STEPS" : "NUMBER OF TIME STEPS", - "DICTIONARY" : "DICTIONARY", - "LIST_OF_FILES" : "LIST OF FILES", - "AD_NUMBER_OF_DERIVATIVES" : "AD NUMBER OF DERIVATIVES", - "AD_NAMES_OF_DERIVATIVES" : "AD NAMES OF DERIVATIVES", - "DESCRIPTION_DES_LIBRARIES" : "DESCRIPTION DES LIBRARIES", - "DEFAULT_EXECUTABLE" : "DEFAULT EXECUTABLE", - "DEFAULT_PARALLEL_EXECUTABLE" : "DEFAULT PARALLEL EXECUTABLE", -} -dicoCasEnToCata = { - "GEOMETRY FILE" : "GEOMETRY_FILE", - "RESULTS FILE BINARY" : "RESULTS_FILE_BINARY", - "TITLE" : "TITLE", - "DEBUGGER" : "DEBUGGER", - "VECTOR LENGTH" : "VECTOR_LENGTH", - "LAW OF BOTTOM FRICTION" : "LAW_OF_BOTTOM_FRICTION", - "MATRIX STORAGE" : "MATRIX_STORAGE", - "MATRIX-VECTOR PRODUCT" : "MATRIX_VECTOR_PRODUCT", - "USER CRAY" : "USER_CRAY", - "GRAPHIC PRINTOUT PERIOD" : "GRAPHIC_PRINTOUT_PERIOD", - "LISTING PRINTOUT PERIOD" : "LISTING_PRINTOUT_PERIOD", - "MAXIMUM NUMBER OF ITERATIONS FOR SOLVER" : "MAXIMUM_NUMBER_OF_ITERATIONS_FOR_SOLVER", - "NUMBER OF PERIODS" : "NUMBER_OF_PERIODS", - "BOTTOM TOPOGRAPHY SMOOTHING" : "BOTTOM_TOPOGRAPHY_SMOOTHING", - "INITIAL WATER LEVEL" : "INITIAL_WATER_LEVEL", - "PRECONDITIONING" : "PRECONDITIONING", - "SOLVER" : "SOLVER", - "SOLVER OPTION" : "SOLVER_OPTION", - "GEOMETRY FILE STANDARD" : "GEOMETRY_FILE_STANDARD", - "RESULTS FILE STANDARD" : "RESULTS_FILE_STANDARD", - "PEAK PERIOD" : "PEAK_PERIOD", - "GAMMA" : "GAMMA", - "MONODIRECTIONAL RANDOM WAVE" : "MONODIRECTIONAL_RANDOM_WAVE", - "MULTIDIRECTIONAL RANDOM WAVE" : "MULTIDIRECTIONAL_RANDOM_WAVE", - "PERIOD SCANNING" : "PERIOD_SCANNING", - "SOLVER ACCURACY" : "SOLVER_ACCURACY", - "MINIMUM VALUE FOR H" : "MINIMUM_VALUE_FOR_H", - "INITIAL DEPTH" : "INITIAL_DEPTH", - "WAVE PERIOD" : "WAVE_PERIOD", - "GRAVITY ACCELERATION" : "GRAVITY_ACCELERATION", - "INITIAL CONDITIONS" : "INITIAL_CONDITIONS", - "RELAXATION COEFFICIENT" : "RELAXATION_COEFFICIENT", - "DISCRETIZATION IN SPACE" : "DISCRETIZATION_IN_SPACE", - "NUMBER OF DIRECTIONS" : "NUMBER_OF_DIRECTIONS", - "DIRECTION OF WAVE PROPAGATION" : "DIRECTION_OF_WAVE_PROPAGATION", - "ZERO" : "ZERO", - "BEGINNING PERIOD FOR PERIOD SCANNING" : "BEGINNING_PERIOD_FOR_PERIOD_SCANNING", - "ENDING PERIOD FOR PERIOD SCANNING" : "ENDING_PERIOD_FOR_PERIOD_SCANNING", - "STEP FOR PERIOD SCANNING" : "STEP_FOR_PERIOD_SCANNING", - "MINIMUM ANGLE OF PROPAGATION" : "MINIMUM_ANGLE_OF_PROPAGATION", - "MAXIMUM ANGLE OF PROPAGATION" : "MAXIMUM_ANGLE_OF_PROPAGATION", - "S EXPONENT" : "S_EXPONENT", - "LISTING PRINTOUT" : "LISTING_PRINTOUT", - "INFORMATIONS ABOUT SOLVER" : "INFORMATIONS_ABOUT_SOLVER", - "VARIABLES FOR GRAPHIC PRINTOUTS" : "VARIABLES_FOR_GRAPHIC_PRINTOUTS", - "VARIABLES TO BE PRINTED" : "VARIABLES_TO_BE_PRINTED", - "FORTRAN FILE" : "FORTRAN_FILE", - "STEERING FILE" : "STEERING_FILE", - "BOUNDARY CONDITIONS FILE" : "BOUNDARY_CONDITIONS_FILE", - "RESULTS FILE" : "RESULTS_FILE", - "RELEASE" : "RELEASE", - "PASSWORD" : "PASSWORD", - "LIBRARIES" : "LIBRARIES", - "CPU TIME" : "CPU_TIME", - "MEMORY SPACE" : "MEMORY_SPACE", - "BOTTOM TOPOGRAPHY FILE" : "BOTTOM_TOPOGRAPHY_FILE", - "TOMAWAC DATA FILE 1" : "TOMAWAC_DATA_FILE_1", - "BINARY DATA FILE 1" : "BINARY_DATA_FILE_1", - "BINARY DATA FILE 2" : "BINARY_DATA_FILE_2", - "FORMATTED DATA FILE 1" : "FORMATTED_DATA_FILE_1", - "FORMATTED DATA FILE 2" : "FORMATTED_DATA_FILE_2", - "BINARY RESULTS FILE" : "BINARY_RESULTS_FILE", - "FORMATTED RESULTS FILE" : "FORMATTED_RESULTS_FILE", - "PRIORITY" : "PRIORITY", - "BIDON STRING" : "BIDON_STRING", - "GEOMETRY FILE BINARY" : "GEOMETRY_FILE_BINARY", - "SUB-ITERATIONS ACCURACY FOR DISSIPATION" : "SUB_ITERATIONS_ACCURACY_FOR_DISSIPATION", - "SUB-ITERATIONS ACCURACY FOR CURRENT" : "SUB_ITERATIONS_ACCURACY_FOR_CURRENT", - "SUB-ITERATIONS ACCURACY FOR TETAP" : "SUB_ITERATIONS_ACCURACY_FOR_TETAP", - "BREAKING" : "BREAKING", - "CURRENT" : "CURRENT", - "AUTOMATIC TETAP CALCULATION" : "AUTOMATIC_TETAP_CALCULATION", - "AUTOMATIC CALCULATION OF PHASE" : "AUTOMATIC_CALCULATION_OF_PHASE", - "REFERENCE WATER DEPTH FOR AUTOMATIC PHASE" : "REFERENCE_WATER_DEPTH_FOR_AUTOMATIC_PHASE", - "PHASE REFERENCE COORDINATES" : "PHASE_REFERENCE_COORDINATES", - "KDALLY" : "KDALLY", - "BREAKING LAW" : "BREAKING_LAW", - "MAXIMUM OF SUB-ITERATIONS" : "MAXIMUM_OF_SUB_ITERATIONS", - "DISSIPATION RELAXATION" : "DISSIPATION_RELAXATION", - "MAXIMUM OF SUB-ITERATIONS FOR TETAP" : "MAXIMUM_OF_SUB_ITERATIONS_FOR_TETAP", - "RELAXATION ON TETAP" : "RELAXATION_ON_TETAP", - "CHAINING TOMAWAC 1" : "CHAINING_TOMAWAC_1", - "NUMBER OF DIRECTIONS IN TOMAWAC SPECTRUM" : "NUMBER_OF_DIRECTIONS_IN_TOMAWAC_SPECTRUM", - "NUMBER OF FREQUENCIES IN TOMAWAC SPECTRUM" : "NUMBER_OF_FREQUENCIES_IN_TOMAWAC_SPECTRUM", - "INSTANT FOR READING TOMAWAC SPECTRUM" : "INSTANT_FOR_READING_TOMAWAC_SPECTRUM", - "ALPHA" : "ALPHA", - "GAMMAS" : "GAMMAS", - "GDALLY" : "GDALLY", - "FRICTION" : "FRICTION", - "FLUID KINEMATIC VISCOSITY" : "FLUID_KINEMATIC_VISCOSITY", - "DIAMETER90" : "DIAMETER90", - "DIAMETER50" : "DIAMETER50", - "SEDIMENT SPECIFIC WEIGHT" : "SEDIMENT_SPECIFIC_WEIGHT", - "FLUID SPECIFIC MASS" : "FLUID_SPECIFIC_MASS", - "HYDRAULIC REGIME IMPOSED" : "HYDRAULIC_REGIME_IMPOSED", - "SKIN ROUGHNESS ONLY" : "SKIN_ROUGHNESS_ONLY", - "WAVE HEIGHTS SMOOTHING" : "WAVE_HEIGHTS_SMOOTHING", - "VALIDATION" : "VALIDATION", - "HYDRAULIC REGIME TYPE" : "HYDRAULIC_REGIME_TYPE", - "BOTTOM FRICTION LAW" : "BOTTOM_FRICTION_LAW", - "FRICTION FACTOR IMPOSED" : "FRICTION_FACTOR_IMPOSED", - "FRICTION FACTOR" : "FRICTION_FACTOR", - "FRICTION COEFFICIENT" : "FRICTION_COEFFICIENT", - "RIPPLES COEFFICIENT" : "RIPPLES_COEFFICIENT", - "ACCOUNT NUMBER" : "ACCOUNT_NUMBER", - "MINIMUM SPECTRAL PERIOD" : "MINIMUM_SPECTRAL_PERIOD", - "MAXIMUM SPECTRAL PERIOD" : "MAXIMUM_SPECTRAL_PERIOD", - "ORIGINAL DATE OF TIME" : "ORIGINAL_DATE_OF_TIME", - "ORIGINAL HOUR OF TIME" : "ORIGINAL_HOUR_OF_TIME", - "NUMBER OF PRIVATE VARIABLES" : "NUMBER_OF_PRIVATE_VARIABLES", - "PARALLEL PROCESSORS" : "PARALLEL_PROCESSORS", - "PARTITIONING TOOL" : "PARTITIONING_TOOL", - "ORIGIN COORDINATES" : "ORIGIN_COORDINATES", - "REFERENCE FILE" : "REFERENCE_FILE", - "GEOMETRY FILE FORMAT" : "GEOMETRY_FILE_FORMAT", - "RESULTS FILE FORMAT" : "RESULTS_FILE_FORMAT", - "REFERENCE FILE FORMAT" : "REFERENCE_FILE_FORMAT", - "TOMAWAC DATA FILE 1 FORMAT" : "TOMAWAC_DATA_FILE_1_FORMAT", - "BINARY DATA FILE 1 FORMAT" : "BINARY_DATA_FILE_1_FORMAT", - "BINARY DATA FILE 2 FORMAT" : "BINARY_DATA_FILE_2_FORMAT", - "RAPIDLY VARYING TOPOGRAPHY" : "RAPIDLY_VARYING_TOPOGRAPHY", - "CHECKING THE MESH" : "CHECKING_THE_MESH", - "FREE SURFACE ANIMATION" : "FREE_SURFACE_ANIMATION", - "AMPLITUDE AND PHASE FILE" : "AMPLITUDE_AND_PHASE_FILE", - "AMPLITUDE AND PHASE FILE FORMAT" : "AMPLITUDE_AND_PHASE_FILE_FORMAT", - "FREE SURFACE FILE" : "FREE_SURFACE_FILE", - "FREE SURFACE FILE FORMAT" : "FREE_SURFACE_FILE_FORMAT", - "FIRST TIME IN THE FREE SURFACE FILE" : "FIRST_TIME_IN_THE_FREE_SURFACE_FILE", - "TIME STEP" : "TIME_STEP", - "NUMBER OF TIME STEPS" : "NUMBER_OF_TIME_STEPS", - "DICTIONARY" : "DICTIONARY", - "LIST OF FILES" : "LIST_OF_FILES", - "AD NUMBER OF DERIVATIVES" : "AD_NUMBER_OF_DERIVATIVES", - "AD NAMES OF DERIVATIVES" : "AD_NAMES_OF_DERIVATIVES", - "DESCRIPTION DES LIBRARIES" : "DESCRIPTION_DES_LIBRARIES", - "DEFAULT EXECUTABLE" : "DEFAULT_EXECUTABLE", - "DEFAULT PARALLEL EXECUTABLE" : "DEFAULT_PARALLEL_EXECUTABLE", -} diff --git a/Telemac/artemis_dicoCasFrToCata.py b/Telemac/artemis_dicoCasFrToCata.py deleted file mode 100644 index 0eba241b..00000000 --- a/Telemac/artemis_dicoCasFrToCata.py +++ /dev/null @@ -1,278 +0,0 @@ -dicoCataToFrTelemac = { - "GEOMETRY_FILE" : "FICHIER DE GEOMETRIE", - "RESULTS_FILE_BINARY" : "BINAIRE DU FICHIER DES RESULTATS", - "TITLE" : "TITRE", - "DEBUGGER" : "DEBUGGER", - "VECTOR_LENGTH" : "LONGUEUR DU VECTEUR", - "LAW_OF_BOTTOM_FRICTION" : "LOI DE FROTTEMENT SUR LE FOND", - "MATRIX_STORAGE" : "STOCKAGE DES MATRICES", - "MATRIX_VECTOR_PRODUCT" : "PRODUIT MATRICE-VECTEUR", - "USER_CRAY" : "USER CRAY", - "GRAPHIC_PRINTOUT_PERIOD" : "PERIODE DE SORTIE GRAPHIQUE", - "LISTING_PRINTOUT_PERIOD" : "PERIODE DE SORTIE LISTING", - "MAXIMUM_NUMBER_OF_ITERATIONS_FOR_SOLVER" : "MAXIMUM D'ITERATIONS POUR LE SOLVEUR", - "NUMBER_OF_PERIODS" : "NOMBRE DE PERIODES DE DISCRETISATION", - "BOTTOM_TOPOGRAPHY_SMOOTHING" : "LISSAGES DU FOND", - "INITIAL_WATER_LEVEL" : "COTE INITIALE", - "PRECONDITIONING" : "PRECONDITIONNEMENT", - "SOLVER" : "SOLVEUR", - "SOLVER_OPTION" : "OPTION DU SOLVEUR", - "GEOMETRY_FILE_STANDARD" : "STANDARD DU FICHIER DE GEOMETRIE", - "RESULTS_FILE_STANDARD" : "STANDARD DU FICHIER DES RESULTATS", - "PEAK_PERIOD" : "PERIODE DE PIC", - "GAMMA" : "GAMMA", - "MONODIRECTIONAL_RANDOM_WAVE" : "HOULE ALEATOIRE MONODIRECTIONNELLE", - "MULTIDIRECTIONAL_RANDOM_WAVE" : "HOULE ALEATOIRE MULTIDIRECTIONNELLE", - "PERIOD_SCANNING" : "BALAYAGE EN PERIODE", - "SOLVER_ACCURACY" : "PRECISION DU SOLVEUR", - "MINIMUM_VALUE_FOR_H" : "VALEUR MINIMUM DE H", - "INITIAL_DEPTH" : "HAUTEUR INITIALE", - "WAVE_PERIOD" : "PERIODE DE LA HOULE", - "GRAVITY_ACCELERATION" : "ACCELERATION DE LA PESANTEUR", - "INITIAL_CONDITIONS" : "CONDITIONS INITIALES", - "RELAXATION_COEFFICIENT" : "COEFFICIENT DE RELAXATION", - "DISCRETIZATION_IN_SPACE" : "DISCRETISATION EN ESPACE", - "NUMBER_OF_DIRECTIONS" : "NOMBRE DE DIRECTIONS DE DISCRETISATION", - "DIRECTION_OF_WAVE_PROPAGATION" : "DIRECTION DE PROPAGATION DE LA HOULE", - "ZERO" : "ZERO", - "BEGINNING_PERIOD_FOR_PERIOD_SCANNING" : "PERIODE DE DEBUT POUR LE BALAYAGE EN PERIODE", - "ENDING_PERIOD_FOR_PERIOD_SCANNING" : "PERIODE DE FIN POUR LE BALAYAGE EN PERIODE", - "STEP_FOR_PERIOD_SCANNING" : "PAS POUR LE BALAYAGE EN PERIODE", - "MINIMUM_ANGLE_OF_PROPAGATION" : "ANGLE MINIMUM DE PROPAGATION", - "MAXIMUM_ANGLE_OF_PROPAGATION" : "ANGLE MAXIMUM DE PROPAGATION", - "S_EXPONENT" : "EXPOSANT S", - "LISTING_PRINTOUT" : "SORTIE LISTING", - "INFORMATIONS_ABOUT_SOLVER" : "INFORMATIONS SUR LE SOLVEUR", - "VARIABLES_FOR_GRAPHIC_PRINTOUTS" : "VARIABLES POUR LES SORTIES GRAPHIQUES", - "VARIABLES_TO_BE_PRINTED" : "VARIABLES A IMPRIMER", - "FORTRAN_FILE" : "FICHIER FORTRAN", - "STEERING_FILE" : "FICHIER DES PARAMETRES", - "BOUNDARY_CONDITIONS_FILE" : "FICHIER DES CONDITIONS AUX LIMITES", - "RESULTS_FILE" : "FICHIER DES RESULTATS", - "RELEASE" : "NUMERO DE VERSION", - "PASSWORD" : "MOT DE PASSE CRAY", - "LIBRARIES" : "BIBLIOTHEQUES", - "CPU_TIME" : "TEMPS MACHINE CRAY", - "MEMORY_SPACE" : "PLACE MEMOIRE CRAY", - "BOTTOM_TOPOGRAPHY_FILE" : "FICHIER DES FONDS", - "TOMAWAC_DATA_FILE_1" : "FICHIER DE DONNEES TOMAWAC 1", - "BINARY_DATA_FILE_1" : "FICHIER DE DONNEES BINAIRE 1", - "BINARY_DATA_FILE_2" : "FICHIER DE DONNEES BINAIRE 2", - "FORMATTED_DATA_FILE_1" : "FICHIER DE DONNEES FORMATE 1", - "FORMATTED_DATA_FILE_2" : "FICHIER DE DONNEES FORMATE 2", - "BINARY_RESULTS_FILE" : "FICHIER DES RESULTATS BINAIRE", - "FORMATTED_RESULTS_FILE" : "FICHIER DES RESULTATS FORMATE", - "PRIORITY" : "PRIORITE", - "BIDON_STRING" : "CHAINE BIDON", - "GEOMETRY_FILE_BINARY" : "BINAIRE DU FICHIER DE GEOMETRIE", - "SUB_ITERATIONS_ACCURACY_FOR_DISSIPATION" : "PRECISION SUR LES SOUS-ITERATIONS POUR LA DISSIPATION", - "SUB_ITERATIONS_ACCURACY_FOR_CURRENT" : "PRECISION SUR LES SOUS-ITERATIONS POUR COURANT", - "SUB_ITERATIONS_ACCURACY_FOR_TETAP" : "PRECISION SUR LES SOUS-ITERATIONS POUR TETAP", - "BREAKING" : "DEFERLEMENT", - "CURRENT" : "COURANT", - "AUTOMATIC_TETAP_CALCULATION" : "CALCUL AUTOMATIQUE DE TETAP", - "AUTOMATIC_CALCULATION_OF_PHASE" : "CALCUL AUTOMATIQUE DE LA PHASE", - "REFERENCE_WATER_DEPTH_FOR_AUTOMATIC_PHASE" : "PROFONDEUR DE REFERENCE POUR LA PHASE AUTOMATIQUE", - "PHASE_REFERENCE_COORDINATES" : "COORDONNEES DE REFERENCE POUR LA PHASE", - "KDALLY" : "KDALLY", - "BREAKING_LAW" : "FORMULATION DU DEFERLEMENT", - "MAXIMUM_OF_SUB_ITERATIONS" : "MAXIMUM DE SOUS-ITERATIONS", - "DISSIPATION_RELAXATION" : "RELAXATION SUR LA DISSIPATION", - "MAXIMUM_OF_SUB_ITERATIONS_FOR_TETAP" : "MAXIMUM DE SOUS-ITERATIONS POUR TETAP", - "RELAXATION_ON_TETAP" : "RELAXATION SUR TETAP", - "CHAINING_TOMAWAC_1" : "CHAINAGE TOMAWAC 1", - "NUMBER_OF_DIRECTIONS_IN_TOMAWAC_SPECTRUM" : "NOMBRE DE DIRECTION DANS LE SPECTRE TOMAWAC", - "NUMBER_OF_FREQUENCIES_IN_TOMAWAC_SPECTRUM" : "NOMBRE DE FREQUENCES DANS LE SPECTRE TOMAWAC", - "INSTANT_FOR_READING_TOMAWAC_SPECTRUM" : "INSTANT DE LECTURE DU SPECTRE TOMAWAC", - "ALPHA" : "ALPHA", - "GAMMAS" : "GAMMAS", - "GDALLY" : "GDALLY", - "FRICTION" : "FROTTEMENT", - "FLUID_KINEMATIC_VISCOSITY" : "VISCOSITE CINEMATIQUE DU FLUIDE", - "DIAMETER90" : "DIAMETRE90", - "DIAMETER50" : "DIAMETRE50", - "SEDIMENT_SPECIFIC_WEIGHT" : "MASSE VOLUMIQUE DU SEDIMENT", - "FLUID_SPECIFIC_MASS" : "MASSE VOLUMIQUE DU FLUIDE", - "HYDRAULIC_REGIME_IMPOSED" : "REGIME HYDRAULIQUE IMPOSE", - "SKIN_ROUGHNESS_ONLY" : "RUGOSITE DE PEAU SEULE", - "WAVE_HEIGHTS_SMOOTHING" : "LISSAGE DES HAUTEURS DE HOULE", - "VALIDATION" : "VALIDATION", - "HYDRAULIC_REGIME_TYPE" : "TYPE DU REGIME HYDRAULIQUE", - "BOTTOM_FRICTION_LAW" : "FORMULATION DU FROTTEMENT DE FOND", - "FRICTION_FACTOR_IMPOSED" : "FACTEUR DE FROTTEMENT IMPOSE", - "FRICTION_FACTOR" : "FACTEUR DE FROTTEMENT", - "FRICTION_COEFFICIENT" : "COEFFICIENT DE FROTTEMENT", - "RIPPLES_COEFFICIENT" : "COEFFICIENT DE RIDES", - "ACCOUNT_NUMBER" : "NUMERO DE COMPTE", - "MINIMUM_SPECTRAL_PERIOD" : "PERIODE MINIMUM DU SPECTRE", - "MAXIMUM_SPECTRAL_PERIOD" : "PERIODE MAXIMUM DU SPECTRE", - "ORIGINAL_DATE_OF_TIME" : "DATE DE L'ORIGINE DES TEMPS", - "ORIGINAL_HOUR_OF_TIME" : "HEURE DE L'ORIGINE DES TEMPS", - "NUMBER_OF_PRIVATE_VARIABLES" : "NOMBRE DE VARIABLES PRIVEES", - "PARALLEL_PROCESSORS" : "PROCESSEURS PARALLELES", - "PARTITIONING_TOOL" : "PARTITIONNEUR", - "ORIGIN_COORDINATES" : "COORDONNEES DE L'ORIGINE", - "REFERENCE_FILE" : "FICHIER DE REFERENCE", - "GEOMETRY_FILE_FORMAT" : "FORMAT DU FICHIER DE GEOMETRIE", - "RESULTS_FILE_FORMAT" : "FORMAT DU FICHIER DE RESULTATS", - "REFERENCE_FILE_FORMAT" : "FORMAT DU FICHIER DE REFERENCE", - "TOMAWAC_DATA_FILE_1_FORMAT" : "FORMAT DU FICHIER DE DONNEES TOMAWAC 1", - "BINARY_DATA_FILE_1_FORMAT" : "FORMAT DU FICHIER DE DONNEES BINAIRE 1", - "BINARY_DATA_FILE_2_FORMAT" : "FORMAT DU FICHIER DE DONNEES BINAIRE 2", - "RAPIDLY_VARYING_TOPOGRAPHY" : "VARIATION RAPIDE DE LA BATHYMETRIE", - "CHECKING_THE_MESH" : "VERIFICATION DU MAILLAGE", - "FREE_SURFACE_ANIMATION" : "ANIMATION DE LA SURFACE LIBRE", - "AMPLITUDE_AND_PHASE_FILE" : "FICHIER DES PHASES ET AMPLITUDES", - "AMPLITUDE_AND_PHASE_FILE_FORMAT" : "FORMAT DU FICHIER DES PHASES ET AMPLITUDES", - "FREE_SURFACE_FILE" : "FICHIER DE SURFACE LIBRE", - "FREE_SURFACE_FILE_FORMAT" : "FORMAT DU FICHIER DE SURFACE LIBRE", - "FIRST_TIME_IN_THE_FREE_SURFACE_FILE" : "PREMIER TEMPS DANS LE FICHIER DE SURFACE LIBRE", - "TIME_STEP" : "PAS DE TEMPS", - "NUMBER_OF_TIME_STEPS" : "NOMBRE DE PAS DE TEMPS", - "DICTIONARY" : "DICTIONNAIRE", - "LIST_OF_FILES" : "LISTE DES FICHIERS", - "AD_NUMBER_OF_DERIVATIVES" : "AD NOMBRE DE DERIVEES", - "AD_NAMES_OF_DERIVATIVES" : "AD NOMS DES DERIVEES", - "DESCRIPTION_DES_LIBRARIES" : "DESCRIPTION DES LIBRAIRIES", - "DEFAULT_EXECUTABLE" : "EXECUTABLE PAR DEFAUT", - "DEFAULT_PARALLEL_EXECUTABLE" : "EXECUTABLE PARALLELE PAR DEFAUT", -} -dicoCasFrToCata = { - "FICHIER DE GEOMETRIE" : "GEOMETRY_FILE", - "BINAIRE DU FICHIER DES RESULTATS" : "RESULTS_FILE_BINARY", - "TITRE" : "TITLE", - "DEBUGGER" : "DEBUGGER", - "LONGUEUR DU VECTEUR" : "VECTOR_LENGTH", - "LOI DE FROTTEMENT SUR LE FOND" : "LAW_OF_BOTTOM_FRICTION", - "STOCKAGE DES MATRICES" : "MATRIX_STORAGE", - "PRODUIT MATRICE-VECTEUR" : "MATRIX_VECTOR_PRODUCT", - "USER CRAY" : "USER_CRAY", - "PERIODE DE SORTIE GRAPHIQUE" : "GRAPHIC_PRINTOUT_PERIOD", - "PERIODE DE SORTIE LISTING" : "LISTING_PRINTOUT_PERIOD", - "MAXIMUM D'ITERATIONS POUR LE SOLVEUR" : "MAXIMUM_NUMBER_OF_ITERATIONS_FOR_SOLVER", - "NOMBRE DE PERIODES DE DISCRETISATION" : "NUMBER_OF_PERIODS", - "LISSAGES DU FOND" : "BOTTOM_TOPOGRAPHY_SMOOTHING", - "COTE INITIALE" : "INITIAL_WATER_LEVEL", - "PRECONDITIONNEMENT" : "PRECONDITIONING", - "SOLVEUR" : "SOLVER", - "OPTION DU SOLVEUR" : "SOLVER_OPTION", - "STANDARD DU FICHIER DE GEOMETRIE" : "GEOMETRY_FILE_STANDARD", - "STANDARD DU FICHIER DES RESULTATS" : "RESULTS_FILE_STANDARD", - "PERIODE DE PIC" : "PEAK_PERIOD", - "GAMMA" : "GAMMA", - "HOULE ALEATOIRE MONODIRECTIONNELLE" : "MONODIRECTIONAL_RANDOM_WAVE", - "HOULE ALEATOIRE MULTIDIRECTIONNELLE" : "MULTIDIRECTIONAL_RANDOM_WAVE", - "BALAYAGE EN PERIODE" : "PERIOD_SCANNING", - "PRECISION DU SOLVEUR" : "SOLVER_ACCURACY", - "VALEUR MINIMUM DE H" : "MINIMUM_VALUE_FOR_H", - "HAUTEUR INITIALE" : "INITIAL_DEPTH", - "PERIODE DE LA HOULE" : "WAVE_PERIOD", - "ACCELERATION DE LA PESANTEUR" : "GRAVITY_ACCELERATION", - "CONDITIONS INITIALES" : "INITIAL_CONDITIONS", - "COEFFICIENT DE RELAXATION" : "RELAXATION_COEFFICIENT", - "DISCRETISATION EN ESPACE" : "DISCRETIZATION_IN_SPACE", - "NOMBRE DE DIRECTIONS DE DISCRETISATION" : "NUMBER_OF_DIRECTIONS", - "DIRECTION DE PROPAGATION DE LA HOULE" : "DIRECTION_OF_WAVE_PROPAGATION", - "ZERO" : "ZERO", - "PERIODE DE DEBUT POUR LE BALAYAGE EN PERIODE" : "BEGINNING_PERIOD_FOR_PERIOD_SCANNING", - "PERIODE DE FIN POUR LE BALAYAGE EN PERIODE" : "ENDING_PERIOD_FOR_PERIOD_SCANNING", - "PAS POUR LE BALAYAGE EN PERIODE" : "STEP_FOR_PERIOD_SCANNING", - "ANGLE MINIMUM DE PROPAGATION" : "MINIMUM_ANGLE_OF_PROPAGATION", - "ANGLE MAXIMUM DE PROPAGATION" : "MAXIMUM_ANGLE_OF_PROPAGATION", - "EXPOSANT S" : "S_EXPONENT", - "SORTIE LISTING" : "LISTING_PRINTOUT", - "INFORMATIONS SUR LE SOLVEUR" : "INFORMATIONS_ABOUT_SOLVER", - "VARIABLES POUR LES SORTIES GRAPHIQUES" : "VARIABLES_FOR_GRAPHIC_PRINTOUTS", - "VARIABLES A IMPRIMER" : "VARIABLES_TO_BE_PRINTED", - "FICHIER FORTRAN" : "FORTRAN_FILE", - "FICHIER DES PARAMETRES" : "STEERING_FILE", - "FICHIER DES CONDITIONS AUX LIMITES" : "BOUNDARY_CONDITIONS_FILE", - "FICHIER DES RESULTATS" : "RESULTS_FILE", - "NUMERO DE VERSION" : "RELEASE", - "MOT DE PASSE CRAY" : "PASSWORD", - "BIBLIOTHEQUES" : "LIBRARIES", - "TEMPS MACHINE CRAY" : "CPU_TIME", - "PLACE MEMOIRE CRAY" : "MEMORY_SPACE", - "FICHIER DES FONDS" : "BOTTOM_TOPOGRAPHY_FILE", - "FICHIER DE DONNEES TOMAWAC 1" : "TOMAWAC_DATA_FILE_1", - "FICHIER DE DONNEES BINAIRE 1" : "BINARY_DATA_FILE_1", - "FICHIER DE DONNEES BINAIRE 2" : "BINARY_DATA_FILE_2", - "FICHIER DE DONNEES FORMATE 1" : "FORMATTED_DATA_FILE_1", - "FICHIER DE DONNEES FORMATE 2" : "FORMATTED_DATA_FILE_2", - "FICHIER DES RESULTATS BINAIRE" : "BINARY_RESULTS_FILE", - "FICHIER DES RESULTATS FORMATE" : "FORMATTED_RESULTS_FILE", - "PRIORITE" : "PRIORITY", - "CHAINE BIDON" : "BIDON_STRING", - "BINAIRE DU FICHIER DE GEOMETRIE" : "GEOMETRY_FILE_BINARY", - "PRECISION SUR LES SOUS-ITERATIONS POUR LA DISSIPATION" : "SUB_ITERATIONS_ACCURACY_FOR_DISSIPATION", - "PRECISION SUR LES SOUS-ITERATIONS POUR COURANT" : "SUB_ITERATIONS_ACCURACY_FOR_CURRENT", - "PRECISION SUR LES SOUS-ITERATIONS POUR TETAP" : "SUB_ITERATIONS_ACCURACY_FOR_TETAP", - "DEFERLEMENT" : "BREAKING", - "COURANT" : "CURRENT", - "CALCUL AUTOMATIQUE DE TETAP" : "AUTOMATIC_TETAP_CALCULATION", - "CALCUL AUTOMATIQUE DE LA PHASE" : "AUTOMATIC_CALCULATION_OF_PHASE", - "PROFONDEUR DE REFERENCE POUR LA PHASE AUTOMATIQUE" : "REFERENCE_WATER_DEPTH_FOR_AUTOMATIC_PHASE", - "COORDONNEES DE REFERENCE POUR LA PHASE" : "PHASE_REFERENCE_COORDINATES", - "KDALLY" : "KDALLY", - "FORMULATION DU DEFERLEMENT" : "BREAKING_LAW", - "MAXIMUM DE SOUS-ITERATIONS" : "MAXIMUM_OF_SUB_ITERATIONS", - "RELAXATION SUR LA DISSIPATION" : "DISSIPATION_RELAXATION", - "MAXIMUM DE SOUS-ITERATIONS POUR TETAP" : "MAXIMUM_OF_SUB_ITERATIONS_FOR_TETAP", - "RELAXATION SUR TETAP" : "RELAXATION_ON_TETAP", - "CHAINAGE TOMAWAC 1" : "CHAINING_TOMAWAC_1", - "NOMBRE DE DIRECTION DANS LE SPECTRE TOMAWAC" : "NUMBER_OF_DIRECTIONS_IN_TOMAWAC_SPECTRUM", - "NOMBRE DE FREQUENCES DANS LE SPECTRE TOMAWAC" : "NUMBER_OF_FREQUENCIES_IN_TOMAWAC_SPECTRUM", - "INSTANT DE LECTURE DU SPECTRE TOMAWAC" : "INSTANT_FOR_READING_TOMAWAC_SPECTRUM", - "ALPHA" : "ALPHA", - "GAMMAS" : "GAMMAS", - "GDALLY" : "GDALLY", - "FROTTEMENT" : "FRICTION", - "VISCOSITE CINEMATIQUE DU FLUIDE" : "FLUID_KINEMATIC_VISCOSITY", - "DIAMETRE90" : "DIAMETER90", - "DIAMETRE50" : "DIAMETER50", - "MASSE VOLUMIQUE DU SEDIMENT" : "SEDIMENT_SPECIFIC_WEIGHT", - "MASSE VOLUMIQUE DU FLUIDE" : "FLUID_SPECIFIC_MASS", - "REGIME HYDRAULIQUE IMPOSE" : "HYDRAULIC_REGIME_IMPOSED", - "RUGOSITE DE PEAU SEULE" : "SKIN_ROUGHNESS_ONLY", - "LISSAGE DES HAUTEURS DE HOULE" : "WAVE_HEIGHTS_SMOOTHING", - "VALIDATION" : "VALIDATION", - "TYPE DU REGIME HYDRAULIQUE" : "HYDRAULIC_REGIME_TYPE", - "FORMULATION DU FROTTEMENT DE FOND" : "BOTTOM_FRICTION_LAW", - "FACTEUR DE FROTTEMENT IMPOSE" : "FRICTION_FACTOR_IMPOSED", - "FACTEUR DE FROTTEMENT" : "FRICTION_FACTOR", - "COEFFICIENT DE FROTTEMENT" : "FRICTION_COEFFICIENT", - "COEFFICIENT DE RIDES" : "RIPPLES_COEFFICIENT", - "NUMERO DE COMPTE" : "ACCOUNT_NUMBER", - "PERIODE MINIMUM DU SPECTRE" : "MINIMUM_SPECTRAL_PERIOD", - "PERIODE MAXIMUM DU SPECTRE" : "MAXIMUM_SPECTRAL_PERIOD", - "DATE DE L'ORIGINE DES TEMPS" : "ORIGINAL_DATE_OF_TIME", - "HEURE DE L'ORIGINE DES TEMPS" : "ORIGINAL_HOUR_OF_TIME", - "NOMBRE DE VARIABLES PRIVEES" : "NUMBER_OF_PRIVATE_VARIABLES", - "PROCESSEURS PARALLELES" : "PARALLEL_PROCESSORS", - "PARTITIONNEUR" : "PARTITIONING_TOOL", - "COORDONNEES DE L'ORIGINE" : "ORIGIN_COORDINATES", - "FICHIER DE REFERENCE" : "REFERENCE_FILE", - "FORMAT DU FICHIER DE GEOMETRIE" : "GEOMETRY_FILE_FORMAT", - "FORMAT DU FICHIER DE RESULTATS" : "RESULTS_FILE_FORMAT", - "FORMAT DU FICHIER DE REFERENCE" : "REFERENCE_FILE_FORMAT", - "FORMAT DU FICHIER DE DONNEES TOMAWAC 1" : "TOMAWAC_DATA_FILE_1_FORMAT", - "FORMAT DU FICHIER DE DONNEES BINAIRE 1" : "BINARY_DATA_FILE_1_FORMAT", - "FORMAT DU FICHIER DE DONNEES BINAIRE 2" : "BINARY_DATA_FILE_2_FORMAT", - "VARIATION RAPIDE DE LA BATHYMETRIE" : "RAPIDLY_VARYING_TOPOGRAPHY", - "VERIFICATION DU MAILLAGE" : "CHECKING_THE_MESH", - "ANIMATION DE LA SURFACE LIBRE" : "FREE_SURFACE_ANIMATION", - "FICHIER DES PHASES ET AMPLITUDES" : "AMPLITUDE_AND_PHASE_FILE", - "FORMAT DU FICHIER DES PHASES ET AMPLITUDES" : "AMPLITUDE_AND_PHASE_FILE_FORMAT", - "FICHIER DE SURFACE LIBRE" : "FREE_SURFACE_FILE", - "FORMAT DU FICHIER DE SURFACE LIBRE" : "FREE_SURFACE_FILE_FORMAT", - "PREMIER TEMPS DANS LE FICHIER DE SURFACE LIBRE" : "FIRST_TIME_IN_THE_FREE_SURFACE_FILE", - "PAS DE TEMPS" : "TIME_STEP", - "NOMBRE DE PAS DE TEMPS" : "NUMBER_OF_TIME_STEPS", - "DICTIONNAIRE" : "DICTIONARY", - "LISTE DES FICHIERS" : "LIST_OF_FILES", - "AD NOMBRE DE DERIVEES" : "AD_NUMBER_OF_DERIVATIVES", - "AD NOMS DES DERIVEES" : "AD_NAMES_OF_DERIVATIVES", - "DESCRIPTION DES LIBRAIRIES" : "DESCRIPTION_DES_LIBRARIES", - "EXECUTABLE PAR DEFAUT" : "DEFAULT_EXECUTABLE", - "EXECUTABLE PARALLELE PAR DEFAUT" : "DEFAULT_PARALLEL_EXECUTABLE", -} diff --git a/Telemac/artemis_enum_auto.py b/Telemac/artemis_enum_auto.py deleted file mode 100644 index e6bdec22..00000000 --- a/Telemac/artemis_enum_auto.py +++ /dev/null @@ -1,575 +0,0 @@ -#/usr/bin/env python -# -*- coding: latin-1 -*- -TelemacdicoEn = { -'PRECONDITIONING' : { - 0:"no preconditioning", - 2:"diagonal preconditioning", - 3:"block-diagonal preconditioning", - 5:"absolute value diagonal preconditioning", - 7:"Crout preconditioning", - }, -'SOLVER' : { - 1:"conjugate gradient", - 2:"conjugate residual", - 3:"conjugate gradient on a normal equation", - 4:"minimum error", - 5:"squared conjugate gradient", - 6:"CGSTAB", - 7:"GMRES", - 8:"direct", - }, -'GEOMETRY_FILE_STANDARD' : { - 1:"LEONARD", - 2:"RUBENS", - 3:"SELAFIN", - }, -'RESULTS_FILE_STANDARD' : { - 1:"LEONARD", - 2:"RUBENS", - 3:"SELAFIN", - }, -'GAMMA' : { - 1.0:"Pierson-Moskowitz", - 3.3:"JONSWAP moyen", - 0.0:"any spectre", - }, -'VARIABLES_FOR_GRAPHIC_PRINTOUTS' : { - 'HS':"wave height", - 'PHAS':"wave phase", - 'U0':"velocity u (free surface)(t=0)", - 'V0':"velocity v (free surface)(t=0)", - 'ZS':"free surface elevation (t=0)", - 'ZF':"bottom elevation", - 'HW':"still water height", - 'C':"phase velocity", - 'CG':"group velocity", - 'K':"wave number", - 'PHIR':"real potential", - 'PHII':"imaginal potential", - 'D':"prive(1,1)", - 'E':"prive(1,2)", - 'F':"prive(1,3)", - 'G':"prive(1,4)", - 'T01':"first mean spectral period", - 'T02':"second mean spectral period", - 'TM':"third mean spectral period", - 'FX':"force along X", - 'FY':"force along Y", - 'INC':"wave incidence radian", - 'QB':"breaking rate", - 'SXX':"SXX stress", - 'SXY':"SXY stress", - 'SYY':"SYY stress", - }, -'VARIABLES_TO_BE_PRINTED' : { - 'HS':"wave height", - 'PHAS':"wave phase", - 'U0':"velocity u (free surface)(t=0)", - 'V0':"velocity v (free surface)(t=0)", - 'ZS':"free surface elevation (t=0)", - 'ZF':"bottom elevation", - 'HW':"still water height", - 'C':"phase velocity", - 'CG':"group velocity", - 'K':"wave number", - 'PHIR':"real potential", - 'PHII':"imaginal potential", - 'D':"prive(1,1)", - 'E':"prive(1,2)", - 'F':"prive(1,3)", - 'G':"prive(1,4)", - 'T01':"first mean spectral period", - 'T02':"second mean spectral period", - 'TM':"third mean spectral period", - 'FX':"force along X", - 'FY':"force along Y", - 'INC':"wave incidence radian", - 'QB':"breaking rate", - 'SXX':"SXX stress", - 'SXY':"SXY stress", - 'SYY':"SYY stress", - }, -'BREAKING_LAW' : { - 1:"BATTJES \& JANSSEN", - 2:"DALLY", - }, -'HYDRAULIC_REGIME_TYPE' : { - 1:"regime laminaire", - 2:"regime turbulent lisse", - 3:"regime turbulent rugueux", - 4:"regime transitoire", - }, -'BOTTOM_FRICTION_LAW' : { - 1:"Formulation de Kostense integrant le calcul de Ue (1986)", - 2:"Formulation de Putnam \& Johnson (1949)", - }, -'RAPIDLY_VARYING_TOPOGRAPHY' : { - 0:"BERKHOFF SIMPLE", - 1:"PRISE EN COMPTE TERME DE PENTE", - 2:"PRISE EN COMPTE TERME DE COURBURE", - 3:"PRISE EN COMPTE DES TERMES DE PENTE ET COURBURE", - }, -} -TelemacdicoFr = { -'PRECONDITIONING' : { - 0:"pas de preconditionnement", - 2:"preconditionnement diagonal", - 3:"preconditionnement bloc-diagonal", - 5:"preconditionnement diagonal en valeur absolue", - 7:"preconditionnement de Crout par element", - }, -'SOLVER' : { - 1:"gradient conjugue", - 2:"residu conjugue", - 3:"gradient conjugue sur equation normale", - 4:"erreur minimale", - 5:"gradient conjugue carre (non programme)", - 6:"CGSTAB", - 7:"GMRES", - 8:"direct", - }, -'GEOMETRY_FILE_STANDARD' : { - 1:"LEONARD", - 2:"RUBENS", - 3:"SELAFIN", - }, -'RESULTS_FILE_STANDARD' : { - 1:"LEONARD", - 2:"RUBENS", - 3:"SELAFIN", - }, -'GAMMA' : { - 1.0:" spectre de Pierson-Moskowitz", - 3.3:" spectre de JONSWAP moyen", - 0.0:" spectre au choix", - }, -'VARIABLES_FOR_GRAPHIC_PRINTOUTS' : { - 'HS':"hauteur de la houle", - 'PHAS':"phase de la houle", - 'U0':"vitesse u en surface a t=0", - 'V0':"vitesse v en surface a t=0", - 'ZS':"cote de la surface libre", - 'ZF':"fond", - 'HW':"hauteur d eau au repos", - 'C':"vitesse de phase", - 'CG':"vitesse de groupe", - 'K':"nombre d onde", - 'PHIR':"potentiel reel", - 'PHII':"potentiel imaginaire", - 'D':"prive(1,1)", - 'E':"prive(1,2)", - 'F':"prive(1,3)", - 'G':"prive(1,4)", - 'T01':"premiere periode moyenne spectrale", - 'T02':"deuxieme periode moyenne spectrale", - 'TM':"troisieme periode moyenne spectrale", - 'FX':"force en X", - 'FY':"force en Y", - 'INC':"incidence de la houle", - 'QB':"taux de deferlement", - 'SXX':"contrainte SXX", - 'SXY':"contrainte SXY", - 'SYY':"contrainte SYY", - }, -'VARIABLES_TO_BE_PRINTED' : { - 'HS':"hauteur de la houle", - 'PHAS':"phase de la houle", - 'U0':"vitesse u en surface a t=0", - 'V0':"vitesse v en surface a t=0", - 'ZS':"cote de la surface libre", - 'ZF':"fond", - 'HW':"hauteur d eau au repos", - 'C':"vitesse de phase", - 'CG':"vitesse de groupe", - 'K':"nombre d onde", - 'PHIR':"potentiel reel", - 'PHII':"potentiel imaginaire", - 'D':"prive(1,1)", - 'E':"prive(1,2)", - 'F':"prive(1,3)", - 'G':"prive(1,4)", - 'T01':"premiere periode moyenne spectrale", - 'T02':"deuxieme periode moyenne spectrale", - 'TM':"troisieme periode moyenne spectrale", - 'FX':"force en X", - 'FY':"force en Y", - 'INC':"incidence de la houle", - 'QB':"taux de deferlement", - 'SXX':"contrainte SXX", - 'SXY':"contrainte SXY", - 'SYY':"contrainte SYY", - }, -'BREAKING_LAW' : { - 1:"BATTJES \& JANSSEN", - 2:"DALLY", - }, -'HYDRAULIC_REGIME_TYPE' : { - 1:"regime laminaire", - 2:"regime turbulent lisse", - 3:"regime turbulent rugueux", - 4:"regime transitoire", - }, -'BOTTOM_FRICTION_LAW' : { - 1:"Formulation de Kostense integrant le calcul de Ue (1986)", - 2:"Formulation de Putnam \& Johnson (1949)", - }, -'RAPIDLY_VARYING_TOPOGRAPHY' : { - 0:"BERKHOFF SIMPLE", - 1:"PRISE EN COMPTE TERME DE PENTE", - 2:"PRISE EN COMPTE TERME DE COURBURE", - 3:"PRISE EN COMPTE DES TERMES DE PENTE ET COURBURE", - }, -} - -DicoCasFrToCata = { - "FICHIER DE GEOMETRIE":"GEOMETRY_FILE", - "BINAIRE DU FICHIER DES RESULTATS":"RESULTS_FILE_BINARY", - "TITRE":"TITLE", - "DEBUGGER":"DEBUGGER", - "LONGUEUR DU VECTEUR":"VECTOR_LENGTH", - "LOI DE FROTTEMENT SUR LE FOND":"LAW_OF_BOTTOM_FRICTION", - "STOCKAGE DES MATRICES":"MATRIX_STORAGE", - "PRODUIT MATRICE-VECTEUR":"MATRIX_VECTOR_PRODUCT", - "USER CRAY":"USER_CRAY", - "PERIODE DE SORTIE GRAPHIQUE":"GRAPHIC_PRINTOUT_PERIOD", - "PERIODE DE SORTIE LISTING":"LISTING_PRINTOUT_PERIOD", - "MAXIMUM D'ITERATIONS POUR LE SOLVEUR":"MAXIMUM_NUMBER_OF_ITERATIONS_FOR_SOLVER", - "NOMBRE DE PERIODES DE DISCRETISATION":"NUMBER_OF_PERIODS", - "LISSAGES DU FOND":"BOTTOM_TOPOGRAPHY_SMOOTHING", - "COTE INITIALE":"INITIAL_WATER_LEVEL", - "PRECONDITIONNEMENT":"PRECONDITIONING", - "SOLVEUR":"SOLVER", - "OPTION DU SOLVEUR":"SOLVER_OPTION", - "STANDARD DU FICHIER DE GEOMETRIE":"GEOMETRY_FILE_STANDARD", - "STANDARD DU FICHIER DES RESULTATS":"RESULTS_FILE_STANDARD", - "PERIODE DE PIC":"PEAK_PERIOD", - "GAMMA":"GAMMA", - "HOULE ALEATOIRE MONODIRECTIONNELLE":"MONODIRECTIONAL_RANDOM_WAVE", - "HOULE ALEATOIRE MULTIDIRECTIONNELLE":"MULTIDIRECTIONAL_RANDOM_WAVE", - "BALAYAGE EN PERIODE":"PERIOD_SCANNING", - "PRECISION DU SOLVEUR":"SOLVER_ACCURACY", - "VALEUR MINIMUM DE H":"MINIMUM_VALUE_FOR_H", - "HAUTEUR INITIALE":"INITIAL_DEPTH", - "PERIODE DE LA HOULE":"WAVE_PERIOD", - "ACCELERATION DE LA PESANTEUR":"GRAVITY_ACCELERATION", - "CONDITIONS INITIALES":"INITIAL_CONDITIONS", - "COEFFICIENT DE RELAXATION":"RELAXATION_COEFFICIENT", - "DISCRETISATION EN ESPACE":"DISCRETIZATION_IN_SPACE", - "NOMBRE DE DIRECTIONS DE DISCRETISATION":"NUMBER_OF_DIRECTIONS", - "DIRECTION DE PROPAGATION DE LA HOULE":"DIRECTION_OF_WAVE_PROPAGATION", - "ZERO":"ZERO", - "PERIODE DE DEBUT POUR LE BALAYAGE EN PERIODE":"BEGINNING_PERIOD_FOR_PERIOD_SCANNING", - "PERIODE DE FIN POUR LE BALAYAGE EN PERIODE":"ENDING_PERIOD_FOR_PERIOD_SCANNING", - "PAS POUR LE BALAYAGE EN PERIODE":"STEP_FOR_PERIOD_SCANNING", - "ANGLE MINIMUM DE PROPAGATION":"MINIMUM_ANGLE_OF_PROPAGATION", - "ANGLE MAXIMUM DE PROPAGATION":"MAXIMUM_ANGLE_OF_PROPAGATION", - "EXPOSANT S":"S_EXPONENT", - "SORTIE LISTING":"LISTING_PRINTOUT", - "INFORMATIONS SUR LE SOLVEUR":"INFORMATIONS_ABOUT_SOLVER", - "VARIABLES POUR LES SORTIES GRAPHIQUES":"VARIABLES_FOR_GRAPHIC_PRINTOUTS", - "VARIABLES A IMPRIMER":"VARIABLES_TO_BE_PRINTED", - "FICHIER FORTRAN":"FORTRAN_FILE", - "FICHIER DES PARAMETRES":"STEERING_FILE", - "FICHIER DES CONDITIONS AUX LIMITES":"BOUNDARY_CONDITIONS_FILE", - "FICHIER DES RESULTATS":"RESULTS_FILE", - "NUMERO DE VERSION":"RELEASE", - "MOT DE PASSE CRAY":"PASSWORD", - "BIBLIOTHEQUES":"LIBRARIES", - "TEMPS MACHINE CRAY":"CPU_TIME", - "PLACE MEMOIRE CRAY":"MEMORY_SPACE", - "FICHIER DES FONDS":"BOTTOM_TOPOGRAPHY_FILE", - "FICHIER DE DONNEES TOMAWAC 1":"TOMAWAC_DATA_FILE_1", - "FICHIER DE DONNEES BINAIRE 1":"BINARY_DATA_FILE_1", - "FICHIER DE DONNEES BINAIRE 2":"BINARY_DATA_FILE_2", - "FICHIER DE DONNEES FORMATE 1":"FORMATTED_DATA_FILE_1", - "FICHIER DE DONNEES FORMATE 2":"FORMATTED_DATA_FILE_2", - "FICHIER DES RESULTATS BINAIRE":"BINARY_RESULTS_FILE", - "FICHIER DES RESULTATS FORMATE":"FORMATTED_RESULTS_FILE", - "PRIORITE":"PRIORITY", - "CHAINE BIDON":"BIDON_STRING", - "BINAIRE DU FICHIER DE GEOMETRIE":"GEOMETRY_FILE_BINARY", - "PRECISION SUR LES SOUS-ITERATIONS POUR LA DISSIPATION":"SUB_ITERATIONS_ACCURACY_FOR_DISSIPATION", - "PRECISION SUR LES SOUS-ITERATIONS POUR COURANT":"SUB_ITERATIONS_ACCURACY_FOR_CURRENT", - "PRECISION SUR LES SOUS-ITERATIONS POUR TETAP":"SUB_ITERATIONS_ACCURACY_FOR_TETAP", - "DEFERLEMENT":"BREAKING", - "COURANT":"CURRENT", - "CALCUL AUTOMATIQUE DE TETAP":"AUTOMATIC_TETAP_CALCULATION", - "CALCUL AUTOMATIQUE DE LA PHASE":"AUTOMATIC_CALCULATION_OF_PHASE", - "PROFONDEUR DE REFERENCE POUR LA PHASE AUTOMATIQUE":"REFERENCE_WATER_DEPTH_FOR_AUTOMATIC_PHASE", - "COORDONNEES DE REFERENCE POUR LA PHASE":"PHASE_REFERENCE_COORDINATES", - "KDALLY":"KDALLY", - "FORMULATION DU DEFERLEMENT":"BREAKING_LAW", - "MAXIMUM DE SOUS-ITERATIONS":"MAXIMUM_OF_SUB_ITERATIONS", - "RELAXATION SUR LA DISSIPATION":"DISSIPATION_RELAXATION", - "MAXIMUM DE SOUS-ITERATIONS POUR TETAP":"MAXIMUM_OF_SUB_ITERATIONS_FOR_TETAP", - "RELAXATION SUR TETAP":"RELAXATION_ON_TETAP", - "CHAINAGE TOMAWAC 1":"CHAINING_TOMAWAC_1", - "NOMBRE DE DIRECTION DANS LE SPECTRE TOMAWAC":"NUMBER_OF_DIRECTIONS_IN_TOMAWAC_SPECTRUM", - "NOMBRE DE FREQUENCES DANS LE SPECTRE TOMAWAC":"NUMBER_OF_FREQUENCIES_IN_TOMAWAC_SPECTRUM", - "INSTANT DE LECTURE DU SPECTRE TOMAWAC":"INSTANT_FOR_READING_TOMAWAC_SPECTRUM", - "ALPHA":"ALPHA", - "GAMMAS":"GAMMAS", - "GDALLY":"GDALLY", - "FROTTEMENT":"FRICTION", - "VISCOSITE CINEMATIQUE DU FLUIDE":"FLUID_KINEMATIC_VISCOSITY", - "DIAMETRE90":"DIAMETER90", - "DIAMETRE50":"DIAMETER50", - "MASSE VOLUMIQUE DU SEDIMENT":"SEDIMENT_SPECIFIC_WEIGHT", - "MASSE VOLUMIQUE DU FLUIDE":"FLUID_SPECIFIC_MASS", - "REGIME HYDRAULIQUE IMPOSE":"HYDRAULIC_REGIME_IMPOSED", - "RUGOSITE DE PEAU SEULE":"SKIN_ROUGHNESS_ONLY", - "LISSAGE DES HAUTEURS DE HOULE":"WAVE_HEIGHTS_SMOOTHING", - "VALIDATION":"VALIDATION", - "TYPE DU REGIME HYDRAULIQUE":"HYDRAULIC_REGIME_TYPE", - "FORMULATION DU FROTTEMENT DE FOND":"BOTTOM_FRICTION_LAW", - "FACTEUR DE FROTTEMENT IMPOSE":"FRICTION_FACTOR_IMPOSED", - "FACTEUR DE FROTTEMENT":"FRICTION_FACTOR", - "COEFFICIENT DE FROTTEMENT":"FRICTION_COEFFICIENT", - "COEFFICIENT DE RIDES":"RIPPLES_COEFFICIENT", - "NUMERO DE COMPTE":"ACCOUNT_NUMBER", - "PERIODE MINIMUM DU SPECTRE":"MINIMUM_SPECTRAL_PERIOD", - "PERIODE MAXIMUM DU SPECTRE":"MAXIMUM_SPECTRAL_PERIOD", - "DATE DE L'ORIGINE DES TEMPS":"ORIGINAL_DATE_OF_TIME", - "HEURE DE L'ORIGINE DES TEMPS":"ORIGINAL_HOUR_OF_TIME", - "NOMBRE DE VARIABLES PRIVEES":"NUMBER_OF_PRIVATE_VARIABLES", - "PROCESSEURS PARALLELES":"PARALLEL_PROCESSORS", - "PARTITIONNEUR":"PARTITIONING_TOOL", - "COORDONNEES DE L'ORIGINE":"ORIGIN_COORDINATES", - "FICHIER DE REFERENCE":"REFERENCE_FILE", - "FORMAT DU FICHIER DE GEOMETRIE":"GEOMETRY_FILE_FORMAT", - "FORMAT DU FICHIER DE RESULTATS":"RESULTS_FILE_FORMAT", - "FORMAT DU FICHIER DE REFERENCE":"REFERENCE_FILE_FORMAT", - "FORMAT DU FICHIER DE DONNEES TOMAWAC 1":"TOMAWAC_DATA_FILE_1_FORMAT", - "FORMAT DU FICHIER DE DONNEES BINAIRE 1":"BINARY_DATA_FILE_1_FORMAT", - "FORMAT DU FICHIER DE DONNEES BINAIRE 2":"BINARY_DATA_FILE_2_FORMAT", - "VARIATION RAPIDE DE LA BATHYMETRIE":"RAPIDLY_VARYING_TOPOGRAPHY", - "VERIFICATION DU MAILLAGE":"CHECKING_THE_MESH", - "ANIMATION DE LA SURFACE LIBRE":"FREE_SURFACE_ANIMATION", - "FICHIER DES PHASES ET AMPLITUDES":"AMPLITUDE_AND_PHASE_FILE", - "FORMAT DU FICHIER DES PHASES ET AMPLITUDES":"AMPLITUDE_AND_PHASE_FILE_FORMAT", - "FICHIER DE SURFACE LIBRE":"FREE_SURFACE_FILE", - "FORMAT DU FICHIER DE SURFACE LIBRE":"FREE_SURFACE_FILE_FORMAT", - "PREMIER TEMPS DANS LE FICHIER DE SURFACE LIBRE":"FIRST_TIME_IN_THE_FREE_SURFACE_FILE", - "PAS DE TEMPS":"TIME_STEP", - "NOMBRE DE PAS DE TEMPS":"NUMBER_OF_TIME_STEPS", - "DICTIONNAIRE":"DICTIONARY", - "LISTE DES FICHIERS":"LIST_OF_FILES", - "AD NOMBRE DE DERIVEES":"AD_NUMBER_OF_DERIVATIVES", - "AD NOMS DES DERIVEES":"AD_NAMES_OF_DERIVATIVES", - "DESCRIPTION DES LIBRAIRIES":"DESCRIPTION_DES_LIBRARIES", - "EXECUTABLE PAR DEFAUT":"DEFAULT_EXECUTABLE", - "EXECUTABLE PARALLELE PAR DEFAUT":"DEFAULT_PARALLEL_EXECUTABLE", -} - -DicoCasEnToCata = { - 'GEOMETRY FILE':'GEOMETRY_FILE', - 'RESULTS FILE BINARY':'RESULTS_FILE_BINARY', - 'TITLE':'TITLE', - 'DEBUGGER':'DEBUGGER', - 'VECTOR LENGTH':'VECTOR_LENGTH', - 'LAW OF BOTTOM FRICTION':'LAW_OF_BOTTOM_FRICTION', - 'MATRIX STORAGE':'MATRIX_STORAGE', - 'MATRIX-VECTOR PRODUCT':'MATRIX_VECTOR_PRODUCT', - 'USER CRAY':'USER_CRAY', - 'GRAPHIC PRINTOUT PERIOD':'GRAPHIC_PRINTOUT_PERIOD', - 'LISTING PRINTOUT PERIOD':'LISTING_PRINTOUT_PERIOD', - 'MAXIMUM NUMBER OF ITERATIONS FOR SOLVER':'MAXIMUM_NUMBER_OF_ITERATIONS_FOR_SOLVER', - 'NUMBER OF PERIODS':'NUMBER_OF_PERIODS', - 'BOTTOM TOPOGRAPHY SMOOTHING':'BOTTOM_TOPOGRAPHY_SMOOTHING', - 'INITIAL WATER LEVEL':'INITIAL_WATER_LEVEL', - 'PRECONDITIONING':'PRECONDITIONING', - 'SOLVER':'SOLVER', - 'SOLVER OPTION':'SOLVER_OPTION', - 'GEOMETRY FILE STANDARD':'GEOMETRY_FILE_STANDARD', - 'RESULTS FILE STANDARD':'RESULTS_FILE_STANDARD', - 'PEAK PERIOD':'PEAK_PERIOD', - 'GAMMA':'GAMMA', - 'MONODIRECTIONAL RANDOM WAVE':'MONODIRECTIONAL_RANDOM_WAVE', - 'MULTIDIRECTIONAL RANDOM WAVE':'MULTIDIRECTIONAL_RANDOM_WAVE', - 'PERIOD SCANNING':'PERIOD_SCANNING', - 'SOLVER ACCURACY':'SOLVER_ACCURACY', - 'MINIMUM VALUE FOR H':'MINIMUM_VALUE_FOR_H', - 'INITIAL DEPTH':'INITIAL_DEPTH', - 'WAVE PERIOD':'WAVE_PERIOD', - 'GRAVITY ACCELERATION':'GRAVITY_ACCELERATION', - 'INITIAL CONDITIONS':'INITIAL_CONDITIONS', - 'RELAXATION COEFFICIENT':'RELAXATION_COEFFICIENT', - 'DISCRETIZATION IN SPACE':'DISCRETIZATION_IN_SPACE', - 'NUMBER OF DIRECTIONS':'NUMBER_OF_DIRECTIONS', - 'DIRECTION OF WAVE PROPAGATION':'DIRECTION_OF_WAVE_PROPAGATION', - 'ZERO':'ZERO', - 'BEGINNING PERIOD FOR PERIOD SCANNING':'BEGINNING_PERIOD_FOR_PERIOD_SCANNING', - 'ENDING PERIOD FOR PERIOD SCANNING':'ENDING_PERIOD_FOR_PERIOD_SCANNING', - 'STEP FOR PERIOD SCANNING':'STEP_FOR_PERIOD_SCANNING', - 'MINIMUM ANGLE OF PROPAGATION':'MINIMUM_ANGLE_OF_PROPAGATION', - 'MAXIMUM ANGLE OF PROPAGATION':'MAXIMUM_ANGLE_OF_PROPAGATION', - 'S EXPONENT':'S_EXPONENT', - 'LISTING PRINTOUT':'LISTING_PRINTOUT', - 'INFORMATIONS ABOUT SOLVER':'INFORMATIONS_ABOUT_SOLVER', - 'VARIABLES FOR GRAPHIC PRINTOUTS':'VARIABLES_FOR_GRAPHIC_PRINTOUTS', - 'VARIABLES TO BE PRINTED':'VARIABLES_TO_BE_PRINTED', - 'FORTRAN FILE':'FORTRAN_FILE', - 'STEERING FILE':'STEERING_FILE', - 'BOUNDARY CONDITIONS FILE':'BOUNDARY_CONDITIONS_FILE', - 'RESULTS FILE':'RESULTS_FILE', - 'RELEASE':'RELEASE', - 'PASSWORD':'PASSWORD', - 'LIBRARIES':'LIBRARIES', - 'CPU TIME':'CPU_TIME', - 'MEMORY SPACE':'MEMORY_SPACE', - 'BOTTOM TOPOGRAPHY FILE':'BOTTOM_TOPOGRAPHY_FILE', - 'TOMAWAC DATA FILE 1':'TOMAWAC_DATA_FILE_1', - 'BINARY DATA FILE 1':'BINARY_DATA_FILE_1', - 'BINARY DATA FILE 2':'BINARY_DATA_FILE_2', - 'FORMATTED DATA FILE 1':'FORMATTED_DATA_FILE_1', - 'FORMATTED DATA FILE 2':'FORMATTED_DATA_FILE_2', - 'BINARY RESULTS FILE':'BINARY_RESULTS_FILE', - 'FORMATTED RESULTS FILE':'FORMATTED_RESULTS_FILE', - 'PRIORITY':'PRIORITY', - 'BIDON STRING':'BIDON_STRING', - 'GEOMETRY FILE BINARY':'GEOMETRY_FILE_BINARY', - 'SUB-ITERATIONS ACCURACY FOR DISSIPATION':'SUB_ITERATIONS_ACCURACY_FOR_DISSIPATION', - 'SUB-ITERATIONS ACCURACY FOR CURRENT':'SUB_ITERATIONS_ACCURACY_FOR_CURRENT', - 'SUB-ITERATIONS ACCURACY FOR TETAP':'SUB_ITERATIONS_ACCURACY_FOR_TETAP', - 'BREAKING':'BREAKING', - 'CURRENT':'CURRENT', - 'AUTOMATIC TETAP CALCULATION':'AUTOMATIC_TETAP_CALCULATION', - 'AUTOMATIC CALCULATION OF PHASE':'AUTOMATIC_CALCULATION_OF_PHASE', - 'REFERENCE WATER DEPTH FOR AUTOMATIC PHASE':'REFERENCE_WATER_DEPTH_FOR_AUTOMATIC_PHASE', - 'PHASE REFERENCE COORDINATES':'PHASE_REFERENCE_COORDINATES', - 'KDALLY':'KDALLY', - 'BREAKING LAW':'BREAKING_LAW', - 'MAXIMUM OF SUB-ITERATIONS':'MAXIMUM_OF_SUB_ITERATIONS', - 'DISSIPATION RELAXATION':'DISSIPATION_RELAXATION', - 'MAXIMUM OF SUB-ITERATIONS FOR TETAP':'MAXIMUM_OF_SUB_ITERATIONS_FOR_TETAP', - 'RELAXATION ON TETAP':'RELAXATION_ON_TETAP', - 'CHAINING TOMAWAC 1':'CHAINING_TOMAWAC_1', - 'NUMBER OF DIRECTIONS IN TOMAWAC SPECTRUM':'NUMBER_OF_DIRECTIONS_IN_TOMAWAC_SPECTRUM', - 'NUMBER OF FREQUENCIES IN TOMAWAC SPECTRUM':'NUMBER_OF_FREQUENCIES_IN_TOMAWAC_SPECTRUM', - 'INSTANT FOR READING TOMAWAC SPECTRUM':'INSTANT_FOR_READING_TOMAWAC_SPECTRUM', - 'ALPHA':'ALPHA', - 'GAMMAS':'GAMMAS', - 'GDALLY':'GDALLY', - 'FRICTION':'FRICTION', - 'FLUID KINEMATIC VISCOSITY':'FLUID_KINEMATIC_VISCOSITY', - 'DIAMETER90':'DIAMETER90', - 'DIAMETER50':'DIAMETER50', - 'SEDIMENT SPECIFIC WEIGHT':'SEDIMENT_SPECIFIC_WEIGHT', - 'FLUID SPECIFIC MASS':'FLUID_SPECIFIC_MASS', - 'HYDRAULIC REGIME IMPOSED':'HYDRAULIC_REGIME_IMPOSED', - 'SKIN ROUGHNESS ONLY':'SKIN_ROUGHNESS_ONLY', - 'WAVE HEIGHTS SMOOTHING':'WAVE_HEIGHTS_SMOOTHING', - 'VALIDATION':'VALIDATION', - 'HYDRAULIC REGIME TYPE':'HYDRAULIC_REGIME_TYPE', - 'BOTTOM FRICTION LAW':'BOTTOM_FRICTION_LAW', - 'FRICTION FACTOR IMPOSED':'FRICTION_FACTOR_IMPOSED', - 'FRICTION FACTOR':'FRICTION_FACTOR', - 'FRICTION COEFFICIENT':'FRICTION_COEFFICIENT', - 'RIPPLES COEFFICIENT':'RIPPLES_COEFFICIENT', - 'ACCOUNT NUMBER':'ACCOUNT_NUMBER', - 'MINIMUM SPECTRAL PERIOD':'MINIMUM_SPECTRAL_PERIOD', - 'MAXIMUM SPECTRAL PERIOD':'MAXIMUM_SPECTRAL_PERIOD', - 'ORIGINAL DATE OF TIME':'ORIGINAL_DATE_OF_TIME', - 'ORIGINAL HOUR OF TIME':'ORIGINAL_HOUR_OF_TIME', - 'NUMBER OF PRIVATE VARIABLES':'NUMBER_OF_PRIVATE_VARIABLES', - 'PARALLEL PROCESSORS':'PARALLEL_PROCESSORS', - 'PARTITIONING TOOL':'PARTITIONING_TOOL', - 'ORIGIN COORDINATES':'ORIGIN_COORDINATES', - 'REFERENCE FILE':'REFERENCE_FILE', - 'GEOMETRY FILE FORMAT':'GEOMETRY_FILE_FORMAT', - 'RESULTS FILE FORMAT':'RESULTS_FILE_FORMAT', - 'REFERENCE FILE FORMAT':'REFERENCE_FILE_FORMAT', - 'TOMAWAC DATA FILE 1 FORMAT':'TOMAWAC_DATA_FILE_1_FORMAT', - 'BINARY DATA FILE 1 FORMAT':'BINARY_DATA_FILE_1_FORMAT', - 'BINARY DATA FILE 2 FORMAT':'BINARY_DATA_FILE_2_FORMAT', - 'RAPIDLY VARYING TOPOGRAPHY':'RAPIDLY_VARYING_TOPOGRAPHY', - 'CHECKING THE MESH':'CHECKING_THE_MESH', - 'FREE SURFACE ANIMATION':'FREE_SURFACE_ANIMATION', - 'AMPLITUDE AND PHASE FILE':'AMPLITUDE_AND_PHASE_FILE', - 'AMPLITUDE AND PHASE FILE FORMAT':'AMPLITUDE_AND_PHASE_FILE_FORMAT', - 'FREE SURFACE FILE':'FREE_SURFACE_FILE', - 'FREE SURFACE FILE FORMAT':'FREE_SURFACE_FILE_FORMAT', - 'FIRST TIME IN THE FREE SURFACE FILE':'FIRST_TIME_IN_THE_FREE_SURFACE_FILE', - 'TIME STEP':'TIME_STEP', - 'NUMBER OF TIME STEPS':'NUMBER_OF_TIME_STEPS', - 'DICTIONARY':'DICTIONARY', - 'LIST OF FILES':'LIST_OF_FILES', - 'AD NUMBER OF DERIVATIVES':'AD_NUMBER_OF_DERIVATIVES', - 'AD NAMES OF DERIVATIVES':'AD_NAMES_OF_DERIVATIVES', - 'DESCRIPTION DES LIBRARIES':'DESCRIPTION_DES_LIBRARIES', - 'DEFAULT EXECUTABLE':'DEFAULT_EXECUTABLE', - 'DEFAULT PARALLEL EXECUTABLE':'DEFAULT_PARALLEL_EXECUTABLE', -} -DicoEnumCasFrToEnumCasEn = { -'RESULTS_FILE_BINARY':{ - "IBM":"IBM", - "I3E":"I3E", - "STD":"STD", -}, - -'INITIAL_CONDITIONS':{ - "COTE NULLE":"ZERO ELEVATION", - "COTE CONSTANTE":"CONSTANT ELEVATION", - "HAUTEUR NULLE":"ZERO DEPTH", - "HAUTEUR CONSTANTE":"CONSTANT DEPTH", - "PARTICULIERES":"SPECIAL", -}, - -'GEOMETRY_FILE_BINARY':{ - "IBM":"IBM", - "I3E":"I3E", - "STD":"STD", -}, - -'PARTITIONING_TOOL':{ - "METIS":"METIS", - "SCOTCH":"SCOTCH", - "PARMETIS":"PARMETIS", - "PTSCOTCH":"PTSCOTCH", -}, - -'GEOMETRY_FILE_FORMAT':{ - "SERAFIN":"SERAFIN", - "SERAFIND":"SERAFIND", - "MED":"MED", -}, - -'RESULTS_FILE_FORMAT':{ - "SERAFIN":"SERAFIN", - "SERAFIND":"SERAFIND", - "MED":"MED", -}, - -'REFERENCE_FILE_FORMAT':{ - "SERAFIN":"SERAFIN", - "SERAFIND":"SERAFIND", - "MED":"MED", -}, - -'TOMAWAC_DATA_FILE_1_FORMAT':{ - "SERAFIN":"SERAFIN", - "SERAFIND":"SERAFIND", - "MED":"MED", -}, - -'BINARY_DATA_FILE_1_FORMAT':{ - "SERAFIN":"SERAFIN", - "SERAFIND":"SERAFIND", - "MED":"MED", -}, - -'BINARY_DATA_FILE_2_FORMAT':{ - "SERAFIN":"SERAFIN", - "SERAFIND":"SERAFIND", - "MED":"MED", -}, - -'AMPLITUDE_AND_PHASE_FILE':{ - "resuamp":"", -}, - -'FREE_SURFACE_FILE':{ - "resufse":"", -}, - -} diff --git a/Telemac/artemis_labelCataToIhm_en.qm b/Telemac/artemis_labelCataToIhm_en.qm deleted file mode 100644 index f8a286b6..00000000 Binary files a/Telemac/artemis_labelCataToIhm_en.qm and /dev/null differ diff --git a/Telemac/artemis_labelCataToIhm_fr.qm b/Telemac/artemis_labelCataToIhm_fr.qm deleted file mode 100644 index 5701c54a..00000000 Binary files a/Telemac/artemis_labelCataToIhm_fr.qm and /dev/null differ diff --git a/Telemac/configuration_TELEMAC.py b/Telemac/configuration_TELEMAC.py deleted file mode 100644 index a38d1691..00000000 --- a/Telemac/configuration_TELEMAC.py +++ /dev/null @@ -1,43 +0,0 @@ -# -*- coding: utf-8 -*- -# maConfiguration MANAGEMENT OF EDF VERSION -# ====================================================================== -# COPYRIGHT (C) 1991 - 2002 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# -# -# ====================================================================== -""" - Ce module sert pour charger les paramètres de configuration d'EFICAS -""" -# Modules Python -from InterfaceQT4 import configuration -import os - - -class CONFIG(configuration.configBase): - - #----------------------------------- - def __init__(self,appli,repIni): - #----------------------------------- - - self.labels_user=['catalogues','lang','force_langue'] - self.labels_eficas=['lang','rep_cata','catalogues'] - - configuration.configBase.__init__(self,appli,'.Eficas_monCode') - - -def make_config(appli,rep): - return CONFIG(appli,rep) - diff --git a/Telemac/postel3d_cata_auto.py b/Telemac/postel3d_cata_auto.py deleted file mode 100644 index 33b523ea..00000000 --- a/Telemac/postel3d_cata_auto.py +++ /dev/null @@ -1,604 +0,0 @@ - -# -*- coding: latin-1 -*- - -from Accas import * -class DateJJMMAAAA: - def __init__(self): - self.ntuple=3 - - def __convert__(self,valeur): - if type(valeur) == types.StringType: return None - if len(valeur) != self.ntuple: return None - return valeur - - def info(self): - return "Date : jj/mm/aaaa " - - __repr__=info - __str__=info - -class grma(GEOM): - pass - -import types -class Tuple: - def __init__(self,ntuple): - self.ntuple=ntuple - - def __convert__(self,valeur): - if type(valeur) == types.StringType: - return None - if len(valeur) != self.ntuple: - return None - return valeur - - def info(self): - return "Tuple de %s elements" % self.ntuple - - - -JdC = JDC_CATA (code = 'POSTEL3D', - execmodul = None, - ) -# ======================================================================= -# Catalog entry for the MAP function : c_pre_interfaceBody_mesh -# ======================================================================= - -VERSION_CATALOGUE="TRUNK_20180306" -# ----------------------------------------------------------------------- -INPUT_OUTPUT__GRAPHICS_AND_LISTING = PROC(nom= "INPUT_OUTPUT__GRAPHICS_AND_LISTING",op = None, -# ----------------------------------------------------------------------- -# ----------------------------------- - NUMBER_OF_HORIZONTAL_CROSS_SECTIONS = SIMP(statut ='f', -# ----------------------------------- - typ = 'I', - defaut = [0], - fr = """Permet de definir simultanement plusieurs coupes horizontales. -La valeur maximale autorisee est 9.""", - ang = """Allow multiple horizontal sections. The maximum value is 9""", - ), -# ----------------------------------- - NUMBER_OF_VERTICAL_CROSS_SECTIONS = SIMP(statut ='f', -# ----------------------------------- - typ = 'I', - defaut = [0], - fr = """Permet de definir simultanement plusieurs coupes verticales. -La valeur maximale autorisee est 9.""", - ang = """Allow multiple vertical sections. The maximum value is 9""", - ), -# ----------------------------------- - b_NUMBER_OF_VERTICAL_CROSS_SECTIONSG = BLOC(condition="NUMBER_OF_VERTICAL_CROSS_SECTIONS == 1", -# ----------------------------------- -# ----------------------------------- - ABSCISSAE_OF_THE_VERTICES_OF_VERTICAL_CROSS_SECTION_1 = SIMP(statut ='f', -# ----------------------------------- - typ = 'R', min=10, max=10, - fr = """Tout est dans le titre""", - ang = """It is all said in the title""", - ), -# ----------------------------------- - ORDINATES_OF_THE_VERTICES_OF_VERTICAL_CROSS_SECTION_1 = SIMP(statut ='f', -# ----------------------------------- - typ = 'R', min=10, max=10, - fr = """Tout est dans le titre""", - ang = """It is all said in the title""", - ), - ), -# ----------------------------------- - b_NUMBER_OF_VERTICAL_CROSS_SECTIONSH = BLOC(condition="NUMBER_OF_VERTICAL_CROSS_SECTIONS == 2", -# ----------------------------------- -# ----------------------------------- - ABSCISSAE_OF_THE_VERTICES_OF_VERTICAL_CROSS_SECTION_2 = SIMP(statut ='f', -# ----------------------------------- - typ = 'R', min=10, max=10, - fr = """Tout est dans le titre""", - ang = """It is all said in the title""", - ), -# ----------------------------------- - ORDINATES_OF_THE_VERTICES_OF_VERTICAL_CROSS_SECTION_2 = SIMP(statut ='f', -# ----------------------------------- - typ = 'R', min=10, max=10, - fr = """Tout est dans le titre""", - ang = """It is all said in the title""", - ), - ), -# ----------------------------------- - b_NUMBER_OF_VERTICAL_CROSS_SECTIONSI = BLOC(condition="NUMBER_OF_VERTICAL_CROSS_SECTIONS == 3", -# ----------------------------------- -# ----------------------------------- - ABSCISSAE_OF_THE_VERTICES_OF_VERTICAL_CROSS_SECTION_3 = SIMP(statut ='f', -# ----------------------------------- - typ = 'R', min=10, max=10, - fr = """Tout est dans le titre""", - ang = """It is all said in the title""", - ), -# ----------------------------------- - ORDINATES_OF_THE_VERTICES_OF_VERTICAL_CROSS_SECTION_3 = SIMP(statut ='f', -# ----------------------------------- - typ = 'R', min=10, max=10, - fr = """Tout est dans le titre""", - ang = """It is all said in the title""", - ), - ), -# ----------------------------------- - b_NUMBER_OF_VERTICAL_CROSS_SECTIONSJ = BLOC(condition="NUMBER_OF_VERTICAL_CROSS_SECTIONS == 4", -# ----------------------------------- -# ----------------------------------- - ABSCISSAE_OF_THE_VERTICES_OF_VERTICAL_CROSS_SECTION_4 = SIMP(statut ='f', -# ----------------------------------- - typ = 'R', min=10, max=10, - fr = """Tout est dans le titre""", - ang = """It is all said in the title""", - ), -# ----------------------------------- - ORDINATES_OF_THE_VERTICES_OF_VERTICAL_CROSS_SECTION_4 = SIMP(statut ='f', -# ----------------------------------- - typ = 'R', min=10, max=10, - fr = """Tout est dans le titre""", - ang = """It is all said in the title""", - ), - ), -# ----------------------------------- - b_NUMBER_OF_VERTICAL_CROSS_SECTIONSK = BLOC(condition="NUMBER_OF_VERTICAL_CROSS_SECTIONS == 5", -# ----------------------------------- -# ----------------------------------- - ABSCISSAE_OF_THE_VERTICES_OF_VERTICAL_CROSS_SECTION_5 = SIMP(statut ='f', -# ----------------------------------- - typ = 'R', min=10, max=10, - fr = """Tout est dans le titre""", - ang = """It is all said in the title""", - ), -# ----------------------------------- - ORDINATES_OF_THE_VERTICES_OF_VERTICAL_CROSS_SECTION_5 = SIMP(statut ='f', -# ----------------------------------- - typ = 'R', min=10, max=10, - fr = """Tout est dans le titre""", - ang = """It is all said in the title""", - ), - ), -# ----------------------------------- - b_NUMBER_OF_VERTICAL_CROSS_SECTIONSL = BLOC(condition="NUMBER_OF_VERTICAL_CROSS_SECTIONS == 6", -# ----------------------------------- -# ----------------------------------- - ABSCISSAE_OF_THE_VERTICES_OF_VERTICAL_CROSS_SECTION_6 = SIMP(statut ='f', -# ----------------------------------- - typ = 'R', min=10, max=10, - fr = """Tout est dans le titre""", - ang = """It is all said in the title""", - ), -# ----------------------------------- - ORDINATES_OF_THE_VERTICES_OF_VERTICAL_CROSS_SECTION_6 = SIMP(statut ='f', -# ----------------------------------- - typ = 'R', min=10, max=10, - fr = """Tout est dans le titre""", - ang = """It is all said in the title""", - ), - ), -# ----------------------------------- - b_NUMBER_OF_VERTICAL_CROSS_SECTIONSM = BLOC(condition="NUMBER_OF_VERTICAL_CROSS_SECTIONS == 7", -# ----------------------------------- -# ----------------------------------- - ABSCISSAE_OF_THE_VERTICES_OF_VERTICAL_CROSS_SECTION_7 = SIMP(statut ='f', -# ----------------------------------- - typ = 'R', min=10, max=10, - fr = """Tout est dans le titre""", - ang = """It is all said in the title""", - ), -# ----------------------------------- - ORDINATES_OF_THE_VERTICES_OF_VERTICAL_CROSS_SECTION_7 = SIMP(statut ='f', -# ----------------------------------- - typ = 'R', min=10, max=10, - fr = """Tout est dans le titre""", - ang = """It is all said in the title""", - ), - ), -# ----------------------------------- - b_NUMBER_OF_VERTICAL_CROSS_SECTIONSN = BLOC(condition="NUMBER_OF_VERTICAL_CROSS_SECTIONS == 8", -# ----------------------------------- -# ----------------------------------- - ABSCISSAE_OF_THE_VERTICES_OF_VERTICAL_CROSS_SECTION_8 = SIMP(statut ='f', -# ----------------------------------- - typ = 'R', min=10, max=10, - fr = """Tout est dans le titre""", - ang = """It is all said in the title""", - ), -# ----------------------------------- - ORDINATES_OF_THE_VERTICES_OF_VERTICAL_CROSS_SECTION_8 = SIMP(statut ='f', -# ----------------------------------- - typ = 'R', min=10, max=10, - fr = """Tout est dans le titre""", - ang = """It is all said in the title""", - ), - ), -# ----------------------------------- - b_NUMBER_OF_VERTICAL_CROSS_SECTIONSO = BLOC(condition="NUMBER_OF_VERTICAL_CROSS_SECTIONS == 9", -# ----------------------------------- -# ----------------------------------- - ABSCISSAE_OF_THE_VERTICES_OF_VERTICAL_CROSS_SECTION_9 = SIMP(statut ='f', -# ----------------------------------- - typ = 'R', min=10, max=10, - fr = """Tout est dans le titre""", - ang = """It is all said in the title""", - ), -# ----------------------------------- - ORDINATES_OF_THE_VERTICES_OF_VERTICAL_CROSS_SECTION_9 = SIMP(statut ='f', -# ----------------------------------- - typ = 'R', min=10, max=10, - fr = """Tout est dans le titre""", - ang = """It is all said in the title""", - ), - ), -# ----------------------------------- - NUMBER_OF_FIRST_RECORD_FOR_CROSS_SECTIONS = SIMP(statut ='f', -# ----------------------------------- - typ = 'I', - defaut = [1], - fr = """Seuls les enregistrements au-dela de ce numero seront traites -pour les coupes.""", - ang = """Only records after that time will be in the cross sections""", - ), -# ----------------------------------- - PRINTOUT_PERIOD_FOR_CROSS_SECTIONS = SIMP(statut ='f', -# ----------------------------------- - typ = 'I', - defaut = [1], - fr = """Periode en nombre d''enregistrements entre 2 coupes.""", - ang = """Period in number of records between two cross sections""", - ), -# ----------------------------------- - REFERENCE_LEVEL_FOR_EACH_HORIZONTAL_CROSS_SECTION = SIMP(statut ='f', -# ----------------------------------- - typ = 'I', min= 9, max= 9, - defaut = [0,1,2,3,4,5,6,7,8], - fr = """Chaque coupe horizontale sera parallele a son plan de reference. -Ainsi il est possible de faire des coupes par exemple : -\begin{itemize} -\item a telle distance au-dessus du fond, -\item a telle distance sous la surface, -\item suivant un plan intermediaire \ldots -\end{itemize} -Le plan 0 correspond au plan parfaitement horizontal a la cote 0.""", - ang = """Each horizontal cross section will be parallel to its reference -plane. It is then possible to make cross section which are: -\begin{itemize} -\item at a chosen distance above the bottom, -\item at a chosen distance below the surface, -\item referenced to an inbetween plane \ldots -\end{itemize} -Plane 0 correspond to the plane perfecly horizontal to the heigh 0.""", - ), -# ----------------------------------- - NUMBER_OF_NODES_FOR_VERTICAL_CROSS_SECTION_DISCRETIZATION = SIMP(statut ='f', -# ----------------------------------- - typ = 'I', - defaut = [120], - fr = """Il s''agit du nombre de points suivant l''horizontale.""", - ang = """It is the number of points along the horizontal""", - ), -) -# ----------------------------------------------------------------------- -GRAPHIC = PROC(nom= "GRAPHIC",op = None, -# ----------------------------------------------------------------------- -# ----------------------------------- - ELEVATION_FROM_REFERENCE_LEVEL = SIMP(statut ='f', -# ----------------------------------- - typ = 'R', min= 9, max= 9, - defaut = [0.,0.,0.,0.,0.,0.,0.,0.,0.], - fr = """Decalage entre la coupe et son plan de reference, ceci pour -chaque coupe horizontale.""", - ang = """Gap between the cross sections and its reference plane, this -must be defined for cross section""", - ), -# ----------------------------------- - DISTORSION_BETWEEN_VERTICAL_AND_HORIZONTAL = SIMP(statut ='f', -# ----------------------------------- - typ = 'R', min= 9, max= 9, - defaut = [1.,1.,1.,1.,1.,1.,1.,1.,1.], - fr = """Rapport entre echelles verticale et horizontale pour chaque -coupe verticale.""", - ang = """Ratio between vertical and horizontal scale for each vertical -cross section""", - ), -) -# ----------------------------------------------------------------------- -INPUT_OUTPUT__FILES = PROC(nom= "INPUT_OUTPUT__FILES",op = None, -# ----------------------------------------------------------------------- -# ----------------------------------- - RD_RESULT_FILE_FORMAT = SIMP(statut ='f', -# ----------------------------------- - typ = 'TXM', - into = ['SERAFIN','SERAFIND','MED'], - defaut = 'SERAFIN?', - fr = """Format du fichier de resultats. -Les valeurs possibles sont : -\begin{itemize} -\item SERAFIN : format standard simple precision pour Telemac; -\item SERAFIND: format standard double precision pour Telemac; -\item MED : format MED base sur HDF5 -\end{itemize}""", - ang = """Results file format. Possible values are: -\begin{itemize} -\item SERAFIN : classical single precision format in Telemac; -\item SERAFIND: classical double precision format in Telemac; -\item MED : MED format based on HDF5 -\end{itemize}""", - ), -# ----------------------------------- - HORIZONTAL_CROSS_SECTION_FILE_FORMAT = SIMP(statut ='f', -# ----------------------------------- - typ = 'TXM', - into = ['SERAFIN','SERAFIND','MED'], - defaut = 'SERAFIN?', - fr = """Format du fichier de resultats. -Les valeurs possibles sont : -\begin{itemize} -\item SERAFIN : format standard simple precision pour Telemac; -\item SERAFIND: format standard double precision pour Telemac; -\item MED : format MED base sur HDF5 -\end{itemize}""", - ang = """Results file format. Possible values are: -\begin{itemize} -\item SERAFIN : classical single precision format in Telemac; -\item SERAFIND: classical double precision format in Telemac; -\item MED : MED format based on HDF5 -\end{itemize}""", - ), -# ----------------------------------- - VERTICAL_CROSS_SECTION_FILE_FORMAT = SIMP(statut ='f', -# ----------------------------------- - typ = 'TXM', - into = ['SERAFIN','SERAFIND','MED'], - defaut = 'SERAFIN?', - fr = """Format du fichier de resultats. -Les valeurs possibles sont : -\begin{itemize} -\item SERAFIN : format standard simple precision pour Telemac; -\item SERAFIND: format standard double precision pour Telemac; -\item MED : format MED base sur HDF5 -\end{itemize}""", - ang = """Results file format. Possible values are: -\begin{itemize} -\item SERAFIN : classical single precision format in Telemac; -\item SERAFIND: classical double precision format in Telemac; -\item MED : MED format based on HDF5 -\end{itemize}""", - ), -# ----------------------------------- - GEOMETRY_FILE_FORMAT = SIMP(statut ='f', -# ----------------------------------- - typ = 'TXM', - into = ['SERAFIN','SERAFIND','MED'], - defaut = 'SERAFIN?', - fr = """Format du fichier de geometrie. -Les valeurs possibles sont : -\begin{itemize} -\item SERAFIN : format standard simple precision pour Telemac; -\item SERAFIND: format standard double precision pour Telemac; -\item MED : format MED base sur HDF5 -\end{itemize}""", - ang = """Geometry file format. -Possible values are: -\begin{itemize} -\item SERAFIN : classical single precision format in Telemac; -\item SERAFIND: classical double precision format in Telemac; -\item MED : MED format based on HDF5 -\end{itemize}""", - ), -# ----------------------------------- - NAMES = FACT(statut='f', -# ----------------------------------- -# ----------------------------------- - FORTRAN_FILE = SIMP(statut ='f', -# ----------------------------------- - typ = ('Fichier','All Files (*)'), - defaut = 'DEFAUT', - fr = """Nom du fichier FORTRAN a soumettre.\\ -Il ne sert a priori qu''a dimensionner les tableaux utilises par -\postel3d, mais peut contenir des sous-programmes modifies ou propres -a l''utilisateur.""", - ang = """Name of FORTRAN file to be submitted.\\ -It is supposed to be used only to dimension the array used by \postel3d -but can also contain subroutines modified by the user.""", - ), -# ----------------------------------- - STEERING_FILE = SIMP(statut ='f', -# ----------------------------------- - typ = ('Fichier','All Files (*)'), - defaut = '', - fr = """Nom du fichier contenant les references des fichiers et -les options du calcul a realiser.""", - ang = """Name of the file containing the parameters of the computation -Written by the user.""", - ), -# ----------------------------------- - RD_RESULT_FILE = SIMP(statut ='f', -# ----------------------------------- - typ = ('Fichier','All Files (*)'), - defaut = '', - fr = """Nom du fichier des resultats 3D obtenu par un calcul avec -\telemac{3D}.""", - ang = """Name of the 3d result file generated by a \telemac{3D} run.""", - ), -# ----------------------------------- - HORIZONTAL_CROSS_SECTION_FILE = SIMP(statut ='f', -# ----------------------------------- - typ = ('Fichier','All Files (*)','Sauvegarde'), - defaut = '', - fr = """Nom generique des fichiers des coupes horizontales. -Le fichier contenant la coupe i aura pour nom ce nom generique suivi -de l''extension ''.i''.""", - ang = """Generic name for the horizontal cross sections file. -The file containing the cross section i name will be the generic -followed by the extension''.i''.""", - ), -# ----------------------------------- - VERTICAL_CROSS_SECTION_FILE = SIMP(statut ='f', -# ----------------------------------- - typ = ('Fichier','All Files (*)','Sauvegarde'), - defaut = '', - fr = """Nom generique des fichiers des coupes verticales. -Le fichier contenant la coupe i au j ieme pas de temps enregistre aura -pour nom ce nom generique suivi de l''extension ''.i.j''.""", - ang = """Generic name for the vertical cross sections file. The file -containing the cross section i for the j time step name will be the -generic followed by the extension''.i.j''.""", - ), -# ----------------------------------- - GEOMETRY_FILE = SIMP(statut ='f', -# ----------------------------------- - typ = ('Fichier','All Files (*)'), - defaut = '', - fr = """Nom du fichier de geometrie""", - ang = """Name of the geometry file""", - ), - ), -# ----------------------------------- - TYPE_OF_BINARY = FACT(statut='f', -# ----------------------------------- -# ----------------------------------- - RD_RESULT_FILE_BINARY = SIMP(statut ='f', -# ----------------------------------- - typ = 'TXM', - into = ['STD','IBM','I3E'], - defaut = 'STD', - fr = """Type du binaire utilise pour l''ecriture du fichier des -resultats 3d.\\ -Ce type depend de la machine sur laquelle le fichier a ete genere. -Les valeurs possibles sont : -\begin{itemize} -\item IBM: pour un fichier crEE sur IBM; -\item I3E: pour un fichier crEE sur HP; -\item STD: il s''agit alors d''ordres READ et WRITE normaux. -\end{itemize}""", - ang = """Binary file type used for writing the results file. -This type depends on the machine on which the file was generated. -The possible values are as follows: -\begin{itemize} -\item IBM: for a file on an IBM (from a CRAY) -\item I3E: for a file on an HP (from a CRAY) -\item STD: binary type of the machine on which the user is working. In -that case, normal READ and WRITE commands are used -\end{itemize}""", - ), -# ----------------------------------- - CROSS_SECTION_FILE_BINARY = SIMP(statut ='f', -# ----------------------------------- - typ = 'TXM', - into = ['STD','I3E'], - defaut = 'STD', - fr = """Type du binaire utilise pour l''ecriture des fichiers des -coupes.\\ -Ce type depend de la machine sur laquelle le fichier a ete genere. -Les valeurs possibles sont les memes que pour le fichier des -resultats 3D.""", - ang = """Binary file type used for writing the cross section files. -This type depends on the machine on which the file was generated. -The possible values are as follows: -\begin{itemize} -\item I3E, for a file on an HP (from a CRAY) -\item STD, binary type of the machine on which the user is working. In -that case, normal READ and WRITE commands are used. -\end{itemize}""", - ), -# ----------------------------------- - GEOMETRY_FILE_BINARY = SIMP(statut ='f', -# ----------------------------------- - typ = 'TXM', - into = ['STD','I3E'], - defaut = 'STD', - fr = """Type du binaire utilise pour l''ecriture des fichiers des -coupes.\\ -Ce type depend de la machine sur laquelle le fichier a ete genere. -Les valeurs possibles sont les memes que pour le fichier des -resultats 3D.""", - ang = """Binary file type used for writing the cross section files. -This type depends on the machine on which the file was generated. -The possible values are as follows: -\begin{itemize} -\item I3E, for a file on an HP (from a CRAY) -\item STD, binary type of the machine on which the user is working. In - that case, normal READ and WRITE commands are used. -\end{itemize}""", - ), - ), -) -# ----------------------------------------------------------------------- -INPUT_OUTPUT__INFORMATION = PROC(nom= "INPUT_OUTPUT__INFORMATION",op = None, -# ----------------------------------------------------------------------- -# ----------------------------------- - COMPUTATIONAL_INFORMATION = FACT(statut='f', -# ----------------------------------- -# ----------------------------------- - RELEASE = SIMP(statut ='f', -# ----------------------------------- - typ = 'TXM', - defaut = 'TRUNK', - fr = """Tout est dans le titre""", - ang = """It is all said in the title""", - ), -# ----------------------------------- - DESCRIPTION_OF_LIBRARIES = SIMP(statut ='f', -# ----------------------------------- - typ = 'TXM', min= 6, max= 6, - defaut = 'builds|PPP|lib|postel3dMMMVVV.LLL;builds|PPP|lib|biefMMMVVV.LLL;builds|PPP|lib|hermesMMMVVV.LLL;builds|PPP|lib|damoMMMVVV.LLL;builds|PPP|lib|parallelMMMVVV.LLL;builds|PPP|lib|specialMMMVVV.LLL', - fr = """Description des librairies de \postel3d""", - ang = """\postel3d libraries description""", - ), -# ----------------------------------- - DEFAULT_EXECUTABLE = SIMP(statut ='f', -# ----------------------------------- - typ = 'TXM', - defaut = 'builds|PPP|bin|postel3dMMMVVV.exe', - fr = """Executable par defaut de \postel3d""", - ang = """Default executable for \postel3d""", - ), -# ----------------------------------- - DEFAULT_PARALLEL_EXECUTABLE = SIMP(statut ='f', -# ----------------------------------- - typ = 'TXM', - defaut = 'builds|PPP|bin|postel3dMMMVVV.exe', - fr = """Executable parallele par defaut de \postel3d""", - ang = """Default parallel executable for \postel3d""", - ), - ), -# ----------------------------------- - COMPUTATION_ENVIRONMENT = FACT(statut='f', -# ----------------------------------- -# ----------------------------------- - DICTIONARY = SIMP(statut ='f', -# ----------------------------------- - typ = ('Fichier','All Files (*)'), - defaut = 'postel3d.dico', - fr = """Dictionnaire des mots cles.""", - ang = """Key word dictionary.""", - ), - ), -) -# ----------------------------------------------------------------------- -FILES = PROC(nom= "FILES",op = None, -# ----------------------------------------------------------------------- -# ----------------------------------- - LIST_OF_FILES = SIMP(statut ='f', -# ----------------------------------- - typ = 'TXM', min= 8, max= 8, - defaut = 'STEERING FILE;DICTIONARY;FORTRAN FILE;GEOMETRY FILE;STEERING FILE;3D RESULT FILE;HORIZONTAL CROSS SECTION FILE;VERTICAL CROSS SECTION FILE', - fr = """Noms des fichiers exploites par le code""", - ang = """File names of the used files""", - ), -) -TEXTE_NEW_JDC = "\ -" -Ordre_Des_Commandes = ( -'INPUT_OUTPUT__GRAPHICS_AND_LISTING', -'GRAPHIC', -'INPUT_OUTPUT__FILES', -'INPUT_OUTPUT__INFORMATION', -'FILES') -try: - import TelApy - source = "eficas" -except Exception as excpt: - source = "Telemac" -enum = source+'.postel3d_enum_auto' -dicoCasEn = source+'.postel3d_dicoCasEnToCata' -dicoCasFr = source+'.postel3d_dicoCasFrToCata' diff --git a/Telemac/postel3d_dicoCasEnToCata.py b/Telemac/postel3d_dicoCasEnToCata.py deleted file mode 100644 index b64bf09e..00000000 --- a/Telemac/postel3d_dicoCasEnToCata.py +++ /dev/null @@ -1,94 +0,0 @@ -dicoCataToEngTelemac = { - "NUMBER_OF_HORIZONTAL_CROSS_SECTIONS" : "NUMBER OF HORIZONTAL CROSS SECTIONS", - "NUMBER_OF_VERTICAL_CROSS_SECTIONS" : "NUMBER OF VERTICAL CROSS SECTIONS", - "NUMBER_OF_FIRST_RECORD_FOR_CROSS_SECTIONS" : "NUMBER OF FIRST RECORD FOR CROSS SECTIONS", - "PRINTOUT_PERIOD_FOR_CROSS_SECTIONS" : "PRINTOUT PERIOD FOR CROSS SECTIONS", - "REFERENCE_LEVEL_FOR_EACH_HORIZONTAL_CROSS_SECTION" : "REFERENCE LEVEL FOR EACH HORIZONTAL CROSS SECTION", - "NUMBER_OF_NODES_FOR_VERTICAL_CROSS_SECTION_DISCRETIZATION" : "NUMBER OF NODES FOR VERTICAL CROSS SECTION DISCRETIZATION", - "ELEVATION_FROM_REFERENCE_LEVEL" : "ELEVATION FROM REFERENCE LEVEL", - "ABSCISSAE_OF_THE_VERTICES_OF_VERTICAL_CROSS_SECTION_1" : "ABSCISSAE OF THE VERTICES OF VERTICAL CROSS SECTION 1", - "ORDINATES_OF_THE_VERTICES_OF_VERTICAL_CROSS_SECTION_1" : "ORDINATES OF THE VERTICES OF VERTICAL CROSS SECTION 1", - "ABSCISSAE_OF_THE_VERTICES_OF_VERTICAL_CROSS_SECTION_2" : "ABSCISSAE OF THE VERTICES OF VERTICAL CROSS SECTION 2", - "ORDINATES_OF_THE_VERTICES_OF_VERTICAL_CROSS_SECTION_2" : "ORDINATES OF THE VERTICES OF VERTICAL CROSS SECTION 2", - "ABSCISSAE_OF_THE_VERTICES_OF_VERTICAL_CROSS_SECTION_3" : "ABSCISSAE OF THE VERTICES OF VERTICAL CROSS SECTION 3", - "ORDINATES_OF_THE_VERTICES_OF_VERTICAL_CROSS_SECTION_3" : "ORDINATES OF THE VERTICES OF VERTICAL CROSS SECTION 3", - "ABSCISSAE_OF_THE_VERTICES_OF_VERTICAL_CROSS_SECTION_4" : "ABSCISSAE OF THE VERTICES OF VERTICAL CROSS SECTION 4", - "ORDINATES_OF_THE_VERTICES_OF_VERTICAL_CROSS_SECTION_4" : "ORDINATES OF THE VERTICES OF VERTICAL CROSS SECTION 4", - "ABSCISSAE_OF_THE_VERTICES_OF_VERTICAL_CROSS_SECTION_5" : "ABSCISSAE OF THE VERTICES OF VERTICAL CROSS SECTION 5", - "ORDINATES_OF_THE_VERTICES_OF_VERTICAL_CROSS_SECTION_5" : "ORDINATES OF THE VERTICES OF VERTICAL CROSS SECTION 5", - "ABSCISSAE_OF_THE_VERTICES_OF_VERTICAL_CROSS_SECTION_6" : "ABSCISSAE OF THE VERTICES OF VERTICAL CROSS SECTION 6", - "ORDINATES_OF_THE_VERTICES_OF_VERTICAL_CROSS_SECTION_6" : "ORDINATES OF THE VERTICES OF VERTICAL CROSS SECTION 6", - "ABSCISSAE_OF_THE_VERTICES_OF_VERTICAL_CROSS_SECTION_7" : "ABSCISSAE OF THE VERTICES OF VERTICAL CROSS SECTION 7", - "ORDINATES_OF_THE_VERTICES_OF_VERTICAL_CROSS_SECTION_7" : "ORDINATES OF THE VERTICES OF VERTICAL CROSS SECTION 7", - "ABSCISSAE_OF_THE_VERTICES_OF_VERTICAL_CROSS_SECTION_8" : "ABSCISSAE OF THE VERTICES OF VERTICAL CROSS SECTION 8", - "ORDINATES_OF_THE_VERTICES_OF_VERTICAL_CROSS_SECTION_8" : "ORDINATES OF THE VERTICES OF VERTICAL CROSS SECTION 8", - "ABSCISSAE_OF_THE_VERTICES_OF_VERTICAL_CROSS_SECTION_9" : "ABSCISSAE OF THE VERTICES OF VERTICAL CROSS SECTION 9", - "ORDINATES_OF_THE_VERTICES_OF_VERTICAL_CROSS_SECTION_9" : "ORDINATES OF THE VERTICES OF VERTICAL CROSS SECTION 9", - "DISTORSION_BETWEEN_VERTICAL_AND_HORIZONTAL" : "DISTORSION BETWEEN VERTICAL AND HORIZONTAL", - "FORTRAN_FILE" : "FORTRAN FILE", - "STEERING_FILE" : "STEERING FILE", - "RD_RESULT_FILE" : "3D RESULT FILE", - "RD_RESULT_FILE_FORMAT" : "3D RESULT FILE FORMAT", - "HORIZONTAL_CROSS_SECTION_FILE" : "HORIZONTAL CROSS SECTION FILE", - "HORIZONTAL_CROSS_SECTION_FILE_FORMAT" : "HORIZONTAL CROSS SECTION FILE FORMAT", - "VERTICAL_CROSS_SECTION_FILE" : "VERTICAL CROSS SECTION FILE", - "VERTICAL_CROSS_SECTION_FILE_FORMAT" : "VERTICAL CROSS SECTION FILE FORMAT", - "RELEASE" : "RELEASE", - "RD_RESULT_FILE_BINARY" : "3D RESULT FILE BINARY", - "CROSS_SECTION_FILE_BINARY" : "CROSS SECTION FILE BINARY", - "GEOMETRY_FILE" : "GEOMETRY FILE", - "GEOMETRY_FILE_FORMAT" : "GEOMETRY FILE FORMAT", - "GEOMETRY_FILE_BINARY" : "GEOMETRY FILE BINARY", - "DICTIONARY" : "DICTIONARY", - "LIST_OF_FILES" : "LIST OF FILES", - "DESCRIPTION_OF_LIBRARIES" : "DESCRIPTION OF LIBRARIES", - "DEFAULT_EXECUTABLE" : "DEFAULT EXECUTABLE", - "DEFAULT_PARALLEL_EXECUTABLE" : "DEFAULT PARALLEL EXECUTABLE", -} -dicoCasEnToCata = { - "NUMBER OF HORIZONTAL CROSS SECTIONS" : "NUMBER_OF_HORIZONTAL_CROSS_SECTIONS", - "NUMBER OF VERTICAL CROSS SECTIONS" : "NUMBER_OF_VERTICAL_CROSS_SECTIONS", - "NUMBER OF FIRST RECORD FOR CROSS SECTIONS" : "NUMBER_OF_FIRST_RECORD_FOR_CROSS_SECTIONS", - "PRINTOUT PERIOD FOR CROSS SECTIONS" : "PRINTOUT_PERIOD_FOR_CROSS_SECTIONS", - "REFERENCE LEVEL FOR EACH HORIZONTAL CROSS SECTION" : "REFERENCE_LEVEL_FOR_EACH_HORIZONTAL_CROSS_SECTION", - "NUMBER OF NODES FOR VERTICAL CROSS SECTION DISCRETIZATION" : "NUMBER_OF_NODES_FOR_VERTICAL_CROSS_SECTION_DISCRETIZATION", - "ELEVATION FROM REFERENCE LEVEL" : "ELEVATION_FROM_REFERENCE_LEVEL", - "ABSCISSAE OF THE VERTICES OF VERTICAL CROSS SECTION 1" : "ABSCISSAE_OF_THE_VERTICES_OF_VERTICAL_CROSS_SECTION_1", - "ORDINATES OF THE VERTICES OF VERTICAL CROSS SECTION 1" : "ORDINATES_OF_THE_VERTICES_OF_VERTICAL_CROSS_SECTION_1", - "ABSCISSAE OF THE VERTICES OF VERTICAL CROSS SECTION 2" : "ABSCISSAE_OF_THE_VERTICES_OF_VERTICAL_CROSS_SECTION_2", - "ORDINATES OF THE VERTICES OF VERTICAL CROSS SECTION 2" : "ORDINATES_OF_THE_VERTICES_OF_VERTICAL_CROSS_SECTION_2", - "ABSCISSAE OF THE VERTICES OF VERTICAL CROSS SECTION 3" : "ABSCISSAE_OF_THE_VERTICES_OF_VERTICAL_CROSS_SECTION_3", - "ORDINATES OF THE VERTICES OF VERTICAL CROSS SECTION 3" : "ORDINATES_OF_THE_VERTICES_OF_VERTICAL_CROSS_SECTION_3", - "ABSCISSAE OF THE VERTICES OF VERTICAL CROSS SECTION 4" : "ABSCISSAE_OF_THE_VERTICES_OF_VERTICAL_CROSS_SECTION_4", - "ORDINATES OF THE VERTICES OF VERTICAL CROSS SECTION 4" : "ORDINATES_OF_THE_VERTICES_OF_VERTICAL_CROSS_SECTION_4", - "ABSCISSAE OF THE VERTICES OF VERTICAL CROSS SECTION 5" : "ABSCISSAE_OF_THE_VERTICES_OF_VERTICAL_CROSS_SECTION_5", - "ORDINATES OF THE VERTICES OF VERTICAL CROSS SECTION 5" : "ORDINATES_OF_THE_VERTICES_OF_VERTICAL_CROSS_SECTION_5", - "ABSCISSAE OF THE VERTICES OF VERTICAL CROSS SECTION 6" : "ABSCISSAE_OF_THE_VERTICES_OF_VERTICAL_CROSS_SECTION_6", - "ORDINATES OF THE VERTICES OF VERTICAL CROSS SECTION 6" : "ORDINATES_OF_THE_VERTICES_OF_VERTICAL_CROSS_SECTION_6", - "ABSCISSAE OF THE VERTICES OF VERTICAL CROSS SECTION 7" : "ABSCISSAE_OF_THE_VERTICES_OF_VERTICAL_CROSS_SECTION_7", - "ORDINATES OF THE VERTICES OF VERTICAL CROSS SECTION 7" : "ORDINATES_OF_THE_VERTICES_OF_VERTICAL_CROSS_SECTION_7", - "ABSCISSAE OF THE VERTICES OF VERTICAL CROSS SECTION 8" : "ABSCISSAE_OF_THE_VERTICES_OF_VERTICAL_CROSS_SECTION_8", - "ORDINATES OF THE VERTICES OF VERTICAL CROSS SECTION 8" : "ORDINATES_OF_THE_VERTICES_OF_VERTICAL_CROSS_SECTION_8", - "ABSCISSAE OF THE VERTICES OF VERTICAL CROSS SECTION 9" : "ABSCISSAE_OF_THE_VERTICES_OF_VERTICAL_CROSS_SECTION_9", - "ORDINATES OF THE VERTICES OF VERTICAL CROSS SECTION 9" : "ORDINATES_OF_THE_VERTICES_OF_VERTICAL_CROSS_SECTION_9", - "DISTORSION BETWEEN VERTICAL AND HORIZONTAL" : "DISTORSION_BETWEEN_VERTICAL_AND_HORIZONTAL", - "FORTRAN FILE" : "FORTRAN_FILE", - "STEERING FILE" : "STEERING_FILE", - "3D RESULT FILE" : "RD_RESULT_FILE", - "3D RESULT FILE FORMAT" : "RD_RESULT_FILE_FORMAT", - "HORIZONTAL CROSS SECTION FILE" : "HORIZONTAL_CROSS_SECTION_FILE", - "HORIZONTAL CROSS SECTION FILE FORMAT" : "HORIZONTAL_CROSS_SECTION_FILE_FORMAT", - "VERTICAL CROSS SECTION FILE" : "VERTICAL_CROSS_SECTION_FILE", - "VERTICAL CROSS SECTION FILE FORMAT" : "VERTICAL_CROSS_SECTION_FILE_FORMAT", - "RELEASE" : "RELEASE", - "3D RESULT FILE BINARY" : "RD_RESULT_FILE_BINARY", - "CROSS SECTION FILE BINARY" : "CROSS_SECTION_FILE_BINARY", - "GEOMETRY FILE" : "GEOMETRY_FILE", - "GEOMETRY FILE FORMAT" : "GEOMETRY_FILE_FORMAT", - "GEOMETRY FILE BINARY" : "GEOMETRY_FILE_BINARY", - "DICTIONARY" : "DICTIONARY", - "LIST OF FILES" : "LIST_OF_FILES", - "DESCRIPTION OF LIBRARIES" : "DESCRIPTION_OF_LIBRARIES", - "DEFAULT EXECUTABLE" : "DEFAULT_EXECUTABLE", - "DEFAULT PARALLEL EXECUTABLE" : "DEFAULT_PARALLEL_EXECUTABLE", -} diff --git a/Telemac/postel3d_dicoCasFrToCata.py b/Telemac/postel3d_dicoCasFrToCata.py deleted file mode 100644 index 59219c82..00000000 --- a/Telemac/postel3d_dicoCasFrToCata.py +++ /dev/null @@ -1,94 +0,0 @@ -dicoCataToFrTelemac = { - "NUMBER_OF_HORIZONTAL_CROSS_SECTIONS" : "NOMBRE DE COUPES HORIZONTALES", - "NUMBER_OF_VERTICAL_CROSS_SECTIONS" : "NOMBRE DE COUPES VERTICALES", - "NUMBER_OF_FIRST_RECORD_FOR_CROSS_SECTIONS" : "NUMERO DU PREMIER ENREGISTREMENT POUR LES COUPES", - "PRINTOUT_PERIOD_FOR_CROSS_SECTIONS" : "PERIODE DE SORTIE DES COUPES", - "REFERENCE_LEVEL_FOR_EACH_HORIZONTAL_CROSS_SECTION" : "PLAN DE REFERENCE POUR CHAQUE COUPE HORIZONTALE", - "NUMBER_OF_NODES_FOR_VERTICAL_CROSS_SECTION_DISCRETIZATION" : "NOMBRE DE POINTS DE DISCRETISATION POUR LES COUPES VERTICALES", - "ELEVATION_FROM_REFERENCE_LEVEL" : "HAUTEUR PAR RAPPORT AU PLAN DE REFERENCE", - "ABSCISSAE_OF_THE_VERTICES_OF_VERTICAL_CROSS_SECTION_1" : "ABSCISSES DES SOMMETS DE LA COUPE VERTICALE 1", - "ORDINATES_OF_THE_VERTICES_OF_VERTICAL_CROSS_SECTION_1" : "ORDONNEES DES SOMMETS DE LA COUPE VERTICALE 1", - "ABSCISSAE_OF_THE_VERTICES_OF_VERTICAL_CROSS_SECTION_2" : "ABSCISSES DES SOMMETS DE LA COUPE VERTICALE 2", - "ORDINATES_OF_THE_VERTICES_OF_VERTICAL_CROSS_SECTION_2" : "ORDONNEES DES SOMMETS DE LA COUPE VERTICALE 2", - "ABSCISSAE_OF_THE_VERTICES_OF_VERTICAL_CROSS_SECTION_3" : "ABSCISSES DES SOMMETS DE LA COUPE VERTICALE 3", - "ORDINATES_OF_THE_VERTICES_OF_VERTICAL_CROSS_SECTION_3" : "ORDONNEES DES SOMMETS DE LA COUPE VERTICALE 3", - "ABSCISSAE_OF_THE_VERTICES_OF_VERTICAL_CROSS_SECTION_4" : "ABSCISSES DES SOMMETS DE LA COUPE VERTICALE 4", - "ORDINATES_OF_THE_VERTICES_OF_VERTICAL_CROSS_SECTION_4" : "ORDONNEES DES SOMMETS DE LA COUPE VERTICALE 4", - "ABSCISSAE_OF_THE_VERTICES_OF_VERTICAL_CROSS_SECTION_5" : "ABSCISSES DES SOMMETS DE LA COUPE VERTICALE 5", - "ORDINATES_OF_THE_VERTICES_OF_VERTICAL_CROSS_SECTION_5" : "ORDONNEES DES SOMMETS DE LA COUPE VERTICALE 5", - "ABSCISSAE_OF_THE_VERTICES_OF_VERTICAL_CROSS_SECTION_6" : "ABSCISSES DES SOMMETS DE LA COUPE VERTICALE 6", - "ORDINATES_OF_THE_VERTICES_OF_VERTICAL_CROSS_SECTION_6" : "ORDONNEES DES SOMMETS DE LA COUPE VERTICALE 6", - "ABSCISSAE_OF_THE_VERTICES_OF_VERTICAL_CROSS_SECTION_7" : "ABSCISSES DES SOMMETS DE LA COUPE VERTICALE 7", - "ORDINATES_OF_THE_VERTICES_OF_VERTICAL_CROSS_SECTION_7" : "ORDONNEES DES SOMMETS DE LA COUPE VERTICALE 7", - "ABSCISSAE_OF_THE_VERTICES_OF_VERTICAL_CROSS_SECTION_8" : "ABSCISSES DES SOMMETS DE LA COUPE VERTICALE 8", - "ORDINATES_OF_THE_VERTICES_OF_VERTICAL_CROSS_SECTION_8" : "ORDONNEES DES SOMMETS DE LA COUPE VERTICALE 8", - "ABSCISSAE_OF_THE_VERTICES_OF_VERTICAL_CROSS_SECTION_9" : "ABSCISSES DES SOMMETS DE LA COUPE VERTICALE 9", - "ORDINATES_OF_THE_VERTICES_OF_VERTICAL_CROSS_SECTION_9" : "ORDONNEES DES SOMMETS DE LA COUPE VERTICALE 9", - "DISTORSION_BETWEEN_VERTICAL_AND_HORIZONTAL" : "DISTORSION ENTRE VERTICALE ET HORIZONTALE", - "FORTRAN_FILE" : "FICHIER FORTRAN", - "STEERING_FILE" : "FICHIER DES PARAMETRES", - "RD_RESULT_FILE" : "FICHIER DES RESULTATS 3D", - "RD_RESULT_FILE_FORMAT" : "FORMAT DU FICHIER DES RESULTATS 3D", - "HORIZONTAL_CROSS_SECTION_FILE" : "FICHIER DES COUPES HORIZONTALES", - "HORIZONTAL_CROSS_SECTION_FILE_FORMAT" : "FORMAT DU FICHIER DES COUPES HORIZONTALES", - "VERTICAL_CROSS_SECTION_FILE" : "FICHIER DES COUPES VERTICALES", - "VERTICAL_CROSS_SECTION_FILE_FORMAT" : "FORMAT DU FICHIER DES COUPES VERTICALES", - "RELEASE" : "NUMERO DE VERSION", - "RD_RESULT_FILE_BINARY" : "BINAIRE DU FICHIER DES RESULTATS 3D", - "CROSS_SECTION_FILE_BINARY" : "BINAIRE DES FICHIERS DES COUPES", - "GEOMETRY_FILE" : "FICHIER DE GEOMETRIE", - "GEOMETRY_FILE_FORMAT" : "FORMAT DU FICHIER DE GEOMETRIE", - "GEOMETRY_FILE_BINARY" : "BINAIRE DU FICHIER DE GEOMETRIE", - "DICTIONARY" : "DICTIONNAIRE", - "LIST_OF_FILES" : "LISTE DES FICHIERS", - "DESCRIPTION_OF_LIBRARIES" : "DESCRIPTION DES LIBRAIRIES", - "DEFAULT_EXECUTABLE" : "EXECUTABLE PAR DEFAUT", - "DEFAULT_PARALLEL_EXECUTABLE" : "EXECUTABLE PARALLELE PAR DEFAUT", -} -dicoCasFrToCata = { - "NOMBRE DE COUPES HORIZONTALES" : "NUMBER_OF_HORIZONTAL_CROSS_SECTIONS", - "NOMBRE DE COUPES VERTICALES" : "NUMBER_OF_VERTICAL_CROSS_SECTIONS", - "NUMERO DU PREMIER ENREGISTREMENT POUR LES COUPES" : "NUMBER_OF_FIRST_RECORD_FOR_CROSS_SECTIONS", - "PERIODE DE SORTIE DES COUPES" : "PRINTOUT_PERIOD_FOR_CROSS_SECTIONS", - "PLAN DE REFERENCE POUR CHAQUE COUPE HORIZONTALE" : "REFERENCE_LEVEL_FOR_EACH_HORIZONTAL_CROSS_SECTION", - "NOMBRE DE POINTS DE DISCRETISATION POUR LES COUPES VERTICALES" : "NUMBER_OF_NODES_FOR_VERTICAL_CROSS_SECTION_DISCRETIZATION", - "HAUTEUR PAR RAPPORT AU PLAN DE REFERENCE" : "ELEVATION_FROM_REFERENCE_LEVEL", - "ABSCISSES DES SOMMETS DE LA COUPE VERTICALE 1" : "ABSCISSAE_OF_THE_VERTICES_OF_VERTICAL_CROSS_SECTION_1", - "ORDONNEES DES SOMMETS DE LA COUPE VERTICALE 1" : "ORDINATES_OF_THE_VERTICES_OF_VERTICAL_CROSS_SECTION_1", - "ABSCISSES DES SOMMETS DE LA COUPE VERTICALE 2" : "ABSCISSAE_OF_THE_VERTICES_OF_VERTICAL_CROSS_SECTION_2", - "ORDONNEES DES SOMMETS DE LA COUPE VERTICALE 2" : "ORDINATES_OF_THE_VERTICES_OF_VERTICAL_CROSS_SECTION_2", - "ABSCISSES DES SOMMETS DE LA COUPE VERTICALE 3" : "ABSCISSAE_OF_THE_VERTICES_OF_VERTICAL_CROSS_SECTION_3", - "ORDONNEES DES SOMMETS DE LA COUPE VERTICALE 3" : "ORDINATES_OF_THE_VERTICES_OF_VERTICAL_CROSS_SECTION_3", - "ABSCISSES DES SOMMETS DE LA COUPE VERTICALE 4" : "ABSCISSAE_OF_THE_VERTICES_OF_VERTICAL_CROSS_SECTION_4", - "ORDONNEES DES SOMMETS DE LA COUPE VERTICALE 4" : "ORDINATES_OF_THE_VERTICES_OF_VERTICAL_CROSS_SECTION_4", - "ABSCISSES DES SOMMETS DE LA COUPE VERTICALE 5" : "ABSCISSAE_OF_THE_VERTICES_OF_VERTICAL_CROSS_SECTION_5", - "ORDONNEES DES SOMMETS DE LA COUPE VERTICALE 5" : "ORDINATES_OF_THE_VERTICES_OF_VERTICAL_CROSS_SECTION_5", - "ABSCISSES DES SOMMETS DE LA COUPE VERTICALE 6" : "ABSCISSAE_OF_THE_VERTICES_OF_VERTICAL_CROSS_SECTION_6", - "ORDONNEES DES SOMMETS DE LA COUPE VERTICALE 6" : "ORDINATES_OF_THE_VERTICES_OF_VERTICAL_CROSS_SECTION_6", - "ABSCISSES DES SOMMETS DE LA COUPE VERTICALE 7" : "ABSCISSAE_OF_THE_VERTICES_OF_VERTICAL_CROSS_SECTION_7", - "ORDONNEES DES SOMMETS DE LA COUPE VERTICALE 7" : "ORDINATES_OF_THE_VERTICES_OF_VERTICAL_CROSS_SECTION_7", - "ABSCISSES DES SOMMETS DE LA COUPE VERTICALE 8" : "ABSCISSAE_OF_THE_VERTICES_OF_VERTICAL_CROSS_SECTION_8", - "ORDONNEES DES SOMMETS DE LA COUPE VERTICALE 8" : "ORDINATES_OF_THE_VERTICES_OF_VERTICAL_CROSS_SECTION_8", - "ABSCISSES DES SOMMETS DE LA COUPE VERTICALE 9" : "ABSCISSAE_OF_THE_VERTICES_OF_VERTICAL_CROSS_SECTION_9", - "ORDONNEES DES SOMMETS DE LA COUPE VERTICALE 9" : "ORDINATES_OF_THE_VERTICES_OF_VERTICAL_CROSS_SECTION_9", - "DISTORSION ENTRE VERTICALE ET HORIZONTALE" : "DISTORSION_BETWEEN_VERTICAL_AND_HORIZONTAL", - "FICHIER FORTRAN" : "FORTRAN_FILE", - "FICHIER DES PARAMETRES" : "STEERING_FILE", - "FICHIER DES RESULTATS 3D" : "RD_RESULT_FILE", - "FORMAT DU FICHIER DES RESULTATS 3D" : "RD_RESULT_FILE_FORMAT", - "FICHIER DES COUPES HORIZONTALES" : "HORIZONTAL_CROSS_SECTION_FILE", - "FORMAT DU FICHIER DES COUPES HORIZONTALES" : "HORIZONTAL_CROSS_SECTION_FILE_FORMAT", - "FICHIER DES COUPES VERTICALES" : "VERTICAL_CROSS_SECTION_FILE", - "FORMAT DU FICHIER DES COUPES VERTICALES" : "VERTICAL_CROSS_SECTION_FILE_FORMAT", - "NUMERO DE VERSION" : "RELEASE", - "BINAIRE DU FICHIER DES RESULTATS 3D" : "RD_RESULT_FILE_BINARY", - "BINAIRE DES FICHIERS DES COUPES" : "CROSS_SECTION_FILE_BINARY", - "FICHIER DE GEOMETRIE" : "GEOMETRY_FILE", - "FORMAT DU FICHIER DE GEOMETRIE" : "GEOMETRY_FILE_FORMAT", - "BINAIRE DU FICHIER DE GEOMETRIE" : "GEOMETRY_FILE_BINARY", - "DICTIONNAIRE" : "DICTIONARY", - "LISTE DES FICHIERS" : "LIST_OF_FILES", - "DESCRIPTION DES LIBRAIRIES" : "DESCRIPTION_OF_LIBRARIES", - "EXECUTABLE PAR DEFAUT" : "DEFAULT_EXECUTABLE", - "EXECUTABLE PARALLELE PAR DEFAUT" : "DEFAULT_PARALLEL_EXECUTABLE", -} diff --git a/Telemac/postel3d_enum_auto.py b/Telemac/postel3d_enum_auto.py deleted file mode 100644 index 5bb66dfd..00000000 --- a/Telemac/postel3d_enum_auto.py +++ /dev/null @@ -1,144 +0,0 @@ -#/usr/bin/env python -# -*- coding: latin-1 -*- -TelemacdicoEn = { -} -TelemacdicoFr = { -} - -DicoCasFrToCata = { - "NOMBRE DE COUPES HORIZONTALES":"NUMBER_OF_HORIZONTAL_CROSS_SECTIONS", - "NOMBRE DE COUPES VERTICALES":"NUMBER_OF_VERTICAL_CROSS_SECTIONS", - "NUMERO DU PREMIER ENREGISTREMENT POUR LES COUPES":"NUMBER_OF_FIRST_RECORD_FOR_CROSS_SECTIONS", - "PERIODE DE SORTIE DES COUPES":"PRINTOUT_PERIOD_FOR_CROSS_SECTIONS", - "PLAN DE REFERENCE POUR CHAQUE COUPE HORIZONTALE":"REFERENCE_LEVEL_FOR_EACH_HORIZONTAL_CROSS_SECTION", - "NOMBRE DE POINTS DE DISCRETISATION POUR LES COUPES VERTICALES":"NUMBER_OF_NODES_FOR_VERTICAL_CROSS_SECTION_DISCRETIZATION", - "HAUTEUR PAR RAPPORT AU PLAN DE REFERENCE":"ELEVATION_FROM_REFERENCE_LEVEL", - "ABSCISSES DES SOMMETS DE LA COUPE VERTICALE 1":"ABSCISSAE_OF_THE_VERTICES_OF_VERTICAL_CROSS_SECTION_1", - "ORDONNEES DES SOMMETS DE LA COUPE VERTICALE 1":"ORDINATES_OF_THE_VERTICES_OF_VERTICAL_CROSS_SECTION_1", - "ABSCISSES DES SOMMETS DE LA COUPE VERTICALE 2":"ABSCISSAE_OF_THE_VERTICES_OF_VERTICAL_CROSS_SECTION_2", - "ORDONNEES DES SOMMETS DE LA COUPE VERTICALE 2":"ORDINATES_OF_THE_VERTICES_OF_VERTICAL_CROSS_SECTION_2", - "ABSCISSES DES SOMMETS DE LA COUPE VERTICALE 3":"ABSCISSAE_OF_THE_VERTICES_OF_VERTICAL_CROSS_SECTION_3", - "ORDONNEES DES SOMMETS DE LA COUPE VERTICALE 3":"ORDINATES_OF_THE_VERTICES_OF_VERTICAL_CROSS_SECTION_3", - "ABSCISSES DES SOMMETS DE LA COUPE VERTICALE 4":"ABSCISSAE_OF_THE_VERTICES_OF_VERTICAL_CROSS_SECTION_4", - "ORDONNEES DES SOMMETS DE LA COUPE VERTICALE 4":"ORDINATES_OF_THE_VERTICES_OF_VERTICAL_CROSS_SECTION_4", - "ABSCISSES DES SOMMETS DE LA COUPE VERTICALE 5":"ABSCISSAE_OF_THE_VERTICES_OF_VERTICAL_CROSS_SECTION_5", - "ORDONNEES DES SOMMETS DE LA COUPE VERTICALE 5":"ORDINATES_OF_THE_VERTICES_OF_VERTICAL_CROSS_SECTION_5", - "ABSCISSES DES SOMMETS DE LA COUPE VERTICALE 6":"ABSCISSAE_OF_THE_VERTICES_OF_VERTICAL_CROSS_SECTION_6", - "ORDONNEES DES SOMMETS DE LA COUPE VERTICALE 6":"ORDINATES_OF_THE_VERTICES_OF_VERTICAL_CROSS_SECTION_6", - "ABSCISSES DES SOMMETS DE LA COUPE VERTICALE 7":"ABSCISSAE_OF_THE_VERTICES_OF_VERTICAL_CROSS_SECTION_7", - "ORDONNEES DES SOMMETS DE LA COUPE VERTICALE 7":"ORDINATES_OF_THE_VERTICES_OF_VERTICAL_CROSS_SECTION_7", - "ABSCISSES DES SOMMETS DE LA COUPE VERTICALE 8":"ABSCISSAE_OF_THE_VERTICES_OF_VERTICAL_CROSS_SECTION_8", - "ORDONNEES DES SOMMETS DE LA COUPE VERTICALE 8":"ORDINATES_OF_THE_VERTICES_OF_VERTICAL_CROSS_SECTION_8", - "ABSCISSES DES SOMMETS DE LA COUPE VERTICALE 9":"ABSCISSAE_OF_THE_VERTICES_OF_VERTICAL_CROSS_SECTION_9", - "ORDONNEES DES SOMMETS DE LA COUPE VERTICALE 9":"ORDINATES_OF_THE_VERTICES_OF_VERTICAL_CROSS_SECTION_9", - "DISTORSION ENTRE VERTICALE ET HORIZONTALE":"DISTORSION_BETWEEN_VERTICAL_AND_HORIZONTAL", - "FICHIER FORTRAN":"FORTRAN_FILE", - "FICHIER DES PARAMETRES":"STEERING_FILE", - "FICHIER DES RESULTATS 3D":"RD_RESULT_FILE", - "FORMAT DU FICHIER DES RESULTATS 3D":"RD_RESULT_FILE_FORMAT", - "FICHIER DES COUPES HORIZONTALES":"HORIZONTAL_CROSS_SECTION_FILE", - "FORMAT DU FICHIER DES COUPES HORIZONTALES":"HORIZONTAL_CROSS_SECTION_FILE_FORMAT", - "FICHIER DES COUPES VERTICALES":"VERTICAL_CROSS_SECTION_FILE", - "FORMAT DU FICHIER DES COUPES VERTICALES":"VERTICAL_CROSS_SECTION_FILE_FORMAT", - "NUMERO DE VERSION":"RELEASE", - "BINAIRE DU FICHIER DES RESULTATS 3D":"RD_RESULT_FILE_BINARY", - "BINAIRE DES FICHIERS DES COUPES":"CROSS_SECTION_FILE_BINARY", - "FICHIER DE GEOMETRIE":"GEOMETRY_FILE", - "FORMAT DU FICHIER DE GEOMETRIE":"GEOMETRY_FILE_FORMAT", - "BINAIRE DU FICHIER DE GEOMETRIE":"GEOMETRY_FILE_BINARY", - "DICTIONNAIRE":"DICTIONARY", - "LISTE DES FICHIERS":"LIST_OF_FILES", - "DESCRIPTION DES LIBRAIRIES":"DESCRIPTION_OF_LIBRARIES", - "EXECUTABLE PAR DEFAUT":"DEFAULT_EXECUTABLE", - "EXECUTABLE PARALLELE PAR DEFAUT":"DEFAULT_PARALLEL_EXECUTABLE", -} - -DicoCasEnToCata = { - 'NUMBER OF HORIZONTAL CROSS SECTIONS':'NUMBER_OF_HORIZONTAL_CROSS_SECTIONS', - 'NUMBER OF VERTICAL CROSS SECTIONS':'NUMBER_OF_VERTICAL_CROSS_SECTIONS', - 'NUMBER OF FIRST RECORD FOR CROSS SECTIONS':'NUMBER_OF_FIRST_RECORD_FOR_CROSS_SECTIONS', - 'PRINTOUT PERIOD FOR CROSS SECTIONS':'PRINTOUT_PERIOD_FOR_CROSS_SECTIONS', - 'REFERENCE LEVEL FOR EACH HORIZONTAL CROSS SECTION':'REFERENCE_LEVEL_FOR_EACH_HORIZONTAL_CROSS_SECTION', - 'NUMBER OF NODES FOR VERTICAL CROSS SECTION DISCRETIZATION':'NUMBER_OF_NODES_FOR_VERTICAL_CROSS_SECTION_DISCRETIZATION', - 'ELEVATION FROM REFERENCE LEVEL':'ELEVATION_FROM_REFERENCE_LEVEL', - 'ABSCISSAE OF THE VERTICES OF VERTICAL CROSS SECTION 1':'ABSCISSAE_OF_THE_VERTICES_OF_VERTICAL_CROSS_SECTION_1', - 'ORDINATES OF THE VERTICES OF VERTICAL CROSS SECTION 1':'ORDINATES_OF_THE_VERTICES_OF_VERTICAL_CROSS_SECTION_1', - 'ABSCISSAE OF THE VERTICES OF VERTICAL CROSS SECTION 2':'ABSCISSAE_OF_THE_VERTICES_OF_VERTICAL_CROSS_SECTION_2', - 'ORDINATES OF THE VERTICES OF VERTICAL CROSS SECTION 2':'ORDINATES_OF_THE_VERTICES_OF_VERTICAL_CROSS_SECTION_2', - 'ABSCISSAE OF THE VERTICES OF VERTICAL CROSS SECTION 3':'ABSCISSAE_OF_THE_VERTICES_OF_VERTICAL_CROSS_SECTION_3', - 'ORDINATES OF THE VERTICES OF VERTICAL CROSS SECTION 3':'ORDINATES_OF_THE_VERTICES_OF_VERTICAL_CROSS_SECTION_3', - 'ABSCISSAE OF THE VERTICES OF VERTICAL CROSS SECTION 4':'ABSCISSAE_OF_THE_VERTICES_OF_VERTICAL_CROSS_SECTION_4', - 'ORDINATES OF THE VERTICES OF VERTICAL CROSS SECTION 4':'ORDINATES_OF_THE_VERTICES_OF_VERTICAL_CROSS_SECTION_4', - 'ABSCISSAE OF THE VERTICES OF VERTICAL CROSS SECTION 5':'ABSCISSAE_OF_THE_VERTICES_OF_VERTICAL_CROSS_SECTION_5', - 'ORDINATES OF THE VERTICES OF VERTICAL CROSS SECTION 5':'ORDINATES_OF_THE_VERTICES_OF_VERTICAL_CROSS_SECTION_5', - 'ABSCISSAE OF THE VERTICES OF VERTICAL CROSS SECTION 6':'ABSCISSAE_OF_THE_VERTICES_OF_VERTICAL_CROSS_SECTION_6', - 'ORDINATES OF THE VERTICES OF VERTICAL CROSS SECTION 6':'ORDINATES_OF_THE_VERTICES_OF_VERTICAL_CROSS_SECTION_6', - 'ABSCISSAE OF THE VERTICES OF VERTICAL CROSS SECTION 7':'ABSCISSAE_OF_THE_VERTICES_OF_VERTICAL_CROSS_SECTION_7', - 'ORDINATES OF THE VERTICES OF VERTICAL CROSS SECTION 7':'ORDINATES_OF_THE_VERTICES_OF_VERTICAL_CROSS_SECTION_7', - 'ABSCISSAE OF THE VERTICES OF VERTICAL CROSS SECTION 8':'ABSCISSAE_OF_THE_VERTICES_OF_VERTICAL_CROSS_SECTION_8', - 'ORDINATES OF THE VERTICES OF VERTICAL CROSS SECTION 8':'ORDINATES_OF_THE_VERTICES_OF_VERTICAL_CROSS_SECTION_8', - 'ABSCISSAE OF THE VERTICES OF VERTICAL CROSS SECTION 9':'ABSCISSAE_OF_THE_VERTICES_OF_VERTICAL_CROSS_SECTION_9', - 'ORDINATES OF THE VERTICES OF VERTICAL CROSS SECTION 9':'ORDINATES_OF_THE_VERTICES_OF_VERTICAL_CROSS_SECTION_9', - 'DISTORSION BETWEEN VERTICAL AND HORIZONTAL':'DISTORSION_BETWEEN_VERTICAL_AND_HORIZONTAL', - 'FORTRAN FILE':'FORTRAN_FILE', - 'STEERING FILE':'STEERING_FILE', - '3D RESULT FILE':'RD_RESULT_FILE', - '3D RESULT FILE FORMAT':'RD_RESULT_FILE_FORMAT', - 'HORIZONTAL CROSS SECTION FILE':'HORIZONTAL_CROSS_SECTION_FILE', - 'HORIZONTAL CROSS SECTION FILE FORMAT':'HORIZONTAL_CROSS_SECTION_FILE_FORMAT', - 'VERTICAL CROSS SECTION FILE':'VERTICAL_CROSS_SECTION_FILE', - 'VERTICAL CROSS SECTION FILE FORMAT':'VERTICAL_CROSS_SECTION_FILE_FORMAT', - 'RELEASE':'RELEASE', - '3D RESULT FILE BINARY':'RD_RESULT_FILE_BINARY', - 'CROSS SECTION FILE BINARY':'CROSS_SECTION_FILE_BINARY', - 'GEOMETRY FILE':'GEOMETRY_FILE', - 'GEOMETRY FILE FORMAT':'GEOMETRY_FILE_FORMAT', - 'GEOMETRY FILE BINARY':'GEOMETRY_FILE_BINARY', - 'DICTIONARY':'DICTIONARY', - 'LIST OF FILES':'LIST_OF_FILES', - 'DESCRIPTION OF LIBRARIES':'DESCRIPTION_OF_LIBRARIES', - 'DEFAULT EXECUTABLE':'DEFAULT_EXECUTABLE', - 'DEFAULT PARALLEL EXECUTABLE':'DEFAULT_PARALLEL_EXECUTABLE', -} -DicoEnumCasFrToEnumCasEn = { -'RD_RESULT_FILE_FORMAT':{ - "SERAFIN":"SERAFIN", - "SERAFIND":"SERAFIND", - "MED":"MED", -}, - -'HORIZONTAL_CROSS_SECTION_FILE_FORMAT':{ - "SERAFIN":"SERAFIN", - "SERAFIND":"SERAFIND", - "MED":"MED", -}, - -'VERTICAL_CROSS_SECTION_FILE_FORMAT':{ - "SERAFIN":"SERAFIN", - "SERAFIND":"SERAFIND", - "MED":"MED", -}, - -'RD_RESULT_FILE_BINARY':{ - "STD":"STD", - "IBM":"IBM", - "I3E":"I3E", -}, - -'CROSS_SECTION_FILE_BINARY':{ - "STD":"STD", - "I3E":"I3E", -}, - -'GEOMETRY_FILE_FORMAT':{ - "SERAFIN":"SERAFIN", - "SERAFIND":"SERAFIND", - "MED":"MED", -}, - -'GEOMETRY_FILE_BINARY':{ - "STD":"STD", - "I3E":"I3E", -}, - -} diff --git a/Telemac/postel3d_labelCataToIhm_en.qm b/Telemac/postel3d_labelCataToIhm_en.qm deleted file mode 100644 index 13461a3b..00000000 Binary files a/Telemac/postel3d_labelCataToIhm_en.qm and /dev/null differ diff --git a/Telemac/postel3d_labelCataToIhm_fr.qm b/Telemac/postel3d_labelCataToIhm_fr.qm deleted file mode 100644 index ab14bad6..00000000 Binary files a/Telemac/postel3d_labelCataToIhm_fr.qm and /dev/null differ diff --git a/Telemac/prefs.py b/Telemac/prefs.py deleted file mode 100644 index f1db1e19..00000000 --- a/Telemac/prefs.py +++ /dev/null @@ -1,23 +0,0 @@ -# Copyright (C) 2007-2012 EDF R&D -# -# 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 -# -from __future__ import absolute_import -code="TELEMAC" -import sys, os -if os.path.dirname(os.path.abspath(__file__)) not in sys.path : - sys.path.insert(0,os.path.dirname(os.path.abspath(__file__))) diff --git a/Telemac/prefs_TELEMAC.py b/Telemac/prefs_TELEMAC.py deleted file mode 100644 index 622b68bb..00000000 --- a/Telemac/prefs_TELEMAC.py +++ /dev/null @@ -1,105 +0,0 @@ -# -*- coding: utf-8 -*- -# maConfiguration MANAGEMENT OF EDF VERSION -# ====================================================================== -# COPYRIGHT (C) 1991 - 2002 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# -# -# ====================================================================== - -from __future__ import absolute_import -import os,sys -# repIni sert a localiser le fichier editeur.ini -# Obligatoire -repIni = os.path.dirname(os.path.abspath(__file__)) -INSTALLDIR = os.path.join(repIni,'..') -sys.path[:0] = [INSTALLDIR] - - -# lang indique la langue utilisee pour les chaines d'aide : fr ou ang -lang = 'ang' -#lang='fr' -#force_langue=True - -# Codage des strings qui accepte les accents (en remplacement de 'ascii') -encoding = 'iso-8859-1' -docPath = repIni - -try: - import TelApy - rep_cata = os.path.join(os.environ['HOMETEL'], - 'scripts', - 'python27', - 'eficas') -except ImportError as excp: - print('Using eficas local catalog') - rep_cata = repIni -except Exception as excep: - print("Missing HOMETEL in environment") - rep_cata = repIni - -cata_telemac = { - 'telemac2d': os.path.join(rep_cata, 'telemac2d_cata_auto.py'), - 'telemac3d': os.path.join(rep_cata, 'telemac3d_cata_auto.py'), - 'tomawac': os.path.join(rep_cata, 'tomawac_cata_auto.py'), - 'artemis': os.path.join(rep_cata, 'artemis_cata_auto.py'), - 'sisyphe': os.path.join(rep_cata, 'sisyphe_cata_auto.py'), - 'waqtel': os.path.join(rep_cata, 'waqtel_cata_auto.py'), - 'stbtel': os.path.join(rep_cata, 'stbtel_cata_auto.py'), - 'postel3d': os.path.join(rep_cata, 'postel3d_cata_auto.py'), - } -print(cata_telemac) - -translator_telemac = {\ - 'telemac2d': os.path.join(rep_cata, 'telemac2d_labelCataToIhm'), - 'telemac3d': os.path.join(rep_cata, 'telemac3d_labelCataToIhm'), - 'tomawac': os.path.join(rep_cata, 'tomawac_labelCataToIhm'), - 'artemis': os.path.join(rep_cata, 'artemis_labelCataToIhm'), - 'sisyphe': os.path.join(rep_cata, 'sisyphe_labelCataToIhm'), - 'waqtel': os.path.join(rep_cata, 'waqtel_labelCataToIhm'), - 'stbtel': os.path.join(rep_cata, 'stbtel_labelCataToIhm'), - 'postel3d': os.path.join(rep_cata, 'postel3d_labelCataToIhm'), - } -# -catalogues = (\ - #('TELEMAC','default',os.path.join(repIni,'Telemac_Cata_nouveau.py'),'TELEMAC','python'), - #('TELEMAC','cas',os.path.join(repIni,'Telemac_Cata.py'),'TELEMAC','TELEMAC'), - #('2D','cas',os.path.join(repIni,'Telemac2d_Cata_auto.py'),'TELEMAC','TELEMAC'), - ('TELEMAC', 'telemac2d', cata_telemac['telemac2d'], 'TELEMAC', 'TELEMAC'), - ('TELEMAC', 'telemac3d', cata_telemac['telemac3d'], 'TELEMAC', 'TELEMAC'), - ('TELEMAC', 'tomawac', cata_telemac['tomawac'], 'TELEMAC', 'TELEMAC'), - ('TELEMAC', 'artemis', cata_telemac['artemis'], 'TELEMAC', 'TELEMAC'), - ('TELEMAC', 'sisyphe', cata_telemac['sisyphe'], 'TELEMAC', 'TELEMAC'), - ('TELEMAC', 'waqtel', cata_telemac['waqtel'], 'TELEMAC', 'TELEMAC'), - ('TELEMAC', 'stbtel', cata_telemac['stbtel'], 'TELEMAC', 'TELEMAC'), - ('TELEMAC', 'postel3d', cata_telemac['postel3d'], 'TELEMAC', 'TELEMAC'), - #('2222D','cas',os.path.join(repIni,'telemac2d_V6_cata.py'),'TELEMAC','TELEMAC'), - #('TELEMAC','cas',os.path.join(repIni,'Telemac_Cata.py'),'python','TELEMAC3'), - #('YOANN', 'cas', os.path.join(repIni, 'Cata.py'), 'TELEMAC', 'TELEMAC'), - #('TELEMAC','comm',os.path.join(repIni,'Telemac_Cata.py'),'TELEMAC2','python'), -) -mode_nouv_commande = "figee" -affiche = "ordre" -translatorFichier_pn = os.path.join(repIni, 'labelCataToIhm') -translatorFichier_telemac2d = translator_telemac['telemac2d'] -translatorFichier_telemac3d = translator_telemac['telemac3d'] -translatorFichier_tomawac = translator_telemac['tomawac'] -translatorFichier_artemis = translator_telemac['artemis'] -translatorFichier_sisyphe = translator_telemac['sisyphe'] -translatorFichier_waqtel = translator_telemac['waqtel'] -translatorFichier_stbtel = translator_telemac['stbtel'] -translatorFichier_postel3d = translator_telemac['postel3d'] -closeFrameRecherche = True -differencieSiDefaut = True diff --git a/Telemac/properties.py b/Telemac/properties.py deleted file mode 100644 index 1d328a46..00000000 --- a/Telemac/properties.py +++ /dev/null @@ -1,24 +0,0 @@ -#@ MODIF properties Accas DATE 11/06/2008 AUTEUR aster M.ADMINISTRATEUR -# RESPONSABLE D6BHHHH J-P.LEFEBVRE -# ====================================================================== -# COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# IDENTIFICATION DU GESTIONNAIRE DE COMMANDE ACCAS A PARTIR -# DE LA VERSION DU CODE_ASTER ASSOCIE -#---------------------------------------------------------------------- -version = "1.2" -date = "25/05/2010" -exploit = False diff --git a/Telemac/qtEficas_Telemac.py b/Telemac/qtEficas_Telemac.py deleted file mode 100755 index c140518c..00000000 --- a/Telemac/qtEficas_Telemac.py +++ /dev/null @@ -1,33 +0,0 @@ -#!/usr/bin/env python -# -*- coding: utf-8 -*- -# Copyright (C) 2007-2012 EDF R&D -# -# 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 -# -""" - Ce module sert a lancer EFICAS configure pour Code_Aster -""" -# Modules Python -# Modules Eficas - -from __future__ import absolute_import -import sys,os -sys.path.append(os.path.join(os.path.abspath(os.path.dirname(__file__)),'..')) - -import prefs -from InterfaceQT4 import eficas_go -eficas_go.lanceEficas(code=prefs.code) diff --git a/Telemac/reecrit_cas_en_comm.py b/Telemac/reecrit_cas_en_comm.py deleted file mode 100755 index ba5e250f..00000000 --- a/Telemac/reecrit_cas_en_comm.py +++ /dev/null @@ -1,57 +0,0 @@ -#!/usr/bin/env python -# -*- coding: utf-8 -*- -# maConfiguration MANAGEMENT OF EDF VERSION -# ====================================================================== -# COPYRIGHT (C) 1991 - 2002 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# -# -# ====================================================================== - -""" -""" -# Modules Python -from __future__ import absolute_import -from __future__ import print_function - -import sys,os - -# Modules Eficas -import prefs -if hasattr(prefs,'encoding'): - # Hack pour changer le codage par defaut des strings - import sys - reload(sys) - sys.setdefaultencoding(prefs.encoding) - del sys.setdefaultencoding - # Fin hack - - -sys.path.append(os.path.join(os.path.abspath(os.path.dirname(__file__)),'..')) -from InterfaceQT4 import eficas_go - -from PyQt5.QtWidgets import QApplication -app = QApplication(sys.argv) -#for badf in ('t2d_bridge.cas','t2d_estu_gir.cas' ): -#for f in ('t2d_bj78.cas',): -for f in ('t2d_weirs.cas',): -#for f in ('t2d_bj78.cas' ,'t2d_bowl_fe.cas' ,'t2d_bowl_vf.cas' ,'t2d_bowl_vf_gb.cas' ,'t2d_breach.cas' ,'t2d_break.cas' ,'t2d_bumpcri.cas' ,'t2d_bumpflu.cas' ,'t2d_cavity.cas' ,'t2d_cinetiques.cas' ,'t2d_clotilde.cas' ,'t2d_cone.cas' ,'t2d_confluence.cas' ,'t2d_culm.cas' ,'t2d_dambreak_v1p0.cas' ,'t2d_dambreak_v2p0.cas' ,'t2d_digue.cas' ,'t2d_donau.cas' ,'t2d_dragforce.cas' ,'t2d_estimation.cas' ,'t2d_flotteurs_v1p0.cas' ,'t2d_flotteurs_v2p0.cas' ,'t2d_friction.cas' ,'t2d_gouttedo.cas' ,'t2d_gouttedo_cin.cas' ,'t2d_gouttedo_qua.cas' ,'t2d_hydraulic_jump_v1p0.cas' ,'t2d_hydraulic_jump_v2p0.cas' ,'t2d_init-1.cas' ,'t2d_init-2.cas' ,'t2d_init-3.cas' ,'t2d_init_cin.cas' ,'t2d_island.cas' ,'t2d_m2wave.cas' ,'t2d_malpasset-large.cas' ,'t2d_malpasset-large_med.cas' ,'t2d_malpasset-small_charac.cas' ,'t2d_malpasset-small_cin.cas' ,'t2d_malpasset-small_ERIA.cas' ,'t2d_malpasset-small_pos.cas' ,'t2d_malpasset-small_prim.cas' ,'t2d_mersey.cas' ,'t2d_monai.cas' ,'t2d_okada.cas' ,'t2d_ondem2.cas' ,'t2d_pildepon.cas' ,'t2d_pildepon_cin.cas' ,'t2d_pildepon_qua.cas' ,'t2d_pluie.cas' ,'t2d_pluie_cn.cas' ,'t2d_pluie_cn_geo_hyetograph.cas' ,'t2d_porosite.cas' ,'t2d_riogrande.cas' ,'t2d_ritter.cas' ,'t2d_riv_art.cas' ,'t2d_ruptmoui.cas' ,'t2d_seccurrents.cas' ,'t2d_seiche.cas' ,'t2d_shoal.cas' ,'t2d_siphon.cas' ,'t2d_swash.cas' ,'t2d_tests_channel.cas' ,'t2d_thacker.cas' ,'t2d_thomson.cas' ,'t2d_tide-ES_real.cas' ,'t2d_tide-jmj_real_gen.cas' ,'t2d_tide-jmj_type.cas' ,'t2d_tide-jmj_type_gen.cas' ,'t2d_tide-jmj_type_med.cas' ,'t2d_tide-NEA_prior_real.cas' ,'t2d_tide-NEA_prior_type.cas' ,'t2d_tracer_decay.cas' ,'t2d_trdec.cas' ,'t2d_triangular_shelf.cas' ,'t2d_vasque.cas' ,'t2d_waq_o2.cas' ,'t2d_waq_thermic.cas' ,'t2d_wave.cas' ,'t2d_weirs.cas' ,'t2d_wesel.cas' ,'t2d_wesel_pos.cas' ,'t2d_wind.cas' ,'t2d_wind_txy_bin.cas' ,'t2d_wind_txy.cas' ,'waq_steer.cas') : - - if f == ' ' : continue - print ("traitement de : ", 'CasEn/'+f) - - # on veut ouvrir un fichier directement au lancement d'Eficas - eficas_go.lanceEficas_ssIhm_reecrit(code='TELEMAC',fichier = 'CasEn/'+f,ou = 'CasEn_Reecrits',cr=True) - print ("\n") diff --git a/Telemac/sisyphe_cata_auto.py b/Telemac/sisyphe_cata_auto.py deleted file mode 100644 index 4f2c64a8..00000000 --- a/Telemac/sisyphe_cata_auto.py +++ /dev/null @@ -1,2377 +0,0 @@ - -# -*- coding: latin-1 -*- - -from Accas import * -class DateJJMMAAAA: - def __init__(self): - self.ntuple=3 - - def __convert__(self,valeur): - if type(valeur) == types.StringType: return None - if len(valeur) != self.ntuple: return None - return valeur - - def info(self): - return "Date : jj/mm/aaaa " - - __repr__=info - __str__=info - -class grma(GEOM): - pass - -import types -class Tuple: - def __init__(self,ntuple): - self.ntuple=ntuple - - def __convert__(self,valeur): - if type(valeur) == types.StringType: - return None - if len(valeur) != self.ntuple: - return None - return valeur - - def info(self): - return "Tuple de %s elements" % self.ntuple - - - -JdC = JDC_CATA (code = 'SISYPHE', - execmodul = None, - ) -# ======================================================================= -# Catalog entry for the MAP function : c_pre_interfaceBody_mesh -# ======================================================================= - -VERSION_CATALOGUE="TRUNK_20180306" -# ----------------------------------------------------------------------- -INPUT_OUTPUT__INFORMATION = PROC(nom= "INPUT_OUTPUT__INFORMATION",op = None, -# ----------------------------------------------------------------------- -# ----------------------------------- - COMPUTATIONAL_INFORMATION = FACT(statut='f', -# ----------------------------------- -# ----------------------------------- - TITLE = SIMP(statut ='f', -# ----------------------------------- - typ = 'TXM', - defaut = '', - fr = """Titre du cas etudie. -Ce titre sera inscrit dans les sorties.""", - ang = """Title of the case being considered.""", - ), -# ----------------------------------- - RELEASE = SIMP(statut ='f', -# ----------------------------------- - typ = 'TXM', - defaut = 'TRUNK', - fr = """Numero de version des bibliotheques utilisees par SISYPHE.""", - ang = """Release of the libraries used by SISYPHE.""", - ), -# ----------------------------------- - DESCRIPTION_OF_LIBRARIES = SIMP(statut ='f', -# ----------------------------------- - typ = 'TXM', min= 7, max= 7, - defaut = 'builds|PPP|lib|sisypheMMMVVV.LLL;builds|PPP|lib|nestorMMMVVV.LLL;builds|PPP|lib|biefMMMVVV.LLL;builds|PPP|lib|hermesMMMVVV.LLL;builds|PPP|lib|damoMMMVVV.LLL;builds|PPP|lib|parallelMMMVVV.LLL;builds|PPP|lib|specialMMMVVV.LLL', - fr = """Description des librairies de SISYPHE""", - ang = """SISYPHE LIBRARIES description""", - ), -# ----------------------------------- - DEFAULT_EXECUTABLE = SIMP(statut ='f', -# ----------------------------------- - typ = 'TXM', - defaut = 'builds|PPP|bin|sisypheMMMVVV.exe', - fr = """Executable par defaut de SISYPHE""", - ang = """Default executable for SISYPHE""", - ), -# ----------------------------------- - DEFAULT_PARALLEL_EXECUTABLE = SIMP(statut ='f', -# ----------------------------------- - typ = 'TXM', - defaut = 'builds|PPP|bin|sisypheMMMVVV.exe', - fr = """Executable par defaut de SISYPHE""", - ang = """Default executable for SISYPHE""", - ), - ), -# ----------------------------------- - COMPUTATION_ENVIRONMENT = FACT(statut='f', -# ----------------------------------- -# ----------------------------------- - DICTIONARY = SIMP(statut ='f', -# ----------------------------------- - typ = ('Fichier','All Files (*)'), - defaut = 'sisyphev6p2.dico', - fr = """Dictionnaire des mots cles.""", - ang = """Key word dictionary.""", - ), - ), -) -# ----------------------------------------------------------------------- -MISCELLANEOUS = PROC(nom= "MISCELLANEOUS",op = None, -# ----------------------------------------------------------------------- -# ----------------------------------- - PARALLEL_PROCESSORS = SIMP(statut ='f', -# ----------------------------------- - typ = 'I', - defaut = [0], - fr = """NOMBRE DE PROCESSEURS EN CALCUL PARALLELE -0 : 1 machine, compilation sans bibliotheque de parallelisme -1 : 1 machine, compilation avec bibliotheque de parallelisme -2 : 2 processeurs ou machines en parallele -etc...""", - ang = """NUMBER OF PROCESSORS FOR PARALLEL PROCESSING -0 : 1 machine, compiling without parallel library -1 : 1 machine, compiling with a parallel library -2 : 2 processors or machines in parallel -etc....""", - ), -# ----------------------------------- - VALIDATION = SIMP(statut ='f', -# ----------------------------------- - typ = bool, - defaut = False, - fr = """Option utilisee principalement pour le dossier de validation. -Si ce mot-cle vaut OUI, les resultats du calcul vont alors etre -compares aux valeurs du fichier de reference. -La comparaison est effectuee par le sous-programme VALIDA qui peut -etre modifie pour realiser, par exemple, une comparaison avec -une solution exacte.""", - ang = """This option is primarily used for the validation -documents. If this keyword is equal to YES, the REFERENCE FILE -is then considered as a reference which the computation is -going to be compared with. -The comparison is made by the subroutine VALIDA, which can be -modified so as to include,for example,a comparison with an -exact solution.""", - ), -# ----------------------------------- - b_VALIDATIONG = BLOC(condition="VALIDATION == True", -# ----------------------------------- -# ----------------------------------- - REFERENCE_FILE_FORMAT = SIMP(statut ='f', -# ----------------------------------- - typ = 'TXM', - into = ['SERAFIN','SERAFIND','MED'], - defaut = 'SERAFIN?', - fr = """Format du fichier de resultats du calcul precedent. -Les valeurs possibles sont : -- SERAFIN : format standard simple precision pour Telemac; -- SERAFIND: format standard double precision pour Telemac; -- MED : format MED base sur HDF5""", - ang = """Previous computation results file format. -Possible values are: -- SERAFIN : classical single precision format in Telemac; -- SERAFIND: classical double precision format in Telemac; -- MED : MED format based on HDF5""", - ), -# ----------------------------------- - REFERENCE_FILE = SIMP(statut ='f', -# ----------------------------------- - typ = ('Fichier','All Files (*)'), max='**', - defaut = '', - fr = """Nom du fichier servant a valider le calcul. -Si VALIDATION = OUI, les resultats du calcul vont etre -comparees aux valeurs contenues dans ce fichier. -La comparaison est effectuee par le sous-programme VALIDA.""", - ang = """Name of the file used to validate the computation. -If VALIDATION = YES, the results of the computation will be -compared with the values of this file. The comparison is -made by the subroutine VALIDA.""", - ), - ), -# ----------------------------------- - NUMBER_OF_PRIVATE_ARRAYS = SIMP(statut ='f', -# ----------------------------------- - typ = 'I', - defaut = [1], - fr = """Nombre de tableaux mis a disposition de l utilisateur""", - ang = """Number of arrays for own user programming""", - ), -# ----------------------------------- - ORIGIN_COORDINATES = SIMP(statut ='f', -# ----------------------------------- - typ = 'I', min= 2, max= 2, - defaut = [0,0], - fr = """Valeur en metres, utilise pour eviter les trop grands nombres, -transmis dans le format Selafin mais pas d''autre traitement pour -l''instant""", - ang = """Value in metres, used to avoid large real numbers, -added in Selafin format, but so far no other treatment""", - ), -# ----------------------------------- - DEBUGGER = SIMP(statut ='f', -# ----------------------------------- - typ = 'I', - defaut = [0], - fr = """Pour imprimer la sequence des appels, mettre 1""", - ang = """If 1, calls of subroutines will be printed in the listing""", - ), -# ----------------------------------- - OPTION_FOR_THE_TREATMENT_OF_TIDAL_FLATS = SIMP(statut ='f', -# ----------------------------------- - typ = 'I', - defaut = 1, - fr = """Utilise si ''BANCS DECOUVRANTS'' est vrai - 1 : EQUATIONS RESOLUES PARTOUT AVEC CORRECTION - SUR LES BANCS DECOUVRANTS - 2 : GEL DES ELEMENTS DECOUVRANTS -Il est conseille de choisir l''option 1 car elle permet de -conserver la masse.""", - ang = """Used if ''TIDAL FLATS'' is true - 1 : EQUATIONS SOLVED EVERYWHERE WITH CORRECTION ON TIDAL FLATS - 2 : DRY ELEMENTS FROZEN -It is recommended to choose 1 since it ensures mass conservation.""", - ), -# ----------------------------------- - NESTOR = SIMP(statut ='f', -# ----------------------------------- - typ = bool, - defaut = [False], - fr = """Pour le couplage avec NESTOR""", - ang = """For coupling with NESTOR""", - ), -# ----------------------------------- - NESTOR_ACTION_FILE = SIMP(statut ='f', -# ----------------------------------- - typ = ('Fichier','All Files (*)'), max='**', - defaut = '', - fr = """Nom du fichier de commandes de nestor""", - ang = """Name of the Nestor steering file""", - ), -# ----------------------------------- - NESTOR_POLYGON_FILE = SIMP(statut ='f', -# ----------------------------------- - typ = ('Fichier','All Files (*)'), max='**', - defaut = '', - fr = """Nom du fichier de polygons de Nestor""", - ang = """Name of the Nestor polygon file""", - ), -# ----------------------------------- - NESTOR_RESTART_FILE = SIMP(statut ='f', -# ----------------------------------- - typ = ('Fichier','All Files (*)'), max='**', - defaut = '', - fr = """Nom du fichier de phydef-cf.cfg.ds de Nestor""", - ang = """Name of the Nestor file phydef-cf.cfg.ds""", - ), -# ----------------------------------- - NESTOR_SURFACE_REFERENCE_FILE = SIMP(statut ='f', -# ----------------------------------- - typ = ('Fichier','All Files (*)'), max='**', - defaut = '', - fr = """Nom du fichier de reference surface de Nestor""", - ang = """Name of the Nestor file which contains the reference - water surface""", - ), -) -# ----------------------------------------------------------------------- -GENERAL = PROC(nom= "GENERAL",op = None, -# ----------------------------------------------------------------------- -# ----------------------------------- - CHECKING_THE_MESH = SIMP(statut ='f', -# ----------------------------------- - typ = bool, - defaut = [False], - fr = """Si oui on appelle le sous-programme checkmesh qui verifie -la coherence du maillage, points superposes, etc.""", - ang = """if this key word is equal to yes, a call to subroutine -checkmesh will look for errors in the mesh, superimposed points, etc.""", - ), -# ----------------------------------- - MAXIMUM_NUMBER_OF_BOUNDARIES = SIMP(statut ='f', -# ----------------------------------- - typ = 'I', - defaut = 30, - fr = """nombre maximal de frontieres differentes dans le maillage. -Sert au dimensionnement de la memoire, a augmenter si necessaire""", - ang = """maximal number of boundaries in the mesh. -Used for dimensioning arrays. Can be increased if needed""", - ), -# ----------------------------------- - FLUXLINE_INPUT_FILE = SIMP(statut ='f', -# ----------------------------------- - typ = ('Fichier','All Files (*)'), - defaut = '', - fr = """Nom du fichier de fluxline""", - ang = """Name of the Fluxline file""", - ), -# ----------------------------------- - FLUXLINE = SIMP(statut ='f', -# ----------------------------------- - typ = bool, - defaut = False, - fr = """FLUXLINE""", - ang = """Use Fluxline to compute flux over lines""", - ), -# ----------------------------------- - CONTROL_SECTIONS = SIMP(statut ='f', -# ----------------------------------- - typ = 'I', min= 3, max= 3, - fr = """Couples de points (numeros globaux dans le maillage) entre -lesquels les debits instantanes et cumules seront donnes.""", - ang = """Couples of points (global numbers in the mesh) defining sections - where the instantaneous and cumulated discharges will be given""", - ), -# ----------------------------------- - STATIONARY_MODE = SIMP(statut ='f', -# ----------------------------------- - typ = bool, - defaut = False, - fr = """(-)""", - ang = """(-)""", - ), -# ----------------------------------- - SHIELDS_PARAMETERS = SIMP(statut ='f', -# ----------------------------------- - typ = 'R', min=10, max=10, - fr = """Utilise pour determiner la valeur de la contrainte critique -d''entrainement (sediments non-cohesifs). En multiclasse, specifier la -valeur pour chaque classe,sinon on prend la meme valeur. Par defaut (si -aucune valeur donnee) le code calcule lui meme le parametre de Shields -en fonction du diametre.""", - ang = """Used to determine the critical bed shear stress value -(non-cohesive sediments). -For multi grain size, -the shields parameter needs to be specified for each class. If only one -value is specified, the shields parameter will be considered constant. -The default option (no shields given in parameter file) -is to calculate the shields parameter as a function of -sand grain diameter (see logical CALAC).""", - ), -# ----------------------------------- - OPTION_FOR_THE_TREATMENT_OF_NON_ERODABLE_BEDS = SIMP(statut ='f', -# ----------------------------------- - typ = 'I', - defaut = [0], - fr = """Ce parametre permet de fixer la methode retenue pour traiter -les fonds non erodables : - 0 = FONDS ERODABLES PARTOUT - 1 = MINIMISATION DU DEBIT SOLIDE POUR LES FONDS NON ERODABLES - 2 = DEBIT SOLIDE NUL POUR LES FONDS NON ERODABLES - 3 = MINIMISATION DU DEBIT SOLIDE EN ELEMENTS FINIS/MASS-LUMPING - 4 = MINIMISATION DU DEBIT SOLIDE EN VOLUMES FINIS -Quand le fond rigide peut etre atteint lors de la simulation, il est -conseille d utiliser la metode 3 ou bien 4""", - ang = """This parameters determines the method used to treat the -non erodable bottoms : - 0 = ERODABLE BOTTOMS EVERYWHERE - 1 = MINIMISATION OF THE SOLID DISCHARGE - 2 = NUL SOLID DISCHARGE - 3 = MINIMISATION OF THE SOLID DISCHARGE IN FE / MASS-LUMPING - 4 = MINIMISATION OF THE SOLID DISCHARGE IN FINITE VOLUMES -When the rigid bed can be reached during the computation, it is advised -to use the method 3 or the method 4""", - ), -# ----------------------------------- - MINIMAL_VALUE_OF_THE_WATER_HEIGHT = SIMP(statut ='f', -# ----------------------------------- - typ = 'R', - defaut = 1.E-3, - fr = """Fixe la valeur minimale de la hauteur d''eau. -Est utilise lorsque le mot cle BANCS DECOUVRANTS est egal a oui.""", - ang = """Sets the minimum value of the water depth. -Is used when the keyword TIDAL FLATS is equal to yes.""", - ), -# ----------------------------------- - TIDAL_FLATS = SIMP(statut ='f', -# ----------------------------------- - typ = bool, - defaut = True, - fr = """permet de supprimer les tests sur les bancs decouvrants, dans -les cas ou l''on est certain qu''il n''y en aura pas. -En cas de doute : oui""", - ang = """When no, the specific treatments for tidal flats -are by-passed. -This spares time, but of course you must be sure that you -have no tidal flats""", - ), -# ----------------------------------- - SECONDARY_CURRENTS = SIMP(statut ='f', -# ----------------------------------- - typ = bool, - defaut = [False], - fr = """Pour prendre en compte les courants secondaires""", - ang = """using the parametrisation for secondary currents""", - ), -# ----------------------------------- - SECONDARY_CURRENTS_FILE = SIMP(statut ='f', -# ----------------------------------- - typ = bool, - defaut = [False], - fr = """Pour prendre en compte les courants secondaires avec FICHIER""", - ang = """The radii needed for the parametrisation of secondary currents -are read from SELAFIN file""", - ), -# ----------------------------------- - GRAIN_FEEDING = SIMP(statut ='f', -# ----------------------------------- - typ = bool, - defaut = False, - fr = """Now suppressed""", - ang = """Now suppressed""", - ), -# ----------------------------------- - STEADY_CASE = SIMP(statut ='f', -# ----------------------------------- - typ = bool, - defaut = False, - fr = """Definit si l''hydrodynamique a prendre en compte est -permanente ou non. Si la valeur OUI est donnee a ce mot-cle, -le dernier enregistrement du fichier du calcul precedent -constituera le champ (h,u,v et eventuellement hauteur et periode -de houle) a prendre en compte.""", - ang = """Specifies steady or unsteady case.If this keyword -is equal to YES, the last record of the previous computation -file will give the values of h,u,v and eventually wave height -and period to be considered.""", - ), -# ----------------------------------- - CONSTANT_FLOW_DISCHARGE = SIMP(statut ='f', -# ----------------------------------- - typ = bool, - defaut = False, - fr = """constant flow discharge or not""", - ang = """constant flow discharge or not""", - ), -# ----------------------------------- - NUMBER_OF_ITERATIONS_FOR_TELEMAC = SIMP(statut ='f', -# ----------------------------------- - typ = 'I', - defaut = 500, - fr = """Nombre d''iteration a effecuter avec telemac pour obtenir -un nouvel ecoulement quasi stationnaire. -A utiliser avec l''option constant flow discharge""", - ang = """Number of iteration to do wtih telemac in order to obtain a -new quasi-stationary flow. -To use with the option constant flow discharge""", - ), -# ----------------------------------- - CRITERION_TO_UPDATE_THE_FLOW = SIMP(statut ='f', -# ----------------------------------- - typ = 'R', - defaut = 0.1, - fr = """Critere (Hauteur du fond>CRIT\_CFD*Hauteur d''eau) pour mettre -a jour l''ecoulement. -A utiliser avec l''option constant flow discharge""", - ang = """Criterion (Bottom height>CRIT\_CFD*Water depth) in order to -update the flow. -To use with the option constant flow discharge""", - ), -# ----------------------------------- - CRITICAL_EVOLUTION_RATIO = SIMP(statut ='f', -# ----------------------------------- - typ = 'R', - defaut = 1., - fr = """Definit le moment ou l''extrapolation du champ de courant -par SISYPHE n''est plus valable. Ce nombre represente le rapport -maximum entre les evolutions et la hauteur d''eau admissible. -Generalement, on admet qu''une evolution inferieure a 0,1 fois -la hauteur d''eau ne modifie pas sensiblement la repartition -du champ de courant.""", - ang = """Specifies the moment when the SISYPHE extrapolation current -filed is no more valid. This value set the maximum ratio between -evolutions and the water depth. -Generally, it is considered that an evolution lower than 0,1 time the -water depth does not perceptibly modify the current field distribution.""", - ), -# ----------------------------------- - NUMBER_OF_BED_LOAD_MODEL_LAYERS = SIMP(statut ='f', -# ----------------------------------- - typ = 'I', - defaut = 2, - fr = """Comme son nom l''indique..., defaut NOMBLAY=2""", - ang = """This is the given allocation limit, secure default NOMLAY=2""", - ), -# ----------------------------------- - MASS_CONCENTRATION = SIMP(statut ='f', -# ----------------------------------- - typ = bool, - defaut = [False], - fr = """par defaut, le code calcule les concentrations volumiques. -Ce mot cle permet dimprimer et de relire des concentrations en g/l. -Les concentrations imposees aux limites -(fichier condim, concentration de condim\_susp) -sont alors aussi donnees par l utilisateur en g/l et -reconverties en concentration volumique par le code.""", - ang = """Determines if concentrations (input and output) -are mass concentrations in g/l or adimensionnal volume concentrations -(default option).""", - ), -# ----------------------------------- - EFFECT_OF_WAVES = SIMP(statut ='f', -# ----------------------------------- - typ = bool, - defaut = False, - fr = """Prend en compte l''effet de la houle sur le transport solide""", - ang = """Takes into account the effect of waves""", - ), -# ----------------------------------- - MIXED_SEDIMENT = SIMP(statut ='f', -# ----------------------------------- - typ = bool, - defaut = [False], - fr = """Melange sable vase: 2 classes seulement""", - ang = """Mixture of cohesive and non cohesive sediment : 2 class only""", - ), -) -# ----------------------------------------------------------------------- -USELESS = PROC(nom= "USELESS",op = None, -# ----------------------------------------------------------------------- -# ----------------------------------- - VECTOR_LENGTH = SIMP(statut ='f', -# ----------------------------------- - typ = 'I', - defaut = 1, - fr = """longueur du vecteur pour les machines vectorielles.""", - ang = """vector length on vector machines.""", - ), -# ----------------------------------- - STEERING_FILE = SIMP(statut ='o', -# ----------------------------------- - typ = ('Fichier','All Files (*)'), max='**', - defaut = '', - fr = """Nom du fichier contenant les parametres du calcul -a realiser. Il peut-etre ecrit par l''utilisateur avec EDAMOX.""", - ang = """Name of the file containing the parameters -of the computation. Could be written by the user with EDAMOX.""", - ), -# ----------------------------------- - MEAN_DIAMETER_OF_THE_SEDIMENT = SIMP(statut ='o', -# ----------------------------------- - typ = 'R', min=10, max=10, - defaut = [.01,.01,.01,.01,.01,.01,.01,.01,.01,.01], - fr = """Sets value of diameter dm for particular size class.""", - ang = """Sets value of diameter dm for particular size class.""", - ), -# ----------------------------------- - GEOMETRY_FILE_BINARY = SIMP(statut ='o', -# ----------------------------------- - typ = 'TXM', - defaut = 'STD', - fr = """Type de binaire pour l''ecriture du fichier de geometrie. -Ce type depend de la machine ou ce fichier est genere. -Les differentes valeurs sont : - IBM, pour un fichier sur IBM (depuis un CRAY) - I3E, pour un fichier sur HP (depuis un CRAY) - STD, pour le type de binaire de la machine ou l''utilisateur - travaille. Les commandes standard READ et WRITE sont - alors utilisees.""", - ang = """Binary file type used for writing the geometry file. -This type depends on the machine on which the file was generated. -The possible values are as follows : - IBM, for a file on an IBM (from a CRAY) - I3E, for a file on an HP (from a CRAY) - STD, binary type of the machine on which the user is working. - The normal READ and WRITE commands are then used.""", - ), -# ----------------------------------- - HYDRODYNAMIC_FILE_BINARY = SIMP(statut ='o', -# ----------------------------------- - typ = 'TXM', - defaut = 'STD', - fr = """obsolete""", - ang = """obsolete""", - ), -# ----------------------------------- - BINARY_OF_THE_PREVIOUS_SEDIMENTOLOGICAL_COMPUTATION_FILE = SIMP(statut ='o', -# ----------------------------------- - typ = 'TXM', - defaut = 'STD', - fr = """Type de binaire pour l''ecriture du fichier precedent -sedimentologique. Ce type depend de la machine ou le fichier -precedent sedimentologique est genere. Les differentes valeurs -sont identiques a celles du fichier de geometrie.""", - ang = """Binary file type used for writing the previous -sedimentological computation results file. -This type depends on the machine on which the file -was generated. The possible values are the same as for -the geometry file.""", - ), -# ----------------------------------- - RESULTS_FILE_BINARY = SIMP(statut ='o', -# ----------------------------------- - typ = 'TXM', - defaut = 'STD', - fr = """Type de binaire pour l''ecriture du fichier des resultats. -Ce type depend de la machine ou le fichier des resultats est genere. -Les differentes valeurs sont identiques a celles du fichier de -geometrie.""", - ang = """Binary file type used for writing the results file. -This type depends on the machine on which the file was generated. -The possible values are the same as for the geometry file.""", - ), -# ----------------------------------- - REFERENCE_FILE_BINARY = SIMP(statut ='o', -# ----------------------------------- - typ = 'TXM', - defaut = 'STD', - fr = """Type de binaire pour l''ecriture du fichier de reference. -Ce type depend de la machine ou le fichier de reference est genere. -Les differentes valeurs sont identiques a celles du fichier -de geometrie.""", - ang = """Binary file type used for writing the reference file. -This type depends on the machine on which the file was generated. -The possible values are the same as for the geometry file.""", - ), -) -# ----------------------------------------------------------------------- -INPUT_OUTPUT__FILES = PROC(nom= "INPUT_OUTPUT__FILES",op = None, -# ----------------------------------------------------------------------- -# ----------------------------------- - GEOMETRY_FILE_FORMAT = SIMP(statut ='f', -# ----------------------------------- - typ = 'TXM', - into = ['SERAFIN','SERAFIND','MED'], - defaut = 'SERAFIN?', - fr = """Format du fichier de geometrie. -Les valeurs possibles sont : -- SERAFIN : format standard simple precision pour Telemac; -- SERAFIND: format standard double precision pour Telemac; -- MED : format MED base sur HDF5""", - ang = """Geometry file format. -Possible values are: -- SERAFIN : classical single precision format in Telemac; -- SERAFIND: classical double precision format in Telemac; -- MED : MED format based on HDF5""", - ), -# ----------------------------------- - NAMES = FACT(statut='f', -# ----------------------------------- -# ----------------------------------- - GEOMETRY_FILE = SIMP(statut ='f', -# ----------------------------------- - typ = ('Fichier','All Files (*)'), max='**', - fr = """Nom du fichier contenant le maillage du calcul a realiser.""", - ang = """Name of the file containing the mesh. This file may also -contain the topography and the friction coefficients.""", - ), -# ----------------------------------- - HYDRODYNAMIC_FILE = SIMP(statut ='f', -# ----------------------------------- - typ = ('Fichier','All Files (*)'), max='**', - defaut = '', - fr = """Nom d''un fichier contenant les resultats d''un calcul -precedent realise sur le meme maillage. L''hydrodynamique -du calcul sera donnee, soit par le dernier pas de temps -de ce fichier si le calcul est permanent, -soit par les pas de temps representant la maree -ou la crue consideree si le calcul est instationnaire -Remarque : Si l''on modelise le transport sous l''action -combinee du courant et de la houle (mot-cle DE -TRANSPORT SOLIDE =4) ce fichier doit contenir non -seulement les donnees hydrodynamiques(hauteur d''eau,vitesses) -mais aussi les donnees de houle (hauteur de houle, periode de -houle).Les donnees de houle peuvent toutefois etre imposees -par l''utilisateur dans le sous programme CONDIM.""", - ang = """Name of a file containing the results a previous -computation made on the same mesh. The hydrodynamic will -be given by the last record of the file if the case is -steady or, if the case is unsteady, by the time steps -describing the tide or flood. -Remark :If the bed-load transport under the combined -action of currents and wave is modelled (keyword -BED-LOAD TRANSPORT FORMULA set equal to 4), this file -must contain not only the hydrodynamic data -(water height, velocities) but also the wave data -(wave height, wave period).However, the user has also - the possibility to give the values -of the wave data in the subroutine CONDIM.""", - ), -# ----------------------------------- - NAMES_OF_PRIVATE_VARIABLES = SIMP(statut ='f', -# ----------------------------------- - typ = 'TXM', min= 2, max= 2, - fr = """Noms des variables privees en 32 caracteres, 16 pour le nom - 16 pour l''unite. Elles correspondent au bloc PRIVE - et peuvent etre lues dans le fichier de geometrie si elles - y sont presentes avec leur nom""", - ang = """Name of private variables in 32 characters, 16 for the name, - 16 for the unit. They are stored in the block PRIVE and - can be read in the geometry file if they are here with their - name""", - ), -# ----------------------------------- - LIQUID_BOUNDARIES_FILE = SIMP(statut ='f', -# ----------------------------------- - typ = ('Fichier','All Files (*)'), max='**', - defaut = '', - fr = """Fichier de variations en temps des conditions aux limites. -Les donnees de ce fichier sont sur le canal SIS\_FILES(SISLIQ)%LU.""", - ang = """Variations in time of boundary conditions. Data of this file -are read on channel SIS\_FILES(SISLIQ)%LU.""", - ), -# ----------------------------------- - LIST_OF_FILES = SIMP(statut ='f', -# ----------------------------------- - typ = 'TXM', min=21, max=21, - defaut = 'GEOMETRY FILE;BOUNDARY CONDITIONS FILE;RESULTS FILE;BOTTOM TOPOGRAPHY FILE;REFERENCE FILE;PREVIOUS SEDIMENTOLOGICAL COMPUTATION FILE;PREVIOUS COMPUTATION FILE;HYDRODYNAMIC FILE;WAVE FILE;FORTRAN FILE;STEERING FILE;NESTOR ACTION FILE;NESTOR POLYGON FILE;NESTOR SURFACE REFERENCE FILE;NESTOR RESTART FILE;DICTIONARY;SECTIONS INPUT FILE;SECTIONS OUTPUT FILE;LIQUID BOUNDARIES FILE;FLUXLINE INPUT FILE;C-VSM RESULTS FILE', - fr = """""", - ang = """""", - ), - ), -) -# ----------------------------------------------------------------------- -RESULTS = PROC(nom= "RESULTS",op = None, -# ----------------------------------------------------------------------- -# ----------------------------------- - RESULTS_FILE_FORMAT = SIMP(statut ='f', -# ----------------------------------- - typ = 'TXM', - into = ['SERAFIN','SERAFIND','MED'], - defaut = 'SERAFIN?', - fr = """Format du fichier de resultats. -Les valeurs possibles sont : -- SERAFIN : format standard simple precision pour Telemac; -- SERAFIND: format standard double precision pour Telemac; -- MED : format MED base sur HDF5""", - ang = """Results file format. Possible values are: -- SERAFIN : classical single precision format in Telemac; -- SERAFIND: classical double precision format in Telemac; -- MED : MED format based on HDF5""", - ), -# ----------------------------------- - RESULTS_FILE = SIMP(statut ='f', -# ----------------------------------- - typ = ('Fichier','All Files (*)','Sauvegarde'), max='**', - fr = """Nom du fichier dans lequel seront ecrits les resultats avec -une periodicite donnee par le mot cle PERIODE DE SORTIE GRAPHIQUE.""", - ang = """Name of the file into wich the computation results shall be -written, the periodicity being given by the keyword -GRAPHIC PRINTOUT PERIOD.""", - ), -# ----------------------------------- - VARIABLES_TO_BE_PRINTED = SIMP(statut ='f', -# ----------------------------------- - typ = 'TXM', max='**', - into = ["velocity along x axis (m/s)","velocity along y axis (m/s)","wawe celerity (m/s)","water depth (m)","free surface elevation (m)","bottom elevation (m)","Froude number","scalar flowrate of fluid (m2/s)","flowrate along x axis (m2/s)","flowrate along y axis (m2/s)","bed-load discharge (m2/s)","bed-load discharge along x axis (m2/s)","bed-load discharge along y axis (m2/s)","bottom evolution (m)","non erodable bottom","bed friction coefficient (m if Nikuradse)","mean bottom friction (N/m2)","wave angle with axis Oy (deg)","wave height","wave period","fraction of sediment of class i in the first layer","fraction of sediment of class i in the second layer","bed load transport rate of sediment of class i", "thicknes of bed layer i", "concentration of bed layer i ","concentration for class i","saturated concentration (kg/m3)","supplementary variable A","supplementary variable G","supplementary variable L","supplementary variable O"], - defaut = '', - fr = """Nom des variables que l''utilisateur desire ecrire sur -le lisring. Meme possibilites que pour les sorties graphiques.""", - ang = """Names of variables the user wants to write on the listing. -Each variable is represented by a letter in the same manner as -it is done in the graphic results file.""", - ), -# ----------------------------------- - GRAPHIC_PRINTOUT_PERIOD = SIMP(statut ='f', -# ----------------------------------- - typ = 'I', - defaut = 1, - fr = """Determine la periode en nombre de pas de temps d''impression -des ''VARIABLES POUR LES SORTIES GRAPHIQUES'' (voir ce mot-cle) -dans le ''FICHIER DES RESULTATS''.""", - ang = """Determines, in number of time steps, the printout period for -the ''VARIABLES FOR GRAPHIC PRINTOUTS'' in the ''RESULTS FILE''.""", - ), -# ----------------------------------- - LISTING_PRINTOUT_PERIOD = SIMP(statut ='f', -# ----------------------------------- - typ = 'I', - defaut = 1, - fr = """Determine la periode en nombre de pas de temps d''impression -des ''VARIABLES A IMPRIMER'' (voir ce mot-cle). -La sortie des resultats est effectuee sur le fichier listing -(fichier cas\_numerodeprocessus.sortie sur station de travail).""", - ang = """Determines, in number of time steps, the printout period of -the ''VARIABLES TO BE PRINTED''. -The results are printed out on the listing file -(file cas\_numerodeprocessus.sortie on a workstation).""", - ), -# ----------------------------------- - MASS_BALANCE = SIMP(statut ='f', -# ----------------------------------- - typ = bool, - defaut = False, - fr = """Determine si oui ou non le bilan de masse est realise.""", - ang = """Determines whether a check of the mass-balance over the domain -is made or not""", - ), -# ----------------------------------- - SECTIONS_OUTPUT_FILE = SIMP(statut ='f', -# ----------------------------------- - typ = ('Fichier','All Files (*)','Sauvegarde'), - defaut = '', - fr = """sections output file, written by the master""", - ang = """sections output file, written by the master""", - ), -# ----------------------------------- - C_VSM_RESULTS_FILE = SIMP(statut ='f', -# ----------------------------------- - typ = ('Fichier','All Files (*)','Sauvegarde'), max='**', - defaut = '', - fr = """Nom du fichier dans lequel seront ecrits les resultats C-VSM du -calcul avec la periodicite donnee par le mot cle -\telkey{C-VSM FULL PRINTOUT PERIOD}.""", - ang = """Name of the file into which the C-VSM results of the computation -are written, the periodicity being given by the keyword: -\telkey{C-VSM FULL PRINTOUT PERIOD}.""", - ), -# ----------------------------------- - C_VSM_RESULTS_FILE_FORMAT = SIMP(statut ='f', -# ----------------------------------- - typ = 'TXM', - into = ['SERAFIN','SERAFIND','MED'], - defaut = 'SERAFIN', - fr = """Format du \telkey{FICHIER DES C-VSM}. -Les valeurs possibles sont : -\begin{itemize} -\item SERAFIN : format standard simple precision pour \tel ; -\item SERAFIND: format standard double precision pour \tel ; -\item MED : format MED double precision base sur HDF5. -\end{itemize}""", - ang = """Format of the \telkey{C-VSM RESULT FILE}. Possible choices are: -\begin{itemize} -\item SERAFIN : classical single precision format in \tel, -\item SERAFIND: classical double precision format in \tel, -\item MED : MED double precision format based on HDF5. -\end{itemize}""", - ), -) -# ----------------------------------------------------------------------- -DATA_FILES = PROC(nom= "DATA_FILES",op = None, -# ----------------------------------------------------------------------- -# ----------------------------------- - HYDRODYNAMIC_FILE_FORMAT = SIMP(statut ='f', -# ----------------------------------- - typ = 'TXM', - into = ['SERAFIN','SERAFIND','MED'], - defaut = 'SERAFIN?', - fr = """Format du fichier de resultats du calcul precedent. -Les valeurs possibles sont : -- SERAFIN : format standard simple precision pour Telemac; -- SERAFIND: format standard double precision pour Telemac; -- MED : format MED base sur HDF5""", - ang = """Previous computation results file format. -Possible values are: -- SERAFIN : classical single precision format in Telemac; -- SERAFIND: classical double precision format in Telemac; -- MED : MED format based on HDF5""", - ), -# ----------------------------------- - WAVE_FILE_FORMAT = SIMP(statut ='f', -# ----------------------------------- - typ = 'TXM', - into = ['SERAFIN','SERAFIND','MED'], - defaut = 'SERAFIN?', - fr = """Format du fichier de houle. -Les valeurs possibles sont : -- SERAFIN : format standard simple precision pour Telemac; -- SERAFIND: format standard double precision pour Telemac; -- MED : format MED base sur HDF5""", - ang = """Wave file format. -Possible values are: -- SERAFIN : classical single precision format in Telemac; -- SERAFIND: classical double precision format in Telemac; -- MED : MED format based on HDF5""", - ), -# ----------------------------------- - FORTRAN_FILE = SIMP(statut ='f', -# ----------------------------------- - typ = ('Fichier','All Files (*)'), max='**', - defaut = 'DEFAUT', - fr = """Nom du fichier FORTRAN a soumettre.""", - ang = """Name of FORTRAN file to be submitted.""", - ), -# ----------------------------------- - BOUNDARY_CONDITIONS_FILE = SIMP(statut ='f', -# ----------------------------------- - typ = ('Fichier','All Files (*)'), max='**', - fr = """Nom du fichier contenant les types de conditions aux limites. -Ce fichier est rempli de facon automatique par le mailleur au moyen de -couleurs affectees aux noeuds des frontieres du domaine de calcul.""", - ang = """Name of the file containing the types of boundary conditions. -This file is filled automatically by the mesh generator through -colours that are assigned to the computation domain boundary nodes.""", - ), -# ----------------------------------- - WAVE_FILE = SIMP(statut ='f', -# ----------------------------------- - typ = ('Fichier','All Files (*)'), max='**', - defaut = '', - fr = """Nom d''un fichier contenant les resultats d''un calcul -precedent TOMAWAC realise sur le meme maillage. La houle sera donnee, -par le dernier pas de temps -de ce fichier . Seules les donnees de houle de ce fichier -seront conservees (hauteur de houle, periode de -houle, angle de la houle). -Les donnees hydrodynamiques(hauteur d''eau,vitesses) seront lues -dans le fichier hydrodynamique (Verifier la compatibilite !!!) -Les donnees de houle peuvent aussi etre imposees -par l''utilisateur dans le sous programme CONDIM\_SISYPHE. -ou encore lues dans le fichier hydrodynamique.""", - ang = """Name of a file containing the results a previous -TOMAWAC computation made on the same mesh. The wave data (wave height, - wave period, wave angle ) will -be given by the last record of the file. -The user has to verify that both informations (wave and current data) -are consistent. -Remark :The wave data can also be specified in - the hydrodynamic file. the user has also - the possibility to give the values -of the wave data in the subroutine CONDIM. -This is recommended for non-steady flow simulation.""", - ), -# ----------------------------------- - BOTTOM_TOPOGRAPHY_FILE = SIMP(statut ='f', -# ----------------------------------- - typ = ('Fichier','All Files (*)'), max='**', - defaut = '', - fr = """Nom du fichier facultatif contenant la bathymetrie -associee au maillage.""", - ang = """Name of the possible file containing the bathymetric data.""", - ), -# ----------------------------------- - SECTIONS_INPUT_FILE = SIMP(statut ='f', -# ----------------------------------- - typ = ('Fichier','All Files (*)'), - defaut = '', - fr = """sections input file, partitioned""", - ang = """sections input file, partitioned""", - ), -) -# ----------------------------------------------------------------------- -INITIAL_CONDITIONS = PROC(nom= "INITIAL_CONDITIONS",op = None, -# ----------------------------------------------------------------------- -# ----------------------------------- - PREVIOUS_SEDIMENTOLOGICAL_COMPUTATION_FILE_FORMAT = SIMP(statut ='f', -# ----------------------------------- - typ = 'TXM', - into = ['SERAFIN','SERAFIND','MED'], - defaut = 'SERAFIN?', - fr = """Format du fichier de resultats du calcul precedent. -Les valeurs possibles sont : -- SERAFIN : format standard simple precision pour Telemac; -- SERAFIND: format standard double precision pour Telemac; -- MED : format MED base sur HDF5""", - ang = """Previous computation results file format. -Possible values are: -- SERAFIN : classical single precision format in Telemac; -- SERAFIND: classical double precision format in Telemac; -- MED : MED format based on HDF5""", - ), -# ----------------------------------- - PREVIOUS_SEDIMENTOLOGICAL_COMPUTATION_FILE = SIMP(statut ='f', -# ----------------------------------- - typ = ('Fichier','All Files (*)'), max='**', - defaut = '', - fr = """Nom d''un fichier contenant les resultats d''un -calcul precedent sedimentologique realise sur le meme maillage -et dont le dernier pas de temps enregistre va fournir les -conditions initiales pour une suite de de calcul.""", - ang = """Name of a file containing the results of an -earlier sedimentological computation which was made -on the same mesh. The last recorded time step will provide -the initial conditions for the new computation.""", - ), -# ----------------------------------- - COMPUTATION_CONTINUED = SIMP(statut ='f', -# ----------------------------------- - typ = bool, - defaut = [False], - fr = """Determine si le calcul en cours est independant de tout autre -resultat ou est une reprise effectuee a partir du resultat d''un calcul -precedent. -NON : Il s''agit du premier passage pour ce calcul et il est necessaire -de definir un jeu complet de conditions initiales -OUI : Il s''agit d''une reprise de calcul : -les conditions initiales sont constituees par le dernier pas de temps du -FICHIER PRECEDENT SEDIMENTOLOGIQUE du fichier des parametres utilise -pour soumettre le calcul. -Par contre, l''ensemble des donnees du fichier des parametres -peuvent etre redefinies -De meme, il est necessaire de definir des conditions aux limites""", - ang = """Determines whether the computation under way is an independent -result or is following an earlier result. -NO: It is the first run for this computation and a whole set of -initial conditions should be defined. -YES: It follows a former computation: -the initial conditions consist in the last time step of the -PREVIOUS COMPUTATION FILE -in the steering file used for submitting the computation. -All the data from the steering file may be defined once again, which -provides an opportunity to change, for example, the time step. -It is also possible to define new boundary conditions.""", - ), -) -# ----------------------------------------------------------------------- -INPUT_OUTPUT__GRAPHICS_AND_LISTING = PROC(nom= "INPUT_OUTPUT__GRAPHICS_AND_LISTING",op = None, -# ----------------------------------------------------------------------- -# ----------------------------------- - VARIABLES_FOR_GRAPHIC_PRINTOUTS = SIMP(statut ='f', -# ----------------------------------- - typ = 'TXM', min=0, max='**', - into = ["velocity along x axis (m/s)","velocity along y axis (m/s)","wawe celerity (m/s)","water depth (m)","free surface elevation (m)","bottom elevation (m)","Froude number","scalar flowrate of fluid (m2/s)","flowrate along x axis (m2/s)","flowrate along y axis (m2/s)","bed-load discharge (m2/s)","bed-load discharge along x axis (m2/s)","bed-load discharge along y axis (m2/s)","bottom evolution (m)","non erodable bottom","total bed roughness (m)","Bed Shear stress (Totalfriction) (N/m2)", "Skin friction correction factor", "Mean grain diameter","wave angle with axis Oy (deg)","suspended load transport rate (m2/s)","bed load transport rate (m2/s)","wave height","wave period","wave orbital velocity (m/s)","fraction of sediment of class i in the first layer","fraction of sediment of class i in the second layer","fraction of sediment of class i in the k layer","thickness of the k layer","concentration of bed layer k","bed load transport rate of sediment of class i","concentration volumic or mass concentration for class i","saturated concentration (kg/m3)","supplementary variable A","supplementary variable G","supplementary variable L","supplementary variable O"], - defaut = ["velocity along x axis (m/s)","velocity along y axis (m/s)","water depth (m)","free surface elevation (m)","bottom elevation (m)","non erodable bottom","bottom evolution (m)"], - fr = """Noms des variables que l''utilisateur veut ecrire dans -le fichier des resultats. -Chaque variable est representee par une lettre. -Le choix des separateurs est libre. Voir CHOIX ci-dessus. - On peut utiliser *, *A* signifie : toutes les fractions""", - ang = """Names of variables the user wants to write -into the graphic results file. -Each variable is represented by a letter. See CHOIX1 above. - One can use *, *A* means all fractions""", - ), -) -# ----------------------------------------------------------------------- -TIME = PROC(nom= "TIME",op = None, -# ----------------------------------------------------------------------- -# ----------------------------------- - STARTING_TIME_OF_THE_HYDROGRAM = SIMP(statut ='f', -# ----------------------------------- - typ = 'R', - defaut = -1000., - fr = """Ce mot cle fixe le temps auquel le calcul SISYPHE debute -sauf en cas de suite de calcul car le temps initial est -alors lu sur le FICHIER PRECEDENT SEDIMENTOLOGIQUE. En non -permanent, ce mot cle designe de plus le temps correspondant -au premier enregistrement a lire dans le "fichier du calcul -precedent" contenant les donnees hydrodynamiques.""", - ang = """this key word specifies the time when SISYPHE computation -begins except when a computation is continued (the initial time -is then read on the "previous sendimentological file". -For an unsteady case, it moreover specifies the time which -corresponds to the 1st record to be read in the "previous -computation file"(the file which contains the hydrodynamic - data).""", - ), -# ----------------------------------- - NUMBER_OF_TIME_STEPS = SIMP(statut ='f', -# ----------------------------------- - typ = 'I', - defaut = 1, - fr = """Definit, en permanent, le nombre de pas de temps effectues -lors de l''execution du code. En non permanent, ce mot-cle -n''est pas utilise.""", - ang = """Specifies, for a steady case, the number of time steps -performed when running the code. For an unsteady case, this -keyword is not used.""", - ), -# ----------------------------------- - TIME_STEP = SIMP(statut ='f', -# ----------------------------------- - typ = 'R', - defaut = 1., - fr = """Definit le pas de temps du calcul en secondes en -permanent. En non permanent, ce pas de temps est donne par le -pas de sortie graphique du fichier precedent. Mais si aucun -nom n''est donne pour le ''FICHIER DU CALCUL PRECEDENT'' (les -variables hydrodynamiques pouvant etre imposees dans CONDIM), -la valeur du pas de temps donnee dans le fichier des -parametres est la aussi consideree. -Remarque : si le mot-cle "PAS DE TEMPS VARIABLE EST EGAL A OUI" -le pas de temps necessaire a une bonne resolution est calcule -dans le code et des sous iterations sont realisees.""", - ang = """Specifies the time step in seconds in steady case. -For an unsteady case, this time step is fixed by the graphic -printout period of the previous computation file, except if -no name is given for the ''HYDRODYNAMIC FILE'' in -the steering file. -Remark : If the keyword ''VARIABLE TIME STEP'' is set equal -to yes, the time step required for a correct resolution is -computed in the code and sub-iterations are performed""", - ), -# ----------------------------------- - NUMBER_OF_SUB_ITERATIONS = SIMP(statut ='f', -# ----------------------------------- - typ = 'I', - defaut = [1], - fr = """permet de realiser des sous iterations au sein de la -boucle en temps (En mode non permananet). -Peut etre utile en non permanent lorsque le -pas de temps qui est donne par le pas de sortie graphique du -FICHIER DE CALCUL PRECEDENT est trop grand.""", - ang = """enable to realize sub-iteration inside a time step -(this key word is not used if the key word VARIABLE TIME-STEP -is set equal to yes). It could be useful for a non steady case -be useful for a non steady case when the time step which is fixed -by the graphic printout period of the HYDRODYNAMIC FILE -is too large.""", - ), -# ----------------------------------- - NUMBER_OF_TIDES_OR_FLOODS = SIMP(statut ='f', -# ----------------------------------- - typ = 'I', - defaut = 1, - fr = """En non permanent, definit le nombre de marees ou de crues -effectuees lors de l''execution du code.En permanent, ce mot-cle -n''est pas utilise.""", - ang = """For an unsteady case, specifies the number of tides or -floods performed when running the code. For a steady case, this -keyword is not used.""", - ), -# ----------------------------------- - ORIGINAL_HOUR_OF_TIME = SIMP(statut ='f', -# ----------------------------------- - typ = 'I', min= 3, max= 3, - defaut = [0,0,0], - fr = """Permet de fixer l''heure d''origine des temps du modele lors -de la prise en compte de la force generatrice de la maree.""", - ang = """Give the time of the time origin of the model when taking into -account of the tide generator force.""", - ), -# ----------------------------------- - ORIGINAL_DATE_OF_TIME = SIMP(statut ='f', -# ----------------------------------- - typ = 'I', min= 3, max= 3, - defaut = [0,0,0], - fr = """Permet de fixer la date d''origine des temps du modele lors -de la prise en compte de la force generatrice de la maree.""", - ang = """Give the date of the time origin of the model when taking into -account the tide generating force.""", - ), -# ----------------------------------- - TIDE_PERIOD = SIMP(statut ='f', -# ----------------------------------- - typ = 'R', - defaut = 44640., - fr = """Fixe la valeur de la periode de l''evenement -(maree ou crue) en non permanent.""", - ang = """Sets the period of the event (tide or flood) -for an unsteady case.""", - ), -) -# ----------------------------------------------------------------------- -EQUATIONS__BOUNDARY_CONDITIONS = PROC(nom= "EQUATIONS__BOUNDARY_CONDITIONS",op = None, -# ----------------------------------------------------------------------- -# ----------------------------------- - PRESCRIBED_SOLID_DISCHARGES = SIMP(statut ='f', -# ----------------------------------- - typ = 'R', min= 2, max= 2, - fr = """ Valeurs des debits solides imposes aux frontieres -liquides entrantes (m3/s sans les vides). -Une valeur par frontiere liquide""", - ang = """Values of prescribed solid discharges -at the inflow boundaries (m3/s without voids). -One value per liquid boundary""", - ), -) -# ----------------------------------------------------------------------- -SOLVER = PROC(nom= "SOLVER",op = None, -# ----------------------------------------------------------------------- -# ----------------------------------- - SOLVER = SIMP(statut ='f', -# ----------------------------------- - typ = 'TXM', - into = ["conjugate gradient on a normal equation","conjugate gradient","conjugate residual","minimum error","cgstab","gmres"], - defaut = ["conjugate gradient on a normal equation"], - fr = """Permet de choisir le solveur utilise pour la resolution de -l''equation de continuite sur le fond (ce parametre n''est utilise -que si le mot cle MASS LUMPING est egal a faux). Toutes les methodes -proposees actuellement s''apparentent au Gradient Conjugue. Ce sont : - 1 : gradient conjugue - 2 : residu conjugue - 3 : gradient conjugue sur equation normale - 4 : erreur minimale - 5 : gradient conjugue carre (non programme) - 6 : gradient conjugue carre stabilise (cgstab) - 7 : gmres (voir aussi option du solveur)""", - ang = """Makes it possible to select the solver used for solving the -bottom evolution equation (Used only if the key-word MASS LUMPING -is equal to false). All the currently available methods are -variations of the Conjugate Gradient method. They are as follows: -1: conjugate gradient -2: conjugate residual -3: conjugate gradient on a normal equation -4: minimum error -5: conjugate gradient squared (not implemented) -6: conjugate gradient squared stabilised (cgstab) -7: gmres (see option for solver)""", - ), -# ----------------------------------- - SOLVER_OPTION = SIMP(statut ='f', -# ----------------------------------- - typ = 'I', - defaut = [2], - fr = """si le solveur est GMRES (7) le mot cle est la dimension de -l''espace de KRILOV (valeurs conseillees entre 2 et 15). Ce parametre -n''est utilise que si le mot cle MASS LUMPING est egal a faux.""", - ang = """WHEN GMRES (7) IS CHOSEN, DIMENSION OF THE KRYLOV SPACE -TRY VALUES BETWEEN 2 AND 15. Used only if the key-word MASS LUMPING -is equal to false""", - ), -# ----------------------------------- - PRECONDITIONING = SIMP(statut ='f', -# ----------------------------------- - typ = 'TXM', - into = ["diagonal","no preconditioning","diagonal condensee","crout","diagonal and crout","diagonal condensed and crout"], - defaut = ["diagonal"], - fr = """Permet de preconditionner le systeme lineaire afin d''accelerer -la convergence lors de sa resolution (ce parametre n''est utilise que -si le mot cle MASS LUMPING est egal a faux). - - 0 : pas de preconditionnement; - - 2 : preconditionnement diagonal. - - 3 : preconditionnement diagonal-bloc - - 7 : preconditionnement de Crout par element. -Certains preconditionnements sont cumulables -(les diagonaux 2 ou 3 avec les autres) -Pour cette raison on ne retient que les nombres premiers pour -designer les preconditionnements. Si l''on souhaite en cumuler -plusieurs on formera le produit des options correspondantes.""", - ang = """Choice of the preconditioning in the resolution of the linear -system that the convergence is speeded up when it is being solved (Used -only if the key-word MASS LUMPING is equal to false). - 0: no preconditioning - 2: diagonal preconditioning - 3: diagonal preconditioning with the condensed matrix - 7: Crout''s preconditioning per element (not implemented). -Some operations (either 2 or 3 diagonal preconditioning) can be -performed concurrently with the others. -Only prime numbers are therefore kept to denote the preconditioning -operations. When several of them are to be performed concurrently, -the product of relevant options shall be made.""", - ), -# ----------------------------------- - MAXIMUM_NUMBER_OF_ITERATIONS_FOR_SOLVER = SIMP(statut ='f', -# ----------------------------------- - typ = 'I', - defaut = [60], - fr = """Les algorithmes utilises pour la resolution de l''etape de -propagation etant iteratifs; il est necessaire de limiter le nombre -d''iterations autorisees. -Remarque : Ce parametre n''est utilise que si le mot cle MASS LUMPING -est egal a faux.""", - ang = """Since the algorithms used for solving the propagation step are -iterative, the allowed number of iterations should be limited. -NOTE:Used only if the key-word MASS LUMPING is equal to false .""", - ), -# ----------------------------------- - SOLVER_OPTION_FOR_SUSPENSION = SIMP(statut ='f', -# ----------------------------------- - typ = 'I', - defaut = [2], - fr = """Parametre supplementaire disponible pour le solveur. -Dans le cas du solveur gmres, il s''agit de la dimension -de l''espace de Krylov.""", - ang = """""", - ), -# ----------------------------------- - MAXIMUM_NUMBER_OF_ITERATIONS_FOR_SOLVER_FOR_SUSPENSION = SIMP(statut ='f', -# ----------------------------------- - typ = 'I', - defaut = [50], - fr = """""", - ang = """""", - ), -# ----------------------------------- - SOLVER_ACCURACY = SIMP(statut ='f', -# ----------------------------------- - typ = 'R', - defaut = [1.E-7], - fr = """Precision demandee pour la resolution du systeme -(ce parametre n''est utilise que si le mot cle MASS LUMPING - est egal a faux).""", - ang = """Required accuracy for solving the linear system -(used only if the key word MASS LUMPING is equal to false).""", - ), -# ----------------------------------- - SOLVER_ACCURACY_FOR_SUSPENSION = SIMP(statut ='f', -# ----------------------------------- - typ = 'R', - defaut = [1.E-8], - fr = """""", - ang = """""", - ), -# ----------------------------------- - PRECONDITIONING_FOR_SUSPENSION = SIMP(statut ='f', -# ----------------------------------- - typ = 'TXM', - into = ["diagonal","no preconditioning","diagonal condensee","crout"], - defaut = ["diagonal"], - fr = """Permet de preconditionner le systeme de l''etape de propagation -afin d''accelerer la convergence lors de sa resolution. - - 0 : pas de preconditionnement, - - 2 : preconditionnement diagonal. - - 3 : preconditionnement diagonal avec la matrice condensee. - - 7 : preconditionnement de Crout par element. - Certains preconditionnements sont cumulables - (les diagonaux 2 ou 3 avec les autres) - Pour cette raison on ne retient que les nombres premiers pour - designer les preconditionnements. Si l''on souhaite en cumuler - plusieurs on formera le produit des options correspondantes.""", - ang = """""", - ), -) -# ----------------------------------------------------------------------- -NUMERICAL = PROC(nom= "NUMERICAL",op = None, -# ----------------------------------------------------------------------- -# ----------------------------------- - MASS_LUMPING = SIMP(statut ='f', -# ----------------------------------- - typ = bool, - defaut = True, - fr = """Si oui, on effectue du mass-lumping sur la cote du fond. -Ceci revient a ramener toute la matrice de masse sur sa -diagonale lors de la resolution du systeme. Cette technique permet -d''accelerer le code et de le rendre egalement plus stable. Cependant, -les solutions obtenues se trouvent lissees.""", - ang = """If this key word is equal to yes, the mass matrix is then -condensed on its diagonal.This technique is used to accelerate the -computation and also to make it more stable.However, the solutions -obtained are smoothed.""", - ), -# ----------------------------------- - TETA = SIMP(statut ='f', -# ----------------------------------- - typ = 'R', - defaut = 0., - fr = """Definit le coefficient d''implicitation du schema numerique.""", - ang = """Specifies the implicitation coefficient of the numerical -scheme.""", - ), -# ----------------------------------- - ZERO = SIMP(statut ='f', -# ----------------------------------- - typ = 'R', - defaut = 1.E-10, - fr = """Fixe le zero du code.""", - ang = """Sets the zero of the code.""", - ), -# ----------------------------------- - FINITE_VOLUMES = SIMP(statut ='f', -# ----------------------------------- - typ = bool, - defaut = [False], - fr = """Methodes volumes finis ou pas""", - ang = """Set finite volumes method or not""", - ), -# ----------------------------------- - TYPE_OF_ADVECTION = SIMP(statut ='f', -# ----------------------------------- - typ = 'TXM', - into = ["CHARACTERISTICS","SUPG","CONSERVATIVE N-SCHEME","CONSERVATIVE N-SCHEME","CONSERVATIVE PSI-SCHEME","NON CONSERVATIVE PSI SCHEME","IMPLICIT NON CONSERVATIVE N SCHEME","EDGE-BASED N-SCHEME","EDGE-BASED N-SCHEME","ERIA SCHEME"], - defaut = ["CHARACTERISTICS"], - fr = """Determine le schema utilise pour la convection : -1: caracteristiques -2: schema semi-implicite + supg -3 et 4: schema N -5: schema psi -6: schema psi non conservatif -7: schema N non conservatif -13 et 14: schema N par segment (recommande pour les bancs decouvrants)""", - ang = """Scheme used for advection of suspended sediment : -1: characteristics -2: semi-implicit SUPG -3 et 4: N scheme -5: psi scheme -6: non conservative psi scheme -7: non conservative N scheme -13 et 14: Edge-based N scheme (recommended for tidal flats)""", - ), -# ----------------------------------- - SUPG_OPTION = SIMP(statut ='f', -# ----------------------------------- - typ = 'I', - defaut = [2], - fr = """""", - ang = """""", - ), -# ----------------------------------- - MATRIX_VECTOR_PRODUCT = SIMP(statut ='f', -# ----------------------------------- - typ = 'I', - defaut = [1], - fr = """""", - ang = """""", - ), -# ----------------------------------- - MATRIX_STORAGE = SIMP(statut ='f', -# ----------------------------------- - typ = 'I', - defaut = [1], - fr = """""", - ang = """""", - ), -# ----------------------------------- - OPTION_FOR_THE_DIFFUSION_OF_TRACER = SIMP(statut ='f', -# ----------------------------------- - typ = 'TXM', - into = ["div( nu grad(T) )","1/h div ( h nu grad(T)"], - defaut = ["div( nu grad(T) )"], - fr = """1: Diffusion de la forme div( nu grad(T) ) - 2: Diffusion de la forme 1/h div ( h nu grad(T) )""", - ang = """1: Diffusion in the form div( nu grad(T) ) - 2: Diffusion in the form 1/h div ( h nu grad(T) )""", - ), -) -# ----------------------------------------------------------------------- -NUMERICAL_PARAMETERS = PROC(nom= "NUMERICAL_PARAMETERS",op = None, -# ----------------------------------------------------------------------- -# ----------------------------------- - MAXIMUM_NUMBER_OF_ITERATIONS_FOR_ADVECTION_SCHEMES = SIMP(statut ='f', -# ----------------------------------- - typ = 'I', - defaut = [10], - fr = """Seulement pour schemes 13 et 14""", - ang = """Only for schemes 13 and 14""", - ), -# ----------------------------------- - GENERAL = FACT(statut='f', -# ----------------------------------- -# ----------------------------------- - PARTITIONING_TOOL = SIMP(statut ='f', -# ----------------------------------- - typ = 'TXM', - into = ['METIS','SCOTCH','PARMETIS','PTSCOTCH'], - defaut = 'METIS', - fr = """CHOIX DU PARTITIONNEUR -1 : METIS -2 : SCOTCH -3 : PARMETIS -4 : PTSCOTCH -etc...""", - ang = """PARTITIONING TOOL SELECTION -1 : METIS -2 : SCOTCH -3 : PARMETIS -4 : PTSCOTCH -etc...""", - ), -# ----------------------------------- - NUMBER_OF_CORRECTIONS_OF_DISTRIBUTIVE_SCHEMES = SIMP(statut ='f', -# ----------------------------------- - typ = 'I', - defaut = [1], - fr = """Pour les options avec predicteur-correcteur""", - ang = """For predictor-corrector options""", - ), -# ----------------------------------- - NUMBER_OF_SUB_STEPS_OF_DISTRIBUTIVE_SCHEMES = SIMP(statut ='f', -# ----------------------------------- - typ = 'I', - defaut = [1], - fr = """Pour les options predicteur-correcteur -avec schema localement implicite""", - ang = """Only for implicit scheme with predictor-corrector""", - ), -# ----------------------------------- - TREATMENT_OF_FLUXES_AT_THE_BOUNDARIES = SIMP(statut ='f', -# ----------------------------------- - typ = 'TXM', - into = ["Priority to prescribed values","Priority to fluxes"], - defaut = ["Priority to fluxes"], - fr = """Utilise pour les schemas PSI et N, avec option 2, on ne retrouve -pas exactement les valeurs imposees des traceurs, -mais le flux est correct""", - ang = """Used so far only with the PSI and N schemes. -With option 2, Dirichlet prescribed values are not obeyed, -but the fluxes are correct""", - ), -# ----------------------------------- - BED_ROUGHNESS_PREDICTOR_OPTION = SIMP(statut ='f', -# ----------------------------------- - typ = 'I', - defaut = 1, - fr = """1 : Fond plat ks=KSPRATIO D50, -2: Fond ride (methode de Wiberg et Harris), -3: Dunes et megarides (methode de Van Rijn)""", - ang = """1: Flat bed, 2: Rippled bed, -3: Dunes and mega ripples (Method of Van Rijn)""", - ), - ), -# ----------------------------------- - SOLVER = FACT(statut='f', -# ----------------------------------- -# ----------------------------------- - SUSPENSION = FACT(statut='f', -# ----------------------------------- -# ----------------------------------- - SOLVER_FOR_SUSPENSION = SIMP(statut ='f', -# ----------------------------------- - typ = 'TXM', - into = ["conjugate gradient","conjugate residual","conjugate gradient on a normal equation","minimum error","gmres (see option for the solver for tracer diffusion)"], - defaut = ["conjugate gradient on a normal equation"], - fr = """Permet de choisir le solveur utilise pour la resolution -de l''etape de propagation. Toutes les methodes proposees -actuellement s''apparentent au Gradient Conjugue. Ce sont : - 1 : gradient conjugue - 2 : residu conjugue - 3 : gradient conjugue sur equation normale - 4 : erreur minimale - 7 : gmres""", - ang = """""", - ), - ), - ), -# ----------------------------------- - AUTOMATIC_DIFFERENTIATION = FACT(statut='f', -# ----------------------------------- -# ----------------------------------- - AD_NUMBER_OF_DERIVATIVES = SIMP(statut ='f', -# ----------------------------------- - typ = 'I', - defaut = [0], - fr = """Definit le nombre de derivees utilisateurs, dans le cadre -de la differentiation algorithmique.""", - ang = """Defines the number of user derivatives, within the framework -of the algorithmic differentiation.""", - ), -# ----------------------------------- - AD_NAMES_OF_DERIVATIVES = SIMP(statut ='f', -# ----------------------------------- - typ = 'TXM', min= 2, max= 2, - fr = """Noms des derivees utilisateurs en 32 caracteres, - 16 pour le nom, 16 pour l''unite""", - ang = """Name of user derivatives in 32 characters, - 16 for the name, 16 for the unit.""", - ), -# ----------------------------------- - AD_NUMBER_OF_DIRECTIONS = SIMP(statut ='f', -# ----------------------------------- - typ = 'I', - defaut = [1], - fr = """Definit le nombre de directions de differentiateurs.""", - ang = """Defines the number of directions for the differentiators""", - ), -# ----------------------------------- - AD_SYMBOLIC_LINEAR_SOLVER = SIMP(statut ='f', -# ----------------------------------- - typ = bool, - defaut = False, - fr = """Permet le solveur lineaire symbolique pour l AD.""", - ang = """Enables the symbolic linear solver for AD.""", - ), -# ----------------------------------- - AD_LINEAR_SOLVER_RESET_DERIVATIVES = SIMP(statut ='f', -# ----------------------------------- - typ = bool, - defaut = True, - fr = """Remet a zero les derivees pour l AD.""", - ang = """Resets the derivatives for AD.""", - ), -# ----------------------------------- - AD_LINEAR_SOLVER_DERIVATIVE_CONVERGENCE = SIMP(statut ='f', -# ----------------------------------- - typ = bool, - defaut = True, - fr = """Solveur lineaire iteratif : test de convergence des derivees -pour l AD.""", - ang = """Iterative linear solvers: derivative convergence test for AD.""", - ), - ), -) -# ----------------------------------------------------------------------- -PHYSICS = PROC(nom= "PHYSICS",op = None, -# ----------------------------------------------------------------------- -# ----------------------------------- - WATER_DENSITY = SIMP(statut ='f', -# ----------------------------------- - typ = 'R', - defaut = 1000., - fr = """Fixe la valeur de la masse volumique de l''eau.""", - ang = """sets the value of water density.""", - ), -# ----------------------------------- - SEDIMENT_DENSITY = SIMP(statut ='f', -# ----------------------------------- - typ = 'R', - defaut = 2650., - fr = """Fixe la valeur de la masse volumique du sediment - en Kg/m3""", - ang = """sets the value of the sediment density - en Kg/m3""", - ), -# ----------------------------------- - NON_COHESIVE_BED_POROSITY = SIMP(statut ='f', -# ----------------------------------- - typ = 'R', - defaut = 0.4, - fr = """la concentration volumique du lit est definie par -CSF= (1-porosite) -Ce parametre est utilise pour les sediments non-cohesifs.""", - ang = """The bed volume concentration CSF=(1-porosity) is used to -calculate the bed evolution of non-cohesive sand transport.""", - ), -# ----------------------------------- - GRAVITY_ACCELERATION = SIMP(statut ='f', -# ----------------------------------- - typ = 'R', - defaut = 9.81, - fr = """Fixe la valeur de l''acceleration de la pesanteur. - M/S2""", - ang = """Sets the value of the acceleration due to gravity. - M/S2""", - ), -# ----------------------------------- - WATER_VISCOSITY = SIMP(statut ='f', -# ----------------------------------- - typ = 'R', - defaut = 1.E-6, - fr = """Definit la viscosite cinematique de l''eau. - M/S2""", - ang = """Specifies the water kinematic viscosity. - M/S2""", - ), -# ----------------------------------- - SETTLING_LAG = SIMP(statut ='f', -# ----------------------------------- - typ = bool, - defaut = False, - fr = """Uses the velocity profile based on the Miles approximation""", - ang = """Uses the velocity profile based on the Miles approximation""", - ), -) -# ----------------------------------------------------------------------- -SUSPENSION = PROC(nom= "SUSPENSION",op = None, -# ----------------------------------------------------------------------- -# ----------------------------------- - SETTLING_VELOCITIES = SIMP(statut ='f', -# ----------------------------------- - typ = 'R', min=10, max=10, - fr = """Pas de valeur par defaut -Si non donne par l utilisateur, on utilise la subroutine vitchu-sisyphe -: -formules de Stokes, Zanke ou Van Rijn, selon la taille des grains""", - ang = """The default value is not given. If the user does not -give a value, the subroutine vitchu-sisyphe is used: -Stockes, Zanke or Van Rijn formulae depending on the grain size""", - ), -# ----------------------------------- - FORMULATION_FOR_DEPOSITION_AND_EROSION = SIMP(statut ='f', -# ----------------------------------- - typ = 'TXM', - into = ["KRONE ET PARTHENIADES","FREDSOE / ROUSE"], - defaut = ["FREDSOE / ROUSE"], - fr = """""", - ang = """""", - ), -# ----------------------------------- - SUSPENSION = SIMP(statut ='f', -# ----------------------------------- - typ = bool, - defaut = False, - fr = """calcul avec suspension""", - ang = """""", - ), -# ----------------------------------- - DISPERSION_ALONG_THE_FLOW = SIMP(statut ='f', -# ----------------------------------- - typ = 'R', - defaut = [1.E-2], - fr = """""", - ang = """""", - ), -# ----------------------------------- - DISPERSION_ACROSS_THE_FLOW = SIMP(statut ='f', -# ----------------------------------- - typ = 'R', - defaut = [1.E-2], - fr = """""", - ang = """""", - ), -# ----------------------------------- - EQUILIBRIUM_INFLOW_CONCENTRATION = SIMP(statut ='f', -# ----------------------------------- - typ = bool, - defaut = [False], - fr = """impose la concentration en entree du domaine et les -concentrations initiales en utilisant la formule de Fredsoe pour les -sediments non-cohesifs""", - ang = """impose the equilibrium concentration for the inflow and at t=0 -in the whole domain thanks to the formula of Fredsoe for non cohesive -sediments""", - ), -# ----------------------------------- - REFERENCE_CONCENTRATION_FORMULA = SIMP(statut ='f', -# ----------------------------------- - typ = 'I', - defaut = 1, - fr = """1 : formule de Zyserman et Fredsoe - 2 : methode de Bijker. La concentration au fond - est reliee au taux de transport par charriage - 3 : formule de Van Rijn (1987) - 4 : formule de Soulsy\_van Rijn""", - ang = """1 : Zysderman and Fredsoe, equilibrium formula - 2: Bijker method. The near bed concentration - is related to the bedload . This option cannot be used - without bedload transport - 3: Van Rijn formula - 4: Soulsby\_van Rijn formula""", - ), -# ----------------------------------- - CORRECTION_ON_CONVECTION_VELOCITY = SIMP(statut ='f', -# ----------------------------------- - typ = bool, - defaut = [False], - fr = """Modification du champ convecteur 2D pour prise en compte du -gradient vertical de vitesse et concentration""", - ang = """Modification of 2D convection velocities to account for -velocity and concentration profiles""", - ), -# ----------------------------------- - INITIAL_SUSPENSION_CONCENTRATIONS = SIMP(statut ='f', -# ----------------------------------- - typ = 'R', min= 2, max= 2, - fr = """Pour la suspension, sert a initialiser la valeur - de la concentration volumique pour chaque classe. ne sera pas pris - en compte si CONCENTRATION EN ENTREE IMPOSEE=OUI""", - ang = """In case of suspension, will be used to initialize the value -of volume concentration for each class. Will not be used if - EQUILIBRIUM INFLOW CONCENTRATION=YES""", - ), -# ----------------------------------- - CONCENTRATION_PER_CLASS_AT_BOUNDARIES = SIMP(statut ='f', -# ----------------------------------- - typ = 'R', min= 2, max= 2, - fr = """Pour la suspension, sert a initialiser la valeur - de la concentration volumique de chaque classe pour chaque frontiere - ordre : frontiere 1 (classe 1, classe 2, etc.) , puis frontiere 2, etc""", - ang = """In case of suspension, will be used to initialize the value -of volume concentration for each class and each boundary -order: boundary 1 (class 1, class2, etc., then boundary 2, etc.""", - ), -# ----------------------------------- - DIFFUSION = SIMP(statut ='f', -# ----------------------------------- - typ = bool, - defaut = [True ], - fr = """Prise en compte de la diffusion de la concentration de sediment -en suspension""", - ang = """If yes, diffusion of the concentration of suspended -sediment is done""", - ), -# ----------------------------------- - OPTION_FOR_THE_DISPERSION = SIMP(statut ='f', -# ----------------------------------- - typ = 'I', - defaut = [1], - fr = """ 1 les mots cles dispersion longitudinale -et dispersion transversale permettent d affecter une valeur constante, -2 K1=alphal u*h et K2=alphat u*h affectent les valeurs alphal et alphat -(par default alphal=6 et alphat=0.6, 3 dipersion fournie par - telemac2d""", - ang = """ 1 les mots cles dispersion longitudinale -et dispersion transversale permettent d affecter une valeur constante, -2 K1=alphal u*h et K2=alphat u*h affectent les valeurs alphal et alphat -(par default alphal=6 et alphat=0.6, 3 dipersion fournie par - telemac2d""", - ), -# ----------------------------------- - TETA_SUSPENSION = SIMP(statut ='f', -# ----------------------------------- - typ = 'R', - defaut = [1.], - fr = """facteur implicitation du terme de depot et de la diffusion. - si teta =0, tout le terme de depot est traite de maniere explicite.""", - ang = """ implicitation factor for the deposition flux and the diffusion. - for teta =0, the deposition flux is only explicit.""", - ), -# ----------------------------------- - CRITICAL_SHEAR_VELOCITY_FOR_MUD_DEPOSITION = SIMP(statut ='f', -# ----------------------------------- - typ = 'R', - defaut = 1000., - fr = """Vitesse critique de depot de la vase (m/s)""", - ang = """Critical shear velocity for deposition (m/s)""", - ), -# ----------------------------------- - PARTHENIADES_CONSTANT = SIMP(statut ='f', -# ----------------------------------- - typ = 'R', - defaut = 1.E-03, - fr = """constante de la loi d''erosion de la vase (Kg/m2/s)""", - ang = """constant of the Krone and Partheniades erosion law (Kg/m2/s)""", - ), -) -# ----------------------------------------------------------------------- -BED_MATERIAL = PROC(nom= "BED_MATERIAL",op = None, -# ----------------------------------------------------------------------- -# ----------------------------------- - D90 = SIMP(statut ='f', -# ----------------------------------- - typ = 'R', min=10, max=10, - defaut = [.01,.01,.01,.01,.01,.01,.01,.01,.01,.01], - fr = """Sets value of diameter d90 for particular size class. -Si le mot cle n est pas entre, la valeur par defaut est -celle du diametre moyen des grains""", - ang = """Sets value of diameter d90 for particular size class. -If the keyword is not in the sterring file, the default value -is the value of the mean diameter of the sediment.""", - ), -# ----------------------------------- - SEDIMENT_DIAMETERS = SIMP(statut ='f', -# ----------------------------------- - typ = 'R', min=10, max=10, - defaut = [.01,.01,.01,.01,.01,.01,.01,.01,.01,.01], - fr = """Sets value of diameter dm for particular size class.""", - ang = """Sets value of diameter dm for particular size class.""", - ), -# ----------------------------------- - HIDING_FACTOR_FOR_PARTICULAR_SIZE_CLASS = SIMP(statut ='f', -# ----------------------------------- - typ = 'R', min=10, max=10, - defaut = [1.,1.,1.,1.,1.,1.,1.,1.,1.,1.], - fr = """Fixe la valeur du facteur de pavage par classe -granulometrique""", - ang = """Sets value of hiding factor for particular size class.""", - ), -# ----------------------------------- - NUMBER_OF_SIZE_CLASSES_OF_BED_MATERIAL = SIMP(statut ='f', -# ----------------------------------- - typ = 'I', - defaut = [1], - fr = """Fixe la valeur du nombre de classes granulometriques -de grains considerees dans le calcul""", - ang = """Sets value of number of size classes of bed materials.""", - ), -# ----------------------------------- - INITIAL_FRACTION_FOR_PARTICULAR_SIZE_CLASS = SIMP(statut ='f', -# ----------------------------------- - typ = 'R', min=10, max=10, - defaut = [1.,0.,0.,0.,0.,0.,0.,0.,0.,0.], - fr = """Sets value of initial fraction for particular size class.""", - ang = """Sets value of initial fraction for particular size class.""", - ), -# ----------------------------------- - ACTIVE_LAYER_THICKNESS = SIMP(statut ='f', -# ----------------------------------- - typ = 'R', - defaut = [10000], - fr = """Epaisseur de reference pour la stratification du lit. La -composition de la premiere couche sert a calculer le transport -solide. Utiliser une tres grande valeur pour ne pas avoir de -stratification.""", - ang = """Thickness for bed stratification. Composition of first -layer is used to compute bed load transport rate. If you do not want -a stratification, use a large value""", - ), -# ----------------------------------- - HIDING_FACTOR_FORMULA = SIMP(statut ='f', -# ----------------------------------- - typ = 'I', - defaut = [0], - fr = """4 formules pour le hiding factor sont programmees dans SISYPHE - 0: const => il faut donner le HIDING FACTOR PAR CLASSE GRANULO - 1: Egiazaroff - 2: Ashida \& Michiue - : - 4: Karim, Holly \& Yang""", - ang = """4 hiding factor formulas are implemented in SISYPHE - 0: const => need to give HIDING FACTOR FOR PARTICULAR SIZE CLASS - 1: Egiazaroff - 2: Ashida \& Michiue - : - 4: Karim, Holly \& Yang""", - ), -# ----------------------------------- - CONSTANT_ACTIVE_LAYER_THICKNESS = SIMP(statut ='f', -# ----------------------------------- - typ = bool, - defaut = True, - fr = """epaisseur de couche active constante ou non""", - ang = """constant active layer thickness or not""", - ), -# ----------------------------------- - COHESIVE_SEDIMENTS = SIMP(statut ='f', -# ----------------------------------- - typ = bool, min=10, max=10, - defaut = [False,False,False,False,False,False,False,False,False,False], - fr = """""", - ang = """""", - ), -# ----------------------------------- - C_VSM = FACT(statut='f', -# ----------------------------------- -# ----------------------------------- - VERTICAL_GRAIN_SORTING_MODEL = SIMP(statut ='f', -# ----------------------------------- - typ = 'I', - defaut = [0], - fr = """(-)""", - ang = """Defines the model of the vertical grain sorting: - 0 = HR-VSM = Layer Model (Classic Hirano / Ribberink approach) - 1 = C-VSM (Continous Vertical Grain Sorting Model)""", - ), -# ----------------------------------- - C_VSM_MAXIMUM_SECTIONS = SIMP(statut ='f', -# ----------------------------------- - typ = 'I', - defaut = [200], - fr = """(-)""", - ang = """Defines the maximum discretisation of the - Continous Vertical Sorting Model: - Should be bigger than 8xNumber of Fractions. - The bigger the higher the RAM requirements, - but the faster and accurater the - bookkeeping of the sediments.""", - ), -# ----------------------------------- - C_VSM_FULL_PRINTOUT_PERIOD = SIMP(statut ='f', -# ----------------------------------- - typ = 'I', - defaut = [0], - fr = """(-)""", - ang = """Number of Timesteps to next printout - of the full C-VSM. These printouts are highly - time and disc consuming. - 0 = Coupled to GRAPHIC PRINTOUT PERIOD - >0 = Own printout period for the C-VSM""", - ), -# ----------------------------------- - C_VSM_PRINTOUT_SELECTION = SIMP(statut ='f', -# ----------------------------------- - typ = 'TXM', min=13, max=13, - defaut = '0;0;0;0;0;0;0;0;0;0;0;0;0', - fr = """(-)""", - ang = """Printout the C-VSM for the whole model as 3D - \telkey{C-VSM RESULTS FILE} - or / and for some nodes as - \telkey{C-VSM NODE FILE} - Give Up to 100 INTEGER numbers separated by ";" - 0 = Full model .-> VSPRES - N = 1,2...NPOINT; 2D-ID of a SELFIN MESH POINT ->*\_VSP.CSV""", - ), -# ----------------------------------- - C_VSM_DYNAMIC_ALT_MODEL = SIMP(statut ='f', -# ----------------------------------- - typ = 'I', - defaut = [5], - fr = """(-)""", - ang = """MODEL FOR ACTIVE LAYER THICKNESS - 0 = ELAY0 (Keyword: ACTIVE LAYER THICKNESS) - 1 = Hunziker \& G$\ddot{u}$nther - 2 = Fredsoe \& Deigaard (1992) - 3 = van RIJN (1993) - 4 = Wong (2006) - 5 = Malcherek (2003) - 6 = $3*d50$ within last time steps ALT""", - ), - ), -) -# ----------------------------------------------------------------------- -FRICTION = PROC(nom= "FRICTION",op = None, -# ----------------------------------------------------------------------- -# ----------------------------------- - RATIO_BETWEEN_SKIN_FRICTION_AND_MEAN_DIAMETER = SIMP(statut ='f', -# ----------------------------------- - typ = 'R', - defaut = 3.0, - fr = """Ratio pour le calcul du frottement de peau. -rugosite de peau = ratio * diametre moyen. -( pour la granulometrie etendue, le diametre moyen utilise -est une valeur moyenne par noeud calculee a partir de la fraction -et du diametre moyen de chaque sediment en chaque noeud du maillage)""", - ang = """ Ratio for the computation of skin friction. -skin roughness = ratio * mean diameter -(for the mixture of sand, the mean diameter used is a value per node -which is computed thanks to the fraction and the mean diameter of each -sediment for each node of the mesh) -if KSPRATIO =0 : use skin friction prediction from Van Rijn (2007) -for currents and the Wiberg and Harris method for waves""", - ), -# ----------------------------------- - SKIN_FRICTION_CORRECTION = SIMP(statut ='f', -# ----------------------------------- - typ = 'I', - defaut = 1, - fr = """prise en compte du frottement de peau (voir aussi KSPRATIO) - 0 : pas de correction (TAUP= TOB) - 1 : fond plat (KSP= KSPRATIO * D50) - 2 : prise en compte des rides""", - ang = """formula to predict the skin bed roughness (see also KSPRATIO) - 0 : NO correction (TAUP= TOB) - 1 : Flat bed (KSP= KSPRATIO * D50) - 2 : Ripple correction factor""", - ), -# ----------------------------------- - FRICTION_COEFFICIENT = SIMP(statut ='f', -# ----------------------------------- - typ = 'R', - defaut = 50., - fr = """Fixe la valeur du coefficient de Strickler -intervenant dans le calcul de la contrainte de -frottement au fond. Sa signification depend de -la LOI DE FROTTEMENT SUR LE FOND.""", - ang = """Sets the value of the friction coefficient -to calculate the bed shear stress. -Depends on the LAW OF BOTTOM FRICTION.""", - ), -# ----------------------------------- - LAW_OF_BOTTOM_FRICTION = SIMP(statut ='f', -# ----------------------------------- - typ = 'TXM', - into = [" ","CHEZY","STRICKLER","MANNING","NIKURADSE"], - defaut = ["STRICKLER"], - fr = """Selectionne le type de formulation utilisee pour le calcul -du frottement sur le fond, voir COEFFICIENT DE FROTTEMENT. -Pour les lois possibles, voir CHOIX ci-dessus (cf. Note de principe). -En cas de couplage avec Telemac, le choix du frottement est impose par -Telemac, sauf si le mot-cle :PREDICTION DE LA RUGOSITE est mis a OUI""", - ang = """Selects the type of formulation used for the bottom friction. -To know the possible laws see CHOIX1 above. See FRICTION COEFFICIENT. -Beware: in the case of internal coupling with Telemac, the friction -coefficient is selected in the Telemac steering file, except when BED -ROUGHNESS PREDICTION is set to YES""", - ), -) -# ----------------------------------------------------------------------- -SLOPE_EFFECT = PROC(nom= "SLOPE_EFFECT",op = None, -# ----------------------------------------------------------------------- -# ----------------------------------- - FORMULA_FOR_SLOPE_EFFECT = SIMP(statut ='f', -# ----------------------------------- - typ = 'I', - defaut = 1, - fr = """1 : formule de Koch et Flokstra, modifie le transport solide - mot cle associe : BETA - 2 : formule de Soulsby, modifie la contrainte seuil, ne peut - donc etre utilisee que avec une formule a seuil. - mot cle associe : ANGLE DE REPOS DU SEDIMENT""", - ang = """1 : formula of Koch et Flokstra, modification of bed load - linked keyword : BETA - 2 : formula of Soulsby, modification critical shear stress, - can only be used with a threshold fomula - linked keyword : FRICTION ANGLE OF THE SEDIMENT""", - ), -# ----------------------------------- - FRICTION_ANGLE_OF_THE_SEDIMENT = SIMP(statut ='f', -# ----------------------------------- - typ = 'R', - defaut = 40., - fr = """Angle de repos du sediment, intervient pour la prise de compte - de la pente sur la contrainte critique par la formule de Soulsby. -Utiliser si ...=2""", - ang = """Angle of repose of the sediment. Used in the Soulsby formula to -take into account the influence of bed slope on critical shear stress. -Use if ...=2""", - ), -# ----------------------------------- - FORMULA_FOR_DEVIATION = SIMP(statut ='f', -# ----------------------------------- - typ = 'I', - defaut = 1, - fr = """1 : Koch et Flokstra - 2 : formule de Talmon et al. 1995, JHR 33(4) formules (1) et -(17) mot cle associe : BETA2""", - ang = """1: Koch and Flokstra - 2: formula of Talmon et al. 1995, JHR 33(4) formulas (1) and -(17) linked keyword : BETA2""", - ), -# ----------------------------------- - PARAMETER_FOR_DEVIATION = SIMP(statut ='f', -# ----------------------------------- - typ = 'R', - defaut = 0.85, - fr = """Parametre pour la deviation causee par effet de pente - pour la formule de Talmon et al. -Une valeur elevee provoque une faible deviation""", - ang = """Parameter pour la deviation pour la formule de Talmon et al.""", - ), -# ----------------------------------- - SEDIMENT_SLIDE = SIMP(statut ='f', -# ----------------------------------- - typ = bool, - defaut = [False], - fr = """Prise en compte de la pente d''equilibre du sable donnee par le -mot-cle ANGLE DE FROTTEMENT DU SEDIMENT""", - ang = """If yes, the key-word FRICTION ANGLE OF THE SEDIMENT is taken -into account for slope stability""", - ), -# ----------------------------------- - SLOPE_EFFECT = SIMP(statut ='f', -# ----------------------------------- - typ = bool, - defaut = [True ], - fr = """Prise en compte de l''effet de pente : -deviation et modification du seuil critique. -NON supprime les mots-cles - POUR EFFET DE PENTE et POUR LA DEVIATION""", - ang = """If yes, slope effect taken into account: -deviation + modification of critical shear stress. -NO will cancel the key-words -FORMULA FOR SLOPE EFFECT and FORMULA FOR DEVIATION""", - ), -# ----------------------------------- - BETA = SIMP(statut ='f', -# ----------------------------------- - typ = 'R', - defaut = 1.3, - fr = """Determine la valeur du coefficient beta qui intervient dans la -formulation de l''effet de pente de Koch et Flokstra.""", - ang = """Specifies the value of the beta coefficient used in the Koch -and Flokstra slope effect formulation.""", - ), -) -# ----------------------------------------------------------------------- -SEDIMENT_TRANSPORT = PROC(nom= "SEDIMENT_TRANSPORT",op = None, -# ----------------------------------------------------------------------- -# ----------------------------------- - NONEQUILIBRIUM_BED_LOAD = FACT(statut='f', -# ----------------------------------- -# ----------------------------------- - BED_ROUGHNESS_PREDICTION = SIMP(statut ='f', -# ----------------------------------- - typ = bool, - defaut = [False], - fr = """Calcul de la rugosite de Nikuradse -- voir OPTION DU PREDICTEUR DE RUGOSITE - -la loi de frottement est forcee a 5 et le coefficient de frottement -ne sont pas utilises. -En cas de couplage, le frottement est envoye a Telemac""", - ang = """The bed roughness is predicted according to the selected -BED ROUGHNESS PREDICTOR OPTION. In case of coupling with Telemac2d, -the calculated bed roughness is sent to Telemac. -The FRICTION COEFFICIENT and FRICTION LAW are no longer -used (KFROT is set to 5)""", - ), - ), -) -# ----------------------------------------------------------------------- -SEDIMENTOLOGY = PROC(nom= "SEDIMENTOLOGY",op = None, -# ----------------------------------------------------------------------- -# ----------------------------------- - GENERAL = FACT(statut='f', -# ----------------------------------- -# ----------------------------------- - SECONDARY_CURRENTS_ALPHA_COEFFICIENT = SIMP(statut ='f', -# ----------------------------------- - typ = 'R', - defaut = 1.0E-00, - fr = """(-)""", - ang = """Alpha coefficient of secondary current(-), -Should be chosen between 0.75 (rough bottom) and 1 (smooth bottom)""", - ), - ), -) -# ----------------------------------------------------------------------- -COMPUTATIONAL_INFORMATION = PROC(nom= "COMPUTATIONAL_INFORMATION",op = None, -# ----------------------------------------------------------------------- -# ----------------------------------- - GENERAL = FACT(statut='f', -# ----------------------------------- -# ----------------------------------- - MORPHOLOGICAL_FACTOR = SIMP(statut ='f', -# ----------------------------------- - typ = 'R', - defaut = 1., - fr = """Coefficient de l''echelle des temps""", - ang = """Amplification for the morphological time scale""", - ), -# ----------------------------------- - MINIMUM_DEPTH_FOR_BEDLOAD = SIMP(statut ='f', -# ----------------------------------- - typ = 'R', - defaut = 1.E-2, - fr = """Suppression des flux de sediment de et vers les points secs""", - ang = """To cancel sediment fluxes to and from dry points""", - ), - ), -) -# ----------------------------------------------------------------------- -BED_LOAD = PROC(nom= "BED_LOAD",op = None, -# ----------------------------------------------------------------------- -# ----------------------------------- - BED_LOAD = SIMP(statut ='f', -# ----------------------------------- - typ = bool, - defaut = True, - fr = """calcul avec charriage""", - ang = """""", - ), -# ----------------------------------- - BED_LOAD_TRANSPORT_FORMULA = SIMP(statut ='f', -# ----------------------------------- - typ = 'I', - defaut = 1, - fr = """10 formules de transport solide sont implementees dans SISYPHE. -Les formules Ne3, Ne30 et Ne9 ne doivent pas etre utilisees en cas de -couplage avec la suspension. -Les formules Ne4, Ne5, Ne8 and Ne9 calculent le taux de transport sous -l''action combinee de la houle et du courant : - 1 : MEYER-PETER (charriage) - 2 : EINSTEIN-BROWN (charriage) - 3 : ENGELUND-HANSEN + CHOLLET ET CUNGE (VERSION 5.3) - 30: ENGELUND-HANSEN (total) - 4 : BIJKER (charriage + suspension) - 5 : SOULSBY - VAN RIJN (charriage + suspension) - 6 : HUNZIKER (uniquement granulometrie etendue) - DE MASQUAGE DE HUNZIKER APPLIQUEE - et mot-cle HIDING-FACTOR not used - 7 : VAN RIJN (bed load) - 8 : BAILARD (charriage + suspension) - 9 : DIBAJNIA ET WATANABE (total) -L''utilisateur a aussi la possibilite d''imposer une autre formule de -transport solide (sous-programme QSFORM.F) en fixant la valeur -du mot cle a 0 : - 0 : IMPOSEE PAR L''UTILISATEUR -Attention : dans ce cas, il n''est pas possible de choisir l''option -PAS DE TEMPS VARIABLE.""", - ang = """10 bed-load or total load transport formulas are implemented in -SISYPHE. -The formula Ne3, Ne30 and Ne9 should not be used in the case of coupling -with the suspension. -The formula Ne4, Ne5, Ne8 and Ne9 model the transport under the -combined action of currents and waves : - 1 : MEYER-PETER (bed load) - 2 : EINSTEIN-BROWN (bed load) - 3 : ENGELUND-HANSEN + CHOLLET AND CUNGE (VERSION 5.3) - 30: ENGELUND-HANSEN (total) - 4 : BIJKER (bed load + suspension) - 5 : SOULSBY - VAN RIJN (bed load + suspension) - 6 : HUNZIKER (only for sand grading) - IN THIS CASE HIDING FACTOR KEYWORD DISCARDED - And Hunziker formula used - 7 : VAN RIJN (bed load) - 8 : BAILARD (bed load + suspension) - 9 : DIBAJNIA ET WATANABE (total) -Users can also program other formulas (subroutine QSFORM.f) setting -this key word to zero : - 0 : FORMULA PROGRAMMED BY USER -Warning : it is not then possible to choose the option -VARIABLE TIME-STEP""", - ), -# ----------------------------------- - B_VALUE_FOR_THE_BIJKER_FORMULA = SIMP(statut ='f', -# ----------------------------------- - typ = 'R', - defaut = 2.E0, - fr = """Coefficient b de la formule de Bijker""", - ang = """b value for the Bijker formula""", - ), -) -# ----------------------------------------------------------------------- -EQUATIONS__ADVECTION = PROC(nom= "EQUATIONS__ADVECTION",op = None, -# ----------------------------------------------------------------------- -# ----------------------------------- - GENERAL = FACT(statut='f', -# ----------------------------------- -# ----------------------------------- - SCHEME_OPTION_FOR_ADVECTION = SIMP(statut ='f', -# ----------------------------------- - typ = 'I', - defaut = 1, - fr = """Si present remplace et a priorite sur : -OPTION POUR LES CARACTERISTIQUES (pas programme) -OPTION DE SUPG -Avec schema PSI : 1=explicit 2=predicteur-correcteur -pour les traceurs""", - ang = """If present replaces and has priority over: -OPTION FOR CHARACTERISTICS (not yet implemented) -SUPG OPTION -IF PSI SCHEME: 1=explicit 2=predictor-corrector -for tracers""", - ), - ), -) -# ----------------------------------------------------------------------- -CONSOLIDATION = PROC(nom= "CONSOLIDATION",op = None, -# ----------------------------------------------------------------------- -# ----------------------------------- - CONSOLIDATION_MODEL = SIMP(statut ='f', -# ----------------------------------- - typ = 'I', - defaut = 1, - fr = """1:Modele multicouche de Walther, -2: Modele de Thiebot (base sur la theorie de Gibson)""", - ang = """1: Multilayer model of Walther, -2: Model of Thiebot (based on Gibson theory)""", - ), -# ----------------------------------- - GEL_CONCENTRATION = SIMP(statut ='f', -# ----------------------------------- - typ = 'R', - defaut = 310.E0, - fr = """Concentration de transition pour modele de Thiebot (Kg/m3)""", - ang = """Gel Concentration (Kg/m3)""", - ), -# ----------------------------------- - MAXIMUM_CONCENTRATION = SIMP(statut ='f', -# ----------------------------------- - typ = 'R', - defaut = 364.E0, - fr = """Concentration maximale du modele de Thiebot (Kg/m3)""", - ang = """Maximum Concentration for Thiebot consolidation model(Kg/m3)""", - ), -# ----------------------------------- - PERMEABILITY_COEFFICIENT = SIMP(statut ='f', -# ----------------------------------- - typ = 'R', - defaut = 8.E0, - fr = """Coefficient de permeabilite pour le modele de consolidation""", - ang = """Coefficient of permeability for consolidation model""", - ), -# ----------------------------------- - MUD_CONSOLIDATION = SIMP(statut ='f', -# ----------------------------------- - typ = bool, - defaut = [False], - fr = """Prise en compte du tassement par un modele multi-couche""", - ang = """consolidation of the mud or sand mud-mixture sediment bed - accounted for""", - ), -# ----------------------------------- - NUMBER_OF_LAYERS_OF_THE_CONSOLIDATION_MODEL = SIMP(statut ='f', -# ----------------------------------- - typ = 'I', - defaut = [1], - fr = """Structure verticale du lit cohesif- le nombre de couche doit - etre inferieur a 10""", - ang = """Vertical bed structure - The number of layers should be less - than 10""", - ), -# ----------------------------------- - MASS_TRANSFER_PER_LAYER = SIMP(statut ='f', -# ----------------------------------- - typ = 'R', min= 2, max= 2, - fr = """Coefficients de transfert de masse du modele -de tassement multicouche en s-1""", - ang = """Mass transfert coefficients of -the multilayer consolidation model in s-1""", - ), -) -# ----------------------------------------------------------------------- -COHESIVE_SEDIMENT = PROC(nom= "COHESIVE_SEDIMENT",op = None, -# ----------------------------------------------------------------------- -# ----------------------------------- - MUD_CONCENTRATION_PER_LAYER = SIMP(statut ='f', -# ----------------------------------- - typ = 'R', min= 2, max= 2, - fr = """Concentration du lit de vase en g/ l - defini par couches""", - ang = """Concentrations of the mud-bed in g per l (per layer)""", - ), -# ----------------------------------- - CRITICAL_EROSION_SHEAR_STRESS_OF_THE_MUD = SIMP(statut ='f', -# ----------------------------------- - typ = 'R', min=10, max=10, - defaut = [0.01,0.02,0.03,0.04,0.05,0.06,0.07,0.08,0.09,1.], - fr = """Taux critique d erosion de la vase needs to be defined - for each layer (N par m2)""", - ang = """Critical erosion shear stress of the mud per layer (N per m2)""", - ), -) -TEXTE_NEW_JDC = "\ -" -Ordre_Des_Commandes = ( -'INPUT_OUTPUT__INFORMATION', -'MISCELLANEOUS', -'GENERAL', -'USELESS', -'INPUT_OUTPUT__FILES', -'RESULTS', -'DATA_FILES', -'INITIAL_CONDITIONS', -'INPUT_OUTPUT__GRAPHICS_AND_LISTING', -'TIME', -'EQUATIONS__BOUNDARY_CONDITIONS', -'SOLVER', -'NUMERICAL', -'NUMERICAL_PARAMETERS', -'PHYSICS', -'SUSPENSION', -'BED_MATERIAL', -'FRICTION', -'SLOPE_EFFECT', -'SEDIMENT_TRANSPORT', -'SEDIMENTOLOGY', -'COMPUTATIONAL_INFORMATION', -'BED_LOAD', -'EQUATIONS__ADVECTION', -'CONSOLIDATION', -'COHESIVE_SEDIMENT') -try: - import TelApy - source = "eficas" -except Exception as excpt: - source = "Telemac" -enum = source+'.sisyphe_enum_auto' -dicoCasEn = source+'.sisyphe_dicoCasEnToCata' -dicoCasFr = source+'.sisyphe_dicoCasFrToCata' diff --git a/Telemac/sisyphe_dicoCasEnToCata.py b/Telemac/sisyphe_dicoCasEnToCata.py deleted file mode 100644 index 1b7cbd0f..00000000 --- a/Telemac/sisyphe_dicoCasEnToCata.py +++ /dev/null @@ -1,362 +0,0 @@ -dicoCataToEngTelemac = { - "TITLE" : "TITLE", - "PARALLEL_PROCESSORS" : "PARALLEL PROCESSORS", - "CHECKING_THE_MESH" : "CHECKING THE MESH", - "MAXIMUM_NUMBER_OF_BOUNDARIES" : "MAXIMUM NUMBER OF BOUNDARIES", - "VECTOR_LENGTH" : "VECTOR LENGTH", - "GEOMETRY_FILE" : "GEOMETRY FILE", - "GEOMETRY_FILE_FORMAT" : "GEOMETRY FILE FORMAT", - "RESULTS_FILE_FORMAT" : "RESULTS FILE FORMAT", - "HYDRODYNAMIC_FILE_FORMAT" : "HYDRODYNAMIC FILE FORMAT", - "REFERENCE_FILE_FORMAT" : "REFERENCE FILE FORMAT", - "PREVIOUS_SEDIMENTOLOGICAL_COMPUTATION_FILE_FORMAT" : "PREVIOUS SEDIMENTOLOGICAL COMPUTATION FILE FORMAT", - "WAVE_FILE_FORMAT" : "WAVE FILE FORMAT", - "FORTRAN_FILE" : "FORTRAN FILE", - "STEERING_FILE" : "STEERING FILE", - "BOUNDARY_CONDITIONS_FILE" : "BOUNDARY CONDITIONS FILE", - "HYDRODYNAMIC_FILE" : "HYDRODYNAMIC FILE", - "WAVE_FILE" : "WAVE FILE", - "PREVIOUS_SEDIMENTOLOGICAL_COMPUTATION_FILE" : "PREVIOUS SEDIMENTOLOGICAL COMPUTATION FILE", - "REFERENCE_FILE" : "REFERENCE FILE", - "VALIDATION" : "VALIDATION", - "BOTTOM_TOPOGRAPHY_FILE" : "BOTTOM TOPOGRAPHY FILE", - "FLUXLINE_INPUT_FILE" : "FLUXLINE INPUT FILE", - "RESULTS_FILE" : "RESULTS FILE", - "VARIABLES_FOR_GRAPHIC_PRINTOUTS" : "VARIABLES FOR GRAPHIC PRINTOUTS", - "VARIABLES_TO_BE_PRINTED" : "VARIABLES TO BE PRINTED", - "RELEASE" : "RELEASE", - "GRAPHIC_PRINTOUT_PERIOD" : "GRAPHIC PRINTOUT PERIOD", - "LISTING_PRINTOUT_PERIOD" : "LISTING PRINTOUT PERIOD", - "NUMBER_OF_PRIVATE_ARRAYS" : "NUMBER OF PRIVATE ARRAYS", - "FLUXLINE" : "FLUXLINE", - "NAMES_OF_PRIVATE_VARIABLES" : "NAMES OF PRIVATE VARIABLES", - "MASS_BALANCE" : "MASS-BALANCE", - "SECTIONS_INPUT_FILE" : "SECTIONS INPUT FILE", - "SECTIONS_OUTPUT_FILE" : "SECTIONS OUTPUT FILE", - "CONTROL_SECTIONS" : "CONTROL SECTIONS", - "COMPUTATION_CONTINUED" : "COMPUTATION CONTINUED", - "STARTING_TIME_OF_THE_HYDROGRAM" : "STARTING TIME OF THE HYDROGRAM", - "ORIGIN_COORDINATES" : "ORIGIN COORDINATES", - "LIQUID_BOUNDARIES_FILE" : "LIQUID BOUNDARIES FILE", - "PRESCRIBED_SOLID_DISCHARGES" : "PRESCRIBED SOLID DISCHARGES", - "STATIONARY_MODE" : "STATIONARY MODE", - "DICTIONARY" : "DICTIONARY", - "SOLVER" : "SOLVER", - "SOLVER_OPTION" : "SOLVER OPTION", - "PRECONDITIONING" : "PRECONDITIONING", - "MAXIMUM_NUMBER_OF_ITERATIONS_FOR_SOLVER" : "MAXIMUM NUMBER OF ITERATIONS FOR SOLVER", - "MASS_LUMPING" : "MASS-LUMPING", - "TETA" : "TETA", - "ZERO" : "ZERO", - "FINITE_VOLUMES" : "FINITE VOLUMES", - "TYPE_OF_ADVECTION" : "TYPE OF ADVECTION", - "PARTITIONING_TOOL" : "PARTITIONING TOOL", - "SOLVER_FOR_SUSPENSION" : "SOLVER FOR SUSPENSION", - "SOLVER_OPTION_FOR_SUSPENSION" : "SOLVER OPTION FOR SUSPENSION", - "MAXIMUM_NUMBER_OF_ITERATIONS_FOR_SOLVER_FOR_SUSPENSION" : "MAXIMUM NUMBER OF ITERATIONS FOR SOLVER FOR SUSPENSION", - "DEBUGGER" : "DEBUGGER", - "SUPG_OPTION" : "SUPG OPTION", - "MATRIX_VECTOR_PRODUCT" : "MATRIX-VECTOR PRODUCT", - "MATRIX_STORAGE" : "MATRIX STORAGE", - "SOLVER_ACCURACY" : "SOLVER ACCURACY", - "MAXIMUM_NUMBER_OF_ITERATIONS_FOR_ADVECTION_SCHEMES" : "MAXIMUM NUMBER OF ITERATIONS FOR ADVECTION SCHEMES", - "NUMBER_OF_CORRECTIONS_OF_DISTRIBUTIVE_SCHEMES" : "NUMBER OF CORRECTIONS OF DISTRIBUTIVE SCHEMES", - "NUMBER_OF_SUB_STEPS_OF_DISTRIBUTIVE_SCHEMES" : "NUMBER OF SUB-STEPS OF DISTRIBUTIVE SCHEMES", - "TREATMENT_OF_FLUXES_AT_THE_BOUNDARIES" : "TREATMENT OF FLUXES AT THE BOUNDARIES", - "WATER_DENSITY" : "WATER DENSITY", - "SEDIMENT_DENSITY" : "SEDIMENT DENSITY", - "NON_COHESIVE_BED_POROSITY" : "NON COHESIVE BED POROSITY", - "SHIELDS_PARAMETERS" : "SHIELDS PARAMETERS", - "GRAVITY_ACCELERATION" : "GRAVITY ACCELERATION", - "OPTION_FOR_THE_TREATMENT_OF_TIDAL_FLATS" : "OPTION FOR THE TREATMENT OF TIDAL FLATS", - "OPTION_FOR_THE_TREATMENT_OF_NON_ERODABLE_BEDS" : "OPTION FOR THE TREATMENT OF NON ERODABLE BEDS", - "WATER_VISCOSITY" : "WATER VISCOSITY", - "MINIMAL_VALUE_OF_THE_WATER_HEIGHT" : "MINIMAL VALUE OF THE WATER HEIGHT", - "SETTLING_VELOCITIES" : "SETTLING VELOCITIES", - "TIDAL_FLATS" : "TIDAL FLATS", - "D90" : "D90", - "SEDIMENT_DIAMETERS" : "SEDIMENT DIAMETERS", - "RATIO_BETWEEN_SKIN_FRICTION_AND_MEAN_DIAMETER" : "RATIO BETWEEN SKIN FRICTION AND MEAN DIAMETER", - "SECONDARY_CURRENTS" : "SECONDARY CURRENTS", - "SECONDARY_CURRENTS_FILE" : "SECONDARY CURRENTS FILE", - "FORMULA_FOR_SLOPE_EFFECT" : "FORMULA FOR SLOPE EFFECT", - "FRICTION_ANGLE_OF_THE_SEDIMENT" : "FRICTION ANGLE OF THE SEDIMENT", - "FORMULA_FOR_DEVIATION" : "FORMULA FOR DEVIATION", - "PARAMETER_FOR_DEVIATION" : "PARAMETER FOR DEVIATION", - "SEDIMENT_SLIDE" : "SEDIMENT SLIDE", - "SLOPE_EFFECT" : "SLOPE EFFECT", - "SKIN_FRICTION_CORRECTION" : "SKIN FRICTION CORRECTION", - "BED_ROUGHNESS_PREDICTION" : "BED ROUGHNESS PREDICTION", - "BED_ROUGHNESS_PREDICTOR_OPTION" : "BED ROUGHNESS PREDICTOR OPTION", - "SECONDARY_CURRENTS_ALPHA_COEFFICIENT" : "SECONDARY CURRENTS ALPHA COEFFICIENT", - "MORPHOLOGICAL_FACTOR" : "MORPHOLOGICAL FACTOR", - "BETA" : "BETA", - "MEAN_DIAMETER_OF_THE_SEDIMENT" : "MEAN DIAMETER OF THE SEDIMENT", - "FORMULATION_FOR_DEPOSITION_AND_EROSION" : "FORMULATION FOR DEPOSITION AND EROSION", - "GRAIN_FEEDING" : "GRAIN-FEEDING", - "GEOMETRY_FILE_BINARY" : "GEOMETRY FILE BINARY", - "HYDRODYNAMIC_FILE_BINARY" : "HYDRODYNAMIC FILE BINARY", - "BINARY_OF_THE_PREVIOUS_SEDIMENTOLOGICAL_COMPUTATION_FILE" : "BINARY OF THE PREVIOUS SEDIMENTOLOGICAL COMPUTATION FILE", - "RESULTS_FILE_BINARY" : "RESULTS FILE BINARY", - "REFERENCE_FILE_BINARY" : "REFERENCE FILE BINARY", - "STEADY_CASE" : "STEADY CASE", - "FRICTION_COEFFICIENT" : "FRICTION COEFFICIENT", - "NUMBER_OF_TIME_STEPS" : "NUMBER OF TIME STEPS", - "TIME_STEP" : "TIME STEP", - "NUMBER_OF_SUB_ITERATIONS" : "NUMBER OF SUB-ITERATIONS", - "LAW_OF_BOTTOM_FRICTION" : "LAW OF BOTTOM FRICTION", - "CONSTANT_FLOW_DISCHARGE" : "CONSTANT FLOW DISCHARGE", - "NUMBER_OF_ITERATIONS_FOR_TELEMAC" : "NUMBER OF ITERATIONS FOR TELEMAC", - "CRITERION_TO_UPDATE_THE_FLOW" : "CRITERION TO UPDATE THE FLOW", - "CRITICAL_EVOLUTION_RATIO" : "CRITICAL EVOLUTION RATIO", - "NUMBER_OF_TIDES_OR_FLOODS" : "NUMBER OF TIDES OR FLOODS", - "ORIGINAL_HOUR_OF_TIME" : "ORIGINAL HOUR OF TIME", - "ORIGINAL_DATE_OF_TIME" : "ORIGINAL DATE OF TIME", - "TIDE_PERIOD" : "TIDE PERIOD", - "BED_LOAD" : "BED LOAD", - "BED_LOAD_TRANSPORT_FORMULA" : "BED-LOAD TRANSPORT FORMULA", - "B_VALUE_FOR_THE_BIJKER_FORMULA" : "B VALUE FOR THE BIJKER FORMULA", - "MPM_COEFFICIENT" : "MPM COEFFICIENT", - "MINIMUM_DEPTH_FOR_BEDLOAD" : "MINIMUM DEPTH FOR BEDLOAD", - "HIDING_FACTOR_FOR_PARTICULAR_SIZE_CLASS" : "HIDING FACTOR FOR PARTICULAR SIZE CLASS", - "NUMBER_OF_SIZE_CLASSES_OF_BED_MATERIAL" : "NUMBER OF SIZE-CLASSES OF BED MATERIAL", - "INITIAL_FRACTION_FOR_PARTICULAR_SIZE_CLASS" : "INITIAL FRACTION FOR PARTICULAR SIZE CLASS", - "ACTIVE_LAYER_THICKNESS" : "ACTIVE LAYER THICKNESS", - "HIDING_FACTOR_FORMULA" : "HIDING FACTOR FORMULA", - "NUMBER_OF_BED_LOAD_MODEL_LAYERS" : "NUMBER OF BED LOAD MODEL LAYERS", - "CONSTANT_ACTIVE_LAYER_THICKNESS" : "CONSTANT ACTIVE LAYER THICKNESS", - "VERTICAL_GRAIN_SORTING_MODEL" : "VERTICAL GRAIN SORTING MODEL", - "C_VSM_MAXIMUM_SECTIONS" : "C-VSM MAXIMUM SECTIONS", - "C_VSM_FULL_PRINTOUT_PERIOD" : "C-VSM FULL PRINTOUT PERIOD", - "C_VSM_PRINTOUT_SELECTION" : "C-VSM PRINTOUT SELECTION", - "C_VSM_DYNAMIC_ALT_MODEL" : "C-VSM DYNAMIC ALT MODEL", - "C_VSM_RESULTS_FILE" : "C-VSM RESULTS FILE", - "C_VSM_RESULTS_FILE_FORMAT" : "C-VSM RESULTS FILE FORMAT", - "SUSPENSION" : "SUSPENSION", - "DISPERSION_ALONG_THE_FLOW" : "DISPERSION ALONG THE FLOW", - "DISPERSION_ACROSS_THE_FLOW" : "DISPERSION ACROSS THE FLOW", - "EQUILIBRIUM_INFLOW_CONCENTRATION" : "EQUILIBRIUM INFLOW CONCENTRATION", - "MASS_CONCENTRATION" : "MASS CONCENTRATION", - "REFERENCE_CONCENTRATION_FORMULA" : "REFERENCE CONCENTRATION FORMULA", - "CORRECTION_ON_CONVECTION_VELOCITY" : "CORRECTION ON CONVECTION VELOCITY", - "INITIAL_SUSPENSION_CONCENTRATIONS" : "INITIAL SUSPENSION CONCENTRATIONS", - "CONCENTRATION_PER_CLASS_AT_BOUNDARIES" : "CONCENTRATION PER CLASS AT BOUNDARIES", - "DIFFUSION" : "DIFFUSION", - "SETTLING_LAG" : "SETTLING LAG", - "OPTION_FOR_THE_DISPERSION" : "OPTION FOR THE DISPERSION", - "SCHEME_OPTION_FOR_ADVECTION" : "SCHEME OPTION FOR ADVECTION", - "TETA_SUSPENSION" : "TETA SUSPENSION", - "SOLVER_ACCURACY_FOR_SUSPENSION" : "SOLVER ACCURACY FOR SUSPENSION", - "OPTION_FOR_THE_DIFFUSION_OF_TRACER" : "OPTION FOR THE DIFFUSION OF TRACER", - "PRECONDITIONING_FOR_SUSPENSION" : "PRECONDITIONING FOR SUSPENSION", - "COHESIVE_SEDIMENTS" : "COHESIVE SEDIMENTS", - "CONSOLIDATION_MODEL" : "CONSOLIDATION MODEL", - "GEL_CONCENTRATION" : "GEL CONCENTRATION", - "MAXIMUM_CONCENTRATION" : "MAXIMUM CONCENTRATION", - "PERMEABILITY_COEFFICIENT" : "PERMEABILITY COEFFICIENT", - "MUD_CONSOLIDATION" : "MUD CONSOLIDATION", - "NUMBER_OF_LAYERS_OF_THE_CONSOLIDATION_MODEL" : "NUMBER OF LAYERS OF THE CONSOLIDATION MODEL", - "MUD_CONCENTRATION_PER_LAYER" : "MUD CONCENTRATION PER LAYER", - "CRITICAL_EROSION_SHEAR_STRESS_OF_THE_MUD" : "CRITICAL EROSION SHEAR STRESS OF THE MUD", - "MASS_TRANSFER_PER_LAYER" : "MASS TRANSFER PER LAYER", - "CRITICAL_SHEAR_VELOCITY_FOR_MUD_DEPOSITION" : "CRITICAL SHEAR VELOCITY FOR MUD DEPOSITION", - "PARTHENIADES_CONSTANT" : "PARTHENIADES CONSTANT", - "NESTOR" : "NESTOR", - "NESTOR_ACTION_FILE" : "NESTOR ACTION FILE", - "NESTOR_POLYGON_FILE" : "NESTOR POLYGON FILE", - "NESTOR_RESTART_FILE" : "NESTOR RESTART FILE", - "NESTOR_SURFACE_REFERENCE_FILE" : "NESTOR SURFACE REFERENCE FILE", - "EFFECT_OF_WAVES" : "EFFECT OF WAVES", - "MIXED_SEDIMENT" : "MIXED SEDIMENT", - "AD_NUMBER_OF_DERIVATIVES" : "AD NUMBER OF DERIVATIVES", - "AD_NAMES_OF_DERIVATIVES" : "AD NAMES OF DERIVATIVES", - "AD_NUMBER_OF_DIRECTIONS" : "AD NUMBER OF DIRECTIONS", - "AD_SYMBOLIC_LINEAR_SOLVER" : "AD SYMBOLIC LINEAR SOLVER", - "AD_LINEAR_SOLVER_RESET_DERIVATIVES" : "AD LINEAR SOLVER RESET DERIVATIVES", - "AD_LINEAR_SOLVER_DERIVATIVE_CONVERGENCE" : "AD LINEAR SOLVER DERIVATIVE CONVERGENCE", - "LIST_OF_FILES" : "LIST OF FILES", - "DESCRIPTION_OF_LIBRARIES" : "DESCRIPTION OF LIBRARIES", - "DEFAULT_EXECUTABLE" : "DEFAULT EXECUTABLE", - "DEFAULT_PARALLEL_EXECUTABLE" : "DEFAULT PARALLEL EXECUTABLE", -} -dicoCasEnToCata = { - "TITLE" : "TITLE", - "PARALLEL PROCESSORS" : "PARALLEL_PROCESSORS", - "CHECKING THE MESH" : "CHECKING_THE_MESH", - "MAXIMUM NUMBER OF BOUNDARIES" : "MAXIMUM_NUMBER_OF_BOUNDARIES", - "VECTOR LENGTH" : "VECTOR_LENGTH", - "GEOMETRY FILE" : "GEOMETRY_FILE", - "GEOMETRY FILE FORMAT" : "GEOMETRY_FILE_FORMAT", - "RESULTS FILE FORMAT" : "RESULTS_FILE_FORMAT", - "HYDRODYNAMIC FILE FORMAT" : "HYDRODYNAMIC_FILE_FORMAT", - "REFERENCE FILE FORMAT" : "REFERENCE_FILE_FORMAT", - "PREVIOUS SEDIMENTOLOGICAL COMPUTATION FILE FORMAT" : "PREVIOUS_SEDIMENTOLOGICAL_COMPUTATION_FILE_FORMAT", - "WAVE FILE FORMAT" : "WAVE_FILE_FORMAT", - "FORTRAN FILE" : "FORTRAN_FILE", - "STEERING FILE" : "STEERING_FILE", - "BOUNDARY CONDITIONS FILE" : "BOUNDARY_CONDITIONS_FILE", - "HYDRODYNAMIC FILE" : "HYDRODYNAMIC_FILE", - "WAVE FILE" : "WAVE_FILE", - "PREVIOUS SEDIMENTOLOGICAL COMPUTATION FILE" : "PREVIOUS_SEDIMENTOLOGICAL_COMPUTATION_FILE", - "REFERENCE FILE" : "REFERENCE_FILE", - "VALIDATION" : "VALIDATION", - "BOTTOM TOPOGRAPHY FILE" : "BOTTOM_TOPOGRAPHY_FILE", - "FLUXLINE INPUT FILE" : "FLUXLINE_INPUT_FILE", - "RESULTS FILE" : "RESULTS_FILE", - "VARIABLES FOR GRAPHIC PRINTOUTS" : "VARIABLES_FOR_GRAPHIC_PRINTOUTS", - "VARIABLES TO BE PRINTED" : "VARIABLES_TO_BE_PRINTED", - "RELEASE" : "RELEASE", - "GRAPHIC PRINTOUT PERIOD" : "GRAPHIC_PRINTOUT_PERIOD", - "LISTING PRINTOUT PERIOD" : "LISTING_PRINTOUT_PERIOD", - "NUMBER OF PRIVATE ARRAYS" : "NUMBER_OF_PRIVATE_ARRAYS", - "FLUXLINE" : "FLUXLINE", - "NAMES OF PRIVATE VARIABLES" : "NAMES_OF_PRIVATE_VARIABLES", - "MASS-BALANCE" : "MASS_BALANCE", - "SECTIONS INPUT FILE" : "SECTIONS_INPUT_FILE", - "SECTIONS OUTPUT FILE" : "SECTIONS_OUTPUT_FILE", - "CONTROL SECTIONS" : "CONTROL_SECTIONS", - "COMPUTATION CONTINUED" : "COMPUTATION_CONTINUED", - "STARTING TIME OF THE HYDROGRAM" : "STARTING_TIME_OF_THE_HYDROGRAM", - "ORIGIN COORDINATES" : "ORIGIN_COORDINATES", - "LIQUID BOUNDARIES FILE" : "LIQUID_BOUNDARIES_FILE", - "PRESCRIBED SOLID DISCHARGES" : "PRESCRIBED_SOLID_DISCHARGES", - "STATIONARY MODE" : "STATIONARY_MODE", - "DICTIONARY" : "DICTIONARY", - "SOLVER" : "SOLVER", - "SOLVER OPTION" : "SOLVER_OPTION", - "PRECONDITIONING" : "PRECONDITIONING", - "MAXIMUM NUMBER OF ITERATIONS FOR SOLVER" : "MAXIMUM_NUMBER_OF_ITERATIONS_FOR_SOLVER", - "MASS-LUMPING" : "MASS_LUMPING", - "TETA" : "TETA", - "ZERO" : "ZERO", - "FINITE VOLUMES" : "FINITE_VOLUMES", - "TYPE OF ADVECTION" : "TYPE_OF_ADVECTION", - "PARTITIONING TOOL" : "PARTITIONING_TOOL", - "SOLVER FOR SUSPENSION" : "SOLVER_FOR_SUSPENSION", - "SOLVER OPTION FOR SUSPENSION" : "SOLVER_OPTION_FOR_SUSPENSION", - "MAXIMUM NUMBER OF ITERATIONS FOR SOLVER FOR SUSPENSION" : "MAXIMUM_NUMBER_OF_ITERATIONS_FOR_SOLVER_FOR_SUSPENSION", - "DEBUGGER" : "DEBUGGER", - "SUPG OPTION" : "SUPG_OPTION", - "MATRIX-VECTOR PRODUCT" : "MATRIX_VECTOR_PRODUCT", - "MATRIX STORAGE" : "MATRIX_STORAGE", - "SOLVER ACCURACY" : "SOLVER_ACCURACY", - "MAXIMUM NUMBER OF ITERATIONS FOR ADVECTION SCHEMES" : "MAXIMUM_NUMBER_OF_ITERATIONS_FOR_ADVECTION_SCHEMES", - "NUMBER OF CORRECTIONS OF DISTRIBUTIVE SCHEMES" : "NUMBER_OF_CORRECTIONS_OF_DISTRIBUTIVE_SCHEMES", - "NUMBER OF SUB-STEPS OF DISTRIBUTIVE SCHEMES" : "NUMBER_OF_SUB_STEPS_OF_DISTRIBUTIVE_SCHEMES", - "TREATMENT OF FLUXES AT THE BOUNDARIES" : "TREATMENT_OF_FLUXES_AT_THE_BOUNDARIES", - "WATER DENSITY" : "WATER_DENSITY", - "SEDIMENT DENSITY" : "SEDIMENT_DENSITY", - "NON COHESIVE BED POROSITY" : "NON_COHESIVE_BED_POROSITY", - "SHIELDS PARAMETERS" : "SHIELDS_PARAMETERS", - "GRAVITY ACCELERATION" : "GRAVITY_ACCELERATION", - "OPTION FOR THE TREATMENT OF TIDAL FLATS" : "OPTION_FOR_THE_TREATMENT_OF_TIDAL_FLATS", - "OPTION FOR THE TREATMENT OF NON ERODABLE BEDS" : "OPTION_FOR_THE_TREATMENT_OF_NON_ERODABLE_BEDS", - "WATER VISCOSITY" : "WATER_VISCOSITY", - "MINIMAL VALUE OF THE WATER HEIGHT" : "MINIMAL_VALUE_OF_THE_WATER_HEIGHT", - "SETTLING VELOCITIES" : "SETTLING_VELOCITIES", - "TIDAL FLATS" : "TIDAL_FLATS", - "D90" : "D90", - "SEDIMENT DIAMETERS" : "SEDIMENT_DIAMETERS", - "RATIO BETWEEN SKIN FRICTION AND MEAN DIAMETER" : "RATIO_BETWEEN_SKIN_FRICTION_AND_MEAN_DIAMETER", - "SECONDARY CURRENTS" : "SECONDARY_CURRENTS", - "SECONDARY CURRENTS FILE" : "SECONDARY_CURRENTS_FILE", - "FORMULA FOR SLOPE EFFECT" : "FORMULA_FOR_SLOPE_EFFECT", - "FRICTION ANGLE OF THE SEDIMENT" : "FRICTION_ANGLE_OF_THE_SEDIMENT", - "FORMULA FOR DEVIATION" : "FORMULA_FOR_DEVIATION", - "PARAMETER FOR DEVIATION" : "PARAMETER_FOR_DEVIATION", - "SEDIMENT SLIDE" : "SEDIMENT_SLIDE", - "SLOPE EFFECT" : "SLOPE_EFFECT", - "SKIN FRICTION CORRECTION" : "SKIN_FRICTION_CORRECTION", - "BED ROUGHNESS PREDICTION" : "BED_ROUGHNESS_PREDICTION", - "BED ROUGHNESS PREDICTOR OPTION" : "BED_ROUGHNESS_PREDICTOR_OPTION", - "SECONDARY CURRENTS ALPHA COEFFICIENT" : "SECONDARY_CURRENTS_ALPHA_COEFFICIENT", - "MORPHOLOGICAL FACTOR" : "MORPHOLOGICAL_FACTOR", - "BETA" : "BETA", - "MEAN DIAMETER OF THE SEDIMENT" : "MEAN_DIAMETER_OF_THE_SEDIMENT", - "FORMULATION FOR DEPOSITION AND EROSION" : "FORMULATION_FOR_DEPOSITION_AND_EROSION", - "GRAIN-FEEDING" : "GRAIN_FEEDING", - "GEOMETRY FILE BINARY" : "GEOMETRY_FILE_BINARY", - "HYDRODYNAMIC FILE BINARY" : "HYDRODYNAMIC_FILE_BINARY", - "BINARY OF THE PREVIOUS SEDIMENTOLOGICAL COMPUTATION FILE" : "BINARY_OF_THE_PREVIOUS_SEDIMENTOLOGICAL_COMPUTATION_FILE", - "RESULTS FILE BINARY" : "RESULTS_FILE_BINARY", - "REFERENCE FILE BINARY" : "REFERENCE_FILE_BINARY", - "STEADY CASE" : "STEADY_CASE", - "FRICTION COEFFICIENT" : "FRICTION_COEFFICIENT", - "NUMBER OF TIME STEPS" : "NUMBER_OF_TIME_STEPS", - "TIME STEP" : "TIME_STEP", - "NUMBER OF SUB-ITERATIONS" : "NUMBER_OF_SUB_ITERATIONS", - "LAW OF BOTTOM FRICTION" : "LAW_OF_BOTTOM_FRICTION", - "CONSTANT FLOW DISCHARGE" : "CONSTANT_FLOW_DISCHARGE", - "NUMBER OF ITERATIONS FOR TELEMAC" : "NUMBER_OF_ITERATIONS_FOR_TELEMAC", - "CRITERION TO UPDATE THE FLOW" : "CRITERION_TO_UPDATE_THE_FLOW", - "CRITICAL EVOLUTION RATIO" : "CRITICAL_EVOLUTION_RATIO", - "NUMBER OF TIDES OR FLOODS" : "NUMBER_OF_TIDES_OR_FLOODS", - "ORIGINAL HOUR OF TIME" : "ORIGINAL_HOUR_OF_TIME", - "ORIGINAL DATE OF TIME" : "ORIGINAL_DATE_OF_TIME", - "TIDE PERIOD" : "TIDE_PERIOD", - "BED LOAD" : "BED_LOAD", - "BED-LOAD TRANSPORT FORMULA" : "BED_LOAD_TRANSPORT_FORMULA", - "B VALUE FOR THE BIJKER FORMULA" : "B_VALUE_FOR_THE_BIJKER_FORMULA", - "MPM COEFFICIENT" : "MPM_COEFFICIENT", - "MINIMUM DEPTH FOR BEDLOAD" : "MINIMUM_DEPTH_FOR_BEDLOAD", - "HIDING FACTOR FOR PARTICULAR SIZE CLASS" : "HIDING_FACTOR_FOR_PARTICULAR_SIZE_CLASS", - "NUMBER OF SIZE-CLASSES OF BED MATERIAL" : "NUMBER_OF_SIZE_CLASSES_OF_BED_MATERIAL", - "INITIAL FRACTION FOR PARTICULAR SIZE CLASS" : "INITIAL_FRACTION_FOR_PARTICULAR_SIZE_CLASS", - "ACTIVE LAYER THICKNESS" : "ACTIVE_LAYER_THICKNESS", - "HIDING FACTOR FORMULA" : "HIDING_FACTOR_FORMULA", - "NUMBER OF BED LOAD MODEL LAYERS" : "NUMBER_OF_BED_LOAD_MODEL_LAYERS", - "CONSTANT ACTIVE LAYER THICKNESS" : "CONSTANT_ACTIVE_LAYER_THICKNESS", - "VERTICAL GRAIN SORTING MODEL" : "VERTICAL_GRAIN_SORTING_MODEL", - "C-VSM MAXIMUM SECTIONS" : "C_VSM_MAXIMUM_SECTIONS", - "C-VSM FULL PRINTOUT PERIOD" : "C_VSM_FULL_PRINTOUT_PERIOD", - "C-VSM PRINTOUT SELECTION" : "C_VSM_PRINTOUT_SELECTION", - "C-VSM DYNAMIC ALT MODEL" : "C_VSM_DYNAMIC_ALT_MODEL", - "C-VSM RESULTS FILE" : "C_VSM_RESULTS_FILE", - "C-VSM RESULTS FILE FORMAT" : "C_VSM_RESULTS_FILE_FORMAT", - "SUSPENSION" : "SUSPENSION", - "DISPERSION ALONG THE FLOW" : "DISPERSION_ALONG_THE_FLOW", - "DISPERSION ACROSS THE FLOW" : "DISPERSION_ACROSS_THE_FLOW", - "EQUILIBRIUM INFLOW CONCENTRATION" : "EQUILIBRIUM_INFLOW_CONCENTRATION", - "MASS CONCENTRATION" : "MASS_CONCENTRATION", - "REFERENCE CONCENTRATION FORMULA" : "REFERENCE_CONCENTRATION_FORMULA", - "CORRECTION ON CONVECTION VELOCITY" : "CORRECTION_ON_CONVECTION_VELOCITY", - "INITIAL SUSPENSION CONCENTRATIONS" : "INITIAL_SUSPENSION_CONCENTRATIONS", - "CONCENTRATION PER CLASS AT BOUNDARIES" : "CONCENTRATION_PER_CLASS_AT_BOUNDARIES", - "DIFFUSION" : "DIFFUSION", - "SETTLING LAG" : "SETTLING_LAG", - "OPTION FOR THE DISPERSION" : "OPTION_FOR_THE_DISPERSION", - "SCHEME OPTION FOR ADVECTION" : "SCHEME_OPTION_FOR_ADVECTION", - "TETA SUSPENSION" : "TETA_SUSPENSION", - "SOLVER ACCURACY FOR SUSPENSION" : "SOLVER_ACCURACY_FOR_SUSPENSION", - "OPTION FOR THE DIFFUSION OF TRACER" : "OPTION_FOR_THE_DIFFUSION_OF_TRACER", - "PRECONDITIONING FOR SUSPENSION" : "PRECONDITIONING_FOR_SUSPENSION", - "COHESIVE SEDIMENTS" : "COHESIVE_SEDIMENTS", - "CONSOLIDATION MODEL" : "CONSOLIDATION_MODEL", - "GEL CONCENTRATION" : "GEL_CONCENTRATION", - "MAXIMUM CONCENTRATION" : "MAXIMUM_CONCENTRATION", - "PERMEABILITY COEFFICIENT" : "PERMEABILITY_COEFFICIENT", - "MUD CONSOLIDATION" : "MUD_CONSOLIDATION", - "NUMBER OF LAYERS OF THE CONSOLIDATION MODEL" : "NUMBER_OF_LAYERS_OF_THE_CONSOLIDATION_MODEL", - "MUD CONCENTRATION PER LAYER" : "MUD_CONCENTRATION_PER_LAYER", - "CRITICAL EROSION SHEAR STRESS OF THE MUD" : "CRITICAL_EROSION_SHEAR_STRESS_OF_THE_MUD", - "MASS TRANSFER PER LAYER" : "MASS_TRANSFER_PER_LAYER", - "CRITICAL SHEAR VELOCITY FOR MUD DEPOSITION" : "CRITICAL_SHEAR_VELOCITY_FOR_MUD_DEPOSITION", - "PARTHENIADES CONSTANT" : "PARTHENIADES_CONSTANT", - "NESTOR" : "NESTOR", - "NESTOR ACTION FILE" : "NESTOR_ACTION_FILE", - "NESTOR POLYGON FILE" : "NESTOR_POLYGON_FILE", - "NESTOR RESTART FILE" : "NESTOR_RESTART_FILE", - "NESTOR SURFACE REFERENCE FILE" : "NESTOR_SURFACE_REFERENCE_FILE", - "EFFECT OF WAVES" : "EFFECT_OF_WAVES", - "MIXED SEDIMENT" : "MIXED_SEDIMENT", - "AD NUMBER OF DERIVATIVES" : "AD_NUMBER_OF_DERIVATIVES", - "AD NAMES OF DERIVATIVES" : "AD_NAMES_OF_DERIVATIVES", - "AD NUMBER OF DIRECTIONS" : "AD_NUMBER_OF_DIRECTIONS", - "AD SYMBOLIC LINEAR SOLVER" : "AD_SYMBOLIC_LINEAR_SOLVER", - "AD LINEAR SOLVER RESET DERIVATIVES" : "AD_LINEAR_SOLVER_RESET_DERIVATIVES", - "AD LINEAR SOLVER DERIVATIVE CONVERGENCE" : "AD_LINEAR_SOLVER_DERIVATIVE_CONVERGENCE", - "LIST OF FILES" : "LIST_OF_FILES", - "DESCRIPTION OF LIBRARIES" : "DESCRIPTION_OF_LIBRARIES", - "DEFAULT EXECUTABLE" : "DEFAULT_EXECUTABLE", - "DEFAULT PARALLEL EXECUTABLE" : "DEFAULT_PARALLEL_EXECUTABLE", -} diff --git a/Telemac/sisyphe_dicoCasFrToCata.py b/Telemac/sisyphe_dicoCasFrToCata.py deleted file mode 100644 index b89d7e7a..00000000 --- a/Telemac/sisyphe_dicoCasFrToCata.py +++ /dev/null @@ -1,362 +0,0 @@ -dicoCataToFrTelemac = { - "TITLE" : "TITRE", - "PARALLEL_PROCESSORS" : "PROCESSEURS PARALLELES", - "CHECKING_THE_MESH" : "VERIFICATION DU MAILLAGE", - "MAXIMUM_NUMBER_OF_BOUNDARIES" : "NOMBRE MAXIMUM DE FRONTIERES", - "VECTOR_LENGTH" : "LONGUEUR DU VECTEUR", - "GEOMETRY_FILE" : "FICHIER DE GEOMETRIE", - "GEOMETRY_FILE_FORMAT" : "FORMAT DU FICHIER DE GEOMETRIE", - "RESULTS_FILE_FORMAT" : "FORMAT DU FICHIER DES RESULTATS", - "HYDRODYNAMIC_FILE_FORMAT" : "FORMAT DU FICHIER HYDRODYNAMIQUE", - "REFERENCE_FILE_FORMAT" : "FORMAT DU FICHIER DE REFERENCE", - "PREVIOUS_SEDIMENTOLOGICAL_COMPUTATION_FILE_FORMAT" : "FORMAT DU FICHIER PRECEDENT SEDIMENTOLOGIQUE", - "WAVE_FILE_FORMAT" : "FORMAT DU FICHIER DE HOULE", - "FORTRAN_FILE" : "FICHIER FORTRAN", - "STEERING_FILE" : "FICHIER DES PARAMETRES", - "BOUNDARY_CONDITIONS_FILE" : "FICHIER DES CONDITIONS AUX LIMITES", - "HYDRODYNAMIC_FILE" : "FICHIER HYDRODYNAMIQUE", - "WAVE_FILE" : "FICHIER DE HOULE", - "PREVIOUS_SEDIMENTOLOGICAL_COMPUTATION_FILE" : "FICHIER PRECEDENT SEDIMENTOLOGIQUE", - "REFERENCE_FILE" : "FICHIER DE REFERENCE", - "VALIDATION" : "VALIDATION", - "BOTTOM_TOPOGRAPHY_FILE" : "FICHIER DES FONDS", - "FLUXLINE_INPUT_FILE" : "FICHIER DE FLUXLINE", - "RESULTS_FILE" : "FICHIER DES RESULTATS", - "VARIABLES_FOR_GRAPHIC_PRINTOUTS" : "VARIABLES POUR LES SORTIES GRAPHIQUES", - "VARIABLES_TO_BE_PRINTED" : "VARIABLES A IMPRIMER", - "RELEASE" : "NUMERO DE VERSION", - "GRAPHIC_PRINTOUT_PERIOD" : "PERIODE DE SORTIE GRAPHIQUE", - "LISTING_PRINTOUT_PERIOD" : "PERIODE DE SORTIE LISTING", - "NUMBER_OF_PRIVATE_ARRAYS" : "NOMBRE DE TABLEAUX PRIVES", - "FLUXLINE" : "FLUXLINE", - "NAMES_OF_PRIVATE_VARIABLES" : "NOMS DES VARIABLES PRIVEES", - "MASS_BALANCE" : "BILAN DE MASSE", - "SECTIONS_INPUT_FILE" : "FICHIER DES SECTIONS DE CONTROLE", - "SECTIONS_OUTPUT_FILE" : "SECTIONS OUTPUT FILE", - "CONTROL_SECTIONS" : "SECTIONS DE CONTROLE", - "COMPUTATION_CONTINUED" : "SUITE DE CALCUL", - "STARTING_TIME_OF_THE_HYDROGRAM" : "TEMPS D'ORIGINE DE L'HYDROGRAMME", - "ORIGIN_COORDINATES" : "COORDONNEES DE L'ORIGINE", - "LIQUID_BOUNDARIES_FILE" : "FICHIER DES FRONTIERES LIQUIDES", - "PRESCRIBED_SOLID_DISCHARGES" : "DEBITS SOLIDES IMPOSES", - "STATIONARY_MODE" : "STATIONARY MODE", - "DICTIONARY" : "DICTIONNAIRE", - "SOLVER" : "SOLVEUR", - "SOLVER_OPTION" : "OPTION DU SOLVEUR", - "PRECONDITIONING" : "PRECONDITIONNEMENT", - "MAXIMUM_NUMBER_OF_ITERATIONS_FOR_SOLVER" : "MAXIMUM D'ITERATIONS POUR LE SOLVEUR", - "MASS_LUMPING" : "MASS-LUMPING", - "TETA" : "TETA", - "ZERO" : "ZERO", - "FINITE_VOLUMES" : "VOLUMES FINIS", - "TYPE_OF_ADVECTION" : "FORME DE LA CONVECTION", - "PARTITIONING_TOOL" : "PARTITIONNEUR", - "SOLVER_FOR_SUSPENSION" : "SOLVEUR POUR LA SUSPENSION", - "SOLVER_OPTION_FOR_SUSPENSION" : "OPTION DU SOLVEUR POUR LA SUSPENSION", - "MAXIMUM_NUMBER_OF_ITERATIONS_FOR_SOLVER_FOR_SUSPENSION" : "MAXIMUM D'ITERATIONS POUR LE SOLVEUR POUR LA SUSPENSION", - "DEBUGGER" : "DEBUGGER", - "SUPG_OPTION" : "OPTION DE SUPG", - "MATRIX_VECTOR_PRODUCT" : "PRODUIT MATRICE-VECTEUR", - "MATRIX_STORAGE" : "STOCKAGE DES MATRICES", - "SOLVER_ACCURACY" : "PRECISION DU SOLVEUR", - "MAXIMUM_NUMBER_OF_ITERATIONS_FOR_ADVECTION_SCHEMES" : "MAXIMUM D'ITERATIONS POUR LES SCHEMAS DE CONVECTION", - "NUMBER_OF_CORRECTIONS_OF_DISTRIBUTIVE_SCHEMES" : "NOMBRE DE CORRECTIONS DES SCHEMAS DISTRIBUTIFS", - "NUMBER_OF_SUB_STEPS_OF_DISTRIBUTIVE_SCHEMES" : "NOMBRE DE SOUS-PAS DES SCHEMAS DISTRIBUTIFS", - "TREATMENT_OF_FLUXES_AT_THE_BOUNDARIES" : "TRAITEMENT DES FLUX AUX FRONTIERES", - "WATER_DENSITY" : "MASSE VOLUMIQUE DE L'EAU", - "SEDIMENT_DENSITY" : "MASSE VOLUMIQUE DU SEDIMENT", - "NON_COHESIVE_BED_POROSITY" : "POROSITE DU LIT NON COHESIF", - "SHIELDS_PARAMETERS" : "PARAMETRES DE SHIELDS", - "GRAVITY_ACCELERATION" : "GRAVITE", - "OPTION_FOR_THE_TREATMENT_OF_TIDAL_FLATS" : "OPTION DE TRAITEMENT DES BANCS DECOUVRANTS", - "OPTION_FOR_THE_TREATMENT_OF_NON_ERODABLE_BEDS" : "OPTION DE TRAITEMENT DES FONDS NON ERODABLES", - "WATER_VISCOSITY" : "VISCOSITE CINEMATIQUE EAU", - "MINIMAL_VALUE_OF_THE_WATER_HEIGHT" : "VALEUR MINIMUM DE H", - "SETTLING_VELOCITIES" : "VITESSES DE CHUTE", - "TIDAL_FLATS" : "BANCS DECOUVRANTS", - "D90" : "D90", - "SEDIMENT_DIAMETERS" : "DIAMETRES DES GRAINS", - "RATIO_BETWEEN_SKIN_FRICTION_AND_MEAN_DIAMETER" : "RATIO ENTRE LA RUGOSITE DE PEAU ET LE DIAMETRE MOYEN", - "SECONDARY_CURRENTS" : "COURANTS SECONDAIRES", - "SECONDARY_CURRENTS_FILE" : "FICHIER DE COURANTS SECONDAIRES", - "FORMULA_FOR_SLOPE_EFFECT" : "FORMULE POUR EFFET DE PENTE", - "FRICTION_ANGLE_OF_THE_SEDIMENT" : "ANGLE DE FROTTEMENT DU SEDIMENT", - "FORMULA_FOR_DEVIATION" : "FORMULE POUR LA DEVIATION", - "PARAMETER_FOR_DEVIATION" : "PARAMETRE POUR LA DEVIATION", - "SEDIMENT_SLIDE" : "GLISSEMENT DU SEDIMENT", - "SLOPE_EFFECT" : "EFFET DE PENTE", - "SKIN_FRICTION_CORRECTION" : "CORRECTION FROTTEMENT DE PEAU", - "BED_ROUGHNESS_PREDICTION" : "PREDICTION DE LA RUGOSITE", - "BED_ROUGHNESS_PREDICTOR_OPTION" : "OPTION DU PREDICTEUR DE RUGOSITE", - "SECONDARY_CURRENTS_ALPHA_COEFFICIENT" : "SECONDARY CURRENTS ALPHA COEFFICIENT", - "MORPHOLOGICAL_FACTOR" : "FACTEUR MORPHOLOGIQUE", - "BETA" : "BETA", - "MEAN_DIAMETER_OF_THE_SEDIMENT" : "DIAMETRE MOYEN DES GRAINS", - "FORMULATION_FOR_DEPOSITION_AND_EROSION" : "FORMULATION POUR DEPOT ET EROSION", - "GRAIN_FEEDING" : "GRAIN-FEEDING", - "GEOMETRY_FILE_BINARY" : "STANDARD DU FICHIER DE GEOMETRIE", - "HYDRODYNAMIC_FILE_BINARY" : "STANDARD DU FICHIER HYDRODYNAMIQUE", - "BINARY_OF_THE_PREVIOUS_SEDIMENTOLOGICAL_COMPUTATION_FILE" : "STANDARD DU FICHIER PRECEDENT SEDIMENTOLOGIQUE", - "RESULTS_FILE_BINARY" : "STANDARD DU FICHIER RESULTAT", - "REFERENCE_FILE_BINARY" : "STANDARD DU FICHIER DE REFERENCE", - "STEADY_CASE" : "CAS PERMANENT", - "FRICTION_COEFFICIENT" : "COEFFICIENT DE FROTTEMENT", - "NUMBER_OF_TIME_STEPS" : "NOMBRE DE PAS DE TEMPS", - "TIME_STEP" : "PAS DE TEMPS", - "NUMBER_OF_SUB_ITERATIONS" : "NOMBRE DE SOUS-ITERATIONS", - "LAW_OF_BOTTOM_FRICTION" : "LOI DE FROTTEMENT SUR LE FOND", - "CONSTANT_FLOW_DISCHARGE" : "CONSTANT FLOW DISCHARGE", - "NUMBER_OF_ITERATIONS_FOR_TELEMAC" : "NOMBRE D'ITERATIONS POUR TELEMAC", - "CRITERION_TO_UPDATE_THE_FLOW" : "CRITERE POUR METTRE A JOUR L'HYDRODYNAMIQUE", - "CRITICAL_EVOLUTION_RATIO" : "RAPPORT D'EVOLUTION CRITIQUE", - "NUMBER_OF_TIDES_OR_FLOODS" : "NOMBRE DE MAREES OU CRUES", - "ORIGINAL_HOUR_OF_TIME" : "HEURE DE L'ORIGINE DES TEMPS", - "ORIGINAL_DATE_OF_TIME" : "DATE DE L'ORIGINE DES TEMPS", - "TIDE_PERIOD" : "PERIODE DE LA MAREE", - "BED_LOAD" : "CHARRIAGE", - "BED_LOAD_TRANSPORT_FORMULA" : "FORMULE DE TRANSPORT SOLIDE", - "B_VALUE_FOR_THE_BIJKER_FORMULA" : "COEFFICIENT B DE LA FORMULE DE BIJKER", - "MPM_COEFFICIENT" : "MPM COEFFICIENT", - "MINIMUM_DEPTH_FOR_BEDLOAD" : "PROFONDEUR MINIMUM POUR LE CHARRIAGE", - "HIDING_FACTOR_FOR_PARTICULAR_SIZE_CLASS" : "HIDING FACTOR PAR CLASSE GRANULO", - "NUMBER_OF_SIZE_CLASSES_OF_BED_MATERIAL" : "NOMBRE DE CLASSES GRANULOMETRIQUES", - "INITIAL_FRACTION_FOR_PARTICULAR_SIZE_CLASS" : "FRACTION INITIALE PAR CLASSE SEDIMENTOLOGIQUE", - "ACTIVE_LAYER_THICKNESS" : "EPAISSEUR DE COUCHE ACTIVE", - "HIDING_FACTOR_FORMULA" : "HIDING FACTOR FORMULA", - "NUMBER_OF_BED_LOAD_MODEL_LAYERS" : "NOMBRE DE COUCHES POUR GRANULO ETENDUE", - "CONSTANT_ACTIVE_LAYER_THICKNESS" : "EPAISSEUR DE COUCHE ACTIVE CONSTANTE", - "VERTICAL_GRAIN_SORTING_MODEL" : "VERTICAL GRAIN SORTING MODEL", - "C_VSM_MAXIMUM_SECTIONS" : "C-VSM MAXIMUM SECTIONS", - "C_VSM_FULL_PRINTOUT_PERIOD" : "C-VSM FULL PRINTOUT PERIOD", - "C_VSM_PRINTOUT_SELECTION" : "C-VSM PRINTOUT SELECTION", - "C_VSM_DYNAMIC_ALT_MODEL" : "C-VSM DYNAMIC ALT MODEL", - "C_VSM_RESULTS_FILE" : "FICHIER DES RESULTATS C-VSM", - "C_VSM_RESULTS_FILE_FORMAT" : "FORMAT DU FICHIER DES C-VSM RESULTATS", - "SUSPENSION" : "SUSPENSION", - "DISPERSION_ALONG_THE_FLOW" : "DISPERSION LONGITUDINALE", - "DISPERSION_ACROSS_THE_FLOW" : "DISPERSION TRANSVERSALE", - "EQUILIBRIUM_INFLOW_CONCENTRATION" : "CONCENTRATION D'EQUILIBRE EN ENTREE", - "MASS_CONCENTRATION" : "CONCENTRATION MASSIQUE", - "REFERENCE_CONCENTRATION_FORMULA" : "FORMULE POUR LA CONCENTRATION DE REFERENCE", - "CORRECTION_ON_CONVECTION_VELOCITY" : "CORRECTION DU CHAMP CONVECTEUR", - "INITIAL_SUSPENSION_CONCENTRATIONS" : "CONCENTRATIONS INITIALES EN SUSPENSION", - "CONCENTRATION_PER_CLASS_AT_BOUNDARIES" : "CONCENTRATIONS PAR CLASSE AUX FRONTIERES", - "DIFFUSION" : "DIFFUSION", - "SETTLING_LAG" : "SETTLING LAG", - "OPTION_FOR_THE_DISPERSION" : "OPTION POUR LA DISPERSION", - "SCHEME_OPTION_FOR_ADVECTION" : "OPTION DU SCHEMA POUR LA CONVECTION", - "TETA_SUSPENSION" : "TETA SUSPENSION", - "SOLVER_ACCURACY_FOR_SUSPENSION" : "PRECISION DU SOLVEUR POUR LA SUSPENSION", - "OPTION_FOR_THE_DIFFUSION_OF_TRACER" : "OPTION POUR LA DIFFUSION DU TRACEUR", - "PRECONDITIONING_FOR_SUSPENSION" : "PRECONDITIONNEMENT POUR LA SUSPENSION", - "COHESIVE_SEDIMENTS" : "SEDIMENTS COHESIFS", - "CONSOLIDATION_MODEL" : "OPTION DU MODELE DE TASSEMENT", - "GEL_CONCENTRATION" : "CONCENTRATION GEL", - "MAXIMUM_CONCENTRATION" : "CONCENTRATION MAXIMALE", - "PERMEABILITY_COEFFICIENT" : "COEFFICIENT DE PERMEABILITE", - "MUD_CONSOLIDATION" : "TASSEMENT DU LIT COHESIF", - "NUMBER_OF_LAYERS_OF_THE_CONSOLIDATION_MODEL" : "NOMBRE DE COUCHES POUR LE TASSEMENT", - "MUD_CONCENTRATION_PER_LAYER" : "CONCENTRATIONS DU LIT DE VASE", - "CRITICAL_EROSION_SHEAR_STRESS_OF_THE_MUD" : "CONTRAINTE CRITIQUE D'EROSION DE LA VASE", - "MASS_TRANSFER_PER_LAYER" : "TRANSFERT DE MASSE PAR COUCHE", - "CRITICAL_SHEAR_VELOCITY_FOR_MUD_DEPOSITION" : "VITESSE CRITIQUE DE DEPOT DE LA VASE", - "PARTHENIADES_CONSTANT" : "CONSTANTE DE PARTHENIADES", - "NESTOR" : "NESTOR", - "NESTOR_ACTION_FILE" : "FICHIER DE NESTOR ACTION", - "NESTOR_POLYGON_FILE" : "FICHIER DE NESTOR POLYGON", - "NESTOR_RESTART_FILE" : "FICHIER DE NESTOR RESTART", - "NESTOR_SURFACE_REFERENCE_FILE" : "FICHIER DE NESTOR DE SURFACE REFERENCE", - "EFFECT_OF_WAVES" : "PRISE EN COMPTE DE LA HOULE", - "MIXED_SEDIMENT" : "SEDIMENT MIXTE", - "AD_NUMBER_OF_DERIVATIVES" : "AD NOMBRE DE DERIVEES", - "AD_NAMES_OF_DERIVATIVES" : "AD NOMS DES DERIVEES", - "AD_NUMBER_OF_DIRECTIONS" : "AD NOMBRE DE DIRECTIONS", - "AD_SYMBOLIC_LINEAR_SOLVER" : "AD SOLVEUR LINEAIRE SYMBOLIQUE", - "AD_LINEAR_SOLVER_RESET_DERIVATIVES" : "AD REMISE A ZERO DES DERIVEES DU SOLVEUR LINEAIRE", - "AD_LINEAR_SOLVER_DERIVATIVE_CONVERGENCE" : "AD CONVERGENCE DES DERIVEES POUR LE SOLVEUR LINEAIRE", - "LIST_OF_FILES" : "LISTE DES FICHIERS", - "DESCRIPTION_OF_LIBRARIES" : "DESCRIPTION DES LIBRAIRIES", - "DEFAULT_EXECUTABLE" : "EXECUTABLE PAR DEFAUT", - "DEFAULT_PARALLEL_EXECUTABLE" : "EXECUTABLE PARALLELE PAR DEFAUT", -} -dicoCasFrToCata = { - "TITRE" : "TITLE", - "PROCESSEURS PARALLELES" : "PARALLEL_PROCESSORS", - "VERIFICATION DU MAILLAGE" : "CHECKING_THE_MESH", - "NOMBRE MAXIMUM DE FRONTIERES" : "MAXIMUM_NUMBER_OF_BOUNDARIES", - "LONGUEUR DU VECTEUR" : "VECTOR_LENGTH", - "FICHIER DE GEOMETRIE" : "GEOMETRY_FILE", - "FORMAT DU FICHIER DE GEOMETRIE" : "GEOMETRY_FILE_FORMAT", - "FORMAT DU FICHIER DES RESULTATS" : "RESULTS_FILE_FORMAT", - "FORMAT DU FICHIER HYDRODYNAMIQUE" : "HYDRODYNAMIC_FILE_FORMAT", - "FORMAT DU FICHIER DE REFERENCE" : "REFERENCE_FILE_FORMAT", - "FORMAT DU FICHIER PRECEDENT SEDIMENTOLOGIQUE" : "PREVIOUS_SEDIMENTOLOGICAL_COMPUTATION_FILE_FORMAT", - "FORMAT DU FICHIER DE HOULE" : "WAVE_FILE_FORMAT", - "FICHIER FORTRAN" : "FORTRAN_FILE", - "FICHIER DES PARAMETRES" : "STEERING_FILE", - "FICHIER DES CONDITIONS AUX LIMITES" : "BOUNDARY_CONDITIONS_FILE", - "FICHIER HYDRODYNAMIQUE" : "HYDRODYNAMIC_FILE", - "FICHIER DE HOULE" : "WAVE_FILE", - "FICHIER PRECEDENT SEDIMENTOLOGIQUE" : "PREVIOUS_SEDIMENTOLOGICAL_COMPUTATION_FILE", - "FICHIER DE REFERENCE" : "REFERENCE_FILE", - "VALIDATION" : "VALIDATION", - "FICHIER DES FONDS" : "BOTTOM_TOPOGRAPHY_FILE", - "FICHIER DE FLUXLINE" : "FLUXLINE_INPUT_FILE", - "FICHIER DES RESULTATS" : "RESULTS_FILE", - "VARIABLES POUR LES SORTIES GRAPHIQUES" : "VARIABLES_FOR_GRAPHIC_PRINTOUTS", - "VARIABLES A IMPRIMER" : "VARIABLES_TO_BE_PRINTED", - "NUMERO DE VERSION" : "RELEASE", - "PERIODE DE SORTIE GRAPHIQUE" : "GRAPHIC_PRINTOUT_PERIOD", - "PERIODE DE SORTIE LISTING" : "LISTING_PRINTOUT_PERIOD", - "NOMBRE DE TABLEAUX PRIVES" : "NUMBER_OF_PRIVATE_ARRAYS", - "FLUXLINE" : "FLUXLINE", - "NOMS DES VARIABLES PRIVEES" : "NAMES_OF_PRIVATE_VARIABLES", - "BILAN DE MASSE" : "MASS_BALANCE", - "FICHIER DES SECTIONS DE CONTROLE" : "SECTIONS_INPUT_FILE", - "SECTIONS OUTPUT FILE" : "SECTIONS_OUTPUT_FILE", - "SECTIONS DE CONTROLE" : "CONTROL_SECTIONS", - "SUITE DE CALCUL" : "COMPUTATION_CONTINUED", - "TEMPS D'ORIGINE DE L'HYDROGRAMME" : "STARTING_TIME_OF_THE_HYDROGRAM", - "COORDONNEES DE L'ORIGINE" : "ORIGIN_COORDINATES", - "FICHIER DES FRONTIERES LIQUIDES" : "LIQUID_BOUNDARIES_FILE", - "DEBITS SOLIDES IMPOSES" : "PRESCRIBED_SOLID_DISCHARGES", - "STATIONARY MODE" : "STATIONARY_MODE", - "DICTIONNAIRE" : "DICTIONARY", - "SOLVEUR" : "SOLVER", - "OPTION DU SOLVEUR" : "SOLVER_OPTION", - "PRECONDITIONNEMENT" : "PRECONDITIONING", - "MAXIMUM D'ITERATIONS POUR LE SOLVEUR" : "MAXIMUM_NUMBER_OF_ITERATIONS_FOR_SOLVER", - "MASS-LUMPING" : "MASS_LUMPING", - "TETA" : "TETA", - "ZERO" : "ZERO", - "VOLUMES FINIS" : "FINITE_VOLUMES", - "FORME DE LA CONVECTION" : "TYPE_OF_ADVECTION", - "PARTITIONNEUR" : "PARTITIONING_TOOL", - "SOLVEUR POUR LA SUSPENSION" : "SOLVER_FOR_SUSPENSION", - "OPTION DU SOLVEUR POUR LA SUSPENSION" : "SOLVER_OPTION_FOR_SUSPENSION", - "MAXIMUM D'ITERATIONS POUR LE SOLVEUR POUR LA SUSPENSION" : "MAXIMUM_NUMBER_OF_ITERATIONS_FOR_SOLVER_FOR_SUSPENSION", - "DEBUGGER" : "DEBUGGER", - "OPTION DE SUPG" : "SUPG_OPTION", - "PRODUIT MATRICE-VECTEUR" : "MATRIX_VECTOR_PRODUCT", - "STOCKAGE DES MATRICES" : "MATRIX_STORAGE", - "PRECISION DU SOLVEUR" : "SOLVER_ACCURACY", - "MAXIMUM D'ITERATIONS POUR LES SCHEMAS DE CONVECTION" : "MAXIMUM_NUMBER_OF_ITERATIONS_FOR_ADVECTION_SCHEMES", - "NOMBRE DE CORRECTIONS DES SCHEMAS DISTRIBUTIFS" : "NUMBER_OF_CORRECTIONS_OF_DISTRIBUTIVE_SCHEMES", - "NOMBRE DE SOUS-PAS DES SCHEMAS DISTRIBUTIFS" : "NUMBER_OF_SUB_STEPS_OF_DISTRIBUTIVE_SCHEMES", - "TRAITEMENT DES FLUX AUX FRONTIERES" : "TREATMENT_OF_FLUXES_AT_THE_BOUNDARIES", - "MASSE VOLUMIQUE DE L'EAU" : "WATER_DENSITY", - "MASSE VOLUMIQUE DU SEDIMENT" : "SEDIMENT_DENSITY", - "POROSITE DU LIT NON COHESIF" : "NON_COHESIVE_BED_POROSITY", - "PARAMETRES DE SHIELDS" : "SHIELDS_PARAMETERS", - "GRAVITE" : "GRAVITY_ACCELERATION", - "OPTION DE TRAITEMENT DES BANCS DECOUVRANTS" : "OPTION_FOR_THE_TREATMENT_OF_TIDAL_FLATS", - "OPTION DE TRAITEMENT DES FONDS NON ERODABLES" : "OPTION_FOR_THE_TREATMENT_OF_NON_ERODABLE_BEDS", - "VISCOSITE CINEMATIQUE EAU" : "WATER_VISCOSITY", - "VALEUR MINIMUM DE H" : "MINIMAL_VALUE_OF_THE_WATER_HEIGHT", - "VITESSES DE CHUTE" : "SETTLING_VELOCITIES", - "BANCS DECOUVRANTS" : "TIDAL_FLATS", - "D90" : "D90", - "DIAMETRES DES GRAINS" : "SEDIMENT_DIAMETERS", - "RATIO ENTRE LA RUGOSITE DE PEAU ET LE DIAMETRE MOYEN" : "RATIO_BETWEEN_SKIN_FRICTION_AND_MEAN_DIAMETER", - "COURANTS SECONDAIRES" : "SECONDARY_CURRENTS", - "FICHIER DE COURANTS SECONDAIRES" : "SECONDARY_CURRENTS_FILE", - "FORMULE POUR EFFET DE PENTE" : "FORMULA_FOR_SLOPE_EFFECT", - "ANGLE DE FROTTEMENT DU SEDIMENT" : "FRICTION_ANGLE_OF_THE_SEDIMENT", - "FORMULE POUR LA DEVIATION" : "FORMULA_FOR_DEVIATION", - "PARAMETRE POUR LA DEVIATION" : "PARAMETER_FOR_DEVIATION", - "GLISSEMENT DU SEDIMENT" : "SEDIMENT_SLIDE", - "EFFET DE PENTE" : "SLOPE_EFFECT", - "CORRECTION FROTTEMENT DE PEAU" : "SKIN_FRICTION_CORRECTION", - "PREDICTION DE LA RUGOSITE" : "BED_ROUGHNESS_PREDICTION", - "OPTION DU PREDICTEUR DE RUGOSITE" : "BED_ROUGHNESS_PREDICTOR_OPTION", - "SECONDARY CURRENTS ALPHA COEFFICIENT" : "SECONDARY_CURRENTS_ALPHA_COEFFICIENT", - "FACTEUR MORPHOLOGIQUE" : "MORPHOLOGICAL_FACTOR", - "BETA" : "BETA", - "DIAMETRE MOYEN DES GRAINS" : "MEAN_DIAMETER_OF_THE_SEDIMENT", - "FORMULATION POUR DEPOT ET EROSION" : "FORMULATION_FOR_DEPOSITION_AND_EROSION", - "GRAIN-FEEDING" : "GRAIN_FEEDING", - "STANDARD DU FICHIER DE GEOMETRIE" : "GEOMETRY_FILE_BINARY", - "STANDARD DU FICHIER HYDRODYNAMIQUE" : "HYDRODYNAMIC_FILE_BINARY", - "STANDARD DU FICHIER PRECEDENT SEDIMENTOLOGIQUE" : "BINARY_OF_THE_PREVIOUS_SEDIMENTOLOGICAL_COMPUTATION_FILE", - "STANDARD DU FICHIER RESULTAT" : "RESULTS_FILE_BINARY", - "STANDARD DU FICHIER DE REFERENCE" : "REFERENCE_FILE_BINARY", - "CAS PERMANENT" : "STEADY_CASE", - "COEFFICIENT DE FROTTEMENT" : "FRICTION_COEFFICIENT", - "NOMBRE DE PAS DE TEMPS" : "NUMBER_OF_TIME_STEPS", - "PAS DE TEMPS" : "TIME_STEP", - "NOMBRE DE SOUS-ITERATIONS" : "NUMBER_OF_SUB_ITERATIONS", - "LOI DE FROTTEMENT SUR LE FOND" : "LAW_OF_BOTTOM_FRICTION", - "CONSTANT FLOW DISCHARGE" : "CONSTANT_FLOW_DISCHARGE", - "NOMBRE D'ITERATIONS POUR TELEMAC" : "NUMBER_OF_ITERATIONS_FOR_TELEMAC", - "CRITERE POUR METTRE A JOUR L'HYDRODYNAMIQUE" : "CRITERION_TO_UPDATE_THE_FLOW", - "RAPPORT D'EVOLUTION CRITIQUE" : "CRITICAL_EVOLUTION_RATIO", - "NOMBRE DE MAREES OU CRUES" : "NUMBER_OF_TIDES_OR_FLOODS", - "HEURE DE L'ORIGINE DES TEMPS" : "ORIGINAL_HOUR_OF_TIME", - "DATE DE L'ORIGINE DES TEMPS" : "ORIGINAL_DATE_OF_TIME", - "PERIODE DE LA MAREE" : "TIDE_PERIOD", - "CHARRIAGE" : "BED_LOAD", - "FORMULE DE TRANSPORT SOLIDE" : "BED_LOAD_TRANSPORT_FORMULA", - "COEFFICIENT B DE LA FORMULE DE BIJKER" : "B_VALUE_FOR_THE_BIJKER_FORMULA", - "MPM COEFFICIENT" : "MPM_COEFFICIENT", - "PROFONDEUR MINIMUM POUR LE CHARRIAGE" : "MINIMUM_DEPTH_FOR_BEDLOAD", - "HIDING FACTOR PAR CLASSE GRANULO" : "HIDING_FACTOR_FOR_PARTICULAR_SIZE_CLASS", - "NOMBRE DE CLASSES GRANULOMETRIQUES" : "NUMBER_OF_SIZE_CLASSES_OF_BED_MATERIAL", - "FRACTION INITIALE PAR CLASSE SEDIMENTOLOGIQUE" : "INITIAL_FRACTION_FOR_PARTICULAR_SIZE_CLASS", - "EPAISSEUR DE COUCHE ACTIVE" : "ACTIVE_LAYER_THICKNESS", - "HIDING FACTOR FORMULA" : "HIDING_FACTOR_FORMULA", - "NOMBRE DE COUCHES POUR GRANULO ETENDUE" : "NUMBER_OF_BED_LOAD_MODEL_LAYERS", - "EPAISSEUR DE COUCHE ACTIVE CONSTANTE" : "CONSTANT_ACTIVE_LAYER_THICKNESS", - "VERTICAL GRAIN SORTING MODEL" : "VERTICAL_GRAIN_SORTING_MODEL", - "C-VSM MAXIMUM SECTIONS" : "C_VSM_MAXIMUM_SECTIONS", - "C-VSM FULL PRINTOUT PERIOD" : "C_VSM_FULL_PRINTOUT_PERIOD", - "C-VSM PRINTOUT SELECTION" : "C_VSM_PRINTOUT_SELECTION", - "C-VSM DYNAMIC ALT MODEL" : "C_VSM_DYNAMIC_ALT_MODEL", - "FICHIER DES RESULTATS C-VSM" : "C_VSM_RESULTS_FILE", - "FORMAT DU FICHIER DES C-VSM RESULTATS" : "C_VSM_RESULTS_FILE_FORMAT", - "SUSPENSION" : "SUSPENSION", - "DISPERSION LONGITUDINALE" : "DISPERSION_ALONG_THE_FLOW", - "DISPERSION TRANSVERSALE" : "DISPERSION_ACROSS_THE_FLOW", - "CONCENTRATION D'EQUILIBRE EN ENTREE" : "EQUILIBRIUM_INFLOW_CONCENTRATION", - "CONCENTRATION MASSIQUE" : "MASS_CONCENTRATION", - "FORMULE POUR LA CONCENTRATION DE REFERENCE" : "REFERENCE_CONCENTRATION_FORMULA", - "CORRECTION DU CHAMP CONVECTEUR" : "CORRECTION_ON_CONVECTION_VELOCITY", - "CONCENTRATIONS INITIALES EN SUSPENSION" : "INITIAL_SUSPENSION_CONCENTRATIONS", - "CONCENTRATIONS PAR CLASSE AUX FRONTIERES" : "CONCENTRATION_PER_CLASS_AT_BOUNDARIES", - "DIFFUSION" : "DIFFUSION", - "SETTLING LAG" : "SETTLING_LAG", - "OPTION POUR LA DISPERSION" : "OPTION_FOR_THE_DISPERSION", - "OPTION DU SCHEMA POUR LA CONVECTION" : "SCHEME_OPTION_FOR_ADVECTION", - "TETA SUSPENSION" : "TETA_SUSPENSION", - "PRECISION DU SOLVEUR POUR LA SUSPENSION" : "SOLVER_ACCURACY_FOR_SUSPENSION", - "OPTION POUR LA DIFFUSION DU TRACEUR" : "OPTION_FOR_THE_DIFFUSION_OF_TRACER", - "PRECONDITIONNEMENT POUR LA SUSPENSION" : "PRECONDITIONING_FOR_SUSPENSION", - "SEDIMENTS COHESIFS" : "COHESIVE_SEDIMENTS", - "OPTION DU MODELE DE TASSEMENT" : "CONSOLIDATION_MODEL", - "CONCENTRATION GEL" : "GEL_CONCENTRATION", - "CONCENTRATION MAXIMALE" : "MAXIMUM_CONCENTRATION", - "COEFFICIENT DE PERMEABILITE" : "PERMEABILITY_COEFFICIENT", - "TASSEMENT DU LIT COHESIF" : "MUD_CONSOLIDATION", - "NOMBRE DE COUCHES POUR LE TASSEMENT" : "NUMBER_OF_LAYERS_OF_THE_CONSOLIDATION_MODEL", - "CONCENTRATIONS DU LIT DE VASE" : "MUD_CONCENTRATION_PER_LAYER", - "CONTRAINTE CRITIQUE D'EROSION DE LA VASE" : "CRITICAL_EROSION_SHEAR_STRESS_OF_THE_MUD", - "TRANSFERT DE MASSE PAR COUCHE" : "MASS_TRANSFER_PER_LAYER", - "VITESSE CRITIQUE DE DEPOT DE LA VASE" : "CRITICAL_SHEAR_VELOCITY_FOR_MUD_DEPOSITION", - "CONSTANTE DE PARTHENIADES" : "PARTHENIADES_CONSTANT", - "NESTOR" : "NESTOR", - "FICHIER DE NESTOR ACTION" : "NESTOR_ACTION_FILE", - "FICHIER DE NESTOR POLYGON" : "NESTOR_POLYGON_FILE", - "FICHIER DE NESTOR RESTART" : "NESTOR_RESTART_FILE", - "FICHIER DE NESTOR DE SURFACE REFERENCE" : "NESTOR_SURFACE_REFERENCE_FILE", - "PRISE EN COMPTE DE LA HOULE" : "EFFECT_OF_WAVES", - "SEDIMENT MIXTE" : "MIXED_SEDIMENT", - "AD NOMBRE DE DERIVEES" : "AD_NUMBER_OF_DERIVATIVES", - "AD NOMS DES DERIVEES" : "AD_NAMES_OF_DERIVATIVES", - "AD NOMBRE DE DIRECTIONS" : "AD_NUMBER_OF_DIRECTIONS", - "AD SOLVEUR LINEAIRE SYMBOLIQUE" : "AD_SYMBOLIC_LINEAR_SOLVER", - "AD REMISE A ZERO DES DERIVEES DU SOLVEUR LINEAIRE" : "AD_LINEAR_SOLVER_RESET_DERIVATIVES", - "AD CONVERGENCE DES DERIVEES POUR LE SOLVEUR LINEAIRE" : "AD_LINEAR_SOLVER_DERIVATIVE_CONVERGENCE", - "LISTE DES FICHIERS" : "LIST_OF_FILES", - "DESCRIPTION DES LIBRAIRIES" : "DESCRIPTION_OF_LIBRARIES", - "EXECUTABLE PAR DEFAUT" : "DEFAULT_EXECUTABLE", - "EXECUTABLE PARALLELE PAR DEFAUT" : "DEFAULT_PARALLEL_EXECUTABLE", -} diff --git a/Telemac/sisyphe_enum_auto.py b/Telemac/sisyphe_enum_auto.py deleted file mode 100644 index d869b592..00000000 --- a/Telemac/sisyphe_enum_auto.py +++ /dev/null @@ -1,685 +0,0 @@ -#/usr/bin/env python -# -*- coding: latin-1 -*- -TelemacdicoEn = { -'VARIABLES_FOR_GRAPHIC_PRINTOUTS' : { - 'U':"velocity along x axis (m/s)", - 'V':"velocity along y axis (m/s)", - 'C':"wawe celerity (m/s)", - 'H':"water depth (m)", - 'S':"free surface elevation (m)", - 'B':"bottom elevation (m)", - 'F':"Froude number", - 'Q':"scalar flowrate of fluid (m2/s)", - 'I':"flowrate along x axis (m2/s)", - 'J':"flowrate along y axis (m2/s)", - 'M':"bed-load discharge (m2/s)", - 'N':"bed-load discharge along x axis (m2/s)", - 'P':"bed-load discharge along y axis (m2/s)", - 'E':"bottom evolution (m)", - 'R':"non erodable bottom", - 'KS':"total bed roughness (m)", - 'TOB':"Bed Shear stress (Totalfriction) (N/m2)", - 'MU': "Skin friction correction factor", - 'D50': "Mean grain diameter", - 'THETAW':"wave angle with axis Oy (deg)", - 'QSSUSP':"suspended load transport rate (m2/s)", - 'QSBL':"bed load transport rate (m2/s)", - 'W':"wave height", - 'X':"wave period", - 'UWB':"wave orbital velocity (m/s)", - '1Ai':"fraction of sediment of class i in the first layer", - '2Ai':"fraction of sediment of class i in the second layer", - 'kAi':"fraction of sediment of class i in the k layer", - 'kES':"thickness of the k layer", - 'kCONC':"concentration of bed layer k", - 'QSi':"bed load transport rate of sediment of class i", - 'CSi':"concentration volumic or mass concentration for class i", - 'CSAT':"saturated concentration (kg/m3)", - 'A':"supplementary variable A", - 'G':"supplementary variable G", - 'L':"supplementary variable L", - 'O':"supplementary variable O", - }, -'VARIABLES_TO_BE_PRINTED' : { - 'U':"velocity along x axis (m/s)", - 'V':"velocity along y axis (m/s)", - 'C':"wawe celerity (m/s)", - 'H':"water depth (m)", - 'S':"free surface elevation (m)", - 'B':"bottom elevation (m)", - 'F':"Froude number", - 'Q':"scalar flowrate of fluid (m2/s)", - 'I':"flowrate along x axis (m2/s)", - 'J':"flowrate along y axis (m2/s)", - 'M':"bed-load discharge (m2/s)", - 'N':"bed-load discharge along x axis (m2/s)", - 'P':"bed-load discharge along y axis (m2/s)", - 'E':"bottom evolution (m)", - 'R':"non erodable bottom", - 'KS':"bed friction coefficient (m if Nikuradse)", - 'TOB':"mean bottom friction (N/m2)", - 'THETAW':"wave angle with axis Oy (deg)", - 'W':"wave height", - 'X':"wave period", - '1Ai':"fraction of sediment of class i in the first layer", - '2Ai':"fraction of sediment of class i in the second layer", - 'QSi':"bed load transport rate of sediment of class i", - '*ES': "thicknes of bed layer i", - '*CONC': "concentration of bed layer i ", - 'CSi':"concentration for class i", - 'CSAT':"saturated concentration (kg/m3)", - 'A':"supplementary variable A", - 'G':"supplementary variable G", - 'L':"supplementary variable L", - 'O':"supplementary variable O", - }, -'SOLVER' : { - 3:"conjugate gradient on a normal equation", - 1:"conjugate gradient", - 2:"conjugate residual", - 4:"minimum error", - 6:"cgstab", - 7:"gmres", - }, -'PRECONDITIONING' : { - 2:"diagonal", - 0:"no preconditioning", - 3:"diagonal condensee", - 7:"crout", - 14:"diagonal and crout", - 21:"diagonal condensed and crout", - }, -'TYPE_OF_ADVECTION' : { - 1:"CHARACTERISTICS", - 2:"SUPG", - 3:"CONSERVATIVE N-SCHEME", - 4:"CONSERVATIVE N-SCHEME", - 5:"CONSERVATIVE PSI-SCHEME", - 6:"NON CONSERVATIVE PSI SCHEME", - 7:"IMPLICIT NON CONSERVATIVE N SCHEME", - 13:"EDGE-BASED N-SCHEME", - 14:"EDGE-BASED N-SCHEME", - 15:"ERIA SCHEME", - }, -'SOLVER_FOR_SUSPENSION' : { - 1:"conjugate gradient", - 2:"conjugate residual", - 3:"conjugate gradient on a normal equation", - 4:"minimum error", - 7:"gmres (see option for the solver for tracer diffusion)", - }, -'TREATMENT_OF_FLUXES_AT_THE_BOUNDARIES' : { - 1:"Priority to prescribed values", - 2:"Priority to fluxes", - }, -'FORMULATION_FOR_DEPOSITION_AND_EROSION' : { - 1:"KRONE ET PARTHENIADES", - 2:"FREDSOE / ROUSE", - }, -'LAW_OF_BOTTOM_FRICTION' : { - 1:" ", - 2:"CHEZY", - 3:"STRICKLER", - 4:"MANNING", - 5:"NIKURADSE", - }, -'OPTION_FOR_THE_DIFFUSION_OF_TRACER' : { - 1:"div( nu grad(T) )", - 2:"1/h div ( h nu grad(T)", - }, -'PRECONDITIONING_FOR_SUSPENSION' : { - 2:"diagonal", - 0:"no preconditioning", - 3:"diagonal condensee", - 7:"crout", - }, -} -TelemacdicoFr = { -'VARIABLES_FOR_GRAPHIC_PRINTOUTS' : { - 'U':"vitesse suivant l axe des x (m/s)", - 'V':"vitesse suivant l axe des y (m/s)", - 'C':"celerite", - 'H':"hauteur d eau (m)", - 'S':"cote de la surface libre (m)", - 'B':"cote du fond (m)", - 'F':"nombre de Froude", - 'Q':"debit", - 'I':"composante du debit selon l axe des x", - 'J':"composante du debit selon l axe des y", - 'M':"debit solide", - 'N':"composante du debit solide selon l axe des x", - 'P':"composante du debit solide selon l axe des y", - 'E':"evolution du fond", - 'R':"fonds non erodables", - 'W':"hauteur de houle", - 'X':"periode de houle", - 'UWB':"wave orbital velocity (m/s)", - 'KS':"coefficient de Rugosite totale (m)", - 'TOB':"Contrainte de frottement(N/m2)", - 'MU': "Coefficient de correction pour frottement de peau", - 'D50': "Diametre moyen du sediment", - 'THETAW':"angle entre la houle et l'axe Oy (deg)", - 'QSSUSP':"taux de transport en suspension", - 'QSBL':"taux de transport par charriage", - '1Ai':"fraction de sediment de la classe i dans la premiere couche", - '2Ai':"fraction de sediment de la classe i dans la deuxieme couche", - 'kAi':"fraction of sediment of class i in the k layer", - 'kES':"thickness of the k layer", - 'kCONC':"concentration of bed layer k", - 'QSi':"debit solide pour la classe i", - 'CSi':"concentration volumique ou g/l pour la classe i", - 'CSAT':"concentration volumique equil ou g/l", - 'A':"variable supplementaire A", - 'G':"variable supplementaire G", - 'L':"variable supplementaire L", - 'O':"variable supplementaire O", - }, -'VARIABLES_TO_BE_PRINTED' : { - 'U':"vitesse suivant l axe des x (m/s)", - 'V':"vitesse suivant l axe des y (m/s)", - 'C':"celerite", - 'H':"hauteur d eau (m)", - 'S':"cote de la surface libre (m)", - 'B':"cote du fond (m)", - 'F':"nombre de Froude", - 'Q':"debit", - 'I':"composante du debit selon l axe des x", - 'J':"composante du debit selon l axe des y", - 'M':"debit solide", - 'N':"composante du debit solide selon l axe des x", - 'P':"composante du debit solide selon l axe des y", - 'E':"evolution du fond", - 'R':"fonds non erodables", - 'W':"hauteur de houle", - 'X':"periode de houle", - 'KS':"coefficient de frottement (m)", - 'TOB':"frottement moyen (N/m2)", - 'THETAW':"angle entre la houle et l'axe Oy (deg)", - '1Ai':"fraction de sediment de la classe i dans la premiere couche", - '2Ai':"fraction de sediment de la classe i dans la deuxieme couche", - 'QSi':"debit solide pour la classe i", - 'CSi':"concentration pour la classe i", - '*ES': "thicknes of bed layer i", - '*CONC': "concentration of bed layer i ", - 'CSAT':"saturated concentration (kg/m3)", - 'A':"variable supplementaire A", - 'G':"variable supplementaire G", - 'L':"variable supplementaire L", - 'O':"variable supplementaire O", - }, -'SOLVER' : { - 3:"equation normale", - 1:"gradient conjuge", - 2:"residu conjuge", - 4:"erreur minimale", - 6:"cgstab", - 7:"gmres", - }, -'PRECONDITIONING' : { - 2:"diagonal", - 0:"aucun", - 3:"diagonal condensee", - 7:"crout", - 14:"diagonal et crout", - 21:"diagonal condense et crout", - }, -'TYPE_OF_ADVECTION' : { - 1:"CARACTERISTIQUES", - 2:"SUPG", - 3:"SCHEMA N CONSERVATIF", - 4:"SCHEMA N CONSERVATIF", - 5:"SCHEMA PSI CONSERVATIF", - 6:"SCHEMA PSI NON CONSERVATIF", - 7:"SCHEMA N IMPLICITE NON CONSERVATIF", - 13:"SCHEMA N PAR SEGMENTS", - 14:"SCHEMA N PAR SEGMENTS", - 15:"SCHEMA ERIA", - }, -'SOLVER_FOR_SUSPENSION' : { - 1:"gradient conjuge", - 2:"residu conjuge", - 3:"gradient conjuge sur equation normale", - 4:"erreur minimale", - 7:"gmres (voir ausi option du solveur)", - }, -'TREATMENT_OF_FLUXES_AT_THE_BOUNDARIES' : { - 1:"Priorite aux valeurs imposees", - 2:"Priorite aux flux", - }, -'FORMULATION_FOR_DEPOSITION_AND_EROSION' : { - 1:"KRONE ET PARTHENIADES", - 2:"FREDSOE / ROUSE", - }, -'LAW_OF_BOTTOM_FRICTION' : { - 1:" ", - 2:"CHEZY", - 3:"STRICKLER", - 4:"MANNING", - 5:"NIKURADSE", - }, -'OPTION_FOR_THE_DIFFUSION_OF_TRACER' : { - 1:"div( nu grad(T) )", - 2:"1/h div ( h nu grad(T)", - }, -'PRECONDITIONING_FOR_SUSPENSION' : { - 2:"diagonal", - 0:"aucun", - 3:"diagonal condensee", - 7:"crout", - }, -} - -DicoCasFrToCata = { - "TITRE":"TITLE", - "PROCESSEURS PARALLELES":"PARALLEL_PROCESSORS", - "VERIFICATION DU MAILLAGE":"CHECKING_THE_MESH", - "NOMBRE MAXIMUM DE FRONTIERES":"MAXIMUM_NUMBER_OF_BOUNDARIES", - "LONGUEUR DU VECTEUR":"VECTOR_LENGTH", - "FICHIER DE GEOMETRIE":"GEOMETRY_FILE", - "FORMAT DU FICHIER DE GEOMETRIE":"GEOMETRY_FILE_FORMAT", - "FORMAT DU FICHIER DES RESULTATS":"RESULTS_FILE_FORMAT", - "FORMAT DU FICHIER HYDRODYNAMIQUE":"HYDRODYNAMIC_FILE_FORMAT", - "FORMAT DU FICHIER DE REFERENCE":"REFERENCE_FILE_FORMAT", - "FORMAT DU FICHIER PRECEDENT SEDIMENTOLOGIQUE":"PREVIOUS_SEDIMENTOLOGICAL_COMPUTATION_FILE_FORMAT", - "FORMAT DU FICHIER DE HOULE":"WAVE_FILE_FORMAT", - "FICHIER FORTRAN":"FORTRAN_FILE", - "FICHIER DES PARAMETRES":"STEERING_FILE", - "FICHIER DES CONDITIONS AUX LIMITES":"BOUNDARY_CONDITIONS_FILE", - "FICHIER HYDRODYNAMIQUE":"HYDRODYNAMIC_FILE", - "FICHIER DE HOULE":"WAVE_FILE", - "FICHIER PRECEDENT SEDIMENTOLOGIQUE":"PREVIOUS_SEDIMENTOLOGICAL_COMPUTATION_FILE", - "FICHIER DE REFERENCE":"REFERENCE_FILE", - "VALIDATION":"VALIDATION", - "FICHIER DES FONDS":"BOTTOM_TOPOGRAPHY_FILE", - "FICHIER DE FLUXLINE":"FLUXLINE_INPUT_FILE", - "FICHIER DES RESULTATS":"RESULTS_FILE", - "VARIABLES POUR LES SORTIES GRAPHIQUES":"VARIABLES_FOR_GRAPHIC_PRINTOUTS", - "VARIABLES A IMPRIMER":"VARIABLES_TO_BE_PRINTED", - "NUMERO DE VERSION":"RELEASE", - "PERIODE DE SORTIE GRAPHIQUE":"GRAPHIC_PRINTOUT_PERIOD", - "PERIODE DE SORTIE LISTING":"LISTING_PRINTOUT_PERIOD", - "NOMBRE DE TABLEAUX PRIVES":"NUMBER_OF_PRIVATE_ARRAYS", - "FLUXLINE":"FLUXLINE", - "NOMS DES VARIABLES PRIVEES":"NAMES_OF_PRIVATE_VARIABLES", - "BILAN DE MASSE":"MASS_BALANCE", - "FICHIER DES SECTIONS DE CONTROLE":"SECTIONS_INPUT_FILE", - "SECTIONS OUTPUT FILE":"SECTIONS_OUTPUT_FILE", - "SECTIONS DE CONTROLE":"CONTROL_SECTIONS", - "SUITE DE CALCUL":"COMPUTATION_CONTINUED", - "TEMPS D'ORIGINE DE L'HYDROGRAMME":"STARTING_TIME_OF_THE_HYDROGRAM", - "COORDONNEES DE L'ORIGINE":"ORIGIN_COORDINATES", - "FICHIER DES FRONTIERES LIQUIDES":"LIQUID_BOUNDARIES_FILE", - "DEBITS SOLIDES IMPOSES":"PRESCRIBED_SOLID_DISCHARGES", - "STATIONARY MODE":"STATIONARY_MODE", - "DICTIONNAIRE":"DICTIONARY", - "SOLVEUR":"SOLVER", - "OPTION DU SOLVEUR":"SOLVER_OPTION", - "PRECONDITIONNEMENT":"PRECONDITIONING", - "MAXIMUM D'ITERATIONS POUR LE SOLVEUR":"MAXIMUM_NUMBER_OF_ITERATIONS_FOR_SOLVER", - "MASS-LUMPING":"MASS_LUMPING", - "TETA":"TETA", - "ZERO":"ZERO", - "VOLUMES FINIS":"FINITE_VOLUMES", - "FORME DE LA CONVECTION":"TYPE_OF_ADVECTION", - "PARTITIONNEUR":"PARTITIONING_TOOL", - "SOLVEUR POUR LA SUSPENSION":"SOLVER_FOR_SUSPENSION", - "OPTION DU SOLVEUR POUR LA SUSPENSION":"SOLVER_OPTION_FOR_SUSPENSION", - "MAXIMUM D'ITERATIONS POUR LE SOLVEUR POUR LA SUSPENSION":"MAXIMUM_NUMBER_OF_ITERATIONS_FOR_SOLVER_FOR_SUSPENSION", - "DEBUGGER":"DEBUGGER", - "OPTION DE SUPG":"SUPG_OPTION", - "PRODUIT MATRICE-VECTEUR":"MATRIX_VECTOR_PRODUCT", - "STOCKAGE DES MATRICES":"MATRIX_STORAGE", - "PRECISION DU SOLVEUR":"SOLVER_ACCURACY", - "MAXIMUM D'ITERATIONS POUR LES SCHEMAS DE CONVECTION":"MAXIMUM_NUMBER_OF_ITERATIONS_FOR_ADVECTION_SCHEMES", - "NOMBRE DE CORRECTIONS DES SCHEMAS DISTRIBUTIFS":"NUMBER_OF_CORRECTIONS_OF_DISTRIBUTIVE_SCHEMES", - "NOMBRE DE SOUS-PAS DES SCHEMAS DISTRIBUTIFS":"NUMBER_OF_SUB_STEPS_OF_DISTRIBUTIVE_SCHEMES", - "TRAITEMENT DES FLUX AUX FRONTIERES":"TREATMENT_OF_FLUXES_AT_THE_BOUNDARIES", - "MASSE VOLUMIQUE DE L'EAU":"WATER_DENSITY", - "MASSE VOLUMIQUE DU SEDIMENT":"SEDIMENT_DENSITY", - "POROSITE DU LIT NON COHESIF":"NON_COHESIVE_BED_POROSITY", - "PARAMETRES DE SHIELDS":"SHIELDS_PARAMETERS", - "GRAVITE":"GRAVITY_ACCELERATION", - "OPTION DE TRAITEMENT DES BANCS DECOUVRANTS":"OPTION_FOR_THE_TREATMENT_OF_TIDAL_FLATS", - "OPTION DE TRAITEMENT DES FONDS NON ERODABLES":"OPTION_FOR_THE_TREATMENT_OF_NON_ERODABLE_BEDS", - "VISCOSITE CINEMATIQUE EAU":"WATER_VISCOSITY", - "VALEUR MINIMUM DE H":"MINIMAL_VALUE_OF_THE_WATER_HEIGHT", - "VITESSES DE CHUTE":"SETTLING_VELOCITIES", - "BANCS DECOUVRANTS":"TIDAL_FLATS", - "D90":"D90", - "DIAMETRES DES GRAINS":"SEDIMENT_DIAMETERS", - "RATIO ENTRE LA RUGOSITE DE PEAU ET LE DIAMETRE MOYEN":"RATIO_BETWEEN_SKIN_FRICTION_AND_MEAN_DIAMETER", - "COURANTS SECONDAIRES":"SECONDARY_CURRENTS", - "FICHIER DE COURANTS SECONDAIRES":"SECONDARY_CURRENTS_FILE", - "FORMULE POUR EFFET DE PENTE":"FORMULA_FOR_SLOPE_EFFECT", - "ANGLE DE FROTTEMENT DU SEDIMENT":"FRICTION_ANGLE_OF_THE_SEDIMENT", - "FORMULE POUR LA DEVIATION":"FORMULA_FOR_DEVIATION", - "PARAMETRE POUR LA DEVIATION":"PARAMETER_FOR_DEVIATION", - "GLISSEMENT DU SEDIMENT":"SEDIMENT_SLIDE", - "EFFET DE PENTE":"SLOPE_EFFECT", - "CORRECTION FROTTEMENT DE PEAU":"SKIN_FRICTION_CORRECTION", - "PREDICTION DE LA RUGOSITE":"BED_ROUGHNESS_PREDICTION", - "OPTION DU PREDICTEUR DE RUGOSITE":"BED_ROUGHNESS_PREDICTOR_OPTION", - "SECONDARY CURRENTS ALPHA COEFFICIENT":"SECONDARY_CURRENTS_ALPHA_COEFFICIENT", - "FACTEUR MORPHOLOGIQUE":"MORPHOLOGICAL_FACTOR", - "BETA":"BETA", - "DIAMETRE MOYEN DES GRAINS":"MEAN_DIAMETER_OF_THE_SEDIMENT", - "FORMULATION POUR DEPOT ET EROSION":"FORMULATION_FOR_DEPOSITION_AND_EROSION", - "GRAIN-FEEDING":"GRAIN_FEEDING", - "STANDARD DU FICHIER DE GEOMETRIE":"GEOMETRY_FILE_BINARY", - "STANDARD DU FICHIER HYDRODYNAMIQUE":"HYDRODYNAMIC_FILE_BINARY", - "STANDARD DU FICHIER PRECEDENT SEDIMENTOLOGIQUE":"BINARY_OF_THE_PREVIOUS_SEDIMENTOLOGICAL_COMPUTATION_FILE", - "STANDARD DU FICHIER RESULTAT":"RESULTS_FILE_BINARY", - "STANDARD DU FICHIER DE REFERENCE":"REFERENCE_FILE_BINARY", - "CAS PERMANENT":"STEADY_CASE", - "COEFFICIENT DE FROTTEMENT":"FRICTION_COEFFICIENT", - "NOMBRE DE PAS DE TEMPS":"NUMBER_OF_TIME_STEPS", - "PAS DE TEMPS":"TIME_STEP", - "NOMBRE DE SOUS-ITERATIONS":"NUMBER_OF_SUB_ITERATIONS", - "LOI DE FROTTEMENT SUR LE FOND":"LAW_OF_BOTTOM_FRICTION", - "CONSTANT FLOW DISCHARGE":"CONSTANT_FLOW_DISCHARGE", - "NOMBRE D'ITERATIONS POUR TELEMAC":"NUMBER_OF_ITERATIONS_FOR_TELEMAC", - "CRITERE POUR METTRE A JOUR L'HYDRODYNAMIQUE":"CRITERION_TO_UPDATE_THE_FLOW", - "RAPPORT D'EVOLUTION CRITIQUE":"CRITICAL_EVOLUTION_RATIO", - "NOMBRE DE MAREES OU CRUES":"NUMBER_OF_TIDES_OR_FLOODS", - "HEURE DE L'ORIGINE DES TEMPS":"ORIGINAL_HOUR_OF_TIME", - "DATE DE L'ORIGINE DES TEMPS":"ORIGINAL_DATE_OF_TIME", - "PERIODE DE LA MAREE":"TIDE_PERIOD", - "CHARRIAGE":"BED_LOAD", - "FORMULE DE TRANSPORT SOLIDE":"BED_LOAD_TRANSPORT_FORMULA", - "COEFFICIENT B DE LA FORMULE DE BIJKER":"B_VALUE_FOR_THE_BIJKER_FORMULA", - "MPM COEFFICIENT":"MPM_COEFFICIENT", - "PROFONDEUR MINIMUM POUR LE CHARRIAGE":"MINIMUM_DEPTH_FOR_BEDLOAD", - "HIDING FACTOR PAR CLASSE GRANULO":"HIDING_FACTOR_FOR_PARTICULAR_SIZE_CLASS", - "NOMBRE DE CLASSES GRANULOMETRIQUES":"NUMBER_OF_SIZE_CLASSES_OF_BED_MATERIAL", - "FRACTION INITIALE PAR CLASSE SEDIMENTOLOGIQUE":"INITIAL_FRACTION_FOR_PARTICULAR_SIZE_CLASS", - "EPAISSEUR DE COUCHE ACTIVE":"ACTIVE_LAYER_THICKNESS", - "HIDING FACTOR FORMULA":"HIDING_FACTOR_FORMULA", - "NOMBRE DE COUCHES POUR GRANULO ETENDUE":"NUMBER_OF_BED_LOAD_MODEL_LAYERS", - "EPAISSEUR DE COUCHE ACTIVE CONSTANTE":"CONSTANT_ACTIVE_LAYER_THICKNESS", - "VERTICAL GRAIN SORTING MODEL":"VERTICAL_GRAIN_SORTING_MODEL", - "C-VSM MAXIMUM SECTIONS":"C_VSM_MAXIMUM_SECTIONS", - "C-VSM FULL PRINTOUT PERIOD":"C_VSM_FULL_PRINTOUT_PERIOD", - "C-VSM PRINTOUT SELECTION":"C_VSM_PRINTOUT_SELECTION", - "C-VSM DYNAMIC ALT MODEL":"C_VSM_DYNAMIC_ALT_MODEL", - "FICHIER DES RESULTATS C-VSM":"C_VSM_RESULTS_FILE", - "FORMAT DU FICHIER DES C-VSM RESULTATS":"C_VSM_RESULTS_FILE_FORMAT", - "SUSPENSION":"SUSPENSION", - "DISPERSION LONGITUDINALE":"DISPERSION_ALONG_THE_FLOW", - "DISPERSION TRANSVERSALE":"DISPERSION_ACROSS_THE_FLOW", - "CONCENTRATION D'EQUILIBRE EN ENTREE":"EQUILIBRIUM_INFLOW_CONCENTRATION", - "CONCENTRATION MASSIQUE":"MASS_CONCENTRATION", - "FORMULE POUR LA CONCENTRATION DE REFERENCE":"REFERENCE_CONCENTRATION_FORMULA", - "CORRECTION DU CHAMP CONVECTEUR":"CORRECTION_ON_CONVECTION_VELOCITY", - "CONCENTRATIONS INITIALES EN SUSPENSION":"INITIAL_SUSPENSION_CONCENTRATIONS", - "CONCENTRATIONS PAR CLASSE AUX FRONTIERES":"CONCENTRATION_PER_CLASS_AT_BOUNDARIES", - "DIFFUSION":"DIFFUSION", - "SETTLING LAG":"SETTLING_LAG", - "OPTION POUR LA DISPERSION":"OPTION_FOR_THE_DISPERSION", - "OPTION DU SCHEMA POUR LA CONVECTION":"SCHEME_OPTION_FOR_ADVECTION", - "TETA SUSPENSION":"TETA_SUSPENSION", - "PRECISION DU SOLVEUR POUR LA SUSPENSION":"SOLVER_ACCURACY_FOR_SUSPENSION", - "OPTION POUR LA DIFFUSION DU TRACEUR":"OPTION_FOR_THE_DIFFUSION_OF_TRACER", - "PRECONDITIONNEMENT POUR LA SUSPENSION":"PRECONDITIONING_FOR_SUSPENSION", - "SEDIMENTS COHESIFS":"COHESIVE_SEDIMENTS", - "OPTION DU MODELE DE TASSEMENT":"CONSOLIDATION_MODEL", - "CONCENTRATION GEL":"GEL_CONCENTRATION", - "CONCENTRATION MAXIMALE":"MAXIMUM_CONCENTRATION", - "COEFFICIENT DE PERMEABILITE":"PERMEABILITY_COEFFICIENT", - "TASSEMENT DU LIT COHESIF":"MUD_CONSOLIDATION", - "NOMBRE DE COUCHES POUR LE TASSEMENT":"NUMBER_OF_LAYERS_OF_THE_CONSOLIDATION_MODEL", - "CONCENTRATIONS DU LIT DE VASE":"MUD_CONCENTRATION_PER_LAYER", - "CONTRAINTE CRITIQUE D'EROSION DE LA VASE":"CRITICAL_EROSION_SHEAR_STRESS_OF_THE_MUD", - "TRANSFERT DE MASSE PAR COUCHE":"MASS_TRANSFER_PER_LAYER", - "VITESSE CRITIQUE DE DEPOT DE LA VASE":"CRITICAL_SHEAR_VELOCITY_FOR_MUD_DEPOSITION", - "CONSTANTE DE PARTHENIADES":"PARTHENIADES_CONSTANT", - "NESTOR":"NESTOR", - "FICHIER DE NESTOR ACTION":"NESTOR_ACTION_FILE", - "FICHIER DE NESTOR POLYGON":"NESTOR_POLYGON_FILE", - "FICHIER DE NESTOR RESTART":"NESTOR_RESTART_FILE", - "FICHIER DE NESTOR DE SURFACE REFERENCE":"NESTOR_SURFACE_REFERENCE_FILE", - "PRISE EN COMPTE DE LA HOULE":"EFFECT_OF_WAVES", - "SEDIMENT MIXTE":"MIXED_SEDIMENT", - "AD NOMBRE DE DERIVEES":"AD_NUMBER_OF_DERIVATIVES", - "AD NOMS DES DERIVEES":"AD_NAMES_OF_DERIVATIVES", - "AD NOMBRE DE DIRECTIONS":"AD_NUMBER_OF_DIRECTIONS", - "AD SOLVEUR LINEAIRE SYMBOLIQUE":"AD_SYMBOLIC_LINEAR_SOLVER", - "AD REMISE A ZERO DES DERIVEES DU SOLVEUR LINEAIRE":"AD_LINEAR_SOLVER_RESET_DERIVATIVES", - "AD CONVERGENCE DES DERIVEES POUR LE SOLVEUR LINEAIRE":"AD_LINEAR_SOLVER_DERIVATIVE_CONVERGENCE", - "LISTE DES FICHIERS":"LIST_OF_FILES", - "DESCRIPTION DES LIBRAIRIES":"DESCRIPTION_OF_LIBRARIES", - "EXECUTABLE PAR DEFAUT":"DEFAULT_EXECUTABLE", - "EXECUTABLE PARALLELE PAR DEFAUT":"DEFAULT_PARALLEL_EXECUTABLE", -} - -DicoCasEnToCata = { - 'TITLE':'TITLE', - 'PARALLEL PROCESSORS':'PARALLEL_PROCESSORS', - 'CHECKING THE MESH':'CHECKING_THE_MESH', - 'MAXIMUM NUMBER OF BOUNDARIES':'MAXIMUM_NUMBER_OF_BOUNDARIES', - 'VECTOR LENGTH':'VECTOR_LENGTH', - 'GEOMETRY FILE':'GEOMETRY_FILE', - 'GEOMETRY FILE FORMAT':'GEOMETRY_FILE_FORMAT', - 'RESULTS FILE FORMAT':'RESULTS_FILE_FORMAT', - 'HYDRODYNAMIC FILE FORMAT':'HYDRODYNAMIC_FILE_FORMAT', - 'REFERENCE FILE FORMAT':'REFERENCE_FILE_FORMAT', - 'PREVIOUS SEDIMENTOLOGICAL COMPUTATION FILE FORMAT':'PREVIOUS_SEDIMENTOLOGICAL_COMPUTATION_FILE_FORMAT', - 'WAVE FILE FORMAT':'WAVE_FILE_FORMAT', - 'FORTRAN FILE':'FORTRAN_FILE', - 'STEERING FILE':'STEERING_FILE', - 'BOUNDARY CONDITIONS FILE':'BOUNDARY_CONDITIONS_FILE', - 'HYDRODYNAMIC FILE':'HYDRODYNAMIC_FILE', - 'WAVE FILE':'WAVE_FILE', - 'PREVIOUS SEDIMENTOLOGICAL COMPUTATION FILE':'PREVIOUS_SEDIMENTOLOGICAL_COMPUTATION_FILE', - 'REFERENCE FILE':'REFERENCE_FILE', - 'VALIDATION':'VALIDATION', - 'BOTTOM TOPOGRAPHY FILE':'BOTTOM_TOPOGRAPHY_FILE', - 'FLUXLINE INPUT FILE':'FLUXLINE_INPUT_FILE', - 'RESULTS FILE':'RESULTS_FILE', - 'VARIABLES FOR GRAPHIC PRINTOUTS':'VARIABLES_FOR_GRAPHIC_PRINTOUTS', - 'VARIABLES TO BE PRINTED':'VARIABLES_TO_BE_PRINTED', - 'RELEASE':'RELEASE', - 'GRAPHIC PRINTOUT PERIOD':'GRAPHIC_PRINTOUT_PERIOD', - 'LISTING PRINTOUT PERIOD':'LISTING_PRINTOUT_PERIOD', - 'NUMBER OF PRIVATE ARRAYS':'NUMBER_OF_PRIVATE_ARRAYS', - 'FLUXLINE':'FLUXLINE', - 'NAMES OF PRIVATE VARIABLES':'NAMES_OF_PRIVATE_VARIABLES', - 'MASS-BALANCE':'MASS_BALANCE', - 'SECTIONS INPUT FILE':'SECTIONS_INPUT_FILE', - 'SECTIONS OUTPUT FILE':'SECTIONS_OUTPUT_FILE', - 'CONTROL SECTIONS':'CONTROL_SECTIONS', - 'COMPUTATION CONTINUED':'COMPUTATION_CONTINUED', - 'STARTING TIME OF THE HYDROGRAM':'STARTING_TIME_OF_THE_HYDROGRAM', - 'ORIGIN COORDINATES':'ORIGIN_COORDINATES', - 'LIQUID BOUNDARIES FILE':'LIQUID_BOUNDARIES_FILE', - 'PRESCRIBED SOLID DISCHARGES':'PRESCRIBED_SOLID_DISCHARGES', - 'STATIONARY MODE':'STATIONARY_MODE', - 'DICTIONARY':'DICTIONARY', - 'SOLVER':'SOLVER', - 'SOLVER OPTION':'SOLVER_OPTION', - 'PRECONDITIONING':'PRECONDITIONING', - 'MAXIMUM NUMBER OF ITERATIONS FOR SOLVER':'MAXIMUM_NUMBER_OF_ITERATIONS_FOR_SOLVER', - 'MASS-LUMPING':'MASS_LUMPING', - 'TETA':'TETA', - 'ZERO':'ZERO', - 'FINITE VOLUMES':'FINITE_VOLUMES', - 'TYPE OF ADVECTION':'TYPE_OF_ADVECTION', - 'PARTITIONING TOOL':'PARTITIONING_TOOL', - 'SOLVER FOR SUSPENSION':'SOLVER_FOR_SUSPENSION', - 'SOLVER OPTION FOR SUSPENSION':'SOLVER_OPTION_FOR_SUSPENSION', - 'MAXIMUM NUMBER OF ITERATIONS FOR SOLVER FOR SUSPENSION':'MAXIMUM_NUMBER_OF_ITERATIONS_FOR_SOLVER_FOR_SUSPENSION', - 'DEBUGGER':'DEBUGGER', - 'SUPG OPTION':'SUPG_OPTION', - 'MATRIX-VECTOR PRODUCT':'MATRIX_VECTOR_PRODUCT', - 'MATRIX STORAGE':'MATRIX_STORAGE', - 'SOLVER ACCURACY':'SOLVER_ACCURACY', - 'MAXIMUM NUMBER OF ITERATIONS FOR ADVECTION SCHEMES':'MAXIMUM_NUMBER_OF_ITERATIONS_FOR_ADVECTION_SCHEMES', - 'NUMBER OF CORRECTIONS OF DISTRIBUTIVE SCHEMES':'NUMBER_OF_CORRECTIONS_OF_DISTRIBUTIVE_SCHEMES', - 'NUMBER OF SUB-STEPS OF DISTRIBUTIVE SCHEMES':'NUMBER_OF_SUB_STEPS_OF_DISTRIBUTIVE_SCHEMES', - 'TREATMENT OF FLUXES AT THE BOUNDARIES':'TREATMENT_OF_FLUXES_AT_THE_BOUNDARIES', - 'WATER DENSITY':'WATER_DENSITY', - 'SEDIMENT DENSITY':'SEDIMENT_DENSITY', - 'NON COHESIVE BED POROSITY':'NON_COHESIVE_BED_POROSITY', - 'SHIELDS PARAMETERS':'SHIELDS_PARAMETERS', - 'GRAVITY ACCELERATION':'GRAVITY_ACCELERATION', - 'OPTION FOR THE TREATMENT OF TIDAL FLATS':'OPTION_FOR_THE_TREATMENT_OF_TIDAL_FLATS', - 'OPTION FOR THE TREATMENT OF NON ERODABLE BEDS':'OPTION_FOR_THE_TREATMENT_OF_NON_ERODABLE_BEDS', - 'WATER VISCOSITY':'WATER_VISCOSITY', - 'MINIMAL VALUE OF THE WATER HEIGHT':'MINIMAL_VALUE_OF_THE_WATER_HEIGHT', - 'SETTLING VELOCITIES':'SETTLING_VELOCITIES', - 'TIDAL FLATS':'TIDAL_FLATS', - 'D90':'D90', - 'SEDIMENT DIAMETERS':'SEDIMENT_DIAMETERS', - 'RATIO BETWEEN SKIN FRICTION AND MEAN DIAMETER':'RATIO_BETWEEN_SKIN_FRICTION_AND_MEAN_DIAMETER', - 'SECONDARY CURRENTS':'SECONDARY_CURRENTS', - 'SECONDARY CURRENTS FILE':'SECONDARY_CURRENTS_FILE', - 'FORMULA FOR SLOPE EFFECT':'FORMULA_FOR_SLOPE_EFFECT', - 'FRICTION ANGLE OF THE SEDIMENT':'FRICTION_ANGLE_OF_THE_SEDIMENT', - 'FORMULA FOR DEVIATION':'FORMULA_FOR_DEVIATION', - 'PARAMETER FOR DEVIATION':'PARAMETER_FOR_DEVIATION', - 'SEDIMENT SLIDE':'SEDIMENT_SLIDE', - 'SLOPE EFFECT':'SLOPE_EFFECT', - 'SKIN FRICTION CORRECTION':'SKIN_FRICTION_CORRECTION', - 'BED ROUGHNESS PREDICTION':'BED_ROUGHNESS_PREDICTION', - 'BED ROUGHNESS PREDICTOR OPTION':'BED_ROUGHNESS_PREDICTOR_OPTION', - 'SECONDARY CURRENTS ALPHA COEFFICIENT':'SECONDARY_CURRENTS_ALPHA_COEFFICIENT', - 'MORPHOLOGICAL FACTOR':'MORPHOLOGICAL_FACTOR', - 'BETA':'BETA', - 'MEAN DIAMETER OF THE SEDIMENT':'MEAN_DIAMETER_OF_THE_SEDIMENT', - 'FORMULATION FOR DEPOSITION AND EROSION':'FORMULATION_FOR_DEPOSITION_AND_EROSION', - 'GRAIN-FEEDING':'GRAIN_FEEDING', - 'GEOMETRY FILE BINARY':'GEOMETRY_FILE_BINARY', - 'HYDRODYNAMIC FILE BINARY':'HYDRODYNAMIC_FILE_BINARY', - 'BINARY OF THE PREVIOUS SEDIMENTOLOGICAL COMPUTATION FILE':'BINARY_OF_THE_PREVIOUS_SEDIMENTOLOGICAL_COMPUTATION_FILE', - 'RESULTS FILE BINARY':'RESULTS_FILE_BINARY', - 'REFERENCE FILE BINARY':'REFERENCE_FILE_BINARY', - 'STEADY CASE':'STEADY_CASE', - 'FRICTION COEFFICIENT':'FRICTION_COEFFICIENT', - 'NUMBER OF TIME STEPS':'NUMBER_OF_TIME_STEPS', - 'TIME STEP':'TIME_STEP', - 'NUMBER OF SUB-ITERATIONS':'NUMBER_OF_SUB_ITERATIONS', - 'LAW OF BOTTOM FRICTION':'LAW_OF_BOTTOM_FRICTION', - 'CONSTANT FLOW DISCHARGE':'CONSTANT_FLOW_DISCHARGE', - 'NUMBER OF ITERATIONS FOR TELEMAC':'NUMBER_OF_ITERATIONS_FOR_TELEMAC', - 'CRITERION TO UPDATE THE FLOW':'CRITERION_TO_UPDATE_THE_FLOW', - 'CRITICAL EVOLUTION RATIO':'CRITICAL_EVOLUTION_RATIO', - 'NUMBER OF TIDES OR FLOODS':'NUMBER_OF_TIDES_OR_FLOODS', - 'ORIGINAL HOUR OF TIME':'ORIGINAL_HOUR_OF_TIME', - 'ORIGINAL DATE OF TIME':'ORIGINAL_DATE_OF_TIME', - 'TIDE PERIOD':'TIDE_PERIOD', - 'BED LOAD':'BED_LOAD', - 'BED-LOAD TRANSPORT FORMULA':'BED_LOAD_TRANSPORT_FORMULA', - 'B VALUE FOR THE BIJKER FORMULA':'B_VALUE_FOR_THE_BIJKER_FORMULA', - 'MPM COEFFICIENT':'MPM_COEFFICIENT', - 'MINIMUM DEPTH FOR BEDLOAD':'MINIMUM_DEPTH_FOR_BEDLOAD', - 'HIDING FACTOR FOR PARTICULAR SIZE CLASS':'HIDING_FACTOR_FOR_PARTICULAR_SIZE_CLASS', - 'NUMBER OF SIZE-CLASSES OF BED MATERIAL':'NUMBER_OF_SIZE_CLASSES_OF_BED_MATERIAL', - 'INITIAL FRACTION FOR PARTICULAR SIZE CLASS':'INITIAL_FRACTION_FOR_PARTICULAR_SIZE_CLASS', - 'ACTIVE LAYER THICKNESS':'ACTIVE_LAYER_THICKNESS', - 'HIDING FACTOR FORMULA':'HIDING_FACTOR_FORMULA', - 'NUMBER OF BED LOAD MODEL LAYERS':'NUMBER_OF_BED_LOAD_MODEL_LAYERS', - 'CONSTANT ACTIVE LAYER THICKNESS':'CONSTANT_ACTIVE_LAYER_THICKNESS', - 'VERTICAL GRAIN SORTING MODEL':'VERTICAL_GRAIN_SORTING_MODEL', - 'C-VSM MAXIMUM SECTIONS':'C_VSM_MAXIMUM_SECTIONS', - 'C-VSM FULL PRINTOUT PERIOD':'C_VSM_FULL_PRINTOUT_PERIOD', - 'C-VSM PRINTOUT SELECTION':'C_VSM_PRINTOUT_SELECTION', - 'C-VSM DYNAMIC ALT MODEL':'C_VSM_DYNAMIC_ALT_MODEL', - 'C-VSM RESULTS FILE':'C_VSM_RESULTS_FILE', - 'C-VSM RESULTS FILE FORMAT':'C_VSM_RESULTS_FILE_FORMAT', - 'SUSPENSION':'SUSPENSION', - 'DISPERSION ALONG THE FLOW':'DISPERSION_ALONG_THE_FLOW', - 'DISPERSION ACROSS THE FLOW':'DISPERSION_ACROSS_THE_FLOW', - 'EQUILIBRIUM INFLOW CONCENTRATION':'EQUILIBRIUM_INFLOW_CONCENTRATION', - 'MASS CONCENTRATION':'MASS_CONCENTRATION', - 'REFERENCE CONCENTRATION FORMULA':'REFERENCE_CONCENTRATION_FORMULA', - 'CORRECTION ON CONVECTION VELOCITY':'CORRECTION_ON_CONVECTION_VELOCITY', - 'INITIAL SUSPENSION CONCENTRATIONS':'INITIAL_SUSPENSION_CONCENTRATIONS', - 'CONCENTRATION PER CLASS AT BOUNDARIES':'CONCENTRATION_PER_CLASS_AT_BOUNDARIES', - 'DIFFUSION':'DIFFUSION', - 'SETTLING LAG':'SETTLING_LAG', - 'OPTION FOR THE DISPERSION':'OPTION_FOR_THE_DISPERSION', - 'SCHEME OPTION FOR ADVECTION':'SCHEME_OPTION_FOR_ADVECTION', - 'TETA SUSPENSION':'TETA_SUSPENSION', - 'SOLVER ACCURACY FOR SUSPENSION':'SOLVER_ACCURACY_FOR_SUSPENSION', - 'OPTION FOR THE DIFFUSION OF TRACER':'OPTION_FOR_THE_DIFFUSION_OF_TRACER', - 'PRECONDITIONING FOR SUSPENSION':'PRECONDITIONING_FOR_SUSPENSION', - 'COHESIVE SEDIMENTS':'COHESIVE_SEDIMENTS', - 'CONSOLIDATION MODEL':'CONSOLIDATION_MODEL', - 'GEL CONCENTRATION':'GEL_CONCENTRATION', - 'MAXIMUM CONCENTRATION':'MAXIMUM_CONCENTRATION', - 'PERMEABILITY COEFFICIENT':'PERMEABILITY_COEFFICIENT', - 'MUD CONSOLIDATION':'MUD_CONSOLIDATION', - 'NUMBER OF LAYERS OF THE CONSOLIDATION MODEL':'NUMBER_OF_LAYERS_OF_THE_CONSOLIDATION_MODEL', - 'MUD CONCENTRATION PER LAYER':'MUD_CONCENTRATION_PER_LAYER', - 'CRITICAL EROSION SHEAR STRESS OF THE MUD':'CRITICAL_EROSION_SHEAR_STRESS_OF_THE_MUD', - 'MASS TRANSFER PER LAYER':'MASS_TRANSFER_PER_LAYER', - 'CRITICAL SHEAR VELOCITY FOR MUD DEPOSITION':'CRITICAL_SHEAR_VELOCITY_FOR_MUD_DEPOSITION', - 'PARTHENIADES CONSTANT':'PARTHENIADES_CONSTANT', - 'NESTOR':'NESTOR', - 'NESTOR ACTION FILE':'NESTOR_ACTION_FILE', - 'NESTOR POLYGON FILE':'NESTOR_POLYGON_FILE', - 'NESTOR RESTART FILE':'NESTOR_RESTART_FILE', - 'NESTOR SURFACE REFERENCE FILE':'NESTOR_SURFACE_REFERENCE_FILE', - 'EFFECT OF WAVES':'EFFECT_OF_WAVES', - 'MIXED SEDIMENT':'MIXED_SEDIMENT', - 'AD NUMBER OF DERIVATIVES':'AD_NUMBER_OF_DERIVATIVES', - 'AD NAMES OF DERIVATIVES':'AD_NAMES_OF_DERIVATIVES', - 'AD NUMBER OF DIRECTIONS':'AD_NUMBER_OF_DIRECTIONS', - 'AD SYMBOLIC LINEAR SOLVER':'AD_SYMBOLIC_LINEAR_SOLVER', - 'AD LINEAR SOLVER RESET DERIVATIVES':'AD_LINEAR_SOLVER_RESET_DERIVATIVES', - 'AD LINEAR SOLVER DERIVATIVE CONVERGENCE':'AD_LINEAR_SOLVER_DERIVATIVE_CONVERGENCE', - 'LIST OF FILES':'LIST_OF_FILES', - 'DESCRIPTION OF LIBRARIES':'DESCRIPTION_OF_LIBRARIES', - 'DEFAULT EXECUTABLE':'DEFAULT_EXECUTABLE', - 'DEFAULT PARALLEL EXECUTABLE':'DEFAULT_PARALLEL_EXECUTABLE', -} -DicoEnumCasFrToEnumCasEn = { -'GEOMETRY_FILE_FORMAT':{ - "SERAFIN":"SERAFIN", - "SERAFIND":"SERAFIND", - "MED":"MED", -}, - -'RESULTS_FILE_FORMAT':{ - "SERAFIN":"SERAFIN", - "SERAFIND":"SERAFIND", - "MED":"MED", -}, - -'HYDRODYNAMIC_FILE_FORMAT':{ - "SERAFIN":"SERAFIN", - "SERAFIND":"SERAFIND", - "MED":"MED", -}, - -'REFERENCE_FILE_FORMAT':{ - "SERAFIN":"SERAFIN", - "SERAFIND":"SERAFIND", - "MED":"MED", -}, - -'PREVIOUS_SEDIMENTOLOGICAL_COMPUTATION_FILE_FORMAT':{ - "SERAFIN":"SERAFIN", - "SERAFIND":"SERAFIND", - "MED":"MED", -}, - -'WAVE_FILE_FORMAT':{ - "SERAFIN":"SERAFIN", - "SERAFIND":"SERAFIND", - "MED":"MED", -}, - -'PARTITIONING_TOOL':{ - "METIS":"METIS", - "SCOTCH":"SCOTCH", - "PARMETIS":"PARMETIS", - "PTSCOTCH":"PTSCOTCH", -}, - -'C_VSM_RESULTS_FILE_FORMAT':{ - "SERAFIN":"SERAFIN", - "SERAFIND":"SERAFIND", - "MED":"MED", -}, - -} diff --git a/Telemac/sisyphe_labelCataToIhm_en.qm b/Telemac/sisyphe_labelCataToIhm_en.qm deleted file mode 100644 index bef9cb7c..00000000 Binary files a/Telemac/sisyphe_labelCataToIhm_en.qm and /dev/null differ diff --git a/Telemac/sisyphe_labelCataToIhm_fr.qm b/Telemac/sisyphe_labelCataToIhm_fr.qm deleted file mode 100644 index 69145f1c..00000000 Binary files a/Telemac/sisyphe_labelCataToIhm_fr.qm and /dev/null differ diff --git a/Telemac/stbtel_cata_auto.py b/Telemac/stbtel_cata_auto.py deleted file mode 100644 index abd65076..00000000 --- a/Telemac/stbtel_cata_auto.py +++ /dev/null @@ -1,793 +0,0 @@ - -# -*- coding: latin-1 -*- - -from Accas import * -class DateJJMMAAAA: - def __init__(self): - self.ntuple=3 - - def __convert__(self,valeur): - if type(valeur) == types.StringType: return None - if len(valeur) != self.ntuple: return None - return valeur - - def info(self): - return "Date : jj/mm/aaaa " - - __repr__=info - __str__=info - -class grma(GEOM): - pass - -import types -class Tuple: - def __init__(self,ntuple): - self.ntuple=ntuple - - def __convert__(self,valeur): - if type(valeur) == types.StringType: - return None - if len(valeur) != self.ntuple: - return None - return valeur - - def info(self): - return "Tuple de %s elements" % self.ntuple - - - -JdC = JDC_CATA (code = 'STBTEL', - execmodul = None, - ) -# ======================================================================= -# Catalog entry for the MAP function : c_pre_interfaceBody_mesh -# ======================================================================= - -VERSION_CATALOGUE="TRUNK_20180306" -# ----------------------------------------------------------------------- -GENERALITIES = PROC(nom= "GENERALITIES",op = None, -# ----------------------------------------------------------------------- -# ----------------------------------- - MAXIMUM_NUMBER_OF_BATHYMETRIC_POINTS = SIMP(statut ='f', -# ----------------------------------- - typ = 'I', - defaut = 20000, - fr = """Permet de dimensionner le tableau utilise pour la lecture, dans les -\telkey{FICHIERS DES FONDS}, des points releves a la table a -digitaliser.""", - ang = """Designed for dimensioning the array that is used for reading, in the -\telkey{BOTTOM TOPOGRAPHY FILES}, the points recorded at the digitizing -tablet.""", - ), -# ----------------------------------- - VECTOR_LENGTH = SIMP(statut ='f', -# ----------------------------------- - typ = 'I', - defaut = 1, - fr = """Permet de fixer, sur machine vectorielle, la longueur du vecteur.""", - ang = """Designed for dimensioning the vector length on vector machine.""", - ), -# ----------------------------------- - NUMBER_OF_VERTICES_OF_THE_POLYGON_TO_EXTRACT_THE_MESH = SIMP(statut ='f', -# ----------------------------------- - typ = 'I', - defaut = 0, - fr = """Lorsque l''on souhaite extraire une partie du maillage, permet de -definir le nombre de sommets du polygone a l''interieur duquel le -maillage sera effectivement extrait.\\ -\begin{WarningBlock}{Attention :} -Ce polygone doit etre convexe et les coordonnees des sommets donnes dans -l''ordre trigonometrique. \end{WarningBlock}""", - ang = """When you want to extract a piece of the mesh, this key-word fixes -the number of vertices of a polygon inside of which the mesh will be -finally extracted.\\ -\begin{WarningBlock}{Warning:} -This polygon should have a convex shape and the coordinates of the -vertices be given with an anti clock wise order. -\end{WarningBlock}""", - ), -# ----------------------------------- - NUMBER_OF_VERTICES_OF_THE_POLYGON_TO_REFINE_THE_MESH = SIMP(statut ='f', -# ----------------------------------- - typ = 'I', - defaut = 0, - fr = """Lorsque l''on souhaite raffiner une partie du maillage, -permet de definir le nombre de sommets du polygone a l''interieur -duquel le maillage sera effectivement raffine.\\ -\begin{WarningBlock}{Attention:} -Ce polygone doit etre convexe et les coordonnees des -sommets donnes dans l''ordre trigonometrique. -\end{WarningBlock}""", - ang = """When you want to refine a piece of the mesh, this key-word fixes -the number of vertices of a polygon inside of which the mesh will be -finally refined.\\ -\begin{WarningBlock}{ATTENTION:} -This polygon should have a convex shape and the coordinates -of the vertices be given with an anti clock wise order. -\end{WarningBlock}""", - ), -# ----------------------------------- - PARALLEL_PROCESSORS = SIMP(statut ='f', -# ----------------------------------- - typ = 'I', - defaut = 0, - fr = """Nombre de processeurs en calcul parallele -\begin{itemize} -\item 0 : 1 machine, compilation sans bibliotheque de parallelisme -\item 1 : 1 machine, compilation avec bibliotheque de parallelisme -\item 2 : 2 processeurs ou machines en parallele -\item etc\ldots -\end{itemize}""", - ang = """Number of processors for parallel processing -\begin{itemize} -\item 0 : 1 machine, compiling without parallel library -\item 1 : 1 machine, compiling with a parallel library -\item 2 : 2 processors or machines in parallel -\item etc\ldots -\end{itemize}""", - ), -# ----------------------------------- - MINIMUM_DISTANCE_BETWEEN_TWO_POINTS = SIMP(statut ='f', -# ----------------------------------- - typ = 'R', - defaut = 1.E-5, - fr = """Distance (en metres)en dessous de laquelle deux noeuds sont consideres -comme confondus par \stbtel, lors de la verification des resultats -fournis par le mailleur. Lorsque deux noeuds sont confondus, l''un -d''entre eux est elimine, et tous les noeuds du maillage sont -renumerotes.""", - ang = """Distance (in meters) below which two nodes are considered as identical -by \stbtel when the results supplied by the mesh generator are being -checked. When two nodes occur at the same place, one of them is -eliminated and all the mesh nodes are renumbered.""", - ), -# ----------------------------------- - MINIMUM_DISTANCE_AT_BOUNDARY = SIMP(statut ='f', -# ----------------------------------- - typ = 'R', - defaut = 0., - fr = """L''interpolation de la bathymetrie sur les noeuds du maillage est -realisee de la facon suivante. Pour chaque noeud du maillage, on -decoupe le plan en 4 quadrans. Dans chacun de ces quadrans, on cherche -le point releve a la table a digitaliser le plus proche. On affecte -alors au noeud considere une profondeur correspondant a la moyenne, -ponderee par la distance a ce noeud, des profondeurs en chacun des 4 -points precedemment trouves.\\ -On verifie toutefois que, lors de la recherche des points, les -frontieres du domaine ne sont pas franchies, de maniere a ne pas -introduire d''aberration dans la bathymetrie.\\ -Ce mot-cle permet alors de definir la distance minimale aux frontieres -du domaine en dessous de laquelle on refuse de prendre en compte les -points releves.""", - ang = """The bathymetric data at the mesh nodes are interpolated. At each mesh -node, the plane is cut into 4 quadrants in each of which, among the -points recorded at the digitizing tablet, the closest one to the node -being considered is searched for.\\ -This node is thenn given a depth corresponding to the mean depth at -each of the 4 points previously found, these depths being weighted -by the distance to the node.\\ -When searching for the points in the quadrants, however, one shall -make sure the boundaries aare not overstepped in order to prevent -aberrations from being introduced into the bathymetric data.\\ -The keyword can then be used for specifying the minimum distance to -the boundaries below which the recorded points should be ignored.""", - ), -# ----------------------------------- - BOTTOM_CORRECTION_OF_TRIGRID = SIMP(statut ='f', -# ----------------------------------- - typ = 'R', - defaut = 0., - fr = """Fixe la valeur a ajouter a la bathymetrie lue dans le fichier -gemere par Trigrid.""", - ang = """Value to be added at the bottom value read in the Trigrid file""", - ), -# ----------------------------------- - ABSCISSAE_OF_THE_VERTICES_OF_THE_POLYGON_TO_EXTRACT_THE_MESH = SIMP(statut ='f', -# ----------------------------------- - typ = 'R', min= 9, max= 9, - defaut = [0,0,0,0,0,0,0,0,0], - fr = """Lorsque l''on souhaite extraire une partie du maillage, -permet de definir les abscisses des sommets du polygone a l''interieur -duquel le maillage sera effectivement extrait. -\begin{WarningBlock}{Attention :} -ce polygone doit etre convexe et les coordonnees des -sommets donnes dans l''ordre trigonometrique. -\end{WarningBlock}""", - ang = """When you want to extract a piece of the mesh, this key-word fixes -the abscissae of the vertices of a polygon inside of which the mesh -will be finally extracted.\\ -\begin{WarningBlock}{Warning:} -This polygon should have a convex shape and the coordinates -of the vertices be given with an anti clock wise order. -\end{WarningBlock}""", - ), -# ----------------------------------- - ORDINATES_OF_THE_VERTICES_OF_THE_POLYGON_TO_EXTRACT_THE_MESH = SIMP(statut ='f', -# ----------------------------------- - typ = 'R', min= 9, max= 9, - defaut = [0,0,0,0,0,0,0,0,0], - fr = """Lorsque l''on souhaite extraire une partie du maillage, -permet de definir les ordonnees des sommets du polygone a l''interieur -duquel le maillage sera effectivement extrait.\\ -\begin{WarningBlock}{Attention :} -Ce polygone doit etre convexe et les coordonnees des -sommets donnes dans l''ordre trigonometrique. -\end{WarningBlock}""", - ang = """When you want to extract a piece of the mesh, this key-word fixes -the ordinates of the vertices of a polygon inside of which the mesh -will be finally extracted.\\ -\begin{WarningBlock}{Warning:} -This polygon should have a convex shape and the coordinates -of the vertices be given with an anti clock wise order. -\end{WarningBlock}""", - ), -# ----------------------------------- - ABSCISSAE_OF_THE_VERTICES_OF_THE_POLYGON_TO_REFINE_THE_MESH = SIMP(statut ='f', -# ----------------------------------- - typ = 'R', min= 9, max= 9, - defaut = [0,0,0,0,0,0,0,0,0], - fr = """Lorsque l''on souhaite raffiner une partie du maillage, -permet de definir les abscisses des sommets du polygone a l''interieur -duquel le maillage sera effectivement raffine.\\ -\begin{WarningBlock}{Attention :} -ce polygone doit etre convexe et les coordonnees des -sommets donnes dans l''ordre trigonometrique. -\end{WarningBlock}""", - ang = """When you want to refine a piece of the mesh, this key-word fixes -the abscissae of the vertices of a polygon inside of which the mesh -will be finally refined.\\ -\begin{WarningBlock}{Warning:} -This polygon should have a convex shape and the coordinates -of the vertices be given with an anti clock wise order. -\end{WarningBlock}""", - ), -# ----------------------------------- - ORDINATES_OF_THE_VERTICES_OF_THE_POLYGON_TO_REFINE_THE_MESH = SIMP(statut ='f', -# ----------------------------------- - typ = 'R', min= 9, max= 9, - defaut = [0,0,0,0,0,0,0,0,0], - fr = """Lorsque l''on souhaite raffiner une partie du maillage, -permet de definir les ordonnees des sommets du polygone a l''interieur -duquel le maillage sera effectivement raffine.\\ -\begin{WarningBlock}{Attention :} -ce polygone doit etre convexe et les coordonnees des -sommets donnes dans l''ordre trigonometrique. -\end{WarningBlock}""", - ang = """When you want to refine a piece of the mesh, this key-word fixes -the ordinates of the vertices of a polygon inside of which the mesh -will be finally refined.\\ -\begin{WarningBlock}{Warning:} -This polygon should have a convex shape and the coordinates -of the vertices be given with an anti clock wise order. -\end{WarningBlock}""", - ), -# ----------------------------------- - OVERSTRESSED_TRIANGLES_CUTTING = SIMP(statut ='f', -# ----------------------------------- - typ = bool, - defaut = False, - fr = """Un triangle surcontraint est tel que ses trois noeuds soient situes -sur une frontiere du domaine de calcul. La presence de tels triangles -peut entrainer des instabilites lors des calculs realises par -TELEMAC 2D.\\ -Cette option permet, en creant un noeud place au barycentre de des -triangles surcontraints, d''eviter de tels problemes.""", - ang = """An overstressed triangle is one whose three nodes are located along a -boundary of the computational domain. The occurrence of such triangles -may bring about instabilities in the computations made by TELEMAC 2D. -Such problems can be prevented by this option, through the creation of -a node at the geometric centres of the overstressed triangles.""", - ), -# ----------------------------------- - WRITING_NODE_COLOURS = SIMP(statut ='f', -# ----------------------------------- - typ = bool, - defaut = False, - fr = """Option non activee.""", - ang = """Option not activated""", - ), -# ----------------------------------- - ELIMINATION_OF_BACKWARD_DEPENDENCIES = SIMP(statut ='f', -# ----------------------------------- - typ = bool, - defaut = True, - fr = """Permet de renumeroter les noeuds du maillage de maniere a eliminer les -dependances arrieres et autoriser ainsi le forcage de la vectorisation -lorsque les calculs TELEMAC 2D son effectues sur CRAY.\\ -\begin{WarningBlock}{Attention :} -Un nombre minimum d''environ 500 noeuds est requis pour -l''activation de cette option. -\end{WarningBlock}""", - ang = """Provides for renumbering of the mesh nodes in order to eliminate the -backward dependencies, thereby enabling a forced vectorisation when -the TELEMAC 2D computations are made on a CRAY.\\ -\begin{WarningBlock}{Warning:} -About 500 nodes is the least number required for activating -this option. -\end{WarningBlock}""", - ), -# ----------------------------------- - CUTTING_ELEMENTS_IN_FOUR = SIMP(statut ='f', -# ----------------------------------- - typ = bool, - defaut = False, - fr = """Decoupe chaque element du mayage en quatre elements homothetiques -en joignant les milieux des aretes.""", - ang = """Cuts every element of the mesh in four homothetic elements -by joigning the middle points of each side.""", - ), -# ----------------------------------- - BATHYMETRY_IN_THE_UNIVERSAL_FILE = SIMP(statut ='f', -# ----------------------------------- - typ = bool, - defaut = False, - fr = """Permet de relire la bathymetrie directement dans le fichier de -maillage (Trigrid ou Fasttabs).""", - ang = """The bathymetry will be read in the mesh file (Trigrid or Fasttabs).""", - ), -# ----------------------------------- - NODES_RENUMBERING = SIMP(statut ='f', -# ----------------------------------- - typ = bool, - defaut = False, - fr = """Permet d''utiliser le nouveau type de stockage des matrices.""", - ang = """Necessary to use the new storage scheme for the matrix.""", - ), -# ----------------------------------- - BOUNDARY_CONDITIONS_IN_THE_ADDITIONAL_FILE = SIMP(statut ='f', -# ----------------------------------- - typ = bool, - defaut = False, - fr = """Permet de relire les conditions limites dans le fichier -additionnel (Fasttabs).""", - ang = """The boundary condition will be read in the additional file - (Fasttabs).""", - ), -# ----------------------------------- - PROJECTION_AFTER_EXTRACTION = SIMP(statut ='f', -# ----------------------------------- - typ = bool, - defaut = True, - fr = """Lors d''une extraction de maillage suivant un polygone, projette ou -non le maillage extrait sur les aretes du polygone.""", - ang = """When a mesh is extracted inside a polygon, indicates whether the mesh -should be projected through the faces of the polygon or not.""", - ), -# ----------------------------------- - DRY_LIMIT = SIMP(statut ='f', -# ----------------------------------- - typ = 'R', - defaut = 0.1, - fr = """Fixe la valeur du seuil (en metre) de hauteur d''eau en dessous -duquel un noeud est considere comme sec.""", - ang = """Limit of water depth value (in meter) under which the node is -considered as dry node.""", - ), -# ----------------------------------- - DRY_ELEMENTS_ELIMINATION = SIMP(statut ='f', -# ----------------------------------- - typ = bool, - defaut = False, - fr = """Lors du traitement d''un fichier de resultats issu de \telemac{2D}, -permet d''activer l''elimination des elements secs.""", - ang = """When using a \telemac{2D} results file, this keyword activates the -dry elements elimination.""", - ), -# ----------------------------------- - PARTIALLY_DRY_ELEMENTS_ELIMINATION = SIMP(statut ='f', -# ----------------------------------- - typ = bool, - defaut = False, - fr = """Lors de l''elimination des elements secs, permet de specifier si -on traite les elements parteillement secs (au moins un noeud sec).""", - ang = """When removing dry elements, specify if the partially dry elements are -treated (at least one dry node).""", - ), -# ----------------------------------- - STORAGE_OF_ALL_TIME_STEPS = SIMP(statut ='f', -# ----------------------------------- - typ = bool, - defaut = False, - fr = """Lors du traitement d''elimination des elements secs, permet de -specifier si on restocke tous les pas de temps dans le fichier -resultat""", - ang = """When treating dry elements elimination, specify that -all time steps are to be stored in the results file.""", - ), -) -# ----------------------------------------------------------------------- -INPUT_OUTPUT__FILES = PROC(nom= "INPUT_OUTPUT__FILES",op = None, -# ----------------------------------------------------------------------- -# ----------------------------------- - NAMES = FACT(statut='f', -# ----------------------------------- -# ----------------------------------- - FORTRAN_FILE = SIMP(statut ='f', -# ----------------------------------- - typ = ('Fichier','All Files (*)'), max='**', - defaut = 'DEFAUT', - fr = """Nom du fichier Fortran a soumettre. -Il ne sert a priori qu''a dimensionner les tableaux utilises par -\stbtel, mais peut contenir des sous-programmes modifies ou propres a -l''utilisateur.""", - ang = """Name of Fortran file to be entered. -It is a priori only designed for dimensioning the arrays that are -used by \stbtel, but it may contain either modified or user-written -subroutines.""", - ), -# ----------------------------------- - STEERING_FILE = SIMP(statut ='f', -# ----------------------------------- - typ = ('Fichier','All Files (*)'), max='**', - defaut = '', - fr = """Nom du fichier contenant les references des fichiers et les options -du calcul a realiser.""", - ang = """Name of the file that contains the file references and of options for -the computation to be made.""", - ), -# ----------------------------------- - UNIVERSAL_FILE = SIMP(statut ='f', -# ----------------------------------- - typ = ('Fichier','All Files (*)'), max='**', - defaut = '', - fr = """Nom du fichier construit par le mailleur, a partir duquel \stbtel va -travailler.""", - ang = """Name of the file created by the mesh generator, and from which \stbtel -will work.""", - ), -# ----------------------------------- - GEOMETRY_FILE_FOR_TELEMAC = SIMP(statut ='f', -# ----------------------------------- - typ = ('Fichier','All Files (*)','Sauvegarde'), max='**', - defaut = '', - fr = """Nom du fichier qui contiendra le maillage mis au format SELAFIN, et -qui servira pour les calculs \telemac{2D}.""", - ang = """Name of the file that will contain the mesh data to SELAFIN format, -and to be used in \telemac{2D} computations.""", - ), -# ----------------------------------- - BOUNDARY_CONDITIONS_FILE = SIMP(statut ='f', -# ----------------------------------- - typ = ('Fichier','All Files (*)','Sauvegarde'), max='**', - defaut = '', - fr = """Nom du fichier qui contiendra les conditions aux limites lues dans le -\telkey{FICHIER UNIVERSEL}, et qui servira pour les calculs -\telemac{2D}. (les conditions aux limites sont definies lors de la -realisation du maillage, au moyen de couleurs affectees aux noeuds des -frontieres du domaine de calcul).""", - ang = """Name of the file that will contain the boundary conditions being read -from the \telkey{UNIVERSAL FILE}, and to be used in \telemac{2D} -computations. (The boundary conditions are defined when preparing the -meshes, through colours that are allotted to the nodes of the -computation domain boundaries).""", - ), -# ----------------------------------- - BOTTOM_TOPOGRAPHY_FILES = SIMP(statut ='f', -# ----------------------------------- - typ = ('Fichier','All Files (*)'), max='**', - defaut = ';;;;', - fr = """Nom du fichier contenant la bathymetrie (au standard SINUSX), qui -servira pour la definition, par interpolation, de la profondeur en -chaque point du maillage.""", - ang = """Name of the file containing the bathymetric points (to SINUSX -standard), to be used, through interpolation, for defining the depth -at each point of the mesh.""", - ), -# ----------------------------------- - MESH_ADDITIONAL_DATA_FILE = SIMP(statut ='f', -# ----------------------------------- - typ = ('Fichier','All Files (*)'), max='**', - defaut = '', - fr = """Nom du fichier additionnel. Ce fichier a une signification -differente en fonction du mailleur choisi. -\begin{itemize} -\item Trigrid : Fichier contenant la table de connectivites -(obligatoire). -\item Fasttabs : Fichier contenant les conditions limites (optionnel). -\end{itemize}""", - ang = """Name of the additionql file. The meaning of this file depend on the -type of mesh generator. -\begin{itemize} -\item Trigrid : containing the connectivity table built (mandatory). -\item Fasttabs : boundary condition file built by Fasttabs (optional). -\end{itemize}""", - ), -# ----------------------------------- - INPUT_FILE = SIMP(statut ='f', -# ----------------------------------- - typ = ('Fichier','All Files (*)'), - defaut = '', - fr = """Nom du fichier a convertir.""", - ang = """Name of the file to convert.""", - ), -# ----------------------------------- - OUTPUT_FILE = SIMP(statut ='f', -# ----------------------------------- - typ = ('Fichier','All Files (*)','Sauvegarde'), max='**', - defaut = '', - fr = """Nom du fichier converti""", - ang = """Name of the converted file""", - ), -# ----------------------------------- - BOUNDARY_FILE = SIMP(statut ='f', -# ----------------------------------- - typ = ('Fichier','All Files (*)'), max='**', - defaut = '', - fr = """Nom du fichier des conditions limites""", - ang = """Name of the boundary condition file""", - ), -# ----------------------------------- - LOG_FILE = SIMP(statut ='f', -# ----------------------------------- - typ = ('Fichier','All Files (*)'), max='**', - defaut = '', - fr = """Nom du fichier complementaire pour le format UNV""", - ang = """Name of the complementary file for the UNV format""", - ), -# ----------------------------------- - OUTPUT_BOUNDARY_FILE = SIMP(statut ='f', -# ----------------------------------- - typ = ('Fichier','All Files (*)','Sauvegarde'), max='**', - defaut = '', - fr = """Nom du fichier des conditions limites pour le fichier converti""", - ang = """Name of the boundary file for the converted file""", - ), -# ----------------------------------- - OUTPUT_LOG_FILE = SIMP(statut ='f', -# ----------------------------------- - typ = ('Fichier','All Files (*)','Sauvegarde'), max='**', - defaut = '', - fr = """Nom du fichier complementaire pour le fichier converti""", - ang = """Name of the complementary file for the converted file""", - ), -# ----------------------------------- - BOUNDARY_UNIVERSAL_FILE = SIMP(statut ='f', -# ----------------------------------- - typ = ('Fichier','All Files (*)'), max='**', - defaut = '', - fr = """Nom du fichier construit par le mailleur, a partir duquel \stbtel va -travailler.""", - ang = """Name of the file created by the mesh generator, and from which \stbtel -will work.""", - ), - ), -# ----------------------------------- - STANDARD = FACT(statut='f', -# ----------------------------------- -# ----------------------------------- - BINARY_STANDARD = SIMP(statut ='f', -# ----------------------------------- - typ = 'TXM', - into = ['STD','IBM','I3E'], - defaut = 'STD', - fr = """Adapte l''ecriture du \teleky{FICHIER DE GEOMETRIE POUR TELEMAC} au -standard binaire choisi pour celui-ci. Ce peut etre : -\begin{itemize} -\item IBM : binaire IBM, -\item I3E : binaire HP, -\item STD : prend par defaut le binaire de la machine sur laquelle - l''utilisateur travaille. Ce sont alors des ordres READ et - WRITE normaux qui sont utilises. -\end{itemize}""", - ang = """Matches the writing of the \telkey{GEOMETRY FILE FOR TELEMAC} to the -binary standard chosen for the latter. It will be selected among the -following: -\begin{itemize} -\item IBM: IBM binary, -\item I3E: HP binary, -\item STD: takes by default the binary on the computer with which - the user is working. The normal READ and WRITE commands - are then used. -\end{itemize}""", - ), - ), -) -# ----------------------------------------------------------------------- -MESH_GENERATOR = PROC(nom= "MESH_GENERATOR",op = None, -# ----------------------------------------------------------------------- -# ----------------------------------- - MESH_GENERATOR = SIMP(statut ='f', -# ----------------------------------- - typ = 'TXM', - into = ['SUPERTAB4','SUPERTAB6','MASTER2','SIMAIL','SELAFIN','TRIGRID','FASTTABS'], - defaut = 'MASTER2', - fr = """Nom du mailleur utilise pour la creation du \telkey{FICHIER UNIVERSEL}. -Ce peut etre : -\begin{itemize} -\item SUPERTAB6 (version 6 du mailleur SUPERTAB), -\item SUPERTAB4 (version 4 du mailleur SUPERTAB), -\item MASTER2 (version 2 du mailleur MASTER-SERIES), -\item SIMAIL, -\item SELAFIN (afin de modifier un maillage deja utilise, comme pour : -\begin{itemize} -\item interpoler de nouveau fonds -\item eliminer des dependances arrieres -\item coupe triangles surcontraints), -\end{itemize} -\item TRIGRID, -\item FASTTABS. -\end{itemize}""", - ang = """Name of the mesh generator used for preparing the \telkey{UNIVERSAL -FILE}. It will be selected among the following: -\begin{itemize} -\item SUPERTAB6 (version 6 of SUPERTAB mesh generator), -\item SUPERTAB4 (version 4 of SUPERTAB mesh generator), -\item MASTER2 (version 2 of MASTER-SERIES mesh generator), -\item SIMAIL, -\item SELAFIN (in order to modify a mesh already used, as for example : -\begin{itemize} -\item to interpolate a new bathymetry -\item to eliminate backward dependencies -\item to cut overstressed triangles ), -\end{itemize} -\item TRIGRID, -\item FASTTABS. -\end{itemize}""", - ), -) -# ----------------------------------------------------------------------- -INPUT_OUTPUT__INFORMATION = PROC(nom= "INPUT_OUTPUT__INFORMATION",op = None, -# ----------------------------------------------------------------------- -# ----------------------------------- - COMPUTATION_ENVIRONMENT = FACT(statut='f', -# ----------------------------------- -# ----------------------------------- - BIBLIOTHEQUES = SIMP(statut ='f', -# ----------------------------------- - typ = 'TXM', - defaut = '', - fr = """""", - ang = """""", - ), -# ----------------------------------- - RELEASE = SIMP(statut ='f', -# ----------------------------------- - typ = 'TXM', - defaut = 'TRUNK', - fr = """Numeros de version respectivement des bibliotheques - stbtel,damo,util,hp""", - ang = """Version numbers of STBTEL, DAMO, UTIL, HP libraries, respectively.""", - ), -# ----------------------------------- - DICTIONARY = SIMP(statut ='f', -# ----------------------------------- - typ = ('Fichier','All Files (*)'), - defaut = 'stbtel.dico', - fr = """Dictionnaire des mots cles.""", - ang = """Key word dictionary.""", - ), - ), -) -# ----------------------------------------------------------------------- -CONVERTER_INFO = PROC(nom= "CONVERTER_INFO",op = None, -# ----------------------------------------------------------------------- -# ----------------------------------- - DEBUG = SIMP(statut ='f', -# ----------------------------------- - typ = bool, - defaut = False, - fr = """Permet d activer le mode debuggage.""", - ang = """Activate the debug mode.""", - ), -# ----------------------------------- - CONVERTER = SIMP(statut ='f', -# ----------------------------------- - typ = bool, - defaut = False, - fr = """Permet d activer le module de conversion.""", - ang = """Activate the conversion module.""", - ), -# ----------------------------------- - BOUNDARY_CONDITION_IN_SERAFIN_FORMAT = SIMP(statut ='f', -# ----------------------------------- - typ = bool, - defaut = False, - fr = """Fichier de conditions limites dans le cas d''une conversion depuis -SERAFIN.""", - ang = """Boundary condition file when converting from SERAFIN.""", - ), -# ----------------------------------- - INPUT_FILE_FORMAT = SIMP(statut ='f', -# ----------------------------------- - typ = 'TXM', - into = ['SERAFIN','SERAFIND','MED','UNV','CGNS'], - defaut = 'SERAFIN', - fr = """Specifie le format du fichier d entree""", - ang = """Specify input file format""", - ), -# ----------------------------------- - OUTPUT_FILE_FORMAT = SIMP(statut ='f', -# ----------------------------------- - typ = 'TXM', - into = ['SERAFIN','SERAFIND','MED','UNV','CGNS','VTK','CGNS'], - defaut = 'SERAFIN', - fr = """Specifie le format du fichier de sortie""", - ang = """Specify output file format""", - ), -# ----------------------------------- - TRANSLATION_INFO = FACT(statut='f', -# ----------------------------------- -# ----------------------------------- - TRANSLATION = SIMP(statut ='f', -# ----------------------------------- - typ = bool, - defaut = False, - fr = """Permet d activer la translation de maillage.""", - ang = """Activate the translation of the mesh.""", - ), -# ----------------------------------- - b_TRANSLATIONG = BLOC(condition="TRANSLATION == True", -# ----------------------------------- -# ----------------------------------- - X_TRANSLATION = SIMP(statut ='f', -# ----------------------------------- - typ = 'R', - defaut = 0., - fr = """Translation selon x""", - ang = """Translation on the x axes""", - ), -# ----------------------------------- - Y_TRANSLATION = SIMP(statut ='f', -# ----------------------------------- - typ = 'R', - defaut = 0., - fr = """Translation selon y""", - ang = """Translation on the y axes""", - ), - ), - ), -) -# ----------------------------------------------------------------------- -INTERNAL = PROC(nom= "INTERNAL",op = None, -# ----------------------------------------------------------------------- -# ----------------------------------- - DESCRIPTION_OF_LIBRARIES = SIMP(statut ='f', -# ----------------------------------- - typ = 'TXM', min= 6, max= 6, - defaut = 'builds|PPP|lib|stbtelMMMVVV.LLL;builds|PPP|lib|biefMMMVVV.LLL;builds|PPP|lib|hermesMMMVVV.LLL;builds|PPP|lib|damoMMMVVV.LLL;builds|PPP|lib|parallelMMMVVV.LLL;builds|PPP|lib|specialMMMVVV.LLL', - fr = """Description des librairies de \stbtel""", - ang = """Description of \stbtel libraries""", - ), -# ----------------------------------- - DEFAULT_EXECUTABLE = SIMP(statut ='f', -# ----------------------------------- - typ = 'TXM', - defaut = 'builds|PPP|bin|stbtelMMMVVV.exe', - fr = """Executable par defaut de \stbtel""", - ang = """Default executable for \stbtel""", - ), -# ----------------------------------- - DEFAULT_PARALLEL_EXECUTABLE = SIMP(statut ='f', -# ----------------------------------- - typ = 'TXM', - defaut = 'builds|PPP|bin|stbtelMMMVVV.exe', - fr = """Executable parallele par defaut de \stbtel""", - ang = """Default parallel executable for \stbtel""", - ), -# ----------------------------------- - LIST_OF_FILES = SIMP(statut ='f', -# ----------------------------------- - typ = 'TXM', min=14, max=14, - defaut = 'UNIVERSAL FILE;GEOMETRY FILE FOR TELEMAC;BOUNDARY CONDITIONS FILE;MESH ADDITIONAL DATA FILE;BOTTOM TOPOGRAPHY FILES;FORTRAN FILE;STEERING FILE;DICTIONARY;INPUT FILE;OUTPUT FILE;BOUNDARY FILE;LOG FILE;OUTPUT BOUNDARY FILE;OUTPUT LOG FILE', - fr = """Noms des fichiers exploites par le code""", - ang = """File names of the used files""", - ), -) -TEXTE_NEW_JDC = "\ -" -Ordre_Des_Commandes = ( -'GENERALITIES', -'INPUT_OUTPUT__FILES', -'MESH_GENERATOR', -'INPUT_OUTPUT__INFORMATION', -'CONVERTER_INFO', -'INTERNAL') -try: - import TelApy - source = "eficas" -except Exception as excpt: - source = "Telemac" -enum = source+'.stbtel_enum_auto' -dicoCasEn = source+'.stbtel_dicoCasEnToCata' -dicoCasFr = source+'.stbtel_dicoCasFrToCata' diff --git a/Telemac/stbtel_dicoCasEnToCata.py b/Telemac/stbtel_dicoCasEnToCata.py deleted file mode 100644 index fde5dfd8..00000000 --- a/Telemac/stbtel_dicoCasEnToCata.py +++ /dev/null @@ -1,114 +0,0 @@ -dicoCataToEngTelemac = { - "MAXIMUM_NUMBER_OF_BATHYMETRIC_POINTS" : "MAXIMUM NUMBER OF BATHYMETRIC POINTS", - "VECTOR_LENGTH" : "VECTOR LENGTH", - "NUMBER_OF_VERTICES_OF_THE_POLYGON_TO_EXTRACT_THE_MESH" : "NUMBER OF VERTICES OF THE POLYGON TO EXTRACT THE MESH", - "NUMBER_OF_VERTICES_OF_THE_POLYGON_TO_REFINE_THE_MESH" : "NUMBER OF VERTICES OF THE POLYGON TO REFINE THE MESH", - "PARALLEL_PROCESSORS" : "PARALLEL PROCESSORS", - "MINIMUM_DISTANCE_BETWEEN_TWO_POINTS" : "MINIMUM DISTANCE BETWEEN TWO POINTS", - "MINIMUM_DISTANCE_AT_BOUNDARY" : "MINIMUM DISTANCE AT BOUNDARY", - "BOTTOM_CORRECTION_OF_TRIGRID" : "BOTTOM CORRECTION OF TRIGRID", - "ABSCISSAE_OF_THE_VERTICES_OF_THE_POLYGON_TO_EXTRACT_THE_MESH" : "ABSCISSAE OF THE VERTICES OF THE POLYGON TO EXTRACT THE MESH", - "ORDINATES_OF_THE_VERTICES_OF_THE_POLYGON_TO_EXTRACT_THE_MESH" : "ORDINATES OF THE VERTICES OF THE POLYGON TO EXTRACT THE MESH", - "ABSCISSAE_OF_THE_VERTICES_OF_THE_POLYGON_TO_REFINE_THE_MESH" : "ABSCISSAE OF THE VERTICES OF THE POLYGON TO REFINE THE MESH", - "ORDINATES_OF_THE_VERTICES_OF_THE_POLYGON_TO_REFINE_THE_MESH" : "ORDINATES OF THE VERTICES OF THE POLYGON TO REFINE THE MESH", - "OVERSTRESSED_TRIANGLES_CUTTING" : "OVERSTRESSED TRIANGLES CUTTING", - "WRITING_NODE_COLOURS" : "WRITING NODE COLOURS", - "ELIMINATION_OF_BACKWARD_DEPENDENCIES" : "ELIMINATION OF BACKWARD DEPENDENCIES", - "CUTTING_ELEMENTS_IN_FOUR" : "CUTTING ELEMENTS IN FOUR", - "BATHYMETRY_IN_THE_UNIVERSAL_FILE" : "BATHYMETRY IN THE UNIVERSAL FILE", - "NODES_RENUMBERING" : "NODES RENUMBERING", - "BOUNDARY_CONDITIONS_IN_THE_ADDITIONAL_FILE" : "BOUNDARY CONDITIONS IN THE ADDITIONAL FILE", - "PROJECTION_AFTER_EXTRACTION" : "PROJECTION AFTER EXTRACTION", - "FORTRAN_FILE" : "FORTRAN FILE", - "STEERING_FILE" : "STEERING FILE", - "UNIVERSAL_FILE" : "UNIVERSAL FILE", - "MESH_GENERATOR" : "MESH GENERATOR", - "GEOMETRY_FILE_FOR_TELEMAC" : "GEOMETRY FILE FOR TELEMAC", - "BINARY_STANDARD" : "BINARY STANDARD", - "BOUNDARY_CONDITIONS_FILE" : "BOUNDARY CONDITIONS FILE", - "BOTTOM_TOPOGRAPHY_FILES" : "BOTTOM TOPOGRAPHY FILES", - "BIBLIOTHEQUES" : "BIBLIOTHEQUES", - "RELEASE" : "RELEASE", - "MESH_ADDITIONAL_DATA_FILE" : "MESH ADDITIONAL DATA FILE", - "DICTIONARY" : "DICTIONARY", - "DRY_LIMIT" : "DRY LIMIT", - "DRY_ELEMENTS_ELIMINATION" : "DRY ELEMENTS ELIMINATION", - "PARTIALLY_DRY_ELEMENTS_ELIMINATION" : "PARTIALLY DRY ELEMENTS ELIMINATION", - "STORAGE_OF_ALL_TIME_STEPS" : "STORAGE OF ALL TIME STEPS", - "DEBUG" : "DEBUG", - "CONVERTER" : "CONVERTER", - "BOUNDARY_CONDITION_IN_SERAFIN_FORMAT" : "BOUNDARY CONDITION IN SERAFIN FORMAT", - "INPUT_FILE_FORMAT" : "INPUT FILE FORMAT", - "OUTPUT_FILE_FORMAT" : "OUTPUT FILE FORMAT", - "INPUT_FILE" : "INPUT FILE", - "OUTPUT_FILE" : "OUTPUT FILE", - "BOUNDARY_FILE" : "BOUNDARY FILE", - "LOG_FILE" : "LOG FILE", - "OUTPUT_BOUNDARY_FILE" : "OUTPUT BOUNDARY FILE", - "OUTPUT_LOG_FILE" : "OUTPUT LOG FILE", - "TRANSLATION" : "TRANSLATION", - "X_TRANSLATION" : "X TRANSLATION", - "Y_TRANSLATION" : "Y TRANSLATION", - "BOUNDARY_UNIVERSAL_FILE" : "BOUNDARY UNIVERSAL FILE", - "DESCRIPTION_OF_LIBRARIES" : "DESCRIPTION OF LIBRARIES", - "DEFAULT_EXECUTABLE" : "DEFAULT EXECUTABLE", - "DEFAULT_PARALLEL_EXECUTABLE" : "DEFAULT PARALLEL EXECUTABLE", - "LIST_OF_FILES" : "LIST OF FILES", -} -dicoCasEnToCata = { - "MAXIMUM NUMBER OF BATHYMETRIC POINTS" : "MAXIMUM_NUMBER_OF_BATHYMETRIC_POINTS", - "VECTOR LENGTH" : "VECTOR_LENGTH", - "NUMBER OF VERTICES OF THE POLYGON TO EXTRACT THE MESH" : "NUMBER_OF_VERTICES_OF_THE_POLYGON_TO_EXTRACT_THE_MESH", - "NUMBER OF VERTICES OF THE POLYGON TO REFINE THE MESH" : "NUMBER_OF_VERTICES_OF_THE_POLYGON_TO_REFINE_THE_MESH", - "PARALLEL PROCESSORS" : "PARALLEL_PROCESSORS", - "MINIMUM DISTANCE BETWEEN TWO POINTS" : "MINIMUM_DISTANCE_BETWEEN_TWO_POINTS", - "MINIMUM DISTANCE AT BOUNDARY" : "MINIMUM_DISTANCE_AT_BOUNDARY", - "BOTTOM CORRECTION OF TRIGRID" : "BOTTOM_CORRECTION_OF_TRIGRID", - "ABSCISSAE OF THE VERTICES OF THE POLYGON TO EXTRACT THE MESH" : "ABSCISSAE_OF_THE_VERTICES_OF_THE_POLYGON_TO_EXTRACT_THE_MESH", - "ORDINATES OF THE VERTICES OF THE POLYGON TO EXTRACT THE MESH" : "ORDINATES_OF_THE_VERTICES_OF_THE_POLYGON_TO_EXTRACT_THE_MESH", - "ABSCISSAE OF THE VERTICES OF THE POLYGON TO REFINE THE MESH" : "ABSCISSAE_OF_THE_VERTICES_OF_THE_POLYGON_TO_REFINE_THE_MESH", - "ORDINATES OF THE VERTICES OF THE POLYGON TO REFINE THE MESH" : "ORDINATES_OF_THE_VERTICES_OF_THE_POLYGON_TO_REFINE_THE_MESH", - "OVERSTRESSED TRIANGLES CUTTING" : "OVERSTRESSED_TRIANGLES_CUTTING", - "WRITING NODE COLOURS" : "WRITING_NODE_COLOURS", - "ELIMINATION OF BACKWARD DEPENDENCIES" : "ELIMINATION_OF_BACKWARD_DEPENDENCIES", - "CUTTING ELEMENTS IN FOUR" : "CUTTING_ELEMENTS_IN_FOUR", - "BATHYMETRY IN THE UNIVERSAL FILE" : "BATHYMETRY_IN_THE_UNIVERSAL_FILE", - "NODES RENUMBERING" : "NODES_RENUMBERING", - "BOUNDARY CONDITIONS IN THE ADDITIONAL FILE" : "BOUNDARY_CONDITIONS_IN_THE_ADDITIONAL_FILE", - "PROJECTION AFTER EXTRACTION" : "PROJECTION_AFTER_EXTRACTION", - "FORTRAN FILE" : "FORTRAN_FILE", - "STEERING FILE" : "STEERING_FILE", - "UNIVERSAL FILE" : "UNIVERSAL_FILE", - "MESH GENERATOR" : "MESH_GENERATOR", - "GEOMETRY FILE FOR TELEMAC" : "GEOMETRY_FILE_FOR_TELEMAC", - "BINARY STANDARD" : "BINARY_STANDARD", - "BOUNDARY CONDITIONS FILE" : "BOUNDARY_CONDITIONS_FILE", - "BOTTOM TOPOGRAPHY FILES" : "BOTTOM_TOPOGRAPHY_FILES", - "BIBLIOTHEQUES" : "BIBLIOTHEQUES", - "RELEASE" : "RELEASE", - "MESH ADDITIONAL DATA FILE" : "MESH_ADDITIONAL_DATA_FILE", - "DICTIONARY" : "DICTIONARY", - "DRY LIMIT" : "DRY_LIMIT", - "DRY ELEMENTS ELIMINATION" : "DRY_ELEMENTS_ELIMINATION", - "PARTIALLY DRY ELEMENTS ELIMINATION" : "PARTIALLY_DRY_ELEMENTS_ELIMINATION", - "STORAGE OF ALL TIME STEPS" : "STORAGE_OF_ALL_TIME_STEPS", - "DEBUG" : "DEBUG", - "CONVERTER" : "CONVERTER", - "BOUNDARY CONDITION IN SERAFIN FORMAT" : "BOUNDARY_CONDITION_IN_SERAFIN_FORMAT", - "INPUT FILE FORMAT" : "INPUT_FILE_FORMAT", - "OUTPUT FILE FORMAT" : "OUTPUT_FILE_FORMAT", - "INPUT FILE" : "INPUT_FILE", - "OUTPUT FILE" : "OUTPUT_FILE", - "BOUNDARY FILE" : "BOUNDARY_FILE", - "LOG FILE" : "LOG_FILE", - "OUTPUT BOUNDARY FILE" : "OUTPUT_BOUNDARY_FILE", - "OUTPUT LOG FILE" : "OUTPUT_LOG_FILE", - "TRANSLATION" : "TRANSLATION", - "X TRANSLATION" : "X_TRANSLATION", - "Y TRANSLATION" : "Y_TRANSLATION", - "BOUNDARY UNIVERSAL FILE" : "BOUNDARY_UNIVERSAL_FILE", - "DESCRIPTION OF LIBRARIES" : "DESCRIPTION_OF_LIBRARIES", - "DEFAULT EXECUTABLE" : "DEFAULT_EXECUTABLE", - "DEFAULT PARALLEL EXECUTABLE" : "DEFAULT_PARALLEL_EXECUTABLE", - "LIST OF FILES" : "LIST_OF_FILES", -} diff --git a/Telemac/stbtel_dicoCasFrToCata.py b/Telemac/stbtel_dicoCasFrToCata.py deleted file mode 100644 index 9ab513a4..00000000 --- a/Telemac/stbtel_dicoCasFrToCata.py +++ /dev/null @@ -1,114 +0,0 @@ -dicoCataToFrTelemac = { - "MAXIMUM_NUMBER_OF_BATHYMETRIC_POINTS" : "NOMBRE MAXIMUM DE POINTS DE BATHYMETRIE", - "VECTOR_LENGTH" : "LONGUEUR DU VECTEUR", - "NUMBER_OF_VERTICES_OF_THE_POLYGON_TO_EXTRACT_THE_MESH" : "NOMBRE DE SOMMETS DU POLYGONE D'EXTRACTION", - "NUMBER_OF_VERTICES_OF_THE_POLYGON_TO_REFINE_THE_MESH" : "NOMBRE DE SOMMETS DU POLYGONE DE RAFFINEMENT", - "PARALLEL_PROCESSORS" : "PROCESSEURS PARALLELES", - "MINIMUM_DISTANCE_BETWEEN_TWO_POINTS" : "DISTANCE MINIMALE ENTRE DEUX POINTS", - "MINIMUM_DISTANCE_AT_BOUNDARY" : "DISTANCE MINIMALE A LA FRONTIERE", - "BOTTOM_CORRECTION_OF_TRIGRID" : "CORRECTION DES FONDS DE TRIGRID", - "ABSCISSAE_OF_THE_VERTICES_OF_THE_POLYGON_TO_EXTRACT_THE_MESH" : "ABSCISSES DES SOMMETS DU POLYGONE D'EXTRACTION", - "ORDINATES_OF_THE_VERTICES_OF_THE_POLYGON_TO_EXTRACT_THE_MESH" : "ORDONNEES DES SOMMETS DU POLYGONE D'EXTRACTION", - "ABSCISSAE_OF_THE_VERTICES_OF_THE_POLYGON_TO_REFINE_THE_MESH" : "ABSCISSES DES SOMMETS DU POLYGONE DE RAFFINEMENT", - "ORDINATES_OF_THE_VERTICES_OF_THE_POLYGON_TO_REFINE_THE_MESH" : "ORDONNEES DES SOMMETS DU POLYGONE DE RAFFINEMENT", - "OVERSTRESSED_TRIANGLES_CUTTING" : "DECOUPAGE DES TRIANGLES SURCONTRAINTS", - "WRITING_NODE_COLOURS" : "ECRITURE DE LA COULEUR DES NOEUDS", - "ELIMINATION_OF_BACKWARD_DEPENDENCIES" : "ELIMINATION DES DEPENDANCES ARRIERES", - "CUTTING_ELEMENTS_IN_FOUR" : "DECOUPAGE DES TRIANGLES EN QUATRE", - "BATHYMETRY_IN_THE_UNIVERSAL_FILE" : "BATHYMETRIE DANS LE FICHIER UNIVERSEL", - "NODES_RENUMBERING" : "RENUMEROTATION DES POINTS", - "BOUNDARY_CONDITIONS_IN_THE_ADDITIONAL_FILE" : "CONDITIONS LIMITES DANS LE FICHIER ADDITIONNEL", - "PROJECTION_AFTER_EXTRACTION" : "PROJECTION APRES EXTRACTION", - "FORTRAN_FILE" : "FICHIER FORTRAN", - "STEERING_FILE" : "FICHIER DES PARAMETRES", - "UNIVERSAL_FILE" : "FICHIER UNIVERSEL", - "MESH_GENERATOR" : "MAILLEUR", - "GEOMETRY_FILE_FOR_TELEMAC" : "FICHIER DE GEOMETRIE POUR TELEMAC", - "BINARY_STANDARD" : "STANDARD DE BINAIRE", - "BOUNDARY_CONDITIONS_FILE" : "FICHIER DES CONDITIONS AUX LIMITES", - "BOTTOM_TOPOGRAPHY_FILES" : "FICHIERS DES FONDS", - "BIBLIOTHEQUES" : "BIBLIOTHEQUES", - "RELEASE" : "NUMERO DE VERSION", - "MESH_ADDITIONAL_DATA_FILE" : "FICHIER ADDITIONNEL DU MAILLEUR", - "DICTIONARY" : "DICTIONNAIRE", - "DRY_LIMIT" : "SEUIL DE SECHERESSE", - "DRY_ELEMENTS_ELIMINATION" : "ELIMINATION DES ELEMENTS SECS", - "PARTIALLY_DRY_ELEMENTS_ELIMINATION" : "ELIMINATION DES ELEMENTS PARTIELLEMENT SECS", - "STORAGE_OF_ALL_TIME_STEPS" : "STOCKAGE DE TOUS LES PAS DE TEMPS", - "DEBUG" : "DEBUG", - "CONVERTER" : "CONVERTISSEUR", - "BOUNDARY_CONDITION_IN_SERAFIN_FORMAT" : "CONDITION LIMITE EN FORMAT SERAFIN", - "INPUT_FILE_FORMAT" : "FORMAT DU FICHIER D ENTREE", - "OUTPUT_FILE_FORMAT" : "FORMAT DU FICHIER DE SORTIE", - "INPUT_FILE" : "FICHIER D ENTREE", - "OUTPUT_FILE" : "FICHIER DE SORTIE", - "BOUNDARY_FILE" : "FICHIER DES CONDITIONS LIMITES", - "LOG_FILE" : "FICHIER LOG", - "OUTPUT_BOUNDARY_FILE" : "FICHIER DES CONDITIONS LIMITES EN SORTIE", - "OUTPUT_LOG_FILE" : "FICHIER LOG EN SORTIE", - "TRANSLATION" : "TRANSLATION", - "X_TRANSLATION" : "TRANSLATION SELON X", - "Y_TRANSLATION" : "TRANSLATION SELON Y", - "BOUNDARY_UNIVERSAL_FILE" : "FICHIER UNIVERSEL LIMITE", - "DESCRIPTION_OF_LIBRARIES" : "DESCRIPTION DES LIBRAIRIES", - "DEFAULT_EXECUTABLE" : "EXECUTABLE PAR DEFAUT", - "DEFAULT_PARALLEL_EXECUTABLE" : "EXECUTABLE PARALLELE PAR DEFAUT", - "LIST_OF_FILES" : "LISTE DES FICHIERS", -} -dicoCasFrToCata = { - "NOMBRE MAXIMUM DE POINTS DE BATHYMETRIE" : "MAXIMUM_NUMBER_OF_BATHYMETRIC_POINTS", - "LONGUEUR DU VECTEUR" : "VECTOR_LENGTH", - "NOMBRE DE SOMMETS DU POLYGONE D'EXTRACTION" : "NUMBER_OF_VERTICES_OF_THE_POLYGON_TO_EXTRACT_THE_MESH", - "NOMBRE DE SOMMETS DU POLYGONE DE RAFFINEMENT" : "NUMBER_OF_VERTICES_OF_THE_POLYGON_TO_REFINE_THE_MESH", - "PROCESSEURS PARALLELES" : "PARALLEL_PROCESSORS", - "DISTANCE MINIMALE ENTRE DEUX POINTS" : "MINIMUM_DISTANCE_BETWEEN_TWO_POINTS", - "DISTANCE MINIMALE A LA FRONTIERE" : "MINIMUM_DISTANCE_AT_BOUNDARY", - "CORRECTION DES FONDS DE TRIGRID" : "BOTTOM_CORRECTION_OF_TRIGRID", - "ABSCISSES DES SOMMETS DU POLYGONE D'EXTRACTION" : "ABSCISSAE_OF_THE_VERTICES_OF_THE_POLYGON_TO_EXTRACT_THE_MESH", - "ORDONNEES DES SOMMETS DU POLYGONE D'EXTRACTION" : "ORDINATES_OF_THE_VERTICES_OF_THE_POLYGON_TO_EXTRACT_THE_MESH", - "ABSCISSES DES SOMMETS DU POLYGONE DE RAFFINEMENT" : "ABSCISSAE_OF_THE_VERTICES_OF_THE_POLYGON_TO_REFINE_THE_MESH", - "ORDONNEES DES SOMMETS DU POLYGONE DE RAFFINEMENT" : "ORDINATES_OF_THE_VERTICES_OF_THE_POLYGON_TO_REFINE_THE_MESH", - "DECOUPAGE DES TRIANGLES SURCONTRAINTS" : "OVERSTRESSED_TRIANGLES_CUTTING", - "ECRITURE DE LA COULEUR DES NOEUDS" : "WRITING_NODE_COLOURS", - "ELIMINATION DES DEPENDANCES ARRIERES" : "ELIMINATION_OF_BACKWARD_DEPENDENCIES", - "DECOUPAGE DES TRIANGLES EN QUATRE" : "CUTTING_ELEMENTS_IN_FOUR", - "BATHYMETRIE DANS LE FICHIER UNIVERSEL" : "BATHYMETRY_IN_THE_UNIVERSAL_FILE", - "RENUMEROTATION DES POINTS" : "NODES_RENUMBERING", - "CONDITIONS LIMITES DANS LE FICHIER ADDITIONNEL" : "BOUNDARY_CONDITIONS_IN_THE_ADDITIONAL_FILE", - "PROJECTION APRES EXTRACTION" : "PROJECTION_AFTER_EXTRACTION", - "FICHIER FORTRAN" : "FORTRAN_FILE", - "FICHIER DES PARAMETRES" : "STEERING_FILE", - "FICHIER UNIVERSEL" : "UNIVERSAL_FILE", - "MAILLEUR" : "MESH_GENERATOR", - "FICHIER DE GEOMETRIE POUR TELEMAC" : "GEOMETRY_FILE_FOR_TELEMAC", - "STANDARD DE BINAIRE" : "BINARY_STANDARD", - "FICHIER DES CONDITIONS AUX LIMITES" : "BOUNDARY_CONDITIONS_FILE", - "FICHIERS DES FONDS" : "BOTTOM_TOPOGRAPHY_FILES", - "BIBLIOTHEQUES" : "BIBLIOTHEQUES", - "NUMERO DE VERSION" : "RELEASE", - "FICHIER ADDITIONNEL DU MAILLEUR" : "MESH_ADDITIONAL_DATA_FILE", - "DICTIONNAIRE" : "DICTIONARY", - "SEUIL DE SECHERESSE" : "DRY_LIMIT", - "ELIMINATION DES ELEMENTS SECS" : "DRY_ELEMENTS_ELIMINATION", - "ELIMINATION DES ELEMENTS PARTIELLEMENT SECS" : "PARTIALLY_DRY_ELEMENTS_ELIMINATION", - "STOCKAGE DE TOUS LES PAS DE TEMPS" : "STORAGE_OF_ALL_TIME_STEPS", - "DEBUG" : "DEBUG", - "CONVERTISSEUR" : "CONVERTER", - "CONDITION LIMITE EN FORMAT SERAFIN" : "BOUNDARY_CONDITION_IN_SERAFIN_FORMAT", - "FORMAT DU FICHIER D ENTREE" : "INPUT_FILE_FORMAT", - "FORMAT DU FICHIER DE SORTIE" : "OUTPUT_FILE_FORMAT", - "FICHIER D ENTREE" : "INPUT_FILE", - "FICHIER DE SORTIE" : "OUTPUT_FILE", - "FICHIER DES CONDITIONS LIMITES" : "BOUNDARY_FILE", - "FICHIER LOG" : "LOG_FILE", - "FICHIER DES CONDITIONS LIMITES EN SORTIE" : "OUTPUT_BOUNDARY_FILE", - "FICHIER LOG EN SORTIE" : "OUTPUT_LOG_FILE", - "TRANSLATION" : "TRANSLATION", - "TRANSLATION SELON X" : "X_TRANSLATION", - "TRANSLATION SELON Y" : "Y_TRANSLATION", - "FICHIER UNIVERSEL LIMITE" : "BOUNDARY_UNIVERSAL_FILE", - "DESCRIPTION DES LIBRAIRIES" : "DESCRIPTION_OF_LIBRARIES", - "EXECUTABLE PAR DEFAUT" : "DEFAULT_EXECUTABLE", - "EXECUTABLE PARALLELE PAR DEFAUT" : "DEFAULT_PARALLEL_EXECUTABLE", - "LISTE DES FICHIERS" : "LIST_OF_FILES", -} diff --git a/Telemac/stbtel_enum_auto.py b/Telemac/stbtel_enum_auto.py deleted file mode 100644 index 005e93f7..00000000 --- a/Telemac/stbtel_enum_auto.py +++ /dev/null @@ -1,158 +0,0 @@ -#/usr/bin/env python -# -*- coding: latin-1 -*- -TelemacdicoEn = { -} -TelemacdicoFr = { -} - -DicoCasFrToCata = { - "NOMBRE MAXIMUM DE POINTS DE BATHYMETRIE":"MAXIMUM_NUMBER_OF_BATHYMETRIC_POINTS", - "LONGUEUR DU VECTEUR":"VECTOR_LENGTH", - "NOMBRE DE SOMMETS DU POLYGONE D'EXTRACTION":"NUMBER_OF_VERTICES_OF_THE_POLYGON_TO_EXTRACT_THE_MESH", - "NOMBRE DE SOMMETS DU POLYGONE DE RAFFINEMENT":"NUMBER_OF_VERTICES_OF_THE_POLYGON_TO_REFINE_THE_MESH", - "PROCESSEURS PARALLELES":"PARALLEL_PROCESSORS", - "DISTANCE MINIMALE ENTRE DEUX POINTS":"MINIMUM_DISTANCE_BETWEEN_TWO_POINTS", - "DISTANCE MINIMALE A LA FRONTIERE":"MINIMUM_DISTANCE_AT_BOUNDARY", - "CORRECTION DES FONDS DE TRIGRID":"BOTTOM_CORRECTION_OF_TRIGRID", - "ABSCISSES DES SOMMETS DU POLYGONE D'EXTRACTION":"ABSCISSAE_OF_THE_VERTICES_OF_THE_POLYGON_TO_EXTRACT_THE_MESH", - "ORDONNEES DES SOMMETS DU POLYGONE D'EXTRACTION":"ORDINATES_OF_THE_VERTICES_OF_THE_POLYGON_TO_EXTRACT_THE_MESH", - "ABSCISSES DES SOMMETS DU POLYGONE DE RAFFINEMENT":"ABSCISSAE_OF_THE_VERTICES_OF_THE_POLYGON_TO_REFINE_THE_MESH", - "ORDONNEES DES SOMMETS DU POLYGONE DE RAFFINEMENT":"ORDINATES_OF_THE_VERTICES_OF_THE_POLYGON_TO_REFINE_THE_MESH", - "DECOUPAGE DES TRIANGLES SURCONTRAINTS":"OVERSTRESSED_TRIANGLES_CUTTING", - "ECRITURE DE LA COULEUR DES NOEUDS":"WRITING_NODE_COLOURS", - "ELIMINATION DES DEPENDANCES ARRIERES":"ELIMINATION_OF_BACKWARD_DEPENDENCIES", - "DECOUPAGE DES TRIANGLES EN QUATRE":"CUTTING_ELEMENTS_IN_FOUR", - "BATHYMETRIE DANS LE FICHIER UNIVERSEL":"BATHYMETRY_IN_THE_UNIVERSAL_FILE", - "RENUMEROTATION DES POINTS":"NODES_RENUMBERING", - "CONDITIONS LIMITES DANS LE FICHIER ADDITIONNEL":"BOUNDARY_CONDITIONS_IN_THE_ADDITIONAL_FILE", - "PROJECTION APRES EXTRACTION":"PROJECTION_AFTER_EXTRACTION", - "FICHIER FORTRAN":"FORTRAN_FILE", - "FICHIER DES PARAMETRES":"STEERING_FILE", - "FICHIER UNIVERSEL":"UNIVERSAL_FILE", - "MAILLEUR":"MESH_GENERATOR", - "FICHIER DE GEOMETRIE POUR TELEMAC":"GEOMETRY_FILE_FOR_TELEMAC", - "STANDARD DE BINAIRE":"BINARY_STANDARD", - "FICHIER DES CONDITIONS AUX LIMITES":"BOUNDARY_CONDITIONS_FILE", - "FICHIERS DES FONDS":"BOTTOM_TOPOGRAPHY_FILES", - "BIBLIOTHEQUES":"BIBLIOTHEQUES", - "NUMERO DE VERSION":"RELEASE", - "FICHIER ADDITIONNEL DU MAILLEUR":"MESH_ADDITIONAL_DATA_FILE", - "DICTIONNAIRE":"DICTIONARY", - "SEUIL DE SECHERESSE":"DRY_LIMIT", - "ELIMINATION DES ELEMENTS SECS":"DRY_ELEMENTS_ELIMINATION", - "ELIMINATION DES ELEMENTS PARTIELLEMENT SECS":"PARTIALLY_DRY_ELEMENTS_ELIMINATION", - "STOCKAGE DE TOUS LES PAS DE TEMPS":"STORAGE_OF_ALL_TIME_STEPS", - "DEBUG":"DEBUG", - "CONVERTISSEUR":"CONVERTER", - "CONDITION LIMITE EN FORMAT SERAFIN":"BOUNDARY_CONDITION_IN_SERAFIN_FORMAT", - "FORMAT DU FICHIER D ENTREE":"INPUT_FILE_FORMAT", - "FORMAT DU FICHIER DE SORTIE":"OUTPUT_FILE_FORMAT", - "FICHIER D ENTREE":"INPUT_FILE", - "FICHIER DE SORTIE":"OUTPUT_FILE", - "FICHIER DES CONDITIONS LIMITES":"BOUNDARY_FILE", - "FICHIER LOG":"LOG_FILE", - "FICHIER DES CONDITIONS LIMITES EN SORTIE":"OUTPUT_BOUNDARY_FILE", - "FICHIER LOG EN SORTIE":"OUTPUT_LOG_FILE", - "TRANSLATION":"TRANSLATION", - "TRANSLATION SELON X":"X_TRANSLATION", - "TRANSLATION SELON Y":"Y_TRANSLATION", - "FICHIER UNIVERSEL LIMITE":"BOUNDARY_UNIVERSAL_FILE", - "DESCRIPTION DES LIBRAIRIES":"DESCRIPTION_OF_LIBRARIES", - "EXECUTABLE PAR DEFAUT":"DEFAULT_EXECUTABLE", - "EXECUTABLE PARALLELE PAR DEFAUT":"DEFAULT_PARALLEL_EXECUTABLE", - "LISTE DES FICHIERS":"LIST_OF_FILES", -} - -DicoCasEnToCata = { - 'MAXIMUM NUMBER OF BATHYMETRIC POINTS':'MAXIMUM_NUMBER_OF_BATHYMETRIC_POINTS', - 'VECTOR LENGTH':'VECTOR_LENGTH', - 'NUMBER OF VERTICES OF THE POLYGON TO EXTRACT THE MESH':'NUMBER_OF_VERTICES_OF_THE_POLYGON_TO_EXTRACT_THE_MESH', - 'NUMBER OF VERTICES OF THE POLYGON TO REFINE THE MESH':'NUMBER_OF_VERTICES_OF_THE_POLYGON_TO_REFINE_THE_MESH', - 'PARALLEL PROCESSORS':'PARALLEL_PROCESSORS', - 'MINIMUM DISTANCE BETWEEN TWO POINTS':'MINIMUM_DISTANCE_BETWEEN_TWO_POINTS', - 'MINIMUM DISTANCE AT BOUNDARY':'MINIMUM_DISTANCE_AT_BOUNDARY', - 'BOTTOM CORRECTION OF TRIGRID':'BOTTOM_CORRECTION_OF_TRIGRID', - 'ABSCISSAE OF THE VERTICES OF THE POLYGON TO EXTRACT THE MESH':'ABSCISSAE_OF_THE_VERTICES_OF_THE_POLYGON_TO_EXTRACT_THE_MESH', - 'ORDINATES OF THE VERTICES OF THE POLYGON TO EXTRACT THE MESH':'ORDINATES_OF_THE_VERTICES_OF_THE_POLYGON_TO_EXTRACT_THE_MESH', - 'ABSCISSAE OF THE VERTICES OF THE POLYGON TO REFINE THE MESH':'ABSCISSAE_OF_THE_VERTICES_OF_THE_POLYGON_TO_REFINE_THE_MESH', - 'ORDINATES OF THE VERTICES OF THE POLYGON TO REFINE THE MESH':'ORDINATES_OF_THE_VERTICES_OF_THE_POLYGON_TO_REFINE_THE_MESH', - 'OVERSTRESSED TRIANGLES CUTTING':'OVERSTRESSED_TRIANGLES_CUTTING', - 'WRITING NODE COLOURS':'WRITING_NODE_COLOURS', - 'ELIMINATION OF BACKWARD DEPENDENCIES':'ELIMINATION_OF_BACKWARD_DEPENDENCIES', - 'CUTTING ELEMENTS IN FOUR':'CUTTING_ELEMENTS_IN_FOUR', - 'BATHYMETRY IN THE UNIVERSAL FILE':'BATHYMETRY_IN_THE_UNIVERSAL_FILE', - 'NODES RENUMBERING':'NODES_RENUMBERING', - 'BOUNDARY CONDITIONS IN THE ADDITIONAL FILE':'BOUNDARY_CONDITIONS_IN_THE_ADDITIONAL_FILE', - 'PROJECTION AFTER EXTRACTION':'PROJECTION_AFTER_EXTRACTION', - 'FORTRAN FILE':'FORTRAN_FILE', - 'STEERING FILE':'STEERING_FILE', - 'UNIVERSAL FILE':'UNIVERSAL_FILE', - 'MESH GENERATOR':'MESH_GENERATOR', - 'GEOMETRY FILE FOR TELEMAC':'GEOMETRY_FILE_FOR_TELEMAC', - 'BINARY STANDARD':'BINARY_STANDARD', - 'BOUNDARY CONDITIONS FILE':'BOUNDARY_CONDITIONS_FILE', - 'BOTTOM TOPOGRAPHY FILES':'BOTTOM_TOPOGRAPHY_FILES', - 'BIBLIOTHEQUES':'BIBLIOTHEQUES', - 'RELEASE':'RELEASE', - 'MESH ADDITIONAL DATA FILE':'MESH_ADDITIONAL_DATA_FILE', - 'DICTIONARY':'DICTIONARY', - 'DRY LIMIT':'DRY_LIMIT', - 'DRY ELEMENTS ELIMINATION':'DRY_ELEMENTS_ELIMINATION', - 'PARTIALLY DRY ELEMENTS ELIMINATION':'PARTIALLY_DRY_ELEMENTS_ELIMINATION', - 'STORAGE OF ALL TIME STEPS':'STORAGE_OF_ALL_TIME_STEPS', - 'DEBUG':'DEBUG', - 'CONVERTER':'CONVERTER', - 'BOUNDARY CONDITION IN SERAFIN FORMAT':'BOUNDARY_CONDITION_IN_SERAFIN_FORMAT', - 'INPUT FILE FORMAT':'INPUT_FILE_FORMAT', - 'OUTPUT FILE FORMAT':'OUTPUT_FILE_FORMAT', - 'INPUT FILE':'INPUT_FILE', - 'OUTPUT FILE':'OUTPUT_FILE', - 'BOUNDARY FILE':'BOUNDARY_FILE', - 'LOG FILE':'LOG_FILE', - 'OUTPUT BOUNDARY FILE':'OUTPUT_BOUNDARY_FILE', - 'OUTPUT LOG FILE':'OUTPUT_LOG_FILE', - 'TRANSLATION':'TRANSLATION', - 'X TRANSLATION':'X_TRANSLATION', - 'Y TRANSLATION':'Y_TRANSLATION', - 'BOUNDARY UNIVERSAL FILE':'BOUNDARY_UNIVERSAL_FILE', - 'DESCRIPTION OF LIBRARIES':'DESCRIPTION_OF_LIBRARIES', - 'DEFAULT EXECUTABLE':'DEFAULT_EXECUTABLE', - 'DEFAULT PARALLEL EXECUTABLE':'DEFAULT_PARALLEL_EXECUTABLE', - 'LIST OF FILES':'LIST_OF_FILES', -} -DicoEnumCasFrToEnumCasEn = { -'MESH_GENERATOR':{ - "SUPERTAB4":"SUPERTAB4", - "SUPERTAB6":"SUPERTAB6", - "MASTER2":"MASTER2", - "SIMAIL":"SIMAIL", - "SELAFIN":"SELAFIN", - "TRIGRID":"TRIGRID", - "FASTTABS":"FASTTABS", -}, - -'BINARY_STANDARD':{ - "STD":"STD", - "IBM":"IBM", - "I3E":"I3E", -}, - -'INPUT_FILE_FORMAT':{ - "SERAFIN":"SERAFIN", - "SERAFIND":"SERAFIND", - "MED":"MED", - "UNV":"UNV", - "CGNS":"CGNS", -}, - -'OUTPUT_FILE_FORMAT':{ - "SERAFIN":"SERAFIN", - "SERAFIND":"SERAFIND", - "MED":"MED", - "UNV":"UNV", - "CGNS":"CGNS", - "VTK":"VTK", - "CGNS":"CGNS", -}, - -} diff --git a/Telemac/stbtel_labelCataToIhm_en.qm b/Telemac/stbtel_labelCataToIhm_en.qm deleted file mode 100644 index 6d29faf3..00000000 Binary files a/Telemac/stbtel_labelCataToIhm_en.qm and /dev/null differ diff --git a/Telemac/stbtel_labelCataToIhm_fr.qm b/Telemac/stbtel_labelCataToIhm_fr.qm deleted file mode 100644 index 1fe6afcd..00000000 Binary files a/Telemac/stbtel_labelCataToIhm_fr.qm and /dev/null differ diff --git a/Telemac/telemac2d_cata_auto.py b/Telemac/telemac2d_cata_auto.py deleted file mode 100644 index 5fe6197c..00000000 --- a/Telemac/telemac2d_cata_auto.py +++ /dev/null @@ -1,4455 +0,0 @@ - -# -*- coding: latin-1 -*- - -from Accas import * -class DateJJMMAAAA: - def __init__(self): - self.ntuple=3 - - def __convert__(self,valeur): - if type(valeur) == types.StringType: return None - if len(valeur) != self.ntuple: return None - return valeur - - def info(self): - return "Date : jj/mm/aaaa " - - __repr__=info - __str__=info - -class grma(GEOM): - pass - -import types -class Tuple: - def __init__(self,ntuple): - self.ntuple=ntuple - - def __convert__(self,valeur): - if type(valeur) == types.StringType: - return None - if len(valeur) != self.ntuple: - return None - return valeur - - def info(self): - return "Tuple de %s elements" % self.ntuple - - - -JdC = JDC_CATA (code = 'TELEMAC2D', - execmodul = None, - ) -# ======================================================================= -# Catalog entry for the MAP function : c_pre_interfaceBody_mesh -# ======================================================================= - -VERSION_CATALOGUE="TRUNK_20180306" -# ----------------------------------------------------------------------- -COMPUTATION_ENVIRONMENT = PROC(nom= "COMPUTATION_ENVIRONMENT",op = None, -# ----------------------------------------------------------------------- - UIinfo = {"groupes": ("CACHE")}, -# ----------------------------------- - INITIALIZATION = FACT(statut='o', -# ----------------------------------- -# ----------------------------------- - TITLE = SIMP(statut ='o', -# ----------------------------------- - typ = 'TXM', - defaut = '', - fr = """Titre du cas etudie. Ce titre figurera sur les dessins.""", - ang = """Title of the case being considered. This title shall be marked on the -drawings.""", - ), -# ----------------------------------- - INITIAL_CONDITIONS = SIMP(statut ='o', -# ----------------------------------- - typ = 'TXM', - into = ['ZERO ELEVATION','CONSTANT ELEVATION','ZERO DEPTH','CONSTANT DEPTH','SPECIAL','PARTICULIERES','PARTICULAR','TPXO SATELLITE ALTIMETRY'], - defaut = 'ZERO ELEVATION', - fr = """Permet de definir les conditions initiales sur -les hauteurs d''eau. -Les valeurs possibles sont : - - COTE NULLE. Initialise la cote de surface libre a 0. - Les hauteurs d''eau initiales sont alors retrouvees en - faisant la difference entre les cotes de surface libre - et du fond. - - COTE CONSTANTE .Initialise la cote de surface libre a la - valeur donnee par le mot-cle COTE INITIALE. Les hauteurs - d''eau initiales sont calculees comme precedemment. - - HAUTEUR NULLE .Initialise les hauteurs d''eau a 0. - - HAUTEUR CONSTANTE. Initialise les hauteurs d''eau a la valeur - donnee par le mot-cle HAUTEUR INITIALE. - - PARTICULIERES. Les conditions initiales sur la hauteur d''eau - doivent etre precisees dans le sous-programme CONDIN. - - ALTIMETRIE SATELLITE TPXO. Les conditions initiales sur la hauteur - d''eau et les vitesses sont etiblies sur la base des donnees - satellite TPXO dont les 8 premiers constistuents -ont ete extrait - et sauves dans le fichier BASE DE DONNEES DE MAREE.""", - ang = """Makes it possible to define the initial conditions with -the water depth. -The possible values are as follows: - - ZERO ELEVATION-. Initializes the free surface elevation to 0. -The initial water depths are then found by computing the difference -between the free surface and the bottom. - - CONSTANT ELEVATION-. Initializes the water elevation to the value -given by the keyword -INITIAL ELEVATION-. The initial water depths -are computed as in the previous case. - - ZERO DEPTH-. Initializes the water depths to 0. - - CONSTANT DEPTH-. Initializes the water depths to the value given -by the key-word -INITIAL DEPTH-. - - SPECIAL-. The initial conditions with the water depth should be -stated in the CONDIN subroutine. - - TPXO SATELITE ALTIMETRY. The initial conditions on the -free surface and -velocities are established from the TPXO satellite program data, -the harmonic -constituents of which are stored in the TIDE DATA BASE file.""", - ), -# ----------------------------------- - b_INITIAL_CONDITIONSG = BLOC(condition="INITIAL_CONDITIONS == 'CONSTANT ELEVATION'", -# ----------------------------------- -# ----------------------------------- - INITIAL_ELEVATION = SIMP(statut ='o', -# ----------------------------------- - typ = 'R', - defaut = 0., - fr = """Valeur utilisee avec l''option : - CONDITIONS INITIALES - COTE CONSTANTE""", - ang = """Value to be used with the option : -INITIAL CONDITIONS -CONSTANT ELEVATION""", - ), - ), -# ----------------------------------- - b_INITIAL_CONDITIONSH = BLOC(condition="INITIAL_CONDITIONS == 'CONSTANT DEPTH'", -# ----------------------------------- -# ----------------------------------- - INITIAL_DEPTH = SIMP(statut ='o', -# ----------------------------------- - typ = 'R', - defaut = 0., - fr = """Valeur utilisee avec l''option : -CONDITIONS INITIALES :-HAUTEUR CONSTANTE-""", - ang = """Value to be used along with the option: - INITIAL CONDITIONS -CONSTANT DEPTH-""", - ), - ), -# ----------------------------------- - BINARY_DATA_FILE_1_FORMAT = SIMP(statut ='f', -# ----------------------------------- - typ = 'TXM', - into = ['BIN','SERAFIN','SERAFIND','MED'], - defaut = 'BIN', - fr = """Format du fichier de geometrie. -Les valeurs possibles sont : -- BIN : format binaire standard -- SERAFIN : format standard simple precision pour Telemac; -- SERAFIND: format standard double precision pour Telemac; -- MED : format MED base sur HDF5""", - ang = """Geometry file format. -Possible values are: -- BIN : Standard binary format -- SERAFIN : classical single precision format in Telemac; -- SERAFIND: classical double precision format in Telemac; -- MED : MED format based on HDF5""", - ), -# ----------------------------------- - BINARY_DATA_FILE_1 = SIMP(statut ='f', -# ----------------------------------- - typ = ('Fichier','All Files (*)'), - defaut = '', - fr = """Fichier de donnees code en binaire mis a la disposition -de l''utilisateur. -Les donnees de ce fichier seront a lire sur le canal 24.""", - ang = """Binary-coded data file made available to the user. -The data in this file shall be read on channel 24.""", - ), -# ----------------------------------- - BINARY_DATA_FILE_2_FORMAT = SIMP(statut ='f', -# ----------------------------------- - typ = 'TXM', - into = ['BIN','SERAFIN','SERAFIND','MED'], - defaut = 'BIN', - fr = """Format du fichier de geometrie. -Les valeurs possibles sont : -- BIN : format binaire standard -- SERAFIN : format standard simple precision pour Telemac; -- SERAFIND: format standard double precision pour Telemac; -- MED : format MED base sur HDF5""", - ang = """Geometry file format. -Possible values are: -- BIN : Standard binary format -- SERAFIN : classical single precision format in Telemac; -- SERAFIND: classical double precision format in Telemac; -- MED : MED format based on HDF5""", - ), -# ----------------------------------- - BINARY_DATA_FILE_2 = SIMP(statut ='f', -# ----------------------------------- - typ = ('Fichier','All Files (*)'), - defaut = '', - fr = """Fichier de donnees code en binaire mis a la disposition -de l''utilisateur. -Les donnees de ce fichier seront a lire sur le canal 25.""", - ang = """Binary-coded data file made available to the user. -The data in this file shall be read on channel 25.""", - ), -# ----------------------------------- - FORMATTED_DATA_FILE_1 = SIMP(statut ='f', -# ----------------------------------- - typ = ('Fichier','All Files (*)'), - defaut = '', - fr = """Fichier de donnees formate mis a la disposition de -l''utilisateur. -Les donnees de ce fichier seront a lire sur le canal 26.""", - ang = """Formatted data file made available to the user. -The data in this file shall be read on channel 26.""", - ), -# ----------------------------------- - FORMATTED_DATA_FILE_2 = SIMP(statut ='f', -# ----------------------------------- - typ = ('Fichier','All Files (*)'), - defaut = '', - fr = """Fichier de donnees formate mis a la disposition de -l''utilisateur. -Les donnees de ce fichier seront a lire sur le canal 27.""", - ang = """Formatted data file made available to the user. -The data in this file shall be read on channel 27.""", - ), -# ----------------------------------- - INPUT_FILES = FACT(statut='o', -# ----------------------------------- -# ----------------------------------- - GEOMETRY_FILE_FORMAT = SIMP(statut ='o', -# ----------------------------------- - typ = 'TXM', - into = ['SERAFIN?','SERAFIND','MED'], - defaut = 'SERAFIN?', - fr = """Format du fichier de geometrie. -Les valeurs possibles sont : -- SERAFIN : format standard simple precision pour Telemac; -- SERAFIND: format standard double precision pour Telemac; -- MED : format MED base sur HDF5""", - ang = """Geometry file format. -Possible values are: -- SERAFIN : classical single precision format in Telemac; -- SERAFIND: classical double precision format in Telemac; -- MED : MED format based on HDF5""", - ), -# ----------------------------------- - GEOMETRY_FILE = SIMP(statut ='o', -# ----------------------------------- - typ = ('Fichier','All Files (*)'), - fr = """Nom du fichier contenant le maillage du calcul a realiser.""", - ang = """Name of the file containing the mesh. This file may also -contain the topography and the friction coefficients.""", - ), -# ----------------------------------- - FORTRAN_FILE = SIMP(statut ='f', -# ----------------------------------- - typ = 'FichierOuRepertoire', - defaut = 'DEFAUT', - fr = """Nom du fichier FORTRAN a soumettre.""", - ang = """Name of FORTRAN file to be submitted.""", - ), -# ----------------------------------- - BOTTOM_TOPOGRAPHY_FILE = SIMP(statut ='f', -# ----------------------------------- - typ = ('Fichier','All Files (*)'), - defaut = '', - fr = """Nom du fichier eventuel contenant la bathymetrie associee au -maillage. -Si ce mot-cle est utilise; c''est cette bathymetrie qui sera utilisee -pour le calcul.""", - ang = """Name of the possible file containing the bathymetric data. -Where this keyword is used, these bathymetric data shall be used in -the computation.""", - ), -# ----------------------------------- - BOTTOM_SMOOTHINGS = SIMP(statut ='o', -# ----------------------------------- - typ = 'I', - defaut = 0, - fr = """Nombre de lissages effectues sur la topographie. -chaque lissage, effectue a l''aide d''une matrice de masse, -est conservatif. -Utilise lorsque les donnees de bathymetrie donnent des resultats -trop irreguliers apres interpolation.""", - ang = """Number of smoothings on bottom topography. -each smoothing is mass conservative. -to be used when interpolation of bathymetry on the mesh gives -very rough results.""", - ), -# ----------------------------------- - BOUNDARY_CONDITIONS_FILE = SIMP(statut ='o', -# ----------------------------------- - typ = ('Fichier','All Files (*)'), - fr = """Nom du fichier contenant les types de conditions aux limites. -Ce fichier est rempli de facon automatique par le mailleur au moyen de -couleurs affectees aux noeuds des frontieres du domaine de calcul.""", - ang = """Name of the file containing the types of boundary conditions. -This file is filled automatically by the mesh generator through -through colours that are assigned to the boundary nodes.""", - ), -# ----------------------------------- - VALIDATION = SIMP(statut ='f', -# ----------------------------------- - typ = bool, - defaut = False, - fr = """Option utilisee principalement pour le dossier de validation. Le -fichier des resultats du calcul precedent est alors considere comme une -reference a laquelle on va comparer le calcul. La comparaison est -effectuee par le sous-programme VALIDA qui peut etre une comparaison -avec une solution exacte par exemple.""", - ang = """This option is primarily used for the validation documents. The -PREVIOUS COMPUTATION FILE is then considered as a reference which the -computation is going to be compared with. The comparison is made by the -subroutine VALIDA, which can be modified as to so as to include, for -example,a comparison with an exact solution.""", - ), -# ----------------------------------- - REFERENCE_FILE_FORMAT = SIMP(statut ='f', -# ----------------------------------- - typ = 'TXM', - into = ['SERAFIN?','SERAFIND','MED'], - defaut = 'SERAFIN?', - fr = """Format du fichier de resultats du calcul precedent. -Les valeurs possibles sont : -- SERAFIN : format standard simple precision pour Telemac; -- SERAFIND: format standard double precision pour Telemac; -- MED : format MED base sur HDF5""", - ang = """Previous computation results file format. -Possible values are: -- SERAFIN : classical single precision format in Telemac; -- SERAFIND: classical double precision format in Telemac; -- MED : MED format based on HDF5""", - ), -# ----------------------------------- - REFERENCE_FILE = SIMP(statut ='f', -# ----------------------------------- - typ = ('Fichier','All Files (*)'), - defaut = '', - fr = """Fichier de resultats de reference pour la validation. Les resultats a -placer dans ce fichier seront a ecrire sur le canal 22.""", - ang = """Binary-coded result file for validation. The results to be entered -into this file shall be written on channel 22.""", - ), - ), -# ----------------------------------- - GLOBAL = FACT(statut='o', -# ----------------------------------- -# ----------------------------------- - PARALLEL_PROCESSORS = SIMP(statut ='f', -# ----------------------------------- - typ = 'I', - defaut = 0, - fr = """NOMBRE DE PROCESSEURS EN CALCUL PARALLELE -0 : 1 machine, compilation sans bibliotheque de parallelisme -1 : 1 machine, compilation avec bibliotheque de parallelisme -2 : 2 processeurs ou machines en parallele -etc...""", - ang = """NUMBER OF PROCESSORS FOR PARALLEL PROCESSING -0 : 1 machine, compiling without parallel library -1 : 1 machine, compiling with a parallel library -2 : 2 processors or machines in parallel -etc....""", - ), -# ----------------------------------- - CHECKING_THE_MESH = SIMP(statut ='o', -# ----------------------------------- - typ = bool, - defaut = False, - fr = """Si oui on appelle le sous-programme checkmesh qui verifie -la coherence du maillage, points superposes, etc.""", - ang = """if this key word is equal to yes, a call to subroutine -checkmesh will look for errors in the mesh, superimposed points, etc.""", - ), -# ----------------------------------- - MAXIMUM_NUMBER_OF_BOUNDARIES = SIMP(statut ='f', -# ----------------------------------- - typ = 'I', - defaut = 30, - fr = """nombre maximal de frontieres differentes dans le maillage. -Sert au dimensionnement de la memoire, a augmenter si necessaire""", - ang = """maximal number of boundaries in the mesh. -Used for dimensioning arrays. Can be increased if needed""", - ), -# ----------------------------------- - MAXIMUM_NUMBER_OF_SOURCES = SIMP(statut ='f', -# ----------------------------------- - typ = 'I', - defaut = 20, - fr = """nombre maximal de points sources dans le maillage. -Sert au dimensionnement de la memoire, a augmenter si necessaire""", - ang = """maximal number of punctual sources in the mesh. -Used for dimensioning arrays. Can be increased if needed""", - ), -# ----------------------------------- - MAXIMUM_NUMBER_OF_TRACERS = SIMP(statut ='f', -# ----------------------------------- - typ = 'I', - defaut = 20, - fr = """nombre maximal de traceurs. -Sert au dimensionnement de la memoire, a augmenter si necessaire""", - ang = """maximal number of tracers. -Used for dimensioning arrays. Can be increased if needed""", - ), -# ----------------------------------- - VECTOR_LENGTH = SIMP(statut ='f', -# ----------------------------------- - typ = 'I', - defaut = 1, - fr = """LONGUEUR DU VECTEUR POUR LES MACHINES VECTORIELLES""", - ang = """VECTOR LENGTH ON VECTOR MACHINES""", - ), - ), - ), -# ----------------------------------- - RESTART = FACT(statut='o', -# ----------------------------------- -# ----------------------------------- - COMPUTATION_CONTINUED = SIMP(statut ='o', -# ----------------------------------- - typ = bool, - defaut = False, - fr = """Determine si le calcul en cours est independant de tout autre -resultat ou est une reprise effectuee a partir du resultat d''un calcul -precedent. -NON : Il s''agit du premier passage pour ce calcul et il est necessaire -de definir un jeu complet de conditions initiales -OUI : Il s''agit d''une reprise de calcul : -les conditions initiales sont constituees par le dernier pas de -temps du ''FICHIER DU CALCUL PRECEDENT'' du fichier des parametres -utilise pour soumettre le calcul. -Par contre, l''ensemble des donnees du fichier des parametres -peuvent etre redefinies ; ce qui offre la possibilite de changer -par exemple, le pas de temps, le modele de turbulence, le -frottement, d''ajouter ou retirer un traceur ... -De meme, il est necessaire de definir des conditions aux limites -(sous-programme BORD ou valeurs placees dans le fichier des -parametres), qui peuvent egalement etre modifiees.""", - ang = """Determines whether the computation under way is independent -result or is following an earlier result. -NO: It is the first run for this computation and a whole set of -initial conditions should be defined. -YES: It follows a former computation: -the initial conditions consist in the last time step of the -PREVIOUS COMPUTATION FILE in the steering file used for submitting -the computation. -All the data from the steering file may be defined once again, which -provides an opportunity to change, for example, the time step, -the turbulence model, the friction, to add or remove a tracer... -It is also possible to define new boundary conditions.""", - ), -# ----------------------------------- - b_COMPUTATION_CONTINUEDG = BLOC(condition="COMPUTATION_CONTINUED == True", -# ----------------------------------- -# ----------------------------------- - PREVIOUS_COMPUTATION_FILE_FORMAT = SIMP(statut ='o', -# ----------------------------------- - typ = 'TXM', - into = ['SERAFIN?','SERAFIND','MED'], - defaut = 'SERAFIN?', - fr = """Format du fichier de resultats du calcul precedent. -Les valeurs possibles sont : -- SERAFIN : format standard simple precision pour Telemac; -- SERAFIND: format standard double precision pour Telemac; -- MED : format MED base sur HDF5""", - ang = """Previous computation results file format. -Possible values are: -- SERAFIN : classical single precision format in Telemac; -- SERAFIND: classical double precision format in Telemac; -- MED : MED format based on HDF5""", - ), -# ----------------------------------- - PREVIOUS_COMPUTATION_FILE = SIMP(statut ='o', -# ----------------------------------- - typ = ('Fichier','All Files (*)'), - defaut = '', - fr = """Nom d''un fichier contenant les resultats d''un calcul -precedent realise sur le meme maillage et dont le dernier pas de temps -enregistre va fournir les conditions initiales pour une suite de de -calcul.""", - ang = """Name of a file containing the results of an earlier -computation which was made on the same mesh. The last recorded time -step will provid the initial conditions for the new computation.""", - ), -# ----------------------------------- - RECORD_NUMBER_FOR_RESTART = SIMP(statut ='o', -# ----------------------------------- - typ = 'I', - defaut = 0, - fr = """En cas de suite de calcul, numero de l''enregistrement -de depart dans le fichier du calcul precedent. 0 signifie -qu''on prend le dernier enregistrement""", - ang = """In case of COMPUTATION CONTINUED, record number to -start from in the PREVIOUS COMPUTATION FILE""", - ), - ), -# ----------------------------------- - INITIAL_TIME_SET_TO_ZERO = SIMP(statut ='o', -# ----------------------------------- - typ = bool, - defaut = False, - fr = """Remet le temps a zero en cas de suite de calcul""", - ang = """Initial time set to zero in case of restart""", - ), - ), -# ----------------------------------- - OUTPUT_FILES = FACT(statut='o', -# ----------------------------------- -# ----------------------------------- - RESULTS_FILES = FACT(statut='o', -# ----------------------------------- -# ----------------------------------- - NUMBER_OF_FIRST_TIME_STEP_FOR_GRAPHIC_PRINTOUTS = SIMP(statut ='o', -# ----------------------------------- - typ = 'I', - defaut = 0, - fr = """Determine le nombre de pas de temps a partir duquel debute -l''ecriture des resultats dans le FICHIER DES RESULTATS.""", - ang = """Determines the number of time steps after which the results -are first written into the RESULTS FILE.""", - ), -# ----------------------------------- - GRAPHIC_PRINTOUT_PERIOD = SIMP(statut ='o', -# ----------------------------------- - typ = 'I', - defaut = 1, - fr = """ Determine la periode en nombre de pas de temps d''impression des -VARIABLES POUR LES SORTIES GRAPHIQUES (voir ce mot-cle) dans le FICHIER -DES RESULTATS.""", - ang = """ Determines, in number of time steps, the printout period for the -VARIABLES FOR GRAPHIC PRINTOUTS in the RESULTS FILE.""", - ), -# ----------------------------------- - VARIABLES_FOR_GRAPHIC_PRINTOUTS = SIMP(statut ='o', -# ----------------------------------- - typ = 'TXM', min=0, max='**', - into = ["velocity along x axis (m/s)","velocity along y axis (m/s)","wave celerity (m/s)","water depth (m)","free surface elevation (m)","bottom elevation (m)","Froude number","scalar flowrate of fluid (m2/s)","tracer 1 etc.","All the tracers 1 to 9.","All the tracers 10 to 19.","turbulent kinetic energy in k-epsilon model (J/kg)","dissipation of turbulent energy (W/kg)","turbulent viscosity (m2/s)","flowrate along x axis (m2/s)","flowrate along y axis (m2/s)","scalar velocity (m/s)","wind along x axis (m/s)","wind along y axis (m/s)","air pressure (Pa)","friction coefficient","drift along x (m)","drift along y (m)","Courant number ","supplementary variable N","supplementary variable O","supplementary variable R","supplementary variable Z","maximum elevation","time of maximum elevation","maximum velocity","time of maximum velocity","friction velocity","gradient 1, etc. ","reference level for Nestor "], - defaut = ["velocity along x axis (m/s)","velocity along y axis (m/s)","water depth (m)","bottom elevation (m)"], - fr = """ Noms des variables que l''utilisateur veut ecrire dans le fichier des -resultats. Chaque variable est representee par une lettre. Le choix des -separateurs est libre. Les possibilites offertes sont les suivantes : - - U : vitesse suivant l''axe des x (m/s), - - V : vitesse suivant l''axe des y (m/s), - - C : celerite des ondes (m/s), - - H : hauteur d''eau (m), - - S : cote de surface libre (m), - - B : cote du fond (m), - - F : nombre de Froude, - - Q : debit scalaire du fluide (m2/s), - - Tn: traceur, avec n le numero du traceur, - - K : energie turbulente du modele k-epsilon (J/kg), - - E : dissipation de l''energie turbulente (W/kg), - - D : viscosite turbulente du modele k-epsilon (m2/s), - - I : debit suivant l''axe des x (m2/s), - - J : debit suivant l''axe des y (m2/s), - - M : vitesse scalaire (m/s), - - X : vent suivant l''axe des x (m/s), - - Y : vent suivant l''axe des y (m/s), - - P : pression atmospherique (Pa), - - W : coefficient de frottement sur le fond, - - A : derive en x (m), - - G : derive en y (m), - - L : coefficient de frottement sur le fond, - - Gn: gradient differencie, avec n le numero de reference du gradient. -L''utilisateur dispose egalement de 4 champs libres, qu''il peut -utiliser pour ecrire dans le fichier des resultats des variables qu''il -cree lui-meme. Ces variables propres a l''utlisateur doivent etre -calculees dans le sous-programme PRERES et le nom que l''on desire leur -donner doit etre ecrit dans le sous-programme NOMVAR. Ces 7 champs sont -: - - N, O, R, Z qui correspondent aux tableaux PRIVE(1,1), PRIVE(1,2), - PRIVE(1,3), PRIVE(1,4). -A la difference des variables precedentes, celles-ci sont conservees -dans tout le programme, et peuvent donc etre reutilisees. Dans ce -dernier cas ne pas oublier de donner une taille suffisante au tableau -PRIVE (dans le programme principal). Il est ainsi possible de limiter, -par exemple, la taille des fichiers de resultats pour de tres gros -calculs. Cependant, il faut etre conscient du fait que, dans -l''eventualite d''une reprise de calcul, le code doit disposer, dans le -fichier des resultats, des informations necessaires a sa poursuite, a -savoir : - - les vitesses U et V, - - les hauteurs d''eau H, - - les cotes du fond B. -Toutefois, TELEMAC peut recalculer certaines de ces variables a -partir d''autres qui lui seront fournies (par exemple, il recalculera H -a partir de S et B).""", - ang = """ Names of variables the user wants to write into the results file. Each -variable is represented by a letter. The separators can be freely -selected. The available capabilities are as follows: - - U : velocity along x axis (m/s), - - V : velocity along y axis (m/s), - - C : wave celerity (m/s), - - H : water depth (m), - - S : free surface elevation (m), - - B : bottom elevation (m), - - F : Froude number, - - Q : scalar flowrate of fluid (m2/s), - - Tn : tracer, with n the tracer number, - - K : turbulent kinetic energy in k-epsilon model (J/kg), - - E : dissipation of turbulent energy (W/kg), - - D : turbulent viscosity of k-epsilon model (m2/s), - - I : flowrate along x axis (m2/s), - - J : flowrate along y axis (m2/s), - - M : scalar velocity (m/s), - - X : wind along x axis (m/s) Y : wind along y axis (m/s), - - P : air pressure (Pa), - - W : friction coefficient , - - A : drift along x, - - G : drift along y, - - L : nombre de courant, - - Gn : differentiated gradient, with n the gradient reference number. -Four other variables are also made available to the -user who may use them for writing into the file the results of variables -he creates himself. These user-specific variables should be computed in -the subroutine PRERES and their desired name should be written into the -subroutine NOMVAR. These seven variables are as follows: -- N, O, R, Z -which correspond to arrays PRIVE(1,1) up to PRIVE(1, Unlike the -preceding variables, they are preserved throughout the program, so that -they can be used again. -In the latter case, do not forget to provide the -array PRIVE with sufficiently large dimensions (in FORTRAN file). With -this key-word, one can limit the size of the RESULTS FILE. It should be -kept in mind, however, that if a computation has to be continued, the -RESULTS FILE should contain the appropriate information for running the -code,i.e.: - - velocities U and V, - - water depths H, - - bottom elevations B. -TELEMAC, however, can compute some of these variables from others for -example, it will compute H from S and B.""", - ), -# ----------------------------------- - NUMBER_OF_PRIVATE_ARRAYS = SIMP(statut ='o', -# ----------------------------------- - typ = 'I', - defaut = 0, - fr = """Nombre de tableaux mis a disposition de l utilisateur""", - ang = """Number of arrays for own user programming""", - ), -# ----------------------------------- - NAMES_OF_PRIVATE_VARIABLES = SIMP(statut ='f', -# ----------------------------------- - typ = 'TXM', min=0, max='**', - fr = """Noms des variables privees en 32 caracteres, 16 pour le nom - 16 pour l''unite. Elles correspondent au bloc PRIVE - et peuvent etre lues dans le fichier de geometrie si elles - y sont presentes avec leur nom""", - ang = """Name of private variables in 32 characters, 16 for the name, - 16 for the unit. They are stored in the block PRIVE and - can be read in the geometry file if they are here with their - name""", - ), -# ----------------------------------- - RESULTS_FILE_FORMAT = SIMP(statut ='o', -# ----------------------------------- - typ = 'TXM', - into = ['SERAFIN?','SERAFIND','MED'], - defaut = 'SERAFIN?', - fr = """Format du fichier de resultats. -Les valeurs possibles sont : -- SERAFIN : format standard simple precision pour Telemac; -- SERAFIND: format standard double precision pour Telemac; -- MED : format MED base sur HDF5""", - ang = """Results file format. Possible values are: -- SERAFIN : classical single precision format in Telemac; -- SERAFIND: classical double precision format in Telemac; -- MED : MED format based on HDF5""", - ), -# ----------------------------------- - RESULTS_FILE = SIMP(statut ='o', -# ----------------------------------- - typ = ('Fichier','All Files (*)','Sauvegarde'), - defaut = '', - fr = """Nom du fichier dans lequel seront ecrits les resultats du -calcul avec la periodicite donnee par le mot cle ''PERIODE POUR LES -SORTIES GRAPHIQUES''.""", - ang = """Name of the file into which the computation results shall be -written, -the periodicity being given by the key-word: -GRAPHIC PRINTOUT PERIOD.""", - ), -# ----------------------------------- - RESULT_FILE_IN_LONGITUDE_LATITUDE = SIMP(statut ='f', -# ----------------------------------- - typ = bool, - defaut = True, - fr = """donne les coordonnees dans le fichier resultats en longitude-latitude -si le fichier geo est aussi donnee en long lat""", - ang = """gives result file in longitude latitude if geo file is -also given in long lat""", - ), -# ----------------------------------- - BINARY_RESULTS_FILE_FORMAT = SIMP(statut ='f', -# ----------------------------------- - typ = 'TXM', - into = ['BIN','SERAFIN','SERAFIND','MED'], - defaut = 'BIN', - fr = """Format du fichier de geometrie. -Les valeurs possibles sont : -- SERAFIN : format standard simple precision pour Telemac; -- SERAFIND: format standard double precision pour Telemac; -- MED : format MED base sur HDF5""", - ang = """Geometry file format. -Possible values are: -- SERAFIN : classical single precision format in Telemac; -- SERAFIND: classical double precision format in Telemac; -- MED : MED format based on HDF5""", - ), -# ----------------------------------- - BINARY_RESULTS_FILE = SIMP(statut ='f', -# ----------------------------------- - typ = ('Fichier','All Files (*)','Sauvegarde'), - defaut = '', - fr = """Fichier de resultats code en binaire mis a la disposition -de l''utilisateur. Les resultats a placer dans ce fichier seront a -ecrire sur le canal 28.""", - ang = """Additional binary-coded result file made available -to the user. The results to be entered into this file shall be written -on channel 28.""", - ), -# ----------------------------------- - FORMATTED_RESULTS_FILE = SIMP(statut ='f', -# ----------------------------------- - typ = ('Fichier','All Files (*)','Sauvegarde'), - defaut = '', - fr = """Fichier de resultats formate mis a la disposition de -l''utilisateur. -Les resultats a placer dans ce fichier seront a ecrire sur -le canal 29.""", - ang = """Formatted file of results made available to the user. -The results to be entered into this file shall be written -on channel 29.""", - ), - ), -# ----------------------------------- - CONTROL_SECTION = FACT(statut='f', -# ----------------------------------- -# ----------------------------------- - CONTROL_SECTIONS = SIMP(statut ='f', -# ----------------------------------- - typ = 'I', min=0, max='**', - fr = """Couples de points (numeros globaux dans le maillage) entre -lesquels les debits instantanes et cumules seront donnes.""", - ang = """Couples of points (global numbers -in the mesh) defining sections - where the instantaneous and cumulated discharges will be given""", - ), -# ----------------------------------- - PRINTING_CUMULATED_FLOWRATES = SIMP(statut ='o', -# ----------------------------------- - typ = bool, - defaut = False, - fr = """IMPRESSION DU FLUX CUMULE A TRAVERS LES SECTIONS DE CONTROLE""", - ang = """PRINTING THE CUMULATED FLOWRATES THROUGH CONTROL SECTIONS""", - ), -# ----------------------------------- - COMPATIBLE_COMPUTATION_OF_FLUXES = SIMP(statut ='o', -# ----------------------------------- - typ = bool, - defaut = False, - fr = """FLUX A TRAVERS LES SECTIONS DE CONTROLE, CALCUL COMPATIBLE -AVEC L''IMPERMEABILITE SOUS FORME FAIBLE""", - ang = """FLOWRATES THROUGH CONTROL SECTIONS, COMPUTATION COMPATIBLE -WITH THE WEAK FORMULATION OF NO-FLUX BOUNDARY CONDITION""", - ), -# ----------------------------------- - SECTIONS_INPUT_FILE = SIMP(statut ='f', -# ----------------------------------- - typ = ('Fichier','All Files (*)'), - defaut = '', - fr = """sections input file, partitioned""", - ang = """sections input file, partitioned""", - ), -# ----------------------------------- - SECTIONS_OUTPUT_FILE = SIMP(statut ='f', -# ----------------------------------- - typ = ('Fichier','All Files (*)','Sauvegarde'), - defaut = '', - fr = """sections output file, written by the master""", - ang = """sections output file, written by the master""", - ), -# ----------------------------------- - FLUXLINE = SIMP(statut ='f', -# ----------------------------------- - typ = bool, - defaut = False, - fr = """FLUXLINE""", - ang = """Use Fluxline to compute flux over lines""", - ), -# ----------------------------------- - FLUXLINE_INPUT_FILE = SIMP(statut ='f', -# ----------------------------------- - typ = ('Fichier','All Files (*)'), - defaut = '', - fr = """Nom du fichier de fluxline, avec des donnees sur les sections""", - ang = """Name of the Fluxline file, with data on cross-sections""", - ), - ), -# ----------------------------------- - LISTING = FACT(statut='o', -# ----------------------------------- -# ----------------------------------- - NUMBER_OF_FIRST_TIME_STEP_FOR_LISTING_PRINTOUTS = SIMP(statut ='f', -# ----------------------------------- - typ = 'I', - defaut = 0, - fr = """Determine le nombre de pas de temps a partir duquel debute -l''ecriture des resultats dans le listing.""", - ang = """Determines the number of time steps after which the results -are first written into the listing.""", - ), -# ----------------------------------- - LISTING_PRINTOUT_PERIOD = SIMP(statut ='o', -# ----------------------------------- - typ = 'I', - defaut = 1, - fr = """ Determine la periode en nombre de pas de temps d''impression des -VARIABLES A IMPRIMER (voir ce mot-cle) Pour la mise au point, il faut -savoir que la sortie des resultats est effectuee systematiquement sur le -fichier de retour d''execution du code (actuellement accessible par le -menu 3.f de SPF sur IBM, et dans le fichier !CAS.SORTIE sur station de -travail)""", - ang = """ Determines, in number of time steps, the printout period of the -VARIABLES TO BE PRINTED The results are systematically printed out on -the listing file (file CAS.SORTIE at the workstation).""", - ), -# ----------------------------------- - LISTING_FOR_PRINTOUT_PERIOD = SIMP(statut ='f', -# ----------------------------------- - typ = 'I', - defaut = 1, - fr = """Determine la periode en nombre de pas de temps d''impression -des VARIABLES A IMPRIMER (voir ce mot-cle) Pour la mise au point, -il faut savoir que la sortie des resultats est effectuee -systematiquement sur le fichier de retour d''execution du code -(actuellement accessible par le menu 3.f de SPF sur IBM, et dans -le fichier !CAS.SORTIE sur station de travail)""", - ang = """Determines, in number of time steps, the printout period of -the VARIABLES TO BE PRINTED -The results are systematically printed out on the listing file -(file CAS.SORTIE at the workstation).""", - ), -# ----------------------------------- - LISTING_PRINTOUT = SIMP(statut ='o', -# ----------------------------------- - typ = bool, - defaut = True, - fr = """Sortie des resultats sur support papier. -Si l''on met NON le listing ne contient que l''entete et la mention -FIN NORMALE DU PROGRAMME -Commande a eviter""", - ang = """Result printout on hard copy. -When NO is selected, the listing only includes the heading and the -phrase "NORMAL END OF PROGRAM" -In addition, the options MASS BALANCE and VALIDATION are inhibited. -Not recommended for use.""", - ), -# ----------------------------------- - VARIABLES_TO_BE_PRINTED = SIMP(statut ='f', -# ----------------------------------- - typ = 'TXM', min=0, max='**', - intoSug = ["velocity along x axis (m/s)","velocity along y axis (m/s)","wave celerity (m/s)","water depth (m)","free surface elevation (m)","bottom elevation (m)","Froude number","scalar flowrate of fluid (m2/s)","tracer 1, etc.","turbulent kinetic energy in k-epsilon model (J/kg)","dissipation of turbulent energy (W/kg)","turbulent viscosity of k-epsilon model (m2/s)","flowrate along x axis (m2/s)","flowrate along y axis (m2/s)","scalar velocity (m/s)","wind along x axis (m/s)","wind along y axis (m/s)","air pressure (Pa)","friction coefficient","drift along x (m)","drift along y (m)","nombre de courants ","supplementary variable N","supplementary variable O","supplementary variable R","supplementary variable Z","gradient 1, etc."], - defaut = '', - fr = """Nom des variables que l''utilisateur desire ecrire a l''ecran. Meme -possibilites que pour les sorties graphiques.""", - ang = """Name of the variables that the user wants printed on screen. -Same values available as graphical outputs""", - ), -# ----------------------------------- - MASS_BALANCE = SIMP(statut ='o', -# ----------------------------------- - typ = bool, - defaut = False, - fr = """Determine si l''on effectue ou non le bilan de masse -sur le domaine. -Cette procedure calcule a chaque pas de temps : - - les flux aux entrees et sorties du domaine; - - le flux global a travers l''ensemble des parois du domaine (liquides -ou solides) -- l''erreur relative sur la masse pour ce pas de temps. -En fin de listing, on trouve l''erreur relative sur la masse pour -l''ensemble du calcul. -Il ne s''agit que d''un calcul indicatif car il n''existe pas -d''expression compatible du debit en formulation c,u,v.""", - ang = """Determines whether a check of the mass-balance over -the domain is mader or not. -This procedures computes the following at each time step: -the domain inflows and outflows, -the overall flow across all the boundaries, -the relative error in the mass for that time step. -The relative error in the mass over the whole computation can be found -at the end of the listing.""", - ), -# ----------------------------------- - INFORMATION_ABOUT_SOLVER = SIMP(statut ='f', -# ----------------------------------- - typ = bool, - defaut = True, - fr = """Donne a chaque pas de temps le nombre d''iterations necessaires -a la convergence du solveur de l''etape de propagation.""", - ang = """if YES, prints the number of iterations -that have been necessar -to get the solution of the linear system.""", - ), -# ----------------------------------- - LIST_OF_POINTS = SIMP(statut ='f', -# ----------------------------------- - typ = 'I', min=0, max='**', - fr = """Liste de points remarquables pour les impressions""", - ang = """List of remarkable points for printouts""", - ), -# ----------------------------------- - NAMES_OF_POINTS = SIMP(statut ='f', -# ----------------------------------- - typ = 'TXM', min=0, max='**', - fr = """Noms des points remarquables pour les impressions""", - ang = """Names of remarkable points for printouts""", - ), - ), -# ----------------------------------- - FOURIER = FACT(statut='f', -# ----------------------------------- -# ----------------------------------- - FOURIER_ANALYSIS_PERIODS = SIMP(statut ='o', -# ----------------------------------- - typ = 'R', min=0, max='**', - fr = """Liste des periodes que l''on veut analyser""", - ang = """List of periods to be analysed""", - ), -# ----------------------------------- - TIME_RANGE_FOR_FOURIER_ANALYSIS = SIMP(statut ='o', -# ----------------------------------- - typ = 'R', min= 2, max= 2, - defaut = [0.,0.], - fr = """Pour le calcul du marnage et de la phase de la maree""", - ang = """For computing tidal range and phase of tide""", - ), - ), - ), -) -# ----------------------------------------------------------------------- -HYDRO = PROC(nom= "HYDRO",op = None, -# ----------------------------------------------------------------------- - UIinfo = {"groupes": ("CACHE")}, -# ----------------------------------- - BOUNDARY_CONDITIONS = FACT(statut='o', -# ----------------------------------- -# ----------------------------------- - PRESCRIBED_ELEVATIONS = SIMP(statut ='f', -# ----------------------------------- - typ = 'R', max='**', - fr = """Valeurs des cotes imposees aux frontieres liquides entrantes. -Lire la partie du mode d''emploi consacree aux conditions aux limites""", - ang = """Values of prescribed elevations at the inflow boundaries. -The section about boundary conditions is to be read in the manual""", - ), -# ----------------------------------- - PRESCRIBED_FLOWRATES = SIMP(statut ='f', -# ----------------------------------- - typ = 'R', max='**', - fr = """Valeurs des debits imposes aux frontieres liquides entrantes. -Lire la partie du mode d''emploi consacree aux conditions aux limites""", - ang = """Values of prescribed flowrates at the inflow boundaries. -The section about boundary conditions is to be read in the manual""", - ), -# ----------------------------------- - PRESCRIBED_VELOCITIES = SIMP(statut ='f', -# ----------------------------------- - typ = 'R', max='**', - fr = """Valeurs des vitesses imposees aux frontieres liquides entrantes. - Lire la partie du mode d''emploi consacree aux conditions aux limites""", - ang = """Values of prescribed velocities at the liquid inflow boundaries. - Refer to the section dealing with the boundary conditions""", - ), - ), -# ----------------------------------- - BOUNDARY_CONDITIONS_OTHERS = FACT(statut='o', -# ----------------------------------- -# ----------------------------------- - STAGE_DISCHARGE_CURVES = SIMP(statut ='f', -# ----------------------------------- - typ = 'TXM', max='**', - into = ["no","Z(Q)","Q(Z)"], - fr = """Indique si une courbe de tarage doit etre utilisee pour une frontiere -0:non 1:Z(Q) 2: Q(Z)""", - ang = """Says if a discharge-elevation curve must be used for a given boundary -0:NO 1:Z(Q) 2: Q(Z)""", - ), -# ----------------------------------- - b_STAGE_DISCHARGE_CURVESG = BLOC(condition="STAGE_DISCHARGE_CURVES != 'no'", -# ----------------------------------- -# ----------------------------------- - STAGE_DISCHARGE_CURVES_FILE = SIMP(statut ='f', -# ----------------------------------- - typ = ('Fichier','All Files (*)'), - defaut = '', - fr = """Nom du fichier contenant les courbes de tarage""", - ang = """Name of the file containing stage-discharge curves""", - ), - ), -# ----------------------------------- - VELOCITY_PROFILES = SIMP(statut ='f', -# ----------------------------------- - typ = 'TXM', min=0, max='**', - into = ["constant normal profile","u and v given in the conlim file","normal velocity given in ubor in the conlim file","velocity proportional to square root of depth","velocity proportional to square root of depth, variant"], - fr = """1:profil normal constant 2:u et v -donnes dans le fichier conlim - 3:vitesse normale donnee dans ubor dans le fichier conlim - 4:profil en racine de la profondeur - 5:profil en racine de la profondeur, variante""", - ang = """1:constant normal profile 2:u and v given in the conlim file - 3:normal velocity given in ubor in the conlim file - 4:sqrt(depth) profile - 5:sqrt(depth) profile, variant""", - ), -# ----------------------------------- - OPTION_FOR_LIQUID_BOUNDARIES = SIMP(statut ='f', -# ----------------------------------- - typ = 'TXM', max='**', - into = ["classical","Thompson method based on characteristics"], - fr = """On donne 1 entier par frontiere liquide - 1 : conditions aux limites classiques - 2 : methode de Thompson avec calcul de caracteristiques""", - ang = """One integer per liquid boundary is given - 1 : classical boundary conditions - 2 : Thompson method based on characteristics""", - ), -# ----------------------------------- - LIQUID_BOUNDARIES_FILE = SIMP(statut ='f', -# ----------------------------------- - typ = ('Fichier','All Files (*)'), - defaut = '', - fr = """Fichier de variations en temps des conditions aux limites. -Les donnees de ce fichier seront a lire sur le canal 12.""", - ang = """Variations in time of boundary conditions. -Data of this file are read -on channel 12.""", - ), -# ----------------------------------- - ELEMENTS_MASKED_BY_USER = SIMP(statut ='o', -# ----------------------------------- - typ = bool, - defaut = False, - fr = """SI OUI REMPLIR LE SOUS-PROGRAMME MASKOB""", - ang = """IF YES REWRITE SUBROUTINE MASKOB""", - ), -# ----------------------------------- - b_ELEMENTS_MASKED_BY_USERG = BLOC(condition="ELEMENTS_MASKED_BY_USER == True", -# ----------------------------------- -# ----------------------------------- - Consigne = SIMP(statut ="o", homo="information", typ="TXM", -# ----------------------------------- - defaut = "Rewrite subroutine maskob"), - ), - ), -# ----------------------------------- - PHYSICAL_PARAMETERS_HYDRO = FACT(statut='o', -# ----------------------------------- -# ----------------------------------- - FRICTION = FACT(statut='o', -# ----------------------------------- -# ----------------------------------- - MAXIMUM_NUMBER_OF_FRICTION_DOMAINS = SIMP(statut ='o', -# ----------------------------------- - typ = 'I', - defaut = 10, - fr = """nombre maximal de zones pouvant etre definies pour le -frottement. Peut etre augmente si necessaire""", - ang = """maximal number of zones defined for the friction. -Could be increased if needed""", - ), -# ----------------------------------- - FRICTION_DATA = SIMP(statut ='f', -# ----------------------------------- - typ = bool, - defaut = False, - fr = """Lois de frottements definies par zone""", - ang = """Friction law defined by area""", - ), -# ----------------------------------- - FRICTION_DATA_FILE = SIMP(statut ='f', -# ----------------------------------- - typ = ('Fichier','All Files (*)'), - defaut = '', - fr = """fichier de donnees pour le frottement""", - ang = """friction data file""", - ), -# ----------------------------------- - LAW_OF_BOTTOM_FRICTION = SIMP(statut ='o', -# ----------------------------------- - typ = 'TXM', - into = ["NO FRICTION","HAALAND","CHEZY","STRICKLER","MANNING","NIKURADSE"], - fr = """ selectionne le type de formulation utilisee pour le calcul du -frottement sur le fond. Les lois possibles sont les suivantes (cf. Note -de principe) : - 0 : pas de frottement sur le fond; 1 : formule de -Haaland 2 : formule de Chezy 3 : formule de STRICKLER 4 : formule de -MANNING 5 : formule de NIKURADSE""", - ang = """ Selects the type of formulation used for the bottom friction. The -possible laws are as follows (refer to the Principle note): 0: no -friction against bottom, 1: Haaland''s formula 2: CHEZY''s formula 3: -STRICKLER''s formula 4: MANNING''s formula 5: NIKURADSE''s formula""", - ), -# ----------------------------------- - b_LAW_OF_BOTTOM_FRICTIONG = BLOC(condition="LAW_OF_BOTTOM_FRICTION != 'NO FRICTION'", -# ----------------------------------- -# ----------------------------------- - FRICTION_COEFFICIENT = SIMP(statut ='o', -# ----------------------------------- - typ = 'R', - defaut = 50., - fr = """Fixe la valeur du coefficient de frottement pour la -formulation choisie. -Attention; la signification de ce chiffre varie suivant la formule -choisie : - 1 : coefficient lineaire - 2 : coefficient de Chezy - 3 : coefficient de Strickler - 4 : coefficient de Manning - 5 : hauteur de rugosite de Nikuradse""", - ang = """Sets the value of the friction coefficient for the selected -formulation. It is noteworthy that the meaning of this figure changes -according to the selected formula (Chezy, Strickler, etc.) : - 1 : linear coefficient - 2 : Chezy coefficient - 3 : Strickler coefficient - 4 : Manning coefficient - 5 : Nikuradse grain size""", - ), - ), -# ----------------------------------- - MANNING_DEFAULT_VALUE_FOR_COLEBROOK_WHITE_LAW = SIMP(statut ='o', -# ----------------------------------- - typ = 'R', - defaut = 0.02, - fr = """valeur par defaut du manning pour la loi de frottement de -Colebrook-White (loi numero 7)""", - ang = """Manning default value for the friction law of Colebrook-White -(law number 7)""", - ), -# ----------------------------------- - DEPTH_IN_FRICTION_TERMS = SIMP(statut ='o', -# ----------------------------------- - typ = 'TXM', - into = ["nodal","average"], - defaut = "nodal", - fr = """1 : nodale 2 : moyenne""", - ang = """1: nodal 2: average""", - ), -# ----------------------------------- - NON_SUBMERGED_VEGETATION_FRICTION = SIMP(statut ='o', -# ----------------------------------- - typ = bool, - defaut = False, - fr = """calcul du frottement du a la vegetation non submergee""", - ang = """friction calculation of the non-submerged vegetation""", - ), -# ----------------------------------- - b_NON_SUBMERGED_VEGETATION_FRICTIONG = BLOC(condition="NON_SUBMERGED_VEGETATION_FRICTION == True", -# ----------------------------------- -# ----------------------------------- - DIAMETER_OF_ROUGHNESS_ELEMENTS = SIMP(statut ='o', -# ----------------------------------- - typ = 'R', - defaut = 0.006, - fr = """diametre des elements de frottements""", - ang = """diameter of roughness element""", - ), -# ----------------------------------- - SPACING_OF_ROUGHNESS_ELEMENTS = SIMP(statut ='o', -# ----------------------------------- - typ = 'R', - defaut = 0.14, - fr = """espacement des elements de frottement""", - ang = """spacing of rouhness element""", - ), - ), -# ----------------------------------- - LAW_OF_FRICTION_ON_LATERAL_BOUNDARIES = SIMP(statut ='o', -# ----------------------------------- - typ = 'TXM', - into = ["NO FRICTION","HAALAND","CHEZY","STRICKLER","MANNING","NIKURADSE","LOG LAW","COLEBROOK-WHITE"], - defaut = "NO FRICTION", - fr = """selectionne le type de formulation utilisee pour le calcul -du frottement sur les parois laterales. -Les lois possibles sont les suivantes (cf. Note de principe) : -0 : pas de frottement -1 : lineaire -2 : Chezy -3 : Strickler -4 : Manning -5 : formule de NIKURADSE -6 : loi en log -7 : Colebrook-White""", - ang = """Selects the type of formulation used -for the friction on lateral boundaries. -The possible laws are as follows (refer to the Principle note): -0: no friction -1: linear -2: Chezy -3: Strickler -4: Manning -5: NIKURADSE''s formula -6 : law log -7 : Colebrook-White""", - ), -# ----------------------------------- - b_LAW_OF_FRICTION_ON_LATERAL_BOUNDARIESG = BLOC(condition="LAW_OF_FRICTION_ON_LATERAL_BOUNDARIES != 'NO FRICTION'", -# ----------------------------------- -# ----------------------------------- - ROUGHNESS_COEFFICIENT_OF_BOUNDARIES = SIMP(statut ='o', -# ----------------------------------- - typ = 'R', - defaut = 100., - fr = """Fixe la valeur du coefficient de frottement sur les frontieres -solides avec un regime turbulent rugueux sur les bords du domaine. -meme convention que pour le coefficient de frottement: - 1 : non programme - 2 : coefficient de Chezy - 3 : coefficient de Strickler - 4 : coefficient de Manning - 5 : hauteur de rugosite de Nikuradse""", - ang = """Sets the value of the friction coefficient of the solid -boundary with the bed roughness option. Same meaning than friction -coefficient""", - ), - ), -# ----------------------------------- - DEFINITION_OF_ZONES = SIMP(statut ='o', -# ----------------------------------- - typ = bool, - defaut = False, - fr = """Declenche l''appel a def\_zones, pour donner - un numero de zone a chaque point""", - ang = """Triggers the call to def\_zones to give a zone number to every point""", - ), -# ----------------------------------- - b_DEFINITION_OF_ZONESG = BLOC(condition="DEFINITION_OF_ZONES == True", -# ----------------------------------- -# ----------------------------------- - Consigne = SIMP(statut ="o", homo="information", typ="TXM", -# ----------------------------------- - defaut = "Rewrite subroutine def_zones"), - ), -# ----------------------------------- - ZONES_FILE = SIMP(statut ='f', -# ----------------------------------- - typ = ('Fichier','All Files (*)'), - defaut = '', - fr = """Fichier des zones avec sur chaque ligne -numero de point numero de zone""", - ang = """Zones file, with on every line: -point number zone number""", - ), - ), -# ----------------------------------- - ICE_PROCESSES = FACT(statut='o', -# ----------------------------------- -# ----------------------------------- - ICE_PROCESSES = SIMP(statut ='f', -# ----------------------------------- - typ = 'I', - defaut = 1, - fr = """Donne le numero du processus des glaces, avec le numero defini -sur la base multiplicative de nombres premiers (2, 3, 5, 7, 11, 13, -...). Par example, 14 (2x7) rend actif les processus 2 et 7. -Exception a la regle: -si l''entier est 1, il n''y a pas de couplage; -si l''entier est 0, tous les effets suivant sont inclus: - 2- BUDGET THERMIQUE, - 3-..""", - ang = """provides the ice process number with the number being defined -on the basis of a multiplication of primary numbers (2, 3, 5, -7, 11, 13, ...). For instance, 14 (2x7) activate processes 2 -and 7. Exception is made for: -if the number is 1, there will be no ice processes included; -if the number is 0, all processes are included, as follows: - 2- THERMIMAL BUDGET, - 3-..""", - ), - ), -# ----------------------------------- - METEOROLOGY = FACT(statut='f', -# ----------------------------------- -# ----------------------------------- - WIND = SIMP(statut ='o', -# ----------------------------------- - typ = bool, - defaut = False, - fr = """Prise en compte ou non des effets du vent.""", - ang = """Determines whether the wind effects are to be taken into -account or not.""", - ), -# ----------------------------------- - b_WINDG = BLOC(condition="WIND == True", -# ----------------------------------- -# ----------------------------------- - WIND_VELOCITY_ALONG_X = SIMP(statut ='o', -# ----------------------------------- - typ = 'R', - defaut = 0., - fr = """Composante de la vitesse du vent suivant l''axe des x (m/s).""", - ang = """Wind velocity, component along x axis (m/s).""", - ), -# ----------------------------------- - WIND_VELOCITY_ALONG_Y = SIMP(statut ='o', -# ----------------------------------- - typ = 'R', - defaut = 0., - fr = """Composante de la vitesse du vent suivant l''axe des y (m/s).""", - ang = """Wind velocity, component along y axis (m/s).""", - ), -# ----------------------------------- - THRESHOLD_DEPTH_FOR_WIND = SIMP(statut ='o', -# ----------------------------------- - typ = 'R', - defaut = 1., - fr = """Retire la force due au vent dans les petites profondeurs""", - ang = """Wind is not taken into account for small depths""", - ), -# ----------------------------------- - COEFFICIENT_OF_WIND_INFLUENCE = SIMP(statut ='o', -# ----------------------------------- - typ = 'R', - defaut = 0., - fr = """Fixe la valeur du coefficient d''entrainement du vent (cf. -Note de principe).""", - ang = """Sets the value of the wind driving coefficient. -Refer to principle note.""", - ), -# ----------------------------------- - OPTION_FOR_WIND = SIMP(statut ='o', -# ----------------------------------- - typ = 'TXM', - into = ["constant in time and space","variable in time given by formated file","variable in time and space given by formated file"], - defaut = "constant in time and space", - fr = """donne les options pour introduire le vent: - 1: constant en temps et en espace (donne par le mot cle - VITESSE ET DIRECTION DU VENT) - 2: variable en temps donne par fichier formate - 3: variable en temps et en espace donne par fichier formate - ou un fichier binaire serafin""", - ang = """gives option for managing the wind: - 1: constant in time and space, given by keyword SPEED AND - DIRECTION OF WIND - 2: variable in time and (constant in space), given by formated file - 3: variable in time and space , given by formated file or by - a binary serafin file""", - ), -# ----------------------------------- - b_OPTION_FOR_WINDG = BLOC(condition="OPTION_FOR_WIND == 'constant in time and space'", -# ----------------------------------- -# ----------------------------------- - SPEED_AND_DIRECTION_OF_WIND = SIMP(statut ='o', -# ----------------------------------- - typ = 'R', min= 2, max= 2, - defaut = [0.,0.], - fr = """Donne la vitesse et la direction (en degres de 0 a 360, -0 etant y=0 et x=+inf) du vent lorsqu ils sont consant en temps et -en espace (mot cle OPTION DU VENT = 1)""", - ang = """gives the speed and direction (degre (from 0 to 360), -0 given y=0 anx x=+infinity) when they are constant in time and space -(keyword OPTION FOR WIND = 1)""", - ), - ), -# ----------------------------------- - b_OPTION_FOR_WINDH = BLOC(condition="OPTION_FOR_WIND == 'variable in time given by formated file' or OPTION_FOR_WIND == 'variable in time and space given by formated file'", -# ----------------------------------- -# ----------------------------------- - Consigne = SIMP(statut ="o", homo="information", typ="TXM", -# ----------------------------------- - defaut = "Give the formatted file 3"), - ), - ), -# ----------------------------------- - AIR_PRESSURE = SIMP(statut ='o', -# ----------------------------------- - typ = bool, - defaut = False, - fr = """Permet de decider si l''on prend ou non en compte l''influence -d''un champ de pression.""", - ang = """Provided to decide whether the influence of -an atmosphere field -is taken into account or not.""", - ), -# ----------------------------------- - b_AIR_PRESSUREG = BLOC(condition="AIR_PRESSURE == True", -# ----------------------------------- -# ----------------------------------- - VALUE_OF_ATMOSPHERIC_PRESSURE = SIMP(statut ='o', -# ----------------------------------- - typ = 'R', - defaut = 100000., - fr = """donne la valeur de la pression atmospherique lorsquelle est -constante en temps et en espace""", - ang = """gives the value of atmospheric pressure when it is contant -in time and space""", - ), - ), -# ----------------------------------- - RAIN_OR_EVAPORATION = SIMP(statut ='o', -# ----------------------------------- - typ = bool, - defaut = False, - fr = """Pour ajouter un apport ou une perte d''eau en surface. -Voir le mot-cle PLUIE OU EVAPORATION EN MM PAR JOUR""", - ang = """to add or remove water at the free surface. See the key-word -RAIN OR EVAPORATION IN MM PER DAY""", - ), -# ----------------------------------- - b_RAIN_OR_EVAPORATIONG = BLOC(condition="RAIN_OR_EVAPORATION == True", -# ----------------------------------- -# ----------------------------------- - RAIN_OR_EVAPORATION_IN_MM_PER_DAY = SIMP(statut ='o', -# ----------------------------------- - typ = 'R', - defaut = 0.0, - fr = """Pour ajouter un apport ou une perte d''eau en surface""", - ang = """to add or remove water at the free surface""", - ), - ), -# ----------------------------------- - RAINFALL_RUNOFF_MODEL = SIMP(statut ='f', -# ----------------------------------- - typ = 'TXM', - into = ["No infiltration","CN runoff model"], - defaut = "No infiltration", - fr = """Option pour modele pluie-debit. Les options disponibles sont: - 0 : Pas d infiltration (fonction de base) - 1 : Modele CN (Curve Number du SCS)""", - ang = """Option for the rainfall-runoff model. Available options are: - 0 : No infiltration - 1 : CN runoff model (Curve Number method of the SCS)""", - ), -# ----------------------------------- - ANTECEDENT_MOISTURE_CONDITIONS = SIMP(statut ='f', -# ----------------------------------- - typ = 'I', - defaut = 2, - fr = """Donne les conditions d humidite precedant un episode de pluie pour -le modele CN du SCS. Les options disponibles sont: - 1 : conditions precedentes seches - 2 : conditions precedentes normales - 3 : conditions prcedentes mouillees -ce mot cle est uniquement utile pour le modele pluie-debit 1 (CN)""", - ang = """Gives the antecedent moisture conditions before a rainfall - event for the SCS CN runoff model. Available options are: - 1 : dry antecedent conditions - 2 : normal antecedent conditions - 3 : wet antecedent conditions -This keyword is only usefull for runoff model 1 (SCS CN model)""", - ), -# ----------------------------------- - DURATION_OF_RAIN_OR_EVAPORATION_IN_HOURS = SIMP(statut ='f', -# ----------------------------------- - typ = 'R', - defaut = 1.E6, - fr = """Donne la duree de la pluie en heure, par defaut pluie infinie""", - ang = """Gives the duration of the rain in hour, -default value is infinite""", - ), -# ----------------------------------- - ASCII_ATMOSPHERIC_DATA_FILE = SIMP(statut ='f', -# ----------------------------------- - typ = ('Fichier','All Files (*)'), - defaut = '', - fr = """Fichier de donnees en ascii contenant les informations -atmospheriques variables en temps""", - ang = """Ascii data file containing the atmospheric data varying in -time""", - ), -# ----------------------------------- - BINARY_ATMOSPHERIC_DATA_FILE = SIMP(statut ='f', -# ----------------------------------- - typ = ('Fichier','All Files (*)'), - defaut = '', - fr = """Fichier de donnees code en binaire contenant les informations -atmospheriques variables en temps et en espace sur le maillage""", - ang = """Binary-coded data file containing the atmospheric data varying in -time and space on the mesh""", - ), -# ----------------------------------- - BINARY_ATMOSPHERIC_DATA_FILE_FORMAT = SIMP(statut ='f', -# ----------------------------------- - typ = 'TXM', - into = ['SERAFIN?','SERAFIND','MED'], - defaut = 'SERAFIN?', - fr = """Format du fichier binaire de donn\E9es atmospheriques. -Les valeurs possibles sont : -- SERAFIN : format standard simple precision pour Telemac; -- SERAFIND: format standard double precision pour Telemac; -- MED : format MED base sur HDF5""", - ang = """Binary atmospheric file format. -Possible values are: -- SERAFIN : classical single precision format in Telemac; -- SERAFIND: classical double precision format in Telemac; -- MED : MED format based on HDF5""", - ), -# ----------------------------------- - OPTION_FOR_INITIAL_ABSTRACTION_RATIO = SIMP(statut ='f', -# ----------------------------------- - typ = 'I', - defaut = 1, - fr = """Donne le ratio entre pertes initiales IA et la retention potenti -maximale S pour le modele pluie-debit SCS CN. Les options disponibles so - 1 : IA/S = 0.2 (methode standard) - 2 : IA/S = 0.05 (methode revisee, cf. Woodward, Hawkins et al. 2003. A - cette option les coefficients CN fournis en entree sont alors - automatiquement corriges, cf. manuel utilisateur). -Ce mot cle est uniquement utile pour le modele pluie-d�bit 1 (CN)""", - ang = """Gives the ratio for Initial Abstraction to Maximal Potential -Retention S for the SCS CN runoff model. Available options are: - 1 : IA/S = 0.2 (standard method) - 2 : IA/S = 0.05 (revised method, see Woodward, Hawkins et al. 2003. Wi - this option the CN values given in input are automatically convers - see user manual). -This keyword is only useful for runoff model 1 (SCS CN model)""", - ), - ), -# ----------------------------------- - WAVE = FACT(statut='f', -# ----------------------------------- -# ----------------------------------- - WAVE_DRIVEN_CURRENTS = SIMP(statut ='o', -# ----------------------------------- - typ = bool, - defaut = False, - fr = """Active la prise en compte des courants de houle""", - ang = """Wave driven currents are taken into account.""", - ), -# ----------------------------------- - b_WAVE_DRIVEN_CURRENTSG = BLOC(condition="WAVE_DRIVEN_CURRENTS == True", -# ----------------------------------- -# ----------------------------------- - RECORD_NUMBER_IN_WAVE_FILE = SIMP(statut ='o', -# ----------------------------------- - typ = 'I', - defaut = 1, - fr = """Numero d enregistrement dans le fichier des courants de houle""", - ang = """Record number to read in the wave driven currents file""", - ), - ), -# ----------------------------------- - WAVE_ENHANCED_FRICTION_FACTOR = SIMP(statut ='f', -# ----------------------------------- - typ = bool, - defaut = False, - fr = """Active la prise en compte des interactions non-lineaires entre la -houle et les courant pour le calcul du courant de houle (cf OConnor and -Yoo, 1988, Coast Eng.12.)""", - ang = """Wave friction enhancement for the calculation of the wave generated -longshore current (cf OConnor and Yoo, 1988, Coast Eng.12.)""", - ), - ), -# ----------------------------------- - ESTIMATION = FACT(statut='f', -# ----------------------------------- -# ----------------------------------- - PARAMETER_ESTIMATION = SIMP(statut ='o', -# ----------------------------------- - typ = 'TXM', - into = ['','FRICTION','FRICTION, STEADY'], - defaut = '', - fr = """Liste des parametres a estimer, choix : FROTTEMENT - ou FROTTEMENT, PERMANENT""", - ang = """List of parameter to be estimated, choice : FRICTION - or FRICTION, STEADY""", - ), -# ----------------------------------- - COST_FUNCTION = SIMP(statut ='f', -# ----------------------------------- - typ = 'TXM', - into = ["Computed with h,u,v","Computed with c,u,v"], - defaut = "Computed with h,u,v", - fr = """1 : calculee sur h, u , v 2 : calculee avec c, u , v""", - ang = """1: computed with h, u , v 2: computed with c, u , v""", - ), -# ----------------------------------- - IDENTIFICATION_METHOD = SIMP(statut ='o', -# ----------------------------------- - typ = 'TXM', - into = ["list of tests","gradient simple","conj gradient","Lagrange interp."], - defaut = "gradient simple", - fr = """0 : plan d''experience -1 : gradient simple -2 : gradient conj. -3 : interp. de Lagrange""", - ang = """0 : list of tests -1: gradient -2 : conj. gradient -3 : lagrange interp.""", - ), -# ----------------------------------- - TOLERANCES_FOR_IDENTIFICATION = SIMP(statut ='o', -# ----------------------------------- - typ = 'R', min= 4, max= 4, - defaut = [1.E-3,1.E-3,1.E-3,1.E-4], - fr = """4 nombres : precision absolue sur H, U, V, - et precision relative sur la fonction cout""", - ang = """4 numbers: absolute precision on H, U V, - and relative precision on the cost function""", - ), -# ----------------------------------- - MAXIMUM_NUMBER_OF_ITERATIONS_FOR_IDENTIFICATION = SIMP(statut ='o', -# ----------------------------------- - typ = 'I', - defaut = 20, - fr = """chaque iteration comprend au moins un - calcul direct et un calcul adjoint""", - ang = """every iteration implies at least a direct and - an adjoint computation""", - ), - ), -# ----------------------------------- - SOURCES = FACT(statut='f', -# ----------------------------------- -# ----------------------------------- - ABSCISSAE_OF_SOURCES = SIMP(statut ='f', -# ----------------------------------- - typ = 'R', min=0, max='**', - fr = """Valeurs des abscisses des sources de debit et de traceur.""", - ang = """abscissae of sources of flowrate and/or tracer""", - ), -# ----------------------------------- - ORDINATES_OF_SOURCES = SIMP(statut ='f', -# ----------------------------------- - typ = 'R', min=0, max='**', - fr = """Valeurs des ordonnees des sources de debit et de traceur.""", - ang = """ordinates of sources of flowrate and/or tracer""", - ), -# ----------------------------------- - WATER_DISCHARGE_OF_SOURCES = SIMP(statut ='f', -# ----------------------------------- - typ = 'R', min=0, max='**', - fr = """Valeurs des debits des sources.""", - ang = """values of water discharge of sources""", - ), -# ----------------------------------- - VELOCITIES_OF_THE_SOURCES_ALONG_X = SIMP(statut ='f', -# ----------------------------------- - typ = 'R', min=0, max='**', - fr = """Vitesses du courant a chacune des sources. Si elles ne sont pas -donnees, on considere que la vitesse est celle du courant""", - ang = """Velocities at the sources. If they are not given, the velocity -of the flow at this location is taken""", - ), -# ----------------------------------- - VELOCITIES_OF_THE_SOURCES_ALONG_Y = SIMP(statut ='f', -# ----------------------------------- - typ = 'R', min=0, max='**', - fr = """Vitesses du courant a chacune des sources""", - ang = """Velocities at the sources""", - ), -# ----------------------------------- - TYPE_OF_SOURCES = SIMP(statut ='o', -# ----------------------------------- - typ = 'TXM', - into = ["Normal","Dirac"], - defaut = "Normal", - fr = """1: Source portee par une base elements finis -2: Source portee par une fonction de Dirac""", - ang = """1: Source term multiplied by a finite element basis -2: Source term multiplied by a Dirac function""", - ), -# ----------------------------------- - SOURCES_FILE = SIMP(statut ='f', -# ----------------------------------- - typ = ('Fichier','All Files (*)'), - defaut = '', - fr = """Nom du fichier contenant les informations variables -en temps des sources""", - ang = """Name of the file containing time-dependent -information on sources""", - ), -# ----------------------------------- - GLOBAL_NUMBERS_OF_SOURCE_NODES = SIMP(statut ='f', -# ----------------------------------- - typ = 'I', min=0, max='**', - fr = """ Numeros globaux des noeuds du maillage sur lequels sont affectes des -points source""", - ang = """ Global numbers of nodes in the mesh that correspond to source point -locations""", - ), - ), -# ----------------------------------- - WATER_QUALITY_INFO = FACT(statut='f', -# ----------------------------------- -# ----------------------------------- - WATER_QUALITY_PROCESS = SIMP(statut ='f', -# ----------------------------------- - typ = 'I', - defaut = 1, - fr = """Donne le numero du processus de qualite d''eau, defini -comme une combinaison multiplicative de nombres premiers -(2,3,5,7,11 et 13) avec les cas particuliers 0 et 1 : -\begin{itemize} -\item 0 : tous ; -\item 1 : rien ; -\item 2 : O2 ; -\item 3 : BIOMASS ; -\item 5 : EUTRO ; -\item 7 : MICROPOL ; -\item 11 : THERMIC ; -\item 13 : AED2. -\item 17 : Loi de degradation -\item 19 : Court-cicuit temporaire pour les glaces -\end{itemize} -Example: 110 = 2x5x11 activera O2, EUTRO et THERMIC ensemble. -On notera que AED2, pour l instant, n est pas disponible en 2D""", - ang = """Gives the water quality process number, defined as -a multiplicative combination of prime numbers (2,3,5,7,11 - et 13) with 0 and 1 having a special role: -\begin{itemize} -\item 0: all, -\item 1: none, -\item 2: O2, -\item 3: BIOMASS, -\item 5: EUTRO, -\item 7: MICROPOL, -\item 11: THERMIC, -\item 13: AED2. -\item 17: Degradation law -\item 19: Ghost process for ice modelling -\end{itemize} -Example: 110 = 2x5x11 activate O2, EUTRO and THERMIC together. -It is noted that AED2 is not available in 2D, for the time being.""", - ), - ), -# ----------------------------------- - ADVANCED_PHY = FACT(statut='f', -# ----------------------------------- -# ----------------------------------- - WATER_DENSITY = SIMP(statut ='o', -# ----------------------------------- - typ = 'R', - defaut = 1000., - fr = """Fixe la valeur de la masse volumique de l''eau.""", - ang = """set the value of water density""", - ), -# ----------------------------------- - GRAVITY_ACCELERATION = SIMP(statut ='o', -# ----------------------------------- - typ = 'R', - defaut = 9.81, - fr = """Fixe la valeur de l''acceleration de la pesanteur.""", - ang = """Set the value of the acceleration due to gravity.""", - ), -# ----------------------------------- - VERTICAL_STRUCTURES = SIMP(statut ='o', -# ----------------------------------- - typ = bool, - defaut = False, - fr = """Prise en compte de la force de trainee de structures verticales -(il faut alors remplir la subroutine DRAGFO)""", - ang = """drag forces from vertical structures are taken into account. -(subroutine DRAGFO must then be implemented)""", - ), -# ----------------------------------- - b_VERTICAL_STRUCTURESG = BLOC(condition="VERTICAL_STRUCTURES == True", -# ----------------------------------- -# ----------------------------------- - Consigne = SIMP(statut ="o", homo="information", typ="TXM", -# ----------------------------------- - defaut = "Fill the subroutine DRAGFO"), - ), - ), - ), -# ----------------------------------- - NUMERICAL_PARAMETERS_HYDRO = FACT(statut='o', -# ----------------------------------- -# ----------------------------------- - EQUATIONS = SIMP(statut ='o', -# ----------------------------------- - typ = 'TXM', - into = ['SAINT-VENANT FE','SAINT-VENANT FV','BOUSSINESQ'], - defaut = 'SAINT-VENANT FE', - fr = """CHOIX DES EQUATIONS A RESOUDRE : SAINT-VENANT ELEMENTS FINIS, -SAINT-VENANT VOLUMES FINIS OU BOUSSINESQ 20 CARACTERES""", - ang = """CHOICE OF EQUATIONS TO SOLVE : SAINT-VENANT FINITE ELEMENTS, -SAINT-VENANT FINITE VOLUMES OR BOUSSINESQ 20 CHARACTERS""", - ), -# ----------------------------------- - b_EQUATIONSG = BLOC(condition="EQUATIONS == 'SAINT-VENANT FV'", -# ----------------------------------- -# ----------------------------------- - FINITE_VOLUME_SCHEME = SIMP(statut ='o', -# ----------------------------------- - typ = 'TXM', - into = ["Roe scheme","kinetic order 1","kinetic order 2","Zokagoa scheme order 1","Tchamen scheme order 1","HLLC scheme order 1","WAF scheme order 2"], - defaut = "kinetic order 1", - fr = """0 : schema de Roe 1 : cinetique ordre 1 2 : cinetique ordre 2 -3 : schema de Zokagoa 4 : schema de Tchamen 5 : HLLC ordre 1 -6 : WAF ordre 2""", - ang = """0: Roe scheme 1: kinetic order 1 2: kinetic order 2 -3 : Zokagoa scheme 4 : Tchamen scheme 5 : HLLC order 1 -6 : WAF order 2""", - ), - ), -# ----------------------------------- - TREATMENT_OF_THE_LINEAR_SYSTEM = SIMP(statut ='o', -# ----------------------------------- - typ = 'TXM', - into = ["coupled","Wave equation"], - defaut = "coupled", - fr = """1 : Traitement couple 2 : equation d onde""", - ang = """1 : Coupled 2 : wave equation""", - ), - ), -# ----------------------------------- - FLUID = FACT(statut='f', -# ----------------------------------- -# ----------------------------------- - CORIOLIS_EFFECT = FACT(statut='f', -# ----------------------------------- -# ----------------------------------- - CORIOLIS = SIMP(statut ='o', -# ----------------------------------- - typ = bool, - defaut = False, - fr = """Prise en compte ou non de la force de Coriolis.""", - ang = """The Coriolis force is taken into account or ignored.""", - ), -# ----------------------------------- - CORIOLIS_COEFFICIENT = SIMP(statut ='o', -# ----------------------------------- - typ = 'R', - defaut = 0., - fr = """Fixe la valeur du coefficient de la force de Coriolis. -Celui-ci doit etre calcule en fonction de la latitude l par la formule - FCOR = 2w sin(l) , w etant la vitesse de rotation de la terre. - w = 7.2921 10-5 rad/s -Les composantes de la force de Coriolis sont alors : - FU = FCOR x V - FV = - FCOR x U""", - ang = """Sets the value of the Coriolis force coefficient, in cartesian -coordinates. -This coefficient, denoted FCOR in the code, should be equal to -2 w sin(l)d where w denotes the earth angular speed of rotation -and l the latitude. w = 7.27 10-5 rad/sec -The Coriolis force components are then: -FU = FCOR x V, -FV = -FCOR x U -In spherical coordinates, the latitudes are known""", - ), - ), -# ----------------------------------- - TSUNAMI = FACT(statut='f', -# ----------------------------------- -# ----------------------------------- - OPTION_FOR_TSUNAMI_GENERATION = SIMP(statut ='o', -# ----------------------------------- - typ = 'TXM', - into = ["No Tsunami","Tsunami generated on the basis of the Okada model 1992"], - defaut = "No Tsunami", - fr = """""", - ang = """""", - ), -# ----------------------------------- - PHYSICAL_CHARACTERISTICS_OF_THE_TSUNAMI = SIMP(statut ='o', -# ----------------------------------- - typ = 'R', min=10, max=10, - defaut = [100.,210000.,75000.,13.6,81.,41.,110.,0.,0.,3.], - fr = """""", - ang = """""", - ), - ), -# ----------------------------------- - SECONDARY_CURRENTS_INFO = FACT(statut='f', -# ----------------------------------- -# ----------------------------------- - SECONDARY_CURRENTS = SIMP(statut ='o', -# ----------------------------------- - typ = bool, - defaut = False, - fr = """Pour prendre en compte les courants secondaires""", - ang = """Using the parametrisation for secondary currents""", - ), -# ----------------------------------- - b_SECONDARY_CURRENTSG = BLOC(condition="SECONDARY_CURRENTS == True", -# ----------------------------------- -# ----------------------------------- - PRODUCTION_COEFFICIENT_FOR_SECONDARY_CURRENTS = SIMP(statut ='o', -# ----------------------------------- - typ = 'R', - defaut = 7.071, - fr = """Une constante dans les termes de creation de Omega""", - ang = """A constant in the production terms of Omega""", - ), -# ----------------------------------- - DISSIPATION_COEFFICIENT_FOR_SECONDARY_CURRENTS = SIMP(statut ='o', -# ----------------------------------- - typ = 'R', - defaut = 5.E-1, - fr = """Coefficient de dissipation de Omega""", - ang = """Coefficient of dissipation term of Omega""", - ), - ), - ), - ), -) -# ----------------------------------------------------------------------- -GENERAL_PARAMETERS = PROC(nom= "GENERAL_PARAMETERS",op = None, -# ----------------------------------------------------------------------- - UIinfo = {"groupes": ("CACHE")}, -# ----------------------------------- - DEBUGGER = SIMP(statut ='o', -# ----------------------------------- - typ = 'I', - defaut = 0, - fr = """Pour imprimer la sequence des appels, mettre 1""", - ang = """If 1, calls of subroutines will be printed in the listing""", - ), -# ----------------------------------- - TIME = FACT(statut='o', -# ----------------------------------- -# ----------------------------------- - TIME_STEP = SIMP(statut ='o', -# ----------------------------------- - typ = 'R', - defaut = 1., - fr = """Definit le pas de temps en secondes. Remarque : Pour une bonne -precision; il est souhaitable de choisir le pas de temps de telle sorte -que le nombre de Courant de propagation soit inferieur a 2 ; voir 3. -Ceci peut etre realisable en hydraulique fluviale ; mais ne l''est -pratiquement jamais en hydraulique maritime ou l''on peut atteindre des -valeurs de 50.""", - ang = """Specifies the time step in seconds.""", - ), -# ----------------------------------- - NUMBER_OF_TIME_STEPS = SIMP(statut ='f', -# ----------------------------------- - typ = 'I', - defaut = 1, - fr = """ Definit le nombre de pas de temps effectues lors de l''execution du -code.""", - ang = """ Specifies the number of time steps performed when running the code.""", - ), -# ----------------------------------- - DURATION = SIMP(statut ='f', -# ----------------------------------- - typ = 'R', - defaut = 0., - fr = """Duree de la simulation. alternative au parametre nombre de pas -de temps. On en deduit le nombre de pas de temps en prenant l''entier le - plus proche de (duree du calcul/pas de temps). Si le nombre de pas de -temps est aussi donne, on prend la plus grande valeur""", - ang = """Duration of simulation. May be used instead of the parameter -NUMBER OF TIME STEPS. The nearest integer to (duration/time step) is -taken. -If NUMBER OF TIME STEPS is also given, the greater value is taken""", - ), -# ----------------------------------- - ORIGINAL_DATE_OF_TIME = SIMP(statut ='o', -# ----------------------------------- - typ = 'I', min= 3, max= 3, - defaut = [1900,1,1], - fr = """Permet de fixer la date d''origine des temps du modele lors -de la prise en compte de la force generatrice de la maree.""", - ang = """Give the date of the time origin of the model when taking into -account the tide generating force.""", - ), -# ----------------------------------- - ORIGINAL_HOUR_OF_TIME = SIMP(statut ='o', -# ----------------------------------- - typ = 'I', min= 3, max= 3, - defaut = [0,0,0], - fr = """ Permet de fixer l''heure d''origine des temps du modele lors de la -prise en compte de la force generatrice de la maree.""", - ang = """ Give the time of the time origin of the model when taking into account -of the tide generator force.""", - ), -# ----------------------------------- - STOP_IF_A_STEADY_STATE_IS_REACHED = SIMP(statut ='o', -# ----------------------------------- - typ = bool, - defaut = False, - fr = """A UTILISER AVEC LE MOT-CLE : CRITERES D''ARRET""", - ang = """TO BE USED WITH THE KEY-WORD: STOP CRITERIA""", - ), -# ----------------------------------- - b_STOP_IF_A_STEADY_STATE_IS_REACHEDG = BLOC(condition="STOP_IF_A_STEADY_STATE_IS_REACHED == True", -# ----------------------------------- -# ----------------------------------- - STOP_CRITERIA = SIMP(statut ='o', -# ----------------------------------- - typ = 'R', min= 3, max= 3, - defaut = [1.E-4,1.E-4,1.E-4], - fr = """Criteres d''arret pour un ecoulement permanent -ces coefficients sont respectivement appliques a - 1) U et V - 2) H - 3) T -A utiliser avec le mot-cle : ARRET SI UN ETAT PERMANENT EST ATTEINT""", - ang = """Stop criteria for a steady state -These coefficients are applied respectively to - 1) U and V - 2) H - 3) T -To be used with the key-word: STOP IF A STEADY STATE IS REACHED""", - ), - ), -# ----------------------------------- - CONTROL_OF_LIMITS = SIMP(statut ='o', -# ----------------------------------- - typ = bool, - defaut = False, - fr = """Utiliser avec le mot-cle : valeurs limites, le programme -s''arrete si les limites sur u,v,h ou t sont depassees""", - ang = """Use with the key-word : limit values, -the program is stopped if -the limits on u,v,h, or t are trespassed""", - ), -# ----------------------------------- - b_CONTROL_OF_LIMITSG = BLOC(condition="CONTROL_OF_LIMITS == True", -# ----------------------------------- -# ----------------------------------- - LIMIT_VALUES = SIMP(statut ='o', -# ----------------------------------- - typ = 'R', min= 8, max= 8, - defaut = [-1000.,9000.,-1000.,1000.,-1000.,1000.,-1000.,1000.], - fr = """Utilise avec le mot-cle CONTROLE DES LIMITES - valeurs mini et maxi acceptables pour H,U,V et T dans l''ordre - suivant : min(H) max(H) min(U) max(U) - min(V) max(V) min(T) max(T)""", - ang = """To be used with the key-word CONTROL OF LIMITS - min and max acceptable values for H,U,V et T in the following - order : min(H) max(H) min(U) max(U) - min(V) max(V) min(T) max(T)""", - ), - ), -# ----------------------------------- - VARIABLE_TIME_STEP = SIMP(statut ='o', -# ----------------------------------- - typ = bool, - defaut = False, - fr = """ Pas de temps variable pour avoir un nombre de courant souhaite""", - ang = """ Variable time-step to get a given Courant number""", - ), -# ----------------------------------- - b_VARIABLE_TIME_STEPG = BLOC(condition="VARIABLE_TIME_STEP == True", -# ----------------------------------- -# ----------------------------------- - DESIRED_COURANT_NUMBER = SIMP(statut ='o', -# ----------------------------------- - typ = 'R', - defaut = 1., - fr = """Nombre de Courant souhaite en cas de pas de temps variable""", - ang = """Desired Courant number when VARIABLE TIME-STEP is set to YES""", - ), - ), - ), -# ----------------------------------- - LOCATION = FACT(statut='o', -# ----------------------------------- -# ----------------------------------- - ORIGIN_COORDINATES = SIMP(statut ='o', -# ----------------------------------- - typ = 'I', min= 2, max= 2, - defaut = [0,0], - fr = """Valeur en metres, utilise -pour eviter les trops grands nombres, transmis -dans le format Selafin mais pas d''autre traitement pour l''instant""", - ang = """Value in metres, used to avoid large real numbers, -added in Selafin format, but so far no other treatment""", - ), -# ----------------------------------- - SPHERICAL_COORDINATES = SIMP(statut ='o', -# ----------------------------------- - typ = bool, - defaut = False, - fr = """Choix des coordonnees spheriques pour la realisation du calcul -( pour les grands domaines de calcul). -Attention : cette option est etroitement liee au -maillage qui doit avoir -ete saisi sur une carte marine en projection de Mercator. -Il faut de plus relever sur la carte la LATITUDE DU POINT ORIGINE -(autre mot-cle) qui correspond dans le maillage a l''ordonnee y = 0.""", - ang = """Selection of spherical coordinates to perform the computation -(for large computation domains). -Warning: this option is closely related to the mesh that should have -been entered onto a nautical chart drawn as per Mercator projection -The LATITUDE OF ORIGIN POINT (another keyword), which corresponds to -ordinate y=0 in the mesh, must moreover be given.""", - ), -# ----------------------------------- - b_SPHERICAL_COORDINATESG = BLOC(condition="SPHERICAL_COORDINATES == True", -# ----------------------------------- -# ----------------------------------- - LATITUDE_OF_ORIGIN_POINT = SIMP(statut ='o', -# ----------------------------------- - typ = 'R', - defaut = 48., - fr = """Determine l''origine utilisee pour le calcul de latitudes -lorsque l''on effectue un calcul en coordonnees spheriques.""", - ang = """Determines the origin used for computing latitudes when -a computation is made in spherical coordinates. -this latitude is in particular used to compute the Coriolis force. -In cartesian coordinates, Coriolis coefficient is considered constant.""", - ), - ), -# ----------------------------------- - LONGITUDE_OF_ORIGIN_POINT = SIMP(statut ='o', -# ----------------------------------- - typ = 'R', - defaut = 0., - fr = """Fixe la valeur de la longitude du point origine du modele, -lors de l''utilisation de la force generatrice de la maree.""", - ang = """Give the value of the longitude of the origin point -of the model, when taking into account of the tide generator force.""", - ), -# ----------------------------------- - NORTH = SIMP(statut ='f', -# ----------------------------------- - typ = 'R', - defaut = 0., - fr = """Direction du nord en degres, par rapport a l''axe des y -dans le sens trigonometrique. Notation decimale 10.5 signifie 10 degres - et trente minutes.""", - ang = """Angle of the North with the y axis, in degrees. 10.5 means -10 degrees and 30 minutes.""", - ), -# ----------------------------------- - SPATIAL_PROJECTION_TYPE = SIMP(statut ='o', -# ----------------------------------- - typ = 'TXM', - into = ["CARTESIAN, NOT GEOREFERENCED","MERCATOR","LATITUDE LONGITUDE"], - defaut = "CARTESIAN, NOT GEOREFERENCED", - fr = """Option 2 ou 3 obligatoire pour les coordonnees spheriques -Option 3 : latitude et longitude en degres !""", - ang = """Option 2 or 3 mandatory for spherical coordinates -Option 3: latitude and longitude in degrees!""", - ), - ), -) -# ----------------------------------------------------------------------- -NUMERICAL_PARAMETERS = PROC(nom= "NUMERICAL_PARAMETERS",op = None, -# ----------------------------------------------------------------------- - UIinfo = {"groupes": ("CACHE")}, -# ----------------------------------- - SOLVER_INFO = FACT(statut='o', -# ----------------------------------- -# ----------------------------------- - SOLVER = SIMP(statut ='o', -# ----------------------------------- - typ = 'TXM', - into = ["conjugate gradient on a normal equation","conjugate gradient","conjugate residual","minimum error","cgstab","gmres","direct"], - defaut = "conjugate gradient on a normal equation", - fr = """Permet de choisir le solveur utilise pour la resolution de -l''etape de propagation. Toutes les methodes proposees actuellement -s''apparentent au Gradient Conjugue. Ce sont : - 1 : gradient conjugue - 2 : residu conjugue - 3 : gradient conjugue sur equation normale - 4 : erreur minimale - 5 : gradient conjugue carre (non programme) - 6 : gradient conjugue carre stabilise (cgstab) - 7 : gmres (voir aussi option du solveur) - 8 : direct""", - ang = """Makes it possible to select the solver used for solving the -propagation step. All the currently available methods are variations -of the Conjugate Gradient method. They are as follows: -1: conjugate gradient -2: conjugate residual -3: conjugate gradient on a normal equation -4: minimum error -5: conjugate gradient squared (not implemented) -6: conjugate gradient squared stabilised (cgstab) -7: gmres (see option for solver) -8: direct""", - ), -# ----------------------------------- - b_SOLVERG = BLOC(condition="SOLVER == 'gmres'", -# ----------------------------------- -# ----------------------------------- - SOLVER_OPTION = SIMP(statut ='o', -# ----------------------------------- - typ = 'I', - defaut = 2, - fr = """si le solveur est GMRES (7) le mot cle est la dimension de -l''espace de KRYLOV (valeurs conseillees entre 2 et 15)""", - ang = """WHEN GMRES (7) IS CHOSEN, DIMENSION OF THE KRYLOV SPACE -TRY VALUES BETWEEN 2 AND 15""", - ), - ), -# ----------------------------------- - SOLVER_ACCURACY = SIMP(statut ='o', -# ----------------------------------- - typ = 'R', - defaut = 1.E-4, - fr = """Precision demandee pour la resolution de l''etape de propagation - (cf. Note de principe).""", - ang = """Required accuracy for solving the propagation step -(refer to Principle note).""", - ), -# ----------------------------------- - MAXIMUM_NUMBER_OF_ITERATIONS_FOR_SOLVER = SIMP(statut ='o', -# ----------------------------------- - typ = 'I', - defaut = 100, - fr = """Les algorithmes utilises pour la resolution de l''etape de -propagation etant iteratifs; il est necessaire de limiter le nombre -d''iterations autorisees. -Remarque : un maximum de 40 iterations par pas de temps semble -raisonnable.""", - ang = """Since the algorithms used for solving the propagation step are -iterative, the allowed number of iterations should be limited. -NOTE: a maximum number of 40 iterations per time step seems to be -reasonable.""", - ), -# ----------------------------------- - CONTINUITY_CORRECTION = SIMP(statut ='o', -# ----------------------------------- - typ = bool, - defaut = False, - fr = """Corrige les vitesses sur les points avec hauteur imposee ou -l''equation de continuite n''a pas ete resolue""", - ang = """Correction of the velocities on points with a prescribed -elevation, where the continuity equation has not been solved""", - ), -# ----------------------------------- - PRECONDITIONING = SIMP(statut ='o', -# ----------------------------------- - typ = 'TXM', - into = ["diagonal","no preconditioning","block-diagonal (4-9 matrices)","absolute value of diagonal","crout","gauss-seidel","diagonal and crout"], - defaut = "diagonal", - fr = """Permet de preconditionner le systeme de l''etape de propagation -afin d''accelerer la convergence lors de sa resolution. - - 0 : pas de preconditionnement; - - 2 : preconditionnement diagonal. - - 3 : preconditionnement diagonal-bloc - - 7 : preconditionnement de Crout par element ou segment - -11 : preconditionnement de Gauss-Seidel par element ou segment -Certains preconditionnements sont cumulables -(les diagonaux 2 ou 3 avec les autres) -Pour cette raison on ne retient que les nombres premiers pour -designer les preconditionnements. Si l''on souhaite en cumuler -plusieurs on formera le produit des options correspondantes.""", - ang = """Choice of the preconditioning in the propagation step linear -system that the convergence is speeded up when it is being solved. - 0: no preconditioning - 2: diagonal preconditioning - 3: block-diagonal preconditioning (systemes a 4 ou 9 matrices) - 7: Crout''s preconditioning per element or segment -11: Gauss-Seidel''s preconditioning per element or segment -Some operations (either 2 or 3 diagonal preconditioning) can be -performed concurrently with the others. -Only prime numbers are therefore kept to denote the preconditioning -operations. When several of them are to be performed concurrently, -the product of relevant options shall be made.""", - ), -# ----------------------------------- - C_U_PRECONDITIONING = SIMP(statut ='o', -# ----------------------------------- - typ = bool, - defaut = True, - fr = """Changement de variable de H en C dans le systeme lineaire final""", - ang = """Change of variable from H to C in the final linear system""", - ), -# ----------------------------------- - FINITE_ELEMENT_ASSEMBLY = SIMP(statut ='f', -# ----------------------------------- - typ = 'TXM', - into = ["normal","Integer I8","Compensated"], - defaut = "normal", - fr = """1 : normal 2 : avec des entiers I8 3:compense""", - ang = """1: normal 2: with I8 integers 3:compensation""", - ), - ), -# ----------------------------------- - DISCRETISATIONS_IMPLICITATION = FACT(statut='o', -# ----------------------------------- -# ----------------------------------- - IMPLICITATION_FOR_DEPTH = SIMP(statut ='o', -# ----------------------------------- - typ = 'R', - defaut = 0.55, - fr = """Fixe la valeur du coefficient d''implicitation sur C dans l''etape de -propagation (cf. Note de principe). Les valeurs inferieures a 0.5 -donnent un schema instable.""", - ang = """Sets the value of the implicitation coefficient for C (the celerity of -waves) in the propagation step (refer to principle note). Values below -0.5 result in an unstable scheme.""", - ), -# ----------------------------------- - IMPLICITATION_FOR_VELOCITY = SIMP(statut ='o', -# ----------------------------------- - typ = 'R', - defaut = 0.55, - fr = """Fixe la valeur du coefficient d''implicitation sur la vitesse dans -l''etape de propagation (cf. Note de principe). Les valeurs inferieures -a 0.5 donnent un schema instable.""", - ang = """Sets the value of the implicitation coefficient for velocity in the -propagation step (refer to principle note). Values below 0.5 result in -an unstable condition.""", - ), -# ----------------------------------- - DISCRETIZATIONS_IN_SPACE = SIMP(statut ='f', -# ----------------------------------- - typ = 'TXM', max='**', - into = ["linear","quasi-bubble","quadratic"], - defaut = ["linear","linear","linear","linear"], - fr = """ Choix de la discretisation pour chaque variable ces coefficients sont -respectivement appliques a 1) U et V 2) H 3) T 4) K ET EPSILON (NON -PROGRAMME) 11 : lineaire 12 : quasi-bulle 13 : quadratique""", - ang = """ Choice of space discretisation for every variable These coefficients -are applied respectively to 1) U and V 2) H 3) T 4) K and EPSILON (NOT -IMPLEMENTED) 11: linear 12: quasi-bubble 13: quadratic""", - ), -# ----------------------------------- - b_DISCRETIZATIONS_IN_SPACEG = BLOC(condition="DISCRETIZATIONS_IN_SPACE != None", -# ----------------------------------- -# ----------------------------------- - Consigne = SIMP(statut ="o", homo="information", typ="TXM", -# ----------------------------------- - defaut = "Choice of space discretisation for every variable. These coefficients are applied respectively to 1) U and V 2) H 3) T 4) K and EPSILON"), - ), - ), -# ----------------------------------- - PROPAGATION_INFO = FACT(statut='o', -# ----------------------------------- -# ----------------------------------- - PROPAGATION = SIMP(statut ='o', -# ----------------------------------- - typ = bool, - defaut = True, - fr = """Prise en compte ou non de la propagation de la vitesse et de la -hauteur d''eau. -La diffusion etant contenue dans cette etape sera supprimee aussi.""", - ang = """Determines whether the propagation step is taken into account -or not. -The diffusion being included in that step will be deleted as well.""", - ), -# ----------------------------------- - b_PROPAGATIONG = BLOC(condition="PROPAGATION == True", -# ----------------------------------- -# ----------------------------------- - MEAN_DEPTH_FOR_LINEARIZATION = SIMP(statut ='o', -# ----------------------------------- - typ = 'R', - defaut = 0., - fr = """Fixe la hauteur d''eau autour de laquelle s''effectue la -linearisation lorsque l''option PROPAGATION LINEARISEE est choisie.""", - ang = """Sets the water depth about which the linearization is made -when the LINEARIZED PROPAGATION OPTION is selected.""", - ), -# ----------------------------------- - INITIAL_GUESS_FOR_U = SIMP(statut ='o', -# ----------------------------------- - typ = 'TXM', - into = ["zero","previous","extrapolation"], - defaut = "previous", - fr = """Tir initial du solveur de l''etape de propagation. -Offre la possibilite de modifier la valeur initiale de U, a chaque -iteration, dans l''etape de propagation en utilisant les valeurs -finales de cette variable aux pas de temps precedents. Ceci peut -permettre d''accelerer la vitesse de convergence lors de la resolution -du systeme. Trois possibilites sont offertes : - 0 : U = 0 - 1 : U = U(n) - 2 : U = 2 U(n)- U(n-1) (extrapolation)""", - ang = """Initial guess for the solver in the propagation step. -Makes it possible to modify the initial value of U, upon each -iteration in the propagation step, by using the ultimate values this -variable had in the earlier time steps. Thus, the convergence can be -speeded up when the system is being solved. 3 options are available: - 0 : U = 0 - 1 : U = U(n) - 2 : U = 2 U(n)- U(n-1) (extrapolation)""", - ), - ), -# ----------------------------------- - INITIAL_GUESS_FOR_H = SIMP(statut ='o', -# ----------------------------------- - typ = 'TXM', - into = ["zero","previous","extrapolation"], - defaut = "previous", - fr = """ Tir initial du solveur de l''etape de propagation. Offre la -possibilite de modifier la valeur initiale de DH, accroissement de H, a -chaque iteration, dans l''etape de propagation en utilisant les valeurs -finales de cette variable aux pas de temps precedents. Ceci peut -permettre d''accelerer la vitesse de convergence lors de la resolution -du systeme. Trois possibilites sont offertes : - 0 : DH = 0. - 1 : DH = DHn (valeur finale de DH au pas de temps precedent), - 2 : DH = 2DHn - DHn-1 (extrapolation).""", - ang = """Initial guess for the solver in the propagation step. -Makes it possible to modify the initial value of C, upon each -iteration in the propagation step, by using the ultimate values this -variable had in the earlier time steps. Thus, the convergence can be -speeded up when the system is being solved. 3 options are available: - 0: DH = 0 - 1: DH = DHn (ultimate DH value in the next previous time step) - 2: DH = 2DHn - DHn-1 (extrapolation)""", - ), -# ----------------------------------- - LINEARIZED_PROPAGATION = SIMP(statut ='o', -# ----------------------------------- - typ = bool, - defaut = False, - fr = """Permet de lineariser l''etape de propagation; -par exemple lors de la realisation de cas tests -pour lesquels on dispose -d''une solution analytique dans le cas linearise.""", - ang = """Provided for linearizing the propagation step, e.g. when -performing test-cases for which an analytical -solution in the linearized -case is available.""", - ), - ), -# ----------------------------------- - ADVECTION_INFO = FACT(statut='o', -# ----------------------------------- -# ----------------------------------- - ADVECTION = SIMP(statut ='o', -# ----------------------------------- - typ = bool, - defaut = True, - fr = """Prise en compte ou non des termes de convection. -En cas de reponse positive; -on peut encore supprimer certains termes de convection avec -les mots-cles CONVECTION DE ...""", - ang = """Are the advection terms taken into account or not? -If YES, some advection terms can still be deleted using the keywords --ADVECTION OF ..-""", - ), -# ----------------------------------- - ADVECTION_OF_H = SIMP(statut ='o', -# ----------------------------------- - typ = bool, - defaut = True, - fr = """Prise en compte ou non de la convection de H. -Il s''agit en fait dans la version 2.0 de la convection de C""", - ang = """The advection of H is taken into account or ignored. -Actually, in version 2.0, the matter is about C advection.""", - ), -# ----------------------------------- - ADVECTION_OF_U_AND_V = SIMP(statut ='f', -# ----------------------------------- - typ = bool, - defaut = True, - fr = """Prise en compte ou non de la convection de U et V.""", - ang = """The advection of U and V is taken into account or ignored.""", - ), -# ----------------------------------- - b_ADVECTION_OF_U_AND_VG = BLOC(condition="ADVECTION_OF_U_AND_V == True", -# ----------------------------------- -# ----------------------------------- - SCHEME_FOR_ADVECTION_OF_VELOCITIES = SIMP(statut ='o', -# ----------------------------------- - typ = 'TXM', - into = ["NO ADVECTION","CHARACTERISTICS","EXPLICIT + SUPG","EXPLICIT LEO POSTMA","EXPLICIT + MURD SCHEME N","EXPLICIT + MURD SCHEME PSI","N-SCHEME FOR TIDAL FLATS","N-SCHEME FOR TIDAL FLATS","ERIA SCHEME"], - defaut = "CHARACTERISTICS", - fr = """Choix du schema de convection pour les vitesses, -remplace FORME DE LA CONVECTION""", - ang = """Choice of the advection scheme for the velocities, -replaces TYPE OF ADVECTION""", - ), - ), -# ----------------------------------- - TYPE_OF_ADVECTION = SIMP(statut ='f', -# ----------------------------------- - typ = 'TXM', max='**', - into = ["CHARACTERISTICS","SUPG","CONSERVATIVE N-SCHEME LP","CONSERVATIVE N-SCHEME","CONSERVATIVE PSI-SCHEME","EDGE-BASED N-SCHEME LP","EDGE-BASED N-SCHEME","ERIA SCHEME"], - defaut = ["CHARACTERISTICS","CONSERVATIVE PSI-SCHEME","CHARACTERISTICS","CHARACTERISTICS"], - fr = """Choix du schema de convection pour chaque variable -ces coefficients sont respectivement appliques a -1) U et V 2) H 3) T 4) K ET EPSILON -1 : caracteristiques sur h -2 : SUPG -3 : Schema N conservatif -4 : Schema N conservatif -5 : Schema PSI conservatif -13 : Schema N par segment -14 : Schema N par segment -15 : Schema ERIA -Second integer must be 5""", - ang = """Choice of advection schemes for every variable -These coefficients are applied respectively to -1) U et V 2) H 3) T 4) K and EPSILON -1: characteristics -2: SUPG -3: Conservative N-scheme -4: Conservative N-scheme -5: Conservative PSI-scheme -13 : Edge-based N-scheme -14 : Edge-based N-scheme -15 : ERIA scheme -Second integer must be 5""", - ), -# ----------------------------------- - b_TYPE_OF_ADVECTIONG = BLOC(condition="TYPE_OF_ADVECTION != None", -# ----------------------------------- -# ----------------------------------- - Consigne = SIMP(statut ="o", homo="information", typ="TXM", -# ----------------------------------- - defaut = "Choice of space discretisation for every variable. These coefficients are applied respectively to 1) U and V 2) H 3) T 4) K and EPSILON"), - ), -# ----------------------------------- - OPTION_FOR_CHARACTERISTICS = SIMP(statut ='o', -# ----------------------------------- - typ = 'TXM', - into = ["strong","weak"], - defaut = "strong", - fr = """1: forme forte 2: forme faible""", - ang = """1: strong form 2: weak form""", - ), -# ----------------------------------- - SUPG_OPTION = SIMP(statut ='o', -# ----------------------------------- - typ = 'I', min=0, max='**', - defaut = [2,2,2,2], - fr = """0:pas de decentrement SUPG 1:SUPG classique 2:SUPG modifiee -ces coefficients sont respectivement appliques a -1) U et V 2) H 3) T 4) K ET EPSILON""", - ang = """0:no upwinding 1: classical SUPG 2:modified SUPG -These coefficients are applied respectively to -1) U et V 2) H 3) T 4) K and EPSILON""", - ), -# ----------------------------------- - NUMBER_OF_GAUSS_POINTS_FOR_WEAK_CHARACTERISTICS = SIMP(statut ='f', -# ----------------------------------- - typ = 'I', - defaut = 3, - fr = """Voir les release notes 6.3""", - ang = """See release notes 6.3""", - ), -# ----------------------------------- - MASS_LUMPING_FOR_WEAK_CHARACTERISTICS = SIMP(statut ='o', -# ----------------------------------- - typ = 'R', - defaut = 0., - fr = """Applique a la matrice de masse""", - ang = """To be applied to the mass matrix""", - ), -# ----------------------------------- - b_MAXIMUM_NUMBER_OF_ITERATIONS_FOR_ADVECTION_SCHEMESF = BLOC(condition="(ADVECTION_OF_TRACERS == True and SCHEME_FOR_ADVECTION_OF_TRACERS == 'EDGE-BASED N-SCHEME') or (ADVECTION_OF_K_AND_EPSILON == True and SCHEME_FOR_ADVECTION_OF_K_EPSILON == 'EDGE-BASED N-SCHEME') or (ADVECTION_OF_U_AND_V == True and SCHEME_FOR_ADVECTION_OF_VELOCITIES == 'EDGE-BASED N-SCHEME')", -# ----------------------------------- - ), -# ----------------------------------- - MAXIMUM_NUMBER_OF_ITERATIONS_FOR_ADVECTION_SCHEMES = SIMP(statut ='o', -# ----------------------------------- - typ = 'I', - defaut = 10, - fr = """Seulement pour schemes 13 et 14""", - ang = """Only for schemes 13 and 14""", - ), -# ----------------------------------- - UPWIND_COEFFICIENTS = SIMP(statut ='o', -# ----------------------------------- - typ = 'R', min= 4, max= 4, - defaut = [1.,1.,1.,1], - fr = """Coefficients utilises par la methode S.U.P.G. -ces coefficients sont respectivement appliques a - 1) U et V - 2) H ou C - 3) T - 4) K ET EPSILON""", - ang = """Upwind coefficients used by the S.U.P.G. method -These coefficients are applied respectively to - 1) U and V - 2) H or C - 3) T - 4) K and epsilon""", - ), -# ----------------------------------- - MASS_LUMPING_ON_H = SIMP(statut ='o', -# ----------------------------------- - typ = 'R', - defaut = 0., - fr = """TELEMAC offre la possibilite d''effectuer du mass-lumping -sur H ou U. -Ceci revient a ramener tout ou partie (suivant la valeur de ce -coefficient) des matrices AM1 (h) ou AM2 (U) et AM3 (V) sur -leur diagonale. -Cette technique permet d''accelerer le code dans des proportions tres -importantes et de le rendre egalement beaucoup plus stable. Cependant -les solutions obtenues se trouvent lissees. -Ce parametre fixe le taux de mass-lumping effectue sur h.""", - ang = """TELEMAC provides an opportunity to carry out mass-lumping -either on C,H or on the velocity. -This is equivalent to bringing the matrices AM1 (h) or AM2 (U) and -AM3 (V) wholly or partly, back onto their diagonal. -Thanks to that technique, the code can be speeded up to a quite -significant extent and it can also be made much more stable. The -resulting solutions, however, become artificially smoothed. -This parameter sets the extent of mass-lumping that is performed on h.""", - ), -# ----------------------------------- - MASS_LUMPING_ON_VELOCITY = SIMP(statut ='o', -# ----------------------------------- - typ = 'R', - defaut = 0., - fr = """Fixe le taux de mass-lumping effectue sur la vitesse.""", - ang = """Sets the amount of mass-lumping that is performed on the velocity.""", - ), -# ----------------------------------- - SCHEME_OPTION_FOR_ADVECTION_OF_VELOCITIES = SIMP(statut ='f', -# ----------------------------------- - typ = 'I', - defaut = 1, - fr = """Si present remplace et a priorite sur : -OPTION POUR LES CARACTERISTIQUES -OPTION DE SUPG -Si schema PSI ou N : 1=explicite 2=predicteur-correcteur -3=predicteur-correcteur deuxieme ordre en temps -4=implicite""", - ang = """If present replaces and has priority over: -OPTION FOR CHARACTERISTICS -SUPG OPTION -if N or PSI SCHEME: 1=explicit 2=predictor-corrector -3= predictor-corrector second-order in time 4= implicit""", - ), -# ----------------------------------- - FREE_SURFACE_GRADIENT_COMPATIBILITY = SIMP(statut ='o', -# ----------------------------------- - typ = 'R', - defaut = 1., - fr = """Des valeurs inferieures a 1 suppriment les oscillations -parasites""", - ang = """Values less than 1 suppress spurious oscillations""", - ), -# ----------------------------------- - NUMBER_OF_SUB_ITERATIONS_FOR_NON_LINEARITIES = SIMP(statut ='o', -# ----------------------------------- - typ = 'I', - defaut = 1, - fr = """Permet de reactualiser, pour un meme pas de temps, les champs -convecteur et propagateur au cours de plusieurs sous-iterations. A la -premiere sous-iteration, ces champs sont donnes par C et le champ de -vitesses au pas de temps precedent. Aux iterations suivantes, ils sont -pris egaux au champ de vitesse obtenu a la fin de la sous-iteration -precedente. Cette technique permet d''ameliorer la prise en compte des -non linearites.""", - ang = """Used for updating, within one time step, the advection and -propagation field. -upon the first sub-iteration, these fields are given by -C and the velocity field in the previous time step. At subsequent -iterations, the results of the previous sub-iteration is used to -update the advection and propagation field. -The non-linearities can be taken into account through this technique.""", - ), -# ----------------------------------- - b_TREATMENT_OF_FLUXES_AT_THE_BOUNDARIESF = BLOC(condition="(ADVECTION_OF_TRACERS == True and SCHEME_FOR_ADVECTION_OF_TRACERS in ['EDGE-BASED N-SCHEME','SUPG','CONSERVATIVE N-SCHEME','CONSERVATIVE PSI-SCHEME']) or (ADVECTION_OF_K_AND_EPSILON == True and SCHEME_FOR_ADVECTION_OF_K_EPSILON in ['EDGE-BASED N-SCHEME','SUPG','CONSERVATIVE N-SCHEME','CONSERVATIVE PSI-SCHEME']) or (ADVECTION_OF_U_AND_V == True and SCHEME_FOR_ADVECTION_OF_VELOCITIES in ['EDGE-BASED N-SCHEME','SUPG','CONSERVATIVE N-SCHEME','CONSERVATIVE PSI-SCHEME'])", -# ----------------------------------- - ), -# ----------------------------------- - TREATMENT_OF_FLUXES_AT_THE_BOUNDARIES = SIMP(statut ='o', -# ----------------------------------- - typ = 'TXM', min=0, max='**', - into = ["Priority to prescribed values","Priority to fluxes"], - defaut = ["Priority to prescribed values","Priority to prescribed values"], - fr = """Utilise pour les schemas SUPG, PSI et N, avec option 2, on ne retrouve -pas exactement les valeurs imposees des traceurs, mais le flux est -correct""", - ang = """Used so far only with the SUPG, PSI and N schemes. With option 2, -Dirichlet prescribed values are not obeyed, but the fluxes are correct""", - ), -# ----------------------------------- - NUMBER_OF_CORRECTIONS_OF_DISTRIBUTIVE_SCHEMES = SIMP(statut ='f', -# ----------------------------------- - typ = 'I', - defaut = [1], - fr = """Pour les options avec predicteur-correcteur""", - ang = """For predictor-corrector options""", - ), -# ----------------------------------- - NUMBER_OF_SUB_STEPS_OF_DISTRIBUTIVE_SCHEMES = SIMP(statut ='f', -# ----------------------------------- - typ = 'I', - defaut = 1, - fr = """ Pour les options predicteur-correcteur avec schema localement -implicite""", - ang = """ Only for implicit scheme with predictor-corrector""", - ), -# ----------------------------------- - PSI_SCHEME_OPTION = SIMP(statut ='f', -# ----------------------------------- - typ = 'TXM', - into = ["explicit","predictor-corrector"], - defaut = "explicit", - fr = """ 1: explicite 2: predicteur-correcteur""", - ang = """ 1: explicit 2: predictor-corrector""", - ), - ), -# ----------------------------------- - DIFFUSION = FACT(statut='o', -# ----------------------------------- -# ----------------------------------- - DIFFUSION_OF_VELOCITY = SIMP(statut ='o', -# ----------------------------------- - typ = bool, - defaut = True, - fr = """Permet de decider si l''on prend ou non en compte la diffusion -des vitesses.""", - ang = """Makes it possible to decide whether the diffusion of velocity -(i.e. viscosity) is taken into account or not.""", - ), -# ----------------------------------- - b_DIFFUSION_OF_VELOCITYG = BLOC(condition="DIFFUSION_OF_VELOCITY == True", -# ----------------------------------- -# ----------------------------------- - IMPLICITATION_FOR_DIFFUSION_OF_VELOCITY = SIMP(statut ='o', -# ----------------------------------- - typ = 'R', - defaut = 1., - fr = """Fixe la valeur du coefficient d''implicitation sur les termes de -diffusion des vitesses""", - ang = """Sets the value of the implicitation coefficient for the diffusion of -velocity""", - ), -# ----------------------------------- - OPTION_FOR_THE_DIFFUSION_OF_VELOCITIES = SIMP(statut ='o', -# ----------------------------------- - typ = 'TXM', - into = ["div( nu grad(U) )","1/h div ( h nu grad(U)"], - defaut = "div( nu grad(U) )", - fr = """1: Diffusion de la forme div( nu grad(U) ) -2: Diffusion de la forme 1/h div ( h nu grad(U) )""", - ang = """1: Diffusion in the form div( nu grad(U) ) -2: Diffusion in the form 1/h div ( h nu grad(U) )""", - ), - ), - ), -# ----------------------------------- - AUTOMATIC_DIFFERENTIATION = FACT(statut='o', -# ----------------------------------- -# ----------------------------------- - AD_NUMBER_OF_DERIVATIVES = SIMP(statut ='o', -# ----------------------------------- - typ = 'I', - defaut = 0, - fr = """Definit le nombre de derivees utilisateurs, dans le cadre -de la differentiation algorithmique.""", - ang = """Defines the number of user derivatives, within the framework -of the algorithmic differentiation.""", - ), -# ----------------------------------- - AD_NAMES_OF_DERIVATIVES = SIMP(statut ='f', -# ----------------------------------- - typ = 'TXM', min= 2, max= 2, - fr = """Noms des differentiateurs utilisateurs en 32 caracteres, - 16 pour le nom, 16 pour l''unite.""", - ang = """Name of user differentiators in 32 characters, - 16 for the name, 16 for the unit.""", - ), -# ----------------------------------- - AD_SYMBOLIC_LINEAR_SOLVER = SIMP(statut ='f', -# ----------------------------------- - typ = bool, - defaut = False, - fr = """Permet le solveur lineaire symbolique pour l AD.""", - ang = """Enables the symbolic linear solver for AD.""", - ), -# ----------------------------------- - AD_LINEAR_SOLVER_RESET_DERIVATIVES = SIMP(statut ='f', -# ----------------------------------- - typ = bool, - defaut = True, - fr = """Remet a zero les derivees pour l AD.""", - ang = """Resets the derivatives for AD.""", - ), -# ----------------------------------- - AD_LINEAR_SOLVER_DERIVATIVE_CONVERGENCE = SIMP(statut ='f', -# ----------------------------------- - typ = bool, - defaut = True, - fr = """Solveur lineaire iteratif : test de convergence des derivees -pour l AD.""", - ang = """Iterative linear solvers: derivative convergence test for AD.""", - ), - ), -# ----------------------------------- - ADVANCED = FACT(statut='o', -# ----------------------------------- -# ----------------------------------- - MATRIX_STORAGE = SIMP(statut ='o', -# ----------------------------------- - typ = 'TXM', - into = ["classical EBE","Edge-based storage"], - defaut = "Edge-based storage", - fr = """1 : EBE classique 3 : Stockage par segments""", - ang = """1 : classical EBE 3 : Edge-based storage""", - ), -# ----------------------------------- - MATRIX_VECTOR_PRODUCT = SIMP(statut ='o', -# ----------------------------------- - typ = 'I', - defaut = 1, - fr = """1 : classique 2 : frontal -attention, avec 2, il faut une numerotation speciale des points""", - ang = """1 : classic 2 : frontal -beware, with option 2, a special numbering of points is required""", - ), -# ----------------------------------- - NEWMARK_TIME_INTEGRATION_COEFFICIENT = SIMP(statut ='o', -# ----------------------------------- - typ = 'R', - defaut = 1., - fr = """1. : Euler explicite 0.5 : ordre 2 en temps""", - ang = """1. : Euler explicit 0.5 : order 2 in time""", - ), -# ----------------------------------- - ZERO = SIMP(statut ='f', -# ----------------------------------- - typ = 'R', - defaut = 1.E-10, - fr = """Non active pour l''instant.""", - ang = """Not yet implemented""", - ), -# ----------------------------------- - PROPAGATION_OPTION = SIMP(statut ='f', -# ----------------------------------- - typ = 'I', - defaut = 3, - fr = """Non active pour l''instant.""", - ang = """Not yet implemented.""", - ), -# ----------------------------------- - OPTION_OF_THE_HYDROSTATIC_RECONSTRUCTION = SIMP(statut ='f', -# ----------------------------------- - typ = 'I', - defaut = 1, - fr = """donne l option de la reconstruction hydrostatique -(option utile uniquement pour les volumes finis): -1: option d Audusse, 2: option de Noelle""", - ang = """gives the option for hydrostatic reconstruction -(used only for finite volumes): -1: option of Audusse, 2: option of Noelle""", - ), -# ----------------------------------- - CONVERGENCE_STUDY = SIMP(statut ='f', -# ----------------------------------- - typ = bool, - defaut = False, - fr = """Active une etude de convergence par rapport a une -solution analytique sur un maillage fin""", - ang = """Activates a convergence study compared -to an analytical solution on a fine mesh""", - ), -# ----------------------------------- - REFINEMENT_LEVELS = SIMP(statut ='f', -# ----------------------------------- - typ = 'I', - defaut = 0, - fr = """Donne le nombre de raffinements que l''utilisateur -veut utiliser pour l''etude de convergence -(en activant CONVERGENCE). Chaque niveau multiplie par 4 le -nombre d''elements.""", - ang = """Gives the number of refinement levels that the -user wants to use in the convergence study (when activating -CONVERGENCE). Each level multiplies the number of elements by -4""", - ), - ), -) -# ----------------------------------------------------------------------- -TURBULENCE = PROC(nom= "TURBULENCE",op = None, -# ----------------------------------------------------------------------- - UIinfo = {"groupes": ("CACHE")}, -# ----------------------------------- - VELOCITY_DIFFUSIVITY = SIMP(statut ='o', -# ----------------------------------- - typ = 'R', - defaut = 1.E-6, - fr = """Fixe de facon uniforme pour l''ensemble du domaine; -la valeur du coefficient de diffusion de viscosite globale (dynamique + -turbulente). Cette valeur peut avoir une influence non negligeable sur -la forme et la taille des recirculations.""", - ang = """Sets, in an even way for the whole domain, the value of the -coefficient of global (dynamic+turbulent) viscosity. this value may -have a significant effect both on the shapes and sizes of -recirculation zones.""", - ), -# ----------------------------------- - TURBULENCE_MODEL = SIMP(statut ='o', -# ----------------------------------- - typ = 'TXM', - into = ["CONSTANT VISCOSITY","ELDER","K-EPSILON MODEL","SMAGORINSKI","MIXING LENGTH","SPALART-ALLMARAS"], - defaut = "CONSTANT VISCOSITY", - fr = """3 choix sont possibles actuellement : viscosite constante (1) -modele de Elder (2) ou modele k-epsilon (3). -Attention : si on choisit l''option 1 -il ne faut pas oublier d''ajuster la valeur du mot-cle COEFFICIENT DE -DIFFUSION DES VITESSES. -si on choisit l''option 2 -il ne faut pas oublier d''ajuster les deux valeurs du mot-cle : -COEFFICIENTS ADIMENSIONNELS DE DISPERSION -Si on choisit l''option 3; -ce meme parametre doit retrouver sa vraie valeur physique car elle est -utilisee comme telle dans le modele de turbulence""", - ang = """The current alternatives are as follows: constant viscosity (1) -elder''s model (2) or k-epsilon model (3). -NOTE: when option 1 is chosen, it should be kept in mind that the -value of the keyword VELOCITY DIFFUSIVITY has to be ajusted. -When option 2 is chosen, the two values of key-word : -NON-DIMENSIONAL DISPERSION COEFFICIENTS are used -When option 3 is chosen, this parameter should recover its true -physical value, since it is used as such in the turbulence model.""", - ), -# ----------------------------------- - b_TURBULENCE_MODELG = BLOC(condition="TURBULENCE_MODEL == 'CONSTANT VISCOSITY'", -# ----------------------------------- - ), -# ----------------------------------- - b_TURBULENCE_MODELH = BLOC(condition="TURBULENCE_MODEL == 'Elder'", -# ----------------------------------- -# ----------------------------------- - NON_DIMENSIONAL_DISPERSION_COEFFICIENTS = SIMP(statut ='o', -# ----------------------------------- - typ = 'R', min= 2, max= 2, - defaut = [6.,0.6], - fr = """Coefficients longitudinal et transversal dans la formule de -Elder. Utilises uniquement avec le modele de turbulence 2""", - ang = """Longitudinal and transversal coefficients in elder s formula. - Used only with turbulence model number 2""", - ), - ), -# ----------------------------------- - ACCURACY_OF_SPALART_ALLMARAS = SIMP(statut ='f', -# ----------------------------------- - typ = 'R', - defaut = 1.E-9, - fr = """Fixe la precision demandee sur le modele spalart-allmaras pour -le test d''arret dans l''etape de diffusion et termes sources de k et -epsilon.""", - ang = """Sets the required accuracy for the model spalart-allmaras in -the diffusion and source-terms step of the k-epsilon model.""", - ), -# ----------------------------------- - INFORMATION_ABOUT_SPALART_ALLMARAS_MODEL = SIMP(statut ='f', -# ----------------------------------- - typ = bool, - defaut = True, - fr = """si oui les informations du solveur du modele spalart-allmaras -sont imprimees""", - ang = """if yes, informations about solver of spalart-allmaras model -are printed to the listing""", - ), -# ----------------------------------- - SOLVER_INFO = FACT(statut='o', -# ----------------------------------- -# ----------------------------------- - SOLVER_FOR_K_EPSILON_MODEL = SIMP(statut ='o', -# ----------------------------------- - typ = 'TXM', - into = ["conjugate gradient","conjugate residuals","conjugate gradient on normal equation","minimum error","conjugate gradient squared","conjugate gradient squared stabilised (cgstab)","gmres (see option for the solver for k-epsilon model)","direct"], - defaut = "conjugate gradient", - fr = """Permet de choisir le solveur utilise pour la resolution -du systeme du modele k-epsilon : -1 : gradient conjugue -2 : residu conjugue -3 : gradient conjugue sur equation normale -4 : erreur minimale -5 : gradient conjugue carre -6 : gradient conjugue carre stabilise (cgstab) -7 : gmres (voir aussi option du solveur pour le modele k-epsilon) -8 : direct""", - ang = """Makes it possible to select the solver used for solving -the system of the k-epsilon model. -1: conjugate gradient -2: conjugate residuals -3: conjugate gradient on normal equation -4: minimum error -5: conjugate gradient squared -6: conjugate gradient squared stabilised (cgstab) -7: gmres (see option for the solver for k-epsilon model) -8: direct""", - ), -# ----------------------------------- - OPTION_FOR_THE_SOLVER_FOR_K_EPSILON_MODEL = SIMP(statut ='o', -# ----------------------------------- - typ = 'I', - defaut = 2, - fr = """si le solveur est GMRES (7) le mot cle est la dimension de -l''espace de KRILOV (valeurs conseillees entre 2 et 15)""", - ang = """WHEN GMRES (7) IS CHOSEN, DIMENSION OF THE KRYLOV SPACE -TRY VALUES BETWEEN 2 AND 15""", - ), -# ----------------------------------- - PRECONDITIONING_FOR_K_EPSILON_MODEL = SIMP(statut ='o', -# ----------------------------------- - typ = 'TXM', - into = ["diagonal","no preconditioning","crout","diagonal and crout"], - defaut = "diagonal", - fr = """Permet de preconditionner le systeme relatif au -modele k-epsilon -0 : pas de preconditionnement; -2 : preconditionnement diagonal. -7 : preconditionnement de Crout par element.""", - ang = """Preconditioning of the linear system in the diffusion step of -the k-epsilon model. -0: no preconditioning -2: diagonal preconditioning -7: Crout''s preconditioning per element""", - ), - ), -# ----------------------------------- - ADVANCED = FACT(statut='o', -# ----------------------------------- -# ----------------------------------- - TURBULENCE_REGIME_FOR_SOLID_BOUNDARIES = SIMP(statut ='f', -# ----------------------------------- - typ = 'TXM', - into = ["smooth","rough"], - defaut = "rough", - fr = """ Permet de choisir le regime de turbulence aux parois 1 : regime -turbulent lisse. 2 : regime turbulent rugueux.""", - ang = """ Provided for selecting the type of friction on the walls 1: smooth 2: -rough""", - ), -# ----------------------------------- - INFORMATION_ABOUT_K_EPSILON_MODEL = SIMP(statut ='o', -# ----------------------------------- - typ = bool, - defaut = True, - fr = """Donne le nombre d''iterations du solveur de l''etape de -diffusion et termes sources du modele k-epsilon.""", - ang = """Gives the number of iterations of the solver in the diffusion -and source terms step of the k-epsilon model.""", - ), -# ----------------------------------- - ADVECTION_OF_K_AND_EPSILON = SIMP(statut ='o', -# ----------------------------------- - typ = bool, - defaut = True, - fr = """Prise en compte ou non de la convection de k et epsilon.""", - ang = """The k and epsilon advection is taken into account or ignored.""", - ), -# ----------------------------------- - b_ADVECTION_OF_K_AND_EPSILONG = BLOC(condition="ADVECTION_OF_K_AND_EPSILON == True", -# ----------------------------------- -# ----------------------------------- - SCHEME_FOR_ADVECTION_OF_K_EPSILON = SIMP(statut ='f', -# ----------------------------------- - typ = 'TXM', - into = ["NO ADVECTION","CHARACTERISTICS","EXPLICIT + SUPG","EXPLICIT LEO POSTMA","EXPLICIT + MURD SCHEME N","EXPLICIT + MURD SCHEME PSI","LEO POSTMA FOR TIDAL FLATS","N-SCHEME FOR TIDAL FLATS","ERIA SCHEME FOR TIDAL FLATS"], - defaut = "CHARACTERISTICS", - fr = """Choix du schema de convection pour k et epsilon, -remplace FORME DE LA CONVECTION""", - ang = """Choice of the advection scheme for k and epsilon, -replaces TYPE OF ADVECTION""", - ), - ), -# ----------------------------------- - SCHEME_OPTION_FOR_ADVECTION_OF_K_EPSILON = SIMP(statut ='f', -# ----------------------------------- - typ = 'I', - defaut = 1, - fr = """Si present remplace et a priorite sur : -OPTION POUR LES CARACTERISTIQUES -OPTION DE SUPG -Si schema PSI ou N : 1=explicite 2=predicteur-correcteur -3=predicteur-correcteur deuxieme ordre en temps -4=implicite""", - ang = """If present replaces and has priority over: -OPTION FOR CHARACTERISTICS -SUPG OPTION -if N or PSI SCHEME: 1=explicit 2=predictor-corrector -3= predictor-corrector second-order in time 4= implicit""", - ), -# ----------------------------------- - TIME_STEP_REDUCTION_FOR_K_EPSILON_MODEL = SIMP(statut ='f', -# ----------------------------------- - typ = 'R', - defaut = 1., - fr = """Coefficient reducteur du pas de temps pour le modele k-epsilon (qui -est normalement identique a celui du systeme hydrodynamique). -Utilisation deconseillee""", - ang = """Time step reduction coefficient for k-epsilon model (which is normally -same the same as that of the hydrodynamic system) Not recommended for -use.""", - ), - ), -# ----------------------------------- - ACCURACY = FACT(statut='o', -# ----------------------------------- -# ----------------------------------- - ACCURACY_OF_K = SIMP(statut ='o', -# ----------------------------------- - typ = 'R', - defaut = 1.E-9, - fr = """Fixe la precision demandee sur k pour le test d''arret dans -l''etape de diffusion et termes sources du modele k-epsilon.""", - ang = """Sets the required accuracy for computing k in the diffusion -and source terms step of the k-epsilon model.""", - ), -# ----------------------------------- - ACCURACY_OF_EPSILON = SIMP(statut ='o', -# ----------------------------------- - typ = 'R', - defaut = 1.E-9, - fr = """Fixe la precision demandee sur epsilon pour le test d''arret -dans l''etape de diffusion et termes sources de k et epsilon.""", - ang = """Sets the required accuracy for computing epsilon in -the diffusion and source-terms step of the k-epsilon model.""", - ), -# ----------------------------------- - MAXIMUM_NUMBER_OF_ITERATIONS_FOR_K_AND_EPSILON = SIMP(statut ='o', -# ----------------------------------- - typ = 'I', - defaut = 50, - fr = """Fixe le nombre maximum d''iterations accepte lors de la -resolution du systeme diffusion-termes sources du modele k-epsilon.""", - ang = """Sets the maximum number of iterations that are acceptable when -solving the diffusion source-terms step of the k-epsilon model.""", - ), - ), -) -# ----------------------------------------------------------------------- -TIDAL_FLATS_INFO = PROC(nom= "TIDAL_FLATS_INFO",op = None, -# ----------------------------------------------------------------------- -# ----------------------------------- - TIDAL_FLATS = SIMP(statut ='o', -# ----------------------------------- - typ = bool, - defaut = True, - fr = """permet de supprimer les tests sur les bancs decouvrants, dans -les cas ou l''on est certain qu''il n''y en aura pas. -En cas de doute : oui""", - ang = """When no, the specific -treatments for tidal flats are by-passed. -This spares time, but of course you must be sure that you have no -tidal flats""", - ), -# ----------------------------------- - b_TIDAL_FLATSG = BLOC(condition="TIDAL_FLATS == True", -# ----------------------------------- -# ----------------------------------- - OPTION_FOR_THE_TREATMENT_OF_TIDAL_FLATS = SIMP(statut ='o', -# ----------------------------------- - typ = 'TXM', - into = ["EQUATIONS SOLVED EVERYWHERE WITH CORRECTION ON TIDAL FLATS","DRY ELEMENTS FROZEN","LIKE 1 BUT WITH POROSITY (DEFINA METHOD)"], - defaut = "EQUATIONS SOLVED EVERYWHERE WITH CORRECTION ON TIDAL FLATS", - fr = """Utilise si BANCS DECOUVRANTS est vrai -1 : EQUATIONS RESOLUES PARTOUT AVEC -CORRECTION SUR LES BANCS DECOUVRANTS -2 : GEL DES ELEMENTS DECOUVRANTS -3 : COMME 1 MAIS AVEC POROSITE (METHODE DEFINA)""", - ang = """Used if TIDAL FLATS is true -1 : EQUATIONS SOLVED EVERYWHERE WITH CORRECTION ON TIDAL FLATS -2 : DRY ELEMENTS FROZEN -3 : LIKE 1 BUT WITH POROSITY (DEFINA METHOD)""", - ), -# ----------------------------------- - b_OPTION_FOR_THE_TREATMENT_OF_TIDAL_FLATSG = BLOC(condition="OPTION_FOR_THE_TREATMENT_OF_TIDAL_FLATS == 'EQUATIONS SOLVED EVERYWHERE WITH CORRECTION ON TIDAL FLATS'", -# ----------------------------------- -# ----------------------------------- - TREATMENT_OF_NEGATIVE_DEPTHS = SIMP(statut ='o', -# ----------------------------------- - typ = 'TXM', - into = ["SMOOTHING","FLUX CONTROL","FLUX CONTROL (ERIA)"], - defaut = "SMOOTHING", - fr = """Seulement avec OPTION DE TRAITEMENT DES BANCS DECOUVRANTS = 1 - 0 : pas de traitement - 1 : lissage - 2 : limitation des flux, approche par segment - 3 : limitation des flux, approche par triangle""", - ang = """Only with OPTION FOR THE TREATMENT OF TIDAL FLATS=1 - 0:no treatment - 1:smoothing - 2:flux control, by segment - 3:flux control, by element""", - ), - ), -# ----------------------------------- - THRESHOLD_FOR_NEGATIVE_DEPTHS = SIMP(statut ='o', -# ----------------------------------- - typ = 'R', - defaut = 0., - fr = """En dessous du seuil, les hauteurs negatives sont lissees""", - ang = """Below the threshold the negative depths are smoothed""", - ), -# ----------------------------------- - THRESHOLD_DEPTH_FOR_RECEDING_PROCEDURE = SIMP(statut ='o', -# ----------------------------------- - typ = 'R', - defaut = 0., - fr = """Si > 0., declenche la procedure de ressuyage qui evite le -franchissement parasite des digues mal discretisees""", - ang = """If > 0., will trigger the receding procedure that avoids overwhelming -of dykes which are too loosely discretised""", - ), -# ----------------------------------- - H_CLIPPING = SIMP(statut ='o', -# ----------------------------------- - typ = bool, - defaut = False, - fr = """Determine si l''on desire ou non limiter par valeur inferieure -la hauteur d''eau H (dans le cas des bancs decouvrants par exemple).""", - ang = """Determines whether limiting the water depth H by a lower value -desirable or not. (for instance in the case of tidal flats) -This key-word may have an influence on mass conservation since -the truncation of depth is equivalent to adding mass.""", - ), -# ----------------------------------- - b_H_CLIPPINGG = BLOC(condition="H_CLIPPING == True", -# ----------------------------------- -# ----------------------------------- - MINIMUM_VALUE_OF_DEPTH = SIMP(statut ='o', -# ----------------------------------- - typ = 'R', - defaut = 0., - fr = """Fixe la valeur minimale de a lorsque l''option CLIPPING DE H est -activee.""", - ang = """Sets the minimum H value when option H CLIPPING is implemented. Not -fully implemented.""", - ), - ), - ), -) -# ----------------------------------------------------------------------- -TRACERS = PROC(nom= "TRACERS",op = None, -# ----------------------------------------------------------------------- -# ----------------------------------- - BOUNDARY_CONDITIONS_FOR_TRACERS = FACT(statut='f', -# ----------------------------------- -# ----------------------------------- - PRESCRIBED_TRACERS_VALUES = SIMP(statut ='o', -# ----------------------------------- - typ = 'R', max='**', - fr = """Valeurs du traceur imposees aux frontieres liquides entrantes. -Lire la partie du mode d''emploi consacree aux conditions aux limites""", - ang = """Tracer values prescribed at the inflow boundaries. -Read the usermanual section dealing with the boundary conditions""", - ), - ), -# ----------------------------------- - SETTING = FACT(statut='o', -# ----------------------------------- -# ----------------------------------- - NUMBER_OF_TRACERS = SIMP(statut ='o', -# ----------------------------------- - typ = 'I', - defaut = 0, - fr = """Definit le nombre de traceurs.""", - ang = """Defines the number of tracers""", - ), -# ----------------------------------- - NAMES_OF_TRACERS = SIMP(statut ='o', -# ----------------------------------- - typ = 'TXM', min=0, max='**', - fr = """Noms des traceurs en 32 caracteres, 16 pour le nom 16 pour l''unite""", - ang = """Name of tracers in 32 characters, 16 for the name, 16 for the unit.""", - ), -# ----------------------------------- - INITIAL_VALUES_OF_TRACERS = SIMP(statut ='o', -# ----------------------------------- - typ = 'R', min=0, max='**', - defaut = [0.,0.], - fr = """Fixe la valeur initiale du traceur.""", - ang = """Sets the initial value of the tracer.""", - ), -# ----------------------------------- - DENSITY_EFFECTS = SIMP(statut ='o', -# ----------------------------------- - typ = bool, - defaut = False, - fr = """PRISE EN COMPTE DU GRADIENT HORIZONTAL DE DENSITE - LE TRACEUR EST ALORS LA SALINITE""", - ang = """THE HORIZONTAL GRADIENT OF DENSITY IS TAKEN INTO ACCOUNT - THE TRACER IS THEN THE SALINITY""", - ), -# ----------------------------------- - b_DENSITY_EFFECTSG = BLOC(condition="DENSITY_EFFECTS == True", -# ----------------------------------- -# ----------------------------------- - MEAN_TEMPERATURE = SIMP(statut ='o', -# ----------------------------------- - typ = 'R', - defaut = 20., - fr = """TEMPERATURE DE REFERENCE POUR LE CALCUL DES EFFETS DE DENSITE -A UTILISER AVEC LE MOT-CLE \telkey{EFFETS DE DENSITE}""", - ang = """REFERENCE TEMPERATURE FOR DENSITY EFFECTS -TO BE USED WITH THE KEY-WORD \telkey{DENSITY EFFECTS}""", - ), - ), -# ----------------------------------- - b_DENSITY_EFFECTSH = BLOC(condition="DENSITY_EFFECTS == True", -# ----------------------------------- -# ----------------------------------- - Consigne = SIMP(statut ="o", homo="information", typ="TXM", -# ----------------------------------- - defaut = "The first tracer must be the salinity in kg/m3"), - ), - ), -# ----------------------------------- - SOLVER_TRA = FACT(statut='o', -# ----------------------------------- -# ----------------------------------- - SOLVER_FOR_DIFFUSION_OF_TRACERS = SIMP(statut ='o', -# ----------------------------------- - typ = 'TXM', min=0, max='**', - into = ["conjugate gradient","conjugate residual","conjugate gradient on a normal equation","minimum error","squared conjugate gradient","cgstab","gmres (see option for the solver for tracer diffusion)","direct"], - defaut = ["conjugate gradient","conjugate gradient"], - fr = """ 1 : gradient conjugue 2 : residu conjugue 3 : gradient conjugue sur -equation normale 4 : erreur minimale 5 : gradient conjugue carre""", - ang = """ 1 : conjugate gradient 2 : conjugate gradient 3 : conjugate gradient -on a normal equation 4 : minimum error 5 : squared conjugate gradient 6 -: cgstab 7 : gmres (see option for the solver for tracer diffusion) 8 : -direct""", - ), -# ----------------------------------- - SOLVER_OPTION_FOR_TRACERS_DIFFUSION = SIMP(statut ='o', -# ----------------------------------- - typ = 'I', min=0, max='**', - defaut = [2], - fr = """si le solveur est GMRES (7) le mot cle est la dimension de -l''espace de KRILOV (valeurs conseillees entre 2 et 15)""", - ang = """WHEN GMRES (7) IS CHOSEN, DIMENSION OF THE KRYLOV SPACE -TRY VALUES BETWEEN 2 AND 15""", - ), -# ----------------------------------- - PRECONDITIONING_FOR_DIFFUSION_OF_TRACERS = SIMP(statut ='o', -# ----------------------------------- - typ = 'TXM', min=0, max='**', - into = ["no preconditioning ","diagonal","crout","diagonal and crout"], - defaut = ["diagonal"], - fr = """Permet de preconditionner le systeme relatif au traceur. -Memes definition et possibilites que pour le mot-cle -PRECONDITIONNEMENT. - 0 : pas de preconditionnement; - 2 : preconditionnement diagonal. - 7 : Crout par element""", - ang = """Preconditioning of the linear system in the tracer diffusion -step. -Same definition and possibilities as for the keyword PRECONDITIONING - 0: no preconditioning - 2: diagonal preconditioning - 7: Crout''s preconditioning per element.""", - ), - ), -# ----------------------------------- - ACCURACY_TRA = FACT(statut='o', -# ----------------------------------- -# ----------------------------------- - ACCURACY_FOR_DIFFUSION_OF_TRACERS = SIMP(statut ='o', -# ----------------------------------- - typ = 'R', - defaut = 1.E-6, - fr = """Fixe la precision demandee pour le calcul de la diffusion -du traceur.""", - ang = """Sets the required accuracy for computing the tracer -diffusion.""", - ), -# ----------------------------------- - MAXIMUM_NUMBER_OF_ITERATIONS_FOR_DIFFUSION_OF_TRACERS = SIMP(statut ='o', -# ----------------------------------- - typ = 'I', - defaut = 60, - fr = """ Limite le nombre d''iterations du solveur a chaque pas de temps pour -le calcul de la diffusion du traceur.""", - ang = """Limits the number of solver iterations at each time step for -the diffusion of tracer.""", - ), - ), -# ----------------------------------- - SOURCES_TRA = FACT(statut='f', -# ----------------------------------- -# ----------------------------------- - VALUES_OF_THE_TRACERS_AT_THE_SOURCES = SIMP(statut ='o', -# ----------------------------------- - typ = 'R', min=0, max='**', - fr = """Valeurs des traceurs a chacune des sources""", - ang = """Values of the tracers at the sources""", - ), - ), -# ----------------------------------- - METEOROLOGY_TRA = FACT(statut='f', -# ----------------------------------- -# ----------------------------------- - VALUES_OF_TRACERS_IN_THE_RAIN = SIMP(statut ='o', -# ----------------------------------- - typ = 'R', min=0, max='**', - fr = """generalement ce traceur est la temperature, dans ce cas -cette valeur est a modifier, sinon la valeur 0 est raisonnable""", - ang = """most often, this tracer is temperature, in this case -this value should be modified, otherwise, default value of 0 seems -reasonable""", - ), - ), -# ----------------------------------- - NUMERICAL = FACT(statut='o', -# ----------------------------------- -# ----------------------------------- - ADVECTION_OF_TRACERS = SIMP(statut ='o', -# ----------------------------------- - typ = bool, - defaut = True, - fr = """Prise en compte ou non de la convection du traceur passif.""", - ang = """The advection of the passive tracer is taken into account -or ignored.""", - ), -# ----------------------------------- - b_ADVECTION_OF_TRACERSG = BLOC(condition="ADVECTION_OF_TRACERS == True", -# ----------------------------------- -# ----------------------------------- - SCHEME_FOR_ADVECTION_OF_TRACERS = SIMP(statut ='f', -# ----------------------------------- - typ = 'TXM', min=0, max='**', - into = ["NO ADVECTION","CHARACTERISTICS","EXPLICIT + SUPG","EXPLICIT LEO POSTMA","EXPLICIT + MURD SCHEME N","EXPLICIT + MURD SCHEME PSI","LEO POSTMA FOR TIDAL FLATS","N-SCHEME FOR TIDAL FLATS","ERIA SCHEME FOR TIDAL FLATS"], - defaut = ["CHARACTERISTICS"], - fr = """Choix du schema de convection pour les traceurs, -remplace FORME DE LA CONVECTION""", - ang = """Choice of the advection scheme for the tracers, -replaces TYPE OF ADVECTION""", - ), - ), -# ----------------------------------- - IMPLICITATION_COEFFICIENT_OF_TRACERS = SIMP(statut ='o', -# ----------------------------------- - typ = 'R', - defaut = 0.6, - fr = """Fixe la valeur du coefficient d''implicitation du traceur""", - ang = """Sets the value of the implicitation coefficient -for the tracer""", - ), -# ----------------------------------- - DIFFUSION_OF_TRACERS = SIMP(statut ='o', -# ----------------------------------- - typ = bool, - defaut = True, - fr = """Prise en compte ou non de la diffusion du traceur passif.""", - ang = """The diffusion of the passive tracer is taken into account -or ignored.""", - ), -# ----------------------------------- - b_DIFFUSION_OF_TRACERSG = BLOC(condition="DIFFUSION_OF_TRACERS == True", -# ----------------------------------- -# ----------------------------------- - COEFFICIENT_FOR_DIFFUSION_OF_TRACERS = SIMP(statut ='o', -# ----------------------------------- - typ = 'R', min=0, max='**', - defaut = [1.E-6], - fr = """Fixe la valeur du coefficient de diffusion du traceur. -L''influence de ce parametre sur l''evolution du traceur dans -le temps est importante.""", - ang = """Sets the value of the tracer diffusivity.""", - ), - ), -# ----------------------------------- - OPTION_FOR_THE_DIFFUSION_OF_TRACERS = SIMP(statut ='o', -# ----------------------------------- - typ = 'TXM', min=0, max='**', - into = ["div( nu grad(T) )","1/h div ( h nu grad(T)"], - defaut = ["div( nu grad(T) )"], - fr = """1: Diffusion de la forme div( nu grad(T) ) -2: Diffusion de la forme 1/h div ( h nu grad(T) )""", - ang = """1: Diffusion in the form div( nu grad(T) ) -2: Diffusion in the form 1/h div ( h nu grad(T) )""", - ), -# ----------------------------------- - SCHEME_OPTION_FOR_ADVECTION_OF_TRACERS = SIMP(statut ='o', -# ----------------------------------- - typ = 'I', min=0, max='**', - defaut = [1], - fr = """Si present remplace et a priorite sur : -OPTION POUR LES CARACTERISTIQUES -OPTION DE SUPG -Si schema PSI ou N : 1=explicite 2=predicteur-correcteur -3=predicteur-correcteur deuxieme ordre en temps -4=implicite""", - ang = """If present replaces and has priority over: -OPTION FOR CHARACTERISTICS -SUPG OPTION -if N or PSI SCHEME: 1=explicit 2=predictor-corrector -3= predictor-corrector second-order in time 4= implicit""", - ), -# ----------------------------------- - MASS_LUMPING_ON_TRACERS = SIMP(statut ='o', -# ----------------------------------- - typ = 'R', - defaut = 0., - fr = """Fixe le taux de mass-lumping effectue sur le traceur.""", - ang = """Sets the amount of mass-lumping that is performed on - the tracer.""", - ), - ), -) -# ----------------------------------------------------------------------- -PARTICLE_TRANSPORT = PROC(nom= "PARTICLE_TRANSPORT",op = None, -# ----------------------------------------------------------------------- -# ----------------------------------- - DROGUES = FACT(statut='f', -# ----------------------------------- -# ----------------------------------- - NUMBER_OF_DROGUES = SIMP(statut ='o', -# ----------------------------------- - typ = 'I', - defaut = 0, - fr = """Permet d''effectuer un suivi de flotteurs""", - ang = """Number of drogues in the computation. -The user must then fill the subroutine FLOT specifying -the coordinates of the starting points, their departure -and arrival times. -The trajectory of drogues is recorded in the BINARY RESULTS -FILE that must be given in the steering file""", - ), -# ----------------------------------- - b_NUMBER_OF_DROGUESG = BLOC(condition="NUMBER_OF_DROGUES != 0", -# ----------------------------------- -# ----------------------------------- - DROGUES_FILE = SIMP(statut ='o', -# ----------------------------------- - typ = ('Fichier','All Files (*)','Sauvegarde'), - defaut = '', - fr = """Fichier de resultat avec les positions des flotteurs""", - ang = """Results file with positions of drogues""", - ), -# ----------------------------------- - PRINTOUT_PERIOD_FOR_DROGUES = SIMP(statut ='o', -# ----------------------------------- - typ = 'I', - defaut = 1, - fr = """Nombre de pas de temps entre 2 sorties de positions de -flotteurs dans le fichier des resultats binaire supplementaire -N affecte pas la qualite du calcul de la trajectoire""", - ang = """Number of time steps between 2 outputs of drogues -positions in the binary file""", - ), - ), - ), -# ----------------------------------- - ALGAES = FACT(statut='f', -# ----------------------------------- -# ----------------------------------- - ALGAE_TRANSPORT_MODEL = SIMP(statut ='o', -# ----------------------------------- - typ = bool, - defaut = False, - fr = """Si oui, les flotteurs seront des algues""", - ang = """If yes, the floats or particles will be algae""", - ), -# ----------------------------------- - b_ALGAE_TRANSPORT_MODELG = BLOC(condition="ALGAE_TRANSPORT_MODEL == True", -# ----------------------------------- -# ----------------------------------- - ALGAE_TYPE = SIMP(statut ='o', -# ----------------------------------- - typ = 'TXM', - into = ["SPHERE","IRIDAEA FLACCIDA (CLOSE TO ULVA)","PELVETIOPSIS LIMITATA","GIGARTINA LEPTORHYNCHOS"], - defaut = "SPHERE", - fr = """Type des algues. Pour le choix 1 les algues seront -modelisees comme des spheres, pour les autres choix voir Gaylord -et al. (1994).""", - ang = """Algae type. For choice 1 the algae particles will be -modeled as spheres, and for the other choices see Gaylord et -al. (1994)""", - ), -# ----------------------------------- - DIAMETER_OF_ALGAE = SIMP(statut ='o', -# ----------------------------------- - typ = 'R', - defaut = 0.1, - fr = """Diametre des algues en m""", - ang = """Diametre of algae in m""", - ), -# ----------------------------------- - DENSITY_OF_ALGAE = SIMP(statut ='o', -# ----------------------------------- - typ = 'R', - defaut = 1050., - fr = """Masse volumique des algues en kg/m3""", - ang = """Density of algae in kg/m3""", - ), -# ----------------------------------- - THICKNESS_OF_ALGAE = SIMP(statut ='o', -# ----------------------------------- - typ = 'R', - defaut = 0.01, - fr = """Epaisseur des algues en m""", - ang = """Thickness of algae in m""", - ), - ), - ), -# ----------------------------------- - OIL_SPILL = FACT(statut='f', -# ----------------------------------- -# ----------------------------------- - OIL_SPILL_MODEL = SIMP(statut ='o', -# ----------------------------------- - typ = bool, - defaut = False, - fr = """POUR DECLENCHER LE MODELE DE DERIVE DE NAPPES, DANS -CE CAS LE FICHIER DE COMMANDES MIGRHYCAR EST NECESSAIRE""", - ang = """WILL TRIGGER THE OIL SPILL MODEL, IN THIS CASE -THE MIGRHYCAR STEERING FILE IS NEEDED""", - ), -# ----------------------------------- - b_OIL_SPILL_MODELG = BLOC(condition="OIL_SPILL_MODEL == True", -# ----------------------------------- -# ----------------------------------- - OIL_SPILL_STEERING_FILE = SIMP(statut ='o', -# ----------------------------------- - typ = ('Fichier','All Files (*)'), - defaut = '', - fr = """Contient les donnees pour le modele de derive de nappes""", - ang = """Contains data for the oil spill model""", - ), - ), - ), -# ----------------------------------- - BROWNIAN_MOTION = FACT(statut='f', -# ----------------------------------- -# ----------------------------------- - STOCHASTIC_DIFFUSION_MODEL = SIMP(statut ='o', -# ----------------------------------- - typ = 'TXM', - into = ["No model","brownian movement"], - defaut = "No model", - fr = """Pour les particules : flotteurs, hydrocarbures""", - ang = """Meant for particles: drogues, oil spills""", - ), - ), -# ----------------------------------- - LAGRANGIAN_DRIFTS = FACT(statut='f', -# ----------------------------------- -# ----------------------------------- - NUMBER_OF_LAGRANGIAN_DRIFTS = SIMP(statut ='o', -# ----------------------------------- - typ = 'I', - defaut = 0, - fr = """Permet d''effectuer simultanement plusieurs calculs de derives -lagrangiennes initiees a des pas differents""", - ang = """Provided for performing several computations of lagrangian -drifts starting at different times. -Add A and G in the VARIABLES FOR GRAPHIC PRINTOUTS key-word""", - ), -# ----------------------------------- - b_NUMBER_OF_LAGRANGIAN_DRIFTSG = BLOC(condition="NUMBER_OF_LAGRANGIAN_DRIFS != 0", -# ----------------------------------- -# ----------------------------------- - Consigne = SIMP(statut ="o", homo="information", typ="TXM", -# ----------------------------------- - defaut = "Add 'drift along x (m)' and 'drift along y (m)' in VARIABLES FOR GRAPHIC PRINTOUTS"), - ), - ), -) -# ----------------------------------------------------------------------- -HYDRAULIC_STRUCTURES = PROC(nom= "HYDRAULIC_STRUCTURES",op = None, -# ----------------------------------------------------------------------- -# ----------------------------------- - WEIRS = FACT(statut='f', -# ----------------------------------- -# ----------------------------------- - NUMBER_OF_WEIRS = SIMP(statut ='o', -# ----------------------------------- - typ = 'I', - defaut = 0, - fr = """Nombre de seuils qui seront traites par des conditions aux -limites. Ces seuils doivent etre decrits comme des frontieres du -domaine de calcul, et leurs caracteristiques sont donnees dans le -fichier de donnees des seuils (voir la documentation ecrite)""", - ang = """Number of weirs that will be treated by boundary conditions. -They must be described as boundaries of the domain and their features -are given in the weir data file (see written documentation)""", - ), -# ----------------------------------- - b_NUMBER_OF_WEIRSG = BLOC(condition="NUMBER_OF_WEIRS != 0", -# ----------------------------------- -# ----------------------------------- - WEIRS_DATA_FILE = SIMP(statut ='o', -# ----------------------------------- - typ = ('Fichier','All Files (*)'), - defaut = '', - fr = """Fichier de description des seuils presents dans le modele""", - ang = """Description of weirs existing in the model""", - ), -# ----------------------------------- - TYPE_OF_WEIRS = SIMP(statut ='o', -# ----------------------------------- - typ = 'TXM', - into = ["HORIZONTAL WITH SAME NUMBER OF NODES UPSTREAM/DOWNSTREAM","GENERAL"], - defaut = "HORIZONTAL WITH SAME NUMBER OF NODES UPSTREAM/DOWNSTREAM", - fr = """Methode de traitement des seuils. Deux Solutions: -- HORIZONTAL AVEC MEME NOMBRE DE NOEUDS AMONT/AVAL (Solution historique - avec bord) -- GENERALE (Nouvelle solution avec pts sources)""", - ang = """Method for treatment of weirs. Two options: -- HORIZONTAL WITH SAME NUMBER OF NODES UPSTREAM/DOWNSTREAM (Historical - solution with bord) -- GENERAL (New solution with sources points""", - ), - ), - ), -# ----------------------------------- - CULVERTS = FACT(statut='f', -# ----------------------------------- -# ----------------------------------- - NUMBER_OF_CULVERTS = SIMP(statut ='o', -# ----------------------------------- - typ = 'I', - defaut = 0, - fr = """Nombre de buses ou ponts traites comme des termes sources ou -puits. Ces buses doivent etre decrits comme des sources dans le -fichier cas. Leurs caracteristiques sont donnees dans le -fichier de donnees des buses (voir la documentation ecrite)""", - ang = """Number of culverts, tubes or bridges treated as source terms. -They must be described as sources in the domain and their features -are given in the culverts data file (see written documentation)""", - ), -# ----------------------------------- - b_NUMBER_OF_CULVERTSG = BLOC(condition="NUMBER_OF_CULVERTS != 0", -# ----------------------------------- -# ----------------------------------- - CULVERTS_DATA_FILE = SIMP(statut ='o', -# ----------------------------------- - typ = ('Fichier','All Files (*)'), - defaut = '', - fr = """Fichier de description des buses/ponts presents dans le modele""", - ang = """Description of culverts/tubes/bridges existing in the model""", - ), - ), -# ----------------------------------- - OPTION_FOR_CULVERTS = SIMP(statut ='f', -# ----------------------------------- - typ = 'I', - defaut = 1, - fr = """Option pour le traitement des buses. Il existe deux formulations -dans Telemac""", - ang = """Option for the treatment of culverts. There are two options in -Telemac""", - ), - ), -# ----------------------------------- - BREACHES = FACT(statut='f', -# ----------------------------------- -# ----------------------------------- - BREACH = SIMP(statut ='o', -# ----------------------------------- - typ = bool, - defaut = False, - fr = """Prise en compte de breches dans le calcul par -modification altimetrique dans le maillage. La description -des breches se fait avec le fichier de donnees des breches.""", - ang = """Take in account some breaches during the computation -by modifying the bottom level of the mesh. Brech description -is done with the breaches data file.""", - ), -# ----------------------------------- - b_BREACHG = BLOC(condition="BREACH == True", -# ----------------------------------- -# ----------------------------------- - BREACHES_DATA_FILE = SIMP(statut ='o', -# ----------------------------------- - typ = ('Fichier','All Files (*)'), - defaut = '', - fr = """Fichier de description des breches""", - ang = """Description of breaches""", - ), - ), - ), -) -# ----------------------------------------------------------------------- -TIDES = PROC(nom= "TIDES",op = None, -# ----------------------------------------------------------------------- -# ----------------------------------- - BINARY_DATABASE_1_FOR_TIDE = SIMP(statut ='f', -# ----------------------------------- - typ = ('Fichier','All Files (*)'), - defaut = '', - fr = """Base de donnees binaire 1 tiree du fichier du modele de maree. - Dans le cas des donnees satellitaires de TPXO, ce fichier correspond - aux donnees de niveau d''eau, par exemple h\_tpxo7.2""", - ang = """Binary database 1 extracted from the tidal model file. - In the case of the TPXO satellite altimetry model, this file should - be for free surface level, for instance h\_tpxo7.2""", - ), -# ----------------------------------- - BINARY_DATABASE_2_FOR_TIDE = SIMP(statut ='f', -# ----------------------------------- - typ = ('Fichier','All Files (*)'), - defaut = '', - fr = """Base de donnees binaire 2 tiree du fichier du modele de maree. - Dans le cas des donnees satellitaires de TPXO, ce fichier correspond - aux donnees de vitesse de marrees, par exemple u\_tpxo7.2""", - ang = """Binary database 2 extracted from the tidal model file. - In the case of the TPXO satellite altimetry model, this file should - be for tidal velocities, for instance u\_tpxo7.2""", - ), -# ----------------------------------- - GEOGRAPHIC_SYSTEM = SIMP(statut ='o', -# ----------------------------------- - typ = 'TXM', - into = ["NO DEFAULT VALUE","DEFINED BY USER","WGS84 LONGITUDE/LATITUDE IN REAL DEGREES","WGS84 NORTHERN UTM","WGS84 SOUTHERN UTM","LAMBERT","MERCATOR FOR TELEMAC"], - defaut = "NO DEFAULT VALUE", - fr = """Systeme de coordonnees geographiques dans lequel est construit -le modele numerique. -Indiquer la zone correspondante avec le mot-cle. -Indique le systeme de coordonnees geographiques dans lequel est -construit le modele numerique. Les choix possibles sont : -\begin{itemize} -\item 0 : defini par l''utilisateur ; -\item 1 : WGS84 longitude/latitude en degres reels ; -\item 2 : WGS84 nord UTM ; -\item 3 : WGS84 sud UTM ; -\item 4 : Lambert ; -\item 5 : projection Mercator. -\end{itemize}""", - ang = """Geographic coordinates system in which the numerical model is -built. Indicate the corresponding zone with the keyword. -The possible choices are: -\begin{itemize} -\item 0: defined by the user, -\item 1: WGS84 longitude/latitude in real degrees, -\item 2: WGS84 Northern UTM, -\item 3: WGS84 Southern UTM, -\item 4: Lambert, -\item 5: Mercator projection. -\end{itemize}""", - ), -# ----------------------------------- - b_GEOGRAPHIC_SYSTEMG = BLOC(condition="GEOGRAPHIC_SYSTEM in ['WGS84 NOTHERN UTM','WGS84 SOUTHERN UTM','LAMBERT']", -# ----------------------------------- -# ----------------------------------- - ZONE_NUMBER_IN_GEOGRAPHIC_SYSTEM = SIMP(statut ='f', -# ----------------------------------- - typ = 'TXM', - into = ["NO DEFAULT VALUE","LAMBERT 1 NORTH","LAMBERT 2 CENTER","LAMBERT 3 SOUTH","LAMBERT 4 CORSICA","LAMBERT 2 EXTENDED","LAMBERT 93","UTM ZONE, E.G."], - defaut = "NO DEFAULT VALUE", - fr = """Numero de zone (fuseau ou type de projection) lors de -l''utilisation d''une projection plane. Indiquer le systeme -geographique dans lequel est construit le modele numerique avec le -mot-cle \telkey{SYSTEME GEOGRAPHIQUE}. -Les choix possibles sont : -\begin{itemize} -\item 1 : Lambert 1 nord ; -\item 2 : Lambert 2 centre ; -\item 3 : Lambert 3 sud ; -\item 4 : Lambert 4 Corse ; -\item 22 : Lambert 2 etendu ; -\item 93 : Lambert 93 ; -\item X : Valeur UTM de la zone WGS84 (X est le numero de la zone). -\end{itemize}""", - ang = """Number of zone when using a plane projection. -Indicate the geographic system in which the numerical model is built -with the keyword \telkey{GEOGRAPHIC SYSTEM}. -Possible choices are: -\begin{itemize} -\item 1: Lambert 1 north, -\item 2: Lambert 2 center, -\item 3: Lambert 3 south, -\item 4: Lambert 4 Corsica, -\item 22: Lambert 22 extended, -\item 93: Lambert 93 extended, -\item X: UTM zone with WGS84 (X is the number of the zone). -\end{itemize}""", - ), - ), -# ----------------------------------- - LAMBERT_93_CONVERSION_FILE = SIMP(statut ='f', -# ----------------------------------- - typ = ('Fichier','All Files (*)'), - defaut = '', - fr = """Nom du fichier GR3DF97A, grille de conversion pour Lambert 93.""", - ang = """Name of file GR3DF97A, conversion grid for Lambert 93.""", - ), -# ----------------------------------- - COEFFICIENT_TO_CALIBRATE_SEA_LEVEL = SIMP(statut ='o', -# ----------------------------------- - typ = 'R', - defaut = 0., - fr = """Coefficient pour ajuster le niveau de mer""", - ang = """Coefficient to calibrate the sea level""", - ), -# ----------------------------------- - GLOBAL_NUMBER_OF_THE_POINT_TO_CALIBRATE_HIGH_WATER = SIMP(statut ='f', -# ----------------------------------- - typ = 'I', - defaut = 0, - fr = """Numero global du point par rapport auquel les ondes de maree sont -dephasees pour debuter le calcul par une pleine mer (en marees -schematiques seulement). Ne concerne que les bases de constantes -harmoniques de type TPXO.""", - ang = """Global number of the point with respect to which the tidal -constituents have their phase shifted to start the calculation with a -high water (for schematic tides only). Only harmonic constants databases -like TPXO are concerned.""", - ), -# ----------------------------------- - MINOR_CONSTITUENTS_INFERENCE = SIMP(statut ='f', -# ----------------------------------- - typ = bool, - defaut = False, - fr = """Pour la base de donnees TPXO uniquement. -Interpolation de composantes harmoniques mineures -a partir de celles lues dans les fichiers d''entree -lies aux mots-cles BASE BINAIRE 1 DE DONNEES DE MAREE -et BASE BINAIRE 2 DE DONNEES DE MAREE""", - ang = """For TPXO tidal data base only. -Inference of minor constituents from the one read in input files -linked to keywords BINARY DATABASE 1 FOR TIDE -and BINARY DATABASE 2 FOR TIDE""", - ), -# ----------------------------------- - BOUNDARY_CONDITIONS = FACT(statut='o', -# ----------------------------------- -# ----------------------------------- - OPTION_FOR_TIDAL_BOUNDARY_CONDITIONS = SIMP(statut ='o', -# ----------------------------------- - typ = 'TXM', max='**', - into = ["No tide","Real tide (recommended methodology)","Astronomical tide","Mean spring tide","Mean tide","Mean neap tide","Astronomical neap tide","Real tide (methodology before 2010)"], - fr = """Option pour les conditions aux limites de maree. Pour des marees -reelles, l option 1 est recommandee. Depuis la version 7.1, ce mot-cle -est un tableau avec une valeur donnee par frontiere liquide, separee par -point-virgules. Ceci permet d''avoir des conditions de maree (ou pas) -calculees sur des frontieres liquides avec vitesses ou hauteur d eau -imposees. Ca evite un conflit lors de l utilisation de seuils dans le -domaine. 0 est le code pour des conditions autres que des conditions de -maree. ATTENTION depuis la version 7.1 ! Les anciens modeles doivent -etre changes si la frontiere de maree n a pas le numero 1. Dans ce cas, -le mot-cle doit etre change et plus de valeurs doivent etre donnees. -Calage possible par les mots-cles COEFFICIENT POUR CALAGE EN MARNAGE et -COEFFICIENT POUR CALAGE EN NIVEAU.""", - ang = """Option for tidal boundary conditions. For real tides, option 1 is -recommended. This keyword has been an array with a value given per -liquid boundary, separated by semicolons, since version 7.1. This -enables to have tidal conditions (or not) computed on liquid boundaries -with prescribed velocities or depths, avoiding a clash when using weirs -in the domain. 0 codes for conditions other than tidal. BEWARE since -version 7.1! Old models must be changed if their tidal boundary is not -number 1. In that case this keyword must be changed and more values -given. Possible calibration with the keywords COEFFICIENT TO ADJUST -TIDAL RANGE, COEFFICENT TO CALIBRATE TIDAL VELOCITIES, and COEFFICIENT -TO ADJUST SEA LEVEL.""", - ), -# ----------------------------------- - TIDAL_DATA_BASE = SIMP(statut ='o', -# ----------------------------------- - typ = 'TXM', - into = ["NO DEFAULT VALUE","JMJ","TPXO","MISCELLANEOUS (LEGOS-NEA, FES20XX, PREVIMER...)"], - defaut = "NO DEFAULT VALUE", - fr = """Pour JMJ, renseigner la localisation du fichier bdd\_jmj et geofin -dans les mots-cles BASE DE DONNEES DE MAREE et FICHIER DU MODELE DE -MAREE. Pour TPXO, LEGOS-NEA, FES20XX et PREVIMER, l''utilisateur doit -telecharger les fichiers de constantes harmoniques sur internet""", - ang = """For JMJ, indicate the location of the files bdd\_jmj and geofin with -keywords TIDE DATA BASE and TIDAL MODEL FILE. For TPXO, LEGOS-NEA, -FES20XX and PREVIMER, the user has to download files of harmonic -constituents on the internet""", - ), -# ----------------------------------- - b_TIDAL_DATA_BASEG = BLOC(condition="TIDAL_DATA_BASE == 'TPXO'", -# ----------------------------------- - ), -# ----------------------------------- - HARMONIC_CONSTANTS_FILE = SIMP(statut ='f', -# ----------------------------------- - typ = ('Fichier','All Files (*)'), - defaut = '', - fr = """Constantes harmoniques extraites du fichier du modele de maree""", - ang = """Harmonic constants extracted from the tidalmodel file""", - ), -# ----------------------------------- - TIDAL_MODEL_FILE = SIMP(statut ='f', -# ----------------------------------- - typ = ('Fichier','All Files (*)'), - defaut = '', - fr = """Fichier de geometrie du modele dont sont extraites -les constantes harmoniques""", - ang = """Geometry file of the model from which harmonic constituents -are extracted""", - ), -# ----------------------------------- - TIDAL_MODEL_FILE_FORMAT = SIMP(statut ='f', -# ----------------------------------- - typ = 'TXM', - into = ['SERAFIN?','SERAFIND','MED'], - defaut = 'SERAFIN?', - fr = """Format du \telkey{FICHIER DU MODELE DE MAREE}. -Les valeurs possibles sont : -\begin{itemize} -\item SERAFIN : format standard simple precision pour \tel ; -\item SERAFIND: format standard double precision pour \tel ; -\item MED : format MED double precision base sur HDF5. -\end{itemize}""", - ang = """Format of the \telkey{TIDAL MODEL FILE}. -Possible choices are: -\begin{itemize} -\item SERAFIN : classical single precision format in \tel, -\item SERAFIND: classical double precision format in \tel, -\item MED : MED double precision format based on HDF5. -\end{itemize}""", - ), -# ----------------------------------- - ASCII_DATABASE_FOR_TIDE = SIMP(statut ='f', -# ----------------------------------- - typ = ('Fichier','All Files (*)'), - defaut = '', - fr = """Base de donnees de constantes harmoniques -tirees du fichier du modele de maree. -Ancien nom en version 6.1 : BASE DE DONNEES DE MAREE""", - ang = """Tide data base of harmonic constituents -extracted from the tidal model file. -Old name in 6.1 version: TIDE DATA BASE""", - ), -# ----------------------------------- - COEFFICIENT_TO_CALIBRATE_TIDAL_RANGE = SIMP(statut ='o', -# ----------------------------------- - typ = 'R', - defaut = 1., - fr = """Coefficient pour ajuster le marnage de l''onde de maree -aux frontieres maritimes""", - ang = """Coefficient to calibrate the tidal range of tidal wave -at tidal open boundary conditions""", - ), -# ----------------------------------- - COEFFICIENT_TO_CALIBRATE_TIDAL_VELOCITIES = SIMP(statut ='o', -# ----------------------------------- - typ = 'R', - defaut = 999999., - fr = """Coefficient pour ajuster les composantes de vitesse -de l''onde de maree aux frontieres maritimes. -La valeur par defaut 999999. signifie que c''est la racine carree -du COEFFICIENT DE CALAGE DU MARNAGE qui est prise""", - ang = """Coefficient to calibrate the tidal velocities of tidal wave -at tidal open boundary conditions. -Default value 999999. means that the square root of -COEFFICIENT TO CALIBRATE TIDAL RANGE is taken""", - ), -# ----------------------------------- - LOCAL_NUMBER_OF_THE_POINT_TO_CALIBRATE_HIGH_WATER = SIMP(statut ='f', -# ----------------------------------- - typ = 'I', - defaut = 0, - fr = """Numero local du point entre 1 et le nombre de points de frontiere -maritime (du FICHIER DES CONSTANTES HARMONIQUES) ou les conditions aux -limites de maree sont calculees avec les bases de donnees JMJ, NEA, FES, -PREVIMER (sauf les bases de type TPXO). Les ondes de maree sont -dephasees par rapport a ce point pour debuter le calcul par une pleine -mer (en marees schematiques seulement).""", - ang = """Local number between 1 and the number of tidal boundary points (of the -HARMONIC CONSTANTS FILE) where the tidal boundary conditions are -computed with JMJ, NEA, FES, PREVIMER databases (except TPXO-type -databases). The tidal constituents have their phase shifted with respect -to this point to start the simulation with a high water (for schematic -tides only).""", - ), - ), -# ----------------------------------- - PHYSICAL_PARAMETERS = FACT(statut='o', -# ----------------------------------- -# ----------------------------------- - TIDE_GENERATING_FORCE = SIMP(statut ='o', -# ----------------------------------- - typ = bool, - defaut = False, - fr = """Active la prise en compte de la force generatrice de la maree""", - ang = """The tide generating force is taken into account.""", - ), -# ----------------------------------- - b_TIDE_GENERATING_FORCEG = BLOC(condition="TIDE_GENERATING_FORCE == True", -# ----------------------------------- - ), - ), -) -# ----------------------------------------------------------------------- -COUPLING = PROC(nom= "COUPLING",op = None, -# ----------------------------------------------------------------------- -# ----------------------------------- - COUPLING_WITH = SIMP(statut ='o', -# ----------------------------------- - typ = 'TXM', - into = ['SISYPHE','TOMAWAC','DELWAQ'], - defaut = '', - fr = """Liste des codes avec lesquels on couple Telemac-2D - SISYPHE : couplage interne avec Sisyphe - TOMAWAC : couplage interne avec Tomawac - DELWAQ : sortie de fichiers de resultats pour Delwaq""", - ang = """List of codes to be coupled with Telemac-2D - SISYPHE : internal coupling with Sisyphe - TOMAWAC : internal coupling with Tomawac - DELWAQ: will yield results file for Delwaq""", - ), -# ----------------------------------- - NAMES_OF_CLANDESTINE_VARIABLES = SIMP(statut ='f', -# ----------------------------------- - typ = 'TXM', min= 2, max= 2, - fr = """Noms de variables qui ne sont pas utilisees par TELEMAC; -mais qui doivent etre conservees lors de son execution. -Ceci peut etre utilise entre autres lors du couplage de TELEMAC -avec un autre code. -Les variables clandestines sont alors des variables propres a l''autre -code et sont rendues dans le fichier de resultats.""", - ang = """Names of variables that are not used by TELEMAC, but should be -preserved when it is being run. This keyword may be used, for instance -when it if TELEMAC is coupled with another code. Thus, the clandestine -variables belong to the other code and are given back in the results -file.""", - ), -# ----------------------------------- - COUPLING_DIRECTORY = SIMP(statut ='f', -# ----------------------------------- - typ = 'TXM', - defaut = '', - fr = """Nom complet du dossier d echange des fichiers - pour couplage de codes""", - ang = """Name with full path of the directory where the files will - be exchanged for coupling""", - ), -# ----------------------------------- - DELWAQ = FACT(statut='o', -# ----------------------------------- -# ----------------------------------- - DELWAQ_STEERING_FILE = SIMP(statut ='f', -# ----------------------------------- - typ = ('Fichier','All Files (*)','Sauvegarde'), - defaut = '', - fr = """Fichier de resultats pour le couplage avec Delwaq""", - ang = """Results file for coupling with Delwaq""", - ), -# ----------------------------------- - DELWAQ_PRINTOUT_PERIOD = SIMP(statut ='f', -# ----------------------------------- - typ = 'I', - defaut = 1, - fr = """Periode de sortie des resultats pour Delwaq""", - ang = """Printout period for Delwaq file""", - ), -# ----------------------------------- - EXCHANGES_BETWEEN_NODES_DELWAQ_FILE = SIMP(statut ='f', -# ----------------------------------- - typ = ('Fichier','All Files (*)','Sauvegarde'), - defaut = '', - fr = """Fichier de resultats pour le couplage avec Delwaq""", - ang = """Results file for coupling with Delwaq""", - ), -# ----------------------------------- - NODES_DISTANCES_DELWAQ_FILE = SIMP(statut ='f', -# ----------------------------------- - typ = ('Fichier','All Files (*)','Sauvegarde'), - defaut = '', - fr = """Fichier de resultats pour le couplage avec Delwaq""", - ang = """Results file for coupling with Delwaq""", - ), -# ----------------------------------- - BOTTOM_SURFACES_DELWAQ_FILE = SIMP(statut ='f', -# ----------------------------------- - typ = ('Fichier','All Files (*)','Sauvegarde'), - defaut = '', - fr = """Fichier de resultats pour le couplage avec Delwaq""", - ang = """Results file for coupling with Delwaq""", - ), -# ----------------------------------- - VOLUMES_DELWAQ_FILE = SIMP(statut ='f', -# ----------------------------------- - typ = ('Fichier','All Files (*)','Sauvegarde'), - defaut = '', - fr = """Fichier de resultats pour le couplage avec Delwaq""", - ang = """Results file for coupling with Delwaq""", - ), -# ----------------------------------- - EXCHANGE_AREAS_DELWAQ_FILE = SIMP(statut ='f', -# ----------------------------------- - typ = ('Fichier','All Files (*)','Sauvegarde'), - defaut = '', - fr = """Fichier de resultats pour le couplage avec Delwaq""", - ang = """Results file for coupling with Delwaq""", - ), -# ----------------------------------- - VERTICAL_FLUXES_DELWAQ_FILE = SIMP(statut ='f', -# ----------------------------------- - typ = ('Fichier','All Files (*)','Sauvegarde'), - defaut = '', - fr = """Fichier de resultats pour le couplage avec Delwaq""", - ang = """Results file for coupling with Delwaq""", - ), -# ----------------------------------- - VELOCITY_DELWAQ_FILE = SIMP(statut ='f', -# ----------------------------------- - typ = ('Fichier','All Files (*)','Sauvegarde'), - defaut = '', - fr = """Fichier de resultats pour le couplage avec Delwaq""", - ang = """Results file for coupling with Delwaq""", - ), -# ----------------------------------- - DIFFUSIVITY_DELWAQ_FILE = SIMP(statut ='f', -# ----------------------------------- - typ = ('Fichier','All Files (*)','Sauvegarde'), - defaut = '', - fr = """Fichier de resultats pour le couplage avec Delwaq""", - ang = """Results file for coupling with Delwaq""", - ), -# ----------------------------------- - TEMPERATURE_DELWAQ_FILE = SIMP(statut ='f', -# ----------------------------------- - typ = ('Fichier','All Files (*)','Sauvegarde'), - defaut = '', - fr = """Fichier de resultats pour le couplage avec Delwaq""", - ang = """Results file for coupling with Delwaq""", - ), -# ----------------------------------- - SALINITY_DELWAQ_FILE = SIMP(statut ='f', -# ----------------------------------- - typ = ('Fichier','All Files (*)','Sauvegarde'), - defaut = '', - fr = """Fichier de resultats pour le couplage avec Delwaq""", - ang = """Results file for coupling with Delwaq""", - ), -# ----------------------------------- - VELOCITY_FOR_DELWAQ = SIMP(statut ='f', -# ----------------------------------- - typ = bool, - defaut = False, - fr = """Decide de la sortie de la vitesse pour Delwaq""", - ang = """Triggers output of velocity for Delwaq""", - ), -# ----------------------------------- - DIFFUSIVITY_FOR_DELWAQ = SIMP(statut ='f', -# ----------------------------------- - typ = bool, - defaut = False, - fr = """Decide de la sortie du coefficient de diffusion pour Delwaq""", - ang = """Triggers output of diffusion for Delwaq""", - ), -# ----------------------------------- - TEMPERATURE_FOR_DELWAQ = SIMP(statut ='f', -# ----------------------------------- - typ = bool, - defaut = False, - fr = """Decide de la sortie de la temperature pour Delwaq""", - ang = """Triggers output of temperature for Delwaq""", - ), -# ----------------------------------- - SALINITY_FOR_DELWAQ = SIMP(statut ='f', -# ----------------------------------- - typ = bool, - defaut = False, - fr = """Decide de la sortie de la salinite pour Delwaq""", - ang = """Triggers output of salinity for Delwaq""", - ), - ), -# ----------------------------------- - SISYPHE = FACT(statut='o', -# ----------------------------------- -# ----------------------------------- - SISYPHE_STEERING_FILE = SIMP(statut ='f', -# ----------------------------------- - typ = 'TXM', - defaut = '', - fr = """Fichier des parametres de Sisyphe en cas de couplage interne""", - ang = """Sisyphe parameter file in case of internal coupling""", - ), -# ----------------------------------- - COUPLING_PERIOD_FOR_SISYPHE = SIMP(statut ='f', -# ----------------------------------- - typ = 'I', - defaut = 1, - fr = """pour eviter de faire le couplage a chaque pas de temps""", - ang = """to avoid coupling at every time-step""", - ), - ), -# ----------------------------------- - TOMAWAC = FACT(statut='o', -# ----------------------------------- -# ----------------------------------- - TOMAWAC_STEERING_FILE = SIMP(statut ='f', -# ----------------------------------- - typ = 'TXM', - defaut = '', - fr = """Fichier des parametres de Tomawac en cas de couplage interne""", - ang = """Tomawac parameter file in case of internal coupling""", - ), -# ----------------------------------- - COUPLING_PERIOD_FOR_TOMAWAC = SIMP(statut ='f', -# ----------------------------------- - typ = 'I', - defaut = 1, - fr = """pour eviter de faire le couplage a chaque pas de temps""", - ang = """to avoid coupling at every time-step""", - ), - ), -# ----------------------------------- - WAQTEL = FACT(statut='o', -# ----------------------------------- -# ----------------------------------- - WAQTEL_STEERING_FILE = SIMP(statut ='f', -# ----------------------------------- - typ = 'TXM', - defaut = '', - fr = """fichier des parametres physiques pour les processus de qualite d eau -(internes non ceux de DELWAQ)""", - ang = """file for physical parameters of waq processes (local ones of -Telemac-tracer not those of DELWAQ)""", - ), - ), -# ----------------------------------- - KHIONE = FACT(statut='o', -# ----------------------------------- -# ----------------------------------- - KHIONE_STEERING_FILE = SIMP(statut ='f', -# ----------------------------------- - typ = 'TXM', - defaut = '', - fr = """Fichier des parametres physiques pour les processus liees aux glaces""", - ang = """Steering file for physical parameters of ice processes""", - ), - ), -) -# ----------------------------------------------------------------------- -INTERNAL = PROC(nom= "INTERNAL",op = None, -# ----------------------------------------------------------------------- -# ----------------------------------- - LANGUAGE = SIMP(statut ='f', -# ----------------------------------- - typ = 'TXM', - into = ["FRANCAIS","ANGLAIS"], - defaut = "ANGLAIS", - fr = """1 : FRANCAIS 2 : ANGLAIS""", - ang = """1: FRENCH 2: ENGLISH""", - ), -# ----------------------------------- - STEERING_FILE = SIMP(statut ='f', -# ----------------------------------- - typ = ('Fichier','All Files (*)'), - defaut = '', - fr = """Nom du fichier contenant les parametres du calcul a realiser.""", - ang = """Name of the file containing the parameters of the computation -Written by the user.""", - ), -# ----------------------------------- - DICTIONARY = SIMP(statut ='f', -# ----------------------------------- - typ = ('Fichier','All Files (*)'), - defaut = 'telemac2d.dico', - fr = """Dictionnaire des mots cles.""", - ang = """Key word dictionary.""", - ), -# ----------------------------------- - PARTITIONING_TOOL = SIMP(statut ='f', -# ----------------------------------- - typ = 'TXM', - into = ['METIS','SCOTCH','PARMETIS','PTSCOTCH'], - defaut = 'METIS', - fr = """CHOIX DU PARTITIONNEUR -1 : METIS -2 : SCOTCH -3 : PARMETIS -4 : PTSCOTCH -etc...""", - ang = """PARTITIONING TOOL SELECTION -1 : METIS -2 : SCOTCH -3 : PARMETIS -4 : PTSCOTCH -etc...""", - ), -# ----------------------------------- - RELEASE = SIMP(statut ='f', -# ----------------------------------- - typ = 'TXM', - defaut = 'TRUNK', - fr = """Numero de version des bibliotheques utilisees par TELEMAC. -SUR UNE STATION DE TRAVAIL -5 versions sont donnees correspondant a : -TELEMAC,DAMO,UTILE,BIEF,HP""", - ang = """version number of the libraries used by TELEMAC. -ON A WORKSTATION -5 numbers are given, corresponding to the libraries called: -TELEMAC,DAMO,UTILE,BIEF,HP""", - ), -# ----------------------------------- - LIST_OF_FILES = SIMP(statut ='f', -# ----------------------------------- - typ = 'TXM', min=46, max=46, - defaut = 'STEERING FILE;DICTIONARY;FORTRAN FILE;GEOMETRY FILE;BOUNDARY CONDITIONS FILE;RESULTS FILE;PREVIOUS COMPUTATION FILE;BOTTOM TOPOGRAPHY FILE;BINARY DATA FILE 1;BINARY DATA FILE 2;FORMATTED DATA FILE 1;FORMATTED DATA FILE 2;BINARY RESULTS FILE;FORMATTED RESULTS FILE;REFERENCE FILE;LIQUID BOUNDARIES FILE;FRICTION DATA FILE;VOLUMES DELWAQ FILE;EXCHANGE AREAS DELWAQ FILE;VERTICAL FLUXES DELWAQ FILE;SALINITY DELWAQ FILE;VELOCITY DELWAQ FILE;DIFFUSIVITY DELWAQ FILE;BOTTOM SURFACES DELWAQ FILE;EXCHANGES BETWEEN NODES DELWAQ FILE;NODES DISTANCES DELWAQ FILE;TEMPERATURE DELWAQ FILE;DELWAQ STEERING FILE;STAGE-DISCHARGE CURVES FILE;SOURCES FILE;SECTIONS INPUT FILE;SECTIONS OUTPUT FILE;OIL SPILL STEERING FILE;HARMONIC CONSTANTS FILE;TIDAL MODEL FILE;ASCII DATABASE FOR TIDE;BINARY DATABASE 1 FOR TIDE;BINARY DATABASE 2 FOR TIDE;WEIRS DATA FILE;CULVERTS DATA FILE;BREACHES DATA FILE;DROGUES FILE;ZONES FILE;FLUXLINE INPUT FILE;ASCII ATMOSPHERIC DATA FILE;BINARY ATMOSPHERIC DATA FILE', - fr = """Noms des fichiers exploites par le code""", - ang = """File names of the used files""", - ), -# ----------------------------------- - DESCRIPTION_OF_LIBRARIES = SIMP(statut ='f', -# ----------------------------------- - typ = 'TXM', min=11, max=11, - defaut = 'builds|PPP|lib|telemac2dMMMVVV.LLL;builds|PPP|lib|sisypheMMMVVV.LLL;builds|PPP|lib|tomawacMMMVVV.LLL;builds|PPP|lib|nestorMMMVVV.LLL;builds|PPP|lib|waqtelMMMVVV.LLL;builds|PPP|lib|stbtelMMMVVV.LLL;builds|PPP|lib|biefMMMVVV.LLL;builds|PPP|lib|hermesMMMVVV.LLL;builds|PPP|lib|damoMMMVVV.LLL;builds|PPP|lib|parallelMMMVVV.LLL;builds|PPP|lib|specialMMMVVV.LLL', - fr = """Description des librairies de T2D""", - ang = """LIBRARIES description""", - ), -# ----------------------------------- - DEFAULT_EXECUTABLE = SIMP(statut ='f', -# ----------------------------------- - typ = 'TXM', - defaut = 'builds|PPP|bin|telemac2dMMMVVV.exe', - fr = """Executable par defaut de T2D""", - ang = """Default executable for T2D""", - ), -# ----------------------------------- - DEFAULT_PARALLEL_EXECUTABLE = SIMP(statut ='f', -# ----------------------------------- - typ = 'TXM', - defaut = 'builds|PPP|bin|telemac2dMMMVVV.exe', - fr = """Executable parallele par defaut de T2D""", - ang = """Default parallel executable for T2D""", - ), -) -# ----------------------------------------------------------------------- -MISCELLANEOUS = PROC(nom= "MISCELLANEOUS",op = None, -# ----------------------------------------------------------------------- - UIinfo = {"groupes": ("CACHE")}, -# ----------------------------------- - NESTOR_ACTION_FILE = SIMP(statut ='f', -# ----------------------------------- - typ = ('Fichier','All Files (*)'), max='**', - defaut = '', - fr = """Nom du fichier de commandes de nestor""", - ang = """Name of the Nestor steering file""", - ), -# ----------------------------------- - NESTOR_POLYGON_FILE = SIMP(statut ='f', -# ----------------------------------- - typ = ('Fichier','All Files (*)'), max='**', - defaut = '', - fr = """Nom du fichier de polygons de Nestor""", - ang = """Name of the Nestor polygon file""", - ), -# ----------------------------------- - NESTOR_SURFACE_REFERENCE_FILE = SIMP(statut ='f', -# ----------------------------------- - typ = ('Fichier','All Files (*)'), max='**', - defaut = '', - fr = """Nom du fichier de reference surface de Nestor""", - ang = """Name of the Nestor file which contains the reference - water surface""", - ), -# ----------------------------------- - NESTOR_RESTART_FILE = SIMP(statut ='f', -# ----------------------------------- - typ = ('Fichier','All Files (*)'), max='**', - defaut = '', - fr = """Nom du fichier de Nestor restart""", - ang = """Name of the Nestor restart file""", - ), -) -TEXTE_NEW_JDC = "\ -COMPUTATION_ENVIRONMENT();\ -HYDRO();\ -GENERAL_PARAMETERS();\ -NUMERICAL_PARAMETERS();\ -TURBULENCE();\ -MISCELLANEOUS();\ -" -Ordre_Des_Commandes = ( -'COMPUTATION_ENVIRONMENT', -'HYDRO', -'GENERAL_PARAMETERS', -'NUMERICAL_PARAMETERS', -'TURBULENCE', -'TIDAL_FLATS_INFO', -'TRACERS', -'PARTICLE_TRANSPORT', -'HYDRAULIC_STRUCTURES', -'TIDES', -'COUPLING', -'INTERNAL', -'MISCELLANEOUS') -try: - import TelApy - source = "eficas" -except Exception as excpt: - source = "Telemac" -enum = source+'.telemac2d_enum_auto' -dicoCasEn = source+'.telemac2d_dicoCasEnToCata' -dicoCasFr = source+'.telemac2d_dicoCasFrToCata' diff --git a/Telemac/telemac2d_dicoCasEnToCata.py b/Telemac/telemac2d_dicoCasEnToCata.py deleted file mode 100644 index 88eb63c3..00000000 --- a/Telemac/telemac2d_dicoCasEnToCata.py +++ /dev/null @@ -1,650 +0,0 @@ -dicoCataToEngTelemac = { - "TITLE" : "TITLE", - "INITIAL_CONDITIONS" : "INITIAL CONDITIONS", - "INITIAL_ELEVATION" : "INITIAL ELEVATION", - "INITIAL_DEPTH" : "INITIAL DEPTH", - "BINARY_DATA_FILE_1_FORMAT" : "BINARY DATA FILE 1 FORMAT", - "BINARY_DATA_FILE_1" : "BINARY DATA FILE 1", - "BINARY_DATA_FILE_2_FORMAT" : "BINARY DATA FILE 2 FORMAT", - "BINARY_DATA_FILE_2" : "BINARY DATA FILE 2", - "FORMATTED_DATA_FILE_1" : "FORMATTED DATA FILE 1", - "FORMATTED_DATA_FILE_2" : "FORMATTED DATA FILE 2", - "GEOMETRY_FILE_FORMAT" : "GEOMETRY FILE FORMAT", - "GEOMETRY_FILE" : "GEOMETRY FILE", - "FORTRAN_FILE" : "FORTRAN FILE", - "BOTTOM_TOPOGRAPHY_FILE" : "BOTTOM TOPOGRAPHY FILE", - "BOTTOM_SMOOTHINGS" : "BOTTOM SMOOTHINGS", - "BOUNDARY_CONDITIONS_FILE" : "BOUNDARY CONDITIONS FILE", - "VALIDATION" : "VALIDATION", - "REFERENCE_FILE_FORMAT" : "REFERENCE FILE FORMAT", - "REFERENCE_FILE" : "REFERENCE FILE", - "PARALLEL_PROCESSORS" : "PARALLEL PROCESSORS", - "CHECKING_THE_MESH" : "CHECKING THE MESH", - "MAXIMUM_NUMBER_OF_BOUNDARIES" : "MAXIMUM NUMBER OF BOUNDARIES", - "MAXIMUM_NUMBER_OF_SOURCES" : "MAXIMUM NUMBER OF SOURCES", - "MAXIMUM_NUMBER_OF_TRACERS" : "MAXIMUM NUMBER OF TRACERS", - "VECTOR_LENGTH" : "VECTOR LENGTH", - "COMPUTATION_CONTINUED" : "COMPUTATION CONTINUED", - "PREVIOUS_COMPUTATION_FILE_FORMAT" : "PREVIOUS COMPUTATION FILE FORMAT", - "PREVIOUS_COMPUTATION_FILE" : "PREVIOUS COMPUTATION FILE", - "RECORD_NUMBER_FOR_RESTART" : "RECORD NUMBER FOR RESTART", - "INITIAL_TIME_SET_TO_ZERO" : "INITIAL TIME SET TO ZERO", - "NUMBER_OF_FIRST_TIME_STEP_FOR_GRAPHIC_PRINTOUTS" : "NUMBER OF FIRST TIME STEP FOR GRAPHIC PRINTOUTS", - "GRAPHIC_PRINTOUT_PERIOD" : "GRAPHIC PRINTOUT PERIOD", - "VARIABLES_FOR_GRAPHIC_PRINTOUTS" : "VARIABLES FOR GRAPHIC PRINTOUTS", - "NUMBER_OF_PRIVATE_ARRAYS" : "NUMBER OF PRIVATE ARRAYS", - "NAMES_OF_PRIVATE_VARIABLES" : "NAMES OF PRIVATE VARIABLES", - "RESULTS_FILE_FORMAT" : "RESULTS FILE FORMAT", - "RESULTS_FILE" : "RESULTS FILE", - "RESULT_FILE_IN_LONGITUDE_LATITUDE" : "RESULT FILE IN LONGITUDE-LATITUDE", - "BINARY_RESULTS_FILE_FORMAT" : "BINARY RESULTS FILE FORMAT", - "BINARY_RESULTS_FILE" : "BINARY RESULTS FILE", - "FORMATTED_RESULTS_FILE" : "FORMATTED RESULTS FILE", - "CONTROL_SECTIONS" : "CONTROL SECTIONS", - "PRINTING_CUMULATED_FLOWRATES" : "PRINTING CUMULATED FLOWRATES", - "COMPATIBLE_COMPUTATION_OF_FLUXES" : "COMPATIBLE COMPUTATION OF FLUXES", - "SECTIONS_INPUT_FILE" : "SECTIONS INPUT FILE", - "SECTIONS_OUTPUT_FILE" : "SECTIONS OUTPUT FILE", - "FLUXLINE" : "FLUXLINE", - "FLUXLINE_INPUT_FILE" : "FLUXLINE INPUT FILE", - "NUMBER_OF_FIRST_TIME_STEP_FOR_LISTING_PRINTOUTS" : "NUMBER OF FIRST TIME STEP FOR LISTING PRINTOUTS", - "LISTING_PRINTOUT_PERIOD" : "LISTING PRINTOUT PERIOD", - "LISTING_FOR_PRINTOUT_PERIOD" : "LISTING FOR PRINTOUT PERIOD", - "LISTING_PRINTOUT" : "LISTING PRINTOUT", - "VARIABLES_TO_BE_PRINTED" : "VARIABLES TO BE PRINTED", - "MASS_BALANCE" : "MASS-BALANCE", - "INFORMATION_ABOUT_SOLVER" : "INFORMATION ABOUT SOLVER", - "LIST_OF_POINTS" : "LIST OF POINTS", - "NAMES_OF_POINTS" : "NAMES OF POINTS", - "FOURIER_ANALYSIS_PERIODS" : "FOURIER ANALYSIS PERIODS", - "TIME_RANGE_FOR_FOURIER_ANALYSIS" : "TIME RANGE FOR FOURIER ANALYSIS", - "PRESCRIBED_ELEVATIONS" : "PRESCRIBED ELEVATIONS", - "PRESCRIBED_FLOWRATES" : "PRESCRIBED FLOWRATES", - "PRESCRIBED_VELOCITIES" : "PRESCRIBED VELOCITIES", - "STAGE_DISCHARGE_CURVES" : "STAGE-DISCHARGE CURVES", - "STAGE_DISCHARGE_CURVES_FILE" : "STAGE-DISCHARGE CURVES FILE", - "VELOCITY_PROFILES" : "VELOCITY PROFILES", - "OPTION_FOR_LIQUID_BOUNDARIES" : "OPTION FOR LIQUID BOUNDARIES", - "LIQUID_BOUNDARIES_FILE" : "LIQUID BOUNDARIES FILE", - "ELEMENTS_MASKED_BY_USER" : "ELEMENTS MASKED BY USER", - "MAXIMUM_NUMBER_OF_FRICTION_DOMAINS" : "MAXIMUM NUMBER OF FRICTION DOMAINS", - "FRICTION_DATA" : "FRICTION DATA", - "FRICTION_DATA_FILE" : "FRICTION DATA FILE", - "LAW_OF_BOTTOM_FRICTION" : "LAW OF BOTTOM FRICTION", - "FRICTION_COEFFICIENT" : "FRICTION COEFFICIENT", - "MANNING_DEFAULT_VALUE_FOR_COLEBROOK_WHITE_LAW" : "MANNING DEFAULT VALUE FOR COLEBROOK-WHITE LAW", - "DEPTH_IN_FRICTION_TERMS" : "DEPTH IN FRICTION TERMS", - "NON_SUBMERGED_VEGETATION_FRICTION" : "NON-SUBMERGED VEGETATION FRICTION", - "DIAMETER_OF_ROUGHNESS_ELEMENTS" : "DIAMETER OF ROUGHNESS ELEMENTS", - "SPACING_OF_ROUGHNESS_ELEMENTS" : "SPACING OF ROUGHNESS ELEMENTS", - "LAW_OF_FRICTION_ON_LATERAL_BOUNDARIES" : "LAW OF FRICTION ON LATERAL BOUNDARIES", - "ROUGHNESS_COEFFICIENT_OF_BOUNDARIES" : "ROUGHNESS COEFFICIENT OF BOUNDARIES", - "DEFINITION_OF_ZONES" : "DEFINITION OF ZONES", - "ZONES_FILE" : "ZONES FILE", - "ICE_PROCESSES" : "ICE PROCESSES", - "WIND" : "WIND", - "OPTION_FOR_WIND" : "OPTION FOR WIND", - "COEFFICIENT_OF_WIND_INFLUENCE" : "COEFFICIENT OF WIND INFLUENCE", - "WIND_VELOCITY_ALONG_X" : "WIND VELOCITY ALONG X", - "WIND_VELOCITY_ALONG_Y" : "WIND VELOCITY ALONG Y", - "SPEED_AND_DIRECTION_OF_WIND" : "SPEED AND DIRECTION OF WIND", - "THRESHOLD_DEPTH_FOR_WIND" : "THRESHOLD DEPTH FOR WIND", - "AIR_PRESSURE" : "AIR PRESSURE", - "VALUE_OF_ATMOSPHERIC_PRESSURE" : "VALUE OF ATMOSPHERIC PRESSURE", - "RAIN_OR_EVAPORATION" : "RAIN OR EVAPORATION", - "RAIN_OR_EVAPORATION_IN_MM_PER_DAY" : "RAIN OR EVAPORATION IN MM PER DAY", - "RAINFALL_RUNOFF_MODEL" : "RAINFALL-RUNOFF MODEL", - "ANTECEDENT_MOISTURE_CONDITIONS" : "ANTECEDENT MOISTURE CONDITIONS", - "DURATION_OF_RAIN_OR_EVAPORATION_IN_HOURS" : "DURATION OF RAIN OR EVAPORATION IN HOURS", - "ASCII_ATMOSPHERIC_DATA_FILE" : "ASCII ATMOSPHERIC DATA FILE", - "BINARY_ATMOSPHERIC_DATA_FILE" : "BINARY ATMOSPHERIC DATA FILE", - "BINARY_ATMOSPHERIC_DATA_FILE_FORMAT" : "BINARY ATMOSPHERIC DATA FILE FORMAT", - "OPTION_FOR_INITIAL_ABSTRACTION_RATIO" : "OPTION FOR INITIAL ABSTRACTION RATIO", - "WAVE_DRIVEN_CURRENTS" : "WAVE DRIVEN CURRENTS", - "RECORD_NUMBER_IN_WAVE_FILE" : "RECORD NUMBER IN WAVE FILE", - "WAVE_ENHANCED_FRICTION_FACTOR" : "WAVE ENHANCED FRICTION FACTOR", - "PARAMETER_ESTIMATION" : "PARAMETER ESTIMATION", - "COST_FUNCTION" : "COST FUNCTION", - "IDENTIFICATION_METHOD" : "IDENTIFICATION METHOD", - "TOLERANCES_FOR_IDENTIFICATION" : "TOLERANCES FOR IDENTIFICATION", - "MAXIMUM_NUMBER_OF_ITERATIONS_FOR_IDENTIFICATION" : "MAXIMUM NUMBER OF ITERATIONS FOR IDENTIFICATION", - "ABSCISSAE_OF_SOURCES" : "ABSCISSAE OF SOURCES", - "ORDINATES_OF_SOURCES" : "ORDINATES OF SOURCES", - "WATER_DISCHARGE_OF_SOURCES" : "WATER DISCHARGE OF SOURCES", - "VELOCITIES_OF_THE_SOURCES_ALONG_X" : "VELOCITIES OF THE SOURCES ALONG X", - "VELOCITIES_OF_THE_SOURCES_ALONG_Y" : "VELOCITIES OF THE SOURCES ALONG Y", - "TYPE_OF_SOURCES" : "TYPE OF SOURCES", - "SOURCES_FILE" : "SOURCES FILE", - "GLOBAL_NUMBERS_OF_SOURCE_NODES" : "GLOBAL NUMBERS OF SOURCE NODES", - "WATER_QUALITY_PROCESS" : "WATER QUALITY PROCESS", - "WATER_DENSITY" : "WATER DENSITY", - "GRAVITY_ACCELERATION" : "GRAVITY ACCELERATION", - "VERTICAL_STRUCTURES" : "VERTICAL STRUCTURES", - "EQUATIONS" : "EQUATIONS", - "TREATMENT_OF_THE_LINEAR_SYSTEM" : "TREATMENT OF THE LINEAR SYSTEM", - "FINITE_VOLUME_SCHEME" : "FINITE VOLUME SCHEME", - "CORIOLIS" : "CORIOLIS", - "CORIOLIS_COEFFICIENT" : "CORIOLIS COEFFICIENT", - "OPTION_FOR_TSUNAMI_GENERATION" : "OPTION FOR TSUNAMI GENERATION", - "PHYSICAL_CHARACTERISTICS_OF_THE_TSUNAMI" : "PHYSICAL CHARACTERISTICS OF THE TSUNAMI", - "SECONDARY_CURRENTS" : "SECONDARY CURRENTS", - "PRODUCTION_COEFFICIENT_FOR_SECONDARY_CURRENTS" : "PRODUCTION COEFFICIENT FOR SECONDARY CURRENTS", - "DISSIPATION_COEFFICIENT_FOR_SECONDARY_CURRENTS" : "DISSIPATION COEFFICIENT FOR SECONDARY CURRENTS", - "DEBUGGER" : "DEBUGGER", - "TIME_STEP" : "TIME STEP", - "NUMBER_OF_TIME_STEPS" : "NUMBER OF TIME STEPS", - "DURATION" : "DURATION", - "ORIGINAL_DATE_OF_TIME" : "ORIGINAL DATE OF TIME", - "ORIGINAL_HOUR_OF_TIME" : "ORIGINAL HOUR OF TIME", - "STOP_IF_A_STEADY_STATE_IS_REACHED" : "STOP IF A STEADY STATE IS REACHED", - "STOP_CRITERIA" : "STOP CRITERIA", - "CONTROL_OF_LIMITS" : "CONTROL OF LIMITS", - "LIMIT_VALUES" : "LIMIT VALUES", - "VARIABLE_TIME_STEP" : "VARIABLE TIME-STEP", - "DESIRED_COURANT_NUMBER" : "DESIRED COURANT NUMBER", - "ORIGIN_COORDINATES" : "ORIGIN COORDINATES", - "SPHERICAL_COORDINATES" : "SPHERICAL COORDINATES", - "LATITUDE_OF_ORIGIN_POINT" : "LATITUDE OF ORIGIN POINT", - "LONGITUDE_OF_ORIGIN_POINT" : "LONGITUDE OF ORIGIN POINT", - "NORTH" : "NORTH", - "SPATIAL_PROJECTION_TYPE" : "SPATIAL PROJECTION TYPE", - "SOLVER" : "SOLVER", - "SOLVER_OPTION" : "SOLVER OPTION", - "SOLVER_ACCURACY" : "SOLVER ACCURACY", - "MAXIMUM_NUMBER_OF_ITERATIONS_FOR_SOLVER" : "MAXIMUM NUMBER OF ITERATIONS FOR SOLVER", - "CONTINUITY_CORRECTION" : "CONTINUITY CORRECTION", - "PRECONDITIONING" : "PRECONDITIONING", - "C_U_PRECONDITIONING" : "C-U PRECONDITIONING", - "FINITE_ELEMENT_ASSEMBLY" : "FINITE ELEMENT ASSEMBLY", - "IMPLICITATION_FOR_DEPTH" : "IMPLICITATION FOR DEPTH", - "IMPLICITATION_FOR_VELOCITY" : "IMPLICITATION FOR VELOCITY", - "DISCRETIZATIONS_IN_SPACE" : "DISCRETIZATIONS IN SPACE", - "PROPAGATION" : "PROPAGATION", - "INITIAL_GUESS_FOR_H" : "INITIAL GUESS FOR H", - "LINEARIZED_PROPAGATION" : "LINEARIZED PROPAGATION", - "INITIAL_GUESS_FOR_U" : "INITIAL GUESS FOR U", - "MEAN_DEPTH_FOR_LINEARIZATION" : "MEAN DEPTH FOR LINEARIZATION", - "ADVECTION" : "ADVECTION", - "ADVECTION_OF_H" : "ADVECTION OF H", - "ADVECTION_OF_U_AND_V" : "ADVECTION OF U AND V", - "TYPE_OF_ADVECTION" : "TYPE OF ADVECTION", - "OPTION_FOR_CHARACTERISTICS" : "OPTION FOR CHARACTERISTICS", - "SUPG_OPTION" : "SUPG OPTION", - "NUMBER_OF_GAUSS_POINTS_FOR_WEAK_CHARACTERISTICS" : "NUMBER OF GAUSS POINTS FOR WEAK CHARACTERISTICS", - "MASS_LUMPING_FOR_WEAK_CHARACTERISTICS" : "MASS-LUMPING FOR WEAK CHARACTERISTICS", - "MAXIMUM_NUMBER_OF_ITERATIONS_FOR_ADVECTION_SCHEMES" : "MAXIMUM NUMBER OF ITERATIONS FOR ADVECTION SCHEMES", - "UPWIND_COEFFICIENTS" : "UPWIND COEFFICIENTS", - "MASS_LUMPING_ON_H" : "MASS-LUMPING ON H", - "MASS_LUMPING_ON_VELOCITY" : "MASS-LUMPING ON VELOCITY", - "SCHEME_FOR_ADVECTION_OF_VELOCITIES" : "SCHEME FOR ADVECTION OF VELOCITIES", - "SCHEME_OPTION_FOR_ADVECTION_OF_VELOCITIES" : "SCHEME OPTION FOR ADVECTION OF VELOCITIES", - "FREE_SURFACE_GRADIENT_COMPATIBILITY" : "FREE SURFACE GRADIENT COMPATIBILITY", - "NUMBER_OF_SUB_ITERATIONS_FOR_NON_LINEARITIES" : "NUMBER OF SUB-ITERATIONS FOR NON-LINEARITIES", - "TREATMENT_OF_FLUXES_AT_THE_BOUNDARIES" : "TREATMENT OF FLUXES AT THE BOUNDARIES", - "NUMBER_OF_CORRECTIONS_OF_DISTRIBUTIVE_SCHEMES" : "NUMBER OF CORRECTIONS OF DISTRIBUTIVE SCHEMES", - "NUMBER_OF_SUB_STEPS_OF_DISTRIBUTIVE_SCHEMES" : "NUMBER OF SUB-STEPS OF DISTRIBUTIVE SCHEMES", - "PSI_SCHEME_OPTION" : "PSI SCHEME OPTION", - "DIFFUSION_OF_VELOCITY" : "DIFFUSION OF VELOCITY", - "OPTION_FOR_THE_DIFFUSION_OF_VELOCITIES" : "OPTION FOR THE DIFFUSION OF VELOCITIES", - "IMPLICITATION_FOR_DIFFUSION_OF_VELOCITY" : "IMPLICITATION FOR DIFFUSION OF VELOCITY", - "AD_NUMBER_OF_DERIVATIVES" : "AD NUMBER OF DERIVATIVES", - "AD_NAMES_OF_DERIVATIVES" : "AD NAMES OF DERIVATIVES", - "AD_SYMBOLIC_LINEAR_SOLVER" : "AD SYMBOLIC LINEAR SOLVER", - "AD_LINEAR_SOLVER_RESET_DERIVATIVES" : "AD LINEAR SOLVER RESET DERIVATIVES", - "AD_LINEAR_SOLVER_DERIVATIVE_CONVERGENCE" : "AD LINEAR SOLVER DERIVATIVE CONVERGENCE", - "MATRIX_STORAGE" : "MATRIX STORAGE", - "MATRIX_VECTOR_PRODUCT" : "MATRIX-VECTOR PRODUCT", - "NEWMARK_TIME_INTEGRATION_COEFFICIENT" : "NEWMARK TIME INTEGRATION COEFFICIENT", - "ZERO" : "ZERO", - "PROPAGATION_OPTION" : "PROPAGATION OPTION", - "OPTION_OF_THE_HYDROSTATIC_RECONSTRUCTION" : "OPTION OF THE HYDROSTATIC RECONSTRUCTION", - "CONVERGENCE_STUDY" : "CONVERGENCE STUDY", - "REFINEMENT_LEVELS" : "REFINEMENT LEVELS", - "VELOCITY_DIFFUSIVITY" : "VELOCITY DIFFUSIVITY", - "TURBULENCE_MODEL" : "TURBULENCE MODEL", - "ACCURACY_OF_SPALART_ALLMARAS" : "ACCURACY OF SPALART-ALLMARAS", - "INFORMATION_ABOUT_SPALART_ALLMARAS_MODEL" : "INFORMATION ABOUT SPALART-ALLMARAS MODEL", - "SOLVER_FOR_K_EPSILON_MODEL" : "SOLVER FOR K-EPSILON MODEL", - "OPTION_FOR_THE_SOLVER_FOR_K_EPSILON_MODEL" : "OPTION FOR THE SOLVER FOR K-EPSILON MODEL", - "PRECONDITIONING_FOR_K_EPSILON_MODEL" : "PRECONDITIONING FOR K-EPSILON MODEL", - "NON_DIMENSIONAL_DISPERSION_COEFFICIENTS" : "NON-DIMENSIONAL DISPERSION COEFFICIENTS", - "TURBULENCE_REGIME_FOR_SOLID_BOUNDARIES" : "TURBULENCE REGIME FOR SOLID BOUNDARIES", - "INFORMATION_ABOUT_K_EPSILON_MODEL" : "INFORMATION ABOUT K-EPSILON MODEL", - "ADVECTION_OF_K_AND_EPSILON" : "ADVECTION OF K AND EPSILON", - "SCHEME_FOR_ADVECTION_OF_K_EPSILON" : "SCHEME FOR ADVECTION OF K-EPSILON", - "SCHEME_OPTION_FOR_ADVECTION_OF_K_EPSILON" : "SCHEME OPTION FOR ADVECTION OF K-EPSILON", - "TIME_STEP_REDUCTION_FOR_K_EPSILON_MODEL" : "TIME STEP REDUCTION FOR K-EPSILON MODEL", - "ACCURACY_OF_K" : "ACCURACY OF K", - "ACCURACY_OF_EPSILON" : "ACCURACY OF EPSILON", - "MAXIMUM_NUMBER_OF_ITERATIONS_FOR_K_AND_EPSILON" : "MAXIMUM NUMBER OF ITERATIONS FOR K AND EPSILON", - "TIDAL_FLATS" : "TIDAL FLATS", - "OPTION_FOR_THE_TREATMENT_OF_TIDAL_FLATS" : "OPTION FOR THE TREATMENT OF TIDAL FLATS", - "TREATMENT_OF_NEGATIVE_DEPTHS" : "TREATMENT OF NEGATIVE DEPTHS", - "THRESHOLD_FOR_NEGATIVE_DEPTHS" : "THRESHOLD FOR NEGATIVE DEPTHS", - "THRESHOLD_DEPTH_FOR_RECEDING_PROCEDURE" : "THRESHOLD DEPTH FOR RECEDING PROCEDURE", - "H_CLIPPING" : "H CLIPPING", - "MINIMUM_VALUE_OF_DEPTH" : "MINIMUM VALUE OF DEPTH", - "PRESCRIBED_TRACERS_VALUES" : "PRESCRIBED TRACERS VALUES", - "NUMBER_OF_TRACERS" : "NUMBER OF TRACERS", - "NAMES_OF_TRACERS" : "NAMES OF TRACERS", - "INITIAL_VALUES_OF_TRACERS" : "INITIAL VALUES OF TRACERS", - "DENSITY_EFFECTS" : "DENSITY EFFECTS", - "MEAN_TEMPERATURE" : "MEAN TEMPERATURE", - "SOLVER_FOR_DIFFUSION_OF_TRACERS" : "SOLVER FOR DIFFUSION OF TRACERS", - "SOLVER_OPTION_FOR_TRACERS_DIFFUSION" : "SOLVER OPTION FOR TRACERS DIFFUSION", - "PRECONDITIONING_FOR_DIFFUSION_OF_TRACERS" : "PRECONDITIONING FOR DIFFUSION OF TRACERS", - "ACCURACY_FOR_DIFFUSION_OF_TRACERS" : "ACCURACY FOR DIFFUSION OF TRACERS", - "MAXIMUM_NUMBER_OF_ITERATIONS_FOR_DIFFUSION_OF_TRACERS" : "MAXIMUM NUMBER OF ITERATIONS FOR DIFFUSION OF TRACERS", - "VALUES_OF_THE_TRACERS_AT_THE_SOURCES" : "VALUES OF THE TRACERS AT THE SOURCES", - "VALUES_OF_TRACERS_IN_THE_RAIN" : "VALUES OF TRACERS IN THE RAIN", - "ADVECTION_OF_TRACERS" : "ADVECTION OF TRACERS", - "IMPLICITATION_COEFFICIENT_OF_TRACERS" : "IMPLICITATION COEFFICIENT OF TRACERS", - "DIFFUSION_OF_TRACERS" : "DIFFUSION OF TRACERS", - "COEFFICIENT_FOR_DIFFUSION_OF_TRACERS" : "COEFFICIENT FOR DIFFUSION OF TRACERS", - "OPTION_FOR_THE_DIFFUSION_OF_TRACERS" : "OPTION FOR THE DIFFUSION OF TRACERS", - "SCHEME_FOR_ADVECTION_OF_TRACERS" : "SCHEME FOR ADVECTION OF TRACERS", - "SCHEME_OPTION_FOR_ADVECTION_OF_TRACERS" : "SCHEME OPTION FOR ADVECTION OF TRACERS", - "MASS_LUMPING_ON_TRACERS" : "MASS-LUMPING ON TRACERS", - "NUMBER_OF_DROGUES" : "NUMBER OF DROGUES", - "PRINTOUT_PERIOD_FOR_DROGUES" : "PRINTOUT PERIOD FOR DROGUES", - "DROGUES_FILE" : "DROGUES FILE", - "ALGAE_TRANSPORT_MODEL" : "ALGAE TRANSPORT MODEL", - "ALGAE_TYPE" : "ALGAE TYPE", - "DIAMETER_OF_ALGAE" : "DIAMETER OF ALGAE", - "DENSITY_OF_ALGAE" : "DENSITY OF ALGAE", - "THICKNESS_OF_ALGAE" : "THICKNESS OF ALGAE", - "OIL_SPILL_MODEL" : "OIL SPILL MODEL", - "OIL_SPILL_STEERING_FILE" : "OIL SPILL STEERING FILE", - "STOCHASTIC_DIFFUSION_MODEL" : "STOCHASTIC DIFFUSION MODEL", - "NUMBER_OF_LAGRANGIAN_DRIFTS" : "NUMBER OF LAGRANGIAN DRIFTS", - "NUMBER_OF_WEIRS" : "NUMBER OF WEIRS", - "WEIRS_DATA_FILE" : "WEIRS DATA FILE", - "TYPE_OF_WEIRS" : "TYPE OF WEIRS", - "NUMBER_OF_CULVERTS" : "NUMBER OF CULVERTS", - "CULVERTS_DATA_FILE" : "CULVERTS DATA FILE", - "OPTION_FOR_CULVERTS" : "OPTION FOR CULVERTS", - "BREACH" : "BREACH", - "BREACHES_DATA_FILE" : "BREACHES DATA FILE", - "BINARY_DATABASE_1_FOR_TIDE" : "BINARY DATABASE 1 FOR TIDE", - "BINARY_DATABASE_2_FOR_TIDE" : "BINARY DATABASE 2 FOR TIDE", - "GEOGRAPHIC_SYSTEM" : "GEOGRAPHIC SYSTEM", - "ZONE_NUMBER_IN_GEOGRAPHIC_SYSTEM" : "ZONE NUMBER IN GEOGRAPHIC SYSTEM", - "LAMBERT_93_CONVERSION_FILE" : "LAMBERT 93 CONVERSION FILE", - "COEFFICIENT_TO_CALIBRATE_SEA_LEVEL" : "COEFFICIENT TO CALIBRATE SEA LEVEL", - "GLOBAL_NUMBER_OF_THE_POINT_TO_CALIBRATE_HIGH_WATER" : "GLOBAL NUMBER OF THE POINT TO CALIBRATE HIGH WATER", - "MINOR_CONSTITUENTS_INFERENCE" : "MINOR CONSTITUENTS INFERENCE", - "OPTION_FOR_TIDAL_BOUNDARY_CONDITIONS" : "OPTION FOR TIDAL BOUNDARY CONDITIONS", - "TIDAL_DATA_BASE" : "TIDAL DATA BASE", - "HARMONIC_CONSTANTS_FILE" : "HARMONIC CONSTANTS FILE", - "TIDAL_MODEL_FILE" : "TIDAL MODEL FILE", - "TIDAL_MODEL_FILE_FORMAT" : "TIDAL MODEL FILE FORMAT", - "ASCII_DATABASE_FOR_TIDE" : "ASCII DATABASE FOR TIDE", - "COEFFICIENT_TO_CALIBRATE_TIDAL_RANGE" : "COEFFICIENT TO CALIBRATE TIDAL RANGE", - "COEFFICIENT_TO_CALIBRATE_TIDAL_VELOCITIES" : "COEFFICIENT TO CALIBRATE TIDAL VELOCITIES", - "LOCAL_NUMBER_OF_THE_POINT_TO_CALIBRATE_HIGH_WATER" : "LOCAL NUMBER OF THE POINT TO CALIBRATE HIGH WATER", - "TIDE_GENERATING_FORCE" : "TIDE GENERATING FORCE", - "COUPLING_WITH" : "COUPLING WITH", - "NAMES_OF_CLANDESTINE_VARIABLES" : "NAMES OF CLANDESTINE VARIABLES", - "COUPLING_DIRECTORY" : "COUPLING DIRECTORY", - "DELWAQ_STEERING_FILE" : "DELWAQ STEERING FILE", - "DELWAQ_PRINTOUT_PERIOD" : "DELWAQ PRINTOUT PERIOD", - "EXCHANGES_BETWEEN_NODES_DELWAQ_FILE" : "EXCHANGES BETWEEN NODES DELWAQ FILE", - "NODES_DISTANCES_DELWAQ_FILE" : "NODES DISTANCES DELWAQ FILE", - "BOTTOM_SURFACES_DELWAQ_FILE" : "BOTTOM SURFACES DELWAQ FILE", - "VOLUMES_DELWAQ_FILE" : "VOLUMES DELWAQ FILE", - "EXCHANGE_AREAS_DELWAQ_FILE" : "EXCHANGE AREAS DELWAQ FILE", - "VERTICAL_FLUXES_DELWAQ_FILE" : "VERTICAL FLUXES DELWAQ FILE", - "VELOCITY_DELWAQ_FILE" : "VELOCITY DELWAQ FILE", - "DIFFUSIVITY_DELWAQ_FILE" : "DIFFUSIVITY DELWAQ FILE", - "TEMPERATURE_DELWAQ_FILE" : "TEMPERATURE DELWAQ FILE", - "SALINITY_DELWAQ_FILE" : "SALINITY DELWAQ FILE", - "VELOCITY_FOR_DELWAQ" : "VELOCITY FOR DELWAQ", - "DIFFUSIVITY_FOR_DELWAQ" : "DIFFUSIVITY FOR DELWAQ", - "TEMPERATURE_FOR_DELWAQ" : "TEMPERATURE FOR DELWAQ", - "SALINITY_FOR_DELWAQ" : "SALINITY FOR DELWAQ", - "SISYPHE_STEERING_FILE" : "SISYPHE STEERING FILE", - "COUPLING_PERIOD_FOR_SISYPHE" : "COUPLING PERIOD FOR SISYPHE", - "TOMAWAC_STEERING_FILE" : "TOMAWAC STEERING FILE", - "COUPLING_PERIOD_FOR_TOMAWAC" : "COUPLING PERIOD FOR TOMAWAC", - "WAQTEL_STEERING_FILE" : "WAQTEL STEERING FILE", - "KHIONE_STEERING_FILE" : "KHIONE STEERING FILE", - "LANGUAGE" : "LANGUAGE", - "STEERING_FILE" : "STEERING FILE", - "DICTIONARY" : "DICTIONARY", - "PARTITIONING_TOOL" : "PARTITIONING TOOL", - "RELEASE" : "RELEASE", - "LIST_OF_FILES" : "LIST OF FILES", - "DESCRIPTION_OF_LIBRARIES" : "DESCRIPTION OF LIBRARIES", - "DEFAULT_EXECUTABLE" : "DEFAULT EXECUTABLE", - "DEFAULT_PARALLEL_EXECUTABLE" : "DEFAULT PARALLEL EXECUTABLE", - "NESTOR" : "NESTOR", - "NESTOR_ACTION_FILE" : "NESTOR ACTION FILE", - "NESTOR_POLYGON_FILE" : "NESTOR POLYGON FILE", - "NESTOR_SURFACE_REFERENCE_FILE" : "NESTOR SURFACE REFERENCE FILE", - "NESTOR_RESTART_FILE" : "NESTOR RESTART FILE", -} -dicoCasEnToCata = { - "TITLE" : "TITLE", - "INITIAL CONDITIONS" : "INITIAL_CONDITIONS", - "INITIAL ELEVATION" : "INITIAL_ELEVATION", - "INITIAL DEPTH" : "INITIAL_DEPTH", - "BINARY DATA FILE 1 FORMAT" : "BINARY_DATA_FILE_1_FORMAT", - "BINARY DATA FILE 1" : "BINARY_DATA_FILE_1", - "BINARY DATA FILE 2 FORMAT" : "BINARY_DATA_FILE_2_FORMAT", - "BINARY DATA FILE 2" : "BINARY_DATA_FILE_2", - "FORMATTED DATA FILE 1" : "FORMATTED_DATA_FILE_1", - "FORMATTED DATA FILE 2" : "FORMATTED_DATA_FILE_2", - "GEOMETRY FILE FORMAT" : "GEOMETRY_FILE_FORMAT", - "GEOMETRY FILE" : "GEOMETRY_FILE", - "FORTRAN FILE" : "FORTRAN_FILE", - "BOTTOM TOPOGRAPHY FILE" : "BOTTOM_TOPOGRAPHY_FILE", - "BOTTOM SMOOTHINGS" : "BOTTOM_SMOOTHINGS", - "BOUNDARY CONDITIONS FILE" : "BOUNDARY_CONDITIONS_FILE", - "VALIDATION" : "VALIDATION", - "REFERENCE FILE FORMAT" : "REFERENCE_FILE_FORMAT", - "REFERENCE FILE" : "REFERENCE_FILE", - "PARALLEL PROCESSORS" : "PARALLEL_PROCESSORS", - "CHECKING THE MESH" : "CHECKING_THE_MESH", - "MAXIMUM NUMBER OF BOUNDARIES" : "MAXIMUM_NUMBER_OF_BOUNDARIES", - "MAXIMUM NUMBER OF SOURCES" : "MAXIMUM_NUMBER_OF_SOURCES", - "MAXIMUM NUMBER OF TRACERS" : "MAXIMUM_NUMBER_OF_TRACERS", - "VECTOR LENGTH" : "VECTOR_LENGTH", - "COMPUTATION CONTINUED" : "COMPUTATION_CONTINUED", - "PREVIOUS COMPUTATION FILE FORMAT" : "PREVIOUS_COMPUTATION_FILE_FORMAT", - "PREVIOUS COMPUTATION FILE" : "PREVIOUS_COMPUTATION_FILE", - "RECORD NUMBER FOR RESTART" : "RECORD_NUMBER_FOR_RESTART", - "INITIAL TIME SET TO ZERO" : "INITIAL_TIME_SET_TO_ZERO", - "NUMBER OF FIRST TIME STEP FOR GRAPHIC PRINTOUTS" : "NUMBER_OF_FIRST_TIME_STEP_FOR_GRAPHIC_PRINTOUTS", - "GRAPHIC PRINTOUT PERIOD" : "GRAPHIC_PRINTOUT_PERIOD", - "VARIABLES FOR GRAPHIC PRINTOUTS" : "VARIABLES_FOR_GRAPHIC_PRINTOUTS", - "NUMBER OF PRIVATE ARRAYS" : "NUMBER_OF_PRIVATE_ARRAYS", - "NAMES OF PRIVATE VARIABLES" : "NAMES_OF_PRIVATE_VARIABLES", - "RESULTS FILE FORMAT" : "RESULTS_FILE_FORMAT", - "RESULTS FILE" : "RESULTS_FILE", - "RESULT FILE IN LONGITUDE-LATITUDE" : "RESULT_FILE_IN_LONGITUDE_LATITUDE", - "BINARY RESULTS FILE FORMAT" : "BINARY_RESULTS_FILE_FORMAT", - "BINARY RESULTS FILE" : "BINARY_RESULTS_FILE", - "FORMATTED RESULTS FILE" : "FORMATTED_RESULTS_FILE", - "CONTROL SECTIONS" : "CONTROL_SECTIONS", - "PRINTING CUMULATED FLOWRATES" : "PRINTING_CUMULATED_FLOWRATES", - "COMPATIBLE COMPUTATION OF FLUXES" : "COMPATIBLE_COMPUTATION_OF_FLUXES", - "SECTIONS INPUT FILE" : "SECTIONS_INPUT_FILE", - "SECTIONS OUTPUT FILE" : "SECTIONS_OUTPUT_FILE", - "FLUXLINE" : "FLUXLINE", - "FLUXLINE INPUT FILE" : "FLUXLINE_INPUT_FILE", - "NUMBER OF FIRST TIME STEP FOR LISTING PRINTOUTS" : "NUMBER_OF_FIRST_TIME_STEP_FOR_LISTING_PRINTOUTS", - "LISTING PRINTOUT PERIOD" : "LISTING_PRINTOUT_PERIOD", - "LISTING FOR PRINTOUT PERIOD" : "LISTING_FOR_PRINTOUT_PERIOD", - "LISTING PRINTOUT" : "LISTING_PRINTOUT", - "VARIABLES TO BE PRINTED" : "VARIABLES_TO_BE_PRINTED", - "MASS-BALANCE" : "MASS_BALANCE", - "INFORMATION ABOUT SOLVER" : "INFORMATION_ABOUT_SOLVER", - "LIST OF POINTS" : "LIST_OF_POINTS", - "NAMES OF POINTS" : "NAMES_OF_POINTS", - "FOURIER ANALYSIS PERIODS" : "FOURIER_ANALYSIS_PERIODS", - "TIME RANGE FOR FOURIER ANALYSIS" : "TIME_RANGE_FOR_FOURIER_ANALYSIS", - "PRESCRIBED ELEVATIONS" : "PRESCRIBED_ELEVATIONS", - "PRESCRIBED FLOWRATES" : "PRESCRIBED_FLOWRATES", - "PRESCRIBED VELOCITIES" : "PRESCRIBED_VELOCITIES", - "STAGE-DISCHARGE CURVES" : "STAGE_DISCHARGE_CURVES", - "STAGE-DISCHARGE CURVES FILE" : "STAGE_DISCHARGE_CURVES_FILE", - "VELOCITY PROFILES" : "VELOCITY_PROFILES", - "OPTION FOR LIQUID BOUNDARIES" : "OPTION_FOR_LIQUID_BOUNDARIES", - "LIQUID BOUNDARIES FILE" : "LIQUID_BOUNDARIES_FILE", - "ELEMENTS MASKED BY USER" : "ELEMENTS_MASKED_BY_USER", - "MAXIMUM NUMBER OF FRICTION DOMAINS" : "MAXIMUM_NUMBER_OF_FRICTION_DOMAINS", - "FRICTION DATA" : "FRICTION_DATA", - "FRICTION DATA FILE" : "FRICTION_DATA_FILE", - "LAW OF BOTTOM FRICTION" : "LAW_OF_BOTTOM_FRICTION", - "FRICTION COEFFICIENT" : "FRICTION_COEFFICIENT", - "MANNING DEFAULT VALUE FOR COLEBROOK-WHITE LAW" : "MANNING_DEFAULT_VALUE_FOR_COLEBROOK_WHITE_LAW", - "DEPTH IN FRICTION TERMS" : "DEPTH_IN_FRICTION_TERMS", - "NON-SUBMERGED VEGETATION FRICTION" : "NON_SUBMERGED_VEGETATION_FRICTION", - "DIAMETER OF ROUGHNESS ELEMENTS" : "DIAMETER_OF_ROUGHNESS_ELEMENTS", - "SPACING OF ROUGHNESS ELEMENTS" : "SPACING_OF_ROUGHNESS_ELEMENTS", - "LAW OF FRICTION ON LATERAL BOUNDARIES" : "LAW_OF_FRICTION_ON_LATERAL_BOUNDARIES", - "ROUGHNESS COEFFICIENT OF BOUNDARIES" : "ROUGHNESS_COEFFICIENT_OF_BOUNDARIES", - "DEFINITION OF ZONES" : "DEFINITION_OF_ZONES", - "ZONES FILE" : "ZONES_FILE", - "ICE PROCESSES" : "ICE_PROCESSES", - "WIND" : "WIND", - "OPTION FOR WIND" : "OPTION_FOR_WIND", - "COEFFICIENT OF WIND INFLUENCE" : "COEFFICIENT_OF_WIND_INFLUENCE", - "WIND VELOCITY ALONG X" : "WIND_VELOCITY_ALONG_X", - "WIND VELOCITY ALONG Y" : "WIND_VELOCITY_ALONG_Y", - "SPEED AND DIRECTION OF WIND" : "SPEED_AND_DIRECTION_OF_WIND", - "THRESHOLD DEPTH FOR WIND" : "THRESHOLD_DEPTH_FOR_WIND", - "AIR PRESSURE" : "AIR_PRESSURE", - "VALUE OF ATMOSPHERIC PRESSURE" : "VALUE_OF_ATMOSPHERIC_PRESSURE", - "RAIN OR EVAPORATION" : "RAIN_OR_EVAPORATION", - "RAIN OR EVAPORATION IN MM PER DAY" : "RAIN_OR_EVAPORATION_IN_MM_PER_DAY", - "RAINFALL-RUNOFF MODEL" : "RAINFALL_RUNOFF_MODEL", - "ANTECEDENT MOISTURE CONDITIONS" : "ANTECEDENT_MOISTURE_CONDITIONS", - "DURATION OF RAIN OR EVAPORATION IN HOURS" : "DURATION_OF_RAIN_OR_EVAPORATION_IN_HOURS", - "ASCII ATMOSPHERIC DATA FILE" : "ASCII_ATMOSPHERIC_DATA_FILE", - "BINARY ATMOSPHERIC DATA FILE" : "BINARY_ATMOSPHERIC_DATA_FILE", - "BINARY ATMOSPHERIC DATA FILE FORMAT" : "BINARY_ATMOSPHERIC_DATA_FILE_FORMAT", - "OPTION FOR INITIAL ABSTRACTION RATIO" : "OPTION_FOR_INITIAL_ABSTRACTION_RATIO", - "WAVE DRIVEN CURRENTS" : "WAVE_DRIVEN_CURRENTS", - "RECORD NUMBER IN WAVE FILE" : "RECORD_NUMBER_IN_WAVE_FILE", - "WAVE ENHANCED FRICTION FACTOR" : "WAVE_ENHANCED_FRICTION_FACTOR", - "PARAMETER ESTIMATION" : "PARAMETER_ESTIMATION", - "COST FUNCTION" : "COST_FUNCTION", - "IDENTIFICATION METHOD" : "IDENTIFICATION_METHOD", - "TOLERANCES FOR IDENTIFICATION" : "TOLERANCES_FOR_IDENTIFICATION", - "MAXIMUM NUMBER OF ITERATIONS FOR IDENTIFICATION" : "MAXIMUM_NUMBER_OF_ITERATIONS_FOR_IDENTIFICATION", - "ABSCISSAE OF SOURCES" : "ABSCISSAE_OF_SOURCES", - "ORDINATES OF SOURCES" : "ORDINATES_OF_SOURCES", - "WATER DISCHARGE OF SOURCES" : "WATER_DISCHARGE_OF_SOURCES", - "VELOCITIES OF THE SOURCES ALONG X" : "VELOCITIES_OF_THE_SOURCES_ALONG_X", - "VELOCITIES OF THE SOURCES ALONG Y" : "VELOCITIES_OF_THE_SOURCES_ALONG_Y", - "TYPE OF SOURCES" : "TYPE_OF_SOURCES", - "SOURCES FILE" : "SOURCES_FILE", - "GLOBAL NUMBERS OF SOURCE NODES" : "GLOBAL_NUMBERS_OF_SOURCE_NODES", - "WATER QUALITY PROCESS" : "WATER_QUALITY_PROCESS", - "WATER DENSITY" : "WATER_DENSITY", - "GRAVITY ACCELERATION" : "GRAVITY_ACCELERATION", - "VERTICAL STRUCTURES" : "VERTICAL_STRUCTURES", - "EQUATIONS" : "EQUATIONS", - "TREATMENT OF THE LINEAR SYSTEM" : "TREATMENT_OF_THE_LINEAR_SYSTEM", - "FINITE VOLUME SCHEME" : "FINITE_VOLUME_SCHEME", - "CORIOLIS" : "CORIOLIS", - "CORIOLIS COEFFICIENT" : "CORIOLIS_COEFFICIENT", - "OPTION FOR TSUNAMI GENERATION" : "OPTION_FOR_TSUNAMI_GENERATION", - "PHYSICAL CHARACTERISTICS OF THE TSUNAMI" : "PHYSICAL_CHARACTERISTICS_OF_THE_TSUNAMI", - "SECONDARY CURRENTS" : "SECONDARY_CURRENTS", - "PRODUCTION COEFFICIENT FOR SECONDARY CURRENTS" : "PRODUCTION_COEFFICIENT_FOR_SECONDARY_CURRENTS", - "DISSIPATION COEFFICIENT FOR SECONDARY CURRENTS" : "DISSIPATION_COEFFICIENT_FOR_SECONDARY_CURRENTS", - "DEBUGGER" : "DEBUGGER", - "TIME STEP" : "TIME_STEP", - "NUMBER OF TIME STEPS" : "NUMBER_OF_TIME_STEPS", - "DURATION" : "DURATION", - "ORIGINAL DATE OF TIME" : "ORIGINAL_DATE_OF_TIME", - "ORIGINAL HOUR OF TIME" : "ORIGINAL_HOUR_OF_TIME", - "STOP IF A STEADY STATE IS REACHED" : "STOP_IF_A_STEADY_STATE_IS_REACHED", - "STOP CRITERIA" : "STOP_CRITERIA", - "CONTROL OF LIMITS" : "CONTROL_OF_LIMITS", - "LIMIT VALUES" : "LIMIT_VALUES", - "VARIABLE TIME-STEP" : "VARIABLE_TIME_STEP", - "DESIRED COURANT NUMBER" : "DESIRED_COURANT_NUMBER", - "ORIGIN COORDINATES" : "ORIGIN_COORDINATES", - "SPHERICAL COORDINATES" : "SPHERICAL_COORDINATES", - "LATITUDE OF ORIGIN POINT" : "LATITUDE_OF_ORIGIN_POINT", - "LONGITUDE OF ORIGIN POINT" : "LONGITUDE_OF_ORIGIN_POINT", - "NORTH" : "NORTH", - "SPATIAL PROJECTION TYPE" : "SPATIAL_PROJECTION_TYPE", - "SOLVER" : "SOLVER", - "SOLVER OPTION" : "SOLVER_OPTION", - "SOLVER ACCURACY" : "SOLVER_ACCURACY", - "MAXIMUM NUMBER OF ITERATIONS FOR SOLVER" : "MAXIMUM_NUMBER_OF_ITERATIONS_FOR_SOLVER", - "CONTINUITY CORRECTION" : "CONTINUITY_CORRECTION", - "PRECONDITIONING" : "PRECONDITIONING", - "C-U PRECONDITIONING" : "C_U_PRECONDITIONING", - "FINITE ELEMENT ASSEMBLY" : "FINITE_ELEMENT_ASSEMBLY", - "IMPLICITATION FOR DEPTH" : "IMPLICITATION_FOR_DEPTH", - "IMPLICITATION FOR VELOCITY" : "IMPLICITATION_FOR_VELOCITY", - "DISCRETIZATIONS IN SPACE" : "DISCRETIZATIONS_IN_SPACE", - "PROPAGATION" : "PROPAGATION", - "INITIAL GUESS FOR H" : "INITIAL_GUESS_FOR_H", - "LINEARIZED PROPAGATION" : "LINEARIZED_PROPAGATION", - "INITIAL GUESS FOR U" : "INITIAL_GUESS_FOR_U", - "MEAN DEPTH FOR LINEARIZATION" : "MEAN_DEPTH_FOR_LINEARIZATION", - "ADVECTION" : "ADVECTION", - "ADVECTION OF H" : "ADVECTION_OF_H", - "ADVECTION OF U AND V" : "ADVECTION_OF_U_AND_V", - "TYPE OF ADVECTION" : "TYPE_OF_ADVECTION", - "OPTION FOR CHARACTERISTICS" : "OPTION_FOR_CHARACTERISTICS", - "SUPG OPTION" : "SUPG_OPTION", - "NUMBER OF GAUSS POINTS FOR WEAK CHARACTERISTICS" : "NUMBER_OF_GAUSS_POINTS_FOR_WEAK_CHARACTERISTICS", - "MASS-LUMPING FOR WEAK CHARACTERISTICS" : "MASS_LUMPING_FOR_WEAK_CHARACTERISTICS", - "MAXIMUM NUMBER OF ITERATIONS FOR ADVECTION SCHEMES" : "MAXIMUM_NUMBER_OF_ITERATIONS_FOR_ADVECTION_SCHEMES", - "UPWIND COEFFICIENTS" : "UPWIND_COEFFICIENTS", - "MASS-LUMPING ON H" : "MASS_LUMPING_ON_H", - "MASS-LUMPING ON VELOCITY" : "MASS_LUMPING_ON_VELOCITY", - "SCHEME FOR ADVECTION OF VELOCITIES" : "SCHEME_FOR_ADVECTION_OF_VELOCITIES", - "SCHEME OPTION FOR ADVECTION OF VELOCITIES" : "SCHEME_OPTION_FOR_ADVECTION_OF_VELOCITIES", - "FREE SURFACE GRADIENT COMPATIBILITY" : "FREE_SURFACE_GRADIENT_COMPATIBILITY", - "NUMBER OF SUB-ITERATIONS FOR NON-LINEARITIES" : "NUMBER_OF_SUB_ITERATIONS_FOR_NON_LINEARITIES", - "TREATMENT OF FLUXES AT THE BOUNDARIES" : "TREATMENT_OF_FLUXES_AT_THE_BOUNDARIES", - "NUMBER OF CORRECTIONS OF DISTRIBUTIVE SCHEMES" : "NUMBER_OF_CORRECTIONS_OF_DISTRIBUTIVE_SCHEMES", - "NUMBER OF SUB-STEPS OF DISTRIBUTIVE SCHEMES" : "NUMBER_OF_SUB_STEPS_OF_DISTRIBUTIVE_SCHEMES", - "PSI SCHEME OPTION" : "PSI_SCHEME_OPTION", - "DIFFUSION OF VELOCITY" : "DIFFUSION_OF_VELOCITY", - "OPTION FOR THE DIFFUSION OF VELOCITIES" : "OPTION_FOR_THE_DIFFUSION_OF_VELOCITIES", - "IMPLICITATION FOR DIFFUSION OF VELOCITY" : "IMPLICITATION_FOR_DIFFUSION_OF_VELOCITY", - "AD NUMBER OF DERIVATIVES" : "AD_NUMBER_OF_DERIVATIVES", - "AD NAMES OF DERIVATIVES" : "AD_NAMES_OF_DERIVATIVES", - "AD SYMBOLIC LINEAR SOLVER" : "AD_SYMBOLIC_LINEAR_SOLVER", - "AD LINEAR SOLVER RESET DERIVATIVES" : "AD_LINEAR_SOLVER_RESET_DERIVATIVES", - "AD LINEAR SOLVER DERIVATIVE CONVERGENCE" : "AD_LINEAR_SOLVER_DERIVATIVE_CONVERGENCE", - "MATRIX STORAGE" : "MATRIX_STORAGE", - "MATRIX-VECTOR PRODUCT" : "MATRIX_VECTOR_PRODUCT", - "NEWMARK TIME INTEGRATION COEFFICIENT" : "NEWMARK_TIME_INTEGRATION_COEFFICIENT", - "ZERO" : "ZERO", - "PROPAGATION OPTION" : "PROPAGATION_OPTION", - "OPTION OF THE HYDROSTATIC RECONSTRUCTION" : "OPTION_OF_THE_HYDROSTATIC_RECONSTRUCTION", - "CONVERGENCE STUDY" : "CONVERGENCE_STUDY", - "REFINEMENT LEVELS" : "REFINEMENT_LEVELS", - "VELOCITY DIFFUSIVITY" : "VELOCITY_DIFFUSIVITY", - "TURBULENCE MODEL" : "TURBULENCE_MODEL", - "ACCURACY OF SPALART-ALLMARAS" : "ACCURACY_OF_SPALART_ALLMARAS", - "INFORMATION ABOUT SPALART-ALLMARAS MODEL" : "INFORMATION_ABOUT_SPALART_ALLMARAS_MODEL", - "SOLVER FOR K-EPSILON MODEL" : "SOLVER_FOR_K_EPSILON_MODEL", - "OPTION FOR THE SOLVER FOR K-EPSILON MODEL" : "OPTION_FOR_THE_SOLVER_FOR_K_EPSILON_MODEL", - "PRECONDITIONING FOR K-EPSILON MODEL" : "PRECONDITIONING_FOR_K_EPSILON_MODEL", - "NON-DIMENSIONAL DISPERSION COEFFICIENTS" : "NON_DIMENSIONAL_DISPERSION_COEFFICIENTS", - "TURBULENCE REGIME FOR SOLID BOUNDARIES" : "TURBULENCE_REGIME_FOR_SOLID_BOUNDARIES", - "INFORMATION ABOUT K-EPSILON MODEL" : "INFORMATION_ABOUT_K_EPSILON_MODEL", - "ADVECTION OF K AND EPSILON" : "ADVECTION_OF_K_AND_EPSILON", - "SCHEME FOR ADVECTION OF K-EPSILON" : "SCHEME_FOR_ADVECTION_OF_K_EPSILON", - "SCHEME OPTION FOR ADVECTION OF K-EPSILON" : "SCHEME_OPTION_FOR_ADVECTION_OF_K_EPSILON", - "TIME STEP REDUCTION FOR K-EPSILON MODEL" : "TIME_STEP_REDUCTION_FOR_K_EPSILON_MODEL", - "ACCURACY OF K" : "ACCURACY_OF_K", - "ACCURACY OF EPSILON" : "ACCURACY_OF_EPSILON", - "MAXIMUM NUMBER OF ITERATIONS FOR K AND EPSILON" : "MAXIMUM_NUMBER_OF_ITERATIONS_FOR_K_AND_EPSILON", - "TIDAL FLATS" : "TIDAL_FLATS", - "OPTION FOR THE TREATMENT OF TIDAL FLATS" : "OPTION_FOR_THE_TREATMENT_OF_TIDAL_FLATS", - "TREATMENT OF NEGATIVE DEPTHS" : "TREATMENT_OF_NEGATIVE_DEPTHS", - "THRESHOLD FOR NEGATIVE DEPTHS" : "THRESHOLD_FOR_NEGATIVE_DEPTHS", - "THRESHOLD DEPTH FOR RECEDING PROCEDURE" : "THRESHOLD_DEPTH_FOR_RECEDING_PROCEDURE", - "H CLIPPING" : "H_CLIPPING", - "MINIMUM VALUE OF DEPTH" : "MINIMUM_VALUE_OF_DEPTH", - "PRESCRIBED TRACERS VALUES" : "PRESCRIBED_TRACERS_VALUES", - "NUMBER OF TRACERS" : "NUMBER_OF_TRACERS", - "NAMES OF TRACERS" : "NAMES_OF_TRACERS", - "INITIAL VALUES OF TRACERS" : "INITIAL_VALUES_OF_TRACERS", - "DENSITY EFFECTS" : "DENSITY_EFFECTS", - "MEAN TEMPERATURE" : "MEAN_TEMPERATURE", - "SOLVER FOR DIFFUSION OF TRACERS" : "SOLVER_FOR_DIFFUSION_OF_TRACERS", - "SOLVER OPTION FOR TRACERS DIFFUSION" : "SOLVER_OPTION_FOR_TRACERS_DIFFUSION", - "PRECONDITIONING FOR DIFFUSION OF TRACERS" : "PRECONDITIONING_FOR_DIFFUSION_OF_TRACERS", - "ACCURACY FOR DIFFUSION OF TRACERS" : "ACCURACY_FOR_DIFFUSION_OF_TRACERS", - "MAXIMUM NUMBER OF ITERATIONS FOR DIFFUSION OF TRACERS" : "MAXIMUM_NUMBER_OF_ITERATIONS_FOR_DIFFUSION_OF_TRACERS", - "VALUES OF THE TRACERS AT THE SOURCES" : "VALUES_OF_THE_TRACERS_AT_THE_SOURCES", - "VALUES OF TRACERS IN THE RAIN" : "VALUES_OF_TRACERS_IN_THE_RAIN", - "ADVECTION OF TRACERS" : "ADVECTION_OF_TRACERS", - "IMPLICITATION COEFFICIENT OF TRACERS" : "IMPLICITATION_COEFFICIENT_OF_TRACERS", - "DIFFUSION OF TRACERS" : "DIFFUSION_OF_TRACERS", - "COEFFICIENT FOR DIFFUSION OF TRACERS" : "COEFFICIENT_FOR_DIFFUSION_OF_TRACERS", - "OPTION FOR THE DIFFUSION OF TRACERS" : "OPTION_FOR_THE_DIFFUSION_OF_TRACERS", - "SCHEME FOR ADVECTION OF TRACERS" : "SCHEME_FOR_ADVECTION_OF_TRACERS", - "SCHEME OPTION FOR ADVECTION OF TRACERS" : "SCHEME_OPTION_FOR_ADVECTION_OF_TRACERS", - "MASS-LUMPING ON TRACERS" : "MASS_LUMPING_ON_TRACERS", - "NUMBER OF DROGUES" : "NUMBER_OF_DROGUES", - "PRINTOUT PERIOD FOR DROGUES" : "PRINTOUT_PERIOD_FOR_DROGUES", - "DROGUES FILE" : "DROGUES_FILE", - "ALGAE TRANSPORT MODEL" : "ALGAE_TRANSPORT_MODEL", - "ALGAE TYPE" : "ALGAE_TYPE", - "DIAMETER OF ALGAE" : "DIAMETER_OF_ALGAE", - "DENSITY OF ALGAE" : "DENSITY_OF_ALGAE", - "THICKNESS OF ALGAE" : "THICKNESS_OF_ALGAE", - "OIL SPILL MODEL" : "OIL_SPILL_MODEL", - "OIL SPILL STEERING FILE" : "OIL_SPILL_STEERING_FILE", - "STOCHASTIC DIFFUSION MODEL" : "STOCHASTIC_DIFFUSION_MODEL", - "NUMBER OF LAGRANGIAN DRIFTS" : "NUMBER_OF_LAGRANGIAN_DRIFTS", - "NUMBER OF WEIRS" : "NUMBER_OF_WEIRS", - "WEIRS DATA FILE" : "WEIRS_DATA_FILE", - "TYPE OF WEIRS" : "TYPE_OF_WEIRS", - "NUMBER OF CULVERTS" : "NUMBER_OF_CULVERTS", - "CULVERTS DATA FILE" : "CULVERTS_DATA_FILE", - "OPTION FOR CULVERTS" : "OPTION_FOR_CULVERTS", - "BREACH" : "BREACH", - "BREACHES DATA FILE" : "BREACHES_DATA_FILE", - "BINARY DATABASE 1 FOR TIDE" : "BINARY_DATABASE_1_FOR_TIDE", - "BINARY DATABASE 2 FOR TIDE" : "BINARY_DATABASE_2_FOR_TIDE", - "GEOGRAPHIC SYSTEM" : "GEOGRAPHIC_SYSTEM", - "ZONE NUMBER IN GEOGRAPHIC SYSTEM" : "ZONE_NUMBER_IN_GEOGRAPHIC_SYSTEM", - "LAMBERT 93 CONVERSION FILE" : "LAMBERT_93_CONVERSION_FILE", - "COEFFICIENT TO CALIBRATE SEA LEVEL" : "COEFFICIENT_TO_CALIBRATE_SEA_LEVEL", - "GLOBAL NUMBER OF THE POINT TO CALIBRATE HIGH WATER" : "GLOBAL_NUMBER_OF_THE_POINT_TO_CALIBRATE_HIGH_WATER", - "MINOR CONSTITUENTS INFERENCE" : "MINOR_CONSTITUENTS_INFERENCE", - "OPTION FOR TIDAL BOUNDARY CONDITIONS" : "OPTION_FOR_TIDAL_BOUNDARY_CONDITIONS", - "TIDAL DATA BASE" : "TIDAL_DATA_BASE", - "HARMONIC CONSTANTS FILE" : "HARMONIC_CONSTANTS_FILE", - "TIDAL MODEL FILE" : "TIDAL_MODEL_FILE", - "TIDAL MODEL FILE FORMAT" : "TIDAL_MODEL_FILE_FORMAT", - "ASCII DATABASE FOR TIDE" : "ASCII_DATABASE_FOR_TIDE", - "COEFFICIENT TO CALIBRATE TIDAL RANGE" : "COEFFICIENT_TO_CALIBRATE_TIDAL_RANGE", - "COEFFICIENT TO CALIBRATE TIDAL VELOCITIES" : "COEFFICIENT_TO_CALIBRATE_TIDAL_VELOCITIES", - "LOCAL NUMBER OF THE POINT TO CALIBRATE HIGH WATER" : "LOCAL_NUMBER_OF_THE_POINT_TO_CALIBRATE_HIGH_WATER", - "TIDE GENERATING FORCE" : "TIDE_GENERATING_FORCE", - "COUPLING WITH" : "COUPLING_WITH", - "NAMES OF CLANDESTINE VARIABLES" : "NAMES_OF_CLANDESTINE_VARIABLES", - "COUPLING DIRECTORY" : "COUPLING_DIRECTORY", - "DELWAQ STEERING FILE" : "DELWAQ_STEERING_FILE", - "DELWAQ PRINTOUT PERIOD" : "DELWAQ_PRINTOUT_PERIOD", - "EXCHANGES BETWEEN NODES DELWAQ FILE" : "EXCHANGES_BETWEEN_NODES_DELWAQ_FILE", - "NODES DISTANCES DELWAQ FILE" : "NODES_DISTANCES_DELWAQ_FILE", - "BOTTOM SURFACES DELWAQ FILE" : "BOTTOM_SURFACES_DELWAQ_FILE", - "VOLUMES DELWAQ FILE" : "VOLUMES_DELWAQ_FILE", - "EXCHANGE AREAS DELWAQ FILE" : "EXCHANGE_AREAS_DELWAQ_FILE", - "VERTICAL FLUXES DELWAQ FILE" : "VERTICAL_FLUXES_DELWAQ_FILE", - "VELOCITY DELWAQ FILE" : "VELOCITY_DELWAQ_FILE", - "DIFFUSIVITY DELWAQ FILE" : "DIFFUSIVITY_DELWAQ_FILE", - "TEMPERATURE DELWAQ FILE" : "TEMPERATURE_DELWAQ_FILE", - "SALINITY DELWAQ FILE" : "SALINITY_DELWAQ_FILE", - "VELOCITY FOR DELWAQ" : "VELOCITY_FOR_DELWAQ", - "DIFFUSIVITY FOR DELWAQ" : "DIFFUSIVITY_FOR_DELWAQ", - "TEMPERATURE FOR DELWAQ" : "TEMPERATURE_FOR_DELWAQ", - "SALINITY FOR DELWAQ" : "SALINITY_FOR_DELWAQ", - "SISYPHE STEERING FILE" : "SISYPHE_STEERING_FILE", - "COUPLING PERIOD FOR SISYPHE" : "COUPLING_PERIOD_FOR_SISYPHE", - "TOMAWAC STEERING FILE" : "TOMAWAC_STEERING_FILE", - "COUPLING PERIOD FOR TOMAWAC" : "COUPLING_PERIOD_FOR_TOMAWAC", - "WAQTEL STEERING FILE" : "WAQTEL_STEERING_FILE", - "KHIONE STEERING FILE" : "KHIONE_STEERING_FILE", - "LANGUAGE" : "LANGUAGE", - "STEERING FILE" : "STEERING_FILE", - "DICTIONARY" : "DICTIONARY", - "PARTITIONING TOOL" : "PARTITIONING_TOOL", - "RELEASE" : "RELEASE", - "LIST OF FILES" : "LIST_OF_FILES", - "DESCRIPTION OF LIBRARIES" : "DESCRIPTION_OF_LIBRARIES", - "DEFAULT EXECUTABLE" : "DEFAULT_EXECUTABLE", - "DEFAULT PARALLEL EXECUTABLE" : "DEFAULT_PARALLEL_EXECUTABLE", - "NESTOR" : "NESTOR", - "NESTOR ACTION FILE" : "NESTOR_ACTION_FILE", - "NESTOR POLYGON FILE" : "NESTOR_POLYGON_FILE", - "NESTOR SURFACE REFERENCE FILE" : "NESTOR_SURFACE_REFERENCE_FILE", - "NESTOR RESTART FILE" : "NESTOR_RESTART_FILE", -} diff --git a/Telemac/telemac2d_dicoCasFrToCata.py b/Telemac/telemac2d_dicoCasFrToCata.py deleted file mode 100644 index 59f59785..00000000 --- a/Telemac/telemac2d_dicoCasFrToCata.py +++ /dev/null @@ -1,650 +0,0 @@ -dicoCataToFrTelemac = { - "TITLE" : "TITRE", - "INITIAL_CONDITIONS" : "CONDITIONS INITIALES", - "INITIAL_ELEVATION" : "COTE INITIALE", - "INITIAL_DEPTH" : "HAUTEUR INITIALE", - "BINARY_DATA_FILE_1_FORMAT" : "FORMAT DU FICHIER DE DONNEES BINAIRE 1", - "BINARY_DATA_FILE_1" : "FICHIER DE DONNEES BINAIRE 1", - "BINARY_DATA_FILE_2_FORMAT" : "FORMAT DU FICHIER DE DONNEES BINAIRE 2", - "BINARY_DATA_FILE_2" : "FICHIER DE DONNEES BINAIRE 2", - "FORMATTED_DATA_FILE_1" : "FICHIER DE DONNEES FORMATE 1", - "FORMATTED_DATA_FILE_2" : "FICHIER DE DONNEES FORMATE 2", - "GEOMETRY_FILE_FORMAT" : "FORMAT DU FICHIER DE GEOMETRIE", - "GEOMETRY_FILE" : "FICHIER DE GEOMETRIE", - "FORTRAN_FILE" : "FICHIER FORTRAN", - "BOTTOM_TOPOGRAPHY_FILE" : "FICHIER DES FONDS", - "BOTTOM_SMOOTHINGS" : "LISSAGES DU FOND", - "BOUNDARY_CONDITIONS_FILE" : "FICHIER DES CONDITIONS AUX LIMITES", - "VALIDATION" : "VALIDATION", - "REFERENCE_FILE_FORMAT" : "FORMAT DU FICHIER DE REFERENCE", - "REFERENCE_FILE" : "FICHIER DE REFERENCE", - "PARALLEL_PROCESSORS" : "PROCESSEURS PARALLELES", - "CHECKING_THE_MESH" : "VERIFICATION DU MAILLAGE", - "MAXIMUM_NUMBER_OF_BOUNDARIES" : "NOMBRE MAXIMUM DE FRONTIERES", - "MAXIMUM_NUMBER_OF_SOURCES" : "NOMBRE MAXIMUM DE SOURCES", - "MAXIMUM_NUMBER_OF_TRACERS" : "NOMBRE MAXIMUM DE TRACEURS", - "VECTOR_LENGTH" : "LONGUEUR DU VECTEUR", - "COMPUTATION_CONTINUED" : "SUITE DE CALCUL", - "PREVIOUS_COMPUTATION_FILE_FORMAT" : "FORMAT DU FICHIER DU CALCUL PRECEDENT", - "PREVIOUS_COMPUTATION_FILE" : "FICHIER DU CALCUL PRECEDENT", - "RECORD_NUMBER_FOR_RESTART" : "ENREGISTREMENT POUR SUITE DE CALCUL", - "INITIAL_TIME_SET_TO_ZERO" : "REMISE A ZERO DU TEMPS", - "NUMBER_OF_FIRST_TIME_STEP_FOR_GRAPHIC_PRINTOUTS" : "NUMERO DU PREMIER PAS DE TEMPS POUR LES SORTIES GRAPHIQUES", - "GRAPHIC_PRINTOUT_PERIOD" : "PERIODE POUR LES SORTIES GRAPHIQUES", - "VARIABLES_FOR_GRAPHIC_PRINTOUTS" : "VARIABLES POUR LES SORTIES GRAPHIQUES", - "NUMBER_OF_PRIVATE_ARRAYS" : "NOMBRE DE TABLEAUX PRIVES", - "NAMES_OF_PRIVATE_VARIABLES" : "NOMS DES VARIABLES PRIVEES", - "RESULTS_FILE_FORMAT" : "FORMAT DU FICHIER DES RESULTATS", - "RESULTS_FILE" : "FICHIER DES RESULTATS", - "RESULT_FILE_IN_LONGITUDE_LATITUDE" : "FICHIER RESULTAT EN LONGITUDE-LATITUDE", - "BINARY_RESULTS_FILE_FORMAT" : "FORMAT DU FICHIER DE RESULTATS BINAIRE", - "BINARY_RESULTS_FILE" : "FICHIER DE RESULTATS BINAIRE", - "FORMATTED_RESULTS_FILE" : "FICHIER DE RESULTATS FORMATE", - "CONTROL_SECTIONS" : "SECTIONS DE CONTROLE", - "PRINTING_CUMULATED_FLOWRATES" : "IMPRESSION DU CUMUL DES FLUX", - "COMPATIBLE_COMPUTATION_OF_FLUXES" : "CALCUL COMPATIBLE DES FLUX", - "SECTIONS_INPUT_FILE" : "FICHIER DES SECTIONS DE CONTROLE", - "SECTIONS_OUTPUT_FILE" : "FICHIER DE SORTIE DES SECTIONS DE CONTROLE", - "FLUXLINE" : "FLUXLINE", - "FLUXLINE_INPUT_FILE" : "FICHIER DE FLUXLINE", - "NUMBER_OF_FIRST_TIME_STEP_FOR_LISTING_PRINTOUTS" : "NUMERO DU PREMIER PAS DE TEMPS POUR LES SORTIES LISTING", - "LISTING_PRINTOUT_PERIOD" : "PERIODE DE SORTIE LISTING", - "LISTING_FOR_PRINTOUT_PERIOD" : "PERIODE POUR LES SORTIES LISTING", - "LISTING_PRINTOUT" : "SORTIE LISTING", - "VARIABLES_TO_BE_PRINTED" : "VARIABLES A IMPRIMER", - "MASS_BALANCE" : "BILAN DE MASSE", - "INFORMATION_ABOUT_SOLVER" : "INFORMATIONS SUR LE SOLVEUR", - "LIST_OF_POINTS" : "LISTE DE POINTS", - "NAMES_OF_POINTS" : "NOMS DES POINTS", - "FOURIER_ANALYSIS_PERIODS" : "PERIODES D'ANALYSE DE FOURIER", - "TIME_RANGE_FOR_FOURIER_ANALYSIS" : "BORNES EN TEMPS POUR L'ANALYSE DE FOURIER", - "PRESCRIBED_ELEVATIONS" : "COTES IMPOSEES", - "PRESCRIBED_FLOWRATES" : "DEBITS IMPOSES", - "PRESCRIBED_VELOCITIES" : "VITESSES IMPOSEES", - "STAGE_DISCHARGE_CURVES" : "COURBES DE TARAGE", - "STAGE_DISCHARGE_CURVES_FILE" : "FICHIER DES COURBES DE TARAGE", - "VELOCITY_PROFILES" : "PROFILS DE VITESSE", - "OPTION_FOR_LIQUID_BOUNDARIES" : "OPTION POUR LES FRONTIERES LIQUIDES", - "LIQUID_BOUNDARIES_FILE" : "FICHIER DES FRONTIERES LIQUIDES", - "ELEMENTS_MASKED_BY_USER" : "ELEMENTS MASQUES PAR L'UTILISATEUR", - "MAXIMUM_NUMBER_OF_FRICTION_DOMAINS" : "NOMBRE MAXIMUM DE DOMAINES DE FROTTEMENT", - "FRICTION_DATA" : "DONNEES POUR LE FROTTEMENT", - "FRICTION_DATA_FILE" : "FICHIER DE DONNEES POUR LE FROTTEMENT", - "LAW_OF_BOTTOM_FRICTION" : "LOI DE FROTTEMENT SUR LE FOND", - "FRICTION_COEFFICIENT" : "COEFFICIENT DE FROTTEMENT", - "MANNING_DEFAULT_VALUE_FOR_COLEBROOK_WHITE_LAW" : "VALEUR PAR DEFAUT DU MANNING POUR LA LOI DE COLEBROOK-WHITE", - "DEPTH_IN_FRICTION_TERMS" : "HAUTEUR DANS LES TERMES DE FROTTEMENT", - "NON_SUBMERGED_VEGETATION_FRICTION" : "FROTTEMENT POUR LA VEGETATION NON SUBMERGEE", - "DIAMETER_OF_ROUGHNESS_ELEMENTS" : "DIAMETRE DES ELEMENTS DE FROTTEMENT", - "SPACING_OF_ROUGHNESS_ELEMENTS" : "ESPACEMENT DES ELEMENTS DE FROTTEMENT", - "LAW_OF_FRICTION_ON_LATERAL_BOUNDARIES" : "LOI DE FROTTEMENT SUR LES PAROIS LATERALES", - "ROUGHNESS_COEFFICIENT_OF_BOUNDARIES" : "COEFFICIENT DE RUGOSITE DES BORDS", - "DEFINITION_OF_ZONES" : "DEFINITION DE ZONES", - "ZONES_FILE" : "FICHIER DES ZONES", - "ICE_PROCESSES" : "PROCESSUS LIES AUX GLACES", - "WIND" : "VENT", - "OPTION_FOR_WIND" : "OPTION DU VENT", - "COEFFICIENT_OF_WIND_INFLUENCE" : "COEFFICIENT D'INFLUENCE DU VENT", - "WIND_VELOCITY_ALONG_X" : "VITESSE DU VENT SUIVANT X", - "WIND_VELOCITY_ALONG_Y" : "VITESSE DU VENT SUIVANT Y", - "SPEED_AND_DIRECTION_OF_WIND" : "VITESSE ET DIRECTION DU VENT", - "THRESHOLD_DEPTH_FOR_WIND" : "PROFONDEUR LIMITE POUR LE VENT", - "AIR_PRESSURE" : "PRESSION ATMOSPHERIQUE", - "VALUE_OF_ATMOSPHERIC_PRESSURE" : "VALEUR DE LA PRESSION ATMOSPHERIQUE", - "RAIN_OR_EVAPORATION" : "PLUIE OU EVAPORATION", - "RAIN_OR_EVAPORATION_IN_MM_PER_DAY" : "PLUIE OU EVAPORATION EN MM PAR JOUR", - "RAINFALL_RUNOFF_MODEL" : "MODELE PLUIE-DEBIT", - "ANTECEDENT_MOISTURE_CONDITIONS" : "CONDITIONS D'HUMIDITE PRECEDENTE", - "DURATION_OF_RAIN_OR_EVAPORATION_IN_HOURS" : "DUREE DE LA PLUIE OU EVAPORATION EN HEURES", - "ASCII_ATMOSPHERIC_DATA_FILE" : "FICHIER ASCII DE DONNEES ATMOSPHERIQUES", - "BINARY_ATMOSPHERIC_DATA_FILE" : "FICHIER BINAIRE DE DONNEES ATMOSPHERIQUES", - "BINARY_ATMOSPHERIC_DATA_FILE_FORMAT" : "FORMAT DU FICHIER BINAIRE DE DONNEES ATMOSPHERIQUES", - "OPTION_FOR_INITIAL_ABSTRACTION_RATIO" : "OPTION POUR RATIO DES PERTES INITIALES", - "WAVE_DRIVEN_CURRENTS" : "COURANTS DE HOULE", - "RECORD_NUMBER_IN_WAVE_FILE" : "NUMERO DE L'ENREGISTREMENT DANS LE FICHIER DE HOULE", - "WAVE_ENHANCED_FRICTION_FACTOR" : "AUGMENTATION DU FROTTEMENT PAR LA HOULE", - "PARAMETER_ESTIMATION" : "ESTIMATION DE PARAMETRE", - "COST_FUNCTION" : "FONCTION COUT", - "IDENTIFICATION_METHOD" : "METHODE D'IDENTIFICATION", - "TOLERANCES_FOR_IDENTIFICATION" : "PRECISIONS POUR L'IDENTIFICATION", - "MAXIMUM_NUMBER_OF_ITERATIONS_FOR_IDENTIFICATION" : "MAXIMUM D'ITERATIONS POUR L'IDENTIFICATION", - "ABSCISSAE_OF_SOURCES" : "ABSCISSES DES SOURCES", - "ORDINATES_OF_SOURCES" : "ORDONNEES DES SOURCES", - "WATER_DISCHARGE_OF_SOURCES" : "DEBITS DES SOURCES", - "VELOCITIES_OF_THE_SOURCES_ALONG_X" : "VITESSES DES SOURCES SELON X", - "VELOCITIES_OF_THE_SOURCES_ALONG_Y" : "VITESSES DES SOURCES SELON Y", - "TYPE_OF_SOURCES" : "TYPE DES SOURCES", - "SOURCES_FILE" : "FICHIER DES SOURCES", - "GLOBAL_NUMBERS_OF_SOURCE_NODES" : "NUMEROS GLOBAUX DES NOEUDS DES SOURCES", - "WATER_QUALITY_PROCESS" : "PROCESSUS QUALITE D'EAU", - "WATER_DENSITY" : "MASSE VOLUMIQUE DE L'EAU", - "GRAVITY_ACCELERATION" : "ACCELERATION DE LA PESANTEUR", - "VERTICAL_STRUCTURES" : "STRUCTURES VERTICALES", - "EQUATIONS" : "EQUATIONS", - "TREATMENT_OF_THE_LINEAR_SYSTEM" : "TRAITEMENT DU SYSTEME LINEAIRE", - "FINITE_VOLUME_SCHEME" : "SCHEMA EN VOLUMES FINIS", - "CORIOLIS" : "CORIOLIS", - "CORIOLIS_COEFFICIENT" : "COEFFICIENT DE CORIOLIS", - "OPTION_FOR_TSUNAMI_GENERATION" : "OPTION POUR LA GENERATION DE TSUNAMI", - "PHYSICAL_CHARACTERISTICS_OF_THE_TSUNAMI" : "PARAMETRES PHYSIQUES DU TSUNAMI", - "SECONDARY_CURRENTS" : "COURANTS SECONDAIRES", - "PRODUCTION_COEFFICIENT_FOR_SECONDARY_CURRENTS" : "COEFFICIENT DE PRODUCTION POUR COURANTS SECONDAIRES", - "DISSIPATION_COEFFICIENT_FOR_SECONDARY_CURRENTS" : "COEFFICIENT DE DISSIPATION POUR COURANTS SECONDAIRES", - "DEBUGGER" : "DEBUGGER", - "TIME_STEP" : "PAS DE TEMPS", - "NUMBER_OF_TIME_STEPS" : "NOMBRE DE PAS DE TEMPS", - "DURATION" : "DUREE DU CALCUL", - "ORIGINAL_DATE_OF_TIME" : "DATE DE L'ORIGINE DES TEMPS", - "ORIGINAL_HOUR_OF_TIME" : "HEURE DE L'ORIGINE DES TEMPS", - "STOP_IF_A_STEADY_STATE_IS_REACHED" : "ARRET SI UN ETAT PERMANENT EST ATTEINT", - "STOP_CRITERIA" : "CRITERES D'ARRET", - "CONTROL_OF_LIMITS" : "CONTROLE DES LIMITES", - "LIMIT_VALUES" : "VALEURS LIMITES", - "VARIABLE_TIME_STEP" : "PAS DE TEMPS VARIABLE", - "DESIRED_COURANT_NUMBER" : "NOMBRE DE COURANT SOUHAITE", - "ORIGIN_COORDINATES" : "COORDONNEES DE L'ORIGINE", - "SPHERICAL_COORDINATES" : "COORDONNEES SPHERIQUES", - "LATITUDE_OF_ORIGIN_POINT" : "LATITUDE DU POINT ORIGINE", - "LONGITUDE_OF_ORIGIN_POINT" : "LONGITUDE DU POINT ORIGINE", - "NORTH" : "NORD", - "SPATIAL_PROJECTION_TYPE" : "TYPE DE PROJECTION SPATIALE", - "SOLVER" : "SOLVEUR", - "SOLVER_OPTION" : "OPTION DU SOLVEUR", - "SOLVER_ACCURACY" : "PRECISION DU SOLVEUR", - "MAXIMUM_NUMBER_OF_ITERATIONS_FOR_SOLVER" : "MAXIMUM D'ITERATIONS POUR LE SOLVEUR", - "CONTINUITY_CORRECTION" : "CORRECTION DE CONTINUITE", - "PRECONDITIONING" : "PRECONDITIONNEMENT", - "C_U_PRECONDITIONING" : "PRECONDITIONNEMENT C-U", - "FINITE_ELEMENT_ASSEMBLY" : "ASSEMBLAGE EN ELEMENTS FINIS", - "IMPLICITATION_FOR_DEPTH" : "IMPLICITATION POUR LA HAUTEUR", - "IMPLICITATION_FOR_VELOCITY" : "IMPLICITATION POUR LA VITESSE", - "DISCRETIZATIONS_IN_SPACE" : "DISCRETISATIONS EN ESPACE", - "PROPAGATION" : "PROPAGATION", - "INITIAL_GUESS_FOR_H" : "ORDRE DU TIR INITIAL POUR H", - "LINEARIZED_PROPAGATION" : "PROPAGATION LINEARISEE", - "INITIAL_GUESS_FOR_U" : "ORDRE DU TIR INITIAL POUR U", - "MEAN_DEPTH_FOR_LINEARIZATION" : "PROFONDEUR MOYENNE POUR LA LINEARISATION", - "ADVECTION" : "CONVECTION", - "ADVECTION_OF_H" : "CONVECTION DE H", - "ADVECTION_OF_U_AND_V" : "CONVECTION DE U ET V", - "TYPE_OF_ADVECTION" : "FORME DE LA CONVECTION", - "OPTION_FOR_CHARACTERISTICS" : "OPTION POUR LES CARACTERISTIQUES", - "SUPG_OPTION" : "OPTION DE SUPG", - "NUMBER_OF_GAUSS_POINTS_FOR_WEAK_CHARACTERISTICS" : "NOMBRE DE POINTS DE GAUSS POUR LES CARACTERISTIQUES FAIBLES", - "MASS_LUMPING_FOR_WEAK_CHARACTERISTICS" : "MASS-LUMPING POUR LES CARACTERISTIQUES FAIBLES", - "MAXIMUM_NUMBER_OF_ITERATIONS_FOR_ADVECTION_SCHEMES" : "MAXIMUM D'ITERATIONS POUR LES SCHEMAS DE CONVECTION", - "UPWIND_COEFFICIENTS" : "COEFFICIENTS DE DECENTREMENT", - "MASS_LUMPING_ON_H" : "MASS-LUMPING SUR H", - "MASS_LUMPING_ON_VELOCITY" : "MASS-LUMPING SUR LA VITESSE", - "SCHEME_FOR_ADVECTION_OF_VELOCITIES" : "SCHEMA POUR LA CONVECTION DES VITESSES", - "SCHEME_OPTION_FOR_ADVECTION_OF_VELOCITIES" : "OPTION DU SCHEMA POUR LA CONVECTION DES VITESSES", - "FREE_SURFACE_GRADIENT_COMPATIBILITY" : "COMPATIBILITE DU GRADIENT DE SURFACE LIBRE", - "NUMBER_OF_SUB_ITERATIONS_FOR_NON_LINEARITIES" : "NOMBRE DE SOUS-ITERATIONS POUR LES NON-LINEARITES", - "TREATMENT_OF_FLUXES_AT_THE_BOUNDARIES" : "TRAITEMENT DES FLUX AUX FRONTIERES", - "NUMBER_OF_CORRECTIONS_OF_DISTRIBUTIVE_SCHEMES" : "NOMBRE DE CORRECTIONS DES SCHEMAS DISTRIBUTIFS", - "NUMBER_OF_SUB_STEPS_OF_DISTRIBUTIVE_SCHEMES" : "NOMBRE DE SOUS-PAS DES SCHEMAS DISTRIBUTIFS", - "PSI_SCHEME_OPTION" : "OPTION DU SCHEMA PSI", - "DIFFUSION_OF_VELOCITY" : "DIFFUSION DES VITESSES", - "OPTION_FOR_THE_DIFFUSION_OF_VELOCITIES" : "OPTION POUR LA DIFFUSION DES VITESSES", - "IMPLICITATION_FOR_DIFFUSION_OF_VELOCITY" : "IMPLICITATION POUR LA DIFFUSION DES VITESSES", - "AD_NUMBER_OF_DERIVATIVES" : "AD NOMBRE DE DERIVEES", - "AD_NAMES_OF_DERIVATIVES" : "AD NOMS DES DERIVEES", - "AD_SYMBOLIC_LINEAR_SOLVER" : "AD SOLVEUR LINEAIRE SYMBOLIQUE", - "AD_LINEAR_SOLVER_RESET_DERIVATIVES" : "AD REMISE A ZERO DES DERIVEES DU SOLVEUR LINEAIRE", - "AD_LINEAR_SOLVER_DERIVATIVE_CONVERGENCE" : "AD CONVERGENCE DES DERIVEES POUR LE SOLVEUR LINEAIRE", - "MATRIX_STORAGE" : "STOCKAGE DES MATRICES", - "MATRIX_VECTOR_PRODUCT" : "PRODUIT MATRICE-VECTEUR", - "NEWMARK_TIME_INTEGRATION_COEFFICIENT" : "COEFFICIENT D'INTEGRATION EN TEMPS DE NEWMARK", - "ZERO" : "ZERO", - "PROPAGATION_OPTION" : "OPTION DE PROPAGATION", - "OPTION_OF_THE_HYDROSTATIC_RECONSTRUCTION" : "OPTION DE LA RECONSTRUCION HYDROSTATIQUE", - "CONVERGENCE_STUDY" : "ETUDE DE CONVERGENCE", - "REFINEMENT_LEVELS" : "NIVEAUX DE RAFFINEMENT", - "VELOCITY_DIFFUSIVITY" : "COEFFICIENT DE DIFFUSION DES VITESSES", - "TURBULENCE_MODEL" : "MODELE DE TURBULENCE", - "ACCURACY_OF_SPALART_ALLMARAS" : "PRECISION SUR SPALART-ALLMARAS", - "INFORMATION_ABOUT_SPALART_ALLMARAS_MODEL" : "INFORMATION SUR LE MODELE SPALART-ALLMARAS", - "SOLVER_FOR_K_EPSILON_MODEL" : "SOLVEUR POUR LE MODELE K-EPSILON", - "OPTION_FOR_THE_SOLVER_FOR_K_EPSILON_MODEL" : "OPTION DU SOLVEUR POUR LE MODELE K-EPSILON", - "PRECONDITIONING_FOR_K_EPSILON_MODEL" : "PRECONDITIONNEMENT POUR LE MODELE K-EPSILON", - "NON_DIMENSIONAL_DISPERSION_COEFFICIENTS" : "COEFFICIENTS ADIMENSIONNELS DE DISPERSION", - "TURBULENCE_REGIME_FOR_SOLID_BOUNDARIES" : "REGIME DE TURBULENCE POUR LES PAROIS", - "INFORMATION_ABOUT_K_EPSILON_MODEL" : "INFORMATIONS SUR LE MODELE K-EPSILON", - "ADVECTION_OF_K_AND_EPSILON" : "CONVECTION DE K ET EPSILON", - "SCHEME_FOR_ADVECTION_OF_K_EPSILON" : "SCHEMA POUR LA CONVECTION DU K-EPSILON", - "SCHEME_OPTION_FOR_ADVECTION_OF_K_EPSILON" : "OPTION DU SCHEMA POUR LA CONVECTION DU K-EPSILON", - "TIME_STEP_REDUCTION_FOR_K_EPSILON_MODEL" : "REDUCTION DU PAS DE TEMPS POUR LE MODELE K-EPSILON", - "ACCURACY_OF_K" : "PRECISION SUR K", - "ACCURACY_OF_EPSILON" : "PRECISION SUR EPSILON", - "MAXIMUM_NUMBER_OF_ITERATIONS_FOR_K_AND_EPSILON" : "MAXIMUM D'ITERATIONS POUR K ET EPSILON", - "TIDAL_FLATS" : "BANCS DECOUVRANTS", - "OPTION_FOR_THE_TREATMENT_OF_TIDAL_FLATS" : "OPTION DE TRAITEMENT DES BANCS DECOUVRANTS", - "TREATMENT_OF_NEGATIVE_DEPTHS" : "TRAITEMENT DES HAUTEURS NEGATIVES", - "THRESHOLD_FOR_NEGATIVE_DEPTHS" : "SEUIL POUR LES PROFONDEURS NEGATIVES", - "THRESHOLD_DEPTH_FOR_RECEDING_PROCEDURE" : "PROFONDEUR LIMITE POUR PROCEDURE DE RESSUYAGE", - "H_CLIPPING" : "CLIPPING DE H", - "MINIMUM_VALUE_OF_DEPTH" : "VALEUR MINIMUM DE H", - "PRESCRIBED_TRACERS_VALUES" : "VALEURS IMPOSEES DES TRACEURS", - "NUMBER_OF_TRACERS" : "NOMBRE DE TRACEURS", - "NAMES_OF_TRACERS" : "NOMS DES TRACEURS", - "INITIAL_VALUES_OF_TRACERS" : "VALEURS INITIALES DES TRACEURS", - "DENSITY_EFFECTS" : "EFFETS DE DENSITE", - "MEAN_TEMPERATURE" : "TEMPERATURE MOYENNE", - "SOLVER_FOR_DIFFUSION_OF_TRACERS" : "SOLVEUR POUR LA DIFFUSION DES TRACEURS", - "SOLVER_OPTION_FOR_TRACERS_DIFFUSION" : "OPTION DU SOLVEUR POUR LA DIFFUSION DES TRACEURS", - "PRECONDITIONING_FOR_DIFFUSION_OF_TRACERS" : "PRECONDITIONNEMENT POUR LA DIFFUSION DES TRACEURS", - "ACCURACY_FOR_DIFFUSION_OF_TRACERS" : "PRECISION POUR LA DIFFUSION DES TRACEURS", - "MAXIMUM_NUMBER_OF_ITERATIONS_FOR_DIFFUSION_OF_TRACERS" : "MAXIMUM D'ITERATIONS POUR LA DIFFUSION DES TRACEURS", - "VALUES_OF_THE_TRACERS_AT_THE_SOURCES" : "VALEURS DES TRACEURS DES SOURCES", - "VALUES_OF_TRACERS_IN_THE_RAIN" : "VALEURS DES TRACEURS DANS LA PLUIE", - "ADVECTION_OF_TRACERS" : "CONVECTION DES TRACEURS", - "IMPLICITATION_COEFFICIENT_OF_TRACERS" : "COEFFICIENT D'IMPLICITATION DES TRACEURS", - "DIFFUSION_OF_TRACERS" : "DIFFUSION DES TRACEURS", - "COEFFICIENT_FOR_DIFFUSION_OF_TRACERS" : "COEFFICIENT DE DIFFUSION DES TRACEURS", - "OPTION_FOR_THE_DIFFUSION_OF_TRACERS" : "OPTION POUR LA DIFFUSION DES TRACEURS", - "SCHEME_FOR_ADVECTION_OF_TRACERS" : "SCHEMA POUR LA CONVECTION DES TRACEURS", - "SCHEME_OPTION_FOR_ADVECTION_OF_TRACERS" : "OPTION DU SCHEMA POUR LA CONVECTION DES TRACEURS", - "MASS_LUMPING_ON_TRACERS" : "MASS-LUMPING SUR LES TRACEURS", - "NUMBER_OF_DROGUES" : "NOMBRE DE FLOTTEURS", - "PRINTOUT_PERIOD_FOR_DROGUES" : "PERIODE POUR LES SORTIES DE FLOTTEURS", - "DROGUES_FILE" : "FICHIER DES FLOTTEURS", - "ALGAE_TRANSPORT_MODEL" : "MODELE DE TRANSPORT DES ALGUES", - "ALGAE_TYPE" : "TYPE DES ALGUES", - "DIAMETER_OF_ALGAE" : "DIAMETRE DES ALGUES", - "DENSITY_OF_ALGAE" : "MASSE VOLUMIQUE DES ALGUES", - "THICKNESS_OF_ALGAE" : "EPAISSEUR DES ALGUES", - "OIL_SPILL_MODEL" : "MODELE DE NAPPES D'HYDROCARBURES", - "OIL_SPILL_STEERING_FILE" : "FICHIER DE COMMANDES HYDROCARBURES", - "STOCHASTIC_DIFFUSION_MODEL" : "MODELE DE DIFFUSION STOCHASTIQUE", - "NUMBER_OF_LAGRANGIAN_DRIFTS" : "NOMBRE DE DERIVES LAGRANGIENNES", - "NUMBER_OF_WEIRS" : "NOMBRE DE SEUILS", - "WEIRS_DATA_FILE" : "FICHIER DE DONNEES DES SEUILS", - "TYPE_OF_WEIRS" : "TYPE DES SEUILS", - "NUMBER_OF_CULVERTS" : "NOMBRE DE BUSES", - "CULVERTS_DATA_FILE" : "FICHIER DE DONNEES DES BUSES", - "OPTION_FOR_CULVERTS" : "OPTION POUR LES BUSES", - "BREACH" : "BRECHE", - "BREACHES_DATA_FILE" : "FICHIER DE DONNEES DES BRECHES", - "BINARY_DATABASE_1_FOR_TIDE" : "BASE BINAIRE 1 DE DONNEES DE MAREE", - "BINARY_DATABASE_2_FOR_TIDE" : "BASE BINAIRE 2 DE DONNEES DE MAREE", - "GEOGRAPHIC_SYSTEM" : "SYSTEME GEOGRAPHIQUE", - "ZONE_NUMBER_IN_GEOGRAPHIC_SYSTEM" : "NUMERO DE FUSEAU OU PROJECTION DANS LE SYSTEME GEOGRAPHIQUE", - "LAMBERT_93_CONVERSION_FILE" : "FICHIER DE CONVERSION LAMBERT 93", - "COEFFICIENT_TO_CALIBRATE_SEA_LEVEL" : "COEFFICIENT DE CALAGE DU NIVEAU DE MER", - "GLOBAL_NUMBER_OF_THE_POINT_TO_CALIBRATE_HIGH_WATER" : "NUMERO GLOBAL DU POINT POUR CALER LA PLEINE MER", - "MINOR_CONSTITUENTS_INFERENCE" : "INTERPOLATION DE COMPOSANTES MINEURES", - "OPTION_FOR_TIDAL_BOUNDARY_CONDITIONS" : "OPTION POUR LES CONDITIONS AUX LIMITES DE MAREE", - "TIDAL_DATA_BASE" : "BASE DE DONNEES DE MAREE", - "HARMONIC_CONSTANTS_FILE" : "FICHIER DES CONSTANTES HARMONIQUES", - "TIDAL_MODEL_FILE" : "FICHIER DU MODELE DE MAREE", - "TIDAL_MODEL_FILE_FORMAT" : "FORMAT DU FICHIER DU MODELE DE MAREE", - "ASCII_DATABASE_FOR_TIDE" : "BASE ASCII DE DONNEES DE MAREE", - "COEFFICIENT_TO_CALIBRATE_TIDAL_RANGE" : "COEFFICIENT DE CALAGE DU MARNAGE", - "COEFFICIENT_TO_CALIBRATE_TIDAL_VELOCITIES" : "COEFFICIENT DE CALAGE DES VITESSES DE COURANT", - "LOCAL_NUMBER_OF_THE_POINT_TO_CALIBRATE_HIGH_WATER" : "NUMERO LOCAL DU POINT POUR CALER LA PLEINE MER", - "TIDE_GENERATING_FORCE" : "FORCE GENERATRICE DE LA MAREE", - "COUPLING_WITH" : "COUPLAGE AVEC", - "NAMES_OF_CLANDESTINE_VARIABLES" : "NOMS DES VARIABLES CLANDESTINES", - "COUPLING_DIRECTORY" : "DOSSIER DE COUPLAGE", - "DELWAQ_STEERING_FILE" : "FICHIER DE COMMANDE DELWAQ", - "DELWAQ_PRINTOUT_PERIOD" : "PERIODE DE SORTIE POUR DELWAQ", - "EXCHANGES_BETWEEN_NODES_DELWAQ_FILE" : "FICHIER DELWAQ DES ECHANGES ENTRE NOEUDS", - "NODES_DISTANCES_DELWAQ_FILE" : "FICHIER DELWAQ DES DISTANCES ENTRE NOEUDS", - "BOTTOM_SURFACES_DELWAQ_FILE" : "FICHIER DELWAQ DES SURFACES DU FOND", - "VOLUMES_DELWAQ_FILE" : "FICHIER DELWAQ DES VOLUMES", - "EXCHANGE_AREAS_DELWAQ_FILE" : "FICHIER DELWAQ DES SURFACES DE FLUX", - "VERTICAL_FLUXES_DELWAQ_FILE" : "FICHIER DELWAQ DES FLUX VERTICAUX", - "VELOCITY_DELWAQ_FILE" : "FICHIER DELWAQ DE LA VITESSE", - "DIFFUSIVITY_DELWAQ_FILE" : "FICHIER DELWAQ DE LA DIFFUSION", - "TEMPERATURE_DELWAQ_FILE" : "FICHIER DELWAQ DE LA TEMPERATURE", - "SALINITY_DELWAQ_FILE" : "FICHIER DELWAQ DE LA SALINITE", - "VELOCITY_FOR_DELWAQ" : "VITESSE POUR DELWAQ", - "DIFFUSIVITY_FOR_DELWAQ" : "DIFFUSION POUR DELWAQ", - "TEMPERATURE_FOR_DELWAQ" : "TEMPERATURE POUR DELWAQ", - "SALINITY_FOR_DELWAQ" : "SALINITE POUR DELWAQ", - "SISYPHE_STEERING_FILE" : "FICHIER DES PARAMETRES DE SISYPHE", - "COUPLING_PERIOD_FOR_SISYPHE" : "PERIODE DE COUPLAGE POUR SISYPHE", - "TOMAWAC_STEERING_FILE" : "FICHIER DES PARAMETRES DE TOMAWAC", - "COUPLING_PERIOD_FOR_TOMAWAC" : "PERIODE DE COUPLAGE POUR TOMAWAC", - "WAQTEL_STEERING_FILE" : "FICHIER DES PARAMETRES DE WAQTEL", - "KHIONE_STEERING_FILE" : "FICHIER DES PARAMETRES DE KHIONE", - "LANGUAGE" : "LANGUE", - "STEERING_FILE" : "FICHIER DES PARAMETRES", - "DICTIONARY" : "DICTIONNAIRE", - "PARTITIONING_TOOL" : "PARTITIONNEUR", - "RELEASE" : "NUMERO DE VERSION", - "LIST_OF_FILES" : "LISTE DES FICHIERS", - "DESCRIPTION_OF_LIBRARIES" : "DESCRIPTION DES LIBRAIRIES", - "DEFAULT_EXECUTABLE" : "EXECUTABLE PAR DEFAUT", - "DEFAULT_PARALLEL_EXECUTABLE" : "EXECUTABLE PARALLELE PAR DEFAUT", - "NESTOR" : "NESTOR", - "NESTOR_ACTION_FILE" : "FICHIER DE NESTOR ACTION", - "NESTOR_POLYGON_FILE" : "FICHIER DE NESTOR POLYGON", - "NESTOR_SURFACE_REFERENCE_FILE" : "FICHIER DE NESTOR DE SURFACE REFERENCE", - "NESTOR_RESTART_FILE" : "FICHIER DE NESTOR RESTART", -} -dicoCasFrToCata = { - "TITRE" : "TITLE", - "CONDITIONS INITIALES" : "INITIAL_CONDITIONS", - "COTE INITIALE" : "INITIAL_ELEVATION", - "HAUTEUR INITIALE" : "INITIAL_DEPTH", - "FORMAT DU FICHIER DE DONNEES BINAIRE 1" : "BINARY_DATA_FILE_1_FORMAT", - "FICHIER DE DONNEES BINAIRE 1" : "BINARY_DATA_FILE_1", - "FORMAT DU FICHIER DE DONNEES BINAIRE 2" : "BINARY_DATA_FILE_2_FORMAT", - "FICHIER DE DONNEES BINAIRE 2" : "BINARY_DATA_FILE_2", - "FICHIER DE DONNEES FORMATE 1" : "FORMATTED_DATA_FILE_1", - "FICHIER DE DONNEES FORMATE 2" : "FORMATTED_DATA_FILE_2", - "FORMAT DU FICHIER DE GEOMETRIE" : "GEOMETRY_FILE_FORMAT", - "FICHIER DE GEOMETRIE" : "GEOMETRY_FILE", - "FICHIER FORTRAN" : "FORTRAN_FILE", - "FICHIER DES FONDS" : "BOTTOM_TOPOGRAPHY_FILE", - "LISSAGES DU FOND" : "BOTTOM_SMOOTHINGS", - "FICHIER DES CONDITIONS AUX LIMITES" : "BOUNDARY_CONDITIONS_FILE", - "VALIDATION" : "VALIDATION", - "FORMAT DU FICHIER DE REFERENCE" : "REFERENCE_FILE_FORMAT", - "FICHIER DE REFERENCE" : "REFERENCE_FILE", - "PROCESSEURS PARALLELES" : "PARALLEL_PROCESSORS", - "VERIFICATION DU MAILLAGE" : "CHECKING_THE_MESH", - "NOMBRE MAXIMUM DE FRONTIERES" : "MAXIMUM_NUMBER_OF_BOUNDARIES", - "NOMBRE MAXIMUM DE SOURCES" : "MAXIMUM_NUMBER_OF_SOURCES", - "NOMBRE MAXIMUM DE TRACEURS" : "MAXIMUM_NUMBER_OF_TRACERS", - "LONGUEUR DU VECTEUR" : "VECTOR_LENGTH", - "SUITE DE CALCUL" : "COMPUTATION_CONTINUED", - "FORMAT DU FICHIER DU CALCUL PRECEDENT" : "PREVIOUS_COMPUTATION_FILE_FORMAT", - "FICHIER DU CALCUL PRECEDENT" : "PREVIOUS_COMPUTATION_FILE", - "ENREGISTREMENT POUR SUITE DE CALCUL" : "RECORD_NUMBER_FOR_RESTART", - "REMISE A ZERO DU TEMPS" : "INITIAL_TIME_SET_TO_ZERO", - "NUMERO DU PREMIER PAS DE TEMPS POUR LES SORTIES GRAPHIQUES" : "NUMBER_OF_FIRST_TIME_STEP_FOR_GRAPHIC_PRINTOUTS", - "PERIODE POUR LES SORTIES GRAPHIQUES" : "GRAPHIC_PRINTOUT_PERIOD", - "VARIABLES POUR LES SORTIES GRAPHIQUES" : "VARIABLES_FOR_GRAPHIC_PRINTOUTS", - "NOMBRE DE TABLEAUX PRIVES" : "NUMBER_OF_PRIVATE_ARRAYS", - "NOMS DES VARIABLES PRIVEES" : "NAMES_OF_PRIVATE_VARIABLES", - "FORMAT DU FICHIER DES RESULTATS" : "RESULTS_FILE_FORMAT", - "FICHIER DES RESULTATS" : "RESULTS_FILE", - "FICHIER RESULTAT EN LONGITUDE-LATITUDE" : "RESULT_FILE_IN_LONGITUDE_LATITUDE", - "FORMAT DU FICHIER DE RESULTATS BINAIRE" : "BINARY_RESULTS_FILE_FORMAT", - "FICHIER DE RESULTATS BINAIRE" : "BINARY_RESULTS_FILE", - "FICHIER DE RESULTATS FORMATE" : "FORMATTED_RESULTS_FILE", - "SECTIONS DE CONTROLE" : "CONTROL_SECTIONS", - "IMPRESSION DU CUMUL DES FLUX" : "PRINTING_CUMULATED_FLOWRATES", - "CALCUL COMPATIBLE DES FLUX" : "COMPATIBLE_COMPUTATION_OF_FLUXES", - "FICHIER DES SECTIONS DE CONTROLE" : "SECTIONS_INPUT_FILE", - "FICHIER DE SORTIE DES SECTIONS DE CONTROLE" : "SECTIONS_OUTPUT_FILE", - "FLUXLINE" : "FLUXLINE", - "FICHIER DE FLUXLINE" : "FLUXLINE_INPUT_FILE", - "NUMERO DU PREMIER PAS DE TEMPS POUR LES SORTIES LISTING" : "NUMBER_OF_FIRST_TIME_STEP_FOR_LISTING_PRINTOUTS", - "PERIODE DE SORTIE LISTING" : "LISTING_PRINTOUT_PERIOD", - "PERIODE POUR LES SORTIES LISTING" : "LISTING_FOR_PRINTOUT_PERIOD", - "SORTIE LISTING" : "LISTING_PRINTOUT", - "VARIABLES A IMPRIMER" : "VARIABLES_TO_BE_PRINTED", - "BILAN DE MASSE" : "MASS_BALANCE", - "INFORMATIONS SUR LE SOLVEUR" : "INFORMATION_ABOUT_SOLVER", - "LISTE DE POINTS" : "LIST_OF_POINTS", - "NOMS DES POINTS" : "NAMES_OF_POINTS", - "PERIODES D'ANALYSE DE FOURIER" : "FOURIER_ANALYSIS_PERIODS", - "BORNES EN TEMPS POUR L'ANALYSE DE FOURIER" : "TIME_RANGE_FOR_FOURIER_ANALYSIS", - "COTES IMPOSEES" : "PRESCRIBED_ELEVATIONS", - "DEBITS IMPOSES" : "PRESCRIBED_FLOWRATES", - "VITESSES IMPOSEES" : "PRESCRIBED_VELOCITIES", - "COURBES DE TARAGE" : "STAGE_DISCHARGE_CURVES", - "FICHIER DES COURBES DE TARAGE" : "STAGE_DISCHARGE_CURVES_FILE", - "PROFILS DE VITESSE" : "VELOCITY_PROFILES", - "OPTION POUR LES FRONTIERES LIQUIDES" : "OPTION_FOR_LIQUID_BOUNDARIES", - "FICHIER DES FRONTIERES LIQUIDES" : "LIQUID_BOUNDARIES_FILE", - "ELEMENTS MASQUES PAR L'UTILISATEUR" : "ELEMENTS_MASKED_BY_USER", - "NOMBRE MAXIMUM DE DOMAINES DE FROTTEMENT" : "MAXIMUM_NUMBER_OF_FRICTION_DOMAINS", - "DONNEES POUR LE FROTTEMENT" : "FRICTION_DATA", - "FICHIER DE DONNEES POUR LE FROTTEMENT" : "FRICTION_DATA_FILE", - "LOI DE FROTTEMENT SUR LE FOND" : "LAW_OF_BOTTOM_FRICTION", - "COEFFICIENT DE FROTTEMENT" : "FRICTION_COEFFICIENT", - "VALEUR PAR DEFAUT DU MANNING POUR LA LOI DE COLEBROOK-WHITE" : "MANNING_DEFAULT_VALUE_FOR_COLEBROOK_WHITE_LAW", - "HAUTEUR DANS LES TERMES DE FROTTEMENT" : "DEPTH_IN_FRICTION_TERMS", - "FROTTEMENT POUR LA VEGETATION NON SUBMERGEE" : "NON_SUBMERGED_VEGETATION_FRICTION", - "DIAMETRE DES ELEMENTS DE FROTTEMENT" : "DIAMETER_OF_ROUGHNESS_ELEMENTS", - "ESPACEMENT DES ELEMENTS DE FROTTEMENT" : "SPACING_OF_ROUGHNESS_ELEMENTS", - "LOI DE FROTTEMENT SUR LES PAROIS LATERALES" : "LAW_OF_FRICTION_ON_LATERAL_BOUNDARIES", - "COEFFICIENT DE RUGOSITE DES BORDS" : "ROUGHNESS_COEFFICIENT_OF_BOUNDARIES", - "DEFINITION DE ZONES" : "DEFINITION_OF_ZONES", - "FICHIER DES ZONES" : "ZONES_FILE", - "PROCESSUS LIES AUX GLACES" : "ICE_PROCESSES", - "VENT" : "WIND", - "OPTION DU VENT" : "OPTION_FOR_WIND", - "COEFFICIENT D'INFLUENCE DU VENT" : "COEFFICIENT_OF_WIND_INFLUENCE", - "VITESSE DU VENT SUIVANT X" : "WIND_VELOCITY_ALONG_X", - "VITESSE DU VENT SUIVANT Y" : "WIND_VELOCITY_ALONG_Y", - "VITESSE ET DIRECTION DU VENT" : "SPEED_AND_DIRECTION_OF_WIND", - "PROFONDEUR LIMITE POUR LE VENT" : "THRESHOLD_DEPTH_FOR_WIND", - "PRESSION ATMOSPHERIQUE" : "AIR_PRESSURE", - "VALEUR DE LA PRESSION ATMOSPHERIQUE" : "VALUE_OF_ATMOSPHERIC_PRESSURE", - "PLUIE OU EVAPORATION" : "RAIN_OR_EVAPORATION", - "PLUIE OU EVAPORATION EN MM PAR JOUR" : "RAIN_OR_EVAPORATION_IN_MM_PER_DAY", - "MODELE PLUIE-DEBIT" : "RAINFALL_RUNOFF_MODEL", - "CONDITIONS D'HUMIDITE PRECEDENTE" : "ANTECEDENT_MOISTURE_CONDITIONS", - "DUREE DE LA PLUIE OU EVAPORATION EN HEURES" : "DURATION_OF_RAIN_OR_EVAPORATION_IN_HOURS", - "FICHIER ASCII DE DONNEES ATMOSPHERIQUES" : "ASCII_ATMOSPHERIC_DATA_FILE", - "FICHIER BINAIRE DE DONNEES ATMOSPHERIQUES" : "BINARY_ATMOSPHERIC_DATA_FILE", - "FORMAT DU FICHIER BINAIRE DE DONNEES ATMOSPHERIQUES" : "BINARY_ATMOSPHERIC_DATA_FILE_FORMAT", - "OPTION POUR RATIO DES PERTES INITIALES" : "OPTION_FOR_INITIAL_ABSTRACTION_RATIO", - "COURANTS DE HOULE" : "WAVE_DRIVEN_CURRENTS", - "NUMERO DE L'ENREGISTREMENT DANS LE FICHIER DE HOULE" : "RECORD_NUMBER_IN_WAVE_FILE", - "AUGMENTATION DU FROTTEMENT PAR LA HOULE" : "WAVE_ENHANCED_FRICTION_FACTOR", - "ESTIMATION DE PARAMETRE" : "PARAMETER_ESTIMATION", - "FONCTION COUT" : "COST_FUNCTION", - "METHODE D'IDENTIFICATION" : "IDENTIFICATION_METHOD", - "PRECISIONS POUR L'IDENTIFICATION" : "TOLERANCES_FOR_IDENTIFICATION", - "MAXIMUM D'ITERATIONS POUR L'IDENTIFICATION" : "MAXIMUM_NUMBER_OF_ITERATIONS_FOR_IDENTIFICATION", - "ABSCISSES DES SOURCES" : "ABSCISSAE_OF_SOURCES", - "ORDONNEES DES SOURCES" : "ORDINATES_OF_SOURCES", - "DEBITS DES SOURCES" : "WATER_DISCHARGE_OF_SOURCES", - "VITESSES DES SOURCES SELON X" : "VELOCITIES_OF_THE_SOURCES_ALONG_X", - "VITESSES DES SOURCES SELON Y" : "VELOCITIES_OF_THE_SOURCES_ALONG_Y", - "TYPE DES SOURCES" : "TYPE_OF_SOURCES", - "FICHIER DES SOURCES" : "SOURCES_FILE", - "NUMEROS GLOBAUX DES NOEUDS DES SOURCES" : "GLOBAL_NUMBERS_OF_SOURCE_NODES", - "PROCESSUS QUALITE D'EAU" : "WATER_QUALITY_PROCESS", - "MASSE VOLUMIQUE DE L'EAU" : "WATER_DENSITY", - "ACCELERATION DE LA PESANTEUR" : "GRAVITY_ACCELERATION", - "STRUCTURES VERTICALES" : "VERTICAL_STRUCTURES", - "EQUATIONS" : "EQUATIONS", - "TRAITEMENT DU SYSTEME LINEAIRE" : "TREATMENT_OF_THE_LINEAR_SYSTEM", - "SCHEMA EN VOLUMES FINIS" : "FINITE_VOLUME_SCHEME", - "CORIOLIS" : "CORIOLIS", - "COEFFICIENT DE CORIOLIS" : "CORIOLIS_COEFFICIENT", - "OPTION POUR LA GENERATION DE TSUNAMI" : "OPTION_FOR_TSUNAMI_GENERATION", - "PARAMETRES PHYSIQUES DU TSUNAMI" : "PHYSICAL_CHARACTERISTICS_OF_THE_TSUNAMI", - "COURANTS SECONDAIRES" : "SECONDARY_CURRENTS", - "COEFFICIENT DE PRODUCTION POUR COURANTS SECONDAIRES" : "PRODUCTION_COEFFICIENT_FOR_SECONDARY_CURRENTS", - "COEFFICIENT DE DISSIPATION POUR COURANTS SECONDAIRES" : "DISSIPATION_COEFFICIENT_FOR_SECONDARY_CURRENTS", - "DEBUGGER" : "DEBUGGER", - "PAS DE TEMPS" : "TIME_STEP", - "NOMBRE DE PAS DE TEMPS" : "NUMBER_OF_TIME_STEPS", - "DUREE DU CALCUL" : "DURATION", - "DATE DE L'ORIGINE DES TEMPS" : "ORIGINAL_DATE_OF_TIME", - "HEURE DE L'ORIGINE DES TEMPS" : "ORIGINAL_HOUR_OF_TIME", - "ARRET SI UN ETAT PERMANENT EST ATTEINT" : "STOP_IF_A_STEADY_STATE_IS_REACHED", - "CRITERES D'ARRET" : "STOP_CRITERIA", - "CONTROLE DES LIMITES" : "CONTROL_OF_LIMITS", - "VALEURS LIMITES" : "LIMIT_VALUES", - "PAS DE TEMPS VARIABLE" : "VARIABLE_TIME_STEP", - "NOMBRE DE COURANT SOUHAITE" : "DESIRED_COURANT_NUMBER", - "COORDONNEES DE L'ORIGINE" : "ORIGIN_COORDINATES", - "COORDONNEES SPHERIQUES" : "SPHERICAL_COORDINATES", - "LATITUDE DU POINT ORIGINE" : "LATITUDE_OF_ORIGIN_POINT", - "LONGITUDE DU POINT ORIGINE" : "LONGITUDE_OF_ORIGIN_POINT", - "NORD" : "NORTH", - "TYPE DE PROJECTION SPATIALE" : "SPATIAL_PROJECTION_TYPE", - "SOLVEUR" : "SOLVER", - "OPTION DU SOLVEUR" : "SOLVER_OPTION", - "PRECISION DU SOLVEUR" : "SOLVER_ACCURACY", - "MAXIMUM D'ITERATIONS POUR LE SOLVEUR" : "MAXIMUM_NUMBER_OF_ITERATIONS_FOR_SOLVER", - "CORRECTION DE CONTINUITE" : "CONTINUITY_CORRECTION", - "PRECONDITIONNEMENT" : "PRECONDITIONING", - "PRECONDITIONNEMENT C-U" : "C_U_PRECONDITIONING", - "ASSEMBLAGE EN ELEMENTS FINIS" : "FINITE_ELEMENT_ASSEMBLY", - "IMPLICITATION POUR LA HAUTEUR" : "IMPLICITATION_FOR_DEPTH", - "IMPLICITATION POUR LA VITESSE" : "IMPLICITATION_FOR_VELOCITY", - "DISCRETISATIONS EN ESPACE" : "DISCRETIZATIONS_IN_SPACE", - "PROPAGATION" : "PROPAGATION", - "ORDRE DU TIR INITIAL POUR H" : "INITIAL_GUESS_FOR_H", - "PROPAGATION LINEARISEE" : "LINEARIZED_PROPAGATION", - "ORDRE DU TIR INITIAL POUR U" : "INITIAL_GUESS_FOR_U", - "PROFONDEUR MOYENNE POUR LA LINEARISATION" : "MEAN_DEPTH_FOR_LINEARIZATION", - "CONVECTION" : "ADVECTION", - "CONVECTION DE H" : "ADVECTION_OF_H", - "CONVECTION DE U ET V" : "ADVECTION_OF_U_AND_V", - "FORME DE LA CONVECTION" : "TYPE_OF_ADVECTION", - "OPTION POUR LES CARACTERISTIQUES" : "OPTION_FOR_CHARACTERISTICS", - "OPTION DE SUPG" : "SUPG_OPTION", - "NOMBRE DE POINTS DE GAUSS POUR LES CARACTERISTIQUES FAIBLES" : "NUMBER_OF_GAUSS_POINTS_FOR_WEAK_CHARACTERISTICS", - "MASS-LUMPING POUR LES CARACTERISTIQUES FAIBLES" : "MASS_LUMPING_FOR_WEAK_CHARACTERISTICS", - "MAXIMUM D'ITERATIONS POUR LES SCHEMAS DE CONVECTION" : "MAXIMUM_NUMBER_OF_ITERATIONS_FOR_ADVECTION_SCHEMES", - "COEFFICIENTS DE DECENTREMENT" : "UPWIND_COEFFICIENTS", - "MASS-LUMPING SUR H" : "MASS_LUMPING_ON_H", - "MASS-LUMPING SUR LA VITESSE" : "MASS_LUMPING_ON_VELOCITY", - "SCHEMA POUR LA CONVECTION DES VITESSES" : "SCHEME_FOR_ADVECTION_OF_VELOCITIES", - "OPTION DU SCHEMA POUR LA CONVECTION DES VITESSES" : "SCHEME_OPTION_FOR_ADVECTION_OF_VELOCITIES", - "COMPATIBILITE DU GRADIENT DE SURFACE LIBRE" : "FREE_SURFACE_GRADIENT_COMPATIBILITY", - "NOMBRE DE SOUS-ITERATIONS POUR LES NON-LINEARITES" : "NUMBER_OF_SUB_ITERATIONS_FOR_NON_LINEARITIES", - "TRAITEMENT DES FLUX AUX FRONTIERES" : "TREATMENT_OF_FLUXES_AT_THE_BOUNDARIES", - "NOMBRE DE CORRECTIONS DES SCHEMAS DISTRIBUTIFS" : "NUMBER_OF_CORRECTIONS_OF_DISTRIBUTIVE_SCHEMES", - "NOMBRE DE SOUS-PAS DES SCHEMAS DISTRIBUTIFS" : "NUMBER_OF_SUB_STEPS_OF_DISTRIBUTIVE_SCHEMES", - "OPTION DU SCHEMA PSI" : "PSI_SCHEME_OPTION", - "DIFFUSION DES VITESSES" : "DIFFUSION_OF_VELOCITY", - "OPTION POUR LA DIFFUSION DES VITESSES" : "OPTION_FOR_THE_DIFFUSION_OF_VELOCITIES", - "IMPLICITATION POUR LA DIFFUSION DES VITESSES" : "IMPLICITATION_FOR_DIFFUSION_OF_VELOCITY", - "AD NOMBRE DE DERIVEES" : "AD_NUMBER_OF_DERIVATIVES", - "AD NOMS DES DERIVEES" : "AD_NAMES_OF_DERIVATIVES", - "AD SOLVEUR LINEAIRE SYMBOLIQUE" : "AD_SYMBOLIC_LINEAR_SOLVER", - "AD REMISE A ZERO DES DERIVEES DU SOLVEUR LINEAIRE" : "AD_LINEAR_SOLVER_RESET_DERIVATIVES", - "AD CONVERGENCE DES DERIVEES POUR LE SOLVEUR LINEAIRE" : "AD_LINEAR_SOLVER_DERIVATIVE_CONVERGENCE", - "STOCKAGE DES MATRICES" : "MATRIX_STORAGE", - "PRODUIT MATRICE-VECTEUR" : "MATRIX_VECTOR_PRODUCT", - "COEFFICIENT D'INTEGRATION EN TEMPS DE NEWMARK" : "NEWMARK_TIME_INTEGRATION_COEFFICIENT", - "ZERO" : "ZERO", - "OPTION DE PROPAGATION" : "PROPAGATION_OPTION", - "OPTION DE LA RECONSTRUCION HYDROSTATIQUE" : "OPTION_OF_THE_HYDROSTATIC_RECONSTRUCTION", - "ETUDE DE CONVERGENCE" : "CONVERGENCE_STUDY", - "NIVEAUX DE RAFFINEMENT" : "REFINEMENT_LEVELS", - "COEFFICIENT DE DIFFUSION DES VITESSES" : "VELOCITY_DIFFUSIVITY", - "MODELE DE TURBULENCE" : "TURBULENCE_MODEL", - "PRECISION SUR SPALART-ALLMARAS" : "ACCURACY_OF_SPALART_ALLMARAS", - "INFORMATION SUR LE MODELE SPALART-ALLMARAS" : "INFORMATION_ABOUT_SPALART_ALLMARAS_MODEL", - "SOLVEUR POUR LE MODELE K-EPSILON" : "SOLVER_FOR_K_EPSILON_MODEL", - "OPTION DU SOLVEUR POUR LE MODELE K-EPSILON" : "OPTION_FOR_THE_SOLVER_FOR_K_EPSILON_MODEL", - "PRECONDITIONNEMENT POUR LE MODELE K-EPSILON" : "PRECONDITIONING_FOR_K_EPSILON_MODEL", - "COEFFICIENTS ADIMENSIONNELS DE DISPERSION" : "NON_DIMENSIONAL_DISPERSION_COEFFICIENTS", - "REGIME DE TURBULENCE POUR LES PAROIS" : "TURBULENCE_REGIME_FOR_SOLID_BOUNDARIES", - "INFORMATIONS SUR LE MODELE K-EPSILON" : "INFORMATION_ABOUT_K_EPSILON_MODEL", - "CONVECTION DE K ET EPSILON" : "ADVECTION_OF_K_AND_EPSILON", - "SCHEMA POUR LA CONVECTION DU K-EPSILON" : "SCHEME_FOR_ADVECTION_OF_K_EPSILON", - "OPTION DU SCHEMA POUR LA CONVECTION DU K-EPSILON" : "SCHEME_OPTION_FOR_ADVECTION_OF_K_EPSILON", - "REDUCTION DU PAS DE TEMPS POUR LE MODELE K-EPSILON" : "TIME_STEP_REDUCTION_FOR_K_EPSILON_MODEL", - "PRECISION SUR K" : "ACCURACY_OF_K", - "PRECISION SUR EPSILON" : "ACCURACY_OF_EPSILON", - "MAXIMUM D'ITERATIONS POUR K ET EPSILON" : "MAXIMUM_NUMBER_OF_ITERATIONS_FOR_K_AND_EPSILON", - "BANCS DECOUVRANTS" : "TIDAL_FLATS", - "OPTION DE TRAITEMENT DES BANCS DECOUVRANTS" : "OPTION_FOR_THE_TREATMENT_OF_TIDAL_FLATS", - "TRAITEMENT DES HAUTEURS NEGATIVES" : "TREATMENT_OF_NEGATIVE_DEPTHS", - "SEUIL POUR LES PROFONDEURS NEGATIVES" : "THRESHOLD_FOR_NEGATIVE_DEPTHS", - "PROFONDEUR LIMITE POUR PROCEDURE DE RESSUYAGE" : "THRESHOLD_DEPTH_FOR_RECEDING_PROCEDURE", - "CLIPPING DE H" : "H_CLIPPING", - "VALEUR MINIMUM DE H" : "MINIMUM_VALUE_OF_DEPTH", - "VALEURS IMPOSEES DES TRACEURS" : "PRESCRIBED_TRACERS_VALUES", - "NOMBRE DE TRACEURS" : "NUMBER_OF_TRACERS", - "NOMS DES TRACEURS" : "NAMES_OF_TRACERS", - "VALEURS INITIALES DES TRACEURS" : "INITIAL_VALUES_OF_TRACERS", - "EFFETS DE DENSITE" : "DENSITY_EFFECTS", - "TEMPERATURE MOYENNE" : "MEAN_TEMPERATURE", - "SOLVEUR POUR LA DIFFUSION DES TRACEURS" : "SOLVER_FOR_DIFFUSION_OF_TRACERS", - "OPTION DU SOLVEUR POUR LA DIFFUSION DES TRACEURS" : "SOLVER_OPTION_FOR_TRACERS_DIFFUSION", - "PRECONDITIONNEMENT POUR LA DIFFUSION DES TRACEURS" : "PRECONDITIONING_FOR_DIFFUSION_OF_TRACERS", - "PRECISION POUR LA DIFFUSION DES TRACEURS" : "ACCURACY_FOR_DIFFUSION_OF_TRACERS", - "MAXIMUM D'ITERATIONS POUR LA DIFFUSION DES TRACEURS" : "MAXIMUM_NUMBER_OF_ITERATIONS_FOR_DIFFUSION_OF_TRACERS", - "VALEURS DES TRACEURS DES SOURCES" : "VALUES_OF_THE_TRACERS_AT_THE_SOURCES", - "VALEURS DES TRACEURS DANS LA PLUIE" : "VALUES_OF_TRACERS_IN_THE_RAIN", - "CONVECTION DES TRACEURS" : "ADVECTION_OF_TRACERS", - "COEFFICIENT D'IMPLICITATION DES TRACEURS" : "IMPLICITATION_COEFFICIENT_OF_TRACERS", - "DIFFUSION DES TRACEURS" : "DIFFUSION_OF_TRACERS", - "COEFFICIENT DE DIFFUSION DES TRACEURS" : "COEFFICIENT_FOR_DIFFUSION_OF_TRACERS", - "OPTION POUR LA DIFFUSION DES TRACEURS" : "OPTION_FOR_THE_DIFFUSION_OF_TRACERS", - "SCHEMA POUR LA CONVECTION DES TRACEURS" : "SCHEME_FOR_ADVECTION_OF_TRACERS", - "OPTION DU SCHEMA POUR LA CONVECTION DES TRACEURS" : "SCHEME_OPTION_FOR_ADVECTION_OF_TRACERS", - "MASS-LUMPING SUR LES TRACEURS" : "MASS_LUMPING_ON_TRACERS", - "NOMBRE DE FLOTTEURS" : "NUMBER_OF_DROGUES", - "PERIODE POUR LES SORTIES DE FLOTTEURS" : "PRINTOUT_PERIOD_FOR_DROGUES", - "FICHIER DES FLOTTEURS" : "DROGUES_FILE", - "MODELE DE TRANSPORT DES ALGUES" : "ALGAE_TRANSPORT_MODEL", - "TYPE DES ALGUES" : "ALGAE_TYPE", - "DIAMETRE DES ALGUES" : "DIAMETER_OF_ALGAE", - "MASSE VOLUMIQUE DES ALGUES" : "DENSITY_OF_ALGAE", - "EPAISSEUR DES ALGUES" : "THICKNESS_OF_ALGAE", - "MODELE DE NAPPES D'HYDROCARBURES" : "OIL_SPILL_MODEL", - "FICHIER DE COMMANDES HYDROCARBURES" : "OIL_SPILL_STEERING_FILE", - "MODELE DE DIFFUSION STOCHASTIQUE" : "STOCHASTIC_DIFFUSION_MODEL", - "NOMBRE DE DERIVES LAGRANGIENNES" : "NUMBER_OF_LAGRANGIAN_DRIFTS", - "NOMBRE DE SEUILS" : "NUMBER_OF_WEIRS", - "FICHIER DE DONNEES DES SEUILS" : "WEIRS_DATA_FILE", - "TYPE DES SEUILS" : "TYPE_OF_WEIRS", - "NOMBRE DE BUSES" : "NUMBER_OF_CULVERTS", - "FICHIER DE DONNEES DES BUSES" : "CULVERTS_DATA_FILE", - "OPTION POUR LES BUSES" : "OPTION_FOR_CULVERTS", - "BRECHE" : "BREACH", - "FICHIER DE DONNEES DES BRECHES" : "BREACHES_DATA_FILE", - "BASE BINAIRE 1 DE DONNEES DE MAREE" : "BINARY_DATABASE_1_FOR_TIDE", - "BASE BINAIRE 2 DE DONNEES DE MAREE" : "BINARY_DATABASE_2_FOR_TIDE", - "SYSTEME GEOGRAPHIQUE" : "GEOGRAPHIC_SYSTEM", - "NUMERO DE FUSEAU OU PROJECTION DANS LE SYSTEME GEOGRAPHIQUE" : "ZONE_NUMBER_IN_GEOGRAPHIC_SYSTEM", - "FICHIER DE CONVERSION LAMBERT 93" : "LAMBERT_93_CONVERSION_FILE", - "COEFFICIENT DE CALAGE DU NIVEAU DE MER" : "COEFFICIENT_TO_CALIBRATE_SEA_LEVEL", - "NUMERO GLOBAL DU POINT POUR CALER LA PLEINE MER" : "GLOBAL_NUMBER_OF_THE_POINT_TO_CALIBRATE_HIGH_WATER", - "INTERPOLATION DE COMPOSANTES MINEURES" : "MINOR_CONSTITUENTS_INFERENCE", - "OPTION POUR LES CONDITIONS AUX LIMITES DE MAREE" : "OPTION_FOR_TIDAL_BOUNDARY_CONDITIONS", - "BASE DE DONNEES DE MAREE" : "TIDAL_DATA_BASE", - "FICHIER DES CONSTANTES HARMONIQUES" : "HARMONIC_CONSTANTS_FILE", - "FICHIER DU MODELE DE MAREE" : "TIDAL_MODEL_FILE", - "FORMAT DU FICHIER DU MODELE DE MAREE" : "TIDAL_MODEL_FILE_FORMAT", - "BASE ASCII DE DONNEES DE MAREE" : "ASCII_DATABASE_FOR_TIDE", - "COEFFICIENT DE CALAGE DU MARNAGE" : "COEFFICIENT_TO_CALIBRATE_TIDAL_RANGE", - "COEFFICIENT DE CALAGE DES VITESSES DE COURANT" : "COEFFICIENT_TO_CALIBRATE_TIDAL_VELOCITIES", - "NUMERO LOCAL DU POINT POUR CALER LA PLEINE MER" : "LOCAL_NUMBER_OF_THE_POINT_TO_CALIBRATE_HIGH_WATER", - "FORCE GENERATRICE DE LA MAREE" : "TIDE_GENERATING_FORCE", - "COUPLAGE AVEC" : "COUPLING_WITH", - "NOMS DES VARIABLES CLANDESTINES" : "NAMES_OF_CLANDESTINE_VARIABLES", - "DOSSIER DE COUPLAGE" : "COUPLING_DIRECTORY", - "FICHIER DE COMMANDE DELWAQ" : "DELWAQ_STEERING_FILE", - "PERIODE DE SORTIE POUR DELWAQ" : "DELWAQ_PRINTOUT_PERIOD", - "FICHIER DELWAQ DES ECHANGES ENTRE NOEUDS" : "EXCHANGES_BETWEEN_NODES_DELWAQ_FILE", - "FICHIER DELWAQ DES DISTANCES ENTRE NOEUDS" : "NODES_DISTANCES_DELWAQ_FILE", - "FICHIER DELWAQ DES SURFACES DU FOND" : "BOTTOM_SURFACES_DELWAQ_FILE", - "FICHIER DELWAQ DES VOLUMES" : "VOLUMES_DELWAQ_FILE", - "FICHIER DELWAQ DES SURFACES DE FLUX" : "EXCHANGE_AREAS_DELWAQ_FILE", - "FICHIER DELWAQ DES FLUX VERTICAUX" : "VERTICAL_FLUXES_DELWAQ_FILE", - "FICHIER DELWAQ DE LA VITESSE" : "VELOCITY_DELWAQ_FILE", - "FICHIER DELWAQ DE LA DIFFUSION" : "DIFFUSIVITY_DELWAQ_FILE", - "FICHIER DELWAQ DE LA TEMPERATURE" : "TEMPERATURE_DELWAQ_FILE", - "FICHIER DELWAQ DE LA SALINITE" : "SALINITY_DELWAQ_FILE", - "VITESSE POUR DELWAQ" : "VELOCITY_FOR_DELWAQ", - "DIFFUSION POUR DELWAQ" : "DIFFUSIVITY_FOR_DELWAQ", - "TEMPERATURE POUR DELWAQ" : "TEMPERATURE_FOR_DELWAQ", - "SALINITE POUR DELWAQ" : "SALINITY_FOR_DELWAQ", - "FICHIER DES PARAMETRES DE SISYPHE" : "SISYPHE_STEERING_FILE", - "PERIODE DE COUPLAGE POUR SISYPHE" : "COUPLING_PERIOD_FOR_SISYPHE", - "FICHIER DES PARAMETRES DE TOMAWAC" : "TOMAWAC_STEERING_FILE", - "PERIODE DE COUPLAGE POUR TOMAWAC" : "COUPLING_PERIOD_FOR_TOMAWAC", - "FICHIER DES PARAMETRES DE WAQTEL" : "WAQTEL_STEERING_FILE", - "FICHIER DES PARAMETRES DE KHIONE" : "KHIONE_STEERING_FILE", - "LANGUE" : "LANGUAGE", - "FICHIER DES PARAMETRES" : "STEERING_FILE", - "DICTIONNAIRE" : "DICTIONARY", - "PARTITIONNEUR" : "PARTITIONING_TOOL", - "NUMERO DE VERSION" : "RELEASE", - "LISTE DES FICHIERS" : "LIST_OF_FILES", - "DESCRIPTION DES LIBRAIRIES" : "DESCRIPTION_OF_LIBRARIES", - "EXECUTABLE PAR DEFAUT" : "DEFAULT_EXECUTABLE", - "EXECUTABLE PARALLELE PAR DEFAUT" : "DEFAULT_PARALLEL_EXECUTABLE", - "NESTOR" : "NESTOR", - "FICHIER DE NESTOR ACTION" : "NESTOR_ACTION_FILE", - "FICHIER DE NESTOR POLYGON" : "NESTOR_POLYGON_FILE", - "FICHIER DE NESTOR DE SURFACE REFERENCE" : "NESTOR_SURFACE_REFERENCE_FILE", - "FICHIER DE NESTOR RESTART" : "NESTOR_RESTART_FILE", -} diff --git a/Telemac/telemac2d_enum_auto.py b/Telemac/telemac2d_enum_auto.py deleted file mode 100644 index 489fe61a..00000000 --- a/Telemac/telemac2d_enum_auto.py +++ /dev/null @@ -1,1475 +0,0 @@ -#/usr/bin/env python -# -*- coding: latin-1 -*- -TelemacdicoEn = { -'VARIABLES_FOR_GRAPHIC_PRINTOUTS' : { - 'U':"velocity along x axis (m/s)", - 'V':"velocity along y axis (m/s)", - 'C':"wave celerity (m/s)", - 'H':"water depth (m)", - 'S':"free surface elevation (m)", - 'B':"bottom elevation (m)", - 'F':"Froude number", - 'Q':"scalar flowrate of fluid (m2/s)", - 'T1':"tracer 1 etc.", - 'T*':"All the tracers 1 to 9.", - 'T1*':"All the tracers 10 to 19.", - 'K':"turbulent kinetic energy in k-epsilon model (J/kg)", - 'E':"dissipation of turbulent energy (W/kg)", - 'D':"turbulent viscosity (m2/s)", - 'I':"flowrate along x axis (m2/s)", - 'J':"flowrate along y axis (m2/s)", - 'M':"scalar velocity (m/s)", - 'X':"wind along x axis (m/s)", - 'Y':"wind along y axis (m/s)", - 'P':"air pressure (Pa)", - 'W':"friction coefficient", - 'A':"drift along x (m)", - 'G':"drift along y (m)", - 'L':"Courant number ", - 'N':"supplementary variable N", - 'O':"supplementary variable O", - 'R':"supplementary variable R", - 'Z':"supplementary variable Z", - 'MAXZ':"maximum elevation", - 'TMXZ':"time of maximum elevation", - 'MAXV':"maximum velocity", - 'TMXV':"time of maximum velocity", - 'US':"friction velocity", - 'G1':"gradient 1, etc. ", - 'ZRL':"reference level for Nestor ", - }, -'VARIABLES_TO_BE_PRINTED' : { - 'U':"velocity along x axis (m/s)", - 'V':"velocity along y axis (m/s)", - 'C':"wave celerity (m/s)", - 'H':"water depth (m)", - 'S':"free surface elevation (m)", - 'B':"bottom elevation (m)", - 'F':"Froude number", - 'Q':"scalar flowrate of fluid (m2/s)", - 'Tn':"tracer 1, etc.", - 'K':"turbulent kinetic energy in k-epsilon model (J/kg)", - 'E':"dissipation of turbulent energy (W/kg)", - 'D':"turbulent viscosity of k-epsilon model (m2/s)", - 'I':"flowrate along x axis (m2/s)", - 'J':"flowrate along y axis (m2/s)", - 'M':"scalar velocity (m/s)", - 'X':"wind along x axis (m/s)", - 'Y':"wind along y axis (m/s)", - 'P':"air pressure (Pa)", - 'W':"friction coefficient", - 'A':"drift along x (m)", - 'G':"drift along y (m)", - 'L':"nombre de courants ", - 'N':"supplementary variable N", - 'O':"supplementary variable O", - 'R':"supplementary variable R", - 'Z':"supplementary variable Z", - 'Gn':"gradient 1, etc.", - }, -'STAGE_DISCHARGE_CURVES' : { - 0:"no", - 1:"Z(Q)", - 2:"Q(Z)", - }, -'VELOCITY_PROFILES' : { - 1:"constant normal profile", - 2:"u and v given in the conlim file", - 3:"normal velocity given in ubor in the conlim file", - 4:"velocity proportional to square root of depth", - 5:"velocity proportional to square root of depth, variant", - }, -'OPTION_FOR_LIQUID_BOUNDARIES' : { - 1:"classical", - 2:"Thompson method based on characteristics", - }, -'LAW_OF_BOTTOM_FRICTION' : { - 0:"NO FRICTION", - 1:"HAALAND", - 2:"CHEZY", - 3:"STRICKLER", - 4:"MANNING", - 5:"NIKURADSE", - }, -'DEPTH_IN_FRICTION_TERMS' : { - 1:"nodal", - 2:"average", - }, -'LAW_OF_FRICTION_ON_LATERAL_BOUNDARIES' : { - 0:"NO FRICTION", - 1:"HAALAND", - 2:"CHEZY", - 3:"STRICKLER", - 4:"MANNING", - 5:"NIKURADSE", - 6:"LOG LAW", - 7:"COLEBROOK-WHITE", - }, -'OPTION_FOR_WIND' : { - 1:"constant in time and space", - 2:"variable in time given by formated file", - 3:"variable in time and space given by formated file", - }, -'RAINFALL_RUNOFF_MODEL' : { - 0:"No infiltration", - 1:"CN runoff model", - }, -'COST_FUNCTION' : { - 1:"Computed with h,u,v", - 2:"Computed with c,u,v", - }, -'IDENTIFICATION_METHOD' : { - 0:"list of tests", - 1:"gradient simple", - 2:"conj gradient", - 3:"Lagrange interp.", - }, -'TYPE_OF_SOURCES' : { - 1:"Normal", - 2:"Dirac", - }, -'TREATMENT_OF_THE_LINEAR_SYSTEM' : { - 1:"coupled", - 2:"Wave equation", - }, -'FINITE_VOLUME_SCHEME' : { - 0:"Roe scheme", - 1:"kinetic order 1", - 2:"kinetic order 2", - 3:"Zokagoa scheme order 1", - 4:"Tchamen scheme order 1", - 5:"HLLC scheme order 1", - 6:"WAF scheme order 2", - }, -'OPTION_FOR_TSUNAMI_GENERATION' : { - 0:"No Tsunami", - 1:"Tsunami generated on the basis of the Okada model 1992", - }, -'SPATIAL_PROJECTION_TYPE' : { - 1:"CARTESIAN, NOT GEOREFERENCED", - 2:"MERCATOR", - 3:"LATITUDE LONGITUDE", - }, -'SOLVER' : { - 3:"conjugate gradient on a normal equation", - 1:"conjugate gradient", - 2:"conjugate residual", - 4:"minimum error", - 6:"cgstab", - 7:"gmres", - 8:"direct", - }, -'PRECONDITIONING' : { - 2:"diagonal", - 0:"no preconditioning", - 3:"block-diagonal (4-9 matrices)", - 5:"absolute value of diagonal", - 7:"crout", - 11:"gauss-seidel", - 14:"diagonal and crout", - }, -'FINITE_ELEMENT_ASSEMBLY' : { - 1:"normal", - 2:"Integer I8", - 3:"Compensated", - }, -'DISCRETIZATIONS_IN_SPACE' : { - 11:"linear", - 12:"quasi-bubble", - 13:"quadratic", - }, -'INITIAL_GUESS_FOR_H' : { - 0:"zero", - 1:"previous", - 2:"extrapolation", - }, -'INITIAL_GUESS_FOR_U' : { - 0:"zero", - 1:"previous", - 2:"extrapolation", - }, -'TYPE_OF_ADVECTION' : { - 1:"CHARACTERISTICS", - 2:"SUPG", - 3:"CONSERVATIVE N-SCHEME LP", - 4:"CONSERVATIVE N-SCHEME", - 5:"CONSERVATIVE PSI-SCHEME", - 13:"EDGE-BASED N-SCHEME LP", - 14:"EDGE-BASED N-SCHEME", - 15:"ERIA SCHEME", - }, -'OPTION_FOR_CHARACTERISTICS' : { - 1:"strong", - 2:"weak", - }, -'SCHEME_FOR_ADVECTION_OF_VELOCITIES' : { - 0:"NO ADVECTION", - 1:"CHARACTERISTICS", - 2:"EXPLICIT + SUPG", - 3:"EXPLICIT LEO POSTMA", - 4:"EXPLICIT + MURD SCHEME N", - 5:"EXPLICIT + MURD SCHEME PSI", - 13:"N-SCHEME FOR TIDAL FLATS", - 14:"N-SCHEME FOR TIDAL FLATS", - 15:"ERIA SCHEME", - }, -'TREATMENT_OF_FLUXES_AT_THE_BOUNDARIES' : { - 1:"Priority to prescribed values", - 2:"Priority to fluxes", - }, -'PSI_SCHEME_OPTION' : { - 1:"explicit", - 2:"predictor-corrector", - }, -'OPTION_FOR_THE_DIFFUSION_OF_VELOCITIES' : { - 1:"div( nu grad(U) )", - 2:"1/h div ( h nu grad(U)", - }, -'MATRIX_STORAGE' : { - 1:"classical EBE", - 3:"Edge-based storage", - }, -'TURBULENCE_MODEL' : { - 1:"CONSTANT VISCOSITY", - 2:"ELDER", - 3:"K-EPSILON MODEL", - 4:"SMAGORINSKI", - 5:"MIXING LENGTH", - 6:"SPALART-ALLMARAS", - }, -'SOLVER_FOR_K_EPSILON_MODEL' : { - 1:"conjugate gradient", - 2:"conjugate residuals", - 3:"conjugate gradient on normal equation", - 4:"minimum error", - 5:"conjugate gradient squared", - 6:"conjugate gradient squared stabilised (cgstab)", - 7:"gmres (see option for the solver for k-epsilon model)", - 8:"direct", - }, -'PRECONDITIONING_FOR_K_EPSILON_MODEL' : { - 2:"diagonal", - 0:"no preconditioning", - 7:"crout", - 14:"diagonal and crout", - }, -'TURBULENCE_REGIME_FOR_SOLID_BOUNDARIES' : { - 1:"smooth", - 2:"rough", - }, -'SCHEME_FOR_ADVECTION_OF_K_EPSILON' : { - 0:"NO ADVECTION", - 1:"CHARACTERISTICS", - 2:"EXPLICIT + SUPG", - 3:"EXPLICIT LEO POSTMA", - 4:"EXPLICIT + MURD SCHEME N", - 5:"EXPLICIT + MURD SCHEME PSI", - 13:"LEO POSTMA FOR TIDAL FLATS", - 14:"N-SCHEME FOR TIDAL FLATS", - 15:"ERIA SCHEME FOR TIDAL FLATS", - }, -'OPTION_FOR_THE_TREATMENT_OF_TIDAL_FLATS' : { - 1:"EQUATIONS SOLVED EVERYWHERE WITH CORRECTION ON TIDAL FLATS", - 2:"DRY ELEMENTS FROZEN", - 3:"LIKE 1 BUT WITH POROSITY (DEFINA METHOD)", - }, -'TREATMENT_OF_NEGATIVE_DEPTHS' : { - 1:"SMOOTHING", - 2:"FLUX CONTROL", - 3:"FLUX CONTROL (ERIA)", - }, -'SOLVER_FOR_DIFFUSION_OF_TRACERS' : { - 1:"conjugate gradient", - 2:"conjugate residual", - 3:"conjugate gradient on a normal equation", - 4:"minimum error", - 5:"squared conjugate gradient", - 6:"cgstab", - 7:"gmres (see option for the solver for tracer diffusion)", - 8:"direct", - }, -'PRECONDITIONING_FOR_DIFFUSION_OF_TRACERS' : { - 0:"no preconditioning ", - 2:"diagonal", - 7:"crout", - 14:"diagonal and crout", - }, -'OPTION_FOR_THE_DIFFUSION_OF_TRACERS' : { - 1:"div( nu grad(T) )", - 2:"1/h div ( h nu grad(T)", - }, -'SCHEME_FOR_ADVECTION_OF_TRACERS' : { - 0:"NO ADVECTION", - 1:"CHARACTERISTICS", - 2:"EXPLICIT + SUPG", - 3:"EXPLICIT LEO POSTMA", - 4:"EXPLICIT + MURD SCHEME N", - 5:"EXPLICIT + MURD SCHEME PSI", - 13:"LEO POSTMA FOR TIDAL FLATS", - 14:"N-SCHEME FOR TIDAL FLATS", - 15:"ERIA SCHEME FOR TIDAL FLATS", - }, -'ALGAE_TYPE' : { - 1:"SPHERE", - 2:"IRIDAEA FLACCIDA (CLOSE TO ULVA)", - 3:"PELVETIOPSIS LIMITATA", - 4:"GIGARTINA LEPTORHYNCHOS", - }, -'STOCHASTIC_DIFFUSION_MODEL' : { - 0:"No model", - 1:"brownian movement", - }, -'TYPE_OF_WEIRS' : { - 1:"HORIZONTAL WITH SAME NUMBER OF NODES UPSTREAM/DOWNSTREAM", - 2:"GENERAL", - }, -'GEOGRAPHIC_SYSTEM' : { - -1:"NO DEFAULT VALUE", - 0:"DEFINED BY USER", - 1:"WGS84 LONGITUDE/LATITUDE IN REAL DEGREES", - 2:"WGS84 NORTHERN UTM", - 3:"WGS84 SOUTHERN UTM", - 4:"LAMBERT", - 5:"MERCATOR FOR TELEMAC", - }, -'ZONE_NUMBER_IN_GEOGRAPHIC_SYSTEM' : { - -1:"NO DEFAULT VALUE", - 1:"LAMBERT 1 NORTH", - 2:"LAMBERT 2 CENTER", - 3:"LAMBERT 3 SOUTH", - 4:"LAMBERT 4 CORSICA", - 22:"LAMBERT 2 EXTENDED", - 93:"LAMBERT 93", - 30:"UTM ZONE, E.G.", - }, -'OPTION_FOR_TIDAL_BOUNDARY_CONDITIONS' : { - 0:"No tide", - 1:"Real tide (recommended methodology)", - 2:"Astronomical tide", - 3:"Mean spring tide", - 4:"Mean tide", - 5:"Mean neap tide", - 6:"Astronomical neap tide", - 7:"Real tide (methodology before 2010)", - }, -'TIDAL_DATA_BASE' : { - -1:"NO DEFAULT VALUE", - 1:"JMJ", - 2:"TPXO", - 3:"MISCELLANEOUS (LEGOS-NEA, FES20XX, PREVIMER...)", - }, -'LANGUAGE' : { - 1:"FRANCAIS", - 2:"ANGLAIS", - }, -} -TelemacdicoFr = { -'VARIABLES_FOR_GRAPHIC_PRINTOUTS' : { - 'U':"vitesse suivant l axe des x (m/s)", - 'V':"vitesse suivant l axe des y (m/s)", - 'C':"celerite des onde (m/s)", - 'H':"hauteur d eau (m)", - 'S':"cote de surface libre (m)", - 'B':"cote du fond (m)", - 'F':"nombre de Froude", - 'Q':"debit scalaire du fluide (m2/s)", - 'T1':"traceur 1, etc.", - 'T*':"Tous les traceurs de 1a 9.", - 'T1*':"Tous les traceurs 10 a 19.", - 'K':"energie turbulente du modele k-epsilon (J/kg)", - 'E':"dissipation de l energie turbulente (W/kg)", - 'D':"viscosite turbulente (m2/s)", - 'I':"debit suivant l axe des x (m2/s)", - 'J':"debit suivant l axe des y (m2/s)", - 'M':"vitesse scalaire (m/s)", - 'X':"vent suivant l axe des x (m/s)", - 'Y':"vent suivant l axe des y (m/s)", - 'P':"pression atmospherique (Pa)", - 'W':"coefficient de frottement sur le fond ", - 'A':"derive en x (m)", - 'G':"derive en y (m)", - 'L':"nombre de Courant ", - 'N':"variable supplementaire N", - 'O':"variable supplementaire O", - 'R':"variable supplementaire R", - 'Z':"variable supplementaire Z", - 'MAXZ':"cote maximum", - 'TMXZ':"temps de la cote maximum", - 'MAXV':"vitesse maximum", - 'TMXV':"temps de la vitesse maximum", - 'US':"vitesse de frottement", - 'G1':"gradient 1, etc. ", - 'ZRL':"reference level for Nestor ", - }, -'VARIABLES_TO_BE_PRINTED' : { - 'U':"vitesse suivant l axe des x (m/s)", - 'V':"vitesse suivant l axe des y (m/s)", - 'C':"celerite des ondes (m/s)", - 'H':"hauteur d eau (m)", - 'S':"cote de surface libre (m)", - 'B':"cote du fond (m)", - 'F':"nombre de Froude", - 'Q':"debit scalaire du fluide (m2/s)", - 'Tn':"traceur 1, etc.", - 'K':"energie turbulente du modele k-epsilon (J/kg)", - 'E':"dissipation de l energie turbulente (W/kg)", - 'D':"viscosite turbulente du modele k-epsilon (m2/s)", - 'I':"debit suivant l axe des x (m2/s)", - 'J':"debit suivant l axe des y (m2/s)", - 'M':"vitesse scalaire (m/s)", - 'X':"vent suivant l axe des x (m/s)", - 'Y':"vent suivant l axe des y (m/s)", - 'P':"pression atmospherique (Pa)", - 'W':"coefficient de frottement sur le fond", - 'A':"derive en x (m)", - 'G':"derive en y (m)", - 'L':"nombre de courants ", - 'N':"variable supplementaire N", - 'O':"variable supplementaire O", - 'R':"variable supplementaire R", - 'Z':"variable supplementaire Z", - 'Gn':"gradient 1, etc.", - }, -'STAGE_DISCHARGE_CURVES' : { - 0:"non", - 1:"Z(Q)", - 2:"Q(Z)", - }, -'VELOCITY_PROFILES' : { - 1:"Profil normal constant", - 2:"u et v dans le fichier conlim", - 3:"Vitesse normale donnee dans ubor dans le fichier conlim", - 4:"vitesse en racine carree de h", - 5:"vitesse en racine carree de h, variante", - }, -'OPTION_FOR_LIQUID_BOUNDARIES' : { - 1:"classique", - 2:"methode de Thompson avec calcul de caracteristiques", - }, -'LAW_OF_BOTTOM_FRICTION' : { - 0:"PAS DE FROTTEMENT", - 1:"HAALAND", - 2:"CHEZY", - 3:"STRICKLER", - 4:"MANNING", - 5:"NIKURADSE", - }, -'DEPTH_IN_FRICTION_TERMS' : { - 1:"nodale", - 2:"moyenne", - }, -'LAW_OF_FRICTION_ON_LATERAL_BOUNDARIES' : { - 0:"PAS DE FROTTEMENT", - 1:"HAALAND", - 2:"CHEZY", - 3:"STRICKLER", - 4:"MANNING", - 5:"NIKURADSE", - 6:"LOG LAW", - 7:"COLEBROOK-WHITE", - }, -'OPTION_FOR_WIND' : { - 1:"constant en temps et en espace", - 2:"variable en temps donne par fichier formate", - 3:"variable en temps et en espace donne par fichier formate", - }, -'RAINFALL_RUNOFF_MODEL' : { - 0:"Pas d infiltration", - 1:"Modele CN", - }, -'COST_FUNCTION' : { - 1:"Calculee sur h,u,v", - 2:"Calculee avec c,u,v", - }, -'IDENTIFICATION_METHOD' : { - 0:"plan d experience", - 1:"gradient simple", - 2:"gradient conj", - 3:"interp. de Lagrange", - }, -'TYPE_OF_SOURCES' : { - 1:"Normal", - 2:"Dirac", - }, -'TREATMENT_OF_THE_LINEAR_SYSTEM' : { - 1:"traitement couple", - 2:"Equation d onde", - }, -'FINITE_VOLUME_SCHEME' : { - 0:"schema de Roe", - 1:"schema cinetique ordre 1", - 2:"schema cinetique ordre 2", - 3:"schema Zokagoa ordre 1", - 4:"schema Tchamen ordre 1", - 5:"schema HLLC ordre 1", - 6:"schema WAF ordre 2", - }, -'OPTION_FOR_TSUNAMI_GENERATION' : { - 0:"Pas de Tsunami", - 1:"Generation d un Tsunami sur la base du modele de Okada 1992", - }, -'SPATIAL_PROJECTION_TYPE' : { - 1:"CARTESIEN, NON GEOREFERENCE", - 2:"MERCATOR", - 3:"LATITUDE LONGITUDE", - }, -'SOLVER' : { - 3:"equation normale", - 1:"gradient conjuge", - 2:"residu conjuge", - 4:"erreur minimale", - 6:"cgstab", - 7:"gmres", - 8:"direct", - }, -'PRECONDITIONING' : { - 2:"diagonal", - 0:"aucun", - 3:"bloc-diagonal (4 ou 9 matrices)", - 5:"valeur absolue diagonale", - 7:"crout", - 11:"gauss-seidel", - 14:"diagonal et crout", - }, -'FINITE_ELEMENT_ASSEMBLY' : { - 1:"normal", - 2:"Entier I8", - 3:"Compense", - }, -'DISCRETIZATIONS_IN_SPACE' : { - 11:"lineaire", - 12:"quasi-bulle", - 13:"quadratique", - }, -'INITIAL_GUESS_FOR_H' : { - 0:"zero", - 1:"precedent", - 2:"extrapolation", - }, -'INITIAL_GUESS_FOR_U' : { - 0:"zero", - 1:"precedent", - 2:"extrapolation", - }, -'TYPE_OF_ADVECTION' : { - 1:"CARACTERISTIQUES", - 2:"SUPG", - 3:"SCHEMA N CONSERVATIF LP", - 4:"SCHEMA N CONSERVATIF", - 5:"SCHEMA PSI CONSERVATIF", - 13:"SCHEMA N PAR SEGMENTS LP", - 14:"SCHEMA N PAR SEGMENTS", - 15:"SCHEMA ERIA", - }, -'OPTION_FOR_CHARACTERISTICS' : { - 1:"fortes", - 2:"faibles", - }, -'SCHEME_FOR_ADVECTION_OF_VELOCITIES' : { - 0:"PAS DE CONVECTION", - 1:"CARACTERISTIQUES", - 2:"EXPLICITE + SUPG", - 3:"EXPLICITE LEO POSTMA", - 4:"EXPLICITE + MURD SCHEMA N", - 5:"EXPLICITE + MURD SCHEMA PSI", - 13:"SCHEMA N POUR BANCS DECOUVRANTS", - 14:"SCHEMA N POUR BANCS DECOUVRANTS", - 15:"SCHEMA ERIA", - }, -'TREATMENT_OF_FLUXES_AT_THE_BOUNDARIES' : { - 1:"Priorite aux valeurs imposees", - 2:"Priorite aux flux", - }, -'PSI_SCHEME_OPTION' : { - 1:"explicite", - 2:"predicteur-correcteur", - }, -'OPTION_FOR_THE_DIFFUSION_OF_VELOCITIES' : { - 1:"div( nu grad(U) )", - 2:"1/h div ( h nu grad(U)", - }, -'MATRIX_STORAGE' : { - 1:"EBE classique", - 3:"Stockage par segments", - }, -'TURBULENCE_MODEL' : { - 1:"VISCOSITE CONSTANTE", - 2:"ELDER", - 3:"MODELE K-EPSILON", - 4:"SMAGORINSKI", - 5:"MIXING LENGTH", - 6:"SPALART-ALLMARAS", - }, -'SOLVER_FOR_K_EPSILON_MODEL' : { - 1:"gradient conjugue", - 2:"residu conjuge", - 3:"gradient conjugue sur equation normal", - 4:"erreur minimale", - 5:"gradient conjugue carre", - 6:"gradient conjugue carre stabilise (cgstab)", - 7:"gmres (voir aussi option du solveur pour le modele k-epsilon", - 8:"direct", - }, -'PRECONDITIONING_FOR_K_EPSILON_MODEL' : { - 2:"diagonal", - 0:"aucun", - 7:"crout", - 14:"diagonal et crout", - }, -'TURBULENCE_REGIME_FOR_SOLID_BOUNDARIES' : { - 1:"lisse", - 2:"rugueux", - }, -'SCHEME_FOR_ADVECTION_OF_K_EPSILON' : { - 0:"PAS DE CONVECTION", - 1:"CARACTERISTIQUES", - 2:"EXPLICITE + SUPG", - 3:"EXPLICITE LEO POSTMA", - 4:"EXPLICITE + MURD SCHEMA N", - 5:"EXPLICITE + MURD SCHEMA PSI", - 13:"LEO POSTMA POUR BANCS DECOUVRANTS", - 14:"SCHEMA N POUR BANCS DECOUVRANTS", - 15:"SCHEMA ERIA POUR BANCS DECOUVRANTS", - }, -'OPTION_FOR_THE_TREATMENT_OF_TIDAL_FLATS' : { - 1:"EQUATIONS RESOLUES PARTOUT, CORRECTION SUR LES BANCS DECOUVRANTS", - 2:"GEL DES ELEMENTS DECOUVRANTS", - 3:"COMME 1 MAIS AVEC POROSITE (METHODE DEFINA)", - }, -'TREATMENT_OF_NEGATIVE_DEPTHS' : { - 1:"LISSAGE", - 2:"LIMITATION DES FLUX", - 3:"LIMITATION DES FLUX (ERIA)", - }, -'SOLVER_FOR_DIFFUSION_OF_TRACERS' : { - 1:"gradient conjuge", - 2:"residu conjuge", - 3:"gradient conjuge sur equation normale", - 4:"erreur minimale", - 5:"gradient conjuge carre", - 6:"cgstab", - 7:"gmres (voir ausi option du solveur)", - 8:"direct", - }, -'PRECONDITIONING_FOR_DIFFUSION_OF_TRACERS' : { - 0:"aucun", - 2:"diagonal", - 7:"crout", - 14:"diagonal et crout", - }, -'OPTION_FOR_THE_DIFFUSION_OF_TRACERS' : { - 1:"div( nu grad(T) )", - 2:"1/h div ( h nu grad(T)", - }, -'SCHEME_FOR_ADVECTION_OF_TRACERS' : { - 0:"PAS DE CONVECTION", - 1:"CARACTERISTIQUES", - 2:"EXPLICITE + SUPG", - 3:"EXPLICITE LEO POSTMA", - 4:"EXPLICITE + MURD SCHEMA N", - 5:"EXPLICITE + MURD SCHEMA PSI", - 13:"LEO POSTMA POUR BANCS DECOUVRANTS", - 14:"SCHEMA N POUR BANCS DECOUVRANTS", - 15:"SCHEMA ERIA POUR BANCS DECOUVRANTS", - }, -'ALGAE_TYPE' : { - 1:"SPHERE", - 2:"IRIDAEA FLACCIDA (PROCHE DES ULVES)", - 3:"PELVETIOPSIS LIMITATA", - 4:"GIGARTINA LEPTORHYNCHOS", - }, -'STOCHASTIC_DIFFUSION_MODEL' : { - 0:"Pas de modele", - 1:"mouvement brownien", - }, -'TYPE_OF_WEIRS' : { - 1:"HORIZONTAL AVEC MEME NOMBRE DE NOEUDS AMONT/AVAL", - 2:"GENERALE", - }, -'GEOGRAPHIC_SYSTEM' : { - -1:"PAS DE VALEUR PAR DEFAUT", - 0:"DEFINI PAR L UTILISATEUR", - 1:"WGS84 LONGITUDE/LATITUDE EN DEGRES REELS", - 2:"WGS84 NORD UTM", - 3:"WGS84 SUD UTM", - 4:"LAMBERT", - 5:"MERCATOR POUR TELEMAC", - }, -'ZONE_NUMBER_IN_GEOGRAPHIC_SYSTEM' : { - -1:"PAS DE VALEUR PAR DEFAUT", - 1:"LAMBERT 1 NORD", - 2:"LAMBERT 2 CENTRE", - 3:"LAMBERT 3 SUD", - 4:"LAMBERT 4 CORSE", - 22:"LAMBERT 2 ETENDU", - 93:"LAMBERT 93", - 30:"ZONE UTM, PAR EXEMPLE", - }, -'OPTION_FOR_TIDAL_BOUNDARY_CONDITIONS' : { - 0:"Pas de maree", - 1:"Maree reelle (methodologie recommandee)", - 2:"Maree de vive-eau exceptionnelle (coef. presque 120)", - 3:"Maree de vive-eau moyenne (coef. presque 95)", - 4:"Maree moyenne (coef. presque 70)", - 5:"Maree de morte-eau moyenne (coef. presque 45)", - 6:"Maree de morte-eau exceptionnelle (coef. presque 20)", - 7:"Maree reelle (methodologie d avant 2010)", - }, -'TIDAL_DATA_BASE' : { - -1:"PAS DE VALEUR PAR DEFAUT", - 1:"JMJ", - 2:"TPXO", - 3:"DIVERS (LEGOS-NEA, FES20XX, PREVIMER...)", - }, -'LANGUAGE' : { - 1:"FRANCAIS", - 2:"ANGLAIS", - }, -} - -DicoCasFrToCata = { - "TITRE":"TITLE", - "CONDITIONS INITIALES":"INITIAL_CONDITIONS", - "COTE INITIALE":"INITIAL_ELEVATION", - "HAUTEUR INITIALE":"INITIAL_DEPTH", - "FORMAT DU FICHIER DE DONNEES BINAIRE 1":"BINARY_DATA_FILE_1_FORMAT", - "FICHIER DE DONNEES BINAIRE 1":"BINARY_DATA_FILE_1", - "FORMAT DU FICHIER DE DONNEES BINAIRE 2":"BINARY_DATA_FILE_2_FORMAT", - "FICHIER DE DONNEES BINAIRE 2":"BINARY_DATA_FILE_2", - "FICHIER DE DONNEES FORMATE 1":"FORMATTED_DATA_FILE_1", - "FICHIER DE DONNEES FORMATE 2":"FORMATTED_DATA_FILE_2", - "FORMAT DU FICHIER DE GEOMETRIE":"GEOMETRY_FILE_FORMAT", - "FICHIER DE GEOMETRIE":"GEOMETRY_FILE", - "FICHIER FORTRAN":"FORTRAN_FILE", - "FICHIER DES FONDS":"BOTTOM_TOPOGRAPHY_FILE", - "LISSAGES DU FOND":"BOTTOM_SMOOTHINGS", - "FICHIER DES CONDITIONS AUX LIMITES":"BOUNDARY_CONDITIONS_FILE", - "VALIDATION":"VALIDATION", - "FORMAT DU FICHIER DE REFERENCE":"REFERENCE_FILE_FORMAT", - "FICHIER DE REFERENCE":"REFERENCE_FILE", - "PROCESSEURS PARALLELES":"PARALLEL_PROCESSORS", - "VERIFICATION DU MAILLAGE":"CHECKING_THE_MESH", - "NOMBRE MAXIMUM DE FRONTIERES":"MAXIMUM_NUMBER_OF_BOUNDARIES", - "NOMBRE MAXIMUM DE SOURCES":"MAXIMUM_NUMBER_OF_SOURCES", - "NOMBRE MAXIMUM DE TRACEURS":"MAXIMUM_NUMBER_OF_TRACERS", - "LONGUEUR DU VECTEUR":"VECTOR_LENGTH", - "SUITE DE CALCUL":"COMPUTATION_CONTINUED", - "FORMAT DU FICHIER DU CALCUL PRECEDENT":"PREVIOUS_COMPUTATION_FILE_FORMAT", - "FICHIER DU CALCUL PRECEDENT":"PREVIOUS_COMPUTATION_FILE", - "ENREGISTREMENT POUR SUITE DE CALCUL":"RECORD_NUMBER_FOR_RESTART", - "REMISE A ZERO DU TEMPS":"INITIAL_TIME_SET_TO_ZERO", - "NUMERO DU PREMIER PAS DE TEMPS POUR LES SORTIES GRAPHIQUES":"NUMBER_OF_FIRST_TIME_STEP_FOR_GRAPHIC_PRINTOUTS", - "PERIODE POUR LES SORTIES GRAPHIQUES":"GRAPHIC_PRINTOUT_PERIOD", - "VARIABLES POUR LES SORTIES GRAPHIQUES":"VARIABLES_FOR_GRAPHIC_PRINTOUTS", - "NOMBRE DE TABLEAUX PRIVES":"NUMBER_OF_PRIVATE_ARRAYS", - "NOMS DES VARIABLES PRIVEES":"NAMES_OF_PRIVATE_VARIABLES", - "FORMAT DU FICHIER DES RESULTATS":"RESULTS_FILE_FORMAT", - "FICHIER DES RESULTATS":"RESULTS_FILE", - "FICHIER RESULTAT EN LONGITUDE-LATITUDE":"RESULT_FILE_IN_LONGITUDE_LATITUDE", - "FORMAT DU FICHIER DE RESULTATS BINAIRE":"BINARY_RESULTS_FILE_FORMAT", - "FICHIER DE RESULTATS BINAIRE":"BINARY_RESULTS_FILE", - "FICHIER DE RESULTATS FORMATE":"FORMATTED_RESULTS_FILE", - "SECTIONS DE CONTROLE":"CONTROL_SECTIONS", - "IMPRESSION DU CUMUL DES FLUX":"PRINTING_CUMULATED_FLOWRATES", - "CALCUL COMPATIBLE DES FLUX":"COMPATIBLE_COMPUTATION_OF_FLUXES", - "FICHIER DES SECTIONS DE CONTROLE":"SECTIONS_INPUT_FILE", - "FICHIER DE SORTIE DES SECTIONS DE CONTROLE":"SECTIONS_OUTPUT_FILE", - "FLUXLINE":"FLUXLINE", - "FICHIER DE FLUXLINE":"FLUXLINE_INPUT_FILE", - "NUMERO DU PREMIER PAS DE TEMPS POUR LES SORTIES LISTING":"NUMBER_OF_FIRST_TIME_STEP_FOR_LISTING_PRINTOUTS", - "PERIODE DE SORTIE LISTING":"LISTING_PRINTOUT_PERIOD", - "PERIODE POUR LES SORTIES LISTING":"LISTING_FOR_PRINTOUT_PERIOD", - "SORTIE LISTING":"LISTING_PRINTOUT", - "VARIABLES A IMPRIMER":"VARIABLES_TO_BE_PRINTED", - "BILAN DE MASSE":"MASS_BALANCE", - "INFORMATIONS SUR LE SOLVEUR":"INFORMATION_ABOUT_SOLVER", - "LISTE DE POINTS":"LIST_OF_POINTS", - "NOMS DES POINTS":"NAMES_OF_POINTS", - "PERIODES D'ANALYSE DE FOURIER":"FOURIER_ANALYSIS_PERIODS", - "BORNES EN TEMPS POUR L'ANALYSE DE FOURIER":"TIME_RANGE_FOR_FOURIER_ANALYSIS", - "COTES IMPOSEES":"PRESCRIBED_ELEVATIONS", - "DEBITS IMPOSES":"PRESCRIBED_FLOWRATES", - "VITESSES IMPOSEES":"PRESCRIBED_VELOCITIES", - "COURBES DE TARAGE":"STAGE_DISCHARGE_CURVES", - "FICHIER DES COURBES DE TARAGE":"STAGE_DISCHARGE_CURVES_FILE", - "PROFILS DE VITESSE":"VELOCITY_PROFILES", - "OPTION POUR LES FRONTIERES LIQUIDES":"OPTION_FOR_LIQUID_BOUNDARIES", - "FICHIER DES FRONTIERES LIQUIDES":"LIQUID_BOUNDARIES_FILE", - "ELEMENTS MASQUES PAR L'UTILISATEUR":"ELEMENTS_MASKED_BY_USER", - "NOMBRE MAXIMUM DE DOMAINES DE FROTTEMENT":"MAXIMUM_NUMBER_OF_FRICTION_DOMAINS", - "DONNEES POUR LE FROTTEMENT":"FRICTION_DATA", - "FICHIER DE DONNEES POUR LE FROTTEMENT":"FRICTION_DATA_FILE", - "LOI DE FROTTEMENT SUR LE FOND":"LAW_OF_BOTTOM_FRICTION", - "COEFFICIENT DE FROTTEMENT":"FRICTION_COEFFICIENT", - "VALEUR PAR DEFAUT DU MANNING POUR LA LOI DE COLEBROOK-WHITE":"MANNING_DEFAULT_VALUE_FOR_COLEBROOK_WHITE_LAW", - "HAUTEUR DANS LES TERMES DE FROTTEMENT":"DEPTH_IN_FRICTION_TERMS", - "FROTTEMENT POUR LA VEGETATION NON SUBMERGEE":"NON_SUBMERGED_VEGETATION_FRICTION", - "DIAMETRE DES ELEMENTS DE FROTTEMENT":"DIAMETER_OF_ROUGHNESS_ELEMENTS", - "ESPACEMENT DES ELEMENTS DE FROTTEMENT":"SPACING_OF_ROUGHNESS_ELEMENTS", - "LOI DE FROTTEMENT SUR LES PAROIS LATERALES":"LAW_OF_FRICTION_ON_LATERAL_BOUNDARIES", - "COEFFICIENT DE RUGOSITE DES BORDS":"ROUGHNESS_COEFFICIENT_OF_BOUNDARIES", - "DEFINITION DE ZONES":"DEFINITION_OF_ZONES", - "FICHIER DES ZONES":"ZONES_FILE", - "PROCESSUS LIES AUX GLACES":"ICE_PROCESSES", - "VENT":"WIND", - "OPTION DU VENT":"OPTION_FOR_WIND", - "COEFFICIENT D'INFLUENCE DU VENT":"COEFFICIENT_OF_WIND_INFLUENCE", - "VITESSE DU VENT SUIVANT X":"WIND_VELOCITY_ALONG_X", - "VITESSE DU VENT SUIVANT Y":"WIND_VELOCITY_ALONG_Y", - "VITESSE ET DIRECTION DU VENT":"SPEED_AND_DIRECTION_OF_WIND", - "PROFONDEUR LIMITE POUR LE VENT":"THRESHOLD_DEPTH_FOR_WIND", - "PRESSION ATMOSPHERIQUE":"AIR_PRESSURE", - "VALEUR DE LA PRESSION ATMOSPHERIQUE":"VALUE_OF_ATMOSPHERIC_PRESSURE", - "PLUIE OU EVAPORATION":"RAIN_OR_EVAPORATION", - "PLUIE OU EVAPORATION EN MM PAR JOUR":"RAIN_OR_EVAPORATION_IN_MM_PER_DAY", - "MODELE PLUIE-DEBIT":"RAINFALL_RUNOFF_MODEL", - "CONDITIONS D'HUMIDITE PRECEDENTE":"ANTECEDENT_MOISTURE_CONDITIONS", - "DUREE DE LA PLUIE OU EVAPORATION EN HEURES":"DURATION_OF_RAIN_OR_EVAPORATION_IN_HOURS", - "FICHIER ASCII DE DONNEES ATMOSPHERIQUES":"ASCII_ATMOSPHERIC_DATA_FILE", - "FICHIER BINAIRE DE DONNEES ATMOSPHERIQUES":"BINARY_ATMOSPHERIC_DATA_FILE", - "FORMAT DU FICHIER BINAIRE DE DONNEES ATMOSPHERIQUES":"BINARY_ATMOSPHERIC_DATA_FILE_FORMAT", - "OPTION POUR RATIO DES PERTES INITIALES":"OPTION_FOR_INITIAL_ABSTRACTION_RATIO", - "COURANTS DE HOULE":"WAVE_DRIVEN_CURRENTS", - "NUMERO DE L'ENREGISTREMENT DANS LE FICHIER DE HOULE":"RECORD_NUMBER_IN_WAVE_FILE", - "AUGMENTATION DU FROTTEMENT PAR LA HOULE":"WAVE_ENHANCED_FRICTION_FACTOR", - "ESTIMATION DE PARAMETRE":"PARAMETER_ESTIMATION", - "FONCTION COUT":"COST_FUNCTION", - "METHODE D'IDENTIFICATION":"IDENTIFICATION_METHOD", - "PRECISIONS POUR L'IDENTIFICATION":"TOLERANCES_FOR_IDENTIFICATION", - "MAXIMUM D'ITERATIONS POUR L'IDENTIFICATION":"MAXIMUM_NUMBER_OF_ITERATIONS_FOR_IDENTIFICATION", - "ABSCISSES DES SOURCES":"ABSCISSAE_OF_SOURCES", - "ORDONNEES DES SOURCES":"ORDINATES_OF_SOURCES", - "DEBITS DES SOURCES":"WATER_DISCHARGE_OF_SOURCES", - "VITESSES DES SOURCES SELON X":"VELOCITIES_OF_THE_SOURCES_ALONG_X", - "VITESSES DES SOURCES SELON Y":"VELOCITIES_OF_THE_SOURCES_ALONG_Y", - "TYPE DES SOURCES":"TYPE_OF_SOURCES", - "FICHIER DES SOURCES":"SOURCES_FILE", - "NUMEROS GLOBAUX DES NOEUDS DES SOURCES":"GLOBAL_NUMBERS_OF_SOURCE_NODES", - "PROCESSUS QUALITE D'EAU":"WATER_QUALITY_PROCESS", - "MASSE VOLUMIQUE DE L'EAU":"WATER_DENSITY", - "ACCELERATION DE LA PESANTEUR":"GRAVITY_ACCELERATION", - "STRUCTURES VERTICALES":"VERTICAL_STRUCTURES", - "EQUATIONS":"EQUATIONS", - "TRAITEMENT DU SYSTEME LINEAIRE":"TREATMENT_OF_THE_LINEAR_SYSTEM", - "SCHEMA EN VOLUMES FINIS":"FINITE_VOLUME_SCHEME", - "CORIOLIS":"CORIOLIS", - "COEFFICIENT DE CORIOLIS":"CORIOLIS_COEFFICIENT", - "OPTION POUR LA GENERATION DE TSUNAMI":"OPTION_FOR_TSUNAMI_GENERATION", - "PARAMETRES PHYSIQUES DU TSUNAMI":"PHYSICAL_CHARACTERISTICS_OF_THE_TSUNAMI", - "COURANTS SECONDAIRES":"SECONDARY_CURRENTS", - "COEFFICIENT DE PRODUCTION POUR COURANTS SECONDAIRES":"PRODUCTION_COEFFICIENT_FOR_SECONDARY_CURRENTS", - "COEFFICIENT DE DISSIPATION POUR COURANTS SECONDAIRES":"DISSIPATION_COEFFICIENT_FOR_SECONDARY_CURRENTS", - "DEBUGGER":"DEBUGGER", - "PAS DE TEMPS":"TIME_STEP", - "NOMBRE DE PAS DE TEMPS":"NUMBER_OF_TIME_STEPS", - "DUREE DU CALCUL":"DURATION", - "DATE DE L'ORIGINE DES TEMPS":"ORIGINAL_DATE_OF_TIME", - "HEURE DE L'ORIGINE DES TEMPS":"ORIGINAL_HOUR_OF_TIME", - "ARRET SI UN ETAT PERMANENT EST ATTEINT":"STOP_IF_A_STEADY_STATE_IS_REACHED", - "CRITERES D'ARRET":"STOP_CRITERIA", - "CONTROLE DES LIMITES":"CONTROL_OF_LIMITS", - "VALEURS LIMITES":"LIMIT_VALUES", - "PAS DE TEMPS VARIABLE":"VARIABLE_TIME_STEP", - "NOMBRE DE COURANT SOUHAITE":"DESIRED_COURANT_NUMBER", - "COORDONNEES DE L'ORIGINE":"ORIGIN_COORDINATES", - "COORDONNEES SPHERIQUES":"SPHERICAL_COORDINATES", - "LATITUDE DU POINT ORIGINE":"LATITUDE_OF_ORIGIN_POINT", - "LONGITUDE DU POINT ORIGINE":"LONGITUDE_OF_ORIGIN_POINT", - "NORD":"NORTH", - "TYPE DE PROJECTION SPATIALE":"SPATIAL_PROJECTION_TYPE", - "SOLVEUR":"SOLVER", - "OPTION DU SOLVEUR":"SOLVER_OPTION", - "PRECISION DU SOLVEUR":"SOLVER_ACCURACY", - "MAXIMUM D'ITERATIONS POUR LE SOLVEUR":"MAXIMUM_NUMBER_OF_ITERATIONS_FOR_SOLVER", - "CORRECTION DE CONTINUITE":"CONTINUITY_CORRECTION", - "PRECONDITIONNEMENT":"PRECONDITIONING", - "PRECONDITIONNEMENT C-U":"C_U_PRECONDITIONING", - "ASSEMBLAGE EN ELEMENTS FINIS":"FINITE_ELEMENT_ASSEMBLY", - "IMPLICITATION POUR LA HAUTEUR":"IMPLICITATION_FOR_DEPTH", - "IMPLICITATION POUR LA VITESSE":"IMPLICITATION_FOR_VELOCITY", - "DISCRETISATIONS EN ESPACE":"DISCRETIZATIONS_IN_SPACE", - "PROPAGATION":"PROPAGATION", - "ORDRE DU TIR INITIAL POUR H":"INITIAL_GUESS_FOR_H", - "PROPAGATION LINEARISEE":"LINEARIZED_PROPAGATION", - "ORDRE DU TIR INITIAL POUR U":"INITIAL_GUESS_FOR_U", - "PROFONDEUR MOYENNE POUR LA LINEARISATION":"MEAN_DEPTH_FOR_LINEARIZATION", - "CONVECTION":"ADVECTION", - "CONVECTION DE H":"ADVECTION_OF_H", - "CONVECTION DE U ET V":"ADVECTION_OF_U_AND_V", - "FORME DE LA CONVECTION":"TYPE_OF_ADVECTION", - "OPTION POUR LES CARACTERISTIQUES":"OPTION_FOR_CHARACTERISTICS", - "OPTION DE SUPG":"SUPG_OPTION", - "NOMBRE DE POINTS DE GAUSS POUR LES CARACTERISTIQUES FAIBLES":"NUMBER_OF_GAUSS_POINTS_FOR_WEAK_CHARACTERISTICS", - "MASS-LUMPING POUR LES CARACTERISTIQUES FAIBLES":"MASS_LUMPING_FOR_WEAK_CHARACTERISTICS", - "MAXIMUM D'ITERATIONS POUR LES SCHEMAS DE CONVECTION":"MAXIMUM_NUMBER_OF_ITERATIONS_FOR_ADVECTION_SCHEMES", - "COEFFICIENTS DE DECENTREMENT":"UPWIND_COEFFICIENTS", - "MASS-LUMPING SUR H":"MASS_LUMPING_ON_H", - "MASS-LUMPING SUR LA VITESSE":"MASS_LUMPING_ON_VELOCITY", - "SCHEMA POUR LA CONVECTION DES VITESSES":"SCHEME_FOR_ADVECTION_OF_VELOCITIES", - "OPTION DU SCHEMA POUR LA CONVECTION DES VITESSES":"SCHEME_OPTION_FOR_ADVECTION_OF_VELOCITIES", - "COMPATIBILITE DU GRADIENT DE SURFACE LIBRE":"FREE_SURFACE_GRADIENT_COMPATIBILITY", - "NOMBRE DE SOUS-ITERATIONS POUR LES NON-LINEARITES":"NUMBER_OF_SUB_ITERATIONS_FOR_NON_LINEARITIES", - "TRAITEMENT DES FLUX AUX FRONTIERES":"TREATMENT_OF_FLUXES_AT_THE_BOUNDARIES", - "NOMBRE DE CORRECTIONS DES SCHEMAS DISTRIBUTIFS":"NUMBER_OF_CORRECTIONS_OF_DISTRIBUTIVE_SCHEMES", - "NOMBRE DE SOUS-PAS DES SCHEMAS DISTRIBUTIFS":"NUMBER_OF_SUB_STEPS_OF_DISTRIBUTIVE_SCHEMES", - "OPTION DU SCHEMA PSI":"PSI_SCHEME_OPTION", - "DIFFUSION DES VITESSES":"DIFFUSION_OF_VELOCITY", - "OPTION POUR LA DIFFUSION DES VITESSES":"OPTION_FOR_THE_DIFFUSION_OF_VELOCITIES", - "IMPLICITATION POUR LA DIFFUSION DES VITESSES":"IMPLICITATION_FOR_DIFFUSION_OF_VELOCITY", - "AD NOMBRE DE DERIVEES":"AD_NUMBER_OF_DERIVATIVES", - "AD NOMS DES DERIVEES":"AD_NAMES_OF_DERIVATIVES", - "AD SOLVEUR LINEAIRE SYMBOLIQUE":"AD_SYMBOLIC_LINEAR_SOLVER", - "AD REMISE A ZERO DES DERIVEES DU SOLVEUR LINEAIRE":"AD_LINEAR_SOLVER_RESET_DERIVATIVES", - "AD CONVERGENCE DES DERIVEES POUR LE SOLVEUR LINEAIRE":"AD_LINEAR_SOLVER_DERIVATIVE_CONVERGENCE", - "STOCKAGE DES MATRICES":"MATRIX_STORAGE", - "PRODUIT MATRICE-VECTEUR":"MATRIX_VECTOR_PRODUCT", - "COEFFICIENT D'INTEGRATION EN TEMPS DE NEWMARK":"NEWMARK_TIME_INTEGRATION_COEFFICIENT", - "ZERO":"ZERO", - "OPTION DE PROPAGATION":"PROPAGATION_OPTION", - "OPTION DE LA RECONSTRUCION HYDROSTATIQUE":"OPTION_OF_THE_HYDROSTATIC_RECONSTRUCTION", - "ETUDE DE CONVERGENCE":"CONVERGENCE_STUDY", - "NIVEAUX DE RAFFINEMENT":"REFINEMENT_LEVELS", - "COEFFICIENT DE DIFFUSION DES VITESSES":"VELOCITY_DIFFUSIVITY", - "MODELE DE TURBULENCE":"TURBULENCE_MODEL", - "PRECISION SUR SPALART-ALLMARAS":"ACCURACY_OF_SPALART_ALLMARAS", - "INFORMATION SUR LE MODELE SPALART-ALLMARAS":"INFORMATION_ABOUT_SPALART_ALLMARAS_MODEL", - "SOLVEUR POUR LE MODELE K-EPSILON":"SOLVER_FOR_K_EPSILON_MODEL", - "OPTION DU SOLVEUR POUR LE MODELE K-EPSILON":"OPTION_FOR_THE_SOLVER_FOR_K_EPSILON_MODEL", - "PRECONDITIONNEMENT POUR LE MODELE K-EPSILON":"PRECONDITIONING_FOR_K_EPSILON_MODEL", - "COEFFICIENTS ADIMENSIONNELS DE DISPERSION":"NON_DIMENSIONAL_DISPERSION_COEFFICIENTS", - "REGIME DE TURBULENCE POUR LES PAROIS":"TURBULENCE_REGIME_FOR_SOLID_BOUNDARIES", - "INFORMATIONS SUR LE MODELE K-EPSILON":"INFORMATION_ABOUT_K_EPSILON_MODEL", - "CONVECTION DE K ET EPSILON":"ADVECTION_OF_K_AND_EPSILON", - "SCHEMA POUR LA CONVECTION DU K-EPSILON":"SCHEME_FOR_ADVECTION_OF_K_EPSILON", - "OPTION DU SCHEMA POUR LA CONVECTION DU K-EPSILON":"SCHEME_OPTION_FOR_ADVECTION_OF_K_EPSILON", - "REDUCTION DU PAS DE TEMPS POUR LE MODELE K-EPSILON":"TIME_STEP_REDUCTION_FOR_K_EPSILON_MODEL", - "PRECISION SUR K":"ACCURACY_OF_K", - "PRECISION SUR EPSILON":"ACCURACY_OF_EPSILON", - "MAXIMUM D'ITERATIONS POUR K ET EPSILON":"MAXIMUM_NUMBER_OF_ITERATIONS_FOR_K_AND_EPSILON", - "BANCS DECOUVRANTS":"TIDAL_FLATS", - "OPTION DE TRAITEMENT DES BANCS DECOUVRANTS":"OPTION_FOR_THE_TREATMENT_OF_TIDAL_FLATS", - "TRAITEMENT DES HAUTEURS NEGATIVES":"TREATMENT_OF_NEGATIVE_DEPTHS", - "SEUIL POUR LES PROFONDEURS NEGATIVES":"THRESHOLD_FOR_NEGATIVE_DEPTHS", - "PROFONDEUR LIMITE POUR PROCEDURE DE RESSUYAGE":"THRESHOLD_DEPTH_FOR_RECEDING_PROCEDURE", - "CLIPPING DE H":"H_CLIPPING", - "VALEUR MINIMUM DE H":"MINIMUM_VALUE_OF_DEPTH", - "VALEURS IMPOSEES DES TRACEURS":"PRESCRIBED_TRACERS_VALUES", - "NOMBRE DE TRACEURS":"NUMBER_OF_TRACERS", - "NOMS DES TRACEURS":"NAMES_OF_TRACERS", - "VALEURS INITIALES DES TRACEURS":"INITIAL_VALUES_OF_TRACERS", - "EFFETS DE DENSITE":"DENSITY_EFFECTS", - "TEMPERATURE MOYENNE":"MEAN_TEMPERATURE", - "SOLVEUR POUR LA DIFFUSION DES TRACEURS":"SOLVER_FOR_DIFFUSION_OF_TRACERS", - "OPTION DU SOLVEUR POUR LA DIFFUSION DES TRACEURS":"SOLVER_OPTION_FOR_TRACERS_DIFFUSION", - "PRECONDITIONNEMENT POUR LA DIFFUSION DES TRACEURS":"PRECONDITIONING_FOR_DIFFUSION_OF_TRACERS", - "PRECISION POUR LA DIFFUSION DES TRACEURS":"ACCURACY_FOR_DIFFUSION_OF_TRACERS", - "MAXIMUM D'ITERATIONS POUR LA DIFFUSION DES TRACEURS":"MAXIMUM_NUMBER_OF_ITERATIONS_FOR_DIFFUSION_OF_TRACERS", - "VALEURS DES TRACEURS DES SOURCES":"VALUES_OF_THE_TRACERS_AT_THE_SOURCES", - "VALEURS DES TRACEURS DANS LA PLUIE":"VALUES_OF_TRACERS_IN_THE_RAIN", - "CONVECTION DES TRACEURS":"ADVECTION_OF_TRACERS", - "COEFFICIENT D'IMPLICITATION DES TRACEURS":"IMPLICITATION_COEFFICIENT_OF_TRACERS", - "DIFFUSION DES TRACEURS":"DIFFUSION_OF_TRACERS", - "COEFFICIENT DE DIFFUSION DES TRACEURS":"COEFFICIENT_FOR_DIFFUSION_OF_TRACERS", - "OPTION POUR LA DIFFUSION DES TRACEURS":"OPTION_FOR_THE_DIFFUSION_OF_TRACERS", - "SCHEMA POUR LA CONVECTION DES TRACEURS":"SCHEME_FOR_ADVECTION_OF_TRACERS", - "OPTION DU SCHEMA POUR LA CONVECTION DES TRACEURS":"SCHEME_OPTION_FOR_ADVECTION_OF_TRACERS", - "MASS-LUMPING SUR LES TRACEURS":"MASS_LUMPING_ON_TRACERS", - "NOMBRE DE FLOTTEURS":"NUMBER_OF_DROGUES", - "PERIODE POUR LES SORTIES DE FLOTTEURS":"PRINTOUT_PERIOD_FOR_DROGUES", - "FICHIER DES FLOTTEURS":"DROGUES_FILE", - "MODELE DE TRANSPORT DES ALGUES":"ALGAE_TRANSPORT_MODEL", - "TYPE DES ALGUES":"ALGAE_TYPE", - "DIAMETRE DES ALGUES":"DIAMETER_OF_ALGAE", - "MASSE VOLUMIQUE DES ALGUES":"DENSITY_OF_ALGAE", - "EPAISSEUR DES ALGUES":"THICKNESS_OF_ALGAE", - "MODELE DE NAPPES D'HYDROCARBURES":"OIL_SPILL_MODEL", - "FICHIER DE COMMANDES HYDROCARBURES":"OIL_SPILL_STEERING_FILE", - "MODELE DE DIFFUSION STOCHASTIQUE":"STOCHASTIC_DIFFUSION_MODEL", - "NOMBRE DE DERIVES LAGRANGIENNES":"NUMBER_OF_LAGRANGIAN_DRIFTS", - "NOMBRE DE SEUILS":"NUMBER_OF_WEIRS", - "FICHIER DE DONNEES DES SEUILS":"WEIRS_DATA_FILE", - "TYPE DES SEUILS":"TYPE_OF_WEIRS", - "NOMBRE DE BUSES":"NUMBER_OF_CULVERTS", - "FICHIER DE DONNEES DES BUSES":"CULVERTS_DATA_FILE", - "OPTION POUR LES BUSES":"OPTION_FOR_CULVERTS", - "BRECHE":"BREACH", - "FICHIER DE DONNEES DES BRECHES":"BREACHES_DATA_FILE", - "BASE BINAIRE 1 DE DONNEES DE MAREE":"BINARY_DATABASE_1_FOR_TIDE", - "BASE BINAIRE 2 DE DONNEES DE MAREE":"BINARY_DATABASE_2_FOR_TIDE", - "SYSTEME GEOGRAPHIQUE":"GEOGRAPHIC_SYSTEM", - "NUMERO DE FUSEAU OU PROJECTION DANS LE SYSTEME GEOGRAPHIQUE":"ZONE_NUMBER_IN_GEOGRAPHIC_SYSTEM", - "FICHIER DE CONVERSION LAMBERT 93":"LAMBERT_93_CONVERSION_FILE", - "COEFFICIENT DE CALAGE DU NIVEAU DE MER":"COEFFICIENT_TO_CALIBRATE_SEA_LEVEL", - "NUMERO GLOBAL DU POINT POUR CALER LA PLEINE MER":"GLOBAL_NUMBER_OF_THE_POINT_TO_CALIBRATE_HIGH_WATER", - "INTERPOLATION DE COMPOSANTES MINEURES":"MINOR_CONSTITUENTS_INFERENCE", - "OPTION POUR LES CONDITIONS AUX LIMITES DE MAREE":"OPTION_FOR_TIDAL_BOUNDARY_CONDITIONS", - "BASE DE DONNEES DE MAREE":"TIDAL_DATA_BASE", - "FICHIER DES CONSTANTES HARMONIQUES":"HARMONIC_CONSTANTS_FILE", - "FICHIER DU MODELE DE MAREE":"TIDAL_MODEL_FILE", - "FORMAT DU FICHIER DU MODELE DE MAREE":"TIDAL_MODEL_FILE_FORMAT", - "BASE ASCII DE DONNEES DE MAREE":"ASCII_DATABASE_FOR_TIDE", - "COEFFICIENT DE CALAGE DU MARNAGE":"COEFFICIENT_TO_CALIBRATE_TIDAL_RANGE", - "COEFFICIENT DE CALAGE DES VITESSES DE COURANT":"COEFFICIENT_TO_CALIBRATE_TIDAL_VELOCITIES", - "NUMERO LOCAL DU POINT POUR CALER LA PLEINE MER":"LOCAL_NUMBER_OF_THE_POINT_TO_CALIBRATE_HIGH_WATER", - "FORCE GENERATRICE DE LA MAREE":"TIDE_GENERATING_FORCE", - "COUPLAGE AVEC":"COUPLING_WITH", - "NOMS DES VARIABLES CLANDESTINES":"NAMES_OF_CLANDESTINE_VARIABLES", - "DOSSIER DE COUPLAGE":"COUPLING_DIRECTORY", - "FICHIER DE COMMANDE DELWAQ":"DELWAQ_STEERING_FILE", - "PERIODE DE SORTIE POUR DELWAQ":"DELWAQ_PRINTOUT_PERIOD", - "FICHIER DELWAQ DES ECHANGES ENTRE NOEUDS":"EXCHANGES_BETWEEN_NODES_DELWAQ_FILE", - "FICHIER DELWAQ DES DISTANCES ENTRE NOEUDS":"NODES_DISTANCES_DELWAQ_FILE", - "FICHIER DELWAQ DES SURFACES DU FOND":"BOTTOM_SURFACES_DELWAQ_FILE", - "FICHIER DELWAQ DES VOLUMES":"VOLUMES_DELWAQ_FILE", - "FICHIER DELWAQ DES SURFACES DE FLUX":"EXCHANGE_AREAS_DELWAQ_FILE", - "FICHIER DELWAQ DES FLUX VERTICAUX":"VERTICAL_FLUXES_DELWAQ_FILE", - "FICHIER DELWAQ DE LA VITESSE":"VELOCITY_DELWAQ_FILE", - "FICHIER DELWAQ DE LA DIFFUSION":"DIFFUSIVITY_DELWAQ_FILE", - "FICHIER DELWAQ DE LA TEMPERATURE":"TEMPERATURE_DELWAQ_FILE", - "FICHIER DELWAQ DE LA SALINITE":"SALINITY_DELWAQ_FILE", - "VITESSE POUR DELWAQ":"VELOCITY_FOR_DELWAQ", - "DIFFUSION POUR DELWAQ":"DIFFUSIVITY_FOR_DELWAQ", - "TEMPERATURE POUR DELWAQ":"TEMPERATURE_FOR_DELWAQ", - "SALINITE POUR DELWAQ":"SALINITY_FOR_DELWAQ", - "FICHIER DES PARAMETRES DE SISYPHE":"SISYPHE_STEERING_FILE", - "PERIODE DE COUPLAGE POUR SISYPHE":"COUPLING_PERIOD_FOR_SISYPHE", - "FICHIER DES PARAMETRES DE TOMAWAC":"TOMAWAC_STEERING_FILE", - "PERIODE DE COUPLAGE POUR TOMAWAC":"COUPLING_PERIOD_FOR_TOMAWAC", - "FICHIER DES PARAMETRES DE WAQTEL":"WAQTEL_STEERING_FILE", - "FICHIER DES PARAMETRES DE KHIONE":"KHIONE_STEERING_FILE", - "LANGUE":"LANGUAGE", - "FICHIER DES PARAMETRES":"STEERING_FILE", - "DICTIONNAIRE":"DICTIONARY", - "PARTITIONNEUR":"PARTITIONING_TOOL", - "NUMERO DE VERSION":"RELEASE", - "LISTE DES FICHIERS":"LIST_OF_FILES", - "DESCRIPTION DES LIBRAIRIES":"DESCRIPTION_OF_LIBRARIES", - "EXECUTABLE PAR DEFAUT":"DEFAULT_EXECUTABLE", - "EXECUTABLE PARALLELE PAR DEFAUT":"DEFAULT_PARALLEL_EXECUTABLE", - "NESTOR":"NESTOR", - "FICHIER DE NESTOR ACTION":"NESTOR_ACTION_FILE", - "FICHIER DE NESTOR POLYGON":"NESTOR_POLYGON_FILE", - "FICHIER DE NESTOR DE SURFACE REFERENCE":"NESTOR_SURFACE_REFERENCE_FILE", - "FICHIER DE NESTOR RESTART":"NESTOR_RESTART_FILE", -} - -DicoCasEnToCata = { - 'TITLE':'TITLE', - 'INITIAL CONDITIONS':'INITIAL_CONDITIONS', - 'INITIAL ELEVATION':'INITIAL_ELEVATION', - 'INITIAL DEPTH':'INITIAL_DEPTH', - 'BINARY DATA FILE 1 FORMAT':'BINARY_DATA_FILE_1_FORMAT', - 'BINARY DATA FILE 1':'BINARY_DATA_FILE_1', - 'BINARY DATA FILE 2 FORMAT':'BINARY_DATA_FILE_2_FORMAT', - 'BINARY DATA FILE 2':'BINARY_DATA_FILE_2', - 'FORMATTED DATA FILE 1':'FORMATTED_DATA_FILE_1', - 'FORMATTED DATA FILE 2':'FORMATTED_DATA_FILE_2', - 'GEOMETRY FILE FORMAT':'GEOMETRY_FILE_FORMAT', - 'GEOMETRY FILE':'GEOMETRY_FILE', - 'FORTRAN FILE':'FORTRAN_FILE', - 'BOTTOM TOPOGRAPHY FILE':'BOTTOM_TOPOGRAPHY_FILE', - 'BOTTOM SMOOTHINGS':'BOTTOM_SMOOTHINGS', - 'BOUNDARY CONDITIONS FILE':'BOUNDARY_CONDITIONS_FILE', - 'VALIDATION':'VALIDATION', - 'REFERENCE FILE FORMAT':'REFERENCE_FILE_FORMAT', - 'REFERENCE FILE':'REFERENCE_FILE', - 'PARALLEL PROCESSORS':'PARALLEL_PROCESSORS', - 'CHECKING THE MESH':'CHECKING_THE_MESH', - 'MAXIMUM NUMBER OF BOUNDARIES':'MAXIMUM_NUMBER_OF_BOUNDARIES', - 'MAXIMUM NUMBER OF SOURCES':'MAXIMUM_NUMBER_OF_SOURCES', - 'MAXIMUM NUMBER OF TRACERS':'MAXIMUM_NUMBER_OF_TRACERS', - 'VECTOR LENGTH':'VECTOR_LENGTH', - 'COMPUTATION CONTINUED':'COMPUTATION_CONTINUED', - 'PREVIOUS COMPUTATION FILE FORMAT':'PREVIOUS_COMPUTATION_FILE_FORMAT', - 'PREVIOUS COMPUTATION FILE':'PREVIOUS_COMPUTATION_FILE', - 'RECORD NUMBER FOR RESTART':'RECORD_NUMBER_FOR_RESTART', - 'INITIAL TIME SET TO ZERO':'INITIAL_TIME_SET_TO_ZERO', - 'NUMBER OF FIRST TIME STEP FOR GRAPHIC PRINTOUTS':'NUMBER_OF_FIRST_TIME_STEP_FOR_GRAPHIC_PRINTOUTS', - 'GRAPHIC PRINTOUT PERIOD':'GRAPHIC_PRINTOUT_PERIOD', - 'VARIABLES FOR GRAPHIC PRINTOUTS':'VARIABLES_FOR_GRAPHIC_PRINTOUTS', - 'NUMBER OF PRIVATE ARRAYS':'NUMBER_OF_PRIVATE_ARRAYS', - 'NAMES OF PRIVATE VARIABLES':'NAMES_OF_PRIVATE_VARIABLES', - 'RESULTS FILE FORMAT':'RESULTS_FILE_FORMAT', - 'RESULTS FILE':'RESULTS_FILE', - 'RESULT FILE IN LONGITUDE-LATITUDE':'RESULT_FILE_IN_LONGITUDE_LATITUDE', - 'BINARY RESULTS FILE FORMAT':'BINARY_RESULTS_FILE_FORMAT', - 'BINARY RESULTS FILE':'BINARY_RESULTS_FILE', - 'FORMATTED RESULTS FILE':'FORMATTED_RESULTS_FILE', - 'CONTROL SECTIONS':'CONTROL_SECTIONS', - 'PRINTING CUMULATED FLOWRATES':'PRINTING_CUMULATED_FLOWRATES', - 'COMPATIBLE COMPUTATION OF FLUXES':'COMPATIBLE_COMPUTATION_OF_FLUXES', - 'SECTIONS INPUT FILE':'SECTIONS_INPUT_FILE', - 'SECTIONS OUTPUT FILE':'SECTIONS_OUTPUT_FILE', - 'FLUXLINE':'FLUXLINE', - 'FLUXLINE INPUT FILE':'FLUXLINE_INPUT_FILE', - 'NUMBER OF FIRST TIME STEP FOR LISTING PRINTOUTS':'NUMBER_OF_FIRST_TIME_STEP_FOR_LISTING_PRINTOUTS', - 'LISTING PRINTOUT PERIOD':'LISTING_PRINTOUT_PERIOD', - 'LISTING FOR PRINTOUT PERIOD':'LISTING_FOR_PRINTOUT_PERIOD', - 'LISTING PRINTOUT':'LISTING_PRINTOUT', - 'VARIABLES TO BE PRINTED':'VARIABLES_TO_BE_PRINTED', - 'MASS-BALANCE':'MASS_BALANCE', - 'INFORMATION ABOUT SOLVER':'INFORMATION_ABOUT_SOLVER', - 'LIST OF POINTS':'LIST_OF_POINTS', - 'NAMES OF POINTS':'NAMES_OF_POINTS', - 'FOURIER ANALYSIS PERIODS':'FOURIER_ANALYSIS_PERIODS', - 'TIME RANGE FOR FOURIER ANALYSIS':'TIME_RANGE_FOR_FOURIER_ANALYSIS', - 'PRESCRIBED ELEVATIONS':'PRESCRIBED_ELEVATIONS', - 'PRESCRIBED FLOWRATES':'PRESCRIBED_FLOWRATES', - 'PRESCRIBED VELOCITIES':'PRESCRIBED_VELOCITIES', - 'STAGE-DISCHARGE CURVES':'STAGE_DISCHARGE_CURVES', - 'STAGE-DISCHARGE CURVES FILE':'STAGE_DISCHARGE_CURVES_FILE', - 'VELOCITY PROFILES':'VELOCITY_PROFILES', - 'OPTION FOR LIQUID BOUNDARIES':'OPTION_FOR_LIQUID_BOUNDARIES', - 'LIQUID BOUNDARIES FILE':'LIQUID_BOUNDARIES_FILE', - 'ELEMENTS MASKED BY USER':'ELEMENTS_MASKED_BY_USER', - 'MAXIMUM NUMBER OF FRICTION DOMAINS':'MAXIMUM_NUMBER_OF_FRICTION_DOMAINS', - 'FRICTION DATA':'FRICTION_DATA', - 'FRICTION DATA FILE':'FRICTION_DATA_FILE', - 'LAW OF BOTTOM FRICTION':'LAW_OF_BOTTOM_FRICTION', - 'FRICTION COEFFICIENT':'FRICTION_COEFFICIENT', - 'MANNING DEFAULT VALUE FOR COLEBROOK-WHITE LAW':'MANNING_DEFAULT_VALUE_FOR_COLEBROOK_WHITE_LAW', - 'DEPTH IN FRICTION TERMS':'DEPTH_IN_FRICTION_TERMS', - 'NON-SUBMERGED VEGETATION FRICTION':'NON_SUBMERGED_VEGETATION_FRICTION', - 'DIAMETER OF ROUGHNESS ELEMENTS':'DIAMETER_OF_ROUGHNESS_ELEMENTS', - 'SPACING OF ROUGHNESS ELEMENTS':'SPACING_OF_ROUGHNESS_ELEMENTS', - 'LAW OF FRICTION ON LATERAL BOUNDARIES':'LAW_OF_FRICTION_ON_LATERAL_BOUNDARIES', - 'ROUGHNESS COEFFICIENT OF BOUNDARIES':'ROUGHNESS_COEFFICIENT_OF_BOUNDARIES', - 'DEFINITION OF ZONES':'DEFINITION_OF_ZONES', - 'ZONES FILE':'ZONES_FILE', - 'ICE PROCESSES':'ICE_PROCESSES', - 'WIND':'WIND', - 'OPTION FOR WIND':'OPTION_FOR_WIND', - 'COEFFICIENT OF WIND INFLUENCE':'COEFFICIENT_OF_WIND_INFLUENCE', - 'WIND VELOCITY ALONG X':'WIND_VELOCITY_ALONG_X', - 'WIND VELOCITY ALONG Y':'WIND_VELOCITY_ALONG_Y', - 'SPEED AND DIRECTION OF WIND':'SPEED_AND_DIRECTION_OF_WIND', - 'THRESHOLD DEPTH FOR WIND':'THRESHOLD_DEPTH_FOR_WIND', - 'AIR PRESSURE':'AIR_PRESSURE', - 'VALUE OF ATMOSPHERIC PRESSURE':'VALUE_OF_ATMOSPHERIC_PRESSURE', - 'RAIN OR EVAPORATION':'RAIN_OR_EVAPORATION', - 'RAIN OR EVAPORATION IN MM PER DAY':'RAIN_OR_EVAPORATION_IN_MM_PER_DAY', - 'RAINFALL-RUNOFF MODEL':'RAINFALL_RUNOFF_MODEL', - 'ANTECEDENT MOISTURE CONDITIONS':'ANTECEDENT_MOISTURE_CONDITIONS', - 'DURATION OF RAIN OR EVAPORATION IN HOURS':'DURATION_OF_RAIN_OR_EVAPORATION_IN_HOURS', - 'ASCII ATMOSPHERIC DATA FILE':'ASCII_ATMOSPHERIC_DATA_FILE', - 'BINARY ATMOSPHERIC DATA FILE':'BINARY_ATMOSPHERIC_DATA_FILE', - 'BINARY ATMOSPHERIC DATA FILE FORMAT':'BINARY_ATMOSPHERIC_DATA_FILE_FORMAT', - 'OPTION FOR INITIAL ABSTRACTION RATIO':'OPTION_FOR_INITIAL_ABSTRACTION_RATIO', - 'WAVE DRIVEN CURRENTS':'WAVE_DRIVEN_CURRENTS', - 'RECORD NUMBER IN WAVE FILE':'RECORD_NUMBER_IN_WAVE_FILE', - 'WAVE ENHANCED FRICTION FACTOR':'WAVE_ENHANCED_FRICTION_FACTOR', - 'PARAMETER ESTIMATION':'PARAMETER_ESTIMATION', - 'COST FUNCTION':'COST_FUNCTION', - 'IDENTIFICATION METHOD':'IDENTIFICATION_METHOD', - 'TOLERANCES FOR IDENTIFICATION':'TOLERANCES_FOR_IDENTIFICATION', - 'MAXIMUM NUMBER OF ITERATIONS FOR IDENTIFICATION':'MAXIMUM_NUMBER_OF_ITERATIONS_FOR_IDENTIFICATION', - 'ABSCISSAE OF SOURCES':'ABSCISSAE_OF_SOURCES', - 'ORDINATES OF SOURCES':'ORDINATES_OF_SOURCES', - 'WATER DISCHARGE OF SOURCES':'WATER_DISCHARGE_OF_SOURCES', - 'VELOCITIES OF THE SOURCES ALONG X':'VELOCITIES_OF_THE_SOURCES_ALONG_X', - 'VELOCITIES OF THE SOURCES ALONG Y':'VELOCITIES_OF_THE_SOURCES_ALONG_Y', - 'TYPE OF SOURCES':'TYPE_OF_SOURCES', - 'SOURCES FILE':'SOURCES_FILE', - 'GLOBAL NUMBERS OF SOURCE NODES':'GLOBAL_NUMBERS_OF_SOURCE_NODES', - 'WATER QUALITY PROCESS':'WATER_QUALITY_PROCESS', - 'WATER DENSITY':'WATER_DENSITY', - 'GRAVITY ACCELERATION':'GRAVITY_ACCELERATION', - 'VERTICAL STRUCTURES':'VERTICAL_STRUCTURES', - 'EQUATIONS':'EQUATIONS', - 'TREATMENT OF THE LINEAR SYSTEM':'TREATMENT_OF_THE_LINEAR_SYSTEM', - 'FINITE VOLUME SCHEME':'FINITE_VOLUME_SCHEME', - 'CORIOLIS':'CORIOLIS', - 'CORIOLIS COEFFICIENT':'CORIOLIS_COEFFICIENT', - 'OPTION FOR TSUNAMI GENERATION':'OPTION_FOR_TSUNAMI_GENERATION', - 'PHYSICAL CHARACTERISTICS OF THE TSUNAMI':'PHYSICAL_CHARACTERISTICS_OF_THE_TSUNAMI', - 'SECONDARY CURRENTS':'SECONDARY_CURRENTS', - 'PRODUCTION COEFFICIENT FOR SECONDARY CURRENTS':'PRODUCTION_COEFFICIENT_FOR_SECONDARY_CURRENTS', - 'DISSIPATION COEFFICIENT FOR SECONDARY CURRENTS':'DISSIPATION_COEFFICIENT_FOR_SECONDARY_CURRENTS', - 'DEBUGGER':'DEBUGGER', - 'TIME STEP':'TIME_STEP', - 'NUMBER OF TIME STEPS':'NUMBER_OF_TIME_STEPS', - 'DURATION':'DURATION', - 'ORIGINAL DATE OF TIME':'ORIGINAL_DATE_OF_TIME', - 'ORIGINAL HOUR OF TIME':'ORIGINAL_HOUR_OF_TIME', - 'STOP IF A STEADY STATE IS REACHED':'STOP_IF_A_STEADY_STATE_IS_REACHED', - 'STOP CRITERIA':'STOP_CRITERIA', - 'CONTROL OF LIMITS':'CONTROL_OF_LIMITS', - 'LIMIT VALUES':'LIMIT_VALUES', - 'VARIABLE TIME-STEP':'VARIABLE_TIME_STEP', - 'DESIRED COURANT NUMBER':'DESIRED_COURANT_NUMBER', - 'ORIGIN COORDINATES':'ORIGIN_COORDINATES', - 'SPHERICAL COORDINATES':'SPHERICAL_COORDINATES', - 'LATITUDE OF ORIGIN POINT':'LATITUDE_OF_ORIGIN_POINT', - 'LONGITUDE OF ORIGIN POINT':'LONGITUDE_OF_ORIGIN_POINT', - 'NORTH':'NORTH', - 'SPATIAL PROJECTION TYPE':'SPATIAL_PROJECTION_TYPE', - 'SOLVER':'SOLVER', - 'SOLVER OPTION':'SOLVER_OPTION', - 'SOLVER ACCURACY':'SOLVER_ACCURACY', - 'MAXIMUM NUMBER OF ITERATIONS FOR SOLVER':'MAXIMUM_NUMBER_OF_ITERATIONS_FOR_SOLVER', - 'CONTINUITY CORRECTION':'CONTINUITY_CORRECTION', - 'PRECONDITIONING':'PRECONDITIONING', - 'C-U PRECONDITIONING':'C_U_PRECONDITIONING', - 'FINITE ELEMENT ASSEMBLY':'FINITE_ELEMENT_ASSEMBLY', - 'IMPLICITATION FOR DEPTH':'IMPLICITATION_FOR_DEPTH', - 'IMPLICITATION FOR VELOCITY':'IMPLICITATION_FOR_VELOCITY', - 'DISCRETIZATIONS IN SPACE':'DISCRETIZATIONS_IN_SPACE', - 'PROPAGATION':'PROPAGATION', - 'INITIAL GUESS FOR H':'INITIAL_GUESS_FOR_H', - 'LINEARIZED PROPAGATION':'LINEARIZED_PROPAGATION', - 'INITIAL GUESS FOR U':'INITIAL_GUESS_FOR_U', - 'MEAN DEPTH FOR LINEARIZATION':'MEAN_DEPTH_FOR_LINEARIZATION', - 'ADVECTION':'ADVECTION', - 'ADVECTION OF H':'ADVECTION_OF_H', - 'ADVECTION OF U AND V':'ADVECTION_OF_U_AND_V', - 'TYPE OF ADVECTION':'TYPE_OF_ADVECTION', - 'OPTION FOR CHARACTERISTICS':'OPTION_FOR_CHARACTERISTICS', - 'SUPG OPTION':'SUPG_OPTION', - 'NUMBER OF GAUSS POINTS FOR WEAK CHARACTERISTICS':'NUMBER_OF_GAUSS_POINTS_FOR_WEAK_CHARACTERISTICS', - 'MASS-LUMPING FOR WEAK CHARACTERISTICS':'MASS_LUMPING_FOR_WEAK_CHARACTERISTICS', - 'MAXIMUM NUMBER OF ITERATIONS FOR ADVECTION SCHEMES':'MAXIMUM_NUMBER_OF_ITERATIONS_FOR_ADVECTION_SCHEMES', - 'UPWIND COEFFICIENTS':'UPWIND_COEFFICIENTS', - 'MASS-LUMPING ON H':'MASS_LUMPING_ON_H', - 'MASS-LUMPING ON VELOCITY':'MASS_LUMPING_ON_VELOCITY', - 'SCHEME FOR ADVECTION OF VELOCITIES':'SCHEME_FOR_ADVECTION_OF_VELOCITIES', - 'SCHEME OPTION FOR ADVECTION OF VELOCITIES':'SCHEME_OPTION_FOR_ADVECTION_OF_VELOCITIES', - 'FREE SURFACE GRADIENT COMPATIBILITY':'FREE_SURFACE_GRADIENT_COMPATIBILITY', - 'NUMBER OF SUB-ITERATIONS FOR NON-LINEARITIES':'NUMBER_OF_SUB_ITERATIONS_FOR_NON_LINEARITIES', - 'TREATMENT OF FLUXES AT THE BOUNDARIES':'TREATMENT_OF_FLUXES_AT_THE_BOUNDARIES', - 'NUMBER OF CORRECTIONS OF DISTRIBUTIVE SCHEMES':'NUMBER_OF_CORRECTIONS_OF_DISTRIBUTIVE_SCHEMES', - 'NUMBER OF SUB-STEPS OF DISTRIBUTIVE SCHEMES':'NUMBER_OF_SUB_STEPS_OF_DISTRIBUTIVE_SCHEMES', - 'PSI SCHEME OPTION':'PSI_SCHEME_OPTION', - 'DIFFUSION OF VELOCITY':'DIFFUSION_OF_VELOCITY', - 'OPTION FOR THE DIFFUSION OF VELOCITIES':'OPTION_FOR_THE_DIFFUSION_OF_VELOCITIES', - 'IMPLICITATION FOR DIFFUSION OF VELOCITY':'IMPLICITATION_FOR_DIFFUSION_OF_VELOCITY', - 'AD NUMBER OF DERIVATIVES':'AD_NUMBER_OF_DERIVATIVES', - 'AD NAMES OF DERIVATIVES':'AD_NAMES_OF_DERIVATIVES', - 'AD SYMBOLIC LINEAR SOLVER':'AD_SYMBOLIC_LINEAR_SOLVER', - 'AD LINEAR SOLVER RESET DERIVATIVES':'AD_LINEAR_SOLVER_RESET_DERIVATIVES', - 'AD LINEAR SOLVER DERIVATIVE CONVERGENCE':'AD_LINEAR_SOLVER_DERIVATIVE_CONVERGENCE', - 'MATRIX STORAGE':'MATRIX_STORAGE', - 'MATRIX-VECTOR PRODUCT':'MATRIX_VECTOR_PRODUCT', - 'NEWMARK TIME INTEGRATION COEFFICIENT':'NEWMARK_TIME_INTEGRATION_COEFFICIENT', - 'ZERO':'ZERO', - 'PROPAGATION OPTION':'PROPAGATION_OPTION', - 'OPTION OF THE HYDROSTATIC RECONSTRUCTION':'OPTION_OF_THE_HYDROSTATIC_RECONSTRUCTION', - 'CONVERGENCE STUDY':'CONVERGENCE_STUDY', - 'REFINEMENT LEVELS':'REFINEMENT_LEVELS', - 'VELOCITY DIFFUSIVITY':'VELOCITY_DIFFUSIVITY', - 'TURBULENCE MODEL':'TURBULENCE_MODEL', - 'ACCURACY OF SPALART-ALLMARAS':'ACCURACY_OF_SPALART_ALLMARAS', - 'INFORMATION ABOUT SPALART-ALLMARAS MODEL':'INFORMATION_ABOUT_SPALART_ALLMARAS_MODEL', - 'SOLVER FOR K-EPSILON MODEL':'SOLVER_FOR_K_EPSILON_MODEL', - 'OPTION FOR THE SOLVER FOR K-EPSILON MODEL':'OPTION_FOR_THE_SOLVER_FOR_K_EPSILON_MODEL', - 'PRECONDITIONING FOR K-EPSILON MODEL':'PRECONDITIONING_FOR_K_EPSILON_MODEL', - 'NON-DIMENSIONAL DISPERSION COEFFICIENTS':'NON_DIMENSIONAL_DISPERSION_COEFFICIENTS', - 'TURBULENCE REGIME FOR SOLID BOUNDARIES':'TURBULENCE_REGIME_FOR_SOLID_BOUNDARIES', - 'INFORMATION ABOUT K-EPSILON MODEL':'INFORMATION_ABOUT_K_EPSILON_MODEL', - 'ADVECTION OF K AND EPSILON':'ADVECTION_OF_K_AND_EPSILON', - 'SCHEME FOR ADVECTION OF K-EPSILON':'SCHEME_FOR_ADVECTION_OF_K_EPSILON', - 'SCHEME OPTION FOR ADVECTION OF K-EPSILON':'SCHEME_OPTION_FOR_ADVECTION_OF_K_EPSILON', - 'TIME STEP REDUCTION FOR K-EPSILON MODEL':'TIME_STEP_REDUCTION_FOR_K_EPSILON_MODEL', - 'ACCURACY OF K':'ACCURACY_OF_K', - 'ACCURACY OF EPSILON':'ACCURACY_OF_EPSILON', - 'MAXIMUM NUMBER OF ITERATIONS FOR K AND EPSILON':'MAXIMUM_NUMBER_OF_ITERATIONS_FOR_K_AND_EPSILON', - 'TIDAL FLATS':'TIDAL_FLATS', - 'OPTION FOR THE TREATMENT OF TIDAL FLATS':'OPTION_FOR_THE_TREATMENT_OF_TIDAL_FLATS', - 'TREATMENT OF NEGATIVE DEPTHS':'TREATMENT_OF_NEGATIVE_DEPTHS', - 'THRESHOLD FOR NEGATIVE DEPTHS':'THRESHOLD_FOR_NEGATIVE_DEPTHS', - 'THRESHOLD DEPTH FOR RECEDING PROCEDURE':'THRESHOLD_DEPTH_FOR_RECEDING_PROCEDURE', - 'H CLIPPING':'H_CLIPPING', - 'MINIMUM VALUE OF DEPTH':'MINIMUM_VALUE_OF_DEPTH', - 'PRESCRIBED TRACERS VALUES':'PRESCRIBED_TRACERS_VALUES', - 'NUMBER OF TRACERS':'NUMBER_OF_TRACERS', - 'NAMES OF TRACERS':'NAMES_OF_TRACERS', - 'INITIAL VALUES OF TRACERS':'INITIAL_VALUES_OF_TRACERS', - 'DENSITY EFFECTS':'DENSITY_EFFECTS', - 'MEAN TEMPERATURE':'MEAN_TEMPERATURE', - 'SOLVER FOR DIFFUSION OF TRACERS':'SOLVER_FOR_DIFFUSION_OF_TRACERS', - 'SOLVER OPTION FOR TRACERS DIFFUSION':'SOLVER_OPTION_FOR_TRACERS_DIFFUSION', - 'PRECONDITIONING FOR DIFFUSION OF TRACERS':'PRECONDITIONING_FOR_DIFFUSION_OF_TRACERS', - 'ACCURACY FOR DIFFUSION OF TRACERS':'ACCURACY_FOR_DIFFUSION_OF_TRACERS', - 'MAXIMUM NUMBER OF ITERATIONS FOR DIFFUSION OF TRACERS':'MAXIMUM_NUMBER_OF_ITERATIONS_FOR_DIFFUSION_OF_TRACERS', - 'VALUES OF THE TRACERS AT THE SOURCES':'VALUES_OF_THE_TRACERS_AT_THE_SOURCES', - 'VALUES OF TRACERS IN THE RAIN':'VALUES_OF_TRACERS_IN_THE_RAIN', - 'ADVECTION OF TRACERS':'ADVECTION_OF_TRACERS', - 'IMPLICITATION COEFFICIENT OF TRACERS':'IMPLICITATION_COEFFICIENT_OF_TRACERS', - 'DIFFUSION OF TRACERS':'DIFFUSION_OF_TRACERS', - 'COEFFICIENT FOR DIFFUSION OF TRACERS':'COEFFICIENT_FOR_DIFFUSION_OF_TRACERS', - 'OPTION FOR THE DIFFUSION OF TRACERS':'OPTION_FOR_THE_DIFFUSION_OF_TRACERS', - 'SCHEME FOR ADVECTION OF TRACERS':'SCHEME_FOR_ADVECTION_OF_TRACERS', - 'SCHEME OPTION FOR ADVECTION OF TRACERS':'SCHEME_OPTION_FOR_ADVECTION_OF_TRACERS', - 'MASS-LUMPING ON TRACERS':'MASS_LUMPING_ON_TRACERS', - 'NUMBER OF DROGUES':'NUMBER_OF_DROGUES', - 'PRINTOUT PERIOD FOR DROGUES':'PRINTOUT_PERIOD_FOR_DROGUES', - 'DROGUES FILE':'DROGUES_FILE', - 'ALGAE TRANSPORT MODEL':'ALGAE_TRANSPORT_MODEL', - 'ALGAE TYPE':'ALGAE_TYPE', - 'DIAMETER OF ALGAE':'DIAMETER_OF_ALGAE', - 'DENSITY OF ALGAE':'DENSITY_OF_ALGAE', - 'THICKNESS OF ALGAE':'THICKNESS_OF_ALGAE', - 'OIL SPILL MODEL':'OIL_SPILL_MODEL', - 'OIL SPILL STEERING FILE':'OIL_SPILL_STEERING_FILE', - 'STOCHASTIC DIFFUSION MODEL':'STOCHASTIC_DIFFUSION_MODEL', - 'NUMBER OF LAGRANGIAN DRIFTS':'NUMBER_OF_LAGRANGIAN_DRIFTS', - 'NUMBER OF WEIRS':'NUMBER_OF_WEIRS', - 'WEIRS DATA FILE':'WEIRS_DATA_FILE', - 'TYPE OF WEIRS':'TYPE_OF_WEIRS', - 'NUMBER OF CULVERTS':'NUMBER_OF_CULVERTS', - 'CULVERTS DATA FILE':'CULVERTS_DATA_FILE', - 'OPTION FOR CULVERTS':'OPTION_FOR_CULVERTS', - 'BREACH':'BREACH', - 'BREACHES DATA FILE':'BREACHES_DATA_FILE', - 'BINARY DATABASE 1 FOR TIDE':'BINARY_DATABASE_1_FOR_TIDE', - 'BINARY DATABASE 2 FOR TIDE':'BINARY_DATABASE_2_FOR_TIDE', - 'GEOGRAPHIC SYSTEM':'GEOGRAPHIC_SYSTEM', - 'ZONE NUMBER IN GEOGRAPHIC SYSTEM':'ZONE_NUMBER_IN_GEOGRAPHIC_SYSTEM', - 'LAMBERT 93 CONVERSION FILE':'LAMBERT_93_CONVERSION_FILE', - 'COEFFICIENT TO CALIBRATE SEA LEVEL':'COEFFICIENT_TO_CALIBRATE_SEA_LEVEL', - 'GLOBAL NUMBER OF THE POINT TO CALIBRATE HIGH WATER':'GLOBAL_NUMBER_OF_THE_POINT_TO_CALIBRATE_HIGH_WATER', - 'MINOR CONSTITUENTS INFERENCE':'MINOR_CONSTITUENTS_INFERENCE', - 'OPTION FOR TIDAL BOUNDARY CONDITIONS':'OPTION_FOR_TIDAL_BOUNDARY_CONDITIONS', - 'TIDAL DATA BASE':'TIDAL_DATA_BASE', - 'HARMONIC CONSTANTS FILE':'HARMONIC_CONSTANTS_FILE', - 'TIDAL MODEL FILE':'TIDAL_MODEL_FILE', - 'TIDAL MODEL FILE FORMAT':'TIDAL_MODEL_FILE_FORMAT', - 'ASCII DATABASE FOR TIDE':'ASCII_DATABASE_FOR_TIDE', - 'COEFFICIENT TO CALIBRATE TIDAL RANGE':'COEFFICIENT_TO_CALIBRATE_TIDAL_RANGE', - 'COEFFICIENT TO CALIBRATE TIDAL VELOCITIES':'COEFFICIENT_TO_CALIBRATE_TIDAL_VELOCITIES', - 'LOCAL NUMBER OF THE POINT TO CALIBRATE HIGH WATER':'LOCAL_NUMBER_OF_THE_POINT_TO_CALIBRATE_HIGH_WATER', - 'TIDE GENERATING FORCE':'TIDE_GENERATING_FORCE', - 'COUPLING WITH':'COUPLING_WITH', - 'NAMES OF CLANDESTINE VARIABLES':'NAMES_OF_CLANDESTINE_VARIABLES', - 'COUPLING DIRECTORY':'COUPLING_DIRECTORY', - 'DELWAQ STEERING FILE':'DELWAQ_STEERING_FILE', - 'DELWAQ PRINTOUT PERIOD':'DELWAQ_PRINTOUT_PERIOD', - 'EXCHANGES BETWEEN NODES DELWAQ FILE':'EXCHANGES_BETWEEN_NODES_DELWAQ_FILE', - 'NODES DISTANCES DELWAQ FILE':'NODES_DISTANCES_DELWAQ_FILE', - 'BOTTOM SURFACES DELWAQ FILE':'BOTTOM_SURFACES_DELWAQ_FILE', - 'VOLUMES DELWAQ FILE':'VOLUMES_DELWAQ_FILE', - 'EXCHANGE AREAS DELWAQ FILE':'EXCHANGE_AREAS_DELWAQ_FILE', - 'VERTICAL FLUXES DELWAQ FILE':'VERTICAL_FLUXES_DELWAQ_FILE', - 'VELOCITY DELWAQ FILE':'VELOCITY_DELWAQ_FILE', - 'DIFFUSIVITY DELWAQ FILE':'DIFFUSIVITY_DELWAQ_FILE', - 'TEMPERATURE DELWAQ FILE':'TEMPERATURE_DELWAQ_FILE', - 'SALINITY DELWAQ FILE':'SALINITY_DELWAQ_FILE', - 'VELOCITY FOR DELWAQ':'VELOCITY_FOR_DELWAQ', - 'DIFFUSIVITY FOR DELWAQ':'DIFFUSIVITY_FOR_DELWAQ', - 'TEMPERATURE FOR DELWAQ':'TEMPERATURE_FOR_DELWAQ', - 'SALINITY FOR DELWAQ':'SALINITY_FOR_DELWAQ', - 'SISYPHE STEERING FILE':'SISYPHE_STEERING_FILE', - 'COUPLING PERIOD FOR SISYPHE':'COUPLING_PERIOD_FOR_SISYPHE', - 'TOMAWAC STEERING FILE':'TOMAWAC_STEERING_FILE', - 'COUPLING PERIOD FOR TOMAWAC':'COUPLING_PERIOD_FOR_TOMAWAC', - 'WAQTEL STEERING FILE':'WAQTEL_STEERING_FILE', - 'KHIONE STEERING FILE':'KHIONE_STEERING_FILE', - 'LANGUAGE':'LANGUAGE', - 'STEERING FILE':'STEERING_FILE', - 'DICTIONARY':'DICTIONARY', - 'PARTITIONING TOOL':'PARTITIONING_TOOL', - 'RELEASE':'RELEASE', - 'LIST OF FILES':'LIST_OF_FILES', - 'DESCRIPTION OF LIBRARIES':'DESCRIPTION_OF_LIBRARIES', - 'DEFAULT EXECUTABLE':'DEFAULT_EXECUTABLE', - 'DEFAULT PARALLEL EXECUTABLE':'DEFAULT_PARALLEL_EXECUTABLE', - 'NESTOR':'NESTOR', - 'NESTOR ACTION FILE':'NESTOR_ACTION_FILE', - 'NESTOR POLYGON FILE':'NESTOR_POLYGON_FILE', - 'NESTOR SURFACE REFERENCE FILE':'NESTOR_SURFACE_REFERENCE_FILE', - 'NESTOR RESTART FILE':'NESTOR_RESTART_FILE', -} -DicoEnumCasFrToEnumCasEn = { -'INITIAL_CONDITIONS':{ - "COTE NULLE":"ZERO ELEVATION", - "COTE CONSTANTE":"CONSTANT ELEVATION", - "HAUTEUR NULLE":"ZERO DEPTH", - "HAUTEUR CONSTANTE":"CONSTANT DEPTH", - "SPECIAL":"SPECIAL", - "PARTICULIERES":"PARTICULIERES", - "PARTICULAR":"PARTICULAR", - "ALTIMETRIE SATELLITE TPXO":"TPXO SATELLITE ALTIMETRY", -}, - -'BINARY_DATA_FILE_1_FORMAT':{ - "BIN":"BIN", - "SERAFIN":"SERAFIN", - "SERAFIND":"SERAFIND", - "MED":"MED", -}, - -'BINARY_DATA_FILE_2_FORMAT':{ - "BIN":"BIN", - "SERAFIN":"SERAFIN", - "SERAFIND":"SERAFIND", - "MED":"MED", -}, - -'GEOMETRY_FILE_FORMAT':{ - "SERAFIN?":"SERAFIN?", - "SERAFIND":"SERAFIND", - "MED":"MED", -}, - -'REFERENCE_FILE_FORMAT':{ - "SERAFIN?":"SERAFIN?", - "SERAFIND":"SERAFIND", - "MED":"MED", -}, - -'PREVIOUS_COMPUTATION_FILE_FORMAT':{ - "SERAFIN?":"SERAFIN?", - "SERAFIND":"SERAFIND", - "MED":"MED", -}, - -'RESULTS_FILE_FORMAT':{ - "SERAFIN?":"SERAFIN?", - "SERAFIND":"SERAFIND", - "MED":"MED", -}, - -'BINARY_RESULTS_FILE_FORMAT':{ - "BIN":"BIN", - "SERAFIN":"SERAFIN", - "SERAFIND":"SERAFIND", - "MED":"MED", -}, - -'BINARY_ATMOSPHERIC_DATA_FILE_FORMAT':{ - "SERAFIN?":"SERAFIN?", - "SERAFIND":"SERAFIND", - "MED":"MED", -}, - -'PARAMETER_ESTIMATION':{ - "":"", - "FROTTEMENT":"FRICTION", - "FROTTEMENT, PERMANENT":"FRICTION, STEADY", -}, - -'EQUATIONS':{ - "SAINT-VENANT EF":"SAINT-VENANT FE", - "SAINT-VENANT VF":"SAINT-VENANT FV", - "BOUSSINESQ":"BOUSSINESQ", -}, - -'TIDAL_MODEL_FILE_FORMAT':{ - "SERAFIN?":"SERAFIN?", - "SERAFIND":"SERAFIND", - "MED":"MED", -}, - -'COUPLING_WITH':{ - "SISYPHE":"SISYPHE", - "TOMAWAC":"TOMAWAC", - "DELWAQ":"DELWAQ", -}, - -'PARTITIONING_TOOL':{ - "METIS":"METIS", - "SCOTCH":"SCOTCH", - "PARMETIS":"PARMETIS", - "PTSCOTCH":"PTSCOTCH", -}, - -} diff --git a/Telemac/telemac2d_labelCataToIhm_en.qm b/Telemac/telemac2d_labelCataToIhm_en.qm deleted file mode 100644 index c2ccbf0c..00000000 Binary files a/Telemac/telemac2d_labelCataToIhm_en.qm and /dev/null differ diff --git a/Telemac/telemac2d_labelCataToIhm_fr.qm b/Telemac/telemac2d_labelCataToIhm_fr.qm deleted file mode 100644 index 290ecbf7..00000000 Binary files a/Telemac/telemac2d_labelCataToIhm_fr.qm and /dev/null differ diff --git a/Telemac/telemac3d_cata_auto.py b/Telemac/telemac3d_cata_auto.py deleted file mode 100644 index ff103fa3..00000000 --- a/Telemac/telemac3d_cata_auto.py +++ /dev/null @@ -1,5630 +0,0 @@ - -# -*- coding: latin-1 -*- - -from Accas import * -class DateJJMMAAAA: - def __init__(self): - self.ntuple=3 - - def __convert__(self,valeur): - if type(valeur) == types.StringType: return None - if len(valeur) != self.ntuple: return None - return valeur - - def info(self): - return "Date : jj/mm/aaaa " - - __repr__=info - __str__=info - -class grma(GEOM): - pass - -import types -class Tuple: - def __init__(self,ntuple): - self.ntuple=ntuple - - def __convert__(self,valeur): - if type(valeur) == types.StringType: - return None - if len(valeur) != self.ntuple: - return None - return valeur - - def info(self): - return "Tuple de %s elements" % self.ntuple - - - -JdC = JDC_CATA (code = 'TELEMAC3D', - execmodul = None, - ) -# ======================================================================= -# Catalog entry for the MAP function : c_pre_interfaceBody_mesh -# ======================================================================= - -VERSION_CATALOGUE="TRUNK_20180306" -# ----------------------------------------------------------------------- -COMPUTATION_ENVIRONMENT = PROC(nom= "COMPUTATION_ENVIRONMENT",op = None, -# ----------------------------------------------------------------------- - UIinfo = {"groupes": ("CACHE")}, -# ----------------------------------- - GLOBAL = FACT(statut='o', -# ----------------------------------- -# ----------------------------------- - TITLE = SIMP(statut ='o', -# ----------------------------------- - typ = 'TXM', - defaut = '', - fr = """Titre du cas etudie.""", - ang = """Title of the case being considered.""", - ), -# ----------------------------------- - PARALLEL_PROCESSORS = SIMP(statut ='f', -# ----------------------------------- - typ = 'I', - defaut = 0, - fr = """Nombre de processeurs pour la decomposition en parallele. -La valeur 0 correspond a un calcul scalaire.""", - ang = """Number of processors for domain partition. -Value 0 corresponds to a scalar computation.""", - ), -# ----------------------------------- - CHECKING_THE_MESH = SIMP(statut ='o', -# ----------------------------------- - typ = bool, - defaut = False, - fr = """Si OUI on appelle le sous-programme \telfile{CHECKMESH} -qui verifie la coherence du maillage, points superposes, etc.""", - ang = """If this key word is equal to YES, a call to subroutine -\telfile{CHECKMESH} will look for errors in the mesh, -superimposed points, etc.""", - ), -# ----------------------------------- - MAXIMUM_NUMBER_OF_BOUNDARIES = SIMP(statut ='f', -# ----------------------------------- - typ = 'I', - defaut = 30, - fr = """Nombre maximal de frontieres differentes dans le maillage. -Sert au dimensionnement de la memoire, a augmenter si necessaire.""", - ang = """Maximal number of boundaries in the mesh. -Used for dimensioning arrays. Can be increased if needed.""", - ), -# ----------------------------------- - MAXIMUM_NUMBER_OF_TRACERS = SIMP(statut ='f', -# ----------------------------------- - typ = 'I', - defaut = 20, - fr = """Nombre maximal de traceurs. -Sert au dimensionnement de la memoire, a augmenter si necessaire.""", - ang = """Maximal number of tracers. -Used for dimensioning arrays. Can be increased if needed.""", - ), -# ----------------------------------- - MAXIMUM_NUMBER_OF_SOURCES = SIMP(statut ='f', -# ----------------------------------- - typ = 'I', - defaut = 20, - fr = """Nombre maximal de points sources dans le maillage, -incluant les sources ponctuelles et 2 fois le nombre de buses. -Sert au dimensionnement de la memoire, a augmenter si necessaire.""", - ang = """Maximal number of source points in the mesh, including -punctual sources and twice the number of culverts. -Used for dimensioning arrays. Can be increased if needed.""", - ), -# ----------------------------------- - MAXIMUM_NUMBER_OF_BOUNDARIES_ON_THE_BED = SIMP(statut ='f', -# ----------------------------------- - typ = 'I', - defaut = 30, - fr = """Nombre maximal de frontieres liquides sur le fond. -Sert au dimensionnement de la memoire, a augmenter si necessaire.""", - ang = """Maximal number of liquid boundaries on the bed. -Used for dimensioning arrays. Can be increased if needed.""", - ), -# ----------------------------------- - VECTOR_LENGTH = SIMP(statut ='f', -# ----------------------------------- - typ = 'I', - defaut = 1, - fr = """Longueur du vecteur pour les machines vectorielles.""", - ang = """Vector length on vector machines.""", - ), - ), -# ----------------------------------- - INPUT = FACT(statut='o', -# ----------------------------------- -# ----------------------------------- - DATA = FACT(statut='o', -# ----------------------------------- -# ----------------------------------- - GEOMETRY_FILE = SIMP(statut ='o', -# ----------------------------------- - typ = ('Fichier','All Files (*)'), - fr = """Nom du fichier contenant le maillage du calcul a realiser.""", - ang = """Name of the file containing the mesh. This file may also -contain the topography and the friction coefficients.""", - ), -# ----------------------------------- - GEOMETRY_FILE_FORMAT = SIMP(statut ='o', -# ----------------------------------- - typ = 'TXM', - into = ['SERAFIN?','SERAFIND','MED'], - defaut = 'SERAFIN?', - fr = """Format du \telkey{FICHIER DE GEOMETRIE}. -Les valeurs possibles sont : -\begin{itemize} -\item SERAFIN : format standard simple precision pour \tel ; -\item SERAFIND: format standard double precision pour \tel ; -\item MED : format MED double precision base sur HDF5. -\end{itemize}""", - ang = """Format of the \telkey{GEOMETRY FILE}. -Possible choices are: -\begin{itemize} -\item SERAFIN : classical single precision format in \tel, -\item SERAFIND: classical double precision format in \tel, -\item MED : MED double precision format based on HDF5. -\end{itemize}""", - ), -# ----------------------------------- - BOUNDARY_CONDITIONS_FILE = SIMP(statut ='o', -# ----------------------------------- - typ = ('Fichier','All Files (*)'), - fr = """Nom du fichier contenant les types de conditions aux limites. -Ce fichier est rempli de facon automatique par le mailleur au moyen de -couleurs affectees aux noeuds des frontieres du domaine de calcul.""", - ang = """Name of the file containing the types of boundary conditions. -This file is filled automatically by the mesh generator through -colours that are assigned to the boundary nodes.""", - ), -# ----------------------------------- - BINARY_BOUNDARY_DATA_FILE = SIMP(statut ='f', -# ----------------------------------- - typ = ('Fichier','All Files (*)'), - defaut = '', - fr = """Fichier de donnees code en binaire contenant les informations -de conditions aux limites variables en temps et en espace -provenant de jeux de donnees externes par exemple.""", - ang = """Binary-coded data file containing the boundary conditions data -varying in time and space.""", - ), -# ----------------------------------- - BINARY_BOUNDARY_DATA_FILE_FORMAT = SIMP(statut ='f', -# ----------------------------------- - typ = 'TXM', - into = ['SERAFIN?','SERAFIND','MED'], - defaut = 'SERAFIN?', - fr = """Format du \telkey{FICHIER BINAIRE DE DONNEES DE FRONTIERE}. -Les valeurs possibles sont : -\begin{itemize} -\item SERAFIN : format standard simple precision pour Telemac; -\item SERAFIND: format standard double precision pour Telemac; -\item MED : format MED base sur HDF5. -\end{itemize}""", - ang = """Format of the \telkey{BINARY BOUNDARY DATA FILE}. -Possible values are: -\begin{itemize} -\item SERAFIN : classical single precision format in Telemac; -\item SERAFIND: classical double precision format in Telemac; -\item MED : MED format based on HDF5. -\end{itemize}""", - ), -# ----------------------------------- - FORTRAN_FILE = SIMP(statut ='f', -# ----------------------------------- - typ = ('Fichier','All Files (*)'), - defaut = 'DEFAUT', - fr = """Nom du fichier FORTRAN a soumettre, contenant les -sous-programmes specifiques au modele.""", - ang = """Name of the FORTRAN file to be submitted, including specific -subroutines of the model.""", - ), -# ----------------------------------- - BOTTOM_TOPOGRAPHY_FILE = SIMP(statut ='f', -# ----------------------------------- - typ = ('Fichier','All Files (*)'), - defaut = '', - fr = """Nom du fichier eventuel contenant la bathymetrie associee au -maillage. -Si ce mot-cle est utilise, c''est cette bathymetrie qui sera utilisee -pour le calcul.""", - ang = """Name of the possible file containing the bathymetric data. -Where this keyword is used, these bathymetric data shall be used in -the computation.""", - ), -# ----------------------------------- - NUMBER_OF_BOTTOM_SMOOTHINGS = SIMP(statut ='o', -# ----------------------------------- - typ = 'I', - defaut = 0, - fr = """Nombre de lissages effectues sur la topographie. -Chaque lissage, effectue a l''aide d''une matrice de masse, -est conservatif. -Utilise lorsque les donnees de bathymetrie donnent des resultats -trop irreguliers apres interpolation.""", - ang = """Number of smoothings on bottom topography. -Each smoothing is mass conservative. -To be used when interpolation of bathymetry on the mesh gives -very rough results.""", - ), -# ----------------------------------- - FORMATTED_DATA_FILE_1 = SIMP(statut ='f', -# ----------------------------------- - typ = ('Fichier','All Files (*)'), - defaut = '', - fr = """Fichier de donnees formate mis a la disposition de -l''utilisateur.""", - ang = """Formatted data file available to the user.""", - ), -# ----------------------------------- - FORMATTED_DATA_FILE_2 = SIMP(statut ='f', -# ----------------------------------- - typ = ('Fichier','All Files (*)'), - defaut = '', - fr = """Fichier de donnees formate mis a la disposition de -l''utilisateur.""", - ang = """Formatted data file available to the user.""", - ), -# ----------------------------------- - BINARY_DATA_FILE_1 = SIMP(statut ='f', -# ----------------------------------- - typ = ('Fichier','All Files (*)'), - defaut = '', - fr = """Fichier de donnees code en binaire mis a la disposition -de l''utilisateur.""", - ang = """Data file in binary mode available to the user.""", - ), -# ----------------------------------- - BINARY_DATA_FILE_1_FORMAT = SIMP(statut ='f', -# ----------------------------------- - typ = 'TXM', - into = ['SERAFIN?','SERAFIND','MED'], - defaut = 'SERAFIN?', - fr = """Format du \telkey{FICHIER DE DONNEES BINAIRE 1}. -Les valeurs possibles sont : -\begin{itemize} -\item SERAFIN : format standard simple precision pour \tel ; -\item SERAFIND: format standard double precision pour \tel ; -\item MED : format MED double precision base sur HDF5. -\end{itemize}""", - ang = """Format of the \telkey{BINARY DATA FILE 1}. -Possible choices are: -\begin{itemize} -\item SERAFIN : classical single precision format in \tel, -\item SERAFIND: classical double precision format in \tel, -\item MED : MED double precision format based on HDF5. -\end{itemize}""", - ), -# ----------------------------------- - BINARY_DATA_FILE_2 = SIMP(statut ='f', -# ----------------------------------- - typ = ('Fichier','All Files (*)'), - defaut = '', - fr = """Fichier de donnees code en binaire mis a la disposition -de l''utilisateur.""", - ang = """Data file in binary mode available to the user.""", - ), -# ----------------------------------- - VALIDATION = SIMP(statut ='f', -# ----------------------------------- - typ = bool, - defaut = False, - fr = """Option utilisee principalement pour le dossier de validation. Le -\telkey{FICHIER DE REFERENCE} est alors considere comme une -reference a laquelle on va comparer le calcul. La comparaison -est effectuee par le sous-programme VALIDA qui peut etre une comparaison -avec une solution exacte par exemple.""", - ang = """This option is primarily used for the validation documents. -The \telkey{REFERENCE FILE} is then considered as a -reference which the computation is going to be compared with. -The comparison is done by the subroutine VALIDA, which can be -modified so as to include, for example, a comparison with an exact -solution.""", - ), -# ----------------------------------- - b_VALIDATIONG = BLOC(condition="VALIDATION == True", -# ----------------------------------- -# ----------------------------------- - REFERENCE_FILE = SIMP(statut ='f', -# ----------------------------------- - typ = ('Fichier','All Files (*)'), max='**', - defaut = '', - fr = """Fichier de resultats de reference pour la validation.""", - ang = """Binary-coded result file for validation.""", - ), -# ----------------------------------- - REFERENCE_FILE_FORMAT = SIMP(statut ='o', -# ----------------------------------- - typ = 'TXM', - into = ['SERAFIN?','SERAFIND','MED'], - defaut = 'SERAFIN?', - fr = """Format du \telkey{FICHIER DE REFERENCE}. -Les valeurs possibles sont : -\begin{itemize} -\item SERAFIN : format standard simple precision pour \tel ; -\item SERAFIND: format standard double precision pour \tel ; -\item MED : format MED double precision base sur HDF5. -\end{itemize}""", - ang = """Format of the \telkey{REFERENCE FILE}. -Possible choices are: -\begin{itemize} -\item SERAFIN : classical single precision format in \tel, -\item SERAFIND: classical double precision format in \tel, -\item MED : MED double precision format based on HDF5. -\end{itemize}""", - ), - ), - ), - ), -# ----------------------------------- - OUTPUT = FACT(statut='o', -# ----------------------------------- -# ----------------------------------- - RESULTS = FACT(statut='o', -# ----------------------------------- -# ----------------------------------- - RD_RESULT_FILE = SIMP(statut ='o', -# ----------------------------------- - typ = ('Fichier','All Files (*)','Sauvegarde'), - defaut = '', - fr = """Nom du fichier dans lequel seront ecrits les resultats 3D du -calcul avec la periodicite donnee par le mot cle \telkey{PERIODE POUR -LES SORTIES GRAPHIQUES}.""", - ang = """Name of the file into which the 3D results of the computation -are written, the periodicity being given by the keyword: -\telkey{GRAPHIC PRINTOUT PERIOD}.""", - ), -# ----------------------------------- - RD_RESULT_FILE_FORMAT = SIMP(statut ='o', -# ----------------------------------- - typ = 'TXM', - into = ['SERAFIN?','SERAFIND','MED'], - defaut = 'SERAFIN?', - fr = """Format du \telkey{FICHIER DES RESULTATS 3D}. -Les valeurs possibles sont : -\begin{itemize} -\item SERAFIN : format standard simple precision pour \tel ; -\item SERAFIND: format standard double precision pour \tel ; -\item MED : format MED double precision base sur HDF5. -\end{itemize}""", - ang = """Format of the \telkey{3D RESULT FILE}. Possible choices are: -\begin{itemize} -\item SERAFIN : classical single precision format in \tel, -\item SERAFIND: classical double precision format in \tel, -\item MED : MED double precision format based on HDF5. -\end{itemize}""", - ), -# ----------------------------------- - ED_RESULT_FILE = SIMP(statut ='o', -# ----------------------------------- - typ = ('Fichier','All Files (*)','Sauvegarde'), - defaut = '', - fr = """Nom du fichier dans lequel seront ecrits les resultats 2D du -calcul avec la periodicite donnee par le mot cle \telkey{PERIODE POUR -LES SORTIES GRAPHIQUES}.""", - ang = """Name of the file into which the 2D results of the computation -are written with a period given by the keyword -\telkey{GRAPHIC PRINTOUT PERIOD}.""", - ), -# ----------------------------------- - ED_RESULT_FILE_FORMAT = SIMP(statut ='o', -# ----------------------------------- - typ = 'TXM', - into = ['SERAFIN?','SERAFIND','MED'], - defaut = 'SERAFIN?', - fr = """Format du \telkey{FICHIER DES RESULTATS 2D}. -Les valeurs possibles sont : -\begin{itemize} -\item SERAFIN : format standard simple precision pour \tel ; -\item SERAFIND: format standard double precision pour \tel ; -\item MED : format MED double precision base sur HDF5. -\end{itemize}""", - ang = """Format of the \telkey{2D RESULT FILE}. Possible choices are: -\begin{itemize} -\item SERAFIN : classical single precision format in \tel, -\item SERAFIND: classical double precision format in \tel, -\item MED : MED double precision format based on HDF5. -\end{itemize}""", - ), -# ----------------------------------- - RESULT_FILE_IN_LONGITUDE_LATITUDE = SIMP(statut ='f', -# ----------------------------------- - typ = bool, - defaut = True, - fr = """Donne les coordonnees dans le fichier resultats en longitude-latitude -si le fichier de geometrie est aussi donne en longitude-latitude.""", - ang = """Gives the coordinates of the result file in longitude-latitude -if the geometry file is also given in longitude-latitude.""", - ), -# ----------------------------------- - VARIABLES_FOR_3D_GRAPHIC_PRINTOUTS = SIMP(statut ='o', -# ----------------------------------- - typ = 'TXM', min=0, max='**', - into = ["velocity along x axis (m/s)","velocity along y axis (m/s)","velocity along z axis (m/s)","elevation z (m)","concentration for tracer 1","concentration for tracer 2","concentration for tracer 3","concentration for tracer 4","concentration for tracer 5","concentration for tracer 6","concentration for tracer 7","concentration for tracer 8","concentration for tracer 9","concentrations for tracers from 1 to 9","concentrations for tracers from 10 to 99","viscosity for U and V along x axis (m2/s)","viscosity for U and V along y axis (m2/s)","viscosity for U and V along z axis (m2/s)","viscosity for tracers along x axis (m2/s)","viscosity for tracers along y axis (m2/s)","viscosity for tracers along z axis (m2/s)","Richardson number in case of mixing length model","turbulent energie for k-epsilon model (J/kg)","dissipation of turbulent energie (W/kg)","dynamic pressure (multiplied by DT/RHO)","hydrostatic pressure (in Pascals)","relative density","private variable 1","private variable 2","private variable 3","private variable 4"], - defaut = ["elevation z (m)","velocity along x axis (m/s)","velocity along y axis (m/s)","velocity along z axis (m/s)"], - fr = """Noms des variables que l''utilisateur veut ecrire dans -le \telkey{FICHIER DES RESULTATS 3D}. -Le choix des separateurs est libre. -Les possibilites offertes sont les suivantes : -\begin{itemize} -\item U : vitesse suivant l''axe des $x$ (m/s) ; -\item V : vitesse suivant l''axe des $y$ (m/s) ; -\item W : vitesse suivant l''axe des $z$ (m/s) ; -\item Z : cote $z$ (m) ; -\item TAx : concentrations des traceurs ; -\item NUX : viscosite pour $U$ et $V$ suivant l''axe des $x$ (m$^2$/s) ; -\item NUY : viscosite pour $U$ et $V$ suivant l''axe des $y$ (m$^2$/s) ; -\item NUZ : viscosite pour $U$ et $V$ suivant l''axe des $z$ (m$^2$/s) ; -\item NAX : viscosites pour les traceurs suivant l''axe des $x$ -(m$^2$/s) ; -\item NAY : viscosites pour les traceurs suivant l''axe des $y$ -(m$^2$/s) ; -\item NAZ : viscosites pour les traceurs suivant l''axe des $z$ -(m$^2$/s) ; -\item RI : nombre de Richardson en cas de modele de longueur de -melange ; -\item K : energie turbulente du modele k-epsilon (J/kg) ; -\item EPS : dissipation de l''energie turbulente (W/kg) ; -\item DP : pression dynamique (multipliee par DT/RHO) ; -\item PH : pression hydrostatique (en Pascals) ; -\item RHO : densite relative ; -\item P1 : variable privee 1 ; -\item P2 : variable privee 2 ; -\item P3 : variable privee 3 ; -\item P4 : variable privee 4. -\end{itemize}""", - ang = """Names of variables to be written in the -\telkey{3D RESULT FILE}. Free choice of separator. You can ask for: -\begin{itemize} -\item U : velocity along $x$ (m/s), -\item V : velocity along $y$ (m/s), -\item W : velocity along $z$ (m/s), -\item Z : elevation $z$ (m), -\item TAx: concentration of tracers, -\item NUX: viscosity for $U$ and $V$ along $x$ (m$^2$/s), -\item NUY: viscosity for $U$ and $V$ along $y$ (m$^2$/s), -\item NUZ: viscosity for $U$ and $V$ along $z$ (m$^2$/s), -\item NAX: viscosity for tracers along $x$ (m$^2$/s), -\item NAY: viscosity for tracers along $y$ (m$^2$/s), -\item NAZ: viscosity for tracers along $z$ (m$^2$/s), -\item RI : Richardson number for mixing length model, -\item K : turbulent kinetic energy for $k$-$\epsilon$ model (J/kg), -\item EPS: dissipation of turbulent kinetic energy (W/kg), -\item DP : dynamic pressure (multiplied by DT/RHO), -\item PH : hydrostatic pressure (Pa), -\item RHO: relative density, -\item P1 : private variable 1, -\item P2 : private variable 2, -\item P3 : private variable 3, -\item P4 : private variable 4. -\end{itemize}""", - ), -# ----------------------------------- - VARIABLES_FOR_2D_GRAPHIC_PRINTOUTS = SIMP(statut ='o', -# ----------------------------------- - typ = 'TXM', min=0, max='**', - into = ["depth averaged velocity along x axis (m/s)","depth averaged velocity along y axis (m/s)","celerity (m/s)","water depth (m)","free surface elevation (m)","bottom elevation (m)","TAx concentrations for tracers, x is the tracer number","Froude number","scalar discharge (m2/s)","discharge along x (m2/s)","discharge along y (m2/s)","norm of velocity (m/s)","wind along x axis (m/s)","wind along y axis (m/s)","atmospheric pressure (Pa)","friction coefficient","non erodible bottom elevation (m)","thickness of the sediment bed layer (m)","erosion rate (kg/m2/s)","deposition flux (kg/m2/s)","bed evolution","work array PRIVE 1","work array PRIVE 2","work array PRIVE 3","work array PRIVE 4","solid discharge (m2/s)","solid discharge along x (m2/s)","solid discharge along y (m2/s)","friction velocity (m/s)","maximum value of the free surface elevation (m)","time corresponding to this maximum elevation (s)"], - defaut = ["depth averaged velocity along x axis (m/s)","depth averaged velocity along y axis (m/s)","water depth (m)","bottom elevation (m)"], - fr = """Noms des variables que l''utilisateur veut ecrire dans -le \telkey{FICHIER DES RESULTATS 2D}. -Chaque variable est representee par une lettre. -Le choix des separateurs est libre. -Les possibilites offertes sont les suivantes : -\begin{itemize} -\item U : vitesse moyenne suivant l''axe des x (m/s) ; -\item V : vitesse moyenne suivant l''axe des y (m/s) ; -\item C : celerite (m/s) ; -\item H : hauteur d''eau (m) ; -\item S : cote de surface libre (m) ; -\item B : cote du fond (m) ; -\item F : nombre de Froude ; -\item Q : debit scalaire (m$^2$/s) ; -\item I : debit suivant x (m$^2$/s) ; -\item J : debit suivant y (m$^2$/s) ; -\item M : norme de la vitesse (m/s) ; -\item X : vent suivant l''axe des x (m/s) ; -\item Y : vent suivant l''axe des y (m/s) ; -\item P : pression atmospherique (Pa) ; -\item W : coefficient de frottement ; -\item RB : cote des fonds non erodables (m) ; -\item FD : epaisseur des depots frais (m) ; -\item EF : flux d''erosion (kg/m$2^$/s) ; -\item DP : probabilite de depot (kg/m$2^$/s) ; -\item PRIVE1 : tableau de travail PRIVE 1 ; -\item PRIVE2 : tableau de travail PRIVE 2 ; -\item PRIVE3 : tableau de travail PRIVE 3 ; -\item PRIVE4 : tableau de travail PRIVE 4 ; -\item US : vitesse de frottement (m/s) ; -\item MAXZ : valeur maximum de la cote de l eau au cours du calcul (m) ; -\item TMXZ : temps correspondant a ce niveau maximum (s). -\end{itemize}""", - ang = """Names of variables that may be written in the -\telkey{2D RESULT FILE}. -Every variable is represented by a group of letters with -any separator between them , ; or blank -possibilities are the following: -\begin{itemize} -\item U: depth averaged velocity along x axis (m/s), -\item V: depth averaged velocity along y axis (m/s), -\item C: celerity (m/s), -\item H: water depth (m), -\item S: free surface elevation (m), -\item B: bottom elevation (m), -\item F: Froude number, -\item Q: scalar discharge (m$^2$/s), -\item I: discharge along x (m$^2$/s), -\item J: discharge along y (m$^2$/s), -\item M: norm of velocity (m/s), -\item X: wind along x axis (m/s), -\item Y: wind along y axis (m/s), -\item P: atmospheric pressure (Pa), -\item W: friction coefficient, -\item RB: non erodible bottom elevation (m), -\item FD: thickness of the fresh deposits (m), -\item EF: erosion rate (kg/m$^2$/s), -\item DP: probability of deposition (kg/m$^2$/s), -\item PRIVE1: work array PRIVE 1, -\item PRIVE2: work array PRIVE 2, -\item PRIVE3: work array PRIVE 3, -\item PRIVE4: work array PRIVE 4, -\item US: friction velocity (m/s), -\item MAXZ: maximum value of the free surface -elevation during the computation (m), -\item TMXZ: time corresponding to this maximum elevation (s). -\end{itemize}""", - ), -# ----------------------------------- - GRAPHIC_PRINTOUT_PERIOD = SIMP(statut ='o', -# ----------------------------------- - typ = 'I', - defaut = 1, - fr = """Determine la periode en nombre de pas de temps d''impression des -\telkey{VARIABLES POUR LES SORTIES GRAPHIQUES 2D ou 3D} -(voir ces mot-cles) dans le \telkey{FICHIER DES RESULTATS 2D ou 3D}.""", - ang = """Determines, in number of time steps, the printout period for -the \telkey{VARIABLES FOR 2D (or 3D) GRAPHIC PRINTOUTS} -in the \telkey{2D or 3D RESULT FILE}.""", - ), -# ----------------------------------- - NUMBER_OF_FIRST_TIME_STEP_FOR_GRAPHIC_PRINTOUTS = SIMP(statut ='o', -# ----------------------------------- - typ = 'I', - defaut = 0, - fr = """Determine le numero de pas de temps a partir duquel debute -l''ecriture des resultats dans le \telkey{FICHIER DES RESULTATS 2D} -ou \telkey{3D}''.""", - ang = """Determines the number of time steps after which the results -are first written into the \telkey{2D} or \telkey{3D RESULT FILE}.""", - ), -# ----------------------------------- - RD_RESULT_FILE_BINARY = SIMP(statut ='f', -# ----------------------------------- - typ = 'TXM', - into = ['STD','IBM','I3E'], - defaut = 'STD', - fr = """Type du binaire utilise pour l''ecriture du -\telkey{FICHIER DES RESULTATS 3D}. -Ce type depend de la machine sur laquelle le fichier a ete genere. -Les valeurs possibles sont : -\begin{itemize} -\item IBM pour un fichier cree sur IBM ; -\item I3E pour un fichier cree sur HP ; -\item STD. -\end{itemize} -Il s''agit alors d''ordres READ et WRITE normaux.""", - ang = """Binary file type used for writing the -\telkey{3D RESULT FILE}. -This type depends on the machine on which the file was generated. -The possible values are as follows: -\begin{itemize} -\item IBM, for a file on an IBM (from a CRAY), -\item I3E, for a file on an HP (from a CRAY), -\item STD, binary type of the machine on which the user is working. -\end{itemize} -In that case, normal READ and WRITE commands are used.""", - ), -# ----------------------------------- - ED_RESULT_FILE_BINARY = SIMP(statut ='f', -# ----------------------------------- - typ = 'TXM', - into = ['STD','IBM','I3E'], - defaut = 'STD', - fr = """Type du binaire utilise pour l''ecriture du -\telkey{FICHIER DES RESULTATS 2D}. -Ce type depend de la machine sur laquelle le fichier a ete genere. -Les valeurs possibles sont : -\begin{itemize} -\item IBM pour un fichier cree sur IBM ; -\item I3E pour un fichier cree sur HP ; -\item STD. -\end{itemize} -Il s''agit alors d''ordres READ et WRITE normaux.""", - ang = """Binary file type used for writing the -\telkey{2D RESULT FILE}. -This type depends on the machine on which the file was generated. -The possible values are as follows: -\begin{itemize} -\item IBM, for a file on an IBM (from a CRAY), -\item I3E, for a file on an HP (from a CRAY), -\item STD, binary type of the machine on which the user is working. -\end{itemize} -In that case, normal READ and WRITE commands are used.""", - ), -# ----------------------------------- - NUMBER_OF_PRIVATE_ARRAYS = SIMP(statut ='o', -# ----------------------------------- - typ = 'I', - defaut = 0, - fr = """Nombre de tableaux mis a disposition de l''utilisateur.""", - ang = """Number of arrays for own user programming.""", - ), -# ----------------------------------- - NUMBER_OF_2D_PRIVATE_ARRAYS = SIMP(statut ='f', -# ----------------------------------- - typ = 'I', - defaut = 0, - fr = """Nombre de tableaux 2D mis a disposition de l utilisateur -dans le bloc PRIVE2D. Il doit etre inferieur ou egal a 4.""", - ang = """Number of 2D arrays for own user programming -in block \telfile{PRIVE2D}. It has to be lower or equal to 4.""", - ), -# ----------------------------------- - NAMES_OF_2D_PRIVATE_VARIABLES = SIMP(statut ='f', -# ----------------------------------- - typ = 'TXM', min= 4, max= 4, - fr = """Noms des variables dans les tableaux prives 2D en 32 -caracteres, 16 pour le nom 16 pour l''unite. Elles seront lues dans le -\telkey{FICHIER DE GEOMETRIE} si elles y sont. -Nombre maximum de 4 noms.""", - ang = """Name of variables in 2D private arrays in 32 characters, -16 for the name, 16 for the unit. If present, will be read -in the \telkey{GEOMETRY FILE}. Maximum number of 4 names.""", - ), -# ----------------------------------- - FORMATTED_RESULTS_FILE = SIMP(statut ='f', -# ----------------------------------- - typ = ('Fichier','All Files (*)','Sauvegarde'), max='**', - defaut = '', - fr = """Fichier de resultats formate mis a la disposition de -l''utilisateur.""", - ang = """Formatted file of results made available to the user.""", - ), -# ----------------------------------- - BINARY_RESULTS_FILE = SIMP(statut ='f', -# ----------------------------------- - typ = ('Fichier','All Files (*)','Sauvegarde'), max='**', - defaut = '', - fr = """Fichier de resultats code en binaire mis a la disposition -de l''utilisateur.""", - ang = """Additional binary-coded result file made available -to the user.""", - ), - ), -# ----------------------------------- - LISTING = FACT(statut='o', -# ----------------------------------- -# ----------------------------------- - LISTING_PRINTOUT = SIMP(statut ='o', -# ----------------------------------- - typ = bool, - defaut = True, - fr = """Sortie des resultats sur support papier. -Si l''on met NON le listing ne contient que l''entete et la mention -FIN NORMALE DU PROGRAMME. Commande a eviter""", - ang = """Result printout on hard copy. -When NO is selected, the listing only includes the heading and the -phrase "NORMAL END OF PROGRAM". -In addition, the options \telkey{MASS-BALANCE} and -\telkey{VALIDATION} are inhibited. Not recommended for use.""", - ), -# ----------------------------------- - MASS_BALANCE = SIMP(statut ='o', -# ----------------------------------- - typ = bool, - defaut = False, - fr = """Determine si l''on effectue ou non le bilan de masse -sur le domaine. -Cette procedure calcule a chaque pas de temps : -\begin{itemize} -\item les flux aux entrees et sorties du domaine ; -\item le flux global a travers l''ensemble des parois du domaine -(liquides ou solides) ; -\item l''erreur relative sur la masse pour ce pas de temps. -\end{itemize} -En fin de listing, on trouve l''erreur relative sur la masse pour -l''ensemble du calcul. -Il ne s''agit que d''un calcul indicatif car il n''existe pas -d''expression compatible du debit en formulation c,u,v.""", - ang = """Determines whether a check of the mass-balance over -the domain is done or not. -This procedures computes the following at each time step: -\begin{itemize} -\item the domain inflows and outflows, -\item the overall flow across all the boundaries, -\item the relative error in the mass for that time step. -\end{itemize} -The relative error in the mass over the whole computation can be found -at the end of the listing.""", - ), -# ----------------------------------- - INFORMATION_ABOUT_MASS_BALANCE_FOR_EACH_LISTING_PRINTOUT = SIMP(statut ='o', -# ----------------------------------- - typ = bool, - defaut = True, - fr = """Donne a chaque sortie listing une information sur le bilan de -masse.""", - ang = """Gives the information about mass-balance -at every \telkey{LISTING PRINTOUT PERIOD}.""", - ), -# ----------------------------------- - LISTING_PRINTOUT_PERIOD = SIMP(statut ='o', -# ----------------------------------- - typ = 'I', - defaut = 1, - fr = """Determine la periode en nombre de pas de temps d''impression -des ''VARIABLES A IMPRIMER''. Pour la mise au point, -il faut savoir que la sortie des resultats est effectuee -systematiquement sur le listing.""", - ang = """Determines, in number of time steps, the printout period of -the VARIABLES TO BE PRINTED. -The results are systematically printed out on the listing file.""", - ), -# ----------------------------------- - NUMBER_OF_FIRST_TIME_STEP_FOR_LISTING_PRINTOUTS = SIMP(statut ='f', -# ----------------------------------- - typ = 'I', - defaut = 0, - fr = """Determine le numero de pas de temps a partir duquel debute -l''ecriture des resultats dans le listing.""", - ang = """Determines the number of time steps after which the results -are first written into the listing.""", - ), - ), - ), -# ----------------------------------- - RESTART = FACT(statut='o', -# ----------------------------------- -# ----------------------------------- - COMPUTATION_CONTINUED = SIMP(statut ='o', -# ----------------------------------- - typ = bool, - defaut = False, - fr = """Determine si le calcul en cours est independant de tout autre -resultat ou est une reprise effectuee a partir du resultat d''un calcul -precedent. -\begin{itemize} -\item NON : Il s''agit du premier passage pour ce calcul et il est -necessaire de definir un jeu complet de conditions initiales -\item OUI : Il s''agit d''une reprise de calcul : -les conditions initiales sont constituees par le dernier pas de -temps du \telkey{FICHIER DU CALCUL PRECEDENT} du fichier des parametres -utilise pour soumettre le calcul. -\end{itemize} -Par contre, l''ensemble des donnees du fichier des parametres -peuvent etre redefinies, ce qui offre la possibilite de changer -par exemple, le pas de temps, le modele de turbulence, le -frottement, d''ajouter ou retirer un traceur\ldots\\ -De meme, il est necessaire de definir des conditions aux limites -(sous-programme \telfile{BORD3D} ou valeurs placees dans le fichier des -parametres), qui peuvent egalement etre modifiees.\\ -Afin d''obtenir une suite de calcul parfaite, l''utilisateur doit -activer le \telkey{MODE SUITE} dans un calcul precedent afin de generer -le fichier a partir duquel le calcul suivant commence -(\telkey{FICHIER POUR SUITE}).""", - ang = """Determines whether the computation under way is independent -or is following an earlier result. -\begin{itemize} -\item NO: It is the first run for this computation and a whole set of -initial conditions should be defined, -\item YES: It follows a former computation: -the initial conditions consist in the last time step of the -\telkey{PREVIOUS COMPUTATION FILE} defined in the steering file -used for submitting the computation. -\end{itemize} -All the data from the steering file may be defined once again, which -provides an opportunity to change, for example, the time step, -the turbulence model, the friction, to add or remove a tracer\ldots\\ -It is also possible to define new boundary conditions -(in the subroutine \telfile{BORD3D} or values defined -in the steering file).\\ -In order to get a perfect continued computation, the user has to -activate the \telkey{RESTART MODE} in a previous computation to generate -the file from which the following computation starts -(\telkey{RESTART FILE}).""", - ), -# ----------------------------------- - b_COMPUTATION_CONTINUEDG = BLOC(condition="COMPUTATION_CONTINUED == True", -# ----------------------------------- -# ----------------------------------- - PREVIOUS_COMPUTATION_FILE = SIMP(statut ='o', -# ----------------------------------- - typ = ('Fichier','All Files (*)'), - defaut = '', - fr = """Nom d''un fichier contenant les resultats d''un calcul precedent -realise sur le meme maillage et dont le dernier pas de temps enregistre -va fournir les conditions initiales pour une suite de de calcul. -Dans le cas d''une suite de calcul que l''on souhaite parfaite, -le \telkey{FICHIER DU CALCUL PRECEDENT} doit etre le -\telkey{FICHIER POUR SUITE} du dernier calcul, ce dernier fichier -etant alors un fichier de sortie du dernier calcul. -Le \telkey{FORMAT DU FICHIER DU CALCUL PRECEDENT} et le -\telkey{FORMAT DU FICHIER POUR SUITE} doivent alors etre mis a - ''SERAFIND'' ou ''MED''.""", - ang = """Name of a file containing the results of an earlier computation -which was made on the same mesh. The last recorded time step will -provide the initial conditions for the new computation. -In case of a perfect continued computation, the -\telkey{PREVIOUS COMPUTATION FILE} has to be the \telkey{RESTART FILE} -of the last computation. -This last file is then an output file of the last computation. -The \telkey{PREVIOUS COMPUTATION FILE FORMAT} and the -\telkey{RESTART FILE FORMAT} have to be set with ''SERAFIND'' -or ''MED''.""", - ), -# ----------------------------------- - PREVIOUS_COMPUTATION_FILE_FORMAT = SIMP(statut ='o', -# ----------------------------------- - typ = 'TXM', - into = ['SERAFIN?','SERAFIND','MED'], - defaut = 'SERAFIN?', - fr = """Format du \telkey{FICHIER DU CALCUL PRECEDENT}. -Les valeurs possibles sont : -\begin{itemize} -\item SERAFIN : format standard simple precision pour \tel ; -\item SERAFIND: format standard double precision pour \tel ; -\item MED : format MED double precision base sur HDF5. -\end{itemize}""", - ang = """Format of the \telkey{PREVIOUS COMPUTATION FILE}. -Possible choices are: -\begin{itemize} -\item SERAFIN : classical single precision format in \tel, -\item SERAFIND: classical double precision format in \tel, -\item MED : MED double precision format based on HDF5. -\end{itemize}""", - ), -# ----------------------------------- - RECORD_NUMBER_FOR_RESTART = SIMP(statut ='f', -# ----------------------------------- - typ = 'I', - defaut = 0, - fr = """En cas de suite de calcul, numero de l''enregistrement -de depart dans le fichier du calcul precedent. 0 signifie -que l''on prend le dernier enregistrement""", - ang = """In case of \telkey{COMPUTATION CONTINUED}, record number to -start from in the \telkey{PREVIOUS COMPUTATION FILE}. -0 means that the last record is taken.""", - ), - ), -# ----------------------------------- - INITIAL_TIME_SET_TO_ZERO = SIMP(statut ='f', -# ----------------------------------- - typ = bool, - defaut = False, - fr = """Remet le temps a zero en cas de suite de calcul.""", - ang = """Initial time set to zero in case of restart.""", - ), -# ----------------------------------- - RESTART_MODE = SIMP(statut ='f', -# ----------------------------------- - typ = bool, - defaut = False, - fr = """Declenche le remplissage du -\telkey{FICHIER POUR SUITE}, qui permet une suite de calcul -parfaite, contrairement au \telkey{FICHIER DES RESULTATS 3D}.""", - ang = """Triggers the filling of the \telkey{RESTART FILE}, -which ensures a perfect restart of a computation, -unlike using the \telkey{3D RESULT FILE}.""", - ), -# ----------------------------------- - b_RESTART_MODEG = BLOC(condition="RESTART_MODE == True", -# ----------------------------------- -# ----------------------------------- - RESTART_FILE = SIMP(statut ='f', -# ----------------------------------- - typ = ('Fichier','All Files (*)','Sauvegarde'), - defaut = '', - fr = """Nom du fichier dans lequel seront ecrits les resultats du -dernier calcul pour obtenir une suite de calcul parfaite. -C''est donc un fichier de sortie pour le calcul en cours, -qui servira de fichier d''entree lors de la suite de calcul que l''on -souhaite parfaite (le mot-cle \telkey{FICHIER DU CALCUL PRECEDENT} -est alors utilise). -Le \telkey{FORMAT DU FICHIER POUR SUITE} et le -\telkey{FORMAT DU FICHIER DU CALCUL PRECEDENT} doivent alors etre mis a - ''SERAFIND'' ou ''MED''.""", - ang = """Name of the file into which the last computation results shall -be written in order to get a perfect continued computation. -It is then an output file for the current computation, -which will be used as an input file when a continued computation -is expected to be perfect (the keyword -\telkey{PREVIOUS COMPUTATION FILE} is then used). -The \telkey{RESTART FILE FORMAT} and the -\telkey{PREVIOUS COMPUTATION FILE FORMAT} have to be set with - ''SERAFIND'' or ''MED''.""", - ), -# ----------------------------------- - RESTART_FILE_FORMAT = SIMP(statut ='f', -# ----------------------------------- - typ = 'TXM', - into = ['SERAFIN?','SERAFIND','MED'], - defaut = 'SERAFIN?', - fr = """Format du \telkey{FICHIER POUR SUITE}. -Les valeurs possibles sont : -\begin{itemize} -\item SERAFIN : format standard simple precision pour \tel ; -\item SERAFIND: format standard double precision pour \tel ; -\item MED : format MED double precision base sur HDF5. -\end{itemize} -Seul les formats double precision assurent une suite parfaite.""", - ang = """Format of the \telkey{RESTART FILE}. -Possible choices are: -\begin{itemize} -\item SERAFIN : classical single precision format in \tel, -\item SERAFIND: classical double precision format in \tel, -\item MED : MED double precision format based on HDF5. -\end{itemize} -Only double precision formats ensure a perfect restart.""", - ), - ), -# ----------------------------------- - ED_CONTINUATION = SIMP(statut ='f', -# ----------------------------------- - typ = bool, - defaut = False, - fr = """Permet d''utiliser un \telkey{FICHIER DES RESULTATS 2D} -stocke dans le \telkey{FICHIER POUR SUITE 2D} comme fichier de -conditions initiales.""", - ang = """Enables to use a \telkey{2D RESULT FILE} in -\telkey{FILE FOR 2D CONTINUATION} as initial conditions file.""", - ), -# ----------------------------------- - b_ED_CONTINUATIONG = BLOC(condition="ED_CONTINUATION == True", -# ----------------------------------- -# ----------------------------------- - FILE_FOR_2D_CONTINUATION = SIMP(statut ='f', -# ----------------------------------- - typ = ('Fichier','All Files (*)'), - defaut = '', - fr = """Fichier utilise en cas de suite 2D.""", - ang = """File to be used in case of 2D continuation.""", - ), -# ----------------------------------- - FILE_FOR_2D_CONTINUATION_FORMAT = SIMP(statut ='f', -# ----------------------------------- - typ = 'TXM', - into = ['SERAFIN?','SERAFIND','MED'], - defaut = 'SERAFIN?', - fr = """Format du \telkey{FICHIER POUR SUITE 2D}. -Les valeurs possibles sont : -\begin{itemize} -\item SERAFIN : format standard simple precision pour \tel ; -\item SERAFIND: format standard double precision pour \tel ; -\item MED : format MED double precision base sur HDF5. -\end{itemize}""", - ang = """Format of the \telkey{FILE FOR 2D CONTINUATION}. -Possible choices are: -\begin{itemize} -\item SERAFIN : classical single precision format in \tel, -\item SERAFIND: classical double precision format in \tel, -\item MED : MED double precision format based on HDF5. -\end{itemize}""", - ), - ), - ), -) -# ----------------------------------------------------------------------- -GENERAL_PARAMETERS = PROC(nom= "GENERAL_PARAMETERS",op = None, -# ----------------------------------------------------------------------- - UIinfo = {"groupes": ("CACHE")}, -# ----------------------------------- - DEBUGGER = SIMP(statut ='o', -# ----------------------------------- - typ = 'I', - defaut = 0, - fr = """Pour imprimer la sequence des appels, mettre 1.""", - ang = """If 1, additional writings will be printed in the listing, -in particular the calls of subroutines.""", - ), -# ----------------------------------- - TIME = FACT(statut='o', -# ----------------------------------- -# ----------------------------------- - TIME_STEP = SIMP(statut ='o', -# ----------------------------------- - typ = 'R', - defaut = 1., - fr = """Definit le pas de temps en secondes. -Remarque : Pour une bonne precision, il est souhaitable de choisir -le pas de temps de telle sorte que le nombre de Courant de propagation -soit inferieur a 2, voire 3. -Ceci peut etre realisable en hydraulique fluviale, mais ne l''est -pratiquement jamais en hydraulique maritime ou l''on peut atteindre -des valeurs de 50.""", - ang = """Specifies the time step in seconds.""", - ), -# ----------------------------------- - NUMBER_OF_TIME_STEPS = SIMP(statut ='o', -# ----------------------------------- - typ = 'I', - defaut = 1, - fr = """Definit le nombre de pas de temps effectues lors de -l''execution du code.""", - ang = """Specifies the number of time steps performed when running -the code.""", - ), -# ----------------------------------- - DURATION = SIMP(statut ='o', -# ----------------------------------- - typ = 'R', - defaut = 0., - fr = """Duree de la simulation en secondes. Alternative au parametre -\telkey{NOMBRE DE PAS DE TEMPS}. -On en deduit le nombre de pas de temps en prenant l''entier le -plus proche de (duree du calcul/pas de temps). -Si le \telkey{NOMBRE DE PAS DE TEMPS} est aussi donne, -on prend la plus grande valeur.""", - ang = """Sets the duration of the simulation in seconds. -May be used instead of the parameter \telkey{NUMBER OF TIME STEPS}. -The nearest integer to (duration/time step) is taken. -If \telkey{NUMBER OF TIME STEPS} is also given, -the greater value is taken.""", - ), -# ----------------------------------- - ORIGINAL_DATE_OF_TIME = SIMP(statut ='o', -# ----------------------------------- - typ = 'I', min= 3, max= 3, - defaut = [1900,1,1], - fr = """Permet de fixer la date d''origine des temps du modele lorsque -la maree est prise en compte (force generatrice de la maree et/ou les -conditions aux limites de maritimes. -Egalement utilise en chainage avec DELWAQ.""", - ang = """Enables to set the date of the time origin of the model when -taking into account of the tide (tide generator force and/or the tidal -boundary conditions). -Also used when chaining with DELWAQ.""", - ), -# ----------------------------------- - ORIGINAL_HOUR_OF_TIME = SIMP(statut ='o', -# ----------------------------------- - typ = 'I', min= 3, max= 3, - defaut = [0,0,0], - fr = """Permet de fixer l''heure d''origine des temps du modele lorsque -la maree est prise en compte (force generatrice de la maree et/ou les -conditions aux limites de maritimes. -Egalement utilise en chainage avec DELWAQ.""", - ang = """Enables to set the time of the time origin of the model when -taking into account of the tide (tide generator force and/or the tidal -boundary conditions). -Also used when chaining with DELWAQ.""", - ), - ), -# ----------------------------------- - LOCATION = FACT(statut='o', -# ----------------------------------- -# ----------------------------------- - SPHERICAL_COORDINATES = SIMP(statut ='o', -# ----------------------------------- - typ = bool, - defaut = False, - fr = """Choix des coordonnees spheriques pour la realisation du calcul -(pour les grands domaines de calcul). -Attention : cette option est etroitement liee au maillage qui doit avoir -ete saisi sur une carte marine en projection de Mercator. Il faut de -plus relever sur la carte la \telkey{LATITUDE DU POINT ORIGINE} -qui correspond dans le maillage a l''ordonnee $y$ = 0.""", - ang = """Selection of spherical coordinates to perform the computation -(for large computation domains). -Warning: this option is closely related to the mesh that should have -been entered onto a nautical chart drawn as per Mercator projection -The \telkey{LATITUDE OF ORIGIN POINT}, which corresponds to -ordinate $y$ = 0 in the mesh, must moreover be given.""", - ), -# ----------------------------------- - SPATIAL_PROJECTION_TYPE = SIMP(statut ='o', -# ----------------------------------- - typ = 'TXM', - into = ["CARTESIAN, NOT GEOREFERENCED","MERCATOR","LATITUDE LONGITUDE"], - defaut = "MERCATOR", - fr = """Permet de specifier le type de projection spatiale utilisee dans -le cas de l''utilisation des coordonnees spheriques par exemple. -Les choix possibles sont : -\begin{itemize} -\item 1 : Lambert Cartesien non georeference ; -\item 2 : Mercator ; -\item 3 : Latitude/longitude (exprimees en degres). -\end{itemize} -Option 2 ou 3 obligatoire pour les coordonnees spheriques. -Option 3 : latitude et longitude en degres ! -Dans le cas de l''option 3, \telemac{3d} convertit les informations -latitude/longitude a l''aide de la projection de Mercator.""", - ang = """Specifies the type of spatial projection used -(for example when using spherical coordinates). -Possible choices are: -\begin{itemize} -\item 1: Cartesian, not georeferenced, -\item 2: Mercator, -\item 3: latitude/longitude (in degrees). -\end{itemize} -Option 2 or 3 mandatory for spherical coordinates. Option 3: latitude -and longitude in degrees! When using option 3, the coordinates are -automatically -treated by \telemac{3d} using Mercator projection.""", - ), -# ----------------------------------- - LATITUDE_OF_ORIGIN_POINT = SIMP(statut ='o', -# ----------------------------------- - typ = 'R', - defaut = 0., - fr = """Donne la valeur de la latitude du point origine du maillage -(pour la projection de Mercator, voir le mot cle -\telkey{SYSTEME GEOGRAPHIQUE}).""", - ang = """Gives the value of the latitude of the origin point of the -mesh (for the Mercator projection, see the keyword -\telkey{GEOGRAPHIC SYSTEM}).""", - ), -# ----------------------------------- - LONGITUDE_OF_ORIGIN_POINT = SIMP(statut ='o', -# ----------------------------------- - typ = 'R', - defaut = 0., - fr = """Donne la valeur de la longitude du point origine du maillage -(pour la projection de Mercator, voir le mot cle -\telkey{SYSTEME GEOGRAPHIQUE}).""", - ang = """Gives the value of the longitude of the origin point of the -mesh (for the Mercator projection, see the keyword -\telkey{GEOGRAPHIC SYSTEM}).""", - ), -# ----------------------------------- - NORTH = SIMP(statut ='f', -# ----------------------------------- - typ = 'R', - defaut = 0., - fr = """Angle que fait le nord, -dans le sens trigonometrique, avec L, axe Oy.""", - ang = """Angle of North, counted counter-clockwise, with Oy.""", - ), -# ----------------------------------- - ORIGIN_COORDINATES = SIMP(statut ='o', -# ----------------------------------- - typ = 'I', min= 2, max= 2, - defaut = [0,0], - fr = """Valeurs en metres, utilise pour eviter les trop grands nombres, -transmis dans le format SERAFIN mais pas d''autre traitement pour -l''instant.""", - ang = """Values in metres, used to avoid large real numbers, -added in SERAFIN format, but so far no other treatment.""", - ), - ), -) -# ----------------------------------------------------------------------- -VERTICAL = PROC(nom= "VERTICAL",op = None, -# ----------------------------------------------------------------------- - UIinfo = {"groupes": ("CACHE")}, -# ----------------------------------- - NUMBER_OF_HORIZONTAL_LEVELS = SIMP(statut ='o', -# ----------------------------------- - typ = 'I', - defaut = 2, - fr = """Definit le nombre de plans du maillage entre le fond et la -surface. Vaut au moins 2.""", - ang = """Gives the number of planes from bottom to free surface. Must -be at least 2.""", - ), -# ----------------------------------- - MESH_TRANSFORMATION = SIMP(statut ='o', -# ----------------------------------- - typ = 'I', - defaut = 1, - fr = """Permet que specifier la methode de repartition des plans -verticaux du maillage. Les choix possibles sont : -\begin{itemize} -\item 0 : utilisateur (sous-programme \telfile{CALCOT} a programmer) ; -\item 1 : sigma ; -\item 2 : zstar ; -\item 3 : plans fixes ; -\item 5 : adaptatif. -\end{itemize} -Ce mot-clef doit etre coherent avec le sous-programme -\telfile{CONDIM}.""", - ang = """Specifies the distribution of vertical planes of the mesh. -Possible choices are: -\begin{itemize} -\item 0: user defined (then subroutine \telfile{CALCOT} to be -implemented), -\item 1: sigma, -\item 2: zstar, -\item 3: horizontal fixed planes, -\item 5: adaptive mesh. -\end{itemize} -This keyword must comply with what is done in \telkey{CONDIM} -subroutine.""", - ), -) -# ----------------------------------------------------------------------- -NUMERICAL_PARAMETERS = PROC(nom= "NUMERICAL_PARAMETERS",op = None, -# ----------------------------------------------------------------------- - UIinfo = {"groupes": ("CACHE")}, -# ----------------------------------- - NUMBER_OF_SUB_ITERATIONS_FOR_NON_LINEARITIES = SIMP(statut ='o', -# ----------------------------------- - typ = 'I', - defaut = 1, - fr = """Permet de reactualiser, pour un meme pas de temps, les champs -convecteur et propagateur au cours de plusieurs sous-iterations. A la -premiere sous-iteration, ces champs sont donnes par $C$ et le champ de -vitesses au pas de temps precedent. Aux iterations suivantes, ils sont -pris egaux au champ de vitesse obtenu a la fin de la sous-iteration -precedente. Cette technique permet d''ameliorer la prise en compte des -non linearites.""", - ang = """Used for updating, within one time step, the advection and -propagation fields. -Upon the first sub-iteration, these fields are given by -$C$ and the velocity field in the previous time step. At subsequent -iterations, the results of the previous sub-iteration is used to -update the advection and propagation field. -The non-linearities can be taken into account through this technique.""", - ), -# ----------------------------------- - ZERO = SIMP(statut ='f', -# ----------------------------------- - typ = 'R', - defaut = 1.E-10, - fr = """Non active pour l''instant.""", - ang = """Not used so far.""", - ), -# ----------------------------------- - ADVECTION = FACT(statut='o', -# ----------------------------------- -# ----------------------------------- - ADVECTION_STEP = SIMP(statut ='o', -# ----------------------------------- - typ = bool, - defaut = True, - fr = """Prise en compte ou non des termes de convection. -En cas de reponse positive, -on peut encore supprimer certains termes de convection avec -les mots-cles \telkey{SCHEMA POUR LA CONVECTION...}""", - ang = """Takes into account the advection terms or not. -If YES, some advection terms can still be ignored with the keywords -\telkey{SCHEME FOR ADVECTION OF...}""", - ), -# ----------------------------------- - b_TREATMENT_OF_FLUXES_AT_THE_BOUNDARIESF = BLOC(condition="(ADVECTION_STEP == True and ((SCHEME_FOR_ADVECTION_OF_TRACERS in ['N-SCHEME FOR TIDAL FLATS','LEO POSTMA FOR TIDAL FLATS','EXPLICIT + SUPG','EXPLICIT + MURD SCHEME N','EXPLICIT LEO POSTMA','EXPLICIT + MURD SCHEME PSI']) or (SCHEME_FOR_ADVECTION_OF_K_EPSILON in ['N-SCHEME FOR TIDAL FLATS','LEO POSTMA FOR TIDAL FLATS','EXPLICIT + SUPG','EXPLICIT + MURD SCHEME N','EXPLICIT LEO POSTMA','EXPLICIT + MURD SCHEME PSI']) or (SCHEME_FOR_ADVECTION_OF_VELOCITIES in ['N-SCHEME FOR TIDAL FLATS','LEO POSTMA FOR TIDAL FLATS','EXPLICIT + SUPG','EXPLICIT + MURD SCHEME N','EXPLICIT LEO POSTMA','EXPLICIT + MURD SCHEME PSI'])))", -# ----------------------------------- - ), -# ----------------------------------- - TREATMENT_OF_FLUXES_AT_THE_BOUNDARIES = SIMP(statut ='f', -# ----------------------------------- - typ = 'TXM', min=0, max='**', - into = ["Priority to prescribed values","Priority to fluxes"], - fr = """Option s''utilisant uniquement pour les schemas SUPG, PSI et N. -Les choix possibles sont : -\begin{itemize} -\item 1 : priorite aux valeurs imposees ; -\item 2 : priorite aux flux. -\end{itemize} -Avec l''option 2, on ne retrouve pas exactement les valeurs imposees -des traceurs, mais le flux est correct.""", - ang = """Used so far only with the SUPG, PSI and N schemes. -Possible choices are: -\begin{itemize} -\item 1: priority to prescribed values, -\item 2: priority to fluxes. -\end{itemize} -With option 2, Dirichlet prescribed values are not obeyed, -but the fluxes are correct.""", - ), -# ----------------------------------- - SUPG_OPTION = SIMP(statut ='o', -# ----------------------------------- - typ = 'I', min= 4, max= 4, - defaut = [1,0,1,1], - fr = """Permet de specifier le type de decentrement utilise. -Les choix possibles sont : -\begin{itemize} -\item 0 : pas de decentrement SUPG ; -\item 1 : SUPG classique ; -\item 2 : SUPG modifiee. -\end{itemize} -Ces coefficients sont respectivement appliques a : -\begin{itemize} -\item $U$, $V$ et $W$ ; -\item $H$ ; -\item $T$ ; -\item $k$ et $\epsilon$. -\end{itemize}""", - ang = """Specifies the type of upwinding used. -Possible choices are: -\begin{itemize} -\item 0: no upwinding, -\item 1: classical SUPG, -\item 2: modified SUPG. -\end{itemize} -These coefficients are applied respectively to: -\begin{itemize} -\item 1) $U$, $V$ and $W$, -\item 2) $H$, -\item 3) $T$, -\item 4) $k$ and $\epsilon$. -\end{itemize}""", - ), -# ----------------------------------- - b_MAXIMUM_NUMBER_OF_ITERATIONS_FOR_ADVECTION_SCHEMESF = BLOC(condition="(ADVECTION_STEP == True and ((SCHEME_FOR_ADVECTION_OF_TRACERS == 'N-SCHEME FOR TIDAL FLATS') or (SCHEME_FOR_ADVECTION_OF_K_EPSILON == 'N-SCHEME FOR TIDAL FLATS') or (SCHEME_FOR_ADVECTION_OF_VELOCITIES == 'N-SCHEME FOR TIDAL FLATS') or (SCHEME_FOR_ADVECTION_OF_TRACERS == 'LEO POSTMA FOR TIDAL FLATS') or (SCHEME_FOR_ADVECTION_OF_K_EPSILON == 'LEO POSTMA FOR TIDAL FLATS') or (SCHEME_FOR_ADVECTION_OF_VELOCITIES == 'LEO POSTMA FOR TIDAL FLATS')))", -# ----------------------------------- - ), -# ----------------------------------- - MAXIMUM_NUMBER_OF_ITERATIONS_FOR_ADVECTION_SCHEMES = SIMP(statut ='o', -# ----------------------------------- - typ = 'I', - defaut = 10, - fr = """Limite le nombre d''iterations pour les schemas de convection, -seulement pour schemes 13 et 14.""", - ang = """Limits the number of solver iterations for the advection -schemes, only for schemes 13 and 14.""", - ), -# ----------------------------------- - NUMBER_OF_SUB_STEPS_OF_DISTRIBUTIVE_SCHEMES = SIMP(statut ='f', -# ----------------------------------- - typ = 'I', - defaut = 1, - fr = """Pour les options predicteur-correcteur -avec schema localement implicite.""", - ang = """Only for implicit scheme with predictor-corrector.""", - ), -# ----------------------------------- - NUMBER_OF_CORRECTIONS_OF_DISTRIBUTIVE_SCHEMES = SIMP(statut ='f', -# ----------------------------------- - typ = 'I', - defaut = 1, - fr = """Pour les options avec predicteur-correcteur.""", - ang = """For predictor-corrector options.""", - ), - ), -# ----------------------------------- - DIFFUSION = FACT(statut='o', -# ----------------------------------- -# ----------------------------------- - MASS_LUMPING_FOR_DIFFUSION = SIMP(statut ='o', -# ----------------------------------- - typ = 'R', - defaut = 0., - fr = """Mass-lumping de la matrice de masse dans la diffusion.""", - ang = """Mass-lumping of the mass-matrix in the diffusion step.""", - ), - ), -) -# ----------------------------------------------------------------------- -HYDRODYNAMICS = PROC(nom= "HYDRODYNAMICS",op = None, -# ----------------------------------------------------------------------- - UIinfo = {"groupes": ("CACHE")}, -# ----------------------------------- - NON_HYDROSTATIC_VERSION = SIMP(statut ='o', -# ----------------------------------- - typ = bool, - defaut = False, - fr = """Permet de specifier s''il y a utilisation ou non de la version -non-hydrostatique.""", - ang = """Specifies the use of the non-hydrostatic code version or not.""", - ), -# ----------------------------------- - b_NON_HYDROSTATIC_VERSIONG = BLOC(condition="NON_HYDROSTATIC_VERSION == True", -# ----------------------------------- -# ----------------------------------- - SOLVER_FOR_PPE = SIMP(statut ='o', -# ----------------------------------- - typ = 'TXM', - into = ["conjugate gradient","conjugate residual","conjugate gradient on a normal equation","minimum error","squared conjugate gradient","cgstab","gmres","direct solver"], - defaut = "conjugate gradient", - fr = """Permet de choisir le solveur utilise pour la resolution de -l''equation de Poisson. -Les choix possibles sont : -\begin{itemize} -\item 1 : gradient conjugue ; -\item 2 : residu conjugue ; -\item 3 : gradient conjugue sur equation normale ; -\item 4 : erreur minimale ; -\item 5 : gradient conjugue carre ; -\item 6 : CGSTAB ; -\item 7 : GMRES ; -\item 8 : solveur direct. -\end{itemize}""", - ang = """Choice of the solver for the Poisson Pressure Equation. -Possible choices are: -\begin{itemize} -\item 1: conjugate gradient, -\item 2: conjugate residual, -\item 3: conjugate gradient on a normal equation, -\item 4: minimum error, -\item 5: squared conjugate gradient, -\item 6: CGSTAB, -\item 7: GMRES, -\item 8: direct solver. -\end{itemize}""", - ), -# ----------------------------------- - b_SOLVER_FOR_PPEG = BLOC(condition="SOLVER_FOR_PPE == 'gmres'", -# ----------------------------------- -# ----------------------------------- - OPTION_OF_SOLVER_FOR_PPE = SIMP(statut ='o', -# ----------------------------------- - typ = 'I', - defaut = 3, - fr = """Dimension de l''espace de Krylov pour la methode GMRES (7).""", - ang = """Dimension of Krylov space for the GMRES method (7).""", - ), - ), -# ----------------------------------- - ACCURACY_FOR_PPE = SIMP(statut ='o', -# ----------------------------------- - typ = 'R', - defaut = 1.E-4, - fr = """Fixe la precision pour l''equation de Poisson.""", - ang = """Sets the precision needed for the computation of the Poisson -Pressure Equation.""", - ), -# ----------------------------------- - MAXIMUM_NUMBER_OF_ITERATIONS_FOR_PPE = SIMP(statut ='o', -# ----------------------------------- - typ = 'I', - defaut = 100, - fr = """Limite le nombre d iterations pour l''equation de Poisson.""", - ang = """Limits the number of solver iterations for the Poisson -Pressure Equation.""", - ), -# ----------------------------------- - PRECONDITIONING_FOR_PPE = SIMP(statut ='o', -# ----------------------------------- - typ = 'TXM', - into = ["no preconditioning","diagonal","diagonal condensed","diagonal with absolute values","Crout","Gauss-Seidel EBE","Matrix defined by the user","diagonal and Crout","direct solver on the vertical","diagonal condensed and Crout","diagonal and direct solver on the vertical"], - defaut = "diagonal", - fr = """Preconditionnement pour l''equation de Poisson. -Les choix possibles sont : -\begin{itemize} -\item 0 : aucun ; -\item 2 : diagonal ; -\item 3 : diagonal avec matrice condensee ; -\item 5 : diagonal avec valeurs absolues ; -\item 7 : Crout ; -\item 11 : Gauss-Seidel EBE ; -\item 13 : matrice fournie par l''utilisateur ; -\item 14 : diagonal et Crout ; -\item 17 : solveur direct sur la verticale ; -\item 21 : diagonal condensee et Crout ; -\item 34 : diagonal et solveur direct sur la verticale. -\end{itemize}""", - ang = """Preconditioning for the Poisson Pressure Equation. -Possible choices are: -\begin{itemize} -\item 0: no preconditioning, -\item 2: diagonal, -\item 3: diagonal with the condensed matrix, -\item 5: diagonal with absolute values, -\item 7: Crout, -\item 11: Gauss-Seidel EBE, -\item 13: matrix defined by the user, -\item 14: diagonal and Crout, -\item 17: direct solver on the vertical, -\item 21: diagonal condensed and Crout, -\item 34: diagonal and direct solver on the vertical. -\end{itemize}""", - ), -# ----------------------------------- - DYNAMIC_PRESSURE_IN_WAVE_EQUATION = SIMP(statut ='f', -# ----------------------------------- - typ = bool, - defaut = False, - fr = """Definit si une estimation du gradient de pression dynamique -est prise en compte dans l''equation d''onde.""", - ang = """Defines if an estimated pressure gradient is taken into -account in the wave equation.""", - ), -# ----------------------------------- - DYNAMIC_BOUNDARY_CONDITION = SIMP(statut ='f', -# ----------------------------------- - typ = bool, - defaut = False, - fr = """Si OUI, impose une vitesse en surface -selon la condition a la limite dynamique.""", - ang = """If YES, will set at the free surface a -velocity obeying the dynamic boundary condition.""", - ), -# ----------------------------------- - CONTINUITY_CORRECTION_ON_OPEN_BOUNDARIES = SIMP(statut ='f', -# ----------------------------------- - typ = bool, - defaut = False, - fr = """Modifie les vitesses libres sur les frontieres ouvertes -pour avoir un meilleur champ a divergence nulle.""", - ang = """Changes the free velocities on open boundaries to get -a better divergence-free field.""", - ), - ), -# ----------------------------------- - ELEMENTS_MASKED_BY_USER = SIMP(statut ='o', -# ----------------------------------- - typ = bool, - defaut = False, - fr = """Si OUI, remplir le sous-programme \telfile{MASKOB}.""", - ang = """If YES, fill in the subroutine \telfile{MASKOB}.""", - ), -# ----------------------------------- - b_ELEMENTS_MASKED_BY_USERG = BLOC(condition="ELEMENTS_MASKED_BY_USER == True", -# ----------------------------------- -# ----------------------------------- - Consigne = SIMP(statut ="o", homo="information", typ="TXM", -# ----------------------------------- - defaut = "Rewrite subroutine maskob"), - ), -# ----------------------------------- - PHYSICAL_PARAMETERS = FACT(statut='o', -# ----------------------------------- -# ----------------------------------- - GRAVITY_ACCELERATION = SIMP(statut ='f', -# ----------------------------------- - typ = 'R', - defaut = 9.81, - fr = """Fixe la valeur de l''acceleration de la pesanteur en m/s$^2$.""", - ang = """Sets the value of the acceleration due to gravity in m/s$^2$.""", - ), -# ----------------------------------- - AVERAGE_WATER_DENSITY = SIMP(statut ='f', -# ----------------------------------- - typ = 'R', - defaut = 1025., - fr = """Valeur de la densite moyenne dans le domaine, voir -\telfile{DRSURR}.""", - ang = """Average water density in the domain, see subroutine -\telfile{DRSURR}.""", - ), -# ----------------------------------- - FRICTION = FACT(statut='o', -# ----------------------------------- -# ----------------------------------- - LAW_OF_BOTTOM_FRICTION = SIMP(statut ='o', -# ----------------------------------- - typ = 'TXM', - into = ["NO FRICTION","HAALAND","CHEZY","STRICKLER","MANNING","NIKURADSE"], - defaut = "CHEZY", - fr = """Selectionne le type de formulation utilisee pour le calcul -du frottement sur le fond. -Les lois possibles sont les suivantes (cf. Note de principe) : -\begin{itemize} -\item 0 : pas de frottement sur le fond ; -\item 1 : formule de Haaland ; -\item 2 : formule de Chezy ; -\item 3 : formule de Strickler ; -\item 4 : formule de Manning ; -\item 5 : formule de Nikuradse. -\end{itemize}""", - ang = """Selects the type of formulation used for the bottom friction. -The possible laws are as follows (refer to the Principle note): -\begin{itemize} -\item 0: no friction against bottom, -\item 1: Haaland''s formula, -\item 2: Chezy''s formula, -\item 3: Strickler''s formula, -\item 4: Manning''s formula, -\item 5: Nikuradse''s formula. -\end{itemize}""", - ), -# ----------------------------------- - b_LAW_OF_BOTTOM_FRICTIONG = BLOC(condition="LAW_OF_BOTTOM_FRICTION != 'NO FRICTION'", -# ----------------------------------- -# ----------------------------------- - FRICTION_COEFFICIENT_FOR_THE_BOTTOM = SIMP(statut ='o', -# ----------------------------------- - typ = 'R', - defaut = 60., - fr = """Fixe la valeur du coefficient de frottement au fond, -si constant.""", - ang = """Friction coefficient on the bottom, if constant.""", - ), - ), -# ----------------------------------- - LAW_OF_FRICTION_ON_LATERAL_BOUNDARIES = SIMP(statut ='o', -# ----------------------------------- - typ = 'TXM', - into = ["NO FRICTION","COEFFICIENT TAKEN IN BOUNDARY CONDITIONS FILE","IDEM","IDEM","IDEM","NIKURADSE"], - defaut = "NO FRICTION", - fr = """Selectionne le type de formulation utilisee pour le calcul -du frottement sur les parois laterales. -Les lois possibles sont les suivantes (cf. Note de principe) : -\begin{itemize} -\item 0 : pas de frottement, ou \telfile{AUBOR} donne par le -\telkey{FICHIER DES CONDITIONS AUX LIMITES} ; -\item 5 : formule de Nikuradse. -\end{itemize}""", - ang = """Selects the type of formulation used for the friction on -lateral boundaries. The possible laws are as follows (refer to the -Principle note): -\begin{itemize} -\item 0: no friction, or \telfile{AUBOR} given by the -\telkey{BOUNDARY CONDITION FILE}, -\item 5: Nikuradse''s formula. -\end{itemize}""", - ), -# ----------------------------------- - b_LAW_OF_FRICTION_ON_LATERAL_BOUNDARIESG = BLOC(condition="LAW_OF_FRICTION_ON_LATERAL_BOUNDARIES != 'NO FRICTION'", -# ----------------------------------- -# ----------------------------------- - FRICTION_COEFFICIENT_FOR_LATERAL_SOLID_BOUNDARIES = SIMP(statut ='o', -# ----------------------------------- - typ = 'R', - defaut = 60., - fr = """Fixe la valeur du coefficient de frottement sur les parois, -si constant.""", - ang = """Friction coefficient on the lateral boundaries, if constant.""", - ), - ), - ), -# ----------------------------------- - CORIOLIS_EFFECT = FACT(statut='f', -# ----------------------------------- -# ----------------------------------- - CORIOLIS = SIMP(statut ='o', -# ----------------------------------- - typ = bool, - defaut = False, - fr = """Prise en compte ou non de la force de Coriolis.""", - ang = """The Coriolis force is taken into account or ignored.""", - ), -# ----------------------------------- - b_CORIOLISG = BLOC(condition="CORIOLIS == True", -# ----------------------------------- -# ----------------------------------- - CORIOLIS_COEFFICIENT = SIMP(statut ='o', -# ----------------------------------- - typ = 'R', - defaut = 0., - fr = """Fixe la valeur du coefficient de la force de Coriolis. -Celui-ci doit etre calcule en fonction de la latitude $l$ -par la formule -$FCOR = 2 \omega sin(l)$ , -$\omega$ etant la vitesse de rotation de la terre. -$\omega$ = 7.29 10-5 rad/s.\\ -Les composantes de la force de Coriolis sont alors :\\ -$FU = FCOR \times V,$\\ -$FV = -FCOR \times U.$ -Lorsqu''on utilise les coordonnees spheriques, le coefficient de -Coriolis est calcule automatiquement.""", - ang = """Sets the value of the Coriolis force coefficient, -in cartesian coordinates. -This coefficient, denoted \telfile{FCOR} in the code, should be equal to -$2 \omega \sin(l)$ where $\omega$ denotes the earth angular speed of -rotation and $l$ the latitude. $\omega$ = 7.29 10-5 rad/s.\\ -The Coriolis force components are then:\\ -$FU = FCOR \times V,$\\ -$FV = -FCOR \times U.$\\ -When using the spherical coordinates, the Coriolis coefficient is -automatically computed.""", - ), - ), - ), -# ----------------------------------- - METEOROLOGY = FACT(statut='f', -# ----------------------------------- -# ----------------------------------- - WIND = SIMP(statut ='o', -# ----------------------------------- - typ = bool, - defaut = False, - fr = """Prise en compte ou non des effets du vent.""", - ang = """Determines whether the wind effects are to be taken into -account or not.""", - ), -# ----------------------------------- - b_WINDG = BLOC(condition="WIND == True", -# ----------------------------------- -# ----------------------------------- - OPTION_FOR_WIND = SIMP(statut ='o', -# ----------------------------------- - typ = 'TXM', - into = ["constant in time and space","variable in time given by formatted file","variable in time and space given by formatted file"], - defaut = "constant in time and space", - fr = """Donne les options pour introduire le vent : -\begin{itemize} -\item 1 : constant en temps et en espace (donne par les mots cles -\telkey{VITESSE DU VENT SUIVANT X} et \telkey{VITESSE DU VENT SUIVANT Y} -) ; -\item 2 : variable en temps donne par fichier formate ; -\item 3 : variable en temps et en espace donne par fichier formate -ou un fichier binaire. -\end{itemize}""", - ang = """Gives the option for managing the wind: -\begin{itemize} -\item 1: constant in time and space, given by the keywords -\telkey{WIND VELOCITY ALONG X} and \telkey{WIND VELOCITY ALONG Y}, -\item 2: variable in time and constant in space, given by formatted -file, -\item 3: variable in time and space, given by formatted file or by -a binary file. -\end{itemize}""", - ), -# ----------------------------------- - b_OPTION_FOR_WINDG = BLOC(condition="OPTION_FOR_WIND == 'variable in time given by formatted file' or OPTION_FOR_WIND == 'variable in time and space given by formatted file'", -# ----------------------------------- -# ----------------------------------- - Consigne = SIMP(statut ="o", homo="information", typ="TXM", -# ----------------------------------- - defaut = "Give the ascii atmospheric data file"), - ), -# ----------------------------------- - WIND_VELOCITY_ALONG_X = SIMP(statut ='o', -# ----------------------------------- - typ = 'R', - defaut = 0., - fr = """Composante de la vitesse du vent suivant -l''axe des $x$ (m/s), si constante.""", - ang = """Wind velocity, component along $x$ axis (m/s), if constant.""", - ), -# ----------------------------------- - WIND_VELOCITY_ALONG_Y = SIMP(statut ='o', -# ----------------------------------- - typ = 'R', - defaut = 0., - fr = """Composante de la vitesse du vent suivant -l''axe des $y$ (m/s), si constante.""", - ang = """Wind velocity, component along $y$ axis (m/s), if constant.""", - ), -# ----------------------------------- - COEFFICIENT_OF_WIND_INFLUENCE = SIMP(statut ='o', -# ----------------------------------- - typ = 'R', - defaut = 0., - fr = """Fixe la valeur du coefficient d''entrainement du vent. -Voir le manuel utilisateur pour la valeur a donner.""", - ang = """Sets the value of the wind driving coefficient. -See the User Manual for the value to give.""", - ), -# ----------------------------------- - COEFFICIENT_OF_WIND_INFLUENCE_VARYING_WITH_WIND_SPEED = SIMP(statut ='o', -# ----------------------------------- - typ = bool, - defaut = False, - fr = """Si OUI, la valeur du coefficient d''entrainement du vent est -calculee en fonction de la vitesse du vent. -La valeur de \telkey{COEFFICIENT D''INFLUENCE DU VENT} est ecrasee.""", - ang = """If YES, the value of the wind driving coefficient is computed -with respect to the wind velocity. -The value of \telkey{COEFFICIENT OF WIND INFLUENCE} is overwritten.""", - ), -# ----------------------------------- - THRESHOLD_DEPTH_FOR_WIND = SIMP(statut ='o', -# ----------------------------------- - typ = 'R', - defaut = 1., - fr = """Retire la force due au vent dans les petites profondeurs""", - ang = """Wind is not taken into account for depths smaller -than this value.""", - ), - ), -# ----------------------------------- - AIR_PRESSURE = SIMP(statut ='o', -# ----------------------------------- - typ = bool, - defaut = False, - fr = """Permet de decider si l''on prend ou non en compte l''influence -d''un champ de pression.""", - ang = """Sets whether the influence of an atmosphere -pressure field is taken into account or not.""", - ), -# ----------------------------------- - b_AIR_PRESSUREG = BLOC(condition="AIR_PRESSURE == True", -# ----------------------------------- -# ----------------------------------- - VALUE_OF_ATMOSPHERIC_PRESSURE = SIMP(statut ='o', -# ----------------------------------- - typ = 'R', - defaut = 100000., - fr = """Donne la valeur de la pression atmospherique lorsqu''elle est -constante en temps et en espace.""", - ang = """Gives the value of atmospheric pressure when it is constant -in time and space.""", - ), - ), -# ----------------------------------- - RAIN_OR_EVAPORATION = SIMP(statut ='o', -# ----------------------------------- - typ = bool, - defaut = False, - fr = """Pour ajouter un apport ou une perte d''eau en surface. -Voir le mot-cle \telkey{PLUIE OU EVAPORATION EN MM PAR JOUR}.""", - ang = """Enables to add or remove water at the free surface. -See the keyword \telkey{RAIN OR EVAPORATION IN MM PER DAY}.""", - ), -# ----------------------------------- - b_RAIN_OR_EVAPORATIONG = BLOC(condition="RAIN_OR_EVAPORATION == True", -# ----------------------------------- -# ----------------------------------- - RAIN_OR_EVAPORATION_IN_MM_PER_DAY = SIMP(statut ='o', -# ----------------------------------- - typ = 'R', - defaut = 0., - fr = """Pour ajouter un apport ou une perte d''eau en surface.""", - ang = """Specifies the amount of water to add or remove at the -free surface.""", - ), - ), -# ----------------------------------- - ASCII_ATMOSPHERIC_DATA_FILE = SIMP(statut ='f', -# ----------------------------------- - typ = ('Fichier','All Files (*)'), - defaut = '', - fr = """Fichier de donnees ASCII contenant les informations -atmospheriques variables en temps.""", - ang = """ASCII data file containing the atmospheric data varying in -time.""", - ), -# ----------------------------------- - BINARY_ATMOSPHERIC_DATA_FILE = SIMP(statut ='f', -# ----------------------------------- - typ = ('Fichier','All Files (*)'), - defaut = '', - fr = """Fichier de donnees code en binaire contenant les informations -atmospheriques variables en temps et en espace sur le maillage.""", - ang = """Binary-coded data file containing the atmospheric data varying -in time and space on the mesh.""", - ), -# ----------------------------------- - BINARY_ATMOSPHERIC_DATA_FILE_FORMAT = SIMP(statut ='f', -# ----------------------------------- - typ = 'TXM', - into = ['SERAFIN?','SERAFIND','MED'], - defaut = 'SERAFIN?', - fr = """Format du \telkey{FICHIER BINAIRE DE DONNEES ATMOSPHERIQUES}. -Les valeurs possibles sont : -\begin{itemize} -\item SERAFIN : format standard simple precision pour \tel ; -\item SERAFIND: format standard double precision pour \tel ; -\item MED : format MED double precision base sur HDF5. -\end{itemize}""", - ang = """Format of the \telkey{BINARY ATMOSPHERIC DATA FILE}. -Possible choices are: -\begin{itemize} -\item SERAFIN : classical single precision format in \tel, -\item SERAFIND: classical double precision format in \tel, -\item MED : MED double precision format based on HDF5. -\end{itemize}""", - ), - ), -# ----------------------------------- - SOURCES = FACT(statut='f', -# ----------------------------------- -# ----------------------------------- - SOURCES_FILE = SIMP(statut ='f', -# ----------------------------------- - typ = ('Fichier','All Files (*)'), max='**', - defaut = '', - fr = """Nom du fichier contenant les informations variables -en temps des sources.""", - ang = """Name of the file containing time-dependent -information on sources.""", - ), -# ----------------------------------- - GLOBAL_NUMBERS_OF_SOURCE_NODES = SIMP(statut ='f', -# ----------------------------------- - typ = 'I', min= 2, max= 2, - fr = """Numeros globaux des noeuds du maillage 2D sur lequels sont affectes des -points source.""", - ang = """Global numbers of nodes in the 2D mesh that correspond to source point -locations.""", - ), -# ----------------------------------- - TYPE_OF_SOURCES = SIMP(statut ='o', -# ----------------------------------- - typ = 'TXM', - into = ["Normal","Dirac"], - defaut = "Normal", - fr = """Definit comment les sources sont calculees : -\begin{itemize} -\item 1 : Source portee par une base elements finis ; -\item 2 : Source portee par une fonction de Dirac -(recommande quand il y a beaucoup de sources). -\end{itemize}""", - ang = """Defines how the sources are computed: -\begin{itemize} -\item 1: Source term multiplied by a finite element basis, -\item 2: Source term multiplied by a Dirac function -(recommended with high numbers of sources). -\end{itemize}""", - ), -# ----------------------------------- - ABSCISSAE_OF_SOURCES = SIMP(statut ='f', -# ----------------------------------- - typ = 'R', min= 2, max= 2, - fr = """Nombres reels donnant les abscisses d eventuelles sources de -debit (en metres). La source sera placee au noeud du maillage le plus -proche.""", - ang = """Floats giving the abscissae of potential sources of flow rates -(in meters). The source will be located at the nearest node in the -mesh.""", - ), -# ----------------------------------- - ORDINATES_OF_SOURCES = SIMP(statut ='f', -# ----------------------------------- - typ = 'R', min= 2, max= 2, - fr = """Nombres reels donnant les ordonnees d''eventuelles sources de -debit (en metres). La source sera placee au noeud du maillage le plus -proche.""", - ang = """Floats giving the ordinates of potential sources of flow rates -(in meters). The source will be located at the nearest node in the -mesh.""", - ), -# ----------------------------------- - ELEVATIONS_OF_SOURCES = SIMP(statut ='f', -# ----------------------------------- - typ = 'R', min= 2, max= 2, - fr = """Fixe la hauteur des sources. -Les sources sont automatiquement recalees sur le plan le plus proche. -L''utilisation d''un plan fixe est alors conseillee afin d''eviter que -le plan le plus proche ne change en cas de variation de la hauteur -d''eau locale.""", - ang = """Sets the height of the sources. -The source will be located at the nearest plane in the mesh. -The use of a fixed plane is then recommended to avoid the change -of the nearest plane in case of variation of local water height.""", - ), -# ----------------------------------- - WATER_DISCHARGE_OF_SOURCES = SIMP(statut ='f', -# ----------------------------------- - typ = 'R', min= 2, max= 2, - fr = """Specifie le debit de chaque source. -Un debit positif signifie qu''il s''agit d''un apport de fluide.""", - ang = """Specifies the discharge for every source. -A positive discharge means that fluid is added.""", - ), -# ----------------------------------- - VELOCITIES_OF_THE_SOURCES_ALONG_X = SIMP(statut ='f', -# ----------------------------------- - typ = 'R', min= 2, max= 2, - fr = """Permet de specifier la composante selon $x$ de la vitesse aux -sources. Si rien n''est specifie, les sources diffusent sans vitesse -dans toutes les directions (cf. cas de validation source).""", - ang = """Specifies the compoment along $x$ of the velocities of the -sources. If nothing is specified, the sources diffuse without any -velocity in every direction (cf. validation case source).""", - ), -# ----------------------------------- - VELOCITIES_OF_THE_SOURCES_ALONG_Y = SIMP(statut ='f', -# ----------------------------------- - typ = 'R', min= 2, max= 2, - fr = """Permet de specifier la composante selon $y$ de la vitesse aux -sources. Si rien n''est specifie, les sources diffusent sans vitesse -dans toutes les directions (cf. cas de validation source).""", - ang = """Specifies the compoment along y of the velocities of the -sources. If nothing is specified, the sources diffuse without any -velocity in every direction (cf. validation case source).""", - ), -# ----------------------------------- - VELOCITIES_OF_THE_SOURCES_ALONG_Z = SIMP(statut ='f', -# ----------------------------------- - typ = 'R', min= 2, max= 2, - fr = """Permet de specifier la composante selon $z$ de la vitesse aux -sources. Si rien n''est specifie, les sources diffusent sans vitesse -dans toutes les directions (cf. cas de validation source).""", - ang = """Specifies the compoment along $z$ of the velocities of the -sources. If nothing is specified, the sources diffuse without any -velocity in every direction (cf. validation case source).""", - ), - ), -# ----------------------------------- - WAVE = FACT(statut='f', -# ----------------------------------- -# ----------------------------------- - WAVE_DRIVEN_CURRENTS = SIMP(statut ='o', -# ----------------------------------- - typ = bool, - defaut = False, - fr = """Active la prise en compte des courants de houle -(voir le sous-programme \telfile{TRISOU}).""", - ang = """Wave driven currents are taken into account, -see subroutine \telfile{TRISOU}.""", - ), -# ----------------------------------- - b_WAVE_DRIVEN_CURRENTSG = BLOC(condition="WAVE_DRIVEN_CURRENTS == True", -# ----------------------------------- -# ----------------------------------- - RECORD_NUMBER_IN_WAVE_FILE = SIMP(statut ='o', -# ----------------------------------- - typ = 'I', - defaut = 1, - fr = """Numero d''enregistrement a lire par \telemac{3d} dans le -fichier des courants de houle.""", - ang = """Record number to be read by \telemac{3d} in the wave driven -currents file.""", - ), - ), - ), - ), -# ----------------------------------- - BOUNDARY_CONDITIONS = FACT(statut='o', -# ----------------------------------- -# ----------------------------------- - PRESCRIBED_ELEVATIONS = SIMP(statut ='f', -# ----------------------------------- - typ = 'R', min=0, max='**', - fr = """Fixe la cote sur les frontieres a cote imposee.""", - ang = """Sets the elevation on elevation-imposed boundaries.""", - ), -# ----------------------------------- - PRESCRIBED_FLOWRATES = SIMP(statut ='f', -# ----------------------------------- - typ = 'R', min=0, max='**', - fr = """Fixe le debit sur les frontieres a debit impose.""", - ang = """Sets the value for flow rate on flow -rate-imposed boundaries.""", - ), -# ----------------------------------- - PRESCRIBED_VELOCITIES = SIMP(statut ='f', -# ----------------------------------- - typ = 'R', min=0, max='**', - fr = """Fixe la vitesse sur les frontieres a vitesse imposee.""", - ang = """Sets the magnitude of velocity on velocity-imposed boundaries.""", - ), -# ----------------------------------- - LIQUID_BOUNDARIES_FILE = SIMP(statut ='f', -# ----------------------------------- - typ = ('Fichier','All Files (*)'), max='**', - defaut = '', - fr = """Fichier de variations en temps des conditions aux limites.""", - ang = """File containing the variations in time of boundary conditions.""", - ), -# ----------------------------------- - VELOCITY_PROFILES = SIMP(statut ='f', -# ----------------------------------- - typ = 'TXM', min= 2, max= 2, - into = ["constant normal profile","ubor and vbor given in the conlim file","normal velocity given in ubor in the conlim file","Velocity=square root elevation","like 4 with virtual depth, see help"], - fr = """Permet de specifier le type de profil horizontal de vitesse. -Les choix possibles sont : -\begin{itemize} -\item 1 : profil normal constant ; -\item 2 : $u$ et $v$ donnes dans le -\telkey{FICHIER DES CONDITIONS AUX LIMITES} ; -\item 3 : vitesse normale donnee dans \telfile{UBOR} dans le -\telkey{FICHIER DES CONDITIONS AUX LIMITES} ; -\item 4 : vitesse normale en $\sqrt{h}$ ; -\item 5 : comme 4 mais hauteur virtuelle calculee avec -la surface libre la plus basse de la frontiere. -\end{itemize}""", - ang = """Specifies the type of horizontal profile of velocities. -Possible choices are: -\begin{itemize} -\item 1: constant normal profile, -\item 2: $u$ and $v$ given in the -\telkey{BOUNDARY CONDITION FILE}, -\item 3: normal velocity given in \telfile{UBOR} in the -\telkey{BOUNDARY CONDITION FILE}, -\item 4: normal velocity in $\sqrt{h}$, -\item 5: like 4 but virtual depth based on -the lowest elevation of the boundary. -\end{itemize}""", - ), -# ----------------------------------- - VELOCITY_VERTICAL_PROFILES = SIMP(statut ='f', -# ----------------------------------- - typ = 'TXM', min= 2, max= 2, - into = ["User defined","Constant","Logarithmic"], - fr = """Permet de specifier le type de profil vertical de vitesse. -Les choix possibles sont : -\begin{itemize} -\item 0 : programmation utilisateur ; -\item 1 : constant ; -\item 2 : logarithmique. -\end{itemize}""", - ang = """Specifies the type of vertical profile of velocity. -Possible choices are: -\begin{itemize} -\item 0: defined by user, -\item 1: constant, -\item 2: logarithmic. -\end{itemize}""", - ), -# ----------------------------------- - STAGE_DISCHARGE_CURVES = SIMP(statut ='f', -# ----------------------------------- - typ = 'I', min=10, max=10, - fr = """Indique si une courbe de tarage doit etre utilisee -pour une frontiere (une valeur par frontiere liquide) : -\begin{itemize} -\item 0 : non ; -\item 1 : Z(Q) ; -\item 2 : Q(Z). Pas encore programme. -\end{itemize}""", - ang = """Specifies if a discharge-elevation curve must be used -for a given boundary (one value per open boundary): -\begin{itemize} -\item 0: no, -\item 1: Z(Q), -\item 2: Q(Z). Not yet implemented. -\end{itemize}""", - ), -# ----------------------------------- - b_STAGE_DISCHARGE_CURVESG = BLOC(condition="STAGE_DISCHARGE_CURVES != 'no'", -# ----------------------------------- -# ----------------------------------- - STAGE_DISCHARGE_CURVES_FILE = SIMP(statut ='f', -# ----------------------------------- - typ = ('Fichier','All Files (*)'), max='**', - defaut = '', - fr = """Nom du fichier contenant les courbes de tarage.""", - ang = """Name of the file containing stage-discharge curves.""", - ), - ), -# ----------------------------------- - OPTION_FOR_LIQUID_BOUNDARIES = SIMP(statut ='f', -# ----------------------------------- - typ = 'I', min= 2, max= 2, - fr = """On donne un entier par frontiere liquide. -Les choix possibles sont : -\begin{itemize} -\item 1 : conditions aux limites classiques ; -\item 2 : methode de Thompson avec calcul de caracteristiques. -\end{itemize}""", - ang = """One integer per liquid boundary is given. -Possible choices are: -\begin{itemize} -\item 1: classical boundary conditions, -\item 2: Thompson method based on characteristics. -\end{itemize}""", - ), -# ----------------------------------- - TURBULENCE_REGIME_FOR_THE_BOTTOM = SIMP(statut ='f', -# ----------------------------------- - typ = 'TXM', - into = ["smooth","rough","rough compatibility with old versions"], - defaut = "rough", - fr = """Permet de definir le regime de turbulence pour le fond dans le -cas du modele de longueur de melange ou du modele $k$-$\epsilon$ : -\begin{itemize} -\item 1 : lisse ; -\item 2 : rugueux ; -\item 3 : rugueux (compatibilite avec anciennes versions). -\end{itemize}""", - ang = """Defines the turbulence regime for the bottom in the case of a -$k$-$\epsilon$ or mixing-length model: -\begin{itemize} -\item 1: smooth, -\item 2: rough, -\item 3: rough also (for compatibility with old versions). -\end{itemize}""", - ), -# ----------------------------------- - TURBULENCE_REGIME_FOR_LATERAL_SOLID_BOUNDARIES = SIMP(statut ='f', -# ----------------------------------- - typ = 'TXM', - into = ["smooth","rough"], - defaut = "rough", - fr = """Definit le regime de turbulence pour les parois laterales : -\begin{itemize} -\item 1 : lisse ; -\item 2 : rugueux. -\end{itemize}""", - ang = """Defines the turbulence regime for the lateral boundaries: -\begin{itemize} -\item 1: smooth, -\item 2: rough. -\end{itemize}""", - ), -# ----------------------------------- - BOUNDARY_CONDITION_ON_THE_BOTTOM = SIMP(statut ='o', -# ----------------------------------- - typ = 'TXM', - into = ["LOG LAW FOR VELOCITIES ON BOTTOM","NO SLIP FOR VELOCITIES ON BOTTOM"], - defaut = "LOG LAW FOR VELOCITIES ON BOTTOM", - fr = """Specifie le type de conditions aux limites au fond. -Les choix possibles sont : -\item 1 : conditions de Neumann pour les vitesses au fond; -\item 2 : vitesses nulles au fond. Va de pair logiquement avec - un bon raffinement du maillage au fond""", - ang = """Specifies the type of boundary conditions on the bottom -layer. Possible choices are: -\begin{itemize} -\item 1: Neumann conditions on velocity on bottom, -\item 2: velocities will be set to 0. Should be linked to -a refined mesh near the bottom. -\end{itemize}""", - ), -# ----------------------------------- - VELOCITY_PROJECTED_ON_SOLID_LATERAL_BOUNDARIES = SIMP(statut ='o', -# ----------------------------------- - typ = bool, - defaut = True, - fr = """$\vec{U}.\vec{n} = 0$ sur les parois laterales solides est force -en fin de boucle en temps.""", - ang = """Will ensure $\vec{U}.\vec{n} = 0$ on solid lateral boundaries -by a projection at the end of time loop.""", - ), -# ----------------------------------- - VELOCITY_PROJECTED_ON_BOTTOM = SIMP(statut ='o', -# ----------------------------------- - typ = bool, - defaut = True, - fr = """$\vec{U}.\vec{n} = 0$ sur le fond est force en fin de boucle -en temps.""", - ang = """Will ensure $\vec{U}.\vec{n} = 0$ on bottom by a projection -at the end of time loop.""", - ), -# ----------------------------------- - OPEN_BOUNDARY_CONDITIONS_ON_THE_BED = SIMP(statut ='f', -# ----------------------------------- - typ = bool, - defaut = False, - fr = """Determine s''il y a des conditions ouvertes sur le fond.""", - ang = """Defines if there are open boundary conditions -on the bed.""", - ), -# ----------------------------------- - PRESCRIBED_FLOWRATES_ON_THE_BED = SIMP(statut ='f', -# ----------------------------------- - typ = 'R', min=0, max='**', - defaut = [0.,0.,0.,0.,0.,0.,0.,0.,0.,0.], - fr = """Fixe le debit sur les frontieres a debit impose du fond.""", - ang = """Sets the value for flow rate on flow -rate-imposed bed boundaries.""", - ), - ), -# ----------------------------------- - INITIALIZATION = FACT(statut='o', -# ----------------------------------- -# ----------------------------------- - INITIAL_CONDITIONS = SIMP(statut ='o', -# ----------------------------------- - typ = 'TXM', - into = ['ZERO ELEVATION','CONSTANT ELEVATION','ZERO DEPTH','CONSTANT DEPTH','SPECIAL','PARTICULAR','TPXO SATELLITE ALTIMETRY'], - defaut = 'ZERO ELEVATION', - fr = """Permet de definir les conditions initiales sur -les hauteurs d''eau notamment. -Les valeurs possibles sont : -\begin{itemize} -\item COTE NULLE : Initialise la cote de surface libre a 0. - Les hauteurs d''eau initiales sont alors retrouvees en - faisant la difference entre les cotes de surface libre - et du fond ; -\item COTE CONSTANTE : Initialise la cote de surface libre a la - valeur donnee par le mot-cle COTE INITIALE. Les hauteurs - d''eau initiales sont calculees comme precedemment ; -\item HAUTEUR NULLE : Initialise les hauteurs d''eau a 0 ; -\item HAUTEUR CONSTANTE : Initialise les hauteurs d''eau a la valeur - donnee par le mot-cle HAUTEUR INITIALE ; -\item ALTIMETRIE SATELLITE TPXO : Les conditions initiales sur la -hauteur d''eau et les vitesses sont etablies sur la base des donnees -satellite TPXO dont les 8 premieres composantes ont ete extraites et -sauvees dans le fichier ; -\telkey{BASE BINAIRE DE DONNEES DE MAREE} ; -\item PARTICULIERES : Les conditions initiales sur la hauteur d''eau -doivent etre precisees dans le sous-programme \telfile{CONDIN}. -\end{itemize}""", - ang = """Makes it possible to define the initial conditions of -the water depth. -The possible values are as follows: -\begin{itemize} -\item ZERO ELEVATION: Initializes the free surface elevation to 0. -The initial water depths are then found by computing the difference -between the free surface and the bottom, -\item CONSTANT ELEVATION: Initializes the water elevation to the value -given by the keyword \telkey{INITIAL ELEVATION}. -The initial water depths are computed as in the previous case, -\item ZERO DEPTH: Initializes the water depths to 0. -\item CONSTANT DEPTH: Initializes the water depths to the value given -by the keyword \telkey{INITIAL DEPTH}, -\item TPXO SATELITE ALTIMETRY: The initial conditions on the free -surface and velocities are established from the satellite program -data given by the harmonic constants database coming from OSU -(e.g. TPXO), -\item SPECIAL or PARTICULAR: The initial conditions with the water depth -should be stated in the \telfile{CONDIN} subroutine. -\end{itemize}""", - ), -# ----------------------------------- - b_INITIAL_CONDITIONSG = BLOC(condition="INITIAL_CONDITIONS == 'CONSTANT ELEVATION'", -# ----------------------------------- -# ----------------------------------- - INITIAL_ELEVATION = SIMP(statut ='o', -# ----------------------------------- - typ = 'R', - defaut = 0., - fr = """Valeur utilisee avec l''option : -\telkey{CONDITIONS INITIALES} : ''COTE CONSTANTE''.""", - ang = """Value to be used with the option : -\telkey{INITIAL CONDITIONS} : ''CONSTANT ELEVATION''.""", - ), - ), -# ----------------------------------- - b_INITIAL_CONDITIONSH = BLOC(condition="INITIAL_CONDITIONS == 'CONSTANT DEPTH'", -# ----------------------------------- -# ----------------------------------- - INITIAL_DEPTH = SIMP(statut ='o', -# ----------------------------------- - typ = 'R', - defaut = 0., - fr = """Valeur utilisee avec l''option : -\telkey{CONDITIONS INITIALES} : ''HAUTEUR CONSTANTE''.""", - ang = """Value to be used along with the option: -\telkey{INITIAL CONDITIONS} : ''CONSTANT DEPTH''.""", - ), - ), - ), -# ----------------------------------- - NUMERICAL_PARAMETERS = FACT(statut='o', -# ----------------------------------- -# ----------------------------------- - MATRIX_STORAGE = SIMP(statut ='o', -# ----------------------------------- - typ = 'I', - defaut = 3, - fr = """Permet de definir la methode de stockage des matrices. -Les choix possibles sont : -\begin{itemize} -\item 1 : EBE classique ; -\item 3 : stockage par segments. -\end{itemize}""", - ang = """Defines the method to store matrices. The possible choices are: -\begin{itemize} -\item 1: classical EBE, -\item 3: edge-based storage. -\end{itemize}""", - ), -# ----------------------------------- - MASS_LUMPING_FOR_DEPTH = SIMP(statut ='o', -# ----------------------------------- - typ = 'R', - defaut = 0., - fr = """\telemac{3d} offre la possibilite d''effectuer du -mass-lumping sur $H$ ou $U$. -Ceci revient a ramener tout ou partie (suivant la valeur de ce -coefficient) des matrices \telfile{AM1 (H)} ou \telfile{AM2 (U)} -et \telfile{AM3 (V)} sur leur diagonale. -Cette technique permet d''accelerer le code dans des proportions tres -importantes et de le rendre egalement beaucoup plus stable. Cependant -les solutions obtenues se trouvent lissees. -Ce parametre fixe le taux de mass-lumping effectue sur $H$. -Utilisation deconseillee.""", - ang = """\telemac{3d} offers the posibility to perform mass-lumping -on $H$ or $U$. -This gathers all or part (given the value of the coefficient) -of the \telfile{AM1(H)} or \telfile{AM2(Ut)} and \telfile{AM3(V)} -matrices on their diagonal. -This technique can speed-up the code a lot and also render it -more stable. -Yet, the solutions are smoothened. -This parameter sets the mass-lumping amount done for $H$. -Not recommended for use.""", - ), -# ----------------------------------- - HYDROSTATIC_INCONSISTENCY_FILTER = SIMP(statut ='f', -# ----------------------------------- - typ = bool, - defaut = False, - fr = """Permet de filtrer les inconsistances hydrostatiques.""", - ang = """Allows to filter hydrostatic inconsistencies.""", - ), -# ----------------------------------- - DISCRETISATION = FACT(statut='o', -# ----------------------------------- -# ----------------------------------- - ELEMENT = SIMP(statut ='o', -# ----------------------------------- - typ = 'TXM', - defaut = 'PRISM', - fr = """Permet de specifier le type d''element utilise pour le calcul. -Les choix possibles sont : -\begin{itemize} -\item PRISME : maillages de triangles empiles ; -\item TETRAEDRE : decoupage en tetraedres des prismes. -\end{itemize}""", - ang = """Specifies the type of elements used in the computation. -The possible choices are: -\begin{itemize} -\item PRISM: superimposed meshes of triangles, -\item TETRAHEDRON: the same but prisms are split into tetrahedrons. -\end{itemize}""", - ), - ), -# ----------------------------------- - PROPAGATION = FACT(statut='o', -# ----------------------------------- -# ----------------------------------- - SOLVER_FOR_PROPAGATION = SIMP(statut ='o', -# ----------------------------------- - typ = 'TXM', - into = ["conjugate gradient","conjugate residual","conjugate gradient on a normal equation","minimum error","squared conjugate gradient","cgstab","gmres","direct solver"], - defaut = "conjugate gradient", - fr = """Permet de choisir le solveur utilise pour la resolution de -l''etape de propagation. -Les choix possibles sont : -\begin{itemize} -\item 1 : gradient conjugue ; -\item 2 : residu conjugue ; -\item 3 : gradient conjugue sur equation normale ; -\item 4 : erreur minimale ; -\item 5 : gradient conjugue carre ; -\item 6 : CGSTAB ; -\item 7 : GMRES ; -\item 8 : solveur direct. -\end{itemize}""", - ang = """Choice of the solver for the propagation equation. -Possible choices are: -\begin{itemize} -\item 1: conjugate gradient, -\item 2: conjugate residual, -\item 3: conjugate gradient on a normal equation, -\item 4: minimum error, -\item 5: squared conjugate gradient, -\item 6: CGSTAB, -\item 7: GMRES, -\item 8: direct solver. -\end{itemize}""", - ), -# ----------------------------------- - b_SOLVER_FOR_PROPAGATIONG = BLOC(condition="SOLVER_FOR_PROPAGATION == 'gmres'", -# ----------------------------------- -# ----------------------------------- - OPTION_OF_SOLVER_FOR_PROPAGATION = SIMP(statut ='o', -# ----------------------------------- - typ = 'I', - defaut = 3, - fr = """Dimension de l''espace de Krylov pour la methode GMRES (7).""", - ang = """Dimension of Krylov space for the GMRES method (7).""", - ), - ), -# ----------------------------------- - ACCURACY_FOR_PROPAGATION = SIMP(statut ='o', -# ----------------------------------- - typ = 'R', - defaut = 1.E-6, - fr = """Fixe la precision demandee pour l''etape de propagation.""", - ang = """Sets the accuracy needed for the computation -of the propagation step.""", - ), -# ----------------------------------- - MAXIMUM_NUMBER_OF_ITERATIONS_FOR_PROPAGATION = SIMP(statut ='o', -# ----------------------------------- - typ = 'I', - defaut = 200, - fr = """Les algorithmes utilises pour la resolution de l''etape de -propagation etant iteratifs; il est necessaire de limiter le nombre -d''iterations autorisees. -Remarque : un maximum de 40 iterations par pas de temps semble -raisonnable.""", - ang = """Since the algorithms used for solving the propagation step are -iterative, the allowed number of iterations should be limited. -NOTE: a maximum number of 40 iterations per time step seems to be -reasonable.""", - ), -# ----------------------------------- - PRECONDITIONING_FOR_PROPAGATION = SIMP(statut ='o', -# ----------------------------------- - typ = 'TXM', - into = ["no preconditioning","diagonal","diagonal condensed","diagonal with absolute values","Crout","Gauss-Seidel EBE","Matrix defined by the user","diagonal and Crout","direct solver on the vertical","diagonal condensed and Crout","diagonal and direct solver on the vertical"], - defaut = "diagonal", - fr = """Permet de preconditionner le systeme de l''etape de propagation -afin d''accelerer la convergence lors de sa resolution. Les choix -possibles sont : -\begin{itemize} -\item 0 : aucun ; -\item 2 : diagonal ; -\item 3 : diagonal avec matrice condensee ; -\item 5 : diagonal avec valeurs absolues ; -\item 7 : Crout ; -\item 11 : Gauss-Seidel EBE ; -\item 13 : matrice fournie par l''utilisateur ; -\item 14 : diagonal et Crout ; -\item 17 : solveur direct sur la verticale ; -\item 21 : diagonal condensee et Crout ; -\item 34 : diagonal et solveur direct sur la verticale. -\end{itemize} -Certains preconditionnements sont cumulables -(les diagonaux 2 ou 3 avec les autres). -Pour cette raison on ne retient que les nombres premiers pour -designer les preconditionnements. Si l''on souhaite en cumuler -plusieurs on formera le produit des options correspondantes.""", - ang = """Choice of the preconditioning in the propagation step linear -system that the convergence is speeded up when it is being solved. -Possible choices are: -\begin{itemize} -\item 0: no preconditioning, -\item 2: diagonal, -\item 3: diagonal with the condensed matrix, -\item 5: diagonal with absolute values, -\item 7: Crout, -\item 11: Gauss-Seidel EBE, -\item 13: matrix defined by the user, -\item 14: diagonal and Crout, -\item 17: direct solver on the vertical, -\item 21: diagonal condensed and Crout, -\item 34: diagonal and direct solver on the vertical. -\end{itemize} -Some operations (either 2 or 3 diagonal preconditioning) can be -performed concurrently with the others. -Only prime numbers are therefore kept to denote the preconditioning -operations. When several of them are to be performed concurrently, -the product of relevant options shall be done.""", - ), -# ----------------------------------- - INITIAL_GUESS_FOR_DEPTH = SIMP(statut ='o', -# ----------------------------------- - typ = 'TXM', - into = ["zero","previous","extrapolation"], - defaut = "previous", - fr = """Tir initial du solveur de l''etape de propagation. -Offre la possibilite de modifier la valeur initiale de $\delta h$, -accroissement de $h$, a chaque iteration, -dans l''etape de propagation en utilisant les valeurs -finales de cette variable aux pas de temps precedents. Ceci peut -permettre d''accelerer la vitesse de convergence lors de la resolution -du systeme. Trois possibilites sont offertes : -\begin{itemize} -\item 0 : $\delta h$ = 0, -\item 1 : $\delta h$ = $\delta h_n$ (valeur finale de $\delta h$ - au pas de temps precedent), -\item 2 : $\delta h$ = 2 $\delta h_n$ - $\delta h_{n-1}$ -(extrapolation). -\end{itemize}""", - ang = """Initial guess for the solver in the propagation step. -Makes it possible to modify the initial value of $\delta h$, upon each -iteration in the propagation step, by using the ultimate values this -variable had in the earlier time steps. Thus, the convergence can be -speeded up when the system is being solved. 3 options are available: -\begin{itemize} -\item 0: $\delta h$ = 0, -\item 1: $\delta h$ = $\delta h_n$ (ultimate $\delta h$ value -in the next previous time step), -\item 2: $\delta h$ = 2 $\delta h_n$ - $\delta h_{n-1}$ (extrapolation). -\end{itemize}""", - ), -# ----------------------------------- - LINEARIZED_PROPAGATION = SIMP(statut ='o', -# ----------------------------------- - typ = bool, - defaut = False, - fr = """Permet de lineariser l''etape de propagation, -par exemple lors de la realisation de cas tests pour lesquels on dispose -d''une solution analytique dans le cas linearise.""", - ang = """Provided for linearizing the propagation step, e.g. when -performing test-cases for which an analytical solution in the linearized -case is available.""", - ), -# ----------------------------------- - MEAN_DEPTH_FOR_LINEARIZATION = SIMP(statut ='o', -# ----------------------------------- - typ = 'R', - defaut = 0., - fr = """Fixe la hauteur d''eau autour de laquelle s''effectue la -linearisation lorsque l''option \telkey{PROPAGATION LINEARISEE} est -choisie.""", - ang = """Sets the water depth about which the linearization is done when -the \telkey{LINEARIZED PROPAGATION} option is selected.""", - ), - ), -# ----------------------------------- - ADVECTION = FACT(statut='o', -# ----------------------------------- -# ----------------------------------- - SCHEME_FOR_ADVECTION_OF_DEPTH = SIMP(statut ='f', -# ----------------------------------- - typ = 'I', - defaut = 5, - fr = """Le schema conservatif (5) est desormais impose.""", - ang = """The conservative scheme (5) is now mandatory.""", - ), -# ----------------------------------- - SCHEME_FOR_ADVECTION_OF_VELOCITIES = SIMP(statut ='o', -# ----------------------------------- - typ = 'TXM', - into = ["NO ADVECTION","CHARACTERISTICS","EXPLICIT + SUPG","EXPLICIT LEO POSTMA","EXPLICIT + MURD SCHEME N","EXPLICIT + MURD SCHEME PSI","LEO POSTMA FOR TIDAL FLATS","N-SCHEME FOR TIDAL FLATS"], - defaut = "CHARACTERISTICS", - fr = """Fixe le schema utilise pour la convection des vitesses. -Les choix possibles sont : -\begin{itemize} -\item 0 : pas de convection ; -\item 1 : caracteristiques ; -\item 2 : explicite + SUPG ; -\item 3 : explicite Leo Postma ; -\item 4 : explicite + MURD schema N ; -\item 5 : explicite + MURD schema PSI ; -\item 13 : Leo Postma pour bancs decouvrants ; -\item 14 : schema N pour bancs decouvrants. -\end{itemize}""", - ang = """Sets the advection scheme for the velocities. -Possible choices are: -\begin{itemize} -\item 0: no convection, -\item 1: characteristics, -\item 2: explicit + SUPG, -\item 3: explicit Leo Postma, -\item 4: explicit + MURD scheme N, -\item 5: explicit + MURD scheme PSI, -\item 13: Leo Postma for tidal flats, -\item 14: N-scheme for tidal flats. -\end{itemize}""", - ), -# ----------------------------------- - FREE_SURFACE_GRADIENT_COMPATIBILITY = SIMP(statut ='o', -# ----------------------------------- - typ = 'R', - defaut = 1., - fr = """Des valeurs comprises entre 0 et 1 peuvent supprimer les -oscillations parasites.""", - ang = """Values between 0 and 1 may suppress spurious oscillations.""", - ), -# ----------------------------------- - BYPASS_VOID_VOLUMES = SIMP(statut ='f', -# ----------------------------------- - typ = bool, - defaut = False, - fr = """Accelere les schemas de convection distributifs et volumes finis -en cas de bancs decouvrants ou de transformation sigma generalisee.""", - ang = """Will speed-up distributive and finite volumes advection -schemes in case of tidal flats or generalised sigma transformation.""", - ), -# ----------------------------------- - MASS_LUMPING_FOR_VELOCITIES = SIMP(statut ='o', -# ----------------------------------- - typ = 'R', - defaut = 0., - fr = """Fixe le taux de mass-lumping effectue sur la vitesse. -Utilisation deconseillee.""", - ang = """Sets the amount of mass-lumping that is performed on -the velocity. Not recommended for use.""", - ), -# ----------------------------------- - SCHEME_OPTION_FOR_ADVECTION_OF_VELOCITIES = SIMP(statut ='f', -# ----------------------------------- - typ = 'I', - defaut = 1, - fr = """Si present remplace et a priorite sur : -\telkey{OPTION POUR LES CARACTERISTIQUES} et -\telkey{OPTION DE SUPG}. -Si schema PSI ou N : -\begin{itemize} -\item 1 : explicite ; -\item 2 : predicteur-correcteur ; -\item 3 : predicteur-correcteur deuxieme ordre en temps ; -\item 4 : implicite. -\end{itemize}""", - ang = """If present replaces and has priority over: -\telkey{OPTION FOR CHARACTERISTICS} and -\telkey{SUPG OPTION}. -If N or PSI scheme: -\begin{itemize} -\item 1: explicit, -\item 2: predictor-corrector, -\item 3: predictor-corrector second-order in time, -\item 4: implicit. -\end{itemize}""", - ), -# ----------------------------------- - OPTION_FOR_CHARACTERISTICS = SIMP(statut ='o', -# ----------------------------------- - typ = 'TXM', - into = ["strong","weak"], - defaut = "strong", - fr = """Les choix possibles sont : -\begin{itemize} -\item 1: forme forte ; -\item 2: forme faible. -\end{itemize}""", - ang = """Possible choices are: -\begin{itemize} -\item 1: strong form, -\item 2: weak form. -\end{itemize}""", - ), -# ----------------------------------- - b_OPTION_FOR_CHARACTERISTICSG = BLOC(condition="OPTION_FOR_CHARACTERISTICS == 2", -# ----------------------------------- -# ----------------------------------- - NUMBER_OF_GAUSS_POINTS_FOR_WEAK_CHARACTERISTICS = SIMP(statut ='f', -# ----------------------------------- - typ = 'I', - defaut = 6, - fr = """Voir les release notes v6.3. -6 (points) est le seul choix pour TELEMAC-3D.""", - ang = """See release notes v6.3. -6 (points) is the only choice for TELEMAC-3D.""", - ), -# ----------------------------------- - MASS_LUMPING_FOR_WEAK_CHARACTERISTICS = SIMP(statut ='o', -# ----------------------------------- - typ = 'R', - defaut = 0., - fr = """Fixe le taux de mass-lumping qui est applique a la matrice de -masse lors de l''utilisation des caracteristiques faibles.""", - ang = """Sets the amount of mass-lumping that is applied to the mass -matrix when using weak characteristics.""", - ), - ), - ), -# ----------------------------------- - DIFFUSION = FACT(statut='o', -# ----------------------------------- -# ----------------------------------- - SCHEME_FOR_DIFFUSION_OF_VELOCITIES = SIMP(statut ='o', -# ----------------------------------- - typ = 'TXM', - into = ["NO DIFFUSION","IMPLICIT"], - defaut = "IMPLICIT", - fr = """Permet de specifier si l''on utilise ou non la diffusion -des vitesses horizontales $U$ et $V$. -Les choix possibles sont : -\begin{itemize} -\item 0 : pas de diffusion, -\item 1 : implicite. -\end{itemize}""", - ang = """Monitors the choice of the diffusion scheme -for velocities. -Possible choices are: -\begin{itemize} -\item 0: no diffusion, -\item 1: implicit. -\end{itemize}""", - ), -# ----------------------------------- - b_SCHEME_FOR_DIFFUSION_OF_VELOCITIESG = BLOC(condition="SCHEME_FOR_DIFFUSION_OF_VELOCITIES == 'IMPLICIT'", -# ----------------------------------- -# ----------------------------------- - SOLVER_FOR_DIFFUSION_OF_VELOCITIES = SIMP(statut ='o', -# ----------------------------------- - typ = 'TXM', - into = ["conjugate gradient","conjugate residual","conjugate gradient on a normal equation","minimum error","squared conjugate gradient","cgstab","gmres","direct solver"], - defaut = "conjugate gradient", - fr = """Permet de choisir le solveur utilise pour la resolution -de la diffusion des vitesses $U$ et $V$. -Les choix possibles sont : -\begin{itemize} -\item 1 : gradient conjugue ; -\item 2 : residu conjugue ; -\item 3 : gradient conjugue sur equation normale ; -\item 4 : erreur minimale ; -\item 5 : gradient conjugue carre ; -\item 6 : CGSTAB ; -\item 7 : GMRES ; -\item 8 : solveur direct. -\end{itemize}""", - ang = """Choice of the solver for the diffusion of velocities -$U$ and $V$. -Possible choices are: -\begin{itemize} -\item 1: conjugate gradient, -\item 2: conjugate residual, -\item 3: conjugate gradient on a normal equation, -\item 4: minimum error, -\item 5: squared conjugate gradient, -\item 6: CGSTAB, -\item 7: GMRES, -\item 8: direct solver. -\end{itemize}""", - ), -# ----------------------------------- - b_SOLVER_FOR_DIFFUSION_OF_VELOCITIESG = BLOC(condition="SOLVER_FOR_DIFFUSION_OF_VELOCITIES == 'gmres'", -# ----------------------------------- -# ----------------------------------- - OPTION_OF_SOLVER_FOR_DIFFUSION_OF_VELOCITIES = SIMP(statut ='o', -# ----------------------------------- - typ = 'I', - defaut = 3, - fr = """Dimension de l''espace de Krylov pour la methode GMRES (7).""", - ang = """Dimension of Krylov space for the GMRES method (7).""", - ), - ), -# ----------------------------------- - ACCURACY_FOR_DIFFUSION_OF_VELOCITIES = SIMP(statut ='o', -# ----------------------------------- - typ = 'R', - defaut = 1.E-5, - fr = """Fixe la precision demandee pour le calcul de la diffusion -de la vitesse.""", - ang = """Sets the accuracy needed for the computation of the -diffusion of the velocities.""", - ), -# ----------------------------------- - MAXIMUM_NUMBER_OF_ITERATIONS_FOR_DIFFUSION_OF_VELOCITIES = SIMP(statut ='o', -# ----------------------------------- - typ = 'I', - defaut = 60, - fr = """Limite le nombre d''iterations du solveur a chaque pas -de temps pour le calcul de la diffusion de la vitesse.""", - ang = """Limits the number of solver iterations for the diffusion of -velocities.""", - ), -# ----------------------------------- - PRECONDITIONING_FOR_DIFFUSION_OF_VELOCITIES = SIMP(statut ='o', -# ----------------------------------- - typ = 'TXM', - into = ["no preconditioning","diagonal","diagonal condensed","diagonal with absolute values","Crout","Gauss-Seidel EBE","Matrix defined by the user","diagonal and Crout","direct solver on the vertical","diagonal condensed and Crout","diagonal and direct solver on the vertical"], - defaut = "diagonal", - fr = """Permet de preconditionner le systeme relatif -a la diffusion des vitesses. Les choix possibles sont : -\begin{itemize} -\item 0 : aucun ; -\item 2 : diagonal ; -\item 3 : diagonal avec matrice condensee ; -\item 5 : diagonal avec valeurs absolues ; -\item 7 : Crout ; -\item 11 : Gauss-Seidel EBE ; -\item 13 : matrice fournie par l''utilisateur ; -\item 14 : diagonal et Crout ; -\item 17 : solveur direct sur la verticale ; -\item 21 : diagonal condensee et Crout ; -\item 34 : diagonal et solveur direct sur la verticale. -\end{itemize}""", - ang = """Choice of preconditioning for the diffusion of -velocities. Possible choices are: -\begin{itemize} -\item 0: no preconditioning, -\item 2: diagonal, -\item 3: diagonal with the condensed matrix, -\item 5: diagonal with absolute values, -\item 7: Crout, -\item 11: Gauss-Seidel EBE, -\item 13: matrix defined by the user, -\item 14: diagonal and Crout, -\item 17: direct solver on the vertical, -\item 21: diagonal condensed and Crout, -\item 34: diagonal and direct solver on the vertical. -\end{itemize}""", - ), -# ----------------------------------- - IMPLICITATION_FOR_DIFFUSION = SIMP(statut ='o', -# ----------------------------------- - typ = 'R', - defaut = 1., - fr = """Fixe la valeur du coefficient d''implication pour l''etape de -diffusion. -Dans le cas de \telkey{OPTION POUR LA DIFFUSION} = 2, cette valeur est -ecrasee a 0 et un traitement particulier est fait pour la diffusion.""", - ang = """Sets the value of the implicitation coefficient for the -diffusion step. -When \telkey{OPTION FOR THE DIFFUSION} = 2, this value is changed at 0 -and a specific treatment is done for the diffusion.""", - ), - ), - ), -# ----------------------------------- - NON_HYDROSTATIC = FACT(statut='o', -# ----------------------------------- - ), -# ----------------------------------- - VERTICAL = FACT(statut='o', -# ----------------------------------- -# ----------------------------------- - SOLVER_FOR_VERTICAL_VELOCITY = SIMP(statut ='o', -# ----------------------------------- - typ = 'TXM', - into = ["conjugate gradient","conjugate residual","conjugate gradient on a normal equation","minimum error","squared conjugate gradient","cgstab","gmres","direct solver"], - defaut = "conjugate gradient", - fr = """Permet de choisir le solveur utilise pour le calcul de -la vitesse verticale $W$. Les choix possibles sont : -\begin{itemize} -\item 1 : gradient conjugue ; -\item 2 : residu conjugue ; -\item 3 : gradient conjugue sur equation normale ; -\item 4 : erreur minimale ; -\item 5 : gradient conjugue carre ; -\item 6 : CGSTAB ; -\item 7 : GMRES ; -\item 8 : solveur direct. -\end{itemize}""", - ang = """Choice of the solver for the diffusion of vertical velocity -$W$. Possible choices are: -\begin{itemize} -\item 1: conjugate gradient, -\item 2: conjugate residual, -\item 3: conjugate gradient on a normal equation, -\item 4: minimum error, -\item 5: squared conjugate gradient, -\item 6: CGSTAB, -\item 7: GMRES, -\item 8: direct solver. -\end{itemize}""", - ), -# ----------------------------------- - ACCURACY_FOR_VERTICAL_VELOCITY = SIMP(statut ='o', -# ----------------------------------- - typ = 'R', - defaut = 1.E-6, - fr = """Fixe la precision demandee pour le calcul de la vitesse -verticale.""", - ang = """Sets the accuracy needed for the computation -of the vertical velocity.""", - ), -# ----------------------------------- - MAXIMUM_NUMBER_OF_ITERATIONS_FOR_VERTICAL_VELOCITY = SIMP(statut ='o', -# ----------------------------------- - typ = 'I', - defaut = 100, - fr = """Fixe le nombre maximum d''iterations accepte lors de la -resolution du calcul de la vitesse verticale.""", - ang = """Limits the number of solver iterations for the diffusion of - vertical velocity.""", - ), -# ----------------------------------- - PRECONDITIONING_FOR_VERTICAL_VELOCITY = SIMP(statut ='o', -# ----------------------------------- - typ = 'TXM', - into = ["no preconditioning","diagonal","diagonal condensed","diagonal with absolute values","Crout","Gauss-Seidel EBE","Matrix defined by the user","diagonal and Crout","direct solver on the vertical","diagonal condensed and Crout","diagonal and direct solver on the vertical"], - defaut = "diagonal", - fr = """Permet de preconditionner le systeme relatif -au calcul de la vitesse verticale. Les choix possibles sont : -\begin{itemize} -\item 0 : aucun ; -\item 2 : diagonal ; -\item 3 : diagonal avec matrice condensee ; -\item 5 : diagonal avec valeurs absolues ; -\item 7 : Crout ; -\item 11 : Gauss-Seidel EBE ; -\item 13 : matrice fournie par l''utilisateur ; -\item 14 : diagonal et Crout ; -\item 17 : solveur direct sur la verticale ; -\item 21 : diagonal condensee et Crout ; -\item 34 : diagonal et solveur direct sur la verticale. -\end{itemize}""", - ang = """Choice of preconditioning for the diffusion of -vertical velocity. Possible choices are: -\begin{itemize} -\item 0: no preconditioning, -\item 2: diagonal, -\item 3: diagonal with the condensed matrix, -\item 5: diagonal with absolute values, -\item 7: Crout, -\item 11: Gauss-Seidel EBE, -\item 13: matrix defined by the user, -\item 14: diagonal and Crout, -\item 17: direct solver on the vertical, -\item 21: diagonal condensed and Crout, -\item 34: diagonal and direct solver on the vertical. -\end{itemize}""", - ), - ), -# ----------------------------------- - IMPLICITATION = FACT(statut='o', -# ----------------------------------- -# ----------------------------------- - IMPLICITATION_FOR_DEPTH = SIMP(statut ='o', -# ----------------------------------- - typ = 'R', - defaut = 0.55, - fr = """Fixe la valeur du coefficient d''implicitation sur la hauteur -d''eau dans l''etape de propagation (cf. Note de principe). -Les valeurs inferieures a 0.5 donnent un schema instable.""", - ang = """Sets the value of the implicitation coefficient for water -depth in the propagation step (cf. Principe note). -The values lower than 0.5 give an instable scheme.""", - ), -# ----------------------------------- - IMPLICITATION_FOR_VELOCITIES = SIMP(statut ='o', -# ----------------------------------- - typ = 'R', - defaut = 1., - fr = """Fixe la valeur du coefficient d''implicitation sur la vitesse -dans l''etape de propagation (cf. Note de principe). -Les valeurs inferieures a 0.5 donnent un schema instable.""", - ang = """Sets the value of the implicitation coefficient -for the velocity -in the propagation step (cf. Principe note). -The values lower than 0.5 give an instable scheme.""", - ), - ), - ), -# ----------------------------------- - TIDAL_FLATS_INFO = FACT(statut='o', -# ----------------------------------- -# ----------------------------------- - TIDAL_FLATS = SIMP(statut ='o', -# ----------------------------------- - typ = bool, - defaut = True, - fr = """Permet de supprimer les tests sur les bancs decouvrants, dans -les cas ou l''on est certain qu''il n''y en aura pas. -En cas de doute : .TRUE.""", - ang = """When NO, the specific treatments for tidal flats are by-passed. -This spares time, but of course you must be sure that you have no -tidal flats.""", - ), -# ----------------------------------- - b_TIDAL_FLATSG = BLOC(condition="TIDAL_FLATS == True", -# ----------------------------------- -# ----------------------------------- - OPTION_FOR_THE_TREATMENT_OF_TIDAL_FLATS = SIMP(statut ='o', -# ----------------------------------- - typ = 'TXM', - into = ["EQUATIONS SOLVED EVERYWHERE WITH CORRECTION ON TIDAL FLATS","DRY ELEMENTS FROZEN","LIKE 1 BUT WITH POROSITY (DEFINA METHOD)"], - defaut = "EQUATIONS SOLVED EVERYWHERE WITH CORRECTION ON TIDAL FLATS", - fr = """Utilise si \telkey{BANCS DECOUVRANTS} est vrai. -Les choix possibles sont : -\begin{itemize} -\item 1 : equations resolues partout avec correction sur les bancs -decouvrants ; -\item 2 : gel des elements decouvrants. -\end{itemize}""", - ang = """Used if \telkey{TIDAL FLATS} is true. Possible choices are: -\begin{itemize} -\item 1: equations solved everywhere with correction on tidal flats, -\item 2: dry elements frozen. -\end{itemize}""", - ), -# ----------------------------------- - b_OPTION_FOR_THE_TREATMENT_OF_TIDAL_FLATSG = BLOC(condition="OPTION_FOR_THE_TREATMENT_OF_TIDAL_FLATS == 'EQUATIONS SOLVED EVERYWHERE WITH CORRECTION ON TIDAL FLATS'", -# ----------------------------------- -# ----------------------------------- - TREATMENT_OF_NEGATIVE_DEPTHS = SIMP(statut ='o', -# ----------------------------------- - typ = 'I', - defaut = 1, - fr = """Seulement avec \telkey{OPTION DE TRAITEMENT DES BANCS DECOUVRANTS} -= 1. Les choix possibles sont : -\begin{itemize} -\item 0 : pas de traitement ; -\item 1 : lissage ; -\item 2 : limitation des flux. -\end{itemize}""", - ang = """Only with \telkey{OPTION FOR THE TREATMENT OF TIDAL FLATS} -= 1. Possible choices are: -\begin{itemize} -\item 0: no treatment, -\item 1: smoothing, -\item 2: flux control. -\end{itemize}""", - ), - ), -# ----------------------------------- - TREATMENT_ON_TIDAL_FLATS_FOR_VELOCITIES = SIMP(statut ='f', -# ----------------------------------- - typ = 'TXM', - into = ["FORCED TO ZERO","VALUE BEFORE MASKED"], - defaut = "FORCED TO ZERO", - fr = """Traitement sur les bancs decouvrants a l''etape de diffusion. -\begin{itemize} -\item 0 : forcage a zero ; -\item 1 : valeur avant masquage. -\end{itemize}""", - ang = """Treatment of tidal flats at the diffusion step for velocities. -\begin{itemize} -\item 0: forced to zero, -\item 1: value before masked. -\end{itemize}""", - ), -# ----------------------------------- - THRESHOLD_FOR_VISCOSITY_CORRECTION_ON_TIDAL_FLATS = SIMP(statut ='o', -# ----------------------------------- - typ = 'R', - defaut = 0.2, - fr = """Pour les profondeurs inferieures, la viscosite sera -progressivement reduite. Voir le sous-programme -\telfile{VISCLIP}.""", - ang = """Below the threshold, viscosity will be progressively -cancelled. See subroutine \telfile{VISCLIP}.""", - ), - ), -# ----------------------------------- - MINIMAL_VALUE_FOR_DEPTH = SIMP(statut ='o', -# ----------------------------------- - typ = 'R', - defaut = -1000., - fr = """Fixe la valeur minimale de $H$.""", - ang = """Sets the minimum water depth value $H$.""", - ), - ), -# ----------------------------------- - TIDES = FACT(statut='f', -# ----------------------------------- -# ----------------------------------- - BINARY_DATABASE_1_FOR_TIDE = SIMP(statut ='f', -# ----------------------------------- - typ = ('Fichier','All Files (*)'), - defaut = '', - fr = """Nom du fichier de la base de donnees binaire 1. Dans le cas des -donnees satellitaires de l''OSU (type TPXO), ce fichier correspond aux -donnees de niveau d''eau, par exemple h\_tpxo7.2.""", - ang = """File name for the binary database 1 of tidal harmonic -constants. In the case of the OSU satellite altimetry model (TPXO type), -this file should be for free surface level, for instance h\_tpxo7.2.""", - ), -# ----------------------------------- - BINARY_DATABASE_2_FOR_TIDE = SIMP(statut ='f', -# ----------------------------------- - typ = ('Fichier','All Files (*)'), - defaut = '', - fr = """Nom du fichier de la base de donnees binaire 2. Dans le cas des -donnees satellitaires de l''OSU (type TPXO), ce fichier correspond aux -donnees de vitesse de marees, par exemple u\_tpxo7.2.""", - ang = """File name for the binary database 2 of tidal harmonic -constants. In the case of the OSU satellite altimetry model (TPXO type), -this file should be for tidal velocities, for instance u\_tpxo7.2.""", - ), -# ----------------------------------- - GEOGRAPHIC_SYSTEM = SIMP(statut ='f', -# ----------------------------------- - typ = 'TXM', - into = ["NO DEFAULT VALUE","DEFINED BY USER","WGS84 LONGITUDE/LATITUDE IN REAL DEGREES","WGS84 NORTHERN UTM","WGS84 SOUTHERN UTM","LAMBERT","MERCATOR PROJECTION"], - defaut = "NO DEFAULT VALUE", - fr = """Systeme de coordonnees geographiques dans lequel est construit -le modele numerique. -Indiquer la zone correspondante avec le mot-cle. -Indique le systeme de coordonnees geographiques dans lequel est -construit le modele numerique. Les choix possibles sont : -\begin{itemize} -\item 0 : defini par l''utilisateur ; -\item 1 : WGS84 longitude/latitude en degres reels ; -\item 2 : WGS84 nord UTM ; -\item 3 : WGS84 sud UTM ; -\item 4 : Lambert ; -\item 5 : projection Mercator. -\end{itemize}""", - ang = """Geographic coordinates system in which the numerical model is -built. Indicate the corresponding zone with the keyword. -The possible choices are: -\begin{itemize} -\item 0: defined by the user, -\item 1: WGS84 longitude/latitude in real degrees, -\item 2: WGS84 Northern UTM, -\item 3: WGS84 Southern UTM, -\item 4: Lambert, -\item 5: Mercator projection. -\end{itemize}""", - ), -# ----------------------------------- - b_GEOGRAPHIC_SYSTEMG = BLOC(condition="GEOGRAPHIC_SYSTEM in ['WGS84 NORTHERN UTM','WGS84 SOUTHERN UTM','LAMBERT']", -# ----------------------------------- -# ----------------------------------- - ZONE_NUMBER_IN_GEOGRAPHIC_SYSTEM = SIMP(statut ='o', -# ----------------------------------- - typ = 'TXM', - into = ["NO DEFAULT VALUE","LAMBERT 1 NORTH","LAMBERT 2 CENTER","LAMBERT 3 SOUTH","LAMBERT 4 CORSICA","LAMBERT 2 EXTENDED","LAMBERT 93","UTM ZONE, E.G."], - defaut = "NO DEFAULT VALUE", - fr = """Numero de zone (fuseau ou type de projection) lors de -l''utilisation d''une projection plane. Indiquer le systeme -geographique dans lequel est construit le modele numerique avec le -mot-cle \telkey{SYSTEME GEOGRAPHIQUE}. -Les choix possibles sont : -\begin{itemize} -\item 1 : Lambert 1 nord ; -\item 2 : Lambert 2 centre ; -\item 3 : Lambert 3 sud ; -\item 4 : Lambert 4 Corse ; -\item 22 : Lambert 2 etendu ; -\item 93 : Lambert 93 ; -\item X : Valeur UTM de la zone WGS84 (X est le numero de la zone). -\end{itemize}""", - ang = """Number of zone when using a plane projection. -Indicate the geographic system in which the numerical model is built -with the keyword \telkey{GEOGRAPHIC SYSTEM}. -Possible choices are: -\begin{itemize} -\item 1: Lambert 1 north, -\item 2: Lambert 2 center, -\item 3: Lambert 3 south, -\item 4: Lambert 4 Corsica, -\item 22: Lambert 22 extended, -\item 93: Lambert 93, -\item X: UTM zone with WGS84 (X is the number of the zone). -\end{itemize}""", - ), - ), -# ----------------------------------- - LAMBERT_93_CONVERSION_FILE = SIMP(statut ='f', -# ----------------------------------- - typ = ('Fichier','All Files (*)'), - defaut = '', - fr = """Nom du fichier gr3df97a.txt, grille de conversion pour Lambert 93.""", - ang = """Name of file gr3df97a.txt, conversion grid for Lambert 93.""", - ), -# ----------------------------------- - COEFFICIENT_TO_CALIBRATE_SEA_LEVEL = SIMP(statut ='o', -# ----------------------------------- - typ = 'R', - defaut = 0., - fr = """Coefficient pour ajuster le niveau de mer. -Ce coefficient correspond d''habitude au niveau moyen de la mer -ou une valeur proche.""", - ang = """Coefficient to calibrate the sea level. -This coefficient usually corresponds to the mean sea level -or a close value.""", - ), -# ----------------------------------- - b_GLOBAL_NUMBER_OF_THE_POINT_TO_CALIBRATE_HIGH_WATERF = BLOC(condition="(TIDAL_DATA_BASE == 'TPXO' and OPTION_FOR_TIDAL_BOUNDARY_CONDITIONS >=2 and OPTION_FOR_TIDAL_BOUNDARY_CONDITIONS <= 6)", -# ----------------------------------- - ), -# ----------------------------------- - GLOBAL_NUMBER_OF_THE_POINT_TO_CALIBRATE_HIGH_WATER = SIMP(statut ='o', -# ----------------------------------- - typ = 'I', - defaut = 0, - fr = """Numero global du point par rapport auquel -les ondes de maree sont dephasees -pour debuter le calcul par une pleine mer -(en marees schematiques seulement). -Ne concerne que les bases de constantes harmoniques de type TPXO.""", - ang = """Global number of the point with respect to which -the tidal constituents have their phase shifted -to start the calculation with a high water -(for schematic tides only). -Only harmonic constants databases like TPXO are concerned.""", - ), -# ----------------------------------- - MINOR_CONSTITUENTS_INFERENCE = SIMP(statut ='f', -# ----------------------------------- - typ = bool, - defaut = False, - fr = """Pour les solutions developpees par OSU (ex. TPXO) uniquement. -Interpolation de composantes harmoniques mineures -a partir de celles lues dans les fichiers d''entree -lies aux mots-cles \telkey{BASE BINAIRE 1 DE DONNEES DE MAREE} -et \telkey{BASE BINAIRE 2 DE DONNEES DE MAREE}.""", - ang = """For tidal solutions developed by OSU (e.g. TPXO) only. -Inference of minor constituents from the ones read in input files -linked to keywords \telkey{BINARY DATABASE 1 FOR TIDE} -and \telkey{BINARY DATABASE 2 FOR TIDE}.""", - ), -# ----------------------------------- - PHYSICAL_PARAMETERS = FACT(statut='o', -# ----------------------------------- -# ----------------------------------- - TIDE_GENERATING_FORCE = SIMP(statut ='o', -# ----------------------------------- - typ = bool, - defaut = False, - fr = """Active la prise en compte de la force generatrice de la maree""", - ang = """The tide generating force is taken into account.""", - ), - ), -# ----------------------------------- - BOUNDARY_CONDITIONS = FACT(statut='o', -# ----------------------------------- -# ----------------------------------- - OPTION_FOR_TIDAL_BOUNDARY_CONDITIONS = SIMP(statut ='o', -# ----------------------------------- - typ = 'TXM', min=0, max='**', - into = ["No tide","Real tide (recommended methodology)","Astronomical tide","Mean spring tide","Mean tide","Mean neap tide","Astronomical neap tide","Real tide (methodology before 2010)"], - fr = """Option pour les conditions aux limites de maree. -Pour des marees reelles, l''option 1 est recommandee. -Depuis la version 7.1, ce mot-cle est un tableau avec une valeur -donnee par frontiere liquide, separee par point-virgules. -Ceci permet d''avoir des conditions de maree (ou pas) calculees -sur des frontieres liquides avec vitesses ou hauteur d''eau imposees. -Ca evite un conflit lors de l''utilisation de seuils dans le domaine. -0 est le code pour des conditions autres que des conditions de maree. -ATTENTION depuis la version 7.1 ! -Les anciens modeles doivent etre changes si la frontiere de maree -n''a pas le numero 1. Dans ce cas, le mot-cle doit etre change et -plus de valeurs doivent etre donnees. -Calage possible par les mots-cles -\telkey{COEFFICIENT POUR CALAGE EN MARNAGE}, -\telkey{COEFFICIENT DE CALAGE DES VITESSES DE COURANT}, -et \telkey{COEFFICIENT POUR CALAGE EN NIVEAU}. -Les choix possibles sont : -\begin{itemize} -\item 0 : Pas de maree ; -\item 1 : Maree reelle (methodologie recommandee) ; -\item 2 : Maree de vive-eau exceptionnelle (coef. presque 120) ; -\item 3 : Maree de vive-eau moyenne (coef. presque 95) ; -\item 4 : Maree moyenne (coef. presque 70) ; -\item 5 : Maree de morte-eau moyenne (coef. presque 45) ; -\item 6 : Maree de morte-eau exceptionnelle (coef. presque 20) ; -\item 7 : Maree reelle (methodologie d avant 2010). -\end{itemize}""", - ang = """Option for tidal boundary conditions. -For real tides, option 1 is recommended. -This keyword has been an array with a value given per liquid boundary, -separated by semicolons, since version 7.1. -This enables to have tidal conditions (or not) computed -on liquid boundaries with prescribed velocities or depths, -avoiding a clash when using weirs in the domain. -0 codes for conditions other than tidal. -BEWARE since version 7.1! -Old models must be changed if their tidal boundary is not number 1. -In that case this keyword must be changed and more values given. -Possible calibration with the keywords -\telkey{COEFFICIENT TO CALIBRATE TIDAL RANGE}, -\telkey{COEFFICIENT TO CALIBRATE TIDAL VELOCITIES}, -and \telkey{COEFFICIENT TO CALIBRATE SEA LEVEL}. -Possible choices are: -\begin{itemize} -\item 0: No tide, -\item 1: Real tide (recommended methodology), -\item 2: Astronomical tide, -\item 3: Mean spring tide, -\item 4: Mean tide, -\item 5: Mean neap tide, -\item 6: Astronomical neap tide, -\item 7: Real tide (methodology before 2010). -\end{itemize}""", - ), -# ----------------------------------- - b_OPTION_FOR_TIDAL_BOUNDARY_CONDITIONSG = BLOC(condition="OPTION_FOR_TIDAL_BOUNDARY_CONDITIONS != 0", -# ----------------------------------- -# ----------------------------------- - TIDAL_DATA_BASE = SIMP(statut ='o', -# ----------------------------------- - typ = 'TXM', - into = ["NO DEFAULT VALUE","JMJ","TPXO","MISCELLANEOUS (LEGOS-NEA, FES20XX, PREVIMER...)"], - defaut = "NO DEFAULT VALUE", - fr = """Fournit le nom de la base de donnees utilisee pour la generation -automatique des conditions aux limites. Les choix possibles sont : -\begin{itemize} -\item 1 : JMJ ; -\item 2 : TPXO ; -\item 3 : divers (LEGOS-NEA, FES20XX, PREVIMER). -\end{itemize} -Pour JMJ, renseigner la localisation du fichier bdd\_jmj et -geofin dans les mots-cles \telkey{BASE ASCII DE DONNEES DE MAREE} et -\telkey{FICHIER DU MODELE DE MAREE. -Pour TPXO, LEGOS-NEA, FES20XX et PREVIMER, l''utilisateur -doit telecharger les fichiers de constantes harmoniques sur internet.""", - ang = """Gives the name of the data base used to automatically generate -the boundary conditions. Possible choices are: -\begin{itemize} -\item 1: JMJ, -\item 2: TPXO, -\item 3: MISCELLANEOUS (LEGOS-NEA, FES20XX, PREVIMER...). -\end{itemize} -For JMJ, indicate the location of the files bdd\_jmj and geofin -with keywords \telkey{ASCII DATABASE FOR TIDE} and -\telkey{TIDAL MODEL FILE}. For TPXO, LEGOS-NEA, -FES20XX and PREVIMER, the user has to download files of harmonic -constituents on the internet.""", - ), -# ----------------------------------- - b_TIDAL_DATA_BASEG = BLOC(condition="TIDAL_DATA_BASE == 'TPXO'", -# ----------------------------------- - ), -# ----------------------------------- - b_TIDAL_DATA_BASEH = BLOC(condition="(TIDAL_DATA_BASE == 'JMJ') or (TIDAL_DATA_BASE == 'MISCELLANEOUS (LEGOS-NEA, FES20XX, PREVIMER...)')", -# ----------------------------------- -# ----------------------------------- - HARMONIC_CONSTANTS_FILE = SIMP(statut ='o', -# ----------------------------------- - typ = ('Fichier','All Files (*)'), - defaut = '', - fr = """Nom du fichier contenant les constantes harmoniques extraites -du fichier du modele de maree (JMJ) -ou autres atlas (FES, NEA, PREVIMER).""", - ang = """Name of the file containing the harmonic constants extracted -from the tidal model file (JMJ) or other atlases (FES, NEA, PREVIMER).""", - ), - ), -# ----------------------------------- - COEFFICIENT_TO_CALIBRATE_TIDAL_RANGE = SIMP(statut ='o', -# ----------------------------------- - typ = 'R', - defaut = 1., - fr = """Coefficient pour ajuster le marnage de l''onde de maree -aux frontieres maritimes.""", - ang = """Coefficient to calibrate the tidal range of tidal wave -at tidal open boundary conditions.""", - ), -# ----------------------------------- - COEFFICIENT_TO_CALIBRATE_TIDAL_VELOCITIES = SIMP(statut ='o', -# ----------------------------------- - typ = 'R', - defaut = 999999., - fr = """Coefficient pour ajuster les composantes de vitesse -de l''onde de maree aux frontieres maritimes. -La valeur par defaut 999999. signifie que c''est la racine carree -du \telkey{COEFFICIENT DE CALAGE DU MARNAGE} qui est prise.""", - ang = """Coefficient to calibrate the tidal velocities of tidal wave -at tidal open boundary conditions. -Default value 999999. means that the square root of -\telkey{COEFFICIENT TO CALIBRATE TIDAL RANGE} is taken.""", - ), - ), -# ----------------------------------- - TIDAL_MODEL_FILE = SIMP(statut ='f', -# ----------------------------------- - typ = ('Fichier','All Files (*)'), - defaut = '', - fr = """Fichier de geometrie du modele dont sont extraites -les constantes harmoniques (JMJ seulement).""", - ang = """Geometry file of the model from which harmonic constituents -are extracted (JMJ only).""", - ), -# ----------------------------------- - TIDAL_MODEL_FILE_FORMAT = SIMP(statut ='f', -# ----------------------------------- - typ = 'TXM', - into = ['SERAFIN?','SERAFIND','MED'], - defaut = 'SERAFIN?', - fr = """Format du \telkey{FICHIER DU MODELE DE MAREE}. -Les valeurs possibles sont : -\begin{itemize} -\item SERAFIN : format standard simple precision pour \tel ; -\item SERAFIND: format standard double precision pour \tel ; -\item MED : format MED double precision base sur HDF5. -\end{itemize}""", - ang = """Format of the \telkey{TIDAL MODEL FILE}. -Possible choices are: -\begin{itemize} -\item SERAFIN : classical single precision format in \tel, -\item SERAFIND: classical double precision format in \tel, -\item MED : MED double precision format based on HDF5. -\end{itemize}""", - ), -# ----------------------------------- - ASCII_DATABASE_FOR_TIDE = SIMP(statut ='f', -# ----------------------------------- - typ = ('Fichier','All Files (*)'), - defaut = '', - fr = """Nom de la base de donnees de constantes harmoniques -tirees du \telkey{FICHIER DU MODELE DE MAREE}.""", - ang = """File name for the tide data base of harmonic constituents -extracted from the \telkey{TIDAL MODEL FILE}.""", - ), -# ----------------------------------- - LOCAL_NUMBER_OF_THE_POINT_TO_CALIBRATE_HIGH_WATER = SIMP(statut ='o', -# ----------------------------------- - typ = 'I', - defaut = 0, - fr = """Numero local du point entre 1 et le nombre de points -de frontiere maritime (du FICHIER DES CONSTANTES HARMONIQUES) -ou les conditions aux limites de maree sont calculees -avec les bases de donnees JMJ, NEA, FES, PREVIMER -(sauf les bases de type TPXO). -Les ondes de maree sont dephasees par rapport a ce point -pour debuter le calcul par une pleine mer -(en marees schematiques seulement).""", - ang = """Local number between 1 and the number of tidal boundary points -(of the \telkey{HARMONIC CONSTANTS FILE}) where the tidal boundary -conditions are computed with JMJ, NEA, FES, PREVIMER databases -(except TPXO-type databases). -The tidal constituents have their phase shifted with respect to -this point to start the simulation with a high water -(for schematic tides only).""", - ), - ), - ), -# ----------------------------------- - PARTICLES_TRANSPORT = FACT(statut='f', -# ----------------------------------- -# ----------------------------------- - DROGUES = FACT(statut='o', -# ----------------------------------- -# ----------------------------------- - NUMBER_OF_DROGUES = SIMP(statut ='o', -# ----------------------------------- - typ = 'I', - defaut = 0, - fr = """Permet d''effectuer un suivi de flotteurs. -Fixe le nombre de flotteurs a traiter lors du calcul. -Il est alors necessaire de mettre a jour le sous-programme -\telfile{FLOT3D} afin de fournir les informations sur les -positions de largage et les temps de suivi des flotteurs.""", - ang = """Number of drogues in the computation. -The user must then fill the subroutine \telfile{FLOT3D} -specifying the coordinates of the starting points, -their departure and arrival times. -The trajectory of drogues is recorded in the -\telkey{DROGUES FILE} that must be given in the steering file.""", - ), -# ----------------------------------- - b_NUMBER_OF_DROGUESG = BLOC(condition="NUMBER_OF_DROGUES != 0", -# ----------------------------------- -# ----------------------------------- - DROGUES_FILE = SIMP(statut ='o', -# ----------------------------------- - typ = ('Fichier','All Files (*)','Sauvegarde'), - defaut = '', - fr = """Fichier de resultat avec les positions des flotteurs.""", - ang = """Results file with positions of drogues.""", - ), -# ----------------------------------- - PRINTOUT_PERIOD_FOR_DROGUES = SIMP(statut ='o', -# ----------------------------------- - typ = 'I', - defaut = 1, - fr = """Nombre de pas de temps entre 2 sorties de positions de -flotteurs dans le fichier des resultats binaire supplementaire -N affecte pas la qualite du calcul de la trajectoire""", - ang = """Number of time steps between 2 outputs of drogues -positions in the binary file. -It does not disturb the quality of the computation of the trajectory.""", - ), - ), - ), -# ----------------------------------- - OIL_SPILL = FACT(statut='o', -# ----------------------------------- -# ----------------------------------- - OIL_SPILL_MODEL = SIMP(statut ='o', -# ----------------------------------- - typ = bool, - defaut = False, - fr = """Pour declencher le modele de nappes d''hydrocarbures, -dans ce cas le -\telkey{FICHIER DE COMMANDES HYDROCARBURES} est necessaire.""", - ang = """Will trigger the oil spill model, in this case -the \telkey{OIL SPILL STEERING FILE} is needed.""", - ), -# ----------------------------------- - b_OIL_SPILL_MODELG = BLOC(condition="OIL_SPILL_MODEL == True", -# ----------------------------------- -# ----------------------------------- - OIL_SPILL_STEERING_FILE = SIMP(statut ='o', -# ----------------------------------- - typ = ('Fichier','All Files (*)'), - defaut = '', - fr = """Contient les donnees pour le -modele de nappes d''hydrocarbures.""", - ang = """Contains data for the oil spill model.""", - ), - ), - ), - ), -# ----------------------------------- - HYDRAULIC_STRUCTURES = FACT(statut='f', -# ----------------------------------- -# ----------------------------------- - CULVERTS = FACT(statut='o', -# ----------------------------------- -# ----------------------------------- - NUMBER_OF_CULVERTS = SIMP(statut ='o', -# ----------------------------------- - typ = 'I', - defaut = 0, - fr = """Nombre de buses ou ponts traites comme des termes sources ou -puits. Ces buses doivent etre decrites comme des sources dans le -fichier cas. Leurs caracteristiques sont donnees dans le -\telkey{FICHIER DE DONNEES DES BUSES} (voir la documentation ecrite).""", - ang = """Number of culverts, tubes or bridges treated as source terms. -They must be described as sources in the domain and their features -are given in the \telkey{CULVERTS DATA FILE} (see written -documentation).""", - ), -# ----------------------------------- - b_NUMBER_OF_CULVERTSG = BLOC(condition="NUMBER_OF_CULVERTS != 0", -# ----------------------------------- -# ----------------------------------- - CULVERTS_DATA_FILE = SIMP(statut ='o', -# ----------------------------------- - typ = ('Fichier','All Files (*)'), max='**', - defaut = '', - fr = """Fichier de description des buses/ponts presents dans le modele.""", - ang = """Description of culverts/bridges existing in the model.""", - ), -# ----------------------------------- - OPTION_FOR_CULVERTS = SIMP(statut ='o', -# ----------------------------------- - typ = 'I', - defaut = 1, - fr = """Option pour le traitement des buses. Il existe deux formulations -dans \tel.""", - ang = """Option for the treatment of culverts. There are two options -in \tel.""", - ), - ), - ), - ), -) -# ----------------------------------------------------------------------- -TURBULENCE = PROC(nom= "TURBULENCE",op = None, -# ----------------------------------------------------------------------- - UIinfo = {"groupes": ("CACHE")}, -# ----------------------------------- - PHYSICAL_PARAMETERS = FACT(statut='o', -# ----------------------------------- -# ----------------------------------- - HORIZONTAL_TURBULENCE_MODEL = SIMP(statut ='o', -# ----------------------------------- - typ = 'TXM', - into = ["CONSTANT VISCOSITY","K-EPSILON MODEL","SMAGORINSKI","K-OMEGA MODEL"], - defaut = "CONSTANT VISCOSITY", - fr = """Permet de specifier le modele de turbulence horizontal. -Les choix possibles sont : -\begin{itemize} -\item 1 : viscosite constante ; -\item 3 : modele $k$-$\epsilon$ ; -\item 4 : Smagorinski ; -\item 7 : $k$-$\omega$ model. -\end{itemize} -Attention : si on choisit l''option 1, il ne faut pas oublier d''ajuster -la valeur du mot cle \telkey{COEFFICIENT DE DIFFUSION}\ldots -Si on choisit les autres options, ce meme parametre doit retrouver sa -vraie valeur physique car elle est utilisee comme telle dans le modele -de turbulence. -Si on choisit l''option 3 ou 7, ce meme parametre doit retrouver sa -vraie valeur physique, en general environ $10^{-6}$ -car elle est utilisee comme telle dans le modele de turbulence.""", - ang = """Specifies the horizontal turbulence model. -The available choices are: -\begin{itemize} -\item 1: constant viscosity, -\item 3: $k$-$\epsilon$ model, -\item 4: Smagorinski, -\item 7: $k$-$\omega$ model. -\end{itemize} -Caution: if option 1 is chosen, give the right -\telkey{COEFFICIENT FOR\ldots\ DIFFUSION OF VELOCITIES}\ldots\ -If option 3 ou 7 is chosen, this parameter must get its real physical -value of molecular diffusivity, generally about $10^{-6}$ -because it is used as well in the turbulence model.""", - ), -# ----------------------------------- - VERTICAL_TURBULENCE_MODEL = SIMP(statut ='o', -# ----------------------------------- - typ = 'TXM', - into = ["CONSTANT VISCOSITY","MIXING LENGTH","K-EPSILON MODEL","SMAGORINSKI","K-OMEGA MODEL"], - defaut = "CONSTANT VISCOSITY", - fr = """Permet de specifier le modele de turbulence horizontal. -Les choix possibles sont : -\begin{itemize} -\item 1 : viscosite constante ; -\item 2 : longueur de melange ; -\item 3 : modele $k$-$\epsilon$ ; -\item 4 : Smagorinski ; -\item 7 : $k$-$\omega$ model. -\end{itemize} -Attention : si on choisit l''option 1, il ne faut pas oublier d''ajuster -la valeur du mot cle \telkey{COEFFICIENT DE DIFFUSION}\ldots -Si on choisit les autres options, ce meme parametre doit retrouver sa -vraie valeur physique car elle est utilisee comme telle dans le modele -de turbulence. -Si on choisit l''option 3 ou 7, ce meme parametre doit retrouver sa -vraie valeur physique, en general environ $10^{-6}$ -car elle est utilisee comme telle dans le modele de turbulence.""", - ang = """Specifies the horizontal turbulence model. -The available choices are: -\begin{itemize} -\item 1: constant viscosity, -\item 2: mixing length, -\item 3: $k$-$\epsilon$ model, -\item 4: Smagorinski, -\item 7: $k$-$\omega$ model. -\end{itemize} -Caution: if option 1 is chosen, give the right -\telkey{COEFFICIENT FOR\ldots\ DIFFUSION OF VELOCITIES}\ldots\ -If option 3 ou 7 is chosen, this parameter must get its real physical -value of molecular diffusivity, generally about $10^{-6}$ -because it is used as well in the turbulence model.""", - ), -# ----------------------------------- - b_VERTICAL_TURBULENCE_MODELG = BLOC(condition="VERTICAL_TURBULENCE_MODEL == 'MIXING LENGTH'", -# ----------------------------------- -# ----------------------------------- - MIXING_LENGTH_MODEL = SIMP(statut ='o', -# ----------------------------------- - typ = 'I', - defaut = 1, - fr = """Permet de specifier le modele de longueur utilise pour la -turbulence verticale. Les choix possibles sont : -\begin{itemize} -\item 1: Prandtl ; -\item 3: Nezu et Nakawaga ; -\item 5: Quetin ; -\item 6: Tsanis. -\end{itemize} -4 (jet) a ete supprime.""", - ang = """Specifies the mixing length model used for vertical turbulence. -Possible choices are: -\begin{itemize} -\item 1: Prandtl, -\item 3: Nezu and Nakawaga, -\item 5: Quetin, -\item 6: TsaniS. -\end{itemize} -4 (jet) has been suppressed.""", - ), -# ----------------------------------- - DAMPING_FUNCTION = SIMP(statut ='o', -# ----------------------------------- - typ = 'I', - defaut = 0, - fr = """Specifie le type de fonction d''amortissement utilise -(quand un modele de longueur de melange est utilise). -Les choix possibles sont : -\begin{itemize} -\item 0: rien ; -\item 1: fait par l''utilisateur ; -\item 2: Viollet ; -\item 3: Munk et Anderson. -\end{itemize}""", - ang = """Specifies the type of damping function used (when using mixing -length turbulence model). The possible choices are: -\begin{itemize} -\item 0: nothing, -\item 1: user programmed, -\item 2: Viollet, -\item 3: Munk and Anderson. -\end{itemize}""", - ), - ), -# ----------------------------------- - COEFFICIENT_FOR_HORIZONTAL_DIFFUSION_OF_VELOCITIES = SIMP(statut ='o', -# ----------------------------------- - typ = 'R', - defaut = 1.E-6, - fr = """Fixe de facon uniforme pour l''ensemble du domaine; -la valeur du coefficient de diffusion de viscosite globale (dynamique + -turbulente). Cette valeur peut avoir une influence non negligeable sur -la forme et la taille des recirculations.""", - ang = """Sets, in an even way for the whole domain, the value of the -coefficient of global (dynamic+turbulent) viscosity -for the horizontal direction. This value may -have a significant effect both on the shapes and sizes of -recirculation zones.""", - ), -# ----------------------------------- - COEFFICIENT_FOR_VERTICAL_DIFFUSION_OF_VELOCITIES = SIMP(statut ='o', -# ----------------------------------- - typ = 'R', - defaut = 1.E-6, - fr = """Fixe de facon uniforme pour l''ensemble du domaine; -la valeur du coefficient de diffusion de viscosite globale (dynamique + -turbulente). Cette valeur peut avoir une influence non negligeable sur -la forme et la taille des recirculations.""", - ang = """Sets, in an even way for the whole domain, the value of the -coefficient of global (dynamic+turbulent) viscosity -for the horizontal direction. This value may -have a significant effect both on the shapes and sizes of -recirculation zones.""", - ), -# ----------------------------------- - PRANDTL_NUMBER = SIMP(statut ='f', -# ----------------------------------- - typ = 'R', - defaut = 1.0, - fr = """Rapport entre viscosite et diffusivite turbulente.""", - ang = """Ratio between eddy viscosity and eddy diffusivity.""", - ), -# ----------------------------------- - KARMAN_CONSTANT = SIMP(statut ='f', -# ----------------------------------- - typ = 'R', - defaut = 0.4, - fr = """Valeur de la constante de Von Karman.""", - ang = """Value of Von Karman''s constant.""", - ), - ), -# ----------------------------------- - BOUNDARY_CONDITIONS = FACT(statut='o', -# ----------------------------------- -# ----------------------------------- - FICTITIOUS_BED_LEVEL = SIMP(statut ='f', -# ----------------------------------- - typ = 'R', - defaut = 2.0, - fr = """Rapport entre le fond fictif et la hauteur de -la premiere maille utilisee par le modele de turbulence -$k$-$\epsilon$ et pour le transport du sable.""", - ang = """Ratio between the fictitious bed and -the grid size above the bed.""", - ), -# ----------------------------------- - OPTION_FOR_THE_BOUNDARY_CONDITIONS_OF_K_EPSILON = SIMP(statut ='f', -# ----------------------------------- - typ = 'TXM', - into = ["no turbulence","Hans Burchard"], - defaut = "no turbulence", - fr = """Calcul des conditions aux limites laterales sur $k$ et -$\epsilon$. Les choix possibles sont : -\begin{itemize} -\item 1: pas de turbulence = les valeurs minimales \telfile{KMIN} -et \telfile{EMIN} definies dans \telfile{CSTKEP} ; -\item 2: formule de Hans Burchard. -\end{itemize}""", - ang = """Computation of the lateral boundary conditions of $k$ -and $\epsilon$. Possible choices are: -\begin{itemize} -\item 1: no turbulence = the minimum values \telfile{KMIN} and -\telfile{EMIN} defined in \telfile{CSTKEP}, -\item 2: Hans Burchard formula. -\end{itemize}""", - ), - ), -# ----------------------------------- - NUMERICAL_PARAMETERS = FACT(statut='o', -# ----------------------------------- -# ----------------------------------- - VERTICAL_VELOCITY_DERIVATIVES = SIMP(statut ='f', -# ----------------------------------- - typ = 'I', - defaut = 1, - fr = """Mode de calcul des derivees des vitesses suivant $z$ : -\begin{itemize} -\item 1 : derivee lineaire (classique) ; -\item 2 : derivee logarithmique (mieux pour profils logarithmiques). -\end{itemize}""", - ang = """Way of computing the velocity derivatives along $z$: -\begin{itemize} -\item 1: linear derivative (classic), -\item 2: logarithmic derivative (better for logarithmic profiles). -\end{itemize}""", - ), -# ----------------------------------- - ADVECTION = FACT(statut='o', -# ----------------------------------- -# ----------------------------------- - b_SCHEME_FOR_ADVECTION_OF_K_EPSILONF = BLOC(condition="((VERTICAL_TURBULENCE_MODEL == 3) or (HORIZONTAL_TURBULENCE_MODEL == 3) or (VERTICAL_TURBULENCE_MODEL == 7) or (HORIZONTAL_TURBULENCE_MODEL == 7))", -# ----------------------------------- - ), -# ----------------------------------- - SCHEME_FOR_ADVECTION_OF_K_EPSILON = SIMP(statut ='o', -# ----------------------------------- - typ = 'TXM', - into = ["NO ADVECTION","CHARACTERISTICS","EXPLICIT + SUPG","EXPLICIT LEO POSTMA","EXPLICIT + MURD SCHEME N","EXPLICIT + MURD SCHEME PSI","LEO POSTMA FOR TIDAL FLATS","N-SCHEME FOR TIDAL FLATS"], - defaut = "CHARACTERISTICS", - fr = """Fixe le schema utilise pour la convection du modele -$k$-$\epsilon$. Les choix possibles sont : -\begin{itemize} -\item 0 : pas de convection ; -\item 1 : caracteristiques ; -\item 2 : explicite + SUPG ; -\item 3 : explicite Leo Postma ; -\item 4 : explicite + MURD schema N ; -\item 5 : explicite + MURD schema PSI ; -\item 13 : Leo Postma pour bancs decouvrants ; -\item 14 : schema N pour bancs decouvrants. -\end{itemize}""", - ang = """Sets the advection scheme for the $k$-$\epsilon$ model. -Possible choices are: -\begin{itemize} -\item 0: no convection, -\item 1: characteristics, -\item 2: explicit + SUPG, -\item 3: explicit Leo Postma, -\item 4: explicit + MURD scheme N, -\item 5: explicit + MURD scheme PSI, -\item 13: Leo Postma for tidal flats, -\item 14: N-scheme for tidal flats. -\end{itemize}""", - ), -# ----------------------------------- - b_SCHEME_OPTION_FOR_ADVECTION_OF_K_EPSILONF = BLOC(condition="((VERTICAL_TURBULENCE_MODEL == 3) or (HORIZONTAL_TURBULENCE_MODEL == 3) or (VERTICAL_TURBULENCE_MODEL == 7) or (HORIZONTAL_TURBULENCE_MODEL == 7))", -# ----------------------------------- - ), -# ----------------------------------- - SCHEME_OPTION_FOR_ADVECTION_OF_K_EPSILON = SIMP(statut ='f', -# ----------------------------------- - typ = 'I', - defaut = 1, - fr = """Si present remplace et a priorite sur : -\telkey{OPTION POUR LES CARACTERISTIQUES} et -\telkey{OPTION DE SUPG}. -Si schema PSI ou N : -\begin{itemize} -\item 1 : explicite ; -\item 2 : predicteur-correcteur ; -\item 3 : predicteur-correcteur deuxieme ordre en temps ; -\item 4 : implicite. -\end{itemize}""", - ang = """If present replaces and has priority over: -\telkey{OPTION FOR CHARACTERISTICS} and -\telkey{SUPG OPTION}. -If N or PSI scheme: -\begin{itemize} -\item 1: explicit, -\item 2: predictor-corrector, -\item 3: predictor-corrector second-order in time, -\item 4: implicit. -\end{itemize}""", - ), - ), -# ----------------------------------- - DIFFUSION = FACT(statut='o', -# ----------------------------------- -# ----------------------------------- - SCHEME_FOR_DIFFUSION_OF_K_EPSILON = SIMP(statut ='o', -# ----------------------------------- - typ = 'TXM', - into = ["NO DIFFUSION","IMPLICIT"], - defaut = "IMPLICIT", - fr = """Permet de specifier si l''on utilise ou non la diffusion -de $k$ et $\epsilon$. -Les choix possibles sont : -\begin{itemize} -\item 0 : pas de diffusion, -\item 1 : implicite. -\end{itemize}""", - ang = """Monitors the choice of the diffusion scheme -for $k$ and $\epsilon$. -Possible choices are: -\begin{itemize} -\item 0: no diffusion, -\item 1: implicit. -\end{itemize}""", - ), -# ----------------------------------- - b_SCHEME_FOR_DIFFUSION_OF_K_EPSILONG = BLOC(condition="SCHEME_FOR_DIFFUSION_OF_K_EPSILON == 'IMPLICIT'", -# ----------------------------------- -# ----------------------------------- - SOLVER_FOR_DIFFUSION_OF_K_EPSILON = SIMP(statut ='o', -# ----------------------------------- - typ = 'TXM', - into = ["conjugate gradient","conjugate residual","conjugate gradient on a normal equation","minimum error","squared conjugate gradient","cgstab","gmres","direct solver"], - defaut = "conjugate gradient", - fr = """Permet de choisir le solveur utilise pour la resolution de -la diffusion du modele $k$-$\epsilon$. -Les choix possibles sont : -\begin{itemize} -\item 1 : gradient conjugue ; -\item 2 : residu conjugue ; -\item 3 : gradient conjugue sur equation normale ; -\item 4 : erreur minimale ; -\item 5 : gradient conjugue carre ; -\item 6 : CGSTAB ; -\item 7 : GMRES ; -\item 8 : solveur direct. -\end{itemize}""", - ang = """Choice of the solver for the diffusion of $k$ and $\epsilon$. -Possible choices are: -\begin{itemize} -\item 1: conjugate gradient, -\item 2: conjugate residual, -\item 3: conjugate gradient on a normal equation, -\item 4: minimum error, -\item 5: squared conjugate gradient, -\item 6: CGSTAB, -\item 7: GMRES, -\item 8: direct solver. -\end{itemize}""", - ), -# ----------------------------------- - b_SOLVER_FOR_DIFFUSION_OF_K_EPSILONG = BLOC(condition="SOLVER_FOR_DIFFUSION_OF_K_EPSILON == 'gmres'", -# ----------------------------------- -# ----------------------------------- - OPTION_OF_SOLVER_FOR_DIFFUSION_OF_K_EPSILON = SIMP(statut ='o', -# ----------------------------------- - typ = 'I', - defaut = 3, - fr = """Dimension de l''espace de Krylov pour la methode GMRES (7).""", - ang = """Dimension of Krylov space for the GMRES method (7).""", - ), - ), -# ----------------------------------- - ACCURACY_FOR_DIFFUSION_OF_K_EPSILON = SIMP(statut ='o', -# ----------------------------------- - typ = 'R', - defaut = 1.E-6, - fr = """Fixe la precision demandee pour le calcul de la diffusion -du $k$-$\epsilon$.""", - ang = """Sets the accuracy needed for the computation of the -diffusion of the $k$-$\epsilon$ model.""", - ), -# ----------------------------------- - MAXIMUM_NUMBER_OF_ITERATIONS_FOR_DIFFUSION_OF_K_EPSILON = SIMP(statut ='o', -# ----------------------------------- - typ = 'I', - defaut = 200, - fr = """Fixe le nombre maximum d''iterations accepte lors de la -resolution du systeme diffusion-termes sources du modele -$k$-$\epsilon$.""", - ang = """Limits the number of solver iterations for the diffusion of -$k$-$\epsilon$.""", - ), -# ----------------------------------- - PRECONDITIONING_FOR_DIFFUSION_OF_K_EPSILON = SIMP(statut ='o', -# ----------------------------------- - typ = 'TXM', - into = ["no preconditioning","diagonal","diagonal condensed","diagonal with absolute values","Crout","Gauss-Seidel EBE","Matrix defined by the user","diagonal and Crout","direct solver on the vertical","diagonal condensed and Crout","diagonal and direct solver on the vertical"], - defaut = "diagonal", - fr = """Permet de preconditionner le systeme relatif -a la diffusion du modele $k$-$\epsilon$. Les choix possibles sont : -\begin{itemize} -\item 0 : aucun ; -\item 2 : diagonal ; -\item 3 : diagonal avec matrice condensee ; -\item 5 : diagonal avec valeurs absolues ; -\item 7 : Crout ; -\item 11 : Gauss-Seidel EBE ; -\item 13 : matrice fournie par l''utilisateur ; -\item 14 : diagonal et Crout ; -\item 17 : solveur direct sur la verticale ; -\item 21 : diagonal condensee et Crout ; -\item 34 : diagonal et solveur direct sur la verticale. -\end{itemize}""", - ang = """Choice of preconditioning for the diffusion of -the $k$-$\epsilon$ model. Possible choices are: -\begin{itemize} -\item 0: no preconditioning, -\item 2: diagonal, -\item 3: diagonal with the condensed matrix, -\item 5: diagonal with absolute values, -\item 7: Crout, -\item 11: Gauss-Seidel EBE, -\item 13: matrix defined by the user, -\item 14: diagonal and Crout, -\item 17: direct solver on the vertical, -\item 21: diagonal condensed and Crout, -\item 34: diagonal and direct solver on the vertical. -\end{itemize}""", - ), - ), - ), - ), -# ----------------------------------- - TIDAL_FLATS_INFO = FACT(statut='o', -# ----------------------------------- -# ----------------------------------- - TREATMENT_ON_TIDAL_FLATS_FOR_K_EPSILON = SIMP(statut ='f', -# ----------------------------------- - typ = 'TXM', - into = ["FORCED TO ZERO","VALUE BEFORE MASKED"], - defaut = "FORCED TO ZERO", - fr = """Traitement sur les bancs decouvrants a l''etape de diffusion -pour $k$ et $\epsilon$. -\begin{itemize} -\item 0 : forcage a zero ; -\item 1 : valeur avant masquage. -\end{itemize}""", - ang = """Treatment of tidal flats at the diffusion step for $k$ and -$\epsilon$. -\begin{itemize} -\item 0: forced to zero, -\item 1: value before masked. -\end{itemize}""", - ), - ), -) -# ----------------------------------------------------------------------- -TRACERS = PROC(nom= "TRACERS",op = None, -# ----------------------------------------------------------------------- -# ----------------------------------- - NUMBER_OF_TRACERS = SIMP(statut ='o', -# ----------------------------------- - typ = 'I', - defaut = 0, - fr = """Definit le nombre de traceurs.""", - ang = """Defines the number of tracers.""", - ), -# ----------------------------------- - b_NUMBER_OF_TRACERSG = BLOC(condition="NUMBER_OF_TRACERS != 0", -# ----------------------------------- -# ----------------------------------- - NAMES_OF_TRACERS = SIMP(statut ='f', -# ----------------------------------- - typ = 'TXM', min=0, max='**', - fr = """Noms des traceurs en 32 caracteres, 16 pour le nom, -16 pour l''unite.""", - ang = """Name of tracers in 32 characters, 16 for the name, -16 for the unit.""", - ), - ), -# ----------------------------------- - PHYSICAL_PARAMETERS = FACT(statut='o', -# ----------------------------------- -# ----------------------------------- - METEOROLOGY = FACT(statut='f', -# ----------------------------------- -# ----------------------------------- - VALUES_OF_TRACERS_IN_THE_RAIN = SIMP(statut ='f', -# ----------------------------------- - typ = 'R', min=0, max='**', - fr = """Fixe la valeur des traceurs dans la pluie.""", - ang = """Sets the value of the tracers in the rain.""", - ), - ), -# ----------------------------------- - SOURCES = FACT(statut='f', -# ----------------------------------- -# ----------------------------------- - VALUE_OF_THE_TRACERS_AT_THE_SOURCES = SIMP(statut ='f', -# ----------------------------------- - typ = 'R', min=0, max='**', - fr = """Fixe la valeur des traceurs aux sources -toutes les sources pour le premier traceur -puis toutes les sources du deuxieme traceur, etc. -(cf. manuel utilisateur). -Par exemple, s''il y a 3 traceurs (T1, T2 et T3) et 2 sources -(S1 et S2), la syntaxe suivante est utilisee :\\ -S1\_T1;S1\_T2;S1\_T3;S2\_T1;S2\_T2;S2\_T3\\ -10.0; 10.0; 0.0; 0.0; 10.0; 10.0""", - ang = """Sets the value of the tracers at the sources. -All sources for the first tracer, then -all sources for the second tracer, etc. -(see user manual). -For example, if there are 3 tracers (T1, T2 and T3) -and 2 sources (S1 and S2), the following syntax is used:\\ -S1\_T1;S1\_T2;S1\_T3;S2\_T1;S2\_T2;S2\_T3\\ -10.0; 10.0; 0.0; 0.0; 10.0; 10.0""", - ), - ), -# ----------------------------------- - DENSITY = FACT(statut='o', -# ----------------------------------- -# ----------------------------------- - DENSITY_LAW = SIMP(statut ='o', -# ----------------------------------- - typ = 'I', - defaut = 0, - fr = """Donne le type de loi de densite utilisee dans le cas de -l''utilisation de traceurs actifs. Les choix possibles sont : -\begin{itemize} -\item 0 : rien ; -\item 1 : fonction de temperature ; -\item 2 : fonction de la salinite ; -\item 3 : fonction de temperature et salinite ; -\item 4 : BETA donne. -\end{itemize}""", - ang = """Gives the type of the law of density used in the case of -active tracers. The possible choices are: -\begin{itemize} -\item 0: nothing, -\item 1: function of temperature, -\item 2: function of salinity, -\item 3: function of temperature and salinity, -\item 4: function of BETA given coefficient. -\end{itemize}""", - ), -# ----------------------------------- - b_DENSITY_LAWG = BLOC(condition="DENSITY_LAW == 4", -# ----------------------------------- -# ----------------------------------- - BETA_EXPANSION_COEFFICIENT_FOR_TRACERS = SIMP(statut ='f', -# ----------------------------------- - typ = 'R', min=0, max='**', - fr = """Unite : K$^{-1}$. -Ce coefficient permet de definir l''evolution de la densite de -l''eau en fonction de la concentration en traceur lors de -l''utilisation de la valeur 4 du mot cle -\telkey{LOI DE DENSITE}.""", - ang = """Unit: K$^{-1}$. -This coefficient is used to define the evolution of the water density -with respect to the tracer concentration when using -\telkey{DENSITY LAW} = 4.""", - ), -# ----------------------------------- - STANDARD_VALUES_FOR_TRACERS = SIMP(statut ='f', -# ----------------------------------- - typ = 'R', min=0, max='**', - fr = """Valeur du traceur pour laquelle la densite est donnee lors de -l''utilisation de la valeur 4 du mot cle -\telkey{LOI DE DENSITE}.""", - ang = """Reference value of tracers corresponding to the given density -when using \telkey{DENSITY LAW} = 4.""", - ), - ), - ), - ), -# ----------------------------------- - BOUNDARY_CONDITIONS = FACT(statut='o', -# ----------------------------------- -# ----------------------------------- - PRESCRIBED_TRACERS_VALUES = SIMP(statut ='f', -# ----------------------------------- - typ = 'R', min=0, max='**', - fr = """Determine la valeur imposee des traceurs a la premiere -frontiere, puis a la deuxieme etc. suivant la meme logique que pour les -\telkey{VALEURS DES TRACEURS DES SOURCES}.""", - ang = """Determines the imposed value of tracers at the first boundary, -then at the second, and so on, with the same logic as -\telkey{VALUE OF THE TRACERS AT THE SOURCES}.""", - ), -# ----------------------------------- - TRACERS_VERTICAL_PROFILES = SIMP(statut ='f', -# ----------------------------------- - typ = 'TXM', min=0, max='**', - into = ["User defined","Constant","Constant or Rouse if sediment", "Normalized Rouse profile and imposed conc", "Modified Rouse profile accounting for molecular viscosity"], - fr = """Permet de specifier le type de profil de concentration des -traceurs sur la verticale. Les choix possibles sont : -\begin{itemize} -\item 0 : Programmation utilisateur ; -\item 1 : Constant ; -\item 2 : Rouse equilibrium concentration ; -\item 3 : Rouse (normalise) et concentration imposee. -\item 4 : Rouse modifie avec viscosite moleculaire. -\end{itemize}""", - ang = """Specifies the type of profiles of tracer concentration on the -vertical. Possible choices are: -\begin{itemize} -\item 0: user defined, -\item 1: constant, -\item 2: Rouse equilibrium, constant (diluted tracer) -or Rouse (sediment), -\item 3: Rouse (normalized) and imposed concentration. -\item 4: Rouse modified with molecular viscosity. -\end{itemize}""", - ), - ), -# ----------------------------------- - INITIALIZATION = FACT(statut='o', -# ----------------------------------- -# ----------------------------------- - INITIAL_VALUES_OF_TRACERS = SIMP(statut ='o', -# ----------------------------------- - typ = 'R', min=0, max='**', - fr = """Fixe la valeur initiale des traceurs.""", - ang = """Sets the initial values of tracers.""", - ), - ), -# ----------------------------------- - NUMERICAL_PARAMETERS = FACT(statut='o', -# ----------------------------------- -# ----------------------------------- - ADVECTION = FACT(statut='o', -# ----------------------------------- -# ----------------------------------- - SCHEME_FOR_ADVECTION_OF_TRACERS = SIMP(statut ='f', -# ----------------------------------- - typ = 'TXM', min=0, max='**', - into = ["NO ADVECTION","CHARACTERISTICS","EXPLICIT + SUPG","EXPLICIT LEO POSTMA","EXPLICIT + MURD SCHEME N","EXPLICIT + MURD SCHEME PSI","LEO POSTMA FOR TIDAL FLATS","N-SCHEME FOR TIDAL FLATS"], - fr = """Fixe le schema utilise pour la convection des traceurs. -Les choix possibles sont : -\begin{itemize} -\item 0 : pas de convection ; -\item 1 : caracteristiques ; -\item 2 : explicite + SUPG ; -\item 3 : explicite Leo Postma ; -\item 4 : explicite + MURD schema N ; -\item 5 : explicite + MURD schema PSI ; -\item 13 : Leo Postma pour bancs decouvrants ; -\item 14 : schema N pour bancs decouvrants. -\end{itemize}""", - ang = """Sets the advection scheme for the tracers. -Possible choices are: -\begin{itemize} -\item 0: no convection, -\item 1: characteristics, -\item 2: explicit + SUPG, -\item 3: explicit Leo Postma, -\item 4: explicit + MURD scheme N, -\item 5: explicit + MURD scheme PSI, -\item 13: Leo Postma for tidal flats, -\item 14: N-scheme for tidal flats. -\end{itemize}""", - ), -# ----------------------------------- - SCHEME_OPTION_FOR_ADVECTION_OF_TRACERS = SIMP(statut ='f', -# ----------------------------------- - typ = 'I', min=0, max='**', - defaut = [1], - fr = """Si present remplace et a priorite sur : -\telkey{OPTION POUR LES CARACTERISTIQUES} et -\telkey{OPTION DE SUPG}. -Si schema PSI ou N : -\begin{itemize} -\item 1 : explicite ; -\item 2 : predicteur-correcteur ; -\item 3 : predicteur-correcteur deuxieme ordre en temps ; -\item 4 : implicite. -\end{itemize}""", - ang = """If present replaces and has priority over: -\telkey{OPTION FOR CHARACTERISTICS} and -\telkey{SUPG OPTION}. -If N or PSI scheme: -\begin{itemize} -\item 1: explicit, -\item 2: predictor-corrector, -\item 3: predictor-corrector second-order in time, -\item 4: implicit. -\end{itemize}""", - ), - ), -# ----------------------------------- - DIFFUSION = FACT(statut='o', -# ----------------------------------- -# ----------------------------------- - SCHEME_FOR_DIFFUSION_OF_TRACERS = SIMP(statut ='f', -# ----------------------------------- - typ = 'TXM', - into = ["NO DIFFUSION","IMPLICIT","VERTICAL DIFFUSION ONLY"], - defaut = "IMPLICIT", - fr = """Permet de specifier si l''on utilise ou non la diffusion -des traceurs -Les choix possibles sont : -\begin{itemize} -\item 0 : pas de diffusion, -\item 1 : implicite; -\item 2 : diffusion verticale seulement. -\end{itemize}""", - ang = """Monitors the choice of the diffusion scheme -for tracers. -Possible choices are: -\begin{itemize} -\item 0: no diffusion, -\item 1: implicit, -\item 2: vertical diffusion only. -\end{itemize}""", - ), -# ----------------------------------- - b_SCHEME_FOR_DIFFUSION_OF_TRACERSG = BLOC(condition="SCHEME_FOR_DIFFUSION_OF_TRACERS != 'NO DIFFUSION'", -# ----------------------------------- -# ----------------------------------- - SOLVER_FOR_DIFFUSION_OF_TRACERS = SIMP(statut ='f', -# ----------------------------------- - typ = 'TXM', min=0, max='**', - into = ["conjugate gradient","conjugate residual","conjugate gradient on a normal equation","minimum error","squared conjugate gradient","cgstab","gmres","direct solver"], - fr = """Permet de choisir le solveur utilise pour la resolution de -la diffusion des traceurs. -Les choix possibles sont : -\begin{itemize} -\item 1 : gradient conjugue ; -\item 2 : residu conjugue ; -\item 3 : gradient conjugue sur equation normale ; -\item 4 : erreur minimale ; -\item 5 : gradient conjugue carre ; -\item 6 : CGSTAB ; -\item 7 : GMRES ; -\item 8 : solveur direct. -\end{itemize}""", - ang = """Choice of the solver for the diffusion of tracers. -Possible choices are: -\begin{itemize} -\item 1: conjugate gradient, -\item 2: conjugate residual, -\item 3: conjugate gradient on a normal equation, -\item 4: minimum error, -\item 5: squared conjugate gradient, -\item 6: CGSTAB, -\item 7: GMRES, -\item 8: direct solver. -\end{itemize}""", - ), -# ----------------------------------- - ACCURACY_FOR_DIFFUSION_OF_TRACERS = SIMP(statut ='f', -# ----------------------------------- - typ = 'R', - defaut = 1.E-6, - fr = """Fixe la precision demandee pour le calcul de la diffusion -des traceurs.""", - ang = """Sets the accuracy needed for the computation of -the diffusion of the tracers.""", - ), -# ----------------------------------- - MAXIMUM_NUMBER_OF_ITERATIONS_FOR_DIFFUSION_OF_TRACERS = SIMP(statut ='f', -# ----------------------------------- - typ = 'I', - defaut = 60, - fr = """Limite le nombre d''iterations du solveur a chaque pas -de temps pour le calcul de la diffusion des traceurs.""", - ang = """Limits the number of solver iterations for the diffusion of -tracers.""", - ), -# ----------------------------------- - PRECONDITIONING_FOR_DIFFUSION_OF_TRACERS = SIMP(statut ='f', -# ----------------------------------- - typ = 'TXM', min=0, max='**', - into = ["no preconditioning","diagonal","diagonal condensed","diagonal with absolute values","Crout","Gauss-Seidel EBE","Matrix defined by the user","diagonal and Crout","direct solver on the vertical","diagonal condensed and Crout","diagonal and direct solver on the vertical"], - fr = """Permet de preconditionner le systeme relatif -a la diffusion des traceurs. Les choix possibles sont : -\begin{itemize} -\item 0 : aucun ; -\item 2 : diagonal ; -\item 3 : diagonal avec matrice condensee ; -\item 5 : diagonal avec valeurs absolues ; -\item 7 : Crout ; -\item 11 : Gauss-Seidel EBE ; -\item 13 : matrice fournie par l''utilisateur ; -\item 14 : diagonal et Crout ; -\item 17 : solveur direct sur la verticale ; -\item 21 : diagonal condensee et Crout ; -\item 34 : diagonal et solveur direct sur la verticale. -\end{itemize}""", - ang = """Choice of preconditioning for the diffusion of tracers. -Possible choices are: -\begin{itemize} -\item 0: no preconditioning, -\item 2: diagonal, -\item 3: diagonal with the condensed matrix, -\item 5: diagonal with absolute values, -\item 7: Crout, -\item 11: Gauss-Seidel EBE, -\item 13: matrix defined by the user, -\item 14: diagonal and Crout, -\item 17: direct solver on the vertical, -\item 21: diagonal condensed and Crout, -\item 34: diagonal and direct solver on the vertical. -\end{itemize}""", - ), - ), -# ----------------------------------- - OPTION_OF_SOLVER_FOR_DIFFUSION_OF_TRACERS = SIMP(statut ='f', -# ----------------------------------- - typ = 'I', - defaut = 3, - fr = """Dimension de l''espace de Krylov pour la methode GMRES (7).""", - ang = """Dimension of Krylov space for the GMRES method (7).""", - ), - ), - ), -# ----------------------------------- - TIDAL_FLATS_INFO = FACT(statut='o', -# ----------------------------------- -# ----------------------------------- - TREATMENT_ON_TIDAL_FLATS_FOR_TRACERS = SIMP(statut ='f', -# ----------------------------------- - typ = 'TXM', - into = ["FORCED TO ZERO","VALUE BEFORE MASKED"], - defaut = "FORCED TO ZERO", - fr = """Traitement sur les bancs decouvrants a l''etape de diffusion. -\begin{itemize} -\item 0 : forcage a zero ; -\item 1 : valeur avant masquage. -\end{itemize}""", - ang = """Treatment of tidal flats at the diffusion step for tracers. -\begin{itemize} -\item 0: forced to zero, -\item 1: value before masked. -\end{itemize}""", - ), - ), -# ----------------------------------- - TURBULENCE = FACT(statut='o', -# ----------------------------------- -# ----------------------------------- - COEFFICIENT_FOR_HORIZONTAL_DIFFUSION_OF_TRACERS = SIMP(statut ='f', -# ----------------------------------- - typ = 'R', min=0, max='**', - fr = """Fixe les valeurs de coefficients de diffusion horizontal des -traceurs. L''influence de ce parametre sur l''evolution des traceurs -dans le temps est importante. -C est un tableau depuis la version 7.1, avec une valeur par traceur, -separation par un point virgule.""", - ang = """Sets the values of the horizontal diffusion of tracers. -These values may have a significant effect on the evolution of -tracers in time. -Since version 7.1, it has been an array, with one value per tracer, -separated by semicolons.""", - ), -# ----------------------------------- - COEFFICIENT_FOR_VERTICAL_DIFFUSION_OF_TRACERS = SIMP(statut ='f', -# ----------------------------------- - typ = 'R', min=0, max='**', - fr = """Fixe les valeurs de coefficients de diffusion vertical des -traceurs. L''influence de ce parametre sur l''evolution des traceurs -dans le temps est importante. -C est un tableau depuis la version 7.1, avec une valeur par traceur, -separation par un point virgule.""", - ang = """Sets the values of the vertical diffusion of tracers. -These values may have a significant effect on the evolution of -tracers in time. -Since version 7.1, it has been an array, with one value per tracer, -separated by semicolons.""", - ), - ), -) -# ----------------------------------------------------------------------- -SEDIMENT_INFO = PROC(nom= "SEDIMENT_INFO",op = None, -# ----------------------------------------------------------------------- -# ----------------------------------- - SEDIMENT = SIMP(statut ='o', -# ----------------------------------- - typ = bool, - defaut = False, - fr = """Permet de prendre en compte le transport sedimentaire.""", - ang = """If YES, sediment transport is modelled.""", - ), -# ----------------------------------- - DENSITY_OF_THE_SEDIMENT = SIMP(statut ='f', -# ----------------------------------- - typ = 'R', - defaut = 2650., - fr = """Fixe la valeur de la masse volumique du sediment (kg/m$^3$).""", - ang = """Value of the sediment density (kg/m$^3$).""", - ), -# ----------------------------------- - TIME_STEP_FOR_CONSOLIDATION = SIMP(statut ='f', -# ----------------------------------- - typ = 'R', - defaut = 1200., - fr = """Valeur du pas de temps pour le modele de consolidation qui -peut etre plus grand que le pas de temps hydrodynamique car le -phenomene est tres lent. Ce parametre est utilise si -\telkey{OPTION DU MODELE DE TASSEMENT} = 1 (Modele multicouches -empirique) ou 2 (Modele de Gibson (Lenormant)).""", - ang = """Time step for the modelling consolidation, which can -be greater than the hydrodynamic time step. This parameter is -used if \telkey{CONSOLIDATION MODEL} = 1 (Empirical multilayer model) -or 2 (Gibson model (Lenormant)).""", - ), -# ----------------------------------- - COHESIVE_SEDIMENT = SIMP(statut ='f', -# ----------------------------------- - typ = bool, - defaut = False, - fr = """Permet de dire si le sediment est cohesif ou non.""", - ang = """Tells if the sediment is cohesive or not.""", - ), -# ----------------------------------- - SHIELDS_PARAMETER = SIMP(statut ='f', -# ----------------------------------- - typ = 'R', - defaut = 0.047, - fr = """Utilise pour determiner la valeur de la contrainte critique -d''entrainement.""", - ang = """Used to determine the critical bed shear stress value.""", - ), -# ----------------------------------- - MIXED_SEDIMENT = SIMP(statut ='f', -# ----------------------------------- - typ = bool, - defaut = False, - fr = """Si OUI, calcul en sediments mixtes, il y aura un sediment -cohesif et un sediment non cohesif.""", - ang = """If YES, calculation of mixed sediment transport, there will be -one cohesive sediment and one non cohesive sediment.""", - ), -# ----------------------------------- - NUMBER_OF_SEDIMENT_BED_LAYERS = SIMP(statut ='f', -# ----------------------------------- - typ = 'I', - defaut = 1, - fr = """Structure verticale du lit cohesif, le nombre de couches -doit etre inferieur a 20.""", - ang = """Number of cohesive sediment bed layers, should be less -than 20.""", - ), -# ----------------------------------- - INPUT = FACT(statut='o', -# ----------------------------------- -# ----------------------------------- - DATA = FACT(statut='o', -# ----------------------------------- -# ----------------------------------- - READ_CRITICAL_BED_SHEAR_STRESS_PER_LAYER = SIMP(statut ='f', -# ----------------------------------- - typ = bool, - defaut = False, - fr = """Lecture de la contrainte critique d''erosion a -partir du \telkey{FICHIER DE GEOMETRIE}.""", - ang = """Decides if erosion shear stress at each layer is -read from \telkey{GEOMETRY FILE}.""", - ), - ), - ), -# ----------------------------------- - OUTPUT = FACT(statut='o', -# ----------------------------------- -# ----------------------------------- - RESULTS = FACT(statut='o', -# ----------------------------------- -# ----------------------------------- - SEDIMENTOLOGICAL_RESULT_FILE = SIMP(statut ='f', -# ----------------------------------- - typ = ('Fichier','All Files (*)','Sauvegarde'), - defaut = '', - fr = """Nom du fichier dans lequel seront ecrits les variables -decrivant le fond vaseux (epaisseurs et concentrations\ldots) -avec la periodicite donnee par le mot cle \telkey{PERIODE POUR -LES SORTIES GRAPHIQUES}.""", - ang = """Name of the file into which the sedimentological computation -results (thickness and concentration of the mud bed\ldots) shall be -written, the periodicity being given by the keyword -\telkey{GRAPHIC PRINTOUT PERIOD}.""", - ), -# ----------------------------------- - SEDIMENTOLOGICAL_RESULT_FILE_BINARY = SIMP(statut ='f', -# ----------------------------------- - typ = 'TXM', - into = ['STD','IBM','I3E'], - defaut = 'STD', - fr = """Type du binaire utilise pour l''ecriture du fichier -des resultats sedimentologiques. -Ce type depend de la machine sur laquelle le fichier a ete genere. -Les valeurs possibles sont : -\begin{itemize} -\item IBM pour un fichier cree sur IBM ; -\item I3E pour un fichier cree sur HP ; -\item STD. -\end{itemize} -Il s''agit alors d''ordres READ et WRITE normaux.""", - ang = """Binary file type used for writing the results file. -This type depends on the machine on which the file was generated. -The possible values are as follows: -\begin{itemize} -\item IBM, for a file on an IBM (from a CRAY), -\item I3E, for a file on an HP (from a CRAY), -\item STD, binary type of the machine on which the user is working. -\end{itemize} -In that case, normal READ and WRITE commands are used.""", - ), - ), - ), -# ----------------------------------- - RESTART = FACT(statut='o', -# ----------------------------------- -# ----------------------------------- - PREVIOUS_COMPUTATION_SEDIMENTOLOGICAL_FILE = SIMP(statut ='f', -# ----------------------------------- - typ = ('Fichier','All Files (*)'), - defaut = '', - fr = """Nom d''un fichier contenant les variables sedimentologiques -decrivant le fond vaseux, resultats d''un calcul precedent realise -sur le meme maillage et dont le dernier pas de temps enregistre -va fournir les conditions initiales pour une suite de de calcul.""", - ang = """Name of a file containing the sedimentological parameters -(thickness and concentration of the bed\ldots), results of an earlier -computation which was made on the same mesh. The last recorded time -step will provide the initial conditions for the new computation.""", - ), - ), -# ----------------------------------- - PHYSICAL_PARAMETERS = FACT(statut='o', -# ----------------------------------- -# ----------------------------------- - MEAN_DIAMETER_OF_THE_SEDIMENT = SIMP(statut ='f', -# ----------------------------------- - typ = 'R', - defaut = .01, - fr = """Valeur du diametre D50 pour les sediments non cohesifs.""", - ang = """Sets the value of the diameter D50 for non cohesive sediments.""", - ), -# ----------------------------------- - FRICTION = FACT(statut='o', -# ----------------------------------- -# ----------------------------------- - RATIO_BETWEEN_SKIN_FRICTION_AND_MEAN_DIAMETER = SIMP(statut ='f', -# ----------------------------------- - typ = 'R', - defaut = 3.0, - fr = """Ratio pour le calcul du frottement de peau. -rugosite de peau = ratio $\times$ diametre moyen.""", - ang = """ Ratio for the computation of skin friction. -skin roughness = ratio $\times$ mean diameter.""", - ), -# ----------------------------------- - SKIN_FRICTION_CORRECTION = SIMP(statut ='f', -# ----------------------------------- - typ = 'I', - defaut = 0, - fr = """Prise en compte du frottement de peau : -\begin{itemize} -\item 0 : pas de correction (TAUP = TOB) voir aussi -\telkey{RATIO BETWEEN SKIN FRICTION AND MEAN DIAMETER} : -\telfile{KSPRATIO} ; -\item 1 : fond plat (KSP = \telfile{KSPRATIO} $\times$ \telfile{D50}) ; -\item 2 : prise en compte des rides (non programme). -\end{itemize}""", - ang = """Formula to predict the skin bed roughness: -\begin{itemize} -\item 0: No correction (TAUP = TOB) see also -\telkey{RATIO ENTRE LA RUGOSITE DE PEAU ET LE DIAMETRE MOYEN} -\telfile{KSPRATIO}, -\item 1: Flat bed (KSP = \telfile{KSPRATIO} $\times$ \telfile{D50}), -\item 2: Ripple correction factor (not yet implemented). -\end{itemize}""", - ), - ), - ), -# ----------------------------------- - INITIALIZATION = FACT(statut='o', -# ----------------------------------- -# ----------------------------------- - INITIAL_PERCENTAGE_OF_NON_COHESIVE_SEDIMENT = SIMP(statut ='f', -# ----------------------------------- - typ = 'R', - defaut = 0., - fr = """Pourcentage initial du sediment non cohesif (mixte).""", - ang = """Initial percentage of non cohesive sediment (mixed sediments).""", - ), -# ----------------------------------- - MUD_CONCENTRATIONS_PER_LAYER = SIMP(statut ='f', -# ----------------------------------- - typ = 'R', min= 2, max= 2, - fr = """Concentration du lit de vase en g/L (definie par couches) en -commencant par la couche du fond.""", - ang = """Dry density of the mud-bed layers in g/L starting -form the bottom upwards.""", - ), -# ----------------------------------- - CRITICAL_EROSION_SHEAR_STRESS_OF_THE_MUD_LAYERS = SIMP(statut ='f', -# ----------------------------------- - typ = 'R', min= 2, max= 2, - fr = """Taux critique d erosion de la vase (N/m$^2$). -Doit etre defini pour chaque couche en commencant par la couche de -fond.""", - ang = """Critical erosion shear stress of the mud per layer -(N/m$^2$). -Needs to be defined for each layer (N/m$^2$), -starting from the condolidated bottom layer upwards.""", - ), -# ----------------------------------- - INITIAL_THICKNESS_OF_SEDIMENT_LAYERS = SIMP(statut ='f', -# ----------------------------------- - typ = 'R', min= 2, max= 2, - fr = """Epaisseurs initiales des sediments (m).""", - ang = """Sediment layers thickness (m) for initialisation.""", - ), - ), -# ----------------------------------- - NUMERICAL_PARAMETERS = FACT(statut='o', -# ----------------------------------- -# ----------------------------------- - DIFFUSION = FACT(statut='o', -# ----------------------------------- -# ----------------------------------- - SOLVER_FOR_DIFFUSION_OF_THE_SEDIMENT = SIMP(statut ='o', -# ----------------------------------- - typ = 'TXM', - into = ["conjugate gradient","conjugate residual","conjugate gradient on a normal equation","minimum error","squared conjugate gradient","cgstab","gmres","direct solver"], - defaut = "conjugate gradient on a normal equation", - fr = """Permet de choisir le solveur utilise pour la resolution de -la diffusion du sediment. -Les choix possibles sont : -\begin{itemize} -\item 1 : gradient conjugue ; -\item 2 : residu conjugue ; -\item 3 : gradient conjugue sur equation normale ; -\item 4 : erreur minimale ; -\item 5 : gradient conjugue carre ; -\item 6 : CGSTAB ; -\item 7 : GMRES ; -\item 8 : solveur direct. -\end{itemize}""", - ang = """Choice of the solver for the sediment equation. -Possible choices are: -\begin{itemize} -\item 1: conjugate gradient, -\item 2: conjugate residual, -\item 3: conjugate gradient on a normal equation, -\item 4: minimum error, -\item 5: squared conjugate gradient, -\item 6: CGSTAB, -\item 7: GMRES, -\item 8: direct solver. -\end{itemize}""", - ), -# ----------------------------------- - b_SOLVER_FOR_DIFFUSION_OF_THE_SEDIMENTG = BLOC(condition="SOLVER_FOR_DIFFUSION_OF_THE_SEDIMENT == 'gmres'", -# ----------------------------------- -# ----------------------------------- - OPTION_OF_SOLVER_FOR_DIFFUSION_OF_THE_SEDIMENT = SIMP(statut ='o', -# ----------------------------------- - typ = 'I', - defaut = 3, - fr = """Dimension de l''espace de Krylov pour la methode GMRES (7).""", - ang = """Dimension of Krylov space for the GMRES method (7).""", - ), - ), -# ----------------------------------- - ACCURACY_FOR_DIFFUSION_OF_SEDIMENT = SIMP(statut ='o', -# ----------------------------------- - typ = 'R', - defaut = 1.E-6, - fr = """Fixe la precision demandee pour le calcul de la diffusion -des sediments.""", - ang = """Sets the accuracy needed for the computation of the -diffusion of sediments.""", - ), -# ----------------------------------- - MAXIMUM_NUMBER_OF_ITERATIONS_FOR_DIFFUSION_OF_SEDIMENT = SIMP(statut ='o', -# ----------------------------------- - typ = 'I', - defaut = 60, - fr = """Limite le nombre d''iterations du solveur a chaque pas -de temps pour le calcul de la diffusion du sediment.""", - ang = """Limits the number of solver iterations for the diffusion of -sediment.""", - ), -# ----------------------------------- - PRECONDITIONING_FOR_DIFFUSION_OF_THE_SEDIMENT = SIMP(statut ='o', -# ----------------------------------- - typ = 'TXM', - into = ["no preconditioning","diagonal","diagonal condensed","diagonal with absolute values","Crout","Gauss-Seidel EBE","Matrix defined by the user","diagonal and Crout","direct solver on the vertical","diagonal condensed and Crout","diagonal and direct solver on the vertical"], - defaut = "diagonal", - fr = """Permet de preconditionner le systeme relatif -a la diffusion du sediment. Les choix possibles sont : -\begin{itemize} -\item 0 : aucun ; -\item 2 : diagonal ; -\item 3 : diagonal avec matrice condensee ; -\item 5 : diagonal avec valeurs absolues ; -\item 7 : Crout ; -\item 11 : Gauss-Seidel EBE ; -\item 13 : matrice fournie par l''utilisateur ; -\item 14 : diagonal et Crout ; -\item 17 : solveur direct sur la verticale ; -\item 21 : diagonal condensee et Crout ; -\item 34 : diagonal et solveur direct sur la verticale. -\end{itemize} -Certains preconditionnements sont cumulables -(les diagonaux 2 ou 3 avec les autres). -Pour cette raison on ne retient que les nombres premiers pour -designer les preconditionnements. Si l''on souhaite en cumuler -plusieurs on formera le produit des options correspondantes.""", - ang = """Choice of the preconditioning in the sediment diffusion -system that the convergence is speeded up when it is being solved. -Possible choices are: -\begin{itemize} -\item 0: no preconditioning, -\item 2: diagonal, -\item 3: diagonal with the condensed matrix, -\item 5: diagonal with absolute values, -\item 7: Crout, -\item 11: Gauss-Seidel EBE, -\item 13: matrix defined by the user, -\item 14: diagonal and Crout, -\item 17: direct solver on the vertical, -\item 21: diagonal condensed and Crout, -\item 34: diagonal and direct solver on the vertical. -\end{itemize} -Some operations (either 2 or 3 diagonal preconditioning) can be -performed concurrently with the others. -Only prime numbers are therefore kept to denote the preconditioning -operations. When several of them are to be performed concurrently, -the product of relevant options shall be done.""", - ), - ), - ), -# ----------------------------------- - TIDAL_FLATS_INFO = FACT(statut='o', -# ----------------------------------- -# ----------------------------------- - THRESHOLD_FOR_SEDIMENT_FLUX_CORRECTION_ON_TIDAL_FLATS = SIMP(statut ='o', -# ----------------------------------- - typ = 'R', - defaut = 0.2, - fr = """Pour les profondeurs inferieures a cette valeur limite, le flux -sedimentaire sera nul. Voir le sous-programme \telfile{FLUSED}.""", - ang = """Below this limiting depth, all sediment erosion rates are set -to zero. See subroutine \telfile{FLUSED}.""", - ), - ), -# ----------------------------------- - DEPOSITION = FACT(statut='o', -# ----------------------------------- -# ----------------------------------- - CRITICAL_SHEAR_STRESS_FOR_DEPOSITION = SIMP(statut ='f', -# ----------------------------------- - typ = 'R', - defaut = 0.2, - fr = """Fixe la valeur de la contrainte de cisaillement au fond -au dessous de laquelle se produit le depot des sediments cohesifs.""", - ang = """Value of the critical bottom shear stress under which -deposition of cohesive sediments occurs.""", - ), -# ----------------------------------- - NON_COHESIVE_BED_POROSITY = SIMP(statut ='f', -# ----------------------------------- - typ = 'R', - defaut = 0.4, - fr = """La concentration massique du lit \telfile{CFDEP} est definie par -\telfile{CFDEP} = (1-\telfile{XKV}) $\times$ \telfile{RHOS}. -Ce parametre est utilise pour les sediments non-cohesifs.""", - ang = """The bed volume concentration -\telfile{CFDEP} = (1-\telfile{XKV}) $\times$ \telfile{RHOS} -is used to calculate the bed evolution of non-cohesive sand transport.""", - ), - ), -# ----------------------------------- - EROSION = FACT(statut='o', -# ----------------------------------- -# ----------------------------------- - EROSION_COEFFICIENT = SIMP(statut ='f', -# ----------------------------------- - typ = 'R', - defaut = 2.E-3, - fr = """Valeur du coefficient d''erosion utilise dans la formule -de Partheniades en kg/m$^2$/s.""", - ang = """Value of the erosion coefficient used in Partheniades -formula in kg/m$^2$/s.""", - ), - ), -# ----------------------------------- - SETTLING_VELOCITY = FACT(statut='o', -# ----------------------------------- -# ----------------------------------- - CONSTANT_SEDIMENT_SETTLING_VELOCITY = SIMP(statut ='f', -# ----------------------------------- - typ = 'R', - defaut = 0.01, - fr = """Vitesse de chute constante en m/s (> 0 depuis v6.3). -Valeur imposee si -\telkey{INFLUENCE DE LA TURBULENCE SUR LA VITESSE DE CHUTE} -= NON.""", - ang = """Constant sediment settling velocity in m/s (>0 since v6.3). -Prescribed value if -\telkey{INFLUENCE OF TURBULENCE ON SETTLING VELOCITY} = NO.""", - ), -# ----------------------------------- - SETTLING_VELOCITY_OF_SANDS = SIMP(statut ='f', -# ----------------------------------- - typ = 'R', - defaut = 0., - fr = """Vitesse de chute du sediment non cohesif.""", - ang = """Non cohesive sediment settling velocity.""", - ), -# ----------------------------------- - ADVECTION_DIFFUSION_SCHEME_WITH_SETTLING_VELOCITY = SIMP(statut ='f', -# ----------------------------------- - typ = 'I', - defaut = 0, - fr = """Choix de schema vertical pour la diffusion et le depot du -sediment : -\begin{itemize} -\item 0 : Diffusion implicite ; -\item 1 : Schema implicite de convection-diffusion -(tridiagonal matrix solver) ; -\item 2 : Convection faible \telfile{sed\_fall.f} -\end{itemize}""", - ang = """Choice of the vertical scheme for diffusion and settling of -sediment: -\begin{itemize} -\item 0: Implicit-diffusion scheme, -\item 1: Implicit-convection scheme (Tridiagonal matrix solver), -\item 2: \telfile{set\_fall.f} -\end{itemize}""", - ), -# ----------------------------------- - HINDERED_SETTLING = SIMP(statut ='f', -# ----------------------------------- - typ = bool, - defaut = False, - fr = """Decide si la formulation entravee doit etre utilisee -pour calculer la vitesse de chute de la vase.""", - ang = """Decides if hindered formulation is to be used to -compute settling velocity for mud.""", - ), -# ----------------------------------- - WEAK_SOIL_CONCENTRATION_FOR_MUD = SIMP(statut ='f', -# ----------------------------------- - typ = 'R', - defaut = 0.0, - fr = """Concentration limite en kg/m$^3$ au-dela de laquelle -la couche de vase fluide devient solide. -Cette valeur est demandee lorsque -\telkey{VITESSE DE CHUTE ENTRAVEE} = OUI.""", - ang = """The sediment concentration at which sediment -forms a weak soil in kg/m$^3$. These values are needed when -\telkey{HINDERED SETTLING} = YES.""", - ), -# ----------------------------------- - THRESHOLD_CONCENTRATION_FOR_HINDERED_SETTLING = SIMP(statut ='f', -# ----------------------------------- - typ = 'R', - defaut = 0.0, - fr = """Concentration de sediment a laquelle la chute entravee est -initiee. Ces valeurs sont necessaires lorsque -\telkey{VITESSE DE CHUTE ENTRAVEE} = OUI.""", - ang = """The sediment concentration at which hindered settling is -initiated. These values are needed when -\telkey{HINDERED SETTLING} = YES.""", - ), -# ----------------------------------- - HINDERED_SETTLING_FORMULA = SIMP(statut ='f', -# ----------------------------------- - typ = 'I', - defaut = 1, - fr = """Type de vitesse de chute entravee : -\begin{itemize} -\item 1 : Whitehouse et al. (2000) - fonctionne ; -\item 2 : Winterwerp (1999) - ne fonctionne pas actuellement. -\end{itemize}""", - ang = """Type of hindered settling: -\begin{itemize} -\item 1: Whitehouse et al. (2000) - working, -\item 2: Winterwerp (1999) - not currently working. -\end{itemize}""", - ), - ), -# ----------------------------------- - SUSPENSION = FACT(statut='o', -# ----------------------------------- -# ----------------------------------- - REFERENCE_CONCENTRATION_FORMULA = SIMP(statut ='f', -# ----------------------------------- - typ = 'I', - defaut = 1, - fr = """\begin{itemize} -\item 1 : formule de Zyserman et Fredsoe, formule d''equilibre ; -\item 3 : formule de Van Rijn (1987). -\end{itemize}""", - ang = """\begin{itemize} -\item 1: Zyserman and Fredsoe, equilibrium formula, -\item 3: Van Rijn formula (1987). -\end{itemize}""", - ), - ), -# ----------------------------------- - FLOCCULATION_INFO = FACT(statut='o', -# ----------------------------------- -# ----------------------------------- - FLOCCULATION = SIMP(statut ='f', -# ----------------------------------- - typ = bool, - defaut = False, - fr = """Decide si la formulation entravee doit etre utilisee -pour calculer la vitesse de chute pour la vase.""", - ang = """Decides if hindered formulation is to be used to -compute settling velocity for mud.""", - ), -# ----------------------------------- - FLOCCULATION_FORMULA = SIMP(statut ='f', -# ----------------------------------- - typ = 'I', - defaut = 1, - fr = """Formule pour floculation : -\begin{itemize} -\item 1: Van Leussen ; -\item 2: Soulsby et al. (2013). -\end{itemize}""", - ang = """Type of flocculation formula: -\begin{itemize} -\item 1: Van Leussen, -\item 2: Soulsby et al. (2013). -\end{itemize}""", - ), -# ----------------------------------- - FLOCCULATION_COEFFICIENT = SIMP(statut ='f', -# ----------------------------------- - typ = 'R', - defaut = 0.3, - fr = """Coefficient intervenant dans la modelisation de l''influence de -la turbulence sur la floculation, il intervient plus precisement dans -le terme de formation des flocs par les contraintes turbulentes -(coefficient $a$ de la formule de Van Leussen). -Valeur a imposer si -\telkey{INFLUENCE DE LA TURBULENCE SUR LA VITESSE DE CHUTE} -= OUI.""", - ang = """When the influence of turbulence on the settling velocity -is modelled, this coefficient traduces the formation of flocs by -turbulence (coefficient $a$ of Van Leussen formula). -Value to be imposed if -\telkey{INFLUENCE OF TURBULENCE ON SETTLING VELOCITY} = YES.""", - ), -# ----------------------------------- - COEFFICIENT_RELATIVE_TO_FLOC_DESTRUCTION = SIMP(statut ='f', -# ----------------------------------- - typ = 'R', - defaut = 0.09, - fr = """Coefficient intervenant dans la modelisation de l''influence de -la turbulence sur la floculation, il intervient plus precisement dans -le terme de destruction des flocs par les contraintes turbulentes -(coefficient $b$ de la formulede Van Leussen). -Valeur a imposer si -\telkey{INFLUENCE DE LA TURBULENCE SUR LA VITESSE DE CHUTE} -= OUI.""", - ang = """When the influence of turbulence on the settling velocity -is modelled, this coefficient traduces the breaking of flocs by -turbulence (coefficient $b$ of Van Leussen formula). -Value to be imposed if -\telkey{INFLUENCE OF TURBULENCE ON SETTLING VELOCITY} = YES.""", - ), - ), -# ----------------------------------- - DEPRECATED = FACT(statut='o', -# ----------------------------------- -# ----------------------------------- - CLEANING_TO_BE_DONE = FACT(statut='o', -# ----------------------------------- -# ----------------------------------- - BED_LAYERS_THICKNESS = SIMP(statut ='f', -# ----------------------------------- - typ = 'R', - defaut = 5.E-3, - fr = """Epaisseur de reference pour creer de nouvelles couches -de vase. Ce parametre est utilise seulement dans le cas -\telkey{OPTION DU MODELE DE TASSEMENT} = 2 -(modele de Gibson (Lenormant)). Avec ce modele, le sediment -qui se depose sur le fond est tout d''abord stocke dans une couche -tampon appelee couche des depots frais. C''est seulement quand -l''epaisseur de cette couche atteint la valeur donnee par le mot -cle \telkey{EPAISSEUR DES COUCHES DU FOND VASEUX} qu''une nouvelle -couche est cree au niveau du lit de vase.""", - ang = """Reference thickness considered for the creation of new -bed layers. -This parameter is used if \telkey{CONSOLIDATION MODEL} = 2 -(Gibson model (Lenormant)). -With this model, the sediment which settles on -the bottom arrives at first in the fresh deposit layer. When -the thickness of this layer is equal to the -\telkey{BED LAYERS THICKNESS}, -a new mud layer is added to the mud bed.""", - ), -# ----------------------------------- - MAXIMUM_CONCENTRATION_OF_THE_CONSOLIDATED_MUD = SIMP(statut ='f', -# ----------------------------------- - typ = 'R', - defaut = 500., - fr = """Concentration maximale pouvant etre atteinte par une couche -de vase lors du tassement. -Ce parametre est utilise si \telkey{OPTION DU MODELE DE TASSEMENT} = 2 -(Modele de Gibson - Lenormant).""", - ang = """Maximum concentration which may be reached by a mud layer -during consolidation. -This value is used if \telkey{CONSOLIDATION MODEL} = 2 -(Gibson model (Lenormant)).""", - ), -# ----------------------------------- - RESIDENCE_TIME_FOR_MUD = SIMP(statut ='f', -# ----------------------------------- - typ = 'R', min=30, max=30, - fr = """Tableau contenant les temps de sejour en heure et centieme -relatifs a chacune des couches discretisant le fond vaseux -(la premiere valeur correspond a la couche du fond et la derniere -correspond a la couche superficielle). -Valeurs necessaires si \telkey{OPTION DU MODELE DE TASSEMENT} = 1 -(Modele multicouches empirique).""", - ang = """Array which contains the residence times of the mud bed -layers (the first value is related to the bottom layer and the -last one to the top layer). -These values are needed when \telkey{CONSOLIDATION MODEL} = 1 -(Empirical multilayer model).""", - ), - ), -# ----------------------------------- - TO_BE_CHECKED = FACT(statut='o', -# ----------------------------------- -# ----------------------------------- - CONSOLIDATION = SIMP(statut ='f', -# ----------------------------------- - typ = bool, - defaut = False, - fr = """Logique pour la prise en compte du tassement des depots vaseux -a l''aide d''un modele multicouches : les couches discretisant le fond -sont caracterisees par leur temps de sejour, temps au bout duquel la -vase presente dans cette couche bascule dans la couche suivante plus -consolidee.""", - ang = """If this key word is equal to YES, consolidation is simulated -thanks to a multi-layers model: the bed layers are characterized by -their residence time which is the time after which the quantity of -mud which remains in a layer goes into a more consolidated layer.""", - ), -# ----------------------------------- - CONSOLIDATION_MODEL = SIMP(statut ='f', -# ----------------------------------- - typ = 'I', - defaut = 1, - fr = """Choix du modele de tassement : -\begin{itemize} -\item 1 : Modele multicouches empirique ; -\item 2 : Modele de Gibson (Lenormant). -\end{itemize}""", - ang = """Choice of the consolidation model: -\begin{itemize} -\item 1: Empirical multilayer model, -\item 2: Gibson model (Lenormant). -\end{itemize}""", - ), - ), - ), -) -# ----------------------------------------------------------------------- -COUPLING = PROC(nom= "COUPLING",op = None, -# ----------------------------------------------------------------------- -# ----------------------------------- - COUPLING_WITH = SIMP(statut ='o', -# ----------------------------------- - typ = 'TXM', - into = ['NOTHING','SISYPHE','TOMAWAC','WAQTEL','DELWAQ'], - defaut = 'NOTHING', - fr = """Liste des codes avec lesquels on couple TELEMAC-3D : -\begin{itemize} -\item \sisyphe : couplage interne avec \sisyphe ; -\item \tomawac : couplage interne avec \tomawac ; -\item WAQTEL : couplage interne avec WAQTEL ; -\item DELWAQ : sortie de fichiers de resultats pour Delwaq. -\end{itemize}""", - ang = """List of codes to be coupled with TELEMAC-3D: -\begin{itemize} -\item \sisyphe: internal coupling with \sisyphe, -\item \tomawac: internal coupling with \tomawac, -\item WAQTEL: internal coupling with WAQTEL, -\item DELWAQ: will yield results file for DELWAQ. -\end{itemize}""", - ), -# ----------------------------------- - b_COUPLING_WITHG = BLOC(condition="COUPLING_WITH == 'SISYPHE'", -# ----------------------------------- -# ----------------------------------- - SISYPHE_STEERING_FILE = SIMP(statut ='o', -# ----------------------------------- - typ = 'TXM', - defaut = '', - fr = """Fichier des parametres de \sisyphe en cas de couplage -interne.""", - ang = """\sisyphe parameter file in case of internal coupling.""", - ), -# ----------------------------------- - COUPLING_PERIOD_FOR_SISYPHE = SIMP(statut ='o', -# ----------------------------------- - typ = 'I', - defaut = 1, - fr = """Fixe la periode de couplage avec le module \sisyphe, -en nombre de pas de temps. -Par defaut, il est couple a chaque pas de temps.""", - ang = """Sets the coupling period with the \sisyphe module, in number -of time steps. By default, it is coupled at every time step.""", - ), - ), -# ----------------------------------- - b_COUPLING_WITHH = BLOC(condition="COUPLING_WITH == 'TOMAWAC'", -# ----------------------------------- -# ----------------------------------- - TOMAWAC_STEERING_FILE = SIMP(statut ='o', -# ----------------------------------- - typ = 'TXM', - defaut = '', - fr = """Fichier des parametres de \tomawac en cas de couplage -interne.""", - ang = """\tomawac parameter file in case of internal coupling.""", - ), -# ----------------------------------- - COUPLING_PERIOD_FOR_TOMAWAC = SIMP(statut ='o', -# ----------------------------------- - typ = 'I', - defaut = 1, - fr = """Fixe la periode de couplage avec le module \tomawac, -en nombre de pas de temps. -Par defaut, il est couple a chaque pas de temps.""", - ang = """Sets the coupling period with the \tomawac module, in number -of time steps. By default, it is coupled at every time step.""", - ), - ), -# ----------------------------------- - b_COUPLING_WITHI = BLOC(condition="COUPLING_WITH == 'WAQTEL'", -# ----------------------------------- -# ----------------------------------- - WAQTEL_STEERING_FILE = SIMP(statut ='o', -# ----------------------------------- - typ = 'TXM', max='**', - defaut = '', - fr = """Fichier des parametres physiques pour les -processus de qualite d''eau (internes, pas ceux de DELWAQ).""", - ang = """File for physical parameters of water quality processes -(local ones of \telemac-TRACER not those of DELWAQ).""", - ), -# ----------------------------------- - WATER_QUALITY_PROCESS = SIMP(statut ='o', -# ----------------------------------- - typ = 'I', - defaut = 1, - fr = """Donne le numero du processus de qualite d''eau, defini -comme une combinaison multiplicative de nombres premiers -(2, 3, 5, 7, 11, 13, 17 et 19) avec les cas particuliers 0 et 1 : -\begin{itemize} -\item 0 : tous ; -\item 1 : rien ; -\item 2 : O2 ; -\item 3 : BIOMASS ; -\item 5 : EUTRO ; -\item 7 : MICROPOL ; -\item 11 : THERMIC ; -\item 13 : AED2 ; -\item 17 : Loi de degradation ; -\item 19 : Court-circuit temporaire pour les glaces. -\end{itemize} -Exemple : 110 = 2x5x11 activera O2, EUTRO et THERMIC ensemble. -On notera qu''AED2, pour l''instant, doit etre utilise toute seule -sans combinaison possible avec d autre processus de qualite de l eau.""", - ang = """Gives the water quality process number, defined as -a multiplicative combination of prime numbers (2, 3, 5, 7, 11, 13, 17 -and 19) with 0 and 1 having a special role: -\begin{itemize} -\item 0: all, -\item 1: none, -\item 2: O2, -\item 3: BIOMASS, -\item 5: EUTRO, -\item 7: MICROPOL, -\item 11: THERMIC, -\item 13: AED2, -\item 17: Degradation law, -\item 19: Ghost process for ice modelling. -\end{itemize} -Example: 110 = 2x5x11 activates O2, EUTRO and THERMIC together. -It is noted that AED2 should be used on its own, for the time being, -without possible combination with other processes.""", - ), - ), -# ----------------------------------- - b_COUPLING_WITHJ = BLOC(condition="COUPLING_WITH == 'DELWAQ'", -# ----------------------------------- -# ----------------------------------- - DELWAQ_STEERING_FILE = SIMP(statut ='o', -# ----------------------------------- - typ = ('Fichier','All Files (*)','Sauvegarde'), max='**', - defaut = '', - fr = """Fichier de commande pour le couplage avec DELWAQ.""", - ang = """Steering file for coupling with DELWAQ.""", - ), -# ----------------------------------- - DELWAQ_PRINTOUT_PERIOD = SIMP(statut ='o', -# ----------------------------------- - typ = 'I', - defaut = 1, - fr = """Periode de sortie des resultats pour DELWAQ.""", - ang = """Printout period for DELWAQ files.""", - ), -# ----------------------------------- - EXCHANGES_BETWEEN_NODES_DELWAQ_FILE = SIMP(statut ='o', -# ----------------------------------- - typ = ('Fichier','All Files (*)','Sauvegarde'), max='**', - defaut = '', - fr = """Fichier de resultats pour le couplage avec DELWAQ.""", - ang = """Results file for coupling with DELWAQ.""", - ), -# ----------------------------------- - NODES_DISTANCES_DELWAQ_FILE = SIMP(statut ='o', -# ----------------------------------- - typ = ('Fichier','All Files (*)','Sauvegarde'), max='**', - defaut = '', - fr = """Fichier de resultats pour le couplage avec DELWAQ.""", - ang = """Results file for coupling with DELWAQ.""", - ), -# ----------------------------------- - BOTTOM_SURFACES_DELWAQ_FILE = SIMP(statut ='o', -# ----------------------------------- - typ = ('Fichier','All Files (*)','Sauvegarde'), max='**', - defaut = '', - fr = """Fichier de resultats pour le couplage avec DELWAQ.""", - ang = """Results file for coupling with DELWAQ.""", - ), -# ----------------------------------- - VOLUMES_DELWAQ_FILE = SIMP(statut ='o', -# ----------------------------------- - typ = ('Fichier','All Files (*)','Sauvegarde'), max='**', - defaut = '', - fr = """Fichier de resultats pour le couplage avec DELWAQ.""", - ang = """Results file for coupling with DELWAQ.""", - ), -# ----------------------------------- - EXCHANGE_AREAS_DELWAQ_FILE = SIMP(statut ='o', -# ----------------------------------- - typ = ('Fichier','All Files (*)','Sauvegarde'), max='**', - defaut = '', - fr = """Fichier de resultats pour le couplage avec DELWAQ.""", - ang = """Results file for coupling with DELWAQ.""", - ), -# ----------------------------------- - VERTICAL_FLUXES_DELWAQ_FILE = SIMP(statut ='o', -# ----------------------------------- - typ = ('Fichier','All Files (*)','Sauvegarde'), max='**', - defaut = '', - fr = """Fichier de resultats pour le couplage avec DELWAQ.""", - ang = """Results file for coupling with DELWAQ.""", - ), -# ----------------------------------- - VELOCITY_FOR_DELWAQ = SIMP(statut ='o', -# ----------------------------------- - typ = bool, - defaut = False, - fr = """Decide de la sortie de la vitesse pour DELWAQ.""", - ang = """Triggers the output of velocity for DELWAQ.""", - ), -# ----------------------------------- - b_VELOCITY_FOR_DELWAQG = BLOC(condition="VELOCITY_FOR_DELWAQ == True", -# ----------------------------------- -# ----------------------------------- - VELOCITY_DELWAQ_FILE = SIMP(statut ='o', -# ----------------------------------- - typ = ('Fichier','All Files (*)','Sauvegarde'), max='**', - defaut = '', - fr = """Fichier de resultats pour le couplage avec DELWAQ.""", - ang = """Results file for coupling with DELWAQ.""", - ), - ), -# ----------------------------------- - DIFFUSION_FOR_DELWAQ = SIMP(statut ='o', -# ----------------------------------- - typ = bool, - defaut = False, - fr = """Decide de la sortie de la diffusion pour DELWAQ.""", - ang = """Triggers the output of diffusion for DELWAQ.""", - ), -# ----------------------------------- - b_DIFFUSION_FOR_DELWAQG = BLOC(condition="DIFFUSION_FOR_DELWAQ == True", -# ----------------------------------- -# ----------------------------------- - DIFFUSIVITY_DELWAQ_FILE = SIMP(statut ='o', -# ----------------------------------- - typ = ('Fichier','All Files (*)','Sauvegarde'), max='**', - defaut = '', - fr = """Fichier de resultats pour le couplage avec DELWAQ.""", - ang = """Results file for coupling with DELWAQ.""", - ), - ), -# ----------------------------------- - TEMPERATURE_FOR_DELWAQ = SIMP(statut ='o', -# ----------------------------------- - typ = bool, - defaut = False, - fr = """Decide de la sortie de la temperature pour DELWAQ.""", - ang = """Triggers the output of temperature for DELWAQ.""", - ), -# ----------------------------------- - b_TEMPERATURE_FOR_DELWAQG = BLOC(condition="TEMPERATURE_FOR_DELWAQ == True", -# ----------------------------------- -# ----------------------------------- - TEMPERATURE_DELWAQ_FILE = SIMP(statut ='o', -# ----------------------------------- - typ = ('Fichier','All Files (*)','Sauvegarde'), max='**', - defaut = '', - fr = """Fichier de resultats pour le couplage avec DELWAQ.""", - ang = """Results file for coupling with DELWAQ.""", - ), - ), -# ----------------------------------- - SALINITY_FOR_DELWAQ = SIMP(statut ='o', -# ----------------------------------- - typ = bool, - defaut = False, - fr = """Decide de la sortie de la salinite pour DELWAQ.""", - ang = """Triggers the output of salinity for DELWAQ.""", - ), -# ----------------------------------- - b_SALINITY_FOR_DELWAQG = BLOC(condition="SALINITY_FOR_DELWAQ == True", -# ----------------------------------- -# ----------------------------------- - SALINITY_DELWAQ_FILE = SIMP(statut ='o', -# ----------------------------------- - typ = ('Fichier','All Files (*)','Sauvegarde'), max='**', - defaut = '', - fr = """Fichier de resultats pour le couplage avec DELWAQ.""", - ang = """Results file for coupling with DELWAQ.""", - ), - ), - ), -# ----------------------------------- - SISYPHE = FACT(statut='f', -# ----------------------------------- - ), -# ----------------------------------- - TOMAWAC = FACT(statut='f', -# ----------------------------------- - ), -# ----------------------------------- - WAQTEL = FACT(statut='f', -# ----------------------------------- - ), -# ----------------------------------- - DELWAQ = FACT(statut='f', -# ----------------------------------- - ), -) -# ----------------------------------------------------------------------- -AUTOMATIC_DIFFERENTIATION = PROC(nom= "AUTOMATIC_DIFFERENTIATION",op = None, -# ----------------------------------------------------------------------- -# ----------------------------------- - AD_NUMBER_OF_DERIVATIVES = SIMP(statut ='f', -# ----------------------------------- - typ = 'I', - defaut = [0], - fr = """Definit le nombre de derivees utilisateurs, dans le cadre -de la differentiation algorithmique.""", - ang = """Defines the number of user derivatives, within the framework -of the algorithmic differentiation.""", - ), -# ----------------------------------- - AD_NAMES_OF_DERIVATIVES = SIMP(statut ='f', -# ----------------------------------- - typ = 'TXM', min= 2, max= 2, - fr = """Noms des derivees utilisateurs en 32 caracteres, - 16 pour le nom, 16 pour l''unite.""", - ang = """Name of user derivatives in 32 characters, - 16 for the name, 16 for the unit.""", - ), -# ----------------------------------- - AD_NUMBER_OF_DIRECTIONS = SIMP(statut ='f', -# ----------------------------------- - typ = 'I', - defaut = [1], - fr = """Definit le nombre de directions de differentiateurs.""", - ang = """Defines the number of directions for the differentiators.""", - ), -# ----------------------------------- - AD_SYMBOLIC_LINEAR_SOLVER = SIMP(statut ='f', -# ----------------------------------- - typ = bool, - defaut = False, - fr = """Permet le solveur lineaire symbolique pour l AD.""", - ang = """Enables the symbolic linear solver for AD.""", - ), -# ----------------------------------- - AD_LINEAR_SOLVER_RESET_DERIVATIVES = SIMP(statut ='f', -# ----------------------------------- - typ = bool, - defaut = True, - fr = """Remet a zero les derivees pour l AD.""", - ang = """Resets the derivatives for AD.""", - ), -# ----------------------------------- - AD_LINEAR_SOLVER_DERIVATIVE_CONVERGENCE = SIMP(statut ='f', -# ----------------------------------- - typ = bool, - defaut = True, - fr = """Solveur lineaire iteratif : test de convergence des derivees -pour l AD.""", - ang = """Iterative linear solvers: derivative convergence test for AD.""", - ), -) -# ----------------------------------------------------------------------- -INTERNAL = PROC(nom= "INTERNAL",op = None, -# ----------------------------------------------------------------------- -# ----------------------------------- - PARTITIONING_TOOL = SIMP(statut ='f', -# ----------------------------------- - typ = 'TXM', - into = ['METIS','SCOTCH','PARMETIS','PTSCOTCH'], - defaut = 'METIS', - fr = """Choix du partitionneur : -\begin{itemize} -\item 1 : METIS ; -\item 2 : SCOTCH ; -\item 3 : PARMETIS ; -\item 4 : PTSCOTCH. -\end{itemize}""", - ang = """Partitioning tool selection: -\begin{itemize} -\item 1: METIS, -\item 2: SCOTCH, -\item 3: PARMETIS, -\item 4: PTSCOTCH. -\end{itemize}""", - ), -# ----------------------------------- - STEERING_FILE = SIMP(statut ='f', -# ----------------------------------- - typ = ('Fichier','All Files (*)'), - defaut = '', - fr = """Nom du fichier contenant les parametres du calcul a realiser.""", - ang = """Name of the file containing the parameters of the computation. -Written by the user.""", - ), -# ----------------------------------- - RELEASE = SIMP(statut ='f', -# ----------------------------------- - typ = 'TXM', - defaut = 'TRUNK', - fr = """Numero de version des bibliotheques utilisees par TELEMAC. -Si ce nom commence par D il s''agit de l''option Debug (exemple DV2P2) -Si ce nom commence par F il s''agit de l''option Flowtrace""", - ang = """""", - ), -# ----------------------------------- - DICTIONARY = SIMP(statut ='f', -# ----------------------------------- - typ = ('Fichier','All Files (*)'), - defaut = 'telemac3d.dico', - fr = """Dictionnaire des mots cles.""", - ang = """Key word dictionary.""", - ), -# ----------------------------------- - LIST_OF_FILES = SIMP(statut ='f', -# ----------------------------------- - typ = 'TXM', min=46, max=46, - defaut = 'STEERING FILE;DICTIONARY;FORTRAN FILE;GEOMETRY FILE;BOUNDARY CONDITIONS FILE;PREVIOUS COMPUTATION FILE;3D RESULT FILE;BOTTOM TOPOGRAPHY FILE;2D RESULT FILE;FORMATTED DATA FILE 1;FORMATTED DATA FILE 2;BINARY DATA FILE 1;BINARY DATA FILE 2;SEDIMENTOLOGICAL RESULT FILE;PREVIOUS COMPUTATION SEDIMENTOLOGICAL FILE;REFERENCE FILE;RESULT FILE FOR SUBIEF-3D;LIQUID BOUNDARIES FILE;VOLUMES DELWAQ FILE;EXCHANGE AREAS DELWAQ FILE;VERTICAL FLUXES DELWAQ FILE;SALINITY DELWAQ FILE;BOTTOM SURFACES DELWAQ FILE;EXCHANGES BETWEEN NODES DELWAQ FILE;NODES DISTANCES DELWAQ FILE;TEMPERATURE DELWAQ FILE;VELOCITY DELWAQ FILE;DIFFUSIVITY DELWAQ FILE;DELWAQ STEERING FILE;STAGE-DISCHARGE CURVES FILE;SOURCES FILE;BINARY RESULTS FILE;FORMATTED RESULTS FILE;RESTART FILE;OIL SPILL STEERING FILE;HARMONIC CONSTANTS FILE;TIDAL MODEL FILE;ASCII DATABASE FOR TIDE;BINARY DATABASE 1 FOR TIDE;BINARY DATABASE 2 FOR TIDE;DROGUES FILE;FILE FOR 2D CONTINUATION;CULVERTS DATA FILE;ASCII ATMOSPHERIC DATA FILE;BINARY ATMOSPHERIC DATA FILE;BINARY BOUNDARY DATA FILE', - fr = """Noms des fichiers exploites par le code.""", - ang = """File names of the used files.""", - ), -# ----------------------------------- - DESCRIPTION_OF_LIBRARIES = SIMP(statut ='f', -# ----------------------------------- - typ = 'TXM', min=11, max=11, - defaut = 'builds|PPP|lib|telemac3dMMMVVV.LLL;builds|PPP|lib|telemac2dMMMVVV.LLL;builds|PPP|lib|tomawacMMMVVV.LLL;builds|PPP|lib|sisypheMMMVVV.LLL;builds|PPP|lib|nestorMMMVVV.LLL;builds|PPP|lib|waqtelMMMVVV.LLL;builds|PPP|lib|biefMMMVVV.LLL;builds|PPP|lib|hermesMMMVVV.LLL;builds|PPP|lib|damoMMMVVV.LLL;builds|PPP|lib|parallelMMMVVV.LLL;builds|PPP|lib|specialMMMVVV.LLL', - fr = """Description des bibliotheques de \telemac{3d}.""", - ang = """Libraries description of \telemac{3d}.""", - ), -# ----------------------------------- - DEFAULT_EXECUTABLE = SIMP(statut ='f', -# ----------------------------------- - typ = 'TXM', - defaut = 'builds|PPP|bin|telemac3dMMMVVV.exe', - fr = """Executable par defaut de \telemac{3d}.""", - ang = """Default executable for \telemac{3d}.""", - ), -# ----------------------------------- - DEFAULT_PARALLEL_EXECUTABLE = SIMP(statut ='f', -# ----------------------------------- - typ = 'TXM', - defaut = 'builds|PPP|bin|telemac3dMMMVVV.exe', - fr = """Executable parallele par defaut de \telemac{3d}.""", - ang = """Default parallel executable for \telemac{3d}.""", - ), -) -TEXTE_NEW_JDC = "\ -COMPUTATION_ENVIRONMENT();\ -GENERAL_PARAMETERS();\ -VERTICAL();\ -NUMERICAL_PARAMETERS();\ -HYDRODYNAMICS();\ -TURBULENCE();\ -" -Ordre_Des_Commandes = ( -'COMPUTATION_ENVIRONMENT', -'GENERAL_PARAMETERS', -'VERTICAL', -'NUMERICAL_PARAMETERS', -'HYDRODYNAMICS', -'TURBULENCE', -'TRACERS', -'SEDIMENT_INFO', -'COUPLING', -'AUTOMATIC_DIFFERENTIATION', -'INTERNAL') -try: - import TelApy - source = "eficas" -except Exception as excpt: - source = "Telemac" -enum = source+'.telemac3d_enum_auto' -dicoCasEn = source+'.telemac3d_dicoCasEnToCata' -dicoCasFr = source+'.telemac3d_dicoCasFrToCata' diff --git a/Telemac/telemac3d_dicoCasEnToCata.py b/Telemac/telemac3d_dicoCasEnToCata.py deleted file mode 100644 index 087a6546..00000000 --- a/Telemac/telemac3d_dicoCasEnToCata.py +++ /dev/null @@ -1,664 +0,0 @@ -dicoCataToEngTelemac = { - "TITLE" : "TITLE", - "PARALLEL_PROCESSORS" : "PARALLEL PROCESSORS", - "CHECKING_THE_MESH" : "CHECKING THE MESH", - "MAXIMUM_NUMBER_OF_BOUNDARIES" : "MAXIMUM NUMBER OF BOUNDARIES", - "MAXIMUM_NUMBER_OF_TRACERS" : "MAXIMUM NUMBER OF TRACERS", - "MAXIMUM_NUMBER_OF_SOURCES" : "MAXIMUM NUMBER OF SOURCES", - "MAXIMUM_NUMBER_OF_BOUNDARIES_ON_THE_BED" : "MAXIMUM NUMBER OF BOUNDARIES ON THE BED", - "VECTOR_LENGTH" : "VECTOR LENGTH", - "GEOMETRY_FILE" : "GEOMETRY FILE", - "GEOMETRY_FILE_FORMAT" : "GEOMETRY FILE FORMAT", - "BOUNDARY_CONDITIONS_FILE" : "BOUNDARY CONDITIONS FILE", - "BINARY_BOUNDARY_DATA_FILE" : "BINARY BOUNDARY DATA FILE", - "BINARY_BOUNDARY_DATA_FILE_FORMAT" : "BINARY BOUNDARY DATA FILE FORMAT", - "FORTRAN_FILE" : "FORTRAN FILE", - "BOTTOM_TOPOGRAPHY_FILE" : "BOTTOM TOPOGRAPHY FILE", - "NUMBER_OF_BOTTOM_SMOOTHINGS" : "NUMBER OF BOTTOM SMOOTHINGS", - "FORMATTED_DATA_FILE_1" : "FORMATTED DATA FILE 1", - "FORMATTED_DATA_FILE_2" : "FORMATTED DATA FILE 2", - "BINARY_DATA_FILE_1" : "BINARY DATA FILE 1", - "BINARY_DATA_FILE_1_FORMAT" : "BINARY DATA FILE 1 FORMAT", - "BINARY_DATA_FILE_2" : "BINARY DATA FILE 2", - "VALIDATION" : "VALIDATION", - "REFERENCE_FILE" : "REFERENCE FILE", - "REFERENCE_FILE_FORMAT" : "REFERENCE FILE FORMAT", - "RD_RESULT_FILE" : "3D RESULT FILE", - "RD_RESULT_FILE_FORMAT" : "3D RESULT FILE FORMAT", - "ED_RESULT_FILE" : "2D RESULT FILE", - "ED_RESULT_FILE_FORMAT" : "2D RESULT FILE FORMAT", - "RESULT_FILE_IN_LONGITUDE_LATITUDE" : "RESULT FILE IN LONGITUDE-LATITUDE", - "VARIABLES_FOR_3D_GRAPHIC_PRINTOUTS" : "VARIABLES FOR 3D GRAPHIC PRINTOUTS", - "VARIABLES_FOR_2D_GRAPHIC_PRINTOUTS" : "VARIABLES FOR 2D GRAPHIC PRINTOUTS", - "GRAPHIC_PRINTOUT_PERIOD" : "GRAPHIC PRINTOUT PERIOD", - "NUMBER_OF_FIRST_TIME_STEP_FOR_GRAPHIC_PRINTOUTS" : "NUMBER OF FIRST TIME STEP FOR GRAPHIC PRINTOUTS", - "RD_RESULT_FILE_BINARY" : "3D RESULT FILE BINARY", - "ED_RESULT_FILE_BINARY" : "2D RESULT FILE BINARY", - "NUMBER_OF_PRIVATE_ARRAYS" : "NUMBER OF PRIVATE ARRAYS", - "NUMBER_OF_2D_PRIVATE_ARRAYS" : "NUMBER OF 2D PRIVATE ARRAYS", - "NAMES_OF_2D_PRIVATE_VARIABLES" : "NAMES OF 2D PRIVATE VARIABLES", - "FORMATTED_RESULTS_FILE" : "FORMATTED RESULTS FILE", - "BINARY_RESULTS_FILE" : "BINARY RESULTS FILE", - "LISTING_PRINTOUT" : "LISTING PRINTOUT", - "MASS_BALANCE" : "MASS-BALANCE", - "INFORMATION_ABOUT_MASS_BALANCE_FOR_EACH_LISTING_PRINTOUT" : "INFORMATION ABOUT MASS-BALANCE FOR EACH LISTING PRINTOUT", - "LISTING_PRINTOUT_PERIOD" : "LISTING PRINTOUT PERIOD", - "NUMBER_OF_FIRST_TIME_STEP_FOR_LISTING_PRINTOUTS" : "NUMBER OF FIRST TIME STEP FOR LISTING PRINTOUTS", - "COMPUTATION_CONTINUED" : "COMPUTATION CONTINUED", - "PREVIOUS_COMPUTATION_FILE" : "PREVIOUS COMPUTATION FILE", - "PREVIOUS_COMPUTATION_FILE_FORMAT" : "PREVIOUS COMPUTATION FILE FORMAT", - "RECORD_NUMBER_FOR_RESTART" : "RECORD NUMBER FOR RESTART", - "INITIAL_TIME_SET_TO_ZERO" : "INITIAL TIME SET TO ZERO", - "RESTART_MODE" : "RESTART MODE", - "RESTART_FILE" : "RESTART FILE", - "RESTART_FILE_FORMAT" : "RESTART FILE FORMAT", - "ED_CONTINUATION" : "2D CONTINUATION", - "FILE_FOR_2D_CONTINUATION" : "FILE FOR 2D CONTINUATION", - "FILE_FOR_2D_CONTINUATION_FORMAT" : "FILE FOR 2D CONTINUATION FORMAT", - "DEBUGGER" : "DEBUGGER", - "TIME_STEP" : "TIME STEP", - "NUMBER_OF_TIME_STEPS" : "NUMBER OF TIME STEPS", - "DURATION" : "DURATION", - "ORIGINAL_DATE_OF_TIME" : "ORIGINAL DATE OF TIME", - "ORIGINAL_HOUR_OF_TIME" : "ORIGINAL HOUR OF TIME", - "SPHERICAL_COORDINATES" : "SPHERICAL COORDINATES", - "SPATIAL_PROJECTION_TYPE" : "SPATIAL PROJECTION TYPE", - "LATITUDE_OF_ORIGIN_POINT" : "LATITUDE OF ORIGIN POINT", - "LONGITUDE_OF_ORIGIN_POINT" : "LONGITUDE OF ORIGIN POINT", - "NORTH" : "NORTH", - "ORIGIN_COORDINATES" : "ORIGIN COORDINATES", - "NUMBER_OF_HORIZONTAL_LEVELS" : "NUMBER OF HORIZONTAL LEVELS", - "MESH_TRANSFORMATION" : "MESH TRANSFORMATION", - "NUMBER_OF_SUB_ITERATIONS_FOR_NON_LINEARITIES" : "NUMBER OF SUB ITERATIONS FOR NON LINEARITIES", - "ZERO" : "ZERO", - "ADVECTION_STEP" : "ADVECTION STEP", - "TREATMENT_OF_FLUXES_AT_THE_BOUNDARIES" : "TREATMENT OF FLUXES AT THE BOUNDARIES", - "SUPG_OPTION" : "SUPG OPTION", - "MAXIMUM_NUMBER_OF_ITERATIONS_FOR_ADVECTION_SCHEMES" : "MAXIMUM NUMBER OF ITERATIONS FOR ADVECTION SCHEMES", - "NUMBER_OF_SUB_STEPS_OF_DISTRIBUTIVE_SCHEMES" : "NUMBER OF SUB-STEPS OF DISTRIBUTIVE SCHEMES", - "NUMBER_OF_CORRECTIONS_OF_DISTRIBUTIVE_SCHEMES" : "NUMBER OF CORRECTIONS OF DISTRIBUTIVE SCHEMES", - "MASS_LUMPING_FOR_DIFFUSION" : "MASS-LUMPING FOR DIFFUSION", - "NON_HYDROSTATIC_VERSION" : "NON-HYDROSTATIC VERSION", - "ELEMENTS_MASKED_BY_USER" : "ELEMENTS MASKED BY USER", - "GRAVITY_ACCELERATION" : "GRAVITY ACCELERATION", - "AVERAGE_WATER_DENSITY" : "AVERAGE WATER DENSITY", - "LAW_OF_BOTTOM_FRICTION" : "LAW OF BOTTOM FRICTION", - "FRICTION_COEFFICIENT_FOR_THE_BOTTOM" : "FRICTION COEFFICIENT FOR THE BOTTOM", - "LAW_OF_FRICTION_ON_LATERAL_BOUNDARIES" : "LAW OF FRICTION ON LATERAL BOUNDARIES", - "FRICTION_COEFFICIENT_FOR_LATERAL_SOLID_BOUNDARIES" : "FRICTION COEFFICIENT FOR LATERAL SOLID BOUNDARIES", - "CORIOLIS" : "CORIOLIS", - "CORIOLIS_COEFFICIENT" : "CORIOLIS COEFFICIENT", - "WIND" : "WIND", - "OPTION_FOR_WIND" : "OPTION FOR WIND", - "WIND_VELOCITY_ALONG_X" : "WIND VELOCITY ALONG X", - "WIND_VELOCITY_ALONG_Y" : "WIND VELOCITY ALONG Y", - "COEFFICIENT_OF_WIND_INFLUENCE" : "COEFFICIENT OF WIND INFLUENCE", - "COEFFICIENT_OF_WIND_INFLUENCE_VARYING_WITH_WIND_SPEED" : "COEFFICIENT OF WIND INFLUENCE VARYING WITH WIND SPEED", - "THRESHOLD_DEPTH_FOR_WIND" : "THRESHOLD DEPTH FOR WIND", - "AIR_PRESSURE" : "AIR PRESSURE", - "VALUE_OF_ATMOSPHERIC_PRESSURE" : "VALUE OF ATMOSPHERIC PRESSURE", - "RAIN_OR_EVAPORATION" : "RAIN OR EVAPORATION", - "RAIN_OR_EVAPORATION_IN_MM_PER_DAY" : "RAIN OR EVAPORATION IN MM PER DAY", - "ASCII_ATMOSPHERIC_DATA_FILE" : "ASCII ATMOSPHERIC DATA FILE", - "BINARY_ATMOSPHERIC_DATA_FILE" : "BINARY ATMOSPHERIC DATA FILE", - "BINARY_ATMOSPHERIC_DATA_FILE_FORMAT" : "BINARY ATMOSPHERIC DATA FILE FORMAT", - "SOURCES_FILE" : "SOURCES FILE", - "GLOBAL_NUMBERS_OF_SOURCE_NODES" : "GLOBAL NUMBERS OF SOURCE NODES", - "TYPE_OF_SOURCES" : "TYPE OF SOURCES", - "ABSCISSAE_OF_SOURCES" : "ABSCISSAE OF SOURCES", - "ORDINATES_OF_SOURCES" : "ORDINATES OF SOURCES", - "ELEVATIONS_OF_SOURCES" : "ELEVATIONS OF SOURCES", - "WATER_DISCHARGE_OF_SOURCES" : "WATER DISCHARGE OF SOURCES", - "VELOCITIES_OF_THE_SOURCES_ALONG_X" : "VELOCITIES OF THE SOURCES ALONG X", - "VELOCITIES_OF_THE_SOURCES_ALONG_Y" : "VELOCITIES OF THE SOURCES ALONG Y", - "VELOCITIES_OF_THE_SOURCES_ALONG_Z" : "VELOCITIES OF THE SOURCES ALONG Z", - "WAVE_DRIVEN_CURRENTS" : "WAVE DRIVEN CURRENTS", - "RECORD_NUMBER_IN_WAVE_FILE" : "RECORD NUMBER IN WAVE FILE", - "PRESCRIBED_ELEVATIONS" : "PRESCRIBED ELEVATIONS", - "PRESCRIBED_FLOWRATES" : "PRESCRIBED FLOWRATES", - "PRESCRIBED_VELOCITIES" : "PRESCRIBED VELOCITIES", - "LIQUID_BOUNDARIES_FILE" : "LIQUID BOUNDARIES FILE", - "VELOCITY_PROFILES" : "VELOCITY PROFILES", - "VELOCITY_VERTICAL_PROFILES" : "VELOCITY VERTICAL PROFILES", - "STAGE_DISCHARGE_CURVES" : "STAGE-DISCHARGE CURVES", - "STAGE_DISCHARGE_CURVES_FILE" : "STAGE-DISCHARGE CURVES FILE", - "OPTION_FOR_LIQUID_BOUNDARIES" : "OPTION FOR LIQUID BOUNDARIES", - "TURBULENCE_REGIME_FOR_THE_BOTTOM" : "TURBULENCE REGIME FOR THE BOTTOM", - "TURBULENCE_REGIME_FOR_LATERAL_SOLID_BOUNDARIES" : "TURBULENCE REGIME FOR LATERAL SOLID BOUNDARIES", - "BOUNDARY_CONDITION_ON_THE_BOTTOM" : "BOUNDARY CONDITION ON THE BOTTOM", - "VELOCITY_PROJECTED_ON_SOLID_LATERAL_BOUNDARIES" : "VELOCITY PROJECTED ON SOLID LATERAL BOUNDARIES", - "VELOCITY_PROJECTED_ON_BOTTOM" : "VELOCITY PROJECTED ON BOTTOM", - "OPEN_BOUNDARY_CONDITIONS_ON_THE_BED" : "OPEN BOUNDARY CONDITIONS ON THE BED", - "PRESCRIBED_FLOWRATES_ON_THE_BED" : "PRESCRIBED FLOWRATES ON THE BED", - "INITIAL_CONDITIONS" : "INITIAL CONDITIONS", - "INITIAL_ELEVATION" : "INITIAL ELEVATION", - "INITIAL_DEPTH" : "INITIAL DEPTH", - "MATRIX_STORAGE" : "MATRIX STORAGE", - "MASS_LUMPING_FOR_DEPTH" : "MASS-LUMPING FOR DEPTH", - "HYDROSTATIC_INCONSISTENCY_FILTER" : "HYDROSTATIC INCONSISTENCY FILTER", - "ELEMENT" : "ELEMENT", - "SOLVER_FOR_PROPAGATION" : "SOLVER FOR PROPAGATION", - "ACCURACY_FOR_PROPAGATION" : "ACCURACY FOR PROPAGATION", - "MAXIMUM_NUMBER_OF_ITERATIONS_FOR_PROPAGATION" : "MAXIMUM NUMBER OF ITERATIONS FOR PROPAGATION", - "PRECONDITIONING_FOR_PROPAGATION" : "PRECONDITIONING FOR PROPAGATION", - "OPTION_OF_SOLVER_FOR_PROPAGATION" : "OPTION OF SOLVER FOR PROPAGATION", - "INITIAL_GUESS_FOR_DEPTH" : "INITIAL GUESS FOR DEPTH", - "LINEARIZED_PROPAGATION" : "LINEARIZED PROPAGATION", - "MEAN_DEPTH_FOR_LINEARIZATION" : "MEAN DEPTH FOR LINEARIZATION", - "SCHEME_FOR_ADVECTION_OF_DEPTH" : "SCHEME FOR ADVECTION OF DEPTH", - "SCHEME_FOR_ADVECTION_OF_VELOCITIES" : "SCHEME FOR ADVECTION OF VELOCITIES", - "FREE_SURFACE_GRADIENT_COMPATIBILITY" : "FREE SURFACE GRADIENT COMPATIBILITY", - "BYPASS_VOID_VOLUMES" : "BYPASS VOID VOLUMES", - "MASS_LUMPING_FOR_VELOCITIES" : "MASS-LUMPING FOR VELOCITIES", - "SCHEME_OPTION_FOR_ADVECTION_OF_VELOCITIES" : "SCHEME OPTION FOR ADVECTION OF VELOCITIES", - "OPTION_FOR_CHARACTERISTICS" : "OPTION FOR CHARACTERISTICS", - "NUMBER_OF_GAUSS_POINTS_FOR_WEAK_CHARACTERISTICS" : "NUMBER OF GAUSS POINTS FOR WEAK CHARACTERISTICS", - "MASS_LUMPING_FOR_WEAK_CHARACTERISTICS" : "MASS-LUMPING FOR WEAK CHARACTERISTICS", - "SCHEME_FOR_DIFFUSION_OF_VELOCITIES" : "SCHEME FOR DIFFUSION OF VELOCITIES", - "SOLVER_FOR_DIFFUSION_OF_VELOCITIES" : "SOLVER FOR DIFFUSION OF VELOCITIES", - "ACCURACY_FOR_DIFFUSION_OF_VELOCITIES" : "ACCURACY FOR DIFFUSION OF VELOCITIES", - "MAXIMUM_NUMBER_OF_ITERATIONS_FOR_DIFFUSION_OF_VELOCITIES" : "MAXIMUM NUMBER OF ITERATIONS FOR DIFFUSION OF VELOCITIES", - "PRECONDITIONING_FOR_DIFFUSION_OF_VELOCITIES" : "PRECONDITIONING FOR DIFFUSION OF VELOCITIES", - "OPTION_OF_SOLVER_FOR_DIFFUSION_OF_VELOCITIES" : "OPTION OF SOLVER FOR DIFFUSION OF VELOCITIES", - "IMPLICITATION_FOR_DIFFUSION" : "IMPLICITATION FOR DIFFUSION", - "SOLVER_FOR_PPE" : "SOLVER FOR PPE", - "ACCURACY_FOR_PPE" : "ACCURACY FOR PPE", - "MAXIMUM_NUMBER_OF_ITERATIONS_FOR_PPE" : "MAXIMUM NUMBER OF ITERATIONS FOR PPE", - "PRECONDITIONING_FOR_PPE" : "PRECONDITIONING FOR PPE", - "OPTION_OF_SOLVER_FOR_PPE" : "OPTION OF SOLVER FOR PPE", - "DYNAMIC_PRESSURE_IN_WAVE_EQUATION" : "DYNAMIC PRESSURE IN WAVE EQUATION", - "DYNAMIC_BOUNDARY_CONDITION" : "DYNAMIC BOUNDARY CONDITION", - "CONTINUITY_CORRECTION_ON_OPEN_BOUNDARIES" : "CONTINUITY CORRECTION ON OPEN BOUNDARIES", - "SOLVER_FOR_VERTICAL_VELOCITY" : "SOLVER FOR VERTICAL VELOCITY", - "ACCURACY_FOR_VERTICAL_VELOCITY" : "ACCURACY FOR VERTICAL VELOCITY", - "MAXIMUM_NUMBER_OF_ITERATIONS_FOR_VERTICAL_VELOCITY" : "MAXIMUM NUMBER OF ITERATIONS FOR VERTICAL VELOCITY", - "PRECONDITIONING_FOR_VERTICAL_VELOCITY" : "PRECONDITIONING FOR VERTICAL VELOCITY", - "IMPLICITATION_FOR_DEPTH" : "IMPLICITATION FOR DEPTH", - "IMPLICITATION_FOR_VELOCITIES" : "IMPLICITATION FOR VELOCITIES", - "TIDAL_FLATS" : "TIDAL FLATS", - "OPTION_FOR_THE_TREATMENT_OF_TIDAL_FLATS" : "OPTION FOR THE TREATMENT OF TIDAL FLATS", - "TREATMENT_OF_NEGATIVE_DEPTHS" : "TREATMENT OF NEGATIVE DEPTHS", - "TREATMENT_ON_TIDAL_FLATS_FOR_VELOCITIES" : "TREATMENT ON TIDAL FLATS FOR VELOCITIES", - "THRESHOLD_FOR_VISCOSITY_CORRECTION_ON_TIDAL_FLATS" : "THRESHOLD FOR VISCOSITY CORRECTION ON TIDAL FLATS", - "MINIMAL_VALUE_FOR_DEPTH" : "MINIMAL VALUE FOR DEPTH", - "BINARY_DATABASE_1_FOR_TIDE" : "BINARY DATABASE 1 FOR TIDE", - "BINARY_DATABASE_2_FOR_TIDE" : "BINARY DATABASE 2 FOR TIDE", - "GEOGRAPHIC_SYSTEM" : "GEOGRAPHIC SYSTEM", - "ZONE_NUMBER_IN_GEOGRAPHIC_SYSTEM" : "ZONE NUMBER IN GEOGRAPHIC SYSTEM", - "LAMBERT_93_CONVERSION_FILE" : "LAMBERT 93 CONVERSION FILE", - "COEFFICIENT_TO_CALIBRATE_SEA_LEVEL" : "COEFFICIENT TO CALIBRATE SEA LEVEL", - "GLOBAL_NUMBER_OF_THE_POINT_TO_CALIBRATE_HIGH_WATER" : "GLOBAL NUMBER OF THE POINT TO CALIBRATE HIGH WATER", - "MINOR_CONSTITUENTS_INFERENCE" : "MINOR CONSTITUENTS INFERENCE", - "TIDE_GENERATING_FORCE" : "TIDE GENERATING FORCE", - "OPTION_FOR_TIDAL_BOUNDARY_CONDITIONS" : "OPTION FOR TIDAL BOUNDARY CONDITIONS", - "TIDAL_DATA_BASE" : "TIDAL DATA BASE", - "HARMONIC_CONSTANTS_FILE" : "HARMONIC CONSTANTS FILE", - "TIDAL_MODEL_FILE" : "TIDAL MODEL FILE", - "TIDAL_MODEL_FILE_FORMAT" : "TIDAL MODEL FILE FORMAT", - "ASCII_DATABASE_FOR_TIDE" : "ASCII DATABASE FOR TIDE", - "COEFFICIENT_TO_CALIBRATE_TIDAL_RANGE" : "COEFFICIENT TO CALIBRATE TIDAL RANGE", - "COEFFICIENT_TO_CALIBRATE_TIDAL_VELOCITIES" : "COEFFICIENT TO CALIBRATE TIDAL VELOCITIES", - "LOCAL_NUMBER_OF_THE_POINT_TO_CALIBRATE_HIGH_WATER" : "LOCAL NUMBER OF THE POINT TO CALIBRATE HIGH WATER", - "NUMBER_OF_DROGUES" : "NUMBER OF DROGUES", - "DROGUES_FILE" : "DROGUES FILE", - "PRINTOUT_PERIOD_FOR_DROGUES" : "PRINTOUT PERIOD FOR DROGUES", - "OIL_SPILL_MODEL" : "OIL SPILL MODEL", - "OIL_SPILL_STEERING_FILE" : "OIL SPILL STEERING FILE", - "NUMBER_OF_CULVERTS" : "NUMBER OF CULVERTS", - "CULVERTS_DATA_FILE" : "CULVERTS DATA FILE", - "OPTION_FOR_CULVERTS" : "OPTION FOR CULVERTS", - "HORIZONTAL_TURBULENCE_MODEL" : "HORIZONTAL TURBULENCE MODEL", - "VERTICAL_TURBULENCE_MODEL" : "VERTICAL TURBULENCE MODEL", - "COEFFICIENT_FOR_HORIZONTAL_DIFFUSION_OF_VELOCITIES" : "COEFFICIENT FOR HORIZONTAL DIFFUSION OF VELOCITIES", - "COEFFICIENT_FOR_VERTICAL_DIFFUSION_OF_VELOCITIES" : "COEFFICIENT FOR VERTICAL DIFFUSION OF VELOCITIES", - "MIXING_LENGTH_MODEL" : "MIXING LENGTH MODEL", - "DAMPING_FUNCTION" : "DAMPING FUNCTION", - "PRANDTL_NUMBER" : "PRANDTL NUMBER", - "KARMAN_CONSTANT" : "KARMAN CONSTANT", - "FICTITIOUS_BED_LEVEL" : "FICTITIOUS BED LEVEL", - "OPTION_FOR_THE_BOUNDARY_CONDITIONS_OF_K_EPSILON" : "OPTION FOR THE BOUNDARY CONDITIONS OF K-EPSILON", - "VERTICAL_VELOCITY_DERIVATIVES" : "VERTICAL VELOCITY DERIVATIVES", - "SCHEME_FOR_ADVECTION_OF_K_EPSILON" : "SCHEME FOR ADVECTION OF K-EPSILON", - "SCHEME_OPTION_FOR_ADVECTION_OF_K_EPSILON" : "SCHEME OPTION FOR ADVECTION OF K-EPSILON", - "SCHEME_FOR_DIFFUSION_OF_K_EPSILON" : "SCHEME FOR DIFFUSION OF K-EPSILON", - "SOLVER_FOR_DIFFUSION_OF_K_EPSILON" : "SOLVER FOR DIFFUSION OF K-EPSILON", - "ACCURACY_FOR_DIFFUSION_OF_K_EPSILON" : "ACCURACY FOR DIFFUSION OF K-EPSILON", - "MAXIMUM_NUMBER_OF_ITERATIONS_FOR_DIFFUSION_OF_K_EPSILON" : "MAXIMUM NUMBER OF ITERATIONS FOR DIFFUSION OF K-EPSILON", - "PRECONDITIONING_FOR_DIFFUSION_OF_K_EPSILON" : "PRECONDITIONING FOR DIFFUSION OF K-EPSILON", - "OPTION_OF_SOLVER_FOR_DIFFUSION_OF_K_EPSILON" : "OPTION OF SOLVER FOR DIFFUSION OF K-EPSILON", - "TREATMENT_ON_TIDAL_FLATS_FOR_K_EPSILON" : "TREATMENT ON TIDAL FLATS FOR K-EPSILON", - "NUMBER_OF_TRACERS" : "NUMBER OF TRACERS", - "NAMES_OF_TRACERS" : "NAMES OF TRACERS", - "VALUES_OF_TRACERS_IN_THE_RAIN" : "VALUES OF TRACERS IN THE RAIN", - "VALUE_OF_THE_TRACERS_AT_THE_SOURCES" : "VALUE OF THE TRACERS AT THE SOURCES", - "DENSITY_LAW" : "DENSITY LAW", - "STANDARD_VALUES_FOR_TRACERS" : "STANDARD VALUES FOR TRACERS", - "BETA_EXPANSION_COEFFICIENT_FOR_TRACERS" : "BETA EXPANSION COEFFICIENT FOR TRACERS", - "PRESCRIBED_TRACERS_VALUES" : "PRESCRIBED TRACERS VALUES", - "TRACERS_VERTICAL_PROFILES" : "TRACERS VERTICAL PROFILES", - "INITIAL_VALUES_OF_TRACERS" : "INITIAL VALUES OF TRACERS", - "SCHEME_FOR_ADVECTION_OF_TRACERS" : "SCHEME FOR ADVECTION OF TRACERS", - "SCHEME_OPTION_FOR_ADVECTION_OF_TRACERS" : "SCHEME OPTION FOR ADVECTION OF TRACERS", - "SCHEME_FOR_DIFFUSION_OF_TRACERS" : "SCHEME FOR DIFFUSION OF TRACERS", - "SOLVER_FOR_DIFFUSION_OF_TRACERS" : "SOLVER FOR DIFFUSION OF TRACERS", - "ACCURACY_FOR_DIFFUSION_OF_TRACERS" : "ACCURACY FOR DIFFUSION OF TRACERS", - "MAXIMUM_NUMBER_OF_ITERATIONS_FOR_DIFFUSION_OF_TRACERS" : "MAXIMUM NUMBER OF ITERATIONS FOR DIFFUSION OF TRACERS", - "PRECONDITIONING_FOR_DIFFUSION_OF_TRACERS" : "PRECONDITIONING FOR DIFFUSION OF TRACERS", - "OPTION_OF_SOLVER_FOR_DIFFUSION_OF_TRACERS" : "OPTION OF SOLVER FOR DIFFUSION OF TRACERS", - "TREATMENT_ON_TIDAL_FLATS_FOR_TRACERS" : "TREATMENT ON TIDAL FLATS FOR TRACERS", - "COEFFICIENT_FOR_HORIZONTAL_DIFFUSION_OF_TRACERS" : "COEFFICIENT FOR HORIZONTAL DIFFUSION OF TRACERS", - "COEFFICIENT_FOR_VERTICAL_DIFFUSION_OF_TRACERS" : "COEFFICIENT FOR VERTICAL DIFFUSION OF TRACERS", - "SEDIMENT" : "SEDIMENT", - "DENSITY_OF_THE_SEDIMENT" : "DENSITY OF THE SEDIMENT", - "TIME_STEP_FOR_CONSOLIDATION" : "TIME STEP FOR CONSOLIDATION", - "COHESIVE_SEDIMENT" : "COHESIVE SEDIMENT", - "SHIELDS_PARAMETER" : "SHIELDS PARAMETER", - "MIXED_SEDIMENT" : "MIXED SEDIMENT", - "NUMBER_OF_SEDIMENT_BED_LAYERS" : "NUMBER OF SEDIMENT BED LAYERS", - "READ_CRITICAL_BED_SHEAR_STRESS_PER_LAYER" : "READ CRITICAL BED SHEAR STRESS PER LAYER", - "SEDIMENTOLOGICAL_RESULT_FILE" : "SEDIMENTOLOGICAL RESULT FILE", - "SEDIMENTOLOGICAL_RESULT_FILE_BINARY" : "SEDIMENTOLOGICAL RESULT FILE BINARY", - "PREVIOUS_COMPUTATION_SEDIMENTOLOGICAL_FILE" : "PREVIOUS COMPUTATION SEDIMENTOLOGICAL FILE", - "MEAN_DIAMETER_OF_THE_SEDIMENT" : "MEAN DIAMETER OF THE SEDIMENT", - "RATIO_BETWEEN_SKIN_FRICTION_AND_MEAN_DIAMETER" : "RATIO BETWEEN SKIN FRICTION AND MEAN DIAMETER", - "SKIN_FRICTION_CORRECTION" : "SKIN FRICTION CORRECTION", - "INITIAL_PERCENTAGE_OF_NON_COHESIVE_SEDIMENT" : "INITIAL PERCENTAGE OF NON COHESIVE SEDIMENT", - "MUD_CONCENTRATIONS_PER_LAYER" : "MUD CONCENTRATIONS PER LAYER", - "CRITICAL_EROSION_SHEAR_STRESS_OF_THE_MUD_LAYERS" : "CRITICAL EROSION SHEAR STRESS OF THE MUD LAYERS", - "INITIAL_THICKNESS_OF_SEDIMENT_LAYERS" : "INITIAL THICKNESS OF SEDIMENT LAYERS", - "SOLVER_FOR_DIFFUSION_OF_THE_SEDIMENT" : "SOLVER FOR DIFFUSION OF THE SEDIMENT", - "ACCURACY_FOR_DIFFUSION_OF_SEDIMENT" : "ACCURACY FOR DIFFUSION OF SEDIMENT", - "MAXIMUM_NUMBER_OF_ITERATIONS_FOR_DIFFUSION_OF_SEDIMENT" : "MAXIMUM NUMBER OF ITERATIONS FOR DIFFUSION OF SEDIMENT", - "PRECONDITIONING_FOR_DIFFUSION_OF_THE_SEDIMENT" : "PRECONDITIONING FOR DIFFUSION OF THE SEDIMENT", - "OPTION_OF_SOLVER_FOR_DIFFUSION_OF_THE_SEDIMENT" : "OPTION OF SOLVER FOR DIFFUSION OF THE SEDIMENT", - "THRESHOLD_FOR_SEDIMENT_FLUX_CORRECTION_ON_TIDAL_FLATS" : "THRESHOLD FOR SEDIMENT FLUX CORRECTION ON TIDAL FLATS", - "CRITICAL_SHEAR_STRESS_FOR_DEPOSITION" : "CRITICAL SHEAR STRESS FOR DEPOSITION", - "NON_COHESIVE_BED_POROSITY" : "NON COHESIVE BED POROSITY", - "EROSION_COEFFICIENT" : "EROSION COEFFICIENT", - "CONSTANT_SEDIMENT_SETTLING_VELOCITY" : "CONSTANT SEDIMENT SETTLING VELOCITY", - "SETTLING_VELOCITY_OF_SANDS" : "SETTLING VELOCITY OF SANDS", - "ADVECTION_DIFFUSION_SCHEME_WITH_SETTLING_VELOCITY" : "ADVECTION-DIFFUSION SCHEME WITH SETTLING VELOCITY", - "HINDERED_SETTLING" : "HINDERED SETTLING", - "WEAK_SOIL_CONCENTRATION_FOR_MUD" : "WEAK SOIL CONCENTRATION FOR MUD", - "THRESHOLD_CONCENTRATION_FOR_HINDERED_SETTLING" : "THRESHOLD CONCENTRATION FOR HINDERED SETTLING", - "HINDERED_SETTLING_FORMULA" : "HINDERED SETTLING FORMULA", - "REFERENCE_CONCENTRATION_FORMULA" : "REFERENCE CONCENTRATION FORMULA", - "FLOCCULATION" : "FLOCCULATION", - "FLOCCULATION_FORMULA" : "FLOCCULATION FORMULA", - "FLOCCULATION_COEFFICIENT" : "FLOCCULATION COEFFICIENT", - "COEFFICIENT_RELATIVE_TO_FLOC_DESTRUCTION" : "COEFFICIENT RELATIVE TO FLOC DESTRUCTION", - "BED_LAYERS_THICKNESS" : "BED LAYERS THICKNESS", - "MAXIMUM_CONCENTRATION_OF_THE_CONSOLIDATED_MUD" : "MAXIMUM CONCENTRATION OF THE CONSOLIDATED MUD", - "RESIDENCE_TIME_FOR_MUD" : "RESIDENCE TIME FOR MUD", - "CONSOLIDATION" : "CONSOLIDATION", - "CONSOLIDATION_MODEL" : "CONSOLIDATION MODEL", - "COUPLING_WITH" : "COUPLING WITH", - "SISYPHE_STEERING_FILE" : "SISYPHE STEERING FILE", - "COUPLING_PERIOD_FOR_SISYPHE" : "COUPLING PERIOD FOR SISYPHE", - "TOMAWAC_STEERING_FILE" : "TOMAWAC STEERING FILE", - "COUPLING_PERIOD_FOR_TOMAWAC" : "COUPLING PERIOD FOR TOMAWAC", - "WATER_QUALITY_PROCESS" : "WATER QUALITY PROCESS", - "WAQTEL_STEERING_FILE" : "WAQTEL STEERING FILE", - "DELWAQ_STEERING_FILE" : "DELWAQ STEERING FILE", - "DELWAQ_PRINTOUT_PERIOD" : "DELWAQ PRINTOUT PERIOD", - "EXCHANGES_BETWEEN_NODES_DELWAQ_FILE" : "EXCHANGES BETWEEN NODES DELWAQ FILE", - "NODES_DISTANCES_DELWAQ_FILE" : "NODES DISTANCES DELWAQ FILE", - "BOTTOM_SURFACES_DELWAQ_FILE" : "BOTTOM SURFACES DELWAQ FILE", - "VOLUMES_DELWAQ_FILE" : "VOLUMES DELWAQ FILE", - "EXCHANGE_AREAS_DELWAQ_FILE" : "EXCHANGE AREAS DELWAQ FILE", - "VERTICAL_FLUXES_DELWAQ_FILE" : "VERTICAL FLUXES DELWAQ FILE", - "VELOCITY_DELWAQ_FILE" : "VELOCITY DELWAQ FILE", - "DIFFUSIVITY_DELWAQ_FILE" : "DIFFUSIVITY DELWAQ FILE", - "TEMPERATURE_DELWAQ_FILE" : "TEMPERATURE DELWAQ FILE", - "SALINITY_DELWAQ_FILE" : "SALINITY DELWAQ FILE", - "VELOCITY_FOR_DELWAQ" : "VELOCITY FOR DELWAQ", - "DIFFUSION_FOR_DELWAQ" : "DIFFUSION FOR DELWAQ", - "TEMPERATURE_FOR_DELWAQ" : "TEMPERATURE FOR DELWAQ", - "SALINITY_FOR_DELWAQ" : "SALINITY FOR DELWAQ", - "AD_NUMBER_OF_DERIVATIVES" : "AD NUMBER OF DERIVATIVES", - "AD_NAMES_OF_DERIVATIVES" : "AD NAMES OF DERIVATIVES", - "AD_NUMBER_OF_DIRECTIONS" : "AD NUMBER OF DIRECTIONS", - "AD_SYMBOLIC_LINEAR_SOLVER" : "AD SYMBOLIC LINEAR SOLVER", - "AD_LINEAR_SOLVER_RESET_DERIVATIVES" : "AD LINEAR SOLVER RESET DERIVATIVES", - "AD_LINEAR_SOLVER_DERIVATIVE_CONVERGENCE" : "AD LINEAR SOLVER DERIVATIVE CONVERGENCE", - "PARTITIONING_TOOL" : "PARTITIONING TOOL", - "STEERING_FILE" : "STEERING FILE", - "RELEASE" : "RELEASE", - "DICTIONARY" : "DICTIONARY", - "LIST_OF_FILES" : "LIST OF FILES", - "DESCRIPTION_OF_LIBRARIES" : "DESCRIPTION OF LIBRARIES", - "DEFAULT_EXECUTABLE" : "DEFAULT EXECUTABLE", - "DEFAULT_PARALLEL_EXECUTABLE" : "DEFAULT PARALLEL EXECUTABLE", -} -dicoCasEnToCata = { - "TITLE" : "TITLE", - "PARALLEL PROCESSORS" : "PARALLEL_PROCESSORS", - "CHECKING THE MESH" : "CHECKING_THE_MESH", - "MAXIMUM NUMBER OF BOUNDARIES" : "MAXIMUM_NUMBER_OF_BOUNDARIES", - "MAXIMUM NUMBER OF TRACERS" : "MAXIMUM_NUMBER_OF_TRACERS", - "MAXIMUM NUMBER OF SOURCES" : "MAXIMUM_NUMBER_OF_SOURCES", - "MAXIMUM NUMBER OF BOUNDARIES ON THE BED" : "MAXIMUM_NUMBER_OF_BOUNDARIES_ON_THE_BED", - "VECTOR LENGTH" : "VECTOR_LENGTH", - "GEOMETRY FILE" : "GEOMETRY_FILE", - "GEOMETRY FILE FORMAT" : "GEOMETRY_FILE_FORMAT", - "BOUNDARY CONDITIONS FILE" : "BOUNDARY_CONDITIONS_FILE", - "BINARY BOUNDARY DATA FILE" : "BINARY_BOUNDARY_DATA_FILE", - "BINARY BOUNDARY DATA FILE FORMAT" : "BINARY_BOUNDARY_DATA_FILE_FORMAT", - "FORTRAN FILE" : "FORTRAN_FILE", - "BOTTOM TOPOGRAPHY FILE" : "BOTTOM_TOPOGRAPHY_FILE", - "NUMBER OF BOTTOM SMOOTHINGS" : "NUMBER_OF_BOTTOM_SMOOTHINGS", - "FORMATTED DATA FILE 1" : "FORMATTED_DATA_FILE_1", - "FORMATTED DATA FILE 2" : "FORMATTED_DATA_FILE_2", - "BINARY DATA FILE 1" : "BINARY_DATA_FILE_1", - "BINARY DATA FILE 1 FORMAT" : "BINARY_DATA_FILE_1_FORMAT", - "BINARY DATA FILE 2" : "BINARY_DATA_FILE_2", - "VALIDATION" : "VALIDATION", - "REFERENCE FILE" : "REFERENCE_FILE", - "REFERENCE FILE FORMAT" : "REFERENCE_FILE_FORMAT", - "3D RESULT FILE" : "RD_RESULT_FILE", - "3D RESULT FILE FORMAT" : "RD_RESULT_FILE_FORMAT", - "2D RESULT FILE" : "ED_RESULT_FILE", - "2D RESULT FILE FORMAT" : "ED_RESULT_FILE_FORMAT", - "RESULT FILE IN LONGITUDE-LATITUDE" : "RESULT_FILE_IN_LONGITUDE_LATITUDE", - "VARIABLES FOR 3D GRAPHIC PRINTOUTS" : "VARIABLES_FOR_3D_GRAPHIC_PRINTOUTS", - "VARIABLES FOR 2D GRAPHIC PRINTOUTS" : "VARIABLES_FOR_2D_GRAPHIC_PRINTOUTS", - "GRAPHIC PRINTOUT PERIOD" : "GRAPHIC_PRINTOUT_PERIOD", - "NUMBER OF FIRST TIME STEP FOR GRAPHIC PRINTOUTS" : "NUMBER_OF_FIRST_TIME_STEP_FOR_GRAPHIC_PRINTOUTS", - "3D RESULT FILE BINARY" : "RD_RESULT_FILE_BINARY", - "2D RESULT FILE BINARY" : "ED_RESULT_FILE_BINARY", - "NUMBER OF PRIVATE ARRAYS" : "NUMBER_OF_PRIVATE_ARRAYS", - "NUMBER OF 2D PRIVATE ARRAYS" : "NUMBER_OF_2D_PRIVATE_ARRAYS", - "NAMES OF 2D PRIVATE VARIABLES" : "NAMES_OF_2D_PRIVATE_VARIABLES", - "FORMATTED RESULTS FILE" : "FORMATTED_RESULTS_FILE", - "BINARY RESULTS FILE" : "BINARY_RESULTS_FILE", - "LISTING PRINTOUT" : "LISTING_PRINTOUT", - "MASS-BALANCE" : "MASS_BALANCE", - "INFORMATION ABOUT MASS-BALANCE FOR EACH LISTING PRINTOUT" : "INFORMATION_ABOUT_MASS_BALANCE_FOR_EACH_LISTING_PRINTOUT", - "LISTING PRINTOUT PERIOD" : "LISTING_PRINTOUT_PERIOD", - "NUMBER OF FIRST TIME STEP FOR LISTING PRINTOUTS" : "NUMBER_OF_FIRST_TIME_STEP_FOR_LISTING_PRINTOUTS", - "COMPUTATION CONTINUED" : "COMPUTATION_CONTINUED", - "PREVIOUS COMPUTATION FILE" : "PREVIOUS_COMPUTATION_FILE", - "PREVIOUS COMPUTATION FILE FORMAT" : "PREVIOUS_COMPUTATION_FILE_FORMAT", - "RECORD NUMBER FOR RESTART" : "RECORD_NUMBER_FOR_RESTART", - "INITIAL TIME SET TO ZERO" : "INITIAL_TIME_SET_TO_ZERO", - "RESTART MODE" : "RESTART_MODE", - "RESTART FILE" : "RESTART_FILE", - "RESTART FILE FORMAT" : "RESTART_FILE_FORMAT", - "2D CONTINUATION" : "ED_CONTINUATION", - "FILE FOR 2D CONTINUATION" : "FILE_FOR_2D_CONTINUATION", - "FILE FOR 2D CONTINUATION FORMAT" : "FILE_FOR_2D_CONTINUATION_FORMAT", - "DEBUGGER" : "DEBUGGER", - "TIME STEP" : "TIME_STEP", - "NUMBER OF TIME STEPS" : "NUMBER_OF_TIME_STEPS", - "DURATION" : "DURATION", - "ORIGINAL DATE OF TIME" : "ORIGINAL_DATE_OF_TIME", - "ORIGINAL HOUR OF TIME" : "ORIGINAL_HOUR_OF_TIME", - "SPHERICAL COORDINATES" : "SPHERICAL_COORDINATES", - "SPATIAL PROJECTION TYPE" : "SPATIAL_PROJECTION_TYPE", - "LATITUDE OF ORIGIN POINT" : "LATITUDE_OF_ORIGIN_POINT", - "LONGITUDE OF ORIGIN POINT" : "LONGITUDE_OF_ORIGIN_POINT", - "NORTH" : "NORTH", - "ORIGIN COORDINATES" : "ORIGIN_COORDINATES", - "NUMBER OF HORIZONTAL LEVELS" : "NUMBER_OF_HORIZONTAL_LEVELS", - "MESH TRANSFORMATION" : "MESH_TRANSFORMATION", - "NUMBER OF SUB ITERATIONS FOR NON LINEARITIES" : "NUMBER_OF_SUB_ITERATIONS_FOR_NON_LINEARITIES", - "ZERO" : "ZERO", - "ADVECTION STEP" : "ADVECTION_STEP", - "TREATMENT OF FLUXES AT THE BOUNDARIES" : "TREATMENT_OF_FLUXES_AT_THE_BOUNDARIES", - "SUPG OPTION" : "SUPG_OPTION", - "MAXIMUM NUMBER OF ITERATIONS FOR ADVECTION SCHEMES" : "MAXIMUM_NUMBER_OF_ITERATIONS_FOR_ADVECTION_SCHEMES", - "NUMBER OF SUB-STEPS OF DISTRIBUTIVE SCHEMES" : "NUMBER_OF_SUB_STEPS_OF_DISTRIBUTIVE_SCHEMES", - "NUMBER OF CORRECTIONS OF DISTRIBUTIVE SCHEMES" : "NUMBER_OF_CORRECTIONS_OF_DISTRIBUTIVE_SCHEMES", - "MASS-LUMPING FOR DIFFUSION" : "MASS_LUMPING_FOR_DIFFUSION", - "NON-HYDROSTATIC VERSION" : "NON_HYDROSTATIC_VERSION", - "ELEMENTS MASKED BY USER" : "ELEMENTS_MASKED_BY_USER", - "GRAVITY ACCELERATION" : "GRAVITY_ACCELERATION", - "AVERAGE WATER DENSITY" : "AVERAGE_WATER_DENSITY", - "LAW OF BOTTOM FRICTION" : "LAW_OF_BOTTOM_FRICTION", - "FRICTION COEFFICIENT FOR THE BOTTOM" : "FRICTION_COEFFICIENT_FOR_THE_BOTTOM", - "LAW OF FRICTION ON LATERAL BOUNDARIES" : "LAW_OF_FRICTION_ON_LATERAL_BOUNDARIES", - "FRICTION COEFFICIENT FOR LATERAL SOLID BOUNDARIES" : "FRICTION_COEFFICIENT_FOR_LATERAL_SOLID_BOUNDARIES", - "CORIOLIS" : "CORIOLIS", - "CORIOLIS COEFFICIENT" : "CORIOLIS_COEFFICIENT", - "WIND" : "WIND", - "OPTION FOR WIND" : "OPTION_FOR_WIND", - "WIND VELOCITY ALONG X" : "WIND_VELOCITY_ALONG_X", - "WIND VELOCITY ALONG Y" : "WIND_VELOCITY_ALONG_Y", - "COEFFICIENT OF WIND INFLUENCE" : "COEFFICIENT_OF_WIND_INFLUENCE", - "COEFFICIENT OF WIND INFLUENCE VARYING WITH WIND SPEED" : "COEFFICIENT_OF_WIND_INFLUENCE_VARYING_WITH_WIND_SPEED", - "THRESHOLD DEPTH FOR WIND" : "THRESHOLD_DEPTH_FOR_WIND", - "AIR PRESSURE" : "AIR_PRESSURE", - "VALUE OF ATMOSPHERIC PRESSURE" : "VALUE_OF_ATMOSPHERIC_PRESSURE", - "RAIN OR EVAPORATION" : "RAIN_OR_EVAPORATION", - "RAIN OR EVAPORATION IN MM PER DAY" : "RAIN_OR_EVAPORATION_IN_MM_PER_DAY", - "ASCII ATMOSPHERIC DATA FILE" : "ASCII_ATMOSPHERIC_DATA_FILE", - "BINARY ATMOSPHERIC DATA FILE" : "BINARY_ATMOSPHERIC_DATA_FILE", - "BINARY ATMOSPHERIC DATA FILE FORMAT" : "BINARY_ATMOSPHERIC_DATA_FILE_FORMAT", - "SOURCES FILE" : "SOURCES_FILE", - "GLOBAL NUMBERS OF SOURCE NODES" : "GLOBAL_NUMBERS_OF_SOURCE_NODES", - "TYPE OF SOURCES" : "TYPE_OF_SOURCES", - "ABSCISSAE OF SOURCES" : "ABSCISSAE_OF_SOURCES", - "ORDINATES OF SOURCES" : "ORDINATES_OF_SOURCES", - "ELEVATIONS OF SOURCES" : "ELEVATIONS_OF_SOURCES", - "WATER DISCHARGE OF SOURCES" : "WATER_DISCHARGE_OF_SOURCES", - "VELOCITIES OF THE SOURCES ALONG X" : "VELOCITIES_OF_THE_SOURCES_ALONG_X", - "VELOCITIES OF THE SOURCES ALONG Y" : "VELOCITIES_OF_THE_SOURCES_ALONG_Y", - "VELOCITIES OF THE SOURCES ALONG Z" : "VELOCITIES_OF_THE_SOURCES_ALONG_Z", - "WAVE DRIVEN CURRENTS" : "WAVE_DRIVEN_CURRENTS", - "RECORD NUMBER IN WAVE FILE" : "RECORD_NUMBER_IN_WAVE_FILE", - "PRESCRIBED ELEVATIONS" : "PRESCRIBED_ELEVATIONS", - "PRESCRIBED FLOWRATES" : "PRESCRIBED_FLOWRATES", - "PRESCRIBED VELOCITIES" : "PRESCRIBED_VELOCITIES", - "LIQUID BOUNDARIES FILE" : "LIQUID_BOUNDARIES_FILE", - "VELOCITY PROFILES" : "VELOCITY_PROFILES", - "VELOCITY VERTICAL PROFILES" : "VELOCITY_VERTICAL_PROFILES", - "STAGE-DISCHARGE CURVES" : "STAGE_DISCHARGE_CURVES", - "STAGE-DISCHARGE CURVES FILE" : "STAGE_DISCHARGE_CURVES_FILE", - "OPTION FOR LIQUID BOUNDARIES" : "OPTION_FOR_LIQUID_BOUNDARIES", - "TURBULENCE REGIME FOR THE BOTTOM" : "TURBULENCE_REGIME_FOR_THE_BOTTOM", - "TURBULENCE REGIME FOR LATERAL SOLID BOUNDARIES" : "TURBULENCE_REGIME_FOR_LATERAL_SOLID_BOUNDARIES", - "BOUNDARY CONDITION ON THE BOTTOM" : "BOUNDARY_CONDITION_ON_THE_BOTTOM", - "VELOCITY PROJECTED ON SOLID LATERAL BOUNDARIES" : "VELOCITY_PROJECTED_ON_SOLID_LATERAL_BOUNDARIES", - "VELOCITY PROJECTED ON BOTTOM" : "VELOCITY_PROJECTED_ON_BOTTOM", - "OPEN BOUNDARY CONDITIONS ON THE BED" : "OPEN_BOUNDARY_CONDITIONS_ON_THE_BED", - "PRESCRIBED FLOWRATES ON THE BED" : "PRESCRIBED_FLOWRATES_ON_THE_BED", - "INITIAL CONDITIONS" : "INITIAL_CONDITIONS", - "INITIAL ELEVATION" : "INITIAL_ELEVATION", - "INITIAL DEPTH" : "INITIAL_DEPTH", - "MATRIX STORAGE" : "MATRIX_STORAGE", - "MASS-LUMPING FOR DEPTH" : "MASS_LUMPING_FOR_DEPTH", - "HYDROSTATIC INCONSISTENCY FILTER" : "HYDROSTATIC_INCONSISTENCY_FILTER", - "ELEMENT" : "ELEMENT", - "SOLVER FOR PROPAGATION" : "SOLVER_FOR_PROPAGATION", - "ACCURACY FOR PROPAGATION" : "ACCURACY_FOR_PROPAGATION", - "MAXIMUM NUMBER OF ITERATIONS FOR PROPAGATION" : "MAXIMUM_NUMBER_OF_ITERATIONS_FOR_PROPAGATION", - "PRECONDITIONING FOR PROPAGATION" : "PRECONDITIONING_FOR_PROPAGATION", - "OPTION OF SOLVER FOR PROPAGATION" : "OPTION_OF_SOLVER_FOR_PROPAGATION", - "INITIAL GUESS FOR DEPTH" : "INITIAL_GUESS_FOR_DEPTH", - "LINEARIZED PROPAGATION" : "LINEARIZED_PROPAGATION", - "MEAN DEPTH FOR LINEARIZATION" : "MEAN_DEPTH_FOR_LINEARIZATION", - "SCHEME FOR ADVECTION OF DEPTH" : "SCHEME_FOR_ADVECTION_OF_DEPTH", - "SCHEME FOR ADVECTION OF VELOCITIES" : "SCHEME_FOR_ADVECTION_OF_VELOCITIES", - "FREE SURFACE GRADIENT COMPATIBILITY" : "FREE_SURFACE_GRADIENT_COMPATIBILITY", - "BYPASS VOID VOLUMES" : "BYPASS_VOID_VOLUMES", - "MASS-LUMPING FOR VELOCITIES" : "MASS_LUMPING_FOR_VELOCITIES", - "SCHEME OPTION FOR ADVECTION OF VELOCITIES" : "SCHEME_OPTION_FOR_ADVECTION_OF_VELOCITIES", - "OPTION FOR CHARACTERISTICS" : "OPTION_FOR_CHARACTERISTICS", - "NUMBER OF GAUSS POINTS FOR WEAK CHARACTERISTICS" : "NUMBER_OF_GAUSS_POINTS_FOR_WEAK_CHARACTERISTICS", - "MASS-LUMPING FOR WEAK CHARACTERISTICS" : "MASS_LUMPING_FOR_WEAK_CHARACTERISTICS", - "SCHEME FOR DIFFUSION OF VELOCITIES" : "SCHEME_FOR_DIFFUSION_OF_VELOCITIES", - "SOLVER FOR DIFFUSION OF VELOCITIES" : "SOLVER_FOR_DIFFUSION_OF_VELOCITIES", - "ACCURACY FOR DIFFUSION OF VELOCITIES" : "ACCURACY_FOR_DIFFUSION_OF_VELOCITIES", - "MAXIMUM NUMBER OF ITERATIONS FOR DIFFUSION OF VELOCITIES" : "MAXIMUM_NUMBER_OF_ITERATIONS_FOR_DIFFUSION_OF_VELOCITIES", - "PRECONDITIONING FOR DIFFUSION OF VELOCITIES" : "PRECONDITIONING_FOR_DIFFUSION_OF_VELOCITIES", - "OPTION OF SOLVER FOR DIFFUSION OF VELOCITIES" : "OPTION_OF_SOLVER_FOR_DIFFUSION_OF_VELOCITIES", - "IMPLICITATION FOR DIFFUSION" : "IMPLICITATION_FOR_DIFFUSION", - "SOLVER FOR PPE" : "SOLVER_FOR_PPE", - "ACCURACY FOR PPE" : "ACCURACY_FOR_PPE", - "MAXIMUM NUMBER OF ITERATIONS FOR PPE" : "MAXIMUM_NUMBER_OF_ITERATIONS_FOR_PPE", - "PRECONDITIONING FOR PPE" : "PRECONDITIONING_FOR_PPE", - "OPTION OF SOLVER FOR PPE" : "OPTION_OF_SOLVER_FOR_PPE", - "DYNAMIC PRESSURE IN WAVE EQUATION" : "DYNAMIC_PRESSURE_IN_WAVE_EQUATION", - "DYNAMIC BOUNDARY CONDITION" : "DYNAMIC_BOUNDARY_CONDITION", - "CONTINUITY CORRECTION ON OPEN BOUNDARIES" : "CONTINUITY_CORRECTION_ON_OPEN_BOUNDARIES", - "SOLVER FOR VERTICAL VELOCITY" : "SOLVER_FOR_VERTICAL_VELOCITY", - "ACCURACY FOR VERTICAL VELOCITY" : "ACCURACY_FOR_VERTICAL_VELOCITY", - "MAXIMUM NUMBER OF ITERATIONS FOR VERTICAL VELOCITY" : "MAXIMUM_NUMBER_OF_ITERATIONS_FOR_VERTICAL_VELOCITY", - "PRECONDITIONING FOR VERTICAL VELOCITY" : "PRECONDITIONING_FOR_VERTICAL_VELOCITY", - "IMPLICITATION FOR DEPTH" : "IMPLICITATION_FOR_DEPTH", - "IMPLICITATION FOR VELOCITIES" : "IMPLICITATION_FOR_VELOCITIES", - "TIDAL FLATS" : "TIDAL_FLATS", - "OPTION FOR THE TREATMENT OF TIDAL FLATS" : "OPTION_FOR_THE_TREATMENT_OF_TIDAL_FLATS", - "TREATMENT OF NEGATIVE DEPTHS" : "TREATMENT_OF_NEGATIVE_DEPTHS", - "TREATMENT ON TIDAL FLATS FOR VELOCITIES" : "TREATMENT_ON_TIDAL_FLATS_FOR_VELOCITIES", - "THRESHOLD FOR VISCOSITY CORRECTION ON TIDAL FLATS" : "THRESHOLD_FOR_VISCOSITY_CORRECTION_ON_TIDAL_FLATS", - "MINIMAL VALUE FOR DEPTH" : "MINIMAL_VALUE_FOR_DEPTH", - "BINARY DATABASE 1 FOR TIDE" : "BINARY_DATABASE_1_FOR_TIDE", - "BINARY DATABASE 2 FOR TIDE" : "BINARY_DATABASE_2_FOR_TIDE", - "GEOGRAPHIC SYSTEM" : "GEOGRAPHIC_SYSTEM", - "ZONE NUMBER IN GEOGRAPHIC SYSTEM" : "ZONE_NUMBER_IN_GEOGRAPHIC_SYSTEM", - "LAMBERT 93 CONVERSION FILE" : "LAMBERT_93_CONVERSION_FILE", - "COEFFICIENT TO CALIBRATE SEA LEVEL" : "COEFFICIENT_TO_CALIBRATE_SEA_LEVEL", - "GLOBAL NUMBER OF THE POINT TO CALIBRATE HIGH WATER" : "GLOBAL_NUMBER_OF_THE_POINT_TO_CALIBRATE_HIGH_WATER", - "MINOR CONSTITUENTS INFERENCE" : "MINOR_CONSTITUENTS_INFERENCE", - "TIDE GENERATING FORCE" : "TIDE_GENERATING_FORCE", - "OPTION FOR TIDAL BOUNDARY CONDITIONS" : "OPTION_FOR_TIDAL_BOUNDARY_CONDITIONS", - "TIDAL DATA BASE" : "TIDAL_DATA_BASE", - "HARMONIC CONSTANTS FILE" : "HARMONIC_CONSTANTS_FILE", - "TIDAL MODEL FILE" : "TIDAL_MODEL_FILE", - "TIDAL MODEL FILE FORMAT" : "TIDAL_MODEL_FILE_FORMAT", - "ASCII DATABASE FOR TIDE" : "ASCII_DATABASE_FOR_TIDE", - "COEFFICIENT TO CALIBRATE TIDAL RANGE" : "COEFFICIENT_TO_CALIBRATE_TIDAL_RANGE", - "COEFFICIENT TO CALIBRATE TIDAL VELOCITIES" : "COEFFICIENT_TO_CALIBRATE_TIDAL_VELOCITIES", - "LOCAL NUMBER OF THE POINT TO CALIBRATE HIGH WATER" : "LOCAL_NUMBER_OF_THE_POINT_TO_CALIBRATE_HIGH_WATER", - "NUMBER OF DROGUES" : "NUMBER_OF_DROGUES", - "DROGUES FILE" : "DROGUES_FILE", - "PRINTOUT PERIOD FOR DROGUES" : "PRINTOUT_PERIOD_FOR_DROGUES", - "OIL SPILL MODEL" : "OIL_SPILL_MODEL", - "OIL SPILL STEERING FILE" : "OIL_SPILL_STEERING_FILE", - "NUMBER OF CULVERTS" : "NUMBER_OF_CULVERTS", - "CULVERTS DATA FILE" : "CULVERTS_DATA_FILE", - "OPTION FOR CULVERTS" : "OPTION_FOR_CULVERTS", - "HORIZONTAL TURBULENCE MODEL" : "HORIZONTAL_TURBULENCE_MODEL", - "VERTICAL TURBULENCE MODEL" : "VERTICAL_TURBULENCE_MODEL", - "COEFFICIENT FOR HORIZONTAL DIFFUSION OF VELOCITIES" : "COEFFICIENT_FOR_HORIZONTAL_DIFFUSION_OF_VELOCITIES", - "COEFFICIENT FOR VERTICAL DIFFUSION OF VELOCITIES" : "COEFFICIENT_FOR_VERTICAL_DIFFUSION_OF_VELOCITIES", - "MIXING LENGTH MODEL" : "MIXING_LENGTH_MODEL", - "DAMPING FUNCTION" : "DAMPING_FUNCTION", - "PRANDTL NUMBER" : "PRANDTL_NUMBER", - "KARMAN CONSTANT" : "KARMAN_CONSTANT", - "FICTITIOUS BED LEVEL" : "FICTITIOUS_BED_LEVEL", - "OPTION FOR THE BOUNDARY CONDITIONS OF K-EPSILON" : "OPTION_FOR_THE_BOUNDARY_CONDITIONS_OF_K_EPSILON", - "VERTICAL VELOCITY DERIVATIVES" : "VERTICAL_VELOCITY_DERIVATIVES", - "SCHEME FOR ADVECTION OF K-EPSILON" : "SCHEME_FOR_ADVECTION_OF_K_EPSILON", - "SCHEME OPTION FOR ADVECTION OF K-EPSILON" : "SCHEME_OPTION_FOR_ADVECTION_OF_K_EPSILON", - "SCHEME FOR DIFFUSION OF K-EPSILON" : "SCHEME_FOR_DIFFUSION_OF_K_EPSILON", - "SOLVER FOR DIFFUSION OF K-EPSILON" : "SOLVER_FOR_DIFFUSION_OF_K_EPSILON", - "ACCURACY FOR DIFFUSION OF K-EPSILON" : "ACCURACY_FOR_DIFFUSION_OF_K_EPSILON", - "MAXIMUM NUMBER OF ITERATIONS FOR DIFFUSION OF K-EPSILON" : "MAXIMUM_NUMBER_OF_ITERATIONS_FOR_DIFFUSION_OF_K_EPSILON", - "PRECONDITIONING FOR DIFFUSION OF K-EPSILON" : "PRECONDITIONING_FOR_DIFFUSION_OF_K_EPSILON", - "OPTION OF SOLVER FOR DIFFUSION OF K-EPSILON" : "OPTION_OF_SOLVER_FOR_DIFFUSION_OF_K_EPSILON", - "TREATMENT ON TIDAL FLATS FOR K-EPSILON" : "TREATMENT_ON_TIDAL_FLATS_FOR_K_EPSILON", - "NUMBER OF TRACERS" : "NUMBER_OF_TRACERS", - "NAMES OF TRACERS" : "NAMES_OF_TRACERS", - "VALUES OF TRACERS IN THE RAIN" : "VALUES_OF_TRACERS_IN_THE_RAIN", - "VALUE OF THE TRACERS AT THE SOURCES" : "VALUE_OF_THE_TRACERS_AT_THE_SOURCES", - "DENSITY LAW" : "DENSITY_LAW", - "STANDARD VALUES FOR TRACERS" : "STANDARD_VALUES_FOR_TRACERS", - "BETA EXPANSION COEFFICIENT FOR TRACERS" : "BETA_EXPANSION_COEFFICIENT_FOR_TRACERS", - "PRESCRIBED TRACERS VALUES" : "PRESCRIBED_TRACERS_VALUES", - "TRACERS VERTICAL PROFILES" : "TRACERS_VERTICAL_PROFILES", - "INITIAL VALUES OF TRACERS" : "INITIAL_VALUES_OF_TRACERS", - "SCHEME FOR ADVECTION OF TRACERS" : "SCHEME_FOR_ADVECTION_OF_TRACERS", - "SCHEME OPTION FOR ADVECTION OF TRACERS" : "SCHEME_OPTION_FOR_ADVECTION_OF_TRACERS", - "SCHEME FOR DIFFUSION OF TRACERS" : "SCHEME_FOR_DIFFUSION_OF_TRACERS", - "SOLVER FOR DIFFUSION OF TRACERS" : "SOLVER_FOR_DIFFUSION_OF_TRACERS", - "ACCURACY FOR DIFFUSION OF TRACERS" : "ACCURACY_FOR_DIFFUSION_OF_TRACERS", - "MAXIMUM NUMBER OF ITERATIONS FOR DIFFUSION OF TRACERS" : "MAXIMUM_NUMBER_OF_ITERATIONS_FOR_DIFFUSION_OF_TRACERS", - "PRECONDITIONING FOR DIFFUSION OF TRACERS" : "PRECONDITIONING_FOR_DIFFUSION_OF_TRACERS", - "OPTION OF SOLVER FOR DIFFUSION OF TRACERS" : "OPTION_OF_SOLVER_FOR_DIFFUSION_OF_TRACERS", - "TREATMENT ON TIDAL FLATS FOR TRACERS" : "TREATMENT_ON_TIDAL_FLATS_FOR_TRACERS", - "COEFFICIENT FOR HORIZONTAL DIFFUSION OF TRACERS" : "COEFFICIENT_FOR_HORIZONTAL_DIFFUSION_OF_TRACERS", - "COEFFICIENT FOR VERTICAL DIFFUSION OF TRACERS" : "COEFFICIENT_FOR_VERTICAL_DIFFUSION_OF_TRACERS", - "SEDIMENT" : "SEDIMENT", - "DENSITY OF THE SEDIMENT" : "DENSITY_OF_THE_SEDIMENT", - "TIME STEP FOR CONSOLIDATION" : "TIME_STEP_FOR_CONSOLIDATION", - "COHESIVE SEDIMENT" : "COHESIVE_SEDIMENT", - "SHIELDS PARAMETER" : "SHIELDS_PARAMETER", - "MIXED SEDIMENT" : "MIXED_SEDIMENT", - "NUMBER OF SEDIMENT BED LAYERS" : "NUMBER_OF_SEDIMENT_BED_LAYERS", - "READ CRITICAL BED SHEAR STRESS PER LAYER" : "READ_CRITICAL_BED_SHEAR_STRESS_PER_LAYER", - "SEDIMENTOLOGICAL RESULT FILE" : "SEDIMENTOLOGICAL_RESULT_FILE", - "SEDIMENTOLOGICAL RESULT FILE BINARY" : "SEDIMENTOLOGICAL_RESULT_FILE_BINARY", - "PREVIOUS COMPUTATION SEDIMENTOLOGICAL FILE" : "PREVIOUS_COMPUTATION_SEDIMENTOLOGICAL_FILE", - "MEAN DIAMETER OF THE SEDIMENT" : "MEAN_DIAMETER_OF_THE_SEDIMENT", - "RATIO BETWEEN SKIN FRICTION AND MEAN DIAMETER" : "RATIO_BETWEEN_SKIN_FRICTION_AND_MEAN_DIAMETER", - "SKIN FRICTION CORRECTION" : "SKIN_FRICTION_CORRECTION", - "INITIAL PERCENTAGE OF NON COHESIVE SEDIMENT" : "INITIAL_PERCENTAGE_OF_NON_COHESIVE_SEDIMENT", - "MUD CONCENTRATIONS PER LAYER" : "MUD_CONCENTRATIONS_PER_LAYER", - "CRITICAL EROSION SHEAR STRESS OF THE MUD LAYERS" : "CRITICAL_EROSION_SHEAR_STRESS_OF_THE_MUD_LAYERS", - "INITIAL THICKNESS OF SEDIMENT LAYERS" : "INITIAL_THICKNESS_OF_SEDIMENT_LAYERS", - "SOLVER FOR DIFFUSION OF THE SEDIMENT" : "SOLVER_FOR_DIFFUSION_OF_THE_SEDIMENT", - "ACCURACY FOR DIFFUSION OF SEDIMENT" : "ACCURACY_FOR_DIFFUSION_OF_SEDIMENT", - "MAXIMUM NUMBER OF ITERATIONS FOR DIFFUSION OF SEDIMENT" : "MAXIMUM_NUMBER_OF_ITERATIONS_FOR_DIFFUSION_OF_SEDIMENT", - "PRECONDITIONING FOR DIFFUSION OF THE SEDIMENT" : "PRECONDITIONING_FOR_DIFFUSION_OF_THE_SEDIMENT", - "OPTION OF SOLVER FOR DIFFUSION OF THE SEDIMENT" : "OPTION_OF_SOLVER_FOR_DIFFUSION_OF_THE_SEDIMENT", - "THRESHOLD FOR SEDIMENT FLUX CORRECTION ON TIDAL FLATS" : "THRESHOLD_FOR_SEDIMENT_FLUX_CORRECTION_ON_TIDAL_FLATS", - "CRITICAL SHEAR STRESS FOR DEPOSITION" : "CRITICAL_SHEAR_STRESS_FOR_DEPOSITION", - "NON COHESIVE BED POROSITY" : "NON_COHESIVE_BED_POROSITY", - "EROSION COEFFICIENT" : "EROSION_COEFFICIENT", - "CONSTANT SEDIMENT SETTLING VELOCITY" : "CONSTANT_SEDIMENT_SETTLING_VELOCITY", - "SETTLING VELOCITY OF SANDS" : "SETTLING_VELOCITY_OF_SANDS", - "ADVECTION-DIFFUSION SCHEME WITH SETTLING VELOCITY" : "ADVECTION_DIFFUSION_SCHEME_WITH_SETTLING_VELOCITY", - "HINDERED SETTLING" : "HINDERED_SETTLING", - "WEAK SOIL CONCENTRATION FOR MUD" : "WEAK_SOIL_CONCENTRATION_FOR_MUD", - "THRESHOLD CONCENTRATION FOR HINDERED SETTLING" : "THRESHOLD_CONCENTRATION_FOR_HINDERED_SETTLING", - "HINDERED SETTLING FORMULA" : "HINDERED_SETTLING_FORMULA", - "REFERENCE CONCENTRATION FORMULA" : "REFERENCE_CONCENTRATION_FORMULA", - "FLOCCULATION" : "FLOCCULATION", - "FLOCCULATION FORMULA" : "FLOCCULATION_FORMULA", - "FLOCCULATION COEFFICIENT" : "FLOCCULATION_COEFFICIENT", - "COEFFICIENT RELATIVE TO FLOC DESTRUCTION" : "COEFFICIENT_RELATIVE_TO_FLOC_DESTRUCTION", - "BED LAYERS THICKNESS" : "BED_LAYERS_THICKNESS", - "MAXIMUM CONCENTRATION OF THE CONSOLIDATED MUD" : "MAXIMUM_CONCENTRATION_OF_THE_CONSOLIDATED_MUD", - "RESIDENCE TIME FOR MUD" : "RESIDENCE_TIME_FOR_MUD", - "CONSOLIDATION" : "CONSOLIDATION", - "CONSOLIDATION MODEL" : "CONSOLIDATION_MODEL", - "COUPLING WITH" : "COUPLING_WITH", - "SISYPHE STEERING FILE" : "SISYPHE_STEERING_FILE", - "COUPLING PERIOD FOR SISYPHE" : "COUPLING_PERIOD_FOR_SISYPHE", - "TOMAWAC STEERING FILE" : "TOMAWAC_STEERING_FILE", - "COUPLING PERIOD FOR TOMAWAC" : "COUPLING_PERIOD_FOR_TOMAWAC", - "WATER QUALITY PROCESS" : "WATER_QUALITY_PROCESS", - "WAQTEL STEERING FILE" : "WAQTEL_STEERING_FILE", - "DELWAQ STEERING FILE" : "DELWAQ_STEERING_FILE", - "DELWAQ PRINTOUT PERIOD" : "DELWAQ_PRINTOUT_PERIOD", - "EXCHANGES BETWEEN NODES DELWAQ FILE" : "EXCHANGES_BETWEEN_NODES_DELWAQ_FILE", - "NODES DISTANCES DELWAQ FILE" : "NODES_DISTANCES_DELWAQ_FILE", - "BOTTOM SURFACES DELWAQ FILE" : "BOTTOM_SURFACES_DELWAQ_FILE", - "VOLUMES DELWAQ FILE" : "VOLUMES_DELWAQ_FILE", - "EXCHANGE AREAS DELWAQ FILE" : "EXCHANGE_AREAS_DELWAQ_FILE", - "VERTICAL FLUXES DELWAQ FILE" : "VERTICAL_FLUXES_DELWAQ_FILE", - "VELOCITY DELWAQ FILE" : "VELOCITY_DELWAQ_FILE", - "DIFFUSIVITY DELWAQ FILE" : "DIFFUSIVITY_DELWAQ_FILE", - "TEMPERATURE DELWAQ FILE" : "TEMPERATURE_DELWAQ_FILE", - "SALINITY DELWAQ FILE" : "SALINITY_DELWAQ_FILE", - "VELOCITY FOR DELWAQ" : "VELOCITY_FOR_DELWAQ", - "DIFFUSION FOR DELWAQ" : "DIFFUSION_FOR_DELWAQ", - "TEMPERATURE FOR DELWAQ" : "TEMPERATURE_FOR_DELWAQ", - "SALINITY FOR DELWAQ" : "SALINITY_FOR_DELWAQ", - "AD NUMBER OF DERIVATIVES" : "AD_NUMBER_OF_DERIVATIVES", - "AD NAMES OF DERIVATIVES" : "AD_NAMES_OF_DERIVATIVES", - "AD NUMBER OF DIRECTIONS" : "AD_NUMBER_OF_DIRECTIONS", - "AD SYMBOLIC LINEAR SOLVER" : "AD_SYMBOLIC_LINEAR_SOLVER", - "AD LINEAR SOLVER RESET DERIVATIVES" : "AD_LINEAR_SOLVER_RESET_DERIVATIVES", - "AD LINEAR SOLVER DERIVATIVE CONVERGENCE" : "AD_LINEAR_SOLVER_DERIVATIVE_CONVERGENCE", - "PARTITIONING TOOL" : "PARTITIONING_TOOL", - "STEERING FILE" : "STEERING_FILE", - "RELEASE" : "RELEASE", - "DICTIONARY" : "DICTIONARY", - "LIST OF FILES" : "LIST_OF_FILES", - "DESCRIPTION OF LIBRARIES" : "DESCRIPTION_OF_LIBRARIES", - "DEFAULT EXECUTABLE" : "DEFAULT_EXECUTABLE", - "DEFAULT PARALLEL EXECUTABLE" : "DEFAULT_PARALLEL_EXECUTABLE", -} diff --git a/Telemac/telemac3d_dicoCasFrToCata.py b/Telemac/telemac3d_dicoCasFrToCata.py deleted file mode 100644 index bd9aca58..00000000 --- a/Telemac/telemac3d_dicoCasFrToCata.py +++ /dev/null @@ -1,664 +0,0 @@ -dicoCataToFrTelemac = { - "TITLE" : "TITRE", - "PARALLEL_PROCESSORS" : "PROCESSEURS PARALLELES", - "CHECKING_THE_MESH" : "VERIFICATION DU MAILLAGE", - "MAXIMUM_NUMBER_OF_BOUNDARIES" : "NOMBRE MAXIMUM DE FRONTIERES", - "MAXIMUM_NUMBER_OF_TRACERS" : "NOMBRE MAXIMUM DE TRACEURS", - "MAXIMUM_NUMBER_OF_SOURCES" : "NOMBRE MAXIMUM DE SOURCES", - "MAXIMUM_NUMBER_OF_BOUNDARIES_ON_THE_BED" : "NOMBRE MAXIMUM DE FRONTIERES SUR LE FOND", - "VECTOR_LENGTH" : "LONGUEUR DU VECTEUR", - "GEOMETRY_FILE" : "FICHIER DE GEOMETRIE", - "GEOMETRY_FILE_FORMAT" : "FORMAT DU FICHIER DE GEOMETRIE", - "BOUNDARY_CONDITIONS_FILE" : "FICHIER DES CONDITIONS AUX LIMITES", - "BINARY_BOUNDARY_DATA_FILE" : "FICHIER BINAIRE DE DONNEES DE FRONTIERE", - "BINARY_BOUNDARY_DATA_FILE_FORMAT" : "FORMAT DU FICHIER BINAIRE DE DONNEES DE FRONTIERE", - "FORTRAN_FILE" : "FICHIER FORTRAN", - "BOTTOM_TOPOGRAPHY_FILE" : "FICHIER DES FONDS", - "NUMBER_OF_BOTTOM_SMOOTHINGS" : "NOMBRE DE LISSAGES DU FOND", - "FORMATTED_DATA_FILE_1" : "FICHIER DE DONNEES FORMATE 1", - "FORMATTED_DATA_FILE_2" : "FICHIER DE DONNEES FORMATE 2", - "BINARY_DATA_FILE_1" : "FICHIER DE DONNEES BINAIRE 1", - "BINARY_DATA_FILE_1_FORMAT" : "FORMAT DU FICHIER DE DONNEES BINAIRE 1", - "BINARY_DATA_FILE_2" : "FICHIER DE DONNEES BINAIRE 2", - "VALIDATION" : "VALIDATION", - "REFERENCE_FILE" : "FICHIER DE REFERENCE", - "REFERENCE_FILE_FORMAT" : "FORMAT DU FICHIER DE REFERENCE", - "RD_RESULT_FILE" : "FICHIER DES RESULTATS 3D", - "RD_RESULT_FILE_FORMAT" : "FORMAT DU FICHIER DES RESULTATS 3D", - "ED_RESULT_FILE" : "FICHIER DES RESULTATS 2D", - "ED_RESULT_FILE_FORMAT" : "FORMAT DU FICHIER DES RESULTATS 2D", - "RESULT_FILE_IN_LONGITUDE_LATITUDE" : "FICHIER RESULTAT EN LONGITUDE-LATITUDE", - "VARIABLES_FOR_3D_GRAPHIC_PRINTOUTS" : "VARIABLES POUR LES SORTIES GRAPHIQUES 3D", - "VARIABLES_FOR_2D_GRAPHIC_PRINTOUTS" : "VARIABLES POUR LES SORTIES GRAPHIQUES 2D", - "GRAPHIC_PRINTOUT_PERIOD" : "PERIODE POUR LES SORTIES GRAPHIQUES", - "NUMBER_OF_FIRST_TIME_STEP_FOR_GRAPHIC_PRINTOUTS" : "NUMERO DU PREMIER PAS DE TEMPS POUR LES SORTIES GRAPHIQUES", - "RD_RESULT_FILE_BINARY" : "BINAIRE DU FICHIER DES RESULTATS 3D", - "ED_RESULT_FILE_BINARY" : "BINAIRE DU FICHIER DES RESULTATS 2D", - "NUMBER_OF_PRIVATE_ARRAYS" : "NOMBRE DE TABLEAUX PRIVES", - "NUMBER_OF_2D_PRIVATE_ARRAYS" : "NOMBRE DE TABLEAUX PRIVES 2D", - "NAMES_OF_2D_PRIVATE_VARIABLES" : "NOMS DES VARIABLES PRIVEES 2D", - "FORMATTED_RESULTS_FILE" : "FICHIER DE RESULTATS FORMATE", - "BINARY_RESULTS_FILE" : "FICHIER DE RESULTATS BINAIRE", - "LISTING_PRINTOUT" : "SORTIE LISTING", - "MASS_BALANCE" : "BILAN DE MASSE", - "INFORMATION_ABOUT_MASS_BALANCE_FOR_EACH_LISTING_PRINTOUT" : "INFORMATION SUR LE BILAN DE MASSE A CHAQUE SORTIE LISTING", - "LISTING_PRINTOUT_PERIOD" : "PERIODE POUR LES SORTIES LISTING", - "NUMBER_OF_FIRST_TIME_STEP_FOR_LISTING_PRINTOUTS" : "NUMERO DU PREMIER PAS DE TEMPS POUR LES SORTIES LISTING", - "COMPUTATION_CONTINUED" : "SUITE DE CALCUL", - "PREVIOUS_COMPUTATION_FILE" : "FICHIER DU CALCUL PRECEDENT", - "PREVIOUS_COMPUTATION_FILE_FORMAT" : "FORMAT DU FICHIER DU CALCUL PRECEDENT", - "RECORD_NUMBER_FOR_RESTART" : "ENREGISTREMENT POUR SUITE DE CALCUL", - "INITIAL_TIME_SET_TO_ZERO" : "REMISE A ZERO DU TEMPS", - "RESTART_MODE" : "MODE SUITE", - "RESTART_FILE" : "FICHIER POUR SUITE", - "RESTART_FILE_FORMAT" : "FORMAT DU FICHIER POUR SUITE", - "ED_CONTINUATION" : "SUITE 2D", - "FILE_FOR_2D_CONTINUATION" : "FICHIER POUR SUITE 2D", - "FILE_FOR_2D_CONTINUATION_FORMAT" : "FORMAT DU FICHIER POUR SUITE 2D", - "DEBUGGER" : "DEBUGGER", - "TIME_STEP" : "PAS DE TEMPS", - "NUMBER_OF_TIME_STEPS" : "NOMBRE DE PAS DE TEMPS", - "DURATION" : "DUREE DU CALCUL", - "ORIGINAL_DATE_OF_TIME" : "DATE DE L'ORIGINE DES TEMPS", - "ORIGINAL_HOUR_OF_TIME" : "HEURE DE L'ORIGINE DES TEMPS", - "SPHERICAL_COORDINATES" : "COORDONNEES SPHERIQUES", - "SPATIAL_PROJECTION_TYPE" : "TYPE DE PROJECTION SPATIALE", - "LATITUDE_OF_ORIGIN_POINT" : "LATITUDE DU POINT ORIGINE", - "LONGITUDE_OF_ORIGIN_POINT" : "LONGITUDE DU POINT ORIGINE", - "NORTH" : "NORD", - "ORIGIN_COORDINATES" : "COORDONNEES DE L'ORIGINE", - "NUMBER_OF_HORIZONTAL_LEVELS" : "NOMBRE DE PLANS HORIZONTAUX", - "MESH_TRANSFORMATION" : "TRANSFORMATION DU MAILLAGE", - "NUMBER_OF_SUB_ITERATIONS_FOR_NON_LINEARITIES" : "NOMBRE DE SOUS ITERATIONS POUR LES NON LINEARITES", - "ZERO" : "ZERO", - "ADVECTION_STEP" : "ETAPE DE CONVECTION", - "TREATMENT_OF_FLUXES_AT_THE_BOUNDARIES" : "TRAITEMENT DES FLUX AUX FRONTIERES", - "SUPG_OPTION" : "OPTION DE SUPG", - "MAXIMUM_NUMBER_OF_ITERATIONS_FOR_ADVECTION_SCHEMES" : "MAXIMUM D'ITERATIONS POUR LES SCHEMAS DE CONVECTION", - "NUMBER_OF_SUB_STEPS_OF_DISTRIBUTIVE_SCHEMES" : "NOMBRE DE SOUS-PAS DES SCHEMAS DISTRIBUTIFS", - "NUMBER_OF_CORRECTIONS_OF_DISTRIBUTIVE_SCHEMES" : "NOMBRE DE CORRECTIONS DES SCHEMAS DISTRIBUTIFS", - "MASS_LUMPING_FOR_DIFFUSION" : "MASS-LUMPING POUR LA DIFFUSION", - "NON_HYDROSTATIC_VERSION" : "VERSION NON-HYDROSTATIQUE", - "ELEMENTS_MASKED_BY_USER" : "ELEMENTS MASQUES PAR L'UTILISATEUR", - "GRAVITY_ACCELERATION" : "ACCELERATION DE LA PESANTEUR", - "AVERAGE_WATER_DENSITY" : "MASSE VOLUMIQUE MOYENNE DE L'EAU", - "LAW_OF_BOTTOM_FRICTION" : "LOI DE FROTTEMENT SUR LE FOND", - "FRICTION_COEFFICIENT_FOR_THE_BOTTOM" : "COEFFICIENT DE FROTTEMENT POUR LE FOND", - "LAW_OF_FRICTION_ON_LATERAL_BOUNDARIES" : "LOI DE FROTTEMENT SUR LES PAROIS LATERALES", - "FRICTION_COEFFICIENT_FOR_LATERAL_SOLID_BOUNDARIES" : "COEFFICIENT DE FROTTEMENT POUR LES PAROIS LATERALES", - "CORIOLIS" : "CORIOLIS", - "CORIOLIS_COEFFICIENT" : "COEFFICIENT DE CORIOLIS", - "WIND" : "VENT", - "OPTION_FOR_WIND" : "OPTION DU VENT", - "WIND_VELOCITY_ALONG_X" : "VITESSE DU VENT SUIVANT X", - "WIND_VELOCITY_ALONG_Y" : "VITESSE DU VENT SUIVANT Y", - "COEFFICIENT_OF_WIND_INFLUENCE" : "COEFFICIENT D'INFLUENCE DU VENT", - "COEFFICIENT_OF_WIND_INFLUENCE_VARYING_WITH_WIND_SPEED" : "COEFFICIENT D'INFLUENCE DU VENT DEPENDANT DE LA VITESSE DU VENT", - "THRESHOLD_DEPTH_FOR_WIND" : "PROFONDEUR LIMITE POUR LE VENT", - "AIR_PRESSURE" : "PRESSION ATMOSPHERIQUE", - "VALUE_OF_ATMOSPHERIC_PRESSURE" : "VALEUR DE LA PRESSION ATMOSPHERIQUE", - "RAIN_OR_EVAPORATION" : "PLUIE OU EVAPORATION", - "RAIN_OR_EVAPORATION_IN_MM_PER_DAY" : "PLUIE OU EVAPORATION EN MM PAR JOUR", - "ASCII_ATMOSPHERIC_DATA_FILE" : "FICHIER ASCII DE DONNEES ATMOSPHERIQUES", - "BINARY_ATMOSPHERIC_DATA_FILE" : "FICHIER BINAIRE DE DONNEES ATMOSPHERIQUES", - "BINARY_ATMOSPHERIC_DATA_FILE_FORMAT" : "FORMAT DU FICHIER BINAIRE DE DONNEES ATMOSPHERIQUES", - "SOURCES_FILE" : "FICHIER DES SOURCES", - "GLOBAL_NUMBERS_OF_SOURCE_NODES" : "NUMEROS GLOBAUX DES NOEUDS DES SOURCES", - "TYPE_OF_SOURCES" : "TYPE DES SOURCES", - "ABSCISSAE_OF_SOURCES" : "ABSCISSES DES SOURCES", - "ORDINATES_OF_SOURCES" : "ORDONNEES DES SOURCES", - "ELEVATIONS_OF_SOURCES" : "COTES DES SOURCES", - "WATER_DISCHARGE_OF_SOURCES" : "DEBITS DES SOURCES", - "VELOCITIES_OF_THE_SOURCES_ALONG_X" : "VITESSES DES SOURCES SELON X", - "VELOCITIES_OF_THE_SOURCES_ALONG_Y" : "VITESSES DES SOURCES SELON Y", - "VELOCITIES_OF_THE_SOURCES_ALONG_Z" : "VITESSES DES SOURCES SELON Z", - "WAVE_DRIVEN_CURRENTS" : "COURANTS DE HOULE", - "RECORD_NUMBER_IN_WAVE_FILE" : "NUMERO DE L'ENREGISTREMENT DANS LE FICHIER DE HOULE", - "PRESCRIBED_ELEVATIONS" : "COTES IMPOSEES", - "PRESCRIBED_FLOWRATES" : "DEBITS IMPOSES", - "PRESCRIBED_VELOCITIES" : "VITESSES IMPOSEES", - "LIQUID_BOUNDARIES_FILE" : "FICHIER DES FRONTIERES LIQUIDES", - "VELOCITY_PROFILES" : "PROFILS DE VITESSE", - "VELOCITY_VERTICAL_PROFILES" : "PROFILS DE VITESSE SUR LA VERTICALE", - "STAGE_DISCHARGE_CURVES" : "COURBES DE TARAGE", - "STAGE_DISCHARGE_CURVES_FILE" : "FICHIER DES COURBES DE TARAGE", - "OPTION_FOR_LIQUID_BOUNDARIES" : "OPTION POUR LES FRONTIERES LIQUIDES", - "TURBULENCE_REGIME_FOR_THE_BOTTOM" : "REGIME DE TURBULENCE POUR LE FOND", - "TURBULENCE_REGIME_FOR_LATERAL_SOLID_BOUNDARIES" : "REGIME DE TURBULENCE POUR LES PAROIS LATERALES", - "BOUNDARY_CONDITION_ON_THE_BOTTOM" : "CONDITION A LA LIMITE AU FOND", - "VELOCITY_PROJECTED_ON_SOLID_LATERAL_BOUNDARIES" : "VITESSE PROJETEE SUR LES PAROIS LATERALES SOLIDES", - "VELOCITY_PROJECTED_ON_BOTTOM" : "VITESSE PROJETEE SUR LE FOND", - "OPEN_BOUNDARY_CONDITIONS_ON_THE_BED" : "CONDITIONS OUVERTES SUR LE FOND", - "PRESCRIBED_FLOWRATES_ON_THE_BED" : "DEBITS IMPOSES SUR LE FOND", - "INITIAL_CONDITIONS" : "CONDITIONS INITIALES", - "INITIAL_ELEVATION" : "COTE INITIALE", - "INITIAL_DEPTH" : "HAUTEUR INITIALE", - "MATRIX_STORAGE" : "STOCKAGE DES MATRICES", - "MASS_LUMPING_FOR_DEPTH" : "MASS-LUMPING POUR LA HAUTEUR", - "HYDROSTATIC_INCONSISTENCY_FILTER" : "FILTRE LES INCONSISTANCES HYDROSTATIQUES", - "ELEMENT" : "ELEMENT", - "SOLVER_FOR_PROPAGATION" : "SOLVEUR POUR LA PROPAGATION", - "ACCURACY_FOR_PROPAGATION" : "PRECISION POUR LA PROPAGATION", - "MAXIMUM_NUMBER_OF_ITERATIONS_FOR_PROPAGATION" : "MAXIMUM D'ITERATIONS POUR LA PROPAGATION", - "PRECONDITIONING_FOR_PROPAGATION" : "PRECONDITIONNEMENT POUR LA PROPAGATION", - "OPTION_OF_SOLVER_FOR_PROPAGATION" : "OPTION DU SOLVEUR POUR LA PROPAGATION", - "INITIAL_GUESS_FOR_DEPTH" : "ORDRE DU TIR INITIAL POUR LA HAUTEUR", - "LINEARIZED_PROPAGATION" : "PROPAGATION LINEARISEE", - "MEAN_DEPTH_FOR_LINEARIZATION" : "PROFONDEUR MOYENNE POUR LA LINEARISATION", - "SCHEME_FOR_ADVECTION_OF_DEPTH" : "SCHEMA POUR LA CONVECTION DE LA HAUTEUR", - "SCHEME_FOR_ADVECTION_OF_VELOCITIES" : "SCHEMA POUR LA CONVECTION DES VITESSES", - "FREE_SURFACE_GRADIENT_COMPATIBILITY" : "COMPATIBILITE DU GRADIENT DE SURFACE LIBRE", - "BYPASS_VOID_VOLUMES" : "CONTOURNEMENT DES VOLUMES NULS", - "MASS_LUMPING_FOR_VELOCITIES" : "MASS-LUMPING POUR LES VITESSES", - "SCHEME_OPTION_FOR_ADVECTION_OF_VELOCITIES" : "OPTION DU SCHEMA POUR LA CONVECTION DES VITESSES", - "OPTION_FOR_CHARACTERISTICS" : "OPTION POUR LES CARACTERISTIQUES", - "NUMBER_OF_GAUSS_POINTS_FOR_WEAK_CHARACTERISTICS" : "NOMBRE DE POINTS DE GAUSS POUR LES CARACTERISTIQUES FAIBLES", - "MASS_LUMPING_FOR_WEAK_CHARACTERISTICS" : "MASS-LUMPING POUR LES CARACTERISTIQUES FAIBLES", - "SCHEME_FOR_DIFFUSION_OF_VELOCITIES" : "SCHEMA POUR LA DIFFUSION DES VITESSES", - "SOLVER_FOR_DIFFUSION_OF_VELOCITIES" : "SOLVEUR POUR LA DIFFUSION DES VITESSES", - "ACCURACY_FOR_DIFFUSION_OF_VELOCITIES" : "PRECISION POUR LA DIFFUSION DES VITESSES", - "MAXIMUM_NUMBER_OF_ITERATIONS_FOR_DIFFUSION_OF_VELOCITIES" : "MAXIMUM D'ITERATIONS POUR LA DIFFUSION DES VITESSES", - "PRECONDITIONING_FOR_DIFFUSION_OF_VELOCITIES" : "PRECONDITIONNEMENT POUR LA DIFFUSION DES VITESSES", - "OPTION_OF_SOLVER_FOR_DIFFUSION_OF_VELOCITIES" : "OPTION DU SOLVEUR POUR LA DIFFUSION DES VITESSES", - "IMPLICITATION_FOR_DIFFUSION" : "IMPLICITATION POUR LA DIFFUSION", - "SOLVER_FOR_PPE" : "SOLVEUR POUR PPE", - "ACCURACY_FOR_PPE" : "PRECISION POUR PPE", - "MAXIMUM_NUMBER_OF_ITERATIONS_FOR_PPE" : "MAXIMUM D'ITERATIONS POUR PPE", - "PRECONDITIONING_FOR_PPE" : "PRECONDITIONNEMENT POUR PPE", - "OPTION_OF_SOLVER_FOR_PPE" : "OPTION DU SOLVEUR POUR PPE", - "DYNAMIC_PRESSURE_IN_WAVE_EQUATION" : "PRESSION DYNAMIQUE DANS L'EQUATION D'ONDE", - "DYNAMIC_BOUNDARY_CONDITION" : "CONDITION LIMITE DYNAMIQUE", - "CONTINUITY_CORRECTION_ON_OPEN_BOUNDARIES" : "CORRECTION DE CONTINUITE SUR FRONTIERES OUVERTES", - "SOLVER_FOR_VERTICAL_VELOCITY" : "SOLVEUR POUR LA VITESSE VERTICALE", - "ACCURACY_FOR_VERTICAL_VELOCITY" : "PRECISION POUR LA VITESSE VERTICALE", - "MAXIMUM_NUMBER_OF_ITERATIONS_FOR_VERTICAL_VELOCITY" : "MAXIMUM D'ITERATIONS POUR LA VITESSE VERTICALE", - "PRECONDITIONING_FOR_VERTICAL_VELOCITY" : "PRECONDITIONNEMENT POUR LA VITESSE VERTICALE", - "IMPLICITATION_FOR_DEPTH" : "IMPLICITATION POUR LA HAUTEUR", - "IMPLICITATION_FOR_VELOCITIES" : "IMPLICITATION POUR LES VITESSES", - "TIDAL_FLATS" : "BANCS DECOUVRANTS", - "OPTION_FOR_THE_TREATMENT_OF_TIDAL_FLATS" : "OPTION DE TRAITEMENT DES BANCS DECOUVRANTS", - "TREATMENT_OF_NEGATIVE_DEPTHS" : "TRAITEMENT DES HAUTEURS NEGATIVES", - "TREATMENT_ON_TIDAL_FLATS_FOR_VELOCITIES" : "TRAITEMENT SUR LES BANCS DECOUVRANTS POUR LES VITESSES", - "THRESHOLD_FOR_VISCOSITY_CORRECTION_ON_TIDAL_FLATS" : "SEUIL POUR CORRECTION DE VISCOSITE SUR BANCS DECOUVRANTS", - "MINIMAL_VALUE_FOR_DEPTH" : "VALEUR MINIMALE POUR LA HAUTEUR", - "BINARY_DATABASE_1_FOR_TIDE" : "BASE BINAIRE 1 DE DONNEES DE MAREE", - "BINARY_DATABASE_2_FOR_TIDE" : "BASE BINAIRE 2 DE DONNEES DE MAREE", - "GEOGRAPHIC_SYSTEM" : "SYSTEME GEOGRAPHIQUE", - "ZONE_NUMBER_IN_GEOGRAPHIC_SYSTEM" : "NUMERO DE FUSEAU OU PROJECTION DANS LE SYSTEME GEOGRAPHIQUE", - "LAMBERT_93_CONVERSION_FILE" : "FICHIER DE CONVERSION LAMBERT 93", - "COEFFICIENT_TO_CALIBRATE_SEA_LEVEL" : "COEFFICIENT DE CALAGE DU NIVEAU DE MER", - "GLOBAL_NUMBER_OF_THE_POINT_TO_CALIBRATE_HIGH_WATER" : "NUMERO GLOBAL DU POINT POUR CALER LA PLEINE MER", - "MINOR_CONSTITUENTS_INFERENCE" : "INTERPOLATION DE COMPOSANTES MINEURES", - "TIDE_GENERATING_FORCE" : "FORCE GENERATRICE DE LA MAREE", - "OPTION_FOR_TIDAL_BOUNDARY_CONDITIONS" : "OPTION POUR LES CONDITIONS AUX LIMITES DE MAREE", - "TIDAL_DATA_BASE" : "BASE DE DONNEES DE MAREE", - "HARMONIC_CONSTANTS_FILE" : "FICHIER DES CONSTANTES HARMONIQUES", - "TIDAL_MODEL_FILE" : "FICHIER DU MODELE DE MAREE", - "TIDAL_MODEL_FILE_FORMAT" : "FORMAT DU FICHIER DU MODELE DE MAREE", - "ASCII_DATABASE_FOR_TIDE" : "BASE ASCII DE DONNEES DE MAREE", - "COEFFICIENT_TO_CALIBRATE_TIDAL_RANGE" : "COEFFICIENT DE CALAGE DU MARNAGE", - "COEFFICIENT_TO_CALIBRATE_TIDAL_VELOCITIES" : "COEFFICIENT DE CALAGE DES VITESSES DE COURANT", - "LOCAL_NUMBER_OF_THE_POINT_TO_CALIBRATE_HIGH_WATER" : "NUMERO LOCAL DU POINT POUR CALER LA PLEINE MER", - "NUMBER_OF_DROGUES" : "NOMBRE DE FLOTTEURS", - "DROGUES_FILE" : "FICHIER DES FLOTTEURS", - "PRINTOUT_PERIOD_FOR_DROGUES" : "PERIODE POUR LES SORTIES DE FLOTTEURS", - "OIL_SPILL_MODEL" : "MODELE DE NAPPES D'HYDROCARBURES", - "OIL_SPILL_STEERING_FILE" : "FICHIER DE COMMANDES HYDROCARBURES", - "NUMBER_OF_CULVERTS" : "NOMBRE DE BUSES", - "CULVERTS_DATA_FILE" : "FICHIER DE DONNEES DES BUSES", - "OPTION_FOR_CULVERTS" : "OPTION POUR LES BUSES", - "HORIZONTAL_TURBULENCE_MODEL" : "MODELE DE TURBULENCE HORIZONTAL", - "VERTICAL_TURBULENCE_MODEL" : "MODELE DE TURBULENCE VERTICAL", - "COEFFICIENT_FOR_HORIZONTAL_DIFFUSION_OF_VELOCITIES" : "COEFFICIENT DE DIFFUSION HORIZONTAL DES VITESSES", - "COEFFICIENT_FOR_VERTICAL_DIFFUSION_OF_VELOCITIES" : "COEFFICIENT DE DIFFUSION VERTICAL DES VITESSES", - "MIXING_LENGTH_MODEL" : "MODELE DE LONGUEUR DE MELANGE", - "DAMPING_FUNCTION" : "FONCTION D'AMORTISSEMENT", - "PRANDTL_NUMBER" : "NOMBRE DE PRANDTL", - "KARMAN_CONSTANT" : "CONSTANTE DE KARMAN", - "FICTITIOUS_BED_LEVEL" : "HAUTEUR DU LIT FICTIF", - "OPTION_FOR_THE_BOUNDARY_CONDITIONS_OF_K_EPSILON" : "OPTION POUR LES CONDITIONS AUX LIMITES DU K-EPSILON", - "VERTICAL_VELOCITY_DERIVATIVES" : "DERIVEES VERTICALES DES VITESSES", - "SCHEME_FOR_ADVECTION_OF_K_EPSILON" : "SCHEMA POUR LA CONVECTION DU K-EPSILON", - "SCHEME_OPTION_FOR_ADVECTION_OF_K_EPSILON" : "OPTION DU SCHEMA POUR LA CONVECTION DU K-EPSILON", - "SCHEME_FOR_DIFFUSION_OF_K_EPSILON" : "SCHEMA POUR LA DIFFUSION DU K-EPSILON", - "SOLVER_FOR_DIFFUSION_OF_K_EPSILON" : "SOLVEUR POUR LA DIFFUSION DU K-EPSILON", - "ACCURACY_FOR_DIFFUSION_OF_K_EPSILON" : "PRECISION POUR LA DIFFUSION DU K-EPSILON", - "MAXIMUM_NUMBER_OF_ITERATIONS_FOR_DIFFUSION_OF_K_EPSILON" : "MAXIMUM D'ITERATIONS POUR LA DIFFUSION DU K-EPSILON", - "PRECONDITIONING_FOR_DIFFUSION_OF_K_EPSILON" : "PRECONDITIONNEMENT POUR LA DIFFUSION DU K-EPSILON", - "OPTION_OF_SOLVER_FOR_DIFFUSION_OF_K_EPSILON" : "OPTION DU SOLVEUR POUR LA DIFFUSION DU K-EPSILON", - "TREATMENT_ON_TIDAL_FLATS_FOR_K_EPSILON" : "TRAITEMENT SUR LES BANCS DECOUVRANTS POUR LE K-EPSILON", - "NUMBER_OF_TRACERS" : "NOMBRE DE TRACEURS", - "NAMES_OF_TRACERS" : "NOMS DES TRACEURS", - "VALUES_OF_TRACERS_IN_THE_RAIN" : "VALEURS DES TRACEURS DANS LA PLUIE", - "VALUE_OF_THE_TRACERS_AT_THE_SOURCES" : "VALEURS DES TRACEURS DES SOURCES", - "DENSITY_LAW" : "LOI DE DENSITE", - "STANDARD_VALUES_FOR_TRACERS" : "VALEURS DE REFERENCE DES TRACEURS", - "BETA_EXPANSION_COEFFICIENT_FOR_TRACERS" : "COEFFICIENT DE DILATATION BETA POUR LES TRACEURS", - "PRESCRIBED_TRACERS_VALUES" : "VALEURS IMPOSEES DES TRACEURS", - "TRACERS_VERTICAL_PROFILES" : "PROFILS DES TRACEURS SUR LA VERTICALE", - "INITIAL_VALUES_OF_TRACERS" : "VALEURS INITIALES DES TRACEURS", - "SCHEME_FOR_ADVECTION_OF_TRACERS" : "SCHEMA POUR LA CONVECTION DES TRACEURS", - "SCHEME_OPTION_FOR_ADVECTION_OF_TRACERS" : "OPTION DU SCHEMA POUR LA CONVECTION DES TRACEURS", - "SCHEME_FOR_DIFFUSION_OF_TRACERS" : "SCHEMA POUR LA DIFFUSION DES TRACEURS", - "SOLVER_FOR_DIFFUSION_OF_TRACERS" : "SOLVEUR POUR LA DIFFUSION DES TRACEURS", - "ACCURACY_FOR_DIFFUSION_OF_TRACERS" : "PRECISION POUR LA DIFFUSION DES TRACEURS", - "MAXIMUM_NUMBER_OF_ITERATIONS_FOR_DIFFUSION_OF_TRACERS" : "MAXIMUM D'ITERATIONS POUR LA DIFFUSION DES TRACEURS", - "PRECONDITIONING_FOR_DIFFUSION_OF_TRACERS" : "PRECONDITIONNEMENT POUR LA DIFFUSION DES TRACEURS", - "OPTION_OF_SOLVER_FOR_DIFFUSION_OF_TRACERS" : "OPTION DU SOLVEUR POUR LA DIFFUSION DES TRACEURS", - "TREATMENT_ON_TIDAL_FLATS_FOR_TRACERS" : "TRAITEMENT SUR LES BANCS DECOUVRANTS POUR LES TRACEURS", - "COEFFICIENT_FOR_HORIZONTAL_DIFFUSION_OF_TRACERS" : "COEFFICIENT DE DIFFUSION HORIZONTAL DES TRACEURS", - "COEFFICIENT_FOR_VERTICAL_DIFFUSION_OF_TRACERS" : "COEFFICIENT DE DIFFUSION VERTICAL DES TRACEURS", - "SEDIMENT" : "SEDIMENT", - "DENSITY_OF_THE_SEDIMENT" : "MASSE VOLUMIQUE DU SEDIMENT", - "TIME_STEP_FOR_CONSOLIDATION" : "PAS DE TEMPS DE LA CONSOLIDATION", - "COHESIVE_SEDIMENT" : "SEDIMENT COHESIF", - "SHIELDS_PARAMETER" : "PARAMETRE DE SHIELDS", - "MIXED_SEDIMENT" : "SEDIMENT MIXTE", - "NUMBER_OF_SEDIMENT_BED_LAYERS" : "NOMBRE DE COUCHES DU LIT COHESIF", - "READ_CRITICAL_BED_SHEAR_STRESS_PER_LAYER" : "LECTURE CONTRAINTE CRITIQUE POUR CHAQUE COUCHE", - "SEDIMENTOLOGICAL_RESULT_FILE" : "FICHIER DES RESULTATS SEDIMENTOLOGIQUES", - "SEDIMENTOLOGICAL_RESULT_FILE_BINARY" : "BINAIRE DU FICHIER DES RESULTATS SEDIMENTOLOGIQUES", - "PREVIOUS_COMPUTATION_SEDIMENTOLOGICAL_FILE" : "FICHIER SEDIMENTOLOGIQUE DU CALCUL PRECEDENT", - "MEAN_DIAMETER_OF_THE_SEDIMENT" : "DIAMETRE MOYEN DES GRAINS", - "RATIO_BETWEEN_SKIN_FRICTION_AND_MEAN_DIAMETER" : "RATIO ENTRE LA RUGOSITE DE PEAU ET LE DIAMETRE MOYEN", - "SKIN_FRICTION_CORRECTION" : "CORRECTION FROTTEMENT DE PEAU", - "INITIAL_PERCENTAGE_OF_NON_COHESIVE_SEDIMENT" : "POURCENTAGE INITIAL DE SEDIMENT NON COHESIF", - "MUD_CONCENTRATIONS_PER_LAYER" : "CONCENTRATIONS DES COUCHES DE VASE", - "CRITICAL_EROSION_SHEAR_STRESS_OF_THE_MUD_LAYERS" : "CONTRAINTE CRITIQUE D'EROSION DES COUCHES DE VASE", - "INITIAL_THICKNESS_OF_SEDIMENT_LAYERS" : "EPAISSEURS INITIALES DES COUCHES", - "SOLVER_FOR_DIFFUSION_OF_THE_SEDIMENT" : "SOLVEUR POUR LA DIFFUSION DU SEDIMENT", - "ACCURACY_FOR_DIFFUSION_OF_SEDIMENT" : "PRECISION POUR LA DIFFUSION DU SEDIMENT", - "MAXIMUM_NUMBER_OF_ITERATIONS_FOR_DIFFUSION_OF_SEDIMENT" : "MAXIMUM D'ITERATIONS POUR LA DIFFUSION DU SEDIMENT", - "PRECONDITIONING_FOR_DIFFUSION_OF_THE_SEDIMENT" : "PRECONDITIONNEMENT POUR LA DIFFUSION DU SEDIMENT", - "OPTION_OF_SOLVER_FOR_DIFFUSION_OF_THE_SEDIMENT" : "OPTION DU SOLVEUR POUR LA DIFFUSION DU SEDIMENT", - "THRESHOLD_FOR_SEDIMENT_FLUX_CORRECTION_ON_TIDAL_FLATS" : "SEUIL LIMITE POUR EROSION SUR BANCS DECOUVRANTS", - "CRITICAL_SHEAR_STRESS_FOR_DEPOSITION" : "CONTRAINTE CRITIQUE DE DEPOT", - "NON_COHESIVE_BED_POROSITY" : "POROSITE DU LIT NON COHESIF", - "EROSION_COEFFICIENT" : "COEFFICIENT D'EROSION", - "CONSTANT_SEDIMENT_SETTLING_VELOCITY" : "VITESSE DE CHUTE CONSTANTE", - "SETTLING_VELOCITY_OF_SANDS" : "VITESSE DE CHUTE DES SABLES", - "ADVECTION_DIFFUSION_SCHEME_WITH_SETTLING_VELOCITY" : "SCHEMA DE CONVECTION DIFFUSION AVEC VITESSE DE CHUTE", - "HINDERED_SETTLING" : "VITESSE DE CHUTE ENTRAVEE", - "WEAK_SOIL_CONCENTRATION_FOR_MUD" : "CONCENTRATION LIMITE FLUIDE-SOLIDE", - "THRESHOLD_CONCENTRATION_FOR_HINDERED_SETTLING" : "CONCENTRATION LIMITE POUR VITESSE DE CHUTE ENTRAVEE", - "HINDERED_SETTLING_FORMULA" : "FORMULE POUR VITESSE DE CHUTE ENTRAVEE", - "REFERENCE_CONCENTRATION_FORMULA" : "FORMULE POUR LA CONCENTRATION DE REFERENCE", - "FLOCCULATION" : "FLOCULATION", - "FLOCCULATION_FORMULA" : "FORMULE POUR FLOCULATION", - "FLOCCULATION_COEFFICIENT" : "COEFFICIENT TRADUISANT LA FORMATION DES FLOCS", - "COEFFICIENT_RELATIVE_TO_FLOC_DESTRUCTION" : "COEFFICIENT TRADUISANT LA DESTRUCTION DES FLOCS", - "BED_LAYERS_THICKNESS" : "EPAISSEUR DES COUCHES DU FOND VASEUX", - "MAXIMUM_CONCENTRATION_OF_THE_CONSOLIDATED_MUD" : "CONCENTRATION MAXIMUM DE LA VASE TASSEE", - "RESIDENCE_TIME_FOR_MUD" : "TEMPS DE SEJOUR DE LA VASE", - "CONSOLIDATION" : "TASSEMENT DE LA VASE", - "CONSOLIDATION_MODEL" : "OPTION DU MODELE DE TASSEMENT", - "COUPLING_WITH" : "COUPLAGE AVEC", - "SISYPHE_STEERING_FILE" : "FICHIER DES PARAMETRES DE SISYPHE", - "COUPLING_PERIOD_FOR_SISYPHE" : "PERIODE DE COUPLAGE POUR SISYPHE", - "TOMAWAC_STEERING_FILE" : "FICHIER DES PARAMETRES DE TOMAWAC", - "COUPLING_PERIOD_FOR_TOMAWAC" : "PERIODE DE COUPLAGE POUR TOMAWAC", - "WATER_QUALITY_PROCESS" : "PROCESSUS DE QUALITE D'EAU", - "WAQTEL_STEERING_FILE" : "FICHIER DES PARAMETRES DE WAQTEL", - "DELWAQ_STEERING_FILE" : "FICHIER DE COMMANDE DELWAQ", - "DELWAQ_PRINTOUT_PERIOD" : "PERIODE DE SORTIE POUR DELWAQ", - "EXCHANGES_BETWEEN_NODES_DELWAQ_FILE" : "FICHIER DELWAQ DES ECHANGES ENTRE NOEUDS", - "NODES_DISTANCES_DELWAQ_FILE" : "FICHIER DELWAQ DES DISTANCES ENTRE NOEUDS", - "BOTTOM_SURFACES_DELWAQ_FILE" : "FICHIER DELWAQ DES SURFACES DU FOND", - "VOLUMES_DELWAQ_FILE" : "FICHIER DELWAQ DES VOLUMES", - "EXCHANGE_AREAS_DELWAQ_FILE" : "FICHIER DELWAQ DES SURFACES DE FLUX", - "VERTICAL_FLUXES_DELWAQ_FILE" : "FICHIER DELWAQ DES FLUX VERTICAUX", - "VELOCITY_DELWAQ_FILE" : "FICHIER DELWAQ DE LA VITESSE", - "DIFFUSIVITY_DELWAQ_FILE" : "FICHIER DELWAQ DE LA DIFFUSION", - "TEMPERATURE_DELWAQ_FILE" : "FICHIER DELWAQ DE LA TEMPERATURE", - "SALINITY_DELWAQ_FILE" : "FICHIER DELWAQ DE LA SALINITE", - "VELOCITY_FOR_DELWAQ" : "VITESSE POUR DELWAQ", - "DIFFUSION_FOR_DELWAQ" : "DIFFUSION POUR DELWAQ", - "TEMPERATURE_FOR_DELWAQ" : "TEMPERATURE POUR DELWAQ", - "SALINITY_FOR_DELWAQ" : "SALINITE POUR DELWAQ", - "AD_NUMBER_OF_DERIVATIVES" : "AD NOMBRE DES DERIVEES", - "AD_NAMES_OF_DERIVATIVES" : "AD NOMS DES DERIVEES", - "AD_NUMBER_OF_DIRECTIONS" : "AD NOMBRE DE DIRECTIONS", - "AD_SYMBOLIC_LINEAR_SOLVER" : "AD SOLVEUR LINEAIRE SYMBOLIQUE", - "AD_LINEAR_SOLVER_RESET_DERIVATIVES" : "AD REMISE A ZERO DES DERIVEES DU SOLVEUR LINEAIRE", - "AD_LINEAR_SOLVER_DERIVATIVE_CONVERGENCE" : "AD CONVERGENCE DES DERIVEES POUR LE SOLVEUR LINEAIRE", - "PARTITIONING_TOOL" : "PARTITIONNEUR", - "STEERING_FILE" : "FICHIER DES PARAMETRES", - "RELEASE" : "NUMERO DE VERSION", - "DICTIONARY" : "DICTIONNAIRE", - "LIST_OF_FILES" : "LISTE DES FICHIERS", - "DESCRIPTION_OF_LIBRARIES" : "DESCRIPTION DES LIBRAIRIES", - "DEFAULT_EXECUTABLE" : "EXECUTABLE PAR DEFAUT", - "DEFAULT_PARALLEL_EXECUTABLE" : "EXECUTABLE PARALLELE PAR DEFAUT", -} -dicoCasFrToCata = { - "TITRE" : "TITLE", - "PROCESSEURS PARALLELES" : "PARALLEL_PROCESSORS", - "VERIFICATION DU MAILLAGE" : "CHECKING_THE_MESH", - "NOMBRE MAXIMUM DE FRONTIERES" : "MAXIMUM_NUMBER_OF_BOUNDARIES", - "NOMBRE MAXIMUM DE TRACEURS" : "MAXIMUM_NUMBER_OF_TRACERS", - "NOMBRE MAXIMUM DE SOURCES" : "MAXIMUM_NUMBER_OF_SOURCES", - "NOMBRE MAXIMUM DE FRONTIERES SUR LE FOND" : "MAXIMUM_NUMBER_OF_BOUNDARIES_ON_THE_BED", - "LONGUEUR DU VECTEUR" : "VECTOR_LENGTH", - "FICHIER DE GEOMETRIE" : "GEOMETRY_FILE", - "FORMAT DU FICHIER DE GEOMETRIE" : "GEOMETRY_FILE_FORMAT", - "FICHIER DES CONDITIONS AUX LIMITES" : "BOUNDARY_CONDITIONS_FILE", - "FICHIER BINAIRE DE DONNEES DE FRONTIERE" : "BINARY_BOUNDARY_DATA_FILE", - "FORMAT DU FICHIER BINAIRE DE DONNEES DE FRONTIERE" : "BINARY_BOUNDARY_DATA_FILE_FORMAT", - "FICHIER FORTRAN" : "FORTRAN_FILE", - "FICHIER DES FONDS" : "BOTTOM_TOPOGRAPHY_FILE", - "NOMBRE DE LISSAGES DU FOND" : "NUMBER_OF_BOTTOM_SMOOTHINGS", - "FICHIER DE DONNEES FORMATE 1" : "FORMATTED_DATA_FILE_1", - "FICHIER DE DONNEES FORMATE 2" : "FORMATTED_DATA_FILE_2", - "FICHIER DE DONNEES BINAIRE 1" : "BINARY_DATA_FILE_1", - "FORMAT DU FICHIER DE DONNEES BINAIRE 1" : "BINARY_DATA_FILE_1_FORMAT", - "FICHIER DE DONNEES BINAIRE 2" : "BINARY_DATA_FILE_2", - "VALIDATION" : "VALIDATION", - "FICHIER DE REFERENCE" : "REFERENCE_FILE", - "FORMAT DU FICHIER DE REFERENCE" : "REFERENCE_FILE_FORMAT", - "FICHIER DES RESULTATS 3D" : "RD_RESULT_FILE", - "FORMAT DU FICHIER DES RESULTATS 3D" : "RD_RESULT_FILE_FORMAT", - "FICHIER DES RESULTATS 2D" : "ED_RESULT_FILE", - "FORMAT DU FICHIER DES RESULTATS 2D" : "ED_RESULT_FILE_FORMAT", - "FICHIER RESULTAT EN LONGITUDE-LATITUDE" : "RESULT_FILE_IN_LONGITUDE_LATITUDE", - "VARIABLES POUR LES SORTIES GRAPHIQUES 3D" : "VARIABLES_FOR_3D_GRAPHIC_PRINTOUTS", - "VARIABLES POUR LES SORTIES GRAPHIQUES 2D" : "VARIABLES_FOR_2D_GRAPHIC_PRINTOUTS", - "PERIODE POUR LES SORTIES GRAPHIQUES" : "GRAPHIC_PRINTOUT_PERIOD", - "NUMERO DU PREMIER PAS DE TEMPS POUR LES SORTIES GRAPHIQUES" : "NUMBER_OF_FIRST_TIME_STEP_FOR_GRAPHIC_PRINTOUTS", - "BINAIRE DU FICHIER DES RESULTATS 3D" : "RD_RESULT_FILE_BINARY", - "BINAIRE DU FICHIER DES RESULTATS 2D" : "ED_RESULT_FILE_BINARY", - "NOMBRE DE TABLEAUX PRIVES" : "NUMBER_OF_PRIVATE_ARRAYS", - "NOMBRE DE TABLEAUX PRIVES 2D" : "NUMBER_OF_2D_PRIVATE_ARRAYS", - "NOMS DES VARIABLES PRIVEES 2D" : "NAMES_OF_2D_PRIVATE_VARIABLES", - "FICHIER DE RESULTATS FORMATE" : "FORMATTED_RESULTS_FILE", - "FICHIER DE RESULTATS BINAIRE" : "BINARY_RESULTS_FILE", - "SORTIE LISTING" : "LISTING_PRINTOUT", - "BILAN DE MASSE" : "MASS_BALANCE", - "INFORMATION SUR LE BILAN DE MASSE A CHAQUE SORTIE LISTING" : "INFORMATION_ABOUT_MASS_BALANCE_FOR_EACH_LISTING_PRINTOUT", - "PERIODE POUR LES SORTIES LISTING" : "LISTING_PRINTOUT_PERIOD", - "NUMERO DU PREMIER PAS DE TEMPS POUR LES SORTIES LISTING" : "NUMBER_OF_FIRST_TIME_STEP_FOR_LISTING_PRINTOUTS", - "SUITE DE CALCUL" : "COMPUTATION_CONTINUED", - "FICHIER DU CALCUL PRECEDENT" : "PREVIOUS_COMPUTATION_FILE", - "FORMAT DU FICHIER DU CALCUL PRECEDENT" : "PREVIOUS_COMPUTATION_FILE_FORMAT", - "ENREGISTREMENT POUR SUITE DE CALCUL" : "RECORD_NUMBER_FOR_RESTART", - "REMISE A ZERO DU TEMPS" : "INITIAL_TIME_SET_TO_ZERO", - "MODE SUITE" : "RESTART_MODE", - "FICHIER POUR SUITE" : "RESTART_FILE", - "FORMAT DU FICHIER POUR SUITE" : "RESTART_FILE_FORMAT", - "SUITE 2D" : "ED_CONTINUATION", - "FICHIER POUR SUITE 2D" : "FILE_FOR_2D_CONTINUATION", - "FORMAT DU FICHIER POUR SUITE 2D" : "FILE_FOR_2D_CONTINUATION_FORMAT", - "DEBUGGER" : "DEBUGGER", - "PAS DE TEMPS" : "TIME_STEP", - "NOMBRE DE PAS DE TEMPS" : "NUMBER_OF_TIME_STEPS", - "DUREE DU CALCUL" : "DURATION", - "DATE DE L'ORIGINE DES TEMPS" : "ORIGINAL_DATE_OF_TIME", - "HEURE DE L'ORIGINE DES TEMPS" : "ORIGINAL_HOUR_OF_TIME", - "COORDONNEES SPHERIQUES" : "SPHERICAL_COORDINATES", - "TYPE DE PROJECTION SPATIALE" : "SPATIAL_PROJECTION_TYPE", - "LATITUDE DU POINT ORIGINE" : "LATITUDE_OF_ORIGIN_POINT", - "LONGITUDE DU POINT ORIGINE" : "LONGITUDE_OF_ORIGIN_POINT", - "NORD" : "NORTH", - "COORDONNEES DE L'ORIGINE" : "ORIGIN_COORDINATES", - "NOMBRE DE PLANS HORIZONTAUX" : "NUMBER_OF_HORIZONTAL_LEVELS", - "TRANSFORMATION DU MAILLAGE" : "MESH_TRANSFORMATION", - "NOMBRE DE SOUS ITERATIONS POUR LES NON LINEARITES" : "NUMBER_OF_SUB_ITERATIONS_FOR_NON_LINEARITIES", - "ZERO" : "ZERO", - "ETAPE DE CONVECTION" : "ADVECTION_STEP", - "TRAITEMENT DES FLUX AUX FRONTIERES" : "TREATMENT_OF_FLUXES_AT_THE_BOUNDARIES", - "OPTION DE SUPG" : "SUPG_OPTION", - "MAXIMUM D'ITERATIONS POUR LES SCHEMAS DE CONVECTION" : "MAXIMUM_NUMBER_OF_ITERATIONS_FOR_ADVECTION_SCHEMES", - "NOMBRE DE SOUS-PAS DES SCHEMAS DISTRIBUTIFS" : "NUMBER_OF_SUB_STEPS_OF_DISTRIBUTIVE_SCHEMES", - "NOMBRE DE CORRECTIONS DES SCHEMAS DISTRIBUTIFS" : "NUMBER_OF_CORRECTIONS_OF_DISTRIBUTIVE_SCHEMES", - "MASS-LUMPING POUR LA DIFFUSION" : "MASS_LUMPING_FOR_DIFFUSION", - "VERSION NON-HYDROSTATIQUE" : "NON_HYDROSTATIC_VERSION", - "ELEMENTS MASQUES PAR L'UTILISATEUR" : "ELEMENTS_MASKED_BY_USER", - "ACCELERATION DE LA PESANTEUR" : "GRAVITY_ACCELERATION", - "MASSE VOLUMIQUE MOYENNE DE L'EAU" : "AVERAGE_WATER_DENSITY", - "LOI DE FROTTEMENT SUR LE FOND" : "LAW_OF_BOTTOM_FRICTION", - "COEFFICIENT DE FROTTEMENT POUR LE FOND" : "FRICTION_COEFFICIENT_FOR_THE_BOTTOM", - "LOI DE FROTTEMENT SUR LES PAROIS LATERALES" : "LAW_OF_FRICTION_ON_LATERAL_BOUNDARIES", - "COEFFICIENT DE FROTTEMENT POUR LES PAROIS LATERALES" : "FRICTION_COEFFICIENT_FOR_LATERAL_SOLID_BOUNDARIES", - "CORIOLIS" : "CORIOLIS", - "COEFFICIENT DE CORIOLIS" : "CORIOLIS_COEFFICIENT", - "VENT" : "WIND", - "OPTION DU VENT" : "OPTION_FOR_WIND", - "VITESSE DU VENT SUIVANT X" : "WIND_VELOCITY_ALONG_X", - "VITESSE DU VENT SUIVANT Y" : "WIND_VELOCITY_ALONG_Y", - "COEFFICIENT D'INFLUENCE DU VENT" : "COEFFICIENT_OF_WIND_INFLUENCE", - "COEFFICIENT D'INFLUENCE DU VENT DEPENDANT DE LA VITESSE DU VENT" : "COEFFICIENT_OF_WIND_INFLUENCE_VARYING_WITH_WIND_SPEED", - "PROFONDEUR LIMITE POUR LE VENT" : "THRESHOLD_DEPTH_FOR_WIND", - "PRESSION ATMOSPHERIQUE" : "AIR_PRESSURE", - "VALEUR DE LA PRESSION ATMOSPHERIQUE" : "VALUE_OF_ATMOSPHERIC_PRESSURE", - "PLUIE OU EVAPORATION" : "RAIN_OR_EVAPORATION", - "PLUIE OU EVAPORATION EN MM PAR JOUR" : "RAIN_OR_EVAPORATION_IN_MM_PER_DAY", - "FICHIER ASCII DE DONNEES ATMOSPHERIQUES" : "ASCII_ATMOSPHERIC_DATA_FILE", - "FICHIER BINAIRE DE DONNEES ATMOSPHERIQUES" : "BINARY_ATMOSPHERIC_DATA_FILE", - "FORMAT DU FICHIER BINAIRE DE DONNEES ATMOSPHERIQUES" : "BINARY_ATMOSPHERIC_DATA_FILE_FORMAT", - "FICHIER DES SOURCES" : "SOURCES_FILE", - "NUMEROS GLOBAUX DES NOEUDS DES SOURCES" : "GLOBAL_NUMBERS_OF_SOURCE_NODES", - "TYPE DES SOURCES" : "TYPE_OF_SOURCES", - "ABSCISSES DES SOURCES" : "ABSCISSAE_OF_SOURCES", - "ORDONNEES DES SOURCES" : "ORDINATES_OF_SOURCES", - "COTES DES SOURCES" : "ELEVATIONS_OF_SOURCES", - "DEBITS DES SOURCES" : "WATER_DISCHARGE_OF_SOURCES", - "VITESSES DES SOURCES SELON X" : "VELOCITIES_OF_THE_SOURCES_ALONG_X", - "VITESSES DES SOURCES SELON Y" : "VELOCITIES_OF_THE_SOURCES_ALONG_Y", - "VITESSES DES SOURCES SELON Z" : "VELOCITIES_OF_THE_SOURCES_ALONG_Z", - "COURANTS DE HOULE" : "WAVE_DRIVEN_CURRENTS", - "NUMERO DE L'ENREGISTREMENT DANS LE FICHIER DE HOULE" : "RECORD_NUMBER_IN_WAVE_FILE", - "COTES IMPOSEES" : "PRESCRIBED_ELEVATIONS", - "DEBITS IMPOSES" : "PRESCRIBED_FLOWRATES", - "VITESSES IMPOSEES" : "PRESCRIBED_VELOCITIES", - "FICHIER DES FRONTIERES LIQUIDES" : "LIQUID_BOUNDARIES_FILE", - "PROFILS DE VITESSE" : "VELOCITY_PROFILES", - "PROFILS DE VITESSE SUR LA VERTICALE" : "VELOCITY_VERTICAL_PROFILES", - "COURBES DE TARAGE" : "STAGE_DISCHARGE_CURVES", - "FICHIER DES COURBES DE TARAGE" : "STAGE_DISCHARGE_CURVES_FILE", - "OPTION POUR LES FRONTIERES LIQUIDES" : "OPTION_FOR_LIQUID_BOUNDARIES", - "REGIME DE TURBULENCE POUR LE FOND" : "TURBULENCE_REGIME_FOR_THE_BOTTOM", - "REGIME DE TURBULENCE POUR LES PAROIS LATERALES" : "TURBULENCE_REGIME_FOR_LATERAL_SOLID_BOUNDARIES", - "CONDITION A LA LIMITE AU FOND" : "BOUNDARY_CONDITION_ON_THE_BOTTOM", - "VITESSE PROJETEE SUR LES PAROIS LATERALES SOLIDES" : "VELOCITY_PROJECTED_ON_SOLID_LATERAL_BOUNDARIES", - "VITESSE PROJETEE SUR LE FOND" : "VELOCITY_PROJECTED_ON_BOTTOM", - "CONDITIONS OUVERTES SUR LE FOND" : "OPEN_BOUNDARY_CONDITIONS_ON_THE_BED", - "DEBITS IMPOSES SUR LE FOND" : "PRESCRIBED_FLOWRATES_ON_THE_BED", - "CONDITIONS INITIALES" : "INITIAL_CONDITIONS", - "COTE INITIALE" : "INITIAL_ELEVATION", - "HAUTEUR INITIALE" : "INITIAL_DEPTH", - "STOCKAGE DES MATRICES" : "MATRIX_STORAGE", - "MASS-LUMPING POUR LA HAUTEUR" : "MASS_LUMPING_FOR_DEPTH", - "FILTRE LES INCONSISTANCES HYDROSTATIQUES" : "HYDROSTATIC_INCONSISTENCY_FILTER", - "ELEMENT" : "ELEMENT", - "SOLVEUR POUR LA PROPAGATION" : "SOLVER_FOR_PROPAGATION", - "PRECISION POUR LA PROPAGATION" : "ACCURACY_FOR_PROPAGATION", - "MAXIMUM D'ITERATIONS POUR LA PROPAGATION" : "MAXIMUM_NUMBER_OF_ITERATIONS_FOR_PROPAGATION", - "PRECONDITIONNEMENT POUR LA PROPAGATION" : "PRECONDITIONING_FOR_PROPAGATION", - "OPTION DU SOLVEUR POUR LA PROPAGATION" : "OPTION_OF_SOLVER_FOR_PROPAGATION", - "ORDRE DU TIR INITIAL POUR LA HAUTEUR" : "INITIAL_GUESS_FOR_DEPTH", - "PROPAGATION LINEARISEE" : "LINEARIZED_PROPAGATION", - "PROFONDEUR MOYENNE POUR LA LINEARISATION" : "MEAN_DEPTH_FOR_LINEARIZATION", - "SCHEMA POUR LA CONVECTION DE LA HAUTEUR" : "SCHEME_FOR_ADVECTION_OF_DEPTH", - "SCHEMA POUR LA CONVECTION DES VITESSES" : "SCHEME_FOR_ADVECTION_OF_VELOCITIES", - "COMPATIBILITE DU GRADIENT DE SURFACE LIBRE" : "FREE_SURFACE_GRADIENT_COMPATIBILITY", - "CONTOURNEMENT DES VOLUMES NULS" : "BYPASS_VOID_VOLUMES", - "MASS-LUMPING POUR LES VITESSES" : "MASS_LUMPING_FOR_VELOCITIES", - "OPTION DU SCHEMA POUR LA CONVECTION DES VITESSES" : "SCHEME_OPTION_FOR_ADVECTION_OF_VELOCITIES", - "OPTION POUR LES CARACTERISTIQUES" : "OPTION_FOR_CHARACTERISTICS", - "NOMBRE DE POINTS DE GAUSS POUR LES CARACTERISTIQUES FAIBLES" : "NUMBER_OF_GAUSS_POINTS_FOR_WEAK_CHARACTERISTICS", - "MASS-LUMPING POUR LES CARACTERISTIQUES FAIBLES" : "MASS_LUMPING_FOR_WEAK_CHARACTERISTICS", - "SCHEMA POUR LA DIFFUSION DES VITESSES" : "SCHEME_FOR_DIFFUSION_OF_VELOCITIES", - "SOLVEUR POUR LA DIFFUSION DES VITESSES" : "SOLVER_FOR_DIFFUSION_OF_VELOCITIES", - "PRECISION POUR LA DIFFUSION DES VITESSES" : "ACCURACY_FOR_DIFFUSION_OF_VELOCITIES", - "MAXIMUM D'ITERATIONS POUR LA DIFFUSION DES VITESSES" : "MAXIMUM_NUMBER_OF_ITERATIONS_FOR_DIFFUSION_OF_VELOCITIES", - "PRECONDITIONNEMENT POUR LA DIFFUSION DES VITESSES" : "PRECONDITIONING_FOR_DIFFUSION_OF_VELOCITIES", - "OPTION DU SOLVEUR POUR LA DIFFUSION DES VITESSES" : "OPTION_OF_SOLVER_FOR_DIFFUSION_OF_VELOCITIES", - "IMPLICITATION POUR LA DIFFUSION" : "IMPLICITATION_FOR_DIFFUSION", - "SOLVEUR POUR PPE" : "SOLVER_FOR_PPE", - "PRECISION POUR PPE" : "ACCURACY_FOR_PPE", - "MAXIMUM D'ITERATIONS POUR PPE" : "MAXIMUM_NUMBER_OF_ITERATIONS_FOR_PPE", - "PRECONDITIONNEMENT POUR PPE" : "PRECONDITIONING_FOR_PPE", - "OPTION DU SOLVEUR POUR PPE" : "OPTION_OF_SOLVER_FOR_PPE", - "PRESSION DYNAMIQUE DANS L'EQUATION D'ONDE" : "DYNAMIC_PRESSURE_IN_WAVE_EQUATION", - "CONDITION LIMITE DYNAMIQUE" : "DYNAMIC_BOUNDARY_CONDITION", - "CORRECTION DE CONTINUITE SUR FRONTIERES OUVERTES" : "CONTINUITY_CORRECTION_ON_OPEN_BOUNDARIES", - "SOLVEUR POUR LA VITESSE VERTICALE" : "SOLVER_FOR_VERTICAL_VELOCITY", - "PRECISION POUR LA VITESSE VERTICALE" : "ACCURACY_FOR_VERTICAL_VELOCITY", - "MAXIMUM D'ITERATIONS POUR LA VITESSE VERTICALE" : "MAXIMUM_NUMBER_OF_ITERATIONS_FOR_VERTICAL_VELOCITY", - "PRECONDITIONNEMENT POUR LA VITESSE VERTICALE" : "PRECONDITIONING_FOR_VERTICAL_VELOCITY", - "IMPLICITATION POUR LA HAUTEUR" : "IMPLICITATION_FOR_DEPTH", - "IMPLICITATION POUR LES VITESSES" : "IMPLICITATION_FOR_VELOCITIES", - "BANCS DECOUVRANTS" : "TIDAL_FLATS", - "OPTION DE TRAITEMENT DES BANCS DECOUVRANTS" : "OPTION_FOR_THE_TREATMENT_OF_TIDAL_FLATS", - "TRAITEMENT DES HAUTEURS NEGATIVES" : "TREATMENT_OF_NEGATIVE_DEPTHS", - "TRAITEMENT SUR LES BANCS DECOUVRANTS POUR LES VITESSES" : "TREATMENT_ON_TIDAL_FLATS_FOR_VELOCITIES", - "SEUIL POUR CORRECTION DE VISCOSITE SUR BANCS DECOUVRANTS" : "THRESHOLD_FOR_VISCOSITY_CORRECTION_ON_TIDAL_FLATS", - "VALEUR MINIMALE POUR LA HAUTEUR" : "MINIMAL_VALUE_FOR_DEPTH", - "BASE BINAIRE 1 DE DONNEES DE MAREE" : "BINARY_DATABASE_1_FOR_TIDE", - "BASE BINAIRE 2 DE DONNEES DE MAREE" : "BINARY_DATABASE_2_FOR_TIDE", - "SYSTEME GEOGRAPHIQUE" : "GEOGRAPHIC_SYSTEM", - "NUMERO DE FUSEAU OU PROJECTION DANS LE SYSTEME GEOGRAPHIQUE" : "ZONE_NUMBER_IN_GEOGRAPHIC_SYSTEM", - "FICHIER DE CONVERSION LAMBERT 93" : "LAMBERT_93_CONVERSION_FILE", - "COEFFICIENT DE CALAGE DU NIVEAU DE MER" : "COEFFICIENT_TO_CALIBRATE_SEA_LEVEL", - "NUMERO GLOBAL DU POINT POUR CALER LA PLEINE MER" : "GLOBAL_NUMBER_OF_THE_POINT_TO_CALIBRATE_HIGH_WATER", - "INTERPOLATION DE COMPOSANTES MINEURES" : "MINOR_CONSTITUENTS_INFERENCE", - "FORCE GENERATRICE DE LA MAREE" : "TIDE_GENERATING_FORCE", - "OPTION POUR LES CONDITIONS AUX LIMITES DE MAREE" : "OPTION_FOR_TIDAL_BOUNDARY_CONDITIONS", - "BASE DE DONNEES DE MAREE" : "TIDAL_DATA_BASE", - "FICHIER DES CONSTANTES HARMONIQUES" : "HARMONIC_CONSTANTS_FILE", - "FICHIER DU MODELE DE MAREE" : "TIDAL_MODEL_FILE", - "FORMAT DU FICHIER DU MODELE DE MAREE" : "TIDAL_MODEL_FILE_FORMAT", - "BASE ASCII DE DONNEES DE MAREE" : "ASCII_DATABASE_FOR_TIDE", - "COEFFICIENT DE CALAGE DU MARNAGE" : "COEFFICIENT_TO_CALIBRATE_TIDAL_RANGE", - "COEFFICIENT DE CALAGE DES VITESSES DE COURANT" : "COEFFICIENT_TO_CALIBRATE_TIDAL_VELOCITIES", - "NUMERO LOCAL DU POINT POUR CALER LA PLEINE MER" : "LOCAL_NUMBER_OF_THE_POINT_TO_CALIBRATE_HIGH_WATER", - "NOMBRE DE FLOTTEURS" : "NUMBER_OF_DROGUES", - "FICHIER DES FLOTTEURS" : "DROGUES_FILE", - "PERIODE POUR LES SORTIES DE FLOTTEURS" : "PRINTOUT_PERIOD_FOR_DROGUES", - "MODELE DE NAPPES D'HYDROCARBURES" : "OIL_SPILL_MODEL", - "FICHIER DE COMMANDES HYDROCARBURES" : "OIL_SPILL_STEERING_FILE", - "NOMBRE DE BUSES" : "NUMBER_OF_CULVERTS", - "FICHIER DE DONNEES DES BUSES" : "CULVERTS_DATA_FILE", - "OPTION POUR LES BUSES" : "OPTION_FOR_CULVERTS", - "MODELE DE TURBULENCE HORIZONTAL" : "HORIZONTAL_TURBULENCE_MODEL", - "MODELE DE TURBULENCE VERTICAL" : "VERTICAL_TURBULENCE_MODEL", - "COEFFICIENT DE DIFFUSION HORIZONTAL DES VITESSES" : "COEFFICIENT_FOR_HORIZONTAL_DIFFUSION_OF_VELOCITIES", - "COEFFICIENT DE DIFFUSION VERTICAL DES VITESSES" : "COEFFICIENT_FOR_VERTICAL_DIFFUSION_OF_VELOCITIES", - "MODELE DE LONGUEUR DE MELANGE" : "MIXING_LENGTH_MODEL", - "FONCTION D'AMORTISSEMENT" : "DAMPING_FUNCTION", - "NOMBRE DE PRANDTL" : "PRANDTL_NUMBER", - "CONSTANTE DE KARMAN" : "KARMAN_CONSTANT", - "HAUTEUR DU LIT FICTIF" : "FICTITIOUS_BED_LEVEL", - "OPTION POUR LES CONDITIONS AUX LIMITES DU K-EPSILON" : "OPTION_FOR_THE_BOUNDARY_CONDITIONS_OF_K_EPSILON", - "DERIVEES VERTICALES DES VITESSES" : "VERTICAL_VELOCITY_DERIVATIVES", - "SCHEMA POUR LA CONVECTION DU K-EPSILON" : "SCHEME_FOR_ADVECTION_OF_K_EPSILON", - "OPTION DU SCHEMA POUR LA CONVECTION DU K-EPSILON" : "SCHEME_OPTION_FOR_ADVECTION_OF_K_EPSILON", - "SCHEMA POUR LA DIFFUSION DU K-EPSILON" : "SCHEME_FOR_DIFFUSION_OF_K_EPSILON", - "SOLVEUR POUR LA DIFFUSION DU K-EPSILON" : "SOLVER_FOR_DIFFUSION_OF_K_EPSILON", - "PRECISION POUR LA DIFFUSION DU K-EPSILON" : "ACCURACY_FOR_DIFFUSION_OF_K_EPSILON", - "MAXIMUM D'ITERATIONS POUR LA DIFFUSION DU K-EPSILON" : "MAXIMUM_NUMBER_OF_ITERATIONS_FOR_DIFFUSION_OF_K_EPSILON", - "PRECONDITIONNEMENT POUR LA DIFFUSION DU K-EPSILON" : "PRECONDITIONING_FOR_DIFFUSION_OF_K_EPSILON", - "OPTION DU SOLVEUR POUR LA DIFFUSION DU K-EPSILON" : "OPTION_OF_SOLVER_FOR_DIFFUSION_OF_K_EPSILON", - "TRAITEMENT SUR LES BANCS DECOUVRANTS POUR LE K-EPSILON" : "TREATMENT_ON_TIDAL_FLATS_FOR_K_EPSILON", - "NOMBRE DE TRACEURS" : "NUMBER_OF_TRACERS", - "NOMS DES TRACEURS" : "NAMES_OF_TRACERS", - "VALEURS DES TRACEURS DANS LA PLUIE" : "VALUES_OF_TRACERS_IN_THE_RAIN", - "VALEURS DES TRACEURS DES SOURCES" : "VALUE_OF_THE_TRACERS_AT_THE_SOURCES", - "LOI DE DENSITE" : "DENSITY_LAW", - "VALEURS DE REFERENCE DES TRACEURS" : "STANDARD_VALUES_FOR_TRACERS", - "COEFFICIENT DE DILATATION BETA POUR LES TRACEURS" : "BETA_EXPANSION_COEFFICIENT_FOR_TRACERS", - "VALEURS IMPOSEES DES TRACEURS" : "PRESCRIBED_TRACERS_VALUES", - "PROFILS DES TRACEURS SUR LA VERTICALE" : "TRACERS_VERTICAL_PROFILES", - "VALEURS INITIALES DES TRACEURS" : "INITIAL_VALUES_OF_TRACERS", - "SCHEMA POUR LA CONVECTION DES TRACEURS" : "SCHEME_FOR_ADVECTION_OF_TRACERS", - "OPTION DU SCHEMA POUR LA CONVECTION DES TRACEURS" : "SCHEME_OPTION_FOR_ADVECTION_OF_TRACERS", - "SCHEMA POUR LA DIFFUSION DES TRACEURS" : "SCHEME_FOR_DIFFUSION_OF_TRACERS", - "SOLVEUR POUR LA DIFFUSION DES TRACEURS" : "SOLVER_FOR_DIFFUSION_OF_TRACERS", - "PRECISION POUR LA DIFFUSION DES TRACEURS" : "ACCURACY_FOR_DIFFUSION_OF_TRACERS", - "MAXIMUM D'ITERATIONS POUR LA DIFFUSION DES TRACEURS" : "MAXIMUM_NUMBER_OF_ITERATIONS_FOR_DIFFUSION_OF_TRACERS", - "PRECONDITIONNEMENT POUR LA DIFFUSION DES TRACEURS" : "PRECONDITIONING_FOR_DIFFUSION_OF_TRACERS", - "OPTION DU SOLVEUR POUR LA DIFFUSION DES TRACEURS" : "OPTION_OF_SOLVER_FOR_DIFFUSION_OF_TRACERS", - "TRAITEMENT SUR LES BANCS DECOUVRANTS POUR LES TRACEURS" : "TREATMENT_ON_TIDAL_FLATS_FOR_TRACERS", - "COEFFICIENT DE DIFFUSION HORIZONTAL DES TRACEURS" : "COEFFICIENT_FOR_HORIZONTAL_DIFFUSION_OF_TRACERS", - "COEFFICIENT DE DIFFUSION VERTICAL DES TRACEURS" : "COEFFICIENT_FOR_VERTICAL_DIFFUSION_OF_TRACERS", - "SEDIMENT" : "SEDIMENT", - "MASSE VOLUMIQUE DU SEDIMENT" : "DENSITY_OF_THE_SEDIMENT", - "PAS DE TEMPS DE LA CONSOLIDATION" : "TIME_STEP_FOR_CONSOLIDATION", - "SEDIMENT COHESIF" : "COHESIVE_SEDIMENT", - "PARAMETRE DE SHIELDS" : "SHIELDS_PARAMETER", - "SEDIMENT MIXTE" : "MIXED_SEDIMENT", - "NOMBRE DE COUCHES DU LIT COHESIF" : "NUMBER_OF_SEDIMENT_BED_LAYERS", - "LECTURE CONTRAINTE CRITIQUE POUR CHAQUE COUCHE" : "READ_CRITICAL_BED_SHEAR_STRESS_PER_LAYER", - "FICHIER DES RESULTATS SEDIMENTOLOGIQUES" : "SEDIMENTOLOGICAL_RESULT_FILE", - "BINAIRE DU FICHIER DES RESULTATS SEDIMENTOLOGIQUES" : "SEDIMENTOLOGICAL_RESULT_FILE_BINARY", - "FICHIER SEDIMENTOLOGIQUE DU CALCUL PRECEDENT" : "PREVIOUS_COMPUTATION_SEDIMENTOLOGICAL_FILE", - "DIAMETRE MOYEN DES GRAINS" : "MEAN_DIAMETER_OF_THE_SEDIMENT", - "RATIO ENTRE LA RUGOSITE DE PEAU ET LE DIAMETRE MOYEN" : "RATIO_BETWEEN_SKIN_FRICTION_AND_MEAN_DIAMETER", - "CORRECTION FROTTEMENT DE PEAU" : "SKIN_FRICTION_CORRECTION", - "POURCENTAGE INITIAL DE SEDIMENT NON COHESIF" : "INITIAL_PERCENTAGE_OF_NON_COHESIVE_SEDIMENT", - "CONCENTRATIONS DES COUCHES DE VASE" : "MUD_CONCENTRATIONS_PER_LAYER", - "CONTRAINTE CRITIQUE D'EROSION DES COUCHES DE VASE" : "CRITICAL_EROSION_SHEAR_STRESS_OF_THE_MUD_LAYERS", - "EPAISSEURS INITIALES DES COUCHES" : "INITIAL_THICKNESS_OF_SEDIMENT_LAYERS", - "SOLVEUR POUR LA DIFFUSION DU SEDIMENT" : "SOLVER_FOR_DIFFUSION_OF_THE_SEDIMENT", - "PRECISION POUR LA DIFFUSION DU SEDIMENT" : "ACCURACY_FOR_DIFFUSION_OF_SEDIMENT", - "MAXIMUM D'ITERATIONS POUR LA DIFFUSION DU SEDIMENT" : "MAXIMUM_NUMBER_OF_ITERATIONS_FOR_DIFFUSION_OF_SEDIMENT", - "PRECONDITIONNEMENT POUR LA DIFFUSION DU SEDIMENT" : "PRECONDITIONING_FOR_DIFFUSION_OF_THE_SEDIMENT", - "OPTION DU SOLVEUR POUR LA DIFFUSION DU SEDIMENT" : "OPTION_OF_SOLVER_FOR_DIFFUSION_OF_THE_SEDIMENT", - "SEUIL LIMITE POUR EROSION SUR BANCS DECOUVRANTS" : "THRESHOLD_FOR_SEDIMENT_FLUX_CORRECTION_ON_TIDAL_FLATS", - "CONTRAINTE CRITIQUE DE DEPOT" : "CRITICAL_SHEAR_STRESS_FOR_DEPOSITION", - "POROSITE DU LIT NON COHESIF" : "NON_COHESIVE_BED_POROSITY", - "COEFFICIENT D'EROSION" : "EROSION_COEFFICIENT", - "VITESSE DE CHUTE CONSTANTE" : "CONSTANT_SEDIMENT_SETTLING_VELOCITY", - "VITESSE DE CHUTE DES SABLES" : "SETTLING_VELOCITY_OF_SANDS", - "SCHEMA DE CONVECTION DIFFUSION AVEC VITESSE DE CHUTE" : "ADVECTION_DIFFUSION_SCHEME_WITH_SETTLING_VELOCITY", - "VITESSE DE CHUTE ENTRAVEE" : "HINDERED_SETTLING", - "CONCENTRATION LIMITE FLUIDE-SOLIDE" : "WEAK_SOIL_CONCENTRATION_FOR_MUD", - "CONCENTRATION LIMITE POUR VITESSE DE CHUTE ENTRAVEE" : "THRESHOLD_CONCENTRATION_FOR_HINDERED_SETTLING", - "FORMULE POUR VITESSE DE CHUTE ENTRAVEE" : "HINDERED_SETTLING_FORMULA", - "FORMULE POUR LA CONCENTRATION DE REFERENCE" : "REFERENCE_CONCENTRATION_FORMULA", - "FLOCULATION" : "FLOCCULATION", - "FORMULE POUR FLOCULATION" : "FLOCCULATION_FORMULA", - "COEFFICIENT TRADUISANT LA FORMATION DES FLOCS" : "FLOCCULATION_COEFFICIENT", - "COEFFICIENT TRADUISANT LA DESTRUCTION DES FLOCS" : "COEFFICIENT_RELATIVE_TO_FLOC_DESTRUCTION", - "EPAISSEUR DES COUCHES DU FOND VASEUX" : "BED_LAYERS_THICKNESS", - "CONCENTRATION MAXIMUM DE LA VASE TASSEE" : "MAXIMUM_CONCENTRATION_OF_THE_CONSOLIDATED_MUD", - "TEMPS DE SEJOUR DE LA VASE" : "RESIDENCE_TIME_FOR_MUD", - "TASSEMENT DE LA VASE" : "CONSOLIDATION", - "OPTION DU MODELE DE TASSEMENT" : "CONSOLIDATION_MODEL", - "COUPLAGE AVEC" : "COUPLING_WITH", - "FICHIER DES PARAMETRES DE SISYPHE" : "SISYPHE_STEERING_FILE", - "PERIODE DE COUPLAGE POUR SISYPHE" : "COUPLING_PERIOD_FOR_SISYPHE", - "FICHIER DES PARAMETRES DE TOMAWAC" : "TOMAWAC_STEERING_FILE", - "PERIODE DE COUPLAGE POUR TOMAWAC" : "COUPLING_PERIOD_FOR_TOMAWAC", - "PROCESSUS DE QUALITE D'EAU" : "WATER_QUALITY_PROCESS", - "FICHIER DES PARAMETRES DE WAQTEL" : "WAQTEL_STEERING_FILE", - "FICHIER DE COMMANDE DELWAQ" : "DELWAQ_STEERING_FILE", - "PERIODE DE SORTIE POUR DELWAQ" : "DELWAQ_PRINTOUT_PERIOD", - "FICHIER DELWAQ DES ECHANGES ENTRE NOEUDS" : "EXCHANGES_BETWEEN_NODES_DELWAQ_FILE", - "FICHIER DELWAQ DES DISTANCES ENTRE NOEUDS" : "NODES_DISTANCES_DELWAQ_FILE", - "FICHIER DELWAQ DES SURFACES DU FOND" : "BOTTOM_SURFACES_DELWAQ_FILE", - "FICHIER DELWAQ DES VOLUMES" : "VOLUMES_DELWAQ_FILE", - "FICHIER DELWAQ DES SURFACES DE FLUX" : "EXCHANGE_AREAS_DELWAQ_FILE", - "FICHIER DELWAQ DES FLUX VERTICAUX" : "VERTICAL_FLUXES_DELWAQ_FILE", - "FICHIER DELWAQ DE LA VITESSE" : "VELOCITY_DELWAQ_FILE", - "FICHIER DELWAQ DE LA DIFFUSION" : "DIFFUSIVITY_DELWAQ_FILE", - "FICHIER DELWAQ DE LA TEMPERATURE" : "TEMPERATURE_DELWAQ_FILE", - "FICHIER DELWAQ DE LA SALINITE" : "SALINITY_DELWAQ_FILE", - "VITESSE POUR DELWAQ" : "VELOCITY_FOR_DELWAQ", - "DIFFUSION POUR DELWAQ" : "DIFFUSION_FOR_DELWAQ", - "TEMPERATURE POUR DELWAQ" : "TEMPERATURE_FOR_DELWAQ", - "SALINITE POUR DELWAQ" : "SALINITY_FOR_DELWAQ", - "AD NOMBRE DES DERIVEES" : "AD_NUMBER_OF_DERIVATIVES", - "AD NOMS DES DERIVEES" : "AD_NAMES_OF_DERIVATIVES", - "AD NOMBRE DE DIRECTIONS" : "AD_NUMBER_OF_DIRECTIONS", - "AD SOLVEUR LINEAIRE SYMBOLIQUE" : "AD_SYMBOLIC_LINEAR_SOLVER", - "AD REMISE A ZERO DES DERIVEES DU SOLVEUR LINEAIRE" : "AD_LINEAR_SOLVER_RESET_DERIVATIVES", - "AD CONVERGENCE DES DERIVEES POUR LE SOLVEUR LINEAIRE" : "AD_LINEAR_SOLVER_DERIVATIVE_CONVERGENCE", - "PARTITIONNEUR" : "PARTITIONING_TOOL", - "FICHIER DES PARAMETRES" : "STEERING_FILE", - "NUMERO DE VERSION" : "RELEASE", - "DICTIONNAIRE" : "DICTIONARY", - "LISTE DES FICHIERS" : "LIST_OF_FILES", - "DESCRIPTION DES LIBRAIRIES" : "DESCRIPTION_OF_LIBRARIES", - "EXECUTABLE PAR DEFAUT" : "DEFAULT_EXECUTABLE", - "EXECUTABLE PARALLELE PAR DEFAUT" : "DEFAULT_PARALLEL_EXECUTABLE", -} diff --git a/Telemac/telemac3d_enum_auto.py b/Telemac/telemac3d_enum_auto.py deleted file mode 100644 index eb329dcb..00000000 --- a/Telemac/telemac3d_enum_auto.py +++ /dev/null @@ -1,1611 +0,0 @@ -#/usr/bin/env python -# -*- coding: latin-1 -*- -TelemacdicoEn = { -'VARIABLES_FOR_3D_GRAPHIC_PRINTOUTS' : { - 'U':"velocity along x axis (m/s)", - 'V':"velocity along y axis (m/s)", - 'W':"velocity along z axis (m/s)", - 'Z':"elevation z (m)", - 'TA1':"concentration for tracer 1", - 'TA2':"concentration for tracer 2", - 'TA3':"concentration for tracer 3", - 'TA4':"concentration for tracer 4", - 'TA5':"concentration for tracer 5", - 'TA6':"concentration for tracer 6", - 'TA7':"concentration for tracer 7", - 'TA8':"concentration for tracer 8", - 'TA9':"concentration for tracer 9", - 'TA*':"concentrations for tracers from 1 to 9", - 'TA**':"concentrations for tracers from 10 to 99", - 'NUX':"viscosity for U and V along x axis (m2/s)", - 'NUY':"viscosity for U and V along y axis (m2/s)", - 'NUZ':"viscosity for U and V along z axis (m2/s)", - 'NAX':"viscosity for tracers along x axis (m2/s)", - 'NAY':"viscosity for tracers along y axis (m2/s)", - 'NAZ':"viscosity for tracers along z axis (m2/s)", - 'RI':"Richardson number in case of mixing length model", - 'K':"turbulent energie for k-epsilon model (J/kg)", - 'EPS':"dissipation of turbulent energie (W/kg)", - 'DP':"dynamic pressure (multiplied by DT/RHO)", - 'PH':"hydrostatic pressure (in Pascals)", - 'RHO':"relative density", - 'P1':"private variable 1", - 'P2':"private variable 2", - 'P3':"private variable 3", - 'P4':"private variable 4", - }, -'VARIABLES_FOR_2D_GRAPHIC_PRINTOUTS' : { - 'U':"depth averaged velocity along x axis (m/s)", - 'V':"depth averaged velocity along y axis (m/s)", - 'C':"celerity (m/s)", - 'H':"water depth (m)", - 'S':"free surface elevation (m)", - 'B':"bottom elevation (m)", - 'TA1':"TAx concentrations for tracers, x is the tracer number", - 'F':"Froude number", - 'Q':"scalar discharge (m2/s)", - 'I':"discharge along x (m2/s)", - 'J':"discharge along y (m2/s)", - 'M':"norm of velocity (m/s)", - 'X':"wind along x axis (m/s)", - 'Y':"wind along y axis (m/s)", - 'P':"atmospheric pressure (Pa)", - 'W':"friction coefficient", - 'RB':"non erodible bottom elevation (m)", - 'HD':"thickness of the sediment bed layer (m)", - 'EF':"erosion rate (kg/m2/s)", - 'DF':"deposition flux (kg/m2/s)", - 'DZF':"bed evolution", - 'PRIVE1':"work array PRIVE 1", - 'PRIVE2':"work array PRIVE 2", - 'PRIVE3':"work array PRIVE 3", - 'PRIVE4':"work array PRIVE 4", - 'QS':"solid discharge (m2/s)", - 'QSX':"solid discharge along x (m2/s)", - 'QSY':"solid discharge along y (m2/s)", - 'US':"friction velocity (m/s)", - 'MAXZ':"maximum value of the free surface elevation (m)", - 'TMXZ':"time corresponding to this maximum elevation (s)", - }, -'SPATIAL_PROJECTION_TYPE' : { - 1:"CARTESIAN, NOT GEOREFERENCED", - 2:"MERCATOR", - 3:"LATITUDE LONGITUDE", - }, -'TREATMENT_OF_FLUXES_AT_THE_BOUNDARIES' : { - 1:"Priority to prescribed values", - 2:"Priority to fluxes", - }, -'LAW_OF_BOTTOM_FRICTION' : { - 0:"NO FRICTION", - 1:"HAALAND", - 2:"CHEZY", - 3:"STRICKLER", - 4:"MANNING", - 5:"NIKURADSE", - }, -'LAW_OF_FRICTION_ON_LATERAL_BOUNDARIES' : { - 0:"NO FRICTION", - 1:"COEFFICIENT TAKEN IN BOUNDARY CONDITIONS FILE", - 2:"IDEM", - 3:"IDEM", - 4:"IDEM", - 5:"NIKURADSE", - }, -'OPTION_FOR_WIND' : { - 1:"constant in time and space", - 2:"variable in time given by formatted file", - 3:"variable in time and space given by formatted file", - }, -'TYPE_OF_SOURCES' : { - 1:"Normal", - 2:"Dirac", - }, -'VELOCITY_PROFILES' : { - 1:"constant normal profile", - 2:"ubor and vbor given in the conlim file", - 3:"normal velocity given in ubor in the conlim file", - 4:"Velocity=square root elevation", - 5:"like 4 with virtual depth, see help", - }, -'VELOCITY_VERTICAL_PROFILES' : { - 0:"User defined", - 1:"Constant", - 2:"Logarithmic", - }, -'TURBULENCE_REGIME_FOR_THE_BOTTOM' : { - 1:"smooth", - 2:"rough", - 3:"rough compatibility with old versions", - }, -'TURBULENCE_REGIME_FOR_LATERAL_SOLID_BOUNDARIES' : { - 1:"smooth", - 2:"rough", - }, -'BOUNDARY_CONDITION_ON_THE_BOTTOM' : { - 1:"LOG LAW FOR VELOCITIES ON BOTTOM", - 2:"NO SLIP FOR VELOCITIES ON BOTTOM", - }, -'SOLVER_FOR_PROPAGATION' : { - 1:"conjugate gradient", - 2:"conjugate residual", - 3:"conjugate gradient on a normal equation", - 4:"minimum error", - 5:"squared conjugate gradient", - 6:"cgstab", - 7:"gmres", - 8:"direct solver", - }, -'PRECONDITIONING_FOR_PROPAGATION' : { - 0:"no preconditioning", - 2:"diagonal", - 3:"diagonal condensed", - 5:"diagonal with absolute values", - 7:"Crout", - 11:"Gauss-Seidel EBE", - 13:"Matrix defined by the user", - 14:"diagonal and Crout", - 17:"direct solver on the vertical", - 21:"diagonal condensed and Crout", - 34:"diagonal and direct solver on the vertical", - }, -'INITIAL_GUESS_FOR_DEPTH' : { - 0:"zero", - 1:"previous", - 2:"extrapolation", - }, -'SCHEME_FOR_ADVECTION_OF_VELOCITIES' : { - 0:"NO ADVECTION", - 1:"CHARACTERISTICS", - 2:"EXPLICIT + SUPG", - 3:"EXPLICIT LEO POSTMA", - 4:"EXPLICIT + MURD SCHEME N", - 5:"EXPLICIT + MURD SCHEME PSI", - 13:"LEO POSTMA FOR TIDAL FLATS", - 14:"N-SCHEME FOR TIDAL FLATS", - }, -'OPTION_FOR_CHARACTERISTICS' : { - 1:"strong", - 2:"weak", - }, -'SCHEME_FOR_DIFFUSION_OF_VELOCITIES' : { - 0:"NO DIFFUSION", - 1:"IMPLICIT", - }, -'SOLVER_FOR_DIFFUSION_OF_VELOCITIES' : { - 1:"conjugate gradient", - 2:"conjugate residual", - 3:"conjugate gradient on a normal equation", - 4:"minimum error", - 5:"squared conjugate gradient", - 6:"cgstab", - 7:"gmres", - 8:"direct solver", - }, -'PRECONDITIONING_FOR_DIFFUSION_OF_VELOCITIES' : { - 0:"no preconditioning", - 2:"diagonal", - 3:"diagonal condensed", - 5:"diagonal with absolute values", - 7:"Crout", - 11:"Gauss-Seidel EBE", - 13:"Matrix defined by the user", - 14:"diagonal and Crout", - 17:"direct solver on the vertical", - 21:"diagonal condensed and Crout", - 34:"diagonal and direct solver on the vertical", - }, -'SOLVER_FOR_PPE' : { - 1:"conjugate gradient", - 2:"conjugate residual", - 3:"conjugate gradient on a normal equation", - 4:"minimum error", - 5:"squared conjugate gradient", - 6:"cgstab", - 7:"gmres", - 8:"direct solver", - }, -'PRECONDITIONING_FOR_PPE' : { - 0:"no preconditioning", - 2:"diagonal", - 3:"diagonal condensed", - 5:"diagonal with absolute values", - 7:"Crout", - 11:"Gauss-Seidel EBE", - 13:"Matrix defined by the user", - 14:"diagonal and Crout", - 17:"direct solver on the vertical", - 21:"diagonal condensed and Crout", - 34:"diagonal and direct solver on the vertical", - }, -'SOLVER_FOR_VERTICAL_VELOCITY' : { - 1:"conjugate gradient", - 2:"conjugate residual", - 3:"conjugate gradient on a normal equation", - 4:"minimum error", - 5:"squared conjugate gradient", - 6:"cgstab", - 7:"gmres", - 8:"direct solver", - }, -'PRECONDITIONING_FOR_VERTICAL_VELOCITY' : { - 0:"no preconditioning", - 2:"diagonal", - 3:"diagonal condensed", - 5:"diagonal with absolute values", - 7:"Crout", - 11:"Gauss-Seidel EBE", - 13:"Matrix defined by the user", - 14:"diagonal and Crout", - 17:"direct solver on the vertical", - 21:"diagonal condensed and Crout", - 34:"diagonal and direct solver on the vertical", - }, -'OPTION_FOR_THE_TREATMENT_OF_TIDAL_FLATS' : { - 1:"EQUATIONS SOLVED EVERYWHERE WITH CORRECTION ON TIDAL FLATS", - 2:"DRY ELEMENTS FROZEN", - 3:"LIKE 1 BUT WITH POROSITY (DEFINA METHOD)", - }, -'TREATMENT_ON_TIDAL_FLATS_FOR_VELOCITIES' : { - 0:"FORCED TO ZERO", - 1:"VALUE BEFORE MASKED", - }, -'GEOGRAPHIC_SYSTEM' : { - -1:"NO DEFAULT VALUE", - 0:"DEFINED BY USER", - 1:"WGS84 LONGITUDE/LATITUDE IN REAL DEGREES", - 2:"WGS84 NORTHERN UTM", - 3:"WGS84 SOUTHERN UTM", - 4:"LAMBERT", - 5:"MERCATOR PROJECTION", - }, -'ZONE_NUMBER_IN_GEOGRAPHIC_SYSTEM' : { - -1:"NO DEFAULT VALUE", - 1:"LAMBERT 1 NORTH", - 2:"LAMBERT 2 CENTER", - 3:"LAMBERT 3 SOUTH", - 4:"LAMBERT 4 CORSICA", - 22:"LAMBERT 2 EXTENDED", - 93:"LAMBERT 93", - 30:"UTM ZONE, E.G.", - }, -'OPTION_FOR_TIDAL_BOUNDARY_CONDITIONS' : { - 0:"No tide", - 1:"Real tide (recommended methodology)", - 2:"Astronomical tide", - 3:"Mean spring tide", - 4:"Mean tide", - 5:"Mean neap tide", - 6:"Astronomical neap tide", - 7:"Real tide (methodology before 2010)", - }, -'TIDAL_DATA_BASE' : { - -1:"NO DEFAULT VALUE", - 1:"JMJ", - 2:"TPXO", - 3:"MISCELLANEOUS (LEGOS-NEA, FES20XX, PREVIMER...)", - }, -'HORIZONTAL_TURBULENCE_MODEL' : { - 1:"CONSTANT VISCOSITY", - 3:"K-EPSILON MODEL", - 4:"SMAGORINSKI", - 7:"K-OMEGA MODEL", - }, -'VERTICAL_TURBULENCE_MODEL' : { - 1:"CONSTANT VISCOSITY", - 2:"MIXING LENGTH", - 3:"K-EPSILON MODEL", - 4:"SMAGORINSKI", - 7:"K-OMEGA MODEL", - }, -'OPTION_FOR_THE_BOUNDARY_CONDITIONS_OF_K_EPSILON' : { - 1:"no turbulence", - 2:"Hans Burchard", - }, -'SCHEME_FOR_ADVECTION_OF_K_EPSILON' : { - 0:"NO ADVECTION", - 1:"CHARACTERISTICS", - 2:"EXPLICIT + SUPG", - 3:"EXPLICIT LEO POSTMA", - 4:"EXPLICIT + MURD SCHEME N", - 5:"EXPLICIT + MURD SCHEME PSI", - 13:"LEO POSTMA FOR TIDAL FLATS", - 14:"N-SCHEME FOR TIDAL FLATS", - }, -'SCHEME_FOR_DIFFUSION_OF_K_EPSILON' : { - 0:"NO DIFFUSION", - 1:"IMPLICIT", - }, -'SOLVER_FOR_DIFFUSION_OF_K_EPSILON' : { - 1:"conjugate gradient", - 2:"conjugate residual", - 3:"conjugate gradient on a normal equation", - 4:"minimum error", - 5:"squared conjugate gradient", - 6:"cgstab", - 7:"gmres", - 8:"direct solver", - }, -'PRECONDITIONING_FOR_DIFFUSION_OF_K_EPSILON' : { - 0:"no preconditioning", - 2:"diagonal", - 3:"diagonal condensed", - 5:"diagonal with absolute values", - 7:"Crout", - 11:"Gauss-Seidel EBE", - 13:"Matrix defined by the user", - 14:"diagonal and Crout", - 17:"direct solver on the vertical", - 21:"diagonal condensed and Crout", - 34:"diagonal and direct solver on the vertical", - }, -'TREATMENT_ON_TIDAL_FLATS_FOR_K_EPSILON' : { - 0:"FORCED TO ZERO", - 1:"VALUE BEFORE MASKED", - }, -'TRACERS_VERTICAL_PROFILES' : { - 0:"User defined", - 1:"Constant", - 2:"Constant or Rouse if sediment", - 3: "Normalized Rouse profile and imposed conc", - 4: "Modified Rouse profile accounting for molecular viscosity", - }, -'SCHEME_FOR_ADVECTION_OF_TRACERS' : { - 0:"NO ADVECTION", - 1:"CHARACTERISTICS", - 2:"EXPLICIT + SUPG", - 3:"EXPLICIT LEO POSTMA", - 4:"EXPLICIT + MURD SCHEME N", - 5:"EXPLICIT + MURD SCHEME PSI", - 13:"LEO POSTMA FOR TIDAL FLATS", - 14:"N-SCHEME FOR TIDAL FLATS", - }, -'SCHEME_FOR_DIFFUSION_OF_TRACERS' : { - 0:"NO DIFFUSION", - 1:"IMPLICIT", - 2:"VERTICAL DIFFUSION ONLY", - }, -'SOLVER_FOR_DIFFUSION_OF_TRACERS' : { - 1:"conjugate gradient", - 2:"conjugate residual", - 3:"conjugate gradient on a normal equation", - 4:"minimum error", - 5:"squared conjugate gradient", - 6:"cgstab", - 7:"gmres", - 8:"direct solver", - }, -'PRECONDITIONING_FOR_DIFFUSION_OF_TRACERS' : { - 0:"no preconditioning", - 2:"diagonal", - 3:"diagonal condensed", - 5:"diagonal with absolute values", - 7:"Crout", - 11:"Gauss-Seidel EBE", - 13:"Matrix defined by the user", - 14:"diagonal and Crout", - 17:"direct solver on the vertical", - 21:"diagonal condensed and Crout", - 34:"diagonal and direct solver on the vertical", - }, -'TREATMENT_ON_TIDAL_FLATS_FOR_TRACERS' : { - 0:"FORCED TO ZERO", - 1:"VALUE BEFORE MASKED", - }, -'SOLVER_FOR_DIFFUSION_OF_THE_SEDIMENT' : { - 1:"conjugate gradient", - 2:"conjugate residual", - 3:"conjugate gradient on a normal equation", - 4:"minimum error", - 5:"squared conjugate gradient", - 6:"cgstab", - 7:"gmres", - 8:"direct solver", - }, -'PRECONDITIONING_FOR_DIFFUSION_OF_THE_SEDIMENT' : { - 0:"no preconditioning", - 2:"diagonal", - 3:"diagonal condensed", - 5:"diagonal with absolute values", - 7:"Crout", - 11:"Gauss-Seidel EBE", - 13:"Matrix defined by the user", - 14:"diagonal and Crout", - 17:"direct solver on the vertical", - 21:"diagonal condensed and Crout", - 34:"diagonal and direct solver on the vertical", - }, -} -TelemacdicoFr = { -'VARIABLES_FOR_3D_GRAPHIC_PRINTOUTS' : { - 'U':"vitesse suivant l axe des x (m/s)", - 'V':"vitesse suivant l axe des y (m/s)", - 'W':"vitesse suivant l axe des z (m/s)", - 'Z':"cote z (m)", - 'TA1':"concentration du traceur 1", - 'TA2':"concentration du traceur 2", - 'TA3':"concentration du traceur 3", - 'TA4':"concentration du traceur 4", - 'TA5':"concentration du traceur 5", - 'TA6':"concentration du traceur 6", - 'TA7':"concentration du traceur 7", - 'TA8':"concentration du traceur 8", - 'TA9':"concentration du traceur 9", - 'TA*':"concentrations des traceurs de 1 a 9", - 'TA**':"concentrations des traceurs de 10 a 99", - 'NUX':"viscosite pour U et V suivant l axe des x (m2/s)", - 'NUY':"viscosite pour U et V suivant l axe des y (m2/s)", - 'NUZ':"viscosite pour U et V suivant l axe des z (m2/s)", - 'NAX':"viscosites pour les tr. suivant l axe des x (m2/s)", - 'NAY':"viscosites pour les tr. suivant l axe des y (m2/s)", - 'NAZ':"viscosites pour les tr. suivant l axe des z (m2/s)", - 'RI':"nombre de Richardson en cas de modele de longueur de melange", - 'K':"energie turbulente du modele k-epsilon (J/kg)", - 'EPS':"dissipation de l energie turbulente (W/kg)", - 'DP':"pression dynamique (multipliee par DT/RHO)", - 'PH':"pression hydrostatique (en Pascals)", - 'RHO':"densite relative", - 'P1':"variable privee 1", - 'P2':"variable privee 2", - 'P3':"variable privee 3", - 'P4':"variable privee 4", - }, -'VARIABLES_FOR_2D_GRAPHIC_PRINTOUTS' : { - 'U':"vitesse moyenne suivant l axe des x (m/s)", - 'V':"vitesse moyenne suivant l axe des y (m/s)", - 'C':"celerite (m/s)", - 'H':"hauteur d eau (m)", - 'S':"cote de surface libre (m)", - 'B':"cote du fond (m)", - 'TA1':"TAx concentrations des traceurs, x numero du traceur", - 'F':"nombre de Froude", - 'Q':"debit scalaire (m2/s)", - 'I':"debit suivant x (m2/s)", - 'J':"debit suivant y (m2/s)", - 'M':"norme de la vitesse (m/s)", - 'X':"vent suivant l axe des x (m/s)", - 'Y':"vent suivant l axe des y (m/s)", - 'P':"pression atmospherique (Pa)", - 'W':"coefficient de frottement", - 'RB':"cote des fonds non erodables (m)", - 'HD':"epaisseur du lit de sediment (m)", - 'EF':"flux d erosion (kg/m2/s)", - 'DF':"flux de Depot (kg/m2/s)", - 'DZF':"evolution du lit", - 'PRIVE1':"tableau de travail PRIVE 1", - 'PRIVE2':"tableau de travail PRIVE 2", - 'PRIVE3':"tableau de travail PRIVE 3", - 'PRIVE4':"tableau de travail PRIVE 4", - 'QS':"debit solide (m2/s)", - 'QSX':"debit solide suivant x (m2/s)", - 'QSY':"debit solide suivant y (m2/s)", - 'US':"vitesse de frottement (m/s)", - 'MAXZ':"valeur maximum de la cote de l eau au cours du calcul (m)", - 'TMXZ':"temps correspondant a ce niveau maximum (s)", - }, -'SPATIAL_PROJECTION_TYPE' : { - 1:"CARTESIEN, NON GEOREFERENCE", - 2:"MERCATOR", - 3:"LATITUDE LONGITUDE", - }, -'TREATMENT_OF_FLUXES_AT_THE_BOUNDARIES' : { - 1:"Priorite aux valeurs imposees", - 2:"Priorite aux flux", - }, -'LAW_OF_BOTTOM_FRICTION' : { - 0:"PAS DE FROTTEMENT", - 1:"HAALAND", - 2:"CHEZY", - 3:"STRICKLER", - 4:"MANNING", - 5:"NIKURADSE", - }, -'LAW_OF_FRICTION_ON_LATERAL_BOUNDARIES' : { - 0:"PAS DE FROTTEMENT", - 1:"COEFFICIENT PRIS DANS LE FICHIER DES CONDITIONS AUX LIMITES", - 2:"IDEM", - 3:"IDEM", - 4:"IDEM", - 5:"NIKURADSE", - }, -'OPTION_FOR_WIND' : { - 1:"constant en temps et en espace", - 2:"variable en temps donne par fichier formate", - 3:"variable en temps et en espace donne par fichier formate", - }, -'TYPE_OF_SOURCES' : { - 1:"Normal", - 2:"Dirac", - }, -'VELOCITY_PROFILES' : { - 1:"Profil normal constant", - 2:"ubor et vbor dans le fichier conlim", - 3:"Vitesse normale donnee dans ubor dans le fichier conlim", - 4:"Vitesse= racine carree de h", - 5:"comme 4 mais avec hauteur virtuelle, voir aide", - }, -'VELOCITY_VERTICAL_PROFILES' : { - 0:"Programmation utilisateur", - 1:"Constant", - 2:"Logarithmique", - }, -'TURBULENCE_REGIME_FOR_THE_BOTTOM' : { - 1:"lisse", - 2:"rugueux", - 3:"rugueux compatible avec anciennes versions", - }, -'TURBULENCE_REGIME_FOR_LATERAL_SOLID_BOUNDARIES' : { - 1:"lisse", - 2:"rugueux", - }, -'BOUNDARY_CONDITION_ON_THE_BOTTOM' : { - 1:"LOI LOGARITHMIQUE POUR LES VITESSES AU FOND", - 2:"VITESSES NULLES AU FOND", - }, -'SOLVER_FOR_PROPAGATION' : { - 1:"GRADIENT CONJUGUE", - 2:"RESIDU CONJUGUE", - 3:"GRADIENT CONJUGUE SUR EQUATION NORMALE", - 4:"ERREUR MINIMALE", - 5:"GRADIENT CONJUGUE CARRE", - 6:"CGSTAB", - 7:"GMRES", - 8:"SOLVEUR DIRECT", - }, -'PRECONDITIONING_FOR_PROPAGATION' : { - 0:"AUCUN", - 2:"DIAGONAL", - 3:"DIAGONAL CONDENSEE", - 5:"DIAGONAL A VALEURS ABSOLUES", - 7:"CROUT", - 11:"GAUSS-SEIDEL EBE", - 13:"MATRICE DEFINIE PAR L UTILISATEUR", - 14:"DIAGONAL ET CROUT", - 17:"SOLVEUR DIRECT SUR LA VERTICALE", - 21:"DIAGONAL CONDENSE ET CROUT", - 34:"DIAGONAL ET SOLVEUR DIRECT SUR LA VERTICALE", - }, -'INITIAL_GUESS_FOR_DEPTH' : { - 0:"zero", - 1:"precedent", - 2:"extrapolation", - }, -'SCHEME_FOR_ADVECTION_OF_VELOCITIES' : { - 0:"PAS DE CONVECTION", - 1:"CARACTERISTIQUES", - 2:"EXPLICITE + SUPG", - 3:"EXPLICITE LEO POSTMA", - 4:"EXPLICITE + MURD SCHEMA N", - 5:"EXPLICITE + MURD SCHEMA PSI", - 13:"LEO POSTMA POUR BANCS DECOUVRANTS", - 14:"SCHEMA N POUR BANCS DECOUVRANTS", - }, -'OPTION_FOR_CHARACTERISTICS' : { - 1:"fortes", - 2:"faibles", - }, -'SCHEME_FOR_DIFFUSION_OF_VELOCITIES' : { - 0:"PAS DE DIFFUSION", - 1:"IMPLICITE", - }, -'SOLVER_FOR_DIFFUSION_OF_VELOCITIES' : { - 1:"GRADIENT CONJUGUE", - 2:"RESIDU CONJUGUE", - 3:"GRADIENT CONJUGUE SUR EQUATION NORMALE", - 4:"ERREUR MINIMALE", - 5:"GRADIENT CONJUGUE CARRE", - 6:"CGSTAB", - 7:"GMRES", - 8:"SOLVEUR DIRECT", - }, -'PRECONDITIONING_FOR_DIFFUSION_OF_VELOCITIES' : { - 0:"AUCUN", - 2:"DIAGONAL", - 3:"DIAGONAL CONDENSEE", - 5:"DIAGONAL A VALEURS ABSOLUES", - 7:"CROUT", - 11:"GAUSS-SEIDEL EBE", - 13:"MATRICE DEFINIE PAR L UTILISATEUR", - 14:"DIAGONAL ET CROUT", - 17:"SOLVEUR DIRECT SUR LA VERTICALE", - 21:"DIAGONAL CONDENSE ET CROUT", - 34:"DIAGONAL ET SOLVEUR DIRECT SUR LA VERTICALE", - }, -'SOLVER_FOR_PPE' : { - 1:"GRADIENT CONJUGUE", - 2:"RESIDU CONJUGUE", - 3:"GRADIENT CONJUGUE SUR EQUATION NORMALE", - 4:"ERREUR MINIMALE", - 5:"GRADIENT CONJUGUE CARRE", - 6:"CGSTAB", - 7:"GMRES", - 8:"SOLVEUR DIRECT", - }, -'PRECONDITIONING_FOR_PPE' : { - 0:"AUCUN", - 2:"DIAGONAL", - 3:"DIAGONAL CONDENSEE", - 5:"DIAGONAL A VALEURS ABSOLUES", - 7:"CROUT", - 11:"GAUSS-SEIDEL EBE", - 13:"MATRICE DEFINIE PAR L UTILISATEUR", - 14:"DIAGONAL ET CROUT", - 17:"SOLVEUR DIRECT SUR LA VERTICALE", - 21:"DIAGONAL CONDENSE ET CROUT", - 34:"DIAGONAL ET SOLVEUR DIRECT SUR LA VERTICALE", - }, -'SOLVER_FOR_VERTICAL_VELOCITY' : { - 1:"GRADIENT CONJUGUE", - 2:"RESIDU CONJUGUE", - 3:"GRADIENT CONJUGUE SUR EQUATION NORMALE", - 4:"ERREUR MINIMALE", - 5:"GRADIENT CONJUGUE CARRE", - 6:"CGSTAB", - 7:"GMRES", - 8:"SOLVEUR DIRECT", - }, -'PRECONDITIONING_FOR_VERTICAL_VELOCITY' : { - 0:"AUCUN", - 2:"DIAGONAL", - 3:"DIAGONAL CONDENSEE", - 5:"DIAGONAL A VALEURS ABSOLUES", - 7:"CROUT", - 11:"GAUSS-SEIDEL EBE", - 13:"MATRICE DEFINIE PAR L UTILISATEUR", - 14:"DIAGONAL ET CROUT", - 17:"SOLVEUR DIRECT SUR LA VERTICALE", - 21:"DIAGONAL CONDENSE ET CROUT", - 34:"DIAGONAL ET SOLVEUR DIRECT SUR LA VERTICALE", - }, -'OPTION_FOR_THE_TREATMENT_OF_TIDAL_FLATS' : { - 1:"EQUATIONS RESOLUES PARTOUT, CORRECTION SUR LES BANCS DECOUVRANTS", - 2:"GEL DES ELEMENTS DECOUVRANTS", - 3:"COMME 1 MAIS AVEC POROSITE (METHODE DEFINA)", - }, -'TREATMENT_ON_TIDAL_FLATS_FOR_VELOCITIES' : { - 0:"FORCAGE A ZERO", - 1:"VALEUR AVANT MASQUAGE", - }, -'GEOGRAPHIC_SYSTEM' : { - -1:"PAS DE VALEUR PAR DEFAUT", - 0:"DEFINI PAR L UTILISATEUR", - 1:"WGS84 LONGITUDE/LATITUDE EN DEGRES REELS", - 2:"WGS84 NORD UTM", - 3:"WGS84 SUD UTM", - 4:"LAMBERT", - 5:"MERCATOR PROJECTION", - }, -'ZONE_NUMBER_IN_GEOGRAPHIC_SYSTEM' : { - -1:"PAS DE VALEUR PAR DEFAUT", - 1:"LAMBERT 1 NORD", - 2:"LAMBERT 2 CENTRE", - 3:"LAMBERT 3 SUD", - 4:"LAMBERT 4 CORSE", - 22:"LAMBERT 2 ETENDU", - 93:"LAMBERT 93", - 30:"ZONE UTM, PAR EXEMPLE", - }, -'OPTION_FOR_TIDAL_BOUNDARY_CONDITIONS' : { - 0:"Pas de maree", - 1:"Maree reelle (methodologie recommandee)", - 2:"Maree de vive-eau exceptionnelle (coef. presque 120)", - 3:"Maree de vive-eau moyenne (coef. presque 95)", - 4:"Maree moyenne (coef. presque 70)", - 5:"Maree de morte-eau moyenne (coef. presque 45)", - 6:"Maree de morte-eau exceptionnelle (coef. presque 20)", - 7:"Maree reelle (methodologie d avant 2010)", - }, -'TIDAL_DATA_BASE' : { - -1:"PAS DE VALEUR PAR DEFAUT", - 1:"JMJ", - 2:"TPXO", - 3:"DIVERS (LEGOS-NEA, FES20XX, PREVIMER...)", - }, -'HORIZONTAL_TURBULENCE_MODEL' : { - 1:"VISCOSITE CONSTANTE", - 3:"MODELE K-EPSILON", - 4: "SMAGORINSKI", - 7:"MODELE K-OMEGA", - }, -'VERTICAL_TURBULENCE_MODEL' : { - 1:"VISCOSITE CONSTANTE", - 2:"LONGUEUR DE MELANGE", - 3:"MODELE K-EPSILON", - 4:"SMAGORINSKI", - 7:"MODELE K-OMEGA", - }, -'OPTION_FOR_THE_BOUNDARY_CONDITIONS_OF_K_EPSILON' : { - 1:"pas de turbulence", - 2:"Hans Burchard", - }, -'SCHEME_FOR_ADVECTION_OF_K_EPSILON' : { - 0:"PAS DE CONVECTION", - 1:"CARACTERISTIQUES", - 2:"EXPLICITE + SUPG", - 3:"EXPLICITE LEO POSTMA", - 4:"EXPLICITE + MURD SCHEMA N", - 5:"EXPLICITE + MURD SCHEMA PSI", - 13:"LEO POSTMA POUR BANCS DECOUVRANTS", - 14:"SCHEMA N POUR BANCS DECOUVRANTS", - }, -'SCHEME_FOR_DIFFUSION_OF_K_EPSILON' : { - 0:"PAS DE DIFFUSION", - 1:"IMPLICITE", - }, -'SOLVER_FOR_DIFFUSION_OF_K_EPSILON' : { - 1:"GRADIENT CONJUGUE", - 2:"RESIDU CONJUGUE", - 3:"GRADIENT CONJUGUE SUR EQUATION NORMALE", - 4:"ERREUR MINIMALE", - 5:"GRADIENT CONJUGUE CARRE", - 6:"CGSTAB", - 7:"GMRES", - 8:"SOLVEUR DIRECT", - }, -'PRECONDITIONING_FOR_DIFFUSION_OF_K_EPSILON' : { - 0:"AUCUN", - 2:"DIAGONAL", - 3:"DIAGONAL CONDENSEE", - 5:"DIAGONAL A VALEURS ABSOLUES", - 7:"CROUT", - 11:"GAUSS-SEIDEL EBE", - 13:"MATRICE DEFINIE PAR L UTILISATEUR", - 14:"DIAGONAL ET CROUT", - 17:"SOLVEUR DIRECT SUR LA VERTICALE", - 21:"DIAGONAL CONDENSE ET CROUT", - 34:"DIAGONAL ET SOLVEUR DIRECT SUR LA VERTICALE", - }, -'TREATMENT_ON_TIDAL_FLATS_FOR_K_EPSILON' : { - 0:"FORCAGE A ZERO", - 1:"VALEUR AVANT MASQUAGE", - }, -'TRACERS_VERTICAL_PROFILES' : { - 0:"Programmation utilisateur", - 1:"Constant", - 2:"Constant ou Rouse si sediment", - 3: "Profil de Rouse normalise et concentration imposee", - 4: "Profil de Rouse modifie avec viscosite moleculaire", - }, -'SCHEME_FOR_ADVECTION_OF_TRACERS' : { - 0:"PAS DE CONVECTION", - 1:"CARACTERISTIQUES", - 2:"EXPLICITE + SUPG", - 3:"EXPLICITE LEO POSTMA", - 4:"EXPLICITE + MURD SCHEMA N", - 5:"EXPLICITE + MURD SCHEMA PSI", - 13:"LEO POSTMA POUR BANCS DECOUVRANTS", - 14:"SCHEMA N POUR BANCS DECOUVRANTS", - }, -'SCHEME_FOR_DIFFUSION_OF_TRACERS' : { - 0:"PAS DE DIFFUSION", - 1:"IMPLICITE", - 2:"VERTICAL DIFFUSION ONLY", - }, -'SOLVER_FOR_DIFFUSION_OF_TRACERS' : { - 1:"GRADIENT CONJUGUE", - 2:"RESIDU CONJUGUE", - 3:"GRADIENT CONJUGUE SUR EQUATION NORMALE", - 4:"ERREUR MINIMALE", - 5:"GRADIENT CONJUGUE CARRE", - 6:"CGSTAB", - 7:"GMRES", - 8:"SOLVEUR DIRECT", - }, -'PRECONDITIONING_FOR_DIFFUSION_OF_TRACERS' : { - 0:"AUCUN", - 2:"DIAGONAL", - 3:"DIAGONAL CONDENSEE", - 5:"DIAGONAL A VALEURS ABSOLUES", - 7:"CROUT", - 11:"GAUSS-SEIDEL EBE", - 13:"MATRICE DEFINIE PAR L UTILISATEUR", - 14:"DIAGONAL ET CROUT", - 17:"SOLVEUR DIRECT SUR LA VERTICALE", - 21:"DIAGONAL CONDENSE ET CROUT", - 34:"DIAGONAL ET SOLVEUR DIRECT SUR LA VERTICALE", - }, -'TREATMENT_ON_TIDAL_FLATS_FOR_TRACERS' : { - 0:"FORCAGE A ZERO", - 1:"VALEUR AVANT MASQUAGE", - }, -'SOLVER_FOR_DIFFUSION_OF_THE_SEDIMENT' : { - 1:"GRADIENT CONJUGUE", - 2:"RESIDU CONJUGUE", - 3:"GRADIENT CONJUGUE SUR EQUATION NORMALE", - 4:"ERREUR MINIMALE", - 5:"GRADIENT CONJUGUE CARRE", - 6:"CGSTAB", - 7:"GMRES", - 8:"SOLVEUR DIRECT", - }, -'PRECONDITIONING_FOR_DIFFUSION_OF_THE_SEDIMENT' : { - 0:"AUCUN", - 2:"DIAGONAL", - 3:"DIAGONAL CONDENSEE", - 5:"DIAGONAL A VALEURS ABSOLUES", - 7:"CROUT", - 11:"GAUSS-SEIDEL EBE", - 13:"MATRICE DEFINIE PAR L UTILISATEUR", - 14:"DIAGONAL ET CROUT", - 17:"SOLVEUR DIRECT SUR LA VERTICALE", - 21:"DIAGONAL CONDENSE ET CROUT", - 34:"DIAGONAL ET SOLVEUR DIRECT SUR LA VERTICALE", - }, -} - -DicoCasFrToCata = { - "TITRE":"TITLE", - "PROCESSEURS PARALLELES":"PARALLEL_PROCESSORS", - "VERIFICATION DU MAILLAGE":"CHECKING_THE_MESH", - "NOMBRE MAXIMUM DE FRONTIERES":"MAXIMUM_NUMBER_OF_BOUNDARIES", - "NOMBRE MAXIMUM DE TRACEURS":"MAXIMUM_NUMBER_OF_TRACERS", - "NOMBRE MAXIMUM DE SOURCES":"MAXIMUM_NUMBER_OF_SOURCES", - "NOMBRE MAXIMUM DE FRONTIERES SUR LE FOND":"MAXIMUM_NUMBER_OF_BOUNDARIES_ON_THE_BED", - "LONGUEUR DU VECTEUR":"VECTOR_LENGTH", - "FICHIER DE GEOMETRIE":"GEOMETRY_FILE", - "FORMAT DU FICHIER DE GEOMETRIE":"GEOMETRY_FILE_FORMAT", - "FICHIER DES CONDITIONS AUX LIMITES":"BOUNDARY_CONDITIONS_FILE", - "FICHIER BINAIRE DE DONNEES DE FRONTIERE":"BINARY_BOUNDARY_DATA_FILE", - "FORMAT DU FICHIER BINAIRE DE DONNEES DE FRONTIERE":"BINARY_BOUNDARY_DATA_FILE_FORMAT", - "FICHIER FORTRAN":"FORTRAN_FILE", - "FICHIER DES FONDS":"BOTTOM_TOPOGRAPHY_FILE", - "NOMBRE DE LISSAGES DU FOND":"NUMBER_OF_BOTTOM_SMOOTHINGS", - "FICHIER DE DONNEES FORMATE 1":"FORMATTED_DATA_FILE_1", - "FICHIER DE DONNEES FORMATE 2":"FORMATTED_DATA_FILE_2", - "FICHIER DE DONNEES BINAIRE 1":"BINARY_DATA_FILE_1", - "FORMAT DU FICHIER DE DONNEES BINAIRE 1":"BINARY_DATA_FILE_1_FORMAT", - "FICHIER DE DONNEES BINAIRE 2":"BINARY_DATA_FILE_2", - "VALIDATION":"VALIDATION", - "FICHIER DE REFERENCE":"REFERENCE_FILE", - "FORMAT DU FICHIER DE REFERENCE":"REFERENCE_FILE_FORMAT", - "FICHIER DES RESULTATS 3D":"RD_RESULT_FILE", - "FORMAT DU FICHIER DES RESULTATS 3D":"RD_RESULT_FILE_FORMAT", - "FICHIER DES RESULTATS 2D":"ED_RESULT_FILE", - "FORMAT DU FICHIER DES RESULTATS 2D":"ED_RESULT_FILE_FORMAT", - "FICHIER RESULTAT EN LONGITUDE-LATITUDE":"RESULT_FILE_IN_LONGITUDE_LATITUDE", - "VARIABLES POUR LES SORTIES GRAPHIQUES 3D":"VARIABLES_FOR_3D_GRAPHIC_PRINTOUTS", - "VARIABLES POUR LES SORTIES GRAPHIQUES 2D":"VARIABLES_FOR_2D_GRAPHIC_PRINTOUTS", - "PERIODE POUR LES SORTIES GRAPHIQUES":"GRAPHIC_PRINTOUT_PERIOD", - "NUMERO DU PREMIER PAS DE TEMPS POUR LES SORTIES GRAPHIQUES":"NUMBER_OF_FIRST_TIME_STEP_FOR_GRAPHIC_PRINTOUTS", - "BINAIRE DU FICHIER DES RESULTATS 3D":"RD_RESULT_FILE_BINARY", - "BINAIRE DU FICHIER DES RESULTATS 2D":"ED_RESULT_FILE_BINARY", - "NOMBRE DE TABLEAUX PRIVES":"NUMBER_OF_PRIVATE_ARRAYS", - "NOMBRE DE TABLEAUX PRIVES 2D":"NUMBER_OF_2D_PRIVATE_ARRAYS", - "NOMS DES VARIABLES PRIVEES 2D":"NAMES_OF_2D_PRIVATE_VARIABLES", - "FICHIER DE RESULTATS FORMATE":"FORMATTED_RESULTS_FILE", - "FICHIER DE RESULTATS BINAIRE":"BINARY_RESULTS_FILE", - "SORTIE LISTING":"LISTING_PRINTOUT", - "BILAN DE MASSE":"MASS_BALANCE", - "INFORMATION SUR LE BILAN DE MASSE A CHAQUE SORTIE LISTING":"INFORMATION_ABOUT_MASS_BALANCE_FOR_EACH_LISTING_PRINTOUT", - "PERIODE POUR LES SORTIES LISTING":"LISTING_PRINTOUT_PERIOD", - "NUMERO DU PREMIER PAS DE TEMPS POUR LES SORTIES LISTING":"NUMBER_OF_FIRST_TIME_STEP_FOR_LISTING_PRINTOUTS", - "SUITE DE CALCUL":"COMPUTATION_CONTINUED", - "FICHIER DU CALCUL PRECEDENT":"PREVIOUS_COMPUTATION_FILE", - "FORMAT DU FICHIER DU CALCUL PRECEDENT":"PREVIOUS_COMPUTATION_FILE_FORMAT", - "ENREGISTREMENT POUR SUITE DE CALCUL":"RECORD_NUMBER_FOR_RESTART", - "REMISE A ZERO DU TEMPS":"INITIAL_TIME_SET_TO_ZERO", - "MODE SUITE":"RESTART_MODE", - "FICHIER POUR SUITE":"RESTART_FILE", - "FORMAT DU FICHIER POUR SUITE":"RESTART_FILE_FORMAT", - "SUITE 2D":"ED_CONTINUATION", - "FICHIER POUR SUITE 2D":"FILE_FOR_2D_CONTINUATION", - "FORMAT DU FICHIER POUR SUITE 2D":"FILE_FOR_2D_CONTINUATION_FORMAT", - "DEBUGGER":"DEBUGGER", - "PAS DE TEMPS":"TIME_STEP", - "NOMBRE DE PAS DE TEMPS":"NUMBER_OF_TIME_STEPS", - "DUREE DU CALCUL":"DURATION", - "DATE DE L'ORIGINE DES TEMPS":"ORIGINAL_DATE_OF_TIME", - "HEURE DE L'ORIGINE DES TEMPS":"ORIGINAL_HOUR_OF_TIME", - "COORDONNEES SPHERIQUES":"SPHERICAL_COORDINATES", - "TYPE DE PROJECTION SPATIALE":"SPATIAL_PROJECTION_TYPE", - "LATITUDE DU POINT ORIGINE":"LATITUDE_OF_ORIGIN_POINT", - "LONGITUDE DU POINT ORIGINE":"LONGITUDE_OF_ORIGIN_POINT", - "NORD":"NORTH", - "COORDONNEES DE L'ORIGINE":"ORIGIN_COORDINATES", - "NOMBRE DE PLANS HORIZONTAUX":"NUMBER_OF_HORIZONTAL_LEVELS", - "TRANSFORMATION DU MAILLAGE":"MESH_TRANSFORMATION", - "NOMBRE DE SOUS ITERATIONS POUR LES NON LINEARITES":"NUMBER_OF_SUB_ITERATIONS_FOR_NON_LINEARITIES", - "ZERO":"ZERO", - "ETAPE DE CONVECTION":"ADVECTION_STEP", - "TRAITEMENT DES FLUX AUX FRONTIERES":"TREATMENT_OF_FLUXES_AT_THE_BOUNDARIES", - "OPTION DE SUPG":"SUPG_OPTION", - "MAXIMUM D'ITERATIONS POUR LES SCHEMAS DE CONVECTION":"MAXIMUM_NUMBER_OF_ITERATIONS_FOR_ADVECTION_SCHEMES", - "NOMBRE DE SOUS-PAS DES SCHEMAS DISTRIBUTIFS":"NUMBER_OF_SUB_STEPS_OF_DISTRIBUTIVE_SCHEMES", - "NOMBRE DE CORRECTIONS DES SCHEMAS DISTRIBUTIFS":"NUMBER_OF_CORRECTIONS_OF_DISTRIBUTIVE_SCHEMES", - "MASS-LUMPING POUR LA DIFFUSION":"MASS_LUMPING_FOR_DIFFUSION", - "VERSION NON-HYDROSTATIQUE":"NON_HYDROSTATIC_VERSION", - "ELEMENTS MASQUES PAR L'UTILISATEUR":"ELEMENTS_MASKED_BY_USER", - "ACCELERATION DE LA PESANTEUR":"GRAVITY_ACCELERATION", - "MASSE VOLUMIQUE MOYENNE DE L'EAU":"AVERAGE_WATER_DENSITY", - "LOI DE FROTTEMENT SUR LE FOND":"LAW_OF_BOTTOM_FRICTION", - "COEFFICIENT DE FROTTEMENT POUR LE FOND":"FRICTION_COEFFICIENT_FOR_THE_BOTTOM", - "LOI DE FROTTEMENT SUR LES PAROIS LATERALES":"LAW_OF_FRICTION_ON_LATERAL_BOUNDARIES", - "COEFFICIENT DE FROTTEMENT POUR LES PAROIS LATERALES":"FRICTION_COEFFICIENT_FOR_LATERAL_SOLID_BOUNDARIES", - "CORIOLIS":"CORIOLIS", - "COEFFICIENT DE CORIOLIS":"CORIOLIS_COEFFICIENT", - "VENT":"WIND", - "OPTION DU VENT":"OPTION_FOR_WIND", - "VITESSE DU VENT SUIVANT X":"WIND_VELOCITY_ALONG_X", - "VITESSE DU VENT SUIVANT Y":"WIND_VELOCITY_ALONG_Y", - "COEFFICIENT D'INFLUENCE DU VENT":"COEFFICIENT_OF_WIND_INFLUENCE", - "COEFFICIENT D'INFLUENCE DU VENT DEPENDANT DE LA VITESSE DU VENT":"COEFFICIENT_OF_WIND_INFLUENCE_VARYING_WITH_WIND_SPEED", - "PROFONDEUR LIMITE POUR LE VENT":"THRESHOLD_DEPTH_FOR_WIND", - "PRESSION ATMOSPHERIQUE":"AIR_PRESSURE", - "VALEUR DE LA PRESSION ATMOSPHERIQUE":"VALUE_OF_ATMOSPHERIC_PRESSURE", - "PLUIE OU EVAPORATION":"RAIN_OR_EVAPORATION", - "PLUIE OU EVAPORATION EN MM PAR JOUR":"RAIN_OR_EVAPORATION_IN_MM_PER_DAY", - "FICHIER ASCII DE DONNEES ATMOSPHERIQUES":"ASCII_ATMOSPHERIC_DATA_FILE", - "FICHIER BINAIRE DE DONNEES ATMOSPHERIQUES":"BINARY_ATMOSPHERIC_DATA_FILE", - "FORMAT DU FICHIER BINAIRE DE DONNEES ATMOSPHERIQUES":"BINARY_ATMOSPHERIC_DATA_FILE_FORMAT", - "FICHIER DES SOURCES":"SOURCES_FILE", - "NUMEROS GLOBAUX DES NOEUDS DES SOURCES":"GLOBAL_NUMBERS_OF_SOURCE_NODES", - "TYPE DES SOURCES":"TYPE_OF_SOURCES", - "ABSCISSES DES SOURCES":"ABSCISSAE_OF_SOURCES", - "ORDONNEES DES SOURCES":"ORDINATES_OF_SOURCES", - "COTES DES SOURCES":"ELEVATIONS_OF_SOURCES", - "DEBITS DES SOURCES":"WATER_DISCHARGE_OF_SOURCES", - "VITESSES DES SOURCES SELON X":"VELOCITIES_OF_THE_SOURCES_ALONG_X", - "VITESSES DES SOURCES SELON Y":"VELOCITIES_OF_THE_SOURCES_ALONG_Y", - "VITESSES DES SOURCES SELON Z":"VELOCITIES_OF_THE_SOURCES_ALONG_Z", - "COURANTS DE HOULE":"WAVE_DRIVEN_CURRENTS", - "NUMERO DE L'ENREGISTREMENT DANS LE FICHIER DE HOULE":"RECORD_NUMBER_IN_WAVE_FILE", - "COTES IMPOSEES":"PRESCRIBED_ELEVATIONS", - "DEBITS IMPOSES":"PRESCRIBED_FLOWRATES", - "VITESSES IMPOSEES":"PRESCRIBED_VELOCITIES", - "FICHIER DES FRONTIERES LIQUIDES":"LIQUID_BOUNDARIES_FILE", - "PROFILS DE VITESSE":"VELOCITY_PROFILES", - "PROFILS DE VITESSE SUR LA VERTICALE":"VELOCITY_VERTICAL_PROFILES", - "COURBES DE TARAGE":"STAGE_DISCHARGE_CURVES", - "FICHIER DES COURBES DE TARAGE":"STAGE_DISCHARGE_CURVES_FILE", - "OPTION POUR LES FRONTIERES LIQUIDES":"OPTION_FOR_LIQUID_BOUNDARIES", - "REGIME DE TURBULENCE POUR LE FOND":"TURBULENCE_REGIME_FOR_THE_BOTTOM", - "REGIME DE TURBULENCE POUR LES PAROIS LATERALES":"TURBULENCE_REGIME_FOR_LATERAL_SOLID_BOUNDARIES", - "CONDITION A LA LIMITE AU FOND":"BOUNDARY_CONDITION_ON_THE_BOTTOM", - "VITESSE PROJETEE SUR LES PAROIS LATERALES SOLIDES":"VELOCITY_PROJECTED_ON_SOLID_LATERAL_BOUNDARIES", - "VITESSE PROJETEE SUR LE FOND":"VELOCITY_PROJECTED_ON_BOTTOM", - "CONDITIONS OUVERTES SUR LE FOND":"OPEN_BOUNDARY_CONDITIONS_ON_THE_BED", - "DEBITS IMPOSES SUR LE FOND":"PRESCRIBED_FLOWRATES_ON_THE_BED", - "CONDITIONS INITIALES":"INITIAL_CONDITIONS", - "COTE INITIALE":"INITIAL_ELEVATION", - "HAUTEUR INITIALE":"INITIAL_DEPTH", - "STOCKAGE DES MATRICES":"MATRIX_STORAGE", - "MASS-LUMPING POUR LA HAUTEUR":"MASS_LUMPING_FOR_DEPTH", - "FILTRE LES INCONSISTANCES HYDROSTATIQUES":"HYDROSTATIC_INCONSISTENCY_FILTER", - "ELEMENT":"ELEMENT", - "SOLVEUR POUR LA PROPAGATION":"SOLVER_FOR_PROPAGATION", - "PRECISION POUR LA PROPAGATION":"ACCURACY_FOR_PROPAGATION", - "MAXIMUM D'ITERATIONS POUR LA PROPAGATION":"MAXIMUM_NUMBER_OF_ITERATIONS_FOR_PROPAGATION", - "PRECONDITIONNEMENT POUR LA PROPAGATION":"PRECONDITIONING_FOR_PROPAGATION", - "OPTION DU SOLVEUR POUR LA PROPAGATION":"OPTION_OF_SOLVER_FOR_PROPAGATION", - "ORDRE DU TIR INITIAL POUR LA HAUTEUR":"INITIAL_GUESS_FOR_DEPTH", - "PROPAGATION LINEARISEE":"LINEARIZED_PROPAGATION", - "PROFONDEUR MOYENNE POUR LA LINEARISATION":"MEAN_DEPTH_FOR_LINEARIZATION", - "SCHEMA POUR LA CONVECTION DE LA HAUTEUR":"SCHEME_FOR_ADVECTION_OF_DEPTH", - "SCHEMA POUR LA CONVECTION DES VITESSES":"SCHEME_FOR_ADVECTION_OF_VELOCITIES", - "COMPATIBILITE DU GRADIENT DE SURFACE LIBRE":"FREE_SURFACE_GRADIENT_COMPATIBILITY", - "CONTOURNEMENT DES VOLUMES NULS":"BYPASS_VOID_VOLUMES", - "MASS-LUMPING POUR LES VITESSES":"MASS_LUMPING_FOR_VELOCITIES", - "OPTION DU SCHEMA POUR LA CONVECTION DES VITESSES":"SCHEME_OPTION_FOR_ADVECTION_OF_VELOCITIES", - "OPTION POUR LES CARACTERISTIQUES":"OPTION_FOR_CHARACTERISTICS", - "NOMBRE DE POINTS DE GAUSS POUR LES CARACTERISTIQUES FAIBLES":"NUMBER_OF_GAUSS_POINTS_FOR_WEAK_CHARACTERISTICS", - "MASS-LUMPING POUR LES CARACTERISTIQUES FAIBLES":"MASS_LUMPING_FOR_WEAK_CHARACTERISTICS", - "SCHEMA POUR LA DIFFUSION DES VITESSES":"SCHEME_FOR_DIFFUSION_OF_VELOCITIES", - "SOLVEUR POUR LA DIFFUSION DES VITESSES":"SOLVER_FOR_DIFFUSION_OF_VELOCITIES", - "PRECISION POUR LA DIFFUSION DES VITESSES":"ACCURACY_FOR_DIFFUSION_OF_VELOCITIES", - "MAXIMUM D'ITERATIONS POUR LA DIFFUSION DES VITESSES":"MAXIMUM_NUMBER_OF_ITERATIONS_FOR_DIFFUSION_OF_VELOCITIES", - "PRECONDITIONNEMENT POUR LA DIFFUSION DES VITESSES":"PRECONDITIONING_FOR_DIFFUSION_OF_VELOCITIES", - "OPTION DU SOLVEUR POUR LA DIFFUSION DES VITESSES":"OPTION_OF_SOLVER_FOR_DIFFUSION_OF_VELOCITIES", - "IMPLICITATION POUR LA DIFFUSION":"IMPLICITATION_FOR_DIFFUSION", - "SOLVEUR POUR PPE":"SOLVER_FOR_PPE", - "PRECISION POUR PPE":"ACCURACY_FOR_PPE", - "MAXIMUM D'ITERATIONS POUR PPE":"MAXIMUM_NUMBER_OF_ITERATIONS_FOR_PPE", - "PRECONDITIONNEMENT POUR PPE":"PRECONDITIONING_FOR_PPE", - "OPTION DU SOLVEUR POUR PPE":"OPTION_OF_SOLVER_FOR_PPE", - "PRESSION DYNAMIQUE DANS L'EQUATION D'ONDE":"DYNAMIC_PRESSURE_IN_WAVE_EQUATION", - "CONDITION LIMITE DYNAMIQUE":"DYNAMIC_BOUNDARY_CONDITION", - "CORRECTION DE CONTINUITE SUR FRONTIERES OUVERTES":"CONTINUITY_CORRECTION_ON_OPEN_BOUNDARIES", - "SOLVEUR POUR LA VITESSE VERTICALE":"SOLVER_FOR_VERTICAL_VELOCITY", - "PRECISION POUR LA VITESSE VERTICALE":"ACCURACY_FOR_VERTICAL_VELOCITY", - "MAXIMUM D'ITERATIONS POUR LA VITESSE VERTICALE":"MAXIMUM_NUMBER_OF_ITERATIONS_FOR_VERTICAL_VELOCITY", - "PRECONDITIONNEMENT POUR LA VITESSE VERTICALE":"PRECONDITIONING_FOR_VERTICAL_VELOCITY", - "IMPLICITATION POUR LA HAUTEUR":"IMPLICITATION_FOR_DEPTH", - "IMPLICITATION POUR LES VITESSES":"IMPLICITATION_FOR_VELOCITIES", - "BANCS DECOUVRANTS":"TIDAL_FLATS", - "OPTION DE TRAITEMENT DES BANCS DECOUVRANTS":"OPTION_FOR_THE_TREATMENT_OF_TIDAL_FLATS", - "TRAITEMENT DES HAUTEURS NEGATIVES":"TREATMENT_OF_NEGATIVE_DEPTHS", - "TRAITEMENT SUR LES BANCS DECOUVRANTS POUR LES VITESSES":"TREATMENT_ON_TIDAL_FLATS_FOR_VELOCITIES", - "SEUIL POUR CORRECTION DE VISCOSITE SUR BANCS DECOUVRANTS":"THRESHOLD_FOR_VISCOSITY_CORRECTION_ON_TIDAL_FLATS", - "VALEUR MINIMALE POUR LA HAUTEUR":"MINIMAL_VALUE_FOR_DEPTH", - "BASE BINAIRE 1 DE DONNEES DE MAREE":"BINARY_DATABASE_1_FOR_TIDE", - "BASE BINAIRE 2 DE DONNEES DE MAREE":"BINARY_DATABASE_2_FOR_TIDE", - "SYSTEME GEOGRAPHIQUE":"GEOGRAPHIC_SYSTEM", - "NUMERO DE FUSEAU OU PROJECTION DANS LE SYSTEME GEOGRAPHIQUE":"ZONE_NUMBER_IN_GEOGRAPHIC_SYSTEM", - "FICHIER DE CONVERSION LAMBERT 93":"LAMBERT_93_CONVERSION_FILE", - "COEFFICIENT DE CALAGE DU NIVEAU DE MER":"COEFFICIENT_TO_CALIBRATE_SEA_LEVEL", - "NUMERO GLOBAL DU POINT POUR CALER LA PLEINE MER":"GLOBAL_NUMBER_OF_THE_POINT_TO_CALIBRATE_HIGH_WATER", - "INTERPOLATION DE COMPOSANTES MINEURES":"MINOR_CONSTITUENTS_INFERENCE", - "FORCE GENERATRICE DE LA MAREE":"TIDE_GENERATING_FORCE", - "OPTION POUR LES CONDITIONS AUX LIMITES DE MAREE":"OPTION_FOR_TIDAL_BOUNDARY_CONDITIONS", - "BASE DE DONNEES DE MAREE":"TIDAL_DATA_BASE", - "FICHIER DES CONSTANTES HARMONIQUES":"HARMONIC_CONSTANTS_FILE", - "FICHIER DU MODELE DE MAREE":"TIDAL_MODEL_FILE", - "FORMAT DU FICHIER DU MODELE DE MAREE":"TIDAL_MODEL_FILE_FORMAT", - "BASE ASCII DE DONNEES DE MAREE":"ASCII_DATABASE_FOR_TIDE", - "COEFFICIENT DE CALAGE DU MARNAGE":"COEFFICIENT_TO_CALIBRATE_TIDAL_RANGE", - "COEFFICIENT DE CALAGE DES VITESSES DE COURANT":"COEFFICIENT_TO_CALIBRATE_TIDAL_VELOCITIES", - "NUMERO LOCAL DU POINT POUR CALER LA PLEINE MER":"LOCAL_NUMBER_OF_THE_POINT_TO_CALIBRATE_HIGH_WATER", - "NOMBRE DE FLOTTEURS":"NUMBER_OF_DROGUES", - "FICHIER DES FLOTTEURS":"DROGUES_FILE", - "PERIODE POUR LES SORTIES DE FLOTTEURS":"PRINTOUT_PERIOD_FOR_DROGUES", - "MODELE DE NAPPES D'HYDROCARBURES":"OIL_SPILL_MODEL", - "FICHIER DE COMMANDES HYDROCARBURES":"OIL_SPILL_STEERING_FILE", - "NOMBRE DE BUSES":"NUMBER_OF_CULVERTS", - "FICHIER DE DONNEES DES BUSES":"CULVERTS_DATA_FILE", - "OPTION POUR LES BUSES":"OPTION_FOR_CULVERTS", - "MODELE DE TURBULENCE HORIZONTAL":"HORIZONTAL_TURBULENCE_MODEL", - "MODELE DE TURBULENCE VERTICAL":"VERTICAL_TURBULENCE_MODEL", - "COEFFICIENT DE DIFFUSION HORIZONTAL DES VITESSES":"COEFFICIENT_FOR_HORIZONTAL_DIFFUSION_OF_VELOCITIES", - "COEFFICIENT DE DIFFUSION VERTICAL DES VITESSES":"COEFFICIENT_FOR_VERTICAL_DIFFUSION_OF_VELOCITIES", - "MODELE DE LONGUEUR DE MELANGE":"MIXING_LENGTH_MODEL", - "FONCTION D'AMORTISSEMENT":"DAMPING_FUNCTION", - "NOMBRE DE PRANDTL":"PRANDTL_NUMBER", - "CONSTANTE DE KARMAN":"KARMAN_CONSTANT", - "HAUTEUR DU LIT FICTIF":"FICTITIOUS_BED_LEVEL", - "OPTION POUR LES CONDITIONS AUX LIMITES DU K-EPSILON":"OPTION_FOR_THE_BOUNDARY_CONDITIONS_OF_K_EPSILON", - "DERIVEES VERTICALES DES VITESSES":"VERTICAL_VELOCITY_DERIVATIVES", - "SCHEMA POUR LA CONVECTION DU K-EPSILON":"SCHEME_FOR_ADVECTION_OF_K_EPSILON", - "OPTION DU SCHEMA POUR LA CONVECTION DU K-EPSILON":"SCHEME_OPTION_FOR_ADVECTION_OF_K_EPSILON", - "SCHEMA POUR LA DIFFUSION DU K-EPSILON":"SCHEME_FOR_DIFFUSION_OF_K_EPSILON", - "SOLVEUR POUR LA DIFFUSION DU K-EPSILON":"SOLVER_FOR_DIFFUSION_OF_K_EPSILON", - "PRECISION POUR LA DIFFUSION DU K-EPSILON":"ACCURACY_FOR_DIFFUSION_OF_K_EPSILON", - "MAXIMUM D'ITERATIONS POUR LA DIFFUSION DU K-EPSILON":"MAXIMUM_NUMBER_OF_ITERATIONS_FOR_DIFFUSION_OF_K_EPSILON", - "PRECONDITIONNEMENT POUR LA DIFFUSION DU K-EPSILON":"PRECONDITIONING_FOR_DIFFUSION_OF_K_EPSILON", - "OPTION DU SOLVEUR POUR LA DIFFUSION DU K-EPSILON":"OPTION_OF_SOLVER_FOR_DIFFUSION_OF_K_EPSILON", - "TRAITEMENT SUR LES BANCS DECOUVRANTS POUR LE K-EPSILON":"TREATMENT_ON_TIDAL_FLATS_FOR_K_EPSILON", - "NOMBRE DE TRACEURS":"NUMBER_OF_TRACERS", - "NOMS DES TRACEURS":"NAMES_OF_TRACERS", - "VALEURS DES TRACEURS DANS LA PLUIE":"VALUES_OF_TRACERS_IN_THE_RAIN", - "VALEURS DES TRACEURS DES SOURCES":"VALUE_OF_THE_TRACERS_AT_THE_SOURCES", - "LOI DE DENSITE":"DENSITY_LAW", - "VALEURS DE REFERENCE DES TRACEURS":"STANDARD_VALUES_FOR_TRACERS", - "COEFFICIENT DE DILATATION BETA POUR LES TRACEURS":"BETA_EXPANSION_COEFFICIENT_FOR_TRACERS", - "VALEURS IMPOSEES DES TRACEURS":"PRESCRIBED_TRACERS_VALUES", - "PROFILS DES TRACEURS SUR LA VERTICALE":"TRACERS_VERTICAL_PROFILES", - "VALEURS INITIALES DES TRACEURS":"INITIAL_VALUES_OF_TRACERS", - "SCHEMA POUR LA CONVECTION DES TRACEURS":"SCHEME_FOR_ADVECTION_OF_TRACERS", - "OPTION DU SCHEMA POUR LA CONVECTION DES TRACEURS":"SCHEME_OPTION_FOR_ADVECTION_OF_TRACERS", - "SCHEMA POUR LA DIFFUSION DES TRACEURS":"SCHEME_FOR_DIFFUSION_OF_TRACERS", - "SOLVEUR POUR LA DIFFUSION DES TRACEURS":"SOLVER_FOR_DIFFUSION_OF_TRACERS", - "PRECISION POUR LA DIFFUSION DES TRACEURS":"ACCURACY_FOR_DIFFUSION_OF_TRACERS", - "MAXIMUM D'ITERATIONS POUR LA DIFFUSION DES TRACEURS":"MAXIMUM_NUMBER_OF_ITERATIONS_FOR_DIFFUSION_OF_TRACERS", - "PRECONDITIONNEMENT POUR LA DIFFUSION DES TRACEURS":"PRECONDITIONING_FOR_DIFFUSION_OF_TRACERS", - "OPTION DU SOLVEUR POUR LA DIFFUSION DES TRACEURS":"OPTION_OF_SOLVER_FOR_DIFFUSION_OF_TRACERS", - "TRAITEMENT SUR LES BANCS DECOUVRANTS POUR LES TRACEURS":"TREATMENT_ON_TIDAL_FLATS_FOR_TRACERS", - "COEFFICIENT DE DIFFUSION HORIZONTAL DES TRACEURS":"COEFFICIENT_FOR_HORIZONTAL_DIFFUSION_OF_TRACERS", - "COEFFICIENT DE DIFFUSION VERTICAL DES TRACEURS":"COEFFICIENT_FOR_VERTICAL_DIFFUSION_OF_TRACERS", - "SEDIMENT":"SEDIMENT", - "MASSE VOLUMIQUE DU SEDIMENT":"DENSITY_OF_THE_SEDIMENT", - "PAS DE TEMPS DE LA CONSOLIDATION":"TIME_STEP_FOR_CONSOLIDATION", - "SEDIMENT COHESIF":"COHESIVE_SEDIMENT", - "PARAMETRE DE SHIELDS":"SHIELDS_PARAMETER", - "SEDIMENT MIXTE":"MIXED_SEDIMENT", - "NOMBRE DE COUCHES DU LIT COHESIF":"NUMBER_OF_SEDIMENT_BED_LAYERS", - "LECTURE CONTRAINTE CRITIQUE POUR CHAQUE COUCHE":"READ_CRITICAL_BED_SHEAR_STRESS_PER_LAYER", - "FICHIER DES RESULTATS SEDIMENTOLOGIQUES":"SEDIMENTOLOGICAL_RESULT_FILE", - "BINAIRE DU FICHIER DES RESULTATS SEDIMENTOLOGIQUES":"SEDIMENTOLOGICAL_RESULT_FILE_BINARY", - "FICHIER SEDIMENTOLOGIQUE DU CALCUL PRECEDENT":"PREVIOUS_COMPUTATION_SEDIMENTOLOGICAL_FILE", - "DIAMETRE MOYEN DES GRAINS":"MEAN_DIAMETER_OF_THE_SEDIMENT", - "RATIO ENTRE LA RUGOSITE DE PEAU ET LE DIAMETRE MOYEN":"RATIO_BETWEEN_SKIN_FRICTION_AND_MEAN_DIAMETER", - "CORRECTION FROTTEMENT DE PEAU":"SKIN_FRICTION_CORRECTION", - "POURCENTAGE INITIAL DE SEDIMENT NON COHESIF":"INITIAL_PERCENTAGE_OF_NON_COHESIVE_SEDIMENT", - "CONCENTRATIONS DES COUCHES DE VASE":"MUD_CONCENTRATIONS_PER_LAYER", - "CONTRAINTE CRITIQUE D'EROSION DES COUCHES DE VASE":"CRITICAL_EROSION_SHEAR_STRESS_OF_THE_MUD_LAYERS", - "EPAISSEURS INITIALES DES COUCHES":"INITIAL_THICKNESS_OF_SEDIMENT_LAYERS", - "SOLVEUR POUR LA DIFFUSION DU SEDIMENT":"SOLVER_FOR_DIFFUSION_OF_THE_SEDIMENT", - "PRECISION POUR LA DIFFUSION DU SEDIMENT":"ACCURACY_FOR_DIFFUSION_OF_SEDIMENT", - "MAXIMUM D'ITERATIONS POUR LA DIFFUSION DU SEDIMENT":"MAXIMUM_NUMBER_OF_ITERATIONS_FOR_DIFFUSION_OF_SEDIMENT", - "PRECONDITIONNEMENT POUR LA DIFFUSION DU SEDIMENT":"PRECONDITIONING_FOR_DIFFUSION_OF_THE_SEDIMENT", - "OPTION DU SOLVEUR POUR LA DIFFUSION DU SEDIMENT":"OPTION_OF_SOLVER_FOR_DIFFUSION_OF_THE_SEDIMENT", - "SEUIL LIMITE POUR EROSION SUR BANCS DECOUVRANTS":"THRESHOLD_FOR_SEDIMENT_FLUX_CORRECTION_ON_TIDAL_FLATS", - "CONTRAINTE CRITIQUE DE DEPOT":"CRITICAL_SHEAR_STRESS_FOR_DEPOSITION", - "POROSITE DU LIT NON COHESIF":"NON_COHESIVE_BED_POROSITY", - "COEFFICIENT D'EROSION":"EROSION_COEFFICIENT", - "VITESSE DE CHUTE CONSTANTE":"CONSTANT_SEDIMENT_SETTLING_VELOCITY", - "VITESSE DE CHUTE DES SABLES":"SETTLING_VELOCITY_OF_SANDS", - "SCHEMA DE CONVECTION DIFFUSION AVEC VITESSE DE CHUTE":"ADVECTION_DIFFUSION_SCHEME_WITH_SETTLING_VELOCITY", - "VITESSE DE CHUTE ENTRAVEE":"HINDERED_SETTLING", - "CONCENTRATION LIMITE FLUIDE-SOLIDE":"WEAK_SOIL_CONCENTRATION_FOR_MUD", - "CONCENTRATION LIMITE POUR VITESSE DE CHUTE ENTRAVEE":"THRESHOLD_CONCENTRATION_FOR_HINDERED_SETTLING", - "FORMULE POUR VITESSE DE CHUTE ENTRAVEE":"HINDERED_SETTLING_FORMULA", - "FORMULE POUR LA CONCENTRATION DE REFERENCE":"REFERENCE_CONCENTRATION_FORMULA", - "FLOCULATION":"FLOCCULATION", - "FORMULE POUR FLOCULATION":"FLOCCULATION_FORMULA", - "COEFFICIENT TRADUISANT LA FORMATION DES FLOCS":"FLOCCULATION_COEFFICIENT", - "COEFFICIENT TRADUISANT LA DESTRUCTION DES FLOCS":"COEFFICIENT_RELATIVE_TO_FLOC_DESTRUCTION", - "EPAISSEUR DES COUCHES DU FOND VASEUX":"BED_LAYERS_THICKNESS", - "CONCENTRATION MAXIMUM DE LA VASE TASSEE":"MAXIMUM_CONCENTRATION_OF_THE_CONSOLIDATED_MUD", - "TEMPS DE SEJOUR DE LA VASE":"RESIDENCE_TIME_FOR_MUD", - "TASSEMENT DE LA VASE":"CONSOLIDATION", - "OPTION DU MODELE DE TASSEMENT":"CONSOLIDATION_MODEL", - "COUPLAGE AVEC":"COUPLING_WITH", - "FICHIER DES PARAMETRES DE SISYPHE":"SISYPHE_STEERING_FILE", - "PERIODE DE COUPLAGE POUR SISYPHE":"COUPLING_PERIOD_FOR_SISYPHE", - "FICHIER DES PARAMETRES DE TOMAWAC":"TOMAWAC_STEERING_FILE", - "PERIODE DE COUPLAGE POUR TOMAWAC":"COUPLING_PERIOD_FOR_TOMAWAC", - "PROCESSUS DE QUALITE D'EAU":"WATER_QUALITY_PROCESS", - "FICHIER DES PARAMETRES DE WAQTEL":"WAQTEL_STEERING_FILE", - "FICHIER DE COMMANDE DELWAQ":"DELWAQ_STEERING_FILE", - "PERIODE DE SORTIE POUR DELWAQ":"DELWAQ_PRINTOUT_PERIOD", - "FICHIER DELWAQ DES ECHANGES ENTRE NOEUDS":"EXCHANGES_BETWEEN_NODES_DELWAQ_FILE", - "FICHIER DELWAQ DES DISTANCES ENTRE NOEUDS":"NODES_DISTANCES_DELWAQ_FILE", - "FICHIER DELWAQ DES SURFACES DU FOND":"BOTTOM_SURFACES_DELWAQ_FILE", - "FICHIER DELWAQ DES VOLUMES":"VOLUMES_DELWAQ_FILE", - "FICHIER DELWAQ DES SURFACES DE FLUX":"EXCHANGE_AREAS_DELWAQ_FILE", - "FICHIER DELWAQ DES FLUX VERTICAUX":"VERTICAL_FLUXES_DELWAQ_FILE", - "FICHIER DELWAQ DE LA VITESSE":"VELOCITY_DELWAQ_FILE", - "FICHIER DELWAQ DE LA DIFFUSION":"DIFFUSIVITY_DELWAQ_FILE", - "FICHIER DELWAQ DE LA TEMPERATURE":"TEMPERATURE_DELWAQ_FILE", - "FICHIER DELWAQ DE LA SALINITE":"SALINITY_DELWAQ_FILE", - "VITESSE POUR DELWAQ":"VELOCITY_FOR_DELWAQ", - "DIFFUSION POUR DELWAQ":"DIFFUSION_FOR_DELWAQ", - "TEMPERATURE POUR DELWAQ":"TEMPERATURE_FOR_DELWAQ", - "SALINITE POUR DELWAQ":"SALINITY_FOR_DELWAQ", - "AD NOMBRE DES DERIVEES":"AD_NUMBER_OF_DERIVATIVES", - "AD NOMS DES DERIVEES":"AD_NAMES_OF_DERIVATIVES", - "AD NOMBRE DE DIRECTIONS":"AD_NUMBER_OF_DIRECTIONS", - "AD SOLVEUR LINEAIRE SYMBOLIQUE":"AD_SYMBOLIC_LINEAR_SOLVER", - "AD REMISE A ZERO DES DERIVEES DU SOLVEUR LINEAIRE":"AD_LINEAR_SOLVER_RESET_DERIVATIVES", - "AD CONVERGENCE DES DERIVEES POUR LE SOLVEUR LINEAIRE":"AD_LINEAR_SOLVER_DERIVATIVE_CONVERGENCE", - "PARTITIONNEUR":"PARTITIONING_TOOL", - "FICHIER DES PARAMETRES":"STEERING_FILE", - "NUMERO DE VERSION":"RELEASE", - "DICTIONNAIRE":"DICTIONARY", - "LISTE DES FICHIERS":"LIST_OF_FILES", - "DESCRIPTION DES LIBRAIRIES":"DESCRIPTION_OF_LIBRARIES", - "EXECUTABLE PAR DEFAUT":"DEFAULT_EXECUTABLE", - "EXECUTABLE PARALLELE PAR DEFAUT":"DEFAULT_PARALLEL_EXECUTABLE", -} - -DicoCasEnToCata = { - 'TITLE':'TITLE', - 'PARALLEL PROCESSORS':'PARALLEL_PROCESSORS', - 'CHECKING THE MESH':'CHECKING_THE_MESH', - 'MAXIMUM NUMBER OF BOUNDARIES':'MAXIMUM_NUMBER_OF_BOUNDARIES', - 'MAXIMUM NUMBER OF TRACERS':'MAXIMUM_NUMBER_OF_TRACERS', - 'MAXIMUM NUMBER OF SOURCES':'MAXIMUM_NUMBER_OF_SOURCES', - 'MAXIMUM NUMBER OF BOUNDARIES ON THE BED':'MAXIMUM_NUMBER_OF_BOUNDARIES_ON_THE_BED', - 'VECTOR LENGTH':'VECTOR_LENGTH', - 'GEOMETRY FILE':'GEOMETRY_FILE', - 'GEOMETRY FILE FORMAT':'GEOMETRY_FILE_FORMAT', - 'BOUNDARY CONDITIONS FILE':'BOUNDARY_CONDITIONS_FILE', - 'BINARY BOUNDARY DATA FILE':'BINARY_BOUNDARY_DATA_FILE', - 'BINARY BOUNDARY DATA FILE FORMAT':'BINARY_BOUNDARY_DATA_FILE_FORMAT', - 'FORTRAN FILE':'FORTRAN_FILE', - 'BOTTOM TOPOGRAPHY FILE':'BOTTOM_TOPOGRAPHY_FILE', - 'NUMBER OF BOTTOM SMOOTHINGS':'NUMBER_OF_BOTTOM_SMOOTHINGS', - 'FORMATTED DATA FILE 1':'FORMATTED_DATA_FILE_1', - 'FORMATTED DATA FILE 2':'FORMATTED_DATA_FILE_2', - 'BINARY DATA FILE 1':'BINARY_DATA_FILE_1', - 'BINARY DATA FILE 1 FORMAT':'BINARY_DATA_FILE_1_FORMAT', - 'BINARY DATA FILE 2':'BINARY_DATA_FILE_2', - 'VALIDATION':'VALIDATION', - 'REFERENCE FILE':'REFERENCE_FILE', - 'REFERENCE FILE FORMAT':'REFERENCE_FILE_FORMAT', - '3D RESULT FILE':'RD_RESULT_FILE', - '3D RESULT FILE FORMAT':'RD_RESULT_FILE_FORMAT', - '2D RESULT FILE':'ED_RESULT_FILE', - '2D RESULT FILE FORMAT':'ED_RESULT_FILE_FORMAT', - 'RESULT FILE IN LONGITUDE-LATITUDE':'RESULT_FILE_IN_LONGITUDE_LATITUDE', - 'VARIABLES FOR 3D GRAPHIC PRINTOUTS':'VARIABLES_FOR_3D_GRAPHIC_PRINTOUTS', - 'VARIABLES FOR 2D GRAPHIC PRINTOUTS':'VARIABLES_FOR_2D_GRAPHIC_PRINTOUTS', - 'GRAPHIC PRINTOUT PERIOD':'GRAPHIC_PRINTOUT_PERIOD', - 'NUMBER OF FIRST TIME STEP FOR GRAPHIC PRINTOUTS':'NUMBER_OF_FIRST_TIME_STEP_FOR_GRAPHIC_PRINTOUTS', - '3D RESULT FILE BINARY':'RD_RESULT_FILE_BINARY', - '2D RESULT FILE BINARY':'ED_RESULT_FILE_BINARY', - 'NUMBER OF PRIVATE ARRAYS':'NUMBER_OF_PRIVATE_ARRAYS', - 'NUMBER OF 2D PRIVATE ARRAYS':'NUMBER_OF_2D_PRIVATE_ARRAYS', - 'NAMES OF 2D PRIVATE VARIABLES':'NAMES_OF_2D_PRIVATE_VARIABLES', - 'FORMATTED RESULTS FILE':'FORMATTED_RESULTS_FILE', - 'BINARY RESULTS FILE':'BINARY_RESULTS_FILE', - 'LISTING PRINTOUT':'LISTING_PRINTOUT', - 'MASS-BALANCE':'MASS_BALANCE', - 'INFORMATION ABOUT MASS-BALANCE FOR EACH LISTING PRINTOUT':'INFORMATION_ABOUT_MASS_BALANCE_FOR_EACH_LISTING_PRINTOUT', - 'LISTING PRINTOUT PERIOD':'LISTING_PRINTOUT_PERIOD', - 'NUMBER OF FIRST TIME STEP FOR LISTING PRINTOUTS':'NUMBER_OF_FIRST_TIME_STEP_FOR_LISTING_PRINTOUTS', - 'COMPUTATION CONTINUED':'COMPUTATION_CONTINUED', - 'PREVIOUS COMPUTATION FILE':'PREVIOUS_COMPUTATION_FILE', - 'PREVIOUS COMPUTATION FILE FORMAT':'PREVIOUS_COMPUTATION_FILE_FORMAT', - 'RECORD NUMBER FOR RESTART':'RECORD_NUMBER_FOR_RESTART', - 'INITIAL TIME SET TO ZERO':'INITIAL_TIME_SET_TO_ZERO', - 'RESTART MODE':'RESTART_MODE', - 'RESTART FILE':'RESTART_FILE', - 'RESTART FILE FORMAT':'RESTART_FILE_FORMAT', - '2D CONTINUATION':'ED_CONTINUATION', - 'FILE FOR 2D CONTINUATION':'FILE_FOR_2D_CONTINUATION', - 'FILE FOR 2D CONTINUATION FORMAT':'FILE_FOR_2D_CONTINUATION_FORMAT', - 'DEBUGGER':'DEBUGGER', - 'TIME STEP':'TIME_STEP', - 'NUMBER OF TIME STEPS':'NUMBER_OF_TIME_STEPS', - 'DURATION':'DURATION', - 'ORIGINAL DATE OF TIME':'ORIGINAL_DATE_OF_TIME', - 'ORIGINAL HOUR OF TIME':'ORIGINAL_HOUR_OF_TIME', - 'SPHERICAL COORDINATES':'SPHERICAL_COORDINATES', - 'SPATIAL PROJECTION TYPE':'SPATIAL_PROJECTION_TYPE', - 'LATITUDE OF ORIGIN POINT':'LATITUDE_OF_ORIGIN_POINT', - 'LONGITUDE OF ORIGIN POINT':'LONGITUDE_OF_ORIGIN_POINT', - 'NORTH':'NORTH', - 'ORIGIN COORDINATES':'ORIGIN_COORDINATES', - 'NUMBER OF HORIZONTAL LEVELS':'NUMBER_OF_HORIZONTAL_LEVELS', - 'MESH TRANSFORMATION':'MESH_TRANSFORMATION', - 'NUMBER OF SUB ITERATIONS FOR NON LINEARITIES':'NUMBER_OF_SUB_ITERATIONS_FOR_NON_LINEARITIES', - 'ZERO':'ZERO', - 'ADVECTION STEP':'ADVECTION_STEP', - 'TREATMENT OF FLUXES AT THE BOUNDARIES':'TREATMENT_OF_FLUXES_AT_THE_BOUNDARIES', - 'SUPG OPTION':'SUPG_OPTION', - 'MAXIMUM NUMBER OF ITERATIONS FOR ADVECTION SCHEMES':'MAXIMUM_NUMBER_OF_ITERATIONS_FOR_ADVECTION_SCHEMES', - 'NUMBER OF SUB-STEPS OF DISTRIBUTIVE SCHEMES':'NUMBER_OF_SUB_STEPS_OF_DISTRIBUTIVE_SCHEMES', - 'NUMBER OF CORRECTIONS OF DISTRIBUTIVE SCHEMES':'NUMBER_OF_CORRECTIONS_OF_DISTRIBUTIVE_SCHEMES', - 'MASS-LUMPING FOR DIFFUSION':'MASS_LUMPING_FOR_DIFFUSION', - 'NON-HYDROSTATIC VERSION':'NON_HYDROSTATIC_VERSION', - 'ELEMENTS MASKED BY USER':'ELEMENTS_MASKED_BY_USER', - 'GRAVITY ACCELERATION':'GRAVITY_ACCELERATION', - 'AVERAGE WATER DENSITY':'AVERAGE_WATER_DENSITY', - 'LAW OF BOTTOM FRICTION':'LAW_OF_BOTTOM_FRICTION', - 'FRICTION COEFFICIENT FOR THE BOTTOM':'FRICTION_COEFFICIENT_FOR_THE_BOTTOM', - 'LAW OF FRICTION ON LATERAL BOUNDARIES':'LAW_OF_FRICTION_ON_LATERAL_BOUNDARIES', - 'FRICTION COEFFICIENT FOR LATERAL SOLID BOUNDARIES':'FRICTION_COEFFICIENT_FOR_LATERAL_SOLID_BOUNDARIES', - 'CORIOLIS':'CORIOLIS', - 'CORIOLIS COEFFICIENT':'CORIOLIS_COEFFICIENT', - 'WIND':'WIND', - 'OPTION FOR WIND':'OPTION_FOR_WIND', - 'WIND VELOCITY ALONG X':'WIND_VELOCITY_ALONG_X', - 'WIND VELOCITY ALONG Y':'WIND_VELOCITY_ALONG_Y', - 'COEFFICIENT OF WIND INFLUENCE':'COEFFICIENT_OF_WIND_INFLUENCE', - 'COEFFICIENT OF WIND INFLUENCE VARYING WITH WIND SPEED':'COEFFICIENT_OF_WIND_INFLUENCE_VARYING_WITH_WIND_SPEED', - 'THRESHOLD DEPTH FOR WIND':'THRESHOLD_DEPTH_FOR_WIND', - 'AIR PRESSURE':'AIR_PRESSURE', - 'VALUE OF ATMOSPHERIC PRESSURE':'VALUE_OF_ATMOSPHERIC_PRESSURE', - 'RAIN OR EVAPORATION':'RAIN_OR_EVAPORATION', - 'RAIN OR EVAPORATION IN MM PER DAY':'RAIN_OR_EVAPORATION_IN_MM_PER_DAY', - 'ASCII ATMOSPHERIC DATA FILE':'ASCII_ATMOSPHERIC_DATA_FILE', - 'BINARY ATMOSPHERIC DATA FILE':'BINARY_ATMOSPHERIC_DATA_FILE', - 'BINARY ATMOSPHERIC DATA FILE FORMAT':'BINARY_ATMOSPHERIC_DATA_FILE_FORMAT', - 'SOURCES FILE':'SOURCES_FILE', - 'GLOBAL NUMBERS OF SOURCE NODES':'GLOBAL_NUMBERS_OF_SOURCE_NODES', - 'TYPE OF SOURCES':'TYPE_OF_SOURCES', - 'ABSCISSAE OF SOURCES':'ABSCISSAE_OF_SOURCES', - 'ORDINATES OF SOURCES':'ORDINATES_OF_SOURCES', - 'ELEVATIONS OF SOURCES':'ELEVATIONS_OF_SOURCES', - 'WATER DISCHARGE OF SOURCES':'WATER_DISCHARGE_OF_SOURCES', - 'VELOCITIES OF THE SOURCES ALONG X':'VELOCITIES_OF_THE_SOURCES_ALONG_X', - 'VELOCITIES OF THE SOURCES ALONG Y':'VELOCITIES_OF_THE_SOURCES_ALONG_Y', - 'VELOCITIES OF THE SOURCES ALONG Z':'VELOCITIES_OF_THE_SOURCES_ALONG_Z', - 'WAVE DRIVEN CURRENTS':'WAVE_DRIVEN_CURRENTS', - 'RECORD NUMBER IN WAVE FILE':'RECORD_NUMBER_IN_WAVE_FILE', - 'PRESCRIBED ELEVATIONS':'PRESCRIBED_ELEVATIONS', - 'PRESCRIBED FLOWRATES':'PRESCRIBED_FLOWRATES', - 'PRESCRIBED VELOCITIES':'PRESCRIBED_VELOCITIES', - 'LIQUID BOUNDARIES FILE':'LIQUID_BOUNDARIES_FILE', - 'VELOCITY PROFILES':'VELOCITY_PROFILES', - 'VELOCITY VERTICAL PROFILES':'VELOCITY_VERTICAL_PROFILES', - 'STAGE-DISCHARGE CURVES':'STAGE_DISCHARGE_CURVES', - 'STAGE-DISCHARGE CURVES FILE':'STAGE_DISCHARGE_CURVES_FILE', - 'OPTION FOR LIQUID BOUNDARIES':'OPTION_FOR_LIQUID_BOUNDARIES', - 'TURBULENCE REGIME FOR THE BOTTOM':'TURBULENCE_REGIME_FOR_THE_BOTTOM', - 'TURBULENCE REGIME FOR LATERAL SOLID BOUNDARIES':'TURBULENCE_REGIME_FOR_LATERAL_SOLID_BOUNDARIES', - 'BOUNDARY CONDITION ON THE BOTTOM':'BOUNDARY_CONDITION_ON_THE_BOTTOM', - 'VELOCITY PROJECTED ON SOLID LATERAL BOUNDARIES':'VELOCITY_PROJECTED_ON_SOLID_LATERAL_BOUNDARIES', - 'VELOCITY PROJECTED ON BOTTOM':'VELOCITY_PROJECTED_ON_BOTTOM', - 'OPEN BOUNDARY CONDITIONS ON THE BED':'OPEN_BOUNDARY_CONDITIONS_ON_THE_BED', - 'PRESCRIBED FLOWRATES ON THE BED':'PRESCRIBED_FLOWRATES_ON_THE_BED', - 'INITIAL CONDITIONS':'INITIAL_CONDITIONS', - 'INITIAL ELEVATION':'INITIAL_ELEVATION', - 'INITIAL DEPTH':'INITIAL_DEPTH', - 'MATRIX STORAGE':'MATRIX_STORAGE', - 'MASS-LUMPING FOR DEPTH':'MASS_LUMPING_FOR_DEPTH', - 'HYDROSTATIC INCONSISTENCY FILTER':'HYDROSTATIC_INCONSISTENCY_FILTER', - 'ELEMENT':'ELEMENT', - 'SOLVER FOR PROPAGATION':'SOLVER_FOR_PROPAGATION', - 'ACCURACY FOR PROPAGATION':'ACCURACY_FOR_PROPAGATION', - 'MAXIMUM NUMBER OF ITERATIONS FOR PROPAGATION':'MAXIMUM_NUMBER_OF_ITERATIONS_FOR_PROPAGATION', - 'PRECONDITIONING FOR PROPAGATION':'PRECONDITIONING_FOR_PROPAGATION', - 'OPTION OF SOLVER FOR PROPAGATION':'OPTION_OF_SOLVER_FOR_PROPAGATION', - 'INITIAL GUESS FOR DEPTH':'INITIAL_GUESS_FOR_DEPTH', - 'LINEARIZED PROPAGATION':'LINEARIZED_PROPAGATION', - 'MEAN DEPTH FOR LINEARIZATION':'MEAN_DEPTH_FOR_LINEARIZATION', - 'SCHEME FOR ADVECTION OF DEPTH':'SCHEME_FOR_ADVECTION_OF_DEPTH', - 'SCHEME FOR ADVECTION OF VELOCITIES':'SCHEME_FOR_ADVECTION_OF_VELOCITIES', - 'FREE SURFACE GRADIENT COMPATIBILITY':'FREE_SURFACE_GRADIENT_COMPATIBILITY', - 'BYPASS VOID VOLUMES':'BYPASS_VOID_VOLUMES', - 'MASS-LUMPING FOR VELOCITIES':'MASS_LUMPING_FOR_VELOCITIES', - 'SCHEME OPTION FOR ADVECTION OF VELOCITIES':'SCHEME_OPTION_FOR_ADVECTION_OF_VELOCITIES', - 'OPTION FOR CHARACTERISTICS':'OPTION_FOR_CHARACTERISTICS', - 'NUMBER OF GAUSS POINTS FOR WEAK CHARACTERISTICS':'NUMBER_OF_GAUSS_POINTS_FOR_WEAK_CHARACTERISTICS', - 'MASS-LUMPING FOR WEAK CHARACTERISTICS':'MASS_LUMPING_FOR_WEAK_CHARACTERISTICS', - 'SCHEME FOR DIFFUSION OF VELOCITIES':'SCHEME_FOR_DIFFUSION_OF_VELOCITIES', - 'SOLVER FOR DIFFUSION OF VELOCITIES':'SOLVER_FOR_DIFFUSION_OF_VELOCITIES', - 'ACCURACY FOR DIFFUSION OF VELOCITIES':'ACCURACY_FOR_DIFFUSION_OF_VELOCITIES', - 'MAXIMUM NUMBER OF ITERATIONS FOR DIFFUSION OF VELOCITIES':'MAXIMUM_NUMBER_OF_ITERATIONS_FOR_DIFFUSION_OF_VELOCITIES', - 'PRECONDITIONING FOR DIFFUSION OF VELOCITIES':'PRECONDITIONING_FOR_DIFFUSION_OF_VELOCITIES', - 'OPTION OF SOLVER FOR DIFFUSION OF VELOCITIES':'OPTION_OF_SOLVER_FOR_DIFFUSION_OF_VELOCITIES', - 'IMPLICITATION FOR DIFFUSION':'IMPLICITATION_FOR_DIFFUSION', - 'SOLVER FOR PPE':'SOLVER_FOR_PPE', - 'ACCURACY FOR PPE':'ACCURACY_FOR_PPE', - 'MAXIMUM NUMBER OF ITERATIONS FOR PPE':'MAXIMUM_NUMBER_OF_ITERATIONS_FOR_PPE', - 'PRECONDITIONING FOR PPE':'PRECONDITIONING_FOR_PPE', - 'OPTION OF SOLVER FOR PPE':'OPTION_OF_SOLVER_FOR_PPE', - 'DYNAMIC PRESSURE IN WAVE EQUATION':'DYNAMIC_PRESSURE_IN_WAVE_EQUATION', - 'DYNAMIC BOUNDARY CONDITION':'DYNAMIC_BOUNDARY_CONDITION', - 'CONTINUITY CORRECTION ON OPEN BOUNDARIES':'CONTINUITY_CORRECTION_ON_OPEN_BOUNDARIES', - 'SOLVER FOR VERTICAL VELOCITY':'SOLVER_FOR_VERTICAL_VELOCITY', - 'ACCURACY FOR VERTICAL VELOCITY':'ACCURACY_FOR_VERTICAL_VELOCITY', - 'MAXIMUM NUMBER OF ITERATIONS FOR VERTICAL VELOCITY':'MAXIMUM_NUMBER_OF_ITERATIONS_FOR_VERTICAL_VELOCITY', - 'PRECONDITIONING FOR VERTICAL VELOCITY':'PRECONDITIONING_FOR_VERTICAL_VELOCITY', - 'IMPLICITATION FOR DEPTH':'IMPLICITATION_FOR_DEPTH', - 'IMPLICITATION FOR VELOCITIES':'IMPLICITATION_FOR_VELOCITIES', - 'TIDAL FLATS':'TIDAL_FLATS', - 'OPTION FOR THE TREATMENT OF TIDAL FLATS':'OPTION_FOR_THE_TREATMENT_OF_TIDAL_FLATS', - 'TREATMENT OF NEGATIVE DEPTHS':'TREATMENT_OF_NEGATIVE_DEPTHS', - 'TREATMENT ON TIDAL FLATS FOR VELOCITIES':'TREATMENT_ON_TIDAL_FLATS_FOR_VELOCITIES', - 'THRESHOLD FOR VISCOSITY CORRECTION ON TIDAL FLATS':'THRESHOLD_FOR_VISCOSITY_CORRECTION_ON_TIDAL_FLATS', - 'MINIMAL VALUE FOR DEPTH':'MINIMAL_VALUE_FOR_DEPTH', - 'BINARY DATABASE 1 FOR TIDE':'BINARY_DATABASE_1_FOR_TIDE', - 'BINARY DATABASE 2 FOR TIDE':'BINARY_DATABASE_2_FOR_TIDE', - 'GEOGRAPHIC SYSTEM':'GEOGRAPHIC_SYSTEM', - 'ZONE NUMBER IN GEOGRAPHIC SYSTEM':'ZONE_NUMBER_IN_GEOGRAPHIC_SYSTEM', - 'LAMBERT 93 CONVERSION FILE':'LAMBERT_93_CONVERSION_FILE', - 'COEFFICIENT TO CALIBRATE SEA LEVEL':'COEFFICIENT_TO_CALIBRATE_SEA_LEVEL', - 'GLOBAL NUMBER OF THE POINT TO CALIBRATE HIGH WATER':'GLOBAL_NUMBER_OF_THE_POINT_TO_CALIBRATE_HIGH_WATER', - 'MINOR CONSTITUENTS INFERENCE':'MINOR_CONSTITUENTS_INFERENCE', - 'TIDE GENERATING FORCE':'TIDE_GENERATING_FORCE', - 'OPTION FOR TIDAL BOUNDARY CONDITIONS':'OPTION_FOR_TIDAL_BOUNDARY_CONDITIONS', - 'TIDAL DATA BASE':'TIDAL_DATA_BASE', - 'HARMONIC CONSTANTS FILE':'HARMONIC_CONSTANTS_FILE', - 'TIDAL MODEL FILE':'TIDAL_MODEL_FILE', - 'TIDAL MODEL FILE FORMAT':'TIDAL_MODEL_FILE_FORMAT', - 'ASCII DATABASE FOR TIDE':'ASCII_DATABASE_FOR_TIDE', - 'COEFFICIENT TO CALIBRATE TIDAL RANGE':'COEFFICIENT_TO_CALIBRATE_TIDAL_RANGE', - 'COEFFICIENT TO CALIBRATE TIDAL VELOCITIES':'COEFFICIENT_TO_CALIBRATE_TIDAL_VELOCITIES', - 'LOCAL NUMBER OF THE POINT TO CALIBRATE HIGH WATER':'LOCAL_NUMBER_OF_THE_POINT_TO_CALIBRATE_HIGH_WATER', - 'NUMBER OF DROGUES':'NUMBER_OF_DROGUES', - 'DROGUES FILE':'DROGUES_FILE', - 'PRINTOUT PERIOD FOR DROGUES':'PRINTOUT_PERIOD_FOR_DROGUES', - 'OIL SPILL MODEL':'OIL_SPILL_MODEL', - 'OIL SPILL STEERING FILE':'OIL_SPILL_STEERING_FILE', - 'NUMBER OF CULVERTS':'NUMBER_OF_CULVERTS', - 'CULVERTS DATA FILE':'CULVERTS_DATA_FILE', - 'OPTION FOR CULVERTS':'OPTION_FOR_CULVERTS', - 'HORIZONTAL TURBULENCE MODEL':'HORIZONTAL_TURBULENCE_MODEL', - 'VERTICAL TURBULENCE MODEL':'VERTICAL_TURBULENCE_MODEL', - 'COEFFICIENT FOR HORIZONTAL DIFFUSION OF VELOCITIES':'COEFFICIENT_FOR_HORIZONTAL_DIFFUSION_OF_VELOCITIES', - 'COEFFICIENT FOR VERTICAL DIFFUSION OF VELOCITIES':'COEFFICIENT_FOR_VERTICAL_DIFFUSION_OF_VELOCITIES', - 'MIXING LENGTH MODEL':'MIXING_LENGTH_MODEL', - 'DAMPING FUNCTION':'DAMPING_FUNCTION', - 'PRANDTL NUMBER':'PRANDTL_NUMBER', - 'KARMAN CONSTANT':'KARMAN_CONSTANT', - 'FICTITIOUS BED LEVEL':'FICTITIOUS_BED_LEVEL', - 'OPTION FOR THE BOUNDARY CONDITIONS OF K-EPSILON':'OPTION_FOR_THE_BOUNDARY_CONDITIONS_OF_K_EPSILON', - 'VERTICAL VELOCITY DERIVATIVES':'VERTICAL_VELOCITY_DERIVATIVES', - 'SCHEME FOR ADVECTION OF K-EPSILON':'SCHEME_FOR_ADVECTION_OF_K_EPSILON', - 'SCHEME OPTION FOR ADVECTION OF K-EPSILON':'SCHEME_OPTION_FOR_ADVECTION_OF_K_EPSILON', - 'SCHEME FOR DIFFUSION OF K-EPSILON':'SCHEME_FOR_DIFFUSION_OF_K_EPSILON', - 'SOLVER FOR DIFFUSION OF K-EPSILON':'SOLVER_FOR_DIFFUSION_OF_K_EPSILON', - 'ACCURACY FOR DIFFUSION OF K-EPSILON':'ACCURACY_FOR_DIFFUSION_OF_K_EPSILON', - 'MAXIMUM NUMBER OF ITERATIONS FOR DIFFUSION OF K-EPSILON':'MAXIMUM_NUMBER_OF_ITERATIONS_FOR_DIFFUSION_OF_K_EPSILON', - 'PRECONDITIONING FOR DIFFUSION OF K-EPSILON':'PRECONDITIONING_FOR_DIFFUSION_OF_K_EPSILON', - 'OPTION OF SOLVER FOR DIFFUSION OF K-EPSILON':'OPTION_OF_SOLVER_FOR_DIFFUSION_OF_K_EPSILON', - 'TREATMENT ON TIDAL FLATS FOR K-EPSILON':'TREATMENT_ON_TIDAL_FLATS_FOR_K_EPSILON', - 'NUMBER OF TRACERS':'NUMBER_OF_TRACERS', - 'NAMES OF TRACERS':'NAMES_OF_TRACERS', - 'VALUES OF TRACERS IN THE RAIN':'VALUES_OF_TRACERS_IN_THE_RAIN', - 'VALUE OF THE TRACERS AT THE SOURCES':'VALUE_OF_THE_TRACERS_AT_THE_SOURCES', - 'DENSITY LAW':'DENSITY_LAW', - 'STANDARD VALUES FOR TRACERS':'STANDARD_VALUES_FOR_TRACERS', - 'BETA EXPANSION COEFFICIENT FOR TRACERS':'BETA_EXPANSION_COEFFICIENT_FOR_TRACERS', - 'PRESCRIBED TRACERS VALUES':'PRESCRIBED_TRACERS_VALUES', - 'TRACERS VERTICAL PROFILES':'TRACERS_VERTICAL_PROFILES', - 'INITIAL VALUES OF TRACERS':'INITIAL_VALUES_OF_TRACERS', - 'SCHEME FOR ADVECTION OF TRACERS':'SCHEME_FOR_ADVECTION_OF_TRACERS', - 'SCHEME OPTION FOR ADVECTION OF TRACERS':'SCHEME_OPTION_FOR_ADVECTION_OF_TRACERS', - 'SCHEME FOR DIFFUSION OF TRACERS':'SCHEME_FOR_DIFFUSION_OF_TRACERS', - 'SOLVER FOR DIFFUSION OF TRACERS':'SOLVER_FOR_DIFFUSION_OF_TRACERS', - 'ACCURACY FOR DIFFUSION OF TRACERS':'ACCURACY_FOR_DIFFUSION_OF_TRACERS', - 'MAXIMUM NUMBER OF ITERATIONS FOR DIFFUSION OF TRACERS':'MAXIMUM_NUMBER_OF_ITERATIONS_FOR_DIFFUSION_OF_TRACERS', - 'PRECONDITIONING FOR DIFFUSION OF TRACERS':'PRECONDITIONING_FOR_DIFFUSION_OF_TRACERS', - 'OPTION OF SOLVER FOR DIFFUSION OF TRACERS':'OPTION_OF_SOLVER_FOR_DIFFUSION_OF_TRACERS', - 'TREATMENT ON TIDAL FLATS FOR TRACERS':'TREATMENT_ON_TIDAL_FLATS_FOR_TRACERS', - 'COEFFICIENT FOR HORIZONTAL DIFFUSION OF TRACERS':'COEFFICIENT_FOR_HORIZONTAL_DIFFUSION_OF_TRACERS', - 'COEFFICIENT FOR VERTICAL DIFFUSION OF TRACERS':'COEFFICIENT_FOR_VERTICAL_DIFFUSION_OF_TRACERS', - 'SEDIMENT':'SEDIMENT', - 'DENSITY OF THE SEDIMENT':'DENSITY_OF_THE_SEDIMENT', - 'TIME STEP FOR CONSOLIDATION':'TIME_STEP_FOR_CONSOLIDATION', - 'COHESIVE SEDIMENT':'COHESIVE_SEDIMENT', - 'SHIELDS PARAMETER':'SHIELDS_PARAMETER', - 'MIXED SEDIMENT':'MIXED_SEDIMENT', - 'NUMBER OF SEDIMENT BED LAYERS':'NUMBER_OF_SEDIMENT_BED_LAYERS', - 'READ CRITICAL BED SHEAR STRESS PER LAYER':'READ_CRITICAL_BED_SHEAR_STRESS_PER_LAYER', - 'SEDIMENTOLOGICAL RESULT FILE':'SEDIMENTOLOGICAL_RESULT_FILE', - 'SEDIMENTOLOGICAL RESULT FILE BINARY':'SEDIMENTOLOGICAL_RESULT_FILE_BINARY', - 'PREVIOUS COMPUTATION SEDIMENTOLOGICAL FILE':'PREVIOUS_COMPUTATION_SEDIMENTOLOGICAL_FILE', - 'MEAN DIAMETER OF THE SEDIMENT':'MEAN_DIAMETER_OF_THE_SEDIMENT', - 'RATIO BETWEEN SKIN FRICTION AND MEAN DIAMETER':'RATIO_BETWEEN_SKIN_FRICTION_AND_MEAN_DIAMETER', - 'SKIN FRICTION CORRECTION':'SKIN_FRICTION_CORRECTION', - 'INITIAL PERCENTAGE OF NON COHESIVE SEDIMENT':'INITIAL_PERCENTAGE_OF_NON_COHESIVE_SEDIMENT', - 'MUD CONCENTRATIONS PER LAYER':'MUD_CONCENTRATIONS_PER_LAYER', - 'CRITICAL EROSION SHEAR STRESS OF THE MUD LAYERS':'CRITICAL_EROSION_SHEAR_STRESS_OF_THE_MUD_LAYERS', - 'INITIAL THICKNESS OF SEDIMENT LAYERS':'INITIAL_THICKNESS_OF_SEDIMENT_LAYERS', - 'SOLVER FOR DIFFUSION OF THE SEDIMENT':'SOLVER_FOR_DIFFUSION_OF_THE_SEDIMENT', - 'ACCURACY FOR DIFFUSION OF SEDIMENT':'ACCURACY_FOR_DIFFUSION_OF_SEDIMENT', - 'MAXIMUM NUMBER OF ITERATIONS FOR DIFFUSION OF SEDIMENT':'MAXIMUM_NUMBER_OF_ITERATIONS_FOR_DIFFUSION_OF_SEDIMENT', - 'PRECONDITIONING FOR DIFFUSION OF THE SEDIMENT':'PRECONDITIONING_FOR_DIFFUSION_OF_THE_SEDIMENT', - 'OPTION OF SOLVER FOR DIFFUSION OF THE SEDIMENT':'OPTION_OF_SOLVER_FOR_DIFFUSION_OF_THE_SEDIMENT', - 'THRESHOLD FOR SEDIMENT FLUX CORRECTION ON TIDAL FLATS':'THRESHOLD_FOR_SEDIMENT_FLUX_CORRECTION_ON_TIDAL_FLATS', - 'CRITICAL SHEAR STRESS FOR DEPOSITION':'CRITICAL_SHEAR_STRESS_FOR_DEPOSITION', - 'NON COHESIVE BED POROSITY':'NON_COHESIVE_BED_POROSITY', - 'EROSION COEFFICIENT':'EROSION_COEFFICIENT', - 'CONSTANT SEDIMENT SETTLING VELOCITY':'CONSTANT_SEDIMENT_SETTLING_VELOCITY', - 'SETTLING VELOCITY OF SANDS':'SETTLING_VELOCITY_OF_SANDS', - 'ADVECTION-DIFFUSION SCHEME WITH SETTLING VELOCITY':'ADVECTION_DIFFUSION_SCHEME_WITH_SETTLING_VELOCITY', - 'HINDERED SETTLING':'HINDERED_SETTLING', - 'WEAK SOIL CONCENTRATION FOR MUD':'WEAK_SOIL_CONCENTRATION_FOR_MUD', - 'THRESHOLD CONCENTRATION FOR HINDERED SETTLING':'THRESHOLD_CONCENTRATION_FOR_HINDERED_SETTLING', - 'HINDERED SETTLING FORMULA':'HINDERED_SETTLING_FORMULA', - 'REFERENCE CONCENTRATION FORMULA':'REFERENCE_CONCENTRATION_FORMULA', - 'FLOCCULATION':'FLOCCULATION', - 'FLOCCULATION FORMULA':'FLOCCULATION_FORMULA', - 'FLOCCULATION COEFFICIENT':'FLOCCULATION_COEFFICIENT', - 'COEFFICIENT RELATIVE TO FLOC DESTRUCTION':'COEFFICIENT_RELATIVE_TO_FLOC_DESTRUCTION', - 'BED LAYERS THICKNESS':'BED_LAYERS_THICKNESS', - 'MAXIMUM CONCENTRATION OF THE CONSOLIDATED MUD':'MAXIMUM_CONCENTRATION_OF_THE_CONSOLIDATED_MUD', - 'RESIDENCE TIME FOR MUD':'RESIDENCE_TIME_FOR_MUD', - 'CONSOLIDATION':'CONSOLIDATION', - 'CONSOLIDATION MODEL':'CONSOLIDATION_MODEL', - 'COUPLING WITH':'COUPLING_WITH', - 'SISYPHE STEERING FILE':'SISYPHE_STEERING_FILE', - 'COUPLING PERIOD FOR SISYPHE':'COUPLING_PERIOD_FOR_SISYPHE', - 'TOMAWAC STEERING FILE':'TOMAWAC_STEERING_FILE', - 'COUPLING PERIOD FOR TOMAWAC':'COUPLING_PERIOD_FOR_TOMAWAC', - 'WATER QUALITY PROCESS':'WATER_QUALITY_PROCESS', - 'WAQTEL STEERING FILE':'WAQTEL_STEERING_FILE', - 'DELWAQ STEERING FILE':'DELWAQ_STEERING_FILE', - 'DELWAQ PRINTOUT PERIOD':'DELWAQ_PRINTOUT_PERIOD', - 'EXCHANGES BETWEEN NODES DELWAQ FILE':'EXCHANGES_BETWEEN_NODES_DELWAQ_FILE', - 'NODES DISTANCES DELWAQ FILE':'NODES_DISTANCES_DELWAQ_FILE', - 'BOTTOM SURFACES DELWAQ FILE':'BOTTOM_SURFACES_DELWAQ_FILE', - 'VOLUMES DELWAQ FILE':'VOLUMES_DELWAQ_FILE', - 'EXCHANGE AREAS DELWAQ FILE':'EXCHANGE_AREAS_DELWAQ_FILE', - 'VERTICAL FLUXES DELWAQ FILE':'VERTICAL_FLUXES_DELWAQ_FILE', - 'VELOCITY DELWAQ FILE':'VELOCITY_DELWAQ_FILE', - 'DIFFUSIVITY DELWAQ FILE':'DIFFUSIVITY_DELWAQ_FILE', - 'TEMPERATURE DELWAQ FILE':'TEMPERATURE_DELWAQ_FILE', - 'SALINITY DELWAQ FILE':'SALINITY_DELWAQ_FILE', - 'VELOCITY FOR DELWAQ':'VELOCITY_FOR_DELWAQ', - 'DIFFUSION FOR DELWAQ':'DIFFUSION_FOR_DELWAQ', - 'TEMPERATURE FOR DELWAQ':'TEMPERATURE_FOR_DELWAQ', - 'SALINITY FOR DELWAQ':'SALINITY_FOR_DELWAQ', - 'AD NUMBER OF DERIVATIVES':'AD_NUMBER_OF_DERIVATIVES', - 'AD NAMES OF DERIVATIVES':'AD_NAMES_OF_DERIVATIVES', - 'AD NUMBER OF DIRECTIONS':'AD_NUMBER_OF_DIRECTIONS', - 'AD SYMBOLIC LINEAR SOLVER':'AD_SYMBOLIC_LINEAR_SOLVER', - 'AD LINEAR SOLVER RESET DERIVATIVES':'AD_LINEAR_SOLVER_RESET_DERIVATIVES', - 'AD LINEAR SOLVER DERIVATIVE CONVERGENCE':'AD_LINEAR_SOLVER_DERIVATIVE_CONVERGENCE', - 'PARTITIONING TOOL':'PARTITIONING_TOOL', - 'STEERING FILE':'STEERING_FILE', - 'RELEASE':'RELEASE', - 'DICTIONARY':'DICTIONARY', - 'LIST OF FILES':'LIST_OF_FILES', - 'DESCRIPTION OF LIBRARIES':'DESCRIPTION_OF_LIBRARIES', - 'DEFAULT EXECUTABLE':'DEFAULT_EXECUTABLE', - 'DEFAULT PARALLEL EXECUTABLE':'DEFAULT_PARALLEL_EXECUTABLE', -} -DicoEnumCasFrToEnumCasEn = { -'GEOMETRY_FILE_FORMAT':{ - "SERAFIN?":"SERAFIN?", - "SERAFIND":"SERAFIND", - "MED":"MED", -}, - -'BINARY_BOUNDARY_DATA_FILE_FORMAT':{ - "SERAFIN?":"SERAFIN?", - "SERAFIND":"SERAFIND", - "MED":"MED", -}, - -'BINARY_DATA_FILE_1_FORMAT':{ - "SERAFIN?":"SERAFIN?", - "SERAFIND":"SERAFIND", - "MED":"MED", -}, - -'REFERENCE_FILE_FORMAT':{ - "SERAFIN?":"SERAFIN?", - "SERAFIND":"SERAFIND", - "MED":"MED", -}, - -'RD_RESULT_FILE_FORMAT':{ - "SERAFIN?":"SERAFIN?", - "SERAFIND":"SERAFIND", - "MED":"MED", -}, - -'ED_RESULT_FILE_FORMAT':{ - "SERAFIN?":"SERAFIN?", - "SERAFIND":"SERAFIND", - "MED":"MED", -}, - -'RD_RESULT_FILE_BINARY':{ - "STD":"STD", - "IBM":"IBM", - "I3E":"I3E", -}, - -'ED_RESULT_FILE_BINARY':{ - "STD":"STD", - "IBM":"IBM", - "I3E":"I3E", -}, - -'PREVIOUS_COMPUTATION_FILE_FORMAT':{ - "SERAFIN?":"SERAFIN?", - "SERAFIND":"SERAFIND", - "MED":"MED", -}, - -'RESTART_FILE_FORMAT':{ - "SERAFIN?":"SERAFIN?", - "SERAFIND":"SERAFIND", - "MED":"MED", -}, - -'FILE_FOR_2D_CONTINUATION_FORMAT':{ - "SERAFIN?":"SERAFIN?", - "SERAFIND":"SERAFIND", - "MED":"MED", -}, - -'BINARY_ATMOSPHERIC_DATA_FILE_FORMAT':{ - "SERAFIN?":"SERAFIN?", - "SERAFIND":"SERAFIND", - "MED":"MED", -}, - -'INITIAL_CONDITIONS':{ - "COTE NULLE":"ZERO ELEVATION", - "COTE CONSTANTE":"CONSTANT ELEVATION", - "HAUTEUR NULLE":"ZERO DEPTH", - "HAUTEUR CONSTANTE":"CONSTANT DEPTH", - "PARTICULIERES":"SPECIAL", - "SPECIAL":"PARTICULAR", - "ALTIMETRIE SATELLITE TPXO":"TPXO SATELLITE ALTIMETRY", -}, - -'TIDAL_MODEL_FILE_FORMAT':{ - "SERAFIN?":"SERAFIN?", - "SERAFIND":"SERAFIND", - "MED":"MED", -}, - -'SEDIMENTOLOGICAL_RESULT_FILE_BINARY':{ - "STD":"STD", - "IBM":"IBM", - "I3E":"I3E", -}, - -'COUPLING_WITH':{ - "RIEN":"NOTHING", - "SISYPHE":"SISYPHE", - "TOMAWAC":"TOMAWAC", - "WAQTEL":"WAQTEL", - "DELWAQ":"DELWAQ", -}, - -'PARTITIONING_TOOL':{ - "METIS":"METIS", - "SCOTCH":"SCOTCH", - "PARMETIS":"PARMETIS", - "PTSCOTCH":"PTSCOTCH", -}, - -} diff --git a/Telemac/telemac3d_labelCataToIhm_en.qm b/Telemac/telemac3d_labelCataToIhm_en.qm deleted file mode 100644 index fff86a74..00000000 Binary files a/Telemac/telemac3d_labelCataToIhm_en.qm and /dev/null differ diff --git a/Telemac/telemac3d_labelCataToIhm_fr.qm b/Telemac/telemac3d_labelCataToIhm_fr.qm deleted file mode 100644 index d5d0baf9..00000000 Binary files a/Telemac/telemac3d_labelCataToIhm_fr.qm and /dev/null differ diff --git a/Telemac/tomawac_cata_auto.py b/Telemac/tomawac_cata_auto.py deleted file mode 100644 index 10b084f3..00000000 --- a/Telemac/tomawac_cata_auto.py +++ /dev/null @@ -1,4189 +0,0 @@ - -# -*- coding: latin-1 -*- - -from Accas import * -class DateJJMMAAAA: - def __init__(self): - self.ntuple=3 - - def __convert__(self,valeur): - if type(valeur) == types.StringType: return None - if len(valeur) != self.ntuple: return None - return valeur - - def info(self): - return "Date : jj/mm/aaaa " - - __repr__=info - __str__=info - -class grma(GEOM): - pass - -import types -class Tuple: - def __init__(self,ntuple): - self.ntuple=ntuple - - def __convert__(self,valeur): - if type(valeur) == types.StringType: - return None - if len(valeur) != self.ntuple: - return None - return valeur - - def info(self): - return "Tuple de %s elements" % self.ntuple - - - -JdC = JDC_CATA (code = 'TOMAWAC', - execmodul = None, - ) -# ======================================================================= -# Catalog entry for the MAP function : c_pre_interfaceBody_mesh -# ======================================================================= - -VERSION_CATALOGUE="TRUNK_20180306" -# ----------------------------------------------------------------------- -COMPUTATION_ENVIRONMENT = PROC(nom= "COMPUTATION_ENVIRONMENT",op = None, -# ----------------------------------------------------------------------- - UIinfo = {"groupes": ("CACHE")}, -# ----------------------------------- - OUTPUT = FACT(statut='o', -# ----------------------------------- -# ----------------------------------- - LISTING = FACT(statut='f', -# ----------------------------------- -# ----------------------------------- - PERIOD_FOR_LISTING_PRINTOUTS = SIMP(statut ='f', -# ----------------------------------- - typ = 'I', - defaut = 1, - fr = """Determine la periodicite, -en nombre de pas de temps -des messages du code sur le fichier listing""", - ang = """Determines the period, -in number of time step -of the software messages in the listing file.""", - ), - ), -# ----------------------------------- - RESULTS = FACT(statut='o', -# ----------------------------------- -# ----------------------------------- - VARIABLES_FOR_2D_GRAPHIC_PRINTOUTS = SIMP(statut ='o', -# ----------------------------------- - typ = 'TXM', min=0, max='**', - into = ["Total variance (m2)","Spectral significant wave height (m)","Mean wave direction (deg)","Mean directional spreading (deg)","Sea bottom level (m)","Water depth (m)","Current along X (m/s)","Current along Y (m/s)","Wind along X (m/s)","Wind along Y (m/s)","Driving force along X (m/s2)","Driving force along Y (m/s2)","Radiation stress along xx (m3/s2)","Radiation stress along yy (m3/s2)","Radiation stress along xy (m3/s2)","Bottom celerity (m/s)","Wave power (per meter along wave crest) (kW/m)","Mean frequency FMOY (Hz)","Mean frequency FM01 (Hz)","Mean frequency FM02 (Hz)","Discrete peak frequency (Hz)","Peak frequency by Read method of order 5 (Hz)","Peak frequency by Read method of order 8 (Hz)","Surface friction velocity u* (m/s)","Surface drag coefficient CD (-)","Surface roughness length Z0 (m)","Surface wave stress (kg/(m.s2))","Mean period Tmoy (s)","Mean period Tm01 (s)","Mean period Tm02 (s)","Discrete peak period (s)","Peak period by Read method of order 5 (s)","Peak period by Read method of order 8 (s)","Private table (?)","Breaking waves coefficient (-)"], - defaut = ["Spectral significant wave height (m)","Mean wave direction (deg)"], - fr = """Noms des variables que l''utilisateur veut ecrire dans -le FICHIER DES RESULTATS 2D. Les variables disponibles sont : -M0 : variance totale -HM0 : Hauteur significative spectrale -DMOY : Direction moyenne de houle -SPD : Etalement directionnel moyen -ZF : Cote du fond -WD : Hauteur d''eau -UX : Courant suivant X -UY : Courant suivant Y -VX : Vent suivant X -VY : Vent suivant Y -FX : Force motrice suivant X -FY : Force motrice suivant Y -SXX : Contrainte de radiation suivant xx -SYY : Contrainte de radiation suivant yy -SXY : Contrainte de radiation suivant xy -UWB : Vitesse orbitale au fond -POW : Puissance lineique de houle (par metre de crete) -FMOY : Frequence moyenne FMOY -FM01 : Frequence moyenne FM01 -FM02 : Frequence moyenne FM02 -FPD : Frequence de pic discrete -FPR5 : Frequence de pic de Read ordre 5 -FPR8 : Frequence de pic de Read ordre 8 -US : Vitesse de frottement en surface u* -CD : Coefficient de trainee en surface CD -Z0 : Longueur de rugosite en surface Z0 -WS : Contrainte de houle en surface -TMOY : Periode moyenne Tmoy -TM01 : Periode moyenne Tm01 -TM02 : Periode moyenne Tm02 -TPD : Periode de pic discrete -TPR5 : Periode de pic de Read ordre 5 -TPR8 : Periode de pic de Read ordre 8 -PRI : tableau prive -BETA : coefficient de deferlement -**Mots-cles associes :** -FICHIER DES RESULTATS 2D -NUMERO DE LA PREMIERE ITERATION POUR LES SORTIES GRAPHIQUES -PERIODE POUR LES SORTIES GRAPHIQUES""", - ang = """Codes of the variables the user wants to write into the 2D -RESULTS FILE. The available variables are as follows -\begin{itemize} -\item M0 : Total variance -\item HM0 : Spectral significant wave height -\item DMOY : Mean wave direction -\item SPD : Mean directional spreading -\item ZF : Sea bottom level -\item WD : Water depth -\item UX : Current along X -\item UY : Current along Y -\item VX : Wind along X -\item VY : Wind along Y -\item FX : Driving force along X -\item FY : Driving force along Y -\item SXX : Radiation stress along xx -\item SYY : Radiation stress along yy -\item SXY : Radiation stress along xy -\item UWB : Bottom celerity -\item POW : Wave power (per meter along wave crest) -\item FMOY : Mean frequency FMOY -\item FM01 : Mean frequency FM01 -\item FM02 : Mean frequency FM02 -\item FPD : Discrete peak frequency -\item FPR5 : Peak frequency by Read method of order 5 -\item FPR8 : Peak frequency by Read method of order 8 -\item US : Surface friction velocity u* -\item CD : Surface drag coefficient CD -\item Z0 : Surface roughness length Z0 -\item WS : Surface wave stress -\item TMOY : Mean period Tmoy -\item TM01 : Mean period Tm01 -\item TM02 : Mean period Tm02 -\item TPD : Discrete peak period -\item TPR5 : Peak period by Read method of order 5 -\item TPR8 : Peak period by Read method of order 8 -\item PRI : Private table -\item BETA : Breaking waves coefficient -\end{itemize} - \begin{CommentBlock}{Related keywords} -2D RESULTS FILE\\ -NUMBER OF FIRST ITERATION FOR GRAPHIC PRINTOUTS\\ -PERIOD FOR GRAPHIC PRINTOUTS -\end{CommentBlock}""", - ), -# ----------------------------------- - PERIOD_FOR_GRAPHIC_PRINTOUTS = SIMP(statut ='o', -# ----------------------------------- - typ = 'I', - defaut = 1, - fr = """Determine la periode d''impression, -en nombre de pas de temps -des VARIABLES POUR LES SORTIES GRAPHIQUES dans le FICHIER DES -RESULTATS 2D et le FICHIER DES RESULTATS PONCTUELS. -**Mots-cles associes :** -VARIABLES POUR LES SORTIES GRAPHIQUES 2D -ABSCISSES DES POINTS DE SORTIE DU SPECTRE -ORDONNEES DES POINTS DE SORTIE DU SPECTRE -FICHIER DES RESULTATS 2D -FICHIER DES RESULTATS PONCTUELS -NUMERO DE LA PREMIERE ITERATION POUR LES SORTIES GRAPHIQUES""", - ang = """Determines the printing period, -in number of time step -of the VARIABLES FOR 2D GRAPHIC PRINTOUTS in the 2D -RESULTS FILE and the PUNCTUAL RESULTS FILE. -\\ - \begin{CommentBlock}{Related keywords} -VARIABLES FOR 2D GRAPHIC PRINTOUTS\\ -ABSCISSAE OF SPECTRUM PRINTOUT POINTS\\ -ORDINATES OF SPECTRUM PRINTOUT POINTS\\ -2D RESULTS FILE\\ -PUNCTUAL RESULTS FILE\\ -NUMBER OF FIRST ITERATION FOR GRAPHIC PRINTOUTS\\ -\end{CommentBlock}""", - ), -# ----------------------------------- - NUMBER_OF_FIRST_ITERATION_FOR_GRAPHICS_PRINTOUTS = SIMP(statut ='f', -# ----------------------------------- - typ = 'I', - defaut = 0, - fr = """Determine le nombre d''iterations sur le pas de temps -ou sur la frequence moyenne a partir duquel debute -l ecriture des resultats dans le FICHIER DES RESULTATS 2D et le -FICHIER DES RESULTATS PONCTUELS -**Mots-cles associes :** -PERIODE POUR LES SORTIES GRAPHIQUES -VARIABLES POUR LES SORTIES GRAPHIQUES 2D -ABSCISSES DES POINTS DE SORTIE DU SPECTRE -ORDONNEES DES POINTS DE SORTIE DU SPECTRE -FICHIER DES RESULTATS 2D -FICHIER DES RESULTATS PONCTUELS""", - ang = """Determines the number of iterations over mean angular -frequency from which the results are first written into the 2D RESULTS -FILE and the PUNCTUAL RESULTS FILE. -\\ - \begin{CommentBlock}{Related keywords} -PERIOD FOR GRAPHIC PRINTOUTS\\ -VARIABLES FOR 2D GRAPHIC PRINTOUTS\\ -ABSCISSAE OF SPECTRUM PRINTOUT POINTS\\ -ORDINATES OF SPECTRUM PRINTOUT POINTS\\ -2D RESULTS FILE\\ -PUNCTUAL RESULTS FILE -\end{CommentBlock}""", - ), -# ----------------------------------- - ED_RESULTS_FILE = SIMP(statut ='o', -# ----------------------------------- - typ = ('Fichier','All Files (*)','Sauvegarde'), - defaut = '', - fr = """Nom du fichier dans lequel seront ecrits les resultats du calcul -bidimensionnels. -Mots-cles associes -VARIABLES POUR LES SORTIES GRAPHIQUES 2D -PERIODE OUR LES SORTIES GRAPHIQUES -NUMERO DE LA PREMIERE ITERATION POUR LES SORTIES GRAPHIQUES""", - ang = """Name of the file into which the results of the two-dimensional -computation will be written. -\\ - \begin{CommentBlock}{Related keywords} -VARIABLES FOR 2D GRAPHIC PRINTOUTS\\ -PERIOD FOR GRAPHIC PRINTOUTS\\ -NUMBER OF FIRST ITERATION FOR GRAPHIC PRINTOUTS -\end{CommentBlock}""", - ), -# ----------------------------------- - ED_RESULTS_FILE_FORMAT = SIMP(statut ='o', -# ----------------------------------- - typ = 'TXM', - into = ['SERAFIN?','SERAFIND','MED'], - defaut = 'SERAFIN?', - fr = """Format du fichier de geometrie. -Les valeurs possibles sont : -- SERAFIN : format standard simple precision pour Telemac; -- SERAFIND: format standard double precision pour Telemac; -- MED : format MED base sur HDF5""", - ang = """Geometry file format. -Possible values are: -\begin{itemize} -\item SERAFIN : classical single precision format in Telemac; -\item SERAFIND: classical double precision format in Telemac; -\item MED : MED format based on HDF5 -\end{itemize}""", - ), -# ----------------------------------- - PUNCTUAL_RESULTS_FILE = SIMP(statut ='f', -# ----------------------------------- - typ = ('Fichier','All Files (*)','Sauvegarde'), - defaut = '', - fr = """Nom du fichier dans lequel seront ecrits les spectres -ponctuels. -**Mots-cles associes :** -FORMAT DU FICHIER DE SPECTRE -ABSCISSES DES POINTS DE SORTIE DU SPECTRE -ORDONNEES DES POINTS DE SORTIE DU SPECTRE -PERIODE POUR LES SORTIES GRAPHIQUES -NUMERO DE LA PREMIERE ITERATION POUR LES SORTIES GRAPHIQUES""", - ang = """Name of the file into which the punctual spectra will be -written. -\\ - \begin{CommentBlock}{Related keywords} -SPECTRUM FILE FORMAT\\ -ABSCISSAE OF SPECTRUM PRINTOUT POINTS\\ -ORDINATES OF SPECTRUM PRINTOUT POINTS\\ -PERIOD FOR GRAPHIC PRINTOUTS\\ -NUMBER OF FIRST ITERATION FOR GRAPHIC PRINTOUTS -\end{CommentBlock}""", - ), -# ----------------------------------- - SPECTRUM_FILE_FORMAT = SIMP(statut ='f', -# ----------------------------------- - typ = 'TXM', - into = ['SERAFIN?','SERAFIND','MED'], - defaut = 'SERAFIN?', - fr = """Format du fichier de spectre -Les valeurs possibles sont : -- SERAFIN : format standard simple precision pour Telemac; -- SERAFIND: format standard double precision pour Telemac; -- MED : format MED base sur HDF5""", - ang = """Spectrum results file format. -Possible values are: -\begin{itemize} -\item SERAFIN : classical single precision format in Telemac; -\item SERAFIND: classical double precision format in Telemac; -\item MED : MED format based on HDF5 -\end{itemize}""", - ), -# ----------------------------------- - ABSCISSAE_OF_SPECTRUM_PRINTOUT_POINTS = SIMP(statut ='f', -# ----------------------------------- - typ = 'R', min= 2, max= 2, - fr = """Tableau donnant les abscisses des points de sortie Seraphin du -spectre et de dimension maximale 99. Les points de sortie du spectre -sont les points 2D les plus proches des coordonnees specifiees -**Mots-cles associes :** -ORDONNEES DES POINTS DE SORTIE DU SPECTRE -FICHIER DES RESULTATS PONCTUELS""", - ang = """Array providing the abscissae of the Seraphin spectrum printout -points with a maximum dimension of 99. The chosen spectrum points are -the closest 2D points to the specified co-ordinates. -\\ - \begin{CommentBlock}{Related keywords} -ORDINATES OF SPECTRUM PRINTOUT POINTS\\ -PUNCTUAL RESULTS FILE -\end{CommentBlock}""", - ), -# ----------------------------------- - ORDINATES_OF_SPECTRUM_PRINTOUT_POINTS = SIMP(statut ='f', -# ----------------------------------- - typ = 'R', min= 2, max= 2, - fr = """Tableau donnant les ordonnees des points de sortie Seraphin du -spectre et de dimension max 99.Les points de sortie du spectre -sont les points 2D les plus proches des coordonnees specifiees -**Mots-cles associes :** -ABSCISSES DES POINTS DE SORTIE DU SPECTRE -FICHIER DES RESULTATS PONCTUELS""", - ang = """Array providing the ordinates of the Seraphin spectrum printout -points with a maximum dimension of 99. The spectrum printout points are -the closest 2D points to the specified co-ordinates -\\ - \begin{CommentBlock}{Related keywords} -ABSCISSAE OF SPECTRUM PRINTOUT POINTS\\ -PUNCTUAL RESULT FILE -\end{CommentBlock}""", - ), -# ----------------------------------- - ZD_SPECTRA_RESULTS_FILE = SIMP(statut ='f', -# ----------------------------------- - typ = ('Fichier','All Files (*)','Sauvegarde'), - defaut = '', - fr = """Nom du fichier dans lequel seront ecrits les spectres -frequentiels ponctuels (integres selon les directions). -**Mots-cles associes :** -FICHIER DES RESULTATS PONCTUELS -ABSCISSES DES POINTS DE SORTIE DU SPECTRE -ORDONNEES DES POINTS DE SORTIE DU SPECTRE -PERIODE POUR LES SORTIES GRAPHIQUES -NUMERO DE LA PREMIERE ITERATION POUR LES SORTIES GRAPHIQUES""", - ang = """Name of the file into which the frequential punctual -spectra (integrated according to the directions) will be written. -\\ - \begin{CommentBlock}{Related keywords} -PUNCTUAL RESULTS FILE\\ -ABSCISSAE OF SPECTRUM PRINTOUT POINTS\\ -ORDINATES OF SPECTRUM PRINTOUT POINTS\\ -PERIOD FOR GRAPHIC PRINTOUTS\\ -NUMBER OF FIRST ITERATION FOR GRAPHIC PRINTOUTS -\end{CommentBlock}""", - ), -# ----------------------------------- - GLOBAL_RESULT_FILE = SIMP(statut ='f', -# ----------------------------------- - typ = ('Fichier','All Files (*)','Sauvegarde'), - defaut = '', - fr = """Nom du fichier dans lequel sera ecrit le tableau F (spectre -de variance) en fin de calcul dans le but de faire une suite de calcul. -**Mots-cles associes :** -FORMAT DU FICHIER DES RESULTATS GLOBAUX""", - ang = """Name of the file in which the table F (density spectrum) -is written at the end of the computation in order to realise a next -computation. -\\ - \begin{CommentBlock}{Related keywords} -GLOBAL RESULT FILE FORMAT -\end{CommentBlock}""", - ), -# ----------------------------------- - GLOBAL_RESULT_FILE_FORMAT = SIMP(statut ='f', -# ----------------------------------- - typ = 'TXM', - into = ['SERAFIN?','SERAFIND','MED'], - defaut = 'SERAFIN?', - fr = """Format du fichier de resultats du calcul precedent. -Les valeurs possibles sont : -- SERAFIN : format standard simple precision pour Telemac; -- SERAFIND: format standard double precision pour Telemac; -- MED : format MED base sur HDF5""", - ang = """Previous computation results file format. -Possible values are: -\begin{itemize} -\item SERAFIN : classical single precision format in Telemac; -\item SERAFIND: classical double precision format in Telemac; -\item MED : MED format based on HDF5 -\end{itemize}""", - ), -# ----------------------------------- - FILE_WITH_COORDINATES_OF_SPECTRA_TO_WRITE = SIMP(statut ='f', -# ----------------------------------- - typ = ('Fichier','All Files (*)'), - defaut = '', - fr = """Fichier texte au format DAT de Salome avec les coordonnées -des spectres a ecrire.""", - ang = """Text file following the DAT format of Salome with the -coordinates of the spectra to output.""", - ), - ), - ), -# ----------------------------------- - INPUT = FACT(statut='o', -# ----------------------------------- -# ----------------------------------- - NAMES_OF_VARIABLES = SIMP(statut ='f', -# ----------------------------------- - typ = 'TXM', min= 5, max= 5, - defaut = 'VITESSE U M/S;VITESSE V M/S;VENT X M/S;VENT Y M/S;HAUTEUR D EAU M', - fr = """Nom des variables dans les fichiers au format SERAFIN - 1: Vitesse U - 2: Vitesse V - 3: Vitesse du vent suivant X - 4: Vitesse du vent suivant Y - 5: Profondeur""", - ang = """Names of variables in SERAFIN format files -\begin{itemize} - \item 1: Velocity U - \item 2: Velocity V - \item 3: Wind velocity along X - \item 4: Wind velocity along Y - \item 5: Depth -\end{itemize}""", - ), -# ----------------------------------- - CURRENT_FILE = FACT(statut='o', -# ----------------------------------- -# ----------------------------------- - CURRENTS_FILE_FORMAT = SIMP(statut ='f', -# ----------------------------------- - typ = 'TXM', - into = ["Selafin, TELEMAC type","User format (couuti.f)"], - defaut = ["Selafin, TELEMAC type"], - fr = """Choix du type de format du fichier des courants : -\begin{itemize} -\item 3 = selafin du type TELEMAC -\item 4 = format utilisateur (Modifier alors la procedure couuti.f) -\end{itemize} -**Mots-cles associes :** -FICHIER DES COURANTS BINAIRE -FICHIER DES COURANTS FORMATE""", - ang = """Selection of the type of currents file format : -\begin{itemize} -\item 3 = selafin, TELEMAC type -\item 4 = user format (the couuti.f procedure should then be amended) -\end{itemize} -\begin{CommentBlock}{Related keywords} -CURRENTS BINARY FILE\\ -CURRENTS FORMATTED FILE\\ -\end{CommentBlock}""", - ), -# ----------------------------------- - TIME_INCREMENT_NUMBER_IN_TELEMAC_FILE = SIMP(statut ='f', -# ----------------------------------- - typ = 'I', - defaut = 1, - fr = """Indique le numero du pas de temps du fichier de resultats -TELEMAC (fichier des courants) correspondant a l instant desire -pour recuperer la donnee. -**Mots-cles associes :** -RANG DE LA DONNEE TELEMAC A RECUPERER -RECUPERATION DE DONNEES TELEMAC""", - ang = """Indicates the number of the time increment in the TELEMAC -results file (currents file) corresponding to the desired time for data -recovery. -\\ - \begin{CommentBlock}{Related keywords} -RANK OF THE TELEMAC DATA ITEM TO BE RECOVERED\\ -RECOVERY OF TELEMAC DATA ITEM -\end{CommentBlock}""", - ), -# ----------------------------------- - TIME_UNIT_IN_CURRENTS_FILE = SIMP(statut ='f', -# ----------------------------------- - typ = 'R', - defaut = 1., - fr = """Unite donnee en secondes, par exemple 3600. si le temps -est donne en heures""", - ang = """Unit given in seconds, for example 3600. if time -is given in hours""", - ), -# ----------------------------------- - TIME_SHIFT_IN_CURRENTS_FILE = SIMP(statut ='f', -# ----------------------------------- - typ = 'R', - defaut = 0., - fr = """Sera retranche au temps lu dans le fichier. -L''unite est celle du fichier""", - ang = """Will be withdrawn from the time read in the file. - The unit is that of the file""", - ), -# ----------------------------------- - BINARY_CURRENTS_FILE = SIMP(statut ='f', -# ----------------------------------- - typ = ('Fichier','All Files (*)'), - defaut = '', - fr = """Nom du fichier de donnees de courant (si binaire). -**Mots-cles associes :** -PRISE EN COMPTE D''UN COURANT STATIONNAIRE -PRISE EN COMPTE DE LA MAREE -FICHIER DES COURANTS FORMATE -FORMAT DU FICHIER DES COURANTS""", - ang = """Name of the current data file (if binary). -\\ - \begin{CommentBlock}{Related keywords} -CONSIDERATION OF A STATIONARY CURRENT\\ -CONSIDERATION OF TIDE\\ -FORMATTED CURRENTS FILE\\ -CURRENTS FILE FORMAT -\end{CommentBlock}""", - ), -# ----------------------------------- - FORMATTED_CURRENTS_FILE = SIMP(statut ='f', -# ----------------------------------- - typ = ('Fichier','All Files (*)'), - defaut = '', - fr = """Nom du fichier de donnees de courant (si formate). -**Mots-cles associes :** -PRISE EN COMPTE D''UN COURANT STATIONNAIRE -PRISE EN COMPTE DE LA MAREE -FICHIER DES COURANTS BINAIRE -FORMAT DU FICHIER DES COURANTS""", - ang = """Name of the current data file (if formatted). -\\ - \begin{CommentBlock}{Related keywords} -CONSIDERATION OF A STATIONARY CURRENT\\ -CONSIDERATION OF TIDE\\ -BINARY CURRENTS FILE\\ -CURRENTS FILE FORMAT -\end{CommentBlock}""", - ), -# ----------------------------------- - BINARY_CURRENTS_FILE_FORMAT = SIMP(statut ='f', -# ----------------------------------- - typ = 'TXM', - into = ['SERAFIN','SERAFIND','MED'], - defaut = 'SERAFIN?', - fr = """Format du fichier binaire des courants. -Les valeurs possibles sont : -- SERAFIN : format standard simple precision pour Telemac; -- SERAFIND: format standard double precision pour Telemac; -- MED : format MED base sur HDF5""", - ang = """Currents binary file format. -Possible values are: -\begin{itemize} -\item SERAFIN : classical single precision format in Telemac; -\item SERAFIND: classical double precision format in Telemac; -\item MED : MED format based on HDF5 -\end{itemize}""", - ), - ), -# ----------------------------------- - WIND_FILE = FACT(statut='o', -# ----------------------------------- -# ----------------------------------- - WINDS_FILE_FORMAT = SIMP(statut ='f', -# ----------------------------------- - typ = 'TXM', - into = ["Selafin, TELEMAC type","User format (venuti.f)"], - defaut = ["Selafin, TELEMAC type"], - fr = """Choix du type de format du fichier des vents : -3 = selafin du type TELEMAC -4 = format utilisateur (Modifier alors la procedure venuti.f) -**Mots-cles associes :** -FICHIER DES VENTS BINAIRE -FICHIER DES VENTS FORMATE""", - ang = """Selection of winds file format type : -\begin{itemize} -\item 3 = selafin, TELEMAC type -\item 4 = user format (the venuti.f procedure should then be amended) -\end{itemize} - \begin{CommentBlock}{Related keywords} -WINDS FILE TYPE\\ -WINDS FILE\\ -\end{CommentBlock}""", - ), -# ----------------------------------- - TIME_UNIT_IN_WINDS_FILE = SIMP(statut ='f', -# ----------------------------------- - typ = 'R', - defaut = 1., - fr = """Unite donnee en secondes, par exemple 3600. si le temps -est donne en heures""", - ang = """Unit given in seconds, for example 3600. if time -is given in hours""", - ), -# ----------------------------------- - TIME_SHIFT_IN_WINDS_FILE = SIMP(statut ='f', -# ----------------------------------- - typ = 'R', - defaut = 0., - fr = """Sera retranche au temps lu dans le fichier. -L''unite est celle du fichier""", - ang = """Will be withdrawn from the time read in the file. - The unit is that of the file""", - ), -# ----------------------------------- - BINARY_WINDS_FILE = SIMP(statut ='f', -# ----------------------------------- - typ = ('Fichier','All Files (*)'), - defaut = '', - fr = """Nom du fichier de donnees de vent (si binaire). -**Mots-cles associes :** -PRISE EN COMPTE DU VENT -FICHIER DES VENTS FORMATE -FORMAT DU FICHIER DES VENTS""", - ang = """Name of wind data file (if binary). -\\ - \begin{CommentBlock}{Related keywords} -CONSIDERATION OF WIND\\ -FORMATTED WINDS FILE\\ -WINDS FILE FORMAT -\end{CommentBlock}""", - ), -# ----------------------------------- - BINARY_WINDS_FILE_FORMAT = SIMP(statut ='f', -# ----------------------------------- - typ = 'TXM', - into = ['SERAFIN','SERAFIND','MED'], - defaut = 'SERAFIN?', - fr = """Format du fichier binaire des vents. -Les valeurs possibles sont : -- SERAFIN : format standard simple precision pour Telemac; -- SERAFIND: format standard double precision pour Telemac; -- MED : format MED base sur HDF5""", - ang = """wind data binary file format. -Possible values are: -\begin{itemize} -\item SERAFIN : classical single precision format in Telemac; -\item SERAFIND: classical double precision format in Telemac; -\item MED : MED format based on HDF5 -\end{itemize}""", - ), -# ----------------------------------- - FORMATTED_WINDS_FILE = SIMP(statut ='f', -# ----------------------------------- - typ = ('Fichier','All Files (*)'), - defaut = '', - fr = """Nom du fichier de donnees de vent (si formate). -**Mots-cles associes :** -PRISE EN COMPTE DU VENT -FICHIER DES VENTS BINAIRE -FORMAT DU FICHIER DES VENTS""", - ang = """Name of wind data file (if formatted). -\\ - \begin{CommentBlock}{Related keywords} -CONSIDERATION OF WIND\\ -BINARY WINDS FILE\\ -WINDS FILE FORMAT -\end{CommentBlock}""", - ), - ), -# ----------------------------------- - TIDAL_FILE = FACT(statut='o', -# ----------------------------------- -# ----------------------------------- - TIDAL_WATER_LEVEL_FILE_FORMAT = SIMP(statut ='f', -# ----------------------------------- - typ = 'TXM', - into = ["Selafin, TELEMAC type","User format (maruti.f)"], - defaut = ["Selafin, TELEMAC type"], - fr = """Choix du type de format du fichier du niveau de la maree : -3 = selafin du type TELEMAC -4 = format utilisateur (Modifier alors la procedure maruti.f) -**Mots-cles associes :** -PRISE EN COMPTE DE LA MAREE -FICHIER DU NIVEAU DE LA MAREE BINAIRE -FICHIER DU NIVEAU DE LA MAREE FORMATE -PERIODE D ACTUALISATION DE LA MAREE""", - ang = """Selection of the type of tidal water level file format : -\begin{itemize} -\item 3 = selafin, TELEMAC type -\item 4 = user format (the maruti.f procedure should then be amended) -\end{itemize} - \begin{CommentBlock}{Related keywords} -CONSIDERATION OF TIDE\\ -BINARY TIDAL WATER LEVEL FILE\\ -FORMATTED TIDAL WATER LEVEL FILE\\ -TIDE REFRESHING PERIOD -\end{CommentBlock}""", - ), -# ----------------------------------- - RANK_OF_THE_WATER_LEVEL_DATA_IN_THE_TELEMAC_FILE = SIMP(statut ='f', -# ----------------------------------- - typ = 'I', - defaut = 4, - fr = """Rang de la variable donnant le niveau de la maree -dans le fichier TELEMAC -**Mots-cles associes :** -PRISE EN COMPTE DE LA MAREE -FICHIER DU NIVEAU DE LA MAREE BINAIRE -FICHIER DU NIVEAU DE LA MAREE FORMATE -PERIODE D ACTUALISATION DE LA MAREE""", - ang = """Rank of the water level data in the TELEMAC file -\\ - \begin{CommentBlock}{Related keywords} -CONSIDERATION OF TIDE\\ -BINARY TIDAL WATER LEVEL FILE\\ -FORMATTED TIDAL WATER LEVEL FILE\\ -TIDE REFRESHING PERIOD -\end{CommentBlock}""", - ), -# ----------------------------------- - TIME_UNIT_IN_TIDAL_WATER_LEVEL_FILE = SIMP(statut ='f', -# ----------------------------------- - typ = 'R', - defaut = 1., - fr = """Unite donnee en secondes, par exemple 3600. si le temps -est donne en heures""", - ang = """Unit given in seconds, for example 3600. if time -is given in hours""", - ), -# ----------------------------------- - TIME_SHIFT_IN_TIDAL_WATER_LEVEL_FILE = SIMP(statut ='f', -# ----------------------------------- - typ = 'R', - defaut = 0., - fr = """Sera retranche au temps lu dans le fichier. -L''unite est celle du fichier""", - ang = """Will be withdrawn from the time read in the file. - The unit is that of the file""", - ), -# ----------------------------------- - BINARY_TIDAL_WATER_LEVEL_FILE = SIMP(statut ='f', -# ----------------------------------- - typ = ('Fichier','All Files (*)'), - defaut = '', - fr = """Nom du fichier de donnees du niveau d''eau (si binaire). -**Mots-cles associes :** -PRISE EN COMPTE DE LA MAREE -FICHIER DU NIVEAU DE LA MAREE FORMATE -FORMAT DU FICHIER DU NIVEAU DE LA MAREE -PERIODE D ACTUALISATION DE LA MAREE""", - ang = """Name of the water level data file (if binary). -\\ - \begin{CommentBlock}{Related keywords} -CONSIDERATION OF TIDE\\ -FORMATTED TIDAL WATER LEVEL FILE\\ -TIDAL WATER LEVEL FILE FORMAT\\ -TIDE REFRESHING PERIOD -\end{CommentBlock}""", - ), -# ----------------------------------- - BINARY_TIDAL_WATER_FILE_FORMAT = SIMP(statut ='f', -# ----------------------------------- - typ = 'TXM', - into = ['SERAFIN','SERAFIND','MED'], - defaut = 'SERAFIN?', - fr = """Format du fichier de la maree binaire. -Les valeurs possibles sont : -- SERAFIN : format standard simple precision pour Telemac; -- SERAFIND: format standard double precision pour Telemac; -- MED : format MED base sur HDF5""", - ang = """binary tidal water file format. -Possible values are: -\begin{itemize} -\item SERAFIN : classical single precision format in Telemac; -\item SERAFIND: classical double precision format in Telemac; -\item MED : MED format based on HDF5 -\end{itemize}""", - ), -# ----------------------------------- - FORMATTED_TIDAL_WATER_LEVEL_FILE = SIMP(statut ='f', -# ----------------------------------- - typ = ('Fichier','All Files (*)'), - defaut = '', - fr = """Nom du fichier de donnees du niveau d''eau (si formate). -**Mots-cles associes :** -PRISE EN COMPTE D UN COURANT -FICHIER DES COURANTS BINAIRE -FORMAT DU FICHIER DES COURANTS -PERIODE D ACTUALISATION DE LA MAREE""", - ang = """Name of the tidal data file (if formatted). -\\ - \begin{CommentBlock}{Related keywords} -CONSIDERATION OF TIDE\\ -BINARY TIDAL WATER LEVEL FILE\\ -TIDAL WATER LEVEL FILE FORMAT\\ -TIDE REFRESHING PERIOD -\end{CommentBlock}""", - ), - ), -# ----------------------------------- - DATA = FACT(statut='o', -# ----------------------------------- -# ----------------------------------- - GEOMETRY_FILE = SIMP(statut ='o', -# ----------------------------------- - typ = ('Fichier','All Files (*)'), - defaut = '', - fr = """Nom du fichier contenant le maillage du calcul a realiser. -**Mots-cles associes :** -FORMAT DU FICHIER DE GEOMETRIE""", - ang = """Name of the file containing the mesh of the computation to be -made. -\\ - \begin{CommentBlock}{Related keywords} -GEOMETRY FILE FORMAT -\end{CommentBlock}""", - ), -# ----------------------------------- - GEOMETRY_FILE_FORMAT = SIMP(statut ='o', -# ----------------------------------- - typ = 'TXM', - into = ['SERAFIN?','SERAFIND','MED'], - defaut = 'SERAFIN?', - fr = """Format du fichier de geometrie. -Les valeurs possibles sont : -- SERAFIN : format standard simple precision pour Telemac; -- SERAFIND: format standard double precision pour Telemac; -- MED : format MED base sur HDF5""", - ang = """Geometry file format. -Possible values are: -\begin{itemize} -\item SERAFIN : classical single precision format in Telemac; -\item SERAFIND: classical double precision format in Telemac; -\item MED : MED format based on HDF5 -\end{itemize}""", - ), -# ----------------------------------- - FORTRAN_FILE = SIMP(statut ='f', -# ----------------------------------- - typ = ('Fichier','All Files (*)'), max='**', - defaut = '', - fr = """Nom du fichier FORTRAN a soumettre.""", - ang = """Name of FORTRAN file to be submitted.""", - ), -# ----------------------------------- - BOUNDARY_CONDITIONS_FILE = SIMP(statut ='o', -# ----------------------------------- - typ = ('Fichier','All Files (*)'), - defaut = '', - fr = """Nom du fichier contenant les types de conditions aux limites. -Ce fichier est rempli de facon automatique par le mailleur au moyen de -couleurs affectees aux noeuds des frontieres du domaine de calcul.""", - ang = """Name of the file containing the types of boundary conditions. -This file is automatically filled by the grid generator by means of -colours that are assigned to the boundary nodes in the computational -domain.""", - ), -# ----------------------------------- - BOTTOM_TOPOGRAPHY_FILE = SIMP(statut ='f', -# ----------------------------------- - typ = ('Fichier','All Files (*)'), - defaut = '', - fr = """Nom du fichier eventuel contenant la bathymetrie associee au -maillage au format SINUSX. -Si ce mot-cle est utilise; c''est cette bathymetrie qui sera utilisee -pour le calcul.""", - ang = """Name of any file containing the bathymetric data associated to -the SINUSX-formatted grid. It this keyword is used, these bathymetric -data shall be used for the computation.""", - ), -# ----------------------------------- - BOTTOM_SMOOTHINGS = SIMP(statut ='f', -# ----------------------------------- - typ = 'I', - defaut = 0, - fr = """Nombre de lissages effectues sur la topographie. -Chaque lissage, effectue a l''aide d''une matrice de masse, -est conservatif. A utiliser lorsque les donnees de bathymetrie -donnent des resultats trop irreguliers apres interpolation. -Voir aussi le sous-programme CORFON""", - ang = """Number of smoothings made on bottom features. Each smoothing, -being made by means of a mass matrix, is conservative. To be used when -the bathymetric data yield too irregular data after interpolation. -Also refer to the CORFON subroutine.""", - ), -# ----------------------------------- - NEXT_COMPUTATION = SIMP(statut ='f', -# ----------------------------------- - typ = bool, - defaut = False, - fr = """Indique si on fait une suite de calcul. -**Mots-cles associes :** -FICHIER DU CALCUL PRECEDENT""", - ang = """Indicates whether a next compution is done. -\\ - \begin{CommentBlock}{Related keywords} -PREVIOUS COMPUTATION FILE -\end{CommentBlock}""", - ), -# ----------------------------------- - b_NEXT_COMPUTATIONG = BLOC(condition="NEXT_COMPUTATION == True", -# ----------------------------------- -# ----------------------------------- - PREVIOUS_COMPUTATION_FILE = SIMP(statut ='o', -# ----------------------------------- - typ = ('Fichier','All Files (*)'), - defaut = '', - fr = """Nom d''un fichier contenant les resultats d''un calcul precedent -realise sur le meme maillage et qui va fournir les conditions -initiales pour une suite de calcul. -**Mots-cles associes :** -BINAIRE DU FICHIER DU CALCUL PRECEDENT""", - ang = """Name of the file containing the global results of a previous -computation realised with the same mesh. This file gives the initial -conditions for a next computation. -\\ - \begin{CommentBlock}{Related keywords} -BINARY OF THE PREVIOUS COMPUTATION FILE -\end{CommentBlock}""", - ), -# ----------------------------------- - PREVIOUS_COMPUTATION_FILE_FORMAT = SIMP(statut ='o', -# ----------------------------------- - typ = 'TXM', - into = ['SERAFIN?','SERAFIND','MED'], - defaut = 'SERAFIN?', - fr = """Format du fichier de resultats du calcul precedent. -Les valeurs possibles sont seulement: -- SERAFIN : format standard simple precision pour Telemac; -- SERAFIND: format standard double precision pour Telemac; -- MED : format MED base sur HDF5""", - ang = """Previous computation results file format. -Possible values are only: -\begin{itemize} -\item SERAFIN : classical single precision format in Telemac; -\item SERAFIND: classical double precision format in Telemac; -\item MED : MED format based on HDF5 -\end{itemize}""", - ), - ), -# ----------------------------------- - REFERENCE_FILE = SIMP(statut ='f', -# ----------------------------------- - typ = ('Fichier','All Files (*)'), - defaut = '', - fr = """Nom du fichier de reference en cas de validation. -**Mots-cles associes :** -VALIDATION""", - ang = """Name of validation data file -\\ - \begin{CommentBlock}{Related keywords} -VALIDATION -\end{CommentBlock}""", - ), -# ----------------------------------- - REFERENCE_FILE_FORMAT = SIMP(statut ='f', -# ----------------------------------- - typ = 'TXM', - into = ['SERAFIN','SERAFIND','MED'], - defaut = 'SERAFIN?', - fr = """Format du fichier de resultats du calcul precedent. -Les valeurs possibles sont : -- SERAFIN : format standard simple precision pour Telemac; -- SERAFIND: format standard double precision pour Telemac; -- MED : format MED base sur HDF5""", - ang = """Previous computation results file format. -Possible values are: -\begin{itemize} -\item SERAFIN : classical single precision format in Telemac; -\item SERAFIND: classical double precision format in Telemac; -\item MED : MED format based on HDF5 -\end{itemize}""", - ), -# ----------------------------------- - BINARY_FILE_1 = SIMP(statut ='f', -# ----------------------------------- - typ = ('Fichier','All Files (*)'), - defaut = '', - fr = """Fichier de donnees code en binaire mis a la disposition -de l''utilisateur.""", - ang = """Binary-coded data file made available to the user.""", - ), -# ----------------------------------- - BINARY_DATA_FILE_1_FORMAT = SIMP(statut ='f', -# ----------------------------------- - typ = 'TXM', - into = ['','SERAFIN','SERAFIND','MED'], - defaut = '', - fr = """Format du fichier des donnees binaires. -Les valeurs possibles sont : -- SERAFIN : format standard simple precision pour Telemac; -- SERAFIND: format standard double precision pour Telemac; -- MED : format MED base sur HDF5""", - ang = """binary data file format. -Possible values are: -\begin{itemize} -\item SERAFIN : classical single precision format in Telemac; -\item SERAFIND: classical double precision format in Telemac; -\item MED : MED format based on HDF5 -\end{itemize}""", - ), -# ----------------------------------- - FORMATTED_FILE_1 = SIMP(statut ='f', -# ----------------------------------- - typ = ('Fichier','All Files (*)'), - defaut = '', - fr = """Fichier de donnees formate mis a la disposition -de l''utilisateur.""", - ang = """Formatted data file made available to the user.""", - ), - ), -# ----------------------------------- - BOUNDARY_CONDITION_FILE = FACT(statut='o', -# ----------------------------------- -# ----------------------------------- - FILE_WITH_COORDINATES_OF_SPECTRA_TO_IMPOSE = SIMP(statut ='f', -# ----------------------------------- - typ = ('Fichier','All Files (*)'), - defaut = '', - fr = """Fichier texte au format DAT de Salome avec les coordonnées -des spectres qui vont etre impose en conditions limites.""", - ang = """Text file following the DAT format of Salome with the -coordinates of the spectra that will be imposed on the boundary. -\\ - \begin{CommentBlock}{Related keywords} -IMPOSED SPECTRA FILE -IMPOSED SPECTRA FILE FORMAT -TIME UNIT OF IMPOSED SPECTRA FILE -TIME SHIFT OF IMPOSED SPECTRA FILE -\end{CommentBlock}""", - ), -# ----------------------------------- - IMPOSED_SPECTRA_FILE = SIMP(statut ='f', -# ----------------------------------- - typ = ('Fichier','All Files (*)'), - defaut = '', - fr = """Nom du fichier contenant le maillage des spectres a imposer.""", - ang = """Name of the file containing the mesh with the imposed spectra. -\\ - \begin{CommentBlock}{Related keywords} -IMPOSED SPECTRA FILE FORMAT -TIME UNIT OF IMPOSED SPECTRA FILE -TIME SHIFT OF IMPOSED SPECTRA FILE -FILE WITH COORDINATES OF SPECTRA TO IMPOSE -\end{CommentBlock}""", - ), -# ----------------------------------- - IMPOSED_SPECTRA_FILE_FORMAT = SIMP(statut ='f', -# ----------------------------------- - typ = 'TXM', - into = ['SERAFIN','SERAFIND','MED'], - defaut = 'SERAFIN', - fr = """Format du fichier des spectres imposes. -Les valeurs possibles sont : -- SERAFIN : format standard simple precision pour Telemac; -- SERAFIND: format standard double precision pour Telemac; -- MED : format MED base sur HDF5""", - ang = """Imposed spectra file format. -Possible values are: -\begin{itemize} -\item SERAFIN : classical single precision format in Telemac; -\item SERAFIND: classical double precision format in Telemac; -\item MED : MED format based on HDF5 -\end{itemize} - -\begin{CommentBlock}{Related keywords} -IMPOSED SPECTRA FILE -TIME UNIT OF IMPOSED SPECTRA FILE -TIME SHIFT OF IMPOSED SPECTRA FILE -FILE WITH COORDINATES OF SPECTRA TO IMPOSE -\end{CommentBlock}""", - ), -# ----------------------------------- - TIME_UNIT_OF_IMPOSED_SPECTRA_FILE = SIMP(statut ='f', -# ----------------------------------- - typ = 'R', - defaut = [1.], - fr = """Unite donnee en secondes, par exemple 3600. si le temps -est donne en heures.""", - ang = """Unit given in seconds, for example 3600. if time -is given in hours. -\\ - \begin{CommentBlock}{Related keywords} -IMPOSED SPECTRA FILE -IMPOSED SPECTRA FILE FORMAT -TIME SHIFT OF IMPOSED SPECTRA FILE -FILE WITH COORDINATES OF SPECTRA TO IMPOSE -\end{CommentBlock}""", - ), -# ----------------------------------- - TIME_SHIFT_OF_IMPOSED_SPECTRA_FILE = SIMP(statut ='f', -# ----------------------------------- - typ = 'R', - defaut = [0.], - fr = """Sera retranche au temps lu dans le fichier. -L''unite est celle du fichier.""", - ang = """Will be withdrawn from the time read in the file. - The unit is that of the file. -\\ - \begin{CommentBlock}{Related keywords} -IMPOSED SPECTRA FILE -IMPOSED SPECTRA FILE FORMAT -TIME UNIT OF IMPOSED SPECTRA FILE -FILE WITH COORDINATES OF SPECTRA TO IMPOSE -\end{CommentBlock}""", - ), - ), - ), -) -# ----------------------------------------------------------------------- -GENERAL_PARAMETERS = PROC(nom= "GENERAL_PARAMETERS",op = None, -# ----------------------------------------------------------------------- - UIinfo = {"groupes": ("CACHE")}, -# ----------------------------------- - TIME = FACT(statut='o', -# ----------------------------------- -# ----------------------------------- - NUMBER_OF_TIME_STEP = SIMP(statut ='o', -# ----------------------------------- - typ = 'I', - fr = """Definit le nombre de pas de temps effectues lors de -l''execution du code. -**Mots-cles associes :** -PAS DE TEMPS""", - ang = """Define the number of time step. -\\ - \begin{CommentBlock}{Related keywords} -TIME STEP -\end{CommentBlock}""", - ), -# ----------------------------------- - TIME_STEP = SIMP(statut ='o', -# ----------------------------------- - typ = 'R', - fr = """Definit le pas de temps en secondes. -**Mots-cles associes :** -NOMBRE DE PAS DE TEMPS""", - ang = """Define the time step in seconds. -\\ - \begin{CommentBlock}{Related keywords} -NUMBER OF TIME STEPS -\end{CommentBlock}""", - ), -# ----------------------------------- - DATE_OF_COMPUTATION_BEGINNING = SIMP(statut ='f', -# ----------------------------------- - typ = 'R', - defaut = 0, - fr = """Donne la date du debut du calcul au format aaaammjjhhmm -ce qui permet de se reperer par rapport au fichier des vents, -199310241524 represente le 24 octobre 93 a 15h24. -**Mots-cles associes :** -FICHIER DES VENTS BINAIRE -FICHIER DES VENTS FORMATE -FORMAT DU FICHIER DES VENTS""", - ang = """Gives the date of the computation beginning. The format -is yyyymmddhhmm, -as an exemple 199310241524 means the 24 october 93 -at 15h24. This date gives a reference for reading the -wind file. -\\ - \begin{CommentBlock}{Related keywords} -BINARY WIND FILE\\ -FORMATTED WIND FILE\\ -WIND FILE FORMAT -\end{CommentBlock}""", - ), -# ----------------------------------- - INITIAL_TIME_SET_TO_ZERO = SIMP(statut ='f', -# ----------------------------------- - typ = bool, - defaut = False, - fr = """Remet le temps a zero en cas de suite de calcul""", - ang = """Initial time set to zero in case of restart""", - ), - ), -# ----------------------------------- - SPECTRAL_DISCRETISATION = FACT(statut='o', -# ----------------------------------- -# ----------------------------------- - NUMBER_OF_DIRECTIONS = SIMP(statut ='o', -# ----------------------------------- - typ = 'I', - defaut = 12, - fr = """Definit le nombre de directions de propagation de la houle. -Les directions de propagation sont regulierement reparties entre 0 -et 360 degres.""", - ang = """Defines the number of wave propagation directions. The -propagation directions are evenly distributed from 0 to 360 degrees.""", - ), -# ----------------------------------- - NUMBER_OF_FREQUENCIES = SIMP(statut ='o', -# ----------------------------------- - typ = 'I', - defaut = 15, - fr = """Definit le nombre de frequences de propagation de la houle. -Les frequences sont reparties geometriquement en fonction de la -FREQUENCE MINIMALE et RAISON FREQUENTIELLE. -**Mots-cles associes :** -FREQUENCE MINIMALE -RAISON FREQUENTIELLE -FACTEUR DE QUEUE DU SPECTRE""", - ang = """Defines the number of wave propagation frequencies. The -propagation frequencies are geometrically distributed as a fonction -of the MINIMAL FREQUENCY OF THE COMPUTATION and the FREQUENTIAL -REASON -\\ - \begin{CommentBlock}{Related keywords} -FREQUENTIAL RATIO\\ -SPECTRUM TAIL FACTOR -\end{CommentBlock}""", - ), -# ----------------------------------- - MINIMAL_FREQUENCY = SIMP(statut ='o', -# ----------------------------------- - typ = 'R', - fr = """Definit la frequence minimale en Hz. -On obtient les autres frequences grace a la RAISON FREQUENTIELLE r et le -NOMBRE DE FREQUENCES NF par $f=f0*r^{k-1}$ k=1,NF. -**Mots-cles associes :** -RAISON FREQUENTIELLE -NOMBRE DE FREQUENCES -FACTEUR DE QUEUE DU SPECTRE""", - ang = """Define the minimal frequency in Hz. The discretised frequencies -are computed from the FREQUENTIAL RATIO r and the NUMBER OF FREQUENCIES -NF by the relation $f=f_0*r^{k-1}$ k=1,NF. -\\ - \begin{CommentBlock}{Related keywords} -FREQUENTIAL RATIO\\ -NUMBER OF FREQUENCIES\\ -SPECTRUM TAIL FACTOR -\end{CommentBlock}""", - ), -# ----------------------------------- - FREQUENTIAL_RATIO = SIMP(statut ='o', -# ----------------------------------- - typ = 'R', - defaut = 1.1, - fr = """Definit le rapport entre 2 frequences de discretisation -successives. On obtient les autres frequences grace a la FREQUENCE -MINIMALE f0 et le NOMBRE DE FREQUENCES NF par $f=f0*r^{k-1}$ k=1,NF. -**Mots-cles associes :** -FREQUENCE MINIMALE -NOMBRE DE FREQUENCES -FACTEUR DE QUEUE DU SPECTRE""", - ang = """Define the ratio between 2 successive discretised -frequencies -\\ - \begin{CommentBlock}{Related keywords} -MINIMAL FREQUENCY\\ -NUMBER OF FREQUENCIES\\ -SPECTRUM TAIL FACTOR -\end{CommentBlock}""", - ), -# ----------------------------------- - SPECTRUM_TAIL_FACTOR = SIMP(statut ='f', -# ----------------------------------- - typ = 'R', - defaut = 5., - fr = """Utilise pour prendre en compte dans les calculs la -contribution des hautes frequences non discretisees. -**Mots-cles associes :** -NOMBRE DE FREQUENCES -FREQUENCE MINIMALE -RAISON FREQUENTIELLE""", - ang = """Used to consider in the computations the contribution -of the non discretised high frequencies -\\ - \begin{CommentBlock}{Related keywords} -NUMBER OF FREQUENCIES\\ -FREQUENTIAL RATIO -\end{CommentBlock}""", - ), -# ----------------------------------- - SPECTRUM_ENERGY_THRESHOLD = SIMP(statut ='f', -# ----------------------------------- - typ = 'R', - defaut = 1.E-30, - fr = """ En condition initiale, une energie inferieure a ce seuil -pour un couple frequence-direction donnee est prise nulle. Utile -surtout pour les comparaisons avec WAM cycle 4.""", - ang = """For initial conditions, the energy on a frequency-direction -component lower to this threshold is taken to 0. -Useful for comparisons with WAM cycle 4.""", - ), -# ----------------------------------- - OPTION_FOR_DIAGNOSTIC_TAIL = SIMP(statut ='f', -# ----------------------------------- - typ = 'I', - defaut = [1], - fr = """Permet de choisir la methode de correction de la -partie diagnostique du spectre. -\begin{itemize} -\item 0 : Pas de queue diagnostique -\item 1 : Une decroissance en $f^{-TAILF}$ est imposee au dessus de -max(4fPM;2.5fmoy) -\end{itemize} -**Mots-cles associes :** -FACTEUR DE QUEUE DU SPECTRE -NOMBRE DE FREQUENCES -RAISON FREQUENTIELLE""", - ang = """Option to treat the spectrum diagnotic tail. -\begin{itemize} -\item 0 : No diagnostic tail -\item 1 : A decrease in $f^{-TAILF}$ is imposed beyond -max(4fPM;2.5fmoy) -\end{itemize} - \begin{CommentBlock}{Related keywords} -SPECTRUM TAIL FACTOR\\ -NUMBER OF FREQUENCIES\\ -FREQUENTIAL RATIO -\end{CommentBlock}""", - ), - ), -# ----------------------------------- - METEO = FACT(statut='o', -# ----------------------------------- -# ----------------------------------- - TIDE_REFRESHING_PERIOD = SIMP(statut ='f', -# ----------------------------------- - typ = 'I', - defaut = 1, - fr = """Determine la periode, en nombre d''iterations, -d''actualisation de la profondeur d''eau et des courants de maree. -**Mots-cles associes :** -PRISE EN COMPTE DE LA MAREE -FICHIER DU NIVEAU DE LA MAREE BINAIRE -FICHIER DU NIVEAU DE LA MAREE FORMATE -FORMAT DU FICHIER DU NIVEAU DE LA MAREE""", - ang = """Determines the period in number of iterations to -update the tidal currents and the water depth. -\\ - \begin{CommentBlock}{Related keywords} -CONSIDERATION OF TIDE\\ -BINARY TIDAL WATER LEVEL FILE\\ -FORMATTED TIDAL WATER LEVEL FILE\\ -FORMAT DU FICHIER DU NIVEAU DE LA MAREE\\ -\end{CommentBlock}""", - ), -# ----------------------------------- - WIND_VELOCITY_ALONG_X = SIMP(statut ='f', -# ----------------------------------- - typ = 'R', - defaut = 0., - fr = """Vitesse du vent suivant X, constante et homogene (en m/s) -**Mots-cles associes :** -PRISE EN COMPTE DU VENT""", - ang = """Wind velocity along X axis, constant and homogeneous (m/s) -\\ - \begin{CommentBlock}{Related keywords} -CONSIDERATION OF A WIND -\end{CommentBlock}""", - ), -# ----------------------------------- - WIND_VELOCITY_ALONG_Y = SIMP(statut ='f', -# ----------------------------------- - typ = 'R', - defaut = 0., - fr = """Vitesse du vent suivant Y, constante et homogene (en m/s) -**Mots-cles associes :** -PRISE EN COMPTE DU VENT""", - ang = """Wind velocity along Y axis, constant and homogeneous (m/s) -\\ - \begin{CommentBlock}{Related keywords} -CONSIDERATION OF A WIND -\end{CommentBlock}""", - ), -# ----------------------------------- - CONSIDERATION_OF_A_STATIONARY_CURRENT = SIMP(statut ='o', -# ----------------------------------- - typ = bool, - defaut = False, - fr = """Indique si on prend en compte un courant, dans un fichier ou -dans condiw.f. -**Mots-cles associes :** -FICHIER DES COURANTS""", - ang = """Indicates whether a stationary current is taken into account, -either in a file or in condiw.f. -\\ - \begin{CommentBlock}{Related keywords} -CURRENTS FILE -\end{CommentBlock}""", - ), -# ----------------------------------- - CONSIDERATION_OF_A_WIND = SIMP(statut ='o', -# ----------------------------------- - typ = bool, - defaut = False, - fr = """Indique si on prend en compte un vent, dans un fichier ou dans -venuti.f. -**Mots-cles associes :** -FICHIER DES VENTS""", - ang = """Indicates whether a wind is taken into account, either in -a file or in venuti.f -\\ - \begin{CommentBlock}{Related keywords} -WINDS FILE -\end{CommentBlock}""", - ), -# ----------------------------------- - STATIONARY_WIND = SIMP(statut ='f', -# ----------------------------------- - typ = bool, - defaut = [True ], - fr = """Indique si le vent evolue dans le temps et doit etre mis a jour -**Mots-cles associes :** -PRISE EN COMPTE DU VENT""", - ang = """Indicates whether the wind evolves temporally and requires -to be updated -\\ - \begin{CommentBlock}{Related keywords} -CONSIDERATION OF A WIND -\end{CommentBlock}""", - ), -# ----------------------------------- - CONSIDERATION_OF_TIDE = SIMP(statut ='o', -# ----------------------------------- - typ = bool, - defaut = False, - fr = """Indique si on prend en compte l''influence de la maree, -c''est-a-dire, prise en compte d''un niveau d''eau et de courants -instationnaires. -**Mots-cles associes :** -FICHIER DU NIVEAU DE LA MAREE FORMATE -FICHIER DU NIVEAU DE LA MAREE BINAIRE -FORMAT DU FICHIER DU NIVEAU DE LA MAREE -PERIODE D ACTUALISATION DE LA MAREE""", - ang = """Indicates whether a current is taken into account, either in -a file or in cdicow.f. -\\ - \begin{CommentBlock}{Related keywords} -FORMATTED TIDAL WATER LEVEL FILE\\ -BINARY TIDAL WATER LEVEL FILE\\ -TIDAL WATER LEVEL FILE FORMAT\\ -TIDE REFRESHING PERIOD -\end{CommentBlock}""", - ), - ), -# ----------------------------------- - MISCELLANEOUS = FACT(statut='f', -# ----------------------------------- -# ----------------------------------- - NUMBER_OF_PRIVATE_ARRAYS = SIMP(statut ='f', -# ----------------------------------- - typ = 'I', - defaut = 0, - fr = """Nombre de tableaux utilises en variables privees par -l''utilisateur""", - ang = """Number of private arrays used by the user""", - ), -# ----------------------------------- - DEBUGGER = SIMP(statut ='f', -# ----------------------------------- - typ = 'I', - defaut = 0, - fr = """Pour imprimer la sequence des appels, mettre 1""", - ang = """If 1, calls of subroutines will be printed in the listing""", - ), -# ----------------------------------- - PARALLEL_PROCESSORS = SIMP(statut ='f', -# ----------------------------------- - typ = 'I', - defaut = 0, - fr = """NOMBRE DE PROCESSEURS EN CALCUL PARALLELE -0 : 1 machine, compilation sans bibliotheque de parallelisme -1 : 1 machine, compilation avec bibliotheque de parallelisme -2 : 2 processeurs ou machines en parallele -etc...""", - ang = """NUMBER OF PROCESSORS FOR PARALLEL PROCESSING -0 : 1 machine, compiling without parallel library -1 : 1 machine, compiling with a parallel library -2 : 2 processors or machines in parallel -etc....""", - ), -# ----------------------------------- - FINITE_ELEMENT_ASSEMBLY = SIMP(statut ='f', -# ----------------------------------- - typ = 'I', - defaut = [1], - fr = """1 : normal 2 : avec des entiers I8""", - ang = """1: normal 2: with I8 integers""", - ), -# ----------------------------------- - TITLE = SIMP(statut ='f', -# ----------------------------------- - typ = 'TXM', - defaut = 'SET A TITLE !!!', - fr = """Titre du cas etudie""", - ang = """Title of the case being studied.""", - ), -# ----------------------------------- - PARTITIONING_TOOL = SIMP(statut ='f', -# ----------------------------------- - typ = 'TXM', - into = ['METIS','SCOTCH','PARMETIS','PTSCOTCH'], - defaut = 'METIS', - fr = """CHOIX DU PARTITIONNEUR -1 : METIS -2 : SCOTCH -3 : PARMETIS -4 : PTSCOTCH -etc...""", - ang = """PARTITIONING TOOL SELECTION -\begin{itemize} -\item 1 : METIS -\item 2 : SCOTCH -\item 3 : PARMETIS -\item 4 : PTSCOTCH -\end{itemize}""", - ), -# ----------------------------------- - RECOVERY_OF_TELEMAC_DATA_ITEM = SIMP(statut ='f', -# ----------------------------------- - typ = bool, - defaut = [False], - fr = """Indique si on recupere des donnees TELEMAC dans LECDON.f -Si oui il faut veiller a utiliser un FICHIER DES COURANTS au bon format -et donner le rang de la variable en question dans le fichier TELEMAC. -**Mots-cles associes :** -FICHIER DES COURANTS BINAIRE -FICHIER DES COURANTS FORMATE -FORMAT DU FICHIER DES COURANTS -RANG DE LA DONNEE TELEMAC A RECUPERER -NUMERO DU PAS DE TEMPS DU FICHIER TELEMAC""", - ang = """Indicates whether TELEMAC data are recovered in LECDON. If so, -a proper-formatted CURRENTS FILE should be used and the rank of the -respective variable should be entered into the TELEMAC file. -\\ - \begin{CommentBlock}{Related keywords} -BINARY CURRENTS FILE\\ -FORMATTED CURRENTS FILE\\ -CURRENTS FILE TYPE\\ -RANK OF THE TELEMAC DATA ITEM TO BE RECOVERED\\ -TIME INCREMENT NUMBER IN TELEMAC FILE -\end{CommentBlock}""", - ), -# ----------------------------------- - CONSIDERATION_OF_PROPAGATION = SIMP(statut ='f', -# ----------------------------------- - typ = bool, - defaut = [True ], - fr = """Indique si on prend en compte la propagation""", - ang = """Indicates whether propagation is taken into account.""", - ), -# ----------------------------------- - VALIDATION = SIMP(statut ='f', -# ----------------------------------- - typ = bool, - defaut = [False], - fr = """Logique indiquant si on effectue un calcul de validation -**Mots-cles associes :** -FICHIER DE REFERENCE""", - ang = """True if the computation is a validation -\\ - \begin{CommentBlock}{Related keywords} -REFERENCE FILE -\end{CommentBlock}""", - ), -# ----------------------------------- - b_VALIDATIONG = BLOC(condition="VALIDATION == True", -# ----------------------------------- - ), -# ----------------------------------- - CHECKING_THE_MESH = SIMP(statut ='f', -# ----------------------------------- - typ = bool, - defaut = False, - fr = """Si oui on appelle le sous-programme checkmesh qui verifie -la coherence du maillage, points superposes, etc.""", - ang = """if this key word is equal to yes, a call to subroutine -checkmesh will look for errors in the mesh, superimposed points, etc.""", - ), - ), -# ----------------------------------- - OTHER_DOMAIN_DEFINITIONS = FACT(statut='o', -# ----------------------------------- -# ----------------------------------- - ORIGIN_COORDINATES = SIMP(statut ='f', -# ----------------------------------- - typ = 'I', min= 2, max= 2, - defaut = [0,0], - fr = """Valeur en metres, utilise pour eviter les trop grands nombres, -transmis dans le format Selafin mais pas d''autre traitement pour -l''instant""", - ang = """Value in metres, used to avoid large real numbers, -added in Selafin format, but so far no other treatment""", - ), -# ----------------------------------- - MINIMUM_WATER_DEPTH = SIMP(statut ='o', -# ----------------------------------- - typ = 'R', - defaut = 0.1, - fr = """Definit la profondeur d eau minimale en dessous de laquelle -les fonds sont supposes emerges.""", - ang = """Defines the minimum water depth below which bottom elevations -are regarded as dry.""", - ), -# ----------------------------------- - SPHERICAL_COORDINATES = SIMP(statut ='f', -# ----------------------------------- - typ = bool, - defaut = [False], - fr = """Indique si on se place ou non en coordonnes spheriques. -ATTENTION, en coordonnees cartesiennes, les coordonnees sont -exprimees em m alors que ce sont des degres en coordonnees -spheriques.""", - ang = """Indicates whether the coordinates are spherical (unit= -degree) or cartesian (unit = meter).""", - ), -# ----------------------------------- - INFINITE_DEPTH = SIMP(statut ='o', -# ----------------------------------- - typ = bool, - defaut = False, - fr = """Indique si on se place dans l hypothese de profondeur infinie. -Cette option inhibe les frottements sur le fond.""", - ang = """Indicates whether an infinite depth is assumed. If so, bottom -friction is inhibited.""", - ), -# ----------------------------------- - TRIGONOMETRICAL_CONVENTION = SIMP(statut ='f', -# ----------------------------------- - typ = bool, - defaut = [False], - fr = """Logique indiquant si les directions de propagation -de la houle sont definies dans le sens trigonometrique a -partir de l axe des x positifs, ou definies dans le sens -des aiguilles d une montre a partir du nord geographique""", - ang = """True if the wave directions are measured -counterclockwise from the positive x-axis, false if -they are measured clockwise fron geographic North""", - ), - ), -) -# ----------------------------------------------------------------------- -SOURCE_TERMS = PROC(nom= "SOURCE_TERMS",op = None, -# ----------------------------------------------------------------------- - UIinfo = {"groupes": ("CACHE")}, -# ----------------------------------- - BAJ_MODELING = SIMP(statut ='o', -# ----------------------------------- - typ = 'TXM', - into = ["classical modelisation","BAJ Modeling"], - defaut = ["classical modelisation"], - fr = """Type de calcul de la frequence centrale -Si sa valeur est 0, on prend la formulation classique -Si sa valeur est 1 on pren la modelisation BAJ proposee -par Laugel (2013) pour le calcul de la frequence centrale -et le limiteur de croissance -**Mots-cles associes :** -PRISE EN COMPTE DES TERMES SOURCES""", - ang = """Choice of the calculus of centrale frequency -if its value is 0, classical choice -if its value is 1, BAJ choice proposed by Laugel (2013). -\\ - \begin{CommentBlock}{Related keywords} -CONSIDERATION OF SOURCE TERMS -\end{CommentBlock}""", - ), -# ----------------------------------- - CONSIDERATION_OF_SOURCE_TERMS = SIMP(statut ='f', -# ----------------------------------- - typ = bool, - defaut = True, - fr = """Indique la prise en compte ou non de l ensemble des termes -sources. -**Mots-cles associes :** -APPORTS DUS AU VENT -DISSIPATION PAR FROTTEMENT SUR LE FOND -DISSIPATION PAR MOUTONNEMENT -DISSIPATION PAR DEFERLEMENT -DISSIPATION PAR WAVE BLOCKING -TRANSFERTS NON LINEAIRES INTER-FREQUENCES -TRANSFERTS ENTRE TRIPLETS DE FREQUENCES""", - ang = """Indicates whether the source terms are taken into -account or not. -\\ - \begin{CommentBlock}{Related keywords} -WIND GENERATION\\ -BOTTOM FRICTION DISSIPATION\\ -WHITE CAPPING DISSIPATION\\ -DEPTH-INDUCED BREAKING DISSIPATION\\ -WAVE BLOCKING DISSIPATION\\ -NON-LINEAR TRANSFERS BETWEEN FREQUENCIES\\ -TRIAD INTERACTION -\end{CommentBlock}""", - ), -# ----------------------------------- - TAKING_INTO_ACCOUNT_SOURCE_TERMS_ON_IMPOSED_BOUNDARIES = SIMP(statut ='f', -# ----------------------------------- - typ = bool, - defaut = [True ], - fr = """Indique si on prend en compte les termes sources sur les -frontieres imposees.""", - ang = """Indicates whether source terms are taken into account on -imposed boundaries.""", - ), -# ----------------------------------- - WIND = FACT(statut='o', -# ----------------------------------- -# ----------------------------------- - WIND_GENERATION = SIMP(statut ='o', -# ----------------------------------- - typ = 'TXM', - into = ["No wind generation","Wind generation in accordance with WAM cycle 4","Wind generation in accordance with WAM cycle 3","Wind generation in accordance with Yan expression (1987)"], - defaut = ["No wind generation"], - fr = """Choix du type de modelisation du terme source d apport -par le vent. Si sa valeur est 0, on ne prend pas en compte les -apports dus au vent, si sa valeur est 1, ils sont integres selon -la formule utilisee dans WAM cycle 4; -si sa valeur est 2, ils sont integres selon la formule utilisee -dans WAM cycle 3; si sa valeur est 3, ils sont integres selon -l expression de Yan (1987). -**Mots-cles associes :** -PRISE EN COMPTE DU VENT -FICHIER DES VENTS -DENSITE DE L''AIR -DENSITE DE L''EAU -COEFFICIENT DE GENERATION PAR LE VENT -CONSTANTE DE VON KARMAN -CONSTANTE DE CHARNOCK -DECALAGE COURBE DE CROISSANCE DUE AU VENT -COTE DE MESURE DES VENTS -COEFFICIENT DE TRAINEE DE VENT -COEFFICIENT A DE GENERATION PAR LE VENT -COEFFICIENT B DE GENERATION PAR LE VENT -COEFFICIENT C DE GENERATION PAR LE VENT -COEFFICIENT D DE GENERATION PAR LE VENT -COEFFICIENT TM DE GENERATION PAR LE VENT""", - ang = """Selection of the type of modelling of the wind generation -source term. If its value is 0, the wind generation is ignored; if -its value is 1, it is integrated in accordance with the WAM cycle 4 -formula; if its value is 2, it is integrated in accordance with the -WAM cycle 3 formula; if its value is 3, it is integrated in accordance -with the Yan (1987) expression. -\\ - \begin{CommentBlock}{Related keywords} -CONSIDERATION OF A WIND\\ -WINDS FILE\\ -AIR DENSITY\\ -WATER DENSITY\\ -WIND GENERATION COEFFICIENT\\ -VON KARMAN CONSTANT\\ -CHARNOCK CONSTANT\\ -SHIFT GROWING CURVE DUE TO WIND\\ -WIND MEASUREMENTS LEVEL\\ -WIND DRAG COEFFICIENT\\ -WIND GENERATION COEFFICIENT A\\ -WIND GENERATION COEFFICIENT B\\ -WIND GENERATION COEFFICIENT C\\ -WIND GENERATION COEFFICIENT D\\ -WIND GENERATION COEFFICIENT TM\\ -\end{CommentBlock}""", - ), -# ----------------------------------- - b_WIND_GENERATIONG = BLOC(condition="WIND_GENERATION == 'Wind generation in accordance with WAM cycle 4'", -# ----------------------------------- -# ----------------------------------- - WIND_GENERATION_COEFFICIENT = SIMP(statut ='o', -# ----------------------------------- - typ = 'R', - defaut = 1.2, - fr = """Fait partie de l ensemble des constantes utilisees dans -le terme source de generation par le vent. -**Mots-cles associes :** -APPORTS DUS AU VENT""", - ang = """Constant used in the wind source term. -\\ - \begin{CommentBlock}{Related keywords} -WIND GENERATION -\end{CommentBlock}""", - ), -# ----------------------------------- - AIR_DENSITY = SIMP(statut ='o', -# ----------------------------------- - typ = 'R', - defaut = 1.225, - fr = """Le rapport Roair/Roeau est utilise dans le terme source -de generation par le vent. -**Mots-cles associes :** -APPORTS DUS AU VENT -DENSITE DE L''EAU""", - ang = """The ratio ROAIR/ROEAU is used in the wind generation -source term. -\\ - \begin{CommentBlock}{Related keywords} -WIND GENERATION\\ -WATER DENSITY -\end{CommentBlock}""", - ), -# ----------------------------------- - WATER_DENSITY = SIMP(statut ='o', -# ----------------------------------- - typ = 'R', - defaut = 1000., - fr = """ Le rapport Roair/Roeau est utilise dans le terme source -de generation par le vent. -**Mots-cles associes :** -APPORTS DUS AU VENT -DENSITE DE L''AIR""", - ang = """The ratio ROAIR/ROEAU is used in the wind generation -source term. -\\ - \begin{CommentBlock}{Related keywords} -WIND GENERATION\\ -AIR DENSITY -\end{CommentBlock}""", - ), -# ----------------------------------- - CHARNOCK_CONSTANT = SIMP(statut ='f', -# ----------------------------------- - typ = 'R', - defaut = 0.01, - fr = """Fait partie de l ensemble des constantes utilisees dans -le terme source de generation par le vent. -**Mots-cles associes :** -APPORTS DUS AU VENT""", - ang = """Constant used in the wind source term. -\\ - \begin{CommentBlock}{Related keywords} -WIND GENERATION -\end{CommentBlock}""", - ), -# ----------------------------------- - WIND_DRAG_COEFFICIENT = SIMP(statut ='o', -# ----------------------------------- - typ = 'R', - defaut = 1.2875E-3, - fr = """Fait partie de l ensemble des constantes utilisees dans -le terme source de generation par le vent. -**Mots-cles associes :** -APPORTS DUS AU VENT""", - ang = """Constant used in the wind source term. -\\ - \begin{CommentBlock}{Related keywords} -WIND GENERATION -\end{CommentBlock}""", - ), -# ----------------------------------- - VON_KARMAN_CONSTANT = SIMP(statut ='o', -# ----------------------------------- - typ = 'R', - defaut = 0.41, - fr = """Fait partie de l ensemble des constantes utilisees dans -le terme source de generation par le vent. -**Mots-cles associes :** -APPORTS DUS AU VENT""", - ang = """Constant used in the wind source term. -\\ - \begin{CommentBlock}{Related keywords} -WIND GENERATION -\end{CommentBlock}""", - ), -# ----------------------------------- - SHIFT_GROWING_CURVE_DUE_TO_WIND = SIMP(statut ='o', -# ----------------------------------- - typ = 'R', - defaut = 0.011, - fr = """Fait partie de l ensemble des constantes utilisees dans -le terme source de generation par le vent. -**Mots-cles associes :** -APPORTS DUS AU VENT""", - ang = """Constant used in the wind source term. -\\ - \begin{CommentBlock}{Related keywords} -WIND GENERATION -\end{CommentBlock}""", - ), -# ----------------------------------- - WIND_MEASUREMENTS_LEVEL = SIMP(statut ='f', -# ----------------------------------- - typ = 'R', - defaut = 10., - fr = """Fait partie de l ensemble des constantes utilisees dans -le terme source de generation par le vent. -**Mots-cles associes :** -APPORTS DUS AU VENT""", - ang = """Constant used in the wind source term. -\\ - \begin{CommentBlock}{Related keywords} -WIND GENERATION -\end{CommentBlock}""", - ), - ), -# ----------------------------------- - b_WIND_GENERATIONH = BLOC(condition="WIND_GENERATION == 'Wind generation in accordance with WAM cycle 3'", -# ----------------------------------- - ), -# ----------------------------------- - b_WIND_GENERATIONI = BLOC(condition="WIND_GENERATION == 'Wind generation in accordance with Yan expression (1987)'", -# ----------------------------------- -# ----------------------------------- - YAN_GENERATION_COEFFICIENT_D = SIMP(statut ='o', -# ----------------------------------- - typ = 'R', - defaut = 0.04, - fr = """Fait partie de l ensemble des constantes utilisees dans -le terme source de generation par le vent de Yan (1987). -**Mots-cles associes :** -APPORTS DUS AU VENT -COEFFICIENT DE GENERATION DE YAN E -COEFFICIENT DE GENERATION DE YAN F -COEFFICIENT DE GENERATION DE YAN H""", - ang = """Constant used in the wind source term of Yan (1987). -\\ - \begin{CommentBlock}{Related keywords} -WIND GENERATION\\ -YAN GENERATION COEFFICIENT E\\ -YAN GENERATION COEFFICIENT F\\ -YAN GENERATION COEFFICIENT H -\end{CommentBlock}""", - ), -# ----------------------------------- - YAN_GENERATION_COEFFICIENT_E = SIMP(statut ='o', -# ----------------------------------- - typ = 'R', - defaut = 0.00552, - fr = """Fait partie de l ensemble des constantes utilisees dans -le terme source de generation par le vent de Yan (1987). -**Mots-cles associes :** -APPORTS DUS AU VENT -COEFFICIENT DE GENERATION DE YAN D -COEFFICIENT DE GENERATION DE YAN F -COEFFICIENT DE GENERATION DE YAN H""", - ang = """Constant used in the wind source term of Yan (1987). -\\ - \begin{CommentBlock}{Related keywords} -WIND GENERATION\\ -YAN GENERATION COEFFICIENT D\\ -YAN GENERATION COEFFICIENT F\\ -YAN GENERATION COEFFICIENT H -\end{CommentBlock}""", - ), -# ----------------------------------- - YAN_GENERATION_COEFFICIENT_F = SIMP(statut ='o', -# ----------------------------------- - typ = 'R', - defaut = 0.000052, - fr = """Fait partie de l ensemble des constantes utilisees dans -le terme source de generation par le vent de Yan (1987). -**Mots-cles associes :** -APPORTS DUS AU VENT -COEFFICIENT DE GENERATION DE YAN D -COEFFICIENT DE GENERATION DE YAN E -COEFFICIENT DE GENERATION DE YAN H""", - ang = """Constant used in the wind source term of Yan (1987). -\\ - \begin{CommentBlock}{Related keywords} -WIND GENERATION\\ -YAN GENERATION COEFFICIENT D\\ -YAN GENERATION COEFFICIENT E\\ -YAN GENERATION COEFFICIENT H -\end{CommentBlock}""", - ), -# ----------------------------------- - YAN_GENERATION_COEFFICIENT_H = SIMP(statut ='o', -# ----------------------------------- - typ = 'R', - defaut = -0.000302, - fr = """Fait partie de l ensemble des constantes utilisees dans -le terme source de generation par le vent de Yan (1987). -**Mots-cles associes :** -APPORTS DUS AU VENT -COEFFICIENT DE GENERATION DE YAN D -COEFFICIENT DE GENERATION DE YAN E -COEFFICIENT DE GENERATION DE YAN F""", - ang = """Constant used in the wind source term of Yan (1987). -\\ - \begin{CommentBlock}{Related keywords} -WIND GENERATION\\ -YAN GENERATION COEFFICIENT D\\ -YAN GENERATION COEFFICIENT E\\ -YAN GENERATION COEFFICIENT F -\end{CommentBlock}""", - ), - ), -# ----------------------------------- - LINEAR_WAVE_GROWTH = SIMP(statut ='o', -# ----------------------------------- - typ = 'TXM', - into = ["the linear wave growth is ignored","linear wave growth as in Cavaleri and Malanotte-Rizzoli (1981)"], - defaut = ["the linear wave growth is ignored"], - fr = """Possibilite d ajouter au terme source d apport -par le vent un terme de croissance lineaire. -Si sa valeur est 0, on ne prend pas en compte le -terme de croissance lineaire, si sa valeur est 1, -il est ajoute au terme source, selon la formule -de Cavaleri et Malanotte-Rizzoli (1981) -**Mots-cles associes :** -PRISE EN COMPTE DU VENT -FICHIER DES VENTS""", - ang = """Possibility to add a linear wave growth term -to the wind generation source term. -If its value is 0, the linear wave growth is ignored; -if its value is 1, it is added to the source term, -as in the formula of Cavaleri and Malanotte-Rizzoli (1981). -\\ - \begin{CommentBlock}{Related keywords} -CONSIDERATION OF A WIND\\ -WINDS FILE -\end{CommentBlock}""", - ), - ), -# ----------------------------------- - WHITE_CAPPING = FACT(statut='o', -# ----------------------------------- -# ----------------------------------- - WHITE_CAPPING_DISSIPATION = SIMP(statut ='o', -# ----------------------------------- - typ = 'TXM', - into = ["No white capping dissipation","Dissipation in accordance with WAM cycle 4","Dissipation in accordance with Van des Westhuysen(2007)"], - defaut = ["No white capping dissipation"], - fr = """Choix du type de modelisation du terme source de dissipation -par moutonnement. Si sa valeur est 0, on ne prend pas en compte la -dissipation par moutonnement, si sa valeur est 1, elle est integree -selon la formule utilisee dans WAM cycle 4; si sa valeur est 2, elle -est integree selon la formule de van der Westhuysen (2007). -**Mots-cles associes :** -COEFFICIENT DE DISSIPATION PAR MOUTONNEMENT -COEFFICIENT DE PONDERATION POUR LE MOUTONNEMENT -COEFFICIENT DE DISSIPATION DE WESTHUYSEN -DISSIPATION PAR MOUTONNEMENT -SEUIL DE SATURATION POUR LA DISSIPATION -DISSIPATION PAR MOUTONNEMENT DE WESTHUYSEN -COEFFICIENT DE PONDERATION DE WESTHUYSEN""", - ang = """Selection of the modelling type of the white capping source -term. If its value is 0, the white capping dissipation is ignored; -if its value is 1, it is integrated in accordance with a formula that -is similar to that of WAM cycle 4; if its value is 2, it is integrated -in accordance with the formula of van der Westhuysen (2007). -\\ - \begin{CommentBlock}{Related keywords} -WHITE CAPPING DISSIPATION COEFFICIENT\\ -WHITE CAPPING WEIGHTING COEFFICIENT\\ -WESTHUYSEN DISSIPATION COEFFICIENT\\ -SATURATION THRESHOLD FOR THE DISSIPATION\\ -WESTHUYSEN WHITE CAPPING DISSIPATION\\ -WESTHUYSEN WEIGHTING COEFFICIENT -\end{CommentBlock}""", - ), -# ----------------------------------- - b_WHITE_CAPPING_DISSIPATIONG = BLOC(condition="WHITE_CAPPING_DISSIPATION == 'Dissipation in accordance with WAM cycle 4'", -# ----------------------------------- -# ----------------------------------- - WHITE_CAPPING_DISSIPATION_COEFFICIENT = SIMP(statut ='o', -# ----------------------------------- - typ = 'R', - defaut = 4.5, - fr = """Coefficient de dissipation par moutonnement. -**Mots-cles associes :** -DISSIPATION PAR MOUTONNEMENT -COEFFICIENT DE PONDERATION POUR LE MOUTONNEMENT""", - ang = """White capping dissipation coefficient . -\\ - \begin{CommentBlock}{Related keywords} -WHITE CAPPING DISSIPATION\\ -WHITE CAPPING WEIGHTING COEFFICIENT -\end{CommentBlock}""", - ), -# ----------------------------------- - WHITE_CAPPING_WEIGHTING_COEFFICIENT = SIMP(statut ='o', -# ----------------------------------- - typ = 'R', - defaut = 0.5, - fr = """ Coefficient de ponderation pour le moutonnement. -**Mots-cles associes :** -DISSIPATION PAR MOUTONNEMENT -COEFFICIENT DE DISSIPATION PAR MOUTONNEMENT""", - ang = """White capping weighting coefficient. -\\ - \begin{CommentBlock}{Related keywords} -WHITE CAPPING DISSIPATION\\ -WHITE CAPPING DISSIPATION COEFFICIENT -\end{CommentBlock}""", - ), - ), -# ----------------------------------- - b_WHITE_CAPPING_DISSIPATIONH = BLOC(condition="WHITE_CAPPING_DISSIPATION == 'Dissipation in accordance with Van des Westhuysen(2007)'", -# ----------------------------------- -# ----------------------------------- - SATURATION_THRESHOLD_FOR_THE_DISSIPATION = SIMP(statut ='o', -# ----------------------------------- - typ = 'R', - defaut = 0.00175, - fr = """Coefficient de dissipation par moutonnement de l expression -de van der Westhuysen (2007): Br (seuil de saturation). -**Mots-cles associes :** -DISSIPATION PAR MOUTONNEMENT -COEFFICIENT DE DISSIPATION DE WESTHUYSEN -DISSIPATION PAR MOUTONNEMENT DE WESTHUYSEN -COEFFICIENT DE PONDERATION DE WESTHUYSEN""", - ang = """White capping dissipation coefficient of -van der Westhuysen (2007): Br (saturation threshold). -\\ - \begin{CommentBlock}{Related keywords} -WHITE CAPPING DISSIPATION\\ -WESTHUYSEN DISSIPATION COEFFICIENT\\ -WESTHUYSEN WHITE CAPPING DISSIPATION\\ -WESTHUYSEN WEIGHTING COEFFICIENT -\end{CommentBlock}""", - ), -# ----------------------------------- - WESTHUYSEN_WHITE_CAPPING_DISSIPATION = SIMP(statut ='o', -# ----------------------------------- - typ = 'R', - defaut = 3.29, - fr = """Coefficient de dissipation par moutonnement de l expression -de van der Westhuysen (2007): Cdis,non-break. -**Mots-cles associes :** -DISSIPATION PAR MOUTONNEMENT -COEFFICIENT DE DISSIPATION DE WESTHUYSEN -SEUIL DE SATURATION POUR LA DISSIPATION -COEFFICIENT DE PONDERATION DE WESTHUYSEN""", - ang = """White capping dissipation coefficient of -van der Westhuysen (2007): Cdis,non-break. -\\ - \begin{CommentBlock}{Related keywords} -WHITE CAPPING DISSIPATION\\ -WESTHUYSEN DISSIPATION COEFFICIENT\\ -SATURATION THRESHOLD FOR THE DISSIPATION\\ -WESTHUYSEN WEIGHTING COEFFICIENT -\end{CommentBlock}""", - ), -# ----------------------------------- - WESTHUYSEN_WEIGHTING_COEFFICIENT = SIMP(statut ='o', -# ----------------------------------- - typ = 'R', - defaut = 0.0, - fr = """Coefficient de dissipation par moutonnement de l expression -de van der Westhuysen (2007): delta. -**Mots-cles associes :** -DISSIPATION PAR MOUTONNEMENT -COEFFICIENT DE DISSIPATION DE WESTHUYSEN -SEUIL DE SATURATION POUR LA DISSIPATION -DISSIPATION PAR MOUTONNEMENT DE WESTHUYSEN""", - ang = """White capping dissipation coefficient of -van der Westhuysen (2007): delta. -\\ - \begin{CommentBlock}{Related keywords} -WHITE CAPPING DISSIPATION\\ -WESTHUYSEN DISSIPATION COEFFICIENT\\ -SATURATION THRESHOLD FOR THE DISSIPATION\\ -WESTHUYSEN WHITE CAPPING DISSIPATION -\end{CommentBlock}""", - ), -# ----------------------------------- - WESTHUYSEN_DISSIPATION_COEFFICIENT = SIMP(statut ='o', -# ----------------------------------- - typ = 'R', - defaut = 0.00005, - fr = """Coefficient de dissipation par moutonnement de l expression -de van der Westhuysen (2007): Cdis,break. -**Mots-cles associes :** -DISSIPATION PAR MOUTONNEMENT -SEUIL DE SATURATION POUR LA DISSIPATION -DISSIPATION PAR MOUTONNEMENT DE WESTHUYSEN -COEFFICIENT DE PONDERATION DE WESTHUYSEN""", - ang = """White capping dissipation coefficient of -van der Westhuysen (2007): Cdis,break. -\\ - \begin{CommentBlock}{Related keywords} -WHITE CAPPING DISSIPATION\\ -SATURATION THRESHOLD FOR THE DISSIPATION\\ -WESTHUYSEN WHITE CAPPING DISSIPATION\\ -WESTHUYSEN WEIGHTING COEFFICIENT -\end{CommentBlock}""", - ), - ), - ), -# ----------------------------------- - BOTTOM_FRICTION = FACT(statut='o', -# ----------------------------------- -# ----------------------------------- - BOTTOM_FRICTION_DISSIPATION = SIMP(statut ='o', -# ----------------------------------- - typ = 'TXM', - into = ["No bottom friction dissipation","Dissipation in accordance with WAM cycle 4"], - defaut = ["No bottom friction dissipation"], - fr = """Choix du type de modelisation du terme source de dissipation -sur le fond. Si sa valeur est 0, on ne prend pas en compte la -dissipation par frottement, si sa valeur est 1, elle est integree -selon la formule equivalente a celle utilisee dans WAM cycle 4. -**Mots-cles associes :** -PROFONDEUR INFINIE -COEFFICIENT DE FROTTEMENT SUR LE FOND""", - ang = """Selection of the modelling type of the bottom friction source -term. If its value is 0, the bottom friction dissipation is ignored; -if its value is 1, it is integrated in accordance with a formula that -is similar to that of WAM cycle 4. -\\ - \begin{CommentBlock}{Related keywords} -INFINITE DEPTH\\ -BOTTOM FRICTION COEFFICIENT -\end{CommentBlock}""", - ), -# ----------------------------------- - b_BOTTOM_FRICTION_DISSIPATIONG = BLOC(condition="BOTTOM_FRICTION_DISSIPATION == 'Dissipation in accordance with WAM cycle 4'", -# ----------------------------------- -# ----------------------------------- - BOTTOM_FRICTION_COEFFICIENT = SIMP(statut ='o', -# ----------------------------------- - typ = 'R', - defaut = 0.038, - fr = """Coefficient de frottement sur le fond. -**Mots-cles associes :** -PROFONDEUR INFINIE -DISSIPATION PAR FROTTEMENT SUR LE FOND""", - ang = """Bottom friction coefficient. -\\ - \begin{CommentBlock}{Related keywords} -INFINITE DEPTH\\ -BOTTOM FRICTION-INDUCED DISSIPATION -\end{CommentBlock}""", - ), - ), - ), -# ----------------------------------- - QUADRUPLET_INTERACTIONS = FACT(statut='o', -# ----------------------------------- -# ----------------------------------- - NON_LINEAR_TRANSFERS_BETWEEN_FREQUENCIES = SIMP(statut ='o', -# ----------------------------------- - typ = 'TXM', - into = ["No non-linear transfers term","Non-linear transfers term with WAM cycle 4 (DIA Method)","Non-linear transfers term in accordance with MDIA Method","Non-linear transfers term calculated with exact GQM Method"], - defaut = ["No non-linear transfers term"], - fr = """Choix du type de modelisation du terme de transfert non lineaire -inter-frequences. Si sa valeur est 0, on ne prend pas en compte les -transferts non lineaires inter-frequences, si sa valeur est 1, ils sont -integres selon la formule utilisee dans WAM cycle 4 (methode DIA), si sa -valeur est 2, la methode MDIA (Multiple DIA) est utilisee pour calculer -le terme de transfert non lineaire, si sa valeur est 3, le terme de -transfert non lineaire est calcule de maniere exacte avec la methode -GQM. -**Mots-cles associes :** -PARAMETRE DE LA CONFIGURATION STANDARD -REGLAGE POUR INTEGRATION SUR OMEGA1 -REGLAGE POUR INTEGRATION SUR THETA1 -REGLAGE POUR INTEGRATION SUR OMEGA2 -SEUIL0 ELIMINATION DE CONFIGURATIONS -SEUIL1 ELIMINATION DE CONFIGURATIONS -SEUIL2 ELIMINATION DE CONFIGURATIONS""", - ang = """Selection of the modelling type of the non-linear transfert -source term. If its value is 0, the non-linear transfers are ignored; -if its value is 1, they are integrated in accordance with the formula -of WAM cycle 4 (DIA method), if its value is 2, the MDIA -(Multiple DIA) method is used to calculate the non linear transfer -term, if its value is 3, the non linear transfer term is calculated -with the exact GQM method. -\\ - \begin{CommentBlock}{Related keywords} -STANDARD CONFIGURATION PARAMETER\\ -SETTING FOR INTEGRATION ON OMEGA1\\ -SETTING FOR INTEGRATION ON THETA1\\ -SETTING FOR INTEGRATION ON OMEGA2\\ -THRESHOLD0 FOR CONFIGURATIONS ELIMINATION\\ -THRESHOLD1 FOR CONFIGURATIONS ELIMINATION\\ -THRESHOLD2 FOR CONFIGURATIONS ELIMINATION -\end{CommentBlock}""", - ), -# ----------------------------------- - b_NON_LINEAR_TRANSFERS_BETWEEN_FREQUENCIESG = BLOC(condition="NON_LINEAR_TRANSFERS_BETWEEN_FREQUENCIES == 'Non-linear transfers term with WAM cycle 4 (DIA Method)'", -# ----------------------------------- -# ----------------------------------- - STANDARD_CONFIGURATION_PARAMETER = SIMP(statut ='o', -# ----------------------------------- - typ = 'R', - defaut = 0.25, - fr = """Parametre definissant la configuration d interaction -standard pour les quadruplets dans la methode DIA. -**Mots-cles associes :** -TRANSFERTS NON LINEAIRES INTER-FREQUENCES""", - ang = """Parameter defining the standard configuration for -the quadruplet interactions in the DIA method. -\\ - \begin{CommentBlock}{Related keywords} -NON-LINEAR TRANSFERS BETWEEN FREQUENCIES -\end{CommentBlock}""", - ), - ), -# ----------------------------------- - b_NON_LINEAR_TRANSFERS_BETWEEN_FREQUENCIESH = BLOC(condition="NON_LINEAR_TRANSFERS_BETWEEN_FREQUENCIES == 'Non-linear transfers term calculated with exact GQM Method'", -# ----------------------------------- -# ----------------------------------- - SETTING_FOR_INTEGRATION_ON_OMEGA1 = SIMP(statut ='o', -# ----------------------------------- - typ = 'TXM', - into = ["medium","fine","rough"], - defaut = ["rough"], - fr = """ Choix du reglage donnant le nombre de point d integration sur -omega1 lorsque le terme de transfert non lineaire est calcule de -maniere exacte (methode GQM): grossier 3;moyen 1 ; fin 2""", - ang = """Choice of setting giving the number of integration points on -omega1 when the non linear transfer term is calculated with the exact -GQM method: rough 3 ; medium 1 ; fine 2""", - ), -# ----------------------------------- - SETTING_FOR_INTEGRATION_ON_THETA1 = SIMP(statut ='o', -# ----------------------------------- - typ = 'TXM', - into = ["rough","medium","fine"], - defaut = ["rough"], - fr = """ Choix du reglage donnant le nombre de point d integration sur -theta1 (nombre de points d integration = 2*NQ\_TE1) lorsque le terme -de transfert non lineaire est calcule de maniere exacte (methode GQM): -grossier 3 ; moyen 4 ; fin 8""", - ang = """Choice of setting giving the number of integration points on -theta1 (number of integration points= 2*NQ\_TE1) when the non linear -transfer term is calculated with the exact GQM method: -rough 3 ; medium 4 ; fine 8""", - ), -# ----------------------------------- - SETTING_FOR_INTEGRATION_ON_OMEGA2 = SIMP(statut ='o', -# ----------------------------------- - typ = 'TXM', - into = ["rough","medium","fine"], - defaut = ["rough"], - fr = """ Nombre de point d integration sur omega2 lorsque le terme de -transfert non lineaire est calcule de maniere exacte (methode GQM): -grossier 6 ; moyen 8 ; fin 12""", - ang = """Number of integration points on omega2 when the non linear -transfer term is calculated with the exact GQM method: -rough 6 ; medium 8 ; fine 12""", - ), -# ----------------------------------- - THRESHOLD0_FOR_CONFIGURATIONS_ELIMINATION = SIMP(statut ='o', -# ----------------------------------- - typ = 'R', - defaut = 0.00, - fr = """ Choix du seuil pour l elimination de configurations lorsque -le terme de transfert non lineaire est calcule de maniere exacte -(methode GQM) -**Mots-cles associes :** -SEUIL1 ELIMINATION DE CONFIGURATIONS -SEUIL2 ELIMINATION DE CONFIGURATIONS -TRANSFERTS NON LINEAIRES INTER-FREQUENCES""", - ang = """Choice of threshold for configurations elimination when the -non linear transfer term is calculated with the exact GQM method -\\ - \begin{CommentBlock}{Related keywords} -THRESHOLD1 FOR CONFIGURATIONS ELIMINATION\\ -THRESHOLD2 FOR CONFIGURATIONS ELIMINATION\\ -NON-LINEAR TRANSFERS BETWEEN FREQUENCIES -\end{CommentBlock}""", - ), -# ----------------------------------- - THRESHOLD1_FOR_CONFIGURATIONS_ELIMINATION = SIMP(statut ='o', -# ----------------------------------- - typ = 'R', - defaut = 10000000000.0, - fr = """ Choix du seuil1 pour l elimination de configurations lorsque -le terme de transfert non lineaire est calcule de maniere exacte -(methode GQM) -**Mots-cles associes :** -SEUIL0 ELIMINATION DE CONFIGURATIONS -SEUIL2 ELIMINATION DE CONFIGURATIONS -TRANSFERTS NON LINEAIRES INTER-FREQUENCES""", - ang = """Choice of threshold1 for configurations elimination when the -non linear transfer term is calculated with the exact GQM method -\\ - \begin{CommentBlock}{Related keywords} -THRESHOLD0 FOR CONFIGURATIONS ELIMINATION\\ -THRESHOLD2 FOR CONFIGURATIONS ELIMINATION\\ -NON-LINEAR TRANSFERS BETWEEN FREQUENCIES -\end{CommentBlock}""", - ), -# ----------------------------------- - THRESHOLD2_FOR_CONFIGURATIONS_ELIMINATION = SIMP(statut ='o', -# ----------------------------------- - typ = 'R', - defaut = 0.15, - fr = """ Choix du seuil2 pour l elimination de configurations lorsque -le terme de transfert non lineaire est calcule de maniere exacte -(methode GQM) : grossier 0.15 ; moyen 0.01 ; fin 0.001 -**Mots-cles associes :** -SEUIL0 ELIMINATION DE CONFIGURATIONS -SEUIL1 ELIMINATION DE CONFIGURATIONS -TRANSFERTS NON LINEAIRES INTER-FREQUENCES""", - ang = """Choice of threshold2 for configurations elimination when the -non linear transfer term is calculated with the exact GQM method: -rough 0.15 ; medium 0.01 ; fine 0.001 -\\ - \begin{CommentBlock}{Related keywords} -THRESHOLD0 FOR CONFIGURATIONS ELIMINATION\\ -THRESHOLD1 FOR CONFIGURATIONS ELIMINATION\\ -NON-LINEAR TRANSFERS BETWEEN FREQUENCIES -\end{CommentBlock}""", - ), - ), - ), -# ----------------------------------- - NUMERICAL_PARAMETERS = FACT(statut='f', -# ----------------------------------- -# ----------------------------------- - NUMBER_OF_ITERATIONS_FOR_THE_SOURCE_TERMS = SIMP(statut ='f', -# ----------------------------------- - typ = 'I', - defaut = 1, - fr = """Nombre de sous-iterations pour le calcul des -contributions des termes sources. Le pas de temps considere -pour les termes sources est le rapport entre le PAS DE TEMPS -et le NOMBRE DE SOUS-ITERATIONS POUR LES TERMES SOURCES. -**Mots-cles associes :** -PAS DE TEMPS""", - ang = """Number of sub-iterations for the computation of the source terms. -The time step considered in the integration of the source terms -is the ratio between the TIME STEP and the NUMBER OF SUB-ITERATIONS -FOR THE SOURCE TERMS -\\ - \begin{CommentBlock}{Related keywords} -TIME STEP -\end{CommentBlock}""", - ), -# ----------------------------------- - IMPLICITATION_COEFFICIENT_FOR_SOURCE_TERMS = SIMP(statut ='f', -# ----------------------------------- - typ = 'R', - defaut = 0.5, - fr = """Coefficient controlant l implicitation dans le schema -d integration des termes sources, compris entre 0 et 1. -CIMPLI=0. : explicite -CIMPLI=0.5 : semi-implicite -CIMPLI=1. : implicite. -**Mots-cles associes :** -PRISE EN COMPTE DES TERMES SOURCES""", - ang = """Implicitation coefficient for the source terms integration, -included between 0 et 1. -\begin{itemize} -\item CIMPLI=0. : explicit -\item CIMPLI=0.5 : semi-implicit -\item CIMPLI=1. : implicit. -\end{itemize} - \begin{CommentBlock}{Related keywords} -CONSIDERATION OF SOURCE TERMS -\end{CommentBlock}""", - ), - ), -# ----------------------------------- - STRONG_CURRENT = FACT(statut='o', -# ----------------------------------- -# ----------------------------------- - DISSIPATION_BY_STRONG_CURRENT = SIMP(statut ='o', -# ----------------------------------- - typ = 'TXM', - into = ["No wave-blocking","Spectrum limitation by a Phillips shape","Dissipation in accordance with Van der Westhuysen(2012)"], - defaut = ["No wave-blocking"], - fr = """Lorsque les effets de wave-blocking ou vagues stoppees -par un fort courant sont presents, deux options sont proposees. -Si sa valeur est 1, une limitation est imposee au spectre, -en utilisant une forme d equilibre de Phillips (1977). -Si sa valeur est 2, on utilise le terme de dissipation propose -par Van der Westhuysen (2012). -**Mots-cles associes :** -COEFFICIENT DE DISSIPATION PAR FORT COURANT""", - ang = """When wave-blocking effects are present (wave stopped by -a strong opposing current), two options are possible. -If its value is 1, an upper limit is imposed to the spectrum, -using a Phillips (1977) shape. -If its value is 2, a dissipative term is added, following -Van der Westhuysen (2012). -\\ - \begin{CommentBlock}{Related keywords} -DISSIPATION COEFFICIENT FOR STRONG CURRENT -\end{CommentBlock}""", - ), -# ----------------------------------- - b_DISSIPATION_BY_STRONG_CURRENTG = BLOC(condition="DISSIPATION_BY_STRONG_CURRENT == 'Dissipation in accordance with Van der Westhuysen(2012)'", -# ----------------------------------- -# ----------------------------------- - DISSIPATION_COEFFICIENT_FOR_STRONG_CURRENT = SIMP(statut ='o', -# ----------------------------------- - typ = 'R', - defaut = 0.65, - fr = """Coefficient de dissipation pour des vagues stoppees -par un courant fort adverse (effets de wave-blocking). -Expression de van der Westhuysen (2012): Cds,cur. -**Mots-cles associes :** -DISSIPATION PAR FORT COURANT""", - ang = """Dissipation coefficient for waves stopped -by a strong opposing current (wave blocking effects). -Van der Westhuysen (2012) expression: Cds,cur. -\\ - \begin{CommentBlock}{Related keywords} -DISSIPATION BY STRONG CURRENT -\end{CommentBlock}""", - ), - ), - ), -# ----------------------------------- - BREAKING = FACT(statut='o', -# ----------------------------------- -# ----------------------------------- - DEPTH_INDUCED_BREAKING_DISSIPATION = SIMP(statut ='o', -# ----------------------------------- - typ = 'TXM', - into = ["No breaking","Dissipation in accordance with Battjes et Janssen (1978)","Dissipation in accordance with Thornton et Guza (1983)","Dissipation in accordance with Roelvink (1993)","Dissipation in accordance with Izumiya et Horikawa (1984)"], - defaut = ["No breaking"], - fr = """Choix du type de modelisation du terme source de dissipation -par deferlement du a la bathymetrie : - 0 : Pas de prise en compte du deferlement. - 1 : Modele de Battjes et Janssen (1978). - 2 : Modele de Thornton et Guza (1983). - 3 : Modele de Roelvink (1993). - 4 : Modele de Izumiya et Horikawa (1984). -**Mots-cles associes :** -NOMBRE DE SOUS-PAS DE TEMPS POUR LE DEFERLEMENT -DEFERLEMENT 1 (BJ) MODE DE CALCUL DE QB -DEFERLEMENT 1 (BJ) MODE DE CALCUL DE HM -DEFERLEMENT 1 (BJ) CHOIX FREQUENCE CARACTERISTIQUE -DEFERLEMENT 1 (BJ) CONSTANTE ALPHA -DEFERLEMENT 1 (BJ) CONSTANTE GAMMA1 -DEFERLEMENT 1 (BJ) CONSTANTE GAMMA2 -DEFERLEMENT 2 (TG) FONCTION DE PONDERATION -DEFERLEMENT 2 (TG) CHOIX FREQUENCE CARACTERISTIQUE -DEFERLEMENT 2 (TG) CONSTANTE B -DEFERLEMENT 2 (TG) CONSTANTE GAMMA -DEFERLEMENT 3 (RO) DISTRIBUTION DES HAUTEURS DE HOULE -DEFERLEMENT 3 (RO) EXPOSANT FONCTION DE PONDERATION -DEFERLEMENT 3 (RO) CHOIX FREQUENCE CARACTERISTIQUE -DEFERLEMENT 3 (RO) CONSTANTE ALPHA -DEFERLEMENT 3 (RO) CONSTANTE GAMMA -DEFERLEMENT 3 (RO) CONSTANTE GAMMA2 -DEFERLEMENT 4 (IH) CHOIX FREQUENCE CARACTERISTIQUE -DEFERLEMENT 4 (IH) CONSTANTE BETA0 -DEFERLEMENT 4 (IH) CONSTANTE M2STAR""", - ang = """Selection of the modelling type of the bathymetric-induced -breaking dissipation source term : -\begin{itemize} -\item 0 : Breaking is ignored. -\item 1 : Battjes and Janssen model (1978). -\item 2 : Thornton and Guza model (1983). -\item 3 : Roelvink model (1993). -\item 4 : Izumiya and Horikawa model (1984). -\end{itemize} - \begin{CommentBlock}{Related keywords} -NUMBER OF BREAKING TIME STEPS\\ -DEPTH-INDUCED BREAKING 1 (BJ) QB COMPUTATION METHOD\\ -DEPTH-INDUCED BREAKING 1 (BJ) HM COMPUTATION METHOD\\ -DEPTH-INDUCED BREAKING 1 (BJ) CHARACTERISTIC FREQUENCY\\ -DEPTH-INDUCED BREAKING 1 (BJ) COEFFICIENT ALPHA\\ -DEPTH-INDUCED BREAKING 1 (BJ) COEFFICIENT GAMMA1\\ -DEPTH-INDUCED BREAKING 1 (BJ) COEFFICIENT GAMMA2\\ -DEPTH-INDUCED BREAKING 2 (TG) WEIGHTING FUNCTION\\ -DEPTH-INDUCED BREAKING 2 (TG) CHARACTERISTIC FREQUENCY\\ -DEPTH-INDUCED BREAKING 2 (TG) COEFFICIENT B\\ -DEPTH-INDUCED BREAKING 2 (TG) COEFFICIENT GAMMA\\ -DEPTH-INDUCED BREAKING 3 (RO) WAVE HEIGHT DISTRIBUTION\\ -DEPTH-INDUCED BREAKING 3 (RO) EXPONENT WEIGHTING FUNCTION\\ -DEPTH-INDUCED BREAKING 3 (RO) CHARACTERISTIC FREQUENCY\\ -DEPTH-INDUCED BREAKING 3 (RO) COEFFICIENT ALPHA\\ -DEPTH-INDUCED BREAKING 3 (RO) COEFFICIENT GAMMA\\ -DEPTH-INDUCED BREAKING 3 (RO) COEFFICIENT GAMMA2\\ -DEPTH-INDUCED BREAKING 4 (IH) CHARACTERISTIC FREQUENCY\\ -DEPTH-INDUCED BREAKING 4 (IH) COEFFICIENT BETA0\\ -DEPTH-INDUCED BREAKING 4 (IH) COEFFICIENT M2STAR -\end{CommentBlock}""", - ), -# ----------------------------------- - b_DEPTH_INDUCED_BREAKING_DISSIPATIONG = BLOC(condition="DEPTH_INDUCED_BREAKING_DISSIPATION == 'Dissipation in accordance with Battjes et Janssen (1978)'", -# ----------------------------------- -# ----------------------------------- - DEPTH_INDUCED_BREAKING_1__BJ__QB_COMPUTATION_METHOD = SIMP(statut ='o', -# ----------------------------------- - typ = 'TXM', - into = ["SOLVES BY DICHOTOMY","EXPLICIT INSPIRED FROM CREDIZ VERSION 1","EXPLICIT INSPIRED FROM CREDIZ VERSION 2","EXPLICIT INSPIRED FROM CREDIZ VERSION 3"], - defaut = ["EXPLICIT INSPIRED FROM CREDIZ VERSION 2"], - fr = """Choix du mode de resolution de l equation implicite donnant Qb. -**Mots-cles associes :** -DISSIPATION PAR DEFERLEMENT -DEFERLEMENT 1 (BJ) MODE DE CALCUL DE HM -DEFERLEMENT 1 (BJ) CHOIX FREQUENCE CARACTERISTIQUE -DEFERLEMENT 1 (BJ) CONSTANTE ALPHA -DEFERLEMENT 1 (BJ) CONSTANTE GAMMA1 -DEFERLEMENT 1 (BJ) CONSTANTE GAMMA2""", - ang = """Selection of the method for the resolution of the implicit -equation for QB. -\\ - \begin{CommentBlock}{Related keywords} -DEPTH-INDUCED BREAKING DISSIPATION\\ -DEPTH-INDUCED BREAKING 1 (BJ) HM COMPUTATION METHOD\\ -DEPTH-INDUCED BREAKING 1 (BJ) CHARACTERISTIC FREQUENCY\\ -DEPTH-INDUCED BREAKING 1 (BJ) COEFFICIENT ALPHA\\ -DEPTH-INDUCED BREAKING 1 (BJ) COEFFICIENT GAMMA1\\ -DEPTH-INDUCED BREAKING 1 (BJ) COEFFICIENT GAMMA2 -\end{CommentBlock}""", - ), -# ----------------------------------- - DEPTH_INDUCED_BREAKING_1__BJ__HM_COMPUTATION_METHOD = SIMP(statut ='o', -# ----------------------------------- - typ = 'TXM', - into = ["Hm = GAMMA*D","Hm given by the Miche criterium"], - defaut = ["Hm = GAMMA*D"], - fr = """Choix du critere de deferlement donnant la hauteur de houle -de deferlement (1 : Hm = GAMMA*D ; 2 : Hm par critere de Miche). -**Mots-cles associes :** -DISSIPATION PAR DEFERLEMENT -DEFERLEMENT 1 (BJ) CHOIX FREQUENCE CARACTERISTIQUE -DEFERLEMENT 1 (BJ) CONSTANTE GAMMA1 -DEFERLEMENT 1 (BJ) CONSTANTE GAMMA2""", - ang = """Selection of the depth-induced breaking criterium -giving the breaking wave height (1 : Hm = GAMMA*D ; 2 : Hm given -the Miche criterium). -\\ - \begin{CommentBlock}{Related keywords} -DEPTH-INDUCED BREAKING DISSIPATION\\ -DEPTH-INDUCED BREAKING 1 (BJ) CHARACTERISTIC FREQUENCY\\ -DEPTH-INDUCED BREAKING 1 (BJ) COEFFICIENT GAMMA1\\ -DEPTH-INDUCED BREAKING 1 (BJ) COEFFICIENT GAMMA2\\ -\end{CommentBlock}""", - ), -# ----------------------------------- - DEPTH_INDUCED_BREAKING_1__BJ__CHARACTERISTIC_FREQUENCY = SIMP(statut ='o', -# ----------------------------------- - typ = 'TXM', - into = ["Frequency Fmoy","Frequency F01","Frequency F02","Frequency Fpic","Frequency Fread ordre 5","Frequency Fread ordre 8"], - defaut = ["Frequency F01"], - fr = """Choix de la frequence caracteristique du spectre de houle -1 : Frequence Fmoy -2 : Frequence F01 (definie par les moments d ordre 0 et 1 du spectre) -3 : Frequence F02 (definie par les moments d ordre 0 et 2 du spectre) -4 : Frequence Fpic (frequence d echantillonage correspondant au max) -5 : Frequence Fread ordre 5 (frequence de pic methode Read ordre 5) -6 : Frequence Fread ordre 8 (frequence de pic methode Read ordre 8) -**Mots-cles associes :** -DISSIPATION PAR DEFERLEMENT -DEFERLEMENT 1 (BJ) MODE DE CALCUL DE QB -DEFERLEMENT 1 (BJ) MODE DE CALCUL DE HM -DEFERLEMENT 1 (BJ) CONSTANTE ALPHA -DEFERLEMENT 1 (BJ) CONSTANTE GAMMA1 -DEFERLEMENT 1 (BJ) CONSTANTE GAMMA2""", - ang = """Selection of the characteristic frequency of the wave spectrum -\begin{itemize} -\item 1 : Frequency Fmoy -\item 2 : Frequency F01 (defined by the moments of order 0 and 1 of the -spectrum) -\item 3 : Frequency F02 (defined by the moments of order 0 and 2 of the -spectrum) -\item 4 : Frequency Fpic (sampling frequency corresponding to the max) -\item 5 : Frequency Fread ordre 5 (peak frequency, 5th order Read -method) -\item 6 : Frequency Fread ordre 8 (peak frequency, 8th order Read -method) -\end{itemize} - \begin{CommentBlock}{Related keywords} -DEPTH-INDUCED BREAKING DISSIPATION\\ -DEPTH-INDUCED BREAKING 1 (BJ) QB COMPUTATION METHOD\\ -DEPTH-INDUCED BREAKING 1 (BJ) HM COMPUTATION METHOD\\ -DEPTH-INDUCED BREAKING 1 (BJ) COEFFICIENT ALPHA\\ -DEPTH-INDUCED BREAKING 1 (BJ) COEFFICIENT GAMMA1\\ -DEPTH-INDUCED BREAKING 1 (BJ) COEFFICIENT GAMMA2 -\end{CommentBlock}""", - ), -# ----------------------------------- - DEPTH_INDUCED_BREAKING_1__BJ__COEFFICIENT_ALPHA = SIMP(statut ='o', -# ----------------------------------- - typ = 'R', - defaut = 1., - fr = """Constante ALPHA du modele de deferlement de Battjes et Janssen. -**Mots-cles associes :** -DISSIPATION PAR DEFERLEMENT -NOMBRE DE SOUS-PAS DE TEMPS POUR LE DEFERLEMENT -DEFERLEMENT 1 (BJ) MODE DE CALCUL DE QB -DEFERLEMENT 1 (BJ) MODE DE CALCUL DE HM -DEFERLEMENT 1 (BJ) CHOIX FREQUENCE CARACTERISTIQUE -DEFERLEMENT 1 (BJ) CONSTANTE GAMMA1 -DEFERLEMENT 1 (BJ) CONSTANTE GAMMA2""", - ang = """ALPHA constant for the Battjes and Janssen model. -\\ - \begin{CommentBlock}{Related keywords} -DEPTH-INDUCED BREAKING DISSIPATION\\ -NUMBER OF BREAKING TIME STEPS\\ -DEFERLEMENT 1 (BJ) MODE DE CALCUL DE QB\\ -DEFERLEMENT 1 (BJ) MODE DE CALCUL DE HM\\ -DEFERLEMENT 1 (BJ) CHOIX FREQUENCE CARACTERISTIQUE\\ -DEFERLEMENT 1 (BJ) CONSTANTE GAMMA1\\ -DEFERLEMENT 1 (BJ) CONSTANTE GAMMA2 -\end{CommentBlock}""", - ), -# ----------------------------------- - DEPTH_INDUCED_BREAKING_1__BJ__COEFFICIENT_GAMMA1 = SIMP(statut ='o', -# ----------------------------------- - typ = 'R', - defaut = 0.88, - fr = """Constante GAMMA1 du modele de deferlement de Battjes et Janssen. -**Mots-cles associes :** -DISSIPATION PAR DEFERLEMENT -NOMBRE DE SOUS-PAS DE TEMPS POUR LE DEFERLEMENT -DEFERLEMENT 1 (BJ) MODE DE CALCUL DE QB -DEFERLEMENT 1 (BJ) MODE DE CALCUL DE HM -DEFERLEMENT 1 (BJ) CHOIX FREQUENCE CARACTERISTIQUE -DEFERLEMENT 1 (BJ) CONSTANTE ALPHA -DEFERLEMENT 1 (BJ) CONSTANTE GAMMA2""", - ang = """GAMMA1 constant of the Battjes and Janssen model. -\\ - \begin{CommentBlock}{Related keywords} -DEPTH-INDUCED BREAKING DISSIPATION\\ -NUMBER OF BREAKING TIME STEPS\\ -DEFERLEMENT 1 (BJ) MODE DE CALCUL DE QB\\ -DEFERLEMENT 1 (BJ) MODE DE CALCUL DE HM\\ -DEFERLEMENT 1 (BJ) CHOIX FREQUENCE CARACTERISTIQUE\\ -DEFERLEMENT 1 (BJ) CONSTANTE ALPHA\\ -DEFERLEMENT 1 (BJ) CONSTANTE GAMMA2 -\end{CommentBlock}""", - ), -# ----------------------------------- - DEPTH_INDUCED_BREAKING_1__BJ__COEFFICIENT_GAMMA2 = SIMP(statut ='o', -# ----------------------------------- - typ = 'R', - defaut = 0.8, - fr = """Constante GAMMA2 du modele de deferlement de Battjes et Janssen. -**Mots-cles associes :** -DISSIPATION PAR DEFERLEMENT -NOMBRE DE SOUS-PAS DE TEMPS POUR LE DEFERLEMENT -DEFERLEMENT 1 (BJ) MODE DE CALCUL DE QB -DEFERLEMENT 1 (BJ) MODE DE CALCUL DE HM -DEFERLEMENT 1 (BJ) CHOIX FREQUENCE CARACTERISTIQUE -DEFERLEMENT 1 (BJ) CONSTANTE ALPHA -DEFERLEMENT 1 (BJ) CONSTANTE GAMMA1""", - ang = """GAMMA1 constant of the Battjes and Janssen model. -\\ - \begin{CommentBlock}{Related keywords} -DEPTH-INDUCED BREAKING DISSIPATION\\ -NUMBER OF BREAKING TIME STEPS\\ -DEFERLEMENT 1 (BJ) MODE DE CALCUL DE QB\\ -DEFERLEMENT 1 (BJ) MODE DE CALCUL DE HM\\ -DEFERLEMENT 1 (BJ) CHOIX FREQUENCE CARACTERISTIQUE\\ -DEFERLEMENT 1 (BJ) CONSTANTE ALPHA\\ -DEFERLEMENT 1 (BJ) CONSTANTE GAMMA1 -\end{CommentBlock}""", - ), - ), -# ----------------------------------- - b_DEPTH_INDUCED_BREAKING_DISSIPATIONH = BLOC(condition="DEPTH_INDUCED_BREAKING_DISSIPATION == 'Dissipation in accordance with Thornton et Guza (1983)'", -# ----------------------------------- -# ----------------------------------- - DEPTH_INDUCED_BREAKING_2__TG__WEIGHTING_FUNCTION = SIMP(statut ='o', -# ----------------------------------- - typ = 'TXM', - into = ["Weight function 1","Weight function 2"], - defaut = ["Weight function 2"], - fr = """Choix de l expression de la fonction de ponderation basee -sur une distribution de probabilite des hauteurs de houle. -**Mots-cles associes :** -DISSIPATION PAR DEFERLEMENT -DEFERLEMENT 2 (TG) CHOIX FREQUENCE CARACTERISTIQUE -DEFERLEMENT 2 (TG) CONSTANTE B -DEFERLEMENT 2 (TG) CONSTANTE GAMMA""", - ang = """Selection of the expression for the weighting function -based on a probability distribution of the wave heights. -\\ - \begin{CommentBlock}{Related keywords} -DEPTH-INDUCED BREAKING DISSIPATION\\ -DEPTH-INDUCED BREAKING 2 (TG) CHARACTERISTIC FREQUENCY\\ -DEPTH-INDUCED BREAKING 2 (TG) COEFFICIENT B\\ -DEPTH-INDUCED BREAKING 2 (TG) COEFFICIENT GAMMA -\end{CommentBlock}""", - ), -# ----------------------------------- - DEPTH_INDUCED_BREAKING_2__TG__CHARACTERISTIC_FREQUENCY = SIMP(statut ='o', -# ----------------------------------- - typ = 'TXM', - into = ["Frequency Fmoy","Frequency F01","Frequency F02","Frequency Fpic","Frequency Fread ordre 5","Frequency Fread ordre 8"], - defaut = ["Frequency Fread ordre 5"], - fr = """Choix de la frequence caracteristique du spectre de houle -\begin{itemize} -\item 1 : Frequence Fmoy -\item 2 : Frequence F01 (definie par les moments d ordre 0 et 1 du -spectre) -\item 3 : Frequence F02 (definie par les moments d ordre 0 et 2 du -spectre) -\item 4 : Frequence Fpic (frequence d echantillonage correspondant au -max) -\item 5 : Frequence Fread ordre 5 (frequence de pic methode Read ordre -5) -\item 6 : Frequence Fread ordre 8 (frequence de pic methode Read ordre -8) -\end{itemize} -**Mots-cles associes :** -DISSIPATION PAR DEFERLEMENT -DEFERLEMENT 2 (TG) FONCTION DE PONDERATION -DEFERLEMENT 2 (TG) CONSTANTE B -DEFERLEMENT 2 (TG) CONSTANTE GAMMA""", - ang = """Selection of the characteristic frequency of the wave spectrum -\begin{itemize} -\item 1 : Frequency Fmoy -\item 2 : Frequency F01 (defined by the moments of order 0 and 1 of the -spectrum) -\item 3 : Frequency F02 (defined by the moments of order 0 and 2 of the -spectrum) -\item 4 : Frequency Fpic (sampling frequency corresponding to the max) -\item 5 : Frequency Fread ordre 5 (peak frequency, 5th order Read -method) -\item 6 : Frequency Fread ordre 8 (peak frequency, 8th order Read -method) -\end{itemize} - \begin{CommentBlock}{Related keywords} -DEPTH-INDUCED BREAKING DISSIPATION -DEPTH-INDUCED BREAKING 2 (TG) WEIGHTING FUNCTION -DEPTH-INDUCED BREAKING 2 (TG) COEFFICIENT B -DEPTH-INDUCED BREAKING 2 (TG) COEFFICIENT GAMMA -\end{CommentBlock}""", - ), -# ----------------------------------- - DEPTH_INDUCED_BREAKING_2__TG__COEFFICIENT_B = SIMP(statut ='o', -# ----------------------------------- - typ = 'R', - defaut = 1.0, - fr = """Constante B du modele de deferlement de Thornton et Guza. -**Mots-cles associes :** -DISSIPATION PAR DEFERLEMENT -NOMBRE DE SOUS-PAS DE TEMPS POUR LE DEFERLEMENT -DEFERLEMENT 2 (TG) FONCTION DE PONDERATION -DEFERLEMENT 2 (TG) CHOIX FREQUENCE CARACTERISTIQUE -DEFERLEMENT 2 (TG) CONSTANTE GAMMA""", - ang = """Coefficient B of the Thornton and Guza model. -\\ - \begin{CommentBlock}{Related keywords} -DEPTH-INDUCED BREAKING DISSIPATION\\ -NUMBER OF BREAKING TIME STEPS\\ -DEPTH-INDUCED BREAKING 2 (TG) WEIGHTING FUNCTION\\ -DEPTH-INDUCED BREAKING 2 (TG) CHARACTERISTIC FREQUENCY\\ -DEPTH-INDUCED BREAKING 2 (TG) COEFFICIENT GAMMA -\end{CommentBlock}""", - ), -# ----------------------------------- - DEPTH_INDUCED_BREAKING_2__TG__COEFFICIENT_GAMMA = SIMP(statut ='o', -# ----------------------------------- - typ = 'R', - defaut = 0.42, - fr = """Constante GAMMA du modele de deferlement de Thornton et Guza. -**Mots-cles associes :** -DISSIPATION PAR DEFERLEMENT -NOMBRE DE SOUS-PAS DE TEMPS POUR LE DEFERLEMENT -DEFERLEMENT 2 (TG) FONCTION DE PONDERATION -DEFERLEMENT 2 (TG) CHOIX FREQUENCE CARACTERISTIQUE -DEFERLEMENT 2 (TG) CONSTANTE B""", - ang = """Coefficient GAMMA of the Thornton and Guza model. -\\ - \begin{CommentBlock}{Related keywords} -DEPTH-INDUCED BREAKING DISSIPATION\\ -NUMBER OF BREAKING TIME STEPS\\ -DEPTH-INDUCED BREAKING 2 (TG) WEIGHTING FUNCTION\\ -DEPTH-INDUCED BREAKING 2 (TG) CHARACTERISTIC FREQUENCY\\ -DEPTH-INDUCED BREAKING 2 (TG) COEFFICIENT B -\end{CommentBlock}""", - ), - ), -# ----------------------------------- - b_DEPTH_INDUCED_BREAKING_DISSIPATIONI = BLOC(condition="DEPTH_INDUCED_BREAKING_DISSIPATION == 'Dissipation in accordance with Roelvink (1993)'", -# ----------------------------------- -# ----------------------------------- - DEPTH_INDUCED_BREAKING_3__RO__WAVE_HEIGHT_DISTRIBUTION = SIMP(statut ='o', -# ----------------------------------- - typ = 'TXM', - into = ["Weibull","Rayleigh"], - defaut = ["Weibull"], - fr = """Choix de la distribution des hauteurs de houle pour le -modele de deferlement de Roelvink : - 1...Weibull, - 2...Rayleigh. -**Mots-cles associes :** -DISSIPATION PAR DEFERLEMENT -DEFERLEMENT 3 (RO) EXPOSANT FONCTION DE PONDERATION -DEFERLEMENT 3 (RO) CHOIX FREQUENCE CARACTERISTIQUE -DEFERLEMENT 3 (RO) CONSTANTE ALPHA -DEFERLEMENT 3 (RO) CONSTANTE GAMMA -DEFERLEMENT 3 (RO) CONSTANTE GAMMA2""", - ang = """Selection of the wave height distribution for the -Roelvink breaking model : - 1...Weibull, - 2...Rayleigh. -\\ - \begin{CommentBlock}{Related keywords} -DEPTH-INDUCED BREAKING DISSIPATION\\ -DEPTH-INDUCED BREAKING 3 (RO) EXPONENT WEIGHTING FUNCTION\\ -DEPTH-INDUCED BREAKING 3 (RO) CHARACTERISTIC FREQUENCY\\ -DEPTH-INDUCED BREAKING 3 (RO) COEFFICIENT ALPHA\\ -DEPTH-INDUCED BREAKING 3 (RO) COEFFICIENT GAMMA\\ -DEPTH-INDUCED BREAKING 3 (RO) COEFFICIENT GAMMA2 -\end{CommentBlock}""", - ), -# ----------------------------------- - DEPTH_INDUCED_BREAKING_3__RO__EXPONENT_WEIGHTING_FUNCTION = SIMP(statut ='o', -# ----------------------------------- - typ = 'I', - defaut = 10, - fr = """Exposant n de la fonction de ponderation utilisee par -le modele de deferlement de Roelvink. -**Mots-cles associes :** -DISSIPATION PAR DEFERLEMENT -DEFERLEMENT 3 (RO) DISTRIBUTION DES HAUTEURS DE HOULE -DEFERLEMENT 3 (RO) CHOIX FREQUENCE CARACTERISTIQUE -DEFERLEMENT 3 (RO) CONSTANTE ALPHA -DEFERLEMENT 3 (RO) CONSTANTE GAMMA -DEFERLEMENT 3 (RO) CONSTANTE GAMMA2""", - ang = """n exponent of the weighting function used in the Roelvink -breaking model. -\\ - \begin{CommentBlock}{Related keywords} -DEPTH-INDUCED BREAKING DISSIPATION\\ -DEPTH-INDUCED BREAKING 3 (RO) WAVE HEIGHT DISTRIBUTION\\ -DEPTH-INDUCED BREAKING 3 (RO) CHARACTERISTIC FREQUENCY\\ -DEPTH-INDUCED BREAKING 3 (RO) COEFFICIENT ALPHA\\ -DEPTH-INDUCED BREAKING 3 (RO) COEFFICIENT GAMMA\\ -DEPTH-INDUCED BREAKING 3 (RO) COEFFICIENT GAMMA2 -\end{CommentBlock}""", - ), -# ----------------------------------- - DEPTH_INDUCED_BREAKING_3__RO__CHARACTERISTIC_FREQUENCY = SIMP(statut ='o', -# ----------------------------------- - typ = 'TXM', - into = ["Frequency Fmoy","Frequency F01","Frequency F02","Frequency Fpic","Frequency Fread ordre 5","Frequency Fread ordre 8"], - defaut = ["Frequency Fread ordre 5"], - fr = """Choix de la frequence caracteristique du spectre de houle -1 : Frequence Fmoy -2 : Frequence F01 (definie par les moments d ordre 0 et 1 du spectre) -3 : Frequence F02 (definie par les moments d ordre 0 et 2 du spectre) -4 : Frequence Fpic (frequence d echantillonage correspondant au max) -5 : Frequence Fread ordre 5 (frequence de pic methode Read ordre 5) -6 : Frequence Fread ordre 8 (frequence de pic methode Read ordre 8) -**Mots-cles associes :** -DISSIPATION PAR DEFERLEMENT -DEFERLEMENT 3 (RO) DISTRIBUTION DES HAUTEURS DE HOULE -DEFERLEMENT 3 (RO) EXPOSANT FONCTION DE PONDERATION -DEFERLEMENT 3 (RO) CONSTANTE ALPHA -DEFERLEMENT 3 (RO) CONSTANTE GAMMA -DEFERLEMENT 3 (RO) CONSTANTE GAMMA2""", - ang = """Selection of the characteristic frequency of the wave spectrum -\begin{itemize} -\item 1 : Frequency Fmoy -\item 2 : Frequency F01 (defined by the moments of order 0 and 1 of the -spectrum) -\item 3 : Frequency F02 (defined by the moments of order 0 and 2 of the -spectrum) -\item 4 : Frequency Fpic (sampling frequency corresponding to the max) -\item 5 : Frequency Fread ordre 5 (peak frequency, 5th order Read -method) -\item 6 : Frequency Fread ordre 8 (peak frequency, 8th order Read -method) -\end{itemize} - \begin{CommentBlock}{Related keywords} -DEPTH-INDUCED BREAKING DISSIPATION\\ -DEPTH-INDUCED BREAKING 3 (RO) WAVE HEIGHT DISTRIBUTION\\ -DEPTH-INDUCED BREAKING 3 (RO) EXPONENT WEIGHTING FUNCTION\\ -DEPTH-INDUCED BREAKING 3 (RO) COEFFICIENT ALPHA\\ -DEPTH-INDUCED BREAKING 3 (RO) COEFFICIENT GAMMA\\ -DEPTH-INDUCED BREAKING 3 (RO) COEFFICIENT GAMMA2 -\end{CommentBlock}""", - ), -# ----------------------------------- - DEPTH_INDUCED_BREAKING_3__RO__COEFFICIENT_ALPHA = SIMP(statut ='o', -# ----------------------------------- - typ = 'R', - defaut = 1., - fr = """Constante ALPHA du modele de deferlement de Roelvink (1993). -**Mots-cles associes :** -DISSIPATION PAR DEFERLEMENT -NOMBRE DE SOUS-PAS DE TEMPS POUR LE DEFERLEMENT -DEFERLEMENT 3 (RO) DISTRIBUTION DES HAUTEURS DE HOULE -DEFERLEMENT 3 (RO) EXPOSANT FONCTION DE PONDERATION -DEFERLEMENT 3 (RO) CHOIX FREQUENCE CARACTERISTIQUE -DEFERLEMENT 3 (RO) CONSTANTE GAMMA -DEFERLEMENT 3 (RO) CONSTANTE GAMMA2""", - ang = """Coefficient ALPHA of the Roelvink model (1993). -\\ - \begin{CommentBlock}{Related keywords} -DEPTH-INDUCED BREAKING DISSIPATION\\ -NUMBER OF BREAKING TIME STEPS\\ -DEPTH-INDUCED BREAKING 3 (RO) WAVE HEIGHT DISTRIBUTION\\ -DEPTH-INDUCED BREAKING 3 (RO) EXPONENT WEIGHTING FUNCTION\\ -DEPTH-INDUCED BREAKING 3 (RO) CHARACTERISTIC FREQUENCY\\ -DEPTH-INDUCED BREAKING 3 (RO) COEFFICIENT GAMMA\\ -DEPTH-INDUCED BREAKING 3 (RO) COEFFICIENT GAMMA2 -\end{CommentBlock}""", - ), -# ----------------------------------- - DEPTH_INDUCED_BREAKING_3__RO__COEFFICIENT_GAMMA = SIMP(statut ='o', -# ----------------------------------- - typ = 'R', - defaut = 0.54, - fr = """Constante GAMMA du modele de deferlement de Roelvink (1993). -**Mots-cles associes :** -DISSIPATION PAR DEFERLEMENT -NOMBRE DE SOUS-PAS DE TEMPS POUR LE DEFERLEMENT -DEFERLEMENT 3 (RO) DISTRIBUTION DES HAUTEURS DE HOULE -DEFERLEMENT 3 (RO) EXPOSANT FONCTION DE PONDERATION -DEFERLEMENT 3 (RO) CHOIX FREQUENCE CARACTERISTIQUE -DEFERLEMENT 3 (RO) CONSTANTE ALPHA -DEFERLEMENT 3 (RO) CONSTANTE GAMMA2""", - ang = """Coefficient GAMMA of the Roelvink model (1993). -\\ - \begin{CommentBlock}{Related keywords} -DEPTH-INDUCED BREAKING DISSIPATION\\ -NUMBER OF BREAKING TIME STEPS\\ -DEPTH-INDUCED BREAKING 3 (RO) WAVE HEIGHT DISTRIBUTION\\ -DEPTH-INDUCED BREAKING 3 (RO) EXPONENT WEIGHTING FUNCTION\\ -DEPTH-INDUCED BREAKING 3 (RO) CHARACTERISTIC FREQUENCY\\ -DEPTH-INDUCED BREAKING 3 (RO) COEFFICIENT ALPHA\\ -DEPTH-INDUCED BREAKING 3 (RO) COEFFICIENT GAMMA2 -\end{CommentBlock}""", - ), -# ----------------------------------- - DEPTH_INDUCED_BREAKING_3__RO__COEFFICIENT_GAMMA2 = SIMP(statut ='o', -# ----------------------------------- - typ = 'R', - defaut = 0.65, - fr = """Constante GAMMA2 du modele de deferlement de Roelvink (1993). -N est utilisee que pour la distribution de Weibull. -**Mots-cles associes :** -DISSIPATION PAR DEFERLEMENT -NOMBRE DE SOUS-PAS DE TEMPS POUR LE DEFERLEMENT -DEFERLEMENT 3 (RO) DISTRIBUTION DES HAUTEURS DE HOULE -DEFERLEMENT 3 (RO) EXPOSANT FONCTION DE PONDERATION -DEFERLEMENT 3 (RO) CHOIX FREQUENCE CARACTERISTIQUE -DEFERLEMENT 3 (RO) CONSTANTE ALPHA -DEFERLEMENT 3 (RO) CONSTANTE GAMMA""", - ang = """Coefficient GAMMA2 of the Roelvink model (1993). -\\ - \begin{CommentBlock}{Related keywords} -DEPTH-INDUCED BREAKING DISSIPATION\\ -NUMBER OF BREAKING TIME STEPS\\ -DEPTH-INDUCED BREAKING 3 (RO) WAVE HEIGHT DISTRIBUTION\\ -DEPTH-INDUCED BREAKING 3 (RO) EXPONENT WEIGHTING FUNCTION\\ -DEPTH-INDUCED BREAKING 3 (RO) CHARACTERISTIC FREQUENCY\\ -DEPTH-INDUCED BREAKING 3 (RO) COEFFICIENT ALPHA\\ -DEPTH-INDUCED BREAKING 3 (RO) COEFFICIENT GAMMA -\end{CommentBlock}""", - ), - ), -# ----------------------------------- - b_DEPTH_INDUCED_BREAKING_DISSIPATIONJ = BLOC(condition="DEPTH_INDUCED_BREAKING_DISSIPATION == 'Dissipation in accordance with Izumiya et Horikawa (1984)'", -# ----------------------------------- -# ----------------------------------- - DEPTH_INDUCED_BREAKING_4__IH__CHARACTERISTIC_FREQUENCY = SIMP(statut ='o', -# ----------------------------------- - typ = 'TXM', - into = ["Frequency Fmoy","Frequency F01","Frequency F02","Frequency Fpic","Frequency Fread ordre 5","Frequency Fread ordre 8"], - defaut = ["Frequency Fread ordre 5"], - fr = """Choix de la frequence caracteristique du spectre de houle -1 : Frequence Fmoy -2 : Frequence F01 (definie par les moments d ordre 0 et 1 du spectre) -3 : Frequence F02 (definie par les moments d ordre 0 et 2 du spectre) -4 : Frequence Fpic (frequence d echantillonage correspondant au max) -5 : Frequence Fread ordre 5 (frequence de pic methode Read ordre 5) -6 : Frequence Fread ordre 8 (frequence de pic methode Read ordre 8) -**Mots-cles associes :** -DISSIPATION PAR DEFERLEMENT -DEFERLEMENT 4 (IH) CONSTANTE BETA0 -DEFERLEMENT 4 (IH) CONSTANTE M2STAR""", - ang = """Selection of the characteristic frequency of the wave spectrum -\begin{itemize} -\item 1 : Frequency Fmoy -\item 2 : Frequency F01 (defined by the moments of order 0 and 1 of the -spectrum) -\item 3 : Frequency F02 (defined by the moments of order 0 and 2 of the -spectrum) -\item 4 : Frequency Fpic (sampling frequency corresponding to the max) -\item 5 : Frequency Fread ordre 5 (peak frequency, 5th order Read -method) -\item 6 : Frequency Fread ordre 8 (peak frequency, 8th order Read -method) -\end{itemize} - \begin{CommentBlock}{Related keywords} -DEPTH-INDUCED BREAKING DISSIPATION\\ -DEPTH-INDUCED BREAKING 4 (IH) COEFFICIENT BETA0\\ -DEPTH-INDUCED BREAKING 4 (IH) COEFFICIENT M2STAR -\end{CommentBlock}""", - ), -# ----------------------------------- - DEPTH_INDUCED_BREAKING_4__IH__COEFFICIENT_BETA0 = SIMP(statut ='o', -# ----------------------------------- - typ = 'R', - defaut = 1.8, - fr = """Constante BETA0 du modele de deferlement de Izumiya et -Horikawa (1984). -**Mots-cles associes :** -DISSIPATION PAR DEFERLEMENT -NOMBRE DE SOUS-PAS DE TEMPS POUR LE DEFERLEMENT -DEFERLEMENT 4 (IH) CHOIX FREQUENCE CARACTERISTIQUE -DEFERLEMENT 4 (IH) CONSTANTE M2STAR""", - ang = """coefficient BETA0 of the Izumiya and Horikawa -model (1984). -\\ - \begin{CommentBlock}{Related keywords} -DEPTH-INDUCED BREAKING DISSIPATION\\ -NUMBER OF BREAKING TIME STEPS\\ -DEPTH-INDUCED BREAKING 4 (IH) CHARACTERISTIC FREQUENCY\\ -DEPTH-INDUCED BREAKING 4 (IH) COEFFICIENT M2STAR -\end{CommentBlock}""", - ), -# ----------------------------------- - DEPTH_INDUCED_BREAKING_4__IH__COEFFICIENT_M2STAR = SIMP(statut ='o', -# ----------------------------------- - typ = 'R', - defaut = 0.009, - fr = """Constante M2STAR du modele de deferlement de Izumiya et -Horikawa (1984). -**Mots-cles associes :** -DISSIPATION PAR DEFERLEMENT -NOMBRE DE SOUS-PAS DE TEMPS POUR LE DEFERLEMENT -DEFERLEMENT 4 (IH) CHOIX FREQUENCE CARACTERISTIQUE -DEFERLEMENT 4 (IH) CONSTANTE BETA0""", - ang = """coefficient M2STAR of the Izumiya and Horikawa -model (1984). -\\ - \begin{CommentBlock}{Related keywords} -DEPTH-INDUCED BREAKING DISSIPATION\\ -NUMBER OF BREAKING TIME STEPS\\ -DEPTH-INDUCED BREAKING 4 (IH) CHARACTERISTIC FREQUENCY\\ -DEPTH-INDUCED BREAKING 4 (IH) COEFFICIENT BETA0 -\end{CommentBlock}""", - ), - ), -# ----------------------------------- - NUMBER_OF_BREAKING_TIME_STEPS = SIMP(statut ='o', -# ----------------------------------- - typ = 'I', - defaut = 1, - fr = """Nombre de sous-pas de temps pour la prise en compte de la -dissipation d energie par deferlement. Ces sous-pas de temps sont -en progression geometrique. -**Mots-cles associes :** -DISSIPATION PAR DEFERLEMENT -COEFFICIENT POUR LES SOUS-PAS DE TEMPS POUR LE DEFERLEMENT""", - ang = """Number of time steps for the breaking source term. -These time steps are in a geometric progression -\\ - \begin{CommentBlock}{Related keywords} -DEPTH-INDUCED BREAKING DISSIPATION\\ -COEFFICIENT FOR THE BREAKING TIME STEPS -\end{CommentBlock}""", - ), -# ----------------------------------- - MAXIMUM_VALUE_OF_THE_RATIO_HM0_ON_D = SIMP(statut ='o', -# ----------------------------------- - typ = 'R', - defaut = 1., - fr = """En debut de prise en compte des termes sources, la hauteur -de houle est ecretee de facon a satisfaire le critere specifie. -**Mots-cles associes :** -DISSIPATION PAR DEFERLEMENT""", - ang = """At the beginning of the integration of the source terms, -the wave height is lopped in order to satisfy the specified -criterium. -\\ - \begin{CommentBlock}{Related keywords} -DEPTH-INDUCED BREAKING DISSIPATION -\end{CommentBlock}""", - ), -# ----------------------------------- - COEFFICIENT_OF_THE_TIME_SUB_INCREMENTS_FOR_BREAKING = SIMP(statut ='f', -# ----------------------------------- - typ = 'R', - defaut = 1.45, - fr = """Raison de la suite geometrique des sous-pas de temps pour -le deferlement. -**Mots-cles associes :** -DISSIPATION PAR DEFERLEMENT -NOMBRE DE SOUS-PAS DE TEMPS POUR LE DEFERLEMENT""", - ang = """Geometrical ratio of the time sub-increments for the -depth-induced breaking -\\ - \begin{CommentBlock}{Related keywords} -DEPTH-INDUCED BREAKING DISSIPATION\\ -NUMBER OF BREAKING TIME STEPS -\end{CommentBlock}""", - ), - ), -# ----------------------------------- - LIMITER = FACT(statut='o', -# ----------------------------------- -# ----------------------------------- - WAVE_GROWTH_LIMITER = SIMP(statut ='o', -# ----------------------------------- - typ = 'TXM', - into = ["no wave growth limiter","WAM 4 original limiter","Hersbach et Janssen (1999) limiter","Laugel-BAJ limiter"], - defaut = ["WAM 4 original limiter"], - fr = """Choix du type de limiteur de croissance. -Si la valeur est 0, pas de limiteur. -Si la valeur est 1, limiteur type WAM 4 original. -Si la valeur est 2, limiteur de Hersbach et Janssen (1999). -Si la valeur est 3, limiteur de BAJ Laugel. -**Mots-cles associes :** -PRISE EN COMPTE DES TERMES SOURCES""", - ang = """Choice of the wave growth limiter. -\begin{itemize} -\item If LIMIT=0, no wave growth limiter. -\item If LIMIT=1, WAM 4 original limiter. -\item If LIMIT=2, Hersbach et Janssen (1999) limiter. -\item If LIMIT=3, Laugel BAJ limiter. -\end{itemize} - \begin{CommentBlock}{Related keywords} -CONSIDERATION OF SOURCE TERMS -\end{CommentBlock}""", - ), - ), -# ----------------------------------- - TRIAD_TRANSFERS = FACT(statut='o', -# ----------------------------------- -# ----------------------------------- - TRIAD_INTERACTIONS = SIMP(statut ='o', -# ----------------------------------- - typ = 'TXM', - into = ["no triad interactions","LTA model (Eldeberky, 1996)","SPB model (Becq, 1998)"], - defaut = ["no triad interactions"], - fr = """Choix du type de modelisation du terme de transfert non -lineaire entre triplets de frequences. Si sa valeur est 0, on ne -prend pas en compte les transferts non lineaires entre triplets -de frequences, si sa valeur est 1, ils sont integres selon le -modele LTA, si sa valeur est 2, ils sont integres selon le -modele SPB. -**Mots-cles associes :** -TRIADS 1 (LTA) CONSTANTE ALPHA -TRIADS 1 (LTA) CONSTANTE RFMLTA -TRIADS 2 (SPB) CONSTANTE K -TRIADS 2 (SPB) BORNE DIRECTIONNELLE INFERIEURE -TRIADS 2 (SPB) BORNE DIRECTIONNELLE SUPERIEURE""", - ang = """Selection of the triad interaction model: -\begin{itemize} -\item 0 : no triad interactions -\item 1 : LTA model (Eldeberky, 1996) -\item 2 : SPB model (Becq, 1998) -\end{itemize} - \begin{CommentBlock}{Related keywords} -TRIADS 1 (LTA) COEFFICIENT ALPHA\\ -TRIADS 1 (LTA) COEFFICIENT RFMLTA\\ -TRIADS 2 (SPB) COEFFICIENT K\\ -TRIADS 2 (SPB) LOWER DIRECTIONAL BOUNDARY\\ -TRIADS 2 (SPB) UPPER DIRECTIONAL BOUNDARY\\ -\end{CommentBlock}""", - ), -# ----------------------------------- - b_TRIAD_INTERACTIONSG = BLOC(condition="TRIAD_INTERACTIONS == 'LTA model (Eldeberky, 1996)'", -# ----------------------------------- -# ----------------------------------- - TRIADS_1__LTA__COEFFICIENT_ALPHA = SIMP(statut ='o', -# ----------------------------------- - typ = 'R', - defaut = 0.5, - fr = """Constante alpha du modele LTA propose par Eldeberky (1996). -Si alpha = 0, les transferts d energie entre frequences seront nuls. -L intensite de ces transferts augmente avec la valeur de alpha. -**Mots-cles associes :** -TRANSFERTS ENTRE TRIPLETS DE FREQUENCES -TRIADS 1 (LTA) CONSTANTE RFMLTA""", - ang = """Coefficient alpha of the LTA model proposed by Eldeberky(1996). -If alpha=0, no energy transfers. The energy transfers increase -with alpha. -\\ - \begin{CommentBlock}{Related keywords} -TRIAD INTERACTIONS\\ -TRIADS 1 (LTA) COEFFICIENT RFMLTA -\end{CommentBlock}""", - ), -# ----------------------------------- - TRIADS_1__LTA__COEFFICIENT_RFMLTA = SIMP(statut ='o', -# ----------------------------------- - typ = 'R', - defaut = 2.5, - fr = """RFMLTA determine la frequence maximale vers laquelle les -transferts d energie peuvent avoir lieu. La frequence maximale est -calculee comme le produit entre la constante RFMLTA et la frequence -de pic du spectre. -**Mots-cles associes :** -TRANSFERTS ENTRE TRIPLETS DE FREQUENCES -TRIADS 1 (LTA) CONSTANTE ALPHA""", - ang = """RFMLTA determines the upper frequency on which the energy -transfers may occur. The maximal frequency is calculated as the -product of the constant RFMLTA by the peak frequency of the spectrum. -\\ - \begin{CommentBlock}{Related keywords} -TRIAD INTERACTIONS\\ -TRIADS 1 (LTA) COEFFICIENT ALPHA -\end{CommentBlock}""", - ), - ), -# ----------------------------------- - b_TRIAD_INTERACTIONSH = BLOC(condition="TRIAD_INTERACTIONS == 'SPB model (Becq, 1998)'", -# ----------------------------------- -# ----------------------------------- - TRIADS_2__SPB__COEFFICIENT_K = SIMP(statut ='o', -# ----------------------------------- - typ = 'R', - defaut = 0.34, - fr = """Parametre d ajustement du modele SPB -**Mots-cles associes :** -TRANSFERTS ENTRE TRIPLETS DE FREQUENCES -TRIADS 2 (SPB) BORNE DIRECTIONNELLE INFERIEURE -TRIADS 2 (SPB) BORNE DIRECTIONNELLE SUPERIEURE""", - ang = """coefficient K of the SPB model -\\ - \begin{CommentBlock}{Related keywords} -TRIAD INTERACTIONS\\ -TRIADS 2 (SPB) LOWER DIRECTIONAL BOUNDARY\\ -TRIADS 2 (SPB) UPPER DIRECTIONAL BOUNDARY -\end{CommentBlock}""", - ), -# ----------------------------------- - TRIADS_2__SPB__LOWER_DIRECTIONAL_BOUNDARY = SIMP(statut ='o', -# ----------------------------------- - typ = 'R', - defaut = 0., - fr = """Borne directionnelle inferieure du modele SPB -**Mots-cles associes :** -TRANSFERTS ENTRE TRIPLETS DE FREQUENCES -TRIADS 2 (SPB) CONSTANTE K -TRIADS 2 (SPB) BORNE DIRECTIONNELLE SUPERIEURE""", - ang = """Lower directional boundary of the SPB model -\\ - \begin{CommentBlock}{Related keywords} -TRIAD INTERACTIONS\\ -TRIADS 2 (SPB) COEFFICIENT K\\ -TRIADS 2 (SPB) UPPER DIRECTIONAL BOUNDARY -\end{CommentBlock}""", - ), -# ----------------------------------- - TRIADS_2__SPB__UPPER_DIRECTIONAL_BOUNDARY = SIMP(statut ='o', -# ----------------------------------- - typ = 'R', - defaut = 360., - fr = """Borne directionnelle superieure du modele SPB -**Mots-cles associes :** -TRANSFERTS ENTRE TRIPLETS DE FREQUENCES -TRIADS 2 (SPB) CONSTANTE K -TRIADS 2 (SPB) BORNE DIRECTIONNELLE INFERIEURE""", - ang = """Upper directional boundary of the SPB model -\\ - \begin{CommentBlock}{Related keywords} -TRIAD INTERACTIONS\\ -TRIADS 2 (SPB) COEFFICIENT K\\ -TRIADS 2 (SPB) LOWER DIRECTIONAL BOUNDARY -\end{CommentBlock}""", - ), - ), - ), -# ----------------------------------- - VEGETATION = FACT(statut='o', -# ----------------------------------- -# ----------------------------------- - VEGETATION_TAKEN_INTO_ACCOUNT = SIMP(statut ='o', -# ----------------------------------- - typ = bool, - defaut = False, - fr = """Si oui, on appelle le sous-programme QVEG, dans lequel des -donnees sur la vegetation doivent etre renseignees""", - ang = """If YES, subroutine QVEG will be called, it contains data -on vegetation that are case-specific and must thus be modified""", - ), - ), -) -# ----------------------------------------------------------------------- -INITIAL_CONDITIONS = PROC(nom= "INITIAL_CONDITIONS",op = None, -# ----------------------------------------------------------------------- - UIinfo = {"groupes": ("CACHE")}, -# ----------------------------------- - TYPE_OF_INITIAL_DIRECTIONAL_SPECTRUM = SIMP(statut ='o', -# ----------------------------------- - typ = 'TXM', - into = ["non-existent spectrum","JONSWAP spectrum 1","JONSWAP spectrum 2","JONSWAP spectrum 3","JONSWAP spectrum 4","JONSWAP spectrum 5","JONSWAP spectrum 6","TMA spectrum"], - defaut = ["non-existent spectrum"], - fr = """Si ce mot-cle est pris egal a 0, on specifie un spectre -initial nul. Si il est pris egal entre 1 et 6 -un spectre de type JONSWAP est specifie du champ de vent initial -et ou des valeurs des autres mots cles. Si il est pris egal a 7 -un spectre de type TMA parametre est specifie. -**Mots-cles associes :** -HAUTEUR SIGNIFICATIVE INITIALE -FREQUENCE DE PIC INITIALE -FACTEUR DE PIC INITIAL -VALEUR INITIALE DE SIGMA-A POUR SPECTRE -VALEUR INITIALE DE SIGMA-B POUR SPECTRE -CONSTANTE DE PHILLIPS INITIALE -VALEUR MOYENNE DU FETCH INITIAL -FREQUENCE DE PIC MAXIMALE -DIRECTION PRINCIPALE 1 INITIALE -ETALEMENT DIRECTIONNEL 1 INITIAL -DIRECTION PRINCIPALE 2 INITIALE -ETALEMENT DIRECTIONNEL 2 INITIAL -FACTEUR DE PONDERATION POUR FRA INITIALE""", - ang = """If this keyword is set to 0, a non-existent spectrum is speci -fied at the initial time step. If it ranges from 1 to 7, a -JONSWAP (or TMA)-typed spectrum is specified as a -function of the initial wind field and/or of the values of the -following keywords -\\ - \begin{CommentBlock}{Related keywords} -INITIAL SIGNIFICANT HEIGHT\\ -INITIAL PEAK FREQUENCY\\ -INITIAL PEAK FACTOR\\ -INITIAL VALUE OF SIGMA-A FOR SPECTRUM\\ -INITIAL VALUE OF SIGMA-B FOR SPECTRUM\\ -INITIAL PHILLIPS CONSTANT\\ -INITIAL MEAN FETCH VALUE\\ -INITIAL MAXIMUM PEAK FREQUENCY\\ -INITIAL MAIN DIRECTION 1\\ -INITIAL DIRECTIONAL SPREAD 1\\ -INITIAL MAIN DIRECTION 2\\ -INITIAL DIRECTIONAL SPREAD 2\\ -INITIAL WEIGHTING FACTOR FOR ADF -\end{CommentBlock}""", - ), -# ----------------------------------- - INITIAL_ANGULAR_DISTRIBUTION_FUNCTION = SIMP(statut ='f', -# ----------------------------------- - typ = 'TXM', - into = ["$cos{^2s}(T-T0)$, T in [T0-pi/2,T0+pi/2]","$exp(-0.5((T-T0)/s)^2)$, T in [T0-pi/2,T0+pi/2]","$cos{^2s}((T-T0)/2)$ (de type Mitsuyasu)"], - defaut = ["$cos{^2s}(T-T0)$, T in [T0-pi/2,T0+pi/2]"], - fr = """Fait partie de l ensemble des constantes utilisees dans -l initialisation du spectre directionnel. Permet le calcul de -la fonction de repartition angulaire bimodale pour une serie de -directions -1 : modele en $cos{^2s}(T-T0)$ ; T dans [T0-pi/2;T0+pi/2] -2 : modele en $exp(-0.5((T-T0)/s)^2)$ ; T dans [T0-pi/2;T0+pi/2] -3 : modele en $cos{^2s}((T-T0)/2)$ (de type Mitsuyasu) -**Mots-cles associes :** -TYPE DE SPECTRE DIRECTIONNEL INITIAL""", - ang = """Is part of the set of constants used for computing the -initial directional spectrum. Allow the computation of the -angular distribution function -\begin{itemize} -\item 1 : $cos^{2s}(T-T0)$ ; with T in [T0-pi/2;T0+pi/2] -\item 2 : $exp(-0.5((T-T0)/s)^2)$ ; with T in [T0-pi/2;T0+pi/2] -\item 3 : $cos^{2s}((T-T0)/2)$ (of type Mitsuyasu) -\end{itemize} -where $s$ is the boundary directionnal spread (\telkey{SPRED1} -or \telkey{SPRED2}) -\\ - \begin{CommentBlock}{Related keywords} -TYPE OF INITIAL DIRECTIONAL SPECTRUM -\end{CommentBlock}""", - ), -# ----------------------------------- - INITIAL_SIGNIFICANT_WAVE_HEIGHT = SIMP(statut ='o', -# ----------------------------------- - typ = 'R', - defaut = 1., - fr = """Fait partie de l ensemble des constantes utilisees dans -l initialisation du spectre directionnel en fonction du champ -de vent initial. -**Mots-cles associes :** -TYPE DE SPECTRE DIRECTIONNEL INITIAL""", - ang = """Is part of the set of constants used for computing the -boundary directional spectrum as a function of the wind field. -\\ - \begin{CommentBlock}{Related keywords} -TYPE OF INITIAL DIRECTIONAL SPECTRUM -\end{CommentBlock}""", - ), -# ----------------------------------- - INITIAL_PEAK_FREQUENCY = SIMP(statut ='o', -# ----------------------------------- - typ = 'R', - defaut = 0.067, - fr = """Fait partie de l ensemble des constantes utilisees dans -l initialisation du spectre directionnel en fonction du champ -de vent initial. -**Mots-cles associes :** -INITIALISATION DU SPECTRE DIRECTIONNEL""", - ang = """Is part of the set of constants used for computing the -boundary directional spectrum as a function of the wind field. -\\ - \begin{CommentBlock}{Related keywords} -TYPE OF INITIAL DIRECTIONAL SPECTRUM -\end{CommentBlock}""", - ), -# ----------------------------------- - INITIAL_PEAK_FACTOR = SIMP(statut ='o', -# ----------------------------------- - typ = 'R', - defaut = 3.3, - fr = """Fait partie de l ensemble des constantes utilisees dans -l initialisation du spectre directionnel en fonction du champ -de vent initial. -**Mots-cles associes :** -INITIALISATION DU SPECTRE DIRECTIONNEL""", - ang = """Is part of the set of constants used for computing the -initial directional spectrum as a function of the wind field. -\\ - \begin{CommentBlock}{Related keywords} -TYPE OF INITIAL DIRECTIONAL SPECTRUM -\end{CommentBlock}""", - ), -# ----------------------------------- - INITIAL_VALUE_OF_SIGMA_A_FOR_SPECTRUM = SIMP(statut ='f', -# ----------------------------------- - typ = 'R', - defaut = 0.07, - fr = """Fait partie de l ensemble des constantes utilisees dans -l initialisation du spectre directionnel en fonction du champ -de vent initial. -**Mots-cles associes :** -INITIALISATION DU SPECTRE DIRECTIONNEL""", - ang = """Is part of the set of constants used for computing the -initial directional spectrum as a function of the wind field. -\\ - \begin{CommentBlock}{Related keywords} -TYPE OF INITIAL DIRECTIONAL SPECTRUM -\end{CommentBlock}""", - ), -# ----------------------------------- - INITIAL_VALUE_OF_SIGMA_B_FOR_SPECTRUM = SIMP(statut ='f', -# ----------------------------------- - typ = 'R', - defaut = 0.09, - fr = """Fait partie de l ensemble des constantes utilisees dans -l initialisation du spectre directionnel en fonction du champ -de vent initial. -**Mots-cles associes :** -INITIALISATION DU SPECTRE DIRECTIONNEL""", - ang = """Is part of the set of constants used for computing the -initial directional spectrum as a function of the wind field. -\\ - \begin{CommentBlock}{Related keywords} -TYPE OF INITIAL DIRECTIONAL SPECTRUM -\end{CommentBlock}""", - ), -# ----------------------------------- - INITIAL_PHILLIPS_CONSTANT = SIMP(statut ='f', -# ----------------------------------- - typ = 'R', - defaut = 0.018, - fr = """Fait partie de l ensemble des constantes utilisees dans -l initialisation du spectre directionnel en fonction du champ -de vent initial. -**Mots-cles associes :** -INITIALISATION DU SPECTRE DIRECTIONNEL""", - ang = """Is part of the set of constants used for computing the -initiale directional spectrum as a function of the wind field. -\\ - \begin{CommentBlock}{Related keywords} -TYPE OF INITIAL DIRECTIONAL SPECTRUM -\end{CommentBlock}""", - ), -# ----------------------------------- - INITIAL_MEAN_FETCH_VALUE = SIMP(statut ='o', -# ----------------------------------- - typ = 'R', - defaut = 30000., - fr = """Fait partie de l ensemble des constantes utilisees dans -l initialisation du spectre directionnel en fonction du champ -de vent initial. -**Mots-cles associes :** -INITIALISATION DU SPECTRE DIRECTIONNEL""", - ang = """Is part of the set of constants used for computing the -initial directional spectrum as a function of the wind field. -\\ - \begin{CommentBlock}{Related keywords} -TYPE OF INITIAL DIRECTIONAL SPECTRUM -\end{CommentBlock}""", - ), -# ----------------------------------- - INITIAL_MAXIMUM_PEAK_FREQUENCY = SIMP(statut ='o', -# ----------------------------------- - typ = 'R', - defaut = 0.2, - fr = """Fait partie de l ensemble des constantes utilisees dans -l initialisation du spectre directionnel en fonction du champ -de vent initial. -**Mots-cles associes :** -INITIALISATION DU SPECTRE DIRECTIONNEL""", - ang = """Is part of the set of constants used for computing the -initial directional spectrum as a function of the wind field. -\\ - \begin{CommentBlock}{Related keywords} -TYPE OF INITIAL DIRECTIONAL SPECTRUM -\end{CommentBlock}""", - ), -# ----------------------------------- - INITIAL_MAIN_DIRECTION_1 = SIMP(statut ='o', -# ----------------------------------- - typ = 'R', - defaut = 0., - fr = """Fait partie de l ensemble des constantes utilisees dans -l initialisation du spectre directionnel en fonction du champ -de vent initial. Exprimee en degres -**Mots-cles associes :** -INITIALISATION DU SPECTRE DIRECTIONNEL""", - ang = """Is part of the set of constants used for computing the -initial directional spectrum as a function of the wind field. -\\ - \begin{CommentBlock}{Related keywords} -TYPE OF INITIAL DIRECTIONAL SPECTRUM -\end{CommentBlock}""", - ), -# ----------------------------------- - INITIAL_DIRECTIONAL_SPREAD_1 = SIMP(statut ='o', -# ----------------------------------- - typ = 'R', - defaut = 2., - fr = """Fait partie de l ensemble des constantes utilisees dans -l initialisation du spectre directionnel en fonction du champ -de vent initial. -**Mots-cles associes :** -INITIALISATION DU SPECTRE DIRECTIONNEL""", - ang = """Is part of the set of constants used for computing the -initial directional spectrum as a function of the wind field. -\\ - \begin{CommentBlock}{Related keywords} -TYPE OF INITIAL DIRECTIONAL SPECTRUM -\end{CommentBlock}""", - ), -# ----------------------------------- - INITIAL_MAIN_DIRECTION_2 = SIMP(statut ='o', -# ----------------------------------- - typ = 'R', - defaut = 0., - fr = """Fait partie de l ensemble des constantes utilisees dans -l initialisation du spectre directionnel en fonction du champ -de vent initial. Exprimee en degres. -**Mots-cles associes :** -INITIALISATION DU SPECTRE DIRECTIONNEL""", - ang = """Is part of the set of constants used for computing the -initial directional spectrum as a function of the wind field. -\\ - \begin{CommentBlock}{Related keywords} -TYPE OF INITIAL DIRECTIONAL SPECTRUM -\end{CommentBlock}""", - ), -# ----------------------------------- - INITIAL_DIRECTIONAL_SPREAD_2 = SIMP(statut ='o', -# ----------------------------------- - typ = 'R', - defaut = 2., - fr = """Fait partie de l ensemble des constantes utilisees dans -l initialisation du spectre directionnel en fonction du champ -de vent initial. -**Mots-cles associes :** -INITIALISATION DU SPECTRE DIRECTIONNEL""", - ang = """Is part of the set of constants used for computing the -initial directional spectrum as a function of the wind field. -\\ - \begin{CommentBlock}{Related keywords} -TYPE OF INITIAL DIRECTIONAL SPECTRUM -\end{CommentBlock}""", - ), -# ----------------------------------- - INITIAL_WEIGHTING_FACTOR_FOR_ADF = SIMP(statut ='o', -# ----------------------------------- - typ = 'R', - defaut = 1., - fr = """Fait partie de l ensemble des constantes utilisees dans -l initialisation du spectre directionnel en fonction du champ -de vent initial. -**Mots-cles associes :** -INITIALISATION DU SPECTRE DIRECTIONNEL""", - ang = """Is part of the set of constants used for computing the -initial directional spectrum as a function of the wind field. -\\ - \begin{CommentBlock}{Related keywords} -TYPE OF INITIAL DIRECTIONAL SPECTRUM -\end{CommentBlock}""", - ), -# ----------------------------------- - INITIAL_STILL_WATER_LEVEL = SIMP(statut ='o', -# ----------------------------------- - typ = 'R', - defaut = 0., - fr = """Parametre permettant de calculer la profondeur -initiale du plan d eau (DEPTH) a partir de la cote du -fond (ZF) : DEPTH=ZREPOS-ZF.""", - ang = """Parameter used in the computation of the initial -water DEPTH : DEPTH=ZREPOS-ZF.""", - ), -) -# ----------------------------------------------------------------------- -INTERNAL = PROC(nom= "INTERNAL",op = None, -# ----------------------------------------------------------------------- - UIinfo = {"groupes": ("CACHE")}, -# ----------------------------------- - VECTOR_LENGTH = SIMP(statut ='o', -# ----------------------------------- - typ = 'I', - defaut = [1], - fr = """Indique la longueur du vecteur de la machine vectorielle -utilisee.""", - ang = """Indicates the vector length of the vectorial machine -being used.""", - ), -# ----------------------------------- - STEERING_FILE = SIMP(statut ='f', -# ----------------------------------- - typ = ('Fichier','All Files (*)'), - defaut = '', - fr = """Nom du fichier contenant les parametres du calcul a realiser.""", - ang = """Name of the file containing the parameters of the computation -to be made.""", - ), -# ----------------------------------- - RELEASE = SIMP(statut ='o', -# ----------------------------------- - typ = 'TXM', - defaut = 'TRUNK', - fr = """Numero de version""", - ang = """Release number""", - ), -# ----------------------------------- - LIST_OF_FILES = SIMP(statut ='f', -# ----------------------------------- - typ = 'TXM', min=21, max=21, - defaut = 'STEERING FILE;DICTIONARY;FORTRAN FILE;GEOMETRY FILE;BOUNDARY CONDITIONS FILE;BOTTOM TOPOGRAPHY FILE;2D RESULTS FILE;PUNCTUAL RESULTS FILE;PREVIOUS COMPUTATION FILE;GLOBAL RESULT FILE;BINARY CURRENTS FILE;FORMATTED CURRENTS FILE;BINARY FILE 1;FORMATTED FILE 1;BINARY WINDS FILE;FORMATTED WINDS FILE;PARALLELISM FILE;REFERENCE FILE;BINARY TIDAL WATER LEVEL FILE;FORMATTED TIDAL WATER LEVEL FILE;1D SPECTRA RESULTS FILE', - fr = """Nom des fichiers exploites par le code""", - ang = """Names of the files used by the software""", - ), -# ----------------------------------- - DICTIONARY = SIMP(statut ='f', -# ----------------------------------- - typ = ('Fichier','All Files (*)'), - defaut = 'tomawac.dico', - fr = """Dictionnaire des mots cles.""", - ang = """Key word dictionary.""", - ), -# ----------------------------------- - BOUNDARY_CONDITION_BEFORE_TIME_STEP = SIMP(statut ='f', -# ----------------------------------- - typ = bool, - defaut = [False], - fr = """Indique si on prend tient compte de la condition à la limite -avant ou apres le pas de temps""", - ang = """Indicates whether boundary condition is taken into account -before or after time step""", - ), -# ----------------------------------- - ECRET_FOR_SMALL_HEIGHT = SIMP(statut ='f', -# ----------------------------------- - typ = bool, - defaut = [True ], - fr = """Indique si on ecrete la hauteur de vague pour les -hauteurs d eau quasi nulle""", - ang = """Indicates whether wave height is null for very -small heigth of water""", - ), -) -# ----------------------------------------------------------------------- -BOUNDARY_CONDITIONS = PROC(nom= "BOUNDARY_CONDITIONS",op = None, -# ----------------------------------------------------------------------- - UIinfo = {"groupes": ("CACHE")}, -# ----------------------------------- - TYPE_OF_BOUNDARY_DIRECTIONAL_SPECTRUM = SIMP(statut ='o', -# ----------------------------------- - typ = 'TXM', - into = ["non-existent spectrum","JONSWAP spectrum 1","JONSWAP spectrum 2","JONSWAP spectrum 3","JONSWAP spectrum 4","JONSWAP spectrum 5","JONSWAP spectrum 6","TMA spectrum"], - defaut = ["non-existent spectrum"], - fr = """Si ce mot-cle est pris egal a 0, on specifie un spectre -nul aux limites. Si il est pris egal entre 1 et 6 -un spectre de type JONSWAP est specifie en tout point des limites -d entree en fonction du champ de vent aux limites et ou des -valeurs des autres mots cles. Si il est pris egal a 7 un spectre de -type TMA parametre est specifie aux limites. -**Mots-cles associes :** -HAUTEUR SIGNIFICATIVE AUX LIMITES -FREQUENCE DE PIC AUX LIMITES -FACTEUR DE PIC AUX LIMITES -VALEUR AUX LIMITES DE SIGMA-A POUR SPECTRE -VALEUR AUX LIMITES DE SIGMA-B POUR SPECTRE -CONSTANTE DE PHILLIPS AUX LIMITES -VALEUR MOYENNE DU FETCH AUX LIMITES -FREQUENCE DE PIC MAXIMALE -DIRECTION PRINCIPALE 1 AUX LIMITES -ETALEMENT DIRECTIONNEL 1 AUX LIMITES -DIRECTION PRINCIPALE 2 AUX LIMITES -ETALEMENT DIRECTIONNEL 2 AUX LIMITES -FACTEUR DE PONDERATION POUR FRA AUX LIMITES""", - ang = """If this keyword is set to 0, a non-existent spectrum is speci -fied at the inlet boundaries of the domain. If it ranges from 1 to 7, a -JONSWAP (or TMA) -typed spectrum is specified at these very points as a -function of the initial wind field and/or of the values of the following -keywords -\\ - \begin{CommentBlock}{Related keywords} -BOUNDARY SIGNIFICANT HEIGHT\\ -BOUNDARY PEAK FREQUENCY\\ -BOUNDARY PEAK FACTOR\\ -BOUNDARY VALUE OF SIGMA-A FOR SPECTRUM\\ -BOUNDARY VALUE OF SIGMA-B FOR SPECTRUM\\ -BOUNDARY PHILLIPS CONSTANT\\ -BOUNDARY MEAN FETCH VALUE\\ -BOUNDARY MAXIMUM PEAK FREQUENCY\\ -BOUNDARY MAIN DIRECTION 1\\ -BOUNDARY DIRECTIONAL SPREAD 1\\ -BOUNDARY MAIN DIRECTION 2\\ -BOUNDARY DIRECTIONAL SPREAD 2\\ -BOUNDARY WEIGHTING FACTOR FOR ADF\\ -\end{CommentBlock}""", - ), -# ----------------------------------- - BOUNDARY_ANGULAR_DISTRIBUTION_FUNCTION = SIMP(statut ='f', -# ----------------------------------- - typ = 'TXM', - into = ["$cos{^2s}(T-T0)$, T in [T0-pi/2,T0+pi/2]","$exp(-0.5((T-T0)/s)^2)$, T in [T0-pi/2,T0+pi/2]","$cos{^2s}((T-T0)/2)$ (de type Mitsuyasu)"], - defaut = ["$cos{^2s}(T-T0)$, T in [T0-pi/2,T0+pi/2]"], - fr = """Fait partie de l ensemble des constantes utilisees dans -le calcul du spectre directionnel aux limites. Permet le calcul de -la fonction de repartition angulaire bimodale pour une serie de -directions -1 : modele en $cos{^2s}(T-T0)$ ; T dans [T0-pi/2;T0+pi/2] -2 : modele en $exp(-0.5((T-T0)/s)^2)$ ; T dans [T0-pi/2;T0+pi/2] -3 : modele en $cos{^2s}((T-T0)/2)$ (de type Mitsuyasu) -**Mots-cles associes :** -TYPE DE SPECTRE DIRECTIONNEL AUX LIMITES""", - ang = """Is part of the set of constants used for computing the -boundary directional spectrum. Allow the computation of the -angular distribution function -\begin{itemize} -\item 1 : $cos^{2s}(T-T0)$ ; with T in [T0-pi/2;T0+pi/2] -\item 2 : $exp(-0.5((T-T0)/s)^2)$ ; with T in [T0-pi/2;T0+pi/2] -\item 3 : $cos^{2s}((T-T0)/2)$ (of type Mitsuyasu) -\end{itemize} -where $s$ is the boundary directionnal spread (\telkey{SPRE1L} -or \telkey{SPRE2L}) -\\ - \begin{CommentBlock}{Related keywords} -TYPE OF BOUNDARY DIRECTIONAL SPECTRUM -\end{CommentBlock}""", - ), -# ----------------------------------- - BOUNDARY_SIGNIFICANT_WAVE_HEIGHT = SIMP(statut ='o', -# ----------------------------------- - typ = 'R', - defaut = 1., - fr = """Fait partie de l ensemble des constantes utilisees dans -le calcul du spectre directionnel aux limites en fonction du champ -de vent. -**Mots-cles associes :** -TYPE DE SPECTRE DIRECTIONNEL AUX LIMITES""", - ang = """Is part of the set of constants used for computing the -boundary directional spectrum as a function of the wind field. -\\ - \begin{CommentBlock}{Related keywords} -TYPE OF BOUNDARY DIRECTIONAL SPECTRUM -\end{CommentBlock}""", - ), -# ----------------------------------- - BOUNDARY_PEAK_FREQUENCY = SIMP(statut ='o', -# ----------------------------------- - typ = 'R', - defaut = 0.067, - fr = """Fait partie de l ensemble des constantes utilisees dans -le calcul du spectre directionnel aux limites en fonction du champ -de vent . -**Mots-cles associes :** -TYPE DE SPECTRE DIRECTIONNEL AUX LIMITES""", - ang = """Is part of the set of constants used for computing the -boundary directional spectrum as a function of the wind field. -\\ - \begin{CommentBlock}{Related keywords} -TYPE OF BOUNDARY DIRECTIONAL SPECTRUM -\end{CommentBlock}""", - ), -# ----------------------------------- - BOUNDARY_SPECTRUM_VALUE_OF_SIGMA_A = SIMP(statut ='f', -# ----------------------------------- - typ = 'R', - defaut = 0.07, - fr = """Fait partie de l ensemble des constantes utilisees dans -le calcul du spectre directionnel aux limites en fonction du champ -de vent . -**Mots-cles associes :** -TYPE DE SPECTRE DIRECTIONNEL AUX LIMITES""", - ang = """Is part of the set of constants used for computing the -boundary directional spectrum as a function of the wind field. -\\ - \begin{CommentBlock}{Related keywords} -TYPE OF BOUNDARY DIRECTIONAL SPECTRUM -\end{CommentBlock}""", - ), -# ----------------------------------- - BOUNDARY_SPECTRUM_VALUE_OF_SIGMA_B = SIMP(statut ='f', -# ----------------------------------- - typ = 'R', - defaut = 0.09, - fr = """Fait partie de l ensemble des constantes utilisees dans -le calcul du spectre directionnel aux limites en fonction du champ -de vent . -**Mots-cles associes :** -TYPE DE SPECTRE DIRECTIONNEL AUX LIMITES""", - ang = """Is part of the set of constants used for computing the -boundary directional spectrum as a function of the wind field. -\\ - \begin{CommentBlock}{Related keywords} -TYPE OF BOUNDARY DIRECTIONAL SPECTRUM -\end{CommentBlock}""", - ), -# ----------------------------------- - BOUNDARY_PHILLIPS_CONSTANT = SIMP(statut ='f', -# ----------------------------------- - typ = 'R', - defaut = 0.018, - fr = """Fait partie de l ensemble des constantes utilisees dans -le calcul du spectre directionnel aux limites en fonction du champ -de vent . -**Mots-cles associes :** -TYPE DE SPECTRE DIRECTIONNEL AUX LIMITES""", - ang = """Is part of the set of constants used for computing the -boundary directional spectrum as a function of the wind field. -\\ - \begin{CommentBlock}{Related keywords} -TYPE OF BOUNDARY DIRECTIONAL SPECTRUM -\end{CommentBlock}""", - ), -# ----------------------------------- - BOUNDARY_MEAN_FETCH_VALUE = SIMP(statut ='o', -# ----------------------------------- - typ = 'R', - defaut = 30000., - fr = """Fait partie de l ensemble des constantes utilisees dans -le calcul du spectre directionnel aux limites en fonction du champ -de vent . -**Mots-cles associes :** -TYPE DE SPECTRE DIRECTIONNEL AUX LIMITES""", - ang = """Is part of the set of constants used for computing the -boundary directional spectrum as a function of the wind field. -\\ - \begin{CommentBlock}{Related keywords} -TYPE OF BOUNDARY DIRECTIONAL SPECTRUM -\end{CommentBlock}""", - ), -# ----------------------------------- - BOUNDARY_MAXIMUM_PEAK_FREQUENCY = SIMP(statut ='o', -# ----------------------------------- - typ = 'R', - defaut = 0.2, - fr = """Fait partie de l ensemble des constantes utilisees dans -le calcul du spectre directionnel aux limites en fonction du champ -de vent . -**Mots-cles associes :** -TYPE DE SPECTRE DIRECTIONNEL AUX LIMITES""", - ang = """Is part of the set of constants used for computing the -boundary directional spectrum as a function of the wind field. -\\ - \begin{CommentBlock}{Related keywords} -TYPE OF BOUNDARY DIRECTIONAL SPECTRUM -\end{CommentBlock}""", - ), -# ----------------------------------- - BOUNDARY_MAIN_DIRECTION_1 = SIMP(statut ='o', -# ----------------------------------- - typ = 'R', - defaut = 0., - fr = """Fait partie de l ensemble des constantes utilisees dans -le calcul du spectre directionnel aux limites en fonction du champ -de vent . -**Mots-cles associes :** -TYPE DE SPECTRE DIRECTIONNEL AUX LIMITES""", - ang = """Is part of the set of constants used for computing the -boundary directional spectrum as a function of the wind field. -\\ - \begin{CommentBlock}{Related keywords} -TYPE OF BOUNDARY DIRECTIONAL SPECTRUM -\end{CommentBlock}""", - ), -# ----------------------------------- - BOUNDARY_DIRECTIONAL_SPREAD_1 = SIMP(statut ='o', -# ----------------------------------- - typ = 'R', - defaut = 2., - fr = """Fait partie de l ensemble des constantes utilisees dans -le calcul du spectre directionnel aux limites en fonction du champ -de vent . -**Mots-cles associes :** -TYPE DE SPECTRE DIRECTIONNEL AUX LIMITES""", - ang = """Is part of the set of constants used for computing the -boundary directional spectrum as a function of the wind field. -\\ - \begin{CommentBlock}{Related keywords} -TYPE OF BOUNDARY DIRECTIONAL SPECTRUM -\end{CommentBlock}""", - ), -# ----------------------------------- - BOUNDARY_MAIN_DIRECTION_2 = SIMP(statut ='o', -# ----------------------------------- - typ = 'R', - defaut = 0., - fr = """Fait partie de l ensemble des constantes utilisees dans -le calcul du spectre directionnel aux limites en fonction du champ -de vent . -**Mots-cles associes :** -TYPE DE SPECTRE DIRECTIONNEL AUX LIMITES""", - ang = """Is part of the set of constants used for computing the -boundary directional spectrum as a function of the wind field. -\\ - \begin{CommentBlock}{Related keywords} -TYPE OF BOUNDARY DIRECTIONAL SPECTRUM -\end{CommentBlock}""", - ), -# ----------------------------------- - BOUNDARY_DIRECTIONAL_SPREAD_2 = SIMP(statut ='o', -# ----------------------------------- - typ = 'R', - defaut = 2., - fr = """Fait partie de l ensemble des constantes utilisees dans -le calcul du spectre directionnel aux limites en fonction du champ -de vent . -**Mots-cles associes :** -TYPE DE SPECTRE DIRECTIONNEL AUX LIMITES""", - ang = """Is part of the set of constants used for computing the -boundary directional spectrum as a function of the wind field. -\\ - \begin{CommentBlock}{Related keywords} -TYPE OF BOUNDARY DIRECTIONAL SPECTRUM -\end{CommentBlock}""", - ), -# ----------------------------------- - BOUNDARY_WEIGHTING_FACTOR_FOR_ADF = SIMP(statut ='f', -# ----------------------------------- - typ = 'R', - defaut = 1., - fr = """Fait partie de l ensemble des constantes utilisees dans -le calcul du spectre directionnel aux limites en fonction du champ -de vent . -**Mots-cles associes :** -TYPE DE SPECTRE DIRECTIONNEL AUX LIMITES""", - ang = """Is part of the set of constants used for computing the -boundary directional spectrum as a function of the wind field. -\\ - \begin{CommentBlock}{Related keywords} -TYPE OF BOUNDARY DIRECTIONAL SPECTRUM -\end{CommentBlock}""", - ), -# ----------------------------------- - BOUNDARY_PEAK_FACTOR = SIMP(statut ='o', -# ----------------------------------- - typ = 'R', - defaut = 3.3, - fr = """Fait partie de l ensemble des constantes utilisees dans -le calcul du spectre directionnel aux limites en fonction du champ -de vent . -**Mots-cles associes :** -TYPE DE SPECTRE DIRECTIONNEL AUX LIMITES""", - ang = """Is part of the set of constants used for computing the -boundary directional spectrum as a function of the wind field. -\\ - \begin{CommentBlock}{Related keywords} -TYPE OF BOUNDARY DIRECTIONAL SPECTRUM -\end{CommentBlock}""", - ), -# ----------------------------------- - LIMIT_SPECTRUM_MODIFIED_BY_USER = SIMP(statut ='o', -# ----------------------------------- - typ = bool, - defaut = [False], - fr = """Indique si l''utilisateur desire modifier le spectre -aux limites. Il doit alors rapatrier chez lui le sous programme -limwac.f dans le cas d une discretisation frequentielle du -spectre et le sous programme spelim.f sinon. -**Mots-cles associes :** -TYPE DE SPECTRE DIRECTIONNEL AUX LIMITES""", - ang = """Indicates whether the user wants to modify the boundary -spectrum. He should then retrieve the limwac.f subroutine, if the -spectrum is frequency discretized, or the spelim.f subroutine, -otherwise. -\\ - \begin{CommentBlock}{Related keywords} -TYPE OF BOUNDARY DIRECTIONAL SPECTRUM -\end{CommentBlock}""", - ), -) -# ----------------------------------------------------------------------- -TRANSPORT = PROC(nom= "TRANSPORT",op = None, -# ----------------------------------------------------------------------- -# ----------------------------------- - DIFFRACTION_PARAMETERS = FACT(statut='f', -# ----------------------------------- -# ----------------------------------- - DIFFRACTION = SIMP(statut ='f', -# ----------------------------------- - typ = 'TXM', - into = ["Diffraction is not taken into account","Mild Slope Equation model (Berkhoff - 1972)","Revised Mild Slope Equation model (Porter - 2003)"], - defaut = ["Diffraction is not taken into account"], - fr = """Choix du model pour representer la diffraction : - 0 : Pas de prise en compte de la diffraction - 1 : Mild Slope Equation de Berkhoff (1972) - 2 : Revised Mild Slope Equation de Porter (2003) -La diffraction est modelisee suivant l approche proposee -par Holthuijsen (2003) -**Mots-cles associes :** -PAS DE TEMPS DEBUT DIFFRACTION -SEUIL DE VARIANCE CONSIDEREE POUR DIFFRACTION -FILTRE POUR DIFFRACTION""", - ang = """Caution : We do not guarantee the modele of diffraction. -Selection of the model used to represent the diffraction : -\begin{itemize} -\item 0 : Diffraction is not taken into account -\item 1 : Mild Slope Equation model (Berkhoff - 1972) -\item 2 : Revised Mild Slope Equation model (Porter - 2003) -\end{itemize} -The phase-decoupled approach proposed by Holthuijsen (2003) is -used to simulate diffraction in TOMAWAC -\\ - \begin{CommentBlock}{Related keywords} -STARTING TIME STEP FOR DIFFRACTION\\ -VARIANCE THRESHOLD FOR DIFFRACTION\\ -DIFFRACTION FILTER -\end{CommentBlock}""", - ), -# ----------------------------------- - STARTING_TIME_STEP_FOR_DIFFFRACTION = SIMP(statut ='f', -# ----------------------------------- - typ = 'I', - defaut = 1, - fr = """Numero du pas de temps a partir duquel la diffraction est -prise en compte dans la simulation. -**Mots-cles associes :** -DIFFRACTION -SEUIL DE VARIANCE CONSIDEREE POUR DIFFRACTION -FILTRE POUR DIFFRACTION""", - ang = """Number of the time step from which the diffraction -is taken into account until the end of the simulation. -\\ - \begin{CommentBlock}{Related keywords} -DIFFRACTION\\ -VARIANCE THRESHOLD FOR DIFFRACTION\\ -DIFFRACTION FILTER -\end{CommentBlock}""", - ), -# ----------------------------------- - VARIANCE_THRESHOLD_FOR_DIFFRACTION = SIMP(statut ='f', -# ----------------------------------- - typ = 'R', - defaut = 1.E-12, - fr = """Seuil minimum de variance spectrale pris en compte -dans la diffraction -**Mots-cles associes :** -DIFFRACTION -PAS DE TEMPS DEBUT DIFFRACTION -FILTRE POUR DIFFRACTION""", - ang = """Minimum spectral variance threshold taken into account -when diffraction is considered -\\ - \begin{CommentBlock}{Related keywords} -DIFFRACTION\\ -STARTING TIME STEP FOR DIFFRACTION\\ -DIFFRACTION FILTER -\end{CommentBlock}""", - ), -# ----------------------------------- - OPTION_FOR_SECOND_DERIVATIVES = SIMP(statut ='f', -# ----------------------------------- - typ = 'I', - defaut = [1], - fr = """1 : methode Freemesh 2 : deux derivees simples""", - ang = """1: Freemesh method 2: two simple derivatives""", - ), -# ----------------------------------- - DIFFRACTION_FILTER = SIMP(statut ='f', -# ----------------------------------- - typ = bool, - defaut = [False], - fr = """Si la diffraction est prise en compte, le logique -indique si les amplitudes calculees sont filtrees -pour le calcul du parametre de diffraction et des vitesses -de transfert. -**Mots-cles associes :** -DIFFRACTION -SEUIL DE VARIANCE CONSIDEREE POUR DIFFRACTION -PAS DE TEMPS DEBUT DIFFRACTION""", - ang = """If diffraction is considered, the keyword indicates -whether the local amplitudes of the directional spectra are -filtered to compute the diffraction parameter and the transfer -rates. -\\ - \begin{CommentBlock}{Related keywords} -DIFFRACTION\\ -VARIANCE THRESHOLD FOR DIFFRACTION\\ -STARTING TIME STEP FOR DIFFFRACTION -\end{CommentBlock}""", - ), - ), -) -TEXTE_NEW_JDC = "\ -COMPUTATION_ENVIRONMENT();\ -GENERAL_PARAMETERS();\ -SOURCE_TERMS();\ -INITIAL_CONDITIONS();\ -INTERNAL();\ -BOUNDARY_CONDITIONS();\ -" -Ordre_Des_Commandes = ( -'COMPUTATION_ENVIRONMENT', -'GENERAL_PARAMETERS', -'SOURCE_TERMS', -'INITIAL_CONDITIONS', -'INTERNAL', -'BOUNDARY_CONDITIONS', -'TRANSPORT') -try: - import TelApy - source = "eficas" -except Exception as excpt: - source = "Telemac" -enum = source+'.tomawac_enum_auto' -dicoCasEn = source+'.tomawac_dicoCasEnToCata' -dicoCasFr = source+'.tomawac_dicoCasFrToCata' diff --git a/Telemac/tomawac_dicoCasEnToCata.py b/Telemac/tomawac_dicoCasEnToCata.py deleted file mode 100644 index f48b63ca..00000000 --- a/Telemac/tomawac_dicoCasEnToCata.py +++ /dev/null @@ -1,404 +0,0 @@ -dicoCataToEngTelemac = { - "PERIOD_FOR_LISTING_PRINTOUTS" : "PERIOD FOR LISTING PRINTOUTS", - "NUMBER_OF_TIME_STEP" : "NUMBER OF TIME STEP", - "NUMBER_OF_DIRECTIONS" : "NUMBER OF DIRECTIONS", - "NUMBER_OF_FREQUENCIES" : "NUMBER OF FREQUENCIES", - "WIND_GENERATION" : "WIND GENERATION", - "WHITE_CAPPING_DISSIPATION" : "WHITE CAPPING DISSIPATION", - "BOTTOM_FRICTION_DISSIPATION" : "BOTTOM FRICTION DISSIPATION", - "NON_LINEAR_TRANSFERS_BETWEEN_FREQUENCIES" : "NON-LINEAR TRANSFERS BETWEEN FREQUENCIES", - "CURRENTS_FILE_FORMAT" : "CURRENTS FILE FORMAT", - "WINDS_FILE_FORMAT" : "WINDS FILE FORMAT", - "NUMBER_OF_ITERATIONS_FOR_THE_SOURCE_TERMS" : "NUMBER OF ITERATIONS FOR THE SOURCE TERMS", - "TYPE_OF_INITIAL_DIRECTIONAL_SPECTRUM" : "TYPE OF INITIAL DIRECTIONAL SPECTRUM", - "DISSIPATION_BY_STRONG_CURRENT" : "DISSIPATION BY STRONG CURRENT", - "TIME_INCREMENT_NUMBER_IN_TELEMAC_FILE" : "TIME INCREMENT NUMBER IN TELEMAC FILE", - "VECTOR_LENGTH" : "VECTOR LENGTH", - "DEPTH_INDUCED_BREAKING_DISSIPATION" : "DEPTH-INDUCED BREAKING DISSIPATION", - "DEPTH_INDUCED_BREAKING_1__BJ__QB_COMPUTATION_METHOD" : "DEPTH-INDUCED BREAKING 1 (BJ) QB COMPUTATION METHOD", - "DEPTH_INDUCED_BREAKING_1__BJ__HM_COMPUTATION_METHOD" : "DEPTH-INDUCED BREAKING 1 (BJ) HM COMPUTATION METHOD", - "DEPTH_INDUCED_BREAKING_1__BJ__CHARACTERISTIC_FREQUENCY" : "DEPTH-INDUCED BREAKING 1 (BJ) CHARACTERISTIC FREQUENCY", - "DEPTH_INDUCED_BREAKING_2__TG__WEIGHTING_FUNCTION" : "DEPTH-INDUCED BREAKING 2 (TG) WEIGHTING FUNCTION", - "DEPTH_INDUCED_BREAKING_2__TG__CHARACTERISTIC_FREQUENCY" : "DEPTH-INDUCED BREAKING 2 (TG) CHARACTERISTIC FREQUENCY", - "DEPTH_INDUCED_BREAKING_3__RO__WAVE_HEIGHT_DISTRIBUTION" : "DEPTH-INDUCED BREAKING 3 (RO) WAVE HEIGHT DISTRIBUTION", - "DEPTH_INDUCED_BREAKING_3__RO__EXPONENT_WEIGHTING_FUNCTION" : "DEPTH-INDUCED BREAKING 3 (RO) EXPONENT WEIGHTING FUNCTION", - "DEPTH_INDUCED_BREAKING_3__RO__CHARACTERISTIC_FREQUENCY" : "DEPTH-INDUCED BREAKING 3 (RO) CHARACTERISTIC FREQUENCY", - "DEPTH_INDUCED_BREAKING_4__IH__CHARACTERISTIC_FREQUENCY" : "DEPTH-INDUCED BREAKING 4 (IH) CHARACTERISTIC FREQUENCY", - "NUMBER_OF_BREAKING_TIME_STEPS" : "NUMBER OF BREAKING TIME STEPS", - "WAVE_GROWTH_LIMITER" : "WAVE GROWTH LIMITER", - "LINEAR_WAVE_GROWTH" : "LINEAR WAVE GROWTH", - "TRIAD_INTERACTIONS" : "TRIAD INTERACTIONS", - "TYPE_OF_BOUNDARY_DIRECTIONAL_SPECTRUM" : "TYPE OF BOUNDARY DIRECTIONAL SPECTRUM", - "TIDE_REFRESHING_PERIOD" : "TIDE REFRESHING PERIOD", - "TIDAL_WATER_LEVEL_FILE_FORMAT" : "TIDAL WATER LEVEL FILE FORMAT", - "RANK_OF_THE_WATER_LEVEL_DATA_IN_THE_TELEMAC_FILE" : "RANK OF THE WATER LEVEL DATA IN THE TELEMAC FILE", - "INITIAL_ANGULAR_DISTRIBUTION_FUNCTION" : "INITIAL ANGULAR DISTRIBUTION FUNCTION", - "NUMBER_OF_PRIVATE_ARRAYS" : "NUMBER OF PRIVATE ARRAYS", - "BOUNDARY_ANGULAR_DISTRIBUTION_FUNCTION" : "BOUNDARY ANGULAR DISTRIBUTION FUNCTION", - "ORIGIN_COORDINATES" : "ORIGIN COORDINATES", - "DEBUGGER" : "DEBUGGER", - "SETTING_FOR_INTEGRATION_ON_OMEGA1" : "SETTING FOR INTEGRATION ON OMEGA1", - "SETTING_FOR_INTEGRATION_ON_THETA1" : "SETTING FOR INTEGRATION ON THETA1", - "SETTING_FOR_INTEGRATION_ON_OMEGA2" : "SETTING FOR INTEGRATION ON OMEGA2", - "DIFFRACTION" : "DIFFRACTION", - "STARTING_TIME_STEP_FOR_DIFFFRACTION" : "STARTING TIME STEP FOR DIFFFRACTION", - "PARALLEL_PROCESSORS" : "PARALLEL PROCESSORS", - "FINITE_ELEMENT_ASSEMBLY" : "FINITE ELEMENT ASSEMBLY", - "BAJ_MODELING" : "BAJ MODELING", - "TIME_STEP" : "TIME STEP", - "MINIMAL_FREQUENCY" : "MINIMAL FREQUENCY", - "FREQUENTIAL_RATIO" : "FREQUENTIAL RATIO", - "DATE_OF_COMPUTATION_BEGINNING" : "DATE OF COMPUTATION BEGINNING", - "BOTTOM_FRICTION_COEFFICIENT" : "BOTTOM FRICTION COEFFICIENT", - "WHITE_CAPPING_DISSIPATION_COEFFICIENT" : "WHITE CAPPING DISSIPATION COEFFICIENT", - "WHITE_CAPPING_WEIGHTING_COEFFICIENT" : "WHITE CAPPING WEIGHTING COEFFICIENT", - "AIR_DENSITY" : "AIR DENSITY", - "WATER_DENSITY" : "WATER DENSITY", - "WIND_GENERATION_COEFFICIENT" : "WIND GENERATION COEFFICIENT", - "VON_KARMAN_CONSTANT" : "VON KARMAN CONSTANT", - "CHARNOCK_CONSTANT" : "CHARNOCK CONSTANT", - "SHIFT_GROWING_CURVE_DUE_TO_WIND" : "SHIFT GROWING CURVE DUE TO WIND", - "WIND_MEASUREMENTS_LEVEL" : "WIND MEASUREMENTS LEVEL", - "WIND_DRAG_COEFFICIENT" : "WIND DRAG COEFFICIENT", - "INITIAL_SIGNIFICANT_WAVE_HEIGHT" : "INITIAL SIGNIFICANT WAVE HEIGHT", - "INITIAL_PEAK_FREQUENCY" : "INITIAL PEAK FREQUENCY", - "INITIAL_PEAK_FACTOR" : "INITIAL PEAK FACTOR", - "INITIAL_VALUE_OF_SIGMA_A_FOR_SPECTRUM" : "INITIAL VALUE OF SIGMA-A FOR SPECTRUM", - "INITIAL_VALUE_OF_SIGMA_B_FOR_SPECTRUM" : "INITIAL VALUE OF SIGMA-B FOR SPECTRUM", - "INITIAL_PHILLIPS_CONSTANT" : "INITIAL PHILLIPS CONSTANT", - "INITIAL_MEAN_FETCH_VALUE" : "INITIAL MEAN FETCH VALUE", - "INITIAL_MAXIMUM_PEAK_FREQUENCY" : "INITIAL MAXIMUM PEAK FREQUENCY", - "INITIAL_MAIN_DIRECTION_1" : "INITIAL MAIN DIRECTION 1", - "INITIAL_DIRECTIONAL_SPREAD_1" : "INITIAL DIRECTIONAL SPREAD 1", - "INITIAL_MAIN_DIRECTION_2" : "INITIAL MAIN DIRECTION 2", - "INITIAL_DIRECTIONAL_SPREAD_2" : "INITIAL DIRECTIONAL SPREAD 2", - "INITIAL_WEIGHTING_FACTOR_FOR_ADF" : "INITIAL WEIGHTING FACTOR FOR ADF", - "SPECTRUM_TAIL_FACTOR" : "SPECTRUM TAIL FACTOR", - "SPECTRUM_ENERGY_THRESHOLD" : "SPECTRUM ENERGY THRESHOLD", - "DEPTH_INDUCED_BREAKING_1__BJ__COEFFICIENT_ALPHA" : "DEPTH-INDUCED BREAKING 1 (BJ) COEFFICIENT ALPHA", - "DEPTH_INDUCED_BREAKING_1__BJ__COEFFICIENT_GAMMA1" : "DEPTH-INDUCED BREAKING 1 (BJ) COEFFICIENT GAMMA1", - "DEPTH_INDUCED_BREAKING_1__BJ__COEFFICIENT_GAMMA2" : "DEPTH-INDUCED BREAKING 1 (BJ) COEFFICIENT GAMMA2", - "DEPTH_INDUCED_BREAKING_2__TG__COEFFICIENT_B" : "DEPTH-INDUCED BREAKING 2 (TG) COEFFICIENT B", - "DEPTH_INDUCED_BREAKING_2__TG__COEFFICIENT_GAMMA" : "DEPTH-INDUCED BREAKING 2 (TG) COEFFICIENT GAMMA", - "DEPTH_INDUCED_BREAKING_3__RO__COEFFICIENT_ALPHA" : "DEPTH-INDUCED BREAKING 3 (RO) COEFFICIENT ALPHA", - "DEPTH_INDUCED_BREAKING_3__RO__COEFFICIENT_GAMMA" : "DEPTH-INDUCED BREAKING 3 (RO) COEFFICIENT GAMMA", - "DEPTH_INDUCED_BREAKING_3__RO__COEFFICIENT_GAMMA2" : "DEPTH-INDUCED BREAKING 3 (RO) COEFFICIENT GAMMA2", - "DEPTH_INDUCED_BREAKING_4__IH__COEFFICIENT_BETA0" : "DEPTH-INDUCED BREAKING 4 (IH) COEFFICIENT BETA0", - "DEPTH_INDUCED_BREAKING_4__IH__COEFFICIENT_M2STAR" : "DEPTH-INDUCED BREAKING 4 (IH) COEFFICIENT M2STAR", - "MAXIMUM_VALUE_OF_THE_RATIO_HM0_ON_D" : "MAXIMUM VALUE OF THE RATIO HM0 ON D", - "COEFFICIENT_OF_THE_TIME_SUB_INCREMENTS_FOR_BREAKING" : "COEFFICIENT OF THE TIME SUB-INCREMENTS FOR BREAKING", - "STANDARD_CONFIGURATION_PARAMETER" : "STANDARD CONFIGURATION PARAMETER", - "INITIAL_STILL_WATER_LEVEL" : "INITIAL STILL WATER LEVEL", - "TRIADS_1__LTA__COEFFICIENT_ALPHA" : "TRIADS 1 (LTA) COEFFICIENT ALPHA", - "TRIADS_1__LTA__COEFFICIENT_RFMLTA" : "TRIADS 1 (LTA) COEFFICIENT RFMLTA", - "TRIADS_2__SPB__COEFFICIENT_K" : "TRIADS 2 (SPB) COEFFICIENT K", - "TRIADS_2__SPB__LOWER_DIRECTIONAL_BOUNDARY" : "TRIADS 2 (SPB) LOWER DIRECTIONAL BOUNDARY", - "TRIADS_2__SPB__UPPER_DIRECTIONAL_BOUNDARY" : "TRIADS 2 (SPB) UPPER DIRECTIONAL BOUNDARY", - "BOUNDARY_SIGNIFICANT_WAVE_HEIGHT" : "BOUNDARY SIGNIFICANT WAVE HEIGHT", - "BOUNDARY_PEAK_FREQUENCY" : "BOUNDARY PEAK FREQUENCY", - "BOUNDARY_SPECTRUM_VALUE_OF_SIGMA_A" : "BOUNDARY SPECTRUM VALUE OF SIGMA-A", - "BOUNDARY_SPECTRUM_VALUE_OF_SIGMA_B" : "BOUNDARY SPECTRUM VALUE OF SIGMA-B", - "BOUNDARY_PHILLIPS_CONSTANT" : "BOUNDARY PHILLIPS CONSTANT", - "BOUNDARY_MEAN_FETCH_VALUE" : "BOUNDARY MEAN FETCH VALUE", - "BOUNDARY_MAXIMUM_PEAK_FREQUENCY" : "BOUNDARY MAXIMUM PEAK FREQUENCY", - "BOUNDARY_MAIN_DIRECTION_1" : "BOUNDARY MAIN DIRECTION 1", - "BOUNDARY_DIRECTIONAL_SPREAD_1" : "BOUNDARY DIRECTIONAL SPREAD 1", - "BOUNDARY_MAIN_DIRECTION_2" : "BOUNDARY MAIN DIRECTION 2", - "BOUNDARY_DIRECTIONAL_SPREAD_2" : "BOUNDARY DIRECTIONAL SPREAD 2", - "BOUNDARY_WEIGHTING_FACTOR_FOR_ADF" : "BOUNDARY WEIGHTING FACTOR FOR ADF", - "BOUNDARY_PEAK_FACTOR" : "BOUNDARY PEAK FACTOR", - "MINIMUM_WATER_DEPTH" : "MINIMUM WATER DEPTH", - "WIND_VELOCITY_ALONG_X" : "WIND VELOCITY ALONG X", - "WIND_VELOCITY_ALONG_Y" : "WIND VELOCITY ALONG Y", - "IMPLICITATION_COEFFICIENT_FOR_SOURCE_TERMS" : "IMPLICITATION COEFFICIENT FOR SOURCE TERMS", - "YAN_GENERATION_COEFFICIENT_D" : "YAN GENERATION COEFFICIENT D", - "YAN_GENERATION_COEFFICIENT_E" : "YAN GENERATION COEFFICIENT E", - "YAN_GENERATION_COEFFICIENT_F" : "YAN GENERATION COEFFICIENT F", - "YAN_GENERATION_COEFFICIENT_H" : "YAN GENERATION COEFFICIENT H", - "WESTHUYSEN_DISSIPATION_COEFFICIENT" : "WESTHUYSEN DISSIPATION COEFFICIENT", - "SATURATION_THRESHOLD_FOR_THE_DISSIPATION" : "SATURATION THRESHOLD FOR THE DISSIPATION", - "WESTHUYSEN_WHITE_CAPPING_DISSIPATION" : "WESTHUYSEN WHITE CAPPING DISSIPATION", - "WESTHUYSEN_WEIGHTING_COEFFICIENT" : "WESTHUYSEN WEIGHTING COEFFICIENT", - "THRESHOLD0_FOR_CONFIGURATIONS_ELIMINATION" : "THRESHOLD0 FOR CONFIGURATIONS ELIMINATION", - "THRESHOLD1_FOR_CONFIGURATIONS_ELIMINATION" : "THRESHOLD1 FOR CONFIGURATIONS ELIMINATION", - "THRESHOLD2_FOR_CONFIGURATIONS_ELIMINATION" : "THRESHOLD2 FOR CONFIGURATIONS ELIMINATION", - "VARIANCE_THRESHOLD_FOR_DIFFRACTION" : "VARIANCE THRESHOLD FOR DIFFRACTION", - "TIME_UNIT_IN_CURRENTS_FILE" : "TIME UNIT IN CURRENTS FILE", - "TIME_UNIT_IN_TIDAL_WATER_LEVEL_FILE" : "TIME UNIT IN TIDAL WATER LEVEL FILE", - "TIME_UNIT_IN_WINDS_FILE" : "TIME UNIT IN WINDS FILE", - "TIME_SHIFT_IN_CURRENTS_FILE" : "TIME SHIFT IN CURRENTS FILE", - "TIME_SHIFT_IN_TIDAL_WATER_LEVEL_FILE" : "TIME SHIFT IN TIDAL WATER LEVEL FILE", - "TIME_SHIFT_IN_WINDS_FILE" : "TIME SHIFT IN WINDS FILE", - "DISSIPATION_COEFFICIENT_FOR_STRONG_CURRENT" : "DISSIPATION COEFFICIENT FOR STRONG CURRENT", - "TITLE" : "TITLE", - "VARIABLES_FOR_2D_GRAPHIC_PRINTOUTS" : "VARIABLES FOR 2D GRAPHIC PRINTOUTS", - "GEOMETRY_FILE" : "GEOMETRY FILE", - "GEOMETRY_FILE_FORMAT" : "GEOMETRY FILE FORMAT", - "FORTRAN_FILE" : "FORTRAN FILE", - "STEERING_FILE" : "STEERING FILE", - "BOUNDARY_CONDITIONS_FILE" : "BOUNDARY CONDITIONS FILE", - "BOTTOM_TOPOGRAPHY_FILE" : "BOTTOM TOPOGRAPHY FILE", - "BOTTOM_SMOOTHINGS" : "BOTTOM SMOOTHINGS", - "PERIOD_FOR_GRAPHIC_PRINTOUTS" : "PERIOD FOR GRAPHIC PRINTOUTS", - "NUMBER_OF_FIRST_ITERATION_FOR_GRAPHICS_PRINTOUTS" : "NUMBER OF FIRST ITERATION FOR GRAPHICS PRINTOUTS", - "ED_RESULTS_FILE" : "2D RESULTS FILE", - "ED_RESULTS_FILE_FORMAT" : "2D RESULTS FILE FORMAT", - "PUNCTUAL_RESULTS_FILE" : "PUNCTUAL RESULTS FILE", - "SPECTRUM_FILE_FORMAT" : "SPECTRUM FILE FORMAT", - "ABSCISSAE_OF_SPECTRUM_PRINTOUT_POINTS" : "ABSCISSAE OF SPECTRUM PRINTOUT POINTS", - "ORDINATES_OF_SPECTRUM_PRINTOUT_POINTS" : "ORDINATES OF SPECTRUM PRINTOUT POINTS", - "NEXT_COMPUTATION" : "NEXT COMPUTATION", - "PREVIOUS_COMPUTATION_FILE" : "PREVIOUS COMPUTATION FILE", - "PREVIOUS_COMPUTATION_FILE_FORMAT" : "PREVIOUS COMPUTATION FILE FORMAT", - "BINARY_CURRENTS_FILE" : "BINARY CURRENTS FILE", - "FORMATTED_CURRENTS_FILE" : "FORMATTED CURRENTS FILE", - "RELEASE" : "RELEASE", - "BINARY_WINDS_FILE" : "BINARY WINDS FILE", - "BINARY_WINDS_FILE_FORMAT" : "BINARY WINDS FILE FORMAT", - "FORMATTED_WINDS_FILE" : "FORMATTED WINDS FILE", - "REFERENCE_FILE" : "REFERENCE FILE", - "REFERENCE_FILE_FORMAT" : "REFERENCE FILE FORMAT", - "BINARY_TIDAL_WATER_LEVEL_FILE" : "BINARY TIDAL WATER LEVEL FILE", - "BINARY_TIDAL_WATER_FILE_FORMAT" : "BINARY TIDAL WATER FILE FORMAT", - "FORMATTED_TIDAL_WATER_LEVEL_FILE" : "FORMATTED TIDAL WATER LEVEL FILE", - "BINARY_CURRENTS_FILE_FORMAT" : "BINARY CURRENTS FILE FORMAT", - "NAMES_OF_VARIABLES" : "NAMES OF VARIABLES", - "OPTION_FOR_DIAGNOSTIC_TAIL" : "OPTION FOR DIAGNOSTIC TAIL", - "OPTION_FOR_SECOND_DERIVATIVES" : "OPTION FOR SECOND DERIVATIVES", - "ZD_SPECTRA_RESULTS_FILE" : "1D SPECTRA RESULTS FILE", - "GLOBAL_RESULT_FILE" : "GLOBAL RESULT FILE", - "GLOBAL_RESULT_FILE_FORMAT" : "GLOBAL RESULT FILE FORMAT", - "BINARY_FILE_1" : "BINARY FILE 1", - "BINARY_DATA_FILE_1_FORMAT" : "BINARY DATA FILE 1 FORMAT", - "FORMATTED_FILE_1" : "FORMATTED FILE 1", - "LIST_OF_FILES" : "LIST OF FILES", - "DICTIONARY" : "DICTIONARY", - "PARTITIONING_TOOL" : "PARTITIONING TOOL", - "CONSIDERATION_OF_SOURCE_TERMS" : "CONSIDERATION OF SOURCE TERMS", - "SPHERICAL_COORDINATES" : "SPHERICAL COORDINATES", - "INFINITE_DEPTH" : "INFINITE DEPTH", - "CONSIDERATION_OF_A_STATIONARY_CURRENT" : "CONSIDERATION OF A STATIONARY CURRENT", - "CONSIDERATION_OF_A_WIND" : "CONSIDERATION OF A WIND", - "RECOVERY_OF_TELEMAC_DATA_ITEM" : "RECOVERY OF TELEMAC DATA ITEM", - "CONSIDERATION_OF_PROPAGATION" : "CONSIDERATION OF PROPAGATION", - "STATIONARY_WIND" : "STATIONARY WIND", - "VALIDATION" : "VALIDATION", - "CONSIDERATION_OF_TIDE" : "CONSIDERATION OF TIDE", - "TRIGONOMETRICAL_CONVENTION" : "TRIGONOMETRICAL CONVENTION", - "LIMIT_SPECTRUM_MODIFIED_BY_USER" : "LIMIT SPECTRUM MODIFIED BY USER", - "DIFFRACTION_FILTER" : "DIFFRACTION FILTER", - "INITIAL_TIME_SET_TO_ZERO" : "INITIAL TIME SET TO ZERO", - "VEGETATION_TAKEN_INTO_ACCOUNT" : "VEGETATION TAKEN INTO ACCOUNT", - "CHECKING_THE_MESH" : "CHECKING THE MESH", - "FILE_WITH_COORDINATES_OF_SPECTRA_TO_WRITE" : "FILE WITH COORDINATES OF SPECTRA TO WRITE", - "FILE_WITH_COORDINATES_OF_SPECTRA_TO_IMPOSE" : "FILE WITH COORDINATES OF SPECTRA TO IMPOSE", - "IMPOSED_SPECTRA_FILE" : "IMPOSED SPECTRA FILE", - "IMPOSED_SPECTRA_FILE_FORMAT" : "IMPOSED SPECTRA FILE FORMAT", - "TIME_UNIT_OF_IMPOSED_SPECTRA_FILE" : "TIME UNIT OF IMPOSED SPECTRA FILE", - "TIME_SHIFT_OF_IMPOSED_SPECTRA_FILE" : "TIME SHIFT OF IMPOSED SPECTRA FILE", - "TAKING_INTO_ACCOUNT_SOURCE_TERMS_ON_IMPOSED_BOUNDARIES" : "TAKING INTO ACCOUNT SOURCE TERMS ON IMPOSED BOUNDARIES", - "BOUNDARY_CONDITION_BEFORE_TIME_STEP" : "BOUNDARY CONDITION BEFORE TIME STEP", - "ECRET_FOR_SMALL_HEIGHT" : "ECRET FOR SMALL HEIGHT", -} -dicoCasEnToCata = { - "PERIOD FOR LISTING PRINTOUTS" : "PERIOD_FOR_LISTING_PRINTOUTS", - "NUMBER OF TIME STEP" : "NUMBER_OF_TIME_STEP", - "NUMBER OF DIRECTIONS" : "NUMBER_OF_DIRECTIONS", - "NUMBER OF FREQUENCIES" : "NUMBER_OF_FREQUENCIES", - "WIND GENERATION" : "WIND_GENERATION", - "WHITE CAPPING DISSIPATION" : "WHITE_CAPPING_DISSIPATION", - "BOTTOM FRICTION DISSIPATION" : "BOTTOM_FRICTION_DISSIPATION", - "NON-LINEAR TRANSFERS BETWEEN FREQUENCIES" : "NON_LINEAR_TRANSFERS_BETWEEN_FREQUENCIES", - "CURRENTS FILE FORMAT" : "CURRENTS_FILE_FORMAT", - "WINDS FILE FORMAT" : "WINDS_FILE_FORMAT", - "NUMBER OF ITERATIONS FOR THE SOURCE TERMS" : "NUMBER_OF_ITERATIONS_FOR_THE_SOURCE_TERMS", - "TYPE OF INITIAL DIRECTIONAL SPECTRUM" : "TYPE_OF_INITIAL_DIRECTIONAL_SPECTRUM", - "DISSIPATION BY STRONG CURRENT" : "DISSIPATION_BY_STRONG_CURRENT", - "TIME INCREMENT NUMBER IN TELEMAC FILE" : "TIME_INCREMENT_NUMBER_IN_TELEMAC_FILE", - "VECTOR LENGTH" : "VECTOR_LENGTH", - "DEPTH-INDUCED BREAKING DISSIPATION" : "DEPTH_INDUCED_BREAKING_DISSIPATION", - "DEPTH-INDUCED BREAKING 1 (BJ) QB COMPUTATION METHOD" : "DEPTH_INDUCED_BREAKING_1__BJ__QB_COMPUTATION_METHOD", - "DEPTH-INDUCED BREAKING 1 (BJ) HM COMPUTATION METHOD" : "DEPTH_INDUCED_BREAKING_1__BJ__HM_COMPUTATION_METHOD", - "DEPTH-INDUCED BREAKING 1 (BJ) CHARACTERISTIC FREQUENCY" : "DEPTH_INDUCED_BREAKING_1__BJ__CHARACTERISTIC_FREQUENCY", - "DEPTH-INDUCED BREAKING 2 (TG) WEIGHTING FUNCTION" : "DEPTH_INDUCED_BREAKING_2__TG__WEIGHTING_FUNCTION", - "DEPTH-INDUCED BREAKING 2 (TG) CHARACTERISTIC FREQUENCY" : "DEPTH_INDUCED_BREAKING_2__TG__CHARACTERISTIC_FREQUENCY", - "DEPTH-INDUCED BREAKING 3 (RO) WAVE HEIGHT DISTRIBUTION" : "DEPTH_INDUCED_BREAKING_3__RO__WAVE_HEIGHT_DISTRIBUTION", - "DEPTH-INDUCED BREAKING 3 (RO) EXPONENT WEIGHTING FUNCTION" : "DEPTH_INDUCED_BREAKING_3__RO__EXPONENT_WEIGHTING_FUNCTION", - "DEPTH-INDUCED BREAKING 3 (RO) CHARACTERISTIC FREQUENCY" : "DEPTH_INDUCED_BREAKING_3__RO__CHARACTERISTIC_FREQUENCY", - "DEPTH-INDUCED BREAKING 4 (IH) CHARACTERISTIC FREQUENCY" : "DEPTH_INDUCED_BREAKING_4__IH__CHARACTERISTIC_FREQUENCY", - "NUMBER OF BREAKING TIME STEPS" : "NUMBER_OF_BREAKING_TIME_STEPS", - "WAVE GROWTH LIMITER" : "WAVE_GROWTH_LIMITER", - "LINEAR WAVE GROWTH" : "LINEAR_WAVE_GROWTH", - "TRIAD INTERACTIONS" : "TRIAD_INTERACTIONS", - "TYPE OF BOUNDARY DIRECTIONAL SPECTRUM" : "TYPE_OF_BOUNDARY_DIRECTIONAL_SPECTRUM", - "TIDE REFRESHING PERIOD" : "TIDE_REFRESHING_PERIOD", - "TIDAL WATER LEVEL FILE FORMAT" : "TIDAL_WATER_LEVEL_FILE_FORMAT", - "RANK OF THE WATER LEVEL DATA IN THE TELEMAC FILE" : "RANK_OF_THE_WATER_LEVEL_DATA_IN_THE_TELEMAC_FILE", - "INITIAL ANGULAR DISTRIBUTION FUNCTION" : "INITIAL_ANGULAR_DISTRIBUTION_FUNCTION", - "NUMBER OF PRIVATE ARRAYS" : "NUMBER_OF_PRIVATE_ARRAYS", - "BOUNDARY ANGULAR DISTRIBUTION FUNCTION" : "BOUNDARY_ANGULAR_DISTRIBUTION_FUNCTION", - "ORIGIN COORDINATES" : "ORIGIN_COORDINATES", - "DEBUGGER" : "DEBUGGER", - "SETTING FOR INTEGRATION ON OMEGA1" : "SETTING_FOR_INTEGRATION_ON_OMEGA1", - "SETTING FOR INTEGRATION ON THETA1" : "SETTING_FOR_INTEGRATION_ON_THETA1", - "SETTING FOR INTEGRATION ON OMEGA2" : "SETTING_FOR_INTEGRATION_ON_OMEGA2", - "DIFFRACTION" : "DIFFRACTION", - "STARTING TIME STEP FOR DIFFFRACTION" : "STARTING_TIME_STEP_FOR_DIFFFRACTION", - "PARALLEL PROCESSORS" : "PARALLEL_PROCESSORS", - "FINITE ELEMENT ASSEMBLY" : "FINITE_ELEMENT_ASSEMBLY", - "BAJ MODELING" : "BAJ_MODELING", - "TIME STEP" : "TIME_STEP", - "MINIMAL FREQUENCY" : "MINIMAL_FREQUENCY", - "FREQUENTIAL RATIO" : "FREQUENTIAL_RATIO", - "DATE OF COMPUTATION BEGINNING" : "DATE_OF_COMPUTATION_BEGINNING", - "BOTTOM FRICTION COEFFICIENT" : "BOTTOM_FRICTION_COEFFICIENT", - "WHITE CAPPING DISSIPATION COEFFICIENT" : "WHITE_CAPPING_DISSIPATION_COEFFICIENT", - "WHITE CAPPING WEIGHTING COEFFICIENT" : "WHITE_CAPPING_WEIGHTING_COEFFICIENT", - "AIR DENSITY" : "AIR_DENSITY", - "WATER DENSITY" : "WATER_DENSITY", - "WIND GENERATION COEFFICIENT" : "WIND_GENERATION_COEFFICIENT", - "VON KARMAN CONSTANT" : "VON_KARMAN_CONSTANT", - "CHARNOCK CONSTANT" : "CHARNOCK_CONSTANT", - "SHIFT GROWING CURVE DUE TO WIND" : "SHIFT_GROWING_CURVE_DUE_TO_WIND", - "WIND MEASUREMENTS LEVEL" : "WIND_MEASUREMENTS_LEVEL", - "WIND DRAG COEFFICIENT" : "WIND_DRAG_COEFFICIENT", - "INITIAL SIGNIFICANT WAVE HEIGHT" : "INITIAL_SIGNIFICANT_WAVE_HEIGHT", - "INITIAL PEAK FREQUENCY" : "INITIAL_PEAK_FREQUENCY", - "INITIAL PEAK FACTOR" : "INITIAL_PEAK_FACTOR", - "INITIAL VALUE OF SIGMA-A FOR SPECTRUM" : "INITIAL_VALUE_OF_SIGMA_A_FOR_SPECTRUM", - "INITIAL VALUE OF SIGMA-B FOR SPECTRUM" : "INITIAL_VALUE_OF_SIGMA_B_FOR_SPECTRUM", - "INITIAL PHILLIPS CONSTANT" : "INITIAL_PHILLIPS_CONSTANT", - "INITIAL MEAN FETCH VALUE" : "INITIAL_MEAN_FETCH_VALUE", - "INITIAL MAXIMUM PEAK FREQUENCY" : "INITIAL_MAXIMUM_PEAK_FREQUENCY", - "INITIAL MAIN DIRECTION 1" : "INITIAL_MAIN_DIRECTION_1", - "INITIAL DIRECTIONAL SPREAD 1" : "INITIAL_DIRECTIONAL_SPREAD_1", - "INITIAL MAIN DIRECTION 2" : "INITIAL_MAIN_DIRECTION_2", - "INITIAL DIRECTIONAL SPREAD 2" : "INITIAL_DIRECTIONAL_SPREAD_2", - "INITIAL WEIGHTING FACTOR FOR ADF" : "INITIAL_WEIGHTING_FACTOR_FOR_ADF", - "SPECTRUM TAIL FACTOR" : "SPECTRUM_TAIL_FACTOR", - "SPECTRUM ENERGY THRESHOLD" : "SPECTRUM_ENERGY_THRESHOLD", - "DEPTH-INDUCED BREAKING 1 (BJ) COEFFICIENT ALPHA" : "DEPTH_INDUCED_BREAKING_1__BJ__COEFFICIENT_ALPHA", - "DEPTH-INDUCED BREAKING 1 (BJ) COEFFICIENT GAMMA1" : "DEPTH_INDUCED_BREAKING_1__BJ__COEFFICIENT_GAMMA1", - "DEPTH-INDUCED BREAKING 1 (BJ) COEFFICIENT GAMMA2" : "DEPTH_INDUCED_BREAKING_1__BJ__COEFFICIENT_GAMMA2", - "DEPTH-INDUCED BREAKING 2 (TG) COEFFICIENT B" : "DEPTH_INDUCED_BREAKING_2__TG__COEFFICIENT_B", - "DEPTH-INDUCED BREAKING 2 (TG) COEFFICIENT GAMMA" : "DEPTH_INDUCED_BREAKING_2__TG__COEFFICIENT_GAMMA", - "DEPTH-INDUCED BREAKING 3 (RO) COEFFICIENT ALPHA" : "DEPTH_INDUCED_BREAKING_3__RO__COEFFICIENT_ALPHA", - "DEPTH-INDUCED BREAKING 3 (RO) COEFFICIENT GAMMA" : "DEPTH_INDUCED_BREAKING_3__RO__COEFFICIENT_GAMMA", - "DEPTH-INDUCED BREAKING 3 (RO) COEFFICIENT GAMMA2" : "DEPTH_INDUCED_BREAKING_3__RO__COEFFICIENT_GAMMA2", - "DEPTH-INDUCED BREAKING 4 (IH) COEFFICIENT BETA0" : "DEPTH_INDUCED_BREAKING_4__IH__COEFFICIENT_BETA0", - "DEPTH-INDUCED BREAKING 4 (IH) COEFFICIENT M2STAR" : "DEPTH_INDUCED_BREAKING_4__IH__COEFFICIENT_M2STAR", - "MAXIMUM VALUE OF THE RATIO HM0 ON D" : "MAXIMUM_VALUE_OF_THE_RATIO_HM0_ON_D", - "COEFFICIENT OF THE TIME SUB-INCREMENTS FOR BREAKING" : "COEFFICIENT_OF_THE_TIME_SUB_INCREMENTS_FOR_BREAKING", - "STANDARD CONFIGURATION PARAMETER" : "STANDARD_CONFIGURATION_PARAMETER", - "INITIAL STILL WATER LEVEL" : "INITIAL_STILL_WATER_LEVEL", - "TRIADS 1 (LTA) COEFFICIENT ALPHA" : "TRIADS_1__LTA__COEFFICIENT_ALPHA", - "TRIADS 1 (LTA) COEFFICIENT RFMLTA" : "TRIADS_1__LTA__COEFFICIENT_RFMLTA", - "TRIADS 2 (SPB) COEFFICIENT K" : "TRIADS_2__SPB__COEFFICIENT_K", - "TRIADS 2 (SPB) LOWER DIRECTIONAL BOUNDARY" : "TRIADS_2__SPB__LOWER_DIRECTIONAL_BOUNDARY", - "TRIADS 2 (SPB) UPPER DIRECTIONAL BOUNDARY" : "TRIADS_2__SPB__UPPER_DIRECTIONAL_BOUNDARY", - "BOUNDARY SIGNIFICANT WAVE HEIGHT" : "BOUNDARY_SIGNIFICANT_WAVE_HEIGHT", - "BOUNDARY PEAK FREQUENCY" : "BOUNDARY_PEAK_FREQUENCY", - "BOUNDARY SPECTRUM VALUE OF SIGMA-A" : "BOUNDARY_SPECTRUM_VALUE_OF_SIGMA_A", - "BOUNDARY SPECTRUM VALUE OF SIGMA-B" : "BOUNDARY_SPECTRUM_VALUE_OF_SIGMA_B", - "BOUNDARY PHILLIPS CONSTANT" : "BOUNDARY_PHILLIPS_CONSTANT", - "BOUNDARY MEAN FETCH VALUE" : "BOUNDARY_MEAN_FETCH_VALUE", - "BOUNDARY MAXIMUM PEAK FREQUENCY" : "BOUNDARY_MAXIMUM_PEAK_FREQUENCY", - "BOUNDARY MAIN DIRECTION 1" : "BOUNDARY_MAIN_DIRECTION_1", - "BOUNDARY DIRECTIONAL SPREAD 1" : "BOUNDARY_DIRECTIONAL_SPREAD_1", - "BOUNDARY MAIN DIRECTION 2" : "BOUNDARY_MAIN_DIRECTION_2", - "BOUNDARY DIRECTIONAL SPREAD 2" : "BOUNDARY_DIRECTIONAL_SPREAD_2", - "BOUNDARY WEIGHTING FACTOR FOR ADF" : "BOUNDARY_WEIGHTING_FACTOR_FOR_ADF", - "BOUNDARY PEAK FACTOR" : "BOUNDARY_PEAK_FACTOR", - "MINIMUM WATER DEPTH" : "MINIMUM_WATER_DEPTH", - "WIND VELOCITY ALONG X" : "WIND_VELOCITY_ALONG_X", - "WIND VELOCITY ALONG Y" : "WIND_VELOCITY_ALONG_Y", - "IMPLICITATION COEFFICIENT FOR SOURCE TERMS" : "IMPLICITATION_COEFFICIENT_FOR_SOURCE_TERMS", - "YAN GENERATION COEFFICIENT D" : "YAN_GENERATION_COEFFICIENT_D", - "YAN GENERATION COEFFICIENT E" : "YAN_GENERATION_COEFFICIENT_E", - "YAN GENERATION COEFFICIENT F" : "YAN_GENERATION_COEFFICIENT_F", - "YAN GENERATION COEFFICIENT H" : "YAN_GENERATION_COEFFICIENT_H", - "WESTHUYSEN DISSIPATION COEFFICIENT" : "WESTHUYSEN_DISSIPATION_COEFFICIENT", - "SATURATION THRESHOLD FOR THE DISSIPATION" : "SATURATION_THRESHOLD_FOR_THE_DISSIPATION", - "WESTHUYSEN WHITE CAPPING DISSIPATION" : "WESTHUYSEN_WHITE_CAPPING_DISSIPATION", - "WESTHUYSEN WEIGHTING COEFFICIENT" : "WESTHUYSEN_WEIGHTING_COEFFICIENT", - "THRESHOLD0 FOR CONFIGURATIONS ELIMINATION" : "THRESHOLD0_FOR_CONFIGURATIONS_ELIMINATION", - "THRESHOLD1 FOR CONFIGURATIONS ELIMINATION" : "THRESHOLD1_FOR_CONFIGURATIONS_ELIMINATION", - "THRESHOLD2 FOR CONFIGURATIONS ELIMINATION" : "THRESHOLD2_FOR_CONFIGURATIONS_ELIMINATION", - "VARIANCE THRESHOLD FOR DIFFRACTION" : "VARIANCE_THRESHOLD_FOR_DIFFRACTION", - "TIME UNIT IN CURRENTS FILE" : "TIME_UNIT_IN_CURRENTS_FILE", - "TIME UNIT IN TIDAL WATER LEVEL FILE" : "TIME_UNIT_IN_TIDAL_WATER_LEVEL_FILE", - "TIME UNIT IN WINDS FILE" : "TIME_UNIT_IN_WINDS_FILE", - "TIME SHIFT IN CURRENTS FILE" : "TIME_SHIFT_IN_CURRENTS_FILE", - "TIME SHIFT IN TIDAL WATER LEVEL FILE" : "TIME_SHIFT_IN_TIDAL_WATER_LEVEL_FILE", - "TIME SHIFT IN WINDS FILE" : "TIME_SHIFT_IN_WINDS_FILE", - "DISSIPATION COEFFICIENT FOR STRONG CURRENT" : "DISSIPATION_COEFFICIENT_FOR_STRONG_CURRENT", - "TITLE" : "TITLE", - "VARIABLES FOR 2D GRAPHIC PRINTOUTS" : "VARIABLES_FOR_2D_GRAPHIC_PRINTOUTS", - "GEOMETRY FILE" : "GEOMETRY_FILE", - "GEOMETRY FILE FORMAT" : "GEOMETRY_FILE_FORMAT", - "FORTRAN FILE" : "FORTRAN_FILE", - "STEERING FILE" : "STEERING_FILE", - "BOUNDARY CONDITIONS FILE" : "BOUNDARY_CONDITIONS_FILE", - "BOTTOM TOPOGRAPHY FILE" : "BOTTOM_TOPOGRAPHY_FILE", - "BOTTOM SMOOTHINGS" : "BOTTOM_SMOOTHINGS", - "PERIOD FOR GRAPHIC PRINTOUTS" : "PERIOD_FOR_GRAPHIC_PRINTOUTS", - "NUMBER OF FIRST ITERATION FOR GRAPHICS PRINTOUTS" : "NUMBER_OF_FIRST_ITERATION_FOR_GRAPHICS_PRINTOUTS", - "2D RESULTS FILE" : "ED_RESULTS_FILE", - "2D RESULTS FILE FORMAT" : "ED_RESULTS_FILE_FORMAT", - "PUNCTUAL RESULTS FILE" : "PUNCTUAL_RESULTS_FILE", - "SPECTRUM FILE FORMAT" : "SPECTRUM_FILE_FORMAT", - "ABSCISSAE OF SPECTRUM PRINTOUT POINTS" : "ABSCISSAE_OF_SPECTRUM_PRINTOUT_POINTS", - "ORDINATES OF SPECTRUM PRINTOUT POINTS" : "ORDINATES_OF_SPECTRUM_PRINTOUT_POINTS", - "NEXT COMPUTATION" : "NEXT_COMPUTATION", - "PREVIOUS COMPUTATION FILE" : "PREVIOUS_COMPUTATION_FILE", - "PREVIOUS COMPUTATION FILE FORMAT" : "PREVIOUS_COMPUTATION_FILE_FORMAT", - "BINARY CURRENTS FILE" : "BINARY_CURRENTS_FILE", - "FORMATTED CURRENTS FILE" : "FORMATTED_CURRENTS_FILE", - "RELEASE" : "RELEASE", - "BINARY WINDS FILE" : "BINARY_WINDS_FILE", - "BINARY WINDS FILE FORMAT" : "BINARY_WINDS_FILE_FORMAT", - "FORMATTED WINDS FILE" : "FORMATTED_WINDS_FILE", - "REFERENCE FILE" : "REFERENCE_FILE", - "REFERENCE FILE FORMAT" : "REFERENCE_FILE_FORMAT", - "BINARY TIDAL WATER LEVEL FILE" : "BINARY_TIDAL_WATER_LEVEL_FILE", - "BINARY TIDAL WATER FILE FORMAT" : "BINARY_TIDAL_WATER_FILE_FORMAT", - "FORMATTED TIDAL WATER LEVEL FILE" : "FORMATTED_TIDAL_WATER_LEVEL_FILE", - "BINARY CURRENTS FILE FORMAT" : "BINARY_CURRENTS_FILE_FORMAT", - "NAMES OF VARIABLES" : "NAMES_OF_VARIABLES", - "OPTION FOR DIAGNOSTIC TAIL" : "OPTION_FOR_DIAGNOSTIC_TAIL", - "OPTION FOR SECOND DERIVATIVES" : "OPTION_FOR_SECOND_DERIVATIVES", - "1D SPECTRA RESULTS FILE" : "ZD_SPECTRA_RESULTS_FILE", - "GLOBAL RESULT FILE" : "GLOBAL_RESULT_FILE", - "GLOBAL RESULT FILE FORMAT" : "GLOBAL_RESULT_FILE_FORMAT", - "BINARY FILE 1" : "BINARY_FILE_1", - "BINARY DATA FILE 1 FORMAT" : "BINARY_DATA_FILE_1_FORMAT", - "FORMATTED FILE 1" : "FORMATTED_FILE_1", - "LIST OF FILES" : "LIST_OF_FILES", - "DICTIONARY" : "DICTIONARY", - "PARTITIONING TOOL" : "PARTITIONING_TOOL", - "CONSIDERATION OF SOURCE TERMS" : "CONSIDERATION_OF_SOURCE_TERMS", - "SPHERICAL COORDINATES" : "SPHERICAL_COORDINATES", - "INFINITE DEPTH" : "INFINITE_DEPTH", - "CONSIDERATION OF A STATIONARY CURRENT" : "CONSIDERATION_OF_A_STATIONARY_CURRENT", - "CONSIDERATION OF A WIND" : "CONSIDERATION_OF_A_WIND", - "RECOVERY OF TELEMAC DATA ITEM" : "RECOVERY_OF_TELEMAC_DATA_ITEM", - "CONSIDERATION OF PROPAGATION" : "CONSIDERATION_OF_PROPAGATION", - "STATIONARY WIND" : "STATIONARY_WIND", - "VALIDATION" : "VALIDATION", - "CONSIDERATION OF TIDE" : "CONSIDERATION_OF_TIDE", - "TRIGONOMETRICAL CONVENTION" : "TRIGONOMETRICAL_CONVENTION", - "LIMIT SPECTRUM MODIFIED BY USER" : "LIMIT_SPECTRUM_MODIFIED_BY_USER", - "DIFFRACTION FILTER" : "DIFFRACTION_FILTER", - "INITIAL TIME SET TO ZERO" : "INITIAL_TIME_SET_TO_ZERO", - "VEGETATION TAKEN INTO ACCOUNT" : "VEGETATION_TAKEN_INTO_ACCOUNT", - "CHECKING THE MESH" : "CHECKING_THE_MESH", - "FILE WITH COORDINATES OF SPECTRA TO WRITE" : "FILE_WITH_COORDINATES_OF_SPECTRA_TO_WRITE", - "FILE WITH COORDINATES OF SPECTRA TO IMPOSE" : "FILE_WITH_COORDINATES_OF_SPECTRA_TO_IMPOSE", - "IMPOSED SPECTRA FILE" : "IMPOSED_SPECTRA_FILE", - "IMPOSED SPECTRA FILE FORMAT" : "IMPOSED_SPECTRA_FILE_FORMAT", - "TIME UNIT OF IMPOSED SPECTRA FILE" : "TIME_UNIT_OF_IMPOSED_SPECTRA_FILE", - "TIME SHIFT OF IMPOSED SPECTRA FILE" : "TIME_SHIFT_OF_IMPOSED_SPECTRA_FILE", - "TAKING INTO ACCOUNT SOURCE TERMS ON IMPOSED BOUNDARIES" : "TAKING_INTO_ACCOUNT_SOURCE_TERMS_ON_IMPOSED_BOUNDARIES", - "BOUNDARY CONDITION BEFORE TIME STEP" : "BOUNDARY_CONDITION_BEFORE_TIME_STEP", - "ECRET FOR SMALL HEIGHT" : "ECRET_FOR_SMALL_HEIGHT", -} diff --git a/Telemac/tomawac_dicoCasFrToCata.py b/Telemac/tomawac_dicoCasFrToCata.py deleted file mode 100644 index 5d409b08..00000000 --- a/Telemac/tomawac_dicoCasFrToCata.py +++ /dev/null @@ -1,404 +0,0 @@ -dicoCataToFrTelemac = { - "PERIOD_FOR_LISTING_PRINTOUTS" : "PERIODE POUR LES SORTIES LISTING", - "NUMBER_OF_TIME_STEP" : "NOMBRE DE PAS DE TEMPS", - "NUMBER_OF_DIRECTIONS" : "NOMBRE DE DIRECTIONS", - "NUMBER_OF_FREQUENCIES" : "NOMBRE DE FREQUENCES", - "WIND_GENERATION" : "APPORTS DUS AU VENT", - "WHITE_CAPPING_DISSIPATION" : "DISSIPATION PAR MOUTONNEMENT", - "BOTTOM_FRICTION_DISSIPATION" : "DISSIPATION PAR FROTTEMENT SUR LE FOND", - "NON_LINEAR_TRANSFERS_BETWEEN_FREQUENCIES" : "TRANSFERTS NON LINEAIRES INTER-FREQUENCES", - "CURRENTS_FILE_FORMAT" : "FORMAT DU FICHIER DES COURANTS", - "WINDS_FILE_FORMAT" : "FORMAT DU FICHIER DES VENTS", - "NUMBER_OF_ITERATIONS_FOR_THE_SOURCE_TERMS" : "NOMBRE DE SOUS-ITERATIONS POUR LES TERMES SOURCES", - "TYPE_OF_INITIAL_DIRECTIONAL_SPECTRUM" : "TYPE DE SPECTRE DIRECTIONNEL INITIAL", - "DISSIPATION_BY_STRONG_CURRENT" : "DISSIPATION PAR FORT COURANT", - "TIME_INCREMENT_NUMBER_IN_TELEMAC_FILE" : "NUMERO DU PAS DE TEMPS DU FICHIER TELEMAC", - "VECTOR_LENGTH" : "LONGUEUR DU VECTEUR", - "DEPTH_INDUCED_BREAKING_DISSIPATION" : "DISSIPATION PAR DEFERLEMENT", - "DEPTH_INDUCED_BREAKING_1__BJ__QB_COMPUTATION_METHOD" : "DEFERLEMENT 1 (BJ) MODE DE CALCUL DE QB", - "DEPTH_INDUCED_BREAKING_1__BJ__HM_COMPUTATION_METHOD" : "DEFERLEMENT 1 (BJ) MODE DE CALCUL DE HM", - "DEPTH_INDUCED_BREAKING_1__BJ__CHARACTERISTIC_FREQUENCY" : "DEFERLEMENT 1 (BJ) CHOIX FREQUENCE CARACTERISTIQUE", - "DEPTH_INDUCED_BREAKING_2__TG__WEIGHTING_FUNCTION" : "DEFERLEMENT 2 (TG) FONCTION DE PONDERATION", - "DEPTH_INDUCED_BREAKING_2__TG__CHARACTERISTIC_FREQUENCY" : "DEFERLEMENT 2 (TG) CHOIX FREQUENCE CARACTERISTIQUE", - "DEPTH_INDUCED_BREAKING_3__RO__WAVE_HEIGHT_DISTRIBUTION" : "DEFERLEMENT 3 (RO) DISTRIBUTION DES HAUTEURS DE HOULE", - "DEPTH_INDUCED_BREAKING_3__RO__EXPONENT_WEIGHTING_FUNCTION" : "DEFERLEMENT 3 (RO) EXPOSANT FONCTION DE PONDERATION", - "DEPTH_INDUCED_BREAKING_3__RO__CHARACTERISTIC_FREQUENCY" : "DEFERLEMENT 3 (RO) CHOIX FREQUENCE CARACTERISTIQUE", - "DEPTH_INDUCED_BREAKING_4__IH__CHARACTERISTIC_FREQUENCY" : "DEFERLEMENT 4 (IH) CHOIX FREQUENCE CARACTERISTIQUE", - "NUMBER_OF_BREAKING_TIME_STEPS" : "NOMBRE DE SOUS-PAS DE TEMPS POUR LE DEFERLEMENT", - "WAVE_GROWTH_LIMITER" : "LIMITEUR DE CROISSANCE", - "LINEAR_WAVE_GROWTH" : "CROISSANCE LINEAIRE DES VAGUES", - "TRIAD_INTERACTIONS" : "TRANSFERTS ENTRE TRIPLETS DE FREQUENCES", - "TYPE_OF_BOUNDARY_DIRECTIONAL_SPECTRUM" : "TYPE DE SPECTRE DIRECTIONNEL AUX LIMITES", - "TIDE_REFRESHING_PERIOD" : "PERIODE D'ACTUALISATION DE LA MAREE", - "TIDAL_WATER_LEVEL_FILE_FORMAT" : "FORMAT DU FICHIER DU NIVEAU DE LA MAREE", - "RANK_OF_THE_WATER_LEVEL_DATA_IN_THE_TELEMAC_FILE" : "RANG DU NIVEAU DE LA MAREE DANS LE FICHIER TELEMAC", - "INITIAL_ANGULAR_DISTRIBUTION_FUNCTION" : "FONCTION DE REPARTITION ANGULAIRE INITIALE", - "NUMBER_OF_PRIVATE_ARRAYS" : "NOMBRE DE TABLEAUX PRIVES", - "BOUNDARY_ANGULAR_DISTRIBUTION_FUNCTION" : "FONCTION DE REPARTITION ANGULAIRE AUX LIMITES", - "ORIGIN_COORDINATES" : "COORDONNEES DE L'ORIGINE", - "DEBUGGER" : "DEBUGGER", - "SETTING_FOR_INTEGRATION_ON_OMEGA1" : "REGLAGE POUR INTEGRATION SUR OMEGA1", - "SETTING_FOR_INTEGRATION_ON_THETA1" : "REGLAGE POUR INTEGRATION SUR THETA1", - "SETTING_FOR_INTEGRATION_ON_OMEGA2" : "REGLAGE POUR INTEGRATION SUR OMEGA2", - "DIFFRACTION" : "DIFFRACTION", - "STARTING_TIME_STEP_FOR_DIFFFRACTION" : "PAS DE TEMPS DEBUT DIFFRACTION", - "PARALLEL_PROCESSORS" : "PROCESSEURS PARALLELES", - "FINITE_ELEMENT_ASSEMBLY" : "ASSEMBLAGE EN ELEMENTS FINIS", - "BAJ_MODELING" : "MODELISATION BAJ", - "TIME_STEP" : "PAS DE TEMPS", - "MINIMAL_FREQUENCY" : "FREQUENCE MINIMALE", - "FREQUENTIAL_RATIO" : "RAISON FREQUENTIELLE", - "DATE_OF_COMPUTATION_BEGINNING" : "DATE DE DEBUT DU CALCUL", - "BOTTOM_FRICTION_COEFFICIENT" : "COEFFICIENT DE FROTTEMENT SUR LE FOND", - "WHITE_CAPPING_DISSIPATION_COEFFICIENT" : "COEFFICIENT DE DISSIPATION PAR MOUTONNEMENT", - "WHITE_CAPPING_WEIGHTING_COEFFICIENT" : "COEFFICIENT DE PONDERATION POUR LE MOUTONNEMENT", - "AIR_DENSITY" : "DENSITE DE L'AIR", - "WATER_DENSITY" : "DENSITE DE L'EAU", - "WIND_GENERATION_COEFFICIENT" : "COEFFICIENT DE GENERATION PAR LE VENT", - "VON_KARMAN_CONSTANT" : "CONSTANTE DE VON KARMAN", - "CHARNOCK_CONSTANT" : "CONSTANTE DE CHARNOCK", - "SHIFT_GROWING_CURVE_DUE_TO_WIND" : "DECALAGE COURBE DE CROISSANCE DUE AU VENT", - "WIND_MEASUREMENTS_LEVEL" : "COTE DE MESURE DES VENTS", - "WIND_DRAG_COEFFICIENT" : "COEFFICIENT DE TRAINEE DE VENT", - "INITIAL_SIGNIFICANT_WAVE_HEIGHT" : "HAUTEUR SIGNIFICATIVE INITIALE", - "INITIAL_PEAK_FREQUENCY" : "FREQUENCE DE PIC INITIALE", - "INITIAL_PEAK_FACTOR" : "FACTEUR DE PIC INITIAL", - "INITIAL_VALUE_OF_SIGMA_A_FOR_SPECTRUM" : "VALEUR INITIALE DE SIGMA-A POUR SPECTRE", - "INITIAL_VALUE_OF_SIGMA_B_FOR_SPECTRUM" : "VALEUR INITIALE DE SIGMA-B POUR SPECTRE", - "INITIAL_PHILLIPS_CONSTANT" : "CONSTANTE DE PHILLIPS INITIALE", - "INITIAL_MEAN_FETCH_VALUE" : "VALEUR MOYENNE DU FETCH INITIAL", - "INITIAL_MAXIMUM_PEAK_FREQUENCY" : "FREQUENCE DE PIC MAXIMALE INITIALE", - "INITIAL_MAIN_DIRECTION_1" : "DIRECTION PRINCIPALE 1 INITIALE", - "INITIAL_DIRECTIONAL_SPREAD_1" : "ETALEMENT DIRECTIONNEL 1 INITIAL", - "INITIAL_MAIN_DIRECTION_2" : "DIRECTION PRINCIPALE 2 INITIALE", - "INITIAL_DIRECTIONAL_SPREAD_2" : "ETALEMENT DIRECTIONNEL 2 INITIAL", - "INITIAL_WEIGHTING_FACTOR_FOR_ADF" : "FACTEUR DE PONDERATION POUR FRA INITIALE", - "SPECTRUM_TAIL_FACTOR" : "FACTEUR DE QUEUE DU SPECTRE", - "SPECTRUM_ENERGY_THRESHOLD" : "SEUIL D'ENERGIE CONSIDERE POUR LE SPECTRE", - "DEPTH_INDUCED_BREAKING_1__BJ__COEFFICIENT_ALPHA" : "DEFERLEMENT 1 (BJ) CONSTANTE ALPHA", - "DEPTH_INDUCED_BREAKING_1__BJ__COEFFICIENT_GAMMA1" : "DEFERLEMENT 1 (BJ) CONSTANTE GAMMA1", - "DEPTH_INDUCED_BREAKING_1__BJ__COEFFICIENT_GAMMA2" : "DEFERLEMENT 1 (BJ) CONSTANTE GAMMA2", - "DEPTH_INDUCED_BREAKING_2__TG__COEFFICIENT_B" : "DEFERLEMENT 2 (TG) CONSTANTE B", - "DEPTH_INDUCED_BREAKING_2__TG__COEFFICIENT_GAMMA" : "DEFERLEMENT 2 (TG) CONSTANTE GAMMA", - "DEPTH_INDUCED_BREAKING_3__RO__COEFFICIENT_ALPHA" : "DEFERLEMENT 3 (RO) CONSTANTE ALPHA", - "DEPTH_INDUCED_BREAKING_3__RO__COEFFICIENT_GAMMA" : "DEFERLEMENT 3 (RO) CONSTANTE GAMMA", - "DEPTH_INDUCED_BREAKING_3__RO__COEFFICIENT_GAMMA2" : "DEFERLEMENT 3 (RO) CONSTANTE GAMMA2", - "DEPTH_INDUCED_BREAKING_4__IH__COEFFICIENT_BETA0" : "DEFERLEMENT 4 (IH) CONSTANTE BETA0", - "DEPTH_INDUCED_BREAKING_4__IH__COEFFICIENT_M2STAR" : "DEFERLEMENT 4 (IH) CONSTANTE M2STAR", - "MAXIMUM_VALUE_OF_THE_RATIO_HM0_ON_D" : "VALEUR MAXIMALE DU RAPPORT HM0 SUR D", - "COEFFICIENT_OF_THE_TIME_SUB_INCREMENTS_FOR_BREAKING" : "COEFFICIENT POUR LES SOUS-PAS DE TEMPS POUR LE DEFERLEMENT", - "STANDARD_CONFIGURATION_PARAMETER" : "PARAMETRE DE LA CONFIGURATION STANDARD", - "INITIAL_STILL_WATER_LEVEL" : "COTE INITIALE DU PLAN D'EAU AU REPOS", - "TRIADS_1__LTA__COEFFICIENT_ALPHA" : "TRIADS 1 (LTA) CONSTANTE ALPHA", - "TRIADS_1__LTA__COEFFICIENT_RFMLTA" : "TRIADS 1 (LTA) CONSTANTE RFMLTA", - "TRIADS_2__SPB__COEFFICIENT_K" : "TRIADS 2 (SPB) CONSTANTE K", - "TRIADS_2__SPB__LOWER_DIRECTIONAL_BOUNDARY" : "TRIADS 2 (SPB) BORNE DIRECTIONNELLE INFERIEURE", - "TRIADS_2__SPB__UPPER_DIRECTIONAL_BOUNDARY" : "TRIADS 2 (SPB) BORNE DIRECTIONNELLE SUPERIEURE", - "BOUNDARY_SIGNIFICANT_WAVE_HEIGHT" : "HAUTEUR SIGNIFICATIVE AUX LIMITES", - "BOUNDARY_PEAK_FREQUENCY" : "FREQUENCE DE PIC AUX LIMITES", - "BOUNDARY_SPECTRUM_VALUE_OF_SIGMA_A" : "VALEUR AUX LIMITES DE SIGMA-A POUR SPECTRE", - "BOUNDARY_SPECTRUM_VALUE_OF_SIGMA_B" : "VALEUR AUX LIMITES DE SIGMA-B POUR SPECTRE", - "BOUNDARY_PHILLIPS_CONSTANT" : "CONSTANTE DE PHILLIPS AUX LIMITES", - "BOUNDARY_MEAN_FETCH_VALUE" : "VALEUR MOYENNE DU FETCH AUX LIMITES", - "BOUNDARY_MAXIMUM_PEAK_FREQUENCY" : "FREQUENCE DE PIC MAXIMALE AUX LIMITES", - "BOUNDARY_MAIN_DIRECTION_1" : "DIRECTION PRINCIPALE 1 AUX LIMITES", - "BOUNDARY_DIRECTIONAL_SPREAD_1" : "ETALEMENT DIRECTIONNEL 1 AUX LIMITES", - "BOUNDARY_MAIN_DIRECTION_2" : "DIRECTION PRINCIPALE 2 AUX LIMITES", - "BOUNDARY_DIRECTIONAL_SPREAD_2" : "ETALEMENT DIRECTIONNEL 2 AUX LIMITES", - "BOUNDARY_WEIGHTING_FACTOR_FOR_ADF" : "FACTEUR DE PONDERATION POUR FRA AUX LIMITES", - "BOUNDARY_PEAK_FACTOR" : "FACTEUR DE PIC AUX LIMITES", - "MINIMUM_WATER_DEPTH" : "PROFONDEUR D'EAU MINIMALE", - "WIND_VELOCITY_ALONG_X" : "VITESSE DU VENT SUIVANT X", - "WIND_VELOCITY_ALONG_Y" : "VITESSE DU VENT SUIVANT Y", - "IMPLICITATION_COEFFICIENT_FOR_SOURCE_TERMS" : "COEFFICIENT IMPLICITATION POUR TERMES SOURCES", - "YAN_GENERATION_COEFFICIENT_D" : "COEFFICIENT DE GENERATION DE YAN D", - "YAN_GENERATION_COEFFICIENT_E" : "COEFFICIENT DE GENERATION DE YAN E", - "YAN_GENERATION_COEFFICIENT_F" : "COEFFICIENT DE GENERATION DE YAN F", - "YAN_GENERATION_COEFFICIENT_H" : "COEFFICIENT DE GENERATION DE YAN H", - "WESTHUYSEN_DISSIPATION_COEFFICIENT" : "COEFFICIENT DE DISSIPATION DE WESTHUYSEN", - "SATURATION_THRESHOLD_FOR_THE_DISSIPATION" : "SEUIL DE SATURATION POUR LA DISSIPATION", - "WESTHUYSEN_WHITE_CAPPING_DISSIPATION" : "DISSIPATION PAR MOUTONNEMENT DE WESTHUYSEN", - "WESTHUYSEN_WEIGHTING_COEFFICIENT" : "COEFFICIENT DE PONDERATION DE WESTHUYSEN", - "THRESHOLD0_FOR_CONFIGURATIONS_ELIMINATION" : "SEUIL0 ELIMINATION DE CONFIGURATIONS", - "THRESHOLD1_FOR_CONFIGURATIONS_ELIMINATION" : "SEUIL1 ELIMINATION DE CONFIGURATIONS", - "THRESHOLD2_FOR_CONFIGURATIONS_ELIMINATION" : "SEUIL2 ELIMINATION DE CONFIGURATIONS", - "VARIANCE_THRESHOLD_FOR_DIFFRACTION" : "SEUIL DE VARIANCE CONSIDEREE POUR DIFFRACTION", - "TIME_UNIT_IN_CURRENTS_FILE" : "UNITE DE TEMPS DU FICHIER DES COURANTS", - "TIME_UNIT_IN_TIDAL_WATER_LEVEL_FILE" : "UNITE DE TEMPS DU FICHIER DU NIVEAU DE LA MAREE", - "TIME_UNIT_IN_WINDS_FILE" : "UNITE DE TEMPS DU FICHIER DES VENTS", - "TIME_SHIFT_IN_CURRENTS_FILE" : "DEPHASAGE DU FICHIER DES COURANTS", - "TIME_SHIFT_IN_TIDAL_WATER_LEVEL_FILE" : "DEPHASAGE DU FICHIER DU NIVEAU DE LA MAREE", - "TIME_SHIFT_IN_WINDS_FILE" : "DEPHASAGE DU FICHIER DES VENTS", - "DISSIPATION_COEFFICIENT_FOR_STRONG_CURRENT" : "COEFFICIENT DE DISSIPATION PAR FORT COURANT", - "TITLE" : "TITRE", - "VARIABLES_FOR_2D_GRAPHIC_PRINTOUTS" : "VARIABLES POUR LES SORTIES GRAPHIQUES 2D", - "GEOMETRY_FILE" : "FICHIER DE GEOMETRIE", - "GEOMETRY_FILE_FORMAT" : "FORMAT DU FICHIER DE GEOMETRIE", - "FORTRAN_FILE" : "FICHIER FORTRAN", - "STEERING_FILE" : "FICHIER DES PARAMETRES", - "BOUNDARY_CONDITIONS_FILE" : "FICHIER DES CONDITIONS AUX LIMITES", - "BOTTOM_TOPOGRAPHY_FILE" : "FICHIER DES FONDS", - "BOTTOM_SMOOTHINGS" : "LISSAGES DU FOND", - "PERIOD_FOR_GRAPHIC_PRINTOUTS" : "PERIODE POUR LES SORTIES GRAPHIQUES", - "NUMBER_OF_FIRST_ITERATION_FOR_GRAPHICS_PRINTOUTS" : "NUMERO DE LA PREMIERE ITERATION POUR LES SORTIES GRAPHIQUES", - "ED_RESULTS_FILE" : "FICHIER DES RESULTATS 2D", - "ED_RESULTS_FILE_FORMAT" : "FORMAT DU FICHIER DES RESULTATS 2D", - "PUNCTUAL_RESULTS_FILE" : "FICHIER DES RESULTATS PONCTUELS", - "SPECTRUM_FILE_FORMAT" : "FORMAT DU FICHIER DE SPECTRE", - "ABSCISSAE_OF_SPECTRUM_PRINTOUT_POINTS" : "ABSCISSES DES POINTS DE SORTIE DU SPECTRE", - "ORDINATES_OF_SPECTRUM_PRINTOUT_POINTS" : "ORDONNEES DES POINTS DE SORTIE DU SPECTRE", - "NEXT_COMPUTATION" : "SUITE DE CALCUL", - "PREVIOUS_COMPUTATION_FILE" : "FICHIER DU CALCUL PRECEDENT", - "PREVIOUS_COMPUTATION_FILE_FORMAT" : "FORMAT DU FICHIER DU CALCUL PRECEDENT", - "BINARY_CURRENTS_FILE" : "FICHIER DES COURANTS BINAIRE", - "FORMATTED_CURRENTS_FILE" : "FICHIER DES COURANTS FORMATE", - "RELEASE" : "NUMERO DE VERSION", - "BINARY_WINDS_FILE" : "FICHIER DES VENTS BINAIRE", - "BINARY_WINDS_FILE_FORMAT" : "FORMAT DU FICHIER DES VENTS BINAIRE", - "FORMATTED_WINDS_FILE" : "FICHIER DES VENTS FORMATE", - "REFERENCE_FILE" : "FICHIER DE REFERENCE", - "REFERENCE_FILE_FORMAT" : "FORMAT DU FICHIER DE REFERENCE", - "BINARY_TIDAL_WATER_LEVEL_FILE" : "FICHIER DU NIVEAU DE LA MAREE BINAIRE", - "BINARY_TIDAL_WATER_FILE_FORMAT" : "FORMAT DU FICHIER DE LA MAREE BINAIRE", - "FORMATTED_TIDAL_WATER_LEVEL_FILE" : "FICHIER DU NIVEAU DE LA MAREE FORMATE", - "BINARY_CURRENTS_FILE_FORMAT" : "FORMAT DU FICHIER DES COURANTS BINAIRE", - "NAMES_OF_VARIABLES" : "NOMS DES VARIABLES", - "OPTION_FOR_DIAGNOSTIC_TAIL" : "OPTION POUR LA QUEUE DIAGNOSTIQUE", - "OPTION_FOR_SECOND_DERIVATIVES" : "OPTION POUR LES DERIVEES SECONDES", - "ZD_SPECTRA_RESULTS_FILE" : "FICHIER DES RESULTATS SPECTRES 1D", - "GLOBAL_RESULT_FILE" : "FICHIER DES RESULTATS GLOBAUX", - "GLOBAL_RESULT_FILE_FORMAT" : "FORMAT DU FICHIER DES RESULTATS GLOBAUX", - "BINARY_FILE_1" : "FICHIER BINAIRE 1", - "BINARY_DATA_FILE_1_FORMAT" : "FORMAT DU FICHIER DE DONNEES BINAIRE 1", - "FORMATTED_FILE_1" : "FICHIER FORMATE 1", - "LIST_OF_FILES" : "LISTE DES FICHIERS", - "DICTIONARY" : "DICTIONNAIRE", - "PARTITIONING_TOOL" : "PARTITIONNEUR", - "CONSIDERATION_OF_SOURCE_TERMS" : "PRISE EN COMPTE DES TERMES SOURCES", - "SPHERICAL_COORDINATES" : "COORDONNEES SPHERIQUES", - "INFINITE_DEPTH" : "PROFONDEUR INFINIE", - "CONSIDERATION_OF_A_STATIONARY_CURRENT" : "PRISE EN COMPTE D'UN COURANT STATIONNAIRE", - "CONSIDERATION_OF_A_WIND" : "PRISE EN COMPTE DU VENT", - "RECOVERY_OF_TELEMAC_DATA_ITEM" : "RECUPERATION DE DONNEE TELEMAC", - "CONSIDERATION_OF_PROPAGATION" : "PRISE EN COMPTE DE LA PROPAGATION", - "STATIONARY_WIND" : "VENT STATIONNAIRE", - "VALIDATION" : "VALIDATION", - "CONSIDERATION_OF_TIDE" : "PRISE EN COMPTE DE LA MAREE", - "TRIGONOMETRICAL_CONVENTION" : "CONVENTION TRIGONOMETRIQUE", - "LIMIT_SPECTRUM_MODIFIED_BY_USER" : "SPECTRE AUX LIMITES MODIFIE PAR L'UTILISATEUR", - "DIFFRACTION_FILTER" : "FILTRE POUR DIFFRACTION", - "INITIAL_TIME_SET_TO_ZERO" : "REMISE A ZERO DU TEMPS", - "VEGETATION_TAKEN_INTO_ACCOUNT" : "PRISE EN COMPTE DE LA VEGETATION", - "CHECKING_THE_MESH" : "VERIFICATION DU MAILLAGE", - "FILE_WITH_COORDINATES_OF_SPECTRA_TO_WRITE" : "FICHIER DES COORDONNEES DE SPECTRES A ECRIRE", - "FILE_WITH_COORDINATES_OF_SPECTRA_TO_IMPOSE" : "FICHIER DES COORDONNEES DE SPECTRES A IMPOSER", - "IMPOSED_SPECTRA_FILE" : "FICHIER DES SPECTRES IMPOSES", - "IMPOSED_SPECTRA_FILE_FORMAT" : "FORMAT DU FICHIER DES SPECTRES IMPOSES", - "TIME_UNIT_OF_IMPOSED_SPECTRA_FILE" : "UNITE DE TEMPS DU FICHIER DES SPECTRES IMPOSES", - "TIME_SHIFT_OF_IMPOSED_SPECTRA_FILE" : "DEPHASAGE DU FICHIER DES SPECTRES IMPOSES", - "TAKING_INTO_ACCOUNT_SOURCE_TERMS_ON_IMPOSED_BOUNDARIES" : "PRISE EN COMPTE DES TERMES SOURCES SUR LES FRONTIERES IMPOSEES", - "BOUNDARY_CONDITION_BEFORE_TIME_STEP" : "CONDITION LIMITE AVANT LE PAS DE TEMPS", - "ECRET_FOR_SMALL_HEIGHT" : "ECRETAGE POUR HAUTEUR PETITE", -} -dicoCasFrToCata = { - "PERIODE POUR LES SORTIES LISTING" : "PERIOD_FOR_LISTING_PRINTOUTS", - "NOMBRE DE PAS DE TEMPS" : "NUMBER_OF_TIME_STEP", - "NOMBRE DE DIRECTIONS" : "NUMBER_OF_DIRECTIONS", - "NOMBRE DE FREQUENCES" : "NUMBER_OF_FREQUENCIES", - "APPORTS DUS AU VENT" : "WIND_GENERATION", - "DISSIPATION PAR MOUTONNEMENT" : "WHITE_CAPPING_DISSIPATION", - "DISSIPATION PAR FROTTEMENT SUR LE FOND" : "BOTTOM_FRICTION_DISSIPATION", - "TRANSFERTS NON LINEAIRES INTER-FREQUENCES" : "NON_LINEAR_TRANSFERS_BETWEEN_FREQUENCIES", - "FORMAT DU FICHIER DES COURANTS" : "CURRENTS_FILE_FORMAT", - "FORMAT DU FICHIER DES VENTS" : "WINDS_FILE_FORMAT", - "NOMBRE DE SOUS-ITERATIONS POUR LES TERMES SOURCES" : "NUMBER_OF_ITERATIONS_FOR_THE_SOURCE_TERMS", - "TYPE DE SPECTRE DIRECTIONNEL INITIAL" : "TYPE_OF_INITIAL_DIRECTIONAL_SPECTRUM", - "DISSIPATION PAR FORT COURANT" : "DISSIPATION_BY_STRONG_CURRENT", - "NUMERO DU PAS DE TEMPS DU FICHIER TELEMAC" : "TIME_INCREMENT_NUMBER_IN_TELEMAC_FILE", - "LONGUEUR DU VECTEUR" : "VECTOR_LENGTH", - "DISSIPATION PAR DEFERLEMENT" : "DEPTH_INDUCED_BREAKING_DISSIPATION", - "DEFERLEMENT 1 (BJ) MODE DE CALCUL DE QB" : "DEPTH_INDUCED_BREAKING_1__BJ__QB_COMPUTATION_METHOD", - "DEFERLEMENT 1 (BJ) MODE DE CALCUL DE HM" : "DEPTH_INDUCED_BREAKING_1__BJ__HM_COMPUTATION_METHOD", - "DEFERLEMENT 1 (BJ) CHOIX FREQUENCE CARACTERISTIQUE" : "DEPTH_INDUCED_BREAKING_1__BJ__CHARACTERISTIC_FREQUENCY", - "DEFERLEMENT 2 (TG) FONCTION DE PONDERATION" : "DEPTH_INDUCED_BREAKING_2__TG__WEIGHTING_FUNCTION", - "DEFERLEMENT 2 (TG) CHOIX FREQUENCE CARACTERISTIQUE" : "DEPTH_INDUCED_BREAKING_2__TG__CHARACTERISTIC_FREQUENCY", - "DEFERLEMENT 3 (RO) DISTRIBUTION DES HAUTEURS DE HOULE" : "DEPTH_INDUCED_BREAKING_3__RO__WAVE_HEIGHT_DISTRIBUTION", - "DEFERLEMENT 3 (RO) EXPOSANT FONCTION DE PONDERATION" : "DEPTH_INDUCED_BREAKING_3__RO__EXPONENT_WEIGHTING_FUNCTION", - "DEFERLEMENT 3 (RO) CHOIX FREQUENCE CARACTERISTIQUE" : "DEPTH_INDUCED_BREAKING_3__RO__CHARACTERISTIC_FREQUENCY", - "DEFERLEMENT 4 (IH) CHOIX FREQUENCE CARACTERISTIQUE" : "DEPTH_INDUCED_BREAKING_4__IH__CHARACTERISTIC_FREQUENCY", - "NOMBRE DE SOUS-PAS DE TEMPS POUR LE DEFERLEMENT" : "NUMBER_OF_BREAKING_TIME_STEPS", - "LIMITEUR DE CROISSANCE" : "WAVE_GROWTH_LIMITER", - "CROISSANCE LINEAIRE DES VAGUES" : "LINEAR_WAVE_GROWTH", - "TRANSFERTS ENTRE TRIPLETS DE FREQUENCES" : "TRIAD_INTERACTIONS", - "TYPE DE SPECTRE DIRECTIONNEL AUX LIMITES" : "TYPE_OF_BOUNDARY_DIRECTIONAL_SPECTRUM", - "PERIODE D'ACTUALISATION DE LA MAREE" : "TIDE_REFRESHING_PERIOD", - "FORMAT DU FICHIER DU NIVEAU DE LA MAREE" : "TIDAL_WATER_LEVEL_FILE_FORMAT", - "RANG DU NIVEAU DE LA MAREE DANS LE FICHIER TELEMAC" : "RANK_OF_THE_WATER_LEVEL_DATA_IN_THE_TELEMAC_FILE", - "FONCTION DE REPARTITION ANGULAIRE INITIALE" : "INITIAL_ANGULAR_DISTRIBUTION_FUNCTION", - "NOMBRE DE TABLEAUX PRIVES" : "NUMBER_OF_PRIVATE_ARRAYS", - "FONCTION DE REPARTITION ANGULAIRE AUX LIMITES" : "BOUNDARY_ANGULAR_DISTRIBUTION_FUNCTION", - "COORDONNEES DE L'ORIGINE" : "ORIGIN_COORDINATES", - "DEBUGGER" : "DEBUGGER", - "REGLAGE POUR INTEGRATION SUR OMEGA1" : "SETTING_FOR_INTEGRATION_ON_OMEGA1", - "REGLAGE POUR INTEGRATION SUR THETA1" : "SETTING_FOR_INTEGRATION_ON_THETA1", - "REGLAGE POUR INTEGRATION SUR OMEGA2" : "SETTING_FOR_INTEGRATION_ON_OMEGA2", - "DIFFRACTION" : "DIFFRACTION", - "PAS DE TEMPS DEBUT DIFFRACTION" : "STARTING_TIME_STEP_FOR_DIFFFRACTION", - "PROCESSEURS PARALLELES" : "PARALLEL_PROCESSORS", - "ASSEMBLAGE EN ELEMENTS FINIS" : "FINITE_ELEMENT_ASSEMBLY", - "MODELISATION BAJ" : "BAJ_MODELING", - "PAS DE TEMPS" : "TIME_STEP", - "FREQUENCE MINIMALE" : "MINIMAL_FREQUENCY", - "RAISON FREQUENTIELLE" : "FREQUENTIAL_RATIO", - "DATE DE DEBUT DU CALCUL" : "DATE_OF_COMPUTATION_BEGINNING", - "COEFFICIENT DE FROTTEMENT SUR LE FOND" : "BOTTOM_FRICTION_COEFFICIENT", - "COEFFICIENT DE DISSIPATION PAR MOUTONNEMENT" : "WHITE_CAPPING_DISSIPATION_COEFFICIENT", - "COEFFICIENT DE PONDERATION POUR LE MOUTONNEMENT" : "WHITE_CAPPING_WEIGHTING_COEFFICIENT", - "DENSITE DE L'AIR" : "AIR_DENSITY", - "DENSITE DE L'EAU" : "WATER_DENSITY", - "COEFFICIENT DE GENERATION PAR LE VENT" : "WIND_GENERATION_COEFFICIENT", - "CONSTANTE DE VON KARMAN" : "VON_KARMAN_CONSTANT", - "CONSTANTE DE CHARNOCK" : "CHARNOCK_CONSTANT", - "DECALAGE COURBE DE CROISSANCE DUE AU VENT" : "SHIFT_GROWING_CURVE_DUE_TO_WIND", - "COTE DE MESURE DES VENTS" : "WIND_MEASUREMENTS_LEVEL", - "COEFFICIENT DE TRAINEE DE VENT" : "WIND_DRAG_COEFFICIENT", - "HAUTEUR SIGNIFICATIVE INITIALE" : "INITIAL_SIGNIFICANT_WAVE_HEIGHT", - "FREQUENCE DE PIC INITIALE" : "INITIAL_PEAK_FREQUENCY", - "FACTEUR DE PIC INITIAL" : "INITIAL_PEAK_FACTOR", - "VALEUR INITIALE DE SIGMA-A POUR SPECTRE" : "INITIAL_VALUE_OF_SIGMA_A_FOR_SPECTRUM", - "VALEUR INITIALE DE SIGMA-B POUR SPECTRE" : "INITIAL_VALUE_OF_SIGMA_B_FOR_SPECTRUM", - "CONSTANTE DE PHILLIPS INITIALE" : "INITIAL_PHILLIPS_CONSTANT", - "VALEUR MOYENNE DU FETCH INITIAL" : "INITIAL_MEAN_FETCH_VALUE", - "FREQUENCE DE PIC MAXIMALE INITIALE" : "INITIAL_MAXIMUM_PEAK_FREQUENCY", - "DIRECTION PRINCIPALE 1 INITIALE" : "INITIAL_MAIN_DIRECTION_1", - "ETALEMENT DIRECTIONNEL 1 INITIAL" : "INITIAL_DIRECTIONAL_SPREAD_1", - "DIRECTION PRINCIPALE 2 INITIALE" : "INITIAL_MAIN_DIRECTION_2", - "ETALEMENT DIRECTIONNEL 2 INITIAL" : "INITIAL_DIRECTIONAL_SPREAD_2", - "FACTEUR DE PONDERATION POUR FRA INITIALE" : "INITIAL_WEIGHTING_FACTOR_FOR_ADF", - "FACTEUR DE QUEUE DU SPECTRE" : "SPECTRUM_TAIL_FACTOR", - "SEUIL D'ENERGIE CONSIDERE POUR LE SPECTRE" : "SPECTRUM_ENERGY_THRESHOLD", - "DEFERLEMENT 1 (BJ) CONSTANTE ALPHA" : "DEPTH_INDUCED_BREAKING_1__BJ__COEFFICIENT_ALPHA", - "DEFERLEMENT 1 (BJ) CONSTANTE GAMMA1" : "DEPTH_INDUCED_BREAKING_1__BJ__COEFFICIENT_GAMMA1", - "DEFERLEMENT 1 (BJ) CONSTANTE GAMMA2" : "DEPTH_INDUCED_BREAKING_1__BJ__COEFFICIENT_GAMMA2", - "DEFERLEMENT 2 (TG) CONSTANTE B" : "DEPTH_INDUCED_BREAKING_2__TG__COEFFICIENT_B", - "DEFERLEMENT 2 (TG) CONSTANTE GAMMA" : "DEPTH_INDUCED_BREAKING_2__TG__COEFFICIENT_GAMMA", - "DEFERLEMENT 3 (RO) CONSTANTE ALPHA" : "DEPTH_INDUCED_BREAKING_3__RO__COEFFICIENT_ALPHA", - "DEFERLEMENT 3 (RO) CONSTANTE GAMMA" : "DEPTH_INDUCED_BREAKING_3__RO__COEFFICIENT_GAMMA", - "DEFERLEMENT 3 (RO) CONSTANTE GAMMA2" : "DEPTH_INDUCED_BREAKING_3__RO__COEFFICIENT_GAMMA2", - "DEFERLEMENT 4 (IH) CONSTANTE BETA0" : "DEPTH_INDUCED_BREAKING_4__IH__COEFFICIENT_BETA0", - "DEFERLEMENT 4 (IH) CONSTANTE M2STAR" : "DEPTH_INDUCED_BREAKING_4__IH__COEFFICIENT_M2STAR", - "VALEUR MAXIMALE DU RAPPORT HM0 SUR D" : "MAXIMUM_VALUE_OF_THE_RATIO_HM0_ON_D", - "COEFFICIENT POUR LES SOUS-PAS DE TEMPS POUR LE DEFERLEMENT" : "COEFFICIENT_OF_THE_TIME_SUB_INCREMENTS_FOR_BREAKING", - "PARAMETRE DE LA CONFIGURATION STANDARD" : "STANDARD_CONFIGURATION_PARAMETER", - "COTE INITIALE DU PLAN D'EAU AU REPOS" : "INITIAL_STILL_WATER_LEVEL", - "TRIADS 1 (LTA) CONSTANTE ALPHA" : "TRIADS_1__LTA__COEFFICIENT_ALPHA", - "TRIADS 1 (LTA) CONSTANTE RFMLTA" : "TRIADS_1__LTA__COEFFICIENT_RFMLTA", - "TRIADS 2 (SPB) CONSTANTE K" : "TRIADS_2__SPB__COEFFICIENT_K", - "TRIADS 2 (SPB) BORNE DIRECTIONNELLE INFERIEURE" : "TRIADS_2__SPB__LOWER_DIRECTIONAL_BOUNDARY", - "TRIADS 2 (SPB) BORNE DIRECTIONNELLE SUPERIEURE" : "TRIADS_2__SPB__UPPER_DIRECTIONAL_BOUNDARY", - "HAUTEUR SIGNIFICATIVE AUX LIMITES" : "BOUNDARY_SIGNIFICANT_WAVE_HEIGHT", - "FREQUENCE DE PIC AUX LIMITES" : "BOUNDARY_PEAK_FREQUENCY", - "VALEUR AUX LIMITES DE SIGMA-A POUR SPECTRE" : "BOUNDARY_SPECTRUM_VALUE_OF_SIGMA_A", - "VALEUR AUX LIMITES DE SIGMA-B POUR SPECTRE" : "BOUNDARY_SPECTRUM_VALUE_OF_SIGMA_B", - "CONSTANTE DE PHILLIPS AUX LIMITES" : "BOUNDARY_PHILLIPS_CONSTANT", - "VALEUR MOYENNE DU FETCH AUX LIMITES" : "BOUNDARY_MEAN_FETCH_VALUE", - "FREQUENCE DE PIC MAXIMALE AUX LIMITES" : "BOUNDARY_MAXIMUM_PEAK_FREQUENCY", - "DIRECTION PRINCIPALE 1 AUX LIMITES" : "BOUNDARY_MAIN_DIRECTION_1", - "ETALEMENT DIRECTIONNEL 1 AUX LIMITES" : "BOUNDARY_DIRECTIONAL_SPREAD_1", - "DIRECTION PRINCIPALE 2 AUX LIMITES" : "BOUNDARY_MAIN_DIRECTION_2", - "ETALEMENT DIRECTIONNEL 2 AUX LIMITES" : "BOUNDARY_DIRECTIONAL_SPREAD_2", - "FACTEUR DE PONDERATION POUR FRA AUX LIMITES" : "BOUNDARY_WEIGHTING_FACTOR_FOR_ADF", - "FACTEUR DE PIC AUX LIMITES" : "BOUNDARY_PEAK_FACTOR", - "PROFONDEUR D'EAU MINIMALE" : "MINIMUM_WATER_DEPTH", - "VITESSE DU VENT SUIVANT X" : "WIND_VELOCITY_ALONG_X", - "VITESSE DU VENT SUIVANT Y" : "WIND_VELOCITY_ALONG_Y", - "COEFFICIENT IMPLICITATION POUR TERMES SOURCES" : "IMPLICITATION_COEFFICIENT_FOR_SOURCE_TERMS", - "COEFFICIENT DE GENERATION DE YAN D" : "YAN_GENERATION_COEFFICIENT_D", - "COEFFICIENT DE GENERATION DE YAN E" : "YAN_GENERATION_COEFFICIENT_E", - "COEFFICIENT DE GENERATION DE YAN F" : "YAN_GENERATION_COEFFICIENT_F", - "COEFFICIENT DE GENERATION DE YAN H" : "YAN_GENERATION_COEFFICIENT_H", - "COEFFICIENT DE DISSIPATION DE WESTHUYSEN" : "WESTHUYSEN_DISSIPATION_COEFFICIENT", - "SEUIL DE SATURATION POUR LA DISSIPATION" : "SATURATION_THRESHOLD_FOR_THE_DISSIPATION", - "DISSIPATION PAR MOUTONNEMENT DE WESTHUYSEN" : "WESTHUYSEN_WHITE_CAPPING_DISSIPATION", - "COEFFICIENT DE PONDERATION DE WESTHUYSEN" : "WESTHUYSEN_WEIGHTING_COEFFICIENT", - "SEUIL0 ELIMINATION DE CONFIGURATIONS" : "THRESHOLD0_FOR_CONFIGURATIONS_ELIMINATION", - "SEUIL1 ELIMINATION DE CONFIGURATIONS" : "THRESHOLD1_FOR_CONFIGURATIONS_ELIMINATION", - "SEUIL2 ELIMINATION DE CONFIGURATIONS" : "THRESHOLD2_FOR_CONFIGURATIONS_ELIMINATION", - "SEUIL DE VARIANCE CONSIDEREE POUR DIFFRACTION" : "VARIANCE_THRESHOLD_FOR_DIFFRACTION", - "UNITE DE TEMPS DU FICHIER DES COURANTS" : "TIME_UNIT_IN_CURRENTS_FILE", - "UNITE DE TEMPS DU FICHIER DU NIVEAU DE LA MAREE" : "TIME_UNIT_IN_TIDAL_WATER_LEVEL_FILE", - "UNITE DE TEMPS DU FICHIER DES VENTS" : "TIME_UNIT_IN_WINDS_FILE", - "DEPHASAGE DU FICHIER DES COURANTS" : "TIME_SHIFT_IN_CURRENTS_FILE", - "DEPHASAGE DU FICHIER DU NIVEAU DE LA MAREE" : "TIME_SHIFT_IN_TIDAL_WATER_LEVEL_FILE", - "DEPHASAGE DU FICHIER DES VENTS" : "TIME_SHIFT_IN_WINDS_FILE", - "COEFFICIENT DE DISSIPATION PAR FORT COURANT" : "DISSIPATION_COEFFICIENT_FOR_STRONG_CURRENT", - "TITRE" : "TITLE", - "VARIABLES POUR LES SORTIES GRAPHIQUES 2D" : "VARIABLES_FOR_2D_GRAPHIC_PRINTOUTS", - "FICHIER DE GEOMETRIE" : "GEOMETRY_FILE", - "FORMAT DU FICHIER DE GEOMETRIE" : "GEOMETRY_FILE_FORMAT", - "FICHIER FORTRAN" : "FORTRAN_FILE", - "FICHIER DES PARAMETRES" : "STEERING_FILE", - "FICHIER DES CONDITIONS AUX LIMITES" : "BOUNDARY_CONDITIONS_FILE", - "FICHIER DES FONDS" : "BOTTOM_TOPOGRAPHY_FILE", - "LISSAGES DU FOND" : "BOTTOM_SMOOTHINGS", - "PERIODE POUR LES SORTIES GRAPHIQUES" : "PERIOD_FOR_GRAPHIC_PRINTOUTS", - "NUMERO DE LA PREMIERE ITERATION POUR LES SORTIES GRAPHIQUES" : "NUMBER_OF_FIRST_ITERATION_FOR_GRAPHICS_PRINTOUTS", - "FICHIER DES RESULTATS 2D" : "ED_RESULTS_FILE", - "FORMAT DU FICHIER DES RESULTATS 2D" : "ED_RESULTS_FILE_FORMAT", - "FICHIER DES RESULTATS PONCTUELS" : "PUNCTUAL_RESULTS_FILE", - "FORMAT DU FICHIER DE SPECTRE" : "SPECTRUM_FILE_FORMAT", - "ABSCISSES DES POINTS DE SORTIE DU SPECTRE" : "ABSCISSAE_OF_SPECTRUM_PRINTOUT_POINTS", - "ORDONNEES DES POINTS DE SORTIE DU SPECTRE" : "ORDINATES_OF_SPECTRUM_PRINTOUT_POINTS", - "SUITE DE CALCUL" : "NEXT_COMPUTATION", - "FICHIER DU CALCUL PRECEDENT" : "PREVIOUS_COMPUTATION_FILE", - "FORMAT DU FICHIER DU CALCUL PRECEDENT" : "PREVIOUS_COMPUTATION_FILE_FORMAT", - "FICHIER DES COURANTS BINAIRE" : "BINARY_CURRENTS_FILE", - "FICHIER DES COURANTS FORMATE" : "FORMATTED_CURRENTS_FILE", - "NUMERO DE VERSION" : "RELEASE", - "FICHIER DES VENTS BINAIRE" : "BINARY_WINDS_FILE", - "FORMAT DU FICHIER DES VENTS BINAIRE" : "BINARY_WINDS_FILE_FORMAT", - "FICHIER DES VENTS FORMATE" : "FORMATTED_WINDS_FILE", - "FICHIER DE REFERENCE" : "REFERENCE_FILE", - "FORMAT DU FICHIER DE REFERENCE" : "REFERENCE_FILE_FORMAT", - "FICHIER DU NIVEAU DE LA MAREE BINAIRE" : "BINARY_TIDAL_WATER_LEVEL_FILE", - "FORMAT DU FICHIER DE LA MAREE BINAIRE" : "BINARY_TIDAL_WATER_FILE_FORMAT", - "FICHIER DU NIVEAU DE LA MAREE FORMATE" : "FORMATTED_TIDAL_WATER_LEVEL_FILE", - "FORMAT DU FICHIER DES COURANTS BINAIRE" : "BINARY_CURRENTS_FILE_FORMAT", - "NOMS DES VARIABLES" : "NAMES_OF_VARIABLES", - "OPTION POUR LA QUEUE DIAGNOSTIQUE" : "OPTION_FOR_DIAGNOSTIC_TAIL", - "OPTION POUR LES DERIVEES SECONDES" : "OPTION_FOR_SECOND_DERIVATIVES", - "FICHIER DES RESULTATS SPECTRES 1D" : "ZD_SPECTRA_RESULTS_FILE", - "FICHIER DES RESULTATS GLOBAUX" : "GLOBAL_RESULT_FILE", - "FORMAT DU FICHIER DES RESULTATS GLOBAUX" : "GLOBAL_RESULT_FILE_FORMAT", - "FICHIER BINAIRE 1" : "BINARY_FILE_1", - "FORMAT DU FICHIER DE DONNEES BINAIRE 1" : "BINARY_DATA_FILE_1_FORMAT", - "FICHIER FORMATE 1" : "FORMATTED_FILE_1", - "LISTE DES FICHIERS" : "LIST_OF_FILES", - "DICTIONNAIRE" : "DICTIONARY", - "PARTITIONNEUR" : "PARTITIONING_TOOL", - "PRISE EN COMPTE DES TERMES SOURCES" : "CONSIDERATION_OF_SOURCE_TERMS", - "COORDONNEES SPHERIQUES" : "SPHERICAL_COORDINATES", - "PROFONDEUR INFINIE" : "INFINITE_DEPTH", - "PRISE EN COMPTE D'UN COURANT STATIONNAIRE" : "CONSIDERATION_OF_A_STATIONARY_CURRENT", - "PRISE EN COMPTE DU VENT" : "CONSIDERATION_OF_A_WIND", - "RECUPERATION DE DONNEE TELEMAC" : "RECOVERY_OF_TELEMAC_DATA_ITEM", - "PRISE EN COMPTE DE LA PROPAGATION" : "CONSIDERATION_OF_PROPAGATION", - "VENT STATIONNAIRE" : "STATIONARY_WIND", - "VALIDATION" : "VALIDATION", - "PRISE EN COMPTE DE LA MAREE" : "CONSIDERATION_OF_TIDE", - "CONVENTION TRIGONOMETRIQUE" : "TRIGONOMETRICAL_CONVENTION", - "SPECTRE AUX LIMITES MODIFIE PAR L'UTILISATEUR" : "LIMIT_SPECTRUM_MODIFIED_BY_USER", - "FILTRE POUR DIFFRACTION" : "DIFFRACTION_FILTER", - "REMISE A ZERO DU TEMPS" : "INITIAL_TIME_SET_TO_ZERO", - "PRISE EN COMPTE DE LA VEGETATION" : "VEGETATION_TAKEN_INTO_ACCOUNT", - "VERIFICATION DU MAILLAGE" : "CHECKING_THE_MESH", - "FICHIER DES COORDONNEES DE SPECTRES A ECRIRE" : "FILE_WITH_COORDINATES_OF_SPECTRA_TO_WRITE", - "FICHIER DES COORDONNEES DE SPECTRES A IMPOSER" : "FILE_WITH_COORDINATES_OF_SPECTRA_TO_IMPOSE", - "FICHIER DES SPECTRES IMPOSES" : "IMPOSED_SPECTRA_FILE", - "FORMAT DU FICHIER DES SPECTRES IMPOSES" : "IMPOSED_SPECTRA_FILE_FORMAT", - "UNITE DE TEMPS DU FICHIER DES SPECTRES IMPOSES" : "TIME_UNIT_OF_IMPOSED_SPECTRA_FILE", - "DEPHASAGE DU FICHIER DES SPECTRES IMPOSES" : "TIME_SHIFT_OF_IMPOSED_SPECTRA_FILE", - "PRISE EN COMPTE DES TERMES SOURCES SUR LES FRONTIERES IMPOSEES" : "TAKING_INTO_ACCOUNT_SOURCE_TERMS_ON_IMPOSED_BOUNDARIES", - "CONDITION LIMITE AVANT LE PAS DE TEMPS" : "BOUNDARY_CONDITION_BEFORE_TIME_STEP", - "ECRETAGE POUR HAUTEUR PETITE" : "ECRET_FOR_SMALL_HEIGHT", -} diff --git a/Telemac/tomawac_enum_auto.py b/Telemac/tomawac_enum_auto.py deleted file mode 100644 index b2632f61..00000000 --- a/Telemac/tomawac_enum_auto.py +++ /dev/null @@ -1,890 +0,0 @@ -#/usr/bin/env python -# -*- coding: latin-1 -*- -TelemacdicoEn = { -'WIND_GENERATION' : { - 0:"No wind generation", - 1:"Wind generation in accordance with WAM cycle 4", - 2:"Wind generation in accordance with WAM cycle 3", - 3:"Wind generation in accordance with Yan expression (1987)", - }, -'WHITE_CAPPING_DISSIPATION' : { - 0:"No white capping dissipation", - 1:"Dissipation in accordance with WAM cycle 4", - 2:"Dissipation in accordance with Van des Westhuysen(2007)", - }, -'BOTTOM_FRICTION_DISSIPATION' : { - 0:"No bottom friction dissipation", - 1:"Dissipation in accordance with WAM cycle 4", - }, -'NON_LINEAR_TRANSFERS_BETWEEN_FREQUENCIES' : { - 0:"No non-linear transfers term", - 1:"Non-linear transfers term with WAM cycle 4 (DIA Method)", - 2:"Non-linear transfers term in accordance with MDIA Method", - 3:"Non-linear transfers term calculated with exact GQM Method", - }, -'CURRENTS_FILE_FORMAT' : { - 3:"Selafin, TELEMAC type", - 4:"User format (couuti.f)", - }, -'WINDS_FILE_FORMAT' : { - 3:"Selafin, TELEMAC type", - 4:"User format (venuti.f)", - }, -'TYPE_OF_INITIAL_DIRECTIONAL_SPECTRUM' : { - 0:"non-existent spectrum", - 1:"JONSWAP spectrum 1", - 2:"JONSWAP spectrum 2", - 3:"JONSWAP spectrum 3", - 4:"JONSWAP spectrum 4", - 5:"JONSWAP spectrum 5", - 6:"JONSWAP spectrum 6", - 7:"TMA spectrum", - }, -'DISSIPATION_BY_STRONG_CURRENT' : { - 0:"No wave-blocking", - 1:"Spectrum limitation by a Phillips shape", - 2:"Dissipation in accordance with Van der Westhuysen(2012)", - }, -'DEPTH_INDUCED_BREAKING_DISSIPATION' : { - 0:"No breaking", - 1:"Dissipation in accordance with Battjes et Janssen (1978)", - 2:"Dissipation in accordance with Thornton et Guza (1983)", - 3:"Dissipation in accordance with Roelvink (1993)", - 4:"Dissipation in accordance with Izumiya et Horikawa (1984)", - }, -'DEPTH_INDUCED_BREAKING_1__BJ__QB_COMPUTATION_METHOD' : { - 0:"SOLVES BY DICHOTOMY", - 1:"EXPLICIT INSPIRED FROM CREDIZ VERSION 1", - 2:"EXPLICIT INSPIRED FROM CREDIZ VERSION 2", - 3:"EXPLICIT INSPIRED FROM CREDIZ VERSION 3", - }, -'DEPTH_INDUCED_BREAKING_1__BJ__HM_COMPUTATION_METHOD' : { - 1:"Hm = GAMMA*D", - 2:"Hm given by the Miche criterium", - }, -'DEPTH_INDUCED_BREAKING_1__BJ__CHARACTERISTIC_FREQUENCY' : { - 1:"Frequency Fmoy", - 2:"Frequency F01", - 3:"Frequency F02", - 4:"Frequency Fpic", - 5:"Frequency Fread ordre 5", - 6:"Frequency Fread ordre 8", - }, -'DEPTH_INDUCED_BREAKING_2__TG__WEIGHTING_FUNCTION' : { - 1:"Weight function 1", - 2:"Weight function 2", - }, -'DEPTH_INDUCED_BREAKING_2__TG__CHARACTERISTIC_FREQUENCY' : { - 1:"Frequency Fmoy", - 2:"Frequency F01", - 3:"Frequency F02", - 4:"Frequency Fpic", - 5:"Frequency Fread ordre 5", - 6:"Frequency Fread ordre 8", - }, -'DEPTH_INDUCED_BREAKING_3__RO__WAVE_HEIGHT_DISTRIBUTION' : { - 1:"Weibull", - 2:"Rayleigh", - }, -'DEPTH_INDUCED_BREAKING_3__RO__CHARACTERISTIC_FREQUENCY' : { - 1:"Frequency Fmoy", - 2:"Frequency F01", - 3:"Frequency F02", - 4:"Frequency Fpic", - 5:"Frequency Fread ordre 5", - 6:"Frequency Fread ordre 8", - }, -'DEPTH_INDUCED_BREAKING_4__IH__CHARACTERISTIC_FREQUENCY' : { - 1:"Frequency Fmoy", - 2:"Frequency F01", - 3:"Frequency F02", - 4:"Frequency Fpic", - 5:"Frequency Fread ordre 5", - 6:"Frequency Fread ordre 8", - }, -'WAVE_GROWTH_LIMITER' : { - 0:"no wave growth limiter", - 1:"WAM 4 original limiter", - 2:"Hersbach et Janssen (1999) limiter", - 3:"Laugel-BAJ limiter", - }, -'LINEAR_WAVE_GROWTH' : { - 0:"the linear wave growth is ignored", - 1:"linear wave growth as in Cavaleri and Malanotte-Rizzoli (1981)", - }, -'TRIAD_INTERACTIONS' : { - 0:"no triad interactions", - 1:"LTA model (Eldeberky, 1996)", - 2:"SPB model (Becq, 1998)", - }, -'TYPE_OF_BOUNDARY_DIRECTIONAL_SPECTRUM' : { - 0:"non-existent spectrum", - 1:"JONSWAP spectrum 1", - 2:"JONSWAP spectrum 2", - 3:"JONSWAP spectrum 3", - 4:"JONSWAP spectrum 4", - 5:"JONSWAP spectrum 5", - 6:"JONSWAP spectrum 6", - 7:"TMA spectrum", - }, -'TIDAL_WATER_LEVEL_FILE_FORMAT' : { - 3:"Selafin, TELEMAC type", - 4:"User format (maruti.f)", - }, -'INITIAL_ANGULAR_DISTRIBUTION_FUNCTION' : { - 1:"$cos{^2s}(T-T0)$, T in [T0-pi/2,T0+pi/2]", - 2:"$exp(-0.5((T-T0)/s)^2)$, T in [T0-pi/2,T0+pi/2]", - 3:"$cos{^2s}((T-T0)/2)$ (de type Mitsuyasu)", - }, -'BOUNDARY_ANGULAR_DISTRIBUTION_FUNCTION' : { - 1:"$cos{^2s}(T-T0)$, T in [T0-pi/2,T0+pi/2]", - 2:"$exp(-0.5((T-T0)/s)^2)$, T in [T0-pi/2,T0+pi/2]", - 3:"$cos{^2s}((T-T0)/2)$ (de type Mitsuyasu)", - }, -'SETTING_FOR_INTEGRATION_ON_OMEGA1' : { - 1:"medium", - 2:"fine", - 3:"rough", - }, -'SETTING_FOR_INTEGRATION_ON_THETA1' : { - 3:"rough", - 4:"medium", - 8:"fine", - }, -'SETTING_FOR_INTEGRATION_ON_OMEGA2' : { - 6:"rough", - 8:"medium", - 12:"fine", - }, -'DIFFRACTION' : { - 0:"Diffraction is not taken into account", - 1:"Mild Slope Equation model (Berkhoff - 1972)", - 2:"Revised Mild Slope Equation model (Porter - 2003)", - }, -'BAJ_MODELING' : { - 0:"classical modelisation", - 1:"BAJ Modeling", - }, -'VARIABLES_FOR_2D_GRAPHIC_PRINTOUTS' : { - 'M0':"Total variance (m2)", - 'HM0':"Spectral significant wave height (m)", - 'DMOY':"Mean wave direction (deg)", - 'SPD':"Mean directional spreading (deg)", - 'ZF':"Sea bottom level (m)", - 'WD':"Water depth (m)", - 'UX':"Current along X (m/s)", - 'UY':"Current along Y (m/s)", - 'VX':"Wind along X (m/s)", - 'VY':"Wind along Y (m/s)", - 'FX':"Driving force along X (m/s2)", - 'FY':"Driving force along Y (m/s2)", - 'SXX':"Radiation stress along xx (m3/s2)", - 'SYY':"Radiation stress along yy (m3/s2)", - 'SXY':"Radiation stress along xy (m3/s2)", - 'UWB':"Bottom celerity (m/s)", - 'POW':"Wave power (per meter along wave crest) (kW/m)", - 'FMOY':"Mean frequency FMOY (Hz)", - 'FM01':"Mean frequency FM01 (Hz)", - 'FM02':"Mean frequency FM02 (Hz)", - 'FPD':"Discrete peak frequency (Hz)", - 'FPR5':"Peak frequency by Read method of order 5 (Hz)", - 'FPR8':"Peak frequency by Read method of order 8 (Hz)", - 'US':"Surface friction velocity u* (m/s)", - 'CD':"Surface drag coefficient CD (-)", - 'Z0':"Surface roughness length Z0 (m)", - 'WS':"Surface wave stress (kg/(m.s2))", - 'TMOY':"Mean period Tmoy (s)", - 'TM01':"Mean period Tm01 (s)", - 'TM02':"Mean period Tm02 (s)", - 'TPD':"Discrete peak period (s)", - 'TPR5':"Peak period by Read method of order 5 (s)", - 'TPR8':"Peak period by Read method of order 8 (s)", - 'PRI':"Private table (?)", - 'BETA':"Breaking waves coefficient (-)", - }, -} -TelemacdicoFr = { -'WIND_GENERATION' : { - 0:"Pas d apport par le vent", - 1:"Apport dus au vent selon WAM cycle 4", - 2:"Apport dus au vent selon WAM cycle 3", - 3:"Apport dus au vent selon expression de Yan (1987)", - }, -'WHITE_CAPPING_DISSIPATION' : { - 0:"Pas dissipation par moutonnement", - 1:"Dissipation selon WAM cycle 4", - 2:"Dissipation selon Van des Westhuysen(2007)", - }, -'BOTTOM_FRICTION_DISSIPATION' : { - 0:"Pas de dissipation par frottement au fond", - 1:"Dissipation selon WAM cycle 4", - }, -'NON_LINEAR_TRANSFERS_BETWEEN_FREQUENCIES' : { - 0:"Pas de transfert non lineaire inter-frequences", - 1:"Transfert non lineaire selon WAM cycle 4 (Methode DIA)", - 2:"Transfert non lineaire selon Methode MDIA", - 3:"Transfert non lineaire exact Methode GQM", - }, -'CURRENTS_FILE_FORMAT' : { - 3:"Selafin du type TELEMAC", - 4:"Format utilisateur (couuti.f)", - }, -'WINDS_FILE_FORMAT' : { - 3:"Selafin du type TELEMAC", - 4:"Format utilisateur (venuti.f)", - }, -'TYPE_OF_INITIAL_DIRECTIONAL_SPECTRUM' : { - 0:"Spectre nul", - 1:"Spectre JONSWAP 1", - 2:"Spectre JONSWAP 2", - 3:"Spectre JONSWAP 3", - 4:"Spectre JONSWAP 4", - 5:"Spectre JONSWAP 5", - 6:"Spectre JONSWAP 6", - 7:"Spectre TMA", - }, -'DISSIPATION_BY_STRONG_CURRENT' : { - 0:"Pas de wave-blocking", - 1:"Limitation du spectre par une forme de Phillips", - 2:"Dissipation selon Van der Westhuysen(2012)", - }, -'DEPTH_INDUCED_BREAKING_DISSIPATION' : { - 0:"Pas de deferlement", - 1:"Dissipation selon Battjes et Janssen (1978)", - 2:"Dissipation selon Thornton et Guza (1983)", - 3:"Dissipation selon Roelvink (1993)", - 4:"Dissipation selon Izumiya et Horikawa (1984)", - }, -'DEPTH_INDUCED_BREAKING_1__BJ__QB_COMPUTATION_METHOD' : { - 0:"SOLVES BY DICHOTOMY", - 1:"EXPLICIT INSPIRED FROM CREDIZ VERSION 1", - 2:"EXPLICIT INSPIRED FROM CREDIZ VERSION 2", - 3:"EXPLICIT INSPIRED FROM CREDIZ VERSION 3", - }, -'DEPTH_INDUCED_BREAKING_1__BJ__HM_COMPUTATION_METHOD' : { - 1:"Hm = GAMMA*D", - 2:"Hm par critere de Miche", - }, -'DEPTH_INDUCED_BREAKING_1__BJ__CHARACTERISTIC_FREQUENCY' : { - 1:"Frequence Fmoy", - 2:"Frequence F01", - 3:"Frequence F02", - 4:"Frequence Fpic", - 5:"Frequence Fread ordre 5", - 6:"Frequence Fread ordre 8", - }, -'DEPTH_INDUCED_BREAKING_2__TG__WEIGHTING_FUNCTION' : { - 1:"Weight function 1", - 2:"Weight function 2", - }, -'DEPTH_INDUCED_BREAKING_2__TG__CHARACTERISTIC_FREQUENCY' : { - 1:"Frequence Fmoy", - 2:"Frequence F01", - 3:"Frequence F02", - 4:"Frequence Fpic", - 5:"Frequence Fread ordre 5", - 6:"Frequence Fread ordre 8", - }, -'DEPTH_INDUCED_BREAKING_3__RO__WAVE_HEIGHT_DISTRIBUTION' : { - 1:"Weibull", - 2:"Rayleigh", - }, -'DEPTH_INDUCED_BREAKING_3__RO__CHARACTERISTIC_FREQUENCY' : { - 1:"Frequence Fmoy", - 2:"Frequence F01", - 3:"Frequence F02", - 4:"Frequence Fpic", - 5:"Frequence Fread ordre 5", - 6:"Frequence Fread ordre 8", - }, -'DEPTH_INDUCED_BREAKING_4__IH__CHARACTERISTIC_FREQUENCY' : { - 1:"Frequence Fmoy", - 2:"Frequence F01", - 3:"Frequence F02", - 4:"Frequence Fpic", - 5:"Frequence Fread ordre 5", - 6:"Frequence Fread ordre 8", - }, -'WAVE_GROWTH_LIMITER' : { - 0:"pas de limiteur", - 1:"limiteur type WAM 4 original", - 2:"limiteur de Hersbach et Janssen (1999)", - 3:"Laugel-BAJ limiter", - }, -'LINEAR_WAVE_GROWTH' : { - 0:"pas de terme de croissance lineaire", - 1:"croissance lineaire selon Cavaleri et Malanotte-Rizzoli (1981)", - }, -'TRIAD_INTERACTIONS' : { - 0:"Pas de transfert", - 1:"modele LTA (Eldeberky, 1996)", - 2:"modele SPB (Becq, 1998)", - }, -'TYPE_OF_BOUNDARY_DIRECTIONAL_SPECTRUM' : { - 0:"Spectre nul", - 1:"Spectre JONSWAP 1", - 2:"Spectre JONSWAP 2", - 3:"Spectre JONSWAP 3", - 4:"Spectre JONSWAP 4", - 5:"Spectre JONSWAP 5", - 6:"Spectre JONSWAP 6", - 7:"Spectre TMA", - }, -'TIDAL_WATER_LEVEL_FILE_FORMAT' : { - 3:"Selafin du type TELEMAC", - 4:"Format utilisateur (maruti.f)", - }, -'INITIAL_ANGULAR_DISTRIBUTION_FUNCTION' : { - 1:"$cos{^2s}(T-T0)$, T dans [T0-pi/2,T0+pi/2]", - 2:"$exp(-0.5((T-T0)/s)^2)$, T dans [T0-pi/2,T0+pi/2]", - 3:"$cos{^2s}((T-T0)/2)$ (de type Mitsuyasu)", - }, -'BOUNDARY_ANGULAR_DISTRIBUTION_FUNCTION' : { - 1:"$cos{^2s}(T-T0)$, T dans [T0-pi/2,T0+pi/2]", - 2:"$exp(-0.5((T-T0)/s)^2)$, T dans [T0-pi/2,T0+pi/2]", - 3:"$cos{^2s}((T-T0)/2)$ (de type Mitsuyasu)", - }, -'SETTING_FOR_INTEGRATION_ON_OMEGA1' : { - 1:"moyen", - 2:"fin", - 3:"grossier", - }, -'SETTING_FOR_INTEGRATION_ON_THETA1' : { - 3:"grossier", - 4:"moyen", - 8:"fin", - }, -'SETTING_FOR_INTEGRATION_ON_OMEGA2' : { - 6:"grossier", - 8:"moyen", - 12:"fin", - }, -'DIFFRACTION' : { - 0:"Pas de prise en compte de la diffraction", - 1:"Mild Slope Equation de Berkhoff (1972)", - 2:"Revised Mild Slope Equation de Porter (2003)", - }, -'BAJ_MODELING' : { - 0:"Modelisation classique", - 1:"Modelisation BAJ", - }, -'VARIABLES_FOR_2D_GRAPHIC_PRINTOUTS' : { - 'M0':"variance totale (m2)", - 'HM0':"Hauteur significative spectrale (m)", - 'DMOY':"Direction moyenne de houle (deg)", - 'SPD':"Etalement directionnel moyen (deg)", - 'ZF':"Cote du fond (m)", - 'WD':"Hauteur d eau (m)", - 'UX':"Courant suivant X (m/s)", - 'UY':"Courant suivant Y (m/s)", - 'VX':"Vent suivant X (m/s)", - 'VY':"Vent suivant Y (m/s)", - 'FX':"Force motrice suivant X (m/s2)", - 'FY':"Force motrice suivant Y (m/s2)", - 'SXX':"Contrainte de radiation suivant xx (m3/s2)", - 'SYY':"Contrainte de radiation suivant yy (m3/s2)", - 'SXY':"Contrainte de radiation suivant xy (m3/s2)", - 'UWB':"Vitesse orbitale au fond (m/s)", - 'POW':"Puissance lineique de houle (par metre de crete) (kW/m)", - 'FMOY':"Frequence moyenne FMOY (Hz)", - 'FM01':"Frequence moyenne FM01 (Hz)", - 'FM02':"Frequence moyenne FM02 (Hz)", - 'FPD':"Frequence de pic discrete (Hz)", - 'FPR5':"Frequence de pic de Read ordre 5 (Hz)", - 'FPR8':"Frequence de pic de Read ordre 8 (Hz)", - 'US':"Vitesse de frottement en surface u* (m/s)", - 'CD':"Coefficient de trainee en surface CD (-)", - 'Z0':"Longueur de rugosite en surface Z0 (m)", - 'WS':"Contrainte de houle en surface (kg/(m.s2))", - 'TMOY':"Periode moyenne Tmoy (s)", - 'TM01':"Periode moyenne Tm01 (s)", - 'TM02':"Periode moyenne Tm02 (s)", - 'TPD':"Periode de pic discrete (s)", - 'TPR5':"Periode de pic de Read ordre 5 (s)", - 'TPR8':"Periode de pic de Read ordre 8 (s)", - 'PRI':"tableau prive (?)", - 'BETA':"coefficient de deferlement (-)", - }, -} - -DicoCasFrToCata = { - "PERIODE POUR LES SORTIES LISTING":"PERIOD_FOR_LISTING_PRINTOUTS", - "NOMBRE DE PAS DE TEMPS":"NUMBER_OF_TIME_STEP", - "NOMBRE DE DIRECTIONS":"NUMBER_OF_DIRECTIONS", - "NOMBRE DE FREQUENCES":"NUMBER_OF_FREQUENCIES", - "APPORTS DUS AU VENT":"WIND_GENERATION", - "DISSIPATION PAR MOUTONNEMENT":"WHITE_CAPPING_DISSIPATION", - "DISSIPATION PAR FROTTEMENT SUR LE FOND":"BOTTOM_FRICTION_DISSIPATION", - "TRANSFERTS NON LINEAIRES INTER-FREQUENCES":"NON_LINEAR_TRANSFERS_BETWEEN_FREQUENCIES", - "FORMAT DU FICHIER DES COURANTS":"CURRENTS_FILE_FORMAT", - "FORMAT DU FICHIER DES VENTS":"WINDS_FILE_FORMAT", - "NOMBRE DE SOUS-ITERATIONS POUR LES TERMES SOURCES":"NUMBER_OF_ITERATIONS_FOR_THE_SOURCE_TERMS", - "TYPE DE SPECTRE DIRECTIONNEL INITIAL":"TYPE_OF_INITIAL_DIRECTIONAL_SPECTRUM", - "DISSIPATION PAR FORT COURANT":"DISSIPATION_BY_STRONG_CURRENT", - "NUMERO DU PAS DE TEMPS DU FICHIER TELEMAC":"TIME_INCREMENT_NUMBER_IN_TELEMAC_FILE", - "LONGUEUR DU VECTEUR":"VECTOR_LENGTH", - "DISSIPATION PAR DEFERLEMENT":"DEPTH_INDUCED_BREAKING_DISSIPATION", - "DEFERLEMENT 1 (BJ) MODE DE CALCUL DE QB":"DEPTH_INDUCED_BREAKING_1__BJ__QB_COMPUTATION_METHOD", - "DEFERLEMENT 1 (BJ) MODE DE CALCUL DE HM":"DEPTH_INDUCED_BREAKING_1__BJ__HM_COMPUTATION_METHOD", - "DEFERLEMENT 1 (BJ) CHOIX FREQUENCE CARACTERISTIQUE":"DEPTH_INDUCED_BREAKING_1__BJ__CHARACTERISTIC_FREQUENCY", - "DEFERLEMENT 2 (TG) FONCTION DE PONDERATION":"DEPTH_INDUCED_BREAKING_2__TG__WEIGHTING_FUNCTION", - "DEFERLEMENT 2 (TG) CHOIX FREQUENCE CARACTERISTIQUE":"DEPTH_INDUCED_BREAKING_2__TG__CHARACTERISTIC_FREQUENCY", - "DEFERLEMENT 3 (RO) DISTRIBUTION DES HAUTEURS DE HOULE":"DEPTH_INDUCED_BREAKING_3__RO__WAVE_HEIGHT_DISTRIBUTION", - "DEFERLEMENT 3 (RO) EXPOSANT FONCTION DE PONDERATION":"DEPTH_INDUCED_BREAKING_3__RO__EXPONENT_WEIGHTING_FUNCTION", - "DEFERLEMENT 3 (RO) CHOIX FREQUENCE CARACTERISTIQUE":"DEPTH_INDUCED_BREAKING_3__RO__CHARACTERISTIC_FREQUENCY", - "DEFERLEMENT 4 (IH) CHOIX FREQUENCE CARACTERISTIQUE":"DEPTH_INDUCED_BREAKING_4__IH__CHARACTERISTIC_FREQUENCY", - "NOMBRE DE SOUS-PAS DE TEMPS POUR LE DEFERLEMENT":"NUMBER_OF_BREAKING_TIME_STEPS", - "LIMITEUR DE CROISSANCE":"WAVE_GROWTH_LIMITER", - "CROISSANCE LINEAIRE DES VAGUES":"LINEAR_WAVE_GROWTH", - "TRANSFERTS ENTRE TRIPLETS DE FREQUENCES":"TRIAD_INTERACTIONS", - "TYPE DE SPECTRE DIRECTIONNEL AUX LIMITES":"TYPE_OF_BOUNDARY_DIRECTIONAL_SPECTRUM", - "PERIODE D'ACTUALISATION DE LA MAREE":"TIDE_REFRESHING_PERIOD", - "FORMAT DU FICHIER DU NIVEAU DE LA MAREE":"TIDAL_WATER_LEVEL_FILE_FORMAT", - "RANG DU NIVEAU DE LA MAREE DANS LE FICHIER TELEMAC":"RANK_OF_THE_WATER_LEVEL_DATA_IN_THE_TELEMAC_FILE", - "FONCTION DE REPARTITION ANGULAIRE INITIALE":"INITIAL_ANGULAR_DISTRIBUTION_FUNCTION", - "NOMBRE DE TABLEAUX PRIVES":"NUMBER_OF_PRIVATE_ARRAYS", - "FONCTION DE REPARTITION ANGULAIRE AUX LIMITES":"BOUNDARY_ANGULAR_DISTRIBUTION_FUNCTION", - "COORDONNEES DE L'ORIGINE":"ORIGIN_COORDINATES", - "DEBUGGER":"DEBUGGER", - "REGLAGE POUR INTEGRATION SUR OMEGA1":"SETTING_FOR_INTEGRATION_ON_OMEGA1", - "REGLAGE POUR INTEGRATION SUR THETA1":"SETTING_FOR_INTEGRATION_ON_THETA1", - "REGLAGE POUR INTEGRATION SUR OMEGA2":"SETTING_FOR_INTEGRATION_ON_OMEGA2", - "DIFFRACTION":"DIFFRACTION", - "PAS DE TEMPS DEBUT DIFFRACTION":"STARTING_TIME_STEP_FOR_DIFFFRACTION", - "PROCESSEURS PARALLELES":"PARALLEL_PROCESSORS", - "ASSEMBLAGE EN ELEMENTS FINIS":"FINITE_ELEMENT_ASSEMBLY", - "MODELISATION BAJ":"BAJ_MODELING", - "PAS DE TEMPS":"TIME_STEP", - "FREQUENCE MINIMALE":"MINIMAL_FREQUENCY", - "RAISON FREQUENTIELLE":"FREQUENTIAL_RATIO", - "DATE DE DEBUT DU CALCUL":"DATE_OF_COMPUTATION_BEGINNING", - "COEFFICIENT DE FROTTEMENT SUR LE FOND":"BOTTOM_FRICTION_COEFFICIENT", - "COEFFICIENT DE DISSIPATION PAR MOUTONNEMENT":"WHITE_CAPPING_DISSIPATION_COEFFICIENT", - "COEFFICIENT DE PONDERATION POUR LE MOUTONNEMENT":"WHITE_CAPPING_WEIGHTING_COEFFICIENT", - "DENSITE DE L'AIR":"AIR_DENSITY", - "DENSITE DE L'EAU":"WATER_DENSITY", - "COEFFICIENT DE GENERATION PAR LE VENT":"WIND_GENERATION_COEFFICIENT", - "CONSTANTE DE VON KARMAN":"VON_KARMAN_CONSTANT", - "CONSTANTE DE CHARNOCK":"CHARNOCK_CONSTANT", - "DECALAGE COURBE DE CROISSANCE DUE AU VENT":"SHIFT_GROWING_CURVE_DUE_TO_WIND", - "COTE DE MESURE DES VENTS":"WIND_MEASUREMENTS_LEVEL", - "COEFFICIENT DE TRAINEE DE VENT":"WIND_DRAG_COEFFICIENT", - "HAUTEUR SIGNIFICATIVE INITIALE":"INITIAL_SIGNIFICANT_WAVE_HEIGHT", - "FREQUENCE DE PIC INITIALE":"INITIAL_PEAK_FREQUENCY", - "FACTEUR DE PIC INITIAL":"INITIAL_PEAK_FACTOR", - "VALEUR INITIALE DE SIGMA-A POUR SPECTRE":"INITIAL_VALUE_OF_SIGMA_A_FOR_SPECTRUM", - "VALEUR INITIALE DE SIGMA-B POUR SPECTRE":"INITIAL_VALUE_OF_SIGMA_B_FOR_SPECTRUM", - "CONSTANTE DE PHILLIPS INITIALE":"INITIAL_PHILLIPS_CONSTANT", - "VALEUR MOYENNE DU FETCH INITIAL":"INITIAL_MEAN_FETCH_VALUE", - "FREQUENCE DE PIC MAXIMALE INITIALE":"INITIAL_MAXIMUM_PEAK_FREQUENCY", - "DIRECTION PRINCIPALE 1 INITIALE":"INITIAL_MAIN_DIRECTION_1", - "ETALEMENT DIRECTIONNEL 1 INITIAL":"INITIAL_DIRECTIONAL_SPREAD_1", - "DIRECTION PRINCIPALE 2 INITIALE":"INITIAL_MAIN_DIRECTION_2", - "ETALEMENT DIRECTIONNEL 2 INITIAL":"INITIAL_DIRECTIONAL_SPREAD_2", - "FACTEUR DE PONDERATION POUR FRA INITIALE":"INITIAL_WEIGHTING_FACTOR_FOR_ADF", - "FACTEUR DE QUEUE DU SPECTRE":"SPECTRUM_TAIL_FACTOR", - "SEUIL D'ENERGIE CONSIDERE POUR LE SPECTRE":"SPECTRUM_ENERGY_THRESHOLD", - "DEFERLEMENT 1 (BJ) CONSTANTE ALPHA":"DEPTH_INDUCED_BREAKING_1__BJ__COEFFICIENT_ALPHA", - "DEFERLEMENT 1 (BJ) CONSTANTE GAMMA1":"DEPTH_INDUCED_BREAKING_1__BJ__COEFFICIENT_GAMMA1", - "DEFERLEMENT 1 (BJ) CONSTANTE GAMMA2":"DEPTH_INDUCED_BREAKING_1__BJ__COEFFICIENT_GAMMA2", - "DEFERLEMENT 2 (TG) CONSTANTE B":"DEPTH_INDUCED_BREAKING_2__TG__COEFFICIENT_B", - "DEFERLEMENT 2 (TG) CONSTANTE GAMMA":"DEPTH_INDUCED_BREAKING_2__TG__COEFFICIENT_GAMMA", - "DEFERLEMENT 3 (RO) CONSTANTE ALPHA":"DEPTH_INDUCED_BREAKING_3__RO__COEFFICIENT_ALPHA", - "DEFERLEMENT 3 (RO) CONSTANTE GAMMA":"DEPTH_INDUCED_BREAKING_3__RO__COEFFICIENT_GAMMA", - "DEFERLEMENT 3 (RO) CONSTANTE GAMMA2":"DEPTH_INDUCED_BREAKING_3__RO__COEFFICIENT_GAMMA2", - "DEFERLEMENT 4 (IH) CONSTANTE BETA0":"DEPTH_INDUCED_BREAKING_4__IH__COEFFICIENT_BETA0", - "DEFERLEMENT 4 (IH) CONSTANTE M2STAR":"DEPTH_INDUCED_BREAKING_4__IH__COEFFICIENT_M2STAR", - "VALEUR MAXIMALE DU RAPPORT HM0 SUR D":"MAXIMUM_VALUE_OF_THE_RATIO_HM0_ON_D", - "COEFFICIENT POUR LES SOUS-PAS DE TEMPS POUR LE DEFERLEMENT":"COEFFICIENT_OF_THE_TIME_SUB_INCREMENTS_FOR_BREAKING", - "PARAMETRE DE LA CONFIGURATION STANDARD":"STANDARD_CONFIGURATION_PARAMETER", - "COTE INITIALE DU PLAN D'EAU AU REPOS":"INITIAL_STILL_WATER_LEVEL", - "TRIADS 1 (LTA) CONSTANTE ALPHA":"TRIADS_1__LTA__COEFFICIENT_ALPHA", - "TRIADS 1 (LTA) CONSTANTE RFMLTA":"TRIADS_1__LTA__COEFFICIENT_RFMLTA", - "TRIADS 2 (SPB) CONSTANTE K":"TRIADS_2__SPB__COEFFICIENT_K", - "TRIADS 2 (SPB) BORNE DIRECTIONNELLE INFERIEURE":"TRIADS_2__SPB__LOWER_DIRECTIONAL_BOUNDARY", - "TRIADS 2 (SPB) BORNE DIRECTIONNELLE SUPERIEURE":"TRIADS_2__SPB__UPPER_DIRECTIONAL_BOUNDARY", - "HAUTEUR SIGNIFICATIVE AUX LIMITES":"BOUNDARY_SIGNIFICANT_WAVE_HEIGHT", - "FREQUENCE DE PIC AUX LIMITES":"BOUNDARY_PEAK_FREQUENCY", - "VALEUR AUX LIMITES DE SIGMA-A POUR SPECTRE":"BOUNDARY_SPECTRUM_VALUE_OF_SIGMA_A", - "VALEUR AUX LIMITES DE SIGMA-B POUR SPECTRE":"BOUNDARY_SPECTRUM_VALUE_OF_SIGMA_B", - "CONSTANTE DE PHILLIPS AUX LIMITES":"BOUNDARY_PHILLIPS_CONSTANT", - "VALEUR MOYENNE DU FETCH AUX LIMITES":"BOUNDARY_MEAN_FETCH_VALUE", - "FREQUENCE DE PIC MAXIMALE AUX LIMITES":"BOUNDARY_MAXIMUM_PEAK_FREQUENCY", - "DIRECTION PRINCIPALE 1 AUX LIMITES":"BOUNDARY_MAIN_DIRECTION_1", - "ETALEMENT DIRECTIONNEL 1 AUX LIMITES":"BOUNDARY_DIRECTIONAL_SPREAD_1", - "DIRECTION PRINCIPALE 2 AUX LIMITES":"BOUNDARY_MAIN_DIRECTION_2", - "ETALEMENT DIRECTIONNEL 2 AUX LIMITES":"BOUNDARY_DIRECTIONAL_SPREAD_2", - "FACTEUR DE PONDERATION POUR FRA AUX LIMITES":"BOUNDARY_WEIGHTING_FACTOR_FOR_ADF", - "FACTEUR DE PIC AUX LIMITES":"BOUNDARY_PEAK_FACTOR", - "PROFONDEUR D'EAU MINIMALE":"MINIMUM_WATER_DEPTH", - "VITESSE DU VENT SUIVANT X":"WIND_VELOCITY_ALONG_X", - "VITESSE DU VENT SUIVANT Y":"WIND_VELOCITY_ALONG_Y", - "COEFFICIENT IMPLICITATION POUR TERMES SOURCES":"IMPLICITATION_COEFFICIENT_FOR_SOURCE_TERMS", - "COEFFICIENT DE GENERATION DE YAN D":"YAN_GENERATION_COEFFICIENT_D", - "COEFFICIENT DE GENERATION DE YAN E":"YAN_GENERATION_COEFFICIENT_E", - "COEFFICIENT DE GENERATION DE YAN F":"YAN_GENERATION_COEFFICIENT_F", - "COEFFICIENT DE GENERATION DE YAN H":"YAN_GENERATION_COEFFICIENT_H", - "COEFFICIENT DE DISSIPATION DE WESTHUYSEN":"WESTHUYSEN_DISSIPATION_COEFFICIENT", - "SEUIL DE SATURATION POUR LA DISSIPATION":"SATURATION_THRESHOLD_FOR_THE_DISSIPATION", - "DISSIPATION PAR MOUTONNEMENT DE WESTHUYSEN":"WESTHUYSEN_WHITE_CAPPING_DISSIPATION", - "COEFFICIENT DE PONDERATION DE WESTHUYSEN":"WESTHUYSEN_WEIGHTING_COEFFICIENT", - "SEUIL0 ELIMINATION DE CONFIGURATIONS":"THRESHOLD0_FOR_CONFIGURATIONS_ELIMINATION", - "SEUIL1 ELIMINATION DE CONFIGURATIONS":"THRESHOLD1_FOR_CONFIGURATIONS_ELIMINATION", - "SEUIL2 ELIMINATION DE CONFIGURATIONS":"THRESHOLD2_FOR_CONFIGURATIONS_ELIMINATION", - "SEUIL DE VARIANCE CONSIDEREE POUR DIFFRACTION":"VARIANCE_THRESHOLD_FOR_DIFFRACTION", - "UNITE DE TEMPS DU FICHIER DES COURANTS":"TIME_UNIT_IN_CURRENTS_FILE", - "UNITE DE TEMPS DU FICHIER DU NIVEAU DE LA MAREE":"TIME_UNIT_IN_TIDAL_WATER_LEVEL_FILE", - "UNITE DE TEMPS DU FICHIER DES VENTS":"TIME_UNIT_IN_WINDS_FILE", - "DEPHASAGE DU FICHIER DES COURANTS":"TIME_SHIFT_IN_CURRENTS_FILE", - "DEPHASAGE DU FICHIER DU NIVEAU DE LA MAREE":"TIME_SHIFT_IN_TIDAL_WATER_LEVEL_FILE", - "DEPHASAGE DU FICHIER DES VENTS":"TIME_SHIFT_IN_WINDS_FILE", - "COEFFICIENT DE DISSIPATION PAR FORT COURANT":"DISSIPATION_COEFFICIENT_FOR_STRONG_CURRENT", - "TITRE":"TITLE", - "VARIABLES POUR LES SORTIES GRAPHIQUES 2D":"VARIABLES_FOR_2D_GRAPHIC_PRINTOUTS", - "FICHIER DE GEOMETRIE":"GEOMETRY_FILE", - "FORMAT DU FICHIER DE GEOMETRIE":"GEOMETRY_FILE_FORMAT", - "FICHIER FORTRAN":"FORTRAN_FILE", - "FICHIER DES PARAMETRES":"STEERING_FILE", - "FICHIER DES CONDITIONS AUX LIMITES":"BOUNDARY_CONDITIONS_FILE", - "FICHIER DES FONDS":"BOTTOM_TOPOGRAPHY_FILE", - "LISSAGES DU FOND":"BOTTOM_SMOOTHINGS", - "PERIODE POUR LES SORTIES GRAPHIQUES":"PERIOD_FOR_GRAPHIC_PRINTOUTS", - "NUMERO DE LA PREMIERE ITERATION POUR LES SORTIES GRAPHIQUES":"NUMBER_OF_FIRST_ITERATION_FOR_GRAPHICS_PRINTOUTS", - "FICHIER DES RESULTATS 2D":"ED_RESULTS_FILE", - "FORMAT DU FICHIER DES RESULTATS 2D":"ED_RESULTS_FILE_FORMAT", - "FICHIER DES RESULTATS PONCTUELS":"PUNCTUAL_RESULTS_FILE", - "FORMAT DU FICHIER DE SPECTRE":"SPECTRUM_FILE_FORMAT", - "ABSCISSES DES POINTS DE SORTIE DU SPECTRE":"ABSCISSAE_OF_SPECTRUM_PRINTOUT_POINTS", - "ORDONNEES DES POINTS DE SORTIE DU SPECTRE":"ORDINATES_OF_SPECTRUM_PRINTOUT_POINTS", - "SUITE DE CALCUL":"NEXT_COMPUTATION", - "FICHIER DU CALCUL PRECEDENT":"PREVIOUS_COMPUTATION_FILE", - "FORMAT DU FICHIER DU CALCUL PRECEDENT":"PREVIOUS_COMPUTATION_FILE_FORMAT", - "FICHIER DES COURANTS BINAIRE":"BINARY_CURRENTS_FILE", - "FICHIER DES COURANTS FORMATE":"FORMATTED_CURRENTS_FILE", - "NUMERO DE VERSION":"RELEASE", - "FICHIER DES VENTS BINAIRE":"BINARY_WINDS_FILE", - "FORMAT DU FICHIER DES VENTS BINAIRE":"BINARY_WINDS_FILE_FORMAT", - "FICHIER DES VENTS FORMATE":"FORMATTED_WINDS_FILE", - "FICHIER DE REFERENCE":"REFERENCE_FILE", - "FORMAT DU FICHIER DE REFERENCE":"REFERENCE_FILE_FORMAT", - "FICHIER DU NIVEAU DE LA MAREE BINAIRE":"BINARY_TIDAL_WATER_LEVEL_FILE", - "FORMAT DU FICHIER DE LA MAREE BINAIRE":"BINARY_TIDAL_WATER_FILE_FORMAT", - "FICHIER DU NIVEAU DE LA MAREE FORMATE":"FORMATTED_TIDAL_WATER_LEVEL_FILE", - "FORMAT DU FICHIER DES COURANTS BINAIRE":"BINARY_CURRENTS_FILE_FORMAT", - "NOMS DES VARIABLES":"NAMES_OF_VARIABLES", - "OPTION POUR LA QUEUE DIAGNOSTIQUE":"OPTION_FOR_DIAGNOSTIC_TAIL", - "OPTION POUR LES DERIVEES SECONDES":"OPTION_FOR_SECOND_DERIVATIVES", - "FICHIER DES RESULTATS SPECTRES 1D":"ZD_SPECTRA_RESULTS_FILE", - "FICHIER DES RESULTATS GLOBAUX":"GLOBAL_RESULT_FILE", - "FORMAT DU FICHIER DES RESULTATS GLOBAUX":"GLOBAL_RESULT_FILE_FORMAT", - "FICHIER BINAIRE 1":"BINARY_FILE_1", - "FORMAT DU FICHIER DE DONNEES BINAIRE 1":"BINARY_DATA_FILE_1_FORMAT", - "FICHIER FORMATE 1":"FORMATTED_FILE_1", - "LISTE DES FICHIERS":"LIST_OF_FILES", - "DICTIONNAIRE":"DICTIONARY", - "PARTITIONNEUR":"PARTITIONING_TOOL", - "PRISE EN COMPTE DES TERMES SOURCES":"CONSIDERATION_OF_SOURCE_TERMS", - "COORDONNEES SPHERIQUES":"SPHERICAL_COORDINATES", - "PROFONDEUR INFINIE":"INFINITE_DEPTH", - "PRISE EN COMPTE D'UN COURANT STATIONNAIRE":"CONSIDERATION_OF_A_STATIONARY_CURRENT", - "PRISE EN COMPTE DU VENT":"CONSIDERATION_OF_A_WIND", - "RECUPERATION DE DONNEE TELEMAC":"RECOVERY_OF_TELEMAC_DATA_ITEM", - "PRISE EN COMPTE DE LA PROPAGATION":"CONSIDERATION_OF_PROPAGATION", - "VENT STATIONNAIRE":"STATIONARY_WIND", - "VALIDATION":"VALIDATION", - "PRISE EN COMPTE DE LA MAREE":"CONSIDERATION_OF_TIDE", - "CONVENTION TRIGONOMETRIQUE":"TRIGONOMETRICAL_CONVENTION", - "SPECTRE AUX LIMITES MODIFIE PAR L'UTILISATEUR":"LIMIT_SPECTRUM_MODIFIED_BY_USER", - "FILTRE POUR DIFFRACTION":"DIFFRACTION_FILTER", - "REMISE A ZERO DU TEMPS":"INITIAL_TIME_SET_TO_ZERO", - "PRISE EN COMPTE DE LA VEGETATION":"VEGETATION_TAKEN_INTO_ACCOUNT", - "VERIFICATION DU MAILLAGE":"CHECKING_THE_MESH", - "FICHIER DES COORDONNEES DE SPECTRES A ECRIRE":"FILE_WITH_COORDINATES_OF_SPECTRA_TO_WRITE", - "FICHIER DES COORDONNEES DE SPECTRES A IMPOSER":"FILE_WITH_COORDINATES_OF_SPECTRA_TO_IMPOSE", - "FICHIER DES SPECTRES IMPOSES":"IMPOSED_SPECTRA_FILE", - "FORMAT DU FICHIER DES SPECTRES IMPOSES":"IMPOSED_SPECTRA_FILE_FORMAT", - "UNITE DE TEMPS DU FICHIER DES SPECTRES IMPOSES":"TIME_UNIT_OF_IMPOSED_SPECTRA_FILE", - "DEPHASAGE DU FICHIER DES SPECTRES IMPOSES":"TIME_SHIFT_OF_IMPOSED_SPECTRA_FILE", - "PRISE EN COMPTE DES TERMES SOURCES SUR LES FRONTIERES IMPOSEES":"TAKING_INTO_ACCOUNT_SOURCE_TERMS_ON_IMPOSED_BOUNDARIES", - "CONDITION LIMITE AVANT LE PAS DE TEMPS":"BOUNDARY_CONDITION_BEFORE_TIME_STEP", - "ECRETAGE POUR HAUTEUR PETITE":"ECRET_FOR_SMALL_HEIGHT", -} - -DicoCasEnToCata = { - 'PERIOD FOR LISTING PRINTOUTS':'PERIOD_FOR_LISTING_PRINTOUTS', - 'NUMBER OF TIME STEP':'NUMBER_OF_TIME_STEP', - 'NUMBER OF DIRECTIONS':'NUMBER_OF_DIRECTIONS', - 'NUMBER OF FREQUENCIES':'NUMBER_OF_FREQUENCIES', - 'WIND GENERATION':'WIND_GENERATION', - 'WHITE CAPPING DISSIPATION':'WHITE_CAPPING_DISSIPATION', - 'BOTTOM FRICTION DISSIPATION':'BOTTOM_FRICTION_DISSIPATION', - 'NON-LINEAR TRANSFERS BETWEEN FREQUENCIES':'NON_LINEAR_TRANSFERS_BETWEEN_FREQUENCIES', - 'CURRENTS FILE FORMAT':'CURRENTS_FILE_FORMAT', - 'WINDS FILE FORMAT':'WINDS_FILE_FORMAT', - 'NUMBER OF ITERATIONS FOR THE SOURCE TERMS':'NUMBER_OF_ITERATIONS_FOR_THE_SOURCE_TERMS', - 'TYPE OF INITIAL DIRECTIONAL SPECTRUM':'TYPE_OF_INITIAL_DIRECTIONAL_SPECTRUM', - 'DISSIPATION BY STRONG CURRENT':'DISSIPATION_BY_STRONG_CURRENT', - 'TIME INCREMENT NUMBER IN TELEMAC FILE':'TIME_INCREMENT_NUMBER_IN_TELEMAC_FILE', - 'VECTOR LENGTH':'VECTOR_LENGTH', - 'DEPTH-INDUCED BREAKING DISSIPATION':'DEPTH_INDUCED_BREAKING_DISSIPATION', - 'DEPTH-INDUCED BREAKING 1 (BJ) QB COMPUTATION METHOD':'DEPTH_INDUCED_BREAKING_1__BJ__QB_COMPUTATION_METHOD', - 'DEPTH-INDUCED BREAKING 1 (BJ) HM COMPUTATION METHOD':'DEPTH_INDUCED_BREAKING_1__BJ__HM_COMPUTATION_METHOD', - 'DEPTH-INDUCED BREAKING 1 (BJ) CHARACTERISTIC FREQUENCY':'DEPTH_INDUCED_BREAKING_1__BJ__CHARACTERISTIC_FREQUENCY', - 'DEPTH-INDUCED BREAKING 2 (TG) WEIGHTING FUNCTION':'DEPTH_INDUCED_BREAKING_2__TG__WEIGHTING_FUNCTION', - 'DEPTH-INDUCED BREAKING 2 (TG) CHARACTERISTIC FREQUENCY':'DEPTH_INDUCED_BREAKING_2__TG__CHARACTERISTIC_FREQUENCY', - 'DEPTH-INDUCED BREAKING 3 (RO) WAVE HEIGHT DISTRIBUTION':'DEPTH_INDUCED_BREAKING_3__RO__WAVE_HEIGHT_DISTRIBUTION', - 'DEPTH-INDUCED BREAKING 3 (RO) EXPONENT WEIGHTING FUNCTION':'DEPTH_INDUCED_BREAKING_3__RO__EXPONENT_WEIGHTING_FUNCTION', - 'DEPTH-INDUCED BREAKING 3 (RO) CHARACTERISTIC FREQUENCY':'DEPTH_INDUCED_BREAKING_3__RO__CHARACTERISTIC_FREQUENCY', - 'DEPTH-INDUCED BREAKING 4 (IH) CHARACTERISTIC FREQUENCY':'DEPTH_INDUCED_BREAKING_4__IH__CHARACTERISTIC_FREQUENCY', - 'NUMBER OF BREAKING TIME STEPS':'NUMBER_OF_BREAKING_TIME_STEPS', - 'WAVE GROWTH LIMITER':'WAVE_GROWTH_LIMITER', - 'LINEAR WAVE GROWTH':'LINEAR_WAVE_GROWTH', - 'TRIAD INTERACTIONS':'TRIAD_INTERACTIONS', - 'TYPE OF BOUNDARY DIRECTIONAL SPECTRUM':'TYPE_OF_BOUNDARY_DIRECTIONAL_SPECTRUM', - 'TIDE REFRESHING PERIOD':'TIDE_REFRESHING_PERIOD', - 'TIDAL WATER LEVEL FILE FORMAT':'TIDAL_WATER_LEVEL_FILE_FORMAT', - 'RANK OF THE WATER LEVEL DATA IN THE TELEMAC FILE':'RANK_OF_THE_WATER_LEVEL_DATA_IN_THE_TELEMAC_FILE', - 'INITIAL ANGULAR DISTRIBUTION FUNCTION':'INITIAL_ANGULAR_DISTRIBUTION_FUNCTION', - 'NUMBER OF PRIVATE ARRAYS':'NUMBER_OF_PRIVATE_ARRAYS', - 'BOUNDARY ANGULAR DISTRIBUTION FUNCTION':'BOUNDARY_ANGULAR_DISTRIBUTION_FUNCTION', - 'ORIGIN COORDINATES':'ORIGIN_COORDINATES', - 'DEBUGGER':'DEBUGGER', - 'SETTING FOR INTEGRATION ON OMEGA1':'SETTING_FOR_INTEGRATION_ON_OMEGA1', - 'SETTING FOR INTEGRATION ON THETA1':'SETTING_FOR_INTEGRATION_ON_THETA1', - 'SETTING FOR INTEGRATION ON OMEGA2':'SETTING_FOR_INTEGRATION_ON_OMEGA2', - 'DIFFRACTION':'DIFFRACTION', - 'STARTING TIME STEP FOR DIFFFRACTION':'STARTING_TIME_STEP_FOR_DIFFFRACTION', - 'PARALLEL PROCESSORS':'PARALLEL_PROCESSORS', - 'FINITE ELEMENT ASSEMBLY':'FINITE_ELEMENT_ASSEMBLY', - 'BAJ MODELING':'BAJ_MODELING', - 'TIME STEP':'TIME_STEP', - 'MINIMAL FREQUENCY':'MINIMAL_FREQUENCY', - 'FREQUENTIAL RATIO':'FREQUENTIAL_RATIO', - 'DATE OF COMPUTATION BEGINNING':'DATE_OF_COMPUTATION_BEGINNING', - 'BOTTOM FRICTION COEFFICIENT':'BOTTOM_FRICTION_COEFFICIENT', - 'WHITE CAPPING DISSIPATION COEFFICIENT':'WHITE_CAPPING_DISSIPATION_COEFFICIENT', - 'WHITE CAPPING WEIGHTING COEFFICIENT':'WHITE_CAPPING_WEIGHTING_COEFFICIENT', - 'AIR DENSITY':'AIR_DENSITY', - 'WATER DENSITY':'WATER_DENSITY', - 'WIND GENERATION COEFFICIENT':'WIND_GENERATION_COEFFICIENT', - 'VON KARMAN CONSTANT':'VON_KARMAN_CONSTANT', - 'CHARNOCK CONSTANT':'CHARNOCK_CONSTANT', - 'SHIFT GROWING CURVE DUE TO WIND':'SHIFT_GROWING_CURVE_DUE_TO_WIND', - 'WIND MEASUREMENTS LEVEL':'WIND_MEASUREMENTS_LEVEL', - 'WIND DRAG COEFFICIENT':'WIND_DRAG_COEFFICIENT', - 'INITIAL SIGNIFICANT WAVE HEIGHT':'INITIAL_SIGNIFICANT_WAVE_HEIGHT', - 'INITIAL PEAK FREQUENCY':'INITIAL_PEAK_FREQUENCY', - 'INITIAL PEAK FACTOR':'INITIAL_PEAK_FACTOR', - 'INITIAL VALUE OF SIGMA-A FOR SPECTRUM':'INITIAL_VALUE_OF_SIGMA_A_FOR_SPECTRUM', - 'INITIAL VALUE OF SIGMA-B FOR SPECTRUM':'INITIAL_VALUE_OF_SIGMA_B_FOR_SPECTRUM', - 'INITIAL PHILLIPS CONSTANT':'INITIAL_PHILLIPS_CONSTANT', - 'INITIAL MEAN FETCH VALUE':'INITIAL_MEAN_FETCH_VALUE', - 'INITIAL MAXIMUM PEAK FREQUENCY':'INITIAL_MAXIMUM_PEAK_FREQUENCY', - 'INITIAL MAIN DIRECTION 1':'INITIAL_MAIN_DIRECTION_1', - 'INITIAL DIRECTIONAL SPREAD 1':'INITIAL_DIRECTIONAL_SPREAD_1', - 'INITIAL MAIN DIRECTION 2':'INITIAL_MAIN_DIRECTION_2', - 'INITIAL DIRECTIONAL SPREAD 2':'INITIAL_DIRECTIONAL_SPREAD_2', - 'INITIAL WEIGHTING FACTOR FOR ADF':'INITIAL_WEIGHTING_FACTOR_FOR_ADF', - 'SPECTRUM TAIL FACTOR':'SPECTRUM_TAIL_FACTOR', - 'SPECTRUM ENERGY THRESHOLD':'SPECTRUM_ENERGY_THRESHOLD', - 'DEPTH-INDUCED BREAKING 1 (BJ) COEFFICIENT ALPHA':'DEPTH_INDUCED_BREAKING_1__BJ__COEFFICIENT_ALPHA', - 'DEPTH-INDUCED BREAKING 1 (BJ) COEFFICIENT GAMMA1':'DEPTH_INDUCED_BREAKING_1__BJ__COEFFICIENT_GAMMA1', - 'DEPTH-INDUCED BREAKING 1 (BJ) COEFFICIENT GAMMA2':'DEPTH_INDUCED_BREAKING_1__BJ__COEFFICIENT_GAMMA2', - 'DEPTH-INDUCED BREAKING 2 (TG) COEFFICIENT B':'DEPTH_INDUCED_BREAKING_2__TG__COEFFICIENT_B', - 'DEPTH-INDUCED BREAKING 2 (TG) COEFFICIENT GAMMA':'DEPTH_INDUCED_BREAKING_2__TG__COEFFICIENT_GAMMA', - 'DEPTH-INDUCED BREAKING 3 (RO) COEFFICIENT ALPHA':'DEPTH_INDUCED_BREAKING_3__RO__COEFFICIENT_ALPHA', - 'DEPTH-INDUCED BREAKING 3 (RO) COEFFICIENT GAMMA':'DEPTH_INDUCED_BREAKING_3__RO__COEFFICIENT_GAMMA', - 'DEPTH-INDUCED BREAKING 3 (RO) COEFFICIENT GAMMA2':'DEPTH_INDUCED_BREAKING_3__RO__COEFFICIENT_GAMMA2', - 'DEPTH-INDUCED BREAKING 4 (IH) COEFFICIENT BETA0':'DEPTH_INDUCED_BREAKING_4__IH__COEFFICIENT_BETA0', - 'DEPTH-INDUCED BREAKING 4 (IH) COEFFICIENT M2STAR':'DEPTH_INDUCED_BREAKING_4__IH__COEFFICIENT_M2STAR', - 'MAXIMUM VALUE OF THE RATIO HM0 ON D':'MAXIMUM_VALUE_OF_THE_RATIO_HM0_ON_D', - 'COEFFICIENT OF THE TIME SUB-INCREMENTS FOR BREAKING':'COEFFICIENT_OF_THE_TIME_SUB_INCREMENTS_FOR_BREAKING', - 'STANDARD CONFIGURATION PARAMETER':'STANDARD_CONFIGURATION_PARAMETER', - 'INITIAL STILL WATER LEVEL':'INITIAL_STILL_WATER_LEVEL', - 'TRIADS 1 (LTA) COEFFICIENT ALPHA':'TRIADS_1__LTA__COEFFICIENT_ALPHA', - 'TRIADS 1 (LTA) COEFFICIENT RFMLTA':'TRIADS_1__LTA__COEFFICIENT_RFMLTA', - 'TRIADS 2 (SPB) COEFFICIENT K':'TRIADS_2__SPB__COEFFICIENT_K', - 'TRIADS 2 (SPB) LOWER DIRECTIONAL BOUNDARY':'TRIADS_2__SPB__LOWER_DIRECTIONAL_BOUNDARY', - 'TRIADS 2 (SPB) UPPER DIRECTIONAL BOUNDARY':'TRIADS_2__SPB__UPPER_DIRECTIONAL_BOUNDARY', - 'BOUNDARY SIGNIFICANT WAVE HEIGHT':'BOUNDARY_SIGNIFICANT_WAVE_HEIGHT', - 'BOUNDARY PEAK FREQUENCY':'BOUNDARY_PEAK_FREQUENCY', - 'BOUNDARY SPECTRUM VALUE OF SIGMA-A':'BOUNDARY_SPECTRUM_VALUE_OF_SIGMA_A', - 'BOUNDARY SPECTRUM VALUE OF SIGMA-B':'BOUNDARY_SPECTRUM_VALUE_OF_SIGMA_B', - 'BOUNDARY PHILLIPS CONSTANT':'BOUNDARY_PHILLIPS_CONSTANT', - 'BOUNDARY MEAN FETCH VALUE':'BOUNDARY_MEAN_FETCH_VALUE', - 'BOUNDARY MAXIMUM PEAK FREQUENCY':'BOUNDARY_MAXIMUM_PEAK_FREQUENCY', - 'BOUNDARY MAIN DIRECTION 1':'BOUNDARY_MAIN_DIRECTION_1', - 'BOUNDARY DIRECTIONAL SPREAD 1':'BOUNDARY_DIRECTIONAL_SPREAD_1', - 'BOUNDARY MAIN DIRECTION 2':'BOUNDARY_MAIN_DIRECTION_2', - 'BOUNDARY DIRECTIONAL SPREAD 2':'BOUNDARY_DIRECTIONAL_SPREAD_2', - 'BOUNDARY WEIGHTING FACTOR FOR ADF':'BOUNDARY_WEIGHTING_FACTOR_FOR_ADF', - 'BOUNDARY PEAK FACTOR':'BOUNDARY_PEAK_FACTOR', - 'MINIMUM WATER DEPTH':'MINIMUM_WATER_DEPTH', - 'WIND VELOCITY ALONG X':'WIND_VELOCITY_ALONG_X', - 'WIND VELOCITY ALONG Y':'WIND_VELOCITY_ALONG_Y', - 'IMPLICITATION COEFFICIENT FOR SOURCE TERMS':'IMPLICITATION_COEFFICIENT_FOR_SOURCE_TERMS', - 'YAN GENERATION COEFFICIENT D':'YAN_GENERATION_COEFFICIENT_D', - 'YAN GENERATION COEFFICIENT E':'YAN_GENERATION_COEFFICIENT_E', - 'YAN GENERATION COEFFICIENT F':'YAN_GENERATION_COEFFICIENT_F', - 'YAN GENERATION COEFFICIENT H':'YAN_GENERATION_COEFFICIENT_H', - 'WESTHUYSEN DISSIPATION COEFFICIENT':'WESTHUYSEN_DISSIPATION_COEFFICIENT', - 'SATURATION THRESHOLD FOR THE DISSIPATION':'SATURATION_THRESHOLD_FOR_THE_DISSIPATION', - 'WESTHUYSEN WHITE CAPPING DISSIPATION':'WESTHUYSEN_WHITE_CAPPING_DISSIPATION', - 'WESTHUYSEN WEIGHTING COEFFICIENT':'WESTHUYSEN_WEIGHTING_COEFFICIENT', - 'THRESHOLD0 FOR CONFIGURATIONS ELIMINATION':'THRESHOLD0_FOR_CONFIGURATIONS_ELIMINATION', - 'THRESHOLD1 FOR CONFIGURATIONS ELIMINATION':'THRESHOLD1_FOR_CONFIGURATIONS_ELIMINATION', - 'THRESHOLD2 FOR CONFIGURATIONS ELIMINATION':'THRESHOLD2_FOR_CONFIGURATIONS_ELIMINATION', - 'VARIANCE THRESHOLD FOR DIFFRACTION':'VARIANCE_THRESHOLD_FOR_DIFFRACTION', - 'TIME UNIT IN CURRENTS FILE':'TIME_UNIT_IN_CURRENTS_FILE', - 'TIME UNIT IN TIDAL WATER LEVEL FILE':'TIME_UNIT_IN_TIDAL_WATER_LEVEL_FILE', - 'TIME UNIT IN WINDS FILE':'TIME_UNIT_IN_WINDS_FILE', - 'TIME SHIFT IN CURRENTS FILE':'TIME_SHIFT_IN_CURRENTS_FILE', - 'TIME SHIFT IN TIDAL WATER LEVEL FILE':'TIME_SHIFT_IN_TIDAL_WATER_LEVEL_FILE', - 'TIME SHIFT IN WINDS FILE':'TIME_SHIFT_IN_WINDS_FILE', - 'DISSIPATION COEFFICIENT FOR STRONG CURRENT':'DISSIPATION_COEFFICIENT_FOR_STRONG_CURRENT', - 'TITLE':'TITLE', - 'VARIABLES FOR 2D GRAPHIC PRINTOUTS':'VARIABLES_FOR_2D_GRAPHIC_PRINTOUTS', - 'GEOMETRY FILE':'GEOMETRY_FILE', - 'GEOMETRY FILE FORMAT':'GEOMETRY_FILE_FORMAT', - 'FORTRAN FILE':'FORTRAN_FILE', - 'STEERING FILE':'STEERING_FILE', - 'BOUNDARY CONDITIONS FILE':'BOUNDARY_CONDITIONS_FILE', - 'BOTTOM TOPOGRAPHY FILE':'BOTTOM_TOPOGRAPHY_FILE', - 'BOTTOM SMOOTHINGS':'BOTTOM_SMOOTHINGS', - 'PERIOD FOR GRAPHIC PRINTOUTS':'PERIOD_FOR_GRAPHIC_PRINTOUTS', - 'NUMBER OF FIRST ITERATION FOR GRAPHICS PRINTOUTS':'NUMBER_OF_FIRST_ITERATION_FOR_GRAPHICS_PRINTOUTS', - '2D RESULTS FILE':'ED_RESULTS_FILE', - '2D RESULTS FILE FORMAT':'ED_RESULTS_FILE_FORMAT', - 'PUNCTUAL RESULTS FILE':'PUNCTUAL_RESULTS_FILE', - 'SPECTRUM FILE FORMAT':'SPECTRUM_FILE_FORMAT', - 'ABSCISSAE OF SPECTRUM PRINTOUT POINTS':'ABSCISSAE_OF_SPECTRUM_PRINTOUT_POINTS', - 'ORDINATES OF SPECTRUM PRINTOUT POINTS':'ORDINATES_OF_SPECTRUM_PRINTOUT_POINTS', - 'NEXT COMPUTATION':'NEXT_COMPUTATION', - 'PREVIOUS COMPUTATION FILE':'PREVIOUS_COMPUTATION_FILE', - 'PREVIOUS COMPUTATION FILE FORMAT':'PREVIOUS_COMPUTATION_FILE_FORMAT', - 'BINARY CURRENTS FILE':'BINARY_CURRENTS_FILE', - 'FORMATTED CURRENTS FILE':'FORMATTED_CURRENTS_FILE', - 'RELEASE':'RELEASE', - 'BINARY WINDS FILE':'BINARY_WINDS_FILE', - 'BINARY WINDS FILE FORMAT':'BINARY_WINDS_FILE_FORMAT', - 'FORMATTED WINDS FILE':'FORMATTED_WINDS_FILE', - 'REFERENCE FILE':'REFERENCE_FILE', - 'REFERENCE FILE FORMAT':'REFERENCE_FILE_FORMAT', - 'BINARY TIDAL WATER LEVEL FILE':'BINARY_TIDAL_WATER_LEVEL_FILE', - 'BINARY TIDAL WATER FILE FORMAT':'BINARY_TIDAL_WATER_FILE_FORMAT', - 'FORMATTED TIDAL WATER LEVEL FILE':'FORMATTED_TIDAL_WATER_LEVEL_FILE', - 'BINARY CURRENTS FILE FORMAT':'BINARY_CURRENTS_FILE_FORMAT', - 'NAMES OF VARIABLES':'NAMES_OF_VARIABLES', - 'OPTION FOR DIAGNOSTIC TAIL':'OPTION_FOR_DIAGNOSTIC_TAIL', - 'OPTION FOR SECOND DERIVATIVES':'OPTION_FOR_SECOND_DERIVATIVES', - '1D SPECTRA RESULTS FILE':'ZD_SPECTRA_RESULTS_FILE', - 'GLOBAL RESULT FILE':'GLOBAL_RESULT_FILE', - 'GLOBAL RESULT FILE FORMAT':'GLOBAL_RESULT_FILE_FORMAT', - 'BINARY FILE 1':'BINARY_FILE_1', - 'BINARY DATA FILE 1 FORMAT':'BINARY_DATA_FILE_1_FORMAT', - 'FORMATTED FILE 1':'FORMATTED_FILE_1', - 'LIST OF FILES':'LIST_OF_FILES', - 'DICTIONARY':'DICTIONARY', - 'PARTITIONING TOOL':'PARTITIONING_TOOL', - 'CONSIDERATION OF SOURCE TERMS':'CONSIDERATION_OF_SOURCE_TERMS', - 'SPHERICAL COORDINATES':'SPHERICAL_COORDINATES', - 'INFINITE DEPTH':'INFINITE_DEPTH', - 'CONSIDERATION OF A STATIONARY CURRENT':'CONSIDERATION_OF_A_STATIONARY_CURRENT', - 'CONSIDERATION OF A WIND':'CONSIDERATION_OF_A_WIND', - 'RECOVERY OF TELEMAC DATA ITEM':'RECOVERY_OF_TELEMAC_DATA_ITEM', - 'CONSIDERATION OF PROPAGATION':'CONSIDERATION_OF_PROPAGATION', - 'STATIONARY WIND':'STATIONARY_WIND', - 'VALIDATION':'VALIDATION', - 'CONSIDERATION OF TIDE':'CONSIDERATION_OF_TIDE', - 'TRIGONOMETRICAL CONVENTION':'TRIGONOMETRICAL_CONVENTION', - 'LIMIT SPECTRUM MODIFIED BY USER':'LIMIT_SPECTRUM_MODIFIED_BY_USER', - 'DIFFRACTION FILTER':'DIFFRACTION_FILTER', - 'INITIAL TIME SET TO ZERO':'INITIAL_TIME_SET_TO_ZERO', - 'VEGETATION TAKEN INTO ACCOUNT':'VEGETATION_TAKEN_INTO_ACCOUNT', - 'CHECKING THE MESH':'CHECKING_THE_MESH', - 'FILE WITH COORDINATES OF SPECTRA TO WRITE':'FILE_WITH_COORDINATES_OF_SPECTRA_TO_WRITE', - 'FILE WITH COORDINATES OF SPECTRA TO IMPOSE':'FILE_WITH_COORDINATES_OF_SPECTRA_TO_IMPOSE', - 'IMPOSED SPECTRA FILE':'IMPOSED_SPECTRA_FILE', - 'IMPOSED SPECTRA FILE FORMAT':'IMPOSED_SPECTRA_FILE_FORMAT', - 'TIME UNIT OF IMPOSED SPECTRA FILE':'TIME_UNIT_OF_IMPOSED_SPECTRA_FILE', - 'TIME SHIFT OF IMPOSED SPECTRA FILE':'TIME_SHIFT_OF_IMPOSED_SPECTRA_FILE', - 'TAKING INTO ACCOUNT SOURCE TERMS ON IMPOSED BOUNDARIES':'TAKING_INTO_ACCOUNT_SOURCE_TERMS_ON_IMPOSED_BOUNDARIES', - 'BOUNDARY CONDITION BEFORE TIME STEP':'BOUNDARY_CONDITION_BEFORE_TIME_STEP', - 'ECRET FOR SMALL HEIGHT':'ECRET_FOR_SMALL_HEIGHT', -} -DicoEnumCasFrToEnumCasEn = { -'GEOMETRY_FILE_FORMAT':{ - "SERAFIN?":"SERAFIN?", - "SERAFIND":"SERAFIND", - "MED":"MED", -}, - -'ED_RESULTS_FILE_FORMAT':{ - "SERAFIN?":"SERAFIN?", - "SERAFIND":"SERAFIND", - "MED":"MED", -}, - -'SPECTRUM_FILE_FORMAT':{ - "SERAFIN?":"SERAFIN?", - "SERAFIND":"SERAFIND", - "MED":"MED", -}, - -'PREVIOUS_COMPUTATION_FILE_FORMAT':{ - "SERAFIN?":"SERAFIN?", - "SERAFIND":"SERAFIND", - "MED":"MED", -}, - -'BINARY_WINDS_FILE_FORMAT':{ - "SERAFIN":"SERAFIN", - "SERAFIND":"SERAFIND", - "MED":"MED", -}, - -'REFERENCE_FILE_FORMAT':{ - "SERAFIN":"SERAFIN", - "SERAFIND":"SERAFIND", - "MED":"MED", -}, - -'BINARY_TIDAL_WATER_FILE_FORMAT':{ - "SERAFIN":"SERAFIN", - "SERAFIND":"SERAFIND", - "MED":"MED", -}, - -'BINARY_CURRENTS_FILE_FORMAT':{ - "SERAFIN":"SERAFIN", - "SERAFIND":"SERAFIND", - "MED":"MED", -}, - -'GLOBAL_RESULT_FILE_FORMAT':{ - "SERAFIN?":"SERAFIN?", - "SERAFIND":"SERAFIND", - "MED":"MED", -}, - -'BINARY_DATA_FILE_1_FORMAT':{ - "":"", - "SERAFIN":"SERAFIN", - "SERAFIND":"SERAFIND", - "MED":"MED", -}, - -'PARTITIONING_TOOL':{ - "METIS":"METIS", - "SCOTCH":"SCOTCH", - "PARMETIS":"PARMETIS", - "PTSCOTCH":"PTSCOTCH", -}, - -'IMPOSED_SPECTRA_FILE_FORMAT':{ - "SERAFIN":"SERAFIN", - "SERAFIND":"SERAFIND", - "MED":"MED", -}, - -} diff --git a/Telemac/tomawac_labelCataToIhm_en.qm b/Telemac/tomawac_labelCataToIhm_en.qm deleted file mode 100644 index 435e9433..00000000 Binary files a/Telemac/tomawac_labelCataToIhm_en.qm and /dev/null differ diff --git a/Telemac/tomawac_labelCataToIhm_fr.qm b/Telemac/tomawac_labelCataToIhm_fr.qm deleted file mode 100644 index 3eefb627..00000000 Binary files a/Telemac/tomawac_labelCataToIhm_fr.qm and /dev/null differ diff --git a/Telemac/transforme/ReadMe b/Telemac/transforme/ReadMe deleted file mode 100644 index f81dd842..00000000 --- a/Telemac/transforme/ReadMe +++ /dev/null @@ -1,10 +0,0 @@ -il faut les 2 fichiers cata_name2eng_name.ts et cata_name2fra_name.ts -./reEcrittsEn.py -i cata_name2eng_name.ts -d dicoCasEnToCata.py -t labelCataToIhmEn.ts -regler à la main les histoires de "" -modifier DicoCasEnToCata en dicoCataToEng - - -./reEcrittsFr.py -i cata_name2fra_name.ts -d dicoCasFrToCata.py -t labelCataToIhmFr.ts -regler à la main les histoires de "" -modifier DicoCasEnToCata en dicoCataToFr -attention a defaut default... diff --git a/Telemac/transforme/reEcrittsEn.py b/Telemac/transforme/reEcrittsEn.py deleted file mode 100755 index be1305a7..00000000 --- a/Telemac/transforme/reEcrittsEn.py +++ /dev/null @@ -1,139 +0,0 @@ -#!/usr/bin/env python -import sys, re -dicoCataToLabel={} -dicoCataToTelemac={} -Entete = '' -Entete +='' -Entete +='\n' -Entete +=' @defaut\n' - -Fin ='\n\n' - -pattern_In=re.compile(r'^\s*(?P.*)\s*$') -pattern_Out=re.compile(r'^\s*(?P.*)\s*$') - -listeMaj=[] -listeMaj.append(('for h','for H')) -listeMaj.append(('pour h','pour H')) -listeMaj.append(('for u','for U')) -listeMaj.append(('pour u','pour U')) -listeMaj.append(('of k','of K')) -listeMaj.append(('de k','de K')) -listeMaj.append(('of h','of H')) -listeMaj.append(('de h','de H')) -listeMaj.append(('u and v','U and V')) -listeMaj.append(('u et v','U et V')) -listeMaj.append(('on h','on H')) -listeMaj.append(('sur h','sur H')) -listeMaj.append(('supg','SUPG')) -listeMaj.append(('k and epsilon','K and Epsilon')) -listeMaj.append(('k-epsilon','K-Epsilon')) -listeMaj.append(('gmres','GMRES')) -listeMaj.append(('cgstab','CGSTAB')) -listeMaj.append(('q(z)','Q(Z)')) -listeMaj.append(('z(q)','Z(Q)')) -listeMaj.append(('wgs84','WGS84')) -listeMaj.append(('wgs84','UTM')) -listeMaj.append(('n-scheme','N-Scheme')) -listeMaj.append(('scheme n','Scheme N')) -listeMaj.append(('psi-scheme','PSI-Scheme')) -listeMaj.append((' psi',' PSI')) -listeMaj.append(('f(t90)','F(T90)')) -listeMaj.append(('(pa)','(Pa)')) -listeMaj.append(('h clipping','H clipping')) -listeMaj.append(('delwaq','DELWAQ')) -listeMaj.append(('tomawac','TOMAWAC')) -listeMaj.append(('chezy','CHEZY')) -listeMaj.append(('hllc','HLLC')) -listeMaj.append(('c-u','C-U')) -listeMaj.append(('c,u,v','C,U,V')) -listeMaj.append(('h,u,v','H,U,V')) -listeMaj.append(('previmer','PREVIMER')) -listeMaj.append(('fes20xx','FES20XX')) -listeMaj.append(('legos-nea','LEGOS-NEA')) -listeMaj.append(('tpxo','TPXO')) -listeMaj.append((' x',' X')) -listeMaj.append((' y',' Y')) -listeMaj.append(('waf','WAF')) -listeMaj.append(('(w/kg)','(W/kg)')) -listeMaj.append(('(j/kg)','(W/kg)')) -listeMaj.append(('zokagoa','Zokagoa')) -listeMaj.append(('nikuradse','Nikuradse')) -listeMaj.append(('froude','Froude')) -listeMaj.append(('gauss','Gauss')) -listeMaj.append(('seidel','Seidel')) -listeMaj.append(('leo','Leo')) -listeMaj.append(('postma','Postma')) -listeMaj.append(('crout','Crout')) -listeMaj.append(('okada','Okada')) -listeMaj.append(('jmj','JMJ')) -listeMaj.append(('haaland','HAALAND')) -listeMaj.append(('grad(u)','grad(U)')) -listeMaj.append(('variable z','variable Z')) -listeMaj.append(('variable r','variable R')) -listeMaj.append(('ascii','ASCII')) - - -def traite(fichier,fichierDico, fichierTs): - f=open(fichier,'r') - t=f.read() - for ligne in t.split('\n'): - if pattern_In.match(ligne): - m=pattern_In.match(ligne) - ident=m.group('ident') - if pattern_Out.match(ligne): - m=pattern_Out.match(ligne) - traduit=m.group('traduit') - dicoCataToTelemac[ident]=traduit - traduitMin=traduit.lower() - for t in listeMaj : - traduit=traduitMin.replace(t[0],t[1]) - traduitMin=traduit - chaine=traduitMin[0].upper()+traduitMin[1:] - dicoCataToLabel[ident]=chaine - f.close() - - f=open(fichierDico,'w') - f.write ("dicoCataToEngTelemac = {\n") - for k in dicoCataToTelemac.keys() : - l= ' "'+ k +'" : "'+ dicoCataToTelemac[k]+'",\n' - f.write(l) - f.write(" }\n") - f.write( "dicoCasEnToCata = {\n") - for k in dicoCataToTelemac.keys() : - l= ' "'+ dicoCataToTelemac[k] +'" : "'+ k+'",\n' - f.write(l) - f.write( " }\n") - f.close() - - f=open(fichierTs,'w') - f.write( Entete) - for k in dicoCataToTelemac.keys() : - texte = " \n " - texte+= k - texte+= "\n " - texte+= dicoCataToLabel[k] - texte+= "\n \n" - f.write( texte) - - f.write( Fin) - - -if __name__ == "__main__": - import optparse - parser=optparse.Optionparser(usage="utilisation : %prog [options]") - parser.add_option(u"-i","--input",dest="fichierIn",type='string', - help=("nom du fichier ts a traduire")) - parser.add_option(u"-d","--dico",dest="fichierDico",type='string', - help=("nom du fichier contenant les dictionnaires labelTelemac:labelCata en sortie")) - parser.add_option(u"-t","--tsFile",dest="fichierTs",type='string', - help=("nom du fichier ts contenant labelCata vers label IHM")) - - - (options,args)=parser.parse_args(sys.argv[1:]) - if options.fichierIn == None or options.fichierDico == None or options.fichierTs==None : - print 'reEcrittsEn.py -i -d -t ' - print './reEcrittsEn.py -i cata_name2eng_name.ts -d dicoCasEnToCata.py -t labelCataToIhmEn.ts' - sys.exit(1) - traite(options.fichierIn,options.fichierDico,options.fichierTs) - diff --git a/Telemac/transforme/reEcrittsFr.py b/Telemac/transforme/reEcrittsFr.py deleted file mode 100755 index 0eea22cd..00000000 --- a/Telemac/transforme/reEcrittsFr.py +++ /dev/null @@ -1,139 +0,0 @@ -#!/usr/bin/env python -import sys, re -dicoCataToLabel={} -dicoCataToTelemac={} -Entete = '' -Entete +='' -Entete +='\n' -Entete +=' @defaut\n' - -Fin ='\n\n' - -pattern_In=re.compile(r'^\s*(?P.*)\s*$') -pattern_Out=re.compile(r'^\s*(?P.*)\s*$') - -listeMaj=[] -listeMaj.append(('for h','for H')) -listeMaj.append(('pour h','pour H')) -listeMaj.append(('for u','for U')) -listeMaj.append(('pour u','pour U')) -listeMaj.append(('of k','of K')) -listeMaj.append(('de k','de K')) -listeMaj.append(('of h','of H')) -listeMaj.append(('de h','de H')) -listeMaj.append(('u and v','U and V')) -listeMaj.append(('u et v','U et V')) -listeMaj.append(('on h','on H')) -listeMaj.append(('sur h','sur H')) -listeMaj.append(('supg','SUPG')) -listeMaj.append(('k and epsilon','K and Epsilon')) -listeMaj.append(('k-epsilon','K-Epsilon')) -listeMaj.append(('gmres','GMRES')) -listeMaj.append(('cgstab','CGSTAB')) -listeMaj.append(('q(z)','Q(Z)')) -listeMaj.append(('z(q)','Z(Q)')) -listeMaj.append(('wgs84','WGS84')) -listeMaj.append(('wgs84','UTM')) -listeMaj.append(('n-scheme','N-Scheme')) -listeMaj.append(('scheme n','Scheme N')) -listeMaj.append(('psi-scheme','PSI-Scheme')) -listeMaj.append((' psi',' PSI')) -listeMaj.append(('f(t90)','F(T90)')) -listeMaj.append(('(pa)','(Pa)')) -listeMaj.append(('h clipping','H clipping')) -listeMaj.append(('delwaq','DELWAQ')) -listeMaj.append(('tomawac','TOMAWAC')) -listeMaj.append(('chezy','CHEZY')) -listeMaj.append(('hllc','HLLC')) -listeMaj.append(('c-u','C-U')) -listeMaj.append(('c,u,v','C,U,V')) -listeMaj.append(('h,u,v','H,U,V')) -listeMaj.append(('previmer','PREVIMER')) -listeMaj.append(('fes20xx','FES20XX')) -listeMaj.append(('legos-nea','LEGOS-NEA')) -listeMaj.append(('tpxo','TPXO')) -listeMaj.append((' x',' X')) -listeMaj.append((' y',' Y')) -listeMaj.append(('waf','WAF')) -listeMaj.append(('(w/kg)','(W/kg)')) -listeMaj.append(('(j/kg)','(W/kg)')) -listeMaj.append(('zokagoa','Zokagoa')) -listeMaj.append(('nikuradse','Nikuradse')) -listeMaj.append(('froude','Froude')) -listeMaj.append(('gauss','Gauss')) -listeMaj.append(('seidel','Seidel')) -listeMaj.append(('leo','Leo')) -listeMaj.append(('postma','Postma')) -listeMaj.append(('crout','Crout')) -listeMaj.append(('okada','Okada')) -listeMaj.append(('jmj','JMJ')) -listeMaj.append(('haaland','HAALAND')) -listeMaj.append(('grad(u)','grad(U)')) -listeMaj.append(('variable z','variable Z')) -listeMaj.append(('variable r','variable R')) -listeMaj.append(('ascii','ASCII')) - - -def traite(fichier,fichierDico, fichierTs): - f=open(fichier,'r') - t=f.read() - for ligne in t.split('\n'): - if pattern_In.match(ligne): - m=pattern_In.match(ligne) - ident=m.group('ident') - if pattern_Out.match(ligne): - m=pattern_Out.match(ligne) - traduit=m.group('traduit') - dicoCataToTelemac[ident]=traduit - traduitMin=traduit.lower() - for t in listeMaj : - traduit=traduitMin.replace(t[0],t[1]) - traduitMin=traduit - chaine=traduitMin[0].upper()+traduitMin[1:] - dicoCataToLabel[ident]=chaine - f.close() - - f=open(fichierDico,'w') - f.write ("dicoCataToFrTelemac = {\n") - for k in dicoCataToTelemac.keys() : - l= ' "'+ k +'" : "'+ dicoCataToTelemac[k]+'",\n' - f.write(l) - f.write(" }\n") - f.write( "dicoCasFrToCata = {\n") - for k in dicoCataToTelemac.keys() : - l= ' "'+ dicoCataToTelemac[k] +'" : "'+ k+'",\n' - f.write(l) - f.write( " }\n") - f.close() - - f=open(fichierTs,'w') - f.write( Entete) - for k in dicoCataToTelemac.keys() : - texte = " \n " - texte+= k - texte+= "\n " - texte+= dicoCataToLabel[k] - texte+= "\n \n" - f.write( texte) - - f.write( Fin) - - -if __name__ == "__main__": - import optparse - parser=optparse.Optionparser(usage="utilisation : %prog [options]") - parser.add_option(u"-i","--input",dest="fichierIn",type='string', - help=("nom du fichier ts a traduire")) - parser.add_option(u"-d","--dico",dest="fichierDico",type='string', - help=("nom du fichier contenant les dictionnaires labelTelemac:labelCata en sortie")) - parser.add_option(u"-t","--tsFile",dest="fichierTs",type='string', - help=("nom du fichier ts contenant labelCata vers label IHM")) - - - (options,args)=parser.parse_args(sys.argv[1:]) - if options.fichierIn == None or options.fichierDico == None or options.fichierTs==None : - print 'reEcritts.py -i -d -t ' - print './reEcritts.py -i cata_name2eng_name.ts -d dicoCasEnToCata.py -t tsfile' - sys.exit(1) - traite(options.fichierIn,options.fichierDico,options.fichierTs) - diff --git a/Telemac/waqtel_cata_auto.py b/Telemac/waqtel_cata_auto.py deleted file mode 100644 index ee99f85d..00000000 --- a/Telemac/waqtel_cata_auto.py +++ /dev/null @@ -1,1033 +0,0 @@ - -# -*- coding: latin-1 -*- - -from Accas import * -class DateJJMMAAAA: - def __init__(self): - self.ntuple=3 - - def __convert__(self,valeur): - if type(valeur) == types.StringType: return None - if len(valeur) != self.ntuple: return None - return valeur - - def info(self): - return "Date : jj/mm/aaaa " - - __repr__=info - __str__=info - -class grma(GEOM): - pass - -import types -class Tuple: - def __init__(self,ntuple): - self.ntuple=ntuple - - def __convert__(self,valeur): - if type(valeur) == types.StringType: - return None - if len(valeur) != self.ntuple: - return None - return valeur - - def info(self): - return "Tuple de %s elements" % self.ntuple - - - -JdC = JDC_CATA (code = 'WAQTEL', - execmodul = None, - ) -# ======================================================================= -# Catalog entry for the MAP function : c_pre_interfaceBody_mesh -# ======================================================================= - -VERSION_CATALOGUE="TRUNK_20180306" -# ----------------------------------------------------------------------- -INPUT_OUTPUT__FILES = PROC(nom= "INPUT_OUTPUT__FILES",op = None, -# ----------------------------------------------------------------------- -# ----------------------------------- - RESULTS_FILE_FORMAT = SIMP(statut ='f', -# ----------------------------------- - typ = 'TXM', - into = ['SERAFIN','SERAFIND','MED'], - defaut = 'SERAFIN?', - fr = """Format du fichier des resultats. -Les valeurs possibles sont : -- SERAFIN : format standard simple precision pour Telemac; -- SERAFIND: format standard double precision pour Telemac; -- MED : format MED base sur HDF5""", - ang = """results file format. -Possible values are: -- SERAFIN : classical single precision format in Telemac; -- SERAFIND: classical double precision format in Telemac; -- MED : MED format based on HDF5""", - ), -# ----------------------------------- - GEOMETRY_FILE_FORMAT = SIMP(statut ='f', -# ----------------------------------- - typ = 'TXM', - into = ['SERAFIN','SERAFIND','MED'], - defaut = 'SERAFIN?', - fr = """Format du fichier de geometrie. -Les valeurs possibles sont : -- SERAFIN : format standard simple precision pour Telemac; -- SERAFIND: format standard double precision pour Telemac; -- MED : format MED base sur HDF5""", - ang = """geometry file format. -Possible values are: -- SERAFIN : classical single precision format in Telemac; -- SERAFIND: classical double precision format in Telemac; -- MED : MED format based on HDF5""", - ), -# ----------------------------------- - HYDRODYNAMIC_FILE_FORMAT = SIMP(statut ='f', -# ----------------------------------- - typ = 'TXM', - into = ['SERAFIN','SERAFIND','MED'], - defaut = 'SERAFIN?', - fr = """Format du fichier hydrodynamique. -Les valeurs possibles sont : -- SERAFIN : format standard simple precision pour Telemac; -- SERAFIND: format standard double precision pour Telemac; -- MED : format MED base sur HDF5""", - ang = """hydrodynamic file format. -Possible values are: -- SERAFIN : classical single precision format in Telemac; -- SERAFIND: classical double precision format in Telemac; -- MED : MED format based on HDF5""", - ), -# ----------------------------------- - REFERENCE_FILE_FORMAT = SIMP(statut ='f', -# ----------------------------------- - typ = 'TXM', - into = ['SERAFIN','SERAFIND','MED'], - defaut = 'SERAFIN?', - fr = """Format du fichier hydrodynamique. -Les valeurs possibles sont : -- SERAFIN : format standard simple precision pour Telemac; -- SERAFIND: format standard double precision pour Telemac; -- MED : format MED base sur HDF5""", - ang = """hydrodynamic file format. -Possible values are: -- SERAFIN : classical single precision format in Telemac; -- SERAFIND: classical double precision format in Telemac; -- MED : MED format based on HDF5""", - ), -# ----------------------------------- - NAMES = FACT(statut='f', -# ----------------------------------- -# ----------------------------------- - STEERING_FILE = SIMP(statut ='f', -# ----------------------------------- - typ = ('Fichier','All Files (*)'), - defaut = '', - fr = """Nom du fichier contenant les parametres du calcul -QE a realiser.""", - ang = """Name of the file containing parameters of the WAQ -computation Written by the user.""", - ), -# ----------------------------------- - FORTRAN_FILE = SIMP(statut ='f', -# ----------------------------------- - typ = ('Fichier','All Files (*)'), max='**', - defaut = 'DEFAUT', - fr = """Nom du fichier FORTRAN a soumettre.""", - ang = """Name of FORTRAN file to be submitted.""", - ), -# ----------------------------------- - BOUNDARY_CONDITIONS_FILE = SIMP(statut ='f', -# ----------------------------------- - typ = ('Fichier','All Files (*)'), max='**', - fr = """Nom du fichier contenant les types de conditions aux limites. -Ce fichier est rempli de facon automatique par le mailleur au moyen de -couleurs affectees aux noeuds des frontieres du domaine de calcul.""", - ang = """Name of the file containing the types of boundary conditions. -This file is filled automatically by the mesh generator through -through colours that are assigned to the boundary nodes.""", - ), -# ----------------------------------- - AED2_STEERING_FILE = SIMP(statut ='f', -# ----------------------------------- - typ = ('Fichier','All Files (*)'), - defaut = '', - fr = """Nom du fichier contenant les parametres AED2 du calcul -QE a realiser.""", - ang = """Name of the file containing AED2 parameters of the WAQ -computation.""", - ), -# ----------------------------------- - AED2_PHYTOPLANKTON_STEERING_FILE = SIMP(statut ='f', -# ----------------------------------- - typ = ('Fichier','All Files (*)'), - defaut = '', - fr = """Nom du fichier contenant les parametres phytoplancton AED2 du ca -QE a realiser.""", - ang = """Name of the file containing AED2 phytoplankton parameters of th -computation.""", - ), -# ----------------------------------- - AED2_ZOOPLANKTON_STEERING_FILE = SIMP(statut ='f', -# ----------------------------------- - typ = ('Fichier','All Files (*)'), - defaut = '', - fr = """Nom du fichier contenant les parametres zooplancton AED2 du calc -QE a realiser.""", - ang = """Name of the file containing AED2 zooplankton parameters of the -computation.""", - ), -# ----------------------------------- - AED2_PATHOGEN_STEERING_FILE = SIMP(statut ='f', -# ----------------------------------- - typ = ('Fichier','All Files (*)'), - defaut = '', - fr = """Nom du fichier contenant les parametres pathogenes AED2 du calcu -QE a realiser.""", - ang = """Name of the file containing AED2 pathogen parameters of the WAQ -computation.""", - ), -# ----------------------------------- - AED2_BIVALVE_STEERING_FILE = SIMP(statut ='f', -# ----------------------------------- - typ = ('Fichier','All Files (*)'), - defaut = '', - fr = """Nom du fichier contenant les parametres bivalves AED2 du calcul -QE a realiser.""", - ang = """Name of the file containing AED2 bivalve parameters of the WAQ -computation.""", - ), - ), -) -# ----------------------------------------------------------------------- -INPUT_OUTPUT__INFORMATION = PROC(nom= "INPUT_OUTPUT__INFORMATION",op = None, -# ----------------------------------------------------------------------- -# ----------------------------------- - COMPUTATIONAL_INFORMATION = FACT(statut='f', -# ----------------------------------- -# ----------------------------------- - WAQ_CASE_TITLE = SIMP(statut ='f', -# ----------------------------------- - typ = 'TXM', - defaut = '', - fr = """Titre du cas etudie. Ce titre sera inscrit dans les sorties.""", - ang = """Title of the case being considered. -This title shall be marked on the printouts.""", - ), -# ----------------------------------- - RELEASE = SIMP(statut ='f', -# ----------------------------------- - typ = 'TXM', - defaut = 'TRUNK', - fr = """Numero de version des bibliotheques utilisees par WAQTEL.""", - ang = """Release of the libraries used by WAQTEL.""", - ), -# ----------------------------------- - DESCRIPTION_OF_LIBRARIES = SIMP(statut ='f', -# ----------------------------------- - typ = 'TXM', min= 5, max= 5, - defaut = 'builds|PPP|lib|biefMMMVVV.LLL;builds|PPP|lib|damoMMMVVV.LLL;builds|PPP|lib|hermesMMMVVV.LLL;builds|PPP|lib|parallelMMMVVV.LLL;builds|PPP|lib|specialMMMVVV.LLL', - fr = """Description des librairies de WAQ""", - ang = """LIBRARIES description""", - ), -# ----------------------------------- - DEFAULT_EXECUTABLE = SIMP(statut ='f', -# ----------------------------------- - typ = 'TXM', - defaut = 'builds|PPP|bin|waqtelMMMVVV.exe', - fr = """Executable par defaut de WAQ""", - ang = """Default executable for WAQ""", - ), -# ----------------------------------- - DEFAULT_PARALLEL_EXECUTABLE = SIMP(statut ='f', -# ----------------------------------- - typ = 'TXM', - defaut = 'builds|PPP|bin|waqtelMMMVVV.exe', - fr = """Executable parallele par defaut de WAQ""", - ang = """Default parallel executable for WAQ""", - ), - ), -# ----------------------------------- - COMPUTATION_ENVIRONMENT = FACT(statut='f', -# ----------------------------------- -# ----------------------------------- - DICTIONARY = SIMP(statut ='f', -# ----------------------------------- - typ = ('Fichier','All Files (*)'), - defaut = 'waqtel.dico', - fr = """Dictionnaire des mots cles.""", - ang = """Key word dictionary.""", - ), - ), -) -# ----------------------------------------------------------------------- -IN_OUT_WQ = PROC(nom= "IN_OUT_WQ",op = None, -# ----------------------------------------------------------------------- -# ----------------------------------- - WATER_QUALITY_PRINTOUT_PERIOD = SIMP(statut ='o', -# ----------------------------------- - typ = 'I', - defaut = 1, - fr = """periode pour les sorties graphiques QE""", - ang = """graphic outputs period for waq""", - ), -) -# ----------------------------------------------------------------------- -INPUT_OUTPUT__GRAPHICS_AND_LISTING = PROC(nom= "INPUT_OUTPUT__GRAPHICS_AND_LISTING",op = None, -# ----------------------------------------------------------------------- -# ----------------------------------- - VARIABLES_FOR_WAQ_PRINTOUTS = SIMP(statut ='f', -# ----------------------------------- - typ = 'TXM', max='**', - into = ['to edit !!!'], - defaut = '', - fr = """Noms des variables que l''utilisateur veut ecrire dans -le fichier des resultats QE. -Chaque variable est representee par une lettre.""", - ang = """Names of variables the user wants to write -into the graphic results file.""", - ), -) -# ----------------------------------------------------------------------- -RESULTS = PROC(nom= "RESULTS",op = None, -# ----------------------------------------------------------------------- -# ----------------------------------- - WAQ_VARIABLES_TO_BE_PRINTED = SIMP(statut ='f', -# ----------------------------------- - typ = 'TXM', max='**', - into = ['� editer'], - defaut = '', - fr = """Nom des variables que l''utilisateur desire ecrire sur -le listing. Meme possibilites que pour les sorties graphiques.""", - ang = """Names of variables the user wants to write on the listing. -Each variable is represented by a letter in the same manner as -it is done in the graphic results file.""", - ), -# ----------------------------------- - RESULTS_FILE = SIMP(statut ='f', -# ----------------------------------- - typ = ('Fichier','All Files (*)','Sauvegarde'), max='**', - fr = """Nom du fichier dans lequel seront ecrits les resultats avec -une periodicite donnee par le mot cle PERIODE DE SORTIE QUALITE D EAU.""", - ang = """Name of the file into wich the computation results shall be -written, the periodicity being given by the keyword -WAQ PRINTOUT PERIOD.""", - ), -# ----------------------------------- - MASS_BALANCE = SIMP(statut ='f', -# ----------------------------------- - typ = bool, - defaut = False, - fr = """Determine si oui ou non le bilan de masse est realise.""", - ang = """Determines whether a check of the mass-balance over the domain -is made or not""", - ), -) -# ----------------------------------------------------------------------- -DATA_FILES = PROC(nom= "DATA_FILES",op = None, -# ----------------------------------------------------------------------- -# ----------------------------------- - GEOMETRY_FILE = SIMP(statut ='f', -# ----------------------------------- - typ = ('Fichier','All Files (*)'), max='**', - defaut = '', - fr = """fichier de geometrie, pareil que celui de telemac2d""", - ang = """geometry file same as the telemac2d one""", - ), -# ----------------------------------- - HYDRODYNAMIC_FILE = SIMP(statut ='f', -# ----------------------------------- - typ = ('Fichier','All Files (*)'), max='**', - defaut = '', - fr = """fichier des donnees hydrodynamiqes provenant de telemac2d""", - ang = """hydrodynamic data file coming from telemac2d""", - ), -# ----------------------------------- - REFERENCE_FILE = SIMP(statut ='f', -# ----------------------------------- - typ = ('Fichier','All Files (*)'), max='**', - defaut = '', - fr = """Nom du fichier servant a valider le calcul. -Si VALIDATION = OUI, les resultats du calcul vont etre -comparees aux valeurs contenues dans ce fichier. -La comparaison est effectuee par le sous-programme VALIDA. -� implementer""", - ang = """Name of the file used to validate the computation. -If VALIDATION = YES, the results of the computation will be -compared with the values of this file. The comparison is -made by the subroutine BIEF\_VALIDA. (not implemented yet)""", - ), -) -# ----------------------------------------------------------------------- -MISCELLANEOUS = PROC(nom= "MISCELLANEOUS",op = None, -# ----------------------------------------------------------------------- -# ----------------------------------- - VALIDATION = SIMP(statut ='f', -# ----------------------------------- - typ = bool, - defaut = False, - fr = """Option utilisee principalement pour le dossier de validation. -Si ce mot-cle vaut OUI, les resultats du calcul vont alors etre -compares aux valeurs du fichier de reference.""", - ang = """This option is primarily used for the validation -documents. If this keyword is equal to YES, the REFERENCE FILE -is then considered as a reference which the computation is -going to be compared with.""", - ), -# ----------------------------------- - b_VALIDATIONG = BLOC(condition="VALIDATION == True", -# ----------------------------------- - ), -# ----------------------------------- - DEBUGGER = SIMP(statut ='f', -# ----------------------------------- - typ = 'I', - defaut = [0], - fr = """Pour imprimer la sequence des appels, mettre 1""", - ang = """If 1, calls of subroutines will be printed in the listing""", - ), -) -# ----------------------------------------------------------------------- -PHYSICS = PROC(nom= "PHYSICS",op = None, -# ----------------------------------------------------------------------- -# ----------------------------------- - WATER_DENSITY = SIMP(statut ='f', -# ----------------------------------- - typ = 'R', - defaut = 999.972, - fr = """Fixe la valeur de la masse volumique de l''eau.""", - ang = """sets the value of water density.""", - ), -# ----------------------------------- - KINEMATIC_WATER_VISCOSITY = SIMP(statut ='f', -# ----------------------------------- - typ = 'R', - defaut = 1.E-6, - fr = """Definit la viscosite cinematique de l''eau. - M/S2""", - ang = """Specifies the water kinematic viscosity. - M/S2""", - ), -) -# ----------------------------------------------------------------------- -SUSPENSION = PROC(nom= "SUSPENSION",op = None, -# ----------------------------------------------------------------------- -# ----------------------------------- - DISPERSION_ALONG_THE_FLOW = SIMP(statut ='f', -# ----------------------------------- - typ = 'R', - defaut = [1.E-2], - fr = """""", - ang = """""", - ), -# ----------------------------------- - DISPERSION_ACROSS_THE_FLOW = SIMP(statut ='f', -# ----------------------------------- - typ = 'R', - defaut = [1.E-2], - fr = """""", - ang = """""", - ), -) -# ----------------------------------------------------------------------- -WAQ_PARAMETERS = PROC(nom= "WAQ_PARAMETERS",op = None, -# ----------------------------------------------------------------------- -# ----------------------------------- - EUTROPHICATION = FACT(statut='f', -# ----------------------------------- -# ----------------------------------- - CONSTANT_OF_DEGRADATION_OF_ORGANIC_LOAD_K120 = SIMP(statut ='f', -# ----------------------------------- - typ = 'R', - defaut = [0.35], - fr = """en J-1""", - ang = """in J-1""", - ), -# ----------------------------------- - CONSTANT_FOR_THE_NITRIFICATION_KINETIC_K520 = SIMP(statut ='f', -# ----------------------------------- - typ = 'R', - defaut = [0.35], - fr = """EN J-1""", - ang = """IN J-1""", - ), -# ----------------------------------- - OXYGENE_PRODUCED_BY_PHOTOSYNTHESIS = SIMP(statut ='f', -# ----------------------------------- - typ = 'R', - defaut = [0.15], - fr = """EN MgO2/MicroGChLA""", - ang = """IN MgO2/MicroGChLA""", - ), -# ----------------------------------- - CONSUMED_OXYGEN_BY_NITRIFICATION = SIMP(statut ='f', -# ----------------------------------- - typ = 'R', - defaut = [5.2], - fr = """EN MgO2/MgNH4""", - ang = """IN MgO2/MgNH4""", - ), -# ----------------------------------- - BENTHIC_DEMAND = SIMP(statut ='f', -# ----------------------------------- - typ = 'R', - defaut = [0.1], - fr = """EN gO2/m2/J""", - ang = """IN gO2/m2/J""", - ), -# ----------------------------------- - K2_REAERATION_COEFFICIENT = SIMP(statut ='f', -# ----------------------------------- - typ = 'R', - defaut = [0.9], - fr = """EN J-1""", - ang = """IN J-1""", - ), -# ----------------------------------- - FORMULA_FOR_COMPUTING_K2 = SIMP(statut ='f', -# ----------------------------------- - typ = 'I', - defaut = [1], - fr = """DONNE LE CHOIX DE CALCUL DE LA FORMULE DE K2 DE LA -REAERATION NATURELLE, LES OPTIONS SONT LES SUIVANTS: - 0- K2 CONSTANT, VALEUR DE K2=0.9 - 1- FORMULE DE TENESSEE VALLEY AUTHORITY - 2- FORMULE DE OWENS ET AL. - 3- FORMULE DE CHURCHILL ET AL. - 4- FORMULE DE O CONNOR \& DOBBINS - 5- FOURMULA OF ??""", - ang = """GIVES HOW TO CUMPUTE THE REAERATION COEFFICIENT K2 -OPTIONS ARE: - 0- K2 CONSTANT, IN THIS CASE K2=0.9 - 1- FORMULA OF THE TENESSEE VALLEY AUTHORITY - 2- FORMULA OF OWENS ET AL. - 3- FORMULA OF CHURCHILL ET AL. - 4- FORMULA OF O CONNOR \& DOBBINS - 5- FORMULA OF ??""", - ), -# ----------------------------------- - O2_SATURATION_DENSITY_OF_WATER__CS_ = SIMP(statut ='f', -# ----------------------------------- - typ = 'R', - defaut = [11.], - fr = """EN Mg/l""", - ang = """IN Mg/l""", - ), -# ----------------------------------- - FORMULA_FOR_COMPUTING_CS = SIMP(statut ='f', -# ----------------------------------- - typ = 'I', - defaut = [0], - fr = """EN J-1, LES OPTIONS SONT LES SUIVANTES: - 0: CONSTANTE - 1: FORMULE DE ELMORE \& HAYES - 2: FORMULE DE MONTGOMERY""", - ang = """IN J-1, HERE ARE AVAILABLE OPTIONS - 0: CONSTANT - 1: ELMORE \& HAYES FORMULA - 2: MONTGOMERY FORMULA""", - ), -# ----------------------------------- - SEDIMENTATION_VELOCITY_OF_ORGANIC_PHOSPHORUS = SIMP(statut ='f', -# ----------------------------------- - typ = 'R', - defaut = [0.], - fr = """EN M/S""", - ang = """IN M/S""", - ), -# ----------------------------------- - SEDIMENTATION_VELOCITY_OF_NON_ALGAL_NITROGEN = SIMP(statut ='f', -# ----------------------------------- - typ = 'R', - defaut = [0.], - fr = """EN M/S""", - ang = """IN M/S""", - ), -# ----------------------------------- - MAXIMUM_ALGAL_GROWTH_RATE_AT_20C = SIMP(statut ='f', -# ----------------------------------- - typ = 'R', - defaut = 2., - fr = """TAUX DE CROISSANCE ALGALE MAXIAMALE A 20C""", - ang = """MAXIMUM ALGAL GROWTH RATE AT 20C""", - ), -# ----------------------------------- - SECCHI_DEPTH = SIMP(statut ='f', -# ----------------------------------- - typ = 'R', - defaut = 0.9, - fr = """EN M""", - ang = """IN M""", - ), -# ----------------------------------- - VEGETAL_TURBIDITY_COEFFICIENT_WITHOUT_PHYTO = SIMP(statut ='f', -# ----------------------------------- - typ = 'R', - defaut = [0.], - fr = """COEFFICIENT DE TURBIDITE VEGETALE SANS - PHYTOPLANCTONS - EN m-1""", - ang = """COEFFICIENT OF VEGATAL TURBIDITY WITHOUT - PHYTOPLANKTON - in m-1""", - ), -# ----------------------------------- - PARAMETER_OF_CALIBRATION_OF_SMITH_FORMULA = SIMP(statut ='f', -# ----------------------------------- - typ = 'R', - defaut = [120.], - fr = """EN W/m2""", - ang = """IN W/m2""", - ), -# ----------------------------------- - CONSTANT_OF_HALF_SATURATION_WITH_PHOSPHATE = SIMP(statut ='f', -# ----------------------------------- - typ = 'R', - defaut = [0.005], - fr = """EN mgP/l""", - ang = """IN mgP/l""", - ), -# ----------------------------------- - CONSTANT_OF_HALF_SATURATION_WITH_NITROGEN = SIMP(statut ='f', -# ----------------------------------- - typ = 'R', - defaut = [0.03], - fr = """en mgN/l""", - ang = """in mgN/l""", - ), -# ----------------------------------- - ALGAL_TOXICITY_COEFFICIENTS = SIMP(statut ='f', -# ----------------------------------- - typ = 'R', min= 2, max= 2, - defaut = [1.,0.], - fr = """ALPHA1 ET ALPHA2""", - ang = """ALPHA1 AND ALPHA2""", - ), -# ----------------------------------- - RESPIRATION_RATE_OF_ALGAL_BIOMASS = SIMP(statut ='f', -# ----------------------------------- - typ = 'R', - defaut = [0.05], - fr = """EN J-1, POUR 20 C""", - ang = """IN J-1, FOR 20 c""", - ), -# ----------------------------------- - PROPORTION_OF_PHOSPHORUS_WITHIN_PHYTO_CELLS = SIMP(statut ='f', -# ----------------------------------- - typ = 'R', - defaut = [0.0025], - fr = """EN Mgp/microgchla""", - ang = """IN Mgp/microgchla""", - ), -# ----------------------------------- - PERCENTAGE_OF_PHYSPHORUS_ASSIMILABLE_IN_DEAD_PHYTO = SIMP(statut ='f', -# ----------------------------------- - typ = 'R', - defaut = [0.5], - fr = """EN POURCENTAGE""", - ang = """IN PERCENTAGE""", - ), -# ----------------------------------- - RATE_OF_TRANSFORMATION_OF_POR_TO_PO4 = SIMP(statut ='f', -# ----------------------------------- - typ = 'R', - defaut = [0.03], - fr = """EN J-1""", - ang = """IN J-1""", - ), -# ----------------------------------- - PROPORTION_OF_NITROGEN_WITHIN_PHYTO_CELLS = SIMP(statut ='f', -# ----------------------------------- - typ = 'R', - defaut = [0.0035], - fr = """(fn IN DOCS) EN Mgp/microgchla""", - ang = """IN Mgp/microgchla""", - ), -# ----------------------------------- - PERCENTAGE_OF_NITROGEN_ASSIMILABLE_IN_DEAD_PHYTO = SIMP(statut ='f', -# ----------------------------------- - typ = 'R', - defaut = [0.5], - fr = """(dtn IN DOC) EN POURCENTAGE""", - ang = """IN PERCENTAGE""", - ), -# ----------------------------------- - COEFFICIENTS_OF_ALGAL_MORTALITY_AT_20C = SIMP(statut ='f', -# ----------------------------------- - typ = 'R', min= 2, max= 2, - defaut = [0.1,0.003], - fr = """""", - ang = """""", - ), -# ----------------------------------- - SEDIMENTATION_VELOCITY_OF_ORGANIC_LOAD = SIMP(statut ='f', -# ----------------------------------- - typ = 'R', - defaut = [0.], - fr = """EN M/S""", - ang = """IN M/S""", - ), -# ----------------------------------- - CONSTANT_OF_DEGRADATION_OF_ORGANIC_LOAD_K1 = SIMP(statut ='f', -# ----------------------------------- - typ = 'R', - defaut = [0.25], - fr = """en J-1""", - ang = """in J-1""", - ), -# ----------------------------------- - CONSTANT_OF_NITRIFICATION_KINETIC_K4 = SIMP(statut ='f', -# ----------------------------------- - typ = 'R', - defaut = [0.35], - fr = """en J-1""", - ang = """in J-1""", - ), -# ----------------------------------- - PHOTOSYNTHESIS_P = SIMP(statut ='f', -# ----------------------------------- - typ = 'R', - defaut = [1.], - fr = """en mgO2/J/l""", - ang = """in mgO2/J:l""", - ), -# ----------------------------------- - VEGERAL_RESPIRATION_R = SIMP(statut ='f', -# ----------------------------------- - typ = 'R', - defaut = [0.06], - fr = """en mgO2/J/l""", - ang = """in mgO2/J/l""", - ), -# ----------------------------------- - WATER_TEMPERATURE = SIMP(statut ='f', -# ----------------------------------- - typ = 'R', - defaut = [7.], - fr = """en $^{circ}$C, TEMPERATURE MOYENNE DE L EAU - NECESSAIRE POUR CALCULER LES VALEURS DE CS""", - ang = """in $^{circ}$C, MEAN TEMPERATURE NECESARY FOR - COMPUTING DIFFERENT VALUES OF CS""", - ), -# ----------------------------------- - EROSION_RATE = SIMP(statut ='f', -# ----------------------------------- - typ = 'R', - defaut = [0.], - fr = """""", - ang = """""", - ), -# ----------------------------------- - SEDIMENTATION_CRITICAL_STRESS = SIMP(statut ='f', -# ----------------------------------- - typ = 'R', - defaut = [5.], - fr = """en PA""", - ang = """in PA""", - ), -# ----------------------------------- - CRITICAL_STRESS_OF_RESUSPENSION = SIMP(statut ='f', -# ----------------------------------- - typ = 'R', - defaut = [1000.], - fr = """en PA""", - ang = """in PA""", - ), -# ----------------------------------- - SEDIMENT_SETTLING_VELOCITY = SIMP(statut ='f', -# ----------------------------------- - typ = 'R', - defaut = [6.E-6], - fr = """en M/S""", - ang = """in M/S""", - ), -# ----------------------------------- - EXPONENETIAL_DESINTEGRATION_CONSTANT = SIMP(statut ='f', -# ----------------------------------- - typ = 'R', - defaut = [1.13E-7], - fr = """en S-1, loi de decroissance exponentielle comme celle de la - radioactivite""", - ang = """in S-1, exponential decrease law like the one of radioactivity""", - ), -# ----------------------------------- - COEFFICIENT_OF_DISTRIBUTION = SIMP(statut ='f', -# ----------------------------------- - typ = 'R', - defaut = [1775.], - fr = """en M3/KG ou l/g""", - ang = """in M3/KG or l/g""", - ), -# ----------------------------------- - CONSTANT_OF_DESORPTION_KINETIC = SIMP(statut ='f', -# ----------------------------------- - typ = 'R', - defaut = [2.5E-7], - fr = """en S-1""", - ang = """in S-1""", - ), -# ----------------------------------- - WATER_SPECIFIC_HEAT = SIMP(statut ='f', -# ----------------------------------- - typ = 'R', - defaut = [4180.], - fr = """en J/KG$^{circ}$C""", - ang = """in J/KG$^{circ}$C""", - ), -# ----------------------------------- - AIR_SPECIFIC_HEAT = SIMP(statut ='f', -# ----------------------------------- - typ = 'R', - defaut = [1005.], - fr = """en J/KG$^{circ}$C""", - ang = """in J/KG$^{circ}$C""", - ), -# ----------------------------------- - COEFFICIENTS_OF_AERATION_FORMULA = SIMP(statut ='f', -# ----------------------------------- - typ = 'R', min= 2, max= 2, - defaut = [0.002,0.0012], - fr = """""", - ang = """""", - ), -# ----------------------------------- - COEFFICIENT_OF_CLOUDING_RATE = SIMP(statut ='f', -# ----------------------------------- - typ = 'R', - defaut = 0.2, - fr = """""", - ang = """""", - ), -# ----------------------------------- - COEFFICIENTS_FOR_CALIBRATING_ATMOSPHERIC_RADIATION = SIMP(statut ='f', -# ----------------------------------- - typ = 'R', - defaut = 0.97, - fr = """""", - ang = """""", - ), -# ----------------------------------- - COEFFICIENTS_FOR_CALIBRATING_SURFACE_WATER_RADIATION = SIMP(statut ='f', -# ----------------------------------- - typ = 'R', - defaut = 0.97, - fr = """""", - ang = """""", - ), - ), -# ----------------------------------- - BIOMASS = FACT(statut='f', -# ----------------------------------- -# ----------------------------------- - RATE_OF_TRANSFORMATION_OF_NOR_TO_NO3 = SIMP(statut ='f', -# ----------------------------------- - typ = 'R', - defaut = [0.], - fr = """TAUX DE TRANSFORMATION DU NOR EN NO3 PAR LE BIAIS DE LA - MINERALISATION BACTERIENNE EN J-1""", - ang = """RATE OF TRANSFOMATION OF NOR TO NO3 BY BACTERIA MINERALIZATION - IN J-1""", - ), -# ----------------------------------- - SUNSHINE_FLUX_DENSITY_ON_WATER_SURFACE = SIMP(statut ='f', -# ----------------------------------- - typ = 'R', - defaut = 0., - fr = """DENSITE DE FLUX DU RAYONNEMENT SOLAIRE A LA SURFACE DE L EAU - EN W/m2""", - ang = """DENSITY OF SUNSHINE FLUX ON THE WATER SURFACE - IN W/m2""", - ), - ), -# ----------------------------------- - SOURCES = FACT(statut='f', -# ----------------------------------- -# ----------------------------------- - WEIR_REAERATION_COEFFICIENT_RS = SIMP(statut ='f', -# ----------------------------------- - typ = 'R', - defaut = [1.0], - fr = """EN J-1""", - ang = """IN J-1""", - ), -# ----------------------------------- - FORMULA_FOR_COMPUTING_RS = SIMP(statut ='f', -# ----------------------------------- - typ = 'I', - defaut = [0], - fr = """DONNE LE CHOIX DE CALCUL DE LA FORMULE DE RS DE LA -REAERATION NATURELLE AU NIVEAU DES SEUILS, -LES OPTIONS SONT LES SUIVANTS: - 0- RS CONSTANT, VALEUR DE RS=1.0 - 1- FORMULE DE GAMESON 1 - 2- FORMULE DE GAMESON 2 - 3- FORMULE DE WRL1 - 4- FORMULE DE WRL2""", - ang = """GIVES HOW TO CUMPUTE THE WEIR REAERATION COEFFICIENT RS -OPTIONS ARE: - 0- RS CONSTANT, IN THIS CASE RS=1.0 - 1- FORMULA OF GAMESON 1 - 2- FORMULA OF GAMESON 2 - 3- FORMULA OF WRL 1 - 4- FORMULA OF WRL2""", - ), -# ----------------------------------- - COEFFICIENTS_A_AND_B_FOR_RS_FORMULA = SIMP(statut ='f', -# ----------------------------------- - typ = 'R', min= 2, max= 2, - defaut = [1.2,0.7], - fr = """COEFFICIIENTS INTERVENANT DANS LE CALCUL DE RS -A EST ENTRE 0.65 (EAU TR�S POLLUEE) ET 1.8 (EAU TR�S CLAIRE) -B VARIE BEAUCOUP (VOIR TABLEAU DANS LA DOC)""", - ang = """COEFFICIENTS NEEDED FOR THE CALUCLATION OF RS -A IS BETWEEN 0.65(VERY POLLUTED WATER AND 1.8 (VERY CLEAR WATER))""", - ), - ), -) -# ----------------------------------------------------------------------- -PHYSICAL_PARAMETERS = PROC(nom= "PHYSICAL_PARAMETERS",op = None, -# ----------------------------------------------------------------------- -# ----------------------------------- - ATMOSPHERE_WATER_EXCHANGE_MODEL = SIMP(statut ='f', -# ----------------------------------- - typ = 'TXM', - into = ["NO MODEL","LINEARISED FORMULA AT THE FREE SURFACE","MODEL WITH COMPLETE BALANCE","LINEARISED FORMULA WITHOUT ICE","LINEARISED FORMULA WITH ICE","MODEL WITH COMPLETE BALANCE WITH ICE"], - defaut = ["NO MODEL"], - fr = """Choix du modele d echanges entre l eau et l atmosphere""", - ang = """Choice of the atmosphere-water exchange model.""", - ), -# ----------------------------------- - LIGHTNESS_OF_THE_SKY = SIMP(statut ='f', -# ----------------------------------- - typ = 'TXM', - into = ["VERY BRIGHT, PURE SKY","MODERATELY BRIGHT SKY","FOGGY LIKE THE SKY OF INDUSTRIAL AREA "], - defaut = "MODERATELY BRIGHT SKY", - fr = """degre de clarte (purete) du ciel""", - ang = """how the sky is bright (pure).""", - ), -# ----------------------------------- - COEFFICIENT_TO_CALIBRATE_THE_ATMOSPHERE_WATER_EXCHANGE_MODEL = SIMP(statut ='f', -# ----------------------------------- - typ = 'R', - defaut = [0.0025], - fr = """Valeur du coefficient de calage pour la fonction de vent -dans les modeles d echanges eau-atmosphere -(formule linearisee a la surface ou bilan complet). -Une valeur comprise entre 0.0017 et 0.0035 est conseillee""", - ang = """Value of the calibration coefficient for the wind function -of the atmosphere-water exchange models -(linearised formula at the free surface or complete balance). -A value between 0.0017 and 0.0035 is advised""", - ), -# ----------------------------------- - EVAPORATION_RATE = SIMP(statut ='f', -# ----------------------------------- - typ = 'R', - defaut = [0.], - fr = """taux d evaporation- meme unite que la pluie en m3/s/m2""", - ang = """rate of evaporation - same unit as rainfall in m3/s/m2""", - ), -# ----------------------------------- - FORMULA_OF_ATMOSPHERIC_RADIATION = SIMP(statut ='f', -# ----------------------------------- - typ = 'TXM', - into = ["IDSO AND JACKSON (1969)","SWINBANK (1963)","BRUTSAERT (1975)","YAJIMA TONO DAM (2014)"], - defaut = "SWINBANK (1963)", - fr = """Formule au choix pour le calcul du rayonnement atmospherique. -Voir GLM.""", - ang = """Formula to be chosen to compute the atmospheric radiation. -See GLM.""", - ), -) -# ----------------------------------------------------------------------- -BIOMASS_WQ = PROC(nom= "BIOMASS_WQ",op = None, -# ----------------------------------------------------------------------- -# ----------------------------------- - METHOD_OF_COMPUTATION_OF_RAY_EXCTINCTION_COEFFICIENT = SIMP(statut ='o', -# ----------------------------------- - typ = 'I', - defaut = 1, - fr = """Choix de la methode de calcul du coefficient d extinction - du rayonnement solaire- les choix sont: - 1 - formule d Atkins (1.7/secchi) - 2 - formule de Moss""", - ang = """choice of the method of calculation of the extinction of - sun ray - the choices are : - 1- Atkins formula - 2- Moss formula""", - ), -) -# ----------------------------------------------------------------------- -COUPLING = PROC(nom= "COUPLING",op = None, -# ----------------------------------------------------------------------- -# ----------------------------------- - WAQTEL = FACT(statut='f', -# ----------------------------------- -# ----------------------------------- - DEGRADATION = FACT(statut='f', -# ----------------------------------- -# ----------------------------------- - LAW_OF_TRACERS_DEGRADATION = SIMP(statut ='o', -# ----------------------------------- - typ = 'TXM', min=0, max='**', - into = ["NO DEGRADATION","F(T90) LAW"], - defaut = ["NO DEGRADATION","NO DEGRADATION"], - fr = """Prise en compte d''une loi de decroissance des traceurs. Valeur 0 si -pas de prise en compte, 1 si loi 1, ... Pour chaque valeur entree, un -nom de traceur correspondant doit etre present dans -\telkey{NOMS DES TRACEURS}, auquel sera appliquee la loi.""", - ang = """Take in account a law for tracers decrease. Value 0 if not taken into -account, 1 if law 1, ... For each value entered, a corresponding name -should be present in the keyword \telkey{NAMES OF TRACERS}, so that the -decrease law is applied to the correct tracer(s).""", - ), -# ----------------------------------- - COEFFICIENT_1_FOR_LAW_OF_TRACERS_DEGRADATION = SIMP(statut ='o', -# ----------------------------------- - typ = 'R', min=0, max='**', - fr = """Coefficient 1 de la loi de decroissance des traceurs. Voir aussi la -correspondance avec \telkey{NOMS DES TRACEURS} and l''aide du mot cle -\telkey{LOI DE DEGRADATION DES TRACEURS}.""", - ang = """Coefficient 1 of law for tracers decrease. Check also the relation -between the keywords \telkey{NAMES OF TRACERS} and -\telkey{LAW OF TRACERS DEGRADATION}.""", - ), - ), - ), -) -# ----------------------------------------------------------------------- -FILES = PROC(nom= "FILES",op = None, -# ----------------------------------------------------------------------- -# ----------------------------------- - LIST_OF_FILES = SIMP(statut ='f', -# ----------------------------------- - typ = 'TXM', min=12, max=12, - defaut = 'STEERING FILE;RESULTS FILE;GEOMETRY FILE;BOUNDARY CONDITIONS FILE;FICHIER HYDRODYNAMIQUE;REFERENCE FILE;DICTIONARY;AED2 STEERING FILE;AED2 PHYTOPLANKTON STEERING FILE;AED2 ZOOPLANKTON STEERING FILE;AED2 PATHOGEN STEERING FILE;AED2 BIVALVE STEERING FILE', - fr = """Noms des fichiers exploites par le code""", - ang = """File names of the used files""", - ), -) -TEXTE_NEW_JDC = "\ -" -Ordre_Des_Commandes = ( -'INPUT_OUTPUT__FILES', -'INPUT_OUTPUT__INFORMATION', -'IN_OUT_WQ', -'INPUT_OUTPUT__GRAPHICS_AND_LISTING', -'RESULTS', -'DATA_FILES', -'MISCELLANEOUS', -'PHYSICS', -'SUSPENSION', -'WAQ_PARAMETERS', -'PHYSICAL_PARAMETERS', -'BIOMASS_WQ', -'COUPLING', -'FILES') -try: - import TelApy - source = "eficas" -except Exception as excpt: - source = "Telemac" -enum = source+'.waqtel_enum_auto' -dicoCasEn = source+'.waqtel_dicoCasEnToCata' -dicoCasFr = source+'.waqtel_dicoCasFrToCata' diff --git a/Telemac/waqtel_dicoCasEnToCata.py b/Telemac/waqtel_dicoCasEnToCata.py deleted file mode 100644 index a98d632d..00000000 --- a/Telemac/waqtel_dicoCasEnToCata.py +++ /dev/null @@ -1,184 +0,0 @@ -dicoCataToEngTelemac = { - "STEERING_FILE" : "STEERING FILE", - "FORTRAN_FILE" : "FORTRAN FILE", - "WAQ_CASE_TITLE" : "WAQ CASE TITLE", - "WATER_QUALITY_PRINTOUT_PERIOD" : "WATER QUALITY PRINTOUT PERIOD", - "VARIABLES_FOR_WAQ_PRINTOUTS" : "VARIABLES FOR WAQ PRINTOUTS", - "WAQ_VARIABLES_TO_BE_PRINTED" : "WAQ VARIABLES TO BE PRINTED", - "RESULTS_FILE" : "RESULTS FILE", - "RESULTS_FILE_FORMAT" : "RESULTS FILE FORMAT", - "RELEASE" : "RELEASE", - "GEOMETRY_FILE" : "GEOMETRY FILE", - "GEOMETRY_FILE_FORMAT" : "GEOMETRY FILE FORMAT", - "BOUNDARY_CONDITIONS_FILE" : "BOUNDARY CONDITIONS FILE", - "HYDRODYNAMIC_FILE" : "HYDRODYNAMIC FILE", - "HYDRODYNAMIC_FILE_FORMAT" : "HYDRODYNAMIC FILE FORMAT", - "REFERENCE_FILE" : "REFERENCE FILE", - "REFERENCE_FILE_FORMAT" : "REFERENCE FILE FORMAT", - "MASS_BALANCE" : "MASS-BALANCE", - "VALIDATION" : "VALIDATION", - "WATER_DENSITY" : "WATER DENSITY", - "KINEMATIC_WATER_VISCOSITY" : "KINEMATIC WATER VISCOSITY", - "DISPERSION_ALONG_THE_FLOW" : "DISPERSION ALONG THE FLOW", - "DISPERSION_ACROSS_THE_FLOW" : "DISPERSION ACROSS THE FLOW", - "DICTIONARY" : "DICTIONARY", - "DEBUGGER" : "DEBUGGER", - "CONSTANT_OF_DEGRADATION_OF_ORGANIC_LOAD_K120" : "CONSTANT OF DEGRADATION OF ORGANIC LOAD K120", - "CONSTANT_FOR_THE_NITRIFICATION_KINETIC_K520" : "CONSTANT FOR THE NITRIFICATION KINETIC K520", - "OXYGENE_PRODUCED_BY_PHOTOSYNTHESIS" : "OXYGENE PRODUCED BY PHOTOSYNTHESIS", - "CONSUMED_OXYGEN_BY_NITRIFICATION" : "CONSUMED OXYGEN BY NITRIFICATION", - "BENTHIC_DEMAND" : "BENTHIC DEMAND", - "K2_REAERATION_COEFFICIENT" : "K2 REAERATION COEFFICIENT", - "FORMULA_FOR_COMPUTING_K2" : "FORMULA FOR COMPUTING K2", - "O2_SATURATION_DENSITY_OF_WATER__CS_" : "O2 SATURATION DENSITY OF WATER (CS)", - "FORMULA_FOR_COMPUTING_CS" : "FORMULA FOR COMPUTING CS", - "SEDIMENTATION_VELOCITY_OF_ORGANIC_PHOSPHORUS" : "SEDIMENTATION VELOCITY OF ORGANIC PHOSPHORUS", - "SEDIMENTATION_VELOCITY_OF_NON_ALGAL_NITROGEN" : "SEDIMENTATION VELOCITY OF NON ALGAL NITROGEN", - "MAXIMUM_ALGAL_GROWTH_RATE_AT_20C" : "MAXIMUM ALGAL GROWTH RATE AT 20C", - "SECCHI_DEPTH" : "SECCHI DEPTH", - "VEGETAL_TURBIDITY_COEFFICIENT_WITHOUT_PHYTO" : "VEGETAL TURBIDITY COEFFICIENT WITHOUT PHYTO", - "PARAMETER_OF_CALIBRATION_OF_SMITH_FORMULA" : "PARAMETER OF CALIBRATION OF SMITH FORMULA", - "CONSTANT_OF_HALF_SATURATION_WITH_PHOSPHATE" : "CONSTANT OF HALF-SATURATION WITH PHOSPHATE", - "CONSTANT_OF_HALF_SATURATION_WITH_NITROGEN" : "CONSTANT OF HALF-SATURATION WITH NITROGEN", - "ALGAL_TOXICITY_COEFFICIENTS" : "ALGAL TOXICITY COEFFICIENTS", - "RESPIRATION_RATE_OF_ALGAL_BIOMASS" : "RESPIRATION RATE OF ALGAL BIOMASS", - "PROPORTION_OF_PHOSPHORUS_WITHIN_PHYTO_CELLS" : "PROPORTION OF PHOSPHORUS WITHIN PHYTO CELLS", - "PERCENTAGE_OF_PHYSPHORUS_ASSIMILABLE_IN_DEAD_PHYTO" : "PERCENTAGE OF PHYSPHORUS ASSIMILABLE IN DEAD PHYTO", - "RATE_OF_TRANSFORMATION_OF_POR_TO_PO4" : "RATE OF TRANSFORMATION OF POR TO PO4", - "PROPORTION_OF_NITROGEN_WITHIN_PHYTO_CELLS" : "PROPORTION OF NITROGEN WITHIN PHYTO CELLS", - "PERCENTAGE_OF_NITROGEN_ASSIMILABLE_IN_DEAD_PHYTO" : "PERCENTAGE OF NITROGEN ASSIMILABLE IN DEAD PHYTO", - "RATE_OF_TRANSFORMATION_OF_NOR_TO_NO3" : "RATE OF TRANSFORMATION OF NOR TO NO3", - "COEFFICIENTS_OF_ALGAL_MORTALITY_AT_20C" : "COEFFICIENTS OF ALGAL MORTALITY AT 20C", - "SEDIMENTATION_VELOCITY_OF_ORGANIC_LOAD" : "SEDIMENTATION VELOCITY OF ORGANIC LOAD", - "CONSTANT_OF_DEGRADATION_OF_ORGANIC_LOAD_K1" : "CONSTANT OF DEGRADATION OF ORGANIC LOAD K1", - "CONSTANT_OF_NITRIFICATION_KINETIC_K4" : "CONSTANT OF NITRIFICATION KINETIC K4", - "PHOTOSYNTHESIS_P" : "PHOTOSYNTHESIS P", - "VEGERAL_RESPIRATION_R" : "VEGERAL RESPIRATION R", - "WATER_TEMPERATURE" : "WATER TEMPERATURE", - "WEIR_REAERATION_COEFFICIENT_RS" : "WEIR REAERATION COEFFICIENT RS", - "FORMULA_FOR_COMPUTING_RS" : "FORMULA FOR COMPUTING RS", - "COEFFICIENTS_A_AND_B_FOR_RS_FORMULA" : "COEFFICIENTS A AND B FOR RS FORMULA", - "EROSION_RATE" : "EROSION RATE", - "SEDIMENTATION_CRITICAL_STRESS" : "SEDIMENTATION CRITICAL STRESS", - "CRITICAL_STRESS_OF_RESUSPENSION" : "CRITICAL STRESS OF RESUSPENSION", - "SEDIMENT_SETTLING_VELOCITY" : "SEDIMENT SETTLING VELOCITY", - "EXPONENETIAL_DESINTEGRATION_CONSTANT" : "EXPONENETIAL DESINTEGRATION CONSTANT", - "COEFFICIENT_OF_DISTRIBUTION" : "COEFFICIENT OF DISTRIBUTION", - "CONSTANT_OF_DESORPTION_KINETIC" : "CONSTANT OF DESORPTION KINETIC", - "WATER_SPECIFIC_HEAT" : "WATER SPECIFIC HEAT", - "AIR_SPECIFIC_HEAT" : "AIR SPECIFIC HEAT", - "COEFFICIENTS_OF_AERATION_FORMULA" : "COEFFICIENTS OF AERATION FORMULA", - "COEFFICIENT_OF_CLOUDING_RATE" : "COEFFICIENT OF CLOUDING RATE", - "COEFFICIENTS_FOR_CALIBRATING_ATMOSPHERIC_RADIATION" : "COEFFICIENTS FOR CALIBRATING ATMOSPHERIC RADIATION", - "COEFFICIENTS_FOR_CALIBRATING_SURFACE_WATER_RADIATION" : "COEFFICIENTS FOR CALIBRATING SURFACE WATER RADIATION", - "SUNSHINE_FLUX_DENSITY_ON_WATER_SURFACE" : "SUNSHINE FLUX DENSITY ON WATER SURFACE", - "ATMOSPHERE_WATER_EXCHANGE_MODEL" : "ATMOSPHERE-WATER EXCHANGE MODEL", - "LIGHTNESS_OF_THE_SKY" : "LIGHTNESS OF THE SKY", - "COEFFICIENT_TO_CALIBRATE_THE_ATMOSPHERE_WATER_EXCHANGE_MODEL" : "COEFFICIENT TO CALIBRATE THE ATMOSPHERE-WATER EXCHANGE MODEL", - "EVAPORATION_RATE" : "EVAPORATION RATE", - "METHOD_OF_COMPUTATION_OF_RAY_EXCTINCTION_COEFFICIENT" : "METHOD OF COMPUTATION OF RAY EXCTINCTION COEFFICIENT", - "FORMULA_OF_ATMOSPHERIC_RADIATION" : "FORMULA OF ATMOSPHERIC RADIATION", - "LAW_OF_TRACERS_DEGRADATION" : "LAW OF TRACERS DEGRADATION", - "COEFFICIENT_1_FOR_LAW_OF_TRACERS_DEGRADATION" : "COEFFICIENT 1 FOR LAW OF TRACERS DEGRADATION", - "AED2_STEERING_FILE" : "AED2 STEERING FILE", - "AED2_PHYTOPLANKTON_STEERING_FILE" : "AED2 PHYTOPLANKTON STEERING FILE", - "AED2_ZOOPLANKTON_STEERING_FILE" : "AED2 ZOOPLANKTON STEERING FILE", - "AED2_PATHOGEN_STEERING_FILE" : "AED2 PATHOGEN STEERING FILE", - "AED2_BIVALVE_STEERING_FILE" : "AED2 BIVALVE STEERING FILE", - "LIST_OF_FILES" : "LIST OF FILES", - "DESCRIPTION_OF_LIBRARIES" : "DESCRIPTION OF LIBRARIES", - "DEFAULT_EXECUTABLE" : "DEFAULT EXECUTABLE", - "DEFAULT_PARALLEL_EXECUTABLE" : "DEFAULT PARALLEL EXECUTABLE", -} -dicoCasEnToCata = { - "STEERING FILE" : "STEERING_FILE", - "FORTRAN FILE" : "FORTRAN_FILE", - "WAQ CASE TITLE" : "WAQ_CASE_TITLE", - "WATER QUALITY PRINTOUT PERIOD" : "WATER_QUALITY_PRINTOUT_PERIOD", - "VARIABLES FOR WAQ PRINTOUTS" : "VARIABLES_FOR_WAQ_PRINTOUTS", - "WAQ VARIABLES TO BE PRINTED" : "WAQ_VARIABLES_TO_BE_PRINTED", - "RESULTS FILE" : "RESULTS_FILE", - "RESULTS FILE FORMAT" : "RESULTS_FILE_FORMAT", - "RELEASE" : "RELEASE", - "GEOMETRY FILE" : "GEOMETRY_FILE", - "GEOMETRY FILE FORMAT" : "GEOMETRY_FILE_FORMAT", - "BOUNDARY CONDITIONS FILE" : "BOUNDARY_CONDITIONS_FILE", - "HYDRODYNAMIC FILE" : "HYDRODYNAMIC_FILE", - "HYDRODYNAMIC FILE FORMAT" : "HYDRODYNAMIC_FILE_FORMAT", - "REFERENCE FILE" : "REFERENCE_FILE", - "REFERENCE FILE FORMAT" : "REFERENCE_FILE_FORMAT", - "MASS-BALANCE" : "MASS_BALANCE", - "VALIDATION" : "VALIDATION", - "WATER DENSITY" : "WATER_DENSITY", - "KINEMATIC WATER VISCOSITY" : "KINEMATIC_WATER_VISCOSITY", - "DISPERSION ALONG THE FLOW" : "DISPERSION_ALONG_THE_FLOW", - "DISPERSION ACROSS THE FLOW" : "DISPERSION_ACROSS_THE_FLOW", - "DICTIONARY" : "DICTIONARY", - "DEBUGGER" : "DEBUGGER", - "CONSTANT OF DEGRADATION OF ORGANIC LOAD K120" : "CONSTANT_OF_DEGRADATION_OF_ORGANIC_LOAD_K120", - "CONSTANT FOR THE NITRIFICATION KINETIC K520" : "CONSTANT_FOR_THE_NITRIFICATION_KINETIC_K520", - "OXYGENE PRODUCED BY PHOTOSYNTHESIS" : "OXYGENE_PRODUCED_BY_PHOTOSYNTHESIS", - "CONSUMED OXYGEN BY NITRIFICATION" : "CONSUMED_OXYGEN_BY_NITRIFICATION", - "BENTHIC DEMAND" : "BENTHIC_DEMAND", - "K2 REAERATION COEFFICIENT" : "K2_REAERATION_COEFFICIENT", - "FORMULA FOR COMPUTING K2" : "FORMULA_FOR_COMPUTING_K2", - "O2 SATURATION DENSITY OF WATER (CS)" : "O2_SATURATION_DENSITY_OF_WATER__CS_", - "FORMULA FOR COMPUTING CS" : "FORMULA_FOR_COMPUTING_CS", - "SEDIMENTATION VELOCITY OF ORGANIC PHOSPHORUS" : "SEDIMENTATION_VELOCITY_OF_ORGANIC_PHOSPHORUS", - "SEDIMENTATION VELOCITY OF NON ALGAL NITROGEN" : "SEDIMENTATION_VELOCITY_OF_NON_ALGAL_NITROGEN", - "MAXIMUM ALGAL GROWTH RATE AT 20C" : "MAXIMUM_ALGAL_GROWTH_RATE_AT_20C", - "SECCHI DEPTH" : "SECCHI_DEPTH", - "VEGETAL TURBIDITY COEFFICIENT WITHOUT PHYTO" : "VEGETAL_TURBIDITY_COEFFICIENT_WITHOUT_PHYTO", - "PARAMETER OF CALIBRATION OF SMITH FORMULA" : "PARAMETER_OF_CALIBRATION_OF_SMITH_FORMULA", - "CONSTANT OF HALF-SATURATION WITH PHOSPHATE" : "CONSTANT_OF_HALF_SATURATION_WITH_PHOSPHATE", - "CONSTANT OF HALF-SATURATION WITH NITROGEN" : "CONSTANT_OF_HALF_SATURATION_WITH_NITROGEN", - "ALGAL TOXICITY COEFFICIENTS" : "ALGAL_TOXICITY_COEFFICIENTS", - "RESPIRATION RATE OF ALGAL BIOMASS" : "RESPIRATION_RATE_OF_ALGAL_BIOMASS", - "PROPORTION OF PHOSPHORUS WITHIN PHYTO CELLS" : "PROPORTION_OF_PHOSPHORUS_WITHIN_PHYTO_CELLS", - "PERCENTAGE OF PHYSPHORUS ASSIMILABLE IN DEAD PHYTO" : "PERCENTAGE_OF_PHYSPHORUS_ASSIMILABLE_IN_DEAD_PHYTO", - "RATE OF TRANSFORMATION OF POR TO PO4" : "RATE_OF_TRANSFORMATION_OF_POR_TO_PO4", - "PROPORTION OF NITROGEN WITHIN PHYTO CELLS" : "PROPORTION_OF_NITROGEN_WITHIN_PHYTO_CELLS", - "PERCENTAGE OF NITROGEN ASSIMILABLE IN DEAD PHYTO" : "PERCENTAGE_OF_NITROGEN_ASSIMILABLE_IN_DEAD_PHYTO", - "RATE OF TRANSFORMATION OF NOR TO NO3" : "RATE_OF_TRANSFORMATION_OF_NOR_TO_NO3", - "COEFFICIENTS OF ALGAL MORTALITY AT 20C" : "COEFFICIENTS_OF_ALGAL_MORTALITY_AT_20C", - "SEDIMENTATION VELOCITY OF ORGANIC LOAD" : "SEDIMENTATION_VELOCITY_OF_ORGANIC_LOAD", - "CONSTANT OF DEGRADATION OF ORGANIC LOAD K1" : "CONSTANT_OF_DEGRADATION_OF_ORGANIC_LOAD_K1", - "CONSTANT OF NITRIFICATION KINETIC K4" : "CONSTANT_OF_NITRIFICATION_KINETIC_K4", - "PHOTOSYNTHESIS P" : "PHOTOSYNTHESIS_P", - "VEGERAL RESPIRATION R" : "VEGERAL_RESPIRATION_R", - "WATER TEMPERATURE" : "WATER_TEMPERATURE", - "WEIR REAERATION COEFFICIENT RS" : "WEIR_REAERATION_COEFFICIENT_RS", - "FORMULA FOR COMPUTING RS" : "FORMULA_FOR_COMPUTING_RS", - "COEFFICIENTS A AND B FOR RS FORMULA" : "COEFFICIENTS_A_AND_B_FOR_RS_FORMULA", - "EROSION RATE" : "EROSION_RATE", - "SEDIMENTATION CRITICAL STRESS" : "SEDIMENTATION_CRITICAL_STRESS", - "CRITICAL STRESS OF RESUSPENSION" : "CRITICAL_STRESS_OF_RESUSPENSION", - "SEDIMENT SETTLING VELOCITY" : "SEDIMENT_SETTLING_VELOCITY", - "EXPONENETIAL DESINTEGRATION CONSTANT" : "EXPONENETIAL_DESINTEGRATION_CONSTANT", - "COEFFICIENT OF DISTRIBUTION" : "COEFFICIENT_OF_DISTRIBUTION", - "CONSTANT OF DESORPTION KINETIC" : "CONSTANT_OF_DESORPTION_KINETIC", - "WATER SPECIFIC HEAT" : "WATER_SPECIFIC_HEAT", - "AIR SPECIFIC HEAT" : "AIR_SPECIFIC_HEAT", - "COEFFICIENTS OF AERATION FORMULA" : "COEFFICIENTS_OF_AERATION_FORMULA", - "COEFFICIENT OF CLOUDING RATE" : "COEFFICIENT_OF_CLOUDING_RATE", - "COEFFICIENTS FOR CALIBRATING ATMOSPHERIC RADIATION" : "COEFFICIENTS_FOR_CALIBRATING_ATMOSPHERIC_RADIATION", - "COEFFICIENTS FOR CALIBRATING SURFACE WATER RADIATION" : "COEFFICIENTS_FOR_CALIBRATING_SURFACE_WATER_RADIATION", - "SUNSHINE FLUX DENSITY ON WATER SURFACE" : "SUNSHINE_FLUX_DENSITY_ON_WATER_SURFACE", - "ATMOSPHERE-WATER EXCHANGE MODEL" : "ATMOSPHERE_WATER_EXCHANGE_MODEL", - "LIGHTNESS OF THE SKY" : "LIGHTNESS_OF_THE_SKY", - "COEFFICIENT TO CALIBRATE THE ATMOSPHERE-WATER EXCHANGE MODEL" : "COEFFICIENT_TO_CALIBRATE_THE_ATMOSPHERE_WATER_EXCHANGE_MODEL", - "EVAPORATION RATE" : "EVAPORATION_RATE", - "METHOD OF COMPUTATION OF RAY EXCTINCTION COEFFICIENT" : "METHOD_OF_COMPUTATION_OF_RAY_EXCTINCTION_COEFFICIENT", - "FORMULA OF ATMOSPHERIC RADIATION" : "FORMULA_OF_ATMOSPHERIC_RADIATION", - "LAW OF TRACERS DEGRADATION" : "LAW_OF_TRACERS_DEGRADATION", - "COEFFICIENT 1 FOR LAW OF TRACERS DEGRADATION" : "COEFFICIENT_1_FOR_LAW_OF_TRACERS_DEGRADATION", - "AED2 STEERING FILE" : "AED2_STEERING_FILE", - "AED2 PHYTOPLANKTON STEERING FILE" : "AED2_PHYTOPLANKTON_STEERING_FILE", - "AED2 ZOOPLANKTON STEERING FILE" : "AED2_ZOOPLANKTON_STEERING_FILE", - "AED2 PATHOGEN STEERING FILE" : "AED2_PATHOGEN_STEERING_FILE", - "AED2 BIVALVE STEERING FILE" : "AED2_BIVALVE_STEERING_FILE", - "LIST OF FILES" : "LIST_OF_FILES", - "DESCRIPTION OF LIBRARIES" : "DESCRIPTION_OF_LIBRARIES", - "DEFAULT EXECUTABLE" : "DEFAULT_EXECUTABLE", - "DEFAULT PARALLEL EXECUTABLE" : "DEFAULT_PARALLEL_EXECUTABLE", -} diff --git a/Telemac/waqtel_dicoCasFrToCata.py b/Telemac/waqtel_dicoCasFrToCata.py deleted file mode 100644 index 54a6b0e3..00000000 --- a/Telemac/waqtel_dicoCasFrToCata.py +++ /dev/null @@ -1,184 +0,0 @@ -dicoCataToFrTelemac = { - "STEERING_FILE" : "FICHIER DES PARAMETRES", - "FORTRAN_FILE" : "FICHIER FORTRAN", - "WAQ_CASE_TITLE" : "TITRE DU CAS QE", - "WATER_QUALITY_PRINTOUT_PERIOD" : "PERIODE POUR LES SORTIES QUALITE D'EAU", - "VARIABLES_FOR_WAQ_PRINTOUTS" : "VARIABLES POUR LES SORTIES QE", - "WAQ_VARIABLES_TO_BE_PRINTED" : "VARIABLES QE A IMPRIMER", - "RESULTS_FILE" : "FICHIER DES RESULTATS", - "RESULTS_FILE_FORMAT" : "FORMAT DU FICHIER DES RESULTATS", - "RELEASE" : "NUMERO DE VERSION", - "GEOMETRY_FILE" : "FICHIER DE GEOMETRIE", - "GEOMETRY_FILE_FORMAT" : "FORMAT DU FICHIER DE GEOMETRIE", - "BOUNDARY_CONDITIONS_FILE" : "FICHIER DES CONDITIONS AUX LIMITES", - "HYDRODYNAMIC_FILE" : "FICHIER HYDRODYNAMIQUE", - "HYDRODYNAMIC_FILE_FORMAT" : "FORMAT DU FICHIER HYDRODYNAMIQUE", - "REFERENCE_FILE" : "FICHIER DE REFERENCE", - "REFERENCE_FILE_FORMAT" : "FORMAT DU FICHIER DE REFERENCE", - "MASS_BALANCE" : "BILAN DE MASSE", - "VALIDATION" : "VALIDATION", - "WATER_DENSITY" : "MASSE VOLUMIQUE DE L'EAU", - "KINEMATIC_WATER_VISCOSITY" : "VISCOSITE CINEMATIQUE EAU", - "DISPERSION_ALONG_THE_FLOW" : "DISPERSION LONGITUDINALE", - "DISPERSION_ACROSS_THE_FLOW" : "DISPERSION TRANSVERSALE", - "DICTIONARY" : "DICTIONNAIRE", - "DEBUGGER" : "DEBUGGER", - "CONSTANT_OF_DEGRADATION_OF_ORGANIC_LOAD_K120" : "CONSTANTE DE DEGRADATION DE LA CHARGE ORGANIQUE K120", - "CONSTANT_FOR_THE_NITRIFICATION_KINETIC_K520" : "CONSTANTE DE LA CINETIQUE DE NITRIFICATION K520", - "OXYGENE_PRODUCED_BY_PHOTOSYNTHESIS" : "OXYGENE PRODUIT PAR PHOTOSYNTHESE", - "CONSUMED_OXYGEN_BY_NITRIFICATION" : "OXYGENE CONSOMME PAR NITRIFICATION", - "BENTHIC_DEMAND" : "DEMANDE BENTHIQUE", - "K2_REAERATION_COEFFICIENT" : "COEFFICIENT DE REAERATION K2", - "FORMULA_FOR_COMPUTING_K2" : "FORMULE DE CALCUL DE K2", - "O2_SATURATION_DENSITY_OF_WATER__CS_" : "CONCENTRATION DE SATURATION EN O2 DE L'EAU (CS)", - "FORMULA_FOR_COMPUTING_CS" : "FORMULE DE CALCUL DE CS", - "SEDIMENTATION_VELOCITY_OF_ORGANIC_PHOSPHORUS" : "VITESSE DE SEDIMENTATION DU PHOSPHORE ORGANIQUE", - "SEDIMENTATION_VELOCITY_OF_NON_ALGAL_NITROGEN" : "VITESSE DE SEDIMENTATION DE L'AZOTE NON ALGALE", - "MAXIMUM_ALGAL_GROWTH_RATE_AT_20C" : "TAUX DE CROISSANCE ALGALE MAXIMUM A 20C", - "SECCHI_DEPTH" : "PROFONDEUR DE SECCHI", - "VEGETAL_TURBIDITY_COEFFICIENT_WITHOUT_PHYTO" : "COEFFICIENT DE TURBIDITE VEGETALE SANS PHYTO", - "PARAMETER_OF_CALIBRATION_OF_SMITH_FORMULA" : "PARAMETRE DE CALAGE DE LA FORMULE DE SMITH", - "CONSTANT_OF_HALF_SATURATION_WITH_PHOSPHATE" : "CONSTANTE DE DEMI-SATURATION EN PHOSPHATE", - "CONSTANT_OF_HALF_SATURATION_WITH_NITROGEN" : "CONSTANTE DE DEMI-SATURATION EN AZOTE", - "ALGAL_TOXICITY_COEFFICIENTS" : "COEFFICIENTS DE TOXICITE POUR LES ALGUES", - "RESPIRATION_RATE_OF_ALGAL_BIOMASS" : "TAUX DE RESPIRATION DE LA BIOMASSE ALGALE", - "PROPORTION_OF_PHOSPHORUS_WITHIN_PHYTO_CELLS" : "PROPORTION DE PHOSPHORE DANS LES CELLULES DU PHYTO", - "PERCENTAGE_OF_PHYSPHORUS_ASSIMILABLE_IN_DEAD_PHYTO" : "POURCENTAGE DE PHOSPHORE ASSIMILABLE DANS LE PHYTO MORT", - "RATE_OF_TRANSFORMATION_OF_POR_TO_PO4" : "TAUX DE TRANSFORMATION DU POR EN PO4", - "PROPORTION_OF_NITROGEN_WITHIN_PHYTO_CELLS" : "PROPORTION D'AZOTE DANS LES CELLULES DU PHYTO", - "PERCENTAGE_OF_NITROGEN_ASSIMILABLE_IN_DEAD_PHYTO" : "PERCENTAGE D'AZOTE ASSIMILABLE DANS LE PHYTO MORT", - "RATE_OF_TRANSFORMATION_OF_NOR_TO_NO3" : "TAUX DE TRANSFORMATION DU NOR EN NO3", - "COEFFICIENTS_OF_ALGAL_MORTALITY_AT_20C" : "COEFFICIENTS DE MORTALITE ALGALE A 20C", - "SEDIMENTATION_VELOCITY_OF_ORGANIC_LOAD" : "VITESSE DE SEDIMENTATION DE LA CHARGE ORGANIQUE", - "CONSTANT_OF_DEGRADATION_OF_ORGANIC_LOAD_K1" : "CONSTANTE DE DEGRADATION DE LA CHARGE ORGANIQUE K1", - "CONSTANT_OF_NITRIFICATION_KINETIC_K4" : "CONSTANTE DE CINETIQUE DE NITRIFICATION K4", - "PHOTOSYNTHESIS_P" : "PHOTOSYNTHESE P", - "VEGERAL_RESPIRATION_R" : "RESPIRATION VEGETALE R", - "WATER_TEMPERATURE" : "TEMPERATURE DE L'EAU", - "WEIR_REAERATION_COEFFICIENT_RS" : "COEFFICIENT DE REAERATION DU SEUIL RS", - "FORMULA_FOR_COMPUTING_RS" : "FORMULE DE CALCUL DE RS", - "COEFFICIENTS_A_AND_B_FOR_RS_FORMULA" : "COEFFICIENTS A ET B POUR LA FORMULE DE RS", - "EROSION_RATE" : "TAUX D'EROSION", - "SEDIMENTATION_CRITICAL_STRESS" : "CONTRAINTE CRITIQUE DE SEDIMENTATION", - "CRITICAL_STRESS_OF_RESUSPENSION" : "CONTRAINTE CRITIQUE DE REMISE EN SUSPENSION", - "SEDIMENT_SETTLING_VELOCITY" : "VITESSE DE CHUTE DES MES", - "EXPONENETIAL_DESINTEGRATION_CONSTANT" : "CONSTANTE DE DESINTEGRATION EXPONENETIELLE", - "COEFFICIENT_OF_DISTRIBUTION" : "COEFFICIENT DE DISTRIBUTION", - "CONSTANT_OF_DESORPTION_KINETIC" : "CONSTANTE CINETIQUE DE DESORPTION", - "WATER_SPECIFIC_HEAT" : "CHALEUR SPECIFIQUE DE L'EAU", - "AIR_SPECIFIC_HEAT" : "CHALEUR SPECIFIQUE DE L'AIR", - "COEFFICIENTS_OF_AERATION_FORMULA" : "COEFFICIENTS DE LA FORMULE D'AERATION", - "COEFFICIENT_OF_CLOUDING_RATE" : "COEFFICIENT REPRESENTATIF DE LA COUVERTURE NUAGEUSE", - "COEFFICIENTS_FOR_CALIBRATING_ATMOSPHERIC_RADIATION" : "COEFFICIENTS DE CALAGE DU RAYONNEMENT ATMOSPHERIQUE", - "COEFFICIENTS_FOR_CALIBRATING_SURFACE_WATER_RADIATION" : "COEFFICIENTS DE CALAGE DU RAYONNEMENT DU PLAN D'EAU", - "SUNSHINE_FLUX_DENSITY_ON_WATER_SURFACE" : "DENSITE DE FLUX DU RAYONNEMENT SOLAIRE A LA SURFACE", - "ATMOSPHERE_WATER_EXCHANGE_MODEL" : "MODELE D'ECHANGES EAU-ATMOSPHERE", - "LIGHTNESS_OF_THE_SKY" : "CLARTE DU CIEL", - "COEFFICIENT_TO_CALIBRATE_THE_ATMOSPHERE_WATER_EXCHANGE_MODEL" : "COEFFICIENT DE CALAGE DU MODELE D'ECHANGES EAU-ATMOSPHERE", - "EVAPORATION_RATE" : "TAUX D'EVAPORATION", - "METHOD_OF_COMPUTATION_OF_RAY_EXCTINCTION_COEFFICIENT" : "METHODE DE CALCUL DU COEFFICIENT D'EXTINCTION DU RAY", - "FORMULA_OF_ATMOSPHERIC_RADIATION" : "FORMULE DU RAYONNEMENT ATMOSPHERIQUE", - "LAW_OF_TRACERS_DEGRADATION" : "LOI DE DEGRADATION DES TRACEURS", - "COEFFICIENT_1_FOR_LAW_OF_TRACERS_DEGRADATION" : "COEFFICIENT 1 DE LA LOI DE DEGRADATION DES TRACEURS", - "AED2_STEERING_FILE" : "FICHIER DES PARAMETRES AED2", - "AED2_PHYTOPLANKTON_STEERING_FILE" : "FICHIER DES PARAMETRES PHYTOPLANCTON AED2", - "AED2_ZOOPLANKTON_STEERING_FILE" : "FICHIER DES PARAMETRES ZOOPLANCTON AED2", - "AED2_PATHOGEN_STEERING_FILE" : "FICHIER DES PARAMETRES PATHOGENES AED2", - "AED2_BIVALVE_STEERING_FILE" : "FICHIER DES PARAMETRES BIVALVES AED2", - "LIST_OF_FILES" : "LISTE DES FICHIERS", - "DESCRIPTION_OF_LIBRARIES" : "DESCRIPTION DES LIBRAIRIES", - "DEFAULT_EXECUTABLE" : "EXECUTABLE PAR DEFAUT", - "DEFAULT_PARALLEL_EXECUTABLE" : "EXECUTABLE PARALLELE PAR DEFAUT", -} -dicoCasFrToCata = { - "FICHIER DES PARAMETRES" : "STEERING_FILE", - "FICHIER FORTRAN" : "FORTRAN_FILE", - "TITRE DU CAS QE" : "WAQ_CASE_TITLE", - "PERIODE POUR LES SORTIES QUALITE D'EAU" : "WATER_QUALITY_PRINTOUT_PERIOD", - "VARIABLES POUR LES SORTIES QE" : "VARIABLES_FOR_WAQ_PRINTOUTS", - "VARIABLES QE A IMPRIMER" : "WAQ_VARIABLES_TO_BE_PRINTED", - "FICHIER DES RESULTATS" : "RESULTS_FILE", - "FORMAT DU FICHIER DES RESULTATS" : "RESULTS_FILE_FORMAT", - "NUMERO DE VERSION" : "RELEASE", - "FICHIER DE GEOMETRIE" : "GEOMETRY_FILE", - "FORMAT DU FICHIER DE GEOMETRIE" : "GEOMETRY_FILE_FORMAT", - "FICHIER DES CONDITIONS AUX LIMITES" : "BOUNDARY_CONDITIONS_FILE", - "FICHIER HYDRODYNAMIQUE" : "HYDRODYNAMIC_FILE", - "FORMAT DU FICHIER HYDRODYNAMIQUE" : "HYDRODYNAMIC_FILE_FORMAT", - "FICHIER DE REFERENCE" : "REFERENCE_FILE", - "FORMAT DU FICHIER DE REFERENCE" : "REFERENCE_FILE_FORMAT", - "BILAN DE MASSE" : "MASS_BALANCE", - "VALIDATION" : "VALIDATION", - "MASSE VOLUMIQUE DE L'EAU" : "WATER_DENSITY", - "VISCOSITE CINEMATIQUE EAU" : "KINEMATIC_WATER_VISCOSITY", - "DISPERSION LONGITUDINALE" : "DISPERSION_ALONG_THE_FLOW", - "DISPERSION TRANSVERSALE" : "DISPERSION_ACROSS_THE_FLOW", - "DICTIONNAIRE" : "DICTIONARY", - "DEBUGGER" : "DEBUGGER", - "CONSTANTE DE DEGRADATION DE LA CHARGE ORGANIQUE K120" : "CONSTANT_OF_DEGRADATION_OF_ORGANIC_LOAD_K120", - "CONSTANTE DE LA CINETIQUE DE NITRIFICATION K520" : "CONSTANT_FOR_THE_NITRIFICATION_KINETIC_K520", - "OXYGENE PRODUIT PAR PHOTOSYNTHESE" : "OXYGENE_PRODUCED_BY_PHOTOSYNTHESIS", - "OXYGENE CONSOMME PAR NITRIFICATION" : "CONSUMED_OXYGEN_BY_NITRIFICATION", - "DEMANDE BENTHIQUE" : "BENTHIC_DEMAND", - "COEFFICIENT DE REAERATION K2" : "K2_REAERATION_COEFFICIENT", - "FORMULE DE CALCUL DE K2" : "FORMULA_FOR_COMPUTING_K2", - "CONCENTRATION DE SATURATION EN O2 DE L'EAU (CS)" : "O2_SATURATION_DENSITY_OF_WATER__CS_", - "FORMULE DE CALCUL DE CS" : "FORMULA_FOR_COMPUTING_CS", - "VITESSE DE SEDIMENTATION DU PHOSPHORE ORGANIQUE" : "SEDIMENTATION_VELOCITY_OF_ORGANIC_PHOSPHORUS", - "VITESSE DE SEDIMENTATION DE L'AZOTE NON ALGALE" : "SEDIMENTATION_VELOCITY_OF_NON_ALGAL_NITROGEN", - "TAUX DE CROISSANCE ALGALE MAXIMUM A 20C" : "MAXIMUM_ALGAL_GROWTH_RATE_AT_20C", - "PROFONDEUR DE SECCHI" : "SECCHI_DEPTH", - "COEFFICIENT DE TURBIDITE VEGETALE SANS PHYTO" : "VEGETAL_TURBIDITY_COEFFICIENT_WITHOUT_PHYTO", - "PARAMETRE DE CALAGE DE LA FORMULE DE SMITH" : "PARAMETER_OF_CALIBRATION_OF_SMITH_FORMULA", - "CONSTANTE DE DEMI-SATURATION EN PHOSPHATE" : "CONSTANT_OF_HALF_SATURATION_WITH_PHOSPHATE", - "CONSTANTE DE DEMI-SATURATION EN AZOTE" : "CONSTANT_OF_HALF_SATURATION_WITH_NITROGEN", - "COEFFICIENTS DE TOXICITE POUR LES ALGUES" : "ALGAL_TOXICITY_COEFFICIENTS", - "TAUX DE RESPIRATION DE LA BIOMASSE ALGALE" : "RESPIRATION_RATE_OF_ALGAL_BIOMASS", - "PROPORTION DE PHOSPHORE DANS LES CELLULES DU PHYTO" : "PROPORTION_OF_PHOSPHORUS_WITHIN_PHYTO_CELLS", - "POURCENTAGE DE PHOSPHORE ASSIMILABLE DANS LE PHYTO MORT" : "PERCENTAGE_OF_PHYSPHORUS_ASSIMILABLE_IN_DEAD_PHYTO", - "TAUX DE TRANSFORMATION DU POR EN PO4" : "RATE_OF_TRANSFORMATION_OF_POR_TO_PO4", - "PROPORTION D'AZOTE DANS LES CELLULES DU PHYTO" : "PROPORTION_OF_NITROGEN_WITHIN_PHYTO_CELLS", - "PERCENTAGE D'AZOTE ASSIMILABLE DANS LE PHYTO MORT" : "PERCENTAGE_OF_NITROGEN_ASSIMILABLE_IN_DEAD_PHYTO", - "TAUX DE TRANSFORMATION DU NOR EN NO3" : "RATE_OF_TRANSFORMATION_OF_NOR_TO_NO3", - "COEFFICIENTS DE MORTALITE ALGALE A 20C" : "COEFFICIENTS_OF_ALGAL_MORTALITY_AT_20C", - "VITESSE DE SEDIMENTATION DE LA CHARGE ORGANIQUE" : "SEDIMENTATION_VELOCITY_OF_ORGANIC_LOAD", - "CONSTANTE DE DEGRADATION DE LA CHARGE ORGANIQUE K1" : "CONSTANT_OF_DEGRADATION_OF_ORGANIC_LOAD_K1", - "CONSTANTE DE CINETIQUE DE NITRIFICATION K4" : "CONSTANT_OF_NITRIFICATION_KINETIC_K4", - "PHOTOSYNTHESE P" : "PHOTOSYNTHESIS_P", - "RESPIRATION VEGETALE R" : "VEGERAL_RESPIRATION_R", - "TEMPERATURE DE L'EAU" : "WATER_TEMPERATURE", - "COEFFICIENT DE REAERATION DU SEUIL RS" : "WEIR_REAERATION_COEFFICIENT_RS", - "FORMULE DE CALCUL DE RS" : "FORMULA_FOR_COMPUTING_RS", - "COEFFICIENTS A ET B POUR LA FORMULE DE RS" : "COEFFICIENTS_A_AND_B_FOR_RS_FORMULA", - "TAUX D'EROSION" : "EROSION_RATE", - "CONTRAINTE CRITIQUE DE SEDIMENTATION" : "SEDIMENTATION_CRITICAL_STRESS", - "CONTRAINTE CRITIQUE DE REMISE EN SUSPENSION" : "CRITICAL_STRESS_OF_RESUSPENSION", - "VITESSE DE CHUTE DES MES" : "SEDIMENT_SETTLING_VELOCITY", - "CONSTANTE DE DESINTEGRATION EXPONENETIELLE" : "EXPONENETIAL_DESINTEGRATION_CONSTANT", - "COEFFICIENT DE DISTRIBUTION" : "COEFFICIENT_OF_DISTRIBUTION", - "CONSTANTE CINETIQUE DE DESORPTION" : "CONSTANT_OF_DESORPTION_KINETIC", - "CHALEUR SPECIFIQUE DE L'EAU" : "WATER_SPECIFIC_HEAT", - "CHALEUR SPECIFIQUE DE L'AIR" : "AIR_SPECIFIC_HEAT", - "COEFFICIENTS DE LA FORMULE D'AERATION" : "COEFFICIENTS_OF_AERATION_FORMULA", - "COEFFICIENT REPRESENTATIF DE LA COUVERTURE NUAGEUSE" : "COEFFICIENT_OF_CLOUDING_RATE", - "COEFFICIENTS DE CALAGE DU RAYONNEMENT ATMOSPHERIQUE" : "COEFFICIENTS_FOR_CALIBRATING_ATMOSPHERIC_RADIATION", - "COEFFICIENTS DE CALAGE DU RAYONNEMENT DU PLAN D'EAU" : "COEFFICIENTS_FOR_CALIBRATING_SURFACE_WATER_RADIATION", - "DENSITE DE FLUX DU RAYONNEMENT SOLAIRE A LA SURFACE" : "SUNSHINE_FLUX_DENSITY_ON_WATER_SURFACE", - "MODELE D'ECHANGES EAU-ATMOSPHERE" : "ATMOSPHERE_WATER_EXCHANGE_MODEL", - "CLARTE DU CIEL" : "LIGHTNESS_OF_THE_SKY", - "COEFFICIENT DE CALAGE DU MODELE D'ECHANGES EAU-ATMOSPHERE" : "COEFFICIENT_TO_CALIBRATE_THE_ATMOSPHERE_WATER_EXCHANGE_MODEL", - "TAUX D'EVAPORATION" : "EVAPORATION_RATE", - "METHODE DE CALCUL DU COEFFICIENT D'EXTINCTION DU RAY" : "METHOD_OF_COMPUTATION_OF_RAY_EXCTINCTION_COEFFICIENT", - "FORMULE DU RAYONNEMENT ATMOSPHERIQUE" : "FORMULA_OF_ATMOSPHERIC_RADIATION", - "LOI DE DEGRADATION DES TRACEURS" : "LAW_OF_TRACERS_DEGRADATION", - "COEFFICIENT 1 DE LA LOI DE DEGRADATION DES TRACEURS" : "COEFFICIENT_1_FOR_LAW_OF_TRACERS_DEGRADATION", - "FICHIER DES PARAMETRES AED2" : "AED2_STEERING_FILE", - "FICHIER DES PARAMETRES PHYTOPLANCTON AED2" : "AED2_PHYTOPLANKTON_STEERING_FILE", - "FICHIER DES PARAMETRES ZOOPLANCTON AED2" : "AED2_ZOOPLANKTON_STEERING_FILE", - "FICHIER DES PARAMETRES PATHOGENES AED2" : "AED2_PATHOGEN_STEERING_FILE", - "FICHIER DES PARAMETRES BIVALVES AED2" : "AED2_BIVALVE_STEERING_FILE", - "LISTE DES FICHIERS" : "LIST_OF_FILES", - "DESCRIPTION DES LIBRAIRIES" : "DESCRIPTION_OF_LIBRARIES", - "EXECUTABLE PAR DEFAUT" : "DEFAULT_EXECUTABLE", - "EXECUTABLE PARALLELE PAR DEFAUT" : "DEFAULT_PARALLEL_EXECUTABLE", -} diff --git a/Telemac/waqtel_enum_auto.py b/Telemac/waqtel_enum_auto.py deleted file mode 100644 index ca53148c..00000000 --- a/Telemac/waqtel_enum_auto.py +++ /dev/null @@ -1,268 +0,0 @@ -#/usr/bin/env python -# -*- coding: latin-1 -*- -TelemacdicoEn = { -'ATMOSPHERE_WATER_EXCHANGE_MODEL' : { - 0:"NO MODEL", - 1:"LINEARISED FORMULA AT THE FREE SURFACE", - 2:"MODEL WITH COMPLETE BALANCE", - 3:"LINEARISED FORMULA WITHOUT ICE", - 4:"LINEARISED FORMULA WITH ICE", - 5:"MODEL WITH COMPLETE BALANCE WITH ICE", - }, -'LIGHTNESS_OF_THE_SKY' : { - 1:"VERY BRIGHT, PURE SKY", - 2:"MODERATELY BRIGHT SKY", - 3:"FOGGY LIKE THE SKY OF INDUSTRIAL AREA ", - }, -'FORMULA_OF_ATMOSPHERIC_RADIATION' : { - 1:"IDSO AND JACKSON (1969)", - 2:"SWINBANK (1963)", - 3:"BRUTSAERT (1975)", - 4:"YAJIMA TONO DAM (2014)", - }, -'LAW_OF_TRACERS_DEGRADATION' : { - 0:"NO DEGRADATION", - 1:"F(T90) LAW", - }, -} -TelemacdicoFr = { -'ATMOSPHERE_WATER_EXCHANGE_MODEL' : { - 0:"PAS DE MODELE D ECHANGES EAU-ATMOSPHERE", - 1:"FORMULE LINEARISEE A LA SURFACE", - 2:"MODELE A BILAN COMPLET", - 3:"FORMULE LINEARISEE SANS LES GLACES", - 4:"FORMULE LINEARISEE AVEC LES GLACES", - 5:"MODELE A BILAN COMPLET AVEC LES GLACES", - }, -'LIGHTNESS_OF_THE_SKY' : { - 1:"CIEL TRES CLAIRE, TRES PURE", - 2:"CIEL MOYENNEMENT CLAIRE", - 3:"CIEL D UNE ZONE INDUSRTIELLE, OPAQUE", - }, -'FORMULA_OF_ATMOSPHERIC_RADIATION' : { - 1:"IDSO AND JACKSON (1969)", - 2:"SWINBANK (1963)", - 3:"BRUTSAERT (1975)", - 4:"YAJIMA TONO DAM (2014)", - }, -'LAW_OF_TRACERS_DEGRADATION' : { - 0:"PAS DE DEGRADATION", - 1:"LOI EN F(T90)", - }, -} - -DicoCasFrToCata = { - "FICHIER DES PARAMETRES":"STEERING_FILE", - "FICHIER FORTRAN":"FORTRAN_FILE", - "TITRE DU CAS QE":"WAQ_CASE_TITLE", - "PERIODE POUR LES SORTIES QUALITE D'EAU":"WATER_QUALITY_PRINTOUT_PERIOD", - "VARIABLES POUR LES SORTIES QE":"VARIABLES_FOR_WAQ_PRINTOUTS", - "VARIABLES QE A IMPRIMER":"WAQ_VARIABLES_TO_BE_PRINTED", - "FICHIER DES RESULTATS":"RESULTS_FILE", - "FORMAT DU FICHIER DES RESULTATS":"RESULTS_FILE_FORMAT", - "NUMERO DE VERSION":"RELEASE", - "FICHIER DE GEOMETRIE":"GEOMETRY_FILE", - "FORMAT DU FICHIER DE GEOMETRIE":"GEOMETRY_FILE_FORMAT", - "FICHIER DES CONDITIONS AUX LIMITES":"BOUNDARY_CONDITIONS_FILE", - "FICHIER HYDRODYNAMIQUE":"HYDRODYNAMIC_FILE", - "FORMAT DU FICHIER HYDRODYNAMIQUE":"HYDRODYNAMIC_FILE_FORMAT", - "FICHIER DE REFERENCE":"REFERENCE_FILE", - "FORMAT DU FICHIER DE REFERENCE":"REFERENCE_FILE_FORMAT", - "BILAN DE MASSE":"MASS_BALANCE", - "VALIDATION":"VALIDATION", - "MASSE VOLUMIQUE DE L'EAU":"WATER_DENSITY", - "VISCOSITE CINEMATIQUE EAU":"KINEMATIC_WATER_VISCOSITY", - "DISPERSION LONGITUDINALE":"DISPERSION_ALONG_THE_FLOW", - "DISPERSION TRANSVERSALE":"DISPERSION_ACROSS_THE_FLOW", - "DICTIONNAIRE":"DICTIONARY", - "DEBUGGER":"DEBUGGER", - "CONSTANTE DE DEGRADATION DE LA CHARGE ORGANIQUE K120":"CONSTANT_OF_DEGRADATION_OF_ORGANIC_LOAD_K120", - "CONSTANTE DE LA CINETIQUE DE NITRIFICATION K520":"CONSTANT_FOR_THE_NITRIFICATION_KINETIC_K520", - "OXYGENE PRODUIT PAR PHOTOSYNTHESE":"OXYGENE_PRODUCED_BY_PHOTOSYNTHESIS", - "OXYGENE CONSOMME PAR NITRIFICATION":"CONSUMED_OXYGEN_BY_NITRIFICATION", - "DEMANDE BENTHIQUE":"BENTHIC_DEMAND", - "COEFFICIENT DE REAERATION K2":"K2_REAERATION_COEFFICIENT", - "FORMULE DE CALCUL DE K2":"FORMULA_FOR_COMPUTING_K2", - "CONCENTRATION DE SATURATION EN O2 DE L'EAU (CS)":"O2_SATURATION_DENSITY_OF_WATER__CS_", - "FORMULE DE CALCUL DE CS":"FORMULA_FOR_COMPUTING_CS", - "VITESSE DE SEDIMENTATION DU PHOSPHORE ORGANIQUE":"SEDIMENTATION_VELOCITY_OF_ORGANIC_PHOSPHORUS", - "VITESSE DE SEDIMENTATION DE L'AZOTE NON ALGALE":"SEDIMENTATION_VELOCITY_OF_NON_ALGAL_NITROGEN", - "TAUX DE CROISSANCE ALGALE MAXIMUM A 20C":"MAXIMUM_ALGAL_GROWTH_RATE_AT_20C", - "PROFONDEUR DE SECCHI":"SECCHI_DEPTH", - "COEFFICIENT DE TURBIDITE VEGETALE SANS PHYTO":"VEGETAL_TURBIDITY_COEFFICIENT_WITHOUT_PHYTO", - "PARAMETRE DE CALAGE DE LA FORMULE DE SMITH":"PARAMETER_OF_CALIBRATION_OF_SMITH_FORMULA", - "CONSTANTE DE DEMI-SATURATION EN PHOSPHATE":"CONSTANT_OF_HALF_SATURATION_WITH_PHOSPHATE", - "CONSTANTE DE DEMI-SATURATION EN AZOTE":"CONSTANT_OF_HALF_SATURATION_WITH_NITROGEN", - "COEFFICIENTS DE TOXICITE POUR LES ALGUES":"ALGAL_TOXICITY_COEFFICIENTS", - "TAUX DE RESPIRATION DE LA BIOMASSE ALGALE":"RESPIRATION_RATE_OF_ALGAL_BIOMASS", - "PROPORTION DE PHOSPHORE DANS LES CELLULES DU PHYTO":"PROPORTION_OF_PHOSPHORUS_WITHIN_PHYTO_CELLS", - "POURCENTAGE DE PHOSPHORE ASSIMILABLE DANS LE PHYTO MORT":"PERCENTAGE_OF_PHYSPHORUS_ASSIMILABLE_IN_DEAD_PHYTO", - "TAUX DE TRANSFORMATION DU POR EN PO4":"RATE_OF_TRANSFORMATION_OF_POR_TO_PO4", - "PROPORTION D'AZOTE DANS LES CELLULES DU PHYTO":"PROPORTION_OF_NITROGEN_WITHIN_PHYTO_CELLS", - "PERCENTAGE D'AZOTE ASSIMILABLE DANS LE PHYTO MORT":"PERCENTAGE_OF_NITROGEN_ASSIMILABLE_IN_DEAD_PHYTO", - "TAUX DE TRANSFORMATION DU NOR EN NO3":"RATE_OF_TRANSFORMATION_OF_NOR_TO_NO3", - "COEFFICIENTS DE MORTALITE ALGALE A 20C":"COEFFICIENTS_OF_ALGAL_MORTALITY_AT_20C", - "VITESSE DE SEDIMENTATION DE LA CHARGE ORGANIQUE":"SEDIMENTATION_VELOCITY_OF_ORGANIC_LOAD", - "CONSTANTE DE DEGRADATION DE LA CHARGE ORGANIQUE K1":"CONSTANT_OF_DEGRADATION_OF_ORGANIC_LOAD_K1", - "CONSTANTE DE CINETIQUE DE NITRIFICATION K4":"CONSTANT_OF_NITRIFICATION_KINETIC_K4", - "PHOTOSYNTHESE P":"PHOTOSYNTHESIS_P", - "RESPIRATION VEGETALE R":"VEGERAL_RESPIRATION_R", - "TEMPERATURE DE L'EAU":"WATER_TEMPERATURE", - "COEFFICIENT DE REAERATION DU SEUIL RS":"WEIR_REAERATION_COEFFICIENT_RS", - "FORMULE DE CALCUL DE RS":"FORMULA_FOR_COMPUTING_RS", - "COEFFICIENTS A ET B POUR LA FORMULE DE RS":"COEFFICIENTS_A_AND_B_FOR_RS_FORMULA", - "TAUX D'EROSION":"EROSION_RATE", - "CONTRAINTE CRITIQUE DE SEDIMENTATION":"SEDIMENTATION_CRITICAL_STRESS", - "CONTRAINTE CRITIQUE DE REMISE EN SUSPENSION":"CRITICAL_STRESS_OF_RESUSPENSION", - "VITESSE DE CHUTE DES MES":"SEDIMENT_SETTLING_VELOCITY", - "CONSTANTE DE DESINTEGRATION EXPONENETIELLE":"EXPONENETIAL_DESINTEGRATION_CONSTANT", - "COEFFICIENT DE DISTRIBUTION":"COEFFICIENT_OF_DISTRIBUTION", - "CONSTANTE CINETIQUE DE DESORPTION":"CONSTANT_OF_DESORPTION_KINETIC", - "CHALEUR SPECIFIQUE DE L'EAU":"WATER_SPECIFIC_HEAT", - "CHALEUR SPECIFIQUE DE L'AIR":"AIR_SPECIFIC_HEAT", - "COEFFICIENTS DE LA FORMULE D'AERATION":"COEFFICIENTS_OF_AERATION_FORMULA", - "COEFFICIENT REPRESENTATIF DE LA COUVERTURE NUAGEUSE":"COEFFICIENT_OF_CLOUDING_RATE", - "COEFFICIENTS DE CALAGE DU RAYONNEMENT ATMOSPHERIQUE":"COEFFICIENTS_FOR_CALIBRATING_ATMOSPHERIC_RADIATION", - "COEFFICIENTS DE CALAGE DU RAYONNEMENT DU PLAN D'EAU":"COEFFICIENTS_FOR_CALIBRATING_SURFACE_WATER_RADIATION", - "DENSITE DE FLUX DU RAYONNEMENT SOLAIRE A LA SURFACE":"SUNSHINE_FLUX_DENSITY_ON_WATER_SURFACE", - "MODELE D'ECHANGES EAU-ATMOSPHERE":"ATMOSPHERE_WATER_EXCHANGE_MODEL", - "CLARTE DU CIEL":"LIGHTNESS_OF_THE_SKY", - "COEFFICIENT DE CALAGE DU MODELE D'ECHANGES EAU-ATMOSPHERE":"COEFFICIENT_TO_CALIBRATE_THE_ATMOSPHERE_WATER_EXCHANGE_MODEL", - "TAUX D'EVAPORATION":"EVAPORATION_RATE", - "METHODE DE CALCUL DU COEFFICIENT D'EXTINCTION DU RAY":"METHOD_OF_COMPUTATION_OF_RAY_EXCTINCTION_COEFFICIENT", - "FORMULE DU RAYONNEMENT ATMOSPHERIQUE":"FORMULA_OF_ATMOSPHERIC_RADIATION", - "LOI DE DEGRADATION DES TRACEURS":"LAW_OF_TRACERS_DEGRADATION", - "COEFFICIENT 1 DE LA LOI DE DEGRADATION DES TRACEURS":"COEFFICIENT_1_FOR_LAW_OF_TRACERS_DEGRADATION", - "FICHIER DES PARAMETRES AED2":"AED2_STEERING_FILE", - "FICHIER DES PARAMETRES PHYTOPLANCTON AED2":"AED2_PHYTOPLANKTON_STEERING_FILE", - "FICHIER DES PARAMETRES ZOOPLANCTON AED2":"AED2_ZOOPLANKTON_STEERING_FILE", - "FICHIER DES PARAMETRES PATHOGENES AED2":"AED2_PATHOGEN_STEERING_FILE", - "FICHIER DES PARAMETRES BIVALVES AED2":"AED2_BIVALVE_STEERING_FILE", - "LISTE DES FICHIERS":"LIST_OF_FILES", - "DESCRIPTION DES LIBRAIRIES":"DESCRIPTION_OF_LIBRARIES", - "EXECUTABLE PAR DEFAUT":"DEFAULT_EXECUTABLE", - "EXECUTABLE PARALLELE PAR DEFAUT":"DEFAULT_PARALLEL_EXECUTABLE", -} - -DicoCasEnToCata = { - 'STEERING FILE':'STEERING_FILE', - 'FORTRAN FILE':'FORTRAN_FILE', - 'WAQ CASE TITLE':'WAQ_CASE_TITLE', - 'WATER QUALITY PRINTOUT PERIOD':'WATER_QUALITY_PRINTOUT_PERIOD', - 'VARIABLES FOR WAQ PRINTOUTS':'VARIABLES_FOR_WAQ_PRINTOUTS', - 'WAQ VARIABLES TO BE PRINTED':'WAQ_VARIABLES_TO_BE_PRINTED', - 'RESULTS FILE':'RESULTS_FILE', - 'RESULTS FILE FORMAT':'RESULTS_FILE_FORMAT', - 'RELEASE':'RELEASE', - 'GEOMETRY FILE':'GEOMETRY_FILE', - 'GEOMETRY FILE FORMAT':'GEOMETRY_FILE_FORMAT', - 'BOUNDARY CONDITIONS FILE':'BOUNDARY_CONDITIONS_FILE', - 'HYDRODYNAMIC FILE':'HYDRODYNAMIC_FILE', - 'HYDRODYNAMIC FILE FORMAT':'HYDRODYNAMIC_FILE_FORMAT', - 'REFERENCE FILE':'REFERENCE_FILE', - 'REFERENCE FILE FORMAT':'REFERENCE_FILE_FORMAT', - 'MASS-BALANCE':'MASS_BALANCE', - 'VALIDATION':'VALIDATION', - 'WATER DENSITY':'WATER_DENSITY', - 'KINEMATIC WATER VISCOSITY':'KINEMATIC_WATER_VISCOSITY', - 'DISPERSION ALONG THE FLOW':'DISPERSION_ALONG_THE_FLOW', - 'DISPERSION ACROSS THE FLOW':'DISPERSION_ACROSS_THE_FLOW', - 'DICTIONARY':'DICTIONARY', - 'DEBUGGER':'DEBUGGER', - 'CONSTANT OF DEGRADATION OF ORGANIC LOAD K120':'CONSTANT_OF_DEGRADATION_OF_ORGANIC_LOAD_K120', - 'CONSTANT FOR THE NITRIFICATION KINETIC K520':'CONSTANT_FOR_THE_NITRIFICATION_KINETIC_K520', - 'OXYGENE PRODUCED BY PHOTOSYNTHESIS':'OXYGENE_PRODUCED_BY_PHOTOSYNTHESIS', - 'CONSUMED OXYGEN BY NITRIFICATION':'CONSUMED_OXYGEN_BY_NITRIFICATION', - 'BENTHIC DEMAND':'BENTHIC_DEMAND', - 'K2 REAERATION COEFFICIENT':'K2_REAERATION_COEFFICIENT', - 'FORMULA FOR COMPUTING K2':'FORMULA_FOR_COMPUTING_K2', - 'O2 SATURATION DENSITY OF WATER (CS)':'O2_SATURATION_DENSITY_OF_WATER__CS_', - 'FORMULA FOR COMPUTING CS':'FORMULA_FOR_COMPUTING_CS', - 'SEDIMENTATION VELOCITY OF ORGANIC PHOSPHORUS':'SEDIMENTATION_VELOCITY_OF_ORGANIC_PHOSPHORUS', - 'SEDIMENTATION VELOCITY OF NON ALGAL NITROGEN':'SEDIMENTATION_VELOCITY_OF_NON_ALGAL_NITROGEN', - 'MAXIMUM ALGAL GROWTH RATE AT 20C':'MAXIMUM_ALGAL_GROWTH_RATE_AT_20C', - 'SECCHI DEPTH':'SECCHI_DEPTH', - 'VEGETAL TURBIDITY COEFFICIENT WITHOUT PHYTO':'VEGETAL_TURBIDITY_COEFFICIENT_WITHOUT_PHYTO', - 'PARAMETER OF CALIBRATION OF SMITH FORMULA':'PARAMETER_OF_CALIBRATION_OF_SMITH_FORMULA', - 'CONSTANT OF HALF-SATURATION WITH PHOSPHATE':'CONSTANT_OF_HALF_SATURATION_WITH_PHOSPHATE', - 'CONSTANT OF HALF-SATURATION WITH NITROGEN':'CONSTANT_OF_HALF_SATURATION_WITH_NITROGEN', - 'ALGAL TOXICITY COEFFICIENTS':'ALGAL_TOXICITY_COEFFICIENTS', - 'RESPIRATION RATE OF ALGAL BIOMASS':'RESPIRATION_RATE_OF_ALGAL_BIOMASS', - 'PROPORTION OF PHOSPHORUS WITHIN PHYTO CELLS':'PROPORTION_OF_PHOSPHORUS_WITHIN_PHYTO_CELLS', - 'PERCENTAGE OF PHYSPHORUS ASSIMILABLE IN DEAD PHYTO':'PERCENTAGE_OF_PHYSPHORUS_ASSIMILABLE_IN_DEAD_PHYTO', - 'RATE OF TRANSFORMATION OF POR TO PO4':'RATE_OF_TRANSFORMATION_OF_POR_TO_PO4', - 'PROPORTION OF NITROGEN WITHIN PHYTO CELLS':'PROPORTION_OF_NITROGEN_WITHIN_PHYTO_CELLS', - 'PERCENTAGE OF NITROGEN ASSIMILABLE IN DEAD PHYTO':'PERCENTAGE_OF_NITROGEN_ASSIMILABLE_IN_DEAD_PHYTO', - 'RATE OF TRANSFORMATION OF NOR TO NO3':'RATE_OF_TRANSFORMATION_OF_NOR_TO_NO3', - 'COEFFICIENTS OF ALGAL MORTALITY AT 20C':'COEFFICIENTS_OF_ALGAL_MORTALITY_AT_20C', - 'SEDIMENTATION VELOCITY OF ORGANIC LOAD':'SEDIMENTATION_VELOCITY_OF_ORGANIC_LOAD', - 'CONSTANT OF DEGRADATION OF ORGANIC LOAD K1':'CONSTANT_OF_DEGRADATION_OF_ORGANIC_LOAD_K1', - 'CONSTANT OF NITRIFICATION KINETIC K4':'CONSTANT_OF_NITRIFICATION_KINETIC_K4', - 'PHOTOSYNTHESIS P':'PHOTOSYNTHESIS_P', - 'VEGERAL RESPIRATION R':'VEGERAL_RESPIRATION_R', - 'WATER TEMPERATURE':'WATER_TEMPERATURE', - 'WEIR REAERATION COEFFICIENT RS':'WEIR_REAERATION_COEFFICIENT_RS', - 'FORMULA FOR COMPUTING RS':'FORMULA_FOR_COMPUTING_RS', - 'COEFFICIENTS A AND B FOR RS FORMULA':'COEFFICIENTS_A_AND_B_FOR_RS_FORMULA', - 'EROSION RATE':'EROSION_RATE', - 'SEDIMENTATION CRITICAL STRESS':'SEDIMENTATION_CRITICAL_STRESS', - 'CRITICAL STRESS OF RESUSPENSION':'CRITICAL_STRESS_OF_RESUSPENSION', - 'SEDIMENT SETTLING VELOCITY':'SEDIMENT_SETTLING_VELOCITY', - 'EXPONENETIAL DESINTEGRATION CONSTANT':'EXPONENETIAL_DESINTEGRATION_CONSTANT', - 'COEFFICIENT OF DISTRIBUTION':'COEFFICIENT_OF_DISTRIBUTION', - 'CONSTANT OF DESORPTION KINETIC':'CONSTANT_OF_DESORPTION_KINETIC', - 'WATER SPECIFIC HEAT':'WATER_SPECIFIC_HEAT', - 'AIR SPECIFIC HEAT':'AIR_SPECIFIC_HEAT', - 'COEFFICIENTS OF AERATION FORMULA':'COEFFICIENTS_OF_AERATION_FORMULA', - 'COEFFICIENT OF CLOUDING RATE':'COEFFICIENT_OF_CLOUDING_RATE', - 'COEFFICIENTS FOR CALIBRATING ATMOSPHERIC RADIATION':'COEFFICIENTS_FOR_CALIBRATING_ATMOSPHERIC_RADIATION', - 'COEFFICIENTS FOR CALIBRATING SURFACE WATER RADIATION':'COEFFICIENTS_FOR_CALIBRATING_SURFACE_WATER_RADIATION', - 'SUNSHINE FLUX DENSITY ON WATER SURFACE':'SUNSHINE_FLUX_DENSITY_ON_WATER_SURFACE', - 'ATMOSPHERE-WATER EXCHANGE MODEL':'ATMOSPHERE_WATER_EXCHANGE_MODEL', - 'LIGHTNESS OF THE SKY':'LIGHTNESS_OF_THE_SKY', - 'COEFFICIENT TO CALIBRATE THE ATMOSPHERE-WATER EXCHANGE MODEL':'COEFFICIENT_TO_CALIBRATE_THE_ATMOSPHERE_WATER_EXCHANGE_MODEL', - 'EVAPORATION RATE':'EVAPORATION_RATE', - 'METHOD OF COMPUTATION OF RAY EXCTINCTION COEFFICIENT':'METHOD_OF_COMPUTATION_OF_RAY_EXCTINCTION_COEFFICIENT', - 'FORMULA OF ATMOSPHERIC RADIATION':'FORMULA_OF_ATMOSPHERIC_RADIATION', - 'LAW OF TRACERS DEGRADATION':'LAW_OF_TRACERS_DEGRADATION', - 'COEFFICIENT 1 FOR LAW OF TRACERS DEGRADATION':'COEFFICIENT_1_FOR_LAW_OF_TRACERS_DEGRADATION', - 'AED2 STEERING FILE':'AED2_STEERING_FILE', - 'AED2 PHYTOPLANKTON STEERING FILE':'AED2_PHYTOPLANKTON_STEERING_FILE', - 'AED2 ZOOPLANKTON STEERING FILE':'AED2_ZOOPLANKTON_STEERING_FILE', - 'AED2 PATHOGEN STEERING FILE':'AED2_PATHOGEN_STEERING_FILE', - 'AED2 BIVALVE STEERING FILE':'AED2_BIVALVE_STEERING_FILE', - 'LIST OF FILES':'LIST_OF_FILES', - 'DESCRIPTION OF LIBRARIES':'DESCRIPTION_OF_LIBRARIES', - 'DEFAULT EXECUTABLE':'DEFAULT_EXECUTABLE', - 'DEFAULT PARALLEL EXECUTABLE':'DEFAULT_PARALLEL_EXECUTABLE', -} -DicoEnumCasFrToEnumCasEn = { -'VARIABLES_FOR_WAQ_PRINTOUTS':{ - "editer !!!":"to edit !!!", -}, - -'RESULTS_FILE_FORMAT':{ - "SERAFIN":"SERAFIN", - "SERAFIND":"SERAFIND", - "MED":"MED", -}, - -'GEOMETRY_FILE_FORMAT':{ - "SERAFIN":"SERAFIN", - "SERAFIND":"SERAFIND", - "MED":"MED", -}, - -'HYDRODYNAMIC_FILE_FORMAT':{ - "SERAFIN":"SERAFIN", - "SERAFIND":"SERAFIND", - "MED":"MED", -}, - -'REFERENCE_FILE_FORMAT':{ - "SERAFIN":"SERAFIN", - "SERAFIND":"SERAFIND", - "MED":"MED", -}, - -} diff --git a/Telemac/waqtel_labelCataToIhm_en.qm b/Telemac/waqtel_labelCataToIhm_en.qm deleted file mode 100644 index 9c15cb95..00000000 Binary files a/Telemac/waqtel_labelCataToIhm_en.qm and /dev/null differ diff --git a/Telemac/waqtel_labelCataToIhm_fr.qm b/Telemac/waqtel_labelCataToIhm_fr.qm deleted file mode 100644 index 65205848..00000000 Binary files a/Telemac/waqtel_labelCataToIhm_fr.qm and /dev/null differ diff --git a/Tests/EficasEngineTest.py b/Tests/EficasEngineTest.py deleted file mode 100644 index 4e6823e2..00000000 --- a/Tests/EficasEngineTest.py +++ /dev/null @@ -1,249 +0,0 @@ -#!/usr/bin/env python -# -*- coding: utf-8 -*- -# Copyright (C) 2007-2012 EDF R&D -# -# 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 -# -""" - Ce module sert a lancer EFICAS configure pour Code_Aster -""" -# Modules Python -# Modules Eficas - -import sys,os -sys.path.append(os.path.join(os.path.abspath(os.path.dirname(__file__)),'..')) - -from PyQt4.QtCore import * -from InterfaceQT4 import eficas_go - -import prefs -import difflib - -from PyQt4.QtGui import * -from myMain import Ui_Eficas -from viewManager import MyTabview -from getVersion import getEficasVersion - -from Extensions.i18n import tr -from Extensions.eficas_exception import EficasException - -from Editeur import session - -import unittest -import HTMLTestRunner - -class EficasEngineTestSuite(unittest.TestSuite): - def __init__(self, testList): - unittest.TestSuite.__init__(self) - for test in testList: - self.addTest(test) - -class EficasEngineTestCase(unittest.TestCase): - def setUp(self): - from qtEficas import Appli - from Editeur import session - from Extensions import localisation - - options = session.parse(sys.argv) - if options.code!= None : code=options.code - if options.ssCode!= None : ssCode=options.ssCode - - self.code=prefs.code - self.Eficas=None - self.editor=None - - self.app = QApplication(sys.argv) - localisation.localise(self.app,'en') - self.Eficas=Appli(code=self.code,ssCode=None,multi=False,langue='en') - - def tearDown(self): - del self.Eficas - self.Eficas = None - del self.app - self.app = None - self.editor = None - - def close(self): - if ( self.editor != None ): - vm=self.Eficas.viewmanager - index=vm.myQtab.currentIndex() - idx=index - while idx < len(vm.dict_editors) -1 : - vm.dict_editors[idx]=vm.dict_editors[idx+1] - idx = idx + 1 - del vm.dict_editors[len (vm.dict_editors) -1] - try : - del vm.doubles[vm.dict_editors[index]] - except : - pass - vm.myQtab.removeTab(index) - self.editor = None - - def open_file(self, fileName): - if ( self.Eficas == None ): - return False - - result=True - try: - self.Eficas.viewmanager.handleOpen(fileName) - index=self.Eficas.viewmanager.myQtab.currentIndex() - self.editor=self.Eficas.viewmanager.dict_editors[index] - except: - result=False - pass - - return result - - def save_file(self, file): - if ( self.editor == None ): - return False - - try: - os.remove(file) - except: - pass - - result=True - - try: - self.editor.saveFileAs(fileName=file) - except: - result=False - pass - return result - - def search_object(self, name): - obj=None - if ( self.editor != None ): - obj=self.editor.jdc - return self.search_subobject(obj, name) - - def search_subobject(self, obj, name): - if ( obj==None ): - return None - - if ( hasattr( obj, 'getSdname' ) and obj.getSdname() == name ): - return obj - - list=[] - if ( hasattr(obj, 'etapes') ): - list=obj.etapes - elif ( hasattr(obj, 'mc_liste') ): - list=obj.mc_liste - - o=None - for i in list: - o=self.search_subobject(i, name) - if ( o != None ): - break - - return o - - def search_param(self, obj, name): - if ( obj == None ): - return None - - if ( hasattr( obj, 'nom' ) and obj.nom == name ): - return obj - - list=[] - if ( hasattr(obj, 'etapes') ): - list=obj.etapes - elif ( hasattr(obj, 'mc_liste') ): - list=obj.mc_liste - - o=None - for i in list: - o=self.search_param(i, name) - if ( o != None ): - break - - return o - - def remove_object(self, obj): - if ( obj != None and hasattr( obj, 'parent' ) ): - p=obj.parent - if ( p != None ): - p.suppEntite(obj) - - def compare_files(self, orig, test): - origlines = open(orig, 'U').readlines() - testlines = open(test, 'U').readlines() - - diff = difflib.unified_diff(origlines, testlines, orig, test) - - result = 0; - for str in diff: - if ( len(str) == 0 ): - continue - elif ( str[0] != ' ' ): - result=1 - print str - - return result - - def testCaseDataDir(self): - return '/dn24/EFICAS/stv' - - def testCaseInputDataFile(self): - return "" - - def testCasePatternDataFile(self): - dataFile=self.testCaseInputDataFile() - split=os.path.splitext(dataFile) - return split[0] + '_ptrn' + split[1] - - def testCaseTestDataFile(self): - dataFile=self.testCaseInputDataFile() - split=os.path.splitext(dataFile) - return split[0] + '_test' + split[1] - - def testCaseInputDataPath(self): - return self.testCaseDataDir() + os.sep + self.testCaseInputDataFile() - - def testCasePatternDataPath(self): - return self.testCaseDataDir() + os.sep + self.testCasePatternDataFile() - - def testCaseTestDataPath(self): - return self.testCaseDataDir() + os.sep + self.testCaseTestDataFile() - - def runTest(self): - inputFile=self.testCaseInputDataPath() - - self.assert_(self.open_file(inputFile), 'Can not open file: ' + inputFile) - - self.assert_(self.performTest(), 'Test not performed') - - testFile=self.testCaseTestDataPath() - - self.assert_(self.save_file(testFile), 'Can not save file: ' + testFile) - - patternFile=self.testCasePatternDataPath() - cmp=self.compare_files(patternFile, testFile) - - self.assert_(cmp == 0, "Pattern file and test file are differs") - - self.close() - - def performTest(self): - return True - -def run_tests(reportFile, testSuit): - print reportFile - buf = file(reportFile, 'wb') - runner = HTMLTestRunner.HTMLTestRunner(stream=buf, title='Test report', description='Result of tests') - runner.run(testSuit) diff --git a/Tests/HTMLTestRunner.py b/Tests/HTMLTestRunner.py deleted file mode 100644 index 9c32b00e..00000000 --- a/Tests/HTMLTestRunner.py +++ /dev/null @@ -1,824 +0,0 @@ -""" -A TestRunner for use with the Python unit testing framework. It -generates a HTML report to show the result at a glance. - -The simplest way to use this is to invoke its main method. E.g. - - import unittest - import HTMLTestRunner - - ... define your tests ... - - if __name__ == '__main__': - HTMLTestRunner.main() - - -For more customization options, instantiates a HTMLTestRunner object. -HTMLTestRunner is a counterpart to unittest's TextTestRunner. E.g. - - # output to a file - fp = file('my_report.html', 'wb') - runner = HTMLTestRunner.HTMLTestRunner( - stream=fp, - title='My unit test', - description='This demonstrates the report output by HTMLTestRunner.' - ) - - # Use an external stylesheet. - # See the Template_mixin class for more customizable options - runner.STYLESHEET_TMPL = '' - - # run the test - runner.run(my_test_suite) - - ------------------------------------------------------------------------- -Copyright (c) 2004-2007, Wai Yip Tung -All rights reserved. - -Redistribution and use in source and binary forms, with or without -modification, are permitted provided that the following conditions are -met: - -* Redistributions of source code must retain the above copyright notice, - this list of conditions and the following disclaimer. -* Redistributions in binary form must reproduce the above copyright - notice, this list of conditions and the following disclaimer in the - documentation and/or other materials provided with the distribution. -* Neither the name Wai Yip Tung nor the names of its contributors may be - used to endorse or promote products derived from this software without - specific prior written permission. - -THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS -IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED -TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A -PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER -OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, -EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, -PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR -PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF -LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING -NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS -SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. -""" - -# URL: http://tungwaiyip.info/software/HTMLTestRunner.html - -__author__ = "Wai Yip Tung" -__version__ = "0.8.2" - - -""" -Change History - -Version 0.8.2 -* Show output inline instead of popup window (Viorel Lupu). - -Version in 0.8.1 -* Validated XHTML (Wolfgang Borgert). -* Added description of test classes and test cases. - -Version in 0.8.0 -* Define Template_mixin class for customization. -* Workaround a IE 6 bug that it does not treat - -%(heading)s -%(report)s -%(ending)s - - - -""" - # variables: (title, generator, stylesheet, heading, report, ending) - - - # ------------------------------------------------------------------------ - # Stylesheet - # - # alternatively use a for external style sheet, e.g. - # - - STYLESHEET_TMPL = """ - -""" - - - - # ------------------------------------------------------------------------ - # Heading - # - - HEADING_TMPL = """
        -

        %(title)s

        -%(parameters)s -

        %(description)s

        -
        - -""" # variables: (title, parameters, description) - - HEADING_ATTRIBUTE_TMPL = """

        %(name)s: %(value)s

        -""" # variables: (name, value) - - - - # ------------------------------------------------------------------------ - # Report - # - - REPORT_TMPL = """ -

        Show -Summary -Failed -All -

        - -------- - - - - - - - - -%(test_list)s - - - - - - - - -
        Test Group/Test caseCountPassFailErrorView
        Total%(count)s%(Pass)s%(fail)s%(error)s 
        -""" # variables: (test_list, count, Pass, fail, error) - - REPORT_CLASS_TMPL = r""" - - %(desc)s - %(count)s - %(Pass)s - %(fail)s - %(error)s - Detail - -""" # variables: (style, desc, count, Pass, fail, error, cid) - - - REPORT_TEST_WITH_OUTPUT_TMPL = r""" - -
        %(desc)s
        - - - - - %(status)s - - - - - - -""" # variables: (tid, Class, style, desc, status) - - - REPORT_TEST_NO_OUTPUT_TMPL = r""" - -
        %(desc)s
        - %(status)s - -""" # variables: (tid, Class, style, desc, status) - - - REPORT_TEST_OUTPUT_TMPL = r""" -%(id)s: %(output)s -""" # variables: (id, output) - - - - # ------------------------------------------------------------------------ - # ENDING - # - - ENDING_TMPL = """
         
        """ - -# -------------------- The end of the Template class ------------------- - - -TestResult = unittest.TestResult - -class _TestResult(TestResult): - # note: _TestResult is a pure representation of results. - # It lacks the output and reporting ability compares to unittest._TextTestResult. - - def __init__(self, verbosity=1): - TestResult.__init__(self) - self.stdout0 = None - self.stderr0 = None - self.success_count = 0 - self.failure_count = 0 - self.error_count = 0 - self.verbosity = verbosity - - # result is a list of result in 4 tuple - # ( - # result code (0: success; 1: fail; 2: error), - # TestCase object, - # Test output (byte string), - # stack trace, - # ) - self.result = [] - - - def startTest(self, test): - TestResult.startTest(self, test) - # just one buffer for both stdout and stderr - self.outputBuffer = StringIO.StringIO() - stdout_redirector.fp = self.outputBuffer - stderr_redirector.fp = self.outputBuffer - self.stdout0 = sys.stdout - self.stderr0 = sys.stderr - sys.stdout = stdout_redirector - sys.stderr = stderr_redirector - - - def complete_output(self): - """ - Disconnect output redirection and return buffer. - Safe to call multiple times. - """ - if self.stdout0: - sys.stdout = self.stdout0 - sys.stderr = self.stderr0 - self.stdout0 = None - self.stderr0 = None - return self.outputBuffer.getValue() - - - def stopTest(self, test): - # Usually one of addSuccess, addError or addFailure would have been called. - # But there are some path in unittest that would bypass this. - # We must disconnect stdout in stopTest(), which is guaranteed to be called. - self.complete_output() - - - def addSuccess(self, test): - self.success_count += 1 - TestResult.addSuccess(self, test) - output = self.complete_output() - self.result.append((0, test, output, '')) - if self.verbosity > 1: - sys.stderr.write('ok ') - sys.stderr.write(str(test)) - sys.stderr.write('\n') - else: - sys.stderr.write('.') - - def addError(self, test, err): - self.error_count += 1 - TestResult.addError(self, test, err) - _, _exc_str = self.errors[-1] - output = self.complete_output() - self.result.append((2, test, output, _exc_str)) - if self.verbosity > 1: - sys.stderr.write('E ') - sys.stderr.write(str(test)) - sys.stderr.write('\n') - else: - sys.stderr.write('E') - - def addFailure(self, test, err): - self.failure_count += 1 - TestResult.addFailure(self, test, err) - _, _exc_str = self.failures[-1] - output = self.complete_output() - self.result.append((1, test, output, _exc_str)) - if self.verbosity > 1: - sys.stderr.write('F ') - sys.stderr.write(str(test)) - sys.stderr.write('\n') - else: - sys.stderr.write('F') - - -class HTMLTestRunner(Template_mixin): - """ - """ - def __init__(self, stream=sys.stdout, verbosity=1, title=None, description=None): - self.stream = stream - self.verbosity = verbosity - if title is None: - self.title = self.DEFAULT_TITLE - else: - self.title = title - if description is None: - self.description = self.DEFAULT_DESCRIPTION - else: - self.description = description - - self.startTime = datetime.datetime.now() - - - def run(self, test): - "Run the given test case or test suite." - result = _TestResult(self.verbosity) - test(result) - self.stopTime = datetime.datetime.now() - self.generateReport(test, result) - print >>sys.stderr, '\nTime Elapsed: %s' % (self.stopTime-self.startTime) - return result - - - def sortResult(self, result_list): - # unittest does not seems to run in any particular order. - # Here at least we want to group them together by class. - rmap = {} - classes = [] - for n,t,o,e in result_list: - cls = t.__class__ - if not rmap.has_key(cls): - rmap[cls] = [] - classes.append(cls) - rmap[cls].append((n,t,o,e)) - r = [(cls, rmap[cls]) for cls in classes] - return r - - - def getReportAttributes(self, result): - """ - Return report attributes as a list of (name, value). - Override this to add custom attributes. - """ - startTime = str(self.startTime)[:19] - duration = str(self.stopTime - self.startTime) - status = [] - if result.success_count: status.append('Pass %s' % result.success_count) - if result.failure_count: status.append('Failure %s' % result.failure_count) - if result.error_count: status.append('Error %s' % result.error_count ) - if status: - status = ' '.join(status) - else: - status = 'none' - return [ - ('Start Time', startTime), - ('Duration', duration), - ('Status', status), - ] - - - def generateReport(self, test, result): - report_attrs = self.getReportAttributes(result) - generator = 'HTMLTestRunner %s' % __version__ - stylesheet = self._generate_stylesheet() - heading = self._generate_heading(report_attrs) - report = self._generate_report(result) - ending = self._generate_ending() - output = self.HTML_TMPL % dict( - title = saxutils.escape(self.title), - generator = generator, - stylesheet = stylesheet, - heading = heading, - report = report, - ending = ending, - ) - self.stream.write(output.encode('utf8')) - - - def _generate_stylesheet(self): - return self.STYLESHEET_TMPL - - - def _generate_heading(self, report_attrs): - a_lines = [] - for name, value in report_attrs: - line = self.HEADING_ATTRIBUTE_TMPL % dict( - name = saxutils.escape(name), - value = saxutils.escape(value), - ) - a_lines.append(line) - heading = self.HEADING_TMPL % dict( - title = saxutils.escape(self.title), - parameters = ''.join(a_lines), - description = saxutils.escape(self.description), - ) - return heading - - - def _generate_report(self, result): - rows = [] - sortedResult = self.sortResult(result.result) - for cid, (cls, cls_results) in enumerate(sortedResult): - # subtotal for a class - np = nf = ne = 0 - for n,t,o,e in cls_results: - if n == 0: np += 1 - elif n == 1: nf += 1 - else: ne += 1 - - # format class description - if cls.__module__ == "__main__": - name = cls.__name__ - else: - name = "%s.%s" % (cls.__module__, cls.__name__) - doc = cls.__doc__ and cls.__doc__.split("\n")[0] or "" - desc = doc and '%s: %s' % (name, doc) or name - - row = self.REPORT_CLASS_TMPL % dict( - style = ne > 0 and 'errorClass' or nf > 0 and 'failClass' or 'passClass', - desc = desc, - count = np+nf+ne, - Pass = np, - fail = nf, - error = ne, - cid = 'c%s' % (cid+1), - ) - rows.append(row) - - for tid, (n,t,o,e) in enumerate(cls_results): - self._generate_report_test(rows, cid, tid, n, t, o, e) - - report = self.REPORT_TMPL % dict( - test_list = ''.join(rows), - count = str(result.success_count+result.failure_count+result.error_count), - Pass = str(result.success_count), - fail = str(result.failure_count), - error = str(result.error_count), - ) - return report - - - def _generate_report_test(self, rows, cid, tid, n, t, o, e): - # e.g. 'pt1.1', 'ft1.1', etc - has_output = bool(o or e) - tid = (n == 0 and 'p' or 'f') + 't%s.%s' % (cid+1,tid+1) - name = t.id().split('.')[-1] - doc = t.shortDescription() or "" - desc = doc and ('%s: %s' % (name, doc)) or name - tmpl = has_output and self.REPORT_TEST_WITH_OUTPUT_TMPL or self.REPORT_TEST_NO_OUTPUT_TMPL - - # o and e should be byte string because they are collected from stdout and stderr? - if isinstance(o,str): - # TODO: some problem with 'string_escape': it escape \n and mess up formating - # uo = unicode(o.encode('string_escape')) - uo = o.decode('latin-1') - else: - uo = o - if isinstance(e,str): - # TODO: some problem with 'string_escape': it escape \n and mess up formating - # ue = unicode(e.encode('string_escape')) - ue = e.decode('latin-1') - else: - ue = e - - script = self.REPORT_TEST_OUTPUT_TMPL % dict( - id = tid, - output = saxutils.escape(uo+ue), - ) - - row = tmpl % dict( - tid = tid, - Class = (n == 0 and 'hiddenRow' or 'none'), - style = n == 2 and 'errorCase' or (n == 1 and 'failCase' or 'none'), - desc = desc, - script = script, - status = self.STATUS[n], - ) - rows.append(row) - if not has_output: - return - - def _generate_ending(self): - return self.ENDING_TMPL - - -############################################################################## -# Facilities for running tests from the command line -############################################################################## - -# Note: Reuse unittest.TestProgram to launch test. In the future we may -# build our own launcher to support more specific command line -# parameters like test title, CSS, etc. -class TestProgram(unittest.TestProgram): - """ - A variation of the unittest.TestProgram. Please refer to the base - class for command line parameters. - """ - def runTests(self): - # Pick HTMLTestRunner as the default test runner. - # base class's testRunner parameter is not useful because it means - # we have to instantiate HTMLTestRunner before we know self.verbosity. - if self.testRunner is None: - self.testRunner = HTMLTestRunner(verbosity=self.verbosity) - unittest.TestProgram.runTests(self) - -main = TestProgram - -############################################################################## -# Executing this module from the command line -############################################################################## - -if __name__ == "__main__": - main(module=None) diff --git a/Tests/Makefile b/Tests/Makefile deleted file mode 100644 index 36d2b463..00000000 --- a/Tests/Makefile +++ /dev/null @@ -1,28 +0,0 @@ -all:elem elem7 comm comm9 comm7 ihm9 ihm ihm7 - -elem: - python run.py testelem -elem7: - python run.py testelem7 - -comm: - python run.py testcomm -comm9: - python run.py testcomm9 -comm7: - python run.py testcomm7 - -ihm9: - python run.py testihm9/testihm1.py - python run.py testihm9/testihm2.py - python run.py testihm9/testihm3.py - python run.py testihm9/testihm4.py -ihm: - python run.py testihm/testihm1.py - python run.py testihm/testihm2.py - python run.py testihm/testihm3.py - python run.py testihm/testihm4.py -ihm7: - python run.py testihm7/testihm1.py - python run.py testihm7/testihm2.py - python run.py testihm7/testihm4.py diff --git a/Tests/MappingAccasXsd/Ambiguite/GNUmakefile b/Tests/MappingAccasXsd/Ambiguite/GNUmakefile deleted file mode 100644 index 56707baf..00000000 --- a/Tests/MappingAccasXsd/Ambiguite/GNUmakefile +++ /dev/null @@ -1,133 +0,0 @@ -.SUFFIXES: .xsd .py _driver.py .comm .xml -.PHONY: xsdAll driverAll -SHELL=bash - -# PN : -# PYXB=/local/PyXB-1.2.6/scripts/pyxbgen -# PYXB_PYTHONPATH=/local/PyXB-1.2.6.bin/lib/python2.7/site-packages/ - -ifdef EFICAS4VIMMP_ROOT -srcdir?=${EFICAS4VIMMP_ROOT} -else -srcdir?=../../.. -endif - -confdir?=$(srcdir)/config -tooldir=$(srcdir)/Tools - -# Règle en tête de Makefile -all: driverAll - -######### ENVIRONEMENT DE CONSTRUCTION VIMMP Traning / Local ############ - -ifeq ($(findstring vimmp,$dir($(realpath GNUmakefile))),vimmp) -include $(confdir)/GNUmakefile.mdm -include $(confdir)/GNUmakefile.env -else -include $(confdir)/GNUmakefile.env -endif - -PYXB ?=pyxbgen - -################# REGLES DE CONSTRUCTION ######################## - -define cata_dependencies = -#cata_1$1 : cata_depend$1 -endef - -#Définition des dépendances le modèle .py -$(eval $(call cata_dependencies,.py)) -#Définition des dépendances le modèle .xsd -$(eval $(call cata_dependencies,.xsd)) - -# $(subst .py,.xsd,cata_dependencies) - -cata_files= \ -cata2Blocs1Commun.py \ -cata2Blocs2Commun.py \ -cata2BlocsAvecUnFact.py \ -cata2BlocsMemeNoms.py \ -cata2BlocsMemesNoms.py \ -cata3Blocs1MCauMilieu_V1.py \ -cata3Blocs1MCauMilieu_V2.py \ -cata3Blocs1MCauMilieu_V3.py \ -cata3Blocs3MCauMilieu.py \ -cata_Ambigu_1_Commun.py \ -cata_Ambigu_2_Commun.py \ -cata_Ambigu_UnionType.py \ -cata_blocs_En_Cascade.py \ -cata_FactIdentique.py \ -cata_AmbiguSousAmbigu.py \ -cataSimpMemeNomTypesDifferents.py \ -cataBlocsAmbigusConsecutifs.py - -xsd_files = $(cata_files:%.py=%.xsd) -driver_files= $(cata_files:%.py=%_driver.py) - -xsdAll: $(xsd_files) -driverAll: exec.sh environ.sh qtEficas.sh $(driver_files) -# qtEficasSlm.sh - - -# Exemple PyxB : $(PYXB) -m $(basename $@) -u $< --location-prefix-rewrite http://chercheurs.edf.com/logiciels/vimmp= --write-for-customization \ -# L'utilisation de $? ne fonctionne pas si l'on ne modifie qu'un seul catalogue car il liste uniquement les fichiers modifiés et pyxb détecte -# que l'autre fichier en dépend et qu'il n'a pas été regénéré en même temps: $^ -.py.xsd: - $(tooldir)/generateXSD.py -c $(realpath $<) - -.xsd_driver.py: - $(PYXB) -m $(basename $@) -u $^ --write-for-customization - xmllint --path $(confdir) --schema XMLSchema11_local.xsd --noout $^ - -#Les Tools eficas ont besoins d'un chemin absolu -#ATTENTION : La .sufix rule n'autorise pas les dépendances après le : (sinon la ligne entière est un nom de fichier bizzare) -#_test_driver_$1.comm_test_driver_$1.xml: -# il faut les définir à part -define test_xml_rule = -%_test_driver_$1.xml : %_test_driver_$1.comm $$(realpath $$(*).py) - @echo -e "\n\n------ Generate xml test file $$(@) ------\n" - @[[ -f $$(*).py ]] || (echo "Le fichier catalogue $$(*).py est introuvable" && false) - $(tooldir)/generateXML.py -c $$(realpath $$(*).py) $$< -endef - - -#ATTENTION : La .sufix rule n'autorise pas les dépendances après le : (sinon la ligne entière est un nom de fichier bizzare) -#_test_driver_$1.comm_test_driver_$1.py: -# il faut les définir à part -define test_driver_rule = -%_test_driver_$1.py : %_test_driver_$1.comm - @echo -e "\n\n------ Generate xml test driver $$(@) ------\n" - sed -e "s,@module@,$$(*)_driver,g" -e "s,@file@,$$(<:%.comm=%.xml),g" $$(confdir)/test_driver_subst.py > $$(@) && \ - chmod +x $$(<:%.comm=%.py); -endef - -#Définition des règles de construction pour les tests -#$(eval $(call test_driver_rule,0)) -#$(eval $(call test_driver_rule,1)) -$(foreach it,0 1 2 3 4 5 6 7 8 9, $(eval $(call test_xml_rule,$(it))) ) -$(foreach it,0 1 2 3 4 5 6 7 8 9, $(eval $(call test_driver_rule,$(it))) ) - -test_driver_xml:= $(patsubst %.comm,%.xml,$(wildcard *_test_driver_?.comm)) -test_driver_py:= $(patsubst %.comm,%.py,$(wildcard *_test_driver_?.comm)) - -# xml: -# @echo "Reminder: a .comm file is needed for this step" -# ../tools/generateXML.py -c cata_1.py cata_1_test_1.comm - -check test: testAll - -################# REGLES DE TESTS ######################## - -testAll: exec.sh driverAll $(test_driver_py) $(test_driver_xml) - echo $(test_driver_xml) - echo $(test_driver_py) - for i in `ls *_test_driver*.py` ; do echo -e "\n\n------ Launching $$i ------" && ./exec.sh python $$i ; done -# for i in `ls *_test_driver*.py` ; do echo -e "\n\n------ Launching $$i ------" && ./exec.sh python $$i || break ; done - -################# REGLES DE NETTOYAGE ######################## - -clean: - rm -f *.pyc *~ qtEficasSlm.sh exec.sh environ.sh - rm -rf raw binding.py __pycache__ - rm -f $(xsd_files) $(driver_files) *test_driver_?.py *test_driver_?.xml - diff --git a/Tests/MappingAccasXsd/Ambiguite/cata2Blocs1Commun.py b/Tests/MappingAccasXsd/Ambiguite/cata2Blocs1Commun.py deleted file mode 100644 index 9a780095..00000000 --- a/Tests/MappingAccasXsd/Ambiguite/cata2Blocs1Commun.py +++ /dev/null @@ -1,41 +0,0 @@ -# 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, re -import Accas -from Accas import * -monFichier=os.path.abspath(__file__) - -JdC = JDC_CATA ( - code = 'Essai', - ) - -VERSION_CATALOGUE='V_0' -LeProc = PROC( nom = 'LeProc', - SimpA = SIMP(statut ="o",typ='R', defaut = 2, ), - B1=BLOC( condition = 'SimpA == 1', - SimpK = SIMP(statut ="o",typ='R' ), - SimpC = SIMP(statut ="f",typ='R' ), - ), - B2=BLOC( condition = 'SimpA == 3', - SimpK = SIMP(statut ="o",typ='R' ), - SimpD = SIMP(statut ="f",typ='R' ), - ), -) - diff --git a/Tests/MappingAccasXsd/Ambiguite/cata2Blocs2Commun.py b/Tests/MappingAccasXsd/Ambiguite/cata2Blocs2Commun.py deleted file mode 100644 index 3545b359..00000000 --- a/Tests/MappingAccasXsd/Ambiguite/cata2Blocs2Commun.py +++ /dev/null @@ -1,43 +0,0 @@ -# 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, re -import Accas -from Accas import * -monFichier=os.path.abspath(__file__) - -JdC = JDC_CATA ( - code = 'Essai', - ) - -VERSION_CATALOGUE='V_0' -LeProc = PROC( nom = 'LeProc', - SimpA = SIMP(statut ="o",typ='R', defaut = 2, ), - B1=BLOC( condition = 'SimpA == 1', - SimpK = SIMP(statut ="o",typ='R' ), - SimpC = SIMP(statut ="f",typ='R' ), - SimpE = SIMP(statut ="f",typ='R' ), - ), - B2=BLOC( condition = 'SimpA == 3', - SimpK = SIMP(statut ="o",typ='R' ), - SimpC = SIMP(statut ="f",typ='R' ), - SimpD = SIMP(statut ="f",typ='R' ), - ), -) - diff --git a/Tests/MappingAccasXsd/Ambiguite/cata2BlocsAvecUnFact.py b/Tests/MappingAccasXsd/Ambiguite/cata2BlocsAvecUnFact.py deleted file mode 100644 index 31128973..00000000 --- a/Tests/MappingAccasXsd/Ambiguite/cata2BlocsAvecUnFact.py +++ /dev/null @@ -1,47 +0,0 @@ -# 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, re -import Accas -from Accas import * -monFichier=os.path.abspath(__file__) - -JdC = JDC_CATA ( - code = 'Essai', - ) - -VERSION_CATALOGUE='V_0' -LeProc = PROC( nom = 'LeProc', - SimpA = SIMP(statut ="o",typ='R', defaut = 2, ), - B1=BLOC( condition = 'SimpA == 1', - SimpK = SIMP(statut ="o",typ='R' ), - SimpC = SIMP(statut ="f",typ='R' ), - FactE = FACT( - Simp1DuFactE =SIMP(statut ="f",typ='R' ), - ), - ), - B2=BLOC( condition = 'SimpA == 3', - SimpK = SIMP(statut ="o",typ='R' ), - SimpD = SIMP(statut ="f",typ='R' ), - FactF = FACT( - Simp1DuFactF =SIMP(statut ="f",typ='R' ), - ), - ), -) - diff --git a/Tests/MappingAccasXsd/Ambiguite/cata2BlocsMemeNoms.py b/Tests/MappingAccasXsd/Ambiguite/cata2BlocsMemeNoms.py deleted file mode 100644 index 56a387ac..00000000 --- a/Tests/MappingAccasXsd/Ambiguite/cata2BlocsMemeNoms.py +++ /dev/null @@ -1,38 +0,0 @@ -# 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, re -import Accas -from Accas import * -monFichier=os.path.abspath(__file__) - -JdC = JDC_CATA ( - code = 'Essai', - ) - -VERSION_CATALOGUE='V_0' -LeProc = PROC( nom = 'LeProc', - SimpA = SIMP(statut ="o",typ='R', defaut = 2, ), - B1=BLOC( condition = 'SimpA == 1', nomXML='leBloc', - ModelType = SIMP(statut='o', typ='TXM', into = ('Particles', 'Fields')) - ), - B2=BLOC( condition = 'SimpA == 3', nomXML='leBloc', - ModelType = SIMP(statut='o', typ='TXM', into = ('Particles', 'Fields')) - ), -) diff --git a/Tests/MappingAccasXsd/Ambiguite/cata2BlocsMemesNoms.py b/Tests/MappingAccasXsd/Ambiguite/cata2BlocsMemesNoms.py deleted file mode 100644 index 56a387ac..00000000 --- a/Tests/MappingAccasXsd/Ambiguite/cata2BlocsMemesNoms.py +++ /dev/null @@ -1,38 +0,0 @@ -# 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, re -import Accas -from Accas import * -monFichier=os.path.abspath(__file__) - -JdC = JDC_CATA ( - code = 'Essai', - ) - -VERSION_CATALOGUE='V_0' -LeProc = PROC( nom = 'LeProc', - SimpA = SIMP(statut ="o",typ='R', defaut = 2, ), - B1=BLOC( condition = 'SimpA == 1', nomXML='leBloc', - ModelType = SIMP(statut='o', typ='TXM', into = ('Particles', 'Fields')) - ), - B2=BLOC( condition = 'SimpA == 3', nomXML='leBloc', - ModelType = SIMP(statut='o', typ='TXM', into = ('Particles', 'Fields')) - ), -) diff --git a/Tests/MappingAccasXsd/Ambiguite/cata3Blocs1MCauMilieu_V1.py b/Tests/MappingAccasXsd/Ambiguite/cata3Blocs1MCauMilieu_V1.py deleted file mode 100644 index 7895b539..00000000 --- a/Tests/MappingAccasXsd/Ambiguite/cata3Blocs1MCauMilieu_V1.py +++ /dev/null @@ -1,47 +0,0 @@ -# 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, re -import Accas -from Accas import * -monFichier=os.path.abspath(__file__) - -JdC = JDC_CATA ( - code = 'Essai', - ) - -VERSION_CATALOGUE='V_0' -LeProc = PROC( nom = 'LeProc', - SimpA = SIMP(statut ="o",typ='R', defaut = 2, ), - B1=BLOC( condition = 'SimpA == 1', - A = SIMP(statut ="f",typ='R' ), - B= SIMP(statut ="f",typ='R' ), - ), - C = SIMP(statut ="f",typ='R', defaut = 2, ), - B2=BLOC( condition = 'SimpA == 3', - A = SIMP(statut ="f",typ='R' ), - D = SIMP(statut ="f",typ='R' ), - ), - F = SIMP(statut ="f",typ='R', defaut = 2, ), - B3=BLOC( condition = 'SimpA == 7', - B = SIMP(statut ="f",typ='R' ), - G = SIMP(statut ="f",typ='R' ), - ), -) - diff --git a/Tests/MappingAccasXsd/Ambiguite/cata3Blocs1MCauMilieu_V2.py b/Tests/MappingAccasXsd/Ambiguite/cata3Blocs1MCauMilieu_V2.py deleted file mode 100644 index 3d511781..00000000 --- a/Tests/MappingAccasXsd/Ambiguite/cata3Blocs1MCauMilieu_V2.py +++ /dev/null @@ -1,47 +0,0 @@ -# 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, re -import Accas -from Accas import * -monFichier=os.path.abspath(__file__) - -JdC = JDC_CATA ( - code = 'Essai', - ) - -VERSION_CATALOGUE='V_0' -LeProc = PROC( nom = 'LeProc', - SimpA = SIMP(statut ="o",typ='R', defaut = 2, ), - B1=BLOC( condition = 'SimpA == 1', - A = SIMP(statut ="f",typ='R' ), - B= SIMP(statut ="f",typ='R' ), - ), - C = SIMP(statut ="f",typ='R', defaut = 2, ), - B2=BLOC( condition = 'SimpA == 3', - A = SIMP(statut ="f",typ='R' ), - D = SIMP(statut ="f",typ='R' ), - ), - F = SIMP(statut ="f",typ='R', defaut = 2, ), - B3=BLOC( condition = 'SimpA == 7', - D = SIMP(statut ="f",typ='R' ), - G = SIMP(statut ="f",typ='R' ), - ), -) - diff --git a/Tests/MappingAccasXsd/Ambiguite/cata3Blocs1MCauMilieu_V3.py b/Tests/MappingAccasXsd/Ambiguite/cata3Blocs1MCauMilieu_V3.py deleted file mode 100644 index 21dca805..00000000 --- a/Tests/MappingAccasXsd/Ambiguite/cata3Blocs1MCauMilieu_V3.py +++ /dev/null @@ -1,47 +0,0 @@ -# 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, re -import Accas -from Accas import * -monFichier=os.path.abspath(__file__) - -JdC = JDC_CATA ( - code = 'Essai', - ) - -VERSION_CATALOGUE='V_0' -LeProc = PROC( nom = 'LeProc', - SimpA = SIMP(statut ="o",typ='R', defaut = 2, ), - B1=BLOC( condition = 'SimpA == 1', - A = SIMP(statut ="f",typ='R' ), - B= SIMP(statut ="f",typ='R' ), - ), - C = SIMP(statut ="f",typ='R', defaut = 2, ), - B2=BLOC( condition = 'SimpA == 3', - A = SIMP(statut ="f",typ='R' ), - D = SIMP(statut ="f",typ='R' ), - ), - F = SIMP(statut ="f",typ='R', defaut = 2, ), - B3=BLOC( condition = 'SimpA == 7', - A = SIMP(statut ="f",typ='R' ), - G = SIMP(statut ="f",typ='R' ), - ), -) - diff --git a/Tests/MappingAccasXsd/Ambiguite/cata3Blocs3MCauMilieu.py b/Tests/MappingAccasXsd/Ambiguite/cata3Blocs3MCauMilieu.py deleted file mode 100644 index 2096c86d..00000000 --- a/Tests/MappingAccasXsd/Ambiguite/cata3Blocs3MCauMilieu.py +++ /dev/null @@ -1,49 +0,0 @@ -# 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, re -import Accas -from Accas import * -monFichier=os.path.abspath(__file__) - -JdC = JDC_CATA ( - code = 'Essai', - ) - -VERSION_CATALOGUE='V_0' -LeProc = PROC( nom = 'LeProc', - SimpA = SIMP(statut ="o",typ='R', defaut = 2, ), - B1=BLOC( condition = 'SimpA == 1', - A = SIMP(statut ="f",typ='R' ), - B= SIMP(statut ="f",typ='R' ), - ), - C = SIMP(statut ="f",typ='R', defaut = 2, ), - H = SIMP(statut ="f",typ='R', defaut = 2, ), - I = SIMP(statut ="f",typ='R', defaut = 2, ), - B2=BLOC( condition = 'SimpA == 3', - A = SIMP(statut ="f",typ='R' ), - D = SIMP(statut ="f",typ='R' ), - ), - F = SIMP(statut ="f",typ='R', defaut = 2, ), - B3=BLOC( condition = 'SimpA == 7', - A = SIMP(statut ="f",typ='R' ), - G = SIMP(statut ="f",typ='R' ), - ), -) - diff --git a/Tests/MappingAccasXsd/Ambiguite/cataBlocsAmbigusConsecutifs.py b/Tests/MappingAccasXsd/Ambiguite/cataBlocsAmbigusConsecutifs.py deleted file mode 100644 index e330e2aa..00000000 --- a/Tests/MappingAccasXsd/Ambiguite/cataBlocsAmbigusConsecutifs.py +++ /dev/null @@ -1,66 +0,0 @@ -# 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, re -import Accas -from Accas import * -monFichier=os.path.abspath(__file__) - -JdC = JDC_CATA ( - code='Essai' - ) -VERSION_CATALOGUE='V_0' - -Interactions = PROC(nom='Interactions', - origine = SIMP(typ='I', statut='o'), - monBlocA1 = BLOC( condition = 'origine == 1' , - termeLE = SIMP(typ='TXM', statut='o', into = ['Fields','Particles']), - ), - monBlocA2 = BLOC( condition = 'origine == 2' , - termeLE = SIMP(typ='TXM', statut='o', into = ['Particles2','Fields2']), - ), - monBlocB1 = BLOC( condition = 'origine == 3' , - Format = SIMP(typ='TXM', statut='o', into = ( "Saturne", "Fluent" ),), - ), - monBlocB2 = BLOC( condition = 'origine == 4' , - Format = SIMP(typ='TXM', statut='o', into = ( "Saturne4", "Fluent4", "Use converter" ),), - blocConversion = BLOC (condition = 'Format == "Use converter"', - converter = SIMP(typ='TXM', statut='o', into = ['Saturne', 'OpenFOAM']), - ), - ), -) - -Interactions2 = PROC(nom='Interactions2', - origine = SIMP(typ='I', statut='o'), - monBlocA1 = BLOC( condition = 'origine == 1' , - termeLE = SIMP(typ='TXM', statut='o', into = ['Fields','Particles']), - ), - monBlocA2 = BLOC( condition = 'origine == 2' , - termeLE = SIMP(typ='TXM', statut='o', into = ['Particles2','Fields2']), - ), - monBlocB1 = BLOC( condition = 'origine == 3' , - Format = SIMP(typ='TXM', statut='o', into = ( "Saturne", "Fluent" ),), - ), - monBlocB2 = BLOC( condition = 'origine == 4' , - Format = SIMP(typ='TXM', statut='o', into = ( "Saturne4", "Fluent4", "Use converter" ),), - blocConversion = BLOC (condition = 'Format == "Use converter"', - converter = SIMP(typ='TXM', statut='o', into = ['Saturne', 'OpenFOAM']), - ), - ), -) diff --git a/Tests/MappingAccasXsd/Ambiguite/cataFactMemeNomTypesDifferents.py b/Tests/MappingAccasXsd/Ambiguite/cataFactMemeNomTypesDifferents.py deleted file mode 100644 index 8c9a4de5..00000000 --- a/Tests/MappingAccasXsd/Ambiguite/cataFactMemeNomTypesDifferents.py +++ /dev/null @@ -1,45 +0,0 @@ -# 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, re -import Accas -from Accas import * -monFichier=os.path.abspath(__file__) - -JdC = JDC_CATA ( - code = 'Essai', - ) - -VERSION_CATALOGUE='V_0' -LeProc = PROC( nom = 'LeProc', - SimpA = SIMP(statut ="o",typ='R', defaut = 2, ), - B1=BLOC( condition = 'SimpA == 1', - Fact1 = FACT ( - SimpK1 = SIMP(statut ="o",typ='R' ), - ), - SimpC = SIMP(statut ="f",typ='R' ), - ), - B2=BLOC( condition = 'SimpA == 3', - Fact1 = FACT ( - SimpK2 = SIMP(statut ="o",typ='R' ), - ), - SimpD = SIMP(statut ="f",typ='R' ), - ), -) - diff --git a/Tests/MappingAccasXsd/Ambiguite/cataSimpMemeNomTypesDifferents.py b/Tests/MappingAccasXsd/Ambiguite/cataSimpMemeNomTypesDifferents.py deleted file mode 100644 index 30a51d29..00000000 --- a/Tests/MappingAccasXsd/Ambiguite/cataSimpMemeNomTypesDifferents.py +++ /dev/null @@ -1,51 +0,0 @@ -# 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, re -import Accas -from Accas import * -monFichier=os.path.abspath(__file__) - -JdC = JDC_CATA ( - code = 'Essai', - ) - -VERSION_CATALOGUE='V_0' -LeProc1 = PROC( nom = 'LeProc1', - SimpK = SIMP(statut ="o",typ='R' ), -) -LeProc = PROC( nom = 'LeProc', - SimpA = SIMP(statut ="o",typ='R', defaut = 2, ), - B1=BLOC( condition = 'SimpA == 1', - SimpK = SIMP(statut ="o",typ='R' ), - SimpC = SIMP(statut ="f",typ='R' ), - ), - B2=BLOC( condition = 'SimpA == 3', - SimpK = SIMP(statut ="o",typ='I' ), - SimpD = SIMP(statut ="f",typ='R' ), - ), - B3=BLOC( condition = 'SimpA == 3', - SimpK = SIMP(statut ="o",typ='I' ), - SimpE = SIMP(statut ="f",typ='R' ), - ), -) -LeProc2 = PROC( nom = 'LeProc2', - SimpK = SIMP(statut ="o",typ='I' ), -) - diff --git a/Tests/MappingAccasXsd/Ambiguite/cata_AmbiguSousAmbigu.py b/Tests/MappingAccasXsd/Ambiguite/cata_AmbiguSousAmbigu.py deleted file mode 100644 index 089da4b8..00000000 --- a/Tests/MappingAccasXsd/Ambiguite/cata_AmbiguSousAmbigu.py +++ /dev/null @@ -1,29 +0,0 @@ -from Accas import * -JdC = JDC_CATA ( - code = 'Essai', -) - - -LeProc = PROC(nom='LeProc', - - S1 = SIMP(typ='I', statut='o'), - bloc_une = BLOC(condition = "S1 == 1", - Choix = SIMP(typ='TXM', statut='o', into=['A', 'B']), - S2 = SIMP(typ='TXM',), - ), # fin bloc_une - bloc_deux = BLOC(condition = "S1 == 3", - Choix = SIMP(statut='o', typ='TXM', into=['E', 'F']), - bloc_21 = BLOC(condition = "Choix == 'F'", - N1=SIMP(statut='o', typ='TXM', into=['AA', 'BB']), - ),# fin bloc_Field - bloc_22 = BLOC(condition = "Choix == 'E'", - N1=SIMP(statut='o', typ='TXM', into=['SS', 'VV']), - ),# fin bloc_N_particle - ), # fin bloc_deux -) - - - - - - diff --git a/Tests/MappingAccasXsd/Ambiguite/cata_Ambigu_1_Commun.py b/Tests/MappingAccasXsd/Ambiguite/cata_Ambigu_1_Commun.py deleted file mode 100644 index 72e723f8..00000000 --- a/Tests/MappingAccasXsd/Ambiguite/cata_Ambigu_1_Commun.py +++ /dev/null @@ -1,41 +0,0 @@ -# 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, re -import Accas -from Accas import * -monFichier=os.path.abspath(__file__) - -JdC = JDC_CATA ( - code = 'Essai', - ) - -VERSION_CATALOGUE='V_0' -LeProcNA = PROC( nom = 'LeProc', - SimpA = SIMP(statut ="o",typ='R', defaut = 2, ), - B1=BLOC( condition = 'SimpA == 1', - SimpK = SIMP(statut ="o",typ='R' ), - SimpC = SIMP(statut ="f",typ='R' ), - ), - B2=BLOC( condition = 'SimpA == 3', - SimpK = SIMP(statut ="o",typ='R' ), - SimpD = SIMP(statut ="f",typ='R' ), - ), -) - diff --git a/Tests/MappingAccasXsd/Ambiguite/cata_Ambigu_2_Commun.py b/Tests/MappingAccasXsd/Ambiguite/cata_Ambigu_2_Commun.py deleted file mode 100644 index 6c10ad6e..00000000 --- a/Tests/MappingAccasXsd/Ambiguite/cata_Ambigu_2_Commun.py +++ /dev/null @@ -1,43 +0,0 @@ -# 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, re -import Accas -from Accas import * -monFichier=os.path.abspath(__file__) - -JdC = JDC_CATA ( - code = 'Essai', - ) - -VERSION_CATALOGUE='V_0' -LeProcNA = PROC( nom = 'LeProc', - SimpA = SIMP(statut ="o",typ='R', defaut = 2, ), - B1=BLOC( condition = 'SimpA == 1', - SimpK = SIMP(statut ="o",typ='R' ), - SimpC = SIMP(statut ="f",typ='R' ), - SimpE = SIMP(statut ="f",typ='R' ), - ), - B2=BLOC( condition = 'SimpA == 3', - SimpK = SIMP(statut ="o",typ='R' ), - SimpC = SIMP(statut ="f",typ='R' ), - SimpD = SIMP(statut ="f",typ='R' ), - ), -) - diff --git a/Tests/MappingAccasXsd/Ambiguite/cata_Ambigu_UnionType.py b/Tests/MappingAccasXsd/Ambiguite/cata_Ambigu_UnionType.py deleted file mode 100644 index d1c26ff6..00000000 --- a/Tests/MappingAccasXsd/Ambiguite/cata_Ambigu_UnionType.py +++ /dev/null @@ -1,58 +0,0 @@ -# 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, re -import Accas -from Accas import * -monFichier=os.path.abspath(__file__) - -JdC = JDC_CATA ( - code = 'Essai', - ) - -VERSION_CATALOGUE='V_0' -LeProc = PROC( nom = 'LeProc', - F1 = FACT( statut ='o', - SimpA = SIMP(statut ="o",typ='I', defaut = 2, ), - SimpB = SIMP(statut ="o",typ='R', defaut = 2, ), - SimpC = SIMP(statut ="o",typ='R', defaut = 2, ), - SimpD = SIMP(statut ="o",typ='R', defaut = 2, ), - SimpE = SIMP(statut ="o",typ='R', defaut = 2, ), - SimpK = SIMP(statut ="o",typ='R', defaut = 2, ), - ), - SimpA = SIMP(statut ="o",typ='R', defaut = 2, ), - B1=BLOC( condition = 'SimpA == 1', - SimpK = SIMP(statut ="o",typ='TXM', nomXML='forceNomSimpK' ), - SimpC = SIMP(statut ="f",typ='R' ), - SimpE = SIMP(statut ="f",typ='R' ), - ), - B2=BLOC( condition = 'SimpA == 3', - SimpK = SIMP(statut ="o",typ='TXM', nomXML='forceNomSimpK' ), - SimpC = SIMP(statut ="f",typ='R' ), - SimpD = SIMP(statut ="f",typ='R' ), - ), - F2 = FACT( statut ='o', - SimpA = SIMP(statut ="o",typ='R', defaut = 3, ), - SimpB = SIMP(statut ="o",typ='I', defaut = 2, ), - SimpC = SIMP(statut ="o",typ='I', defaut = 2, ), - SimpD = SIMP(statut ="o",typ='I', defaut = 2, ), - SimpE = SIMP(statut ="o",typ='I', defaut = 2, ), - SimpK = SIMP(statut ="o",typ='I', defaut = 2, ), - ), -) diff --git a/Tests/MappingAccasXsd/Ambiguite/cata_FactIdentique.py b/Tests/MappingAccasXsd/Ambiguite/cata_FactIdentique.py deleted file mode 100644 index feeb8064..00000000 --- a/Tests/MappingAccasXsd/Ambiguite/cata_FactIdentique.py +++ /dev/null @@ -1,70 +0,0 @@ -# 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, re -import Accas -from Accas import * -monFichier=os.path.abspath(__file__) - -JdC = JDC_CATA ( - code = 'Essai', - ) - -VERSION_CATALOGUE='V_0' -LeProc = PROC( nom = 'LeProc', - F1 = FACT( statut ='o', - SimpA = SIMP(statut ="o",typ='I', defaut = 2, nomXML='imposeA'), - SimpB = SIMP(statut ="o",typ='R', defaut = 2, nomXML='imposeB'), - ), - F1Identique = FACT( statut ='o', - SimpA = SIMP(statut ="o",typ='I', defaut = 2, nomXML='imposeA'), - SimpB = SIMP(statut ="o",typ='R', defaut = 2, nomXML='imposeB'), - ), - FactEnglobant = FACT( statut ='o', - SimpC = SIMP(statut ="o",typ='R', defaut = 2, nomXML='imposeC'), - F1Identique = FACT( statut ='o', - SimpA = SIMP(statut ="o",typ='I', defaut = 2, nomXML='imposeA'), - SimpB = SIMP(statut ="o",typ='R', defaut = 2, nomXML='imposeB'), - ), - ), - FactEncoreUnNiveau = FACT (statut= 'o', - FactEnglobant = FACT( statut ='o', - SimpC = SIMP(statut ="o",typ='R', defaut = 2, nomXML='imposeC'), - F1Identique = FACT( statut ='o', - SimpA = SIMP(statut ="o",typ='I', defaut = 2, nomXML='imposeA'), - SimpB = SIMP(statut ="o",typ='R', defaut = 2, nomXML='imposeB'), - ), - ), - ), -) -#LeProcIdentique = PROC( nom = 'LeProcIdentique', -# F1 = FACT( statut ='o', -# SimpA = SIMP(statut ="o",typ='I', defaut = 2, nomXML='imposeA'), -# SimpB = SIMP(statut ="o",typ='R', defaut = 2, nomXML='imposeB'), -# SimpD = SIMP(statut ="o",typ='R', defaut = 2, nomXML='imposeD'), -# SimpE = SIMP(statut ="o",typ='R', defaut = 2, nomXML='imposeE'), -# ), -# F1Identique = FACT( statut ='o', -# SimpA = SIMP(statut ="o",typ='I', defaut = 2, nomXML='imposeA'), -# SimpB = SIMP(statut ="o",typ='R', defaut = 2, nomXML='imposeB'), -# SimpC = SIMP(statut ="o",typ='R', defaut = 2, nomXML='imposeC'), -# SimpD = SIMP(statut ="o",typ='R', defaut = 2, nomXML='imposeD'), -# SimpE = SIMP(statut ="o",typ='R', defaut = 2, nomXML='imposeE'), -# ), -#) diff --git a/Tests/MappingAccasXsd/Ambiguite/cata_FusionCompliqueeDeFact.py b/Tests/MappingAccasXsd/Ambiguite/cata_FusionCompliqueeDeFact.py deleted file mode 100644 index 6c378964..00000000 --- a/Tests/MappingAccasXsd/Ambiguite/cata_FusionCompliqueeDeFact.py +++ /dev/null @@ -1,63 +0,0 @@ -# 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, re -import Accas -from Accas import * -monFichier=os.path.abspath(__file__) - -JdC = JDC_CATA ( - code = 'Essai', - ) - -VERSION_CATALOGUE='V_0' -LeProc = PROC( nom = 'LeProc', - SimpA = SIMP(statut ="o",typ='R', defaut = 2, ), - B1=BLOC( condition = 'SimpA == 1', - F = FACT(statut='f', - S1B1 = SIMP(statut ="f",typ='R' ), - A1 = SIMP(statut ="f",typ='R' ), - S2B1 = SIMP(statut ="f",typ='R' ), - A2 = SIMP(statut ="f",typ='R' ), - S3B1 = SIMP(statut ="f",typ='R' ), - A3 = SIMP(statut ="f",typ='R' ), - ), - ), - B2=BLOC( condition = 'SimpA == 3', - F = FACT(statut='f', - S1B2 = SIMP(statut ="f",typ='R' ), - A1 = SIMP(statut ="f",typ='R' ), - A2 = SIMP(statut ="f",typ='R' ), - S2B2 = SIMP(statut ="f",typ='R' ), - A3 = SIMP(statut ="f",typ='R' ), - S3B2 = SIMP(statut ="f",typ='R' ), - ), - ), - B3=BLOC( condition = 'SimpA == 4', - F = FACT(statut='f', - A3 = SIMP(statut ="f",typ='R' ), - S1B3 = SIMP(statut ="f",typ='R'), - A2 = SIMP(statut ="f",typ='R' ), - S2B3 = SIMP(statut ="f",typ='R' ), - A1 = SIMP(statut ="f",typ='R' ), - S3B3 = SIMP(statut ="f",typ='R' ), - ), - ), -) - diff --git a/Tests/MappingAccasXsd/Ambiguite/cata_blocs_En_Cascade.py b/Tests/MappingAccasXsd/Ambiguite/cata_blocs_En_Cascade.py deleted file mode 100644 index 71a42030..00000000 --- a/Tests/MappingAccasXsd/Ambiguite/cata_blocs_En_Cascade.py +++ /dev/null @@ -1,136 +0,0 @@ -# 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, re -import Accas -from Accas import * -monFichier=os.path.abspath(__file__) - -JdC = JDC_CATA ( - code = 'Essai', - ) - -VERSION_CATALOGUE='V_0' -LeProc = PROC( nom = 'LeProc', - SystemeType = SIMP(statut ="o",typ='R', into = [1.0,2.0] ), - B1=BLOC( condition = 'SystemeType == 1.0', - #FactB1 = FACT (statut ='o', - identifier = SIMP(statut ="o",typ='R'), - ModelType = SIMP(statut ="o",typ='R' , into = [1.0,2.0]), - B11=BLOC ( condition = 'ModelType == 1', - #FactB11= FACT (statut='o', - Numerical=SIMP(statut ="o",typ='R' , into = [1.0,2.0], ), - B111 = BLOC ( condition = 'Numerical == 1.0', - Solver1=SIMP(statut ="o",typ='R' , into = [1.0,2.0], ), - ), - B112 = BLOC ( condition = 'Numerical == 2.0', - #Solver2=SIMP(statut ="o",typ='R' , into = [3.0,4.0], ) - Solver1=SIMP(statut ="o",typ='R' , into = [3.0,4.0], ) - ), - ), # fin B11 - B12=BLOC ( condition = 'ModelType == 2.0', - #FactB12= FACT (statut='o', - #Numerical2=SIMP(statut ="o",typ='R' , into = [1.0,2.0],), - Numerical=SIMP(statut ="o",typ='R' , into = [1.0,2.0],), - B121 = BLOC ( condition = 'Numerical == 1.0', - Solver=SIMP(statut ="o",typ='R' , into = [1.0,2.0], ), - ), - B122 = BLOC ( condition = 'Numerical == 2.0', - Solver=SIMP(statut ="o",typ='R' , into = [3.0,4.0], ), - ), - ), # fin B12 - #), # fin FactB1 - ), #fin B1 - B2=BLOC( condition = 'SystemeType == 2.0', - #FactB2 = FACT (statut ='o', - identifier = SIMP(statut ="o",typ='R'), - ModelType = SIMP(statut ="o",typ='R' , into = [1.0,2.0]), - B21=BLOC ( condition = 'ModelType == 1.0', - Numerical=SIMP(statut ="o",typ='R' , into = [1.0,2.0], ), - B211 = BLOC ( condition = 'Numerical == 1.0', - Solver=SIMP(statut ="o",typ='R' , into = [1.0,2.0], ), - ), - B212 = BLOC ( condition = 'Numerical == 2.0', - Solver=SIMP(statut ="o",typ='R' , into = [3.0,4.0], ), - ), - ), # fin B21 - B22=BLOC ( condition = 'ModelType == 2.0', - Numerical=SIMP(statut ="o",typ='R' , into = [1.0,2.0], ), - B221 = BLOC ( condition = 'Numerical == 1.0', - Solver=SIMP(statut ="o",typ='R' , into = [1.0,2.0], ), - ), - B222 = BLOC ( condition = 'Numerical == 2.0', - Solver=SIMP(statut ="o",typ='R' , into = [3.0,4.0], ), - ), - ), # fin B22 - #), # fin FactB2 - ), # fin B2 -) -#LeProc = PROC( nom = 'LeProc', -# SystemeType = SIMP(statut ="o",typ='R', into = [1,2] ), -# B1=BLOC( condition = 'SystemeType == 1', -# FactB1 = FACT (statut ='o', -# identifier = SIMP(statut ="o",typ='R'), -# ModelType = SIMP(statut ="o",typ='R' , into = [1,2]), -# B11=BLOC ( condition = 'ModelType == 1', -# Numerical=SIMP(statut ="o",typ='R' , into = [1,2], ), -# B111 = BLOC ( condition = 'Numerical == 1', -# Solver=SIMP(statut ="o",typ='R' , into = [1,2], ), -# ), -# B112 = BLOC ( condition = 'Numerical == 2', -# Solver=SIMP(statut ="o",typ='R' , into = [3,4], ) -# ), -# ), # fin B11 -# B12=BLOC ( condition = 'ModelType == 2', -# Numerical=SIMP(statut ="o",typ='R' , into = [1,2],), -# B121 = BLOC ( condition = 'Numerical == 1', -# Solver=SIMP(statut ="o",typ='R' , into = [1,2], ), -# ), -# B122 = BLOC ( condition = 'Numerical == 2', -# Solver=SIMP(statut ="o",typ='R' , into = [3,4], ), -# ), -# ), # fin B12 -# ), # fin FactB1 -# ), #fin B1 -# B2=BLOC( condition = 'SystemeType == 2', -# FactB2 = FACT (statut ='o', -# identifier = SIMP(statut ="o",typ='R'), -# ModelType = SIMP(statut ="o",typ='R' , into = [1,2]), -# B21=BLOC ( condition = 'ModelType == 1', -# Numerical=SIMP(statut ="o",typ='R' , into = [1,2], ), -# B211 = BLOC ( condition = 'Numerical == 1', -# Solver=SIMP(statut ="o",typ='R' , into = [1,2], ), -# ), -# B212 = BLOC ( condition = 'Numerical == 2', -# Solver=SIMP(statut ="o",typ='R' , into = [3,4], ), -# ), -# ), # fin B21 -# B22=BLOC ( condition = 'ModelType == 2', -# Numerical=SIMP(statut ="o",typ='R' , into = [1,2], ), -# B221 = BLOC ( condition = 'Numerical == 1', -# Solver=SIMP(statut ="o",typ='R' , into = [1,2], ), -# ), -# B222 = BLOC ( condition = 'Numerical == 2', -# Solver=SIMP(statut ="o",typ='R' , into = [3,4], ), -# ), -# ), # fin B22 -# ), # fin FactB2 -# ), # fin B2 -#) -# diff --git a/Tests/MappingAccasXsd/GNUmakefile b/Tests/MappingAccasXsd/GNUmakefile deleted file mode 100644 index 340aa09b..00000000 --- a/Tests/MappingAccasXsd/GNUmakefile +++ /dev/null @@ -1,116 +0,0 @@ -.SUFFIXES: .xsd .py _driver.py .comm .xml -.PHONY: xsdAll driverAll -SHELL=bash - -# PN : -# PYXB=/local/PyXB-1.2.6/scripts/pyxbgen -# PYXB_PYTHONPATH=/local/PyXB-1.2.6.bin/lib/python2.7/site-packages/ - -ifdef EFICAS4VIMMP_ROOT -srcdir?=${EFICAS4VIMMP_ROOT} -else -srcdir?=../.. -endif - -confdir?=$(srcdir)/config -tooldir=$(srcdir)/Tools - -# Règle en tête de Makefile -all: driverAll - -######### ENVIRONEMENT DE CONSTRUCTION VIMMP Traning / Local ############ - -ifeq ($(findstring vimmp,$dir($(realpath GNUmakefile))),vimmp) -include $(confdir)/GNUmakefile.mdm -include $(confdir)/GNUmakefile.env -else -include $(confdir)/GNUmakefile.env -endif - -PYXB ?=pyxbgen - -################# REGLES DE CONSTRUCTION ######################## - -define cata_dependencies = -#cata_1$1 : cata_depend$1 -endef - -#Définition des dépendances pour le modèle .py -$(eval $(call cata_dependencies,.py)) -#Définition des dépendances pour le modèle .xsd -$(eval $(call cata_dependencies,.xsd)) - -# $(subst .py,.xsd,cata_dependencies) - -cata_files= cata_1.py cata_UserAssd.py cata_ASSD.py cata_MemesNoms.py - -xsd_files = $(cata_files:%.py=%.xsd) -driver_files= $(cata_files:%.py=%_driver.py) - -xsdAll: $(xsd_files) -driverAll: exec.sh environ.sh qtEficas.sh $(driver_files) -# qtEficasSlm.sh - - -# Exemple PyxB : $(PYXB) -m $(basename $@) -u $< --location-prefix-rewrite http://chercheurs.edf.com/logiciels/vimmp= --write-for-customization \ -# L'utilisation de $? ne fonctionne pas si l'on ne modifie qu'un seul catalogue car il liste uniquement les fichiers modifiés et pyxb détecte -# que l'autre fichier en dépend et qu'il n'a pas été regénéré en même temps: $^ -.py.xsd: - $(tooldir)/generateXSD.py -c $(realpath $<) - -.xsd_driver.py: - $(PYXB) -m $(basename $@) -u $^ --write-for-customization - xmllint --path $(confdir) --schema XMLSchema11_local.xsd --noout $^ - -#Les Tools eficas ont besoins d'un chemin absolu -#ATTENTION : La .sufix rule n'autorise pas les dépendances après le : (sinon la ligne entière est un nom de fichier bizzare) -#_test_driver_$1.comm_test_driver_$1.xml: -# il faut les définir à part -define test_xml_rule = -%_test_driver_$1.xml : %_test_driver_$1.comm $$(realpath $$(*).py) - @echo -e "\n\n------ Generate xml test file $$(@) ------\n" - @[[ -f $$(*).py ]] || (echo "Le fichier catalogue $$(*).py est introuvable" && false) - $(tooldir)/generateXML.py -c $$(realpath $$(*).py) $$< -endef - - -#ATTENTION : La .sufix rule n'autorise pas les dépendances après le : (sinon la ligne entière est un nom de fichier bizzare) -#_test_driver_$1.comm_test_driver_$1.py: -# il faut les définir à part -define test_driver_rule = -%_test_driver_$1.py : %_test_driver_$1.comm - @echo -e "\n\n------ Generate xml test driver $$(@) ------\n" - sed -e "s,@module@,$$(*)_driver,g" -e "s,@file@,$$(<:%.comm=%.xml),g" $$(confdir)/test_driver_subst.py > $$(@) && \ - chmod +x $$(<:%.comm=%.py); -endef - -#Définition des règles de construction pour les tests -#$(eval $(call test_driver_rule,0)) -#$(eval $(call test_driver_rule,1)) -$(foreach it,0 1 2 3 4 5 6 7 8 9, $(eval $(call test_xml_rule,$(it))) ) -$(foreach it,0 1 2 3 4 5 6 7 8 9, $(eval $(call test_driver_rule,$(it))) ) - -test_driver_xml:= $(patsubst %.comm,%.xml,$(wildcard *_test_driver_?.comm)) -test_driver_py:= $(patsubst %.comm,%.py,$(wildcard *_test_driver_?.comm)) - -# xml: -# @echo "Reminder: a .comm file is needed for this step" -# ../tools/generateXML.py -c cata_1.py cata_1_test_1.comm - -check test: testAll - -################# REGLES DE TESTS ######################## - -testAll: exec.sh driverAll $(test_driver_py) $(test_driver_xml) - echo $(test_driver_xml) - echo $(test_driver_py) - for i in `ls *_test_driver*.py` ; do echo -e "\n\n------ Launching $$i ------" && ./exec.sh python $$i ; done -# for i in `ls *_test_driver*.py` ; do echo -e "\n\n------ Launching $$i ------" && ./exec.sh python $$i || break ; done - -################# REGLES DE NETTOYAGE ######################## - -clean: - rm -f *.pyc *~ qtEficasSlm.sh exec.sh environ.sh - rm -rf raw binding.py __pycache__ - rm -f $(xsd_files) $(driver_files) *test_driver_?.py *test_driver_?.xml - diff --git a/Tests/MappingAccasXsd/Matrix/Matrix.xsd b/Tests/MappingAccasXsd/Matrix/Matrix.xsd deleted file mode 100644 index e1223d62..00000000 --- a/Tests/MappingAccasXsd/Matrix/Matrix.xsd +++ /dev/null @@ -1,52 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/Tests/MappingAccasXsd/Matrix/Matrix_V0.xsd b/Tests/MappingAccasXsd/Matrix/Matrix_V0.xsd deleted file mode 100644 index 374bbdac..00000000 --- a/Tests/MappingAccasXsd/Matrix/Matrix_V0.xsd +++ /dev/null @@ -1,45 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/Tests/MappingAccasXsd/Matrix/matrix_1.xml b/Tests/MappingAccasXsd/Matrix/matrix_1.xml deleted file mode 100644 index 84e637c5..00000000 --- a/Tests/MappingAccasXsd/Matrix/matrix_1.xml +++ /dev/null @@ -1,9 +0,0 @@ - - - - - 0 1 2 3 - 4 5 6 7 - 8 9 10 11 - - diff --git a/Tests/MappingAccasXsd/Matrix/matrix_V0.xml b/Tests/MappingAccasXsd/Matrix/matrix_V0.xml deleted file mode 100644 index 2977f220..00000000 --- a/Tests/MappingAccasXsd/Matrix/matrix_V0.xml +++ /dev/null @@ -1,11 +0,0 @@ - - - - - - 0 1 2 3 - 4 5 6 7 - 8 9 10 12 - - - diff --git a/Tests/MappingAccasXsd/Matrix/readExemple.py b/Tests/MappingAccasXsd/Matrix/readExemple.py deleted file mode 100644 index 7d72eee8..00000000 --- a/Tests/MappingAccasXsd/Matrix/readExemple.py +++ /dev/null @@ -1,14 +0,0 @@ -from Matrix_manualdriver import * - -pyxb.GlobalValidationConfig._setContentInfluencesGeneration(pyxb.GlobalValidationConfig.ALWAYS) -pyxb.GlobalValidationConfig._setInvalidElementInContent(pyxb.GlobalValidationConfig.RAISE_EXCEPTION) -pyxb.GlobalValidationConfig._setOrphanElementInContent(pyxb.GlobalValidationConfig.RAISE_EXCEPTION) - - -jdd = CreateFromDocument(open('matrix_1.xml').read()) -print (jdd.toDOM().toprettyxml()) -c1=jdd.step_Vimmp[0] -c1.simp5 -c1.simp5.line[0] -c1.simp5.line[0][2] - diff --git a/Tests/MappingAccasXsd/Matrix/readExemple_V0.py b/Tests/MappingAccasXsd/Matrix/readExemple_V0.py deleted file mode 100644 index 00713593..00000000 --- a/Tests/MappingAccasXsd/Matrix/readExemple_V0.py +++ /dev/null @@ -1,14 +0,0 @@ -from Matrix_manualdriver import * - -pyxb.GlobalValidationConfig._setContentInfluencesGeneration(pyxb.GlobalValidationConfig.ALWAYS) -pyxb.GlobalValidationConfig._setInvalidElementInContent(pyxb.GlobalValidationConfig.RAISE_EXCEPTION) -pyxb.GlobalValidationConfig._setOrphanElementInContent(pyxb.GlobalValidationConfig.RAISE_EXCEPTION) - - -jdd = CreateFromDocument(open('matrix_V0.xml').read()) -print (jdd.toDOM().toprettyxml()) -c1=jdd.step_Vimmp[0] -c1.simp5 -c1.simp5.line[0] -c1.simp5.line[0][2] - diff --git a/Tests/MappingAccasXsd/Matrix/spec_1.xml b/Tests/MappingAccasXsd/Matrix/spec_1.xml deleted file mode 100644 index e0d4875c..00000000 --- a/Tests/MappingAccasXsd/Matrix/spec_1.xml +++ /dev/null @@ -1,38 +0,0 @@ - - - - - - - Ma chaine unique - - - -Ma_chaine_n°0 Ma_chaine_n°1 Ma_chaine_n°2 - - - - Ma chaine n°0 - Ma chaine n°1 - Ma chaine n°2 - - - - - 3 cm 4 m - 1 cm 5 m - 2 cm 6 m - 3 cm 7 m - - - - - - 1 2 3 4 - 5 6 7 8 - 9 10 11 12 - - - - - diff --git a/Tests/MappingAccasXsd/MultipleCata/CHOOSE_ROOT/.cata_CFDCommun_genere.xsd.swp b/Tests/MappingAccasXsd/MultipleCata/CHOOSE_ROOT/.cata_CFDCommun_genere.xsd.swp deleted file mode 100644 index 792dbe04..00000000 Binary files a/Tests/MappingAccasXsd/MultipleCata/CHOOSE_ROOT/.cata_CFDCommun_genere.xsd.swp and /dev/null differ diff --git a/Tests/MappingAccasXsd/MultipleCata/CHOOSE_ROOT/CFDCommun_CFD1.xml b/Tests/MappingAccasXsd/MultipleCata/CHOOSE_ROOT/CFDCommun_CFD1.xml deleted file mode 100644 index 888fe164..00000000 --- a/Tests/MappingAccasXsd/MultipleCata/CHOOSE_ROOT/CFDCommun_CFD1.xml +++ /dev/null @@ -1,30 +0,0 @@ - - - - - - - - - - 91 - - - 92 - - - - 91 - - - 92 - - - 91 - - - 92 - - - - diff --git a/Tests/MappingAccasXsd/MultipleCata/CHOOSE_ROOT/CFDCommun_CFD18_v0.xml b/Tests/MappingAccasXsd/MultipleCata/CHOOSE_ROOT/CFDCommun_CFD18_v0.xml deleted file mode 100644 index 888fe164..00000000 --- a/Tests/MappingAccasXsd/MultipleCata/CHOOSE_ROOT/CFDCommun_CFD18_v0.xml +++ /dev/null @@ -1,30 +0,0 @@ - - - - - - - - - - 91 - - - 92 - - - - 91 - - - 92 - - - 91 - - - 92 - - - - diff --git a/Tests/MappingAccasXsd/MultipleCata/CHOOSE_ROOT/cata_CFD1_genere.xsd b/Tests/MappingAccasXsd/MultipleCata/CHOOSE_ROOT/cata_CFD1_genere.xsd deleted file mode 100644 index 5b693c39..00000000 --- a/Tests/MappingAccasXsd/MultipleCata/CHOOSE_ROOT/cata_CFD1_genere.xsd +++ /dev/null @@ -1,62 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/Tests/MappingAccasXsd/MultipleCata/CHOOSE_ROOT/cata_CFDCommun_genere.xsd b/Tests/MappingAccasXsd/MultipleCata/CHOOSE_ROOT/cata_CFDCommun_genere.xsd deleted file mode 100644 index f0f737e6..00000000 --- a/Tests/MappingAccasXsd/MultipleCata/CHOOSE_ROOT/cata_CFDCommun_genere.xsd +++ /dev/null @@ -1,45 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/Tests/MappingAccasXsd/MultipleCata/CHOOSE_ROOT_WITH_HERITAGE/CFDCommun_CFD1.xml b/Tests/MappingAccasXsd/MultipleCata/CHOOSE_ROOT_WITH_HERITAGE/CFDCommun_CFD1.xml deleted file mode 100644 index 888fe164..00000000 --- a/Tests/MappingAccasXsd/MultipleCata/CHOOSE_ROOT_WITH_HERITAGE/CFDCommun_CFD1.xml +++ /dev/null @@ -1,30 +0,0 @@ - - - - - - - - - - 91 - - - 92 - - - - 91 - - - 92 - - - 91 - - - 92 - - - - diff --git a/Tests/MappingAccasXsd/MultipleCata/CHOOSE_ROOT_WITH_HERITAGE/SansTitre20.xml b/Tests/MappingAccasXsd/MultipleCata/CHOOSE_ROOT_WITH_HERITAGE/SansTitre20.xml deleted file mode 100644 index eaa468d8..00000000 --- a/Tests/MappingAccasXsd/MultipleCata/CHOOSE_ROOT_WITH_HERITAGE/SansTitre20.xml +++ /dev/null @@ -1,19 +0,0 @@ - - - - - 92 - - - 91 - - - 92 - - - 91 - - - 92 - - diff --git a/Tests/MappingAccasXsd/MultipleCata/CHOOSE_ROOT_WITH_HERITAGE/cata_CFD1_genere.xsd b/Tests/MappingAccasXsd/MultipleCata/CHOOSE_ROOT_WITH_HERITAGE/cata_CFD1_genere.xsd deleted file mode 100644 index 4462c33d..00000000 --- a/Tests/MappingAccasXsd/MultipleCata/CHOOSE_ROOT_WITH_HERITAGE/cata_CFD1_genere.xsd +++ /dev/null @@ -1,62 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/Tests/MappingAccasXsd/MultipleCata/CHOOSE_ROOT_WITH_HERITAGE/cata_CFDCommun_genere.xsd b/Tests/MappingAccasXsd/MultipleCata/CHOOSE_ROOT_WITH_HERITAGE/cata_CFDCommun_genere.xsd deleted file mode 100644 index f0f737e6..00000000 --- a/Tests/MappingAccasXsd/MultipleCata/CHOOSE_ROOT_WITH_HERITAGE/cata_CFDCommun_genere.xsd +++ /dev/null @@ -1,45 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/Tests/MappingAccasXsd/MultipleCata/CHOOSE_ROOT_WITH_HERITAGE_UNTIL_EXTENSION_LIMITS/cata_CFD1_genere.xsd b/Tests/MappingAccasXsd/MultipleCata/CHOOSE_ROOT_WITH_HERITAGE_UNTIL_EXTENSION_LIMITS/cata_CFD1_genere.xsd deleted file mode 100644 index 2799bf0a..00000000 --- a/Tests/MappingAccasXsd/MultipleCata/CHOOSE_ROOT_WITH_HERITAGE_UNTIL_EXTENSION_LIMITS/cata_CFD1_genere.xsd +++ /dev/null @@ -1,39 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/Tests/MappingAccasXsd/MultipleCata/CHOOSE_ROOT_WITH_HERITAGE_UNTIL_EXTENSION_LIMITS/cata_CFDCommun_genere.xsd b/Tests/MappingAccasXsd/MultipleCata/CHOOSE_ROOT_WITH_HERITAGE_UNTIL_EXTENSION_LIMITS/cata_CFDCommun_genere.xsd deleted file mode 100644 index bf052e43..00000000 --- a/Tests/MappingAccasXsd/MultipleCata/CHOOSE_ROOT_WITH_HERITAGE_UNTIL_EXTENSION_LIMITS/cata_CFDCommun_genere.xsd +++ /dev/null @@ -1,58 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/Tests/MappingAccasXsd/MultipleCata/CHOOSE_ROOT_WITH_HERITAGE_UNTIL_EXTENSION_LIMITS/cata_MD1_genere.xsd b/Tests/MappingAccasXsd/MultipleCata/CHOOSE_ROOT_WITH_HERITAGE_UNTIL_EXTENSION_LIMITS/cata_MD1_genere.xsd deleted file mode 100644 index 076bf377..00000000 --- a/Tests/MappingAccasXsd/MultipleCata/CHOOSE_ROOT_WITH_HERITAGE_UNTIL_EXTENSION_LIMITS/cata_MD1_genere.xsd +++ /dev/null @@ -1,34 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/Tests/MappingAccasXsd/MultipleCata/CHOOSE_ROOT_WITH_HERITAGE_UNTIL_EXTENSION_LIMITS/cata_MDCommun_genere.xsd b/Tests/MappingAccasXsd/MultipleCata/CHOOSE_ROOT_WITH_HERITAGE_UNTIL_EXTENSION_LIMITS/cata_MDCommun_genere.xsd deleted file mode 100644 index 0c720349..00000000 --- a/Tests/MappingAccasXsd/MultipleCata/CHOOSE_ROOT_WITH_HERITAGE_UNTIL_EXTENSION_LIMITS/cata_MDCommun_genere.xsd +++ /dev/null @@ -1,62 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/Tests/MappingAccasXsd/MultipleCata/CHOOSE_ROOT_WITH_HERITAGE_UNTIL_EXTENSION_LIMITS/cata_modeleCommun_genere.xsd b/Tests/MappingAccasXsd/MultipleCata/CHOOSE_ROOT_WITH_HERITAGE_UNTIL_EXTENSION_LIMITS/cata_modeleCommun_genere.xsd deleted file mode 100644 index 92c29521..00000000 --- a/Tests/MappingAccasXsd/MultipleCata/CHOOSE_ROOT_WITH_HERITAGE_UNTIL_EXTENSION_LIMITS/cata_modeleCommun_genere.xsd +++ /dev/null @@ -1,53 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/Tests/MappingAccasXsd/MultipleCata/CHOOSE_ROOT_WITH_HERITAGE_UNTIL_EXTENSION_LIMITS/cfd1.xml b/Tests/MappingAccasXsd/MultipleCata/CHOOSE_ROOT_WITH_HERITAGE_UNTIL_EXTENSION_LIMITS/cfd1.xml deleted file mode 100644 index 9c0ea45b..00000000 --- a/Tests/MappingAccasXsd/MultipleCata/CHOOSE_ROOT_WITH_HERITAGE_UNTIL_EXTENSION_LIMITS/cfd1.xml +++ /dev/null @@ -1,31 +0,0 @@ - - - - - 91 - - - 92 - - - - 91 - - - 92 - - - - 91 - - - 92 - - - - 91 - - - 92 - - diff --git a/Tests/MappingAccasXsd/MultipleCata/CHOOSE_ROOT_WITH_HERITAGE_WHAT_TODO/cata_CFD1_genere.xsd b/Tests/MappingAccasXsd/MultipleCata/CHOOSE_ROOT_WITH_HERITAGE_WHAT_TODO/cata_CFD1_genere.xsd deleted file mode 100644 index 1956c990..00000000 --- a/Tests/MappingAccasXsd/MultipleCata/CHOOSE_ROOT_WITH_HERITAGE_WHAT_TODO/cata_CFD1_genere.xsd +++ /dev/null @@ -1,54 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/Tests/MappingAccasXsd/MultipleCata/CHOOSE_ROOT_WITH_HERITAGE_WHAT_TODO/cata_CFDCommun_genere.xsd b/Tests/MappingAccasXsd/MultipleCata/CHOOSE_ROOT_WITH_HERITAGE_WHAT_TODO/cata_CFDCommun_genere.xsd deleted file mode 100644 index 5fce7606..00000000 --- a/Tests/MappingAccasXsd/MultipleCata/CHOOSE_ROOT_WITH_HERITAGE_WHAT_TODO/cata_CFDCommun_genere.xsd +++ /dev/null @@ -1,46 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/Tests/MappingAccasXsd/MultipleCata/CHOOSE_ROOT_WITH_HERITAGE_WHAT_TODO/cata_MD1_genere.xsd b/Tests/MappingAccasXsd/MultipleCata/CHOOSE_ROOT_WITH_HERITAGE_WHAT_TODO/cata_MD1_genere.xsd deleted file mode 100644 index 929d5a47..00000000 --- a/Tests/MappingAccasXsd/MultipleCata/CHOOSE_ROOT_WITH_HERITAGE_WHAT_TODO/cata_MD1_genere.xsd +++ /dev/null @@ -1,55 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/Tests/MappingAccasXsd/MultipleCata/CHOOSE_ROOT_WITH_HERITAGE_WHAT_TODO/cata_MDCommun_genere.xsd b/Tests/MappingAccasXsd/MultipleCata/CHOOSE_ROOT_WITH_HERITAGE_WHAT_TODO/cata_MDCommun_genere.xsd deleted file mode 100644 index af82e7c6..00000000 --- a/Tests/MappingAccasXsd/MultipleCata/CHOOSE_ROOT_WITH_HERITAGE_WHAT_TODO/cata_MDCommun_genere.xsd +++ /dev/null @@ -1,50 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/Tests/MappingAccasXsd/MultipleCata/CHOOSE_ROOT_WITH_HERITAGE_WHAT_TODO/cata_modeleCommun_genere.xsd b/Tests/MappingAccasXsd/MultipleCata/CHOOSE_ROOT_WITH_HERITAGE_WHAT_TODO/cata_modeleCommun_genere.xsd deleted file mode 100644 index e9337ede..00000000 --- a/Tests/MappingAccasXsd/MultipleCata/CHOOSE_ROOT_WITH_HERITAGE_WHAT_TODO/cata_modeleCommun_genere.xsd +++ /dev/null @@ -1,43 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/Tests/MappingAccasXsd/MultipleCata/CHOOSE_ROOT_WITH_HERITAGE_WHAT_TODO/cfd1.xml b/Tests/MappingAccasXsd/MultipleCata/CHOOSE_ROOT_WITH_HERITAGE_WHAT_TODO/cfd1.xml deleted file mode 100644 index 71809329..00000000 --- a/Tests/MappingAccasXsd/MultipleCata/CHOOSE_ROOT_WITH_HERITAGE_WHAT_TODO/cfd1.xml +++ /dev/null @@ -1,21 +0,0 @@ - - - - - - - 91 - - - 92 - - - - - 91 - - - 92 - - - diff --git a/Tests/MappingAccasXsd/MultipleCata/GNUmakefile b/Tests/MappingAccasXsd/MultipleCata/GNUmakefile deleted file mode 100644 index 05ffcc5f..00000000 --- a/Tests/MappingAccasXsd/MultipleCata/GNUmakefile +++ /dev/null @@ -1,125 +0,0 @@ -.SUFFIXES: .xsd .py _driver.py .comm .xml -.PHONY: xsdAll driverAll -SHELL=bash - -# PN : -# PYXB=/local/PyXB-1.2.6/scripts/pyxbgen -# PYXB_PYTHONPATH=/local/PyXB-1.2.6.bin/lib/python2.7/site-packages/ - -ifdef EFICAS4VIMMP_ROOT -srcdir?=${EFICAS4VIMMP_ROOT} -else -srcdir?=../../.. -endif - -confdir?=$(srcdir)/config -tooldir=$(srcdir)/Tools - -# Règle en tête de Makefile -all: driverAll - -######### ENVIRONEMENT DE CONSTRUCTION VIMMP Traning / Local ############ - -ifeq ($(findstring vimmp,$dir($(realpath GNUmakefile))),vimmp) -include $(confdir)/GNUmakefile.mdm -include $(confdir)/GNUmakefile.env -else -include $(confdir)/GNUmakefile.env -endif - -PYXB ?=pyxbgen - -################# REGLES DE CONSTRUCTION ######################## - -define cata_dependencies = -cata_CFD1$1 : cata_CFDCommun$1 -cata_MD1$1 : cata_MDCommun$1 cata_modeleCommun$1 -cata_CFDCommun$1 : cata_modeleCommun$1 -cata_MDCommun$1 : cata_modeleCommun$1 -endef - -#Définition des dépendances le modèle .py -$(eval $(call cata_dependencies,.py)) -#Définition des dépendances le modèle .xsd -$(eval $(call cata_dependencies,.xsd)) - -# $(subst .py,.xsd,cata_dependencies) - -cata_files= cata_CFD1.py\ - cata_CFD2.py\ - cata_CFDCommun.py\ - cata_MD1.py\ - cata_MD2.py\ - cata_MDCommun.py\ - cata_modeleCommun.py - -xsd_files = $(cata_files:%.py=%.xsd) -driver_files= $(cata_files:%.py=%_driver.py) - -xsdAll: $(xsd_files) -driverAll: exec.sh environ.sh qtEficas.sh $(driver_files) -# qtEficasSlm.sh - - -# Exemple PyxB : $(PYXB) -m $(basename $@) -u $< --location-prefix-rewrite http://chercheurs.edf.com/logiciels/vimmp= --write-for-customization \ -# L'utilisation de $? ne fonctionne pas si l'on ne modifie qu'un seul catalogue car il liste uniquement les fichiers modifiés et pyxb détecte -# que l'autre fichier en dépend et qu'il n'a pas été regénéré en même temps: $^ -.py.xsd: - $(tooldir)/generateXSD.py -c $(realpath $<) - -.xsd_driver.py: - $(PYXB) -m $(basename $@) -u $^ --write-for-customization - xmllint --path $(confdir) --schema XMLSchema11_local.xsd --noout $^ - -#Les Tools eficas ont besoins d'un chemin absolu -#ATTENTION : La .sufix rule n'autorise pas les dépendances après le : (sinon la ligne entière est un nom de fichier bizzare) -#_test_driver_$1.comm_test_driver_$1.xml: -# il faut les définir à part -define test_xml_rule = -%_test_driver_$1.xml : %_test_driver_$1.comm $$(realpath $$(*).py) - @echo -e "\n\n------ Generate xml test file $$(@) ------\n" - @[[ -f $$(*).py ]] || (echo "Le fichier catalogue $$(*).py est introuvable" && false) - $(tooldir)/generateXML.py -c $$(realpath $$(*).py) $$< -endef - - -#ATTENTION : La .sufix rule n'autorise pas les dépendances après le : (sinon la ligne entière est un nom de fichier bizzare) -#_test_driver_$1.comm_test_driver_$1.py: -# il faut les définir à part -define test_driver_rule = -%_test_driver_$1.py : %_test_driver_$1.comm - @echo -e "\n\n------ Generate xml test driver $$(@) ------\n" - sed -e "s,@module@,$$(*)_driver,g" -e "s,@file@,$$(<:%.comm=%.xml),g" $$(confdir)/test_driver_subst.py > $$(@) && \ - chmod +x $$(<:%.comm=%.py); -endef - -#Définition des règles de construction pour les tests -#$(eval $(call test_driver_rule,0)) -#$(eval $(call test_driver_rule,1)) -$(foreach it,0 1 2 3 4 5 6 7 8 9, $(eval $(call test_xml_rule,$(it))) ) -$(foreach it,0 1 2 3 4 5 6 7 8 9, $(eval $(call test_driver_rule,$(it))) ) - -test_driver_xml:= $(patsubst %.comm,%.xml,$(wildcard *_test_driver_?.comm)) -test_driver_py:= $(patsubst %.comm,%.py,$(wildcard *_test_driver_?.comm)) - -# xml: -# @echo "Reminder: a .comm file is needed for this step" -# ../tools/generateXML.py -c cata_1.py cata_1_test_1.comm - -check test: testAll - -################# REGLES DE TESTS ######################## - -testAll: exec.sh driverAll $(test_driver_py) $(test_driver_xml) - echo $(test_driver_xml) - echo $(test_driver_py) - for i in `ls *_test_driver*.py` ; do echo -e "\n\n------ Launching $$i ------" && ./exec.sh python $$i ; done -# for i in `ls *_test_driver*.py` ; do echo -e "\n\n------ Launching $$i ------" && ./exec.sh python $$i || break ; done - -################# REGLES DE NETTOYAGE ######################## - -clean: - rm -f *.pyc *~ qtEficasSlm.sh exec.sh environ.sh - rm -rf raw binding.py __pycache__ - rm -f $(xsd_files) $(driver_files) *test_driver_?.py *test_driver_?.xml - diff --git a/Tests/MappingAccasXsd/MultipleCata/XSD_REF/GNUmakefile b/Tests/MappingAccasXsd/MultipleCata/XSD_REF/GNUmakefile deleted file mode 100755 index db1f8868..00000000 --- a/Tests/MappingAccasXsd/MultipleCata/XSD_REF/GNUmakefile +++ /dev/null @@ -1,133 +0,0 @@ -.SUFFIXES: .xsd .py _driver.py .comm .xml -.PHONY: xsdAll driverAll -SHELL=bash - -# PN : -# PYXB=/local/PyXB-1.2.6/scripts/pyxbgen -# PYXB_PYTHONPATH=/local/PyXB-1.2.6.bin/lib/python2.7/site-packages/ - -ifdef EFICAS4VIMMP_ROOT -srcdir?=${EFICAS4VIMMP_ROOT} -else -srcdir?=../../../.. -endif - -confdir?=$(srcdir)/config -tooldir=$(srcdir)/Tools - -# Règle en tête de Makefile -all: driverAll - -############# ENVIRONEMENT DE CONSTRUCTION VIMMP Traning ################ - -ifeq ($(findstring vimmp,$dir($(realpath GNUmakefile))),vimmp) -include $(confdir)/GNUmakefile.mdm -include $(confdir)/GNUmakefile.env -else -include $(confdir)/GNUmakefile.env -endif - -PYXB ?=pyxbgen - -################# REGLES DE CONSTRUCTION ######################## - -# Ds XSD_REF les cata ne sont pas utilisés -# cata_CFD1.py : cata_CFDCommun.py -# cata_MD1.py : cata_MDCommun.py cata_modeleCommun.py -# cata_CFDCommun.py : cata_modeleCommun.py -# cata_MDCommun.py : cata_modeleCommun.py - -cata_files= cata_CFD1.py\ - cata_CFD2.py\ - cata_CFDCommun.py\ - cata_MD1.py\ - cata_MD2.py\ - cata_MDCommun.py\ - cata_modeleCommun.py - -xsd_files = $(cata_files:%.py=%.xsd) -driver_files= $(cata_files:%.py=%_driver.py) - -xsdAll: $(xsd_files) -driverAll: exec.sh environ.sh $(driver_files) - - -#$(PYXB) -m $(basename $@) -u $< --location-prefix-rewrite http://chercheurs.edf.com/logiciels/vimmp= --write-for-customization \ -# L'utilisation de $? ne fonctionne pas si l'on ne modifie qu'un seul catalogue car il liste uniquement les fichiers modifiés et pyxb détecte -# que l'autre fichier en dépend et qu'il n'a pas été regénéré en même temps: $^ -.py.xsd: - $(tooldir)/generateXSD.py -c $(realpath $<) -# ./generateXSD.py -c ./$< - -# Ds XSD_REF les cata ne sont pas utilisés, il faut donc explicitement définir -# les dépendances pour les drivers : -cata_CFDCommun_driver.py : cata_CFDCommun.xsd cata_modeleCommun.xsd -cata_MDCommun_driver.py : cata_MDCommun.xsd cata_modeleCommun.xsd -cata_CFD1_driver.py : cata_CFD1.xsd cata_CFDCommun.xsd -cata_MD1_driver.py : cata_MD1.xsd cata_MDCommun.xsd cata_modeleCommun.xsd - -.xsd_driver.py: - $(PYXB) -m $(basename $@) -u $^ --write-for-customization - xmllint --path $(confdir) --schema XMLSchema11_local.xsd --noout $^ - -# cata_1_driver.py: cata_1.xsd -# $(PYXB) -m $(basename $@) -u $^ --write-for-customization -# xmllint --schema XMLSchema11_local.xsd --noout $^ - -# cata_blocs_En_Cascade_driver.py: cata_blocs_En_Cascade.xsd -# @echo "--- PYTHONHOME --- : $${PYTHONHOME}" -# @echo "--- PYTHONSTARTUP --- : $${PYTHONSTARTUP}" -# @echo "--- PYTHON_INCLUDE --- : $${PYTHON_INCLUDE}" -# @echo "--- PYTHON_ROOT_DIR --- : $${PYTHON_ROOT_DIR}" -# @echo "--- PYTHONPATH --- : $${PYTHONPATH}" -# @echo "--- PATH --- : $${PATH}" -# @echo "--- LD_LIBRARY_PATH --- : $${LD_LIBRARY_PATH}" -# @echo "--- PYXB_PYTHONPATH --- : $${PYXB_PYTHONPATH}" -# @echo "--- PYXB_PATH --- : $${PYXB_ROOT_DIR}/bin" -# @echo "--- QTDIR --- : $${QTDIR}" -# @echo "--- PATH --- : $${PATH}" -# @echo "--- QT_PLUGIN_PATH --- : $${QT_PLUGIN_PATH}" -# @echo "--- LD_LIBRARY_PATH --- : $${LD_LIBRARY_PATH}" -# @echo "--- QTVERSION --- : $${QTVERSION}" -# @echo "--- LRELEASE --- : $${LRELEASE}" -# @echo "--- QT_QPA_PLATFORM_PLUGIN_PATH --- : $${QT_QPA_PLATFORM_PLUGIN_PATH}" -# @echo "--- PYQT_ROOT_DIR --- : $${PYQT_ROOT_DIR}" -# @echo "--- PYQT_SIPS --- : $${PYQT_SIPS}" -# @echo "--- PYUIC --- : $${PYUIC}" -# @echo "--- PYTHONPATH --- : $${PYTHONPATH}" -# @echo "--- PATH --- : $${PATH}" -# $(PYXB) -m $(basename $@) -u $^ --write-for-customization -# xmllint --schema XMLSchema11_local.xsd --noout $^ - -#Les Tools ont besoins d'un chemin absolu -#Si un cata.py ou un .xsd est modifié, il faudrait refaire le générate. -.comm.xml: - $(tooldir)/generateXML.py -c $(realpath $(<:%.comm=%.py)) $< -# ./generateXML.py -c $(<:%.comm=%.py) $< - -# xml: -# @echo "Reminder: a .comm file is needed for this step" -# ../tools/generateXML.py -c cata_1.py cata_1_test_1.comm - -check test: testAll - -#Génération d'un .py de test par .xml de référence -#TODO : Améliorer la génération pour ne pas regénérer inutilement les drivers. -#TODO : Gestion ds un build séparé du srcdir -testGen: $(confdir)/test_driver_subst.py - for i in `ls *_test_driver_?.xml`; do sed -e "s,@module@,$${i/_test_driver_?.xml/}_driver,g" -e "s,@file@,$${i},g" $(confdir)/test_driver_subst.py > $${i/xml/py} && chmod +x $${i/xml/py}; done - -#Lancement de chaque test ds l'environement minimal -testAll: testGen exec.sh driverAll - for i in `ls *_test_driver*.py` ; do ./exec.sh python $$i ; done - -#multiple target avec règle non possible. -#Ecrire une génération avec un define -# $(wildcard *_test_driver_?.xml) : test_driver.py -# do sed -e "s,@module@,${@:%_test_driver=%_driver},g" -e 's,@file@,$@,g' test_driver.py > ${@:%.xml=%.py}; done - -clean: - rm -f *.pyc *~ exec.sh environ.sh - rm -rf raw binding.py __pycache__ - rm -f $(driver_files) *test_driver_?.py - diff --git a/Tests/MappingAccasXsd/MultipleCata/XSD_REF/cata_CFD1.xsd b/Tests/MappingAccasXsd/MultipleCata/XSD_REF/cata_CFD1.xsd deleted file mode 100644 index 9dfb2cfe..00000000 --- a/Tests/MappingAccasXsd/MultipleCata/XSD_REF/cata_CFD1.xsd +++ /dev/null @@ -1,51 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/Tests/MappingAccasXsd/MultipleCata/XSD_REF/cata_CFD1_test_driver_0.xml b/Tests/MappingAccasXsd/MultipleCata/XSD_REF/cata_CFD1_test_driver_0.xml deleted file mode 100644 index 3d22913e..00000000 --- a/Tests/MappingAccasXsd/MultipleCata/XSD_REF/cata_CFD1_test_driver_0.xml +++ /dev/null @@ -1,21 +0,0 @@ - - - - - - - 91 - - - 92 - - - - - 91 - - - 92 - - - diff --git a/Tests/MappingAccasXsd/MultipleCata/XSD_REF/cata_CFD1_test_driver_1.xml b/Tests/MappingAccasXsd/MultipleCata/XSD_REF/cata_CFD1_test_driver_1.xml deleted file mode 100644 index bcad28f8..00000000 --- a/Tests/MappingAccasXsd/MultipleCata/XSD_REF/cata_CFD1_test_driver_1.xml +++ /dev/null @@ -1,16 +0,0 @@ - - - - - 91 - - - 91 - - - 92 - - - 91 - - diff --git a/Tests/MappingAccasXsd/MultipleCata/XSD_REF/cata_CFD2.xsd b/Tests/MappingAccasXsd/MultipleCata/XSD_REF/cata_CFD2.xsd deleted file mode 100644 index 34b079ba..00000000 --- a/Tests/MappingAccasXsd/MultipleCata/XSD_REF/cata_CFD2.xsd +++ /dev/null @@ -1,52 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/Tests/MappingAccasXsd/MultipleCata/XSD_REF/cata_CFD2_test_driver_0.xml b/Tests/MappingAccasXsd/MultipleCata/XSD_REF/cata_CFD2_test_driver_0.xml deleted file mode 100644 index 1847a1f7..00000000 --- a/Tests/MappingAccasXsd/MultipleCata/XSD_REF/cata_CFD2_test_driver_0.xml +++ /dev/null @@ -1,13 +0,0 @@ - - - - - 92 - - - 91 - - - 91 - - diff --git a/Tests/MappingAccasXsd/MultipleCata/XSD_REF/cata_CFDCommun.xsd b/Tests/MappingAccasXsd/MultipleCata/XSD_REF/cata_CFDCommun.xsd deleted file mode 100644 index e93d2696..00000000 --- a/Tests/MappingAccasXsd/MultipleCata/XSD_REF/cata_CFDCommun.xsd +++ /dev/null @@ -1,40 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/Tests/MappingAccasXsd/MultipleCata/XSD_REF/cata_CFDCommun_test_driver_0.xml b/Tests/MappingAccasXsd/MultipleCata/XSD_REF/cata_CFDCommun_test_driver_0.xml deleted file mode 100644 index 517b8909..00000000 --- a/Tests/MappingAccasXsd/MultipleCata/XSD_REF/cata_CFDCommun_test_driver_0.xml +++ /dev/null @@ -1,16 +0,0 @@ - - - - - - 91 - - - - 91 - - - - 92 - - diff --git a/Tests/MappingAccasXsd/MultipleCata/XSD_REF/cata_MD1.xsd b/Tests/MappingAccasXsd/MultipleCata/XSD_REF/cata_MD1.xsd deleted file mode 100644 index 0ee73ca1..00000000 --- a/Tests/MappingAccasXsd/MultipleCata/XSD_REF/cata_MD1.xsd +++ /dev/null @@ -1,48 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/Tests/MappingAccasXsd/MultipleCata/XSD_REF/cata_MD1_test_driver_0.xml b/Tests/MappingAccasXsd/MultipleCata/XSD_REF/cata_MD1_test_driver_0.xml deleted file mode 100644 index 954f57a1..00000000 --- a/Tests/MappingAccasXsd/MultipleCata/XSD_REF/cata_MD1_test_driver_0.xml +++ /dev/null @@ -1,57 +0,0 @@ - - - - - - 1 - - - - 112 - - - - 1 - - - - 2 - - - - - - 111 - - - - 11 - - - - 12 - - - - 112 - - - - 111 - - - - - MyObj1DuModeleCommun_3 - - - - 12 - - - - - diff --git a/Tests/MappingAccasXsd/MultipleCata/XSD_REF/cata_MD2.xsd b/Tests/MappingAccasXsd/MultipleCata/XSD_REF/cata_MD2.xsd deleted file mode 100644 index a8524bff..00000000 --- a/Tests/MappingAccasXsd/MultipleCata/XSD_REF/cata_MD2.xsd +++ /dev/null @@ -1,51 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/Tests/MappingAccasXsd/MultipleCata/XSD_REF/cata_MD2_test_driver_0.xml b/Tests/MappingAccasXsd/MultipleCata/XSD_REF/cata_MD2_test_driver_0.xml deleted file mode 100644 index 4da968cd..00000000 --- a/Tests/MappingAccasXsd/MultipleCata/XSD_REF/cata_MD2_test_driver_0.xml +++ /dev/null @@ -1,19 +0,0 @@ - - - - - 112 - - - 111 - - - 112 - - - 111 - - - 111 - - diff --git a/Tests/MappingAccasXsd/MultipleCata/XSD_REF/cata_MDCommun.xsd b/Tests/MappingAccasXsd/MultipleCata/XSD_REF/cata_MDCommun.xsd deleted file mode 100644 index 0ad3c1cf..00000000 --- a/Tests/MappingAccasXsd/MultipleCata/XSD_REF/cata_MDCommun.xsd +++ /dev/null @@ -1,44 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/Tests/MappingAccasXsd/MultipleCata/XSD_REF/cata_MDCommun_test_driver_0.xml b/Tests/MappingAccasXsd/MultipleCata/XSD_REF/cata_MDCommun_test_driver_0.xml deleted file mode 100644 index 5227e779..00000000 --- a/Tests/MappingAccasXsd/MultipleCata/XSD_REF/cata_MDCommun_test_driver_0.xml +++ /dev/null @@ -1,33 +0,0 @@ - - - - - - 1 - - - - - - 12 - - - - 1 - - - - - MyObj1DuModeleCommun_2 - - - - 11 - - - - 1 - - - - diff --git a/Tests/MappingAccasXsd/MultipleCata/XSD_REF/cata_modeleCommun.xsd b/Tests/MappingAccasXsd/MultipleCata/XSD_REF/cata_modeleCommun.xsd deleted file mode 100644 index 17d2fcae..00000000 --- a/Tests/MappingAccasXsd/MultipleCata/XSD_REF/cata_modeleCommun.xsd +++ /dev/null @@ -1,60 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/Tests/MappingAccasXsd/MultipleCata/XSD_REF/cata_modeleCommun_test_driver_0.xml b/Tests/MappingAccasXsd/MultipleCata/XSD_REF/cata_modeleCommun_test_driver_0.xml deleted file mode 100644 index b44b26f0..00000000 --- a/Tests/MappingAccasXsd/MultipleCata/XSD_REF/cata_modeleCommun_test_driver_0.xml +++ /dev/null @@ -1,23 +0,0 @@ - - - - - - 2 - - - - - - 1 - - - - - MyObj1DuModeleCommun_1 - - - - 1 - - diff --git a/Tests/MappingAccasXsd/MultipleCata/XSD_REF_TEST_1/Makefile b/Tests/MappingAccasXsd/MultipleCata/XSD_REF_TEST_1/Makefile deleted file mode 100755 index 1eb08b82..00000000 --- a/Tests/MappingAccasXsd/MultipleCata/XSD_REF_TEST_1/Makefile +++ /dev/null @@ -1,180 +0,0 @@ -.SUFFIXES: .xsd .py _driver.py .comm .xml - -# PN : -# PYXB=/local/PyXB-1.2.6/scripts/pyxbgen -# PYXB_PYTHONPATH=/local/PyXB-1.2.6.bin/lib/python2.7/site-packages/ - -# EFICAS_ROOT_DIR -# EFICAS_TOOLS_DIR - -############# ENVIRONEMENT DE CONSTRUCTION VIMMP Traning ################ - -#ifeq ($(origin PRODUCTS_DIR), undefined) -# PRODUCTS_DIR=${HOME}/products -#endif -PRODUCTS_DIR ?=${HOME}/products -SALOME_ROOT_DIR ?=${HOME}/salome/Salome-V9_3_0-x86_64 -PREREQUISITES_ROOT_DIR ?=$(shell . ${SALOME_ROOT_DIR}/salome_prerequisites_root.sh; echo $${PREREQUISITES_ROOT_DIR}) -# PREREQUISITES_ROOT_DIR ?=${SALOME_ROOT_DIR}/prerequisites - -## PYTHON ET LE MODULE Six DE L'ENV SALOME: -# Le mécanisme suivant définit des export Gmake/env qui sont utilisés par les sous-shells de toutes les règles de construction du makefile. -# Le mécnisme jour sur le fait que export existe aussi bien en shell qu'en GMakefile -# On ne prend que les variables d'environement qui concernent python ds l'environement Salome.. -# En bash : saved_IFS=${IFS};IFS=',';for i in `grep 'PYTHONHOME' ${SALOME_ROOT_DIR}/salome_prerequisites.sh | tr -s '\n' ','`; do eval $i; done;IFS=${saved_IFS}; -# En GMake, la ligne suivante ne fonctionne pas car le résultat du shell est multi-lignes (malgré les ;) : $(eval $(shell grep 'PYTHONHOME' ${SALOME_ROOT_DIR}/salome_prerequisites.sh | tr -s '\n' ';')) -# En GMake, la ligne suivante ne fonctionne pas pour les variables de salome qui s'auto-référence : export PATH=${PYTHON_HOME}/bin:${PATH} -# $(foreach exp, $(shell grep 'PYTHONHOME' ${SALOME_ROOT_DIR}/salome_prerequisites.sh), $(eval $(exp)) ) -# Le script salome_prerequisites utilise parfois $PATH sans {} et utilise aussi des " -# Il faut donc substituer les = en := (simple expantion GMake), supprimer les " et ajouter les {} si necessaire -# Rem : Les retours charriots sont des blancs pour un GMakefile. -# $(foreach exp, $(subst ",,$(subst =,:=,$(shell grep -e 'PYTHONHOME' -e 'Six' ${SALOME_ROOT_DIR}/salome_prerequisites.sh))), $(info $(exp)) ) -$(foreach exp, $(subst ",,$(subst =,:=,$(subst $$PATH,$${PATH}, $(shell grep -e 'PYTHONHOME' -e 'Six' ${SALOME_ROOT_DIR}/salome_prerequisites.sh)))), $(eval $(exp)) ) - - -## QT ET PYQT DE L'ENV SALOME (la libpng neccessaire à QT vient du prerequis debianforsalome): -# En bash : saved_IFS=${IFS};IFS=',';for i in `grep 'QT' ${SALOME_ROOT_DIR}/salome_prerequisites.sh | tr -s '\n' ','`; do eval $i; done;IFS=${saved_IFS}; -#$(foreach exp, $(subst ",,$(subst =,:=, $(subst $$PATH,$${PATH}, $(shell grep -e 'QT' ${SALOME_ROOT_DIR}/salome_prerequisites.sh)))), $(info $(exp)) ) -$(foreach exp, $(subst ",,$(subst =,:=, $(subst $$PATH,$${PATH}, $(shell grep -e 'GCC' -e 'DEBIAN' -e 'SIP_ROOT' -e 'QT' ${SALOME_ROOT_DIR}/salome_prerequisites.sh)))), $(eval $(exp)) ) - -## " PYXB -PYXB_ROOT_DIR ?=${PRODUCTS_DIR}/pyxb/install -PYXB ?=${PYXB_ROOT_DIR}/bin/pyxbgen -PYXB_PYTHONPATH ?=${PYXB_ROOT_DIR}/lib/python3.6/site-packages -export PYTHONPATH:=${PYXB_PYTHONPATH}:${PYTHONPATH} - - -## Création d'un fichier avec l'environement minimal utilisé au moment de la construction pour lancer ./qtEficas -# Ce fichier peut être utilisé pour lancer un binaire ds le même environement -# sans charger l'ensemble des pre-requis SALOME -# La variables QT_PLUGIN_PATH : l'ensemble des variables QT sont incluses pour l'instantest necessaire. -# comma:= , -# empty:= -# space:= $(empty) $(empty) -QTDEF= -define ADD_2_QTDEF = -$(if $(findstring export,$(1)),,QTDEF+=export$(1);) -endef -$(foreach exp, $(subst ",,$(subst $$PATH,$${PATH},$(shell grep -e 'QT_PLUGIN_PATH' ${SALOME_ROOT_DIR}/salome_prerequisites.sh))), $(eval $(call ADD_2_QTDEF, $(exp))) ) - -# " pour emacs beautifying -define _SCRIPT_ENV -cat < env.mdm.sh -$(QTDEF) -export PYTHONPATH=${PYTHONPATH}; -export LD_LIBRARY_PATH=${LD_LIBRARY_PATH} -export PATH=${PYXB_ROOT_DIR}/bin:${PATH} -\$$* - -endef -#export SCRIPT_ENV = $(value _SCRIPT_ENV) -#On veut l'évaluation des variables pour avoir le contenu identique à la construction. -export SCRIPT_ENV = $(_SCRIPT_ENV) - - -############# REGLES DE CONSTRUCTION ################ -all: driverAll - -test: testAll - -testAll: - for i in `ls *_test_drivers*.py` ; do ./env.mdm.sh python $i ; done - -$(wildcard *_test_drivers_?.xml) : test_driver.py - do sed -e "s,@module@,${@:%_test_drivers=%_driver},g" -e 's,@file@,$@,g' test_drivers.py > ${@:%.xml=%.py}; done - -gentests: test_driver.py - for i in `*_test_drivers_?.xml`; do sed -e "s,@module@,${i}_driver,g" -e 's,@file@,__.xml,g' test_drivers.py > ${i}_test_drivers.py; done - - -env.mdm.sh: Makefile - @eval "$$SCRIPT_ENV" && chmod +x $@ -# @echo "-----------------> $(QTDEF)" | cat -A - - - -# cata_CFD1.py : cata_CFDCommun.py -# cata_MD1.py : cata_MDCommun.py cata_modeleCommun.py -# cata_CFDCommun.py : cata_modeleCommun.py -# cata_MDCommun.py : cata_modeleCommun.py - -cata_files= cata_CFD1.py\ - cata_CFD2.py\ - cata_CFDCommun.py\ - cata_MD1.py\ - cata_MD2.py\ - cata_MDCommun.py\ - cata_modeleCommun.py - -xsd_files = $(cata_files:%.py=%.xsd) -driver_files= $(cata_files:%.py=%_driver.py) - -xsdAll: $(xsd_files) -driverAll: env.mdm.sh $(driver_files) - -#driverAll: cata_blocs_En_Cascade_driver.py cata_Ambigu_1_Commun_genere.py cata_Ambigu_2_Commun_genere.py cataSimpMemeNomTypesDifferents_genere.py - - -#$(PYXB) -m $(basename $@) -u $< --location-prefix-rewrite http://chercheurs.edf.com/logiciels/vimmp= --write-for-customization \ -# L'utilisation de $? ne fonctionne pas si l'on ne modifie qu'un seul catalogue car il liste uniquement les fichiers modifiés et pyxb détecte -# que l'autre fichier en dépend et qu'il n'a pas été regénéré en même temps: $^ -# .py.xsd : -# $(PYXB) -m $(basename $@) -u $^ --write-for-customization -# xmllint --schema XMLSchema11_local.xsd --noout $^ -.py.xsd: - ../../../Tools/generateXSD.py -c $(realpath $<) -# ./generateXSD.py -c ./$< - -#cata_1.xsd : cata_1.py - - -cata_CFDCommun_driver.py : cata_CFDCommun.xsd cata_modeleCommun.xsd -cata_MDCommun_driver.py : cata_MDCommun.xsd cata_modeleCommun.xsd -cata_CFD1_driver.py : cata_CFD1.xsd cata_CFDCommun.xsd -cata_MD1_driver.py : cata_MD1.xsd cata_MDCommun.xsd cata_modeleCommun.xsd - -.xsd_driver.py: - $(PYXB) -m $(basename $@) -u $^ --write-for-customization - xmllint --schema XMLSchema11_local.xsd --noout $^ - -# cata_1_driver.py: cata_1.xsd -# $(PYXB) -m $(basename $@) -u $^ --write-for-customization -# xmllint --schema XMLSchema11_local.xsd --noout $^ - -# cata_blocs_En_Cascade_driver.py: cata_blocs_En_Cascade.xsd -# @echo "--- PYTHONHOME --- : $${PYTHONHOME}" -# @echo "--- PYTHONSTARTUP --- : $${PYTHONSTARTUP}" -# @echo "--- PYTHON_INCLUDE --- : $${PYTHON_INCLUDE}" -# @echo "--- PYTHON_ROOT_DIR --- : $${PYTHON_ROOT_DIR}" -# @echo "--- PYTHONPATH --- : $${PYTHONPATH}" -# @echo "--- PATH --- : $${PATH}" -# @echo "--- LD_LIBRARY_PATH --- : $${LD_LIBRARY_PATH}" -# @echo "--- PYXB_PYTHONPATH --- : $${PYXB_PYTHONPATH}" -# @echo "--- PYXB_PATH --- : $${PYXB_ROOT_DIR}/bin" -# @echo "--- QTDIR --- : $${QTDIR}" -# @echo "--- PATH --- : $${PATH}" -# @echo "--- QT_PLUGIN_PATH --- : $${QT_PLUGIN_PATH}" -# @echo "--- LD_LIBRARY_PATH --- : $${LD_LIBRARY_PATH}" -# @echo "--- QTVERSION --- : $${QTVERSION}" -# @echo "--- LRELEASE --- : $${LRELEASE}" -# @echo "--- QT_QPA_PLATFORM_PLUGIN_PATH --- : $${QT_QPA_PLATFORM_PLUGIN_PATH}" -# @echo "--- PYQT_ROOT_DIR --- : $${PYQT_ROOT_DIR}" -# @echo "--- PYQT_SIPS --- : $${PYQT_SIPS}" -# @echo "--- PYUIC --- : $${PYUIC}" -# @echo "--- PYTHONPATH --- : $${PYTHONPATH}" -# @echo "--- PATH --- : $${PATH}" -# $(PYXB) -m $(basename $@) -u $^ --write-for-customization -# xmllint --schema XMLSchema11_local.xsd --noout $^ - -.comm.xml: - ../../../Tools/generateXML.py -c $(realpath $(<:%.comm=%.py)) $< -# ./generateXML.py -c $(<:%.comm=%.py) $< - -# xml: -# @echo "Reminder: a .comm file is needed for this step" -# ../tools/generateXML.py -c cata_1.py cata_1_test_1.comm - -clean: - rm -f *.pyc *~ env.mdm.sh - rm -rf raw __pycache__ - rm -f $(driver_files) - diff --git a/Tests/MappingAccasXsd/MultipleCata/XSD_REF_TEST_1/XMLSchema11_local.xsd b/Tests/MappingAccasXsd/MultipleCata/XSD_REF_TEST_1/XMLSchema11_local.xsd deleted file mode 100644 index baa31a09..00000000 --- a/Tests/MappingAccasXsd/MultipleCata/XSD_REF_TEST_1/XMLSchema11_local.xsd +++ /dev/null @@ -1,1950 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ]> - - - - - Part 1 version: structures.xsd (rec-20120405) - Part 2 version: datatypes.xsd (rec-20120405) - - - - - - The schema corresponding to this document is normative, - with respect to the syntactic constraints it expresses in the - XML Schema Definition Language. The documentation (within 'documentation' elements) - below, is not normative, but rather highlights important aspects of - the W3C Recommendation of which this is a part. - - See below (at the bottom of this document) for information about - the revision and namespace-versioning policy governing this - schema document. - - - - - - The simpleType element and all of its members are defined - towards the end of this schema document. - - - - - Get access to the xml: attribute groups for xml:lang - as declared on 'schema' and 'documentation' below - - - - - - - This type is extended by almost all schema types - to allow attributes from other namespaces to be - added to user schemas. - - - - - - - - - - - - This type is extended by all types which allow annotation - other than <schema> itself - - - - - - - - - - - - - - - - - - - - - - - - This group is for the - elements which occur freely at the top level of schemas. - All of their types are based on the "annotated" type by extension. - - - - - - - - - - - - This group is for the - elements which can self-redefine (see <redefine> below). - - - - - - - - - - - - A utility type, not for public use - - - - - - - - - - A utility type, not for public use - - - - - - - - - - A utility type, not for public use - - #all or (possibly empty) subset of {extension, restriction} - - - - - - - - - - - - - - - - A utility type, not for public use - - - - - - - - - - - - A utility type, not for public use - - #all or (possibly empty) subset of {extension, restriction, list, union} - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - for maxOccurs - - - - - - - - - - - - - for all particles - - - - - - - - for element, group and attributeGroup, - which both define and reference - - - - - - - - 'complexType' uses this - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - This branch is short for - <complexContent> - <restriction base="xs:anyType"> - ... - </restriction> - </complexContent> - - - - - - - - - - - - - - - - Will be restricted to required or prohibited - - - - - - Not allowed if simpleContent child is chosen. - May be overridden by setting on complexContent child. - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - This choice is added simply to - make this a valid restriction per the REC - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Overrides any setting on complexType parent. - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - This choice is added simply to - make this a valid restriction per the REC - - - - - - - - - - - - - - - - - No typeDefParticle group reference - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - A utility type, not for public use - - #all or (possibly empty) subset of {substitution, extension, - restriction} - - - - - - - - - - - - - - - - - - - - - - - - The element element can be used either - at the top level to define an element-type binding globally, - or within a content model to either reference a globally-defined - element or type or declare an element-type binding locally. - The ref form is not allowed at the top level. - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - This type is used for 'alternative' elements. - - - - - - - - - - - - - - - - - - group type for explicit groups, named top-level groups and - group references - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - group type for the three kinds of group - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - This choice with min/max is here to - avoid a pblm with the Elt:All/Choice/Seq - Particle derivation constraint - - - - - - - - - - - - - - - - - - - - - - - Only elements allowed inside - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - simple type for the value of the 'namespace' attr of - 'any' and 'anyAttribute' - - - - Value is - ##any - - any non-conflicting WFXML/attribute at all - - ##other - - any non-conflicting WFXML/attribute from - namespace other than targetNS - - ##local - - any unqualified non-conflicting WFXML/attribute - - one or - - any non-conflicting WFXML/attribute from - more URI the listed namespaces - references - (space separated) - - ##targetNamespace or ##local may appear in the above list, to - refer to the targetNamespace of the enclosing - schema or an absent targetNamespace respectively - - - - - A utility type, not for public use - - - - - - - - A utility type, not for public use - - - - - - - - - - - - - - - - - - A utility type, not for public use - - - - - - - - - - A utility type, not for public use - - - - - - - - - - - - - - - - - - - A utility type, not for public use - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - A subset of XPath expressions for use -in selectors - A utility type, not for public -use - - - - - - - - - - - - - - - - - - - - - A subset of XPath expressions for use -in fields - A utility type, not for public -use - - - - - - - - - - - - - - - - - - - - - - - - - The three kinds of identity constraints, all with - type of or derived from 'keybase'. - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - A utility type, not for public use - - A public identifier, per ISO 8879 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - notations for use within schema documents - - - - - - - Not the real urType, but as close an approximation as we can - get in the XML representation - - - - - - - - - - In keeping with the XML Schema WG's standard versioning policy, - the material in this schema document will persist at the URI - http://www.w3.org/2012/04/XMLSchema.xsd. - - At the date of issue it can also be found at the URI - http://www.w3.org/2009/XMLSchema/XMLSchema.xsd. - - The schema document at that URI may however change in the future, - in order to remain compatible with the latest version of XSD - and its namespace. In other words, if XSD or the XML Schema - namespace change, the version of this document at - http://www.w3.org/2009/XMLSchema/XMLSchema.xsd will change accordingly; - the version at http://www.w3.org/2012/04/XMLSchema.xsd will not change. - - Previous dated (and unchanging) versions of this schema document - include: - - http://www.w3.org/2012/01/XMLSchema.xsd - (XSD 1.1 Proposed Recommendation) - - http://www.w3.org/2011/07/XMLSchema.xsd - (XSD 1.1 Candidate Recommendation) - - http://www.w3.org/2009/04/XMLSchema.xsd - (XSD 1.1 Candidate Recommendation) - - http://www.w3.org/2004/10/XMLSchema.xsd - (XSD 1.0 Recommendation, Second Edition) - - http://www.w3.org/2001/05/XMLSchema.xsd - (XSD 1.0 Recommendation, First Edition) - - - - - - - - - - - - A utility type, not for public use - - - - - - - - - - - - - - - - - - - - #all or (possibly empty) subset of {restriction, extension, union, list} - - - A utility type, not for public use - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Can be restricted to required or forbidden - - - - - - - - - - - - - - - - - Required at the top level - - - - - - - - - - - - - - - - - - Forbidden when nested - - - - - - - - - - - - - - - - - An abstract element, representing facets in general. - The facets defined by this spec are substitutable for - this element, and implementation-defined facets should - also name this as a substitution-group head. - - - - - - - - - - - - - - - - - base attribute and simpleType child are mutually - exclusive, but one or other is required - - - - - - - - - - - - - - - itemType attribute and simpleType child are mutually - exclusive, but one or other is required - - - - - - - - - - - - - - - - - memberTypes attribute must be non-empty or there must be - at least one simpleType child - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - In keeping with the XML Schema WG's standard versioning policy, - this schema document will persist at the URI - http://www.w3.org/2012/04/datatypes.xsd. - - At the date of issue it can also be found at the URI - http://www.w3.org/2009/XMLSchema/datatypes.xsd. - - The schema document at that URI may however change in the future, - in order to remain compatible with the latest version of XSD - and its namespace. In other words, if XSD or the XML Schema - namespace change, the version of this document at - http://www.w3.org/2009/XMLSchema/datatypes.xsd will change accordingly; - the version at http://www.w3.org/2012/04/datatypes.xsd will not change. - - Previous dated (and unchanging) versions of this schema document - include: - - http://www.w3.org/2012/01/datatypes.xsd - (XSD 1.1 Proposed Recommendation) - - http://www.w3.org/2011/07/datatypes.xsd - (XSD 1.1 Candidate Recommendation) - - http://www.w3.org/2009/04/datatypes.xsd - (XSD 1.1 Candidate Recommendation) - - http://www.w3.org/2004/10/datatypes.xsd - (XSD 1.0 Recommendation, Second Edition) - - http://www.w3.org/2001/05/datatypes.xsd - (XSD 1.0 Recommendation, First Edition) - - - - - - - diff --git a/Tests/MappingAccasXsd/MultipleCata/XSD_REF_TEST_1/cata_CFD1.xsd b/Tests/MappingAccasXsd/MultipleCata/XSD_REF_TEST_1/cata_CFD1.xsd deleted file mode 100644 index d454838f..00000000 --- a/Tests/MappingAccasXsd/MultipleCata/XSD_REF_TEST_1/cata_CFD1.xsd +++ /dev/null @@ -1,49 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/Tests/MappingAccasXsd/MultipleCata/XSD_REF_TEST_1/cata_CFD1_test_drivers.py b/Tests/MappingAccasXsd/MultipleCata/XSD_REF_TEST_1/cata_CFD1_test_drivers.py deleted file mode 100644 index a0fcdcfd..00000000 --- a/Tests/MappingAccasXsd/MultipleCata/XSD_REF_TEST_1/cata_CFD1_test_drivers.py +++ /dev/null @@ -1,20 +0,0 @@ -#! /usr/bin/env python -# -*- coding:utf-8 -*- -import sys - -#print(sys.argv[:]) - -import cata_CFD1_driver as mdm -import pyxb - -#THESE CONFIGURATION LINES ARE FOR ADVANCED INTERNAL TEST ONLY, YOU DON'T NEED TO CONFIGURE PYXB LIKE THIS -#mdm.pyxb.GlobalValidationConfig._setContentInfluencesGeneration(mdm.pyxb.GlobalValidationConfig.NEVER) -mdm.pyxb.GlobalValidationConfig._setContentInfluencesGeneration(mdm.pyxb.GlobalValidationConfig.ALWAYS) -mdm.pyxb.GlobalValidationConfig._setInvalidElementInContent(mdm.pyxb.GlobalValidationConfig.RAISE_EXCEPTION) -mdm.pyxb.GlobalValidationConfig._setOrphanElementInContent(mdm.pyxb.GlobalValidationConfig.RAISE_EXCEPTION) - - -o1 = mdm.CreateFromDocument(open('cfd1_0.xml').read()) -o2 = mdm.CreateFromDocument(open('cfd1_1.xml').read()) -print(o1.toDOM().toprettyxml()) -print(o2.toDOM().toprettyxml()) diff --git a/Tests/MappingAccasXsd/MultipleCata/XSD_REF_TEST_1/cata_CFD1_test_drivers_0.xml b/Tests/MappingAccasXsd/MultipleCata/XSD_REF_TEST_1/cata_CFD1_test_drivers_0.xml deleted file mode 100644 index 3d22913e..00000000 --- a/Tests/MappingAccasXsd/MultipleCata/XSD_REF_TEST_1/cata_CFD1_test_drivers_0.xml +++ /dev/null @@ -1,21 +0,0 @@ - - - - - - - 91 - - - 92 - - - - - 91 - - - 92 - - - diff --git a/Tests/MappingAccasXsd/MultipleCata/XSD_REF_TEST_1/cata_CFD1_test_drivers_1.xml b/Tests/MappingAccasXsd/MultipleCata/XSD_REF_TEST_1/cata_CFD1_test_drivers_1.xml deleted file mode 100644 index bcad28f8..00000000 --- a/Tests/MappingAccasXsd/MultipleCata/XSD_REF_TEST_1/cata_CFD1_test_drivers_1.xml +++ /dev/null @@ -1,16 +0,0 @@ - - - - - 91 - - - 91 - - - 92 - - - 91 - - diff --git a/Tests/MappingAccasXsd/MultipleCata/XSD_REF_TEST_1/cata_CFD2.xsd b/Tests/MappingAccasXsd/MultipleCata/XSD_REF_TEST_1/cata_CFD2.xsd deleted file mode 100644 index 34b079ba..00000000 --- a/Tests/MappingAccasXsd/MultipleCata/XSD_REF_TEST_1/cata_CFD2.xsd +++ /dev/null @@ -1,52 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/Tests/MappingAccasXsd/MultipleCata/XSD_REF_TEST_1/cata_CFD2_test_drivers.py b/Tests/MappingAccasXsd/MultipleCata/XSD_REF_TEST_1/cata_CFD2_test_drivers.py deleted file mode 100644 index da9f19aa..00000000 --- a/Tests/MappingAccasXsd/MultipleCata/XSD_REF_TEST_1/cata_CFD2_test_drivers.py +++ /dev/null @@ -1,18 +0,0 @@ -#! /usr/bin/env python -# -*- coding:utf-8 -*- -import sys - -#print(sys.argv[:]) - -import cata_CFD2_driver as mdm -import pyxb - -#THESE CONFIGURATION LINES ARE FOR ADVANCED INTERNAL TEST ONLY, YOU DON'T NEED TO CONFIGURE PYXB LIKE THIS -#mdm.pyxb.GlobalValidationConfig._setContentInfluencesGeneration(mdm.pyxb.GlobalValidationConfig.NEVER) -mdm.pyxb.GlobalValidationConfig._setContentInfluencesGeneration(mdm.pyxb.GlobalValidationConfig.ALWAYS) -mdm.pyxb.GlobalValidationConfig._setInvalidElementInContent(mdm.pyxb.GlobalValidationConfig.RAISE_EXCEPTION) -mdm.pyxb.GlobalValidationConfig._setOrphanElementInContent(mdm.pyxb.GlobalValidationConfig.RAISE_EXCEPTION) - -o1 = mdm.CreateFromDocument(open('cfd2_0.xml').read()) -print(o1.toDOM().toprettyxml()) - diff --git a/Tests/MappingAccasXsd/MultipleCata/XSD_REF_TEST_1/cata_CFD2_test_drivers_0.xml b/Tests/MappingAccasXsd/MultipleCata/XSD_REF_TEST_1/cata_CFD2_test_drivers_0.xml deleted file mode 100644 index 1847a1f7..00000000 --- a/Tests/MappingAccasXsd/MultipleCata/XSD_REF_TEST_1/cata_CFD2_test_drivers_0.xml +++ /dev/null @@ -1,13 +0,0 @@ - - - - - 92 - - - 91 - - - 91 - - diff --git a/Tests/MappingAccasXsd/MultipleCata/XSD_REF_TEST_1/cata_CFDCommun.xsd b/Tests/MappingAccasXsd/MultipleCata/XSD_REF_TEST_1/cata_CFDCommun.xsd deleted file mode 100644 index e93d2696..00000000 --- a/Tests/MappingAccasXsd/MultipleCata/XSD_REF_TEST_1/cata_CFDCommun.xsd +++ /dev/null @@ -1,40 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/Tests/MappingAccasXsd/MultipleCata/XSD_REF_TEST_1/cata_CFDCommun_test_drivers.py b/Tests/MappingAccasXsd/MultipleCata/XSD_REF_TEST_1/cata_CFDCommun_test_drivers.py deleted file mode 100644 index 309da3c9..00000000 --- a/Tests/MappingAccasXsd/MultipleCata/XSD_REF_TEST_1/cata_CFDCommun_test_drivers.py +++ /dev/null @@ -1,18 +0,0 @@ -#! /usr/bin/env python -# -*- coding:utf-8 -*- -import sys - -#print(sys.argv[:]) - -import cata_CFDCommun_driver as mdm -import pyxb - -#THESE CONFIGURATION LINES ARE FOR ADVANCED INTERNAL TEST ONLY, YOU DON'T NEED TO CONFIGURE PYXB LIKE THIS -#mdm.pyxb.GlobalValidationConfig._setContentInfluencesGeneration(mdm.pyxb.GlobalValidationConfig.NEVER) -mdm.pyxb.GlobalValidationConfig._setContentInfluencesGeneration(mdm.pyxb.GlobalValidationConfig.ALWAYS) -mdm.pyxb.GlobalValidationConfig._setInvalidElementInContent(mdm.pyxb.GlobalValidationConfig.RAISE_EXCEPTION) -mdm.pyxb.GlobalValidationConfig._setOrphanElementInContent(mdm.pyxb.GlobalValidationConfig.RAISE_EXCEPTION) - -o1 = mdm.CreateFromDocument(open('cfd_commun.xml').read()) -print(o1.toDOM().toprettyxml()) - diff --git a/Tests/MappingAccasXsd/MultipleCata/XSD_REF_TEST_1/cata_CFDCommun_test_drivers_0.xml b/Tests/MappingAccasXsd/MultipleCata/XSD_REF_TEST_1/cata_CFDCommun_test_drivers_0.xml deleted file mode 100644 index 517b8909..00000000 --- a/Tests/MappingAccasXsd/MultipleCata/XSD_REF_TEST_1/cata_CFDCommun_test_drivers_0.xml +++ /dev/null @@ -1,16 +0,0 @@ - - - - - - 91 - - - - 91 - - - - 92 - - diff --git a/Tests/MappingAccasXsd/MultipleCata/XSD_REF_TEST_1/cata_MD1.xsd b/Tests/MappingAccasXsd/MultipleCata/XSD_REF_TEST_1/cata_MD1.xsd deleted file mode 100644 index 17e9865c..00000000 --- a/Tests/MappingAccasXsd/MultipleCata/XSD_REF_TEST_1/cata_MD1.xsd +++ /dev/null @@ -1,48 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/Tests/MappingAccasXsd/MultipleCata/XSD_REF_TEST_1/cata_MD1_test_drivers.py b/Tests/MappingAccasXsd/MultipleCata/XSD_REF_TEST_1/cata_MD1_test_drivers.py deleted file mode 100644 index 1f031d73..00000000 --- a/Tests/MappingAccasXsd/MultipleCata/XSD_REF_TEST_1/cata_MD1_test_drivers.py +++ /dev/null @@ -1,18 +0,0 @@ -#! /usr/bin/env python -# -*- coding:utf-8 -*- -import sys - -#print(sys.argv[:]) - -import cata_MD1_driver as mdm -import pyxb - -#THESE CONFIGURATION LINES ARE FOR ADVANCED INTERNAL TEST ONLY, YOU DON'T NEED TO CONFIGURE PYXB LIKE THIS -#mdm.pyxb.GlobalValidationConfig._setContentInfluencesGeneration(mdm.pyxb.GlobalValidationConfig.NEVER) -mdm.pyxb.GlobalValidationConfig._setContentInfluencesGeneration(mdm.pyxb.GlobalValidationConfig.ALWAYS) -mdm.pyxb.GlobalValidationConfig._setInvalidElementInContent(mdm.pyxb.GlobalValidationConfig.RAISE_EXCEPTION) -mdm.pyxb.GlobalValidationConfig._setOrphanElementInContent(mdm.pyxb.GlobalValidationConfig.RAISE_EXCEPTION) - -o1 = mdm.CreateFromDocument(open('md1_0.xml').read()) -print(o1.toDOM().toprettyxml()) - diff --git a/Tests/MappingAccasXsd/MultipleCata/XSD_REF_TEST_1/cata_MD1_test_drivers_0.xml b/Tests/MappingAccasXsd/MultipleCata/XSD_REF_TEST_1/cata_MD1_test_drivers_0.xml deleted file mode 100644 index 954f57a1..00000000 --- a/Tests/MappingAccasXsd/MultipleCata/XSD_REF_TEST_1/cata_MD1_test_drivers_0.xml +++ /dev/null @@ -1,57 +0,0 @@ - - - - - - 1 - - - - 112 - - - - 1 - - - - 2 - - - - - - 111 - - - - 11 - - - - 12 - - - - 112 - - - - 111 - - - - - MyObj1DuModeleCommun_3 - - - - 12 - - - - - diff --git a/Tests/MappingAccasXsd/MultipleCata/XSD_REF_TEST_1/cata_MD2.xsd b/Tests/MappingAccasXsd/MultipleCata/XSD_REF_TEST_1/cata_MD2.xsd deleted file mode 100644 index a8524bff..00000000 --- a/Tests/MappingAccasXsd/MultipleCata/XSD_REF_TEST_1/cata_MD2.xsd +++ /dev/null @@ -1,51 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/Tests/MappingAccasXsd/MultipleCata/XSD_REF_TEST_1/cata_MD2_test_drivers.py b/Tests/MappingAccasXsd/MultipleCata/XSD_REF_TEST_1/cata_MD2_test_drivers.py deleted file mode 100644 index 5a65b6a1..00000000 --- a/Tests/MappingAccasXsd/MultipleCata/XSD_REF_TEST_1/cata_MD2_test_drivers.py +++ /dev/null @@ -1,18 +0,0 @@ -#! /usr/bin/env python -# -*- coding:utf-8 -*- -import sys - -#print(sys.argv[:]) - -import cata_MD2_driver as mdm -import pyxb - -#THESE CONFIGURATION LINES ARE FOR ADVANCED INTERNAL TEST ONLY, YOU DON'T NEED TO CONFIGURE PYXB LIKE THIS -#mdm.pyxb.GlobalValidationConfig._setContentInfluencesGeneration(mdm.pyxb.GlobalValidationConfig.NEVER) -mdm.pyxb.GlobalValidationConfig._setContentInfluencesGeneration(mdm.pyxb.GlobalValidationConfig.ALWAYS) -mdm.pyxb.GlobalValidationConfig._setInvalidElementInContent(mdm.pyxb.GlobalValidationConfig.RAISE_EXCEPTION) -mdm.pyxb.GlobalValidationConfig._setOrphanElementInContent(mdm.pyxb.GlobalValidationConfig.RAISE_EXCEPTION) - -o1 = mdm.CreateFromDocument(open('md2_0.xml').read()) -print(o1.toDOM().toprettyxml()) - diff --git a/Tests/MappingAccasXsd/MultipleCata/XSD_REF_TEST_1/cata_MD2_test_drivers_0.xml b/Tests/MappingAccasXsd/MultipleCata/XSD_REF_TEST_1/cata_MD2_test_drivers_0.xml deleted file mode 100644 index 4da968cd..00000000 --- a/Tests/MappingAccasXsd/MultipleCata/XSD_REF_TEST_1/cata_MD2_test_drivers_0.xml +++ /dev/null @@ -1,19 +0,0 @@ - - - - - 112 - - - 111 - - - 112 - - - 111 - - - 111 - - diff --git a/Tests/MappingAccasXsd/MultipleCata/XSD_REF_TEST_1/cata_MDCommun.xsd b/Tests/MappingAccasXsd/MultipleCata/XSD_REF_TEST_1/cata_MDCommun.xsd deleted file mode 100644 index 9ab7601f..00000000 --- a/Tests/MappingAccasXsd/MultipleCata/XSD_REF_TEST_1/cata_MDCommun.xsd +++ /dev/null @@ -1,42 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/Tests/MappingAccasXsd/MultipleCata/XSD_REF_TEST_1/cata_MDCommun_test_drivers.py b/Tests/MappingAccasXsd/MultipleCata/XSD_REF_TEST_1/cata_MDCommun_test_drivers.py deleted file mode 100644 index b10b6be6..00000000 --- a/Tests/MappingAccasXsd/MultipleCata/XSD_REF_TEST_1/cata_MDCommun_test_drivers.py +++ /dev/null @@ -1,18 +0,0 @@ -#! /usr/bin/env python -# -*- coding:utf-8 -*- -import sys - -#print(sys.argv[:]) - -import cata_MDCommun_driver as mdm -import pyxb - -#THESE CONFIGURATION LINES ARE FOR ADVANCED INTERNAL TEST ONLY, YOU DON'T NEED TO CONFIGURE PYXB LIKE THIS -#mdm.pyxb.GlobalValidationConfig._setContentInfluencesGeneration(mdm.pyxb.GlobalValidationConfig.NEVER) -mdm.pyxb.GlobalValidationConfig._setContentInfluencesGeneration(mdm.pyxb.GlobalValidationConfig.ALWAYS) -mdm.pyxb.GlobalValidationConfig._setInvalidElementInContent(mdm.pyxb.GlobalValidationConfig.RAISE_EXCEPTION) -mdm.pyxb.GlobalValidationConfig._setOrphanElementInContent(mdm.pyxb.GlobalValidationConfig.RAISE_EXCEPTION) - -o1 = mdm.CreateFromDocument(open('md_commun.xml').read()) -print(o1.toDOM().toprettyxml()) - diff --git a/Tests/MappingAccasXsd/MultipleCata/XSD_REF_TEST_1/cata_MDCommun_test_drivers_0.xml b/Tests/MappingAccasXsd/MultipleCata/XSD_REF_TEST_1/cata_MDCommun_test_drivers_0.xml deleted file mode 100644 index 5227e779..00000000 --- a/Tests/MappingAccasXsd/MultipleCata/XSD_REF_TEST_1/cata_MDCommun_test_drivers_0.xml +++ /dev/null @@ -1,33 +0,0 @@ - - - - - - 1 - - - - - - 12 - - - - 1 - - - - - MyObj1DuModeleCommun_2 - - - - 11 - - - - 1 - - - - diff --git a/Tests/MappingAccasXsd/MultipleCata/XSD_REF_TEST_1/cata_modeleCommun.xsd b/Tests/MappingAccasXsd/MultipleCata/XSD_REF_TEST_1/cata_modeleCommun.xsd deleted file mode 100644 index 17d2fcae..00000000 --- a/Tests/MappingAccasXsd/MultipleCata/XSD_REF_TEST_1/cata_modeleCommun.xsd +++ /dev/null @@ -1,60 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/Tests/MappingAccasXsd/MultipleCata/XSD_REF_TEST_1/cata_modeleCommun_test_drivers.py b/Tests/MappingAccasXsd/MultipleCata/XSD_REF_TEST_1/cata_modeleCommun_test_drivers.py deleted file mode 100644 index 6192b609..00000000 --- a/Tests/MappingAccasXsd/MultipleCata/XSD_REF_TEST_1/cata_modeleCommun_test_drivers.py +++ /dev/null @@ -1,18 +0,0 @@ -#! /usr/bin/env python -# -*- coding:utf-8 -*- -import sys - -#print(sys.argv[:]) - -import cata_modeleCommun_driver as mdm -import pyxb - -#THESE CONFIGURATION LINES ARE FOR ADVANCED INTERNAL TEST ONLY, YOU DON'T NEED TO CONFIGURE PYXB LIKE THIS -#mdm.pyxb.GlobalValidationConfig._setContentInfluencesGeneration(mdm.pyxb.GlobalValidationConfig.NEVER) -mdm.pyxb.GlobalValidationConfig._setContentInfluencesGeneration(mdm.pyxb.GlobalValidationConfig.ALWAYS) -mdm.pyxb.GlobalValidationConfig._setInvalidElementInContent(mdm.pyxb.GlobalValidationConfig.RAISE_EXCEPTION) -mdm.pyxb.GlobalValidationConfig._setOrphanElementInContent(mdm.pyxb.GlobalValidationConfig.RAISE_EXCEPTION) - -o1 = mdm.CreateFromDocument(open('modelCommun.xml').read()) -print(o1.toDOM().toprettyxml()) - diff --git a/Tests/MappingAccasXsd/MultipleCata/XSD_REF_TEST_1/cata_modeleCommun_test_drivers_0.xml b/Tests/MappingAccasXsd/MultipleCata/XSD_REF_TEST_1/cata_modeleCommun_test_drivers_0.xml deleted file mode 100644 index b44b26f0..00000000 --- a/Tests/MappingAccasXsd/MultipleCata/XSD_REF_TEST_1/cata_modeleCommun_test_drivers_0.xml +++ /dev/null @@ -1,23 +0,0 @@ - - - - - - 2 - - - - - - 1 - - - - - MyObj1DuModeleCommun_1 - - - - 1 - - diff --git a/Tests/MappingAccasXsd/MultipleCata/XSD_REF_TEST_1/xml.xsd b/Tests/MappingAccasXsd/MultipleCata/XSD_REF_TEST_1/xml.xsd deleted file mode 100644 index bd291f3d..00000000 --- a/Tests/MappingAccasXsd/MultipleCata/XSD_REF_TEST_1/xml.xsd +++ /dev/null @@ -1,286 +0,0 @@ - - - - - - -
        -

        About the XML namespace

        - -
        -

        - This schema document describes the XML namespace, in a form - suitable for import by other schema documents. -

        -

        - See - http://www.w3.org/XML/1998/namespace.html and - - http://www.w3.org/TR/REC-xml for information - about this namespace. -

        -

        - Note that local names in this namespace are intended to be - defined only by the World Wide Web Consortium or its subgroups. - The names currently defined in this namespace are listed below. - They should not be used with conflicting semantics by any Working - Group, specification, or document instance. -

        -

        - See further below in this document for more information about how to refer to this schema document from your own - XSD schema documents and about the - namespace-versioning policy governing this schema document. -

        -
        -
        -
        -
        - - - - -
        - -

        lang (as an attribute name)

        -

        - denotes an attribute whose value - is a language code for the natural language of the content of - any element; its value is inherited. This name is reserved - by virtue of its definition in the XML specification.

        - -
        -
        -

        Notes

        -

        - Attempting to install the relevant ISO 2- and 3-letter - codes as the enumerated possible values is probably never - going to be a realistic possibility. -

        -

        - See BCP 47 at - http://www.rfc-editor.org/rfc/bcp/bcp47.txt - and the IANA language subtag registry at - - http://www.iana.org/assignments/language-subtag-registry - for further information. -

        -

        - The union allows for the 'un-declaration' of xml:lang with - the empty string. -

        -
        -
        -
        - - - - - - - - - -
        - - - - -
        - -

        space (as an attribute name)

        -

        - denotes an attribute whose - value is a keyword indicating what whitespace processing - discipline is intended for the content of the element; its - value is inherited. This name is reserved by virtue of its - definition in the XML specification.

        - -
        -
        -
        - - - - - - -
        - - - -
        - -

        base (as an attribute name)

        -

        - denotes an attribute whose value - provides a URI to be used as the base for interpreting any - relative URIs in the scope of the element on which it - appears; its value is inherited. This name is reserved - by virtue of its definition in the XML Base specification.

        - -

        - See http://www.w3.org/TR/xmlbase/ - for information about this attribute. -

        -
        -
        -
        -
        - - - - -
        - -

        id (as an attribute name)

        -

        - denotes an attribute whose value - should be interpreted as if declared to be of type ID. - This name is reserved by virtue of its definition in the - xml:id specification.

        - -

        - See http://www.w3.org/TR/xml-id/ - for information about this attribute. -

        -
        -
        -
        -
        - - - - - - - - - - -
        - -

        Father (in any context at all)

        - -
        -

        - denotes Jon Bosak, the chair of - the original XML Working Group. This name is reserved by - the following decision of the W3C XML Plenary and - XML Coordination groups: -

        -
        -

        - In appreciation for his vision, leadership and - dedication the W3C XML Plenary on this 10th day of - February, 2000, reserves for Jon Bosak in perpetuity - the XML name "xml:Father". -

        -
        -
        -
        -
        -
        - - - -
        -

        About this schema document

        - -
        -

        - This schema defines attributes and an attribute group suitable - for use by schemas wishing to allow xml:base, - xml:lang, xml:space or - xml:id attributes on elements they define. -

        -

        - To enable this, such a schema must import this schema for - the XML namespace, e.g. as follows: -

        -
        -          <schema . . .>
        -           . . .
        -           <import namespace="http://www.w3.org/XML/1998/namespace"
        -                      schemaLocation="http://www.w3.org/2001/xml.xsd"/>
        -     
        -

        - or -

        -
        -           <import namespace="http://www.w3.org/XML/1998/namespace"
        -                      schemaLocation="http://www.w3.org/2009/01/xml.xsd"/>
        -     
        -

        - Subsequently, qualified reference to any of the attributes or the - group defined below will have the desired effect, e.g. -

        -
        -          <type . . .>
        -           . . .
        -           <attributeGroup ref="xml:specialAttrs"/>
        -     
        -

        - will define a type which will schema-validate an instance element - with any of those attributes. -

        -
        -
        -
        -
        - - - -
        -

        Versioning policy for this schema document

        -
        -

        - In keeping with the XML Schema WG's standard versioning - policy, this schema document will persist at - - http://www.w3.org/2009/01/xml.xsd. -

        -

        - At the date of issue it can also be found at - - http://www.w3.org/2001/xml.xsd. -

        -

        - The schema document at that URI may however change in the future, - in order to remain compatible with the latest version of XML - Schema itself, or with the XML namespace itself. In other words, - if the XML Schema or XML namespaces change, the version of this - document at - http://www.w3.org/2001/xml.xsd - - will change accordingly; the version at - - http://www.w3.org/2009/01/xml.xsd - - will not change. -

        -

        - Previous dated (and unchanging) versions of this schema - document are at: -

        - -
        -
        -
        -
        - -
        diff --git a/Tests/MappingAccasXsd/MultipleCata/cata_CFD1.py b/Tests/MappingAccasXsd/MultipleCata/cata_CFD1.py deleted file mode 100755 index 93837630..00000000 --- a/Tests/MappingAccasXsd/MultipleCata/cata_CFD1.py +++ /dev/null @@ -1,20 +0,0 @@ -autonome = 0 -#autonome = 1 - -if autonome : - from Accas import * - JdC = JDC_CATA ( - code = 'CFD1', - ) - importedBy=() -else : - from cata_CFDCommun import * - implement='CFD1:CFDCommun' - importedBy=() - -Proc1DuCFD1=PROC(nom='Proc1DuCFD1', - S1DuCFD1= SIMP(statut='o', typ='I', defaut = 91), -) -Proc2DuCFD1=PROC(nom='Proc2DuCFD1', - S2DuCFD1= SIMP(statut='o', typ='I', defaut = 92), -) diff --git a/Tests/MappingAccasXsd/MultipleCata/cata_CFD1_test_driver_0.comm b/Tests/MappingAccasXsd/MultipleCata/cata_CFD1_test_driver_0.comm deleted file mode 100644 index 98b87b23..00000000 --- a/Tests/MappingAccasXsd/MultipleCata/cata_CFD1_test_driver_0.comm +++ /dev/null @@ -1,9 +0,0 @@ - -Proc1DuCFD1(S1DuCFD1=91,); - -Proc2DuCFD1(S2DuCFD1=92,); - -Proc1DuCFDCommun(S1DuCFDCommun=91,); - -Proc2DuCFDCommun(S2DuCFDCommun=92,); -#CHECKSUM:d947e99c7569284499cff53c2591b653 -:FIN CHECKSUM \ No newline at end of file diff --git a/Tests/MappingAccasXsd/MultipleCata/cata_CFD2.py b/Tests/MappingAccasXsd/MultipleCata/cata_CFD2.py deleted file mode 100755 index d743819f..00000000 --- a/Tests/MappingAccasXsd/MultipleCata/cata_CFD2.py +++ /dev/null @@ -1,19 +0,0 @@ -autonome = 0 -autonome = 1 - -if autonome : - from Accas import * - JdC = JDC_CATA ( - code = 'CFD2', - ) -else : - from cata_CFDCommun import * - implement = 'CFD2:CFDCommun' - importedBy=() - -Proc1DuCFD2=PROC(nom='Proc1DuCFD2', - S1DuCFD2= SIMP(statut='o', typ='I', defaut = 91), -) -Proc2DuCFD2=PROC(nom='Proc2DuCFD2', - S2DuCFD2= SIMP(statut='o', typ='I', defaut = 92), -) diff --git a/Tests/MappingAccasXsd/MultipleCata/cata_CFD2_test_driver_0.comm b/Tests/MappingAccasXsd/MultipleCata/cata_CFD2_test_driver_0.comm deleted file mode 100644 index 6945eb9d..00000000 --- a/Tests/MappingAccasXsd/MultipleCata/cata_CFD2_test_driver_0.comm +++ /dev/null @@ -1,7 +0,0 @@ - -Proc2DuCFD2(S2DuCFD2=92,); - -Proc1DuCFD2(S1DuCFD2=91,); - -Proc1DuCFD2(S1DuCFD2=91,); -#CHECKSUM:71986f448c758281c01c870f294f8113 -:FIN CHECKSUM \ No newline at end of file diff --git a/Tests/MappingAccasXsd/MultipleCata/cata_CFDCommun.py b/Tests/MappingAccasXsd/MultipleCata/cata_CFDCommun.py deleted file mode 100755 index 53880187..00000000 --- a/Tests/MappingAccasXsd/MultipleCata/cata_CFDCommun.py +++ /dev/null @@ -1,20 +0,0 @@ -autonome = 0 -autonome = 1 - -if autonome : - from Accas import * - JdC = JDC_CATA ( - code = 'CFDCommun', - ) - importedBy=('CFD1','CFD2','CFDSpecific') -else : - from cata_modeleCommun import * - importedBy=('CFD1','CFD2','CFDSpecific') - implement='CFDCommun:modeleCommun' - -Proc1DuCFDCommun=PROC(nom='Proc1DuCFDCommun', - S1DuCFDCommun= SIMP(statut='o', typ='I', defaut = 91), -) -Proc2DuCFDCommun=PROC(nom='Proc2DuCFDCommun', - S2DuCFDCommun= SIMP(statut='o', typ='I', defaut = 92), -) diff --git a/Tests/MappingAccasXsd/MultipleCata/cata_MD1.py b/Tests/MappingAccasXsd/MultipleCata/cata_MD1.py deleted file mode 100755 index fc7764b7..00000000 --- a/Tests/MappingAccasXsd/MultipleCata/cata_MD1.py +++ /dev/null @@ -1,19 +0,0 @@ -autonome = 0 -#import traceback;traceback.print_stack() - -if autonome : - from Accas import * - JdC = JDC_CATA ( - code = 'MD1', - ) -else : - from cata_MDCommun import * - implement='MD1:MDCommun' - importedBy=() - -Proc1DuMD1=PROC(nom='Proc1DuMD1', - S1DuMD1= SIMP(statut='o', typ='I', defaut = 111), -) -Proc2DuMD1=PROC(nom='Proc2DuMD1', - S2DuMD1= SIMP(statut='o', typ='I', defaut = 112), -) diff --git a/Tests/MappingAccasXsd/MultipleCata/cata_MD2.py b/Tests/MappingAccasXsd/MultipleCata/cata_MD2.py deleted file mode 100755 index aa1f7ee1..00000000 --- a/Tests/MappingAccasXsd/MultipleCata/cata_MD2.py +++ /dev/null @@ -1,20 +0,0 @@ -autonome = 0 -autonome = 1 - - -if autonome : - from Accas import * - JdC = JDC_CATA ( - code = 'MD2', - ) -else : - from cata_MDCommun import * - implement='MD2' - importedBy=() - -Proc1DuMD2=PROC(nom='Proc1DuMD2', - S1DuMD2= SIMP(statut='o', typ='I', defaut = 121), -) -Proc2DuMD2=PROC(nom='Proc2DuMD2', - S2DuMD2= SIMP(statut='o', typ='I', defaut = 122), -) diff --git a/Tests/MappingAccasXsd/MultipleCata/cata_MDCommun.py b/Tests/MappingAccasXsd/MultipleCata/cata_MDCommun.py deleted file mode 100755 index ab29397d..00000000 --- a/Tests/MappingAccasXsd/MultipleCata/cata_MDCommun.py +++ /dev/null @@ -1,20 +0,0 @@ -autonome = 0 - -if autonome : - from Accas import * - JdC = JDC_CATA ( - code = 'MDCommun', - ) - importedBy=('MD1','MD2') -else : - from cata_modeleCommun import * - implement = 'MDCommun:modeleCommun' - importedBy=('MD1','MD2','MDSpecific') - -Proc1DuMDCommun=PROC(nom='Proc1DuMDCommun', - S1DuMDCommun= SIMP(statut='o', typ='I', defaut = 11), -) -Proc2DuMDCommun=PROC(nom='Proc2DuMDCommun', - S2DuMDCommun= SIMP(statut='o', typ='I', defaut = 12), -) - diff --git a/Tests/MappingAccasXsd/MultipleCata/cata_modeleCommun.py b/Tests/MappingAccasXsd/MultipleCata/cata_modeleCommun.py deleted file mode 100755 index 6840ac7b..00000000 --- a/Tests/MappingAccasXsd/MultipleCata/cata_modeleCommun.py +++ /dev/null @@ -1,22 +0,0 @@ - -from Accas import * - -class Obj1DuModeleCommun(ASSD): pass - -JdC = JDC_CATA ( - code = 'modeleCommun', -) -importedBy=('MDCommun', 'CFDCommun', 'DomainSpecific') - -Proc1DuModeleCommun=PROC(nom='Proc1DuModeleCommun', - S1DuModeleCommun= SIMP(statut='o', typ='I', defaut = 1), -) -Proc2DuModeleCommun=PROC(nom='Proc2DuModeleCommun', - S2DuModeleCommun= SIMP(statut='o', typ='I', defaut = 2), -) - -Oper1DuModeleCommun=OPER(nom = 'Oper1DuModeleCommun', sd_prod=Obj1DuModeleCommun,) - -Proc3DuModeleCommun=PROC(nom='Proc3DuModeleCommun', - S3DuModeleCommun= SIMP(statut='o',typ=Obj1DuModeleCommun), -) diff --git a/Tests/MappingAccasXsd/MultipleCata/generateXSD.py b/Tests/MappingAccasXsd/MultipleCata/generateXSD.py deleted file mode 100755 index 5d92d5ef..00000000 --- a/Tests/MappingAccasXsd/MultipleCata/generateXSD.py +++ /dev/null @@ -1,36 +0,0 @@ -#!/usr/bin/env python -# -*- coding: utf-8 -*- -# Copyright (C) 2007-2013 EDF R&D -# -# 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 -# -""" - Ce module sert a lancer EFICAS configure pour Meteo -""" -# Modules Python -# Modules Eficas -import prefs -name='prefs_'+prefs.code -__import__(name) - -import sys -import os -sys.path.append(os.path.join(os.path.abspath(os.path.dirname(__file__)),'../../..')) - -import prefs -from InterfaceQT4 import eficas_go -eficas_go.genereXSD(code=prefs.code) diff --git a/Tests/MappingAccasXsd/MultipleCata/prefs.py b/Tests/MappingAccasXsd/MultipleCata/prefs.py deleted file mode 100644 index d809d651..00000000 --- a/Tests/MappingAccasXsd/MultipleCata/prefs.py +++ /dev/null @@ -1,22 +0,0 @@ -# Copyright (C) 2007-2012 EDF R&D -# -# 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 -# -code="TestMultipleCata" -import sys, os -if os.path.dirname(os.path.abspath(__file__)) not in sys.path : - sys.path.insert(0,os.path.dirname(os.path.abspath(__file__))) diff --git a/Tests/MappingAccasXsd/MultipleCata/prefs_TestMultipleCata.py b/Tests/MappingAccasXsd/MultipleCata/prefs_TestMultipleCata.py deleted file mode 100644 index 49bacf43..00000000 --- a/Tests/MappingAccasXsd/MultipleCata/prefs_TestMultipleCata.py +++ /dev/null @@ -1,63 +0,0 @@ -# -*- coding: utf-8 -*- -# maConfiguration MANAGEMENT OF EDF VERSION -# ====================================================================== -# COPYRIGHT (C) 1991 - 2002 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# -# -# ====================================================================== - -import os,sys -# repIni sert a localiser le fichier editeur.ini -# Obligatoire -repIni=os.path.dirname(os.path.abspath(__file__)) -INSTALLDIR=os.path.join(repIni,'..') -sys.path[:0]=[INSTALLDIR] - - -# lang indique la langue utilisee pour les chaines d'aide : fr ou ang -lang='ang' - -# Codage des strings qui accepte les accents (en remplacement de 'ascii') -encoding='iso-8859-1' - -# -#typeDeCata='XML' -catalogues=( - ('cata_CFD1','cata_CFD1',os.path.join(repIni,'cata_CFD1.py'),'xml','python'), - ('cata_CFD2','cata_CFD2',os.path.join(repIni,'cata_CFD2.py'),'xml','python'), - ('cata_CFDCommun','cata_CFDCommun',os.path.join(repIni,'cata_CFDCommun.py'),'xml','python'), - ('cata_MD1','cata_MD1',os.path.join(repIni,'cata_MD1.py'),'xml','python'), - ('cata_MD2','cata_MD2',os.path.join(repIni,'cata_MD2.py'),'xml','python'), - ('cata_MDCommun','cata_MDCommun',os.path.join(repIni,'cata_MDCommun.py'),'xml','python'), - ('cata_modeleCommun','cata_modeleCommun',os.path.join(repIni,'cata_modeleCommun.py'),'xml','python'), -) -nombreDeBoutonParLigne=4 -#simpleClic=True -closeFrameRechercheCommande=False -closeFrameRechercheCommandeSurPageDesCommandes=True -#boutonDsMenuBar=False -#closeArbre=True -#afficheListesPliees=False -#afficheCommandesPliees = False -afficheCommandesPliees=True -enleverActionStructures = True -enleverParametres = True -enleverSupprimer = True -#ajoutExecution = True -#translatorFichier = os.path.join(repIni,'Meteo') -#withXSD=True -#dumpXSD=True -#afficheIhm=False diff --git a/Tests/MappingAccasXsd/MultipleCata/qtEficasTest.py b/Tests/MappingAccasXsd/MultipleCata/qtEficasTest.py deleted file mode 100755 index 7f785dc4..00000000 --- a/Tests/MappingAccasXsd/MultipleCata/qtEficasTest.py +++ /dev/null @@ -1,36 +0,0 @@ -#!/usr/bin/env python -# -*- coding: utf-8 -*- -# Copyright (C) 2007-2013 EDF R&D -# -# 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 -# -""" - Ce module sert a lancer EFICAS configure pour TEST -""" -# Modules Python -# Modules Eficas -import prefs -name='prefs_'+prefs.code -__import__(name) - -import sys -import os -sys.path.append(os.path.join(os.path.abspath(os.path.dirname(__file__)),'../../..')) - -import prefs -from InterfaceQT4 import eficas_go -eficas_go.lanceEficas(code=prefs.code) diff --git a/Tests/MappingAccasXsd/TMP/cata_Ambigu_2_Commun_genere.xsd b/Tests/MappingAccasXsd/TMP/cata_Ambigu_2_Commun_genere.xsd deleted file mode 100644 index fd87c6bd..00000000 --- a/Tests/MappingAccasXsd/TMP/cata_Ambigu_2_Commun_genere.xsd +++ /dev/null @@ -1,59 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/Tests/MappingAccasXsd/Tuples.xml b/Tests/MappingAccasXsd/Tuples.xml deleted file mode 100644 index 49aae685..00000000 --- a/Tests/MappingAccasXsd/Tuples.xml +++ /dev/null @@ -1,42 +0,0 @@ - - - - - 3.141590118408203125 - 0 - String - 31.141590118408203125 - 1 - String1 - - - - 3.141590118408203125 - 0 - String - 31.141590118408203125 - 1 - Str ing1 - - - -3.141590118408203125 0 String - - - - - - - - -0 String 3.141590118408203125 - - - - 3.141590118408203125 0 String - 31.141590118408203125 10 1String - - diff --git a/Tests/MappingAccasXsd/Tuples/Tuple.xsd b/Tests/MappingAccasXsd/Tuples/Tuple.xsd deleted file mode 100644 index 0c54f951..00000000 --- a/Tests/MappingAccasXsd/Tuples/Tuple.xsd +++ /dev/null @@ -1,80 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/Tests/MappingAccasXsd/Tuples/tuple_1.xml b/Tests/MappingAccasXsd/Tuples/tuple_1.xml deleted file mode 100644 index 381444ac..00000000 --- a/Tests/MappingAccasXsd/Tuples/tuple_1.xml +++ /dev/null @@ -1,20 +0,0 @@ - - - - - - - - 0 - String - - - 0 - String - - - 0 - String - - - diff --git a/Tests/MappingAccasXsd/Tuples_Example1.xsd b/Tests/MappingAccasXsd/Tuples_Example1.xsd deleted file mode 100644 index 490fa8fd..00000000 --- a/Tests/MappingAccasXsd/Tuples_Example1.xsd +++ /dev/null @@ -1,86 +0,0 @@ - - - - - Comment describing your root element - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/Tests/MappingAccasXsd/XsdSimpleTypeList/GNUmakefile b/Tests/MappingAccasXsd/XsdSimpleTypeList/GNUmakefile deleted file mode 100644 index fa8620f2..00000000 --- a/Tests/MappingAccasXsd/XsdSimpleTypeList/GNUmakefile +++ /dev/null @@ -1,102 +0,0 @@ -.SUFFIXES: .xsd .py _driver.py .comm .xml -.PHONY: xsdAll driverAll -SHELL=bash - -# PN : -# PYXB=/local/PyXB-1.2.6/scripts/pyxbgen -# PYXB_PYTHONPATH=/local/PyXB-1.2.6.bin/lib/python2.7/site-packages/ - -ifdef EFICAS4VIMMP_ROOT -srcdir?=${EFICAS4VIMMP_ROOT} -else -srcdir?=../../.. -endif - -confdir?=$(srcdir)/config -tooldir=$(srcdir)/Tools - -# Règle en tête de Makefile -all: driverAll - -######### ENVIRONEMENT DE CONSTRUCTION VIMMP Traning / Local ############ - -ifeq ($(findstring vimmp,$dir($(realpath GNUmakefile))),vimmp) -include $(confdir)/GNUmakefile.mdm -include $(confdir)/GNUmakefile.env -else -include $(confdir)/GNUmakefile.env -endif - -PYXB ?=pyxbgen - -################# REGLES DE CONSTRUCTION ######################## - -define cata_dependencies = -#cata_1$1 : cata_depend$1 -endef - -#Définition des dépendances le modèle .py -$(eval $(call cata_dependencies,.py)) -#Définition des dépendances le modèle .xsd -$(eval $(call cata_dependencies,.xsd)) - -# $(subst .py,.xsd,cata_dependencies) - -cata_files= \ -cataSimple.py - -xsd_files = $(cata_files:%.py=%.xsd) -driver_files= $(cata_files:%.py=%_driver.py) - -xsdAll: $(xsd_files) -driverAll: exec.sh environ.sh qtEficas.sh $(driver_files) -# qtEficasSlm.sh - -#driverAll: cata_blocs_En_Cascade_driver.py cata_Ambigu_1_Commun_genere.py cata_Ambigu_2_Commun_genere.py cataSimpMemeNomTypesDifferents_genere.py - - -#$(PYXB) -m $(basename $@) -u $< --location-prefix-rewrite http://chercheurs.edf.com/logiciels/vimmp= --write-for-customization \ -# L'utilisation de $? ne fonctionne pas si l'on ne modifie qu'un seul catalogue car il liste uniquement les fichiers modifiés et pyxb détecte -# que l'autre fichier en dépend et qu'il n'a pas été regénéré en même temps: $^ -.py.xsd: - $(tooldir)/generateXSD.py -c $(realpath $<) - -.xsd_driver.py: - $(PYXB) -m $(basename $@) -u $^ --write-for-customization - xmllint --path $(confdir) --schema XMLSchema11_local.xsd --noout $^ - -#Les Tools ont besoins d'un chemin absolu -.comm.xml: - $(tooldir)/generateXML.py -c $(realpath $(<:%.comm=%.py)) $< - -# xml: -# @echo "Reminder: a .comm file is needed for this step" -# ../tools/generateXML.py -c cata_1.py cata_1_test_1.comm - -check test: testAll - -#Génération d'un .py de test par .xml de référence -#TODO : Améliorer la génération pour ne pas regénérer inutilement les drivers, utilser plus les règles Makefiles... -#TODO : Gestion ds un build séparé du srcdir -testGen: $(confdir)/test_driver_subst.py - for i in `ls *_test_driver_?.comm`; \ - do \ - $(tooldir)/generateXML.py -c $$PWD/$${i/_test_driver_?.comm/.py} $${i} && \ - sed -e "s,@module@,$${i/_test_driver_?.comm/}_driver,g" -e "s,@file@,$${i/.comm/.xml},g" $(confdir)/test_driver_subst.py > $${i/comm/py} && \ - chmod +x $${i/comm/py};\ - done - -#Lancement de chaque test ds l'environement minimal -testAll: testGen exec.sh driverAll - for i in `ls *_test_driver*.py` ; do ./exec.sh python $$i ; done - -#multiple target avec règle non possible. -#Ecrire une génération avec un define -# $(wildcard *_test_driver_?.xml) : test_driver.py -# do sed -e "s,@module@,${@:%_test_driver=%_driver},g" -e 's,@file@,$@,g' test_driver.py > ${@:%.xml=%.py}; done - -clean: - rm -f *.pyc *~ qtEficas.sh exec.sh environ.sh - rm -rf raw binding.py __pycache__ - rm -f $(xsd_files) $(driver_files) *test_driver_?.py *test_driver_?.xml - diff --git a/Tests/MappingAccasXsd/XsdSimpleTypeList/cataSimple.py b/Tests/MappingAccasXsd/XsdSimpleTypeList/cataSimple.py deleted file mode 100644 index a876e254..00000000 --- a/Tests/MappingAccasXsd/XsdSimpleTypeList/cataSimple.py +++ /dev/null @@ -1,16 +0,0 @@ -import os, re -import Accas -from Accas import * -monFichier=os.path.abspath(__file__) - -JdC = JDC_CATA ( - code='Essai' - ) -VERSION_CATALOGUE='V_0' - -# Tout est Facultatif car sinon, on ne peut pas supprimer et c 'est ce qu on veut tester -DefinitionListe = PROC( nom='DefinitionListe', - creeListe = SIMP( statut='f', typ = 'TXM',max='**'), - creeListe2 = SIMP( statut='f', typ = 'I',homo="SansOrdreNiDoublon",max='**', into=(1,2,3,4)), - creeListe3 = SIMP( statut='f', typ = 'I',max='**', into=(1,2,3,4)), -) diff --git a/Tests/MappingAccasXsd/XsdSimpleTypeList/cataSimple_test_driver_0.comm b/Tests/MappingAccasXsd/XsdSimpleTypeList/cataSimple_test_driver_0.comm deleted file mode 100644 index a70693da..00000000 --- a/Tests/MappingAccasXsd/XsdSimpleTypeList/cataSimple_test_driver_0.comm +++ /dev/null @@ -1,6 +0,0 @@ - -DefinitionListe(creeListe=('a','a','v',), - creeListe2=(1,), - creeListe3=(2,),); -#VERSION_CATALOGUE:V_0:FIN VERSION_CATALOGUE -#CHECKSUM:a6c531c359c5325ec58a795001737475 -:FIN CHECKSUM \ No newline at end of file diff --git a/Tests/MappingAccasXsd/XsdSimpleTypeList/test_type_simple.py b/Tests/MappingAccasXsd/XsdSimpleTypeList/test_type_simple.py deleted file mode 100644 index 1bd61761..00000000 --- a/Tests/MappingAccasXsd/XsdSimpleTypeList/test_type_simple.py +++ /dev/null @@ -1,39 +0,0 @@ -from cataSimple_driver import * -pyxb.GlobalValidationConfig._setContentInfluencesGeneration(pyxb.GlobalValidationConfig.ALWAYS) -pyxb.GlobalValidationConfig._setInvalidElementInContent(pyxb.GlobalValidationConfig.RAISE_EXCEPTION) -pyxb.GlobalValidationConfig._setOrphanElementInContent(pyxb.GlobalValidationConfig.RAISE_EXCEPTION) - -jdd = CreateFromDocument(open('cataSimple_test_driver_0.xml').read()) -print (jdd.toDOM().toprettyxml()) - -#Pour une liste ds le sens xsd (type simple list) -jdd.step_Essai[0].orderedContent()[0].elementDeclaration.isPlural() -#False -isinstance(jdd.step_Essai[0].orderedContent()[0].value,pyxb.binding.basis.STD_list) -#True -# sinon pyxb.exceptions_.NotSimpleContentError: type ..... does not have simple content -issubclass(jdd.step_Essai[0].orderedContent()[0].elementDeclaration.elementBinding().typeDefinition(),pyxb.binding.basis.STD_list) -True - -#Pour tester si un element est plural -isinstance(jdd.step_Essai,pyxb.binding.content._PluralBinding) -#True -isinstance(jdd.step_Essai[0],pyxb.binding.content._PluralBinding) -#False -isinstance(jdd.step_Essai[0].creeListe,pyxb.binding.content._PluralBinding) -#False - -#New Way -print ('_________________________________________') -for objAAnalyser in jdd.orderedContent() : - print (objAAnalyser) - print (type(objAAnalyser)) - print (objAAnalyser.__class__) -print ('_________________________________________') -#Old way -for objAAnalyser in jdd.content() : - print (objAAnalyser) - print (type(objAAnalyser)) - print (objAAnalyser.__class__) -print ('_________________________________________') - diff --git a/Tests/MappingAccasXsd/cata_1.py b/Tests/MappingAccasXsd/cata_1.py deleted file mode 100644 index d7bbf7e6..00000000 --- a/Tests/MappingAccasXsd/cata_1.py +++ /dev/null @@ -1,144 +0,0 @@ -# coding: utf-8 -*- -# - -#import os -#import types -#monFile=os.path.abspath(__file__) - -from Accas import * -import types - -#type UserASSD -class User_Data(UserASSD): pass -#type ASSD -class Mesh(ASSD): pass -#type UserASSD -class MeshU(UserASSD): pass - -#Be careful when modidying the order/names od the test_simp since they are used bye the documentation xsd_mapping.rst -#beginJdC -JdC = JDC_CATA(code='Test1',) - -Test_proc_1 = PROC(nom = 'Test_proc_1', - test_simp_1 = SIMP(statut='o', typ='TXM', defaut='text_simp_txt_1'), - test_simp_1_1 = SIMP(statut='o', typ='TXM', defaut='text_simp_txt_1'), - test_simp_1_2 = SIMP(statut='o', typ='TXM', defaut='text_simp_txt_1_2'), - test_simp_1_3 = SIMP(statut='o', typ='TXM', min=2, max=3, - defaut=['value_a','value_b' ], - into=['value_a','value_b', 'value_c' ]), - test_simp_2 = SIMP(statut='o', typ='I' , defaut=2), - test_simp_2_1 = SIMP(statut='o', typ='I' , defaut=5, val_min=5, val_max=10), - test_simp_2_2 = SIMP(statut='o', typ='I' , defaut=6, into=[4,5,6]), - test_simp_2_3 = SIMP(statut='o', typ='I' , min=3, max='**'), - test_simp_2_4 = SIMP(statut='f', typ='I' , min=3, max=6 ), - test_simp_2_5 = SIMP(statut='f', typ='I' , min=3, max=6,defaut=[1,2,3,4]), - test_simp_3 = SIMP(statut='o', typ='R', defaut=3.0), - test_simp_4 = SIMP(statut='o', typ=bool, defaut=True), -# Type non gere ds le XSD -# test_simp_5 = SIMP(statut='o', typ='C' , defaut=('RI',1,0)), -# test_simp_5 = SIMP(statut='o', typ='C' , defaut=3+2j), - test_simp_6 = SIMP(statut='o' , typ='TXM' , max="**",min=3), -#TODO : Creer un type XSD pour les repertoires. - test_simp_7_1 = SIMP(statut='o' , typ='Repertoire' ), - test_simp_7_2 = SIMP(statut='o' , typ='Fichier' ), - test_simp_7_3 = SIMP(statut='o' , typ='FichierOuRepertoire', ), -#BUG : Le deuxième filtre n'est pas pris en compte - test_simp_7_4 = SIMP(statut='o' , typ=('Fichier', 'XML Files(*.xml);;XSD Files(*.xsd)') ), -#TODO : Generer les types de nom de fichier avec regexp - test_simp_7_5 = SIMP(statut='o' , typ=('Repertoire','Test Files(Test*)')), -#BUG?: La boîte de dialogue QT ne propose pas de définir un nouveau fichier en utilisant le path de la boîte de dialogue -#Le nom de fichier par défaut n'est pas prise en compte - test_simp_7_6 = SIMP(statut='o' , typ=('FichierNoAbs','XML Files(*.xml);;XSD Files(*.xsd)','myFile1.xml')), - test_simp_8_1 = SIMP(statut='o' , typ=(User_Data,'createObject')), - test_simp_8_2 = SIMP(statut='o' , typ=User_Data), -) - -Test_proc_2 = PROC(nom = 'Test_proc_2',) -Test_oper_1 = OPER(nom = 'Test_oper_1', sd_prod=Mesh,) - -#Usecase 1a : Il est possible de créer plusieurs maillages à la racine -ReadMesh = OPER(nom = 'ReadMesh', sd_prod=Mesh, - MyFile= SIMP(typ='Fichier', statut ='o'),) -#Usecase 1abis : Le contenu de l'objet est completement déterminé par les paramètres suivants -CreateMesh = OPER(nom = 'CreateMesh', sd_prod=Mesh, - meshname = SIMP(typ='TXM'), - dimension = SIMP(typ='I', into=[1,2,3]), - listOfEntities = SIMP(typ='I', max='**'),) -#Usecase 1ater : Il est possible de créer plusieurs -CreateBoth = OPER(nom = 'CreateBoth', sd_prod=Mesh, - meshname = SIMP(typ=(MeshU,'createObject')), - dimension = SIMP(typ='I', into=[1,2,3]), - listOfEntities = SIMP(typ='I', max='**'),) - -#Usecase 1b : Chaque champ (crée à la racine) utilise l'objet maillage précedement construit (à la racine) -# statut='o', ?? -MyField = PROC(nom='MyField', - onMesh = SIMP(statut='o',typ=Mesh),) - - -############################ -#Usecase 2a : Il est possible de créer plusieurs maillages dans une structure nommée meshes -# La définition du nom du maillage dans le JDD sert de référence à un notre mesh (un objet python du type UserASSD Mesh -# est également crée pour l'occasion (sans paramètre au constructeur) ). -# le typ du SIMP est en fait une chaîne pour laquelle il est possible d'ajouter un validateur. -Meshes = PROC(nom = 'Meshes', - mesh = FACT(max='**', - name = SIMP(typ=(MeshU,'createObject')), - dimension = SIMP(typ='I', into=[1,2,3]), - listOfEntities = SIMP(typ='I', max='**'), - ), - )#Meshes - -# Usecase 2b : Chaque champ crée à la racine référence un maillage par son nom -# (il faut qu'il soit crée au préalable) -# statut='o', ?? -MyFieldBis = PROC(nom='MyFieldBis', - onMesh = SIMP(statut='o',typ=MeshU),) - -#UserASSD c'est une référence sur un objet alors qu'un ASSD c'est l'objet retourné. - -Test_proc_2 = PROC(nom = 'Test_proc_2', - job_properties = FACT(statut='o', - job_duration = SIMP(statut='o', typ='R', defaut=1000, val_min=0), - stack_size = SIMP(statut='f', typ='R', defaut=1000, val_min=0), - print_frequency = SIMP(statut='f', typ='TXM', defaut='every', into=['every','never','sometimes']), - close_time = SIMP(statut='f', typ='R', defaut=1000, val_min=0), - ) #job_properties -) - -Test_proc_3 = PROC(nom = 'Test_proc_3', - ThresholdExceedence = FACT ( - Event = FACT ( - Threshold = SIMP ( typ = "R", ang = "Failure threshold",), - ComparisonOperator = SIMP ( typ = "TXM", into = ( "Less", "LessOrEqual", "Equal", "GreaterOrEqual", "Greater" ),), - ), - Method = SIMP ( typ = "TXM", into = ( "Simulation", "FORM_SORM" ), ang = "Method",), - ) #ThresholdExceedence -) - -Test_proc_4 = PROC(nom = 'Test_proc_4', - species_parameters = FACT(statut='o', max="**", - species_name = SIMP(statut='o',typ='TXM'), - species_mass = SIMP(statut='o',typ='R',defaut=1.0), - species_is_frozen = SIMP(statut='f',typ=bool,), - ) #species_parameters -) - -Test_proc_5 = PROC(nom = 'Test_proc_5', - print_frequency = SIMP(statut='f', typ='TXM', defaut='every', into=['every','periodically','sometimes']), - frequency_every = BLOC ( condition= "print_frequency == 'every'", - particule_to_be_printed = SIMP(statut='o',typ='TXM', ), - ), #frequency_every - frequ_not_every = BLOC ( condition= "print_frequency != 'every'", - step_to_be_printed = SIMP(statut='o',typ='I', max ="**" ), - ), #frequ_not_every -)#Test_proc_5 - -Test_proc_6 = PROC(nom = 'Test_proc_6', - wind_speed = SIMP(statut='o', typ = 'R'), - b_ask_wind_direction = BLOC ( condition= 'wind_speed > 0.5', - wind_direction = SIMP(statut='o', typ='TXM'), - rain_speed = SIMP(statut='f', typ='R', val_min = 1, val_max=20), - ), #b_ask_wind_direction -) #Test_proc_6 -#endJdC diff --git a/Tests/MappingAccasXsd/cata_1_test_1.py b/Tests/MappingAccasXsd/cata_1_test_1.py deleted file mode 100644 index a2bb1287..00000000 --- a/Tests/MappingAccasXsd/cata_1_test_1.py +++ /dev/null @@ -1,15 +0,0 @@ -#! /usr/bin/env python -# -*- coding:utf-8 -*- - -import cata_1_genere as mdm -import pyxb - -#THESE CONFIGURATION LINES ARE FOR ADVANCED INTERNAL TEST ONLY, YOU DON'T NEED TO CONFIGURE PYXB LIKE THIS -#mdm.pyxb.GlobalValidationConfig._setContentInfluencesGeneration(mdm.pyxb.GlobalValidationConfig.NEVER) -mdm.pyxb.GlobalValidationConfig._setContentInfluencesGeneration(mdm.pyxb.GlobalValidationConfig.ALWAYS) -mdm.pyxb.GlobalValidationConfig._setInvalidElementInContent(mdm.pyxb.GlobalValidationConfig.RAISE_EXCEPTION) -mdm.pyxb.GlobalValidationConfig._setOrphanElementInContent(mdm.pyxb.GlobalValidationConfig.RAISE_EXCEPTION) - -o1 = mdm.CreateFromDocument(open('cata_1_test_1.xml').read()) -print(o1.toDOM().toprettyxml()) - diff --git a/Tests/MappingAccasXsd/cata_1_test_driver_0.comm b/Tests/MappingAccasXsd/cata_1_test_driver_0.comm deleted file mode 100644 index d7b74319..00000000 --- a/Tests/MappingAccasXsd/cata_1_test_driver_0.comm +++ /dev/null @@ -1,27 +0,0 @@ -monMesh=User_Data() - -Test_proc_2(job_properties=_F(job_duration=1000.0, - stack_size=1000.0, - print_frequency='never', - close_time=1000.0,),); - -Test_proc_1(test_simp_1='text_simp_txt_1', - test_simp_1_1='text_simp_txt_1', - test_simp_1_2='text_simp_txt_1_2', - test_simp_1_3=('value_a','value_b',), - test_simp_2=2, - test_simp_2_1=5, - test_simp_2_2=6, - test_simp_2_3=(1,2,3,), - test_simp_3=3.0, - test_simp_4=True, - test_simp_6=('aa','bb','cc','dd',), - test_simp_7_1='/tmp', - test_simp_7_2='/bin/ls', - test_simp_7_3='/tmp', - test_simp_7_4='/bin/ln', - test_simp_7_5='/', - test_simp_7_6='/bin/cp', - test_simp_8_1=monMesh, - test_simp_8_2=monMesh,); -#CHECKSUM:660dbadb017f994197b7b2de8855adb1 -:FIN CHECKSUM \ No newline at end of file diff --git a/Tests/MappingAccasXsd/cata_ASSD.py b/Tests/MappingAccasXsd/cata_ASSD.py deleted file mode 100644 index 0cc371d7..00000000 --- a/Tests/MappingAccasXsd/cata_ASSD.py +++ /dev/null @@ -1,42 +0,0 @@ -# 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, re -import Accas -from Accas import * -monFichier=os.path.abspath(__file__) -class maillage(ASSD):pass -class champ(ASSD):pass - -JdC = JDC_CATA ( - code='Essai' - ) -VERSION_CATALOGUE='V_0' - - -Maillage = OPER ( nom='Maillage', sd_prod=maillage, - fichier = SIMP( statut='o', typ = ('Fichier','All Files (*)')), -) -Champ = OPER ( nom='Champ', sd_prod=champ, - SurLeMaillage = SIMP( statut='o', typ = maillage), -) -ChampMultiple = OPER ( nom='ChampMultiple', sd_prod=champ, - SurLeMaillage2 = SIMP( statut='o', typ = maillage,max="**"), -) - diff --git a/Tests/MappingAccasXsd/cata_ASSD_test_driver_0.comm b/Tests/MappingAccasXsd/cata_ASSD_test_driver_0.comm deleted file mode 100644 index 31567b0c..00000000 --- a/Tests/MappingAccasXsd/cata_ASSD_test_driver_0.comm +++ /dev/null @@ -1,6 +0,0 @@ - -maillage1=Maillage(fichier='/home/eric/MED/med-4.1.0/tests/c/test1.med',); - -champ1=Champ(SurLeMaillage=maillage1,); -#VERSION_CATALOGUE:V_0:FIN VERSION_CATALOGUE -#CHECKSUM:4f3412e3098e0105441fa5b9d25276c9 -:FIN CHECKSUM \ No newline at end of file diff --git a/Tests/MappingAccasXsd/cata_ExemplesCommantaireAndTexteAvecBlancs.py b/Tests/MappingAccasXsd/cata_ExemplesCommantaireAndTexteAvecBlancs.py deleted file mode 100644 index 6faf657a..00000000 --- a/Tests/MappingAccasXsd/cata_ExemplesCommantaireAndTexteAvecBlancs.py +++ /dev/null @@ -1,33 +0,0 @@ -from Accas import * - -# PN a faire --> ajouter un MC modeleNumerique (apres avoir renomme le modeleNumerique actuel en classe de modele numerique) -# et le dictionnaire d apres - -class stateVariable(UserASSD) : pass -class dynamicVariable(stateVariable):pass - -listInto = ['Fully resolved (DNS)', 'Spatial filtering (LES)', 'One-point moment', 'One-point PDF'] - -JdC = JDC_CATA ( - code = 'Vimmp', -) - -Mignonne = PROC(nom='Mignonne', ang='Poeme Juil 1545', - Titre = SIMP(typ='TXM', statut='o', defaut = 'Mignonne, allons voir si la rose', into=('Mignonne, allons voir si la rose','Un autre poeme'), avecBlancs=True, ang='Meditation sur la vieillesse et la mort',), - Dedicace = SIMP(typ='TXM', statut='o', avecBlancs=True,ang='A Cassandre, Cassandre Salviati, fille de banquier italien', ), - LePremierSizain = FACT(statut='o', ang="Introduction à l'érotisme", - - LesVers = SIMP(statut='o', max=6, typ='TXM', into =[ 'Mignonne allons voir si la rose','Qui ce matin avoit desclose','Sa robe de pourpre au Soleil','A point perdu ceste vesprée','les plis de sa robe pourprée','Et son teint au vostre pareil',], avecBlancs=True),#ang='vers en decassylables,\nRonsard fixe les règles du sonnet :\n deux quatrains où alternent rimes masculines et rimes féminines suivis \n de deux tercets dont les rimes sont disposées de manière conventionnelle', ), - ), - LeSecondSizain = FACT(statut='o', ang="Introduction à l'érotisme", - LesVers=SIMP(statut='o', max=6, typ='TXM', into =[ 'Las ! voyez comme en peu d’espace,', 'Mignonne elle a dessus la place', 'Las! las ses beautez laissé cheoir !', 'O vrayment marastre Nature,', 'Puis qu’une telle fleur ne dure', 'Que du matin jusques au soir !',] , avecBlancs=True), - ), - LesCommentaires = SIMP(statut='o', max=6, typ='TXM', avecBlancs=True), - LesAnnotations = SIMP(statut='o', max=6, typ='TXM', avecBlancs=True), -) - - - - - - diff --git a/Tests/MappingAccasXsd/cata_LectureUserASSDMultiple.py b/Tests/MappingAccasXsd/cata_LectureUserASSDMultiple.py deleted file mode 100644 index 237522c1..00000000 --- a/Tests/MappingAccasXsd/cata_LectureUserASSDMultiple.py +++ /dev/null @@ -1,53 +0,0 @@ -# Copyright (C) 2008-2021 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, re -import Accas -from Accas import * -monFichier=os.path.abspath(__file__) - -JdC = JDC_CATA ( - code='Essai' - ) -VERSION_CATALOGUE='V_0' - -# tout est Facultatif car sinon, on ne peut pas supprimer et c 'est ce qu on veut tester - -class composant(ASSD):pass -class meshIdentifier(UserASSDMultiple):pass -class timeIdentifier(UserASSD):pass - - -TimeAspects = PROC(nom='TimeAspects', - TimeNature = SIMP(statut='o', typ='TXM', into = ['time1', 'time2']), - tID=SIMP(statut='o', typ=(timeIdentifier,'createObject')), -) - -SpatialAspects = PROC(nom='SpatialAspects', - MeshIdentifier = SIMP(statut='o', typ=(meshIdentifier,'createObject'),max='**',), -) - - -Component = OPER(nom='Component', sd_prod=composant, - LesMeshIdentifiers = SIMP(statut='o', max ='**', typ = meshIdentifier), - LeMeshIdentifier = SIMP(statut='o', typ = meshIdentifier), - LesTemps = SIMP(statut='o', typ=timeIdentifier,max = '**'), - LeTemps = SIMP(statut='o', typ=timeIdentifier,), -) - diff --git a/Tests/MappingAccasXsd/cata_MemesNoms.py b/Tests/MappingAccasXsd/cata_MemesNoms.py deleted file mode 100644 index e0fcbeac..00000000 --- a/Tests/MappingAccasXsd/cata_MemesNoms.py +++ /dev/null @@ -1,43 +0,0 @@ -# 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, re -import Accas -from Accas import * -monFichier=os.path.abspath(__file__) - -JdC = JDC_CATA ( - code='Essai' - ) -VERSION_CATALOGUE='V_0' - -# tout est Facultatif car sinon, on ne peut pas supprimer et c 'est ce qu on veut tester - - -MonProc = PROC( nom='MonProc', - FInt = FACT ( statut ='o', - monObjet=SIMP(statut ='o', typ ='I'), - ), - FFloat = FACT ( statut ='o', - monObjet=SIMP(statut ='o', typ ='R'), - ), - FText = FACT ( statut ='o', - monObjet=SIMP(statut ='o', typ ='TXM'), - ) -) diff --git a/Tests/MappingAccasXsd/cata_MemesNoms_test_driver_0.comm b/Tests/MappingAccasXsd/cata_MemesNoms_test_driver_0.comm deleted file mode 100644 index 26a325c3..00000000 --- a/Tests/MappingAccasXsd/cata_MemesNoms_test_driver_0.comm +++ /dev/null @@ -1,6 +0,0 @@ - -MonProc(FInt=_F(monObjet=10,), - FFloat=_F(monObjet=11.0,), - FText=_F(monObjet='12',),); -#VERSION_CATALOGUE:V_0:FIN VERSION_CATALOGUE -#CHECKSUM:c52430ce2be95bcfba1cfc4e6df07615 -:FIN CHECKSUM \ No newline at end of file diff --git a/Tests/MappingAccasXsd/cata_Tuples.py b/Tests/MappingAccasXsd/cata_Tuples.py deleted file mode 100644 index 6817910e..00000000 --- a/Tests/MappingAccasXsd/cata_Tuples.py +++ /dev/null @@ -1,53 +0,0 @@ -# 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, re -import Accas -from Accas import * -monFichier=os.path.abspath(__file__) - -class Matrice: - def __init__(self,nbLigs=None,nbCols=None,methodeCalculTaille=None,formatSortie="ligne",valSup=None,valMin=None,structure=None,typElt='R',typEltInto=None, listeHeaders=None): - self.nbLigs=nbLigs - self.nbCols=nbCols - self.methodeCalculTaille=methodeCalculTaille - self.formatSortie=formatSortie - self.valSup=valSup - self.valMin=valMin - self.structure=structure - self.typElt=typElt - self.listeHeaders=listeHeaders - self.typEltInto=typEltInto - - -JdC = JDC_CATA ( - code = 'Essai', - fichierSource=monFichier, - ) -VERSION_CATALOGUE='V_0' -MODELE_NUM = PROC( nom = 'MODELE_NUM', - monTuple2 = SIMP(statut ="o",typ=Tuple(2),validators = VerifTypeTuple(('R','R'))), - monTuple3 = SIMP(statut ="o",typ=Tuple(3),validators = VerifTypeTuple(('R','I','TXM'))), - listeDeTuple2 = SIMP(statut ="o",typ=Tuple(2),validators = VerifTypeTuple(('R','R')),max='**'), - listeDeTuple3 = SIMP(statut ="o",typ=Tuple(3),validators = VerifTypeTuple(('R','I','TXM')),max='**'), - uneMatrice =SIMP( statut = "o", - typ = Matrice(nbLigs=3,nbCols=3, typElt='TXM', typEltInto=('U1','R1'), listeHeaders=None), - ), -) - diff --git a/Tests/MappingAccasXsd/cata_UserAssd.py b/Tests/MappingAccasXsd/cata_UserAssd.py deleted file mode 100644 index 0705699e..00000000 --- a/Tests/MappingAccasXsd/cata_UserAssd.py +++ /dev/null @@ -1,68 +0,0 @@ -# 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, re -import Accas -from Accas import * -monFichier=os.path.abspath(__file__) - -JdC = JDC_CATA ( - code='Essai' - ) -VERSION_CATALOGUE='V_0' - -# tout est Facultatif car sinon, on ne peut pas supprimer et c 'est ce qu on veut tester - -class laClasseUser(UserASSD): pass -class lASSD(ASSD): pass - -# En fait, cela n pas vraiment de sens que cela soit dans le fact -# ou si ? pour l instant on laisse de cote - -DefinitionDsFactDsOper = OPER( nom='DefinitionDsFactDsOper', sd_prod=lASSD, - unFact = FACT(statut='f', max="**", - creeUserAssd = SIMP( statut='f', typ = (laClasseUser,'createObject'),), - ), -) - -DefinitionDsSimpDsOper = OPER( nom='DefinitionDsSimpDsOper', sd_prod=lASSD, - creeUserAssd = SIMP( statut='f', typ = (laClasseUser,'createObject'),), -) - -DefinitionDsFactDsProc = PROC( nom='DefinitionDsFactDsProc', - unFact = FACT(statut='f', - creeUserAssd = SIMP( statut='f', typ = (laClasseUser,'createObject'),), - ), -) -DefinitionDsSimpDsProc = PROC( nom='DefinitionDsSimpDsProc', - creeUserAssd = SIMP( statut='f', typ = (laClasseUser,'createObject'),), -) - -DefinitionDsSimpListe = PROC( nom='DefinitionDsSimpListe', - creeUserAssd = SIMP( statut='f', typ = (laClasseUser,'createObject'),max='**'), -) - -UtiliseUserAssD = PROC( nom = 'UtiliseUserAssD', - utiliseListeUneListeUserAssd = SIMP(statut= 'o',typ= laClasseUser,max='**'), -) -UtiliseEtDefinitDsLeMemeProc = PROC( nom = 'UtiliseEtDefinitDsLeMemeProc', - utiliseUserAssd = SIMP(statut= 'o',typ= laClasseUser,max='**'), - creeUserAssd = SIMP( statut='f', typ = (laClasseUser,'createObject'),), -) - diff --git a/Tests/MappingAccasXsd/cata_UserAssdMultiple.py b/Tests/MappingAccasXsd/cata_UserAssdMultiple.py deleted file mode 100644 index 0b791760..00000000 --- a/Tests/MappingAccasXsd/cata_UserAssdMultiple.py +++ /dev/null @@ -1,138 +0,0 @@ -# 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, re -import Accas -from Accas import * -monFichier=os.path.abspath(__file__) - -JdC = JDC_CATA ( - code='Essai' - ) -VERSION_CATALOGUE='V_0' - -# tout est Facultatif car sinon, on ne peut pas supprimer et c 'est ce qu on veut tester - -class composant(ASSD):pass -class timeAspect(ASSD):pass -class modeleNumDuCompo(UserASSD):pass -class spatialRegion(UserASSD):pass -class meshIdentifier(spatialRegion):pass -class meshGroup(spatialRegion,UserASSDMultiple):pass -class timeIdentifier(UserASSDMultiple):pass -class timeIdentifier1(timeIdentifier):pass -class timeIdentifier2(timeIdentifier):pass - - -# Ceci n est pas possible -# on ne peut pas avoir 2 UserASSDMultiple avec des types differents -# qui ont le meme nom -TimeAspects = OPER(nom='TimeAspects', sd_prod=timeAspect, - TimeNature = SIMP(statut='o', typ='TXM', into = ['time1', 'time2']), - BlocTime1= BLOC( condition = 'TimeNature == "time1"', - timeID=SIMP(statut='o', typ=(timeIdentifier1,'createObject')), - attribut=SIMP(statut='o', typ='TXM', into = ['AttPourTime1possible2', 'AttPourTime1possible1']), - ), - BlocTime2= BLOC( condition = 'TimeNature == "time2"', - timeID=SIMP(statut='o', typ=(timeIdentifier2,'createObject')), - attribut=SIMP(statut='o', typ='TXM', into = ['AttPourTime2possible2', 'AttPourTime2possible1']), - ), -) - -SpatialAspects = PROC(nom='SpatialAspects', - SpatialDiscretization = FACT( statut='f', max="**", - MeshName = SIMP(statut='o', typ=(meshIdentifier,'createObject')), - GroupIdentifier = SIMP(statut='o', typ=(meshGroup,'createObject'),max='**',), - ), -) - - -Component = OPER(nom='Component', sd_prod=composant, - Identifier = SIMP(statut='o', typ=(modeleNumDuCompo,'createObject'),), - ModelType = SIMP(statut='o', typ='TXM', into = ('Particles', 'Fields'), position='usedByGetAttribut'), - # tests du Filtre : - #les 2 MC sont dans le même fact - BoundaryCondition1 = FACT( statut='f', - # ce qu'on met à jour forme de liste de tuple ( nomDuMc, xpath) - MeshName = SIMP(statut='o', typ=(meshIdentifier),max='**', metAJour=(('GroupIdentifier', 'self.parent'),),), - # filtre, 2 arguments - # Le premier est l'expression a appliquer sur les objets de type meshgroup. - # Les objets concernés sont ceux existants dans le contexte local du MC enrichi - # des MCs déclarés en deuxième argument du filtre. - # Le deuxieme argument est une liste de tuple ( nomDuMc, xpath). - # Les mots clés déclarés sont utilisés dans l'évaluation de l'expression définie dans le premier argument. - GroupIdentifier = SIMP(statut='o', typ=(meshGroup), - filtre=( '(set(MeshName).intersection(set(self.getParentsWithId().getListeUserASSD("MeshName"))) != set()) ', - (('MeshName', 'self.parent') ,), - )), - ), - #les 2 MC ne sont dans le même fact - # on peut avoir 2 BoudaryCondition2 - MeshIdentifiers = SIMP(statut='o', max ='**', typ = (meshIdentifier),metAJour=(('GroupIdentifier', 'self.parent.getChild("BoudaryCondition2")'),)), - BoudaryCondition2 = FACT( statut='f', max="**", - GroupIdentifier = SIMP(statut='o', typ=(meshGroup), - filtre=( '(set(MeshIdentifiers).intersection(set(self.getParentsWithId().getListeUserASSD("MeshName"))) != set()) ', - (('MeshIdentifiers', 'self.parent.parent') ,), - )), - ), - # Attention : - # etape n'a pas de getAllChild mais getChild a le comportement de getAllChild sur une etape - # attention, le dernier 'getChild' qui n'est pas explicité ( .getChild('GroupIds') ) dans l'expression est getChild et non getAllChild - # Du coup a faire : - # ajouter un getAllChild a MCCOMPO - # se decider sur comment traiter les blocs : dans MCLIST, getChild regarde dans les blocs et pas dans MCCOMPO - # - MeshId2 = SIMP(statut='o', max ='**', typ = (meshIdentifier),metAJour=(('GroupIds', 'self.parent.getChild("Liste1BC").getAllChild("Liste2BC").getAllChild("BCUnique")'),)), - Liste1BC = FACT(statut='f', max="**", - Liste2BC = FACT(statut='f', max="**", - BCUnique = FACT(statut='f', - GroupIds = SIMP(statut='o', typ=(meshGroup), - filtre=('(set(MeshId2).intersection(set(self.getParentsWithId().getListeUserASSD("MeshName"))) != set()) ', - (('MeshId2', 'self.parent.parent.parent.parent') ,), - ),), - ), - ), - ), - - - TimeCondition = FACT( statut='f', max="**", - timeIdentifiers = SIMP(statut='o', typ = timeIdentifier,metAJour=(('GroupIdentifier', 'self.parent.getChild("BoudaryCondition2")'),)), - AttributTime = SIMP(statut='o', typ='TXM', - # filtre=( '(set(MeshIdentifiers).intersection(set(self.getParentsWithId().getListeUserASSD("MeshName"))) != set()) ',), - ), - ), -) - -Interactions = PROC(nom='Interactions', - Interaction = FACT( max = '**', - Origine = SIMP(typ=modeleNumDuCompo, statut='o'), - Destination = SIMP(typ=modeleNumDuCompo, statut='o'), - monBlocFFFF = BLOC ( - condition = 'getEficasAttribut(origine,"ModelType") == "Fields" and getEficasAttribut(destination,"ModelType") == "Fields"' , - TermeLE = SIMP(typ='TXM', statut='o', into = ['Fields1','Fields2']), - ), - monBlocFFP = BLOC ( - condition = 'getEficasAttribut(origine,"ModelType")=="Particles" and getEficasAttribut(destination,"ModelType") == "Fields"' , - TermeLE = SIMP(typ='TXM', statut='o', into = ['ParticleFields1','ParticleFields2']), - ), - ), -) -dict_condition={ -'ModelType' : ('Interactions', 'Component'), -} diff --git a/Tests/MappingAccasXsd/cata_UserAssdMultiple_test_driver_1.comm b/Tests/MappingAccasXsd/cata_UserAssdMultiple_test_driver_1.comm deleted file mode 100644 index 23755c8d..00000000 --- a/Tests/MappingAccasXsd/cata_UserAssdMultiple_test_driver_1.comm +++ /dev/null @@ -1,37 +0,0 @@ -G2=meshGroup() -G1=meshGroup() -mmm=meshIdentifier() -mmmm2=meshIdentifier() -G3=meshGroup() -AA=modeleNumDuCompo() -t1=timeIdentifier1() -t2=timeIdentifier2() -montid1=timeIdentifier1() -monTid2=timeIdentifier2() - -T1=TimeAspects(TimeNature='time1', - timeID=montid1, - attribut='AttPourTime1possible2',); - -T2=TimeAspects(TimeNature='time2', - timeID=monTid2, - attribut='AttPourTime2possible1',); - -SpatialAspects(SpatialDiscretization=(_F(MeshName=mmm, - GroupIdentifier=(G2,G1,),), - _F(MeshName=mmmm2, - GroupIdentifier=(G2,G1,G3,),),),); - -C1=Component(Identifier=AA, - ModelType='Fields', - MeshIdentifiers=(mmm,), - MeshId2=(mmm,), - Liste1BC=(_F(Liste2BC=(_F(BCUnique=_F(GroupIds=None,),), - _F(BCUnique=_F(GroupIds=None,),), - _F(BCUnique=_F(GroupIds=None,),),),), - _F(Liste2BC=_F(BCUnique=_F(GroupIds=None,),),),),); - -Interactions(Interaction=_F(Origine=None, - Destination=None,),); -#VERSION_CATALOGUE:V_0:FIN VERSION_CATALOGUE -#CHECKSUM:e37c8ffb4485daf69dff01364ee2d558 -:FIN CHECKSUM \ No newline at end of file diff --git a/Tests/MappingAccasXsd/cata_UserAssd_test_driver_0.comm b/Tests/MappingAccasXsd/cata_UserAssd_test_driver_0.comm deleted file mode 100644 index 8c85b835..00000000 --- a/Tests/MappingAccasXsd/cata_UserAssd_test_driver_0.comm +++ /dev/null @@ -1,14 +0,0 @@ -V=laClasseUser() - -DefinitionDsFactDsProc(); - -OO=DefinitionDsSimpDsOper(); - -DefinitionDsSimpDsProc(); - -DefinitionDsSimpListe(); - -UtiliseEtDefinitDsLeMemeProc(utiliseUserAssd=(V,),); - -UtiliseUserAssD(utiliseListeUneListeUserAssd=(V,V,),); - diff --git a/Tests/MappingAccasXsd/cata_UserAssd_test_driver_1.comm b/Tests/MappingAccasXsd/cata_UserAssd_test_driver_1.comm deleted file mode 100644 index 0d4a7bc4..00000000 --- a/Tests/MappingAccasXsd/cata_UserAssd_test_driver_1.comm +++ /dev/null @@ -1,12 +0,0 @@ -essai=laClasseUser() -bbb=laClasseUser() - -UtiliseUserAssD(utiliseListeUneListeUserAssd=(essai,bbb,),); - -DefinitionDsSimpDsProc(creeUserAssd=essai,); - -Op1=DefinitionDsSimpDsOper(creeUserAssd=bbb,); - -UtiliseUserAssD(utiliseListeUneListeUserAssd=(essai,essai,bbb,bbb,),); -#VERSION_CATALOGUE:V_0:FIN VERSION_CATALOGUE -#CHECKSUM:1fd75f9f9ce1bc9262b74611e99a4977 -:FIN CHECKSUM \ No newline at end of file diff --git a/Tests/README b/Tests/README deleted file mode 100644 index 3b28d765..00000000 --- a/Tests/README +++ /dev/null @@ -1,37 +0,0 @@ -Pour executer tous les tests faire:: - - python run.py - -Pour executer seulement un module de test (testsimp1.py par exemple), faire:: - - python run.py testelem/testsimp1.py - -Un test correspond à l'exécution d'une méthode dont le nom commence par test ou Test -d'une classe dont le nom commence par test ou Test dans un module dont le nom -commence par test ou Test éventuellement dans un répertoire dont le nom commence -par test ou Test. - -Quelques tests dont le nom commence par futuretest ne sont pas exécutés. Ils identifient -des limites actuelles d'Accas. - -Certains tests doivent etre exécutés séparément à cause d'un problème d'import de catalogue. -En particulier, les tests d'ihm (testihm*.py) entrent dans cette catégorie. - -Par ordre de complexité : - - - testelem7 - - testelem - - - testcomm7 - - testcomm9 - - testcomm - - - testastest - - testastest9 - - - testihm9 - - testihm - - testihm7 - -Les tests suffixés 7 ou 9 sont spécifiques d'une version d'ASTER - diff --git a/Tests/compare.py b/Tests/compare.py deleted file mode 100644 index f81a49e1..00000000 --- a/Tests/compare.py +++ /dev/null @@ -1,68 +0,0 @@ -# -*- coding: iso-8859-1 -*- -import re - -BLANKLINE_MARKER = '' -ELLIPSIS_MARKER = '...' -True=1 -False=0 - -def check(want,got): - if got == want: return True - - # Replace in want with a blank line. - want = re.sub('(?m)^%s\s*?$' % re.escape(BLANKLINE_MARKER), - '', want) - # If a line in got contains only spaces, then remove the - # spaces. - got = re.sub('(?m)^\s*?$', '', got) - if got == want: - return True - - if _ellipsis_match(want, got): - return True - - return False - -def _ellipsis_match(want, got): - if ELLIPSIS_MARKER not in want: - return want == got - - # Find "the real" strings. - ws = want.split(ELLIPSIS_MARKER) - assert len(ws) >= 2 - - # Deal with exact matches possibly needed at one or both ends. - startpos, endpos = 0, len(got) - w = ws[0] - if w: # starts with exact match - if got.startswith(w): - startpos = len(w) - del ws[0] - else: - return False - w = ws[-1] - if w: # ends with exact match - if got.endswith(w): - endpos -= len(w) - del ws[-1] - else: - return False - - if startpos > endpos: - # Exact end matches required more characters than we have, as in - # _ellipsis_match('aa...aa', 'aaa') - return False - - # For the rest, we only need to find the leftmost non-overlapping - # match for each piece. If there's no overall match that way alone, - # there's no overall match period. - for w in ws: - # w may be '' at times, if there are consecutive ellipses, or - # due to an ellipsis at the start or end of `want`. That's OK. - # Search for an empty string succeeds, and doesn't change startpos. - startp = got.find(w, startpos, endpos) - if startp < 0: - return False - startpos = startp + len(w) - - return True diff --git a/Tests/config.py b/Tests/config.py deleted file mode 100644 index f6f6fb00..00000000 --- a/Tests/config.py +++ /dev/null @@ -1,8 +0,0 @@ -import sys -import prefs -ASTERDIR={ - "v7":"/local/chris/ASTER/instals/STA7/astest", - "v8":"/local/chris/ASTER/instals/STA8/astest", - "v9":"/local/chris/ASTER/instals/NEW9/astest", - } - diff --git a/Tests/editeur.ini b/Tests/editeur.ini deleted file mode 100644 index 55246c0f..00000000 --- a/Tests/editeur.ini +++ /dev/null @@ -1,57 +0,0 @@ -# CONFIGURATION MANAGEMENT OF EDF VERSION -# ====================================================================== -# COPYRIGHT (C) 1991 - 2002 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# -# -# ====================================================================== - -import os - -import prefs - -rep_cata = os.path.abspath(os.path.join(prefs.repIni,'../Aster/Cata')) -rep_Pmw = os.path.join(prefs.repIni,'../Pmw') - -# Accès à la documentation Aster -path_doc = os.path.join(rep_cata,'..','Doc') -exec_acrobat = "acroread" -# Utilisateur/Développeur -isdeveloppeur = "NON" -path_cata_dev = "/tmp/cata" -# Répertoire temporaire -rep_travail = "/tmp" -# Répertoire initial -initialdir=os.curdir - -# Choix des catalogues -#rep_mat=os.path.join(rep_cata,'..','materiau') -rep_mat_v7="/local/cchris/ASTER/instals/materiaux/STA7" -rep_mat_v8="/local/cchris/ASTER/instals/materiaux/STA8" -rep_mat_v9="/local/cchris/ASTER/instals/materiaux/NEW9" - -catalogues = ( - ('ASTER','petit',os.path.join(rep_cata,'petitcata'),'python'), - ('ASTER','v5.9',os.path.join(rep_cata,'cataSTA5'),'asterv5'), - ('ASTER','v6.8',os.path.join(rep_cata,'cataSTA6'),'python6'), - ('ASTER','v6',os.path.join(rep_cata,'cataSTA6'),'python6'), - ('ASTER','v7.7',os.path.join(rep_cata,'cataSTA7'),'python'), - ('ASTER','v7',os.path.join(rep_cata,'cataSTA7'),'python'), - ('ASTER','v8.4',os.path.join(rep_cata,'cataSTA8'),'python'), - ('ASTER','v8',os.path.join(rep_cata,'cataSTA8'),'python'), - ('ASTER','v9.1',os.path.join(rep_cata,'cataSTA9'),'python'), - ('ASTER','v9',os.path.join(rep_cata,'cataSTA9'),'python','defaut'), - ) - diff --git a/Tests/eficas_aster.py b/Tests/eficas_aster.py deleted file mode 100755 index 4cc3b2fe..00000000 --- a/Tests/eficas_aster.py +++ /dev/null @@ -1,32 +0,0 @@ -#!/usr/bin/env python -# -*- coding: utf-8 -*- -# maConfiguration MANAGEMENT OF EDF VERSION -# ====================================================================== -# COPYRIGHT (C) 1991 - 2002 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# -# -# ====================================================================== - -""" - Ce module sert à lancer EFICAS configuré pour Code_Aster -""" -# Modules Python - -# Modules Eficas -import prefs -from InterfaceTK import eficas_go - -eficas_go.lanceEficas() diff --git a/Tests/prefs.py b/Tests/prefs.py deleted file mode 100644 index c2f346ab..00000000 --- a/Tests/prefs.py +++ /dev/null @@ -1,115 +0,0 @@ -# -*- coding: utf-8 -*- -# maConfiguration MANAGEMENT OF EDF VERSION -# ====================================================================== -# COPYRIGHT (C) 1991 - 2002 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# -# -# ====================================================================== - -import os,sys - -# repIni sert à localiser le fichier editeur.ini -# Obligatoire -repIni=os.path.dirname(os.path.abspath(__file__)) - -# INSTALLDIR sert à localiser l'installation d'Eficas -# Obligatoire -INSTALLDIR=os.path.join(repIni,'..') - -# CODE_PATH sert à localiser Noyau et Validation éventuellement -# non contenus dans la distribution EFICAS -# Par défaut on utilise les modules de INSTALLDIR -# Peut valoir None (defaut) -CODE_PATH = None - -# la variable code donne le nom du code a selectionner -code="ASTER" - -# lang indique la langue utilisée pour les chaines d'aide : fr ou ang -lang='fr' - -# Codage des strings qui accepte les accents (en remplacement de 'ascii') -encoding='iso-8859-1' - - -EditeurDir=INSTALLDIR+"/Editeur" -sys.path[:0]=[INSTALLDIR] -sys.path[:0]=[INSTALLDIR+"/Aster"] - -ICONDIR=os.path.join(INSTALLDIR,'Editeur','icons') - -# Preference -if os.name == 'nt': - userprefs = os.sep.join( [ os.environ['HOMEDRIVE'], os.environ['HOMEPATH'], 'Eficas_install', 'prefs.py' ]) -else : - userprefs=os.path.expanduser("~/.Eficas_install/prefs.py") - -if os.path.isfile(userprefs): - try: - execfile(userprefs) - except: - pass - - -#------------------------------------------------------------------- -# Partie pour TK -#------------------------------------------------------------------- - -labels= ('Fichier','Edition','Jeu de commandes', - 'Options', - 'Aide', - 'Traduction', - ) - -appli_composants=['readercata','bureau', - 'options', - ] - -menu_defs={ 'bureau': [ - ('Fichier',[ - ('Nouveau','newJDC','','Ctrl+N'), - ('Nouvel INCLUDE','newJDC_include'), - ('Ouvrir','openJDC','','Ctrl+O'), - ('Enregistrer','saveJDC','','Ctrl+S'), - ('Enregistrer sous','saveasJDC','','Ctrl+E'), - None, - ('Fermer','closeJDC','','Ctrl+W'), - ('Quitter','exitEFICAS','','Ctrl+Q'), - ] - ), - ('Edition',[ - ('Copier','copy','','Ctrl+C'), - ('Couper','cut','','Ctrl+X'), - ('Coller','paste','','Ctrl+V'), - ] - ), - ('Jeu de commandes',[ - ('Rapport de validation','visuCRJDC','','Ctrl+R'), - ('Fichier source','visu_txt_brut_JDC','','Ctrl+B'), - #('Paramètres Eficas','affichage_fichier_ini'), - ] - ), - ('Traduction',[ - ('Traduction v7 en v8','TraduitFichier7'), - ('Traduction v8 en v9','TraduitFichier8','','Ctrl+T'), - ] - ), - ('Aide',[ - ('Aide EFICAS','aideEFICAS','','Ctrl+A'), - ] - ), - ] - } diff --git a/Tests/properties.py b/Tests/properties.py deleted file mode 100644 index 24a159bd..00000000 --- a/Tests/properties.py +++ /dev/null @@ -1,25 +0,0 @@ -#@ MODIF properties Accas DATE 26/10/2005 AUTEUR gcbhhhh M.ADMINISTRATEUR -# maConfiguration MANAGEMENT OF EDF VERSION -# RESPONSABLE D6BHHHH J-P.LEFEBVRE -# ====================================================================== -# COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# IDENTIFICATION DU GESTIONNAIRE DE COMMANDE ACCAS A PARTIR -# DE LA VERSION DU CODE_ASTER ASSOCIE -#---------------------------------------------------------------------- -version = "8.2.24" -date = "O1/06/2006" -exploit = False diff --git a/Tests/run.py b/Tests/run.py deleted file mode 100644 index 072e41fa..00000000 --- a/Tests/run.py +++ /dev/null @@ -1,201 +0,0 @@ -""" -This program executes all unitest tests that are found in - - directories with name test* or Test* - - files with name test* or Test* - -unitest tests are : - - functions and class with names test* or Test* - - methods with name test* or Test* from classes with name test* or Test* - -Typical uses are : - - - execute all tests with text output : python2.4 run.py - - execute all tests with html output : python2.4 run.py --html - - execute some tests with text output : python2.4 run.py testelem - - execute one test with text output : python2.4 run.py testelem/testsimp1.py - - execute all tests with verbosity and html output : python2.4 run.py -v --html -""" - -import sys,types,os -import sre -import unittest -from optparse import Optionparser - -import config - -testMatch = sre.compile(r'^[Tt]est') - -class TestSuite(unittest.TestSuite): - ignore=[] - loader = unittest.defaultTestLoader - - def __init__(self, names=[]): - self.names=names - super(TestSuite,self).__init__() - tests=self.collectTests() - self.addTests(tests) - - def _import(self,name): - mod = __import__(name,{},{}) - components = name.split('.') - for comp in components[1:]: - mod = getattr(mod,comp) - return mod - - def importdir(self,rep,path): - init = os.path.abspath(os.path.join(path,'__init__.py')) - if os.path.isfile(init): - package=self._import(rep) - if package: - return TestPackageSuite(package) - else: - return TestDirectorySuite(path) - - def importfile(self,item,path): - root, ext = os.path.splitext(item) - if ext != '.py': - return - if root.find('/') >= 0: - dirname, file = os.path.split(path) - root, ext = os.path.splitext(file) - sys.path.insert(0,dirname) - mod=self._import(root) - sys.path.remove(dirname) - else: - mod=self._import(root) - return ModuleTestSuite(mod) - - def collectTests(self): - if self.names: - entries=self.names - else: - entries = [ item for item in os.listdir(os.getcwd()) - if item.lower().find('test') >= 0 ] - self.path=os.getcwd() - return self._collectTests(entries) - - def _collectTests(self,entries): - tests=[] - for item in entries: - if (item[0] == '.' - or item in self.ignore - or not testMatch.search(item)): - continue - path=os.path.abspath(os.path.join(self.path,item)) - if os.path.isfile(path): - t=self.importfile(item,path) - if t:tests.append(t) - elif os.path.isdir(path): - tests.append(self.importdir(item,path)) - return tests - -class TestDirectorySuite(TestSuite): - def __init__(self,path): - self.path=path - super(TestDirectorySuite,self).__init__() - - def collectTests(self): - tests=[] - if self.path: - sys.path.insert(0,self.path) - entries = os.listdir(self.path) - entries.sort() - tests=self._collectTests(entries) - sys.path.remove(self.path) - return tests - -class TestPackageSuite(TestDirectorySuite): - def __init__(self,package): - self.package=package - path=os.path.abspath(os.path.dirname(self.package.__file__)) - super(TestPackageSuite,self).__init__(path) - - def importdir(self,item,path): - init = os.path.abspath(os.path.join(path,'__init__.py')) - if os.path.isfile(init): - name="%s.%s" % (self.package.__name__,item) - package=self._import(name) - if package: - return TestPackageSuite(package) - else: - return TestDirectorySuite(path) - - def importfile(self,item,path): - root, ext = os.path.splitext(item) - if ext != '.py': - return - name="%s.%s" % (self.package.__name__,root) - mod=self._import(name) - return ModuleTestSuite(mod) - -class ModuleTestSuite(TestSuite): - - def __init__(self, module): - self.module = module - super(ModuleTestSuite,self).__init__() - - def collectTests(self): - def cmpLineNo(a,b): - a_ln = a.func_code.co_firstlineno - b_ln = b.func_code.co_firstlineno - return cmp(a_ln,b_ln) - - entries = dir(self.module) - tests = [] - func_tests = [] - for item in entries: - test = getattr(self.module,item) - if (isinstance(test, (type, types.ClassType)) - and issubclass(test,unittest.TestCase)): - if testMatch.search(item): - [ tests.append(case) for case in - self.loader.loadTestsFromTestCase(test)._tests ] - elif callable(test) and testMatch.search(item): - # simple functional test - func_tests.append(test) - - # run functional tests in the order in which they are defined - func_tests.sort(cmpLineNo) - [ tests.append(unittest.FunctionTestCase(test)) - for test in func_tests ] - return tests - - -class TestProgram(unittest.TestProgram): - USAGE=""" -""" - def __init__(self): - self.testRunner = None - self.verbosity = 1 - self.html=0 - self.parseArgs(sys.argv) - if self.html: - import HTMLTestRunner - self.testRunner = HTMLTestRunner.HTMLTestRunner(verbosity=self.verbosity) - self.createTests() - self.runTests() - - def parseArgs(self,argv): - parser = Optionparser(usage=self.USAGE) - parser.add_option("-v","--verbose",action="count", - dest="verbosity",default=1, - help="Be more verbose. ") - parser.add_option("--html",action="store_true", - dest="html",default=0, - help="Produce HTML output ") - - options, args = parser.parse_args(argv) - self.verbosity = options.verbosity - self.html=options.html - - if args: - self.names = list(args) - if self.names[0] == 'run.py': - self.names = self.names[1:] - - def createTests(self): - self.test = TestSuite(self.names) - -if __name__ == "__main__": - TestProgram() - diff --git a/Tests/style.py b/Tests/style.py deleted file mode 100644 index 0d387727..00000000 --- a/Tests/style.py +++ /dev/null @@ -1,63 +0,0 @@ -# -*- coding: utf-8 -*- -""" -Pour modifier le style d'EFICAS il faut ajouter un fichier style.py qui contiendra les -informations sur le style voulu dans son repertoire Eficas_install. - -La methode la plus simple consiste à modifier directement les attributs de l'objet style dans le -fichier style.py d'Eficas_install. Exemple:: - - style.background='yellow' - -pour modifier la couleur du background. - -Il existe une autre méthode qui peut être utilisée quand on veut modifier plusieurs propriétés à la fois. - -Le fichier style.py doit définir une nouvelle classe qui dérive de la classe de base STYLE avec des attributs -de classe qui définiront le nouveau style (par exemple, si on veut modifier le background):: - - class STYLE(STYLE): - background='yellow' - -Il faut ensuite instancier cette classe, dans ce meme fichier, en donnant le nom style à l'objet cree:: - - style=STYLE() - -Tous les attributs de classe possibles sont visibles dans le module Editeur/basestyle.py:: - - background='gray90' - foreground='black' - entry_background='white' - list_background='white' - list_select_background='#00008b' - list_select_foreground='grey' - tooltip_background="yellow" - - standard = ("Helvetica",12) - standard_italique = ("Helvetica",12,'italic') - standard_gras = ("Helvetica",12,'bold') - standard_gras_souligne = ("Helvetica",12,'bold','underline') - - canvas = ('Helvetica',10) - canvas_italique = ('Helvetica',10,'italic') - canvas_gras = ("Helvetica",10,'bold') - canvas_gras_italique = ("Helvetica",12,'bold','italic') - - standard12 = ("Helvetica",14) - standard12_gras = ("Helvetica",14,'bold') - standard12_gras_italique = ( "Helvetica",14,'bold','italic') - - -Le fichier style.py contenu dans le répertoire Aster permet de spécifier des propriétés globales pour une installation. -Les modifications de style contenues dans ce fichier et dans le fichier style.py d'Eficas_install -sont prises en compte dans cet ordre. -""" - - -style.background='gray90' -style.foreground='black' -style.standard = ("Helvetica",10) -style.standard_italique = ("Helvetica",10,'italic') -style.standard_gras = ("Helvetica",10,'bold') -style.canvas_italique = ('Helvetica',10,'italic') -style.canvas_gras = ("Helvetica",10,'bold') -style.statusfont = ("Helvetica",14) diff --git a/Tests/testConstruction/.useCaseAssd.py.swp b/Tests/testConstruction/.useCaseAssd.py.swp deleted file mode 100644 index 876f1857..00000000 Binary files a/Tests/testConstruction/.useCaseAssd.py.swp and /dev/null differ diff --git a/Tests/testConstruction/avecDesAssd.py b/Tests/testConstruction/avecDesAssd.py deleted file mode 100644 index d267b08d..00000000 --- a/Tests/testConstruction/avecDesAssd.py +++ /dev/null @@ -1,44 +0,0 @@ -def CreeUneASSD(Unite) : - return ('toto') - -def UtiliseUneASSD(MonASSD): - print (MonASSD) - - -class maClasseUser : - def __init__(self): - print ('je cree un objet utilisateur') - - -def creeUneASSDDansUnSimp(UneSeuleASSD): - print ('je suis dans la fonction utilisateur) - - -# _______________ fin partie code metier ___________________ -# -def creeUnObjet(classe,reference,*args,**kwargs) : - if args == {} : obj=classe(**kwargs) - else : obj=classe(*args,**kwargs) - globals()[reference]=obj - -def decoratorCreeUnObjet(maFonction,maClasse): - def maFonctionAvecCreation(*args, **kwargs): - creeUnObjet(*args,**args) - maFonction(*args, **kwargs) - return maFonctionAvecCreation(*args, **kwargs) - -creeUneASSDDansUnSimp = decoratorCreeUnObjet(creeUneASSDDansUnSimp,maClasseUser) -# ------------------------------------------------------------------- - -creeUneUserASSDDansUnSimp(UneSeuleASSD='MaRef',); -UtiliseUneUserASSD(MonUserASSD=MaRef); - -#MonAssd=CreeUneASSD(Unite=1,); -#UtiliseUneASSD(MonASSD=MonAssd,); - -#MaRef=maClasseUser('MaRef') -#CreeUneUserASSDDansUnSimp(UneSeuleASSD=MaRef,); - -#UtiliseUneUserASSD(MonUserASSD='MaRef',); -#VERSION_CATALOGUE:V_0:FIN VERSION_CATALOGUE -#CHECKSUM:c908ade781fa6592ac27485ea2f9b939 -:FIN CHECKSUM diff --git a/Tests/testConstruction/cata_Assd.py b/Tests/testConstruction/cata_Assd.py deleted file mode 120000 index 6b47b948..00000000 --- a/Tests/testConstruction/cata_Assd.py +++ /dev/null @@ -1 +0,0 @@ -../../CatasDeTests/cata_Assd.py \ No newline at end of file diff --git a/Tests/testConstruction/cata_Assd_user.py b/Tests/testConstruction/cata_Assd_user.py deleted file mode 120000 index 2e1f6a84..00000000 --- a/Tests/testConstruction/cata_Assd_user.py +++ /dev/null @@ -1 +0,0 @@ -../../CatasDeTests/cata_Assd_user.py \ No newline at end of file diff --git a/Tests/testConstruction/comm_avec_userASSD.py b/Tests/testConstruction/comm_avec_userASSD.py deleted file mode 120000 index f4fb34b8..00000000 --- a/Tests/testConstruction/comm_avec_userASSD.py +++ /dev/null @@ -1 +0,0 @@ -comm_avec_userASSD.comm \ No newline at end of file diff --git a/Tests/testConstruction/comm_avec_userASSD.py_orig b/Tests/testConstruction/comm_avec_userASSD.py_orig deleted file mode 100644 index a50566be..00000000 --- a/Tests/testConstruction/comm_avec_userASSD.py_orig +++ /dev/null @@ -1,6 +0,0 @@ - -DefinitUneGeometrie(uneFaceDeLaGeometrie='Haut',); - -DefinitUneConditionAuxLimites(laFaceDeLaCL=Haut,); -#VERSION_CATALOGUE:V_0:FIN VERSION_CATALOGUE -#CHECKSUM:03040f7bb46466807f7c4d30b8180bbf -:FIN CHECKSUM diff --git a/Tests/testConstruction/creeAssd.py b/Tests/testConstruction/creeAssd.py deleted file mode 100755 index 8b0f6af2..00000000 --- a/Tests/testConstruction/creeAssd.py +++ /dev/null @@ -1,100 +0,0 @@ -#!/usr/bin/env python -# -*- coding: utf-8 -*- -# Copyright (C) 2007-2013 EDF R&D -# -# 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 -# -""" -lancement EFICAS ss Ihm -""" -from __future__ import absolute_import -from __future__ import print_function - -# On ajoute le path jusqu a eficas et celui ou on trouve le prefs_Code -import os, sys -sys.path.insert(0,'/home/A96028/QT5GitEficasTravail/eficas') -sys.path.insert(0,'/home/A96028/QT5GitEficasTravail/eficas/CatasDeTests') - -debug = True - -if __name__ == '__main__': - from InterfaceQT4.eficas_go import getEficasSsIhm - code='Essai' - versionCode="V2019" - - monEficasSsIhm = getEficasSsIhm(code=code,versionCode=versionCode) - monEficasSsIhm.initEditor() - monEditor = monEficasSsIhm.editor - if debug : print ('monEditor : ' , monEditor ) - - monJdc = monEditor.jdc - if debug : print ('monJdc : ' , monJdc ) - - index=-1 - - #TesteCreationASSD = True - TesteCreationASSD = 0 - if TesteCreationASSD : - index=index+1 - monJdc.addEntite('CreeUneASSD',index) - monEtape=monJdc.etapes[index] - monMC=monEtape.getChild('Unite') - monMC.setValeur(1) - monEtape.nommeSd('MonASSDCree') - print (monEtape.nom , " isValid : ", monEtape.isValid()) - - index=index+1 - monJdc.addEntite('UtiliseUneASSD',index) - monEtape=monJdc.etapes[index] - monMC=monEtape.getChild('MonASSD') - objetASSD=monMC.evalVal('MonASSDCree') - validType=monMC.verifType(objetASSD) - monMC.setValeur(objetASSD) - print (monEtape.nom , " isValid : ", monEtape.isValid()) - - TesteCreationUserASSDDansUnSimp = True - if TesteCreationUserASSDDansUnSimp : - index=index+1 - monJdc.addEntite('CreeUneUserASSDDansUnSimp',index) - monEtape=monJdc.etapes[index] - monMC=monEtape.getChild('UneSeuleASSD') - monMC.creeUserASSDetSetValeur('SIMPquiEstUneUserASSD') - monMCEnCreation = monMC - print (monEtape.nom , " isValid : ", monEtape.isValid()) - - monJdc.addEntite('UtiliseUneUserASSD',index) - monEtape=monJdc.etapes[index] - monMC=monEtape.getChild('MonUserASSD') - objetUserASSD=monMC.evalVal('SIMPquiEstUneUserASSD') - validType=monMC.verifType(objetUserASSD) - monMC.setValeur(objetUserASSD) - monMCEnUtilisation = monMC - print (monEtape.nom , " isValid : ", monEtape.isValid()) - - TesteRenommeUserASSDDansUnSimp = True - if TesteCreationUserASSDDansUnSimp : - monMCEnCreation.renommeSdCree('SimpUserAssd') - print (monMCEnUtilisation.isValid()) - - - - - - - - - diff --git a/Tests/testConstruction/litCommAvecAssd.py b/Tests/testConstruction/litCommAvecAssd.py deleted file mode 100755 index d6887d00..00000000 --- a/Tests/testConstruction/litCommAvecAssd.py +++ /dev/null @@ -1,50 +0,0 @@ -#!/usr/bin/env python -# -*- coding: utf-8 -*- -# Copyright (C) 2007-2013 EDF R&D -# -# 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 -# -""" -lancement EFICAS ss Ihm -""" -from __future__ import absolute_import -from __future__ import print_function - -# On ajoute le path jusqu a eficas et celui ou on trouve le prefs_Code -import os, sys -sys.path.insert(0,'/home/A96028/QT5GitEficasTravail/eficas') -sys.path.insert(0,'/home/A96028/QT5GitEficasTravail/eficas/CatasDeTests') - -debug = True - -if __name__ == '__main__': - from InterfaceQT4.eficas_go import getEficasSsIhm - code='Essai' - versionCode="V2019" - - monEficasSsIhm = getEficasSsIhm(code=code,versionCode=versionCode) - monFichier = './avecDesAssd.comm' - monHandler = monEficasSsIhm.fileOpen(monFichier) - if not monHandler : print (' souci!'); exit() - monHandler.viewJdcSource() - monHandler.viewJdcRapport() - - - - - - diff --git a/Tests/testConstruction/metier.py b/Tests/testConstruction/metier.py deleted file mode 100644 index d7d0c2f6..00000000 --- a/Tests/testConstruction/metier.py +++ /dev/null @@ -1,21 +0,0 @@ -class surfaceElementaire: - def __init__(self,*tup,**args) : - print ('_____________ surfaceElementaire ______________') - print ('dans le __init__ de la classe surfaceElementaire metier') - print ('arguments : ', tup, ' ', args) - print ('_____________ fin \n\n') - - -class mesDonnees: - def __init__(self,from,string) : - pass - -data=mesDonnees -def UneFonction (*tup, **args): - - -def DefinitUneGeometrie(uneFaceDeLaGeometrie) : - print ('dans la fonction metier DefinitUneGeometrie avec uneFaceDeLaGeometrie ', uneFaceDeLaGeometrie) - -def DefinitUneConditionAuxLimites(laFaceDeLaCL) : - print ('dans la fonction metier DefinitUneConditionAuxLimites avec laFaceDeLaCL ', laFaceDeLaCL) diff --git a/Tests/testastest/basetest.py b/Tests/testastest/basetest.py deleted file mode 100644 index 4bdda44f..00000000 --- a/Tests/testastest/basetest.py +++ /dev/null @@ -1,69 +0,0 @@ -import os,glob,sys -import unittest -import difflib - -from InterfaceTK import appli - -from config import ASTERDIR - -version="v8" - -def cdiff(text1,text2): - return " ".join(difflib.context_diff(text1.splitlines(1),text2.splitlines(1))) - -def make_tests(files): - class TestCase(unittest.TestCase): - app=None - - def setUp(self): - if self.app == None: - self.app=appli.STANDALONE(version=version) - pass - - def tearDown(self): - CONTEXT.unsetCurrentStep() - - i=0 - for f in glob.glob(os.path.join(ASTERDIR[version],files)): - ff=open(f) - text=ff.read() - ff.close() - if text.find("VISU_EFICAS='NON'") != -1:continue - for o in ('3','2','1','0','m'): - f=f[:-1]+o - if os.path.isfile(f):break - i=i+1 - name=os.path.splitext(os.path.basename(f))[0] - - exec """def test_%s(self,file="%s"): - "fichier:%s" - self.commtest(file) -""" % (name,f,f) - del i,f,ff,text,o,name - - def commtest(self,file): - """ Test generique""" - name=os.path.splitext(os.path.basename(file))[0] - errfile=os.path.join(os.path.dirname(__file__),name+".err") - err="" - if os.path.isfile(errfile): - f=open(errfile) - err=f.read() - f.close() - try: - j=self.app.openJDC(file=file) - if err == "": - assert j.isValid(),j.report() - else: - txt=str(j.report()) - assert txt == err,cdiff(err,txt) - j.supprime() - assert sys.getrefcount(j) == 2,sys.getrefcount(j) - except ValueError,e: - txt=str(e) - if err == "": - raise - else: - assert txt == err,cdiff(err,txt) - - return TestCase diff --git a/Tests/testastest/erreu01a.err b/Tests/testastest/erreu01a.err deleted file mode 100644 index 7bdc2e9b..00000000 --- a/Tests/testastest/erreu01a.err +++ /dev/null @@ -1,4 +0,0 @@ -Compilation impossible : File "erreu01a.comm", line 44 - UELAS=MECA_STATIQUE(MODELE=MOD, - ^ - SyntaxError: invalid syntax diff --git a/Tests/testastest/testaster1.py b/Tests/testastest/testaster1.py deleted file mode 100644 index 7aa1d9ed..00000000 --- a/Tests/testastest/testaster1.py +++ /dev/null @@ -1,5 +0,0 @@ -import basetest - -files="[a-l]*.comm" -TestCase=basetest.make_tests(files) -class TestCase(TestCase):pass diff --git a/Tests/testastest/testaster10.py b/Tests/testastest/testaster10.py deleted file mode 100644 index febe8cab..00000000 --- a/Tests/testastest/testaster10.py +++ /dev/null @@ -1,5 +0,0 @@ -import basetest - -files="z*.comm" -TestCase=basetest.make_tests(files) -class TestCase(TestCase):pass diff --git a/Tests/testastest/testaster2.py b/Tests/testastest/testaster2.py deleted file mode 100644 index 72c6892f..00000000 --- a/Tests/testastest/testaster2.py +++ /dev/null @@ -1,6 +0,0 @@ -import basetest - -files="[m-r]*.comm" -TestCase=basetest.make_tests(files) -class TestCase(TestCase):pass - diff --git a/Tests/testastest/testaster3.py b/Tests/testastest/testaster3.py deleted file mode 100644 index 230a79c1..00000000 --- a/Tests/testastest/testaster3.py +++ /dev/null @@ -1,5 +0,0 @@ -import basetest - -files="s[a-d]*.comm" -TestCase=basetest.make_tests(files) -class TestCase(TestCase):pass diff --git a/Tests/testastest/testaster4.py b/Tests/testastest/testaster4.py deleted file mode 100644 index c3217c72..00000000 --- a/Tests/testastest/testaster4.py +++ /dev/null @@ -1,5 +0,0 @@ -import basetest - -files="s[e-r]*.comm" -TestCase=basetest.make_tests(files) -class TestCase(TestCase):pass diff --git a/Tests/testastest/testaster5.py b/Tests/testastest/testaster5.py deleted file mode 100644 index 26851b9b..00000000 --- a/Tests/testastest/testaster5.py +++ /dev/null @@ -1,5 +0,0 @@ -import basetest - -files="ssl[a-l]*.comm" -TestCase=basetest.make_tests(files) -class TestCase(TestCase):pass diff --git a/Tests/testastest/testaster6.py b/Tests/testastest/testaster6.py deleted file mode 100644 index c779a122..00000000 --- a/Tests/testastest/testaster6.py +++ /dev/null @@ -1,5 +0,0 @@ -import basetest - -files="ssl[m-z]*.comm" -TestCase=basetest.make_tests(files) -class TestCase(TestCase):pass diff --git a/Tests/testastest/testaster7.py b/Tests/testastest/testaster7.py deleted file mode 100644 index 99f426c1..00000000 --- a/Tests/testastest/testaster7.py +++ /dev/null @@ -1,6 +0,0 @@ -import basetest - -files="ss[m-z]*.comm" -TestCase=basetest.make_tests(files) -class TestCase(TestCase):pass - diff --git a/Tests/testastest/testaster8.py b/Tests/testastest/testaster8.py deleted file mode 100644 index 04f45616..00000000 --- a/Tests/testastest/testaster8.py +++ /dev/null @@ -1,5 +0,0 @@ -import basetest - -files="s[t-z]*.comm" -TestCase=basetest.make_tests(files) -class TestCase(TestCase):pass diff --git a/Tests/testastest/testaster9.py b/Tests/testastest/testaster9.py deleted file mode 100644 index 4c561729..00000000 --- a/Tests/testastest/testaster9.py +++ /dev/null @@ -1,5 +0,0 @@ -import basetest - -files="[t-y]*.comm" -TestCase=basetest.make_tests(files) -class TestCase(TestCase):pass diff --git a/Tests/testastest9/basetest.py b/Tests/testastest9/basetest.py deleted file mode 100644 index ebab68d1..00000000 --- a/Tests/testastest9/basetest.py +++ /dev/null @@ -1,69 +0,0 @@ -import os,glob,sys -import unittest -import difflib - -from InterfaceTK import appli - -from config import ASTERDIR - -version="v9" - -def cdiff(text1,text2): - return " ".join(difflib.context_diff(text1.splitlines(1),text2.splitlines(1))) - -def make_tests(files): - class TestCase(unittest.TestCase): - app=None - - def setUp(self): - if self.app == None: - self.app=appli.STANDALONE(version=version) - pass - - def tearDown(self): - CONTEXT.unsetCurrentStep() - - i=0 - for f in glob.glob(os.path.join(ASTERDIR[version],files)): - ff=open(f) - text=ff.read() - ff.close() - if text.find("VISU_EFICAS='NON'") != -1:continue - for o in ('3','2','1','0','m'): - f=f[:-1]+o - if os.path.isfile(f):break - i=i+1 - name=os.path.splitext(os.path.basename(f))[0] - - exec """def test_%s(self,file="%s"): - "fichier:%s" - self.commtest(file) -""" % (name,f,f) - del i,f,ff,text,o,name - - def commtest(self,file): - """ Test generique""" - name=os.path.splitext(os.path.basename(file))[0] - errfile=os.path.join(os.path.dirname(__file__),name+".err") - err="" - if os.path.isfile(errfile): - f=open(errfile) - err=f.read() - f.close() - try: - j=self.app.openJDC(file=file) - if err == "": - assert j.isValid(),j.report() - else: - txt=str(j.report()) - assert txt == err,cdiff(err,txt) - j.supprime() - assert sys.getrefcount(j) == 2,sys.getrefcount(j) - except ValueError,e: - txt=str(e) - if err == "": - raise - else: - assert txt == err,cdiff(err,txt) - - return TestCase diff --git a/Tests/testastest9/erreu01a.err b/Tests/testastest9/erreu01a.err deleted file mode 100644 index 7bdc2e9b..00000000 --- a/Tests/testastest9/erreu01a.err +++ /dev/null @@ -1,4 +0,0 @@ -Compilation impossible : File "erreu01a.comm", line 44 - UELAS=MECA_STATIQUE(MODELE=MOD, - ^ - SyntaxError: invalid syntax diff --git a/Tests/testastest9/testaster1.py b/Tests/testastest9/testaster1.py deleted file mode 100644 index 7aa1d9ed..00000000 --- a/Tests/testastest9/testaster1.py +++ /dev/null @@ -1,5 +0,0 @@ -import basetest - -files="[a-l]*.comm" -TestCase=basetest.make_tests(files) -class TestCase(TestCase):pass diff --git a/Tests/testastest9/testaster10.py b/Tests/testastest9/testaster10.py deleted file mode 100644 index febe8cab..00000000 --- a/Tests/testastest9/testaster10.py +++ /dev/null @@ -1,5 +0,0 @@ -import basetest - -files="z*.comm" -TestCase=basetest.make_tests(files) -class TestCase(TestCase):pass diff --git a/Tests/testastest9/testaster2.py b/Tests/testastest9/testaster2.py deleted file mode 100644 index 72c6892f..00000000 --- a/Tests/testastest9/testaster2.py +++ /dev/null @@ -1,6 +0,0 @@ -import basetest - -files="[m-r]*.comm" -TestCase=basetest.make_tests(files) -class TestCase(TestCase):pass - diff --git a/Tests/testastest9/testaster3.py b/Tests/testastest9/testaster3.py deleted file mode 100644 index 230a79c1..00000000 --- a/Tests/testastest9/testaster3.py +++ /dev/null @@ -1,5 +0,0 @@ -import basetest - -files="s[a-d]*.comm" -TestCase=basetest.make_tests(files) -class TestCase(TestCase):pass diff --git a/Tests/testastest9/testaster4.py b/Tests/testastest9/testaster4.py deleted file mode 100644 index c3217c72..00000000 --- a/Tests/testastest9/testaster4.py +++ /dev/null @@ -1,5 +0,0 @@ -import basetest - -files="s[e-r]*.comm" -TestCase=basetest.make_tests(files) -class TestCase(TestCase):pass diff --git a/Tests/testastest9/testaster5.py b/Tests/testastest9/testaster5.py deleted file mode 100644 index 26851b9b..00000000 --- a/Tests/testastest9/testaster5.py +++ /dev/null @@ -1,5 +0,0 @@ -import basetest - -files="ssl[a-l]*.comm" -TestCase=basetest.make_tests(files) -class TestCase(TestCase):pass diff --git a/Tests/testastest9/testaster6.py b/Tests/testastest9/testaster6.py deleted file mode 100644 index c779a122..00000000 --- a/Tests/testastest9/testaster6.py +++ /dev/null @@ -1,5 +0,0 @@ -import basetest - -files="ssl[m-z]*.comm" -TestCase=basetest.make_tests(files) -class TestCase(TestCase):pass diff --git a/Tests/testastest9/testaster7.py b/Tests/testastest9/testaster7.py deleted file mode 100644 index 99f426c1..00000000 --- a/Tests/testastest9/testaster7.py +++ /dev/null @@ -1,6 +0,0 @@ -import basetest - -files="ss[m-z]*.comm" -TestCase=basetest.make_tests(files) -class TestCase(TestCase):pass - diff --git a/Tests/testastest9/testaster8.py b/Tests/testastest9/testaster8.py deleted file mode 100644 index 04f45616..00000000 --- a/Tests/testastest9/testaster8.py +++ /dev/null @@ -1,5 +0,0 @@ -import basetest - -files="s[t-z]*.comm" -TestCase=basetest.make_tests(files) -class TestCase(TestCase):pass diff --git a/Tests/testastest9/testaster9.py b/Tests/testastest9/testaster9.py deleted file mode 100644 index 4c561729..00000000 --- a/Tests/testastest9/testaster9.py +++ /dev/null @@ -1,5 +0,0 @@ -import basetest - -files="[t-y]*.comm" -TestCase=basetest.make_tests(files) -class TestCase(TestCase):pass diff --git a/Tests/testcomm/a.11 b/Tests/testcomm/a.11 deleted file mode 100644 index 1723fcb9..00000000 --- a/Tests/testcomm/a.11 +++ /dev/null @@ -1 +0,0 @@ -MM=LIRE_MAILLAGE() diff --git a/Tests/testcomm/a.com0 b/Tests/testcomm/a.com0 deleted file mode 100644 index 04d1cc20..00000000 --- a/Tests/testcomm/a.com0 +++ /dev/null @@ -1,3 +0,0 @@ -POURSUITE() -MA=LIRE_MAILLAGE(INFO=inf) -FIN() diff --git a/Tests/testcomm/a.comm b/Tests/testcomm/a.comm deleted file mode 100644 index 665f63fe..00000000 --- a/Tests/testcomm/a.comm +++ /dev/null @@ -1,5 +0,0 @@ -DEBUT() -inf=1 -p2=inf+1 -p3=sin(p2) -FIN() diff --git a/Tests/testcomm/aa.comm b/Tests/testcomm/aa.comm deleted file mode 100644 index 124141b4..00000000 --- a/Tests/testcomm/aa.comm +++ /dev/null @@ -1,8 +0,0 @@ -DEBUT() -inf1=1 -MA=LIRE_MAILLAGE(INFO=inf1) -INCLUDE_MATERIAU( NOM_AFNOR='18MND5', TYPE_MODELE='REF', - VARIANTE='A', TYPE_VALE='NOMI', - NOM_MATER='MAT3', INFO=1 ) - -FIN() diff --git a/Tests/testcomm/b.comm b/Tests/testcomm/b.comm deleted file mode 100644 index 478973df..00000000 --- a/Tests/testcomm/b.comm +++ /dev/null @@ -1,9 +0,0 @@ -DEBUT() -a=1 -fmt_raison='-'*80+""" - - Exception erreur_Fatale interceptee - Raison : %s - -"""+'-'*80+'\n' -FIN() diff --git a/Tests/testcomm/c.comm b/Tests/testcomm/c.comm deleted file mode 100644 index 26c16b36..00000000 --- a/Tests/testcomm/c.comm +++ /dev/null @@ -1,49 +0,0 @@ -from Numeric import cos -DEBUT() -RAYCRA=1. -EPCRA=0.1 -S_CR=3.1415*(RAYCRA**2-(RAYCRA-EPCRA)**2) -T_CR=3.1415 -NOMF="nomfichier" -n=2 - -MA=LIRE_MAILLAGE( ) - -MO=AFFE_MODELE( MAILLAGE=MA, - #test de validateur GEOM (typ=grma) avec grma derive de GEOM - AFFE=(_F(GROUP_MA = ('LI1'), - PHENOMENE = 'MECANIQUE', - MODELISATION = 'DIS_TR'), - ), - INFO=2,); - -carel=[0.]*78 - -CAREG=AFFE_CARA_ELEM(MODELE=MO, - DISCRET=_F(GROUP_MA=('LI1'), - CARA = 'K_TR_L', - VALE = carel, - REPERE='LOCAL' , ), - ORIENTATION=(_F(GROUP_MA=('LI1',), - CARA='VECT_Y', - VALE=(0.,0.,1.),),), - AFFE_FIBRE =( _F(GROUP_MA='CRAYON', COOR_AXE_POUTRE = (0.,0.,), CARA='SURFACE', VALE=( 0.,S_CR/4,)), - _F(GROUP_MA='CRAYON', COOR_AXE_POUTRE = (0.,0.,), CARA='SURFACE', VALE=( 0.,T_CR,)), - _F(GROUP_MA='CRAYON', COOR_AXE_POUTRE = (0.,sin(n*22.5*pi/180),), CARA='SURFACE', VALE=( 0.,T_CR/4,)), - _F(GROUP_MA='CRAYON', COOR_AXE_POUTRE = (0.,(cos(n*22.5*pi/180)),), CARA='SURFACE', VALE=( 0.,T_CR/4,)), - ), - ); - -DEFI_FICHIER(UNITE=50, FICHIER='./REPE_OUT/zzzz206a_resu.mail') -#test de validateur LongStr avec parametre instance de PARAMETRE -DEFI_FICHIER(UNITE=50, FICHIER=NOMF) -#test de validateur LongStr avec parametre instance de Formula -u=DEFI_FICHIER( FICHIER=NOMF*2) -DEFI_FICHIER (ACTION='LIBERER',UNITE=50) -#test de validateur d'objet entier (typ='I'), instance de la classe entier -DEFI_FICHIER (ACTION='LIBERER',UNITE=u) - -# test de validateur qui accepte tout (typ=assd) -IMPR_CO(CONCEPT=_F(NOM=MA)) - -FIN() diff --git a/Tests/testcomm/cabri02a.comm b/Tests/testcomm/cabri02a.comm deleted file mode 100755 index 4c858c6f..00000000 --- a/Tests/testcomm/cabri02a.comm +++ /dev/null @@ -1,78 +0,0 @@ -# MODIF DATE 07/03/2005 AUTEUR CIBHHLV L.VIVAN -# RESPONSABLE MABBAS M.ABBAS -# -# TITRE TEST DE REFERENCE POUR LA MACRO DE CALCUL DE BRIDES CABRI -# CONFIGURATION MANAGEMENT OF EDF VERSION -# ====================================================================== -# COPYRIGHT (C) 1991 - 2003 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== - -DEBUT(CODE=_F( NOM = 'CABRI02A',NIV_PUB_WEB='INTRANET')); - -# DEFINITION DES DONNEES MATERIAUX - -# Temperature initiale, assemblage libre de contraintes -TEMP_INI=25.0; - -# Temperature moyenne du transitoire pour calcul de lambda et rhoCp -TEMP_MOY = 170.0; - -INCLUDE_MATERIAU(NOM_AFNOR='Z2CN1810', - TYPE_MODELE='REF', - VARIANTE='A', - TYPE_VALE='NOMI', - NOM_MATER='MA_BRI', - EXTRACTION=_F(COMPOR='THER', - TEMP_EVAL= TEMP_MOY,), - UNITE_LONGUEUR='MM'); - -INCLUDE_MATERIAU(NOM_AFNOR='Z12CN13', - TYPE_MODELE='REF', - VARIANTE='A', - TYPE_VALE='NOMI', - NOM_MATER='MA_ECR', - EXTRACTION=_F(COMPOR='THER', - TEMP_EVAL= TEMP_MOY,), - UNITE_LONGUEUR='MM',); - -INCLUDE_MATERIAU(NOM_AFNOR='Z12CN13', - TYPE_MODELE='REF', - VARIANTE='A', - TYPE_VALE='NOMI', - NOM_MATER='MA_RON', - EXTRACTION=_F(COMPOR='THER', - TEMP_EVAL= TEMP_MOY,), - UNITE_LONGUEUR='MM',); - -INCLUDE_MATERIAU(NOM_AFNOR='Z2CN1810', - TYPE_MODELE='REF', - VARIANTE='A', - TYPE_VALE='NOMI', - NOM_MATER='MA_GOU', - EXTRACTION=_F(COMPOR='THER', - TEMP_EVAL= TEMP_MOY,), - UNITE_LONGUEUR='MM',); - -INCLUDE_MATERIAU(NOM_AFNOR='Z6CND1712', - TYPE_MODELE='REF', - VARIANTE='A', - TYPE_VALE='NOMI', - NOM_MATER='MA_LIM', - EXTRACTION=_F(COMPOR='THER', - TEMP_EVAL= TEMP_MOY,), - UNITE_LONGUEUR='MM',); - -FIN(); diff --git a/Tests/testcomm/d.comm b/Tests/testcomm/d.comm deleted file mode 100644 index 06bd2405..00000000 --- a/Tests/testcomm/d.comm +++ /dev/null @@ -1,4 +0,0 @@ -DEBUT() -a=1 -MA=LIRE_MAILLAGE() -FIN() diff --git a/Tests/testcomm/e.comm b/Tests/testcomm/e.comm deleted file mode 100644 index 15bf3261..00000000 --- a/Tests/testcomm/e.comm +++ /dev/null @@ -1,70 +0,0 @@ -DEBUT() -MAYA=LIRE_MAILLAGE() - -MAYA=DEFI_GROUP( reuse=MAYA, MAILLAGE=MAYA, - CREA_GROUP_MA=_F( NOM = 'TOUT', TOUT = 'OUI')) - -BARRE1=AFFE_MODELE( MAILLAGE=MAYA, - AFFE=_F( GROUP_MA='SS1', - MODELISATION = 'POU_D_E', - PHENOMENE = 'MECANIQUE')) -# -MATERIO1=DEFI_MATERIAU( ELAS=_F( RHO = 1.E08, NU = 0.3, E = 1.E10)) - -MATERIO2=DEFI_MATERIAU( ELAS=_F( RHO = 0., NU = 0., E = 1.E15)) -# -CHMAT=AFFE_MATERIAU( MAILLAGE=MAYA,AFFE=( - #_F( TOUT = 'OUI', MATER = MATERIO1), - _F( GROUP_MA = 'SS1', MATER = MATERIO1), - _F( GROUP_MA = 'SS2', MATER = MATERIO1), - _F( GROUP_MA = 'SS3', MATER = MATERIO1), - _F( GROUP_MA = 'RIGIDE', MATER = MATERIO2), -)) # commentaire test - -CARA1=AFFE_CARA_ELEM( MODELE=BARRE1, - POUTRE=_F( - GROUP_MA = 'TOUT', - SECTION = 'CERCLE', - CARA = ('R', 'EP',), - VALE = (0.1, 0.01,))) - -GUIDAGE1=AFFE_CHAR_MECA( MODELE=BARRE1,DDL_IMPO=( - _F( GROUP_MA='SS1', - DX = 0., DZ = 0., DRX = 0., DRY = 0.), - _F( GROUP_NO = 'L1', DY = 0., DRZ = 0.), - )) - -K_ELEM1=CALC_MATR_ELEM( MODELE=BARRE1, - CARA_ELEM=CARA1, - CHAM_MATER=CHMAT, - OPTION='RIGI_MECA', - CHARGE=GUIDAGE1) - -NUM1=NUME_DDL( MATR_RIGI=K_ELEM1) - -# -K_ASSE1=ASSE_MATRICE( MATR_ELEM=K_ELEM1, - NUME_DDL=NUM1) - -MODESTA1=MODE_STATIQUE( MATR_RIGI=K_ASSE1, - MODE_STAT=_F( - GROUP_NO=('L12'), - AVEC_CMP = ('DY','DRZ'), - )) - -# parse: -affectation - -DS1=[None]*5 -DS2=[None]*5 -DS3=[None]*5 -DS4=[None]*5 -CHS1=[None]*5 -CHS2=[None]*5 - -# parse: +affectation - -#for k in range(1,5): -# DS1[k] = CREA_CHAMP( OPERATION='EXTR', TYPE_CHAM='NOEU_DEPL_R', -# RESULTAT= MODESTA1, NUME_ORDRE=k, NOM_CHAM = 'DEPL'); - -FIN() diff --git a/Tests/testcomm/efica01a.11 b/Tests/testcomm/efica01a.11 deleted file mode 100644 index bec37b5b..00000000 --- a/Tests/testcomm/efica01a.11 +++ /dev/null @@ -1,19 +0,0 @@ -DEPL2 = FORMULE(NOM_PARA='INST',VALE='sin(OMEGAA*INST)/(OMEGAA**xx)') -DEPLACE2=CALC_FONC_INTERP( FONCTION=DEPL2, - LIST_PARA=L_INST, - NOM_PARA='INST', - PROL_DROITE='LINEAIRE', - PROL_GAUCHE='LINEAIRE', - NOM_RESU='DEPL' ) - -MONO_X=CALC_CHAR_SEISME( MATR_MASS=MASSE, - DIRECTION=( 1., 0., 0.,), - MONO_APPUI='OUI' ) - - -MACRO_PROJ_BASE(BASE=MODE_MEC,MATR_ASSE_GENE=( - _F( MATRICE = CO("MASS_GEN"), MATR_ASSE = MASSE), - _F( MATRICE = CO("RIGI_GEN"), MATR_ASSE = RIGIDITE)), - VECT_ASSE_GENE=_F( VECTEUR = CO("VECT_X"), VECT_ASSE = MONO_X) - ) - diff --git a/Tests/testcomm/efica01a.com0 b/Tests/testcomm/efica01a.com0 deleted file mode 100755 index 25134e98..00000000 --- a/Tests/testcomm/efica01a.com0 +++ /dev/null @@ -1,49 +0,0 @@ -POURSUITE(CODE=_F( NOM = 'EFICA01A')) - -INCLUDE_MATERIAU( NOM_AFNOR='18MND5', TYPE_MODELE='REF', - VARIANTE='A', TYPE_VALE='NOMI', - NOM_MATER='MAT3', INFO=1 ) - -CHMAT3=AFFE_MATERIAU( MAILLAGE=MAILLA3, - AFFE=_F( TOUT='OUI', MATER = MAT3, TEMP_REF = 20.)) - -riginor = 2.88E7 - -TRAN_GE2=DYNA_TRAN_MODAL( MASS_GENE=MGEN_BIC, RIGI_GENE=RGEN_BIC, - METHODE='EULER', - AMOR_REDUIT=( 0.07, 0.07, ), - MODE_STAT=MSTA_BIC,EXCIT=( - _F( VECT_GENE = VECT_X1, ACCE = ACCELER1, - MULT_APPUI = 'OUI', - DIRECTION = ( 1., 0., 0.,), NOEUD = 'NO1', - VITE = VITESSE1, DEPL = DEPLACE1), - _F( VECT_GENE = VECT_X2, ACCE = ACCELER2, - MULT_APPUI = 'OUI', - DIRECTION = ( 1., 0., 0.,), NOEUD = 'NO11', - VITE = VITESSE2, DEPL = DEPLACE2)), - CHOC=_F( GROUP_NO_1 = 'MASSES1', - GROUP_NO_2 = 'MASSES2', - OBSTACLE = GRILLE, - INTITULE = 'NO2/NO12', - NORM_OBST = (0., 0., 1.,), - DIST_1 = 0.4495, - DIST_2 = 0.4495, - RIGI_NOR = riginor, - AMOR_NOR = 0., - RIGI_TAN = 0., - COULOMB = 0.), - INCREMENT=_F( INST_INIT = 0., INST_FIN = 1., PAS = 0.00025), - ARCHIVAGE=_F( PAS_ARCH = 8) - ) - -LISTIMP=DEFI_LIST_REEL( DEBUT=0., - INTERVALLE=_F( JUSQU_A = 1., NOMBRE = 500)) - -RESUA1=REST_BASE_PHYS( RESU_GENE=TRAN_GE1, - LIST_INST=LISTIMP, - INTERPOL='LIN', - NOM_CHAM='DEPL', - MULT_APPUI='OUI' - ) - -FIN() diff --git a/Tests/testcomm/efica01a.comm b/Tests/testcomm/efica01a.comm deleted file mode 100755 index 20eea866..00000000 --- a/Tests/testcomm/efica01a.comm +++ /dev/null @@ -1,275 +0,0 @@ -# MODIF DATE 20/09/2004 AUTEUR DURAND C.DURAND -# TITRE TEST DE NON REGRESSION DE L IHM EFICAS - DERIVE DE SDND102A -# CONFIGURATION MANAGEMENT OF EDF VERSION -# ====================================================================== -# COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# Ce cas test est gere en configuration dans la base ASTER, il sert de -# modele pour prononcer la recette de l IHM d EFICAS : l objectif est de -# pouvoir recreer ce test a l identique dans EFICAS a partir d une page -# blanche. -# On a donc essaye d y placer toutes les commandes un peu particulieres -# du langage de commandes d ASTER -# -# Il s agit en fait du test SDND102A auquel on a ajoute : -# la definition d un parametre (VAL) -# l inclusion d un fichier (INCLUDE) -# une poursuite (POURSUITE) -# Il contient ainsi : -# des parametres, des formules, des macros, des mots cles facteurs repetes -# (y compris conditionnes par des regles : calc_fonction / COMB), -# des blocs (mode_iter_simult,calc_char_seisme), un defi_valeur, un parametre. -# -# -# Il faudra y associer quelques recommandations pour la recette : -# - verifier qu en ouvrant le .com0, il demande bien a browser le .comm puis, en cascade, le .11 -# - verifier qu on peut bien supprimer une commande, un mot cle simple et facteur -# - verifier les acces a la doc -# -# - - -DEBUT(CODE=_F(NOM='EFICA01A',NIV_PUB_WEB='INTERNET',VISU_EFICAS='NON'),) - -MAILLAGE=LIRE_MAILLAGE() - -MAILLAGE=DEFI_GROUP(reuse=MAILLAGE, - MAILLAGE=MAILLAGE, - CREA_GROUP_NO=(_F(NOEUD='NO2', - NOM='MASSES',), - _F(NOEUD='NO1', - NOM='ENCASTRE',),),) - -MAILLA2=LIRE_MAILLAGE(UNITE=21,) - -MODELE=AFFE_MODELE(MAILLAGE=MAILLAGE, - AFFE=(_F(GROUP_MA='RESSORT', - PHENOMENE='MECANIQUE', - MODELISATION='DIS_T',), - _F(GROUP_NO='MASSES', - PHENOMENE='MECANIQUE', - MODELISATION='DIS_T',),),) - -BICHOC=AFFE_MODELE(MAILLAGE=MAILLA2, - AFFE=(_F(GROUP_MA='RESSORTS', - PHENOMENE='MECANIQUE', - MODELISATION='DIS_T',), - _F(GROUP_NO=('MASSES1','MASSES2',), - PHENOMENE='MECANIQUE', - MODELISATION='DIS_T',),),) -VAL = 98696.0 - - -CARA_ELE=AFFE_CARA_ELEM(MODELE=MODELE, - DISCRET=(_F(GROUP_MA='RESSORT', - REPERE='GLOBAL', - CARA='K_T_D_L', - VALE=(VAL,0.0,0.0,),), - _F(GROUP_NO='MASSES', - CARA='M_T_D_N', - VALE=25.0,),),) - -CARA_BIC=AFFE_CARA_ELEM(MODELE=BICHOC, - DISCRET=(_F(GROUP_MA='RESSORTS', - REPERE='GLOBAL', - CARA='K_T_D_L', - VALE=(VAL,0.0,0.0,),), - _F(GROUP_NO='MASSES1', - CARA='M_T_D_N', - VALE=25.0,), - _F(GROUP_NO='MASSES2', - CARA='M_T_D_N', - VALE=25.0,),),) - -CON_LIM=AFFE_CHAR_MECA(MODELE=MODELE, - DDL_IMPO=(_F(GROUP_NO='ENCASTRE', - DX=0.0, - DY=0.0, - DZ=0.0,), - _F(GROUP_NO='MASSES', - DY=0.0, - DZ=0.0,),),) - -CL_BICHO=AFFE_CHAR_MECA(MODELE=BICHOC, - DDL_IMPO=(_F(GROUP_NO='ENCBICHO', - DX=0.0, - DY=0.0, - DZ=0.0,), - _F(GROUP_NO=('MASSES1','MASSES2',), - DY=0.0, - DZ=0.0,),),) - -MACRO_MATR_ASSE(MODELE=MODELE, - CARA_ELEM=CARA_ELE, - CHARGE=CON_LIM, - NUME_DDL=CO('NUMEDDL'), - MATR_ASSE=(_F(MATRICE=CO('RIGIDITE'), - OPTION='RIGI_MECA',), - _F(MATRICE=CO('MASSE'), - OPTION='MASS_MECA',),),) - -MACRO_MATR_ASSE(MODELE=BICHOC, - CARA_ELEM=CARA_BIC, - CHARGE=CL_BICHO, - NUME_DDL=CO('NUMDDLC'), - MATR_ASSE=(_F(MATRICE=CO('RIGI_BIC'), - OPTION='RIGI_MECA',), - _F(MATRICE=CO('MASS_BIC'), - OPTION='MASS_MECA',),),) - -MODE_MEC=MODE_ITER_SIMULT(MATR_A=RIGIDITE, - MATR_B=MASSE,) - -MODE_MEC=NORM_MODE(reuse =MODE_MEC, - MODE=MODE_MEC, - NORME='MASS_GENE',) - -MODE_BIC=MODE_ITER_SIMULT(MATR_A=RIGI_BIC, - MATR_B=MASS_BIC, - METHODE='JACOBI', - OPTION='SANS', - CALC_FREQ=_F(OPTION='BANDE', - FREQ=(1.0,10.0,),),) - -MODE_BIC=NORM_MODE(reuse =MODE_BIC, - MODE=MODE_BIC, - NORME='MASS_GENE',) - -MODE_STA=MODE_STATIQUE(MATR_RIGI=RIGIDITE, - MATR_MASS=MASSE, - MODE_STAT=_F(TOUT='OUI', - AVEC_CMP='DX',),) - -MSTA_BIC=MODE_STATIQUE(MATR_RIGI=RIGI_BIC, - MATR_MASS=MASS_BIC, - MODE_STAT=_F(TOUT='OUI', - AVEC_CMP='DX',),) - -L_INST=DEFI_LIST_REEL(DEBUT=0.0, - INTERVALLE=_F(JUSQU_A=1.0, - PAS=1.E-4,),) - -OMEGAA=2.*pi*10. - -ACCE1 = FORMULE(VALE = 'sin(OMEGAA*INST)', - NOM_PARA='INST') - -ACCELER1=CALC_FONC_INTERP(FONCTION=ACCE1, - NOM_RESU='ACCE', - LIST_PARA=L_INST, - NOM_PARA = 'INST', - PROL_DROITE='LINEAIRE', - PROL_GAUCHE='LINEAIRE',) - -ACCE2 = FORMULE(VALE = '-sin(OMEGAA*INST)', - NOM_PARA='INST') - -ACCELER2=CALC_FONC_INTERP(FONCTION=ACCE2, - NOM_RESU='ACCE', - LIST_PARA=L_INST, - NOM_PARA = 'INST', - PROL_DROITE='LINEAIRE', - PROL_GAUCHE='LINEAIRE',) - -VITE1 = FORMULE(VALE = '-cos(OMEGAA*INST)/OMEGAA', - NOM_PARA='INST') - -VITESSE1=CALC_FONC_INTERP(FONCTION=VITE1, - NOM_RESU='VITE', - LIST_PARA=L_INST, - NOM_PARA = 'INST', - PROL_DROITE='LINEAIRE', - PROL_GAUCHE='LINEAIRE',) - -DEPL1 = FORMULE(VALE = '-sin(OMEGAA*INST)/(OMEGAA**2)', - NOM_PARA='INST') - -DEPLACE1=CALC_FONC_INTERP(FONCTION=DEPL1, - NOM_RESU='DEPL', - LIST_PARA=L_INST, - NOM_PARA = 'INST', - PROL_DROITE='LINEAIRE', - PROL_GAUCHE='LINEAIRE',) - -VITE2 = FORMULE(VALE = 'cos(OMEGAA*INST)/OMEGAA', - NOM_PARA='INST') - -VITESSE2=CALC_FONC_INTERP(FONCTION=VITE2, - NOM_RESU='VITE', - LIST_PARA=L_INST, - NOM_PARA = 'INST', - PROL_DROITE='LINEAIRE', - PROL_GAUCHE='LINEAIRE',) - -xx=2 - -INCLUDE(UNITE=11, - INFO=1,) - -MUR=DEFI_OBSTACLE(TYPE='PLAN_Z',) - -TRAN_GE1=DYNA_TRAN_MODAL(METHODE='EULER', - MASS_GENE=MASS_GEN, - RIGI_GENE=RIGI_GEN, - AMOR_REDUIT=0.07, - MODE_STAT=MODE_STA, - INCREMENT=_F(INST_INIT=0.0, - INST_FIN=1.0, - PAS=2.0E-4,), - ARCHIVAGE=_F(PAS_ARCH=8,), - EXCIT=_F(VECT_GENE=VECT_X, - ACCE=ACCELER1, - VITE=VITESSE1, - DEPL=DEPLACE1, - MULT_APPUI='OUI', - DIRECTION=(1.0,0.0,0.0,), - NOEUD='NO1',), - CHOC=_F(INTITULE='NO2/MUR', - GROUP_NO_1='MASSES', - OBSTACLE=MUR, - ORIG_OBST=(-1.0,0.0,0.0,), - NORM_OBST=(0.0,0.0,1.0,), - JEU=1.1005, - RIGI_NOR=5.76E7, - AMOR_NOR=0.0, - RIGI_TAN=0.0, - COULOMB=0.0,),) - -MULT_X1=CALC_CHAR_SEISME(MATR_MASS=MASS_BIC, - DIRECTION=(1.0,0.0,0.0,), - MODE_STAT=MSTA_BIC, - NOEUD='NO1',) - -MULT_X2=CALC_CHAR_SEISME(MATR_MASS=MASS_BIC, - DIRECTION=(1.0,0.0,0.0,), - MODE_STAT=MSTA_BIC, - NOEUD='NO11',) - -MACRO_PROJ_BASE(BASE=MODE_BIC, - MATR_ASSE_GENE=(_F(MATRICE=CO('MGEN_BIC'), - MATR_ASSE=MASS_BIC,), - _F(MATRICE=CO('RGEN_BIC'), - MATR_ASSE=RIGI_BIC,),), - VECT_ASSE_GENE=(_F(VECTEUR=CO('VECT_X1'), - VECT_ASSE=MULT_X1,), - _F(VECTEUR=CO('VECT_X2'), - VECT_ASSE=MULT_X2,),),) - -GRILLE=DEFI_OBSTACLE(TYPE='BI_PLAN_Z',) - -MAILLA3=LIRE_MAILLAGE(UNITE=22,) - -FIN() diff --git a/Tests/testcomm/efica01b.11 b/Tests/testcomm/efica01b.11 deleted file mode 100644 index bec37b5b..00000000 --- a/Tests/testcomm/efica01b.11 +++ /dev/null @@ -1,19 +0,0 @@ -DEPL2 = FORMULE(NOM_PARA='INST',VALE='sin(OMEGAA*INST)/(OMEGAA**xx)') -DEPLACE2=CALC_FONC_INTERP( FONCTION=DEPL2, - LIST_PARA=L_INST, - NOM_PARA='INST', - PROL_DROITE='LINEAIRE', - PROL_GAUCHE='LINEAIRE', - NOM_RESU='DEPL' ) - -MONO_X=CALC_CHAR_SEISME( MATR_MASS=MASSE, - DIRECTION=( 1., 0., 0.,), - MONO_APPUI='OUI' ) - - -MACRO_PROJ_BASE(BASE=MODE_MEC,MATR_ASSE_GENE=( - _F( MATRICE = CO("MASS_GEN"), MATR_ASSE = MASSE), - _F( MATRICE = CO("RIGI_GEN"), MATR_ASSE = RIGIDITE)), - VECT_ASSE_GENE=_F( VECTEUR = CO("VECT_X"), VECT_ASSE = MONO_X) - ) - diff --git a/Tests/testcomm/efica01b.comm b/Tests/testcomm/efica01b.comm deleted file mode 100755 index 20eea866..00000000 --- a/Tests/testcomm/efica01b.comm +++ /dev/null @@ -1,275 +0,0 @@ -# MODIF DATE 20/09/2004 AUTEUR DURAND C.DURAND -# TITRE TEST DE NON REGRESSION DE L IHM EFICAS - DERIVE DE SDND102A -# CONFIGURATION MANAGEMENT OF EDF VERSION -# ====================================================================== -# COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# Ce cas test est gere en configuration dans la base ASTER, il sert de -# modele pour prononcer la recette de l IHM d EFICAS : l objectif est de -# pouvoir recreer ce test a l identique dans EFICAS a partir d une page -# blanche. -# On a donc essaye d y placer toutes les commandes un peu particulieres -# du langage de commandes d ASTER -# -# Il s agit en fait du test SDND102A auquel on a ajoute : -# la definition d un parametre (VAL) -# l inclusion d un fichier (INCLUDE) -# une poursuite (POURSUITE) -# Il contient ainsi : -# des parametres, des formules, des macros, des mots cles facteurs repetes -# (y compris conditionnes par des regles : calc_fonction / COMB), -# des blocs (mode_iter_simult,calc_char_seisme), un defi_valeur, un parametre. -# -# -# Il faudra y associer quelques recommandations pour la recette : -# - verifier qu en ouvrant le .com0, il demande bien a browser le .comm puis, en cascade, le .11 -# - verifier qu on peut bien supprimer une commande, un mot cle simple et facteur -# - verifier les acces a la doc -# -# - - -DEBUT(CODE=_F(NOM='EFICA01A',NIV_PUB_WEB='INTERNET',VISU_EFICAS='NON'),) - -MAILLAGE=LIRE_MAILLAGE() - -MAILLAGE=DEFI_GROUP(reuse=MAILLAGE, - MAILLAGE=MAILLAGE, - CREA_GROUP_NO=(_F(NOEUD='NO2', - NOM='MASSES',), - _F(NOEUD='NO1', - NOM='ENCASTRE',),),) - -MAILLA2=LIRE_MAILLAGE(UNITE=21,) - -MODELE=AFFE_MODELE(MAILLAGE=MAILLAGE, - AFFE=(_F(GROUP_MA='RESSORT', - PHENOMENE='MECANIQUE', - MODELISATION='DIS_T',), - _F(GROUP_NO='MASSES', - PHENOMENE='MECANIQUE', - MODELISATION='DIS_T',),),) - -BICHOC=AFFE_MODELE(MAILLAGE=MAILLA2, - AFFE=(_F(GROUP_MA='RESSORTS', - PHENOMENE='MECANIQUE', - MODELISATION='DIS_T',), - _F(GROUP_NO=('MASSES1','MASSES2',), - PHENOMENE='MECANIQUE', - MODELISATION='DIS_T',),),) -VAL = 98696.0 - - -CARA_ELE=AFFE_CARA_ELEM(MODELE=MODELE, - DISCRET=(_F(GROUP_MA='RESSORT', - REPERE='GLOBAL', - CARA='K_T_D_L', - VALE=(VAL,0.0,0.0,),), - _F(GROUP_NO='MASSES', - CARA='M_T_D_N', - VALE=25.0,),),) - -CARA_BIC=AFFE_CARA_ELEM(MODELE=BICHOC, - DISCRET=(_F(GROUP_MA='RESSORTS', - REPERE='GLOBAL', - CARA='K_T_D_L', - VALE=(VAL,0.0,0.0,),), - _F(GROUP_NO='MASSES1', - CARA='M_T_D_N', - VALE=25.0,), - _F(GROUP_NO='MASSES2', - CARA='M_T_D_N', - VALE=25.0,),),) - -CON_LIM=AFFE_CHAR_MECA(MODELE=MODELE, - DDL_IMPO=(_F(GROUP_NO='ENCASTRE', - DX=0.0, - DY=0.0, - DZ=0.0,), - _F(GROUP_NO='MASSES', - DY=0.0, - DZ=0.0,),),) - -CL_BICHO=AFFE_CHAR_MECA(MODELE=BICHOC, - DDL_IMPO=(_F(GROUP_NO='ENCBICHO', - DX=0.0, - DY=0.0, - DZ=0.0,), - _F(GROUP_NO=('MASSES1','MASSES2',), - DY=0.0, - DZ=0.0,),),) - -MACRO_MATR_ASSE(MODELE=MODELE, - CARA_ELEM=CARA_ELE, - CHARGE=CON_LIM, - NUME_DDL=CO('NUMEDDL'), - MATR_ASSE=(_F(MATRICE=CO('RIGIDITE'), - OPTION='RIGI_MECA',), - _F(MATRICE=CO('MASSE'), - OPTION='MASS_MECA',),),) - -MACRO_MATR_ASSE(MODELE=BICHOC, - CARA_ELEM=CARA_BIC, - CHARGE=CL_BICHO, - NUME_DDL=CO('NUMDDLC'), - MATR_ASSE=(_F(MATRICE=CO('RIGI_BIC'), - OPTION='RIGI_MECA',), - _F(MATRICE=CO('MASS_BIC'), - OPTION='MASS_MECA',),),) - -MODE_MEC=MODE_ITER_SIMULT(MATR_A=RIGIDITE, - MATR_B=MASSE,) - -MODE_MEC=NORM_MODE(reuse =MODE_MEC, - MODE=MODE_MEC, - NORME='MASS_GENE',) - -MODE_BIC=MODE_ITER_SIMULT(MATR_A=RIGI_BIC, - MATR_B=MASS_BIC, - METHODE='JACOBI', - OPTION='SANS', - CALC_FREQ=_F(OPTION='BANDE', - FREQ=(1.0,10.0,),),) - -MODE_BIC=NORM_MODE(reuse =MODE_BIC, - MODE=MODE_BIC, - NORME='MASS_GENE',) - -MODE_STA=MODE_STATIQUE(MATR_RIGI=RIGIDITE, - MATR_MASS=MASSE, - MODE_STAT=_F(TOUT='OUI', - AVEC_CMP='DX',),) - -MSTA_BIC=MODE_STATIQUE(MATR_RIGI=RIGI_BIC, - MATR_MASS=MASS_BIC, - MODE_STAT=_F(TOUT='OUI', - AVEC_CMP='DX',),) - -L_INST=DEFI_LIST_REEL(DEBUT=0.0, - INTERVALLE=_F(JUSQU_A=1.0, - PAS=1.E-4,),) - -OMEGAA=2.*pi*10. - -ACCE1 = FORMULE(VALE = 'sin(OMEGAA*INST)', - NOM_PARA='INST') - -ACCELER1=CALC_FONC_INTERP(FONCTION=ACCE1, - NOM_RESU='ACCE', - LIST_PARA=L_INST, - NOM_PARA = 'INST', - PROL_DROITE='LINEAIRE', - PROL_GAUCHE='LINEAIRE',) - -ACCE2 = FORMULE(VALE = '-sin(OMEGAA*INST)', - NOM_PARA='INST') - -ACCELER2=CALC_FONC_INTERP(FONCTION=ACCE2, - NOM_RESU='ACCE', - LIST_PARA=L_INST, - NOM_PARA = 'INST', - PROL_DROITE='LINEAIRE', - PROL_GAUCHE='LINEAIRE',) - -VITE1 = FORMULE(VALE = '-cos(OMEGAA*INST)/OMEGAA', - NOM_PARA='INST') - -VITESSE1=CALC_FONC_INTERP(FONCTION=VITE1, - NOM_RESU='VITE', - LIST_PARA=L_INST, - NOM_PARA = 'INST', - PROL_DROITE='LINEAIRE', - PROL_GAUCHE='LINEAIRE',) - -DEPL1 = FORMULE(VALE = '-sin(OMEGAA*INST)/(OMEGAA**2)', - NOM_PARA='INST') - -DEPLACE1=CALC_FONC_INTERP(FONCTION=DEPL1, - NOM_RESU='DEPL', - LIST_PARA=L_INST, - NOM_PARA = 'INST', - PROL_DROITE='LINEAIRE', - PROL_GAUCHE='LINEAIRE',) - -VITE2 = FORMULE(VALE = 'cos(OMEGAA*INST)/OMEGAA', - NOM_PARA='INST') - -VITESSE2=CALC_FONC_INTERP(FONCTION=VITE2, - NOM_RESU='VITE', - LIST_PARA=L_INST, - NOM_PARA = 'INST', - PROL_DROITE='LINEAIRE', - PROL_GAUCHE='LINEAIRE',) - -xx=2 - -INCLUDE(UNITE=11, - INFO=1,) - -MUR=DEFI_OBSTACLE(TYPE='PLAN_Z',) - -TRAN_GE1=DYNA_TRAN_MODAL(METHODE='EULER', - MASS_GENE=MASS_GEN, - RIGI_GENE=RIGI_GEN, - AMOR_REDUIT=0.07, - MODE_STAT=MODE_STA, - INCREMENT=_F(INST_INIT=0.0, - INST_FIN=1.0, - PAS=2.0E-4,), - ARCHIVAGE=_F(PAS_ARCH=8,), - EXCIT=_F(VECT_GENE=VECT_X, - ACCE=ACCELER1, - VITE=VITESSE1, - DEPL=DEPLACE1, - MULT_APPUI='OUI', - DIRECTION=(1.0,0.0,0.0,), - NOEUD='NO1',), - CHOC=_F(INTITULE='NO2/MUR', - GROUP_NO_1='MASSES', - OBSTACLE=MUR, - ORIG_OBST=(-1.0,0.0,0.0,), - NORM_OBST=(0.0,0.0,1.0,), - JEU=1.1005, - RIGI_NOR=5.76E7, - AMOR_NOR=0.0, - RIGI_TAN=0.0, - COULOMB=0.0,),) - -MULT_X1=CALC_CHAR_SEISME(MATR_MASS=MASS_BIC, - DIRECTION=(1.0,0.0,0.0,), - MODE_STAT=MSTA_BIC, - NOEUD='NO1',) - -MULT_X2=CALC_CHAR_SEISME(MATR_MASS=MASS_BIC, - DIRECTION=(1.0,0.0,0.0,), - MODE_STAT=MSTA_BIC, - NOEUD='NO11',) - -MACRO_PROJ_BASE(BASE=MODE_BIC, - MATR_ASSE_GENE=(_F(MATRICE=CO('MGEN_BIC'), - MATR_ASSE=MASS_BIC,), - _F(MATRICE=CO('RGEN_BIC'), - MATR_ASSE=RIGI_BIC,),), - VECT_ASSE_GENE=(_F(VECTEUR=CO('VECT_X1'), - VECT_ASSE=MULT_X1,), - _F(VECTEUR=CO('VECT_X2'), - VECT_ASSE=MULT_X2,),),) - -GRILLE=DEFI_OBSTACLE(TYPE='BI_PLAN_Z',) - -MAILLA3=LIRE_MAILLAGE(UNITE=22,) - -FIN() diff --git a/Tests/testcomm/f.comm b/Tests/testcomm/f.comm deleted file mode 100644 index d15a6179..00000000 --- a/Tests/testcomm/f.comm +++ /dev/null @@ -1,18 +0,0 @@ -from Numeric import size - -DEBUT() - -# Definition des parametres de l'excitation sinusoidale -freq=1500.0 -periode=1.0/freq -pas=periode/100.0 - -LISTTM=DEFI_LIST_REEL(DEBUT=0.0*periode, - INTERVALLE=_F(JUSQU_A=100.0*periode, - PAS=pas,),); - -LISTRD=DEFI_LIST_REEL(DEBUT=(98.0)*periode+pas, - INTERVALLE=_F(JUSQU_A=(100.0)*periode, - PAS=pas,),); - -FIN() diff --git a/Tests/testcomm/forma12c.22 b/Tests/testcomm/forma12c.22 deleted file mode 100755 index 1452b8f2..00000000 --- a/Tests/testcomm/forma12c.22 +++ /dev/null @@ -1,5616 +0,0 @@ -ACCELH1=DEFI_FONCTION(NOM_PARA='INST', - VALE= - ( - 0.0 , 0.0 , - 5.000000000000000E-03 , 1.384945820672120E-02 , - 1.000000000000000E-02 , 1.382919843991470E-02 , - 1.500000000000000E-02 , 1.382973754982250E-02 , - 2.000000000000000E-02 , 1.383338152282280E-02 , - 2.500000000000000E-02 , 1.393648950771420E-02 , - 3.000000000000000E-02 , 1.434779984741860E-02 , - 3.500000000000000E-02 , 1.512950713231800E-02 , - 4.000000000000000E-02 , 1.614535272002630E-02 , - 4.500000000000000E-02 , 1.731995083544010E-02 , - 5.000000000000000E-02 , 1.859624623558040E-02 , - 5.500000000000000E-02 , 1.953967672923960E-02 , - 6.000000000000000E-02 , 1.941781110418540E-02 , - 6.500000000000000E-02 , 1.786343830924350E-02 , - 7.000000000000001E-02 , 1.516191250319950E-02 , - 7.500000000000000E-02 , 1.188464893531830E-02 , - 8.000000000000000E-02 , 8.604671706807470E-03 , - 8.500000000000001E-02 , 5.843238016204390E-03 , - 9.000000000000000E-02 , 3.844393537029640E-03 , - 9.500000000000000E-02 , 2.578831760615030E-03 , - 0.1 , 2.285337760842440E-03 , - 0.105 , 3.429647164261850E-03 , - 0.11 , 5.693975593542530E-03 , - 0.115 , 8.059677068797949E-03 , - 0.12 , 1.074690536157120E-02 , - 0.125 , 1.570430547663250E-02 , - 0.13 , 2.370085802024690E-02 , - 0.135 , 3.228248728765840E-02 , - 0.14 , 3.854420890726100E-02 , - 0.145 , 4.255105840524570E-02 , - 0.15 , 4.542487497977820E-02 , - 0.155 , 4.522394778102340E-02 , - 0.16 , 3.829095514459380E-02 , - 0.165 , 2.483633029107950E-02 , - 0.17 , 9.962011825963081E-03 , - 0.175 , -1.690338763720670E-03 , - 0.18 , -9.628765294085771E-03 , - 0.185 , -1.491533457160890E-02 , - 0.19 , -1.675574249783150E-02 , - 0.195 , -1.397302390604700E-02 , - 0.2 , -8.394257392452909E-03 , - 0.205 , -4.066198655663860E-03 , - 0.21 , -2.824511823738000E-03 , - 0.215 , -2.617183840945080E-03 , - 0.22 , -1.417346427510000E-03 , - 0.225 , -1.143002215953450E-03 , - 0.23 , -5.114862179520550E-03 , - 0.235 , -1.257393226409120E-02 , - 0.24 , -2.009825306788950E-02 , - 0.245 , -2.922606396367100E-02 , - 0.25 , -4.681398923377460E-02 , - 0.255 , -7.440515051138789E-02 , - 0.26 , -0.10334790104033 , - 0.265 , -0.12586697159281 , - 0.27 , -0.14387794464775 , - 0.275 , -0.15814759425273 , - 0.28 , -0.15645166862504 , - 0.285 , -0.12686021613717 , - 0.29 , -7.870738657620450E-02 , - 0.295 , -3.337529798013800E-02 , - 0.3 , 4.960493246599410E-03 , - 0.305 , 5.045559596258160E-02 , - 0.31 , 0.105226085321393 , - 0.315 , 0.149377859842677 , - 0.32 , 0.169404090056596 , - 0.325 , 0.175768658339062 , - 0.33 , 0.179795570216475 , - 0.335 , 0.172362231098084 , - 0.34 , 0.14178782193451 , - 0.345 , 9.600009720172401E-02 , - 0.35 , 4.821844915823450E-02 , - 0.355 , -4.337533256019430E-03 , - 0.36 , -6.584719156367530E-02 , - 0.365 , -0.11836425870338 , - 0.37 , -0.13733576068719 , - 0.375 , -0.12352979806305 , - 0.38 , -9.647458189678811E-02 , - 0.385 , -6.215705630868780E-02 , - 0.39 , -1.230416228554950E-02 , - 0.395 , 4.641921735700460E-02 , - 0.4 , 8.859572962085120E-02 , - 0.405 , 9.988862929152570E-02 , - 0.41 , 9.014811266775360E-02 , - 0.415 , 7.203047941527541E-02 , - 0.42 , 4.502398610270280E-02 , - 0.425 , 6.797639622722420E-03 , - 0.43 , -3.515202910758360E-02 , - 0.435 , -7.008994299356780E-02 , - 0.44 , -9.184195885494270E-02 , - 0.445 , -9.764578216442391E-02 , - 0.45 , -8.980199943709211E-02 , - 0.455 , -7.844678621890611E-02 , - 0.46 , -7.092648374585479E-02 , - 0.465 , -5.916134617989510E-02 , - 0.47 , -2.956966177372460E-02 , - 0.475 , 1.671374368998170E-02 , - 0.48 , 6.681414337976969E-02 , - 0.485 , 0.115921896874314 , - 0.49 , 0.168522035427266 , - 0.495 , 0.222448388891968 , - 0.5 , 0.268501345352512 , - 0.505 , 0.304492502191568 , - 0.51 , 0.333201521434027 , - 0.515 , 0.348912055073103 , - 0.52 , 0.344336194210705 , - 0.525 , 0.328357457992693 , - 0.53 , 0.315639958020935 , - 0.535 , 0.298753776631336 , - 0.54 , 0.252828404979867 , - 0.545 , 0.169993172714936 , - 0.55 , 6.727059721322880E-02 , - 0.555 , -4.209915010595060E-02 , - 0.56 , -0.16027870746769 , - 0.565 , -0.28051898189652 , - 0.57 , -0.37473468426368 , - 0.575 , -0.41761046311846 , - 0.58 , -0.40704487960185 , - 0.585 , -0.35317881167887 , - 0.59 , -0.26473865427636 , - 0.595 , -0.15439054042026 , - 0.6 , -4.069603171914010E-02 , - 0.605 , 6.408493301865420E-02 , - 0.61 , 0.155029022019142 , - 0.615 , 0.221244653075603 , - 0.62 , 0.250448298949297 , - 0.625 , 0.2498283906321 , - 0.63 , 0.239493456134941 , - 0.635 , 0.218886088833644 , - 0.64 , 0.164337222785859 , - 0.645 , 7.035013146739150E-02 , - 0.65 , -3.065825126167990E-02 , - 0.655 , -0.10313193025801 , - 0.66 , -0.14127712726139 , - 0.665 , -0.15425776005121 , - 0.67 , -0.14167316851909 , - 0.675 , -0.10137097186279 , - 0.68 , -4.328536800004760E-02 , - 0.685 , 2.048801937177380E-02 , - 0.69 , 8.302000641121640E-02 , - 0.695 , 0.129331142992423 , - 0.7 , 0.139601455006784 , - 0.705 , 0.121227983591054 , - 0.71 , 0.113005236382458 , - 0.715 , 0.1379818615802 , - 0.72 , 0.176308826146499 , - 0.725 , 0.205232483015008 , - 0.73 , 0.236700670002903 , - 0.735 , 0.28518726999873 , - 0.74 , 0.325155532319882 , - 0.745 , 0.319888795846513 , - 0.75 , 0.275055725375209 , - 0.755 , 0.223753796143942 , - 0.76 , 0.172075077677344 , - 0.765 , 0.102710116433296 , - 0.77 , 2.458158105150330E-02 , - 0.775 , -2.772090362464080E-02 , - 0.78 , -4.579263759539020E-02 , - 0.785 , -5.563702283874560E-02 , - 0.79 , -6.754184615076410E-02 , - 0.795 , -5.871706032442020E-02 , - 0.8 , -1.692509300464670E-02 , - 0.805 , 3.809918865159700E-02 , - 0.81 , 9.363878798804159E-02 , - 0.815 , 0.168712355371222 , - 0.82 , 0.278043767236916 , - 0.825 , 0.400260018759297 , - 0.83 , 0.503549901131272 , - 0.835 , 0.576593704222666 , - 0.84 , 0.611464547720466 , - 0.845 , 0.581774928421811 , - 0.85 , 0.466685485187298 , - 0.855 , 0.279469592461024 , - 0.86 , 4.649599505060000E-02 , - 0.865 , -0.22611474655397 , - 0.87 , -0.53742100922433 , - 0.875 , -0.85597468112981 , - 0.88 , -1.12858445463436 , - 0.885 , -1.31964097839003 , - 0.89 , -1.41810357733099 , - 0.895 , -1.4129005458435 , - 0.9 , -1.29047173798494 , - 0.905 , -1.05919909208997 , - 0.91 , -0.75411881989804 , - 0.915 , -0.41406737678731 , - 0.92 , -7.194360976911091E-02 , - 0.925 , 0.232932654611786 , - 0.93 , 0.457448784206965 , - 0.935 , 0.581369260987795 , - 0.94 , 0.617884772522987 , - 0.945 , 0.588638581913632 , - 0.95 , 0.499594354895777 , - 0.955 , 0.351854051263097 , - 0.96 , 0.167285288529307 , - 0.965 , -1.354817972678980E-02 , - 0.97 , -0.16506107206104 , - 0.975 , -0.30020976135865 , - 0.98 , -0.44800006523462 , - 0.985 , -0.60571664044792 , - 0.99 , -0.72882650966723 , - 0.995 , -0.78150351703968 , - 1.0 , -0.78325351768449 , - 1.005 , -0.7804638307994 , - 1.01 , -0.77907901470961 , - 1.015 , -0.74044922924701 , - 1.02 , -0.64794816611668 , - 1.025 , -0.53653982368824 , - 1.03 , -0.43590944296704 , - 1.035 , -0.32196595199848 , - 1.04 , -0.15803623495676 , - 1.045 , 4.418314484939760E-02 , - 1.05 , 0.242865235492215 , - 1.055 , 0.422391619487335 , - 1.06 , 0.586878740356939 , - 1.065 , 0.710461681206935 , - 1.07 , 0.741340861669433 , - 1.075 , 0.655713664787049 , - 1.08 , 0.470616913700976 , - 1.085 , 0.20656145315631 , - 1.09 , -0.12112308548803 , - 1.095 , -0.47118919290136 , - 1.1 , -0.77786799146278 , - 1.105 , -0.99394827732625 , - 1.11 , -1.10304473601585 , - 1.115 , -1.08949447190265 , - 1.12 , -0.93583496154967 , - 1.125 , -0.65727377808015 , - 1.13 , -0.30107834922153 , - 1.135 , 9.620828359443580E-02 , - 1.14 , 0.514013416080853 , - 1.145 , 0.90642132985077 , - 1.15 , 1.20374217441116 , - 1.155 , 1.37257710404611 , - 1.16 , 1.43303286111545 , - 1.165 , 1.40075730037501 , - 1.17 , 1.25846296855354 , - 1.175 , 1.00832137286648 , - 1.18 , 0.706462116642059 , - 1.185 , 0.413493607411118 , - 1.19 , 0.148293682071222 , - 1.195 , -8.190792579850280E-02 , - 1.2 , -0.25000976533114 , - 1.205 , -0.34497838239222 , - 1.21 , -0.39991632301279 , - 1.215 , -0.44361527764964 , - 1.22 , -0.45948891812011 , - 1.225 , -0.43276591909851 , - 1.23 , -0.39819165775721 , - 1.235 , -0.38929817650006 , - 1.24 , -0.37545880341991 , - 1.245 , -0.30998449197619 , - 1.25 , -0.21624700688801 , - 1.255 , -0.16343645166853 , - 1.26 , -0.17391443905321 , - 1.265 , -0.21919282258219 , - 1.27 , -0.29688345097037 , - 1.275 , -0.43984931085551 , - 1.28 , -0.64071500818847 , - 1.285 , -0.82875858278133 , - 1.29 , -0.93796346189032 , - 1.295 , -0.949512523725 , - 1.3 , -0.857601537535 , - 1.305 , -0.65014691427727 , - 1.31 , -0.34930571456794 , - 1.315 , -2.752743937664530E-02 , - 1.32 , 0.246332435481473 , - 1.325 , 0.45001279080827 , - 1.33 , 0.58297681321004 , - 1.335 , 0.636158064092188 , - 1.34 , 0.611598530544366 , - 1.345 , 0.543575003876384 , - 1.35 , 0.472132760127251 , - 1.355 , 0.4099056501601 , - 1.36 , 0.349344621324927 , - 1.365 , 0.282806527352702 , - 1.37 , 0.200676817565078 , - 1.375 , 9.097626989587490E-02 , - 1.38 , -3.844874520206900E-02 , - 1.385 , -0.1485730750104 , - 1.39 , -0.19431957586841 , - 1.395 , -0.15348271845224 , - 1.4 , -2.614043201034680E-02 , - 1.405 , 0.177537986918302 , - 1.41 , 0.435115227256899 , - 1.415 , 0.705841641151383 , - 1.42 , 0.939450691097474 , - 1.425 , 1.09606995057385 , - 1.43 , 1.16508829271638 , - 1.435 , 1.17152904343664 , - 1.44 , 1.15677325221222 , - 1.445 , 1.14474618562157 , - 1.45 , 1.13563604509728 , - 1.455 , 1.136131797716 , - 1.46 , 1.17059034109195 , - 1.465 , 1.24349566378999 , - 1.47 , 1.31555125128714 , - 1.475 , 1.34451073520553 , - 1.48 , 1.32767985662737 , - 1.485 , 1.27338631745007 , - 1.49 , 1.15790168079473 , - 1.495 , 0.956521791996786 , - 1.5 , 0.698290997947875 , - 1.505 , 0.438367846650034 , - 1.51 , 0.189519144568428 , - 1.515 , -6.309865148517370E-02 , - 1.52 , -0.2907946493572 , - 1.525 , -0.43414032419491 , - 1.53 , -0.49035140435209 , - 1.535 , -0.51769162343818 , - 1.54 , -0.53944953961898 , - 1.545 , -0.51762829963883 , - 1.55 , -0.44905875024602 , - 1.555 , -0.41047655284131 , - 1.56 , -0.45801991852189 , - 1.565 , -0.5452728301642 , - 1.57 , -0.60180223196739 , - 1.575 , -0.64090769354799 , - 1.58 , -0.71776674993069 , - 1.585 , -0.81770575898523 , - 1.59 , -0.86693741584294 , - 1.595 , -0.84067997754846 , - 1.6 , -0.78353488744314 , - 1.605 , -0.71744286940014 , - 1.61 , -0.59774454986713 , - 1.615 , -0.38171240617319 , - 1.62 , -8.924731070437070E-02 , - 1.625 , 0.229074480135456 , - 1.63 , 0.542610098773165 , - 1.635 , 0.829628497520742 , - 1.64 , 1.04494574127203 , - 1.645 , 1.13156269562082 , - 1.65 , 1.05624249517991 , - 1.655 , 0.819935992458342 , - 1.66 , 0.449565343322086 , - 1.665 , -2.180707598866940E-03 , - 1.67 , -0.46040931126981 , - 1.675 , -0.85138688793934 , - 1.68 , -1.12388943755807 , - 1.685 , -1.24657385888904 , - 1.69 , -1.20179685962043 , - 1.695 , -0.99981038351547 , - 1.7 , -0.69163368557204 , - 1.705 , -0.34742052586021 , - 1.71 , -1.646326697056420E-02 , - 1.715 , 0.283945578116849 , - 1.72 , 0.543028107021654 , - 1.725 , 0.737133979583192 , - 1.73 , 0.84487160610996 , - 1.735 , 0.870212972351319 , - 1.74 , 0.834700198404195 , - 1.745 , 0.747170431789498 , - 1.75 , 0.594410232927394 , - 1.755 , 0.367486332109475 , - 1.76 , 8.962182967477010E-02 , - 1.765 , -0.1883067260291 , - 1.77 , -0.41613375697166 , - 1.775 , -0.56543072263443 , - 1.78 , -0.62930681455469 , - 1.785 , -0.60967253780204 , - 1.79 , -0.50702726496872 , - 1.795 , -0.32533912503295 , - 1.8 , -9.026946700126549E-02 , - 1.805 , 0.145429511003968 , - 1.81 , 0.330819022676906 , - 1.815 , 0.45222714352563 , - 1.82 , 0.524252434401283 , - 1.825 , 0.544685292311812 , - 1.83 , 0.482635967462947 , - 1.835 , 0.323118603668567 , - 1.84 , 9.999214308770410E-02 , - 1.845 , -0.1356321129448 , - 1.85 , -0.36128518628156 , - 1.855 , -0.57322505412043 , - 1.86 , -0.74566937227067 , - 1.865 , -0.831111234663 , - 1.87 , -0.79988891088422 , - 1.875 , -0.65798317740384 , - 1.88 , -0.42968513644553 , - 1.885 , -0.14457167669537 , - 1.89 , 0.161701689894838 , - 1.895 , 0.456458659481019 , - 1.9 , 0.720641473510481 , - 1.905 , 0.93536449279502 , - 1.91 , 1.06690148982661 , - 1.915 , 1.08832474904443 , - 1.92 , 1.00876475369484 , - 1.925 , 0.854457298011041 , - 1.93 , 0.628173977645005 , - 1.935 , 0.322546940276438 , - 1.94 , -2.596888473873320E-02 , - 1.945 , -0.33525384338564 , - 1.95 , -0.5416882826646 , - 1.955 , -0.63460201942509 , - 1.96 , -0.61577036509424 , - 1.965 , -0.46445342826001 , - 1.97 , -0.17427091738081 , - 1.975 , 0.197608608481982 , - 1.98 , 0.551300717211572 , - 1.985 , 0.807313151449369 , - 1.99 , 0.929291756112952 , - 1.995 , 0.900203655372628 , - 2.0 , 0.711960914602783 , - 2.005 , 0.386125888668035 , - 2.01 , -1.664845298933290E-02 , - 2.015 , -0.42003837834356 , - 2.02 , -0.75822166854004 , - 2.025 , -0.97936810396973 , - 2.03 , -1.0426579951744 , - 2.035 , -0.93057240999803 , - 2.04 , -0.66368034717177 , - 2.045 , -0.29110991423144 , - 2.05 , 0.119136312621438 , - 2.055 , 0.505291402538494 , - 2.06 , 0.880216899892637 , - 2.065 , 1.20828770980265 , - 2.07 , 1.46849325860208 , - 2.075 , 1.67233522841001 , - 2.08 , 1.84159238892188 , - 2.085 , 1.97017314302929 , - 2.09 , 2.02820005370812 , - 2.095 , 2.00307389537606 , - 2.1 , 1.90918679712901 , - 2.105 , 1.7492164388665 , - 2.11 , 1.49601732028444 , - 2.115 , 1.13320644545655 , - 2.12 , 0.691534368057989 , - 2.125 , 0.222522846896641 , - 2.13 , -0.2568718835065 , - 2.135 , -0.73270869895797 , - 2.14 , -1.16691560085841 , - 2.145 , -1.52131308342383 , - 2.15 , -1.77830659090987 , - 2.155 , -1.94190868704924 , - 2.16 , -2.01807428134882 , - 2.165 , -2.01753841723068 , - 2.17 , -1.96550102271951 , - 2.175 , -1.88172547074643 , - 2.18 , -1.76181108149962 , - 2.185 , -1.60314470865115 , - 2.19 , -1.43287068566641 , - 2.195 , -1.27868078783724 , - 2.2 , -1.12992856906385 , - 2.205 , -0.96854903020236 , - 2.21 , -0.82469988669093 , - 2.215 , -0.75306712540506 , - 2.22 , -0.75949831264927 , - 2.225 , -0.80266627698916 , - 2.23 , -0.86825465400046 , - 2.235 , -0.98190873939491 , - 2.24 , -1.13332846537187 , - 2.245 , -1.24587809111606 , - 2.25 , -1.25403636722243 , - 2.255 , -1.16774949125882 , - 2.26 , -1.02737996901608 , - 2.265 , -0.83618584315821 , - 2.27 , -0.58078051378866 , - 2.275 , -0.28886675266917 , - 2.28 , -1.584903466322660E-02 , - 2.285 , 0.243494185775485 , - 2.29 , 0.493747779128152 , - 2.295 , 0.763367558765503 , - 2.3 , 1.04659160151311 , - 2.305 , 1.31787059651459 , - 2.31 , 1.55330513693362 , - 2.315 , 1.72708398800512 , - 2.32 , 1.80403390270411 , - 2.325 , 1.74474528448072 , - 2.33 , 1.51781565889812 , - 2.335 , 1.11765857002866 , - 2.34 , 0.582482410154426 , - 2.345 , -9.718428438488540E-03 , - 2.35 , -0.57168637020167 , - 2.355 , -1.03230607359137 , - 2.36 , -1.33718623748091 , - 2.365 , -1.44694517260007 , - 2.37 , -1.35098612723151 , - 2.375 , -1.07661964039704 , - 2.38 , -0.67815732332436 , - 2.385 , -0.22427774359532 , - 2.39 , 0.206546911873295 , - 2.395 , 0.541628296955107 , - 2.4 , 0.739725635914114 , - 2.405 , 0.792688071679571 , - 2.41 , 0.699855261818748 , - 2.415 , 0.460345996951087 , - 2.42 , 9.825062680758330E-02 , - 2.425 , -0.32686436332366 , - 2.43 , -0.75151572607261 , - 2.435 , -1.13800924040631 , - 2.44 , -1.46265919709476 , - 2.445 , -1.69312259897435 , - 2.45 , -1.79655595938503 , - 2.455 , -1.76112116582848 , - 2.46 , -1.59504402395201 , - 2.465 , -1.31375304224191 , - 2.47 , -0.94339622712974 , - 2.475 , -0.5311872307141 , - 2.48 , -0.13652655158703 , - 2.485 , 0.191652831784399 , - 2.49 , 0.427316277261529 , - 2.495 , 0.565105289247264 , - 2.5 , 0.614388715344672 , - 2.505 , 0.595214227948157 , - 2.51 , 0.537482815214678 , - 2.515 , 0.480599475426244 , - 2.52 , 0.461418219827792 , - 2.525 , 0.490351150400196 , - 2.53 , 0.544926077525614 , - 2.535 , 0.597359901626847 , - 2.54 , 0.63915145270988 , - 2.545 , 0.666359147512914 , - 2.55 , 0.659549902572926 , - 2.555 , 0.607653814797886 , - 2.56 , 0.542274304956947 , - 2.565 , 0.514978623780516 , - 2.57 , 0.542507936778163 , - 2.575 , 0.605343596447052 , - 2.58 , 0.694971250554721 , - 2.585 , 0.820564438850225 , - 2.59 , 0.964525817889196 , - 2.595 , 1.07728875105342 , - 2.6 , 1.13416623229962 , - 2.605 , 1.16046452303612 , - 2.61 , 1.18333170206295 , - 2.615 , 1.19818806982642 , - 2.62 , 1.2055342011362 , - 2.625 , 1.23921335799247 , - 2.63 , 1.32082369230339 , - 2.635 , 1.41353565810184 , - 2.64 , 1.45647248242833 , - 2.645 , 1.42296156176653 , - 2.65 , 1.31247243180803 , - 2.655 , 1.10982597617917 , - 2.66 , 0.796193729509591 , - 2.665 , 0.391525367264635 , - 2.67 , -5.039209232008630E-02 , - 2.675 , -0.48551296055089 , - 2.68 , -0.89084690987514 , - 2.685 , -1.24148991258587 , - 2.69 , -1.50817716119153 , - 2.695 , -1.67597297557138 , - 2.7 , -1.74058611919401 , - 2.705 , -1.69018703360535 , - 2.71 , -1.51441737441596 , - 2.715 , -1.22691360409733 , - 2.72 , -0.85820811206465 , - 2.725 , -0.43656402639097 , - 2.73 , -1.877591162527850E-03 , - 2.735 , 0.3722134714064 , - 2.74 , 0.604368486493566 , - 2.745 , 0.654206094948509 , - 2.75 , 0.520823349815255 , - 2.755 , 0.204565302761595 , - 2.76 , -0.24284766157643 , - 2.765 , -0.75311719985656 , - 2.77 , -1.25324781337662 , - 2.775 , -1.6520239944361 , - 2.78 , -1.91175925323649 , - 2.785 , -2.02042853839568 , - 2.79 , -1.95654753001104 , - 2.795 , -1.71189367332731 , - 2.8 , -1.33217954914393 , - 2.805 , -0.90169171320611 , - 2.81 , -0.48741397679456 , - 2.815 , -0.11957680209296 , - 2.82 , 0.208180180447444 , - 2.825 , 0.429754499753944 , - 2.83 , 0.500373556893508 , - 2.835 , 0.453923556202155 , - 2.84 , 0.356589274872127 , - 2.845 , 0.252756610751608 , - 2.85 , 0.15368816142573 , - 2.855 , 7.226479768245560E-02 , - 2.86 , 3.888968358902120E-02 , - 2.865 , 7.085947846528430E-02 , - 2.87 , 0.145649387450817 , - 2.875 , 0.221440328548596 , - 2.88 , 0.271936154319643 , - 2.885 , 0.285520971687156 , - 2.89 , 0.244558483181686 , - 2.895 , 0.131111505423643 , - 2.9 , -4.976188706858230E-02 , - 2.905 , -0.27342387270832 , - 2.91 , -0.51955671330527 , - 2.915 , -0.77083790776384 , - 2.92 , -0.9909431240431 , - 2.925 , -1.1326860598253 , - 2.93 , -1.17530215375529 , - 2.935 , -1.1315547074335 , - 2.94 , -1.01461371409468 , - 2.945 , -0.82697517656886 , - 2.95 , -0.5923950948081 , - 2.955 , -0.367250148284 , - 2.96 , -0.19748847576212 , - 2.965 , -8.287483750208639E-02 , - 2.97 , 1.205615998459890E-03 , - 2.975 , 6.700285876984650E-02 , - 2.98 , 0.142475719272639 , - 2.985 , 0.272732688275581 , - 2.99 , 0.498473860216776 , - 2.995 , 0.815246300242191 , - 3.0 , 1.17850966940332 , - 3.005 , 1.5365879707165 , - 3.01 , 1.83696246846193 , - 3.015 , 2.01683359177992 , - 3.02 , 2.02473029766593 , - 3.025 , 1.85763991176815 , - 3.03 , 1.55996114842794 , - 3.035 , 1.19160270003895 , - 3.04 , 0.817034460759104 , - 3.045 , 0.512897988315463 , - 3.05 , 0.347660769303193 , - 3.055 , 0.341161122643262 , - 3.06 , 0.460638539442427 , - 3.065 , 0.655193651694964 , - 3.07 , 0.871495085561553 , - 3.075 , 1.04025886670637 , - 3.08 , 1.0866972125822 , - 3.085 , 0.97592646156581 , - 3.09 , 0.732149789609832 , - 3.095 , 0.404350262104711 , - 3.1 , 3.450811147404410E-02 , - 3.105 , -0.3574143716153 , - 3.11 , -0.67593382755679 , - 3.115 , -0.85741138771834 , - 3.12 , -0.88812837843921 , - 3.125 , -0.79137979090702 , - 3.13 , -0.59262327029812 , - 3.135 , -0.31629865744548 , - 3.14 , -7.233283133936310E-03 , - 3.145 , 0.273183439196407 , - 3.15 , 0.478066409829062 , - 3.155 , 0.58805365224197 , - 3.16 , 0.593648649534557 , - 3.165 , 0.483000051126779 , - 3.17 , 0.254384438681656 , - 3.175 , -6.624305965878829E-02 , - 3.18 , -0.4267275966133 , - 3.185 , -0.81396009231636 , - 3.19 , -1.1955849391981 , - 3.195 , -1.53431204255614 , - 3.2 , -1.79550741772338 , - 3.205 , -1.95961471169112 , - 3.21 , -2.02193224868472 , - 3.215 , -1.98153140879109 , - 3.22 , -1.83692731893728 , - 3.225 , -1.59274123405354 , - 3.23 , -1.26186737186096 , - 3.235 , -0.85475661028155 , - 3.24 , -0.37101324608578 , - 3.245 , 0.104191797011254 , - 3.25 , 0.444402436394787 , - 3.255 , 0.80270823947836 , - 3.26 , 1.15997110726162 , - 3.265 , 1.495182836989 , - 3.27 , 1.77744468860316 , - 3.275 , 1.96545418255327 , - 3.28 , 2.0238275806165 , - 3.285 , 1.94070094966571 , - 3.29 , 1.72718398222401 , - 3.295 , 1.40473739766314 , - 3.3 , 1.00200904728279 , - 3.305 , 0.563540200278601 , - 3.31 , 0.149874332156587 , - 3.315 , -0.36080714644631 , - 3.32 , -0.78705501088032 , - 3.325 , -0.96779259671266 , - 3.33 , -0.92388383903371 , - 3.335 , -0.70129187312547 , - 3.34 , -0.37633413832281 , - 3.345 , -4.983212937679970E-02 , - 3.35 , 0.182525585093038 , - 3.355 , 0.262197946276188 , - 3.36 , 0.176793782229557 , - 3.365 , -5.176420413944920E-02 , - 3.37 , -0.37933630972585 , - 3.375 , -0.74271351288949 , - 3.38 , -1.06375084817712 , - 3.385 , -1.26478653529069 , - 3.39 , -1.29047203891782 , - 3.395 , -1.12256167350094 , - 3.4 , -0.78075489126115 , - 3.405 , -0.31359677016703 , - 3.41 , 0.21274034122224 , - 3.415 , 0.723339413347021 , - 3.42 , 1.14216320992711 , - 3.425 , 1.40285852862188 , - 3.43 , 1.46353765010519 , - 3.435 , 1.31751508169454 , - 3.44 , 0.990610982524745 , - 3.445 , 0.528518300724784 , - 3.45 , -1.201464116995880E-02 , - 3.455 , -0.56495490805526 , - 3.46 , -1.06256507808036 , - 3.465 , -1.45449004401942 , - 3.47 , -1.72216993561753 , - 3.475 , -1.87372425489139 , - 3.48 , -1.93012616321294 , - 3.485 , -1.92125770401275 , - 3.49 , -1.88683182264746 , - 3.495 , -1.86489427093378 , - 3.5 , -1.87314769209702 , - 3.505 , -1.90576881574645 , - 3.51 , -1.947112317286 , - 3.515 , -1.97949862409975 , - 3.52 , -1.97797423254897 , - 3.525 , -1.91218852417812 , - 3.53 , -1.76423764925703 , - 3.535 , -1.54024679422456 , - 3.54 , -1.25875344890035 , - 3.545 , -0.9338632056843 , - 3.55 , -0.57694094749828 , - 3.555 , -0.20814045746558 , - 3.56 , 0.146206363036127 , - 3.565 , 0.468653953534567 , - 3.57 , 0.754631835985132 , - 3.575 , 0.999185044322006 , - 3.58 , 1.18633789810153 , - 3.585 , 1.29531712809396 , - 3.59 , 1.31308664187438 , - 3.595 , 1.23731524907479 , - 3.6 , 1.07118836166498 , - 3.605 , 0.822464072088323 , - 3.61 , 0.509927368235254 , - 3.615 , 0.167608567620092 , - 3.62 , -0.16136132010127 , - 3.625 , -0.43756626339828 , - 3.63 , -0.63523583164368 , - 3.635 , -0.74542737572521 , - 3.64 , -0.7756133968174 , - 3.645 , -0.74811092815284 , - 3.65 , -0.69606885610044 , - 3.655 , -0.6565734770812 , - 3.66 , -0.66248883313473 , - 3.665 , -0.7327889886856 , - 3.67 , -0.86178796221599 , - 3.675 , -1.01484775035497 , - 3.68 , -1.13874812866412 , - 3.685 , -1.18063976569405 , - 3.69 , -1.10015331426255 , - 3.695 , -0.87258642642403 , - 3.7 , -0.49606882241743 , - 3.705 , -3.859866915145810E-03 , - 3.71 , 0.536274174652005 , - 3.715 , 1.04296495682297 , - 3.72 , 1.44309287260192 , - 3.725 , 1.67861157963259 , - 3.73 , 1.7100067792938 , - 3.735 , 1.52993945453465 , - 3.74 , 1.17332394495836 , - 3.745 , 0.705456146258253 , - 3.75 , 0.19881090381289 , - 3.755 , -0.27919234543845 , - 3.76 , -0.66960551503829 , - 3.765 , -0.93205155196248 , - 3.77 , -1.05626273217395 , - 3.775 , -1.05832450991158 , - 3.78 , -0.96616376411692 , - 3.785 , -0.81175596966687 , - 3.79 , -0.6282915868819 , - 3.795 , -0.43985996859902 , - 3.8 , -0.25160708755689 , - 3.805 , -5.670095344855360E-02 , - 3.81 , 0.149245250303935 , - 3.815 , 0.367246556878583 , - 3.82 , 0.6001728423305 , - 3.825 , 0.842651059699404 , - 3.83 , 1.06576976559939 , - 3.835 , 1.22584984073272 , - 3.84 , 1.29118905603104 , - 3.845 , 1.25131649498925 , - 3.85 , 1.10483834283469 , - 3.855 , 0.858719957928343 , - 3.86 , 0.546596899968826 , - 3.865 , 0.232913780073415 , - 3.87 , -1.178392373167330E-02 , - 3.875 , -0.13503158427521 , - 3.88 , -0.10474649816556 , - 3.885 , 8.615352677596511E-02 , - 3.89 , 0.410679548743155 , - 3.895 , 0.826698146053687 , - 3.9 , 1.26554832994177 , - 3.905 , 1.65499072160026 , - 3.91 , 1.92591491458393 , - 3.915 , 2.02174681879988 , - 3.92 , 1.91690039738994 , - 3.925 , 1.62485068724173 , - 3.93 , 1.1855690119834 , - 3.935 , 0.653037378513217 , - 3.94 , 9.668746640223920E-02 , - 3.945 , -0.4301741972333 , - 3.95 , -0.83059880381395 , - 3.955 , -1.06253651005356 , - 3.96 , -1.12343783668418 , - 3.965 , -1.02905594887957 , - 3.97 , -0.81438063696053 , - 3.975 , -0.53887343061785 , - 3.98 , -0.27199822870815 , - 3.985 , -6.791154597367660E-02 , - 3.99 , 4.530742217552380E-02 , - 3.995 , 6.262857784368379E-02 , - 4.0 , 2.441344328897610E-03 , - 4.005 , -9.190475922367920E-02 , - 4.01 , -0.16297517487801 , - 4.015 , -0.15723894800794 , - 4.02 , -3.537253515270430E-02 , - 4.025 , 0.193043922562747 , - 4.03 , 0.526357119583793 , - 4.035 , 0.929427363269694 , - 4.04 , 1.34182501632519 , - 4.045 , 1.69896106062951 , - 4.05 , 1.94147299764395 , - 4.055 , 2.02131168938189 , - 4.06 , 1.91405493567929 , - 4.065 , 1.62895808406502 , - 4.07 , 1.20381890102136 , - 4.075 , 0.692151048809337 , - 4.08 , 0.156757509395021 , - 4.085 , -0.38604102584051 , - 4.09 , -0.84133083525009 , - 4.095 , -1.156233699226 , - 4.1 , -1.33230861444598 , - 4.105 , -1.38570779035153 , - 4.11 , -1.34124970345719 , - 4.115 , -1.23546550701648 , - 4.12 , -1.10801235519435 , - 4.125 , -0.98248955079667 , - 4.13 , -0.86003296814087 , - 4.135 , -0.73178734822649 , - 4.14 , -0.59090783838188 , - 4.145 , -0.43318234968906 , - 4.15 , -0.25684880447788 , - 4.155 , -6.856986064204031E-02 , - 4.16 , 0.113175698843399 , - 4.165 , 0.263255109728613 , - 4.17 , 0.35752664561249 , - 4.175 , 0.378805103678297 , - 4.18 , 0.323547996037049 , - 4.185 , 0.206516861655614 , - 4.19 , 5.649526699216110E-02 , - 4.195 , -9.378626227851780E-02 , - 4.2 , -0.21317600878937 , - 4.205 , -0.27287940125587 , - 4.21 , -0.25114165876958 , - 4.215 , -0.14168231890677 , - 4.22 , 4.361065500048250E-02 , - 4.225 , 0.279918937448746 , - 4.23 , 0.535273378579502 , - 4.235 , 0.773588682574221 , - 4.24 , 0.958219914615338 , - 4.245 , 1.05647251768057 , - 4.25 , 1.0429998608356 , - 4.255 , 0.904048723430757 , - 4.26 , 0.64342045751792 , - 4.265 , 0.283827852947311 , - 4.27 , -0.13946358577039 , - 4.275 , -0.58422822501242 , - 4.28 , -1.00040723456331 , - 4.285 , -1.33261766567896 , - 4.29 , -1.53443838788264 , - 4.295 , -1.58333249912622 , - 4.3 , -1.48186835325815 , - 4.305 , -1.25134227914383 , - 4.31 , -0.93134131663624 , - 4.315 , -0.58023320392854 , - 4.32 , -0.263068523183 , - 4.325 , -3.234875382342560E-02 , - 4.33 , 8.104457813070970E-02 , - 4.335 , 6.646358030000100E-02 , - 4.34 , -6.520527065940920E-02 , - 4.345 , -0.27865084678943 , - 4.35 , -0.52301393304868 , - 4.355 , -0.75029273588902 , - 4.36 , -0.92586132464525 , - 4.365 , -1.02745479977821 , - 4.37 , -1.045887182644 , - 4.375 , -0.98998208526761 , - 4.38 , -0.88247620098788 , - 4.385 , -0.74513807964771 , - 4.39 , -0.589693305748 , - 4.395 , -0.4218623825717 , - 4.4 , -0.24559350524832 , - 4.405 , -5.960463612956680E-02 , - 4.41 , 0.142717207535869 , - 4.415 , 0.362879306116347 , - 4.42 , 0.588751862423607 , - 4.425 , 0.799650310566393 , - 4.43 , 0.976747652586761 , - 4.435 , 1.1062713323933 , - 4.44 , 1.17888982115871 , - 4.445 , 1.19440253536595 , - 4.45 , 1.16760308413961 , - 4.455 , 1.12503563953872 , - 4.46 , 1.09428815021162 , - 4.465 , 1.09605242115199 , - 4.47 , 1.141397648121 , - 4.475 , 1.22879693707608 , - 4.48 , 1.34085300252377 , - 4.485 , 1.44734590197994 , - 4.49 , 1.51600244532524 , - 4.495 , 1.52347176965462 , - 4.5 , 1.4600805519962 , - 4.505 , 1.32990917025988 , - 4.51 , 1.15031027736352 , - 4.515 , 0.950259774927611 , - 4.52 , 0.764000212508228 , - 4.525 , 0.620467212343643 , - 4.53 , 0.53443313966959 , - 4.535 , 0.504324479922065 , - 4.54 , 0.515518988342075 , - 4.545 , 0.5449123033391 , - 4.55 , 0.565643760216133 , - 4.555 , 0.553361701085439 , - 4.56 , 0.492730481489852 , - 4.565 , 0.380543114015636 , - 4.57 , 0.224809165664267 , - 4.575 , 4.198032082290820E-02 , - 4.58 , -0.14747370012324 , - 4.585 , -0.32583933056166 , - 4.59 , -0.48349824002692 , - 4.595 , -0.61801754775951 , - 4.6 , -0.72971208292477 , - 4.605 , -0.82083468227042 , - 4.61 , -0.89775066250987 , - 4.615 , -0.96888908984926 , - 4.62 , -1.0384220049282 , - 4.625 , -1.10412227179889 , - 4.63 , -1.16142632685637 , - 4.635 , -1.20605223114456 , - 4.64 , -1.23228150965333 , - 4.645 , -1.2330625103562 , - 4.65 , -1.20312802686153 , - 4.655 , -1.13793589958523 , - 4.66 , -1.0287141764878 , - 4.665 , -0.8641100498206 , - 4.67 , -0.63938852378214 , - 4.675 , -0.35979779312165 , - 4.68 , -3.418457890781780E-02 , - 4.685 , 0.32663500010105 , - 4.69 , 0.70029027164172 , - 4.695 , 1.04848934874391 , - 4.7 , 1.32926995685333 , - 4.705 , 1.5103149027497 , - 4.71 , 1.56674966292037 , - 4.715 , 1.47490809529175 , - 4.72 , 1.22042977817102 , - 4.725 , 0.812026061087399 , - 4.73 , 0.280340511193259 , - 4.735 , -0.25291232049697 , - 4.74 , -0.74295446485739 , - 4.745 , -1.21402870653543 , - 4.75 , -1.61401924449385 , - 4.755 , -1.89622337299338 , - 4.76 , -2.02674956179211 , - 4.765 , -1.98422913056168 , - 4.77 , -1.76288837183623 , - 4.775 , -1.38094808362694 , - 4.78 , -0.88180280078288 , - 4.785 , -0.32340693878301 , - 4.79 , 0.309775095794083 , - 4.795 , 0.96398882181726 , - 4.8 , 1.46521480566007 , - 4.805 , 1.77054065361263 , - 4.81 , 1.87515908448363 , - 4.815 , 1.80763374123846 , - 4.82 , 1.61871625340312 , - 4.825 , 1.37383254873989 , - 4.83 , 1.14323155673988 , - 4.835 , 0.984115330306988 , - 4.84 , 0.925398091665492 , - 4.845 , 0.966346779872473 , - 4.85 , 1.08319151549769 , - 4.855 , 1.23351422222229 , - 4.86 , 1.36203968864373 , - 4.865 , 1.41500821627328 , - 4.87 , 1.35632626255014 , - 4.875 , 1.17338649661648 , - 4.88 , 0.873766424591019 , - 4.885 , 0.482332773802851 , - 4.89 , 3.923546396876550E-02 , - 4.895 , -0.22463035892901 , - 4.9 , -0.44775774321397 , - 4.905 , -0.63337252960387 , - 4.91 , -0.77214474283379 , - 4.915 , -0.86139644715887 , - 4.92 , -0.90539713757332 , - 4.925 , -0.91457475953945 , - 4.93 , -0.90292943826226 , - 4.935 , -0.88570153051275 , - 4.94 , -0.87839307255918 , - 4.945 , -0.89582516241653 , - 4.95 , -0.95014576706764 , - 4.955 , -1.0485044185337 , - 4.96 , -1.1912694657772 , - 4.965 , -1.3708025639651 , - 4.97 , -1.57077187288448 , - 4.975 , -1.76663217835511 , - 4.98 , -1.92803570312605 , - 4.985 , -2.02359808191781 , - 4.99 , -2.0273751484136 , - 4.995 , -1.9250033514058 , - 5.0 , -1.71741034508892 , - 5.005 , -1.42182210128631 , - 5.01 , -1.07072647445332 , - 5.015 , -0.70800393596021 , - 5.02 , -0.38102872779966 , - 5.025 , -0.13042197488723 , - 5.03 , 3.718076749748670E-02 , - 5.035 , 0.111181074997115 , - 5.04 , 1.189110285104030E-02 , - 5.045 , -0.20207868848779 , - 5.05 , -0.44910010485315 , - 5.055 , -0.64276640560255 , - 5.06 , -0.71152270492906 , - 5.065 , -0.61247600528197 , - 5.07 , -0.33784697642092 , - 5.075 , 8.416359716705800E-02 , - 5.08 , 0.593871386434318 , - 5.085 , 1.11066790591664 , - 5.09 , 1.547857061782 , - 5.095 , 1.82798847499016 , - 5.1 , 1.89521989018272 , - 5.105 , 1.72255076224409 , - 5.11 , 1.31357650362981 , - 5.115 , 0.700681089848237 , - 5.12 , -3.944101274735180E-02 , - 5.125 , -0.57538253938727 , - 5.13 , -1.09801528037525 , - 5.135 , -1.54898464132246 , - 5.14 , -1.87419746618154 , - 5.145 , -2.02778376701628 , - 5.15 , -1.97724411607912 , - 5.155 , -1.70971194891691 , - 5.16 , -1.23638258073101 , - 5.165 , -0.59315494390597 , - 5.17 , 0.111368648891046 , - 5.175 , 0.663169389460638 , - 5.18 , 1.18144631611042 , - 5.185 , 1.60890018466206 , - 5.19 , 1.8979822410482 , - 5.195 , 2.01808652053979 , - 5.2 , 1.96085818554624 , - 5.205 , 1.74218321821589 , - 5.21 , 1.39935953655912 , - 5.215 , 0.984200755295425 , - 5.22 , 0.55469135825056 , - 5.225 , 0.166760087786826 , - 5.23 , -0.29010383111112 , - 5.235 , -0.69805571505204 , - 5.24 , -0.82852798007756 , - 5.245 , -0.70078564730017 , - 5.25 , -0.3628421318389 , - 5.255 , 7.584234896818380E-02 , - 5.26 , 0.43610921884854 , - 5.265 , 0.80338816570313 , - 5.27 , 1.14583363535399 , - 5.275 , 1.44233546379898 , - 5.28 , 1.68096745166101 , - 5.285 , 1.85664177773435 , - 5.29 , 1.96856248638458 , - 5.295 , 2.01783075579683 , - 5.3 , 2.00659270193592 , - 5.305 , 1.93938767266716 , - 5.31 , 1.82500672559004 , - 5.315 , 1.67686130322037 , - 5.32 , 1.5118566159347 , - 5.325 , 1.34860724410237 , - 5.33 , 1.20475926474899 , - 5.335 , 1.09288033252557 , - 5.34 , 1.01607186043109 , - 5.345 , 0.965585517364128 , - 5.35 , 0.921875442510843 , - 5.355 , 0.858856383267098 , - 5.36 , 0.750174073799282 , - 5.365 , 0.575950824274314 , - 5.37 , 0.328597045194569 , - 5.375 , 1.652082973209100E-02 , - 5.38 , -0.50276970745072 , - 5.385 , -1.03563631031452 , - 5.39 , -1.50490953601753 , - 5.395 , -1.84994677847168 , - 5.4 , -2.02843329407602 , - 5.405 , -2.02545789978173 , - 5.41 , -1.85714442697612 , - 5.415 , -1.56774223620682 , - 5.42 , -1.22052435654413 , - 5.425 , -0.88506969766425 , - 5.43 , -0.62375651367727 , - 5.435 , -0.47941781141452 , - 5.44 , -0.46672787176114 , - 5.445 , -0.57069258501391 , - 5.45 , -0.75256544897363 , - 5.455 , -0.95943306586182 , - 5.46 , -1.13415327472143 , - 5.465 , -1.22591171353667 , - 5.47 , -1.2008821223853 , - 5.475 , -1.04867466773548 , - 5.48 , -0.7816480899877 , - 5.485 , -0.43025221187204 , - 5.49 , -3.849293308865140E-02 , - 5.495 , 0.351248620973817 , - 5.5 , 0.678851223955433 , - 5.505 , 0.903561274568929 , - 5.51 , 1.000825087451 , - 5.515 , 0.960934560706297 , - 5.52 , 0.78992867723245 , - 5.525 , 0.511317876998132 , - 5.53 , 0.162760320816359 , - 5.535 , -0.15233717951736 , - 5.54 , -0.408210240848 , - 5.545 , -0.62888561745421 , - 5.55 , -0.79619865273995 , - 5.555 , -0.90334422649211 , - 5.56 , -0.957273231721 , - 5.565 , -0.97632112916908 , - 5.57 , -0.98529324126005 , - 5.575 , -1.01088001195299 , - 5.58 , -1.07663632540647 , - 5.585 , -1.1964450302827 , - 5.59 , -1.36885544627383 , - 5.595 , -1.57548223311668 , - 5.6 , -1.78343920945552 , - 5.605 , -1.94998845541488 , - 5.61 , -2.02894698358654 , - 5.615 , -1.97893684719994 , - 5.62 , -1.77192812280346 , - 5.625 , -1.39963819951885 , - 5.63 , -0.87646499571534 , - 5.635 , -0.23861147042705 , - 5.64 , 0.336218007155657 , - 5.645 , 0.847327478768983 , - 5.65 , 1.30857622082849 , - 5.655 , 1.67664606685409 , - 5.66 , 1.91879317489308 , - 5.665 , 2.01692172130926 , - 5.67 , 1.96853013034153 , - 5.675 , 1.78510825075991 , - 5.68 , 1.4896405295593 , - 5.685 , 1.11350916384325 , - 5.69 , 0.692073407024996 , - 5.695 , 0.259804585073245 , - 5.7 , -0.24312332096602 , - 5.705 , -0.83740028991543 , - 5.71 , -1.32862161402076 , - 5.715 , -1.69669262414581 , - 5.72 , -1.93128745142237 , - 5.725 , -2.02921997287969 , - 5.73 , -1.99337280480397 , - 5.735 , -1.83373410433008 , - 5.74 , -1.56747293050187 , - 5.745 , -1.21724094498849 , - 5.75 , -0.81052148648056 , - 5.755 , -0.38038326455022 , - 5.76 , 4.429619989889450E-02 , - 5.765 , 0.482041333875258 , - 5.77 , 0.827113852485307 , - 5.775 , 1.05562255275457 , - 5.78 , 1.15574510229285 , - 5.785 , 1.13102185729002 , - 5.79 , 1.00111402711585 , - 5.795 , 0.796402227894675 , - 5.8 , 0.550299036643284 , - 5.805 , 0.294746376632263 , - 5.81 , 5.779627739619110E-02 , - 5.815 , -0.14033970324891 , - 5.82 , -0.29057904479289 , - 5.825 , -0.39279585396293 , - 5.83 , -0.4494482504971 , - 5.835 , -0.46100119177358 , - 5.84 , -0.42521937611264 , - 5.845 , -0.3375317644422 , - 5.85 , -0.19158847654649 , - 5.855 , 1.752214546441880E-02 , - 5.86 , 0.287160001209617 , - 5.865 , 0.602028255467961 , - 5.87 , 0.933254236049531 , - 5.875 , 1.24149905843902 , - 5.88 , 1.48303299176761 , - 5.885 , 1.61843953382086 , - 5.89 , 1.62241665153411 , - 5.895 , 1.49156853196882 , - 5.9 , 1.24765942303674 , - 5.905 , 0.935345755846739 , - 5.91 , 0.614175990416646 , - 5.915 , 0.345931028275661 , - 5.92 , 0.180659960734569 , - 5.925 , 0.145383600846828 , - 5.93 , 0.237765412366942 , - 5.935 , 0.425793201109318 , - 5.94 , 0.654468234473261 , - 5.945 , 0.858677159866798 , - 5.95 , 0.978207334350809 , - 5.955 , 0.970329031591707 , - 5.96 , 0.818026030367143 , - 5.965 , 0.533251338659083 , - 5.97 , 0.15356868640373 , - 5.975 , -0.26839144886352 , - 5.98 , -0.67878215135657 , - 5.985 , -1.03400683986537 , - 5.99 , -1.3073585979251 , - 5.995 , -1.49178002375022 , - 6.0 , -1.59881218617846 , - 6.005 , -1.65263612785215 , - 6.01 , -1.68040775595467 , - 6.015 , -1.70326118069031 , - 6.02 , -1.73147514087517 , - 6.025 , -1.76409391726272 , - 6.03 , -1.79154678107851 , - 6.035 , -1.80004486312369 , - 6.04 , -1.77657113231061 , - 6.045 , -1.71309083748955 , - 6.05 , -1.60890845106533 , - 6.055 , -1.47045377157793 , - 6.06 , -1.30823176663841 , - 6.065 , -1.13218678075657 , - 6.07 , -0.94831725641373 , - 6.075 , -0.7582938943429 , - 6.08 , -0.56105916215743 , - 6.085 , -0.35465660035081 , - 6.09 , -0.1384716720616 , - 6.095 , 8.181401775998960E-02 , - 6.1 , 0.295120583821675 , - 6.105 , 0.488813785339096 , - 6.11 , 0.645978019217284 , - 6.115 , 0.751956445909178 , - 6.12 , 0.797070178696218 , - 6.125 , 0.778938415578525 , - 6.13 , 0.703933126539259 , - 6.135 , 0.586193282063444 , - 6.14 , 0.444346814137257 , - 6.145 , 0.29825595848257 , - 6.15 , 0.16716086262001 , - 6.155 , 6.845201123569530E-02 , - 6.16 , 1.638790200297000E-02 , - 6.165 , 2.138979757918980E-02 , - 6.17 , 9.013446340544370E-02 , - 6.175 , 0.225364316943996 , - 6.18 , 0.424627726925139 , - 6.185 , 0.678666340108451 , - 6.19 , 0.970459569802561 , - 6.195 , 1.27533903222018 , - 6.2 , 1.56265390764561 , - 6.205 , 1.79967884086063 , - 6.21 , 1.95730777614782 , - 6.215 , 2.01568092318868 , - 6.22 , 1.9680798901563 , - 6.225 , 1.82260275300508 , - 6.23 , 1.6012628707179 , - 6.235 , 1.33584067303513 , - 6.24 , 1.06088096670087 , - 6.245 , 0.806020651973241 , - 6.25 , 0.590240383625112 , - 6.255 , 0.419170058894404 , - 6.26 , 0.285567810216695 , - 6.265 , 0.172882474189092 , - 6.27 , 6.141521693570270E-02 , - 6.275 , -4.100655746000240E-02 , - 6.28 , -0.12748144658853 , - 6.285 , -0.22402606929835 , - 6.29 , -0.32266457931099 , - 6.295 , -0.41245768954213 , - 6.3 , -0.48300494677694 , - 6.305 , -0.5281469572368 , - 6.31 , -0.54867239852271 , - 6.315 , -0.55291028225442 , - 6.32 , -0.55498836852966 , - 6.325 , -0.57168033795742 , - 6.33 , -0.61890124937392 , - 6.335 , -0.70832720330432 , - 6.34 , -0.8444688842815 , - 6.345 , -1.02312789012362 , - 6.35 , -1.23201420479741 , - 6.355 , -1.45302869056683 , - 6.36 , -1.66483750094807 , - 6.365 , -1.84512502578643 , - 6.37 , -1.97287391729285 , - 6.375 , -2.03065548439675 , - 6.38 , -2.00620454087577 , - 6.385 , -1.89315139172675 , - 6.39 , -1.69175663119939 , - 6.395 , -1.40995495579992 , - 6.4 , -1.06376441111769 , - 6.405 , -0.67620069765757 , - 6.41 , -0.27510795942141 , - 6.415 , 0.196812130002227 , - 6.42 , 0.789662759769171 , - 6.425 , 1.26662960840841 , - 6.43 , 1.6072638071671 , - 6.435 , 1.81182394487741 , - 6.44 , 1.89972228643561 , - 6.445 , 1.9047619217593 , - 6.45 , 1.86751034078394 , - 6.455 , 1.8254292028055 , - 6.46 , 1.80357147143536 , - 6.465 , 1.80953648503866 , - 6.47 , 1.83384689586528 , - 6.475 , 1.8545291406415 , - 6.48 , 1.84468010904891 , - 6.485 , 1.78185447755559 , - 6.49 , 1.65634384795161 , - 6.495 , 1.47475850013982 , - 6.5 , 1.25778784095604 , - 6.505 , 1.03382280148781 , - 6.51 , 0.830377669084782 , - 6.515 , 0.664847688813952 , - 6.52 , 0.537441337312092 , - 6.525 , 0.429805314578715 , - 6.53 , 0.31046587513464 , - 6.535 , 0.1447657890999 , - 6.54 , -9.382243026102850E-02 , - 6.545 , -0.41334712070585 , - 6.55 , -0.79651775006838 , - 6.555 , -1.20028045361043 , - 6.56 , -1.56291508214219 , - 6.565 , -1.81661688690887 , - 6.57 , -1.90206035531056 , - 6.575 , -1.7817477770441 , - 6.58 , -1.44921463753588 , - 6.585 , -0.93148892423534 , - 6.59 , -0.28406148521622 , - 6.595 , 0.323315074176515 , - 6.6 , 0.852343584238104 , - 6.605 , 1.31274405752464 , - 6.61 , 1.66746511449112 , - 6.615 , 1.89908333611956 , - 6.62 , 2.00928735485692 , - 6.625 , 2.01484159347826 , - 6.63 , 1.94157792559844 , - 6.635 , 1.81783611017065 , - 6.64 , 1.66894503437948 , - 6.645 , 1.51424202651612 , - 6.65 , 1.36676756429498 , - 6.655 , 1.23440796614096 , - 6.66 , 1.12141683734346 , - 6.665 , 1.03005163859298 , - 6.67 , 0.961856012808879 , - 6.675 , 0.917594207115419 , - 6.68 , 0.895802572654735 , - 6.685 , 0.891399934871178 , - 6.69 , 0.895639060058472 , - 6.695 , 0.897175457172006 , - 6.7 , 0.883661601343515 , - 6.705 , 0.844008961722013 , - 6.71 , 0.77132601406367 , - 6.715 , 0.665213447750178 , - 6.72 , 0.531957875807601 , - 6.725 , 0.382692370009228 , - 6.73 , 0.230704777961798 , - 6.735 , 8.848409780228460E-02 , - 6.74 , -4.320967298403890E-02 , - 6.745 , -0.1762892860789 , - 6.75 , -0.28784586821218 , - 6.755 , -0.38905860495499 , - 6.76 , -0.49291382383649 , - 6.765 , -0.61009214038178 , - 6.77 , -0.74528548081034 , - 6.775 , -0.89462751554703 , - 6.78 , -1.04544755808821 , - 6.785 , -1.17892732569852 , - 6.79 , -1.27460153013389 , - 6.795 , -1.31507899117539 , - 6.8 , -1.28996744751844 , - 6.805 , -1.19853880216558 , - 6.81 , -1.0504463612584 , - 6.815 , -0.86390673664632 , - 6.82 , -0.66172430237656 , - 6.825 , -0.46650461944826 , - 6.83 , -0.29641016005237 , - 6.835 , -0.16215486668974 , - 6.84 , -6.552041776213589E-02 , - 6.845 , 2.987151640449150E-04 , - 6.85 , 4.839493719297370E-02 , - 6.855 , 9.446598470843660E-02 , - 6.86 , 0.152946671436979 , - 6.865 , 0.234067255310907 , - 6.87 , 0.342244784612781 , - 6.875 , 0.475796904621799 , - 6.88 , 0.627950076248601 , - 6.885 , 0.788973056491094 , - 6.89 , 0.948691666991149 , - 6.895 , 1.09834384227231 , - 6.9 , 1.23115050816982 , - 6.905 , 1.34171557597024 , - 6.91 , 1.42465179927775 , - 6.915 , 1.47287601846948 , - 6.92 , 1.47626092610496 , - 6.925 , 1.42154296744535 , - 6.93 , 1.29406455566583 , - 6.935 , 1.08117541948277 , - 6.94 , 0.776554035067551 , - 6.945 , 0.384383520531035 , - 6.95 , -7.294167926560280E-02 , - 6.955 , -0.53864400514197 , - 6.96 , -1.00153859379899 , - 6.965 , -1.41800783516812 , - 6.97 , -1.7468581519585 , - 6.975 , -1.95670089086248 , - 6.98 , -2.03182599021495 , - 6.985 , -1.97504743961906 , - 6.99 , -1.80676558399137 , - 6.995 , -1.5604834986916 , - 7.0 , -1.27576644446333 , - 7.005 , -0.9903221748174 , - 7.01 , -0.73330353810734 , - 7.015 , -0.52160326879535 , - 7.02 , -0.35985223488993 , - 7.025 , -0.24369954400838 , - 7.03 , -0.16525998770838 , - 7.035 , -0.11901231195031 , - 7.04 , -0.10598389561423 , - 7.045 , -0.13446900972305 , - 7.05 , -0.21699230917524 , - 7.055 , -0.36458839091288 , - 7.06 , -0.58005276943233 , - 7.065 , -0.85208512054878 , - 7.07 , -1.15259800704237 , - 7.075 , -1.43896995914881 , - 7.08 , -1.66118309359685 , - 7.085 , -1.771927531099 , - 7.09 , -1.73721975477998 , - 7.095 , -1.54526433804976 , - 7.1 , -1.21113953262348 , - 7.105 , -0.7752249017621 , - 7.11 , -0.29527299039846 , - 7.115 , 0.173294693493191 , - 7.12 , 0.57635137765972 , - 7.125 , 0.862335395139578 , - 7.13 , 1.01919271305477 , - 7.135 , 1.06290746127159 , - 7.14 , 1.03167712327493 , - 7.145 , 0.975104812475545 , - 7.15 , 0.94186991196106 , - 7.155 , 0.968697291206275 , - 7.16 , 1.07242991307441 , - 7.165 , 1.24693307983413 , - 7.17 , 1.46588613539846 , - 7.175 , 1.69040391004537 , - 7.18 , 1.87856926470802 , - 7.185 , 1.9942412785979 , - 7.19 , 2.01380495894182 , - 7.195 , 1.93002933646123 , - 7.2 , 1.75219708416187 , - 7.205 , 1.50259348018555 , - 7.21 , 1.21097997176944 , - 7.215 , 0.908929916225265 , - 7.22 , 0.624987318443838 , - 7.225 , 0.380818385977012 , - 7.23 , 0.188682790341481 , - 7.235 , 5.054908150564660E-02 , - 7.24 , -4.224733175465410E-02 , - 7.245 , -0.10533217769884 , - 7.25 , -0.15872049577028 , - 7.255 , -0.22626933934594 , - 7.26 , -0.32933473878503 , - 7.265 , -0.48196141281812 , - 7.27 , -0.68656470353389 , - 7.275 , -0.93107691321487 , - 7.28 , -1.18865855652987 , - 7.285 , -1.420854392386 , - 7.29 , -1.58410377773137 , - 7.295 , -1.63852514448294 , - 7.3 , -1.55725203777855 , - 7.305 , -1.33440140393595 , - 7.31 , -0.98961414150744 , - 7.315 , -0.56741260276393 , - 7.32 , -0.13082880911958 , - 7.325 , 0.249583666745638 , - 7.33 , 0.508940072170202 , - 7.335 , 0.600662717049061 , - 7.34 , 0.5059779991769 , - 7.345 , 0.238142376340394 , - 7.35 , -0.15979854274957 , - 7.355 , -0.62330642360817 , - 7.36 , -1.07861985315351 , - 7.365 , -1.45613573961171 , - 7.37 , -1.70221047327019 , - 7.375 , -1.78733777799186 , - 7.38 , -1.70935128300863 , - 7.385 , -1.49139661468471 , - 7.39 , -1.17576612947581 , - 7.395 , -0.81553092872387 , - 7.4 , -0.46579815462372 , - 7.405 , -0.17584397718572 , - 7.41 , 1.695055532407140E-02 , - 7.415 , 9.080438530410280E-02 , - 7.42 , 4.100203845188310E-02 , - 7.425 , -0.12015714114647 , - 7.43 , -0.36451642152235 , - 7.435 , -0.65063615988914 , - 7.44 , -0.92820901616803 , - 7.445 , -1.14411024994249 , - 7.45 , -1.2495457268474 , - 7.455 , -1.20784941543681 , - 7.46 , -1.00217372922289 , - 7.465 , -0.64135799082343 , - 7.47 , -0.16185956349448 , - 7.475 , 0.375443341531982 , - 7.48 , 0.893242359584305 , - 7.485 , 1.30942170236106 , - 7.49 , 1.55069511538195 , - 7.495 , 1.56597687306026 , - 7.5 , 1.33649434622083 , - 7.505 , 0.880087983425295 , - 7.51 , 0.248772549844589 , - 7.515 , -0.36466467822546 , - 7.52 , -0.91944206639744 , - 7.525 , -1.41086648314942 , - 7.53 , -1.78197182048109 , - 7.535 , -1.99448021035504 , - 7.54 , -2.03276742886028 , - 7.545 , -1.9038540437772 , - 7.55 , -1.63408290724591 , - 7.555 , -1.26366851276266 , - 7.56 , -0.84036300953546 , - 7.565 , -0.41319072336647 , - 7.57 , -2.695184824283270E-02 , - 7.575 , 0.376706658165673 , - 7.58 , 0.651108722060469 , - 7.585 , 0.775943751253261 , - 7.59 , 0.755597751751617 , - 7.595 , 0.613374035034045 , - 7.6 , 0.389100193892965 , - 7.605 , 0.134140214335999 , - 7.61 , -9.593512494436110E-02 , - 7.615 , -0.25014262596395 , - 7.62 , -0.29113724407252 , - 7.625 , -0.20287737386171 , - 7.63 , 5.024227092122790E-03 , - 7.635 , 0.297903261089418 , - 7.64 , 0.622107890736794 , - 7.645 , 0.91558081793758 , - 7.65 , 1.12076183929425 , - 7.655 , 1.19700603742361 , - 7.66 , 1.12967888152307 , - 7.665 , 0.933743975370447 , - 7.67 , 0.650793261469538 , - 7.675 , 0.339973230252299 , - 7.68 , 6.485809767286120E-02 , - 7.685 , -0.12047151548951 , - 7.69 , -0.18271341139574 , - 7.695 , -0.11542038316497 , - 7.7 , 6.117124311775080E-02 , - 7.705 , 0.306221765396461 , - 7.71 , 0.568625694223555 , - 7.715 , 0.79886093305278 , - 7.72 , 0.959184513633666 , - 7.725 , 1.02975813458714 , - 7.73 , 1.00975707269538 , - 7.735 , 0.913870269761431 , - 7.74 , 0.765608368548335 , - 7.745 , 0.589594520216864 , - 7.75 , 0.405299730586112 , - 7.755 , 0.223985767660469 , - 7.76 , 4.920974997763450E-02 , - 7.765 , -0.11994024975627 , - 7.77 , -0.28424112296356 , - 7.775 , -0.43999294669787 , - 7.78 , -0.57663798061898 , - 7.785 , -0.67751213622858 , - 7.79 , -0.72360079867587 , - 7.795 , -0.69901457723046 , - 7.8 , -0.59650776204881 , - 7.805 , -0.42155886366402 , - 7.81 , -0.19380300792328 , - 7.815 , 5.489933475191600E-02 , - 7.82 , 0.285466317840837 , - 7.825 , 0.458377987772727 , - 7.83 , 0.540543411689915 , - 7.835 , 0.510857284716815 , - 7.84 , 0.363486292918927 , - 7.845 , 0.108336402431131 , - 7.85 , -0.21209396424761 , - 7.855 , -0.56957977141521 , - 7.86 , -0.94077073678275 , - 7.865 , -1.29262615047061 , - 7.87 , -1.59622106208727 , - 7.875 , -1.82918316989524 , - 7.88 , -1.97699031089989 , - 7.885 , -2.03327946447786 , - 7.89 , -1.99933934346025 , - 7.895 , -1.88300955675939 , - 7.9 , -1.69721418310355 , - 7.905 , -1.45829064978291 , - 7.91 , -1.18410498022345 , - 7.915 , -0.8919394708508 , - 7.92 , -0.59649837620085 , - 7.925 , -0.30856724453543 , - 7.93 , -3.473084459177880E-02 , - 7.935 , 0.243954038684612 , - 7.94 , 0.505067577023267 , - 7.945 , 0.74523171014185 , - 7.95 , 0.961076322702563 , - 7.955 , 1.14544017577101 , - 7.96 , 1.28755260199966 , - 7.965 , 1.37508301728453 , - 7.97 , 1.39752728794968 , - 7.975 , 1.35018389601987 , - 7.98 , 1.23776787698572 , - 7.985 , 1.07653932806098 , - 7.99 , 0.893865005632781 , - 7.995 , 0.724806073674302 , - 8.0 , 0.606180934525952 , - 8.005 , 0.569233587341791 , - 8.01 , 0.632383043958699 , - 8.015 , 0.795725327814524 , - 8.02 , 1.03874194319127 , - 8.025 , 1.32196705023762 , - 8.03 , 1.59246805399968 , - 8.035 , 1.79229440498998 , - 8.04 , 1.86849022149291 , - 8.045 , 1.78281948278322 , - 8.05 , 1.51926230063055 , - 8.055 , 1.08785213984058 , - 8.06 , 0.524349594247236 , - 8.065 , -0.1140897577962 , - 8.07 , -0.75657207669552 , - 8.075 , -1.32834364834345 , - 8.08 , -1.76124306233852 , - 8.085 , -2.00310207974856 , - 8.09 , -2.02480910234302 , - 8.095 , -1.82430118945956 , - 8.1 , -1.42701906953591 , - 8.105 , -0.88275056011672 , - 8.11 , -0.25930710346958 , - 8.115 , 0.36611395388268 , - 8.12 , 0.916779579720004 , - 8.125 , 1.32634332320688 , - 8.13 , 1.54748990874522 , - 8.135 , 1.55804957216978 , - 8.14 , 1.36358979345776 , - 8.145 , 0.996118542284482 , - 8.15 , 0.509028622424576 , - 8.155 , -3.108833671467930E-02 , - 8.16 , -0.55458355458891 , - 8.165 , -0.9992113406596 , - 8.17 , -1.31909921378195 , - 8.175 , -1.4907344205054 , - 8.18 , -1.51500626604052 , - 8.185 , -1.41506172917135 , - 8.19 , -1.23045719608832 , - 8.195 , -1.00875563741852 , - 8.2 , -0.79618535909745 , - 8.205 , -0.62910374181022 , - 8.21 , -0.52781524086439 , - 8.215 , -0.49375763302869 , - 8.22 , -0.51036868088539 , - 8.225 , -0.54721127046085 , - 8.23 , -0.56640455149806 , - 8.235 , -0.5300607346312 , - 8.24 , -0.40739746710395 , - 8.245 , -0.18031656379607 , - 8.25 , 9.909295562647380E-02 , - 8.255 , 0.384178096593259 , - 8.26 , 0.711568797471058 , - 8.265 , 1.05465985685733 , - 8.27 , 1.38307322715161 , - 8.275 , 1.66640133480447 , - 8.28 , 1.87778042356214 , - 8.285 , 1.99690726227749 , - 8.29 , 2.01218574892656 , - 8.295 , 1.9218468256107 , - 8.3 , 1.73397654400921 , - 8.305 , 1.4654715893691 , - 8.31 , 1.14002097734659 , - 8.315 , 0.785289540807961 , - 8.32 , 0.429654714191936 , - 8.325 , 9.887434390542030E-02 , - 8.33 , -0.27373446466779 , - 8.335 , -0.61453278823147 , - 8.34 , -0.86361514651737 , - 8.345 , -1.02764207046752 , - 8.35 , -1.12312770730449 , - 8.355 , -1.17242345160079 , - 8.36 , -1.19890949112902 , - 8.365 , -1.22231476786338 , - 8.37 , -1.25506074091502 , - 8.375 , -1.30037291926648 , - 8.38 , -1.35246560106362 , - 8.385 , -1.39867274893801 , - 8.39 , -1.42300013455657 , - 8.395 , -1.41027137760835 , - 8.4 , -1.34988412628361 , - 8.405 , -1.23833354826905 , - 8.41 , -1.08003474781669 , - 8.415 , -0.8863811686465 , - 8.42 , -0.67334691448991 , - 8.425 , -0.45824149658395 , - 8.43 , -0.25648271091485 , - 8.435 , -7.919497664086800E-02 , - 8.44 , 6.790702566583660E-02 , - 8.445 , 0.184336104551994 , - 8.45 , 0.273607496426052 , - 8.455 , 0.341427765954767 , - 8.46 , 0.393859568348449 , - 8.465 , 0.436054008314734 , - 8.47 , 0.471822329873715 , - 8.475 , 0.503940686983312 , - 8.48 , 0.534766790770446 , - 8.485 , 0.566720547413461 , - 8.49 , 0.602204083610117 , - 8.495 , 0.642759211345947 , - 8.5 , 0.687546596661957 , - 8.505 , 0.73161370540631 , - 8.51 , 0.764633590722345 , - 8.515 , 0.770779801924118 , - 8.52 , 0.730226474533298 , - 8.525 , 0.622364880535585 , - 8.53 , 0.430299195926097 , - 8.535 , 0.145690142921501 , - 8.54 , -0.1875029917819 , - 8.545 , -0.54835468448798 , - 8.55 , -0.93829077724458 , - 8.555 , -1.32093112448324 , - 8.56 , -1.65568314187632 , - 8.565 , -1.90374313930578 , - 8.57 , -2.03414217931564 , - 8.575 , -2.02871594615485 , - 8.58 , -1.88502979034511 , - 8.585 , -1.61666670363564 , - 8.59 , -1.25090542907548 , - 8.595 , -0.82439719072454 , - 8.6 , -0.3777961843308 , - 8.605 , 5.997342456618780E-02 , - 8.61 , 0.498580351025926 , - 8.615 , 0.848666797179574 , - 8.62 , 1.09518857615416 , - 8.625 , 1.23554791479412 , - 8.63 , 1.2781763580922 , - 8.635 , 1.2403900007702 , - 8.64 , 1.14586627728766 , - 8.645 , 1.02207806372073 , - 8.65 , 0.897804023904626 , - 8.655 , 0.800618191332478 , - 8.66 , 0.754133205007585 , - 8.665 , 0.775081318262375 , - 8.67 , 0.87060821275674 , - 8.675 , 1.03627950859147 , - 8.68 , 1.25531150972849 , - 8.685 , 1.49959206680695 , - 8.69 , 1.73283203030496 , - 8.695 , 1.91564235877547 , - 8.7 , 2.01171708813146 , - 8.705 , 1.99404478322172 , - 8.71 , 1.85004122617725 , - 8.715 , 1.5844790314963 , - 8.72 , 1.21937543098226 , - 8.725 , 0.790685383472318 , - 8.73 , 0.34253999395618 , - 8.735 , -8.315108890721259E-02 , - 8.74 , -0.45782997432698 , - 8.745 , -0.73560630397696 , - 8.75 , -0.90358121095544 , - 8.755 , -0.96494822819405 , - 8.76 , -0.93630744097796 , - 8.765 , -0.84299937779174 , - 8.77 , -0.71350666162014 , - 8.775 , -0.57402043454602 , - 8.78 , -0.44427168990607 , - 8.785 , -0.33542713208977 , - 8.79 , -0.2501116833682 , - 8.795 , -0.18401361018569 , - 8.8 , -0.12842784460002 , - 8.805 , -7.314603730146210E-02 , - 8.81 , -9.074234322190291E-03 , - 8.815 , 7.000693452309770E-02 , - 8.82 , 0.166710878734688 , - 8.825 , 0.280110709519932 , - 8.83 , 0.406273894637497 , - 8.835 , 0.539123020255816 , - 8.84 , 0.671480131538164 , - 8.845 , 0.796107038123461 , - 8.85 , 0.906615981394394 , - 8.855 , 0.998324490593576 , - 8.86 , 1.0690620538107 , - 8.865 , 1.11975528767815 , - 8.87 , 1.15453246345251 , - 8.875 , 1.18023682665442 , - 8.88 , 1.20532586633037 , - 8.885 , 1.23820591293966 , - 8.89 , 1.28520280175297 , - 8.895 , 1.3486570631952 , - 8.9 , 1.42571219461991 , - 8.905 , 1.50820033663049 , - 8.91 , 1.58374708347145 , - 8.915 , 1.63800541668437 , - 8.92 , 1.65764589236558 , - 8.925 , 1.63341505537543 , - 8.93 , 1.5624359419512 , - 8.935 , 1.44906883520367 , - 8.94 , 1.30406714173948 , - 8.945 , 1.14214506133789 , - 8.95 , 0.97845385721763 , - 8.955 , 0.824773099970328 , - 8.96 , 0.686415293227468 , - 8.965 , 0.560675032421674 , - 8.97 , 0.437346493634863 , - 8.975 , 0.301223152764708 , - 8.98 , 0.136102516376474 , - 8.985 , -7.065849555314389E-02 , - 8.99 , -0.32407738413447 , - 8.995 , -0.61898581453294 , - 9.0 , -0.93960037368359 , - 9.005 , -1.26143943272218 , - 9.01 , -1.55516650644025 , - 9.015 , -1.79156612412015 , - 9.02 , -1.94652674681638 , - 9.025 , -2.00503791616427 , - 9.03 , -1.96340298656283 , - 9.035 , -1.82929859570769 , - 9.04 , -1.61975611512981 , - 9.045 , -1.35763976380722 , - 9.05 , -1.06749188919142 , - 9.055 , -0.77165747380896 , - 9.06 , -0.48743715471134 , - 9.065 , -0.22573691716227 , - 9.07 , 8.680561556133970E-03 , - 9.075 , 0.215640087376458 , - 9.08 , 0.397259171267499 , - 9.085 , 0.555581085303924 , - 9.09 , 0.690729679309828 , - 9.095 , 0.800029757983254 , - 9.1 , 0.878247351202657 , - 9.105 , 0.91878759810445 , - 9.11 , 0.915444383097841 , - 9.115 , 0.864214490635585 , - 9.12 , 0.76472553582975 , - 9.125 , 0.620899809131162 , - 9.13 , 0.440670714935382 , - 9.135 , 0.234785445409552 , - 9.14 , 1.501866477042620E-02 , - 9.145 , -0.16256660035877 , - 9.15 , -0.33008216119127 , - 9.155 , -0.49037224168296 , - 9.16 , -0.64324845085619 , - 9.165 , -0.79113983805113 , - 9.17 , -0.93796449486453 , - 9.175 , -1.0876496844508 , - 9.18 , -1.24257624122444 , - 9.185 , -1.40228132491324 , - 9.19 , -1.56269378306469 , - 9.195 , -1.71610185022193 , - 9.2 , -1.85187081485719 , - 9.205 , -1.95781829391389 , - 9.21 , -2.02202032577224 , - 9.215 , -2.03476784125131 , - 9.22 , -1.99032018745331 , - 9.225 , -1.88813289198619 , - 9.23 , -1.73333557866961 , - 9.235 , -1.53634649422576 , - 9.24 , -1.31166062827625 , - 9.245 , -1.075970419663 , - 9.25 , -0.84593818781158 , - 9.255 , -0.63597140868637 , - 9.26 , -0.4563931782957 , - 9.265 , -0.31231411198407 , - 9.27 , -0.20343660584305 , - 9.275 , -0.12481923225902 , - 9.28 , -6.848370877973950E-02 , - 9.285 , -2.555427519972480E-02 , - 9.29 , 1.844706127350420E-02 , - 9.295 , 6.430221576072399E-02 , - 9.3 , 0.10743778394149 , - 9.305 , 0.141299341041405 , - 9.31 , 0.154447624403715 , - 9.315 , 0.133048252401135 , - 9.32 , 6.418690106369780E-02 , - 9.325 , -6.064647417949840E-02 , - 9.33 , -0.24265292279827 , - 9.335 , -0.47405842905361 , - 9.34 , -0.73810449789487 , - 9.345 , -1.0108148464089 , - 9.35 , -1.26431984266432 , - 9.355 , -1.47118757622947 , - 9.36 , -1.60894844812626 , - 9.365 , -1.66394726283033 , - 9.37 , -1.63377593114862 , - 9.375 , -1.52779564631775 , - 9.38 , -1.36560192630373 , - 9.385 , -1.17367488772945 , - 9.39 , -0.98085465048613 , - 9.395 , -0.81346133563023 , - 9.4 , -0.6909389063025 , - 9.405 , -0.62276084953816 , - 9.41 , -0.607149409463 , - 9.415 , -0.63177724383888 , - 9.42 , -0.67625991576389 , - 9.425 , -0.71589163373072 , - 9.43 , -0.72595664968346 , - 9.435 , -0.68589387170155 , - 9.44 , -0.58268627289106 , - 9.445 , -0.412930213848 , - 9.45 , -0.18338626940602 , - 9.455 , 8.998844390524470E-02 , - 9.46 , 0.384209486902062 , - 9.465 , 0.672301526951598 , - 9.47 , 0.926752158620487 , - 9.475 , 1.12295373373336 , - 9.48 , 1.24217806572443 , - 9.485 , 1.27378905610875 , - 9.49 , 1.21646747255966 , - 9.495 , 1.07838936456105 , - 9.5 , 0.876298148043991 , - 9.505 , 0.633562127434793 , - 9.51 , 0.377406516734523 , - 9.515 , 0.135641869430563 , - 9.52 , -6.672476216219871E-02 , - 9.525 , -0.21056458019019 , - 9.53 , -0.28496091918619 , - 9.535 , -0.28841969553759 , - 9.54 , -0.2287139810782 , - 9.545 , -0.12132500570029 , - 9.55 , 7.625888610971770E-03 , - 9.555 , 0.116222883261377 , - 9.56 , 0.213774951165706 , - 9.565 , 0.289397517200485 , - 9.57 , 0.338281477903747 , - 9.575 , 0.362345137379695 , - 9.58 , 0.369650428641696 , - 9.585 , 0.372716892921114 , - 9.59 , 0.386055603509022 , - 9.595 , 0.423398634616031 , - 9.6 , 0.495129281552051 , - 9.605 , 0.60639781396735 , - 9.61 , 0.756225797586165 , - 9.615 , 0.937731164545477 , - 9.62 , 1.13931299682061 , - 9.625 , 1.34651259505288 , - 9.63 , 1.54413547032879 , - 9.635 , 1.71824818793864 , - 9.64 , 1.85768676819293 , - 9.645 , 1.95489941817505 , - 9.65 , 2.00610002856624 , - 9.655 , 2.01090936461916 , - 9.66 , 1.97169865125757 , - 9.665 , 1.89287748522473 , - 9.67 , 1.78030387269109 , - 9.675 , 1.64090911938383 , - 9.68 , 1.48250660526215 , - 9.685 , 1.31363233674109 , - 9.69 , 1.14327915207579 , - 9.695 , 0.980390644995991 , - 9.7 , 0.833122502994828 , - 9.705 , 0.707943691566063 , - 9.71 , 0.608782533951479 , - 9.715 , 0.536448337875884 , - 9.72 , 0.488573445463521 , - 9.725 , 0.46016643878741 , - 9.73 , 0.444740766028055 , - 9.735 , 0.435798656192539 , - 9.74 , 0.428373605655483 , - 9.745 , 0.420256963476142 , - 9.75 , 0.412594868385096 , - 9.755 , 0.409674164332935 , - 9.76 , 0.417930829751558 , - 9.765 , 0.444371250852317 , - 9.77 , 0.494775704856077 , - 9.775 , 0.572057120950962 , - 9.78 , 0.675155981128035 , - 9.785 , 0.798679222993941 , - 9.79 , 0.933324321352313 , - 9.795 , 1.06694698775423 , - 9.8 , 1.18603236012388 , - 9.805 , 1.27724967196587 , - 9.81 , 1.32882747232424 , - 9.815 , 1.33155990686688 , - 9.82 , 1.27942417786924 , - 9.825 , 1.16984949079063 , - 9.83 , 1.00375336219652 , - 9.835 , 0.78541101181126 , - 9.84 , 0.522229879372249 , - 9.845 , 0.224363288427596 , - 9.85 , -7.544298823405959E-02 , - 9.855 , -0.32414911077947 , - 9.86 , -0.56925067043303 , - 9.865 , -0.80153173249929 , - 9.87 , -1.01385881998571 , - 9.875 , -1.20197758458175 , - 9.88 , -1.36481009682394 , - 9.885 , -1.50413197543959 , - 9.89 , -1.62360229940215 , - 9.895 , -1.72737604935286 , - 9.9 , -1.81858556613035 , - 9.905 , -1.89811306323292 , - 9.91 , -1.96399286416952 , - 9.915 , -2.01169321437822 , - 9.92 , -2.03524420540911 , - 9.925 , -2.02897089319518 , - 9.93 , -1.9893635845244 , - 9.935 , -1.91657784009958 , - 9.94 , -1.81508296294018 , - 9.945 , -1.69320466339342 , - 9.95 , -1.56159803137893 , - 9.955 , -1.4309899156992 , - 9.96 , -1.309755744458 , - 9.965 , -1.20194945689331 , - 9.97 , -1.10635858004562 , - 9.975 , -1.01686709903203 , - 9.98 , -0.92410491644605 , - 9.985 , -0.81798616411117 , - 9.99 , -0.69053338279253 , - 9.995 , -0.53828091954851 , - 10.0 , -0.36368359344091 , - 10.005 , -0.17516204935777 , - 10.01 , 3.283892190983560E-02 , - 10.015 , 0.330694200317556 , - 10.02 , 0.577629318788318 , - 10.025 , 0.752762239562344 , - 10.03 , 0.843359973197779 , - 10.035 , 0.846296788144704 , - 10.04 , 0.767736310318568 , - 10.045 , 0.621457280597053 , - 10.05 , 0.426437216065522 , - 10.055 , 0.204358996732675 , - 10.06 , -2.248438925201870E-02 , - 10.065 , -0.23266656596899 , - 10.07 , -0.40662586629101 , - 10.075 , -0.52750200085185 , - 10.08 , -0.58215648669077 , - 10.085 , -0.56248497246021 , - 10.09 , -0.4669190429802 , - 10.095 , -0.30169803576621 , - 10.1 , -8.141467321068210E-02 , - 10.105 , 0.171736188042055 , - 10.11 , 0.430255910671489 , - 10.115 , 0.665052841920839 , - 10.12 , 0.849933032813423 , - 10.125 , 0.965995866692921 , - 10.13 , 1.00493830188015 , - 10.135 , 0.970469370709915 , - 10.14 , 0.877402798238989 , - 10.145 , 0.748601808713132 , - 10.15 , 0.610481808617733 , - 10.155 , 0.488130421487012 , - 10.16 , 0.401133125757128 , - 10.165 , 0.360990723458034 , - 10.17 , 0.370538085006636 , - 10.175 , 0.425250483406994 , - 10.18 , 0.515772332268937 , - 10.185 , 0.630771503752903 , - 10.19 , 0.759255763887151 , - 10.195 , 0.891778215264391 , - 10.2 , 1.02038573505463 , - 10.205 , 1.13765165967161 , - 10.21 , 1.2354498601353 , - 10.215 , 1.30423925529986 , - 10.22 , 1.3333818353705 , - 10.225 , 1.31262109496076 , - 10.23 , 1.23439607687214 , - 10.235 , 1.09630588839482 , - 10.24 , 0.902881246184685 , - 10.245 , 0.665930257015006 , - 10.25 , 0.403145595569434 , - 10.255 , 0.135167464543167 , - 10.26 , -0.1181889683435 , - 10.265 , -0.34158112353947 , - 10.27 , -0.5266606974231 , - 10.275 , -0.67279436439978 , - 10.28 , -0.78577175818034 , - 10.285 , -0.87491503414711 , - 10.29 , -0.94943871678613 , - 10.295 , -1.01514749755514 , - 10.3 , -1.07240552249575 , - 10.305 , -1.1159454664886 , - 10.31 , -1.13652214942974 , - 10.315 , -1.12387719989209 , - 10.32 , -1.07009467236169 , - 10.325 , -0.9723415710773 , - 10.33 , -0.83421714797159 , - 10.335 , -0.66537603566363 , - 10.34 , -0.47961924019497 , - 10.345 , -0.29207437055768 , - 10.35 , -0.11633661841191 , - 10.355 , 3.762456752764130E-02 , - 10.36 , 0.164274796553055 , - 10.365 , 0.262005149857291 , - 10.37 , 0.331666422264028 , - 10.375 , 0.374819782001995 , - 10.38 , 0.392377294442122 , - 10.385 , 0.384141260826285 , - 10.39 , 0.34936414194296 , - 10.395 , 0.288052561776111 , - 10.4 , 0.20242178785536 , - 10.405 , 9.785306567479871E-02 , - 10.41 , -1.713557520971730E-02 , - 10.415 , -0.13204374310037 , - 10.42 , -0.23639873810073 , - 10.425 , -0.32201635263159 , - 10.43 , -0.38475152712529 , - 10.435 , -0.4251245384254 , - 10.44 , -0.44753546126283 , - 10.445 , -0.45825628870499 , - 10.45 , -0.46279334754373 , - 10.455 , -0.46346276944743 , - 10.46 , -0.45799981189361 , - 10.465 , -0.43972280992741 , - 10.47 , -0.39929302861398 , - 10.475 , -0.32758719542718 , - 10.48 , -0.21885278786041 , - 10.485 , -7.315503161217039E-02 , - 10.49 , 0.102651407152514 , - 10.495 , 0.295816563735959 , - 10.5 , 0.490226934148564 , - 10.505 , 0.669891810457828 , - 10.51 , 0.82237594525252 , - 10.515 , 0.941216017829958 , - 10.52 , 1.02661998674533 , - 10.525 , 1.08430529858058 , - 10.53 , 1.12286636573309 , - 10.535 , 1.15051988582967 , - 10.54 , 1.17222128266484 , - 10.545 , 1.18801420247095 , - 10.55 , 1.19307665922947 , - 10.555 , 1.17938295001738 , - 10.56 , 1.13840303313913 , - 10.565 , 1.06394181580147 , - 10.57 , 0.95422952397942 , - 10.575 , 0.812611611237298 , - 10.58 , 0.646677789199809 , - 10.585 , 0.466152014272008 , - 10.59 , 0.280289725059773 , - 10.595 , 9.565146176778430E-02 , - 10.6 , -8.499446193837400E-02 , - 10.605 , -0.26230216706899 , - 10.61 , -0.4386137767682 , - 10.615 , -0.6154630451662 , - 10.62 , -0.79113786663093 , - 10.625 , -0.9591661750224 , - 10.63 , -1.10826769502301 , - 10.635 , -1.22391556601366 , - 10.64 , -1.29112533315649 , - 10.645 , -1.29775475114347 , - 10.65 , -1.23742365152054 , - 10.655 , -1.11129656465532 , - 10.66 , -0.9282894842173 , - 10.665 , -0.70371663339333 , - 10.67 , -0.45680011277455 , - 10.675 , -0.20771128037236 , - 10.68 , 2.512459612945220E-02 , - 10.685 , 0.226918245807304 , - 10.69 , 0.387350552286146 , - 10.695 , 0.500473670939197 , - 10.7 , 0.564029266358019 , - 10.705 , 0.578637288901258 , - 10.71 , 0.547211894628189 , - 10.715 , 0.474757060973486 , - 10.72 , 0.368436624005821 , - 10.725 , 0.237615830995378 , - 10.73 , 9.352792827951401E-02 , - 10.735 , -5.167273774008210E-02 , - 10.74 , -0.18646809540466 , - 10.745 , -0.30187135567744 , - 10.75 , -0.39316916542135 , - 10.755 , -0.46096802891446 , - 10.76 , -0.51111268636195 , - 10.765 , -0.55334646668629 , - 10.77 , -0.59891300067983 , - 10.775 , -0.65764678122702 , - 10.78 , -0.73525453842381 , - 10.785 , -0.83150017185443 , - 10.79 , -0.93976747420304 , - 10.795 , -1.04812248595262 , - 10.8 , -1.14160318244191 , - 10.805 , -1.2051488991501 , - 10.81 , -1.22646384585139 , - 10.815 , -1.19814339245798 , - 10.82 , -1.11865520710004 , - 10.825 , -0.9920714349609 , - 10.83 , -0.82681485385664 , - 10.835 , -0.63386505629908 , - 10.84 , -0.42496268277971 , - 10.845 , -0.21119376102165 , - 10.85 , -2.191019852703480E-03 , - 10.855 , 0.194127641793734 , - 10.86 , 0.371466018382975 , - 10.865 , 0.525035130835761 , - 10.87 , 0.651602813791636 , - 10.875 , 0.749803994860723 , - 10.88 , 0.820544481310922 , - 10.885 , 0.867273287648818 , - 10.89 , 0.895807866624117 , - 10.895 , 0.913572593095597 , - 10.9 , 0.928236729298366 , - 10.905 , 0.946014350836689 , - 10.91 , 0.970040868532415 , - 10.915 , 0.999311930164329 , - 10.92 , 1.02854682988849 , - 10.925 , 1.04913139979 , - 10.93 , 1.05098941441043 , - 10.935 , 1.02499491482512 , - 10.94 , 0.965351048328359 , - 10.945 , 0.871370473531725 , - 10.95 , 0.748233229517312 , - 10.955 , 0.606563895886194 , - 10.96 , 0.460955473292802 , - 10.965 , 0.327805324612049 , - 10.97 , 0.222950093923078 , - 10.975 , 0.159562148201255 , - 10.98 , 0.146631988185719 , - 10.985 , 0.188170103964573 , - 10.99 , 0.283066815855546 , - 10.995 , 0.425428418732869 , - 11.0 , 0.605185596503197 , - 11.005 , 0.808842841129001 , - 11.01 , 1.0203252588096 , - 11.015 , 1.22200011907392 , - 11.02 , 1.39594474367148 , - 11.025 , 1.52549944650203 , - 11.03 , 1.59700049844879 , - 11.035 , 1.60145576944865 , - 11.04 , 1.53581761942562 , - 11.045 , 1.4034930323483 , - 11.05 , 1.2138831423925 , - 11.055 , 0.980912371026411 , - 11.06 , 0.720812505576093 , - 11.065 , 0.449601892036102 , - 11.07 , 0.180857582628542 , - 11.075 , -7.573381698891210E-02 , - 11.08 , -0.31470812975405 , - 11.085 , -0.53405962087938 , - 11.09 , -0.73364261678681 , - 11.095 , -0.91330540113887 , - 11.1 , -1.07132417643687 , - 11.105 , -1.20365312210336 , - 11.11 , -1.30419832213249 , - 11.115 , -1.36604239161232 , - 11.12 , -1.38321880818252 , - 11.125 , -1.35249870150789 , - 11.13 , -1.27462783831177 , - 11.135 , -1.15465182792767 , - 11.14 , -1.00123343402233 , - 11.145 , -0.82518952456788 , - 11.15 , -0.63769529339716 , - 11.155 , -0.44866816516864 , - 11.16 , -0.26576203055682 , - 11.165 , -9.416463454136630E-02 , - 11.17 , 6.287575092606090E-02 , - 11.175 , 0.203141505865471 , - 11.18 , 0.324579712695666 , - 11.185 , 0.424889751727608 , - 11.19 , 0.501750804315283 , - 11.195 , 0.5536421159011 , - 11.2 , 0.580921794960766 , - 11.205 , 0.586704260853481 , - 11.21 , 0.5770850470881 , - 11.215 , 0.560449668733132 , - 11.22 , 0.545887300846328 , - 11.225 , 0.541047479949923 , - 11.23 , 0.549990662947013 , - 11.235 , 0.571663114185204 , - 11.24 , 0.599500251771258 , - 11.245 , 0.62236878054162 , - 11.25 , 0.626713322562836 , - 11.255 , 0.599434772191117 , - 11.26 , 0.530838614269415 , - 11.265 , 0.416951659398843 , - 11.27 , 0.26068866151549 , - 11.275 , 7.163385796821510E-02 , - 11.28 , -0.13542954911164 , - 11.285 , -0.34285006284799 , - 11.29 , -0.53271798082564 , - 11.295 , -0.68922055953639 , - 11.3 , -0.80031992822441 , - 11.305 , -0.85859556643174 , - 11.31 , -0.86132208764303 , - 11.315 , -0.81002406922002 , - 11.32 , -0.70979684966059 , - 11.325 , -0.56862676261062 , - 11.33 , -0.39681435075012 , - 11.335 , -0.20645292887016 , - 11.34 , -1.082875708200500E-02 , - 11.345 , 0.176412752549899 , - 11.35 , 0.342376371445806 , - 11.355 , 0.476235796330172 , - 11.36 , 0.570527791788077 , - 11.365 , 0.622137109693916 , - 11.37 , 0.632674434445817 , - 11.375 , 0.608089217990313 , - 11.38 , 0.557537864431003 , - 11.385 , 0.491727720373806 , - 11.39 , 0.421100488617183 , - 11.395 , 0.35424883871057 , - 11.4 , 0.296898598214297 , - 11.405 , 0.251615782949777 , - 11.41 , 0.218205567537362 , - 11.415 , 0.194575186033259 , - 11.42 , 0.177750889222743 , - 11.425 , 0.164739545969125 , - 11.43 , 0.153046754059915 , - 11.435 , 0.140795993214209 , - 11.44 , 0.12656443411951 , - 11.445 , 0.109119048772985 , - 11.45 , 8.726746617413900E-02 , - 11.455 , 5.991980120903190E-02 , - 11.46 , 2.635460927914640E-02 , - 11.465 , -1.345275150280380E-02 , - 11.47 , -5.863610709200840E-02 , - 11.475 , -0.10755044102404 , - 11.48 , -0.15824658177879 , - 11.485 , -0.20921212071436 , - 11.49 , -0.26013226175091 , - 11.495 , -0.31237245530863 , - 11.5 , -0.36890715351072 , - 11.505 , -0.43358437734804 , - 11.51 , -0.50981957766845 , - 11.515 , -0.59903776556946 , - 11.52 , -0.69931194037806 , - 11.525 , -0.80465691443919 , - 11.53 , -0.90529166691289 , - 11.535 , -0.98894889157901 , - 11.54 , -1.0430005689334 , - 11.545 , -1.05693388169808 , - 11.55 , -1.0245796623575 , - 11.555 , -0.94554374723514 , - 11.56 , -0.82548253167239 , - 11.565 , -0.67515951222416 , - 11.57 , -0.50853411181021 , - 11.575 , -0.34035152824456 , - 11.58 , -0.18380744340702 , - 11.585 , -4.877605466847740E-02 , - 11.59 , 5.909608053637810E-02 , - 11.595 , 0.138405652647701 , - 11.6 , 0.191311518017365 , - 11.605 , 0.222508949979136 , - 11.61 , 0.238194003082017 , - 11.615 , 0.245269919971124 , - 11.62 , 0.250838712250952 , - 11.625 , 0.261870016704265 , - 11.63 , 0.284836510438269 , - 11.635 , 0.325131372886616 , - 11.64 , 0.386198740355232 , - 11.645 , 0.468513501462264 , - 11.65 , 0.568696341674455 , - 11.655 , 0.679148315040223 , - 11.66 , 0.788508513966795 , - 11.665 , 0.883056182933764 , - 11.67 , 0.948906416298242 , - 11.675 , 0.974570797520427 , - 11.68 , 0.953277599477234 , - 11.685 , 0.884438058167201 , - 11.69 , 0.77382364723826 , - 11.695 , 0.632334566850428 , - 11.7 , 0.473622939615698 , - 11.705 , 0.311143111887763 , - 11.71 , 0.15539149490874 , - 11.715 , 1.204008787083370E-02 , - 11.72 , -0.1185541756946 , - 11.725 , -0.24038836981401 , - 11.73 , -0.35969118541412 , - 11.735 , -0.48228327823872 , - 11.74 , -0.61114632720659 , - 11.745 , -0.74488165421895 , - 11.75 , -0.87742903375438 , - 11.755 , -0.9990735442117 , - 11.76 , -1.09838127444184 , - 11.765 , -1.16449496867241 , - 11.77 , -1.18914405096313 , - 11.775 , -1.1678940579368 , - 11.78 , -1.10040933370095 , - 11.785 , -0.98984205208497 , - 11.79 , -0.8417105178341 , - 11.795 , -0.66273801588279 , - 11.8 , -0.46007426875265 , - 11.805 , -0.24109784101173 , - 11.81 , -1.376424841735200E-02 , - 11.815 , 0.212820798236347 , - 11.82 , 0.428004774853851 , - 11.825 , 0.61976809620263 , - 11.83 , 0.775664732827253 , - 11.835 , 0.884459785072971 , - 11.84 , 0.938105319486098 , - 11.845 , 0.933533376809836 , - 11.85 , 0.873720830366818 , - 11.855 , 0.767639484838718 , - 11.86 , 0.628977669852066 , - 11.865 , 0.4738539721813 , - 11.87 , 0.31801589351757 , - 11.875 , 0.174157204161953 , - 11.88 , 4.995725310342680E-02 , - 11.885 , -5.275216941488590E-02 , - 11.89 , -0.13756423084181 , - 11.895 , -0.2120196831066 , - 11.9 , -0.28548456301669 , - 11.905 , -0.36691840941378 , - 11.91 , -0.46300320666114 , - 11.915 , -0.57696070561373 , - 11.92 , -0.70814553643099 , - 11.925 , -0.85232717509853 , - 11.93 , -1.00241060096662 , - 11.935 , -1.14936568830572 , - 11.94 , -1.28315120023664 , - 11.945 , -1.39356260774938 , - 11.95 , -1.47101607033074 , - 11.955 , -1.5073448490242 , - 11.96 , -1.4966490584904 , - 11.965 , -1.43616086274327 , - 11.97 , -1.32698077186283 , - 11.975 , -1.17446433758603 , - 11.98 , -0.98804059864846 , - 11.985 , -0.78032474331784 , - 11.99 , -0.56556840849598 , - 11.995 , -0.35765933543277 , - 12.0 , -0.16807550799874 , - 12.005 , -4.227255766186140E-03 , - 12.01 , 0.131383604645629 , - 12.015 , 0.240987503608671 , - 12.02 , 0.330348730788584 , - 12.025 , 0.406826008170448 , - 12.03 , 0.477144240124697 , - 12.035 , 0.545422501700242 , - 12.04 , 0.611915404843405 , - 12.045 , 0.672755857445556 , - 12.05 , 0.720723072194553 , - 12.055 , 0.746832365003761 , - 12.06 , 0.742346946489963 , - 12.065 , 0.700760339032901 , - 12.07 , 0.619339003519911 , - 12.075 , 0.499959785870592 , - 12.08 , 0.349159304278182 , - 12.085 , 0.177470223182518 , - 12.09 , -1.753350545225190E-03 , - 12.095 , -0.17379950342875 , - 12.1 , -0.32413511149758 , - 12.105 , -0.43987021437218 , - 12.11 , -0.51104917071923 , - 12.115 , -0.53171143244092 , - 12.12 , -0.50064639271511 , - 12.125 , -0.42174741533336 , - 12.13 , -0.30385287601246 , - 12.135 , -0.1599770009419 , - 12.14 , -5.916472086063350E-03 , - 12.145 , 0.141672124157728 , - 12.15 , 0.267467136745314 , - 12.155 , 0.359599717485464 , - 12.16 , 0.411271872916484 , - 12.165 , 0.421529890421321 , - 12.17 , 0.394986365391134 , - 12.175 , 0.340522937951077 , - 12.18 , 0.269238562662315 , - 12.185 , 0.19209641315972 , - 12.19 , 0.11779958413244 , - 12.195 , 5.136625423508250E-02 , - 12.2 , -6.300947873046220E-03 , - 12.205 , -5.782223054975370E-02 , - 12.21 , -0.10793985148095 , - 12.215 , -0.16174127408618 , - 12.22 , -0.22298866763169 , - 12.225 , -0.2929886222154 , - 12.23 , -0.37024238871399 , - 12.235 , -0.45090142997871 , - 12.24 , -0.52980992267136 , - 12.245 , -0.60178949630599 , - 12.25 , -0.66276746147737 , - 12.255 , -0.71046604589472 , - 12.26 , -0.74450641227213 , - 12.265 , -0.76599806365513 , - 12.27 , -0.77681628816103 , - 12.275 , -0.77885826543421 , - 12.28 , -0.77352755022123 , - 12.285 , -0.76159237398235 , - 12.29 , -0.74340951487468 , - 12.295 , -0.7193684533261 , - 12.3 , -0.69033859752466 , - 12.305 , -0.65790529310338 , - 12.31 , -0.62427337609045 , - 12.315 , -0.59183465481714 , - 12.32 , -0.5625391602505 , - 12.325 , -0.53727609431785 , - 12.33 , -0.51549939568466 , - 12.335 , -0.49523027754421 , - 12.34 , -0.47348196058407 , - 12.345 , -0.44699386193397 , - 12.35 , -0.41308162478787 , - 12.355 , -0.37035623858392 , - 12.36 , -0.31912406711736 , - 12.365 , -0.26136188585533 , - 12.37 , -0.20030871435109 , - 12.375 , -0.13979053261561 , - 12.38 , -8.348819445843680E-02 , - 12.385 , -3.432412971860200E-02 , - 12.39 , 5.898257672503130E-03 , - 12.395 , 3.658675251617240E-02 , - 12.4 , 5.823490831704580E-02 , - 12.405 , 7.220973009677149E-02 , - 12.41 , 8.054556791305920E-02 , - 12.415 , 8.583652449551200E-02 , - 12.42 , 9.119751190995400E-02 , - 12.425 , 0.10022495276452 , - 12.43 , 0.116830802684467 , - 12.435 , 0.144865533553475 , - 12.44 , 0.187496464655846 , - 12.445 , 0.246429769927851 , - 12.45 , 0.321134575890146 , - 12.455 , 0.408310004218564 , - 12.46 , 0.501792671730819 , - 12.465 , 0.593049206029892 , - 12.47 , 0.672237912914609 , - 12.475 , 0.729699407315016 , - 12.48 , 0.757595593934302 , - 12.485 , 0.751370987649759 , - 12.49 , 0.710716591717499 , - 12.495 , 0.639832178015772 , - 12.5 , 0.546914264636683 , - 12.505 , 0.442962983193198 , - 12.51 , 0.340141957400465 , - 12.515 , 0.249991895482425 , - 12.52 , 0.181816356681784 , - 12.525 , 0.14149413564273 , - 12.53 , 0.130883062190031 , - 12.535 , 0.147852731887966 , - 12.54 , 0.186894240935408 , - 12.545 , 0.240161777063203 , - 12.55 , 0.298772249040031 , - 12.555 , 0.3541646202598 , - 12.56 , 0.399336722395081 , - 12.565 , 0.429803491932159 , - 12.57 , 0.444142296553351 , - 12.575 , 0.444055340271153 , - 12.58 , 0.433919042501565 , - 12.585 , 0.41987739717275 , - 12.59 , 0.408602791719151 , - 12.595 , 0.405932599777175 , - 12.6 , 0.415626645287793 , - 12.605 , 0.438500795189521 , - 12.61 , 0.47213105784221 , - 12.615 , 0.511225323925744 , - 12.62 , 0.548612052766521 , - 12.625 , 0.576660272126196 , - 12.63 , 0.588829953918048 , - 12.635 , 0.581021197761628 , - 12.64 , 0.552418992096461 , - 12.645 , 0.505653719521126 , - 12.65 , 0.446259700593861 , - 12.655 , 0.381569197808235 , - 12.66 , 0.319325454510432 , - 12.665 , 0.266332799357825 , - 12.67 , 0.227442179455834 , - 12.675 , 0.20505248099 , - 12.68 , 0.199165657452942 , - 12.685 , 0.207885677656546 , - 12.69 , 0.228151213713856 , - 12.695 , 0.256464303289308 , - 12.7 , 0.289423464944378 , - 12.705 , 0.323974105633788 , - 12.71 , 0.357399971553342 , - 12.715 , 0.387180213631022 , - 12.72 , 0.410871216078733 , - 12.725 , 0.426149440224674 , - 12.73 , 0.431066724422046 , - 12.735 , 0.424468610875424 , - 12.74 , 0.40643852414304 , - 12.745 , 0.378585136191504 , - 12.75 , 0.344023630341179 , - 12.755 , 0.306976904799534 , - 12.76 , 0.272045167670388 , - 12.765 , 0.243295410789869 , - 12.77 , 0.223399948751481 , - 12.775 , 0.213036444793139 , - 12.78 , 0.210713889469279 , - 12.785 , 0.213057227036913 , - 12.79 , 0.21547276609123 , - 12.795 , 0.213006795751766 , - 12.8 , 0.201182178134479 , - 12.805 , 0.176611102924828 , - 12.81 , 0.137299208402565 , - 12.815 , 8.261651333889580E-02 , - 12.82 , 1.306254997938910E-02 , - 12.825 , -7.003874532972119E-02 , - 12.83 , -0.16475325893821 , - 12.835 , -0.26859374971277 , - 12.84 , -0.37841766630558 , - 12.845 , -0.49027765178853 , - 12.85 , -0.59935591527846 , - 12.855 , -0.70013189417767 , - 12.86 , -0.78683177941038 , - 12.865 , -0.85412623949955 , - 12.87 , -0.89792127381358 , - 12.875 , -0.91603916182254 , - 12.88 , -0.90857357773468 , - 12.885 , -0.87778714750083 , - 12.89 , -0.8275372966502 , - 12.895 , -0.76235786224487 , - 12.9 , -0.68643393291051 , - 12.905 , -0.60274756840487 , - 12.91 , -0.51264247885951 , - 12.915 , -0.41593073711012 , - 12.92 , -0.3115269410358 , - 12.925 , -0.19842747985447 , - 12.93 , -7.676760694603291E-02 , - 12.935 , 5.135539420685220E-02 , - 12.94 , 0.181528383908596 , - 12.945 , 0.307260660414741 , - 12.95 , 0.420769213103223 , - 12.955 , 0.514139979660135 , - 12.96 , 0.580592682156079 , - 12.965 , 0.615578076246798 , - 12.97 , 0.617476907926892 , - 12.975 , 0.587799377315074 , - 12.98 , 0.530889280436902 , - 12.985 , 0.453243660311424 , - 12.99 , 0.362622392194437 , - 12.995 , 0.2671120583141 , - 13.0 , 0.174286119779362 , - 13.005 , 9.052797178882990E-02 , - 13.01 , 2.054498441234870E-02 , - 13.015 , -3.294702871288870E-02 , - 13.02 , -6.937300005549160E-02 , - 13.025 , -9.028206231971420E-02 , - 13.03 , -9.913110412573760E-02 , - 13.035 , -0.10083734030815 , - 13.04 , -0.10108450259662 , - 13.045 , -0.1054266897417 , - 13.05 , -0.1182915683999 , - 13.055 , -0.14205888957835 , - 13.06 , -0.17640190935702 , - 13.065 , -0.21806865581631 , - 13.07 , -0.26120089347156 , - 13.075 , -0.29817769418101 , - 13.08 , -0.32085004389739 , - 13.085 , -0.32193831070962 , - 13.09 , -0.29631759697471 , - 13.095 , -0.24193696858333 , - 13.1 , -0.16019970762232 , - 13.105 , -5.574993867029920E-02 , - 13.11 , 6.425618048517991E-02 , - 13.115 , 0.19122987419663 , - 13.12 , 0.316346629224766 , - 13.125 , 0.431653751489729 , - 13.13 , 0.530914954469608 , - 13.135 , 0.610121196882937 , - 13.14 , 0.667657470309265 , - 13.145 , 0.704186599565721 , - 13.15 , 0.722325191446681 , - 13.155 , 0.726186367330791 , - 13.16 , 0.720836106520834 , - 13.165 , 0.711688820321258 , - 13.17 , 0.703862564199362 , - 13.175 , 0.701524520420123 , - 13.18 , 0.707294612263167 , - 13.185 , 0.721797723723084 , - 13.19 , 0.743474213000332 , - 13.195 , 0.768726481461021 , - 13.2 , 0.792431876186836 , - 13.205 , 0.808764824723334 , - 13.21 , 0.812196723822406 , - 13.215 , 0.798471820125594 , - 13.22 , 0.765360902698407 , - 13.225 , 0.713020417223642 , - 13.23 , 0.643892155196421 , - 13.235 , 0.562167990243985 , - 13.24 , 0.472970245560551 , - 13.245 , 0.381438619514679 , - 13.25 , 0.291951206368075 , - 13.255 , 0.20762340636979 , - 13.26 , 0.130166940321081 , - 13.265 , 6.006289386634430E-02 , - 13.27 , -3.060365982684810E-03 , - 13.275 , -6.001488208941340E-02 , - 13.28 , -0.11173380533579 , - 13.285 , -0.15914104631288 , - 13.29 , -0.20317809418618 , - 13.295 , -0.24493336090531 , - 13.3 , -0.28573011925772 , - 13.305 , -0.32707569024184 , - 13.31 , -0.37040876594875 , - 13.315 , -0.41668833903021 , - 13.32 , -0.46592656198441 , - 13.325 , -0.51683388329442 , - 13.33 , -0.56671530350641 , - 13.335 , -0.61172427575717 , - 13.34 , -0.64745289857378 , - 13.345 , -0.66975635467017 , - 13.35 , -0.67561421984368 , - 13.355 , -0.66382212752523 , - 13.36 , -0.63533221269618 , - 13.365 , -0.59315990071751 , - 13.37 , -0.54187928568118 , - 13.375 , -0.48684683870894 , - 13.38 , -0.43334458417513 , - 13.385 , -0.38584852580448 , - 13.39 , -0.34757223717143 , - 13.395 , -0.32034609191295 , - 13.4 , -0.30479305822331 , - 13.405 , -0.30068667519817 , - 13.41 , -0.30734431404504 , - 13.415 , -0.32393187524719 , - 13.42 , -0.3496124571983 , - 13.425 , -0.38355062958007 , - 13.43 , -0.42483772740574 , - 13.435 , -0.47243959941852 , - 13.44 , -0.52523698989138 , - 13.445 , -0.58218855059142 , - 13.45 , -0.64255715702482 , - 13.455 , -0.70611547192509 , - 13.46 , -0.77319959733532 , - 13.465 , -0.84453581144061 , - 13.47 , -0.9208154277502 , - 13.475 , -1.00210330165744 , - 13.48 , -1.08722318257344 , - 13.485 , -1.17331384017982 , - 13.49 , -1.25571905330723 , - 13.495 , -1.32830569669314 , - 13.5 , -1.38419198321401 , - 13.505 , -1.41674939954092 , - 13.51 , -1.42066916256513 , - 13.515 , -1.39284912504276 , - 13.52 , -1.33290856588875 , - 13.525 , -1.24321481899912 , - 13.53 , -1.12845482092199 , - 13.535 , -0.994859301148 , - 13.54 , -0.84929200472393 , - 13.545 , -0.69840229944309 , - 13.55 , -0.5480171915834 , - 13.555 , -0.40283245150506 , - 13.56 , -0.26639859300057 , - 13.565 , -0.1412841699847 , - 13.57 , -2.930752910284020E-02 , - 13.575 , 6.831031669366761E-02 , - 13.58 , 0.150909902638648 , - 13.585 , 0.218485436556094 , - 13.59 , 0.271817772885176 , - 13.595 , 0.312563547048263 , - 13.6 , 0.343197563758831 , - 13.605 , 0.366784232668975 , - 13.61 , 0.386577813348275 , - 13.615 , 0.405567940703392 , - 13.62 , 0.426060284638387 , - 13.625 , 0.449416325446865 , - 13.63 , 0.476003373865086 , - 13.635 , 0.505362938780156 , - 13.64 , 0.536518767578895 , - 13.645 , 0.568328300506654 , - 13.65 , 0.599754845087405 , - 13.655 , 0.630000025300325 , - 13.66 , 0.6584695973929 , - 13.665 , 0.68462841460832 , - 13.67 , 0.70782686172262 , - 13.675 , 0.727203534668359 , - 13.68 , 0.741722744375036 , - 13.685 , 0.750362416108883 , - 13.69 , 0.752392406085506 , - 13.695 , 0.747650040601305 , - 13.7 , 0.736696231685042 , - 13.705 , 0.720777621636586 , - 13.71 , 0.701571294344929 , - 13.715 , 0.680769236869278 , - 13.72 , 0.659613778989939 , - 13.725 , 0.638519591968826 , - 13.73 , 0.616905016742059 , - 13.735 , 0.593283746255628 , - 13.74 , 0.565603855337414 , - 13.745 , 0.531733554716355 , - 13.75 , 0.489962659748419 , - 13.755 , 0.439375608243233 , - 13.76 , 0.380009446404367 , - 13.765 , 0.312773129830936 , - 13.77 , 0.239195423372873 , - 13.775 , 0.16110638214858 , - 13.78 , 8.038995906805420E-02 , - 13.785 , -1.102897232504770E-03 , - 13.79 , -8.144778281704360E-02 , - 13.795 , -0.15840843583426 , - 13.8 , -0.22917659635052 , - 13.805 , -0.29024518206889 , - 13.81 , -0.33752175024298 , - 13.815 , -0.36674198188098 , - 13.82 , -0.37413071891857 , - 13.825 , -0.35717935529397 , - 13.83 , -0.31535074520267 , - 13.835 , -0.25052105857336 , - 13.84 , -0.16702284226815 , - 13.845 , -7.124636094412699E-02 , - 13.85 , 2.913353087510890E-02 , - 13.855 , 0.126149325078345 , - 13.86 , 0.212544685340441 , - 13.865 , 0.282593826653342 , - 13.87 , 0.33259342353236 , - 13.875 , 0.360977014896564 , - 13.88 , 0.368090497895831 , - 13.885 , 0.355740094833499 , - 13.89 , 0.326653538417733 , - 13.895 , 0.283980395609887 , - 13.9 , 0.230911938687721 , - 13.905 , 0.170438689852821 , - 13.91 , 0.105217955743757 , - 13.915 , 3.748846121428490E-02 , - 13.92 , -3.100811006762060E-02 , - 13.925 , -9.912461677678459E-02 , - 13.93 , -0.16638732593593 , - 13.935 , -0.23301599989748 , - 13.94 , -0.29981098203477 , - 13.945 , -0.36788336374228 , - 13.95 , -0.43823790831234 , - 13.955 , -0.51128976367887 , - 13.96 , -0.58642827752511 , - 13.965 , -0.66176331535379 , - 13.97 , -0.7341480161194 , - 13.975 , -0.79952454249667 , - 13.98 , -0.85353878258576 , - 13.985 , -0.89230509468498 , - 13.99 , -0.9131476514604 , - 13.995 , -0.91514375354423 , - 14.0 , -0.8993367487938 , - 14.005 , -0.86856422332842 , - 14.01 , -0.82694415950239 , - 14.015 , -0.77913771351111 , - 14.02 , -0.72955729658514 , - 14.025 , -0.68168905647206 , - 14.03 , -0.63766151216947 , - 14.035 , -0.59811504505913 , - 14.04 , -0.56235853309889 , - 14.045 , -0.52872726325526 , - 14.05 , -0.49503897771436 , - 14.055 , -0.45902725746187 , - 14.06 , -0.41868594009816 , - 14.065 , -0.37248337306763 , - 14.07 , -0.31947100513302 , - 14.075 , -0.25931189817463 , - 14.08 , -0.19228261646431 , - 14.085 , -0.11925792681763 , - 14.09 , -4.169532968283350E-02 , - 14.095 , 3.843303316390890E-02 , - 14.1 , 0.118775003838835 , - 14.105 , 0.196837583343436 , - 14.11 , 0.270307193173439 , - 14.115 , 0.337420184008135 , - 14.12 , 0.397291393971841 , - 14.125 , 0.450126440210993 , - 14.13 , 0.497226657276013 , - 14.135 , 0.540774142842358 , - 14.14 , 0.58340264798186 , - 14.145 , 0.627643304621108 , - 14.15 , 0.675349975738562 , - 14.155 , 0.727241025622671 , - 14.16 , 0.782651129746367 , - 14.165 , 0.839560451090441 , - 14.17 , 0.894881294455553 , - 14.175 , 0.944955884798899 , - 14.18 , 0.986144014351956 , - 14.185 , 1.015390719979 , - 14.19 , 1.0306572943892 , - 14.195 , 1.03115234481902 , - 14.2 , 1.01733343986871 , - 14.205 , 0.990709541557108 , - 14.21 , 0.953502790822332 , - 14.215 , 0.908254264710393 , - 14.22 , 0.857454756635746 , - 14.225 , 0.803265224100822 , - 14.23 , 0.74737385316121 , - 14.235 , 0.690995601525318 , - 14.24 , 0.635005073529152 , - 14.245 , 0.580160133049894 , - 14.25 , 0.527369694111442 , - 14.255 , 0.477938039158216 , - 14.26 , 0.433728338232803 , - 14.265 , 0.397194149800069 , - 14.27 , 0.371248511478309 , - 14.275 , 0.358963505823744 , - 14.28 , 0.363137797938165 , - 14.285 , 0.385787231840523 , - 14.29 , 0.427657749130475 , - 14.295 , 0.487849697242734 , - 14.3 , 0.563646552494242 , - 14.305 , 0.650598748291401 , - 14.31 , 0.742869615401765 , - 14.315 , 0.833794067276776 , - 14.32 , 0.916556460872168 , - 14.325 , 0.984863842045941 , - 14.33 , 1.0335040976667 , - 14.335 , 1.05869041827564 , - 14.34 , 1.05816644274048 , - 14.345 , 1.03108361491544 , - 14.35 , 0.977735351761127 , - 14.355 , 0.899232930675646 , - 14.36 , 0.797237214065439 , - 14.365 , 0.673796884116058 , - 14.37 , 0.531337867932015 , - 14.375 , 0.372747573641774 , - 14.38 , 0.20150981243218 , - 14.385 , 2.178427411223690E-02 , - 14.39 , -0.16161383529816 , - 14.395 , -0.34339606863716 , - 14.4 , -0.5181084642692 , - 14.405 , -0.68053644448525 , - 14.41 , -0.826088703855 , - 14.415 , -0.95112570187104 , - 14.42 , -1.05313423965707 , - 14.425 , -1.13075625342751 , - 14.43 , -1.18366851217429 , - 14.435 , -1.21238579974723 , - 14.44 , -1.21803310838506 , - 14.445 , -1.20215241564511 , - 14.45 , -1.16656016251128 , - 14.455 , -1.113269900772 , - 14.46 , -1.04444581397611 , - 14.465 , -0.96236345544593 , - 14.47 , -0.86935386142724 , - 14.475 , -0.76773118679175 , - 14.48 , -0.65972693552001 , - 14.485 , -0.54746173019692 , - 14.49 , -0.43299292085595 , - 14.495 , -0.3184397215422 , - 14.5 , -0.20616849862018 , - 14.505 , -9.897318159698620E-02 , - 14.51 , -1.803143023172810E-04 , - 14.515 , 8.640194233650360E-02 , - 14.52 , 0.156727372406871 , - 14.525 , 0.206940131693837 , - 14.53 , 0.233914703352716 , - 14.535 , 0.235793875210402 , - 14.54 , 0.212387260096523 , - 14.545 , 0.165314426336394 , - 14.55 , 9.783758697368690E-02 , - 14.555 , 1.439534230634960E-02 , - 14.56 , -8.005859022341789E-02 , - 14.565 , -0.18076618261283 , - 14.57 , -0.28374454180973 , - 14.575 , -0.38610798365218 , - 14.58 , -0.48605081190961 , - 14.585 , -0.58252398542127 , - 14.59 , -0.67470367132805 , - 14.595 , -0.76142935693159 , - 14.6 , -0.8407780560685 , - 14.605 , -0.90992374040628 , - 14.61 , -0.96532870247995 , - 14.615 , -1.00324396367882 , - 14.62 , -1.02038773635927 , - 14.625 , -1.01463341589249 , - 14.63 , -0.98552757460307 , - 14.635 , -0.93450835223946 , - 14.64 , -0.86477120783303 , - 14.645 , -0.78081893710178 , - 14.65 , -0.68781873202676 , - 14.655 , -0.59091719649253 , - 14.66 , -0.49467793607145 , - 14.665 , -0.40274402274473 , - 14.67 , -0.31777533615604 , - 14.675 , -0.24161241000393 , - 14.68 , -0.17557875216008 , - 14.685 , -0.12078750746673 , - 14.69 , -7.835224295217311E-02 , - 14.695 , -4.942101977486440E-02 , - 14.7 , -3.503749471905150E-02 , - 14.705 , -3.587495731215070E-02 , - 14.71 , -5.194398103175540E-02 , - 14.715 , -8.236828155631780E-02 , - 14.72 , -0.12531697112263 , - 14.725 , -0.17812203875209 , - 14.73 , -0.23756805254037 , - 14.735 , -0.30028601265584 , - 14.74 , -0.36316012018238 , - 14.745 , -0.42365909583363 , - 14.75 , -0.48002335079991 , - 14.755 , -0.53128602795839 , - 14.76 , -0.57714447879069 , - 14.765 , -0.61773654874064 , - 14.77 , -0.65338922947777 , - 14.775 , -0.68440719071073 , - 14.78 , -0.71094150841826 , - 14.785 , -0.73295383213119 , - 14.79 , -0.75025831938642 , - 14.795 , -0.76260438890415 , - 14.8 , -0.76975912976851 , - 14.805 , -0.77155180131721 , - 14.81 , -0.76787415141689 , - 14.815 , -0.75863134459094 , - 14.82 , -0.74368104295612 , - 14.825 , -0.72278322433993 , - 14.83 , -0.69560054902327 , - 14.835 , -0.66175375591306 , - 14.84 , -0.62093898535516 , - 14.845 , -0.57306913773937 , - 14.85 , -0.51841917741191 , - 14.855 , -0.45771315164191 , - 14.86 , -0.392137917305 , - 14.865 , -0.3232532945768 , - 14.87 , -0.25282156152333 , - 14.875 , -0.18257072630809 , - 14.88 , -0.11395570313114 , - 14.885 , -4.795078990473090E-02 , - 14.89 , 1.505030752196730E-02 , - 14.895 , 7.523505899511330E-02 , - 14.9 , 0.133241663209769 , - 14.905 , 0.189946958395501 , - 14.91 , 0.246204884243539 , - 14.915 , 0.302617865301028 , - 14.92 , 0.359383341937356 , - 14.925 , 0.416272256914715 , - 14.93 , 0.472730379837134 , - 14.935 , 0.528097455638089 , - 14.94 , 0.581866656852053 , - 14.945 , 0.633923511292493 , - 14.95 , 0.684671503159956 , - 14.955 , 0.735006617044871 , - 14.96 , 0.78610900707482 , - 14.965 , 0.839096114213373 , - 14.97 , 0.894592925855566 , - 14.975 , 0.952340646800937 , - 14.98 , 1.0109322862822 , - 14.985 , 1.06776815099708 , - 14.99 , 1.11925763952313 , - 14.995 , 1.16125733848899 , - 15.0 , 1.18965840938029 , - 15.005 , 1.20101711803106 , - 15.01 , 1.19309156203439 , - 15.015 , 1.16518353563898 , - 15.02 , 1.11821232455035 , - 15.025 , 1.0545184865003 , - 15.03 , 0.977448615628865 , - 15.035 , 0.890815252481333 , - 15.04 , 0.798354444510221 , - 15.045 , 0.703279494461959 , - 15.05 , 0.60801847543151 , - 15.055 , 0.514150357593879 , - 15.06 , 0.422530486995826 , - 15.065 , 0.333543044544543 , - 15.07 , 0.247413880227417 , - 15.075 , 0.164505011560775 , - 15.08 , 8.554502116652860E-02 , - 15.085 , 1.176008397877900E-02 , - 15.09 , -5.508991016794810E-02 , - 15.095 , -0.11277329041032 , - 15.1 , -0.15872202731611 , - 15.105 , -0.19023769676271 , - 15.11 , -0.20475543680883 , - 15.115 , -0.20016459209247 , - 15.12 , -0.17515953672649 , - 15.125 , -0.1295909322101 , - 15.13 , -6.475341455153370E-02 , - 15.135 , 1.645644779243700E-02 , - 15.14 , 0.109582085491203 , - 15.145 , 0.208891920094615 , - 15.15 , 0.307902347961824 , - 15.155 , 0.400086953541137 , - 15.16 , 0.479656312478387 , - 15.165 , 0.54227026093024 , - 15.17 , 0.585531391323096 , - 15.175 , 0.60915577781107 , - 15.18 , 0.614771789148716 , - 15.185 , 0.605386403919845 , - 15.19 , 0.584635659710548 , - 15.195 , 0.555987240463961 , - 15.2 , 0.522078576056577 , - 15.205 , 0.484332615313383 , - 15.21 , 0.44293940454718 , - 15.215 , 0.397175120559912 , - 15.22 , 0.345968006972672 , - 15.225 , 0.288543030116857 , - 15.23 , 0.224972791486283 , - 15.235 , 0.156481408793171 , - 15.24 , 8.542958350357370E-02 , - 15.245 , 1.498370477529230E-02 , - 15.25 , -5.142934425176120E-02 , - 15.255 , -0.1107437937938 , - 15.26 , -0.16078441017566 , - 15.265 , -0.20057844669055 , - 15.27 , -0.23037829970624 , - 15.275 , -0.2514154045316 , - 15.28 , -0.26546110414046 , - 15.285 , -0.27433386226401 , - 15.29 , -0.27947343680654 , - 15.295 , -0.28170382574971 , - 15.3 , -0.28121922535055 , - 15.305 , -0.27778333156123 , - 15.31 , -0.27106104276765 , - 15.315 , -0.26098347288903 , - 15.32 , -0.2480337104626 , - 15.325 , -0.23338239832851 , - 15.33 , -0.21883669131141 , - 15.335 , -0.20662723365469 , - 15.34 , -0.19908795725974 , - 15.345 , -0.1983095632208 , - 15.35 , -0.20583511356768 , - 15.355 , -0.22245388077999 , - 15.36 , -0.24810721805446 , - 15.365 , -0.28190022979588 , - 15.37 , -0.32218399867655 , - 15.375 , -0.36668187000496 , - 15.38 , -0.41262893144551 , - 15.385 , -0.4569195252945 , - 15.39 , -0.49626700745835 , - 15.395 , -0.52739011070132 , - 15.4 , -0.54723474350703 , - 15.405 , -0.55322582044501 , - 15.41 , -0.54352567312437 , - 15.415 , -0.51725918301048 , - 15.42 , -0.47466073347181 , - 15.425 , -0.41710230560527 , - 15.43 , -0.34698928139492 , - 15.435 , -0.26752756403572 , - 15.44 , -0.18240759770015 , - 15.445 , -9.545429827632960E-02 , - 15.45 , -1.031774321012660E-02 , - 15.455 , 6.975569716684001E-02 , - 15.46 , 0.142031815271298 , - 15.465 , 0.204287600135245 , - 15.47 , 0.254724524020873 , - 15.475 , 0.291852234959508 , - 15.48 , 0.314393966922164 , - 15.485 , 0.321257693596354 , - 15.49 , 0.311592647764159 , - 15.495 , 0.284924209311069 , - 15.5 , 0.241333574629117 , - 15.505 , 0.181630984411648 , - 15.51 , 0.107473789318163 , - 15.515 , 2.138659993284420E-02 , - 15.52 , -7.333294612818740E-02 , - 15.525 , -0.17281819572361 , - 15.53 , -0.2729111163528 , - 15.535 , -0.36947452952708 , - 15.54 , -0.45868092644508 , - 15.545 , -0.53724054983261 , - 15.55 , -0.60253835404275 , - 15.555 , -0.65267651763316 , - 15.56 , -0.6864354117723 , - 15.565 , -0.70318229683703 , - 15.57 , -0.70276183568102 , - 15.575 , -0.68540176686393 , - 15.58 , -0.6516520838685 , - 15.585 , -0.60236502510189 , - 15.59 , -0.538706492591 , - 15.595 , -0.46217410897888 , - 15.6 , -0.37460077533887 , - 15.605 , -0.27810973417383 , - 15.61 , -0.17502716813551 , - 15.615 , -6.773228527287170E-02 , - 15.62 , 4.151501433409210E-02 , - 15.625 , 0.150751860185515 , - 15.63 , 0.258442092002889 , - 15.635 , 0.363538574930614 , - 15.64 , 0.465442765332169 , - 15.645 , 0.563876126508653 , - 15.65 , 0.658665592231715 , - 15.655 , 0.749509291460253 , - 15.66 , 0.835755718589599 , - 15.665 , 0.916264699152492 , - 15.67 , 0.989375816925145 , - 15.675 , 1.05301420158238 , - 15.68 , 1.10490739292059 , - 15.685 , 1.14288462647541 , - 15.69 , 1.16518849553063 , - 15.695 , 1.1707464912492 , - 15.7 , 1.15934157640063 , - 15.705 , 1.13165264409975 , - 15.71 , 1.08916287801769 , - 15.715 , 1.03396048449819 , - 15.72 , 0.968480895649285 , - 15.725 , 0.895239610317516 , - 15.73 , 0.816614791244956 , - 15.735 , 0.734699276030846 , - 15.74 , 0.651241095374945 , - 15.745 , 0.567649521370319 , - 15.75 , 0.485049163207599 , - 15.755 , 0.404335549986381 , - 15.76 , 0.326219056425138 , - 15.765 , 0.251231356865374 , - 15.77 , 0.179720965294244 , - 15.775 , 0.111831041730238 , - 15.78 , 4.750476279777080E-02 , - 15.785 , -1.347798247405040E-02 , - 15.79 , -7.141356069694010E-02 , - 15.795 , -0.12656450883031 , - 15.8 , -0.1790372399842 , - 15.805 , -0.2286955113047 , - 15.81 , -0.27512243015728 , - 15.815 , -0.31766447732324 , - 15.82 , -0.3555388110919 , - 15.825 , -0.38798921520158 , - 15.83 , -0.41444221410296 , - 15.835 , -0.43463094635962 , - 15.84 , -0.44864369112348 , - 15.845 , -0.4568931292131 , - 15.85 , -0.46000160926806 , - 15.855 , -0.45865250041628 , - 15.86 , -0.45343877892519 , - 15.865 , -0.44476504067162 , - 15.87 , -0.43283082098116 , - 15.875 , -0.41771237775514 , - 15.88 , -0.3995214147592 , - 15.885 , -0.37860415544342 , - 15.89 , -0.35572212713179 , - 15.895 , -0.33216132888134 , - 15.9 , -0.30972572285948 , - 15.905 , -0.29059799700979 , - 15.91 , -0.27708096353175 , - 15.915 , -0.27126155854412 , - 15.92 , -0.2746590319597 , - 15.925 , -0.28792675974919 , - 15.93 , -0.31066689274262 , - 15.935 , -0.34140077106906 , - 15.94 , -0.3777039602476 , - 15.945 , -0.41648665097944 , - 15.95 , -0.45437291128764 , - 15.955 , -0.48811381404708 , - 15.96 , -0.51496612193939 , - 15.965 , -0.5329765854495 , - 15.97 , -0.54113053164364 , - 15.975 , -0.53935053269995 , - 15.98 , -0.52835825596445 , - 15.985 , -0.50943591924887 , - 15.99 , -0.48413923071434 , - 15.995 , -0.45401661733085 , - 16.0 , -0.42038541841803 , - 16.005 , -0.38419449756936 , - 16.01 , -0.34598883075877 , - 16.015 , -0.30596135684737 , - 16.02 , -0.26406862723475 , - 16.025 , -0.22017134269813 , - 16.03 , -0.17416871222392 , - 16.035 , -0.12609398639317 , - 16.04 , -7.616580091339020E-02 , - 16.045 , -2.479105816937940E-02 , - 16.05 , 2.745737110728120E-02 , - 16.055 , 7.987861751112391E-02 , - 16.06 , 0.131672708259285 , - 16.065 , 0.181958505928516 , - 16.07 , 0.229779175022502 , - 16.075 , 0.274114727562895 , - 16.08 , 0.313912537790184 , - 16.085 , 0.348155259464482 , - 16.09 , 0.375959714090624 , - 16.095 , 0.396703409827832 , - 16.1 , 0.410143539243666 , - 16.105 , 0.416499539855543 , - 16.11 , 0.416464899336383 , - 16.115 , 0.411132431725026 , - 16.12 , 0.401834694221056 , - 16.125 , 0.389926331168038 , - 16.13 , 0.376552509432684 , - 16.135 , 0.362455371415181 , - 16.14 , 0.347864663265341 , - 16.145 , 0.332498409591647 , - 16.15 , 0.315673926599289 , - 16.155 , 0.296498803516978 , - 16.16 , 0.274095775096738 , - 16.165 , 0.247800859489553 , - 16.17 , 0.217295286911219 , - 16.175 , 0.182636701553898 , - 16.18 , 0.144199700257594 , - 16.185 , 0.102548913123023 , - 16.19 , 5.829530297192130E-02 , - 16.195 , 1.197592728082750E-02 , - 16.2 , -3.600290534227300E-02 , - 16.205 , -8.535615468618291E-02 , - 16.21 , -0.13584918811621 , - 16.215 , -0.18721153582539 , - 16.22 , -0.23906457716721 , - 16.225 , -0.29090350734869 , - 16.23 , -0.34213587188623 , - 16.235 , -0.392170780993 , - 16.24 , -0.44051591221236 , - 16.245 , -0.48684480865516 , - 16.25 , -0.53098857668878 , - 16.255 , -0.57284978382707 , - 16.26 , -0.61224319073572 , - 16.265 , -0.64871598685836 , - 16.27 , -0.68140334352395 , - 16.275 , -0.70898222576025 , - 16.28 , -0.7297595947791 , - 16.285 , -0.7418948815967 , - 16.29 , -0.74371891027858 , - 16.295 , -0.73407611710958 , - 16.3 , -0.71260329024102 , - 16.305 , -0.67986749030603 , - 16.31 , -0.63732240300856 , - 16.315 , -0.58707824160675 , - 16.32 , -0.53154405116823 , - 16.325 , -0.47301455154914 , - 16.33 , -0.41331652122001 , - 16.335 , -0.35357961212191 , - 16.34 , -0.29419497300413 , - 16.345 , -0.23495140181355 , - 16.35 , -0.17531083484956 , - 16.355 , -0.11473456907756 , - 16.36 , -5.298091218194400E-02 , - 16.365 , 9.709062607778981E-03 , - 16.37 , 7.256409889259650E-02 , - 16.375 , 0.134384503385863 , - 16.38 , 0.193739454595389 , - 16.385 , 0.24920525086789 , - 16.39 , 0.299568602241651 , - 16.395 , 0.343956956389216 , - 16.4 , 0.381866908791684 , - 16.405 , 0.413114650618461 , - 16.41 , 0.437733369467239 , - 16.415 , 0.455877974867213 , - 16.42 , 0.46776384132681 , - 16.425 , 0.473663922748246 , - 16.43 , 0.47395074709205 , - 16.435 , 0.469159269294089 , - 16.44 , 0.460028874160481 , - 16.445 , 0.447496145434672 , - 16.45 , 0.43262324571891 , - 16.455 , 0.416476298710912 , - 16.46 , 0.39998487143001 , - 16.465 , 0.383825594174033 , - 16.47 , 0.368369873101624 , - 16.475 , 0.353714574674185 , - 16.48 , 0.339789306901935 , - 16.485 , 0.326509782519242 , - 16.49 , 0.313927074313828 , - 16.495 , 0.302325131506492 , - 16.5 , 0.292230126681682 , - 16.505 , 0.284323481848275 , - 16.51 , 0.279278430837744 , - 16.515 , 0.277565991023392 , - 16.52 , 0.27928378094795 , - 16.525 , 0.284059216918989 , - 16.53 , 0.291055442661278 , - 16.535 , 0.299081158427955 , - 16.54 , 0.306775986803293 , - 16.545 , 0.312824550426672 , - 16.55 , 0.316148133716397 , - 16.555 , 0.316029035226392 , - 16.56 , 0.31215069004257 , - 16.565 , 0.304553318859 , - 16.57 , 0.293538129439739 , - 16.575 , 0.279551088336509 , - 16.58 , 0.263087654869009 , - 16.585 , 0.244637877428558 , - 16.59 , 0.224678132698894 , - 16.595 , 0.203690933512921 , - 16.6 , 0.182189070638557 , - 16.605 , 0.160712533967535 , - 16.61 , 0.139788985048289 , - 16.615 , 0.119849630257617 , - 16.62 , 0.101127004531768 , - 16.625 , 8.356184746823360E-02 , - 16.63 , 6.675788773408831E-02 , - 16.635 , 5.000422430522750E-02 , - 16.64 , 3.237781788478290E-02 , - 16.645 , 1.290492007865870E-02 , - 16.65 , -9.242841522190411E-03 , - 16.655 , -3.457307113926180E-02 , - 16.66 , -6.315044794397080E-02 , - 16.665 , -9.456431033805510E-02 , - 16.67 , -0.12798945588883 , - 16.675 , -0.16233338586658 , - 16.68 , -0.19643231791386 , - 16.685 , -0.22926030484873 , - 16.69 , -0.26010137973961 , - 16.695 , -0.28866176894499 , - 16.7 , -0.31509595200913 , - 16.705 , -0.33995273832631 , - 16.71 , -0.36405095016433 , - 16.715 , -0.38831357635509 , - 16.72 , -0.41358504112542 , - 16.725 , -0.44046253469103 , - 16.73 , -0.46915752304 , - 16.735 , -0.49941060932339 , - 16.74 , -0.53046223395319 , - 16.745 , -0.56108536534834 , - 16.75 , -0.58967419378453 , - 16.755 , -0.61438209498106 , - 16.76 , -0.63329121107995 , - 16.765 , -0.64459684400811 , - 16.77 , -0.64678096256853 , - 16.775 , -0.63875489537808 , - 16.78 , -0.61995220147847 , - 16.785 , -0.59036060295097 , - 16.79 , -0.55049669392639 , - 16.795 , -0.50133039140924 , - 16.8 , -0.44418245956687 , - 16.805 , -0.38061075875138 , - 16.81 , -0.31231562731901 , - 16.815 , -0.24106197922092 , - 16.82 , -0.1686326543263 , - 16.825 , -9.679598568714549E-02 , - 16.83 , -2.728380092511400E-02 , - 16.835 , 3.824293020108400E-02 , - 16.84 , 9.824002683071940E-02 , - 16.845 , 0.151346034414838 , - 16.85 , 0.196448639221428 , - 16.855 , 0.232748834021365 , - 16.86 , 0.259798117288868 , - 16.865 , 0.277506221603702 , - 16.87 , 0.286111918797314 , - 16.875 , 0.286131733842289 , - 16.88 , 0.278296735618878 , - 16.885 , 0.263498277115562 , - 16.89 , 0.24274886174333 , - 16.895 , 0.217166404345327 , - 16.9 , 0.187968246853482 , - 16.905 , 0.156461968787081 , - 16.91 , 0.124015045694316 , - 16.915 , 9.199139026589789E-02 , - 16.92 , 6.165693925050090E-02 , - 16.925 , 3.406870712543500E-02 , - 16.93 , 9.974305988061479E-03 , - 16.935 , -1.024803512308630E-02 , - 16.94 , -2.658403019625520E-02 , - 16.945 , -3.930334521456180E-02 , - 16.95 , -4.881605741987730E-02 , - 16.955 , -5.549717708582600E-02 , - 16.96 , -5.952392534556360E-02 , - 16.965 , -6.076975805147920E-02 , - 16.97 , -5.879314030308780E-02 , - 16.975 , -5.292859848425780E-02 , - 16.98 , -4.246799585244240E-02 , - 16.985 , -2.689000147691090E-02 , - 16.99 , -6.084643377645750E-03 , - 16.995 , 1.948494890135070E-02 , - 17.0 , 4.872381188647930E-02 , - 17.005 , 7.996838345792370E-02 , - 17.01 , 0.111158477862087 , - 17.015 , 0.140083752196672 , - 17.02 , 0.164651035916986 , - 17.025 , 0.18312224741681 , - 17.03 , 0.194279612887888 , - 17.035 , 0.197502657429334 , - 17.04 , 0.192756670137177 , - 17.045 , 0.180518699701142 , - 17.05 , 0.161669903280425 , - 17.055 , 0.137385815960322 , - 17.06 , 0.109043393552795 , - 17.065 , 7.814867623624100E-02 , - 17.07 , 4.627753286711330E-02 , - 17.075 , 1.501227171733180E-02 , - 17.08 , -1.413775130832270E-02 , - 17.085 , -3.983793711438840E-02 , - 17.09 , -6.104036519750250E-02 , - 17.095 , -7.708842285673501E-02 , - 17.1 , -8.778382263463140E-02 , - 17.105 , -9.339483606844121E-02 , - 17.11 , -9.459269265106150E-02 , - 17.115 , -9.232223501388739E-02 , - 17.12 , -8.763025422153840E-02 , - 17.125 , -8.148499770125020E-02 , - 17.13 , -7.462775457220110E-02 , - 17.135 , -6.748324353623050E-02 , - 17.14 , -6.014609852966310E-02 , - 17.145 , -5.243702915474610E-02 , - 17.15 , -4.400785444844100E-02 , - 17.155 , -3.446180958692290E-02 , - 17.16 , -2.345792198001310E-02 , - 17.165 , -1.077394978512690E-02 , - 17.17 , 3.679128728274960E-03 , - 17.175 , 1.988574043577430E-02 , - 17.18 , 3.777667605297300E-02 , - 17.185 , 5.727939847072780E-02 , - 17.19 , 7.834501552629659E-02 , - 17.195 , 0.100944016898245 , - 17.2 , 0.125030824710985 , - 17.205 , 0.150493723897266 , - 17.21 , 0.177105725250697 , - 17.215 , 0.204499198588219 , - 17.22 , 0.232171627050269 , - 17.225 , 0.259522952289019 , - 17.23 , 0.28591162656688 , - 17.235 , 0.310713017545991 , - 17.24 , 0.333360202463241 , - 17.245 , 0.353356491062333 , - 17.25 , 0.370257070307643 , - 17.255 , 0.383631410780558 , - 17.26 , 0.393022771718625 , - 17.265 , 0.397924531915073 , - 17.27 , 0.397789484581034 , - 17.275 , 0.392075448648513 , - 17.28 , 0.380321842357972 , - 17.285 , 0.362236624526743 , - 17.29 , 0.337775799625786 , - 17.295 , 0.307187618217491 , - 17.3 , 0.271012952518342 , - 17.305 , 0.230034748672592 , - 17.31 , 0.185192192119736 , - 17.315 , 0.1374724900416 , - 17.32 , 8.781061932229070E-02 , - 17.325 , 3.701123827098990E-02 , - 17.33 , -1.428322820528750E-02 , - 17.335 , -6.558572925239700E-02 , - 17.34 , -0.11651660768663 , - 17.345 , -0.16673628393002 , - 17.35 , -0.21587015869355 , - 17.355 , -0.26345095520442 , - 17.36 , -0.30888431890374 , - 17.365 , -0.35145163113226 , - 17.37 , -0.39033885127352 , - 17.375 , -0.42469770664605 , - 17.38 , -0.45371821850159 , - 17.385 , -0.4767087589838 , - 17.39 , -0.49316630884791 , - 17.395 , -0.50283205552792 , - 17.4 , -0.50572081737774 , - 17.405 , -0.50212196719028 , - 17.41 , -0.49256808518885 , - 17.415 , -0.47777707225688 , - 17.42 , -0.45857357564831 , - 17.425 , -0.43580164741667 , - 17.43 , -0.41024501009179 , - 17.435 , -0.3825675139441 , - 17.44 , -0.35328788816102 , - 17.445 , -0.32279085797443 , - 17.45 , -0.29137731320226 , - 17.455 , -0.25933449326509 , - 17.46 , -0.2270143702293 , - 17.465 , -0.19489381305459 , - 17.47 , -0.16360264699467 , - 17.475 , -0.1339028594142 , - 17.48 , -0.1066224111889 , - 17.485 , -8.254834652459410E-02 , - 17.49 , -6.230534889079800E-02 , - 17.495 , -4.623541755964700E-02 , - 17.5 , -3.430878641434340E-02 , - 17.505 , -2.607920373761460E-02 , - 17.51 , -2.069570607448080E-02 , - 17.515 , -1.696571448514850E-02 , - 17.52 , -1.346258488402600E-02 , - 17.525 , -8.657687814216761E-03 , - 17.53 , -1.066706267368470E-03 , - 17.535 , 1.061426833550790E-02 , - 17.54 , 2.738663947692650E-02 , - 17.545 , 4.985546977711610E-02 , - 17.55 , 7.816411304470480E-02 , - 17.555 , 0.111966131087412 , - 17.56 , 0.150434055062022 , - 17.565 , 0.19231308509617 , - 17.57 , 0.236013378779133 , - 17.575 , 0.279746002917216 , - 17.58 , 0.321684272405146 , - 17.585 , 0.360138883852544 , - 17.59 , 0.393718048669997 , - 17.595 , 0.421452589177563 , - 17.6 , 0.442859042866297 , - 17.605 , 0.457932285135102 , - 17.61 , 0.467063199142238 , - 17.615 , 0.470901203329776 , - 17.62 , 0.470183933061112 , - 17.625 , 0.465570499510758 , - 17.63 , 0.457509881267887 , - 17.635 , 0.446170505322342 , - 17.64 , 0.431441044905879 , - 17.645 , 0.412997059132728 , - 17.65 , 0.390417907394592 , - 17.655 , 0.363320032948617 , - 17.66 , 0.331482683771369 , - 17.665 , 0.294935652090983 , - 17.67 , 0.254001046090184 , - 17.675 , 0.209280977845859 , - 17.68 , 0.161607754445718 , - 17.685 , 0.111965960430188 , - 17.69 , 6.141586922651330E-02 , - 17.695 , 1.102093548815530E-02 , - 17.7 , -3.820203658969610E-02 , - 17.705 , -8.531704155098779E-02 , - 17.71 , -0.1294862669167 , - 17.715 , -0.16998594459785 , - 17.72 , -0.20622064042651 , - 17.725 , -0.23774591935919 , - 17.73 , -0.26428840511531 , - 17.735 , -0.28576606331927 , - 17.74 , -0.30229286763517 , - 17.745 , -0.31416772926296 , - 17.75 , -0.3218406535065 , - 17.755 , -0.3258645654062 , - 17.76 , -0.32683843068621 , - 17.765 , -0.32535588224289 , - 17.77 , -0.32196457829868 , - 17.775 , -0.31715006731732 , - 17.78 , -0.31133941077337 , - 17.785 , -0.30492235408688 , - 17.79 , -0.29827929738639 , - 17.795 , -0.29180571311681 , - 17.8 , -0.2859227673159 , - 17.805 , -0.2810686116836 , - 17.81 , -0.27767024271612 , - 17.815 , -0.27609995179852 , - 17.82 , -0.27662600365925 , - 17.825 , -0.27936632736658 , - 17.83 , -0.28425416349301 , - 17.835 , -0.29102164261339 , - 17.84 , -0.29920350847177 , - 17.845 , -0.30815897987418 , - 17.85 , -0.31710995942421 , - 17.855 , -0.32518836729579 , - 17.86 , -0.33149006868417 , - 17.865 , -0.33512980995752 , - 17.87 , -0.33529555909469 , - 17.875 , -0.3312973400369 , - 17.88 , -0.32261024125577 , - 17.885 , -0.30890529900639 , - 17.89 , -0.290070720818 , - 17.895 , -0.26621431048452 , - 17.9 , -0.23765242692415 , - 17.905 , -0.20488114286083 , - 17.91 , -0.16853769940936 , - 17.915 , -0.12935252659241 , - 17.92 , -8.810348127193721E-02 , - 17.925 , -4.557141302171240E-02 , - 17.93 , -2.513356389291560E-03 , - 17.935 , 4.035724323904150E-02 , - 17.94 , 8.237249752346711E-02 , - 17.945 , 0.122904827481364 , - 17.95 , 0.16135335850423 , - 17.955 , 0.197135089796928 , - 17.96 , 0.229680590055412 , - 17.965 , 0.258445542327015 , - 17.97 , 0.282931564681535 , - 17.975 , 0.3027256078172 , - 17.98 , 0.317544225316334 , - 17.985 , 0.327282981257925 , - 17.99 , 0.332055566875123 , - 17.995 , 0.332219078215985 , - 18.0 , 0.328372664764279 , - 18.005 , 0.321327968541342 , - 18.01 , 0.312046315167661 , - 18.015 , 0.301552393558308 , - 18.02 , 0.29083015000257 , - 18.025 , 0.280717140577436 , - 18.03 , 0.271812862742294 , - 18.035 , 0.264416834319869 , - 18.04 , 0.258507921567912 , - 18.045 , 0.25377043717894 , - 18.05 , 0.249664740892512 , - 18.055 , 0.245531784942376 , - 18.06 , 0.240715666971269 , - 18.065 , 0.234683989615924 , - 18.07 , 0.227126896191005 , - 18.075 , 0.218018915200585 , - 18.08 , 0.207635259720329 , - 18.085 , 0.196519817484055 , - 18.09 , 0.185413864456323 , - 18.095 , 0.175156074068905 , - 18.1 , 0.166570903921847 , - 18.105 , 0.160362276331594 , - 18.11 , 0.157026715204937 , - 18.115 , 0.156797444080986 , - 18.12 , 0.159624455669982 , - 18.125 , 0.16519187224497 , - 18.13 , 0.172968089200864 , - 18.135 , 0.1822813476427 , - 18.14 , 0.192409206882619 , - 18.145 , 0.202670276399768 , - 18.15 , 0.212504752944377 , - 18.155 , 0.221533110089593 , - 18.16 , 0.229583054017435 , - 18.165 , 0.236681693233947 , - 18.17 , 0.24301317231324 , - 18.175 , 0.248850323481097 , - 18.18 , 0.254471744041749 , - 18.185 , 0.260080804366178 , - 18.19 , 0.265741889443548 , - 18.195 , 0.27134643214208 , - 18.2 , 0.276614811069614 , - 18.205 , 0.281132591864889 , - 18.21 , 0.284412543870369 , - 18.215 , 0.285966261493111 , - 18.22 , 0.28537109719781 , - 18.225 , 0.282316011041418 , - 18.23 , 0.276621372715182 , - 18.235 , 0.268228573189369 , - 18.24 , 0.257171332184819 , - 18.245 , 0.243536231265936 , - 18.25 , 0.227433656521336 , - 18.255 , 0.208982058948683 , - 18.26 , 0.188316971988387 , - 18.265 , 0.165617801602736 , - 18.27 , 0.141146408794358 , - 18.275 , 0.115280086715596 , - 18.28 , 8.852986599304000E-02 , - 18.285 , 6.153122175946150E-02 , - 18.29 , 3.501087677361560E-02 , - 18.295 , 9.728375745511450E-03 , - 18.3 , -1.358945599970610E-02 , - 18.305 , -3.431372431462720E-02 , - 18.31 , -5.195992570184670E-02 , - 18.315 , -6.621459033346280E-02 , - 18.32 , -7.693590669330690E-02 , - 18.325 , -8.413813135115721E-02 , - 18.33 , -8.796246104481401E-02 , - 18.335 , -8.865026558137970E-02 , - 18.34 , -8.651948855745679E-02 , - 18.345 , -8.194991749053140E-02 , - 18.35 , -7.537263942731640E-02 , - 18.355 , -6.726122085666700E-02 , - 18.36 , -5.811712688388060E-02 , - 18.365 , -4.844978592925620E-02 , - 18.37 , -3.874961154322750E-02 , - 18.375 , -2.946321539637920E-02 , - 18.38 , -2.097389378477130E-02 , - 18.385 , -1.359774681728760E-02 , - 18.39 , -7.592927023032140E-03 , - 18.395 , -3.182771456432360E-03 , - 18.4 , -5.797783397815400E-04 , - 18.405 , -3.403899532317900E-06 , - 18.41 , -1.673453644507240E-03 , - 18.415 , -5.782448384807060E-03 , - 18.42 , -1.244176672900140E-02 , - 18.425 , -2.161800758848600E-02 , - 18.43 , -3.307323100644420E-02 , - 18.435 , -4.633260284878780E-02 , - 18.44 , -6.069252068692880E-02 , - 18.445 , -7.527964829315580E-02 , - 18.45 , -8.915230216299309E-02 , - 18.455 , -0.10143296879817 , - 18.46 , -0.11144311748952 , - 18.465 , -0.11881688272356 , - 18.47 , -0.12356683521081 , - 18.475 , -0.12609239258508 , - 18.48 , -0.12712667509216 , - 18.485 , -0.12763705192334 , - 18.49 , -0.12869455777906 , - 18.495 , -0.13134291006952 , - 18.5 , -0.13648385782305 , - 18.505 , -0.14479654925278 , - 18.51 , -0.15669435068272 , - 18.515 , -0.17231899455012 , - 18.52 , -0.19156053351027 , - 18.525 , -0.2140948418449 , - 18.53 , -0.23942532421762 , - 18.535 , -0.26692808116807 , - 18.54 , -0.29589366741626 , - 18.545 , -0.32556987300455 , - 18.55 , -0.35520167089443 , - 18.555 , -0.38407157568151 , - 18.56 , -0.41153207462536 , - 18.565 , -0.43702839771631 , - 18.57 , -0.46010162556848 , - 18.575 , -0.4803753536196 , - 18.58 , -0.49752469104796 , - 18.585 , -0.51123932275576 , - 18.59 , -0.52119100580172 , - 18.595 , -0.52702031860061 , - 18.6 , -0.52835074084744 , - 18.605 , -0.52483178107225 , - 18.61 , -0.51620504117931 , - 18.615 , -0.50237569943468 , - 18.62 , -0.4834730346886 , - 18.625 , -0.45987873870396 , - 18.63 , -0.43221396453591 , - 18.635 , -0.40128199130244 , - 18.64 , -0.36797809251035 , - 18.645 , -0.33318247540211 , - 18.65 , -0.2976655847206 , - 18.655 , -0.26201863587465 , - 18.66 , -0.22662902367112 , - 18.665 , -0.19169728326541 , - 18.67 , -0.15729264669158 , - 18.675 , -0.1234229501959 , - 18.68 , -9.010582719609091E-02 , - 18.685 , -5.741817970014060E-02 , - 18.69 , -2.552248385036910E-02 , - 18.695 , 5.339196527069970E-03 , - 18.7 , 3.486712311982680E-02 , - 18.705 , 6.273660435450590E-02 , - 18.71 , 8.862290998998250E-02 , - 18.715 , 0.112218745947816 , - 18.72 , 0.133237764611335 , - 18.725 , 0.151417354399901 , - 18.73 , 0.166520793732197 , - 18.735 , 0.178358092928635 , - 18.74 , 0.186819039757722 , - 18.745 , 0.191918879888126 , - 18.75 , 0.193841382081441 , - 18.755 , 0.192966026117615 , - 18.76 , 0.189861849245228 , - 18.765 , 0.185243424802453 , - 18.77 , 0.179886808055877 , - 18.775 , 0.174523130427245 , - 18.78 , 0.169727209876345 , - 18.785 , 0.165828266795135 , - 18.79 , 0.162860717438664 , - 18.795 , 0.160568509105303 , - 18.8 , 0.158460262202499 , - 18.805 , 0.155903588032585 , - 18.81 , 0.152236721793017 , - 18.815 , 0.146874335438137 , - 18.82 , 0.139388100075902 , - 18.825 , 0.129551248829624 , - 18.83 , 0.117346184292776 , - 18.835 , 0.102944396398025 , - 18.84 , 8.667203203856250E-02 , - 18.845 , 6.897292950992250E-02 , - 18.85 , 5.037981195577830E-02 , - 18.855 , 3.149222301298260E-02 , - 18.86 , 1.295788909713510E-02 , - 18.865 , -4.552694712540460E-03 , - 18.87 , -2.038471143298640E-02 , - 18.875 , -3.395374370024890E-02 , - 18.88 , -4.480974308295430E-02 , - 18.885 , -5.269874412847760E-02 , - 18.89 , -5.760475116618620E-02 , - 18.895 , -5.975782869643340E-02 , - 18.9 , -5.959990728708000E-02 , - 18.905 , -5.771202182665640E-02 , - 18.91 , -5.471620957553570E-02 , - 18.915 , -5.117481281717030E-02 , - 18.92 , -4.751155121434680E-02 , - 18.925 , -4.397377050356170E-02 , - 18.93 , -4.064613036051550E-02 , - 18.935 , -3.750986634275660E-02 , - 18.94 , -3.453164301123860E-02 , - 18.945 , -3.175456679161500E-02 , - 18.95 , -2.936540580184520E-02 , - 18.955 , -2.771540773125420E-02 , - 18.96 , -2.728673446781490E-02 , - 18.965 , -2.860928038065850E-02 , - 18.97 , -3.214733887015950E-02 , - 18.975 , -3.818284412564310E-02 , - 18.98 , -4.672302188795090E-02 , - 18.985 , -5.745461744704080E-02 , - 18.99 , -6.975424591801779E-02 , - 18.995 , -8.275205425474760E-02 , - 19.0 , -9.543348500501039E-02 , - 19.005 , -0.10675671144965 , - 19.01 , -0.11576388175306 , - 19.015 , -0.12166743333762 , - 19.02 , -0.12390264431233 , - 19.025 , -0.12214656117846 , - 19.03 , -0.11631154879176 , - 19.035 , -0.10652423304446 , - 19.04 , -9.310118520163460E-02 , - 19.045 , -7.652590539072700E-02 , - 19.05 , -5.743089586506230E-02 , - 19.055 , -3.657596705689010E-02 , - 19.06 , -1.481925977005460E-02 , - 19.065 , 6.926924474783110E-03 , - 19.07 , 2.775463368340260E-02 , - 19.075 , 4.683156424739500E-02 , - 19.08 , 6.347270763070770E-02 , - 19.085 , 7.720227146370970E-02 , - 19.09 , 8.779042470764520E-02 , - 19.095 , 9.526029188212271E-02 , - 19.1 , 9.986040447199600E-02 , - 19.105 , 0.102009856725406 , - 19.11 , 0.102225525300876 , - 19.115 , 0.101047428528718 , - 19.12 , 9.897427931868839E-02 , - 19.125 , 9.642072648080460E-02 , - 19.13 , 9.369918170530429E-02 , - 19.135 , 9.102713402201090E-02 , - 19.14 , 8.855073690832560E-02 , - 19.145 , 8.637784747202421E-02 , - 19.15 , 8.460889194052530E-02 , - 19.155 , 8.335969452805890E-02 , - 19.16 , 8.277035792073900E-02 , - 19.165 , 8.300094888178290E-02 , - 19.17 , 8.421449446395760E-02 , - 19.175 , 8.655290215462839E-02 , - 19.18 , 9.010941198122500E-02 , - 19.185 , 9.490288969345520E-02 , - 19.19 , 0.100856185025776 , - 19.195 , 0.107783589409055 , - 19.2 , 0.115386291208123 , - 19.205 , 0.123260349877366 , - 19.21 , 0.130913935378 , - 19.215 , 0.137796521245135 , - 19.22 , 0.143335849367096 , - 19.225 , 0.14698030532155 , - 19.23 , 0.148242029288944 , - 19.235 , 0.146735661784648 , - 19.24 , 0.142208324703231 , - 19.245 , 0.134556865273917 , - 19.25 , 0.123832305128576 , - 19.255 , 0.110231039547548 , - 19.26 , 9.407703422254150E-02 , - 19.265 , 7.579763962651660E-02 , - 19.27 , 5.589930332000480E-02 , - 19.275 , 3.494345559651580E-02 , - 19.28 , 1.352655612925890E-02 , - 19.285 , -7.738281430620860E-03 , - 19.29 , -2.823640126172170E-02 , - 19.295 , -4.736851280459840E-02 , - 19.3 , -6.456726778946650E-02 , - 19.305 , -7.931522042729799E-02 , - 19.31 , -9.116146754991310E-02 , - 19.315 , -9.973543395603350E-02 , - 19.32 , -0.10475595669325 , - 19.325 , -0.10603430822357 , - 19.33 , -0.10347284701214 , - 19.335 , -9.706124752024230E-02 , - 19.34 , -8.687430152469530E-02 , - 19.345 , -7.307405512475940E-02 , - 19.35 , -5.591887411984520E-02 , - 19.355 , -3.577706479529710E-02 , - 19.36 , -1.314335388833300E-02 , - 19.365 , 1.134983613684490E-02 , - 19.37 , 3.693079681400050E-02 , - 19.375 , 6.270474265740390E-02 , - 19.38 , 8.768905345507640E-02 , - 19.385 , 0.1108686368144 , - 19.39 , 0.1312644416171 , - 19.395 , 0.148009041167522 , - 19.4 , 0.160416739422417 , - 19.405 , 0.168040427167663 , - 19.41 , 0.170704607506662 , - 19.415 , 0.168512624998284 , - 19.42 , 0.161826470167071 , - 19.425 , 0.151223327305197 , - 19.43 , 0.137436526462059 , - 19.435 , 0.12128787067038 , - 19.44 , 0.103621500126964 , - 19.445 , 8.524411667406280E-02 , - 19.45 , 6.687930552254420E-02 , - 19.455 , 4.913589731864990E-02 , - 19.46 , 3.249281642772610E-02 , - 19.465 , 1.729796363375550E-02 , - 19.47 , 3.779772699936010E-03 , - 19.475 , -7.933453913126739E-03 , - 19.48 , -1.778837362450150E-02 , - 19.485 , -2.578180319663970E-02 , - 19.49 , -3.193743546434960E-02 , - 19.495 , -3.628975661666560E-02 , - 19.5 , -3.887558954382360E-02 , - 19.505 , -3.973470241057670E-02 , - 19.51 , -3.891788867951480E-02 , - 19.515 , -3.649986139114820E-02 , - 19.52 , -3.259249709820460E-02 , - 19.525 , -2.735427053548850E-02 , - 19.53 , -2.099133842643200E-02 , - 19.535 , -1.374830536741160E-02 , - 19.54 , -5.887877188928280E-03 , - 19.545 , 2.336959611728440E-03 , - 19.55 , 1.071436148192050E-02 , - 19.555 , 1.910203440373310E-02 , - 19.56 , 2.744608047788240E-02 , - 19.565 , 3.578603089731680E-02 , - 19.57 , 4.424249115467690E-02 , - 19.575 , 5.298918396292150E-02 , - 19.58 , 6.221237826554930E-02 , - 19.585 , 7.206505940082400E-02 , - 19.59 , 8.262287004060030E-02 , - 19.595 , 9.385089818082880E-02 , - 19.6 , 0.105586535210159 , - 19.605 , 0.117542979202558 , - 19.61 , 0.129332330456747 , - 19.615 , 0.140505656304056 , - 19.62 , 0.150602470682144 , - 19.625 , 0.159201510072528 , - 19.63 , 0.165963272203869 , - 19.635 , 0.170657754779367 , - 19.64 , 0.173171986392552 , - 19.645 , 0.173497060176099 , - 19.65 , 0.171698563869022 , - 19.655 , 0.167877117650055 , - 19.66 , 0.162128958008132 , - 19.665 , 0.154515020640188 , - 19.67 , 0.145047978425579 , - 19.675 , 0.133699089240968 , - 19.68 , 0.120425826006013 , - 19.685 , 0.105211954035009 , - 19.69 , 8.811482794436119E-02 , - 19.695 , 6.930362885349300E-02 , - 19.7 , 4.908317786948910E-02 , - 19.705 , 2.789284466062680E-02 , - 19.71 , 6.282684187232620E-03 , - 19.715 , -1.513293891731910E-02 , - 19.72 , -3.573219349475490E-02 , - 19.725 , -5.494565996060560E-02 , - 19.73 , -7.230331792209500E-02 , - 19.735 , -8.746611435403620E-02 , - 19.74 , -0.10023408196077 , - 19.745 , -0.11053680897542 , - 19.75 , -0.11840927699064 , - 19.755 , -0.12396609115553 , - 19.76 , -0.12737940482213 , - 19.765 , -0.12886942680431 , - 19.77 , -0.12870508549978 , - 19.775 , -0.12721486235372 , - 19.78 , -0.12479696224801 , - 19.785 , -0.12192134851853 , - 19.79 , -0.11911512331687 , - 19.795 , -0.11692852296234 , - 19.8 , -0.1158828122011 , - 19.805 , -0.11640862718208 , - 19.81 , -0.11878469144379 , - 19.815 , -0.12309145404105 , - 19.82 , -0.12918833366224 , - 19.825 , -0.13672125838288 , - 19.83 , -0.14515938284391 , - 19.835 , -0.15385497532022 , - 19.84 , -0.16211467849934 , - 19.845 , -0.16927092799142 , - 19.85 , -0.1747405815055 , - 19.855 , -0.17806542050622 , - 19.86 , -0.17893075004105 , - 19.865 , -0.17716517197334 , - 19.87 , -0.1727273398208 , - 19.875 , -0.16568659834495 , - 19.88 , -0.15620370102824 , - 19.885 , -0.14451379659869 , - 19.89 , -0.13091402606184 , - 19.895 , -0.11575112780621 , - 19.9 , -9.940839096806510E-02 , - 19.905 , -8.228798219382000E-02 , - 19.91 , -6.479104079602420E-02 , - 19.915 , -4.729626907194930E-02 , - 19.92 , -3.014389625728430E-02 , - 19.925 , -1.362770379699480E-02 , - 19.93 , 1.998432435284760E-03 , - 19.935 , 1.650283145918720E-02 , - 19.94 , 2.964895620060110E-02 , - 19.945 , 4.116860136833410E-02 , - 19.95 , 5.074351304162170E-02 , - 19.955 , 5.800645031803000E-02 , - 19.96 , 6.256532313956960E-02 , - 19.965 , 6.405233292472851E-02 , - 19.97 , 6.218959865152200E-02 , - 19.975 , 5.686184515599930E-02 , - 19.98 , 4.817972906533240E-02 , - 19.985 , 3.651967859402010E-02 , - 19.99 , 2.252985493696160E-02 , - 19.995 , 7.097071756102240E-03 , - 20.0 , -8.721812839652310E-03 , - 20.005 , -2.379447424676810E-02 , - 20.01 , -3.701839037090120E-02 , - 20.015 , -4.742092878891140E-02 , - 20.02 , -5.423951270215350E-02 , - 20.025 , -5.697258922350620E-02 , - 20.03 , -5.539776158916270E-02 , - 20.035 , -4.956057087520670E-02 , - 20.04 , -3.974179526714170E-02 , - 20.045 , -2.641288342533750E-02 , - 20.05 , -1.019081782994870E-02 , - 20.055 , 8.202447545571230E-03 , - 20.06 , 2.797116679219240E-02 , - 20.065 , 4.827036868959560E-02 , - 20.07 , 6.822566739672180E-02 , - 20.075 , 8.695562572496580E-02 , - 20.08 , 0.103598292547575 , - 20.085 , 0.117345557097572 , - 20.09 , 0.127481089438341 , - 20.095 , 0.133420394415517 , - 20.1 , 0.134744188882336 , - 20.105 , 0.131221676654994 , - 20.11 , 0.122818973076751 , - 20.115 , 0.109691680974573 , - 20.12 , 9.216522604322611E-02 , - 20.125 , 7.070600814518090E-02 , - 20.13 , 4.589147778332150E-02 , - 20.135 , 1.838180387523030E-02 , - 20.14 , -1.110108370552780E-02 , - 20.145 , -4.178877084026370E-02 , - 20.15 , -7.287571484484311E-02 , - 20.155 , -0.10352963470195 , - 20.16 , -0.13290387884342 , - 20.165 , -0.16015839093613 , - 20.17 , -0.18448715088686 , - 20.175 , -0.20515328670567 , - 20.18 , -0.22152568111903 , - 20.185 , -0.23311328473587 , - 20.19 , -0.23959100455607 , - 20.195 , -0.24081433909493 , - 20.2 , -0.23682050088862 , - 20.205 , -0.22781739014645 , - 20.21 , -0.21416412518464 , - 20.215 , -0.19634582016096 , - 20.22 , -0.17494767238438 , - 20.225 , -0.15062916150452 , - 20.23 , -0.12410162176008 , - 20.235 , -9.610482601536199E-02 , - 20.24 , -6.738446390246500E-02 , - 20.245 , -3.866506506796110E-02 , - 20.25 , -1.062408132283030E-02 , - 20.255 , 1.613821656425260E-02 , - 20.26 , 4.112363448240460E-02 , - 20.265 , 6.395563455415000E-02 , - 20.27 , 8.438638743734070E-02 , - 20.275 , 0.10229225024046 , - 20.28 , 0.11765525248804 , - 20.285 , 0.13053719119583 , - 20.29 , 0.141047644803831 , - 20.295 , 0.14931741898274 , - 20.3 , 0.155478926240496 , - 20.305 , 0.159660339201315 , - 20.31 , 0.161990227205732 , - 20.315 , 0.162612590283051 , - 20.32 , 0.161703234926074 , - 20.325 , 0.159483350064339 , - 20.33 , 0.156221155279841 , - 20.335 , 0.152221918187124 , - 20.34 , 0.147804677752111 , - 20.345 , 0.143271172359312 , - 20.35 , 0.138873332096741 , - 20.355 , 0.134787926819641 , - 20.36 , 0.131103697853831 , - 20.365 , 0.127825557460833 , - 20.37 , 0.12489405648423 , - 20.375 , 0.122216684366155 , - 20.38 , 0.119703338338164 , - 20.385 , 0.117298332826065 , - 20.39 , 0.115002111347558 , - 20.395 , 0.1128792665639 , - 20.4 , 0.111051600017025 , - 20.405 , 0.109680624221402 , - 20.41 , 0.108942958893076 , - 20.415 , 0.109006468464252 , - 20.42 , 0.110010955231372 , - 20.425 , 0.112056904842183 , - 20.43 , 0.115202427994996 , - 20.435 , 0.119466647868312 , - 20.44 , 0.124835559019734 , - 20.445 , 0.131267773242386 , - 20.45 , 0.138696105432056 , - 20.455 , 0.14702533406325 , - 20.46 , 0.156125727838975 , - 20.465 , 0.165825042690333 , - 20.47 , 0.0 , - ), - INTERPOL='LIN', - PROL_DROITE='CONSTANT', - PROL_GAUCHE='EXCLU',); - - -ACCELV1=DEFI_FONCTION(NOM_PARA='INST', - VALE= -( - 0.0 , 0.0 , - 1.000000000000000E-02 , 1.310000000000000E-03 , - 2.000000000000000E-02 , 7.200000000000000E-04 , - 3.000000000000000E-02 , -1.160000000000000E-03 , - 4.000000000000000E-02 , -4.010000000000000E-03 , - 5.000000000000000E-02 , -8.580000000000001E-03 , - 6.000000000000000E-02 , -1.459000000000000E-02 , - 7.000000000000001E-02 , -1.920000000000000E-02 , - 8.000000000000000E-02 , -1.947000000000000E-02 , - 9.000000000000000E-02 , -1.781000000000000E-02 , - 0.1 , -1.970000000000000E-02 , - 0.11 , -2.520000000000000E-02 , - 0.12 , -3.281000000000000E-02 , - 0.13 , -4.377000000000000E-02 , - 0.14 , -5.504000000000000E-02 , - 0.15 , -5.797000000000000E-02 , - 0.16 , -4.627000000000000E-02 , - 0.17 , -2.536000000000000E-02 , - 0.18 , -6.700000000000000E-03 , - 0.19 , 7.849999999999999E-03 , - 0.2 , 2.168000000000000E-02 , - 0.21 , 3.643000000000000E-02 , - 0.22 , 5.686000000000000E-02 , - 0.23 , 8.019999999999999E-02 , - 0.24 , 8.942000000000000E-02 , - 0.25 , 7.790000000000000E-02 , - 0.26 , 6.301000000000000E-02 , - 0.27 , 5.860000000000000E-02 , - 0.28 , 5.444000000000000E-02 , - 0.29 , 3.314000000000000E-02 , - 0.3 , -4.730000000000000E-03 , - 0.31 , -3.492000000000000E-02 , - 0.32 , -3.413000000000000E-02 , - 0.33 , -7.530000000000000E-03 , - 0.34 , 1.991000000000000E-02 , - 0.35 , 2.983000000000000E-02 , - 0.36 , 2.482000000000000E-02 , - 0.37 , 1.676000000000000E-02 , - 0.38 , 4.890000000000000E-03 , - 0.39 , -1.521000000000000E-02 , - 0.4 , -3.575000000000000E-02 , - 0.41 , -5.053000000000000E-02 , - 0.42 , -6.325000000000000E-02 , - 0.43 , -7.273000000000000E-02 , - 0.44 , -7.520000000000000E-02 , - 0.45 , -8.463000000000000E-02 , - 0.46 , -0.11597 , - 0.47 , -0.1564 , - 0.48 , -0.18027 , - 0.49 , -0.17201 , - 0.5 , -0.13845 , - 0.51 , -0.1016 , - 0.52 , -6.390999999999999E-02 , - 0.53 , -1.035000000000000E-02 , - 0.54 , 5.961000000000000E-02 , - 0.55 , 0.12972 , - 0.56 , 0.18788 , - 0.57 , 0.23015 , - 0.58 , 0.23082 , - 0.59 , 0.1643 , - 0.6 , 6.750000000000000E-02 , - 0.61 , 7.450000000000000E-03 , - 0.62 , 1.664000000000000E-02 , - 0.63 , 8.058000000000000E-02 , - 0.64 , 0.15546 , - 0.65 , 0.2133 , - 0.66 , 0.24265 , - 0.67 , 0.21922 , - 0.68 , 0.1295 , - 0.69 , 1.220000000000000E-03 , - 0.7 , -0.12397 , - 0.71 , -0.1882 , - 0.72 , -0.17059 , - 0.73 , -0.11119 , - 0.74 , -9.375000000000000E-02 , - 0.75 , -0.15419 , - 0.76 , -0.21371 , - 0.77 , -0.19269 , - 0.78 , -0.12556 , - 0.79 , -8.054000000000000E-02 , - 0.8 , -5.658000000000000E-02 , - 0.81 , -2.563000000000000E-02 , - 0.82 , -1.082000000000000E-02 , - 0.83 , -6.067000000000000E-02 , - 0.84 , -0.16876 , - 0.85 , -0.26933 , - 0.86 , -0.31693 , - 0.87 , -0.3189 , - 0.88 , -0.31999 , - 0.89 , -0.32387 , - 0.9 , -0.35623 , - 0.91 , -0.38483 , - 0.92 , -0.36307 , - 0.93 , -0.29278 , - 0.94 , -0.18821 , - 0.95 , -6.119000000000000E-02 , - 0.96 , 3.932000000000000E-02 , - 0.97 , 7.092000000000000E-02 , - 0.98 , 3.394000000000000E-02 , - 0.99 , 1.056000000000000E-02 , - 1.0 , 3.006000000000000E-02 , - 1.01 , 4.384000000000000E-02 , - 1.02 , 1.582000000000000E-02 , - 1.03 , -2.452000000000000E-02 , - 1.04 , -3.991000000000000E-02 , - 1.05 , -4.053000000000000E-02 , - 1.06 , -4.416000000000000E-02 , - 1.07 , -6.185000000000000E-02 , - 1.08 , -0.10165 , - 1.09 , -0.13542 , - 1.1 , -0.142 , - 1.11 , -0.13819 , - 1.12 , -0.13187 , - 1.13 , -0.11765 , - 1.14 , -8.853000000000000E-02 , - 1.15 , -4.957000000000000E-02 , - 1.16 , -2.751000000000000E-02 , - 1.17 , -4.837000000000000E-02 , - 1.18 , -0.11303 , - 1.19 , -0.16115 , - 1.2 , -0.1365 , - 1.21 , -9.369000000000000E-02 , - 1.22 , -0.10681 , - 1.23 , -0.16911 , - 1.24 , -0.23593 , - 1.25 , -0.27067 , - 1.26 , -0.27471 , - 1.27 , -0.25731 , - 1.28 , -0.19103 , - 1.29 , -7.716000000000001E-02 , - 1.3 , 1.100000000000000E-03 , - 1.31 , -4.582000000000000E-02 , - 1.32 , -0.19352 , - 1.33 , -0.32144 , - 1.34 , -0.37399 , - 1.35 , -0.40308 , - 1.36 , -0.45452 , - 1.37 , -0.51071 , - 1.38 , -0.52231 , - 1.39 , -0.45018 , - 1.4 , -0.30537 , - 1.41 , -0.15517 , - 1.42 , -7.362000000000000E-02 , - 1.43 , -9.615000000000000E-02 , - 1.44 , -0.17148 , - 1.45 , -0.17476 , - 1.46 , -8.399000000000000E-02 , - 1.47 , -2.696000000000000E-02 , - 1.48 , -6.808000000000000E-02 , - 1.49 , -0.12817 , - 1.5 , -0.12265 , - 1.51 , -6.149000000000000E-02 , - 1.52 , -8.380000000000000E-03 , - 1.53 , 1.139000000000000E-02 , - 1.54 , 5.830000000000000E-03 , - 1.55 , -2.002000000000000E-02 , - 1.56 , -3.584000000000000E-02 , - 1.57 , -1.060000000000000E-03 , - 1.58 , 6.028000000000000E-02 , - 1.59 , 8.509000000000000E-02 , - 1.6 , 9.515000000000000E-02 , - 1.61 , 0.14372 , - 1.62 , 0.17863 , - 1.63 , 0.16098 , - 1.64 , 0.15227 , - 1.65 , 0.16265 , - 1.66 , 0.1009 , - 1.67 , -8.347000000000000E-02 , - 1.68 , -0.28571 , - 1.69 , -0.3845 , - 1.7 , -0.42649 , - 1.71 , -0.48045 , - 1.72 , -0.48546 , - 1.73 , -0.34744 , - 1.74 , -4.460000000000000E-02 , - 1.75 , 0.31704 , - 1.76 , 0.56244 , - 1.77 , 0.61288 , - 1.78 , 0.56235 , - 1.79 , 0.56046 , - 1.8 , 0.58601 , - 1.81 , 0.50428 , - 1.82 , 0.34783 , - 1.83 , 0.2707 , - 1.84 , 0.32579 , - 1.85 , 0.43838 , - 1.86 , 0.49734 , - 1.87 , 0.46993 , - 1.88 , 0.42104 , - 1.89 , 0.39656 , - 1.9 , 0.37011 , - 1.91 , 0.3211 , - 1.92 , 0.27122 , - 1.93 , 0.2175 , - 1.94 , 0.1251 , - 1.95 , 3.090000000000000E-03 , - 1.96 , -9.401000000000000E-02 , - 1.97 , -0.13751 , - 1.98 , -0.12623 , - 1.99 , -3.147000000000000E-02 , - 2.0 , 0.15999 , - 2.01 , 0.39077 , - 2.02 , 0.57348 , - 2.03 , 0.61086 , - 2.04 , 0.4807 , - 2.05 , 0.29864 , - 2.06 , 0.18108 , - 2.07 , 0.167 , - 2.08 , 0.23579 , - 2.09 , 0.28543 , - 2.1 , 0.21887 , - 2.11 , 6.136000000000000E-02 , - 2.12 , -8.754000000000001E-02 , - 2.13 , -0.18795 , - 2.14 , -0.28217 , - 2.15 , -0.39328 , - 2.16 , -0.47351 , - 2.17 , -0.45659 , - 2.18 , -0.38611 , - 2.19 , -0.40359 , - 2.2 , -0.49671 , - 2.21 , -0.47831 , - 2.22 , -0.24834 , - 2.23 , 9.692000000000001E-02 , - 2.24 , 0.36832 , - 2.25 , 0.49779 , - 2.26 , 0.55588 , - 2.27 , 0.55074 , - 2.28 , 0.47652 , - 2.29 , 0.42596 , - 2.3 , 0.45439 , - 2.31 , 0.4758 , - 2.32 , 0.36011 , - 2.33 , 9.916999999999999E-02 , - 2.34 , -0.22081 , - 2.35 , -0.53559 , - 2.36 , -0.73055 , - 2.37 , -0.68219 , - 2.38 , -0.46512 , - 2.39 , -0.29795 , - 2.4 , -0.29155 , - 2.41 , -0.37205 , - 2.42 , -0.45321 , - 2.43 , -0.52678 , - 2.44 , -0.53549 , - 2.45 , -0.39903 , - 2.46 , -0.17073 , - 2.47 , 4.007000000000000E-02 , - 2.48 , 0.19098 , - 2.49 , 0.23016 , - 2.5 , 0.11487 , - 2.51 , -3.277000000000000E-02 , - 2.52 , -2.678000000000000E-02 , - 2.53 , 0.14456 , - 2.54 , 0.33564 , - 2.55 , 0.43459 , - 2.56 , 0.47636 , - 2.57 , 0.56106 , - 2.58 , 0.69871 , - 2.59 , 0.78021 , - 2.6 , 0.69033 , - 2.61 , 0.48738 , - 2.62 , 0.37542 , - 2.63 , 0.44792 , - 2.64 , 0.63115 , - 2.65 , 0.80303 , - 2.66 , 0.86913 , - 2.67 , 0.81861 , - 2.68 , 0.67639 , - 2.69 , 0.44981 , - 2.7 , 0.19577 , - 2.71 , 1.762000000000000E-02 , - 2.72 , -7.475000000000000E-02 , - 2.73 , -0.18543 , - 2.74 , -0.31712 , - 2.75 , -0.30763 , - 2.76 , -5.022000000000000E-02 , - 2.77 , 0.36264 , - 2.78 , 0.71418 , - 2.79 , 0.86474 , - 2.8 , 0.91391 , - 2.81 , 0.97578 , - 2.82 , 0.99997 , - 2.83 , 0.90663 , - 2.84 , 0.71448 , - 2.85 , 0.55982 , - 2.86 , 0.55183 , - 2.87 , 0.63744 , - 2.88 , 0.70292 , - 2.89 , 0.68299 , - 2.9 , 0.58616 , - 2.91 , 0.47484 , - 2.92 , 0.38822 , - 2.93 , 0.3229 , - 2.94 , 0.25296 , - 2.95 , 0.16705 , - 2.96 , 0.10044 , - 2.97 , 7.353000000000000E-02 , - 2.98 , 4.790000000000000E-02 , - 2.99 , -3.974000000000000E-02 , - 3.0 , -0.21989 , - 3.01 , -0.43388 , - 3.02 , -0.59094 , - 3.03 , -0.68752 , - 3.04 , -0.77344 , - 3.05 , -0.84165 , - 3.06 , -0.87592 , - 3.07 , -0.92165 , - 3.08 , -0.98681 , - 3.09 , -0.9813 , - 3.1 , -0.85134 , - 3.11 , -0.71226 , - 3.12 , -0.70318 , - 3.13 , -0.73062 , - 3.14 , -0.63434 , - 3.15 , -0.49621 , - 3.16 , -0.46434 , - 3.17 , -0.4895 , - 3.18 , -0.43989 , - 3.19 , -0.297 , - 3.2 , -0.12264 , - 3.21 , 5.685000000000000E-02 , - 3.22 , 0.20721 , - 3.23 , 0.29127 , - 3.24 , 0.37167 , - 3.25 , 0.47314 , - 3.26 , 0.48428 , - 3.27 , 0.34199 , - 3.28 , 0.14378 , - 3.29 , 2.014000000000000E-02 , - 3.3 , -3.310000000000000E-03 , - 3.31 , 3.046000000000000E-02 , - 3.32 , 7.851000000000000E-02 , - 3.33 , 0.1222 , - 3.34 , 0.19291 , - 3.35 , 0.2916 , - 3.36 , 0.38011 , - 3.37 , 0.46514 , - 3.38 , 0.52328 , - 3.39 , 0.51669 , - 3.4 , 0.4727 , - 3.41 , 0.38682 , - 3.42 , 0.22939 , - 3.43 , 1.800000000000000E-02 , - 3.44 , -0.199 , - 3.45 , -0.40018 , - 3.46 , -0.5733 , - 3.47 , -0.72332 , - 3.48 , -0.82419 , - 3.49 , -0.83348 , - 3.5 , -0.74258 , - 3.51 , -0.61694 , - 3.52 , -0.56099 , - 3.53 , -0.61112 , - 3.54 , -0.71023 , - 3.55 , -0.78959 , - 3.56 , -0.85129 , - 3.57 , -0.93566 , - 3.58 , -0.99997 , - 3.59 , -0.92052 , - 3.6 , -0.6664 , - 3.61 , -0.3873 , - 3.62 , -0.25033 , - 3.63 , -0.24161 , - 3.64 , -0.18701 , - 3.65 , 9.379999999999999E-03 , - 3.66 , 0.11381 , - 3.67 , 0.16743 , - 3.68 , 0.16297 , - 3.69 , 0.1216 , - 3.7 , 5.279000000000000E-02 , - 3.71 , -9.607000000000000E-02 , - 3.72 , -0.30972 , - 3.73 , -0.35938 , - 3.74 , -0.19296 , - 3.75 , 6.919000000000000E-02 , - 3.76 , 0.27173 , - 3.77 , 0.34172 , - 3.78 , 0.31251 , - 3.79 , 0.24099 , - 3.8 , 0.15009 , - 3.81 , 0.10136 , - 3.82 , 0.18046 , - 3.83 , 0.36244 , - 3.84 , 0.47034 , - 3.85 , 0.36939 , - 3.86 , 0.15689 , - 3.87 , 1.108000000000000E-02 , - 3.88 , 3.990000000000000E-03 , - 3.89 , 0.11976 , - 3.9 , 0.24956 , - 3.91 , 0.21477 , - 3.92 , -3.172000000000000E-02 , - 3.93 , -0.24232 , - 3.94 , -0.1514 , - 3.95 , 0.12645 , - 3.96 , 0.3411 , - 3.97 , 0.48457 , - 3.98 , 0.61705 , - 3.99 , 0.70283 , - 4.0 , 0.70328 , - 4.01 , 0.62998 , - 4.02 , 0.53518 , - 4.03 , 0.44668 , - 4.04 , 0.36172 , - 4.05 , 0.31406 , - 4.06 , 0.32888 , - 4.07 , 0.35459 , - 4.08 , 0.32512 , - 4.09 , 0.25195 , - 4.1 , 0.20405 , - 4.11 , 0.22648 , - 4.12 , 0.30571 , - 4.13 , 0.37309 , - 4.14 , 0.35283 , - 4.15 , 0.24118 , - 4.16 , 0.11162 , - 4.17 , 1.458000000000000E-02 , - 4.18 , -7.364000000000000E-02 , - 4.19 , -0.1521 , - 4.2 , -0.14128 , - 4.21 , 2.440000000000000E-02 , - 4.22 , 0.2852 , - 4.23 , 0.45129 , - 4.24 , 0.38982 , - 4.25 , 0.15588 , - 4.26 , -0.11495 , - 4.27 , -0.31375 , - 4.28 , -0.42086 , - 4.29 , -0.48904 , - 4.3 , -0.52097 , - 4.31 , -0.49168 , - 4.32 , -0.4234 , - 4.33 , -0.36559 , - 4.34 , -0.36994 , - 4.35 , -0.42675 , - 4.36 , -0.45696 , - 4.37 , -0.39583 , - 4.38 , -0.24523 , - 4.39 , -7.371999999999999E-02 , - 4.4 , 5.577000000000000E-02 , - 4.41 , 0.13029 , - 4.42 , 0.17 , - 4.43 , 0.21223 , - 4.44 , 0.25214 , - 4.45 , 0.25221 , - 4.46 , 0.20971 , - 4.47 , 0.15915 , - 4.48 , 0.13965 , - 4.49 , 0.1015 , - 4.5 , -5.693000000000000E-02 , - 4.51 , -0.30165 , - 4.52 , -0.49413 , - 4.53 , -0.5601 , - 4.54 , -0.5473 , - 4.55 , -0.52318 , - 4.56 , -0.43186 , - 4.57 , -0.21177 , - 4.58 , 5.701000000000000E-02 , - 4.59 , 0.26717 , - 4.6 , 0.3673 , - 4.61 , 0.3813 , - 4.62 , 0.40079 , - 4.63 , 0.39365 , - 4.64 , 0.18973 , - 4.65 , -0.17373 , - 4.66 , -0.40285 , - 4.67 , -0.36957 , - 4.68 , -0.23873 , - 4.69 , -0.13623 , - 4.7 , -1.420000000000000E-02 , - 4.71 , 0.15954 , - 4.72 , 0.31583 , - 4.73 , 0.4076 , - 4.74 , 0.44925 , - 4.75 , 0.43323 , - 4.76 , 0.36783 , - 4.77 , 0.32597 , - 4.78 , 0.34835 , - 4.79 , 0.36693 , - 4.8 , 0.28138 , - 4.81 , 0.11386 , - 4.82 , -4.390000000000000E-02 , - 4.83 , -0.20925 , - 4.84 , -0.42702 , - 4.85 , -0.62277 , - 4.86 , -0.72429 , - 4.87 , -0.7462 , - 4.88 , -0.75887 , - 4.89 , -0.77194 , - 4.9 , -0.72951 , - 4.91 , -0.66245 , - 4.92 , -0.67709 , - 4.93 , -0.80669 , - 4.94 , -0.95972 , - 4.95 , -0.99997 , - 4.96 , -0.88454 , - 4.97 , -0.69049 , - 4.98 , -0.52094 , - 4.99 , -0.3957 , - 5.0 , -0.24286 , - 5.01 , -3.739000000000000E-02 , - 5.02 , 0.10577 , - 5.03 , 0.17347 , - 5.04 , 0.16886 , - 5.05 , 0.14491 , - 5.06 , 0.14907 , - 5.07 , 0.17361 , - 5.08 , 0.20083 , - 5.09 , 0.21954 , - 5.1 , 0.2328 , - 5.11 , 0.2575 , - 5.12 , 0.28932 , - 5.13 , 0.31126 , - 5.14 , 0.29244 , - 5.15 , 0.19772 , - 5.16 , 5.796000000000000E-02 , - 5.17 , -6.429000000000000E-02 , - 5.18 , -5.218000000000000E-02 , - 5.19 , 9.539000000000000E-02 , - 5.2 , 0.20966 , - 5.21 , 0.15862 , - 5.22 , 1.473000000000000E-02 , - 5.23 , -3.926000000000000E-02 , - 5.24 , 8.541000000000000E-02 , - 5.25 , 0.31423 , - 5.26 , 0.44181 , - 5.27 , 0.30949 , - 5.28 , -4.230000000000000E-03 , - 5.29 , -0.32893 , - 5.3 , -0.59096 , - 5.31 , -0.72514 , - 5.32 , -0.65562 , - 5.33 , -0.42079 , - 5.34 , -0.1588 , - 5.35 , 2.904000000000000E-02 , - 5.36 , 0.10308 , - 5.37 , 4.177000000000000E-02 , - 5.38 , -6.319000000000000E-02 , - 5.39 , -4.705000000000000E-02 , - 5.4 , 9.604000000000000E-02 , - 5.41 , 0.24518 , - 5.42 , 0.30632 , - 5.43 , 0.23914 , - 5.44 , 9.232000000000000E-02 , - 5.45 , -1.776000000000000E-02 , - 5.46 , -7.690000000000000E-03 , - 5.47 , 7.241000000000000E-02 , - 5.48 , 9.512000000000000E-02 , - 5.49 , 8.989000000000000E-02 , - 5.5 , 0.19384 , - 5.51 , 0.35667 , - 5.52 , 0.38627 , - 5.53 , 0.27202 , - 5.54 , 0.22809 , - 5.55 , 0.35372 , - 5.56 , 0.49889 , - 5.57 , 0.54618 , - 5.58 , 0.55561 , - 5.59 , 0.6075 , - 5.6 , 0.65833 , - 5.61 , 0.62315 , - 5.62 , 0.54314 , - 5.63 , 0.5024 , - 5.64 , 0.49951 , - 5.65 , 0.50238 , - 5.66 , 0.459 , - 5.67 , 0.32065 , - 5.68 , 0.12297 , - 5.69 , -4.304000000000000E-02 , - 5.7 , -0.12348 , - 5.71 , -0.16939 , - 5.72 , -0.26337 , - 5.73 , -0.37116 , - 5.74 , -0.40828 , - 5.75 , -0.39748 , - 5.76 , -0.42458 , - 5.77 , -0.49729 , - 5.78 , -0.51741 , - 5.79 , -0.39554 , - 5.8 , -0.19178 , - 5.81 , -6.471000000000000E-02 , - 5.82 , -6.743000000000000E-02 , - 5.83 , -0.1271 , - 5.84 , -0.1634 , - 5.85 , -0.13345 , - 5.86 , -6.090000000000000E-02 , - 5.87 , 2.519000000000000E-02 , - 5.88 , 0.14903 , - 5.89 , 0.28064 , - 5.9 , 0.34038 , - 5.91 , 0.3104 , - 5.92 , 0.22998 , - 5.93 , 0.15353 , - 5.94 , 0.1055 , - 5.95 , 7.457000000000000E-02 , - 5.96 , 5.763000000000000E-02 , - 5.97 , 8.033999999999999E-02 , - 5.98 , 0.14644 , - 5.99 , 0.1332 , - 6.0 , -7.482000000000000E-02 , - 6.01 , -0.36556 , - 6.02 , -0.55895 , - 6.03 , -0.59056 , - 6.04 , -0.46664 , - 6.05 , -0.26194 , - 6.06 , -7.546000000000000E-02 , - 6.07 , 7.784000000000001E-02 , - 6.08 , 0.23755 , - 6.09 , 0.36836 , - 6.1 , 0.37298 , - 6.11 , 0.26509 , - 6.12 , 0.15102 , - 6.13 , 6.525000000000000E-02 , - 6.14 , -1.695000000000000E-02 , - 6.15 , -0.10207 , - 6.16 , -0.1821 , - 6.17 , -0.26644 , - 6.18 , -0.32842 , - 6.19 , -0.24869 , - 6.2 , 2.279000000000000E-02 , - 6.21 , 0.37255 , - 6.22 , 0.6758 , - 6.23 , 0.86221 , - 6.24 , 0.91467 , - 6.25 , 0.89167 , - 6.26 , 0.84631 , - 6.27 , 0.74074 , - 6.28 , 0.49841 , - 6.29 , 0.16761 , - 6.3 , -4.544000000000000E-02 , - 6.31 , -2.644000000000000E-02 , - 6.32 , 9.400000000000000E-02 , - 6.33 , 0.16063 , - 6.34 , 0.18176 , - 6.35 , 0.20612 , - 6.36 , 0.22068 , - 6.37 , 0.22211 , - 6.38 , 0.23664 , - 6.39 , 0.24671 , - 6.4 , 0.1861 , - 6.41 , 0.10676 , - 6.42 , 0.2039 , - 6.43 , 0.4894 , - 6.44 , 0.7178 , - 6.45 , 0.73624 , - 6.46 , 0.64197 , - 6.47 , 0.61236 , - 6.48 , 0.66281 , - 6.49 , 0.6407 , - 6.5 , 0.48402 , - 6.51 , 0.28743 , - 6.52 , 0.1436 , - 6.53 , 6.140000000000000E-02 , - 6.54 , -1.770000000000000E-03 , - 6.55 , -6.498000000000000E-02 , - 6.56 , -0.12251 , - 6.57 , -0.16577 , - 6.58 , -0.20217 , - 6.59 , -0.28219 , - 6.6 , -0.37605 , - 6.61 , -0.34257 , - 6.62 , -0.12814 , - 6.63 , 0.1706 , - 6.64 , 0.38468 , - 6.65 , 0.39384 , - 6.66 , 0.26746 , - 6.67 , 0.18207 , - 6.68 , 0.19512 , - 6.69 , 0.22133 , - 6.7 , 0.209 , - 6.71 , 0.17146 , - 6.72 , 6.763000000000000E-02 , - 6.73 , -0.13527 , - 6.74 , -0.37496 , - 6.75 , -0.55764 , - 6.76 , -0.58824 , - 6.77 , -0.44844 , - 6.78 , -0.27116 , - 6.79 , -0.19551 , - 6.8 , -0.18978 , - 6.81 , -9.911000000000000E-02 , - 6.82 , 0.11626 , - 6.83 , 0.30541 , - 6.84 , 0.3521 , - 6.85 , 0.27698 , - 6.86 , 0.10781 , - 6.87 , -0.13553 , - 6.88 , -0.3724 , - 6.89 , -0.51163 , - 6.9 , -0.49535 , - 6.91 , -0.29991 , - 6.92 , -1.034000000000000E-02 , - 6.93 , 0.19111 , - 6.94 , 0.1843 , - 6.95 , 6.730000000000000E-03 , - 6.96 , -0.21507 , - 6.97 , -0.41983 , - 6.98 , -0.58894 , - 6.99 , -0.63614 , - 7.0 , -0.54698 , - 7.01 , -0.44682 , - 7.02 , -0.42416 , - 7.03 , -0.46132 , - 7.04 , -0.48084 , - 7.05 , -0.43504 , - 7.06 , -0.34615 , - 7.07 , -0.23496 , - 7.08 , -0.13072 , - 7.09 , -5.857000000000000E-02 , - 7.1 , 1.753000000000000E-02 , - 7.11 , 0.10141 , - 7.12 , 0.12684 , - 7.13 , 9.014000000000000E-02 , - 7.14 , 0.11682 , - 7.15 , 0.28896 , - 7.16 , 0.48134 , - 7.17 , 0.54721 , - 7.18 , 0.49147 , - 7.19 , 0.35746 , - 7.2 , 0.17093 , - 7.21 , -6.870000000000000E-03 , - 7.22 , -7.575999999999999E-02 , - 7.23 , -4.320000000000000E-03 , - 7.24 , 6.714000000000001E-02 , - 7.25 , 2.620000000000000E-03 , - 7.26 , -0.12071 , - 7.27 , -0.16453 , - 7.28 , -0.1671 , - 7.29 , -0.24591 , - 7.3 , -0.36246 , - 7.31 , -0.39855 , - 7.32 , -0.33851 , - 7.33 , -0.22608 , - 7.34 , -0.1129 , - 7.35 , -3.976000000000000E-02 , - 7.36 , 5.950000000000000E-03 , - 7.37 , 4.231000000000000E-02 , - 7.38 , 9.320000000000001E-02 , - 7.39 , 0.21161 , - 7.4 , 0.37502 , - 7.41 , 0.46085 , - 7.42 , 0.42852 , - 7.43 , 0.39911 , - 7.44 , 0.48134 , - 7.45 , 0.61862 , - 7.46 , 0.65845 , - 7.47 , 0.52488 , - 7.48 , 0.27775 , - 7.49 , 2.611000000000000E-02 , - 7.5 , -0.16858 , - 7.51 , -0.35917 , - 7.52 , -0.64888 , - 7.53 , -0.93894 , - 7.54 , -0.99997 , - 7.55 , -0.79545 , - 7.56 , -0.50022 , - 7.57 , -0.31055 , - 7.58 , -0.28451 , - 7.59 , -0.32788 , - 7.6 , -0.34293 , - 7.61 , -0.30914 , - 7.62 , -0.29364 , - 7.63 , -0.36128 , - 7.64 , -0.43128 , - 7.65 , -0.41928 , - 7.66 , -0.39651 , - 7.67 , -0.43324 , - 7.68 , -0.4592 , - 7.69 , -0.3661 , - 7.7 , -0.17726 , - 7.71 , -7.930000000000000E-03 , - 7.72 , 9.228000000000000E-02 , - 7.73 , 0.12711 , - 7.74 , 0.10315 , - 7.75 , 9.070000000000000E-03 , - 7.76 , -0.1676 , - 7.77 , -0.37078 , - 7.78 , -0.48702 , - 7.79 , -0.42176 , - 7.8 , -0.20091 , - 7.81 , -7.270000000000000E-03 , - 7.82 , 3.404000000000000E-02 , - 7.83 , 2.700000000000000E-03 , - 7.84 , -4.730000000000000E-03 , - 7.85 , -2.107000000000000E-02 , - 7.86 , -7.763000000000000E-02 , - 7.87 , -0.11332 , - 7.88 , -9.217000000000000E-02 , - 7.89 , -7.226000000000000E-02 , - 7.9 , -0.10282 , - 7.91 , -0.18072 , - 7.92 , -0.27112 , - 7.93 , -0.33308 , - 7.94 , -0.37009 , - 7.95 , -0.41046 , - 7.96 , -0.46542 , - 7.97 , -0.51679 , - 7.98 , -0.48695 , - 7.99 , -0.31766 , - 8.0 , -0.11193 , - 8.01 , -1.808000000000000E-02 , - 8.02 , -9.790000000000000E-03 , - 8.03 , 7.910000000000000E-03 , - 8.04 , 2.892000000000000E-02 , - 8.05 , 5.256000000000000E-02 , - 8.06 , 0.15118 , - 8.07 , 0.33598 , - 8.08 , 0.47411 , - 8.09 , 0.4184 , - 8.1 , 0.22182 , - 8.11 , 6.008000000000000E-02 , - 8.12 , 7.820000000000001E-03 , - 8.13 , 3.031000000000000E-02 , - 8.14 , 6.139000000000000E-02 , - 8.15 , 9.475000000000000E-02 , - 8.16 , 0.1711 , - 8.17 , 0.25375 , - 8.18 , 0.32694 , - 8.19 , 0.47654 , - 8.2 , 0.71476 , - 8.21 , 0.92354 , - 8.22 , 0.99997 , - 8.23 , 0.96174 , - 8.24 , 0.85956 , - 8.25 , 0.67462 , - 8.26 , 0.42666 , - 8.27 , 0.21402 , - 8.28 , 8.068000000000000E-02 , - 8.29 , -2.572000000000000E-02 , - 8.3 , -0.18823 , - 8.31 , -0.43016 , - 8.32 , -0.69265 , - 8.33 , -0.84523 , - 8.34 , -0.78451 , - 8.35 , -0.5823 , - 8.36 , -0.39951 , - 8.37 , -0.3009 , - 8.38 , -0.28826 , - 8.39 , -0.34762 , - 8.4 , -0.40794 , - 8.41 , -0.37827 , - 8.42 , -0.24945 , - 8.43 , -0.10703 , - 8.44 , -1.106000000000000E-02 , - 8.45 , 6.251000000000000E-02 , - 8.46 , 0.1419 , - 8.47 , 0.19928 , - 8.48 , 0.18798 , - 8.49 , 0.11645 , - 8.5 , 4.575000000000000E-02 , - 8.51 , 4.959000000000000E-02 , - 8.52 , 0.17716 , - 8.53 , 0.34359 , - 8.54 , 0.36584 , - 8.55 , 0.23915 , - 8.56 , 0.18171 , - 8.57 , 0.30089 , - 8.58 , 0.43922 , - 8.59 , 0.40395 , - 8.6 , 0.15759 , - 8.61 , -0.16407 , - 8.62 , -0.36165 , - 8.63 , -0.39041 , - 8.64 , -0.35247 , - 8.65 , -0.31056 , - 8.66 , -0.24355 , - 8.67 , -9.318000000000000E-02 , - 8.68 , 7.779999999999999E-02 , - 8.69 , 5.175000000000000E-02 , - 8.7 , -0.23925 , - 8.71 , -0.59171 , - 8.72 , -0.77473 , - 8.73 , -0.75474 , - 8.74 , -0.64528 , - 8.75 , -0.48987 , - 8.76 , -0.29956 , - 8.77 , -0.1701 , - 8.78 , -0.13175 , - 8.79 , -0.10789 , - 8.8 , -4.978000000000000E-02 , - 8.81 , 4.376000000000000E-02 , - 8.82 , 0.15205 , - 8.83 , 0.2202 , - 8.84 , 0.17479 , - 8.85 , 2.103000000000000E-02 , - 8.86 , -0.14172 , - 8.87 , -0.26548 , - 8.88 , -0.38534 , - 8.89 , -0.50451 , - 8.9 , -0.53404 , - 8.91 , -0.38116 , - 8.92 , -0.11525 , - 8.93 , 7.395000000000000E-02 , - 8.94 , 0.10361 , - 8.95 , 6.577000000000000E-02 , - 8.96 , 6.259000000000001E-02 , - 8.97 , 5.649000000000000E-02 , - 8.98 , -3.880000000000000E-03 , - 8.99 , -2.390000000000000E-02 , - 9.0 , 7.305000000000000E-02 , - 9.01 , 0.19452 , - 9.02 , 0.2608 , - 9.03 , 0.35267 , - 9.04 , 0.5391 , - 9.05 , 0.73389 , - 9.06 , 0.83545 , - 9.07 , 0.82904 , - 9.08 , 0.72024 , - 9.09 , 0.51294 , - 9.1 , 0.23736 , - 9.11 , -4.577000000000000E-02 , - 9.12 , -0.26395 , - 9.13 , -0.38853 , - 9.14 , -0.43089 , - 9.15 , -0.4349 , - 9.16 , -0.41682 , - 9.17 , -0.37537 , - 9.18 , -0.32465 , - 9.19 , -0.29702 , - 9.2 , -0.32491 , - 9.21 , -0.3466 , - 9.22 , -0.28185 , - 9.23 , -0.19619 , - 9.24 , -0.14637 , - 9.25 , -9.772000000000000E-02 , - 9.26 , -7.858999999999999E-02 , - 9.27 , -0.13191 , - 9.28 , -0.21558 , - 9.29 , -0.24568 , - 9.3 , -0.18549 , - 9.31 , -9.976000000000000E-02 , - 9.32 , -6.297000000000000E-02 , - 9.33 , -8.577000000000000E-02 , - 9.34 , -0.11997 , - 9.35 , -5.070000000000000E-02 , - 9.36 , 0.19743 , - 9.37 , 0.55636 , - 9.38 , 0.86649 , - 9.39 , 0.99997 , - 9.4 , 0.95787 , - 9.41 , 0.80859 , - 9.42 , 0.58733 , - 9.43 , 0.34042 , - 9.44 , 0.15629 , - 9.45 , 7.298000000000000E-02 , - 9.46 , 3.103000000000000E-02 , - 9.47 , -1.360000000000000E-03 , - 9.48 , 2.567000000000000E-02 , - 9.49 , 9.848000000000000E-02 , - 9.5 , 0.13363 , - 9.51 , 0.10499 , - 9.52 , 1.947000000000000E-02 , - 9.53 , -0.11686 , - 9.54 , -0.25475 , - 9.55 , -0.33284 , - 9.56 , -0.37717 , - 9.57 , -0.45927 , - 9.58 , -0.53679 , - 9.59 , -0.50988 , - 9.6 , -0.4323 , - 9.61 , -0.46891 , - 9.62 , -0.62414 , - 9.63 , -0.67897 , - 9.64 , -0.46893 , - 9.65 , -0.10561 , - 9.66 , 0.12896 , - 9.67 , 7.442000000000000E-02 , - 9.68 , -0.13619 , - 9.69 , -0.25497 , - 9.7 , -0.19615 , - 9.71 , -5.295000000000000E-02 , - 9.72 , 5.399000000000000E-02 , - 9.73 , 8.438000000000000E-02 , - 9.74 , 7.897000000000000E-02 , - 9.75 , 0.11239 , - 9.76 , 0.18699 , - 9.77 , 0.19038 , - 9.78 , 0.13535 , - 9.79 , 0.20938 , - 9.8 , 0.43787 , - 9.81 , 0.63937 , - 9.82 , 0.67742 , - 9.83 , 0.58799 , - 9.84 , 0.49876 , - 9.85 , 0.4183 , - 9.86 , 0.29948 , - 9.87 , 0.22905 , - 9.88 , 0.2606 , - 9.89 , 0.28847 , - 9.9 , 0.22616 , - 9.91 , 0.12545 , - 9.92 , 8.956000000000000E-02 , - 9.93 , 0.12928 , - 9.94 , 0.15076 , - 9.95 , 4.544000000000000E-02 , - 9.96 , -0.20722 , - 9.97 , -0.49063 , - 9.98 , -0.6894 , - 9.99 , -0.80485 , - 10.0 , -0.84771 , - 10.01 , -0.76807 , - 10.02 , -0.56037 , - 10.03 , -0.32503 , - 10.04 , -0.15016 , - 10.05 , -3.882000000000000E-02 , - 10.06 , 6.110000000000000E-03 , - 10.07 , -2.178000000000000E-02 , - 10.08 , -6.615000000000000E-02 , - 10.09 , -3.796000000000000E-02 , - 10.1 , 8.788000000000000E-02 , - 10.11 , 0.2149 , - 10.12 , 0.23018 , - 10.13 , 0.14302 , - 10.14 , 3.300000000000000E-02 , - 10.15 , -5.442000000000000E-02 , - 10.16 , -9.190000000000000E-02 , - 10.17 , -5.636000000000000E-02 , - 10.18 , 1.760000000000000E-03 , - 10.19 , -4.910000000000000E-03 , - 10.2 , -7.645000000000000E-02 , - 10.21 , -0.16067 , - 10.22 , -0.22708 , - 10.23 , -0.23139 , - 10.24 , -0.12101 , - 10.25 , 7.537000000000001E-02 , - 10.26 , 0.24004 , - 10.27 , 0.32546 , - 10.28 , 0.38826 , - 10.29 , 0.41863 , - 10.3 , 0.35794 , - 10.31 , 0.23222 , - 10.32 , 0.11401 , - 10.33 , 1.697000000000000E-02 , - 10.34 , -0.10766 , - 10.35 , -0.25136 , - 10.36 , -0.35757 , - 10.37 , -0.41565 , - 10.38 , -0.3843 , - 10.39 , -0.22915 , - 10.4 , -7.590000000000000E-03 , - 10.41 , 0.24235 , - 10.42 , 0.48677 , - 10.43 , 0.65383 , - 10.44 , 0.70515 , - 10.45 , 0.61222 , - 10.46 , 0.40693 , - 10.47 , 0.24331 , - 10.48 , 0.2277 , - 10.49 , 0.27807 , - 10.5 , 0.24063 , - 10.51 , 9.018000000000000E-02 , - 10.52 , -8.182000000000000E-02 , - 10.53 , -0.23302 , - 10.54 , -0.37812 , - 10.55 , -0.4703 , - 10.56 , -0.41592 , - 10.57 , -0.24651 , - 10.58 , -0.12814 , - 10.59 , -0.13 , - 10.6 , -0.17581 , - 10.61 , -0.22261 , - 10.62 , -0.29974 , - 10.63 , -0.40731 , - 10.64 , -0.49694 , - 10.65 , -0.51567 , - 10.66 , -0.38399 , - 10.67 , -6.413000000000001E-02 , - 10.68 , 0.26417 , - 10.69 , 0.33331 , - 10.7 , 0.13429 , - 10.71 , -8.293000000000000E-02 , - 10.72 , -0.1463 , - 10.73 , -0.13542 , - 10.74 , -0.20542 , - 10.75 , -0.35982 , - 10.76 , -0.44591 , - 10.77 , -0.37107 , - 10.78 , -0.25668 , - 10.79 , -0.25179 , - 10.8 , -0.31124 , - 10.81 , -0.28374 , - 10.82 , -0.12758 , - 10.83 , 1.490000000000000E-02 , - 10.84 , 1.229000000000000E-02 , - 10.85 , -6.356000000000001E-02 , - 10.86 , -5.771000000000000E-02 , - 10.87 , 8.679000000000001E-02 , - 10.88 , 0.31097 , - 10.89 , 0.53347 , - 10.9 , 0.68419 , - 10.91 , 0.65081 , - 10.92 , 0.4251 , - 10.93 , 0.19891 , - 10.94 , 0.11666 , - 10.95 , 0.13796 , - 10.96 , 0.14749 , - 10.97 , 9.375000000000000E-02 , - 10.98 , 2.569000000000000E-02 , - 10.99 , -1.828000000000000E-02 , - 11.0 , -6.660000000000000E-03 , - 11.01 , 9.803000000000001E-02 , - 11.02 , 0.2156 , - 11.03 , 0.2608 , - 11.04 , 0.28376 , - 11.05 , 0.31446 , - 11.06 , 0.30511 , - 11.07 , 0.25332 , - 11.08 , 0.19284 , - 11.09 , 0.1152 , - 11.1 , 1.948000000000000E-02 , - 11.11 , -8.540000000000001E-03 , - 11.12 , -8.070000000000001E-03 , - 11.13 , 5.720000000000000E-03 , - 11.14 , 5.899000000000000E-02 , - 11.15 , 0.13421 , - 11.16 , 0.26053 , - 11.17 , 0.41353 , - 11.18 , 0.51092 , - 11.19 , 0.52002 , - 11.2 , 0.50124 , - 11.21 , 0.5386 , - 11.22 , 0.65388 , - 11.23 , 0.8058 , - 11.24 , 0.93844 , - 11.25 , 0.99997 , - 11.26 , 0.96789 , - 11.27 , 0.87593 , - 11.28 , 0.80065 , - 11.29 , 0.79192 , - 11.3 , 0.8141 , - 11.31 , 0.8052 , - 11.32 , 0.74262 , - 11.33 , 0.61546 , - 11.34 , 0.41975 , - 11.35 , 0.22346 , - 11.36 , 0.14585 , - 11.37 , 0.18339 , - 11.38 , 0.21495 , - 11.39 , 0.22018 , - 11.4 , 0.23766 , - 11.41 , 0.19769 , - 11.42 , 1.272000000000000E-02 , - 11.43 , -0.33277 , - 11.44 , -0.5999 , - 11.45 , -0.66307 , - 11.46 , -0.54941 , - 11.47 , -0.30754 , - 11.48 , 9.150000000000000E-03 , - 11.49 , 0.33567 , - 11.5 , 0.62395 , - 11.51 , 0.82292 , - 11.52 , 0.92488 , - 11.53 , 0.94922 , - 11.54 , 0.90162 , - 11.55 , 0.81535 , - 11.56 , 0.68529 , - 11.57 , 0.48301 , - 11.58 , 0.28744 , - 11.59 , 0.21968 , - 11.6 , 0.31463 , - 11.61 , 0.4858 , - 11.62 , 0.58845 , - 11.63 , 0.57005 , - 11.64 , 0.49055 , - 11.65 , 0.39877 , - 11.66 , 0.2819 , - 11.67 , 0.11731 , - 11.68 , -6.177000000000000E-02 , - 11.69 , -0.1701 , - 11.7 , -0.21434 , - 11.71 , -0.36528 , - 11.72 , -0.67236 , - 11.73 , -0.88398 , - 11.74 , -0.82736 , - 11.75 , -0.67582 , - 11.76 , -0.64387 , - 11.77 , -0.69937 , - 11.78 , -0.68858 , - 11.79 , -0.5758 , - 11.8 , -0.46315 , - 11.81 , -0.45051 , - 11.82 , -0.51549 , - 11.83 , -0.51468 , - 11.84 , -0.35292 , - 11.85 , -0.11964 , - 11.86 , -1.117000000000000E-02 , - 11.87 , -0.1357 , - 11.88 , -0.40276 , - 11.89 , -0.63738 , - 11.9 , -0.73699 , - 11.91 , -0.69661 , - 11.92 , -0.58112 , - 11.93 , -0.46357 , - 11.94 , -0.38497 , - 11.95 , -0.33617 , - 11.96 , -0.26831 , - 11.97 , -0.19582 , - 11.98 , -0.16518 , - 11.99 , -0.14401 , - 12.0 , -7.318000000000000E-02 , - 12.01 , 7.769000000000000E-02 , - 12.02 , 0.26041 , - 12.03 , 0.37046 , - 12.04 , 0.40569 , - 12.05 , 0.44476 , - 12.06 , 0.50231 , - 12.07 , 0.52622 , - 12.08 , 0.47631 , - 12.09 , 0.35672 , - 12.1 , 0.14838 , - 12.11 , -0.13846 , - 12.12 , -0.36979 , - 12.13 , -0.47711 , - 12.14 , -0.54786 , - 12.15 , -0.62333 , - 12.16 , -0.64749 , - 12.17 , -0.58515 , - 12.18 , -0.46856 , - 12.19 , -0.35151 , - 12.2 , -0.26225 , - 12.21 , -0.22214 , - 12.22 , -0.22853 , - 12.23 , -0.19257 , - 12.24 , -2.725000000000000E-02 , - 12.25 , 0.18283 , - 12.26 , 0.25344 , - 12.27 , 0.12964 , - 12.28 , -9.258000000000000E-02 , - 12.29 , -0.29733 , - 12.3 , -0.42242 , - 12.31 , -0.45343 , - 12.32 , -0.38158 , - 12.33 , -0.24116 , - 12.34 , -0.13557 , - 12.35 , -0.11938 , - 12.36 , -0.14999 , - 12.37 , -0.17426 , - 12.38 , -0.16707 , - 12.39 , -0.12211 , - 12.4 , -6.938000000000000E-02 , - 12.41 , -5.365000000000000E-02 , - 12.42 , -6.988999999999999E-02 , - 12.43 , -0.10537 , - 12.44 , -0.18301 , - 12.45 , -0.26683 , - 12.46 , -0.27079 , - 12.47 , -0.18067 , - 12.48 , -5.357000000000000E-02 , - 12.49 , 5.621000000000000E-02 , - 12.5 , 0.12411 , - 12.51 , 0.1349 , - 12.52 , 0.10552 , - 12.53 , 8.767000000000000E-02 , - 12.54 , 5.312000000000000E-02 , - 12.55 , -7.994000000000000E-02 , - 12.56 , -0.28316 , - 12.57 , -0.43439 , - 12.58 , -0.45819 , - 12.59 , -0.39875 , - 12.6 , -0.3257 , - 12.61 , -0.21617 , - 12.62 , -5.834000000000000E-02 , - 12.63 , 6.234000000000000E-02 , - 12.64 , 7.834000000000001E-02 , - 12.65 , 2.524000000000000E-02 , - 12.66 , -4.370000000000000E-03 , - 12.67 , 2.088000000000000E-02 , - 12.68 , 3.738000000000000E-02 , - 12.69 , -5.780000000000000E-03 , - 12.7 , -7.783000000000000E-02 , - 12.71 , -0.10293 , - 12.72 , -5.917000000000000E-02 , - 12.73 , -2.088000000000000E-02 , - 12.74 , -4.084000000000000E-02 , - 12.75 , -7.596000000000000E-02 , - 12.76 , -7.527000000000000E-02 , - 12.77 , -4.418000000000000E-02 , - 12.78 , -2.046000000000000E-02 , - 12.79 , -2.682000000000000E-02 , - 12.8 , -2.654000000000000E-02 , - 12.81 , 3.635000000000000E-02 , - 12.82 , 0.12352 , - 12.83 , 0.13159 , - 12.84 , 4.372000000000000E-02 , - 12.85 , -6.480000000000000E-02 , - 12.86 , -0.1361 , - 12.87 , -0.17058 , - 12.88 , -0.1883 , - 12.89 , -0.19167 , - 12.9 , -0.19116 , - 12.91 , -0.20869 , - 12.92 , -0.23797 , - 12.93 , -0.28017 , - 12.94 , -0.36467 , - 12.95 , -0.46778 , - 12.96 , -0.49324 , - 12.97 , -0.38894 , - 12.98 , -0.2225 , - 12.99 , -9.676000000000000E-02 , - 13.0 , -5.153000000000000E-02 , - 13.01 , -5.856000000000000E-02 , - 13.02 , -6.265000000000000E-02 , - 13.03 , -3.700000000000000E-02 , - 13.04 , 8.800000000000001E-03 , - 13.05 , 4.189000000000000E-02 , - 13.06 , 1.048000000000000E-02 , - 13.07 , -8.393000000000000E-02 , - 13.08 , -0.17214 , - 13.09 , -0.21986 , - 13.1 , -0.25265 , - 13.11 , -0.28696 , - 13.12 , -0.29845 , - 13.13 , -0.27534 , - 13.14 , -0.25187 , - 13.15 , -0.25011 , - 13.16 , -0.27425 , - 13.17 , -0.33551 , - 13.18 , -0.41051 , - 13.19 , -0.45406 , - 13.2 , -0.44533 , - 13.21 , -0.38727 , - 13.22 , -0.30756 , - 13.23 , -0.24203 , - 13.24 , -0.20129 , - 13.25 , -0.16106 , - 13.26 , -9.457000000000000E-02 , - 13.27 , -2.440000000000000E-02 , - 13.28 , 7.040000000000000E-03 , - 13.29 , 8.600000000000000E-03 , - 13.3 , 1.981000000000000E-02 , - 13.31 , 4.834000000000000E-02 , - 13.32 , 7.178000000000000E-02 , - 13.33 , 8.525000000000001E-02 , - 13.34 , 0.1107 , - 13.35 , 0.15822 , - 13.36 , 0.21564 , - 13.37 , 0.27468 , - 13.38 , 0.32506 , - 13.39 , 0.34096 , - 13.4 , 0.32619 , - 13.41 , 0.32491 , - 13.42 , 0.34842 , - 13.43 , 0.36279 , - 13.44 , 0.34026 , - 13.45 , 0.2756 , - 13.46 , 0.18648 , - 13.47 , 9.881000000000000E-02 , - 13.48 , 3.222000000000000E-02 , - 13.49 , 1.061000000000000E-02 , - 13.5 , 4.343000000000000E-02 , - 13.51 , 9.372000000000000E-02 , - 13.52 , 0.10628 , - 13.53 , 7.198000000000000E-02 , - 13.54 , 3.458000000000000E-02 , - 13.55 , 2.182000000000000E-02 , - 13.56 , 1.377000000000000E-02 , - 13.57 , -1.295000000000000E-02 , - 13.58 , -4.297000000000000E-02 , - 13.59 , -4.232000000000000E-02 , - 13.6 , -1.224000000000000E-02 , - 13.61 , 1.559000000000000E-02 , - 13.62 , 1.639000000000000E-02 , - 13.63 , -1.544000000000000E-02 , - 13.64 , -5.384000000000000E-02 , - 13.65 , -7.287000000000000E-02 , - 13.66 , -8.747000000000001E-02 , - 13.67 , -0.10976 , - 13.68 , -0.11529 , - 13.69 , -8.388000000000000E-02 , - 13.7 , -3.945000000000000E-02 , - 13.71 , -2.420000000000000E-02 , - 13.72 , -3.630000000000000E-02 , - 13.73 , -3.928000000000000E-02 , - 13.74 , -2.207000000000000E-02 , - 13.75 , -5.590000000000000E-03 , - 13.76 , -9.450000000000000E-03 , - 13.77 , -2.752000000000000E-02 , - 13.78 , -4.478000000000000E-02 , - 13.79 , -6.457000000000000E-02 , - 13.8 , -8.530000000000000E-02 , - 13.81 , -8.704000000000001E-02 , - 13.82 , -5.918000000000000E-02 , - 13.83 , -3.830000000000000E-03 , - 13.84 , 7.192000000000000E-02 , - 13.85 , 0.14312 , - 13.86 , 0.17488 , - 13.87 , 0.16315 , - 13.88 , 0.14274 , - 13.89 , 0.14017 , - 13.9 , 0.14556 , - 13.91 , 0.13989 , - 13.92 , 0.12104 , - 13.93 , 9.578000000000000E-02 , - 13.94 , 7.056999999999999E-02 , - 13.95 , 5.257000000000000E-02 , - 13.96 , 4.283000000000000E-02 , - 13.97 , 3.754000000000000E-02 , - 13.98 , 3.580000000000000E-02 , - 13.99 , 3.422000000000000E-02 , - 14.0 , 2.593000000000000E-02 , - 14.01 , 4.220000000000000E-03 , - 14.02 , -1.590000000000000E-02 , - 14.03 , -2.929000000000000E-02 , - 14.04 , 4.251000000000000E-02 , - 14.05 , 5.369000000000000E-02 , - 14.06 , 6.154000000000000E-02 , - 14.07 , 6.560000000000001E-02 , - 14.08 , 6.591000000000000E-02 , - 14.09 , 6.272000000000000E-02 , - 14.1 , 5.704000000000000E-02 , - 14.11 , 5.054000000000000E-02 , - 14.12 , 4.304000000000000E-02 , - 14.13 , 3.569000000000000E-02 , - 14.14 , 2.953000000000000E-02 , - 14.15 , 2.591000000000000E-02 , - 14.16 , 2.479000000000000E-02 , - 14.17 , 2.511000000000000E-02 , - 14.18 , 2.581000000000000E-02 , - 14.19 , 2.493000000000000E-02 , - 14.2 , 2.314000000000000E-02 , - 14.21 , 2.027000000000000E-02 , - 14.22 , 1.935000000000000E-02 , - 14.23 , 2.023000000000000E-02 , - 14.24 , 2.506000000000000E-02 , - 14.25 , 3.099000000000000E-02 , - 14.26 , 3.760000000000000E-02 , - 14.27 , 4.262000000000000E-02 , - 14.28 , 4.532000000000000E-02 , - 14.29 , 4.802000000000000E-02 , - 14.3 , 5.005000000000000E-02 , - 14.31 , 5.302000000000000E-02 , - 14.32 , 5.416000000000000E-02 , - 14.33 , 5.517000000000000E-02 , - 14.34 , 5.543000000000000E-02 , - 14.35 , 5.403000000000000E-02 , - 14.36 , 5.095000000000000E-02 , - 14.37 , 4.660000000000000E-02 , - 14.38 , 4.407000000000000E-02 , - 14.39 , 4.359000000000000E-02 , - 14.4 , 4.649000000000000E-02 , - 14.41 , 4.927000000000000E-02 , - 14.42 , 5.116000000000000E-02 , - 14.43 , 5.246000000000000E-02 , - 14.44 , 5.290000000000000E-02 , - 14.45 , 5.342000000000000E-02 , - 14.46 , 5.301000000000000E-02 , - 14.47 , 5.389000000000000E-02 , - 14.48 , 5.518000000000000E-02 , - 14.49 , 5.594000000000000E-02 , - 14.5 , 5.543000000000000E-02 , - 14.51 , 5.542000000000000E-02 , - 14.52 , 5.677000000000000E-02 , - 14.53 , 5.746000000000000E-02 , - 14.54 , 5.802000000000000E-02 , - 14.55 , 5.847000000000000E-02 , - 14.56 , 5.842000000000000E-02 , - 14.57 , 5.750000000000000E-02 , - 14.58 , 5.606000000000000E-02 , - 14.59 , 5.592000000000000E-02 , - 14.6 , 5.517000000000000E-02 , - 14.61 , 5.439000000000000E-02 , - 14.62 , 5.392000000000000E-02 , - 14.63 , 5.395000000000000E-02 , - 14.64 , 5.260000000000000E-02 , - 14.65 , 5.031000000000000E-02 , - 14.66 , 4.883000000000000E-02 , - 14.67 , 4.944000000000000E-02 , - 14.68 , 5.215000000000000E-02 , - 14.69 , 5.627000000000000E-02 , - 14.7 , 6.244000000000000E-02 , - 14.71 , 6.783000000000000E-02 , - 14.72 , 7.159000000000000E-02 , - 14.73 , 7.149999999999999E-02 , - 14.74 , 6.673000000000000E-02 , - 14.75 , 5.755000000000000E-02 , - 14.76 , 4.539000000000000E-02 , - 14.77 , 3.504000000000000E-02 , - 14.78 , 2.721000000000000E-02 , - 14.79 , 2.308000000000000E-02 , - 14.8 , 2.125000000000000E-02 , - 14.81 , 2.022000000000000E-02 , - 14.82 , 1.831000000000000E-02 , - 14.83 , 1.547000000000000E-02 , - 14.84 , 1.321000000000000E-02 , - 14.85 , 1.112000000000000E-02 , - 14.86 , 1.025000000000000E-02 , - 14.87 , 9.549999999999999E-03 , - 14.88 , 1.040000000000000E-02 , - 14.89 , 1.059000000000000E-02 , - 14.9 , 1.108000000000000E-02 , - 14.91 , 1.195000000000000E-02 , - 14.92 , 1.452000000000000E-02 , - 14.93 , 1.809000000000000E-02 , - 14.94 , 2.029000000000000E-02 , - 14.95 , 2.323000000000000E-02 , - 14.96 , 2.515000000000000E-02 , - 14.97 , 2.836000000000000E-02 , - 14.98 , 3.278000000000000E-02 , - 14.99 , 3.934000000000000E-02 , - 15.00 , 0.0 , - ), - INTERPOL='LIN', - PROL_DROITE='CONSTANT', - PROL_GAUCHE='EXCLU',); - - - - diff --git a/Tests/testcomm/forma12c.comm b/Tests/testcomm/forma12c.comm deleted file mode 100755 index 2027774f..00000000 --- a/Tests/testcomm/forma12c.comm +++ /dev/null @@ -1,773 +0,0 @@ -# MODIF DATE 12/05/2005 AUTEUR DURAND C.DURAND -# TITRE TP ANALYSE SISMIQUE -# CONFIGURATION MANAGEMENT OF EDF VERSION -# ====================================================================== -# COPYRIGHT (C) 1991 - 2004 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# RESPONSABLE BOYERE E.BOYERE -#----------------------------------------------------------------------- -# -# ANALYSE RIS12 TR4 REGLEMENTAIRE -# SCENARIO 1 -# GL1(X,Y) + GL2(Z) -# -#----------------------------------------------------------------------- - -DEBUT(CODE=_F(NOM ='FORMA12C',NIV_PUB_WEB='INTERNET')) - -MAILLAGE=LIRE_MAILLAGE(INFO=2) - -MODELE=AFFE_MODELE( - MAILLAGE=MAILLAGE, - AFFE=( - _F(GROUP_MA='GPOU_D_T', - PHENOMENE='MECANIQUE', - MODELISATION='POU_D_T',), - _F(GROUP_MA='GPOU_C_T', - PHENOMENE='MECANIQUE', - MODELISATION='POU_C_T',), - _F(GROUP_MA='GDIS_TR', - PHENOMENE='MECANIQUE', - MODELISATION='DIS_TR',), - ), - ) - -IMPR_RESU(FORMAT='CASTEM',UNITE=37, - MODELE=MODELE, - RESU=_F( - MAILLAGE=MAILLAGE)) - - - -#----------------------------------------------------------------------- -# CARACTERISTIQUES DES ELEMENTS -#----------------------------------------------------------------------- - - -CARA=AFFE_CARA_ELEM( - MODELE=MODELE, - POUTRE=( - _F(GROUP_MA='GMEL0301', - SECTION='CERCLE', - CARA=('R','EP'), - VALE=(0.08415,0.00711),), - _F(GROUP_MA='GMEL0501', - SECTION='CERCLE', - CARA=('R','EP'), - VALE=(0.08415,0.0034),), - _F(GROUP_MA='GMEL0601', - SECTION='CERCLE', - CARA=('R','EP'), - VALE=(0.08415,0.0034),), - _F(GROUP_MA='GMEL0701', - SECTION='CERCLE', - CARA=('R','EP'), - VALE=(0.08415,0.0034),), - _F(GROUP_MA='GMEL1001', - SECTION='CERCLE', - CARA=('R','EP'), - VALE=(0.08415,0.0034),), - _F(GROUP_MA='GMEL1101', - SECTION='CERCLE', - CARA=('R','EP'), - VALE=(0.08415,0.0034),), - _F(GROUP_MA='GMEL1201', - SECTION='CERCLE', - CARA=('R','EP'), - VALE=(0.08415,0.0034),), - _F(GROUP_MA='GMEL1501', - SECTION='CERCLE', - CARA=('R','EP'), - VALE=(0.08415,0.0034),), - _F(GROUP_MA='GMEL1701', - SECTION='CERCLE', - CARA=('R','EP'), - VALE=(0.08415,0.0034),), - _F(GROUP_MA='GMEL1801', - SECTION='CERCLE', - CARA=('R','EP'), - VALE=(0.08415,0.0034),), - _F(GROUP_MA='GMEL1901', - SECTION='CERCLE', - CARA=('R','EP'), - VALE=(0.08415,0.0034),), - _F(GROUP_MA='GMEL2001', - SECTION='CERCLE', - CARA=('R','EP'), - VALE=(0.08415,0.0034),), - _F(GROUP_MA='GMEL2101', - SECTION='CERCLE', - CARA=('R','EP'), - VALE=(0.08415,0.0034),), - _F(GROUP_MA='GMEL2201', - SECTION='CERCLE', - CARA=('R','EP'), - VALE=(0.08415,0.0034),), - _F(GROUP_MA='GMEL2401', - SECTION='CERCLE', - CARA=('R','EP'), - VALE=(0.08415,0.00711),),), - DISCRET=(_F(MAILLE='M0801I02', - CARA='M_TR_D_N', - VALE=(36.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0),), - _F(MAILLE='M1301I02', - CARA='M_TR_D_N', - VALE=(36.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0),),), - DEFI_ARC=(_F(GROUP_MA='GMEL0601', - CENTRE=(466.39260860000002,107.5500031,0.27747499939999998), - RAYON=0.22859999540000001, - COEF_FLEX_XY=14.43145561, - COEF_FLEX_XZ=14.43145561,), - _F(GROUP_MA='GMEL1101', - CENTRE=(466.16400149999998,107.3214035,3.7724525930000001), - RAYON=0.22859999540000001, - COEF_FLEX_XY=14.43145561, - COEF_FLEX_XZ=14.43145561,), - _F(GROUP_MA='GMEL1701', - CENTRE=(466.16400149999998,106.4785995,4.2335472110000003), - RAYON=0.22859999540000001, - COEF_FLEX_XY=14.43145561, - COEF_FLEX_XZ=14.43145561,), - _F(GROUP_MA='GMEL1901', - CENTRE=(466.16400149999998,106.4785995,8.7655010220000005), - RAYON=0.22859999540000001, - COEF_FLEX_XY=14.43145561, - COEF_FLEX_XZ=14.43145561,), - _F(GROUP_MA='GMEL2101', - CENTRE=(466.16400149999998,107.4713974,9.2274990080000006), - RAYON=0.22859999540000001, - COEF_FLEX_XY=14.43145561, - COEF_FLEX_XZ=14.43145561,),),) - -#----------------------------------------------------------------------- -# DEFINITION DES MATERIAUX -#----------------------------------------------------------------------- - -MATP01=DEFI_MATERIAU(ELAS=_F(E=1.97E11, - NU=0.3, - RHO=1.3108749019999999E4, - ALPHA=1.639999937E-05,),) -MATP03=DEFI_MATERIAU(ELAS=_F(E=1.97E11, - NU=0.3, - RHO=1.956015625E4, - ALPHA=1.639999937E-05,),) - -#----------------------------------------------------------------------- -# DEFINITION DES SUPPORTS -#----------------------------------------------------------------------- - -SUPPORT=AFFE_CHAR_MECA( - MODELE=MODELE, - DDL_IMPO=( -# PF1 ET PF2 - _F( NOEUD = ('N02__I00', 'N01__I00',), - DX = 0., DY = 0., DZ = 0., DRX = 0., DRY = 0., DRZ = 0.), -# GL1 - _F( NOEUD = 'N0701I00', - DX = 0., DY = 0.), -# GL2 - _F( NOEUD = 'N1201I00', - DZ = 0.), - ), - ) - -#----------------------------------------------------------------------- -# DEFINITION DES CHAMPS DE MATERIAUX -#----------------------------------------------------------------------- - -CHMATP=AFFE_MATERIAU(MAILLAGE=MAILLAGE, - AFFE=(_F(GROUP_MA='GMAT01', - MATER=MATP01, - TEMP_REF=20.0,), - _F(GROUP_MA='GMAT03', - MATER=MATP03, - TEMP_REF=20.0,),),) - -#----------------------------------------------------------------------- -# ASSEMBLAGE MATRICE MASSE ET RIGIDITE -#----------------------------------------------------------------------- - -MACRO_MATR_ASSE(MODELE=MODELE, - CHAM_MATER=CHMATP, - CARA_ELEM=CARA, - CHARGE=SUPPORT, - NUME_DDL=CO('NUMDDL'), - MATR_ASSE=(_F(MATRICE=CO("MATRRIGI"), - OPTION='RIGI_MECA',), - _F(MATRICE=CO("MATRMASS"), - OPTION='MASS_MECA',),),); - - -#----------------------------------------------------------------------- -# ASSEMBLAGE DU SECOND MEMBRE -#----------------------------------------------------------------------- - -INCLUDE(UNITE=22) - -CHSEIX=CALC_CHAR_SEISME( MATR_MASS=MATRMASS, - DIRECTION=(1., 0., 0.,), MONO_APPUI='OUI' - ) -CHSEIY=CALC_CHAR_SEISME( MATR_MASS=MATRMASS, - DIRECTION=(0., 1., 0.,), MONO_APPUI='OUI' - ) -CHSEIZ=CALC_CHAR_SEISME( MATR_MASS=MATRMASS, - DIRECTION=(0., 0., 1.,), MONO_APPUI='OUI' - ) - -#----------------------------------------------------------------------- -# CALCUL DES MODES -#----------------------------------------------------------------------- -MASSINER=POST_ELEM( - MODELE=MODELE, - CHARGE=SUPPORT, - CARA_ELEM=CARA, - CHAM_MATER=CHMATP, - MASS_INER=_F( TOUT = 'OUI',) - ) -MODES=MACRO_MODE_MECA( - MATR_A=MATRRIGI, - MATR_B=MATRMASS, - CALC_FREQ=_F( - FREQ_MIN = 0.0, - FREQ_MAX = 33.0, - NB_BLOC_FREQ = 1), - VERI_MODE=_F( STOP_ERREUR = 'NON'), - NORM_MODE=_F( - NORME = 'MASS_GENE', - MASS_INER =MASSINER), - IMPRESSION=_F( TOUT_PARA = 'OUI') - ) - -# TEST_RESU UNIQUEMENT POUR FAIRE CAS TEST -TEST_RESU(RESU=(_F(RESULTAT=MODES, - NUME_ORDRE=1, - PARA='FREQ', - VALE= 4.5135794612152, - PRECISION=1e-05, - REFERENCE='NON_REGRESSION', - VERSION='7.3.19',))) - -MODES=CALC_ELEM( - reuse=MODES, - MODELE=MODELE, - CHAM_MATER=CHMATP, - CARA_ELEM=CARA, - OPTION=( - 'EFGE_ELNO_DEPL', - ), - RESULTAT=MODES,) - -########################################################### -#---- REPONSE TRANSITOIRE PAR SUPERPOSITION MODALE ------ -#---- MONO APPUI GRANDEURS RELATIVES ------ -########################################################### - -# DEFINITION DES INSTANTS DE RECUPERATION - -L_RECU=DEFI_LIST_REEL( DEBUT=0., - INTERVALLE=_F( - JUSQU_A = 20.47, - PAS = 0.01) - ) - -#---------------------------------------------------- -#------------- PROJECTION SUR LA BASE MODALE -------- -#---------------------------------------------------- -MACRO_PROJ_BASE( - BASE=MODES, - MATR_ASSE_GENE=( - _F( - MATRICE=CO("MASSEGEN"), - MATR_ASSE=MATRMASS, - ), - _F( - MATRICE=CO("RIGIDGEN"), - MATR_ASSE=MATRRIGI, - ), - ), - VECT_ASSE_GENE=( - _F( - VECTEUR=CO("EFGENX"), - VECT_ASSE=CHSEIX, - ), - _F( - VECTEUR=CO("EFGENY"), - VECT_ASSE=CHSEIY, - ), - _F( - VECTEUR=CO("EFGENZ"), - VECT_ASSE=CHSEIZ, - ), - ), - ) - -#------------------------------------------------------------------ -#-------------- RESOLUTION DU PB GENERALISE ----------------------- -#-------------- SANS CORRECTION STATIQUE -------------------------- -#------------------------------------------------------------------ -GSCR=DYNA_TRAN_MODAL( - MASS_GENE=MASSEGEN, - RIGI_GENE=RIGIDGEN, - AMOR_REDUIT=0.02, - EXCIT=( - _F( - VECT_GENE=EFGENX, - FONC_MULT=ACCELH1, - ), - _F( - VECT_GENE=EFGENY, - FONC_MULT=ACCELH1, - ), - _F( - VECT_GENE=EFGENZ, - FONC_MULT=ACCELV1, - ), - ), - INCREMENT=_F( - INST_INIT = 0., - INST_FIN =20.47, - PAS = 0.001 - ), - ) - -#-------------------------------------------------------------- -#---- RESTITUTION GRANDEUR PHYSIQUE DANS LE REPERE RELATIF -#--- SANS CORRECTION STATIQUE -#-------------------------------------------------------------- -# RESTITUTION GLOBALE DU CHAMP DE DEPLACEMENT RELATIF A CHAQUE INSTANT -# DE LA LISTE L_RECU -RGSCR=REST_BASE_PHYS( - RESU_GENE=GSCR, - INTERPOL='LIN', - LIST_INST=L_RECU, - #TOUT_INST='OUI', - TOUT_CHAM='OUI', - ) -DPSCR=CREA_CHAMP( - TYPE_CHAM='NOEU_DEPL_R', - OPERATION='EXTR', - RESULTAT=RGSCR, - NOM_CHAM='DEPL', - TYPE_MAXI='MAXI', - TYPE_RESU='VALE', - TOUT_ORDRE='OUI' - ) -TDPSCR=POST_RELEVE_T( - ACTION= - _F( - INTITULE = 'DEPL_MAX_R', - GROUP_NO='GNSTR01', - CHAM_GD=DPSCR, - TOUT_CMP='OUI', - OPERATION ='EXTRACTION', - ), - ) - - -# RESTITUTION GLOBALE DU CHAMP EFGE_ELNO_DEPL A CHAQUE INSTANT -# DE LA LISTE L_RECU -RGSCR=CALC_ELEM( - reuse=RGSCR, - MODELE=MODELE, - CHAM_MATER=CHMATP, - CARA_ELEM=CARA, - OPTION=( - 'EFGE_ELNO_DEPL', - ), - RESULTAT=RGSCR,) -EFSCR=CREA_CHAMP( - TYPE_CHAM='ELNO_SIEF_R', - OPERATION='EXTR', - RESULTAT=RGSCR, - NOM_CHAM='EFGE_ELNO_DEPL', - TYPE_MAXI='MAXI', - TYPE_RESU='VALE', - TOUT_ORDRE='OUI' - ) -TEFSCR=POST_RELEVE_T( - ACTION= - _F( - INTITULE = 'EFGE_MAX_R', - GROUP_NO='GNSTR01', - CHAM_GD=EFSCR, - TOUT_CMP='OUI', - OPERATION ='EXTRACTION', - ), - ) -IMPR_TABLE( - TABLE=TEFSCR, - FORMAT='TABLEAU', - ) - -########################################################### -#---- REPONSE TRANSITOIRE PAR SUPERPOSITION MODALE ------ -#---- MULTI APPUIS GRANDEURS ABSOLUES ------ -########################################################### - -# DEFINITION EXCITATION MULTIPLE - -MSTA=MODE_STATIQUE( - MATR_RIGI=MATRRIGI, - MATR_MASS=MATRMASS, - MODE_STAT=_F(TOUT='OUI',AVEC_CMP=('DX','DY','DZ'),),) - - -CHSEIXM=CALC_CHAR_SEISME( - MATR_MASS=MATRMASS, - DIRECTION=(1., 0., 0.,), - MODE_STAT=MSTA, - NOEUD=('N02__I00','N01__I00','N0701I00',), - ) - -CHSEIYM=CALC_CHAR_SEISME( - MATR_MASS=MATRMASS, - DIRECTION=(0., 1., 0.,), - MODE_STAT=MSTA, - NOEUD=('N02__I00','N01__I00','N0701I00',), - ) - -CHSEIZM=CALC_CHAR_SEISME( - MATR_MASS=MATRMASS, - DIRECTION=(0., 0., 1.,), - MODE_STAT=MSTA, - NOEUD=('N02__I00','N01__I00','N1201I00',), - ) - -MACRO_PROJ_BASE( - BASE=MODES, - MATR_ASSE_GENE=( - _F( - MATRICE=CO("MASGEN2"), - MATR_ASSE=MATRMASS, - ), - _F( - MATRICE=CO("RIGGEN2"), - MATR_ASSE=MATRRIGI, - ), - ), - VECT_ASSE_GENE=( - _F( - VECTEUR=CO("EFX2"), - VECT_ASSE=CHSEIXM, - ), - _F( - VECTEUR=CO("EFY2"), - VECT_ASSE=CHSEIYM, - ), - _F( - VECTEUR=CO("EFZ2"), - VECT_ASSE=CHSEIZM, - ), - ), - ) - - -VITESH1=CALC_FONCTION( - INTEGRE=_F(FONCTION=ACCELH1,METHODE='TRAPEZE',), - PROL_DROITE='CONSTANT' ) -DEPLAH1=CALC_FONCTION( - INTEGRE=_F(FONCTION=VITESH1,METHODE='TRAPEZE',), - PROL_DROITE='CONSTANT' ) -VITESV1=CALC_FONCTION( - INTEGRE=_F(FONCTION=ACCELV1,METHODE='TRAPEZE',), - PROL_DROITE='CONSTANT' ) -DEPLAV1=CALC_FONCTION( - INTEGRE=_F(FONCTION=VITESV1,METHODE='TRAPEZE',), - PROL_DROITE='CONSTANT' ) - -GSCA=DYNA_TRAN_MODAL( - MASS_GENE=MASGEN2, - RIGI_GENE=RIGGEN2, - AMOR_REDUIT=0.02, - MODE_STAT=MSTA, - EXCIT=( - _F( - VECT_GENE=EFX2, - ACCE=ACCELH1, - VITE=VITESH1, - DEPL=DEPLAH1, - MULT_APPUI='OUI', - DIRECTION=(1.,0.,0.,), - NOEUD=('N02__I00','N01__I00','N0701I00',), - ), - _F( - VECT_GENE=EFY2, - ACCE=ACCELH1, - VITE=VITESH1, - DEPL=DEPLAH1, - MULT_APPUI='OUI', - DIRECTION=(0.,1.,0.,), - NOEUD=('N02__I00','N01__I00','N0701I00',), - ), - _F( - VECT_GENE=EFZ2, - ACCE=ACCELV1, - VITE=VITESV1, - DEPL=DEPLAV1, - MULT_APPUI='OUI', - DIRECTION=(0.,0.,1.,), - NOEUD=('N02__I00','N01__I00','N1201I00',), - ), - ), - INCREMENT=_F( - INST_INIT = 0., - INST_FIN =20.47, - PAS = 0.001 - ), - ) - - -# RESTITUTION GRANDEURS ABSOLUES -#------------------------------- - -RGSCA=REST_BASE_PHYS( - RESU_GENE=GSCA, - INTERPOL='LIN', - LIST_INST=L_RECU, - TOUT_CHAM='OUI', - MULT_APPUI='OUI', - ) - -# DEPLACEMENTS - -DPSCA=CREA_CHAMP( - TYPE_CHAM='NOEU_DEPL_R', - OPERATION='EXTR', - RESULTAT=RGSCA, - NOM_CHAM='DEPL', - TYPE_MAXI='MAXI', - TYPE_RESU='VALE', - TOUT_ORDRE='OUI' - ) - -TDPSCA=POST_RELEVE_T( - ACTION= - _F( - INTITULE = 'DEPL_MAX_A', - GROUP_NO='GNSTR01', - CHAM_GD=DPSCA, - TOUT_CMP='OUI', - OPERATION ='EXTRACTION', - ), - ) - -IMPR_TABLE( - TABLE=TDPSCA, - FORMAT='TABLEAU', - ) - -# EFFORTS - -RGSCA=CALC_ELEM( - reuse=RGSCA, - MODELE=MODELE, - CHAM_MATER=CHMATP, - CARA_ELEM=CARA, - OPTION=( - 'EFGE_ELNO_DEPL', - ), - RESULTAT=RGSCA,) - -EFSCA=CREA_CHAMP( - TYPE_CHAM='ELNO_SIEF_R', - OPERATION='EXTR', - RESULTAT=RGSCA, - NOM_CHAM='EFGE_ELNO_DEPL', - TYPE_MAXI='MAXI', - TYPE_RESU='VALE', - TOUT_ORDRE='OUI' - ) - -TEFSCA=POST_RELEVE_T( - ACTION= - _F( - INTITULE = 'EFGE_MAX_A', - GROUP_NO='GNSTR01', - CHAM_GD=EFSCA, - TOUT_CMP='OUI', - OPERATION ='EXTRACTION', - ), - ) -IMPR_TABLE( - TABLE=TEFSCA, - FORMAT='TABLEAU', - ) - - -# RESTITUTION GRANDEURS RELATIVES -#------------------------------- - -# DEPLACEMENTS - -RGSCR2=REST_BASE_PHYS( - RESU_GENE=GSCA, - INTERPOL='LIN', - LIST_INST=L_RECU, - TOUT_CHAM='OUI', - ) - -DPSCR2=CREA_CHAMP( - TYPE_CHAM='NOEU_DEPL_R', - OPERATION='EXTR', - RESULTAT=RGSCR2, - NOM_CHAM='DEPL', - TYPE_MAXI='MAXI', - TYPE_RESU='VALE', - TOUT_ORDRE='OUI' - ) - -TDPSCR2=POST_RELEVE_T( - ACTION= - _F( - INTITULE = 'DEPL_MAX_R2', - GROUP_NO='GNSTR01', - CHAM_GD=DPSCR2, - TOUT_CMP='OUI', - OPERATION ='EXTRACTION', - ), - ) - -IMPR_TABLE( - TABLE=TDPSCR2, - FORMAT='TABLEAU', - ) - -# EFFORTS - -RGSCR2=CALC_ELEM( - reuse=RGSCR2, - MODELE=MODELE, - CHAM_MATER=CHMATP, - CARA_ELEM=CARA, - OPTION=( - 'EFGE_ELNO_DEPL', - ), - RESULTAT=RGSCR2,) - -EFSCR2=CREA_CHAMP( - TYPE_CHAM='ELNO_SIEF_R', - OPERATION='EXTR', - RESULTAT=RGSCR2, - NOM_CHAM='EFGE_ELNO_DEPL', - TYPE_MAXI='MAXI', - TYPE_RESU='VALE', - TOUT_ORDRE='OUI' - ) - -TEFSCR2=POST_RELEVE_T( - ACTION= - _F( - INTITULE = 'EFGE_MAX_R2', - GROUP_NO='GNSTR01', - CHAM_GD=EFSCR2, - TOUT_CMP='OUI', - OPERATION ='EXTRACTION', - ), - ) - -IMPR_TABLE( - TABLE=TEFSCR2, - FORMAT='TABLEAU', - ) - -########################################################### -#------REPONSE SPECTRALE PAR SUPERPOSITION MODALE--------- -########################################################### - -# CALCUL DU SPECTRE DE REPONSE OSCILLATEUR EN PSEUDO ACCELERATION ABSOLUE -# NAPPE SRO FONCTION DE AMORTISSEMENT -#------------------------------------------------------------------------ -SROXY=CALC_FONCTION( - SPEC_OSCI=_F( - FONCTION=ACCELH1, - AMOR_REDUIT=(0.02,0.05,0.10), - NORME=9.81, - ), - ) -SROZ=CALC_FONCTION( - SPEC_OSCI=_F( - FONCTION=ACCELV1, - AMOR_REDUIT=(0.02,0.05,0.10), - NORME=9.81, - ), - ) - - -#----------------------------------------------- -# REPONSE SPECTRALE SANS CORRECTION STATIQUE -#----------------------------------------------- -SPEC=COMB_SISM_MODAL( - MODE_MECA=MODES, - AMOR_REDUIT=0.02, - MASS_INER=MASSINER, - EXCIT=_F( - MONO_APPUI='OUI', - TRI_SPEC='OUI', - SPEC_OSCI=(SROXY,SROXY,SROZ), - ECHELLE=(9.81,9.81,9.81),), - COMB_MODE=_F(TYPE='CQC',), - COMB_DIRECTION=_F( TYPE = 'QUAD',), - OPTION=( - 'DEPL', - 'EFGE_ELNO_DEPL', - ), - ) - -EFSPEC=POST_RELEVE_T( - ACTION= - _F( - INTITULE = 'EFGE_SPEC', - GROUP_NO='GNSTR01', - RESULTAT=SPEC, - NOM_CHAM='EFGE_ELNO_DEPL', - NUME_ORDRE=4, - TOUT_CMP='OUI', - OPERATION ='EXTRACTION', - ), - ) - -IMPR_TABLE( - TABLE=EFSPEC, - FORMAT='TABLEAU', - ) - -DPSPEC=POST_RELEVE_T( - ACTION= - _F( - INTITULE = 'DEPL_SPEC', - GROUP_NO='GNSTR01', - RESULTAT=SPEC, - NOM_CHAM='DEPL', - NUME_ORDRE=4, - TOUT_CMP='OUI', - OPERATION ='EXTRACTION', - ), - ) - -IMPR_TABLE( - TABLE=DPSPEC, - FORMAT='TABLEAU', - ) - - - -FIN() - - - - - - diff --git a/Tests/testcomm/g.comm b/Tests/testcomm/g.comm deleted file mode 100644 index 8756209b..00000000 --- a/Tests/testcomm/g.comm +++ /dev/null @@ -1,11 +0,0 @@ -DEBUT() -sensible=[2.1E11, 0.3, 1.E-6, 1.E-6, ] - -# parse: -affectation -n=len(sensible) -PS=[None]*n - -#for i in range(n): -# PS[i]=DEFI_PARA_SENSI(VALE=sensible[i]) - -FIN() diff --git a/Tests/testcomm/hplp101b.comm b/Tests/testcomm/hplp101b.comm deleted file mode 100755 index ef2790a1..00000000 --- a/Tests/testcomm/hplp101b.comm +++ /dev/null @@ -1,189 +0,0 @@ -# MODIF DATE 09/05/2006 AUTEUR REZETTE C.REZETTE -# TITRE FISSURE AU CENTRE D'UNE PLAQUE MINCE RECTANGULAIRE FAISANT -# CONFIGURATION MANAGEMENT OF EDF VERSION -# ====================================================================== -# COPYRIGHT (C) 1991 - 2004 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# OBSTACLE A UN FLUC DE CHALEUR UNIFORME EN MILIEU ISOTROPE -# -# TESTE LES DERIVEES DE G DANS LE CAS D'UN CHARGEMENT EN FORCE DE VOLUME - -DEBUT( CODE=_F( NOM = 'HPLP101B',NIV_PUB_WEB='INTERNET')) - -YOUNG = DEFI_PARA_SENSI(VALE=1.) -FORC = DEFI_PARA_SENSI(VALE=1.) - -MA=LIRE_MAILLAGE( ) - -MA=DEFI_GROUP( reuse=MA, MAILLAGE=MA, - CREA_GROUP_NO=_F( - GROUP_MA = ( 'LP9P10', 'LP9P10B', - 'LP8P9', 'LP8P9B', - )) - ) - -MO=AFFE_MODELE( MAILLAGE=MA, - AFFE=_F( TOUT = 'OUI', - PHENOMENE = 'MECANIQUE', - MODELISATION = 'C_PLAN') - ) -ZERO = DEFI_CONSTANTE(VALE=0.) -NU = DEFI_CONSTANTE(VALE=0.3) -ALPHA = DEFI_CONSTANTE(VALE=0.) - -MAT=DEFI_MATERIAU(ELAS_FO=_F( E = YOUNG, NU = NU, - TEMP_DEF_ALPHA =20., - ALPHA = ALPHA, RHO=7800.,)) - -CHMAT=AFFE_MATERIAU( MAILLAGE=MA, - AFFE=_F( TOUT = 'OUI', - MATER = MAT) - ) - -CH=AFFE_CHAR_MECA_F( MODELE=MO, - FORCE_INTERNE=_F(TOUT='OUI',FY=FORC,), - DDL_IMPO=( - _F( GROUP_NO = 'LP8P9', - DX = ZERO), - _F( GROUP_NO = 'LP8P9B', - DX = ZERO), - _F( GROUP_NO = 'P11', - DY = ZERO)) - ) - -DEP=MECA_STATIQUE( MODELE=MO, CHAM_MATER=CHMAT, - SENSIBILITE = (FORC), - EXCIT=_F( CHARGE = CH), - ) - -DEP=CALC_ELEM(reuse=DEP,RESULTAT=DEP, - SENSIBILITE = (FORC), - OPTION=('EPSI_ELGA_DEPL','SIEF_ELGA_DEPL',),) - -FOND=DEFI_FOND_FISS( MAILLAGE=MA, - FOND_FISS=_F( GROUP_NO = ('P0',)), - NORMALE=(0., 1., 0.,) - ) - -THETA0=CALC_THETA( MODELE=MO, - THETA_2D=_F( GROUP_NO = ('P0',), - MODULE = 1., - R_INF = 3.75E-5, - R_SUP = 7.50E-5), - DIRECTION=(1., 0., 0.,) - ) - -G0=CALC_G( RESULTAT=DEP, - THETA=_F(THETA=THETA0), - SYME_CHAR='SANS', - COMP_ELAS=_F( RELATION = 'ELAS', - DEFORMATION = 'PETIT') - ) - -DG0=CALC_G( RESULTAT=DEP, - SENSIBILITE = (FORC), - THETA=_F(THETA=THETA0), - SYME_CHAR='SANS', - COMP_ELAS=_F( RELATION = 'ELAS', - DEFORMATION = 'PETIT') - ) - -TEST_TABLE( TABLE=DG0, - NOM_PARA='DG/DF', - SENSIBILITE = (FORC), - VALE=1.06E-2, - REFERENCE='ANALYTIQUE', - PRECISION=0.0005 ) -FIN() - -THETA01=CALC_THETA( MODELE=MO, - THETA_2D=_F( GROUP_NO = ('P0',), - MODULE = 1., - R_INF = 7.50E-5, - R_SUP = 1.125E-4), - DIRECTION=(1., 0., 0.,) - ) - -G1=CALC_G( RESULTAT=DEP, - THETA=_F(THETA=THETA01), - COMP_ELAS=_F( RELATION = 'ELAS', - DEFORMATION = 'PETIT'), - SYME_CHAR='SANS' - ) - -DG1=CALC_G( RESULTAT=DEP, - SENSIBILITE = (FORC), - THETA=_F(THETA=THETA01), - SYME_CHAR='SANS', - COMP_ELAS=_F( RELATION = 'ELAS', - DEFORMATION = 'PETIT') - ) - -TEST_TABLE( TABLE=DG1, - NOM_PARA='G', - SENSIBILITE = (FORC), - REFERENCE='ANALYTIQUE', - VALE=1.06E-2, - PRECISION=0.0005 ) - -# -# DERIVEE PAR RAPPORT A E -# - -DEP2=MECA_STATIQUE( MODELE=MO, CHAM_MATER=CHMAT, - SENSIBILITE = (YOUNG), - EXCIT=_F( CHARGE = CH), - ) - -DEP2=CALC_ELEM(reuse=DEP2,RESULTAT=DEP2, - SENSIBILITE = (YOUNG), - OPTION=('EPSI_ELGA_DEPL','SIEF_ELGA_DEPL',),) - - -DG2=CALC_G( RESULTAT=DEP2, - SENSIBILITE = (YOUNG), - THETA=_F(THETA=THETA0), - SYME_CHAR='SANS', - COMP_ELAS=_F( RELATION = 'ELAS', - DEFORMATION = 'PETIT') - ) - -TEST_TABLE( TABLE=DG2, - NOM_PARA='G', - SENSIBILITE = (YOUNG), - REFERENCE='ANALYTIQUE', - VALE=-5.3E-3, - PRECISION=0.0005 ) - - -DG3=CALC_G( RESULTAT=DEP2, - SENSIBILITE = (YOUNG), - THETA=_F(THETA=THETA01), - SYME_CHAR='SANS', - COMP_ELAS=_F( RELATION = 'ELAS', - DEFORMATION = 'PETIT') - ) - -TEST_TABLE( TABLE=DG3, - NOM_PARA='G', - VALE=-5.3E-3, - SENSIBILITE = (YOUNG), - REFERENCE='ANALYTIQUE', - PRECISION=0.0005 ) - - -FIN() - diff --git a/Tests/testcomm/hsnv100h.comm b/Tests/testcomm/hsnv100h.comm deleted file mode 100755 index 976dc604..00000000 --- a/Tests/testcomm/hsnv100h.comm +++ /dev/null @@ -1,46 +0,0 @@ -# MODIF DATE 23/10/2006 AUTEUR VABHHTS J.PELLET -# TITRE THERMO-PLASTICITE EN TRACTION SIMPLE (MODELISATION:C_PLAN) -# CONFIGURATION MANAGEMENT OF EDF VERSION -# ====================================================================== -# COPYRIGHT (C) 1991 - 2006 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# - -DEBUT(CODE=_F( NOM = 'HSNV100H',NIV_PUB_WEB='INTRANET'),IMPR_MACRO='OUI',DEBUG=_F(SDVERI='OUI')) - -#...................................................................... -# CAS TEST THERMOPLASTICITE ELEMENTAIRE -#...................................................................... -# DEFINITION DES CARACTERISTIQUES DU MATERIAU -# - -MAIL=LIRE_MAILLAGE( ) - -INCLUDE_MATERIAU(TYPE_MODELE='REF', - TYPE_VALE='NOMI', - NOM_AFNOR='Z2CND1712', - VARIANTE='A', - NOM_MATER='MONMAT', - UNITE_LONGUEUR='MM' - ) - -CHMAT=AFFE_MATERIAU( MAILLAGE=MAIL,AFFE=( - _F( TOUT='OUI',TEMP_REF=25, MATER = MONMAT), - ),) - -# - -FIN() diff --git a/Tests/testcomm/incmat.comm b/Tests/testcomm/incmat.comm deleted file mode 100644 index 705a1cbd..00000000 --- a/Tests/testcomm/incmat.comm +++ /dev/null @@ -1,7 +0,0 @@ -DEBUT() -MA=LIRE_MAILLAGE() -INCLUDE_MATERIAU( NOM_AFNOR='18MND5', TYPE_MODELE='REF', - VARIANTE='A', TYPE_VALE='NOMI', - NOM_MATER='MAT3', INFO=1 ) - -FIN() diff --git a/Tests/testcomm/param1.comm b/Tests/testcomm/param1.comm deleted file mode 100644 index 79172614..00000000 --- a/Tests/testcomm/param1.comm +++ /dev/null @@ -1,36 +0,0 @@ - -DEBUT() -TEMP_MOY=50. -coef0 = 1.E-3 - -A0=DEFI_FONCTION( NOM_PARA='TEMP', - PROL_DROITE='EXCLU', - PROL_GAUCHE='EXCLU', - VALE=( - 20. ,14.7 *coef0, - 50. ,15.2 *coef0, - 100. ,15.8 *coef0, - 150. ,16.7 *coef0, - 200. ,17.2 *coef0, - 250. ,18. *coef0, - 300. ,18.6 *coef0, - 350. ,19.3 *coef0, - 400. ,20. *coef0, - 450. ,20.5 *coef0, - 500. ,21.1 *coef0, - 550. ,21.7 *coef0, - 600. ,22.2 *coef0, - 650. ,22.7 *coef0, - 700. ,23.2 *coef0, - 750. ,23.7 *coef0, - 800. ,24.1 *coef0, - 950. ,26.67 *coef0, - 1150. ,29.24 *coef0, - 1370. ,32.06 *coef0, - )) - -DEFI_MATERIAU( ELAS=_F( RHO = 1.E08, - NU = 0.3, - E = A0(TEMP_MOY))) - -FIN() diff --git a/Tests/testcomm/param2.com0 b/Tests/testcomm/param2.com0 deleted file mode 100644 index 2d32a387..00000000 --- a/Tests/testcomm/param2.com0 +++ /dev/null @@ -1,4 +0,0 @@ -POURSUITE(); -l1=DEFI_LIST_ENTI(DEBUT=mon_param,); -FIN(); - diff --git a/Tests/testcomm/param2.comm b/Tests/testcomm/param2.comm deleted file mode 100644 index 19c8eeb2..00000000 --- a/Tests/testcomm/param2.comm +++ /dev/null @@ -1,4 +0,0 @@ -DEBUT(); -mon_param = 2; -m=LIRE_MAILLAGE() -FIN(); diff --git a/Tests/testcomm/param3.11 b/Tests/testcomm/param3.11 deleted file mode 100644 index 236ca5ca..00000000 --- a/Tests/testcomm/param3.11 +++ /dev/null @@ -1,2 +0,0 @@ -x=45 -y=77 diff --git a/Tests/testcomm/param3.12 b/Tests/testcomm/param3.12 deleted file mode 100644 index 2c2a2157..00000000 --- a/Tests/testcomm/param3.12 +++ /dev/null @@ -1 +0,0 @@ -d=5;f=7 diff --git a/Tests/testcomm/param3.com0 b/Tests/testcomm/param3.com0 deleted file mode 100644 index d5a0bbf5..00000000 --- a/Tests/testcomm/param3.com0 +++ /dev/null @@ -1,11 +0,0 @@ -POURSUITE(); -l1=DEFI_LIST_ENTI(DEBUT=2*mon_param+1,); -l2=DEFI_LIST_ENTI(DEBUT=a[1]); -INCLUDE_MATERIAU( NOM_AFNOR='18MND5', TYPE_MODELE='REF', - VARIANTE='A', TYPE_VALE='NOMI', - NOM_MATER='MAT3', INFO=1 ) -INCLUDE(UNITE=11) -INCLUDE(UNITE=12) - -FIN(); - diff --git a/Tests/testcomm/param3.comm b/Tests/testcomm/param3.comm deleted file mode 100644 index b7a38ea2..00000000 --- a/Tests/testcomm/param3.comm +++ /dev/null @@ -1,5 +0,0 @@ -DEBUT(); -mon_param = 2; -m=LIRE_MAILLAGE() -a=[1,2,3,4];b=2 -FIN(); diff --git a/Tests/testcomm/pars1.comm b/Tests/testcomm/pars1.comm deleted file mode 100644 index 53e7f325..00000000 --- a/Tests/testcomm/pars1.comm +++ /dev/null @@ -1,61 +0,0 @@ -DEBUT() -a=1 # comment -c=32.3 # comment - -aa='string # bizarre' -a="string # bizarre" - -b="string ( bizarre" - -d="""string multi -line -""" -e="""string multi # ssssssssssss -line -""" -P='''string # bizarre' #profondeur ' # autre -bbb''' - -#comment -#comment -#comment - -#commenta -##XXXX=CHARGE(RAYON=0.1E-2,VALE=(0.12E-1,0.54E-5,0.1),MCF=_F(VALE=0.3E-5), -## V="toto", - ## ) -#commentb - -##CH=CHARGE(RAYON=0.1E-2,VALE=(0.12E-1,0.54E-5,0.1),MCF=_F(VALE=0.3E-5), -## MCF2=(_F(VALE=0.3E-4,GROUP_MA='GMA0601'),_F(VALE=0.3E-2)), -## VALE_C=[0.12E-3,0.54E-1,0.1], - ## ) -MA=LIRE_MAILLAGE() -a=(10, -#commentc -12,13) - -#commentd -P=1 #profondeur -#commente -aaa=(10, -11, #commentc -12,13) -xx=EVAL("13.26") - -fmt_raison='-'*80+''' - - Exception erreur_Fatale interceptee - Raison : %s - -'''+'-'*80+'xxxxxxxxxxxxxxxx\n' - -# commen """ -# commen ''' -# commen ' -# commen " -BETA=3.41557E-08 - -a=8.3 ; #position - -FIN() diff --git a/Tests/testcomm/parseur.comm b/Tests/testcomm/parseur.comm deleted file mode 100644 index 92aaf898..00000000 --- a/Tests/testcomm/parseur.comm +++ /dev/null @@ -1,74 +0,0 @@ -DEBUT() -P1 = 9.8; - -P2 = 8.8; - -P3 = 7; - -P5 = P3*P1; - -P6 = P1-3; - -P4 = [2,3,4]; - -a = 1. -b=3 -c= 3 * 5 -cc="b+3" -d= 4 + \ - 5 \ - -4 -e=LIRE_MAILLAGE() -##MA=LIRE_MAILLAGE() -x=(1,2) -y=[3, -#comme -4] -z="a" -zz='v' -u='''aaaa -bbbb''' -#ne marche pas avec le parseur actuel -#if 1: -# a=45 -#else: -# a=5.6 -d={"a":0} -e={"a":0, -#comme -"d":4} -#ne marche pas avec le parseur actuel -#a==1 -s="-"*80 -fmt_raison='-'*80+''' - - Exception erreur_Fatale interceptee - Raison : %s - -'''+'-'*80+'xxxxxxxxxxxxxxxx\n' - -# commen """ -# commen ''' -# commen ' -# commen " -BETA=3.41557E-08 - -C_0=105.7 - -C_EQ_I05=69.1 - -C_EQ_E05=69.1 - -C_EQ_I10=51.6 - -C_EQ_E10=69.1 - -FL_INT05 = FORMULE(NOM_PARA='TEMP',VALE=''' -(0.5*BETA / ((C_0 - C_EQ_I05 )**2) - * (TEMP - (2.*C_0 - C_EQ_I05 ))*(TEMP - C_EQ_I05 ))''') - -zz=8.9; -#ne marche pas avec le parseur actuel -#zz=8.9;aa=10 #position - -FIN() diff --git a/Tests/testcomm/testcomm.py b/Tests/testcomm/testcomm.py deleted file mode 100644 index 2fce38b6..00000000 --- a/Tests/testcomm/testcomm.py +++ /dev/null @@ -1,70 +0,0 @@ -import os,glob,sys -import unittest -import difflib - -import prefs -from InterfaceTK import appli - -def add_param(j,pos,nom,valeur): - co=j.addEntite("PARAMETRE",pos) - co.setNom(nom) - co.set_valeur(valeur) - return co - -def add_mcsimp(obj,nom,valeur): - mcs=obj.getChild(nom,restreint='oui') - if mcs is None: - pos=obj.getIndexChild(nom) - mcs=obj.addEntite(nom,pos) - mcs.set_valeur(mcs.evalVal(valeur)) - return mcs - -def cdiff(text1,text2): - return " ".join(difflib.context_diff(text1.splitlines(1),text2.splitlines(1))) - -class TestCase(unittest.TestCase): - app=None - def setUp(self): - if self.app == None: - self.app=appli.STANDALONE(version='v8') - pass - - def tearDown(self): - CONTEXT.unsetCurrentStep() - - i=0 - files= os.path.join(os.path.dirname(__file__),"*.comm") - for f in glob.glob(files): - for o in ('3','2','1','0','m'): - f=f[:-1]+o - if os.path.isfile(f):break - - i=i+1 - exec """def test%s(self,file="%s"): - "fichier:%s" - self.commtest(file) -""" % (i,f,f) - del i - - def commtest(self,file): - """ Test generique""" - #print file - name=os.path.splitext(os.path.basename(file))[0] - errfile=os.path.join(os.path.dirname(__file__),name+".err") - err="" - if os.path.isfile(errfile): - f=open(errfile) - err=f.read() - f.close() - j=self.app.openJDC(file=file) - assert j.cr.getMessException() == "" - - if err == "": - assert j.isValid(),j.report() - else: - txt=str(j.report()) - assert txt == err,cdiff(err,txt) - - CONTEXT.unsetCurrentStep() - j.supprime() - assert sys.getrefcount(j) == 2,sys.getrefcount(j) diff --git a/Tests/testcomm/titi.comm b/Tests/testcomm/titi.comm deleted file mode 100644 index a235be8a..00000000 --- a/Tests/testcomm/titi.comm +++ /dev/null @@ -1,69 +0,0 @@ -DEBUT() -YOUNG = DEFI_PARA_SENSI(VALE=1.) -FORC = DEFI_PARA_SENSI(VALE=1.) -MA=LIRE_MAILLAGE() -MA=DEFI_GROUP( reuse=MA, MAILLAGE=MA, - CREA_GROUP_NO=_F( - GROUP_MA = ( 'LP9P10', 'LP9P10B', - 'LP8P9', 'LP8P9B', - )) - ) - -MO=AFFE_MODELE( MAILLAGE=MA, - AFFE=_F( TOUT = 'OUI', - PHENOMENE = 'MECANIQUE', - MODELISATION = 'C_PLAN') - ) -ZERO = DEFI_CONSTANTE(VALE=0.) -NU = DEFI_CONSTANTE(VALE=0.3) -ALPHA = DEFI_CONSTANTE(VALE=0.) - -MAT=DEFI_MATERIAU(ELAS_FO=_F( E = YOUNG, NU = NU, - TEMP_DEF_ALPHA =20., - ALPHA = ALPHA, RHO=7800.,)) - -CHMAT=AFFE_MATERIAU( MAILLAGE=MA, - AFFE=_F( TOUT = 'OUI', - MATER = MAT) - ) - -CH=AFFE_CHAR_MECA_F( MODELE=MO, - FORCE_INTERNE=_F(TOUT='OUI',FY=FORC,), - DDL_IMPO=( - _F( GROUP_NO = 'LP8P9', - DX = ZERO), - _F( GROUP_NO = 'LP8P9B', - DX = ZERO), - _F( GROUP_NO = 'P11', - DY = ZERO)) - ) - -DEP=MECA_STATIQUE( MODELE=MO, CHAM_MATER=CHMAT, - SENSIBILITE = (FORC), - EXCIT=_F( CHARGE = CH), - ) - -DEP=CALC_ELEM(reuse=DEP,RESULTAT=DEP, - SENSIBILITE = (FORC), - OPTION=('EPSI_ELGA_DEPL','SIEF_ELGA_DEPL',),) - -FOND=DEFI_FOND_FISS( MAILLAGE=MA, - FOND_FISS=_F( GROUP_NO = ('P0',)), - NORMALE=(0., 1., 0.,) - ) - -THETA0=CALC_THETA( MODELE=MO, - THETA_2D=_F( GROUP_NO = ('P0',), - MODULE = 1., - R_INF = 3.75E-5, - R_SUP = 7.50E-5), - DIRECTION=(1., 0., 0.,) - ) - - -FIN() -MA1=LIRE_MAILLAGE() -MO1=AFFE_MODELE( MAILLAGE=MA1, AFFE=_F( TOUT = 'OUI', - PHENOMENE = 'MECANIQUE', MODELISATION = 'C_PLAN')) - -FIN() diff --git a/Tests/testcomm7/a.11 b/Tests/testcomm7/a.11 deleted file mode 100644 index 1723fcb9..00000000 --- a/Tests/testcomm7/a.11 +++ /dev/null @@ -1 +0,0 @@ -MM=LIRE_MAILLAGE() diff --git a/Tests/testcomm7/a.com0 b/Tests/testcomm7/a.com0 deleted file mode 100644 index 04d1cc20..00000000 --- a/Tests/testcomm7/a.com0 +++ /dev/null @@ -1,3 +0,0 @@ -POURSUITE() -MA=LIRE_MAILLAGE(INFO=inf) -FIN() diff --git a/Tests/testcomm7/a.comm b/Tests/testcomm7/a.comm deleted file mode 100644 index 665f63fe..00000000 --- a/Tests/testcomm7/a.comm +++ /dev/null @@ -1,5 +0,0 @@ -DEBUT() -inf=1 -p2=inf+1 -p3=sin(p2) -FIN() diff --git a/Tests/testcomm7/aa.comm b/Tests/testcomm7/aa.comm deleted file mode 100644 index 124141b4..00000000 --- a/Tests/testcomm7/aa.comm +++ /dev/null @@ -1,8 +0,0 @@ -DEBUT() -inf1=1 -MA=LIRE_MAILLAGE(INFO=inf1) -INCLUDE_MATERIAU( NOM_AFNOR='18MND5', TYPE_MODELE='REF', - VARIANTE='A', TYPE_VALE='NOMI', - NOM_MATER='MAT3', INFO=1 ) - -FIN() diff --git a/Tests/testcomm7/b.comm b/Tests/testcomm7/b.comm deleted file mode 100644 index 478973df..00000000 --- a/Tests/testcomm7/b.comm +++ /dev/null @@ -1,9 +0,0 @@ -DEBUT() -a=1 -fmt_raison='-'*80+""" - - Exception erreur_Fatale interceptee - Raison : %s - -"""+'-'*80+'\n' -FIN() diff --git a/Tests/testcomm7/c.comm b/Tests/testcomm7/c.comm deleted file mode 100644 index 36906c57..00000000 --- a/Tests/testcomm7/c.comm +++ /dev/null @@ -1,49 +0,0 @@ -from Numeric import cos -DEBUT() -RAYCRA=1. -EPCRA=0.1 -S_CR=3.1415*(RAYCRA**2-(RAYCRA-EPCRA)**2) -T_CR=3.1415 -NOMF="nomfichier" -n=2 - -MA=LIRE_MAILLAGE( ) - -MO=AFFE_MODELE( MAILLAGE=MA, - #test de validateur GEOM (typ=grma) avec grma derive de GEOM - AFFE=(_F(GROUP_MA = ('LI1'), - PHENOMENE = 'MECANIQUE', - MODELISATION = 'DIS_TR'), - ), - INFO=2,); - -carel=[0.]*78 - -CAREG=AFFE_CARA_ELEM(MODELE=MO, - DISCRET=_F(GROUP_MA=('LI1'), - CARA = 'K_TR_L', - VALE = carel, - REPERE='LOCAL' , ), - ORIENTATION=(_F(GROUP_MA=('LI1',), - CARA='VECT_Y', - VALE=(0.,0.,1.),),), - AFFE_FIBRE =( _F(GROUP_MA='CRAYON', COOR_AXE_POUTRE = (0.,0.,), CARA='SURFACE', VALE=( 0.,S_CR/4,)), - _F(GROUP_MA='CRAYON', COOR_AXE_POUTRE = (0.,0.,), CARA='SURFACE', VALE=( 0.,T_CR,)), - _F(GROUP_MA='CRAYON', COOR_AXE_POUTRE = (0.,sin(n*22.5*pi/180),), CARA='SURFACE', VALE=( 0.,T_CR/4,)), - _F(GROUP_MA='CRAYON', COOR_AXE_POUTRE = (0.,(cos(n*22.5*pi/180)),), CARA='SURFACE', VALE=( 0.,T_CR/4,)), - ), - ); - -DEFI_FICHIER(UNITE=50, FICHIER='./REPE_OUT/zzzz206a_resu.mail') -#test de validateur LongStr avec parametre instance de PARAMETRE -DEFI_FICHIER(UNITE=50, FICHIER=NOMF) -#test de validateur LongStr avec parametre instance de Formula -u=DEFI_FICHIER( FICHIER=NOMF*2) -DEFI_FICHIER (ACTION='LIBERER',UNITE=50) -#test de validateur d'objet entier (typ='I'), instance de la classe entier -DEFI_FICHIER (ACTION='LIBERER',UNITE=u) - -# test de validateur qui accepte tout (typ=assd) -IMPR_CO(CO=MA) - -FIN() diff --git a/Tests/testcomm7/d.comm b/Tests/testcomm7/d.comm deleted file mode 100644 index 06bd2405..00000000 --- a/Tests/testcomm7/d.comm +++ /dev/null @@ -1,4 +0,0 @@ -DEBUT() -a=1 -MA=LIRE_MAILLAGE() -FIN() diff --git a/Tests/testcomm7/e.comm b/Tests/testcomm7/e.comm deleted file mode 100644 index 15bf3261..00000000 --- a/Tests/testcomm7/e.comm +++ /dev/null @@ -1,70 +0,0 @@ -DEBUT() -MAYA=LIRE_MAILLAGE() - -MAYA=DEFI_GROUP( reuse=MAYA, MAILLAGE=MAYA, - CREA_GROUP_MA=_F( NOM = 'TOUT', TOUT = 'OUI')) - -BARRE1=AFFE_MODELE( MAILLAGE=MAYA, - AFFE=_F( GROUP_MA='SS1', - MODELISATION = 'POU_D_E', - PHENOMENE = 'MECANIQUE')) -# -MATERIO1=DEFI_MATERIAU( ELAS=_F( RHO = 1.E08, NU = 0.3, E = 1.E10)) - -MATERIO2=DEFI_MATERIAU( ELAS=_F( RHO = 0., NU = 0., E = 1.E15)) -# -CHMAT=AFFE_MATERIAU( MAILLAGE=MAYA,AFFE=( - #_F( TOUT = 'OUI', MATER = MATERIO1), - _F( GROUP_MA = 'SS1', MATER = MATERIO1), - _F( GROUP_MA = 'SS2', MATER = MATERIO1), - _F( GROUP_MA = 'SS3', MATER = MATERIO1), - _F( GROUP_MA = 'RIGIDE', MATER = MATERIO2), -)) # commentaire test - -CARA1=AFFE_CARA_ELEM( MODELE=BARRE1, - POUTRE=_F( - GROUP_MA = 'TOUT', - SECTION = 'CERCLE', - CARA = ('R', 'EP',), - VALE = (0.1, 0.01,))) - -GUIDAGE1=AFFE_CHAR_MECA( MODELE=BARRE1,DDL_IMPO=( - _F( GROUP_MA='SS1', - DX = 0., DZ = 0., DRX = 0., DRY = 0.), - _F( GROUP_NO = 'L1', DY = 0., DRZ = 0.), - )) - -K_ELEM1=CALC_MATR_ELEM( MODELE=BARRE1, - CARA_ELEM=CARA1, - CHAM_MATER=CHMAT, - OPTION='RIGI_MECA', - CHARGE=GUIDAGE1) - -NUM1=NUME_DDL( MATR_RIGI=K_ELEM1) - -# -K_ASSE1=ASSE_MATRICE( MATR_ELEM=K_ELEM1, - NUME_DDL=NUM1) - -MODESTA1=MODE_STATIQUE( MATR_RIGI=K_ASSE1, - MODE_STAT=_F( - GROUP_NO=('L12'), - AVEC_CMP = ('DY','DRZ'), - )) - -# parse: -affectation - -DS1=[None]*5 -DS2=[None]*5 -DS3=[None]*5 -DS4=[None]*5 -CHS1=[None]*5 -CHS2=[None]*5 - -# parse: +affectation - -#for k in range(1,5): -# DS1[k] = CREA_CHAMP( OPERATION='EXTR', TYPE_CHAM='NOEU_DEPL_R', -# RESULTAT= MODESTA1, NUME_ORDRE=k, NOM_CHAM = 'DEPL'); - -FIN() diff --git a/Tests/testcomm7/efica01a.11 b/Tests/testcomm7/efica01a.11 deleted file mode 100644 index bec37b5b..00000000 --- a/Tests/testcomm7/efica01a.11 +++ /dev/null @@ -1,19 +0,0 @@ -DEPL2 = FORMULE(NOM_PARA='INST',VALE='sin(OMEGAA*INST)/(OMEGAA**xx)') -DEPLACE2=CALC_FONC_INTERP( FONCTION=DEPL2, - LIST_PARA=L_INST, - NOM_PARA='INST', - PROL_DROITE='LINEAIRE', - PROL_GAUCHE='LINEAIRE', - NOM_RESU='DEPL' ) - -MONO_X=CALC_CHAR_SEISME( MATR_MASS=MASSE, - DIRECTION=( 1., 0., 0.,), - MONO_APPUI='OUI' ) - - -MACRO_PROJ_BASE(BASE=MODE_MEC,MATR_ASSE_GENE=( - _F( MATRICE = CO("MASS_GEN"), MATR_ASSE = MASSE), - _F( MATRICE = CO("RIGI_GEN"), MATR_ASSE = RIGIDITE)), - VECT_ASSE_GENE=_F( VECTEUR = CO("VECT_X"), VECT_ASSE = MONO_X) - ) - diff --git a/Tests/testcomm7/efica01a.com0 b/Tests/testcomm7/efica01a.com0 deleted file mode 100755 index 25134e98..00000000 --- a/Tests/testcomm7/efica01a.com0 +++ /dev/null @@ -1,49 +0,0 @@ -POURSUITE(CODE=_F( NOM = 'EFICA01A')) - -INCLUDE_MATERIAU( NOM_AFNOR='18MND5', TYPE_MODELE='REF', - VARIANTE='A', TYPE_VALE='NOMI', - NOM_MATER='MAT3', INFO=1 ) - -CHMAT3=AFFE_MATERIAU( MAILLAGE=MAILLA3, - AFFE=_F( TOUT='OUI', MATER = MAT3, TEMP_REF = 20.)) - -riginor = 2.88E7 - -TRAN_GE2=DYNA_TRAN_MODAL( MASS_GENE=MGEN_BIC, RIGI_GENE=RGEN_BIC, - METHODE='EULER', - AMOR_REDUIT=( 0.07, 0.07, ), - MODE_STAT=MSTA_BIC,EXCIT=( - _F( VECT_GENE = VECT_X1, ACCE = ACCELER1, - MULT_APPUI = 'OUI', - DIRECTION = ( 1., 0., 0.,), NOEUD = 'NO1', - VITE = VITESSE1, DEPL = DEPLACE1), - _F( VECT_GENE = VECT_X2, ACCE = ACCELER2, - MULT_APPUI = 'OUI', - DIRECTION = ( 1., 0., 0.,), NOEUD = 'NO11', - VITE = VITESSE2, DEPL = DEPLACE2)), - CHOC=_F( GROUP_NO_1 = 'MASSES1', - GROUP_NO_2 = 'MASSES2', - OBSTACLE = GRILLE, - INTITULE = 'NO2/NO12', - NORM_OBST = (0., 0., 1.,), - DIST_1 = 0.4495, - DIST_2 = 0.4495, - RIGI_NOR = riginor, - AMOR_NOR = 0., - RIGI_TAN = 0., - COULOMB = 0.), - INCREMENT=_F( INST_INIT = 0., INST_FIN = 1., PAS = 0.00025), - ARCHIVAGE=_F( PAS_ARCH = 8) - ) - -LISTIMP=DEFI_LIST_REEL( DEBUT=0., - INTERVALLE=_F( JUSQU_A = 1., NOMBRE = 500)) - -RESUA1=REST_BASE_PHYS( RESU_GENE=TRAN_GE1, - LIST_INST=LISTIMP, - INTERPOL='LIN', - NOM_CHAM='DEPL', - MULT_APPUI='OUI' - ) - -FIN() diff --git a/Tests/testcomm7/efica01a.comm b/Tests/testcomm7/efica01a.comm deleted file mode 100755 index 20eea866..00000000 --- a/Tests/testcomm7/efica01a.comm +++ /dev/null @@ -1,275 +0,0 @@ -# MODIF DATE 20/09/2004 AUTEUR DURAND C.DURAND -# TITRE TEST DE NON REGRESSION DE L IHM EFICAS - DERIVE DE SDND102A -# CONFIGURATION MANAGEMENT OF EDF VERSION -# ====================================================================== -# COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# Ce cas test est gere en configuration dans la base ASTER, il sert de -# modele pour prononcer la recette de l IHM d EFICAS : l objectif est de -# pouvoir recreer ce test a l identique dans EFICAS a partir d une page -# blanche. -# On a donc essaye d y placer toutes les commandes un peu particulieres -# du langage de commandes d ASTER -# -# Il s agit en fait du test SDND102A auquel on a ajoute : -# la definition d un parametre (VAL) -# l inclusion d un fichier (INCLUDE) -# une poursuite (POURSUITE) -# Il contient ainsi : -# des parametres, des formules, des macros, des mots cles facteurs repetes -# (y compris conditionnes par des regles : calc_fonction / COMB), -# des blocs (mode_iter_simult,calc_char_seisme), un defi_valeur, un parametre. -# -# -# Il faudra y associer quelques recommandations pour la recette : -# - verifier qu en ouvrant le .com0, il demande bien a browser le .comm puis, en cascade, le .11 -# - verifier qu on peut bien supprimer une commande, un mot cle simple et facteur -# - verifier les acces a la doc -# -# - - -DEBUT(CODE=_F(NOM='EFICA01A',NIV_PUB_WEB='INTERNET',VISU_EFICAS='NON'),) - -MAILLAGE=LIRE_MAILLAGE() - -MAILLAGE=DEFI_GROUP(reuse=MAILLAGE, - MAILLAGE=MAILLAGE, - CREA_GROUP_NO=(_F(NOEUD='NO2', - NOM='MASSES',), - _F(NOEUD='NO1', - NOM='ENCASTRE',),),) - -MAILLA2=LIRE_MAILLAGE(UNITE=21,) - -MODELE=AFFE_MODELE(MAILLAGE=MAILLAGE, - AFFE=(_F(GROUP_MA='RESSORT', - PHENOMENE='MECANIQUE', - MODELISATION='DIS_T',), - _F(GROUP_NO='MASSES', - PHENOMENE='MECANIQUE', - MODELISATION='DIS_T',),),) - -BICHOC=AFFE_MODELE(MAILLAGE=MAILLA2, - AFFE=(_F(GROUP_MA='RESSORTS', - PHENOMENE='MECANIQUE', - MODELISATION='DIS_T',), - _F(GROUP_NO=('MASSES1','MASSES2',), - PHENOMENE='MECANIQUE', - MODELISATION='DIS_T',),),) -VAL = 98696.0 - - -CARA_ELE=AFFE_CARA_ELEM(MODELE=MODELE, - DISCRET=(_F(GROUP_MA='RESSORT', - REPERE='GLOBAL', - CARA='K_T_D_L', - VALE=(VAL,0.0,0.0,),), - _F(GROUP_NO='MASSES', - CARA='M_T_D_N', - VALE=25.0,),),) - -CARA_BIC=AFFE_CARA_ELEM(MODELE=BICHOC, - DISCRET=(_F(GROUP_MA='RESSORTS', - REPERE='GLOBAL', - CARA='K_T_D_L', - VALE=(VAL,0.0,0.0,),), - _F(GROUP_NO='MASSES1', - CARA='M_T_D_N', - VALE=25.0,), - _F(GROUP_NO='MASSES2', - CARA='M_T_D_N', - VALE=25.0,),),) - -CON_LIM=AFFE_CHAR_MECA(MODELE=MODELE, - DDL_IMPO=(_F(GROUP_NO='ENCASTRE', - DX=0.0, - DY=0.0, - DZ=0.0,), - _F(GROUP_NO='MASSES', - DY=0.0, - DZ=0.0,),),) - -CL_BICHO=AFFE_CHAR_MECA(MODELE=BICHOC, - DDL_IMPO=(_F(GROUP_NO='ENCBICHO', - DX=0.0, - DY=0.0, - DZ=0.0,), - _F(GROUP_NO=('MASSES1','MASSES2',), - DY=0.0, - DZ=0.0,),),) - -MACRO_MATR_ASSE(MODELE=MODELE, - CARA_ELEM=CARA_ELE, - CHARGE=CON_LIM, - NUME_DDL=CO('NUMEDDL'), - MATR_ASSE=(_F(MATRICE=CO('RIGIDITE'), - OPTION='RIGI_MECA',), - _F(MATRICE=CO('MASSE'), - OPTION='MASS_MECA',),),) - -MACRO_MATR_ASSE(MODELE=BICHOC, - CARA_ELEM=CARA_BIC, - CHARGE=CL_BICHO, - NUME_DDL=CO('NUMDDLC'), - MATR_ASSE=(_F(MATRICE=CO('RIGI_BIC'), - OPTION='RIGI_MECA',), - _F(MATRICE=CO('MASS_BIC'), - OPTION='MASS_MECA',),),) - -MODE_MEC=MODE_ITER_SIMULT(MATR_A=RIGIDITE, - MATR_B=MASSE,) - -MODE_MEC=NORM_MODE(reuse =MODE_MEC, - MODE=MODE_MEC, - NORME='MASS_GENE',) - -MODE_BIC=MODE_ITER_SIMULT(MATR_A=RIGI_BIC, - MATR_B=MASS_BIC, - METHODE='JACOBI', - OPTION='SANS', - CALC_FREQ=_F(OPTION='BANDE', - FREQ=(1.0,10.0,),),) - -MODE_BIC=NORM_MODE(reuse =MODE_BIC, - MODE=MODE_BIC, - NORME='MASS_GENE',) - -MODE_STA=MODE_STATIQUE(MATR_RIGI=RIGIDITE, - MATR_MASS=MASSE, - MODE_STAT=_F(TOUT='OUI', - AVEC_CMP='DX',),) - -MSTA_BIC=MODE_STATIQUE(MATR_RIGI=RIGI_BIC, - MATR_MASS=MASS_BIC, - MODE_STAT=_F(TOUT='OUI', - AVEC_CMP='DX',),) - -L_INST=DEFI_LIST_REEL(DEBUT=0.0, - INTERVALLE=_F(JUSQU_A=1.0, - PAS=1.E-4,),) - -OMEGAA=2.*pi*10. - -ACCE1 = FORMULE(VALE = 'sin(OMEGAA*INST)', - NOM_PARA='INST') - -ACCELER1=CALC_FONC_INTERP(FONCTION=ACCE1, - NOM_RESU='ACCE', - LIST_PARA=L_INST, - NOM_PARA = 'INST', - PROL_DROITE='LINEAIRE', - PROL_GAUCHE='LINEAIRE',) - -ACCE2 = FORMULE(VALE = '-sin(OMEGAA*INST)', - NOM_PARA='INST') - -ACCELER2=CALC_FONC_INTERP(FONCTION=ACCE2, - NOM_RESU='ACCE', - LIST_PARA=L_INST, - NOM_PARA = 'INST', - PROL_DROITE='LINEAIRE', - PROL_GAUCHE='LINEAIRE',) - -VITE1 = FORMULE(VALE = '-cos(OMEGAA*INST)/OMEGAA', - NOM_PARA='INST') - -VITESSE1=CALC_FONC_INTERP(FONCTION=VITE1, - NOM_RESU='VITE', - LIST_PARA=L_INST, - NOM_PARA = 'INST', - PROL_DROITE='LINEAIRE', - PROL_GAUCHE='LINEAIRE',) - -DEPL1 = FORMULE(VALE = '-sin(OMEGAA*INST)/(OMEGAA**2)', - NOM_PARA='INST') - -DEPLACE1=CALC_FONC_INTERP(FONCTION=DEPL1, - NOM_RESU='DEPL', - LIST_PARA=L_INST, - NOM_PARA = 'INST', - PROL_DROITE='LINEAIRE', - PROL_GAUCHE='LINEAIRE',) - -VITE2 = FORMULE(VALE = 'cos(OMEGAA*INST)/OMEGAA', - NOM_PARA='INST') - -VITESSE2=CALC_FONC_INTERP(FONCTION=VITE2, - NOM_RESU='VITE', - LIST_PARA=L_INST, - NOM_PARA = 'INST', - PROL_DROITE='LINEAIRE', - PROL_GAUCHE='LINEAIRE',) - -xx=2 - -INCLUDE(UNITE=11, - INFO=1,) - -MUR=DEFI_OBSTACLE(TYPE='PLAN_Z',) - -TRAN_GE1=DYNA_TRAN_MODAL(METHODE='EULER', - MASS_GENE=MASS_GEN, - RIGI_GENE=RIGI_GEN, - AMOR_REDUIT=0.07, - MODE_STAT=MODE_STA, - INCREMENT=_F(INST_INIT=0.0, - INST_FIN=1.0, - PAS=2.0E-4,), - ARCHIVAGE=_F(PAS_ARCH=8,), - EXCIT=_F(VECT_GENE=VECT_X, - ACCE=ACCELER1, - VITE=VITESSE1, - DEPL=DEPLACE1, - MULT_APPUI='OUI', - DIRECTION=(1.0,0.0,0.0,), - NOEUD='NO1',), - CHOC=_F(INTITULE='NO2/MUR', - GROUP_NO_1='MASSES', - OBSTACLE=MUR, - ORIG_OBST=(-1.0,0.0,0.0,), - NORM_OBST=(0.0,0.0,1.0,), - JEU=1.1005, - RIGI_NOR=5.76E7, - AMOR_NOR=0.0, - RIGI_TAN=0.0, - COULOMB=0.0,),) - -MULT_X1=CALC_CHAR_SEISME(MATR_MASS=MASS_BIC, - DIRECTION=(1.0,0.0,0.0,), - MODE_STAT=MSTA_BIC, - NOEUD='NO1',) - -MULT_X2=CALC_CHAR_SEISME(MATR_MASS=MASS_BIC, - DIRECTION=(1.0,0.0,0.0,), - MODE_STAT=MSTA_BIC, - NOEUD='NO11',) - -MACRO_PROJ_BASE(BASE=MODE_BIC, - MATR_ASSE_GENE=(_F(MATRICE=CO('MGEN_BIC'), - MATR_ASSE=MASS_BIC,), - _F(MATRICE=CO('RGEN_BIC'), - MATR_ASSE=RIGI_BIC,),), - VECT_ASSE_GENE=(_F(VECTEUR=CO('VECT_X1'), - VECT_ASSE=MULT_X1,), - _F(VECTEUR=CO('VECT_X2'), - VECT_ASSE=MULT_X2,),),) - -GRILLE=DEFI_OBSTACLE(TYPE='BI_PLAN_Z',) - -MAILLA3=LIRE_MAILLAGE(UNITE=22,) - -FIN() diff --git a/Tests/testcomm7/efica01b.11 b/Tests/testcomm7/efica01b.11 deleted file mode 100644 index bec37b5b..00000000 --- a/Tests/testcomm7/efica01b.11 +++ /dev/null @@ -1,19 +0,0 @@ -DEPL2 = FORMULE(NOM_PARA='INST',VALE='sin(OMEGAA*INST)/(OMEGAA**xx)') -DEPLACE2=CALC_FONC_INTERP( FONCTION=DEPL2, - LIST_PARA=L_INST, - NOM_PARA='INST', - PROL_DROITE='LINEAIRE', - PROL_GAUCHE='LINEAIRE', - NOM_RESU='DEPL' ) - -MONO_X=CALC_CHAR_SEISME( MATR_MASS=MASSE, - DIRECTION=( 1., 0., 0.,), - MONO_APPUI='OUI' ) - - -MACRO_PROJ_BASE(BASE=MODE_MEC,MATR_ASSE_GENE=( - _F( MATRICE = CO("MASS_GEN"), MATR_ASSE = MASSE), - _F( MATRICE = CO("RIGI_GEN"), MATR_ASSE = RIGIDITE)), - VECT_ASSE_GENE=_F( VECTEUR = CO("VECT_X"), VECT_ASSE = MONO_X) - ) - diff --git a/Tests/testcomm7/efica01b.comm b/Tests/testcomm7/efica01b.comm deleted file mode 100755 index 20eea866..00000000 --- a/Tests/testcomm7/efica01b.comm +++ /dev/null @@ -1,275 +0,0 @@ -# MODIF DATE 20/09/2004 AUTEUR DURAND C.DURAND -# TITRE TEST DE NON REGRESSION DE L IHM EFICAS - DERIVE DE SDND102A -# CONFIGURATION MANAGEMENT OF EDF VERSION -# ====================================================================== -# COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# Ce cas test est gere en configuration dans la base ASTER, il sert de -# modele pour prononcer la recette de l IHM d EFICAS : l objectif est de -# pouvoir recreer ce test a l identique dans EFICAS a partir d une page -# blanche. -# On a donc essaye d y placer toutes les commandes un peu particulieres -# du langage de commandes d ASTER -# -# Il s agit en fait du test SDND102A auquel on a ajoute : -# la definition d un parametre (VAL) -# l inclusion d un fichier (INCLUDE) -# une poursuite (POURSUITE) -# Il contient ainsi : -# des parametres, des formules, des macros, des mots cles facteurs repetes -# (y compris conditionnes par des regles : calc_fonction / COMB), -# des blocs (mode_iter_simult,calc_char_seisme), un defi_valeur, un parametre. -# -# -# Il faudra y associer quelques recommandations pour la recette : -# - verifier qu en ouvrant le .com0, il demande bien a browser le .comm puis, en cascade, le .11 -# - verifier qu on peut bien supprimer une commande, un mot cle simple et facteur -# - verifier les acces a la doc -# -# - - -DEBUT(CODE=_F(NOM='EFICA01A',NIV_PUB_WEB='INTERNET',VISU_EFICAS='NON'),) - -MAILLAGE=LIRE_MAILLAGE() - -MAILLAGE=DEFI_GROUP(reuse=MAILLAGE, - MAILLAGE=MAILLAGE, - CREA_GROUP_NO=(_F(NOEUD='NO2', - NOM='MASSES',), - _F(NOEUD='NO1', - NOM='ENCASTRE',),),) - -MAILLA2=LIRE_MAILLAGE(UNITE=21,) - -MODELE=AFFE_MODELE(MAILLAGE=MAILLAGE, - AFFE=(_F(GROUP_MA='RESSORT', - PHENOMENE='MECANIQUE', - MODELISATION='DIS_T',), - _F(GROUP_NO='MASSES', - PHENOMENE='MECANIQUE', - MODELISATION='DIS_T',),),) - -BICHOC=AFFE_MODELE(MAILLAGE=MAILLA2, - AFFE=(_F(GROUP_MA='RESSORTS', - PHENOMENE='MECANIQUE', - MODELISATION='DIS_T',), - _F(GROUP_NO=('MASSES1','MASSES2',), - PHENOMENE='MECANIQUE', - MODELISATION='DIS_T',),),) -VAL = 98696.0 - - -CARA_ELE=AFFE_CARA_ELEM(MODELE=MODELE, - DISCRET=(_F(GROUP_MA='RESSORT', - REPERE='GLOBAL', - CARA='K_T_D_L', - VALE=(VAL,0.0,0.0,),), - _F(GROUP_NO='MASSES', - CARA='M_T_D_N', - VALE=25.0,),),) - -CARA_BIC=AFFE_CARA_ELEM(MODELE=BICHOC, - DISCRET=(_F(GROUP_MA='RESSORTS', - REPERE='GLOBAL', - CARA='K_T_D_L', - VALE=(VAL,0.0,0.0,),), - _F(GROUP_NO='MASSES1', - CARA='M_T_D_N', - VALE=25.0,), - _F(GROUP_NO='MASSES2', - CARA='M_T_D_N', - VALE=25.0,),),) - -CON_LIM=AFFE_CHAR_MECA(MODELE=MODELE, - DDL_IMPO=(_F(GROUP_NO='ENCASTRE', - DX=0.0, - DY=0.0, - DZ=0.0,), - _F(GROUP_NO='MASSES', - DY=0.0, - DZ=0.0,),),) - -CL_BICHO=AFFE_CHAR_MECA(MODELE=BICHOC, - DDL_IMPO=(_F(GROUP_NO='ENCBICHO', - DX=0.0, - DY=0.0, - DZ=0.0,), - _F(GROUP_NO=('MASSES1','MASSES2',), - DY=0.0, - DZ=0.0,),),) - -MACRO_MATR_ASSE(MODELE=MODELE, - CARA_ELEM=CARA_ELE, - CHARGE=CON_LIM, - NUME_DDL=CO('NUMEDDL'), - MATR_ASSE=(_F(MATRICE=CO('RIGIDITE'), - OPTION='RIGI_MECA',), - _F(MATRICE=CO('MASSE'), - OPTION='MASS_MECA',),),) - -MACRO_MATR_ASSE(MODELE=BICHOC, - CARA_ELEM=CARA_BIC, - CHARGE=CL_BICHO, - NUME_DDL=CO('NUMDDLC'), - MATR_ASSE=(_F(MATRICE=CO('RIGI_BIC'), - OPTION='RIGI_MECA',), - _F(MATRICE=CO('MASS_BIC'), - OPTION='MASS_MECA',),),) - -MODE_MEC=MODE_ITER_SIMULT(MATR_A=RIGIDITE, - MATR_B=MASSE,) - -MODE_MEC=NORM_MODE(reuse =MODE_MEC, - MODE=MODE_MEC, - NORME='MASS_GENE',) - -MODE_BIC=MODE_ITER_SIMULT(MATR_A=RIGI_BIC, - MATR_B=MASS_BIC, - METHODE='JACOBI', - OPTION='SANS', - CALC_FREQ=_F(OPTION='BANDE', - FREQ=(1.0,10.0,),),) - -MODE_BIC=NORM_MODE(reuse =MODE_BIC, - MODE=MODE_BIC, - NORME='MASS_GENE',) - -MODE_STA=MODE_STATIQUE(MATR_RIGI=RIGIDITE, - MATR_MASS=MASSE, - MODE_STAT=_F(TOUT='OUI', - AVEC_CMP='DX',),) - -MSTA_BIC=MODE_STATIQUE(MATR_RIGI=RIGI_BIC, - MATR_MASS=MASS_BIC, - MODE_STAT=_F(TOUT='OUI', - AVEC_CMP='DX',),) - -L_INST=DEFI_LIST_REEL(DEBUT=0.0, - INTERVALLE=_F(JUSQU_A=1.0, - PAS=1.E-4,),) - -OMEGAA=2.*pi*10. - -ACCE1 = FORMULE(VALE = 'sin(OMEGAA*INST)', - NOM_PARA='INST') - -ACCELER1=CALC_FONC_INTERP(FONCTION=ACCE1, - NOM_RESU='ACCE', - LIST_PARA=L_INST, - NOM_PARA = 'INST', - PROL_DROITE='LINEAIRE', - PROL_GAUCHE='LINEAIRE',) - -ACCE2 = FORMULE(VALE = '-sin(OMEGAA*INST)', - NOM_PARA='INST') - -ACCELER2=CALC_FONC_INTERP(FONCTION=ACCE2, - NOM_RESU='ACCE', - LIST_PARA=L_INST, - NOM_PARA = 'INST', - PROL_DROITE='LINEAIRE', - PROL_GAUCHE='LINEAIRE',) - -VITE1 = FORMULE(VALE = '-cos(OMEGAA*INST)/OMEGAA', - NOM_PARA='INST') - -VITESSE1=CALC_FONC_INTERP(FONCTION=VITE1, - NOM_RESU='VITE', - LIST_PARA=L_INST, - NOM_PARA = 'INST', - PROL_DROITE='LINEAIRE', - PROL_GAUCHE='LINEAIRE',) - -DEPL1 = FORMULE(VALE = '-sin(OMEGAA*INST)/(OMEGAA**2)', - NOM_PARA='INST') - -DEPLACE1=CALC_FONC_INTERP(FONCTION=DEPL1, - NOM_RESU='DEPL', - LIST_PARA=L_INST, - NOM_PARA = 'INST', - PROL_DROITE='LINEAIRE', - PROL_GAUCHE='LINEAIRE',) - -VITE2 = FORMULE(VALE = 'cos(OMEGAA*INST)/OMEGAA', - NOM_PARA='INST') - -VITESSE2=CALC_FONC_INTERP(FONCTION=VITE2, - NOM_RESU='VITE', - LIST_PARA=L_INST, - NOM_PARA = 'INST', - PROL_DROITE='LINEAIRE', - PROL_GAUCHE='LINEAIRE',) - -xx=2 - -INCLUDE(UNITE=11, - INFO=1,) - -MUR=DEFI_OBSTACLE(TYPE='PLAN_Z',) - -TRAN_GE1=DYNA_TRAN_MODAL(METHODE='EULER', - MASS_GENE=MASS_GEN, - RIGI_GENE=RIGI_GEN, - AMOR_REDUIT=0.07, - MODE_STAT=MODE_STA, - INCREMENT=_F(INST_INIT=0.0, - INST_FIN=1.0, - PAS=2.0E-4,), - ARCHIVAGE=_F(PAS_ARCH=8,), - EXCIT=_F(VECT_GENE=VECT_X, - ACCE=ACCELER1, - VITE=VITESSE1, - DEPL=DEPLACE1, - MULT_APPUI='OUI', - DIRECTION=(1.0,0.0,0.0,), - NOEUD='NO1',), - CHOC=_F(INTITULE='NO2/MUR', - GROUP_NO_1='MASSES', - OBSTACLE=MUR, - ORIG_OBST=(-1.0,0.0,0.0,), - NORM_OBST=(0.0,0.0,1.0,), - JEU=1.1005, - RIGI_NOR=5.76E7, - AMOR_NOR=0.0, - RIGI_TAN=0.0, - COULOMB=0.0,),) - -MULT_X1=CALC_CHAR_SEISME(MATR_MASS=MASS_BIC, - DIRECTION=(1.0,0.0,0.0,), - MODE_STAT=MSTA_BIC, - NOEUD='NO1',) - -MULT_X2=CALC_CHAR_SEISME(MATR_MASS=MASS_BIC, - DIRECTION=(1.0,0.0,0.0,), - MODE_STAT=MSTA_BIC, - NOEUD='NO11',) - -MACRO_PROJ_BASE(BASE=MODE_BIC, - MATR_ASSE_GENE=(_F(MATRICE=CO('MGEN_BIC'), - MATR_ASSE=MASS_BIC,), - _F(MATRICE=CO('RGEN_BIC'), - MATR_ASSE=RIGI_BIC,),), - VECT_ASSE_GENE=(_F(VECTEUR=CO('VECT_X1'), - VECT_ASSE=MULT_X1,), - _F(VECTEUR=CO('VECT_X2'), - VECT_ASSE=MULT_X2,),),) - -GRILLE=DEFI_OBSTACLE(TYPE='BI_PLAN_Z',) - -MAILLA3=LIRE_MAILLAGE(UNITE=22,) - -FIN() diff --git a/Tests/testcomm7/f.comm b/Tests/testcomm7/f.comm deleted file mode 100644 index d15a6179..00000000 --- a/Tests/testcomm7/f.comm +++ /dev/null @@ -1,18 +0,0 @@ -from Numeric import size - -DEBUT() - -# Definition des parametres de l'excitation sinusoidale -freq=1500.0 -periode=1.0/freq -pas=periode/100.0 - -LISTTM=DEFI_LIST_REEL(DEBUT=0.0*periode, - INTERVALLE=_F(JUSQU_A=100.0*periode, - PAS=pas,),); - -LISTRD=DEFI_LIST_REEL(DEBUT=(98.0)*periode+pas, - INTERVALLE=_F(JUSQU_A=(100.0)*periode, - PAS=pas,),); - -FIN() diff --git a/Tests/testcomm7/forma12c.22 b/Tests/testcomm7/forma12c.22 deleted file mode 100755 index 1452b8f2..00000000 --- a/Tests/testcomm7/forma12c.22 +++ /dev/null @@ -1,5616 +0,0 @@ -ACCELH1=DEFI_FONCTION(NOM_PARA='INST', - VALE= - ( - 0.0 , 0.0 , - 5.000000000000000E-03 , 1.384945820672120E-02 , - 1.000000000000000E-02 , 1.382919843991470E-02 , - 1.500000000000000E-02 , 1.382973754982250E-02 , - 2.000000000000000E-02 , 1.383338152282280E-02 , - 2.500000000000000E-02 , 1.393648950771420E-02 , - 3.000000000000000E-02 , 1.434779984741860E-02 , - 3.500000000000000E-02 , 1.512950713231800E-02 , - 4.000000000000000E-02 , 1.614535272002630E-02 , - 4.500000000000000E-02 , 1.731995083544010E-02 , - 5.000000000000000E-02 , 1.859624623558040E-02 , - 5.500000000000000E-02 , 1.953967672923960E-02 , - 6.000000000000000E-02 , 1.941781110418540E-02 , - 6.500000000000000E-02 , 1.786343830924350E-02 , - 7.000000000000001E-02 , 1.516191250319950E-02 , - 7.500000000000000E-02 , 1.188464893531830E-02 , - 8.000000000000000E-02 , 8.604671706807470E-03 , - 8.500000000000001E-02 , 5.843238016204390E-03 , - 9.000000000000000E-02 , 3.844393537029640E-03 , - 9.500000000000000E-02 , 2.578831760615030E-03 , - 0.1 , 2.285337760842440E-03 , - 0.105 , 3.429647164261850E-03 , - 0.11 , 5.693975593542530E-03 , - 0.115 , 8.059677068797949E-03 , - 0.12 , 1.074690536157120E-02 , - 0.125 , 1.570430547663250E-02 , - 0.13 , 2.370085802024690E-02 , - 0.135 , 3.228248728765840E-02 , - 0.14 , 3.854420890726100E-02 , - 0.145 , 4.255105840524570E-02 , - 0.15 , 4.542487497977820E-02 , - 0.155 , 4.522394778102340E-02 , - 0.16 , 3.829095514459380E-02 , - 0.165 , 2.483633029107950E-02 , - 0.17 , 9.962011825963081E-03 , - 0.175 , -1.690338763720670E-03 , - 0.18 , -9.628765294085771E-03 , - 0.185 , -1.491533457160890E-02 , - 0.19 , -1.675574249783150E-02 , - 0.195 , -1.397302390604700E-02 , - 0.2 , -8.394257392452909E-03 , - 0.205 , -4.066198655663860E-03 , - 0.21 , -2.824511823738000E-03 , - 0.215 , -2.617183840945080E-03 , - 0.22 , -1.417346427510000E-03 , - 0.225 , -1.143002215953450E-03 , - 0.23 , -5.114862179520550E-03 , - 0.235 , -1.257393226409120E-02 , - 0.24 , -2.009825306788950E-02 , - 0.245 , -2.922606396367100E-02 , - 0.25 , -4.681398923377460E-02 , - 0.255 , -7.440515051138789E-02 , - 0.26 , -0.10334790104033 , - 0.265 , -0.12586697159281 , - 0.27 , -0.14387794464775 , - 0.275 , -0.15814759425273 , - 0.28 , -0.15645166862504 , - 0.285 , -0.12686021613717 , - 0.29 , -7.870738657620450E-02 , - 0.295 , -3.337529798013800E-02 , - 0.3 , 4.960493246599410E-03 , - 0.305 , 5.045559596258160E-02 , - 0.31 , 0.105226085321393 , - 0.315 , 0.149377859842677 , - 0.32 , 0.169404090056596 , - 0.325 , 0.175768658339062 , - 0.33 , 0.179795570216475 , - 0.335 , 0.172362231098084 , - 0.34 , 0.14178782193451 , - 0.345 , 9.600009720172401E-02 , - 0.35 , 4.821844915823450E-02 , - 0.355 , -4.337533256019430E-03 , - 0.36 , -6.584719156367530E-02 , - 0.365 , -0.11836425870338 , - 0.37 , -0.13733576068719 , - 0.375 , -0.12352979806305 , - 0.38 , -9.647458189678811E-02 , - 0.385 , -6.215705630868780E-02 , - 0.39 , -1.230416228554950E-02 , - 0.395 , 4.641921735700460E-02 , - 0.4 , 8.859572962085120E-02 , - 0.405 , 9.988862929152570E-02 , - 0.41 , 9.014811266775360E-02 , - 0.415 , 7.203047941527541E-02 , - 0.42 , 4.502398610270280E-02 , - 0.425 , 6.797639622722420E-03 , - 0.43 , -3.515202910758360E-02 , - 0.435 , -7.008994299356780E-02 , - 0.44 , -9.184195885494270E-02 , - 0.445 , -9.764578216442391E-02 , - 0.45 , -8.980199943709211E-02 , - 0.455 , -7.844678621890611E-02 , - 0.46 , -7.092648374585479E-02 , - 0.465 , -5.916134617989510E-02 , - 0.47 , -2.956966177372460E-02 , - 0.475 , 1.671374368998170E-02 , - 0.48 , 6.681414337976969E-02 , - 0.485 , 0.115921896874314 , - 0.49 , 0.168522035427266 , - 0.495 , 0.222448388891968 , - 0.5 , 0.268501345352512 , - 0.505 , 0.304492502191568 , - 0.51 , 0.333201521434027 , - 0.515 , 0.348912055073103 , - 0.52 , 0.344336194210705 , - 0.525 , 0.328357457992693 , - 0.53 , 0.315639958020935 , - 0.535 , 0.298753776631336 , - 0.54 , 0.252828404979867 , - 0.545 , 0.169993172714936 , - 0.55 , 6.727059721322880E-02 , - 0.555 , -4.209915010595060E-02 , - 0.56 , -0.16027870746769 , - 0.565 , -0.28051898189652 , - 0.57 , -0.37473468426368 , - 0.575 , -0.41761046311846 , - 0.58 , -0.40704487960185 , - 0.585 , -0.35317881167887 , - 0.59 , -0.26473865427636 , - 0.595 , -0.15439054042026 , - 0.6 , -4.069603171914010E-02 , - 0.605 , 6.408493301865420E-02 , - 0.61 , 0.155029022019142 , - 0.615 , 0.221244653075603 , - 0.62 , 0.250448298949297 , - 0.625 , 0.2498283906321 , - 0.63 , 0.239493456134941 , - 0.635 , 0.218886088833644 , - 0.64 , 0.164337222785859 , - 0.645 , 7.035013146739150E-02 , - 0.65 , -3.065825126167990E-02 , - 0.655 , -0.10313193025801 , - 0.66 , -0.14127712726139 , - 0.665 , -0.15425776005121 , - 0.67 , -0.14167316851909 , - 0.675 , -0.10137097186279 , - 0.68 , -4.328536800004760E-02 , - 0.685 , 2.048801937177380E-02 , - 0.69 , 8.302000641121640E-02 , - 0.695 , 0.129331142992423 , - 0.7 , 0.139601455006784 , - 0.705 , 0.121227983591054 , - 0.71 , 0.113005236382458 , - 0.715 , 0.1379818615802 , - 0.72 , 0.176308826146499 , - 0.725 , 0.205232483015008 , - 0.73 , 0.236700670002903 , - 0.735 , 0.28518726999873 , - 0.74 , 0.325155532319882 , - 0.745 , 0.319888795846513 , - 0.75 , 0.275055725375209 , - 0.755 , 0.223753796143942 , - 0.76 , 0.172075077677344 , - 0.765 , 0.102710116433296 , - 0.77 , 2.458158105150330E-02 , - 0.775 , -2.772090362464080E-02 , - 0.78 , -4.579263759539020E-02 , - 0.785 , -5.563702283874560E-02 , - 0.79 , -6.754184615076410E-02 , - 0.795 , -5.871706032442020E-02 , - 0.8 , -1.692509300464670E-02 , - 0.805 , 3.809918865159700E-02 , - 0.81 , 9.363878798804159E-02 , - 0.815 , 0.168712355371222 , - 0.82 , 0.278043767236916 , - 0.825 , 0.400260018759297 , - 0.83 , 0.503549901131272 , - 0.835 , 0.576593704222666 , - 0.84 , 0.611464547720466 , - 0.845 , 0.581774928421811 , - 0.85 , 0.466685485187298 , - 0.855 , 0.279469592461024 , - 0.86 , 4.649599505060000E-02 , - 0.865 , -0.22611474655397 , - 0.87 , -0.53742100922433 , - 0.875 , -0.85597468112981 , - 0.88 , -1.12858445463436 , - 0.885 , -1.31964097839003 , - 0.89 , -1.41810357733099 , - 0.895 , -1.4129005458435 , - 0.9 , -1.29047173798494 , - 0.905 , -1.05919909208997 , - 0.91 , -0.75411881989804 , - 0.915 , -0.41406737678731 , - 0.92 , -7.194360976911091E-02 , - 0.925 , 0.232932654611786 , - 0.93 , 0.457448784206965 , - 0.935 , 0.581369260987795 , - 0.94 , 0.617884772522987 , - 0.945 , 0.588638581913632 , - 0.95 , 0.499594354895777 , - 0.955 , 0.351854051263097 , - 0.96 , 0.167285288529307 , - 0.965 , -1.354817972678980E-02 , - 0.97 , -0.16506107206104 , - 0.975 , -0.30020976135865 , - 0.98 , -0.44800006523462 , - 0.985 , -0.60571664044792 , - 0.99 , -0.72882650966723 , - 0.995 , -0.78150351703968 , - 1.0 , -0.78325351768449 , - 1.005 , -0.7804638307994 , - 1.01 , -0.77907901470961 , - 1.015 , -0.74044922924701 , - 1.02 , -0.64794816611668 , - 1.025 , -0.53653982368824 , - 1.03 , -0.43590944296704 , - 1.035 , -0.32196595199848 , - 1.04 , -0.15803623495676 , - 1.045 , 4.418314484939760E-02 , - 1.05 , 0.242865235492215 , - 1.055 , 0.422391619487335 , - 1.06 , 0.586878740356939 , - 1.065 , 0.710461681206935 , - 1.07 , 0.741340861669433 , - 1.075 , 0.655713664787049 , - 1.08 , 0.470616913700976 , - 1.085 , 0.20656145315631 , - 1.09 , -0.12112308548803 , - 1.095 , -0.47118919290136 , - 1.1 , -0.77786799146278 , - 1.105 , -0.99394827732625 , - 1.11 , -1.10304473601585 , - 1.115 , -1.08949447190265 , - 1.12 , -0.93583496154967 , - 1.125 , -0.65727377808015 , - 1.13 , -0.30107834922153 , - 1.135 , 9.620828359443580E-02 , - 1.14 , 0.514013416080853 , - 1.145 , 0.90642132985077 , - 1.15 , 1.20374217441116 , - 1.155 , 1.37257710404611 , - 1.16 , 1.43303286111545 , - 1.165 , 1.40075730037501 , - 1.17 , 1.25846296855354 , - 1.175 , 1.00832137286648 , - 1.18 , 0.706462116642059 , - 1.185 , 0.413493607411118 , - 1.19 , 0.148293682071222 , - 1.195 , -8.190792579850280E-02 , - 1.2 , -0.25000976533114 , - 1.205 , -0.34497838239222 , - 1.21 , -0.39991632301279 , - 1.215 , -0.44361527764964 , - 1.22 , -0.45948891812011 , - 1.225 , -0.43276591909851 , - 1.23 , -0.39819165775721 , - 1.235 , -0.38929817650006 , - 1.24 , -0.37545880341991 , - 1.245 , -0.30998449197619 , - 1.25 , -0.21624700688801 , - 1.255 , -0.16343645166853 , - 1.26 , -0.17391443905321 , - 1.265 , -0.21919282258219 , - 1.27 , -0.29688345097037 , - 1.275 , -0.43984931085551 , - 1.28 , -0.64071500818847 , - 1.285 , -0.82875858278133 , - 1.29 , -0.93796346189032 , - 1.295 , -0.949512523725 , - 1.3 , -0.857601537535 , - 1.305 , -0.65014691427727 , - 1.31 , -0.34930571456794 , - 1.315 , -2.752743937664530E-02 , - 1.32 , 0.246332435481473 , - 1.325 , 0.45001279080827 , - 1.33 , 0.58297681321004 , - 1.335 , 0.636158064092188 , - 1.34 , 0.611598530544366 , - 1.345 , 0.543575003876384 , - 1.35 , 0.472132760127251 , - 1.355 , 0.4099056501601 , - 1.36 , 0.349344621324927 , - 1.365 , 0.282806527352702 , - 1.37 , 0.200676817565078 , - 1.375 , 9.097626989587490E-02 , - 1.38 , -3.844874520206900E-02 , - 1.385 , -0.1485730750104 , - 1.39 , -0.19431957586841 , - 1.395 , -0.15348271845224 , - 1.4 , -2.614043201034680E-02 , - 1.405 , 0.177537986918302 , - 1.41 , 0.435115227256899 , - 1.415 , 0.705841641151383 , - 1.42 , 0.939450691097474 , - 1.425 , 1.09606995057385 , - 1.43 , 1.16508829271638 , - 1.435 , 1.17152904343664 , - 1.44 , 1.15677325221222 , - 1.445 , 1.14474618562157 , - 1.45 , 1.13563604509728 , - 1.455 , 1.136131797716 , - 1.46 , 1.17059034109195 , - 1.465 , 1.24349566378999 , - 1.47 , 1.31555125128714 , - 1.475 , 1.34451073520553 , - 1.48 , 1.32767985662737 , - 1.485 , 1.27338631745007 , - 1.49 , 1.15790168079473 , - 1.495 , 0.956521791996786 , - 1.5 , 0.698290997947875 , - 1.505 , 0.438367846650034 , - 1.51 , 0.189519144568428 , - 1.515 , -6.309865148517370E-02 , - 1.52 , -0.2907946493572 , - 1.525 , -0.43414032419491 , - 1.53 , -0.49035140435209 , - 1.535 , -0.51769162343818 , - 1.54 , -0.53944953961898 , - 1.545 , -0.51762829963883 , - 1.55 , -0.44905875024602 , - 1.555 , -0.41047655284131 , - 1.56 , -0.45801991852189 , - 1.565 , -0.5452728301642 , - 1.57 , -0.60180223196739 , - 1.575 , -0.64090769354799 , - 1.58 , -0.71776674993069 , - 1.585 , -0.81770575898523 , - 1.59 , -0.86693741584294 , - 1.595 , -0.84067997754846 , - 1.6 , -0.78353488744314 , - 1.605 , -0.71744286940014 , - 1.61 , -0.59774454986713 , - 1.615 , -0.38171240617319 , - 1.62 , -8.924731070437070E-02 , - 1.625 , 0.229074480135456 , - 1.63 , 0.542610098773165 , - 1.635 , 0.829628497520742 , - 1.64 , 1.04494574127203 , - 1.645 , 1.13156269562082 , - 1.65 , 1.05624249517991 , - 1.655 , 0.819935992458342 , - 1.66 , 0.449565343322086 , - 1.665 , -2.180707598866940E-03 , - 1.67 , -0.46040931126981 , - 1.675 , -0.85138688793934 , - 1.68 , -1.12388943755807 , - 1.685 , -1.24657385888904 , - 1.69 , -1.20179685962043 , - 1.695 , -0.99981038351547 , - 1.7 , -0.69163368557204 , - 1.705 , -0.34742052586021 , - 1.71 , -1.646326697056420E-02 , - 1.715 , 0.283945578116849 , - 1.72 , 0.543028107021654 , - 1.725 , 0.737133979583192 , - 1.73 , 0.84487160610996 , - 1.735 , 0.870212972351319 , - 1.74 , 0.834700198404195 , - 1.745 , 0.747170431789498 , - 1.75 , 0.594410232927394 , - 1.755 , 0.367486332109475 , - 1.76 , 8.962182967477010E-02 , - 1.765 , -0.1883067260291 , - 1.77 , -0.41613375697166 , - 1.775 , -0.56543072263443 , - 1.78 , -0.62930681455469 , - 1.785 , -0.60967253780204 , - 1.79 , -0.50702726496872 , - 1.795 , -0.32533912503295 , - 1.8 , -9.026946700126549E-02 , - 1.805 , 0.145429511003968 , - 1.81 , 0.330819022676906 , - 1.815 , 0.45222714352563 , - 1.82 , 0.524252434401283 , - 1.825 , 0.544685292311812 , - 1.83 , 0.482635967462947 , - 1.835 , 0.323118603668567 , - 1.84 , 9.999214308770410E-02 , - 1.845 , -0.1356321129448 , - 1.85 , -0.36128518628156 , - 1.855 , -0.57322505412043 , - 1.86 , -0.74566937227067 , - 1.865 , -0.831111234663 , - 1.87 , -0.79988891088422 , - 1.875 , -0.65798317740384 , - 1.88 , -0.42968513644553 , - 1.885 , -0.14457167669537 , - 1.89 , 0.161701689894838 , - 1.895 , 0.456458659481019 , - 1.9 , 0.720641473510481 , - 1.905 , 0.93536449279502 , - 1.91 , 1.06690148982661 , - 1.915 , 1.08832474904443 , - 1.92 , 1.00876475369484 , - 1.925 , 0.854457298011041 , - 1.93 , 0.628173977645005 , - 1.935 , 0.322546940276438 , - 1.94 , -2.596888473873320E-02 , - 1.945 , -0.33525384338564 , - 1.95 , -0.5416882826646 , - 1.955 , -0.63460201942509 , - 1.96 , -0.61577036509424 , - 1.965 , -0.46445342826001 , - 1.97 , -0.17427091738081 , - 1.975 , 0.197608608481982 , - 1.98 , 0.551300717211572 , - 1.985 , 0.807313151449369 , - 1.99 , 0.929291756112952 , - 1.995 , 0.900203655372628 , - 2.0 , 0.711960914602783 , - 2.005 , 0.386125888668035 , - 2.01 , -1.664845298933290E-02 , - 2.015 , -0.42003837834356 , - 2.02 , -0.75822166854004 , - 2.025 , -0.97936810396973 , - 2.03 , -1.0426579951744 , - 2.035 , -0.93057240999803 , - 2.04 , -0.66368034717177 , - 2.045 , -0.29110991423144 , - 2.05 , 0.119136312621438 , - 2.055 , 0.505291402538494 , - 2.06 , 0.880216899892637 , - 2.065 , 1.20828770980265 , - 2.07 , 1.46849325860208 , - 2.075 , 1.67233522841001 , - 2.08 , 1.84159238892188 , - 2.085 , 1.97017314302929 , - 2.09 , 2.02820005370812 , - 2.095 , 2.00307389537606 , - 2.1 , 1.90918679712901 , - 2.105 , 1.7492164388665 , - 2.11 , 1.49601732028444 , - 2.115 , 1.13320644545655 , - 2.12 , 0.691534368057989 , - 2.125 , 0.222522846896641 , - 2.13 , -0.2568718835065 , - 2.135 , -0.73270869895797 , - 2.14 , -1.16691560085841 , - 2.145 , -1.52131308342383 , - 2.15 , -1.77830659090987 , - 2.155 , -1.94190868704924 , - 2.16 , -2.01807428134882 , - 2.165 , -2.01753841723068 , - 2.17 , -1.96550102271951 , - 2.175 , -1.88172547074643 , - 2.18 , -1.76181108149962 , - 2.185 , -1.60314470865115 , - 2.19 , -1.43287068566641 , - 2.195 , -1.27868078783724 , - 2.2 , -1.12992856906385 , - 2.205 , -0.96854903020236 , - 2.21 , -0.82469988669093 , - 2.215 , -0.75306712540506 , - 2.22 , -0.75949831264927 , - 2.225 , -0.80266627698916 , - 2.23 , -0.86825465400046 , - 2.235 , -0.98190873939491 , - 2.24 , -1.13332846537187 , - 2.245 , -1.24587809111606 , - 2.25 , -1.25403636722243 , - 2.255 , -1.16774949125882 , - 2.26 , -1.02737996901608 , - 2.265 , -0.83618584315821 , - 2.27 , -0.58078051378866 , - 2.275 , -0.28886675266917 , - 2.28 , -1.584903466322660E-02 , - 2.285 , 0.243494185775485 , - 2.29 , 0.493747779128152 , - 2.295 , 0.763367558765503 , - 2.3 , 1.04659160151311 , - 2.305 , 1.31787059651459 , - 2.31 , 1.55330513693362 , - 2.315 , 1.72708398800512 , - 2.32 , 1.80403390270411 , - 2.325 , 1.74474528448072 , - 2.33 , 1.51781565889812 , - 2.335 , 1.11765857002866 , - 2.34 , 0.582482410154426 , - 2.345 , -9.718428438488540E-03 , - 2.35 , -0.57168637020167 , - 2.355 , -1.03230607359137 , - 2.36 , -1.33718623748091 , - 2.365 , -1.44694517260007 , - 2.37 , -1.35098612723151 , - 2.375 , -1.07661964039704 , - 2.38 , -0.67815732332436 , - 2.385 , -0.22427774359532 , - 2.39 , 0.206546911873295 , - 2.395 , 0.541628296955107 , - 2.4 , 0.739725635914114 , - 2.405 , 0.792688071679571 , - 2.41 , 0.699855261818748 , - 2.415 , 0.460345996951087 , - 2.42 , 9.825062680758330E-02 , - 2.425 , -0.32686436332366 , - 2.43 , -0.75151572607261 , - 2.435 , -1.13800924040631 , - 2.44 , -1.46265919709476 , - 2.445 , -1.69312259897435 , - 2.45 , -1.79655595938503 , - 2.455 , -1.76112116582848 , - 2.46 , -1.59504402395201 , - 2.465 , -1.31375304224191 , - 2.47 , -0.94339622712974 , - 2.475 , -0.5311872307141 , - 2.48 , -0.13652655158703 , - 2.485 , 0.191652831784399 , - 2.49 , 0.427316277261529 , - 2.495 , 0.565105289247264 , - 2.5 , 0.614388715344672 , - 2.505 , 0.595214227948157 , - 2.51 , 0.537482815214678 , - 2.515 , 0.480599475426244 , - 2.52 , 0.461418219827792 , - 2.525 , 0.490351150400196 , - 2.53 , 0.544926077525614 , - 2.535 , 0.597359901626847 , - 2.54 , 0.63915145270988 , - 2.545 , 0.666359147512914 , - 2.55 , 0.659549902572926 , - 2.555 , 0.607653814797886 , - 2.56 , 0.542274304956947 , - 2.565 , 0.514978623780516 , - 2.57 , 0.542507936778163 , - 2.575 , 0.605343596447052 , - 2.58 , 0.694971250554721 , - 2.585 , 0.820564438850225 , - 2.59 , 0.964525817889196 , - 2.595 , 1.07728875105342 , - 2.6 , 1.13416623229962 , - 2.605 , 1.16046452303612 , - 2.61 , 1.18333170206295 , - 2.615 , 1.19818806982642 , - 2.62 , 1.2055342011362 , - 2.625 , 1.23921335799247 , - 2.63 , 1.32082369230339 , - 2.635 , 1.41353565810184 , - 2.64 , 1.45647248242833 , - 2.645 , 1.42296156176653 , - 2.65 , 1.31247243180803 , - 2.655 , 1.10982597617917 , - 2.66 , 0.796193729509591 , - 2.665 , 0.391525367264635 , - 2.67 , -5.039209232008630E-02 , - 2.675 , -0.48551296055089 , - 2.68 , -0.89084690987514 , - 2.685 , -1.24148991258587 , - 2.69 , -1.50817716119153 , - 2.695 , -1.67597297557138 , - 2.7 , -1.74058611919401 , - 2.705 , -1.69018703360535 , - 2.71 , -1.51441737441596 , - 2.715 , -1.22691360409733 , - 2.72 , -0.85820811206465 , - 2.725 , -0.43656402639097 , - 2.73 , -1.877591162527850E-03 , - 2.735 , 0.3722134714064 , - 2.74 , 0.604368486493566 , - 2.745 , 0.654206094948509 , - 2.75 , 0.520823349815255 , - 2.755 , 0.204565302761595 , - 2.76 , -0.24284766157643 , - 2.765 , -0.75311719985656 , - 2.77 , -1.25324781337662 , - 2.775 , -1.6520239944361 , - 2.78 , -1.91175925323649 , - 2.785 , -2.02042853839568 , - 2.79 , -1.95654753001104 , - 2.795 , -1.71189367332731 , - 2.8 , -1.33217954914393 , - 2.805 , -0.90169171320611 , - 2.81 , -0.48741397679456 , - 2.815 , -0.11957680209296 , - 2.82 , 0.208180180447444 , - 2.825 , 0.429754499753944 , - 2.83 , 0.500373556893508 , - 2.835 , 0.453923556202155 , - 2.84 , 0.356589274872127 , - 2.845 , 0.252756610751608 , - 2.85 , 0.15368816142573 , - 2.855 , 7.226479768245560E-02 , - 2.86 , 3.888968358902120E-02 , - 2.865 , 7.085947846528430E-02 , - 2.87 , 0.145649387450817 , - 2.875 , 0.221440328548596 , - 2.88 , 0.271936154319643 , - 2.885 , 0.285520971687156 , - 2.89 , 0.244558483181686 , - 2.895 , 0.131111505423643 , - 2.9 , -4.976188706858230E-02 , - 2.905 , -0.27342387270832 , - 2.91 , -0.51955671330527 , - 2.915 , -0.77083790776384 , - 2.92 , -0.9909431240431 , - 2.925 , -1.1326860598253 , - 2.93 , -1.17530215375529 , - 2.935 , -1.1315547074335 , - 2.94 , -1.01461371409468 , - 2.945 , -0.82697517656886 , - 2.95 , -0.5923950948081 , - 2.955 , -0.367250148284 , - 2.96 , -0.19748847576212 , - 2.965 , -8.287483750208639E-02 , - 2.97 , 1.205615998459890E-03 , - 2.975 , 6.700285876984650E-02 , - 2.98 , 0.142475719272639 , - 2.985 , 0.272732688275581 , - 2.99 , 0.498473860216776 , - 2.995 , 0.815246300242191 , - 3.0 , 1.17850966940332 , - 3.005 , 1.5365879707165 , - 3.01 , 1.83696246846193 , - 3.015 , 2.01683359177992 , - 3.02 , 2.02473029766593 , - 3.025 , 1.85763991176815 , - 3.03 , 1.55996114842794 , - 3.035 , 1.19160270003895 , - 3.04 , 0.817034460759104 , - 3.045 , 0.512897988315463 , - 3.05 , 0.347660769303193 , - 3.055 , 0.341161122643262 , - 3.06 , 0.460638539442427 , - 3.065 , 0.655193651694964 , - 3.07 , 0.871495085561553 , - 3.075 , 1.04025886670637 , - 3.08 , 1.0866972125822 , - 3.085 , 0.97592646156581 , - 3.09 , 0.732149789609832 , - 3.095 , 0.404350262104711 , - 3.1 , 3.450811147404410E-02 , - 3.105 , -0.3574143716153 , - 3.11 , -0.67593382755679 , - 3.115 , -0.85741138771834 , - 3.12 , -0.88812837843921 , - 3.125 , -0.79137979090702 , - 3.13 , -0.59262327029812 , - 3.135 , -0.31629865744548 , - 3.14 , -7.233283133936310E-03 , - 3.145 , 0.273183439196407 , - 3.15 , 0.478066409829062 , - 3.155 , 0.58805365224197 , - 3.16 , 0.593648649534557 , - 3.165 , 0.483000051126779 , - 3.17 , 0.254384438681656 , - 3.175 , -6.624305965878829E-02 , - 3.18 , -0.4267275966133 , - 3.185 , -0.81396009231636 , - 3.19 , -1.1955849391981 , - 3.195 , -1.53431204255614 , - 3.2 , -1.79550741772338 , - 3.205 , -1.95961471169112 , - 3.21 , -2.02193224868472 , - 3.215 , -1.98153140879109 , - 3.22 , -1.83692731893728 , - 3.225 , -1.59274123405354 , - 3.23 , -1.26186737186096 , - 3.235 , -0.85475661028155 , - 3.24 , -0.37101324608578 , - 3.245 , 0.104191797011254 , - 3.25 , 0.444402436394787 , - 3.255 , 0.80270823947836 , - 3.26 , 1.15997110726162 , - 3.265 , 1.495182836989 , - 3.27 , 1.77744468860316 , - 3.275 , 1.96545418255327 , - 3.28 , 2.0238275806165 , - 3.285 , 1.94070094966571 , - 3.29 , 1.72718398222401 , - 3.295 , 1.40473739766314 , - 3.3 , 1.00200904728279 , - 3.305 , 0.563540200278601 , - 3.31 , 0.149874332156587 , - 3.315 , -0.36080714644631 , - 3.32 , -0.78705501088032 , - 3.325 , -0.96779259671266 , - 3.33 , -0.92388383903371 , - 3.335 , -0.70129187312547 , - 3.34 , -0.37633413832281 , - 3.345 , -4.983212937679970E-02 , - 3.35 , 0.182525585093038 , - 3.355 , 0.262197946276188 , - 3.36 , 0.176793782229557 , - 3.365 , -5.176420413944920E-02 , - 3.37 , -0.37933630972585 , - 3.375 , -0.74271351288949 , - 3.38 , -1.06375084817712 , - 3.385 , -1.26478653529069 , - 3.39 , -1.29047203891782 , - 3.395 , -1.12256167350094 , - 3.4 , -0.78075489126115 , - 3.405 , -0.31359677016703 , - 3.41 , 0.21274034122224 , - 3.415 , 0.723339413347021 , - 3.42 , 1.14216320992711 , - 3.425 , 1.40285852862188 , - 3.43 , 1.46353765010519 , - 3.435 , 1.31751508169454 , - 3.44 , 0.990610982524745 , - 3.445 , 0.528518300724784 , - 3.45 , -1.201464116995880E-02 , - 3.455 , -0.56495490805526 , - 3.46 , -1.06256507808036 , - 3.465 , -1.45449004401942 , - 3.47 , -1.72216993561753 , - 3.475 , -1.87372425489139 , - 3.48 , -1.93012616321294 , - 3.485 , -1.92125770401275 , - 3.49 , -1.88683182264746 , - 3.495 , -1.86489427093378 , - 3.5 , -1.87314769209702 , - 3.505 , -1.90576881574645 , - 3.51 , -1.947112317286 , - 3.515 , -1.97949862409975 , - 3.52 , -1.97797423254897 , - 3.525 , -1.91218852417812 , - 3.53 , -1.76423764925703 , - 3.535 , -1.54024679422456 , - 3.54 , -1.25875344890035 , - 3.545 , -0.9338632056843 , - 3.55 , -0.57694094749828 , - 3.555 , -0.20814045746558 , - 3.56 , 0.146206363036127 , - 3.565 , 0.468653953534567 , - 3.57 , 0.754631835985132 , - 3.575 , 0.999185044322006 , - 3.58 , 1.18633789810153 , - 3.585 , 1.29531712809396 , - 3.59 , 1.31308664187438 , - 3.595 , 1.23731524907479 , - 3.6 , 1.07118836166498 , - 3.605 , 0.822464072088323 , - 3.61 , 0.509927368235254 , - 3.615 , 0.167608567620092 , - 3.62 , -0.16136132010127 , - 3.625 , -0.43756626339828 , - 3.63 , -0.63523583164368 , - 3.635 , -0.74542737572521 , - 3.64 , -0.7756133968174 , - 3.645 , -0.74811092815284 , - 3.65 , -0.69606885610044 , - 3.655 , -0.6565734770812 , - 3.66 , -0.66248883313473 , - 3.665 , -0.7327889886856 , - 3.67 , -0.86178796221599 , - 3.675 , -1.01484775035497 , - 3.68 , -1.13874812866412 , - 3.685 , -1.18063976569405 , - 3.69 , -1.10015331426255 , - 3.695 , -0.87258642642403 , - 3.7 , -0.49606882241743 , - 3.705 , -3.859866915145810E-03 , - 3.71 , 0.536274174652005 , - 3.715 , 1.04296495682297 , - 3.72 , 1.44309287260192 , - 3.725 , 1.67861157963259 , - 3.73 , 1.7100067792938 , - 3.735 , 1.52993945453465 , - 3.74 , 1.17332394495836 , - 3.745 , 0.705456146258253 , - 3.75 , 0.19881090381289 , - 3.755 , -0.27919234543845 , - 3.76 , -0.66960551503829 , - 3.765 , -0.93205155196248 , - 3.77 , -1.05626273217395 , - 3.775 , -1.05832450991158 , - 3.78 , -0.96616376411692 , - 3.785 , -0.81175596966687 , - 3.79 , -0.6282915868819 , - 3.795 , -0.43985996859902 , - 3.8 , -0.25160708755689 , - 3.805 , -5.670095344855360E-02 , - 3.81 , 0.149245250303935 , - 3.815 , 0.367246556878583 , - 3.82 , 0.6001728423305 , - 3.825 , 0.842651059699404 , - 3.83 , 1.06576976559939 , - 3.835 , 1.22584984073272 , - 3.84 , 1.29118905603104 , - 3.845 , 1.25131649498925 , - 3.85 , 1.10483834283469 , - 3.855 , 0.858719957928343 , - 3.86 , 0.546596899968826 , - 3.865 , 0.232913780073415 , - 3.87 , -1.178392373167330E-02 , - 3.875 , -0.13503158427521 , - 3.88 , -0.10474649816556 , - 3.885 , 8.615352677596511E-02 , - 3.89 , 0.410679548743155 , - 3.895 , 0.826698146053687 , - 3.9 , 1.26554832994177 , - 3.905 , 1.65499072160026 , - 3.91 , 1.92591491458393 , - 3.915 , 2.02174681879988 , - 3.92 , 1.91690039738994 , - 3.925 , 1.62485068724173 , - 3.93 , 1.1855690119834 , - 3.935 , 0.653037378513217 , - 3.94 , 9.668746640223920E-02 , - 3.945 , -0.4301741972333 , - 3.95 , -0.83059880381395 , - 3.955 , -1.06253651005356 , - 3.96 , -1.12343783668418 , - 3.965 , -1.02905594887957 , - 3.97 , -0.81438063696053 , - 3.975 , -0.53887343061785 , - 3.98 , -0.27199822870815 , - 3.985 , -6.791154597367660E-02 , - 3.99 , 4.530742217552380E-02 , - 3.995 , 6.262857784368379E-02 , - 4.0 , 2.441344328897610E-03 , - 4.005 , -9.190475922367920E-02 , - 4.01 , -0.16297517487801 , - 4.015 , -0.15723894800794 , - 4.02 , -3.537253515270430E-02 , - 4.025 , 0.193043922562747 , - 4.03 , 0.526357119583793 , - 4.035 , 0.929427363269694 , - 4.04 , 1.34182501632519 , - 4.045 , 1.69896106062951 , - 4.05 , 1.94147299764395 , - 4.055 , 2.02131168938189 , - 4.06 , 1.91405493567929 , - 4.065 , 1.62895808406502 , - 4.07 , 1.20381890102136 , - 4.075 , 0.692151048809337 , - 4.08 , 0.156757509395021 , - 4.085 , -0.38604102584051 , - 4.09 , -0.84133083525009 , - 4.095 , -1.156233699226 , - 4.1 , -1.33230861444598 , - 4.105 , -1.38570779035153 , - 4.11 , -1.34124970345719 , - 4.115 , -1.23546550701648 , - 4.12 , -1.10801235519435 , - 4.125 , -0.98248955079667 , - 4.13 , -0.86003296814087 , - 4.135 , -0.73178734822649 , - 4.14 , -0.59090783838188 , - 4.145 , -0.43318234968906 , - 4.15 , -0.25684880447788 , - 4.155 , -6.856986064204031E-02 , - 4.16 , 0.113175698843399 , - 4.165 , 0.263255109728613 , - 4.17 , 0.35752664561249 , - 4.175 , 0.378805103678297 , - 4.18 , 0.323547996037049 , - 4.185 , 0.206516861655614 , - 4.19 , 5.649526699216110E-02 , - 4.195 , -9.378626227851780E-02 , - 4.2 , -0.21317600878937 , - 4.205 , -0.27287940125587 , - 4.21 , -0.25114165876958 , - 4.215 , -0.14168231890677 , - 4.22 , 4.361065500048250E-02 , - 4.225 , 0.279918937448746 , - 4.23 , 0.535273378579502 , - 4.235 , 0.773588682574221 , - 4.24 , 0.958219914615338 , - 4.245 , 1.05647251768057 , - 4.25 , 1.0429998608356 , - 4.255 , 0.904048723430757 , - 4.26 , 0.64342045751792 , - 4.265 , 0.283827852947311 , - 4.27 , -0.13946358577039 , - 4.275 , -0.58422822501242 , - 4.28 , -1.00040723456331 , - 4.285 , -1.33261766567896 , - 4.29 , -1.53443838788264 , - 4.295 , -1.58333249912622 , - 4.3 , -1.48186835325815 , - 4.305 , -1.25134227914383 , - 4.31 , -0.93134131663624 , - 4.315 , -0.58023320392854 , - 4.32 , -0.263068523183 , - 4.325 , -3.234875382342560E-02 , - 4.33 , 8.104457813070970E-02 , - 4.335 , 6.646358030000100E-02 , - 4.34 , -6.520527065940920E-02 , - 4.345 , -0.27865084678943 , - 4.35 , -0.52301393304868 , - 4.355 , -0.75029273588902 , - 4.36 , -0.92586132464525 , - 4.365 , -1.02745479977821 , - 4.37 , -1.045887182644 , - 4.375 , -0.98998208526761 , - 4.38 , -0.88247620098788 , - 4.385 , -0.74513807964771 , - 4.39 , -0.589693305748 , - 4.395 , -0.4218623825717 , - 4.4 , -0.24559350524832 , - 4.405 , -5.960463612956680E-02 , - 4.41 , 0.142717207535869 , - 4.415 , 0.362879306116347 , - 4.42 , 0.588751862423607 , - 4.425 , 0.799650310566393 , - 4.43 , 0.976747652586761 , - 4.435 , 1.1062713323933 , - 4.44 , 1.17888982115871 , - 4.445 , 1.19440253536595 , - 4.45 , 1.16760308413961 , - 4.455 , 1.12503563953872 , - 4.46 , 1.09428815021162 , - 4.465 , 1.09605242115199 , - 4.47 , 1.141397648121 , - 4.475 , 1.22879693707608 , - 4.48 , 1.34085300252377 , - 4.485 , 1.44734590197994 , - 4.49 , 1.51600244532524 , - 4.495 , 1.52347176965462 , - 4.5 , 1.4600805519962 , - 4.505 , 1.32990917025988 , - 4.51 , 1.15031027736352 , - 4.515 , 0.950259774927611 , - 4.52 , 0.764000212508228 , - 4.525 , 0.620467212343643 , - 4.53 , 0.53443313966959 , - 4.535 , 0.504324479922065 , - 4.54 , 0.515518988342075 , - 4.545 , 0.5449123033391 , - 4.55 , 0.565643760216133 , - 4.555 , 0.553361701085439 , - 4.56 , 0.492730481489852 , - 4.565 , 0.380543114015636 , - 4.57 , 0.224809165664267 , - 4.575 , 4.198032082290820E-02 , - 4.58 , -0.14747370012324 , - 4.585 , -0.32583933056166 , - 4.59 , -0.48349824002692 , - 4.595 , -0.61801754775951 , - 4.6 , -0.72971208292477 , - 4.605 , -0.82083468227042 , - 4.61 , -0.89775066250987 , - 4.615 , -0.96888908984926 , - 4.62 , -1.0384220049282 , - 4.625 , -1.10412227179889 , - 4.63 , -1.16142632685637 , - 4.635 , -1.20605223114456 , - 4.64 , -1.23228150965333 , - 4.645 , -1.2330625103562 , - 4.65 , -1.20312802686153 , - 4.655 , -1.13793589958523 , - 4.66 , -1.0287141764878 , - 4.665 , -0.8641100498206 , - 4.67 , -0.63938852378214 , - 4.675 , -0.35979779312165 , - 4.68 , -3.418457890781780E-02 , - 4.685 , 0.32663500010105 , - 4.69 , 0.70029027164172 , - 4.695 , 1.04848934874391 , - 4.7 , 1.32926995685333 , - 4.705 , 1.5103149027497 , - 4.71 , 1.56674966292037 , - 4.715 , 1.47490809529175 , - 4.72 , 1.22042977817102 , - 4.725 , 0.812026061087399 , - 4.73 , 0.280340511193259 , - 4.735 , -0.25291232049697 , - 4.74 , -0.74295446485739 , - 4.745 , -1.21402870653543 , - 4.75 , -1.61401924449385 , - 4.755 , -1.89622337299338 , - 4.76 , -2.02674956179211 , - 4.765 , -1.98422913056168 , - 4.77 , -1.76288837183623 , - 4.775 , -1.38094808362694 , - 4.78 , -0.88180280078288 , - 4.785 , -0.32340693878301 , - 4.79 , 0.309775095794083 , - 4.795 , 0.96398882181726 , - 4.8 , 1.46521480566007 , - 4.805 , 1.77054065361263 , - 4.81 , 1.87515908448363 , - 4.815 , 1.80763374123846 , - 4.82 , 1.61871625340312 , - 4.825 , 1.37383254873989 , - 4.83 , 1.14323155673988 , - 4.835 , 0.984115330306988 , - 4.84 , 0.925398091665492 , - 4.845 , 0.966346779872473 , - 4.85 , 1.08319151549769 , - 4.855 , 1.23351422222229 , - 4.86 , 1.36203968864373 , - 4.865 , 1.41500821627328 , - 4.87 , 1.35632626255014 , - 4.875 , 1.17338649661648 , - 4.88 , 0.873766424591019 , - 4.885 , 0.482332773802851 , - 4.89 , 3.923546396876550E-02 , - 4.895 , -0.22463035892901 , - 4.9 , -0.44775774321397 , - 4.905 , -0.63337252960387 , - 4.91 , -0.77214474283379 , - 4.915 , -0.86139644715887 , - 4.92 , -0.90539713757332 , - 4.925 , -0.91457475953945 , - 4.93 , -0.90292943826226 , - 4.935 , -0.88570153051275 , - 4.94 , -0.87839307255918 , - 4.945 , -0.89582516241653 , - 4.95 , -0.95014576706764 , - 4.955 , -1.0485044185337 , - 4.96 , -1.1912694657772 , - 4.965 , -1.3708025639651 , - 4.97 , -1.57077187288448 , - 4.975 , -1.76663217835511 , - 4.98 , -1.92803570312605 , - 4.985 , -2.02359808191781 , - 4.99 , -2.0273751484136 , - 4.995 , -1.9250033514058 , - 5.0 , -1.71741034508892 , - 5.005 , -1.42182210128631 , - 5.01 , -1.07072647445332 , - 5.015 , -0.70800393596021 , - 5.02 , -0.38102872779966 , - 5.025 , -0.13042197488723 , - 5.03 , 3.718076749748670E-02 , - 5.035 , 0.111181074997115 , - 5.04 , 1.189110285104030E-02 , - 5.045 , -0.20207868848779 , - 5.05 , -0.44910010485315 , - 5.055 , -0.64276640560255 , - 5.06 , -0.71152270492906 , - 5.065 , -0.61247600528197 , - 5.07 , -0.33784697642092 , - 5.075 , 8.416359716705800E-02 , - 5.08 , 0.593871386434318 , - 5.085 , 1.11066790591664 , - 5.09 , 1.547857061782 , - 5.095 , 1.82798847499016 , - 5.1 , 1.89521989018272 , - 5.105 , 1.72255076224409 , - 5.11 , 1.31357650362981 , - 5.115 , 0.700681089848237 , - 5.12 , -3.944101274735180E-02 , - 5.125 , -0.57538253938727 , - 5.13 , -1.09801528037525 , - 5.135 , -1.54898464132246 , - 5.14 , -1.87419746618154 , - 5.145 , -2.02778376701628 , - 5.15 , -1.97724411607912 , - 5.155 , -1.70971194891691 , - 5.16 , -1.23638258073101 , - 5.165 , -0.59315494390597 , - 5.17 , 0.111368648891046 , - 5.175 , 0.663169389460638 , - 5.18 , 1.18144631611042 , - 5.185 , 1.60890018466206 , - 5.19 , 1.8979822410482 , - 5.195 , 2.01808652053979 , - 5.2 , 1.96085818554624 , - 5.205 , 1.74218321821589 , - 5.21 , 1.39935953655912 , - 5.215 , 0.984200755295425 , - 5.22 , 0.55469135825056 , - 5.225 , 0.166760087786826 , - 5.23 , -0.29010383111112 , - 5.235 , -0.69805571505204 , - 5.24 , -0.82852798007756 , - 5.245 , -0.70078564730017 , - 5.25 , -0.3628421318389 , - 5.255 , 7.584234896818380E-02 , - 5.26 , 0.43610921884854 , - 5.265 , 0.80338816570313 , - 5.27 , 1.14583363535399 , - 5.275 , 1.44233546379898 , - 5.28 , 1.68096745166101 , - 5.285 , 1.85664177773435 , - 5.29 , 1.96856248638458 , - 5.295 , 2.01783075579683 , - 5.3 , 2.00659270193592 , - 5.305 , 1.93938767266716 , - 5.31 , 1.82500672559004 , - 5.315 , 1.67686130322037 , - 5.32 , 1.5118566159347 , - 5.325 , 1.34860724410237 , - 5.33 , 1.20475926474899 , - 5.335 , 1.09288033252557 , - 5.34 , 1.01607186043109 , - 5.345 , 0.965585517364128 , - 5.35 , 0.921875442510843 , - 5.355 , 0.858856383267098 , - 5.36 , 0.750174073799282 , - 5.365 , 0.575950824274314 , - 5.37 , 0.328597045194569 , - 5.375 , 1.652082973209100E-02 , - 5.38 , -0.50276970745072 , - 5.385 , -1.03563631031452 , - 5.39 , -1.50490953601753 , - 5.395 , -1.84994677847168 , - 5.4 , -2.02843329407602 , - 5.405 , -2.02545789978173 , - 5.41 , -1.85714442697612 , - 5.415 , -1.56774223620682 , - 5.42 , -1.22052435654413 , - 5.425 , -0.88506969766425 , - 5.43 , -0.62375651367727 , - 5.435 , -0.47941781141452 , - 5.44 , -0.46672787176114 , - 5.445 , -0.57069258501391 , - 5.45 , -0.75256544897363 , - 5.455 , -0.95943306586182 , - 5.46 , -1.13415327472143 , - 5.465 , -1.22591171353667 , - 5.47 , -1.2008821223853 , - 5.475 , -1.04867466773548 , - 5.48 , -0.7816480899877 , - 5.485 , -0.43025221187204 , - 5.49 , -3.849293308865140E-02 , - 5.495 , 0.351248620973817 , - 5.5 , 0.678851223955433 , - 5.505 , 0.903561274568929 , - 5.51 , 1.000825087451 , - 5.515 , 0.960934560706297 , - 5.52 , 0.78992867723245 , - 5.525 , 0.511317876998132 , - 5.53 , 0.162760320816359 , - 5.535 , -0.15233717951736 , - 5.54 , -0.408210240848 , - 5.545 , -0.62888561745421 , - 5.55 , -0.79619865273995 , - 5.555 , -0.90334422649211 , - 5.56 , -0.957273231721 , - 5.565 , -0.97632112916908 , - 5.57 , -0.98529324126005 , - 5.575 , -1.01088001195299 , - 5.58 , -1.07663632540647 , - 5.585 , -1.1964450302827 , - 5.59 , -1.36885544627383 , - 5.595 , -1.57548223311668 , - 5.6 , -1.78343920945552 , - 5.605 , -1.94998845541488 , - 5.61 , -2.02894698358654 , - 5.615 , -1.97893684719994 , - 5.62 , -1.77192812280346 , - 5.625 , -1.39963819951885 , - 5.63 , -0.87646499571534 , - 5.635 , -0.23861147042705 , - 5.64 , 0.336218007155657 , - 5.645 , 0.847327478768983 , - 5.65 , 1.30857622082849 , - 5.655 , 1.67664606685409 , - 5.66 , 1.91879317489308 , - 5.665 , 2.01692172130926 , - 5.67 , 1.96853013034153 , - 5.675 , 1.78510825075991 , - 5.68 , 1.4896405295593 , - 5.685 , 1.11350916384325 , - 5.69 , 0.692073407024996 , - 5.695 , 0.259804585073245 , - 5.7 , -0.24312332096602 , - 5.705 , -0.83740028991543 , - 5.71 , -1.32862161402076 , - 5.715 , -1.69669262414581 , - 5.72 , -1.93128745142237 , - 5.725 , -2.02921997287969 , - 5.73 , -1.99337280480397 , - 5.735 , -1.83373410433008 , - 5.74 , -1.56747293050187 , - 5.745 , -1.21724094498849 , - 5.75 , -0.81052148648056 , - 5.755 , -0.38038326455022 , - 5.76 , 4.429619989889450E-02 , - 5.765 , 0.482041333875258 , - 5.77 , 0.827113852485307 , - 5.775 , 1.05562255275457 , - 5.78 , 1.15574510229285 , - 5.785 , 1.13102185729002 , - 5.79 , 1.00111402711585 , - 5.795 , 0.796402227894675 , - 5.8 , 0.550299036643284 , - 5.805 , 0.294746376632263 , - 5.81 , 5.779627739619110E-02 , - 5.815 , -0.14033970324891 , - 5.82 , -0.29057904479289 , - 5.825 , -0.39279585396293 , - 5.83 , -0.4494482504971 , - 5.835 , -0.46100119177358 , - 5.84 , -0.42521937611264 , - 5.845 , -0.3375317644422 , - 5.85 , -0.19158847654649 , - 5.855 , 1.752214546441880E-02 , - 5.86 , 0.287160001209617 , - 5.865 , 0.602028255467961 , - 5.87 , 0.933254236049531 , - 5.875 , 1.24149905843902 , - 5.88 , 1.48303299176761 , - 5.885 , 1.61843953382086 , - 5.89 , 1.62241665153411 , - 5.895 , 1.49156853196882 , - 5.9 , 1.24765942303674 , - 5.905 , 0.935345755846739 , - 5.91 , 0.614175990416646 , - 5.915 , 0.345931028275661 , - 5.92 , 0.180659960734569 , - 5.925 , 0.145383600846828 , - 5.93 , 0.237765412366942 , - 5.935 , 0.425793201109318 , - 5.94 , 0.654468234473261 , - 5.945 , 0.858677159866798 , - 5.95 , 0.978207334350809 , - 5.955 , 0.970329031591707 , - 5.96 , 0.818026030367143 , - 5.965 , 0.533251338659083 , - 5.97 , 0.15356868640373 , - 5.975 , -0.26839144886352 , - 5.98 , -0.67878215135657 , - 5.985 , -1.03400683986537 , - 5.99 , -1.3073585979251 , - 5.995 , -1.49178002375022 , - 6.0 , -1.59881218617846 , - 6.005 , -1.65263612785215 , - 6.01 , -1.68040775595467 , - 6.015 , -1.70326118069031 , - 6.02 , -1.73147514087517 , - 6.025 , -1.76409391726272 , - 6.03 , -1.79154678107851 , - 6.035 , -1.80004486312369 , - 6.04 , -1.77657113231061 , - 6.045 , -1.71309083748955 , - 6.05 , -1.60890845106533 , - 6.055 , -1.47045377157793 , - 6.06 , -1.30823176663841 , - 6.065 , -1.13218678075657 , - 6.07 , -0.94831725641373 , - 6.075 , -0.7582938943429 , - 6.08 , -0.56105916215743 , - 6.085 , -0.35465660035081 , - 6.09 , -0.1384716720616 , - 6.095 , 8.181401775998960E-02 , - 6.1 , 0.295120583821675 , - 6.105 , 0.488813785339096 , - 6.11 , 0.645978019217284 , - 6.115 , 0.751956445909178 , - 6.12 , 0.797070178696218 , - 6.125 , 0.778938415578525 , - 6.13 , 0.703933126539259 , - 6.135 , 0.586193282063444 , - 6.14 , 0.444346814137257 , - 6.145 , 0.29825595848257 , - 6.15 , 0.16716086262001 , - 6.155 , 6.845201123569530E-02 , - 6.16 , 1.638790200297000E-02 , - 6.165 , 2.138979757918980E-02 , - 6.17 , 9.013446340544370E-02 , - 6.175 , 0.225364316943996 , - 6.18 , 0.424627726925139 , - 6.185 , 0.678666340108451 , - 6.19 , 0.970459569802561 , - 6.195 , 1.27533903222018 , - 6.2 , 1.56265390764561 , - 6.205 , 1.79967884086063 , - 6.21 , 1.95730777614782 , - 6.215 , 2.01568092318868 , - 6.22 , 1.9680798901563 , - 6.225 , 1.82260275300508 , - 6.23 , 1.6012628707179 , - 6.235 , 1.33584067303513 , - 6.24 , 1.06088096670087 , - 6.245 , 0.806020651973241 , - 6.25 , 0.590240383625112 , - 6.255 , 0.419170058894404 , - 6.26 , 0.285567810216695 , - 6.265 , 0.172882474189092 , - 6.27 , 6.141521693570270E-02 , - 6.275 , -4.100655746000240E-02 , - 6.28 , -0.12748144658853 , - 6.285 , -0.22402606929835 , - 6.29 , -0.32266457931099 , - 6.295 , -0.41245768954213 , - 6.3 , -0.48300494677694 , - 6.305 , -0.5281469572368 , - 6.31 , -0.54867239852271 , - 6.315 , -0.55291028225442 , - 6.32 , -0.55498836852966 , - 6.325 , -0.57168033795742 , - 6.33 , -0.61890124937392 , - 6.335 , -0.70832720330432 , - 6.34 , -0.8444688842815 , - 6.345 , -1.02312789012362 , - 6.35 , -1.23201420479741 , - 6.355 , -1.45302869056683 , - 6.36 , -1.66483750094807 , - 6.365 , -1.84512502578643 , - 6.37 , -1.97287391729285 , - 6.375 , -2.03065548439675 , - 6.38 , -2.00620454087577 , - 6.385 , -1.89315139172675 , - 6.39 , -1.69175663119939 , - 6.395 , -1.40995495579992 , - 6.4 , -1.06376441111769 , - 6.405 , -0.67620069765757 , - 6.41 , -0.27510795942141 , - 6.415 , 0.196812130002227 , - 6.42 , 0.789662759769171 , - 6.425 , 1.26662960840841 , - 6.43 , 1.6072638071671 , - 6.435 , 1.81182394487741 , - 6.44 , 1.89972228643561 , - 6.445 , 1.9047619217593 , - 6.45 , 1.86751034078394 , - 6.455 , 1.8254292028055 , - 6.46 , 1.80357147143536 , - 6.465 , 1.80953648503866 , - 6.47 , 1.83384689586528 , - 6.475 , 1.8545291406415 , - 6.48 , 1.84468010904891 , - 6.485 , 1.78185447755559 , - 6.49 , 1.65634384795161 , - 6.495 , 1.47475850013982 , - 6.5 , 1.25778784095604 , - 6.505 , 1.03382280148781 , - 6.51 , 0.830377669084782 , - 6.515 , 0.664847688813952 , - 6.52 , 0.537441337312092 , - 6.525 , 0.429805314578715 , - 6.53 , 0.31046587513464 , - 6.535 , 0.1447657890999 , - 6.54 , -9.382243026102850E-02 , - 6.545 , -0.41334712070585 , - 6.55 , -0.79651775006838 , - 6.555 , -1.20028045361043 , - 6.56 , -1.56291508214219 , - 6.565 , -1.81661688690887 , - 6.57 , -1.90206035531056 , - 6.575 , -1.7817477770441 , - 6.58 , -1.44921463753588 , - 6.585 , -0.93148892423534 , - 6.59 , -0.28406148521622 , - 6.595 , 0.323315074176515 , - 6.6 , 0.852343584238104 , - 6.605 , 1.31274405752464 , - 6.61 , 1.66746511449112 , - 6.615 , 1.89908333611956 , - 6.62 , 2.00928735485692 , - 6.625 , 2.01484159347826 , - 6.63 , 1.94157792559844 , - 6.635 , 1.81783611017065 , - 6.64 , 1.66894503437948 , - 6.645 , 1.51424202651612 , - 6.65 , 1.36676756429498 , - 6.655 , 1.23440796614096 , - 6.66 , 1.12141683734346 , - 6.665 , 1.03005163859298 , - 6.67 , 0.961856012808879 , - 6.675 , 0.917594207115419 , - 6.68 , 0.895802572654735 , - 6.685 , 0.891399934871178 , - 6.69 , 0.895639060058472 , - 6.695 , 0.897175457172006 , - 6.7 , 0.883661601343515 , - 6.705 , 0.844008961722013 , - 6.71 , 0.77132601406367 , - 6.715 , 0.665213447750178 , - 6.72 , 0.531957875807601 , - 6.725 , 0.382692370009228 , - 6.73 , 0.230704777961798 , - 6.735 , 8.848409780228460E-02 , - 6.74 , -4.320967298403890E-02 , - 6.745 , -0.1762892860789 , - 6.75 , -0.28784586821218 , - 6.755 , -0.38905860495499 , - 6.76 , -0.49291382383649 , - 6.765 , -0.61009214038178 , - 6.77 , -0.74528548081034 , - 6.775 , -0.89462751554703 , - 6.78 , -1.04544755808821 , - 6.785 , -1.17892732569852 , - 6.79 , -1.27460153013389 , - 6.795 , -1.31507899117539 , - 6.8 , -1.28996744751844 , - 6.805 , -1.19853880216558 , - 6.81 , -1.0504463612584 , - 6.815 , -0.86390673664632 , - 6.82 , -0.66172430237656 , - 6.825 , -0.46650461944826 , - 6.83 , -0.29641016005237 , - 6.835 , -0.16215486668974 , - 6.84 , -6.552041776213589E-02 , - 6.845 , 2.987151640449150E-04 , - 6.85 , 4.839493719297370E-02 , - 6.855 , 9.446598470843660E-02 , - 6.86 , 0.152946671436979 , - 6.865 , 0.234067255310907 , - 6.87 , 0.342244784612781 , - 6.875 , 0.475796904621799 , - 6.88 , 0.627950076248601 , - 6.885 , 0.788973056491094 , - 6.89 , 0.948691666991149 , - 6.895 , 1.09834384227231 , - 6.9 , 1.23115050816982 , - 6.905 , 1.34171557597024 , - 6.91 , 1.42465179927775 , - 6.915 , 1.47287601846948 , - 6.92 , 1.47626092610496 , - 6.925 , 1.42154296744535 , - 6.93 , 1.29406455566583 , - 6.935 , 1.08117541948277 , - 6.94 , 0.776554035067551 , - 6.945 , 0.384383520531035 , - 6.95 , -7.294167926560280E-02 , - 6.955 , -0.53864400514197 , - 6.96 , -1.00153859379899 , - 6.965 , -1.41800783516812 , - 6.97 , -1.7468581519585 , - 6.975 , -1.95670089086248 , - 6.98 , -2.03182599021495 , - 6.985 , -1.97504743961906 , - 6.99 , -1.80676558399137 , - 6.995 , -1.5604834986916 , - 7.0 , -1.27576644446333 , - 7.005 , -0.9903221748174 , - 7.01 , -0.73330353810734 , - 7.015 , -0.52160326879535 , - 7.02 , -0.35985223488993 , - 7.025 , -0.24369954400838 , - 7.03 , -0.16525998770838 , - 7.035 , -0.11901231195031 , - 7.04 , -0.10598389561423 , - 7.045 , -0.13446900972305 , - 7.05 , -0.21699230917524 , - 7.055 , -0.36458839091288 , - 7.06 , -0.58005276943233 , - 7.065 , -0.85208512054878 , - 7.07 , -1.15259800704237 , - 7.075 , -1.43896995914881 , - 7.08 , -1.66118309359685 , - 7.085 , -1.771927531099 , - 7.09 , -1.73721975477998 , - 7.095 , -1.54526433804976 , - 7.1 , -1.21113953262348 , - 7.105 , -0.7752249017621 , - 7.11 , -0.29527299039846 , - 7.115 , 0.173294693493191 , - 7.12 , 0.57635137765972 , - 7.125 , 0.862335395139578 , - 7.13 , 1.01919271305477 , - 7.135 , 1.06290746127159 , - 7.14 , 1.03167712327493 , - 7.145 , 0.975104812475545 , - 7.15 , 0.94186991196106 , - 7.155 , 0.968697291206275 , - 7.16 , 1.07242991307441 , - 7.165 , 1.24693307983413 , - 7.17 , 1.46588613539846 , - 7.175 , 1.69040391004537 , - 7.18 , 1.87856926470802 , - 7.185 , 1.9942412785979 , - 7.19 , 2.01380495894182 , - 7.195 , 1.93002933646123 , - 7.2 , 1.75219708416187 , - 7.205 , 1.50259348018555 , - 7.21 , 1.21097997176944 , - 7.215 , 0.908929916225265 , - 7.22 , 0.624987318443838 , - 7.225 , 0.380818385977012 , - 7.23 , 0.188682790341481 , - 7.235 , 5.054908150564660E-02 , - 7.24 , -4.224733175465410E-02 , - 7.245 , -0.10533217769884 , - 7.25 , -0.15872049577028 , - 7.255 , -0.22626933934594 , - 7.26 , -0.32933473878503 , - 7.265 , -0.48196141281812 , - 7.27 , -0.68656470353389 , - 7.275 , -0.93107691321487 , - 7.28 , -1.18865855652987 , - 7.285 , -1.420854392386 , - 7.29 , -1.58410377773137 , - 7.295 , -1.63852514448294 , - 7.3 , -1.55725203777855 , - 7.305 , -1.33440140393595 , - 7.31 , -0.98961414150744 , - 7.315 , -0.56741260276393 , - 7.32 , -0.13082880911958 , - 7.325 , 0.249583666745638 , - 7.33 , 0.508940072170202 , - 7.335 , 0.600662717049061 , - 7.34 , 0.5059779991769 , - 7.345 , 0.238142376340394 , - 7.35 , -0.15979854274957 , - 7.355 , -0.62330642360817 , - 7.36 , -1.07861985315351 , - 7.365 , -1.45613573961171 , - 7.37 , -1.70221047327019 , - 7.375 , -1.78733777799186 , - 7.38 , -1.70935128300863 , - 7.385 , -1.49139661468471 , - 7.39 , -1.17576612947581 , - 7.395 , -0.81553092872387 , - 7.4 , -0.46579815462372 , - 7.405 , -0.17584397718572 , - 7.41 , 1.695055532407140E-02 , - 7.415 , 9.080438530410280E-02 , - 7.42 , 4.100203845188310E-02 , - 7.425 , -0.12015714114647 , - 7.43 , -0.36451642152235 , - 7.435 , -0.65063615988914 , - 7.44 , -0.92820901616803 , - 7.445 , -1.14411024994249 , - 7.45 , -1.2495457268474 , - 7.455 , -1.20784941543681 , - 7.46 , -1.00217372922289 , - 7.465 , -0.64135799082343 , - 7.47 , -0.16185956349448 , - 7.475 , 0.375443341531982 , - 7.48 , 0.893242359584305 , - 7.485 , 1.30942170236106 , - 7.49 , 1.55069511538195 , - 7.495 , 1.56597687306026 , - 7.5 , 1.33649434622083 , - 7.505 , 0.880087983425295 , - 7.51 , 0.248772549844589 , - 7.515 , -0.36466467822546 , - 7.52 , -0.91944206639744 , - 7.525 , -1.41086648314942 , - 7.53 , -1.78197182048109 , - 7.535 , -1.99448021035504 , - 7.54 , -2.03276742886028 , - 7.545 , -1.9038540437772 , - 7.55 , -1.63408290724591 , - 7.555 , -1.26366851276266 , - 7.56 , -0.84036300953546 , - 7.565 , -0.41319072336647 , - 7.57 , -2.695184824283270E-02 , - 7.575 , 0.376706658165673 , - 7.58 , 0.651108722060469 , - 7.585 , 0.775943751253261 , - 7.59 , 0.755597751751617 , - 7.595 , 0.613374035034045 , - 7.6 , 0.389100193892965 , - 7.605 , 0.134140214335999 , - 7.61 , -9.593512494436110E-02 , - 7.615 , -0.25014262596395 , - 7.62 , -0.29113724407252 , - 7.625 , -0.20287737386171 , - 7.63 , 5.024227092122790E-03 , - 7.635 , 0.297903261089418 , - 7.64 , 0.622107890736794 , - 7.645 , 0.91558081793758 , - 7.65 , 1.12076183929425 , - 7.655 , 1.19700603742361 , - 7.66 , 1.12967888152307 , - 7.665 , 0.933743975370447 , - 7.67 , 0.650793261469538 , - 7.675 , 0.339973230252299 , - 7.68 , 6.485809767286120E-02 , - 7.685 , -0.12047151548951 , - 7.69 , -0.18271341139574 , - 7.695 , -0.11542038316497 , - 7.7 , 6.117124311775080E-02 , - 7.705 , 0.306221765396461 , - 7.71 , 0.568625694223555 , - 7.715 , 0.79886093305278 , - 7.72 , 0.959184513633666 , - 7.725 , 1.02975813458714 , - 7.73 , 1.00975707269538 , - 7.735 , 0.913870269761431 , - 7.74 , 0.765608368548335 , - 7.745 , 0.589594520216864 , - 7.75 , 0.405299730586112 , - 7.755 , 0.223985767660469 , - 7.76 , 4.920974997763450E-02 , - 7.765 , -0.11994024975627 , - 7.77 , -0.28424112296356 , - 7.775 , -0.43999294669787 , - 7.78 , -0.57663798061898 , - 7.785 , -0.67751213622858 , - 7.79 , -0.72360079867587 , - 7.795 , -0.69901457723046 , - 7.8 , -0.59650776204881 , - 7.805 , -0.42155886366402 , - 7.81 , -0.19380300792328 , - 7.815 , 5.489933475191600E-02 , - 7.82 , 0.285466317840837 , - 7.825 , 0.458377987772727 , - 7.83 , 0.540543411689915 , - 7.835 , 0.510857284716815 , - 7.84 , 0.363486292918927 , - 7.845 , 0.108336402431131 , - 7.85 , -0.21209396424761 , - 7.855 , -0.56957977141521 , - 7.86 , -0.94077073678275 , - 7.865 , -1.29262615047061 , - 7.87 , -1.59622106208727 , - 7.875 , -1.82918316989524 , - 7.88 , -1.97699031089989 , - 7.885 , -2.03327946447786 , - 7.89 , -1.99933934346025 , - 7.895 , -1.88300955675939 , - 7.9 , -1.69721418310355 , - 7.905 , -1.45829064978291 , - 7.91 , -1.18410498022345 , - 7.915 , -0.8919394708508 , - 7.92 , -0.59649837620085 , - 7.925 , -0.30856724453543 , - 7.93 , -3.473084459177880E-02 , - 7.935 , 0.243954038684612 , - 7.94 , 0.505067577023267 , - 7.945 , 0.74523171014185 , - 7.95 , 0.961076322702563 , - 7.955 , 1.14544017577101 , - 7.96 , 1.28755260199966 , - 7.965 , 1.37508301728453 , - 7.97 , 1.39752728794968 , - 7.975 , 1.35018389601987 , - 7.98 , 1.23776787698572 , - 7.985 , 1.07653932806098 , - 7.99 , 0.893865005632781 , - 7.995 , 0.724806073674302 , - 8.0 , 0.606180934525952 , - 8.005 , 0.569233587341791 , - 8.01 , 0.632383043958699 , - 8.015 , 0.795725327814524 , - 8.02 , 1.03874194319127 , - 8.025 , 1.32196705023762 , - 8.03 , 1.59246805399968 , - 8.035 , 1.79229440498998 , - 8.04 , 1.86849022149291 , - 8.045 , 1.78281948278322 , - 8.05 , 1.51926230063055 , - 8.055 , 1.08785213984058 , - 8.06 , 0.524349594247236 , - 8.065 , -0.1140897577962 , - 8.07 , -0.75657207669552 , - 8.075 , -1.32834364834345 , - 8.08 , -1.76124306233852 , - 8.085 , -2.00310207974856 , - 8.09 , -2.02480910234302 , - 8.095 , -1.82430118945956 , - 8.1 , -1.42701906953591 , - 8.105 , -0.88275056011672 , - 8.11 , -0.25930710346958 , - 8.115 , 0.36611395388268 , - 8.12 , 0.916779579720004 , - 8.125 , 1.32634332320688 , - 8.13 , 1.54748990874522 , - 8.135 , 1.55804957216978 , - 8.14 , 1.36358979345776 , - 8.145 , 0.996118542284482 , - 8.15 , 0.509028622424576 , - 8.155 , -3.108833671467930E-02 , - 8.16 , -0.55458355458891 , - 8.165 , -0.9992113406596 , - 8.17 , -1.31909921378195 , - 8.175 , -1.4907344205054 , - 8.18 , -1.51500626604052 , - 8.185 , -1.41506172917135 , - 8.19 , -1.23045719608832 , - 8.195 , -1.00875563741852 , - 8.2 , -0.79618535909745 , - 8.205 , -0.62910374181022 , - 8.21 , -0.52781524086439 , - 8.215 , -0.49375763302869 , - 8.22 , -0.51036868088539 , - 8.225 , -0.54721127046085 , - 8.23 , -0.56640455149806 , - 8.235 , -0.5300607346312 , - 8.24 , -0.40739746710395 , - 8.245 , -0.18031656379607 , - 8.25 , 9.909295562647380E-02 , - 8.255 , 0.384178096593259 , - 8.26 , 0.711568797471058 , - 8.265 , 1.05465985685733 , - 8.27 , 1.38307322715161 , - 8.275 , 1.66640133480447 , - 8.28 , 1.87778042356214 , - 8.285 , 1.99690726227749 , - 8.29 , 2.01218574892656 , - 8.295 , 1.9218468256107 , - 8.3 , 1.73397654400921 , - 8.305 , 1.4654715893691 , - 8.31 , 1.14002097734659 , - 8.315 , 0.785289540807961 , - 8.32 , 0.429654714191936 , - 8.325 , 9.887434390542030E-02 , - 8.33 , -0.27373446466779 , - 8.335 , -0.61453278823147 , - 8.34 , -0.86361514651737 , - 8.345 , -1.02764207046752 , - 8.35 , -1.12312770730449 , - 8.355 , -1.17242345160079 , - 8.36 , -1.19890949112902 , - 8.365 , -1.22231476786338 , - 8.37 , -1.25506074091502 , - 8.375 , -1.30037291926648 , - 8.38 , -1.35246560106362 , - 8.385 , -1.39867274893801 , - 8.39 , -1.42300013455657 , - 8.395 , -1.41027137760835 , - 8.4 , -1.34988412628361 , - 8.405 , -1.23833354826905 , - 8.41 , -1.08003474781669 , - 8.415 , -0.8863811686465 , - 8.42 , -0.67334691448991 , - 8.425 , -0.45824149658395 , - 8.43 , -0.25648271091485 , - 8.435 , -7.919497664086800E-02 , - 8.44 , 6.790702566583660E-02 , - 8.445 , 0.184336104551994 , - 8.45 , 0.273607496426052 , - 8.455 , 0.341427765954767 , - 8.46 , 0.393859568348449 , - 8.465 , 0.436054008314734 , - 8.47 , 0.471822329873715 , - 8.475 , 0.503940686983312 , - 8.48 , 0.534766790770446 , - 8.485 , 0.566720547413461 , - 8.49 , 0.602204083610117 , - 8.495 , 0.642759211345947 , - 8.5 , 0.687546596661957 , - 8.505 , 0.73161370540631 , - 8.51 , 0.764633590722345 , - 8.515 , 0.770779801924118 , - 8.52 , 0.730226474533298 , - 8.525 , 0.622364880535585 , - 8.53 , 0.430299195926097 , - 8.535 , 0.145690142921501 , - 8.54 , -0.1875029917819 , - 8.545 , -0.54835468448798 , - 8.55 , -0.93829077724458 , - 8.555 , -1.32093112448324 , - 8.56 , -1.65568314187632 , - 8.565 , -1.90374313930578 , - 8.57 , -2.03414217931564 , - 8.575 , -2.02871594615485 , - 8.58 , -1.88502979034511 , - 8.585 , -1.61666670363564 , - 8.59 , -1.25090542907548 , - 8.595 , -0.82439719072454 , - 8.6 , -0.3777961843308 , - 8.605 , 5.997342456618780E-02 , - 8.61 , 0.498580351025926 , - 8.615 , 0.848666797179574 , - 8.62 , 1.09518857615416 , - 8.625 , 1.23554791479412 , - 8.63 , 1.2781763580922 , - 8.635 , 1.2403900007702 , - 8.64 , 1.14586627728766 , - 8.645 , 1.02207806372073 , - 8.65 , 0.897804023904626 , - 8.655 , 0.800618191332478 , - 8.66 , 0.754133205007585 , - 8.665 , 0.775081318262375 , - 8.67 , 0.87060821275674 , - 8.675 , 1.03627950859147 , - 8.68 , 1.25531150972849 , - 8.685 , 1.49959206680695 , - 8.69 , 1.73283203030496 , - 8.695 , 1.91564235877547 , - 8.7 , 2.01171708813146 , - 8.705 , 1.99404478322172 , - 8.71 , 1.85004122617725 , - 8.715 , 1.5844790314963 , - 8.72 , 1.21937543098226 , - 8.725 , 0.790685383472318 , - 8.73 , 0.34253999395618 , - 8.735 , -8.315108890721259E-02 , - 8.74 , -0.45782997432698 , - 8.745 , -0.73560630397696 , - 8.75 , -0.90358121095544 , - 8.755 , -0.96494822819405 , - 8.76 , -0.93630744097796 , - 8.765 , -0.84299937779174 , - 8.77 , -0.71350666162014 , - 8.775 , -0.57402043454602 , - 8.78 , -0.44427168990607 , - 8.785 , -0.33542713208977 , - 8.79 , -0.2501116833682 , - 8.795 , -0.18401361018569 , - 8.8 , -0.12842784460002 , - 8.805 , -7.314603730146210E-02 , - 8.81 , -9.074234322190291E-03 , - 8.815 , 7.000693452309770E-02 , - 8.82 , 0.166710878734688 , - 8.825 , 0.280110709519932 , - 8.83 , 0.406273894637497 , - 8.835 , 0.539123020255816 , - 8.84 , 0.671480131538164 , - 8.845 , 0.796107038123461 , - 8.85 , 0.906615981394394 , - 8.855 , 0.998324490593576 , - 8.86 , 1.0690620538107 , - 8.865 , 1.11975528767815 , - 8.87 , 1.15453246345251 , - 8.875 , 1.18023682665442 , - 8.88 , 1.20532586633037 , - 8.885 , 1.23820591293966 , - 8.89 , 1.28520280175297 , - 8.895 , 1.3486570631952 , - 8.9 , 1.42571219461991 , - 8.905 , 1.50820033663049 , - 8.91 , 1.58374708347145 , - 8.915 , 1.63800541668437 , - 8.92 , 1.65764589236558 , - 8.925 , 1.63341505537543 , - 8.93 , 1.5624359419512 , - 8.935 , 1.44906883520367 , - 8.94 , 1.30406714173948 , - 8.945 , 1.14214506133789 , - 8.95 , 0.97845385721763 , - 8.955 , 0.824773099970328 , - 8.96 , 0.686415293227468 , - 8.965 , 0.560675032421674 , - 8.97 , 0.437346493634863 , - 8.975 , 0.301223152764708 , - 8.98 , 0.136102516376474 , - 8.985 , -7.065849555314389E-02 , - 8.99 , -0.32407738413447 , - 8.995 , -0.61898581453294 , - 9.0 , -0.93960037368359 , - 9.005 , -1.26143943272218 , - 9.01 , -1.55516650644025 , - 9.015 , -1.79156612412015 , - 9.02 , -1.94652674681638 , - 9.025 , -2.00503791616427 , - 9.03 , -1.96340298656283 , - 9.035 , -1.82929859570769 , - 9.04 , -1.61975611512981 , - 9.045 , -1.35763976380722 , - 9.05 , -1.06749188919142 , - 9.055 , -0.77165747380896 , - 9.06 , -0.48743715471134 , - 9.065 , -0.22573691716227 , - 9.07 , 8.680561556133970E-03 , - 9.075 , 0.215640087376458 , - 9.08 , 0.397259171267499 , - 9.085 , 0.555581085303924 , - 9.09 , 0.690729679309828 , - 9.095 , 0.800029757983254 , - 9.1 , 0.878247351202657 , - 9.105 , 0.91878759810445 , - 9.11 , 0.915444383097841 , - 9.115 , 0.864214490635585 , - 9.12 , 0.76472553582975 , - 9.125 , 0.620899809131162 , - 9.13 , 0.440670714935382 , - 9.135 , 0.234785445409552 , - 9.14 , 1.501866477042620E-02 , - 9.145 , -0.16256660035877 , - 9.15 , -0.33008216119127 , - 9.155 , -0.49037224168296 , - 9.16 , -0.64324845085619 , - 9.165 , -0.79113983805113 , - 9.17 , -0.93796449486453 , - 9.175 , -1.0876496844508 , - 9.18 , -1.24257624122444 , - 9.185 , -1.40228132491324 , - 9.19 , -1.56269378306469 , - 9.195 , -1.71610185022193 , - 9.2 , -1.85187081485719 , - 9.205 , -1.95781829391389 , - 9.21 , -2.02202032577224 , - 9.215 , -2.03476784125131 , - 9.22 , -1.99032018745331 , - 9.225 , -1.88813289198619 , - 9.23 , -1.73333557866961 , - 9.235 , -1.53634649422576 , - 9.24 , -1.31166062827625 , - 9.245 , -1.075970419663 , - 9.25 , -0.84593818781158 , - 9.255 , -0.63597140868637 , - 9.26 , -0.4563931782957 , - 9.265 , -0.31231411198407 , - 9.27 , -0.20343660584305 , - 9.275 , -0.12481923225902 , - 9.28 , -6.848370877973950E-02 , - 9.285 , -2.555427519972480E-02 , - 9.29 , 1.844706127350420E-02 , - 9.295 , 6.430221576072399E-02 , - 9.3 , 0.10743778394149 , - 9.305 , 0.141299341041405 , - 9.31 , 0.154447624403715 , - 9.315 , 0.133048252401135 , - 9.32 , 6.418690106369780E-02 , - 9.325 , -6.064647417949840E-02 , - 9.33 , -0.24265292279827 , - 9.335 , -0.47405842905361 , - 9.34 , -0.73810449789487 , - 9.345 , -1.0108148464089 , - 9.35 , -1.26431984266432 , - 9.355 , -1.47118757622947 , - 9.36 , -1.60894844812626 , - 9.365 , -1.66394726283033 , - 9.37 , -1.63377593114862 , - 9.375 , -1.52779564631775 , - 9.38 , -1.36560192630373 , - 9.385 , -1.17367488772945 , - 9.39 , -0.98085465048613 , - 9.395 , -0.81346133563023 , - 9.4 , -0.6909389063025 , - 9.405 , -0.62276084953816 , - 9.41 , -0.607149409463 , - 9.415 , -0.63177724383888 , - 9.42 , -0.67625991576389 , - 9.425 , -0.71589163373072 , - 9.43 , -0.72595664968346 , - 9.435 , -0.68589387170155 , - 9.44 , -0.58268627289106 , - 9.445 , -0.412930213848 , - 9.45 , -0.18338626940602 , - 9.455 , 8.998844390524470E-02 , - 9.46 , 0.384209486902062 , - 9.465 , 0.672301526951598 , - 9.47 , 0.926752158620487 , - 9.475 , 1.12295373373336 , - 9.48 , 1.24217806572443 , - 9.485 , 1.27378905610875 , - 9.49 , 1.21646747255966 , - 9.495 , 1.07838936456105 , - 9.5 , 0.876298148043991 , - 9.505 , 0.633562127434793 , - 9.51 , 0.377406516734523 , - 9.515 , 0.135641869430563 , - 9.52 , -6.672476216219871E-02 , - 9.525 , -0.21056458019019 , - 9.53 , -0.28496091918619 , - 9.535 , -0.28841969553759 , - 9.54 , -0.2287139810782 , - 9.545 , -0.12132500570029 , - 9.55 , 7.625888610971770E-03 , - 9.555 , 0.116222883261377 , - 9.56 , 0.213774951165706 , - 9.565 , 0.289397517200485 , - 9.57 , 0.338281477903747 , - 9.575 , 0.362345137379695 , - 9.58 , 0.369650428641696 , - 9.585 , 0.372716892921114 , - 9.59 , 0.386055603509022 , - 9.595 , 0.423398634616031 , - 9.6 , 0.495129281552051 , - 9.605 , 0.60639781396735 , - 9.61 , 0.756225797586165 , - 9.615 , 0.937731164545477 , - 9.62 , 1.13931299682061 , - 9.625 , 1.34651259505288 , - 9.63 , 1.54413547032879 , - 9.635 , 1.71824818793864 , - 9.64 , 1.85768676819293 , - 9.645 , 1.95489941817505 , - 9.65 , 2.00610002856624 , - 9.655 , 2.01090936461916 , - 9.66 , 1.97169865125757 , - 9.665 , 1.89287748522473 , - 9.67 , 1.78030387269109 , - 9.675 , 1.64090911938383 , - 9.68 , 1.48250660526215 , - 9.685 , 1.31363233674109 , - 9.69 , 1.14327915207579 , - 9.695 , 0.980390644995991 , - 9.7 , 0.833122502994828 , - 9.705 , 0.707943691566063 , - 9.71 , 0.608782533951479 , - 9.715 , 0.536448337875884 , - 9.72 , 0.488573445463521 , - 9.725 , 0.46016643878741 , - 9.73 , 0.444740766028055 , - 9.735 , 0.435798656192539 , - 9.74 , 0.428373605655483 , - 9.745 , 0.420256963476142 , - 9.75 , 0.412594868385096 , - 9.755 , 0.409674164332935 , - 9.76 , 0.417930829751558 , - 9.765 , 0.444371250852317 , - 9.77 , 0.494775704856077 , - 9.775 , 0.572057120950962 , - 9.78 , 0.675155981128035 , - 9.785 , 0.798679222993941 , - 9.79 , 0.933324321352313 , - 9.795 , 1.06694698775423 , - 9.8 , 1.18603236012388 , - 9.805 , 1.27724967196587 , - 9.81 , 1.32882747232424 , - 9.815 , 1.33155990686688 , - 9.82 , 1.27942417786924 , - 9.825 , 1.16984949079063 , - 9.83 , 1.00375336219652 , - 9.835 , 0.78541101181126 , - 9.84 , 0.522229879372249 , - 9.845 , 0.224363288427596 , - 9.85 , -7.544298823405959E-02 , - 9.855 , -0.32414911077947 , - 9.86 , -0.56925067043303 , - 9.865 , -0.80153173249929 , - 9.87 , -1.01385881998571 , - 9.875 , -1.20197758458175 , - 9.88 , -1.36481009682394 , - 9.885 , -1.50413197543959 , - 9.89 , -1.62360229940215 , - 9.895 , -1.72737604935286 , - 9.9 , -1.81858556613035 , - 9.905 , -1.89811306323292 , - 9.91 , -1.96399286416952 , - 9.915 , -2.01169321437822 , - 9.92 , -2.03524420540911 , - 9.925 , -2.02897089319518 , - 9.93 , -1.9893635845244 , - 9.935 , -1.91657784009958 , - 9.94 , -1.81508296294018 , - 9.945 , -1.69320466339342 , - 9.95 , -1.56159803137893 , - 9.955 , -1.4309899156992 , - 9.96 , -1.309755744458 , - 9.965 , -1.20194945689331 , - 9.97 , -1.10635858004562 , - 9.975 , -1.01686709903203 , - 9.98 , -0.92410491644605 , - 9.985 , -0.81798616411117 , - 9.99 , -0.69053338279253 , - 9.995 , -0.53828091954851 , - 10.0 , -0.36368359344091 , - 10.005 , -0.17516204935777 , - 10.01 , 3.283892190983560E-02 , - 10.015 , 0.330694200317556 , - 10.02 , 0.577629318788318 , - 10.025 , 0.752762239562344 , - 10.03 , 0.843359973197779 , - 10.035 , 0.846296788144704 , - 10.04 , 0.767736310318568 , - 10.045 , 0.621457280597053 , - 10.05 , 0.426437216065522 , - 10.055 , 0.204358996732675 , - 10.06 , -2.248438925201870E-02 , - 10.065 , -0.23266656596899 , - 10.07 , -0.40662586629101 , - 10.075 , -0.52750200085185 , - 10.08 , -0.58215648669077 , - 10.085 , -0.56248497246021 , - 10.09 , -0.4669190429802 , - 10.095 , -0.30169803576621 , - 10.1 , -8.141467321068210E-02 , - 10.105 , 0.171736188042055 , - 10.11 , 0.430255910671489 , - 10.115 , 0.665052841920839 , - 10.12 , 0.849933032813423 , - 10.125 , 0.965995866692921 , - 10.13 , 1.00493830188015 , - 10.135 , 0.970469370709915 , - 10.14 , 0.877402798238989 , - 10.145 , 0.748601808713132 , - 10.15 , 0.610481808617733 , - 10.155 , 0.488130421487012 , - 10.16 , 0.401133125757128 , - 10.165 , 0.360990723458034 , - 10.17 , 0.370538085006636 , - 10.175 , 0.425250483406994 , - 10.18 , 0.515772332268937 , - 10.185 , 0.630771503752903 , - 10.19 , 0.759255763887151 , - 10.195 , 0.891778215264391 , - 10.2 , 1.02038573505463 , - 10.205 , 1.13765165967161 , - 10.21 , 1.2354498601353 , - 10.215 , 1.30423925529986 , - 10.22 , 1.3333818353705 , - 10.225 , 1.31262109496076 , - 10.23 , 1.23439607687214 , - 10.235 , 1.09630588839482 , - 10.24 , 0.902881246184685 , - 10.245 , 0.665930257015006 , - 10.25 , 0.403145595569434 , - 10.255 , 0.135167464543167 , - 10.26 , -0.1181889683435 , - 10.265 , -0.34158112353947 , - 10.27 , -0.5266606974231 , - 10.275 , -0.67279436439978 , - 10.28 , -0.78577175818034 , - 10.285 , -0.87491503414711 , - 10.29 , -0.94943871678613 , - 10.295 , -1.01514749755514 , - 10.3 , -1.07240552249575 , - 10.305 , -1.1159454664886 , - 10.31 , -1.13652214942974 , - 10.315 , -1.12387719989209 , - 10.32 , -1.07009467236169 , - 10.325 , -0.9723415710773 , - 10.33 , -0.83421714797159 , - 10.335 , -0.66537603566363 , - 10.34 , -0.47961924019497 , - 10.345 , -0.29207437055768 , - 10.35 , -0.11633661841191 , - 10.355 , 3.762456752764130E-02 , - 10.36 , 0.164274796553055 , - 10.365 , 0.262005149857291 , - 10.37 , 0.331666422264028 , - 10.375 , 0.374819782001995 , - 10.38 , 0.392377294442122 , - 10.385 , 0.384141260826285 , - 10.39 , 0.34936414194296 , - 10.395 , 0.288052561776111 , - 10.4 , 0.20242178785536 , - 10.405 , 9.785306567479871E-02 , - 10.41 , -1.713557520971730E-02 , - 10.415 , -0.13204374310037 , - 10.42 , -0.23639873810073 , - 10.425 , -0.32201635263159 , - 10.43 , -0.38475152712529 , - 10.435 , -0.4251245384254 , - 10.44 , -0.44753546126283 , - 10.445 , -0.45825628870499 , - 10.45 , -0.46279334754373 , - 10.455 , -0.46346276944743 , - 10.46 , -0.45799981189361 , - 10.465 , -0.43972280992741 , - 10.47 , -0.39929302861398 , - 10.475 , -0.32758719542718 , - 10.48 , -0.21885278786041 , - 10.485 , -7.315503161217039E-02 , - 10.49 , 0.102651407152514 , - 10.495 , 0.295816563735959 , - 10.5 , 0.490226934148564 , - 10.505 , 0.669891810457828 , - 10.51 , 0.82237594525252 , - 10.515 , 0.941216017829958 , - 10.52 , 1.02661998674533 , - 10.525 , 1.08430529858058 , - 10.53 , 1.12286636573309 , - 10.535 , 1.15051988582967 , - 10.54 , 1.17222128266484 , - 10.545 , 1.18801420247095 , - 10.55 , 1.19307665922947 , - 10.555 , 1.17938295001738 , - 10.56 , 1.13840303313913 , - 10.565 , 1.06394181580147 , - 10.57 , 0.95422952397942 , - 10.575 , 0.812611611237298 , - 10.58 , 0.646677789199809 , - 10.585 , 0.466152014272008 , - 10.59 , 0.280289725059773 , - 10.595 , 9.565146176778430E-02 , - 10.6 , -8.499446193837400E-02 , - 10.605 , -0.26230216706899 , - 10.61 , -0.4386137767682 , - 10.615 , -0.6154630451662 , - 10.62 , -0.79113786663093 , - 10.625 , -0.9591661750224 , - 10.63 , -1.10826769502301 , - 10.635 , -1.22391556601366 , - 10.64 , -1.29112533315649 , - 10.645 , -1.29775475114347 , - 10.65 , -1.23742365152054 , - 10.655 , -1.11129656465532 , - 10.66 , -0.9282894842173 , - 10.665 , -0.70371663339333 , - 10.67 , -0.45680011277455 , - 10.675 , -0.20771128037236 , - 10.68 , 2.512459612945220E-02 , - 10.685 , 0.226918245807304 , - 10.69 , 0.387350552286146 , - 10.695 , 0.500473670939197 , - 10.7 , 0.564029266358019 , - 10.705 , 0.578637288901258 , - 10.71 , 0.547211894628189 , - 10.715 , 0.474757060973486 , - 10.72 , 0.368436624005821 , - 10.725 , 0.237615830995378 , - 10.73 , 9.352792827951401E-02 , - 10.735 , -5.167273774008210E-02 , - 10.74 , -0.18646809540466 , - 10.745 , -0.30187135567744 , - 10.75 , -0.39316916542135 , - 10.755 , -0.46096802891446 , - 10.76 , -0.51111268636195 , - 10.765 , -0.55334646668629 , - 10.77 , -0.59891300067983 , - 10.775 , -0.65764678122702 , - 10.78 , -0.73525453842381 , - 10.785 , -0.83150017185443 , - 10.79 , -0.93976747420304 , - 10.795 , -1.04812248595262 , - 10.8 , -1.14160318244191 , - 10.805 , -1.2051488991501 , - 10.81 , -1.22646384585139 , - 10.815 , -1.19814339245798 , - 10.82 , -1.11865520710004 , - 10.825 , -0.9920714349609 , - 10.83 , -0.82681485385664 , - 10.835 , -0.63386505629908 , - 10.84 , -0.42496268277971 , - 10.845 , -0.21119376102165 , - 10.85 , -2.191019852703480E-03 , - 10.855 , 0.194127641793734 , - 10.86 , 0.371466018382975 , - 10.865 , 0.525035130835761 , - 10.87 , 0.651602813791636 , - 10.875 , 0.749803994860723 , - 10.88 , 0.820544481310922 , - 10.885 , 0.867273287648818 , - 10.89 , 0.895807866624117 , - 10.895 , 0.913572593095597 , - 10.9 , 0.928236729298366 , - 10.905 , 0.946014350836689 , - 10.91 , 0.970040868532415 , - 10.915 , 0.999311930164329 , - 10.92 , 1.02854682988849 , - 10.925 , 1.04913139979 , - 10.93 , 1.05098941441043 , - 10.935 , 1.02499491482512 , - 10.94 , 0.965351048328359 , - 10.945 , 0.871370473531725 , - 10.95 , 0.748233229517312 , - 10.955 , 0.606563895886194 , - 10.96 , 0.460955473292802 , - 10.965 , 0.327805324612049 , - 10.97 , 0.222950093923078 , - 10.975 , 0.159562148201255 , - 10.98 , 0.146631988185719 , - 10.985 , 0.188170103964573 , - 10.99 , 0.283066815855546 , - 10.995 , 0.425428418732869 , - 11.0 , 0.605185596503197 , - 11.005 , 0.808842841129001 , - 11.01 , 1.0203252588096 , - 11.015 , 1.22200011907392 , - 11.02 , 1.39594474367148 , - 11.025 , 1.52549944650203 , - 11.03 , 1.59700049844879 , - 11.035 , 1.60145576944865 , - 11.04 , 1.53581761942562 , - 11.045 , 1.4034930323483 , - 11.05 , 1.2138831423925 , - 11.055 , 0.980912371026411 , - 11.06 , 0.720812505576093 , - 11.065 , 0.449601892036102 , - 11.07 , 0.180857582628542 , - 11.075 , -7.573381698891210E-02 , - 11.08 , -0.31470812975405 , - 11.085 , -0.53405962087938 , - 11.09 , -0.73364261678681 , - 11.095 , -0.91330540113887 , - 11.1 , -1.07132417643687 , - 11.105 , -1.20365312210336 , - 11.11 , -1.30419832213249 , - 11.115 , -1.36604239161232 , - 11.12 , -1.38321880818252 , - 11.125 , -1.35249870150789 , - 11.13 , -1.27462783831177 , - 11.135 , -1.15465182792767 , - 11.14 , -1.00123343402233 , - 11.145 , -0.82518952456788 , - 11.15 , -0.63769529339716 , - 11.155 , -0.44866816516864 , - 11.16 , -0.26576203055682 , - 11.165 , -9.416463454136630E-02 , - 11.17 , 6.287575092606090E-02 , - 11.175 , 0.203141505865471 , - 11.18 , 0.324579712695666 , - 11.185 , 0.424889751727608 , - 11.19 , 0.501750804315283 , - 11.195 , 0.5536421159011 , - 11.2 , 0.580921794960766 , - 11.205 , 0.586704260853481 , - 11.21 , 0.5770850470881 , - 11.215 , 0.560449668733132 , - 11.22 , 0.545887300846328 , - 11.225 , 0.541047479949923 , - 11.23 , 0.549990662947013 , - 11.235 , 0.571663114185204 , - 11.24 , 0.599500251771258 , - 11.245 , 0.62236878054162 , - 11.25 , 0.626713322562836 , - 11.255 , 0.599434772191117 , - 11.26 , 0.530838614269415 , - 11.265 , 0.416951659398843 , - 11.27 , 0.26068866151549 , - 11.275 , 7.163385796821510E-02 , - 11.28 , -0.13542954911164 , - 11.285 , -0.34285006284799 , - 11.29 , -0.53271798082564 , - 11.295 , -0.68922055953639 , - 11.3 , -0.80031992822441 , - 11.305 , -0.85859556643174 , - 11.31 , -0.86132208764303 , - 11.315 , -0.81002406922002 , - 11.32 , -0.70979684966059 , - 11.325 , -0.56862676261062 , - 11.33 , -0.39681435075012 , - 11.335 , -0.20645292887016 , - 11.34 , -1.082875708200500E-02 , - 11.345 , 0.176412752549899 , - 11.35 , 0.342376371445806 , - 11.355 , 0.476235796330172 , - 11.36 , 0.570527791788077 , - 11.365 , 0.622137109693916 , - 11.37 , 0.632674434445817 , - 11.375 , 0.608089217990313 , - 11.38 , 0.557537864431003 , - 11.385 , 0.491727720373806 , - 11.39 , 0.421100488617183 , - 11.395 , 0.35424883871057 , - 11.4 , 0.296898598214297 , - 11.405 , 0.251615782949777 , - 11.41 , 0.218205567537362 , - 11.415 , 0.194575186033259 , - 11.42 , 0.177750889222743 , - 11.425 , 0.164739545969125 , - 11.43 , 0.153046754059915 , - 11.435 , 0.140795993214209 , - 11.44 , 0.12656443411951 , - 11.445 , 0.109119048772985 , - 11.45 , 8.726746617413900E-02 , - 11.455 , 5.991980120903190E-02 , - 11.46 , 2.635460927914640E-02 , - 11.465 , -1.345275150280380E-02 , - 11.47 , -5.863610709200840E-02 , - 11.475 , -0.10755044102404 , - 11.48 , -0.15824658177879 , - 11.485 , -0.20921212071436 , - 11.49 , -0.26013226175091 , - 11.495 , -0.31237245530863 , - 11.5 , -0.36890715351072 , - 11.505 , -0.43358437734804 , - 11.51 , -0.50981957766845 , - 11.515 , -0.59903776556946 , - 11.52 , -0.69931194037806 , - 11.525 , -0.80465691443919 , - 11.53 , -0.90529166691289 , - 11.535 , -0.98894889157901 , - 11.54 , -1.0430005689334 , - 11.545 , -1.05693388169808 , - 11.55 , -1.0245796623575 , - 11.555 , -0.94554374723514 , - 11.56 , -0.82548253167239 , - 11.565 , -0.67515951222416 , - 11.57 , -0.50853411181021 , - 11.575 , -0.34035152824456 , - 11.58 , -0.18380744340702 , - 11.585 , -4.877605466847740E-02 , - 11.59 , 5.909608053637810E-02 , - 11.595 , 0.138405652647701 , - 11.6 , 0.191311518017365 , - 11.605 , 0.222508949979136 , - 11.61 , 0.238194003082017 , - 11.615 , 0.245269919971124 , - 11.62 , 0.250838712250952 , - 11.625 , 0.261870016704265 , - 11.63 , 0.284836510438269 , - 11.635 , 0.325131372886616 , - 11.64 , 0.386198740355232 , - 11.645 , 0.468513501462264 , - 11.65 , 0.568696341674455 , - 11.655 , 0.679148315040223 , - 11.66 , 0.788508513966795 , - 11.665 , 0.883056182933764 , - 11.67 , 0.948906416298242 , - 11.675 , 0.974570797520427 , - 11.68 , 0.953277599477234 , - 11.685 , 0.884438058167201 , - 11.69 , 0.77382364723826 , - 11.695 , 0.632334566850428 , - 11.7 , 0.473622939615698 , - 11.705 , 0.311143111887763 , - 11.71 , 0.15539149490874 , - 11.715 , 1.204008787083370E-02 , - 11.72 , -0.1185541756946 , - 11.725 , -0.24038836981401 , - 11.73 , -0.35969118541412 , - 11.735 , -0.48228327823872 , - 11.74 , -0.61114632720659 , - 11.745 , -0.74488165421895 , - 11.75 , -0.87742903375438 , - 11.755 , -0.9990735442117 , - 11.76 , -1.09838127444184 , - 11.765 , -1.16449496867241 , - 11.77 , -1.18914405096313 , - 11.775 , -1.1678940579368 , - 11.78 , -1.10040933370095 , - 11.785 , -0.98984205208497 , - 11.79 , -0.8417105178341 , - 11.795 , -0.66273801588279 , - 11.8 , -0.46007426875265 , - 11.805 , -0.24109784101173 , - 11.81 , -1.376424841735200E-02 , - 11.815 , 0.212820798236347 , - 11.82 , 0.428004774853851 , - 11.825 , 0.61976809620263 , - 11.83 , 0.775664732827253 , - 11.835 , 0.884459785072971 , - 11.84 , 0.938105319486098 , - 11.845 , 0.933533376809836 , - 11.85 , 0.873720830366818 , - 11.855 , 0.767639484838718 , - 11.86 , 0.628977669852066 , - 11.865 , 0.4738539721813 , - 11.87 , 0.31801589351757 , - 11.875 , 0.174157204161953 , - 11.88 , 4.995725310342680E-02 , - 11.885 , -5.275216941488590E-02 , - 11.89 , -0.13756423084181 , - 11.895 , -0.2120196831066 , - 11.9 , -0.28548456301669 , - 11.905 , -0.36691840941378 , - 11.91 , -0.46300320666114 , - 11.915 , -0.57696070561373 , - 11.92 , -0.70814553643099 , - 11.925 , -0.85232717509853 , - 11.93 , -1.00241060096662 , - 11.935 , -1.14936568830572 , - 11.94 , -1.28315120023664 , - 11.945 , -1.39356260774938 , - 11.95 , -1.47101607033074 , - 11.955 , -1.5073448490242 , - 11.96 , -1.4966490584904 , - 11.965 , -1.43616086274327 , - 11.97 , -1.32698077186283 , - 11.975 , -1.17446433758603 , - 11.98 , -0.98804059864846 , - 11.985 , -0.78032474331784 , - 11.99 , -0.56556840849598 , - 11.995 , -0.35765933543277 , - 12.0 , -0.16807550799874 , - 12.005 , -4.227255766186140E-03 , - 12.01 , 0.131383604645629 , - 12.015 , 0.240987503608671 , - 12.02 , 0.330348730788584 , - 12.025 , 0.406826008170448 , - 12.03 , 0.477144240124697 , - 12.035 , 0.545422501700242 , - 12.04 , 0.611915404843405 , - 12.045 , 0.672755857445556 , - 12.05 , 0.720723072194553 , - 12.055 , 0.746832365003761 , - 12.06 , 0.742346946489963 , - 12.065 , 0.700760339032901 , - 12.07 , 0.619339003519911 , - 12.075 , 0.499959785870592 , - 12.08 , 0.349159304278182 , - 12.085 , 0.177470223182518 , - 12.09 , -1.753350545225190E-03 , - 12.095 , -0.17379950342875 , - 12.1 , -0.32413511149758 , - 12.105 , -0.43987021437218 , - 12.11 , -0.51104917071923 , - 12.115 , -0.53171143244092 , - 12.12 , -0.50064639271511 , - 12.125 , -0.42174741533336 , - 12.13 , -0.30385287601246 , - 12.135 , -0.1599770009419 , - 12.14 , -5.916472086063350E-03 , - 12.145 , 0.141672124157728 , - 12.15 , 0.267467136745314 , - 12.155 , 0.359599717485464 , - 12.16 , 0.411271872916484 , - 12.165 , 0.421529890421321 , - 12.17 , 0.394986365391134 , - 12.175 , 0.340522937951077 , - 12.18 , 0.269238562662315 , - 12.185 , 0.19209641315972 , - 12.19 , 0.11779958413244 , - 12.195 , 5.136625423508250E-02 , - 12.2 , -6.300947873046220E-03 , - 12.205 , -5.782223054975370E-02 , - 12.21 , -0.10793985148095 , - 12.215 , -0.16174127408618 , - 12.22 , -0.22298866763169 , - 12.225 , -0.2929886222154 , - 12.23 , -0.37024238871399 , - 12.235 , -0.45090142997871 , - 12.24 , -0.52980992267136 , - 12.245 , -0.60178949630599 , - 12.25 , -0.66276746147737 , - 12.255 , -0.71046604589472 , - 12.26 , -0.74450641227213 , - 12.265 , -0.76599806365513 , - 12.27 , -0.77681628816103 , - 12.275 , -0.77885826543421 , - 12.28 , -0.77352755022123 , - 12.285 , -0.76159237398235 , - 12.29 , -0.74340951487468 , - 12.295 , -0.7193684533261 , - 12.3 , -0.69033859752466 , - 12.305 , -0.65790529310338 , - 12.31 , -0.62427337609045 , - 12.315 , -0.59183465481714 , - 12.32 , -0.5625391602505 , - 12.325 , -0.53727609431785 , - 12.33 , -0.51549939568466 , - 12.335 , -0.49523027754421 , - 12.34 , -0.47348196058407 , - 12.345 , -0.44699386193397 , - 12.35 , -0.41308162478787 , - 12.355 , -0.37035623858392 , - 12.36 , -0.31912406711736 , - 12.365 , -0.26136188585533 , - 12.37 , -0.20030871435109 , - 12.375 , -0.13979053261561 , - 12.38 , -8.348819445843680E-02 , - 12.385 , -3.432412971860200E-02 , - 12.39 , 5.898257672503130E-03 , - 12.395 , 3.658675251617240E-02 , - 12.4 , 5.823490831704580E-02 , - 12.405 , 7.220973009677149E-02 , - 12.41 , 8.054556791305920E-02 , - 12.415 , 8.583652449551200E-02 , - 12.42 , 9.119751190995400E-02 , - 12.425 , 0.10022495276452 , - 12.43 , 0.116830802684467 , - 12.435 , 0.144865533553475 , - 12.44 , 0.187496464655846 , - 12.445 , 0.246429769927851 , - 12.45 , 0.321134575890146 , - 12.455 , 0.408310004218564 , - 12.46 , 0.501792671730819 , - 12.465 , 0.593049206029892 , - 12.47 , 0.672237912914609 , - 12.475 , 0.729699407315016 , - 12.48 , 0.757595593934302 , - 12.485 , 0.751370987649759 , - 12.49 , 0.710716591717499 , - 12.495 , 0.639832178015772 , - 12.5 , 0.546914264636683 , - 12.505 , 0.442962983193198 , - 12.51 , 0.340141957400465 , - 12.515 , 0.249991895482425 , - 12.52 , 0.181816356681784 , - 12.525 , 0.14149413564273 , - 12.53 , 0.130883062190031 , - 12.535 , 0.147852731887966 , - 12.54 , 0.186894240935408 , - 12.545 , 0.240161777063203 , - 12.55 , 0.298772249040031 , - 12.555 , 0.3541646202598 , - 12.56 , 0.399336722395081 , - 12.565 , 0.429803491932159 , - 12.57 , 0.444142296553351 , - 12.575 , 0.444055340271153 , - 12.58 , 0.433919042501565 , - 12.585 , 0.41987739717275 , - 12.59 , 0.408602791719151 , - 12.595 , 0.405932599777175 , - 12.6 , 0.415626645287793 , - 12.605 , 0.438500795189521 , - 12.61 , 0.47213105784221 , - 12.615 , 0.511225323925744 , - 12.62 , 0.548612052766521 , - 12.625 , 0.576660272126196 , - 12.63 , 0.588829953918048 , - 12.635 , 0.581021197761628 , - 12.64 , 0.552418992096461 , - 12.645 , 0.505653719521126 , - 12.65 , 0.446259700593861 , - 12.655 , 0.381569197808235 , - 12.66 , 0.319325454510432 , - 12.665 , 0.266332799357825 , - 12.67 , 0.227442179455834 , - 12.675 , 0.20505248099 , - 12.68 , 0.199165657452942 , - 12.685 , 0.207885677656546 , - 12.69 , 0.228151213713856 , - 12.695 , 0.256464303289308 , - 12.7 , 0.289423464944378 , - 12.705 , 0.323974105633788 , - 12.71 , 0.357399971553342 , - 12.715 , 0.387180213631022 , - 12.72 , 0.410871216078733 , - 12.725 , 0.426149440224674 , - 12.73 , 0.431066724422046 , - 12.735 , 0.424468610875424 , - 12.74 , 0.40643852414304 , - 12.745 , 0.378585136191504 , - 12.75 , 0.344023630341179 , - 12.755 , 0.306976904799534 , - 12.76 , 0.272045167670388 , - 12.765 , 0.243295410789869 , - 12.77 , 0.223399948751481 , - 12.775 , 0.213036444793139 , - 12.78 , 0.210713889469279 , - 12.785 , 0.213057227036913 , - 12.79 , 0.21547276609123 , - 12.795 , 0.213006795751766 , - 12.8 , 0.201182178134479 , - 12.805 , 0.176611102924828 , - 12.81 , 0.137299208402565 , - 12.815 , 8.261651333889580E-02 , - 12.82 , 1.306254997938910E-02 , - 12.825 , -7.003874532972119E-02 , - 12.83 , -0.16475325893821 , - 12.835 , -0.26859374971277 , - 12.84 , -0.37841766630558 , - 12.845 , -0.49027765178853 , - 12.85 , -0.59935591527846 , - 12.855 , -0.70013189417767 , - 12.86 , -0.78683177941038 , - 12.865 , -0.85412623949955 , - 12.87 , -0.89792127381358 , - 12.875 , -0.91603916182254 , - 12.88 , -0.90857357773468 , - 12.885 , -0.87778714750083 , - 12.89 , -0.8275372966502 , - 12.895 , -0.76235786224487 , - 12.9 , -0.68643393291051 , - 12.905 , -0.60274756840487 , - 12.91 , -0.51264247885951 , - 12.915 , -0.41593073711012 , - 12.92 , -0.3115269410358 , - 12.925 , -0.19842747985447 , - 12.93 , -7.676760694603291E-02 , - 12.935 , 5.135539420685220E-02 , - 12.94 , 0.181528383908596 , - 12.945 , 0.307260660414741 , - 12.95 , 0.420769213103223 , - 12.955 , 0.514139979660135 , - 12.96 , 0.580592682156079 , - 12.965 , 0.615578076246798 , - 12.97 , 0.617476907926892 , - 12.975 , 0.587799377315074 , - 12.98 , 0.530889280436902 , - 12.985 , 0.453243660311424 , - 12.99 , 0.362622392194437 , - 12.995 , 0.2671120583141 , - 13.0 , 0.174286119779362 , - 13.005 , 9.052797178882990E-02 , - 13.01 , 2.054498441234870E-02 , - 13.015 , -3.294702871288870E-02 , - 13.02 , -6.937300005549160E-02 , - 13.025 , -9.028206231971420E-02 , - 13.03 , -9.913110412573760E-02 , - 13.035 , -0.10083734030815 , - 13.04 , -0.10108450259662 , - 13.045 , -0.1054266897417 , - 13.05 , -0.1182915683999 , - 13.055 , -0.14205888957835 , - 13.06 , -0.17640190935702 , - 13.065 , -0.21806865581631 , - 13.07 , -0.26120089347156 , - 13.075 , -0.29817769418101 , - 13.08 , -0.32085004389739 , - 13.085 , -0.32193831070962 , - 13.09 , -0.29631759697471 , - 13.095 , -0.24193696858333 , - 13.1 , -0.16019970762232 , - 13.105 , -5.574993867029920E-02 , - 13.11 , 6.425618048517991E-02 , - 13.115 , 0.19122987419663 , - 13.12 , 0.316346629224766 , - 13.125 , 0.431653751489729 , - 13.13 , 0.530914954469608 , - 13.135 , 0.610121196882937 , - 13.14 , 0.667657470309265 , - 13.145 , 0.704186599565721 , - 13.15 , 0.722325191446681 , - 13.155 , 0.726186367330791 , - 13.16 , 0.720836106520834 , - 13.165 , 0.711688820321258 , - 13.17 , 0.703862564199362 , - 13.175 , 0.701524520420123 , - 13.18 , 0.707294612263167 , - 13.185 , 0.721797723723084 , - 13.19 , 0.743474213000332 , - 13.195 , 0.768726481461021 , - 13.2 , 0.792431876186836 , - 13.205 , 0.808764824723334 , - 13.21 , 0.812196723822406 , - 13.215 , 0.798471820125594 , - 13.22 , 0.765360902698407 , - 13.225 , 0.713020417223642 , - 13.23 , 0.643892155196421 , - 13.235 , 0.562167990243985 , - 13.24 , 0.472970245560551 , - 13.245 , 0.381438619514679 , - 13.25 , 0.291951206368075 , - 13.255 , 0.20762340636979 , - 13.26 , 0.130166940321081 , - 13.265 , 6.006289386634430E-02 , - 13.27 , -3.060365982684810E-03 , - 13.275 , -6.001488208941340E-02 , - 13.28 , -0.11173380533579 , - 13.285 , -0.15914104631288 , - 13.29 , -0.20317809418618 , - 13.295 , -0.24493336090531 , - 13.3 , -0.28573011925772 , - 13.305 , -0.32707569024184 , - 13.31 , -0.37040876594875 , - 13.315 , -0.41668833903021 , - 13.32 , -0.46592656198441 , - 13.325 , -0.51683388329442 , - 13.33 , -0.56671530350641 , - 13.335 , -0.61172427575717 , - 13.34 , -0.64745289857378 , - 13.345 , -0.66975635467017 , - 13.35 , -0.67561421984368 , - 13.355 , -0.66382212752523 , - 13.36 , -0.63533221269618 , - 13.365 , -0.59315990071751 , - 13.37 , -0.54187928568118 , - 13.375 , -0.48684683870894 , - 13.38 , -0.43334458417513 , - 13.385 , -0.38584852580448 , - 13.39 , -0.34757223717143 , - 13.395 , -0.32034609191295 , - 13.4 , -0.30479305822331 , - 13.405 , -0.30068667519817 , - 13.41 , -0.30734431404504 , - 13.415 , -0.32393187524719 , - 13.42 , -0.3496124571983 , - 13.425 , -0.38355062958007 , - 13.43 , -0.42483772740574 , - 13.435 , -0.47243959941852 , - 13.44 , -0.52523698989138 , - 13.445 , -0.58218855059142 , - 13.45 , -0.64255715702482 , - 13.455 , -0.70611547192509 , - 13.46 , -0.77319959733532 , - 13.465 , -0.84453581144061 , - 13.47 , -0.9208154277502 , - 13.475 , -1.00210330165744 , - 13.48 , -1.08722318257344 , - 13.485 , -1.17331384017982 , - 13.49 , -1.25571905330723 , - 13.495 , -1.32830569669314 , - 13.5 , -1.38419198321401 , - 13.505 , -1.41674939954092 , - 13.51 , -1.42066916256513 , - 13.515 , -1.39284912504276 , - 13.52 , -1.33290856588875 , - 13.525 , -1.24321481899912 , - 13.53 , -1.12845482092199 , - 13.535 , -0.994859301148 , - 13.54 , -0.84929200472393 , - 13.545 , -0.69840229944309 , - 13.55 , -0.5480171915834 , - 13.555 , -0.40283245150506 , - 13.56 , -0.26639859300057 , - 13.565 , -0.1412841699847 , - 13.57 , -2.930752910284020E-02 , - 13.575 , 6.831031669366761E-02 , - 13.58 , 0.150909902638648 , - 13.585 , 0.218485436556094 , - 13.59 , 0.271817772885176 , - 13.595 , 0.312563547048263 , - 13.6 , 0.343197563758831 , - 13.605 , 0.366784232668975 , - 13.61 , 0.386577813348275 , - 13.615 , 0.405567940703392 , - 13.62 , 0.426060284638387 , - 13.625 , 0.449416325446865 , - 13.63 , 0.476003373865086 , - 13.635 , 0.505362938780156 , - 13.64 , 0.536518767578895 , - 13.645 , 0.568328300506654 , - 13.65 , 0.599754845087405 , - 13.655 , 0.630000025300325 , - 13.66 , 0.6584695973929 , - 13.665 , 0.68462841460832 , - 13.67 , 0.70782686172262 , - 13.675 , 0.727203534668359 , - 13.68 , 0.741722744375036 , - 13.685 , 0.750362416108883 , - 13.69 , 0.752392406085506 , - 13.695 , 0.747650040601305 , - 13.7 , 0.736696231685042 , - 13.705 , 0.720777621636586 , - 13.71 , 0.701571294344929 , - 13.715 , 0.680769236869278 , - 13.72 , 0.659613778989939 , - 13.725 , 0.638519591968826 , - 13.73 , 0.616905016742059 , - 13.735 , 0.593283746255628 , - 13.74 , 0.565603855337414 , - 13.745 , 0.531733554716355 , - 13.75 , 0.489962659748419 , - 13.755 , 0.439375608243233 , - 13.76 , 0.380009446404367 , - 13.765 , 0.312773129830936 , - 13.77 , 0.239195423372873 , - 13.775 , 0.16110638214858 , - 13.78 , 8.038995906805420E-02 , - 13.785 , -1.102897232504770E-03 , - 13.79 , -8.144778281704360E-02 , - 13.795 , -0.15840843583426 , - 13.8 , -0.22917659635052 , - 13.805 , -0.29024518206889 , - 13.81 , -0.33752175024298 , - 13.815 , -0.36674198188098 , - 13.82 , -0.37413071891857 , - 13.825 , -0.35717935529397 , - 13.83 , -0.31535074520267 , - 13.835 , -0.25052105857336 , - 13.84 , -0.16702284226815 , - 13.845 , -7.124636094412699E-02 , - 13.85 , 2.913353087510890E-02 , - 13.855 , 0.126149325078345 , - 13.86 , 0.212544685340441 , - 13.865 , 0.282593826653342 , - 13.87 , 0.33259342353236 , - 13.875 , 0.360977014896564 , - 13.88 , 0.368090497895831 , - 13.885 , 0.355740094833499 , - 13.89 , 0.326653538417733 , - 13.895 , 0.283980395609887 , - 13.9 , 0.230911938687721 , - 13.905 , 0.170438689852821 , - 13.91 , 0.105217955743757 , - 13.915 , 3.748846121428490E-02 , - 13.92 , -3.100811006762060E-02 , - 13.925 , -9.912461677678459E-02 , - 13.93 , -0.16638732593593 , - 13.935 , -0.23301599989748 , - 13.94 , -0.29981098203477 , - 13.945 , -0.36788336374228 , - 13.95 , -0.43823790831234 , - 13.955 , -0.51128976367887 , - 13.96 , -0.58642827752511 , - 13.965 , -0.66176331535379 , - 13.97 , -0.7341480161194 , - 13.975 , -0.79952454249667 , - 13.98 , -0.85353878258576 , - 13.985 , -0.89230509468498 , - 13.99 , -0.9131476514604 , - 13.995 , -0.91514375354423 , - 14.0 , -0.8993367487938 , - 14.005 , -0.86856422332842 , - 14.01 , -0.82694415950239 , - 14.015 , -0.77913771351111 , - 14.02 , -0.72955729658514 , - 14.025 , -0.68168905647206 , - 14.03 , -0.63766151216947 , - 14.035 , -0.59811504505913 , - 14.04 , -0.56235853309889 , - 14.045 , -0.52872726325526 , - 14.05 , -0.49503897771436 , - 14.055 , -0.45902725746187 , - 14.06 , -0.41868594009816 , - 14.065 , -0.37248337306763 , - 14.07 , -0.31947100513302 , - 14.075 , -0.25931189817463 , - 14.08 , -0.19228261646431 , - 14.085 , -0.11925792681763 , - 14.09 , -4.169532968283350E-02 , - 14.095 , 3.843303316390890E-02 , - 14.1 , 0.118775003838835 , - 14.105 , 0.196837583343436 , - 14.11 , 0.270307193173439 , - 14.115 , 0.337420184008135 , - 14.12 , 0.397291393971841 , - 14.125 , 0.450126440210993 , - 14.13 , 0.497226657276013 , - 14.135 , 0.540774142842358 , - 14.14 , 0.58340264798186 , - 14.145 , 0.627643304621108 , - 14.15 , 0.675349975738562 , - 14.155 , 0.727241025622671 , - 14.16 , 0.782651129746367 , - 14.165 , 0.839560451090441 , - 14.17 , 0.894881294455553 , - 14.175 , 0.944955884798899 , - 14.18 , 0.986144014351956 , - 14.185 , 1.015390719979 , - 14.19 , 1.0306572943892 , - 14.195 , 1.03115234481902 , - 14.2 , 1.01733343986871 , - 14.205 , 0.990709541557108 , - 14.21 , 0.953502790822332 , - 14.215 , 0.908254264710393 , - 14.22 , 0.857454756635746 , - 14.225 , 0.803265224100822 , - 14.23 , 0.74737385316121 , - 14.235 , 0.690995601525318 , - 14.24 , 0.635005073529152 , - 14.245 , 0.580160133049894 , - 14.25 , 0.527369694111442 , - 14.255 , 0.477938039158216 , - 14.26 , 0.433728338232803 , - 14.265 , 0.397194149800069 , - 14.27 , 0.371248511478309 , - 14.275 , 0.358963505823744 , - 14.28 , 0.363137797938165 , - 14.285 , 0.385787231840523 , - 14.29 , 0.427657749130475 , - 14.295 , 0.487849697242734 , - 14.3 , 0.563646552494242 , - 14.305 , 0.650598748291401 , - 14.31 , 0.742869615401765 , - 14.315 , 0.833794067276776 , - 14.32 , 0.916556460872168 , - 14.325 , 0.984863842045941 , - 14.33 , 1.0335040976667 , - 14.335 , 1.05869041827564 , - 14.34 , 1.05816644274048 , - 14.345 , 1.03108361491544 , - 14.35 , 0.977735351761127 , - 14.355 , 0.899232930675646 , - 14.36 , 0.797237214065439 , - 14.365 , 0.673796884116058 , - 14.37 , 0.531337867932015 , - 14.375 , 0.372747573641774 , - 14.38 , 0.20150981243218 , - 14.385 , 2.178427411223690E-02 , - 14.39 , -0.16161383529816 , - 14.395 , -0.34339606863716 , - 14.4 , -0.5181084642692 , - 14.405 , -0.68053644448525 , - 14.41 , -0.826088703855 , - 14.415 , -0.95112570187104 , - 14.42 , -1.05313423965707 , - 14.425 , -1.13075625342751 , - 14.43 , -1.18366851217429 , - 14.435 , -1.21238579974723 , - 14.44 , -1.21803310838506 , - 14.445 , -1.20215241564511 , - 14.45 , -1.16656016251128 , - 14.455 , -1.113269900772 , - 14.46 , -1.04444581397611 , - 14.465 , -0.96236345544593 , - 14.47 , -0.86935386142724 , - 14.475 , -0.76773118679175 , - 14.48 , -0.65972693552001 , - 14.485 , -0.54746173019692 , - 14.49 , -0.43299292085595 , - 14.495 , -0.3184397215422 , - 14.5 , -0.20616849862018 , - 14.505 , -9.897318159698620E-02 , - 14.51 , -1.803143023172810E-04 , - 14.515 , 8.640194233650360E-02 , - 14.52 , 0.156727372406871 , - 14.525 , 0.206940131693837 , - 14.53 , 0.233914703352716 , - 14.535 , 0.235793875210402 , - 14.54 , 0.212387260096523 , - 14.545 , 0.165314426336394 , - 14.55 , 9.783758697368690E-02 , - 14.555 , 1.439534230634960E-02 , - 14.56 , -8.005859022341789E-02 , - 14.565 , -0.18076618261283 , - 14.57 , -0.28374454180973 , - 14.575 , -0.38610798365218 , - 14.58 , -0.48605081190961 , - 14.585 , -0.58252398542127 , - 14.59 , -0.67470367132805 , - 14.595 , -0.76142935693159 , - 14.6 , -0.8407780560685 , - 14.605 , -0.90992374040628 , - 14.61 , -0.96532870247995 , - 14.615 , -1.00324396367882 , - 14.62 , -1.02038773635927 , - 14.625 , -1.01463341589249 , - 14.63 , -0.98552757460307 , - 14.635 , -0.93450835223946 , - 14.64 , -0.86477120783303 , - 14.645 , -0.78081893710178 , - 14.65 , -0.68781873202676 , - 14.655 , -0.59091719649253 , - 14.66 , -0.49467793607145 , - 14.665 , -0.40274402274473 , - 14.67 , -0.31777533615604 , - 14.675 , -0.24161241000393 , - 14.68 , -0.17557875216008 , - 14.685 , -0.12078750746673 , - 14.69 , -7.835224295217311E-02 , - 14.695 , -4.942101977486440E-02 , - 14.7 , -3.503749471905150E-02 , - 14.705 , -3.587495731215070E-02 , - 14.71 , -5.194398103175540E-02 , - 14.715 , -8.236828155631780E-02 , - 14.72 , -0.12531697112263 , - 14.725 , -0.17812203875209 , - 14.73 , -0.23756805254037 , - 14.735 , -0.30028601265584 , - 14.74 , -0.36316012018238 , - 14.745 , -0.42365909583363 , - 14.75 , -0.48002335079991 , - 14.755 , -0.53128602795839 , - 14.76 , -0.57714447879069 , - 14.765 , -0.61773654874064 , - 14.77 , -0.65338922947777 , - 14.775 , -0.68440719071073 , - 14.78 , -0.71094150841826 , - 14.785 , -0.73295383213119 , - 14.79 , -0.75025831938642 , - 14.795 , -0.76260438890415 , - 14.8 , -0.76975912976851 , - 14.805 , -0.77155180131721 , - 14.81 , -0.76787415141689 , - 14.815 , -0.75863134459094 , - 14.82 , -0.74368104295612 , - 14.825 , -0.72278322433993 , - 14.83 , -0.69560054902327 , - 14.835 , -0.66175375591306 , - 14.84 , -0.62093898535516 , - 14.845 , -0.57306913773937 , - 14.85 , -0.51841917741191 , - 14.855 , -0.45771315164191 , - 14.86 , -0.392137917305 , - 14.865 , -0.3232532945768 , - 14.87 , -0.25282156152333 , - 14.875 , -0.18257072630809 , - 14.88 , -0.11395570313114 , - 14.885 , -4.795078990473090E-02 , - 14.89 , 1.505030752196730E-02 , - 14.895 , 7.523505899511330E-02 , - 14.9 , 0.133241663209769 , - 14.905 , 0.189946958395501 , - 14.91 , 0.246204884243539 , - 14.915 , 0.302617865301028 , - 14.92 , 0.359383341937356 , - 14.925 , 0.416272256914715 , - 14.93 , 0.472730379837134 , - 14.935 , 0.528097455638089 , - 14.94 , 0.581866656852053 , - 14.945 , 0.633923511292493 , - 14.95 , 0.684671503159956 , - 14.955 , 0.735006617044871 , - 14.96 , 0.78610900707482 , - 14.965 , 0.839096114213373 , - 14.97 , 0.894592925855566 , - 14.975 , 0.952340646800937 , - 14.98 , 1.0109322862822 , - 14.985 , 1.06776815099708 , - 14.99 , 1.11925763952313 , - 14.995 , 1.16125733848899 , - 15.0 , 1.18965840938029 , - 15.005 , 1.20101711803106 , - 15.01 , 1.19309156203439 , - 15.015 , 1.16518353563898 , - 15.02 , 1.11821232455035 , - 15.025 , 1.0545184865003 , - 15.03 , 0.977448615628865 , - 15.035 , 0.890815252481333 , - 15.04 , 0.798354444510221 , - 15.045 , 0.703279494461959 , - 15.05 , 0.60801847543151 , - 15.055 , 0.514150357593879 , - 15.06 , 0.422530486995826 , - 15.065 , 0.333543044544543 , - 15.07 , 0.247413880227417 , - 15.075 , 0.164505011560775 , - 15.08 , 8.554502116652860E-02 , - 15.085 , 1.176008397877900E-02 , - 15.09 , -5.508991016794810E-02 , - 15.095 , -0.11277329041032 , - 15.1 , -0.15872202731611 , - 15.105 , -0.19023769676271 , - 15.11 , -0.20475543680883 , - 15.115 , -0.20016459209247 , - 15.12 , -0.17515953672649 , - 15.125 , -0.1295909322101 , - 15.13 , -6.475341455153370E-02 , - 15.135 , 1.645644779243700E-02 , - 15.14 , 0.109582085491203 , - 15.145 , 0.208891920094615 , - 15.15 , 0.307902347961824 , - 15.155 , 0.400086953541137 , - 15.16 , 0.479656312478387 , - 15.165 , 0.54227026093024 , - 15.17 , 0.585531391323096 , - 15.175 , 0.60915577781107 , - 15.18 , 0.614771789148716 , - 15.185 , 0.605386403919845 , - 15.19 , 0.584635659710548 , - 15.195 , 0.555987240463961 , - 15.2 , 0.522078576056577 , - 15.205 , 0.484332615313383 , - 15.21 , 0.44293940454718 , - 15.215 , 0.397175120559912 , - 15.22 , 0.345968006972672 , - 15.225 , 0.288543030116857 , - 15.23 , 0.224972791486283 , - 15.235 , 0.156481408793171 , - 15.24 , 8.542958350357370E-02 , - 15.245 , 1.498370477529230E-02 , - 15.25 , -5.142934425176120E-02 , - 15.255 , -0.1107437937938 , - 15.26 , -0.16078441017566 , - 15.265 , -0.20057844669055 , - 15.27 , -0.23037829970624 , - 15.275 , -0.2514154045316 , - 15.28 , -0.26546110414046 , - 15.285 , -0.27433386226401 , - 15.29 , -0.27947343680654 , - 15.295 , -0.28170382574971 , - 15.3 , -0.28121922535055 , - 15.305 , -0.27778333156123 , - 15.31 , -0.27106104276765 , - 15.315 , -0.26098347288903 , - 15.32 , -0.2480337104626 , - 15.325 , -0.23338239832851 , - 15.33 , -0.21883669131141 , - 15.335 , -0.20662723365469 , - 15.34 , -0.19908795725974 , - 15.345 , -0.1983095632208 , - 15.35 , -0.20583511356768 , - 15.355 , -0.22245388077999 , - 15.36 , -0.24810721805446 , - 15.365 , -0.28190022979588 , - 15.37 , -0.32218399867655 , - 15.375 , -0.36668187000496 , - 15.38 , -0.41262893144551 , - 15.385 , -0.4569195252945 , - 15.39 , -0.49626700745835 , - 15.395 , -0.52739011070132 , - 15.4 , -0.54723474350703 , - 15.405 , -0.55322582044501 , - 15.41 , -0.54352567312437 , - 15.415 , -0.51725918301048 , - 15.42 , -0.47466073347181 , - 15.425 , -0.41710230560527 , - 15.43 , -0.34698928139492 , - 15.435 , -0.26752756403572 , - 15.44 , -0.18240759770015 , - 15.445 , -9.545429827632960E-02 , - 15.45 , -1.031774321012660E-02 , - 15.455 , 6.975569716684001E-02 , - 15.46 , 0.142031815271298 , - 15.465 , 0.204287600135245 , - 15.47 , 0.254724524020873 , - 15.475 , 0.291852234959508 , - 15.48 , 0.314393966922164 , - 15.485 , 0.321257693596354 , - 15.49 , 0.311592647764159 , - 15.495 , 0.284924209311069 , - 15.5 , 0.241333574629117 , - 15.505 , 0.181630984411648 , - 15.51 , 0.107473789318163 , - 15.515 , 2.138659993284420E-02 , - 15.52 , -7.333294612818740E-02 , - 15.525 , -0.17281819572361 , - 15.53 , -0.2729111163528 , - 15.535 , -0.36947452952708 , - 15.54 , -0.45868092644508 , - 15.545 , -0.53724054983261 , - 15.55 , -0.60253835404275 , - 15.555 , -0.65267651763316 , - 15.56 , -0.6864354117723 , - 15.565 , -0.70318229683703 , - 15.57 , -0.70276183568102 , - 15.575 , -0.68540176686393 , - 15.58 , -0.6516520838685 , - 15.585 , -0.60236502510189 , - 15.59 , -0.538706492591 , - 15.595 , -0.46217410897888 , - 15.6 , -0.37460077533887 , - 15.605 , -0.27810973417383 , - 15.61 , -0.17502716813551 , - 15.615 , -6.773228527287170E-02 , - 15.62 , 4.151501433409210E-02 , - 15.625 , 0.150751860185515 , - 15.63 , 0.258442092002889 , - 15.635 , 0.363538574930614 , - 15.64 , 0.465442765332169 , - 15.645 , 0.563876126508653 , - 15.65 , 0.658665592231715 , - 15.655 , 0.749509291460253 , - 15.66 , 0.835755718589599 , - 15.665 , 0.916264699152492 , - 15.67 , 0.989375816925145 , - 15.675 , 1.05301420158238 , - 15.68 , 1.10490739292059 , - 15.685 , 1.14288462647541 , - 15.69 , 1.16518849553063 , - 15.695 , 1.1707464912492 , - 15.7 , 1.15934157640063 , - 15.705 , 1.13165264409975 , - 15.71 , 1.08916287801769 , - 15.715 , 1.03396048449819 , - 15.72 , 0.968480895649285 , - 15.725 , 0.895239610317516 , - 15.73 , 0.816614791244956 , - 15.735 , 0.734699276030846 , - 15.74 , 0.651241095374945 , - 15.745 , 0.567649521370319 , - 15.75 , 0.485049163207599 , - 15.755 , 0.404335549986381 , - 15.76 , 0.326219056425138 , - 15.765 , 0.251231356865374 , - 15.77 , 0.179720965294244 , - 15.775 , 0.111831041730238 , - 15.78 , 4.750476279777080E-02 , - 15.785 , -1.347798247405040E-02 , - 15.79 , -7.141356069694010E-02 , - 15.795 , -0.12656450883031 , - 15.8 , -0.1790372399842 , - 15.805 , -0.2286955113047 , - 15.81 , -0.27512243015728 , - 15.815 , -0.31766447732324 , - 15.82 , -0.3555388110919 , - 15.825 , -0.38798921520158 , - 15.83 , -0.41444221410296 , - 15.835 , -0.43463094635962 , - 15.84 , -0.44864369112348 , - 15.845 , -0.4568931292131 , - 15.85 , -0.46000160926806 , - 15.855 , -0.45865250041628 , - 15.86 , -0.45343877892519 , - 15.865 , -0.44476504067162 , - 15.87 , -0.43283082098116 , - 15.875 , -0.41771237775514 , - 15.88 , -0.3995214147592 , - 15.885 , -0.37860415544342 , - 15.89 , -0.35572212713179 , - 15.895 , -0.33216132888134 , - 15.9 , -0.30972572285948 , - 15.905 , -0.29059799700979 , - 15.91 , -0.27708096353175 , - 15.915 , -0.27126155854412 , - 15.92 , -0.2746590319597 , - 15.925 , -0.28792675974919 , - 15.93 , -0.31066689274262 , - 15.935 , -0.34140077106906 , - 15.94 , -0.3777039602476 , - 15.945 , -0.41648665097944 , - 15.95 , -0.45437291128764 , - 15.955 , -0.48811381404708 , - 15.96 , -0.51496612193939 , - 15.965 , -0.5329765854495 , - 15.97 , -0.54113053164364 , - 15.975 , -0.53935053269995 , - 15.98 , -0.52835825596445 , - 15.985 , -0.50943591924887 , - 15.99 , -0.48413923071434 , - 15.995 , -0.45401661733085 , - 16.0 , -0.42038541841803 , - 16.005 , -0.38419449756936 , - 16.01 , -0.34598883075877 , - 16.015 , -0.30596135684737 , - 16.02 , -0.26406862723475 , - 16.025 , -0.22017134269813 , - 16.03 , -0.17416871222392 , - 16.035 , -0.12609398639317 , - 16.04 , -7.616580091339020E-02 , - 16.045 , -2.479105816937940E-02 , - 16.05 , 2.745737110728120E-02 , - 16.055 , 7.987861751112391E-02 , - 16.06 , 0.131672708259285 , - 16.065 , 0.181958505928516 , - 16.07 , 0.229779175022502 , - 16.075 , 0.274114727562895 , - 16.08 , 0.313912537790184 , - 16.085 , 0.348155259464482 , - 16.09 , 0.375959714090624 , - 16.095 , 0.396703409827832 , - 16.1 , 0.410143539243666 , - 16.105 , 0.416499539855543 , - 16.11 , 0.416464899336383 , - 16.115 , 0.411132431725026 , - 16.12 , 0.401834694221056 , - 16.125 , 0.389926331168038 , - 16.13 , 0.376552509432684 , - 16.135 , 0.362455371415181 , - 16.14 , 0.347864663265341 , - 16.145 , 0.332498409591647 , - 16.15 , 0.315673926599289 , - 16.155 , 0.296498803516978 , - 16.16 , 0.274095775096738 , - 16.165 , 0.247800859489553 , - 16.17 , 0.217295286911219 , - 16.175 , 0.182636701553898 , - 16.18 , 0.144199700257594 , - 16.185 , 0.102548913123023 , - 16.19 , 5.829530297192130E-02 , - 16.195 , 1.197592728082750E-02 , - 16.2 , -3.600290534227300E-02 , - 16.205 , -8.535615468618291E-02 , - 16.21 , -0.13584918811621 , - 16.215 , -0.18721153582539 , - 16.22 , -0.23906457716721 , - 16.225 , -0.29090350734869 , - 16.23 , -0.34213587188623 , - 16.235 , -0.392170780993 , - 16.24 , -0.44051591221236 , - 16.245 , -0.48684480865516 , - 16.25 , -0.53098857668878 , - 16.255 , -0.57284978382707 , - 16.26 , -0.61224319073572 , - 16.265 , -0.64871598685836 , - 16.27 , -0.68140334352395 , - 16.275 , -0.70898222576025 , - 16.28 , -0.7297595947791 , - 16.285 , -0.7418948815967 , - 16.29 , -0.74371891027858 , - 16.295 , -0.73407611710958 , - 16.3 , -0.71260329024102 , - 16.305 , -0.67986749030603 , - 16.31 , -0.63732240300856 , - 16.315 , -0.58707824160675 , - 16.32 , -0.53154405116823 , - 16.325 , -0.47301455154914 , - 16.33 , -0.41331652122001 , - 16.335 , -0.35357961212191 , - 16.34 , -0.29419497300413 , - 16.345 , -0.23495140181355 , - 16.35 , -0.17531083484956 , - 16.355 , -0.11473456907756 , - 16.36 , -5.298091218194400E-02 , - 16.365 , 9.709062607778981E-03 , - 16.37 , 7.256409889259650E-02 , - 16.375 , 0.134384503385863 , - 16.38 , 0.193739454595389 , - 16.385 , 0.24920525086789 , - 16.39 , 0.299568602241651 , - 16.395 , 0.343956956389216 , - 16.4 , 0.381866908791684 , - 16.405 , 0.413114650618461 , - 16.41 , 0.437733369467239 , - 16.415 , 0.455877974867213 , - 16.42 , 0.46776384132681 , - 16.425 , 0.473663922748246 , - 16.43 , 0.47395074709205 , - 16.435 , 0.469159269294089 , - 16.44 , 0.460028874160481 , - 16.445 , 0.447496145434672 , - 16.45 , 0.43262324571891 , - 16.455 , 0.416476298710912 , - 16.46 , 0.39998487143001 , - 16.465 , 0.383825594174033 , - 16.47 , 0.368369873101624 , - 16.475 , 0.353714574674185 , - 16.48 , 0.339789306901935 , - 16.485 , 0.326509782519242 , - 16.49 , 0.313927074313828 , - 16.495 , 0.302325131506492 , - 16.5 , 0.292230126681682 , - 16.505 , 0.284323481848275 , - 16.51 , 0.279278430837744 , - 16.515 , 0.277565991023392 , - 16.52 , 0.27928378094795 , - 16.525 , 0.284059216918989 , - 16.53 , 0.291055442661278 , - 16.535 , 0.299081158427955 , - 16.54 , 0.306775986803293 , - 16.545 , 0.312824550426672 , - 16.55 , 0.316148133716397 , - 16.555 , 0.316029035226392 , - 16.56 , 0.31215069004257 , - 16.565 , 0.304553318859 , - 16.57 , 0.293538129439739 , - 16.575 , 0.279551088336509 , - 16.58 , 0.263087654869009 , - 16.585 , 0.244637877428558 , - 16.59 , 0.224678132698894 , - 16.595 , 0.203690933512921 , - 16.6 , 0.182189070638557 , - 16.605 , 0.160712533967535 , - 16.61 , 0.139788985048289 , - 16.615 , 0.119849630257617 , - 16.62 , 0.101127004531768 , - 16.625 , 8.356184746823360E-02 , - 16.63 , 6.675788773408831E-02 , - 16.635 , 5.000422430522750E-02 , - 16.64 , 3.237781788478290E-02 , - 16.645 , 1.290492007865870E-02 , - 16.65 , -9.242841522190411E-03 , - 16.655 , -3.457307113926180E-02 , - 16.66 , -6.315044794397080E-02 , - 16.665 , -9.456431033805510E-02 , - 16.67 , -0.12798945588883 , - 16.675 , -0.16233338586658 , - 16.68 , -0.19643231791386 , - 16.685 , -0.22926030484873 , - 16.69 , -0.26010137973961 , - 16.695 , -0.28866176894499 , - 16.7 , -0.31509595200913 , - 16.705 , -0.33995273832631 , - 16.71 , -0.36405095016433 , - 16.715 , -0.38831357635509 , - 16.72 , -0.41358504112542 , - 16.725 , -0.44046253469103 , - 16.73 , -0.46915752304 , - 16.735 , -0.49941060932339 , - 16.74 , -0.53046223395319 , - 16.745 , -0.56108536534834 , - 16.75 , -0.58967419378453 , - 16.755 , -0.61438209498106 , - 16.76 , -0.63329121107995 , - 16.765 , -0.64459684400811 , - 16.77 , -0.64678096256853 , - 16.775 , -0.63875489537808 , - 16.78 , -0.61995220147847 , - 16.785 , -0.59036060295097 , - 16.79 , -0.55049669392639 , - 16.795 , -0.50133039140924 , - 16.8 , -0.44418245956687 , - 16.805 , -0.38061075875138 , - 16.81 , -0.31231562731901 , - 16.815 , -0.24106197922092 , - 16.82 , -0.1686326543263 , - 16.825 , -9.679598568714549E-02 , - 16.83 , -2.728380092511400E-02 , - 16.835 , 3.824293020108400E-02 , - 16.84 , 9.824002683071940E-02 , - 16.845 , 0.151346034414838 , - 16.85 , 0.196448639221428 , - 16.855 , 0.232748834021365 , - 16.86 , 0.259798117288868 , - 16.865 , 0.277506221603702 , - 16.87 , 0.286111918797314 , - 16.875 , 0.286131733842289 , - 16.88 , 0.278296735618878 , - 16.885 , 0.263498277115562 , - 16.89 , 0.24274886174333 , - 16.895 , 0.217166404345327 , - 16.9 , 0.187968246853482 , - 16.905 , 0.156461968787081 , - 16.91 , 0.124015045694316 , - 16.915 , 9.199139026589789E-02 , - 16.92 , 6.165693925050090E-02 , - 16.925 , 3.406870712543500E-02 , - 16.93 , 9.974305988061479E-03 , - 16.935 , -1.024803512308630E-02 , - 16.94 , -2.658403019625520E-02 , - 16.945 , -3.930334521456180E-02 , - 16.95 , -4.881605741987730E-02 , - 16.955 , -5.549717708582600E-02 , - 16.96 , -5.952392534556360E-02 , - 16.965 , -6.076975805147920E-02 , - 16.97 , -5.879314030308780E-02 , - 16.975 , -5.292859848425780E-02 , - 16.98 , -4.246799585244240E-02 , - 16.985 , -2.689000147691090E-02 , - 16.99 , -6.084643377645750E-03 , - 16.995 , 1.948494890135070E-02 , - 17.0 , 4.872381188647930E-02 , - 17.005 , 7.996838345792370E-02 , - 17.01 , 0.111158477862087 , - 17.015 , 0.140083752196672 , - 17.02 , 0.164651035916986 , - 17.025 , 0.18312224741681 , - 17.03 , 0.194279612887888 , - 17.035 , 0.197502657429334 , - 17.04 , 0.192756670137177 , - 17.045 , 0.180518699701142 , - 17.05 , 0.161669903280425 , - 17.055 , 0.137385815960322 , - 17.06 , 0.109043393552795 , - 17.065 , 7.814867623624100E-02 , - 17.07 , 4.627753286711330E-02 , - 17.075 , 1.501227171733180E-02 , - 17.08 , -1.413775130832270E-02 , - 17.085 , -3.983793711438840E-02 , - 17.09 , -6.104036519750250E-02 , - 17.095 , -7.708842285673501E-02 , - 17.1 , -8.778382263463140E-02 , - 17.105 , -9.339483606844121E-02 , - 17.11 , -9.459269265106150E-02 , - 17.115 , -9.232223501388739E-02 , - 17.12 , -8.763025422153840E-02 , - 17.125 , -8.148499770125020E-02 , - 17.13 , -7.462775457220110E-02 , - 17.135 , -6.748324353623050E-02 , - 17.14 , -6.014609852966310E-02 , - 17.145 , -5.243702915474610E-02 , - 17.15 , -4.400785444844100E-02 , - 17.155 , -3.446180958692290E-02 , - 17.16 , -2.345792198001310E-02 , - 17.165 , -1.077394978512690E-02 , - 17.17 , 3.679128728274960E-03 , - 17.175 , 1.988574043577430E-02 , - 17.18 , 3.777667605297300E-02 , - 17.185 , 5.727939847072780E-02 , - 17.19 , 7.834501552629659E-02 , - 17.195 , 0.100944016898245 , - 17.2 , 0.125030824710985 , - 17.205 , 0.150493723897266 , - 17.21 , 0.177105725250697 , - 17.215 , 0.204499198588219 , - 17.22 , 0.232171627050269 , - 17.225 , 0.259522952289019 , - 17.23 , 0.28591162656688 , - 17.235 , 0.310713017545991 , - 17.24 , 0.333360202463241 , - 17.245 , 0.353356491062333 , - 17.25 , 0.370257070307643 , - 17.255 , 0.383631410780558 , - 17.26 , 0.393022771718625 , - 17.265 , 0.397924531915073 , - 17.27 , 0.397789484581034 , - 17.275 , 0.392075448648513 , - 17.28 , 0.380321842357972 , - 17.285 , 0.362236624526743 , - 17.29 , 0.337775799625786 , - 17.295 , 0.307187618217491 , - 17.3 , 0.271012952518342 , - 17.305 , 0.230034748672592 , - 17.31 , 0.185192192119736 , - 17.315 , 0.1374724900416 , - 17.32 , 8.781061932229070E-02 , - 17.325 , 3.701123827098990E-02 , - 17.33 , -1.428322820528750E-02 , - 17.335 , -6.558572925239700E-02 , - 17.34 , -0.11651660768663 , - 17.345 , -0.16673628393002 , - 17.35 , -0.21587015869355 , - 17.355 , -0.26345095520442 , - 17.36 , -0.30888431890374 , - 17.365 , -0.35145163113226 , - 17.37 , -0.39033885127352 , - 17.375 , -0.42469770664605 , - 17.38 , -0.45371821850159 , - 17.385 , -0.4767087589838 , - 17.39 , -0.49316630884791 , - 17.395 , -0.50283205552792 , - 17.4 , -0.50572081737774 , - 17.405 , -0.50212196719028 , - 17.41 , -0.49256808518885 , - 17.415 , -0.47777707225688 , - 17.42 , -0.45857357564831 , - 17.425 , -0.43580164741667 , - 17.43 , -0.41024501009179 , - 17.435 , -0.3825675139441 , - 17.44 , -0.35328788816102 , - 17.445 , -0.32279085797443 , - 17.45 , -0.29137731320226 , - 17.455 , -0.25933449326509 , - 17.46 , -0.2270143702293 , - 17.465 , -0.19489381305459 , - 17.47 , -0.16360264699467 , - 17.475 , -0.1339028594142 , - 17.48 , -0.1066224111889 , - 17.485 , -8.254834652459410E-02 , - 17.49 , -6.230534889079800E-02 , - 17.495 , -4.623541755964700E-02 , - 17.5 , -3.430878641434340E-02 , - 17.505 , -2.607920373761460E-02 , - 17.51 , -2.069570607448080E-02 , - 17.515 , -1.696571448514850E-02 , - 17.52 , -1.346258488402600E-02 , - 17.525 , -8.657687814216761E-03 , - 17.53 , -1.066706267368470E-03 , - 17.535 , 1.061426833550790E-02 , - 17.54 , 2.738663947692650E-02 , - 17.545 , 4.985546977711610E-02 , - 17.55 , 7.816411304470480E-02 , - 17.555 , 0.111966131087412 , - 17.56 , 0.150434055062022 , - 17.565 , 0.19231308509617 , - 17.57 , 0.236013378779133 , - 17.575 , 0.279746002917216 , - 17.58 , 0.321684272405146 , - 17.585 , 0.360138883852544 , - 17.59 , 0.393718048669997 , - 17.595 , 0.421452589177563 , - 17.6 , 0.442859042866297 , - 17.605 , 0.457932285135102 , - 17.61 , 0.467063199142238 , - 17.615 , 0.470901203329776 , - 17.62 , 0.470183933061112 , - 17.625 , 0.465570499510758 , - 17.63 , 0.457509881267887 , - 17.635 , 0.446170505322342 , - 17.64 , 0.431441044905879 , - 17.645 , 0.412997059132728 , - 17.65 , 0.390417907394592 , - 17.655 , 0.363320032948617 , - 17.66 , 0.331482683771369 , - 17.665 , 0.294935652090983 , - 17.67 , 0.254001046090184 , - 17.675 , 0.209280977845859 , - 17.68 , 0.161607754445718 , - 17.685 , 0.111965960430188 , - 17.69 , 6.141586922651330E-02 , - 17.695 , 1.102093548815530E-02 , - 17.7 , -3.820203658969610E-02 , - 17.705 , -8.531704155098779E-02 , - 17.71 , -0.1294862669167 , - 17.715 , -0.16998594459785 , - 17.72 , -0.20622064042651 , - 17.725 , -0.23774591935919 , - 17.73 , -0.26428840511531 , - 17.735 , -0.28576606331927 , - 17.74 , -0.30229286763517 , - 17.745 , -0.31416772926296 , - 17.75 , -0.3218406535065 , - 17.755 , -0.3258645654062 , - 17.76 , -0.32683843068621 , - 17.765 , -0.32535588224289 , - 17.77 , -0.32196457829868 , - 17.775 , -0.31715006731732 , - 17.78 , -0.31133941077337 , - 17.785 , -0.30492235408688 , - 17.79 , -0.29827929738639 , - 17.795 , -0.29180571311681 , - 17.8 , -0.2859227673159 , - 17.805 , -0.2810686116836 , - 17.81 , -0.27767024271612 , - 17.815 , -0.27609995179852 , - 17.82 , -0.27662600365925 , - 17.825 , -0.27936632736658 , - 17.83 , -0.28425416349301 , - 17.835 , -0.29102164261339 , - 17.84 , -0.29920350847177 , - 17.845 , -0.30815897987418 , - 17.85 , -0.31710995942421 , - 17.855 , -0.32518836729579 , - 17.86 , -0.33149006868417 , - 17.865 , -0.33512980995752 , - 17.87 , -0.33529555909469 , - 17.875 , -0.3312973400369 , - 17.88 , -0.32261024125577 , - 17.885 , -0.30890529900639 , - 17.89 , -0.290070720818 , - 17.895 , -0.26621431048452 , - 17.9 , -0.23765242692415 , - 17.905 , -0.20488114286083 , - 17.91 , -0.16853769940936 , - 17.915 , -0.12935252659241 , - 17.92 , -8.810348127193721E-02 , - 17.925 , -4.557141302171240E-02 , - 17.93 , -2.513356389291560E-03 , - 17.935 , 4.035724323904150E-02 , - 17.94 , 8.237249752346711E-02 , - 17.945 , 0.122904827481364 , - 17.95 , 0.16135335850423 , - 17.955 , 0.197135089796928 , - 17.96 , 0.229680590055412 , - 17.965 , 0.258445542327015 , - 17.97 , 0.282931564681535 , - 17.975 , 0.3027256078172 , - 17.98 , 0.317544225316334 , - 17.985 , 0.327282981257925 , - 17.99 , 0.332055566875123 , - 17.995 , 0.332219078215985 , - 18.0 , 0.328372664764279 , - 18.005 , 0.321327968541342 , - 18.01 , 0.312046315167661 , - 18.015 , 0.301552393558308 , - 18.02 , 0.29083015000257 , - 18.025 , 0.280717140577436 , - 18.03 , 0.271812862742294 , - 18.035 , 0.264416834319869 , - 18.04 , 0.258507921567912 , - 18.045 , 0.25377043717894 , - 18.05 , 0.249664740892512 , - 18.055 , 0.245531784942376 , - 18.06 , 0.240715666971269 , - 18.065 , 0.234683989615924 , - 18.07 , 0.227126896191005 , - 18.075 , 0.218018915200585 , - 18.08 , 0.207635259720329 , - 18.085 , 0.196519817484055 , - 18.09 , 0.185413864456323 , - 18.095 , 0.175156074068905 , - 18.1 , 0.166570903921847 , - 18.105 , 0.160362276331594 , - 18.11 , 0.157026715204937 , - 18.115 , 0.156797444080986 , - 18.12 , 0.159624455669982 , - 18.125 , 0.16519187224497 , - 18.13 , 0.172968089200864 , - 18.135 , 0.1822813476427 , - 18.14 , 0.192409206882619 , - 18.145 , 0.202670276399768 , - 18.15 , 0.212504752944377 , - 18.155 , 0.221533110089593 , - 18.16 , 0.229583054017435 , - 18.165 , 0.236681693233947 , - 18.17 , 0.24301317231324 , - 18.175 , 0.248850323481097 , - 18.18 , 0.254471744041749 , - 18.185 , 0.260080804366178 , - 18.19 , 0.265741889443548 , - 18.195 , 0.27134643214208 , - 18.2 , 0.276614811069614 , - 18.205 , 0.281132591864889 , - 18.21 , 0.284412543870369 , - 18.215 , 0.285966261493111 , - 18.22 , 0.28537109719781 , - 18.225 , 0.282316011041418 , - 18.23 , 0.276621372715182 , - 18.235 , 0.268228573189369 , - 18.24 , 0.257171332184819 , - 18.245 , 0.243536231265936 , - 18.25 , 0.227433656521336 , - 18.255 , 0.208982058948683 , - 18.26 , 0.188316971988387 , - 18.265 , 0.165617801602736 , - 18.27 , 0.141146408794358 , - 18.275 , 0.115280086715596 , - 18.28 , 8.852986599304000E-02 , - 18.285 , 6.153122175946150E-02 , - 18.29 , 3.501087677361560E-02 , - 18.295 , 9.728375745511450E-03 , - 18.3 , -1.358945599970610E-02 , - 18.305 , -3.431372431462720E-02 , - 18.31 , -5.195992570184670E-02 , - 18.315 , -6.621459033346280E-02 , - 18.32 , -7.693590669330690E-02 , - 18.325 , -8.413813135115721E-02 , - 18.33 , -8.796246104481401E-02 , - 18.335 , -8.865026558137970E-02 , - 18.34 , -8.651948855745679E-02 , - 18.345 , -8.194991749053140E-02 , - 18.35 , -7.537263942731640E-02 , - 18.355 , -6.726122085666700E-02 , - 18.36 , -5.811712688388060E-02 , - 18.365 , -4.844978592925620E-02 , - 18.37 , -3.874961154322750E-02 , - 18.375 , -2.946321539637920E-02 , - 18.38 , -2.097389378477130E-02 , - 18.385 , -1.359774681728760E-02 , - 18.39 , -7.592927023032140E-03 , - 18.395 , -3.182771456432360E-03 , - 18.4 , -5.797783397815400E-04 , - 18.405 , -3.403899532317900E-06 , - 18.41 , -1.673453644507240E-03 , - 18.415 , -5.782448384807060E-03 , - 18.42 , -1.244176672900140E-02 , - 18.425 , -2.161800758848600E-02 , - 18.43 , -3.307323100644420E-02 , - 18.435 , -4.633260284878780E-02 , - 18.44 , -6.069252068692880E-02 , - 18.445 , -7.527964829315580E-02 , - 18.45 , -8.915230216299309E-02 , - 18.455 , -0.10143296879817 , - 18.46 , -0.11144311748952 , - 18.465 , -0.11881688272356 , - 18.47 , -0.12356683521081 , - 18.475 , -0.12609239258508 , - 18.48 , -0.12712667509216 , - 18.485 , -0.12763705192334 , - 18.49 , -0.12869455777906 , - 18.495 , -0.13134291006952 , - 18.5 , -0.13648385782305 , - 18.505 , -0.14479654925278 , - 18.51 , -0.15669435068272 , - 18.515 , -0.17231899455012 , - 18.52 , -0.19156053351027 , - 18.525 , -0.2140948418449 , - 18.53 , -0.23942532421762 , - 18.535 , -0.26692808116807 , - 18.54 , -0.29589366741626 , - 18.545 , -0.32556987300455 , - 18.55 , -0.35520167089443 , - 18.555 , -0.38407157568151 , - 18.56 , -0.41153207462536 , - 18.565 , -0.43702839771631 , - 18.57 , -0.46010162556848 , - 18.575 , -0.4803753536196 , - 18.58 , -0.49752469104796 , - 18.585 , -0.51123932275576 , - 18.59 , -0.52119100580172 , - 18.595 , -0.52702031860061 , - 18.6 , -0.52835074084744 , - 18.605 , -0.52483178107225 , - 18.61 , -0.51620504117931 , - 18.615 , -0.50237569943468 , - 18.62 , -0.4834730346886 , - 18.625 , -0.45987873870396 , - 18.63 , -0.43221396453591 , - 18.635 , -0.40128199130244 , - 18.64 , -0.36797809251035 , - 18.645 , -0.33318247540211 , - 18.65 , -0.2976655847206 , - 18.655 , -0.26201863587465 , - 18.66 , -0.22662902367112 , - 18.665 , -0.19169728326541 , - 18.67 , -0.15729264669158 , - 18.675 , -0.1234229501959 , - 18.68 , -9.010582719609091E-02 , - 18.685 , -5.741817970014060E-02 , - 18.69 , -2.552248385036910E-02 , - 18.695 , 5.339196527069970E-03 , - 18.7 , 3.486712311982680E-02 , - 18.705 , 6.273660435450590E-02 , - 18.71 , 8.862290998998250E-02 , - 18.715 , 0.112218745947816 , - 18.72 , 0.133237764611335 , - 18.725 , 0.151417354399901 , - 18.73 , 0.166520793732197 , - 18.735 , 0.178358092928635 , - 18.74 , 0.186819039757722 , - 18.745 , 0.191918879888126 , - 18.75 , 0.193841382081441 , - 18.755 , 0.192966026117615 , - 18.76 , 0.189861849245228 , - 18.765 , 0.185243424802453 , - 18.77 , 0.179886808055877 , - 18.775 , 0.174523130427245 , - 18.78 , 0.169727209876345 , - 18.785 , 0.165828266795135 , - 18.79 , 0.162860717438664 , - 18.795 , 0.160568509105303 , - 18.8 , 0.158460262202499 , - 18.805 , 0.155903588032585 , - 18.81 , 0.152236721793017 , - 18.815 , 0.146874335438137 , - 18.82 , 0.139388100075902 , - 18.825 , 0.129551248829624 , - 18.83 , 0.117346184292776 , - 18.835 , 0.102944396398025 , - 18.84 , 8.667203203856250E-02 , - 18.845 , 6.897292950992250E-02 , - 18.85 , 5.037981195577830E-02 , - 18.855 , 3.149222301298260E-02 , - 18.86 , 1.295788909713510E-02 , - 18.865 , -4.552694712540460E-03 , - 18.87 , -2.038471143298640E-02 , - 18.875 , -3.395374370024890E-02 , - 18.88 , -4.480974308295430E-02 , - 18.885 , -5.269874412847760E-02 , - 18.89 , -5.760475116618620E-02 , - 18.895 , -5.975782869643340E-02 , - 18.9 , -5.959990728708000E-02 , - 18.905 , -5.771202182665640E-02 , - 18.91 , -5.471620957553570E-02 , - 18.915 , -5.117481281717030E-02 , - 18.92 , -4.751155121434680E-02 , - 18.925 , -4.397377050356170E-02 , - 18.93 , -4.064613036051550E-02 , - 18.935 , -3.750986634275660E-02 , - 18.94 , -3.453164301123860E-02 , - 18.945 , -3.175456679161500E-02 , - 18.95 , -2.936540580184520E-02 , - 18.955 , -2.771540773125420E-02 , - 18.96 , -2.728673446781490E-02 , - 18.965 , -2.860928038065850E-02 , - 18.97 , -3.214733887015950E-02 , - 18.975 , -3.818284412564310E-02 , - 18.98 , -4.672302188795090E-02 , - 18.985 , -5.745461744704080E-02 , - 18.99 , -6.975424591801779E-02 , - 18.995 , -8.275205425474760E-02 , - 19.0 , -9.543348500501039E-02 , - 19.005 , -0.10675671144965 , - 19.01 , -0.11576388175306 , - 19.015 , -0.12166743333762 , - 19.02 , -0.12390264431233 , - 19.025 , -0.12214656117846 , - 19.03 , -0.11631154879176 , - 19.035 , -0.10652423304446 , - 19.04 , -9.310118520163460E-02 , - 19.045 , -7.652590539072700E-02 , - 19.05 , -5.743089586506230E-02 , - 19.055 , -3.657596705689010E-02 , - 19.06 , -1.481925977005460E-02 , - 19.065 , 6.926924474783110E-03 , - 19.07 , 2.775463368340260E-02 , - 19.075 , 4.683156424739500E-02 , - 19.08 , 6.347270763070770E-02 , - 19.085 , 7.720227146370970E-02 , - 19.09 , 8.779042470764520E-02 , - 19.095 , 9.526029188212271E-02 , - 19.1 , 9.986040447199600E-02 , - 19.105 , 0.102009856725406 , - 19.11 , 0.102225525300876 , - 19.115 , 0.101047428528718 , - 19.12 , 9.897427931868839E-02 , - 19.125 , 9.642072648080460E-02 , - 19.13 , 9.369918170530429E-02 , - 19.135 , 9.102713402201090E-02 , - 19.14 , 8.855073690832560E-02 , - 19.145 , 8.637784747202421E-02 , - 19.15 , 8.460889194052530E-02 , - 19.155 , 8.335969452805890E-02 , - 19.16 , 8.277035792073900E-02 , - 19.165 , 8.300094888178290E-02 , - 19.17 , 8.421449446395760E-02 , - 19.175 , 8.655290215462839E-02 , - 19.18 , 9.010941198122500E-02 , - 19.185 , 9.490288969345520E-02 , - 19.19 , 0.100856185025776 , - 19.195 , 0.107783589409055 , - 19.2 , 0.115386291208123 , - 19.205 , 0.123260349877366 , - 19.21 , 0.130913935378 , - 19.215 , 0.137796521245135 , - 19.22 , 0.143335849367096 , - 19.225 , 0.14698030532155 , - 19.23 , 0.148242029288944 , - 19.235 , 0.146735661784648 , - 19.24 , 0.142208324703231 , - 19.245 , 0.134556865273917 , - 19.25 , 0.123832305128576 , - 19.255 , 0.110231039547548 , - 19.26 , 9.407703422254150E-02 , - 19.265 , 7.579763962651660E-02 , - 19.27 , 5.589930332000480E-02 , - 19.275 , 3.494345559651580E-02 , - 19.28 , 1.352655612925890E-02 , - 19.285 , -7.738281430620860E-03 , - 19.29 , -2.823640126172170E-02 , - 19.295 , -4.736851280459840E-02 , - 19.3 , -6.456726778946650E-02 , - 19.305 , -7.931522042729799E-02 , - 19.31 , -9.116146754991310E-02 , - 19.315 , -9.973543395603350E-02 , - 19.32 , -0.10475595669325 , - 19.325 , -0.10603430822357 , - 19.33 , -0.10347284701214 , - 19.335 , -9.706124752024230E-02 , - 19.34 , -8.687430152469530E-02 , - 19.345 , -7.307405512475940E-02 , - 19.35 , -5.591887411984520E-02 , - 19.355 , -3.577706479529710E-02 , - 19.36 , -1.314335388833300E-02 , - 19.365 , 1.134983613684490E-02 , - 19.37 , 3.693079681400050E-02 , - 19.375 , 6.270474265740390E-02 , - 19.38 , 8.768905345507640E-02 , - 19.385 , 0.1108686368144 , - 19.39 , 0.1312644416171 , - 19.395 , 0.148009041167522 , - 19.4 , 0.160416739422417 , - 19.405 , 0.168040427167663 , - 19.41 , 0.170704607506662 , - 19.415 , 0.168512624998284 , - 19.42 , 0.161826470167071 , - 19.425 , 0.151223327305197 , - 19.43 , 0.137436526462059 , - 19.435 , 0.12128787067038 , - 19.44 , 0.103621500126964 , - 19.445 , 8.524411667406280E-02 , - 19.45 , 6.687930552254420E-02 , - 19.455 , 4.913589731864990E-02 , - 19.46 , 3.249281642772610E-02 , - 19.465 , 1.729796363375550E-02 , - 19.47 , 3.779772699936010E-03 , - 19.475 , -7.933453913126739E-03 , - 19.48 , -1.778837362450150E-02 , - 19.485 , -2.578180319663970E-02 , - 19.49 , -3.193743546434960E-02 , - 19.495 , -3.628975661666560E-02 , - 19.5 , -3.887558954382360E-02 , - 19.505 , -3.973470241057670E-02 , - 19.51 , -3.891788867951480E-02 , - 19.515 , -3.649986139114820E-02 , - 19.52 , -3.259249709820460E-02 , - 19.525 , -2.735427053548850E-02 , - 19.53 , -2.099133842643200E-02 , - 19.535 , -1.374830536741160E-02 , - 19.54 , -5.887877188928280E-03 , - 19.545 , 2.336959611728440E-03 , - 19.55 , 1.071436148192050E-02 , - 19.555 , 1.910203440373310E-02 , - 19.56 , 2.744608047788240E-02 , - 19.565 , 3.578603089731680E-02 , - 19.57 , 4.424249115467690E-02 , - 19.575 , 5.298918396292150E-02 , - 19.58 , 6.221237826554930E-02 , - 19.585 , 7.206505940082400E-02 , - 19.59 , 8.262287004060030E-02 , - 19.595 , 9.385089818082880E-02 , - 19.6 , 0.105586535210159 , - 19.605 , 0.117542979202558 , - 19.61 , 0.129332330456747 , - 19.615 , 0.140505656304056 , - 19.62 , 0.150602470682144 , - 19.625 , 0.159201510072528 , - 19.63 , 0.165963272203869 , - 19.635 , 0.170657754779367 , - 19.64 , 0.173171986392552 , - 19.645 , 0.173497060176099 , - 19.65 , 0.171698563869022 , - 19.655 , 0.167877117650055 , - 19.66 , 0.162128958008132 , - 19.665 , 0.154515020640188 , - 19.67 , 0.145047978425579 , - 19.675 , 0.133699089240968 , - 19.68 , 0.120425826006013 , - 19.685 , 0.105211954035009 , - 19.69 , 8.811482794436119E-02 , - 19.695 , 6.930362885349300E-02 , - 19.7 , 4.908317786948910E-02 , - 19.705 , 2.789284466062680E-02 , - 19.71 , 6.282684187232620E-03 , - 19.715 , -1.513293891731910E-02 , - 19.72 , -3.573219349475490E-02 , - 19.725 , -5.494565996060560E-02 , - 19.73 , -7.230331792209500E-02 , - 19.735 , -8.746611435403620E-02 , - 19.74 , -0.10023408196077 , - 19.745 , -0.11053680897542 , - 19.75 , -0.11840927699064 , - 19.755 , -0.12396609115553 , - 19.76 , -0.12737940482213 , - 19.765 , -0.12886942680431 , - 19.77 , -0.12870508549978 , - 19.775 , -0.12721486235372 , - 19.78 , -0.12479696224801 , - 19.785 , -0.12192134851853 , - 19.79 , -0.11911512331687 , - 19.795 , -0.11692852296234 , - 19.8 , -0.1158828122011 , - 19.805 , -0.11640862718208 , - 19.81 , -0.11878469144379 , - 19.815 , -0.12309145404105 , - 19.82 , -0.12918833366224 , - 19.825 , -0.13672125838288 , - 19.83 , -0.14515938284391 , - 19.835 , -0.15385497532022 , - 19.84 , -0.16211467849934 , - 19.845 , -0.16927092799142 , - 19.85 , -0.1747405815055 , - 19.855 , -0.17806542050622 , - 19.86 , -0.17893075004105 , - 19.865 , -0.17716517197334 , - 19.87 , -0.1727273398208 , - 19.875 , -0.16568659834495 , - 19.88 , -0.15620370102824 , - 19.885 , -0.14451379659869 , - 19.89 , -0.13091402606184 , - 19.895 , -0.11575112780621 , - 19.9 , -9.940839096806510E-02 , - 19.905 , -8.228798219382000E-02 , - 19.91 , -6.479104079602420E-02 , - 19.915 , -4.729626907194930E-02 , - 19.92 , -3.014389625728430E-02 , - 19.925 , -1.362770379699480E-02 , - 19.93 , 1.998432435284760E-03 , - 19.935 , 1.650283145918720E-02 , - 19.94 , 2.964895620060110E-02 , - 19.945 , 4.116860136833410E-02 , - 19.95 , 5.074351304162170E-02 , - 19.955 , 5.800645031803000E-02 , - 19.96 , 6.256532313956960E-02 , - 19.965 , 6.405233292472851E-02 , - 19.97 , 6.218959865152200E-02 , - 19.975 , 5.686184515599930E-02 , - 19.98 , 4.817972906533240E-02 , - 19.985 , 3.651967859402010E-02 , - 19.99 , 2.252985493696160E-02 , - 19.995 , 7.097071756102240E-03 , - 20.0 , -8.721812839652310E-03 , - 20.005 , -2.379447424676810E-02 , - 20.01 , -3.701839037090120E-02 , - 20.015 , -4.742092878891140E-02 , - 20.02 , -5.423951270215350E-02 , - 20.025 , -5.697258922350620E-02 , - 20.03 , -5.539776158916270E-02 , - 20.035 , -4.956057087520670E-02 , - 20.04 , -3.974179526714170E-02 , - 20.045 , -2.641288342533750E-02 , - 20.05 , -1.019081782994870E-02 , - 20.055 , 8.202447545571230E-03 , - 20.06 , 2.797116679219240E-02 , - 20.065 , 4.827036868959560E-02 , - 20.07 , 6.822566739672180E-02 , - 20.075 , 8.695562572496580E-02 , - 20.08 , 0.103598292547575 , - 20.085 , 0.117345557097572 , - 20.09 , 0.127481089438341 , - 20.095 , 0.133420394415517 , - 20.1 , 0.134744188882336 , - 20.105 , 0.131221676654994 , - 20.11 , 0.122818973076751 , - 20.115 , 0.109691680974573 , - 20.12 , 9.216522604322611E-02 , - 20.125 , 7.070600814518090E-02 , - 20.13 , 4.589147778332150E-02 , - 20.135 , 1.838180387523030E-02 , - 20.14 , -1.110108370552780E-02 , - 20.145 , -4.178877084026370E-02 , - 20.15 , -7.287571484484311E-02 , - 20.155 , -0.10352963470195 , - 20.16 , -0.13290387884342 , - 20.165 , -0.16015839093613 , - 20.17 , -0.18448715088686 , - 20.175 , -0.20515328670567 , - 20.18 , -0.22152568111903 , - 20.185 , -0.23311328473587 , - 20.19 , -0.23959100455607 , - 20.195 , -0.24081433909493 , - 20.2 , -0.23682050088862 , - 20.205 , -0.22781739014645 , - 20.21 , -0.21416412518464 , - 20.215 , -0.19634582016096 , - 20.22 , -0.17494767238438 , - 20.225 , -0.15062916150452 , - 20.23 , -0.12410162176008 , - 20.235 , -9.610482601536199E-02 , - 20.24 , -6.738446390246500E-02 , - 20.245 , -3.866506506796110E-02 , - 20.25 , -1.062408132283030E-02 , - 20.255 , 1.613821656425260E-02 , - 20.26 , 4.112363448240460E-02 , - 20.265 , 6.395563455415000E-02 , - 20.27 , 8.438638743734070E-02 , - 20.275 , 0.10229225024046 , - 20.28 , 0.11765525248804 , - 20.285 , 0.13053719119583 , - 20.29 , 0.141047644803831 , - 20.295 , 0.14931741898274 , - 20.3 , 0.155478926240496 , - 20.305 , 0.159660339201315 , - 20.31 , 0.161990227205732 , - 20.315 , 0.162612590283051 , - 20.32 , 0.161703234926074 , - 20.325 , 0.159483350064339 , - 20.33 , 0.156221155279841 , - 20.335 , 0.152221918187124 , - 20.34 , 0.147804677752111 , - 20.345 , 0.143271172359312 , - 20.35 , 0.138873332096741 , - 20.355 , 0.134787926819641 , - 20.36 , 0.131103697853831 , - 20.365 , 0.127825557460833 , - 20.37 , 0.12489405648423 , - 20.375 , 0.122216684366155 , - 20.38 , 0.119703338338164 , - 20.385 , 0.117298332826065 , - 20.39 , 0.115002111347558 , - 20.395 , 0.1128792665639 , - 20.4 , 0.111051600017025 , - 20.405 , 0.109680624221402 , - 20.41 , 0.108942958893076 , - 20.415 , 0.109006468464252 , - 20.42 , 0.110010955231372 , - 20.425 , 0.112056904842183 , - 20.43 , 0.115202427994996 , - 20.435 , 0.119466647868312 , - 20.44 , 0.124835559019734 , - 20.445 , 0.131267773242386 , - 20.45 , 0.138696105432056 , - 20.455 , 0.14702533406325 , - 20.46 , 0.156125727838975 , - 20.465 , 0.165825042690333 , - 20.47 , 0.0 , - ), - INTERPOL='LIN', - PROL_DROITE='CONSTANT', - PROL_GAUCHE='EXCLU',); - - -ACCELV1=DEFI_FONCTION(NOM_PARA='INST', - VALE= -( - 0.0 , 0.0 , - 1.000000000000000E-02 , 1.310000000000000E-03 , - 2.000000000000000E-02 , 7.200000000000000E-04 , - 3.000000000000000E-02 , -1.160000000000000E-03 , - 4.000000000000000E-02 , -4.010000000000000E-03 , - 5.000000000000000E-02 , -8.580000000000001E-03 , - 6.000000000000000E-02 , -1.459000000000000E-02 , - 7.000000000000001E-02 , -1.920000000000000E-02 , - 8.000000000000000E-02 , -1.947000000000000E-02 , - 9.000000000000000E-02 , -1.781000000000000E-02 , - 0.1 , -1.970000000000000E-02 , - 0.11 , -2.520000000000000E-02 , - 0.12 , -3.281000000000000E-02 , - 0.13 , -4.377000000000000E-02 , - 0.14 , -5.504000000000000E-02 , - 0.15 , -5.797000000000000E-02 , - 0.16 , -4.627000000000000E-02 , - 0.17 , -2.536000000000000E-02 , - 0.18 , -6.700000000000000E-03 , - 0.19 , 7.849999999999999E-03 , - 0.2 , 2.168000000000000E-02 , - 0.21 , 3.643000000000000E-02 , - 0.22 , 5.686000000000000E-02 , - 0.23 , 8.019999999999999E-02 , - 0.24 , 8.942000000000000E-02 , - 0.25 , 7.790000000000000E-02 , - 0.26 , 6.301000000000000E-02 , - 0.27 , 5.860000000000000E-02 , - 0.28 , 5.444000000000000E-02 , - 0.29 , 3.314000000000000E-02 , - 0.3 , -4.730000000000000E-03 , - 0.31 , -3.492000000000000E-02 , - 0.32 , -3.413000000000000E-02 , - 0.33 , -7.530000000000000E-03 , - 0.34 , 1.991000000000000E-02 , - 0.35 , 2.983000000000000E-02 , - 0.36 , 2.482000000000000E-02 , - 0.37 , 1.676000000000000E-02 , - 0.38 , 4.890000000000000E-03 , - 0.39 , -1.521000000000000E-02 , - 0.4 , -3.575000000000000E-02 , - 0.41 , -5.053000000000000E-02 , - 0.42 , -6.325000000000000E-02 , - 0.43 , -7.273000000000000E-02 , - 0.44 , -7.520000000000000E-02 , - 0.45 , -8.463000000000000E-02 , - 0.46 , -0.11597 , - 0.47 , -0.1564 , - 0.48 , -0.18027 , - 0.49 , -0.17201 , - 0.5 , -0.13845 , - 0.51 , -0.1016 , - 0.52 , -6.390999999999999E-02 , - 0.53 , -1.035000000000000E-02 , - 0.54 , 5.961000000000000E-02 , - 0.55 , 0.12972 , - 0.56 , 0.18788 , - 0.57 , 0.23015 , - 0.58 , 0.23082 , - 0.59 , 0.1643 , - 0.6 , 6.750000000000000E-02 , - 0.61 , 7.450000000000000E-03 , - 0.62 , 1.664000000000000E-02 , - 0.63 , 8.058000000000000E-02 , - 0.64 , 0.15546 , - 0.65 , 0.2133 , - 0.66 , 0.24265 , - 0.67 , 0.21922 , - 0.68 , 0.1295 , - 0.69 , 1.220000000000000E-03 , - 0.7 , -0.12397 , - 0.71 , -0.1882 , - 0.72 , -0.17059 , - 0.73 , -0.11119 , - 0.74 , -9.375000000000000E-02 , - 0.75 , -0.15419 , - 0.76 , -0.21371 , - 0.77 , -0.19269 , - 0.78 , -0.12556 , - 0.79 , -8.054000000000000E-02 , - 0.8 , -5.658000000000000E-02 , - 0.81 , -2.563000000000000E-02 , - 0.82 , -1.082000000000000E-02 , - 0.83 , -6.067000000000000E-02 , - 0.84 , -0.16876 , - 0.85 , -0.26933 , - 0.86 , -0.31693 , - 0.87 , -0.3189 , - 0.88 , -0.31999 , - 0.89 , -0.32387 , - 0.9 , -0.35623 , - 0.91 , -0.38483 , - 0.92 , -0.36307 , - 0.93 , -0.29278 , - 0.94 , -0.18821 , - 0.95 , -6.119000000000000E-02 , - 0.96 , 3.932000000000000E-02 , - 0.97 , 7.092000000000000E-02 , - 0.98 , 3.394000000000000E-02 , - 0.99 , 1.056000000000000E-02 , - 1.0 , 3.006000000000000E-02 , - 1.01 , 4.384000000000000E-02 , - 1.02 , 1.582000000000000E-02 , - 1.03 , -2.452000000000000E-02 , - 1.04 , -3.991000000000000E-02 , - 1.05 , -4.053000000000000E-02 , - 1.06 , -4.416000000000000E-02 , - 1.07 , -6.185000000000000E-02 , - 1.08 , -0.10165 , - 1.09 , -0.13542 , - 1.1 , -0.142 , - 1.11 , -0.13819 , - 1.12 , -0.13187 , - 1.13 , -0.11765 , - 1.14 , -8.853000000000000E-02 , - 1.15 , -4.957000000000000E-02 , - 1.16 , -2.751000000000000E-02 , - 1.17 , -4.837000000000000E-02 , - 1.18 , -0.11303 , - 1.19 , -0.16115 , - 1.2 , -0.1365 , - 1.21 , -9.369000000000000E-02 , - 1.22 , -0.10681 , - 1.23 , -0.16911 , - 1.24 , -0.23593 , - 1.25 , -0.27067 , - 1.26 , -0.27471 , - 1.27 , -0.25731 , - 1.28 , -0.19103 , - 1.29 , -7.716000000000001E-02 , - 1.3 , 1.100000000000000E-03 , - 1.31 , -4.582000000000000E-02 , - 1.32 , -0.19352 , - 1.33 , -0.32144 , - 1.34 , -0.37399 , - 1.35 , -0.40308 , - 1.36 , -0.45452 , - 1.37 , -0.51071 , - 1.38 , -0.52231 , - 1.39 , -0.45018 , - 1.4 , -0.30537 , - 1.41 , -0.15517 , - 1.42 , -7.362000000000000E-02 , - 1.43 , -9.615000000000000E-02 , - 1.44 , -0.17148 , - 1.45 , -0.17476 , - 1.46 , -8.399000000000000E-02 , - 1.47 , -2.696000000000000E-02 , - 1.48 , -6.808000000000000E-02 , - 1.49 , -0.12817 , - 1.5 , -0.12265 , - 1.51 , -6.149000000000000E-02 , - 1.52 , -8.380000000000000E-03 , - 1.53 , 1.139000000000000E-02 , - 1.54 , 5.830000000000000E-03 , - 1.55 , -2.002000000000000E-02 , - 1.56 , -3.584000000000000E-02 , - 1.57 , -1.060000000000000E-03 , - 1.58 , 6.028000000000000E-02 , - 1.59 , 8.509000000000000E-02 , - 1.6 , 9.515000000000000E-02 , - 1.61 , 0.14372 , - 1.62 , 0.17863 , - 1.63 , 0.16098 , - 1.64 , 0.15227 , - 1.65 , 0.16265 , - 1.66 , 0.1009 , - 1.67 , -8.347000000000000E-02 , - 1.68 , -0.28571 , - 1.69 , -0.3845 , - 1.7 , -0.42649 , - 1.71 , -0.48045 , - 1.72 , -0.48546 , - 1.73 , -0.34744 , - 1.74 , -4.460000000000000E-02 , - 1.75 , 0.31704 , - 1.76 , 0.56244 , - 1.77 , 0.61288 , - 1.78 , 0.56235 , - 1.79 , 0.56046 , - 1.8 , 0.58601 , - 1.81 , 0.50428 , - 1.82 , 0.34783 , - 1.83 , 0.2707 , - 1.84 , 0.32579 , - 1.85 , 0.43838 , - 1.86 , 0.49734 , - 1.87 , 0.46993 , - 1.88 , 0.42104 , - 1.89 , 0.39656 , - 1.9 , 0.37011 , - 1.91 , 0.3211 , - 1.92 , 0.27122 , - 1.93 , 0.2175 , - 1.94 , 0.1251 , - 1.95 , 3.090000000000000E-03 , - 1.96 , -9.401000000000000E-02 , - 1.97 , -0.13751 , - 1.98 , -0.12623 , - 1.99 , -3.147000000000000E-02 , - 2.0 , 0.15999 , - 2.01 , 0.39077 , - 2.02 , 0.57348 , - 2.03 , 0.61086 , - 2.04 , 0.4807 , - 2.05 , 0.29864 , - 2.06 , 0.18108 , - 2.07 , 0.167 , - 2.08 , 0.23579 , - 2.09 , 0.28543 , - 2.1 , 0.21887 , - 2.11 , 6.136000000000000E-02 , - 2.12 , -8.754000000000001E-02 , - 2.13 , -0.18795 , - 2.14 , -0.28217 , - 2.15 , -0.39328 , - 2.16 , -0.47351 , - 2.17 , -0.45659 , - 2.18 , -0.38611 , - 2.19 , -0.40359 , - 2.2 , -0.49671 , - 2.21 , -0.47831 , - 2.22 , -0.24834 , - 2.23 , 9.692000000000001E-02 , - 2.24 , 0.36832 , - 2.25 , 0.49779 , - 2.26 , 0.55588 , - 2.27 , 0.55074 , - 2.28 , 0.47652 , - 2.29 , 0.42596 , - 2.3 , 0.45439 , - 2.31 , 0.4758 , - 2.32 , 0.36011 , - 2.33 , 9.916999999999999E-02 , - 2.34 , -0.22081 , - 2.35 , -0.53559 , - 2.36 , -0.73055 , - 2.37 , -0.68219 , - 2.38 , -0.46512 , - 2.39 , -0.29795 , - 2.4 , -0.29155 , - 2.41 , -0.37205 , - 2.42 , -0.45321 , - 2.43 , -0.52678 , - 2.44 , -0.53549 , - 2.45 , -0.39903 , - 2.46 , -0.17073 , - 2.47 , 4.007000000000000E-02 , - 2.48 , 0.19098 , - 2.49 , 0.23016 , - 2.5 , 0.11487 , - 2.51 , -3.277000000000000E-02 , - 2.52 , -2.678000000000000E-02 , - 2.53 , 0.14456 , - 2.54 , 0.33564 , - 2.55 , 0.43459 , - 2.56 , 0.47636 , - 2.57 , 0.56106 , - 2.58 , 0.69871 , - 2.59 , 0.78021 , - 2.6 , 0.69033 , - 2.61 , 0.48738 , - 2.62 , 0.37542 , - 2.63 , 0.44792 , - 2.64 , 0.63115 , - 2.65 , 0.80303 , - 2.66 , 0.86913 , - 2.67 , 0.81861 , - 2.68 , 0.67639 , - 2.69 , 0.44981 , - 2.7 , 0.19577 , - 2.71 , 1.762000000000000E-02 , - 2.72 , -7.475000000000000E-02 , - 2.73 , -0.18543 , - 2.74 , -0.31712 , - 2.75 , -0.30763 , - 2.76 , -5.022000000000000E-02 , - 2.77 , 0.36264 , - 2.78 , 0.71418 , - 2.79 , 0.86474 , - 2.8 , 0.91391 , - 2.81 , 0.97578 , - 2.82 , 0.99997 , - 2.83 , 0.90663 , - 2.84 , 0.71448 , - 2.85 , 0.55982 , - 2.86 , 0.55183 , - 2.87 , 0.63744 , - 2.88 , 0.70292 , - 2.89 , 0.68299 , - 2.9 , 0.58616 , - 2.91 , 0.47484 , - 2.92 , 0.38822 , - 2.93 , 0.3229 , - 2.94 , 0.25296 , - 2.95 , 0.16705 , - 2.96 , 0.10044 , - 2.97 , 7.353000000000000E-02 , - 2.98 , 4.790000000000000E-02 , - 2.99 , -3.974000000000000E-02 , - 3.0 , -0.21989 , - 3.01 , -0.43388 , - 3.02 , -0.59094 , - 3.03 , -0.68752 , - 3.04 , -0.77344 , - 3.05 , -0.84165 , - 3.06 , -0.87592 , - 3.07 , -0.92165 , - 3.08 , -0.98681 , - 3.09 , -0.9813 , - 3.1 , -0.85134 , - 3.11 , -0.71226 , - 3.12 , -0.70318 , - 3.13 , -0.73062 , - 3.14 , -0.63434 , - 3.15 , -0.49621 , - 3.16 , -0.46434 , - 3.17 , -0.4895 , - 3.18 , -0.43989 , - 3.19 , -0.297 , - 3.2 , -0.12264 , - 3.21 , 5.685000000000000E-02 , - 3.22 , 0.20721 , - 3.23 , 0.29127 , - 3.24 , 0.37167 , - 3.25 , 0.47314 , - 3.26 , 0.48428 , - 3.27 , 0.34199 , - 3.28 , 0.14378 , - 3.29 , 2.014000000000000E-02 , - 3.3 , -3.310000000000000E-03 , - 3.31 , 3.046000000000000E-02 , - 3.32 , 7.851000000000000E-02 , - 3.33 , 0.1222 , - 3.34 , 0.19291 , - 3.35 , 0.2916 , - 3.36 , 0.38011 , - 3.37 , 0.46514 , - 3.38 , 0.52328 , - 3.39 , 0.51669 , - 3.4 , 0.4727 , - 3.41 , 0.38682 , - 3.42 , 0.22939 , - 3.43 , 1.800000000000000E-02 , - 3.44 , -0.199 , - 3.45 , -0.40018 , - 3.46 , -0.5733 , - 3.47 , -0.72332 , - 3.48 , -0.82419 , - 3.49 , -0.83348 , - 3.5 , -0.74258 , - 3.51 , -0.61694 , - 3.52 , -0.56099 , - 3.53 , -0.61112 , - 3.54 , -0.71023 , - 3.55 , -0.78959 , - 3.56 , -0.85129 , - 3.57 , -0.93566 , - 3.58 , -0.99997 , - 3.59 , -0.92052 , - 3.6 , -0.6664 , - 3.61 , -0.3873 , - 3.62 , -0.25033 , - 3.63 , -0.24161 , - 3.64 , -0.18701 , - 3.65 , 9.379999999999999E-03 , - 3.66 , 0.11381 , - 3.67 , 0.16743 , - 3.68 , 0.16297 , - 3.69 , 0.1216 , - 3.7 , 5.279000000000000E-02 , - 3.71 , -9.607000000000000E-02 , - 3.72 , -0.30972 , - 3.73 , -0.35938 , - 3.74 , -0.19296 , - 3.75 , 6.919000000000000E-02 , - 3.76 , 0.27173 , - 3.77 , 0.34172 , - 3.78 , 0.31251 , - 3.79 , 0.24099 , - 3.8 , 0.15009 , - 3.81 , 0.10136 , - 3.82 , 0.18046 , - 3.83 , 0.36244 , - 3.84 , 0.47034 , - 3.85 , 0.36939 , - 3.86 , 0.15689 , - 3.87 , 1.108000000000000E-02 , - 3.88 , 3.990000000000000E-03 , - 3.89 , 0.11976 , - 3.9 , 0.24956 , - 3.91 , 0.21477 , - 3.92 , -3.172000000000000E-02 , - 3.93 , -0.24232 , - 3.94 , -0.1514 , - 3.95 , 0.12645 , - 3.96 , 0.3411 , - 3.97 , 0.48457 , - 3.98 , 0.61705 , - 3.99 , 0.70283 , - 4.0 , 0.70328 , - 4.01 , 0.62998 , - 4.02 , 0.53518 , - 4.03 , 0.44668 , - 4.04 , 0.36172 , - 4.05 , 0.31406 , - 4.06 , 0.32888 , - 4.07 , 0.35459 , - 4.08 , 0.32512 , - 4.09 , 0.25195 , - 4.1 , 0.20405 , - 4.11 , 0.22648 , - 4.12 , 0.30571 , - 4.13 , 0.37309 , - 4.14 , 0.35283 , - 4.15 , 0.24118 , - 4.16 , 0.11162 , - 4.17 , 1.458000000000000E-02 , - 4.18 , -7.364000000000000E-02 , - 4.19 , -0.1521 , - 4.2 , -0.14128 , - 4.21 , 2.440000000000000E-02 , - 4.22 , 0.2852 , - 4.23 , 0.45129 , - 4.24 , 0.38982 , - 4.25 , 0.15588 , - 4.26 , -0.11495 , - 4.27 , -0.31375 , - 4.28 , -0.42086 , - 4.29 , -0.48904 , - 4.3 , -0.52097 , - 4.31 , -0.49168 , - 4.32 , -0.4234 , - 4.33 , -0.36559 , - 4.34 , -0.36994 , - 4.35 , -0.42675 , - 4.36 , -0.45696 , - 4.37 , -0.39583 , - 4.38 , -0.24523 , - 4.39 , -7.371999999999999E-02 , - 4.4 , 5.577000000000000E-02 , - 4.41 , 0.13029 , - 4.42 , 0.17 , - 4.43 , 0.21223 , - 4.44 , 0.25214 , - 4.45 , 0.25221 , - 4.46 , 0.20971 , - 4.47 , 0.15915 , - 4.48 , 0.13965 , - 4.49 , 0.1015 , - 4.5 , -5.693000000000000E-02 , - 4.51 , -0.30165 , - 4.52 , -0.49413 , - 4.53 , -0.5601 , - 4.54 , -0.5473 , - 4.55 , -0.52318 , - 4.56 , -0.43186 , - 4.57 , -0.21177 , - 4.58 , 5.701000000000000E-02 , - 4.59 , 0.26717 , - 4.6 , 0.3673 , - 4.61 , 0.3813 , - 4.62 , 0.40079 , - 4.63 , 0.39365 , - 4.64 , 0.18973 , - 4.65 , -0.17373 , - 4.66 , -0.40285 , - 4.67 , -0.36957 , - 4.68 , -0.23873 , - 4.69 , -0.13623 , - 4.7 , -1.420000000000000E-02 , - 4.71 , 0.15954 , - 4.72 , 0.31583 , - 4.73 , 0.4076 , - 4.74 , 0.44925 , - 4.75 , 0.43323 , - 4.76 , 0.36783 , - 4.77 , 0.32597 , - 4.78 , 0.34835 , - 4.79 , 0.36693 , - 4.8 , 0.28138 , - 4.81 , 0.11386 , - 4.82 , -4.390000000000000E-02 , - 4.83 , -0.20925 , - 4.84 , -0.42702 , - 4.85 , -0.62277 , - 4.86 , -0.72429 , - 4.87 , -0.7462 , - 4.88 , -0.75887 , - 4.89 , -0.77194 , - 4.9 , -0.72951 , - 4.91 , -0.66245 , - 4.92 , -0.67709 , - 4.93 , -0.80669 , - 4.94 , -0.95972 , - 4.95 , -0.99997 , - 4.96 , -0.88454 , - 4.97 , -0.69049 , - 4.98 , -0.52094 , - 4.99 , -0.3957 , - 5.0 , -0.24286 , - 5.01 , -3.739000000000000E-02 , - 5.02 , 0.10577 , - 5.03 , 0.17347 , - 5.04 , 0.16886 , - 5.05 , 0.14491 , - 5.06 , 0.14907 , - 5.07 , 0.17361 , - 5.08 , 0.20083 , - 5.09 , 0.21954 , - 5.1 , 0.2328 , - 5.11 , 0.2575 , - 5.12 , 0.28932 , - 5.13 , 0.31126 , - 5.14 , 0.29244 , - 5.15 , 0.19772 , - 5.16 , 5.796000000000000E-02 , - 5.17 , -6.429000000000000E-02 , - 5.18 , -5.218000000000000E-02 , - 5.19 , 9.539000000000000E-02 , - 5.2 , 0.20966 , - 5.21 , 0.15862 , - 5.22 , 1.473000000000000E-02 , - 5.23 , -3.926000000000000E-02 , - 5.24 , 8.541000000000000E-02 , - 5.25 , 0.31423 , - 5.26 , 0.44181 , - 5.27 , 0.30949 , - 5.28 , -4.230000000000000E-03 , - 5.29 , -0.32893 , - 5.3 , -0.59096 , - 5.31 , -0.72514 , - 5.32 , -0.65562 , - 5.33 , -0.42079 , - 5.34 , -0.1588 , - 5.35 , 2.904000000000000E-02 , - 5.36 , 0.10308 , - 5.37 , 4.177000000000000E-02 , - 5.38 , -6.319000000000000E-02 , - 5.39 , -4.705000000000000E-02 , - 5.4 , 9.604000000000000E-02 , - 5.41 , 0.24518 , - 5.42 , 0.30632 , - 5.43 , 0.23914 , - 5.44 , 9.232000000000000E-02 , - 5.45 , -1.776000000000000E-02 , - 5.46 , -7.690000000000000E-03 , - 5.47 , 7.241000000000000E-02 , - 5.48 , 9.512000000000000E-02 , - 5.49 , 8.989000000000000E-02 , - 5.5 , 0.19384 , - 5.51 , 0.35667 , - 5.52 , 0.38627 , - 5.53 , 0.27202 , - 5.54 , 0.22809 , - 5.55 , 0.35372 , - 5.56 , 0.49889 , - 5.57 , 0.54618 , - 5.58 , 0.55561 , - 5.59 , 0.6075 , - 5.6 , 0.65833 , - 5.61 , 0.62315 , - 5.62 , 0.54314 , - 5.63 , 0.5024 , - 5.64 , 0.49951 , - 5.65 , 0.50238 , - 5.66 , 0.459 , - 5.67 , 0.32065 , - 5.68 , 0.12297 , - 5.69 , -4.304000000000000E-02 , - 5.7 , -0.12348 , - 5.71 , -0.16939 , - 5.72 , -0.26337 , - 5.73 , -0.37116 , - 5.74 , -0.40828 , - 5.75 , -0.39748 , - 5.76 , -0.42458 , - 5.77 , -0.49729 , - 5.78 , -0.51741 , - 5.79 , -0.39554 , - 5.8 , -0.19178 , - 5.81 , -6.471000000000000E-02 , - 5.82 , -6.743000000000000E-02 , - 5.83 , -0.1271 , - 5.84 , -0.1634 , - 5.85 , -0.13345 , - 5.86 , -6.090000000000000E-02 , - 5.87 , 2.519000000000000E-02 , - 5.88 , 0.14903 , - 5.89 , 0.28064 , - 5.9 , 0.34038 , - 5.91 , 0.3104 , - 5.92 , 0.22998 , - 5.93 , 0.15353 , - 5.94 , 0.1055 , - 5.95 , 7.457000000000000E-02 , - 5.96 , 5.763000000000000E-02 , - 5.97 , 8.033999999999999E-02 , - 5.98 , 0.14644 , - 5.99 , 0.1332 , - 6.0 , -7.482000000000000E-02 , - 6.01 , -0.36556 , - 6.02 , -0.55895 , - 6.03 , -0.59056 , - 6.04 , -0.46664 , - 6.05 , -0.26194 , - 6.06 , -7.546000000000000E-02 , - 6.07 , 7.784000000000001E-02 , - 6.08 , 0.23755 , - 6.09 , 0.36836 , - 6.1 , 0.37298 , - 6.11 , 0.26509 , - 6.12 , 0.15102 , - 6.13 , 6.525000000000000E-02 , - 6.14 , -1.695000000000000E-02 , - 6.15 , -0.10207 , - 6.16 , -0.1821 , - 6.17 , -0.26644 , - 6.18 , -0.32842 , - 6.19 , -0.24869 , - 6.2 , 2.279000000000000E-02 , - 6.21 , 0.37255 , - 6.22 , 0.6758 , - 6.23 , 0.86221 , - 6.24 , 0.91467 , - 6.25 , 0.89167 , - 6.26 , 0.84631 , - 6.27 , 0.74074 , - 6.28 , 0.49841 , - 6.29 , 0.16761 , - 6.3 , -4.544000000000000E-02 , - 6.31 , -2.644000000000000E-02 , - 6.32 , 9.400000000000000E-02 , - 6.33 , 0.16063 , - 6.34 , 0.18176 , - 6.35 , 0.20612 , - 6.36 , 0.22068 , - 6.37 , 0.22211 , - 6.38 , 0.23664 , - 6.39 , 0.24671 , - 6.4 , 0.1861 , - 6.41 , 0.10676 , - 6.42 , 0.2039 , - 6.43 , 0.4894 , - 6.44 , 0.7178 , - 6.45 , 0.73624 , - 6.46 , 0.64197 , - 6.47 , 0.61236 , - 6.48 , 0.66281 , - 6.49 , 0.6407 , - 6.5 , 0.48402 , - 6.51 , 0.28743 , - 6.52 , 0.1436 , - 6.53 , 6.140000000000000E-02 , - 6.54 , -1.770000000000000E-03 , - 6.55 , -6.498000000000000E-02 , - 6.56 , -0.12251 , - 6.57 , -0.16577 , - 6.58 , -0.20217 , - 6.59 , -0.28219 , - 6.6 , -0.37605 , - 6.61 , -0.34257 , - 6.62 , -0.12814 , - 6.63 , 0.1706 , - 6.64 , 0.38468 , - 6.65 , 0.39384 , - 6.66 , 0.26746 , - 6.67 , 0.18207 , - 6.68 , 0.19512 , - 6.69 , 0.22133 , - 6.7 , 0.209 , - 6.71 , 0.17146 , - 6.72 , 6.763000000000000E-02 , - 6.73 , -0.13527 , - 6.74 , -0.37496 , - 6.75 , -0.55764 , - 6.76 , -0.58824 , - 6.77 , -0.44844 , - 6.78 , -0.27116 , - 6.79 , -0.19551 , - 6.8 , -0.18978 , - 6.81 , -9.911000000000000E-02 , - 6.82 , 0.11626 , - 6.83 , 0.30541 , - 6.84 , 0.3521 , - 6.85 , 0.27698 , - 6.86 , 0.10781 , - 6.87 , -0.13553 , - 6.88 , -0.3724 , - 6.89 , -0.51163 , - 6.9 , -0.49535 , - 6.91 , -0.29991 , - 6.92 , -1.034000000000000E-02 , - 6.93 , 0.19111 , - 6.94 , 0.1843 , - 6.95 , 6.730000000000000E-03 , - 6.96 , -0.21507 , - 6.97 , -0.41983 , - 6.98 , -0.58894 , - 6.99 , -0.63614 , - 7.0 , -0.54698 , - 7.01 , -0.44682 , - 7.02 , -0.42416 , - 7.03 , -0.46132 , - 7.04 , -0.48084 , - 7.05 , -0.43504 , - 7.06 , -0.34615 , - 7.07 , -0.23496 , - 7.08 , -0.13072 , - 7.09 , -5.857000000000000E-02 , - 7.1 , 1.753000000000000E-02 , - 7.11 , 0.10141 , - 7.12 , 0.12684 , - 7.13 , 9.014000000000000E-02 , - 7.14 , 0.11682 , - 7.15 , 0.28896 , - 7.16 , 0.48134 , - 7.17 , 0.54721 , - 7.18 , 0.49147 , - 7.19 , 0.35746 , - 7.2 , 0.17093 , - 7.21 , -6.870000000000000E-03 , - 7.22 , -7.575999999999999E-02 , - 7.23 , -4.320000000000000E-03 , - 7.24 , 6.714000000000001E-02 , - 7.25 , 2.620000000000000E-03 , - 7.26 , -0.12071 , - 7.27 , -0.16453 , - 7.28 , -0.1671 , - 7.29 , -0.24591 , - 7.3 , -0.36246 , - 7.31 , -0.39855 , - 7.32 , -0.33851 , - 7.33 , -0.22608 , - 7.34 , -0.1129 , - 7.35 , -3.976000000000000E-02 , - 7.36 , 5.950000000000000E-03 , - 7.37 , 4.231000000000000E-02 , - 7.38 , 9.320000000000001E-02 , - 7.39 , 0.21161 , - 7.4 , 0.37502 , - 7.41 , 0.46085 , - 7.42 , 0.42852 , - 7.43 , 0.39911 , - 7.44 , 0.48134 , - 7.45 , 0.61862 , - 7.46 , 0.65845 , - 7.47 , 0.52488 , - 7.48 , 0.27775 , - 7.49 , 2.611000000000000E-02 , - 7.5 , -0.16858 , - 7.51 , -0.35917 , - 7.52 , -0.64888 , - 7.53 , -0.93894 , - 7.54 , -0.99997 , - 7.55 , -0.79545 , - 7.56 , -0.50022 , - 7.57 , -0.31055 , - 7.58 , -0.28451 , - 7.59 , -0.32788 , - 7.6 , -0.34293 , - 7.61 , -0.30914 , - 7.62 , -0.29364 , - 7.63 , -0.36128 , - 7.64 , -0.43128 , - 7.65 , -0.41928 , - 7.66 , -0.39651 , - 7.67 , -0.43324 , - 7.68 , -0.4592 , - 7.69 , -0.3661 , - 7.7 , -0.17726 , - 7.71 , -7.930000000000000E-03 , - 7.72 , 9.228000000000000E-02 , - 7.73 , 0.12711 , - 7.74 , 0.10315 , - 7.75 , 9.070000000000000E-03 , - 7.76 , -0.1676 , - 7.77 , -0.37078 , - 7.78 , -0.48702 , - 7.79 , -0.42176 , - 7.8 , -0.20091 , - 7.81 , -7.270000000000000E-03 , - 7.82 , 3.404000000000000E-02 , - 7.83 , 2.700000000000000E-03 , - 7.84 , -4.730000000000000E-03 , - 7.85 , -2.107000000000000E-02 , - 7.86 , -7.763000000000000E-02 , - 7.87 , -0.11332 , - 7.88 , -9.217000000000000E-02 , - 7.89 , -7.226000000000000E-02 , - 7.9 , -0.10282 , - 7.91 , -0.18072 , - 7.92 , -0.27112 , - 7.93 , -0.33308 , - 7.94 , -0.37009 , - 7.95 , -0.41046 , - 7.96 , -0.46542 , - 7.97 , -0.51679 , - 7.98 , -0.48695 , - 7.99 , -0.31766 , - 8.0 , -0.11193 , - 8.01 , -1.808000000000000E-02 , - 8.02 , -9.790000000000000E-03 , - 8.03 , 7.910000000000000E-03 , - 8.04 , 2.892000000000000E-02 , - 8.05 , 5.256000000000000E-02 , - 8.06 , 0.15118 , - 8.07 , 0.33598 , - 8.08 , 0.47411 , - 8.09 , 0.4184 , - 8.1 , 0.22182 , - 8.11 , 6.008000000000000E-02 , - 8.12 , 7.820000000000001E-03 , - 8.13 , 3.031000000000000E-02 , - 8.14 , 6.139000000000000E-02 , - 8.15 , 9.475000000000000E-02 , - 8.16 , 0.1711 , - 8.17 , 0.25375 , - 8.18 , 0.32694 , - 8.19 , 0.47654 , - 8.2 , 0.71476 , - 8.21 , 0.92354 , - 8.22 , 0.99997 , - 8.23 , 0.96174 , - 8.24 , 0.85956 , - 8.25 , 0.67462 , - 8.26 , 0.42666 , - 8.27 , 0.21402 , - 8.28 , 8.068000000000000E-02 , - 8.29 , -2.572000000000000E-02 , - 8.3 , -0.18823 , - 8.31 , -0.43016 , - 8.32 , -0.69265 , - 8.33 , -0.84523 , - 8.34 , -0.78451 , - 8.35 , -0.5823 , - 8.36 , -0.39951 , - 8.37 , -0.3009 , - 8.38 , -0.28826 , - 8.39 , -0.34762 , - 8.4 , -0.40794 , - 8.41 , -0.37827 , - 8.42 , -0.24945 , - 8.43 , -0.10703 , - 8.44 , -1.106000000000000E-02 , - 8.45 , 6.251000000000000E-02 , - 8.46 , 0.1419 , - 8.47 , 0.19928 , - 8.48 , 0.18798 , - 8.49 , 0.11645 , - 8.5 , 4.575000000000000E-02 , - 8.51 , 4.959000000000000E-02 , - 8.52 , 0.17716 , - 8.53 , 0.34359 , - 8.54 , 0.36584 , - 8.55 , 0.23915 , - 8.56 , 0.18171 , - 8.57 , 0.30089 , - 8.58 , 0.43922 , - 8.59 , 0.40395 , - 8.6 , 0.15759 , - 8.61 , -0.16407 , - 8.62 , -0.36165 , - 8.63 , -0.39041 , - 8.64 , -0.35247 , - 8.65 , -0.31056 , - 8.66 , -0.24355 , - 8.67 , -9.318000000000000E-02 , - 8.68 , 7.779999999999999E-02 , - 8.69 , 5.175000000000000E-02 , - 8.7 , -0.23925 , - 8.71 , -0.59171 , - 8.72 , -0.77473 , - 8.73 , -0.75474 , - 8.74 , -0.64528 , - 8.75 , -0.48987 , - 8.76 , -0.29956 , - 8.77 , -0.1701 , - 8.78 , -0.13175 , - 8.79 , -0.10789 , - 8.8 , -4.978000000000000E-02 , - 8.81 , 4.376000000000000E-02 , - 8.82 , 0.15205 , - 8.83 , 0.2202 , - 8.84 , 0.17479 , - 8.85 , 2.103000000000000E-02 , - 8.86 , -0.14172 , - 8.87 , -0.26548 , - 8.88 , -0.38534 , - 8.89 , -0.50451 , - 8.9 , -0.53404 , - 8.91 , -0.38116 , - 8.92 , -0.11525 , - 8.93 , 7.395000000000000E-02 , - 8.94 , 0.10361 , - 8.95 , 6.577000000000000E-02 , - 8.96 , 6.259000000000001E-02 , - 8.97 , 5.649000000000000E-02 , - 8.98 , -3.880000000000000E-03 , - 8.99 , -2.390000000000000E-02 , - 9.0 , 7.305000000000000E-02 , - 9.01 , 0.19452 , - 9.02 , 0.2608 , - 9.03 , 0.35267 , - 9.04 , 0.5391 , - 9.05 , 0.73389 , - 9.06 , 0.83545 , - 9.07 , 0.82904 , - 9.08 , 0.72024 , - 9.09 , 0.51294 , - 9.1 , 0.23736 , - 9.11 , -4.577000000000000E-02 , - 9.12 , -0.26395 , - 9.13 , -0.38853 , - 9.14 , -0.43089 , - 9.15 , -0.4349 , - 9.16 , -0.41682 , - 9.17 , -0.37537 , - 9.18 , -0.32465 , - 9.19 , -0.29702 , - 9.2 , -0.32491 , - 9.21 , -0.3466 , - 9.22 , -0.28185 , - 9.23 , -0.19619 , - 9.24 , -0.14637 , - 9.25 , -9.772000000000000E-02 , - 9.26 , -7.858999999999999E-02 , - 9.27 , -0.13191 , - 9.28 , -0.21558 , - 9.29 , -0.24568 , - 9.3 , -0.18549 , - 9.31 , -9.976000000000000E-02 , - 9.32 , -6.297000000000000E-02 , - 9.33 , -8.577000000000000E-02 , - 9.34 , -0.11997 , - 9.35 , -5.070000000000000E-02 , - 9.36 , 0.19743 , - 9.37 , 0.55636 , - 9.38 , 0.86649 , - 9.39 , 0.99997 , - 9.4 , 0.95787 , - 9.41 , 0.80859 , - 9.42 , 0.58733 , - 9.43 , 0.34042 , - 9.44 , 0.15629 , - 9.45 , 7.298000000000000E-02 , - 9.46 , 3.103000000000000E-02 , - 9.47 , -1.360000000000000E-03 , - 9.48 , 2.567000000000000E-02 , - 9.49 , 9.848000000000000E-02 , - 9.5 , 0.13363 , - 9.51 , 0.10499 , - 9.52 , 1.947000000000000E-02 , - 9.53 , -0.11686 , - 9.54 , -0.25475 , - 9.55 , -0.33284 , - 9.56 , -0.37717 , - 9.57 , -0.45927 , - 9.58 , -0.53679 , - 9.59 , -0.50988 , - 9.6 , -0.4323 , - 9.61 , -0.46891 , - 9.62 , -0.62414 , - 9.63 , -0.67897 , - 9.64 , -0.46893 , - 9.65 , -0.10561 , - 9.66 , 0.12896 , - 9.67 , 7.442000000000000E-02 , - 9.68 , -0.13619 , - 9.69 , -0.25497 , - 9.7 , -0.19615 , - 9.71 , -5.295000000000000E-02 , - 9.72 , 5.399000000000000E-02 , - 9.73 , 8.438000000000000E-02 , - 9.74 , 7.897000000000000E-02 , - 9.75 , 0.11239 , - 9.76 , 0.18699 , - 9.77 , 0.19038 , - 9.78 , 0.13535 , - 9.79 , 0.20938 , - 9.8 , 0.43787 , - 9.81 , 0.63937 , - 9.82 , 0.67742 , - 9.83 , 0.58799 , - 9.84 , 0.49876 , - 9.85 , 0.4183 , - 9.86 , 0.29948 , - 9.87 , 0.22905 , - 9.88 , 0.2606 , - 9.89 , 0.28847 , - 9.9 , 0.22616 , - 9.91 , 0.12545 , - 9.92 , 8.956000000000000E-02 , - 9.93 , 0.12928 , - 9.94 , 0.15076 , - 9.95 , 4.544000000000000E-02 , - 9.96 , -0.20722 , - 9.97 , -0.49063 , - 9.98 , -0.6894 , - 9.99 , -0.80485 , - 10.0 , -0.84771 , - 10.01 , -0.76807 , - 10.02 , -0.56037 , - 10.03 , -0.32503 , - 10.04 , -0.15016 , - 10.05 , -3.882000000000000E-02 , - 10.06 , 6.110000000000000E-03 , - 10.07 , -2.178000000000000E-02 , - 10.08 , -6.615000000000000E-02 , - 10.09 , -3.796000000000000E-02 , - 10.1 , 8.788000000000000E-02 , - 10.11 , 0.2149 , - 10.12 , 0.23018 , - 10.13 , 0.14302 , - 10.14 , 3.300000000000000E-02 , - 10.15 , -5.442000000000000E-02 , - 10.16 , -9.190000000000000E-02 , - 10.17 , -5.636000000000000E-02 , - 10.18 , 1.760000000000000E-03 , - 10.19 , -4.910000000000000E-03 , - 10.2 , -7.645000000000000E-02 , - 10.21 , -0.16067 , - 10.22 , -0.22708 , - 10.23 , -0.23139 , - 10.24 , -0.12101 , - 10.25 , 7.537000000000001E-02 , - 10.26 , 0.24004 , - 10.27 , 0.32546 , - 10.28 , 0.38826 , - 10.29 , 0.41863 , - 10.3 , 0.35794 , - 10.31 , 0.23222 , - 10.32 , 0.11401 , - 10.33 , 1.697000000000000E-02 , - 10.34 , -0.10766 , - 10.35 , -0.25136 , - 10.36 , -0.35757 , - 10.37 , -0.41565 , - 10.38 , -0.3843 , - 10.39 , -0.22915 , - 10.4 , -7.590000000000000E-03 , - 10.41 , 0.24235 , - 10.42 , 0.48677 , - 10.43 , 0.65383 , - 10.44 , 0.70515 , - 10.45 , 0.61222 , - 10.46 , 0.40693 , - 10.47 , 0.24331 , - 10.48 , 0.2277 , - 10.49 , 0.27807 , - 10.5 , 0.24063 , - 10.51 , 9.018000000000000E-02 , - 10.52 , -8.182000000000000E-02 , - 10.53 , -0.23302 , - 10.54 , -0.37812 , - 10.55 , -0.4703 , - 10.56 , -0.41592 , - 10.57 , -0.24651 , - 10.58 , -0.12814 , - 10.59 , -0.13 , - 10.6 , -0.17581 , - 10.61 , -0.22261 , - 10.62 , -0.29974 , - 10.63 , -0.40731 , - 10.64 , -0.49694 , - 10.65 , -0.51567 , - 10.66 , -0.38399 , - 10.67 , -6.413000000000001E-02 , - 10.68 , 0.26417 , - 10.69 , 0.33331 , - 10.7 , 0.13429 , - 10.71 , -8.293000000000000E-02 , - 10.72 , -0.1463 , - 10.73 , -0.13542 , - 10.74 , -0.20542 , - 10.75 , -0.35982 , - 10.76 , -0.44591 , - 10.77 , -0.37107 , - 10.78 , -0.25668 , - 10.79 , -0.25179 , - 10.8 , -0.31124 , - 10.81 , -0.28374 , - 10.82 , -0.12758 , - 10.83 , 1.490000000000000E-02 , - 10.84 , 1.229000000000000E-02 , - 10.85 , -6.356000000000001E-02 , - 10.86 , -5.771000000000000E-02 , - 10.87 , 8.679000000000001E-02 , - 10.88 , 0.31097 , - 10.89 , 0.53347 , - 10.9 , 0.68419 , - 10.91 , 0.65081 , - 10.92 , 0.4251 , - 10.93 , 0.19891 , - 10.94 , 0.11666 , - 10.95 , 0.13796 , - 10.96 , 0.14749 , - 10.97 , 9.375000000000000E-02 , - 10.98 , 2.569000000000000E-02 , - 10.99 , -1.828000000000000E-02 , - 11.0 , -6.660000000000000E-03 , - 11.01 , 9.803000000000001E-02 , - 11.02 , 0.2156 , - 11.03 , 0.2608 , - 11.04 , 0.28376 , - 11.05 , 0.31446 , - 11.06 , 0.30511 , - 11.07 , 0.25332 , - 11.08 , 0.19284 , - 11.09 , 0.1152 , - 11.1 , 1.948000000000000E-02 , - 11.11 , -8.540000000000001E-03 , - 11.12 , -8.070000000000001E-03 , - 11.13 , 5.720000000000000E-03 , - 11.14 , 5.899000000000000E-02 , - 11.15 , 0.13421 , - 11.16 , 0.26053 , - 11.17 , 0.41353 , - 11.18 , 0.51092 , - 11.19 , 0.52002 , - 11.2 , 0.50124 , - 11.21 , 0.5386 , - 11.22 , 0.65388 , - 11.23 , 0.8058 , - 11.24 , 0.93844 , - 11.25 , 0.99997 , - 11.26 , 0.96789 , - 11.27 , 0.87593 , - 11.28 , 0.80065 , - 11.29 , 0.79192 , - 11.3 , 0.8141 , - 11.31 , 0.8052 , - 11.32 , 0.74262 , - 11.33 , 0.61546 , - 11.34 , 0.41975 , - 11.35 , 0.22346 , - 11.36 , 0.14585 , - 11.37 , 0.18339 , - 11.38 , 0.21495 , - 11.39 , 0.22018 , - 11.4 , 0.23766 , - 11.41 , 0.19769 , - 11.42 , 1.272000000000000E-02 , - 11.43 , -0.33277 , - 11.44 , -0.5999 , - 11.45 , -0.66307 , - 11.46 , -0.54941 , - 11.47 , -0.30754 , - 11.48 , 9.150000000000000E-03 , - 11.49 , 0.33567 , - 11.5 , 0.62395 , - 11.51 , 0.82292 , - 11.52 , 0.92488 , - 11.53 , 0.94922 , - 11.54 , 0.90162 , - 11.55 , 0.81535 , - 11.56 , 0.68529 , - 11.57 , 0.48301 , - 11.58 , 0.28744 , - 11.59 , 0.21968 , - 11.6 , 0.31463 , - 11.61 , 0.4858 , - 11.62 , 0.58845 , - 11.63 , 0.57005 , - 11.64 , 0.49055 , - 11.65 , 0.39877 , - 11.66 , 0.2819 , - 11.67 , 0.11731 , - 11.68 , -6.177000000000000E-02 , - 11.69 , -0.1701 , - 11.7 , -0.21434 , - 11.71 , -0.36528 , - 11.72 , -0.67236 , - 11.73 , -0.88398 , - 11.74 , -0.82736 , - 11.75 , -0.67582 , - 11.76 , -0.64387 , - 11.77 , -0.69937 , - 11.78 , -0.68858 , - 11.79 , -0.5758 , - 11.8 , -0.46315 , - 11.81 , -0.45051 , - 11.82 , -0.51549 , - 11.83 , -0.51468 , - 11.84 , -0.35292 , - 11.85 , -0.11964 , - 11.86 , -1.117000000000000E-02 , - 11.87 , -0.1357 , - 11.88 , -0.40276 , - 11.89 , -0.63738 , - 11.9 , -0.73699 , - 11.91 , -0.69661 , - 11.92 , -0.58112 , - 11.93 , -0.46357 , - 11.94 , -0.38497 , - 11.95 , -0.33617 , - 11.96 , -0.26831 , - 11.97 , -0.19582 , - 11.98 , -0.16518 , - 11.99 , -0.14401 , - 12.0 , -7.318000000000000E-02 , - 12.01 , 7.769000000000000E-02 , - 12.02 , 0.26041 , - 12.03 , 0.37046 , - 12.04 , 0.40569 , - 12.05 , 0.44476 , - 12.06 , 0.50231 , - 12.07 , 0.52622 , - 12.08 , 0.47631 , - 12.09 , 0.35672 , - 12.1 , 0.14838 , - 12.11 , -0.13846 , - 12.12 , -0.36979 , - 12.13 , -0.47711 , - 12.14 , -0.54786 , - 12.15 , -0.62333 , - 12.16 , -0.64749 , - 12.17 , -0.58515 , - 12.18 , -0.46856 , - 12.19 , -0.35151 , - 12.2 , -0.26225 , - 12.21 , -0.22214 , - 12.22 , -0.22853 , - 12.23 , -0.19257 , - 12.24 , -2.725000000000000E-02 , - 12.25 , 0.18283 , - 12.26 , 0.25344 , - 12.27 , 0.12964 , - 12.28 , -9.258000000000000E-02 , - 12.29 , -0.29733 , - 12.3 , -0.42242 , - 12.31 , -0.45343 , - 12.32 , -0.38158 , - 12.33 , -0.24116 , - 12.34 , -0.13557 , - 12.35 , -0.11938 , - 12.36 , -0.14999 , - 12.37 , -0.17426 , - 12.38 , -0.16707 , - 12.39 , -0.12211 , - 12.4 , -6.938000000000000E-02 , - 12.41 , -5.365000000000000E-02 , - 12.42 , -6.988999999999999E-02 , - 12.43 , -0.10537 , - 12.44 , -0.18301 , - 12.45 , -0.26683 , - 12.46 , -0.27079 , - 12.47 , -0.18067 , - 12.48 , -5.357000000000000E-02 , - 12.49 , 5.621000000000000E-02 , - 12.5 , 0.12411 , - 12.51 , 0.1349 , - 12.52 , 0.10552 , - 12.53 , 8.767000000000000E-02 , - 12.54 , 5.312000000000000E-02 , - 12.55 , -7.994000000000000E-02 , - 12.56 , -0.28316 , - 12.57 , -0.43439 , - 12.58 , -0.45819 , - 12.59 , -0.39875 , - 12.6 , -0.3257 , - 12.61 , -0.21617 , - 12.62 , -5.834000000000000E-02 , - 12.63 , 6.234000000000000E-02 , - 12.64 , 7.834000000000001E-02 , - 12.65 , 2.524000000000000E-02 , - 12.66 , -4.370000000000000E-03 , - 12.67 , 2.088000000000000E-02 , - 12.68 , 3.738000000000000E-02 , - 12.69 , -5.780000000000000E-03 , - 12.7 , -7.783000000000000E-02 , - 12.71 , -0.10293 , - 12.72 , -5.917000000000000E-02 , - 12.73 , -2.088000000000000E-02 , - 12.74 , -4.084000000000000E-02 , - 12.75 , -7.596000000000000E-02 , - 12.76 , -7.527000000000000E-02 , - 12.77 , -4.418000000000000E-02 , - 12.78 , -2.046000000000000E-02 , - 12.79 , -2.682000000000000E-02 , - 12.8 , -2.654000000000000E-02 , - 12.81 , 3.635000000000000E-02 , - 12.82 , 0.12352 , - 12.83 , 0.13159 , - 12.84 , 4.372000000000000E-02 , - 12.85 , -6.480000000000000E-02 , - 12.86 , -0.1361 , - 12.87 , -0.17058 , - 12.88 , -0.1883 , - 12.89 , -0.19167 , - 12.9 , -0.19116 , - 12.91 , -0.20869 , - 12.92 , -0.23797 , - 12.93 , -0.28017 , - 12.94 , -0.36467 , - 12.95 , -0.46778 , - 12.96 , -0.49324 , - 12.97 , -0.38894 , - 12.98 , -0.2225 , - 12.99 , -9.676000000000000E-02 , - 13.0 , -5.153000000000000E-02 , - 13.01 , -5.856000000000000E-02 , - 13.02 , -6.265000000000000E-02 , - 13.03 , -3.700000000000000E-02 , - 13.04 , 8.800000000000001E-03 , - 13.05 , 4.189000000000000E-02 , - 13.06 , 1.048000000000000E-02 , - 13.07 , -8.393000000000000E-02 , - 13.08 , -0.17214 , - 13.09 , -0.21986 , - 13.1 , -0.25265 , - 13.11 , -0.28696 , - 13.12 , -0.29845 , - 13.13 , -0.27534 , - 13.14 , -0.25187 , - 13.15 , -0.25011 , - 13.16 , -0.27425 , - 13.17 , -0.33551 , - 13.18 , -0.41051 , - 13.19 , -0.45406 , - 13.2 , -0.44533 , - 13.21 , -0.38727 , - 13.22 , -0.30756 , - 13.23 , -0.24203 , - 13.24 , -0.20129 , - 13.25 , -0.16106 , - 13.26 , -9.457000000000000E-02 , - 13.27 , -2.440000000000000E-02 , - 13.28 , 7.040000000000000E-03 , - 13.29 , 8.600000000000000E-03 , - 13.3 , 1.981000000000000E-02 , - 13.31 , 4.834000000000000E-02 , - 13.32 , 7.178000000000000E-02 , - 13.33 , 8.525000000000001E-02 , - 13.34 , 0.1107 , - 13.35 , 0.15822 , - 13.36 , 0.21564 , - 13.37 , 0.27468 , - 13.38 , 0.32506 , - 13.39 , 0.34096 , - 13.4 , 0.32619 , - 13.41 , 0.32491 , - 13.42 , 0.34842 , - 13.43 , 0.36279 , - 13.44 , 0.34026 , - 13.45 , 0.2756 , - 13.46 , 0.18648 , - 13.47 , 9.881000000000000E-02 , - 13.48 , 3.222000000000000E-02 , - 13.49 , 1.061000000000000E-02 , - 13.5 , 4.343000000000000E-02 , - 13.51 , 9.372000000000000E-02 , - 13.52 , 0.10628 , - 13.53 , 7.198000000000000E-02 , - 13.54 , 3.458000000000000E-02 , - 13.55 , 2.182000000000000E-02 , - 13.56 , 1.377000000000000E-02 , - 13.57 , -1.295000000000000E-02 , - 13.58 , -4.297000000000000E-02 , - 13.59 , -4.232000000000000E-02 , - 13.6 , -1.224000000000000E-02 , - 13.61 , 1.559000000000000E-02 , - 13.62 , 1.639000000000000E-02 , - 13.63 , -1.544000000000000E-02 , - 13.64 , -5.384000000000000E-02 , - 13.65 , -7.287000000000000E-02 , - 13.66 , -8.747000000000001E-02 , - 13.67 , -0.10976 , - 13.68 , -0.11529 , - 13.69 , -8.388000000000000E-02 , - 13.7 , -3.945000000000000E-02 , - 13.71 , -2.420000000000000E-02 , - 13.72 , -3.630000000000000E-02 , - 13.73 , -3.928000000000000E-02 , - 13.74 , -2.207000000000000E-02 , - 13.75 , -5.590000000000000E-03 , - 13.76 , -9.450000000000000E-03 , - 13.77 , -2.752000000000000E-02 , - 13.78 , -4.478000000000000E-02 , - 13.79 , -6.457000000000000E-02 , - 13.8 , -8.530000000000000E-02 , - 13.81 , -8.704000000000001E-02 , - 13.82 , -5.918000000000000E-02 , - 13.83 , -3.830000000000000E-03 , - 13.84 , 7.192000000000000E-02 , - 13.85 , 0.14312 , - 13.86 , 0.17488 , - 13.87 , 0.16315 , - 13.88 , 0.14274 , - 13.89 , 0.14017 , - 13.9 , 0.14556 , - 13.91 , 0.13989 , - 13.92 , 0.12104 , - 13.93 , 9.578000000000000E-02 , - 13.94 , 7.056999999999999E-02 , - 13.95 , 5.257000000000000E-02 , - 13.96 , 4.283000000000000E-02 , - 13.97 , 3.754000000000000E-02 , - 13.98 , 3.580000000000000E-02 , - 13.99 , 3.422000000000000E-02 , - 14.0 , 2.593000000000000E-02 , - 14.01 , 4.220000000000000E-03 , - 14.02 , -1.590000000000000E-02 , - 14.03 , -2.929000000000000E-02 , - 14.04 , 4.251000000000000E-02 , - 14.05 , 5.369000000000000E-02 , - 14.06 , 6.154000000000000E-02 , - 14.07 , 6.560000000000001E-02 , - 14.08 , 6.591000000000000E-02 , - 14.09 , 6.272000000000000E-02 , - 14.1 , 5.704000000000000E-02 , - 14.11 , 5.054000000000000E-02 , - 14.12 , 4.304000000000000E-02 , - 14.13 , 3.569000000000000E-02 , - 14.14 , 2.953000000000000E-02 , - 14.15 , 2.591000000000000E-02 , - 14.16 , 2.479000000000000E-02 , - 14.17 , 2.511000000000000E-02 , - 14.18 , 2.581000000000000E-02 , - 14.19 , 2.493000000000000E-02 , - 14.2 , 2.314000000000000E-02 , - 14.21 , 2.027000000000000E-02 , - 14.22 , 1.935000000000000E-02 , - 14.23 , 2.023000000000000E-02 , - 14.24 , 2.506000000000000E-02 , - 14.25 , 3.099000000000000E-02 , - 14.26 , 3.760000000000000E-02 , - 14.27 , 4.262000000000000E-02 , - 14.28 , 4.532000000000000E-02 , - 14.29 , 4.802000000000000E-02 , - 14.3 , 5.005000000000000E-02 , - 14.31 , 5.302000000000000E-02 , - 14.32 , 5.416000000000000E-02 , - 14.33 , 5.517000000000000E-02 , - 14.34 , 5.543000000000000E-02 , - 14.35 , 5.403000000000000E-02 , - 14.36 , 5.095000000000000E-02 , - 14.37 , 4.660000000000000E-02 , - 14.38 , 4.407000000000000E-02 , - 14.39 , 4.359000000000000E-02 , - 14.4 , 4.649000000000000E-02 , - 14.41 , 4.927000000000000E-02 , - 14.42 , 5.116000000000000E-02 , - 14.43 , 5.246000000000000E-02 , - 14.44 , 5.290000000000000E-02 , - 14.45 , 5.342000000000000E-02 , - 14.46 , 5.301000000000000E-02 , - 14.47 , 5.389000000000000E-02 , - 14.48 , 5.518000000000000E-02 , - 14.49 , 5.594000000000000E-02 , - 14.5 , 5.543000000000000E-02 , - 14.51 , 5.542000000000000E-02 , - 14.52 , 5.677000000000000E-02 , - 14.53 , 5.746000000000000E-02 , - 14.54 , 5.802000000000000E-02 , - 14.55 , 5.847000000000000E-02 , - 14.56 , 5.842000000000000E-02 , - 14.57 , 5.750000000000000E-02 , - 14.58 , 5.606000000000000E-02 , - 14.59 , 5.592000000000000E-02 , - 14.6 , 5.517000000000000E-02 , - 14.61 , 5.439000000000000E-02 , - 14.62 , 5.392000000000000E-02 , - 14.63 , 5.395000000000000E-02 , - 14.64 , 5.260000000000000E-02 , - 14.65 , 5.031000000000000E-02 , - 14.66 , 4.883000000000000E-02 , - 14.67 , 4.944000000000000E-02 , - 14.68 , 5.215000000000000E-02 , - 14.69 , 5.627000000000000E-02 , - 14.7 , 6.244000000000000E-02 , - 14.71 , 6.783000000000000E-02 , - 14.72 , 7.159000000000000E-02 , - 14.73 , 7.149999999999999E-02 , - 14.74 , 6.673000000000000E-02 , - 14.75 , 5.755000000000000E-02 , - 14.76 , 4.539000000000000E-02 , - 14.77 , 3.504000000000000E-02 , - 14.78 , 2.721000000000000E-02 , - 14.79 , 2.308000000000000E-02 , - 14.8 , 2.125000000000000E-02 , - 14.81 , 2.022000000000000E-02 , - 14.82 , 1.831000000000000E-02 , - 14.83 , 1.547000000000000E-02 , - 14.84 , 1.321000000000000E-02 , - 14.85 , 1.112000000000000E-02 , - 14.86 , 1.025000000000000E-02 , - 14.87 , 9.549999999999999E-03 , - 14.88 , 1.040000000000000E-02 , - 14.89 , 1.059000000000000E-02 , - 14.9 , 1.108000000000000E-02 , - 14.91 , 1.195000000000000E-02 , - 14.92 , 1.452000000000000E-02 , - 14.93 , 1.809000000000000E-02 , - 14.94 , 2.029000000000000E-02 , - 14.95 , 2.323000000000000E-02 , - 14.96 , 2.515000000000000E-02 , - 14.97 , 2.836000000000000E-02 , - 14.98 , 3.278000000000000E-02 , - 14.99 , 3.934000000000000E-02 , - 15.00 , 0.0 , - ), - INTERPOL='LIN', - PROL_DROITE='CONSTANT', - PROL_GAUCHE='EXCLU',); - - - - diff --git a/Tests/testcomm7/forma12c.comm b/Tests/testcomm7/forma12c.comm deleted file mode 100755 index 2027774f..00000000 --- a/Tests/testcomm7/forma12c.comm +++ /dev/null @@ -1,773 +0,0 @@ -# MODIF DATE 12/05/2005 AUTEUR DURAND C.DURAND -# TITRE TP ANALYSE SISMIQUE -# CONFIGURATION MANAGEMENT OF EDF VERSION -# ====================================================================== -# COPYRIGHT (C) 1991 - 2004 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# RESPONSABLE BOYERE E.BOYERE -#----------------------------------------------------------------------- -# -# ANALYSE RIS12 TR4 REGLEMENTAIRE -# SCENARIO 1 -# GL1(X,Y) + GL2(Z) -# -#----------------------------------------------------------------------- - -DEBUT(CODE=_F(NOM ='FORMA12C',NIV_PUB_WEB='INTERNET')) - -MAILLAGE=LIRE_MAILLAGE(INFO=2) - -MODELE=AFFE_MODELE( - MAILLAGE=MAILLAGE, - AFFE=( - _F(GROUP_MA='GPOU_D_T', - PHENOMENE='MECANIQUE', - MODELISATION='POU_D_T',), - _F(GROUP_MA='GPOU_C_T', - PHENOMENE='MECANIQUE', - MODELISATION='POU_C_T',), - _F(GROUP_MA='GDIS_TR', - PHENOMENE='MECANIQUE', - MODELISATION='DIS_TR',), - ), - ) - -IMPR_RESU(FORMAT='CASTEM',UNITE=37, - MODELE=MODELE, - RESU=_F( - MAILLAGE=MAILLAGE)) - - - -#----------------------------------------------------------------------- -# CARACTERISTIQUES DES ELEMENTS -#----------------------------------------------------------------------- - - -CARA=AFFE_CARA_ELEM( - MODELE=MODELE, - POUTRE=( - _F(GROUP_MA='GMEL0301', - SECTION='CERCLE', - CARA=('R','EP'), - VALE=(0.08415,0.00711),), - _F(GROUP_MA='GMEL0501', - SECTION='CERCLE', - CARA=('R','EP'), - VALE=(0.08415,0.0034),), - _F(GROUP_MA='GMEL0601', - SECTION='CERCLE', - CARA=('R','EP'), - VALE=(0.08415,0.0034),), - _F(GROUP_MA='GMEL0701', - SECTION='CERCLE', - CARA=('R','EP'), - VALE=(0.08415,0.0034),), - _F(GROUP_MA='GMEL1001', - SECTION='CERCLE', - CARA=('R','EP'), - VALE=(0.08415,0.0034),), - _F(GROUP_MA='GMEL1101', - SECTION='CERCLE', - CARA=('R','EP'), - VALE=(0.08415,0.0034),), - _F(GROUP_MA='GMEL1201', - SECTION='CERCLE', - CARA=('R','EP'), - VALE=(0.08415,0.0034),), - _F(GROUP_MA='GMEL1501', - SECTION='CERCLE', - CARA=('R','EP'), - VALE=(0.08415,0.0034),), - _F(GROUP_MA='GMEL1701', - SECTION='CERCLE', - CARA=('R','EP'), - VALE=(0.08415,0.0034),), - _F(GROUP_MA='GMEL1801', - SECTION='CERCLE', - CARA=('R','EP'), - VALE=(0.08415,0.0034),), - _F(GROUP_MA='GMEL1901', - SECTION='CERCLE', - CARA=('R','EP'), - VALE=(0.08415,0.0034),), - _F(GROUP_MA='GMEL2001', - SECTION='CERCLE', - CARA=('R','EP'), - VALE=(0.08415,0.0034),), - _F(GROUP_MA='GMEL2101', - SECTION='CERCLE', - CARA=('R','EP'), - VALE=(0.08415,0.0034),), - _F(GROUP_MA='GMEL2201', - SECTION='CERCLE', - CARA=('R','EP'), - VALE=(0.08415,0.0034),), - _F(GROUP_MA='GMEL2401', - SECTION='CERCLE', - CARA=('R','EP'), - VALE=(0.08415,0.00711),),), - DISCRET=(_F(MAILLE='M0801I02', - CARA='M_TR_D_N', - VALE=(36.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0),), - _F(MAILLE='M1301I02', - CARA='M_TR_D_N', - VALE=(36.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0),),), - DEFI_ARC=(_F(GROUP_MA='GMEL0601', - CENTRE=(466.39260860000002,107.5500031,0.27747499939999998), - RAYON=0.22859999540000001, - COEF_FLEX_XY=14.43145561, - COEF_FLEX_XZ=14.43145561,), - _F(GROUP_MA='GMEL1101', - CENTRE=(466.16400149999998,107.3214035,3.7724525930000001), - RAYON=0.22859999540000001, - COEF_FLEX_XY=14.43145561, - COEF_FLEX_XZ=14.43145561,), - _F(GROUP_MA='GMEL1701', - CENTRE=(466.16400149999998,106.4785995,4.2335472110000003), - RAYON=0.22859999540000001, - COEF_FLEX_XY=14.43145561, - COEF_FLEX_XZ=14.43145561,), - _F(GROUP_MA='GMEL1901', - CENTRE=(466.16400149999998,106.4785995,8.7655010220000005), - RAYON=0.22859999540000001, - COEF_FLEX_XY=14.43145561, - COEF_FLEX_XZ=14.43145561,), - _F(GROUP_MA='GMEL2101', - CENTRE=(466.16400149999998,107.4713974,9.2274990080000006), - RAYON=0.22859999540000001, - COEF_FLEX_XY=14.43145561, - COEF_FLEX_XZ=14.43145561,),),) - -#----------------------------------------------------------------------- -# DEFINITION DES MATERIAUX -#----------------------------------------------------------------------- - -MATP01=DEFI_MATERIAU(ELAS=_F(E=1.97E11, - NU=0.3, - RHO=1.3108749019999999E4, - ALPHA=1.639999937E-05,),) -MATP03=DEFI_MATERIAU(ELAS=_F(E=1.97E11, - NU=0.3, - RHO=1.956015625E4, - ALPHA=1.639999937E-05,),) - -#----------------------------------------------------------------------- -# DEFINITION DES SUPPORTS -#----------------------------------------------------------------------- - -SUPPORT=AFFE_CHAR_MECA( - MODELE=MODELE, - DDL_IMPO=( -# PF1 ET PF2 - _F( NOEUD = ('N02__I00', 'N01__I00',), - DX = 0., DY = 0., DZ = 0., DRX = 0., DRY = 0., DRZ = 0.), -# GL1 - _F( NOEUD = 'N0701I00', - DX = 0., DY = 0.), -# GL2 - _F( NOEUD = 'N1201I00', - DZ = 0.), - ), - ) - -#----------------------------------------------------------------------- -# DEFINITION DES CHAMPS DE MATERIAUX -#----------------------------------------------------------------------- - -CHMATP=AFFE_MATERIAU(MAILLAGE=MAILLAGE, - AFFE=(_F(GROUP_MA='GMAT01', - MATER=MATP01, - TEMP_REF=20.0,), - _F(GROUP_MA='GMAT03', - MATER=MATP03, - TEMP_REF=20.0,),),) - -#----------------------------------------------------------------------- -# ASSEMBLAGE MATRICE MASSE ET RIGIDITE -#----------------------------------------------------------------------- - -MACRO_MATR_ASSE(MODELE=MODELE, - CHAM_MATER=CHMATP, - CARA_ELEM=CARA, - CHARGE=SUPPORT, - NUME_DDL=CO('NUMDDL'), - MATR_ASSE=(_F(MATRICE=CO("MATRRIGI"), - OPTION='RIGI_MECA',), - _F(MATRICE=CO("MATRMASS"), - OPTION='MASS_MECA',),),); - - -#----------------------------------------------------------------------- -# ASSEMBLAGE DU SECOND MEMBRE -#----------------------------------------------------------------------- - -INCLUDE(UNITE=22) - -CHSEIX=CALC_CHAR_SEISME( MATR_MASS=MATRMASS, - DIRECTION=(1., 0., 0.,), MONO_APPUI='OUI' - ) -CHSEIY=CALC_CHAR_SEISME( MATR_MASS=MATRMASS, - DIRECTION=(0., 1., 0.,), MONO_APPUI='OUI' - ) -CHSEIZ=CALC_CHAR_SEISME( MATR_MASS=MATRMASS, - DIRECTION=(0., 0., 1.,), MONO_APPUI='OUI' - ) - -#----------------------------------------------------------------------- -# CALCUL DES MODES -#----------------------------------------------------------------------- -MASSINER=POST_ELEM( - MODELE=MODELE, - CHARGE=SUPPORT, - CARA_ELEM=CARA, - CHAM_MATER=CHMATP, - MASS_INER=_F( TOUT = 'OUI',) - ) -MODES=MACRO_MODE_MECA( - MATR_A=MATRRIGI, - MATR_B=MATRMASS, - CALC_FREQ=_F( - FREQ_MIN = 0.0, - FREQ_MAX = 33.0, - NB_BLOC_FREQ = 1), - VERI_MODE=_F( STOP_ERREUR = 'NON'), - NORM_MODE=_F( - NORME = 'MASS_GENE', - MASS_INER =MASSINER), - IMPRESSION=_F( TOUT_PARA = 'OUI') - ) - -# TEST_RESU UNIQUEMENT POUR FAIRE CAS TEST -TEST_RESU(RESU=(_F(RESULTAT=MODES, - NUME_ORDRE=1, - PARA='FREQ', - VALE= 4.5135794612152, - PRECISION=1e-05, - REFERENCE='NON_REGRESSION', - VERSION='7.3.19',))) - -MODES=CALC_ELEM( - reuse=MODES, - MODELE=MODELE, - CHAM_MATER=CHMATP, - CARA_ELEM=CARA, - OPTION=( - 'EFGE_ELNO_DEPL', - ), - RESULTAT=MODES,) - -########################################################### -#---- REPONSE TRANSITOIRE PAR SUPERPOSITION MODALE ------ -#---- MONO APPUI GRANDEURS RELATIVES ------ -########################################################### - -# DEFINITION DES INSTANTS DE RECUPERATION - -L_RECU=DEFI_LIST_REEL( DEBUT=0., - INTERVALLE=_F( - JUSQU_A = 20.47, - PAS = 0.01) - ) - -#---------------------------------------------------- -#------------- PROJECTION SUR LA BASE MODALE -------- -#---------------------------------------------------- -MACRO_PROJ_BASE( - BASE=MODES, - MATR_ASSE_GENE=( - _F( - MATRICE=CO("MASSEGEN"), - MATR_ASSE=MATRMASS, - ), - _F( - MATRICE=CO("RIGIDGEN"), - MATR_ASSE=MATRRIGI, - ), - ), - VECT_ASSE_GENE=( - _F( - VECTEUR=CO("EFGENX"), - VECT_ASSE=CHSEIX, - ), - _F( - VECTEUR=CO("EFGENY"), - VECT_ASSE=CHSEIY, - ), - _F( - VECTEUR=CO("EFGENZ"), - VECT_ASSE=CHSEIZ, - ), - ), - ) - -#------------------------------------------------------------------ -#-------------- RESOLUTION DU PB GENERALISE ----------------------- -#-------------- SANS CORRECTION STATIQUE -------------------------- -#------------------------------------------------------------------ -GSCR=DYNA_TRAN_MODAL( - MASS_GENE=MASSEGEN, - RIGI_GENE=RIGIDGEN, - AMOR_REDUIT=0.02, - EXCIT=( - _F( - VECT_GENE=EFGENX, - FONC_MULT=ACCELH1, - ), - _F( - VECT_GENE=EFGENY, - FONC_MULT=ACCELH1, - ), - _F( - VECT_GENE=EFGENZ, - FONC_MULT=ACCELV1, - ), - ), - INCREMENT=_F( - INST_INIT = 0., - INST_FIN =20.47, - PAS = 0.001 - ), - ) - -#-------------------------------------------------------------- -#---- RESTITUTION GRANDEUR PHYSIQUE DANS LE REPERE RELATIF -#--- SANS CORRECTION STATIQUE -#-------------------------------------------------------------- -# RESTITUTION GLOBALE DU CHAMP DE DEPLACEMENT RELATIF A CHAQUE INSTANT -# DE LA LISTE L_RECU -RGSCR=REST_BASE_PHYS( - RESU_GENE=GSCR, - INTERPOL='LIN', - LIST_INST=L_RECU, - #TOUT_INST='OUI', - TOUT_CHAM='OUI', - ) -DPSCR=CREA_CHAMP( - TYPE_CHAM='NOEU_DEPL_R', - OPERATION='EXTR', - RESULTAT=RGSCR, - NOM_CHAM='DEPL', - TYPE_MAXI='MAXI', - TYPE_RESU='VALE', - TOUT_ORDRE='OUI' - ) -TDPSCR=POST_RELEVE_T( - ACTION= - _F( - INTITULE = 'DEPL_MAX_R', - GROUP_NO='GNSTR01', - CHAM_GD=DPSCR, - TOUT_CMP='OUI', - OPERATION ='EXTRACTION', - ), - ) - - -# RESTITUTION GLOBALE DU CHAMP EFGE_ELNO_DEPL A CHAQUE INSTANT -# DE LA LISTE L_RECU -RGSCR=CALC_ELEM( - reuse=RGSCR, - MODELE=MODELE, - CHAM_MATER=CHMATP, - CARA_ELEM=CARA, - OPTION=( - 'EFGE_ELNO_DEPL', - ), - RESULTAT=RGSCR,) -EFSCR=CREA_CHAMP( - TYPE_CHAM='ELNO_SIEF_R', - OPERATION='EXTR', - RESULTAT=RGSCR, - NOM_CHAM='EFGE_ELNO_DEPL', - TYPE_MAXI='MAXI', - TYPE_RESU='VALE', - TOUT_ORDRE='OUI' - ) -TEFSCR=POST_RELEVE_T( - ACTION= - _F( - INTITULE = 'EFGE_MAX_R', - GROUP_NO='GNSTR01', - CHAM_GD=EFSCR, - TOUT_CMP='OUI', - OPERATION ='EXTRACTION', - ), - ) -IMPR_TABLE( - TABLE=TEFSCR, - FORMAT='TABLEAU', - ) - -########################################################### -#---- REPONSE TRANSITOIRE PAR SUPERPOSITION MODALE ------ -#---- MULTI APPUIS GRANDEURS ABSOLUES ------ -########################################################### - -# DEFINITION EXCITATION MULTIPLE - -MSTA=MODE_STATIQUE( - MATR_RIGI=MATRRIGI, - MATR_MASS=MATRMASS, - MODE_STAT=_F(TOUT='OUI',AVEC_CMP=('DX','DY','DZ'),),) - - -CHSEIXM=CALC_CHAR_SEISME( - MATR_MASS=MATRMASS, - DIRECTION=(1., 0., 0.,), - MODE_STAT=MSTA, - NOEUD=('N02__I00','N01__I00','N0701I00',), - ) - -CHSEIYM=CALC_CHAR_SEISME( - MATR_MASS=MATRMASS, - DIRECTION=(0., 1., 0.,), - MODE_STAT=MSTA, - NOEUD=('N02__I00','N01__I00','N0701I00',), - ) - -CHSEIZM=CALC_CHAR_SEISME( - MATR_MASS=MATRMASS, - DIRECTION=(0., 0., 1.,), - MODE_STAT=MSTA, - NOEUD=('N02__I00','N01__I00','N1201I00',), - ) - -MACRO_PROJ_BASE( - BASE=MODES, - MATR_ASSE_GENE=( - _F( - MATRICE=CO("MASGEN2"), - MATR_ASSE=MATRMASS, - ), - _F( - MATRICE=CO("RIGGEN2"), - MATR_ASSE=MATRRIGI, - ), - ), - VECT_ASSE_GENE=( - _F( - VECTEUR=CO("EFX2"), - VECT_ASSE=CHSEIXM, - ), - _F( - VECTEUR=CO("EFY2"), - VECT_ASSE=CHSEIYM, - ), - _F( - VECTEUR=CO("EFZ2"), - VECT_ASSE=CHSEIZM, - ), - ), - ) - - -VITESH1=CALC_FONCTION( - INTEGRE=_F(FONCTION=ACCELH1,METHODE='TRAPEZE',), - PROL_DROITE='CONSTANT' ) -DEPLAH1=CALC_FONCTION( - INTEGRE=_F(FONCTION=VITESH1,METHODE='TRAPEZE',), - PROL_DROITE='CONSTANT' ) -VITESV1=CALC_FONCTION( - INTEGRE=_F(FONCTION=ACCELV1,METHODE='TRAPEZE',), - PROL_DROITE='CONSTANT' ) -DEPLAV1=CALC_FONCTION( - INTEGRE=_F(FONCTION=VITESV1,METHODE='TRAPEZE',), - PROL_DROITE='CONSTANT' ) - -GSCA=DYNA_TRAN_MODAL( - MASS_GENE=MASGEN2, - RIGI_GENE=RIGGEN2, - AMOR_REDUIT=0.02, - MODE_STAT=MSTA, - EXCIT=( - _F( - VECT_GENE=EFX2, - ACCE=ACCELH1, - VITE=VITESH1, - DEPL=DEPLAH1, - MULT_APPUI='OUI', - DIRECTION=(1.,0.,0.,), - NOEUD=('N02__I00','N01__I00','N0701I00',), - ), - _F( - VECT_GENE=EFY2, - ACCE=ACCELH1, - VITE=VITESH1, - DEPL=DEPLAH1, - MULT_APPUI='OUI', - DIRECTION=(0.,1.,0.,), - NOEUD=('N02__I00','N01__I00','N0701I00',), - ), - _F( - VECT_GENE=EFZ2, - ACCE=ACCELV1, - VITE=VITESV1, - DEPL=DEPLAV1, - MULT_APPUI='OUI', - DIRECTION=(0.,0.,1.,), - NOEUD=('N02__I00','N01__I00','N1201I00',), - ), - ), - INCREMENT=_F( - INST_INIT = 0., - INST_FIN =20.47, - PAS = 0.001 - ), - ) - - -# RESTITUTION GRANDEURS ABSOLUES -#------------------------------- - -RGSCA=REST_BASE_PHYS( - RESU_GENE=GSCA, - INTERPOL='LIN', - LIST_INST=L_RECU, - TOUT_CHAM='OUI', - MULT_APPUI='OUI', - ) - -# DEPLACEMENTS - -DPSCA=CREA_CHAMP( - TYPE_CHAM='NOEU_DEPL_R', - OPERATION='EXTR', - RESULTAT=RGSCA, - NOM_CHAM='DEPL', - TYPE_MAXI='MAXI', - TYPE_RESU='VALE', - TOUT_ORDRE='OUI' - ) - -TDPSCA=POST_RELEVE_T( - ACTION= - _F( - INTITULE = 'DEPL_MAX_A', - GROUP_NO='GNSTR01', - CHAM_GD=DPSCA, - TOUT_CMP='OUI', - OPERATION ='EXTRACTION', - ), - ) - -IMPR_TABLE( - TABLE=TDPSCA, - FORMAT='TABLEAU', - ) - -# EFFORTS - -RGSCA=CALC_ELEM( - reuse=RGSCA, - MODELE=MODELE, - CHAM_MATER=CHMATP, - CARA_ELEM=CARA, - OPTION=( - 'EFGE_ELNO_DEPL', - ), - RESULTAT=RGSCA,) - -EFSCA=CREA_CHAMP( - TYPE_CHAM='ELNO_SIEF_R', - OPERATION='EXTR', - RESULTAT=RGSCA, - NOM_CHAM='EFGE_ELNO_DEPL', - TYPE_MAXI='MAXI', - TYPE_RESU='VALE', - TOUT_ORDRE='OUI' - ) - -TEFSCA=POST_RELEVE_T( - ACTION= - _F( - INTITULE = 'EFGE_MAX_A', - GROUP_NO='GNSTR01', - CHAM_GD=EFSCA, - TOUT_CMP='OUI', - OPERATION ='EXTRACTION', - ), - ) -IMPR_TABLE( - TABLE=TEFSCA, - FORMAT='TABLEAU', - ) - - -# RESTITUTION GRANDEURS RELATIVES -#------------------------------- - -# DEPLACEMENTS - -RGSCR2=REST_BASE_PHYS( - RESU_GENE=GSCA, - INTERPOL='LIN', - LIST_INST=L_RECU, - TOUT_CHAM='OUI', - ) - -DPSCR2=CREA_CHAMP( - TYPE_CHAM='NOEU_DEPL_R', - OPERATION='EXTR', - RESULTAT=RGSCR2, - NOM_CHAM='DEPL', - TYPE_MAXI='MAXI', - TYPE_RESU='VALE', - TOUT_ORDRE='OUI' - ) - -TDPSCR2=POST_RELEVE_T( - ACTION= - _F( - INTITULE = 'DEPL_MAX_R2', - GROUP_NO='GNSTR01', - CHAM_GD=DPSCR2, - TOUT_CMP='OUI', - OPERATION ='EXTRACTION', - ), - ) - -IMPR_TABLE( - TABLE=TDPSCR2, - FORMAT='TABLEAU', - ) - -# EFFORTS - -RGSCR2=CALC_ELEM( - reuse=RGSCR2, - MODELE=MODELE, - CHAM_MATER=CHMATP, - CARA_ELEM=CARA, - OPTION=( - 'EFGE_ELNO_DEPL', - ), - RESULTAT=RGSCR2,) - -EFSCR2=CREA_CHAMP( - TYPE_CHAM='ELNO_SIEF_R', - OPERATION='EXTR', - RESULTAT=RGSCR2, - NOM_CHAM='EFGE_ELNO_DEPL', - TYPE_MAXI='MAXI', - TYPE_RESU='VALE', - TOUT_ORDRE='OUI' - ) - -TEFSCR2=POST_RELEVE_T( - ACTION= - _F( - INTITULE = 'EFGE_MAX_R2', - GROUP_NO='GNSTR01', - CHAM_GD=EFSCR2, - TOUT_CMP='OUI', - OPERATION ='EXTRACTION', - ), - ) - -IMPR_TABLE( - TABLE=TEFSCR2, - FORMAT='TABLEAU', - ) - -########################################################### -#------REPONSE SPECTRALE PAR SUPERPOSITION MODALE--------- -########################################################### - -# CALCUL DU SPECTRE DE REPONSE OSCILLATEUR EN PSEUDO ACCELERATION ABSOLUE -# NAPPE SRO FONCTION DE AMORTISSEMENT -#------------------------------------------------------------------------ -SROXY=CALC_FONCTION( - SPEC_OSCI=_F( - FONCTION=ACCELH1, - AMOR_REDUIT=(0.02,0.05,0.10), - NORME=9.81, - ), - ) -SROZ=CALC_FONCTION( - SPEC_OSCI=_F( - FONCTION=ACCELV1, - AMOR_REDUIT=(0.02,0.05,0.10), - NORME=9.81, - ), - ) - - -#----------------------------------------------- -# REPONSE SPECTRALE SANS CORRECTION STATIQUE -#----------------------------------------------- -SPEC=COMB_SISM_MODAL( - MODE_MECA=MODES, - AMOR_REDUIT=0.02, - MASS_INER=MASSINER, - EXCIT=_F( - MONO_APPUI='OUI', - TRI_SPEC='OUI', - SPEC_OSCI=(SROXY,SROXY,SROZ), - ECHELLE=(9.81,9.81,9.81),), - COMB_MODE=_F(TYPE='CQC',), - COMB_DIRECTION=_F( TYPE = 'QUAD',), - OPTION=( - 'DEPL', - 'EFGE_ELNO_DEPL', - ), - ) - -EFSPEC=POST_RELEVE_T( - ACTION= - _F( - INTITULE = 'EFGE_SPEC', - GROUP_NO='GNSTR01', - RESULTAT=SPEC, - NOM_CHAM='EFGE_ELNO_DEPL', - NUME_ORDRE=4, - TOUT_CMP='OUI', - OPERATION ='EXTRACTION', - ), - ) - -IMPR_TABLE( - TABLE=EFSPEC, - FORMAT='TABLEAU', - ) - -DPSPEC=POST_RELEVE_T( - ACTION= - _F( - INTITULE = 'DEPL_SPEC', - GROUP_NO='GNSTR01', - RESULTAT=SPEC, - NOM_CHAM='DEPL', - NUME_ORDRE=4, - TOUT_CMP='OUI', - OPERATION ='EXTRACTION', - ), - ) - -IMPR_TABLE( - TABLE=DPSPEC, - FORMAT='TABLEAU', - ) - - - -FIN() - - - - - - diff --git a/Tests/testcomm7/g.comm b/Tests/testcomm7/g.comm deleted file mode 100644 index 8756209b..00000000 --- a/Tests/testcomm7/g.comm +++ /dev/null @@ -1,11 +0,0 @@ -DEBUT() -sensible=[2.1E11, 0.3, 1.E-6, 1.E-6, ] - -# parse: -affectation -n=len(sensible) -PS=[None]*n - -#for i in range(n): -# PS[i]=DEFI_PARA_SENSI(VALE=sensible[i]) - -FIN() diff --git a/Tests/testcomm7/hplp101b.comm b/Tests/testcomm7/hplp101b.comm deleted file mode 100755 index f6f66257..00000000 --- a/Tests/testcomm7/hplp101b.comm +++ /dev/null @@ -1,115 +0,0 @@ -# MODIF DATE 09/05/2006 AUTEUR REZETTE C.REZETTE -# TITRE FISSURE AU CENTRE D'UNE PLAQUE MINCE RECTANGULAIRE FAISANT -# CONFIGURATION MANAGEMENT OF EDF VERSION -# ====================================================================== -# COPYRIGHT (C) 1991 - 2004 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# OBSTACLE A UN FLUC DE CHALEUR UNIFORME EN MILIEU ISOTROPE -# -# TESTE LES DERIVEES DE G DANS LE CAS D'UN CHARGEMENT EN FORCE DE VOLUME - -DEBUT( CODE=_F( NOM = 'HPLP101B',NIV_PUB_WEB='INTERNET')) - -YOUNG = DEFI_PARA_SENSI(VALE=1.) -FORC = DEFI_PARA_SENSI(VALE=1.) - -MA=LIRE_MAILLAGE( ) - -MA=DEFI_GROUP( reuse=MA, MAILLAGE=MA, - CREA_GROUP_NO=_F( - GROUP_MA = ( 'LP9P10', 'LP9P10B', - 'LP8P9', 'LP8P9B', - )) - ) - -MO=AFFE_MODELE( MAILLAGE=MA, - AFFE=_F( TOUT = 'OUI', - PHENOMENE = 'MECANIQUE', - MODELISATION = 'C_PLAN') - ) -ZERO = DEFI_CONSTANTE(VALE=0.) -NU = DEFI_CONSTANTE(VALE=0.3) -ALPHA = DEFI_CONSTANTE(VALE=0.) - -MAT=DEFI_MATERIAU(ELAS_FO=_F( E = YOUNG, NU = NU, - TEMP_DEF_ALPHA =20., - ALPHA = ALPHA, RHO=7800.,)) - -CHMAT=AFFE_MATERIAU( MAILLAGE=MA, - AFFE=_F( TOUT = 'OUI', - MATER = MAT) - ) - -CH=AFFE_CHAR_MECA_F( MODELE=MO, - FORCE_INTERNE=_F(TOUT='OUI',FY=FORC,), - DDL_IMPO=( - _F( GROUP_NO = 'LP8P9', - DX = ZERO), - _F( GROUP_NO = 'LP8P9B', - DX = ZERO), - _F( GROUP_NO = 'P11', - DY = ZERO)) - ) - -DEP=MECA_STATIQUE( MODELE=MO, CHAM_MATER=CHMAT, - SENSIBILITE = (FORC), - EXCIT=_F( CHARGE = CH), - ) - -DEP=CALC_ELEM(reuse=DEP,RESULTAT=DEP, - SENSIBILITE = (FORC), - OPTION=('EPSI_ELGA_DEPL','SIEF_ELGA_DEPL',),) - -FOND=DEFI_FOND_FISS( MAILLAGE=MA, - FOND_FISS=_F( GROUP_NO = ('P0',)), - NORMALE=(0., 1., 0.,) - ) - -THETA0=CALC_THETA( MODELE=MO, - THETA_2D=_F( GROUP_NO = ('P0',), - MODULE = 1., - R_INF = 3.75E-5, - R_SUP = 7.50E-5), - DIRECTION=(1., 0., 0.,) - ) - -FIN() - -THETA01=CALC_THETA( MODELE=MO, - THETA_2D=_F( GROUP_NO = ('P0',), - MODULE = 1., - R_INF = 7.50E-5, - R_SUP = 1.125E-4), - DIRECTION=(1., 0., 0.,) - ) - -# -# DERIVEE PAR RAPPORT A E -# - -DEP2=MECA_STATIQUE( MODELE=MO, CHAM_MATER=CHMAT, - SENSIBILITE = (YOUNG), - EXCIT=_F( CHARGE = CH), - ) - -DEP2=CALC_ELEM(reuse=DEP2,RESULTAT=DEP2, - SENSIBILITE = (YOUNG), - OPTION=('EPSI_ELGA_DEPL','SIEF_ELGA_DEPL',),) - - - -FIN() - diff --git a/Tests/testcomm7/incmat.comm b/Tests/testcomm7/incmat.comm deleted file mode 100644 index 705a1cbd..00000000 --- a/Tests/testcomm7/incmat.comm +++ /dev/null @@ -1,7 +0,0 @@ -DEBUT() -MA=LIRE_MAILLAGE() -INCLUDE_MATERIAU( NOM_AFNOR='18MND5', TYPE_MODELE='REF', - VARIANTE='A', TYPE_VALE='NOMI', - NOM_MATER='MAT3', INFO=1 ) - -FIN() diff --git a/Tests/testcomm7/param1.comm b/Tests/testcomm7/param1.comm deleted file mode 100644 index 79172614..00000000 --- a/Tests/testcomm7/param1.comm +++ /dev/null @@ -1,36 +0,0 @@ - -DEBUT() -TEMP_MOY=50. -coef0 = 1.E-3 - -A0=DEFI_FONCTION( NOM_PARA='TEMP', - PROL_DROITE='EXCLU', - PROL_GAUCHE='EXCLU', - VALE=( - 20. ,14.7 *coef0, - 50. ,15.2 *coef0, - 100. ,15.8 *coef0, - 150. ,16.7 *coef0, - 200. ,17.2 *coef0, - 250. ,18. *coef0, - 300. ,18.6 *coef0, - 350. ,19.3 *coef0, - 400. ,20. *coef0, - 450. ,20.5 *coef0, - 500. ,21.1 *coef0, - 550. ,21.7 *coef0, - 600. ,22.2 *coef0, - 650. ,22.7 *coef0, - 700. ,23.2 *coef0, - 750. ,23.7 *coef0, - 800. ,24.1 *coef0, - 950. ,26.67 *coef0, - 1150. ,29.24 *coef0, - 1370. ,32.06 *coef0, - )) - -DEFI_MATERIAU( ELAS=_F( RHO = 1.E08, - NU = 0.3, - E = A0(TEMP_MOY))) - -FIN() diff --git a/Tests/testcomm7/param2.com0 b/Tests/testcomm7/param2.com0 deleted file mode 100644 index 2d32a387..00000000 --- a/Tests/testcomm7/param2.com0 +++ /dev/null @@ -1,4 +0,0 @@ -POURSUITE(); -l1=DEFI_LIST_ENTI(DEBUT=mon_param,); -FIN(); - diff --git a/Tests/testcomm7/param2.comm b/Tests/testcomm7/param2.comm deleted file mode 100644 index 19c8eeb2..00000000 --- a/Tests/testcomm7/param2.comm +++ /dev/null @@ -1,4 +0,0 @@ -DEBUT(); -mon_param = 2; -m=LIRE_MAILLAGE() -FIN(); diff --git a/Tests/testcomm7/param3.11 b/Tests/testcomm7/param3.11 deleted file mode 100644 index 236ca5ca..00000000 --- a/Tests/testcomm7/param3.11 +++ /dev/null @@ -1,2 +0,0 @@ -x=45 -y=77 diff --git a/Tests/testcomm7/param3.12 b/Tests/testcomm7/param3.12 deleted file mode 100644 index 2c2a2157..00000000 --- a/Tests/testcomm7/param3.12 +++ /dev/null @@ -1 +0,0 @@ -d=5;f=7 diff --git a/Tests/testcomm7/param3.com0 b/Tests/testcomm7/param3.com0 deleted file mode 100644 index d5a0bbf5..00000000 --- a/Tests/testcomm7/param3.com0 +++ /dev/null @@ -1,11 +0,0 @@ -POURSUITE(); -l1=DEFI_LIST_ENTI(DEBUT=2*mon_param+1,); -l2=DEFI_LIST_ENTI(DEBUT=a[1]); -INCLUDE_MATERIAU( NOM_AFNOR='18MND5', TYPE_MODELE='REF', - VARIANTE='A', TYPE_VALE='NOMI', - NOM_MATER='MAT3', INFO=1 ) -INCLUDE(UNITE=11) -INCLUDE(UNITE=12) - -FIN(); - diff --git a/Tests/testcomm7/param3.comm b/Tests/testcomm7/param3.comm deleted file mode 100644 index b7a38ea2..00000000 --- a/Tests/testcomm7/param3.comm +++ /dev/null @@ -1,5 +0,0 @@ -DEBUT(); -mon_param = 2; -m=LIRE_MAILLAGE() -a=[1,2,3,4];b=2 -FIN(); diff --git a/Tests/testcomm7/pars1.comm b/Tests/testcomm7/pars1.comm deleted file mode 100644 index 53e7f325..00000000 --- a/Tests/testcomm7/pars1.comm +++ /dev/null @@ -1,61 +0,0 @@ -DEBUT() -a=1 # comment -c=32.3 # comment - -aa='string # bizarre' -a="string # bizarre" - -b="string ( bizarre" - -d="""string multi -line -""" -e="""string multi # ssssssssssss -line -""" -P='''string # bizarre' #profondeur ' # autre -bbb''' - -#comment -#comment -#comment - -#commenta -##XXXX=CHARGE(RAYON=0.1E-2,VALE=(0.12E-1,0.54E-5,0.1),MCF=_F(VALE=0.3E-5), -## V="toto", - ## ) -#commentb - -##CH=CHARGE(RAYON=0.1E-2,VALE=(0.12E-1,0.54E-5,0.1),MCF=_F(VALE=0.3E-5), -## MCF2=(_F(VALE=0.3E-4,GROUP_MA='GMA0601'),_F(VALE=0.3E-2)), -## VALE_C=[0.12E-3,0.54E-1,0.1], - ## ) -MA=LIRE_MAILLAGE() -a=(10, -#commentc -12,13) - -#commentd -P=1 #profondeur -#commente -aaa=(10, -11, #commentc -12,13) -xx=EVAL("13.26") - -fmt_raison='-'*80+''' - - Exception erreur_Fatale interceptee - Raison : %s - -'''+'-'*80+'xxxxxxxxxxxxxxxx\n' - -# commen """ -# commen ''' -# commen ' -# commen " -BETA=3.41557E-08 - -a=8.3 ; #position - -FIN() diff --git a/Tests/testcomm7/parseur.comm b/Tests/testcomm7/parseur.comm deleted file mode 100644 index 92aaf898..00000000 --- a/Tests/testcomm7/parseur.comm +++ /dev/null @@ -1,74 +0,0 @@ -DEBUT() -P1 = 9.8; - -P2 = 8.8; - -P3 = 7; - -P5 = P3*P1; - -P6 = P1-3; - -P4 = [2,3,4]; - -a = 1. -b=3 -c= 3 * 5 -cc="b+3" -d= 4 + \ - 5 \ - -4 -e=LIRE_MAILLAGE() -##MA=LIRE_MAILLAGE() -x=(1,2) -y=[3, -#comme -4] -z="a" -zz='v' -u='''aaaa -bbbb''' -#ne marche pas avec le parseur actuel -#if 1: -# a=45 -#else: -# a=5.6 -d={"a":0} -e={"a":0, -#comme -"d":4} -#ne marche pas avec le parseur actuel -#a==1 -s="-"*80 -fmt_raison='-'*80+''' - - Exception erreur_Fatale interceptee - Raison : %s - -'''+'-'*80+'xxxxxxxxxxxxxxxx\n' - -# commen """ -# commen ''' -# commen ' -# commen " -BETA=3.41557E-08 - -C_0=105.7 - -C_EQ_I05=69.1 - -C_EQ_E05=69.1 - -C_EQ_I10=51.6 - -C_EQ_E10=69.1 - -FL_INT05 = FORMULE(NOM_PARA='TEMP',VALE=''' -(0.5*BETA / ((C_0 - C_EQ_I05 )**2) - * (TEMP - (2.*C_0 - C_EQ_I05 ))*(TEMP - C_EQ_I05 ))''') - -zz=8.9; -#ne marche pas avec le parseur actuel -#zz=8.9;aa=10 #position - -FIN() diff --git a/Tests/testcomm7/testcomm.py b/Tests/testcomm7/testcomm.py deleted file mode 100644 index a44d5f78..00000000 --- a/Tests/testcomm7/testcomm.py +++ /dev/null @@ -1,70 +0,0 @@ -import os,glob,sys -import unittest -import difflib - -import prefs -from InterfaceTK import appli - -def add_param(j,pos,nom,valeur): - co=j.addEntite("PARAMETRE",pos) - co.setNom(nom) - co.set_valeur(valeur) - return co - -def add_mcsimp(obj,nom,valeur): - mcs=obj.getChild(nom,restreint='oui') - if mcs is None: - pos=obj.getIndexChild(nom) - mcs=obj.addEntite(nom,pos) - mcs.set_valeur(mcs.evalVal(valeur)) - return mcs - -def cdiff(text1,text2): - return " ".join(difflib.context_diff(text1.splitlines(1),text2.splitlines(1))) - -class TestCase(unittest.TestCase): - app=None - def setUp(self): - if self.app == None: - self.app=appli.STANDALONE(version='v7') - pass - - def tearDown(self): - CONTEXT.unsetCurrentStep() - - i=0 - files= os.path.join(os.path.dirname(__file__),"*.comm") - for f in glob.glob(files): - for o in ('3','2','1','0','m'): - f=f[:-1]+o - if os.path.isfile(f):break - - i=i+1 - exec """def test%s(self,file="%s"): - "fichier:%s" - self.commtest(file) -""" % (i,f,f) - del i - - def commtest(self,file): - """ Test generique""" - #print file - name=os.path.splitext(os.path.basename(file))[0] - errfile=os.path.join(os.path.dirname(__file__),name+".err") - err="" - if os.path.isfile(errfile): - f=open(errfile) - err=f.read() - f.close() - j=self.app.openJDC(file=file) - assert j.cr.getMessException() == "" - - if err == "": - assert j.isValid(),j.report() - else: - txt=str(j.report()) - assert txt == err,cdiff(err,txt) - - CONTEXT.unsetCurrentStep() - j.supprime() - assert sys.getrefcount(j) == 2,sys.getrefcount(j) diff --git a/Tests/testcomm7/titi.comm b/Tests/testcomm7/titi.comm deleted file mode 100644 index a235be8a..00000000 --- a/Tests/testcomm7/titi.comm +++ /dev/null @@ -1,69 +0,0 @@ -DEBUT() -YOUNG = DEFI_PARA_SENSI(VALE=1.) -FORC = DEFI_PARA_SENSI(VALE=1.) -MA=LIRE_MAILLAGE() -MA=DEFI_GROUP( reuse=MA, MAILLAGE=MA, - CREA_GROUP_NO=_F( - GROUP_MA = ( 'LP9P10', 'LP9P10B', - 'LP8P9', 'LP8P9B', - )) - ) - -MO=AFFE_MODELE( MAILLAGE=MA, - AFFE=_F( TOUT = 'OUI', - PHENOMENE = 'MECANIQUE', - MODELISATION = 'C_PLAN') - ) -ZERO = DEFI_CONSTANTE(VALE=0.) -NU = DEFI_CONSTANTE(VALE=0.3) -ALPHA = DEFI_CONSTANTE(VALE=0.) - -MAT=DEFI_MATERIAU(ELAS_FO=_F( E = YOUNG, NU = NU, - TEMP_DEF_ALPHA =20., - ALPHA = ALPHA, RHO=7800.,)) - -CHMAT=AFFE_MATERIAU( MAILLAGE=MA, - AFFE=_F( TOUT = 'OUI', - MATER = MAT) - ) - -CH=AFFE_CHAR_MECA_F( MODELE=MO, - FORCE_INTERNE=_F(TOUT='OUI',FY=FORC,), - DDL_IMPO=( - _F( GROUP_NO = 'LP8P9', - DX = ZERO), - _F( GROUP_NO = 'LP8P9B', - DX = ZERO), - _F( GROUP_NO = 'P11', - DY = ZERO)) - ) - -DEP=MECA_STATIQUE( MODELE=MO, CHAM_MATER=CHMAT, - SENSIBILITE = (FORC), - EXCIT=_F( CHARGE = CH), - ) - -DEP=CALC_ELEM(reuse=DEP,RESULTAT=DEP, - SENSIBILITE = (FORC), - OPTION=('EPSI_ELGA_DEPL','SIEF_ELGA_DEPL',),) - -FOND=DEFI_FOND_FISS( MAILLAGE=MA, - FOND_FISS=_F( GROUP_NO = ('P0',)), - NORMALE=(0., 1., 0.,) - ) - -THETA0=CALC_THETA( MODELE=MO, - THETA_2D=_F( GROUP_NO = ('P0',), - MODULE = 1., - R_INF = 3.75E-5, - R_SUP = 7.50E-5), - DIRECTION=(1., 0., 0.,) - ) - - -FIN() -MA1=LIRE_MAILLAGE() -MO1=AFFE_MODELE( MAILLAGE=MA1, AFFE=_F( TOUT = 'OUI', - PHENOMENE = 'MECANIQUE', MODELISATION = 'C_PLAN')) - -FIN() diff --git a/Tests/testcomm9/a.11 b/Tests/testcomm9/a.11 deleted file mode 100644 index 1723fcb9..00000000 --- a/Tests/testcomm9/a.11 +++ /dev/null @@ -1 +0,0 @@ -MM=LIRE_MAILLAGE() diff --git a/Tests/testcomm9/a.com0 b/Tests/testcomm9/a.com0 deleted file mode 100644 index 04d1cc20..00000000 --- a/Tests/testcomm9/a.com0 +++ /dev/null @@ -1,3 +0,0 @@ -POURSUITE() -MA=LIRE_MAILLAGE(INFO=inf) -FIN() diff --git a/Tests/testcomm9/a.comm b/Tests/testcomm9/a.comm deleted file mode 100644 index 665f63fe..00000000 --- a/Tests/testcomm9/a.comm +++ /dev/null @@ -1,5 +0,0 @@ -DEBUT() -inf=1 -p2=inf+1 -p3=sin(p2) -FIN() diff --git a/Tests/testcomm9/aa.comm b/Tests/testcomm9/aa.comm deleted file mode 100644 index 124141b4..00000000 --- a/Tests/testcomm9/aa.comm +++ /dev/null @@ -1,8 +0,0 @@ -DEBUT() -inf1=1 -MA=LIRE_MAILLAGE(INFO=inf1) -INCLUDE_MATERIAU( NOM_AFNOR='18MND5', TYPE_MODELE='REF', - VARIANTE='A', TYPE_VALE='NOMI', - NOM_MATER='MAT3', INFO=1 ) - -FIN() diff --git a/Tests/testcomm9/b.comm b/Tests/testcomm9/b.comm deleted file mode 100644 index 478973df..00000000 --- a/Tests/testcomm9/b.comm +++ /dev/null @@ -1,9 +0,0 @@ -DEBUT() -a=1 -fmt_raison='-'*80+""" - - Exception erreur_Fatale interceptee - Raison : %s - -"""+'-'*80+'\n' -FIN() diff --git a/Tests/testcomm9/c.comm b/Tests/testcomm9/c.comm deleted file mode 100644 index a3ac4352..00000000 --- a/Tests/testcomm9/c.comm +++ /dev/null @@ -1,44 +0,0 @@ -from Numeric import cos -DEBUT() -RAYCRA=1. -EPCRA=0.1 -S_CR=3.1415*(RAYCRA**2-(RAYCRA-EPCRA)**2) -T_CR=3.1415 -NOMF="nomfichier" -n=2 - -MA=LIRE_MAILLAGE( ) - -MO=AFFE_MODELE( MAILLAGE=MA, - #test de validateur GEOM (typ=grma) avec grma derive de GEOM - AFFE=(_F(GROUP_MA = ('LI1'), - PHENOMENE = 'MECANIQUE', - MODELISATION = 'DIS_TR'), - ), - INFO=2,); - -carel=[0.]*78 - -CAREG=AFFE_CARA_ELEM(MODELE=MO, - DISCRET=_F(GROUP_MA=('LI1'), - CARA = 'K_TR_L', - VALE = carel, - REPERE='LOCAL' , ), - ORIENTATION=(_F(GROUP_MA=('LI1',), - CARA='VECT_Y', - VALE=(0.,0.,1.),),), - ); - -DEFI_FICHIER(UNITE=50, FICHIER='./REPE_OUT/zzzz206a_resu.mail') -#test de validateur LongStr avec parametre instance de PARAMETRE -DEFI_FICHIER(UNITE=50, FICHIER=NOMF) -#test de validateur LongStr avec parametre instance de Formula -u=DEFI_FICHIER( FICHIER=NOMF*2) -DEFI_FICHIER (ACTION='LIBERER',UNITE=50) -#test de validateur d'objet entier (typ='I'), instance de la classe entier -DEFI_FICHIER (ACTION='LIBERER',UNITE=u) - -# test de validateur qui accepte tout (typ=assd) -IMPR_CO(CONCEPT=_F(NOM=MA)) - -FIN() diff --git a/Tests/testcomm9/cabri02a.comm b/Tests/testcomm9/cabri02a.comm deleted file mode 100755 index 4c858c6f..00000000 --- a/Tests/testcomm9/cabri02a.comm +++ /dev/null @@ -1,78 +0,0 @@ -# MODIF DATE 07/03/2005 AUTEUR CIBHHLV L.VIVAN -# RESPONSABLE MABBAS M.ABBAS -# -# TITRE TEST DE REFERENCE POUR LA MACRO DE CALCUL DE BRIDES CABRI -# CONFIGURATION MANAGEMENT OF EDF VERSION -# ====================================================================== -# COPYRIGHT (C) 1991 - 2003 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== - -DEBUT(CODE=_F( NOM = 'CABRI02A',NIV_PUB_WEB='INTRANET')); - -# DEFINITION DES DONNEES MATERIAUX - -# Temperature initiale, assemblage libre de contraintes -TEMP_INI=25.0; - -# Temperature moyenne du transitoire pour calcul de lambda et rhoCp -TEMP_MOY = 170.0; - -INCLUDE_MATERIAU(NOM_AFNOR='Z2CN1810', - TYPE_MODELE='REF', - VARIANTE='A', - TYPE_VALE='NOMI', - NOM_MATER='MA_BRI', - EXTRACTION=_F(COMPOR='THER', - TEMP_EVAL= TEMP_MOY,), - UNITE_LONGUEUR='MM'); - -INCLUDE_MATERIAU(NOM_AFNOR='Z12CN13', - TYPE_MODELE='REF', - VARIANTE='A', - TYPE_VALE='NOMI', - NOM_MATER='MA_ECR', - EXTRACTION=_F(COMPOR='THER', - TEMP_EVAL= TEMP_MOY,), - UNITE_LONGUEUR='MM',); - -INCLUDE_MATERIAU(NOM_AFNOR='Z12CN13', - TYPE_MODELE='REF', - VARIANTE='A', - TYPE_VALE='NOMI', - NOM_MATER='MA_RON', - EXTRACTION=_F(COMPOR='THER', - TEMP_EVAL= TEMP_MOY,), - UNITE_LONGUEUR='MM',); - -INCLUDE_MATERIAU(NOM_AFNOR='Z2CN1810', - TYPE_MODELE='REF', - VARIANTE='A', - TYPE_VALE='NOMI', - NOM_MATER='MA_GOU', - EXTRACTION=_F(COMPOR='THER', - TEMP_EVAL= TEMP_MOY,), - UNITE_LONGUEUR='MM',); - -INCLUDE_MATERIAU(NOM_AFNOR='Z6CND1712', - TYPE_MODELE='REF', - VARIANTE='A', - TYPE_VALE='NOMI', - NOM_MATER='MA_LIM', - EXTRACTION=_F(COMPOR='THER', - TEMP_EVAL= TEMP_MOY,), - UNITE_LONGUEUR='MM',); - -FIN(); diff --git a/Tests/testcomm9/d.comm b/Tests/testcomm9/d.comm deleted file mode 100644 index 06bd2405..00000000 --- a/Tests/testcomm9/d.comm +++ /dev/null @@ -1,4 +0,0 @@ -DEBUT() -a=1 -MA=LIRE_MAILLAGE() -FIN() diff --git a/Tests/testcomm9/e.comm b/Tests/testcomm9/e.comm deleted file mode 100644 index 15bf3261..00000000 --- a/Tests/testcomm9/e.comm +++ /dev/null @@ -1,70 +0,0 @@ -DEBUT() -MAYA=LIRE_MAILLAGE() - -MAYA=DEFI_GROUP( reuse=MAYA, MAILLAGE=MAYA, - CREA_GROUP_MA=_F( NOM = 'TOUT', TOUT = 'OUI')) - -BARRE1=AFFE_MODELE( MAILLAGE=MAYA, - AFFE=_F( GROUP_MA='SS1', - MODELISATION = 'POU_D_E', - PHENOMENE = 'MECANIQUE')) -# -MATERIO1=DEFI_MATERIAU( ELAS=_F( RHO = 1.E08, NU = 0.3, E = 1.E10)) - -MATERIO2=DEFI_MATERIAU( ELAS=_F( RHO = 0., NU = 0., E = 1.E15)) -# -CHMAT=AFFE_MATERIAU( MAILLAGE=MAYA,AFFE=( - #_F( TOUT = 'OUI', MATER = MATERIO1), - _F( GROUP_MA = 'SS1', MATER = MATERIO1), - _F( GROUP_MA = 'SS2', MATER = MATERIO1), - _F( GROUP_MA = 'SS3', MATER = MATERIO1), - _F( GROUP_MA = 'RIGIDE', MATER = MATERIO2), -)) # commentaire test - -CARA1=AFFE_CARA_ELEM( MODELE=BARRE1, - POUTRE=_F( - GROUP_MA = 'TOUT', - SECTION = 'CERCLE', - CARA = ('R', 'EP',), - VALE = (0.1, 0.01,))) - -GUIDAGE1=AFFE_CHAR_MECA( MODELE=BARRE1,DDL_IMPO=( - _F( GROUP_MA='SS1', - DX = 0., DZ = 0., DRX = 0., DRY = 0.), - _F( GROUP_NO = 'L1', DY = 0., DRZ = 0.), - )) - -K_ELEM1=CALC_MATR_ELEM( MODELE=BARRE1, - CARA_ELEM=CARA1, - CHAM_MATER=CHMAT, - OPTION='RIGI_MECA', - CHARGE=GUIDAGE1) - -NUM1=NUME_DDL( MATR_RIGI=K_ELEM1) - -# -K_ASSE1=ASSE_MATRICE( MATR_ELEM=K_ELEM1, - NUME_DDL=NUM1) - -MODESTA1=MODE_STATIQUE( MATR_RIGI=K_ASSE1, - MODE_STAT=_F( - GROUP_NO=('L12'), - AVEC_CMP = ('DY','DRZ'), - )) - -# parse: -affectation - -DS1=[None]*5 -DS2=[None]*5 -DS3=[None]*5 -DS4=[None]*5 -CHS1=[None]*5 -CHS2=[None]*5 - -# parse: +affectation - -#for k in range(1,5): -# DS1[k] = CREA_CHAMP( OPERATION='EXTR', TYPE_CHAM='NOEU_DEPL_R', -# RESULTAT= MODESTA1, NUME_ORDRE=k, NOM_CHAM = 'DEPL'); - -FIN() diff --git a/Tests/testcomm9/efica01a.11 b/Tests/testcomm9/efica01a.11 deleted file mode 100644 index bec37b5b..00000000 --- a/Tests/testcomm9/efica01a.11 +++ /dev/null @@ -1,19 +0,0 @@ -DEPL2 = FORMULE(NOM_PARA='INST',VALE='sin(OMEGAA*INST)/(OMEGAA**xx)') -DEPLACE2=CALC_FONC_INTERP( FONCTION=DEPL2, - LIST_PARA=L_INST, - NOM_PARA='INST', - PROL_DROITE='LINEAIRE', - PROL_GAUCHE='LINEAIRE', - NOM_RESU='DEPL' ) - -MONO_X=CALC_CHAR_SEISME( MATR_MASS=MASSE, - DIRECTION=( 1., 0., 0.,), - MONO_APPUI='OUI' ) - - -MACRO_PROJ_BASE(BASE=MODE_MEC,MATR_ASSE_GENE=( - _F( MATRICE = CO("MASS_GEN"), MATR_ASSE = MASSE), - _F( MATRICE = CO("RIGI_GEN"), MATR_ASSE = RIGIDITE)), - VECT_ASSE_GENE=_F( VECTEUR = CO("VECT_X"), VECT_ASSE = MONO_X) - ) - diff --git a/Tests/testcomm9/efica01a.com0 b/Tests/testcomm9/efica01a.com0 deleted file mode 100755 index 35fe5404..00000000 --- a/Tests/testcomm9/efica01a.com0 +++ /dev/null @@ -1,49 +0,0 @@ -POURSUITE(CODE=_F( NOM = 'EFICA01A')) - -INCLUDE_MATERIAU( NOM_AFNOR='18MND5', TYPE_MODELE='REF', - VARIANTE='A', TYPE_VALE='NOMI', - NOM_MATER='MAT3', INFO=1 ) - -CHMAT3=AFFE_MATERIAU( MAILLAGE=MAILLA3, - AFFE=_F( TOUT='OUI', MATER = MAT3)) - -riginor = 2.88E7 - -TRAN_GE2=DYNA_TRAN_MODAL( MASS_GENE=MGEN_BIC, RIGI_GENE=RGEN_BIC, - METHODE='EULER', - AMOR_REDUIT=( 0.07, 0.07, ), - MODE_STAT=MSTA_BIC,EXCIT=( - _F( VECT_GENE = VECT_X1, ACCE = ACCELER1, - MULT_APPUI = 'OUI', - DIRECTION = ( 1., 0., 0.,), NOEUD = 'NO1', - VITE = VITESSE1, DEPL = DEPLACE1), - _F( VECT_GENE = VECT_X2, ACCE = ACCELER2, - MULT_APPUI = 'OUI', - DIRECTION = ( 1., 0., 0.,), NOEUD = 'NO11', - VITE = VITESSE2, DEPL = DEPLACE2)), - CHOC=_F( GROUP_NO_1 = 'MASSES1', - GROUP_NO_2 = 'MASSES2', - OBSTACLE = GRILLE, - INTITULE = 'NO2/NO12', - NORM_OBST = (0., 0., 1.,), - DIST_1 = 0.4495, - DIST_2 = 0.4495, - RIGI_NOR = riginor, - AMOR_NOR = 0., - RIGI_TAN = 0., - COULOMB = 0.), - INCREMENT=_F( INST_INIT = 0., INST_FIN = 1., PAS = 0.00025), - ARCHIVAGE=_F( PAS_ARCH = 8) - ) - -LISTIMP=DEFI_LIST_REEL( DEBUT=0., - INTERVALLE=_F( JUSQU_A = 1., NOMBRE = 500)) - -RESUA1=REST_GENE_PHYS( RESU_GENE=TRAN_GE1, - LIST_INST=LISTIMP, - INTERPOL='LIN', - NOM_CHAM='DEPL', - MULT_APPUI='OUI' - ) - -FIN() diff --git a/Tests/testcomm9/efica01a.comm b/Tests/testcomm9/efica01a.comm deleted file mode 100755 index 20eea866..00000000 --- a/Tests/testcomm9/efica01a.comm +++ /dev/null @@ -1,275 +0,0 @@ -# MODIF DATE 20/09/2004 AUTEUR DURAND C.DURAND -# TITRE TEST DE NON REGRESSION DE L IHM EFICAS - DERIVE DE SDND102A -# CONFIGURATION MANAGEMENT OF EDF VERSION -# ====================================================================== -# COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# Ce cas test est gere en configuration dans la base ASTER, il sert de -# modele pour prononcer la recette de l IHM d EFICAS : l objectif est de -# pouvoir recreer ce test a l identique dans EFICAS a partir d une page -# blanche. -# On a donc essaye d y placer toutes les commandes un peu particulieres -# du langage de commandes d ASTER -# -# Il s agit en fait du test SDND102A auquel on a ajoute : -# la definition d un parametre (VAL) -# l inclusion d un fichier (INCLUDE) -# une poursuite (POURSUITE) -# Il contient ainsi : -# des parametres, des formules, des macros, des mots cles facteurs repetes -# (y compris conditionnes par des regles : calc_fonction / COMB), -# des blocs (mode_iter_simult,calc_char_seisme), un defi_valeur, un parametre. -# -# -# Il faudra y associer quelques recommandations pour la recette : -# - verifier qu en ouvrant le .com0, il demande bien a browser le .comm puis, en cascade, le .11 -# - verifier qu on peut bien supprimer une commande, un mot cle simple et facteur -# - verifier les acces a la doc -# -# - - -DEBUT(CODE=_F(NOM='EFICA01A',NIV_PUB_WEB='INTERNET',VISU_EFICAS='NON'),) - -MAILLAGE=LIRE_MAILLAGE() - -MAILLAGE=DEFI_GROUP(reuse=MAILLAGE, - MAILLAGE=MAILLAGE, - CREA_GROUP_NO=(_F(NOEUD='NO2', - NOM='MASSES',), - _F(NOEUD='NO1', - NOM='ENCASTRE',),),) - -MAILLA2=LIRE_MAILLAGE(UNITE=21,) - -MODELE=AFFE_MODELE(MAILLAGE=MAILLAGE, - AFFE=(_F(GROUP_MA='RESSORT', - PHENOMENE='MECANIQUE', - MODELISATION='DIS_T',), - _F(GROUP_NO='MASSES', - PHENOMENE='MECANIQUE', - MODELISATION='DIS_T',),),) - -BICHOC=AFFE_MODELE(MAILLAGE=MAILLA2, - AFFE=(_F(GROUP_MA='RESSORTS', - PHENOMENE='MECANIQUE', - MODELISATION='DIS_T',), - _F(GROUP_NO=('MASSES1','MASSES2',), - PHENOMENE='MECANIQUE', - MODELISATION='DIS_T',),),) -VAL = 98696.0 - - -CARA_ELE=AFFE_CARA_ELEM(MODELE=MODELE, - DISCRET=(_F(GROUP_MA='RESSORT', - REPERE='GLOBAL', - CARA='K_T_D_L', - VALE=(VAL,0.0,0.0,),), - _F(GROUP_NO='MASSES', - CARA='M_T_D_N', - VALE=25.0,),),) - -CARA_BIC=AFFE_CARA_ELEM(MODELE=BICHOC, - DISCRET=(_F(GROUP_MA='RESSORTS', - REPERE='GLOBAL', - CARA='K_T_D_L', - VALE=(VAL,0.0,0.0,),), - _F(GROUP_NO='MASSES1', - CARA='M_T_D_N', - VALE=25.0,), - _F(GROUP_NO='MASSES2', - CARA='M_T_D_N', - VALE=25.0,),),) - -CON_LIM=AFFE_CHAR_MECA(MODELE=MODELE, - DDL_IMPO=(_F(GROUP_NO='ENCASTRE', - DX=0.0, - DY=0.0, - DZ=0.0,), - _F(GROUP_NO='MASSES', - DY=0.0, - DZ=0.0,),),) - -CL_BICHO=AFFE_CHAR_MECA(MODELE=BICHOC, - DDL_IMPO=(_F(GROUP_NO='ENCBICHO', - DX=0.0, - DY=0.0, - DZ=0.0,), - _F(GROUP_NO=('MASSES1','MASSES2',), - DY=0.0, - DZ=0.0,),),) - -MACRO_MATR_ASSE(MODELE=MODELE, - CARA_ELEM=CARA_ELE, - CHARGE=CON_LIM, - NUME_DDL=CO('NUMEDDL'), - MATR_ASSE=(_F(MATRICE=CO('RIGIDITE'), - OPTION='RIGI_MECA',), - _F(MATRICE=CO('MASSE'), - OPTION='MASS_MECA',),),) - -MACRO_MATR_ASSE(MODELE=BICHOC, - CARA_ELEM=CARA_BIC, - CHARGE=CL_BICHO, - NUME_DDL=CO('NUMDDLC'), - MATR_ASSE=(_F(MATRICE=CO('RIGI_BIC'), - OPTION='RIGI_MECA',), - _F(MATRICE=CO('MASS_BIC'), - OPTION='MASS_MECA',),),) - -MODE_MEC=MODE_ITER_SIMULT(MATR_A=RIGIDITE, - MATR_B=MASSE,) - -MODE_MEC=NORM_MODE(reuse =MODE_MEC, - MODE=MODE_MEC, - NORME='MASS_GENE',) - -MODE_BIC=MODE_ITER_SIMULT(MATR_A=RIGI_BIC, - MATR_B=MASS_BIC, - METHODE='JACOBI', - OPTION='SANS', - CALC_FREQ=_F(OPTION='BANDE', - FREQ=(1.0,10.0,),),) - -MODE_BIC=NORM_MODE(reuse =MODE_BIC, - MODE=MODE_BIC, - NORME='MASS_GENE',) - -MODE_STA=MODE_STATIQUE(MATR_RIGI=RIGIDITE, - MATR_MASS=MASSE, - MODE_STAT=_F(TOUT='OUI', - AVEC_CMP='DX',),) - -MSTA_BIC=MODE_STATIQUE(MATR_RIGI=RIGI_BIC, - MATR_MASS=MASS_BIC, - MODE_STAT=_F(TOUT='OUI', - AVEC_CMP='DX',),) - -L_INST=DEFI_LIST_REEL(DEBUT=0.0, - INTERVALLE=_F(JUSQU_A=1.0, - PAS=1.E-4,),) - -OMEGAA=2.*pi*10. - -ACCE1 = FORMULE(VALE = 'sin(OMEGAA*INST)', - NOM_PARA='INST') - -ACCELER1=CALC_FONC_INTERP(FONCTION=ACCE1, - NOM_RESU='ACCE', - LIST_PARA=L_INST, - NOM_PARA = 'INST', - PROL_DROITE='LINEAIRE', - PROL_GAUCHE='LINEAIRE',) - -ACCE2 = FORMULE(VALE = '-sin(OMEGAA*INST)', - NOM_PARA='INST') - -ACCELER2=CALC_FONC_INTERP(FONCTION=ACCE2, - NOM_RESU='ACCE', - LIST_PARA=L_INST, - NOM_PARA = 'INST', - PROL_DROITE='LINEAIRE', - PROL_GAUCHE='LINEAIRE',) - -VITE1 = FORMULE(VALE = '-cos(OMEGAA*INST)/OMEGAA', - NOM_PARA='INST') - -VITESSE1=CALC_FONC_INTERP(FONCTION=VITE1, - NOM_RESU='VITE', - LIST_PARA=L_INST, - NOM_PARA = 'INST', - PROL_DROITE='LINEAIRE', - PROL_GAUCHE='LINEAIRE',) - -DEPL1 = FORMULE(VALE = '-sin(OMEGAA*INST)/(OMEGAA**2)', - NOM_PARA='INST') - -DEPLACE1=CALC_FONC_INTERP(FONCTION=DEPL1, - NOM_RESU='DEPL', - LIST_PARA=L_INST, - NOM_PARA = 'INST', - PROL_DROITE='LINEAIRE', - PROL_GAUCHE='LINEAIRE',) - -VITE2 = FORMULE(VALE = 'cos(OMEGAA*INST)/OMEGAA', - NOM_PARA='INST') - -VITESSE2=CALC_FONC_INTERP(FONCTION=VITE2, - NOM_RESU='VITE', - LIST_PARA=L_INST, - NOM_PARA = 'INST', - PROL_DROITE='LINEAIRE', - PROL_GAUCHE='LINEAIRE',) - -xx=2 - -INCLUDE(UNITE=11, - INFO=1,) - -MUR=DEFI_OBSTACLE(TYPE='PLAN_Z',) - -TRAN_GE1=DYNA_TRAN_MODAL(METHODE='EULER', - MASS_GENE=MASS_GEN, - RIGI_GENE=RIGI_GEN, - AMOR_REDUIT=0.07, - MODE_STAT=MODE_STA, - INCREMENT=_F(INST_INIT=0.0, - INST_FIN=1.0, - PAS=2.0E-4,), - ARCHIVAGE=_F(PAS_ARCH=8,), - EXCIT=_F(VECT_GENE=VECT_X, - ACCE=ACCELER1, - VITE=VITESSE1, - DEPL=DEPLACE1, - MULT_APPUI='OUI', - DIRECTION=(1.0,0.0,0.0,), - NOEUD='NO1',), - CHOC=_F(INTITULE='NO2/MUR', - GROUP_NO_1='MASSES', - OBSTACLE=MUR, - ORIG_OBST=(-1.0,0.0,0.0,), - NORM_OBST=(0.0,0.0,1.0,), - JEU=1.1005, - RIGI_NOR=5.76E7, - AMOR_NOR=0.0, - RIGI_TAN=0.0, - COULOMB=0.0,),) - -MULT_X1=CALC_CHAR_SEISME(MATR_MASS=MASS_BIC, - DIRECTION=(1.0,0.0,0.0,), - MODE_STAT=MSTA_BIC, - NOEUD='NO1',) - -MULT_X2=CALC_CHAR_SEISME(MATR_MASS=MASS_BIC, - DIRECTION=(1.0,0.0,0.0,), - MODE_STAT=MSTA_BIC, - NOEUD='NO11',) - -MACRO_PROJ_BASE(BASE=MODE_BIC, - MATR_ASSE_GENE=(_F(MATRICE=CO('MGEN_BIC'), - MATR_ASSE=MASS_BIC,), - _F(MATRICE=CO('RGEN_BIC'), - MATR_ASSE=RIGI_BIC,),), - VECT_ASSE_GENE=(_F(VECTEUR=CO('VECT_X1'), - VECT_ASSE=MULT_X1,), - _F(VECTEUR=CO('VECT_X2'), - VECT_ASSE=MULT_X2,),),) - -GRILLE=DEFI_OBSTACLE(TYPE='BI_PLAN_Z',) - -MAILLA3=LIRE_MAILLAGE(UNITE=22,) - -FIN() diff --git a/Tests/testcomm9/efica01b.11 b/Tests/testcomm9/efica01b.11 deleted file mode 100644 index bec37b5b..00000000 --- a/Tests/testcomm9/efica01b.11 +++ /dev/null @@ -1,19 +0,0 @@ -DEPL2 = FORMULE(NOM_PARA='INST',VALE='sin(OMEGAA*INST)/(OMEGAA**xx)') -DEPLACE2=CALC_FONC_INTERP( FONCTION=DEPL2, - LIST_PARA=L_INST, - NOM_PARA='INST', - PROL_DROITE='LINEAIRE', - PROL_GAUCHE='LINEAIRE', - NOM_RESU='DEPL' ) - -MONO_X=CALC_CHAR_SEISME( MATR_MASS=MASSE, - DIRECTION=( 1., 0., 0.,), - MONO_APPUI='OUI' ) - - -MACRO_PROJ_BASE(BASE=MODE_MEC,MATR_ASSE_GENE=( - _F( MATRICE = CO("MASS_GEN"), MATR_ASSE = MASSE), - _F( MATRICE = CO("RIGI_GEN"), MATR_ASSE = RIGIDITE)), - VECT_ASSE_GENE=_F( VECTEUR = CO("VECT_X"), VECT_ASSE = MONO_X) - ) - diff --git a/Tests/testcomm9/efica01b.comm b/Tests/testcomm9/efica01b.comm deleted file mode 100755 index 20eea866..00000000 --- a/Tests/testcomm9/efica01b.comm +++ /dev/null @@ -1,275 +0,0 @@ -# MODIF DATE 20/09/2004 AUTEUR DURAND C.DURAND -# TITRE TEST DE NON REGRESSION DE L IHM EFICAS - DERIVE DE SDND102A -# CONFIGURATION MANAGEMENT OF EDF VERSION -# ====================================================================== -# COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# Ce cas test est gere en configuration dans la base ASTER, il sert de -# modele pour prononcer la recette de l IHM d EFICAS : l objectif est de -# pouvoir recreer ce test a l identique dans EFICAS a partir d une page -# blanche. -# On a donc essaye d y placer toutes les commandes un peu particulieres -# du langage de commandes d ASTER -# -# Il s agit en fait du test SDND102A auquel on a ajoute : -# la definition d un parametre (VAL) -# l inclusion d un fichier (INCLUDE) -# une poursuite (POURSUITE) -# Il contient ainsi : -# des parametres, des formules, des macros, des mots cles facteurs repetes -# (y compris conditionnes par des regles : calc_fonction / COMB), -# des blocs (mode_iter_simult,calc_char_seisme), un defi_valeur, un parametre. -# -# -# Il faudra y associer quelques recommandations pour la recette : -# - verifier qu en ouvrant le .com0, il demande bien a browser le .comm puis, en cascade, le .11 -# - verifier qu on peut bien supprimer une commande, un mot cle simple et facteur -# - verifier les acces a la doc -# -# - - -DEBUT(CODE=_F(NOM='EFICA01A',NIV_PUB_WEB='INTERNET',VISU_EFICAS='NON'),) - -MAILLAGE=LIRE_MAILLAGE() - -MAILLAGE=DEFI_GROUP(reuse=MAILLAGE, - MAILLAGE=MAILLAGE, - CREA_GROUP_NO=(_F(NOEUD='NO2', - NOM='MASSES',), - _F(NOEUD='NO1', - NOM='ENCASTRE',),),) - -MAILLA2=LIRE_MAILLAGE(UNITE=21,) - -MODELE=AFFE_MODELE(MAILLAGE=MAILLAGE, - AFFE=(_F(GROUP_MA='RESSORT', - PHENOMENE='MECANIQUE', - MODELISATION='DIS_T',), - _F(GROUP_NO='MASSES', - PHENOMENE='MECANIQUE', - MODELISATION='DIS_T',),),) - -BICHOC=AFFE_MODELE(MAILLAGE=MAILLA2, - AFFE=(_F(GROUP_MA='RESSORTS', - PHENOMENE='MECANIQUE', - MODELISATION='DIS_T',), - _F(GROUP_NO=('MASSES1','MASSES2',), - PHENOMENE='MECANIQUE', - MODELISATION='DIS_T',),),) -VAL = 98696.0 - - -CARA_ELE=AFFE_CARA_ELEM(MODELE=MODELE, - DISCRET=(_F(GROUP_MA='RESSORT', - REPERE='GLOBAL', - CARA='K_T_D_L', - VALE=(VAL,0.0,0.0,),), - _F(GROUP_NO='MASSES', - CARA='M_T_D_N', - VALE=25.0,),),) - -CARA_BIC=AFFE_CARA_ELEM(MODELE=BICHOC, - DISCRET=(_F(GROUP_MA='RESSORTS', - REPERE='GLOBAL', - CARA='K_T_D_L', - VALE=(VAL,0.0,0.0,),), - _F(GROUP_NO='MASSES1', - CARA='M_T_D_N', - VALE=25.0,), - _F(GROUP_NO='MASSES2', - CARA='M_T_D_N', - VALE=25.0,),),) - -CON_LIM=AFFE_CHAR_MECA(MODELE=MODELE, - DDL_IMPO=(_F(GROUP_NO='ENCASTRE', - DX=0.0, - DY=0.0, - DZ=0.0,), - _F(GROUP_NO='MASSES', - DY=0.0, - DZ=0.0,),),) - -CL_BICHO=AFFE_CHAR_MECA(MODELE=BICHOC, - DDL_IMPO=(_F(GROUP_NO='ENCBICHO', - DX=0.0, - DY=0.0, - DZ=0.0,), - _F(GROUP_NO=('MASSES1','MASSES2',), - DY=0.0, - DZ=0.0,),),) - -MACRO_MATR_ASSE(MODELE=MODELE, - CARA_ELEM=CARA_ELE, - CHARGE=CON_LIM, - NUME_DDL=CO('NUMEDDL'), - MATR_ASSE=(_F(MATRICE=CO('RIGIDITE'), - OPTION='RIGI_MECA',), - _F(MATRICE=CO('MASSE'), - OPTION='MASS_MECA',),),) - -MACRO_MATR_ASSE(MODELE=BICHOC, - CARA_ELEM=CARA_BIC, - CHARGE=CL_BICHO, - NUME_DDL=CO('NUMDDLC'), - MATR_ASSE=(_F(MATRICE=CO('RIGI_BIC'), - OPTION='RIGI_MECA',), - _F(MATRICE=CO('MASS_BIC'), - OPTION='MASS_MECA',),),) - -MODE_MEC=MODE_ITER_SIMULT(MATR_A=RIGIDITE, - MATR_B=MASSE,) - -MODE_MEC=NORM_MODE(reuse =MODE_MEC, - MODE=MODE_MEC, - NORME='MASS_GENE',) - -MODE_BIC=MODE_ITER_SIMULT(MATR_A=RIGI_BIC, - MATR_B=MASS_BIC, - METHODE='JACOBI', - OPTION='SANS', - CALC_FREQ=_F(OPTION='BANDE', - FREQ=(1.0,10.0,),),) - -MODE_BIC=NORM_MODE(reuse =MODE_BIC, - MODE=MODE_BIC, - NORME='MASS_GENE',) - -MODE_STA=MODE_STATIQUE(MATR_RIGI=RIGIDITE, - MATR_MASS=MASSE, - MODE_STAT=_F(TOUT='OUI', - AVEC_CMP='DX',),) - -MSTA_BIC=MODE_STATIQUE(MATR_RIGI=RIGI_BIC, - MATR_MASS=MASS_BIC, - MODE_STAT=_F(TOUT='OUI', - AVEC_CMP='DX',),) - -L_INST=DEFI_LIST_REEL(DEBUT=0.0, - INTERVALLE=_F(JUSQU_A=1.0, - PAS=1.E-4,),) - -OMEGAA=2.*pi*10. - -ACCE1 = FORMULE(VALE = 'sin(OMEGAA*INST)', - NOM_PARA='INST') - -ACCELER1=CALC_FONC_INTERP(FONCTION=ACCE1, - NOM_RESU='ACCE', - LIST_PARA=L_INST, - NOM_PARA = 'INST', - PROL_DROITE='LINEAIRE', - PROL_GAUCHE='LINEAIRE',) - -ACCE2 = FORMULE(VALE = '-sin(OMEGAA*INST)', - NOM_PARA='INST') - -ACCELER2=CALC_FONC_INTERP(FONCTION=ACCE2, - NOM_RESU='ACCE', - LIST_PARA=L_INST, - NOM_PARA = 'INST', - PROL_DROITE='LINEAIRE', - PROL_GAUCHE='LINEAIRE',) - -VITE1 = FORMULE(VALE = '-cos(OMEGAA*INST)/OMEGAA', - NOM_PARA='INST') - -VITESSE1=CALC_FONC_INTERP(FONCTION=VITE1, - NOM_RESU='VITE', - LIST_PARA=L_INST, - NOM_PARA = 'INST', - PROL_DROITE='LINEAIRE', - PROL_GAUCHE='LINEAIRE',) - -DEPL1 = FORMULE(VALE = '-sin(OMEGAA*INST)/(OMEGAA**2)', - NOM_PARA='INST') - -DEPLACE1=CALC_FONC_INTERP(FONCTION=DEPL1, - NOM_RESU='DEPL', - LIST_PARA=L_INST, - NOM_PARA = 'INST', - PROL_DROITE='LINEAIRE', - PROL_GAUCHE='LINEAIRE',) - -VITE2 = FORMULE(VALE = 'cos(OMEGAA*INST)/OMEGAA', - NOM_PARA='INST') - -VITESSE2=CALC_FONC_INTERP(FONCTION=VITE2, - NOM_RESU='VITE', - LIST_PARA=L_INST, - NOM_PARA = 'INST', - PROL_DROITE='LINEAIRE', - PROL_GAUCHE='LINEAIRE',) - -xx=2 - -INCLUDE(UNITE=11, - INFO=1,) - -MUR=DEFI_OBSTACLE(TYPE='PLAN_Z',) - -TRAN_GE1=DYNA_TRAN_MODAL(METHODE='EULER', - MASS_GENE=MASS_GEN, - RIGI_GENE=RIGI_GEN, - AMOR_REDUIT=0.07, - MODE_STAT=MODE_STA, - INCREMENT=_F(INST_INIT=0.0, - INST_FIN=1.0, - PAS=2.0E-4,), - ARCHIVAGE=_F(PAS_ARCH=8,), - EXCIT=_F(VECT_GENE=VECT_X, - ACCE=ACCELER1, - VITE=VITESSE1, - DEPL=DEPLACE1, - MULT_APPUI='OUI', - DIRECTION=(1.0,0.0,0.0,), - NOEUD='NO1',), - CHOC=_F(INTITULE='NO2/MUR', - GROUP_NO_1='MASSES', - OBSTACLE=MUR, - ORIG_OBST=(-1.0,0.0,0.0,), - NORM_OBST=(0.0,0.0,1.0,), - JEU=1.1005, - RIGI_NOR=5.76E7, - AMOR_NOR=0.0, - RIGI_TAN=0.0, - COULOMB=0.0,),) - -MULT_X1=CALC_CHAR_SEISME(MATR_MASS=MASS_BIC, - DIRECTION=(1.0,0.0,0.0,), - MODE_STAT=MSTA_BIC, - NOEUD='NO1',) - -MULT_X2=CALC_CHAR_SEISME(MATR_MASS=MASS_BIC, - DIRECTION=(1.0,0.0,0.0,), - MODE_STAT=MSTA_BIC, - NOEUD='NO11',) - -MACRO_PROJ_BASE(BASE=MODE_BIC, - MATR_ASSE_GENE=(_F(MATRICE=CO('MGEN_BIC'), - MATR_ASSE=MASS_BIC,), - _F(MATRICE=CO('RGEN_BIC'), - MATR_ASSE=RIGI_BIC,),), - VECT_ASSE_GENE=(_F(VECTEUR=CO('VECT_X1'), - VECT_ASSE=MULT_X1,), - _F(VECTEUR=CO('VECT_X2'), - VECT_ASSE=MULT_X2,),),) - -GRILLE=DEFI_OBSTACLE(TYPE='BI_PLAN_Z',) - -MAILLA3=LIRE_MAILLAGE(UNITE=22,) - -FIN() diff --git a/Tests/testcomm9/f.comm b/Tests/testcomm9/f.comm deleted file mode 100644 index d15a6179..00000000 --- a/Tests/testcomm9/f.comm +++ /dev/null @@ -1,18 +0,0 @@ -from Numeric import size - -DEBUT() - -# Definition des parametres de l'excitation sinusoidale -freq=1500.0 -periode=1.0/freq -pas=periode/100.0 - -LISTTM=DEFI_LIST_REEL(DEBUT=0.0*periode, - INTERVALLE=_F(JUSQU_A=100.0*periode, - PAS=pas,),); - -LISTRD=DEFI_LIST_REEL(DEBUT=(98.0)*periode+pas, - INTERVALLE=_F(JUSQU_A=(100.0)*periode, - PAS=pas,),); - -FIN() diff --git a/Tests/testcomm9/forma12c.22 b/Tests/testcomm9/forma12c.22 deleted file mode 100755 index 1452b8f2..00000000 --- a/Tests/testcomm9/forma12c.22 +++ /dev/null @@ -1,5616 +0,0 @@ -ACCELH1=DEFI_FONCTION(NOM_PARA='INST', - VALE= - ( - 0.0 , 0.0 , - 5.000000000000000E-03 , 1.384945820672120E-02 , - 1.000000000000000E-02 , 1.382919843991470E-02 , - 1.500000000000000E-02 , 1.382973754982250E-02 , - 2.000000000000000E-02 , 1.383338152282280E-02 , - 2.500000000000000E-02 , 1.393648950771420E-02 , - 3.000000000000000E-02 , 1.434779984741860E-02 , - 3.500000000000000E-02 , 1.512950713231800E-02 , - 4.000000000000000E-02 , 1.614535272002630E-02 , - 4.500000000000000E-02 , 1.731995083544010E-02 , - 5.000000000000000E-02 , 1.859624623558040E-02 , - 5.500000000000000E-02 , 1.953967672923960E-02 , - 6.000000000000000E-02 , 1.941781110418540E-02 , - 6.500000000000000E-02 , 1.786343830924350E-02 , - 7.000000000000001E-02 , 1.516191250319950E-02 , - 7.500000000000000E-02 , 1.188464893531830E-02 , - 8.000000000000000E-02 , 8.604671706807470E-03 , - 8.500000000000001E-02 , 5.843238016204390E-03 , - 9.000000000000000E-02 , 3.844393537029640E-03 , - 9.500000000000000E-02 , 2.578831760615030E-03 , - 0.1 , 2.285337760842440E-03 , - 0.105 , 3.429647164261850E-03 , - 0.11 , 5.693975593542530E-03 , - 0.115 , 8.059677068797949E-03 , - 0.12 , 1.074690536157120E-02 , - 0.125 , 1.570430547663250E-02 , - 0.13 , 2.370085802024690E-02 , - 0.135 , 3.228248728765840E-02 , - 0.14 , 3.854420890726100E-02 , - 0.145 , 4.255105840524570E-02 , - 0.15 , 4.542487497977820E-02 , - 0.155 , 4.522394778102340E-02 , - 0.16 , 3.829095514459380E-02 , - 0.165 , 2.483633029107950E-02 , - 0.17 , 9.962011825963081E-03 , - 0.175 , -1.690338763720670E-03 , - 0.18 , -9.628765294085771E-03 , - 0.185 , -1.491533457160890E-02 , - 0.19 , -1.675574249783150E-02 , - 0.195 , -1.397302390604700E-02 , - 0.2 , -8.394257392452909E-03 , - 0.205 , -4.066198655663860E-03 , - 0.21 , -2.824511823738000E-03 , - 0.215 , -2.617183840945080E-03 , - 0.22 , -1.417346427510000E-03 , - 0.225 , -1.143002215953450E-03 , - 0.23 , -5.114862179520550E-03 , - 0.235 , -1.257393226409120E-02 , - 0.24 , -2.009825306788950E-02 , - 0.245 , -2.922606396367100E-02 , - 0.25 , -4.681398923377460E-02 , - 0.255 , -7.440515051138789E-02 , - 0.26 , -0.10334790104033 , - 0.265 , -0.12586697159281 , - 0.27 , -0.14387794464775 , - 0.275 , -0.15814759425273 , - 0.28 , -0.15645166862504 , - 0.285 , -0.12686021613717 , - 0.29 , -7.870738657620450E-02 , - 0.295 , -3.337529798013800E-02 , - 0.3 , 4.960493246599410E-03 , - 0.305 , 5.045559596258160E-02 , - 0.31 , 0.105226085321393 , - 0.315 , 0.149377859842677 , - 0.32 , 0.169404090056596 , - 0.325 , 0.175768658339062 , - 0.33 , 0.179795570216475 , - 0.335 , 0.172362231098084 , - 0.34 , 0.14178782193451 , - 0.345 , 9.600009720172401E-02 , - 0.35 , 4.821844915823450E-02 , - 0.355 , -4.337533256019430E-03 , - 0.36 , -6.584719156367530E-02 , - 0.365 , -0.11836425870338 , - 0.37 , -0.13733576068719 , - 0.375 , -0.12352979806305 , - 0.38 , -9.647458189678811E-02 , - 0.385 , -6.215705630868780E-02 , - 0.39 , -1.230416228554950E-02 , - 0.395 , 4.641921735700460E-02 , - 0.4 , 8.859572962085120E-02 , - 0.405 , 9.988862929152570E-02 , - 0.41 , 9.014811266775360E-02 , - 0.415 , 7.203047941527541E-02 , - 0.42 , 4.502398610270280E-02 , - 0.425 , 6.797639622722420E-03 , - 0.43 , -3.515202910758360E-02 , - 0.435 , -7.008994299356780E-02 , - 0.44 , -9.184195885494270E-02 , - 0.445 , -9.764578216442391E-02 , - 0.45 , -8.980199943709211E-02 , - 0.455 , -7.844678621890611E-02 , - 0.46 , -7.092648374585479E-02 , - 0.465 , -5.916134617989510E-02 , - 0.47 , -2.956966177372460E-02 , - 0.475 , 1.671374368998170E-02 , - 0.48 , 6.681414337976969E-02 , - 0.485 , 0.115921896874314 , - 0.49 , 0.168522035427266 , - 0.495 , 0.222448388891968 , - 0.5 , 0.268501345352512 , - 0.505 , 0.304492502191568 , - 0.51 , 0.333201521434027 , - 0.515 , 0.348912055073103 , - 0.52 , 0.344336194210705 , - 0.525 , 0.328357457992693 , - 0.53 , 0.315639958020935 , - 0.535 , 0.298753776631336 , - 0.54 , 0.252828404979867 , - 0.545 , 0.169993172714936 , - 0.55 , 6.727059721322880E-02 , - 0.555 , -4.209915010595060E-02 , - 0.56 , -0.16027870746769 , - 0.565 , -0.28051898189652 , - 0.57 , -0.37473468426368 , - 0.575 , -0.41761046311846 , - 0.58 , -0.40704487960185 , - 0.585 , -0.35317881167887 , - 0.59 , -0.26473865427636 , - 0.595 , -0.15439054042026 , - 0.6 , -4.069603171914010E-02 , - 0.605 , 6.408493301865420E-02 , - 0.61 , 0.155029022019142 , - 0.615 , 0.221244653075603 , - 0.62 , 0.250448298949297 , - 0.625 , 0.2498283906321 , - 0.63 , 0.239493456134941 , - 0.635 , 0.218886088833644 , - 0.64 , 0.164337222785859 , - 0.645 , 7.035013146739150E-02 , - 0.65 , -3.065825126167990E-02 , - 0.655 , -0.10313193025801 , - 0.66 , -0.14127712726139 , - 0.665 , -0.15425776005121 , - 0.67 , -0.14167316851909 , - 0.675 , -0.10137097186279 , - 0.68 , -4.328536800004760E-02 , - 0.685 , 2.048801937177380E-02 , - 0.69 , 8.302000641121640E-02 , - 0.695 , 0.129331142992423 , - 0.7 , 0.139601455006784 , - 0.705 , 0.121227983591054 , - 0.71 , 0.113005236382458 , - 0.715 , 0.1379818615802 , - 0.72 , 0.176308826146499 , - 0.725 , 0.205232483015008 , - 0.73 , 0.236700670002903 , - 0.735 , 0.28518726999873 , - 0.74 , 0.325155532319882 , - 0.745 , 0.319888795846513 , - 0.75 , 0.275055725375209 , - 0.755 , 0.223753796143942 , - 0.76 , 0.172075077677344 , - 0.765 , 0.102710116433296 , - 0.77 , 2.458158105150330E-02 , - 0.775 , -2.772090362464080E-02 , - 0.78 , -4.579263759539020E-02 , - 0.785 , -5.563702283874560E-02 , - 0.79 , -6.754184615076410E-02 , - 0.795 , -5.871706032442020E-02 , - 0.8 , -1.692509300464670E-02 , - 0.805 , 3.809918865159700E-02 , - 0.81 , 9.363878798804159E-02 , - 0.815 , 0.168712355371222 , - 0.82 , 0.278043767236916 , - 0.825 , 0.400260018759297 , - 0.83 , 0.503549901131272 , - 0.835 , 0.576593704222666 , - 0.84 , 0.611464547720466 , - 0.845 , 0.581774928421811 , - 0.85 , 0.466685485187298 , - 0.855 , 0.279469592461024 , - 0.86 , 4.649599505060000E-02 , - 0.865 , -0.22611474655397 , - 0.87 , -0.53742100922433 , - 0.875 , -0.85597468112981 , - 0.88 , -1.12858445463436 , - 0.885 , -1.31964097839003 , - 0.89 , -1.41810357733099 , - 0.895 , -1.4129005458435 , - 0.9 , -1.29047173798494 , - 0.905 , -1.05919909208997 , - 0.91 , -0.75411881989804 , - 0.915 , -0.41406737678731 , - 0.92 , -7.194360976911091E-02 , - 0.925 , 0.232932654611786 , - 0.93 , 0.457448784206965 , - 0.935 , 0.581369260987795 , - 0.94 , 0.617884772522987 , - 0.945 , 0.588638581913632 , - 0.95 , 0.499594354895777 , - 0.955 , 0.351854051263097 , - 0.96 , 0.167285288529307 , - 0.965 , -1.354817972678980E-02 , - 0.97 , -0.16506107206104 , - 0.975 , -0.30020976135865 , - 0.98 , -0.44800006523462 , - 0.985 , -0.60571664044792 , - 0.99 , -0.72882650966723 , - 0.995 , -0.78150351703968 , - 1.0 , -0.78325351768449 , - 1.005 , -0.7804638307994 , - 1.01 , -0.77907901470961 , - 1.015 , -0.74044922924701 , - 1.02 , -0.64794816611668 , - 1.025 , -0.53653982368824 , - 1.03 , -0.43590944296704 , - 1.035 , -0.32196595199848 , - 1.04 , -0.15803623495676 , - 1.045 , 4.418314484939760E-02 , - 1.05 , 0.242865235492215 , - 1.055 , 0.422391619487335 , - 1.06 , 0.586878740356939 , - 1.065 , 0.710461681206935 , - 1.07 , 0.741340861669433 , - 1.075 , 0.655713664787049 , - 1.08 , 0.470616913700976 , - 1.085 , 0.20656145315631 , - 1.09 , -0.12112308548803 , - 1.095 , -0.47118919290136 , - 1.1 , -0.77786799146278 , - 1.105 , -0.99394827732625 , - 1.11 , -1.10304473601585 , - 1.115 , -1.08949447190265 , - 1.12 , -0.93583496154967 , - 1.125 , -0.65727377808015 , - 1.13 , -0.30107834922153 , - 1.135 , 9.620828359443580E-02 , - 1.14 , 0.514013416080853 , - 1.145 , 0.90642132985077 , - 1.15 , 1.20374217441116 , - 1.155 , 1.37257710404611 , - 1.16 , 1.43303286111545 , - 1.165 , 1.40075730037501 , - 1.17 , 1.25846296855354 , - 1.175 , 1.00832137286648 , - 1.18 , 0.706462116642059 , - 1.185 , 0.413493607411118 , - 1.19 , 0.148293682071222 , - 1.195 , -8.190792579850280E-02 , - 1.2 , -0.25000976533114 , - 1.205 , -0.34497838239222 , - 1.21 , -0.39991632301279 , - 1.215 , -0.44361527764964 , - 1.22 , -0.45948891812011 , - 1.225 , -0.43276591909851 , - 1.23 , -0.39819165775721 , - 1.235 , -0.38929817650006 , - 1.24 , -0.37545880341991 , - 1.245 , -0.30998449197619 , - 1.25 , -0.21624700688801 , - 1.255 , -0.16343645166853 , - 1.26 , -0.17391443905321 , - 1.265 , -0.21919282258219 , - 1.27 , -0.29688345097037 , - 1.275 , -0.43984931085551 , - 1.28 , -0.64071500818847 , - 1.285 , -0.82875858278133 , - 1.29 , -0.93796346189032 , - 1.295 , -0.949512523725 , - 1.3 , -0.857601537535 , - 1.305 , -0.65014691427727 , - 1.31 , -0.34930571456794 , - 1.315 , -2.752743937664530E-02 , - 1.32 , 0.246332435481473 , - 1.325 , 0.45001279080827 , - 1.33 , 0.58297681321004 , - 1.335 , 0.636158064092188 , - 1.34 , 0.611598530544366 , - 1.345 , 0.543575003876384 , - 1.35 , 0.472132760127251 , - 1.355 , 0.4099056501601 , - 1.36 , 0.349344621324927 , - 1.365 , 0.282806527352702 , - 1.37 , 0.200676817565078 , - 1.375 , 9.097626989587490E-02 , - 1.38 , -3.844874520206900E-02 , - 1.385 , -0.1485730750104 , - 1.39 , -0.19431957586841 , - 1.395 , -0.15348271845224 , - 1.4 , -2.614043201034680E-02 , - 1.405 , 0.177537986918302 , - 1.41 , 0.435115227256899 , - 1.415 , 0.705841641151383 , - 1.42 , 0.939450691097474 , - 1.425 , 1.09606995057385 , - 1.43 , 1.16508829271638 , - 1.435 , 1.17152904343664 , - 1.44 , 1.15677325221222 , - 1.445 , 1.14474618562157 , - 1.45 , 1.13563604509728 , - 1.455 , 1.136131797716 , - 1.46 , 1.17059034109195 , - 1.465 , 1.24349566378999 , - 1.47 , 1.31555125128714 , - 1.475 , 1.34451073520553 , - 1.48 , 1.32767985662737 , - 1.485 , 1.27338631745007 , - 1.49 , 1.15790168079473 , - 1.495 , 0.956521791996786 , - 1.5 , 0.698290997947875 , - 1.505 , 0.438367846650034 , - 1.51 , 0.189519144568428 , - 1.515 , -6.309865148517370E-02 , - 1.52 , -0.2907946493572 , - 1.525 , -0.43414032419491 , - 1.53 , -0.49035140435209 , - 1.535 , -0.51769162343818 , - 1.54 , -0.53944953961898 , - 1.545 , -0.51762829963883 , - 1.55 , -0.44905875024602 , - 1.555 , -0.41047655284131 , - 1.56 , -0.45801991852189 , - 1.565 , -0.5452728301642 , - 1.57 , -0.60180223196739 , - 1.575 , -0.64090769354799 , - 1.58 , -0.71776674993069 , - 1.585 , -0.81770575898523 , - 1.59 , -0.86693741584294 , - 1.595 , -0.84067997754846 , - 1.6 , -0.78353488744314 , - 1.605 , -0.71744286940014 , - 1.61 , -0.59774454986713 , - 1.615 , -0.38171240617319 , - 1.62 , -8.924731070437070E-02 , - 1.625 , 0.229074480135456 , - 1.63 , 0.542610098773165 , - 1.635 , 0.829628497520742 , - 1.64 , 1.04494574127203 , - 1.645 , 1.13156269562082 , - 1.65 , 1.05624249517991 , - 1.655 , 0.819935992458342 , - 1.66 , 0.449565343322086 , - 1.665 , -2.180707598866940E-03 , - 1.67 , -0.46040931126981 , - 1.675 , -0.85138688793934 , - 1.68 , -1.12388943755807 , - 1.685 , -1.24657385888904 , - 1.69 , -1.20179685962043 , - 1.695 , -0.99981038351547 , - 1.7 , -0.69163368557204 , - 1.705 , -0.34742052586021 , - 1.71 , -1.646326697056420E-02 , - 1.715 , 0.283945578116849 , - 1.72 , 0.543028107021654 , - 1.725 , 0.737133979583192 , - 1.73 , 0.84487160610996 , - 1.735 , 0.870212972351319 , - 1.74 , 0.834700198404195 , - 1.745 , 0.747170431789498 , - 1.75 , 0.594410232927394 , - 1.755 , 0.367486332109475 , - 1.76 , 8.962182967477010E-02 , - 1.765 , -0.1883067260291 , - 1.77 , -0.41613375697166 , - 1.775 , -0.56543072263443 , - 1.78 , -0.62930681455469 , - 1.785 , -0.60967253780204 , - 1.79 , -0.50702726496872 , - 1.795 , -0.32533912503295 , - 1.8 , -9.026946700126549E-02 , - 1.805 , 0.145429511003968 , - 1.81 , 0.330819022676906 , - 1.815 , 0.45222714352563 , - 1.82 , 0.524252434401283 , - 1.825 , 0.544685292311812 , - 1.83 , 0.482635967462947 , - 1.835 , 0.323118603668567 , - 1.84 , 9.999214308770410E-02 , - 1.845 , -0.1356321129448 , - 1.85 , -0.36128518628156 , - 1.855 , -0.57322505412043 , - 1.86 , -0.74566937227067 , - 1.865 , -0.831111234663 , - 1.87 , -0.79988891088422 , - 1.875 , -0.65798317740384 , - 1.88 , -0.42968513644553 , - 1.885 , -0.14457167669537 , - 1.89 , 0.161701689894838 , - 1.895 , 0.456458659481019 , - 1.9 , 0.720641473510481 , - 1.905 , 0.93536449279502 , - 1.91 , 1.06690148982661 , - 1.915 , 1.08832474904443 , - 1.92 , 1.00876475369484 , - 1.925 , 0.854457298011041 , - 1.93 , 0.628173977645005 , - 1.935 , 0.322546940276438 , - 1.94 , -2.596888473873320E-02 , - 1.945 , -0.33525384338564 , - 1.95 , -0.5416882826646 , - 1.955 , -0.63460201942509 , - 1.96 , -0.61577036509424 , - 1.965 , -0.46445342826001 , - 1.97 , -0.17427091738081 , - 1.975 , 0.197608608481982 , - 1.98 , 0.551300717211572 , - 1.985 , 0.807313151449369 , - 1.99 , 0.929291756112952 , - 1.995 , 0.900203655372628 , - 2.0 , 0.711960914602783 , - 2.005 , 0.386125888668035 , - 2.01 , -1.664845298933290E-02 , - 2.015 , -0.42003837834356 , - 2.02 , -0.75822166854004 , - 2.025 , -0.97936810396973 , - 2.03 , -1.0426579951744 , - 2.035 , -0.93057240999803 , - 2.04 , -0.66368034717177 , - 2.045 , -0.29110991423144 , - 2.05 , 0.119136312621438 , - 2.055 , 0.505291402538494 , - 2.06 , 0.880216899892637 , - 2.065 , 1.20828770980265 , - 2.07 , 1.46849325860208 , - 2.075 , 1.67233522841001 , - 2.08 , 1.84159238892188 , - 2.085 , 1.97017314302929 , - 2.09 , 2.02820005370812 , - 2.095 , 2.00307389537606 , - 2.1 , 1.90918679712901 , - 2.105 , 1.7492164388665 , - 2.11 , 1.49601732028444 , - 2.115 , 1.13320644545655 , - 2.12 , 0.691534368057989 , - 2.125 , 0.222522846896641 , - 2.13 , -0.2568718835065 , - 2.135 , -0.73270869895797 , - 2.14 , -1.16691560085841 , - 2.145 , -1.52131308342383 , - 2.15 , -1.77830659090987 , - 2.155 , -1.94190868704924 , - 2.16 , -2.01807428134882 , - 2.165 , -2.01753841723068 , - 2.17 , -1.96550102271951 , - 2.175 , -1.88172547074643 , - 2.18 , -1.76181108149962 , - 2.185 , -1.60314470865115 , - 2.19 , -1.43287068566641 , - 2.195 , -1.27868078783724 , - 2.2 , -1.12992856906385 , - 2.205 , -0.96854903020236 , - 2.21 , -0.82469988669093 , - 2.215 , -0.75306712540506 , - 2.22 , -0.75949831264927 , - 2.225 , -0.80266627698916 , - 2.23 , -0.86825465400046 , - 2.235 , -0.98190873939491 , - 2.24 , -1.13332846537187 , - 2.245 , -1.24587809111606 , - 2.25 , -1.25403636722243 , - 2.255 , -1.16774949125882 , - 2.26 , -1.02737996901608 , - 2.265 , -0.83618584315821 , - 2.27 , -0.58078051378866 , - 2.275 , -0.28886675266917 , - 2.28 , -1.584903466322660E-02 , - 2.285 , 0.243494185775485 , - 2.29 , 0.493747779128152 , - 2.295 , 0.763367558765503 , - 2.3 , 1.04659160151311 , - 2.305 , 1.31787059651459 , - 2.31 , 1.55330513693362 , - 2.315 , 1.72708398800512 , - 2.32 , 1.80403390270411 , - 2.325 , 1.74474528448072 , - 2.33 , 1.51781565889812 , - 2.335 , 1.11765857002866 , - 2.34 , 0.582482410154426 , - 2.345 , -9.718428438488540E-03 , - 2.35 , -0.57168637020167 , - 2.355 , -1.03230607359137 , - 2.36 , -1.33718623748091 , - 2.365 , -1.44694517260007 , - 2.37 , -1.35098612723151 , - 2.375 , -1.07661964039704 , - 2.38 , -0.67815732332436 , - 2.385 , -0.22427774359532 , - 2.39 , 0.206546911873295 , - 2.395 , 0.541628296955107 , - 2.4 , 0.739725635914114 , - 2.405 , 0.792688071679571 , - 2.41 , 0.699855261818748 , - 2.415 , 0.460345996951087 , - 2.42 , 9.825062680758330E-02 , - 2.425 , -0.32686436332366 , - 2.43 , -0.75151572607261 , - 2.435 , -1.13800924040631 , - 2.44 , -1.46265919709476 , - 2.445 , -1.69312259897435 , - 2.45 , -1.79655595938503 , - 2.455 , -1.76112116582848 , - 2.46 , -1.59504402395201 , - 2.465 , -1.31375304224191 , - 2.47 , -0.94339622712974 , - 2.475 , -0.5311872307141 , - 2.48 , -0.13652655158703 , - 2.485 , 0.191652831784399 , - 2.49 , 0.427316277261529 , - 2.495 , 0.565105289247264 , - 2.5 , 0.614388715344672 , - 2.505 , 0.595214227948157 , - 2.51 , 0.537482815214678 , - 2.515 , 0.480599475426244 , - 2.52 , 0.461418219827792 , - 2.525 , 0.490351150400196 , - 2.53 , 0.544926077525614 , - 2.535 , 0.597359901626847 , - 2.54 , 0.63915145270988 , - 2.545 , 0.666359147512914 , - 2.55 , 0.659549902572926 , - 2.555 , 0.607653814797886 , - 2.56 , 0.542274304956947 , - 2.565 , 0.514978623780516 , - 2.57 , 0.542507936778163 , - 2.575 , 0.605343596447052 , - 2.58 , 0.694971250554721 , - 2.585 , 0.820564438850225 , - 2.59 , 0.964525817889196 , - 2.595 , 1.07728875105342 , - 2.6 , 1.13416623229962 , - 2.605 , 1.16046452303612 , - 2.61 , 1.18333170206295 , - 2.615 , 1.19818806982642 , - 2.62 , 1.2055342011362 , - 2.625 , 1.23921335799247 , - 2.63 , 1.32082369230339 , - 2.635 , 1.41353565810184 , - 2.64 , 1.45647248242833 , - 2.645 , 1.42296156176653 , - 2.65 , 1.31247243180803 , - 2.655 , 1.10982597617917 , - 2.66 , 0.796193729509591 , - 2.665 , 0.391525367264635 , - 2.67 , -5.039209232008630E-02 , - 2.675 , -0.48551296055089 , - 2.68 , -0.89084690987514 , - 2.685 , -1.24148991258587 , - 2.69 , -1.50817716119153 , - 2.695 , -1.67597297557138 , - 2.7 , -1.74058611919401 , - 2.705 , -1.69018703360535 , - 2.71 , -1.51441737441596 , - 2.715 , -1.22691360409733 , - 2.72 , -0.85820811206465 , - 2.725 , -0.43656402639097 , - 2.73 , -1.877591162527850E-03 , - 2.735 , 0.3722134714064 , - 2.74 , 0.604368486493566 , - 2.745 , 0.654206094948509 , - 2.75 , 0.520823349815255 , - 2.755 , 0.204565302761595 , - 2.76 , -0.24284766157643 , - 2.765 , -0.75311719985656 , - 2.77 , -1.25324781337662 , - 2.775 , -1.6520239944361 , - 2.78 , -1.91175925323649 , - 2.785 , -2.02042853839568 , - 2.79 , -1.95654753001104 , - 2.795 , -1.71189367332731 , - 2.8 , -1.33217954914393 , - 2.805 , -0.90169171320611 , - 2.81 , -0.48741397679456 , - 2.815 , -0.11957680209296 , - 2.82 , 0.208180180447444 , - 2.825 , 0.429754499753944 , - 2.83 , 0.500373556893508 , - 2.835 , 0.453923556202155 , - 2.84 , 0.356589274872127 , - 2.845 , 0.252756610751608 , - 2.85 , 0.15368816142573 , - 2.855 , 7.226479768245560E-02 , - 2.86 , 3.888968358902120E-02 , - 2.865 , 7.085947846528430E-02 , - 2.87 , 0.145649387450817 , - 2.875 , 0.221440328548596 , - 2.88 , 0.271936154319643 , - 2.885 , 0.285520971687156 , - 2.89 , 0.244558483181686 , - 2.895 , 0.131111505423643 , - 2.9 , -4.976188706858230E-02 , - 2.905 , -0.27342387270832 , - 2.91 , -0.51955671330527 , - 2.915 , -0.77083790776384 , - 2.92 , -0.9909431240431 , - 2.925 , -1.1326860598253 , - 2.93 , -1.17530215375529 , - 2.935 , -1.1315547074335 , - 2.94 , -1.01461371409468 , - 2.945 , -0.82697517656886 , - 2.95 , -0.5923950948081 , - 2.955 , -0.367250148284 , - 2.96 , -0.19748847576212 , - 2.965 , -8.287483750208639E-02 , - 2.97 , 1.205615998459890E-03 , - 2.975 , 6.700285876984650E-02 , - 2.98 , 0.142475719272639 , - 2.985 , 0.272732688275581 , - 2.99 , 0.498473860216776 , - 2.995 , 0.815246300242191 , - 3.0 , 1.17850966940332 , - 3.005 , 1.5365879707165 , - 3.01 , 1.83696246846193 , - 3.015 , 2.01683359177992 , - 3.02 , 2.02473029766593 , - 3.025 , 1.85763991176815 , - 3.03 , 1.55996114842794 , - 3.035 , 1.19160270003895 , - 3.04 , 0.817034460759104 , - 3.045 , 0.512897988315463 , - 3.05 , 0.347660769303193 , - 3.055 , 0.341161122643262 , - 3.06 , 0.460638539442427 , - 3.065 , 0.655193651694964 , - 3.07 , 0.871495085561553 , - 3.075 , 1.04025886670637 , - 3.08 , 1.0866972125822 , - 3.085 , 0.97592646156581 , - 3.09 , 0.732149789609832 , - 3.095 , 0.404350262104711 , - 3.1 , 3.450811147404410E-02 , - 3.105 , -0.3574143716153 , - 3.11 , -0.67593382755679 , - 3.115 , -0.85741138771834 , - 3.12 , -0.88812837843921 , - 3.125 , -0.79137979090702 , - 3.13 , -0.59262327029812 , - 3.135 , -0.31629865744548 , - 3.14 , -7.233283133936310E-03 , - 3.145 , 0.273183439196407 , - 3.15 , 0.478066409829062 , - 3.155 , 0.58805365224197 , - 3.16 , 0.593648649534557 , - 3.165 , 0.483000051126779 , - 3.17 , 0.254384438681656 , - 3.175 , -6.624305965878829E-02 , - 3.18 , -0.4267275966133 , - 3.185 , -0.81396009231636 , - 3.19 , -1.1955849391981 , - 3.195 , -1.53431204255614 , - 3.2 , -1.79550741772338 , - 3.205 , -1.95961471169112 , - 3.21 , -2.02193224868472 , - 3.215 , -1.98153140879109 , - 3.22 , -1.83692731893728 , - 3.225 , -1.59274123405354 , - 3.23 , -1.26186737186096 , - 3.235 , -0.85475661028155 , - 3.24 , -0.37101324608578 , - 3.245 , 0.104191797011254 , - 3.25 , 0.444402436394787 , - 3.255 , 0.80270823947836 , - 3.26 , 1.15997110726162 , - 3.265 , 1.495182836989 , - 3.27 , 1.77744468860316 , - 3.275 , 1.96545418255327 , - 3.28 , 2.0238275806165 , - 3.285 , 1.94070094966571 , - 3.29 , 1.72718398222401 , - 3.295 , 1.40473739766314 , - 3.3 , 1.00200904728279 , - 3.305 , 0.563540200278601 , - 3.31 , 0.149874332156587 , - 3.315 , -0.36080714644631 , - 3.32 , -0.78705501088032 , - 3.325 , -0.96779259671266 , - 3.33 , -0.92388383903371 , - 3.335 , -0.70129187312547 , - 3.34 , -0.37633413832281 , - 3.345 , -4.983212937679970E-02 , - 3.35 , 0.182525585093038 , - 3.355 , 0.262197946276188 , - 3.36 , 0.176793782229557 , - 3.365 , -5.176420413944920E-02 , - 3.37 , -0.37933630972585 , - 3.375 , -0.74271351288949 , - 3.38 , -1.06375084817712 , - 3.385 , -1.26478653529069 , - 3.39 , -1.29047203891782 , - 3.395 , -1.12256167350094 , - 3.4 , -0.78075489126115 , - 3.405 , -0.31359677016703 , - 3.41 , 0.21274034122224 , - 3.415 , 0.723339413347021 , - 3.42 , 1.14216320992711 , - 3.425 , 1.40285852862188 , - 3.43 , 1.46353765010519 , - 3.435 , 1.31751508169454 , - 3.44 , 0.990610982524745 , - 3.445 , 0.528518300724784 , - 3.45 , -1.201464116995880E-02 , - 3.455 , -0.56495490805526 , - 3.46 , -1.06256507808036 , - 3.465 , -1.45449004401942 , - 3.47 , -1.72216993561753 , - 3.475 , -1.87372425489139 , - 3.48 , -1.93012616321294 , - 3.485 , -1.92125770401275 , - 3.49 , -1.88683182264746 , - 3.495 , -1.86489427093378 , - 3.5 , -1.87314769209702 , - 3.505 , -1.90576881574645 , - 3.51 , -1.947112317286 , - 3.515 , -1.97949862409975 , - 3.52 , -1.97797423254897 , - 3.525 , -1.91218852417812 , - 3.53 , -1.76423764925703 , - 3.535 , -1.54024679422456 , - 3.54 , -1.25875344890035 , - 3.545 , -0.9338632056843 , - 3.55 , -0.57694094749828 , - 3.555 , -0.20814045746558 , - 3.56 , 0.146206363036127 , - 3.565 , 0.468653953534567 , - 3.57 , 0.754631835985132 , - 3.575 , 0.999185044322006 , - 3.58 , 1.18633789810153 , - 3.585 , 1.29531712809396 , - 3.59 , 1.31308664187438 , - 3.595 , 1.23731524907479 , - 3.6 , 1.07118836166498 , - 3.605 , 0.822464072088323 , - 3.61 , 0.509927368235254 , - 3.615 , 0.167608567620092 , - 3.62 , -0.16136132010127 , - 3.625 , -0.43756626339828 , - 3.63 , -0.63523583164368 , - 3.635 , -0.74542737572521 , - 3.64 , -0.7756133968174 , - 3.645 , -0.74811092815284 , - 3.65 , -0.69606885610044 , - 3.655 , -0.6565734770812 , - 3.66 , -0.66248883313473 , - 3.665 , -0.7327889886856 , - 3.67 , -0.86178796221599 , - 3.675 , -1.01484775035497 , - 3.68 , -1.13874812866412 , - 3.685 , -1.18063976569405 , - 3.69 , -1.10015331426255 , - 3.695 , -0.87258642642403 , - 3.7 , -0.49606882241743 , - 3.705 , -3.859866915145810E-03 , - 3.71 , 0.536274174652005 , - 3.715 , 1.04296495682297 , - 3.72 , 1.44309287260192 , - 3.725 , 1.67861157963259 , - 3.73 , 1.7100067792938 , - 3.735 , 1.52993945453465 , - 3.74 , 1.17332394495836 , - 3.745 , 0.705456146258253 , - 3.75 , 0.19881090381289 , - 3.755 , -0.27919234543845 , - 3.76 , -0.66960551503829 , - 3.765 , -0.93205155196248 , - 3.77 , -1.05626273217395 , - 3.775 , -1.05832450991158 , - 3.78 , -0.96616376411692 , - 3.785 , -0.81175596966687 , - 3.79 , -0.6282915868819 , - 3.795 , -0.43985996859902 , - 3.8 , -0.25160708755689 , - 3.805 , -5.670095344855360E-02 , - 3.81 , 0.149245250303935 , - 3.815 , 0.367246556878583 , - 3.82 , 0.6001728423305 , - 3.825 , 0.842651059699404 , - 3.83 , 1.06576976559939 , - 3.835 , 1.22584984073272 , - 3.84 , 1.29118905603104 , - 3.845 , 1.25131649498925 , - 3.85 , 1.10483834283469 , - 3.855 , 0.858719957928343 , - 3.86 , 0.546596899968826 , - 3.865 , 0.232913780073415 , - 3.87 , -1.178392373167330E-02 , - 3.875 , -0.13503158427521 , - 3.88 , -0.10474649816556 , - 3.885 , 8.615352677596511E-02 , - 3.89 , 0.410679548743155 , - 3.895 , 0.826698146053687 , - 3.9 , 1.26554832994177 , - 3.905 , 1.65499072160026 , - 3.91 , 1.92591491458393 , - 3.915 , 2.02174681879988 , - 3.92 , 1.91690039738994 , - 3.925 , 1.62485068724173 , - 3.93 , 1.1855690119834 , - 3.935 , 0.653037378513217 , - 3.94 , 9.668746640223920E-02 , - 3.945 , -0.4301741972333 , - 3.95 , -0.83059880381395 , - 3.955 , -1.06253651005356 , - 3.96 , -1.12343783668418 , - 3.965 , -1.02905594887957 , - 3.97 , -0.81438063696053 , - 3.975 , -0.53887343061785 , - 3.98 , -0.27199822870815 , - 3.985 , -6.791154597367660E-02 , - 3.99 , 4.530742217552380E-02 , - 3.995 , 6.262857784368379E-02 , - 4.0 , 2.441344328897610E-03 , - 4.005 , -9.190475922367920E-02 , - 4.01 , -0.16297517487801 , - 4.015 , -0.15723894800794 , - 4.02 , -3.537253515270430E-02 , - 4.025 , 0.193043922562747 , - 4.03 , 0.526357119583793 , - 4.035 , 0.929427363269694 , - 4.04 , 1.34182501632519 , - 4.045 , 1.69896106062951 , - 4.05 , 1.94147299764395 , - 4.055 , 2.02131168938189 , - 4.06 , 1.91405493567929 , - 4.065 , 1.62895808406502 , - 4.07 , 1.20381890102136 , - 4.075 , 0.692151048809337 , - 4.08 , 0.156757509395021 , - 4.085 , -0.38604102584051 , - 4.09 , -0.84133083525009 , - 4.095 , -1.156233699226 , - 4.1 , -1.33230861444598 , - 4.105 , -1.38570779035153 , - 4.11 , -1.34124970345719 , - 4.115 , -1.23546550701648 , - 4.12 , -1.10801235519435 , - 4.125 , -0.98248955079667 , - 4.13 , -0.86003296814087 , - 4.135 , -0.73178734822649 , - 4.14 , -0.59090783838188 , - 4.145 , -0.43318234968906 , - 4.15 , -0.25684880447788 , - 4.155 , -6.856986064204031E-02 , - 4.16 , 0.113175698843399 , - 4.165 , 0.263255109728613 , - 4.17 , 0.35752664561249 , - 4.175 , 0.378805103678297 , - 4.18 , 0.323547996037049 , - 4.185 , 0.206516861655614 , - 4.19 , 5.649526699216110E-02 , - 4.195 , -9.378626227851780E-02 , - 4.2 , -0.21317600878937 , - 4.205 , -0.27287940125587 , - 4.21 , -0.25114165876958 , - 4.215 , -0.14168231890677 , - 4.22 , 4.361065500048250E-02 , - 4.225 , 0.279918937448746 , - 4.23 , 0.535273378579502 , - 4.235 , 0.773588682574221 , - 4.24 , 0.958219914615338 , - 4.245 , 1.05647251768057 , - 4.25 , 1.0429998608356 , - 4.255 , 0.904048723430757 , - 4.26 , 0.64342045751792 , - 4.265 , 0.283827852947311 , - 4.27 , -0.13946358577039 , - 4.275 , -0.58422822501242 , - 4.28 , -1.00040723456331 , - 4.285 , -1.33261766567896 , - 4.29 , -1.53443838788264 , - 4.295 , -1.58333249912622 , - 4.3 , -1.48186835325815 , - 4.305 , -1.25134227914383 , - 4.31 , -0.93134131663624 , - 4.315 , -0.58023320392854 , - 4.32 , -0.263068523183 , - 4.325 , -3.234875382342560E-02 , - 4.33 , 8.104457813070970E-02 , - 4.335 , 6.646358030000100E-02 , - 4.34 , -6.520527065940920E-02 , - 4.345 , -0.27865084678943 , - 4.35 , -0.52301393304868 , - 4.355 , -0.75029273588902 , - 4.36 , -0.92586132464525 , - 4.365 , -1.02745479977821 , - 4.37 , -1.045887182644 , - 4.375 , -0.98998208526761 , - 4.38 , -0.88247620098788 , - 4.385 , -0.74513807964771 , - 4.39 , -0.589693305748 , - 4.395 , -0.4218623825717 , - 4.4 , -0.24559350524832 , - 4.405 , -5.960463612956680E-02 , - 4.41 , 0.142717207535869 , - 4.415 , 0.362879306116347 , - 4.42 , 0.588751862423607 , - 4.425 , 0.799650310566393 , - 4.43 , 0.976747652586761 , - 4.435 , 1.1062713323933 , - 4.44 , 1.17888982115871 , - 4.445 , 1.19440253536595 , - 4.45 , 1.16760308413961 , - 4.455 , 1.12503563953872 , - 4.46 , 1.09428815021162 , - 4.465 , 1.09605242115199 , - 4.47 , 1.141397648121 , - 4.475 , 1.22879693707608 , - 4.48 , 1.34085300252377 , - 4.485 , 1.44734590197994 , - 4.49 , 1.51600244532524 , - 4.495 , 1.52347176965462 , - 4.5 , 1.4600805519962 , - 4.505 , 1.32990917025988 , - 4.51 , 1.15031027736352 , - 4.515 , 0.950259774927611 , - 4.52 , 0.764000212508228 , - 4.525 , 0.620467212343643 , - 4.53 , 0.53443313966959 , - 4.535 , 0.504324479922065 , - 4.54 , 0.515518988342075 , - 4.545 , 0.5449123033391 , - 4.55 , 0.565643760216133 , - 4.555 , 0.553361701085439 , - 4.56 , 0.492730481489852 , - 4.565 , 0.380543114015636 , - 4.57 , 0.224809165664267 , - 4.575 , 4.198032082290820E-02 , - 4.58 , -0.14747370012324 , - 4.585 , -0.32583933056166 , - 4.59 , -0.48349824002692 , - 4.595 , -0.61801754775951 , - 4.6 , -0.72971208292477 , - 4.605 , -0.82083468227042 , - 4.61 , -0.89775066250987 , - 4.615 , -0.96888908984926 , - 4.62 , -1.0384220049282 , - 4.625 , -1.10412227179889 , - 4.63 , -1.16142632685637 , - 4.635 , -1.20605223114456 , - 4.64 , -1.23228150965333 , - 4.645 , -1.2330625103562 , - 4.65 , -1.20312802686153 , - 4.655 , -1.13793589958523 , - 4.66 , -1.0287141764878 , - 4.665 , -0.8641100498206 , - 4.67 , -0.63938852378214 , - 4.675 , -0.35979779312165 , - 4.68 , -3.418457890781780E-02 , - 4.685 , 0.32663500010105 , - 4.69 , 0.70029027164172 , - 4.695 , 1.04848934874391 , - 4.7 , 1.32926995685333 , - 4.705 , 1.5103149027497 , - 4.71 , 1.56674966292037 , - 4.715 , 1.47490809529175 , - 4.72 , 1.22042977817102 , - 4.725 , 0.812026061087399 , - 4.73 , 0.280340511193259 , - 4.735 , -0.25291232049697 , - 4.74 , -0.74295446485739 , - 4.745 , -1.21402870653543 , - 4.75 , -1.61401924449385 , - 4.755 , -1.89622337299338 , - 4.76 , -2.02674956179211 , - 4.765 , -1.98422913056168 , - 4.77 , -1.76288837183623 , - 4.775 , -1.38094808362694 , - 4.78 , -0.88180280078288 , - 4.785 , -0.32340693878301 , - 4.79 , 0.309775095794083 , - 4.795 , 0.96398882181726 , - 4.8 , 1.46521480566007 , - 4.805 , 1.77054065361263 , - 4.81 , 1.87515908448363 , - 4.815 , 1.80763374123846 , - 4.82 , 1.61871625340312 , - 4.825 , 1.37383254873989 , - 4.83 , 1.14323155673988 , - 4.835 , 0.984115330306988 , - 4.84 , 0.925398091665492 , - 4.845 , 0.966346779872473 , - 4.85 , 1.08319151549769 , - 4.855 , 1.23351422222229 , - 4.86 , 1.36203968864373 , - 4.865 , 1.41500821627328 , - 4.87 , 1.35632626255014 , - 4.875 , 1.17338649661648 , - 4.88 , 0.873766424591019 , - 4.885 , 0.482332773802851 , - 4.89 , 3.923546396876550E-02 , - 4.895 , -0.22463035892901 , - 4.9 , -0.44775774321397 , - 4.905 , -0.63337252960387 , - 4.91 , -0.77214474283379 , - 4.915 , -0.86139644715887 , - 4.92 , -0.90539713757332 , - 4.925 , -0.91457475953945 , - 4.93 , -0.90292943826226 , - 4.935 , -0.88570153051275 , - 4.94 , -0.87839307255918 , - 4.945 , -0.89582516241653 , - 4.95 , -0.95014576706764 , - 4.955 , -1.0485044185337 , - 4.96 , -1.1912694657772 , - 4.965 , -1.3708025639651 , - 4.97 , -1.57077187288448 , - 4.975 , -1.76663217835511 , - 4.98 , -1.92803570312605 , - 4.985 , -2.02359808191781 , - 4.99 , -2.0273751484136 , - 4.995 , -1.9250033514058 , - 5.0 , -1.71741034508892 , - 5.005 , -1.42182210128631 , - 5.01 , -1.07072647445332 , - 5.015 , -0.70800393596021 , - 5.02 , -0.38102872779966 , - 5.025 , -0.13042197488723 , - 5.03 , 3.718076749748670E-02 , - 5.035 , 0.111181074997115 , - 5.04 , 1.189110285104030E-02 , - 5.045 , -0.20207868848779 , - 5.05 , -0.44910010485315 , - 5.055 , -0.64276640560255 , - 5.06 , -0.71152270492906 , - 5.065 , -0.61247600528197 , - 5.07 , -0.33784697642092 , - 5.075 , 8.416359716705800E-02 , - 5.08 , 0.593871386434318 , - 5.085 , 1.11066790591664 , - 5.09 , 1.547857061782 , - 5.095 , 1.82798847499016 , - 5.1 , 1.89521989018272 , - 5.105 , 1.72255076224409 , - 5.11 , 1.31357650362981 , - 5.115 , 0.700681089848237 , - 5.12 , -3.944101274735180E-02 , - 5.125 , -0.57538253938727 , - 5.13 , -1.09801528037525 , - 5.135 , -1.54898464132246 , - 5.14 , -1.87419746618154 , - 5.145 , -2.02778376701628 , - 5.15 , -1.97724411607912 , - 5.155 , -1.70971194891691 , - 5.16 , -1.23638258073101 , - 5.165 , -0.59315494390597 , - 5.17 , 0.111368648891046 , - 5.175 , 0.663169389460638 , - 5.18 , 1.18144631611042 , - 5.185 , 1.60890018466206 , - 5.19 , 1.8979822410482 , - 5.195 , 2.01808652053979 , - 5.2 , 1.96085818554624 , - 5.205 , 1.74218321821589 , - 5.21 , 1.39935953655912 , - 5.215 , 0.984200755295425 , - 5.22 , 0.55469135825056 , - 5.225 , 0.166760087786826 , - 5.23 , -0.29010383111112 , - 5.235 , -0.69805571505204 , - 5.24 , -0.82852798007756 , - 5.245 , -0.70078564730017 , - 5.25 , -0.3628421318389 , - 5.255 , 7.584234896818380E-02 , - 5.26 , 0.43610921884854 , - 5.265 , 0.80338816570313 , - 5.27 , 1.14583363535399 , - 5.275 , 1.44233546379898 , - 5.28 , 1.68096745166101 , - 5.285 , 1.85664177773435 , - 5.29 , 1.96856248638458 , - 5.295 , 2.01783075579683 , - 5.3 , 2.00659270193592 , - 5.305 , 1.93938767266716 , - 5.31 , 1.82500672559004 , - 5.315 , 1.67686130322037 , - 5.32 , 1.5118566159347 , - 5.325 , 1.34860724410237 , - 5.33 , 1.20475926474899 , - 5.335 , 1.09288033252557 , - 5.34 , 1.01607186043109 , - 5.345 , 0.965585517364128 , - 5.35 , 0.921875442510843 , - 5.355 , 0.858856383267098 , - 5.36 , 0.750174073799282 , - 5.365 , 0.575950824274314 , - 5.37 , 0.328597045194569 , - 5.375 , 1.652082973209100E-02 , - 5.38 , -0.50276970745072 , - 5.385 , -1.03563631031452 , - 5.39 , -1.50490953601753 , - 5.395 , -1.84994677847168 , - 5.4 , -2.02843329407602 , - 5.405 , -2.02545789978173 , - 5.41 , -1.85714442697612 , - 5.415 , -1.56774223620682 , - 5.42 , -1.22052435654413 , - 5.425 , -0.88506969766425 , - 5.43 , -0.62375651367727 , - 5.435 , -0.47941781141452 , - 5.44 , -0.46672787176114 , - 5.445 , -0.57069258501391 , - 5.45 , -0.75256544897363 , - 5.455 , -0.95943306586182 , - 5.46 , -1.13415327472143 , - 5.465 , -1.22591171353667 , - 5.47 , -1.2008821223853 , - 5.475 , -1.04867466773548 , - 5.48 , -0.7816480899877 , - 5.485 , -0.43025221187204 , - 5.49 , -3.849293308865140E-02 , - 5.495 , 0.351248620973817 , - 5.5 , 0.678851223955433 , - 5.505 , 0.903561274568929 , - 5.51 , 1.000825087451 , - 5.515 , 0.960934560706297 , - 5.52 , 0.78992867723245 , - 5.525 , 0.511317876998132 , - 5.53 , 0.162760320816359 , - 5.535 , -0.15233717951736 , - 5.54 , -0.408210240848 , - 5.545 , -0.62888561745421 , - 5.55 , -0.79619865273995 , - 5.555 , -0.90334422649211 , - 5.56 , -0.957273231721 , - 5.565 , -0.97632112916908 , - 5.57 , -0.98529324126005 , - 5.575 , -1.01088001195299 , - 5.58 , -1.07663632540647 , - 5.585 , -1.1964450302827 , - 5.59 , -1.36885544627383 , - 5.595 , -1.57548223311668 , - 5.6 , -1.78343920945552 , - 5.605 , -1.94998845541488 , - 5.61 , -2.02894698358654 , - 5.615 , -1.97893684719994 , - 5.62 , -1.77192812280346 , - 5.625 , -1.39963819951885 , - 5.63 , -0.87646499571534 , - 5.635 , -0.23861147042705 , - 5.64 , 0.336218007155657 , - 5.645 , 0.847327478768983 , - 5.65 , 1.30857622082849 , - 5.655 , 1.67664606685409 , - 5.66 , 1.91879317489308 , - 5.665 , 2.01692172130926 , - 5.67 , 1.96853013034153 , - 5.675 , 1.78510825075991 , - 5.68 , 1.4896405295593 , - 5.685 , 1.11350916384325 , - 5.69 , 0.692073407024996 , - 5.695 , 0.259804585073245 , - 5.7 , -0.24312332096602 , - 5.705 , -0.83740028991543 , - 5.71 , -1.32862161402076 , - 5.715 , -1.69669262414581 , - 5.72 , -1.93128745142237 , - 5.725 , -2.02921997287969 , - 5.73 , -1.99337280480397 , - 5.735 , -1.83373410433008 , - 5.74 , -1.56747293050187 , - 5.745 , -1.21724094498849 , - 5.75 , -0.81052148648056 , - 5.755 , -0.38038326455022 , - 5.76 , 4.429619989889450E-02 , - 5.765 , 0.482041333875258 , - 5.77 , 0.827113852485307 , - 5.775 , 1.05562255275457 , - 5.78 , 1.15574510229285 , - 5.785 , 1.13102185729002 , - 5.79 , 1.00111402711585 , - 5.795 , 0.796402227894675 , - 5.8 , 0.550299036643284 , - 5.805 , 0.294746376632263 , - 5.81 , 5.779627739619110E-02 , - 5.815 , -0.14033970324891 , - 5.82 , -0.29057904479289 , - 5.825 , -0.39279585396293 , - 5.83 , -0.4494482504971 , - 5.835 , -0.46100119177358 , - 5.84 , -0.42521937611264 , - 5.845 , -0.3375317644422 , - 5.85 , -0.19158847654649 , - 5.855 , 1.752214546441880E-02 , - 5.86 , 0.287160001209617 , - 5.865 , 0.602028255467961 , - 5.87 , 0.933254236049531 , - 5.875 , 1.24149905843902 , - 5.88 , 1.48303299176761 , - 5.885 , 1.61843953382086 , - 5.89 , 1.62241665153411 , - 5.895 , 1.49156853196882 , - 5.9 , 1.24765942303674 , - 5.905 , 0.935345755846739 , - 5.91 , 0.614175990416646 , - 5.915 , 0.345931028275661 , - 5.92 , 0.180659960734569 , - 5.925 , 0.145383600846828 , - 5.93 , 0.237765412366942 , - 5.935 , 0.425793201109318 , - 5.94 , 0.654468234473261 , - 5.945 , 0.858677159866798 , - 5.95 , 0.978207334350809 , - 5.955 , 0.970329031591707 , - 5.96 , 0.818026030367143 , - 5.965 , 0.533251338659083 , - 5.97 , 0.15356868640373 , - 5.975 , -0.26839144886352 , - 5.98 , -0.67878215135657 , - 5.985 , -1.03400683986537 , - 5.99 , -1.3073585979251 , - 5.995 , -1.49178002375022 , - 6.0 , -1.59881218617846 , - 6.005 , -1.65263612785215 , - 6.01 , -1.68040775595467 , - 6.015 , -1.70326118069031 , - 6.02 , -1.73147514087517 , - 6.025 , -1.76409391726272 , - 6.03 , -1.79154678107851 , - 6.035 , -1.80004486312369 , - 6.04 , -1.77657113231061 , - 6.045 , -1.71309083748955 , - 6.05 , -1.60890845106533 , - 6.055 , -1.47045377157793 , - 6.06 , -1.30823176663841 , - 6.065 , -1.13218678075657 , - 6.07 , -0.94831725641373 , - 6.075 , -0.7582938943429 , - 6.08 , -0.56105916215743 , - 6.085 , -0.35465660035081 , - 6.09 , -0.1384716720616 , - 6.095 , 8.181401775998960E-02 , - 6.1 , 0.295120583821675 , - 6.105 , 0.488813785339096 , - 6.11 , 0.645978019217284 , - 6.115 , 0.751956445909178 , - 6.12 , 0.797070178696218 , - 6.125 , 0.778938415578525 , - 6.13 , 0.703933126539259 , - 6.135 , 0.586193282063444 , - 6.14 , 0.444346814137257 , - 6.145 , 0.29825595848257 , - 6.15 , 0.16716086262001 , - 6.155 , 6.845201123569530E-02 , - 6.16 , 1.638790200297000E-02 , - 6.165 , 2.138979757918980E-02 , - 6.17 , 9.013446340544370E-02 , - 6.175 , 0.225364316943996 , - 6.18 , 0.424627726925139 , - 6.185 , 0.678666340108451 , - 6.19 , 0.970459569802561 , - 6.195 , 1.27533903222018 , - 6.2 , 1.56265390764561 , - 6.205 , 1.79967884086063 , - 6.21 , 1.95730777614782 , - 6.215 , 2.01568092318868 , - 6.22 , 1.9680798901563 , - 6.225 , 1.82260275300508 , - 6.23 , 1.6012628707179 , - 6.235 , 1.33584067303513 , - 6.24 , 1.06088096670087 , - 6.245 , 0.806020651973241 , - 6.25 , 0.590240383625112 , - 6.255 , 0.419170058894404 , - 6.26 , 0.285567810216695 , - 6.265 , 0.172882474189092 , - 6.27 , 6.141521693570270E-02 , - 6.275 , -4.100655746000240E-02 , - 6.28 , -0.12748144658853 , - 6.285 , -0.22402606929835 , - 6.29 , -0.32266457931099 , - 6.295 , -0.41245768954213 , - 6.3 , -0.48300494677694 , - 6.305 , -0.5281469572368 , - 6.31 , -0.54867239852271 , - 6.315 , -0.55291028225442 , - 6.32 , -0.55498836852966 , - 6.325 , -0.57168033795742 , - 6.33 , -0.61890124937392 , - 6.335 , -0.70832720330432 , - 6.34 , -0.8444688842815 , - 6.345 , -1.02312789012362 , - 6.35 , -1.23201420479741 , - 6.355 , -1.45302869056683 , - 6.36 , -1.66483750094807 , - 6.365 , -1.84512502578643 , - 6.37 , -1.97287391729285 , - 6.375 , -2.03065548439675 , - 6.38 , -2.00620454087577 , - 6.385 , -1.89315139172675 , - 6.39 , -1.69175663119939 , - 6.395 , -1.40995495579992 , - 6.4 , -1.06376441111769 , - 6.405 , -0.67620069765757 , - 6.41 , -0.27510795942141 , - 6.415 , 0.196812130002227 , - 6.42 , 0.789662759769171 , - 6.425 , 1.26662960840841 , - 6.43 , 1.6072638071671 , - 6.435 , 1.81182394487741 , - 6.44 , 1.89972228643561 , - 6.445 , 1.9047619217593 , - 6.45 , 1.86751034078394 , - 6.455 , 1.8254292028055 , - 6.46 , 1.80357147143536 , - 6.465 , 1.80953648503866 , - 6.47 , 1.83384689586528 , - 6.475 , 1.8545291406415 , - 6.48 , 1.84468010904891 , - 6.485 , 1.78185447755559 , - 6.49 , 1.65634384795161 , - 6.495 , 1.47475850013982 , - 6.5 , 1.25778784095604 , - 6.505 , 1.03382280148781 , - 6.51 , 0.830377669084782 , - 6.515 , 0.664847688813952 , - 6.52 , 0.537441337312092 , - 6.525 , 0.429805314578715 , - 6.53 , 0.31046587513464 , - 6.535 , 0.1447657890999 , - 6.54 , -9.382243026102850E-02 , - 6.545 , -0.41334712070585 , - 6.55 , -0.79651775006838 , - 6.555 , -1.20028045361043 , - 6.56 , -1.56291508214219 , - 6.565 , -1.81661688690887 , - 6.57 , -1.90206035531056 , - 6.575 , -1.7817477770441 , - 6.58 , -1.44921463753588 , - 6.585 , -0.93148892423534 , - 6.59 , -0.28406148521622 , - 6.595 , 0.323315074176515 , - 6.6 , 0.852343584238104 , - 6.605 , 1.31274405752464 , - 6.61 , 1.66746511449112 , - 6.615 , 1.89908333611956 , - 6.62 , 2.00928735485692 , - 6.625 , 2.01484159347826 , - 6.63 , 1.94157792559844 , - 6.635 , 1.81783611017065 , - 6.64 , 1.66894503437948 , - 6.645 , 1.51424202651612 , - 6.65 , 1.36676756429498 , - 6.655 , 1.23440796614096 , - 6.66 , 1.12141683734346 , - 6.665 , 1.03005163859298 , - 6.67 , 0.961856012808879 , - 6.675 , 0.917594207115419 , - 6.68 , 0.895802572654735 , - 6.685 , 0.891399934871178 , - 6.69 , 0.895639060058472 , - 6.695 , 0.897175457172006 , - 6.7 , 0.883661601343515 , - 6.705 , 0.844008961722013 , - 6.71 , 0.77132601406367 , - 6.715 , 0.665213447750178 , - 6.72 , 0.531957875807601 , - 6.725 , 0.382692370009228 , - 6.73 , 0.230704777961798 , - 6.735 , 8.848409780228460E-02 , - 6.74 , -4.320967298403890E-02 , - 6.745 , -0.1762892860789 , - 6.75 , -0.28784586821218 , - 6.755 , -0.38905860495499 , - 6.76 , -0.49291382383649 , - 6.765 , -0.61009214038178 , - 6.77 , -0.74528548081034 , - 6.775 , -0.89462751554703 , - 6.78 , -1.04544755808821 , - 6.785 , -1.17892732569852 , - 6.79 , -1.27460153013389 , - 6.795 , -1.31507899117539 , - 6.8 , -1.28996744751844 , - 6.805 , -1.19853880216558 , - 6.81 , -1.0504463612584 , - 6.815 , -0.86390673664632 , - 6.82 , -0.66172430237656 , - 6.825 , -0.46650461944826 , - 6.83 , -0.29641016005237 , - 6.835 , -0.16215486668974 , - 6.84 , -6.552041776213589E-02 , - 6.845 , 2.987151640449150E-04 , - 6.85 , 4.839493719297370E-02 , - 6.855 , 9.446598470843660E-02 , - 6.86 , 0.152946671436979 , - 6.865 , 0.234067255310907 , - 6.87 , 0.342244784612781 , - 6.875 , 0.475796904621799 , - 6.88 , 0.627950076248601 , - 6.885 , 0.788973056491094 , - 6.89 , 0.948691666991149 , - 6.895 , 1.09834384227231 , - 6.9 , 1.23115050816982 , - 6.905 , 1.34171557597024 , - 6.91 , 1.42465179927775 , - 6.915 , 1.47287601846948 , - 6.92 , 1.47626092610496 , - 6.925 , 1.42154296744535 , - 6.93 , 1.29406455566583 , - 6.935 , 1.08117541948277 , - 6.94 , 0.776554035067551 , - 6.945 , 0.384383520531035 , - 6.95 , -7.294167926560280E-02 , - 6.955 , -0.53864400514197 , - 6.96 , -1.00153859379899 , - 6.965 , -1.41800783516812 , - 6.97 , -1.7468581519585 , - 6.975 , -1.95670089086248 , - 6.98 , -2.03182599021495 , - 6.985 , -1.97504743961906 , - 6.99 , -1.80676558399137 , - 6.995 , -1.5604834986916 , - 7.0 , -1.27576644446333 , - 7.005 , -0.9903221748174 , - 7.01 , -0.73330353810734 , - 7.015 , -0.52160326879535 , - 7.02 , -0.35985223488993 , - 7.025 , -0.24369954400838 , - 7.03 , -0.16525998770838 , - 7.035 , -0.11901231195031 , - 7.04 , -0.10598389561423 , - 7.045 , -0.13446900972305 , - 7.05 , -0.21699230917524 , - 7.055 , -0.36458839091288 , - 7.06 , -0.58005276943233 , - 7.065 , -0.85208512054878 , - 7.07 , -1.15259800704237 , - 7.075 , -1.43896995914881 , - 7.08 , -1.66118309359685 , - 7.085 , -1.771927531099 , - 7.09 , -1.73721975477998 , - 7.095 , -1.54526433804976 , - 7.1 , -1.21113953262348 , - 7.105 , -0.7752249017621 , - 7.11 , -0.29527299039846 , - 7.115 , 0.173294693493191 , - 7.12 , 0.57635137765972 , - 7.125 , 0.862335395139578 , - 7.13 , 1.01919271305477 , - 7.135 , 1.06290746127159 , - 7.14 , 1.03167712327493 , - 7.145 , 0.975104812475545 , - 7.15 , 0.94186991196106 , - 7.155 , 0.968697291206275 , - 7.16 , 1.07242991307441 , - 7.165 , 1.24693307983413 , - 7.17 , 1.46588613539846 , - 7.175 , 1.69040391004537 , - 7.18 , 1.87856926470802 , - 7.185 , 1.9942412785979 , - 7.19 , 2.01380495894182 , - 7.195 , 1.93002933646123 , - 7.2 , 1.75219708416187 , - 7.205 , 1.50259348018555 , - 7.21 , 1.21097997176944 , - 7.215 , 0.908929916225265 , - 7.22 , 0.624987318443838 , - 7.225 , 0.380818385977012 , - 7.23 , 0.188682790341481 , - 7.235 , 5.054908150564660E-02 , - 7.24 , -4.224733175465410E-02 , - 7.245 , -0.10533217769884 , - 7.25 , -0.15872049577028 , - 7.255 , -0.22626933934594 , - 7.26 , -0.32933473878503 , - 7.265 , -0.48196141281812 , - 7.27 , -0.68656470353389 , - 7.275 , -0.93107691321487 , - 7.28 , -1.18865855652987 , - 7.285 , -1.420854392386 , - 7.29 , -1.58410377773137 , - 7.295 , -1.63852514448294 , - 7.3 , -1.55725203777855 , - 7.305 , -1.33440140393595 , - 7.31 , -0.98961414150744 , - 7.315 , -0.56741260276393 , - 7.32 , -0.13082880911958 , - 7.325 , 0.249583666745638 , - 7.33 , 0.508940072170202 , - 7.335 , 0.600662717049061 , - 7.34 , 0.5059779991769 , - 7.345 , 0.238142376340394 , - 7.35 , -0.15979854274957 , - 7.355 , -0.62330642360817 , - 7.36 , -1.07861985315351 , - 7.365 , -1.45613573961171 , - 7.37 , -1.70221047327019 , - 7.375 , -1.78733777799186 , - 7.38 , -1.70935128300863 , - 7.385 , -1.49139661468471 , - 7.39 , -1.17576612947581 , - 7.395 , -0.81553092872387 , - 7.4 , -0.46579815462372 , - 7.405 , -0.17584397718572 , - 7.41 , 1.695055532407140E-02 , - 7.415 , 9.080438530410280E-02 , - 7.42 , 4.100203845188310E-02 , - 7.425 , -0.12015714114647 , - 7.43 , -0.36451642152235 , - 7.435 , -0.65063615988914 , - 7.44 , -0.92820901616803 , - 7.445 , -1.14411024994249 , - 7.45 , -1.2495457268474 , - 7.455 , -1.20784941543681 , - 7.46 , -1.00217372922289 , - 7.465 , -0.64135799082343 , - 7.47 , -0.16185956349448 , - 7.475 , 0.375443341531982 , - 7.48 , 0.893242359584305 , - 7.485 , 1.30942170236106 , - 7.49 , 1.55069511538195 , - 7.495 , 1.56597687306026 , - 7.5 , 1.33649434622083 , - 7.505 , 0.880087983425295 , - 7.51 , 0.248772549844589 , - 7.515 , -0.36466467822546 , - 7.52 , -0.91944206639744 , - 7.525 , -1.41086648314942 , - 7.53 , -1.78197182048109 , - 7.535 , -1.99448021035504 , - 7.54 , -2.03276742886028 , - 7.545 , -1.9038540437772 , - 7.55 , -1.63408290724591 , - 7.555 , -1.26366851276266 , - 7.56 , -0.84036300953546 , - 7.565 , -0.41319072336647 , - 7.57 , -2.695184824283270E-02 , - 7.575 , 0.376706658165673 , - 7.58 , 0.651108722060469 , - 7.585 , 0.775943751253261 , - 7.59 , 0.755597751751617 , - 7.595 , 0.613374035034045 , - 7.6 , 0.389100193892965 , - 7.605 , 0.134140214335999 , - 7.61 , -9.593512494436110E-02 , - 7.615 , -0.25014262596395 , - 7.62 , -0.29113724407252 , - 7.625 , -0.20287737386171 , - 7.63 , 5.024227092122790E-03 , - 7.635 , 0.297903261089418 , - 7.64 , 0.622107890736794 , - 7.645 , 0.91558081793758 , - 7.65 , 1.12076183929425 , - 7.655 , 1.19700603742361 , - 7.66 , 1.12967888152307 , - 7.665 , 0.933743975370447 , - 7.67 , 0.650793261469538 , - 7.675 , 0.339973230252299 , - 7.68 , 6.485809767286120E-02 , - 7.685 , -0.12047151548951 , - 7.69 , -0.18271341139574 , - 7.695 , -0.11542038316497 , - 7.7 , 6.117124311775080E-02 , - 7.705 , 0.306221765396461 , - 7.71 , 0.568625694223555 , - 7.715 , 0.79886093305278 , - 7.72 , 0.959184513633666 , - 7.725 , 1.02975813458714 , - 7.73 , 1.00975707269538 , - 7.735 , 0.913870269761431 , - 7.74 , 0.765608368548335 , - 7.745 , 0.589594520216864 , - 7.75 , 0.405299730586112 , - 7.755 , 0.223985767660469 , - 7.76 , 4.920974997763450E-02 , - 7.765 , -0.11994024975627 , - 7.77 , -0.28424112296356 , - 7.775 , -0.43999294669787 , - 7.78 , -0.57663798061898 , - 7.785 , -0.67751213622858 , - 7.79 , -0.72360079867587 , - 7.795 , -0.69901457723046 , - 7.8 , -0.59650776204881 , - 7.805 , -0.42155886366402 , - 7.81 , -0.19380300792328 , - 7.815 , 5.489933475191600E-02 , - 7.82 , 0.285466317840837 , - 7.825 , 0.458377987772727 , - 7.83 , 0.540543411689915 , - 7.835 , 0.510857284716815 , - 7.84 , 0.363486292918927 , - 7.845 , 0.108336402431131 , - 7.85 , -0.21209396424761 , - 7.855 , -0.56957977141521 , - 7.86 , -0.94077073678275 , - 7.865 , -1.29262615047061 , - 7.87 , -1.59622106208727 , - 7.875 , -1.82918316989524 , - 7.88 , -1.97699031089989 , - 7.885 , -2.03327946447786 , - 7.89 , -1.99933934346025 , - 7.895 , -1.88300955675939 , - 7.9 , -1.69721418310355 , - 7.905 , -1.45829064978291 , - 7.91 , -1.18410498022345 , - 7.915 , -0.8919394708508 , - 7.92 , -0.59649837620085 , - 7.925 , -0.30856724453543 , - 7.93 , -3.473084459177880E-02 , - 7.935 , 0.243954038684612 , - 7.94 , 0.505067577023267 , - 7.945 , 0.74523171014185 , - 7.95 , 0.961076322702563 , - 7.955 , 1.14544017577101 , - 7.96 , 1.28755260199966 , - 7.965 , 1.37508301728453 , - 7.97 , 1.39752728794968 , - 7.975 , 1.35018389601987 , - 7.98 , 1.23776787698572 , - 7.985 , 1.07653932806098 , - 7.99 , 0.893865005632781 , - 7.995 , 0.724806073674302 , - 8.0 , 0.606180934525952 , - 8.005 , 0.569233587341791 , - 8.01 , 0.632383043958699 , - 8.015 , 0.795725327814524 , - 8.02 , 1.03874194319127 , - 8.025 , 1.32196705023762 , - 8.03 , 1.59246805399968 , - 8.035 , 1.79229440498998 , - 8.04 , 1.86849022149291 , - 8.045 , 1.78281948278322 , - 8.05 , 1.51926230063055 , - 8.055 , 1.08785213984058 , - 8.06 , 0.524349594247236 , - 8.065 , -0.1140897577962 , - 8.07 , -0.75657207669552 , - 8.075 , -1.32834364834345 , - 8.08 , -1.76124306233852 , - 8.085 , -2.00310207974856 , - 8.09 , -2.02480910234302 , - 8.095 , -1.82430118945956 , - 8.1 , -1.42701906953591 , - 8.105 , -0.88275056011672 , - 8.11 , -0.25930710346958 , - 8.115 , 0.36611395388268 , - 8.12 , 0.916779579720004 , - 8.125 , 1.32634332320688 , - 8.13 , 1.54748990874522 , - 8.135 , 1.55804957216978 , - 8.14 , 1.36358979345776 , - 8.145 , 0.996118542284482 , - 8.15 , 0.509028622424576 , - 8.155 , -3.108833671467930E-02 , - 8.16 , -0.55458355458891 , - 8.165 , -0.9992113406596 , - 8.17 , -1.31909921378195 , - 8.175 , -1.4907344205054 , - 8.18 , -1.51500626604052 , - 8.185 , -1.41506172917135 , - 8.19 , -1.23045719608832 , - 8.195 , -1.00875563741852 , - 8.2 , -0.79618535909745 , - 8.205 , -0.62910374181022 , - 8.21 , -0.52781524086439 , - 8.215 , -0.49375763302869 , - 8.22 , -0.51036868088539 , - 8.225 , -0.54721127046085 , - 8.23 , -0.56640455149806 , - 8.235 , -0.5300607346312 , - 8.24 , -0.40739746710395 , - 8.245 , -0.18031656379607 , - 8.25 , 9.909295562647380E-02 , - 8.255 , 0.384178096593259 , - 8.26 , 0.711568797471058 , - 8.265 , 1.05465985685733 , - 8.27 , 1.38307322715161 , - 8.275 , 1.66640133480447 , - 8.28 , 1.87778042356214 , - 8.285 , 1.99690726227749 , - 8.29 , 2.01218574892656 , - 8.295 , 1.9218468256107 , - 8.3 , 1.73397654400921 , - 8.305 , 1.4654715893691 , - 8.31 , 1.14002097734659 , - 8.315 , 0.785289540807961 , - 8.32 , 0.429654714191936 , - 8.325 , 9.887434390542030E-02 , - 8.33 , -0.27373446466779 , - 8.335 , -0.61453278823147 , - 8.34 , -0.86361514651737 , - 8.345 , -1.02764207046752 , - 8.35 , -1.12312770730449 , - 8.355 , -1.17242345160079 , - 8.36 , -1.19890949112902 , - 8.365 , -1.22231476786338 , - 8.37 , -1.25506074091502 , - 8.375 , -1.30037291926648 , - 8.38 , -1.35246560106362 , - 8.385 , -1.39867274893801 , - 8.39 , -1.42300013455657 , - 8.395 , -1.41027137760835 , - 8.4 , -1.34988412628361 , - 8.405 , -1.23833354826905 , - 8.41 , -1.08003474781669 , - 8.415 , -0.8863811686465 , - 8.42 , -0.67334691448991 , - 8.425 , -0.45824149658395 , - 8.43 , -0.25648271091485 , - 8.435 , -7.919497664086800E-02 , - 8.44 , 6.790702566583660E-02 , - 8.445 , 0.184336104551994 , - 8.45 , 0.273607496426052 , - 8.455 , 0.341427765954767 , - 8.46 , 0.393859568348449 , - 8.465 , 0.436054008314734 , - 8.47 , 0.471822329873715 , - 8.475 , 0.503940686983312 , - 8.48 , 0.534766790770446 , - 8.485 , 0.566720547413461 , - 8.49 , 0.602204083610117 , - 8.495 , 0.642759211345947 , - 8.5 , 0.687546596661957 , - 8.505 , 0.73161370540631 , - 8.51 , 0.764633590722345 , - 8.515 , 0.770779801924118 , - 8.52 , 0.730226474533298 , - 8.525 , 0.622364880535585 , - 8.53 , 0.430299195926097 , - 8.535 , 0.145690142921501 , - 8.54 , -0.1875029917819 , - 8.545 , -0.54835468448798 , - 8.55 , -0.93829077724458 , - 8.555 , -1.32093112448324 , - 8.56 , -1.65568314187632 , - 8.565 , -1.90374313930578 , - 8.57 , -2.03414217931564 , - 8.575 , -2.02871594615485 , - 8.58 , -1.88502979034511 , - 8.585 , -1.61666670363564 , - 8.59 , -1.25090542907548 , - 8.595 , -0.82439719072454 , - 8.6 , -0.3777961843308 , - 8.605 , 5.997342456618780E-02 , - 8.61 , 0.498580351025926 , - 8.615 , 0.848666797179574 , - 8.62 , 1.09518857615416 , - 8.625 , 1.23554791479412 , - 8.63 , 1.2781763580922 , - 8.635 , 1.2403900007702 , - 8.64 , 1.14586627728766 , - 8.645 , 1.02207806372073 , - 8.65 , 0.897804023904626 , - 8.655 , 0.800618191332478 , - 8.66 , 0.754133205007585 , - 8.665 , 0.775081318262375 , - 8.67 , 0.87060821275674 , - 8.675 , 1.03627950859147 , - 8.68 , 1.25531150972849 , - 8.685 , 1.49959206680695 , - 8.69 , 1.73283203030496 , - 8.695 , 1.91564235877547 , - 8.7 , 2.01171708813146 , - 8.705 , 1.99404478322172 , - 8.71 , 1.85004122617725 , - 8.715 , 1.5844790314963 , - 8.72 , 1.21937543098226 , - 8.725 , 0.790685383472318 , - 8.73 , 0.34253999395618 , - 8.735 , -8.315108890721259E-02 , - 8.74 , -0.45782997432698 , - 8.745 , -0.73560630397696 , - 8.75 , -0.90358121095544 , - 8.755 , -0.96494822819405 , - 8.76 , -0.93630744097796 , - 8.765 , -0.84299937779174 , - 8.77 , -0.71350666162014 , - 8.775 , -0.57402043454602 , - 8.78 , -0.44427168990607 , - 8.785 , -0.33542713208977 , - 8.79 , -0.2501116833682 , - 8.795 , -0.18401361018569 , - 8.8 , -0.12842784460002 , - 8.805 , -7.314603730146210E-02 , - 8.81 , -9.074234322190291E-03 , - 8.815 , 7.000693452309770E-02 , - 8.82 , 0.166710878734688 , - 8.825 , 0.280110709519932 , - 8.83 , 0.406273894637497 , - 8.835 , 0.539123020255816 , - 8.84 , 0.671480131538164 , - 8.845 , 0.796107038123461 , - 8.85 , 0.906615981394394 , - 8.855 , 0.998324490593576 , - 8.86 , 1.0690620538107 , - 8.865 , 1.11975528767815 , - 8.87 , 1.15453246345251 , - 8.875 , 1.18023682665442 , - 8.88 , 1.20532586633037 , - 8.885 , 1.23820591293966 , - 8.89 , 1.28520280175297 , - 8.895 , 1.3486570631952 , - 8.9 , 1.42571219461991 , - 8.905 , 1.50820033663049 , - 8.91 , 1.58374708347145 , - 8.915 , 1.63800541668437 , - 8.92 , 1.65764589236558 , - 8.925 , 1.63341505537543 , - 8.93 , 1.5624359419512 , - 8.935 , 1.44906883520367 , - 8.94 , 1.30406714173948 , - 8.945 , 1.14214506133789 , - 8.95 , 0.97845385721763 , - 8.955 , 0.824773099970328 , - 8.96 , 0.686415293227468 , - 8.965 , 0.560675032421674 , - 8.97 , 0.437346493634863 , - 8.975 , 0.301223152764708 , - 8.98 , 0.136102516376474 , - 8.985 , -7.065849555314389E-02 , - 8.99 , -0.32407738413447 , - 8.995 , -0.61898581453294 , - 9.0 , -0.93960037368359 , - 9.005 , -1.26143943272218 , - 9.01 , -1.55516650644025 , - 9.015 , -1.79156612412015 , - 9.02 , -1.94652674681638 , - 9.025 , -2.00503791616427 , - 9.03 , -1.96340298656283 , - 9.035 , -1.82929859570769 , - 9.04 , -1.61975611512981 , - 9.045 , -1.35763976380722 , - 9.05 , -1.06749188919142 , - 9.055 , -0.77165747380896 , - 9.06 , -0.48743715471134 , - 9.065 , -0.22573691716227 , - 9.07 , 8.680561556133970E-03 , - 9.075 , 0.215640087376458 , - 9.08 , 0.397259171267499 , - 9.085 , 0.555581085303924 , - 9.09 , 0.690729679309828 , - 9.095 , 0.800029757983254 , - 9.1 , 0.878247351202657 , - 9.105 , 0.91878759810445 , - 9.11 , 0.915444383097841 , - 9.115 , 0.864214490635585 , - 9.12 , 0.76472553582975 , - 9.125 , 0.620899809131162 , - 9.13 , 0.440670714935382 , - 9.135 , 0.234785445409552 , - 9.14 , 1.501866477042620E-02 , - 9.145 , -0.16256660035877 , - 9.15 , -0.33008216119127 , - 9.155 , -0.49037224168296 , - 9.16 , -0.64324845085619 , - 9.165 , -0.79113983805113 , - 9.17 , -0.93796449486453 , - 9.175 , -1.0876496844508 , - 9.18 , -1.24257624122444 , - 9.185 , -1.40228132491324 , - 9.19 , -1.56269378306469 , - 9.195 , -1.71610185022193 , - 9.2 , -1.85187081485719 , - 9.205 , -1.95781829391389 , - 9.21 , -2.02202032577224 , - 9.215 , -2.03476784125131 , - 9.22 , -1.99032018745331 , - 9.225 , -1.88813289198619 , - 9.23 , -1.73333557866961 , - 9.235 , -1.53634649422576 , - 9.24 , -1.31166062827625 , - 9.245 , -1.075970419663 , - 9.25 , -0.84593818781158 , - 9.255 , -0.63597140868637 , - 9.26 , -0.4563931782957 , - 9.265 , -0.31231411198407 , - 9.27 , -0.20343660584305 , - 9.275 , -0.12481923225902 , - 9.28 , -6.848370877973950E-02 , - 9.285 , -2.555427519972480E-02 , - 9.29 , 1.844706127350420E-02 , - 9.295 , 6.430221576072399E-02 , - 9.3 , 0.10743778394149 , - 9.305 , 0.141299341041405 , - 9.31 , 0.154447624403715 , - 9.315 , 0.133048252401135 , - 9.32 , 6.418690106369780E-02 , - 9.325 , -6.064647417949840E-02 , - 9.33 , -0.24265292279827 , - 9.335 , -0.47405842905361 , - 9.34 , -0.73810449789487 , - 9.345 , -1.0108148464089 , - 9.35 , -1.26431984266432 , - 9.355 , -1.47118757622947 , - 9.36 , -1.60894844812626 , - 9.365 , -1.66394726283033 , - 9.37 , -1.63377593114862 , - 9.375 , -1.52779564631775 , - 9.38 , -1.36560192630373 , - 9.385 , -1.17367488772945 , - 9.39 , -0.98085465048613 , - 9.395 , -0.81346133563023 , - 9.4 , -0.6909389063025 , - 9.405 , -0.62276084953816 , - 9.41 , -0.607149409463 , - 9.415 , -0.63177724383888 , - 9.42 , -0.67625991576389 , - 9.425 , -0.71589163373072 , - 9.43 , -0.72595664968346 , - 9.435 , -0.68589387170155 , - 9.44 , -0.58268627289106 , - 9.445 , -0.412930213848 , - 9.45 , -0.18338626940602 , - 9.455 , 8.998844390524470E-02 , - 9.46 , 0.384209486902062 , - 9.465 , 0.672301526951598 , - 9.47 , 0.926752158620487 , - 9.475 , 1.12295373373336 , - 9.48 , 1.24217806572443 , - 9.485 , 1.27378905610875 , - 9.49 , 1.21646747255966 , - 9.495 , 1.07838936456105 , - 9.5 , 0.876298148043991 , - 9.505 , 0.633562127434793 , - 9.51 , 0.377406516734523 , - 9.515 , 0.135641869430563 , - 9.52 , -6.672476216219871E-02 , - 9.525 , -0.21056458019019 , - 9.53 , -0.28496091918619 , - 9.535 , -0.28841969553759 , - 9.54 , -0.2287139810782 , - 9.545 , -0.12132500570029 , - 9.55 , 7.625888610971770E-03 , - 9.555 , 0.116222883261377 , - 9.56 , 0.213774951165706 , - 9.565 , 0.289397517200485 , - 9.57 , 0.338281477903747 , - 9.575 , 0.362345137379695 , - 9.58 , 0.369650428641696 , - 9.585 , 0.372716892921114 , - 9.59 , 0.386055603509022 , - 9.595 , 0.423398634616031 , - 9.6 , 0.495129281552051 , - 9.605 , 0.60639781396735 , - 9.61 , 0.756225797586165 , - 9.615 , 0.937731164545477 , - 9.62 , 1.13931299682061 , - 9.625 , 1.34651259505288 , - 9.63 , 1.54413547032879 , - 9.635 , 1.71824818793864 , - 9.64 , 1.85768676819293 , - 9.645 , 1.95489941817505 , - 9.65 , 2.00610002856624 , - 9.655 , 2.01090936461916 , - 9.66 , 1.97169865125757 , - 9.665 , 1.89287748522473 , - 9.67 , 1.78030387269109 , - 9.675 , 1.64090911938383 , - 9.68 , 1.48250660526215 , - 9.685 , 1.31363233674109 , - 9.69 , 1.14327915207579 , - 9.695 , 0.980390644995991 , - 9.7 , 0.833122502994828 , - 9.705 , 0.707943691566063 , - 9.71 , 0.608782533951479 , - 9.715 , 0.536448337875884 , - 9.72 , 0.488573445463521 , - 9.725 , 0.46016643878741 , - 9.73 , 0.444740766028055 , - 9.735 , 0.435798656192539 , - 9.74 , 0.428373605655483 , - 9.745 , 0.420256963476142 , - 9.75 , 0.412594868385096 , - 9.755 , 0.409674164332935 , - 9.76 , 0.417930829751558 , - 9.765 , 0.444371250852317 , - 9.77 , 0.494775704856077 , - 9.775 , 0.572057120950962 , - 9.78 , 0.675155981128035 , - 9.785 , 0.798679222993941 , - 9.79 , 0.933324321352313 , - 9.795 , 1.06694698775423 , - 9.8 , 1.18603236012388 , - 9.805 , 1.27724967196587 , - 9.81 , 1.32882747232424 , - 9.815 , 1.33155990686688 , - 9.82 , 1.27942417786924 , - 9.825 , 1.16984949079063 , - 9.83 , 1.00375336219652 , - 9.835 , 0.78541101181126 , - 9.84 , 0.522229879372249 , - 9.845 , 0.224363288427596 , - 9.85 , -7.544298823405959E-02 , - 9.855 , -0.32414911077947 , - 9.86 , -0.56925067043303 , - 9.865 , -0.80153173249929 , - 9.87 , -1.01385881998571 , - 9.875 , -1.20197758458175 , - 9.88 , -1.36481009682394 , - 9.885 , -1.50413197543959 , - 9.89 , -1.62360229940215 , - 9.895 , -1.72737604935286 , - 9.9 , -1.81858556613035 , - 9.905 , -1.89811306323292 , - 9.91 , -1.96399286416952 , - 9.915 , -2.01169321437822 , - 9.92 , -2.03524420540911 , - 9.925 , -2.02897089319518 , - 9.93 , -1.9893635845244 , - 9.935 , -1.91657784009958 , - 9.94 , -1.81508296294018 , - 9.945 , -1.69320466339342 , - 9.95 , -1.56159803137893 , - 9.955 , -1.4309899156992 , - 9.96 , -1.309755744458 , - 9.965 , -1.20194945689331 , - 9.97 , -1.10635858004562 , - 9.975 , -1.01686709903203 , - 9.98 , -0.92410491644605 , - 9.985 , -0.81798616411117 , - 9.99 , -0.69053338279253 , - 9.995 , -0.53828091954851 , - 10.0 , -0.36368359344091 , - 10.005 , -0.17516204935777 , - 10.01 , 3.283892190983560E-02 , - 10.015 , 0.330694200317556 , - 10.02 , 0.577629318788318 , - 10.025 , 0.752762239562344 , - 10.03 , 0.843359973197779 , - 10.035 , 0.846296788144704 , - 10.04 , 0.767736310318568 , - 10.045 , 0.621457280597053 , - 10.05 , 0.426437216065522 , - 10.055 , 0.204358996732675 , - 10.06 , -2.248438925201870E-02 , - 10.065 , -0.23266656596899 , - 10.07 , -0.40662586629101 , - 10.075 , -0.52750200085185 , - 10.08 , -0.58215648669077 , - 10.085 , -0.56248497246021 , - 10.09 , -0.4669190429802 , - 10.095 , -0.30169803576621 , - 10.1 , -8.141467321068210E-02 , - 10.105 , 0.171736188042055 , - 10.11 , 0.430255910671489 , - 10.115 , 0.665052841920839 , - 10.12 , 0.849933032813423 , - 10.125 , 0.965995866692921 , - 10.13 , 1.00493830188015 , - 10.135 , 0.970469370709915 , - 10.14 , 0.877402798238989 , - 10.145 , 0.748601808713132 , - 10.15 , 0.610481808617733 , - 10.155 , 0.488130421487012 , - 10.16 , 0.401133125757128 , - 10.165 , 0.360990723458034 , - 10.17 , 0.370538085006636 , - 10.175 , 0.425250483406994 , - 10.18 , 0.515772332268937 , - 10.185 , 0.630771503752903 , - 10.19 , 0.759255763887151 , - 10.195 , 0.891778215264391 , - 10.2 , 1.02038573505463 , - 10.205 , 1.13765165967161 , - 10.21 , 1.2354498601353 , - 10.215 , 1.30423925529986 , - 10.22 , 1.3333818353705 , - 10.225 , 1.31262109496076 , - 10.23 , 1.23439607687214 , - 10.235 , 1.09630588839482 , - 10.24 , 0.902881246184685 , - 10.245 , 0.665930257015006 , - 10.25 , 0.403145595569434 , - 10.255 , 0.135167464543167 , - 10.26 , -0.1181889683435 , - 10.265 , -0.34158112353947 , - 10.27 , -0.5266606974231 , - 10.275 , -0.67279436439978 , - 10.28 , -0.78577175818034 , - 10.285 , -0.87491503414711 , - 10.29 , -0.94943871678613 , - 10.295 , -1.01514749755514 , - 10.3 , -1.07240552249575 , - 10.305 , -1.1159454664886 , - 10.31 , -1.13652214942974 , - 10.315 , -1.12387719989209 , - 10.32 , -1.07009467236169 , - 10.325 , -0.9723415710773 , - 10.33 , -0.83421714797159 , - 10.335 , -0.66537603566363 , - 10.34 , -0.47961924019497 , - 10.345 , -0.29207437055768 , - 10.35 , -0.11633661841191 , - 10.355 , 3.762456752764130E-02 , - 10.36 , 0.164274796553055 , - 10.365 , 0.262005149857291 , - 10.37 , 0.331666422264028 , - 10.375 , 0.374819782001995 , - 10.38 , 0.392377294442122 , - 10.385 , 0.384141260826285 , - 10.39 , 0.34936414194296 , - 10.395 , 0.288052561776111 , - 10.4 , 0.20242178785536 , - 10.405 , 9.785306567479871E-02 , - 10.41 , -1.713557520971730E-02 , - 10.415 , -0.13204374310037 , - 10.42 , -0.23639873810073 , - 10.425 , -0.32201635263159 , - 10.43 , -0.38475152712529 , - 10.435 , -0.4251245384254 , - 10.44 , -0.44753546126283 , - 10.445 , -0.45825628870499 , - 10.45 , -0.46279334754373 , - 10.455 , -0.46346276944743 , - 10.46 , -0.45799981189361 , - 10.465 , -0.43972280992741 , - 10.47 , -0.39929302861398 , - 10.475 , -0.32758719542718 , - 10.48 , -0.21885278786041 , - 10.485 , -7.315503161217039E-02 , - 10.49 , 0.102651407152514 , - 10.495 , 0.295816563735959 , - 10.5 , 0.490226934148564 , - 10.505 , 0.669891810457828 , - 10.51 , 0.82237594525252 , - 10.515 , 0.941216017829958 , - 10.52 , 1.02661998674533 , - 10.525 , 1.08430529858058 , - 10.53 , 1.12286636573309 , - 10.535 , 1.15051988582967 , - 10.54 , 1.17222128266484 , - 10.545 , 1.18801420247095 , - 10.55 , 1.19307665922947 , - 10.555 , 1.17938295001738 , - 10.56 , 1.13840303313913 , - 10.565 , 1.06394181580147 , - 10.57 , 0.95422952397942 , - 10.575 , 0.812611611237298 , - 10.58 , 0.646677789199809 , - 10.585 , 0.466152014272008 , - 10.59 , 0.280289725059773 , - 10.595 , 9.565146176778430E-02 , - 10.6 , -8.499446193837400E-02 , - 10.605 , -0.26230216706899 , - 10.61 , -0.4386137767682 , - 10.615 , -0.6154630451662 , - 10.62 , -0.79113786663093 , - 10.625 , -0.9591661750224 , - 10.63 , -1.10826769502301 , - 10.635 , -1.22391556601366 , - 10.64 , -1.29112533315649 , - 10.645 , -1.29775475114347 , - 10.65 , -1.23742365152054 , - 10.655 , -1.11129656465532 , - 10.66 , -0.9282894842173 , - 10.665 , -0.70371663339333 , - 10.67 , -0.45680011277455 , - 10.675 , -0.20771128037236 , - 10.68 , 2.512459612945220E-02 , - 10.685 , 0.226918245807304 , - 10.69 , 0.387350552286146 , - 10.695 , 0.500473670939197 , - 10.7 , 0.564029266358019 , - 10.705 , 0.578637288901258 , - 10.71 , 0.547211894628189 , - 10.715 , 0.474757060973486 , - 10.72 , 0.368436624005821 , - 10.725 , 0.237615830995378 , - 10.73 , 9.352792827951401E-02 , - 10.735 , -5.167273774008210E-02 , - 10.74 , -0.18646809540466 , - 10.745 , -0.30187135567744 , - 10.75 , -0.39316916542135 , - 10.755 , -0.46096802891446 , - 10.76 , -0.51111268636195 , - 10.765 , -0.55334646668629 , - 10.77 , -0.59891300067983 , - 10.775 , -0.65764678122702 , - 10.78 , -0.73525453842381 , - 10.785 , -0.83150017185443 , - 10.79 , -0.93976747420304 , - 10.795 , -1.04812248595262 , - 10.8 , -1.14160318244191 , - 10.805 , -1.2051488991501 , - 10.81 , -1.22646384585139 , - 10.815 , -1.19814339245798 , - 10.82 , -1.11865520710004 , - 10.825 , -0.9920714349609 , - 10.83 , -0.82681485385664 , - 10.835 , -0.63386505629908 , - 10.84 , -0.42496268277971 , - 10.845 , -0.21119376102165 , - 10.85 , -2.191019852703480E-03 , - 10.855 , 0.194127641793734 , - 10.86 , 0.371466018382975 , - 10.865 , 0.525035130835761 , - 10.87 , 0.651602813791636 , - 10.875 , 0.749803994860723 , - 10.88 , 0.820544481310922 , - 10.885 , 0.867273287648818 , - 10.89 , 0.895807866624117 , - 10.895 , 0.913572593095597 , - 10.9 , 0.928236729298366 , - 10.905 , 0.946014350836689 , - 10.91 , 0.970040868532415 , - 10.915 , 0.999311930164329 , - 10.92 , 1.02854682988849 , - 10.925 , 1.04913139979 , - 10.93 , 1.05098941441043 , - 10.935 , 1.02499491482512 , - 10.94 , 0.965351048328359 , - 10.945 , 0.871370473531725 , - 10.95 , 0.748233229517312 , - 10.955 , 0.606563895886194 , - 10.96 , 0.460955473292802 , - 10.965 , 0.327805324612049 , - 10.97 , 0.222950093923078 , - 10.975 , 0.159562148201255 , - 10.98 , 0.146631988185719 , - 10.985 , 0.188170103964573 , - 10.99 , 0.283066815855546 , - 10.995 , 0.425428418732869 , - 11.0 , 0.605185596503197 , - 11.005 , 0.808842841129001 , - 11.01 , 1.0203252588096 , - 11.015 , 1.22200011907392 , - 11.02 , 1.39594474367148 , - 11.025 , 1.52549944650203 , - 11.03 , 1.59700049844879 , - 11.035 , 1.60145576944865 , - 11.04 , 1.53581761942562 , - 11.045 , 1.4034930323483 , - 11.05 , 1.2138831423925 , - 11.055 , 0.980912371026411 , - 11.06 , 0.720812505576093 , - 11.065 , 0.449601892036102 , - 11.07 , 0.180857582628542 , - 11.075 , -7.573381698891210E-02 , - 11.08 , -0.31470812975405 , - 11.085 , -0.53405962087938 , - 11.09 , -0.73364261678681 , - 11.095 , -0.91330540113887 , - 11.1 , -1.07132417643687 , - 11.105 , -1.20365312210336 , - 11.11 , -1.30419832213249 , - 11.115 , -1.36604239161232 , - 11.12 , -1.38321880818252 , - 11.125 , -1.35249870150789 , - 11.13 , -1.27462783831177 , - 11.135 , -1.15465182792767 , - 11.14 , -1.00123343402233 , - 11.145 , -0.82518952456788 , - 11.15 , -0.63769529339716 , - 11.155 , -0.44866816516864 , - 11.16 , -0.26576203055682 , - 11.165 , -9.416463454136630E-02 , - 11.17 , 6.287575092606090E-02 , - 11.175 , 0.203141505865471 , - 11.18 , 0.324579712695666 , - 11.185 , 0.424889751727608 , - 11.19 , 0.501750804315283 , - 11.195 , 0.5536421159011 , - 11.2 , 0.580921794960766 , - 11.205 , 0.586704260853481 , - 11.21 , 0.5770850470881 , - 11.215 , 0.560449668733132 , - 11.22 , 0.545887300846328 , - 11.225 , 0.541047479949923 , - 11.23 , 0.549990662947013 , - 11.235 , 0.571663114185204 , - 11.24 , 0.599500251771258 , - 11.245 , 0.62236878054162 , - 11.25 , 0.626713322562836 , - 11.255 , 0.599434772191117 , - 11.26 , 0.530838614269415 , - 11.265 , 0.416951659398843 , - 11.27 , 0.26068866151549 , - 11.275 , 7.163385796821510E-02 , - 11.28 , -0.13542954911164 , - 11.285 , -0.34285006284799 , - 11.29 , -0.53271798082564 , - 11.295 , -0.68922055953639 , - 11.3 , -0.80031992822441 , - 11.305 , -0.85859556643174 , - 11.31 , -0.86132208764303 , - 11.315 , -0.81002406922002 , - 11.32 , -0.70979684966059 , - 11.325 , -0.56862676261062 , - 11.33 , -0.39681435075012 , - 11.335 , -0.20645292887016 , - 11.34 , -1.082875708200500E-02 , - 11.345 , 0.176412752549899 , - 11.35 , 0.342376371445806 , - 11.355 , 0.476235796330172 , - 11.36 , 0.570527791788077 , - 11.365 , 0.622137109693916 , - 11.37 , 0.632674434445817 , - 11.375 , 0.608089217990313 , - 11.38 , 0.557537864431003 , - 11.385 , 0.491727720373806 , - 11.39 , 0.421100488617183 , - 11.395 , 0.35424883871057 , - 11.4 , 0.296898598214297 , - 11.405 , 0.251615782949777 , - 11.41 , 0.218205567537362 , - 11.415 , 0.194575186033259 , - 11.42 , 0.177750889222743 , - 11.425 , 0.164739545969125 , - 11.43 , 0.153046754059915 , - 11.435 , 0.140795993214209 , - 11.44 , 0.12656443411951 , - 11.445 , 0.109119048772985 , - 11.45 , 8.726746617413900E-02 , - 11.455 , 5.991980120903190E-02 , - 11.46 , 2.635460927914640E-02 , - 11.465 , -1.345275150280380E-02 , - 11.47 , -5.863610709200840E-02 , - 11.475 , -0.10755044102404 , - 11.48 , -0.15824658177879 , - 11.485 , -0.20921212071436 , - 11.49 , -0.26013226175091 , - 11.495 , -0.31237245530863 , - 11.5 , -0.36890715351072 , - 11.505 , -0.43358437734804 , - 11.51 , -0.50981957766845 , - 11.515 , -0.59903776556946 , - 11.52 , -0.69931194037806 , - 11.525 , -0.80465691443919 , - 11.53 , -0.90529166691289 , - 11.535 , -0.98894889157901 , - 11.54 , -1.0430005689334 , - 11.545 , -1.05693388169808 , - 11.55 , -1.0245796623575 , - 11.555 , -0.94554374723514 , - 11.56 , -0.82548253167239 , - 11.565 , -0.67515951222416 , - 11.57 , -0.50853411181021 , - 11.575 , -0.34035152824456 , - 11.58 , -0.18380744340702 , - 11.585 , -4.877605466847740E-02 , - 11.59 , 5.909608053637810E-02 , - 11.595 , 0.138405652647701 , - 11.6 , 0.191311518017365 , - 11.605 , 0.222508949979136 , - 11.61 , 0.238194003082017 , - 11.615 , 0.245269919971124 , - 11.62 , 0.250838712250952 , - 11.625 , 0.261870016704265 , - 11.63 , 0.284836510438269 , - 11.635 , 0.325131372886616 , - 11.64 , 0.386198740355232 , - 11.645 , 0.468513501462264 , - 11.65 , 0.568696341674455 , - 11.655 , 0.679148315040223 , - 11.66 , 0.788508513966795 , - 11.665 , 0.883056182933764 , - 11.67 , 0.948906416298242 , - 11.675 , 0.974570797520427 , - 11.68 , 0.953277599477234 , - 11.685 , 0.884438058167201 , - 11.69 , 0.77382364723826 , - 11.695 , 0.632334566850428 , - 11.7 , 0.473622939615698 , - 11.705 , 0.311143111887763 , - 11.71 , 0.15539149490874 , - 11.715 , 1.204008787083370E-02 , - 11.72 , -0.1185541756946 , - 11.725 , -0.24038836981401 , - 11.73 , -0.35969118541412 , - 11.735 , -0.48228327823872 , - 11.74 , -0.61114632720659 , - 11.745 , -0.74488165421895 , - 11.75 , -0.87742903375438 , - 11.755 , -0.9990735442117 , - 11.76 , -1.09838127444184 , - 11.765 , -1.16449496867241 , - 11.77 , -1.18914405096313 , - 11.775 , -1.1678940579368 , - 11.78 , -1.10040933370095 , - 11.785 , -0.98984205208497 , - 11.79 , -0.8417105178341 , - 11.795 , -0.66273801588279 , - 11.8 , -0.46007426875265 , - 11.805 , -0.24109784101173 , - 11.81 , -1.376424841735200E-02 , - 11.815 , 0.212820798236347 , - 11.82 , 0.428004774853851 , - 11.825 , 0.61976809620263 , - 11.83 , 0.775664732827253 , - 11.835 , 0.884459785072971 , - 11.84 , 0.938105319486098 , - 11.845 , 0.933533376809836 , - 11.85 , 0.873720830366818 , - 11.855 , 0.767639484838718 , - 11.86 , 0.628977669852066 , - 11.865 , 0.4738539721813 , - 11.87 , 0.31801589351757 , - 11.875 , 0.174157204161953 , - 11.88 , 4.995725310342680E-02 , - 11.885 , -5.275216941488590E-02 , - 11.89 , -0.13756423084181 , - 11.895 , -0.2120196831066 , - 11.9 , -0.28548456301669 , - 11.905 , -0.36691840941378 , - 11.91 , -0.46300320666114 , - 11.915 , -0.57696070561373 , - 11.92 , -0.70814553643099 , - 11.925 , -0.85232717509853 , - 11.93 , -1.00241060096662 , - 11.935 , -1.14936568830572 , - 11.94 , -1.28315120023664 , - 11.945 , -1.39356260774938 , - 11.95 , -1.47101607033074 , - 11.955 , -1.5073448490242 , - 11.96 , -1.4966490584904 , - 11.965 , -1.43616086274327 , - 11.97 , -1.32698077186283 , - 11.975 , -1.17446433758603 , - 11.98 , -0.98804059864846 , - 11.985 , -0.78032474331784 , - 11.99 , -0.56556840849598 , - 11.995 , -0.35765933543277 , - 12.0 , -0.16807550799874 , - 12.005 , -4.227255766186140E-03 , - 12.01 , 0.131383604645629 , - 12.015 , 0.240987503608671 , - 12.02 , 0.330348730788584 , - 12.025 , 0.406826008170448 , - 12.03 , 0.477144240124697 , - 12.035 , 0.545422501700242 , - 12.04 , 0.611915404843405 , - 12.045 , 0.672755857445556 , - 12.05 , 0.720723072194553 , - 12.055 , 0.746832365003761 , - 12.06 , 0.742346946489963 , - 12.065 , 0.700760339032901 , - 12.07 , 0.619339003519911 , - 12.075 , 0.499959785870592 , - 12.08 , 0.349159304278182 , - 12.085 , 0.177470223182518 , - 12.09 , -1.753350545225190E-03 , - 12.095 , -0.17379950342875 , - 12.1 , -0.32413511149758 , - 12.105 , -0.43987021437218 , - 12.11 , -0.51104917071923 , - 12.115 , -0.53171143244092 , - 12.12 , -0.50064639271511 , - 12.125 , -0.42174741533336 , - 12.13 , -0.30385287601246 , - 12.135 , -0.1599770009419 , - 12.14 , -5.916472086063350E-03 , - 12.145 , 0.141672124157728 , - 12.15 , 0.267467136745314 , - 12.155 , 0.359599717485464 , - 12.16 , 0.411271872916484 , - 12.165 , 0.421529890421321 , - 12.17 , 0.394986365391134 , - 12.175 , 0.340522937951077 , - 12.18 , 0.269238562662315 , - 12.185 , 0.19209641315972 , - 12.19 , 0.11779958413244 , - 12.195 , 5.136625423508250E-02 , - 12.2 , -6.300947873046220E-03 , - 12.205 , -5.782223054975370E-02 , - 12.21 , -0.10793985148095 , - 12.215 , -0.16174127408618 , - 12.22 , -0.22298866763169 , - 12.225 , -0.2929886222154 , - 12.23 , -0.37024238871399 , - 12.235 , -0.45090142997871 , - 12.24 , -0.52980992267136 , - 12.245 , -0.60178949630599 , - 12.25 , -0.66276746147737 , - 12.255 , -0.71046604589472 , - 12.26 , -0.74450641227213 , - 12.265 , -0.76599806365513 , - 12.27 , -0.77681628816103 , - 12.275 , -0.77885826543421 , - 12.28 , -0.77352755022123 , - 12.285 , -0.76159237398235 , - 12.29 , -0.74340951487468 , - 12.295 , -0.7193684533261 , - 12.3 , -0.69033859752466 , - 12.305 , -0.65790529310338 , - 12.31 , -0.62427337609045 , - 12.315 , -0.59183465481714 , - 12.32 , -0.5625391602505 , - 12.325 , -0.53727609431785 , - 12.33 , -0.51549939568466 , - 12.335 , -0.49523027754421 , - 12.34 , -0.47348196058407 , - 12.345 , -0.44699386193397 , - 12.35 , -0.41308162478787 , - 12.355 , -0.37035623858392 , - 12.36 , -0.31912406711736 , - 12.365 , -0.26136188585533 , - 12.37 , -0.20030871435109 , - 12.375 , -0.13979053261561 , - 12.38 , -8.348819445843680E-02 , - 12.385 , -3.432412971860200E-02 , - 12.39 , 5.898257672503130E-03 , - 12.395 , 3.658675251617240E-02 , - 12.4 , 5.823490831704580E-02 , - 12.405 , 7.220973009677149E-02 , - 12.41 , 8.054556791305920E-02 , - 12.415 , 8.583652449551200E-02 , - 12.42 , 9.119751190995400E-02 , - 12.425 , 0.10022495276452 , - 12.43 , 0.116830802684467 , - 12.435 , 0.144865533553475 , - 12.44 , 0.187496464655846 , - 12.445 , 0.246429769927851 , - 12.45 , 0.321134575890146 , - 12.455 , 0.408310004218564 , - 12.46 , 0.501792671730819 , - 12.465 , 0.593049206029892 , - 12.47 , 0.672237912914609 , - 12.475 , 0.729699407315016 , - 12.48 , 0.757595593934302 , - 12.485 , 0.751370987649759 , - 12.49 , 0.710716591717499 , - 12.495 , 0.639832178015772 , - 12.5 , 0.546914264636683 , - 12.505 , 0.442962983193198 , - 12.51 , 0.340141957400465 , - 12.515 , 0.249991895482425 , - 12.52 , 0.181816356681784 , - 12.525 , 0.14149413564273 , - 12.53 , 0.130883062190031 , - 12.535 , 0.147852731887966 , - 12.54 , 0.186894240935408 , - 12.545 , 0.240161777063203 , - 12.55 , 0.298772249040031 , - 12.555 , 0.3541646202598 , - 12.56 , 0.399336722395081 , - 12.565 , 0.429803491932159 , - 12.57 , 0.444142296553351 , - 12.575 , 0.444055340271153 , - 12.58 , 0.433919042501565 , - 12.585 , 0.41987739717275 , - 12.59 , 0.408602791719151 , - 12.595 , 0.405932599777175 , - 12.6 , 0.415626645287793 , - 12.605 , 0.438500795189521 , - 12.61 , 0.47213105784221 , - 12.615 , 0.511225323925744 , - 12.62 , 0.548612052766521 , - 12.625 , 0.576660272126196 , - 12.63 , 0.588829953918048 , - 12.635 , 0.581021197761628 , - 12.64 , 0.552418992096461 , - 12.645 , 0.505653719521126 , - 12.65 , 0.446259700593861 , - 12.655 , 0.381569197808235 , - 12.66 , 0.319325454510432 , - 12.665 , 0.266332799357825 , - 12.67 , 0.227442179455834 , - 12.675 , 0.20505248099 , - 12.68 , 0.199165657452942 , - 12.685 , 0.207885677656546 , - 12.69 , 0.228151213713856 , - 12.695 , 0.256464303289308 , - 12.7 , 0.289423464944378 , - 12.705 , 0.323974105633788 , - 12.71 , 0.357399971553342 , - 12.715 , 0.387180213631022 , - 12.72 , 0.410871216078733 , - 12.725 , 0.426149440224674 , - 12.73 , 0.431066724422046 , - 12.735 , 0.424468610875424 , - 12.74 , 0.40643852414304 , - 12.745 , 0.378585136191504 , - 12.75 , 0.344023630341179 , - 12.755 , 0.306976904799534 , - 12.76 , 0.272045167670388 , - 12.765 , 0.243295410789869 , - 12.77 , 0.223399948751481 , - 12.775 , 0.213036444793139 , - 12.78 , 0.210713889469279 , - 12.785 , 0.213057227036913 , - 12.79 , 0.21547276609123 , - 12.795 , 0.213006795751766 , - 12.8 , 0.201182178134479 , - 12.805 , 0.176611102924828 , - 12.81 , 0.137299208402565 , - 12.815 , 8.261651333889580E-02 , - 12.82 , 1.306254997938910E-02 , - 12.825 , -7.003874532972119E-02 , - 12.83 , -0.16475325893821 , - 12.835 , -0.26859374971277 , - 12.84 , -0.37841766630558 , - 12.845 , -0.49027765178853 , - 12.85 , -0.59935591527846 , - 12.855 , -0.70013189417767 , - 12.86 , -0.78683177941038 , - 12.865 , -0.85412623949955 , - 12.87 , -0.89792127381358 , - 12.875 , -0.91603916182254 , - 12.88 , -0.90857357773468 , - 12.885 , -0.87778714750083 , - 12.89 , -0.8275372966502 , - 12.895 , -0.76235786224487 , - 12.9 , -0.68643393291051 , - 12.905 , -0.60274756840487 , - 12.91 , -0.51264247885951 , - 12.915 , -0.41593073711012 , - 12.92 , -0.3115269410358 , - 12.925 , -0.19842747985447 , - 12.93 , -7.676760694603291E-02 , - 12.935 , 5.135539420685220E-02 , - 12.94 , 0.181528383908596 , - 12.945 , 0.307260660414741 , - 12.95 , 0.420769213103223 , - 12.955 , 0.514139979660135 , - 12.96 , 0.580592682156079 , - 12.965 , 0.615578076246798 , - 12.97 , 0.617476907926892 , - 12.975 , 0.587799377315074 , - 12.98 , 0.530889280436902 , - 12.985 , 0.453243660311424 , - 12.99 , 0.362622392194437 , - 12.995 , 0.2671120583141 , - 13.0 , 0.174286119779362 , - 13.005 , 9.052797178882990E-02 , - 13.01 , 2.054498441234870E-02 , - 13.015 , -3.294702871288870E-02 , - 13.02 , -6.937300005549160E-02 , - 13.025 , -9.028206231971420E-02 , - 13.03 , -9.913110412573760E-02 , - 13.035 , -0.10083734030815 , - 13.04 , -0.10108450259662 , - 13.045 , -0.1054266897417 , - 13.05 , -0.1182915683999 , - 13.055 , -0.14205888957835 , - 13.06 , -0.17640190935702 , - 13.065 , -0.21806865581631 , - 13.07 , -0.26120089347156 , - 13.075 , -0.29817769418101 , - 13.08 , -0.32085004389739 , - 13.085 , -0.32193831070962 , - 13.09 , -0.29631759697471 , - 13.095 , -0.24193696858333 , - 13.1 , -0.16019970762232 , - 13.105 , -5.574993867029920E-02 , - 13.11 , 6.425618048517991E-02 , - 13.115 , 0.19122987419663 , - 13.12 , 0.316346629224766 , - 13.125 , 0.431653751489729 , - 13.13 , 0.530914954469608 , - 13.135 , 0.610121196882937 , - 13.14 , 0.667657470309265 , - 13.145 , 0.704186599565721 , - 13.15 , 0.722325191446681 , - 13.155 , 0.726186367330791 , - 13.16 , 0.720836106520834 , - 13.165 , 0.711688820321258 , - 13.17 , 0.703862564199362 , - 13.175 , 0.701524520420123 , - 13.18 , 0.707294612263167 , - 13.185 , 0.721797723723084 , - 13.19 , 0.743474213000332 , - 13.195 , 0.768726481461021 , - 13.2 , 0.792431876186836 , - 13.205 , 0.808764824723334 , - 13.21 , 0.812196723822406 , - 13.215 , 0.798471820125594 , - 13.22 , 0.765360902698407 , - 13.225 , 0.713020417223642 , - 13.23 , 0.643892155196421 , - 13.235 , 0.562167990243985 , - 13.24 , 0.472970245560551 , - 13.245 , 0.381438619514679 , - 13.25 , 0.291951206368075 , - 13.255 , 0.20762340636979 , - 13.26 , 0.130166940321081 , - 13.265 , 6.006289386634430E-02 , - 13.27 , -3.060365982684810E-03 , - 13.275 , -6.001488208941340E-02 , - 13.28 , -0.11173380533579 , - 13.285 , -0.15914104631288 , - 13.29 , -0.20317809418618 , - 13.295 , -0.24493336090531 , - 13.3 , -0.28573011925772 , - 13.305 , -0.32707569024184 , - 13.31 , -0.37040876594875 , - 13.315 , -0.41668833903021 , - 13.32 , -0.46592656198441 , - 13.325 , -0.51683388329442 , - 13.33 , -0.56671530350641 , - 13.335 , -0.61172427575717 , - 13.34 , -0.64745289857378 , - 13.345 , -0.66975635467017 , - 13.35 , -0.67561421984368 , - 13.355 , -0.66382212752523 , - 13.36 , -0.63533221269618 , - 13.365 , -0.59315990071751 , - 13.37 , -0.54187928568118 , - 13.375 , -0.48684683870894 , - 13.38 , -0.43334458417513 , - 13.385 , -0.38584852580448 , - 13.39 , -0.34757223717143 , - 13.395 , -0.32034609191295 , - 13.4 , -0.30479305822331 , - 13.405 , -0.30068667519817 , - 13.41 , -0.30734431404504 , - 13.415 , -0.32393187524719 , - 13.42 , -0.3496124571983 , - 13.425 , -0.38355062958007 , - 13.43 , -0.42483772740574 , - 13.435 , -0.47243959941852 , - 13.44 , -0.52523698989138 , - 13.445 , -0.58218855059142 , - 13.45 , -0.64255715702482 , - 13.455 , -0.70611547192509 , - 13.46 , -0.77319959733532 , - 13.465 , -0.84453581144061 , - 13.47 , -0.9208154277502 , - 13.475 , -1.00210330165744 , - 13.48 , -1.08722318257344 , - 13.485 , -1.17331384017982 , - 13.49 , -1.25571905330723 , - 13.495 , -1.32830569669314 , - 13.5 , -1.38419198321401 , - 13.505 , -1.41674939954092 , - 13.51 , -1.42066916256513 , - 13.515 , -1.39284912504276 , - 13.52 , -1.33290856588875 , - 13.525 , -1.24321481899912 , - 13.53 , -1.12845482092199 , - 13.535 , -0.994859301148 , - 13.54 , -0.84929200472393 , - 13.545 , -0.69840229944309 , - 13.55 , -0.5480171915834 , - 13.555 , -0.40283245150506 , - 13.56 , -0.26639859300057 , - 13.565 , -0.1412841699847 , - 13.57 , -2.930752910284020E-02 , - 13.575 , 6.831031669366761E-02 , - 13.58 , 0.150909902638648 , - 13.585 , 0.218485436556094 , - 13.59 , 0.271817772885176 , - 13.595 , 0.312563547048263 , - 13.6 , 0.343197563758831 , - 13.605 , 0.366784232668975 , - 13.61 , 0.386577813348275 , - 13.615 , 0.405567940703392 , - 13.62 , 0.426060284638387 , - 13.625 , 0.449416325446865 , - 13.63 , 0.476003373865086 , - 13.635 , 0.505362938780156 , - 13.64 , 0.536518767578895 , - 13.645 , 0.568328300506654 , - 13.65 , 0.599754845087405 , - 13.655 , 0.630000025300325 , - 13.66 , 0.6584695973929 , - 13.665 , 0.68462841460832 , - 13.67 , 0.70782686172262 , - 13.675 , 0.727203534668359 , - 13.68 , 0.741722744375036 , - 13.685 , 0.750362416108883 , - 13.69 , 0.752392406085506 , - 13.695 , 0.747650040601305 , - 13.7 , 0.736696231685042 , - 13.705 , 0.720777621636586 , - 13.71 , 0.701571294344929 , - 13.715 , 0.680769236869278 , - 13.72 , 0.659613778989939 , - 13.725 , 0.638519591968826 , - 13.73 , 0.616905016742059 , - 13.735 , 0.593283746255628 , - 13.74 , 0.565603855337414 , - 13.745 , 0.531733554716355 , - 13.75 , 0.489962659748419 , - 13.755 , 0.439375608243233 , - 13.76 , 0.380009446404367 , - 13.765 , 0.312773129830936 , - 13.77 , 0.239195423372873 , - 13.775 , 0.16110638214858 , - 13.78 , 8.038995906805420E-02 , - 13.785 , -1.102897232504770E-03 , - 13.79 , -8.144778281704360E-02 , - 13.795 , -0.15840843583426 , - 13.8 , -0.22917659635052 , - 13.805 , -0.29024518206889 , - 13.81 , -0.33752175024298 , - 13.815 , -0.36674198188098 , - 13.82 , -0.37413071891857 , - 13.825 , -0.35717935529397 , - 13.83 , -0.31535074520267 , - 13.835 , -0.25052105857336 , - 13.84 , -0.16702284226815 , - 13.845 , -7.124636094412699E-02 , - 13.85 , 2.913353087510890E-02 , - 13.855 , 0.126149325078345 , - 13.86 , 0.212544685340441 , - 13.865 , 0.282593826653342 , - 13.87 , 0.33259342353236 , - 13.875 , 0.360977014896564 , - 13.88 , 0.368090497895831 , - 13.885 , 0.355740094833499 , - 13.89 , 0.326653538417733 , - 13.895 , 0.283980395609887 , - 13.9 , 0.230911938687721 , - 13.905 , 0.170438689852821 , - 13.91 , 0.105217955743757 , - 13.915 , 3.748846121428490E-02 , - 13.92 , -3.100811006762060E-02 , - 13.925 , -9.912461677678459E-02 , - 13.93 , -0.16638732593593 , - 13.935 , -0.23301599989748 , - 13.94 , -0.29981098203477 , - 13.945 , -0.36788336374228 , - 13.95 , -0.43823790831234 , - 13.955 , -0.51128976367887 , - 13.96 , -0.58642827752511 , - 13.965 , -0.66176331535379 , - 13.97 , -0.7341480161194 , - 13.975 , -0.79952454249667 , - 13.98 , -0.85353878258576 , - 13.985 , -0.89230509468498 , - 13.99 , -0.9131476514604 , - 13.995 , -0.91514375354423 , - 14.0 , -0.8993367487938 , - 14.005 , -0.86856422332842 , - 14.01 , -0.82694415950239 , - 14.015 , -0.77913771351111 , - 14.02 , -0.72955729658514 , - 14.025 , -0.68168905647206 , - 14.03 , -0.63766151216947 , - 14.035 , -0.59811504505913 , - 14.04 , -0.56235853309889 , - 14.045 , -0.52872726325526 , - 14.05 , -0.49503897771436 , - 14.055 , -0.45902725746187 , - 14.06 , -0.41868594009816 , - 14.065 , -0.37248337306763 , - 14.07 , -0.31947100513302 , - 14.075 , -0.25931189817463 , - 14.08 , -0.19228261646431 , - 14.085 , -0.11925792681763 , - 14.09 , -4.169532968283350E-02 , - 14.095 , 3.843303316390890E-02 , - 14.1 , 0.118775003838835 , - 14.105 , 0.196837583343436 , - 14.11 , 0.270307193173439 , - 14.115 , 0.337420184008135 , - 14.12 , 0.397291393971841 , - 14.125 , 0.450126440210993 , - 14.13 , 0.497226657276013 , - 14.135 , 0.540774142842358 , - 14.14 , 0.58340264798186 , - 14.145 , 0.627643304621108 , - 14.15 , 0.675349975738562 , - 14.155 , 0.727241025622671 , - 14.16 , 0.782651129746367 , - 14.165 , 0.839560451090441 , - 14.17 , 0.894881294455553 , - 14.175 , 0.944955884798899 , - 14.18 , 0.986144014351956 , - 14.185 , 1.015390719979 , - 14.19 , 1.0306572943892 , - 14.195 , 1.03115234481902 , - 14.2 , 1.01733343986871 , - 14.205 , 0.990709541557108 , - 14.21 , 0.953502790822332 , - 14.215 , 0.908254264710393 , - 14.22 , 0.857454756635746 , - 14.225 , 0.803265224100822 , - 14.23 , 0.74737385316121 , - 14.235 , 0.690995601525318 , - 14.24 , 0.635005073529152 , - 14.245 , 0.580160133049894 , - 14.25 , 0.527369694111442 , - 14.255 , 0.477938039158216 , - 14.26 , 0.433728338232803 , - 14.265 , 0.397194149800069 , - 14.27 , 0.371248511478309 , - 14.275 , 0.358963505823744 , - 14.28 , 0.363137797938165 , - 14.285 , 0.385787231840523 , - 14.29 , 0.427657749130475 , - 14.295 , 0.487849697242734 , - 14.3 , 0.563646552494242 , - 14.305 , 0.650598748291401 , - 14.31 , 0.742869615401765 , - 14.315 , 0.833794067276776 , - 14.32 , 0.916556460872168 , - 14.325 , 0.984863842045941 , - 14.33 , 1.0335040976667 , - 14.335 , 1.05869041827564 , - 14.34 , 1.05816644274048 , - 14.345 , 1.03108361491544 , - 14.35 , 0.977735351761127 , - 14.355 , 0.899232930675646 , - 14.36 , 0.797237214065439 , - 14.365 , 0.673796884116058 , - 14.37 , 0.531337867932015 , - 14.375 , 0.372747573641774 , - 14.38 , 0.20150981243218 , - 14.385 , 2.178427411223690E-02 , - 14.39 , -0.16161383529816 , - 14.395 , -0.34339606863716 , - 14.4 , -0.5181084642692 , - 14.405 , -0.68053644448525 , - 14.41 , -0.826088703855 , - 14.415 , -0.95112570187104 , - 14.42 , -1.05313423965707 , - 14.425 , -1.13075625342751 , - 14.43 , -1.18366851217429 , - 14.435 , -1.21238579974723 , - 14.44 , -1.21803310838506 , - 14.445 , -1.20215241564511 , - 14.45 , -1.16656016251128 , - 14.455 , -1.113269900772 , - 14.46 , -1.04444581397611 , - 14.465 , -0.96236345544593 , - 14.47 , -0.86935386142724 , - 14.475 , -0.76773118679175 , - 14.48 , -0.65972693552001 , - 14.485 , -0.54746173019692 , - 14.49 , -0.43299292085595 , - 14.495 , -0.3184397215422 , - 14.5 , -0.20616849862018 , - 14.505 , -9.897318159698620E-02 , - 14.51 , -1.803143023172810E-04 , - 14.515 , 8.640194233650360E-02 , - 14.52 , 0.156727372406871 , - 14.525 , 0.206940131693837 , - 14.53 , 0.233914703352716 , - 14.535 , 0.235793875210402 , - 14.54 , 0.212387260096523 , - 14.545 , 0.165314426336394 , - 14.55 , 9.783758697368690E-02 , - 14.555 , 1.439534230634960E-02 , - 14.56 , -8.005859022341789E-02 , - 14.565 , -0.18076618261283 , - 14.57 , -0.28374454180973 , - 14.575 , -0.38610798365218 , - 14.58 , -0.48605081190961 , - 14.585 , -0.58252398542127 , - 14.59 , -0.67470367132805 , - 14.595 , -0.76142935693159 , - 14.6 , -0.8407780560685 , - 14.605 , -0.90992374040628 , - 14.61 , -0.96532870247995 , - 14.615 , -1.00324396367882 , - 14.62 , -1.02038773635927 , - 14.625 , -1.01463341589249 , - 14.63 , -0.98552757460307 , - 14.635 , -0.93450835223946 , - 14.64 , -0.86477120783303 , - 14.645 , -0.78081893710178 , - 14.65 , -0.68781873202676 , - 14.655 , -0.59091719649253 , - 14.66 , -0.49467793607145 , - 14.665 , -0.40274402274473 , - 14.67 , -0.31777533615604 , - 14.675 , -0.24161241000393 , - 14.68 , -0.17557875216008 , - 14.685 , -0.12078750746673 , - 14.69 , -7.835224295217311E-02 , - 14.695 , -4.942101977486440E-02 , - 14.7 , -3.503749471905150E-02 , - 14.705 , -3.587495731215070E-02 , - 14.71 , -5.194398103175540E-02 , - 14.715 , -8.236828155631780E-02 , - 14.72 , -0.12531697112263 , - 14.725 , -0.17812203875209 , - 14.73 , -0.23756805254037 , - 14.735 , -0.30028601265584 , - 14.74 , -0.36316012018238 , - 14.745 , -0.42365909583363 , - 14.75 , -0.48002335079991 , - 14.755 , -0.53128602795839 , - 14.76 , -0.57714447879069 , - 14.765 , -0.61773654874064 , - 14.77 , -0.65338922947777 , - 14.775 , -0.68440719071073 , - 14.78 , -0.71094150841826 , - 14.785 , -0.73295383213119 , - 14.79 , -0.75025831938642 , - 14.795 , -0.76260438890415 , - 14.8 , -0.76975912976851 , - 14.805 , -0.77155180131721 , - 14.81 , -0.76787415141689 , - 14.815 , -0.75863134459094 , - 14.82 , -0.74368104295612 , - 14.825 , -0.72278322433993 , - 14.83 , -0.69560054902327 , - 14.835 , -0.66175375591306 , - 14.84 , -0.62093898535516 , - 14.845 , -0.57306913773937 , - 14.85 , -0.51841917741191 , - 14.855 , -0.45771315164191 , - 14.86 , -0.392137917305 , - 14.865 , -0.3232532945768 , - 14.87 , -0.25282156152333 , - 14.875 , -0.18257072630809 , - 14.88 , -0.11395570313114 , - 14.885 , -4.795078990473090E-02 , - 14.89 , 1.505030752196730E-02 , - 14.895 , 7.523505899511330E-02 , - 14.9 , 0.133241663209769 , - 14.905 , 0.189946958395501 , - 14.91 , 0.246204884243539 , - 14.915 , 0.302617865301028 , - 14.92 , 0.359383341937356 , - 14.925 , 0.416272256914715 , - 14.93 , 0.472730379837134 , - 14.935 , 0.528097455638089 , - 14.94 , 0.581866656852053 , - 14.945 , 0.633923511292493 , - 14.95 , 0.684671503159956 , - 14.955 , 0.735006617044871 , - 14.96 , 0.78610900707482 , - 14.965 , 0.839096114213373 , - 14.97 , 0.894592925855566 , - 14.975 , 0.952340646800937 , - 14.98 , 1.0109322862822 , - 14.985 , 1.06776815099708 , - 14.99 , 1.11925763952313 , - 14.995 , 1.16125733848899 , - 15.0 , 1.18965840938029 , - 15.005 , 1.20101711803106 , - 15.01 , 1.19309156203439 , - 15.015 , 1.16518353563898 , - 15.02 , 1.11821232455035 , - 15.025 , 1.0545184865003 , - 15.03 , 0.977448615628865 , - 15.035 , 0.890815252481333 , - 15.04 , 0.798354444510221 , - 15.045 , 0.703279494461959 , - 15.05 , 0.60801847543151 , - 15.055 , 0.514150357593879 , - 15.06 , 0.422530486995826 , - 15.065 , 0.333543044544543 , - 15.07 , 0.247413880227417 , - 15.075 , 0.164505011560775 , - 15.08 , 8.554502116652860E-02 , - 15.085 , 1.176008397877900E-02 , - 15.09 , -5.508991016794810E-02 , - 15.095 , -0.11277329041032 , - 15.1 , -0.15872202731611 , - 15.105 , -0.19023769676271 , - 15.11 , -0.20475543680883 , - 15.115 , -0.20016459209247 , - 15.12 , -0.17515953672649 , - 15.125 , -0.1295909322101 , - 15.13 , -6.475341455153370E-02 , - 15.135 , 1.645644779243700E-02 , - 15.14 , 0.109582085491203 , - 15.145 , 0.208891920094615 , - 15.15 , 0.307902347961824 , - 15.155 , 0.400086953541137 , - 15.16 , 0.479656312478387 , - 15.165 , 0.54227026093024 , - 15.17 , 0.585531391323096 , - 15.175 , 0.60915577781107 , - 15.18 , 0.614771789148716 , - 15.185 , 0.605386403919845 , - 15.19 , 0.584635659710548 , - 15.195 , 0.555987240463961 , - 15.2 , 0.522078576056577 , - 15.205 , 0.484332615313383 , - 15.21 , 0.44293940454718 , - 15.215 , 0.397175120559912 , - 15.22 , 0.345968006972672 , - 15.225 , 0.288543030116857 , - 15.23 , 0.224972791486283 , - 15.235 , 0.156481408793171 , - 15.24 , 8.542958350357370E-02 , - 15.245 , 1.498370477529230E-02 , - 15.25 , -5.142934425176120E-02 , - 15.255 , -0.1107437937938 , - 15.26 , -0.16078441017566 , - 15.265 , -0.20057844669055 , - 15.27 , -0.23037829970624 , - 15.275 , -0.2514154045316 , - 15.28 , -0.26546110414046 , - 15.285 , -0.27433386226401 , - 15.29 , -0.27947343680654 , - 15.295 , -0.28170382574971 , - 15.3 , -0.28121922535055 , - 15.305 , -0.27778333156123 , - 15.31 , -0.27106104276765 , - 15.315 , -0.26098347288903 , - 15.32 , -0.2480337104626 , - 15.325 , -0.23338239832851 , - 15.33 , -0.21883669131141 , - 15.335 , -0.20662723365469 , - 15.34 , -0.19908795725974 , - 15.345 , -0.1983095632208 , - 15.35 , -0.20583511356768 , - 15.355 , -0.22245388077999 , - 15.36 , -0.24810721805446 , - 15.365 , -0.28190022979588 , - 15.37 , -0.32218399867655 , - 15.375 , -0.36668187000496 , - 15.38 , -0.41262893144551 , - 15.385 , -0.4569195252945 , - 15.39 , -0.49626700745835 , - 15.395 , -0.52739011070132 , - 15.4 , -0.54723474350703 , - 15.405 , -0.55322582044501 , - 15.41 , -0.54352567312437 , - 15.415 , -0.51725918301048 , - 15.42 , -0.47466073347181 , - 15.425 , -0.41710230560527 , - 15.43 , -0.34698928139492 , - 15.435 , -0.26752756403572 , - 15.44 , -0.18240759770015 , - 15.445 , -9.545429827632960E-02 , - 15.45 , -1.031774321012660E-02 , - 15.455 , 6.975569716684001E-02 , - 15.46 , 0.142031815271298 , - 15.465 , 0.204287600135245 , - 15.47 , 0.254724524020873 , - 15.475 , 0.291852234959508 , - 15.48 , 0.314393966922164 , - 15.485 , 0.321257693596354 , - 15.49 , 0.311592647764159 , - 15.495 , 0.284924209311069 , - 15.5 , 0.241333574629117 , - 15.505 , 0.181630984411648 , - 15.51 , 0.107473789318163 , - 15.515 , 2.138659993284420E-02 , - 15.52 , -7.333294612818740E-02 , - 15.525 , -0.17281819572361 , - 15.53 , -0.2729111163528 , - 15.535 , -0.36947452952708 , - 15.54 , -0.45868092644508 , - 15.545 , -0.53724054983261 , - 15.55 , -0.60253835404275 , - 15.555 , -0.65267651763316 , - 15.56 , -0.6864354117723 , - 15.565 , -0.70318229683703 , - 15.57 , -0.70276183568102 , - 15.575 , -0.68540176686393 , - 15.58 , -0.6516520838685 , - 15.585 , -0.60236502510189 , - 15.59 , -0.538706492591 , - 15.595 , -0.46217410897888 , - 15.6 , -0.37460077533887 , - 15.605 , -0.27810973417383 , - 15.61 , -0.17502716813551 , - 15.615 , -6.773228527287170E-02 , - 15.62 , 4.151501433409210E-02 , - 15.625 , 0.150751860185515 , - 15.63 , 0.258442092002889 , - 15.635 , 0.363538574930614 , - 15.64 , 0.465442765332169 , - 15.645 , 0.563876126508653 , - 15.65 , 0.658665592231715 , - 15.655 , 0.749509291460253 , - 15.66 , 0.835755718589599 , - 15.665 , 0.916264699152492 , - 15.67 , 0.989375816925145 , - 15.675 , 1.05301420158238 , - 15.68 , 1.10490739292059 , - 15.685 , 1.14288462647541 , - 15.69 , 1.16518849553063 , - 15.695 , 1.1707464912492 , - 15.7 , 1.15934157640063 , - 15.705 , 1.13165264409975 , - 15.71 , 1.08916287801769 , - 15.715 , 1.03396048449819 , - 15.72 , 0.968480895649285 , - 15.725 , 0.895239610317516 , - 15.73 , 0.816614791244956 , - 15.735 , 0.734699276030846 , - 15.74 , 0.651241095374945 , - 15.745 , 0.567649521370319 , - 15.75 , 0.485049163207599 , - 15.755 , 0.404335549986381 , - 15.76 , 0.326219056425138 , - 15.765 , 0.251231356865374 , - 15.77 , 0.179720965294244 , - 15.775 , 0.111831041730238 , - 15.78 , 4.750476279777080E-02 , - 15.785 , -1.347798247405040E-02 , - 15.79 , -7.141356069694010E-02 , - 15.795 , -0.12656450883031 , - 15.8 , -0.1790372399842 , - 15.805 , -0.2286955113047 , - 15.81 , -0.27512243015728 , - 15.815 , -0.31766447732324 , - 15.82 , -0.3555388110919 , - 15.825 , -0.38798921520158 , - 15.83 , -0.41444221410296 , - 15.835 , -0.43463094635962 , - 15.84 , -0.44864369112348 , - 15.845 , -0.4568931292131 , - 15.85 , -0.46000160926806 , - 15.855 , -0.45865250041628 , - 15.86 , -0.45343877892519 , - 15.865 , -0.44476504067162 , - 15.87 , -0.43283082098116 , - 15.875 , -0.41771237775514 , - 15.88 , -0.3995214147592 , - 15.885 , -0.37860415544342 , - 15.89 , -0.35572212713179 , - 15.895 , -0.33216132888134 , - 15.9 , -0.30972572285948 , - 15.905 , -0.29059799700979 , - 15.91 , -0.27708096353175 , - 15.915 , -0.27126155854412 , - 15.92 , -0.2746590319597 , - 15.925 , -0.28792675974919 , - 15.93 , -0.31066689274262 , - 15.935 , -0.34140077106906 , - 15.94 , -0.3777039602476 , - 15.945 , -0.41648665097944 , - 15.95 , -0.45437291128764 , - 15.955 , -0.48811381404708 , - 15.96 , -0.51496612193939 , - 15.965 , -0.5329765854495 , - 15.97 , -0.54113053164364 , - 15.975 , -0.53935053269995 , - 15.98 , -0.52835825596445 , - 15.985 , -0.50943591924887 , - 15.99 , -0.48413923071434 , - 15.995 , -0.45401661733085 , - 16.0 , -0.42038541841803 , - 16.005 , -0.38419449756936 , - 16.01 , -0.34598883075877 , - 16.015 , -0.30596135684737 , - 16.02 , -0.26406862723475 , - 16.025 , -0.22017134269813 , - 16.03 , -0.17416871222392 , - 16.035 , -0.12609398639317 , - 16.04 , -7.616580091339020E-02 , - 16.045 , -2.479105816937940E-02 , - 16.05 , 2.745737110728120E-02 , - 16.055 , 7.987861751112391E-02 , - 16.06 , 0.131672708259285 , - 16.065 , 0.181958505928516 , - 16.07 , 0.229779175022502 , - 16.075 , 0.274114727562895 , - 16.08 , 0.313912537790184 , - 16.085 , 0.348155259464482 , - 16.09 , 0.375959714090624 , - 16.095 , 0.396703409827832 , - 16.1 , 0.410143539243666 , - 16.105 , 0.416499539855543 , - 16.11 , 0.416464899336383 , - 16.115 , 0.411132431725026 , - 16.12 , 0.401834694221056 , - 16.125 , 0.389926331168038 , - 16.13 , 0.376552509432684 , - 16.135 , 0.362455371415181 , - 16.14 , 0.347864663265341 , - 16.145 , 0.332498409591647 , - 16.15 , 0.315673926599289 , - 16.155 , 0.296498803516978 , - 16.16 , 0.274095775096738 , - 16.165 , 0.247800859489553 , - 16.17 , 0.217295286911219 , - 16.175 , 0.182636701553898 , - 16.18 , 0.144199700257594 , - 16.185 , 0.102548913123023 , - 16.19 , 5.829530297192130E-02 , - 16.195 , 1.197592728082750E-02 , - 16.2 , -3.600290534227300E-02 , - 16.205 , -8.535615468618291E-02 , - 16.21 , -0.13584918811621 , - 16.215 , -0.18721153582539 , - 16.22 , -0.23906457716721 , - 16.225 , -0.29090350734869 , - 16.23 , -0.34213587188623 , - 16.235 , -0.392170780993 , - 16.24 , -0.44051591221236 , - 16.245 , -0.48684480865516 , - 16.25 , -0.53098857668878 , - 16.255 , -0.57284978382707 , - 16.26 , -0.61224319073572 , - 16.265 , -0.64871598685836 , - 16.27 , -0.68140334352395 , - 16.275 , -0.70898222576025 , - 16.28 , -0.7297595947791 , - 16.285 , -0.7418948815967 , - 16.29 , -0.74371891027858 , - 16.295 , -0.73407611710958 , - 16.3 , -0.71260329024102 , - 16.305 , -0.67986749030603 , - 16.31 , -0.63732240300856 , - 16.315 , -0.58707824160675 , - 16.32 , -0.53154405116823 , - 16.325 , -0.47301455154914 , - 16.33 , -0.41331652122001 , - 16.335 , -0.35357961212191 , - 16.34 , -0.29419497300413 , - 16.345 , -0.23495140181355 , - 16.35 , -0.17531083484956 , - 16.355 , -0.11473456907756 , - 16.36 , -5.298091218194400E-02 , - 16.365 , 9.709062607778981E-03 , - 16.37 , 7.256409889259650E-02 , - 16.375 , 0.134384503385863 , - 16.38 , 0.193739454595389 , - 16.385 , 0.24920525086789 , - 16.39 , 0.299568602241651 , - 16.395 , 0.343956956389216 , - 16.4 , 0.381866908791684 , - 16.405 , 0.413114650618461 , - 16.41 , 0.437733369467239 , - 16.415 , 0.455877974867213 , - 16.42 , 0.46776384132681 , - 16.425 , 0.473663922748246 , - 16.43 , 0.47395074709205 , - 16.435 , 0.469159269294089 , - 16.44 , 0.460028874160481 , - 16.445 , 0.447496145434672 , - 16.45 , 0.43262324571891 , - 16.455 , 0.416476298710912 , - 16.46 , 0.39998487143001 , - 16.465 , 0.383825594174033 , - 16.47 , 0.368369873101624 , - 16.475 , 0.353714574674185 , - 16.48 , 0.339789306901935 , - 16.485 , 0.326509782519242 , - 16.49 , 0.313927074313828 , - 16.495 , 0.302325131506492 , - 16.5 , 0.292230126681682 , - 16.505 , 0.284323481848275 , - 16.51 , 0.279278430837744 , - 16.515 , 0.277565991023392 , - 16.52 , 0.27928378094795 , - 16.525 , 0.284059216918989 , - 16.53 , 0.291055442661278 , - 16.535 , 0.299081158427955 , - 16.54 , 0.306775986803293 , - 16.545 , 0.312824550426672 , - 16.55 , 0.316148133716397 , - 16.555 , 0.316029035226392 , - 16.56 , 0.31215069004257 , - 16.565 , 0.304553318859 , - 16.57 , 0.293538129439739 , - 16.575 , 0.279551088336509 , - 16.58 , 0.263087654869009 , - 16.585 , 0.244637877428558 , - 16.59 , 0.224678132698894 , - 16.595 , 0.203690933512921 , - 16.6 , 0.182189070638557 , - 16.605 , 0.160712533967535 , - 16.61 , 0.139788985048289 , - 16.615 , 0.119849630257617 , - 16.62 , 0.101127004531768 , - 16.625 , 8.356184746823360E-02 , - 16.63 , 6.675788773408831E-02 , - 16.635 , 5.000422430522750E-02 , - 16.64 , 3.237781788478290E-02 , - 16.645 , 1.290492007865870E-02 , - 16.65 , -9.242841522190411E-03 , - 16.655 , -3.457307113926180E-02 , - 16.66 , -6.315044794397080E-02 , - 16.665 , -9.456431033805510E-02 , - 16.67 , -0.12798945588883 , - 16.675 , -0.16233338586658 , - 16.68 , -0.19643231791386 , - 16.685 , -0.22926030484873 , - 16.69 , -0.26010137973961 , - 16.695 , -0.28866176894499 , - 16.7 , -0.31509595200913 , - 16.705 , -0.33995273832631 , - 16.71 , -0.36405095016433 , - 16.715 , -0.38831357635509 , - 16.72 , -0.41358504112542 , - 16.725 , -0.44046253469103 , - 16.73 , -0.46915752304 , - 16.735 , -0.49941060932339 , - 16.74 , -0.53046223395319 , - 16.745 , -0.56108536534834 , - 16.75 , -0.58967419378453 , - 16.755 , -0.61438209498106 , - 16.76 , -0.63329121107995 , - 16.765 , -0.64459684400811 , - 16.77 , -0.64678096256853 , - 16.775 , -0.63875489537808 , - 16.78 , -0.61995220147847 , - 16.785 , -0.59036060295097 , - 16.79 , -0.55049669392639 , - 16.795 , -0.50133039140924 , - 16.8 , -0.44418245956687 , - 16.805 , -0.38061075875138 , - 16.81 , -0.31231562731901 , - 16.815 , -0.24106197922092 , - 16.82 , -0.1686326543263 , - 16.825 , -9.679598568714549E-02 , - 16.83 , -2.728380092511400E-02 , - 16.835 , 3.824293020108400E-02 , - 16.84 , 9.824002683071940E-02 , - 16.845 , 0.151346034414838 , - 16.85 , 0.196448639221428 , - 16.855 , 0.232748834021365 , - 16.86 , 0.259798117288868 , - 16.865 , 0.277506221603702 , - 16.87 , 0.286111918797314 , - 16.875 , 0.286131733842289 , - 16.88 , 0.278296735618878 , - 16.885 , 0.263498277115562 , - 16.89 , 0.24274886174333 , - 16.895 , 0.217166404345327 , - 16.9 , 0.187968246853482 , - 16.905 , 0.156461968787081 , - 16.91 , 0.124015045694316 , - 16.915 , 9.199139026589789E-02 , - 16.92 , 6.165693925050090E-02 , - 16.925 , 3.406870712543500E-02 , - 16.93 , 9.974305988061479E-03 , - 16.935 , -1.024803512308630E-02 , - 16.94 , -2.658403019625520E-02 , - 16.945 , -3.930334521456180E-02 , - 16.95 , -4.881605741987730E-02 , - 16.955 , -5.549717708582600E-02 , - 16.96 , -5.952392534556360E-02 , - 16.965 , -6.076975805147920E-02 , - 16.97 , -5.879314030308780E-02 , - 16.975 , -5.292859848425780E-02 , - 16.98 , -4.246799585244240E-02 , - 16.985 , -2.689000147691090E-02 , - 16.99 , -6.084643377645750E-03 , - 16.995 , 1.948494890135070E-02 , - 17.0 , 4.872381188647930E-02 , - 17.005 , 7.996838345792370E-02 , - 17.01 , 0.111158477862087 , - 17.015 , 0.140083752196672 , - 17.02 , 0.164651035916986 , - 17.025 , 0.18312224741681 , - 17.03 , 0.194279612887888 , - 17.035 , 0.197502657429334 , - 17.04 , 0.192756670137177 , - 17.045 , 0.180518699701142 , - 17.05 , 0.161669903280425 , - 17.055 , 0.137385815960322 , - 17.06 , 0.109043393552795 , - 17.065 , 7.814867623624100E-02 , - 17.07 , 4.627753286711330E-02 , - 17.075 , 1.501227171733180E-02 , - 17.08 , -1.413775130832270E-02 , - 17.085 , -3.983793711438840E-02 , - 17.09 , -6.104036519750250E-02 , - 17.095 , -7.708842285673501E-02 , - 17.1 , -8.778382263463140E-02 , - 17.105 , -9.339483606844121E-02 , - 17.11 , -9.459269265106150E-02 , - 17.115 , -9.232223501388739E-02 , - 17.12 , -8.763025422153840E-02 , - 17.125 , -8.148499770125020E-02 , - 17.13 , -7.462775457220110E-02 , - 17.135 , -6.748324353623050E-02 , - 17.14 , -6.014609852966310E-02 , - 17.145 , -5.243702915474610E-02 , - 17.15 , -4.400785444844100E-02 , - 17.155 , -3.446180958692290E-02 , - 17.16 , -2.345792198001310E-02 , - 17.165 , -1.077394978512690E-02 , - 17.17 , 3.679128728274960E-03 , - 17.175 , 1.988574043577430E-02 , - 17.18 , 3.777667605297300E-02 , - 17.185 , 5.727939847072780E-02 , - 17.19 , 7.834501552629659E-02 , - 17.195 , 0.100944016898245 , - 17.2 , 0.125030824710985 , - 17.205 , 0.150493723897266 , - 17.21 , 0.177105725250697 , - 17.215 , 0.204499198588219 , - 17.22 , 0.232171627050269 , - 17.225 , 0.259522952289019 , - 17.23 , 0.28591162656688 , - 17.235 , 0.310713017545991 , - 17.24 , 0.333360202463241 , - 17.245 , 0.353356491062333 , - 17.25 , 0.370257070307643 , - 17.255 , 0.383631410780558 , - 17.26 , 0.393022771718625 , - 17.265 , 0.397924531915073 , - 17.27 , 0.397789484581034 , - 17.275 , 0.392075448648513 , - 17.28 , 0.380321842357972 , - 17.285 , 0.362236624526743 , - 17.29 , 0.337775799625786 , - 17.295 , 0.307187618217491 , - 17.3 , 0.271012952518342 , - 17.305 , 0.230034748672592 , - 17.31 , 0.185192192119736 , - 17.315 , 0.1374724900416 , - 17.32 , 8.781061932229070E-02 , - 17.325 , 3.701123827098990E-02 , - 17.33 , -1.428322820528750E-02 , - 17.335 , -6.558572925239700E-02 , - 17.34 , -0.11651660768663 , - 17.345 , -0.16673628393002 , - 17.35 , -0.21587015869355 , - 17.355 , -0.26345095520442 , - 17.36 , -0.30888431890374 , - 17.365 , -0.35145163113226 , - 17.37 , -0.39033885127352 , - 17.375 , -0.42469770664605 , - 17.38 , -0.45371821850159 , - 17.385 , -0.4767087589838 , - 17.39 , -0.49316630884791 , - 17.395 , -0.50283205552792 , - 17.4 , -0.50572081737774 , - 17.405 , -0.50212196719028 , - 17.41 , -0.49256808518885 , - 17.415 , -0.47777707225688 , - 17.42 , -0.45857357564831 , - 17.425 , -0.43580164741667 , - 17.43 , -0.41024501009179 , - 17.435 , -0.3825675139441 , - 17.44 , -0.35328788816102 , - 17.445 , -0.32279085797443 , - 17.45 , -0.29137731320226 , - 17.455 , -0.25933449326509 , - 17.46 , -0.2270143702293 , - 17.465 , -0.19489381305459 , - 17.47 , -0.16360264699467 , - 17.475 , -0.1339028594142 , - 17.48 , -0.1066224111889 , - 17.485 , -8.254834652459410E-02 , - 17.49 , -6.230534889079800E-02 , - 17.495 , -4.623541755964700E-02 , - 17.5 , -3.430878641434340E-02 , - 17.505 , -2.607920373761460E-02 , - 17.51 , -2.069570607448080E-02 , - 17.515 , -1.696571448514850E-02 , - 17.52 , -1.346258488402600E-02 , - 17.525 , -8.657687814216761E-03 , - 17.53 , -1.066706267368470E-03 , - 17.535 , 1.061426833550790E-02 , - 17.54 , 2.738663947692650E-02 , - 17.545 , 4.985546977711610E-02 , - 17.55 , 7.816411304470480E-02 , - 17.555 , 0.111966131087412 , - 17.56 , 0.150434055062022 , - 17.565 , 0.19231308509617 , - 17.57 , 0.236013378779133 , - 17.575 , 0.279746002917216 , - 17.58 , 0.321684272405146 , - 17.585 , 0.360138883852544 , - 17.59 , 0.393718048669997 , - 17.595 , 0.421452589177563 , - 17.6 , 0.442859042866297 , - 17.605 , 0.457932285135102 , - 17.61 , 0.467063199142238 , - 17.615 , 0.470901203329776 , - 17.62 , 0.470183933061112 , - 17.625 , 0.465570499510758 , - 17.63 , 0.457509881267887 , - 17.635 , 0.446170505322342 , - 17.64 , 0.431441044905879 , - 17.645 , 0.412997059132728 , - 17.65 , 0.390417907394592 , - 17.655 , 0.363320032948617 , - 17.66 , 0.331482683771369 , - 17.665 , 0.294935652090983 , - 17.67 , 0.254001046090184 , - 17.675 , 0.209280977845859 , - 17.68 , 0.161607754445718 , - 17.685 , 0.111965960430188 , - 17.69 , 6.141586922651330E-02 , - 17.695 , 1.102093548815530E-02 , - 17.7 , -3.820203658969610E-02 , - 17.705 , -8.531704155098779E-02 , - 17.71 , -0.1294862669167 , - 17.715 , -0.16998594459785 , - 17.72 , -0.20622064042651 , - 17.725 , -0.23774591935919 , - 17.73 , -0.26428840511531 , - 17.735 , -0.28576606331927 , - 17.74 , -0.30229286763517 , - 17.745 , -0.31416772926296 , - 17.75 , -0.3218406535065 , - 17.755 , -0.3258645654062 , - 17.76 , -0.32683843068621 , - 17.765 , -0.32535588224289 , - 17.77 , -0.32196457829868 , - 17.775 , -0.31715006731732 , - 17.78 , -0.31133941077337 , - 17.785 , -0.30492235408688 , - 17.79 , -0.29827929738639 , - 17.795 , -0.29180571311681 , - 17.8 , -0.2859227673159 , - 17.805 , -0.2810686116836 , - 17.81 , -0.27767024271612 , - 17.815 , -0.27609995179852 , - 17.82 , -0.27662600365925 , - 17.825 , -0.27936632736658 , - 17.83 , -0.28425416349301 , - 17.835 , -0.29102164261339 , - 17.84 , -0.29920350847177 , - 17.845 , -0.30815897987418 , - 17.85 , -0.31710995942421 , - 17.855 , -0.32518836729579 , - 17.86 , -0.33149006868417 , - 17.865 , -0.33512980995752 , - 17.87 , -0.33529555909469 , - 17.875 , -0.3312973400369 , - 17.88 , -0.32261024125577 , - 17.885 , -0.30890529900639 , - 17.89 , -0.290070720818 , - 17.895 , -0.26621431048452 , - 17.9 , -0.23765242692415 , - 17.905 , -0.20488114286083 , - 17.91 , -0.16853769940936 , - 17.915 , -0.12935252659241 , - 17.92 , -8.810348127193721E-02 , - 17.925 , -4.557141302171240E-02 , - 17.93 , -2.513356389291560E-03 , - 17.935 , 4.035724323904150E-02 , - 17.94 , 8.237249752346711E-02 , - 17.945 , 0.122904827481364 , - 17.95 , 0.16135335850423 , - 17.955 , 0.197135089796928 , - 17.96 , 0.229680590055412 , - 17.965 , 0.258445542327015 , - 17.97 , 0.282931564681535 , - 17.975 , 0.3027256078172 , - 17.98 , 0.317544225316334 , - 17.985 , 0.327282981257925 , - 17.99 , 0.332055566875123 , - 17.995 , 0.332219078215985 , - 18.0 , 0.328372664764279 , - 18.005 , 0.321327968541342 , - 18.01 , 0.312046315167661 , - 18.015 , 0.301552393558308 , - 18.02 , 0.29083015000257 , - 18.025 , 0.280717140577436 , - 18.03 , 0.271812862742294 , - 18.035 , 0.264416834319869 , - 18.04 , 0.258507921567912 , - 18.045 , 0.25377043717894 , - 18.05 , 0.249664740892512 , - 18.055 , 0.245531784942376 , - 18.06 , 0.240715666971269 , - 18.065 , 0.234683989615924 , - 18.07 , 0.227126896191005 , - 18.075 , 0.218018915200585 , - 18.08 , 0.207635259720329 , - 18.085 , 0.196519817484055 , - 18.09 , 0.185413864456323 , - 18.095 , 0.175156074068905 , - 18.1 , 0.166570903921847 , - 18.105 , 0.160362276331594 , - 18.11 , 0.157026715204937 , - 18.115 , 0.156797444080986 , - 18.12 , 0.159624455669982 , - 18.125 , 0.16519187224497 , - 18.13 , 0.172968089200864 , - 18.135 , 0.1822813476427 , - 18.14 , 0.192409206882619 , - 18.145 , 0.202670276399768 , - 18.15 , 0.212504752944377 , - 18.155 , 0.221533110089593 , - 18.16 , 0.229583054017435 , - 18.165 , 0.236681693233947 , - 18.17 , 0.24301317231324 , - 18.175 , 0.248850323481097 , - 18.18 , 0.254471744041749 , - 18.185 , 0.260080804366178 , - 18.19 , 0.265741889443548 , - 18.195 , 0.27134643214208 , - 18.2 , 0.276614811069614 , - 18.205 , 0.281132591864889 , - 18.21 , 0.284412543870369 , - 18.215 , 0.285966261493111 , - 18.22 , 0.28537109719781 , - 18.225 , 0.282316011041418 , - 18.23 , 0.276621372715182 , - 18.235 , 0.268228573189369 , - 18.24 , 0.257171332184819 , - 18.245 , 0.243536231265936 , - 18.25 , 0.227433656521336 , - 18.255 , 0.208982058948683 , - 18.26 , 0.188316971988387 , - 18.265 , 0.165617801602736 , - 18.27 , 0.141146408794358 , - 18.275 , 0.115280086715596 , - 18.28 , 8.852986599304000E-02 , - 18.285 , 6.153122175946150E-02 , - 18.29 , 3.501087677361560E-02 , - 18.295 , 9.728375745511450E-03 , - 18.3 , -1.358945599970610E-02 , - 18.305 , -3.431372431462720E-02 , - 18.31 , -5.195992570184670E-02 , - 18.315 , -6.621459033346280E-02 , - 18.32 , -7.693590669330690E-02 , - 18.325 , -8.413813135115721E-02 , - 18.33 , -8.796246104481401E-02 , - 18.335 , -8.865026558137970E-02 , - 18.34 , -8.651948855745679E-02 , - 18.345 , -8.194991749053140E-02 , - 18.35 , -7.537263942731640E-02 , - 18.355 , -6.726122085666700E-02 , - 18.36 , -5.811712688388060E-02 , - 18.365 , -4.844978592925620E-02 , - 18.37 , -3.874961154322750E-02 , - 18.375 , -2.946321539637920E-02 , - 18.38 , -2.097389378477130E-02 , - 18.385 , -1.359774681728760E-02 , - 18.39 , -7.592927023032140E-03 , - 18.395 , -3.182771456432360E-03 , - 18.4 , -5.797783397815400E-04 , - 18.405 , -3.403899532317900E-06 , - 18.41 , -1.673453644507240E-03 , - 18.415 , -5.782448384807060E-03 , - 18.42 , -1.244176672900140E-02 , - 18.425 , -2.161800758848600E-02 , - 18.43 , -3.307323100644420E-02 , - 18.435 , -4.633260284878780E-02 , - 18.44 , -6.069252068692880E-02 , - 18.445 , -7.527964829315580E-02 , - 18.45 , -8.915230216299309E-02 , - 18.455 , -0.10143296879817 , - 18.46 , -0.11144311748952 , - 18.465 , -0.11881688272356 , - 18.47 , -0.12356683521081 , - 18.475 , -0.12609239258508 , - 18.48 , -0.12712667509216 , - 18.485 , -0.12763705192334 , - 18.49 , -0.12869455777906 , - 18.495 , -0.13134291006952 , - 18.5 , -0.13648385782305 , - 18.505 , -0.14479654925278 , - 18.51 , -0.15669435068272 , - 18.515 , -0.17231899455012 , - 18.52 , -0.19156053351027 , - 18.525 , -0.2140948418449 , - 18.53 , -0.23942532421762 , - 18.535 , -0.26692808116807 , - 18.54 , -0.29589366741626 , - 18.545 , -0.32556987300455 , - 18.55 , -0.35520167089443 , - 18.555 , -0.38407157568151 , - 18.56 , -0.41153207462536 , - 18.565 , -0.43702839771631 , - 18.57 , -0.46010162556848 , - 18.575 , -0.4803753536196 , - 18.58 , -0.49752469104796 , - 18.585 , -0.51123932275576 , - 18.59 , -0.52119100580172 , - 18.595 , -0.52702031860061 , - 18.6 , -0.52835074084744 , - 18.605 , -0.52483178107225 , - 18.61 , -0.51620504117931 , - 18.615 , -0.50237569943468 , - 18.62 , -0.4834730346886 , - 18.625 , -0.45987873870396 , - 18.63 , -0.43221396453591 , - 18.635 , -0.40128199130244 , - 18.64 , -0.36797809251035 , - 18.645 , -0.33318247540211 , - 18.65 , -0.2976655847206 , - 18.655 , -0.26201863587465 , - 18.66 , -0.22662902367112 , - 18.665 , -0.19169728326541 , - 18.67 , -0.15729264669158 , - 18.675 , -0.1234229501959 , - 18.68 , -9.010582719609091E-02 , - 18.685 , -5.741817970014060E-02 , - 18.69 , -2.552248385036910E-02 , - 18.695 , 5.339196527069970E-03 , - 18.7 , 3.486712311982680E-02 , - 18.705 , 6.273660435450590E-02 , - 18.71 , 8.862290998998250E-02 , - 18.715 , 0.112218745947816 , - 18.72 , 0.133237764611335 , - 18.725 , 0.151417354399901 , - 18.73 , 0.166520793732197 , - 18.735 , 0.178358092928635 , - 18.74 , 0.186819039757722 , - 18.745 , 0.191918879888126 , - 18.75 , 0.193841382081441 , - 18.755 , 0.192966026117615 , - 18.76 , 0.189861849245228 , - 18.765 , 0.185243424802453 , - 18.77 , 0.179886808055877 , - 18.775 , 0.174523130427245 , - 18.78 , 0.169727209876345 , - 18.785 , 0.165828266795135 , - 18.79 , 0.162860717438664 , - 18.795 , 0.160568509105303 , - 18.8 , 0.158460262202499 , - 18.805 , 0.155903588032585 , - 18.81 , 0.152236721793017 , - 18.815 , 0.146874335438137 , - 18.82 , 0.139388100075902 , - 18.825 , 0.129551248829624 , - 18.83 , 0.117346184292776 , - 18.835 , 0.102944396398025 , - 18.84 , 8.667203203856250E-02 , - 18.845 , 6.897292950992250E-02 , - 18.85 , 5.037981195577830E-02 , - 18.855 , 3.149222301298260E-02 , - 18.86 , 1.295788909713510E-02 , - 18.865 , -4.552694712540460E-03 , - 18.87 , -2.038471143298640E-02 , - 18.875 , -3.395374370024890E-02 , - 18.88 , -4.480974308295430E-02 , - 18.885 , -5.269874412847760E-02 , - 18.89 , -5.760475116618620E-02 , - 18.895 , -5.975782869643340E-02 , - 18.9 , -5.959990728708000E-02 , - 18.905 , -5.771202182665640E-02 , - 18.91 , -5.471620957553570E-02 , - 18.915 , -5.117481281717030E-02 , - 18.92 , -4.751155121434680E-02 , - 18.925 , -4.397377050356170E-02 , - 18.93 , -4.064613036051550E-02 , - 18.935 , -3.750986634275660E-02 , - 18.94 , -3.453164301123860E-02 , - 18.945 , -3.175456679161500E-02 , - 18.95 , -2.936540580184520E-02 , - 18.955 , -2.771540773125420E-02 , - 18.96 , -2.728673446781490E-02 , - 18.965 , -2.860928038065850E-02 , - 18.97 , -3.214733887015950E-02 , - 18.975 , -3.818284412564310E-02 , - 18.98 , -4.672302188795090E-02 , - 18.985 , -5.745461744704080E-02 , - 18.99 , -6.975424591801779E-02 , - 18.995 , -8.275205425474760E-02 , - 19.0 , -9.543348500501039E-02 , - 19.005 , -0.10675671144965 , - 19.01 , -0.11576388175306 , - 19.015 , -0.12166743333762 , - 19.02 , -0.12390264431233 , - 19.025 , -0.12214656117846 , - 19.03 , -0.11631154879176 , - 19.035 , -0.10652423304446 , - 19.04 , -9.310118520163460E-02 , - 19.045 , -7.652590539072700E-02 , - 19.05 , -5.743089586506230E-02 , - 19.055 , -3.657596705689010E-02 , - 19.06 , -1.481925977005460E-02 , - 19.065 , 6.926924474783110E-03 , - 19.07 , 2.775463368340260E-02 , - 19.075 , 4.683156424739500E-02 , - 19.08 , 6.347270763070770E-02 , - 19.085 , 7.720227146370970E-02 , - 19.09 , 8.779042470764520E-02 , - 19.095 , 9.526029188212271E-02 , - 19.1 , 9.986040447199600E-02 , - 19.105 , 0.102009856725406 , - 19.11 , 0.102225525300876 , - 19.115 , 0.101047428528718 , - 19.12 , 9.897427931868839E-02 , - 19.125 , 9.642072648080460E-02 , - 19.13 , 9.369918170530429E-02 , - 19.135 , 9.102713402201090E-02 , - 19.14 , 8.855073690832560E-02 , - 19.145 , 8.637784747202421E-02 , - 19.15 , 8.460889194052530E-02 , - 19.155 , 8.335969452805890E-02 , - 19.16 , 8.277035792073900E-02 , - 19.165 , 8.300094888178290E-02 , - 19.17 , 8.421449446395760E-02 , - 19.175 , 8.655290215462839E-02 , - 19.18 , 9.010941198122500E-02 , - 19.185 , 9.490288969345520E-02 , - 19.19 , 0.100856185025776 , - 19.195 , 0.107783589409055 , - 19.2 , 0.115386291208123 , - 19.205 , 0.123260349877366 , - 19.21 , 0.130913935378 , - 19.215 , 0.137796521245135 , - 19.22 , 0.143335849367096 , - 19.225 , 0.14698030532155 , - 19.23 , 0.148242029288944 , - 19.235 , 0.146735661784648 , - 19.24 , 0.142208324703231 , - 19.245 , 0.134556865273917 , - 19.25 , 0.123832305128576 , - 19.255 , 0.110231039547548 , - 19.26 , 9.407703422254150E-02 , - 19.265 , 7.579763962651660E-02 , - 19.27 , 5.589930332000480E-02 , - 19.275 , 3.494345559651580E-02 , - 19.28 , 1.352655612925890E-02 , - 19.285 , -7.738281430620860E-03 , - 19.29 , -2.823640126172170E-02 , - 19.295 , -4.736851280459840E-02 , - 19.3 , -6.456726778946650E-02 , - 19.305 , -7.931522042729799E-02 , - 19.31 , -9.116146754991310E-02 , - 19.315 , -9.973543395603350E-02 , - 19.32 , -0.10475595669325 , - 19.325 , -0.10603430822357 , - 19.33 , -0.10347284701214 , - 19.335 , -9.706124752024230E-02 , - 19.34 , -8.687430152469530E-02 , - 19.345 , -7.307405512475940E-02 , - 19.35 , -5.591887411984520E-02 , - 19.355 , -3.577706479529710E-02 , - 19.36 , -1.314335388833300E-02 , - 19.365 , 1.134983613684490E-02 , - 19.37 , 3.693079681400050E-02 , - 19.375 , 6.270474265740390E-02 , - 19.38 , 8.768905345507640E-02 , - 19.385 , 0.1108686368144 , - 19.39 , 0.1312644416171 , - 19.395 , 0.148009041167522 , - 19.4 , 0.160416739422417 , - 19.405 , 0.168040427167663 , - 19.41 , 0.170704607506662 , - 19.415 , 0.168512624998284 , - 19.42 , 0.161826470167071 , - 19.425 , 0.151223327305197 , - 19.43 , 0.137436526462059 , - 19.435 , 0.12128787067038 , - 19.44 , 0.103621500126964 , - 19.445 , 8.524411667406280E-02 , - 19.45 , 6.687930552254420E-02 , - 19.455 , 4.913589731864990E-02 , - 19.46 , 3.249281642772610E-02 , - 19.465 , 1.729796363375550E-02 , - 19.47 , 3.779772699936010E-03 , - 19.475 , -7.933453913126739E-03 , - 19.48 , -1.778837362450150E-02 , - 19.485 , -2.578180319663970E-02 , - 19.49 , -3.193743546434960E-02 , - 19.495 , -3.628975661666560E-02 , - 19.5 , -3.887558954382360E-02 , - 19.505 , -3.973470241057670E-02 , - 19.51 , -3.891788867951480E-02 , - 19.515 , -3.649986139114820E-02 , - 19.52 , -3.259249709820460E-02 , - 19.525 , -2.735427053548850E-02 , - 19.53 , -2.099133842643200E-02 , - 19.535 , -1.374830536741160E-02 , - 19.54 , -5.887877188928280E-03 , - 19.545 , 2.336959611728440E-03 , - 19.55 , 1.071436148192050E-02 , - 19.555 , 1.910203440373310E-02 , - 19.56 , 2.744608047788240E-02 , - 19.565 , 3.578603089731680E-02 , - 19.57 , 4.424249115467690E-02 , - 19.575 , 5.298918396292150E-02 , - 19.58 , 6.221237826554930E-02 , - 19.585 , 7.206505940082400E-02 , - 19.59 , 8.262287004060030E-02 , - 19.595 , 9.385089818082880E-02 , - 19.6 , 0.105586535210159 , - 19.605 , 0.117542979202558 , - 19.61 , 0.129332330456747 , - 19.615 , 0.140505656304056 , - 19.62 , 0.150602470682144 , - 19.625 , 0.159201510072528 , - 19.63 , 0.165963272203869 , - 19.635 , 0.170657754779367 , - 19.64 , 0.173171986392552 , - 19.645 , 0.173497060176099 , - 19.65 , 0.171698563869022 , - 19.655 , 0.167877117650055 , - 19.66 , 0.162128958008132 , - 19.665 , 0.154515020640188 , - 19.67 , 0.145047978425579 , - 19.675 , 0.133699089240968 , - 19.68 , 0.120425826006013 , - 19.685 , 0.105211954035009 , - 19.69 , 8.811482794436119E-02 , - 19.695 , 6.930362885349300E-02 , - 19.7 , 4.908317786948910E-02 , - 19.705 , 2.789284466062680E-02 , - 19.71 , 6.282684187232620E-03 , - 19.715 , -1.513293891731910E-02 , - 19.72 , -3.573219349475490E-02 , - 19.725 , -5.494565996060560E-02 , - 19.73 , -7.230331792209500E-02 , - 19.735 , -8.746611435403620E-02 , - 19.74 , -0.10023408196077 , - 19.745 , -0.11053680897542 , - 19.75 , -0.11840927699064 , - 19.755 , -0.12396609115553 , - 19.76 , -0.12737940482213 , - 19.765 , -0.12886942680431 , - 19.77 , -0.12870508549978 , - 19.775 , -0.12721486235372 , - 19.78 , -0.12479696224801 , - 19.785 , -0.12192134851853 , - 19.79 , -0.11911512331687 , - 19.795 , -0.11692852296234 , - 19.8 , -0.1158828122011 , - 19.805 , -0.11640862718208 , - 19.81 , -0.11878469144379 , - 19.815 , -0.12309145404105 , - 19.82 , -0.12918833366224 , - 19.825 , -0.13672125838288 , - 19.83 , -0.14515938284391 , - 19.835 , -0.15385497532022 , - 19.84 , -0.16211467849934 , - 19.845 , -0.16927092799142 , - 19.85 , -0.1747405815055 , - 19.855 , -0.17806542050622 , - 19.86 , -0.17893075004105 , - 19.865 , -0.17716517197334 , - 19.87 , -0.1727273398208 , - 19.875 , -0.16568659834495 , - 19.88 , -0.15620370102824 , - 19.885 , -0.14451379659869 , - 19.89 , -0.13091402606184 , - 19.895 , -0.11575112780621 , - 19.9 , -9.940839096806510E-02 , - 19.905 , -8.228798219382000E-02 , - 19.91 , -6.479104079602420E-02 , - 19.915 , -4.729626907194930E-02 , - 19.92 , -3.014389625728430E-02 , - 19.925 , -1.362770379699480E-02 , - 19.93 , 1.998432435284760E-03 , - 19.935 , 1.650283145918720E-02 , - 19.94 , 2.964895620060110E-02 , - 19.945 , 4.116860136833410E-02 , - 19.95 , 5.074351304162170E-02 , - 19.955 , 5.800645031803000E-02 , - 19.96 , 6.256532313956960E-02 , - 19.965 , 6.405233292472851E-02 , - 19.97 , 6.218959865152200E-02 , - 19.975 , 5.686184515599930E-02 , - 19.98 , 4.817972906533240E-02 , - 19.985 , 3.651967859402010E-02 , - 19.99 , 2.252985493696160E-02 , - 19.995 , 7.097071756102240E-03 , - 20.0 , -8.721812839652310E-03 , - 20.005 , -2.379447424676810E-02 , - 20.01 , -3.701839037090120E-02 , - 20.015 , -4.742092878891140E-02 , - 20.02 , -5.423951270215350E-02 , - 20.025 , -5.697258922350620E-02 , - 20.03 , -5.539776158916270E-02 , - 20.035 , -4.956057087520670E-02 , - 20.04 , -3.974179526714170E-02 , - 20.045 , -2.641288342533750E-02 , - 20.05 , -1.019081782994870E-02 , - 20.055 , 8.202447545571230E-03 , - 20.06 , 2.797116679219240E-02 , - 20.065 , 4.827036868959560E-02 , - 20.07 , 6.822566739672180E-02 , - 20.075 , 8.695562572496580E-02 , - 20.08 , 0.103598292547575 , - 20.085 , 0.117345557097572 , - 20.09 , 0.127481089438341 , - 20.095 , 0.133420394415517 , - 20.1 , 0.134744188882336 , - 20.105 , 0.131221676654994 , - 20.11 , 0.122818973076751 , - 20.115 , 0.109691680974573 , - 20.12 , 9.216522604322611E-02 , - 20.125 , 7.070600814518090E-02 , - 20.13 , 4.589147778332150E-02 , - 20.135 , 1.838180387523030E-02 , - 20.14 , -1.110108370552780E-02 , - 20.145 , -4.178877084026370E-02 , - 20.15 , -7.287571484484311E-02 , - 20.155 , -0.10352963470195 , - 20.16 , -0.13290387884342 , - 20.165 , -0.16015839093613 , - 20.17 , -0.18448715088686 , - 20.175 , -0.20515328670567 , - 20.18 , -0.22152568111903 , - 20.185 , -0.23311328473587 , - 20.19 , -0.23959100455607 , - 20.195 , -0.24081433909493 , - 20.2 , -0.23682050088862 , - 20.205 , -0.22781739014645 , - 20.21 , -0.21416412518464 , - 20.215 , -0.19634582016096 , - 20.22 , -0.17494767238438 , - 20.225 , -0.15062916150452 , - 20.23 , -0.12410162176008 , - 20.235 , -9.610482601536199E-02 , - 20.24 , -6.738446390246500E-02 , - 20.245 , -3.866506506796110E-02 , - 20.25 , -1.062408132283030E-02 , - 20.255 , 1.613821656425260E-02 , - 20.26 , 4.112363448240460E-02 , - 20.265 , 6.395563455415000E-02 , - 20.27 , 8.438638743734070E-02 , - 20.275 , 0.10229225024046 , - 20.28 , 0.11765525248804 , - 20.285 , 0.13053719119583 , - 20.29 , 0.141047644803831 , - 20.295 , 0.14931741898274 , - 20.3 , 0.155478926240496 , - 20.305 , 0.159660339201315 , - 20.31 , 0.161990227205732 , - 20.315 , 0.162612590283051 , - 20.32 , 0.161703234926074 , - 20.325 , 0.159483350064339 , - 20.33 , 0.156221155279841 , - 20.335 , 0.152221918187124 , - 20.34 , 0.147804677752111 , - 20.345 , 0.143271172359312 , - 20.35 , 0.138873332096741 , - 20.355 , 0.134787926819641 , - 20.36 , 0.131103697853831 , - 20.365 , 0.127825557460833 , - 20.37 , 0.12489405648423 , - 20.375 , 0.122216684366155 , - 20.38 , 0.119703338338164 , - 20.385 , 0.117298332826065 , - 20.39 , 0.115002111347558 , - 20.395 , 0.1128792665639 , - 20.4 , 0.111051600017025 , - 20.405 , 0.109680624221402 , - 20.41 , 0.108942958893076 , - 20.415 , 0.109006468464252 , - 20.42 , 0.110010955231372 , - 20.425 , 0.112056904842183 , - 20.43 , 0.115202427994996 , - 20.435 , 0.119466647868312 , - 20.44 , 0.124835559019734 , - 20.445 , 0.131267773242386 , - 20.45 , 0.138696105432056 , - 20.455 , 0.14702533406325 , - 20.46 , 0.156125727838975 , - 20.465 , 0.165825042690333 , - 20.47 , 0.0 , - ), - INTERPOL='LIN', - PROL_DROITE='CONSTANT', - PROL_GAUCHE='EXCLU',); - - -ACCELV1=DEFI_FONCTION(NOM_PARA='INST', - VALE= -( - 0.0 , 0.0 , - 1.000000000000000E-02 , 1.310000000000000E-03 , - 2.000000000000000E-02 , 7.200000000000000E-04 , - 3.000000000000000E-02 , -1.160000000000000E-03 , - 4.000000000000000E-02 , -4.010000000000000E-03 , - 5.000000000000000E-02 , -8.580000000000001E-03 , - 6.000000000000000E-02 , -1.459000000000000E-02 , - 7.000000000000001E-02 , -1.920000000000000E-02 , - 8.000000000000000E-02 , -1.947000000000000E-02 , - 9.000000000000000E-02 , -1.781000000000000E-02 , - 0.1 , -1.970000000000000E-02 , - 0.11 , -2.520000000000000E-02 , - 0.12 , -3.281000000000000E-02 , - 0.13 , -4.377000000000000E-02 , - 0.14 , -5.504000000000000E-02 , - 0.15 , -5.797000000000000E-02 , - 0.16 , -4.627000000000000E-02 , - 0.17 , -2.536000000000000E-02 , - 0.18 , -6.700000000000000E-03 , - 0.19 , 7.849999999999999E-03 , - 0.2 , 2.168000000000000E-02 , - 0.21 , 3.643000000000000E-02 , - 0.22 , 5.686000000000000E-02 , - 0.23 , 8.019999999999999E-02 , - 0.24 , 8.942000000000000E-02 , - 0.25 , 7.790000000000000E-02 , - 0.26 , 6.301000000000000E-02 , - 0.27 , 5.860000000000000E-02 , - 0.28 , 5.444000000000000E-02 , - 0.29 , 3.314000000000000E-02 , - 0.3 , -4.730000000000000E-03 , - 0.31 , -3.492000000000000E-02 , - 0.32 , -3.413000000000000E-02 , - 0.33 , -7.530000000000000E-03 , - 0.34 , 1.991000000000000E-02 , - 0.35 , 2.983000000000000E-02 , - 0.36 , 2.482000000000000E-02 , - 0.37 , 1.676000000000000E-02 , - 0.38 , 4.890000000000000E-03 , - 0.39 , -1.521000000000000E-02 , - 0.4 , -3.575000000000000E-02 , - 0.41 , -5.053000000000000E-02 , - 0.42 , -6.325000000000000E-02 , - 0.43 , -7.273000000000000E-02 , - 0.44 , -7.520000000000000E-02 , - 0.45 , -8.463000000000000E-02 , - 0.46 , -0.11597 , - 0.47 , -0.1564 , - 0.48 , -0.18027 , - 0.49 , -0.17201 , - 0.5 , -0.13845 , - 0.51 , -0.1016 , - 0.52 , -6.390999999999999E-02 , - 0.53 , -1.035000000000000E-02 , - 0.54 , 5.961000000000000E-02 , - 0.55 , 0.12972 , - 0.56 , 0.18788 , - 0.57 , 0.23015 , - 0.58 , 0.23082 , - 0.59 , 0.1643 , - 0.6 , 6.750000000000000E-02 , - 0.61 , 7.450000000000000E-03 , - 0.62 , 1.664000000000000E-02 , - 0.63 , 8.058000000000000E-02 , - 0.64 , 0.15546 , - 0.65 , 0.2133 , - 0.66 , 0.24265 , - 0.67 , 0.21922 , - 0.68 , 0.1295 , - 0.69 , 1.220000000000000E-03 , - 0.7 , -0.12397 , - 0.71 , -0.1882 , - 0.72 , -0.17059 , - 0.73 , -0.11119 , - 0.74 , -9.375000000000000E-02 , - 0.75 , -0.15419 , - 0.76 , -0.21371 , - 0.77 , -0.19269 , - 0.78 , -0.12556 , - 0.79 , -8.054000000000000E-02 , - 0.8 , -5.658000000000000E-02 , - 0.81 , -2.563000000000000E-02 , - 0.82 , -1.082000000000000E-02 , - 0.83 , -6.067000000000000E-02 , - 0.84 , -0.16876 , - 0.85 , -0.26933 , - 0.86 , -0.31693 , - 0.87 , -0.3189 , - 0.88 , -0.31999 , - 0.89 , -0.32387 , - 0.9 , -0.35623 , - 0.91 , -0.38483 , - 0.92 , -0.36307 , - 0.93 , -0.29278 , - 0.94 , -0.18821 , - 0.95 , -6.119000000000000E-02 , - 0.96 , 3.932000000000000E-02 , - 0.97 , 7.092000000000000E-02 , - 0.98 , 3.394000000000000E-02 , - 0.99 , 1.056000000000000E-02 , - 1.0 , 3.006000000000000E-02 , - 1.01 , 4.384000000000000E-02 , - 1.02 , 1.582000000000000E-02 , - 1.03 , -2.452000000000000E-02 , - 1.04 , -3.991000000000000E-02 , - 1.05 , -4.053000000000000E-02 , - 1.06 , -4.416000000000000E-02 , - 1.07 , -6.185000000000000E-02 , - 1.08 , -0.10165 , - 1.09 , -0.13542 , - 1.1 , -0.142 , - 1.11 , -0.13819 , - 1.12 , -0.13187 , - 1.13 , -0.11765 , - 1.14 , -8.853000000000000E-02 , - 1.15 , -4.957000000000000E-02 , - 1.16 , -2.751000000000000E-02 , - 1.17 , -4.837000000000000E-02 , - 1.18 , -0.11303 , - 1.19 , -0.16115 , - 1.2 , -0.1365 , - 1.21 , -9.369000000000000E-02 , - 1.22 , -0.10681 , - 1.23 , -0.16911 , - 1.24 , -0.23593 , - 1.25 , -0.27067 , - 1.26 , -0.27471 , - 1.27 , -0.25731 , - 1.28 , -0.19103 , - 1.29 , -7.716000000000001E-02 , - 1.3 , 1.100000000000000E-03 , - 1.31 , -4.582000000000000E-02 , - 1.32 , -0.19352 , - 1.33 , -0.32144 , - 1.34 , -0.37399 , - 1.35 , -0.40308 , - 1.36 , -0.45452 , - 1.37 , -0.51071 , - 1.38 , -0.52231 , - 1.39 , -0.45018 , - 1.4 , -0.30537 , - 1.41 , -0.15517 , - 1.42 , -7.362000000000000E-02 , - 1.43 , -9.615000000000000E-02 , - 1.44 , -0.17148 , - 1.45 , -0.17476 , - 1.46 , -8.399000000000000E-02 , - 1.47 , -2.696000000000000E-02 , - 1.48 , -6.808000000000000E-02 , - 1.49 , -0.12817 , - 1.5 , -0.12265 , - 1.51 , -6.149000000000000E-02 , - 1.52 , -8.380000000000000E-03 , - 1.53 , 1.139000000000000E-02 , - 1.54 , 5.830000000000000E-03 , - 1.55 , -2.002000000000000E-02 , - 1.56 , -3.584000000000000E-02 , - 1.57 , -1.060000000000000E-03 , - 1.58 , 6.028000000000000E-02 , - 1.59 , 8.509000000000000E-02 , - 1.6 , 9.515000000000000E-02 , - 1.61 , 0.14372 , - 1.62 , 0.17863 , - 1.63 , 0.16098 , - 1.64 , 0.15227 , - 1.65 , 0.16265 , - 1.66 , 0.1009 , - 1.67 , -8.347000000000000E-02 , - 1.68 , -0.28571 , - 1.69 , -0.3845 , - 1.7 , -0.42649 , - 1.71 , -0.48045 , - 1.72 , -0.48546 , - 1.73 , -0.34744 , - 1.74 , -4.460000000000000E-02 , - 1.75 , 0.31704 , - 1.76 , 0.56244 , - 1.77 , 0.61288 , - 1.78 , 0.56235 , - 1.79 , 0.56046 , - 1.8 , 0.58601 , - 1.81 , 0.50428 , - 1.82 , 0.34783 , - 1.83 , 0.2707 , - 1.84 , 0.32579 , - 1.85 , 0.43838 , - 1.86 , 0.49734 , - 1.87 , 0.46993 , - 1.88 , 0.42104 , - 1.89 , 0.39656 , - 1.9 , 0.37011 , - 1.91 , 0.3211 , - 1.92 , 0.27122 , - 1.93 , 0.2175 , - 1.94 , 0.1251 , - 1.95 , 3.090000000000000E-03 , - 1.96 , -9.401000000000000E-02 , - 1.97 , -0.13751 , - 1.98 , -0.12623 , - 1.99 , -3.147000000000000E-02 , - 2.0 , 0.15999 , - 2.01 , 0.39077 , - 2.02 , 0.57348 , - 2.03 , 0.61086 , - 2.04 , 0.4807 , - 2.05 , 0.29864 , - 2.06 , 0.18108 , - 2.07 , 0.167 , - 2.08 , 0.23579 , - 2.09 , 0.28543 , - 2.1 , 0.21887 , - 2.11 , 6.136000000000000E-02 , - 2.12 , -8.754000000000001E-02 , - 2.13 , -0.18795 , - 2.14 , -0.28217 , - 2.15 , -0.39328 , - 2.16 , -0.47351 , - 2.17 , -0.45659 , - 2.18 , -0.38611 , - 2.19 , -0.40359 , - 2.2 , -0.49671 , - 2.21 , -0.47831 , - 2.22 , -0.24834 , - 2.23 , 9.692000000000001E-02 , - 2.24 , 0.36832 , - 2.25 , 0.49779 , - 2.26 , 0.55588 , - 2.27 , 0.55074 , - 2.28 , 0.47652 , - 2.29 , 0.42596 , - 2.3 , 0.45439 , - 2.31 , 0.4758 , - 2.32 , 0.36011 , - 2.33 , 9.916999999999999E-02 , - 2.34 , -0.22081 , - 2.35 , -0.53559 , - 2.36 , -0.73055 , - 2.37 , -0.68219 , - 2.38 , -0.46512 , - 2.39 , -0.29795 , - 2.4 , -0.29155 , - 2.41 , -0.37205 , - 2.42 , -0.45321 , - 2.43 , -0.52678 , - 2.44 , -0.53549 , - 2.45 , -0.39903 , - 2.46 , -0.17073 , - 2.47 , 4.007000000000000E-02 , - 2.48 , 0.19098 , - 2.49 , 0.23016 , - 2.5 , 0.11487 , - 2.51 , -3.277000000000000E-02 , - 2.52 , -2.678000000000000E-02 , - 2.53 , 0.14456 , - 2.54 , 0.33564 , - 2.55 , 0.43459 , - 2.56 , 0.47636 , - 2.57 , 0.56106 , - 2.58 , 0.69871 , - 2.59 , 0.78021 , - 2.6 , 0.69033 , - 2.61 , 0.48738 , - 2.62 , 0.37542 , - 2.63 , 0.44792 , - 2.64 , 0.63115 , - 2.65 , 0.80303 , - 2.66 , 0.86913 , - 2.67 , 0.81861 , - 2.68 , 0.67639 , - 2.69 , 0.44981 , - 2.7 , 0.19577 , - 2.71 , 1.762000000000000E-02 , - 2.72 , -7.475000000000000E-02 , - 2.73 , -0.18543 , - 2.74 , -0.31712 , - 2.75 , -0.30763 , - 2.76 , -5.022000000000000E-02 , - 2.77 , 0.36264 , - 2.78 , 0.71418 , - 2.79 , 0.86474 , - 2.8 , 0.91391 , - 2.81 , 0.97578 , - 2.82 , 0.99997 , - 2.83 , 0.90663 , - 2.84 , 0.71448 , - 2.85 , 0.55982 , - 2.86 , 0.55183 , - 2.87 , 0.63744 , - 2.88 , 0.70292 , - 2.89 , 0.68299 , - 2.9 , 0.58616 , - 2.91 , 0.47484 , - 2.92 , 0.38822 , - 2.93 , 0.3229 , - 2.94 , 0.25296 , - 2.95 , 0.16705 , - 2.96 , 0.10044 , - 2.97 , 7.353000000000000E-02 , - 2.98 , 4.790000000000000E-02 , - 2.99 , -3.974000000000000E-02 , - 3.0 , -0.21989 , - 3.01 , -0.43388 , - 3.02 , -0.59094 , - 3.03 , -0.68752 , - 3.04 , -0.77344 , - 3.05 , -0.84165 , - 3.06 , -0.87592 , - 3.07 , -0.92165 , - 3.08 , -0.98681 , - 3.09 , -0.9813 , - 3.1 , -0.85134 , - 3.11 , -0.71226 , - 3.12 , -0.70318 , - 3.13 , -0.73062 , - 3.14 , -0.63434 , - 3.15 , -0.49621 , - 3.16 , -0.46434 , - 3.17 , -0.4895 , - 3.18 , -0.43989 , - 3.19 , -0.297 , - 3.2 , -0.12264 , - 3.21 , 5.685000000000000E-02 , - 3.22 , 0.20721 , - 3.23 , 0.29127 , - 3.24 , 0.37167 , - 3.25 , 0.47314 , - 3.26 , 0.48428 , - 3.27 , 0.34199 , - 3.28 , 0.14378 , - 3.29 , 2.014000000000000E-02 , - 3.3 , -3.310000000000000E-03 , - 3.31 , 3.046000000000000E-02 , - 3.32 , 7.851000000000000E-02 , - 3.33 , 0.1222 , - 3.34 , 0.19291 , - 3.35 , 0.2916 , - 3.36 , 0.38011 , - 3.37 , 0.46514 , - 3.38 , 0.52328 , - 3.39 , 0.51669 , - 3.4 , 0.4727 , - 3.41 , 0.38682 , - 3.42 , 0.22939 , - 3.43 , 1.800000000000000E-02 , - 3.44 , -0.199 , - 3.45 , -0.40018 , - 3.46 , -0.5733 , - 3.47 , -0.72332 , - 3.48 , -0.82419 , - 3.49 , -0.83348 , - 3.5 , -0.74258 , - 3.51 , -0.61694 , - 3.52 , -0.56099 , - 3.53 , -0.61112 , - 3.54 , -0.71023 , - 3.55 , -0.78959 , - 3.56 , -0.85129 , - 3.57 , -0.93566 , - 3.58 , -0.99997 , - 3.59 , -0.92052 , - 3.6 , -0.6664 , - 3.61 , -0.3873 , - 3.62 , -0.25033 , - 3.63 , -0.24161 , - 3.64 , -0.18701 , - 3.65 , 9.379999999999999E-03 , - 3.66 , 0.11381 , - 3.67 , 0.16743 , - 3.68 , 0.16297 , - 3.69 , 0.1216 , - 3.7 , 5.279000000000000E-02 , - 3.71 , -9.607000000000000E-02 , - 3.72 , -0.30972 , - 3.73 , -0.35938 , - 3.74 , -0.19296 , - 3.75 , 6.919000000000000E-02 , - 3.76 , 0.27173 , - 3.77 , 0.34172 , - 3.78 , 0.31251 , - 3.79 , 0.24099 , - 3.8 , 0.15009 , - 3.81 , 0.10136 , - 3.82 , 0.18046 , - 3.83 , 0.36244 , - 3.84 , 0.47034 , - 3.85 , 0.36939 , - 3.86 , 0.15689 , - 3.87 , 1.108000000000000E-02 , - 3.88 , 3.990000000000000E-03 , - 3.89 , 0.11976 , - 3.9 , 0.24956 , - 3.91 , 0.21477 , - 3.92 , -3.172000000000000E-02 , - 3.93 , -0.24232 , - 3.94 , -0.1514 , - 3.95 , 0.12645 , - 3.96 , 0.3411 , - 3.97 , 0.48457 , - 3.98 , 0.61705 , - 3.99 , 0.70283 , - 4.0 , 0.70328 , - 4.01 , 0.62998 , - 4.02 , 0.53518 , - 4.03 , 0.44668 , - 4.04 , 0.36172 , - 4.05 , 0.31406 , - 4.06 , 0.32888 , - 4.07 , 0.35459 , - 4.08 , 0.32512 , - 4.09 , 0.25195 , - 4.1 , 0.20405 , - 4.11 , 0.22648 , - 4.12 , 0.30571 , - 4.13 , 0.37309 , - 4.14 , 0.35283 , - 4.15 , 0.24118 , - 4.16 , 0.11162 , - 4.17 , 1.458000000000000E-02 , - 4.18 , -7.364000000000000E-02 , - 4.19 , -0.1521 , - 4.2 , -0.14128 , - 4.21 , 2.440000000000000E-02 , - 4.22 , 0.2852 , - 4.23 , 0.45129 , - 4.24 , 0.38982 , - 4.25 , 0.15588 , - 4.26 , -0.11495 , - 4.27 , -0.31375 , - 4.28 , -0.42086 , - 4.29 , -0.48904 , - 4.3 , -0.52097 , - 4.31 , -0.49168 , - 4.32 , -0.4234 , - 4.33 , -0.36559 , - 4.34 , -0.36994 , - 4.35 , -0.42675 , - 4.36 , -0.45696 , - 4.37 , -0.39583 , - 4.38 , -0.24523 , - 4.39 , -7.371999999999999E-02 , - 4.4 , 5.577000000000000E-02 , - 4.41 , 0.13029 , - 4.42 , 0.17 , - 4.43 , 0.21223 , - 4.44 , 0.25214 , - 4.45 , 0.25221 , - 4.46 , 0.20971 , - 4.47 , 0.15915 , - 4.48 , 0.13965 , - 4.49 , 0.1015 , - 4.5 , -5.693000000000000E-02 , - 4.51 , -0.30165 , - 4.52 , -0.49413 , - 4.53 , -0.5601 , - 4.54 , -0.5473 , - 4.55 , -0.52318 , - 4.56 , -0.43186 , - 4.57 , -0.21177 , - 4.58 , 5.701000000000000E-02 , - 4.59 , 0.26717 , - 4.6 , 0.3673 , - 4.61 , 0.3813 , - 4.62 , 0.40079 , - 4.63 , 0.39365 , - 4.64 , 0.18973 , - 4.65 , -0.17373 , - 4.66 , -0.40285 , - 4.67 , -0.36957 , - 4.68 , -0.23873 , - 4.69 , -0.13623 , - 4.7 , -1.420000000000000E-02 , - 4.71 , 0.15954 , - 4.72 , 0.31583 , - 4.73 , 0.4076 , - 4.74 , 0.44925 , - 4.75 , 0.43323 , - 4.76 , 0.36783 , - 4.77 , 0.32597 , - 4.78 , 0.34835 , - 4.79 , 0.36693 , - 4.8 , 0.28138 , - 4.81 , 0.11386 , - 4.82 , -4.390000000000000E-02 , - 4.83 , -0.20925 , - 4.84 , -0.42702 , - 4.85 , -0.62277 , - 4.86 , -0.72429 , - 4.87 , -0.7462 , - 4.88 , -0.75887 , - 4.89 , -0.77194 , - 4.9 , -0.72951 , - 4.91 , -0.66245 , - 4.92 , -0.67709 , - 4.93 , -0.80669 , - 4.94 , -0.95972 , - 4.95 , -0.99997 , - 4.96 , -0.88454 , - 4.97 , -0.69049 , - 4.98 , -0.52094 , - 4.99 , -0.3957 , - 5.0 , -0.24286 , - 5.01 , -3.739000000000000E-02 , - 5.02 , 0.10577 , - 5.03 , 0.17347 , - 5.04 , 0.16886 , - 5.05 , 0.14491 , - 5.06 , 0.14907 , - 5.07 , 0.17361 , - 5.08 , 0.20083 , - 5.09 , 0.21954 , - 5.1 , 0.2328 , - 5.11 , 0.2575 , - 5.12 , 0.28932 , - 5.13 , 0.31126 , - 5.14 , 0.29244 , - 5.15 , 0.19772 , - 5.16 , 5.796000000000000E-02 , - 5.17 , -6.429000000000000E-02 , - 5.18 , -5.218000000000000E-02 , - 5.19 , 9.539000000000000E-02 , - 5.2 , 0.20966 , - 5.21 , 0.15862 , - 5.22 , 1.473000000000000E-02 , - 5.23 , -3.926000000000000E-02 , - 5.24 , 8.541000000000000E-02 , - 5.25 , 0.31423 , - 5.26 , 0.44181 , - 5.27 , 0.30949 , - 5.28 , -4.230000000000000E-03 , - 5.29 , -0.32893 , - 5.3 , -0.59096 , - 5.31 , -0.72514 , - 5.32 , -0.65562 , - 5.33 , -0.42079 , - 5.34 , -0.1588 , - 5.35 , 2.904000000000000E-02 , - 5.36 , 0.10308 , - 5.37 , 4.177000000000000E-02 , - 5.38 , -6.319000000000000E-02 , - 5.39 , -4.705000000000000E-02 , - 5.4 , 9.604000000000000E-02 , - 5.41 , 0.24518 , - 5.42 , 0.30632 , - 5.43 , 0.23914 , - 5.44 , 9.232000000000000E-02 , - 5.45 , -1.776000000000000E-02 , - 5.46 , -7.690000000000000E-03 , - 5.47 , 7.241000000000000E-02 , - 5.48 , 9.512000000000000E-02 , - 5.49 , 8.989000000000000E-02 , - 5.5 , 0.19384 , - 5.51 , 0.35667 , - 5.52 , 0.38627 , - 5.53 , 0.27202 , - 5.54 , 0.22809 , - 5.55 , 0.35372 , - 5.56 , 0.49889 , - 5.57 , 0.54618 , - 5.58 , 0.55561 , - 5.59 , 0.6075 , - 5.6 , 0.65833 , - 5.61 , 0.62315 , - 5.62 , 0.54314 , - 5.63 , 0.5024 , - 5.64 , 0.49951 , - 5.65 , 0.50238 , - 5.66 , 0.459 , - 5.67 , 0.32065 , - 5.68 , 0.12297 , - 5.69 , -4.304000000000000E-02 , - 5.7 , -0.12348 , - 5.71 , -0.16939 , - 5.72 , -0.26337 , - 5.73 , -0.37116 , - 5.74 , -0.40828 , - 5.75 , -0.39748 , - 5.76 , -0.42458 , - 5.77 , -0.49729 , - 5.78 , -0.51741 , - 5.79 , -0.39554 , - 5.8 , -0.19178 , - 5.81 , -6.471000000000000E-02 , - 5.82 , -6.743000000000000E-02 , - 5.83 , -0.1271 , - 5.84 , -0.1634 , - 5.85 , -0.13345 , - 5.86 , -6.090000000000000E-02 , - 5.87 , 2.519000000000000E-02 , - 5.88 , 0.14903 , - 5.89 , 0.28064 , - 5.9 , 0.34038 , - 5.91 , 0.3104 , - 5.92 , 0.22998 , - 5.93 , 0.15353 , - 5.94 , 0.1055 , - 5.95 , 7.457000000000000E-02 , - 5.96 , 5.763000000000000E-02 , - 5.97 , 8.033999999999999E-02 , - 5.98 , 0.14644 , - 5.99 , 0.1332 , - 6.0 , -7.482000000000000E-02 , - 6.01 , -0.36556 , - 6.02 , -0.55895 , - 6.03 , -0.59056 , - 6.04 , -0.46664 , - 6.05 , -0.26194 , - 6.06 , -7.546000000000000E-02 , - 6.07 , 7.784000000000001E-02 , - 6.08 , 0.23755 , - 6.09 , 0.36836 , - 6.1 , 0.37298 , - 6.11 , 0.26509 , - 6.12 , 0.15102 , - 6.13 , 6.525000000000000E-02 , - 6.14 , -1.695000000000000E-02 , - 6.15 , -0.10207 , - 6.16 , -0.1821 , - 6.17 , -0.26644 , - 6.18 , -0.32842 , - 6.19 , -0.24869 , - 6.2 , 2.279000000000000E-02 , - 6.21 , 0.37255 , - 6.22 , 0.6758 , - 6.23 , 0.86221 , - 6.24 , 0.91467 , - 6.25 , 0.89167 , - 6.26 , 0.84631 , - 6.27 , 0.74074 , - 6.28 , 0.49841 , - 6.29 , 0.16761 , - 6.3 , -4.544000000000000E-02 , - 6.31 , -2.644000000000000E-02 , - 6.32 , 9.400000000000000E-02 , - 6.33 , 0.16063 , - 6.34 , 0.18176 , - 6.35 , 0.20612 , - 6.36 , 0.22068 , - 6.37 , 0.22211 , - 6.38 , 0.23664 , - 6.39 , 0.24671 , - 6.4 , 0.1861 , - 6.41 , 0.10676 , - 6.42 , 0.2039 , - 6.43 , 0.4894 , - 6.44 , 0.7178 , - 6.45 , 0.73624 , - 6.46 , 0.64197 , - 6.47 , 0.61236 , - 6.48 , 0.66281 , - 6.49 , 0.6407 , - 6.5 , 0.48402 , - 6.51 , 0.28743 , - 6.52 , 0.1436 , - 6.53 , 6.140000000000000E-02 , - 6.54 , -1.770000000000000E-03 , - 6.55 , -6.498000000000000E-02 , - 6.56 , -0.12251 , - 6.57 , -0.16577 , - 6.58 , -0.20217 , - 6.59 , -0.28219 , - 6.6 , -0.37605 , - 6.61 , -0.34257 , - 6.62 , -0.12814 , - 6.63 , 0.1706 , - 6.64 , 0.38468 , - 6.65 , 0.39384 , - 6.66 , 0.26746 , - 6.67 , 0.18207 , - 6.68 , 0.19512 , - 6.69 , 0.22133 , - 6.7 , 0.209 , - 6.71 , 0.17146 , - 6.72 , 6.763000000000000E-02 , - 6.73 , -0.13527 , - 6.74 , -0.37496 , - 6.75 , -0.55764 , - 6.76 , -0.58824 , - 6.77 , -0.44844 , - 6.78 , -0.27116 , - 6.79 , -0.19551 , - 6.8 , -0.18978 , - 6.81 , -9.911000000000000E-02 , - 6.82 , 0.11626 , - 6.83 , 0.30541 , - 6.84 , 0.3521 , - 6.85 , 0.27698 , - 6.86 , 0.10781 , - 6.87 , -0.13553 , - 6.88 , -0.3724 , - 6.89 , -0.51163 , - 6.9 , -0.49535 , - 6.91 , -0.29991 , - 6.92 , -1.034000000000000E-02 , - 6.93 , 0.19111 , - 6.94 , 0.1843 , - 6.95 , 6.730000000000000E-03 , - 6.96 , -0.21507 , - 6.97 , -0.41983 , - 6.98 , -0.58894 , - 6.99 , -0.63614 , - 7.0 , -0.54698 , - 7.01 , -0.44682 , - 7.02 , -0.42416 , - 7.03 , -0.46132 , - 7.04 , -0.48084 , - 7.05 , -0.43504 , - 7.06 , -0.34615 , - 7.07 , -0.23496 , - 7.08 , -0.13072 , - 7.09 , -5.857000000000000E-02 , - 7.1 , 1.753000000000000E-02 , - 7.11 , 0.10141 , - 7.12 , 0.12684 , - 7.13 , 9.014000000000000E-02 , - 7.14 , 0.11682 , - 7.15 , 0.28896 , - 7.16 , 0.48134 , - 7.17 , 0.54721 , - 7.18 , 0.49147 , - 7.19 , 0.35746 , - 7.2 , 0.17093 , - 7.21 , -6.870000000000000E-03 , - 7.22 , -7.575999999999999E-02 , - 7.23 , -4.320000000000000E-03 , - 7.24 , 6.714000000000001E-02 , - 7.25 , 2.620000000000000E-03 , - 7.26 , -0.12071 , - 7.27 , -0.16453 , - 7.28 , -0.1671 , - 7.29 , -0.24591 , - 7.3 , -0.36246 , - 7.31 , -0.39855 , - 7.32 , -0.33851 , - 7.33 , -0.22608 , - 7.34 , -0.1129 , - 7.35 , -3.976000000000000E-02 , - 7.36 , 5.950000000000000E-03 , - 7.37 , 4.231000000000000E-02 , - 7.38 , 9.320000000000001E-02 , - 7.39 , 0.21161 , - 7.4 , 0.37502 , - 7.41 , 0.46085 , - 7.42 , 0.42852 , - 7.43 , 0.39911 , - 7.44 , 0.48134 , - 7.45 , 0.61862 , - 7.46 , 0.65845 , - 7.47 , 0.52488 , - 7.48 , 0.27775 , - 7.49 , 2.611000000000000E-02 , - 7.5 , -0.16858 , - 7.51 , -0.35917 , - 7.52 , -0.64888 , - 7.53 , -0.93894 , - 7.54 , -0.99997 , - 7.55 , -0.79545 , - 7.56 , -0.50022 , - 7.57 , -0.31055 , - 7.58 , -0.28451 , - 7.59 , -0.32788 , - 7.6 , -0.34293 , - 7.61 , -0.30914 , - 7.62 , -0.29364 , - 7.63 , -0.36128 , - 7.64 , -0.43128 , - 7.65 , -0.41928 , - 7.66 , -0.39651 , - 7.67 , -0.43324 , - 7.68 , -0.4592 , - 7.69 , -0.3661 , - 7.7 , -0.17726 , - 7.71 , -7.930000000000000E-03 , - 7.72 , 9.228000000000000E-02 , - 7.73 , 0.12711 , - 7.74 , 0.10315 , - 7.75 , 9.070000000000000E-03 , - 7.76 , -0.1676 , - 7.77 , -0.37078 , - 7.78 , -0.48702 , - 7.79 , -0.42176 , - 7.8 , -0.20091 , - 7.81 , -7.270000000000000E-03 , - 7.82 , 3.404000000000000E-02 , - 7.83 , 2.700000000000000E-03 , - 7.84 , -4.730000000000000E-03 , - 7.85 , -2.107000000000000E-02 , - 7.86 , -7.763000000000000E-02 , - 7.87 , -0.11332 , - 7.88 , -9.217000000000000E-02 , - 7.89 , -7.226000000000000E-02 , - 7.9 , -0.10282 , - 7.91 , -0.18072 , - 7.92 , -0.27112 , - 7.93 , -0.33308 , - 7.94 , -0.37009 , - 7.95 , -0.41046 , - 7.96 , -0.46542 , - 7.97 , -0.51679 , - 7.98 , -0.48695 , - 7.99 , -0.31766 , - 8.0 , -0.11193 , - 8.01 , -1.808000000000000E-02 , - 8.02 , -9.790000000000000E-03 , - 8.03 , 7.910000000000000E-03 , - 8.04 , 2.892000000000000E-02 , - 8.05 , 5.256000000000000E-02 , - 8.06 , 0.15118 , - 8.07 , 0.33598 , - 8.08 , 0.47411 , - 8.09 , 0.4184 , - 8.1 , 0.22182 , - 8.11 , 6.008000000000000E-02 , - 8.12 , 7.820000000000001E-03 , - 8.13 , 3.031000000000000E-02 , - 8.14 , 6.139000000000000E-02 , - 8.15 , 9.475000000000000E-02 , - 8.16 , 0.1711 , - 8.17 , 0.25375 , - 8.18 , 0.32694 , - 8.19 , 0.47654 , - 8.2 , 0.71476 , - 8.21 , 0.92354 , - 8.22 , 0.99997 , - 8.23 , 0.96174 , - 8.24 , 0.85956 , - 8.25 , 0.67462 , - 8.26 , 0.42666 , - 8.27 , 0.21402 , - 8.28 , 8.068000000000000E-02 , - 8.29 , -2.572000000000000E-02 , - 8.3 , -0.18823 , - 8.31 , -0.43016 , - 8.32 , -0.69265 , - 8.33 , -0.84523 , - 8.34 , -0.78451 , - 8.35 , -0.5823 , - 8.36 , -0.39951 , - 8.37 , -0.3009 , - 8.38 , -0.28826 , - 8.39 , -0.34762 , - 8.4 , -0.40794 , - 8.41 , -0.37827 , - 8.42 , -0.24945 , - 8.43 , -0.10703 , - 8.44 , -1.106000000000000E-02 , - 8.45 , 6.251000000000000E-02 , - 8.46 , 0.1419 , - 8.47 , 0.19928 , - 8.48 , 0.18798 , - 8.49 , 0.11645 , - 8.5 , 4.575000000000000E-02 , - 8.51 , 4.959000000000000E-02 , - 8.52 , 0.17716 , - 8.53 , 0.34359 , - 8.54 , 0.36584 , - 8.55 , 0.23915 , - 8.56 , 0.18171 , - 8.57 , 0.30089 , - 8.58 , 0.43922 , - 8.59 , 0.40395 , - 8.6 , 0.15759 , - 8.61 , -0.16407 , - 8.62 , -0.36165 , - 8.63 , -0.39041 , - 8.64 , -0.35247 , - 8.65 , -0.31056 , - 8.66 , -0.24355 , - 8.67 , -9.318000000000000E-02 , - 8.68 , 7.779999999999999E-02 , - 8.69 , 5.175000000000000E-02 , - 8.7 , -0.23925 , - 8.71 , -0.59171 , - 8.72 , -0.77473 , - 8.73 , -0.75474 , - 8.74 , -0.64528 , - 8.75 , -0.48987 , - 8.76 , -0.29956 , - 8.77 , -0.1701 , - 8.78 , -0.13175 , - 8.79 , -0.10789 , - 8.8 , -4.978000000000000E-02 , - 8.81 , 4.376000000000000E-02 , - 8.82 , 0.15205 , - 8.83 , 0.2202 , - 8.84 , 0.17479 , - 8.85 , 2.103000000000000E-02 , - 8.86 , -0.14172 , - 8.87 , -0.26548 , - 8.88 , -0.38534 , - 8.89 , -0.50451 , - 8.9 , -0.53404 , - 8.91 , -0.38116 , - 8.92 , -0.11525 , - 8.93 , 7.395000000000000E-02 , - 8.94 , 0.10361 , - 8.95 , 6.577000000000000E-02 , - 8.96 , 6.259000000000001E-02 , - 8.97 , 5.649000000000000E-02 , - 8.98 , -3.880000000000000E-03 , - 8.99 , -2.390000000000000E-02 , - 9.0 , 7.305000000000000E-02 , - 9.01 , 0.19452 , - 9.02 , 0.2608 , - 9.03 , 0.35267 , - 9.04 , 0.5391 , - 9.05 , 0.73389 , - 9.06 , 0.83545 , - 9.07 , 0.82904 , - 9.08 , 0.72024 , - 9.09 , 0.51294 , - 9.1 , 0.23736 , - 9.11 , -4.577000000000000E-02 , - 9.12 , -0.26395 , - 9.13 , -0.38853 , - 9.14 , -0.43089 , - 9.15 , -0.4349 , - 9.16 , -0.41682 , - 9.17 , -0.37537 , - 9.18 , -0.32465 , - 9.19 , -0.29702 , - 9.2 , -0.32491 , - 9.21 , -0.3466 , - 9.22 , -0.28185 , - 9.23 , -0.19619 , - 9.24 , -0.14637 , - 9.25 , -9.772000000000000E-02 , - 9.26 , -7.858999999999999E-02 , - 9.27 , -0.13191 , - 9.28 , -0.21558 , - 9.29 , -0.24568 , - 9.3 , -0.18549 , - 9.31 , -9.976000000000000E-02 , - 9.32 , -6.297000000000000E-02 , - 9.33 , -8.577000000000000E-02 , - 9.34 , -0.11997 , - 9.35 , -5.070000000000000E-02 , - 9.36 , 0.19743 , - 9.37 , 0.55636 , - 9.38 , 0.86649 , - 9.39 , 0.99997 , - 9.4 , 0.95787 , - 9.41 , 0.80859 , - 9.42 , 0.58733 , - 9.43 , 0.34042 , - 9.44 , 0.15629 , - 9.45 , 7.298000000000000E-02 , - 9.46 , 3.103000000000000E-02 , - 9.47 , -1.360000000000000E-03 , - 9.48 , 2.567000000000000E-02 , - 9.49 , 9.848000000000000E-02 , - 9.5 , 0.13363 , - 9.51 , 0.10499 , - 9.52 , 1.947000000000000E-02 , - 9.53 , -0.11686 , - 9.54 , -0.25475 , - 9.55 , -0.33284 , - 9.56 , -0.37717 , - 9.57 , -0.45927 , - 9.58 , -0.53679 , - 9.59 , -0.50988 , - 9.6 , -0.4323 , - 9.61 , -0.46891 , - 9.62 , -0.62414 , - 9.63 , -0.67897 , - 9.64 , -0.46893 , - 9.65 , -0.10561 , - 9.66 , 0.12896 , - 9.67 , 7.442000000000000E-02 , - 9.68 , -0.13619 , - 9.69 , -0.25497 , - 9.7 , -0.19615 , - 9.71 , -5.295000000000000E-02 , - 9.72 , 5.399000000000000E-02 , - 9.73 , 8.438000000000000E-02 , - 9.74 , 7.897000000000000E-02 , - 9.75 , 0.11239 , - 9.76 , 0.18699 , - 9.77 , 0.19038 , - 9.78 , 0.13535 , - 9.79 , 0.20938 , - 9.8 , 0.43787 , - 9.81 , 0.63937 , - 9.82 , 0.67742 , - 9.83 , 0.58799 , - 9.84 , 0.49876 , - 9.85 , 0.4183 , - 9.86 , 0.29948 , - 9.87 , 0.22905 , - 9.88 , 0.2606 , - 9.89 , 0.28847 , - 9.9 , 0.22616 , - 9.91 , 0.12545 , - 9.92 , 8.956000000000000E-02 , - 9.93 , 0.12928 , - 9.94 , 0.15076 , - 9.95 , 4.544000000000000E-02 , - 9.96 , -0.20722 , - 9.97 , -0.49063 , - 9.98 , -0.6894 , - 9.99 , -0.80485 , - 10.0 , -0.84771 , - 10.01 , -0.76807 , - 10.02 , -0.56037 , - 10.03 , -0.32503 , - 10.04 , -0.15016 , - 10.05 , -3.882000000000000E-02 , - 10.06 , 6.110000000000000E-03 , - 10.07 , -2.178000000000000E-02 , - 10.08 , -6.615000000000000E-02 , - 10.09 , -3.796000000000000E-02 , - 10.1 , 8.788000000000000E-02 , - 10.11 , 0.2149 , - 10.12 , 0.23018 , - 10.13 , 0.14302 , - 10.14 , 3.300000000000000E-02 , - 10.15 , -5.442000000000000E-02 , - 10.16 , -9.190000000000000E-02 , - 10.17 , -5.636000000000000E-02 , - 10.18 , 1.760000000000000E-03 , - 10.19 , -4.910000000000000E-03 , - 10.2 , -7.645000000000000E-02 , - 10.21 , -0.16067 , - 10.22 , -0.22708 , - 10.23 , -0.23139 , - 10.24 , -0.12101 , - 10.25 , 7.537000000000001E-02 , - 10.26 , 0.24004 , - 10.27 , 0.32546 , - 10.28 , 0.38826 , - 10.29 , 0.41863 , - 10.3 , 0.35794 , - 10.31 , 0.23222 , - 10.32 , 0.11401 , - 10.33 , 1.697000000000000E-02 , - 10.34 , -0.10766 , - 10.35 , -0.25136 , - 10.36 , -0.35757 , - 10.37 , -0.41565 , - 10.38 , -0.3843 , - 10.39 , -0.22915 , - 10.4 , -7.590000000000000E-03 , - 10.41 , 0.24235 , - 10.42 , 0.48677 , - 10.43 , 0.65383 , - 10.44 , 0.70515 , - 10.45 , 0.61222 , - 10.46 , 0.40693 , - 10.47 , 0.24331 , - 10.48 , 0.2277 , - 10.49 , 0.27807 , - 10.5 , 0.24063 , - 10.51 , 9.018000000000000E-02 , - 10.52 , -8.182000000000000E-02 , - 10.53 , -0.23302 , - 10.54 , -0.37812 , - 10.55 , -0.4703 , - 10.56 , -0.41592 , - 10.57 , -0.24651 , - 10.58 , -0.12814 , - 10.59 , -0.13 , - 10.6 , -0.17581 , - 10.61 , -0.22261 , - 10.62 , -0.29974 , - 10.63 , -0.40731 , - 10.64 , -0.49694 , - 10.65 , -0.51567 , - 10.66 , -0.38399 , - 10.67 , -6.413000000000001E-02 , - 10.68 , 0.26417 , - 10.69 , 0.33331 , - 10.7 , 0.13429 , - 10.71 , -8.293000000000000E-02 , - 10.72 , -0.1463 , - 10.73 , -0.13542 , - 10.74 , -0.20542 , - 10.75 , -0.35982 , - 10.76 , -0.44591 , - 10.77 , -0.37107 , - 10.78 , -0.25668 , - 10.79 , -0.25179 , - 10.8 , -0.31124 , - 10.81 , -0.28374 , - 10.82 , -0.12758 , - 10.83 , 1.490000000000000E-02 , - 10.84 , 1.229000000000000E-02 , - 10.85 , -6.356000000000001E-02 , - 10.86 , -5.771000000000000E-02 , - 10.87 , 8.679000000000001E-02 , - 10.88 , 0.31097 , - 10.89 , 0.53347 , - 10.9 , 0.68419 , - 10.91 , 0.65081 , - 10.92 , 0.4251 , - 10.93 , 0.19891 , - 10.94 , 0.11666 , - 10.95 , 0.13796 , - 10.96 , 0.14749 , - 10.97 , 9.375000000000000E-02 , - 10.98 , 2.569000000000000E-02 , - 10.99 , -1.828000000000000E-02 , - 11.0 , -6.660000000000000E-03 , - 11.01 , 9.803000000000001E-02 , - 11.02 , 0.2156 , - 11.03 , 0.2608 , - 11.04 , 0.28376 , - 11.05 , 0.31446 , - 11.06 , 0.30511 , - 11.07 , 0.25332 , - 11.08 , 0.19284 , - 11.09 , 0.1152 , - 11.1 , 1.948000000000000E-02 , - 11.11 , -8.540000000000001E-03 , - 11.12 , -8.070000000000001E-03 , - 11.13 , 5.720000000000000E-03 , - 11.14 , 5.899000000000000E-02 , - 11.15 , 0.13421 , - 11.16 , 0.26053 , - 11.17 , 0.41353 , - 11.18 , 0.51092 , - 11.19 , 0.52002 , - 11.2 , 0.50124 , - 11.21 , 0.5386 , - 11.22 , 0.65388 , - 11.23 , 0.8058 , - 11.24 , 0.93844 , - 11.25 , 0.99997 , - 11.26 , 0.96789 , - 11.27 , 0.87593 , - 11.28 , 0.80065 , - 11.29 , 0.79192 , - 11.3 , 0.8141 , - 11.31 , 0.8052 , - 11.32 , 0.74262 , - 11.33 , 0.61546 , - 11.34 , 0.41975 , - 11.35 , 0.22346 , - 11.36 , 0.14585 , - 11.37 , 0.18339 , - 11.38 , 0.21495 , - 11.39 , 0.22018 , - 11.4 , 0.23766 , - 11.41 , 0.19769 , - 11.42 , 1.272000000000000E-02 , - 11.43 , -0.33277 , - 11.44 , -0.5999 , - 11.45 , -0.66307 , - 11.46 , -0.54941 , - 11.47 , -0.30754 , - 11.48 , 9.150000000000000E-03 , - 11.49 , 0.33567 , - 11.5 , 0.62395 , - 11.51 , 0.82292 , - 11.52 , 0.92488 , - 11.53 , 0.94922 , - 11.54 , 0.90162 , - 11.55 , 0.81535 , - 11.56 , 0.68529 , - 11.57 , 0.48301 , - 11.58 , 0.28744 , - 11.59 , 0.21968 , - 11.6 , 0.31463 , - 11.61 , 0.4858 , - 11.62 , 0.58845 , - 11.63 , 0.57005 , - 11.64 , 0.49055 , - 11.65 , 0.39877 , - 11.66 , 0.2819 , - 11.67 , 0.11731 , - 11.68 , -6.177000000000000E-02 , - 11.69 , -0.1701 , - 11.7 , -0.21434 , - 11.71 , -0.36528 , - 11.72 , -0.67236 , - 11.73 , -0.88398 , - 11.74 , -0.82736 , - 11.75 , -0.67582 , - 11.76 , -0.64387 , - 11.77 , -0.69937 , - 11.78 , -0.68858 , - 11.79 , -0.5758 , - 11.8 , -0.46315 , - 11.81 , -0.45051 , - 11.82 , -0.51549 , - 11.83 , -0.51468 , - 11.84 , -0.35292 , - 11.85 , -0.11964 , - 11.86 , -1.117000000000000E-02 , - 11.87 , -0.1357 , - 11.88 , -0.40276 , - 11.89 , -0.63738 , - 11.9 , -0.73699 , - 11.91 , -0.69661 , - 11.92 , -0.58112 , - 11.93 , -0.46357 , - 11.94 , -0.38497 , - 11.95 , -0.33617 , - 11.96 , -0.26831 , - 11.97 , -0.19582 , - 11.98 , -0.16518 , - 11.99 , -0.14401 , - 12.0 , -7.318000000000000E-02 , - 12.01 , 7.769000000000000E-02 , - 12.02 , 0.26041 , - 12.03 , 0.37046 , - 12.04 , 0.40569 , - 12.05 , 0.44476 , - 12.06 , 0.50231 , - 12.07 , 0.52622 , - 12.08 , 0.47631 , - 12.09 , 0.35672 , - 12.1 , 0.14838 , - 12.11 , -0.13846 , - 12.12 , -0.36979 , - 12.13 , -0.47711 , - 12.14 , -0.54786 , - 12.15 , -0.62333 , - 12.16 , -0.64749 , - 12.17 , -0.58515 , - 12.18 , -0.46856 , - 12.19 , -0.35151 , - 12.2 , -0.26225 , - 12.21 , -0.22214 , - 12.22 , -0.22853 , - 12.23 , -0.19257 , - 12.24 , -2.725000000000000E-02 , - 12.25 , 0.18283 , - 12.26 , 0.25344 , - 12.27 , 0.12964 , - 12.28 , -9.258000000000000E-02 , - 12.29 , -0.29733 , - 12.3 , -0.42242 , - 12.31 , -0.45343 , - 12.32 , -0.38158 , - 12.33 , -0.24116 , - 12.34 , -0.13557 , - 12.35 , -0.11938 , - 12.36 , -0.14999 , - 12.37 , -0.17426 , - 12.38 , -0.16707 , - 12.39 , -0.12211 , - 12.4 , -6.938000000000000E-02 , - 12.41 , -5.365000000000000E-02 , - 12.42 , -6.988999999999999E-02 , - 12.43 , -0.10537 , - 12.44 , -0.18301 , - 12.45 , -0.26683 , - 12.46 , -0.27079 , - 12.47 , -0.18067 , - 12.48 , -5.357000000000000E-02 , - 12.49 , 5.621000000000000E-02 , - 12.5 , 0.12411 , - 12.51 , 0.1349 , - 12.52 , 0.10552 , - 12.53 , 8.767000000000000E-02 , - 12.54 , 5.312000000000000E-02 , - 12.55 , -7.994000000000000E-02 , - 12.56 , -0.28316 , - 12.57 , -0.43439 , - 12.58 , -0.45819 , - 12.59 , -0.39875 , - 12.6 , -0.3257 , - 12.61 , -0.21617 , - 12.62 , -5.834000000000000E-02 , - 12.63 , 6.234000000000000E-02 , - 12.64 , 7.834000000000001E-02 , - 12.65 , 2.524000000000000E-02 , - 12.66 , -4.370000000000000E-03 , - 12.67 , 2.088000000000000E-02 , - 12.68 , 3.738000000000000E-02 , - 12.69 , -5.780000000000000E-03 , - 12.7 , -7.783000000000000E-02 , - 12.71 , -0.10293 , - 12.72 , -5.917000000000000E-02 , - 12.73 , -2.088000000000000E-02 , - 12.74 , -4.084000000000000E-02 , - 12.75 , -7.596000000000000E-02 , - 12.76 , -7.527000000000000E-02 , - 12.77 , -4.418000000000000E-02 , - 12.78 , -2.046000000000000E-02 , - 12.79 , -2.682000000000000E-02 , - 12.8 , -2.654000000000000E-02 , - 12.81 , 3.635000000000000E-02 , - 12.82 , 0.12352 , - 12.83 , 0.13159 , - 12.84 , 4.372000000000000E-02 , - 12.85 , -6.480000000000000E-02 , - 12.86 , -0.1361 , - 12.87 , -0.17058 , - 12.88 , -0.1883 , - 12.89 , -0.19167 , - 12.9 , -0.19116 , - 12.91 , -0.20869 , - 12.92 , -0.23797 , - 12.93 , -0.28017 , - 12.94 , -0.36467 , - 12.95 , -0.46778 , - 12.96 , -0.49324 , - 12.97 , -0.38894 , - 12.98 , -0.2225 , - 12.99 , -9.676000000000000E-02 , - 13.0 , -5.153000000000000E-02 , - 13.01 , -5.856000000000000E-02 , - 13.02 , -6.265000000000000E-02 , - 13.03 , -3.700000000000000E-02 , - 13.04 , 8.800000000000001E-03 , - 13.05 , 4.189000000000000E-02 , - 13.06 , 1.048000000000000E-02 , - 13.07 , -8.393000000000000E-02 , - 13.08 , -0.17214 , - 13.09 , -0.21986 , - 13.1 , -0.25265 , - 13.11 , -0.28696 , - 13.12 , -0.29845 , - 13.13 , -0.27534 , - 13.14 , -0.25187 , - 13.15 , -0.25011 , - 13.16 , -0.27425 , - 13.17 , -0.33551 , - 13.18 , -0.41051 , - 13.19 , -0.45406 , - 13.2 , -0.44533 , - 13.21 , -0.38727 , - 13.22 , -0.30756 , - 13.23 , -0.24203 , - 13.24 , -0.20129 , - 13.25 , -0.16106 , - 13.26 , -9.457000000000000E-02 , - 13.27 , -2.440000000000000E-02 , - 13.28 , 7.040000000000000E-03 , - 13.29 , 8.600000000000000E-03 , - 13.3 , 1.981000000000000E-02 , - 13.31 , 4.834000000000000E-02 , - 13.32 , 7.178000000000000E-02 , - 13.33 , 8.525000000000001E-02 , - 13.34 , 0.1107 , - 13.35 , 0.15822 , - 13.36 , 0.21564 , - 13.37 , 0.27468 , - 13.38 , 0.32506 , - 13.39 , 0.34096 , - 13.4 , 0.32619 , - 13.41 , 0.32491 , - 13.42 , 0.34842 , - 13.43 , 0.36279 , - 13.44 , 0.34026 , - 13.45 , 0.2756 , - 13.46 , 0.18648 , - 13.47 , 9.881000000000000E-02 , - 13.48 , 3.222000000000000E-02 , - 13.49 , 1.061000000000000E-02 , - 13.5 , 4.343000000000000E-02 , - 13.51 , 9.372000000000000E-02 , - 13.52 , 0.10628 , - 13.53 , 7.198000000000000E-02 , - 13.54 , 3.458000000000000E-02 , - 13.55 , 2.182000000000000E-02 , - 13.56 , 1.377000000000000E-02 , - 13.57 , -1.295000000000000E-02 , - 13.58 , -4.297000000000000E-02 , - 13.59 , -4.232000000000000E-02 , - 13.6 , -1.224000000000000E-02 , - 13.61 , 1.559000000000000E-02 , - 13.62 , 1.639000000000000E-02 , - 13.63 , -1.544000000000000E-02 , - 13.64 , -5.384000000000000E-02 , - 13.65 , -7.287000000000000E-02 , - 13.66 , -8.747000000000001E-02 , - 13.67 , -0.10976 , - 13.68 , -0.11529 , - 13.69 , -8.388000000000000E-02 , - 13.7 , -3.945000000000000E-02 , - 13.71 , -2.420000000000000E-02 , - 13.72 , -3.630000000000000E-02 , - 13.73 , -3.928000000000000E-02 , - 13.74 , -2.207000000000000E-02 , - 13.75 , -5.590000000000000E-03 , - 13.76 , -9.450000000000000E-03 , - 13.77 , -2.752000000000000E-02 , - 13.78 , -4.478000000000000E-02 , - 13.79 , -6.457000000000000E-02 , - 13.8 , -8.530000000000000E-02 , - 13.81 , -8.704000000000001E-02 , - 13.82 , -5.918000000000000E-02 , - 13.83 , -3.830000000000000E-03 , - 13.84 , 7.192000000000000E-02 , - 13.85 , 0.14312 , - 13.86 , 0.17488 , - 13.87 , 0.16315 , - 13.88 , 0.14274 , - 13.89 , 0.14017 , - 13.9 , 0.14556 , - 13.91 , 0.13989 , - 13.92 , 0.12104 , - 13.93 , 9.578000000000000E-02 , - 13.94 , 7.056999999999999E-02 , - 13.95 , 5.257000000000000E-02 , - 13.96 , 4.283000000000000E-02 , - 13.97 , 3.754000000000000E-02 , - 13.98 , 3.580000000000000E-02 , - 13.99 , 3.422000000000000E-02 , - 14.0 , 2.593000000000000E-02 , - 14.01 , 4.220000000000000E-03 , - 14.02 , -1.590000000000000E-02 , - 14.03 , -2.929000000000000E-02 , - 14.04 , 4.251000000000000E-02 , - 14.05 , 5.369000000000000E-02 , - 14.06 , 6.154000000000000E-02 , - 14.07 , 6.560000000000001E-02 , - 14.08 , 6.591000000000000E-02 , - 14.09 , 6.272000000000000E-02 , - 14.1 , 5.704000000000000E-02 , - 14.11 , 5.054000000000000E-02 , - 14.12 , 4.304000000000000E-02 , - 14.13 , 3.569000000000000E-02 , - 14.14 , 2.953000000000000E-02 , - 14.15 , 2.591000000000000E-02 , - 14.16 , 2.479000000000000E-02 , - 14.17 , 2.511000000000000E-02 , - 14.18 , 2.581000000000000E-02 , - 14.19 , 2.493000000000000E-02 , - 14.2 , 2.314000000000000E-02 , - 14.21 , 2.027000000000000E-02 , - 14.22 , 1.935000000000000E-02 , - 14.23 , 2.023000000000000E-02 , - 14.24 , 2.506000000000000E-02 , - 14.25 , 3.099000000000000E-02 , - 14.26 , 3.760000000000000E-02 , - 14.27 , 4.262000000000000E-02 , - 14.28 , 4.532000000000000E-02 , - 14.29 , 4.802000000000000E-02 , - 14.3 , 5.005000000000000E-02 , - 14.31 , 5.302000000000000E-02 , - 14.32 , 5.416000000000000E-02 , - 14.33 , 5.517000000000000E-02 , - 14.34 , 5.543000000000000E-02 , - 14.35 , 5.403000000000000E-02 , - 14.36 , 5.095000000000000E-02 , - 14.37 , 4.660000000000000E-02 , - 14.38 , 4.407000000000000E-02 , - 14.39 , 4.359000000000000E-02 , - 14.4 , 4.649000000000000E-02 , - 14.41 , 4.927000000000000E-02 , - 14.42 , 5.116000000000000E-02 , - 14.43 , 5.246000000000000E-02 , - 14.44 , 5.290000000000000E-02 , - 14.45 , 5.342000000000000E-02 , - 14.46 , 5.301000000000000E-02 , - 14.47 , 5.389000000000000E-02 , - 14.48 , 5.518000000000000E-02 , - 14.49 , 5.594000000000000E-02 , - 14.5 , 5.543000000000000E-02 , - 14.51 , 5.542000000000000E-02 , - 14.52 , 5.677000000000000E-02 , - 14.53 , 5.746000000000000E-02 , - 14.54 , 5.802000000000000E-02 , - 14.55 , 5.847000000000000E-02 , - 14.56 , 5.842000000000000E-02 , - 14.57 , 5.750000000000000E-02 , - 14.58 , 5.606000000000000E-02 , - 14.59 , 5.592000000000000E-02 , - 14.6 , 5.517000000000000E-02 , - 14.61 , 5.439000000000000E-02 , - 14.62 , 5.392000000000000E-02 , - 14.63 , 5.395000000000000E-02 , - 14.64 , 5.260000000000000E-02 , - 14.65 , 5.031000000000000E-02 , - 14.66 , 4.883000000000000E-02 , - 14.67 , 4.944000000000000E-02 , - 14.68 , 5.215000000000000E-02 , - 14.69 , 5.627000000000000E-02 , - 14.7 , 6.244000000000000E-02 , - 14.71 , 6.783000000000000E-02 , - 14.72 , 7.159000000000000E-02 , - 14.73 , 7.149999999999999E-02 , - 14.74 , 6.673000000000000E-02 , - 14.75 , 5.755000000000000E-02 , - 14.76 , 4.539000000000000E-02 , - 14.77 , 3.504000000000000E-02 , - 14.78 , 2.721000000000000E-02 , - 14.79 , 2.308000000000000E-02 , - 14.8 , 2.125000000000000E-02 , - 14.81 , 2.022000000000000E-02 , - 14.82 , 1.831000000000000E-02 , - 14.83 , 1.547000000000000E-02 , - 14.84 , 1.321000000000000E-02 , - 14.85 , 1.112000000000000E-02 , - 14.86 , 1.025000000000000E-02 , - 14.87 , 9.549999999999999E-03 , - 14.88 , 1.040000000000000E-02 , - 14.89 , 1.059000000000000E-02 , - 14.9 , 1.108000000000000E-02 , - 14.91 , 1.195000000000000E-02 , - 14.92 , 1.452000000000000E-02 , - 14.93 , 1.809000000000000E-02 , - 14.94 , 2.029000000000000E-02 , - 14.95 , 2.323000000000000E-02 , - 14.96 , 2.515000000000000E-02 , - 14.97 , 2.836000000000000E-02 , - 14.98 , 3.278000000000000E-02 , - 14.99 , 3.934000000000000E-02 , - 15.00 , 0.0 , - ), - INTERPOL='LIN', - PROL_DROITE='CONSTANT', - PROL_GAUCHE='EXCLU',); - - - - diff --git a/Tests/testcomm9/forma12c.comm b/Tests/testcomm9/forma12c.comm deleted file mode 100755 index 5e74e201..00000000 --- a/Tests/testcomm9/forma12c.comm +++ /dev/null @@ -1,773 +0,0 @@ -# MODIF DATE 12/05/2005 AUTEUR DURAND C.DURAND -# TITRE TP ANALYSE SISMIQUE -# CONFIGURATION MANAGEMENT OF EDF VERSION -# ====================================================================== -# COPYRIGHT (C) 1991 - 2004 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# RESPONSABLE BOYERE E.BOYERE -#----------------------------------------------------------------------- -# -# ANALYSE RIS12 TR4 REGLEMENTAIRE -# SCENARIO 1 -# GL1(X,Y) + GL2(Z) -# -#----------------------------------------------------------------------- - -DEBUT(CODE=_F(NOM ='FORMA12C',NIV_PUB_WEB='INTERNET')) - -MAILLAGE=LIRE_MAILLAGE(INFO=2) - -MODELE=AFFE_MODELE( - MAILLAGE=MAILLAGE, - AFFE=( - _F(GROUP_MA='GPOU_D_T', - PHENOMENE='MECANIQUE', - MODELISATION='POU_D_T',), - _F(GROUP_MA='GPOU_C_T', - PHENOMENE='MECANIQUE', - MODELISATION='POU_C_T',), - _F(GROUP_MA='GDIS_TR', - PHENOMENE='MECANIQUE', - MODELISATION='DIS_TR',), - ), - ) - -IMPR_RESU(FORMAT='CASTEM',UNITE=37, - MODELE=MODELE, - RESU=_F( - MAILLAGE=MAILLAGE)) - - - -#----------------------------------------------------------------------- -# CARACTERISTIQUES DES ELEMENTS -#----------------------------------------------------------------------- - - -CARA=AFFE_CARA_ELEM( - MODELE=MODELE, - POUTRE=( - _F(GROUP_MA='GMEL0301', - SECTION='CERCLE', - CARA=('R','EP'), - VALE=(0.08415,0.00711),), - _F(GROUP_MA='GMEL0501', - SECTION='CERCLE', - CARA=('R','EP'), - VALE=(0.08415,0.0034),), - _F(GROUP_MA='GMEL0601', - SECTION='CERCLE', - CARA=('R','EP'), - VALE=(0.08415,0.0034),), - _F(GROUP_MA='GMEL0701', - SECTION='CERCLE', - CARA=('R','EP'), - VALE=(0.08415,0.0034),), - _F(GROUP_MA='GMEL1001', - SECTION='CERCLE', - CARA=('R','EP'), - VALE=(0.08415,0.0034),), - _F(GROUP_MA='GMEL1101', - SECTION='CERCLE', - CARA=('R','EP'), - VALE=(0.08415,0.0034),), - _F(GROUP_MA='GMEL1201', - SECTION='CERCLE', - CARA=('R','EP'), - VALE=(0.08415,0.0034),), - _F(GROUP_MA='GMEL1501', - SECTION='CERCLE', - CARA=('R','EP'), - VALE=(0.08415,0.0034),), - _F(GROUP_MA='GMEL1701', - SECTION='CERCLE', - CARA=('R','EP'), - VALE=(0.08415,0.0034),), - _F(GROUP_MA='GMEL1801', - SECTION='CERCLE', - CARA=('R','EP'), - VALE=(0.08415,0.0034),), - _F(GROUP_MA='GMEL1901', - SECTION='CERCLE', - CARA=('R','EP'), - VALE=(0.08415,0.0034),), - _F(GROUP_MA='GMEL2001', - SECTION='CERCLE', - CARA=('R','EP'), - VALE=(0.08415,0.0034),), - _F(GROUP_MA='GMEL2101', - SECTION='CERCLE', - CARA=('R','EP'), - VALE=(0.08415,0.0034),), - _F(GROUP_MA='GMEL2201', - SECTION='CERCLE', - CARA=('R','EP'), - VALE=(0.08415,0.0034),), - _F(GROUP_MA='GMEL2401', - SECTION='CERCLE', - CARA=('R','EP'), - VALE=(0.08415,0.00711),),), - DISCRET=(_F(MAILLE='M0801I02', - CARA='M_TR_D_N', - VALE=(36.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0),), - _F(MAILLE='M1301I02', - CARA='M_TR_D_N', - VALE=(36.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0),),), - DEFI_ARC=(_F(GROUP_MA='GMEL0601', - CENTRE=(466.39260860000002,107.5500031,0.27747499939999998), - RAYON=0.22859999540000001, - COEF_FLEX_XY=14.43145561, - COEF_FLEX_XZ=14.43145561,), - _F(GROUP_MA='GMEL1101', - CENTRE=(466.16400149999998,107.3214035,3.7724525930000001), - RAYON=0.22859999540000001, - COEF_FLEX_XY=14.43145561, - COEF_FLEX_XZ=14.43145561,), - _F(GROUP_MA='GMEL1701', - CENTRE=(466.16400149999998,106.4785995,4.2335472110000003), - RAYON=0.22859999540000001, - COEF_FLEX_XY=14.43145561, - COEF_FLEX_XZ=14.43145561,), - _F(GROUP_MA='GMEL1901', - CENTRE=(466.16400149999998,106.4785995,8.7655010220000005), - RAYON=0.22859999540000001, - COEF_FLEX_XY=14.43145561, - COEF_FLEX_XZ=14.43145561,), - _F(GROUP_MA='GMEL2101', - CENTRE=(466.16400149999998,107.4713974,9.2274990080000006), - RAYON=0.22859999540000001, - COEF_FLEX_XY=14.43145561, - COEF_FLEX_XZ=14.43145561,),),) - -#----------------------------------------------------------------------- -# DEFINITION DES MATERIAUX -#----------------------------------------------------------------------- - -MATP01=DEFI_MATERIAU(ELAS=_F(E=1.97E11, - NU=0.3, - RHO=1.3108749019999999E4, - ALPHA=1.639999937E-05,),) -MATP03=DEFI_MATERIAU(ELAS=_F(E=1.97E11, - NU=0.3, - RHO=1.956015625E4, - ALPHA=1.639999937E-05,),) - -#----------------------------------------------------------------------- -# DEFINITION DES SUPPORTS -#----------------------------------------------------------------------- - -SUPPORT=AFFE_CHAR_MECA( - MODELE=MODELE, - DDL_IMPO=( -# PF1 ET PF2 - _F( NOEUD = ('N02__I00', 'N01__I00',), - DX = 0., DY = 0., DZ = 0., DRX = 0., DRY = 0., DRZ = 0.), -# GL1 - _F( NOEUD = 'N0701I00', - DX = 0., DY = 0.), -# GL2 - _F( NOEUD = 'N1201I00', - DZ = 0.), - ), - ) - -#----------------------------------------------------------------------- -# DEFINITION DES CHAMPS DE MATERIAUX -#----------------------------------------------------------------------- - -CHMATP=AFFE_MATERIAU(MAILLAGE=MAILLAGE, - AFFE=(_F(GROUP_MA='GMAT01', - MATER=MATP01, - ), - _F(GROUP_MA='GMAT03', - MATER=MATP03, - ),),) - -#----------------------------------------------------------------------- -# ASSEMBLAGE MATRICE MASSE ET RIGIDITE -#----------------------------------------------------------------------- - -MACRO_MATR_ASSE(MODELE=MODELE, - CHAM_MATER=CHMATP, - CARA_ELEM=CARA, - CHARGE=SUPPORT, - NUME_DDL=CO('NUMDDL'), - MATR_ASSE=(_F(MATRICE=CO("MATRRIGI"), - OPTION='RIGI_MECA',), - _F(MATRICE=CO("MATRMASS"), - OPTION='MASS_MECA',),),); - - -#----------------------------------------------------------------------- -# ASSEMBLAGE DU SECOND MEMBRE -#----------------------------------------------------------------------- - -INCLUDE(UNITE=22) - -CHSEIX=CALC_CHAR_SEISME( MATR_MASS=MATRMASS, - DIRECTION=(1., 0., 0.,), MONO_APPUI='OUI' - ) -CHSEIY=CALC_CHAR_SEISME( MATR_MASS=MATRMASS, - DIRECTION=(0., 1., 0.,), MONO_APPUI='OUI' - ) -CHSEIZ=CALC_CHAR_SEISME( MATR_MASS=MATRMASS, - DIRECTION=(0., 0., 1.,), MONO_APPUI='OUI' - ) - -#----------------------------------------------------------------------- -# CALCUL DES MODES -#----------------------------------------------------------------------- -MASSINER=POST_ELEM( - MODELE=MODELE, - CHARGE=SUPPORT, - CARA_ELEM=CARA, - CHAM_MATER=CHMATP, - MASS_INER=_F( TOUT = 'OUI',) - ) -MODES=MACRO_MODE_MECA( - MATR_A=MATRRIGI, - MATR_B=MATRMASS, - CALC_FREQ=_F( - FREQ_MIN = 0.0, - FREQ_MAX = 33.0, - NB_BLOC_FREQ = 1), - VERI_MODE=_F( STOP_ERREUR = 'NON'), - NORM_MODE=_F( - NORME = 'MASS_GENE', - ), - IMPRESSION=_F( TOUT_PARA = 'OUI') - ) - -# TEST_RESU UNIQUEMENT POUR FAIRE CAS TEST -TEST_RESU(RESU=(_F(RESULTAT=MODES, - NUME_ORDRE=1, - PARA='FREQ', - VALE= 4.5135794612152, - PRECISION=1e-05, - REFERENCE='NON_REGRESSION', - VERSION='7.3.19',))) - -MODES=CALC_ELEM( - reuse=MODES, - MODELE=MODELE, - CHAM_MATER=CHMATP, - CARA_ELEM=CARA, - OPTION=( - 'EFGE_ELNO_DEPL', - ), - RESULTAT=MODES,) - -########################################################### -#---- REPONSE TRANSITOIRE PAR SUPERPOSITION MODALE ------ -#---- MONO APPUI GRANDEURS RELATIVES ------ -########################################################### - -# DEFINITION DES INSTANTS DE RECUPERATION - -L_RECU=DEFI_LIST_REEL( DEBUT=0., - INTERVALLE=_F( - JUSQU_A = 20.47, - PAS = 0.01) - ) - -#---------------------------------------------------- -#------------- PROJECTION SUR LA BASE MODALE -------- -#---------------------------------------------------- -MACRO_PROJ_BASE( - BASE=MODES, - MATR_ASSE_GENE=( - _F( - MATRICE=CO("MASSEGEN"), - MATR_ASSE=MATRMASS, - ), - _F( - MATRICE=CO("RIGIDGEN"), - MATR_ASSE=MATRRIGI, - ), - ), - VECT_ASSE_GENE=( - _F( - VECTEUR=CO("EFGENX"), - VECT_ASSE=CHSEIX, - ), - _F( - VECTEUR=CO("EFGENY"), - VECT_ASSE=CHSEIY, - ), - _F( - VECTEUR=CO("EFGENZ"), - VECT_ASSE=CHSEIZ, - ), - ), - ) - -#------------------------------------------------------------------ -#-------------- RESOLUTION DU PB GENERALISE ----------------------- -#-------------- SANS CORRECTION STATIQUE -------------------------- -#------------------------------------------------------------------ -GSCR=DYNA_TRAN_MODAL( - MASS_GENE=MASSEGEN, - RIGI_GENE=RIGIDGEN, - AMOR_REDUIT=0.02, - EXCIT=( - _F( - VECT_GENE=EFGENX, - FONC_MULT=ACCELH1, - ), - _F( - VECT_GENE=EFGENY, - FONC_MULT=ACCELH1, - ), - _F( - VECT_GENE=EFGENZ, - FONC_MULT=ACCELV1, - ), - ), - INCREMENT=_F( - INST_INIT = 0., - INST_FIN =20.47, - PAS = 0.001 - ), - ) - -#-------------------------------------------------------------- -#---- RESTITUTION GRANDEUR PHYSIQUE DANS LE REPERE RELATIF -#--- SANS CORRECTION STATIQUE -#-------------------------------------------------------------- -# RESTITUTION GLOBALE DU CHAMP DE DEPLACEMENT RELATIF A CHAQUE INSTANT -# DE LA LISTE L_RECU -RGSCR=REST_GENE_PHYS( - RESU_GENE=GSCR, - INTERPOL='LIN', - LIST_INST=L_RECU, - #TOUT_INST='OUI', - TOUT_CHAM='OUI', - ) -DPSCR=CREA_CHAMP( - TYPE_CHAM='NOEU_DEPL_R', - OPERATION='EXTR', - RESULTAT=RGSCR, - NOM_CHAM='DEPL', - TYPE_MAXI='MAXI', - TYPE_RESU='VALE', - TOUT_ORDRE='OUI' - ) -TDPSCR=POST_RELEVE_T( - ACTION= - _F( - INTITULE = 'DEPL_MAX_R', - GROUP_NO='GNSTR01', - CHAM_GD=DPSCR, - TOUT_CMP='OUI', - OPERATION ='EXTRACTION', - ), - ) - - -# RESTITUTION GLOBALE DU CHAMP EFGE_ELNO_DEPL A CHAQUE INSTANT -# DE LA LISTE L_RECU -RGSCR=CALC_ELEM( - reuse=RGSCR, - MODELE=MODELE, - CHAM_MATER=CHMATP, - CARA_ELEM=CARA, - OPTION=( - 'EFGE_ELNO_DEPL', - ), - RESULTAT=RGSCR,) -EFSCR=CREA_CHAMP( - TYPE_CHAM='ELNO_SIEF_R', - OPERATION='EXTR', - RESULTAT=RGSCR, - NOM_CHAM='EFGE_ELNO_DEPL', - TYPE_MAXI='MAXI', - TYPE_RESU='VALE', - TOUT_ORDRE='OUI' - ) -TEFSCR=POST_RELEVE_T( - ACTION= - _F( - INTITULE = 'EFGE_MAX_R', - GROUP_NO='GNSTR01', - CHAM_GD=EFSCR, - TOUT_CMP='OUI', - OPERATION ='EXTRACTION', - ), - ) -IMPR_TABLE( - TABLE=TEFSCR, - FORMAT='TABLEAU', - ) - -########################################################### -#---- REPONSE TRANSITOIRE PAR SUPERPOSITION MODALE ------ -#---- MULTI APPUIS GRANDEURS ABSOLUES ------ -########################################################### - -# DEFINITION EXCITATION MULTIPLE - -MSTA=MODE_STATIQUE( - MATR_RIGI=MATRRIGI, - MATR_MASS=MATRMASS, - MODE_STAT=_F(TOUT='OUI',AVEC_CMP=('DX','DY','DZ'),),) - - -CHSEIXM=CALC_CHAR_SEISME( - MATR_MASS=MATRMASS, - DIRECTION=(1., 0., 0.,), - MODE_STAT=MSTA, - NOEUD=('N02__I00','N01__I00','N0701I00',), - ) - -CHSEIYM=CALC_CHAR_SEISME( - MATR_MASS=MATRMASS, - DIRECTION=(0., 1., 0.,), - MODE_STAT=MSTA, - NOEUD=('N02__I00','N01__I00','N0701I00',), - ) - -CHSEIZM=CALC_CHAR_SEISME( - MATR_MASS=MATRMASS, - DIRECTION=(0., 0., 1.,), - MODE_STAT=MSTA, - NOEUD=('N02__I00','N01__I00','N1201I00',), - ) - -MACRO_PROJ_BASE( - BASE=MODES, - MATR_ASSE_GENE=( - _F( - MATRICE=CO("MASGEN2"), - MATR_ASSE=MATRMASS, - ), - _F( - MATRICE=CO("RIGGEN2"), - MATR_ASSE=MATRRIGI, - ), - ), - VECT_ASSE_GENE=( - _F( - VECTEUR=CO("EFX2"), - VECT_ASSE=CHSEIXM, - ), - _F( - VECTEUR=CO("EFY2"), - VECT_ASSE=CHSEIYM, - ), - _F( - VECTEUR=CO("EFZ2"), - VECT_ASSE=CHSEIZM, - ), - ), - ) - - -VITESH1=CALC_FONCTION( - INTEGRE=_F(FONCTION=ACCELH1,METHODE='TRAPEZE',), - PROL_DROITE='CONSTANT' ) -DEPLAH1=CALC_FONCTION( - INTEGRE=_F(FONCTION=VITESH1,METHODE='TRAPEZE',), - PROL_DROITE='CONSTANT' ) -VITESV1=CALC_FONCTION( - INTEGRE=_F(FONCTION=ACCELV1,METHODE='TRAPEZE',), - PROL_DROITE='CONSTANT' ) -DEPLAV1=CALC_FONCTION( - INTEGRE=_F(FONCTION=VITESV1,METHODE='TRAPEZE',), - PROL_DROITE='CONSTANT' ) - -GSCA=DYNA_TRAN_MODAL( - MASS_GENE=MASGEN2, - RIGI_GENE=RIGGEN2, - AMOR_REDUIT=0.02, - MODE_STAT=MSTA, - EXCIT=( - _F( - VECT_GENE=EFX2, - ACCE=ACCELH1, - VITE=VITESH1, - DEPL=DEPLAH1, - MULT_APPUI='OUI', - DIRECTION=(1.,0.,0.,), - NOEUD=('N02__I00','N01__I00','N0701I00',), - ), - _F( - VECT_GENE=EFY2, - ACCE=ACCELH1, - VITE=VITESH1, - DEPL=DEPLAH1, - MULT_APPUI='OUI', - DIRECTION=(0.,1.,0.,), - NOEUD=('N02__I00','N01__I00','N0701I00',), - ), - _F( - VECT_GENE=EFZ2, - ACCE=ACCELV1, - VITE=VITESV1, - DEPL=DEPLAV1, - MULT_APPUI='OUI', - DIRECTION=(0.,0.,1.,), - NOEUD=('N02__I00','N01__I00','N1201I00',), - ), - ), - INCREMENT=_F( - INST_INIT = 0., - INST_FIN =20.47, - PAS = 0.001 - ), - ) - - -# RESTITUTION GRANDEURS ABSOLUES -#------------------------------- - -RGSCA=REST_GENE_PHYS( - RESU_GENE=GSCA, - INTERPOL='LIN', - LIST_INST=L_RECU, - TOUT_CHAM='OUI', - MULT_APPUI='OUI', - ) - -# DEPLACEMENTS - -DPSCA=CREA_CHAMP( - TYPE_CHAM='NOEU_DEPL_R', - OPERATION='EXTR', - RESULTAT=RGSCA, - NOM_CHAM='DEPL', - TYPE_MAXI='MAXI', - TYPE_RESU='VALE', - TOUT_ORDRE='OUI' - ) - -TDPSCA=POST_RELEVE_T( - ACTION= - _F( - INTITULE = 'DEPL_MAX_A', - GROUP_NO='GNSTR01', - CHAM_GD=DPSCA, - TOUT_CMP='OUI', - OPERATION ='EXTRACTION', - ), - ) - -IMPR_TABLE( - TABLE=TDPSCA, - FORMAT='TABLEAU', - ) - -# EFFORTS - -RGSCA=CALC_ELEM( - reuse=RGSCA, - MODELE=MODELE, - CHAM_MATER=CHMATP, - CARA_ELEM=CARA, - OPTION=( - 'EFGE_ELNO_DEPL', - ), - RESULTAT=RGSCA,) - -EFSCA=CREA_CHAMP( - TYPE_CHAM='ELNO_SIEF_R', - OPERATION='EXTR', - RESULTAT=RGSCA, - NOM_CHAM='EFGE_ELNO_DEPL', - TYPE_MAXI='MAXI', - TYPE_RESU='VALE', - TOUT_ORDRE='OUI' - ) - -TEFSCA=POST_RELEVE_T( - ACTION= - _F( - INTITULE = 'EFGE_MAX_A', - GROUP_NO='GNSTR01', - CHAM_GD=EFSCA, - TOUT_CMP='OUI', - OPERATION ='EXTRACTION', - ), - ) -IMPR_TABLE( - TABLE=TEFSCA, - FORMAT='TABLEAU', - ) - - -# RESTITUTION GRANDEURS RELATIVES -#------------------------------- - -# DEPLACEMENTS - -RGSCR2=REST_GENE_PHYS( - RESU_GENE=GSCA, - INTERPOL='LIN', - LIST_INST=L_RECU, - TOUT_CHAM='OUI', - ) - -DPSCR2=CREA_CHAMP( - TYPE_CHAM='NOEU_DEPL_R', - OPERATION='EXTR', - RESULTAT=RGSCR2, - NOM_CHAM='DEPL', - TYPE_MAXI='MAXI', - TYPE_RESU='VALE', - TOUT_ORDRE='OUI' - ) - -TDPSCR2=POST_RELEVE_T( - ACTION= - _F( - INTITULE = 'DEPL_MAX_R2', - GROUP_NO='GNSTR01', - CHAM_GD=DPSCR2, - TOUT_CMP='OUI', - OPERATION ='EXTRACTION', - ), - ) - -IMPR_TABLE( - TABLE=TDPSCR2, - FORMAT='TABLEAU', - ) - -# EFFORTS - -RGSCR2=CALC_ELEM( - reuse=RGSCR2, - MODELE=MODELE, - CHAM_MATER=CHMATP, - CARA_ELEM=CARA, - OPTION=( - 'EFGE_ELNO_DEPL', - ), - RESULTAT=RGSCR2,) - -EFSCR2=CREA_CHAMP( - TYPE_CHAM='ELNO_SIEF_R', - OPERATION='EXTR', - RESULTAT=RGSCR2, - NOM_CHAM='EFGE_ELNO_DEPL', - TYPE_MAXI='MAXI', - TYPE_RESU='VALE', - TOUT_ORDRE='OUI' - ) - -TEFSCR2=POST_RELEVE_T( - ACTION= - _F( - INTITULE = 'EFGE_MAX_R2', - GROUP_NO='GNSTR01', - CHAM_GD=EFSCR2, - TOUT_CMP='OUI', - OPERATION ='EXTRACTION', - ), - ) - -IMPR_TABLE( - TABLE=TEFSCR2, - FORMAT='TABLEAU', - ) - -########################################################### -#------REPONSE SPECTRALE PAR SUPERPOSITION MODALE--------- -########################################################### - -# CALCUL DU SPECTRE DE REPONSE OSCILLATEUR EN PSEUDO ACCELERATION ABSOLUE -# NAPPE SRO FONCTION DE AMORTISSEMENT -#------------------------------------------------------------------------ -SROXY=CALC_FONCTION( - SPEC_OSCI=_F( - FONCTION=ACCELH1, - AMOR_REDUIT=(0.02,0.05,0.10), - NORME=9.81, - ), - ) -SROZ=CALC_FONCTION( - SPEC_OSCI=_F( - FONCTION=ACCELV1, - AMOR_REDUIT=(0.02,0.05,0.10), - NORME=9.81, - ), - ) - - -#----------------------------------------------- -# REPONSE SPECTRALE SANS CORRECTION STATIQUE -#----------------------------------------------- -SPEC=COMB_SISM_MODAL( - MODE_MECA=MODES, - AMOR_REDUIT=0.02, - MASS_INER=MASSINER, - EXCIT=_F( - MONO_APPUI='OUI', - TRI_SPEC='OUI', - SPEC_OSCI=(SROXY,SROXY,SROZ), - ECHELLE=(9.81,9.81,9.81),), - COMB_MODE=_F(TYPE='CQC',), - COMB_DIRECTION=_F( TYPE = 'QUAD',), - OPTION=( - 'DEPL', - 'EFGE_ELNO_DEPL', - ), - ) - -EFSPEC=POST_RELEVE_T( - ACTION= - _F( - INTITULE = 'EFGE_SPEC', - GROUP_NO='GNSTR01', - RESULTAT=SPEC, - NOM_CHAM='EFGE_ELNO_DEPL', - NUME_ORDRE=4, - TOUT_CMP='OUI', - OPERATION ='EXTRACTION', - ), - ) - -IMPR_TABLE( - TABLE=EFSPEC, - FORMAT='TABLEAU', - ) - -DPSPEC=POST_RELEVE_T( - ACTION= - _F( - INTITULE = 'DEPL_SPEC', - GROUP_NO='GNSTR01', - RESULTAT=SPEC, - NOM_CHAM='DEPL', - NUME_ORDRE=4, - TOUT_CMP='OUI', - OPERATION ='EXTRACTION', - ), - ) - -IMPR_TABLE( - TABLE=DPSPEC, - FORMAT='TABLEAU', - ) - - - -FIN() - - - - - - diff --git a/Tests/testcomm9/g.comm b/Tests/testcomm9/g.comm deleted file mode 100644 index 8756209b..00000000 --- a/Tests/testcomm9/g.comm +++ /dev/null @@ -1,11 +0,0 @@ -DEBUT() -sensible=[2.1E11, 0.3, 1.E-6, 1.E-6, ] - -# parse: -affectation -n=len(sensible) -PS=[None]*n - -#for i in range(n): -# PS[i]=DEFI_PARA_SENSI(VALE=sensible[i]) - -FIN() diff --git a/Tests/testcomm9/hplp101b.comm b/Tests/testcomm9/hplp101b.comm deleted file mode 100755 index ef2790a1..00000000 --- a/Tests/testcomm9/hplp101b.comm +++ /dev/null @@ -1,189 +0,0 @@ -# MODIF DATE 09/05/2006 AUTEUR REZETTE C.REZETTE -# TITRE FISSURE AU CENTRE D'UNE PLAQUE MINCE RECTANGULAIRE FAISANT -# CONFIGURATION MANAGEMENT OF EDF VERSION -# ====================================================================== -# COPYRIGHT (C) 1991 - 2004 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# OBSTACLE A UN FLUC DE CHALEUR UNIFORME EN MILIEU ISOTROPE -# -# TESTE LES DERIVEES DE G DANS LE CAS D'UN CHARGEMENT EN FORCE DE VOLUME - -DEBUT( CODE=_F( NOM = 'HPLP101B',NIV_PUB_WEB='INTERNET')) - -YOUNG = DEFI_PARA_SENSI(VALE=1.) -FORC = DEFI_PARA_SENSI(VALE=1.) - -MA=LIRE_MAILLAGE( ) - -MA=DEFI_GROUP( reuse=MA, MAILLAGE=MA, - CREA_GROUP_NO=_F( - GROUP_MA = ( 'LP9P10', 'LP9P10B', - 'LP8P9', 'LP8P9B', - )) - ) - -MO=AFFE_MODELE( MAILLAGE=MA, - AFFE=_F( TOUT = 'OUI', - PHENOMENE = 'MECANIQUE', - MODELISATION = 'C_PLAN') - ) -ZERO = DEFI_CONSTANTE(VALE=0.) -NU = DEFI_CONSTANTE(VALE=0.3) -ALPHA = DEFI_CONSTANTE(VALE=0.) - -MAT=DEFI_MATERIAU(ELAS_FO=_F( E = YOUNG, NU = NU, - TEMP_DEF_ALPHA =20., - ALPHA = ALPHA, RHO=7800.,)) - -CHMAT=AFFE_MATERIAU( MAILLAGE=MA, - AFFE=_F( TOUT = 'OUI', - MATER = MAT) - ) - -CH=AFFE_CHAR_MECA_F( MODELE=MO, - FORCE_INTERNE=_F(TOUT='OUI',FY=FORC,), - DDL_IMPO=( - _F( GROUP_NO = 'LP8P9', - DX = ZERO), - _F( GROUP_NO = 'LP8P9B', - DX = ZERO), - _F( GROUP_NO = 'P11', - DY = ZERO)) - ) - -DEP=MECA_STATIQUE( MODELE=MO, CHAM_MATER=CHMAT, - SENSIBILITE = (FORC), - EXCIT=_F( CHARGE = CH), - ) - -DEP=CALC_ELEM(reuse=DEP,RESULTAT=DEP, - SENSIBILITE = (FORC), - OPTION=('EPSI_ELGA_DEPL','SIEF_ELGA_DEPL',),) - -FOND=DEFI_FOND_FISS( MAILLAGE=MA, - FOND_FISS=_F( GROUP_NO = ('P0',)), - NORMALE=(0., 1., 0.,) - ) - -THETA0=CALC_THETA( MODELE=MO, - THETA_2D=_F( GROUP_NO = ('P0',), - MODULE = 1., - R_INF = 3.75E-5, - R_SUP = 7.50E-5), - DIRECTION=(1., 0., 0.,) - ) - -G0=CALC_G( RESULTAT=DEP, - THETA=_F(THETA=THETA0), - SYME_CHAR='SANS', - COMP_ELAS=_F( RELATION = 'ELAS', - DEFORMATION = 'PETIT') - ) - -DG0=CALC_G( RESULTAT=DEP, - SENSIBILITE = (FORC), - THETA=_F(THETA=THETA0), - SYME_CHAR='SANS', - COMP_ELAS=_F( RELATION = 'ELAS', - DEFORMATION = 'PETIT') - ) - -TEST_TABLE( TABLE=DG0, - NOM_PARA='DG/DF', - SENSIBILITE = (FORC), - VALE=1.06E-2, - REFERENCE='ANALYTIQUE', - PRECISION=0.0005 ) -FIN() - -THETA01=CALC_THETA( MODELE=MO, - THETA_2D=_F( GROUP_NO = ('P0',), - MODULE = 1., - R_INF = 7.50E-5, - R_SUP = 1.125E-4), - DIRECTION=(1., 0., 0.,) - ) - -G1=CALC_G( RESULTAT=DEP, - THETA=_F(THETA=THETA01), - COMP_ELAS=_F( RELATION = 'ELAS', - DEFORMATION = 'PETIT'), - SYME_CHAR='SANS' - ) - -DG1=CALC_G( RESULTAT=DEP, - SENSIBILITE = (FORC), - THETA=_F(THETA=THETA01), - SYME_CHAR='SANS', - COMP_ELAS=_F( RELATION = 'ELAS', - DEFORMATION = 'PETIT') - ) - -TEST_TABLE( TABLE=DG1, - NOM_PARA='G', - SENSIBILITE = (FORC), - REFERENCE='ANALYTIQUE', - VALE=1.06E-2, - PRECISION=0.0005 ) - -# -# DERIVEE PAR RAPPORT A E -# - -DEP2=MECA_STATIQUE( MODELE=MO, CHAM_MATER=CHMAT, - SENSIBILITE = (YOUNG), - EXCIT=_F( CHARGE = CH), - ) - -DEP2=CALC_ELEM(reuse=DEP2,RESULTAT=DEP2, - SENSIBILITE = (YOUNG), - OPTION=('EPSI_ELGA_DEPL','SIEF_ELGA_DEPL',),) - - -DG2=CALC_G( RESULTAT=DEP2, - SENSIBILITE = (YOUNG), - THETA=_F(THETA=THETA0), - SYME_CHAR='SANS', - COMP_ELAS=_F( RELATION = 'ELAS', - DEFORMATION = 'PETIT') - ) - -TEST_TABLE( TABLE=DG2, - NOM_PARA='G', - SENSIBILITE = (YOUNG), - REFERENCE='ANALYTIQUE', - VALE=-5.3E-3, - PRECISION=0.0005 ) - - -DG3=CALC_G( RESULTAT=DEP2, - SENSIBILITE = (YOUNG), - THETA=_F(THETA=THETA01), - SYME_CHAR='SANS', - COMP_ELAS=_F( RELATION = 'ELAS', - DEFORMATION = 'PETIT') - ) - -TEST_TABLE( TABLE=DG3, - NOM_PARA='G', - VALE=-5.3E-3, - SENSIBILITE = (YOUNG), - REFERENCE='ANALYTIQUE', - PRECISION=0.0005 ) - - -FIN() - diff --git a/Tests/testcomm9/hsnv100h.comm b/Tests/testcomm9/hsnv100h.comm deleted file mode 100755 index e23f47d5..00000000 --- a/Tests/testcomm9/hsnv100h.comm +++ /dev/null @@ -1,46 +0,0 @@ -# MODIF DATE 23/10/2006 AUTEUR VABHHTS J.PELLET -# TITRE THERMO-PLASTICITE EN TRACTION SIMPLE (MODELISATION:C_PLAN) -# CONFIGURATION MANAGEMENT OF EDF VERSION -# ====================================================================== -# COPYRIGHT (C) 1991 - 2006 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# - -DEBUT(CODE=_F( NOM = 'HSNV100H',NIV_PUB_WEB='INTRANET'),IMPR_MACRO='OUI',DEBUG=_F(SDVERI='OUI')) - -#...................................................................... -# CAS TEST THERMOPLASTICITE ELEMENTAIRE -#...................................................................... -# DEFINITION DES CARACTERISTIQUES DU MATERIAU -# - -MAIL=LIRE_MAILLAGE( ) - -INCLUDE_MATERIAU(TYPE_MODELE='REF', - TYPE_VALE='NOMI', - NOM_AFNOR='Z2CND1712', - VARIANTE='A', - NOM_MATER='MONMAT', - UNITE_LONGUEUR='MM' - ) - -CHMAT=AFFE_MATERIAU( MAILLAGE=MAIL,AFFE=( - _F( TOUT='OUI', MATER = MONMAT), - ),) - -# - -FIN() diff --git a/Tests/testcomm9/incmat.comm b/Tests/testcomm9/incmat.comm deleted file mode 100644 index 705a1cbd..00000000 --- a/Tests/testcomm9/incmat.comm +++ /dev/null @@ -1,7 +0,0 @@ -DEBUT() -MA=LIRE_MAILLAGE() -INCLUDE_MATERIAU( NOM_AFNOR='18MND5', TYPE_MODELE='REF', - VARIANTE='A', TYPE_VALE='NOMI', - NOM_MATER='MAT3', INFO=1 ) - -FIN() diff --git a/Tests/testcomm9/param1.comm b/Tests/testcomm9/param1.comm deleted file mode 100644 index 79172614..00000000 --- a/Tests/testcomm9/param1.comm +++ /dev/null @@ -1,36 +0,0 @@ - -DEBUT() -TEMP_MOY=50. -coef0 = 1.E-3 - -A0=DEFI_FONCTION( NOM_PARA='TEMP', - PROL_DROITE='EXCLU', - PROL_GAUCHE='EXCLU', - VALE=( - 20. ,14.7 *coef0, - 50. ,15.2 *coef0, - 100. ,15.8 *coef0, - 150. ,16.7 *coef0, - 200. ,17.2 *coef0, - 250. ,18. *coef0, - 300. ,18.6 *coef0, - 350. ,19.3 *coef0, - 400. ,20. *coef0, - 450. ,20.5 *coef0, - 500. ,21.1 *coef0, - 550. ,21.7 *coef0, - 600. ,22.2 *coef0, - 650. ,22.7 *coef0, - 700. ,23.2 *coef0, - 750. ,23.7 *coef0, - 800. ,24.1 *coef0, - 950. ,26.67 *coef0, - 1150. ,29.24 *coef0, - 1370. ,32.06 *coef0, - )) - -DEFI_MATERIAU( ELAS=_F( RHO = 1.E08, - NU = 0.3, - E = A0(TEMP_MOY))) - -FIN() diff --git a/Tests/testcomm9/param2.com0 b/Tests/testcomm9/param2.com0 deleted file mode 100644 index 2d32a387..00000000 --- a/Tests/testcomm9/param2.com0 +++ /dev/null @@ -1,4 +0,0 @@ -POURSUITE(); -l1=DEFI_LIST_ENTI(DEBUT=mon_param,); -FIN(); - diff --git a/Tests/testcomm9/param2.comm b/Tests/testcomm9/param2.comm deleted file mode 100644 index 19c8eeb2..00000000 --- a/Tests/testcomm9/param2.comm +++ /dev/null @@ -1,4 +0,0 @@ -DEBUT(); -mon_param = 2; -m=LIRE_MAILLAGE() -FIN(); diff --git a/Tests/testcomm9/param3.11 b/Tests/testcomm9/param3.11 deleted file mode 100644 index 236ca5ca..00000000 --- a/Tests/testcomm9/param3.11 +++ /dev/null @@ -1,2 +0,0 @@ -x=45 -y=77 diff --git a/Tests/testcomm9/param3.12 b/Tests/testcomm9/param3.12 deleted file mode 100644 index 2c2a2157..00000000 --- a/Tests/testcomm9/param3.12 +++ /dev/null @@ -1 +0,0 @@ -d=5;f=7 diff --git a/Tests/testcomm9/param3.com0 b/Tests/testcomm9/param3.com0 deleted file mode 100644 index d5a0bbf5..00000000 --- a/Tests/testcomm9/param3.com0 +++ /dev/null @@ -1,11 +0,0 @@ -POURSUITE(); -l1=DEFI_LIST_ENTI(DEBUT=2*mon_param+1,); -l2=DEFI_LIST_ENTI(DEBUT=a[1]); -INCLUDE_MATERIAU( NOM_AFNOR='18MND5', TYPE_MODELE='REF', - VARIANTE='A', TYPE_VALE='NOMI', - NOM_MATER='MAT3', INFO=1 ) -INCLUDE(UNITE=11) -INCLUDE(UNITE=12) - -FIN(); - diff --git a/Tests/testcomm9/param3.comm b/Tests/testcomm9/param3.comm deleted file mode 100644 index b7a38ea2..00000000 --- a/Tests/testcomm9/param3.comm +++ /dev/null @@ -1,5 +0,0 @@ -DEBUT(); -mon_param = 2; -m=LIRE_MAILLAGE() -a=[1,2,3,4];b=2 -FIN(); diff --git a/Tests/testcomm9/pars1.comm b/Tests/testcomm9/pars1.comm deleted file mode 100644 index 53e7f325..00000000 --- a/Tests/testcomm9/pars1.comm +++ /dev/null @@ -1,61 +0,0 @@ -DEBUT() -a=1 # comment -c=32.3 # comment - -aa='string # bizarre' -a="string # bizarre" - -b="string ( bizarre" - -d="""string multi -line -""" -e="""string multi # ssssssssssss -line -""" -P='''string # bizarre' #profondeur ' # autre -bbb''' - -#comment -#comment -#comment - -#commenta -##XXXX=CHARGE(RAYON=0.1E-2,VALE=(0.12E-1,0.54E-5,0.1),MCF=_F(VALE=0.3E-5), -## V="toto", - ## ) -#commentb - -##CH=CHARGE(RAYON=0.1E-2,VALE=(0.12E-1,0.54E-5,0.1),MCF=_F(VALE=0.3E-5), -## MCF2=(_F(VALE=0.3E-4,GROUP_MA='GMA0601'),_F(VALE=0.3E-2)), -## VALE_C=[0.12E-3,0.54E-1,0.1], - ## ) -MA=LIRE_MAILLAGE() -a=(10, -#commentc -12,13) - -#commentd -P=1 #profondeur -#commente -aaa=(10, -11, #commentc -12,13) -xx=EVAL("13.26") - -fmt_raison='-'*80+''' - - Exception erreur_Fatale interceptee - Raison : %s - -'''+'-'*80+'xxxxxxxxxxxxxxxx\n' - -# commen """ -# commen ''' -# commen ' -# commen " -BETA=3.41557E-08 - -a=8.3 ; #position - -FIN() diff --git a/Tests/testcomm9/parseur.comm b/Tests/testcomm9/parseur.comm deleted file mode 100644 index 92aaf898..00000000 --- a/Tests/testcomm9/parseur.comm +++ /dev/null @@ -1,74 +0,0 @@ -DEBUT() -P1 = 9.8; - -P2 = 8.8; - -P3 = 7; - -P5 = P3*P1; - -P6 = P1-3; - -P4 = [2,3,4]; - -a = 1. -b=3 -c= 3 * 5 -cc="b+3" -d= 4 + \ - 5 \ - -4 -e=LIRE_MAILLAGE() -##MA=LIRE_MAILLAGE() -x=(1,2) -y=[3, -#comme -4] -z="a" -zz='v' -u='''aaaa -bbbb''' -#ne marche pas avec le parseur actuel -#if 1: -# a=45 -#else: -# a=5.6 -d={"a":0} -e={"a":0, -#comme -"d":4} -#ne marche pas avec le parseur actuel -#a==1 -s="-"*80 -fmt_raison='-'*80+''' - - Exception erreur_Fatale interceptee - Raison : %s - -'''+'-'*80+'xxxxxxxxxxxxxxxx\n' - -# commen """ -# commen ''' -# commen ' -# commen " -BETA=3.41557E-08 - -C_0=105.7 - -C_EQ_I05=69.1 - -C_EQ_E05=69.1 - -C_EQ_I10=51.6 - -C_EQ_E10=69.1 - -FL_INT05 = FORMULE(NOM_PARA='TEMP',VALE=''' -(0.5*BETA / ((C_0 - C_EQ_I05 )**2) - * (TEMP - (2.*C_0 - C_EQ_I05 ))*(TEMP - C_EQ_I05 ))''') - -zz=8.9; -#ne marche pas avec le parseur actuel -#zz=8.9;aa=10 #position - -FIN() diff --git a/Tests/testcomm9/testcomm.py b/Tests/testcomm9/testcomm.py deleted file mode 100644 index fb9dfbb9..00000000 --- a/Tests/testcomm9/testcomm.py +++ /dev/null @@ -1,70 +0,0 @@ -import os,glob,sys -import unittest -import difflib - -import prefs -from InterfaceTK import appli - -def add_param(j,pos,nom,valeur): - co=j.addEntite("PARAMETRE",pos) - co.setNom(nom) - co.set_valeur(valeur) - return co - -def add_mcsimp(obj,nom,valeur): - mcs=obj.getChild(nom,restreint='oui') - if mcs is None: - pos=obj.getIndexChild(nom) - mcs=obj.addEntite(nom,pos) - mcs.set_valeur(mcs.evalVal(valeur)) - return mcs - -def cdiff(text1,text2): - return " ".join(difflib.context_diff(text1.splitlines(1),text2.splitlines(1))) - -class TestCase(unittest.TestCase): - app=None - def setUp(self): - if self.app == None: - self.app=appli.STANDALONE(version='v9') - pass - - def tearDown(self): - CONTEXT.unsetCurrentStep() - - i=0 - files= os.path.join(os.path.dirname(__file__),"*.comm") - for f in glob.glob(os.path.join(prefs.INSTALLDIR,files)): - for o in ('3','2','1','0','m'): - f=f[:-1]+o - if os.path.isfile(f):break - - i=i+1 - exec """def test%s(self,file="%s"): - "fichier:%s" - self.commtest(file) -""" % (i,f,f) - del i - - def commtest(self,file): - """ Test generique""" - #print file - name=os.path.splitext(os.path.basename(file))[0] - errfile=os.path.join(os.path.dirname(__file__),name+".err") - err="" - if os.path.isfile(errfile): - f=open(errfile) - err=f.read() - f.close() - j=self.app.openJDC(file=file) - assert j.cr.getMessException() == "" - - if err == "": - assert j.isValid(),j.report() - else: - txt=str(j.report()) - assert txt == err,cdiff(err,txt) - - CONTEXT.unsetCurrentStep() - j.supprime() - assert sys.getrefcount(j) == 2,sys.getrefcount(j) diff --git a/Tests/testcomm9/titi.comm b/Tests/testcomm9/titi.comm deleted file mode 100644 index a235be8a..00000000 --- a/Tests/testcomm9/titi.comm +++ /dev/null @@ -1,69 +0,0 @@ -DEBUT() -YOUNG = DEFI_PARA_SENSI(VALE=1.) -FORC = DEFI_PARA_SENSI(VALE=1.) -MA=LIRE_MAILLAGE() -MA=DEFI_GROUP( reuse=MA, MAILLAGE=MA, - CREA_GROUP_NO=_F( - GROUP_MA = ( 'LP9P10', 'LP9P10B', - 'LP8P9', 'LP8P9B', - )) - ) - -MO=AFFE_MODELE( MAILLAGE=MA, - AFFE=_F( TOUT = 'OUI', - PHENOMENE = 'MECANIQUE', - MODELISATION = 'C_PLAN') - ) -ZERO = DEFI_CONSTANTE(VALE=0.) -NU = DEFI_CONSTANTE(VALE=0.3) -ALPHA = DEFI_CONSTANTE(VALE=0.) - -MAT=DEFI_MATERIAU(ELAS_FO=_F( E = YOUNG, NU = NU, - TEMP_DEF_ALPHA =20., - ALPHA = ALPHA, RHO=7800.,)) - -CHMAT=AFFE_MATERIAU( MAILLAGE=MA, - AFFE=_F( TOUT = 'OUI', - MATER = MAT) - ) - -CH=AFFE_CHAR_MECA_F( MODELE=MO, - FORCE_INTERNE=_F(TOUT='OUI',FY=FORC,), - DDL_IMPO=( - _F( GROUP_NO = 'LP8P9', - DX = ZERO), - _F( GROUP_NO = 'LP8P9B', - DX = ZERO), - _F( GROUP_NO = 'P11', - DY = ZERO)) - ) - -DEP=MECA_STATIQUE( MODELE=MO, CHAM_MATER=CHMAT, - SENSIBILITE = (FORC), - EXCIT=_F( CHARGE = CH), - ) - -DEP=CALC_ELEM(reuse=DEP,RESULTAT=DEP, - SENSIBILITE = (FORC), - OPTION=('EPSI_ELGA_DEPL','SIEF_ELGA_DEPL',),) - -FOND=DEFI_FOND_FISS( MAILLAGE=MA, - FOND_FISS=_F( GROUP_NO = ('P0',)), - NORMALE=(0., 1., 0.,) - ) - -THETA0=CALC_THETA( MODELE=MO, - THETA_2D=_F( GROUP_NO = ('P0',), - MODULE = 1., - R_INF = 3.75E-5, - R_SUP = 7.50E-5), - DIRECTION=(1., 0., 0.,) - ) - - -FIN() -MA1=LIRE_MAILLAGE() -MO1=AFFE_MODELE( MAILLAGE=MA1, AFFE=_F( TOUT = 'OUI', - PHENOMENE = 'MECANIQUE', MODELISATION = 'C_PLAN')) - -FIN() diff --git a/Tests/testcomm9/toto.comm b/Tests/testcomm9/toto.comm deleted file mode 100644 index 1bd3e3da..00000000 --- a/Tests/testcomm9/toto.comm +++ /dev/null @@ -1,7 +0,0 @@ -DEBUT() - -MA=LIRE_MAILLAGE(UNITE=20, -#cocococo=LIRE_MAILLAGE(UNITE=20, - VERI_MAIL=_F(VERIF='OUI',), - INFO=1,); -FIN() diff --git a/Tests/testelem/az.comm b/Tests/testelem/az.comm deleted file mode 100644 index 3d5fa743..00000000 --- a/Tests/testelem/az.comm +++ /dev/null @@ -1,114 +0,0 @@ - -DEBUT(); -P1 = 9.8; - -P2 = 8.8; - -P3 = 7; - -P5 = (P3 * P1); - -P6 = (P1 - 3); - -P4 = [2, 3, 4]; - - -#Pas trouve shellpanel - -MAILLA2=LIRE_MAILLAGE(UNITE=P4[1],); - -aaa = FORMULE(VALE='a+z', - NOM_PARA=('a','z',),); - -MAIL=LIRE_MAILLAGE(UNITE=P3,); - -# 'LIRE_MAILLAGE', 'UNITE' --> uniquebasepanel - -az = FORMULE(VALE='aaaaa', - NOM_PARA=('ae','inst',),); - -AFFE1=AFFE_MODELE(MAILLAGE=MAIL, - AFFE=(_F(GROUP_MA=('RESSORT','eee',), - PHENOMENE='MECANIQUE', - MODELISATION='DIS_T',), - _F(GROUP_MA='MASSES', - PHENOMENE='MECANIQUE', - MODELISATION='DIS_T',), - _F(GROUP_NO=('GNP3','GNP5','GNP6','GNP7','GNP8','GNP9','GNP10','GNP11','GNP12',), - PHENOMENE='ACOUSTIQUE', - MODELISATION='PLAN',),),); - -MOD=AFFE_MODELE(MAILLAGE=MAIL, - AFFE=(_F(GROUP_MA='RESSORT', - PHENOMENE='MECANIQUE', - MODELISATION='DIS_T',), - _F(GROUP_MA='MASSES', - PHENOMENE='MECANIQUE', - MODELISATION='DIS_T',), - _F(TOUT='OUI', - PHENOMENE='THERMIQUE', - MODELISATION='COQUE',),),); - -CARA=AFFE_CARA_ELEM(MODELE=MOD, - POUTRE=_F(GROUP_MA='MA', - SECTION='CERCLE', - CARA='R', - VALE=(3.0,P6,),),); - -# 'AFFE_MODELE', 'MAILLAGE' --> uniqueassdpanel -# AFFE_MODELE', 'AFFE', 'GROUP_MA' --> plusieursbasepanel -# 'AFFE_MODELE', 'AFFE', 'PHENOMENE' --> uniqueintopanel -# 'AFFE_MODELE', 'AFFE', 'b_mecanique'--> plusieursintopanel - -F1=DEFI_FONCTION(NOM_PARA='DX',VALE=(5.0,3.0, - P4[1],P3, - ),); - -F3=DEFI_FONCTION(NOM_PARA='DRX',VALE_C=(5.0,7.0,9.0, - 9.0,8.0,7.0, - ),); - -# 'DEFI_FONCTION', 'VALE' --> fonctionpanel - -MATER2=DEFI_MATERIAU(ELAS=_F(E=100000000000.0, - NU=0.0,), - ECRO_ASYM_LINE=_F(DC_SIGM_EPSI=0.0, - SY_C=200000000.0, - DT_SIGM_EPSI=0.0, - SY_T=50000000.0,),); - -PS1=DEFI_PARA_SENSI(VALE=1.0,); - -PS2=DEFI_PARA_SENSI(VALE=1.0,); - -PS3=DEFI_PARA_SENSI(VALE=1.0,); - -CHMAT2=AFFE_MATERIAU(MAILLAGE=MAIL, - AFFE=_F(TOUT='OUI', - MATER=MATER2,),); - -AAAZ=AFFE_CHAR_THER(MODELE=AFFE1, - TEMP_IMPO=_F(TOUT='OUI', - TEMP=0.0,),); - -TH1=THER_LINEAIRE(MODELE=AFFE1, - CHAM_MATER=CHMAT2, - EXCIT=_F(CHARGE=AAAZ,), - SENSIBILITE=(PS1,PS2,),); - -# 'THER_LINEAIRE', 'SENSIBILITE' --> plusieursassdpanel - -ACA1=AFFE_CHAR_ACOU(MODELE=AFFE1, - PRES_IMPO=_F(TOUT='OUI', - PRES=('RI',3.0,3.0,),),); - -# 'AFFE_CHAR_ACOU', 'PRES_IMPO', 'PRES' --> uniquecomppanel - -MACRO_MATR_ASSE(MODELE=AFFE1, - NUME_DDL=CO('DDL1'), - MATR_ASSE=_F(MATRICE=CO('MAT1'), - OPTION='RIGI_THER',),); - -# 'MACRO_MATR_ASSE', 'MATR_ASSE', 'MATRICE' --> uniquesdcopanel - -FIN(); diff --git a/Tests/testelem/azv6.comm b/Tests/testelem/azv6.comm deleted file mode 100644 index 422743da..00000000 --- a/Tests/testelem/azv6.comm +++ /dev/null @@ -1,112 +0,0 @@ - -DEBUT(); -P1 = 9.8; - -P2 = 8.8; - -P3 = 7; - -P5 = (P3 * P1); - -P6 = (P1 - 3); - -P4 = [2, 3, 4]; - - -#Pas trouve shellpanel - -MAILLA2=LIRE_MAILLAGE(UNITE=P4[1],); - -aaa = FORMULE(REEL='(a+z) = (a,z)',); - -MAIL=LIRE_MAILLAGE(UNITE=P3,); - -# 'LIRE_MAILLAGE', 'UNITE' --> uniquebasepanel - -az = FORMULE(REEL='(aaaaa) = (ae,inst)',); - -AFFE1=AFFE_MODELE(MAILLAGE=MAIL, - AFFE=(_F(GROUP_MA=('RESSORT','eee',), - PHENOMENE='MECANIQUE', - MODELISATION='DIS_T',), - _F(GROUP_MA='MASSES', - PHENOMENE='MECANIQUE', - MODELISATION='DIS_T',), - _F(GROUP_NO=('GNP3','GNP5','GNP6','GNP7','GNP8','GNP9','GNP10','GNP11','GNP12',), - PHENOMENE='ACOUSTIQUE', - MODELISATION='PLAN',),),); - -MOD=AFFE_MODELE(MAILLAGE=MAIL, - AFFE=(_F(GROUP_MA='RESSORT', - PHENOMENE='MECANIQUE', - MODELISATION='DIS_T',), - _F(GROUP_MA='MASSES', - PHENOMENE='MECANIQUE', - MODELISATION='DIS_T',), - _F(TOUT='OUI', - PHENOMENE='THERMIQUE', - MODELISATION='COQUE',),),); - -CARA=AFFE_CARA_ELEM(MODELE=MOD, - POUTRE=_F(GROUP_MA='MA', - SECTION='CERCLE', - CARA='R', - VALE=(3.0,P6,),),); - -# 'AFFE_MODELE', 'MAILLAGE' --> uniqueassdpanel -# AFFE_MODELE', 'AFFE', 'GROUP_MA' --> plusieursbasepanel -# 'AFFE_MODELE', 'AFFE', 'PHENOMENE' --> uniqueintopanel -# 'AFFE_MODELE', 'AFFE', 'b_mecanique'--> plusieursintopanel - -F1=DEFI_FONCTION(NOM_PARA='DX',VALE=(5.0,3.0, - P4[1],P3, - ),); - -F3=DEFI_FONCTION(NOM_PARA='DRX',VALE_C=(5.0,7.0,9.0, - 9.0,8.0,7.0, - ),); - -# 'DEFI_FONCTION', 'VALE' --> fonctionpanel - -MATER2=DEFI_MATERIAU(ELAS=_F(E=100000000000.0, - NU=0.0,), - ECRO_ASYM_LINE=_F(DC_SIGM_EPSI=0.0, - SY_C=200000000.0, - DT_SIGM_EPSI=0.0, - SY_T=50000000.0,),); - -PS1=DEFI_PARA_SENSI(VALE=1.0,); - -PS2=DEFI_PARA_SENSI(VALE=1.0,); - -PS3=DEFI_PARA_SENSI(VALE=1.0,); - -CHMAT2=AFFE_MATERIAU(MAILLAGE=MAIL, - AFFE=_F(TOUT='OUI', - MATER=MATER2,),); - -AAAZ=AFFE_CHAR_THER(MODELE=AFFE1, - TEMP_IMPO=_F(TOUT='OUI', - TEMP=0.0,),); - -TH1=THER_LINEAIRE(MODELE=AFFE1, - CHAM_MATER=CHMAT2, - EXCIT=_F(CHARGE=AAAZ,), - SENSIBILITE=(PS1,PS2,),); - -# 'THER_LINEAIRE', 'SENSIBILITE' --> plusieursassdpanel - -ACA1=AFFE_CHAR_ACOU(MODELE=AFFE1, - PRES_IMPO=_F(TOUT='OUI', - PRES=('RI',3.0,3.0,),),); - -# 'AFFE_CHAR_ACOU', 'PRES_IMPO', 'PRES' --> uniquecomppanel - -MACRO_MATR_ASSE(MODELE=AFFE1, - NUME_DDL=CO('DDL1'), - MATR_ASSE=_F(MATRICE=CO('MAT1'), - OPTION='RIGI_THER',),); - -# 'MACRO_MATR_ASSE', 'MATR_ASSE', 'MATRICE' --> uniquesdcopanel - -FIN(); diff --git a/Tests/testelem/cata1.py b/Tests/testelem/cata1.py deleted file mode 100644 index 7733dda8..00000000 --- a/Tests/testelem/cata1.py +++ /dev/null @@ -1,82 +0,0 @@ -from Accas import SIMP,FACT,OPER,ASSD,AsException,AsType -import Noyau - -class CATA: - def __init__(self): - CONTEXT.unsetCurrentCata() - CONTEXT.setCurrentCata(self) - def enregistre(self,cmd): - pass - -cata=CATA() - -class concept(ASSD,Noyau.AsBase):pass - -OP1 = OPER(nom='OP1',op=1,sd_prod=concept, - a=SIMP(typ='I'), - c=SIMP(typ='I',position='global'), - ) - -class concept2(ASSD,Noyau.AsBase):pass -class concept3(ASSD,Noyau.AsBase):pass - -def op2_prod(TYPE_RESU,**args): - if TYPE_RESU == "TRANS" : return concept2 - if TYPE_RESU == "HARMO" : return concept3 - raise AsException("type de concept resultat non prevu") - -OP2=OPER(nom='OP2',op=2,sd_prod=op2_prod, - TYPE_RESU =SIMP(statut='f',typ='TXM',defaut="TRANS",into=("TRANS","HARMO") ), - ) - -def op3_prod(MATR,**args): - if AsType(MATR) == concept : return concept2 - raise AsException("type de concept resultat non prevu") - -OP3=OPER(nom='OP3',op=3,sd_prod=op3_prod, - MATR =SIMP(statut='o',typ=concept), - ) - -def op4_prod(MESURE,**args): - vale=MESURE['NOM_PARA'] - if vale == 'INST' : return concept - raise AsException("type de concept resultat non prevu") - -OP4=OPER(nom='OP4',op=4,sd_prod=op4_prod, - MESURE =FACT(statut='o',min=01,max=01, - NOM_PARA =SIMP(statut='f',typ='TXM',defaut="INST",into=("INST",) ), - ) - ) - -def op5_prod(FFT,**args): - if (FFT != None) : - vale=FFT.getChild('FONCTION').getValeur() - if (AsType(vale) == concept ) : return concept - if (AsType(vale) == concept2) : return concept2 - raise AsException("type de concept resultat non prevu") - - -OP5=OPER(nom='OP5',op=5,sd_prod=op5_prod, - FFT =FACT(statut='f',min=1,max=1, - FONCTION =SIMP(statut='o',typ=(concept,concept2) ) - ), - ) - -def op6_prod(FILTRE,**args): - vale=FILTRE[0]['MODE'] - if AsType(vale) == concept : return concept - if AsType(vale) == concept2 : return concept2 - raise AsException("type de concept resultat non prevu") - -OP6=OPER(nom='OP6',op=6,sd_prod=op6_prod, - FILTRE =FACT(statut='o',min=01,max='**', - MODE =SIMP(statut='o',typ=(concept,concept2) ), - ) - ) - -OP7=OPER(nom='OP7',op=7,sd_prod=concept, - FILTRE =FACT(statut='o',min=01,max='**', - MODE =SIMP(statut='o',typ=(concept,concept2) ), - ) - ) - diff --git a/Tests/testelem/cata2.py b/Tests/testelem/cata2.py deleted file mode 100644 index f0422177..00000000 --- a/Tests/testelem/cata2.py +++ /dev/null @@ -1,67 +0,0 @@ -from Accas import SIMP,FACT,OPER,ASSD,AsException,AsType,CO,MACRO -import Noyau - - -class CATA: - def __init__(self): - CONTEXT.unsetCurrentCata() - CONTEXT.setCurrentCata(self) - def enregistre(self,cmd): - pass - -cata=CATA() - -class concept(ASSD,Noyau.AsBase):pass - -OP1 = OPER(nom='OP1',op=1,sd_prod=concept, - a=SIMP(typ='I'), - c=SIMP(typ='I',position='global'), - ) - -class concept2(ASSD,Noyau.AsBase):pass -class concept3(ASSD,Noyau.AsBase):pass - -def op2_prod(self,MATR,**args): - self.typeSDProd(MATR,concept2) - return concept - -OP2=MACRO(nom='OP2',op=-2,sd_prod=op2_prod, - MATR=SIMP(statut='o',typ=(CO,concept2)), - ) - -def op3_prod(self,MATR,**args): - for m in MATR: - t=m['CHAM'] - if t == 'R':self.typeSDProd(m['MM'],concept) - return concept - -OP3=MACRO(nom='OP3',op=-3,sd_prod=op3_prod, - MATR=FACT(statut='f',min=1,max='**', - CHAM=SIMP(statut='o',typ='TXM',into=("R","I"),), - MM=SIMP(statut='o',typ=(CO,concept)), - ), - ) - - -def op4_prod(self,MATR,**args): - if MATR == None :raise AsException("impossible recuperer mot cle facteur par defaut") - return concept - -OP4=MACRO(nom='OP4',op=-4,sd_prod=op4_prod, - MATR=FACT(statut='d',min=1,max='**', - CHAM=SIMP(statut='f',typ='TXM',defaut="R"), - ), - ) -OP5=MACRO(nom='OP5',op=-2,sd_prod=op2_prod, MATR=SIMP(statut='o',typ=CO),) - -def OP6_ops(self,MATR,**args): - """ - """ - ier=0 - self.set_icmd(1) - self.DeclareOut('cc',self.sd) - cc=OP2(MATR=MATR) - return ier - -OP6=MACRO(nom='OP6',op=OP6_ops,sd_prod=op2_prod, MATR=SIMP(statut='o',typ=CO),) - diff --git a/Tests/testelem/cata3.py b/Tests/testelem/cata3.py deleted file mode 100644 index 76ecaa60..00000000 --- a/Tests/testelem/cata3.py +++ /dev/null @@ -1,83 +0,0 @@ -from Accas import SIMP,FACT,OPER,ASSD,AsException,AsType,CO,MACRO,JDC_CATA - -class concept(ASSD):pass - -JdC=JDC_CATA(code="ASTER") - -OP1 = OPER(nom='OP1',op=1,sd_prod=concept, - a=SIMP(typ='I'), - c=SIMP(typ='I',position='global'), - ) - -class concept2(ASSD):pass -class concept3(ASSD):pass - -def op2_prod(self,MATR,**args): - self.typeSDProd(MATR,concept2) - return concept - -OP2=MACRO(nom='OP2',op=-2,sd_prod=op2_prod, - MATR=SIMP(statut='o',typ=(CO,concept2)), - ) - -def op3_prod(self,MATR,**args): - for m in MATR: - t=m['CHAM'] - if t == 'R':self.typeSDProd(m['MM'],concept) - return concept - -OP3=MACRO(nom='OP3',op=-3,sd_prod=op3_prod, - MATR=FACT(statut='f',min=1,max='**', - CHAM=SIMP(statut='o',typ='TXM',into=("R","I"),), - MM=SIMP(statut='o',typ=(CO,concept)), - ), - ) - - -def op4_prod(self,MATR,**args): - if MATR == None :raise AsException("impossible recuperer mot cle facteur par defaut") - return concept - -OP4=MACRO(nom='OP4',op=-4,sd_prod=op4_prod, - MATR=FACT(statut='d',min=1,max='**', - CHAM=SIMP(statut='f',typ='TXM',defaut="R"), - ), - ) - -def INCLUDE_prod(self,UNITE,**args): - """ Fonction sd_prod pour la macro include - """ - # Si unite a change on reevalue le fichier associe - if not hasattr(self,'unite') or self.unite != UNITE: - f,text=self.get_file(unite=UNITE) - self.unite=UNITE - self.fichier_init = f - # on execute le texte fourni dans le contexte forme par - # le contexte de l etape pere (global au sens Python) - # et le contexte de l etape (local au sens Python) - code=compile(text,f,'exec') - if self.jdc and self.jdc.parLot == 'NON': - # On est en mode commande par commande - # On teste la validite de la commande avec interruption eventuelle - cr=self.report() - self.parent.cr.add(cr) - if not cr.estvide(): - raise EOFError - d={} - self.g_context = d - self.contexte_fichier_init = d - exec code in self.parent.g_context,d - -def INCLUDE_context(self,d): - """ Fonction op_init pour macro INCLUDE - """ - for k,v in self.g_context.items(): - d[k]=v - -INCLUDE=MACRO(nom="INCLUDE",op=-1, - sd_prod=INCLUDE_prod, - op_init=INCLUDE_context, - #fichier_ini=1, - UNITE = SIMP(statut='o',typ='I'), -); - diff --git a/Tests/testelem/cata5.py b/Tests/testelem/cata5.py deleted file mode 100644 index 8187d209..00000000 --- a/Tests/testelem/cata5.py +++ /dev/null @@ -1,205 +0,0 @@ -# -*- coding: iso-8859-15 -*- -from Accas import SIMP,FACT,OPER,ASSD,AsException,AsType,CO,MACRO,JDC_CATA -import Noyau -JdC=JDC_CATA(code="ASTER") - -class concept(ASSD,Noyau.AsBase):pass -class concept2(ASSD,Noyau.AsBase):pass -class concept3(ASSD,Noyau.AsBase):pass -class concept4(concept2):pass - -def OP_ops(self,MATR,**args): - ier=0 - self.set_icmd(1) - return ier - -def op2_prod(self,MATR,**args): - self.typeSDProd(MATR,concept2) - return concept -OP1=MACRO(nom='OP1',op=OP_ops,sd_prod=op2_prod, MATR=SIMP(statut='o',typ=CO),) -OP2=MACRO(nom='OP2',op=OP_ops,sd_prod=op2_prod, MATR=SIMP(statut='o',typ=(CO,concept2)),) -OP10=MACRO(nom='OP10',op=OP_ops,sd_prod=op2_prod, MATR=SIMP(statut='o',typ=concept2),) -OP11=MACRO(nom='OP11',op=OP_ops,sd_prod=concept, MATR=SIMP(statut='o',typ=concept2),) -OP12=MACRO(nom='OP12',op=OP_ops,sd_prod=concept, MATR=SIMP(statut='o',typ=CO),) -OP13=MACRO(nom='OP13',op=OP_ops,sd_prod=concept, MATR=SIMP(statut='o',typ=(CO,concept2)),) - -def op3_prod(self,MATR,**args): - for m in MATR: - t=m['CHAM'] - if t == 'R':self.typeSDProd(m['MM'],concept) - return concept -OP3=MACRO(nom='OP3',op=OP_ops,sd_prod=op3_prod, - MATR=FACT(statut='f',min=1,max='**', - CHAM=SIMP(statut='o',typ='TXM',into=("R","I"),), - MM=SIMP(statut='o',typ=(CO,concept)),),) - -def op4_prod(self,MATR,**args): - if MATR == None :raise AsException("impossible recuperer mot cle facteur par defaut") - return concept -OP4=MACRO(nom='OP4',op=OP_ops,sd_prod=op4_prod, - MATR=FACT(statut='d',min=1,max='**', - CHAM=SIMP(statut='f',typ='TXM',defaut="R"),),) - -OP5=MACRO(nom='OP5',op=OP_ops,sd_prod=op2_prod, MATR=SIMP(statut='o',typ=CO),) - -def op6_prod(self,MATR,**args): - self.typeSDProd(MATR,concept4) - return concept -def OP6_ops(self,MATR,**args): - ier=0 - self.set_icmd(1) - self.DeclareOut('cc',self.sd) - cc=OP2(MATR=MATR) - return ier -OP6=MACRO(nom='OP6',op=OP6_ops,sd_prod=op6_prod, MATR=SIMP(statut='o',typ=CO),) - -def OP7_ops(self,MATR,**args): - ier=0 - self.set_icmd(1) - self.DeclareOut('cc',self.sd) - cc=OP8(MATR=MATR) - return ier -OP7=MACRO(nom='OP7',op=OP7_ops,sd_prod=op2_prod, MATR=SIMP(statut='o',typ=CO),) - -OP8=MACRO(nom='OP8',op=OP_ops,sd_prod=op6_prod, MATR=SIMP(statut='o',typ=(CO,concept4)),) - -def OP9_ops(self,MATR,**args): - ier=0 - self.set_icmd(1) - self.DeclareOut('cc',self.sd) - cc=OP10(MATR=MATR) - return ier -OP9=MACRO(nom='OP9',op=OP9_ops,sd_prod=op6_prod, MATR=SIMP(statut='o',typ=CO),) -def OP14_ops(self,MATR,**args): - ier=0 - self.set_icmd(1) - self.DeclareOut('cc',self.sd) - cc=OP1(MATR=MATR) - return ier -OP14=MACRO(nom='OP14',op=OP14_ops,sd_prod=op6_prod, MATR=SIMP(statut='o',typ=CO),) -def OP15_ops(self,MATR,**args): - ier=0 - self.set_icmd(1) - self.DeclareOut('cc',self.sd) - cc=OP11(MATR=MATR) - return ier -OP15=MACRO(nom='OP15',op=OP15_ops,sd_prod=op6_prod, MATR=SIMP(statut='o',typ=CO),) -def OP16_ops(self,MATR,**args): - ier=0 - self.set_icmd(1) - self.DeclareOut('cc',self.sd) - cc=OP12(MATR=MATR) - return ier -OP16=MACRO(nom='OP16',op=OP16_ops,sd_prod=op6_prod, MATR=SIMP(statut='o',typ=CO),) -def OP17_ops(self,MATR,**args): - ier=0 - self.set_icmd(1) - self.DeclareOut('cc',self.sd) - cc=OP13(MATR=MATR) - return ier -OP17=MACRO(nom='OP17',op=OP17_ops,sd_prod=op6_prod, MATR=SIMP(statut='o',typ=CO),) - -def OP18_ops(self,MATR,**args): - ier=0 - self.set_icmd(1) - self.DeclareOut('cc',self.sd) - cc=OP6(MATR=MATR) - dd=OP2(MATR=MATR) - ee=OP11(MATR=MATR) - return ier -OP18=MACRO(nom='OP18',op=OP18_ops,sd_prod=op6_prod, MATR=SIMP(statut='o',typ=CO),) -OP20=MACRO(nom='OP20',op=OP_ops,sd_prod=op6_prod, MATR=SIMP(statut='o',typ=CO), - MATRB=SIMP(statut='o',typ=CO),) -def OP19_ops(self,MATR,**args): - ier=0 - self.set_icmd(1) - self.DeclareOut('cc',self.sd) - cc=OP20(MATR=MATR,MATRB=MATR) - return ier -OP19=MACRO(nom='OP19',op=OP19_ops,sd_prod=op6_prod, MATR=SIMP(statut='o',typ=CO),) - -OP21=OPER(nom='OP21',op=1,sd_prod=concept) -def OP22_ops(self,MATR,**args): - ier=0 - self.set_icmd(1) - self.DeclareOut('cc',self.sd) - cc=OP21() - return ier -OP22=MACRO(nom='OP22',op=OP22_ops,sd_prod=op6_prod, MATR=SIMP(statut='o',typ=CO),) - -import pickle -import Accas - -def poursuite_sdprod(self,PAR_LOT): - j=self.jdc - #j.UserError=j.codex.error - j.actif_status=1 - j.fico=None - j.set_parLot(PAR_LOT) - if hasattr(self,'already_init'):return - self.already_init=None - context={} - try: - file=open("pick.1",'r') - # Le contexte sauvegardé a été picklé en une seule fois. Il est seulement - # possible de le récupérer en bloc. Si cette opération echoue, on ne récupère - # aucun objet. - context=pickle.load(file) - file.close() - except: - # En cas d'erreur on ignore le contenu du fichier - import traceback - traceback.print_exc() - pass - for k,v in context.items(): - if isinstance(v,Accas.ASSD): - self.parent.NommerSdprod(v,k) - self.g_context.update(context) - return None - -def poursuite(self,PAR_LOT): - ier=0 - self.set_icmd(1) - return ier - -POURSUITE=MACRO(nom='POURSUITE',op=poursuite,sd_prod=poursuite_sdprod,PAR_LOT=SIMP(typ='TXM',defaut='OUI')) - -def fin(self): - self.set_icmd(1) - raise EOFError -FIN=MACRO(nom='FIN',op=fin,sd_prod=None) - -def debut_sdprod(self,PAR_LOT): - j=self.jdc - #j.UserError=j.codex.error - j.actif_status=1 - j.fico=None - j.set_parLot(PAR_LOT) - return None - -def debut(self,PAR_LOT): - ier=0 - self.set_icmd(1) - return ier - -DEBUT=MACRO(nom='DEBUT',op=debut,sd_prod=debut_sdprod,PAR_LOT=SIMP(typ='TXM',defaut='OUI')) - -class entier (ASSD): - def __init__(self,valeur=None,**args): - ASSD.__init__(self,**args) - self.valeur=valeur - - def __adapt__(self,validator): - if validator.name == "list": - #validateur liste,cardinalité - return (self,) - elif validator.name == "type": - #validateur type - return validator.adapt(self.valeur or 0) - else: - #validateur into et valid - return self - - def __repr__(self): - return "" - diff --git a/Tests/testelem/params.comm b/Tests/testelem/params.comm deleted file mode 100644 index 46966b0c..00000000 --- a/Tests/testelem/params.comm +++ /dev/null @@ -1,43 +0,0 @@ - -DEBUT(); -a = 1.0; - -b = 3; - -c = 15; - -d = 5; - -x = (1, 2); - -y = [3, 4]; - -y2 = (y * 2); - -z = 'a'; - -zz = 'v'; - -t = a; - -v = """aaaa -bbbb"""; - -xx = ceil(sqrt(d)); - -yy = cos(3.1); - -ax = sin(2); - -bx = cos(xx); - -cx = sin(xx); - -zy = y[1]; - - -MA=LIRE_MAILLAGE(); - -MB=LIRE_MAILLAGE(); - -FIN(); diff --git a/Tests/testelem/testaz76.py b/Tests/testelem/testaz76.py deleted file mode 100644 index 13dc618a..00000000 --- a/Tests/testelem/testaz76.py +++ /dev/null @@ -1,399 +0,0 @@ -# coding=utf-8 - -import os -import unittest -import difflib -import compare - -import prefs -from InterfaceTK import appli - -def add_param(j,pos,nom,valeur): - co=j.addEntite("PARAMETRE",pos) - co.setNom(nom) - co.set_valeur(valeur) - return co - -def add_mcsimp(obj,nom,valeur): - mcs=obj.getChild(nom,restreint='oui') - if mcs is None: - pos=obj.getIndexChild(nom) - mcs=obj.addEntite(nom,pos) - mcs.set_valeur(mcs.evalVal(valeur)) - return mcs - -def cdiff(text1,text2): - return " ".join(difflib.context_diff(text1.splitlines(1),text2.splitlines(1))) - -class TestCase(unittest.TestCase): - def setUp(self): - pass - - def tearDown(self): - CONTEXT.unsetCurrentStep() - - def test000(self): - """ Test de construction du fichier de commandes az.comm de zero""" - - app=appli.STANDALONE(version='v9') - j=app.newJDC() -# commande DEBUT - co=j.addEntite("DEBUT",0) -# commande FIN - co=j.addEntite("FIN",1) -# parametres - pos=0 - pos=pos+1 - co=add_param(j,pos,"P1","9.8") - pos=pos+1 - co=add_param(j,pos,"P2","8.8") - pos=pos+1 - co=add_param(j,pos,"P3","7") - pos=pos+1 - co=add_param(j,pos,"P5","P3*P1") - pos=pos+1 - co=add_param(j,pos,"P6","P1-3") - pos=pos+1 - co=add_param(j,pos,"P4","[2,3,4]") -# commentaire - pos=pos+1 - co=j.addEntite("COMMENTAIRE",pos) - co.set_valeur("Pas trouve shellpanel") -# commande LIRE_MAILLAGE - pos=pos+1 - co=j.addEntite("LIRE_MAILLAGE",pos) - test,mess=co.nommeSd("MAILLA2") - mcs=co.addEntite("UNITE") - valeur=mcs.evalVal("P4[1]") - test=mcs.set_valeur(valeur) -# formule - pos=pos+1 - co=j.addEntite("FORMULE",pos) - co.updateFormulePython(("aaa","REEL","a+z","(a,z)")) -# commande LIRE_MAILLAGE - pos=pos+1 - ma=co=j.addEntite("LIRE_MAILLAGE",pos) - test,mess=co.nommeSd("MAIL") - mcs=co.addEntite("UNITE") - valeur,validite=mcs.evalValeur("P3") - test=mcs.set_valeur(valeur) -# - pos=pos+1 - co=j.addEntite("COMMENTAIRE",pos) - co.set_valeur(" 'LIRE_MAILLAGE', 'UNITE' --> uniquebasepanel") -# formule - pos=pos+1 - co=j.addEntite("FORMULE",pos) - co.updateFormulePython(("az","REEL","aaaaa","(ae,inst)")) -# commande AFFE_MODELE - pos=pos+1 - co=j.addEntite("AFFE_MODELE",pos) - mcs=co.getChild("MAILLAGE") - valeur,validite=mcs.evalValeur("MAIL") - assert valeur == ma.sd - test=mcs.set_valeur(valeur) - assert valeur == co["MAILLAGE"] - mcf=co.addEntite("AFFE") - mcs=mcf[0].getChild("PHENOMENE") - valeur=mcs.evalValItem('MECANIQUE') - assert valeur=='MECANIQUE',str(valeur) - test=mcs.set_valeur(valeur) - assert mcf["PHENOMENE"] == 'MECANIQUE' - mcs=mcf[0].getChild("b_mecanique").getChild("MODELISATION") - mcs.set_valeur(mcs.evalValItem('DIS_T')) - assert mcf["MODELISATION"] == 'DIS_T' - mcs=add_mcsimp(mcf[0],"GROUP_MA",('RESSORT','eee',)) - - mcf=co.addEntite("AFFE") - mcs=mcf[1].getChild("PHENOMENE") - mcs.set_valeur(mcs.evalValItem('MECANIQUE')) - mcs=mcf[1].getChild("b_mecanique").getChild("MODELISATION") - mcs.set_valeur(mcs.evalValItem('DIS_T')) - mcs=add_mcsimp(mcf[1],"GROUP_MA",'MASSES') - - mcf=co.addEntite("AFFE") - mcs=mcf[2].getChild("PHENOMENE") - mcs.set_valeur(mcs.evalValItem('ACOUSTIQUE')) - mcs=mcf[2].getChild("b_acoustique").getChild("MODELISATION") - mcs.set_valeur(mcs.evalValItem('PLAN')) - #mcs=add_mcsimp(mcf[2],"GROUP_NO",'GNP3,GNP5,GNP6,GNP7,GNP8,GNP9,GNP10,GNP11,GNP12') - mcs=add_mcsimp(mcf[2],"GROUP_NO","'GNP3','GNP5','GNP6','GNP7','GNP8','GNP9','GNP10','GNP11','GNP12'") - - co.nommeSd("AFFE1") -# commande AFFE_MODELE - pos=pos+1 - co=j.addEntite("AFFE_MODELE",pos) - mcs=co.getChild("MAILLAGE") - mcs.set_valeur(mcs.evalVal("MAIL")) - - mcf=co.addEntite("AFFE") - mcs=mcf[0].getChild("PHENOMENE") - valeur=mcs.evalValItem('MECANIQUE') - test=mcs.set_valeur(valeur) - mcs=mcf[0].getChild("b_mecanique").getChild("MODELISATION") - mcs.set_valeur(mcs.evalValItem('DIS_T')) - mcs=add_mcsimp(mcf[0],"GROUP_MA",'RESSORT') - - mcf=co.addEntite("AFFE") - mcs=mcf[1].getChild("PHENOMENE") - mcs.set_valeur(mcs.evalValItem('MECANIQUE')) - mcs=mcf[1].getChild("b_mecanique").getChild("MODELISATION") - mcs.set_valeur(mcs.evalValItem('DIS_T')) - mcs=add_mcsimp(mcf[1],"GROUP_MA",'MASSES') - - mcf=co.addEntite("AFFE") - mcs=mcf[2].getChild("PHENOMENE") - mcs.set_valeur(mcs.evalValItem('THERMIQUE')) - mcs=mcf[2].getChild("b_thermique").getChild("MODELISATION") - mcs.set_valeur(mcs.evalValItem('COQUE')) - mcs=add_mcsimp(mcf[2],"TOUT",'OUI') - - co.nommeSd("MOD") -#CARA=AFFE_CARA_ELEM(MODELE=MOD, -# POUTRE=_F(GROUP_MA='MA', -# SECTION='CERCLE', -# CARA='R', -# VALE=(3.0,P6,),),); - pos=pos+1 - co=j.addEntite("AFFE_CARA_ELEM",pos) - mcs=co.getChild("MODELE") - mcs.set_valeur(mcs.evalVal("MOD")) - mcf=co.addEntite("POUTRE") - mcs=mcf[0].getChild("SECTION") - mcs.set_valeur(mcs.evalVal('CERCLE')) - assert mcf[0]["SECTION"] == 'CERCLE' - mcs=add_mcsimp(mcf[0],"GROUP_MA",'MA') - mcs=mcf[0].getChild("b_cercle").getChild("b_constant").getChild("CARA") - mcs.set_valeur(mcs.evalVal('R')) - mcs=mcf[0].getChild("b_cercle").getChild("b_constant").getChild("VALE") - mcs.set_valeur(mcs.evalVal('3.0,P6')) - co.nommeSd("CARA") -# commentaire - pos=pos+1 - co=j.addEntite("COMMENTAIRE",pos) - text=""" 'AFFE_MODELE', 'MAILLAGE' --> uniqueassdpanel - AFFE_MODELE', 'AFFE', 'GROUP_MA' --> plusieursbasepanel - 'AFFE_MODELE', 'AFFE', 'PHENOMENE' --> uniqueintopanel - 'AFFE_MODELE', 'AFFE', 'b_mecanique'--> plusieursintopanel""" - co.set_valeur(text) -#F1=DEFI_FONCTION(NOM_PARA='DX', -# VALE=(5.0,3.0,P4[1],P3,),); - pos=pos+1 - co=j.addEntite("DEFI_FONCTION",pos) - mcs=co.getChild("NOM_PARA") - mcs.set_valeur(mcs.evalVal("DX")) - mcs=co.addEntite("VALE") - mcs.set_valeur(mcs.evalVal("5.0,3.0,P4[1],P3")) - co.nommeSd("F1") -#F3=DEFI_FONCTION(NOM_PARA='DRX', -# VALE_C=(5.0,7.0,9.0,9.0,8.0,7.0,),); - pos=pos+1 - co=j.addEntite("DEFI_FONCTION",pos) - mcs=co.getChild("NOM_PARA") - mcs.set_valeur(mcs.evalVal("DRX")) - mcs=co.addEntite("VALE_C") - mcs.set_valeur(mcs.evalVal("5.0,7.0,9.0,9.0,8.0,7.0")) - co.nommeSd("F3") -# commentaire - pos=pos+1 - co=j.addEntite("COMMENTAIRE",pos) - co.set_valeur(" 'DEFI_FONCTION', 'VALE' --> fonctionpanel ") -#MATER2=DEFI_MATERIAU(ELAS=_F(E=100000000000.0, -# NU=0.0,), -# ECRO_ASYM_LINE=_F(DC_SIGM_EPSI=0.0, -# SY_C=200000000.0, -# DT_SIGM_EPSI=0.0, -# SY_T=50000000.0,),); - pos=pos+1 - co=j.addEntite("DEFI_MATERIAU",pos) - mcf=co.addEntite("ELAS") - mcs=mcf[0].getChild("E") - mcs.set_valeur(mcs.evalVal("100000000000.0")) - mcs=mcf[0].getChild("NU") - mcs.set_valeur(mcs.evalVal("0.0")) - mcf=co.addEntite("ECRO_ASYM_LINE") - mcs=mcf[0].getChild("DC_SIGM_EPSI") - mcs.set_valeur(mcs.evalVal("0.0")) - mcs=mcf[0].getChild("DT_SIGM_EPSI") - mcs.set_valeur(mcs.evalVal("0.0")) - mcs=mcf[0].getChild("SY_C") - mcs.set_valeur(mcs.evalVal("200000000.0")) - mcs=mcf[0].getChild("SY_T") - mcs.set_valeur(mcs.evalVal("50000000.0")) - co.nommeSd("MATER2") -#PS1=DEFI_PARA_SENSI(VALE=1.0,); -#PS2=DEFI_PARA_SENSI(VALE=1.0,); -#PS3=DEFI_PARA_SENSI(VALE=1.0,); - pos=pos+1 - co=j.addEntite("DEFI_PARA_SENSI",pos) - mcs=co.getChild("VALE") - mcs.set_valeur(mcs.evalVal("1.0")) - co.nommeSd("PS1") - pos=pos+1 - co=j.addEntite("DEFI_PARA_SENSI",pos) - mcs=co.getChild("VALE") - mcs.set_valeur(mcs.evalVal("1.0")) - co.nommeSd("PS2") - pos=pos+1 - co=j.addEntite("DEFI_PARA_SENSI",pos) - mcs=co.getChild("VALE") - mcs.set_valeur(mcs.evalVal("1.0")) - co.nommeSd("PS3") -#CHMAT2=AFFE_MATERIAU(MAILLAGE=MAIL, -# AFFE=_F(TOUT='OUI', -# MATER=MATER2,),); - pos=pos+1 - co=j.addEntite("AFFE_MATERIAU",pos) - add_mcsimp(co,"MAILLAGE","MAIL") - mcf=co.getChild("AFFE") - add_mcsimp(mcf[0],"TOUT","OUI") - add_mcsimp(mcf[0],"MATER","MATER2") - co.nommeSd("CHMAT2") -#AAAZ=AFFE_CHAR_THER(MODELE=AFFE1, -# TEMP_IMPO=_F(TOUT='OUI', -# TEMP=0.0,),); - pos=pos+1 - co=j.addEntite("AFFE_CHAR_THER",pos) - add_mcsimp(co,"MODELE","AFFE1") - mcf=co.addEntite("TEMP_IMPO") - add_mcsimp(mcf[0],"TOUT","OUI") - add_mcsimp(mcf[0],"TEMP","0.0") - co.nommeSd("AAAZ") -#TH1=THER_LINEAIRE(MODELE=AFFE1, -# CHAM_MATER=CHMAT2, -# EXCIT=_F(CHARGE=AAAZ,), -# SENSIBILITE=(PS1,PS2,),); - pos=pos+1 - co=j.addEntite("THER_LINEAIRE",pos) - add_mcsimp(co,"MODELE","AFFE1") - add_mcsimp(co,"CHAM_MATER","CHMAT2") - mcf=co.getChild("EXCIT") - add_mcsimp(mcf[0],"CHARGE","AAAZ") - add_mcsimp(co,"SENSIBILITE","PS1,PS2") - co.nommeSd("TH1") -# commentaire - pos=pos+1 - co=j.addEntite("COMMENTAIRE",pos) - co.set_valeur(" 'THER_LINEAIRE', 'SENSIBILITE' --> plusieursassdpanel") -#ACA1=AFFE_CHAR_ACOU(MODELE=AFFE1, -# PRES_IMPO=_F(TOUT='OUI', -# PRES=('RI',3.0,3.0,),),); - pos=pos+1 - co=j.addEntite("AFFE_CHAR_ACOU",pos) - add_mcsimp(co,"MODELE","AFFE1") - mcf=co.addEntite("PRES_IMPO") - add_mcsimp(mcf[0],"TOUT","OUI") - add_mcsimp(mcf[0],"PRES","'RI',3.0,3.0") - co.nommeSd("ACA1") -# commentaire - pos=pos+1 - co=j.addEntite("COMMENTAIRE",pos) - co.set_valeur(" 'AFFE_CHAR_ACOU', 'PRES_IMPO', 'PRES' --> uniquecomppanel") - -# 'AFFE_CHAR_ACOU', 'PRES_IMPO', 'PRES' --> uniquecomppanel - -#MACRO_MATR_ASSE(MODELE=AFFE1, -# NUME_DDL=CO('DDL1'), -# MATR_ASSE=_F(MATRICE=CO('MAT1'), -# OPTION='RIGI_THER',),); - pos=pos+1 - co=j.addEntite("MACRO_MATR_ASSE",pos) - add_mcsimp(co,"MODELE","AFFE1") - mcs=co.getChild("NUME_DDL") - mcs.set_valeur_co('DDL1') - mcf=co.getChild("MATR_ASSE") - add_mcsimp(mcf[0],"OPTION","RIGI_THER") - mcs=mcf[0].getChild("MATRICE") - mcs.set_valeur_co('MAT1') -# commentaire - pos=pos+1 - co=j.addEntite("COMMENTAIRE",pos) - co.set_valeur(" 'MACRO_MATR_ASSE', 'MATR_ASSE', 'MATRICE' --> uniquesdcopanel") - - assert j.isValid(),j.report() - - text1=app.getTextJDC(j,'python') - file=os.path.join(prefs.INSTALLDIR,"Tests/testelem/az.comm") - f=open(file) - text2=f.read() - f.close() - assert text1 == text2 , cdiff(text1,text2) - - def test001(self): - """ Test de construction d'un fichier de commandes avec DEFI_LIST_REEL, fonction et parametre de zero""" - - app=appli.STANDALONE(version='v9') - j=app.newJDC() -# commande DEBUT - co=j.addEntite("DEBUT",0) -# commande FIN - co=j.addEntite("FIN",1) -#parametre - pos=0 - pos=pos+1 - co=add_param(j,pos,"P1","9.8") - pos=pos+1 - co=add_param(j,pos,"P2","sin(P1)") -# formule - pos=pos+1 - co=j.addEntite("FORMULE",pos) - co.updateFormulePython(("aaa","REEL","a+z","(a,z)")) -#parametre de formule - pos=pos+1 - co=add_param(j,pos,"P3","aaa(P1,2.)") -#commande defi_list_reel - pos=pos+1 - co=j.addEntite("DEFI_LIST_REEL",pos) - add_mcsimp(co,"VALE","1.,2.,3.") - co.nommeSd("LI1") -#commande defi_list_reel - pos=pos+1 - co=j.addEntite("DEFI_LIST_REEL",pos) - add_mcsimp(co,"VALE","sin(1.)") - co.nommeSd("LI2") -#commande defi_list_reel - pos=pos+1 - co=j.addEntite("DEFI_LIST_REEL",pos) - add_mcsimp(co,"VALE","aaa(1.,2.)") - co.nommeSd("LI3") -#commande defi_list_reel - pos=pos+1 - co=j.addEntite("DEFI_LIST_REEL",pos) - add_mcsimp(co,"VALE","sin(1.,2)") - co.nommeSd("LI4") -#commande defi_list_reel - pos=pos+1 - co=j.addEntite("DEFI_LIST_REEL",pos) - add_mcsimp(co,"VALE","aaa(1.)") - co.nommeSd("LI5") -#commande defi_list_reel - pos=pos+1 - co=j.addEntite("DEFI_LIST_REEL",pos) - add_mcsimp(co,"VALE","1,sin(1.),2") - co.nommeSd("LI6") - - expected="""DEBUT CR validation : SansNom - Etape : DEFI_LIST_REEL ligne : ... - !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! - ! Concept retourné non défini ! - !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! - Mot-clé simple : VALE - !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! - ! 'sin(1.,2)' (de type ) n'est pas d'un type autorisé: ('R',) ! - !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! - Fin Mot-clé simple : VALE - Fin Etape : DEFI_LIST_REEL - Etape : DEFI_LIST_REEL ligne : ... - !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! - ! Concept retourné non défini ! - !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! - Mot-clé simple : VALE - !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! - ! 'aaa(1.)' (de type ) n'est pas d'un type autorisé: ('R',) ! - !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! - Fin Mot-clé simple : VALE - Fin Etape : DEFI_LIST_REEL -FIN CR validation :SansNom -""" - msg=str( j.report()) - assert compare.check(expected,msg),cdiff(expected,msg) diff --git a/Tests/testelem/testbloc1.py b/Tests/testelem/testbloc1.py deleted file mode 100644 index f0e612a2..00000000 --- a/Tests/testelem/testbloc1.py +++ /dev/null @@ -1,176 +0,0 @@ -# coding=utf-8 -from Accas import SIMP,FACT,BLOC,UN_PARMI,OPER,ASSD,MACRO,_F -import Noyau - -class concept(ASSD,Noyau.AsBase):pass - -import unittest - -class CATA: - def __init__(self): - CONTEXT.unsetCurrentCata() - CONTEXT.setCurrentCata(self) - def enregistre(self,cmd): - pass - -cata=CATA() - - -OP1 = OPER(nom='OP1',op=1, sd_prod=concept, - WWWW=SIMP(statut='o',typ='TXM', position='global'), - XXXX=SIMP(typ='TXM', position='global',defaut='XXXX'), - traitement=FACT(statut='o', - TATA=SIMP(typ='TXM', position='global',defaut='DDD'), - TTTT=SIMP(statut='o',typ='TXM', position='global',defaut='EEE'), - UUUU=SIMP(typ='TXM', position='global'), - VVVV=SIMP(statut='o',typ='TXM', position='global'), - regles=( UN_PARMI('TYPE_RAFFINEMENT_LIBRE','TYPE_RAFFINEMENT_UNIFORME'),), - TYPE_RAFFINEMENT_LIBRE = FACT(statut='f', - RAFFINEMENT = SIMP(statut='o',typ='TXM', position='global', - into=("LIBRE","UNIFORME",) ), - DERAFFINEMENT = SIMP(statut='o',typ='TXM', position='global', - into=("LIBRE",),), - TOTO=SIMP(statut='o',typ='TXM', position='global'), - # un mot cle global facultatif ne sera pas visible tant - # qu'il n'aura pas de valeur meme s'il a un defaut - TITI=SIMP(typ='TXM', position='global',defaut='BBB'), - TUTU=SIMP(statut='o',typ='TXM', position='global',defaut='CCC'), - ), - b_maj_champ =BLOC(condition="(RAFFINEMENT!=None) or (DERAFFINEMENT!=None)", - NITER =SIMP(statut='o',typ='I',), - NOM_MED_MAILLAGE_NP1 =SIMP(statut='o',typ='TXM',), - FICHIER_MED_MAILLAGE_NP1 =SIMP(statut='o',typ='TXM',), - ), - ), - trait=FACT(statut='o', - FFFF=SIMP(typ='TXM',), - b_champ =BLOC(condition="WWWW=='WWWW'", - N =SIMP(statut='o',typ='I',), - ), - ), -) - -MACR_BIDON=OPER(nom="MACR_BIDON",op=None,sd_prod=concept, - reentrant='n',UIinfo={"groupes":("Outils métier",)},fr="", - NOM_CHAM=SIMP(statut='f',typ='TXM',into=('ACCE','DEPL'),position="global"), - RESULTAT=FACT(statut='o',b_acce=BLOC(condition="NOM_CHAM=='ACCE'", - VAL1=SIMP(statut='o',typ='R'), - ), - VAL2=SIMP(statut='o',typ='R'), - ), - ) -import pprint - -class TestMCBlocCase(unittest.TestCase): - - def test001(self): - """ bloc conditionnel declenche par mot cle global avec defaut - """ - mcf={'TYPE_RAFFINEMENT_LIBRE':{'TOTO':'AAA'}} - co=OP1(traitement=mcf,WWWW='WWWW') - mcfact=co.etape['traitement'] - self.assertEqual(mcfact['TYPE_RAFFINEMENT_LIBRE']['DERAFFINEMENT'] , None) - dico=mcfact[0].creeDictValeurs(mcfact[0].mc_liste) - self.assertEqual(dico['DERAFFINEMENT'] , None) - self.assertEqual(dico['RAFFINEMENT'] , None) - self.assertEqual(dico['WWWW'] , 'WWWW') - self.assertRaises(IndexError, mcfact.__getitem__, 'NITER') - - mcfact=co.etape['trait'][0] - dico=mcfact.creeDictValeurs(mcfact.mc_liste) - self.assertEqual(dico['DERAFFINEMENT'] , None) - self.assertEqual(dico['RAFFINEMENT'] , None) - self.assertEqual(dico['WWWW'] , 'WWWW') - self.assertEqual(dico['TOTO'] , 'AAA') - self.assertEqual(dico['TUTU'] , 'CCC') - self.assertEqual(dico['FFFF'] , None) - self.assertEqual(dico['VVVV'] , None) - self.assertEqual(dico['TTTT'] , 'EEE') - self.assertEqual(dico['XXXX'] , 'XXXX') - self.assertEqual(mcfact['N'] , None) - self.assertRaises(KeyError, dico.__getitem__, 'TITI') - - def test002(self): - mcf={'TYPE_RAFFINEMENT_LIBRE':{'RAFFINEMENT':'LIBRE'},'NITER':1} - co=OP1(traitement=mcf) - mcfact=co.etape['traitement'] - self.assertEqual(mcfact['TYPE_RAFFINEMENT_LIBRE']['RAFFINEMENT'] , 'LIBRE') - self.assertEqual(mcfact['NITER'] , 1) - - def test003(self): - co=MACR_BIDON(NOM_CHAM='ACCE',RESULTAT=_F(VAL2=3.4)) - mcfact=co.etape['RESULTAT'] - self.assertEqual(co.etape.isValid(), 0) - - def test004(self): - mcf={'VVVV':'', - 'TYPE_RAFFINEMENT_LIBRE':{'RAFFINEMENT':'LIBRE','DERAFFINEMENT':'LIBRE','TOTO':'AA'}, - 'NITER':1, - 'FICHIER_MED_MAILLAGE_NP1':'', - 'NOM_MED_MAILLAGE_NP1':'', - } - co=OP1(traitement=mcf,WWWW="WWWW",trait={'N':1}) - val=co.etape.isValid() - if not val:msg=co.etape.report() - else:msg="" - self.assertEqual(co.etape.isValid() , 1,msg=msg) - - co=OP1(traitement=mcf,WWWW="WWWW") - val=co.etape.isValid() - if not val:msg=co.etape.report() - else:msg="" - self.assertEqual(co.etape.isValid() , 0,msg=msg) - - co=OP1(traitement=mcf,WWWW="WW",trait={'N':1}) - val=co.etape.isValid() - if not val:msg=co.etape.report() - else:msg="" - self.assertEqual(co.etape.isValid() , 0,msg=msg) - - co=OP1(traitement=mcf,WWWW="WW",trait={'FFFF':'X'}) - val=co.etape.isValid() - if not val:msg=co.etape.report() - else:msg="" - self.assertEqual(co.etape.isValid() , 1,msg=msg) - - co=OP1(traitement=mcf,WWWW="WW",) - val=co.etape.isValid() - if not val:msg=co.etape.report() - else:msg="" - self.assertEqual(co.etape.isValid() , 1,msg=msg) - - def test005(self): - OP1 = OPER(nom='OP1',op=1, sd_prod=concept, - MASS = FACT(statut='f',max='**', - Y = SIMP(statut='f',typ='I',), - Z = FACT(T=SIMP(typ='I')), - ), - b_mass = BLOC(condition = "MASS != None", - MODE = SIMP(statut='o',typ='I',) - ), - bb_mass = BLOC(condition = "MASS and len(MASS) > 1 ", - XX = SIMP(statut='o',typ='I',) - ), - bbb_mass = BLOC(condition = "MASS and MASS[0]['Y'] == 1 ", - YY = SIMP(statut='o',typ='I',) - ), - bbbb_mass = BLOC(condition = "MASS and MASS[0]['Z'] and MASS[0]['Z'][0]['T'] == 1 ", - ZZ = SIMP(statut='o',typ='I',) - ), - ) - co=OP1() - msg=co.etape.report() - self.assertEqual(co.etape.isValid() , 1,msg=msg) - co=OP1(MASS={},MODE=1) - msg=co.etape.report() - self.assertEqual(co.etape.isValid() , 1,msg=msg) - co=OP1(MASS=({},{}),MODE=1,XX=1) - msg=co.etape.report() - self.assertEqual(co.etape.isValid() , 1,msg=msg) - co=OP1(MASS=({'Y':1},{}),MODE=1,XX=1,YY=1) - msg=co.etape.report() - self.assertEqual(co.etape.isValid() , 1,msg=msg) - co=OP1(MASS=({'Y':1,'Z':{'T':1}},{}),MODE=1,XX=1,YY=1,ZZ=1) - msg=co.etape.report() - self.assertEqual(co.etape.isValid() , 1,msg=msg) - diff --git a/Tests/testelem/testfact1.py b/Tests/testelem/testfact1.py deleted file mode 100644 index c13fa530..00000000 --- a/Tests/testelem/testfact1.py +++ /dev/null @@ -1,97 +0,0 @@ -# coding=utf-8 -from Accas import SIMP,FACT - -import unittest - -class TestFactCase(unittest.TestCase): - def setUp(self): - self.cata=FACT(a=SIMP(typ='I',statut='o'), - b=SIMP(typ='R'), - c=SIMP(typ='C',defaut=('RI',1,0)), - ) - - def tearDown(self): - del self.cata - - def testStatut1(self): - o=self.cata({'a':1},'mcs1',None) - cr=o.report() - self.assert_(cr.estvide()) - - def testStatut2(self): - o=self.cata(None,'mcs1',None) - cr=o.report() - expected_cr="""Mot cle Facteur :mcs1 - Mot-clé simple : a - !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! - ! Mot-clé : a obligatoire non valorisé ! - !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! - !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! - ! None n'est pas une valeur autorisée ! - !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! - Fin Mot-clé simple : a -Fin Mot cle Facteur :mcs1 -""" - self.assertEqual(str(cr) , expected_cr) - - def testType1(self): - """Verification de type""" - #Ne leve plus d'exception - #self.assertRaises(AttributeError,self.cata,1,'mcs1',None) - o=self.cata({'a':1.2},'mcs1',None) - cr=o.report() - expected_cr="""Mot cle Facteur :mcs1 - Mot-clé simple : a - !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! - ! 1.2 (de type ) n'est pas d'un type autorisé: ('I',) ! - !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! - Fin Mot-clé simple : a -Fin Mot cle Facteur :mcs1 -""" - msg="le rapport d'erreur est incorrect.\n expected =\n%s\n got =\n%s " % (expected_cr,str(cr)) - self.assertEqual(str(cr) , expected_cr,msg=msg) - - def test031(self): - cata=FACT(min=2,max=3,a=SIMP(typ='I',statut='o'),) - - liste=( - (({'a':1},{'a':2}),1), - (({'a':1},{'a':2},{'a':3},{'a':4}),0), - (({'a':1},{'a':2},{'a':3}),1), - (({'a':1},),0), - ) - for valeur,valid in liste: - o=cata(valeur,'mcf',None) - self.assertEqual(o.isValid(),valid,"erreur sur le test %s %s" % (valeur,valid)+'\n'+str(o.report())) - - def test032(self): - cata=FACT(max=3,a=SIMP(typ='I',statut='o'),) - mcfact=cata({'a':1},'mcf',None) - self.assertEqual(mcfact[0].getMocle('a') , 1) - self.assertEqual(mcfact['a'] , 1) - - mcfact=cata(({'a':1},{'a':2}),'mcf',None) - self.assertEqual(mcfact[0]['a'] , 1) - self.assertEqual(mcfact[1]['a'] , 2) - self.assertRaises(TypeError,mcfact.__getitem__, 'a') - def f(): - return mcfact['a'] - self.assertRaises(TypeError,f) - - def test033(self): - cata=FACT(xx=FACT(statut='o',max=3,a=SIMP(typ='I'),)) - mcfact=cata({},'mcf',None) - valid=0 - liste=( - ({},1), - ({'xx':{}},1), - ({'xx':{'a':1}},1), - ({'xx':"error"},0), - ({'xx':("error","err2","err3")},0), - ({'xx':({'a':1},"err2","err3")},0), - ({'xx':("err1",{'a':1},"err3")},0), - ({'xx':("err1",{'a':1},"err3","err4")},0), - ) - for valeur,valid in liste: - o=cata(valeur,'mcf',None) - self.assertEqual(o.isValid(),valid,"erreur sur le test %s %s" % (valeur,valid)+'\n'+str(o.report())) diff --git a/Tests/testelem/testfact2.py b/Tests/testelem/testfact2.py deleted file mode 100644 index ab5956a6..00000000 --- a/Tests/testelem/testfact2.py +++ /dev/null @@ -1,158 +0,0 @@ -from Accas import SIMP,FACT,BLOC - -import unittest - - -class TestFactCase(unittest.TestCase): - - def test001(self): - """ - Cas test avec un bloc conditionnel active par un mot cle simple avec - valeur par defaut, non present - Le bloc contient un mot cle simple avec defaut non present - On s'attend a recuperer les 2 mots cles simples avec leur valeur par - defaut. - """ - cata=FACT(ZORGLUB =SIMP(statut='f',typ='TXM',defaut='OOO'), - b_unit1 =BLOC(condition = "ZORGLUB=='OOO'", - TOTO =SIMP(statut='f',typ='TXM',defaut='AAA',into=('AAA','BBB'),), - ), - ) - mcfact=cata({},'mcf',None) - valeur_attendue={'ZORGLUB':'OOO','TOTO':'AAA'} - dico=mcfact[0].creeDictValeurs(mcfact[0].mc_liste) - #dico=mcfact.creeDictValeurs(mcfact.mc_liste) - self.assertEqual(dico , valeur_attendue) - self.assertEqual(mcfact[0].getMocle('TOTO') , 'AAA') - self.assertEqual(mcfact[0].getMocle('ZORGLUB') , 'OOO') - self.assertEqual(mcfact['TOTO'] , 'AAA') - self.assertRaises(IndexError, mcfact.__getitem__, 'TITI') - - def test002(self): - cata=FACT(ZORGLUB =SIMP(statut='f',typ='TXM',defaut='OOO'), - b_unit1 =BLOC(condition = "ZORGLUB=='ZZZ'", - TOTO =SIMP(statut='f',typ='TXM',defaut='AAA',into=('AAA','BBB'),), - ), - ) - mcfact=cata({},'mcf',None) - valeur_attendue={'ZORGLUB':'OOO'} - dico=mcfact[0].creeDictValeurs(mcfact[0].mc_liste) - #dico=mcfact.creeDictValeurs(mcfact.mc_liste) - self.assertEqual(dico , valeur_attendue) - self.assertEqual(mcfact[0].getMocle('ZORGLUB') , 'OOO') - - def test003(self): - cata=FACT(ZORGLUB =SIMP(statut='f',typ='TXM',defaut='OOO'), - b_unit1 =BLOC(condition = "ZORGLUB=='ZZZ'", - TOTO =SIMP(statut='f',typ='TXM',defaut='AAA',into=('AAA','BBB'),), - ), - ) - mcfact=cata({'ZORGLUB':'ZZZ'},'mcf',None) - valeur_attendue={'ZORGLUB':'ZZZ', 'TOTO':'AAA'} - dico=mcfact[0].creeDictValeurs(mcfact[0].mc_liste) - self.assertEqual(dico , valeur_attendue) - self.assertEqual(mcfact[0].getMocle('ZORGLUB') , 'ZZZ') - self.assertEqual(mcfact['TOTO'] , 'AAA') - - def test004(self): - cata=FACT(ZORGLUB =SIMP(statut='f',typ='TXM',defaut='OOO'), - b_unit1 =BLOC(condition = "ZORGLUB=='OOO'", - TOTO =SIMP(statut='f',typ='TXM',into=('AAA','BBB'),), - ), - ) - mcfact=cata({},'mcf',None) - valeur_attendue={'ZORGLUB':'OOO','TOTO':None} - dico=mcfact[0].creeDictValeurs(mcfact[0].mc_liste) - self.assertEqual(dico , valeur_attendue) - self.assertEqual(mcfact[0].getMocle('TOTO') , None) - self.assertEqual(mcfact[0].getChild('ZORGLUB').getValeur() , 'OOO') - self.assertEqual(mcfact[0].getChild('b_unit1').getChild('TOTO').getValeur() , None) - self.assertEqual(mcfact['TOTO'] , None) - - def test005(self): - cata=FACT( - TOTO=FACT(statut='d', - TITI=SIMP(statut='f',typ='TXM',defaut='AAA',into=('AAA','BBB'),), - b_unit1 =BLOC(condition = "TITI=='AAA'", - TOTO =SIMP(statut='f',typ='TXM',into=('AAA','BBB'),), - ), - ), - ) - mcfact=cata({},'mcf',None) - dico=mcfact[0].creeDictValeurs(mcfact[0].mc_liste) - self.assertNotEqual(dico["TOTO"] , None) - - def test010(self): - """ - """ - cata=FACT(ZORGLUB =SIMP(statut='f',typ='TXM',defaut='OOO'), - b_unit1 =BLOC(condition = "ZORGLUB=='OOO'", - TOTO =SIMP(statut='f',typ='TXM',defaut='AAA',into=('AAA','BBB'),), - b_unit2 =BLOC(condition = "TOTO == 'BBB'", - UNITE =SIMP(statut='f',typ='I',defaut=25), - ), - ), - ) - mcfact=cata({'TOTO' : 'BBB'},'mcf',None) - valeur_attendue={'UNITE':25, 'ZORGLUB':'OOO','TOTO':'BBB'} - dico=mcfact[0].creeDictValeurs(mcfact[0].mc_liste) - self.assertEqual(dico , valeur_attendue) - - def test011(self): - """ - """ - cata=FACT( - TITI =SIMP(statut='f',typ='TXM',defaut='AAA',into=('AAA','BBB'),), - TUTU =SIMP(statut='f',typ='TXM',defaut='AAA',into=('AAA','BBB'),), - TATA =SIMP(statut='f',typ='TXM',defaut='AAA',into=('AAA','BBB'),), - TOTO =SIMP(statut='f',typ='TXM',defaut='AAA',into=('AAA','BBB'),), - b_unit1 =BLOC(condition = "TITI =='AAA'", - TOTO1 =SIMP(statut='f',typ='TXM',defaut='AAA',into=('AAA','BBB'),), - c_unit1 =BLOC(condition = "TOTO1 == 'AAA'", UNITE1 =SIMP(statut='f',typ='I',defaut=25),), - ), - b_unit2 =BLOC(condition = "TUTU =='AAA'", - TOTO2 =SIMP(statut='f',typ='TXM',defaut='AAA',into=('AAA','BBB'),), - c_unit2 =BLOC(condition = "TOTO2 == 'BBB'", UNITE2 =SIMP(statut='f',typ='I',defaut=25),), - ), - b_unit3 =BLOC(condition = "TATA =='BBB'", - TOTO3 =SIMP(statut='f',typ='TXM',defaut='AAA',into=('AAA','BBB'),), - c_unit3 =BLOC(condition = "TOTO3 == 'BBB'", UNITE3 =SIMP(statut='f',typ='I',defaut=25),), - ), - b_unit4 =BLOC(condition = "TOTO =='BBB'", - TOTO4 =SIMP(statut='f',typ='TXM',defaut='AAA',into=('AAA','BBB'),), - c_unit4 =BLOC(condition = "TOTO4 == 'AAA'", UNITE4 =SIMP(statut='f',typ='I',defaut=25),), - ), - ) - mcfact=cata({'TOTO' : 'BBB'},'mcf',None) - valeur_attendue={ - 'TITI': 'AAA', 'TOTO': 'BBB', 'TUTU': 'AAA', 'TATA': 'AAA', - 'TOTO1': 'AAA', 'UNITE1': 25, - 'TOTO2': 'AAA', - 'TOTO4': 'AAA', 'UNITE4': 25, - } - dico=mcfact[0].creeDictValeurs(mcfact[0].mc_liste) - self.assertEqual(dico , valeur_attendue) - - self.assertEqual(mcfact[0].getChild('TATA').getValeur() , 'AAA') - self.assertEqual(mcfact[0].getChild('TITI').getValeur() , 'AAA') - self.assertEqual(mcfact[0].getChild('TUTU').getValeur() , 'AAA') - self.assertEqual(mcfact[0].getChild('TOTO').getValeur() , 'BBB') - self.assertEqual(mcfact['TITI'] , 'AAA') - self.assertEqual(mcfact['TUTU'] , 'AAA') - self.assertEqual(mcfact['TATA'] , 'AAA') - self.assertEqual(mcfact['TOTO'] , 'BBB') - - self.assertEqual(mcfact['TOTO1'] , 'AAA') - self.assertEqual(mcfact['TOTO2'] , 'AAA') - self.assertEqual(mcfact['TOTO4'] , 'AAA') - self.assertRaises(IndexError, mcfact[0].getMocle, 'TOTO3') - - self.assertEqual(mcfact['UNITE1'] , 25) - self.assertEqual(mcfact['UNITE4'] , 25) - self.assertRaises(IndexError, mcfact.__getitem__, 'UNITE2') - self.assertRaises(IndexError, mcfact.__getitem__, 'UNITE3') - self.assertRaises(IndexError, mcfact[0].getMocle, 'UNITE2') - self.assertRaises(IndexError, mcfact[0].getMocle, 'UNITE3') - - self.assertEqual(mcfact[0].getChild('b_unit4').getChild('TOTO4').getValeur(),'AAA') - self.assertEqual(mcfact[0].getChild('b_unit4').getValeur(),{'TOTO4': 'AAA', 'UNITE4': 25}) diff --git a/Tests/testelem/testitem1.py b/Tests/testelem/testitem1.py deleted file mode 100644 index 04a0458e..00000000 --- a/Tests/testelem/testitem1.py +++ /dev/null @@ -1,73 +0,0 @@ -import os -import unittest -import difflib - -import prefs -from InterfaceTK import appli -#from Editeur import appli -from Editeur import comploader -from Editeur import Objecttreeitem - - -def add_param(j,pos,nom,valeur): - co=j.addEntite("PARAMETRE",pos) - co.setNom(nom) - co.set_valeur(valeur) - return co - -def add_mcsimp(obj,nom,valeur): - mcs=obj.getChild(nom,restreint='oui') - if mcs is None: - pos=obj.getIndexChild(nom) - mcs=obj.addEntite(nom,pos) - mcs.set_valeur(mcs.evalVal(valeur)) - return mcs - -def cdiff(text1,text2): - return " ".join(difflib.context_diff(text1.splitlines(1),text2.splitlines(1))) - -version= 'v9' - -class TestCase(unittest.TestCase): - """ Tests sur des items """ - def setUp(self): - pass - - def tearDown(self): - CONTEXT.unsetCurrentStep() - - def test001(self): - """Test comploader""" - composants=comploader.chargerComposants() - itemtype=comploader.gettreeitem({'a':1}) - assert itemtype is Objecttreeitem.ObjectTreeItem - - def test002(self): - """ Test de commentarisation/decommentarisation a partir d'un item jdc """ - app=appli.STANDALONE(version=version) - file=os.path.join(prefs.INSTALLDIR,"Tests/testelem/az.comm") - j=app.openJDC(file=file) - item=app.create_item(j) - assert item.isValid(),item.report() - # on commente la commande LIRE_MAILLAGE - commands=item.getSubList() - for it in commands: - if it.nom == "LIRE_MAILLAGE" and it.sd.nom == "MAIL":break - pos=commands.index(it) - cco=it.getObjetCommentarise() - commands=item.getSubList() - commands[pos].unComment() - commands=item.getSubList() - # on reaffecte l'objet MAIL - for it in commands: - if it.nom in ("AFFE_MODELE","AFFE_MATERIAU") : - for mc in it.getSubList(): - if mc.nom == "MAILLAGE": - valeur,validite=mc.evalValeur("MAIL") - test = mc.set_valeur(valeur) - text1=app.getTextJDC(j,'python') - f=open(file) - text2=f.read() - f.close() - assert text1 == text2 , cdiff(text1,text2) - diff --git a/Tests/testelem/testjdc1.py b/Tests/testelem/testjdc1.py deleted file mode 100644 index 9702958d..00000000 --- a/Tests/testelem/testjdc1.py +++ /dev/null @@ -1,455 +0,0 @@ -# coding=utf-8 - -import os -import unittest -import difflib -import compare - -import prefs -from InterfaceTK import appli -#from Editeur import appli - -def add_param(j,pos,nom,valeur): - co=j.addEntite("PARAMETRE",pos) - co.setNom(nom) - co.set_valeur(valeur) - return co - -def add_mcsimp(obj,nom,valeur): - mcs=obj.getChild(nom,restreint='oui') - if mcs is None: - pos=obj.getIndexChild(nom) - mcs=obj.addEntite(nom,pos) - mcs.set_valeur(mcs.evalVal(valeur)) - return mcs - -def cdiff(text1,text2): - return " ".join(difflib.context_diff(text1.splitlines(1),text2.splitlines(1))) - -version='v9' - -class TestCase(unittest.TestCase): - def setUp(self): - pass - - def tearDown(self): - CONTEXT.unsetCurrentStep() - - def test000(self): - app=appli.STANDALONE(version=version) - j=app.newJDC() - -# commande DEBUT - co=j.addEntite("DEBUT",0) - co=add_param(j,1,"P1",None) - x=co.valeur or "coucou" - assert x == "coucou" - assert len(co) == 0 - co.set_valeur(1) - assert len(co) == 1 - co.set_valeur([1,2]) - assert len(co) == 2 - - def test001(self): - """ Test d'insertion de commandes dans fichier toto.comm""" - app=appli.STANDALONE(version=version) - file=os.path.join(prefs.INSTALLDIR,"Tests/testelem/toto.comm") - j=app.openJDC(file=file) - expected="""DEBUT CR validation : toto.comm -FIN CR validation :toto.comm -""" - cr=str(j.report()) - assert cr == expected, cr + "!=" + expected - co=j.etapes[1] - mcs=co.addEntite("INFO") - - cr=app.getTextJDC(j,'python') - expected=""" -DEBUT(); - -MA=LIRE_MAILLAGE(INFO=1,); - -FIN(); -""" - assert cr == expected, cr + "!=" + expected - co=j.addEntite("LIRE_MAILLAGE",2) - test,mess=co.nommeSd("MA2") - assert test == 1 - - cr=app.getTextJDC(j,'python') - expected=""" -DEBUT(); - -MA=LIRE_MAILLAGE(INFO=1,); - -MA2=LIRE_MAILLAGE(); - -FIN(); -""" - assert cr == expected, cr + "!=" + expected - - def test002(self): - """ Test de construction du fichier de commandes az.comm de zero""" - - app=appli.STANDALONE(version=version) - j=app.newJDC() -# commande DEBUT - co=j.addEntite("DEBUT",0) -# commande FIN - co=j.addEntite("FIN",1) -# parametres - pos=0 - pos=pos+1 - co=add_param(j,pos,"P1","9.8") - pos=pos+1 - co=add_param(j,pos,"P2","8.8") - pos=pos+1 - co=add_param(j,pos,"P3","7") - pos=pos+1 - co=add_param(j,pos,"P5","P3*P1") - pos=pos+1 - co=add_param(j,pos,"P6","P1-3") - pos=pos+1 - co=add_param(j,pos,"P4","[2,3,4]") -# commentaire - pos=pos+1 - co=j.addEntite("COMMENTAIRE",pos) - co.set_valeur("Pas trouve shellpanel") -# commande LIRE_MAILLAGE - pos=pos+1 - co=j.addEntite("LIRE_MAILLAGE",pos) - test,mess=co.nommeSd("MAILLA2") - mcs=co.addEntite("UNITE") - valeur=mcs.evalVal("P4[1]") - test=mcs.set_valeur(valeur) -# formule - pos=pos+1 - co=j.addEntite("FORMULE",pos) - co.updateFormulePython(("aaa","REEL","a+z","(a,z)")) -# commande LIRE_MAILLAGE - pos=pos+1 - ma=co=j.addEntite("LIRE_MAILLAGE",pos) - test,mess=co.nommeSd("MAIL") - mcs=co.addEntite("UNITE") - valeur,validite=mcs.evalValeur("P3") - test=mcs.set_valeur(valeur) -# - pos=pos+1 - co=j.addEntite("COMMENTAIRE",pos) - co.set_valeur(" 'LIRE_MAILLAGE', 'UNITE' --> uniquebasepanel") -# formule - pos=pos+1 - co=j.addEntite("FORMULE",pos) - co.updateFormulePython(("az","REEL","aaaaa","(ae,inst)")) -# commande AFFE_MODELE - pos=pos+1 - co=j.addEntite("AFFE_MODELE",pos) - mcs=co.getChild("MAILLAGE") - valeur,validite=mcs.evalValeur("MAIL") - assert valeur == ma.sd - test=mcs.set_valeur(valeur) - assert valeur == co["MAILLAGE"] - mcf=co.addEntite("AFFE") - mcs=mcf[0].getChild("PHENOMENE") - valeur=mcs.evalValItem('MECANIQUE') - assert valeur=='MECANIQUE',str(valeur) - test=mcs.set_valeur(valeur) - assert mcf["PHENOMENE"] == 'MECANIQUE' - mcs=mcf[0].getChild("b_mecanique").getChild("MODELISATION") - mcs.set_valeur(mcs.evalValItem('DIS_T')) - assert mcf["MODELISATION"] == 'DIS_T' - mcs=add_mcsimp(mcf[0],"GROUP_MA",('RESSORT','eee',)) - - mcf=co.addEntite("AFFE") - mcs=mcf[1].getChild("PHENOMENE") - mcs.set_valeur(mcs.evalValItem('MECANIQUE')) - mcs=mcf[1].getChild("b_mecanique").getChild("MODELISATION") - mcs.set_valeur(mcs.evalValItem('DIS_T')) - mcs=add_mcsimp(mcf[1],"GROUP_MA",'MASSES') - - mcf=co.addEntite("AFFE") - mcs=mcf[2].getChild("PHENOMENE") - mcs.set_valeur(mcs.evalValItem('ACOUSTIQUE')) - mcs=mcf[2].getChild("b_acoustique").getChild("MODELISATION") - mcs.set_valeur(mcs.evalValItem('PLAN')) - #mcs=add_mcsimp(mcf[2],"GROUP_NO",'GNP3,GNP5,GNP6,GNP7,GNP8,GNP9,GNP10,GNP11,GNP12') - mcs=add_mcsimp(mcf[2],"GROUP_NO","'GNP3','GNP5','GNP6','GNP7','GNP8','GNP9','GNP10','GNP11','GNP12'") - - co.nommeSd("AFFE1") -# commande AFFE_MODELE - pos=pos+1 - co=j.addEntite("AFFE_MODELE",pos) - mcs=co.getChild("MAILLAGE") - mcs.set_valeur(mcs.evalVal("MAIL")) - - mcf=co.addEntite("AFFE") - mcs=mcf[0].getChild("PHENOMENE") - valeur=mcs.evalValItem('MECANIQUE') - test=mcs.set_valeur(valeur) - mcs=mcf[0].getChild("b_mecanique").getChild("MODELISATION") - mcs.set_valeur(mcs.evalValItem('DIS_T')) - mcs=add_mcsimp(mcf[0],"GROUP_MA",'RESSORT') - - mcf=co.addEntite("AFFE") - mcs=mcf[1].getChild("PHENOMENE") - mcs.set_valeur(mcs.evalValItem('MECANIQUE')) - mcs=mcf[1].getChild("b_mecanique").getChild("MODELISATION") - mcs.set_valeur(mcs.evalValItem('DIS_T')) - mcs=add_mcsimp(mcf[1],"GROUP_MA",'MASSES') - - mcf=co.addEntite("AFFE") - mcs=mcf[2].getChild("PHENOMENE") - mcs.set_valeur(mcs.evalValItem('THERMIQUE')) - mcs=mcf[2].getChild("b_thermique").getChild("MODELISATION") - mcs.set_valeur(mcs.evalValItem('COQUE')) - mcs=add_mcsimp(mcf[2],"TOUT",'OUI') - - co.nommeSd("MOD") -#CARA=AFFE_CARA_ELEM(MODELE=MOD, -# POUTRE=_F(GROUP_MA='MA', -# SECTION='CERCLE', -# CARA='R', -# VALE=(3.0,P6,),),); - pos=pos+1 - co=j.addEntite("AFFE_CARA_ELEM",pos) - mcs=co.getChild("MODELE") - mcs.set_valeur(mcs.evalVal("MOD")) - mcf=co.addEntite("POUTRE") - mcs=mcf[0].getChild("SECTION") - mcs.set_valeur(mcs.evalVal('CERCLE')) - assert mcf[0]["SECTION"] == 'CERCLE' - mcs=add_mcsimp(mcf[0],"GROUP_MA",'MA') - mcs=mcf[0].getChild("b_cercle").getChild("b_constant").getChild("CARA") - mcs.set_valeur(mcs.evalVal('R')) - mcs=mcf[0].getChild("b_cercle").getChild("b_constant").getChild("VALE") - mcs.set_valeur(mcs.evalVal('3.0,P6')) - co.nommeSd("CARA") -# commentaire - pos=pos+1 - co=j.addEntite("COMMENTAIRE",pos) - text=""" 'AFFE_MODELE', 'MAILLAGE' --> uniqueassdpanel - AFFE_MODELE', 'AFFE', 'GROUP_MA' --> plusieursbasepanel - 'AFFE_MODELE', 'AFFE', 'PHENOMENE' --> uniqueintopanel - 'AFFE_MODELE', 'AFFE', 'b_mecanique'--> plusieursintopanel""" - co.set_valeur(text) -#F1=DEFI_FONCTION(NOM_PARA='DX', -# VALE=(5.0,3.0,P4[1],P3,),); - pos=pos+1 - co=j.addEntite("DEFI_FONCTION",pos) - mcs=co.getChild("NOM_PARA") - mcs.set_valeur(mcs.evalVal("DX")) - mcs=co.addEntite("VALE") - mcs.set_valeur(mcs.evalVal("5.0,3.0,P4[1],P3")) - co.nommeSd("F1") -#F3=DEFI_FONCTION(NOM_PARA='DRX', -# VALE_C=(5.0,7.0,9.0,9.0,8.0,7.0,),); - pos=pos+1 - co=j.addEntite("DEFI_FONCTION",pos) - mcs=co.getChild("NOM_PARA") - mcs.set_valeur(mcs.evalVal("DRX")) - mcs=co.addEntite("VALE_C") - mcs.set_valeur(mcs.evalVal("5.0,7.0,9.0,9.0,8.0,7.0")) - co.nommeSd("F3") -# commentaire - pos=pos+1 - co=j.addEntite("COMMENTAIRE",pos) - co.set_valeur(" 'DEFI_FONCTION', 'VALE' --> fonctionpanel ") -#MATER2=DEFI_MATERIAU(ELAS=_F(E=100000000000.0, -# NU=0.0,), -# ECRO_ASYM_LINE=_F(DC_SIGM_EPSI=0.0, -# SY_C=200000000.0, -# DT_SIGM_EPSI=0.0, -# SY_T=50000000.0,),); - pos=pos+1 - co=j.addEntite("DEFI_MATERIAU",pos) - mcf=co.addEntite("ELAS") - mcs=mcf[0].getChild("E") - mcs.set_valeur(mcs.evalVal("100000000000.0")) - mcs=mcf[0].getChild("NU") - mcs.set_valeur(mcs.evalVal("0.0")) - mcf=co.addEntite("ECRO_ASYM_LINE") - mcs=mcf[0].getChild("DC_SIGM_EPSI") - mcs.set_valeur(mcs.evalVal("0.0")) - mcs=mcf[0].getChild("DT_SIGM_EPSI") - mcs.set_valeur(mcs.evalVal("0.0")) - mcs=mcf[0].getChild("SY_C") - mcs.set_valeur(mcs.evalVal("200000000.0")) - mcs=mcf[0].getChild("SY_T") - mcs.set_valeur(mcs.evalVal("50000000.0")) - co.nommeSd("MATER2") -#PS1=DEFI_PARA_SENSI(VALE=1.0,); -#PS2=DEFI_PARA_SENSI(VALE=1.0,); -#PS3=DEFI_PARA_SENSI(VALE=1.0,); - pos=pos+1 - co=j.addEntite("DEFI_PARA_SENSI",pos) - mcs=co.getChild("VALE") - mcs.set_valeur(mcs.evalVal("1.0")) - co.nommeSd("PS1") - pos=pos+1 - co=j.addEntite("DEFI_PARA_SENSI",pos) - mcs=co.getChild("VALE") - mcs.set_valeur(mcs.evalVal("1.0")) - co.nommeSd("PS2") - pos=pos+1 - co=j.addEntite("DEFI_PARA_SENSI",pos) - mcs=co.getChild("VALE") - mcs.set_valeur(mcs.evalVal("1.0")) - co.nommeSd("PS3") -#CHMAT2=AFFE_MATERIAU(MAILLAGE=MAIL, -# AFFE=_F(TOUT='OUI', -# MATER=MATER2,),); - pos=pos+1 - co=j.addEntite("AFFE_MATERIAU",pos) - add_mcsimp(co,"MAILLAGE","MAIL") - mcf=co.getChild("AFFE") - add_mcsimp(mcf[0],"TOUT","OUI") - add_mcsimp(mcf[0],"MATER","MATER2") - co.nommeSd("CHMAT2") -#AAAZ=AFFE_CHAR_THER(MODELE=AFFE1, -# TEMP_IMPO=_F(TOUT='OUI', -# TEMP=0.0,),); - pos=pos+1 - co=j.addEntite("AFFE_CHAR_THER",pos) - add_mcsimp(co,"MODELE","AFFE1") - mcf=co.addEntite("TEMP_IMPO") - add_mcsimp(mcf[0],"TOUT","OUI") - add_mcsimp(mcf[0],"TEMP","0.0") - co.nommeSd("AAAZ") -#TH1=THER_LINEAIRE(MODELE=AFFE1, -# CHAM_MATER=CHMAT2, -# EXCIT=_F(CHARGE=AAAZ,), -# SENSIBILITE=(PS1,PS2,),); - pos=pos+1 - co=j.addEntite("THER_LINEAIRE",pos) - add_mcsimp(co,"MODELE","AFFE1") - add_mcsimp(co,"CHAM_MATER","CHMAT2") - mcf=co.getChild("EXCIT") - add_mcsimp(mcf[0],"CHARGE","AAAZ") - add_mcsimp(co,"SENSIBILITE","PS1,PS2") - co.nommeSd("TH1") -# commentaire - pos=pos+1 - co=j.addEntite("COMMENTAIRE",pos) - co.set_valeur(" 'THER_LINEAIRE', 'SENSIBILITE' --> plusieursassdpanel") -#ACA1=AFFE_CHAR_ACOU(MODELE=AFFE1, -# PRES_IMPO=_F(TOUT='OUI', -# PRES=('RI',3.0,3.0,),),); - pos=pos+1 - co=j.addEntite("AFFE_CHAR_ACOU",pos) - add_mcsimp(co,"MODELE","AFFE1") - mcf=co.addEntite("PRES_IMPO") - add_mcsimp(mcf[0],"TOUT","OUI") - add_mcsimp(mcf[0],"PRES","'RI',3.0,3.0") - co.nommeSd("ACA1") -# commentaire - pos=pos+1 - co=j.addEntite("COMMENTAIRE",pos) - co.set_valeur(" 'AFFE_CHAR_ACOU', 'PRES_IMPO', 'PRES' --> uniquecomppanel") - -# 'AFFE_CHAR_ACOU', 'PRES_IMPO', 'PRES' --> uniquecomppanel - -#MACRO_MATR_ASSE(MODELE=AFFE1, -# NUME_DDL=CO('DDL1'), -# MATR_ASSE=_F(MATRICE=CO('MAT1'), -# OPTION='RIGI_THER',),); - pos=pos+1 - co=j.addEntite("MACRO_MATR_ASSE",pos) - add_mcsimp(co,"MODELE","AFFE1") - mcs=co.getChild("NUME_DDL") - mcs.set_valeur_co('DDL1') - mcf=co.getChild("MATR_ASSE") - add_mcsimp(mcf[0],"OPTION","RIGI_THER") - mcs=mcf[0].getChild("MATRICE") - mcs.set_valeur_co('MAT1') -# commentaire - pos=pos+1 - co=j.addEntite("COMMENTAIRE",pos) - co.set_valeur(" 'MACRO_MATR_ASSE', 'MATR_ASSE', 'MATRICE' --> uniquesdcopanel") - - assert j.isValid(),j.report() - - text1=app.getTextJDC(j,'python') - file=os.path.join(prefs.INSTALLDIR,"Tests/testelem/az.comm") - f=open(file) - text2=f.read() - f.close() - assert text1 == text2 , cdiff(text1,text2) - - def test003(self): - """ Test de construction du fichier de commandes az.comm de zero""" - - app=appli.STANDALONE(version=version) - j=app.newJDC() -# commande DEBUT - co=j.addEntite("DEBUT",0) -# commande FIN - co=j.addEntite("FIN",1) -#parametre - pos=0 - pos=pos+1 - co=add_param(j,pos,"P1","9.8") - pos=pos+1 - co=add_param(j,pos,"P2","sin(P1)") -# formule - pos=pos+1 - co=j.addEntite("FORMULE",pos) - co.updateFormulePython(("aaa","REEL","a+z","(a,z)")) -#parametre de formule - pos=pos+1 - co=add_param(j,pos,"P3","aaa(P1,2.)") -#commande defi_list_reel - pos=pos+1 - co=j.addEntite("DEFI_LIST_REEL",pos) - add_mcsimp(co,"VALE","1.,2.,3.") - co.nommeSd("LI1") -#commande defi_list_reel - pos=pos+1 - co=j.addEntite("DEFI_LIST_REEL",pos) - add_mcsimp(co,"VALE","sin(1.)") - co.nommeSd("LI2") -#commande defi_list_reel - pos=pos+1 - co=j.addEntite("DEFI_LIST_REEL",pos) - add_mcsimp(co,"VALE","aaa(1.,2.)") - co.nommeSd("LI3") -#commande defi_list_reel - pos=pos+1 - co=j.addEntite("DEFI_LIST_REEL",pos) - add_mcsimp(co,"VALE","sin(1.,2)") - co.nommeSd("LI4") -#commande defi_list_reel - pos=pos+1 - co=j.addEntite("DEFI_LIST_REEL",pos) - add_mcsimp(co,"VALE","aaa(1.)") - co.nommeSd("LI5") -#commande defi_list_reel - pos=pos+1 - co=j.addEntite("DEFI_LIST_REEL",pos) - add_mcsimp(co,"VALE","1,sin(1.),2") - co.nommeSd("LI6") - - expected="""DEBUT CR validation : SansNom - Etape : DEFI_LIST_REEL ligne : ... - !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! - ! Concept retourné non défini ! - !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! - Mot-clé simple : VALE - !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! - ! 'sin(1.,2)' (de type ) n'est pas d'un type autorisé: ('R',) ! - !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! - Fin Mot-clé simple : VALE - Fin Etape : DEFI_LIST_REEL - Etape : DEFI_LIST_REEL ligne : ... - !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! - ! Concept retourné non défini ! - !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! - Mot-clé simple : VALE - !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! - ! 'aaa(1.)' (de type ) n'est pas d'un type autorisé: ('R',) ! - !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! - Fin Mot-clé simple : VALE - Fin Etape : DEFI_LIST_REEL -FIN CR validation :SansNom -""" - msg=str( j.report()) - assert compare.check(expected,msg),cdiff(expected,msg) diff --git a/Tests/testelem/testjdc2.py b/Tests/testelem/testjdc2.py deleted file mode 100644 index c700b89a..00000000 --- a/Tests/testelem/testjdc2.py +++ /dev/null @@ -1,166 +0,0 @@ -# -*- coding: iso-8859-1 -*- -import cata5 - -import unittest,re,os -import compare - -class TestJDCCase(unittest.TestCase): - - def test1(self): - text=""" -# OP2 : CO converti en concept2 ou concept2. Retourne concept -# OP6 : uniquement CO converti en concept2. Retourne concept -# OP3 : CO converti en concept ou concept. Retourne concept -co0=OP2(MATR=CO("x1")) -co2=OP6(MATR=CO("xx")) -co3=OP3(MATR={"CHAM":"R","MM":co2}) -""" - self.execute(cata5,text) - - def test2(self): - text=""" -# OP2 : CO converti en concept2 ou concept2. Retourne concept -# OP5 : uniquement CO converti en concept2. Retourne concept -co0=OP2(MATR=CO("x1")) -co1=OP5(MATR=co0) -""" - expected="""DEBUT CR validation : bidon - Etape : OP5 ligne : 5 fichier : 'bidon' - Mot-clé simple : MATR - !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! - ! concept co0 de type concept (de type ) n'est pas d'un ! - ! type autorisé: (,) ! - !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! - Fin Mot-clé simple : MATR - Fin Etape : OP5 -FIN CR validation :bidon -""" - self.execute(cata5,text,err3=expected) - - def test3(self): - text=""" -# OP2 : CO converti en concept2 ou concept2. Retourne concept -co0=OP2(MATR=CO("x1")) -co1=OP2(MATR=x1) -co2=OP2(MATR=co0) -""" - expected="""DEBUT CR validation : bidon - Etape : OP2 ligne : 5 fichier : 'bidon' - Mot-clé simple : MATR - !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! - ! concept co0 de type concept (de type ) n'est pas d'un ! - ! type autorisé: (, ) ! - !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! - Fin Mot-clé simple : MATR - Fin Etape : OP2 -FIN CR validation :bidon -""" - self.execute(cata5,text,err3=expected) - - def test8(self): - text=""" -co2=OP14(MATR=CO("xx")) -""" - expected="" - self.execute(cata5,text,err4=expected) - - def test12(self): - text=""" -co2=OP18(MATR=CO("xx")) -co3=OP2(MATR=xx) -co4=OP11(MATR=xx) -""" - expected="" - self.execute(cata5,text,err4=expected) - - def test13(self): - text=""" -co2=OP10(MATR=CO("xx")) -""" - expected="""DEBUT CR validation : bidon - Etape : OP10 ligne : 2 fichier : 'bidon' - Mot-clé simple : MATR - !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! - ! concept xx de type CO (de type ) n'est pas d'un type ! - ! autorisé: (,) ! - !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! - Fin Mot-clé simple : MATR - Fin Etape : OP10 -FIN CR validation :bidon -""" - self.execute(cata5,text,err3=expected) - - def test16(self): - text=""" -co=OP22(MATR=CO("xx")) -""" - self.execute(cata5,text) - - def test17(self): - text=""" -co=OP22(MATR=CO("xx")) -co2=OP22(MATR=xx) -""" - expected="""DEBUT CR validation : bidon - Etape : OP22 ligne : 3 fichier : 'bidon' - Mot-clé simple : MATR - !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! - ! concept xx de type concept4 (de type ) n'est pas d'un ! - ! type autorisé: (,) ! - !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! - Fin Mot-clé simple : MATR - Fin Etape : OP22 -FIN CR validation :bidon -""" - self.execute(cata5,text,err3=expected) - - def setUp(self): - pass - - def tearDown(self): - pass - - def execute(self,cata,text_jdc,err1="",err2="",err3="",err4=""): - j=cata.JdC(procedure=text_jdc,cata=cata,nom="bidon") - j.actif_status=1 - j.fico=None - j.set_parLot("OUI") - # On compile le texte Python - j.compile() - # On initialise les tops de mesure globale de temps d'execution du jdc - j.cpu_user=os.times()[0] - j.cpu_syst=os.times()[1] - j.impr_macro='NON' - - #print j.cr - if err1 == "": - self.assert_(j.cr.estvide(),msg='Erreur non attendue dans compile (err1):\n%s' % str(j.cr)) - else: - self.assert_(self.check(err1,str(j.cr)),msg='Erreur non attendue dans compile (err1):\n%s\n!=\n%s' % (str(j.cr),err1)) - j.supprime() - return - - j.execCompile() - #print j.cr - if err2 == "": - self.assert_(j.cr.estvide(),msg='Erreur non attendue dans execCompile (err2):\n%s' % str(j.cr)) - else: - self.assert_(self.check(err2,str(j.cr)),msg='Erreur non attendue dans execCompile(err2):\n%s\n!=\n%s' % (str(j.cr),err2)) - j.supprime() - return - - cr=j.report() - #print cr - if err3 == "": - self.assert_(cr.estvide(),msg='Erreur non attendue dans execCompile (err3):\n%s' % str(cr)) - else: - self.assert_(self.check(err3,str(cr)),msg='Erreur non attendue dans execCompile(err3):\n%s\n!=\n%s' % (str(cr),err3)) - j.supprime() - return - - j.set_parLot("NON") - - j.supprime() - - def check(self,want,got): - return compare.check(want,got) diff --git a/Tests/testelem/testjdc3.py b/Tests/testelem/testjdc3.py deleted file mode 100644 index d0edff75..00000000 --- a/Tests/testelem/testjdc3.py +++ /dev/null @@ -1,141 +0,0 @@ -# coding=utf-8 -import os -import unittest -import difflib -import compare - -import prefs -from InterfaceTK import appli -#from Editeur import appli -from Accas import AsException - -def add_param(j,pos,nom,valeur): - co=j.addEntite("PARAMETRE",pos) - co.setNom(nom) - co.set_valeur(valeur) - return co - -def add_mcsimp(obj,nom,valeur): - mcs=obj.getChild(nom,restreint='oui') - if mcs is None: - pos=obj.getIndexChild(nom) - mcs=obj.addEntite(nom,pos) - mcs.set_valeur(mcs.evalVal(valeur)) - return mcs - -def cdiff(text1,text2): - return " ".join(difflib.context_diff(text1.splitlines(1),text2.splitlines(1))) - -version='v9' - -class TestCase(unittest.TestCase): - def setUp(self): - pass - - def tearDown(self): - CONTEXT.unsetCurrentStep() - - def test001(self): - """ Test de commentarisation/decommentarisation de commandes dans fichier az.comm""" - app=appli.STANDALONE(version=version) - file=os.path.join(prefs.INSTALLDIR,"Tests/testelem/az.comm") - j=app.openJDC(file=file) - assert j.isValid(),j.report() - # on commente la commande LIRE_MAILLAGE - for co in j.etapes: - if co.nom == "LIRE_MAILLAGE" and co.sd.nom == "MAIL":break - cco=co.getObjetCommentarise(format=app.format_fichier.get()) - # on decommente la commande LIRE_MAILLAGE - commande,nom = cco.unComment() - # on reaffecte l'objet MAIL - for co in j.etapes: - if co.nom in ("AFFE_MODELE","AFFE_MATERIAU") : - add_mcsimp(co,"MAILLAGE",'MAIL') - - text1=app.getTextJDC(j,'python') - f=open(file) - text2=f.read() - f.close() - assert text1 == text2 , cdiff(text1,text2) - - def test002(self): - """ Test de commentarisation/decommentarisation de macro commande dans fichier az.comm""" - app=appli.STANDALONE(version=version) - file=os.path.join(prefs.INSTALLDIR,"Tests/testelem/az.comm") - j=app.openJDC(file=file) - assert j.isValid(),j.report() - # on commente la commande MACRO_MATR_ASSE - for co in j.etapes: - if co.nom == "MACRO_MATR_ASSE" :break - cco=co.getObjetCommentarise(format=app.format_fichier.get()) - # on decommente la commande MACRO_MATR_ASSE - commande,nom = cco.unComment() - assert j.isValid(),j.report() - - def test003(self): - """ Test de commentarisation/decommentarisation de commandes dans fichier az.comm""" - app=appli.STANDALONE(version=version) - text=""" -DEBUT() -MA=LIRE_MAILLAGE() -FIN() -""" - j=app.openTXT(text) - assert j.isValid(),j.report() - # on commente la commande LIRE_MAILLAGE - co=j.etapes[1] - cco=co.getObjetCommentarise(format=app.format_fichier.get()) - co=j.addEntite("LIRE_MAILLAGE",2) - test,mess=co.nommeSd("MA") - # on decommente la commande LIRE_MAILLAGE - commande,nom = cco.unComment() - expected="""DEBUT CR validation : TEXT - Etape : LIRE_MAILLAGE ligne : ... - !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! - ! Concept retourné non défini ! - !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! - Fin Etape : LIRE_MAILLAGE -FIN CR validation :TEXT -""" - msg=str( j.report()) - assert compare.check(expected,msg),cdiff(expected,msg) - - def test004(self): - """ Test de commentarisation/decommentarisation de commandes dans fichier az.comm""" - app=appli.STANDALONE(version=version) - text=""" -DEBUT() -MA=LIRE_MAILLAGE() -AFFE_MODELE(MAILLAGE=MA) -FIN() -""" - j=app.openTXT(text) - # on commente la commande LIRE_MAILLAGE - co=j.etapes[1] - cco=co.getObjetCommentarise(format=app.format_fichier.get()) - # on commente la commande AFFE_MODELE - co=j.etapes[2] - cco2=co.getObjetCommentarise(format=app.format_fichier.get()) - # on decommente la commande AFFE_MODELE - commande,nom = cco2.unComment() - assert commande["MAILLAGE"] == None - - def test005(self): - """ Test de commentarisation/decommentarisation de commandes dans fichier az.comm""" - app=appli.STANDALONE(version=version) - text=""" -DEBUT() -MA=LIRE_MAILLAGE() -AFFE_MODELE(MAILLAGE=MA) -FIN() -""" - j=app.openTXT(text) - # on commente la commande AFFE_MODELE - co=j.etapes[2] - cco2=co.getObjetCommentarise(format=app.format_fichier.get()) - # on commente la commande LIRE_MAILLAGE - co=j.etapes[1] - cco=co.getObjetCommentarise(format=app.format_fichier.get()) - # on decommente la commande AFFE_MODELE - self.assertRaises(AsException, cco2.unComment, ) - diff --git a/Tests/testelem/testjdc4.py b/Tests/testelem/testjdc4.py deleted file mode 100644 index 164083ee..00000000 --- a/Tests/testelem/testjdc4.py +++ /dev/null @@ -1,60 +0,0 @@ -# coding=utf-8 -import os -import unittest -import difflib -import compare - -import prefs -from InterfaceTK import appli -#from Editeur import appli -from Accas import AsException - -def add_param(j,pos,nom,valeur): - co=j.addEntite("PARAMETRE",pos) - co.setNom(nom) - co.set_valeur(valeur) - return co - -def add_mcsimp(obj,nom,valeur): - mcs=obj.getChild(nom,restreint='oui') - if mcs is None: - pos=obj.getIndexChild(nom) - mcs=obj.addEntite(nom,pos) - mcs.set_valeur(mcs.evalVal(valeur)) - return mcs - -def cdiff(text1,text2): - return " ".join(difflib.context_diff(text1.splitlines(1),text2.splitlines(1))) - -version='v9' - -class TestCase(unittest.TestCase): - def setUp(self): - pass - - def tearDown(self): - CONTEXT.unsetCurrentStep() - - i=0 - for f in ("params.comm",): - file=os.path.join(prefs.INSTALLDIR,"Tests/testelem",f) - i=i+1 - exec """def test%s(self,file="%s"): - "fichier : %s" - self.commtest(file) -""" % (i,file,f) - del i - - def commtest(self,file): - """ Test de lecture/ecriture de fichier .comm""" - #print file - app=appli.STANDALONE(version=version) - j=app.openJDC(file=file) - assert j.isValid(),j.report() - - text1=app.getTextJDC(j,'python') - f=open(file) - text2=f.read() - f.close() - assert text1 == text2 , cdiff(text2,text1) - diff --git a/Tests/testelem/testmacro1.py b/Tests/testelem/testmacro1.py deleted file mode 100644 index dcb09761..00000000 --- a/Tests/testelem/testmacro1.py +++ /dev/null @@ -1,67 +0,0 @@ -import cata2 -from cata2 import OP1,OP2,OP3,OP4,OP5,OP6 - -from Accas import AsException,CO - -import unittest - -class TestMacroCase(unittest.TestCase): - def setUp(self): - pass - - def tearDown(self): - pass - - def test1(self): - co2=OP4() - cr=co2.etape.report() - self.assert_(cr.estvide(),msg='Erreur non attendue:\n%s' % str(cr)) - co2.etape.supprime() - - def test4(self): - co1=OP1(a=1) - co2=OP2(MATR=CO("xx")) - cr=co2.etape.report() - self.assert_(cr.estvide(),msg='Erreur non attendue:\n%s' % str(cr)) - co1.etape.supprime() - co2.etape.supprime() - - def test3(self): - co1=OP1(a=1) - co2=OP3(MATR={"CHAM":"R","MM":CO("xx")}) - cr=co2.etape.report() - self.assert_(cr.estvide(),msg='Erreur non attendue:\n%s' % str(cr)) - co1.etape.supprime() - co2.etape.supprime() - - def test2(self): - co1=OP1(a=1) - co2=OP3(MATR=({"CHAM":"R","MM":CO("xx")}, - {"CHAM":"R","MM":CO("xx")}, - ), - ) - cr=co2.etape.report() - self.assert_(cr.estvide(),msg='Erreur non attendue:\n%s' % str(cr)) - co1.etape.supprime() - co2.etape.supprime() - - def test5(self): - co2=OP5(MATR=CO("xx")) - co3=OP3(MATR={"CHAM":"R","MM":co2}) - #print co3.etape.report() - cr=co2.etape.report() - #print cr - self.assert_(cr.estvide(),msg='Erreur non attendue:\n%s' % str(cr)) - co2.etape.supprime() - co3.etape.supprime() - - def test6(self): - co2=OP6(MATR=CO("xx")) - co3=OP3(MATR={"CHAM":"R","MM":co2}) - #print co3.etape.report() - cr=co2.etape.report() - #print cr - self.assert_(cr.estvide(),msg='Erreur non attendue:\n%s' % str(cr)) - co2.etape.supprime() - co3.etape.supprime() - diff --git a/Tests/testelem/testoper1.py b/Tests/testelem/testoper1.py deleted file mode 100644 index b3866331..00000000 --- a/Tests/testelem/testoper1.py +++ /dev/null @@ -1,185 +0,0 @@ -# coding=utf-8 -import cata1 -from cata1 import OP1,OP2,OP3,OP4,OP5,OP6,OP7 -from Accas import AsException,ASSD,OPER,SIMP,FACT,BLOC,_F - -import Noyau - -class concept(ASSD,Noyau.AsBase):pass - -import unittest - -class TestOperCase(unittest.TestCase): - def setUp(self): - pass - - def tearDown(self): - pass - - def test01(self): - co1=OP1(a=1) - cr=co1.etape.report() - self.assert_(cr.estvide()) - co1.etape.supprime() - - def test02(self): - """ Test fonction sd_prod - """ - co1=OP2(TYPE_RESU="TRANS") - cr=co1.etape.report() - self.assert_(cr.estvide()) - co1.etape.supprime() - - def test04(self): - """ Test fonction sd_prod - Test du type d'un argument avec AsType - """ - co1=OP1(a=1) - co2=OP3(MATR=co1) - cr=co2.etape.report() - self.assert_(cr.estvide()) - co1.etape.supprime() - co2.etape.supprime() - - def test05(self): - """ Test fonction sd_prod - Test sur un mot-clé simple d'un mot-clé facteur : mcf[mcs] - """ - co1=OP4(MESURE={'NOM_PARA':'INST'}) - cr=co1.etape.report() - self.assert_(cr.estvide()) - co1.etape.supprime() - - def test06(self): - """ Test fonction sd_prod - Test sur un mot-clé simple d'un mot-clé facteur : mcf.getChild(mcs).getValeur() - """ - co2=OP1(a=1) - co1=OP5(FFT={'FONCTION':co2}) - cr=co1.etape.report() - self.assert_(cr.estvide()) - co1.etape.supprime() - co2.etape.supprime() - - def test07(self): - """ Test fonction sd_prod - Test sur un mot-clé simple d'un mot-clé facteur : mcf[0][mcs] - """ - co2=OP1(a=1) - co1=OP6(FILTRE={'MODE':co2}) - cr=co1.etape.report() - self.assert_(cr.estvide()) - co1.etape.supprime() - co2.etape.supprime() - - def test08(self): - OP10 = OPER(nom='OP10',op=10,sd_prod=concept, - a=SIMP(typ='I'), - c=SIMP(statut='o',typ='TXM',position='global', - into=("TABLEAU","AGRAF"), - ), - b=FACT(statut='o',max='**', - b_forme=BLOC(condition="c == 'TABLEAU'", - d=SIMP(statut='f',typ='TXM'), - ), - ), - ) - - co1=OP10(a=1,c="TABLEAU",b=_F(d='rr')) - cr=co1.etape.report() - self.assertEqual(co1.etape['a'],1) - self.assertEqual(co1.etape['c'],'TABLEAU') - self.assertEqual(co1.etape['b']['d'],'rr') - self.assert_(cr.estvide()) - co1.etape.supprime() - - def test09(self): - co2=OP1(a=1) - co1=OP5(FFT={'FONCTION':co2}) - l= co1.etape.getSd_utilisees() - self.assert_(len(l)==1) - self.assert_(co2 in l ) - d=co1.etape.getSd_mcs_utilisees() - self.assert_(len(d.keys())==1) - self.assert_(len(d['FONCTION'])==1) - self.assert_(co2 in d['FONCTION']) - co1.etape.supprime() - co2.etape.supprime() - - def test10(self): - OP10 = OPER(nom='OP10',op=10,sd_prod=concept, - a=SIMP(statut='o',typ='R',max=5), - ) - class mylist(list):pass - valeur=(0,1) - co1=OP10(a=mylist(valeur)) - #n,v=co1.etape.getvr8("","a",0,1,3) - v=tuple(co1.etape["a"]) - msg="erreur sur le test " +'\n'+str(co1.etape.report()) - self.assertEqual(v,valeur,msg=msg) - co1.etape.supprime() - - def futuretest11(self): - OP10 = OPER(nom='OP10',op=10,sd_prod=concept, - a=SIMP(statut='o',typ='R',into=(0,1,2),max=5), - ) - class mylist(list):pass - valeur=(2,0,1) - co1=OP10(a=mylist(valeur)) - v=tuple(co1.etape["a"]) - #n,v=co1.etape.getvr8("","a",0,1,3) - msg="erreur sur le test " +'\n'+str(co1.etape.report()) - self.assertEqual(v,valeur,msg=msg) - co1.etape.supprime() - - def futuretest12(self): - OP10 = OPER(nom='OP10',op=10,sd_prod=concept, - a=SIMP(statut='o',typ='R',into=(2,4,3,5),max=5), - ) - class mylist(list):pass - valeur=(2,0,1) - co1=OP10(a=mylist(valeur)) - msg="erreur sur le test " +'\n'+str(co1.etape.report()) - self.assertEqual(co1.etape.isValid(),0,msg=msg) - co1.etape.supprime() - - def futuretest13(self): - OP10 = OPER(nom='OP10',op=10,sd_prod=concept, - a=SIMP(statut='o',typ='R',val_min=0,val_max=3,max=5), - ) - class mylist(list):pass - valeur=(2,0,1) - co1=OP10(a=mylist(valeur)) - msg="erreur sur le test " +'\n'+str(co1.etape.report()) - self.assertEqual(co1.etape.isValid(),1,msg=msg) - co1.etape.supprime() - - def futuretest14(self): - OP10 = OPER(nom='OP10',op=10,sd_prod=concept, - a=SIMP(statut='o',typ='R',val_min=0,val_max=1,max=5), - ) - class mylist(list):pass - valeur=(2,0,1) - co1=OP10(a=mylist(valeur)) - msg="erreur sur le test " +'\n'+str(co1.etape.report()) - self.assertEqual(co1.etape.isValid(),0,msg=msg) - co1.etape.supprime() - - def test15(self): - """ Test mot cle facteur incorrect - """ - co1=OP7(FILTRE="coucou") - cr=co1.etape.report() - msg="erreur sur le test " +'\n'+str(cr) - self.assertEqual(co1.etape.isValid(),0,msg=msg) - co1.etape.supprime() - - def test16(self): - OP10 = OPER(nom='OP10',op=10,sd_prod=concept, - a=SIMP(statut='o',typ='R',val_min=0,val_max=1,max=5), - ) - valeur=(2,0,1) - co1=OP10(a=valeur) - msg="erreur sur le test " +'\n'+str(co1.etape.report()) - self.assertEqual(co1.etape.isValid(),0,msg=msg) - co1.etape.supprime() diff --git a/Tests/testelem/testparseur.py b/Tests/testelem/testparseur.py deleted file mode 100644 index bee96de7..00000000 --- a/Tests/testelem/testparseur.py +++ /dev/null @@ -1,108 +0,0 @@ -import unittest -import difflib - -from convert import parseur_python - -def cdiff(text1,text2): - #return " ".join(difflib.unified_diff(text1.splitlines(1),text2.splitlines(1))) - return " ".join(difflib.context_diff(text1.splitlines(1),text2.splitlines(1))) - #return " ".join(difflib.ndiff(text1.splitlines(1),text2.splitlines(1))) - -class appli: - dict_reels={} - liste_simp_reel=[] - -class TestCase(unittest.TestCase): - def test01(self): - text=""" -MA=LIRE_MAILLAGE() -""" - expected="""MA=LIRE_MAILLAGE() - -""" - txt = parseur_python.PARSEUR_PYTHON(text).getTexte(appli()) - assert txt == expected, cdiff(expected,txt) - - def test02(self): - text=""" -MA=LIRE_MAILLAGE() -MB=LIRE_MAILLAGE() -""" - expected="""MA=LIRE_MAILLAGE() - -MB=LIRE_MAILLAGE() - -""" - txt = parseur_python.PARSEUR_PYTHON(text).getTexte(appli()) - assert txt == expected, cdiff(expected,txt) - - def test03(self): - text=""" -a=1.2 -b=4 -c="aa" -d=5 # parametre d -MA=LIRE_MAILLAGE() -MB=LIRE_MAILLAGE() -""" - expected=r'''a = PARAMETRE(nom='a',valeur=1.2) -b = PARAMETRE(nom='b',valeur=4) -c = PARAMETRE(nom='c',valeur="aa") -COMMENTAIRE(' parametre d\n') -d = PARAMETRE(nom='d',valeur=5 ) -MA=LIRE_MAILLAGE() - -MB=LIRE_MAILLAGE() - -''' - txt = parseur_python.PARSEUR_PYTHON(text).getTexte(appli()) - assert txt == expected, cdiff(expected,txt) - - def test04(self): - text=''' -DEBUT(); -a = 1.0; -b = 3; -c = 15; -d = 5; -x = (1, 2); -y = [3, 4]; -y2 = (y * 2); -z = 'a'; -zz = 'v'; -t = a; -v = """aaaa -bbbb"""; -xx = ceil(sqrt(d)); -yy = cos(3.1); -ax = sin(2); -bx = cos(xx); -cx = sin(xx); -zy = y[1]; -FIN(); -''' - expected='''DEBUT(); - -a = PARAMETRE(nom='a',valeur= 1.0) -b = PARAMETRE(nom='b',valeur= 3) -c = PARAMETRE(nom='c',valeur= 15) -d = PARAMETRE(nom='d',valeur= 5) -x = PARAMETRE(nom='x',valeur= (1, 2)) -y = PARAMETRE(nom='y',valeur= [3, 4]) -y2 = PARAMETRE(nom='y2',valeur= (y * 2)) -z = PARAMETRE(nom='z',valeur= 'a') -zz = PARAMETRE(nom='zz',valeur= 'v') -t = PARAMETRE(nom='t',valeur= a) -v = PARAMETRE(nom='v',valeur= """aaaa -bbbb""") -xx = PARAMETRE(nom='xx',valeur= ceil(sqrt(d))) -yy = PARAMETRE(nom='yy',valeur= cos(3.1)) -ax = PARAMETRE(nom='ax',valeur= sin(2)) -bx = PARAMETRE(nom='bx',valeur= cos(xx)) -cx = PARAMETRE(nom='cx',valeur= sin(xx)) -zy = PARAMETRE(nom='zy',valeur= y[1]) -FIN(); - -''' - txt = parseur_python.PARSEUR_PYTHON(text).getTexte(appli()) - assert txt == expected, cdiff(expected,txt) diff --git a/Tests/testelem/testposition1.py b/Tests/testelem/testposition1.py deleted file mode 100644 index da224d56..00000000 --- a/Tests/testelem/testposition1.py +++ /dev/null @@ -1,256 +0,0 @@ -# coding=utf-8 -import os -import cata3 -from Accas import AsException,ASSD,OPER,SIMP,FACT,BLOC,_F - -import Noyau - -class concept(ASSD,Noyau.AsBase):pass - -import unittest - -class TestCase(unittest.TestCase): - def setUp(self): - self.j=cata3.JdC(procedure="",nom="bidon") - self.j.actif_status=1 - CONTEXT.setCurrentStep(self.j) - - def tearDown(self): - CONTEXT.unsetCurrentStep() - self.j.supprime() - - def test001(self): - """ Test position = global - """ - OP10 = OPER(nom='OP10',op=10,sd_prod=concept, - a=SIMP(typ='I'), - c=SIMP(statut='o',typ='TXM',position='global', - into=("TABLEAU","AGRAF"), - ), - b=FACT(statut='o',max='**', - b_forme=BLOC(condition="c == 'TABLEAU'", - d=SIMP(statut='f',typ='TXM'), - ), - ), - ) - co1=OP10(a=1,c="TABLEAU",b=_F(d='rr')) - msg=co1.etape.report() - self.assertEqual(co1.etape.isValid(),1,msg=msg) - - def test002(self): - """ Test position=global_jdc - """ - OP10 = OPER(nom='OP10',op=10,sd_prod=concept, - a=SIMP(typ='I'), - c=SIMP(statut='o',typ='TXM',position='global_jdc', - into=("TABLEAU","AGRAF"), - ), - ) - OP11 = OPER(nom='OP11',op=10,sd_prod=concept, - b=FACT(statut='o',max='**', - b_forme=BLOC(condition="c == 'TABLEAU'", - d=SIMP(statut='f',typ='TXM'), - ), - ), - ) - co1=OP10(a=1,c="TABLEAU",) - co2=OP11(b=_F(d='rr')) - msg=co1.etape.report() - self.assertEqual(co1.etape.isValid(),1,msg=msg) - msg=co2.etape.report() - self.assertEqual(co2.etape.isValid(),1,msg=msg) - - def test003(self): - """ Test position=global_jdc - """ - OP10 = OPER(nom='OP10',op=10,sd_prod=concept, - a=SIMP(typ='I'), - b=FACT( c=SIMP(statut='o',typ='TXM',position='global_jdc', - into=("TABLEAU","AGRAF"), - ), - ), - ) - OP11 = OPER(nom='OP11',op=10,sd_prod=concept, - b=FACT(statut='o',max='**', - b_forme=BLOC(condition="c == 'TABLEAU'", - d=SIMP(statut='f',typ='TXM'), - ), - ), - ) - OP12 = OPER(nom='OP12',op=10,sd_prod=concept, - b=FACT(statut='o',max='**', - b_forme=BLOC(condition="c == 'TABLEAU'", - d=SIMP(statut='o',typ='TXM'), - ), - ), - ) - co1=OP10(a=1,b=_F(c="TABLEAU")) - co2=OP11(b=_F(d='rr')) - co3=OP11() - co4=OP12(b=_F(d='rr')) - msg=co1.etape.report() - self.assertEqual(co1.etape.isValid(),1,msg=msg) - msg=co2.etape.report() - self.assertEqual(co2.etape.isValid(),1,msg=msg) - msg=co3.etape.report() - self.assertEqual(co3.etape.isValid(),1,msg=msg) - msg=co4.etape.report() - self.assertEqual(co4.etape.isValid(),1,msg=msg) - - def futuretest004(self): - """ Test position = global - """ - msg0= """ - PROBLEME : les mots cles globaux ne sont pas forcément vus - dans les mots cles facteurs (dépendant de l'ordre de création) - Dans ce test xx est avant b qui est avant g : g voit c mais pas xx. - """ - OP10 = OPER(nom='OP10',op=10,sd_prod=concept, - a=SIMP(typ='I'), - b=FACT( c=SIMP(statut='o',typ='TXM',position='global', - into=("TABLEAU","AGRAF"), - ), - ), - g=FACT(statut='o',max='**', - b_forme=BLOC(condition="c == 'TABLEAU'", - d=SIMP(statut='f',typ='TXM'), - ), - ), - xx=FACT(statut='o',max='**', - b_forme=BLOC(condition="c == 'TABLEAU'", - d=SIMP(statut='f',typ='TXM'), - ), - ), - ) - co1=OP10(a=1,b=_F(c="TABLEAU"),g=_F(d='rr')) - msg=msg0+str(co1.etape.report()) - self.assertEqual(co1.etape.isValid(),1,msg=msg) - co2=OP10(a=1,b=_F(c="TABLEAU"),xx=_F(d='rr')) - msg=msg0+str(co2.etape.report()) - self.assertEqual(co2.etape.isValid(),1,msg=msg) - - def test005(self): - """ Test position = global - """ - OP10 = OPER(nom='OP10',op=10,sd_prod=concept, - a=SIMP(typ='I'), - g=FACT( c=SIMP(statut='o',typ='TXM',position='global', - into=("TABLEAU","AGRAF"), - ), - ), - b_forme=BLOC(condition="c == 'TABLEAU'", - d=SIMP(statut='f',typ='TXM'), - ), - ) - co1=OP10(a=1,g=_F(c="TABLEAU"),d='rr') - msg=co1.etape.report() - self.assertEqual(co1.etape.isValid(),1,msg=msg) - - def test006(self): - """ Test position = global - ATTENTION : Un mot cle global, facultatif avec defaut (c) défini dans un mot clé facteur - n'est pas vu globalement - """ - OP10 = OPER(nom='OP10',op=10,sd_prod=concept, - a=SIMP(typ='I'), - g=FACT(a=SIMP(typ='I'), - c=SIMP(typ='TXM',position='global',into=("TABLEAU","AGRAF"),defaut="TABLEAU"), - ), - b_forme=BLOC(condition="c == 'TABLEAU'", - d=SIMP(statut='f',typ='TXM'), - ), - ) - co1=OP10(a=1,g=_F(a=1),d='rr') - msg=co1.etape.report() - self.assertEqual(co1.etape.isValid(),0,msg=msg) - - def test007(self): - """ Test position = global - """ - OP10 = OPER(nom='OP10',op=10,sd_prod=concept, - c=SIMP(typ='TXM',position='global',into=("TABLEAU","AGRAF"),defaut="TABLEAU"), - b=FACT(statut='o',max='**', - b_forme=BLOC(condition="c == 'TABLEAU'", - d=SIMP(statut='f',typ='TXM'), - ), - ), - ) - co1=OP10(b=_F(d='rr')) - msg=co1.etape.report() - self.assertEqual(co1.etape.isValid(),1,msg=msg) - - def test008(self): - """ Test position = global - """ - OP10 = OPER(nom='OP10',op=10,sd_prod=concept, - c=SIMP(typ='TXM',position='global',into=("TABLEAU","AGRAF"),defaut="TABLEAU"), - b_forme=BLOC(condition="c == 'TABLEAU'", - d=SIMP(statut='f',typ='TXM'), - ), - ) - co1=OP10(d='rr') - msg=co1.etape.report() - self.assertEqual(co1.etape.isValid(),1,msg=msg) - - def test009(self): - """ Test position = global - """ - OP10 = OPER(nom='OP10',op=10,sd_prod=concept, - c=SIMP(statut='o',typ='TXM',position='global',into=("TABLEAU","AGRAF"),defaut="TABLEAU"), - b_forme=BLOC(condition="c == 'TABLEAU'", - d=SIMP(statut='f',typ='TXM'), - ), - ) - co1=OP10(d='rr') - msg=co1.etape.report() - self.assertEqual(co1.etape.isValid(),1,msg=msg) - - def test010(self): - """ Test position = global - """ - OP10 = OPER(nom='OP10',op=10,sd_prod=concept, - g=FACT(a=SIMP(typ='I'), - c=SIMP(statut='o',typ='TXM',position='global',into=("TABLEAU","AGRAF"),defaut="TABLEAU"), - ), - b_forme=BLOC(condition="c == 'TABLEAU'", - d=SIMP(statut='f',typ='TXM'), - ), - ) - co1=OP10(g=_F(a=1),d='rr') - msg=co1.etape.report() - self.assertEqual(co1.etape.isValid(),1,msg=msg) - - def test011(self): - """ Test position = global - """ - OP10 = OPER(nom='OP10',op=10,sd_prod=concept, - g=FACT(statut='o', - c=SIMP(statut='o',typ='TXM',position='global',into=("TABLEAU","AGRAF"),defaut="TABLEAU"), - ), - b_forme=BLOC(condition="c == 'TABLEAU'", - d=SIMP(statut='f',typ='TXM'), - ), - ) - co1=OP10(d='rr') - msg=co1.etape.report() - self.assertEqual(co1.etape.isValid(),1,msg=msg) - - def test012(self): - """ Test position = global - ATTENTION : Un mot cle global, facultatif avec defaut (c) défini dans un mot clé facteur - n'est pas vu globalement - """ - OP10 = OPER(nom='OP10',op=10,sd_prod=concept, - g=FACT(statut='o', - c=SIMP(typ='TXM',position='global',into=("TABLEAU","AGRAF"),defaut="TABLEAU"), - ), - b_forme=BLOC(condition="c == 'TABLEAU'", - d=SIMP(statut='f',typ='TXM'), - ), - ) - co1=OP10(d='rr') - msg=co1.etape.report() - self.assertEqual(co1.etape.isValid(),0,msg=msg) - co2=OP10(g=_F(c="TABLEAU"),d='rr') - msg=co2.etape.report() - self.assertEqual(co2.etape.isValid(),1,msg=msg) diff --git a/Tests/testelem/testsimp0.py b/Tests/testelem/testsimp0.py deleted file mode 100644 index 68b3d43b..00000000 --- a/Tests/testelem/testsimp0.py +++ /dev/null @@ -1,47 +0,0 @@ -from Noyau import SIMP - -import unittest - -class TestSimpCase(unittest.TestCase): - def testStatut1(self): - a=SIMP(typ='I',statut='o') - cr=a.report() - self.assert_(cr.estvide()) - - def testStatut2(self): - a=SIMP(typ='I') - cr=a.report() - self.assert_(cr.estvide()) - - def testStatut3(self): - a=SIMP(typ='I',statut='s') - cr=a.report() - expected_cr=""" - !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! - ! L'attribut 'statut' doit valoir 'o','f','c' ou 'd' : 's' ! - !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! - -""" - self.assertEqual(str(cr) , expected_cr) - - def testPosition1(self): - a=SIMP(typ='I',position='total') - cr=a.report() - expected_cr=""" - !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! - ! L'attribut 'position' doit valoir 'local','global' ou 'global_jdc' : 'total' ! - !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! - -""" - self.assertEqual(str(cr) , expected_cr) - - def testMinMax1(self): - a=SIMP(typ='I',min='**',max=12) - cr=a.report() - expected_cr=""" - !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! - ! Nombres d'occurrence min et max invalides : '**' 12 ! - !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! - -""" - self.assertEqual(str(cr) , expected_cr) diff --git a/Tests/testelem/testsimp1.py b/Tests/testelem/testsimp1.py deleted file mode 100644 index 836dc7f3..00000000 --- a/Tests/testelem/testsimp1.py +++ /dev/null @@ -1,289 +0,0 @@ -# coding=utf-8 -import types -from Accas import SIMP,ASSD,geom,assd -class maillage(ASSD):pass -class maillage_sdaster(ASSD):pass - -import unittest - -class TestMCSimpCase(unittest.TestCase): - def setUp(self): - self.cata=SIMP(typ='I',statut='o') - - def tearDown(self): - del self.cata - - def testStatut1(self): - o=self.cata(1,'mcs1',None) - cr=o.report() - self.assert_(cr.estvide()) - - def testStatut2(self): - o=self.cata(None,'mcs1',None) - cr=o.report() - expected_cr="""Mot-clé simple : mcs1 - !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! - ! Mot-clé : mcs1 obligatoire non valorisé ! - !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! - !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! - ! None n'est pas une valeur autorisée ! - !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! -Fin Mot-clé simple : mcs1 -""" - self.assertEqual(str(cr) , expected_cr) - - def testType1(self): - o=self.cata(1,'mcs1',None) - cr=o.report() - expected_cr="""Mot-clé simple : mcs1 -Fin Mot-clé simple : mcs1 -""" - self.assertEqual(str(cr) , expected_cr) - - def test004(self): - cata=SIMP(typ='shell',statut='o') - liste=((1,0),("a",1), (1.,0),(('RI',1.,0.),0), (('RI',1,0),0), - (1+0j,0), ("('RI',1,0)",1), ("toto",1), (None,0), - ) - for valeur,valid in liste: - o=cata(valeur,'mcs',None) - self.assertEqual(o.isValid(),valid,"erreur sur le test %s %s" % (valeur,valid)+'\n'+str(o.report())) - if valid: self.assertEqual(o.getValeur(),valeur) - - # Chaines - def test040(self): - cata=SIMP(typ='TXM',statut='o') - liste=((1,0),("a",1), (1.,0),(('RI',1.,0.),0), - (('RI',1,0),0), (1+0j,0), - ("('RI',1,0)",1), ("toto",1), (None,0), - ) - for valeur,valid in liste: - o=cata(valeur,'mcs',None) - self.assertEqual(o.isValid(),valid,"erreur sur le test %s %s" % (valeur,valid)+'\n'+str(o.report())) - if valid: self.assertEqual(o.getValeur(),valeur) - - def test041(self): - cata=SIMP(typ='TXM',statut='o',max=3) - liste=((1,0),("a",1), (1.,0),(('RI',1.,0.),0), - (('RI',1,0),0), (1+0j,0), - (("toot","titi"),1), - (("toot","titi","tutu"),1), - (("toot","titi",1),0), - (("toot","titi","tutu","tata"),0), - ("('RI',1,0)",1), ("toto",1), (None,0), - ) - for valeur,valid in liste: - o=cata(valeur,'mcs',None) - self.assertEqual(o.isValid(),valid,"erreur sur le test %s %s" % (valeur,valid)+'\n'+str(o.report())) - if valid: self.assertEqual(o.getValeur(),valeur) - - def test042(self): - cata=SIMP(typ='TXM',statut='o',into=("toto","titi"),max=3) - liste=((1,0),("a",0), (1.,0),(('RI',1.,0.),0), - (('RI',1,0),0), (1+0j,0), - (("toto","titi"),1), - (("toot","titi","tutu"),0), - (("toot","titi",1),0), - (("toot","titi","tutu","tata"),0), - ("('RI',1,0)",0), ("toto",1), (None,0), - ) - for valeur,valid in liste: - o=cata(valeur,'mcs',None) - self.assertEqual(o.isValid(),valid,"erreur sur le test %s %s" % (valeur,valid)+'\n'+str(o.report())) - if valid: self.assertEqual(o.getValeur(),valeur) - - def test043(self): - cata=SIMP(typ='TXM',statut='o',into=("toto","titi"),min=2,max=3) - liste=((1,0),("a",0), (1.,0),(('RI',1.,0.),0), - (('RI',1,0),0), (1+0j,0), - (("toto","titi"),1), - (("toot","titi","tutu"),0), - (("toot","titi",1),0), - (("toot","titi","tutu","tata"),0), - ("('RI',1,0)",0), ("toto",0), (None,0), - ) - for valeur,valid in liste: - o=cata(valeur,'mcs',None) - self.assertEqual(o.isValid(),valid,"erreur sur le test %s %s" % (valeur,valid)+'\n'+str(o.report())) - if valid: self.assertEqual(o.getValeur(),valeur) - - # Reels - def test020(self): - cata=SIMP(typ='R',statut='o',max=4) - liste=((1,1),("a",0), (1.,1),(('RI',1.,0.),0), ((1.,2.,3.),1), - ((1.,2.,3.,4.),1), ((1.,2.,3.,4.,5.),0), ("toto",0), (None,0), - ) - for valeur,valid in liste: - o=cata(valeur,'mcs',None) - self.assertEqual(o.isValid(),valid,"erreur sur le test %s %s" % (valeur,valid)+'\n'+str(o.report())) - if valid: self.assertEqual(o.getValeur(),valeur) - - def test021(self): - cata=SIMP(typ='R',statut='o',min=2,max=4) - liste=((1,0),("a",0), (1.,0),(('RI',1.,0.),0), - ((1.,2.),1), ((1.,2.,3.),1), ((1.,2.,3.,4.),1), - ((1.,2.,3.,4.,5.),0), ("toto",0), (None,0), - ) - for valeur,valid in liste: - o=cata(valeur,'mcs',None) - self.assertEqual(o.isValid(),valid,"erreur sur le test %s %s" % (valeur,valid)+'\n'+str(o.report())) - if valid: self.assertEqual(o.getValeur(),valeur) - - - def test022(self): - cata=SIMP(typ='R',statut='o',val_min=2,val_max=4) - liste=((1,0),("a",0), (1.,0),(('RI',1.,0.),0), (3,1), - (6,0), ((1.,2.),0), ((1.,2.,3.),0), ((1.,2.,3.,4.),0), - ((1.,2.,3.,4.,5.),0), ("toto",0), (None,0), - ) - for valeur,valid in liste: - o=cata(valeur,'mcs',None) - self.assertEqual(o.isValid(),valid,"erreur sur le test %s %s" % (valeur,valid)+'\n'+str(o.report())) - if valid: self.assertEqual(o.getValeur(),valeur) - - def test023(self): - cata=SIMP(typ='R',statut='o',val_min=2,val_max=4,max=4) - liste=((1,0),("a",0), (1.,0),(('RI',1.,0.),0), (3,1), - (6,0), ((1.,6.),0), ((3.,2.),1), ((1.,2.,3.),0), - ((1.,2.,3.,4.),0), ((1.,2.,3.,4.,5.),0), ("toto",0), - (None,0), - ) - for valeur,valid in liste: - o=cata(valeur,'mcs',None) - self.assertEqual(o.isValid(),valid,"erreur sur le test %s %s" % (valeur,valid)+'\n'+str(o.report())) - if valid: self.assertEqual(o.getValeur(),valeur) - - def test024(self): - cata=SIMP(typ='R',statut='o') - liste=((1,1),("a",0), (1.,1),(('RI',1.,0.),0), (('RI',1,0),0), - (1+0j,0), ("('RI',1,0)",0), ((1.,2.,3.),0), ("toto",0), - (None,0), - ) - for valeur,valid in liste: - o=cata(valeur,'mcs',None) - self.assertEqual(o.isValid(),valid,"erreur sur le test %s %s" % (valeur,valid)+'\n'+str(o.report())) - if valid: self.assertEqual(o.getValeur(),valeur) - - - # Entiers - def test030(self): - cata=SIMP(typ='I',statut='o') - liste=((1,1),("a",0), (1.1,0),(('RI',1.,0.),0), - (('RI',1,0),0), (1+0j,0), ("1",0), ("toto",0), (None,0), - ) - for valeur,valid in liste: - o=cata(valeur,'mcs',None) - self.assertEqual(o.isValid(),valid,"erreur sur le test %s %s" % (valeur,valid)+'\n'+str(o.report())) - if valid: self.assertEqual(o.getValeur(),valeur) - - def test031(self): - cata=SIMP(typ='I',statut='o',into=(1,5,8),max=4) - liste=((1,1),("a",0), ("toto",0), (None,0), - (1.1,0),(('RI',1.,0.),0), - (3,0), (6,0), ((1,5),1), ((1,5,8),1), ((1,5,8,5),1), - ((1,5,8,5,1),0), ((1.,6.),0), ((3.,2.),0), ((1.,2.,3.),0), - ((1.,2.,3.,4.),0), ((1.,2.,3.,4.,5.),0), - ) - for valeur,valid in liste: - o=cata(valeur,'mcs',None) - self.assertEqual(o.isValid(),valid,"erreur sur le test %s %s" % (valeur,valid)+'\n'+str(o.report())) - if valid: self.assertEqual(o.getValeur(),valeur) - - # Complexes - def test010(self): - cata=SIMP(typ='C',statut='o',into=(('RI',1,0),('RI',2,0),('RI',3,0)),max=4) - liste=((1,0),("a",0), (1.,0),(('RI',1.,0.),1), ("toto",0), (None,0), - ((('RI',1.,0.),('RI',2,0)),1), - ((('RI',1.,0.),('RI',2,0),('RI',3,0)),1), - ((('RI',1.,0.),('RI',2,0),('RI',3,0),('RI',3,0)),1), - ((('RI',1.,0.),('RI',2,0),('RI',3,0),('RI',3,0),('RI',1,0)),0), - ((1,5),0), ((1,5,8,5,1),0), - ((1.,6.),0), ((3.,2.),0), ((1.,2.,3.),0), ((1.,2.,3.,4.,5.),0), - ) - for valeur,valid in liste: - o=cata(valeur,'mcs',None) - self.assertEqual(o.isValid(),valid,"erreur sur le test %s %s" % (valeur,valid)+'\n'+str(o.report())) - if valid: self.assertEqual(o.getValeur(),valeur) - - def test011(self): - cata=SIMP(typ='C',statut='o',max=3) - liste=((1,1),("a",0), (1.,1),(('RI',1.,0.),1), ("toto",0), (None,0), - ((('RI',1.,0.),('RI',2,0)),1), - ((('RI',1.,0.),('RI',2,0),('RI',3,0)),1), - ((('RI',1.,0.),('RI',2,0),('RI',3,0),('RI',3,0)),0), - ((('RI',1.,0.),('RI',2,0),('RI',3,0),('RI',3,0),('RI',1,0)),0), - ((1,5),1), ((1,5,8,5,1),0), - ((1.,6.),1), ((3.,2.),1), ((1.,2.,3.),1), ((1.,2.,3.,4.,5.),0), - ) - for valeur,valid in liste: - o=cata(valeur,'mcs',None) - self.assertEqual(o.isValid(),valid,"erreur sur le test %s %s" % (valeur,valid)+'\n'+str(o.report())) - if valid: self.assertEqual(o.getValeur(),valeur) - - def test012(self): - cata=SIMP(typ='C',statut='o') - liste=((1,1),("a",0), (1.,1),(('RI',1.,0.),1), (('RI',1,0),1), (1+0j,1), - ("('RI',1,0)",0), ("toto",0), (None,0), - ) - for valeur,valid in liste: - o=cata(valeur,'mcs',None) - self.assertEqual(o.isValid(),valid,"erreur sur le test %s %s" % (valeur,valid)+'\n'+str(o.report())) - if valid: self.assertEqual(o.getValeur(),valeur) - - def test013(self): - cata=SIMP(typ=('R',maillage),statut='o') - liste=((1,1), - (maillage(),1), - (maillage_sdaster(),0), - ("aa",0), - ) - for valeur,valid in liste: - o=cata(valeur,'mcs',None) - self.assertEqual(o.isValid(),valid, - "erreur sur le test %s %s" % (valeur,valid)+'\n'+str(o.report())) - if valid: self.assertEqual(o.getValeur(),valeur) - - def test014(self): - cata=SIMP(typ=geom,statut='o') - liste=((1,0), - ("aaaa",1), - ) - for valeur,valid in liste: - o=cata(valeur,'mcs',None) - self.assertEqual(o.isValid(),valid, - "erreur sur le test %s %s" % (valeur,valid)+'\n'+str(o.report())) - if valid: self.assertEqual(o.getValeur(),valeur) - - def test015(self): - cata=SIMP(typ=assd,statut='o') - liste=((1,1), - ("aaaa",1), - ) - for valeur,valid in liste: - o=cata(valeur,'mcs',None) - self.assertEqual(o.isValid(),valid, - "erreur sur le test %s %s" % (valeur,valid)+'\n'+str(o.report())) - if valid: self.assertEqual(o.getValeur(),valeur) - - def test016(self): - class LongStr: - def __init__(self,min,max): - self.min=min - self.max=max - def __convert__(self,valeur): - if type(valeur) == types.StringType: - if self.min < len(valeur) < self.max:return valeur - return None - - cata=SIMP(typ=LongStr(5,8),statut='o') - liste=(("aaaaaa",1), - ("aaaaaaa",1), - ("aaaaaaaaaaaaaaa",0), - ("aa",0), - ) - for valeur,valid in liste: - o=cata(valeur,'mcs',None) - self.assertEqual(o.isValid(),valid, - "erreur sur le test %s %s" % (valeur,valid)+'\n'+str(o.report())) - if valid: self.assertEqual(o.getValeur(),valeur) - diff --git a/Tests/testelem/testsimp2.py b/Tests/testelem/testsimp2.py deleted file mode 100644 index 40f0059b..00000000 --- a/Tests/testelem/testsimp2.py +++ /dev/null @@ -1,64 +0,0 @@ -# coding=utf-8 -from Accas import SIMP,ASSD - -import unittest - -class TestSimpCase(unittest.TestCase): - def setUp(self): - pass - - def tearDown(self): - pass - - def test001(self): - cata=SIMP(statut='o',typ='TXM',defaut="d") - liste=((1,0),("a",1), (1.,0),(('RI',1.,0.),0), (('RI',1,0),0), - (1+0j,0), ("('RI',1,0)",1), ("toto",1), (None,1), - ) - for valeur,valid in liste: - o=cata(valeur,'mcs',None) - msg="erreur sur le test %s %s" % (valeur,valid)+'\n'+str(o.report()) - self.assertEqual(o.isValid(),valid,msg=msg) - - def test002(self): - cata=SIMP(statut='f',typ='TXM',defaut="d") - liste=((1,0),("a",1), (1.,0),(('RI',1.,0.),0), (('RI',1,0),0), - (1+0j,0), ("('RI',1,0)",1), ("toto",1), (None,1), - ) - for valeur,valid in liste: - o=cata(valeur,'mcs',None) - msg="erreur sur le test %s %s" % (valeur,valid)+'\n'+str(o.report()) - self.assertEqual(o.isValid(),valid,msg=msg) - - def test003(self): - cata=SIMP(statut='o',typ='R',max=3) - class mylist(list):pass - liste=((1,1),(mylist((0.,1.)),1), (1.,1),(mylist((0.,1.)),1), (('RI',1,0),0), - (1+0j,0), ("('RI',1,0)",0), ("toto",0), (None,0), - (mylist(("aaaa",1.)),0), (mylist((0.,1.,2.,3.)),0), - ) - for valeur,valid in liste: - o=cata(valeur,'mcs',None) - msg="erreur sur le test %s %s" % (valeur,valid)+'\n'+str(o.report()) - self.assertEqual(o.isValid(),valid,msg=msg) - - def test004(self): - cata=SIMP(statut='f',typ=('R','I'),max=5) - liste=((1,1),(1.5,1), ((1,2),1), - ((2.3,3.4),1),((1,2.0),1), - ) - for valeur,valid in liste: - o=cata(valeur,'mcs',None) - msg="erreur sur le test %s %s" % (valeur,valid)+'\n'+str(o.report()) - self.assertEqual(o.isValid(),valid,msg=msg) - - def _test005(self): - cata=SIMP(statut='f',typ='I',max=5) - liste=((1,1),(1.0,1), ((1,2),1), - ((2.3,3.4),0),((1,2.0),1), - ) - for valeur,valid in liste: - o=cata(valeur,'mcs',None) - msg="erreur sur le test %s %s" % (valeur,valid)+'\n'+str(o.report()) - self.assertEqual(o.isValid(),valid,msg=msg) - diff --git a/Tests/testelem/testsimp3.py b/Tests/testelem/testsimp3.py deleted file mode 100644 index 51891e9a..00000000 --- a/Tests/testelem/testsimp3.py +++ /dev/null @@ -1,138 +0,0 @@ -# coding=utf-8 -from Accas import * - -import unittest -import compare -OK="""Mot-clé simple : mcs -Fin Mot-clé simple : mcs -""" -class myparam: - def __init__(self,valeur): - self.valeur=valeur - def __adapt__(self,protocol): - return protocol.adapt(self.valeur) - -from Noyau.N_VALIDATOR import listProto,TypeProtocol,IntoProtocol -class param: - def __init__(self,valeur): - self.valeur=valeur - -def hasvaleur(obj,protocol,**args): - return protocol.adapt(obj.valeur) - -listProto.register(param,hasvaleur) -TypeProtocol.register(param,hasvaleur) -IntoProtocol.register(param,hasvaleur) - - -class TestValidCase(unittest.TestCase): - def setUp(self): - pass - - def tearDown(self): - pass - - def _test(self,cata,liste): - for valeur,report in liste: - o=cata(valeur,'mcs',None) - msg="" - rep=str(o.report()) - valid=compare.check(rep,report) - if not valid: - msg="le rapport d'erreur est incorrect.\n valeur = %s\n expected =\n%s\n got =\n%s " % (valeur,report,rep) - print msg - self.assert_(valid,msg=msg) - - def test010(self): - """Test de listes de string""" - cata=SIMP(statut='o',typ='TXM',min=1,max=6) - liste=( - ("aa",OK),("aaa",OK), - (("aaaa","aaaaa","axyzaa","bbbbaaa","zzz"),OK), - (("aaaa","aaaa","axyz","bbbb","zzz"),OK), - (("aaaa","axyz","bbbb","zzz"),OK), - ("aaaa",OK),("aaaaa",OK), - ("axyzaa",OK),("bbbbaaa",OK), - ) - self._test(cata,liste) - - def test011(self): - """Test de listes de string avec into""" - cata=SIMP(statut='o',typ='TXM',min=1,max=6,into =( "TUTU","TATA","CCCC")) - liste=( - ("TUTU",OK),("TATA",OK), - (("TUTU","TATA","CCCC"),OK), - (("TUTU","TATA","CCCC","TUTU","TATA","CCCC"),OK), - (("TUTU","TATA","CCCC","TUTU","TATA","CCCC","TUTU","TATA","CCCC"), -"""Mot-clé simple : mcs - !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! - ! Nombre d'arguments de ('TUTU', 'TATA', 'CCCC', 'TUTU', 'TATA', 'CCCC', 'TUTU', ! - ! 'TATA', 'CCCC') incorrect (min = 1, max = 6) ! - !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! -Fin Mot-clé simple : mcs -"""), - (("TUTU","TATA","CCCC","TUTU","TATA",1,"TUTU","TATA","CCCC"), -"""Mot-clé simple : mcs - !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! - ! 1 (de type ) n'est pas d'un type autorisé: ('TXM',) ! - !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! - !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! - ! La valeur : 1 ne fait pas partie des choix possibles ('TUTU', 'TATA', 'CCCC') ! - !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! - !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! - ! Nombre d'arguments de ('TUTU', 'TATA', 'CCCC', 'TUTU', 'TATA', 1, 'TUTU', 'TATA', ! - ! 'CCCC') incorrect (min = 1, max = 6) ! - !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! -Fin Mot-clé simple : mcs -"""), - ) - self._test(cata,liste) - - def test016(self): - """Test de listes d'entiers """ - cata=SIMP(statut='o',typ='I',min=1,max=6) - liste=( ((2,),OK),(None, -"""Mot-clé simple : mcs - !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! - ! Mot-clé : mcs obligatoire non valorisé ! - !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! - !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! - ! None n'est pas une valeur autorisée ! - !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! -Fin Mot-clé simple : mcs -"""), - ((1,3,5),OK), - ((2,4,6),OK), - ((2,4,4),OK), - (myparam((2,4,4)),OK), - (myparam((2,4.5,4)), -"""Mot-clé simple : mcs - !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! - ! 4.5 (de type ) n'est pas d'un type autorisé: ('I',) ! - !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! -Fin Mot-clé simple : mcs -"""), - (myparam((2,myparam(4.5),4)), -"""Mot-clé simple : mcs - !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! - ! 4.5 (de type ) n'est pas d'un type autorisé: ('I',) ! - !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! -Fin Mot-clé simple : mcs -"""), - (param((2,4,4)),OK), - (param((2,4.5,4)), -"""Mot-clé simple : mcs - !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! - ! 4.5 (de type ) n'est pas d'un type autorisé: ('I',) ! - !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! -Fin Mot-clé simple : mcs -"""), - (param((2,param(4.5),4)), -"""Mot-clé simple : mcs - !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! - ! 4.5 (de type ) n'est pas d'un type autorisé: ('I',) ! - !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! -Fin Mot-clé simple : mcs -"""), - ) - self._test(cata,liste) diff --git a/Tests/testelem/testsimp4.py b/Tests/testelem/testsimp4.py deleted file mode 100644 index 40f3c41f..00000000 --- a/Tests/testelem/testsimp4.py +++ /dev/null @@ -1,124 +0,0 @@ -# coding=utf-8 -from Accas import SIMP,ASSD -class maillage(ASSD):pass -class maillage_sdaster(ASSD):pass - -import unittest - -class TestMCSimpCase(unittest.TestCase): - def setUp(self): - self.cata=SIMP(typ='I',statut='o') - - def tearDown(self): - del self.cata - - def test001(self): - cata=SIMP(typ='I',max=5) - o=cata((1,2,'aa','bb',7,'cc'),'mcs1',None) - cr=o.report() - expected_cr="""Mot-clé simple : mcs1 - !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! - ! 'aa' (de type ) n'est pas d'un type autorisé: ('I',) ! - !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! - !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! - ! Nombre d'arguments de (1, 2, 'aa', 'bb', 7, 'cc') incorrect (min = 1, max = 5) ! - !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! -Fin Mot-clé simple : mcs1 -""" - self.assertEqual(str(cr) , expected_cr,msg='Erreur :\n%s\n!=\n%s' % (str(cr),expected_cr)) - - def test002(self): - cata=SIMP(typ='I',max=7,into=(1,2,'aa','bb',7,'cc')) - o=cata((1,2,'aa','bb',7,'cc'),'mcs1',None) - cr=o.report() - expected_cr="""Mot-clé simple : mcs1 - !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! - ! 'aa' (de type ) n'est pas d'un type autorisé: ('I',) ! - !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! -Fin Mot-clé simple : mcs1 -""" - self.assertEqual(str(cr) , expected_cr,msg='Erreur :\n%s\n!=\n%s' % (str(cr),expected_cr)) - - def test003(self): - cata=SIMP(typ='R',max=7,into=(1,2,7)) - o=cata((1,2,7,3,4,5,6),'mcs1',None) - cr=o.report() - expected_cr="""Mot-clé simple : mcs1 - !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! - ! La valeur : 3.0 ne fait pas partie des choix possibles (1, 2, 7) ! - !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! -Fin Mot-clé simple : mcs1 -""" - self.assertEqual(str(cr) , expected_cr,msg='Erreur :\n%s\n!=\n%s' % (str(cr),expected_cr)) - - def test004(self): - cata=SIMP(typ='R',max=7,val_max=6) - o=cata((1,2,7,3,4,5,6),'mcs1',None) - cr=o.report() - expected_cr="""Mot-clé simple : mcs1 - !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! - ! La valeur : 7.0 est en dehors du domaine de validité [ ** , 6 ] ! - !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! -Fin Mot-clé simple : mcs1 -""" - self.assertEqual(str(cr) , expected_cr,msg='Erreur :\n%s\n!=\n%s' % (str(cr),expected_cr)) - - def test005(self): - cata=SIMP(typ='R',max=6,val_max=6) - o=cata((1,2,7,3,4,5,6),'mcs1',None) - cr=o.report() - expected_cr="""Mot-clé simple : mcs1 - !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! - ! La valeur : 7.0 est en dehors du domaine de validité [ ** , 6 ] ! - !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! - !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! - ! Nombre d'arguments de (1.0, 2.0, 7.0, 3.0, 4.0, 5.0, 6.0) incorrect (min = 1, ! - ! max = 6) ! - !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! -Fin Mot-clé simple : mcs1 -""" - self.assertEqual(str(cr) , expected_cr,msg='Erreur :\n%s\n!=\n%s' % (str(cr),expected_cr)) - - def test006(self): - cata=SIMP(typ='R',max=6,val_max=6) - o=cata((1,2,7,"aa",4,"bb",6),'mcs1',None) - cr=o.report() - expected_cr="""Mot-clé simple : mcs1 - !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! - ! 'aa' (de type ) n'est pas d'un type autorisé: ('R',) ! - !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! - !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! - ! La valeur : 7.0 est en dehors du domaine de validité [ ** , 6 ] ! - !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! - !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! - ! Nombre d'arguments de (1.0, 2.0, 7.0, 'aa', 4.0, 'bb', 6.0) incorrect (min = 1, ! - ! max = 6) ! - !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! -Fin Mot-clé simple : mcs1 -""" - self.assertEqual(str(cr) , expected_cr,msg='Erreur :\n%s\n!=\n%s' % (str(cr),expected_cr)) - - def futuretest007(self): - """ - Ce test échoue alors qu'il ne devrait pas. Le parametre de definiton homo - qui vaut 1 par defaut indique que la liste devrait etre homogene en type - ce qui n'est pas le cas. - """ - cata=SIMP(typ=('R','TXM'),max=6,val_max=6) - o=cata((1,2,7,"aa",4,"bb",6),'mcs1',None) - cr=o.report() - expected_cr="""Mot-clé simple : mcs1 - !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! - ! 'aa' n'est pas d'un type autorisé ! - !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! - !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! - ! La valeur : 7 du mot-clé mcs1 est en dehors du domaine de validité [ 6 , 6 ] ! - !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! - !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! - ! Nombre d'arguments de (1, 2, 7, 'aa', 4, 'bb', 6) incorrect pour mcs1 (min = 1, ! - ! max = 6) ! - !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! -Fin Mot-clé simple : mcs1 -""" - self.assertEqual(str(cr) , expected_cr,msg='Erreur :\n%s\n!=\n%s' % (str(cr),expected_cr)) - diff --git a/Tests/testelem/testsimp5.py b/Tests/testelem/testsimp5.py deleted file mode 100644 index 5414c011..00000000 --- a/Tests/testelem/testsimp5.py +++ /dev/null @@ -1,98 +0,0 @@ -# coding=utf-8 -from Accas import SIMP,ASSD -from Extensions.param2 import Variable,cos - -import unittest - -class TestSimpCase(unittest.TestCase): - def setUp(self): - pass - - def tearDown(self): - pass - - def test001(self): - a=Variable("n",25.6) - self.assertEqual(repr(a),"Variable('n',25.6)") - self.assertEqual(str(a),"n") - self.assertEqual(a.eval(),25.6) - b=-a - self.assertEqual(str(b),"-(n)") - self.assertEqual(b.eval(),-25.6) - b=-a*100+3/2 - self.assertEqual(str(b),'((-(n) * 100) + 1)') - self.assertEqual(b.eval(),-2559) - b=a/10 - self.assertEqual(str(b),'(n / 10)') - self.assertEqual(b.eval(),2.56) - c=Variable('q',[1,a,3]) - d=c[1]/3 - self.assertEqual(str(d),'(q[1] / 3)') - self.assertEqual(d.eval(),25.6/3) - f=cos(d) - self.assertEqual(str(f),'cos((q[1] / 3))') - self.assertEqual(f.eval(),-0.628288791022798) - g=a**2 - self.assertEqual(str(g),'(n ** 2)') - self.assertEqual(g.eval(),655.36000000000013) - h=2*Variable("x",2) - g=a**h - self.assertEqual(str(g),'(n ** (2 * x))') - self.assertEqual(g.eval(),429496.72960000008) - - def test003(self): - """ Validation d'un parametre (instance de la classe Variable) - """ - cata=SIMP(statut='o',typ='R',max=3) - liste=((1,1),(Variable('x',(0.,1.)),1), (1.,1),(Variable('x',(0.,1.)),1), (('RI',1,0),0), - (1+0j,0), ("('RI',1,0)",0), ("toto",0), (None,0), - ) - for valeur,valid in liste: - o=cata(valeur,'mcs',None) - #print o.val,o.valeur - msg="erreur sur le test %s %s" % (valeur,valid)+'\n'+str(o.report()) - self.assertEqual(o.isValid(),valid,msg=msg) - - def test004(self): - cata=SIMP(typ='C',statut='o',max=10) - liste=((1,1),("a",0), (1.,1),(('RI',1.,0.),1), (('RI',1,0),1), (1+0j,1), - (('RI',Variable('x',1.),0.),1), - (Variable('x',1.),1), - (Variable('x',1.)+0j,1), - ((Variable('x',1.)+0j,1.,0.,Variable('x',1.+2j),Variable('x',Variable('y',1.)+2j)),1), - ("('RI',1,0)",0), ("toto",0), (None,0), - (Variable('x',(1,2,2+5j)),1), - (Variable('x',(1,2,2+5j,5,6,7,8,9,10,11,12)),0), - (Variable('x',(1,2,2+5j,5,6,Variable('y',1+4j),8,9,10,11,12)),0), - (Variable('x',(1,"aaaa",2+5j,5,6,Variable('y',1+4j),8,9,10,11,12)),0), - (1+Variable('x',1.)*1j,1), - ) - for valeur,valid in liste: - o=cata(valeur,'mcs',None) - self.assertEqual(o.isValid(),valid,"erreur sur le test %s %s" % (valeur,valid)+'\n'+str(o.report())) - if valid: self.assertEqual(o.getValeur(),valeur) - - def test005(self): - t=Variable('t',None) - assert len(t) == 0 - - def test006(self): - cata=SIMP(statut='o',typ='R',val_min=0,val_max=3,max=5) - liste=((1,1),("a",0), (1.,1),(('RI',1.,0.),0), (('RI',1,0),0), (1+0j,0), - (('RI',Variable('x',1.),0.),0), - (Variable('x',1.),1), - (Variable('x',1.)+0j,0), - ((Variable('x',1.)+0j,1.,0.,Variable('x',1.+2j),Variable('x',Variable('y',1.)+2j)),0), - ("('RI',1,0)",0), ("toto",0), (None,0), - (Variable('x',(1,2,2+5j)),0), - (Variable('x',(1,2,2+5j,5,6,7,8,9,10,11,12)),0), - (Variable('x',(1,2,2+5j,5,6,Variable('y',1+4j),8,9,10,11,12)),0), - (Variable('x',(1,"aaaa",2+5j,5,6,Variable('y',1+4j),8,9,10,11,12)),0), - (1+Variable('x',1.)*1j,0), - (Variable('x',4.),0), - (4.,0), - ) - for valeur,valid in liste: - o=cata(valeur,'mcs',None) - self.assertEqual(o.isValid(),valid,"erreur sur le test %s %s" % (valeur,valid)+'\n'+str(o.report())) - if valid: self.assertEqual(o.getValeur(),valeur) diff --git a/Tests/testelem/testvalidator1.py b/Tests/testelem/testvalidator1.py deleted file mode 100644 index 9de2c004..00000000 --- a/Tests/testelem/testvalidator1.py +++ /dev/null @@ -1,215 +0,0 @@ -# coding=utf-8 -from Accas import * - -import unittest - -class myparam: - def __init__(self,valeur): - self.valeur=valeur - def __adapt__(self,protocol): - return protocol.adapt(self.valeur) - -from Noyau.N_VALIDATOR import listProto,TypeProtocol,IntoProtocol -class param: - def __init__(self,valeur): - self.valeur=valeur - -def hasvaleur(obj,protocol,**args): - return protocol.adapt(obj.valeur) - -listProto.register(param,hasvaleur) -TypeProtocol.register(param,hasvaleur) -IntoProtocol.register(param,hasvaleur) -OrdList.register(param,hasvaleur) - -class TestValidCase(unittest.TestCase): - def setUp(self): - pass - - def tearDown(self): - pass - - def _test(self,cata,liste): - for valeur,valid in liste: - o=cata(valeur,'mcs',None) - msg=None - if valid != o.isValid() : - if not valid: - msg="erreur : le mot cle devrait etre invalide. valeur = %s, valid = %s " % (valeur,valid) - else: - msg="erreur : le mot cle devrait etre valide. valeur = %s, valid = %s " % (valeur,valid) + '\n' + str(o.report()) - self.assertEqual(o.isValid(),valid,msg) - if valid: - self.assertEqual(o.getValeur(),valeur) - - def test001(self): - cata=SIMP(typ='TXM',validators=LongStr(3,5)) - liste=(("aa",0),("aaa",1), - ("aaaa",1),("aaaaa",1), - ("axyzaa",0),("bbbbaaa",0), - ) - self._test(cata,liste) - - def test002(self): - cata=SIMP(statut='o',typ='TXM',min=1,max=4,validators=LongStr(3,5)) - liste=( - ("aa",0),("aaa",1), - (("aaaa","aaaaa","axyzaa","bbbbaaa","zzz"),0), - (("aaaa","aaaaa","axyz","bbbb","zzz"),0), - (("aaaa","axyz","bbbb","zzz"),1), - ("aaaa",1),("aaaaa",1), - ("axyzaa",0),("bbbbaaa",0), - (("aaaa",param("axyz"),"bbbb","zzz"),1), - ) - self._test(cata,liste) - - def test003(self): - cata=SIMP(statut='o',typ='I',validators=TypeVal(1)) - liste=( - (1,1),(1.1,0),(1.25,0), - (('RI',0.,1.),0), - ) - self._test(cata,liste) - - def test004(self): - cata=SIMP(statut='o',typ='I',into=(1,2,3,4,5,6),max='**',validators=OrdList("croissant")) - liste=( - (1,1),((1,3),1), - ((3,1),0), - ((1,3,2),0), - ((1.1,2.),0), - (myparam((1.,2.)),0), - (myparam((1,2)),1), - (myparam((1,2,3,4,5)),1), - (myparam((1,2,myparam(3),4,5)),1), - (myparam((1,2,myparam(6),4,5)),0), - (param((1.,2.)),0), - (param((1,2)),1), - (param((1,2,3,4,5)),1), - (param((1,2,myparam(3),4,5)),1), - (param((1,2,param(3),4,5)),1), - (param((1,2,param(6),4,5)),0), - ) - self._test(cata,liste) - - def test005(self): - cata=SIMP(statut='o',typ='I',validators=EnumVal((3,2,4,8,9,15))) - liste=( - (1,0),(9,1),(15,1), - (50,0),(1.25,0), - ) - self._test(cata,liste) - - def test006(self): - cata=SIMP(statut='o',typ='I',max='**',validators=OrdList("croissant")) - liste=( - (1,1),((1,3),1), - ((50,60,701),1), - ((100,50,60,701),0), - ((3,1),0), - ((1,3,2),0), - ((1.1,2.),0), - ) - self._test(cata,liste) - - def test007(self): - cata=SIMP(statut='o',typ='I',min=1,max=4,validators=PairVal()) - liste=( - (2,1),((2,4),1), - (3,0),((3,4),0), - ((2,3),0),((3,5),0), - ((2,4,6,8),1), - ((2,4,6,8,10),0), - ) - self._test(cata,liste) - - def test008(self): - cata=SIMP(statut='o',typ='I',validators=RangeVal(3,15)) - liste=( - (2,0),(4,1), - (16,0),(14,1), - ) - self._test(cata,liste) - - def test009(self): - cata=SIMP(statut='o',typ='I',max='**',validators=CardVal(3,15)) - liste=( - (2,0),((2,4),0), - (3,0),((3,4),0), - ((2,3),0),((3,5),0), - ((2,4,6,8),1), - ((2,4,6,8,10),1), - ) - self._test(cata,liste) - - def test010(self): - cata=SIMP(statut='o',typ='TXM',min=1,max=6,validators=NoRepeat()) - liste=( - ("aa",1),("aaa",1), - (("aaaa","aaaaa","axyzaa","bbbbaaa","zzz"),1), - (("aaaa","aaaa","axyz","bbbb","zzz"),0), - (("aaaa","axyz","bbbb","zzz"),1), - ("aaaa",1),("aaaaa",1), - ("axyzaa",1),("bbbbaaa",1), - (("aaaa",param("aaaaa"),"axyzaa","bbbbaaa","zzz"),1), - (("aaaa",param("aaaa"),"axyzaa","bbbbaaa","zzz"),0), - (("aaaa",myparam("aaaaa"),"axyzaa","bbbbaaa","zzz"),1), - (("aaaa",myparam("aaaa"),"axyzaa","bbbbaaa","zzz"),0), - ) - self._test(cata,liste) - - def test011(self): - cata=SIMP(statut='o',typ='TXM',min=1,max=6,into =( "TUTU","TATA","CCCC"),validators=NoRepeat()) - liste=( - ("TUTU",1),("TATA",1), - (("TUTU","TATA","CCCC"),1), - (("TUTU","TATA","CCCC","TUTU","TATA","CCCC"),0), - (("TUTU","TATA","CCCC","TUTU","TATA","CCCC","TUTU","TATA","CCCC"),0), - ) - self._test(cata,liste) - - def test012(self): - cata=SIMP(statut='o',typ='I',min=1,max=1,into =( 1,2,3),validators=PairVal()) - liste=( - (2,1),(1,0),(3,0),(4,0), - (param(2),1),(param(3),0), - (myparam(2),1),(myparam(3),0), - ) - self._test(cata,liste) - - def test013(self): - cata=SIMP(statut='o',typ='I',min=1,max=1,validators=PairVal()) - liste=( - (2,1),(1,0),(3,0),(4,1), - ) - self._test(cata,liste) - - def test014(self): - cata=SIMP(statut='o',typ='I',min=1,max=6,validators=PairVal()) - liste=( - (2,1),(1,0),(3,0),(4,1), - ((2,4,6,8),1),((2,4,6,8,10,12,14),0), - ((2,4,6,8,7),0),((2,4,6,8,10,12,14,23),0), - ) - self._test(cata,liste) - - def test015(self): - """Test du validateur OU : pas de doublon OU valeur paire """ - cata=SIMP(statut='o',typ='I',min=1,max=6,validators=(NoRepeat(),PairVal())) - liste=( - (2,1),(1,1),(3,1),(4,1), - ((2,4,6,8),1),((2,4,6,8,10,12,14),0), - ((1,2,3,4),1), - ((2,4,6,8,7),1),((2,4,6,8,10,12,14,23),0), - ) - self._test(cata,liste) - - def test016(self): - """Test du validateur ET : pas de doublon ET valeur paire """ - cata=SIMP(statut='o',typ='I',min=1,max=6,validators=[NoRepeat(),PairVal()]) - liste=( (2,1),(None,0),((1,3,5),0), - ((2,4,6),1), - ((1,3,5),0), - ((2,4,4),0), - ) - self._test(cata,liste) diff --git a/Tests/testelem/testvalidator2.py b/Tests/testelem/testvalidator2.py deleted file mode 100644 index f78f8433..00000000 --- a/Tests/testelem/testvalidator2.py +++ /dev/null @@ -1,323 +0,0 @@ -# coding=utf-8 -from Accas import * -from Extensions.param2 import Variable - -import unittest -import compare -OK="""Mot-clé simple : mcs -Fin Mot-clé simple : mcs -""" -from cata5 import entier - -class TestValidCase(unittest.TestCase): - def setUp(self): - pass - - def tearDown(self): - pass - - def _test(self,cata,liste): - for valeur,report in liste: - o=cata(valeur,'mcs',None) - msg="" - rep=str(o.report()) - valid=compare.check(rep,report) - if not valid: - msg="le rapport d'erreur est incorrect.\n valeur = %s\n expected =\n%s\n got =\n%s " % (valeur,report,rep) - self.assert_(valid,msg=msg) - - def test001(self): - """ Validateur LongStr(3,5) """ - cata=SIMP(typ='TXM',validators=LongStr(3,5)) - liste=(("aa", -"""Mot-clé simple : mcs - !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! - ! Mot-clé mcs invalide : 'aa' n'est pas de la bonne longueur ! - ! Critere de validite: longueur de la chaine entre 3 et 5 ! - !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! -Fin Mot-clé simple : mcs -"""),("aaa",OK), - ("aaaa",OK),("aaaaa",OK), - ("axyzaa", -"""Mot-clé simple : mcs - !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! - ! Mot-clé mcs invalide : 'axyzaa' n'est pas de la bonne longueur ! - ! Critere de validite: longueur de la chaine entre 3 et 5 ! - !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! -Fin Mot-clé simple : mcs -"""),("bbbbaaa", -"""Mot-clé simple : mcs - !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! - ! Mot-clé mcs invalide : 'bbbbaaa' n'est pas de la bonne longueur ! - ! Critere de validite: longueur de la chaine entre 3 et 5 ! - !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! -Fin Mot-clé simple : mcs -"""), - (Variable('x',"aaa"),OK), - (Variable('x',"aaaaaaaaaaaa"), -"""Mot-clé simple : mcs - !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! - ! Mot-clé mcs invalide : 'aaaaaaaaaaaa' n'est pas de la bonne longueur ! - ! Critere de validite: longueur de la chaine entre 3 et 5 ! - !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! -Fin Mot-clé simple : mcs -"""), - ) - self._test(cata,liste) - - def test010(self): - cata=SIMP(statut='o',typ='TXM',min=1,max=6,validators=NoRepeat()) - liste=( - ("aa",OK),("aaa",OK), - (("aaaa","aaaaa","axyzaa","bbbbaaa","zzz"),OK), - (("aaaa","aaaa","axyz","bbbb","zzz"), -"""Mot-clé simple : mcs - !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! - ! Mot-clé mcs invalide : aaaa est un doublon ! - ! Critere de validite: : pas de présence de doublon dans la liste ! - !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! -Fin Mot-clé simple : mcs -"""), - (("aaaa","axyz","bbbb","zzz"),OK), - ("aaaa",OK),("aaaaa",OK), - ("axyzaa",OK),("bbbbaaa",OK), - (("aaa",Variable('x',"bbb")),OK), - (("aaa",Variable('x',"aaa")), -"""Mot-clé simple : mcs - !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! - ! Mot-clé mcs invalide : aaa est un doublon ! - ! Critere de validite: : pas de présence de doublon dans la liste ! - !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! -Fin Mot-clé simple : mcs -"""), - (Variable('x',("aaa","bbb")),OK), - (Variable('x',("aaa","bbb","bbb")), -"""Mot-clé simple : mcs - !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! - ! Mot-clé mcs invalide : bbb est un doublon ! - ! Critere de validite: : pas de présence de doublon dans la liste ! - !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! -Fin Mot-clé simple : mcs -"""), - ) - self._test(cata,liste) - - def test011(self): - cata=SIMP(statut='o',typ='TXM',min=1,max=6,into =( "TUTU","TATA","CCCC"),validators=NoRepeat()) - liste=( - ("TUTU",OK),("TATA",OK), - (("TUTU","TATA","CCCC"),OK), - (("TUTU","TATA","CCCC","TUTU","TATA","CCCC"), -"""Mot-clé simple : mcs - !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! - ! Mot-clé mcs invalide : TUTU est un doublon ! - ! Critere de validite: : pas de présence de doublon dans la liste ! - !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! -Fin Mot-clé simple : mcs -"""), - (("TUTU","TATA","CCCC","TUTU","TATA","CCCC","TUTU","TATA","CCCC"), -"""Mot-clé simple : mcs - !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! - ! Nombre d'arguments de ('TUTU', 'TATA', 'CCCC', 'TUTU', 'TATA', 'CCCC', 'TUTU', ! - ! 'TATA', 'CCCC') incorrect (min = 1, max = 6) ! - !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! -Fin Mot-clé simple : mcs -"""), - ) - self._test(cata,liste) - - def test016(self): - """Test du validateur ET : pas de doublon ET valeur paire """ - cata=SIMP(statut='o',typ='I',min=1,max=6,validators=[NoRepeat(),PairVal()]) - liste=( ((2,),OK),(None, -"""Mot-clé simple : mcs - !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! - ! Mot-clé : mcs obligatoire non valorisé ! - !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! - !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! - ! None n'est pas une valeur autorisée ! - !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! -Fin Mot-clé simple : mcs -"""),((1,3,5), -"""Mot-clé simple : mcs - !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! - ! Mot-clé mcs invalide : (1, 3, 5) contient des valeurs non paires ! - ! Critere de validite: : pas de présence de doublon dans la liste ! - ! et valeur paire ! - !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! -Fin Mot-clé simple : mcs -"""), - ((2,4,6),OK), - ((2,4,4), -"""Mot-clé simple : mcs - !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! - ! Mot-clé mcs invalide : 4 est un doublon ! - ! Critere de validite: : pas de présence de doublon dans la liste ! - ! et valeur paire ! - !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! -Fin Mot-clé simple : mcs -"""), - ) - self._test(cata,liste) - - def test017(self): - """Test du validateur NoRepeat avec objet entier """ - cata=SIMP(statut='o',typ='I',min=1,max=6,validators=NoRepeat()) - i=entier() - liste=( (i,OK), - ((i,i),OK), - ((1,i,i),OK), - ((i,1,i,i),OK), - ((1,1,i,i), -"""Mot-clé simple : mcs - !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! - ! Mot-clé mcs invalide : 1 est un doublon ! - ! Critere de validite: : pas de présence de doublon dans la liste ! - !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! -Fin Mot-clé simple : mcs -""" ), - ) - self._test(cata,liste) - - def test018(self): - """Test du validateur OrdList('croissant') avec objet entier """ - cata=SIMP(statut='o',typ='I',min=1,max=6,validators=OrdList('croissant')) - i=entier() - liste=( (i,OK), - ((i,i),OK), - ((1,i,i),OK), - ((i,1,i,i),OK), - ((2,1,i,i), -"""Mot-clé simple : mcs - !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! - ! Mot-clé mcs invalide : (2, 1, , ) n'est pas par ! - ! valeurs croissantes ! - ! Critere de validite: liste croissant ! - !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! -Fin Mot-clé simple : mcs -"""), - ) - self._test(cata,liste) - - def test019(self): - """Test du validateur Compulsory avec objet entier """ - cata=SIMP(statut='o',typ='I',min=1,max=6,validators=Compulsory((5,6,7))) - i=entier() - liste=( ((5,6,7),OK), - ((5,6,7,i),OK), - ((i,5,6,7,i),OK), - ((i,5,7,i), -"""Mot-clé simple : mcs - !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! - ! Mot-clé mcs invalide : (, 5, 7, ) ne contient ! - ! pas les elements obligatoires : [6] ! - ! Critere de validite: valeur (5, 6, 7) obligatoire ! - !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! -Fin Mot-clé simple : mcs -""" ), - ) - self._test(cata,liste) - - def test020(self): - """Test du validateur NoRepeat OU Compulsory avec objet entier """ - cata=SIMP(statut='o',typ='I',min=1,max=6,validators=(NoRepeat(),Compulsory((5,6,7)))) - i=entier() - liste=( ((5,6,7),OK), - ((5,6,7,i),OK), - ((i,5,6,7,i),OK), - ((i,5,7,i), OK ), - ) - self._test(cata,liste) - - def test021(self): - """Test du validateur NoRepeat ET Compulsory avec objet entier """ - cata=SIMP(statut='o',typ='I',min=1,max=6,validators=[NoRepeat(),Compulsory((5,6,7))]) - i=entier() - liste=( ((5,6,7),OK), - ((5,6,7,i),OK), - ((i,5,6,7,i),OK), - ((i,5,7,i), -"""Mot-clé simple : mcs - !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! - ! Mot-clé mcs invalide : (, 5, 7, ) ne contient ! - ! pas les elements obligatoires : [6] ! - ! Critere de validite: : pas de présence de doublon dans la liste ! - ! et valeur (5, 6, 7) obligatoire ! - !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! -Fin Mot-clé simple : mcs -""" ), - ) - self._test(cata,liste) - - def test022(self): - """Test du validateur Compulsory(5,6,7) ET OrdList('croissant') avec objet entier """ - cata=SIMP(statut='o',typ='I',min=1,max=6,validators=[Compulsory((5,6,7)),OrdList('croissant')]) - i=entier() - liste=( ((5,6,7),OK), - ((5,6,7,i),OK), - ((i,5,6,7,i),OK), - ((i,5,7,i), -"""Mot-clé simple : mcs - !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! - ! Mot-clé mcs invalide : (, 5, 7, ) ne contient ! - ! pas les elements obligatoires : [6] ! - ! Critere de validite: valeur (5, 6, 7) obligatoire ! - ! et liste croissant ! - !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! -Fin Mot-clé simple : mcs -""" ), - ((i,5,7,i,6), -"""Mot-clé simple : mcs - !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! - ! Mot-clé mcs invalide : (, 5, 7, , 6) n'est pas ! - ! par valeurs croissantes ! - ! Critere de validite: valeur (5, 6, 7) obligatoire ! - ! et liste croissant ! - !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! -Fin Mot-clé simple : mcs -""" ), - ) - self._test(cata,liste) - - def test023(self): - """Test du validateur Compulsory(5,6,7) ET OrdList('croissant') ET NoRepeat() avec objet entier """ - cata=SIMP(statut='o',typ='I',min=1,max=6,validators=[Compulsory((5,6,7)),OrdList('croissant'),NoRepeat()]) - i=entier() - liste=( ((5,6,7),OK), - ((5,6,7,i),OK), - ((i,5,6,7,i),OK), - ((i,5,7,i), -"""Mot-clé simple : mcs - !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! - ! Mot-clé mcs invalide : (, 5, 7, ) ne contient ! - ! pas les elements obligatoires : [6] ! - ! Critere de validite: valeur (5, 6, 7) obligatoire ! - ! et liste croissant ! - ! et : pas de présence de doublon dans la liste ! - !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! -Fin Mot-clé simple : mcs -""" ), - ((i,5,7,i,6), -"""Mot-clé simple : mcs - !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! - ! Mot-clé mcs invalide : (, 5, 7, , 6) n'est pas ! - ! par valeurs croissantes ! - ! Critere de validite: valeur (5, 6, 7) obligatoire ! - ! et liste croissant ! - ! et : pas de présence de doublon dans la liste ! - !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! -Fin Mot-clé simple : mcs -""" ), - ((i,5,i,6,7,7), -"""Mot-clé simple : mcs - !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! - ! Mot-clé mcs invalide : 7 est un doublon ! - ! Critere de validite: valeur (5, 6, 7) obligatoire ! - ! et liste croissant ! - ! et : pas de présence de doublon dans la liste ! - !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! -Fin Mot-clé simple : mcs -""" ), - ((i,5,6,7,i,8),OK), - ) - self._test(cata,liste) diff --git a/Tests/testelem/toto.comm b/Tests/testelem/toto.comm deleted file mode 100644 index 99c02a4b..00000000 --- a/Tests/testelem/toto.comm +++ /dev/null @@ -1,3 +0,0 @@ -DEBUT() -MA=LIRE_MAILLAGE() -FIN() diff --git a/Tests/testelem7/testaz76.py b/Tests/testelem7/testaz76.py deleted file mode 100644 index 1a9aecf4..00000000 --- a/Tests/testelem7/testaz76.py +++ /dev/null @@ -1,399 +0,0 @@ -# coding=utf-8 - -import os -import unittest -import difflib -import compare - -import prefs -from InterfaceTK import appli - -def add_param(j,pos,nom,valeur): - co=j.addEntite("PARAMETRE",pos) - co.setNom(nom) - co.set_valeur(valeur) - return co - -def add_mcsimp(obj,nom,valeur): - mcs=obj.getChild(nom,restreint='oui') - if mcs is None: - pos=obj.getIndexChild(nom) - mcs=obj.addEntite(nom,pos) - mcs.set_valeur(mcs.evalVal(valeur)) - return mcs - -def cdiff(text1,text2): - return " ".join(difflib.context_diff(text1.splitlines(1),text2.splitlines(1))) - -class TestCase(unittest.TestCase): - def setUp(self): - pass - - def tearDown(self): - CONTEXT.unsetCurrentStep() - - def test000(self): - """ Test de construction du fichier de commandes az.comm de zero""" - - app=appli.STANDALONE(version='v7') - j=app.newJDC() -# commande DEBUT - co=j.addEntite("DEBUT",0) -# commande FIN - co=j.addEntite("FIN",1) -# parametres - pos=0 - pos=pos+1 - co=add_param(j,pos,"P1","9.8") - pos=pos+1 - co=add_param(j,pos,"P2","8.8") - pos=pos+1 - co=add_param(j,pos,"P3","7") - pos=pos+1 - co=add_param(j,pos,"P5","P3*P1") - pos=pos+1 - co=add_param(j,pos,"P6","P1-3") - pos=pos+1 - co=add_param(j,pos,"P4","[2,3,4]") -# commentaire - pos=pos+1 - co=j.addEntite("COMMENTAIRE",pos) - co.set_valeur("Pas trouve shellpanel") -# commande LIRE_MAILLAGE - pos=pos+1 - co=j.addEntite("LIRE_MAILLAGE",pos) - test,mess=co.nommeSd("MAILLA2") - mcs=co.addEntite("UNITE") - valeur=mcs.evalVal("P4[1]") - test=mcs.set_valeur(valeur) -# formule - pos=pos+1 - co=j.addEntite("FORMULE",pos) - co.updateFormulePython(("aaa","REEL","a+z","(a,z)")) -# commande LIRE_MAILLAGE - pos=pos+1 - ma=co=j.addEntite("LIRE_MAILLAGE",pos) - test,mess=co.nommeSd("MAIL") - mcs=co.addEntite("UNITE") - valeur,validite=mcs.evalValeur("P3") - test=mcs.set_valeur(valeur) -# - pos=pos+1 - co=j.addEntite("COMMENTAIRE",pos) - co.set_valeur(" 'LIRE_MAILLAGE', 'UNITE' --> uniquebasepanel") -# formule - pos=pos+1 - co=j.addEntite("FORMULE",pos) - co.updateFormulePython(("az","REEL","aaaaa","(ae,inst)")) -# commande AFFE_MODELE - pos=pos+1 - co=j.addEntite("AFFE_MODELE",pos) - mcs=co.getChild("MAILLAGE") - valeur,validite=mcs.evalValeur("MAIL") - assert valeur == ma.sd - test=mcs.set_valeur(valeur) - assert valeur == co["MAILLAGE"] - mcf=co.addEntite("AFFE") - mcs=mcf[0].getChild("PHENOMENE") - valeur=mcs.evalValItem('MECANIQUE') - assert valeur=='MECANIQUE',str(valeur) - test=mcs.set_valeur(valeur) - assert mcf["PHENOMENE"] == 'MECANIQUE' - mcs=mcf[0].getChild("b_mecanique").getChild("MODELISATION") - mcs.set_valeur(mcs.evalValItem('DIS_T')) - assert mcf["MODELISATION"] == 'DIS_T' - mcs=add_mcsimp(mcf[0],"GROUP_MA",('RESSORT','eee',)) - - mcf=co.addEntite("AFFE") - mcs=mcf[1].getChild("PHENOMENE") - mcs.set_valeur(mcs.evalValItem('MECANIQUE')) - mcs=mcf[1].getChild("b_mecanique").getChild("MODELISATION") - mcs.set_valeur(mcs.evalValItem('DIS_T')) - mcs=add_mcsimp(mcf[1],"GROUP_MA",'MASSES') - - mcf=co.addEntite("AFFE") - mcs=mcf[2].getChild("PHENOMENE") - mcs.set_valeur(mcs.evalValItem('ACOUSTIQUE')) - mcs=mcf[2].getChild("b_acoustique").getChild("MODELISATION") - mcs.set_valeur(mcs.evalValItem('PLAN')) - #mcs=add_mcsimp(mcf[2],"GROUP_NO",'GNP3,GNP5,GNP6,GNP7,GNP8,GNP9,GNP10,GNP11,GNP12') - mcs=add_mcsimp(mcf[2],"GROUP_NO","'GNP3','GNP5','GNP6','GNP7','GNP8','GNP9','GNP10','GNP11','GNP12'") - - co.nommeSd("AFFE1") -# commande AFFE_MODELE - pos=pos+1 - co=j.addEntite("AFFE_MODELE",pos) - mcs=co.getChild("MAILLAGE") - mcs.set_valeur(mcs.evalVal("MAIL")) - - mcf=co.addEntite("AFFE") - mcs=mcf[0].getChild("PHENOMENE") - valeur=mcs.evalValItem('MECANIQUE') - test=mcs.set_valeur(valeur) - mcs=mcf[0].getChild("b_mecanique").getChild("MODELISATION") - mcs.set_valeur(mcs.evalValItem('DIS_T')) - mcs=add_mcsimp(mcf[0],"GROUP_MA",'RESSORT') - - mcf=co.addEntite("AFFE") - mcs=mcf[1].getChild("PHENOMENE") - mcs.set_valeur(mcs.evalValItem('MECANIQUE')) - mcs=mcf[1].getChild("b_mecanique").getChild("MODELISATION") - mcs.set_valeur(mcs.evalValItem('DIS_T')) - mcs=add_mcsimp(mcf[1],"GROUP_MA",'MASSES') - - mcf=co.addEntite("AFFE") - mcs=mcf[2].getChild("PHENOMENE") - mcs.set_valeur(mcs.evalValItem('THERMIQUE')) - mcs=mcf[2].getChild("b_thermique").getChild("MODELISATION") - mcs.set_valeur(mcs.evalValItem('COQUE')) - mcs=add_mcsimp(mcf[2],"TOUT",'OUI') - - co.nommeSd("MOD") -#CARA=AFFE_CARA_ELEM(MODELE=MOD, -# POUTRE=_F(GROUP_MA='MA', -# SECTION='CERCLE', -# CARA='R', -# VALE=(3.0,P6,),),); - pos=pos+1 - co=j.addEntite("AFFE_CARA_ELEM",pos) - mcs=co.getChild("MODELE") - mcs.set_valeur(mcs.evalVal("MOD")) - mcf=co.addEntite("POUTRE") - mcs=mcf[0].getChild("SECTION") - mcs.set_valeur(mcs.evalVal('CERCLE')) - assert mcf[0]["SECTION"] == 'CERCLE' - mcs=add_mcsimp(mcf[0],"GROUP_MA",'MA') - mcs=mcf[0].getChild("b_cercle").getChild("b_constant").getChild("CARA") - mcs.set_valeur(mcs.evalVal('R')) - mcs=mcf[0].getChild("b_cercle").getChild("b_constant").getChild("VALE") - mcs.set_valeur(mcs.evalVal('3.0,P6')) - co.nommeSd("CARA") -# commentaire - pos=pos+1 - co=j.addEntite("COMMENTAIRE",pos) - text=""" 'AFFE_MODELE', 'MAILLAGE' --> uniqueassdpanel - AFFE_MODELE', 'AFFE', 'GROUP_MA' --> plusieursbasepanel - 'AFFE_MODELE', 'AFFE', 'PHENOMENE' --> uniqueintopanel - 'AFFE_MODELE', 'AFFE', 'b_mecanique'--> plusieursintopanel""" - co.set_valeur(text) -#F1=DEFI_FONCTION(NOM_PARA='DX', -# VALE=(5.0,3.0,P4[1],P3,),); - pos=pos+1 - co=j.addEntite("DEFI_FONCTION",pos) - mcs=co.getChild("NOM_PARA") - mcs.set_valeur(mcs.evalVal("DX")) - mcs=co.addEntite("VALE") - mcs.set_valeur(mcs.evalVal("5.0,3.0,P4[1],P3")) - co.nommeSd("F1") -#F3=DEFI_FONCTION(NOM_PARA='DRX', -# VALE_C=(5.0,7.0,9.0,9.0,8.0,7.0,),); - pos=pos+1 - co=j.addEntite("DEFI_FONCTION",pos) - mcs=co.getChild("NOM_PARA") - mcs.set_valeur(mcs.evalVal("DRX")) - mcs=co.addEntite("VALE_C") - mcs.set_valeur(mcs.evalVal("5.0,7.0,9.0,9.0,8.0,7.0")) - co.nommeSd("F3") -# commentaire - pos=pos+1 - co=j.addEntite("COMMENTAIRE",pos) - co.set_valeur(" 'DEFI_FONCTION', 'VALE' --> fonctionpanel ") -#MATER2=DEFI_MATERIAU(ELAS=_F(E=100000000000.0, -# NU=0.0,), -# ECRO_ASYM_LINE=_F(DC_SIGM_EPSI=0.0, -# SY_C=200000000.0, -# DT_SIGM_EPSI=0.0, -# SY_T=50000000.0,),); - pos=pos+1 - co=j.addEntite("DEFI_MATERIAU",pos) - mcf=co.addEntite("ELAS") - mcs=mcf[0].getChild("E") - mcs.set_valeur(mcs.evalVal("100000000000.0")) - mcs=mcf[0].getChild("NU") - mcs.set_valeur(mcs.evalVal("0.0")) - mcf=co.addEntite("ECRO_ASYM_LINE") - mcs=mcf[0].getChild("DC_SIGM_EPSI") - mcs.set_valeur(mcs.evalVal("0.0")) - mcs=mcf[0].getChild("DT_SIGM_EPSI") - mcs.set_valeur(mcs.evalVal("0.0")) - mcs=mcf[0].getChild("SY_C") - mcs.set_valeur(mcs.evalVal("200000000.0")) - mcs=mcf[0].getChild("SY_T") - mcs.set_valeur(mcs.evalVal("50000000.0")) - co.nommeSd("MATER2") -#PS1=DEFI_PARA_SENSI(VALE=1.0,); -#PS2=DEFI_PARA_SENSI(VALE=1.0,); -#PS3=DEFI_PARA_SENSI(VALE=1.0,); - pos=pos+1 - co=j.addEntite("DEFI_PARA_SENSI",pos) - mcs=co.getChild("VALE") - mcs.set_valeur(mcs.evalVal("1.0")) - co.nommeSd("PS1") - pos=pos+1 - co=j.addEntite("DEFI_PARA_SENSI",pos) - mcs=co.getChild("VALE") - mcs.set_valeur(mcs.evalVal("1.0")) - co.nommeSd("PS2") - pos=pos+1 - co=j.addEntite("DEFI_PARA_SENSI",pos) - mcs=co.getChild("VALE") - mcs.set_valeur(mcs.evalVal("1.0")) - co.nommeSd("PS3") -#CHMAT2=AFFE_MATERIAU(MAILLAGE=MAIL, -# AFFE=_F(TOUT='OUI', -# MATER=MATER2,),); - pos=pos+1 - co=j.addEntite("AFFE_MATERIAU",pos) - add_mcsimp(co,"MAILLAGE","MAIL") - mcf=co.getChild("AFFE") - add_mcsimp(mcf[0],"TOUT","OUI") - add_mcsimp(mcf[0],"MATER","MATER2") - co.nommeSd("CHMAT2") -#AAAZ=AFFE_CHAR_THER(MODELE=AFFE1, -# TEMP_IMPO=_F(TOUT='OUI', -# TEMP=0.0,),); - pos=pos+1 - co=j.addEntite("AFFE_CHAR_THER",pos) - add_mcsimp(co,"MODELE","AFFE1") - mcf=co.addEntite("TEMP_IMPO") - add_mcsimp(mcf[0],"TOUT","OUI") - add_mcsimp(mcf[0],"TEMP","0.0") - co.nommeSd("AAAZ") -#TH1=THER_LINEAIRE(MODELE=AFFE1, -# CHAM_MATER=CHMAT2, -# EXCIT=_F(CHARGE=AAAZ,), -# SENSIBILITE=(PS1,PS2,),); - pos=pos+1 - co=j.addEntite("THER_LINEAIRE",pos) - add_mcsimp(co,"MODELE","AFFE1") - add_mcsimp(co,"CHAM_MATER","CHMAT2") - mcf=co.getChild("EXCIT") - add_mcsimp(mcf[0],"CHARGE","AAAZ") - add_mcsimp(co,"SENSIBILITE","PS1,PS2") - co.nommeSd("TH1") -# commentaire - pos=pos+1 - co=j.addEntite("COMMENTAIRE",pos) - co.set_valeur(" 'THER_LINEAIRE', 'SENSIBILITE' --> plusieursassdpanel") -#ACA1=AFFE_CHAR_ACOU(MODELE=AFFE1, -# PRES_IMPO=_F(TOUT='OUI', -# PRES=('RI',3.0,3.0,),),); - pos=pos+1 - co=j.addEntite("AFFE_CHAR_ACOU",pos) - add_mcsimp(co,"MODELE","AFFE1") - mcf=co.addEntite("PRES_IMPO") - add_mcsimp(mcf[0],"TOUT","OUI") - add_mcsimp(mcf[0],"PRES","'RI',3.0,3.0") - co.nommeSd("ACA1") -# commentaire - pos=pos+1 - co=j.addEntite("COMMENTAIRE",pos) - co.set_valeur(" 'AFFE_CHAR_ACOU', 'PRES_IMPO', 'PRES' --> uniquecomppanel") - -# 'AFFE_CHAR_ACOU', 'PRES_IMPO', 'PRES' --> uniquecomppanel - -#MACRO_MATR_ASSE(MODELE=AFFE1, -# NUME_DDL=CO('DDL1'), -# MATR_ASSE=_F(MATRICE=CO('MAT1'), -# OPTION='RIGI_THER',),); - pos=pos+1 - co=j.addEntite("MACRO_MATR_ASSE",pos) - add_mcsimp(co,"MODELE","AFFE1") - mcs=co.getChild("NUME_DDL") - mcs.set_valeur_co('DDL1') - mcf=co.getChild("MATR_ASSE") - add_mcsimp(mcf[0],"OPTION","RIGI_THER") - mcs=mcf[0].getChild("MATRICE") - mcs.set_valeur_co('MAT1') -# commentaire - pos=pos+1 - co=j.addEntite("COMMENTAIRE",pos) - co.set_valeur(" 'MACRO_MATR_ASSE', 'MATR_ASSE', 'MATRICE' --> uniquesdcopanel") - - assert j.isValid(),j.report() - - text1=app.get_text_JDC(j,'python') - file=os.path.join(prefs.INSTALLDIR,"Tests/testelem/az.comm") - f=open(file) - text2=f.read() - f.close() - assert text1 == text2 , cdiff(text1,text2) - - def test001(self): - """ Test de construction d'un fichier de commandes avec DEFI_LIST_REEL, fonction et parametre de zero""" - - app=appli.STANDALONE(version='v7') - j=app.newJDC() -# commande DEBUT - co=j.addEntite("DEBUT",0) -# commande FIN - co=j.addEntite("FIN",1) -#parametre - pos=0 - pos=pos+1 - co=add_param(j,pos,"P1","9.8") - pos=pos+1 - co=add_param(j,pos,"P2","sin(P1)") -# formule - pos=pos+1 - co=j.addEntite("FORMULE",pos) - co.updateFormulePython(("aaa","REEL","a+z","(a,z)")) -#parametre de formule - pos=pos+1 - co=add_param(j,pos,"P3","aaa(P1,2.)") -#commande defi_list_reel - pos=pos+1 - co=j.addEntite("DEFI_LIST_REEL",pos) - add_mcsimp(co,"VALE","1.,2.,3.") - co.nommeSd("LI1") -#commande defi_list_reel - pos=pos+1 - co=j.addEntite("DEFI_LIST_REEL",pos) - add_mcsimp(co,"VALE","sin(1.)") - co.nommeSd("LI2") -#commande defi_list_reel - pos=pos+1 - co=j.addEntite("DEFI_LIST_REEL",pos) - add_mcsimp(co,"VALE","aaa(1.,2.)") - co.nommeSd("LI3") -#commande defi_list_reel - pos=pos+1 - co=j.addEntite("DEFI_LIST_REEL",pos) - add_mcsimp(co,"VALE","sin(1.,2)") - co.nommeSd("LI4") -#commande defi_list_reel - pos=pos+1 - co=j.addEntite("DEFI_LIST_REEL",pos) - add_mcsimp(co,"VALE","aaa(1.)") - co.nommeSd("LI5") -#commande defi_list_reel - pos=pos+1 - co=j.addEntite("DEFI_LIST_REEL",pos) - add_mcsimp(co,"VALE","1,sin(1.),2") - co.nommeSd("LI6") - - expected="""DEBUT CR validation : SansNom - Etape : DEFI_LIST_REEL ligne : ... - !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! - ! Concept retourné non défini ! - !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! - Mot-clé simple : VALE - !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! - ! 'sin(1.,2)' (de type ) n'est pas d'un type autorisé: ('R',) ! - !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! - Fin Mot-clé simple : VALE - Fin Etape : DEFI_LIST_REEL - Etape : DEFI_LIST_REEL ligne : ... - !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! - ! Concept retourné non défini ! - !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! - Mot-clé simple : VALE - !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! - ! 'aaa(1.)' (de type ) n'est pas d'un type autorisé: ('R',) ! - !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! - Fin Mot-clé simple : VALE - Fin Etape : DEFI_LIST_REEL -FIN CR validation :SansNom -""" - msg=str( j.report()) - assert compare.check(expected,msg),cdiff(expected,msg) diff --git a/Tests/testihm/common.py b/Tests/testihm/common.py deleted file mode 100644 index 87f8467e..00000000 --- a/Tests/testihm/common.py +++ /dev/null @@ -1,204 +0,0 @@ -# -*- coding: utf-8 -*- - -from tkMessageBox import showinfo -root=None -jdcdisplay=None - -class UnKnownNode(Exception):pass - -def init_common(r,j): - global root,jdcdisplay - root=r - jdcdisplay=j - -def KP_return(): - root.event_generate("") - root.update() - -def delete_node(panel): - panel.node.delete() - -def unComment_command(panel): - panel.bouton_unc.invoke() - root.update() - panel=jdcdisplay.panel_courant - return panel - -def comment_command(panel): - panel.nb.selectpage('Commentaire') - panel.comment_commande() - root.update() - panel=jdcdisplay.panel_courant - return panel - -def create_mocle(nom,panel): - panel.nb.selectpage('Mocles') - panel.Liste.afficheMot(nom) - root.update() - label=panel.Liste.dico_labels[nom] - label.event_generate("") - root.event_generate("") - root.update() - return jdcdisplay.panel_courant - -def change_commandcomm(text,panel): - panel.widget_text.setvalue(text) - root.update() - panel.bouton_val.invoke() - return panel - -def create_command(nom,panel): - panel.nb.selectpage('Commande') - root.update() - panel.command_entry.setentry(nom) - panel.command_entry.component('entry').focus_set() - root.event_generate("") - root.update() - label=panel.liste_command.dico_labels[nom] - label.event_generate("") - label.event_generate("") - #root.event_generate("") - root.update() - panel=jdcdisplay.panel_courant - return panel - -def create_comment(text,panel): - panel.nb.selectpage('Commentaire') - panel.ajout_commentaire() - root.update() - panel=jdcdisplay.panel_courant - panel.widget_text.setvalue(text) - root.update() - panel.bouton_val.invoke() - #panel.change_valeur() - return panel - -def create_param(nom,valeur,panel): - panel.nb.selectpage('Commentaire') - panel.ajout_parametre() - root.update() - panel=jdcdisplay.panel_courant - if nom: - panel.entry_nom.delete(0,"end") - panel.entry_nom.insert(0,nom) - panel.entry_nom.event_generate("") - panel.entry_val.delete(0,"end") - panel.entry_val.insert(0,valeur) - panel.entry_val.event_generate("") - panel.bouton_val.invoke() - root.update() - return panel - -def create_formule(nom,args,expr,panel): - panel=create_command("FORMULE",panel) - panel.entry_nom.delete(0,"end") - panel.entry_nom.insert(0,nom) - panel.entry_nom.event_generate("") - panel.entry_arg.delete(0,"end") - panel.entry_arg.insert(0,args) - panel.entry_arg.event_generate("") - panel.entry_exp.delete(0,"end") - panel.entry_exp.insert(0,expr) - panel.entry_exp.event_generate("") - panel.bouton_val.invoke() - root.update() - return panel - -def nomme_concept(nom,panel): - panel.nb.selectpage('Concept') - root.update() - panel._any.delete(0,"end") - panel._any.insert(0,nom) - panel.but_ok.invoke() - root.update() - return jdcdisplay.panel_courant - -def select_mcf(nom,ind,node): - panel=select_child(nom,node) - parent=panel.node - parent.expand() - parent.select_next(ind) - panel=jdcdisplay.panel_courant - panel.node.expand() - return panel - -def select_child(nom,node): - """node est le parent dont on veut le fils nom""" - for n in node.children: - if n.item.nom == nom: - n.select() - root.update() - panel= jdcdisplay.panel_courant - panel.node.expand() - return panel - raise UnKnownNode(nom) - -def select_node(node): - node.select() - node.expand() - root.update() - return jdcdisplay.panel_courant - -def choose_valeur(valeur,panel): - panel.Liste_choix.afficheMot(valeur) - root.update() - label=panel.Liste_choix.dico_labels[valeur] - label.event_generate("") - label.event_generate("") - root.update() - -def choose_sdco(valeur,panel): - i = list(panel.listbox.get(0, 'end')).index(valeur) - panel.listbox.component("listbox").selection_set(i) - panel.listbox.component("listbox").focus_set() - panel.listbox.component("listbox").event_generate("") - root.update() - -def choose_assd(valeur,panel): - i = list(panel.listbox.get(0, 'end')).index(valeur) - panel.listbox.component("listbox").selection_set(i) - panel.but_val.invoke() - root.update() - -def set_valeur(valeur,panel): - panel.entry.delete(0,"end") - panel.entry.insert(0,valeur) - panel.entry.event_generate("") - root.update() - -def set_sdco(valeur,panel): - panel.entry_co.delete(0,"end") - panel.entry_co.insert(0,valeur) - panel.entry_co.event_generate("") - root.update() - -def set_complexe(valeur,panel): - panel.entry3.setentry(valeur) - panel.entry3.component('entry').focus_set() - panel.entry3.event_generate("") - root.update() - -def add_valeur_into(valeur,panel): - label=panel.Liste_choix.dico_labels[valeur] - panel.Liste_choix.afficheMot(valeur) - root.update() - label.event_generate("<1>") - panel.bouton_add.invoke() - root.update() - -def add_valeur(valeur,panel): - panel.entry.delete(0,"end") - panel.entry.insert(0,valeur) - panel.entry.event_generate("") - root.update() - -def valider_valeur(panel): - panel.bouton_accepter.invoke() - root.update() - -def copier_coller(): - root.event_generate("") - root.event_generate("") - root.update() - return jdcdisplay.panel_courant - diff --git a/Tests/testihm/testihm1.py b/Tests/testihm/testihm1.py deleted file mode 100644 index 9a9c4eb1..00000000 --- a/Tests/testihm/testihm1.py +++ /dev/null @@ -1,337 +0,0 @@ -# -*- coding: utf-8 -*- -# Modules Python -import os -import unittest -import difflib -import compare -import sys -import Tkinter - -# Modules Eficas -import prefs -from Editeur import session -from InterfaceTK import eficas_go -from InterfaceTK import splash -from InterfaceTK import eficas -from InterfaceTK import images -from common import * - -version='v8' - -class TestCase(unittest.TestCase): - def setUp(self): - self.root = Tkinter.Tk() - images.update_cache() - # Analyse des arguments de la ligne de commande - options=session.parse([]) - options.cata=version - pass - - def tearDown(self): - self.root.destroy() - init_common(None,None) - pass - - def test000(self): - root=self.root - code="ASTER" - splash.init_splash(root,code=code,titre="Lancement d'EFICAS pour %s" %code) - splash._splash.configure(text="Chargement d'EFICAS en cours.\n Veuillez patienter ...") - app=eficas.EFICAS(root,code=code) - j=app.bureau.newJDC() - jdcdisplay=app.bureau.JDCDisplay_courant - init_common(root,jdcdisplay) - - # commande DEBUT - co=j.addEntite("DEBUT",0) - # commande FIN - co=j.addEntite("FIN",1) - - jdctree=jdcdisplay.tree.tree.children[0] - panel=select_child("DEBUT",jdctree) - - panel=create_param("P1",9.8,panel) - panel=create_param("P2",8.8,panel) - panel=create_param("P3",7,panel) - panel=create_param("P4","[2,3,4]",panel) - panel=create_param("P5","P3*P1",panel) - panel=create_param(None,"P1-3",panel) - panel=create_comment("Pas trouve shellpanel",panel) - - #commnde LIRE_MAILLAGE - panel=create_command("LIRE_MAILLAGE",panel) - command=panel.node - panel=nomme_concept("MAILLA2",panel) - panel=select_node(command) - panel=create_mocle("UNITE",panel) - panel=set_valeur("P4[1]",panel) - command.collapse() - panel=select_node(command) - #FORMULE - panel=create_formule("az","a,z","a+z",panel) - #commande AFFE_MODELE - panel=create_command("AFFE_MODELE",panel) - command=panel.node - select_child("MAILLAGE",command) - panel=select_node(command) - panel=create_mocle("AFFE",panel) - parent=panel.node - panel=select_child("PHENOMENE",parent) - choose_valeur("MECANIQUE",panel) - panel=select_child("b_mecanique",parent) - panel=select_child("MODELISATION",panel.node) - add_valeur_into("3D",panel) - add_valeur_into("3D_FLUIDE",panel) - valider_valeur(panel) - panel=select_node(parent) - panel=create_mocle("TOUT",panel) - choose_valeur("OUI",panel) - panel=select_node(command) - panel=nomme_concept("MO",panel) - command.collapse() - #fin commande AFFE_MODELE - panel=copier_coller() - command=panel.node - panel=create_mocle("AFFE",panel) - panel=select_node(command) - panel=create_mocle("AFFE",panel) - panel=select_mcf("AFFE",1,command) - parent=panel.node - panel=create_mocle("GROUP_NO",panel) - add_valeur("'GNP3','GNP5','GNP6','GNP7','GNP8','GNP9','GNP10','GNP11','GNP12'",panel) - valider_valeur(panel) - panel=select_child("PHENOMENE",parent) - choose_valeur("ACOUSTIQUE",panel) - panel=select_child("b_acoustique",parent) - panel=select_child("MODELISATION",panel.node) - add_valeur_into("PLAN",panel) - valider_valeur(panel) - - panel=select_mcf("AFFE",2,command) - parent=panel.node - panel=create_mocle("GROUP_MA",panel) - add_valeur("MASSES",panel) - valider_valeur(panel) - panel=select_child("PHENOMENE",parent) - choose_valeur("THERMIQUE",panel) - panel=select_child("b_thermique",parent) - panel=select_child("MODELISATION",panel.node) - add_valeur_into("COQUE",panel) - valider_valeur(panel) - - panel=select_node(command) - panel=nomme_concept("AFFE1",panel) - command.collapse() - #fin commande AFFE_MODELE - #commande AFFE_CARA_ELEM - panel=create_command("AFFE_CARA_ELEM",panel) - command=panel.node - panel=select_node(command) - panel=create_mocle("POUTRE",panel) - parent=panel.node - panel=select_child("SECTION",parent) - choose_valeur("CERCLE",panel) - panel=select_child("b_cercle",parent) - panel=select_child("b_constant",panel.node) - p=panel.node - panel=select_child("CARA",p) - add_valeur_into("R",panel) - add_valeur_into("EP",panel) - valider_valeur(panel) - panel=select_child("VALE",p) - add_valeur("1,2",panel) - valider_valeur(panel) - panel=select_node(parent) - panel=create_mocle("GROUP_MA",panel) - add_valeur("GR1,GR2",panel) - valider_valeur(panel) - panel=select_child("MODELE",command) - choose_assd("MO",panel) - panel=select_node(command) - panel=nomme_concept("CARA",panel) - command.collapse() - #fin commande AFFE_CARA_ELEM - panel=create_command("DEFI_FONCTION",panel) - command=panel.node - panel=create_mocle("VALE",panel) - add_valeur("5.0,3.0",panel) - add_valeur("P4[1],P3",panel) - valider_valeur(panel) - panel=select_child("NOM_PARA",command) - choose_valeur("DX",panel) - panel=select_node(command) - panel=nomme_concept("F1",panel) - command.collapse() - #fin DEFI_FONCTION - panel=create_command("DEFI_FONCTION",panel) - command=panel.node - panel=create_mocle("VALE_C",panel) - add_valeur("5.0,7.0,9.0",panel) - add_valeur("9.0,8.0,7.0",panel) - valider_valeur(panel) - panel=select_child("NOM_PARA",command) - choose_valeur("DRX",panel) - panel=select_node(command) - panel=nomme_concept("F3",panel) - command.collapse() - #fin DEFI_FONCTION -#MATER2=DEFI_MATERIAU(ELAS=_F(E=100000000000.0, -# NU=0.0,), -# ECRO_ASYM_LINE=_F(DC_SIGM_EPSI=0.0, -# SY_C=200000000.0, -# DT_SIGM_EPSI=0.0, -# SY_T=50000000.0,),); - - panel=create_command("DEFI_MATERIAU",panel) - command=panel.node - panel=create_mocle("ELAS",panel) - p=panel.node - panel=select_child("E",p) - set_valeur("100000000000.0",panel) - panel=select_child("NU",p) - set_valeur("0.0",panel) - panel=select_node(command) - panel=create_mocle("ECRO_ASYM_LINE",panel) - p=panel.node - panel=select_child("DC_SIGM_EPSI",p) - set_valeur("0.0",panel) - panel=select_child("SY_C",p) - set_valeur("200000000.0",panel) - panel=select_child("DT_SIGM_EPSI",p) - set_valeur("0.0",panel) - panel=select_child("SY_T",p) - set_valeur("50000000.0",panel) - panel=select_node(command) - panel=nomme_concept("MATER2",panel) - command.collapse() - #fin DEFI_MATERIAU - #PS1=DEFI_PARA_SENSI(VALE=1.0,); - #PS2=DEFI_PARA_SENSI(VALE=1.0,); - #PS3=DEFI_PARA_SENSI(VALE=1.0,); - panel=create_command("DEFI_PARA_SENSI",panel) - command=panel.node - panel=select_child("VALE",command) - set_valeur("1.0",panel) - panel=select_node(command) - panel=nomme_concept("PS1",panel) - command.collapse() - panel=create_command("DEFI_PARA_SENSI",panel) - command=panel.node - panel=select_child("VALE",command) - set_valeur("1.0",panel) - panel=select_node(command) - panel=nomme_concept("PS2",panel) - command.collapse() - panel=create_command("DEFI_PARA_SENSI",panel) - command=panel.node - panel=select_child("VALE",command) - set_valeur("1.0",panel) - panel=select_node(command) - panel=nomme_concept("PS3",panel) - command.collapse() -#CHMAT2=AFFE_MATERIAU(MAILLAGE=MAIL, -# AFFE=_F(TOUT='OUI', -# MATER=MATER2,),); - panel=create_command("AFFE_MATERIAU",panel) - command=panel.node - panel=select_child("MAILLAGE",command) - panel=select_child("AFFE",command) - affe=panel.node - panel=create_mocle("TOUT",panel) - choose_valeur("OUI",panel) - panel=select_child("MATER",affe) - add_valeur_into("MATER2",panel) - valider_valeur(panel) - panel=select_node(command) - panel=nomme_concept("CHMAT2",panel) - command.collapse() -#AAAZ=AFFE_CHAR_THER(MODELE=AFFE1, -# TEMP_IMPO=_F(TOUT='OUI', -# TEMP=0.0,),); - panel=create_command("AFFE_CHAR_THER",panel) - command=panel.node - panel=create_mocle("TEMP_IMPO",panel) - temp=panel.node - panel=create_mocle("TOUT",panel) - choose_valeur("OUI",panel) - panel=select_node(temp) - panel=create_mocle("TEMP",panel) - panel=set_valeur("0.0",panel) - panel=select_child("MODELE",command) - choose_assd("AFFE1",panel) - panel=select_node(command) - panel=nomme_concept("AAAZ",panel) - command.collapse() -#TH1=THER_LINEAIRE(MODELE=AFFE1, -# CHAM_MATER=CHMAT2, -# EXCIT=_F(CHARGE=AAAZ,), -# SENSIBILITE=(PS1,PS2,),); - panel=create_command("THER_LINEAIRE",panel) - command=panel.node - panel=select_child("MODELE",command) - choose_assd("AFFE1",panel) - panel=select_child("CHAM_MATER",command) - panel=select_child("EXCIT",command) - panel=select_child("CHARGE",panel.node) - panel=select_node(command) - panel=create_mocle("SENSIBILITE",panel) - add_valeur_into("PS1",panel) - add_valeur_into("PS2",panel) - valider_valeur(panel) - panel=select_node(command) - panel=nomme_concept("TH1",panel) - command.collapse() -#ACA1=AFFE_CHAR_ACOU(MODELE=AFFE1, -# PRES_IMPO=_F(TOUT='OUI', -# PRES=('RI',3.0,3.0,),),); - panel=create_command("AFFE_CHAR_ACOU",panel) - command=panel.node - panel=create_mocle("PRES_IMPO",panel) - pres=panel.node - panel=create_mocle("TOUT",panel) - choose_valeur("OUI",panel) - panel=select_child("MODELE",command) - choose_assd("AFFE1",panel) - panel=select_child("PRES",pres) - set_complexe("'RI',3.0,3.0",panel) - panel=select_node(command) - panel=nomme_concept("ACA1",panel) - command.collapse() -#MACRO_MATR_ASSE(MODELE=AFFE1, -# NUME_DDL=CO('DDL1'), -# MATR_ASSE=_F(MATRICE=CO('MAT1'), -# OPTION='RIGI_THER',),); - panel=create_command("MACRO_MATR_ASSE",panel) - command=panel.node - panel=select_child("NUME_DDL",command) - set_sdco("DDL1",panel) - panel=select_child("MODELE",command) - choose_assd("AFFE1",panel) - panel=select_child("MATR_ASSE",command) - matr=panel.node - panel=select_child("OPTION",matr) - choose_valeur("RIGI_THER",panel) - panel=select_child("MATRICE",matr) - set_sdco("MAT1",panel) - panel=select_node(command) - command.collapse() -#MACRO_MATR_ASSE(MODELE=AFFE1, -# NUME_DDL=DDL1, -# MATR_ASSE=_F(MATRICE=MAT1, -# OPTION='RIGI_THER',),); - panel=create_command("MACRO_MATR_ASSE",panel) - command=panel.node - panel=select_child("NUME_DDL",command) - choose_sdco("DDL1",panel) - panel=select_child("MODELE",command) - choose_assd("AFFE1",panel) - panel=select_child("MATR_ASSE",command) - matr=panel.node - panel=select_child("OPTION",matr) - choose_valeur("RIGI_THER",panel) - panel=select_child("MATRICE",matr) - set_sdco("MAT2",panel) - panel=select_node(command) - command.collapse() - - assert j.isValid(),j.report() diff --git a/Tests/testihm/testihm2.py b/Tests/testihm/testihm2.py deleted file mode 100644 index 6cff2ff3..00000000 --- a/Tests/testihm/testihm2.py +++ /dev/null @@ -1,70 +0,0 @@ -# -*- coding: utf-8 -*- -# Modules Python -import os -import unittest -import difflib -import compare -import sys -import Tkinter - -# Modules Eficas -import prefs -from Editeur import session -from InterfaceTK import eficas_go,splash,eficas,images -from common import * - - -class TestCase(unittest.TestCase): - def setUp(self): - self.root = Tkinter.Tk() - images.update_cache() - # Analyse des arguments de la ligne de commande - options=session.parse([]) - options.cata="v8" - pass - - def tearDown(self): - self.root.destroy() - init_common(None,None) - pass - - def test000(self): - root=self.root - code="ASTER" - splash.init_splash(root,code=code,titre="Lancement d'EFICAS pour %s" %code) - splash._splash.configure(text="Chargement d'EFICAS en cours.\n Veuillez patienter ...") - app=eficas.EFICAS(root,code=code) - j=app.bureau.newJDC() - jdcdisplay=app.bureau.JDCDisplay_courant - init_common(root,jdcdisplay) - - # commande DEBUT - co=j.addEntite("DEBUT",0) - # commande FIN - co=j.addEntite("FIN",1) - - jdctree=jdcdisplay.tree.tree.children[0] - panel=select_child("DEBUT",jdctree) - panel=create_command("LIRE_MAILLAGE",panel) - panel=nomme_concept("MA",panel) - - panel=create_command("AFFE_MODELE",panel) - command=panel.node - select_child("MAILLAGE",command) - panel=select_node(command) - panel=create_mocle("AFFE",panel) - parent=panel.node - panel=select_child("PHENOMENE",parent) - choose_valeur("MECANIQUE",panel) - panel=select_child("b_mecanique",parent) - panel=select_child("MODELISATION",panel.node) - add_valeur_into("3D",panel) - add_valeur_into("3D_FLUIDE",panel) - valider_valeur(panel) - panel=select_node(parent) - panel=create_mocle("TOUT",panel) - choose_valeur("OUI",panel) - panel=select_node(command) - panel=nomme_concept("MO",panel) - - assert j.isValid(),j.report() diff --git a/Tests/testihm/testihm3.py b/Tests/testihm/testihm3.py deleted file mode 100644 index e95c7def..00000000 --- a/Tests/testihm/testihm3.py +++ /dev/null @@ -1,93 +0,0 @@ -# -*- coding: utf-8 -*- -# Modules Python -import os -import unittest -import difflib -import compare -import sys -import Tkinter - -# Modules Eficas -import prefs -from Editeur import session -from InterfaceTK import eficas_go,splash,eficas,images -from common import * - - -class TestCase(unittest.TestCase): - def setUp(self): - self.root = Tkinter.Tk() - images.update_cache() - # Analyse des arguments de la ligne de commande - options=session.parse([]) - options.cata="petit" - pass - - def tearDown(self): - self.root.destroy() - init_common(None,None) - pass - - def test000(self): - root=self.root - code="ASTER" - splash.init_splash(root,code=code,titre="Lancement d'EFICAS pour %s" %code) - splash._splash.configure(text="Chargement d'EFICAS en cours.\n Veuillez patienter ...") - app=eficas.EFICAS(root,code=code) - j=app.bureau.newJDC() - jdcdisplay=app.bureau.JDCDisplay_courant - init_common(root,jdcdisplay) - - # commande DEBUT - co=j.addEntite("DEBUT",0) - # commande FIN - co=j.addEntite("FIN",1) - - jdctree=jdcdisplay.tree.tree.children[0] - panel=select_child("DEBUT",jdctree) - panel=create_command("TESTS_VALID",panel) - command=panel.node - panel=select_child("LongStr",command) - set_valeur("aaa",panel) - panel=select_child("ListStr",command) - add_valeur("aaa",panel) - add_valeur("bbbb,ccc",panel) - valider_valeur(panel) - panel=select_child("PairVal",command) - add_valeur(2,panel) - add_valeur("4,6",panel) - valider_valeur(panel) - panel=select_child("RangeVal",command) - set_valeur(4,panel) - panel=select_child("CardVal",command) - add_valeur("4,6,5,7",panel) - valider_valeur(panel) - panel=select_child("EnumVal",command) - choose_valeur(3,panel) - panel=select_child("OrdList",command) - add_valeur("4,6,5,7",panel) - valider_valeur(panel) - panel=select_child("OrdList2",command) - add_valeur_into(2,panel) - valider_valeur(panel) - panel=select_child("TypeVal",command) - set_valeur(5,panel) - panel=select_child("Compul",command) - add_valeur("2",panel) - add_valeur("1",panel) - valider_valeur(panel) - panel=select_child("CompulInto",command) - add_valeur_into(2,panel) - add_valeur_into(1,panel) - valider_valeur(panel) - panel=select_child("Norep",command) - add_valeur("2",panel) - valider_valeur(panel) - panel=select_child("NorepInto",command) - add_valeur_into(2,panel) - valider_valeur(panel) - - panel=select_node(command) - panel=nomme_concept("MA",panel) - - assert j.isValid(),j.report() diff --git a/Tests/testihm/testihm4.py b/Tests/testihm/testihm4.py deleted file mode 100644 index 9bec8e06..00000000 --- a/Tests/testihm/testihm4.py +++ /dev/null @@ -1,55 +0,0 @@ -# -*- coding: utf-8 -*- -# Modules Python -import os -import unittest -import difflib -import compare -import sys -import Tkinter - -# Modules Eficas -import prefs -from Editeur import session -from InterfaceTK import eficas_go,splash,eficas,images -from common import * - - -class TestCase(unittest.TestCase): - def setUp(self): - self.root = Tkinter.Tk() - images.update_cache() - # Analyse des arguments de la ligne de commande - options=session.parse([]) - options.cata="v8" - pass - - def tearDown(self): - self.root.destroy() - init_common(None,None) - pass - - def test000(self): - root=self.root - code="ASTER" - splash.init_splash(root,code=code,titre="Lancement d'EFICAS pour %s" %code) - splash._splash.configure(text="Chargement d'EFICAS en cours.\n Veuillez patienter ...") - app=eficas.EFICAS(root,code=code) - file=os.path.join(prefs.INSTALLDIR,"Tests/testelem/az.comm") - j=app.bureau.openJDC(file=file) - jdcdisplay=app.bureau.JDCDisplay_courant - init_common(root,jdcdisplay) - jdctree=jdcdisplay.tree.tree.children[0] - #commentariser commande MACRO_MATR_ASSE - panel=select_child("MACRO_MATR_ASSE",jdctree) - panel=comment_command(panel) - #decommentariser commande MACRO_MATR_ASSE - panel=unComment_command(panel) - #creation commande commentée - panel=create_command("LIRE_MAILLAGE",panel) - panel=comment_command(panel) - panel=change_commandcomm("mm=LIRE_MAILLAGE(INFO=2,UNITE=21)",panel) - panel=unComment_command(panel) - panel=select_child("DEFI_FONCTION",jdctree) - delete_node(panel) - - assert j.isValid(),j.report() diff --git a/Tests/testihm7/common.py b/Tests/testihm7/common.py deleted file mode 100644 index 1d5f0daf..00000000 --- a/Tests/testihm7/common.py +++ /dev/null @@ -1,206 +0,0 @@ -# -*- coding: utf-8 -*- - -from tkMessageBox import showinfo -root=None -jdcdisplay=None - -class UnKnownNode(Exception):pass - -def init_common(r,j): - global root,jdcdisplay - root=r - jdcdisplay=j - -def KP_return(): - root.event_generate("") - root.update() - -def delete_node(panel): - panel.node.delete() - -def unComment_command(panel): - panel.bouton_unc.invoke() - root.update() - panel=jdcdisplay.panel_courant - return panel - -def comment_command(panel): - panel.nb.selectpage('Commentaire') - panel.comment_commande() - root.update() - panel=jdcdisplay.panel_courant - return panel - -def create_mocle(nom,panel): - panel.nb.selectpage('Mocles') - panel.Liste.afficheMot(nom) - root.update() - label=panel.Liste.dico_labels[nom] - label.event_generate("") - root.event_generate("") - root.update() - return jdcdisplay.panel_courant - -def change_commandcomm(text,panel): - panel.widget_text.setvalue(text) - root.update() - panel.bouton_val.invoke() - return panel - -def create_command(nom,panel): - panel.nb.selectpage('Commande') - root.update() - panel.command_entry.setentry(nom) - panel.command_entry.component('entry').focus_set() - root.event_generate("") - root.update() - label=panel.liste_command.dico_labels[nom] - label.event_generate("") - label.event_generate("") - #root.event_generate("") - root.update() - panel=jdcdisplay.panel_courant - return panel - -def create_comment(text,panel): - panel.nb.selectpage('Commentaire') - panel.ajout_commentaire() - root.update() - panel=jdcdisplay.panel_courant - panel.widget_text.setvalue(text) - root.update() - panel.bouton_val.invoke() - #panel.change_valeur() - return panel - -def create_param(nom,valeur,panel): - panel.nb.selectpage('Commentaire') - panel.ajout_parametre() - root.update() - panel=jdcdisplay.panel_courant - if nom: - panel.entry_nom.delete(0,"end") - panel.entry_nom.insert(0,nom) - panel.entry_nom.event_generate("") - panel.entry_val.delete(0,"end") - panel.entry_val.insert(0,valeur) - panel.entry_val.event_generate("") - panel.bouton_val.invoke() - root.update() - return panel - -def create_formule(nom,args,expr,panel): - panel=create_command("FORMULE",panel) - panel.entry_nom.delete(0,"end") - panel.entry_nom.insert(0,nom) - panel.entry_nom.event_generate("") - panel.entry_arg.delete(0,"end") - panel.entry_arg.insert(0,args) - panel.entry_arg.event_generate("") - panel.entry_exp.delete(0,"end") - panel.entry_exp.insert(0,expr) - panel.entry_exp.event_generate("") - panel.bouton_val.invoke() - root.update() - return panel - -def nomme_concept(nom,panel): - panel.nb.selectpage('Concept') - root.update() - panel._any.delete(0,"end") - panel._any.insert(0,nom) - panel.but_ok.invoke() - root.update() - return jdcdisplay.panel_courant - -def select_mcf(nom,ind,node): - panel=select_child(nom,node) - parent=panel.node - parent.expand() - parent.select_next(ind) - panel=jdcdisplay.panel_courant - panel.node.expand() - return panel - -def select_child(nom,node): - """node est le parent dont on veut le fils nom""" - for n in node.children: - if n.item.nom == nom: - n.select() - root.update() - panel= jdcdisplay.panel_courant - panel.node.expand() - return panel - raise UnKnownNode(nom) - -def select_node(node): - node.select() - node.expand() - root.update() - return jdcdisplay.panel_courant - -def choose_valeur(valeur,panel): - panel.Liste_choix.afficheMot(valeur) - root.update() - label=panel.Liste_choix.dico_labels[valeur] - label.event_generate("") - label.event_generate("") - root.update() - -def choose_sdco(valeur,panel): - i = list(panel.listbox.get(0, 'end')).index(valeur) - panel.listbox.component("listbox").selection_set(i) - panel.listbox.component("listbox").focus_set() - panel.listbox.component("listbox").event_generate("") - root.update() - -def choose_assd(valeur,panel): - i = list(panel.listbox.get(0, 'end')).index(valeur) - panel.listbox.component("listbox").selection_set(i) - panel.but_val.invoke() - root.update() - -def set_valeur(valeur,panel): - panel.entry.delete(0,"end") - panel.entry.insert(0,valeur) - panel.entry.event_generate("") - root.update() - -def set_sdco(valeur,panel): - panel.b_co.invoke('OUI') - root.update() - panel.entry_co.delete(0,"end") - panel.entry_co.insert(0,valeur) - panel.entry_co.event_generate("") - root.update() - -def set_complexe(valeur,panel): - panel.entry3.setentry(valeur) - panel.entry3.component('entry').focus_set() - panel.entry3.event_generate("") - root.update() - -def add_valeur_into(valeur,panel): - label=panel.Liste_choix.dico_labels[valeur] - panel.Liste_choix.afficheMot(valeur) - root.update() - label.event_generate("<1>") - panel.bouton_add.invoke() - root.update() - -def add_valeur(valeur,panel): - panel.entry.delete(0,"end") - panel.entry.insert(0,valeur) - panel.entry.event_generate("") - root.update() - -def valider_valeur(panel): - panel.bouton_accepter.invoke() - root.update() - -def copier_coller(): - root.event_generate("") - root.event_generate("") - root.update() - return jdcdisplay.panel_courant - diff --git a/Tests/testihm7/testihm1.py b/Tests/testihm7/testihm1.py deleted file mode 100644 index 433d8099..00000000 --- a/Tests/testihm7/testihm1.py +++ /dev/null @@ -1,334 +0,0 @@ -# -*- coding: utf-8 -*- -# Modules Python -import os -import unittest -import difflib -import compare -import sys -import Tkinter - -# Modules Eficas -import prefs -from Editeur import session -from InterfaceTK import eficas_go,splash,eficas,images -from common import * - -version='v7' - -class TestCase(unittest.TestCase): - def setUp(self): - self.root = Tkinter.Tk() - images.update_cache() - # Analyse des arguments de la ligne de commande - options=session.parse([]) - options.cata=version - pass - - def tearDown(self): - self.root.destroy() - init_common(None,None) - pass - - def test000(self): - root=self.root - code="ASTER" - splash.init_splash(root,code=code,titre="Lancement d'EFICAS pour %s" %code) - splash._splash.configure(text="Chargement d'EFICAS en cours.\n Veuillez patienter ...") - app=eficas.EFICAS(root,code=code) - j=app.bureau.newJDC() - jdcdisplay=app.bureau.JDCDisplay_courant - init_common(root,jdcdisplay) - - # commande DEBUT - co=j.addEntite("DEBUT",0) - # commande FIN - co=j.addEntite("FIN",1) - - jdctree=jdcdisplay.tree.tree.children[0] - panel=select_child("DEBUT",jdctree) - - panel=create_param("P1",9.8,panel) - panel=create_param("P2",8.8,panel) - panel=create_param("P3",7,panel) - panel=create_param("P4","[2,3,4]",panel) - panel=create_param("P5","P3*P1",panel) - panel=create_param(None,"P1-3",panel) - panel=create_comment("Pas trouve shellpanel",panel) - - #commnde LIRE_MAILLAGE - panel=create_command("LIRE_MAILLAGE",panel) - command=panel.node - panel=nomme_concept("MAILLA2",panel) - panel=select_node(command) - panel=create_mocle("UNITE",panel) - panel=set_valeur("P4[1]",panel) - command.collapse() - panel=select_node(command) - #FORMULE - panel=create_formule("az","a,z","a+z",panel) - #commande AFFE_MODELE - panel=create_command("AFFE_MODELE",panel) - command=panel.node - select_child("MAILLAGE",command) - panel=select_node(command) - panel=create_mocle("AFFE",panel) - parent=panel.node - panel=select_child("PHENOMENE",parent) - choose_valeur("MECANIQUE",panel) - panel=select_child("b_mecanique",parent) - panel=select_child("MODELISATION",panel.node) - add_valeur_into("3D",panel) - add_valeur_into("3D_FLUIDE",panel) - valider_valeur(panel) - panel=select_node(parent) - panel=create_mocle("TOUT",panel) - choose_valeur("OUI",panel) - panel=select_node(command) - panel=nomme_concept("MO",panel) - command.collapse() - #fin commande AFFE_MODELE - panel=copier_coller() - command=panel.node - panel=create_mocle("AFFE",panel) - panel=select_node(command) - panel=create_mocle("AFFE",panel) - panel=select_mcf("AFFE",1,command) - parent=panel.node - panel=create_mocle("GROUP_NO",panel) - add_valeur("'GNP3','GNP5','GNP6','GNP7','GNP8','GNP9','GNP10','GNP11','GNP12'",panel) - valider_valeur(panel) - panel=select_child("PHENOMENE",parent) - choose_valeur("ACOUSTIQUE",panel) - panel=select_child("b_acoustique",parent) - panel=select_child("MODELISATION",panel.node) - add_valeur_into("PLAN",panel) - valider_valeur(panel) - - panel=select_mcf("AFFE",2,command) - parent=panel.node - panel=create_mocle("GROUP_MA",panel) - add_valeur("MASSES",panel) - valider_valeur(panel) - panel=select_child("PHENOMENE",parent) - choose_valeur("THERMIQUE",panel) - panel=select_child("b_thermique",parent) - panel=select_child("MODELISATION",panel.node) - add_valeur_into("COQUE",panel) - valider_valeur(panel) - - panel=select_node(command) - panel=nomme_concept("AFFE1",panel) - command.collapse() - #fin commande AFFE_MODELE - #commande AFFE_CARA_ELEM - panel=create_command("AFFE_CARA_ELEM",panel) - command=panel.node - panel=select_node(command) - panel=create_mocle("POUTRE",panel) - parent=panel.node - panel=select_child("SECTION",parent) - choose_valeur("CERCLE",panel) - panel=select_child("b_cercle",parent) - panel=select_child("b_constant",panel.node) - p=panel.node - panel=select_child("CARA",p) - add_valeur_into("R",panel) - add_valeur_into("EP",panel) - valider_valeur(panel) - panel=select_child("VALE",p) - add_valeur("1,2",panel) - valider_valeur(panel) - panel=select_node(parent) - panel=create_mocle("GROUP_MA",panel) - add_valeur("GR1,GR2",panel) - valider_valeur(panel) - panel=select_child("MODELE",command) - choose_assd("MO",panel) - panel=select_node(command) - panel=nomme_concept("CARA",panel) - command.collapse() - #fin commande AFFE_CARA_ELEM - panel=create_command("DEFI_FONCTION",panel) - command=panel.node - panel=create_mocle("VALE",panel) - add_valeur("5.0,3.0",panel) - add_valeur("P4[1],P3",panel) - valider_valeur(panel) - panel=select_child("NOM_PARA",command) - add_valeur("DX",panel) - panel=select_node(command) - panel=nomme_concept("F1",panel) - command.collapse() - #fin DEFI_FONCTION - panel=create_command("DEFI_FONCTION",panel) - command=panel.node - panel=create_mocle("VALE_C",panel) - add_valeur("5.0,7.0,9.0",panel) - add_valeur("9.0,8.0,7.0",panel) - valider_valeur(panel) - panel=select_child("NOM_PARA",command) - add_valeur("DRX",panel) - panel=select_node(command) - panel=nomme_concept("F3",panel) - command.collapse() - #fin DEFI_FONCTION -#MATER2=DEFI_MATERIAU(ELAS=_F(E=100000000000.0, -# NU=0.0,), -# ECRO_ASYM_LINE=_F(DC_SIGM_EPSI=0.0, -# SY_C=200000000.0, -# DT_SIGM_EPSI=0.0, -# SY_T=50000000.0,),); - - panel=create_command("DEFI_MATERIAU",panel) - command=panel.node - panel=create_mocle("ELAS",panel) - p=panel.node - panel=select_child("E",p) - set_valeur("100000000000.0",panel) - panel=select_child("NU",p) - set_valeur("0.0",panel) - panel=select_node(command) - panel=create_mocle("ECRO_ASYM_LINE",panel) - p=panel.node - panel=select_child("DC_SIGM_EPSI",p) - set_valeur("0.0",panel) - panel=select_child("SY_C",p) - set_valeur("200000000.0",panel) - panel=select_child("DT_SIGM_EPSI",p) - set_valeur("0.0",panel) - panel=select_child("SY_T",p) - set_valeur("50000000.0",panel) - panel=select_node(command) - panel=nomme_concept("MATER2",panel) - command.collapse() - #fin DEFI_MATERIAU - #PS1=DEFI_PARA_SENSI(VALE=1.0,); - #PS2=DEFI_PARA_SENSI(VALE=1.0,); - #PS3=DEFI_PARA_SENSI(VALE=1.0,); - panel=create_command("DEFI_PARA_SENSI",panel) - command=panel.node - panel=select_child("VALE",command) - set_valeur("1.0",panel) - panel=select_node(command) - panel=nomme_concept("PS1",panel) - command.collapse() - panel=create_command("DEFI_PARA_SENSI",panel) - command=panel.node - panel=select_child("VALE",command) - set_valeur("1.0",panel) - panel=select_node(command) - panel=nomme_concept("PS2",panel) - command.collapse() - panel=create_command("DEFI_PARA_SENSI",panel) - command=panel.node - panel=select_child("VALE",command) - set_valeur("1.0",panel) - panel=select_node(command) - panel=nomme_concept("PS3",panel) - command.collapse() -#CHMAT2=AFFE_MATERIAU(MAILLAGE=MAIL, -# AFFE=_F(TOUT='OUI', -# MATER=MATER2,),); - panel=create_command("AFFE_MATERIAU",panel) - command=panel.node - panel=select_child("MAILLAGE",command) - panel=select_child("AFFE",command) - affe=panel.node - panel=create_mocle("TOUT",panel) - choose_valeur("OUI",panel) - panel=select_child("MATER",affe) - add_valeur_into("MATER2",panel) - valider_valeur(panel) - panel=select_node(command) - panel=nomme_concept("CHMAT2",panel) - command.collapse() -#AAAZ=AFFE_CHAR_THER(MODELE=AFFE1, -# TEMP_IMPO=_F(TOUT='OUI', -# TEMP=0.0,),); - panel=create_command("AFFE_CHAR_THER",panel) - command=panel.node - panel=create_mocle("TEMP_IMPO",panel) - temp=panel.node - panel=create_mocle("TOUT",panel) - choose_valeur("OUI",panel) - panel=select_node(temp) - panel=create_mocle("TEMP",panel) - panel=set_valeur("0.0",panel) - panel=select_child("MODELE",command) - choose_assd("AFFE1",panel) - panel=select_node(command) - panel=nomme_concept("AAAZ",panel) - command.collapse() -#TH1=THER_LINEAIRE(MODELE=AFFE1, -# CHAM_MATER=CHMAT2, -# EXCIT=_F(CHARGE=AAAZ,), -# SENSIBILITE=(PS1,PS2,),); - panel=create_command("THER_LINEAIRE",panel) - command=panel.node - panel=select_child("MODELE",command) - choose_assd("AFFE1",panel) - panel=select_child("CHAM_MATER",command) - panel=select_child("EXCIT",command) - panel=select_child("CHARGE",panel.node) - panel=select_node(command) - panel=create_mocle("SENSIBILITE",panel) - add_valeur_into("PS1",panel) - add_valeur_into("PS2",panel) - valider_valeur(panel) - panel=select_node(command) - panel=nomme_concept("TH1",panel) - command.collapse() -#ACA1=AFFE_CHAR_ACOU(MODELE=AFFE1, -# PRES_IMPO=_F(TOUT='OUI', -# PRES=('RI',3.0,3.0,),),); - panel=create_command("AFFE_CHAR_ACOU",panel) - command=panel.node - panel=create_mocle("PRES_IMPO",panel) - pres=panel.node - panel=create_mocle("TOUT",panel) - choose_valeur("OUI",panel) - panel=select_child("MODELE",command) - choose_assd("AFFE1",panel) - panel=select_child("PRES",pres) - set_complexe("'RI',3.0,3.0",panel) - panel=select_node(command) - panel=nomme_concept("ACA1",panel) - command.collapse() -#MACRO_MATR_ASSE(MODELE=AFFE1, -# NUME_DDL=CO('DDL1'), -# MATR_ASSE=_F(MATRICE=CO('MAT1'), -# OPTION='RIGI_THER',),); - panel=create_command("MACRO_MATR_ASSE",panel) - command=panel.node - panel=select_child("NUME_DDL",command) - set_sdco("DDL1",panel) - panel=select_child("MODELE",command) - choose_assd("AFFE1",panel) - panel=select_child("MATR_ASSE",command) - matr=panel.node - panel=select_child("OPTION",matr) - choose_valeur("RIGI_THER",panel) - panel=select_child("MATRICE",matr) - set_sdco("MAT1",panel) - panel=select_node(command) - command.collapse() -#MACRO_MATR_ASSE(MODELE=AFFE1, -# NUME_DDL=DDL1, -# MATR_ASSE=_F(MATRICE=MAT1, -# OPTION='RIGI_THER',),); - panel=create_command("MACRO_MATR_ASSE",panel) - command=panel.node - panel=select_child("NUME_DDL",command) - choose_sdco("DDL1",panel) - panel=select_child("MODELE",command) - choose_assd("AFFE1",panel) - panel=select_child("MATR_ASSE",command) - matr=panel.node - panel=select_child("OPTION",matr) - choose_valeur("RIGI_THER",panel) - panel=select_child("MATRICE",matr) - set_sdco("MAT2",panel) - panel=select_node(command) - command.collapse() - - assert j.isValid(),j.report() diff --git a/Tests/testihm7/testihm2.py b/Tests/testihm7/testihm2.py deleted file mode 100644 index 829a2086..00000000 --- a/Tests/testihm7/testihm2.py +++ /dev/null @@ -1,70 +0,0 @@ -# -*- coding: utf-8 -*- -# Modules Python -import os -import unittest -import difflib -import compare -import sys -import Tkinter - -# Modules Eficas -import prefs -from Editeur import session -from InterfaceTK import eficas_go,splash,eficas,images -from common import * - - -class TestCase(unittest.TestCase): - def setUp(self): - self.root = Tkinter.Tk() - images.update_cache() - # Analyse des arguments de la ligne de commande - options=session.parse([]) - options.cata="v7" - pass - - def tearDown(self): - self.root.destroy() - init_common(None,None) - pass - - def test000(self): - root=self.root - code="ASTER" - splash.init_splash(root,code=code,titre="Lancement d'EFICAS pour %s" %code) - splash._splash.configure(text="Chargement d'EFICAS en cours.\n Veuillez patienter ...") - app=eficas.EFICAS(root,code=code) - j=app.bureau.newJDC() - jdcdisplay=app.bureau.JDCDisplay_courant - init_common(root,jdcdisplay) - - # commande DEBUT - co=j.addEntite("DEBUT",0) - # commande FIN - co=j.addEntite("FIN",1) - - jdctree=jdcdisplay.tree.tree.children[0] - panel=select_child("DEBUT",jdctree) - panel=create_command("LIRE_MAILLAGE",panel) - panel=nomme_concept("MA",panel) - - panel=create_command("AFFE_MODELE",panel) - command=panel.node - select_child("MAILLAGE",command) - panel=select_node(command) - panel=create_mocle("AFFE",panel) - parent=panel.node - panel=select_child("PHENOMENE",parent) - choose_valeur("MECANIQUE",panel) - panel=select_child("b_mecanique",parent) - panel=select_child("MODELISATION",panel.node) - add_valeur_into("3D",panel) - add_valeur_into("3D_FLUIDE",panel) - valider_valeur(panel) - panel=select_node(parent) - panel=create_mocle("TOUT",panel) - choose_valeur("OUI",panel) - panel=select_node(command) - panel=nomme_concept("MO",panel) - - assert j.isValid(),j.report() diff --git a/Tests/testihm7/testihm4.py b/Tests/testihm7/testihm4.py deleted file mode 100644 index 505a21ac..00000000 --- a/Tests/testihm7/testihm4.py +++ /dev/null @@ -1,55 +0,0 @@ -# -*- coding: utf-8 -*- -# Modules Python -import os -import unittest -import difflib -import compare -import sys -import Tkinter - -# Modules Eficas -import prefs -from Editeur import session -from InterfaceTK import eficas_go,splash,eficas,images -from common import * - - -class TestCase(unittest.TestCase): - def setUp(self): - self.root = Tkinter.Tk() - images.update_cache() - # Analyse des arguments de la ligne de commande - options=session.parse([]) - options.cata="v7" - pass - - def tearDown(self): - self.root.destroy() - init_common(None,None) - pass - - def test000(self): - root=self.root - code="ASTER" - splash.init_splash(root,code=code,titre="Lancement d'EFICAS pour %s" %code) - splash._splash.configure(text="Chargement d'EFICAS en cours.\n Veuillez patienter ...") - app=eficas.EFICAS(root,code=code) - file=os.path.join(prefs.INSTALLDIR,"Tests/testelem/az.comm") - j=app.bureau.openJDC(file=file) - jdcdisplay=app.bureau.JDCDisplay_courant - init_common(root,jdcdisplay) - jdctree=jdcdisplay.tree.tree.children[0] - #commentariser commande MACRO_MATR_ASSE - panel=select_child("MACRO_MATR_ASSE",jdctree) - panel=comment_command(panel) - #decommentariser commande MACRO_MATR_ASSE - panel=unComment_command(panel) - #creation commande commentée - panel=create_command("LIRE_MAILLAGE",panel) - panel=comment_command(panel) - panel=change_commandcomm("mm=LIRE_MAILLAGE(INFO=2,UNITE=21)",panel) - panel=unComment_command(panel) - panel=select_child("DEFI_FONCTION",jdctree) - delete_node(panel) - - assert j.isValid(),j.report() diff --git a/Tests/testihm9/common.py b/Tests/testihm9/common.py deleted file mode 100644 index 35eafb0f..00000000 --- a/Tests/testihm9/common.py +++ /dev/null @@ -1,209 +0,0 @@ -# -*- coding: utf-8 -*- - -from tkMessageBox import showinfo -root=None -jdcdisplay=None - -class UnKnownNode(Exception):pass - -def pause(): - if 1: - showinfo("Pause","Pause") - -def init_common(r,j): - global root,jdcdisplay - root=r - jdcdisplay=j - -def KP_return(): - root.event_generate("") - root.update() - -def delete_node(panel): - panel.node.delete() - -def unComment_command(panel): - panel.bouton_unc.invoke() - root.update() - panel=jdcdisplay.panel_courant - return panel - -def comment_command(panel): - panel.nb.selectpage('Commentaire') - panel.comment_commande() - root.update() - panel=jdcdisplay.panel_courant - return panel - -def create_mocle(nom,panel): - panel.nb.selectpage('Mocles') - panel.Liste.afficheMot(nom) - root.update() - label=panel.Liste.dico_labels[nom] - label.event_generate("") - root.event_generate("") - root.update() - return jdcdisplay.panel_courant - -def change_commandcomm(text,panel): - panel.widget_text.setvalue(text) - root.update() - panel.bouton_val.invoke() - return panel - -def create_command(nom,panel): - panel.nb.selectpage('Commande') - root.update() - panel.command_entry.setentry(nom) - panel.command_entry.component('entry').focus_set() - root.event_generate("") - root.update() - label=panel.liste_command.dico_labels[nom] - label.event_generate("") - label.event_generate("") - root.update() - panel=jdcdisplay.panel_courant - return panel - -def create_comment(text,panel): - panel.nb.selectpage('Commentaire') - panel.ajout_commentaire() - root.update() - panel=jdcdisplay.panel_courant - panel.widget_text.setvalue(text) - root.update() - panel.bouton_val.invoke() - #panel.change_valeur() - return panel - -def create_param(nom,valeur,panel): - panel.nb.selectpage('Commentaire') - panel.ajout_parametre() - root.update() - panel=jdcdisplay.panel_courant - if nom: - panel.entry_nom.delete(0,"end") - panel.entry_nom.insert(0,nom) - panel.entry_nom.event_generate("") - panel.entry_val.delete(0,"end") - panel.entry_val.insert(0,valeur) - panel.entry_val.event_generate("") - panel.bouton_val.invoke() - root.update() - return panel - -def create_formule(nom,args,expr,panel): - panel=create_command("FORMULE",panel) - panel.entry_nom.delete(0,"end") - panel.entry_nom.insert(0,nom) - panel.entry_nom.event_generate("") - panel.entry_arg.delete(0,"end") - panel.entry_arg.insert(0,args) - panel.entry_arg.event_generate("") - panel.entry_exp.delete(0,"end") - panel.entry_exp.insert(0,expr) - panel.entry_exp.event_generate("") - panel.bouton_val.invoke() - root.update() - return panel - -def nomme_concept(nom,panel): - panel.nb.selectpage('Concept') - root.update() - panel._any.delete(0,"end") - panel._any.insert(0,nom) - panel.but_ok.invoke() - root.update() - return jdcdisplay.panel_courant - -def select_mcf(nom,ind,node): - panel=select_child(nom,node) - parent=panel.node - parent.expand() - parent.select_next(ind) - panel=jdcdisplay.panel_courant - panel.node.expand() - return panel - -def select_child(nom,node): - """node est le parent dont on veut le fils nom""" - for n in node.children: - if n.item.nom == nom: - n.select() - root.update() - panel= jdcdisplay.panel_courant - panel.node.expand() - return panel - raise UnKnownNode(nom) - -def select_node(node): - node.select() - node.expand() - root.update() - return jdcdisplay.panel_courant - -def choose_valeur(valeur,panel): - panel.Liste_choix.afficheMot(valeur) - root.update() - label=panel.Liste_choix.dico_labels[valeur] - label.event_generate("") - label.event_generate("") - root.update() - -def choose_sdco(valeur,panel): - i = list(panel.listbox.get(0, 'end')).index(valeur) - panel.listbox.component("listbox").selection_set(i) - panel.listbox.component("listbox").focus_set() - panel.listbox.component("listbox").event_generate("") - root.update() - -def choose_assd(valeur,panel): - i = list(panel.listbox.get(0, 'end')).index(valeur) - panel.listbox.component("listbox").selection_set(i) - panel.but_val.invoke() - root.update() - -def set_valeur(valeur,panel): - panel.entry.delete(0,"end") - panel.entry.insert(0,valeur) - panel.entry.event_generate("") - root.update() - -def set_sdco(valeur,panel): - panel.b_co.invoke('OUI') - root.update() - panel.entry_co.delete(0,"end") - panel.entry_co.insert(0,valeur) - panel.entry_co.event_generate("") - root.update() - -def set_complexe(valeur,panel): - panel.entry3.setentry(valeur) - panel.entry3.component('entry').focus_set() - panel.entry3.event_generate("") - root.update() - -def add_valeur_into(valeur,panel): - label=panel.Liste_choix.dico_labels[valeur] - panel.Liste_choix.afficheMot(valeur) - root.update() - label.event_generate("<1>") - panel.bouton_add.invoke() - root.update() - -def add_valeur(valeur,panel): - panel.entry.delete(0,"end") - panel.entry.insert(0,valeur) - panel.entry.event_generate("") - root.update() - -def valider_valeur(panel): - panel.bouton_accepter.invoke() - root.update() - -def copier_coller(): - root.event_generate("") - root.event_generate("") - root.update() - return jdcdisplay.panel_courant - diff --git a/Tests/testihm9/testihm1.py b/Tests/testihm9/testihm1.py deleted file mode 100644 index 98b18eeb..00000000 --- a/Tests/testihm9/testihm1.py +++ /dev/null @@ -1,334 +0,0 @@ -# -*- coding: utf-8 -*- -# Modules Python -import os -import unittest -import difflib -import compare -import sys -import Tkinter - -# Modules Eficas -import prefs -from Editeur import session -from InterfaceTK import eficas_go,splash,eficas,images -from common import * - -version='v9' - -class TestCase(unittest.TestCase): - def setUp(self): - self.root = Tkinter.Tk() - images.update_cache() - # Analyse des arguments de la ligne de commande - options=session.parse([]) - options.cata=version - pass - - def tearDown(self): - self.root.destroy() - init_common(None,None) - pass - - def test000(self): - root=self.root - code="ASTER" - splash.init_splash(root,code=code,titre="Lancement d'EFICAS pour %s" %code) - splash._splash.configure(text="Chargement d'EFICAS en cours.\n Veuillez patienter ...") - app=eficas.EFICAS(root,code=code) - j=app.bureau.newJDC() - jdcdisplay=app.bureau.JDCDisplay_courant - init_common(root,jdcdisplay) - - # commande DEBUT - co=j.addEntite("DEBUT",0) - # commande FIN - co=j.addEntite("FIN",1) - - jdctree=jdcdisplay.tree.tree.children[0] - panel=select_child("DEBUT",jdctree) - - panel=create_param("P1",9.8,panel) - panel=create_param("P2",8.8,panel) - panel=create_param("P3",7,panel) - panel=create_param("P4","[2,3,4]",panel) - panel=create_param("P5","P3*P1",panel) - panel=create_param(None,"P1-3",panel) - panel=create_comment("Pas trouve shellpanel",panel) - - #commnde LIRE_MAILLAGE - panel=create_command("LIRE_MAILLAGE",panel) - command=panel.node - panel=nomme_concept("MAILLA2",panel) - panel=select_node(command) - panel=create_mocle("UNITE",panel) - panel=set_valeur("P4[1]",panel) - command.collapse() - panel=select_node(command) - #FORMULE - panel=create_formule("az","a,z","a+z",panel) - #commande AFFE_MODELE - panel=create_command("AFFE_MODELE",panel) - command=panel.node - select_child("MAILLAGE",command) - panel=select_node(command) - panel=create_mocle("AFFE",panel) - parent=panel.node - panel=select_child("PHENOMENE",parent) - choose_valeur("MECANIQUE",panel) - panel=select_child("b_mecanique",parent) - panel=select_child("MODELISATION",panel.node) - add_valeur_into("3D",panel) - add_valeur_into("3D_FLUIDE",panel) - valider_valeur(panel) - panel=select_node(parent) - panel=create_mocle("TOUT",panel) - choose_valeur("OUI",panel) - panel=select_node(command) - panel=nomme_concept("MO",panel) - command.collapse() - #fin commande AFFE_MODELE - panel=copier_coller() - command=panel.node - panel=create_mocle("AFFE",panel) - panel=select_node(command) - panel=create_mocle("AFFE",panel) - panel=select_mcf("AFFE",1,command) - parent=panel.node - panel=create_mocle("GROUP_NO",panel) - add_valeur("'GNP3','GNP5','GNP6','GNP7','GNP8','GNP9','GNP10','GNP11','GNP12'",panel) - valider_valeur(panel) - panel=select_child("PHENOMENE",parent) - choose_valeur("ACOUSTIQUE",panel) - panel=select_child("b_acoustique",parent) - panel=select_child("MODELISATION",panel.node) - add_valeur_into("PLAN",panel) - valider_valeur(panel) - - panel=select_mcf("AFFE",2,command) - parent=panel.node - panel=create_mocle("GROUP_MA",panel) - add_valeur("MASSES",panel) - valider_valeur(panel) - panel=select_child("PHENOMENE",parent) - choose_valeur("THERMIQUE",panel) - panel=select_child("b_thermique",parent) - panel=select_child("MODELISATION",panel.node) - add_valeur_into("COQUE",panel) - valider_valeur(panel) - - panel=select_node(command) - panel=nomme_concept("AFFE1",panel) - command.collapse() - #fin commande AFFE_MODELE - #commande AFFE_CARA_ELEM - panel=create_command("AFFE_CARA_ELEM",panel) - command=panel.node - panel=select_node(command) - panel=create_mocle("POUTRE",panel) - parent=panel.node - panel=select_child("SECTION",parent) - choose_valeur("CERCLE",panel) - panel=select_child("b_cercle",parent) - panel=select_child("b_constant",panel.node) - p=panel.node - panel=select_child("CARA",p) - add_valeur_into("R",panel) - add_valeur_into("EP",panel) - valider_valeur(panel) - panel=select_child("VALE",p) - add_valeur("1,2",panel) - valider_valeur(panel) - panel=select_node(parent) - panel=create_mocle("GROUP_MA",panel) - add_valeur("GR1,GR2",panel) - valider_valeur(panel) - panel=select_child("MODELE",command) - choose_assd("MO",panel) - panel=select_node(command) - panel=nomme_concept("CARA",panel) - command.collapse() - #fin commande AFFE_CARA_ELEM - panel=create_command("DEFI_FONCTION",panel) - command=panel.node - panel=create_mocle("VALE",panel) - add_valeur("5.0,3.0",panel) - add_valeur("P4[1],P3",panel) - valider_valeur(panel) - panel=select_child("NOM_PARA",command) - choose_valeur("DX",panel) - panel=select_node(command) - panel=nomme_concept("F1",panel) - command.collapse() - #fin DEFI_FONCTION - panel=create_command("DEFI_FONCTION",panel) - command=panel.node - panel=create_mocle("VALE_C",panel) - add_valeur("5.0,7.0,9.0",panel) - add_valeur("9.0,8.0,7.0",panel) - valider_valeur(panel) - panel=select_child("NOM_PARA",command) - choose_valeur("DRX",panel) - panel=select_node(command) - panel=nomme_concept("F3",panel) - command.collapse() - #fin DEFI_FONCTION -#MATER2=DEFI_MATERIAU(ELAS=_F(E=100000000000.0, -# NU=0.0,), -# ECRO_ASYM_LINE=_F(DC_SIGM_EPSI=0.0, -# SY_C=200000000.0, -# DT_SIGM_EPSI=0.0, -# SY_T=50000000.0,),); - - panel=create_command("DEFI_MATERIAU",panel) - command=panel.node - panel=create_mocle("ELAS",panel) - p=panel.node - panel=select_child("E",p) - set_valeur("100000000000.0",panel) - panel=select_child("NU",p) - set_valeur("0.0",panel) - panel=select_node(command) - panel=create_mocle("ECRO_ASYM_LINE",panel) - p=panel.node - panel=select_child("DC_SIGM_EPSI",p) - set_valeur("0.0",panel) - panel=select_child("SY_C",p) - set_valeur("200000000.0",panel) - panel=select_child("DT_SIGM_EPSI",p) - set_valeur("0.0",panel) - panel=select_child("SY_T",p) - set_valeur("50000000.0",panel) - panel=select_node(command) - panel=nomme_concept("MATER2",panel) - command.collapse() - #fin DEFI_MATERIAU - #PS1=DEFI_PARA_SENSI(VALE=1.0,); - #PS2=DEFI_PARA_SENSI(VALE=1.0,); - #PS3=DEFI_PARA_SENSI(VALE=1.0,); - panel=create_command("DEFI_PARA_SENSI",panel) - command=panel.node - panel=select_child("VALE",command) - set_valeur("1.0",panel) - panel=select_node(command) - panel=nomme_concept("PS1",panel) - command.collapse() - panel=create_command("DEFI_PARA_SENSI",panel) - command=panel.node - panel=select_child("VALE",command) - set_valeur("1.0",panel) - panel=select_node(command) - panel=nomme_concept("PS2",panel) - command.collapse() - panel=create_command("DEFI_PARA_SENSI",panel) - command=panel.node - panel=select_child("VALE",command) - set_valeur("1.0",panel) - panel=select_node(command) - panel=nomme_concept("PS3",panel) - command.collapse() -#CHMAT2=AFFE_MATERIAU(MAILLAGE=MAIL, -# AFFE=_F(TOUT='OUI', -# MATER=MATER2,),); - panel=create_command("AFFE_MATERIAU",panel) - command=panel.node - panel=select_child("MAILLAGE",command) - panel=select_child("AFFE",command) - affe=panel.node - panel=create_mocle("TOUT",panel) - choose_valeur("OUI",panel) - panel=select_child("MATER",affe) - add_valeur_into("MATER2",panel) - valider_valeur(panel) - panel=select_node(command) - panel=nomme_concept("CHMAT2",panel) - command.collapse() -#AAAZ=AFFE_CHAR_THER(MODELE=AFFE1, -# TEMP_IMPO=_F(TOUT='OUI', -# TEMP=0.0,),); - panel=create_command("AFFE_CHAR_THER",panel) - command=panel.node - panel=create_mocle("TEMP_IMPO",panel) - temp=panel.node - panel=create_mocle("TOUT",panel) - choose_valeur("OUI",panel) - panel=select_node(temp) - panel=create_mocle("TEMP",panel) - panel=set_valeur("0.0",panel) - panel=select_child("MODELE",command) - choose_assd("AFFE1",panel) - panel=select_node(command) - panel=nomme_concept("AAAZ",panel) - command.collapse() -#TH1=THER_LINEAIRE(MODELE=AFFE1, -# CHAM_MATER=CHMAT2, -# EXCIT=_F(CHARGE=AAAZ,), -# SENSIBILITE=(PS1,PS2,),); - panel=create_command("THER_LINEAIRE",panel) - command=panel.node - panel=select_child("MODELE",command) - choose_assd("AFFE1",panel) - panel=select_child("CHAM_MATER",command) - panel=select_child("EXCIT",command) - panel=select_child("CHARGE",panel.node) - panel=select_node(command) - panel=create_mocle("SENSIBILITE",panel) - add_valeur_into("PS1",panel) - add_valeur_into("PS2",panel) - valider_valeur(panel) - panel=select_node(command) - panel=nomme_concept("TH1",panel) - command.collapse() -#ACA1=AFFE_CHAR_ACOU(MODELE=AFFE1, -# PRES_IMPO=_F(TOUT='OUI', -# PRES=('RI',3.0,3.0,),),); - panel=create_command("AFFE_CHAR_ACOU",panel) - command=panel.node - panel=create_mocle("PRES_IMPO",panel) - pres=panel.node - panel=create_mocle("TOUT",panel) - choose_valeur("OUI",panel) - panel=select_child("MODELE",command) - choose_assd("AFFE1",panel) - panel=select_child("PRES",pres) - set_complexe("'RI',3.0,3.0",panel) - panel=select_node(command) - panel=nomme_concept("ACA1",panel) - command.collapse() -#MACRO_MATR_ASSE(MODELE=AFFE1, -# NUME_DDL=CO('DDL1'), -# MATR_ASSE=_F(MATRICE=CO('MAT1'), -# OPTION='RIGI_THER',),); - panel=create_command("MACRO_MATR_ASSE",panel) - command=panel.node - panel=select_child("NUME_DDL",command) - set_sdco("DDL1",panel) - panel=select_child("MODELE",command) - choose_assd("AFFE1",panel) - panel=select_child("MATR_ASSE",command) - matr=panel.node - panel=select_child("OPTION",matr) - choose_valeur("RIGI_THER",panel) - panel=select_child("MATRICE",matr) - set_sdco("MAT1",panel) - panel=select_node(command) - command.collapse() -#MACRO_MATR_ASSE(MODELE=AFFE1, -# NUME_DDL=DDL1, -# MATR_ASSE=_F(MATRICE=MAT1, -# OPTION='RIGI_THER',),); - panel=create_command("MACRO_MATR_ASSE",panel) - command=panel.node - panel=select_child("NUME_DDL",command) - choose_sdco("DDL1",panel) - panel=select_child("MODELE",command) - choose_assd("AFFE1",panel) - panel=select_child("MATR_ASSE",command) - matr=panel.node - panel=select_child("OPTION",matr) - choose_valeur("RIGI_THER",panel) - panel=select_child("MATRICE",matr) - set_sdco("MAT2",panel) - panel=select_node(command) - command.collapse() - - assert j.isValid(),j.report() diff --git a/Tests/testihm9/testihm2.py b/Tests/testihm9/testihm2.py deleted file mode 100644 index 08d38d6b..00000000 --- a/Tests/testihm9/testihm2.py +++ /dev/null @@ -1,70 +0,0 @@ -# -*- coding: utf-8 -*- -# Modules Python -import os -import unittest -import difflib -import compare -import sys -import Tkinter - -# Modules Eficas -import prefs -from Editeur import session -from InterfaceTK import eficas_go,splash,eficas,images -from common import * - - -class TestCase(unittest.TestCase): - def setUp(self): - self.root = Tkinter.Tk() - images.update_cache() - # Analyse des arguments de la ligne de commande - options=session.parse([]) - options.cata="v9" - pass - - def tearDown(self): - self.root.destroy() - init_common(None,None) - pass - - def test000(self): - root=self.root - code="ASTER" - splash.init_splash(root,code=code,titre="Lancement d'EFICAS pour %s" %code) - splash._splash.configure(text="Chargement d'EFICAS en cours.\n Veuillez patienter ...") - app=eficas.EFICAS(root,code=code) - j=app.bureau.newJDC() - jdcdisplay=app.bureau.JDCDisplay_courant - init_common(root,jdcdisplay) - - # commande DEBUT - co=j.addEntite("DEBUT",0) - # commande FIN - co=j.addEntite("FIN",1) - - jdctree=jdcdisplay.tree.tree.children[0] - panel=select_child("DEBUT",jdctree) - panel=create_command("LIRE_MAILLAGE",panel) - panel=nomme_concept("MA",panel) - - panel=create_command("AFFE_MODELE",panel) - command=panel.node - select_child("MAILLAGE",command) - panel=select_node(command) - panel=create_mocle("AFFE",panel) - parent=panel.node - panel=select_child("PHENOMENE",parent) - choose_valeur("MECANIQUE",panel) - panel=select_child("b_mecanique",parent) - panel=select_child("MODELISATION",panel.node) - add_valeur_into("3D",panel) - add_valeur_into("3D_FLUIDE",panel) - valider_valeur(panel) - panel=select_node(parent) - panel=create_mocle("TOUT",panel) - choose_valeur("OUI",panel) - panel=select_node(command) - panel=nomme_concept("MO",panel) - - assert j.isValid(),j.report() diff --git a/Tests/testihm9/testihm3.py b/Tests/testihm9/testihm3.py deleted file mode 100644 index e95c7def..00000000 --- a/Tests/testihm9/testihm3.py +++ /dev/null @@ -1,93 +0,0 @@ -# -*- coding: utf-8 -*- -# Modules Python -import os -import unittest -import difflib -import compare -import sys -import Tkinter - -# Modules Eficas -import prefs -from Editeur import session -from InterfaceTK import eficas_go,splash,eficas,images -from common import * - - -class TestCase(unittest.TestCase): - def setUp(self): - self.root = Tkinter.Tk() - images.update_cache() - # Analyse des arguments de la ligne de commande - options=session.parse([]) - options.cata="petit" - pass - - def tearDown(self): - self.root.destroy() - init_common(None,None) - pass - - def test000(self): - root=self.root - code="ASTER" - splash.init_splash(root,code=code,titre="Lancement d'EFICAS pour %s" %code) - splash._splash.configure(text="Chargement d'EFICAS en cours.\n Veuillez patienter ...") - app=eficas.EFICAS(root,code=code) - j=app.bureau.newJDC() - jdcdisplay=app.bureau.JDCDisplay_courant - init_common(root,jdcdisplay) - - # commande DEBUT - co=j.addEntite("DEBUT",0) - # commande FIN - co=j.addEntite("FIN",1) - - jdctree=jdcdisplay.tree.tree.children[0] - panel=select_child("DEBUT",jdctree) - panel=create_command("TESTS_VALID",panel) - command=panel.node - panel=select_child("LongStr",command) - set_valeur("aaa",panel) - panel=select_child("ListStr",command) - add_valeur("aaa",panel) - add_valeur("bbbb,ccc",panel) - valider_valeur(panel) - panel=select_child("PairVal",command) - add_valeur(2,panel) - add_valeur("4,6",panel) - valider_valeur(panel) - panel=select_child("RangeVal",command) - set_valeur(4,panel) - panel=select_child("CardVal",command) - add_valeur("4,6,5,7",panel) - valider_valeur(panel) - panel=select_child("EnumVal",command) - choose_valeur(3,panel) - panel=select_child("OrdList",command) - add_valeur("4,6,5,7",panel) - valider_valeur(panel) - panel=select_child("OrdList2",command) - add_valeur_into(2,panel) - valider_valeur(panel) - panel=select_child("TypeVal",command) - set_valeur(5,panel) - panel=select_child("Compul",command) - add_valeur("2",panel) - add_valeur("1",panel) - valider_valeur(panel) - panel=select_child("CompulInto",command) - add_valeur_into(2,panel) - add_valeur_into(1,panel) - valider_valeur(panel) - panel=select_child("Norep",command) - add_valeur("2",panel) - valider_valeur(panel) - panel=select_child("NorepInto",command) - add_valeur_into(2,panel) - valider_valeur(panel) - - panel=select_node(command) - panel=nomme_concept("MA",panel) - - assert j.isValid(),j.report() diff --git a/Tests/testihm9/testihm4.py b/Tests/testihm9/testihm4.py deleted file mode 100644 index c9a0bfa8..00000000 --- a/Tests/testihm9/testihm4.py +++ /dev/null @@ -1,55 +0,0 @@ -# -*- coding: utf-8 -*- -# Modules Python -import os -import unittest -import difflib -import compare -import sys -import Tkinter - -# Modules Eficas -import prefs -from Editeur import session -from InterfaceTK import eficas_go,splash,eficas,images -from common import * - - -class TestCase(unittest.TestCase): - def setUp(self): - self.root = Tkinter.Tk() - images.update_cache() - # Analyse des arguments de la ligne de commande - options=session.parse([]) - options.cata="v9" - pass - - def tearDown(self): - self.root.destroy() - init_common(None,None) - pass - - def test000(self): - root=self.root - code="ASTER" - splash.init_splash(root,code=code,titre="Lancement d'EFICAS pour %s" %code) - splash._splash.configure(text="Chargement d'EFICAS en cours.\n Veuillez patienter ...") - app=eficas.EFICAS(root,code=code) - file=os.path.join(prefs.INSTALLDIR,"Tests/testelem/az.comm") - j=app.bureau.openJDC(file=file) - jdcdisplay=app.bureau.JDCDisplay_courant - init_common(root,jdcdisplay) - jdctree=jdcdisplay.tree.tree.children[0] - #commentariser commande MACRO_MATR_ASSE - panel=select_child("MACRO_MATR_ASSE",jdctree) - panel=comment_command(panel) - #decommentariser commande MACRO_MATR_ASSE - panel=unComment_command(panel) - #creation commande commentée - panel=create_command("LIRE_MAILLAGE",panel) - panel=comment_command(panel) - panel=change_commandcomm("mm=LIRE_MAILLAGE(INFO=2,UNITE=21)",panel) - panel=unComment_command(panel) - panel=select_child("DEFI_FONCTION",jdctree) - delete_node(panel) - - assert j.isValid(),j.report() diff --git a/Tools/generateStructure.py b/Tools/generateStructure.py deleted file mode 100755 index 3bcfdc3f..00000000 --- a/Tools/generateStructure.py +++ /dev/null @@ -1,33 +0,0 @@ -#!/usr/bin/env python -# -*- coding: utf-8 -*- -# Copyright (C) 2007-2013 EDF R&D -# -# 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 -# -""" - cree le .xsd associe au .py - generateXSD.py -c leCatalogueAVECSONNOMCOMPLET POUR TROUVER LE DRIVER - 23 avril -""" -# Modules Python -# Modules Eficas -import sys -import os -sys.path.append(os.path.join(os.path.abspath(os.path.dirname(__file__)),'..')) - -from InterfaceQT4 import eficas_go -eficas_go.genereStructure(code='NonConnu') diff --git a/Tools/generateXML.py b/Tools/generateXML.py deleted file mode 100755 index c67da453..00000000 --- a/Tools/generateXML.py +++ /dev/null @@ -1,36 +0,0 @@ -#!/usr/bin/env python -# -*- coding: utf-8 -*- -# Copyright (C) 2007-2013 EDF R&D -# -# 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 -# -""" -"" - cree le .xml associe au .comm - generateXML.py -c leCatalogue le.comm - 23 avril - -""" -# Modules Python -# Modules Eficas - -import sys -import os -sys.path.append(os.path.join(os.path.abspath(os.path.dirname(__file__)),'../')) - -from InterfaceQT4 import eficas_go -eficas_go.genereXML(code='NonConnu') diff --git a/Tools/generateXSD.py b/Tools/generateXSD.py deleted file mode 100755 index 3f8ad835..00000000 --- a/Tools/generateXSD.py +++ /dev/null @@ -1,33 +0,0 @@ -#!/usr/bin/env python -# -*- coding: utf-8 -*- -# Copyright (C) 2007-2013 EDF R&D -# -# 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 -# -""" - cree le .xsd associe au .py - generateXSD.py -c leCatalogueAVECSONNOMCOMPLET POUR TROUVER LE DRIVER - 23 avril -""" -# Modules Python -# Modules Eficas -import sys -import os -sys.path.append(os.path.join(os.path.abspath(os.path.dirname(__file__)),'..')) - -from InterfaceQT4 import eficas_go -eficas_go.genereXSD(code='NonConnu') diff --git a/Tools/qtEficasGui.py b/Tools/qtEficasGui.py deleted file mode 100755 index f4315a47..00000000 --- a/Tools/qtEficasGui.py +++ /dev/null @@ -1,46 +0,0 @@ -#!/usr/bin/env python -# -*- coding: utf-8 -*- -# Copyright (C) 2007-2013 EDF R&D -# -# 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 -# -""" - Ce module sert a lancer EFICAS contre l avis de Pascale sans directory associee - Dans ce cas on peut taper - a) de n importe ou sans avoir rien positionne : - /leCheminVersTools/qtEficasGui.py -c leFichierCatalogueAvecSonPathComplet - b) En ayant positionne le PYTHONPATH avec la directory qui contient ce qu il faut - c est a dire le prefs.py et prefs_leCode.py - exemple pour Adao - /leCheminVersTools/qtEficasGui.py -k Adao - /leCheminVersTools/qtEficasGui.py -k Adao -v V95 - version du 23 avril - -""" -# Modules Python -# Modules Eficas - -import sys -import os - -repIni=os.path.dirname(os.path.abspath(__file__)) -INSTALLDIR=os.path.join(repIni,'..') -sys.path[:0]=[INSTALLDIR] -#sys.path.append(os.path.join(os.path.abspath(os.path.dirname(__file__)),'../..')) - -from InterfaceQT4 import eficas_go -eficas_go.lanceEficas(code='NonConnu') diff --git a/Tools/validateDataSet.py b/Tools/validateDataSet.py deleted file mode 100755 index 0ba40437..00000000 --- a/Tools/validateDataSet.py +++ /dev/null @@ -1,36 +0,0 @@ -#!/usr/bin/env python -# -*- coding: utf-8 -*- -# Copyright (C) 2007-2013 EDF R&D -# -# 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 -# -""" -"" - cree le .xml associe au .comm - generateXML.py -c leCatalogue le.comm - 23 avril - -""" -# Modules Python -# Modules Eficas - -import sys -import os -sys.path.append(os.path.join(os.path.abspath(os.path.dirname(__file__)),'../')) - -from InterfaceQT4 import eficas_go -eficas_go.validateDataSet(code='NonConnu') diff --git a/Traducteur/CMakeLists.txt b/Traducteur/CMakeLists.txt deleted file mode 100644 index d1c51c80..00000000 --- a/Traducteur/CMakeLists.txt +++ /dev/null @@ -1,34 +0,0 @@ -# -*- coding: utf-8 -*- -# CONFIGURATION MANAGEMENT OF EDF VERSION -# ====================================================================== -# COPYRIGHT (C) 1991 - 2002 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# -# -# ====================================================================== - -# Installation de tous les fichiers Python, texte et images du repertoire et des sous-repertoires (sauf CVS) -install ( - FILES - calcG.py changeValeur.py dictErreurs.py __init__.py inseremocle.py - load.py log.py mocles.py movemocle.py parseur.py regles.py removemocle.py - renamemocle.py traduitV7V8.py traduitV8V9.py traduitV9V10.py utils.py - visiteur.py - DESTINATION ${CMAKE_INSTALL_PREFIX}/Traducteur - ) - -### Local Variables: -### mode: cmake -### End: diff --git a/Traducteur/__init__.py b/Traducteur/__init__.py deleted file mode 100644 index e4044aec..00000000 --- a/Traducteur/__init__.py +++ /dev/null @@ -1,19 +0,0 @@ -# -*- coding: utf-8 -*- -# Copyright (C) 2007-2017 EDF R&D -# -# 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 -# diff --git a/Traducteur/calcG.py b/Traducteur/calcG.py deleted file mode 100644 index 2549826d..00000000 --- a/Traducteur/calcG.py +++ /dev/null @@ -1,155 +0,0 @@ -#### -*- coding: utf-8 -*- -# Copyright (C) 2007-2017 EDF R&D -# -# 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 -# -from Traducteur.parseur import FactNode -from Traducteur.load import jdcSet -import logging - -dict_commande={} -dict_contexte={} -dict_contexte_option={} - -import sys -#-------------------------------------------------------------------------- -def traitementRayon(jdc): -#-------------------------------------------------------------------------- - - if "DEFI_FONCTION" not in jdcSet : return - for c in jdc.root.childNodes: - if c.name != "DEFI_FONCTION" : continue - monTexte=jdc.getLines()[c.lineno-1] - monNomVariable=monTexte.split("=")[0] - aExecuter=monNomVariable+'=0' - dict_commande[monNomVariable]=c - exec aExecuter in dict_contexte - liste_MC=(("CALC_G","R_INF_FO"),("CALC_G","R_SUP_FO"),("CALC_G","MODULE_FO")) - liste_achanger = chercheValeurSelonGenea2 (jdc,liste_MC) - liste_MC=(("CALC_THETA","THETA_3D","R_INF_FO"),("CALC_THETA","THETA_3D","R_SUP_FO"),("CALC_THETA","THETA_3D","MODULE_FO")) - liste_achanger2 = chercheValeurSelonGenea3 (jdc,liste_MC) - liste_achanger=liste_achanger+liste_achanger2 - for item in liste_achanger : - commande=dict_commande[item] - changeValeurABSCNiveau1(commande,jdc) - -#---------------------------------- -def changeValeurABSCNiveau1(c,jdc): -#---------------------------------- - for child in c.childNodes: - if child.name != "NOM_PARA":continue - MonTexte=child.getText(jdc) - if len(MonTexte.splitlines()) > 1 : - print "Le Traducteur ne sait pas gerer" - assert(0) - MonTexte=jdc.getLines()[child.lineno-1] - debut=MonTexte.find("NOM_PARA") - debChaine=MonTexte[0:debut+8] - ancien=MonTexte[debut+8:] - egal,nomval,fin=ancien.split("'",2) - nouvelleLigne=debChaine+egal+"'ABSC'"+fin - jdc.getLines()[child.lineno-1]=nouvelleLigne - logging.info("renommage parametre ABSC ligne %d",child.lineno-1) - return - -#-------------------------------------------------------------------------- -def chercheValeurSelonGenea2(jdc,liste_cherche_valeur): -# -#-------------------------------------------------------------------------- - liste_valeurs=[] - for genea in liste_cherche_valeur: - profondeur=len(genea) - if profondeur > 2 : - print "la methode chercheValeurSelonGenea ne convient" - print "pas pour cette genealogie" - assert(0) - command=genea[0] - fact=genea[1] - - for c in jdc.root.childNodes: - if c.name != command:continue - for mc in c.childNodes: - if mc.name != fact:continue - MonTexte=mc.getText(jdc) - try : - #if ( 1) : - exec MonTexte in dict_contexte - monNomVar=MonTexte.split("=")[1] - monNomVarOk=monNomVar - i=-1 - while (monNomVar[i] == "," or monNomVar[i] == " ") : - monNomVarOk=monNomVar[0:i] - i=i-1 - monNomVar=monNomVarOk - i=0 - while (monNomVar[i] == " ") : - monNomVarOk=monNomVar[1:] - i=i+1 - monNomVar=monNomVarOk - if monNomVar not in liste_valeurs : liste_valeurs.append(monNomVar) - except : - #else : - logging.error("Pb pour renommer le parametre ABSC dans defi_fonctions selon calcg") - pass - return liste_valeurs - - -#-------------------------------------------------------------------------- -def chercheValeurSelonGenea3(jdc,liste_cherche_valeur): -#-------------------------------------------------------------------------- - liste_valeurs=[] - for genea in liste_cherche_valeur: - profondeur=len(genea) - if profondeur > 3 : - print "la methode chercheValeurSelonGenea ne convient" - print "pas pour cette genealogie" - assert(0) - command=genea[0] - fact=genea[1] - mc=genea[2] - - for c in jdc.root.childNodes: - if c.name != command : continue - for mcf in c.childNodes: - if mcf.name != fact : continue - l=mcf.childNodes[:] - for ll in l: - for lc in ll.childNodes: - if lc.name !=mc : continue - MonTexte=lc.getText(jdc) - try : - #if ( 1) : - exec MonTexte in dict_contexte - #monNomVar=MonTexte.split("=")[1][0:-1] - monNomVar=MonTexte.split("=")[1] - monNomVarOk=monNomVar - i=-1 - while (monNomVar[i] == "," or monNomVar[i] == " ") : - monNomVarOk=monNomVar[0:i] - i=i-1 - monNomVar=monNomVarOk - i=0 - while (monNomVar[i] == " ") : - monNomVarOk=monNomVar[1:] - i=i+1 - monNomVar=monNomVarOk - if monNomVar not in liste_valeurs : liste_valeurs.append(monNomVar) - except : - #else : - logging.error("Pb pour renommer le parametre ABSC dans defi_fonctions selon calcg") - pass - return liste_valeurs diff --git a/Traducteur/changeValeur.py b/Traducteur/changeValeur.py deleted file mode 100644 index 50b0c9c9..00000000 --- a/Traducteur/changeValeur.py +++ /dev/null @@ -1,317 +0,0 @@ -# -*- coding: utf-8 -*- -# Copyright (C) 2007-2017 EDF R&D -# -# 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 -# -from Traducteur.utils import lineToDict -import logging -from Traducteur.dictErreurs import ecritErreur -from Traducteur.load import jdcSet -from Traducteur.renamemocle import decaleLignesdeNBlancs -from Traducteur.removemocle import removeMotCleInFact -from Traducteur import regles - - -#-------------------------------------------------------------------------- -def changementValeur(jdc,command,motcle,DictNouvVal,liste=(),defaut=0): -#-------------------------------------------------------------------------- - if command not in jdcSet : return - boolChange=0 - for c in jdc.root.childNodes: - if c.name != command : continue - trouveUnMC=0 - for mc in c.childNodes: - if mc.name != motcle : continue - trouveUnMC=1 - TexteMC=mc.getText(jdc) - liste_ligne_MC=TexteMC.splitlines() - indexLigneGlob=mc.lineno-1 - indexTexteMC=0 - while indexLigneGlob < mc.endline : - if indexTexteMC > len(liste_ligne_MC)-1 : break - MaLigneGlob=jdc.getLines()[indexLigneGlob] - MaLigneTexte=liste_ligne_MC[indexTexteMC] - for Valeur in DictNouvVal : - MaLigneTexteDict=lineToDict(MaLigneTexte) - trouvecol=MaLigneTexte.find(Valeur) - if trouvecol > -1: - trouve=(Valeur==MaLigneTexteDict[trouvecol]) - else: - trouve=False - if trouve: - debut=MaLigneGlob.find(motcle) - if debut==-1 : debut=0 - Nouveau=MaLigneGlob[debut:].replace(Valeur,DictNouvVal[Valeur]) - Nouveau=MaLigneGlob[0:debut]+Nouveau - jdc.getLines()[indexLigneGlob]=Nouveau - MaLigneTexte=Nouveau # raccourci honteux mais ... - MaLigneGlob=Nouveau - if Valeur in liste : - ecritErreur((command,motcle,Valeur),indexLigneGlob) - else : - logging.info("Changement de %s par %s dans %s ligne %d",Valeur,DictNouvVal[Valeur],command,indexLigneGlob) - boolChange=1 - indexLigneGlob=indexLigneGlob+1 - indexTexteMC=indexTexteMC+1 - if (trouveUnMC == 0) and ( defaut == 1): - ecritErreur((command,motcle,"DEFAUT"),c.lineno) - if boolChange : jdc.reset(jdc.getSource()) - -#-------------------------------------------------------------------------------- -def changementValeurDsMCF(jdc,command,fact,motcle,DictNouvVal,liste=(),ensemble=regles.SansRegle,defaut=0): -#-------------------------------------------------------------------------------- - - if command not in jdcSet : return - boolChange=0 - for c in jdc.root.childNodes: - if c.name != command : continue - for mcF in c.childNodes: - if mcF.name != fact : continue - l=mcF.childNodes[:] - l.reverse() - for ll in l: - trouveUnMC=0 - for mc in ll.childNodes: - if mc.name != motcle:continue - if ensemble.verif(c) == 0 : continue - trouveUnMC=1 - TexteMC=mc.getText(jdc) - liste_ligne_MC=TexteMC.splitlines() - indexLigneGlob=mc.lineno-1 - indexTexteMC=0 - while indexLigneGlob < mc.endline : - if indexTexteMC > len(liste_ligne_MC)-1 : break - MaLigneGlob=jdc.getLines()[indexLigneGlob] - MaLigneTexte=liste_ligne_MC[indexTexteMC] - for Valeur in DictNouvVal : - MaLigneTexteDict=lineToDict(MaLigneTexte) - trouvecol=MaLigneTexte.find(Valeur) - if trouvecol > -1: - trouve=(Valeur==MaLigneTexteDict[trouvecol]) - else: - trouve=False - if trouve: - debut=MaLigneGlob.find(motcle) - if debut==-1 : debut=0 - Nouveau=MaLigneGlob[debut:].replace(Valeur,DictNouvVal[Valeur]) - Nouveau=MaLigneGlob[0:debut]+Nouveau - jdc.getLines()[indexLigneGlob]=Nouveau - MaLigneTexte=Nouveau # raccourci honteux mais ... - MaLigneGlob=Nouveau - if Valeur in liste : - ecritErreur((command,fact,motcle,Valeur),indexLigneGlob) - else : - logging.info("Changement de %s par %s dans %s ligne %d",Valeur,DictNouvVal[Valeur],command,indexLigneGlob) - boolChange=1 - indexLigneGlob=indexLigneGlob+1 - indexTexteMC=indexTexteMC+1 - if (trouveUnMC == 0) and ( defaut == 1): - logging.warning("OPTION (defaut) de CALCG a verifier ligne %s" ,c.lineno ) - ecritErreur((command,fact,motcle,"DEFAUT"),c.lineno) - if boolChange : jdc.reset(jdc.getSource()) - -#-------------------------------------------------------------------------------- -def changementValeurDsMCFSiRegle(jdc,command,fact,motcle,DictNouvVal,liste_regles,defaut=0): -#-------------------------------------------------------------------------------- - if command not in jdcSet : return - mesRegles=regles.ensembleRegles(liste_regles) - liste=() - changementValeurDsMCF(jdc,command,fact,motcle,DictNouvVal,liste,mesRegles,defaut) - -#--------------------------------------------------------------------------------------- -def changementValeurDsMCFAvecAvertissement(jdc, command, fact,motcle,DictNouvVal,liste): -#--------------------------------------------------------------------------------------- - if command not in jdcSet : return - defaut=0 - if liste[-1] == "defaut" : - defaut=1 - changementValeurDsMCF(jdc,command,fact,motcle,DictNouvVal,liste,defaut) - -#-------------------------------------------------------------------------- -def changementValeurAvecAvertissement(jdc, command,motcle,DictNouvVal,liste): -#-------------------------------------------------------------------------- - if command not in jdcSet : return - defaut=0 - if liste[-1] == "defaut" : - defaut=1 - changementValeur(jdc,command,motcle,DictNouvVal,liste,defaut) - -#-------------------------------------------------------------------------- -def suppressionValeurs(jdc, command,motcle,liste): -#-------------------------------------------------------------------------- - - if command not in jdcSet : return - boolChange=0 - for c in jdc.root.childNodes: - if c.name != command : continue - for mc in c.childNodes: - if mc.name != motcle : continue - indexLigneGlob=mc.lineno-1 - while indexLigneGlob < mc.endline-1 : - MaLigneTexte = jdc.getLines()[indexLigneGlob] - MaLigne=MaLigneTexte - for Valeur in liste : - debutMC =MaLigne.find(motcle) - if debutMC ==-1 : debutMC=0 - debut1=MaLigne[0:debutMC] - chercheLigne=MaLigne[debutMC:] - trouve=chercheLigne.find(Valeur) - premier=0 - if trouve > 1 : #on a au moins une quote - debut=debut1 + chercheLigne[0:trouve-1] - index = -1 - while (-1 * index) < len(debut) : - if (debut[index] == "(") : - premier = 1 - if index == -1 : - index=len(debut) - else : - index=index+1 - break - if (debut[index] == "," ) : - break - if (debut[index] != " " ) : - assert(0) - index = index -1 - debLigne = debut[0:index] - fin=trouve+len(Valeur)+1 - if premier == 1 and chercheLigne[fin] == ',': fin = fin + 1 # on supprime la , - finLigne = chercheLigne[fin:] - MaLigne_tmp=debLigne+finLigne - # traitement ligne commancant par , - if len(MaLigne_tmp.strip()) > 0 : - if MaLigne_tmp.strip()[0]==',' : - MaLigne=MaLigne_tmp.strip()[1:] - else : - MaLigne=MaLigne_tmp[0:] - else : - MaLigne=MaLigne_tmp[0:] - boolChange=1 - jdc.getLines()[indexLigneGlob]=MaLigne - indexLigneGlob=indexLigneGlob+1 - if boolChange : jdc.reset(jdc.getSource()) - -#---------------------------------------------- -def appelleMacroSelonValeurConcept(jdc,macro,genea): -#---------------------------------------------- - if macro not in jdcSet : return - boolChange=0 - fact=genea[0] - motcle=genea[1] - chaine="CO" - for c in jdc.root.childNodes: - if c.name != macro : continue - for mcF in c.childNodes: - if mcF.name != fact : continue - l=mcF.childNodes[:] - l.reverse() - for ll in l: - trouveValeur=0 - for mc in ll.childNodes: - if mc.name != motcle:continue - TexteMC=mc.getText(jdc) - liste_ligne_MC=TexteMC.splitlines() - indexLigneGlob=mc.lineno-2 - trouveTexteMC=0 - trouveegal=0 - trouvechaine=0 - trouveparent=0 - trouvequote=0 - while indexLigneGlob < mc.endline : - indexLigneGlob=indexLigneGlob+1 - MaLigneTexte=jdc.getLines()[indexLigneGlob] - - # on commence par chercher TABLE par exemple - # si on ne trouve pas on passe a la ligne suivante - if ( trouveTexteMC == 0 ) : - indice=MaLigneTexte.find(motcle) - if indice < 0 : continue - trouveTexteMC=1 - else : - indice=0 - - # on cherche = - aChercher=MaLigneTexte[indice:] - if (trouveegal == 0 ): - indice=aChercher.find("=") - if indice < 0 : continue - trouveegal = 1 - else : - indice = 0 - - # on cherche CO - aChercher2=aChercher[indice:] - if (trouvechaine == 0 ): - indice=aChercher2.find(chaine) - if indice < 0 : continue - trouvechaine = 1 - else : - indice = 0 - - #on cherche ( - aChercher3=aChercher2[indice:] - if (trouveparent == 0 ): - indice=aChercher3.find('(') - if indice < 0 : continue - trouveparent = 1 - else : - indice = 0 - - #on cherche la ' - aChercher4=aChercher3[indice:] - if (trouvequote == 0 ): - indice=aChercher4.find("'") - indice2=aChercher4.find('"') - if (indice < 0) and (indice2 < 0): continue - if (indice < 0) : indice=indice2 - trouvequote = 1 - else : - indice = 0 - - trouveValeur=1 - aChercher5=aChercher4[indice+1:] - indice=aChercher5.find("'") - if indice < 0 : indice=aChercher5.find('"') - valeur=aChercher5[:indice] - break - - if trouveValeur==0 : - logging.error("Pb de traduction pour MACR_LIGNE_COUPE : Pas de nom de Concept identifiable") - return - - if boolChange : - jdc.reset(jdc.getSource()) - logging.error("Pb du traduction pour MACR_LIGNE_COUPE : Deux noms de Concept possibles") - return - - boolChange=1 - ligneaTraiter=jdc.getLines()[c.lineno-1] - debut=ligneaTraiter[0:c.colno] - suite=valeur+"=" - fin=ligneaTraiter[c.colno:] - ligne=debut+suite+fin - jdc.getLines()[c.lineno-1]=ligne - nbBlanc=len(valeur)+1 - if c.lineno < c.endline: - decaleLignesdeNBlancs(jdc,c.lineno,c.endline-1,nbBlanc) - if boolChange : jdc.reset(jdc.getSource()) - -#---------------------------------------------- -def changeTouteValeur(jdc,command,motcle,DictNouvVal,liste=(),defaut=0): -#---------------------------------------------- - if macro not in jdcSet : return - boolChange=0 diff --git a/Traducteur/dictErreurs.py b/Traducteur/dictErreurs.py deleted file mode 100644 index 82fc058f..00000000 --- a/Traducteur/dictErreurs.py +++ /dev/null @@ -1,110 +0,0 @@ -# -*- coding: utf-8 -*- -# Copyright (C) 2007-2017 EDF R&D -# -# 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 logging -from Traducteur.load import jdcSet - - -def ecritErreur(listeGena,ligne=None) : - from sys import dict_erreurs - maCle="" - for Mot in listeGena : - maCle=maCle+"_"+Mot - #try : - if ( 1 == 1) : - maClef=maCle[1:] - if maClef in dict_erreurs : - if ligne != None : - logging.warning("ligne %d : %s ",ligne,dict_erreurs[maClef]) - else : - logging.warning("%s",dict_erreurs[maClef]) - else : - maCle="" - for Mot in listeGena[:-1] : - maCle=maCle+"_"+Mot - maClef=maCle[1:] - maClef=maCle+"_"+"VALEUR" - if maClef in dict_erreurs : - if ligne != None : - logging.warning("ligne %d : %s ",ligne,dict_erreurs[maClef]) - else : - logging.warning("%s",dict_erreurs[maClef]) - #except : - # pass - -def genereErreurPourCommande(jdc,listeCommande) : - commands= jdc.root.childNodes[:] - commands.reverse() - for c in commands: - if type(listeCommande)==list: - for Mot in listeCommande : - if c.name != Mot :continue - ecritErreur((Mot,),c.lineno) - else: - if c.name != listeCommande :continue - ecritErreur((listeCommande,),c.lineno) - -def genereErreurMotCleInFact(jdc,command,fact,mocle): - for c in jdc.root.childNodes: - if c.name != command:continue - for mc in c.childNodes: - if mc.name != fact:continue - l=mc.childNodes[:] - for ll in l: - for n in ll.childNodes: - if n.name != mocle: - continue - else : - ecritErreur((command,fact,mocle,),c.lineno) - -def genereErreurMCF(jdc,command,fact): - for c in jdc.root.childNodes: - if c.name != command:continue - for mc in c.childNodes: - if mc.name != fact: - continue - else : - ecritErreur((command,fact,),c.lineno) - -def genereErreurValeur(jdc,command,fact,list_valeur): - for c in jdc.root.childNodes: - if c.name != command:continue - for mc in c.childNodes: - if mc.name != fact:continue - texte=mc.getText(jdc) - for valeur in list_valeur: - trouve=texte.find(valeur) - if trouve > -1 : - logging.warning("%s doit etre supprimee ou modifiee dans %s : ligne %d",valeur,c.name,mc.lineno) - -def genereErreurValeurDsMCF(jdc,command,fact,mocle,list_valeur): - for c in jdc.root.childNodes: - if c.name != command:continue - for mc in c.childNodes: - if mc.name != fact:continue - l=mc.childNodes[:] - for ll in l: - for n in ll.childNodes: - if n.name != mocle:continue - texte=n.getText(jdc) - for valeur in list_valeur: - trouve=texte.find(valeur) - if trouve > -1 : - logging.warning("%s doit etre supprimee ou modifiee dans %s : ligne %d",valeur,c.name,n.lineno) diff --git a/Traducteur/inseremocle.py b/Traducteur/inseremocle.py deleted file mode 100644 index 19dc1ceb..00000000 --- a/Traducteur/inseremocle.py +++ /dev/null @@ -1,289 +0,0 @@ -# -*- coding: utf-8 -*- -# Copyright (C) 2007-2017 EDF R&D -# -# 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 logging -from Traducteur.parseur import FactNode -from Traducteur.load import jdcSet -from Traducteur.dictErreurs import ecritErreur -from Traducteur import regles -debug=0 - - -#----------------------------------- -def insereMotCle(jdc,recepteur,texte): -#----------------------------------- -# appelle la methode selon la classe -# du recepteur - - if recepteur.name not in jdcSet : return - if recepteur.__class__.__name__ == "Command" : - if debug : print (" Ajout de ", texte, "dans la commande : " ,recepteur.name ) - insereMotCleDansCommande(jdc,recepteur,texte) - return - - -#-------------------------------------------- -def insereMotCleDansCommande(jdc,command,texte): -#--------------------------------------------- -# insere le texte comme 1er mot cle -# de la commande - if command.name not in jdcSet : return - if debug : print ("insereMotCle ", texte , " dans ", command.name) - numcol=chercheDebut1Mot(jdc,command) - if numcol > 0 : - jdc.splitLine(command.lineno,numcol) - indice = -1 - while texte[indice] == " " or texte[indice] == "\n": - indice = indice -1 - if texte[indice] != "," : texte=texte+"," - texteinfo=texte - texte=texte+'\n' - jdc.addLine(texte,command.lineno) - logging.info("Insertion de : %s ligne %d", texteinfo,command.lineno) - if numcol > 0 : # Les mots clefs etaient sur la meme ligne - jdc.joinLineandNext(command.lineno) - -#------------------------------------------------------------- -def insereMotCleDansFacteur(jdc,facteur,texte,plusieursFois=True): -#---------------------------------------------------------------- - if debug : print ("insereMotCle ", texte , " dans ", facteur.name) - - if texte[-1] == "\n" : texte=texte[0:-1] - ancien=jdc.getLine(facteur.lineno) - - # On va chercher la derniere ) pour ajouter avant - # on va verifier s il il y a un , avant - # si le texte ne finit pas par une "," - # on en met une - - indice = -1 - while texte[indice] == " " : - indice = indice -1 - if texte[indice] != "," : - texte=texte+"," - if (texte.find("#") > -1) and (texte.find("#") < texte.find(",")) : - texte=texte+"\n," - - texteinfo=texte - texte=texte+"\n" - - ligneaCouper=facteur.lineno - while ligneaCouper < facteur.endline + 1 : - trouve=0 - trouveF=0 - trouveP=0 - indiceDeCoupe=0 - while ancien.find("_F") > 0 : - longueur=len(ancien) - indice=ancien.find("_F") - indiceParcours=0 - # pour ne pas tenir compte des autres noms - # Attention si 2 MCF sur la meme ligne (la 1ere) - if trouveF == 0 : - if ((ligneaCouper!=facteur.lineno) or ((ancien.find(facteur.name) < indice ) or (ancien.find(facteur.name) < 0))) : - trouveF=1 - indiceParcours=indice + 2 - # attention pour regler DEFI_FONCTION .. - else : - indiceDeCoupe=indiceDeCoupe+indice+2 - ancien=ancien[indice +2:] - continue - if trouveF == 1 : - indiceDeCoupe=indiceDeCoupe+indice - # print "indice de Parcours" ,indiceParcours - # print ancien[indiceParcours] - # print ancien[indiceParcours+1] - # print ancien[indiceParcours+2] - while indiceParcours < longueur : - if ancien[indiceParcours] == "(" : - trouveP=1 - # print ("trouve". - break - if ancien[indiceParcours] != " " : - trouveP=0 - # print ("mouv") - break - indiceParcours = indiceParcours+1 - trouve = trouveP * trouveF - if trouve : break - ancien=ancien[indice+1:] - if trouve : - debut=indiceDeCoupe + 3 - if(jdc.getLine(ligneaCouper)[debut:]!="\n"): - jdc.splitLine(ligneaCouper,debut) - jdc.addLine(texte,ligneaCouper) - jdc.joinLineandNext(ligneaCouper) - logging.info("Insertion de %s ligne %d", texteinfo,ligneaCouper) - - # Gestion du cas particulier du mot clef facteur vide - if facteur.childNodes == []: - jdc.joinLineandNext(facteur.lineno) - - ligneaCouper=ligneaCouper+1 - ancien=jdc.getLine(ligneaCouper) - if not plusieursFois and trouve : break - - -#----------------------------------- -def chercheDebut1Mot(jdc,command): -#----------------------------------- -# Retourne le numero de colonne si le 1er mot clef est -# sur la meme ligne que le mot clef facteur -# -1 sinon - assert (command.childNodes != []) - debut=-1 - node1=command.childNodes[0] - if hasattr(node1,"lineno"): - if node1.lineno == command.lineno : - debut=node1.colno - else: - debut=chercheDebutFacteur(jdc,command) - if debut == -1 and debug : print ("attention!!! pb pour trouver le debut dans ", command) - return debut - -#----------------------------------- -def chercheDebutFacteur(jdc,facteur): -#----------------------------------- - debut=-1 - ligne=jdc.getLines()[facteur.lineno] - debut=ligne.find("_F") - if debut > -1 : debut=debut + 3 - return debut - - -#----------------------------------- -def chercheAlignement(jdc,command): -#----------------------------------- -# Retourne le nb de blanc -# pour aligner sur le 1er mot clef fils - assert (command.childNodes != []) - node1=command.childNodes[0] - nbBlanc=node1.colno - return " "*nbBlanc - -#--------------------------------------------------------------------------------------------------------- -def chercheOperInsereFacteur(jdc,nomcommande,nouveau,ensemble=regles.SansRegle, estunFacteur=1, erreur=0): -#-------------------------------------------------------------------------------------------------------- -# Cherche l oper -# cree le texte -# appelle insereMotCle pour ajouter le texte -# - boolChange=0 - if estunFacteur : - texte=nouveau+"=_F()," - else : - texte=nouveau - if nomcommande not in jdcSet : return - commands= jdc.root.childNodes[:] - commands.reverse() - for c in commands: - if c.name != nomcommande:continue - if ensemble.verif(c) == 0 : continue - if erreur : ecritErreur((nomcommande,nouveau),c.lineno) - boolChange=1 - insereMotCle(jdc,c,texte) - if boolChange : jdc.reset(jdc.getSource()) - -#---------------------------------------------------------------------------------------- -def chercheOperInsereFacteurSiRegle(jdc,nomcommande,nouveau,liste_regles, estunFacteur=1): -#---------------------------------------------------------------------------------------- -# Cherche l oper -# cree le texte -# appelle insereMotCle pour ajouter le texte -# - if nomcommande not in jdcSet : return - mesRegles=regles.ensembleRegles(liste_regles) - chercheOperInsereFacteur(jdc,nomcommande,nouveau,mesRegles,estunFacteur) - -#---------------------------------------------------------------------------------------- -def chercheOperInsereMotCleSiRegle(jdc,nomcommande,nouveau,liste_regles, estunFacteur=0): -#---------------------------------------------------------------------------------------- - if nomcommande not in jdcSet : return - mesRegles=regles.ensembleRegles(liste_regles) - chercheOperInsereFacteur(jdc,nomcommande,nouveau,mesRegles,estunFacteur) - - -#--------------------------------------------------------------------------------------------------------- -def chercheOperInsereFacteurSiRegleAvecAvertissement(jdc,nomcommande,nouveau,liste_regles, estunFacteur=1): -#--------------------------------------------------------------------------------------------------------- - if nomcommande not in jdcSet : return - mesRegles=regles.ensembleRegles(liste_regles) - chercheOperInsereFacteur(jdc,nomcommande,nouveau,mesRegles,estunFacteur,erreur=1) - -#------------------------------------------------------------------------------------------------- -def ajouteMotClefDansFacteur(jdc,commande,fact,nouveau,ensemble=regles.SansRegle, estunFacteur=0): -#------------------------------------------------------------------------------------------------- -# Cherche la commande -# Cherche le MCF -# cree le texte -# appelle insereMotCle pour ajouter le texte -# - if commande not in jdcSet : return - if estunFacteur : - texte=nouveau+"=_F()," - else : - texte=nouveau - commands= jdc.root.childNodes[:] - commands.reverse() - boolChange=0 - for c in commands: - if c.name != commande : continue - for mcF in c.childNodes: - if mcF.name != fact : continue - if ensemble.verif(c) == 0 : continue - boolChange=1 - insereMotCleDansFacteur(jdc,mcF,texte) - if boolChange : jdc.reset(jdc.getSource()) - -#------------------------------------------------------------------------------------------- -def ajouteMotClefDansFacteurSiRegle(jdc,commande,fact,nouveau,liste_regles,estunFacteur=0): -#------------------------------------------------------------------------------------------- -# - if commande not in jdcSet : return - mesRegles=regles.ensembleRegles(liste_regles) - ajouteMotClefDansFacteur(jdc,commande,fact,nouveau,mesRegles,estunFacteur) - -#------------------------------------------------------------------------------------------- -def ajouteMotClefDansFacteurCourantSiRegle(jdc,commande,fact,nouveau,liste_regles): -#------------------------------------------------------------------------------------------- -# - if commande not in jdcSet : return - ensemble=regles.ensembleRegles(liste_regles) - commands= jdc.root.childNodes[:] - commands.reverse() - boolChange=0 - for c in commands: - if c.name != commande : continue - for mcF in c.childNodes: - if mcF.name != fact : continue - l=mcF.childNodes[:] - l.reverse() - for ll in l: - if ensemble.verif(ll) == 0 : continue - boolChange=1 - n=ll.childNodes[0] - ligneaCouper=n.lineno-1 - numcol=n.colno - jdc.splitLine(ligneaCouper+1,numcol) - texte=nouveau+",\n" - jdc.addLine(texte,ligneaCouper+1) - logging.info("Insertion de %s dans %s : ligne %d", nouveau,c.name,ligneaCouper+1) - if numcol > 0 : - jdc.joinLineandNext(ligneaCouper+1) - if boolChange : jdc.reset(jdc.getSource()) diff --git a/Traducteur/load.py b/Traducteur/load.py deleted file mode 100644 index 97128e83..00000000 --- a/Traducteur/load.py +++ /dev/null @@ -1,147 +0,0 @@ -# -*- coding: utf-8 -*- -# Copyright (C) 2007-2017 EDF R&D -# -# 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 -import re -from Traducteur import parseur -from Traducteur.mocles import parseKeywords - -import sets -jdcSet=sets.Set() - - -class JDCTrad: - """Cet objet conserve toutes les informations relatives a un fichier de commandes .comm""" - - def __init__(self,src,atraiter): - #---------------------------------------- - self.atraiter=atraiter - self.init(src,atraiter) - commands= self.root.childNodes[:] - commands.reverse() - for c in commands: - jdcSet.add(c.name) - - def init(self,src,atraiter): - #--------------------------- - # construction de self.lines - self.root=parseur.parser(src,atraiter) - self.lines=src.splitlines(1) - - def parseKeywords(self): - #----------------------- - # construction de fils (cf mocles.py) - parseKeywords(self.root) - - def reset(self,src): - #----------------------- - # reconstruction - self.init(src,self.atraiter) - self.parseKeywords() - - def getSource(self): - #----------------------- - # retourne la concatenation de - # toutes les lignes - return "".join(self.getLines()) - - def getLine(self,linenum): - #----------------------- - # retourne la linenumieme ligne - return self.getLines()[linenum-1] - - def getLines(self): - #---------------------------- - # retourne toutes les lignes - return self.lines - - def addLine(self,ligne,numero) : - #---------------------------- - # insere le texte contenu dans ligne - # dans la liste self.lines au rang numero - Ldebut=self.lines[0:numero] - Lmilieu=[ligne,] - Lfin=self.lines[numero:] - self.lines=Ldebut+Lmilieu+Lfin - - - def splitLine(self,numeroLigne,numeroColonne) : - #---------------------------------------------- - # coupe la ligne numeroLigne en 2 a numeroColonne - # ajoute des blancs en debut de 2nde Ligne pour - # aligner - numeroLigne = numeroLigne -1 - Ldebut=self.lines[0:numeroLigne] - if len(self.lines) > numeroLigne : - Lfin=self.lines[numeroLigne+1:] - else : - Lfin=[] - Lsplit=self.lines[numeroLigne] - LigneSplitDebut=Lsplit[0:numeroColonne]+"\n" - LigneSplitFin=" "*numeroColonne+Lsplit[numeroColonne:] - Lmilieu=[LigneSplitDebut,LigneSplitFin] - - self.lines=Ldebut+Lmilieu+Lfin - - def joinLineandNext(self,numeroLigne) : - #-------------------------------------- - # concatene les lignes numeroLigne et numeroLigne +1 - # enleve les blancs de debut de la ligne (numeroLigne +1) - Ldebut=self.lines[0:numeroLigne-1] - if len(self.lines) > numeroLigne : - Lfin=self.lines[numeroLigne+1:] - else : - Lfin=[] - - ligneMilieuDeb=self.lines[numeroLigne - 1 ] - ligneMilieuDeb=ligneMilieuDeb[0:-1] - ligneMilieuFin=self.lines[numeroLigne] - for i in range(len(ligneMilieuFin)): - if ligneMilieuFin[i] != " " : - ligneMilieuFin=ligneMilieuFin[i:] - break - Lmilieu=[ligneMilieuDeb+ligneMilieuFin,] - - self.lines=Ldebut+Lmilieu+Lfin - - def supLignes(self,debut,fin): - #------------------------ - Ldebut=self.lines[0:debut-1] - Lfin=self.lines[fin:] - self.lines=Ldebut+Lfin - - def remplaceLine(self,numeroLigne,nouveauTexte) : - #------------------------------------------------ - self.lines[numeroLigne]=nouveauTexte - -def getJDC(filename,atraiter): -#---------------------------- -# lit le JDC - f=open(filename) - src=f.read() - f.close() - jdc=JDCTrad(src,atraiter) - return jdc - -def getJDCFromTexte(texte,atraiter): -#----------------------------------- -# lit le JDC - jdc=JDCTrad(texte,atraiter) - return jdc diff --git a/Traducteur/log.py b/Traducteur/log.py deleted file mode 100644 index 21c4ab61..00000000 --- a/Traducteur/log.py +++ /dev/null @@ -1,48 +0,0 @@ -# -*- coding: utf-8 -*- -# Copyright (C) 2007-2017 EDF R&D -# -# 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 logging -import os -logger=logging.getLogger() - -def initialise(flog=None): - if flog == None : - MonHome=os.environ['HOME'] - MaDir=MonHome+"/Eficas_install" - try : - os.mkdir(MaDir) - except : - pass - try : - os.listdir(MaDir) - flog=MaDir+"/convert.log" - except : - flog='/tmp/convert.log' - - hdlr=logging.FileHandler(flog,'w') - formatter = logging.Formatter('%(levelname)s: %(message)s') - hdlr.setFormatter(formatter) - logger.addHandler(hdlr) - logger.setLevel(logging.INFO) - return hdlr - - -def ferme (hdlr) : - logger.removeHandler(hdlr) diff --git a/Traducteur/mocles.py b/Traducteur/mocles.py deleted file mode 100644 index ad5d9bd4..00000000 --- a/Traducteur/mocles.py +++ /dev/null @@ -1,163 +0,0 @@ -# -*- coding: utf-8 -*- -# Copyright (C) 2007-2017 EDF R&D -# -# 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 compiler -import types -from Traducteur.parseur import Keyword, FactNode, lastParen, lastParen2,maskStringsAndComments -from Traducteur.visiteur import KeywordFinder, visitor -from Traducteur.utils import indexToCoordinates, lineToDict, dictToLine - -debug=0 - -#------------------------ -def parseFact(match,c,kw): -#------------------------ - submatch=match[2] - lastpar=match[0]+lastParen(c.src[match[0]:]) - if type(submatch[0][0]) ==types.IntType: - #mot cle facteur isole - no=FactNode() - kw.addChild(no) - for ii in range(len(submatch)-1): - e=submatch[ii] - x,y=indexToCoordinates(c.src,e[0]) - lineno=y+c.lineno - colno=x - x,y=indexToCoordinates(c.src,submatch[ii+1][0]) - endline=y+c.lineno - endcol=x - no.addChild(Keyword(e[1],lineno,colno,endline,endcol)) - #last one - e=submatch[-1] - x,y=indexToCoordinates(c.src,e[0]) - lineno=y+c.lineno - colno=x - x,y=indexToCoordinates(c.src,lastpar-1) - endline=y+c.lineno - endcol=x - no.addChild(Keyword(e[1],lineno,colno,endline,endcol)) - else: - #mot cle facteur multiple - ii=0 - for l in submatch: - lastpar=l[0][0]+lastParen2(c.src[l[0][0]:]) - ii=ii+1 - no=FactNode() - kw.addChild(no) - for j in range(len(l)-1): - e=l[j] - x,y=indexToCoordinates(c.src,e[0]) - lineno=y+c.lineno - colno=x - x,y=indexToCoordinates(c.src,l[j+1][0]) - endline=y+c.lineno - endcol=x - no.addChild(Keyword(e[1],lineno,colno,endline,endcol)) - #last one - e=l[-1] - x,y=indexToCoordinates(c.src,e[0]) - lineno=y+c.lineno - colno=x - x,y=indexToCoordinates(c.src,lastpar-1) - endline=y+c.lineno - endcol=x - no.addChild(Keyword(e[1],lineno,colno,endline,endcol)) - - -#----------------------- -def parseKeywords(root): -#----------------------- - """A partir d'un arbre contenant des commandes, ajoute les noeuds - fils correspondant aux mocles de la commande - """ - #print "parseKeywords" - #traceback.print_stack(limit=5) - - matchFinder=KeywordFinder() - - for c in root.childNodes: - maskedsrc=maskStringsAndComments(c.src) - #on supprime seulement les blancs du debut pour pouvoir compiler - #meme si la commande est sur plusieurs lignes seul le debut compte - ast=compiler.parse(c.src.lstrip()) - #print ast - #Ne pas supprimer les blancs du debut pour avoir les bons numeros de colonne - matchFinder.reset(maskedsrc) - visitor.walk(ast, matchFinder) - #print matchFinder.matches - if len(matchFinder.matches) > 1: - # plusieurs mocles trouves : - # un mocle commence au debut du keyword (matchFinder.matches[i][0]) - # et finit juste avant le keyword suivant - # (matchFinder.matches[i+1][0]]) - for i in range(len(matchFinder.matches)-1): - if debug:print "texte:",c.src[matchFinder.matches[i][0]:matchFinder.matches[i+1][0]] - x,y=indexToCoordinates(c.src,matchFinder.matches[i][0]) - lineno=y+c.lineno - colno=x - x,y=indexToCoordinates(c.src,matchFinder.matches[i+1][0]) - endline=y+c.lineno - endcol=x - if debug:print matchFinder.matches[i][0],matchFinder.matches[i][1],lineno,colno,endline,endcol - kw=Keyword(matchFinder.matches[i][1],lineno,colno,endline,endcol) - c.addChild(kw) - submatch= matchFinder.matches[i][2] - if submatch: - parseFact(matchFinder.matches[i],c,kw) - - # dernier mocle : - # il commence au debut du dernier keyword - # (matchFinder.matches[i+1][0]) et - # finit avant la parenthese fermante de la commande (c.lastParen) - - if debug:print "texte:",c.src[matchFinder.matches[i+1][0]:c.lastParen] - x,y=indexToCoordinates(c.src,matchFinder.matches[i+1][0]) - lineno=y+c.lineno - colno=x - x,y=indexToCoordinates(c.src,c.lastParen) - endline=y+c.lineno - endcol=x - if debug:print matchFinder.matches[i+1][0],matchFinder.matches[i+1][1],lineno,colno,endline,endcol - kw=Keyword(matchFinder.matches[i+1][1],lineno,colno,endline,endcol) - c.addChild(kw) - submatch= matchFinder.matches[i+1][2] - if submatch: - parseFact(matchFinder.matches[i+1],c,kw) - - elif len(matchFinder.matches) == 1: - #un seul mocle trouve : - # il commence au debut du keyword (matchFinder.matches[0][0]) et - # finit juste avant la parenthese fermante de la - # commande (c.lastParen) - if debug:print "texte:",c.src[matchFinder.matches[0][0]:c.lastParen] - x,y=indexToCoordinates(c.src,matchFinder.matches[0][0]) - lineno=y+c.lineno - colno=x - x,y=indexToCoordinates(c.src,c.lastParen) - endline=y+c.lineno - endcol=x - if debug:print matchFinder.matches[0][0],matchFinder.matches[0][1],lineno,colno,endline,endcol - kw=Keyword(matchFinder.matches[0][1],lineno,colno,endline,endcol) - c.addChild(kw) - submatch= matchFinder.matches[0][2] - if submatch: - parseFact(matchFinder.matches[0],c,kw) - else: - pass diff --git a/Traducteur/movemocle.py b/Traducteur/movemocle.py deleted file mode 100644 index b6b8d919..00000000 --- a/Traducteur/movemocle.py +++ /dev/null @@ -1,346 +0,0 @@ -# -*- coding: iso-8859-1 -*- -# Copyright (C) 2007-2017 EDF R&D -# -# 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 logging -from Traducteur import removemocle -from Traducteur import inseremocle -from Traducteur.parseur import lastParen -from Traducteur.load import jdcSet -debug=0 - -#----------------------------------------------------- -def moveMotCleFromFactToFather(jdc,command,fact,mocle): -#----------------------------------------------------- -# exemple type : IMPR_GENE - - if command not in jdcSet : return - boolChange=0 - commands= jdc.root.childNodes[:] - commands.reverse() - for c in commands: - if c.name != command:continue - boolchange_c=0 - for mc in c.childNodes: - if mc.name != fact:continue - l=mc.childNodes[:] - for ll in l: - for n in ll.childNodes: - if n.name != mocle:continue - # test boolchange_c :il faut le faire une seule fois par commande sinon duplication du mot clé - if boolchange_c != 0 :continue - if debug : print "Changement de place :", n.name, n.lineno, n.colno - MonTexte=n.getText(jdc); - boolChange=1 - boolchange_c=1 - inseremocle.insereMotCle(jdc,c,MonTexte) - logging.info("Changement de place %s ligne %s ",n.name, n.lineno) - - if boolChange : jdc.reset(jdc.getSource()) - removemocle.removeMotCleInFact(jdc,command,fact,mocle) - - -#---------------------------------------------------------------------------- -def moveMotCleFromFactToFactMulti(jdc,oper,factsource,mocle,liste_factcible): -#---------------------------------------------------------------------------- -# exemple type STAT_NON_LINE et RESI_INTER_RELA - for factcible in liste_factcible : - moveMotCleFromFactToFact(jdc,oper,factsource,mocle,factcible) - removemocle.removeMotCleInFact(jdc,oper,factsource,mocle) - - -#---------------------------------------------------------------------------- -def moveMotCleFromFactToFact(jdc,oper,factsource,mocle,factcible): -#---------------------------------------------------------------------------- - if oper not in jdcSet : return - if debug : print "moveMotCleFromFactToFact pour " ,oper,factsource,mocle,factcible - boolChange=0 - commands= jdc.root.childNodes[:] - commands.reverse() - for c in commands: - if c.name != oper : continue - cible=None - for mc in c.childNodes: - if mc.name != factcible : - continue - else : - cible=mc - break - if cible==None : - if debug : print "Pas de changement pour ", oper, " ", factsource, " ",mocle, "cible non trouvée" - continue - - for mc in c.childNodes: - source=None - if mc.name != factsource: - continue - else : - source=mc - break - if source==None : - if debug : print "Pas de changement pour ", oper, " ", factsource, " ",mocle, "source non trouvée" - continue - - if debug : print "Changement pour ", oper, " ", factsource, " ",mocle, "cible et source trouvées" - l=source.childNodes[:] - for ll in l: - for n in ll.childNodes: - if n.name != mocle:continue - MonTexte=n.getText(jdc); - inseremocle.insereMotCleDansFacteur(jdc,cible,MonTexte) - boolChange=1 - logging.info("Changement de place %s ligne %s vers %s",n.name, n.lineno, cible.name) - if boolChange : jdc.reset(jdc.getSource()) - removemocle.removeMotCleInFact(jdc,oper,factsource,mocle) - - - - -#----------------------------------------------------------------------- -def moveMotClefInOperToFact(jdc,oper,mocle,factcible,plusieursFois=True): -#----------------------------------------------------------------------- -# Attention le cas type est THETA_OLD dans calc_G - - if oper not in jdcSet : return - if debug : print "movemocleinoper pour " ,oper,mocle,factcible - boolChange=9 - commands= jdc.root.childNodes[:] - commands.reverse() - for c in commands: - if c.name != oper : continue - cible=None - for mc in c.childNodes: - if mc.name != factcible : - continue - else : - cible=mc - break - if cible==None : - if debug : print "Pas de changement pour ", oper, " ", factcible, " ", "cible non trouvée" - continue - - source=None - for mc in c.childNodes: - if mc.name != mocle: - continue - else : - source=mc - break - if source==None : - if debug : print "Pas de changement pour ", oper, " ", mocle, " source non trouvée" - continue - MonTexte=source.getText(jdc); - boolChange=1 - inseremocle.insereMotCleDansFacteur(jdc,cible,MonTexte,plusieursFois) - if boolChange : jdc.reset(jdc.getSource()) - removemocle.removeMotCle(jdc,oper,mocle) - -#------------------------------------------------------ -def copyMotClefInOperToFact(jdc,oper,mocle,factcible): -#------------------------------------------------------ - - if oper not in jdcSet : return - if debug : print "movemocleinoper pour " ,oper,mocle,factcible - boolChange=9 - commands= jdc.root.childNodes[:] - commands.reverse() - for c in commands: - if c.name != oper : continue - cible=None - for mc in c.childNodes: - if mc.name != factcible : - continue - else : - cible=mc - break - if cible==None : - if debug : print "Pas de changement pour ", oper, " ", factcible, " ", "cible non trouvée" - continue - - source=None - for mc in c.childNodes: - if mc.name != mocle: - continue - else : - source=mc - break - if source==None : - if debug : print "Pas de changement pour ", oper, " ", mocle, " source non trouvée" - continue - MonTexte=source.getText(jdc); - boolChange=1 - inseremocle.insereMotCleDansFacteur(jdc,cible,MonTexte) - if boolChange : jdc.reset(jdc.getSource()) - -#---------------------------------------------------------------------- -def moveMCFToCommand(jdc,command,factsource,commandcible,factcible): -#---------------------------------------------------------------------- -# exemple CONTACT en 10 -# CONTACT devient commande DEFI_CONTACT/ZONE -# - if command not in jdcSet : return - boolChange=0 - commands= jdc.root.childNodes[:] - commands.reverse() - for c in commands: - if c.name != command : continue - for mcF in c.childNodes: - if mcF.name != factsource : continue - l=mcF.getText(jdc) - texte=l.replace(factsource,factcible) - texte='xxxx='+commandcible+'('+texte+')\n' - jdc.splitLine(c.lineno,0) - jdc.addLine(texte,c.lineno) - logging.info("Deplacement de %s dans %s ligne %s",factsource,commandcible,c.lineno) - boolChange=1 - if boolChange : - jdc.reset(jdc.getSource()) - jdcSet.add(commandcible) - -#----------------------------------------------------- -def fusionMotCleToFact(jdc,command,listeMc,factcible,defaut=0): -#----------------------------------------------------- - if command not in jdcSet : return - boolChange=0 - commands= jdc.root.childNodes[:] - commands.reverse() - for c in commands: - if c.name != command : continue - list_val=[] - trouveUnMC=0 - for mc in c.childNodes: - if mc.name not in listeMc : continue - val=mc.getText(jdc).split("=")[1].split(",")[0] - list_val.append(val) - trouveUnMC=1 - if trouveUnMC : - TexteMC=factcible+"=(" - for val in list_val : TexteMC=TexteMC+val+"," - TexteMC=TexteMC[:-1]+")," - inseremocle.insereMotCle(jdc,c,TexteMC) - jdc.reset(jdc.getSource()) - boolChange=1 - if boolChange : - jdc.reset(jdc.getSource()) - for mc in listeMc : - removemocle.removeMotCle(jdc,command,mc) - jdc.reset(jdc.getSource()) - -#----------------------------------------------------- -def fusionMotCleInFact(jdc,command,fact,listeMc,new_name,defaut=0): -#----------------------------------------------------- - if command not in jdcSet : return - boolChange=0 - commands= jdc.root.childNodes[:] - commands.reverse() - for c in commands: - if c.name != command : continue - list_val=[] - trouveUnMC=0 - for mcF in c.childNodes: - if mcF.name != fact: continue - for ll in mcF.childNodes[:]: - for mc in ll.childNodes: - if mc.name not in listeMc : continue - val=mc.getText(jdc).split("=")[1].split(",")[0] - list_val.append(val) - trouveUnMC=1 - if trouveUnMC : - TexteMC=new_name+"=("+",".join(list_val)+")," - inseremocle.insereMotCleDansFacteur(jdc,mcF,TexteMC) - jdc.reset(jdc.getSource()) - boolChange=1 - if boolChange : - jdc.reset(jdc.getSource()) - for mc in listeMc : - removemocle.removeMotCleInFact(jdc,command,fact,mc) - jdc.reset(jdc.getSource()) - -#----------------------------------------------------- -def fusionMCFToMCF(jdc,command,listeMcF,factcible,defaut=0): -#----------------------------------------------------- - if command not in jdcSet : return - boolChange=0 - commands= jdc.root.childNodes[:] - commands.reverse() - for c in commands: - if c.name != command : continue - list_val=[] - trouveUnMC=0 - TexteMC=factcible+'=(' - esp1=' '*len(TexteMC) - pp=0 - for mcF in c.childNodes: - if mcF.name not in listeMcF : continue - trouveUnMC=1 - val=mcF.getText(jdc) - # esp=esp1+(inseremocle.chercheDebutFacteur(jdc,mcF)-len(mcF.name))*' ' - esp=esp1+inseremocle.chercheAlignement(jdc,c) - # print len(esp) - for ll in mcF.childNodes[:]: - # if(pp>0): TexteMC+=esp - TexteMC+='_F(' - for mc in ll.childNodes: - val=mc.getText(jdc) - TexteMC+=val+'\n '+esp - # if('#' in val.split('\n')[-1]): TexteMC+='\n'+esp+' ' - lastkey = ''.join(val.split('=')[-1].split(' ')) - if((len(lastkey.split('(')) - len(lastkey.split(')'))) >= 0): - TexteMC += '),\n'+esp - # TexteMC+='),' - TexteMC+='),' - # print TexteMC - if(trouveUnMC): - inseremocle.insereMotCle(jdc,c,TexteMC) - jdc.reset(jdc.getSource()) - boolChange=1 - if boolChange : - jdc.reset(jdc.getSource()) - for mcF in listeMcF : - removemocle.removeMotCle(jdc,command,mcF) - jdc.reset(jdc.getSource()) - - - -#-------------------------------------------------------------------- -def eclaMotCleToFact(jdc,command,motcle,mot1,mot2,defaut=0): -#-------------------------------------------------------------------------- -# exemple STA10 pesanteur devient MCF avec eclatement des valeurs dans les MC -# On suppose que le MC est sur une seule ligne - if command not in jdcSet : return - boolChange=0 - for c in jdc.root.childNodes: - if c.name != command : continue - trouveUnMC=0 - for mc in c.childNodes: - if mc.name != motcle : continue - trouveUnMC=1 - TexteMC=mc.getText(jdc) - indexLigneGlob=mc.lineno-1 - MaLigneGlob=jdc.getLines()[indexLigneGlob] - Ligne=TexteMC.split('(')[1].split(')')[0].split(',') - motcle1=mot1+"="+Ligne[0] - motcle2=mot2+"=("+Ligne[1]+','+Ligne[2]+','+Ligne[3]+')' - texte=motcle+'=_F('+motcle1+','+motcle2+')' - num=lastParen(TexteMC) - Nouveau=MaLigneGlob.replace(TexteMC[0:num],texte) - jdc.getLines()[indexLigneGlob]=Nouveau - logging.info("Transformation de %s dans %s ligne %s",motcle,command,c.lineno) - boolChange=1 - if boolChange : jdc.reset(jdc.getSource()) diff --git a/Traducteur/parseur.py b/Traducteur/parseur.py deleted file mode 100644 index 3a525a2f..00000000 --- a/Traducteur/parseur.py +++ /dev/null @@ -1,273 +0,0 @@ -# -*- coding: utf-8 -*- -# Copyright (C) 2007-2017 EDF R&D -# -# 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 re,string -import compiler - -debug=0 - -escapedQuotesRE = re.compile(r"(\\\\|\\\"|\\\')") -stringsAndCommentsRE = \ - re.compile("(\"\"\".*?\"\"\"|'''.*?'''|\"[^\"]*\"|\'[^\']*\'|#.*?\n)", re.DOTALL) -allchars = string.maketrans("", "") -allcharsExceptNewline = allchars[: allchars.index('\n')]+allchars[allchars.index('\n')+1:] -allcharsExceptNewlineTranstable = string.maketrans(allcharsExceptNewline, '*'*len(allcharsExceptNewline)) - -#------------------------------ -def maskStringsAndComments(src): -#------------------------------ - """Remplace tous les caracteres dans commentaires et strings par des * """ - - src = escapedQuotesRE.sub("**", src) - allstrings = stringsAndCommentsRE.split(src) - # every odd element is a string or comment - for i in xrange(1, len(allstrings), 2): - if allstrings[i].startswith("'''")or allstrings[i].startswith('"""'): - allstrings[i] = allstrings[i][:3]+ \ - allstrings[i][3:-3].translate(allcharsExceptNewlineTranstable)+ \ - allstrings[i][-3:] - else: - allstrings[i] = allstrings[i][0]+ \ - allstrings[i][1:-1].translate(allcharsExceptNewlineTranstable)+ \ - allstrings[i][-1] - - return "".join(allstrings) - -#un nombre queconque de blancs,un nom,des blancs -pattern_oper = re.compile(r"^\s*(.*?=\s*)?([a-zA-Z_]\w*)(\s*)(\()(.*)",re.DOTALL) -pattern_proc = re.compile(r"^\s*([a-zA-Z_]\w*)(\s*)(\()(.*)",re.DOTALL) - -implicitContinuationChars = (('(', ')'), ('[', ']'), ('{', '}')) -linecontinueRE = re.compile(r"\\\s*(#.*)?$") -emptyHangingBraces = [0,0,0,0,0] - -#-------------------------------------- -class UnbalancedBracesException: pass -#-------------------------------------- - -#----------- -class Node: -#----------- - def __init__(self): - self.childNodes=[] - - def addChild(self,node): - self.childNodes.append(node) - - -#------------------- -class FactNode(Node): -#------------------- - pass - - -#------------------- -class JDCNode(Node): -#------------------- - def __init__(self,src): - Node.__init__(self) - self.src=src - -#------------------- -class Command(Node): -#------------------- - def __init__(self,name,lineno,colno,firstparen): - Node.__init__(self) - self.name=name - self.lineno=lineno - self.colno=colno - self.firstparen=firstparen - -#------------------- -class Keyword(Node): -#------------------- - def __init__(self,name,lineno,colno,endline,endcol): - Node.__init__(self) - self.name=name - self.lineno=lineno - self.colno=colno - self.endline=endline - self.endcol=endcol - - def getText(self,jdc): - if self.endline > self.lineno: - debut=jdc.getLines()[self.lineno-1][self.colno:] - fin = jdc.getLines()[self.endline-1][:self.endcol] - texte=debut - lignecourante=self.lineno - while lignecourante < self.endline -1 : - texte = texte + jdc.getLines()[lignecourante] - lignecourante = lignecourante + 1 - if chaineBlanche(fin) == 0 : - texte=texte + fin - if texte[-1] == "\n" : - texte=texte[0:-1] - else: - texte = jdc.getLines()[self.lineno-1][self.colno:self.endcol] - return texte - -#------------------------- -def chaineBlanche(texte) : -#------------------------- -# retourne 1 si la chaine est composee de " " -# retourne 0 sinon - bool = 1 ; - for i in range(len(texte)) : - if texte[i] != " " : bool = 0 - return bool - -#------------------- -def printNode(node): -#------------------- - if hasattr(node,'name'): - print node.name - else: - print "pas de nom pour:",node - for c in node.childNodes: - printNode(c) - -#------------------------ -def parser(src,atraiter): -#------------------------ - """Parse le texte src et retourne un arbre syntaxique (root). - - Cet arbre syntaxique a comme noeuds (childNodes) les commandes a traiter (liste atraiter) - """ - lines=src.splitlines(1) - maskedSrc=maskStringsAndComments(src) - maskedLines=maskedSrc.splitlines(1) - - root=JDCNode(src) - - # (a) dans un premier temps on extrait les commandes et on les insere - # dans un arbre (root) les noeuds fils sont stockes dans - # root.childNodes (liste) - lineno=0 - for line in maskedLines: - lineno=lineno+1 - if debug:print "line",lineno,":",line - m=pattern_proc.match(line) - if m and (m.group(1) in atraiter): - if debug:print m.start(3),m.end(3),m.start(4) - root.addChild(Command(m.group(1),lineno,m.start(1),m.end(3))) - else: - m=pattern_oper.match(line) - if m and (m.group(2) in atraiter): - root.addChild(Command(m.group(2),lineno,m.start(2),m.end(4))) - - #(b) dans un deuxieme temps , on recupere le texte complet de la commande - # jusqu'a la derniere parenthese fermante - - # iterateur sur les lignes physiques masquees - iterlines=iter(maskedLines) - - linenum=0 - for c in root.childNodes: - lineno=c.lineno - colno=c.colno # debut de la commande - while linenum < lineno: - line=iterlines.next() - linenum=linenum+1 - if linenum != lineno: - if debug:print "line %s:"%linenum, line - tmp = [] - hangingBraces = list(emptyHangingBraces) - hangingComments = 0 - while 1: - # update hanging braces - for i in range(len(implicitContinuationChars)): - contchar = implicitContinuationChars[i] - numHanging = hangingBraces[i] - - hangingBraces[i] = numHanging+line.count(contchar[0]) - \ - line.count(contchar[1]) - - hangingComments ^= line.count('"""') % 2 - hangingComments ^= line.count("'''") % 2 - - if hangingBraces[0] < 0 or hangingBraces[1] < 0 or hangingBraces[2] < 0: - raise UnbalancedBracesException() - - if linecontinueRE.search(line): - tmp.append(lines[linenum-1]) - elif hangingBraces != emptyHangingBraces: - tmp.append(lines[linenum-1]) - elif hangingComments: - tmp.append(lines[linenum-1]) - else: - tmp.append(lines[linenum-1]) - src="".join(tmp) - c.src=src - c.endline=linenum - decal=len(line)-line.rindex(')') - c.lastParen=len(src)-decal - if debug:print "logical line %s %s:" % (c.lineno,c.endline),src - break - line=iterlines.next() - linenum=linenum+1 - - return root - - -#----------------- -def lastParen(src): -#----------------- - """Retourne la position de la derniere parenthese fermante dans src a partir du debut de la string - - La string doit contenir la premiere parenthese ouvrante - """ - - src=maskStringsAndComments(src) - level=0 - i,n=0,len(src) - while i < n: - ch=src[i] - i=i+1 - if ch in ('(','['): - level=level+1 - if ch in (')',']'): - if level == 0: - raise UnbalancedBracesException() - level=level-1 - if level == 0: - #derniere parenthese fermante - return i - -#------------------- -def lastParen2(src): -#------------------- - """Retourne la position de la derniere parenthese fermante dans src a partir du debut de la string - - La string ne contient pas la premiere parenthese ouvrante - """ - src=maskStringsAndComments(src) - level=1 - i,n=0,len(src) - while i < n: - ch=src[i] - i=i+1 - if ch in ('(','['): - level=level+1 - if ch in (')',']'): - if level == 0: - raise UnbalancedBracesException() - level=level-1 - if level == 0: - #derniere parenthese fermante - return i diff --git a/Traducteur/regles.py b/Traducteur/regles.py deleted file mode 100644 index 034844f7..00000000 --- a/Traducteur/regles.py +++ /dev/null @@ -1,524 +0,0 @@ -# -*- coding: utf-8 -*- -# Copyright (C) 2007-2017 EDF R&D -# -# 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 -# -""" -Définition des règles -""" - -debug = 0 - -#-------------------- -class ensembleRegles : -#-------------------- - """ - Ensemble des règles - """ - def __init__(self, liste_regles): - self.liste = [] - for item in liste_regles : - args, clefRegle = item - r = regle(clefRegle, args) - self.liste.append(r) - - def verif(self, commande) : - """ - Vérification - """ - bool = 1 - for regle in self.liste : - result = regle.verif(commande) - bool = bool*result - return bool - -#-------------------------------- -class pasDeRegle(ensembleRegles): -#-------------------------------- - """ - Pas de règle - """ - def __init__(self) : - pass - - def verif (self, commande) : - """ - Vérification - """ - return 1 - - -#------------ -class regle : -#------------ - """ - Règle - """ - def __init__(self, clef_regle, args): - self.fonction = dictionnaire_regle[clef_regle] - self.list_args = args - self.bool = 0 - - def verif(self, commande): - """ - Vérification - """ - f = self.fonction(self.list_args) - return f.verif(commande) - -#--------------------- -class existeMCFParmi : -#--------------------- - """ - Existance du mot-clé facteur parmi la liste - """ - def __init__(self, list_arg): - self.listeMCF = list_arg - - def verif(self, commande) : - """ - Vérification - """ - bool = 0 - for c in commande.childNodes : - if c.name in self.listeMCF : - bool = 1 - break - return bool - -#--------------------- -class nexistepasMCFParmi(existeMCFParmi) : -#--------------------- - """ - Existance du mot-clé facteur parmi la liste - """ - def __init__(self, list_arg): - self.listeMCF = list_arg - - def verif(self, commande) : - """ - Vérification - """ - bool = existeMCFParmi.verif(self, commande) - if bool : return 0 - return 1 - -#---------------------- -class existeMCsousMCF : -#---------------------- - """ - Existance du mot-clé simple sous le mot-clé facteur - """ - def __init__(self, list_arg): - self.liste = list_arg - self.MCF = self.liste[0] - self.MC = self.liste[1] - - def verif(self, commande): - """ - Vérification - """ - bool = 0 - for mcf in commande.childNodes : - if mcf.name != self.MCF : continue - l = mcf.childNodes[:] - l.reverse() - for ll in l: - for mc in ll.childNodes: - if mc.name != self.MC : continue - bool = 1 - return bool - -#---------------------- -class existeMCsousMCFcourant : -#---------------------- - """ - Existance du mot-clé simple sous le mot-clé facteur courant - """ - def __init__(self, list_arg): - self.liste = list_arg - self.MC = self.liste[0] - - def verif(self, mcf): - """ - Vérification - """ - bool = 0 - l = mcf.childNodes[:] - l.reverse() - for mc in l: - if mc.name != self.MC : continue - bool = 1 - return bool - -#----------------------------------------- -class nexistepasMCsousMCF(existeMCsousMCF): -#----------------------------------------- - """ - Absence du mot-clé simple sous le mot-clé facteur - """ - def __init__(self, list_arg): - existeMCsousMCF.__init__(self, list_arg) - - - def verif(self, commande): - """ - Vérification - """ - bool = existeMCsousMCF.verif(self, commande) - if bool : return 0 - return 1 - -#----------------------------------------- -class nexistepasMCsousMCFcourant(existeMCsousMCFcourant): -#----------------------------------------- - """ - Absence du mot-clé simple sous le mot-clé facteur courant - """ - def __init__(self, list_arg): - existeMCsousMCFcourant.__init__(self, list_arg) - - - def verif(self, commande): - """ - Vérification - """ - bool = existeMCsousMCFcourant.verif(self, commande) - if bool : return 0 - return 1 - -#------------- -class existe : -#-------------- - """ - Existance du mot-clé simple - """ - def __init__(self, list_arg): - self.genea = list_arg - - def chercheMot(self, niveau, commande): - """ - Recherche du mot - """ - if commande == None : return 0 - if niveau == len(self.genea) : return 1 - texte = self.genea[niveau] - for c in commande.childNodes : - if c.name == texte : - niveau = niveau+1 - return self.chercheMot(niveau, c) - return None - - def verif(self, commande): - """ - Vérification - """ - bool = self.chercheMot(0, commande) - if bool == None : bool = 0 - return bool - -#------------- -class nexistepas : -#-------------- - """ - Absence du mot-clé simple - """ - def __init__(self, list_arg): - self.genea = list_arg - - def chercheMot(self, niveau, commande): - """ - Recherche du mot - """ - if commande == None : return 0 - if niveau == len(self.genea) : return 1 - texte = self.genea[niveau] - for c in commande.childNodes : - if c.name == texte : - niveau = niveau+1 - return self.chercheMot(niveau, c) - return None - - def verif(self, commande): - """ - Vérification - """ - bool = self.chercheMot(0, commande) - if bool : return 0 - return 1 - -#------------------------------- -class MCsousMCFaPourValeur : -#------------------------------ - """ - Égalité du mot-clé simple à une valeur sous le mot-clé facteur - """ - def __init__(self, list_arg): - assert (len(list_arg)==4) - self.genea = list_arg[0:-2] - self.MCF = list_arg[0] - self.MC = list_arg[1] - self.Val = list_arg[2] - self.Jdc = list_arg[3] - - def verif(self, commande): - """ - Vérification - """ - bool = 0 - for mcf in commande.childNodes : - if mcf.name != self.MCF : continue - l = mcf.childNodes[:] - l.reverse() - for ll in l: - for mc in ll.childNodes: - if mc.name != self.MC : continue - TexteMC = mc.getText(self.Jdc) - if (TexteMC.find(self.Val) < 0 ): continue - bool = 1 - return bool - -#------------------------------- -class MCsousMCFcourantaPourValeur : -#------------------------------ - """ - Égalité du mot-clé simple à une valeur sous le mot-clé facteur courant - """ - def __init__(self, list_arg): - assert (len(list_arg)==3) - self.genea = list_arg[0:-1] - self.MC = list_arg[0] - self.Val = list_arg[1] - self.Jdc = list_arg[2] - - def verif(self, mcf): - """ - Vérification - """ - bool = 0 - l = mcf.childNodes[:] - l.reverse() - for mc in l: - if mc.name != self.MC : continue - TexteMC = mc.getText(self.Jdc) - if (TexteMC.find(self.Val) < 0 ): continue - bool = 1 - return bool - - -#----------------------------- -class MCsousMCFaPourValeurDansListe : -#---------------------------- - """ - Égalité du mot-clé simple à une valeur dans une liste - sous le mot-clé facteur - """ - def __init__(self, list_arg): - assert (len(list_arg)==4) - self.genea = list_arg[0:-2] - self.MCF = list_arg[0] - self.MC = list_arg[1] - self.LVal = list_arg[2] - self.Jdc = list_arg[3] - - def verif(self, commande): - """ - Vérification - """ - bool = 0 - for mcf in commande.childNodes : - if mcf.name != self.MCF : continue - l = mcf.childNodes[:] - l.reverse() - for ll in l: - for mc in ll.childNodes: - if mc.name != self.MC : continue - TexteMC = mc.getText(self.Jdc) - for Val in self.LVal: - if (TexteMC.find(Val) < 0 ): continue - bool = 1 - return bool - -#----------------------------- -class MCsousMCFcourantaPourValeurDansListe : -#---------------------------- - """ - Égalité du mot-clé simple à une valeur dans une liste - sous le mot-clé facteur - """ - def __init__(self, list_arg): - assert (len(list_arg)==3) - self.genea = list_arg[0:-1] - self.MC = list_arg[0] - self.LVal = list_arg[1] - self.Jdc = list_arg[2] - - def verif(self, mcf): - """ - Vérification - """ - bool = 0 - l = mcf.childNodes[:] - l.reverse() - for mc in l: - if mc.name != self.MC : continue - TexteMC = mc.getText(self.Jdc) - for Val in self.LVal: - if (TexteMC.find(Val) < 0 ): continue - bool = 1 - return bool - -#----------------------------------------- -class MCsousMCFcourantnaPasPourValeurDansListe(MCsousMCFcourantaPourValeurDansListe) : -#----------------------------------------- - """ - Non égalité du mot-clé simple à une valeur dans une liste - sous le mot-clé facteur - """ - def __init__(self, list_arg): - MCsousMCFcourantaPourValeurDansListe.__init__(self, list_arg) - - - def verif(self, commande): - bool = MCsousMCFcourantaPourValeurDansListe.verif(self, commande) - if bool : return 0 - return 1 - -#----------------------------------------- -class MCsousMCFnaPasPourValeurDansListe(MCsousMCFaPourValeurDansListe) : -#----------------------------------------- - """ - Non égalité du mot-clé simple à une valeur dans une liste - sous le mot-clé facteur - """ - def __init__(self, list_arg): - MCsousMCFaPourValeurDansListe.__init__(self, list_arg) - - - def verif(self, commande): - bool = MCsousMCFaPourValeurDansListe.verif(self, commande) - if bool : return 0 - return 1 - -#------------------------------ -class MCaPourValeur : -#------------------------------ - """ - Égalité du mot-clé à une valeur - """ - def __init__(self, list_arg): - assert (len(list_arg)==3) - self.MC = list_arg[0] - self.Val = list_arg[1] - self.Jdc = list_arg[2] - - def verif(self, commande): - """ - Vérification - """ - bool = 0 - for mc in commande.childNodes : - if mc.name != self.MC : continue - TexteMC = mc.getText(self.Jdc) - if (TexteMC.find(self.Val) < 0 ): continue - bool = 1 - return bool - -#----------------------------------------- -class MCnaPasPourValeur(MCaPourValeur) : -#----------------------------------------- - """ - Non égalité du mot-clé à une valeur - """ - def __init__(self, list_arg): - MCaPourValeur.__init__(self, list_arg) - - def verif(self, commande): - """ - Vérification - """ - bool = MCaPourValeur.verif(self, commande) - if bool : return 0 - return 1 - -#------------------------------ -class MCaPourValeurDansListe : -#------------------------------ - """ - Égalité du mot-clé à une valeur dans une liste - """ - def __init__(self, list_arg): - assert (len(list_arg)==3) - self.MC = list_arg[0] - self.LVal = list_arg[1] - self.Jdc = list_arg[2] - - def verif(self, commande): - """ - Vérification - """ - bool = 0 - for mc in commande.childNodes : - if mc.name != self.MC : continue - TexteMC = mc.getText(self.Jdc) - #print "TexteMC=",type(TexteMC),TexteMC - #print "LVal=",type(self.LVal),self.LVal - for Val in self.LVal: - #print "Val=",type(Val),Val - #print "Find",TexteMC.find(Val) - if (TexteMC.find(Val) < 0 ): continue - bool = 1 - return bool - -#----------------------------------------- -class MCnaPasPourValeurDansListe(MCaPourValeurDansListe) : -#----------------------------------------- - """ - Non égalité du mot-clé à une valeur dans une liste - """ - def __init__(self, list_arg): - MCaPourValeurDansListe.__init__(self, list_arg) - - def verif(self, commande): - """ - Vérification - """ - bool = MCaPourValeurDansListe.verif(self, commande) - if bool : return 0 - return 1 - -dictionnaire_regle = {"existe":existe, - "nexistepas":nexistepas, - "existeMCFParmi":existeMCFParmi, - "nexistepasMCFParmi":nexistepasMCFParmi, - "existeMCsousMCF":existeMCsousMCF, - "nexistepasMCsousMCF":nexistepasMCsousMCF, - "MCsousMCFaPourValeur":MCsousMCFaPourValeur, - "MCsousMCFaPourValeurDansListe":MCsousMCFaPourValeurDansListe, - "MCaPourValeur":MCaPourValeur, - "MCnaPasPourValeur":MCnaPasPourValeur, - "existeMCsousMCFcourant":existeMCsousMCFcourant, - "nexistepasMCsousMCFcourant":nexistepasMCsousMCFcourant, - "MCsousMCFcourantaPourValeur":MCsousMCFcourantaPourValeur, - "MCsousMCFcourantaPourValeurDansListe":MCsousMCFcourantaPourValeurDansListe, - "MCsousMCFcourantnaPasPourValeurDansListe":MCsousMCFcourantnaPasPourValeurDansListe, - "MCsousMCFnaPasPourValeurDansListe":MCsousMCFnaPasPourValeurDansListe, - "MCaPourValeurDansListe":MCaPourValeurDansListe, - "MCnaPasPourValeurDansListe":MCnaPasPourValeurDansListe} - - -SansRegle = pasDeRegle() diff --git a/Traducteur/removemocle.py b/Traducteur/removemocle.py deleted file mode 100644 index 6694cc1d..00000000 --- a/Traducteur/removemocle.py +++ /dev/null @@ -1,215 +0,0 @@ -# -*- coding: utf-8 -*- -# Copyright (C) 2007-2017 EDF R&D -# -# 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 logging -from Traducteur import regles -from Traducteur.parseur import FactNode -from Traducteur.dictErreurs import ecritErreur -from Traducteur.load import jdcSet - -debug=0 -#debug=1 -#on n'a qu'un mocle par commande. On peut donc supprimer le mocle sans trop de precautions (a part iterer a l'envers sur les commandes) -#avant de supprimer un autre mocle, on remet a jour l'arbre syntaxique (lineno,colno,etc.) - - -#----------------------------------------------------------------------- -def removeMotCle(jdc,command,mocle,ensemble=regles.SansRegle,erreur = 0): -#----------------------------------------------------------------------- - #on itere sur les commandes a l'envers pour ne pas polluer les numeros de ligne avec les modifications - if command not in jdcSet : return - boolChange=0 - commands= jdc.root.childNodes[:] - commands.reverse() - for c in commands: - if c.name != command:continue - for mc in c.childNodes: - if mc.name != mocle:continue - if ensemble.verif(c) == 0 : continue - if erreur : ecritErreur((command,mocle),c.lineno) - boolChange=1 - removeMC(jdc,c,mc) - - if boolChange : jdc.reset(jdc.getSource()) - -#------------------------------------------------------- -def removeMotCleSiRegle(jdc,command,mocle,liste_regles) : -#------------------------------------------------------- - if command not in jdcSet : return - mesRegles=regles.ensembleRegles(liste_regles) - removeMotCle(jdc,command,mocle,mesRegles,erreur=0) - -#---------------------------------------------------------------- -def removeMotCleSiRegleAvecErreur(jdc,command,mocle,liste_regles) : -#-------------------------------------------------------------- - if command not in jdcSet : return - mesRegles=regles.ensembleRegles(liste_regles) - removeMotCle(jdc,command,mocle,mesRegles,erreur=1) - -#---------------------------------------------------------------- -def removeMotCleAvecErreur(jdc,command,mocle) : -#-------------------------------------------------------------- - if command not in jdcSet : return - removeMotCle(jdc,command,mocle,erreur=1) - - -#-------------------------------------------------------------------- -def removeCommande(jdc,command,ensemble=regles.SansRegle,erreur=0): -#-------------------------------------------------------------------- - if command not in jdcSet : return - boolChange=0 - commands= jdc.root.childNodes[:] - commands.reverse() - for c in commands: - if c.name != command:continue - if ensemble.verif(c) == 0 : continue - boolChange=1 - if erreur : ecritErreur((command,),c.lineno) - jdc.supLignes(c.lineno,c.endline) - logging.warning("Suppression de %s ligne %s",c.name,c.lineno) - if boolChange : jdc.reset(jdc.getSource()) - -#------------------------------------------------------------- -def removeCommandeSiRegle(jdc,command,liste_regles): -#------------------------------------------------------------- - if command not in jdcSet : return - mesRegles=regles.ensembleRegles(liste_regles) - removeCommande(jdc,command,mesRegles,0) - -#------------------------------------------------------------- -def removeCommandeSiRegleAvecErreur(jdc,command,liste_regles): -#------------------------------------------------------------- - if command not in jdcSet : return - mesRegles=regles.ensembleRegles(liste_regles) - removeCommande(jdc,command,mesRegles,1) - -#--------------------------------- -def removeMC(jdc,c,mc): -#--------------------------------- - if debug : print "Suppression de:",c.name,mc.name,mc.lineno,mc.colno,mc.endline,mc.endcol - logging.info("Suppression de %s dans %s ligne %d",mc.name,c.name,mc.lineno) - - if mc.endline > mc.lineno: - if debug:print "mocle sur plusieurs lignes--%s--" % jdc.getLines()[mc.lineno-1][mc.colno:] - jdc.getLines()[mc.lineno-1]=jdc.getLines()[mc.lineno-1][:mc.colno] - jdc.getLines()[mc.endline-1]=jdc.getLines()[mc.endline-1][mc.endcol:] - - #attention : supprimer les lignes a la fin - jdc.getLines()[mc.lineno:mc.endline-1]=[] - else: - if debug:print "mocle sur une ligne--%s--" % jdc.getLines()[mc.lineno-1][mc.colno:mc.endcol] - s=jdc.getLines()[mc.lineno-1] - jdc.getLines()[mc.lineno-1]=s[:mc.colno]+s[mc.endcol:] - fusionne(jdc,mc.lineno-1) - -#--------------------------------------------------------------------------------- -def removeMotCleInFact(jdc,command,fact,mocle,ensemble=regles.SansRegle,erreur=0): -#---------------------------------------------------------------------------------- - # on itere sur les commandes a l'envers pour ne pas polluer - # les numeros de ligne avec les modifications - if command not in jdcSet : return - commands= jdc.root.childNodes[:] - commands.reverse() - boolChange=0 - for c in commands: - if c.name != command:continue - for mc in c.childNodes: - if mc.name != fact:continue - l=mc.childNodes[:] - l.reverse() - for ll in l: - for n in ll.childNodes: - if n.name != mocle:continue - if ensemble.verif(c) == 0 : continue - if erreur : ecritErreur((command,fact,mocle),c.lineno) - boolChange=1 - removeMC(jdc,c,n) - - if boolChange : jdc.reset(jdc.getSource()) - -#------------------------------------------------------------------ -def removeMotCleInFactSiRegle(jdc,command,fact,mocle,liste_regles): -#------------------------------------------------------------------ - if command not in jdcSet : return - erreur=0 - mesRegles=regles.ensembleRegles(liste_regles) - removeMotCleInFact(jdc,command,fact,mocle,mesRegles,erreur) - -#---------------------------------------------------------------------- -def removeMotCleInFactSiRegleAvecErreur(jdc,command,fact,mocle,liste_regles): -#---------------------------------------------------------------------- - if command not in jdcSet : return - erreur=1 - mesRegles=regles.ensembleRegles(liste_regles) - removeMotCleInFact(jdc,command,fact,mocle,mesRegles,erreur) - - -#---------------------------------------------------------------------- -def removeMotCleInFactCourantSiRegle(jdc,command,fact,mocle,liste_regles,erreur=0): -#---------------------------------------------------------------------- - if command not in jdcSet : return - ensemble=regles.ensembleRegles(liste_regles) - commands= jdc.root.childNodes[:] - commands.reverse() - boolChange=0 - for c in commands: - if c.name != command:continue - for mc in c.childNodes: - if mc.name != fact:continue - l=mc.childNodes[:] - l.reverse() - for ll in l: - if ensemble.verif(ll) == 0 : continue - for n in ll.childNodes: - if n.name != mocle:continue - if erreur : ecritErreur((command,fact,mocle),c.lineno) - boolChange=1 - removeMC(jdc,c,n) - - if boolChange : jdc.reset(jdc.getSource()) - -#------------------------------------------ -def fusionne(jdc,numLigne): -#------------------------------------------ -# fusionne la ligne numLigne et numLigne+1 -# si la ligne numLigne+1 ne contient que des parentheses -# fermantes -# et si la ligne numLigne ne contient pas par un "#" -# Attention a la difference de numerotation -# jdc.getLines()[numLigne] donne la ligne numLigne + 1 -# alors que joinLineandNext(numLigne) travaille sur le tableau - index=0 - texte=jdc.getLines()[numLigne] - fusion=1 - while (index < len(texte)) : - if texte[index] not in (" ",",",")",";","\n") : - fusion=0 - break - index=index+1 - - if fusion == 0 : return; - - texte=jdc.getLines()[numLigne -1] - if texte.find("#") < 0 : - fusion=1 - else : - fusion=0 - - if fusion : - jdc.joinLineandNext(numLigne) diff --git a/Traducteur/renamemocle.py b/Traducteur/renamemocle.py deleted file mode 100644 index 2372bf41..00000000 --- a/Traducteur/renamemocle.py +++ /dev/null @@ -1,188 +0,0 @@ -# -*- coding: utf-8 -*- -# Copyright (C) 2007-2017 EDF R&D -# -# 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 logging -import sys -from Traducteur.parseur import FactNode -from Traducteur.load import jdcSet -from Traducteur import regles -from Traducteur.dictErreurs import ecritErreur -#debug=1 -debug=0 - -#on n'a qu'un mocle par commande. -#en fin de traitement, on remet a jour l'arbre syntaxique (lineno,colno,etc.) - -#-------------------------------------------------------------------------------- -def renameMotCle(jdc,command,mocle,new_name, erreur=0,ensemble=regles.SansRegle): -#-------------------------------------------------------------------------------- - if command not in jdcSet : return - boolChange=0 - for c in jdc.root.childNodes: - if c.name != command:continue - for mc in c.childNodes: - if mc.name != mocle:continue - if ensemble.verif(c) == 0 : continue - boolChange=1 - if debug:print "Renommage de:",c.name,mc.name,mc.lineno,mc.colno - if erreur : - ecritErreur((command,mocle),c.lineno) - else : - logging.info("Renommage de: %s %s ligne %d en %s",c.name,mc.name,mc.lineno,new_name) - s=jdc.getLines()[mc.lineno-1] - jdc.getLines()[mc.lineno-1]=s[:mc.colno]+new_name+s[mc.colno+len(mocle):] - diff=len(new_name) - len(mocle) - decaleLignesdeNBlancs(jdc,mc.lineno,mc.endline-1,diff) - - if boolChange : jdc.reset(jdc.getSource()) - -#------------------------------------------------------ -def renameMotCleAvecErreur(jdc,command,mocle,new_name): -#------------------------------------------------------ - if command not in jdcSet : return - renameMotCle(jdc,command,mocle,new_name,1,regles.SansRegle) - -#-------------------------------------------------------------------------- -def renameMotCleSiRegle(jdc,command,mocle,new_name,liste_regles, erreur=0): -#-------------------------------------------------------------------------- - if command not in jdcSet : return - mesRegles=regles.ensembleRegles(liste_regles) - renameMotCle(jdc,command,mocle,new_name, erreur,mesRegles) - -#------------------------------------------- -def renameOper(jdc,command,new_name): -#------------------------------------------- - if command not in jdcSet : return - jdcSet.add(new_name) - boolChange=0 - for c in jdc.root.childNodes: - if c.name != command:continue - if debug:print "Renommage de:",c.name,c.lineno,c.colno - logging.info("Renommage de: %s ligne %d en %s",c.name,c.lineno,new_name) - boolChange=1 - s=jdc.getLines()[c.lineno-1] - jdc.getLines()[c.lineno-1]=s[:c.colno]+new_name+s[c.colno+len(command):] - diff=len(new_name) - len(command) - decaleLignesdeNBlancs(jdc,c.lineno,c.endline,diff) - if boolChange : jdc.reset(jdc.getSource()) - -#---------------------------------------------------------- -def decaleLignesdeNBlancs(jdc,premiere,derniere,nbBlanc): -#---------------------------------------------------------- - ligne = premiere + 1 - while ligne < derniere : - s=jdc.getLines()[ligne] - if nbBlanc > 0 : - jdc.getLines()[ligne] = nbBlanc*" " + s - else : - toutblancs=-1*nbBlanc*" " - if jdc.getLines()[ligne][0:-1*nbBlanc] == toutblancs: - jdc.getLines()[ligne] = s[-1*nbBlanc:] - ligne=ligne+1 - -#--------------------------------------------------------------------------------------------- -def renameMotCleInFact(jdc,command,fact,mocle,new_name, ensemble=regles.SansRegle, erreur=0): -#--------------------------------------------------------------------------------------------- - if command not in jdcSet : return - boolChange=0 - for c in jdc.root.childNodes: - if c.name != command:continue - for mc in c.childNodes: - if mc.name != fact:continue - l=mc.childNodes[:] - #on itere a l'envers - l.reverse() - for ll in l: - for n in ll.childNodes: - if n.name != mocle:continue - if ensemble.verif(c) == 0 : continue - s=jdc.getLines()[n.lineno-1] - jdc.getLines()[n.lineno-1]=s[:n.colno]+new_name+s[n.colno+len(mocle):] - boolChange=1 - if erreur : - ecritErreur((command,fact,mocle),c.lineno) - else : - logging.info("Renommage de: %s, ligne %s, en %s",n.name,n.lineno,new_name) - - if boolChange : jdc.reset(jdc.getSource()) - -#-------------------------------------------------------------------------- -def renameMotCleInFactSiRegle(jdc,command,fact,mocle,new_name,liste_regles): -#-------------------------------------------------------------------------- - if command not in jdcSet : return - mesRegles=regles.ensembleRegles(liste_regles) - renameMotCleInFact(jdc,command,fact,mocle,new_name,mesRegles) - -def renameMotCleInFactCourantSiRegle(jdc,command,fact,mocle,new_name,liste_regles,erreur=0): -#-------------------------------------------------------------------------- - if command not in jdcSet : return - ensemble=regles.ensembleRegles(liste_regles) - boolChange=0 - for c in jdc.root.childNodes: - if c.name != command:continue - for mc in c.childNodes: - if mc.name != fact:continue - l=mc.childNodes[:] - #on itere a l'envers - l.reverse() - for ll in l: - if ensemble.verif(ll) == 0 : continue - for n in ll.childNodes: - if n.name != mocle:continue - s=jdc.getLines()[n.lineno-1] - jdc.getLines()[n.lineno-1]=s[:n.colno]+new_name+s[n.colno+len(mocle):] - boolChange=1 - if erreur : - ecritErreur((command,fact,mocle),c.lineno) - else : - logging.info("Renommage de: %s, ligne %s, en %s",n.name,n.lineno,new_name) - - if boolChange : jdc.reset(jdc.getSource()) - - -#----------------------------------------------------------------- -def renameCommande(jdc,command,new_name,ensemble=regles.SansRegle): -#----------------------------------------------------------------- -# nom de la commande "ancien format" , nom de la commande " nouveau format " - if command not in jdcSet : return - jdcSet.add(new_name) - boolChange=0 - if debug : - if ensemble != regles.SansRegle : - logging.info("traitement de %s renomme en %s sous conditions", command, new_name) - else : - logging.info("traitement de %s renomme en %s ", command, new_name) - for c in jdc.root.childNodes: - if c.name != command:continue - if ensemble.verif(c) == 0 : continue - boolChange=1 - if debug:print "Renommage de:",c.name,new_name ,c.lineno,c.colno - logging.info("Renommage de: %s ligne %d en %s",c.name,c.lineno,new_name) - s=jdc.getLines()[c.lineno-1] - jdc.getLines()[c.lineno-1]=s[:c.colno]+new_name+s[c.colno+len(command):] - - if boolChange : jdc.reset(jdc.getSource()) - -#----------------------------------------------------------- -def renameCommandeSiRegle(jdc,command,new_name,liste_regles): -#----------------------------------------------------------- - - if command not in jdcSet : return - mesRegles=regles.ensembleRegles(liste_regles) - renameCommande(jdc,command,new_name,mesRegles) diff --git a/Traducteur/toto.comm b/Traducteur/toto.comm deleted file mode 100644 index a2f211ed..00000000 --- a/Traducteur/toto.comm +++ /dev/null @@ -1,10 +0,0 @@ -DEBUT(); - -CALC_NONO(reuse=MSLIN, - RESULTAT=MSLIN, - OPTION=('EPSI_NOEU','SIEQ_NOEU','EPEQ_NOEU','SIGM_NOEU',),); - -CALC_NONO(reuse=MSLIN, - RESULTAT=MSLIN, - OPTION=('AA','EPSI_NOEU','SIEQ_NOEU','EPEQ_NOEU','SIGM_NOEU',),); -FIN(); diff --git a/Traducteur/traduitV10V11.py b/Traducteur/traduitV10V11.py deleted file mode 100755 index f15f7b13..00000000 --- a/Traducteur/traduitV10V11.py +++ /dev/null @@ -1,1631 +0,0 @@ -#!/usr/bin/env python -# -*- coding: utf-8 -*- -# Copyright (C) 2007-2017 EDF R&D -# -# 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 -# -""" -""" -usage="""usage: %prog [options] -Typical use is: - python traduitV10V11.py --infile=xxxx --outfile=yyyy -""" - -import log -import optparse -import sys - -from Traducteur.load import getJDC -from Traducteur.mocles import parseKeywords -from Traducteur.removemocle import * -from Traducteur.renamemocle import * -from Traducteur.renamemocle import * -from Traducteur.inseremocle import * -from Traducteur.changeValeur import * -from Traducteur.movemocle import * -from Traducteur.dictErreurs import * -from Traducteur.regles import pasDeRegle - -atraiter=( - "AFFE_CARA_ELEM", - "AFFE_CHAR_MECA", - "AFFE_CHAR_MECA_F", - "AFFE_CHAR_OPS011", - "AFFE_CHAR_THER", - "AFFE_CHAR_THER_F", - "AFFE_MATERIAU", - "AFFE_MODELE", - "ASSE_ELEM_SSD", - "ASSEMBLAGE", - "CALC_CHAM_ELEM", - "CALC_CHAMP", - "CALC_ECREVISSE", - "CALC_ELEM", - "CALC_ERREUR", - "CALC_ESSAI", - "CALC_EUROPLEXUS", - "CALC_FATIGUE", - "CALC_FERRAILLAGE", - "CALC_FONC_INTERP", - "CALC_FONCTION", - "CALC_FORC_AJOU", - "CALC_G", - "CALC_IFS_DNL", - "CALC_INTE_SPEC", - "CALC_MAC3COEUR", - "CALC_MATR_AJOU", - "CALC_MATR_ELEM", - "CALC_META", - "CALC_MISS", - "CALC_MODAL", - "CALC_MODE_ROTATION", - "CALC_NO", - "CALC_POINT_MAT", - "CALC_PRECONT", - "CALC_SENSI", - "CALC_SPEC", - "CALC_TABLE", - "CALC_THETA", - "COMB_FOURIER", - "COMB_SISM_MODAL", - "COPIER", - "CREA_CHAMP", - "CREA_ELEM_SSD", - "CREA_MAILLAGE", - "CREA_RESU", - "CREA_TABLE", - "DEBUT", - "DEFI_BASE_MODALE", - "DEFI_CABLE_BP", - "DEFI_COMPOR", - "DEFI_CONTACT", - "DEFI_COQU_MULT", - "DEFI_FICHIER", - "DEFI_FISS_XFEM", - "DEFI_FONC_ELEC", - "DEFI_FOND_FISS", - "DEFI_GLRC", - "DEFI_GROUP", - "DEFI_INTE_SPEC", - "DEFI_LIST_INST", - "DEFI_MATER_GC", - "DEFI_MATERIAU", - "DEFI_NAPPE", - "DEFI_PARA_SENSI", - "DEFI_PART_FETI", - "DEFI_SOL_MISS", - "DEFI_SPEC_TURB", - "DETRUIRE", - "DYNA_ALEA_MODAL", - "DYNA_ISS_VARI", - "DYNA_LINE_HARM", - "DYNA_LINE_TRAN", - "DYNA_NON_LINE", - "DYNA_SPEC_MODAL", - "DYNA_TRAN_MODAL", - "DYNA_VIBRA", - "EXEC_LOGICIEL", - "EXTR_RESU", - "EXTR_TABLE", - "FACTORISER", - "FORMULE", - "GENE_ACCE_SEISME", - "GENE_FONC_ALEA", - "GENE_VARI_ALEA", - "IMPR_CO", - "IMPR_DIAG_CAMPBELL", - "IMPR_FONCTION", - "IMPR_GENE", - "IMPR_OAR", - "IMPR_RESU", - "IMPR_STURM", - "IMPR_TABLE", - "INCLUDE", - "INCLUDE_MATERIAU", - "INFO_EXEC_ASTER", - "INFO_FONCTION", - "INFO_MODE", - "LIRE_CHAMP", - "LIRE_FONCTION", - "LIRE_IMPE_MISS", - "LIRE_INTE_SPEC", - "LIRE_MAILLAGE", - "LIRE_RESU", - "LIRE_TABLE", - "MACR_ADAP_MAIL", - "MACR_ASCOUF_CALC", - "MACR_ASCOUF_MAIL", - "MACR_ASPIC_CALC", - "MACR_ASPIC_MAIL", - "MACR_CARA_POUTRE", - "MACR_ECLA_PG", - "MACR_ECRE_CALC", - "MACR_ECREVISSE", - "MACR_ELEM_DYNA", - "MACR_FIABILITE", - "MACR_FIAB_IMPR", - "MACR_INFO_MAIL", - "MACR_LIGN_COUPE", - "MACRO_ELAS_MULT", - "MACRO_EXPANS", - "MACRO_MATR_AJOU", - "MACRO_MATR_ASSE", - "MACRO_MISS_3D", - "MACRO_MODE_MECA", - "MACRO_PROJ_BASE", - "MACR_RECAL", - "MACR_SPECTRE", - "MECA_STATIQUE", - "MODE_ITER_INV", - "MODE_ITER_SIMULT", - "MODE_STATIQUE", - "MODI_MODELE_XFEM", - "MODI_REPERE", - "NORM_MODE", - "NUME_DDL", - "NUME_DDL_GENE", - "OBSERVATION", - "POST_BORDET", - "POST_CHAMP", - "POST_CHAM_XFEM", - "POST_COQUE", - "POST_DECOLLEMENT", - "POST_DYNA_ALEA", - "POST_ELEM", - "POST_ENDO_FISS", - "POST_FATIGUE", - "POST_GP", - "POST_K1_K2_K3", - "POST_K_TRANS", - "POST_MAC3COEUR", - "POST_MAIL_XFEM", - "POST_RCCM", - "POST_RELEVE_T", - "POST_RUPTURE", - "POST_USURE", - "POURSUITE", - "PROJ_BASE", - "PROJ_CHAMP", - "PROJ_RESU_BASE", - "PROJ_SPEC_BASE", - "PROPA_FISS", - "PROPA_XFEM", - "RAFF_XFEM", - "RECU_FONCTION", - "RECU_GENE", - "RESOUDRE", - "REST_SPEC_PHYS", - "SIMU_POINT_MAT", - "STANLEY", - "STAT_NON_LINE", - "TEST_COMPOR", - "TEST_FICHIER", - "TEST_FONCTION", - "TEST_RESU", - "TEST_TABLE", - "TEST_TEMPS", - "THER_LINEAIRE", - "THER_NON_LINE", - "THER_NON_LINE_MO", - - "CALC_CHAMPNO", - "CALC_METANO", - "CALC_ERREURNO", - - ) - -dict_erreurs={ - - "CALC_G_THETA_DTAN_ORIG":"La valeur de DTAN_ORIG est maintenant calculée automatiquement", - "CALC_G_THETA_DTAN_EXTR":"La valeur de DTAN_EXTR est maintenant calculée automatiquement", - "AFFE_CHAR_MECA_CONTACT":"Attention, modification de la définition du CONTACT : nommer DEFI_CONTACT,verifier les paramètres globaux et le mettre dans le calcul", - "DEFI_COMPOR_MONOCRISTAL_FAMI_SYST_GLIS":"Famille de système de glissement supprimée : choisir une autre famille", - "DEFI_COMPOR_MULTIFIBRE_DEFORMATION":"Il faut maintenant renseigner le mot-clé DEFORMATION dans STAT_NON_LINE ou DYNA_NON_LINE.", - "DEFI_MATERIAU_ECRO_FLEJOU":"Le comportement ECRO_FLEJOU a été supprimé. Il faut maintenant utiliser un modèle de poutre multifibres avec une loi d'écrouissage'.", - "DEFI_MATERIAU_VMIS_POUTRE":"Le comportement VMIS_POUTRE a été supprimé. Il faut maintenant utiliser un modèle de poutre multifibres avec une loi plastique.", - "DEFI_MATERIAU_VMIS_POUTRE_FO":"Le comportement VMIS_POUTRE_FO a été supprimé. Il faut maintenant utiliser un modèle de poutre multifibres avec une loi plastique.", - "DEFI_MATERIAU_LEMAITRE_IRRA_GRAN_A":"Les paramètres de la loi de grandissement se définissent maintenant par une fonction avec GRAN_FO.", - "DEFI_MATERIAU_LEMAITRE_IRRA_GRAN_B":"Les paramètres de la loi de grandissement se définissent maintenant par une fonction avec GRAN_FO.", - "DEFI_MATERIAU_LEMAITRE_IRRA_GRAN_S":"Les paramètres de la loi de grandissement se définissent maintenant par une fonction avec GRAN_FO.", - "DEFI_MATERIAU_LMARC_IRRA_GRAN_A":"Les paramètres de la loi de grandissement se définissent maintenant par une fonction avec GRAN_FO.", - "DEFI_MATERIAU_LMARC_IRRA_GRAN_B":"Les paramètres de la loi de grandissement se définissent maintenant par une fonction avec GRAN_FO.", - "DEFI_MATERIAU_LMARC_IRRA_GRAN_S":"Les paramètres de la loi de grandissement se définissent maintenant par une fonction avec GRAN_FO.", - "DEFI_MATERIAU_GRAN_IRRA_LOG_GRAN_A":"Les paramètres de la loi de grandissement se définissent maintenant par une fonction avec GRAN_FO.", - "DEFI_MATERIAU_GRAN_IRRA_LOG_GRAN_B":"Les paramètres de la loi de grandissement se définissent maintenant par une fonction avec GRAN_FO.", - "DEFI_MATERIAU_GRAN_IRRA_LOG_GRAN_S":"Les paramètres de la loi de grandissement se définissent maintenant par une fonction avec GRAN_FO.", - "DEFI_MATERIAU_ENDO_SCALAIRE":"Les paramètres définissant la loi ENDO_SCALAIRE ont changé. Il faut renseigner les nouveaux paramètres.", - "DEFI_MATERIAU_MAZARS":"Le paramètres BETA définissant la loi MAZARS a été supprimé. Il faut renseigner le nouveau paramètre K.", - "DEFI_MATERIAU_MONO_VISC3":"Le comportement MONO_VISC3 a été supprimé.", - "DEFI_MATERIAU_MONO_DD_CC":"Le comportement MONO_DD_CC a été supprimé.", - "DYNA_LINE_TRAN_INCREMENT_FONC_INST":"Le mot-clé FONC_INST a été supprimé. Il faut maintenant utiliser ", - "LIRE_RESU_TYPE_RESU":"Il n'est plus possible de lire un résultat de type HARM_GENE. Il faut choisir un autre type.", - "MACRO_ELAS_MULT_CAS_CHARGE_OPTION":"Seule l'option SIEF_ELGA est permise pour MACRO_ELAS_MULT. Il faut calculer les autres options avec CALC_CHAMP.", - "MODI_MODELE_XFEM_CONTACT":"La formulation du contact aux arêtes P1P1A a été supprimée. Il faut choisir une autre formulation.", - "POST_GP":"La commande POST_GP a été supprimée. Il faut maintenant utiliser la commande CALC_GP.", - "AFFE_CARA_ELEM_COQUE_EPAIS_F":"Il n'est plus possible de faire d'analyse de sensibilité.", - "AFFE_CARA_ELEM_DISCRET_VALE_F":"Il n'est plus possible de faire d'analyse de sensibilité.", - "AFFE_CARA_ELEM_DISCRET_2D_VALE_F":"Il n'est plus possible de faire d'analyse de sensibilité.", - "CALC_CHAMP_REPE_COQUE":"Pour les éléments de structures, les résultats sont calculés sur tous les sous-points. Pour extraire un champ sur un seul sous-point, il faut utiliser POST_CHAMP.", - "CALC_THETA_THETA_BANDE":"L'option THETA_BANDE n'existe plus, il faut choisir entre THETA_2D ou THETA_3D." - } - -sys.dict_erreurs=dict_erreurs - -def traduc(infile,outfile,flog=None): - - hdlr=log.initialise(flog) - jdc=getJDC(infile,atraiter) - root=jdc.root - - #Parse les mocles des commandes - parseKeywords(root) - - genereErreurPourCommande(jdc,("CALC_SENSI",)) - - - #### traitement des cas particuliers ############################## - # On ne traite pas les commandes TEST* - removeCommande(jdc,"TEST_COMPOR") - removeCommande(jdc,"TEST_FICHIER") - removeCommande(jdc,"TEST_FONCTION") - removeCommande(jdc,"TEST_RESU") - removeCommande(jdc,"TEST_TABLE") - removeCommande(jdc,"TEST_TEMPS") - - #### traitement de AFFE_CARA_ELEM ############################## - # Déplacement de PREC_AIRE et PREC_INERTIE dans MULTIFIBRE - moveMotCleFromFactToFact(jdc,"AFFE_CARA_ELEM","POUTRE","PREC_AIRE","MULTIFIBRE") - removeMotCleInFact(jdc,"AFFE_CARA_ELEM","POUTRE","PREC_AIRE",pasDeRegle(),0) - moveMotCleFromFactToFact(jdc,"AFFE_CARA_ELEM","POUTRE","PREC_INERTIE","MULTIFIBRE") - removeMotCleInFact(jdc,"AFFE_CARA_ELEM","POUTRE","PREC_INERTIE",pasDeRegle(),0) - # Résorption de la sensibilité - genereErreurMotCleInFact(jdc,"AFFE_CARA_ELEM","COQUE","EPAIS_F") - genereErreurMotCleInFact(jdc,"AFFE_CARA_ELEM","DISCRET","VALE_F") - genereErreurMotCleInFact(jdc,"AFFE_CARA_ELEM","DISCRET_2D","VALE_F") - # Suppression de GRILLE_NCOU - removeMotCleInFact(jdc,"AFFE_CARA_ELEM","GRILLE","GRILLE_NCOU",pasDeRegle(),0) - # Suppression de ORIG_AXE - removeMotCleInFact(jdc,"AFFE_CARA_ELEM","GRILLE","ORIG_AXE",pasDeRegle(),0) - - #### traitement de AFFE_CHAR_MECA/_F ############################## - renameMotCle(jdc,"AFFE_CHAR_MECA","SIGM_INTERNE","PRE_SIGM") - renameMotCle(jdc,"AFFE_CHAR_MECA","EPSI_INIT","PRE_EPSI") - renameMotCle(jdc,"AFFE_CHAR_MECA_F","SIGM_INTERNE","PRE_SIGM") - renameMotCle(jdc,"AFFE_CHAR_MECA_F","EPSI_INIT","PRE_EPSI") - - #### traitement de AFFE_CHAR_OPS011 ############################## - genereErreurPourCommande(jdc,("AFFE_CHAR_OPS011",)) - - #### traitement de AFFE_CHAR_THER/_F ############################## - renameMotCle(jdc,"AFFE_CHAR_THER","GRAD_TEMP_INIT","PRE_GRAD_TEMP") - renameMotCle(jdc,"AFFE_CHAR_THER_F","GRAD_TEMP_INIT","PRE_GRAD_TEMP") - - #### traitement de AFFE_MATERIAU ############################## - # VALE_REF obligatoire si NOM_VARC in ('TEMP', 'SECH') - lNOMVARC=["CORR","IRRA","HYDR","EPSA","M_ACIER","M_ZIRC","NEUT1","NEUT2"] - removeMotCleInFactSiRegle(jdc,"AFFE_MATERIAU","AFFE_VARC","VALE_REF",((("NOM_VARC",lNOMVARC,jdc),"MCsousMCFcourantaPourValeurDansListe"),)) - # renommage CHAMP_GD en CHAM_GD - renameMotCleInFact(jdc,"AFFE_MATERIAU","AFFE_VARC","CHAMP_GD","CHAM_GD",pasDeRegle(),0) - - #### traitement de AFFE_MODELE ############################## - dXFEMCONT={"3D_XFEM_CONT":"3D","C_PLAN_XFEM_CONT":"C_PLAN","D_PLAN_XFEM_CONT":"D_PLAN"} - changementValeurDsMCF(jdc,"AFFE_MODELE","AFFE","MODELISATION",dXFEMCONT) - - #### traitement de ASSE_ELEM_SSD ############################## - # Rien à faire - - #### traitement de ASSEMBLAGE ############################## - # Rien à faire, n'existe pas en 10 - - #### traitement de C_COMP_INCR ############################## - # Suppression de ALGO_C_PLAN et ALGO_1D - lCOMMANDE=["CALC_FORC_NONL","CALC_IFS_DNL","CALC_POINT_MAT", - "CALC_PRECONT","CALCUL","DYNA_NON_LINE","LIRE_RESU", - "MACR_ECREVISSE","SIMU_POINT_MAT","STAT_NON_LINE", - "TEST_COMPOR",] - for com in lCOMMANDE : - removeMotCleInFact(jdc,com,"COMP_INCR","ALGO_C_PLAN",pasDeRegle(),0) - removeMotCleInFact(jdc,com,"COMP_INCR","ALGO_1D",pasDeRegle(),0) - renameMotCleInFact(jdc,com,"COMP_INCR","RESI_DEBO_MAXI","RESI_CPLAN_MAXI",pasDeRegle(),0) - renameMotCleInFact(jdc,com,"COMP_INCR","RESI_DEBO_RELA","RESI_CPLAN_RELA",pasDeRegle(),0) - renameMotCleInFact(jdc,com,"COMP_INCR","ITER_MAXI_DEBORST","ITER_CPLAN_MAXI",pasDeRegle(),0) - - #### traitement de C_NEWTON ############################## - # Renommage de EXTRAPOL en EXTRAPOLE - lCOMMANDE=["CALC_IFS_DNL","CALC_POINT_MAT","CALC_PRECONT", - "DYNA_NON_LINE","MACR_ASCOUF_CALC","MACR_ASPIC_CALC", - "SIMU_POINT_MAT","STAT_NON_LINE","TEST_COMPOR",] - dPRED={"EXTRAPOL":"EXTRAPOLE"} - for com in lCOMMANDE : - changementValeurDsMCF(jdc,com,"NEWTON","PREDICTION",dPRED) - - #### traitement de C_SOLVEUR ############################## - # Renommage de EXTRAPOL en EXTRAPOLE - lCOMMANDE=["CALC_ELEM","CALC_FORC_AJOU","CALC_IFS_DNL", - "CALC_MATR_AJOU","CALC_PRECONT","CREA_ELEM_SSD", - "DEFI_BASE_MODALE","DYNA_LINE_HARM","DYNA_LINE_HARM", - "DYNA_LINE_TRAN","DYNA_NON_LINE","DYNA_TRAN_MODAL", - "IMPR_STURM","MACR_ASCOUF_CALC","MACR_ASPIC_CALC", - "MACRO_ELAS_MULT","MACRO_MATR_AJOU","MACRO_MATR_ASSE", - "MECA_STATIQUE","MODE_ITER_INV","MODE_ITER_INV", - "MODE_ITER_SIMULT","MODE_ITER_SIMULT","MODE_STATIQUE", - "STAT_NON_LINE","THER_LINEAIRE","THER_NON_LINE","THER_NON_LINE_MO",] - dPRED={"EXTRAPOL":"EXTRAPOLE"} - for com in lCOMMANDE : - removeMotCleInFact(jdc,com,"SOLVEUR","OUT_OF_CORE",pasDeRegle(),0) - removeMotCleInFact(jdc,com,"SOLVEUR","LIBERE_MEMOIRE",pasDeRegle(),0) - - #### traitement de CALC_CHAMP ############################## - # Rien à faire, n'existe pas en 10 - - #### traitement de CALC_ECREVISSE ############################## - # Rien à faire - - #### traitement de CALC_ELEM ############################## - # renommage de la commande - renameCommande(jdc,"CALC_ELEM","CALC_CHAMP", ) - # Suppression des types de charges - removeMotCleInFact(jdc,"CALC_CHAMP","EXCIT","TYPE_CHARGE",pasDeRegle(),0) - # Suppression des types d'option' - removeMotCle(jdc,"CALC_CHAMP","TYPE_OPTION",pasDeRegle(),0) - # Redistribution des options de calcul - ## dictionnaire contenant les options - lTOUT=["SIEF_ELNO","SIGM_ELNO","SIEF_ELGA", - "SIPO_ELNO","EFGE_ELNO","EFCA_ELNO","SICA_ELNO", - "SIRO_ELEM","SIPM_ELNO","SIRO_ELEM", - "EFCA_ELNO","SIPO_ELNO","SIPM_ELNO", - "EPTU_ELNO","SITU_ELNO","SICO_ELNO", - "EPSI_ELNO","EPSI_ELGA","EPSG_ELNO","EPSG_ELGA", - "EPME_ELNO","EPME_ELGA","EPMG_ELNO","EPMG_ELGA", - "DEGE_ELNO","EPTU_ELNO", - "EPSP_ELNO","EPSP_ELGA", - "EPFD_ELNO","EPFD_ELGA","EPVC_ELNO","EPVC_ELGA", - "EPFP_ELNO","EPFP_ELGA", - "EPOT_ELEM","ECIN_ELEM","ENEL_ELGA","ENEL_ELNO", - "ETOT_ELGA","ETOT_ELNO","ETOT_ELEM","DISS_ELGA","DISS_ELNO", - "SIEQ_ELNO","SIEQ_ELGA","CRIT_ELNO","EPEQ_ELNO","EPEQ_ELGA","EPMQ_ELNO","EPMQ_ELGA", - "ENDO_ELGA","ENDO_ELNO","SITQ_ELNO","EPTQ_ELNO","INDL_ELGA","DERA_ELNO","DERA_ELGA", - "SITQ_ELNO","EPTQ_ELNO", - "VARI_ELNO","VATU_ELNO","VACO_ELNO","VARC_ELGA", - "VAEX_ELGA","VAEX_ELNO", - "FLHN_ELGA", - "FLUX_ELGA","FLUX_ELNO","SOUR_ELGA", - "INTE_ELNO","PRAC_ELNO", - "SIZ1_NOEU","ERZ1_ELEM","SIZ2_NOEU","ERZ2_ELEM", - "ERME_ELEM","ERME_ELNO","ERTH_ELEM","ERTH_ELNO", - "QIRE_ELEM","QIRE_ELNO","QIZ1_ELEM","QIZ2_ELEM", - "SING_ELEM","SING_ELNO", - "DURT_ELNO"] - lCONTRAINTE=["SIEF_ELNO","SIGM_ELNO","SIEF_ELGA", - "SIPO_ELNO","EFGE_ELNO","EFCA_ELNO","SICA_ELNO", - "SIRO_ELEM","SIPM_ELNO","SIRO_ELEM", - "EFCA_ELNO","SIPO_ELNO","SIPM_ELNO", - "EPTU_ELNO","SITU_ELNO","SICO_ELNO",] - lDEFORMATION=["EPSI_ELNO","EPSI_ELGA","EPSG_ELNO","EPSG_ELGA", - "EPME_ELNO","EPME_ELGA","EPMG_ELNO","EPMG_ELGA", - "DEGE_ELNO","EPTU_ELNO", - "EPSP_ELNO","EPSP_ELGA", - "EPFD_ELNO","EPFD_ELGA","EPVC_ELNO","EPVC_ELGA", - "EPFP_ELNO","EPFP_ELGA",] - lENERGIE=["EPOT_ELEM","ECIN_ELEM","ENEL_ELGA","ENEL_ELNO", - "ETOT_ELGA","ETOT_ELNO","ETOT_ELEM","DISS_ELGA","DISS_ELNO",] - lCRITERES=["SIEQ_ELNO","SIEQ_ELGA","CRIT_ELNO","EPEQ_ELNO","EPEQ_ELGA","EPMQ_ELNO","EPMQ_ELGA", - "ENDO_ELGA","ENDO_ELNO","SITQ_ELNO","EPTQ_ELNO","INDL_ELGA","DERA_ELNO","DERA_ELGA", - "SITQ_ELNO","EPTQ_ELNO"] - lVARI_INTERNE=["VARI_ELNO","VATU_ELNO","VACO_ELNO","VARC_ELGA", - "VAEX_ELGA","VAEX_ELNO",] - lHYDRAULIQUE=["FLHN_ELGA",] - lTHERMIQUE=["FLUX_ELGA","FLUX_ELNO","SOUR_ELGA",] - lACOUSTIQUE=["INTE_ELNO","PRAC_ELNO"] - lERREUR=["SIZ1_NOEU","ERZ1_ELEM","SIZ2_NOEU","ERZ2_ELEM", - "ERME_ELEM","ERME_ELNO","ERTH_ELEM","ERTH_ELNO", - "QIRE_ELEM","QIRE_ELNO","QIZ1_ELEM","QIZ2_ELEM", - "SING_ELEM","SING_ELNO",] - lMETA=["DURT_ELNO"] - #SPMX_ELGA / NOM_CHAM / NOM_CMP - ## Erreur pour les options supprimées - genereErreurValeur(jdc,"CALC_ELEM","OPTION",("'SICA_ELNO'","'EFCA_ELNO'","'PMPB_ELNO'","'PMPB_ELGA'",)) - lCHANOPT={"SICO_ELNO":"SIGM_ELNO","EPTU_ELNO":"EPSI_ELNO","SITU_ELNO":"SIGM_ELNO","SITQ_ELNO":"SIGM_ELNO","EPTQ_ELNO":"EPSI_ELNO"} - changementValeur(jdc,"CALC_ELEM","OPTION",lCHANOPT) - ## copie de OPTION dans MCF TEMPORAIRE pour chaque type - chercheOperInsereFacteur(jdc,"CALC_CHAMP","TEMPORAIRE") - copyMotClefInOperToFact(jdc,"CALC_CHAMP","OPTION","TEMPORAIRE") - renameMotCleInFact(jdc,"CALC_CHAMP","TEMPORAIRE","OPTION","CONTRAINTE",pasDeRegle(),0) - copyMotClefInOperToFact(jdc,"CALC_CHAMP","OPTION","TEMPORAIRE") - renameMotCleInFact(jdc,"CALC_CHAMP","TEMPORAIRE","OPTION","DEFORMATION",pasDeRegle(),0) - copyMotClefInOperToFact(jdc,"CALC_CHAMP","OPTION","TEMPORAIRE") - renameMotCleInFact(jdc,"CALC_CHAMP","TEMPORAIRE","OPTION","ENERGIE",pasDeRegle(),0) - copyMotClefInOperToFact(jdc,"CALC_CHAMP","OPTION","TEMPORAIRE") - renameMotCleInFact(jdc,"CALC_CHAMP","TEMPORAIRE","OPTION","CRITERES",pasDeRegle(),0) - copyMotClefInOperToFact(jdc,"CALC_CHAMP","OPTION","TEMPORAIRE") - renameMotCleInFact(jdc,"CALC_CHAMP","TEMPORAIRE","OPTION","VARI_INTERNE",pasDeRegle(),0) - copyMotClefInOperToFact(jdc,"CALC_CHAMP","OPTION","TEMPORAIRE") - renameMotCleInFact(jdc,"CALC_CHAMP","TEMPORAIRE","OPTION","HYDRAULIQUE",pasDeRegle(),0) - copyMotClefInOperToFact(jdc,"CALC_CHAMP","OPTION","TEMPORAIRE") - renameMotCleInFact(jdc,"CALC_CHAMP","TEMPORAIRE","OPTION","THERMIQUE",pasDeRegle(),0) - copyMotClefInOperToFact(jdc,"CALC_CHAMP","OPTION","TEMPORAIRE") - renameMotCleInFact(jdc,"CALC_CHAMP","TEMPORAIRE","OPTION","ACOUSTIQUE",pasDeRegle(),0) - copyMotClefInOperToFact(jdc,"CALC_CHAMP","OPTION","TEMPORAIRE") - renameMotCleInFact(jdc,"CALC_CHAMP","TEMPORAIRE","OPTION","ERREUR",pasDeRegle(),0) - copyMotClefInOperToFact(jdc,"CALC_CHAMP","OPTION","TEMPORAIRE") - renameMotCleInFact(jdc,"CALC_CHAMP","TEMPORAIRE","OPTION","META",pasDeRegle(),0) - removeMotCle(jdc,"CALC_CHAMP","OPTION",pasDeRegle(),0) - ## déplacement au premier niveau de mot-clés - moveMotCleFromFactToFather(jdc,"CALC_CHAMP","TEMPORAIRE","CONTRAINTE") - moveMotCleFromFactToFather(jdc,"CALC_CHAMP","TEMPORAIRE","DEFORMATION") - moveMotCleFromFactToFather(jdc,"CALC_CHAMP","TEMPORAIRE","ENERGIE") - moveMotCleFromFactToFather(jdc,"CALC_CHAMP","TEMPORAIRE","CRITERES") - moveMotCleFromFactToFather(jdc,"CALC_CHAMP","TEMPORAIRE","VARI_INTERNE") - moveMotCleFromFactToFather(jdc,"CALC_CHAMP","TEMPORAIRE","HYDRAULIQUE") - moveMotCleFromFactToFather(jdc,"CALC_CHAMP","TEMPORAIRE","THERMIQUE") - moveMotCleFromFactToFather(jdc,"CALC_CHAMP","TEMPORAIRE","ACOUSTIQUE") - moveMotCleFromFactToFather(jdc,"CALC_CHAMP","TEMPORAIRE","ERREUR") - moveMotCleFromFactToFather(jdc,"CALC_CHAMP","TEMPORAIRE","META") - ## suppression des mot-clés s'ils ne contiennent pas d'options à traiter - removeMotCleSiRegle(jdc,"CALC_CHAMP","CONTRAINTE",((("CONTRAINTE",lCONTRAINTE,jdc),"MCnaPasPourValeurDansListe"),)) - removeMotCleSiRegle(jdc,"CALC_CHAMP","DEFORMATION",((("DEFORMATION",lDEFORMATION,jdc),"MCnaPasPourValeurDansListe"),)) - removeMotCleSiRegle(jdc,"CALC_CHAMP","ENERGIE",((("ENERGIE",lENERGIE,jdc),"MCnaPasPourValeurDansListe"),)) - removeMotCleSiRegle(jdc,"CALC_CHAMP","CRITERES",((("CRITERES",lCRITERES,jdc),"MCnaPasPourValeurDansListe"),)) - removeMotCleSiRegle(jdc,"CALC_CHAMP","VARI_INTERNE",((("VARI_INTERNE",lVARI_INTERNE,jdc),"MCnaPasPourValeurDansListe"),)) - removeMotCleSiRegle(jdc,"CALC_CHAMP","HYDRAULIQUE",((("HYDRAULIQUE",lHYDRAULIQUE,jdc),"MCnaPasPourValeurDansListe"),)) - removeMotCleSiRegle(jdc,"CALC_CHAMP","THERMIQUE",((("THERMIQUE",lTHERMIQUE,jdc),"MCnaPasPourValeurDansListe"),)) - removeMotCleSiRegle(jdc,"CALC_CHAMP","ACOUSTIQUE",((("ACOUSTIQUE",lACOUSTIQUE,jdc),"MCnaPasPourValeurDansListe"),)) - removeMotCleSiRegle(jdc,"CALC_CHAMP","ERREUR",((("ERREUR",lERREUR,jdc),"MCnaPasPourValeurDansListe"),)) - removeMotCleSiRegle(jdc,"CALC_CHAMP","META",((("META",lMETA,jdc),"MCnaPasPourValeurDansListe"),)) - ## suppression des valeurs non-licites - suppressionValeurs(jdc,"CALC_CHAMP","CONTRAINTE",list(set(lTOUT)-set(lCONTRAINTE))) - suppressionValeurs(jdc,"CALC_CHAMP","DEFORMATION",list(set(lTOUT)-set(lDEFORMATION))) - suppressionValeurs(jdc,"CALC_CHAMP","ENERGIE",list(set(lTOUT)-set(lENERGIE))) - suppressionValeurs(jdc,"CALC_CHAMP","CRITERES",list(set(lTOUT)-set(lCRITERES))) - suppressionValeurs(jdc,"CALC_CHAMP","VARI_INTERNE",list(set(lTOUT)-set(lVARI_INTERNE))) - suppressionValeurs(jdc,"CALC_CHAMP","HYDRAULIQUE",list(set(lTOUT)-set(lHYDRAULIQUE))) - suppressionValeurs(jdc,"CALC_CHAMP","THERMIQUE",list(set(lTOUT)-set(lTHERMIQUE))) - suppressionValeurs(jdc,"CALC_CHAMP","ACOUSTIQUE",list(set(lTOUT)-set(lACOUSTIQUE))) - suppressionValeurs(jdc,"CALC_CHAMP","ERREUR",list(set(lTOUT)-set(lERREUR))) - suppressionValeurs(jdc,"CALC_CHAMP","META",list(set(lTOUT)-set(lMETA))) - ## ajout CALC_META ou CALC_ERREUR - lMOTCLE=[] - lMOTCLE=["reuse","RESULTAT","TOUT_ORDRE","NUME_ORDRE","NUME_MODE","NOEUD_CMP","NOM_CAS", - "INST","FREQ","LIST_INST","LIST_FREQ","LIST_ORDRE","CRITERE","PRECISION","EXCIT"] - ### traitement métallurgie - llistMETA=[] - llistMETA=list(lMOTCLE) - llistMETA.extend(["META",]) - for mc in llistMETA : - copyMotClefInOperToFact(jdc,"CALC_CHAMP",mc,"TEMPORAIRE") - moveMCFToCommand(jdc,"CALC_CHAMP","TEMPORAIRE","CALC_META","TEMPORAIRE") - for mc in llistMETA : - moveMotCleFromFactToFather(jdc,"CALC_META","TEMPORAIRE",mc) - removeCommandeSiRegle(jdc,"CALC_META",((("META","COMP_INCR","ETAT_INIT"),"nexistepasMCFParmi"),)) - renameMotCle(jdc,"CALC_META","META","OPTION") - removeMotCle(jdc,"CALC_META","TEMPORAIRE",pasDeRegle(),0) - removeMotCle(jdc,"CALC_CHAMP","TEMPORAIRE",pasDeRegle(),0) - ### traitement calcul d'erreur - llistERREUR=[] - llistERREUR=list(lMOTCLE) - llistERREUR.extend(["ERREUR","SOLVEUR","RESU_DUAL","PREC_ESTI","TYPE_ESTI"]) - for mc in llistERREUR : - copyMotClefInOperToFact(jdc,"CALC_CHAMP",mc,"TEMPORAIRE") - moveMCFToCommand(jdc,"CALC_CHAMP","TEMPORAIRE","CALC_ERREUR","TEMPORAIRE") - for mc in llistERREUR : - moveMotCleFromFactToFather(jdc,"CALC_ERREUR","TEMPORAIRE",mc) - removeCommandeSiRegle(jdc,"CALC_ERREUR",((("ERREUR"),"nexistepasMCFParmi"),)) - renameMotCle(jdc,"CALC_ERREUR","ERREUR","OPTION") - removeMotCle(jdc,"CALC_ERREUR","TEMPORAIRE",pasDeRegle(),0) - removeMotCle(jdc,"CALC_CHAMP","TEMPORAIRE",pasDeRegle(),0) - ### traitement de REPE_COQUE - removeMotCle(jdc,"CALC_CHAMP","REPE_COQUE",pasDeRegle(),1) - ## ménage final - removeCommandeSiRegle(jdc,"CALC_CHAMP",((("CONTRAINTE","DEFORMATION","ENERGIE","CRITERES","VARI_INTERNE","HYDRAULIQUE","THERMIQUE","ACOUSTIQUE"),"nexistepasMCFParmi"),)) - removeMotCle(jdc,"CALC_CHAMP","META",pasDeRegle(),0) - removeMotCle(jdc,"CALC_CHAMP","ERREUR",pasDeRegle(),0) - - #### traitement de CALC_ERREUR ############################## - # Rien à faire, n'existe pas en 10 - - #### traitement de CALC_ESSAI ############################## - # Rien à faire - - #### traitement de CALC_EUROPLEXUS ############################## - # Rien à faire - - #### traitement de CALC_FATIGUE ############################## - # Rien à faire - - #### traitement de CALC_FERRAILLAGE ############################## - # Rien à faire - - #### traitement de CALC_FONCTION ############################## - # Rien à faire - - #### traitement de CALC_FORC_AJOU ############################## - # Rien à faire - - #### traitement de CALC_G ############################## - # Suppression SYME_CHAR - removeMotCle(jdc,"CALC_G","SYME_CHAR",pasDeRegle(),0) - # Règle sur DEGRE - removeMotCleInFactSiRegle(jdc,"CALC_G","LISSAGE","DEGRE",((("LISSAGE_THETA","LEGENDRE",jdc),"MCnaPasPourValeur")or(("LISSAGE_G","LEGENDRE",jdc),"MCnaPasPourValeur"),)) - # Suppression de DTAN_ORIG et DTAN_EXTR pour calcul automatique - removeMotCleInFact(jdc,"CALC_G","THETA","DTAN_ORIG",pasDeRegle(),1) - removeMotCleInFact(jdc,"CALC_G","THETA","DTAN_EXTR",pasDeRegle(),1) - # Résorption de la sensibilité - removeMotCle(jdc,"CALC_G","SENSIBILITE",pasDeRegle(),0) - # Restriction de ETAT_INIT à SIGM_INIT sous COMP_INCR - moveMotCleFromFactToFact(jdc,"CALC_G","ETAT_INIT","SIGM","COMP_INCR") - renameMotCleInFact(jdc,"CALC_G","COMP_INCR","SIGM","SIGM_INIT",pasDeRegle(),0) - removeMotCleInFactSiRegle(jdc,"CALC_G","COMP_INCR","SIGM_INIT",((("RELATION","ELAS",jdc),"MCnaPasPourValeur"),)) - removeMotCle(jdc,"CALC_G","ETAT_INIT",pasDeRegle(),0) - # Renommage de l'option K_G_MODA en CALC_K_G - changementValeur(jdc,"CALC_G","OPTION",{"K_G_MODA":"CALC_K_G",}) - # Suppression de EXCIT dans le cas elas_mult - removeMotCleSiRegle(jdc,"CALC_G","EXCIT",((("NOM_CAS",),"existe"),)) - # Ajout règle UN_PARMI('THETA','FOND_FISS','FISSURE') - removeMotCleInFactSiRegle(jdc,"CALC_G","THETA","THETA",((("THETA","FOND_FISS",),"existeMCsousMCF"),)) - removeMotCleInFactSiRegle(jdc,"CALC_G","THETA","THETA",((("THETA","FISSURE",),"existeMCsousMCF"),)) - - #### traitement de CALC_IFS_DNL ############################## - # Renommage CRIT_FLAMB en CRIT_STAB - renameMotCle(jdc,"CALC_IFS_DNL","CRIT_FLAMB","CRIT_STAB") - removeMotCleInFact(jdc,"CALC_IFS_DNL","CRIT_FLAMB","INST_CALCUL",pasDeRegle(),1) - # Résorption de la sensibilité - removeMotCle(jdc,"CALC_IFS_DNL","SENSIBILITE",pasDeRegle(),0) - # Suppression de ARCHIVAGE/DETR_NUME_SUIV - removeMotCleInFact(jdc,"CALC_IFS_DNL","ARCHIVAGE","DETR_NUME_SUIV",pasDeRegle(),0) - - #### traitement de CALC_INTE_SPEC ############################## - # Rien à faire - - #### traitement de CALC_MAC3COEUR ############################## - # Rien à faire, n'existe pas en 10 - - #### traitement de CALC_MATR_AJOU ############################## - # Suppression d'algo pour PETSc - removeMotCleSiRegle(jdc,"RESOUDRE","ALGORITHME",((("BCGS","BICG","TFQMR",),"MCaPourValeur"),)) - - #### traitement de CALC_MATR_ELEM ############################## - # Rien à faire - - #### traitement de CALC_META ############################## - # OPTION est obligatoire - chercheOperInsereFacteurSiRegle(jdc,"CALC_META","OPTION='META_ELNO'",((("OPTION",),"nexistepas"),),0) - - #### traitement de CALC_MISS ############################## - # Suppression de TYPE_CHARGE - removeMotCle(jdc,"CALC_MISS","TYPE_CHARGE",pasDeRegle(),0) - - #### traitement de CALC_MODAL ############################## - # renommage de STOP_FREQ_VIDE - renameMotCle(jdc,"CALC_MODAL","STOP_FREQ_VIDE","STOP_BANDE_VIDE") - - #### traitement de CALC_MODE_ROTATION ############################## - # renommage de MATR_A et MATR_B - renameMotCle(jdc,"CALC_MODE_ROTATION","MATR_A","MATR_RIGI") - renameMotCle(jdc,"CALC_MODE_ROTATION","MATR_B","MATR_MASS") - - #### traitement de CALC_NO ############################## - # renommage de la commande - renameCommande(jdc,"CALC_NO","CALC_CHAMPNO", ) - # Suppression des types de charges - removeMotCleInFact(jdc,"CALC_CHAMPNO","EXCIT","TYPE_CHARGE",pasDeRegle(),0) - # Redistribution des options de calcul - ## dictionnaire contenant les options - lTOUT=["FORC_NODA","REAC_NODA","DERA_NOEU","DURT_NOEU","EFCA_NOEU", - "EFGE_NOEU","ENDO_NOEU","ENEL_NOEU","EPMG_NOEU","EPSG_NOEU", - "EPSI_NOEU","EPSP_NOEU","EPVC_NOEU","EPFD_NOEU","EPFP_NOEU", - "EPMQ_NOEU","EPEQ_NOEU","SIEQ_NOEU","ERME_NOEU","ERTH_NOEU", - "QIRE_NOEU","FLUX_NOEU","HYDR_NOEU","INTE_NOEU","META_NOEU", - "PMPB_NOEU","PRAC_NOEU","SIEF_NOEU","SICA_NOEU","SICO_NOEU", - "SIGM_NOEU","SIPO_NOEU","VAEX_NOEU","VARI_NOEU","DISS_NOEU"] - lCONTRAINTE=["EFCA_NOEU","EFGE_NOEU","SIEF_NOEU","SICA_NOEU", - "SICO_NOEU","SIGM_NOEU","SIPO_NOEU",] - lDEFORMATION=["EPMG_NOEU","EPSG_NOEU","EPSI_NOEU","EPSP_NOEU", - "EPVC_NOEU","EPFD_NOEU","EPFP_NOEU",] - lENERGIE=["ENEL_NOEU","DISS_NOEU",] - lCRITERES=["DERA_NOEU","ENDO_NOEU","EPEQ_NOEU","EPMQ_NOEU", - "SIEQ_NOEU","PMPB_NOEU",] - lVARI_INTERNE=["VAEX_NOEU","VARI_NOEU",] - lTHERMIQUE=["FLUX_NOEU","HYDR_NOEU",] - lACOUSTIQUE=["INTE_NOEU","PRAC_NOEU",] - lFORCE=["FORC_NODA","REAC_NODA",] - lERREUR=["ERME_NOEU","ERTH_NOEU","QIRE_NOEU",] - lMETA=["DURT_NOEU","META_NOEU",] - ## Erreur pour les options supprimées - genereErreurValeur(jdc,"CALC_CHAMPNO","OPTION",("'SICA_NOEU'","'EFCA_NOEU'","'PMPB_NOEU'",)) - changementValeur(jdc,"CALC_CHAMPNO","OPTION",{"SICO_NOEU":"SIGM_NOEU",}) - ## copie de OPTION dans MCF TEMPORAIRE pour chaque type - chercheOperInsereFacteur(jdc,"CALC_CHAMPNO","TEMPORAIRE") - copyMotClefInOperToFact(jdc,"CALC_CHAMPNO","OPTION","TEMPORAIRE") - renameMotCleInFact(jdc,"CALC_CHAMPNO","TEMPORAIRE","OPTION","CONTRAINTE",pasDeRegle(),0) - copyMotClefInOperToFact(jdc,"CALC_CHAMPNO","OPTION","TEMPORAIRE") - renameMotCleInFact(jdc,"CALC_CHAMPNO","TEMPORAIRE","OPTION","DEFORMATION",pasDeRegle(),0) - copyMotClefInOperToFact(jdc,"CALC_CHAMPNO","OPTION","TEMPORAIRE") - renameMotCleInFact(jdc,"CALC_CHAMPNO","TEMPORAIRE","OPTION","ENERGIE",pasDeRegle(),0) - copyMotClefInOperToFact(jdc,"CALC_CHAMPNO","OPTION","TEMPORAIRE") - renameMotCleInFact(jdc,"CALC_CHAMPNO","TEMPORAIRE","OPTION","CRITERES",pasDeRegle(),0) - copyMotClefInOperToFact(jdc,"CALC_CHAMPNO","OPTION","TEMPORAIRE") - renameMotCleInFact(jdc,"CALC_CHAMPNO","TEMPORAIRE","OPTION","VARI_INTERNE",pasDeRegle(),0) - copyMotClefInOperToFact(jdc,"CALC_CHAMPNO","OPTION","TEMPORAIRE") - renameMotCleInFact(jdc,"CALC_CHAMPNO","TEMPORAIRE","OPTION","THERMIQUE",pasDeRegle(),0) - copyMotClefInOperToFact(jdc,"CALC_CHAMPNO","OPTION","TEMPORAIRE") - renameMotCleInFact(jdc,"CALC_CHAMPNO","TEMPORAIRE","OPTION","ACOUSTIQUE",pasDeRegle(),0) - copyMotClefInOperToFact(jdc,"CALC_CHAMPNO","OPTION","TEMPORAIRE") - renameMotCleInFact(jdc,"CALC_CHAMPNO","TEMPORAIRE","OPTION","FORCE",pasDeRegle(),0) - copyMotClefInOperToFact(jdc,"CALC_CHAMPNO","OPTION","TEMPORAIRE") - renameMotCleInFact(jdc,"CALC_CHAMPNO","TEMPORAIRE","OPTION","ERREUR",pasDeRegle(),0) - copyMotClefInOperToFact(jdc,"CALC_CHAMPNO","OPTION","TEMPORAIRE") - renameMotCleInFact(jdc,"CALC_CHAMPNO","TEMPORAIRE","OPTION","META",pasDeRegle(),0) - removeMotCle(jdc,"CALC_CHAMPNO","OPTION",pasDeRegle(),0) - ## déplacement au premier niveau de mot-clés - moveMotCleFromFactToFather(jdc,"CALC_CHAMPNO","TEMPORAIRE","CONTRAINTE") - moveMotCleFromFactToFather(jdc,"CALC_CHAMPNO","TEMPORAIRE","DEFORMATION") - moveMotCleFromFactToFather(jdc,"CALC_CHAMPNO","TEMPORAIRE","ENERGIE") - moveMotCleFromFactToFather(jdc,"CALC_CHAMPNO","TEMPORAIRE","CRITERES") - moveMotCleFromFactToFather(jdc,"CALC_CHAMPNO","TEMPORAIRE","VARI_INTERNE") - moveMotCleFromFactToFather(jdc,"CALC_CHAMPNO","TEMPORAIRE","THERMIQUE") - moveMotCleFromFactToFather(jdc,"CALC_CHAMPNO","TEMPORAIRE","ACOUSTIQUE") - moveMotCleFromFactToFather(jdc,"CALC_CHAMPNO","TEMPORAIRE","FORCE") - moveMotCleFromFactToFather(jdc,"CALC_CHAMPNO","TEMPORAIRE","ERREUR") - moveMotCleFromFactToFather(jdc,"CALC_CHAMPNO","TEMPORAIRE","META") - ## suppression des mot-clés s'ils ne contiennent pas d'options à traiter - removeMotCleSiRegle(jdc,"CALC_CHAMPNO","CONTRAINTE",((("CONTRAINTE",lCONTRAINTE,jdc),"MCnaPasPourValeurDansListe"),)) - removeMotCleSiRegle(jdc,"CALC_CHAMPNO","DEFORMATION",((("DEFORMATION",lDEFORMATION,jdc),"MCnaPasPourValeurDansListe"),)) - removeMotCleSiRegle(jdc,"CALC_CHAMPNO","ENERGIE",((("ENERGIE",lENERGIE,jdc),"MCnaPasPourValeurDansListe"),)) - removeMotCleSiRegle(jdc,"CALC_CHAMPNO","CRITERES",((("CRITERES",lCRITERES,jdc),"MCnaPasPourValeurDansListe"),)) - removeMotCleSiRegle(jdc,"CALC_CHAMPNO","VARI_INTERNE",((("VARI_INTERNE",lVARI_INTERNE,jdc),"MCnaPasPourValeurDansListe"),)) - removeMotCleSiRegle(jdc,"CALC_CHAMPNO","THERMIQUE",((("THERMIQUE",lTHERMIQUE,jdc),"MCnaPasPourValeurDansListe"),)) - removeMotCleSiRegle(jdc,"CALC_CHAMPNO","ACOUSTIQUE",((("ACOUSTIQUE",lACOUSTIQUE,jdc),"MCnaPasPourValeurDansListe"),)) - removeMotCleSiRegle(jdc,"CALC_CHAMPNO","FORCE",((("FORCE",lFORCE,jdc),"MCnaPasPourValeurDansListe"),)) - removeMotCleSiRegle(jdc,"CALC_CHAMPNO","ERREUR",((("ERREUR",lERREUR,jdc),"MCnaPasPourValeurDansListe"),)) - removeMotCleSiRegle(jdc,"CALC_CHAMPNO","META",((("META",lMETA,jdc),"MCnaPasPourValeurDansListe"),)) - ## suppression des valeurs non-licites - suppressionValeurs(jdc,"CALC_CHAMPNO","CONTRAINTE",list(set(lTOUT)-set(lCONTRAINTE))) - suppressionValeurs(jdc,"CALC_CHAMPNO","DEFORMATION",list(set(lTOUT)-set(lDEFORMATION))) - suppressionValeurs(jdc,"CALC_CHAMPNO","ENERGIE",list(set(lTOUT)-set(lENERGIE))) - suppressionValeurs(jdc,"CALC_CHAMPNO","CRITERES",list(set(lTOUT)-set(lCRITERES))) - suppressionValeurs(jdc,"CALC_CHAMPNO","VARI_INTERNE",list(set(lTOUT)-set(lVARI_INTERNE))) - suppressionValeurs(jdc,"CALC_CHAMPNO","THERMIQUE",list(set(lTOUT)-set(lTHERMIQUE))) - suppressionValeurs(jdc,"CALC_CHAMPNO","ACOUSTIQUE",list(set(lTOUT)-set(lACOUSTIQUE))) - suppressionValeurs(jdc,"CALC_CHAMPNO","FORCE",list(set(lTOUT)-set(lFORCE))) - suppressionValeurs(jdc,"CALC_CHAMPNO","ERREUR",list(set(lTOUT)-set(lERREUR))) - suppressionValeurs(jdc,"CALC_CHAMPNO","META",list(set(lTOUT)-set(lMETA))) - ## ajout CALC_METANO ou CALC_ERREURNO - lMOTCLE=[] - lMOTCLE=["reuse","RESULTAT","TOUT_ORDRE","NUME_ORDRE","NUME_MODE","NOEUD_CMP","NOM_CAS", - "INST","FREQ","LIST_INST","LIST_FREQ","LIST_ORDRE","CRITERE","PRECISION","EXCIT"] - ### traitement métallurgie - llistMETA=[] - llistMETA=list(lMOTCLE) - llistMETA.append("META") - for mc in llistMETA : - copyMotClefInOperToFact(jdc,"CALC_CHAMPNO",mc,"TEMPORAIRE") - moveMCFToCommand(jdc,"CALC_CHAMPNO","TEMPORAIRE","CALC_METANO","TEMPORAIRE") - for mc in llistMETA : - moveMotCleFromFactToFather(jdc,"CALC_METANO","TEMPORAIRE",mc) - removeCommandeSiRegle(jdc,"CALC_METANO",((("META"),"nexistepasMCFParmi"),)) - renameMotCle(jdc,"CALC_METANO","META","OPTION") - removeMotCle(jdc,"CALC_METANO","TEMPORAIRE",pasDeRegle(),0) - removeMotCle(jdc,"CALC_CHAMPNO","TEMPORAIRE",pasDeRegle(),0) - ### traitement calcul d'erreur - llistERREUR=[] - llistERREUR=list(lMOTCLE) - llistERREUR.append("ERREUR") - for mc in llistERREUR : - copyMotClefInOperToFact(jdc,"CALC_CHAMPNO",mc,"TEMPORAIRE") - moveMCFToCommand(jdc,"CALC_CHAMPNO","TEMPORAIRE","CALC_ERREURNO","TEMPORAIRE") - for mc in llistERREUR : - moveMotCleFromFactToFather(jdc,"CALC_ERREURNO","TEMPORAIRE",mc) - removeCommandeSiRegle(jdc,"CALC_ERREURNO",((("ERREUR"),"nexistepasMCFParmi"),)) - renameMotCle(jdc,"CALC_ERREURNO","ERREUR","OPTION") - removeMotCle(jdc,"CALC_ERREURNO","TEMPORAIRE",pasDeRegle(),0) - removeMotCle(jdc,"CALC_CHAMPNO","TEMPORAIRE",pasDeRegle(),0) - ## ménage final - removeCommandeSiRegle(jdc,"CALC_CHAMPNO",((("CONTRAINTE","DEFORMATION","ENERGIE","CRITERES","VARI_INTERNE","THERMIQUE","ACOUSTIQUE","FORCE"),"nexistepasMCFParmi"),)) - renameCommande(jdc,"CALC_CHAMPNO","CALC_CHAMP") - renameCommande(jdc,"CALC_METANO","CALC_META") - renameCommande(jdc,"CALC_ERREURNO","CALC_ERREUR") - removeMotCle(jdc,"CALC_CHAMP","METANO",pasDeRegle(),0) - removeMotCle(jdc,"CALC_CHAMP","ERREURNO",pasDeRegle(),0) - - #### traitement de CALC_POINT_MAT ############################## - # Rien à faire - - #### traitement de CALC_PRECONT ############################## - # Renommage de IMPLEX - changementValeur(jdc,"CALC_PRECONT","METHODE",{"IMPL_EX":"IMPLEX"}) - removeMotCle(jdc,"CALC_PRECONT","IMPL_EX",pasDeRegle(),0) - - #### traitement de CALC_SENSI ############################## - # Résorption de la sensibilité - removeCommande(jdc,"CALC_SENSI") - #genereErreurPourCommande(jdc,("CALC_SENSI",)) - - #### traitement de CALC_SPEC ############################## - # Déplacement d'un mot-clé facteur facteur - moveMotCleFromFactToFather(jdc,"CALC_SPEC","TAB_ECHANT","LONGUEUR_ECH") - moveMotCleFromFactToFather(jdc,"CALC_SPEC","LONGUEUR_ECH","DUREE") - moveMotCleFromFactToFather(jdc,"CALC_SPEC","LONGUEUR_ECH","POURCENT") - moveMotCleFromFactToFather(jdc,"CALC_SPEC","LONGUEUR_ECH","NB_PTS") - removeMotCle(jdc,"CALC_SPEC","LONGUEUR_ECH",pasDeRegle(),0) - renameMotCle(jdc,"CALC_SPEC","DUREE","LONGUEUR_DUREE") - renameMotCle(jdc,"CALC_SPEC","POURCENT","LONGUEUR_POURCENT") - renameMotCle(jdc,"CALC_SPEC","NB_PTS","LONGUEUR_NB_PTS") - moveMotClefInOperToFact(jdc,"CALC_SPEC","LONGUEUR_DUREE","TAB_ECHANT") - moveMotClefInOperToFact(jdc,"CALC_SPEC","POURCENT_DUREE","TAB_ECHANT") - moveMotClefInOperToFact(jdc,"CALC_SPEC","LONGUEUR_NB_PTS","TAB_ECHANT") - moveMotCleFromFactToFather(jdc,"CALC_SPEC","TAB_ECHANT","RECOUVREMENT") - moveMotCleFromFactToFather(jdc,"CALC_SPEC","RECOUVREMENT","DUREE") - moveMotCleFromFactToFather(jdc,"CALC_SPEC","RECOUVREMENT","POURCENT") - moveMotCleFromFactToFather(jdc,"CALC_SPEC","RECOUVREMENT","NB_PTS") - removeMotCle(jdc,"CALC_SPEC","RECOUVREMENT",pasDeRegle(),0) - renameMotCle(jdc,"CALC_SPEC","DUREE","RECOUVREMENT_DUREE") - renameMotCle(jdc,"CALC_SPEC","POURCENT","RECOUVREMENT_POURCENT") - renameMotCle(jdc,"CALC_SPEC","NB_PTS","RECOUVREMENT_NB_PTS") - moveMotClefInOperToFact(jdc,"CALC_SPEC","RECOUVREMENT_DUREE","TAB_ECHANT") - moveMotClefInOperToFact(jdc,"CALC_SPEC","RECOUVREMENT_POURCENT","TAB_ECHANT") - moveMotClefInOperToFact(jdc,"CALC_SPEC","RECOUVREMENT_NB_PTS","TAB_ECHANT") - - #### traitement de CALC_TABLE ############################## - # Renommage de AJOUT en AJOUT_LIGNE - dOPE={"AJOUT":"AJOUT_LIGNE",} - changementValeurDsMCF(jdc,"CALC_TABLE","ACTION","OPERATION",dOPE) - # Résorption de la sensibilité - removeMotCle(jdc,"CALC_TABLE","SENSIBILITE",pasDeRegle(),0) - # Renommage critere table - dCRIT={"ABS_MAXI":"MAXI_ABS","ABS_MINI":"MINI_ABS"} - changementValeurDsMCF(jdc,"CALC_TABLE","FILTRE","CRIT_COMP",dCRIT) - - #### traitement de CALC_THETA ############################## - # Résorption de la sensibilité - removeMotCle(jdc,"CALC_THETA","OPTION",pasDeRegle(),0) - removeMotCle(jdc,"CALC_THETA","THETA_BANDE",pasDeRegle(),1) - removeMotCle(jdc,"CALC_THETA","GRAD_NOEU_THETA",pasDeRegle(),0) - - #### traitement de COMB_FOURIER ############################## - # Homogénéisation de ANGLE - renameMotCle(jdc,"COMB_FOURIER","ANGL","ANGLE") - - #### traitement de COMB_SISM_MODAL ############################## - genereErreurValeur(jdc,"COMB_SISM_MODAL","OPTION",("'EFCA_ELNO'",)) - - #### traitement de CREA_CHAMP ############################## - removeMotCle(jdc,"CREA_CHAMP","SENSIBILITE",pasDeRegle(),0) - removeMotCle(jdc,"CREA_CHAMP","PROL_ZERO",pasDeRegle(),0) - - #### traitement de CREA_ELEM_SSD ############################## - # Rien à faire - - #### traitement de CREA_MAILLAGE ############################## - # Suppression de la possibilité de copier un maillage - lFACTEUR=['COQU_VOLU', 'CREA_FISS', 'CREA_GROUP_MA', 'CREA_MAILLE', 'CREA_POI1', - 'DETR_GROUP_MA', 'ECLA_PG', 'HEXA20_27', 'LINE_QUAD', 'MODI_MAILLE', - 'QUAD_LINE', 'REPERE','RESTREINT','PENTA15_18','GEOM_FIBRE'] - renameCommandeSiRegle(jdc,"CREA_MAILLAGE","COPIER",(((lFACTEUR),"nexistepasMCFParmi"),)) - renameMotCle(jdc,"COPIER","MAILLAGE","CONCEPT") - - #### traitement de CREA_RESU ############################## - # Rien à faire - - #### traitement de CREA_TABLE ############################## - removeMotCle(jdc,"CREA_TABLE","SENSIBILITE",pasDeRegle(),0) - - #### traitement de DEBUT ############################## - # Suppression du mot-clé TITRE - removeMotCleInFact(jdc,"DEBUT","CATALOGUE","TITRE",pasDeRegle(),0) - # Suppression du mot-clé IMPRESSION - removeMotCle(jdc,"DEBUT","IMPRESSION",pasDeRegle(),0) - # Suppression des mots-clés mémoire dynamique - removeMotCleInFact(jdc,"DEBUT","MEMOIRE","GESTION",pasDeRegle(),0) - removeMotCleInFact(jdc,"DEBUT","MEMOIRE","TYPE_ALLOCATION",pasDeRegle(),0) - removeMotCleInFact(jdc,"DEBUT","MEMOIRE","TAILLE",pasDeRegle(),0) - removeMotCleInFact(jdc,"DEBUT","MEMOIRE","PARTITION",pasDeRegle(),0) - removeMotCleInFact(jdc,"DEBUT","MEMOIRE","DYNAMIQUE",pasDeRegle(),0) - - #### traitement de DEFI_BASE_MODALE ############################## - # Rien à faire - - #### traitement de DEFI_CABLE_BP ############################## - # Rien à faire - - #### traitement de DEFI_COMPOR ############################## - # Suppression famille de sytèmes de glissement - lFAMGLIS=["'BASAL'", "'PRISMATIQUE'","'PYRAMIDAL1'","'PYRAMIDAL2'","'MACLAGE'",] - genereErreurValeurDsMCF(jdc,"DEFI_COMPOR","MONOCRISTAL","FAMI_SYST_GLIS",lFAMGLIS) - # Suppression famille de sytèmes de glissement - genereErreurValeurDsMCF(jdc,"DEFI_COMPOR","MONOCRISTAL","ECOULEMENT",("'MONO_VISC3'",)) - # Suppression de ALGO_1D - removeMotCleInFact(jdc,"DEFI_COMPOR","MULTIFIBRE","ALGO_1D",pasDeRegle(),0) - # Suppression de DEFORMATION - genereErreurMotCleInFact(jdc,"DEFI_COMPOR","MULTIFIBRE","DEFORMATION") - - #### traitement de DEFI_CONTACT ############################## - genereErreurValeurDsMCF(jdc,"DEFI_CONTACT","ZONE","ALGO_CONT",("'AVANCE'",)) - genereErreurValeurDsMCF(jdc,"DEFI_CONTACT","ZONE","ALGO_FROT",("'AVANCE'",)) - # résorption de RACCORD_LINE_QUAD et éléments de Barsoum - genereErreurMCF(jdc,"DEFI_CONTACT","FOND_FISSURE") - genereErreurMCF(jdc,"DEFI_CONTACT","NOEUD_FOND") - genereErreurMCF(jdc,"DEFI_CONTACT","GROUP_NO_FOND") - genereErreurMCF(jdc,"DEFI_CONTACT","MAILLE_FOND") - genereErreurMCF(jdc,"DEFI_CONTACT","GROUP_MA_FOND") - genereErreurMCF(jdc,"DEFI_CONTACT","RACCORD_LINE_QUAD") - genereErreurMCF(jdc,"DEFI_CONTACT","NOEUD_RACC") - genereErreurMCF(jdc,"DEFI_CONTACT","GROUP_NO_RACC") - genereErreurMCF(jdc,"DEFI_CONTACT","EXCLUSION_PIV_NUL") - genereErreurMCF(jdc,"DEFI_CONTACT","COEF_ECHELLE") - # résorption de COMPLIANCE - genereErreurMCF(jdc,"DEFI_CONTACT","COMPLIANCE") - genereErreurMCF(jdc,"DEFI_CONTACT","ASPERITE") - genereErreurMCF(jdc,"DEFI_CONTACT","E_N") - genereErreurMCF(jdc,"DEFI_CONTACT","E_V") - # résorption de l'usure - genereErreurMCF(jdc,"DEFI_CONTACT","USURE") - genereErreurMCF(jdc,"DEFI_CONTACT","K") - genereErreurMCF(jdc,"DEFI_CONTACT","H") - # Suppression de schémas d'inégration pour XFEM - lSCHEMA=["FPG2","FPG3","FPG4","FPG6","FPG7","SIMPSON1","NCOTES1","NCOTES2"] - removeMotCleInFactSiRegle(jdc,"DEFI_CONTACT","ZONE","INTEGRATION",((("FORMULATION","XFEM",jdc),"MCaPourValeur")and(("ZONE","INTEGRATION",lSCHEMA,jdc),"MCsousMCFaPourValeurDansListe"),),) - # règles sur relation - removeMotCleInFactSiRegle(jdc,"DEFI_CONTACT","ZONE","RELATION",((("ZONE","RELATION","NON",jdc),"MCsousMCFaPourValeur"),),) - # Suppression de schémas d'inégration pour méthode CONTINUE - lSCHEMA=["NOEUD","SIMPSON1","SIMPSON2","NCOTES1","NCOTES2"] - removeMotCleInFactSiRegle(jdc,"DEFI_CONTACT","ZONE","INTEGRATION",((("FORMULATION","CONTINUE",jdc),"MCaPourValeur")and(("ZONE","INTEGRATION",lSCHEMA,jdc),"MCsousMCFaPourValeurDansListe"),),) - # Ajout règle sur REAC_GEOM - removeMotCleSiRegle(jdc,"DEFI_CONTACT","REAC_GEOM",((("ALGO_RESO_GEOM","NEWTON",jdc),"MCaPourValeur"),)) - - #### traitement de DEFI_COQU_MULT ############################## - renameCommande(jdc,"DEFI_COQU_MULT","DEFI_COMPOSITE", ) - - #### traitement de DEFI_FICHIER ############################## - # Rien à faire - - #### traitement de DEFI_FISS_XFEM ############################## - # Suppression de ORIE_FOND - removeMotCle(jdc,"DEFI_FISS_XFEM","ORIE_FOND",pasDeRegle(),0) - # Fusion FORM_FISS='ELLIPSE' et FORM_FISS='INCLUSION' - dFORME={"INCLUSION":"ELLIPSE",} - changementValeurDsMCF(jdc,"DEFI_FISS_XFEM","DEFI_FISS","FORM_FISS",dOPE) - - #### traitement de DEFI_FONC_ELEC ############################## - # Rien à faire - - #### traitement de DEFI_FOND_FISS ############################## - renameMotCle(jdc,"DEFI_FOND_FISS","FOND_FISS","FONDFISS") - # Cas FOND OUVERT - ajouteMotClefDansFacteurCourantSiRegle(jdc,"DEFI_FOND_FISS","FONDFISS","TYPE_FOND='OUVERT'",((("FONDFISS",),"existe"),)) - # Cas FOND FERME - chercheOperInsereFacteurSiRegle(jdc,"DEFI_FOND_FISS","TYPE_FOND='FERME'",((("FOND_FERME",),"existe"),),0) - renameMotCle(jdc,"DEFI_FOND_FISS","FOND_FERME","FONDFISS") - moveMotClefInOperToFact(jdc,"DEFI_FOND_FISS","TYPE_FOND","FONDFISS") - # Cas FOND INF - chercheOperInsereFacteurSiRegle(jdc,"DEFI_FOND_FISS","TYPE_FOND='INF'",((("FOND_INF",),"existe"),),0) - renameMotCle(jdc,"DEFI_FOND_FISS","FOND_SUP","FONDFISS") - moveMotClefInOperToFact(jdc,"DEFI_FOND_FISS","TYPE_FOND","FONDFISS") - # Cas FOND SUP - chercheOperInsereFacteurSiRegle(jdc,"DEFI_FOND_FISS","TYPE_FOND='SUP'",((("FOND_SUP",),"existe"),),0) - renameMotCle(jdc,"DEFI_FOND_FISS","FOND_SUP","FONDFISS") - moveMotClefInOperToFact(jdc,"DEFI_FOND_FISS","TYPE_FOND","FONDFISS") - # Autres mots-clés - moveMotClefInOperToFact(jdc,"DEFI_FOND_FISS","DTAN_ORIG","FONDFISS") - moveMotClefInOperToFact(jdc,"DEFI_FOND_FISS","DTAN_EXTR","FONDFISS") - moveMotClefInOperToFact(jdc,"DEFI_FOND_FISS","VECT_GRNO_ORIG","FONDFISS") - moveMotClefInOperToFact(jdc,"DEFI_FOND_FISS","VECT_GRNO_EXTR","FONDFISS") - removeMotCle(jdc,"DEFI_FOND_FISS","NORMALE",pasDeRegle(),0) - # - renameMotCle(jdc,"DEFI_FOND_FISS","FONDFISS","FOND_FISS") - - #### traitement de DEFI_GLRC ############################## - # Renommage de mot-clés - renameMotCle(jdc,"DEFI_GLRC","GC","GAMMA_C") - renameMotCle(jdc,"DEFI_GLRC","SYC","NYC") - renameMotCle(jdc,"DEFI_GLRC","EPSI_FLEX","KAPPA_FLEX") - - #### traitement de DEFI_GROUPE ############################## - # Rien à faire - - #### traitement de DEFI_INTE_SPEC ############################## - # Rien à faire - - #### traitement de DEFI_LIST_INST ############################## - dMETHODE={"UNIFORME":"MANUEL","EXTRAPOLE":"MANUEL","AUCUNE":"AUTO"} - changementValeurDsMCF(jdc,"DEFI_LIST_INST","ECHEC","SUBD_METHODE",dMETHODE) - removeMotCleInFact(jdc,"DEFI_LIST_INST","ECHEC","SUBD_COEF_PAS_1",pasDeRegle(),0) - - #### traitement de DEFI_MATER_GC ############################## - # Rien à faire, n'existe pas en 10 - - #### traitement de DEFI_MATERIAU ############################## - # Suppression des critères pour les poutres - genereErreurMCF(jdc,"DEFI_MATERIAU","ECRO_FLEJOU") - genereErreurMCF(jdc,"DEFI_MATERIAU","VMIS_POUTRE") - genereErreurMCF(jdc,"DEFI_MATERIAU","VMIS_POUTRE_FO") - # Modification de la loi de grandissement - genereErreurMotCleInFact(jdc,"DEFI_MATERIAU","LEMAITRE_IRRA","GRAN_A") - genereErreurMotCleInFact(jdc,"DEFI_MATERIAU","LEMAITRE_IRRA","GRAN_B") - genereErreurMotCleInFact(jdc,"DEFI_MATERIAU","LEMAITRE_IRRA","GRAN_S") - genereErreurMotCleInFact(jdc,"DEFI_MATERIAU","LMARC_IRRA","GRAN_A") - genereErreurMotCleInFact(jdc,"DEFI_MATERIAU","LMARC_IRRA","GRAN_B") - genereErreurMotCleInFact(jdc,"DEFI_MATERIAU","LMARC_IRRA","GRAN_S") - genereErreurMotCleInFact(jdc,"DEFI_MATERIAU","GRAN_IRRA_LOG","GRAN_A") - genereErreurMotCleInFact(jdc,"DEFI_MATERIAU","GRAN_IRRA_LOG","GRAN_B") - genereErreurMotCleInFact(jdc,"DEFI_MATERIAU","GRAN_IRRA_LOG","GRAN_S") - # Modification des paramètres de la loi ENDO_SCALAIRE - genereErreurMCF(jdc,"DEFI_MATERIAU","ENDO_SCALAIRE") - # Modification des paramètres de la loi MAZARS - genereErreurMCF(jdc,"DEFI_MATERIAU","MAZARS") - genereErreurMCF(jdc,"DEFI_MATERIAU","MAZARS_FO") - # Modification des paramètres de la loi GLRC_DM - renameMotCleInFact(jdc,"DEFI_MATERIAU","GLRC_DM","SYT","NYT",pasDeRegle(),0) - renameMotCleInFact(jdc,"DEFI_MATERIAU","GLRC_DM","SYC","NYC",pasDeRegle(),0) - renameMotCleInFact(jdc,"DEFI_MATERIAU","GLRC_DM","SYF","NYF",pasDeRegle(),0) - # Suppression de la loi MONO_VISC3 - genereErreurMCF(jdc,"DEFI_MATERIAU","MONO_VISC3") - # Suppression de la loi MONO_DD_CC - genereErreurMCF(jdc,"DEFI_MATERIAU","MONO_DD_CC") - - #### traitement de DEFI_NAPPE ############################## - # Rien à faire - - #### traitement de DEFI_PARA_SENSI ############################## - # Résorption de la sensibilité - removeCommande(jdc,"DEFI_PARA_SENSI") - #genereErreurPourCommande(jdc,("DEFI_PARA_SENSI",)) - - #### traitement de DEFI_PART_FETI ############################## - # Rien à faire - - #### traitement de DEFI_SOL_MISS ############################## - # Rien à faire - - #### traitement de DEFI_SPEC_TURB ############################## - # Homogénéisation de ANGLE - renameMotCleInFact(jdc,"DEFI_SPEC_TURB","SPEC_EXCI_POINT","ANGL","ANGLE",pasDeRegle(),0) - - #### traitement de DETRUIRE ############################## - # Résorption de la sensibilité - removeMotCleInFact(jdc,"DETRUIRE","CONCEPT","SENSIBILITE",pasDeRegle(),0) - # Suppression mot-clé ALARME - removeMotCle(jdc,"DETRUIRE","ALARME",pasDeRegle(),0) - - #### traitement de DYNA_ALEA_MODAL ############################## - # Rien à faire - - #### traitement de DYNA_ISS_VARI ############################## - ajouteMotClefDansFacteurCourantSiRegle(jdc,"DYNA_ISS_VARI","MATR_COHE","TYPE='MITA_LUCO'",((("MATR_COHE",),"existe"),)) - - #### traitement de DYNA_LINE_HARM ############################## - # Résorption de la sensibilité - removeMotCle(jdc,"DYNA_LINE_HARM","SENSIBILITE",pasDeRegle(),0) - # Suppression mot-clé TYPE_CHARGE - removeMotCleInFact(jdc,"DYNA_LINE_HARM","EXCIT","TYPE_CHARGE",pasDeRegle(),0) - # Ajout AMOR_MODAL - chercheOperInsereFacteurSiRegle(jdc,"DYNA_LINE_HARM","AMOR_MODAL",((("AMOR_REDUIT","LIST_AMOR",),"existeMCFParmi"),),1) - moveMotClefInOperToFact(jdc,"DYNA_LINE_HARM","AMOR_REDUIT","AMOR_MODAL") - moveMotClefInOperToFact(jdc,"DYNA_LINE_HARM","LIST_AMOR","AMOR_MODAL") - - #### traitement de DYNA_LINE_TRAN ############################## - # Résorption de la sensibilité - removeMotCle(jdc,"DYNA_LINE_TRAN","SENSIBILITE",pasDeRegle(),0) - # Ajout SCHEMA_TEMPS - chercheOperInsereFacteurSiRegle(jdc,"DYNA_LINE_TRAN","SCHEMA_TEMPS",((("NEWMARK","WILSON","DIFF_CENTRE","ADAPT",),"existeMCFParmi"),),1) - ajouteMotClefDansFacteurSiRegle(jdc,"DYNA_LINE_TRAN","SCHEMA_TEMPS","SCHEMA='NEWMARK'",((("NEWMARK",),"existeMCFParmi"),)) - moveMotCleFromFactToFact(jdc,"DYNA_LINE_TRAN","NEWMARK","ALPHA","SCHEMA_TEMPS") - moveMotCleFromFactToFact(jdc,"DYNA_LINE_TRAN","NEWMARK","DELTA","SCHEMA_TEMPS") - renameMotCleInFact(jdc,"DYNA_LINE_TRAN","SCHEMA_TEMPS","ALPHA","BETA",pasDeRegle(),0) - renameMotCleInFact(jdc,"DYNA_LINE_TRAN","SCHEMA_TEMPS","DELTA","GAMMA",pasDeRegle(),0) - removeMotCle(jdc,"DYNA_LINE_TRAN","NEWMARK",pasDeRegle(),0) - ajouteMotClefDansFacteurSiRegle(jdc,"DYNA_LINE_TRAN","SCHEMA_TEMPS","SCHEMA='WILSON'",((("WILSON",),"existeMCFParmi"),)) - moveMotCleFromFactToFact(jdc,"DYNA_LINE_TRAN","WILSON","THETA","SCHEMA_TEMPS") - removeMotCle(jdc,"DYNA_LINE_TRAN","WILSON",pasDeRegle(),0) - ajouteMotClefDansFacteurSiRegle(jdc,"DYNA_LINE_TRAN","SCHEMA_TEMPS","SCHEMA='DIFF_CENTRE'",((("DIFF_CENTRE",),"existeMCFParmi"),)) - removeMotCle(jdc,"DYNA_LINE_TRAN","DIFF_CENTRE",pasDeRegle(),0) - ajouteMotClefDansFacteurSiRegle(jdc,"DYNA_LINE_TRAN","SCHEMA_TEMPS","SCHEMA='ADAPT_ORDRE2'",((("ADAPT",),"existeMCFParmi"),)) - removeMotCle(jdc,"DYNA_LINE_TRAN","ADAPT",pasDeRegle(),0) - # Renommage dans ETAT_INIT - renameMotCleInFact(jdc,"DYNA_LINE_TRAN","ETAT_INIT","DYNA_TRANS","RESULTAT",pasDeRegle(),0) - renameMotCleInFact(jdc,"DYNA_LINE_TRAN","ETAT_INIT","DEPL_INIT","DEPL",pasDeRegle(),0) - renameMotCleInFact(jdc,"DYNA_LINE_TRAN","ETAT_INIT","ACCE_INIT","ACCE",pasDeRegle(),0) - renameMotCleInFact(jdc,"DYNA_LINE_TRAN","ETAT_INIT","VITE_INIT","VITE",pasDeRegle(),0) - renameMotCleInFact(jdc,"DYNA_LINE_TRAN","ETAT_INIT","NUME_INIT","NUME_ORDRE",pasDeRegle(),0) - # Suppression mot-clé TYPE_CHARGE - removeMotCleInFact(jdc,"DYNA_LINE_TRAN","EXCIT","TYPE_CHARGE",pasDeRegle(),0) - # Suppression mot-clé FONC_INST - genereErreurMotCleInFact(jdc,"DYNA_LINE_TRAN","INCREMENT","FONC_INST") - # Suppression mot-clé PAS_CALCUL - removeMotCleInFact(jdc,"DYNA_LINE_TRAN","INCREMENT","PAS_CALCUL",pasDeRegle(),0) - # Renommage dans ARCHIVAGE - renameMotCleInFact(jdc,"DYNA_LINE_TRAN","ARCHIVAGE","LIST_ARCH","LIST_INST",pasDeRegle(),0) - - #### traitement de DYNA_NON_LINE ############################## - # Renommage CRIT_FLAMB en CRIT_STAB - renameMotCle(jdc,"DYNA_NON_LINE","CRIT_FLAMB","CRIT_STAB") - # Résorption de la sensibilité - removeMotCle(jdc,"DYNA_NON_LINE","SENSIBILITE",pasDeRegle(),0) - # Suppression de ARCHIVAGE/DETR_NUME_SUIV - removeMotCleInFact(jdc,"DYNA_NON_LINE","ARCHIVAGE","DETR_NUME_SUIV",pasDeRegle(),0) - - #### traitement de DYNA_SPEC_MODAL ############################## - # Rien à faire - - #### traitement de DYNA_TRAN_MODAL ############################## - # Ajout SCHEMA_TEMPS - chercheOperInsereFacteur(jdc,"DYNA_TRAN_MODAL","SCHEMA_TEMPS") - chercheOperInsereMotCleSiRegle(jdc,"DYNA_TRAN_MODAL","METHODE='EULER'",((("METHODE",),"nexistepas"),),) - moveMotClefInOperToFact(jdc,"DYNA_TRAN_MODAL","METHODE","SCHEMA_TEMPS") - renameMotCleInFact(jdc,"DYNA_TRAN_MODAL","SCHEMA_TEMPS","METHODE","SCHEMA",pasDeRegle(),0) - moveMotClefInOperToFact(jdc,"DYNA_TRAN_MODAL","BASE_ELAS_FLUI","SCHEMA_TEMPS") - moveMotClefInOperToFact(jdc,"DYNA_TRAN_MODAL","NUME_VITE_FLUI","SCHEMA_TEMPS") - moveMotClefInOperToFact(jdc,"DYNA_TRAN_MODAL","ETAT_STAT","SCHEMA_TEMPS") - moveMotClefInOperToFact(jdc,"DYNA_TRAN_MODAL","PREC_DUREE","SCHEMA_TEMPS") - moveMotClefInOperToFact(jdc,"DYNA_TRAN_MODAL","CHOC_FLUI","SCHEMA_TEMPS") - moveMotClefInOperToFact(jdc,"DYNA_TRAN_MODAL","NB_MODE","SCHEMA_TEMPS") - moveMotClefInOperToFact(jdc,"DYNA_TRAN_MODAL","NB_MODE_FLUI","SCHEMA_TEMPS") - moveMotClefInOperToFact(jdc,"DYNA_TRAN_MODAL","TS_REG_ETAB","SCHEMA_TEMPS") - # Renommage des matrices - renameMotCle(jdc,"DYNA_TRAN_MODAL","MASS_GENE","MATR_MASS") - renameMotCle(jdc,"DYNA_TRAN_MODAL","RIGI_GENE","MATR_RIGI") - renameMotCle(jdc,"DYNA_TRAN_MODAL","AMOR_GENE","MATR_AMOR") - # Ajout AMOR_MODAL - chercheOperInsereFacteurSiRegle(jdc,"DYNA_TRAN_MODAL","AMOR_MODAL",((("AMOR_REDUIT","LIST_AMOR",),"existeMCFParmi"),),1) - moveMotClefInOperToFact(jdc,"DYNA_TRAN_MODAL","AMOR_REDUIT","AMOR_MODAL") - moveMotClefInOperToFact(jdc,"DYNA_TRAN_MODAL","LIST_AMOR","AMOR_MODAL") - # couplage - chercheOperInsereFacteurSiRegle(jdc,"DYNA_TRAN_MODAL","VITESSE_VARIABLE='NON'",((("COUPLAGE_EDYOS"),"existe"),),1) - moveMotCleFromFactToFather(jdc,"DYNA_TRAN_MODAL","COUPLAGE_EDYOS","VITE_ROTA") - # Renommage dans ETAT_INIT - renameMotCleInFact(jdc,"DYNA_TRAN_MODAL","ETAT_INIT","RESU_GENE","RESULTAT",pasDeRegle(),0) - renameMotCleInFact(jdc,"DYNA_TRAN_MODAL","ETAT_INIT","INIT_GENE","DEPL",pasDeRegle(),0) - renameMotCleInFact(jdc,"DYNA_TRAN_MODAL","ETAT_INIT","DEPL_INIT_GENE","DEPL",pasDeRegle(),0) - renameMotCleInFact(jdc,"DYNA_TRAN_MODAL","ETAT_INIT","VITE_INIT_GENE","VITE",pasDeRegle(),0) - # Renommage dans ARCHIVAGE - renameMotCleInFact(jdc,"DYNA_LINE_TRAN","ARCHIVAGE","LIST_ARCH","LIST_INST",pasDeRegle(),0) - # Paramètres LAME_FLUIDE - chercheOperInsereFacteurSiRegle(jdc,"DYNA_TRAN_MODAL","PARA_LAMEFLUI",((("NMAX_ITER","RESI_RELA","LAMBDA"),"existeMCFParmi"),),1) - moveMotClefInOperToFact(jdc,"DYNA_TRAN_MODAL","NMAX_ITER","PARA_LAMEFLUI") - moveMotClefInOperToFact(jdc,"DYNA_TRAN_MODAL","RESI_RELA","PARA_LAMEFLUI") - moveMotClefInOperToFact(jdc,"DYNA_TRAN_MODAL","LAMBDA","PARA_LAMEFLUI") - renameMotCle(jdc,"DYNA_TRAN_MODAL","PARA_LAMEFLUI","PARA_LAME_FLUI") - - #### traitement de DYNA_VIBRA ############################## - # Rien à faire, n'existe pas en 10 - - #### traitement de EXEC_LOGICIEL ############################## - # Rien à faire - - #### traitement de EXTR_RESU ############################## - # Résorption de la sensibilité - removeMotCle(jdc,"EXTR_RESU","SENSIBILITE",pasDeRegle(),0) - - #### traitement de EXTR_TABLE ############################## - # Renommage critere table - dCRIT={"ABS_MAXI":"MAXI_ABS","ABS_MINI":"MINI_ABS"} - changementValeurDsMCF(jdc,"RECU_TABLE","FILTRE","CRIT_COMP",dCRIT) - - #### traitement de FACTORISER ############################## - # Suppression de RENUM - removeMotCleSiRegle(jdc,"FACTORISER","RENUM",((("PRE_COND","LDLT_INC",jdc),"MCaPourValeur"),)) - removeMotCleSiRegle(jdc,"FACTORISER","RENUM",((("PRE_COND","LDLT_SP",jdc),"MCaPourValeur"),)) - # Modification mot-clés liés à la mémoire - removeMotCle(jdc,"FACTORISER","LIBERE_MEMOIRE",pasDeRegle(),0) - renameMotCle(jdc,"FACTORISER","OUT_OF_CORE","GESTION_MEMOIRE") - dMEM={"OUI":"OUT_OF_CORE","NON":"IN_CORE"} - changementValeur(jdc,"FACTORISER","GESTION_MEMOIRE",dCRIT) - - #### traitement de FORMULE ############################## - # Rien à faire - - #### traitement de GENE_ACCE_SEISME ############################## - # Rien à faire, n'existe pas en 10 - - #### traitement de GENE_FONC_ALEA ############################## - # Rien à faire - - #### traitement de GENE_VARI_ALEA ############################## - # Rien à faire - - #### traitement de IMPR_CO ############################## - # Résorption de la sensibilité - removeMotCleInFact(jdc,"IMPR_CO","CONCEPT","SENSIBILITE",pasDeRegle(),0) - - #### traitement de IMPR_DIAG_CAMPBELL ############################## - # Rien à faire - - #### traitement de IMPR_FONCTION ############################## - # Rien à faire - - #### traitement de IMPR_GENE ############################## - # Rien à faire - - #### traitement de IMPR_OAR ############################## - # Rien à faire - - #### traitement de IMPR_RESU ############################## - # Résorption de la sensibilité - removeMotCleInFact(jdc,"IMPR_RESU","RESU","SENSIBILITE",pasDeRegle(),0) - # Suppression de l'écriture au format ENSIGHT - genereErreurValeur(jdc,"IMPR_RESU","FORMAT",("'ENSIGHT'",)) - # Homogénéisation de ANGLE - renameMotCleInFact(jdc,"IMPR_RESU","FORMAT","ANGL","ANGLE",pasDeRegle(),0) - # Suppression mot-clé MODELE - removeMotCle(jdc,"IMPR_RESU","MODELE",pasDeRegle(),0) - - #### traitement de IMPR_STURM ############################## - renameMotCle(jdc,"IMPR_STURM","TYPE_RESU","TYPE_MODE") - # renommage de MATR_A, MATR_B et MATR_C - renameMotCleSiRegle(jdc,"IMPR_STURM","MATR_A","MATR_RIGI",((("TYPE_MODE","DYNAMIQUE",jdc),"MCaPourValeur"),),1) - renameMotCleSiRegle(jdc,"IMPR_STURM","MATR_B","MATR_MASS",((("TYPE_MODE","DYNAMIQUE",jdc),"MCaPourValeur"),),1) - renameMotCleSiRegle(jdc,"IMPR_STURM","MATR_A","MATR_RIGI",((("TYPE_MODE","MODE_FLAMB",jdc),"MCaPourValeur"),),1) - renameMotCleSiRegle(jdc,"IMPR_STURM","MATR_B","MATR_RIGI_GEOM",((("TYPE_MODE","MODE_FLAMB",jdc),"MCaPourValeur"),),1) - renameMotCle(jdc,"IMPR_STURM","MATR_A","MATR_RIGI") - renameMotCle(jdc,"IMPR_STURM","MATR_B","MATR_MASS") - # - chercheOperInsereMotCleSiRegle(jdc,"IMPR_STURM","FREQ_MIN=0.",((("FREQ_MIN",),"nexistepas")and(("FREQ_MAX",),"existeMCFParmi"),),) - fusionMotCleToFact(jdc,"IMPR_STURM",("FREQ_MIN","FREQ_MAX"),"FREQ") - fusionMotCleToFact(jdc,"IMPR_STURM",("CHAR_CRIT_MIN","CHAR_CRIT_MAX"),"CHAR_CRIT") - # Ajout COMPTAGE - chercheOperInsereFacteurSiRegle(jdc,"IMPR_STURM","COMPTAGE",((("NMAX_ITER_SHIFT","PREC_SHIFT","SEUIL_FREQ"),"existeMCFParmi"),),1) - moveMotClefInOperToFact(jdc,"IMPR_STURM","NMAX_ITER_SHIFT","COMPTAGE") - moveMotClefInOperToFact(jdc,"IMPR_STURM","PREC_SHIFT","COMPTAGE") - moveMotClefInOperToFact(jdc,"IMPR_STURM","SEUIL_FREQ","COMPTAGE") - renameMotCleInFactSiRegle(jdc,"IMPR_STURM","COMPTAGE","SEUIL_FREQ","SEUIL_CHAR_CRIT",((("TYPE_MODE","MODE_FLAMB",jdc),"MCaPourValeur"),),) - # Suppression UNITE - removeMotCle(jdc,"IMPR_STURM","UNITE",pasDeRegle(),0) - # Renommage de la commande - renameCommande(jdc,"IMPR_STURM","INFO_MODE", ) - - #### traitement de IMPR_TABLE ############################## - # Résorption de la sensibilité - removeMotCle(jdc,"IMPR_TABLE","SENSIBILITE",pasDeRegle(),0) - # Renommage critere table - dCRIT={"ABS_MAXI":"MAXI_ABS","ABS_MINI":"MINI_ABS"} - changementValeurDsMCF(jdc,"IMPR_TABLE","FILTRE","CRIT_COMP",dCRIT) - # Suppression de FORMAT_C - genereErreurMCF(jdc,"IMPR_TABLE","FORMAT_C") - - #### traitement de INCLUDE ############################## - # Rien à faire - - #### traitement de INCLUDE_MATERIAU ############################## - # Rien à faire - - #### traitement de INFO_EXEC_ASTER ############################## - # Rien à faire - - #### traitement de INFO_FONCTION ############################## - # Rien à faire - - #### traitement de INFO_MODE ############################## - # Rien à faire, n'existe pas en 10 - - #### traitement de LIRE_CHAMP ############################## - # Rien à faire - - #### traitement de LIRE_FONCTION ############################## - # Rien à faire - - #### traitement de LIRE_IMPE_MISS ############################## - # Rien à faire - - #### traitement de LIRE_INTE_SPEC ############################## - # Rien à faire - - #### traitement de LIRE_MAILLAGE ############################## - # Rien à faire - - #### traitement de LIRE_RESU ############################## - # Suppression du type HARM_GENE - genereErreurValeur(jdc,"LIRE_RESU","TYPE_RESU",("'HARM_GENE'",)) - # renommage de MATR_A et MATR_B - renameMotCle(jdc,"LIRE_RESU","MATR_A","MATR_RIGI") - renameMotCle(jdc,"LIRE_RESU","MATR_B","MATR_MASS") - removeMotCle(jdc,"LIRE_RESU","NUME_DDL",pasDeRegle(),0) - # Suppression de certains champ - lSUPCHAMPS=["'EFCA_ELNO'","'EFCA_NOEU'","'EPTQ_ELNO'","'EPTU_ELNO'", - "'PMPB_ELNO'","'PMPB_NOEU'","'SITQ_ELNO'","'SICA_ELNO'", - "'SICO_ELNO'","'SITU_ELNO'","'SICA_NOEU'","'SICO_NOEU'", - "'SPMX_ELGA'","'VACO_ELNO'","'VATU_ELNO'",] - genereErreurValeurDsMCF(jdc,"LIRE_RESU","FORMAT_IDEAS","NOM_CHAM",lSUPCHAMPS) - genereErreurValeurDsMCF(jdc,"LIRE_RESU","FORMAT_MED","NOM_CHAM",lSUPCHAMPS) - genereErreurValeur(jdc,"LIRE_RESU","NOM_CHAM",lSUPCHAMPS) - - #### traitement de LIRE_TABLE ############################## - # Rien à faire - - #### traitement de MACR_ADAP_MAIL ############################## - # Résorption de la sensibilité - removeMotCle(jdc,"MACR_ADAP_MAIL","SENSIBILITE",pasDeRegle(),0) - # Changement de version - changementValeur(jdc,"MACR_ADAP_MAIL","VERSION_HOMARD",{"V10_1":"V10_6"}) - # Changement d'adaptation - changementValeur(jdc,"MACR_ADAP_MAIL","ADAPTATION",{"RAFFINEMENT_ZONE":"RAFF_DERA_ZONE"}) - # Renommage du mot-clé ELEMENTS_NON_HOMARD - renameMotCle(jdc,"MACR_ADAP_MAIL","ELEMENTS_NON_HOMARD","ELEMENTS_ACCEPTES") - changementValeur(jdc,"MACR_ADAP_MAIL","ELEMENTS_ACCEPTES",{"REFUSER":"HOMARD","IGNORER":"IGNORE_PYRA"}) - - #### traitement de MACR_ASCOUF_CALC ############################## - # Rien à faire - - #### traitement de MACR_ASCOUF_MAIL ############################## - # Rien à faire - - #### traitement de MACR_ASPIC_CALC ############################## - # Rien à faire - - #### traitement de MACR_ASPIC_MAIL ############################## - # Rien à faire - - #### traitement de MACR_CARA_POUTRE ############################## - renameMotCle(jdc,"MACR_CARA_POUTRE","SYME_Y","SYME_ZZ") - renameMotCle(jdc,"MACR_CARA_POUTRE","SYME_X","SYME_Y") - renameMotCle(jdc,"MACR_CARA_POUTRE","SYME_ZZ","SYME_Z") - - #### traitement de MACR_ECLA_PG ############################## - # Rien à faire - - #### traitement de MACR_ECRE_CALC ############################## - # Changement de version - changementValeur(jdc,"MACR_ECRE_CALC","VERSION",{"3.1.1":"3.2.1","3.1.2":"3.2.1","3.2":"3.2.1"}) - - #### traitement de MACR_ECREVISSE ############################## - # Changement de version - changementValeur(jdc,"MACR_ECRE_CALC","VERSION",{"3.1.1":"3.2.1","3.1.2":"3.2.1","3.2":"3.2.1"}) - - #### traitement de MACR_ELEM_DYNA ############################## - # Rien à faire - - #### traitement de MACR_FIABILITE ############################## - genereErreurPourCommande(jdc,("MACR_FIABILITE",)) - - #### traitement de MACR_FIAB_IMPR ############################## - genereErreurPourCommande(jdc,("MACR_FIAB_IMPR",)) - - #### traitement de MACR_INFO_MAIL ############################## - # Changement de version - changementValeur(jdc,"MACR_INFO_MAIL","VERSION_HOMARD",{"V10_1":"V10_6"}) - # Renommage du mot-clé ELEMENTS_NON_HOMARD - renameMotCle(jdc,"MACR_INFO_MAIL","ELEMENTS_NON_HOMARD","ELEMENTS_ACCEPTES") - changementValeur(jdc,"MACR_INFO_MAIL","ELEMENTS_ACCEPTES",{"REFUSER":"HOMARD","IGNORER":"IGNORE_PYRA"}) - - #### traitement de MACR_LIGN_COUPE ############################## - # Rien à faire - - #### traitement de MACRO_ELAS_MULT ############################## - # Résorption de NUME_COUCHE NIVE_COUCHE - removeMotCleInFact(jdc,"MACRO_ELAS_MULT","CAS_CHARGE","NUME_COUCHE",pasDeRegle(),0) - removeMotCleInFact(jdc,"MACRO_ELAS_MULT","CAS_CHARGE","NIVE_COUCHE",pasDeRegle(),0) - # Réduction de la liste des options calculables - lOPT=["'EFGE_ELNO'","'EPOT_ELEM'","'SIGM_ELNO'","'SICA_ELNO'","'EFCA_ELNO'", - "'DEGE_ELNO'","'EPSI_ELNO'","'EPSI_ELGA'","'EPSG_ELNO'","'EPSG_ELGA'", - "'EPSP_ELNO'","'EPSP_ELGA'","'ECIN_ELEM'","'FLUX_ELGA'","'FLUX_ELNO'", - "'SOUR_ELGA'","'PRAC_ELNO'","'INTE_ELNO'","'SIZ1_NOEU'","'ERZ1_ELEM'", - "'SIZ2_NOEU'","'ERZ2_ELEM'","'VNOR_ELEM_DEPL'","'ERME_ELNO'", - "'ERME_ELEM'","'SIEQ_ELNO'","'SIEQ_ELGA'","'EPEQ_ELNO'","'QIRE_ELEM'", - "'QIRE_ELNO'","'QIZ1_ELEM'","'QIZ2_ELEM'","'EPEQ_ELGA'","'FORC_NODA'", - "'REAC_NODA'","'EPSI_NOEU'","'SIGM_NOEU'","'EFGE_NOEU'","'SIEQ_NOEU'", - "'EPEQ_NOEU'","'FLUX_NOEU'",] - genereErreurValeurDsMCF(jdc,"MACRO_ELAS_MULT","CAS_CHARGE","OPTION",lOPT) - - #### traitement de MACRO_EXPANS ############################## - # Rien à faire - - #### traitement de MACRO_MATR_AJOU ############################## - # Rien à faire - - #### traitement de MACRO_MATR_ASSE ############################## - # Suppression de paramètres mémoire - removeMotCleInFact(jdc,"MACRO_MATR_ASSE","SOLVEUR","OUT_OF_CORE",pasDeRegle(),0) - removeMotCleInFact(jdc,"MACRO_MATR_ASSE","SOLVEUR","LIBERE_MEMOIRE",pasDeRegle(),0) - # Suppression de RIGI_MECA_LAGR - genereErreurValeurDsMCF(jdc,"MACRO_MATR_ASSE","MATR_ASSE","OPTION",("'RIGI_MECA_LAGR'",)) - genereErreurMotCleInFact(jdc,"MACRO_MATR_ASSE","MATR_ASSE","THETA") - genereErreurMotCleInFact(jdc,"MACRO_MATR_ASSE","MATR_ASSE","PROPAGATION") - # Renommage de la commande - renameCommande(jdc,"MACRO_MATR_ASSE","ASSEMBLAGE", ) - - #### traitement de MACRO_MISS_3D ############################## - # Rien à faire - - #### traitement de MACRO_MODE_MECA ############################## - # renommage de MATR_A et MATR_B - renameMotCle(jdc,"MACRO_MODE_MECA","MATR_A","MATR_RIGI") - renameMotCle(jdc,"MACRO_MODE_MECA","MATR_B","MATR_MASS") - # Suppression des mot-clés FREQ_* - renameMotCle(jdc,"MACRO_MODE_MECA","CALC_FREQ","CALCFREQ") - moveMotCleFromFactToFather(jdc,"MACRO_MODE_MECA","CALCFREQ","FREQ_MIN") - moveMotCleFromFactToFather(jdc,"MACRO_MODE_MECA","CALCFREQ","FREQ_MAX") - fusionMotCleToFact(jdc,"MACRO_MODE_MECA",("FREQ_MIN","FREQ_MAX"),"FREQ") - moveMotClefInOperToFact(jdc,"MACRO_MODE_MECA","FREQ","CALCFREQ",) - renameMotCle(jdc,"MACRO_MODE_MECA","CALCFREQ","CALC_FREQ") - removeMotCleInFact(jdc,"MACRO_MODE_MECA","CALC_FREQ","NB_BLOC_FREQ",pasDeRegle(),0) - renameMotCleInFact(jdc,"MACRO_MODE_MECA","CALC_FREQ","STOP_FREQ_VIDE","STOP_BANDE_VIDE",pasDeRegle(),0) - # Renommage critere de Sturm - changementValeurDsMCF(jdc,"MACRO_MODE_MECA","VERI_MODE","STURM",{"OUI":"GLOBAL",}) - - #### traitement de MACRO_PROJ_BASE ############################## - renameMotCle(jdc,"MACRO_PROJ_BASE","PROFIL","STOCKAGE") - # Renommage de la commande - renameCommande(jdc,"MACRO_PROJ_BASE","PROJ_BASE", ) - - #### traitement de MACR_RECAL ############################## - renameMotCle(jdc,"MACR_RECAL","POIDS","LIST_POIDS") - - #### traitement de MACR_SPECTRE ############################## - # Rien à faire - - #### traitement de MECA_STATIQUE ############################## - # Résorption de la sensibilité - removeMotCle(jdc,"MECA_STATIQUE","SENSIBILITE",pasDeRegle(),0) - - #### traitement de MODE_ITER_INV ############################## - # Résorption de la sensibilité - removeMotCle(jdc,"MODE_ITER_INV","SENSIBILITE",pasDeRegle(),0) - # renommage de MATR_A, MATR_B et MATR_C - renameMotCleSiRegle(jdc,"MODE_ITER_INV","MATR_A","MATR_RIGI",((("TYPE_RESU","DYNAMIQUE",jdc),"MCaPourValeur"),),1) - renameMotCleSiRegle(jdc,"MODE_ITER_INV","MATR_B","MATR_MASS",((("TYPE_RESU","DYNAMIQUE",jdc),"MCaPourValeur"),),1) - renameMotCle(jdc,"MODE_ITER_INV","MATR_C","MATR_AMOR") - renameMotCleSiRegle(jdc,"MODE_ITER_INV","MATR_A","MATR_RIGI",((("TYPE_RESU","MODE_FLAMB",jdc),"MCaPourValeur"),),1) - renameMotCleSiRegle(jdc,"MODE_ITER_INV","MATR_B","MATR_RIGI_GEOM",((("TYPE_RESU","MODE_FLAMB",jdc),"MCaPourValeur"),),1) - renameMotCleSiRegle(jdc,"MODE_ITER_INV","CALC_FREQ","CALC_CHAR_CRIT",((("TYPE_RESU","MODE_FLAMB",jdc),"MCaPourValeur")or(("TYPE_RESU","GENERAL",jdc),"MCaPourValeur"),),1) - renameMotCleInFact(jdc,"MODE_ITER_INV","CALC_CHAR_CRIT","NMAX_FREQ","NMAX_CHAR_CRIT",pasDeRegle(),0) - renameMotCleInFact(jdc,"MODE_ITER_INV","CALC_CHAR_CRIT","SEUIL_FREQ","SEUIL_CHAR_CRIT",pasDeRegle(),0) - renameMotCle(jdc,"MODE_ITER_INV","MATR_A","MATR_RIGI") - renameMotCle(jdc,"MODE_ITER_INV","MATR_B","MATR_MASS") - - #### traitement de MODE_ITER_SIMULT ############################## - # Résorption de la sensibilité - removeMotCle(jdc,"MODE_ITER_SIMULT","SENSIBILITE",pasDeRegle(),0) - # renommage de MATR_A, MATR_B et MATR_C - renameMotCleSiRegle(jdc,"MODE_ITER_SIMULT","MATR_A","MATR_RIGI",((("TYPE_RESU","DYNAMIQUE",jdc),"MCaPourValeur"),),1) - renameMotCleSiRegle(jdc,"MODE_ITER_SIMULT","MATR_B","MATR_MASS",((("TYPE_RESU","DYNAMIQUE",jdc),"MCaPourValeur"),),1) - renameMotCle(jdc,"MODE_ITER_SIMULT","MATR_C","MATR_AMOR") - renameMotCleSiRegle(jdc,"MODE_ITER_SIMULT","MATR_A","MATR_RIGI",((("TYPE_RESU","MODE_FLAMB",jdc),"MCaPourValeur"),),1) - renameMotCleSiRegle(jdc,"MODE_ITER_SIMULT","MATR_B","MATR_RIGI_GEOM",((("TYPE_RESU","MODE_FLAMB",jdc),"MCaPourValeur"),),1) - renameMotCleSiRegle(jdc,"MODE_ITER_SIMULT","CALC_FREQ","CALC_CHAR_CRIT",((("TYPE_RESU","MODE_FLAMB",jdc),"MCaPourValeur")or(("TYPE_RESU","GENERAL",jdc),"MCaPourValeur"),),1) - renameMotCleInFact(jdc,"MODE_ITER_SIMULT","CALC_CHAR_CRIT","NMAX_FREQ","NMAX_CHAR_CRIT",pasDeRegle(),0) - renameMotCleInFact(jdc,"MODE_ITER_SIMULT","CALC_CHAR_CRIT","SEUIL_FREQ","SEUIL_CHAR_CRIT",pasDeRegle(),0) - renameMotCle(jdc,"MODE_ITER_SIMULT","MATR_A","MATR_RIGI") - renameMotCle(jdc,"MODE_ITER_SIMULT","MATR_B","MATR_MASS") - # renommage STOP_FREQ_VIDE - renameMotCle(jdc,"MODE_ITER_SIMULT","STOP_FREQ_VIDE","STOP_BANDE_VIDE") - - #### traitement de MODE_STATIQUE ############################## - # renommage du mot-clé FREQ - renameMotCleInFact(jdc,"MODE_STATIQUE","MODE_INTERF","FREQ","SHIFT",pasDeRegle(),0) - - #### traitement de MODI_MODELE_XFEM ############################## - genereErreurValeur(jdc,"MODI_MODELE_XFEM","CONTACT",("'P1P1A'",)) - - #### traitement de MODI_REPERE ############################## - # renommage de DEFI_REPERE - renameMotCle(jdc,"MODI_REPERE","DEFI_REPERE","AFFE") - moveMotCleFromFactToFather(jdc,"MODI_REPERE","AFFE","REPERE") - # localisation dans AFFE - moveMotClefInOperToFact(jdc,"MODI_REPERE","GROUP_MA","AFFE",) - moveMotClefInOperToFact(jdc,"MODI_REPERE","GROUP_NO","AFFE",) - moveMotClefInOperToFact(jdc,"MODI_REPERE","MAILLE","AFFE",) - moveMotClefInOperToFact(jdc,"MODI_REPERE","NOEUD","AFFE",) - - #### traitement de NORM_MODE ############################## - removeMotCle(jdc,"NORM_MODE","SENSIBILITE",pasDeRegle(),0) - - #### traitement de NUME_DDL ############################## - # Rien à faire - - #### traitement de NUME_DDL_GENE ############################## - # Rien à faire - - #### traitement de OBSERVATION ############################## - # renommage de MATR_A et MATR_B - renameMotCle(jdc,"OBSERVATION","MATR_A","MATR_RIGI") - renameMotCle(jdc,"OBSERVATION","MATR_B","MATR_MASS") - - #### traitement de POST_BORDET ############################## - # Rien à faire - - #### traitement de POST_CHAMP ############################## - # Rien à faire, n'existe pas en 10 - - #### traitement de POST_CHAM_XFEM ############################## - # Suppression mot-clé MAILLAGE_SAIN - removeMotCle(jdc,"POST_CHAM_XFEM","MAILLAGE_SAIN",pasDeRegle(),0) - - #### traitement de POST_COQUE ############################## - # Rien à faire - - #### traitement de POST_DECOLLEMENT ############################## - # Rien à faire - - #### traitement de POST_DYNA_ALEA ############################## - # Suppression du mot-clé NUME_VITE_FLUI - removeMotCle(jdc,"POST_DYNA_ALEA","NUME_VITE_FLUI",pasDeRegle(),0) - - #### traitement de POST_ELEM ############################## - # Rien à faire - - #### traitement de POST_ENDO_FISS ############################## - # Suppression du mot-clé MODELE - removeMotCle(jdc,"POST_ENDO_FISS","MODELE",pasDeRegle(),0) - # Renommage de SEUIL - renameMotCleInFact(jdc,"POST_ENDO_FISS","RECHERCHE","SEUIL","BORNE_MIN",pasDeRegle(),0) - - #### traitement de POST_FATIGUE ############################## - # Suppression du chargement periodique - genereErreurValeur(jdc,"POST_FATIGUE","CHARGEMENT",("'PERIODIQUE'",)) - - #### traitement de POST_GP ############################## - # Suppression de POST_GP au profit de CALC_GP - genereErreurPourCommande(jdc,("POST_GP",)) - - #### traitement de POST_K1_K2_K3 ############################## - # Suppression de VECT_K1 - removeMotCle(jdc,"POST_K1_K2_K3","VECT_K1",pasDeRegle(),0) - # Suppression de SYME_CHAR - removeMotCle(jdc,"POST_K1_K2_K3","SYME_CHAR",pasDeRegle(),0) - # Suppression de TABL_DEPL - removeMotCle(jdc,"POST_K1_K2_K3","TABL_DEPL_SUP",pasDeRegle(),0) - removeMotCle(jdc,"POST_K1_K2_K3","TABL_DEPL_INF",pasDeRegle(),0) - # Suppression de MAILLAGE - removeMotCle(jdc,"POST_K1_K2_K3","MAILLAGE",pasDeRegle(),0) - # Suppression de DTAN - removeMotCle(jdc,"POST_K1_K2_K3","DTAN_ORIG",pasDeRegle(),0) - removeMotCle(jdc,"POST_K1_K2_K3","DTAN_EXTR",pasDeRegle(),0) - - #### traitement de POST_K_TRANS ############################## - # Suppression de la possibilité de donner un mode_meca - genereErreurMotCleInFact(jdc,"POST_K_TRANS","K_MODAL","RESU_MODA") - - #### traitement de POST_MAC3COEUR ############################## - # Rien à faire, n'existe pas en 10 - - #### traitement de POST_MAIL_XFEM ############################## - # Suppression du mot-clé MAILLAGE_SAIN - removeMotCle(jdc,"POST_MAIL_XFEM","MAILLAGE_SAIN",pasDeRegle(),0) - - #### traitement de POST_RCCM ############################## - # Rien à faire - - #### traitement de POST_RELEVE_T ############################## - # Résorption de la sensibilité - removeMotCle(jdc,"POST_RELEVE_T","SENSIBILITE",pasDeRegle(),0) - - #### traitement de POST_RUPTURE ############################## - # Rien à faire, n'existe pas en 10 - - #### traitement de POST_USURE ############################## - # Rien à faire - - #### traitement de POURSUITE ############################## - # Suppression du mot-clé TITRE - removeMotCleInFact(jdc,"POURSUITE","CATALOGUE","TITRE",pasDeRegle(),0) - removeMotCle(jdc,"POURSUITE","IMPRESSION",pasDeRegle(),0) - # Suppression des mots-clés mémoire dynamique - removeMotCleInFact(jdc,"POURSUITE","MEMOIRE","GESTION",pasDeRegle(),0) - removeMotCleInFact(jdc,"POURSUITE","MEMOIRE","TYPE_ALLOCATION",pasDeRegle(),0) - removeMotCleInFact(jdc,"POURSUITE","MEMOIRE","TAILLE",pasDeRegle(),0) - removeMotCleInFact(jdc,"POURSUITE","MEMOIRE","PARTITION",pasDeRegle(),0) - removeMotCleInFact(jdc,"POURSUITE","MEMOIRE","DYNAMIQUE",pasDeRegle(),0) - - #### traitement de PROJ_BASE ############################## - # Suppression de RESU_GENE pour défaut de validation - genereErreurMCF(jdc,"PROJ_BASE","RESU_GENE") - - #### traitement de PROJ_CHAMP ############################## - # Résorption de la sensibilité - removeMotCle(jdc,"PROJ_CHAMP","SENSIBILITE",pasDeRegle(),0) - - #### traitement de PROJ_RESU_BASE ############################## - # Suppression de RESU_GENE pour défaut de validation - genereErreurMCF(jdc,"PROJ_RESU_BASE","RESU_GENE") - - #### traitement de PROJ_SPEC_BASE ############################## - # Rien à faire - - #### traitement de PROPA_FISS ############################## - # Suppression de DTAN_ORIG et DTAN_EXTR pour calcul automatique - removeMotCleInFact(jdc,"PROPA_FISS","FISSURE","DTAN_ORIG",pasDeRegle(),0) - removeMotCleInFact(jdc,"PROPA_FISS","FISSURE","DTAN_EXTR",pasDeRegle(),0) - - #### traitement de PROPA_XFEM ############################## - # Suppression paramètres Loi de Paris - removeMotCle(jdc,"PROPA_XFEM","NB_POINT_FOND",pasDeRegle(),0) - removeMotCle(jdc,"PROPA_XFEM","TABLE",pasDeRegle(),0) - removeMotCle(jdc,"PROPA_XFEM","LOI_PROPA",pasDeRegle(),0) - removeMotCle(jdc,"PROPA_XFEM","COMP_LINE",pasDeRegle(),0) - - #### traitement de RAFF_XFEM ############################## - # Rien à faire - - #### traitement de RECU_FONCTION ############################## - # Résorption de la sensibilité - removeMotCle(jdc,"RECU_FONCTION","SENSIBILITE",pasDeRegle(),0) - # Renommage critere table - dCRIT={"ABS_MAXI":"MAXI_ABS","ABS_MINI":"MINI_ABS"} - changementValeurDsMCF(jdc,"RECU_FONCTION","FILTRE","CRIT_COMP",dCRIT) - - #### traitement de RECU_GENE ############################## - # Rien à faire - - #### traitement de RESOUDRE ############################## - # Suppression d'algo pour PETSc - removeMotCleSiRegle(jdc,"RESOUDRE","ALGORITHME",((("BCGS","BICG","TFQMR",),"MCaPourValeur"),)) - - #### traitement de REST_SPEC_PHYS ############################## - # Rien à faire - - #### traitement de SIMU_POINT_MAT ############################## - # VALE_REF obligatoire si NOM_VARC in ('TEMP', 'SECH') - lNOMVARC=["CORR","IRRA","HYDR","EPSA","M_ACIER","M_ZIRC","NEUT1","NEUT2"] - removeMotCleInFactSiRegle(jdc,"SIMU_POINT_MAT","AFFE_VARC","VALE_REF",((("NOM_VARC",lNOMVARC,jdc),"MCsousMCFcourantaPourValeurDansListe"),)) - # Suppression de ARCHIVAGE/DETR_NUME_SUIV - removeMotCleInFact(jdc,"SIMU_POINT_MAT","ARCHIVAGE","DETR_NUME_SUIV",pasDeRegle(),0) - - #### traitement de STANLEY ############################## - # Rien à faire - - #### traitement de STAT_NON_LINE ############################## - # Renommage de IMPLEX - changementValeur(jdc,"STAT_NON_LINE","METHODE",{"IMPL_EX":"IMPLEX"}) - removeMotCle(jdc,"STAT_NON_LINE","IMPL_EX",pasDeRegle(),0) - # Renommage CRIT_FLAMB en CRIT_STAB - renameMotCle(jdc,"STAT_NON_LINE","CRIT_FLAMB","CRIT_STAB") - # Résorption de la sensibilité - removeMotCle(jdc,"STAT_NON_LINE","SENSIBILITE",pasDeRegle(),0) - # Déplacement du calcul d'erreur en temps ERRE_TEMPS - chercheOperInsereFacteurSiRegle(jdc,"STAT_NON_LINE","CRIT_QUALITE",((("INCREMENT","ERRE_TEMPS"),"existeMCsousMCF"),),1) - moveMotCleFromFactToFact(jdc,"STAT_NON_LINE","INCREMENT","ERRE_TEMPS","CRIT_QUALITE") - renameMotCleInFact(jdc,"STAT_NON_LINE","CRIT_QUALITE","ERRE_TEMPS","ERRE_TEMPS_THM",pasDeRegle(),0) - removeMotCleInFact(jdc,"STAT_NON_LINE","INCREMENT","ERRE_TEMPS",pasDeRegle(),0) - # Suppression de ARCHIVAGE/DETR_NUME_SUIV - removeMotCleInFact(jdc,"STAT_NON_LINE","ARCHIVAGE","DETR_NUME_SUIV",pasDeRegle(),0) - - #### traitement de THER_LINEAIRE ############################## - # Résorption de la sensibilité - removeMotCle(jdc,"THER_LINEAIRE","SENSIBILITE",pasDeRegle(),0) - removeMotCle(jdc,"THER_LINEAIRE","SENS_INIT",pasDeRegle(),0) - # Suppression de ARCHIVAGE/DETR_NUME_SUIV - removeMotCleInFact(jdc,"THER_LINEAIRE","ARCHIVAGE","DETR_NUME_SUIV",pasDeRegle(),0) - - #### traitement de THER_NON_LINE ############################## - # Résorption de la sensibilité - removeMotCle(jdc,"THER_NON_LINE","SENSIBILITE",pasDeRegle(),0) - # Suppression du mot clé OPTION ###################################### - moveMCFToCommand(jdc,"THER_NON_LINE","OPTION","CALC_CHAMP","THERMIQUE") - # Suppression de ARCHIVAGE/DETR_NUME_SUIV - removeMotCleInFact(jdc,"THER_NON_LINE","ARCHIVAGE","DETR_NUME_SUIV",pasDeRegle(),0) - - #### traitement de THER_NON_LINE_MO ############################## - # Rien à faire - - ################################################################# - f=open(outfile,'w') - f.write(jdc.getSource()) - f.close() - - log.ferme(hdlr) - -def main(): - parser = optparse.Optionparser(usage=usage) - - parser.add_option('-i','--infile', dest="infile", default='toto.comm', - help="Le fichier à traduire") - parser.add_option('-o','--outfile', dest="outfile", default='tutu.comm', - help="Le fichier traduit") - - options, args = parser.parse_args() - traduc(options.infile,options.outfile) - -if __name__ == '__main__': - main() diff --git a/Traducteur/traduitV11V12.py b/Traducteur/traduitV11V12.py deleted file mode 100755 index e64fad7c..00000000 --- a/Traducteur/traduitV11V12.py +++ /dev/null @@ -1,619 +0,0 @@ -#!/usr/bin/env python -# -*- coding: utf-8 -*- -# Copyright (C) 2007-2017 EDF R&D -# -# 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 -# -""" -""" -usage="""usage: %prog [options] -Typical use is: - python traduitV11V12.py --infile=xxxx --outfile=yyyy -""" - -import log -import optparse -import sys - -from Traducteur.load import getJDC -from Traducteur.mocles import parseKeywords -from Traducteur.removemocle import * -from Traducteur.renamemocle import * -from Traducteur.renamemocle import * -from Traducteur.inseremocle import * -from Traducteur.changeValeur import * -from Traducteur.movemocle import * -from Traducteur.dictErreurs import * -from Traducteur.regles import pasDeRegle - -atraiter=( - "AFFE_CARA_ELEM", - "AFFE_CHAR_MECA", - "AFFE_CHAR_MECA_C", - "AFFE_CHAR_MECA_F", - "AFFE_CHAR_THER", - "AFFE_MODELE", - "ASSEMBLAGE", - "CALC_ESSAI_GEOMECA", - "CALC_EUROPLEXUS", - "CALC_FATIGUE", - "CALC_FERRAILLAGE", - "CALC_FONCTION", - "CALC_FORC_NONL", - "CALC_G", - "CALC_IFS_DNL", - "CALC_MAC3COEUR", - "CALC_MATR_ELEM", - "CALC_META", - "CALC_MISS", - "CALC_MODAL", - "CALC_PRECONT", - "CALCUL", - "CALC_VECT_ELEM", - "CREA_MAILLAGE", - "DEBUT", - "DEFI_COMPOR", - "DEFI_FISS_XFEM", - "DEFI_LIST_INST", - "DEFI_MATER_GC", - "DEFI_MATERIAU", - "DEFI_OBSTACLE", - "DEFI_PART_PA_OPS", - "DYNA_NON_LINE", - "DYNA_TRAN_MODAL", - "DYNA_VIBRA", - "EXTR_TABLE", - "FACTORISER", - "GENE_ACCE_SEISME", - "IMPR_MISS_3D", - "IMPR_RESU", - "INFO_FONCTION", - "LIRE_MAILLAGE", - "LIRE_MISS_3D", - "LIRE_RESU", - "MACR_ASCOUF_CALC", - "MACR_ASCOUF_MAIL", - "MACR_ASPIC_CALC", - "MACR_ECREVISSE", - "MACR_INFO_MAIL", - "MACRO_BASCULE_SCHEMA", - "MACRO_MISS_3D", - "MACRO_MODE_MECA", - "MECA_STATIQUE", - "MODE_ITER_INV", - "MODE_ITER_SIMULT", - "MODI_MAILLAGE", - "MODI_MODELE_XFEM", - "POST_DYNA_ALEA", - "POST_ELEM", - "POST_FATIGUE", - "POURSUITE", - "RECU_FONCTION", - "STAT_NON_LINE", - "SIMU_POINT_MAT", - "TEST_COMPOR", - "THER_NON_LINE", - "DEFI_PART_FETI" - ) - -dict_erreurs={ - "AFFE_CHAR_MECA_F_ONDE_PLANE_DIRECTION":"Trois valeurs sont nécessaire pour définir la DIRECTION", - "CREA_MAILLAGE_ECLA_PG":"Le mot-clé NOM_CHAM est obligatoire", - "CALC_EUROPLEXUS_FONC_PARASOL":"Le mot-clé GROUP_MA est obligatoire dans le mot-clé facteur FONC_PARASOL "+ - "pour l'opérateur CALC_EUROPLEXUS", - "CALC_FERRAILLAGE":"Certains mots clés de CALC_FERRAILLAGE / AFFE sont obligatoires. "+ - "Pour TYPE_COMB='ELU' : PIVA et PIVB et ES, ES doit être supérieur à 0. "+ - "Pour TYPE_COMB='ELS' : CEQUI.", - "CALC_FONCTION_DSP_FREQ":"Le mot-clé FREQ n'est plus disponible remplacer par LIST_FREQ. La liste de réel \ - doit être obtenu avec DEFI_LIST_REEL", - "CALC_MODAL":"La commande CALC_MODAL a été supprimé et remplacer par CALC_MODES", - "CREA_MAILLAGE_DETR_GROUP_MA":"Le mot-clé DETR_GROUP_MA n'est plus disponible dans CREA_MAILLAGE. Utiliser la commande "+ - "DEFI_GROUP a la place, attention celle-ci est réentrante.", - "DEFI_COMPOR_POLYCRISTAL":"Le mot-clé MU_LOCA est obligatoire.", - "DEFI_FISS_XFEM":"Le mot-clé MAILLAGE est obligatoire", - "DEFI_MATER_GC_MAZARS":"Les mot-clés EIJ, EPSI_C, FTJ du mot-clé facteur MAZARS sont obligatoire", - "DEFI_MATERIAU_THER_FO":"Attention les mot-clés suivants ('THER','THER_FO','THER_ORTH','THER_NL','THER_HYDR', "+ - "'THER_COQUE','THER_COQUE_FO') ne peuvent être utilisé en même temps.", - "DEFI_MATERIAU_THER_ORTH":"Attention les mot-clés suivants ('THER','THER_FO','THER_ORTH','THER_NL','THER_HYDR', "+ - "'THER_COQUE','THER_COQUE_FO') ne peuvent être utilisé en même temps.", - "DEFI_MATERIAU_THER_NL":"Attention les mot-clés suivants ('THER','THER_FO','THER_ORTH','THER_NL','THER_HYDR', "+ - "'THER_COQUE','THER_COQUE_FO') ne peuvent être utilisé en même temps.", - "DEFI_MATERIAU_THER_HYDR":"Attention les mot-clés suivants ('THER','THER_FO','THER_ORTH','THER_NL','THER_HYDR', "+ - "'THER_COQUE','THER_COQUE_FO') ne peuvent être utilisé en même temps.", - "DEFI_MATERIAU_THER_COQUE":"Attention les mot-clés suivants ('THER','THER_FO','THER_ORTH','THER_NL','THER_HYDR', "+ - "'THER_COQUE','THER_COQUE_FO') ne peuvent être utilisé en même temps.", - "DEFI_MATERIAU_THER_COQUE_FO":"Attention les mot-clés suivants ('THER','THER_FO','THER_ORTH','THER_NL','THER_HYDR', "+ - "'THER_COQUE','THER_COQUE_FO') ne peuvent être utilisé en même temps.", - "DEFI_MATERIAU_DIS_VISC":"Les mot-clés C et PUIS_ALPHA du mot-clé facteur DIS_VISC sont obligatoire.", - "GENE_ACCE_SEISME_MODULATION":"Le mot-clé DUREE_PHASE_FORTE est obligatoire.", - "IMPR_MISS_3D":"Les commandes IMPR_MISS_3D, MACRO_MISS_3D et LIRE_MISS_3D ont été réunies dans la commande"+ - " CALC_MISS", - "INFO_FONCTION_NOCI_SEISME":"Le mot-clé FREQ_FOND est obligatoire.", - "LIRE_MISS_3D":"Les commandes IMPR_MISS_3D, MACRO_MISS_3D et LIRE_MISS_3D ont été réunies dans la commande"+ - " CALC_MISS", - "MACRO_MISS_3D":"Les commandes IMPR_MISS_3D, MACRO_MISS_3D et LIRE_MISS_3D ont été réunies dans la commande"+ - " CALC_MISS", - "RECU_FONCTION_TABLE":"Si la valeur de TABLE est obtenu par GENE_FONC_ALEA remplacer par le mot-clé " - "INTE_SPEC", - "TEST_COMPOR":"La commande TEST_COMPOR produit une table de sortie dans tous les cas.", - } - -sys.dict_erreurs=dict_erreurs - -def traduc(infile,outfile,flog=None): - - hdlr=log.initialise(flog) - jdc=getJDC(infile,atraiter) - root=jdc.root - - #Parse les mocles des commandes - parseKeywords(root) - - #### traitement de DEFI_PART_PA_OPS ############################## - genereErreurPourCommande(jdc,"DEFI_PART_PA_OPS") - - #### traitement de AFFE_CARA_ELEM ############################## - changementValeurDsMCFSiRegle(jdc,"AFFE_CARA_ELEM","POUTRE","CARA",{"R1":"R_DEBUT","R2":"R_FIN", - "EP1":"EP_DEBUT","EP2":"EP_FIN"}, - ((("POUTRE","MAILLE",),"nexistepasMCsousMCF"), - (("POUTRE","SECTION","CERCLE",jdc),"MCsousMCFaPourValeur"), - (("POUTRE","VARI_SECT","HOMOTHETIQUE",jdc),"MCsousMCFaPourValeur"), - ), - ) - - #### traitement de AFFE_CHAR_MECA ############################## - # Suppression du mot-clé METHODE - removeMotCle(jdc,"AFFE_CHAR_MECA","METHODE",pasDeRegle(),0) - # Suppression des mot-clés LIAISON_XFEM - removeMotCle(jdc,"AFFE_CHAR_MECA","LIAISON_XFEM",pasDeRegle(),0) - removeMotCle(jdc,"AFFE_CHAR_MECA","CONTACT_XFEM",pasDeRegle(),0) - # Modification des parametres du mot-clé DDL_POUTRE - renameMotCleInFact(jdc,"AFFE_CHAR_MECA","DDL_POUTRE","GROUP_MA","GROUP_MA_REPE",pasDeRegle(),0) - renameMotCleInFact(jdc,"AFFE_CHAR_MECA","DDL_POUTRE","MAILLE","MAILLE_REPE",pasDeRegle(),0) - - # Résorption des mot-clés ANGLE_NAUT et CENTRE - removeMotCleInFact(jdc,"AFFE_CHAR_MECA","LIAISON_SOLIDE","ANGL_NAUT",pasDeRegle(),0) - removeMotCleInFact(jdc,"AFFE_CHAR_MECA","LIAISON_SOLIDE","CENTRE",pasDeRegle(),0) - - #### traitement de AFFE_CHAR_MECA_F ############################## - # Suppression du mot-clé METHODE - removeMotCle(jdc,"AFFE_CHAR_MECA_F","METHODE",pasDeRegle(),0) - # Résorption des mot-clés ANGLE_NAUT et CENTRE - removeMotCleInFact(jdc,"AFFE_CHAR_MECA_F","LIAISON_SOLIDE","ANGL_NAUT",pasDeRegle(),0) - removeMotCleInFact(jdc,"AFFE_CHAR_MECA_F","LIAISON_SOLIDE","CENTRE",pasDeRegle(),0) - - genereErreurMotCleInFact(jdc,"AFFE_CHAR_MECA_F","ONDE_PLANE","DIRECTION") - - #### traitement de AFFE_CHAR_THER ############################## - # Suppression du mot-clé METHODE - removeMotCle(jdc,"AFFE_CHAR_THER","METHODE",pasDeRegle(),0) - - #### traitement de AFFE_MODELE ############################## - # Suppression des mot-clés GRILLE et VERIF - removeMotCle(jdc,"AFFE_MODELE","GRILLE",pasDeRegle(),0) - removeMotCle(jdc,"AFFE_MODELE","VERIF",pasDeRegle(),0) - - d3DINCO={"3D_INCO":"3D_INCO_UP","3D_INCO_OSGS":"3D_INCO_UPO", - "3D_INCO_GD":"3D_INCO_UPG","3D_INCO_LOG":"3D_INCO_UPG", - "3D_INCO_LUP":"3D_INCO_UP",} - dAXIS={"AXIS_INCO":"AXIS_INCO_UP","AXIS_INCO_OSGS":"AXIS_INCO_UPO", - "AXIS_INCO_GD":"AXIS_INCO_UPG","AXIS_INCO_LOG":"AXIS_INCO_UPG", - "AXIS_INCO_LUP":"AXIS_INCO_UP",} - dDPLAN={"D_PLAN_INCO":"D_PLAN_INCO_UP","D_PLAN_INCO_OSGS":"D_PLAN_INCO_UPO", - "D_PLAN_INCO_GD":"D_PLAN_INCO_UPG","D_PLAN_INCO_LOG":"D_PLAN_INCO_UPG", - "D_PLAN_INCO_LUP":"D_PLAN_INCO_UP",} - dINCO={} - dINCO.update(d3DINCO) - dINCO.update(dAXIS) - dINCO.update(dDPLAN) - changementValeurDsMCF(jdc,"AFFE_MODELE","AFFE","MODELISATION",dINCO) - - #### traitement de ASSEMBLAGE ############################## - genereErreurValeurDsMCF(jdc,"ASSEMBLAGE","MATR_ASSE","OPTION",("'MASS_THER'",)) - - #### traitement de CALC_ESSAI_GEOMECA ############################## - renameMotCleInFact(jdc,"CALC_ESSAI_GEOMECA","ESSAI_CISA_C","EPSI_IMPOSE","GAMMA_IMPOSE",pasDeRegle(),0) - renameMotCleInFact(jdc,"CALC_ESSAI_GEOMECA","ESSAI_CISA_C","EPSI_ELAS","GAMMA_ELAS",pasDeRegle(),0) - - #### traitement de CALC_EUROPLEXUS ############################## - removeMotCle(jdc,"CALC_EUROPLEXUS","DIME",pasDeRegle(),0) - genereErreurMCF(jdc,"CALC_EUROPLEXUS","FONC_PARASOL") - removeMotCleInFact(jdc,"CALC_EUROPLEXUS","ARCHIVAGE","CONT_GENER") - - #### traitement de CALC_FERRAILLAGE ############################## - genereErreurPourCommande(jdc,"CALC_FERRAILLAGE") - - #### traitement de CALC_FONCTION ############################## - ajouteMotClefDansFacteur(jdc,"CALC_FONCTION","CORR_ACCE","METHODE='POLYNOME'",pasDeRegle(),0) - genereErreurMotCleInFact(jdc,"CALC_FONCTION","DSP","FREQ") - - #### traitement de CALC_G ############################## - removeMotCleInFact(jdc,"CALC_G","COMP_ELAS","RESI_INTE_RELA",pasDeRegle(),0) - removeMotCleInFact(jdc,"CALC_G","COMP_ELAS","ITER_INTE_MAXI",pasDeRegle(),0) - - #### traitement de CALC_FATIGUE ############################## - changementValeur(jdc,"CALC_FATIGUE","COURBE_GRD_VIE",{"MANSON_C":"MANSON_COFFIN",}) - - #### traitement de CALC_IFS_DNL ############################## - removeMotCle(jdc,"CALC_IFS_DNL","ENERGIE",pasDeRegle(),0) - - #### traitement de CALC_MAC3COEUR ############################## - ajouteMotClefDansFacteur(jdc,"CALC_MAC3COEUR","DEFORMATION","ARCHIMEDE = 'OUI'",pasDeRegle()) - - #### traitement de CALC_MATR_ELEM ############################## - genereErreurValeur(jdc,"CALC_MATR_ELEM","OPTION",("'MASS_THER'",)) - - #### traitement de CALC_MISS ############################## - genereErreurValeurDsMCF(jdc,"CALC_MISS","PARAMETRE","ISSF",("'OUI'",)) - - #### traitement de CALC_MODAL ############################## - # renameCommande(jdc,"CALC_MODAL","CALC_MODES", ) - genereErreurPourCommande(jdc,"CALC_MODAL") - - #### traitement de CALC_VECT_ELEM ############################## - genereErreurValeur(jdc,"CALC_VECT_ELEM","OPTION",("'FORC_NODA'",)) - - #### traitement de CREA_MAILLAGE ############################## - renameMotCle(jdc,"CREA_MAILLAGE","CREA_GROUP_MA","CREA_MAILLE") - genereErreurMCF(jdc,"CREA_MAILLAGE","ECLA_PG") - - lMCLEF=['COQU_VOLU', 'CREA_FISS', 'CREA_GROUP_MA', 'CREA_MAILLE', 'CREA_POI1', - 'ECLA_PG', 'HEXA20_27', 'LINE_QUAD', 'MODI_MAILLE','QUAD_LINE', - 'REPERE','RESTREINT','PENTA15_18'] - genereErreurMCF(jdc,"CREA_MAILLAGE","DETR_GROUP_MA") - removeMotCleInFactSiRegle(jdc,"CREA_MAILLAGE","DETR_GROUP_MA","NB_MAILLE",((lMCLEF,"nexistepasMCFParmi"),)) - renameMotCleInFactSiRegle(jdc,"CREA_MAILLAGE","DETR_GROUP_MA","GROUP_MA","NOM",((lMCLEF,"nexistepasMCFParmi"),)) - renameCommandeSiRegle(jdc,"CREA_MAILLAGE","DEFI_GROUP",((lMCLEF,"nexistepasMCFParmi"),)) - - #### traitement de DEBUT ############################## - # genereErreurPourCommande(jdc,("DEBUT",)) - removeMotCleInFact(jdc,"DEBUT","CODE","NOM",pasDeRegle(),0) - - #### traitement de DEFI_COMPOR ############################## - genereErreurValeur(jdc,"DEFI_COMPOR","LOCALISATION",["'RL'",]) - genereErreurValeur(jdc,"DEFI_COMPOR","RELATION_KIT",["'RVMIS_ISOT_CINE'",]) - genereErreurValeurDsMCF(jdc,"DEFI_COMPOR","MULTIFIBRE","RELATION",["'LABORD_1D'"]) - genereErreurMCF(jdc,"DEFI_COMPOR","POLYCRISTAL") - - #### traitement de DEFI_FISS_XFEM ############################## - genereErreurPourCommande(jdc,("DEFI_FISS_XFEM",)) - removeMotCle(jdc,"DEFI_FISS_XFEM","MODELE",pasDeRegle(),0) - removeMotCle(jdc,"DEFI_FISS_XFEM","MODELE_GRILLE",pasDeRegle(),0) - - #### traitement de DEFI_LIST_INST ############################## - changementValeurDsMCF(jdc,"DEFI_LIST_INST","ECHEC","ACTION",{"REAC_PRECOND":"DECOUPE"}) - - #### traitement de DEFI_MATER_GC ############################## - ajouteMotClefDansFacteur(jdc,"DEFI_MATER_GC","MAZARS","CODIFICATION='ESSAI'",pasDeRegle(),0) - - removeMotCleInFactSiRegle(jdc,"DEFI_MATER_GC","MAZARS","UNITE_LONGUEUR", - ((("MAZARS","CODIFICATION",["ESSAI"],jdc),"MCsousMCFaPourValeurDansListe"),),) - renameMotCleInFact(jdc,"DEFI_MATER_GC","MAZARS","UNITE_LONGUEUR","UNITE_CONTRAINTE") - changementValeurDsMCF(jdc,"DEFI_MATER_GC","MAZARS","UNITE_CONTRAINTE",{"MM":"MPa"}) - changementValeurDsMCF(jdc,"DEFI_MATER_GC","MAZARS","UNITE_CONTRAINTE",{"M":"Pa"}) - - genereErreurMCF(jdc,"DEFI_MATER_GC","MAZARS") - - #### traitement de DEFI_MATERIAU ############################## - lMLA=["F_MRR_RR", "C_MRR_RR", "F_MTT_TT", "C_MTT_TT", "F_MZZ_ZZ", - "C_MZZ_ZZ", "F_MRT_RT", "C_MRT_RT", "F_MRZ_RZ", "C_MRZ_RZ", - "F_MTZ_TZ", "C_MTZ_TZ",] - for param in lMLA: - removeMotCleInFact(jdc,"DEFI_MATERIAU","META_LEMA_ANI",param,pasDeRegle(),0) - removeMotCleInFact(jdc,"DEFI_MATERIAU","META_LEMA_ANI_FO",param,pasDeRegle(),0) - - lMDC=["BETA","DELTA1", "DELTA2", "DEPDT",] - for mcle in lMDC: - removeMotCleInFact(jdc,"DEFI_MATERIAU","MONO_DD_CC",mcle,pasDeRegle(),0) - removeMotCleInFact(jdc,"DEFI_MATERIAU","MONO_DD_CC_IRRA",mcle,pasDeRegle(),0) - - removeMotCleInFact(jdc,"DEFI_MATERIAU","UMAT","NB_VALE",pasDeRegle(),0) - removeMotCleInFact(jdc,"DEFI_MATERIAU","UMAT_FO","NB_VALE",pasDeRegle(),0) - listeMc=["C"+str(i) for i in range(1,198)] - fusionMotCleInFact(jdc,"DEFI_MATERIAU","UMAT",listeMc,"LISTE_COEF") - fusionMotCleInFact(jdc,"DEFI_MATERIAU","UMAT_FO",listeMc,"LISTE_COEF") - - removeMotCle(jdc,"DEFI_MATERIAU","LABORD_1D",pasDeRegle(),0) - - genereErreurMCF(jdc,"DEFI_MATERIAU","DIS_VISC") - lDISC=["PUIS_DX", "PUIS_DY", "PUIS_DZ", "PUIS_RX", "PUIS_RY", "PUIS_RZ", - "COEF_DX", "COEF_DY", "COEF_DZ", "COEF_RX", "COEF_RY", "COEF_RZ"] - for param in lDISC: - removeMotCleInFact(jdc,"DEFI_MATERIAU","DIS_VISC",param,pasDeRegle(),0) - - lTHMD=["PERMIN_X", "PERMIN_Y", "PERMIN_Z", "PERMINXY", "PERMINYZ", "PERMINZX",] - for param in lTHMD: - removeMotCleInFact(jdc,"DEFI_MATERIAU","THM_DIFFU",param,pasDeRegle(),0) - - # lMONODD=["DELTA1", "DELTA2"] - # for param in lMONODD: - # removeMotCleInFact(jdc,"DEFI_MATERIAU","MONO_DD_CC",param,pasDeRegle(),0) - # removeMotCleInFact(jdc,"DEFI_MATERIAU","MONO_DD_CC_IRRA",param,pasDeRegle(),0) - - removeMotCleInFact(jdc,"DEFI_MATERIAU","GLRC_DM","EF",pasDeRegle(),0) - removeMotCleInFact(jdc,"DEFI_MATERIAU","GLRC_DM","NUF",pasDeRegle(),0) - - genereErreurMCF(jdc,"DEFI_MATERIAU","THER_FO") - genereErreurMCF(jdc,"DEFI_MATERIAU","THER_NL") - genereErreurMCF(jdc,"DEFI_MATERIAU","THER_HYDR") - genereErreurMCF(jdc,"DEFI_MATERIAU","THER_COQUE") - genereErreurMCF(jdc,"DEFI_MATERIAU","THER_COQUE_FO") - - - #### traitement de DEFI_OBSTACLE ############################## - lMCLE=("CRAYON_900","CRAYON_1300","GUID_A_CARTE_900", - "GUID_B_CARTE_900","GUID_C_CARTE_900","GUID_D_CARTE_900","GUID_E_CARTE_900", - "GUID_F_CARTE_900","GUID_A_CARTE_1300","GUID_B_CARTE_1300","GUID_C_CARTE_1300", - "GUID_D_CARTE_1300","GUID_E_CARTE_1300","GUID_F_CARTE_1300","GUID_A_CARSP_900", - "GUID_B_CARSP_900","GUID_C_CARSP_900","GUID_D_CARSP_900","GUID_E_CARSP_900", - "GUID_F_CARSP_900","GUID_A_CARSP_1300","GUID_B_CARSP_1300","GUID_C_CARSP_1300", - "GUID_D_CARSP_1300","GUID_E_CARSP_1300","GUID_F_CARSP_1300","GUID_A_GCONT_900", - "GUID_B_GCONT_900","GUID_C_GCONT_900","GUID_D_GCONT_900","GUID_E_GCONT_900", - "GUID_F_GCONT_900","GUID_A_GCONT_1300","GUID_B_GCONT_1300","GUID_C_GCONT_1300", - "GUID_D_GCONT_1300","GUID_E_GCONT_1300","GUID_F_GCONT_1300","GUID_A_GCOMB_900", - "GUID_B_GCOMB_900","GUID_C_GCOMB_900","GUID_D_GCOMB_900","GUID_E_GCOMB_900", - "GUID_F_GCOMB_900","GUID_A_GCOMB_1300","GUID_B_GCOMB_1300","GUID_C_GCOMB_1300", - "GUID_D_GCOMB_1300","GUID_E_GCOMB_1300","GUID_F_GCOMB_1300",) - genereErreurValeur(jdc,"DEFI_OBSTACLE","TYPE",lMCLE) - - #### traitement de DYNA_TRAN_MODAL ############################## - removeMotCle(jdc,"DYNA_TRAN_MODAL","LAME_FLUIDE",pasDeRegle(),0) - removeMotCle(jdc,"DYNA_TRAN_MODAL","PARA_LAME_FLUI",pasDeRegle(),0) - removeMotCle(jdc,"DYNA_TRAN_MODAL","RELA_TRANSIS",pasDeRegle(),0) - - #### traitement de DYNA_VIBRA ############################## - removeMotCle(jdc,"DYNA_VIBRA","LAME_FLUIDE",pasDeRegle(),0) - removeMotCle(jdc,"DYNA_VIBRA","PARA_LAME_FLUI",pasDeRegle(),0) - removeMotCle(jdc,"DYNA_VIBRA","RELA_TRANSIS",pasDeRegle(),0) - - #### traitement de EXTR_TABLE ############################## - changementValeurDsMCF(jdc,"EXTR_TABLE","FILTRE","VALE_K",{"MATR_ELEM":"MATR_TANG_ELEM"}) - changementValeurDsMCF(jdc,"EXTR_TABLE","FILTRE","VALE_K",{"CODE_RETOUR":"CODE_RETOUR_INTE"}) - - #### traitement de FACTORISER ############################## - renameMotCle(jdc,"FACTORISER","ELIM_LAGR2","ELIM_LAGR") - changementValeur(jdc,"FACTORISER","ELIM_LAGR",{"OUI":"LAGR2",}) - - #### traitement de GENE_ACCE_SEISME ############################## - genereErreurMCF(jdc,"GENE_ACCE_SEISME","MODULATION") - moveMotCleFromFactToFather(jdc,"GENE_ACCE_SEISME","MODULATION","DUREE_PHASE_FORTE") - - - removeMotCleInFact(jdc,"GENE_ACCE_SEISME","MODULATION","PARA") - removeMotCleInFactSiRegle(jdc,"GENE_ACCE_SEISME","MODULATION","INST_INI",((("MODULATION","TYPE",["GAMMA"],jdc),"MCsousMCFnaPasPourValeurDansListe"),)) - - removeMotCleInFact(jdc,"GENE_ACCE_SEISME","DSP","FREQ_PENTE") - - #### traitement de IMPR_MISS_3D ############################## - genereErreurPourCommande(jdc,"IMPR_MISS_3D") - # removeCommande(jdc,"IMPR_MISS_3D") - - #### traitement de IMPR_RESU ############################## - removeMotCle(jdc,"IMPR_RESU","RESTREINT",pasDeRegle(),0) - - #### traitement de INFO_FONCTION ############################## - genereErreurMCF(jdc,"INFO_FONCTION","NOCI_SEISME") - - #### traitement de LIRE_MAILLAGE ############################## - removeMotCle(jdc,"LIRE_MAILLAGE","ABSC_CURV",pasDeRegle(),0) - - #### traitement de LIRE_MISS_3D ############################## - genereErreurPourCommande(jdc,"LIRE_MISS_3D") - - #### traitement de MACR_ASCOUF_CALC ############################## - removeMotCle(jdc,"MACR_ASCOUF_CALC","CL_BOL_P2_GV",pasDeRegle(),0) - # genereErreurMCF(jdc,"MACR_ASCOUF_CALC","COMP_ELAS") - - #### traitement de MACR_ASCOUF_MAIL ############################## - genereErreurValeurDsMCF(jdc,"MACR_ASCOUF_MAIL","COUDE","BOL_P2",("'GV'",)) - - #### traitement de MACR_ASPIC_CALC ############################## - # genereErreurMCF(jdc,"MACR_ASPIC_CALC","COMP_ELAS") - - #### traitement de MACR_ECREVISSE ############################## - genereErreurMCF(jdc,"MACR_ECREVISSE","COMP_INCR") - - #### traitement de MACR_INFO_MAIL ############################## - changementValeur(jdc,"MACR_INFO_MAIL","VERSION_HOMARD",{"V10_6":"V11_2"}) - changementValeur(jdc,"MACR_INFO_MAIL","VERSION_HOMARD",{"V10_N":"V11_N"}) - changementValeur(jdc,"MACR_INFO_MAIL","VERSION_HOMARD",{"V10_N_PERSO":"V11_N_PERSO"}) - - #### traitement de MACRO_BASCULE_SCHEMA ############################## - renameMotCle(jdc,"MACRO_BASCULE_SCHEMA","COMP_INCR_IMPL","COMPORTEMENT_IMPL",pasDeRegle()) - renameMotCle(jdc,"MACRO_BASCULE_SCHEMA","COMP_INCR_EXPL","COMPORTEMENT_EXPL",pasDeRegle()) - - #### traitement de MACRO_MISS_3D ############################## - genereErreurPourCommande(jdc,"MACRO_MISS_3D") - - #### traitement de MACRO_MODE_MECA ############################## - # insereMotCleDansCommande(jdc,"MACRO_MODE_MECA","TYPE_RESU='DYNAMIQUE'") - chercheOperInsereFacteur(jdc,"MACRO_MODE_MECA","SOLVEUR_MODAL",) - chercheOperInsereFacteur(jdc,"MACRO_MODE_MECA","OPTION='BANDE'",pasDeRegle(),0) - chercheOperInsereFacteurSiRegle(jdc,"MACRO_MODE_MECA","NORM_MODE",((("NORM_MODE",),"nexistepas"),),1) - - lMCLE=["PREC_SOREN", "NMAX_ITER_SOREN", "PARA_ORTHO_SOREN"] - for mcle in lMCLE: - moveMotClefInOperToFact(jdc,"MACRO_MODE_MECA",mcle,"SOLVEUR_MODAL") - - moveMotCleFromFactToFact(jdc,"MACRO_MODE_MECA","CALC_FREQ","COEF_DIM_ESPACE","SOLVEUR_MODAL") - moveMotCleFromFactToFact(jdc,"MACRO_MODE_MECA","CALC_FREQ","DIM_SOUS_ESPACE","SOLVEUR_MODAL") - renameCommande(jdc,"MACRO_MODE_MECA","CALC_MODES", ) - - #### traitement de MODE_ITER_INV ############################## - chercheOperInsereFacteur(jdc,"MODE_ITER_INV","SOLVEUR_MODAL",) - moveMotCleFromFactToFather(jdc,"MODE_ITER_INV","CALC_FREQ","OPTION") - moveMotCleFromFactToFather(jdc,"MODE_ITER_INV","CALC_CHAR_CRIT","OPTION") - - lINV=["OPTION", "PREC", "NMAX_ITER",] - for mcle in lINV: - renameMotCleInFact(jdc,"MODE_ITER_INV","CALC_MODE",mcle,mcle+"_INV",pasDeRegle(),0) - moveMotCleFromFactToFact(jdc,"MODE_ITER_INV","CALC_MODE",mcle+"_INV","SOLVEUR_MODAL") - - lMCLE=["NMAX_ITER_AJUSTE","PREC_AJUSTE",] - for mcle in lMCLE: - moveMotCleFromFactToFact(jdc,"MODE_ITER_INV","CALC_FREQ",mcle,"SOLVEUR_MODAL") - moveMotClefInOperToFact(jdc,"MODE_ITER_SIMULT","PREC_JACOBI","SOLVEUR_MODAL") - moveMotClefInOperToFact(jdc,"MODE_ITER_SIMULT","PREC_BATHE","SOLVEUR_MODAL") - - removeMotCle(jdc,"MODE_ITER_INV","CALC_MODE",pasDeRegle(),0) - - chercheOperInsereMotCleSiRegle(jdc,"MODE_ITER_INV","OPTION='AJUSTE'",((("OPTION",),"nexistepas"),),0) - - renameCommande(jdc,"MODE_ITER_INV","CALC_MODES", ) - - #### traitement de MODE_ITER_SIMULT ############################## - chercheOperInsereFacteur(jdc,"MODE_ITER_SIMULT","SOLVEUR_MODAL",) - removeMotCleSiRegle(jdc,"MODE_ITER_SIMULT","OPTION",((("METHODE","TRI_DIAG",jdc),"MCnaPasPourValeur"),),) - removeMotCleSiRegle(jdc,"MODE_ITER_SIMULT","OPTION",((("OPTION","SANS",jdc),"MCaPourValeur"),),) - moveMotClefInOperToFact(jdc,"MODE_ITER_SIMULT","OPTION","SOLVEUR_MODAL") - changementValeurDsMCF(jdc,"MODE_ITER_SIMULT","SOLVEUR_MODAL","OPTION",{"MODE_RIGIDE":"OUI"}) - renameMotCleInFact(jdc,"MODE_ITER_SIMULT","SOLVEUR_MODAL","OPTION","MODE_RIGIDE") - moveMotCleFromFactToFather(jdc,"MODE_ITER_SIMULT","CALC_FREQ","OPTION") - moveMotCleFromFactToFather(jdc,"MODE_ITER_SIMULT","CALC_CHAR_CRIT","OPTION") - - # chercheOperInsereFacteurSiRegle(jdc,"MODE_ITER_SIMULT","SOLVEUR_MODAL",((("METHODE",),"existe"),),1) - moveMotClefInOperToFact(jdc,"MODE_ITER_SIMULT","METHODE","SOLVEUR_MODAL") - moveMotClefInOperToFact(jdc,"MODE_ITER_SIMULT","TYPE_QZ","SOLVEUR_MODAL") - moveMotClefInOperToFact(jdc,"MODE_ITER_SIMULT","NMAX_ITER_BATHE","SOLVEUR_MODAL") - moveMotCleFromFactToFact(jdc,"MODE_ITER_SIMULT","CALC_FREQ","COEF_DIM_ESPACE","SOLVEUR_MODAL") - moveMotCleFromFactToFact(jdc,"MODE_ITER_SIMULT","CALC_FREQ","DIM_SOUS_ESPACE","SOLVEUR_MODAL") - moveMotCleFromFactToFact(jdc,"MODE_ITER_SIMULT","CALC_CHAR_CRIT","COEF_DIM_ESPACE","SOLVEUR_MODAL") - moveMotCleFromFactToFact(jdc,"MODE_ITER_SIMULT","CALC_CHAR_CRIT","DIM_SOUS_ESPACE","SOLVEUR_MODAL") - - removeMotCleInFactSiRegle(jdc,"MODE_ITER_SIMULT","CALC_FREQ","APPROCHE", - ((("SOLVEUR_MODAL","METHODE",["QZ"],jdc),"MCsousMCFnaPasPourValeurDansListe")or - (("SOLVEUR_MODAL","METHODE",),"nexistepasMCsousMCF"), - ) - ) - - moveMotCleFromFactToFact(jdc,"MODE_ITER_SIMULT","CALC_FREQ","APPROCHE","SOLVEUR_MODAL") - moveMotCleFromFactToFact(jdc,"MODE_ITER_SIMULT","CALC_CHAR_CRIT","APPROCHE","SOLVEUR_MODAL") - - lMCLE=["PREC_SOREN", "NMAX_ITER_SOREN", "PARA_ORTHO_SOREN"] - for mcle in lMCLE: - moveMotClefInOperToFact(jdc,"MODE_ITER_SIMULT",mcle,"SOLVEUR_MODAL") - - lMCLE=["NMAX_ITER_QR", "PREC_ORTHO", "NMAX_ITER_ORTHO", "PREC_LANCZOS"] - for mcle in lMCLE: - moveMotClefInOperToFact(jdc,"MODE_ITER_SIMULT",mcle,"SOLVEUR_MODAL") - - - renameCommande(jdc,"MODE_ITER_SIMULT","CALC_MODES", ) - - #### traitement de MODI_MAILLAGE ############################## - genereErreurValeurDsMCF(jdc,"MODI_MAILLAGE","DEFORME","OPTION",("'TRAN_APPUI'",)) - removeMotCleInFact(jdc,"MODI_MAILLAGE","DEFORME",["GROUP_NO_APPUI"],pasDeRegle(),0) - removeMotCleInFact(jdc,"MODI_MAILLAGE","DEFORME",["GROUP_NO_STRU"],pasDeRegle(),0) - - #### traitement de MODI_MODELE_XFEM ############################## - changementValeur(jdc,"MODI_MODELE_XFEM","CONTACT",{"P1P1":"STANDARD",}) - changementValeur(jdc,"MODI_MODELE_XFEM","CONTACT",{"P2P1":"STANDARD",}) - - - #### traitement de POST_DYNA_ALEA ############################## - chercheOperInsereFacteurSiRegle(jdc,"POST_DYNA_ALEA","INTERSPECTRE",((("INTE_SPEC",),"existe"),),1) - lPDA=["INTE_SPEC", "NUME_ORDRE_I", "NOEUD_I", "OPTION", "NUME_ORDRE_J", - "NOEUD_J", "NOM_CMP_I", "NOM_CMP_J", "MOMENT", "DUREE"] - for mcle in lPDA: - moveMotClefInOperToFact(jdc,"POST_DYNA_ALEA",mcle,"INTERSPECTRE") - removeMotCle(jdc,"POST_DYNA_ALEA","TOUT_ORDRE",pasDeRegle(),0) - - ajouteMotClefDansFacteur(jdc,"POST_DYNA_ALEA","FRAGILITE","METHODE = 'EMV'",pasDeRegle()) - - #### traitement de POST_ELEM ############################## - ajouteMotClefDansFacteurSiRegle(jdc,"POST_ELEM","VOLUMOGRAMME","NB_INTERV=5", - ((("VOLUMOGRAMME","NB_INTERV",),"nexistepasMCsousMCF"),),) - - #### traitement de POST_FATIGUE ############################## - changementValeur(jdc,"POST_FATIGUE","DOMMAGE",{"MANSON_C":"MANSON_COFFIN",}) - - #### traitement de POURSUITE ############################## - removeMotCle(jdc,"POURSUITE","CODE",)#"NOM",pasDeRegle(),0) - - #### traitement de RECU_FONCTION ############################## - genereErreurMCF(jdc,"RECU_FONCTION","TABLE") - - #### traitement de C_COMP_INCR et C_COMP_ELAS ############################## - lCOM=["CALCUL","STAT_NON_LINE","CALC_G", "CALC_PRECONT","DYNA_NON_LINE","CALC_META", - "TEST_COMPOR","SIMU_POINT_MAT","CALC_ESSAI_GEOMECA","CALC_FORC_NONL","LIRE_RESU", - "MACR_ASCOUF_CALC","MACR_ASPIC_CALC","CALC_EUROPLEXUS","MACR_ECREVISSE",] - for com in lCOM: - # chercheOperInsereFacteurSiRegle(jdc,com,"COMPORTEMENT",(((["COMPORTEMENT"],),"nexistepasMCFParmi"),),1) - fusionMCFToMCF(jdc,com,["COMP_ELAS","COMP_INCR"],"COMPORTEMENT") - # renameMotCle(jdc,com,"COMP_ELAS","COMPORTEMENT") - # renameMotCle(jdc,com,"COMP_INCR","COMPORTEMENT") - chercheOperInsereFacteurSiRegle(jdc,com,"ETAT_INIT",((("COMPORTEMENT","SIGM_INIT",),"existeMCsousMCF"),),1) - moveMotCleFromFactToFact(jdc,com,"COMPORTEMENT","SIGM_INIT","ETAT_INIT") - renameMotCleInFact(jdc,com,"ETAT_INIT","SIGM_INIT","SIGM",pasDeRegle(),0) - removeMotCleInFact(jdc,com,"COMPORTEMENT","SIGM_INIT",pasDeRegle(),0) - - changementValeur(jdc,com,"OPTION",{"FORC_INT_ELEM":"FORC_INTE_ELEM"}) - - removeMotCleInFactSiRegle(jdc,com,"COMPORTEMENT","NB_VARI",((("COMPORTEMENT","RELATION","'MFRONT'",jdc),"MCsousMCFaPourValeur"),)) - - - #### traitement de TEST_COMPOR ############################## - genereErreurPourCommande(jdc,"TEST_COMPOR") - - #### traitement de THER_NON_LINE ############################## - renameMotCle(jdc,"THER_NON_LINE","COMP_THER_NL","COMPORTEMENT") - - #### traitement de C_SOLVEUR ############################## - lCOM=['CALC_ERREUR', 'CALC_FORC_AJOU', 'CALC_IFS_DNL', 'CALC_MATR_AJOU', 'CALC_PRECONT', - 'CREA_ELEM_SSD', 'DEFI_BASE_MODALE', 'DYNA_LINE_HARM', 'DYNA_LINE_TRAN', 'DYNA_NON_LINE', - 'DYNA_TRAN_MODAL', 'INFO_MODE', 'MACR_ASCOUF_CALC', 'MACR_ASPIC_CALC', 'MACRO_BASCULE_SCHEMA', - 'MACRO_MATR_AJOU', 'MECA_STATIQUE', 'MODE_ITER_SIMULT', 'MODE_ITER_INV', 'MODE_STATIQUE', - 'STAT_NON_LINE', 'THER_LINEAIRE', 'THER_NON_LINE', 'THER_NON_LINE_MO', 'CALC_ERC_DYN','CALC_MODES',] - for com in lCOM: - # Suppression de ELIM_LAGR2 - changementValeurDsMCF(jdc,com,"SOLVEUR","ELIM_LAGR2",{"OUI":"LAGR2"}) - removeMotCleInFactSiRegle(jdc,com,"SOLVEUR","ELIM_LAGR2",((("SOLVEUR","ELIM_LAGR2","NON",jdc),"MCsousMCFaPourValeur"),)) - renameMotCleInFact(jdc,com,"SOLVEUR","ELIM_LAGR2","ELIM_LAGR") - - # Suppression de la méthode FETI - genereErreurValeurDsMCF(jdc,com,"SOLVEUR","METHODE",["FETI"]) - lMCLE=["NB_REORTHO_DD","NMAX_ITER","INFO_FETI","RESI_RELA","PARTITION"] - for mocle in lMCLE: - genereErreurMotCleInFact(jdc,com,"SOLVEUR",mocle) - - #### traitement de DEFI_PART_FETI ############################## - genereErreurMCF(jdc,"DEFI_PART_FETI","EXCIT") - removeMotCle(jdc,"DEFI_PART_FETI","EXCIT",pasDeRegle(),0) - removeMotCle(jdc,"DEFI_PART_FETI","CORRECTION_CONNEX",pasDeRegle(),0) - genereErreurPourCommande(jdc,"DEFI_PART_FETI") - renameCommande(jdc,"DEFI_PART_FETI","DEFI_PARTITION", ) - - ################################################################# - f=open(outfile,'w') - f.write(jdc.getSource()) - f.close() - - log.ferme(hdlr) - -def main(): - parser = optparse.Optionparser(usage=usage) - - parser.add_option('-i','--infile', dest="infile", default='toto.comm', - help="Le fichier à traduire") - parser.add_option('-o','--outfile', dest="outfile", default='tutu.comm', - help="Le fichier traduit") - - options, args = parser.parse_args() - traduc(options.infile,options.outfile) - -if __name__ == '__main__': - main() diff --git a/Traducteur/traduitV7V8.py b/Traducteur/traduitV7V8.py deleted file mode 100644 index d0a79658..00000000 --- a/Traducteur/traduitV7V8.py +++ /dev/null @@ -1,519 +0,0 @@ -#!/usr/bin/env python -# -*- coding: utf-8 -*- -# Copyright (C) 2007-2017 EDF R&D -# -# 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 -# -""" -""" -usage="""usage: %prog [options] -Typical use is: - python traduitV7V8.py --infile=xxxx --outfile=yyyy -""" - -import sys -import log -import optparse - -from load import getJDC -from mocles import parseKeywords -from removemocle import * -from renamemocle import * -from renamemocle import * -from inseremocle import * -from changeValeur import * -from movemocle import * -from dictErreurs import genereErreurPourCommande,genereErreurMotCleInFact - -import calcG - -atraiter=( "IMPR_GENE","CALC_FONCTION", "DEFI_MATERIAU","STAT_NON_LINE", - "CALC_G_LOCAL_T","CALC_G_THETA_T","CALC_G","AFFE_CHAR_MECA", - "AFFE_CHAR_THER_F","IMPR_CO","DEFI_SQUELETTE","DEFI_FONCTION", - "CALC_THETA","AFFE_MODELE","DYNA_NON_LINE","CALC_ELEM", - "CALC_NO","EXTR_MODE","CALC_META","IMPR_RESU","TEST_RESU", - "DEFI_THER_JOULE","DYNA_TRAN_EXPLI","DEBUT","CALC_CHAM_ELEM", - "AFFE_CHAR_THER", "MACR_LIGN_COUPE","POST_RCCM","PROJ_MESU_MODAL", - "CREA_RESU","CREA_CHAMP","DIST_LIGN_3D","MODI_MAILLAGE","LIRE_TABLE", - "POST_SIMPLIFIE","AFFE_MATERIAU","DEFI_MAILLAGE","DEPL_INTERNE", - "POST_DYNA_ALEA","RECU_FONCTION","DYNA_TRAN_MODAL","DEFI_INTERF_DYNA", - "CALC_PRECONT","DEFI_TEXTURE","TEST_RESU","COMB_CHAM_NO","COMB_CHAM_ELEM", - "CALC_FATIGUE","IMPR_OAR", "AFFE_CHAR_MECA_F", - "MACR_ASCOUF_CALC","MACR_ASPIC_CALC","MACR_CABRI_CALC", - "MACR_ADAP_MAIL","IMPR_FICO_HOMARD","DEFI_PART_FETI" - ) - -dict_erreurs={ -#STA8 - "DIST_LIGN_3D": "la commande DIST_LIGN_3D a ete supprimee", - "DEFI_THER_JOULE": "la commande DIST_LIGN_3D a ete supprimee", - "DIST_LIGN_3D": "la commande DIST_LIGN_3D a ete supprimee", - "AFFE_MODELE_AFFE": "Les modelisations APPUI_REP, ASSE_GRIL et 3D_JOINT_CT ont ete supprimees", - "AFFE_CHAR_MECA_CONTACT_FROTTEMENT": "Suppression d un mot clef FROTTEMENT", - "AFFE_CHAR_MECA_SECH_CALCULEE": "le sechage est maintenant une variable de commande", - "AFFE_CHAR_MECA_HYDR_CALCULEE": "l'hydratation est maintenant une variable de commande", - "AFFE_CHAR_MECA_EPSA_CALCULEE":"EPSA est maintenant une variable de commande", - "AFFE_CHAR_MECA_PRESSION_CALCULEE":"PRESSION_CALCULEE est remplace par EVOL_CHAR", - "MACR_LIGN_COUPE" : "MACR_LIGN_COUPE demande un traitement manuel", - "POST_RCCM" : "POST_RCCM demande un traitement manuel", - "DEFI_MATERIAU_CHABOCHE" : "remplacer la valeur CINx_CHAB", - "DEFI_MATERIAU_POLY_CFC" : "le materiau POLY_CFC est remplace par le comportement POLYCRISTAL", - "DEFI_MATERIAU_ECOU_PLAS1" : "le materiau ECOU_PLAS1 est supprime", - "DEFI_MATERIAU_COMP_THM_ELAS_THM" : "le materiau ELAS_THM a ete supprime", - "DEFI_MATERIAU_COMP_THM_SURF_ETAT_SATU" : "le materiau SURF_ETAT_SATU a ete supprime", - "DEFI_MATERIAU_COMP_THM_SURF_ETAT_NSAT" : "le materiau SURF_ETAT_NSAT a ete supprime", - "DEFI_MATERIAU_COMP_THM_CAM_CLAY_THM" : "le materiau CAM_CLAY_THM a ete supprime", - "DEFI_MATERIAU_COMP_THM_LIQU_SATU_GAT" : "le materiau LIQU_SATU_GAT a ete supprime", - "DEFI_MATERIAU_COMP_THM_LIQU_NSAT_GAT" : "le materiau LIQU_NSAT_GAT a ete supprime", - "DEFI_MATERIAU_GLRC" : "le materiau GLRC a ete remplace par GLRC_DAMAGE", - "DEFI_MATERIAU_GLRC_FO" : "le materiau GLRC_FO a ete remplace par GLRC_DAMAGE", - "DEFI_MATERIAU_OHNO" : "le materiau OHNO a ete remplace par TAHERI", - "DEFI_MATERIAU_OHNO_FO" : "le materiau OHNO a ete remplace par TAHERI", - "CALC_CHAM_ELEM":"reecrire la partie SOUR_ELGA_ELEC", - "CALC_G_THETA_T_OPTION_VALEUR":"verifier la valeur d OPTION", - "CALC_G_THETA_T_OPTION_DEFAUT":"verifier la valeur d OPTION donnee a la place du defaut", - "CALC_G_MODELE":"Mot Clef MODELE supprime sous CALC_G", - "CALC_G_DEPL":"Mot Clef DEPL supprime sous CALC_G", - "CALC_G_CHAM_MATER":"Mot Clef CHAM_MATER supprime sous CALC_G", - "CALC_G_CARA_ELEM":"Mot Clef CARA_ELEM supprime sous CALC_G", - "CALC_G_RESULTAT=XXX,":"Mot Clef RESULTAT a completer sous CALC_G", - "AFFE_MODELE_AFFE_MODELISATION_VALEUR":"verifier la valeur de MODELISATION", - "STAT_NON_LINE_COMP_INCR_RELATION_VALEUR":"verifier la valeur de RELATION", - "STAT_NON_LINE_COMP_INCR_RELATION_KIT_VALEUR":"verifier la valeur de RELATION_KIT", - "STAT_NON_LINE_VARI_COMM":"suppression des variables de commande", - "STAT_NON_LINE_INCREMENT_SUBD_PAS":"Si SUBD_PAS=1 il n'y a pas subdivision : le mot est clef est ote du STAT_NON_LINE", - "DYNA_NON_LINE_COMP_INCR_RELATION_VALEUR":"verifier la valeur de RELATION", - "DYNA_NON_LINE_COMP_INCR_RELATION_KIT_VALEUR":"verifier la valeur de RELATION_KIT", - "DYNA_NON_LINE_VARI_COMM":"suppression des variables de commande", - "DYNA_NON_LINE_INCREMENT_SUBD_PAS":"Si SUBD_PAS=1 il n'y a pas subdivision : le mot est clef est ote du DYNA_NON_LINE", - "CALC_PRECONT_SUBD_PAS":"Si SUBD_PAS=1 il n'y a pas subdivision : le mot est clef est ote du CALC_PRECONT", - "TEST_RESU_UNITE":"suppression du mot clef UNITE dans TEST_RESU", - "POST_SIMPLIFIE":"commande POST_SIMPLIFIE supprimee", - "POST_DYNA_ALEA_GAUSS":"la methode GAUSS a ete supprimee de POST_DYNA_ALEA", - "POST_DYNA_ALEA_VANMARCKE":"la methode VANMARCKE a ete supprimee de POST_DYNA_ALEA", - "POST_DYNA_ALEA_DEPASSEMENT":"la methode DEPASSEMENT a ete supprimee de POST_DYNA_ALEA", - "POST_DYNA_ALEA_RAYLEIGH":"la methode RAYLEIGH a ete supprimee de POST_DYNA_ALEA", - "DYNA_TRAN_MODAL_EXCIT_NUME_MODE":"le numero du mode utilise pour EXCIT DYNA_TRAN_MODAL est le numero d'ORDRE", - "DEFI_INTERF_DYNA_INTERFACE_DDL_ACTIF":"DDL_ACTIF supprime de DEFI_INTERF_DYNA; utiliser MASQUE", - "DEFI_TEXTURE":"le materiau POLY_CFC est remplace par le comportement POLYCRISTAL", - "CREA_RESU_NOM_CHAM_VALEUR":"HYDR_ELGA est remplace par HYDR_ELNO_ELGA et HYDR_NOEU_ELGA", - "COMB_CHAM_NO":"COMB_CHAM_NO est remplace par CREA_CHAMP", - "COMB_CHAM_ELEM":"COMB_CHAM_ELEM est remplace par CREA_CHAMP", - "IMPR_OAR":"IMPR_OAR demande un traitement manuel", - "IMPR_FICO_HOMARD":"IMPR_FICO_HOMARD a ete integre dans MACR_ADPA_MAIL", - } - -sys.dict_erreurs=dict_erreurs - -#atraiter=( "MACR_ADAP_MAIL",) - -def traduc(infile,outfile,flog=None): - - hdlr=log.initialise(flog) - jdc=getJDC(infile,atraiter) - root=jdc.root - - #Parse les mocles des commandes - parseKeywords(root) - - ####################### traitement erreurs ######################## - genereErreurPourCommande(jdc,("DEBUT","POST_RCCM","DIST_LIGN_3D","IMPR_OAR","COMB_CHAM_NO","COMB_CHAM_ELEM")) - - ####################### traitement CALC_META ####################### - renameMotCleInFact(jdc,"CALC_META","ETAT_INIT","META_INIT","META_INIT_ELNO") - - ####################### traitement CALC_FONCTION ####################### - removeMotCleSiRegle(jdc,"CALC_FONCTION","NOM_PARA",((("MAX"),"existeMCFParmi"),)) - renameCommandeSiRegle(jdc,"CALC_FONCTION","INFO_FONCTION", ((("RMS","MAX","NOCI_SEISME","NORME","ECART-TYPE"),"existeMCFParmi"),)) - renameMotCleInFact(jdc,"CALC_FONCTION","LISS_ENVELOP","FONCTION","NAPPE") - - ####################### traitement IMPR_GENE ####################### - moveMotCleFromFactToFather(jdc,"IMPR_GENE","GENE","UNITE") - moveMotCleFromFactToFather(jdc,"IMPR_GENE","GENE","FORMAT") - - ####################### traitement STAT/DYNA_NON_LINE ####################### - moveMotCleFromFactToFactMulti(jdc,"STAT_NON_LINE","CONVERGENCE","RESI_INTE_RELA",("COMP_INCR","COMP_ELAS")) - moveMotCleFromFactToFactMulti(jdc,"STAT_NON_LINE","CONVERGENCE","ITER_INTE_MAXI",("COMP_INCR","COMP_ELAS")) - moveMotCleFromFactToFactMulti(jdc,"STAT_NON_LINE","CONVERGENCE","ITER_INTE_PAS",("COMP_INCR","COMP_ELAS")) - moveMotCleFromFactToFactMulti(jdc,"STAT_NON_LINE","CONVERGENCE","RESO_INTE",("COMP_INCR","COMP_ELAS")) - removeMotCleAvecErreur(jdc,"STAT_NON_LINE","VARI_COMM") - moveMotCleFromFactToFactMulti(jdc,"DYNA_NON_LINE","CONVERGENCE","RESI_INTE_RELA",("COMP_INCR","COMP_ELAS")) - moveMotCleFromFactToFactMulti(jdc,"DYNA_NON_LINE","CONVERGENCE","ITER_INTE_MAXI",("COMP_INCR","COMP_ELAS")) - moveMotCleFromFactToFactMulti(jdc,"DYNA_NON_LINE","CONVERGENCE","ITER_INTE_PAS",("COMP_INCR","COMP_ELAS")) - moveMotCleFromFactToFactMulti(jdc,"DYNA_NON_LINE","CONVERGENCE","RESO_INTE",("COMP_INCR","COMP_ELAS")) - removeMotCleAvecErreur(jdc,"DYNA_NON_LINE","VARI_COMM") - - dStatNonLine={"ELAS":"ELAS_THER"} - lavertit=("ELAS") - changementValeurDsMCFAvecAvertissement(jdc,"STAT_NON_LINE","COMP_INCR","RELATION_KIT",dStatNonLine,lavertit) - - lavertit=("CHABOCHE","ASSE_COMBU","OHNO","GLRC") - dchaboche={"CHABOCHE":"VMIS_CIN1_CHAB","ASSE_COMBU":"XXX_IRA","OHNO":"VISC_TAHERI","GLRC":"GLRC_DAMAGE"} - changementValeurDsMCFAvecAvertissement(jdc,"STAT_NON_LINE","COMP_INCR","RELATION",dchaboche,lavertit) - changementValeurDsMCFAvecAvertissement(jdc,"DYNA_NON_LINE","COMP_INCR","RELATION",dchaboche,lavertit) - - removeMotCleInFactSiRegle(jdc,"STAT_NON_LINE","INCREMENT","SUBD_PAS_MINI",((("INCREMENT","SUBD_PAS","1",jdc),"MCsousMCFaPourValeur"),)) - removeMotCleInFactSiRegle(jdc,"STAT_NON_LINE","INCREMENT","COEF_SUBD_PAS_1",((("INCREMENT","SUBD_PAS","1",jdc),"MCsousMCFaPourValeur"),)) - removeMotCleInFactSiRegleAvecErreur(jdc,"STAT_NON_LINE","INCREMENT","SUBD_PAS",((("INCREMENT","SUBD_PAS","1",jdc),"MCsousMCFaPourValeur"),)) - ajouteMotClefDansFacteurSiRegle(jdc,"STAT_NON_LINE","INCREMENT","SUBD_METHODE='UNIFORME',",((("INCREMENT","SUBD_PAS"),"existeMCsousMCF"),)) - renameMotCleInFact(jdc,"STAT_NON_LINE","INCREMENT","COEF_SUBD_PAS_1","SUBD_COEF_PAS_1") - removeMotCleInFactSiRegle(jdc,"DYNA_NON_LINE","INCREMENT","SUBD_PAS_MINI",((("INCREMENT","SUBD_PAS","1",jdc),"MCsousMCFaPourValeur"),)) - removeMotCleInFactSiRegle(jdc,"DYNA_NON_LINE","INCREMENT","COEF_SUBD_PAS_1",((("INCREMENT","SUBD_PAS","1",jdc),"MCsousMCFaPourValeur"),)) - removeMotCleInFactSiRegleAvecErreur(jdc,"DYNA_NON_LINE","INCREMENT","SUBD_PAS",((("INCREMENT","SUBD_PAS","1",jdc),"MCsousMCFaPourValeur"),)) - ajouteMotClefDansFacteurSiRegle(jdc,"DYNA_NON_LINE","INCREMENT","SUBD_METHODE='UNIFORME',",((("INCREMENT","SUBD_PAS"),"existeMCsousMCF"),)) - renameMotCleInFact(jdc,"DYNA_NON_LINE","INCREMENT","COEF_SUBD_PAS_1","SUBD_COEF_PAS_1") - - moveMotClefInOperToFact(jdc,"STAT_NON_LINE","PARM_THETA","COMP_INCR") - moveMotClefInOperToFact(jdc,"DYNA_NON_LINE","PARM_THETA","COMP_INCR") - moveMotClefInOperToFact(jdc,"DYNA_TRAN_EXPLI","PARM_THETA","COMP_INCR") - - ####################### traitement DEFI_MATERIAU ####################### - renameMotCle(jdc,"DEFI_MATERIAU","LEMAITRE","LEMAITRE_IRRA") - moveMotCleFromFactToFactMulti(jdc,"DEFI_MATERIAU","FLU_IRRA","QSR_K",("LEMAITRE_IRRA",)) - moveMotCleFromFactToFactMulti(jdc,"DEFI_MATERIAU","FLU_IRRA","BETA",("LEMAITRE_IRRA",)) - moveMotCleFromFactToFactMulti(jdc,"DEFI_MATERIAU","FLU_IRRA","PHI_ZERO",("LEMAITRE_IRRA",)) - moveMotCleFromFactToFactMulti(jdc,"DEFI_MATERIAU","FLU_IRRA","L",("LEMAITRE_IRRA",)) - removeMotCle(jdc,"DEFI_MATERIAU","FLU_IRRA") - renameMotCleAvecErreur(jdc,"DEFI_MATERIAU","CHABOCHE","CINx_CHAB") - renameMotCleAvecErreur(jdc,"DEFI_MATERIAU","OHNO","TAHERI") - renameMotCleAvecErreur(jdc,"DEFI_MATERIAU","OHNO_FO","TAHERI_FO") - renameMotCleAvecErreur(jdc,"DEFI_MATERIAU","GLRC","GLRC_DAMAGE") - renameMotCleAvecErreur(jdc,"DEFI_MATERIAU","GLRC_FO","GLRC_DAMAGE") - - renameMotCleInFact(jdc,"DEFI_MATERIAU","GRAN_IRRA","A","GRAN_A") - renameMotCleInFact(jdc,"DEFI_MATERIAU","GRAN_IRRA","B","GRAN_B") - renameMotCleInFact(jdc,"DEFI_MATERIAU","GRAN_IRRA","S","GRAN_S") - moveMotCleFromFactToFactMulti(jdc,"DEFI_MATERIAU","GRAN_IRRA","GRAN_A",("LEMAITRE_IRRA",)) - moveMotCleFromFactToFactMulti(jdc,"DEFI_MATERIAU","GRAN_IRRA","GRAN_B",("LEMAITRE_IRRA",)) - moveMotCleFromFactToFactMulti(jdc,"DEFI_MATERIAU","GRAN_IRRA","GRAN_S",("LEMAITRE_IRRA",)) - removeMotCle(jdc,"DEFI_MATERIAU","GRAN_IRRA") - - chercheOperInsereFacteurSiRegle(jdc,"DEFI_MATERIAU","ELAS",((("CABLE",),"existe"),)) - moveMotCleFromFactToFactMulti(jdc,"DEFI_MATERIAU","CABLE","E", ("ELAS",)) - moveMotCleFromFactToFactMulti(jdc,"DEFI_MATERIAU","CABLE","NU", ("ELAS",)) - moveMotCleFromFactToFactMulti(jdc,"DEFI_MATERIAU","CABLE","RHO",("ELAS",)) - moveMotCleFromFactToFactMulti(jdc,"DEFI_MATERIAU","CABLE","ALPHA",("ELAS",)) - ajouteMotClefDansFacteurSiRegle(jdc,"DEFI_MATERIAU","ELAS","NU=0.,",((("ELAS","NU"),"nexistepasMCsousMCF"),)) - - removeMotCleAvecErreur(jdc,"DEFI_MATERIAU","POLY_CFC") - removeMotCleAvecErreur(jdc,"DEFI_MATERIAU","ECOU_PLAS1") - - lavertit=("ELAS_THM","SURF_ETAT_SATU","SURF_ETAT_NSAT","CAM_CLAY_THM","LIQU_SATU_GAT","LIQU_NSAT_GAT") - dTHM={"ELAS_THM":"xxx", "SURF_ETAT_SATU":"xxx", "SURF_ETAT_NSAT":"xxx","CAM_CLAY_THM":"xxx","LIQU_SATU_GAT":"xxx","LIQU_NSAT_GAT":"xxx"} - changementValeurAvecAvertissement(jdc,"DEFI_MATERIAU","COMP_THM",dTHM,lavertit) - - dfatigue={"MATAKE":"MATAKE_MODI_AC", "DOMM_MAXI":"MATAKE_MODI_AV", "FATEMI_SOCIE":"FATESOCI_MODI_AV"} - changementValeurDsMCF(jdc,"DEFI_MATERIAU","CISA_PLAN_CRIT","CRITERE",dfatigue) - - ####################### traitement IMPR_CO ####################### - chercheOperInsereFacteurSiRegle(jdc,"IMPR_CO","CONCEPT",((("CO",),"existe"),)) - moveMotClefInOperToFact(jdc,"IMPR_CO","CO","CONCEPT") - renameMotCleInFact(jdc,"IMPR_CO","CONCEPT","CO","NOM") - - ####################### traitement DEFI_SQUELETTE ####################### - chercheOperInsereFacteurSiRegle(jdc,"DEFI_SQUELETTE","CYCLIQUE",((("MODE_CYCL",),"existe"),)) - moveMotClefInOperToFact(jdc,"DEFI_SQUELETTE","MODE_CYCL","CYCLIQUE") - - ####################### traitement AFFE_CHAR_* ####################### - removeMotCle(jdc,"AFFE_CHAR_MECA","VERI_DDL") - removeMotCle(jdc,"AFFE_CHAR_MECA","SECH_CALCULEE") - removeMotCle(jdc,"AFFE_CHAR_MECA","HYDR_CALCULEE") - removeMotCle(jdc,"AFFE_CHAR_MECA","PRESSION_CALCULEE") - removeMotCleAvecErreur(jdc,"AFFE_CHAR_MECA","EPSA_CALCULEE") - removeMotCle(jdc,"AFFE_CHAR_THER_F","VERI_DDL") - removeMotCle(jdc,"AFFE_CHAR_THER","VERI_DDL") - - ####################### traitement AFFE_CHAR_MECA (CONTACT) ####################### - renameMotCleInFact(jdc,"AFFE_CHAR_MECA","CONTACT","COEF_MULT_ESCL","COEF_MULT") - renameMotCleInFact(jdc,"AFFE_CHAR_MECA","CONTACT","NOM_CHAM","NOM_CMP") - renameMotCleInFactSiRegle(jdc,"AFFE_CHAR_MECA","CONTACT","GROUP_MA_ESCL","GROUP_MA",((("CONTACT","NOM_CMP"),"existeMCsousMCF"),)) - renameMotCleSiRegle(jdc,"AFFE_CHAR_MECA","CONTACT","LIAISON_UNILATER",((("CONTACT","NOM_CMP"),"existeMCsousMCF"),)) - removeMotCleInFact(jdc,"AFFE_CHAR_MECA","LIAISON_UNILATER","APPARIEMENT") - - ####################### traitement AFFE_CHAR_MECA_F (CONTACT) ####################### - renameMotCleInFact(jdc,"AFFE_CHAR_MECA_F","CONTACT","COEF_MULT_ESCL","COEF_MULT") - renameMotCleInFact(jdc,"AFFE_CHAR_MECA_F","CONTACT","NOM_CHAM","NOM_CMP") - renameMotCleInFactSiRegle(jdc,"AFFE_CHAR_MECA_F","CONTACT","GROUP_MA_ESCL","GROUP_MA",((("CONTACT","NOM_CMP"),"existeMCsousMCF"),)) - renameMotCleSiRegle(jdc,"AFFE_CHAR_MECA_F","CONTACT","LIAISON_UNILATER",((("CONTACT","NOM_CMP"),"existeMCsousMCF"),)) - removeMotCleInFact(jdc,"AFFE_CHAR_MECA_F","LIAISON_UNILATER","APPARIEMENT") - - ####################### traitement CALC_G ####################### - chercheOperInsereFacteurSiRegle(jdc,"CALC_G_LOCAL_T","LISSAGE",((("LISSAGE_G","LISSAGE_THETA","DEGRE"),"existeMCFParmi"),)) - moveMotClefInOperToFact(jdc,"CALC_G_LOCAL_T","LISSAGE_THETA","LISSAGE") - moveMotClefInOperToFact(jdc,"CALC_G_LOCAL_T","LISSAGE_G","LISSAGE") - moveMotClefInOperToFact(jdc,"CALC_G_LOCAL_T","DEGRE","LISSAGE") - - dlocal={"CALC_G_LGLO":"G_LAGR", "G_BILINEAIRE":"G_BILI", "CALC_G_MAX":"G_MAX"} - changementValeur(jdc,"CALC_G_LOCAL_T","OPTION",dlocal) - # - dtheta={"CALC_G_LAGR":"G_LAGR_GLOB", "G_BILINEAIRE":"G_BILI_GLOB", "CALC_G_MAX":"G_MAX_GLOB","CALC_G":"CALC_G_GLOB"} - # Attention si le defaut doit generer un avertissement Il faut le mettre comme dernier mot de la liste - lavertit=("CALC_G_LAGR","CALC_G","defaut") - changementValeurAvecAvertissement(jdc,"CALC_G_THETA_T","OPTION",dtheta,lavertit) - renameOper(jdc,"CALC_G_LOCAL_T","CALC_G") - renameOper(jdc,"CALC_G_THETA_T","CALC_G") - - # Attention cela necessite un traitement particulier et ne peut pas etre generalise tel quel - # Attention egalement doit etre fait avant le regroupement dans THETA - calcG.traitementRayon(jdc) - renameMotCle(jdc,"CALC_G","THETA","THETA_OLD") - chercheOperInsereFacteur(jdc,"CALC_G","THETA") - moveMotClefInOperToFact(jdc,"CALC_G","THETA_OLD","THETA") - renameMotCleInFact(jdc,"CALC_G","THETA","THETA_OLD","THETA") - - moveMotClefInOperToFact(jdc,"CALC_G","FOND_FISS","THETA") - moveMotClefInOperToFact(jdc,"CALC_G","R_INF_FO","THETA") - moveMotClefInOperToFact(jdc,"CALC_G","R_SUP_FO","THETA") - moveMotClefInOperToFact(jdc,"CALC_G","R_INF","THETA") - moveMotClefInOperToFact(jdc,"CALC_G","R_SUP","THETA") - moveMotClefInOperToFact(jdc,"CALC_G","FISSURE","THETA") - renameMotCleInFactSiRegle(jdc,"CALC_G","THETA","THETA","THETA_LAGR",((("THETA","R_INF"),"existeMCsousMCF"),)) - renameMotCleInFactSiRegle(jdc,"CALC_G","THETA","THETA","THETA_LAGR",((("THETA","R_SUP"),"existeMCsousMCF"),)) - moveMotCleFromFactToFather(jdc,"CALC_G","THETA","THETA_LAGR") - removeMotCleAvecErreur(jdc,"CALC_G","MODELE") - removeMotCleAvecErreur(jdc,"CALC_G","DEPL") - removeMotCleAvecErreur(jdc,"CALC_G","CHAM_MATER") - removeMotCleAvecErreur(jdc,"CALC_G","CARA_ELEM") - chercheOperInsereFacteurSiRegleAvecAvertissement(jdc,"CALC_G","RESULTAT=XXX,",((("THETA_LAGR",),"existeMCFParmi"),),0) - - ####################### traitement AFFE_MODELE ####################### - daffeModele={"PLAN_FISSURE":"PLAN_JOINT", "AXIS_FISSURE":"AXIS_JOINT"} - changementValeurDsMCF(jdc,"AFFE_MODELE","AFFE","MODELISATION",daffeModele) - removeMotCleSiRegleAvecErreur(jdc,"AFFE_MODELE","AFFE",((("AFFE","MODELISATION","APPUI_REP",jdc),"MCsousMCFaPourValeur"),)) - removeMotCleSiRegleAvecErreur(jdc,"AFFE_MODELE","AFFE",((("AFFE","MODELISATION","ASSE_GRIL",jdc),"MCsousMCFaPourValeur"),)) - removeMotCleSiRegleAvecErreur(jdc,"AFFE_MODELE","AFFE",((("AFFE","MODELISATION","3D_JOINT_CT",jdc),"MCsousMCFaPourValeur"),)) - renameMotCleInFact(jdc,"AFFE_MODELE","AFFE_SOUS_STRUC","MAILLE","SUPER_MAILLE") - - ####################### traitement PROJ_MESU_MODAL ####################### - removeMotCleInFact(jdc,"PROJ_MESU_MODAL","MODELE_MESURE","NOM_PARA") - removeMotCleInFactSiRegleAvecErreur(jdc,"AFFE_CHAR_MECA","CONTACT","FROTTEMENT",((("CONTACT","METHODE","CONTRAINTE",jdc),"MCsousMCFaPourValeur"),)) - - ####################### traitement CALC_ELEM / CALC_NO ####################### - dcalcelemno={"ERRE_ELGA_NORE":"ERRE_ELEM_SIGM","ERRE_ELEM_NOZ1":"ERZ1_ELEM_SIGM","ERRE_ELEM_NOZ2":"ERZ2_ELEM_SIGM","ERRE_ELNO_ELGA":"ERRE_ELNO_ELEM","ERRE_NOEU_ELGA":"ERRE_NOEU_ELEM","ERTH_ELEM_TEMP":"ERRE_ELEM_TEMP","ERTH_ELNO_ELEM":"ERRE_ELNO_ELEM","EPGR_ELNO":"EPFP_ELNO","EPGR_ELGA":"EPFP_ELGA","DURT_ELGA_TEMP":"DURT_ELNO_TEMP"} - changementValeur(jdc,"CALC_ELEM","OPTION",dcalcelemno) - changementValeur(jdc,"CALC_NO","OPTION",dcalcelemno) - changementValeurDsMCF(jdc,"IMPR_RESU","RESU","NOM_CHAM",dcalcelemno) - changementValeur(jdc,"TEST_RESU","RESU",dcalcelemno) - removeMotCleAvecErreur(jdc,"TEST_RESU","UNITE") - - chercheOperInsereFacteurSiRegle(jdc,"CALC_ELEM","REPE_COQUE",((("NUME_COUCHE","NIVE_COUCHE","ANGLE","PLAN"),"existeMCFParmi"),)) - moveMotClefInOperToFact(jdc,"CALC_ELEM","NIVE_COUCHE","REPE_COQUE") - moveMotClefInOperToFact(jdc,"CALC_ELEM","NUME_COUCHE","REPE_COQUE") - moveMotClefInOperToFact(jdc,"CALC_ELEM","ANGLE","REPE_COQUE") - moveMotClefInOperToFact(jdc,"CALC_ELEM","PLAN","REPE_COQUE") - - - ####################### traitement EXTR_MODE ####################### - ajouteMotClefDansFacteurSiRegle(jdc,"EXTR_MODE","FILTRE_MODE","SEUIL=1.E-3", ((("FILTRE_MODE","CRIT_EXTR",),"existeMCsousMCF"),(("FILTRE_MODE","SEUIL",),"nexistepasMCsousMCF"))) - - ####################### traitement DYNA_TRAN_EXPLI ####################### - removeMotCle(jdc,"DYNA_TRAN_EXPLI","NEWMARK") - removeMotCle(jdc,"DYNA_TRAN_EXPLI","HHT") - chercheOperInsereFacteur(jdc,"DYNA_TRAN_EXPLI","DIFF_CENT") - - ####################### traitement CREA_RESU ####################### - dcrearesu={"HYDR_ELGA":"HYDR_NOEU_ELGA"} - lavertit=("HYDR_ELGA",) - changementValeur(jdc,"CREA_RESU","NOM_CHAM",dcrearesu,lavertit) - - ####################### traitement CREA_CHAMP ####################### - dcrearesu={"HYDR_ELGA":"HYDR_ELNO_ELGA"} - lavertit=("HYDR_ELGA",) - changementValeur(jdc,"CREA_CHAMP","NOM_CHAM",dcrearesu,lavertit) - changementValeur(jdc,"CREA_CHAMP","TYPE_CHAM",dcrearesu,lavertit) - - ####################### traitement TEST_RESU ####################### - dcrearesu={"HYDR_ELGA":"HYDR_NOEU_ELGA"} - lavertit=("HYDR_ELGA",) - changementValeurDsMCFAvecAvertissement(jdc,"TEST_RESU","RESU","NOM_CHAM",dcrearesu,lavertit) - - ####################### traitement DEBUT ####################### - removeMotCleSiRegle(jdc,"DEBUT","BASE",((("BASE","FICHIER","LOCALE",jdc),"MCsousMCFaPourValeur"),)) - - ####################### traitement DEFI_THER_JOULE ####################### - removeCommande(jdc,"DEFI_THER_JOULE") - - ####################### traitement CALC_CHAM_ELEM ####################### - removeCommandeSiRegleAvecErreur(jdc,"CALC_CHAM_ELEM",((("OPTION","SOUR_ELGA_ELEC",jdc),"MCaPourValeur"),)) - - ####################### traitement MACR_LIGNE_COUPE ####################### - appelleMacroSelonValeurConcept(jdc,"MACR_LIGN_COUPE",("LIGN_COUPE","TABLE")) - removeMotCleInFact(jdc,"MACR_LIGN_COUPE","LIGN_COUPE","TABLE") - - ####################### traitement MODI_MAILLAGE ####################### - removeMotCle(jdc,"MODI_MAILLAGE","MODELE") - - ####################### traitement LIRE_TABLE ####################### - removeMotCle(jdc,"LIRE_TABLE","TYPE_TABLE") - - ####################### traitement POST_SIMPLIFIE ####################### - removeCommande(jdc,"POST_SIMPLIFIE") - - ####################### traitement AFFE_MATERIAU ####################### - removeMotCleInFact(jdc,"AFFE_MATERIAU","AFFE","SECH_REF") - - ####################### traitement DEFI_MAILLAGE ####################### - renameMotCleInFact(jdc,"DEFI_MAILLAGE","DEFI_MAILLE","MAILLE","SUPER_MAILLE") - renameMotCle(jdc,"DEFI_MAILLAGE","DEFI_MAILLE","DEFI_SUPER_MAILLE") - renameMotCleInFact(jdc,"DEFI_MAILLAGE","RECO_GLOBAL","MAILLE","SUPER_MAILLE") - renameMotCleInFact(jdc,"DEFI_MAILLAGE","RECO_MAILLE","MAILLE","SUPER_MAILLE") - renameMotCle(jdc,"DEFI_MAILLAGE","RECO_MAILLE","RECO_SUPER_MAILLE") - renameMotCleInFact(jdc,"DEFI_MAILLAGE","DEFI_NOEUD","MAILLE","SUPER_MAILLE") - renameMotCleInFact(jdc,"DEFI_MAILLAGE","DEFI_GROUP_NO","MAILLE","SUPER_MAILLE") - - ####################### traitement DEPL_INTERNE ####################### - renameMotCle(jdc,"DEPL_INTERNE","MAILLE","SUPER_MAILLE") - - - ####################### traitement POST_DYNA_ALEA ####################### - removeMotCleAvecErreur(jdc,"POST_DYNA_ALEA","GAUSS") - removeMotCleAvecErreur(jdc,"POST_DYNA_ALEA","RAYLEIGH") - removeMotCleAvecErreur(jdc,"POST_DYNA_ALEA","DEPASSEMENT") - removeMotCleAvecErreur(jdc,"POST_DYNA_ALEA","VANMARCKE") - - ####################### traitement RECU_FONCTION ####################### -# il faut aussi ajouter la regle suivante : -# s'il existe TYPE_RESU='FONCTION_C', renommer NOM_PARA_TABL='FONCTION_C' - removeMotCleSiRegle(jdc,"RECU_FONCTION","NOM_PARA_TABL",((("TYPE_RESU","FONCTION_C",jdc),"MCaPourValeur"),)) - chercheOperInsereFacteurSiRegle(jdc,"RECU_FONCTION","NOM_PARA_TABL='FONCTION_C',",((("TYPE_RESU","FONCTION_C",jdc),"MCaPourValeur"),),estunFacteur=0) - removeMotCle(jdc,"RECU_FONCTION","TYPE_RESU") - chercheOperInsereFacteurSiRegle(jdc,"RECU_FONCTION","NOM_PARA_TABL='FONCTION',",((("OBSTACLE",),"existe"),),estunFacteur=0) - chercheOperInsereFacteurSiRegle(jdc,"RECU_FONCTION","FILTRE",((("OBSTACLE",),"existe"),)) - ajouteMotClefDansFacteurSiRegle(jdc,"RECU_FONCTION","FILTRE","NOM_PARA='LIEU',",((("OBSTACLE",),"existe"),)) - ajouteMotClefDansFacteurSiRegle(jdc,"RECU_FONCTION","FILTRE","VALE_K='DEFIOBST',",((("OBSTACLE",),"existe"),)) - renameMotCle(jdc,"RECU_FONCTION","OBSTACLE","TABLE") - - ####################### traitement DYNA_TRAN_MODAL ####################### - renameMotCleInFact(jdc,"DYNA_TRAN_MODAL","EXCIT","NUME_MODE","NUME_ORDRE",erreur=1) - - ####################### traitement DEFI_INTERF_DYNA ####################### - removeMotCleInFact(jdc,"DEFI_INTERF_DYNA","INTERFACE","DDL_ACTIF",erreur=1) - - - ####################### traitement CALC_PRECONT ####################### - removeMotCleInFactSiRegle(jdc,"CALC_PRECONT","INCREMENT","SUBD_PAS_MINI",((("INCREMENT","SUBD_PAS","1",jdc),"MCsousMCFaPourValeur"),)) - removeMotCleInFactSiRegle(jdc,"CALC_PRECONT","INCREMENT","COEF_SUBD_PAS_1",((("INCREMENT","SUBD_PAS","1",jdc),"MCsousMCFaPourValeur"),)) - removeMotCleInFactSiRegleAvecErreur(jdc,"CALC_PRECONT","INCREMENT","SUBD_PAS",((("INCREMENT","SUBD_PAS","1",jdc),"MCsousMCFaPourValeur"),)) - ajouteMotClefDansFacteurSiRegle(jdc,"CALC_PRECONT","INCREMENT","SUBD_METHODE='UNIFORME',",((("INCREMENT","SUBD_PAS"),"existeMCsousMCF"),)) - moveMotCleFromFactToFactMulti(jdc,"CALC_PRECONT","CONVERGENCE","RESI_INTE_RELA",("COMP_INCR","COMP_ELAS")) - moveMotCleFromFactToFactMulti(jdc,"CALC_PRECONT","CONVERGENCE","ITER_INTE_MAXI",("COMP_INCR","COMP_ELAS")) - moveMotCleFromFactToFactMulti(jdc,"CALC_PRECONT","CONVERGENCE","ITER_INTE_PAS",("COMP_INCR","COMP_ELAS")) - moveMotCleFromFactToFactMulti(jdc,"CALC_PRECONT","CONVERGENCE","RESO_INTE",("COMP_INCR","COMP_ELAS")) - renameMotCleInFact(jdc,"CALC_PRECONT","INCREMENT","COEF_SUBD_PAS_1","SUBD_COEF_PAS_1") - - - ####################### traitement DEFI_TEXTURE ####################### - removeCommande(jdc,"DEFI_TEXTURE") - - - ####################### traitement COMB_CHAM_NO ####################### - renameMotCleInFact(jdc,"COMB_CHAM_NO","COMB_C","CHAM_NO","CHAM_GD") - chercheOperInsereFacteur(jdc,"COMB_CHAM_NO","TYPE_CHAM='xxx',",estunFacteur=0,erreur=1) - chercheOperInsereFacteur(jdc,"COMB_CHAM_NO","MODELE=xxx,",estunFacteur=0,erreur=1) - chercheOperInsereFacteur(jdc,"COMB_CHAM_NO","OPERATION='ASSE',",estunFacteur=0,erreur=1) - renameMotCle(jdc,"COMB_CHAM_NO","COMB_C","ASSE") - ajouteMotClefDansFacteur(jdc,"COMB_CHAM_NO","ASSE","CUMUL='NON',") - ajouteMotClefDansFacteur(jdc,"COMB_CHAM_NO","ASSE","TOUT='OUI',") - renameOper(jdc,"COMB_CHAM_NO","CREA_CHAMP") - - - ####################### traitement MACR_ASCOUF_CALC ####################### - ajouteMotClefDansFacteurSiRegle(jdc,"MACR_ASCOUF_CALC","INCREMENT","SUBD_METHODE='UNIFORME',",((("INCREMENT","SUBD_PAS"),"existeMCsousMCF"),)) - renameMotCleInFact(jdc,"MACR_ASCOUF_CALC","INCREMENT","COEF_SUBD_PAS_1","SUBD_COEF_PAS_1") - moveMotCleFromFactToFactMulti(jdc,"MACR_ASCOUF_CALC","CONVERGENCE","RESI_INTE_RELA",("COMP_INCR","COMP_ELAS")) - moveMotCleFromFactToFactMulti(jdc,"MACR_ASCOUF_CALC","CONVERGENCE","ITER_INTE_MAXI",("COMP_INCR","COMP_ELAS")) - moveMotCleFromFactToFactMulti(jdc,"MACR_ASCOUF_CALC","CONVERGENCE","ITER_INTE_PAS",("COMP_INCR","COMP_ELAS")) - moveMotCleFromFactToFactMulti(jdc,"MACR_ASCOUF_CALC","CONVERGENCE","RESO_INTE",("COMP_INCR","COMP_ELAS")) - - - ####################### traitement MACR_ASPIC_CALC ####################### - ajouteMotClefDansFacteurSiRegle(jdc,"MACR_ASPIC_CALC","INCREMENT","SUBD_METHODE='UNIFORME',",((("INCREMENT","SUBD_PAS"),"existeMCsousMCF"),)) - renameMotCleInFact(jdc,"MACR_ASPIC_CALC","INCREMENT","COEF_SUBD_PAS_1","SUBD_COEF_PAS_1") - moveMotCleFromFactToFactMulti(jdc,"MACR_ASPIC_CALC","CONVERGENCE","RESI_INTE_RELA",("COMP_INCR","COMP_ELAS")) - moveMotCleFromFactToFactMulti(jdc,"MACR_ASPIC_CALC","CONVERGENCE","ITER_INTE_MAXI",("COMP_INCR","COMP_ELAS")) - moveMotCleFromFactToFactMulti(jdc,"MACR_ASPIC_CALC","CONVERGENCE","ITER_INTE_PAS",("COMP_INCR","COMP_ELAS")) - - - ####################### traitement MACR_CABRI_CALC ####################### - ajouteMotClefDansFacteurSiRegle(jdc,"MACR_CABRI_CALC","INCREMENT","SUBD_METHODE='UNIFORME',",((("INCREMENT","SUBD_PAS"),"existeMCsousMCF"),)) - renameMotCleInFact(jdc,"MACR_CABRI_CALC","INCREMENT","COEF_SUBD_PAS_1","SUBD_COEF_PAS_1") - moveMotCleFromFactToFactMulti(jdc,"MACR_CABRI_CALC","CONVERGENCE","RESI_INTE_RELA",("COMP_INCR","COMP_ELAS")) - moveMotCleFromFactToFactMulti(jdc,"MACR_CABRI_CALC","CONVERGENCE","ITER_INTE_MAXI",("COMP_INCR","COMP_ELAS")) - moveMotCleFromFactToFactMulti(jdc,"MACR_CABRI_CALC","CONVERGENCE","ITER_INTE_PAS",("COMP_INCR","COMP_ELAS")) - - - ####################### traitement CALC_FATIGUE ####################### - dfatigue={"MATAKE":"MATAKE_MODI_AC", "DOMM_MAXI":"MATAKE_MODI_AV", "FATEMI_SOCIE":"FATESOCI_MODI_AV"} - changementValeur(jdc,"CALC_FATIGUE","CRITERE",dfatigue) - - ####################### traitement DEFI_PART_FETI ####################### - removeMotCleSiRegle(jdc,"DEFI_PART_FETI","MAILLAGE", ((("MODELE",),"existeMCFParmi"),(("MAILLAGE",),"existeMCFParmi"))) - - ####################### traitement MACR_ADAP_MAIL ####################### - moveMotCleFromFactToFather(jdc,"MACR_ADAP_MAIL","ADAPTATION","MAILLAGE_N") - moveMotCleFromFactToFather(jdc,"MACR_ADAP_MAIL","ADAPTATION","MAILLAGE_NP1") - moveMotCleFromFactToFather(jdc,"MACR_ADAP_MAIL","ADAPTATION","RESULTAT_N") - moveMotCleFromFactToFather(jdc,"MACR_ADAP_MAIL","ADAPTATION","INDICATEUR") - moveMotCleFromFactToFather(jdc,"MACR_ADAP_MAIL","ADAPTATION","NOM_CMP_INDICA") - moveMotCleFromFactToFather(jdc,"MACR_ADAP_MAIL","ADAPTATION","CRIT_RAFF_PE") - moveMotCleFromFactToFather(jdc,"MACR_ADAP_MAIL","ADAPTATION","CRIT_RAFF_ABS") - moveMotCleFromFactToFather(jdc,"MACR_ADAP_MAIL","ADAPTATION","CRIT_RAFF_REL") - moveMotCleFromFactToFather(jdc,"MACR_ADAP_MAIL","ADAPTATION","CRIT_DERA_PE") - moveMotCleFromFactToFather(jdc,"MACR_ADAP_MAIL","ADAPTATION","CRIT_DERA_ABS") - moveMotCleFromFactToFather(jdc,"MACR_ADAP_MAIL","ADAPTATION","CRIT_DERA_REL") - moveMotCleFromFactToFather(jdc,"MACR_ADAP_MAIL","ADAPTATION","NIVE_MAX") - moveMotCleFromFactToFather(jdc,"MACR_ADAP_MAIL","ADAPTATION","INST") - moveMotCleFromFactToFather(jdc,"MACR_ADAP_MAIL","ADAPTATION","PRECISION") - moveMotCleFromFactToFather(jdc,"MACR_ADAP_MAIL","ADAPTATION","CRITERE") - chercheOperInsereFacteurSiRegle(jdc,"MACR_ADAP_MAIL","ADAPTATIONEW='RAFFINEMENT',",((("ADAPTATION","LIBRE","RAFFINEMENT",jdc),"MCsousMCFaPourValeur"),),estunFacteur=0) - chercheOperInsereFacteurSiRegle(jdc,"MACR_ADAP_MAIL","ADAPTATIONEW='DERAFFINEMENT',",((("ADAPTATION","LIBRE","DERAFFINEMENT",jdc),"MCsousMCFaPourValeur"),),estunFacteur=0) - chercheOperInsereFacteurSiRegle(jdc,"MACR_ADAP_MAIL","ADAPTATIONEW='RAFF_DERA',",((("ADAPTATION","LIBRE","RAFF_DERA",jdc),"MCsousMCFaPourValeur"),),estunFacteur=0) - chercheOperInsereFacteurSiRegle(jdc,"MACR_ADAP_MAIL","ADAPTATIONEW='RAFFINEMENT_UNIFORME',",((("ADAPTATION","UNIFORME","RAFFINEMENT",jdc),"MCsousMCFaPourValeur"),),estunFacteur=0) - chercheOperInsereFacteurSiRegle(jdc,"MACR_ADAP_MAIL","ADAPTATIONEW='DERAFFINEMENT_UNIFORME',",((("ADAPTATION","UNIFORME","DERAFFINEMENT",jdc),"MCsousMCFaPourValeur"),),estunFacteur=0) - chercheOperInsereFacteurSiRegle(jdc,"MACR_ADAP_MAIL","ADAPTATIONEW='RIEN',",((("ADAPTATION","UNIFORME","RIEN",jdc),"MCsousMCFaPourValeur"),),estunFacteur=0) - removeMotCle(jdc,"MACR_ADAP_MAIL","ADAPTATION") - renameMotCle(jdc,"MACR_ADAP_MAIL","ADAPTATIONEW","ADAPTATION") - dcalcelemno={"ERRE_ELGA_NORE":"ERRE_ELEM_SIGM","ERRE_ELEM_NOZ1":"ERZ1_ELEM_SIGM","ERRE_ELEM_NOZ2":"ERZ2_ELEM_SIGM","ERRE_ELNO_ELGA":"ERRE_ELNO_ELEM","ERRE_NOEU_ELGA":"ERRE_NOEU_ELEM","ERTH_ELEM_TEMP":"ERRE_ELEM_TEMP","ERTH_ELNO_ELEM":"ERRE_ELNO_ELEM","EPGR_ELNO":"EPFP_ELNO","EPGR_ELGA":"EPFP_ELGA","DURT_ELGA_TEMP":"DURT_ELNO_TEMP"} - changementValeur(jdc,"MACR_ADAP_MAIL","ADAPTATION",dcalcelemno) - - - ####################### traitement IMPR_FICO_HOMARD ####################### - removeCommande(jdc,"IMPR_FICO_HOMARD") - - - ######################################################################### - - - f=open(outfile,'w') - f.write(jdc.getSource()) - f.close() - - log.ferme(hdlr) - -def main(): - parser = optparse.Optionparser(usage=usage) - - parser.add_option('-i','--infile', dest="infile", default='toto.comm', - help="Le fichier a traduire") - parser.add_option('-o','--outfile', dest="outfile", default='tutu.comm', - help="Le fichier traduit") - - options, args = parser.parse_args() - traduc(options.infile,options.outfile) - -if __name__ == '__main__': - main() diff --git a/Traducteur/traduitV8V9.py b/Traducteur/traduitV8V9.py deleted file mode 100644 index 092e6c19..00000000 --- a/Traducteur/traduitV8V9.py +++ /dev/null @@ -1,436 +0,0 @@ -#!/usr/bin/env python -# -*- coding: utf-8 -*- -# Copyright (C) 2007-2017 EDF R&D -# -# 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 -# -""" -""" -usage="""usage: %prog [options] -Typical use is: - python traduitV7V8.py --infile=xxxx --outfile=yyyy -""" - -import log -import optparse -import sys - -from load import getJDC -from mocles import parseKeywords -from removemocle import * -from renamemocle import * -from renamemocle import * -from inseremocle import * -from changeValeur import * -from movemocle import * -from dictErreurs import genereErreurPourCommande,genereErreurMotCleInFact - -import calcG - - -atraiter=( "DEFI_MAILLAGE","CALC_VECT_ELEM","DYNA_TRAN_EXPLI","DYNA_NON_LINE","STAT_NON_LINE","FACT_LDLT","FACT_GRAD","RESO_LDLT","RESO_GRAD","DYNA_TRAN_MODAL","NORM_MODE","MACRO_MODE_MECA","POST_RCCM","THER_NON_LINE","THER_NON_LINE_MO","THER_LINEAIRE","THER_NON_LINE_MO","DEFI_CABLE_BP","GENE_VARI_ALEA","DEFI_MATERIAU","IMPR_MATRICE","CALC_G","CALC_MATR_ELEM","MACR_ADAP_MAIL","MACR_INFO_MAIL","REST_BASE_PHYS","COMB_SISM_MODAL","TEST_FICHIER","MACR_ELEM_DYNA","CREA_CHAMP","AFFE_CHAR_MECA","AFE_CHAR_MECA_F","MODI_MAILLAGE","DEFI_FISS_XFEM","AFFE_MODELE","POST_MAIL_XFEM","CALC_NO","LIRE_CHAMP","AFFE_MATERIAU","MACR_ASCOUF_CALC","MACR_ASPIC_CALC","CALC_PRECONT","LIRE_INTE_SPEC","MACR_CARA_POUTRE","MACR_LIGN_COUPE") - -dict_erreurs={ -# STA9 - "POST_RCCM_SITUATION_NUME_PASSAGE":"Utilisation de NUME_PASSAGE pour le type TUYAUTERIE impossible en 9.2. On ne traite pour le moment que les chemins de passage simples.", - "POST_RCCM_SITUATION_NB_CYCL_SEISME":"POST_RCCM : maintenant les SITUATIONS sismiques ont leur propre mot clef facteur SEISME, attention, traduction incomplete", - "DEFI_MATERIAU_BAZANT_FD" : "le materiau BAZANT_FD a ete supprime", - "DEFI_MATERIAU_APPUI_ELAS" : "le materiau APPUI_ELAS a ete supprime", - "DEFI_MATERIAU_PORO_JOINT" : "le materiau PORO_JOINT a ete supprime", - "DEFI_MATERIAU_ZIRC_CYRA2" : "le materiau ZIRC_CYRA2 a ete supprime", - "DEFI_MATERIAU_ZIRC_EPRI" : "le materiau ZIRC_EPRI a ete supprime", - "IMPR_MATRICE_MATR_ELEM_FORMAT=RESULTAT" : "IMPR_MATRICE au format RESULTAT a ete supprime", - "IMPR_MATRICE_MATR_ASSE_FORMAT=RESULTAT" : "IMPR_MATRICE au format RESULTAT a ete supprime", - "CALC_G_OPTION=G_LAGR" : "l'OPTION G_LAGR de CALC_G a ete supprimee", - "CALC_G_OPTION=G_LAGR_GLOB" : "l'OPTION G_LAGR_GLOB de CALC_G a ete supprimee", - "CALC_MATR_ELEM_THETA" : "l'OPTION RIGI_MECA_LAGR de CALC_MATR_ELEM a ete supprimee", - "TEST_FICHIER_NB_CHIFFRE" : "le fonctionnement de TEST_FICHIER a change entre la V8 et la V9, consultez la doc, en particulier pour entrer la bonne valeur de NB_VALE", - "DYNA_NON_LINE_PILOTAGE" : "le PILOTAGE n'est pas actif dans DYNA_NON_LINE ", - "DYNA_NON_LINE_RECH_LINEAIRE" : "la RECH_LINEAIRE n'est pas active dans DYNA_NON_LINE ", - "DEFI_FISS_XFEM_CONTACT" : "en v9, le contact pour XFEM est defini dans un AFFE_CHAR_MECA(CONTACT=_F) en propre", - "POST_MAIL_XFEM" : "dans POST_MAIL_XFEM il faut entrer le MODELE et le MAILLAGE_SAIN", - "AFFE_MATERIAU_AFFE_TEMP_REF" : "Passage aux variables de commande : definir un materiau dependant de la temperature 'AFFE_MATERIAU(AFFE_VARC=_F(...))' et supprimer TEMP_CALCULEE dans les chargements", - "STAT_NON_LINE_LAGR_NON_LOCAL" : "Le solveur NON_LOCAL a ete supprime", - "STAT_NON_LINE_SOLV_NON_LOCAL" : "Le solveur NON_LOCAL a ete supprime", - "STAT_NON_LINE_ETAT_INIT_VARI_NON_LOCAL" : "Le solveur NON_LOCAL a ete supprime", - "DYNA_NON_LINE_LAGR_NON_LOCAL" : "Le solveur NON_LOCAL a ete supprime", - "DYNA_NON_LINE_SOLV_NON_LOCAL" : "Le solveur NON_LOCAL a ete supprime", - "DYNA_NON_LINE_ETAT_INIT_VARI_NON_LOCAL" : "Le solveur NON_LOCAL a ete supprime", - "CALC_PRECONT_LAGR_NON_LOCAL" : "Le solveur NON_LOCAL a ete supprime", - "CALC_PRECONT_SOLV_NON_LOCAL" : "Le solveur NON_LOCAL a ete supprime", - "CALC_PRECONT_ETAT_INIT_VARI_NON_LOCAL" : "Le solveur NON_LOCAL a ete supprime", - } - -sys.dict_erreurs=dict_erreurs - -def traduc(infile,outfile,flog=None): - - hdlr=log.initialise(flog) - jdc=getJDC(infile,atraiter) - root=jdc.root - - #Parse les mocles des commandes - parseKeywords(root) - - ####################### traitement erreurs ######################## - genereErreurPourCommande(jdc,("POST_RCCM","DEFI_MATERIAU","TEST_FICHIER","DYNA_NON_LINE","DEFI_FISS_XFEM","POST_MAIL_XFEM")) - - ####################### traitement Sous-Structuration ####################### - renameMotCleInFact(jdc,"DEFI_MAILLAGE","DEFI_SUPER_MAILLE","MACR_ELEM_STAT","MACR_ELEM") - renameMotCleInFact(jdc,"DYNA_NON_LINE","SOUS_STRUC","MAILLE","SUPER_MAILLE") - renameMotCleInFact(jdc,"STAT_NON_LINE","SOUS_STRUC","MAILLE","SUPER_MAILLE") - renameMotCleInFact(jdc,"CALC_VECT_ELEM","SOUS_STRUC","MAILLE","SUPER_MAILLE") - ######################################################################### - - ####################### traitement MACR_ELEM_DYNA ####################### - removeMotCle(jdc,"MACR_ELEM_DYNA","OPTION") - ######################################################################### - - ####################### traitement MODI_MAILLAGE ####################### - renameMotCle(jdc,"MODI_MAILLAGE","ORIE_SHB8","ORIE_SHB") - ######################################################################### - - ####################### traitement XFEM ####################### - dXFEM={"3D_XFEM":"3D", "C_PLAN_X":"C_PLAN", "D_PLAN_X":"D_PLAN"} - changementValeurDsMCF(jdc,"AFFE_MODELE","AFFE","MODELISATION",dXFEM) - renameMotCleInFact(jdc,"DEFI_FISS_XFEM","ORIE_FOND","PT_ORIGIN","POINT_ORIG") - removeMotCleAvecErreur(jdc,"DEFI_FISS_XFEM","CONTACT") - ######################################################################### - - ####################### traitement Resolution lineaire ##################### - renameMotCle(jdc,"RESO_LDLT","MATR_FACT","MATR") - renameMotCle(jdc,"RESO_GRAD","MATR_ASSE","MATR") - renameMotCle(jdc,"RESO_GRAD","MATR_FACT","MATR_PREC") - renameOper(jdc,"RESO_LDLT","RESOUDRE") - renameOper(jdc,"RESO_GRAD","RESOUDRE") - renameOper(jdc,"FACT_LDLT","FACTORISER") - renameOper(jdc,"FACT_GRAD","FACTORISER") - ######################################################################### - - ####################### traitement DYNA_TRAN_MODAL ###################### - removeMotCle(jdc,"DYNA_TRAN_MODAL","NB_MODE_DIAG") - ######################################################################### - - ############# traitement MASS_INER dans NORM_MODE/MACRO_MODE_MECA ########## - removeMotCle(jdc,"NORM_MODE","MASS_INER") - removeMotCleInFact(jdc,"MACRO_MODE_MECA","NORM_MODE","MASS_INER") - ######################################################################### - - ####################### traitement POST_RCCM ############################ - removeMotCleInFactSiRegleAvecErreur(jdc,"POST_RCCM","SITUATION","NUME_PASSAGE",((("TYPE_RESU_MECA","TUYAUTERIE",jdc),"MCaPourValeur"),)) - chercheOperInsereFacteurSiRegle(jdc,"POST_RCCM","SEISME", ((("SITUATION","NB_CYCL_SEISME"),"existeMCsousMCF"),)) - moveMotCleFromFactToFact(jdc,"POST_RCCM","SITUATION","NB_CYCL_SEISME","SEISME") -# ajouteMotClefDansFacteurSiRegle(jdc,"POST_RCCM","SITUATION", "transferez_au_bloc_SEISME_CHAR_ETAT_NB_OCCUR,NUME_SITU,NUME_GROUP_et_eventuellement_NOM_SITU_et_NUME_RESU_THER",((("SITUATION","NB_CYCL_SEISME"),"existeMCsousMCF"),)) - ajouteMotClefDansFacteurSiRegle(jdc,"POST_RCCM","SITUATION","supprimez_a_la_main_ce_bloc",((("SITUATION","NB_CYCL_SEISME"),"existeMCsousMCF"),)) -# removeMotCleInFactSiRegleAvecErreur(jdc,"POST_RCCM","SITUATION","NB_CYCL_SEISME",((("SITUATION","NB_CYCL_SEISME"),"existeMCsousMCF"),)) - removeMotCleInFactSiRegle(jdc,"POST_RCCM","SITUATION","NB_CYCL_SEISME",((("SITUATION","NB_CYCL_SEISME"),"existeMCsousMCF"),)) - removeMotCleInFact(jdc,"POST_RCCM","CHAR_MECA","TYPE_CHAR",) - removeMotCleInFact(jdc,"POST_RCCM","RESU_MECA","TYPE_CHAR",) - ######################################################################### - - ####################### traitement THER_NON_LINE ############################ - renameMotCleInFact(jdc,"THER_NON_LINE","TEMP_INIT","NUME_INIT","NUME_ORDRE") - renameMotCle(jdc,"THER_NON_LINE","TEMP_INIT","ETAT_INIT",) - renameMotCleInFact(jdc,"THER_NON_LINE","INCREMENT","NUME_INIT","NUME_INST_INIT") - renameMotCleInFact(jdc,"THER_NON_LINE","INCREMENT","NUME_FIN","NUME_INST_FIN") - - renameMotCleInFact(jdc,"THER_NON_LINE_MO","TEMP_INIT","NUME_INIT","NUME_ORDRE") - renameMotCle(jdc,"THER_NON_LINE_MO","TEMP_INIT","ETAT_INIT",) - ######################################################################### - - ####################### traitement THER_LINEAIRE ############################ - renameMotCleInFact(jdc,"THER_LINEAIRE","TEMP_INIT","NUME_INIT","NUME_ORDRE") - renameMotCle(jdc,"THER_LINEAIRE","TEMP_INIT","ETAT_INIT",) - renameMotCleInFact(jdc,"THER_LINEAIRE","INCREMENT","NUME_INIT","NUME_INST_INIT") - renameMotCleInFact(jdc,"THER_LINEAIRE","INCREMENT","NUME_FIN","NUME_INST_FIN") - renameMotCleInFact(jdc,"THER_LINEAIRE","ARCHIVAGE","LIST_ARCH","LIST_INST") - ######################################################################### - - ####################### traitement THER_NON_LINE ############################ - renameMotCleInFact(jdc,"THER_NON_LINE","TEMP_INIT","NUME_INIT","NUME_ORDRE") - renameMotCle(jdc,"THER_NON_LINE","TEMP_INIT","ETAT_INIT",) - ######################################################################### - - ####################### traitement DEFI_CABLE_BP ###################### - removeMotCle(jdc,"DEFI_CABLE_BP","MAILLAGE") - ######################################################################### - - ####################### traitement GENE_VARI_ALEA ###################### - removeMotCleSiRegle(jdc,"GENE_VARI_ALEA","COEF_VAR",((("TYPE","EXPONENTIELLE",jdc),"MCaPourValeur"),)) - ######################################################################### - - ####################### traitement DEFI_MATERIAU ###################### - removeMotCleAvecErreur(jdc,"DEFI_MATERIAU","BAZANT_FD") - removeMotCleAvecErreur(jdc,"DEFI_MATERIAU","PORO_JOINT") - removeMotCleAvecErreur(jdc,"DEFI_MATERIAU","APPUI_ELAS") - removeMotCleAvecErreur(jdc,"DEFI_MATERIAU","ZIRC_EPRI") - removeMotCleAvecErreur(jdc,"DEFI_MATERIAU","ZIRC_CYRA2") - # BARCELONE - moveMotCleFromFactToFact(jdc,"DEFI_MATERIAU","CAM_CLAY","MU","BARCELONE") - moveMotCleFromFactToFact(jdc,"DEFI_MATERIAU","CAM_CLAY","PORO","BARCELONE") - moveMotCleFromFactToFact(jdc,"DEFI_MATERIAU","CAM_CLAY","LAMBDA","BARCELONE") - moveMotCleFromFactToFact(jdc,"DEFI_MATERIAU","CAM_CLAY","KAPPA","BARCELONE") - moveMotCleFromFactToFact(jdc,"DEFI_MATERIAU","CAM_CLAY","M","BARCELONE") - moveMotCleFromFactToFact(jdc,"DEFI_MATERIAU","CAM_CLAY","PRES_CRIT","BARCELONE") - moveMotCleFromFactToFact(jdc,"DEFI_MATERIAU","CAM_CLAY","PA","BARCELONE") - renameMotCleInFact(jdc,"DEFI_MATERIAU","CAM_CLAY","PA","KCAM") - # CAM_CLAY -# ajouteMotClefDansFacteur(jdc,"DEFI_MATERIAU","CAM_CLAY","MU=xxx",) -# ajouteMotClefDansFacteurSiRegle(jdc,"DEFI_MATERIAU","CAM_CLAY","PTRAC=XXX",((("CAM_CLAY","KCAM"),"existeMCsousMCF"),)) - # VENDOCHAB - renameMotCleInFact(jdc,"DEFI_MATERIAU","VENDOCHAB","S_VP","S") - renameMotCleInFact(jdc,"DEFI_MATERIAU","VENDOCHAB","N_VP","N") - renameMotCleInFact(jdc,"DEFI_MATERIAU","VENDOCHAB","M_VP","UN_SUR_M", erreur=1) - renameMotCleInFact(jdc,"DEFI_MATERIAU","VENDOCHAB","K_VP","UN_SUR_K") - renameMotCleInFact(jdc,"DEFI_MATERIAU","VENDOCHAB","SEDVP1","ALPHA_D") - renameMotCleInFact(jdc,"DEFI_MATERIAU","VENDOCHAB","SEDVP2","BETA_D") - renameMotCleInFact(jdc,"DEFI_MATERIAU","VENDOCHAB_FO","S_VP","S") - renameMotCleInFact(jdc,"DEFI_MATERIAU","VENDOCHAB_FO","N_VP","N") - renameMotCleInFact(jdc,"DEFI_MATERIAU","VENDOCHAB_FO","M_VP","UN_SUR_M", erreur=1) - renameMotCleInFact(jdc,"DEFI_MATERIAU","VENDOCHAB_FO","K_VP","UN_SUR_K") - renameMotCleInFact(jdc,"DEFI_MATERIAU","VENDOCHAB_FO","SEDVP1","ALPHA_D") - renameMotCleInFact(jdc,"DEFI_MATERIAU","VENDOCHAB_FO","SEDVP2","BETA_D") - # GLRC - renameCommandeSiRegle(jdc,"DEFI_MATERIAU","DEFI_GLRC", ((("GLRC_DAMAGE","GLRC_ACIER",),"existeMCFParmi"),)) - ######################################################################### - - ####################### traitement IMPR_MATRICE ###################### - removeCommandeSiRegleAvecErreur(jdc,"IMPR_MATRICE",((("MATR_ELEM","FORMAT","RESULTAT",jdc),"MCsousMCFaPourValeur"),)) - removeCommandeSiRegleAvecErreur(jdc,"IMPR_MATRICE",((("MATR_ASSE","FORMAT","RESULTAT",jdc),"MCsousMCFaPourValeur"),)) - ######################################################################### - - ####################### traitement MACR_ADAP/INFO_MAIL ###################### - dadap_mail={ "V8_5":"V9_5", "V8_N":"V9_N", "V8_N_PERSO":"V9_N_PERSO"} - changementValeur(jdc,"MACR_ADAP_MAIL","VERSION_HOMARD",dadap_mail) - changementValeur(jdc,"MACR_INFO_MAIL","VERSION_HOMARD",dadap_mail) - ######################################################################### - - ####################### traitement REST_BASE_PHYS ###################### - renameCommandeSiRegle(jdc,"REST_BASE_PHYS","REST_SOUS_STRUC", ((("RESULTAT","SQUELETTE","SOUS_STRUC","BASE_MODALE","CYCLIQUE","SECTEUR"),"existeMCFParmi"),)) - renameCommandeSiRegle(jdc,"REST_BASE_PHYS","REST_COND_TRAN", ((("MACR_ELEM_DYNA","RESU_PHYS"),"existeMCFParmi"),)) - renameCommande(jdc,"REST_BASE_PHYS","REST_GENE_PHYS", ) - ######################################################################### - - ####################### traitement CALC_G ###################### - removeMotCleSiRegleAvecErreur(jdc,"CALC_G","OPTION",((("OPTION","G_LAGR",jdc),"MCaPourValeur"),)) - removeMotCleSiRegleAvecErreur(jdc,"CALC_G","OPTION",((("OPTION","G_LAGR_GLOB",jdc),"MCaPourValeur"),)) - removeMotCle(jdc,"CALC_G","PROPAGATION") - removeMotCle(jdc,"CALC_G","THETA_LAGR") - removeMotCle(jdc,"CALC_G","DIRE_THETA_LAGR") - ######################################################################### - - ####################### traitement COMB_SISM_MODAL ###################### - ajouteMotClefDansFacteurSiRegle(jdc,"COMB_SISM_MODAL","EXCIT","MULTI_APPUI='DECORRELE'", ((("EXCIT","MONO_APPUI"),"nexistepasMCsousMCF"),)) - ######################################################################### - - ####################### traitement TEST_FICHIER ###################### - renameMotCleAvecErreur(jdc,"TEST_FICHIER","NB_CHIFFRE","NB_VALE") - removeMotCle(jdc,"TEST_FICHIER","EPSILON") - ######################################################################### - - ####################### traitement CALC_MATR_ELEM ###################### - removeMotCleSiRegle(jdc,"CALC_MATR_ELEM","OPTION",((("OPTION","RIGI_MECA_LAGR",jdc),"MCaPourValeur"),)) - removeMotCleAvecErreur(jdc,"CALC_MATR_ELEM","PROPAGATION") - removeMotCle(jdc,"CALC_MATR_ELEM","THETA") - ######################################################################### - - ####################### traitement ITER_INTE_PAS ###################### - removeMotCleInFactSiRegle(jdc,"STAT_NON_LINE","COMP_INCR","ITER_INTE_PAS",((("COMP_INCR","DEFORMATION","SIMO_MIEHE",jdc),"MCsousMCFaPourValeur"),)) - removeMotCleInFactSiRegle(jdc,"DYNA_NON_LINE","COMP_INCR","ITER_INTE_PAS",((("COMP_INCR","DEFORMATION","SIMO_MIEHE",jdc),"MCsousMCFaPourValeur"),)) - ######################################################################### - - ################## traitement RECH_LINEAIRE et PILOTAGE dans DYNA_NON_LINE ################# - removeMotCleAvecErreur(jdc,"DYNA_NON_LINE","RECH_LINEAIRE") - removeMotCleAvecErreur(jdc,"DYNA_NON_LINE","PILOTAGE") - ######################################################################### - - ####################### traitement DYNA_TRAN_EXPLI ###################### - renameOper(jdc,"DYNA_TRAN_EXPLI","DYNA_NON_LINE") - ajouteMotClefDansFacteur(jdc,"DYNA_NON_LINE","TCHAMWA","FORMULATION='ACCELERATION'") - ajouteMotClefDansFacteur(jdc,"DYNA_NON_LINE","DIFF_CENT","FORMULATION='ACCELERATION'") - ######################################################################### - - ####################### traitement SCHEMA_TEMPS dans DYNA_NON_LINE ###################### - ajouteMotClefDansFacteur(jdc,"DYNA_NON_LINE","NEWMARK","FORMULATION='DEPLACEMENT'") - ajouteMotClefDansFacteur(jdc,"DYNA_NON_LINE","HHT","FORMULATION='DEPLACEMENT'") - ajouteMotClefDansFacteur(jdc,"DYNA_NON_LINE","TETA_METHODE","FORMULATION='DEPLACEMENT'") - renameMotCleInFact(jdc,"DYNA_NON_LINE","NEWMARK","ALPHA","BETA",) - renameMotCleInFact(jdc,"DYNA_NON_LINE","NEWMARK","DELTA","GAMMA",) - renameMotCleInFact(jdc,"DYNA_NON_LINE","TETA_METHODE","TETA","THETA",) - ajouteMotClefDansFacteurSiRegle(jdc,"DYNA_NON_LINE","NEWMARK","SCHEMA='NEWMARK'",((("NEWMARK",),"existeMCFParmi"),)) - ajouteMotClefDansFacteurSiRegle(jdc,"DYNA_NON_LINE","TETA_METHODE","SCHEMA='THETA_METHODE'",((("TETA_METHODE",),"existeMCFParmi"),)) - ajouteMotClefDansFacteurSiRegle(jdc,"DYNA_NON_LINE","HHT","SCHEMA='HHT'",((("HHT",),"existeMCFParmi"),)) - ajouteMotClefDansFacteurSiRegle(jdc,"DYNA_NON_LINE","TCHAMWA","SCHEMA='TCHAMWA'",((("TCHAMWA",),"existeMCFParmi"),)) - ajouteMotClefDansFacteurSiRegle(jdc,"DYNA_NON_LINE","DIFF_CENT","SCHEMA='DIFF_CENT'",((("DIFF_CENT",),"existeMCFParmi"),)) - renameMotCle(jdc,"DYNA_NON_LINE","NEWMARK","SCHEMA_TEMPS") - renameMotCle(jdc,"DYNA_NON_LINE","TETA_METHODE","SCHEMA_TEMPS") - renameMotCle(jdc,"DYNA_NON_LINE","HHT","SCHEMA_TEMPS") - renameMotCle(jdc,"DYNA_NON_LINE","DIFF_CENT","SCHEMA_TEMPS") - renameMotCle(jdc,"DYNA_NON_LINE","TCHAMWA","SCHEMA_TEMPS") - removeMotCleInFact(jdc,"DYNA_NON_LINE","INCREMENT","EVOLUTION") - moveMotClefInOperToFact(jdc,"DYNA_NON_LINE","STOP_CFL","SCHEMA_TEMPS") - ######################################################################### - - ####################### traitement CONTACT ###################### - removeMotCleInFact(jdc,"DEFI_MATERIAU","DIS_CONTACT","KT_ULTM") - removeMotCleInFact(jdc,"DEFI_MATERIAU","DIS_CONTACT","EFFO_N_INIT") - removeMotCleInFact(jdc,"DEFI_MATERIAU","DIS_CONTACT","RIGI_N_IRRA") - removeMotCleInFact(jdc,"DEFI_MATERIAU","DIS_CONTACT","RIGI_N_FO") - removeMotCleInFact(jdc,"DEFI_MATERIAU","DIS_CONTACT","RIGI_MZ") - removeMotCleInFact(jdc,"DEFI_MATERIAU","DIS_CONTACT","ANGLE_1") - removeMotCleInFact(jdc,"DEFI_MATERIAU","DIS_CONTACT","ANGLE_2") - removeMotCleInFact(jdc,"DEFI_MATERIAU","DIS_CONTACT","ANGLE_3") - removeMotCleInFact(jdc,"DEFI_MATERIAU","DIS_CONTACT","ANGLE_4") - removeMotCleInFact(jdc,"DEFI_MATERIAU","DIS_CONTACT","MOMENT_1") - removeMotCleInFact(jdc,"DEFI_MATERIAU","DIS_CONTACT","MOMENT_2") - removeMotCleInFact(jdc,"DEFI_MATERIAU","DIS_CONTACT","MOMENT_3") - removeMotCleInFact(jdc,"DEFI_MATERIAU","DIS_CONTACT","MOMENT_4") - removeMotCleInFact(jdc,"DEFI_MATERIAU","DIS_CONTACT","C_PRAGER_MZ") - dDis_Choc={"DIS_CONTACT":"DIS_CHOC"} - changementValeurDsMCF(jdc,"STAT_NON_LINE","COMP_INCR","RELATION",dDis_Choc) - changementValeurDsMCF(jdc,"DYNA_NON_LINE","COMP_INCR","RELATION",dDis_Choc) - renameMotCleInFact(jdc,"STAT_NON_LINE","COMP_INCR","DIS_CONTACT","DIS_CHOC") - renameMotCleInFact(jdc,"DYNA_NON_LINE","COMP_INCR","DIS_CONTACT","DIS_CHOC") - dGrilles={"GRILLE_CRAYONS":"DIS_GRICRA"} - changementValeurDsMCF(jdc,"STAT_NON_LINE","COMP_INCR","RELATION",dGrilles) - changementValeurDsMCF(jdc,"DYNA_NON_LINE","COMP_INCR","RELATION",dGrilles) - - renameCommandeSiRegle(jdc,"AFFE_CHAR_MECA_F","AFFE_CHAR_MECA",((("CONTACT",),"existeMCFParmi"),)) - removeMotCleInFact(jdc,"AFFE_CHAR_MECA","CONTACT","RECHERCHE") - removeMotCleInFact(jdc,"AFFE_CHAR_MECA","CONTACT","PROJECTION") - removeMotCleInFact(jdc,"AFFE_CHAR_MECA","CONTACT","VECT_Y") - removeMotCleInFact(jdc,"AFFE_CHAR_MECA","CONTACT","VECT_ORIE_POU") - removeMotCleInFact(jdc,"AFFE_CHAR_MECA","CONTACT","MODL_AXIS") - dAppariement={"MAIT_ESCL_SYME":"MAIT_ESCL"} - changementValeurDsMCF(jdc,"AFFE_CHAR_MECA","CONTACT","APPARIEMENT",dAppariement) - - ajouteMotClefDansFacteurSiRegle(jdc,"AFFE_CHAR_MECA","CONTACT","TYPE_APPA='FIXE'",((("CONTACT","DIRE_APPA",),"existeMCsousMCF"),)) - ######################################################################### - - ####################### traitement CREA_CHAMP ###################### - chercheOperInsereFacteurSiRegle(jdc,"CREA_CHAMP","PRECISION=1.E-3,", ((("PRECISION",),"nexistepas"),(("CRITERE",),"existe"),),0) - dTypeChamp={"ELEM_ERREUR":"ELEM_ERRE_R"} - changementValeur(jdc,"CREA_CHAMP","TYPE_CHAM",dTypeChamp) - ######################################################################### - - ####################### traitement CALC_NO ###################### - chercheOperInsereFacteurSiRegle(jdc,"CALC_NO","PRECISION=1.E-3,", ((("PRECISION",),"nexistepas"),(("CRITERE",),"existe"),),0) - ######################################################################### - - ######### traitement variables de commandes TEMP_CALCULEE/TEMP_REF ############## - genereErreurMotCleInFact(jdc,"AFFE_MATERIAU","AFFE","TEMP_REF") - ################################################################################ - - ################# traitement LIRE_CHAMP ####################################### -# dTypeChamp={"ELEM_ERREUR":"ELEM_ERRE_R"} - changementValeur(jdc,"LIRE_CHAMP","TYPE_CHAM",dTypeChamp) - ################################################################################ - - - ######### traitement SUIVI_DDL ################################################# -# en pre-traitement il faudrait une methode qui separe tous les mots clefs facteurs en les dupliquant -# par exemple ici mettre autant de mots clefs facteurs SUIVI_DDL qu'il a de _F - ajouteMotClefDansFacteur(jdc,"STAT_NON_LINE","SUIVI_DDL","SUIVI_DDL='OUI'") - renameMotCle(jdc,"STAT_NON_LINE","SUIVI_DDL","OBSERVATION") -# en post-traitement il faudrait une methode qui fusionne tous les mots clefs facteurs en double -# par exemple ici les OBSERVATION - ################################################################################ - - - ######### traitement EVOLUTION in STAT/DYNA_NON_LINE ########################### - removeMotCleInFact(jdc,"STAT_NON_LINE","INCREMENT","EVOLUTION") - removeMotCleInFact(jdc,"DYNA_NON_LINE","INCREMENT","EVOLUTION") - ################################################################################ - - ######### traitement du MODELE GRILLE ############################################## - dGrille={"GRILLE":"GRILLE_EXCENTRE"} - changementValeurDsMCF(jdc,"AFFE_MODELE","AFFE","MODELISATION",dGrille) - ################################################################################ - - ######### traitement de MACR_ASPIC/ASCOUF_CALC GRILLE ########################## - removeMotCle(jdc,"MACR_ASCOUF_CALC","CHARGE") - removeMotCle(jdc,"MACR_ASPIC_CALC","CHARGE") - ################################################################################ - - - ############ suppression de NON_LOCAL ########################################## - removeMotCleAvecErreur(jdc,"STAT_NON_LINE","LAGR_NON_LOCAL") - removeMotCleAvecErreur(jdc,"STAT_NON_LINE","SOLV_NON_LOCAL") - removeMotCleInFact(jdc,"STAT_NON_LINE","ETAT_INIT","VARI_NON_LOCAL",erreur=1) - - removeMotCleAvecErreur(jdc,"DYNA_NON_LINE","LAGR_NON_LOCAL") - removeMotCleAvecErreur(jdc,"DYNA_NON_LINE","SOLV_NON_LOCAL") - removeMotCleInFact(jdc,"DYNA_NON_LINE","ETAT_INIT","VARI_NON_LOCAL",erreur=1) - - removeMotCleAvecErreur(jdc,"CALC_PRECONT","LAGR_NON_LOCAL") - removeMotCleAvecErreur(jdc,"CALC_PRECONT","SOLV_NON_LOCAL") - removeMotCleInFact(jdc,"CALC_PRECONT","ETAT_INIT","VARI_NON_LOCAL",erreur=1) - ################################################################################ - - ######### traitement de LIRE_INTE_SPEC ######################################### - renameMotCle(jdc,"LIRE_INTE_SPEC","FORMAT","FORMAT_C") - ################################################################################ - - ######### traitement de MACR_CARA_POUTRE ###################################### - chercheOperInsereFacteurSiRegle(jdc,"MACR_CARA_POUTRE","FORMAT='ASTER'", ((("UNITE_MAILLAGE",),"existe"),),0) - renameMotCle(jdc,"MACR_CARA_POUTRE","UNITE_MAILLAGE","UNITE") - ################################################################################ - - ######### traitement de MACR_LIGN_COUPE ###################################### -# il y a un probleme s'il y a plusieurs mots clefs facteurs LIGN_COUPE : la regle ne marche qu'une fois par commande - ajouteMotClefDansFacteurSiRegle(jdc,"MACR_LIGN_COUPE","LIGN_COUPE","REPERE='LOCAL'", ((("LIGN_COUPE","VECT_Y",),"existeMCsousMCF"),),0) -# autre probleme : s'il y a plusieurs mots clefs facteurs le traducteur peut, dans l'insertion, se tromper de mot clef facteur - ajouteMotClefDansFacteurSiRegle(jdc,"MACR_LIGN_COUPE","LIGN_COUPE","TYPE='GROUP_NO'", ((("LIGN_COUPE","GROUP_NO",),"existeMCsousMCF"),),0) - ajouteMotClefDansFacteurSiRegle(jdc,"MACR_LIGN_COUPE","LIGN_COUPE","TYPE='GROUP_MA'", ((("LIGN_COUPE","GROUP_MA",),"existeMCsousMCF"),),0) - ################################################################################ - - ####################### traitement DRUCKER_PRAGER ####################### - dPRAGER={"DRUCKER_PRAGER":"DRUCK_PRAGER",} - changementValeurDsMCF(jdc,"STAT_NON_LINE","COMP_INCR","RELATION",dPRAGER) - changementValeurDsMCF(jdc,"DYNA_NON_LINE","COMP_INCR","RELATION",dPRAGER) - changementValeurDsMCF(jdc,"SIMU_POINT_MAT","COMP_INCR","RELATION",dPRAGER) - changementValeurDsMCF(jdc,"CALC_PRECONT","COMP_INCR","RELATION",dPRAGER) - ######################################################################### - - ####################### traitement RELATION_KIT ####################### - dKIT={"ELAS_THER":"ELAS",} - changementValeurDsMCF(jdc,"STAT_NON_LINE","COMP_INCR","RELATION_KIT",dKIT) - changementValeurDsMCF(jdc,"DYNA_NON_LINE","COMP_INCR","RELATION_KIT",dKIT) - changementValeurDsMCF(jdc,"SIMU_POINT_MAT","COMP_INCR","RELATION_KIT",dKIT) - changementValeurDsMCF(jdc,"CALC_PRECONT","COMP_INCR","RELATION_KIT",dKIT) - ######################################################################### - - - f=open(outfile,'w') - f.write(jdc.getSource()) - f.close() - - log.ferme(hdlr) - -def main(): - parser = optparse.Optionparser(usage=usage) - - parser.add_option('-i','--infile', dest="infile", default='toto.comm', - help="Le fichier a traduire") - parser.add_option('-o','--outfile', dest="outfile", default='tutu.comm', - help="Le fichier traduit") - - options, args = parser.parse_args() - traduc(options.infile,options.outfile) - -if __name__ == '__main__': - main() diff --git a/Traducteur/traduitV9V10.py b/Traducteur/traduitV9V10.py deleted file mode 100755 index 11db2ccd..00000000 --- a/Traducteur/traduitV9V10.py +++ /dev/null @@ -1,749 +0,0 @@ -#!/usr/bin/env python -# -*- coding: utf-8 -*- -# Copyright (C) 2007-2017 EDF R&D -# -# 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 -# -""" -""" -usage="""usage: %prog [options] -Typical use is: - python traduitV9V10.py --infile=xxxx --outfile=yyyy -""" - -import log -import optparse -import sys - -from Traducteur.load import getJDC -from Traducteur.mocles import parseKeywords -from Traducteur.removemocle import * -from Traducteur.renamemocle import * -from Traducteur.renamemocle import * -from Traducteur.inseremocle import * -from Traducteur.changeValeur import * -from Traducteur.movemocle import * -from Traducteur.dictErreurs import * -from Traducteur.regles import pasDeRegle - -atraiter=("AFFE_CARA_ELEM","AFFE_CHAR_CINE","AFFE_CHAR_MECA","AFFE_CHAR_MECA_F","AFFE_MATERIAU","AFFE_MODELE", - "CALC_CHAM_ELEM","CALC_ELEM","CALC_G","CALC_META","CALC_MODAL","CALC_PRECONT","CALCUL","CALC_MISS","CALC_NO", - "COMB_FOURIER","COMB_SISM_MODAL","CREA_CHAMP","CREA_RESU", - "DEFI_BASE_MODALE","DEFI_COMPOR","DEFI_CONTACT","DEFI_GLRC","DEFI_LIST_INST","DEFI_MATERIAU", - "DYNA_ISS_VARI","DYNA_LINE_HARM","DYNA_LINE_TRAN","DYNA_NON_LINE","DYNA_TRAN_MODAL", - "EXTR_RESU","IMPR_MACR_ELEM","IMPR_MATRICE","IMPR_RESU","LIRE_RESU", - "MACR_ADAP_MAIL","MACR_ASCOUF_CALC","MACR_ASPIC_CALC","MACR_ECREVISSE", - "MACR_INFO_MAIL","MACR_LIGN_COUPE","MACRO_ELAS_MULT","MACRO_MATR_AJOU","MACRO_MISS_3D", - "MECA_STATIQUE","MODE_ITER_INV","MODE_ITER_SIMULT","MODE_STATIQUE","MODI_REPERE", - "POST_CHAM_XFEM","POST_ELEM","POST_GP","POST_K1_K2_K3","POST_RCCM","POST_RELEVE_T","POST_ZAC", - "PROJ_CHAMP","PROJ_MESU_MODAL","RECU_FONCTION","REST_SOUS_STRUC","REST_GENE_PHYS","REST_SPEC_PHYS", - "STAT_NON_LINE","SIMU_POINT_MAT","TEST_RESU","THER_LINEAIRE","THER_NON_LINE","THER_NON_LINE_MO",) - -dict_erreurs={ -# STA10 -# - "AFFE_CHAR_MECA_CONTACT":"Attention, modification de la definition du CONTACT : nommer DEFI_CONTACT,verifier les parametres globaux et le mettre dans le calcul", - "AFFE_CHAR_MECA_LIAISON_UNILATER":"Attention, modification de la definition du CONTACT : nommer DEFI_CONTACT,verifier les parametres globaux et le mettre dans le calcul", - "AFFE_CHAR_MECA_F_LIAISON_UNILATER":"Attention, modification de la definition du CONTACT : nommer DEFI_CONTACT,verifier les parametres globaux et le mettre dans le calcul", - "AFFE_CHAR_MECA_GRAPPE_FLUIDE":"Resorption de GRAPPE_FLUIDE en version 10", - "DEFI_MATERIAU_LMARC":"Resorption loi LMARC en version 10", - "DEFI_MATERIAU_LMARC_FO":"Resorption loi LMARC en version 10", - "POST_ZAC":"Resorption POST_ZAC en version 10", - "AFFE_CHAR_MECA_ARLEQUIN":"Resorption ARLEQUIN en version 10", - - "PROJ_CHAMP_CHAM_NO":"Attention, verifier pour PROJ_CHAMP la presence de MODELE1/MAILLAGE1 et MODELE2/MAILLAGE2", - - "COMB_SISM_MODAL_COMB_MULT_APPUI":"Attention, verifier GROUP_APPUI pour COMB_SISM_MODAL car on est dans le cas MULTI_APPUI=DECORRELE", - - "CALC_PRECONT_SOLVEUR_PARALLELISME":"Modification du PARALLELISME qui se definit au niveau de AFFE_MODELE ou MODI_MODELE", - "CALC_PRECONT_SOLVEUR_PARTITION":"Modification de PARTITION qui se definit au niveau de AFFE_MODELE ou MODI_MODELE", - "DYNA_LINE_HARM_SOLVEUR_PARALLELISME":"Modification du PARALLELISME qui se definit au niveau de AFFE_MODELE ou MODI_MODELE", - "DYNA_LINE_HARM_SOLVEUR_PARTITION":"Modification de PARTITION qui se definit au niveau de AFFE_MODELE ou MODI_MODELE", - "DYNA_LINE_TRAN_SOLVEUR_PARALLELISME":"Modification du PARALLELISME qui se definit au niveau de AFFE_MODELE ou MODI_MODELE", - "DYNA_LINE_TRAN_SOLVEUR_PARTITION":"Modification de PARTITION qui se definit au niveau de AFFE_MODELE ou MODI_MODELE", - "DYNA_TRAN_MODAL_SOLVEUR_PARALLELISME":"Modification du PARALLELISME qui se definit au niveau de AFFE_MODELE ou MODI_MODELE", - "DYNA_TRAN_MODAL_SOLVEUR_PARTITION":"Modification de PARTITION qui se definit au niveau de AFFE_MODELE ou MODI_MODELE", - "MACR_ASCOUF_CALC_SOLVEUR_PARALLELISME":"Modification du PARALLELISME qui se definit au niveau de AFFE_MODELE ou MODI_MODELE", - "MACR_ASCOUF_CALC_SOLVEUR_PARTITION":"Modification de PARTITION qui se definit au niveau de AFFE_MODELE ou MODI_MODELE", - "MACR_ASPIQ_CALC_SOLVEUR_PARALLELISME":"Modification du PARALLELISME qui se definit au niveau de AFFE_MODELE ou MODI_MODELE", - "MACR_ASPIQ_CALC_SOLVEUR_PARTITION":"Modification de PARTITION qui se definit au niveau de AFFE_MODELE ou MODI_MODELE", - "MACRO_MATR_AJOU_SOLVEUR_PARALLELISME":"Modification du PARALLELISME qui se definit au niveau de AFFE_MODELE ou MODI_MODELE", - "MACRO_MATR_AJOU_SOLVEUR_PARTITION":"Modification de PARTITION qui se definit au niveau de AFFE_MODELE ou MODI_MODELE", - "MECA_STATIQUE_SOLVEUR_PARALLELISME":"Modification du PARALLELISME qui se definit au niveau de AFFE_MODELE ou MODI_MODELE", - "MECA_STATIQUE_SOLVEUR_PARTITION":"Modification de PARTITION qui se definit au niveau de AFFE_MODELE ou MODI_MODELE", - "MODE_STATIQUE_SOLVEUR_PARALLELISME":"Modification du PARALLELISME qui se definit au niveau de AFFE_MODELE ou MODI_MODELE", - "MODE_STATIQUE_SOLVEUR_PARTITION":"Modification de PARTITION qui se definit au niveau de AFFE_MODELE ou MODI_MODELE", - "STAT_NON_LINE_SOLVEUR_PARALLELISME":"Modification du PARALLELISME qui se definit au niveau de AFFE_MODELE ou MODI_MODELE", - "STAT_NON_LINE_SOLVEUR_PARTITION":"Modification de PARTITION qui se definit au niveau de AFFE_MODELE ou MODI_MODELE", - "THER_LINEAIRE_SOLVEUR_PARALLELISME":"Modification du PARALLELISME qui se definit au niveau de AFFE_MODELE ou MODI_MODELE", - "THER_LINEAIRE_SOLVEUR_PARTITION":"Modification de PARTITION qui se definit au niveau de AFFE_MODELE ou MODI_MODELE", - "THER_NON_LINE_SOLVEUR_PARALLELISME":"Modification du PARALLELISME qui se definit au niveau de AFFE_MODELE ou MODI_MODELE", - "THER_NON_LINE_SOLVEUR_PARTITION":"Modification de PARTITION qui se definit au niveau de AFFE_MODELE ou MODI_MODELE", - "DYNA_NON_LINE_SOLVEUR_PARALLELISME":"Modification du PARALLELISME qui se definit au niveau de AFFE_MODELE ou MODI_MODELE", - "DYNA_NON_LINE_SOLVEUR_PARTITION":"Modification de PARTITION qui se definit au niveau de AFFE_MODELE ou MODI_MODELE", - - "STAT_NON_LINE_INCREMENT":"Attention, modification de la subdivision des pas : nommer DEFI_LIST_INST et verifier son appel dans STAT_NON_LINE", - "CALC_PRECONT_INCREMENT":"Attention, modification de la subdivision des pas : nommer DEFI_LIST_INST et verifier son appel dans CALC_PRECONT", - "DYNA_NON_LINE_INCREMENT":"Attention, modification de la subdivision des pas : nommer DEFI_LIST_INST et verifier son appel dans DYNA_NON_LINE", - "MACR_ASCOUF_CALC_INCREMENT":"Attention, modification de la subdivision des pas : nommer DEFI_LIST_INST et verifier son appel dans MACR_ASCOUF_CALC", - "MACR_ASPIQ_CALC_INCREMENT":"Attention, modification de la subdivision des pas : nommer DEFI_LIST_INST et verifier son appel dans MACR_ASPIQ_CALC", - "SIMU_POINT_MAT_INCREMENT":"Attention, modification de la subdivision des pas : nommer DEFI_LIST_INST et verifier son appel dans SIMU_POINT_MAT", - - "CALC_ELEM_SENSIBILITE":"Le post-traitement SENSIBILITE est a supprimer de CALC_ELEM et a faire via CALC_SENSI", - - "CALC_MISS_OPTION":"Attention, transfert MACRO_MISS_3D en CALC_MISS : utiliser un DEFI_SOL_MISS pour obtenir TABLE_SOL", - } - -sys.dict_erreurs=dict_erreurs - -def traduc(infile,outfile,flog=None): - - hdlr=log.initialise(flog) - jdc=getJDC(infile,atraiter) - root=jdc.root - - #Parse les mocles des commandes - parseKeywords(root) - - ####################### initialisation et traitement des erreurs ######################### - - - #####RESORPTION - - genereErreurPourCommande(jdc,("POST_ZAC",)) - genereErreurMCF(jdc,"AFFE_CHAR_MECA","GRAPPE_FLUIDE") - genereErreurMCF(jdc,"DEFI_MATERIAU","LMARC") - genereErreurMCF(jdc,"DEFI_MATERIAU","LMARC_FO") - genereErreurMCF(jdc,"AFFE_CHAR_MECA","ARLEQUIN") - - - #####SOLVEUR - - ####################### traitement MUMPS/PARALELLISME-PARTITION ################## - #commandes concernes en plus : CALC_FORC_AJOU?,CALC_MATR_AJOU? - # */SOLVEUR/CHARGE_PROCO_MA(SD)--> AFFE_MODELE (ou MODI_MODELE)/PARTITION/. - # */SOLVEUR/PARALLELISME =CENTRALISE--> AFFE_MODELE (ou MODI_MODELE)/PARTITION/PARALLELISME = CENTRALISE - # */SOLVEUR/PARALLELISME = "DISTRIBUE_MC/MD/SD"--> AFFE_MODELE/PARTITION/PARALLELISME = "MAIL_CONTIGU/MAIL_DISPERSE/SOUS_DOMAINE" - # */SOLVEUR/PARTITION --> AFFE_MODELE (ou MODI_MODELE)/PARTITION/PARTITION - - - genereErreurMotCleInFact(jdc,"CALC_PRECONT","SOLVEUR","PARALLELISME") - genereErreurMotCleInFact(jdc,"CALC_PRECONT","SOLVEUR","PARTITION") - genereErreurMotCleInFact(jdc,"DYNA_LINE_HARM","SOLVEUR","PARALLELISME") - genereErreurMotCleInFact(jdc,"DYNA_LINE_HARM","SOLVEUR","PARTITION") - genereErreurMotCleInFact(jdc,"DYNA_LINE_TRAN","SOLVEUR","PARALLELISME") - genereErreurMotCleInFact(jdc,"DYNA_LINE_TRAN","SOLVEUR","PARTITION") - genereErreurMotCleInFact(jdc,"DYNA_TRAN_MODAL","SOLVEUR","PARALLELISME") - genereErreurMotCleInFact(jdc,"DYNA_TRAN_MODAL","SOLVEUR","PARTITION") - genereErreurMotCleInFact(jdc,"MACR_ASCOUF_CALC","SOLVEUR","PARALLELISME") - genereErreurMotCleInFact(jdc,"MACR_ASCOUF_CALC","SOLVEUR","PARTITION") - genereErreurMotCleInFact(jdc,"MACR_ASPIQ_CALC","SOLVEUR","PARALLELISME") - genereErreurMotCleInFact(jdc,"MACR_ASPIQ_CALC","SOLVEUR","PARTITION") - genereErreurMotCleInFact(jdc,"MACRO_MATR_AJOU","SOLVEUR","PARALLELISME") - genereErreurMotCleInFact(jdc,"MACRO_MATR_AJOU","SOLVEUR","PARTITION") - genereErreurMotCleInFact(jdc,"MECA_STATIQUE","SOLVEUR","PARALLELISME") - genereErreurMotCleInFact(jdc,"MECA_STATIQUE","SOLVEUR","PARTITION") - genereErreurMotCleInFact(jdc,"MODE_STATIQUE","SOLVEUR","PARALLELISME") - genereErreurMotCleInFact(jdc,"MODE_STATIQUE","SOLVEUR","PARTITION") - genereErreurMotCleInFact(jdc,"STAT_NON_LINE","SOLVEUR","PARALLELISME") - genereErreurMotCleInFact(jdc,"STAT_NON_LINE","SOLVEUR","PARTITION") - genereErreurMotCleInFact(jdc,"THER_LINEAIRE","SOLVEUR","PARALLELISME") - genereErreurMotCleInFact(jdc,"THER_LINEAIRE","SOLVEUR","PARTITION") - genereErreurMotCleInFact(jdc,"THER_NON_LINE","SOLVEUR","PARALLELISME") - genereErreurMotCleInFact(jdc,"THER_NON_LINE","SOLVEUR","PARTITION") - genereErreurMotCleInFact(jdc,"THER_NON_LINE_MO","SOLVEUR","PARALLELISME") - genereErreurMotCleInFact(jdc,"THER_NON_LINE_MO","SOLVEUR","PARTITION") - genereErreurMotCleInFact(jdc,"DYNA_NON_LINE","SOLVEUR","PARALLELISME") - genereErreurMotCleInFact(jdc,"DYNA_NON_LINE","SOLVEUR","PARTITION") - - ####################### traitement mot cle INCREMENT redecoupage en temps ####################### - renameMotCleSiRegle(jdc,"STAT_NON_LINE","INCREMENT","INCREMENT_NEW",((("INCREMENT","SUBD_METHODE"),"existeMCsousMCF"),),1) - moveMCFToCommand(jdc,"STAT_NON_LINE","INCREMENT_NEW","DEFI_LIST_INST","ECHEC") - removeMotCleInFact(jdc,"STAT_NON_LINE","INCREMENT_NEW","SUBD_COEF_PAS_1",pasDeRegle(),0) - removeMotCleInFact(jdc,"STAT_NON_LINE","INCREMENT_NEW","SUBD_ITER_FIN",pasDeRegle(),0) - removeMotCleInFact(jdc,"STAT_NON_LINE","INCREMENT_NEW","SUBD_ITER_IGNO",pasDeRegle(),0) - removeMotCleInFact(jdc,"STAT_NON_LINE","INCREMENT_NEW","SUBD_ITER_PLUS",pasDeRegle(),0) - removeMotCleInFact(jdc,"STAT_NON_LINE","INCREMENT_NEW","SUBD_METHODE",pasDeRegle(),0) - removeMotCleInFact(jdc,"STAT_NON_LINE","INCREMENT_NEW","SUBD_NIVEAU",pasDeRegle(),0) - removeMotCleInFact(jdc,"STAT_NON_LINE","INCREMENT_NEW","SUBD_OPTION",pasDeRegle(),0) - removeMotCleInFact(jdc,"STAT_NON_LINE","INCREMENT_NEW","SUBD_PAS",pasDeRegle(),0) - removeMotCleInFact(jdc,"STAT_NON_LINE","INCREMENT_NEW","SUBD_PAS_MINI",pasDeRegle(),0) - renameMotCle(jdc,"STAT_NON_LINE","INCREMENT_NEW","INCREMENT") - - renameMotCleSiRegle(jdc,"CALC_PRECONT","INCREMENT","INCREMENT_NEW",((("INCREMENT","SUBD_METHODE"),"existeMCsousMCF"),),1) - moveMCFToCommand(jdc,"CALC_PRECONT","INCREMENT_NEW","DEFI_LIST_INST","ECHEC") - removeMotCleInFact(jdc,"CALC_PRECONT","INCREMENT_NEW","SUBD_COEF_PAS_1",pasDeRegle(),0) - removeMotCleInFact(jdc,"CALC_PRECONT","INCREMENT_NEW","SUBD_ITER_FIN",pasDeRegle(),0) - removeMotCleInFact(jdc,"CALC_PRECONT","INCREMENT_NEW","SUBD_ITER_IGNO",pasDeRegle(),0) - removeMotCleInFact(jdc,"CALC_PRECONT","INCREMENT_NEW","SUBD_ITER_PLUS",pasDeRegle(),0) - removeMotCleInFact(jdc,"CALC_PRECONT","INCREMENT_NEW","SUBD_METHODE",pasDeRegle(),0) - removeMotCleInFact(jdc,"CALC_PRECONT","INCREMENT_NEW","SUBD_NIVEAU",pasDeRegle(),0) - removeMotCleInFact(jdc,"CALC_PRECONT","INCREMENT_NEW","SUBD_OPTION",pasDeRegle(),0) - removeMotCleInFact(jdc,"CALC_PRECONT","INCREMENT_NEW","SUBD_PAS",pasDeRegle(),0) - removeMotCleInFact(jdc,"CALC_PRECONT","INCREMENT_NEW","SUBD_PAS_MINI",pasDeRegle(),0) - renameMotCle(jdc,"CALC_PRECONT","INCREMENT_NEW","INCREMENT") - - - renameMotCleSiRegle(jdc,"DYNA_NON_LINE","INCREMENT","INCREMENT_NEW",((("INCREMENT","SUBD_METHODE"),"existeMCsousMCF"),),1) - moveMCFToCommand(jdc,"DYNA_NON_LINE","INCREMENT_NEW","DEFI_LIST_INST","ECHEC") - removeMotCleInFact(jdc,"DYNA_NON_LINE","INCREMENT_NEW","SUBD_COEF_PAS_1",pasDeRegle(),0) - removeMotCleInFact(jdc,"DYNA_NON_LINE","INCREMENT_NEW","SUBD_ITER_FIN",pasDeRegle(),0) - removeMotCleInFact(jdc,"DYNA_NON_LINE","INCREMENT_NEW","SUBD_ITER_IGNO",pasDeRegle(),0) - removeMotCleInFact(jdc,"DYNA_NON_LINE","INCREMENT_NEW","SUBD_ITER_PLUS",pasDeRegle(),0) - removeMotCleInFact(jdc,"DYNA_NON_LINE","INCREMENT_NEW","SUBD_METHODE",pasDeRegle(),0) - removeMotCleInFact(jdc,"DYNA_NON_LINE","INCREMENT_NEW","SUBD_NIVEAU",pasDeRegle(),0) - removeMotCleInFact(jdc,"DYNA_NON_LINE","INCREMENT_NEW","SUBD_OPTION",pasDeRegle(),0) - removeMotCleInFact(jdc,"DYNA_NON_LINE","INCREMENT_NEW","SUBD_PAS",pasDeRegle(),0) - removeMotCleInFact(jdc,"DYNA_NON_LINE","INCREMENT_NEW","SUBD_PAS_MINI",pasDeRegle(),0) - renameMotCle(jdc,"DYNA_NON_LINE","INCREMENT_NEW","INCREMENT") - - renameMotCleSiRegle(jdc,"MACR_ASCOUF_CALC","INCREMENT","INCREMENT_NEW",((("INCREMENT","SUBD_METHODE"),"existeMCsousMCF"),),1) - moveMCFToCommand(jdc,"MACR_ASCOUF_CALC","INCREMENT_NEW","DEFI_LIST_INST","ECHEC") - removeMotCleInFact(jdc,"MACR_ASCOUF_CALC","INCREMENT_NEW","SUBD_COEF_PAS_1",pasDeRegle(),0) - removeMotCleInFact(jdc,"MACR_ASCOUF_CALC","INCREMENT_NEW","SUBD_ITER_FIN",pasDeRegle(),0) - removeMotCleInFact(jdc,"MACR_ASCOUF_CALC","INCREMENT_NEW","SUBD_ITER_IGNO",pasDeRegle(),0) - removeMotCleInFact(jdc,"MACR_ASCOUF_CALC","INCREMENT_NEW","SUBD_ITER_PLUS",pasDeRegle(),0) - removeMotCleInFact(jdc,"MACR_ASCOUF_CALC","INCREMENT_NEW","SUBD_METHODE",pasDeRegle(),0) - removeMotCleInFact(jdc,"MACR_ASCOUF_CALC","INCREMENT_NEW","SUBD_NIVEAU",pasDeRegle(),0) - removeMotCleInFact(jdc,"MACR_ASCOUF_CALC","INCREMENT_NEW","SUBD_OPTION",pasDeRegle(),0) - removeMotCleInFact(jdc,"MACR_ASCOUF_CALC","INCREMENT_NEW","SUBD_PAS",pasDeRegle(),0) - removeMotCleInFact(jdc,"MACR_ASCOUF_CALC","INCREMENT_NEW","SUBD_PAS_MINI",pasDeRegle(),0) - renameMotCle(jdc,"MACR_ASCOUF_CALC","INCREMENT_NEW","INCREMENT") - - renameMotCleSiRegle(jdc,"MACR_ASPIQ_CALC","INCREMENT","INCREMENT_NEW",((("INCREMENT","SUBD_METHODE"),"existeMCsousMCF"),),1) - moveMCFToCommand(jdc,"MACR_ASPIQ_CALC","INCREMENT_NEW","DEFI_LIST_INST","ECHEC") - removeMotCleInFact(jdc,"MACR_ASPIQ_CALC","INCREMENT_NEW","SUBD_COEF_PAS_1",pasDeRegle(),0) - removeMotCleInFact(jdc,"MACR_ASPIQ_CALC","INCREMENT_NEW","SUBD_ITER_FIN",pasDeRegle(),0) - removeMotCleInFact(jdc,"MACR_ASPIQ_CALC","INCREMENT_NEW","SUBD_ITER_IGNO",pasDeRegle(),0) - removeMotCleInFact(jdc,"MACR_ASPIQ_CALC","INCREMENT_NEW","SUBD_ITER_PLUS",pasDeRegle(),0) - removeMotCleInFact(jdc,"MACR_ASPIQ_CALC","INCREMENT_NEW","SUBD_METHODE",pasDeRegle(),0) - removeMotCleInFact(jdc,"MACR_ASPIQ_CALC","INCREMENT_NEW","SUBD_NIVEAU",pasDeRegle(),0) - removeMotCleInFact(jdc,"MACR_ASPIQ_CALC","INCREMENT_NEW","SUBD_OPTION",pasDeRegle(),0) - removeMotCleInFact(jdc,"MACR_ASPIQ_CALC","INCREMENT_NEW","SUBD_PAS",pasDeRegle(),0) - removeMotCleInFact(jdc,"MACR_ASPIQ_CALC","INCREMENT_NEW","SUBD_PAS_MINI",pasDeRegle(),0) - renameMotCle(jdc,"MACR_ASPIQ_CALC","INCREMENT_NEW","INCREMENT") - - renameMotCleSiRegle(jdc,"SIMU_POINT_MAT","INCREMENT","INCREMENT_NEW",((("INCREMENT","SUBD_METHODE"),"existeMCsousMCF"),),1) - moveMCFToCommand(jdc,"SIMU_POINT_MAT","INCREMENT_NEW","DEFI_LIST_INST","ECHEC") - removeMotCleInFact(jdc,"SIMU_POINT_MAT","INCREMENT_NEW","SUBD_COEF_PAS_1",pasDeRegle(),0) - removeMotCleInFact(jdc,"SIMU_POINT_MAT","INCREMENT_NEW","SUBD_ITER_FIN",pasDeRegle(),0) - removeMotCleInFact(jdc,"SIMU_POINT_MAT","INCREMENT_NEW","SUBD_ITER_IGNO",pasDeRegle(),0) - removeMotCleInFact(jdc,"SIMU_POINT_MAT","INCREMENT_NEW","SUBD_ITER_PLUS",pasDeRegle(),0) - removeMotCleInFact(jdc,"SIMU_POINT_MAT","INCREMENT_NEW","SUBD_METHODE",pasDeRegle(),0) - removeMotCleInFact(jdc,"SIMU_POINT_MAT","INCREMENT_NEW","SUBD_NIVEAU",pasDeRegle(),0) - removeMotCleInFact(jdc,"SIMU_POINT_MAT","INCREMENT_NEW","SUBD_OPTION",pasDeRegle(),0) - removeMotCleInFact(jdc,"SIMU_POINT_MAT","INCREMENT_NEW","SUBD_PAS",pasDeRegle(),0) - removeMotCleInFact(jdc,"SIMU_POINT_MAT","INCREMENT_NEW","SUBD_PAS_MINI",pasDeRegle(),0) - renameMotCle(jdc,"SIMU_POINT_MAT","INCREMENT_NEW","INCREMENT") - - removeMotCleInFact(jdc,"DEFI_LIST_INST","ECHEC","INST_INIT") - removeMotCleInFact(jdc,"DEFI_LIST_INST","ECHEC","INST_FIN") - removeMotCleInFact(jdc,"DEFI_LIST_INST","ECHEC","NUME_INST_FIN") - removeMotCleInFact(jdc,"DEFI_LIST_INST","ECHEC","NUME_INST_INIT") - removeMotCleInFact(jdc,"DEFI_LIST_INST","ECHEC","PRECISION") - chercheOperInsereFacteur(jdc,"DEFI_LIST_INST","DEFI_LIST",pasDeRegle(),1) - moveMotCleFromFactToFact(jdc,"DEFI_LIST_INST","ECHEC","LIST_INST","DEFI_LIST") - removeMotCleInFact(jdc,"DEFI_LIST_INST","ECHEC","LIST_INST") - - ###################### traitement de NPREC_SOLVEUR ########## - removeMotCleInFact(jdc,"MODE_ITER_SIMULT","CALC_FREQ","NPREC_SOLVEUR",pasDeRegle(),0) - removeMotCleInFact(jdc,"MODE_ITER_INV","CALC_FREQ","NPREC_SOLVEUR",pasDeRegle(),0) - removeMotCleInFact(jdc,"CALC_MODAL","CALC_FREQ","NPREC_SOLVEUR",pasDeRegle(),0) - removeMotCle(jdc,"IMPR_STURM","NPREC_SOLVEUR") - removeMotCleInFact(jdc,"MACRO_MATR_AJOU","CALC_FREQ","NPREC_SOLVEUR",pasDeRegle(),0) - - ###################### traitement CALC_MODAL SOLVEUR ############ - removeMotCle(jdc,"CALC_MODAL","SOLVEUR",pasDeRegle()) - - ##################### traitement DYNA_TRAN-MODAL ADAPT ################# - changementValeur(jdc,"DYNA_TRAN_MODAL","METHODE",{"ADAPT":"ADAPT_ORDRE2"}) - - #################### traitement STAT/DYNA_NON_LINE OBSERVATION SUIVI_DDL=NON ########### - removeMotCleInFactCourantSiRegle(jdc,"STAT_NON_LINE","OBSERVATION","SUIVI_DDL",((("SUIVI_DDL","NON",jdc),"MCsousMCFcourantaPourValeur"),)) - removeMotCleInFactCourantSiRegle(jdc,"DYNA_NON_LINE","OBSERVATION","SUIVI_DDL",((("SUIVI_DDL","NON",jdc),"MCsousMCFcourantaPourValeur"),)) - - ################### traitement STAT/DYNA_NON_LINE ARCH_ETAT_INIT ########### - removeMotCleInFact(jdc,"STAT_NON_LINE","ARCHIVAGE","ARCH_ETAT_INIT",pasDeRegle(),0) - removeMotCleInFact(jdc,"SIMU_POINT_MAT","ARCHIVAGE","ARCH_ETAT_INIT",pasDeRegle(),0) - removeMotCleInFact(jdc,"DYNA_NON_LINE","ARCHIVAGE","ARCH_ETAT_INIT",pasDeRegle(),0) - - ################### traitement STAT/DYNA_NON_LINE CRIT_FLAMB ############### - removeMotCleInFactCourantSiRegle(jdc,"STAT_NON_LINE","CRIT_FLAMB","INST_CALCUL",((("INST_CALCUL","TOUT_PAS",jdc),"MCsousMCFcourantaPourValeur"),)) - removeMotCleInFactCourantSiRegle(jdc,"DYNA_NON_LINE","CRIT_FLAMB","INST_CALCUL",((("INST_CALCUL","TOUT_PAS",jdc),"MCsousMCFcourantaPourValeur"),)) - - #####COMPORTEMENT/CARA - - ################### traitement AFFE_MODELE/SHB8 ########################## - changementValeurDsMCF(jdc,"AFFE_MODELE","AFFE","MODELISATION",{"SHB8":"SHB"}) - - ################### traitement COMP_ELAS et COMP_INCR DEFORMATION = GREEN ##############" - dGREEN={"GREEN_GR":"GROT_GDEP","GREEN":"GROT_GDEP","REAC_GEOM":"GROT_GDEP","EULER_ALMANSI":"GROT_GDEP","COROTATIONNEL":"GDEF_HYPO_ELAS"} - changementValeurDsMCF(jdc,"SIMU_POINT_MAT","COMP_ELAS","DEFORMATION",dGREEN) - changementValeurDsMCF(jdc,"STAT_NON_LINE","COMP_ELAS","DEFORMATION",dGREEN) - changementValeurDsMCF(jdc,"DYNA_NON_LINE","COMP_ELAS","DEFORMATION",dGREEN) - changementValeurDsMCF(jdc,"CALCUL","COMP_ELAS","DEFORMATION",dGREEN) - changementValeurDsMCF(jdc,"POST_GP","COMP_ELAS","DEFORMATION",dGREEN) - changementValeurDsMCF(jdc,"CALC_G","COMP_ELAS","DEFORMATION",dGREEN) - changementValeurDsMCF(jdc,"SIMU_POINT_MAT","COMP_INCR","DEFORMATION",dGREEN) - changementValeurDsMCF(jdc,"STAT_NON_LINE","COMP_INCR","DEFORMATION",dGREEN) - changementValeurDsMCF(jdc,"DYNA_NON_LINE","COMP_INCR","DEFORMATION",dGREEN) - changementValeurDsMCF(jdc,"CALCUL","COMP_INCR","DEFORMATION",dGREEN) - changementValeurDsMCF(jdc,"CALC_PRECONT","COMP_INCR","DEFORMATION",dGREEN) - changementValeurDsMCF(jdc,"CALC_NO","COMP_INCR","DEFORMATION",dGREEN) - changementValeurDsMCF(jdc,"LIRE_RESU","COMP_INCR","DEFORMATION",dGREEN) - changementValeurDsMCF(jdc,"MACR_ECREVISSE","COMP_INCR","DEFORMATION",dGREEN) - - ###################### traitement COMP_INCR/COMP_ELAS RESO_INTE ########## - dALGOI={"RUNGE_KUTTA_2":"RUNGE_KUTTA","RUNGE_KUTTA_4":"RUNGE_KUTTA"} - removeMotCleInFactCourantSiRegle(jdc,"STAT_NON_LINE","COMP_ELAS","RESO_INTE",((("RESO_INTE","IMPLICITE",jdc),"MCsousMCFcourantaPourValeur"),)) - removeMotCleInFactCourantSiRegle(jdc,"STAT_NON_LINE","COMP_INCR","RESO_INTE",((("RESO_INTE","IMPLICITE",jdc),"MCsousMCFcourantaPourValeur"),)) - removeMotCleInFactCourantSiRegle(jdc,"DYNA_NON_LINE","COMP_ELAS","RESO_INTE",((("RESO_INTE","IMPLICITE",jdc),"MCsousMCFcourantaPourValeur"),)) - removeMotCleInFactCourantSiRegle(jdc,"DYNA_NON_LINE","COMP_INCR","RESO_INTE",((("RESO_INTE","IMPLICITE",jdc),"MCsousMCFcourantaPourValeur"),)) - removeMotCleInFactCourantSiRegle(jdc,"CALCUL","COMP_ELAS","RESO_INTE",((("RESO_INTE","IMPLICITE",jdc),"MCsousMCFcourantaPourValeur"),)) - removeMotCleInFactCourantSiRegle(jdc,"CALCUL","COMP_INCR","RESO_INTE",((("RESO_INTE","IMPLICITE",jdc),"MCsousMCFcourantaPourValeur"),)) - removeMotCleInFactCourantSiRegle(jdc,"MACR_ASCOUF_CALC","COMP_ELAS","RESO_INTE",((("RESO_INTE","IMPLICITE",jdc),"MCsousMCFcourantaPourValeur"),)) - removeMotCleInFactCourantSiRegle(jdc,"MACR_ASCOUF_CALC","COMP_INCR","RESO_INTE",((("RESO_INTE","IMPLICITE",jdc),"MCsousMCFcourantaPourValeur"),)) - removeMotCleInFactCourantSiRegle(jdc,"MACR_ASPIQ_CALC","COMP_ELAS","RESO_INTE",((("RESO_INTE","IMPLICITE",jdc),"MCsousMCFcourantaPourValeur"),)) - removeMotCleInFactCourantSiRegle(jdc,"MACR_ASPIQ_CALC","COMP_INCR","RESO_INTE",((("RESO_INTE","IMPLICITE",jdc),"MCsousMCFcourantaPourValeur"),)) - removeMotCleInFactCourantSiRegle(jdc,"SIMU_POINT_MAT","COMP_INCR","RESO_INTE",((("RESO_INTE","IMPLICITE",jdc),"MCsousMCFcourantaPourValeur"),)) - removeMotCleInFactCourantSiRegle(jdc,"CALC_PRE_CONT","COMP_INCR","RESO_INTE",((("RESO_INTE","IMPLICITE",jdc),"MCsousMCFcourantaPourValeur"),)) - removeMotCleInFactCourantSiRegle(jdc,"CALC_NO","COMP_INCR","RESO_INTE",((("RESO_INTE","IMPLICITE",jdc),"MCsousMCFcourantaPourValeur"),)) - removeMotCleInFactCourantSiRegle(jdc,"LIRE_RESU","COMP_INCR","RESO_INTE",((("RESO_INTE","IMPLICITE",jdc),"MCsousMCFcourantaPourValeur"),)) - removeMotCleInFactCourantSiRegle(jdc,"MACR_ECREVISSE","COMP_INCR","RESO_INTE",((("RESO_INTE","IMPLICITE",jdc),"MCsousMCFcourantaPourValeur"),)) - - changementValeurDsMCF(jdc,"STAT_NON_LINE","COMP_ELAS","RESO_INTE",dALGOI) - changementValeurDsMCF(jdc,"STAT_NON_LINE","COMP_INCR","RESO_INTE",dALGOI) - changementValeurDsMCF(jdc,"DYNA_NON_LINE","COMP_ELAS","RESO_INTE",dALGOI) - changementValeurDsMCF(jdc,"DYNA_NON_LINE","COMP_INCR","RESO_INTE",dALGOI) - changementValeurDsMCF(jdc,"CALCUL","COMP_ELAS","RESO_INTE",dALGOI) - changementValeurDsMCF(jdc,"CALCUL","COMP_INCR","RESO_INTE",dALGOI) - changementValeurDsMCF(jdc,"MACR_ASCOUF_CALC","COMP_ELAS","RESO_INTE",dALGOI) - changementValeurDsMCF(jdc,"MACR_ASCOUF_CALC","COMP_INCR","RESO_INTE",dALGOI) - changementValeurDsMCF(jdc,"MACR_ASPIQF_CALC","COMP_ELAS","RESO_INTE",dALGOI) - changementValeurDsMCF(jdc,"MACR_ASPIQ_CALC","COMP_INCR","RESO_INTE",dALGOI) - changementValeurDsMCF(jdc,"SIMU_POINT_MAT","COMP_INCR","RESO_INTE",dALGOI) - changementValeurDsMCF(jdc,"CALC_PRECONT","COMP_INCR","RESO_INTE",dALGOI) - changementValeurDsMCF(jdc,"CALC_NO","COMP_INCR","RESO_INTE",dALGOI) - changementValeurDsMCF(jdc,"LIRE_RESU","COMP_INCR","RESO_INTE",dALGOI) - changementValeurDsMCF(jdc,"MACR_ECREVISSE","COMP_INCR","RESO_INTE",dALGOI) - - renameMotCleInFact(jdc,"STAT_NON_LINE","COMP_ELAS","RESO_INTE","ALGO_INTE") - renameMotCleInFact(jdc,"STAT_NON_LINE","COMP_INCR","RESO_INTE","ALGO_INTE") - renameMotCleInFact(jdc,"DYNA_NON_LINE","COMP_ELAS","RESO_INTE","ALGO_INTE") - renameMotCleInFact(jdc,"DYNA_NON_LINE","COMP_INCR","RESO_INTE","ALGO_INTE") - renameMotCleInFact(jdc,"CALCUL","COMP_ELAS","RESO_INTE","ALGO_INTE") - renameMotCleInFact(jdc,"CALCUL","COMP_INCR","RESO_INTE","ALGO_INTE") - renameMotCleInFact(jdc,"MACR_ASCOUF_CALC","COMP_ELAS","RESO_INTE","ALGO_INTE") - renameMotCleInFact(jdc,"MACR_ASCOUF_CALC","COMP_INCR","RESO_INTE","ALGO_INTE") - renameMotCleInFact(jdc,"MACR_ASPIQF_CALC","COMP_ELAS","RESO_INTE","ALGO_INTE") - renameMotCleInFact(jdc,"MACR_ASPIQ_CALC","COMP_INCR","RESO_INTE","ALGO_INTE") - renameMotCleInFact(jdc,"SIMU_POINT_MAT","COMP_INCR","RESO_INTE","ALGO_INTE") - renameMotCleInFact(jdc,"CALC_PRECONT","COMP_INCR","RESO_INTE","ALGO_INTE") - renameMotCleInFact(jdc,"CALC_NO","COMP_INCR","RESO_INTE","ALGO_INTE") - renameMotCleInFact(jdc,"LIRE_RESU","COMP_INCR","RESO_INTE","ALGO_INTE") - renameMotCleInFact(jdc,"MACR_ECREVISSE","COMP_INCR","RESO_INTE","ALGO_INTE") - - ###################### traitement COMP_ELAS/ITER_INTE_PAS ###### - removeMotCleInFact(jdc,"CALCUL","COMP_ELAS","ITER_INTE_PAS",pasDeRegle(),0) - removeMotCleInFact(jdc,"DYNA_NON_LINE","COMP_ELAS","ITER_INTE_PAS",pasDeRegle(),0) - removeMotCleInFact(jdc,"STAT_NON_LINE","COMP_ELAS","ITER_INTE_PAS",pasDeRegle(),0) - - ###################### traitement CALC_G/COMP_INCR/RELATION ELAS_VMIS_PUIS #### - changementValeurDsMCF(jdc,"CALC_G","COMP_INCR","RELATION",{"ELAS_VMIS_PUIS":"VMIS_ISOT_PUIS"}) - - ########################" traitement DEFI_COMPOR/MULTIFIBRE/DEFORMATION=REAC_GEOM ######### - changementValeurDsMCF(jdc,"DEFI_COMPOR","MULTIFIBRE","DEFORMATION",dGREEN) - - ####################### traitement DEFI_COMPOR/MONOCRISTAL/ECOULEMENT ############# - dECOULEMENT={"ECOU_VISC1":"MONO_VISC1","ECOU_VISC2":"MONO_VISC2","ECOU_VISC3":"MONO_VISC3","KOCKS_RAUCH":"MONO_DD_KR"} - changementValeurDsMCF(jdc,"DEFI_COMPOR","MONOCRISTAL","ECOULEMENT",dECOULEMENT) - dISOT={"ECRO_ISOT1":"MONO_ISOT1","ECRO_ISOT2":"MONO_ISOT2"} - dCINE={"ECRO_CINE1":"MONO_CINE1","ECRO_CINE2":"MONO_CINE2"} - changementValeurDsMCF(jdc,"DEFI_COMPOR","MONOCRISTAL","ECRO_ISOT",dISOT) - changementValeurDsMCF(jdc,"DEFI_COMPOR","MONOCRISTAL","ECRO_CINE",dCINE) - - ################### traitement DEFI_MATERIAU monocristallin ####### - renameMotCle(jdc,"DEFI_MATERIAU","ECOU_VISC1","MONO_VISC1") - renameMotCle(jdc,"DEFI_MATERIAU","ECOU_VISC2","MONO_VISC2") - renameMotCle(jdc,"DEFI_MATERIAU","ECOU_VISC3","MONO_VISC3") - renameMotCle(jdc,"DEFI_MATERIAU","ECRO_CINE1","MONO_CINE1") - renameMotCle(jdc,"DEFI_MATERIAU","ECRO_CINE2","MONO_CINE2") - renameMotCle(jdc,"DEFI_MATERIAU","ECRO_ISOT1","MONO_ISOT1") - renameMotCle(jdc,"DEFI_MATERIAU","ECRO_ISOT2","MONO_ISOT2") - renameMotCle(jdc,"DEFI_MATERIAU","KOCKS_RAUCH","MONO_DD_KR") - - ################ traitement DEFI_MATERIAU/THER_HYDR ####### - removeMotCleInFact(jdc,"DEFI_MATERIAU","THER_HYDR","QSR_K") - - ##################### traitement AFFE_CARA_ELEM/DISCRET ###############" - dDISCRET={"K_T_N_NS":"K_T_N", "K_T_L_NS":"K_T_L", "K_TR_N_NS":"K_TR_N", "K_TR_L_NS":"K_TR_L", - "M_T_N_NS":"M_T_N", "M_T_L_NS":"M_T_L", "M_TR_N_NS":"M_TR_N", "M_TR_L_NS":"M_TR_L", - "A_T_N_NS":"A_T_N", "A_T_L_NS":"A_T_L", "A_TR_N_NS":"A_TR_N", "A_TR_L_NS":"A_TR_L"} - dlist_DISCRET=["K_T_N_NS","K_T_L_NS", "K_TR_N_NS","K_TR_L_NS","M_T_N_NS","M_T_L_NS","M_TR_N_NS","M_TR_L_NS","A_T_N_NS","A_T_L_NS","A_TR_N_NS","A_TR_L_NS"] - - removeMotCleInFact(jdc,"AFFE_CARA_ELEM","DISCRET_2D","SYME") - removeMotCleInFact(jdc,"AFFE_CARA_ELEM","DISCRET","SYME") - ajouteMotClefDansFacteurCourantSiRegle(jdc,"AFFE_CARA_ELEM","DISCRET","SYME='NON'",((("CARA",dlist_DISCRET,jdc),"MCsousMCFcourantaPourValeurDansListe"),)) - ajouteMotClefDansFacteurCourantSiRegle(jdc,"AFFE_CARA_ELEM","DISCRET_2D","SYME='NON'",((("CARA",dlist_DISCRET,jdc),"MCsousMCFcourantaPourValeurDansListe"),)) - changementValeurDsMCF(jdc,"AFFE_CARA_ELEM","DISCRET_2D","CARA",dDISCRET) - changementValeurDsMCF(jdc,"AFFE_CARA_ELEM","DISCRET","CARA",dDISCRET) - - #####CHARGEMENT - - ####################### traitement CONTACT ############################################### - - - renameMotCleInFact(jdc,"AFFE_CHAR_MECA","CONTACT","ITER_MULT_MAXI","ITER_CONT_MULT") - renameMotCleInFact(jdc,"AFFE_CHAR_MECA","CONTACT","NB_REAC_GEOM","NB_ITER_GEOM") - ajouteMotClefDansFacteurCourantSiRegle(jdc,"AFFE_CHAR_MECA","CONTACT","RESOLUTION='NON'",((("METHODE","VERIF",jdc),"MCsousMCFcourantaPourValeur"),)) - copyMotClefInOperToFact(jdc,"AFFE_CHAR_MECA","MODELE","CONTACT") - moveMCFToCommand(jdc,"AFFE_CHAR_MECA","CONTACT","DEFI_CONTACT","ZONE") - removeMotCle(jdc,"AFFE_CHAR_MECA","CONTACT",pasDeRegle(),1) - - - removeMotCleInFact(jdc,"AFFE_CHAR_MECA","LIAISON_UNILATER","METHODE") - ajouteMotClefDansFacteur(jdc,"AFFE_CHAR_MECA","LIAISON_UNILATER","METHODE='LIAISON_UNIL'",pasDeRegle()) - copyMotClefInOperToFact(jdc,"AFFE_CHAR_MECA","MODELE","LIAISON_UNILATER") - moveMCFToCommand(jdc,"AFFE_CHAR_MECA","LIAISON_UNILATER","DEFI_CONTACT","ZONE") - removeMotCle(jdc,"AFFE_CHAR_MECA","LIAISON_UNILATER",pasDeRegle(),1) - - removeMotCleInFact(jdc,"AFFE_CHAR_MECA_F","LIAISON_UNILATER","METHODE") - ajouteMotClefDansFacteur(jdc,"AFFE_CHAR_MECA_F","LIAISON_UNILATER","METHODE='LIAISON_UNIL'",pasDeRegle()) - ajouteMotClefDansFacteur(jdc,"AFFE_CHAR_MECA_F","LIAISON_UNILATER","FORMULATION='LIAISON_UNIL'",pasDeRegle()) - copyMotClefInOperToFact(jdc,"AFFE_CHAR_MECA_F","MODELE","LIAISON_UNILATER") - moveMCFToCommand(jdc,"AFFE_CHAR_MECA_F","LIAISON_UNILATER","DEFI_CONTACT","ZONE") - removeMotCle(jdc,"AFFE_CHAR_MECA_F","LIAISON_UNILATER",pasDeRegle(),1) - - chercheOperInsereMotCleSiRegle(jdc,"DEFI_CONTACT","FORMULATION='XFEM'",((("ZONE","METHODE","XFEM",jdc),"MCsousMCFaPourValeur"),)) - chercheOperInsereMotCleSiRegle(jdc,"DEFI_CONTACT","FORMULATION='CONTINUE'",((("ZONE","METHODE","CONTINUE",jdc),"MCsousMCFaPourValeur"),)) - chercheOperInsereMotCleSiRegle(jdc,"DEFI_CONTACT","FORMULATION='VERIF'",((("ZONE","METHODE","VERIF",jdc),"MCsousMCFaPourValeur"),)) - chercheOperInsereMotCleSiRegle(jdc,"DEFI_CONTACT","FORMULATION='LIAISON_UNIL'",((("ZONE","METHODE","LIAISON_UNIL",jdc),"MCsousMCFaPourValeur"),)) - liste_meth_ZONE=["GCP","CONTRAINTE","LAGRANGIEN","PENALISATION"] - chercheOperInsereMotCleSiRegle(jdc,"DEFI_CONTACT","FORMULATION='DISCRETE'",((("ZONE","METHODE",liste_meth_ZONE,jdc),"MCsousMCFaPourValeurDansListe"),)) - ajouteMotClefDansFacteurCourantSiRegle(jdc,"DEFI_CONTACT","ZONE","ALGO_CONT='LAGRANGIEN'",((("METHODE","LAGRANGIEN",jdc),"MCsousMCFcourantaPourValeur"),)) - ajouteMotClefDansFacteurCourantSiRegle(jdc,"DEFI_CONTACT","ZONE","ALGO_FROT='LAGRANGIEN'",((("METHODE","LAGRANGIEN",jdc),"MCsousMCFcourantaPourValeur"),(("COULOMB",),"existeMCsousMCFcourant"),)) - ajouteMotClefDansFacteurCourantSiRegle(jdc,"DEFI_CONTACT","ZONE","ALGO_CONT='GCP'",((("METHODE","GCP",jdc),"MCsousMCFcourantaPourValeur"),)) - ajouteMotClefDansFacteurCourantSiRegle(jdc,"DEFI_CONTACT","ZONE","ALGO_CONT='PENALISATION'",((("METHODE","PENALISATION",jdc),"MCsousMCFcourantaPourValeur"),)) - ajouteMotClefDansFacteurCourantSiRegle(jdc,"DEFI_CONTACT","ZONE","ALGO_FROT='PENALISATION'",((("METHODE","PENALISATION",jdc),"MCsousMCFcourantaPourValeur"),(("COULOMB",),"existeMCsousMCFcourant"),)) - ajouteMotClefDansFacteurCourantSiRegle(jdc,"DEFI_CONTACT","ZONE","ALGO_CONT='CONTRAINTE'",((("METHODE","CONTRAINTE",jdc),"MCsousMCFcourantaPourValeur"),)) - removeMotCleInFact(jdc,"DEFI_CONTACT","ZONE","METHODE") - - - moveMotCleFromFactToFather(jdc,"DEFI_CONTACT","ZONE","COEF_RESI") - moveMotCleFromFactToFather(jdc,"DEFI_CONTACT","ZONE","FROTTEMENT") - moveMotCleFromFactToFather(jdc,"DEFI_CONTACT","ZONE","ITER_CONT_MAXI") - moveMotCleFromFactToFather(jdc,"DEFI_CONTACT","ZONE","ITER_FROT_MAXI") - moveMotCleFromFactToFather(jdc,"DEFI_CONTACT","ZONE","ITER_GCP_MAXI") - moveMotCleFromFactToFather(jdc,"DEFI_CONTACT","ZONE","ITER_GEOM_MAXI") - moveMotCleFromFactToFather(jdc,"DEFI_CONTACT","ZONE","LISSAGE") - moveMotCleFromFactToFather(jdc,"DEFI_CONTACT","ZONE","NB_RESOL") - moveMotCleFromFactToFather(jdc,"DEFI_CONTACT","ZONE","PRE_COND") - moveMotCleFromFactToFather(jdc,"DEFI_CONTACT","ZONE","REAC_GEOM") - moveMotCleFromFactToFather(jdc,"DEFI_CONTACT","ZONE","REAC_ITER") - moveMotCleFromFactToFather(jdc,"DEFI_CONTACT","ZONE","RECH_LINEAIRE") - moveMotCleFromFactToFather(jdc,"DEFI_CONTACT","ZONE","STOP_INTERP") - moveMotCleFromFactToFather(jdc,"DEFI_CONTACT","ZONE","STOP_SINGULIER") - moveMotCleFromFactToFather(jdc,"DEFI_CONTACT","ZONE","RESI_ABSO") - moveMotCleFromFactToFather(jdc,"DEFI_CONTACT","ZONE","ITER_CONT_MULT") - moveMotCleFromFactToFather(jdc,"DEFI_CONTACT","ZONE","ITER_PRE_MAXI") - moveMotCleFromFactToFather(jdc,"DEFI_CONTACT","ZONE","NB_ITER_GEOM") - moveMotCleFromFactToFather(jdc,"DEFI_CONTACT","ZONE","MODELE") - - - # FORMULATION = DEPL/VITE - # Si EXCL_FROT_1 - # Si EXCL_FROT_2 - - - ####################### traitement DCX/DCY/DCZ ############################# - dDC={"DCX":"DX","DCY":"DY","DCZ":"DZ"} - renameMotCleInFact(jdc,"AFFE_CHAR_MECA","DDL_IMPO","DCX","DX") - renameMotCleInFact(jdc,"AFFE_CHAR_MECA","DDL_IMPO","DCY","DY") - renameMotCleInFact(jdc,"AFFE_CHAR_MECA","DDL_IMPO","DCZ","DZ") - renameMotCleInFact(jdc,"AFFE_CHAR_MECA_F","DDL_IMPO","DCX","DX") - renameMotCleInFact(jdc,"AFFE_CHAR_MECA_F","DDL_IMPO","DCY","DY") - renameMotCleInFact(jdc,"AFFE_CHAR_MECA_F","DDL_IMPO","DCZ","DZ") - renameMotCleInFact(jdc,"AFFE_CHAR_CINE","MECA_IMPO","DCX","DX") - renameMotCleInFact(jdc,"AFFE_CHAR_CINE","MECA_IMPO","DCY","DY") - renameMotCleInFact(jdc,"AFFE_CHAR_CINE","MECA_IMPO","DCZ","DZ") - # QUESTION Non pris en compte : AFFE_CHAR_MECA/LIAISON_DDL","DDL",Liste de valeurs avec DC*) - # peut_etre avec changeTouteValeur ? - - ######################### traitement COMB_SISM_MODAL APPUI #######################"" - # attention il faut traiter d'abord DECORRELE avant CORRELE sinon CORRELE apparaît dans DECORELLE - moveMotCleFromFactToFather(jdc,"COMB_SISM_MODAL","EXCIT","MONO_APPUI") - moveMotCleFromFactToFather(jdc,"COMB_SISM_MODAL","EXCIT","MULTI_APPUI") - removeMotCleInFactSiRegle(jdc,"COMB_SISM_MODAL","COMB_MULT_APPUI","TYPE_COMBI",((("MULTI_APPUI","DECORRELE",jdc),"MCaPourValeur"),)) - renameMotCleSiRegle(jdc,"COMB_SISM_MODAL","COMB_MULT_APPUI","GROUP_APPUI",((("MULTI_APPUI","DECORRELE",jdc),"MCaPourValeur"),),1) - - ######################## traitement DYNA_TRAN_MODAL ################## - ajouteMotClefDansFacteurCourantSiRegle(jdc,"DYNA_TRAN_MODAL","CHOC","FROTTEMENT='COULOMB'",((("COULOMB",),"existeMCsousMCFcourant"),)) - - ######################### traitement AFFE_CHAR_MECA PESANTEUR ROTATION################# - eclaMotCleToFact(jdc,"AFFE_CHAR_MECA","PESANTEUR","GRAVITE","DIRECTION") - eclaMotCleToFact(jdc,"AFFE_CHAR_MECA","ROTATION","VITESSE","AXE") - moveMotClefInOperToFact(jdc,"AFFE_CHAR_MECA","CENTRE","ROTATION") - - ######################## traitement DEFI_BASE_MODALE ############## - renameMotCleInFact(jdc,"DEFI_BASE_MODALE","RITZ","MODE_STAT","MODE_INTF") - renameMotCleInFact(jdc,"DEFI_BASE_MODALE","RITZ","MULT_ELAS","MODE_INTF") - - ####################### traitement DYNA_ISS_VARI ################# - renameMotCle(jdc,"DYNA_ISS_VARI","PAS","FREQ_PAS") - - - #####IMPRESSION - - #################### traitement IMPR_RESU ####################### - removeMotCleInFact(jdc,"IMPR_RESU","RESU","INFO_RESU") - - ######################### traitement IMPR_MATRICE #################### - removeCommande(jdc,"IMPR_MATRICE") - - ####################### traitement PROJ_CHAMP ##################### - renameMotCle(jdc,"PROJ_CHAMP","CHAM_NO","CHAM_GD",1,pasDeRegle()) - changementValeur(jdc,"PROJ_CHAMP","METHODE",{ "ELEM":"COLLOCATION"}) - - ####################### traitement MACR_ADAP_MAIL ##############" - changementValeur(jdc,"MACR_ADAP_MAIL","TYPE_VALEUR_INDICA",{"V_ABSOLUE":"ABSOLU","V_RELATIVE":"RELATIF"}) - renameMotCle(jdc,"MACR_ADAP_MAIL","INDICATEUR","NOM_CHAM") - renameMotCle(jdc,"MACR_ADAP_MAIL","NOM_CMP_INDICA","NOM_CMP") - renameMotCle(jdc,"MACR_ADAP_MAIL","TYPE_OPER_INDICA","USAGE_CHAMP") - renameMotCle(jdc,"MACR_ADAP_MAIL","TYPE_VALEUR_INDICA","USAGE_CMP") - ajouteMotClefDansFacteurCourantSiRegle(jdc,"MACR_ADAP_MAIL","ZONE","TYPE='BOITE'",((("RAYON",),"nexistepasMCsousMCFcourant"),)) - ajouteMotClefDansFacteurCourantSiRegle(jdc,"MACR_ADAP_MAIL","ZONE","TYPE='SPHERE'",((("RAYON",),"existeMCsousMCFcourant"),)) - changementValeur(jdc,"MACR_ADAP_MAIL","VERSION_HOMARD",{"V9_5":"V10_1"}) - changementValeur(jdc,"MACR_ADAP_MAIL","VERSION_HOMARD",{"V9_N":"V10_1_N"}) - changementValeur(jdc,"MACR_INFO_MAIL","VERSION_HOMARD",{"V9_5":"V10_1"}) - changementValeur(jdc,"MACR_INFO_MAIL","VERSION_HOMARD",{"V9_N":"V10_1_N"}) - - ###################### traitement de POST_CHAM_XFEM ################# - removeMotCle(jdc,"POST_CHAM_XFEM","MODELE",pasDeRegle(),0) - removeMotCle(jdc,"POST_CHAM_XFEM","MAILLAGE_FISS",pasDeRegle(),0) - removeMotCle(jdc,"POST_CHAM_XFEM","NOM_CHAM",pasDeRegle(),0) - - ##################### traitement de SIMU_POINT_MAT/SUPPORT ############# - chercheOperInsereFacteur(jdc,"SIMU_POINT_MAT","SUPPORT='POINT'",pasDeRegle(),0) - - ###################### traitement AFFE_CARA_ELEM/UNITE_EUROPLEXUS ###### - renameMotCleInFact(jdc,"AFFE_CARA_ELEM","RIGI_PARASOL","UNITE_EUROPLEXUS","UNITE",pasDeRegle(),0) - - #################### traitement DEFI_GLRC/IMPRESSION ############# - removeMotCle(jdc,"DEFI_GLRC","IMPRESSION",pasDeRegle(),0) - - ################### traitement AFFICHAGE ##### - removeMotCleInFact(jdc,"DYNA_NON_LINE","AFFICHAGE","LONG_I",pasDeRegle(),0) - removeMotCleInFact(jdc,"DYNA_NON_LINE","AFFICHAGE","LONG_R",pasDeRegle(),0) - removeMotCleInFact(jdc,"DYNA_NON_LINE","AFFICHAGE","NOM_COLONNE",pasDeRegle(),0) - removeMotCleInFact(jdc,"DYNA_NON_LINE","AFFICHAGE","PREC_R",pasDeRegle(),0) - removeMotCleInFact(jdc,"STAT_NON_LINE","AFFICHAGE","LONG_I",pasDeRegle(),0) - removeMotCleInFact(jdc,"STAT_NON_LINE","AFFICHAGE","LONG_R",pasDeRegle(),0) - removeMotCleInFact(jdc,"STAT_NON_LINE","AFFICHAGE","NOM_COLONNE",pasDeRegle(),0) - removeMotCleInFact(jdc,"STAT_NON_LINE","AFFICHAGE","PREC_R",pasDeRegle(),0) - - ################### traitement CALC_NO *RESU ######### - removeMotCle(jdc,"CALC_NO","GROUP_MA_RESU",pasDeRegle(),0) - removeMotCle(jdc,"CALC_NO","MAILLE_RESU",pasDeRegle(),0) - removeMotCle(jdc,"CALC_NO","GROUP_NO_RESU",pasDeRegle(),0) - removeMotCle(jdc,"CALC_NO","NOEUD_RESU",pasDeRegle(),0) - - ################## traitement POST_K1_K2_K3/MAILLAGE ###### - removeMotCleSiRegle(jdc,"POST_K1_K2_K3","MAILLAGE",((("RESULTAT"),"existeMCFParmi"),)) - - ######### traitement CALC_ELEM/TYPE_ESTI #### - dESTI={"ERRE_ELEM_SIGM":"ERME_ELEM","ERZ1_ELEM_SIGM":"ERZ1_ELEM","ERZ2_ELEM_SIGM":"ERZ2_ELEM", - "QIRE_ELEM_SIGM":"QIRE_ELEM","QIZ1_ELEM_SIGM":"QIZ1_ELEM","QIZ2_ELEM_SIGM":"QIZ2_ELEM"} - changementValeur(jdc,"CALC_ELEM","TYPE_ESTI",dESTI) - - ######### suppression CALC_ELEM/NORME ###### - removeMotCle(jdc,"CALC_ELEM","NORME",pasDeRegle(),0) - - ########## traitement CALC_ELEM/CALC_NO OPTION - #dSENSI={"DEDE_ELNO_DLDE":"DEDE_ELNO","DEDE_NOEU_DLDE":"DEDE_NOEU","DESI_ELNO_DLSI":"DESI_ELNO","DESI_NOEU_DLSI":"DESI_NOEU", - # "DETE_ELNO_DLTE":"DETE_ELNO","DETE_NOEU_DLTE":"DETE_NOEU"} - dOPTION={"DEDE_ELNO_DLDE":"DEDE_ELNO","DEDE_NOEU_DLDE":"DEDE_NOEU","DESI_ELNO_DLSI":"DESI_ELNO","DESI_NOEU_DLSI":"DESI_NOEU", - "DETE_ELNO_DLTE":"DETE_ELNO","DETE_NOEU_DLTE":"DETE_NOEU", - "INTE_ELNO_ACTI":"INTE_ELNO","INTE_ELNO_REAC":"INTE_ELNO","INTE_NOEU_ACTI":"INTE_NOEU","INTE_NOEU_REAC":"INTE_NOEU", - "PRES_DBEL_DEPL":"PRME_ELNO","PRES_ELNO_IMAG":"PRAC_ELNO","PRES_ELNO_REEL":"PRAC_ELNO", - "PRES_NOEU_DBEL":"PRAC_NOEU","PRES_NOEU_IMAG":"PRAC_NOEU","PRES_NOEU_REEL":"PRAC_NOEU", - "ARCO_ELNO_SIGM":"SIRO_ELEM","ARCO_NOEU_SIGM":"SIRO_ELEM", - "ENDO_ELNO_ELGA":"ENDO_ELNO","ENDO_ELNO_SIGA":"ENDO_ELNO","ENDO_ELNO_SINO":"ENDO_ELNO","ENDO_NOEU_SINO":"ENDO_NOEU", - "ERRE_ELEM_SIGM":"ERME_ELEM","ERRE_ELEM_TEMP":"ERTH_ELEM", - "CRIT_ELNO_RUPT":"CRIT_ELNO","DEGE_ELNO_DEPL":"DEGE_ELNO","DEGE_NOEU_DEPL":"DEGE_NOEU", - "DURT_ELNO_META":"DURT_ELNO","DURT_NOEU_META":"DURT_NOEU","ECIN_ELEM_DEPL":"ECIN_ELEM","ENEL_ELNO_ELGA":"ENEL_ELNO", - "ENEL_NOEU_ELGA":"ENEL_NOEU","EPEQ_ELNO_TUYO":"EPTQ_ELNO","EPME_ELGA_DEPL":"EPME_ELGA","EPME_ELNO_DEPL":"EPME_ELNO", - "EPMG_ELGA_DEPL":"EPMG_ELGA","EPMG_ELNO_DEPL":"EPMG_ELNO","EPMG_NOEU_DEPL":"EPMG_NOEU","EPOT_ELEM_DEPL":"EPOT_ELEM", - "EPSG_ELGA_DEPL":"EPSG_ELGA","EPSG_ELNO_DEPL":"EPSG_ELNO","EPSG_NOEU_DEPL":"EPSG_NOEU", - "EPSI_ELGA_DEPL":"EPSI_ELGA","EPSI_NOEU_DEPL":"EPSI_NOEU","EPSI_ELNO_DEPL":"EPSI_ELNO","EPSI_ELNO_TUYO":"EPTU_ELNO", - "ERZ1_ELEM_SIGM":"ERZ1_ELEM","ERZ2_ELEM_SIGM":"ERZ2_ELEM", - "ETOT_ELNO_ELGA":"ETOT_ELNO","EXTR_ELGA_VARI":"VAEX_ELGA","EXTR_ELNO_VARI":"VAEX_ELNO","EXTR_NOEU_VARI":"VAEX_NOEU", - "FLUX_ELGA_TEMP":"FLUX_ELGA","FLUX_ELNO_TEMP":"FLUX_ELNO","FLUX_NOEU_TEMP":"FLUX_NOEU", - "HYDR_NOEU_ELGA":"HYDR_NOEU","HYDR_ELNO_ELGA":"HYDR_ELNO", - "META_ELNO_TEMP":"META_ELNO","META_NOEU_TEMP":"META_NOEU", - "PMPB_ELGA_SIEF":"PMPB_ELGA","PMPB_ELNO_SIEF":"PMPB_ELNO","PMPB_NOEU_SIEF":"PMPB_NOEU", - "QIRE_ELEM_SIGM":"QIRE_ELEM","QIRE_ELNO_ELEM":"QIRE_ELNO","QIRE_NOEU_ELEM":"QIRE_NOEU", - "QIZ1_ELEM_SIGM":"QIZ1_ELEM","QIZ2_ELEM_SIGM":"QIZ2_ELEM", - "SIEF_ELGA_DEPL":"SIEF_ELGA","SIEF_ELNO_ELGA":"SIEF_ELNO","SIEF_NOEU_ELGA":"SIEF_NOEU", - "SIEQ_ELNO_TUYO":"SITQ_ELNO","SING_ELNO_ELEM":"SING_ELNO","SIPO_ELNO_DEPL":"SIPO_ELNO","SIPO_NOEU_DEPL":"SIPO_NOEU", - "SOUR_ELGA_ELEC":"SOUR_ELGA", - "DCHA_ELGA_SIGM":"DERA_ELGA","DCHA_ELNO_SIGM":"DERA_ELNO","DCHA_NOEU_SIGM":"DERA_NOEU", - "RADI_ELGA_SIGM":"DERA_ELGA","RADI_ELNO_SIGM":"DERA_ELNO","RADI_NOEU_SIGM":"DERA_NOEU", - "EFGE_ELNO_CART":"EFCA_ELNO","EFGE_NOEU_CART":"EFCA_NOEU","EFGE_ELNO_DEPL":"EFGE_ELNO","EFGE_NOEU_DEPL":"EFGE_NOEU", - "EQUI_ELGA_EPME":"EPMQ_ELGA","EQUI_ELNO_EPME":"EPMQ_ELNO","EQUI_NOEU_EPME":"EPMQ_NOEU", - "EQUI_ELGA_EPSI":"EPEQ_ELGA","EQUI_ELNO_EPSI":"EPEQ_ELNO","EQUI_NOEU_EPSI":"EPEQ_NOEU", - "EQUI_ELGA_SIGM":"SIEQ_ELGA","EQUI_ELNO_SIGM":"SIEQ_ELNO","EQUI_NOEU_SIGM":"SIEQ_NOEU", - "SIGM_ELNO_CART":"SICA_ELNO","SIGM_NOEU_CART":"SICA_NOEU","SIGM_ELNO_COQU":"SICO_ELNO","SIGM_NOEU_COQU":"SICO_ELNO", - "SIGM_ELNO_TUYO":"SITU_ELNO", - "SIGM_ELNO_DEPL":"SIGM_ELNO","SIGM_NOEU_DEPL":"SIGM_NOEU","SIGM_NOZ1_ELGA":"SIZ1_ELGA","SIGM_NOZ2_ELGA":"SIZ2_ELGA", - "VALE_NCOU_MAXI":"SPMX_ELGA","VARI_ELNO_COQU":"VACO_ELNO","VARI_ELNO_TUYO":"VATU_ELNO", - "VARI_NOEU_ELGA":"VARI_NOEU","VARI_ELNO_ELGA":"VARI_ELNO", - "INDI_LOCA_ELGA":"INDL_ELGA"} - #"FORC_NODA":"FORC_NOEU","REAC_NODA":"REAC_NOEU" - changementValeurDsMCF(jdc,"AFFE_MATERIAU","AFFE_VARC","NOM_CHAM",dOPTION) - changementValeur(jdc,"COMB_FOURIER","NOM_CHAM",dOPTION) - changementValeur(jdc,"CREA_CHAMP","NOM_CHAM",dOPTION) - changementValeur(jdc,"CREA_RESU","NOM_CHAM",dOPTION) - changementValeurDsMCF(jdc,"EXTR_RESU","ARCHIVAGE","NOM_CHAM",dOPTION) - changementValeurDsMCF(jdc,"IMPR_RESU","RESU","NOM_CHAM",dOPTION) - changementValeurDsMCF(jdc,"LIRE_RESU","FORMAT_MED","NOM_CHAM",dOPTION) - changementValeurDsMCF(jdc,"LIRE_RESU","FORMAT_IDEAS","NOM_CHAM",dOPTION) - changementValeur(jdc,"LIRE_RESU","NOM_CHAM",dOPTION) - changementValeur(jdc,"MACR_ADAP_MAIL","NOM_CHAM",dOPTION) - changementValeurDsMCF(jdc,"MACR_ASPIC_CALC","IMPRESSION","NOM_CHAM",dOPTION) - changementValeur(jdc,"MACR_LIGN_COUPE","NOM_CHAM",dOPTION) - changementValeurDsMCF(jdc,"MODI_REPERE","MODI_CHAM","NOM_CHAM",dOPTION) - changementValeurDsMCF(jdc,"POST_ELEM","INTEGRALE","NOM_CHAM",dOPTION) - changementValeurDsMCF(jdc,"POST_ELEM","MINMAX","NOM_CHAM",dOPTION) - changementValeurDsMCF(jdc,"POST_RCCM","RESU_MECA","NOM_CHAM",dOPTION) - changementValeurDsMCF(jdc,"POST_RELEVE_T","ACTION","NOM_CHAM",dOPTION) - changementValeur(jdc,"PROJ_CHAMP","NOM_CHAM",dOPTION) - changementValeurDsMCF(jdc,"PROJ_MESU_MODAL","MODELE_MESURE","NOM_CHAM",dOPTION) - changementValeur(jdc,"RECU_FONCTION","NOM_CHAM",dOPTION) - changementValeur(jdc,"REST_GENE_PHYS","NOM_CHAM",dOPTION) - changementValeur(jdc,"REST_SOUS_STRUC","NOM_CHAM",dOPTION) - changementValeur(jdc,"REST_SPEC_PHYS","NOM_CHAM",dOPTION) - changementValeurDsMCF(jdc,"TEST_RESU","RESU","NOM_CHAM",dOPTION) - changementValeurDsMCF(jdc,"TEST_RESU","GENE","NOM_CHAM",dOPTION) - - changementValeur(jdc,"CALC_CHAM_ELEM","OPTION",dOPTION) - changementValeur(jdc,"CALC_ELEM","OPTION",dOPTION) - changementValeur(jdc,"CALC_META","OPTION",dOPTION) - changementValeur(jdc,"CALC_NO","OPTION",dOPTION) - changementValeur(jdc,"COMB_SISM_MODAL","OPTION",dOPTION) - changementValeur(jdc,"MECA_STATIQUE","OPTION",dOPTION) - changementValeurDsMCF(jdc,"MACRO_ELAS_MULT","CAS_CHARGE","OPTION",dOPTION) - changementValeur(jdc,"THER_NON_LINE","OPTION",dOPTION) - - ############ Message si suppressionValeurs ou Valeurs ambigue CALC_ELEM/OPTION - rOPTION=("'DEUL_ELGA_DEPL'","'DEUL_ELGA_TEMP'","'DURT_ELGA_META'", - "'ERRE_ELNO_DEPL'", "'ERRE_NOEU_ELEM'", "'ERRE_ELNO_ELEM'","'EPSP_NOEU_ZAC'","'HYDR_ELNO_ELGA'", - "'SIGM_NOEU_ZAC'","'SIGM_ELNO_SIEF'","'SIGM_NOEU_SIEF'","'SIPO_ELNO_SIEF'","'SIPO_NOEU_SIEF'", - "'SIRE_ELNO_DEPL'","'SIRE_NOEU_DEPL'","'SIEF_NOEU'", - "'PRES_ELNO_DBEL'", "'VARI_NOEU'") - # Options ambigue : PRES_ELNO_DBEL --> prac_elno/prme_elno, ERRE* --> ERME_ELNO ou ERTH_ELNO selon PHENOMENE - # En commentaires les commandes non concernees par rOPTION - - genereErreurValeurDsMCF(jdc,"AFFE_MATERIAU","AFFE_VARC","NOM_CHAM",rOPTION) - #genereErreurValeur(jdc,"COMB_FOURIER","NOM_CHAM",rOPTION) - genereErreurValeur(jdc,"CREA_CHAMP","NOM_CHAM",rOPTION) - genereErreurValeur(jdc,"CREA_RESU","NOM_CHAM",rOPTION) - genereErreurValeurDsMCF(jdc,"EXTR_RESU","ARCHIVAGE","NOM_CHAM",rOPTION) - genereErreurValeurDsMCF(jdc,"IMPR_RESU","RESU","NOM_CHAM",rOPTION) - genereErreurValeurDsMCF(jdc,"LIRE_RESU","FORMAT_MED","NOM_CHAM",rOPTION) - genereErreurValeurDsMCF(jdc,"LIRE_RESU","FORMAT_IDEAS","NOM_CHAM",rOPTION) - genereErreurValeur(jdc,"LIRE_RESU","NOM_CHAM",rOPTION) - genereErreurValeur(jdc,"MACR_ADAP_MAIL","NOM_CHAM",rOPTION) - #genereErreurDsMCF(jdc,"MACR_ASPIC_CALC","IMPRESSION","NOM_CHAM",rOPTION) - genereErreurValeur(jdc,"MACR_LIGN_COUPE","NOM_CHAM",rOPTION) - genereErreurValeurDsMCF(jdc,"MODI_REPERE","MODI_CHAM","NOM_CHAM",rOPTION) - #genereErreurValeurDsMCF(jdc,"POST_RCCM","RESU_MECA","NOM_CHAM",rOPTION) - genereErreurValeurDsMCF(jdc,"POST_ELEM","INTEGRALE","NOM_CHAM",rOPTION) - genereErreurValeurDsMCF(jdc,"POST_ELEM","MINMAX","NOM_CHAM",rOPTION) - genereErreurValeurDsMCF(jdc,"POST_RELEVE_T","ACTION","NOM_CHAM",rOPTION) - genereErreurValeur(jdc,"PROJ_CHAMP","NOM_CHAM",rOPTION) - #genereErreurValeurDsMCF(jdc,"PROJ_MESU_MODAL","MODELE_MESURE","NOM_CHAM",rOPTION) - genereErreurValeur(jdc,"RECU_FONCTION","NOM_CHAM",rOPTION) - #genereErreurValeur(jdc,"REST_GENE_PHYS","NOM_CHAM",rOPTION) - #genereErreurValeur(jdc,"REST_SOUS_STRUC","NOM_CHAM",rOPTION) - #genereErreurValeur(jdc,"REST_SPEC_PHYS","NOM_CHAM",rOPTION) - genereErreurValeurDsMCF(jdc,"TEST_RESU","RESU","NOM_CHAM",rOPTION) - genereErreurValeurDsMCF(jdc,"TEST_RESU","GENE","NOM_CHAM",rOPTION) - - genereErreurValeur(jdc,"CALC_CHAM_ELEM","OPTION",rOPTION) - genereErreurValeur(jdc,"CALC_ELEM","OPTION",rOPTION) - #genereErreurValeur(jdc,"CALC_META","OPTION",rOPTION) - genereErreurValeur(jdc,"CALC_NO","OPTION",rOPTION) - #genereErreurValeur(jdc,"COMB_SISM_MODAL","OPTION",rOPTION) - #genereErreurValeur(jdc,"MECA_STATIQUE","OPTION",rOPTION) - genereErreurValeurDsMCF(jdc,"MACRO_ELAS_MULT","CAS_CHARGE","OPTION",rOPTION) - #genereErreurValeur(jdc,"THER_NON_LINE","OPTION",rOPTION) - - ########### Message si CALC_ELEM/SENSIBILITE - genereErreurMCF(jdc,"CALC_ELEM","SENSIBILITE") - - # non fait CALC_NO OPTION=FORC_NODA_NONL - - ########## traitement MACRO_MISS_3D --> CALC_MISS - renameCommandeSiRegle(jdc,"MACRO_MISS_3D","CALC_MISS",((("OPTION","MODULE","MISS_IMPE",jdc),"MCsousMCFaPourValeur"),(("PARAMETRE","ISSF"),"nexistepasMCsousMCF"),(("PARAMETRE","DIRE_ONDE"),"nexistepasMCsousMCF"),(("PARAMETRE","CONTR_LISTE"),"nexistepasMCsousMCF"),(("PARAMETRE","CONTR_NB"),"nexistepasMCsousMCF"),)) - renameCommandeSiRegle(jdc,"MACRO_MISS_3D","CALC_MISS",((("OPTION","MODULE","MISS_IMPE",jdc),"MCsousMCFaPourValeur"),(("PARAMETRE","ISSF","NON",jdc),"MCsousMCFaPourValeur"),(("PARAMETRE","DIRE_ONDE"),"nexistepasMCsousMCF"),(("PARAMETRE","CONTR_LISTE"),"nexistepasMCsousMCF"),(("PARAMETRE","CONTR_NB"),"nexistepasMCsousMCF"),)) - removeMotCleInFact(jdc,"CALC_MISS","PARAMETRE","FICH_RESU_IMPE",pasDeRegle(),0) - removeMotCleInFact(jdc,"CALC_MISS","PARAMETRE","FICH_RESU_FORC",pasDeRegle(),0) - removeMotCleInFact(jdc,"CALC_MISS","PARAMETRE","FICH_POST_TRAI",pasDeRegle(),0) - removeMotCle(jdc,"CALC_MISS","UNITE_OPTI_MISS",pasDeRegle()) - removeMotCle(jdc,"CALC_MISS","UNITE_MODELE_SOL",pasDeRegle()) - removeMotCle(jdc,"CALC_MISS","OPTION",pasDeRegle(),1) - changementValeur(jdc,"CALC_MISS","VERSION",{"V1_4":"V6.5"}) - changementValeur(jdc,"CALC_MISS","VERSION",{"V1_5":"V6.6"}) - changementValeur(jdc,"CALC_MISS","VERSION",{"V1_3":"V6.5"}) - - macr="" - interf="" - amor="" - for c in jdc.root.childNodes: - if c.name != "IMPR_MACR_ELEM" : continue - for mc in c.childNodes: - if mc.name == "MACR_ELEM_DYNA" : macr=mc.getText(jdc) - if mc.name == "GROUP_MA_INTERF": interf=mc.getText(jdc) - if mc.name == "AMOR_REDUIT": amor=mc.getText(jdc) - if amor != "" : chercheOperInsereFacteur(jdc,"CALC_MISS",amor,pasDeRegle(),0) - if interf != "" : chercheOperInsereFacteur(jdc,"CALC_MISS",interf,pasDeRegle(),0) - if macr != "" : chercheOperInsereFacteur(jdc,"CALC_MISS",macr,pasDeRegle(),0) - - chercheOperInsereFacteur(jdc,"CALC_MISS","TABLE_SOL=''",pasDeRegle(),0) - chercheOperInsereFacteur(jdc,"CALC_MISS","TYPE_RESU='FICHIER'",pasDeRegle(),0) - - ################################################################# - f=open(outfile,'w') - f.write(jdc.getSource()) - f.close() - - log.ferme(hdlr) - -def main(): - parser = optparse.Optionparser(usage=usage) - - parser.add_option('-i','--infile', dest="infile", default='toto.comm', - help="Le fichier a traduire") - parser.add_option('-o','--outfile', dest="outfile", default='tutu.comm', - help="Le fichier traduit") - - options, args = parser.parse_args() - traduc(options.infile,options.outfile) - -if __name__ == '__main__': - main() - diff --git a/Traducteur/utils.py b/Traducteur/utils.py deleted file mode 100644 index 31ab5e87..00000000 --- a/Traducteur/utils.py +++ /dev/null @@ -1,45 +0,0 @@ -# -*- coding: utf-8 -*- -# Copyright (C) 2007-2017 EDF R&D -# -# 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 re - -def indexToCoordinates(src, index): - """return le numero de la colonne (x) et le numero de la ligne (y) dans src""" - y = src[: index].count("\n") - startOfLineIdx = src.rfind("\n", 0, index)+1 - x = index-startOfLineIdx - return x, y - -def lineToDict(line): - """Transforme une ligne (string) en un dictionnaire de mots - reperes par le numero de la colonne""" - - words = re.split("(\w+)", line) - h = {};i = 0 - for word in words: - h[i] = word - i+=len(word) - return h - -def dictToLine(d): - """Transformation inverse: a partir d'un dictionnaire retourne une ligne""" - cols = d - cols.sort() - return "".join([d[colno]for colno in cols]) diff --git a/Traducteur/visiteur.py b/Traducteur/visiteur.py deleted file mode 100644 index b1e8aa2f..00000000 --- a/Traducteur/visiteur.py +++ /dev/null @@ -1,85 +0,0 @@ -# -*- coding: utf-8 -*- -# Copyright (C) 2007-2017 EDF R&D -# -# 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 re -from compiler import visitor - -class MatchFinder: - """Visiteur de base : gestion des matches """ - def reset(self,line): - self.matches=[] - self._matches = [] - self.words = re.split("(\w+)", line) # every other one is a non word - self.positions = [] - i = 0 - for word in self.words: - self.positions.append(i) - i+=len(word) - self.index = 0 - - def popWordsUpTo(self, word): - if word == "*": - return # won't be able to find this - posInWords = self.words.index(word) - idx = self.positions[posInWords] - self.words = self.words[posInWords+1:] - self.positions = self.positions[posInWords+1:] - - def appendMatch(self,name): - idx = self.getNextIndexOfWord(name) - self._matches.append((idx, name)) - - def getNextIndexOfWord(self,name): - return self.positions[self.words.index(name)] - - -class KeywordFinder(MatchFinder): - """Visiteur pour les keywords d'une commande """ - - def visitKeyword(self,node): - idx = self.getNextIndexOfWord(node.name) - self.popWordsUpTo(node.name) - prevmatches=self._matches - self._matches = [] - for child in node.getChildNodes(): - self.visit(child) - prevmatches.append((idx, node.name,self._matches)) - self._matches=prevmatches - #on ne garde que les matches du niveau Keyword le plus haut - self.matches=self._matches - - def visitTuple(self,node): - matchlist=[] - for child in node.getChildNodes(): - self._matches = [] - self.visit(child) - if self._matches: - # Pour eviter les tuples et listes ordinaires, - # on ne garde que les visites fructueuses - matchlist.append(self._matches) - self._matches=matchlist - - visitList=visitTuple - - def visitName(self,node): - self.popWordsUpTo(node.name) - - def visitAssName(self,node): - self.popWordsUpTo(node.name) diff --git a/UiQT5/CMakeLists.txt b/UiQT5/CMakeLists.txt deleted file mode 100644 index 40a250d4..00000000 --- a/UiQT5/CMakeLists.txt +++ /dev/null @@ -1,144 +0,0 @@ -# -*- coding: utf-8 -*- -# CONFIGURATION MANAGEMENT OF EDF VERSION -# ====================================================================== -# COPYRIGHT (C) 1991 - 2002, 2013 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# -# -# ====================================================================== - -set ( _PYFILES ) -macro ( eficas_compile_ui uifile ) - get_filename_component ( _file_we ${uifile} NAME_WE ) - set ( _pyfile "${_file_we}.py" ) - add_custom_command ( OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/${_pyfile} - COMMAND ${PYUIC5} ARGS -x -o ${CMAKE_CURRENT_BINARY_DIR}/${_pyfile} ${CMAKE_CURRENT_SOURCE_DIR}/${uifile} - MAIN_DEPENDENCY ${CMAKE_CURRENT_SOURCE_DIR}/${uifile} - COMMENT "Compiling ${uifile}" - ) - list ( APPEND _PYFILES ${CMAKE_CURRENT_BINARY_DIR}/${_pyfile} ) -endmacro ( eficas_compile_ui ) - -macro ( eficas_compile_ui_2 uifile ) - get_filename_component ( _file_we ${uifile} NAME_WE ) - set ( _pyfile "${_file_we}.py" ) - add_custom_command ( OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/${_pyfile} - COMMAND ${PYUIC5} ARGS -x -o ${CMAKE_CURRENT_BINARY_DIR}/${_pyfile} ${CMAKE_CURRENT_SOURCE_DIR}/${uifile} - COMMAND sed -i -e "'s/\\(QtCore\\.QMetaObject\\.connectSlotsByName(WidgetFactPlie)\\)/#\\1/'" ${CMAKE_CURRENT_BINARY_DIR}/${_pyfile} - MAIN_DEPENDENCY ${CMAKE_CURRENT_SOURCE_DIR}/${uifile} - COMMENT "Compiling ${uifile}" - ) - list ( APPEND _PYFILES ${CMAKE_CURRENT_BINARY_DIR}/${_pyfile} ) -endmacro ( eficas_compile_ui_2 ) - -eficas_compile_ui ( myMain.ui ) -eficas_compile_ui ( desBaseWidget.ui ) -eficas_compile_ui ( desChoixCata.ui ) -eficas_compile_ui ( desChoixCode.ui ) -eficas_compile_ui ( desChoixCommandes.ui ) -eficas_compile_ui ( desChoixLangue.ui ) -eficas_compile_ui ( desRecherche.ui ) -eficas_compile_ui ( desRechercheCatalogue.ui ) -eficas_compile_ui ( desSelectVal.ui ) -eficas_compile_ui ( desViewTexte.ui ) -eficas_compile_ui ( desViewRegles.ui ) -eficas_compile_ui ( desVisu.ui ) -eficas_compile_ui ( desWidgetCreeParam.ui ) -eficas_compile_ui ( desWidgetCommande.ui ) -eficas_compile_ui ( desWidgetFormule.ui ) -eficas_compile_ui ( desWidgetOptionnel.ui ) -eficas_compile_ui ( desGroupeOptionnel.ui ) -eficas_compile_ui ( Tuple2.ui ) -eficas_compile_ui ( Tuple3.ui ) -eficas_compile_ui ( Tuple4.ui ) -eficas_compile_ui ( Tuple5.ui ) -eficas_compile_ui ( Tuple6.ui ) -eficas_compile_ui ( Tuple7.ui ) -eficas_compile_ui ( Tuple8.ui ) -eficas_compile_ui ( Tuple9.ui ) -eficas_compile_ui ( Tuple10.ui ) -eficas_compile_ui ( desPBOptionnelMT.ui ) -# -eficas_compile_ui ( desWidgetBloc.ui ) -eficas_compile_ui ( desWidgetCB.ui ) -eficas_compile_ui ( desWidgetCBIntoSug.ui ) -eficas_compile_ui ( desWidgetCommentaire.ui ) -eficas_compile_ui ( desWidgetDate.ui ) -eficas_compile_ui ( desWidgetFact.ui ) -eficas_compile_ui ( desWidgetFactPlie.ui ) -eficas_compile_ui ( desWidgetFactTableau.ui ) -eficas_compile_ui ( desWidgetHeure.ui ) -eficas_compile_ui ( desWidgetInactif.ui ) -eficas_compile_ui ( desWidgetInformation.ui ) -eficas_compile_ui ( desWidgetIntoSug.ui ) -eficas_compile_ui ( desWidgetMatrice.ui ) -eficas_compile_ui ( desWidgetNiveauFact.ui ) -eficas_compile_ui ( desWidgetParam.ui ) -eficas_compile_ui ( desWidgetPlusieursBase.ui ) -eficas_compile_ui ( desWidgetPlusieursInto.ui ) -eficas_compile_ui ( desWidgetPlusieursIntoOrdonne.ui ) -eficas_compile_ui ( desWidgetPlusieursTuple.ui ) -eficas_compile_ui ( desWidgetPlusieursPlie.ui ) -eficas_compile_ui ( desWidgetRadioButton.ui ) -eficas_compile_ui ( desWidget4a6RadioButton.ui ) -eficas_compile_ui ( desWidgetSDCOInto.ui ) -eficas_compile_ui ( desWidgetSimpBase.ui ) -eficas_compile_ui ( desWidgetSimpBool.ui ) -eficas_compile_ui ( desWidgetSimpComplexe.ui ) -eficas_compile_ui ( desWidgetSimpFichier.ui ) -eficas_compile_ui ( desWidgetSimpSalome.ui ) -eficas_compile_ui ( desWidgetSimpTxt.ui ) -eficas_compile_ui ( desWidgetTableau.ui ) -eficas_compile_ui ( desWidgetTuple2.ui ) -eficas_compile_ui ( desWidgetTuple3.ui ) -eficas_compile_ui ( desWidgetTuple4.ui ) -eficas_compile_ui ( desWidgetTuple5.ui ) -eficas_compile_ui ( desWidgetTuple6.ui ) -eficas_compile_ui ( desWidgetTuple7.ui ) -eficas_compile_ui ( desWidgetTuple8.ui ) -eficas_compile_ui ( desWidgetTuple9.ui ) -eficas_compile_ui ( desWidgetTuple10.ui ) -eficas_compile_ui ( desWidgetUniqueSDCO.ui ) -eficas_compile_ui ( desWidgetVide.ui ) - -add_custom_target ( CompileUI ALL DEPENDS ${_PYFILES} - COMMENT "Built UI files" - ) - -install ( FILES ${_PYFILES} - DESTINATION ${CMAKE_INSTALL_PREFIX}/UiQT5 - ) - -# Rules to compile TS files -SET(TSFILES eficas_en.ts - eficas_fr.ts) - -SET(QMFILES) -FOREACH(input ${TSFILES}) - GET_FILENAME_COMPONENT(base ${input} NAME_WE) - SET(output ${CMAKE_CURRENT_BINARY_DIR}/${base}.qm) - SET(QMFILES ${QMFILES} ${output}) - ADD_CUSTOM_COMMAND(OUTPUT ${output} - COMMAND ${QT_LRELEASE_EXECUTABLE} ${CMAKE_CURRENT_SOURCE_DIR}/${input} -qm ${output} - # EXECUTE_PROCESS(COMMAND \${MYLRELEASE} \${MYTSFILE} -qm \${MYFULLDIR}/\${MYOUTQMFILE}) - MAIN_DEPENDENCY ${input}) -ENDFOREACH(input ${TSFILES}) - -ADD_CUSTOM_TARGET(CompileTS ALL DEPENDS ${QMFILES}) -INSTALL(FILES ${QMFILES} DESTINATION ${CMAKE_INSTALL_PREFIX}/UiQT5) - -### Local Variables: -### mode: cmake -### End: diff --git a/UiQT5/GNUmakefile b/UiQT5/GNUmakefile deleted file mode 100644 index 70a57621..00000000 --- a/UiQT5/GNUmakefile +++ /dev/null @@ -1,63 +0,0 @@ -PYUIC = pyuic5 -QTRELEASE = lrelease -.PHONY : all -.SUFFIXES : .ui .py .ts .qm - -SHELL=bash - -ifdef EFICAS4VIMMP_ROOT -srcdir?=${EFICAS4VIMMP_ROOT} -else -srcdir?=.. -endif - -confdir?=$(srcdir)/config -tooldir=$(srcdir)/Tools - -# Règle en tête de Makefile -all : $(PY_FILES) $(QM_FILES) - -############# ENVIRONEMENT DE CONSTRUCTION VIMMP Traning ################ - -ifeq ($(findstring vimmp,$dir($(realpath GNUmakefile))),vimmp) -include $(confdir)/GNUmakefile.mdm -include $(confdir)/GNUmakefile.env -else -include $(confdir)/GNUmakefile.env -endif - -PYXB ?=pyxbgen - -################# REGLES DE CONSTRUCTION ######################## - - -PY_FILES = myMain.py desBaseWidget.py desChoixCata.py desChoixCode.py desChoixCommandes.py \ - desChoixLangue.py desRecherche.py desRechercheCatalogue.py\ - desSelectVal.py desViewTexte.py desViewRegles.py desVisu.py desWidgetCreeParam.py desWidgetCommande.py \ - desWidgetOptionnel.py Tuple2.py Tuple3.py Tuple4.py Tuple5.py Tuple6.py Tuple7.py Tuple8.py Tuple9.py\ - Tuple10.py desWidgetBloc.py desWidgetCB.py desWidgetCBIntoSug.py desWidgetCommentaire.py desWidgetDate.py \ - desWidgetFact.py desWidgetFactPlie.py desWidgetFactTableau.py desWidgetFormule.py desGroupeOptionnel.py \ - desWidgetHeure.py desWidgetInformation.py desWidgetIntoSug.py desWidgetInactif.py \ - desWidgetMatrice.py desWidgetParam.py desWidgetPlusieursBase.py desWidgetPlusieursInto.py \ - desWidgetPlusieursIntoOrdonne.py desWidgetPlusieursTuple.py desWidgetRadioButton.py \ - desWidget4a6RadioButton.py desWidgetSimpBase.py desWidgetSDCOInto.py desWidgetSimpBool.py \ - desWidgetSimpSalome.py desPBOptionnelMT.py desWidgetTableau.py\ - desWidgetSimpComplexe.py desWidgetSimpFichier.py desWidgetSimpTxt.py desWidgetTuple2.py \ - desWidgetTuple3.py desWidgetTuple4.py desWidgetTuple5.py desWidgetTuple6.py desWidgetTuple7.py \ - desWidgetTuple8.py desWidgetTuple9.py desWidgetTuple10.py desWidgetVide.py desWidgetUniqueSDCO.py \ - desWidgetPlusieursPlie.py desWidgetNiveauFact.py dateEtHeure.py - - - -QM_FILES=eficas_en.qm eficas_fr.qm - -%.py:%.ui - ${PYUIC} -x -o $@ $< - -%.qm:%.ts - ${QTRELEASE} -qm $@ $< - -all : $(PY_FILES) $(QM_FILES) -clean : - -rm -rf $(PY_FILES) *.pyc - diff --git a/UiQT5/Newdoc.tgz b/UiQT5/Newdoc.tgz deleted file mode 100644 index 1ec9456b..00000000 Binary files a/UiQT5/Newdoc.tgz and /dev/null differ diff --git a/UiQT5/Tuple10.ui b/UiQT5/Tuple10.ui deleted file mode 100644 index 102166a1..00000000 --- a/UiQT5/Tuple10.ui +++ /dev/null @@ -1,412 +0,0 @@ - - - Tuple10 - - - - 0 - 0 - 742 - 46 - - - - - 0 - 0 - - - - Form - - - - - - <html><head/><body><p><span style=" font-size:14pt;">(</span></p></body></html> - - - - - - - - 0 - 0 - - - - - 0 - 25 - - - - - 805 - 16777215 - - - - background:rgb(235,235,235); -border:0px; - - - - - false - - - - - - - <html><head/><body><p><span style=" font-size:14pt;">,</span></p></body></html> - - - - - - - - 0 - 0 - - - - - 0 - 25 - - - - - 10000 - 16777215 - - - - Qt::StrongFocus - - - background:rgb(235,235,235); -border:0px; - - - - - - - <html><head/><body><p><span style=" font-size:14pt;">,</span></p></body></html> - - - - - - - - 0 - 0 - - - - - 0 - 25 - - - - - 10000 - 16777215 - - - - Qt::StrongFocus - - - background:rgb(235,235,235); -border:0px; - - - - - - - , - - - - - - - - 0 - 0 - - - - - 0 - 25 - - - - - 10000 - 16777215 - - - - Qt::StrongFocus - - - background:rgb(235,235,235); -border:0px; - - - - - - - <html><head/><body><p><span style=" font-size:14pt;">,</span></p></body></html> - - - - - - - - 0 - 0 - - - - - 0 - 25 - - - - - 10000 - 16777215 - - - - Qt::StrongFocus - - - background:rgb(235,235,235); -border:0px; - - - - - - - <html><head/><body><p><span style=" font-size:14pt;">,</span></p></body></html> - - - - - - - - 0 - 0 - - - - - 0 - 25 - - - - - 10000 - 16777215 - - - - Qt::StrongFocus - - - background:rgb(235,235,235); -border:0px; - - - - - - - <html><head/><body><p><span style=" font-size:14pt;">,</span></p></body></html> - - - - - - - - 0 - 0 - - - - - 0 - 25 - - - - - 10000 - 16777215 - - - - Qt::StrongFocus - - - background:rgb(235,235,235); -border:0px; - - - - - - - <html><head/><body><p><span style=" font-size:14pt;">,</span></p></body></html> - - - - - - - - 0 - 0 - - - - - 0 - 25 - - - - - 10000 - 16777215 - - - - Qt::StrongFocus - - - background:rgb(235,235,235); -border:0px; - - - - - - - <html><head/><body><p><span style=" font-size:14pt;">,</span></p></body></html> - - - - - - - - 0 - 0 - - - - - 0 - 25 - - - - - 10000 - 16777215 - - - - Qt::StrongFocus - - - background:rgb(235,235,235); -border:0px; - - - - - - - - 0 - 0 - - - - - 0 - 25 - - - - - 10000 - 16777215 - - - - Qt::StrongFocus - - - background:rgb(235,235,235); -border:0px; - - - - - - - <html><head/><body><p><span style=" font-size:14pt;">)</span></p></body></html> - - - - - - - Qt::Horizontal - - - QSizePolicy::Preferred - - - - 5 - 20 - - - - - - - - - LECustomTuple - QLineEdit -
        gereListe.h
        -
        -
        - - -
        diff --git a/UiQT5/Tuple2.ui b/UiQT5/Tuple2.ui deleted file mode 100644 index fb7c2ab6..00000000 --- a/UiQT5/Tuple2.ui +++ /dev/null @@ -1,149 +0,0 @@ - - - Tuple2 - - - - 0 - 0 - 482 - 34 - - - - - 0 - 0 - - - - Form - - - - 0 - - - 0 - - - 1 - - - 0 - - - 0 - - - - - <html><head/><body><p><span style=" font-size:14pt;">(</span></p></body></html> - - - - - - - - 0 - 0 - - - - - 0 - 25 - - - - - 805 - 16777215 - - - - background:rgb(235,235,235); -border:0px; - - - - - - - - false - - - - - - - <html><head/><body><p><span style=" font-size:14pt;">,</span></p></body></html> - - - - - - - - 0 - 0 - - - - - 0 - 25 - - - - - 805 - 16777215 - - - - Qt::StrongFocus - - - background:rgb(235,235,235); -border:0px; - - - - - - - <html><head/><body><p><span style=" font-size:14pt;">)</span></p></body></html> - - - - - - - Qt::Horizontal - - - QSizePolicy::Preferred - - - - 5 - 20 - - - - - - - - - LECustomTuple - QLineEdit -
        gereListe.h
        -
        -
        - - -
        diff --git a/UiQT5/Tuple3.ui b/UiQT5/Tuple3.ui deleted file mode 100644 index 9d777483..00000000 --- a/UiQT5/Tuple3.ui +++ /dev/null @@ -1,182 +0,0 @@ - - - Tuple3 - - - - 0 - 0 - 490 - 29 - - - - - 0 - 0 - - - - Form - - - - 0 - - - 1 - - - 0 - - - 0 - - - 0 - - - - - <html><head/><body><p><span style=" font-size:14pt;">(</span></p></body></html> - - - - - - - - 0 - 0 - - - - - 0 - 25 - - - - - 805 - 16777215 - - - - background:rgb(235,235,235); -border:0px; - - - - - false - - - - - - - <html><head/><body><p><span style=" font-size:14pt;">,</span></p></body></html> - - - - - - - - 0 - 0 - - - - - 0 - 25 - - - - - 10000 - 16777215 - - - - Qt::StrongFocus - - - background:rgb(235,235,235); -border:0px; - - - - - - - <html><head/><body><p><span style=" font-size:14pt;">,</span></p></body></html> - - - - - - - - 0 - 0 - - - - - 0 - 25 - - - - - 10000 - 16777215 - - - - Qt::StrongFocus - - - background:rgb(235,235,235); -border:0px; - - - - - - - <html><head/><body><p><span style=" font-size:14pt;">)</span></p></body></html> - - - - - - - Qt::Horizontal - - - QSizePolicy::Preferred - - - - 5 - 20 - - - - - - - - - LECustomTuple - QLineEdit -
        gereListe.h
        -
        -
        - - -
        diff --git a/UiQT5/Tuple4.ui b/UiQT5/Tuple4.ui deleted file mode 100644 index d551c2b8..00000000 --- a/UiQT5/Tuple4.ui +++ /dev/null @@ -1,203 +0,0 @@ - - - Tuple4 - - - - 0 - 0 - 981 - 39 - - - - - 0 - 0 - - - - Form - - - - - - <html><head/><body><p><span style=" font-size:14pt;">(</span></p></body></html> - - - - - - - - 0 - 0 - - - - - 0 - 25 - - - - - 805 - 16777215 - - - - background:rgb(235,235,235); -border:0px; - - - - - false - - - - - - - <html><head/><body><p><span style=" font-size:14pt;">,</span></p></body></html> - - - - - - - - 0 - 0 - - - - - 0 - 25 - - - - - 10000 - 16777215 - - - - Qt::StrongFocus - - - background:rgb(235,235,235); -border:0px; - - - - - - - <html><head/><body><p><span style=" font-size:14pt;">,</span></p></body></html> - - - - - - - - 0 - 0 - - - - - 0 - 25 - - - - - 10000 - 16777215 - - - - Qt::StrongFocus - - - background:rgb(235,235,235); -border:0px; - - - - - - - <html><head/><body><p><span style=" font-size:14pt;">,</span></p></body></html> - - - - - - - - 0 - 0 - - - - - 0 - 25 - - - - - 10000 - 16777215 - - - - Qt::StrongFocus - - - background:rgb(235,235,235); -border:0px; - - - - - - - <html><head/><body><p><span style=" font-size:14pt;">)</span></p></body></html> - - - - - - - Qt::Horizontal - - - QSizePolicy::Preferred - - - - 5 - 20 - - - - - - - - - LECustomTuple - QLineEdit -
        gereListe.h
        -
        -
        - - -
        diff --git a/UiQT5/Tuple5.ui b/UiQT5/Tuple5.ui deleted file mode 100644 index b3013390..00000000 --- a/UiQT5/Tuple5.ui +++ /dev/null @@ -1,239 +0,0 @@ - - - Tuple5 - - - - 0 - 0 - 1152 - 46 - - - - - 0 - 0 - - - - Form - - - - - - <html><head/><body><p><span style=" font-size:14pt;">(</span></p></body></html> - - - - - - - - 0 - 0 - - - - - 0 - 25 - - - - - 805 - 16777215 - - - - background:rgb(235,235,235); -border:0px; - - - - - false - - - - - - - <html><head/><body><p><span style=" font-size:14pt;">,</span></p></body></html> - - - - - - - - 0 - 0 - - - - - 0 - 25 - - - - - 10000 - 16777215 - - - - Qt::StrongFocus - - - background:rgb(235,235,235); -border:0px; - - - - - - - <html><head/><body><p><span style=" font-size:14pt;">,</span></p></body></html> - - - - - - - - 0 - 0 - - - - - 0 - 25 - - - - - 10000 - 16777215 - - - - Qt::StrongFocus - - - background:rgb(235,235,235); -border:0px; - - - - - - - , - - - - - - - - 0 - 0 - - - - - 0 - 25 - - - - - 10000 - 16777215 - - - - Qt::StrongFocus - - - background:rgb(235,235,235); -border:0px; - - - - - - - <html><head/><body><p><span style=" font-size:14pt;">,</span></p></body></html> - - - - - - - - 0 - 0 - - - - - 0 - 25 - - - - - 10000 - 16777215 - - - - Qt::StrongFocus - - - background:rgb(235,235,235); -border:0px; - - - - - - - <html><head/><body><p><span style=" font-size:14pt;">)</span></p></body></html> - - - - - - - Qt::Horizontal - - - QSizePolicy::Preferred - - - - 5 - 20 - - - - - - - - - LECustomTuple - QLineEdit -
        gereListe.h
        -
        -
        - - -
        diff --git a/UiQT5/Tuple6.ui b/UiQT5/Tuple6.ui deleted file mode 100644 index 192bf670..00000000 --- a/UiQT5/Tuple6.ui +++ /dev/null @@ -1,275 +0,0 @@ - - - Tuple6 - - - - 0 - 0 - 879 - 46 - - - - - 0 - 0 - - - - Form - - - - - - <html><head/><body><p><span style=" font-size:14pt;">(</span></p></body></html> - - - - - - - - 0 - 0 - - - - - 0 - 25 - - - - - 805 - 16777215 - - - - background:rgb(235,235,235); -border:0px; - - - - - false - - - - - - - <html><head/><body><p><span style=" font-size:14pt;">,</span></p></body></html> - - - - - - - - 0 - 0 - - - - - 0 - 25 - - - - - 10000 - 16777215 - - - - Qt::StrongFocus - - - background:rgb(235,235,235); -border:0px; - - - - - - - <html><head/><body><p><span style=" font-size:14pt;">,</span></p></body></html> - - - - - - - - 0 - 0 - - - - - 0 - 25 - - - - - 10000 - 16777215 - - - - Qt::StrongFocus - - - background:rgb(235,235,235); -border:0px; - - - - - - - , - - - - - - - - 0 - 0 - - - - - 0 - 25 - - - - - 10000 - 16777215 - - - - Qt::StrongFocus - - - background:rgb(235,235,235); -border:0px; - - - - - - - <html><head/><body><p><span style=" font-size:14pt;">,</span></p></body></html> - - - - - - - - 0 - 0 - - - - - 0 - 25 - - - - - 10000 - 16777215 - - - - Qt::StrongFocus - - - background:rgb(235,235,235); -border:0px; - - - - - - - <html><head/><body><p><span style=" font-size:14pt;">,</span></p></body></html> - - - - - - - - 0 - 0 - - - - - 0 - 25 - - - - - 10000 - 16777215 - - - - Qt::StrongFocus - - - background:rgb(235,235,235); -border:0px; - - - - - - - <html><head/><body><p><span style=" font-size:14pt;">)</span></p></body></html> - - - - - - - Qt::Horizontal - - - QSizePolicy::Preferred - - - - 5 - 20 - - - - - - - - - LECustomTuple - QLineEdit -
        gereListe.h
        -
        -
        - - -
        diff --git a/UiQT5/Tuple7.ui b/UiQT5/Tuple7.ui deleted file mode 100644 index 242b5b17..00000000 --- a/UiQT5/Tuple7.ui +++ /dev/null @@ -1,311 +0,0 @@ - - - Tuple7 - - - - 0 - 0 - 1019 - 46 - - - - - 0 - 0 - - - - Form - - - - - - <html><head/><body><p><span style=" font-size:14pt;">(</span></p></body></html> - - - - - - - - 0 - 0 - - - - - 0 - 25 - - - - - 805 - 16777215 - - - - background:rgb(235,235,235); -border:0px; - - - - - false - - - - - - - <html><head/><body><p><span style=" font-size:14pt;">,</span></p></body></html> - - - - - - - - 0 - 0 - - - - - 0 - 25 - - - - - 10000 - 16777215 - - - - Qt::StrongFocus - - - background:rgb(235,235,235); -border:0px; - - - - - - - <html><head/><body><p><span style=" font-size:14pt;">,</span></p></body></html> - - - - - - - - 0 - 0 - - - - - 0 - 25 - - - - - 10000 - 16777215 - - - - Qt::StrongFocus - - - background:rgb(235,235,235); -border:0px; - - - - - - - , - - - - - - - - 0 - 0 - - - - - 0 - 25 - - - - - 10000 - 16777215 - - - - Qt::StrongFocus - - - background:rgb(235,235,235); -border:0px; - - - - - - - <html><head/><body><p><span style=" font-size:14pt;">,</span></p></body></html> - - - - - - - - 0 - 0 - - - - - 0 - 25 - - - - - 10000 - 16777215 - - - - Qt::StrongFocus - - - background:rgb(235,235,235); -border:0px; - - - - - - - <html><head/><body><p><span style=" font-size:14pt;">,</span></p></body></html> - - - - - - - - 0 - 0 - - - - - 0 - 25 - - - - - 10000 - 16777215 - - - - Qt::StrongFocus - - - background:rgb(235,235,235); -border:0px; - - - - - - - <html><head/><body><p><span style=" font-size:14pt;">,</span></p></body></html> - - - - - - - - 0 - 0 - - - - - 0 - 25 - - - - - 10000 - 16777215 - - - - Qt::StrongFocus - - - background:rgb(235,235,235); -border:0px; - - - - - - - <html><head/><body><p><span style=" font-size:14pt;">)</span></p></body></html> - - - - - - - Qt::Horizontal - - - QSizePolicy::Preferred - - - - 5 - 20 - - - - - - - - - LECustomTuple - QLineEdit -
        gereListe.h
        -
        -
        - - -
        diff --git a/UiQT5/Tuple8.ui b/UiQT5/Tuple8.ui deleted file mode 100644 index 169b2608..00000000 --- a/UiQT5/Tuple8.ui +++ /dev/null @@ -1,347 +0,0 @@ - - - Tuple8 - - - - 0 - 0 - 1159 - 46 - - - - - 0 - 0 - - - - Form - - - - - - <html><head/><body><p><span style=" font-size:14pt;">(</span></p></body></html> - - - - - - - - 0 - 0 - - - - - 0 - 25 - - - - - 805 - 16777215 - - - - background:rgb(235,235,235); -border:0px; - - - - - false - - - - - - - <html><head/><body><p><span style=" font-size:14pt;">,</span></p></body></html> - - - - - - - - 0 - 0 - - - - - 0 - 25 - - - - - 10000 - 16777215 - - - - Qt::StrongFocus - - - background:rgb(235,235,235); -border:0px; - - - - - - - <html><head/><body><p><span style=" font-size:14pt;">,</span></p></body></html> - - - - - - - - 0 - 0 - - - - - 0 - 25 - - - - - 10000 - 16777215 - - - - Qt::StrongFocus - - - background:rgb(235,235,235); -border:0px; - - - - - - - , - - - - - - - - 0 - 0 - - - - - 0 - 25 - - - - - 10000 - 16777215 - - - - Qt::StrongFocus - - - background:rgb(235,235,235); -border:0px; - - - - - - - <html><head/><body><p><span style=" font-size:14pt;">,</span></p></body></html> - - - - - - - - 0 - 0 - - - - - 0 - 25 - - - - - 10000 - 16777215 - - - - Qt::StrongFocus - - - background:rgb(235,235,235); -border:0px; - - - - - - - <html><head/><body><p><span style=" font-size:14pt;">,</span></p></body></html> - - - - - - - - 0 - 0 - - - - - 0 - 25 - - - - - 10000 - 16777215 - - - - Qt::StrongFocus - - - background:rgb(235,235,235); -border:0px; - - - - - - - <html><head/><body><p><span style=" font-size:14pt;">,</span></p></body></html> - - - - - - - - 0 - 0 - - - - - 0 - 25 - - - - - 10000 - 16777215 - - - - Qt::StrongFocus - - - background:rgb(235,235,235); -border:0px; - - - - - - - <html><head/><body><p><span style=" font-size:14pt;">,</span></p></body></html> - - - - - - - - 0 - 0 - - - - - 0 - 25 - - - - - 10000 - 16777215 - - - - Qt::StrongFocus - - - background:rgb(235,235,235); -border:0px; - - - - - - - <html><head/><body><p><span style=" font-size:14pt;">)</span></p></body></html> - - - - - - - Qt::Horizontal - - - QSizePolicy::Preferred - - - - 5 - 20 - - - - - - - - - LECustomTuple - QLineEdit -
        gereListe.h
        -
        -
        - - -
        diff --git a/UiQT5/Tuple9.ui b/UiQT5/Tuple9.ui deleted file mode 100644 index 6a7f25a1..00000000 --- a/UiQT5/Tuple9.ui +++ /dev/null @@ -1,395 +0,0 @@ - - - Tuple9 - - - - 0 - 0 - 1299 - 46 - - - - - 0 - 0 - - - - Form - - - - 0 - - - 0 - - - 0 - - - 0 - - - - - <html><head/><body><p><span style=" font-size:14pt;">(</span></p></body></html> - - - - - - - - 0 - 0 - - - - - 0 - 25 - - - - - 805 - 16777215 - - - - background:rgb(235,235,235); -border:0px; - - - - - false - - - - - - - <html><head/><body><p><span style=" font-size:14pt;">,</span></p></body></html> - - - - - - - - 0 - 0 - - - - - 0 - 25 - - - - - 10000 - 16777215 - - - - Qt::StrongFocus - - - background:rgb(235,235,235); -border:0px; - - - - - - - <html><head/><body><p><span style=" font-size:14pt;">,</span></p></body></html> - - - - - - - - 0 - 0 - - - - - 0 - 25 - - - - - 10000 - 16777215 - - - - Qt::StrongFocus - - - background:rgb(235,235,235); -border:0px; - - - - - - - , - - - - - - - - 0 - 0 - - - - - 0 - 25 - - - - - 10000 - 16777215 - - - - Qt::StrongFocus - - - background:rgb(235,235,235); -border:0px; - - - - - - - <html><head/><body><p><span style=" font-size:14pt;">,</span></p></body></html> - - - - - - - - 0 - 0 - - - - - 0 - 25 - - - - - 10000 - 16777215 - - - - Qt::StrongFocus - - - background:rgb(235,235,235); -border:0px; - - - - - - - <html><head/><body><p><span style=" font-size:14pt;">,</span></p></body></html> - - - - - - - - 0 - 0 - - - - - 0 - 25 - - - - - 10000 - 16777215 - - - - Qt::StrongFocus - - - background:rgb(235,235,235); -border:0px; - - - - - - - <html><head/><body><p><span style=" font-size:14pt;">,</span></p></body></html> - - - - - - - - 0 - 0 - - - - - 0 - 25 - - - - - 10000 - 16777215 - - - - Qt::StrongFocus - - - background:rgb(235,235,235); -border:0px; - - - - - - - <html><head/><body><p><span style=" font-size:14pt;">,</span></p></body></html> - - - - - - - - 0 - 0 - - - - - 0 - 25 - - - - - 10000 - 16777215 - - - - Qt::StrongFocus - - - background:rgb(235,235,235); -border:0px; - - - - - - - <html><head/><body><p><span style=" font-size:14pt;">,</span></p></body></html> - - - - - - - - 0 - 0 - - - - - 0 - 25 - - - - - 10000 - 16777215 - - - - Qt::StrongFocus - - - background:rgb(235,235,235); -border:0px; - - - - - - - <html><head/><body><p><span style=" font-size:14pt;">)</span></p></body></html> - - - - - - - Qt::Horizontal - - - QSizePolicy::Preferred - - - - 5 - 20 - - - - - - - - - LECustomTuple - QLineEdit -
        gereListe.h
        -
        -
        - - -
        diff --git a/UiQT5/__init__.py b/UiQT5/__init__.py deleted file mode 100644 index 57dacc3f..00000000 --- a/UiQT5/__init__.py +++ /dev/null @@ -1,23 +0,0 @@ -# -*- coding: utf-8 -*- -# Copyright (C) 2007-2021 EDF R&D -# -# 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 -# -""" - Ce package contient les fonctionnalites necessaires - pour l'editeur graphique QT -""" diff --git a/UiQT5/dateEtHeure.ui b/UiQT5/dateEtHeure.ui deleted file mode 100644 index 0be453c5..00000000 --- a/UiQT5/dateEtHeure.ui +++ /dev/null @@ -1,98 +0,0 @@ - - - Form - - - - 0 - 0 - 281 - 51 - - - - Saisie date et heure - - - - - - - - - 0 - 0 - - - - - 101 - 31 - - - - - 101 - 31 - - - - Entrer la date - - - <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> -<html><head><meta name="qrichtext" content="1" /><style type="text/css"> -p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Latin Modern Sans'; font-size:11pt; font-weight:400; font-style:normal;"> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">18/12/17</p></body></html> - - - - - - - Qt::Horizontal - - - QSizePolicy::Fixed - - - - 13 - 20 - - - - - - - - - 0 - 0 - - - - - 101 - 31 - - - - - 101 - 31 - - - - Entrer l'heure - - - - - - - - - - diff --git a/UiQT5/desBaseWidget.ui b/UiQT5/desBaseWidget.ui deleted file mode 100644 index dc7c0593..00000000 --- a/UiQT5/desBaseWidget.ui +++ /dev/null @@ -1,132 +0,0 @@ - - - baseWidget - - - - 0 - 0 - 1038 - 557 - - - - - 0 - 0 - - - - - 0 - 0 - - - - DMacro - - - - - - - 0 - - - 0 - - - 0 - - - 0 - - - - - Qt::Horizontal - - - 3 - - - - background:rgb(247,247,247); - - - - - - 0 - - - 0 - - - 0 - - - 0 - - - - - - - 0 - - - 0 - - - 0 - - - 0 - - - - - Qt::Vertical - - - - 20 - 40 - - - - - - - - - - - - - 0 - 0 - - - - - 0 - 0 - - - - - - - - - - - - - - qPixmapFromMimeSource - - - diff --git a/UiQT5/desChoixCata.ui b/UiQT5/desChoixCata.ui deleted file mode 100644 index 39a16c5a..00000000 --- a/UiQT5/desChoixCata.ui +++ /dev/null @@ -1,201 +0,0 @@ - - - DChoixCata - - - - 0 - 0 - 466 - 206 - - - - Choix d'une version du code Aster - - - true - - - - - - - - - 0 - 0 - - - - <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> -<html><head><meta name="qrichtext" content="1" /><style type="text/css"> -p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal;"> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:11pt;">2 versions sont disponibles</span></p></body></html> - - - false - - - - - - - Qt::Horizontal - - - - 40 - 20 - - - - - - - - - - Qt::Vertical - - - - 20 - 45 - - - - - - - - true - - - - 400 - 41 - - - - - 150 - 16777215 - - - - - - - - Qt::Vertical - - - - 20 - 45 - - - - - - - - - - Qt::Horizontal - - - - 40 - 20 - - - - - - - - - 140 - 40 - - - - - - - background-color:rgb(104,110,149); -color :white; -border-radius : 12px - - - - &Cancel - - - - - - true - - - - - - - Qt::Horizontal - - - QSizePolicy::Fixed - - - - 40 - 20 - - - - - - - - - 140 - 40 - - - - Validate choice - - - background-color:rgb(104,110,149); -color :white; -border-radius : 12px - - - - - &OK - - - - - - true - - - true - - - - - - - - - qPixmapFromMimeSource - - - diff --git a/UiQT5/desChoixCode.ui b/UiQT5/desChoixCode.ui deleted file mode 100644 index 76f9de74..00000000 --- a/UiQT5/desChoixCode.ui +++ /dev/null @@ -1,101 +0,0 @@ - - - ChoixCode - - - - 0 - 0 - 205 - 96 - - - - Choix du Code - - - - 0 - - - 0 - - - - - - 0 - 0 - - - - - - - - 0 - - - - - Qt::Vertical - - - - 20 - 20 - - - - - - - - - - - Qt::Horizontal - - - QDialogButtonBox::Cancel|QDialogButtonBox::Ok - - - - - - - - - buttonBox - accepted() - ChoixCode - accept() - - - 248 - 254 - - - 157 - 274 - - - - - buttonBox - rejected() - ChoixCode - reject() - - - 316 - 260 - - - 286 - 274 - - - - - diff --git a/UiQT5/desChoixCommandes.ui b/UiQT5/desChoixCommandes.ui deleted file mode 100644 index f6dfb43e..00000000 --- a/UiQT5/desChoixCommandes.ui +++ /dev/null @@ -1,469 +0,0 @@ - - - ChoixCommandes - - - - 0 - 0 - 1244 - 262 - - - - - 0 - 0 - - - - - 505 - 0 - - - - DMacro - - - background-color : rgb(248,247,246) - - - - 0 - - - 2 - - - 2 - - - 2 - - - 2 - - - - - - 0 - 0 - - - - - 0 - 130 - - - - - 16777215 - 130 - - - - background-color:rgb(224,223,222) - - - QFrame::NoFrame - - - QFrame::Raised - - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - - - 0 - - - QLayout::SetFixedSize - - - - - - 0 - 0 - - - - <html><head/><body><p align="center"><span style=" text-decoration: underline;">Affichage</span></p></body></html> - - - - - - - affiche les commandes par ordre alphabetique - - - Alphabetique - - - - - - - affiche les commandes selon les thèmes - - - Ordre de la modélisation - - - - - - - affiche les commandes selon les thèmes - - - Par Groupe - - - - - - - - - Qt::Horizontal - - - - 109 - 20 - - - - - - - - - - - 0 - 0 - - - - - 141 - 25 - - - - - 16777215 - 25 - - - - selectionne les mots qui CONTIENNENT l expression - - - QFrame::Box - - - QFrame::Raised - - - 1 - - - <html><head/><body><p align="center">Filtre Commande</p></body></html> - - - false - - - - - - - Qt::Vertical - - - QSizePolicy::Fixed - - - - 20 - 13 - - - - - - - - - 0 - 0 - - - - - 195 - 30 - - - - filter commands - - - background-color : rgb(248,247,246) - - - false - - - - - - - - 0 - 0 - - - - Sensible à la casse - - - false - - - - - - - Qt::Horizontal - - - - 40 - 20 - - - - - - - - - 0 - 0 - - - - - 100 - 30 - - - - - 70 - 40 - - - - ré-affiche toutes les commandes - - - background-color:rgb(104,110,149); -color :white; -border-radius : 12px - - - - Effacer - - - - - - - - - Qt::Horizontal - - - - 108 - 20 - - - - - - - - - - - - - 21 - 31 - - - - - 21 - 31 - - - - Qt::ClickFocus - - - affiche les régles de validité - - - border : 0px - - - ... - - - - ../Editeur/icons/lettreRblanc30.png../Editeur/icons/lettreRblanc30.png - - - - 21 - 31 - - - - - - - - Règles de construction - - - - - - - - - Qt::Vertical - - - - 168 - 13 - - - - - - - - - - Qt::Horizontal - - - - 173 - 20 - - - - - - - - - - - - 0 - 0 - - - - - - - QFrame::NoFrame - - - Qt::ScrollBarAsNeeded - - - true - - - - - 0 - 0 - 1240 - 128 - - - - - 0 - 0 - - - - - 0 - - - 0 - - - 2 - - - 0 - - - 0 - - - - - 0 - - - - - - - - - - - qPixmapFromMimeSource - - - diff --git a/UiQT5/desChoixLangue.ui b/UiQT5/desChoixLangue.ui deleted file mode 100644 index 7beb2787..00000000 --- a/UiQT5/desChoixLangue.ui +++ /dev/null @@ -1,125 +0,0 @@ - - - ChoixLangue - - - - 0 - 0 - 191 - 119 - - - - - 0 - 0 - - - - Langue - - - - - - - 0 - 0 - - - - - - - - 0 - - - 0 - - - 0 - - - 4 - - - 0 - - - - - Français - - - - - - - English - - - - - rbEnglish - rbFrancais - - - - - - QLayout::SetFixedSize - - - - - Qt::Horizontal - - - - 20 - 20 - - - - - - - - - 60 - 30 - - - - Validate choice - - - background-color:rgb(104,110,149); -color :white; -border-radius : 12px - - - - - &OK - - - - - - true - - - true - - - - - - - - - - diff --git a/UiQT5/desGroupeOptionnel.ui b/UiQT5/desGroupeOptionnel.ui deleted file mode 100644 index 58580df9..00000000 --- a/UiQT5/desGroupeOptionnel.ui +++ /dev/null @@ -1,148 +0,0 @@ - - - groupeOptionnel - - - - 0 - 0 - 420 - 363 - - - - Form - - - - 2 - - - 1 - - - 1 - - - - - - 0 - 0 - - - - QFrame::Box - - - QFrame::Raised - - - - - - - 0 - 0 - - - - - 0 - 31 - - - - QFrame::NoFrame - - - QFrame::Raised - - - <html><head/><body><p><span style=" color:#0000ff;">commande </span></p></body></html> - - - - - - - Qt::Horizontal - - - - 1037 - 20 - - - - - - - - - - - - 0 - 0 - - - - background : rgb(247,247,247) - - - QFrame::NoFrame - - - 0 - - - true - - - - - 0 - 0 - 402 - 306 - - - - - 0 - 0 - - - - - 2 - - - 2 - - - 2 - - - - - Qt::Vertical - - - - 20 - 75 - - - - - - - - - - - - - diff --git a/UiQT5/desPBOptionnelMT.ui b/UiQT5/desPBOptionnelMT.ui deleted file mode 100644 index 66881fca..00000000 --- a/UiQT5/desPBOptionnelMT.ui +++ /dev/null @@ -1,79 +0,0 @@ - - - customPB - - - - 0 - 0 - 218 - 84 - - - - Form - - - - - - Qt::Horizontal - - - - 17 - 20 - - - - - - - - - 1 - 0 - - - - - 0 - 0 - - - - - 200 - 33 - - - - background-color : rgb(66, 165, 238); -border-radius : 10px; -border-width : 30 px; -border-color : beige; - - - - PushButton - - - - - - - Qt::Horizontal - - - - 17 - 20 - - - - - - - - - diff --git a/UiQT5/desRecherche.ui b/UiQT5/desRecherche.ui deleted file mode 100644 index a0a44f98..00000000 --- a/UiQT5/desRecherche.ui +++ /dev/null @@ -1,75 +0,0 @@ - - - desRecherche - - - - 0 - 0 - 525 - 55 - - - - Rechercher dans le JDC - - - Next - - - - - 0 - 10 - 411 - 41 - - - - - 0 - 0 - - - - background:rgb(240,240,240) - - - - - true - - - - 420 - 10 - 101 - 41 - - - - - 0 - 0 - - - - background-color:rgb(104,110,149); -color :white; -border-radius : 12px - - - - Suivant - - - false - - - true - - - - - - diff --git a/UiQT5/desRechercheCatalogue.ui b/UiQT5/desRechercheCatalogue.ui deleted file mode 100644 index 1b004114..00000000 --- a/UiQT5/desRechercheCatalogue.ui +++ /dev/null @@ -1,85 +0,0 @@ - - - desRechercheCatalogue - - - - 0 - 0 - 817 - 359 - - - - Rechercher dans le Catalogue - - - - - - - - - 105 - 0 - - - - - 105 - 22 - - - - Mot à chercher - - - - - - - - - - - - Généalogie - - - - - - - - 419 - 91 - - - - - - - - - - Documentation - - - - - - - - 419 - 101 - - - - - - - - - - - diff --git a/UiQT5/desSelectVal.ui b/UiQT5/desSelectVal.ui deleted file mode 100644 index 125bae0e..00000000 --- a/UiQT5/desSelectVal.ui +++ /dev/null @@ -1,268 +0,0 @@ - - - DSelVal - - - - 0 - 0 - 635 - 744 - - - - - 0 - 0 - - - - Sélection de valeurs - - - background:rgb(235,235,235) - - - - 0 - - - 0 - - - - - - 0 - 400 - - - - background:rgb(250,250,250) - - - - - - - Qt::Vertical - - - QSizePolicy::Fixed - - - - 20 - 10 - - - - - - - - - - - 0 - 0 - - - - - 280 - 150 - - - - Separateur - - - - 15 - - - 0 - - - - - Qt::Vertical - - - QSizePolicy::Fixed - - - - 20 - 7 - - - - - - - - 0 - - - QLayout::SetFixedSize - - - - - - 0 - 0 - - - - espace - - - true - - - - - - - virgule - - - - - - - point-virgule - - - - - - - - - - - - Qt::Horizontal - - - - 40 - 20 - - - - - - - - 0 - - - - - - 23 - 43 - - - - Qt::Vertical - - - QSizePolicy::Fixed - - - - 20 - 40 - - - - - - - - - 0 - 0 - - - - - 200 - 40 - - - - - 200 - 40 - - - - background-color:rgb(104,110,149); -color :white; -border-radius : 12px - - - - Importer Tout - - - - - - - - 0 - 0 - - - - - 200 - 40 - - - - - 200 - 40 - - - - background-color:rgb(104,110,149); -color :white; -border-radius : 12px - - - - Ajouter Selection - - - - - - - - - - - - 16777215 - 31 - - - - - - - - qPixmapFromMimeSource - - - diff --git a/UiQT5/desViewRegles.ui b/UiQT5/desViewRegles.ui deleted file mode 100644 index 1742aa92..00000000 --- a/UiQT5/desViewRegles.ui +++ /dev/null @@ -1,72 +0,0 @@ - - - viewRegles - - - - 0 - 0 - 283 - 250 - - - - Dialog - - - - - - Fermer - - - - - - - QFrame::NoFrame - - - true - - - - - 0 - 0 - 265 - 194 - - - - - 0 - - - 0 - - - - - - - - - - - - Qt::Horizontal - - - - 171 - 20 - - - - - - - - - diff --git a/UiQT5/desViewTexte.ui b/UiQT5/desViewTexte.ui deleted file mode 100644 index 6cfa950e..00000000 --- a/UiQT5/desViewTexte.ui +++ /dev/null @@ -1,53 +0,0 @@ - - dView - - - - 0 - 0 - 400 - 322 - - - - Dialog - - - - - - - - - Qt::Horizontal - - - - 209 - 20 - - - - - - - - Fermer - - - - - - - Sauver - - - - - view - bclose - bsave - - - - diff --git a/UiQT5/desVisu.ui b/UiQT5/desVisu.ui deleted file mode 100644 index 9c013397..00000000 --- a/UiQT5/desVisu.ui +++ /dev/null @@ -1,39 +0,0 @@ - - - DVisu - - - - 0 - 0 - 501 - 61 - - - - Visualisation Include Materiau - - - - 0 - - - 0 - - - - - QFrame::NoFrame - - - QFrame::Plain - - - - - - - qPixmapFromMimeSource - - - diff --git a/UiQT5/desWidget4a6RadioButton.ui b/UiQT5/desWidget4a6RadioButton.ui deleted file mode 100644 index 8a0f4d8b..00000000 --- a/UiQT5/desWidget4a6RadioButton.ui +++ /dev/null @@ -1,388 +0,0 @@ - - - Widget4a6RadioButton - - - - 0 - 0 - 949 - 77 - - - - - 0 - 0 - - - - - 0 - 0 - - - - - 16777215 - 160 - - - - Form - - - - 0 - - - 0 - - - 2 - - - 0 - - - 2 - - - - - 0 - - - - - 0 - - - QLayout::SetFixedSize - - - - - Qt::Horizontal - - - QSizePolicy::Fixed - - - - 21 - 20 - - - - - - - - - 21 - 25 - - - - - 21 - 25 - - - - Qt::ClickFocus - - - Affiche le rapport de validation du mot-clef - - - border : 0px - - - ... - - - - ../Editeur/icons/ast-green-ball.png../Editeur/icons/ast-green-ball.png - - - - 25 - 25 - - - - - - - - - - Qt::Vertical - - - - 20 - 5 - - - - - - - - - - - 0 - 0 - - - - - 300 - 25 - - - - - 178 - 16777215 - - - - QFrame::NoFrame - - - <html><head/><body><p>aaa</p><p>dqsklmdqm</p></body></html> - - - false - - - Qt::AlignLeading|Qt::AlignLeft|Qt::AlignTop - - - - - - - - 0 - 0 - - - - QFrame::Box - - - - 1 - - - 0 - - - 1 - - - 0 - - - 1 - - - 0 - - - - - - 0 - 0 - - - - RadioButton - - - - - - - - 0 - 0 - - - - RadioButton - - - - - - - - 0 - 0 - - - - RadioButton - - - - - - - - 0 - 0 - - - - RadioButton - - - - - - - - 0 - 0 - - - - RadioButton - - - - - - - - 0 - 0 - - - - RadioButton - - - - - - - - - - - - Qt::Horizontal - - - QSizePolicy::Maximum - - - - 10 - 20 - - - - - - - - Qt::Vertical - - - - 17 - 40 - - - - - - - - - - - - - 25 - 25 - - - - - 25 - 25 - - - - Qt::StrongFocus - - - Détruit le mot-clef - - - border : 0px - - - ... - - - - ../Editeur/icons/deleteRond.png../Editeur/icons/deleteRond.png - - - - 25 - 25 - - - - - - - - Qt::Vertical - - - - 20 - 40 - - - - - - - - - - - MonBoutonValide - QToolButton -
        monBoutonValide.h
        -
        - - MonLabelClic - QLabel -
        monLabelClic.h
        -
        -
        - - radioButton_1 - radioButton_4 - RBPoubelle - - - -
        diff --git a/UiQT5/desWidgetBloc.ui b/UiQT5/desWidgetBloc.ui deleted file mode 100644 index 9094f6a9..00000000 --- a/UiQT5/desWidgetBloc.ui +++ /dev/null @@ -1,45 +0,0 @@ - - - WidgetBloc - - - - 0 - 0 - 1033 - 25 - - - - Form - - - QGroupBox { - border: 1px solid gray; - border-radius: 5px; - margin-top: 1ex; - } - - QGroupBox::title { - padding: 0 3px; - } - - - - 0 - - - - - 0 - - - 5 - - - - - - - - diff --git a/UiQT5/desWidgetCB.ui b/UiQT5/desWidgetCB.ui deleted file mode 100644 index e1795a36..00000000 --- a/UiQT5/desWidgetCB.ui +++ /dev/null @@ -1,314 +0,0 @@ - - - WidgetCB - - - - 0 - 0 - 809 - 56 - - - - - 0 - 0 - - - - - 0 - 0 - - - - - 1493 - 95 - - - - Form - - - QComboBox{combobox-popup:0;}; - - - - 0 - - - 0 - - - 2 - - - 0 - - - 1 - - - - - 0 - - - - - 0 - - - QLayout::SetFixedSize - - - - - Qt::Horizontal - - - QSizePolicy::Fixed - - - - 21 - 20 - - - - - - - - - 21 - 25 - - - - - 21 - 25 - - - - Qt::ClickFocus - - - Affiche le rapport de validation du mot-clef - - - border : 0px - - - ... - - - - ../Editeur/icons/ast-green-ball.png../Editeur/icons/ast-green-ball.png - - - - 25 - 25 - - - - - - - - - - Qt::Vertical - - - - 20 - 5 - - - - - - - - - - - 0 - 0 - - - - - 300 - 25 - - - - - 178 - 16777215 - - - - QFrame::NoFrame - - - <html><head/><body><p>aaa</p><p>dqsklmdqm</p></body></html> - - - false - - - Qt::AlignLeading|Qt::AlignLeft|Qt::AlignTop - - - - - - - 0 - - - - - 0 - - - - - - 0 - 0 - - - - - 361 - 25 - - - - - - - - - - QComboBox { - background:rgb(235,235,235); - } -/*QComboBox: on { - font : italic - } -background:rgb(235,235,235); -border:0px; - - -QComboBox:!editable:on, QComboBox::drop-down:editable:on { -background: black; - font : italic 14px - } -QComboBox:on { - font : italic 20px; - background: red ; -}/* - - - - 100 - - - false - - - - - - - Qt::Horizontal - - - QSizePolicy::Expanding - - - - 301 - 20 - - - - - - - - - 21 - 25 - - - - - 21 - 25 - - - - Détruit le mot-clef - - - border : 0px - - - ... - - - - ../Editeur/icons/deleteRond.png../Editeur/icons/deleteRond.png - - - - 25 - 25 - - - - - - - - - - Qt::Vertical - - - - 20 - 5 - - - - - - - - - - - MonBoutonValide - QToolButton -
        monBoutonValide.h
        -
        - - MonLabelClic - QLabel -
        monLabelClic.h
        -
        -
        - - -
        diff --git a/UiQT5/desWidgetCBIntoSug.ui b/UiQT5/desWidgetCBIntoSug.ui deleted file mode 100644 index 8c4323e3..00000000 --- a/UiQT5/desWidgetCBIntoSug.ui +++ /dev/null @@ -1,343 +0,0 @@ - - - WidgetCBIntoSug - - - - 0 - 0 - 1104 - 102 - - - - - 0 - 0 - - - - - 0 - 0 - - - - - 1493 - 150 - - - - Form - - - QComboBox{combobox-popup:0;}; - - - - 0 - - - 0 - - - 4 - - - 0 - - - 9 - - - - - 0 - - - - - 0 - - - QLayout::SetFixedSize - - - - - Qt::Horizontal - - - QSizePolicy::Fixed - - - - 21 - 20 - - - - - - - - - 21 - 25 - - - - - 21 - 25 - - - - Qt::ClickFocus - - - Affiche le rapport de validation du mot-clef - - - border : 0px - - - ... - - - - ../Editeur/icons/ast-green-ball.png../Editeur/icons/ast-green-ball.png - - - - 25 - 25 - - - - - - - - - - Qt::Vertical - - - - 20 - 5 - - - - - - - - - - - 0 - 0 - - - - - 300 - 25 - - - - - 178 - 16777215 - - - - QFrame::NoFrame - - - <html><head/><body><p>aaa</p><p>dqsklmdqm</p></body></html> - - - false - - - Qt::AlignLeading|Qt::AlignLeft|Qt::AlignTop - - - - - - - - - background:rgb(221, 221, 166) - - - QFrame::Box - - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - - - - - - Valeurs hors liste - la valeur saisie sera ajoutée à la liste - - - - - - - background : white - - - - - - - - - - - 0 - - - - - - 0 - 0 - - - - - 361 - 32 - - - - - - - - - - QComboBox { - background:rgb(235,235,235); - } -/*QComboBox: on { - font : italic - } -background:rgb(235,235,235); -border:0px; - - -QComboBox:!editable:on, QComboBox::drop-down:editable:on { -background: black; - font : italic 14px - } -QComboBox:on { - font : italic 20px; - background: red ; -}/* - - - - 100 - - - false - - - - - - - Qt::Horizontal - - - QSizePolicy::Expanding - - - - 301 - 20 - - - - - - - - - 21 - 25 - - - - - 21 - 25 - - - - Détruit le mot-clef - - - border : 0px - - - ... - - - - ../Editeur/icons/deleteRond.png../Editeur/icons/deleteRond.png - - - - 25 - 25 - - - - - - - - - - - - - MonBoutonValide - QToolButton -
        monBoutonValide.h
        -
        - - MonLabelClic - QLabel -
        monLabelClic.h
        -
        -
        - - -
        diff --git a/UiQT5/desWidgetCommande.ui b/UiQT5/desWidgetCommande.ui deleted file mode 100644 index 9d4bfd03..00000000 --- a/UiQT5/desWidgetCommande.ui +++ /dev/null @@ -1,670 +0,0 @@ - - - WidgetCommande - - - - 0 - 0 - 1110 - 731 - - - - - 0 - 0 - - - - - 0 - 0 - - - - DCommandeUnique - - - - - - - - - - 0 - - - 0 - - - - - - 0 - 0 - - - - - 0 - 8 - - - - - 16777215 - 75 - - - - background-color:rgb(224,223,222) - - - - 0 - - - 0 - - - - - 0 - - - - - - - Qt::Horizontal - - - QSizePolicy::Fixed - - - - 13 - 20 - - - - - - - - - 17 - 31 - - - - - 21 - 31 - - - - Qt::ClickFocus - - - Affiche le rapport de validité de la commande - - - border : 0px - - - ... - - - - ../../../.designer/Editeur/icons/ast-green-ball.png../../../.designer/Editeur/icons/ast-green-ball.png - - - - 21 - 31 - - - - - - - - Qt::Horizontal - - - QSizePolicy::Fixed - - - - 13 - 20 - - - - - - - - - 0 - 0 - - - - - 150 - 31 - - - - QFrame::NoFrame - - - QFrame::Raised - - - <html><head/><body><p><span style=" color:#0000ff;">commande </span></p></body></html> - - - - - - - - 0 - 0 - - - - - 0 - 40 - - - - - 16777215 - 200 - - - - Nom de l'objet. Seuls, les objets valides peuvent être nommés - - - QLineEdit { - border: 2px solid gray; - border-radius: 10px; - padding: 0 8px; - background: darkgray; - } -QLineEdit:disabled -{ - background: lightgray; -} - - - - false - - - - - - - Qt::Horizontal - - - - 18 - 17 - - - - - - - - - 21 - 31 - - - - - 21 - 31 - - - - Qt::ClickFocus - - - Lance un script associé à la commande - - - border : 0px - - - ... - - - - ../../../.designer/Editeur/icons/roue.png../../../.designer/Editeur/icons/roue.png - - - - 21 - 31 - - - - - - - - - 0 - 0 - - - - - 150 - 38 - - - - true - - - - - - - - 21 - 31 - - - - - 31 - 31 - - - - Qt::ClickFocus - - - affiche les régles de validité - - - border : 0px - - - ... - - - - ../../../.designer/Editeur/icons/lettreRblanc30.png../../../.designer/Editeur/icons/lettreRblanc30.png - - - - 21 - 31 - - - - - - - - - 21 - 31 - - - - - 31 - 31 - - - - Qt::ClickFocus - - - ouvre un navigateur sur l'aide contextuelle - - - border : 0px - - - ... - - - - ../../../.designer/Editeur/icons/point-interrogation.png../../../.designer/Editeur/icons/point-interrogation.png - - - - 21 - 31 - - - - - - - - Qt::Horizontal - - - QSizePolicy::Fixed - - - - 13 - 20 - - - - - - - - - 21 - 31 - - - - - 21 - 31 - - - - Qt::ClickFocus - - - Détruit la commande - - - border : 0px - - - ... - - - - ../../../.designer/Editeur/icons/deleteRond.png../../../.designer/Editeur/icons/deleteRond.png - - - - 21 - 31 - - - - - - - - - - - 0 - 0 - - - - <html><head/><body><p><br/></p></body></html> - - - - - - - - - 1 - - - QLayout::SetFixedSize - - - - - - 0 - 0 - - - - - 160 - 30 - - - - Qt::ClickFocus - - - Affiche les commandes possibles - - - background-color:rgb(104,110,149); -color :white; -border-radius : 12px - - - - &Commandes - - - Shift+A, Alt+A, Alt+A, Alt+A - - - true - - - true - - - - - - - 1 - - - - - - 0 - 0 - - - - - 60 - 24 - - - - - 60 - 24 - - - - Qt::ClickFocus - - - Affiche le formulaire de la commande précédente - - - background-color:rgb(104,110,149); -color :white; -border-radius : 12px - - - - << - - - Shift+A, Alt+A, Alt+A, Alt+A - - - true - - - true - - - - - - - - 0 - 0 - - - - - 60 - 24 - - - - - 60 - 24 - - - - Qt::ClickFocus - - - Affiche le formulaire de la commande suivante - - - background-color:rgb(104,110,149); -color :white; -border-radius : 12px - - - - >> - - - Shift+A, Alt+A, Alt+A, Alt+A - - - true - - - true - - - - - - - - - Qt::Vertical - - - - 20 - 2 - - - - - - - - - - - - - - 0 - 81 - - - - background : rgb(247,247,247) - - - - - - QFrame::NoFrame - - - Qt::ScrollBarAsNeeded - - - Qt::ScrollBarAsNeeded - - - true - - - - - 0 - 0 - 1110 - 656 - - - - - 0 - - - 0 - - - - - 0 - - - - - - - - - - - qPixmapFromMimeSource - - - MonBoutonValide - QToolButton -
        monBoutonValide.h
        -
        - - MonLabelClic - QLabel -
        monLabelClic.h
        -
        -
        - - LENom - - - -
        diff --git a/UiQT5/desWidgetCommentaire.ui b/UiQT5/desWidgetCommentaire.ui deleted file mode 100644 index 6a452e8b..00000000 --- a/UiQT5/desWidgetCommentaire.ui +++ /dev/null @@ -1,540 +0,0 @@ - - - WidgetCommentaire - - - - 0 - 0 - 847 - 453 - - - - - 0 - 0 - - - - - 0 - 0 - - - - DCommandeUnique - - - - - - background-color : rgb(224,223,222); -font : 'times' 9px - - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - - - - 0 - 0 - - - - - 0 - 130 - - - - - 16777215 - 130 - - - - background-color:rgb(224,223,222) - - - QFrame::NoFrame - - - QFrame::Raised - - - - 0 - - - 0 - - - 0 - - - 0 - - - - - 6 - - - - - - - - 0 - 0 - - - - QFrame::Box - - - QFrame::Raised - - - - 0 - - - - - Qt::Horizontal - - - QSizePolicy::Fixed - - - - 13 - 20 - - - - - - - - - 17 - 31 - - - - - 21 - 31 - - - - Qt::ClickFocus - - - Affiche le rapport de validité de la commande - - - border : 0px - - - ... - - - - ../Editeur/icons/ast-green-ball.png../Editeur/icons/ast-green-ball.png - - - - 21 - 31 - - - - - - - - Qt::Horizontal - - - QSizePolicy::Fixed - - - - 13 - 20 - - - - - - - - - 0 - 0 - - - - - 150 - 31 - - - - QFrame::NoFrame - - - QFrame::Raised - - - <html><head/><body><p>Commentaire</p></body></html> - - - - - - - Qt::Horizontal - - - QSizePolicy::Maximum - - - - 2 - 40 - - - - - - - - Qt::Horizontal - - - QSizePolicy::Ignored - - - - 2 - 40 - - - - - - - - Qt::Horizontal - - - QSizePolicy::Fixed - - - - 13 - 20 - - - - - - - - - 21 - 31 - - - - - 21 - 31 - - - - Qt::ClickFocus - - - Détruit la commande - - - border : 0px - - - ... - - - - ../Editeur/icons/deleteRond.png../Editeur/icons/deleteRond.png - - - - 21 - 31 - - - - - - - - - - - - - 8 - - - 15 - - - - - - 0 - 0 - - - - - 160 - 31 - - - - Qt::ClickFocus - - - Affiche les commandes possibles - - - background-color:rgb(104,110,149); -color :white; -border-radius : 12px - - - - &Commandes - - - Shift+A, Alt+A, Alt+A, Alt+A - - - true - - - true - - - - - - - - - - 0 - 0 - - - - - 60 - 24 - - - - - 60 - 24 - - - - Qt::ClickFocus - - - Affiche le formulaire de la commande précédente - - - background-color:rgb(104,110,149); -color :white; -border-radius : 12px - - - - << - - - Shift+A, Alt+A, Alt+A, Alt+A - - - true - - - true - - - - - - - - 0 - 0 - - - - - 60 - 24 - - - - - 60 - 24 - - - - Qt::ClickFocus - - - Affiche le formulaire de la commande suivante - - - background-color:rgb(104,110,149); -color :white; -border-radius : 12px - - - - >> - - - Shift+A, Alt+A, Alt+A, Alt+A - - - true - - - true - - - - - - - - - - - - - - - - - 0 - 0 - - - - - - - QFrame::NoFrame - - - Qt::ScrollBarAsNeeded - - - true - - - - - 0 - 0 - 847 - 323 - - - - - 0 - - - 4 - - - 0 - - - 4 - - - 0 - - - - - background : rgb(247,247,247) - - - - - - - Qt::Vertical - - - - 20 - 32 - - - - - - - - - - - - qPixmapFromMimeSource - - - MonBoutonValide - QToolButton -
        monBoutonValide.h
        -
        -
        - - scrollAreaCommandes - - - -
        diff --git a/UiQT5/desWidgetCreeParam.ui b/UiQT5/desWidgetCreeParam.ui deleted file mode 100644 index cbcdb1c3..00000000 --- a/UiQT5/desWidgetCreeParam.ui +++ /dev/null @@ -1,245 +0,0 @@ - - - desWidgetCreeParam - - - - 0 - 0 - 728 - 530 - - - - Gestion des Paramètres - - - - - - - 701 - 291 - - - - QFrame::NoFrame - - - true - - - - - 0 - 0 - 710 - 349 - - - - - 0 - 0 - - - - - 0 - - - 0 - - - - - - 0 - 0 - - - - - 701 - 291 - - - - alternate-background-color:rgb(235,235,235); -background-color: rgb(247,247,247); - - - - QFrame::NoFrame - - - QFrame::Raised - - - true - - - QAbstractItemView::SingleSelection - - - - - - - - - - - Qt::Vertical - - - QSizePolicy::Fixed - - - - 20 - 20 - - - - - - - - - 701 - 131 - - - - background:rgb(247,247,247) - - - QFrame::StyledPanel - - - QFrame::Raised - - - - - 30 - 40 - 531 - 76 - - - - - 12 - - - - - - 231 - 31 - - - - background:rgb(235,235,235); -border:0px; - - - false - - - - - - - <html><head/><body><p>Nom: </p></body></html> - - - false - - - - - - - - 231 - 31 - - - - background:rgb(235,235,235); -border:0px; - - - false - - - - - - - <html><head/><body><p>Valeur: </p></body></html> - - - false - - - - - - - - - 30 - 10 - 531 - 22 - - - - - - - - 0 - 0 - - - - <html><head/><body><p><span style=" text-decoration: underline;">Créer un paramètre</span></p></body></html> - - - false - - - - - - - Qt::Horizontal - - - - 288 - 20 - - - - - - - - - - - - lineEditNom - lineEditVal - scrollArea - LBParam - - - - diff --git a/UiQT5/desWidgetDate.ui b/UiQT5/desWidgetDate.ui deleted file mode 100644 index 873ab4f7..00000000 --- a/UiQT5/desWidgetDate.ui +++ /dev/null @@ -1,283 +0,0 @@ - - - WidgetDate - - - - 0 - 0 - 736 - 62 - - - - - 0 - 0 - - - - - 0 - 0 - - - - Form - - - - 0 - - - 0 - - - 1 - - - 0 - - - 1 - - - - - 0 - - - - - 0 - - - QLayout::SetFixedSize - - - - - Qt::Horizontal - - - QSizePolicy::Fixed - - - - 21 - 20 - - - - - - - - - 21 - 25 - - - - - 21 - 25 - - - - Qt::ClickFocus - - - Affiche le rapport de validation du mot-clef - - - border : 0px - - - ... - - - - ../Editeur/icons/ast-green-ball.png../Editeur/icons/ast-green-ball.png - - - - 25 - 25 - - - - - - - - - - Qt::Vertical - - - - 20 - 5 - - - - - - - - - - - 0 - 0 - - - - - 300 - 25 - - - - - 178 - 16777215 - - - - QFrame::NoFrame - - - <html><head/><body><p>aaa</p><p>dqsklmdqm</p></body></html> - - - false - - - Qt::AlignLeading|Qt::AlignLeft|Qt::AlignTop - - - - - - - - - - - - - - - - - - Qt::Horizontal - - - QSizePolicy::Preferred - - - - 20 - 20 - - - - - - - - - - - Qt::Horizontal - - - - 411 - 20 - - - - - - - - - - - - - - - - 21 - 25 - - - - - 21 - 25 - - - - Qt::ClickFocus - - - Détruit le mot-clef - - - border : 0px - - - ... - - - - ../Editeur/icons/deleteRond.png../Editeur/icons/deleteRond.png - - - - 25 - 25 - - - - - - - - - - Qt::Vertical - - - - 20 - 5 - - - - - - - - - - - MonBoutonValide - QToolButton -
        monBoutonValide.h
        -
        - - MonLabelClic - QLabel -
        monLabelClic.h
        -
        -
        - - -
        diff --git a/UiQT5/desWidgetFact.ui b/UiQT5/desWidgetFact.ui deleted file mode 100644 index c50a7421..00000000 --- a/UiQT5/desWidgetFact.ui +++ /dev/null @@ -1,512 +0,0 @@ - - - WidgetFact - - - - 0 - 0 - 863 - 56 - - - - - 0 - 0 - - - - Qt::StrongFocus - - - Form - - - QGroupBox { - border: 1px solid gray; - border-radius: 5px; - margin-top: 1ex; /* leave space at the top for the title */ - } - - QGroupBox::title { - padding: 0 3px; - } - - - - 0 - - - 0 - - - 1 - - - 0 - - - 0 - - - - - 0 - - - - - Qt::Vertical - - - QSizePolicy::Fixed - - - - 20 - 4 - - - - - - - - - 21 - 15 - - - - - 21 - 21 - - - - border : 0px - - - ... - - - - ../Editeur/icons/minusnode.png../Editeur/icons/minusnode.png - - - - 21 - 21 - - - - - - - - Qt::Vertical - - - QSizePolicy::Expanding - - - - 18 - 28 - - - - - - - - - - 0 - - - - - - 17 - 25 - - - - - 21 - 25 - - - - border : 0px - - - ... - - - - ../Editeur/icons/ast-green-ball.png../Editeur/icons/ast-green-ball.png - - - - 21 - 25 - - - - - - - - - - Qt::Vertical - - - - - - - - - - - 0 - - - - - 0 - - - - - - 0 - 0 - - - - - 0 - 25 - - - - - 12121213 - 25 - - - - <html><head/><body><p><span style=" font-style:italic;">TextLabel</span></p></body></html> - - - - - - - Qt::Horizontal - - - QSizePolicy::Fixed - - - - 13 - 20 - - - - - - - - - 0 - 0 - - - - - 200 - 0 - - - - - 1500 - 16 - - - - Qt::Horizontal - - - - - - - Qt::Horizontal - - - QSizePolicy::Fixed - - - - 13 - 20 - - - - - - - - 0 - - - QLayout::SetFixedSize - - - - - - 21 - 31 - - - - - 21 - 31 - - - - Qt::ClickFocus - - - Lance un script associé à la commande - - - border : 0px - - - ... - - - - ../Editeur/icons/roue.png../Editeur/icons/roue.png - - - - 21 - 31 - - - - - - - - - 21 - 25 - - - - - 21 - 25 - - - - border : 0px - - - ... - - - - ../Editeur/icons/point-interrogation30.png../Editeur/icons/point-interrogation30.png - - - - 21 - 25 - - - - - - - - - 0 - 0 - - - - - 0 - 38 - - - - ArrowCursor - - - false - - - - - - - - 21 - 25 - - - - - 21 - 25 - - - - border : 0px - - - ... - - - - ../Editeur/icons/lettreRblanc30.png../Editeur/icons/lettreRblanc30.png - - - - 21 - 25 - - - - - - - - - - Qt::Horizontal - - - QSizePolicy::Fixed - - - - 13 - 20 - - - - - - - - - 21 - 25 - - - - - 21 - 25 - - - - border : 0px - - - ... - - - - ../Editeur/icons/PlusBleu.png../Editeur/icons/PlusBleu.png - - - - 21 - 25 - - - - - - - - - 21 - 25 - - - - - 21 - 25 - - - - border : 0px - - - ... - - - - ../Editeur/icons/deleteRond.png../Editeur/icons/deleteRond.png - - - - 21 - 25 - - - - - - - - - - 0 - - - 1 - - - - - - - - - - - - - MonBoutonValide - QToolButton -
        monBoutonValide.h
        -
        - - MonLabelClic - QLabel -
        monLabelClic.h
        -
        -
        - - -
        diff --git a/UiQT5/desWidgetFactPlie.ui b/UiQT5/desWidgetFactPlie.ui deleted file mode 100644 index c2c2d878..00000000 --- a/UiQT5/desWidgetFactPlie.ui +++ /dev/null @@ -1,222 +0,0 @@ - - - WidgetFactPlie - - - - 0 - 0 - 812 - 47 - - - - Form - - - QGroupBox { - border: 1px solid gray; - border-radius: 5px; - margin-top: 1ex; - } - - QGroupBox::title { - padding: 0 3px; - } - - - - 0 - - - 0 - - - 2 - - - 0 - - - 0 - - - - - - 21 - 15 - - - - - 21 - 21 - - - - border : 0px - - - ... - - - - ../Editeur/icons/plusnode.png - ../Editeur/icons/ast-red-ball.png../Editeur/icons/plusnode.png - - - - 25 - 25 - - - - - - - - - 17 - 25 - - - - - 21 - 25 - - - - border : 0px - - - ... - - - - ../Editeur/icons/ast-green-ball.png../Editeur/icons/ast-green-ball.png - - - - 25 - 25 - - - - - - - - - 0 - 0 - - - - - 0 - 25 - - - - - 12121213 - 25 - - - - TextLabel - - - - - - - Qt::Horizontal - - - QSizePolicy::Fixed - - - - 13 - 20 - - - - - - - - - 0 - 0 - - - - - 500 - 0 - - - - - 1500 - 16 - - - - Qt::Horizontal - - - - - - - - 21 - 25 - - - - - 21 - 25 - - - - border : 0px - - - ... - - - - ../Editeur/icons/deleteRond.png../Editeur/icons/deleteRond.png - - - - 25 - 25 - - - - - - - - - MonBoutonValide - QToolButton -
        monBoutonValide.h
        -
        - - MonLabelClic - QLabel -
        monLabelClic.h
        -
        -
        - - -
        diff --git a/UiQT5/desWidgetFactTableau.ui b/UiQT5/desWidgetFactTableau.ui deleted file mode 100644 index f736a471..00000000 --- a/UiQT5/desWidgetFactTableau.ui +++ /dev/null @@ -1,428 +0,0 @@ - - - WidgetFactTableau - - - - 0 - 0 - 949 - 225 - - - - Qt::StrongFocus - - - Form - - - QGroupBox { - border: 1px solid gray; - border-radius: 5px; - margin-top: 1ex; /* leave space at the top for the title */ - } - - QGroupBox::title { - padding: 0 3px; - } - - - - 0 - - - 0 - - - 2 - - - 0 - - - 0 - - - - - 0 - - - - - Qt::Vertical - - - QSizePolicy::Fixed - - - - 20 - 5 - - - - - - - - - 21 - 15 - - - - - 21 - 21 - - - - border : 0px - - - ... - - - - ../Editeur/icons/minusnode.png../Editeur/icons/minusnode.png - - - - 21 - 21 - - - - - - - - - - Qt::Vertical - - - - - - - - - - - 0 - - - - - - 17 - 25 - - - - - 21 - 25 - - - - border : 0px - - - ... - - - - ../Editeur/icons/ast-green-ball.png../Editeur/icons/ast-green-ball.png - - - - 21 - 25 - - - - - - - - 0 - - - - - - 0 - 0 - - - - - 0 - 25 - - - - - 12121213 - 25 - - - - <html><head/><body><p><span style=" font-style:italic;">TextLabel</span></p></body></html> - - - - - - - Qt::Horizontal - - - QSizePolicy::Fixed - - - - 13 - 20 - - - - - - - - - 0 - 0 - - - - - 200 - 0 - - - - - 1500 - 16 - - - - Qt::Horizontal - - - - - - - Qt::Horizontal - - - QSizePolicy::Fixed - - - - 13 - 20 - - - - - - - - 0 - - - QLayout::SetFixedSize - - - - - - 21 - 31 - - - - - 21 - 31 - - - - Qt::ClickFocus - - - Lance un script associé à la commande - - - border : 0px - - - ... - - - - ../Editeur/icons/roue.png../Editeur/icons/roue.png - - - - 21 - 31 - - - - - - - - - 21 - 25 - - - - - 21 - 25 - - - - border : 0px - - - ... - - - - ../Editeur/icons/point-interrogation30.png../Editeur/icons/point-interrogation30.png - - - - 21 - 25 - - - - - - - - - 21 - 25 - - - - - 21 - 25 - - - - border : 0px - - - ... - - - - ../Editeur/icons/lettreRblanc30.png../Editeur/icons/lettreRblanc30.png - - - - 21 - 25 - - - - - - - - - - Qt::Horizontal - - - QSizePolicy::Fixed - - - - 13 - 20 - - - - - - - - - 21 - 25 - - - - - 21 - 25 - - - - border : 0px - - - ... - - - - ../Editeur/icons/deleteRond.png../Editeur/icons/deleteRond.png - - - - 21 - 25 - - - - - - - - - - 0 - - - 2 - - - - - - - - - - - - MonBoutonValide - QToolButton -
        monBoutonValide.h
        -
        - - MonLabelClic - QLabel -
        monLabelClic.h
        -
        -
        - - -
        diff --git a/UiQT5/desWidgetFormule.ui b/UiQT5/desWidgetFormule.ui deleted file mode 100644 index 7d3647be..00000000 --- a/UiQT5/desWidgetFormule.ui +++ /dev/null @@ -1,709 +0,0 @@ - - - WidgetFormule - - - - 0 - 0 - 1156 - 689 - - - - - 0 - 0 - - - - - 0 - 0 - - - - DCommandeUnique - - - - - - background-color : rgb(224,223,222); -font : 'times' 9px - - - - - - - - - 0 - 0 - - - - QFrame::Box - - - QFrame::Raised - - - - 0 - - - - - Qt::Horizontal - - - QSizePolicy::Fixed - - - - 13 - 20 - - - - - - - - - 17 - 31 - - - - - 21 - 31 - - - - Qt::ClickFocus - - - Affiche le rapport de validité de la commande - - - border : 0px - - - ... - - - - ../Editeur/icons/ast-green-ball.png../Editeur/icons/ast-green-ball.png - - - - 21 - 31 - - - - - - - - Qt::Horizontal - - - QSizePolicy::Fixed - - - - 13 - 20 - - - - - - - - - 0 - 0 - - - - - 150 - 31 - - - - QFrame::NoFrame - - - QFrame::Raised - - - <html><head/><body><p><span style=" color:#0000ff;">Formule</span></p></body></html> - - - - - - - Qt::Horizontal - - - QSizePolicy::Maximum - - - - 2 - 40 - - - - - - - - - 0 - 0 - - - - Nom de l'objet. Seuls, les objets valides peuvent être nommés - - - QLineEdit { - border: 2px solid gray; - border-radius: 10px; - padding: 0 8px; - background: darkgray; - /* selection-background-color: darkgray;*/ - } -QLineEdit:disabled -{ - background: lightgray; -} -/*read-only { - background: lightblue;*/ - - - false - - - - - - - Qt::Horizontal - - - QSizePolicy::Ignored - - - - 2 - 40 - - - - - - - - 4 - - - QLayout::SetFixedSize - - - - - - - Qt::Horizontal - - - QSizePolicy::Fixed - - - - 13 - 20 - - - - - - - - - 21 - 31 - - - - - 21 - 31 - - - - Qt::ClickFocus - - - Détruit la commande - - - border : 0px - - - ... - - - - ../Editeur/icons/deleteRond.png../Editeur/icons/deleteRond.png - - - - 21 - 31 - - - - - - RBValide - labelNomCommande - LENom - horizontalSpacer_3 - horizontalSpacer_4 - RBPoubelle - horizontalSpacer_5 - - - - - - - - - 0 - 0 - - - - - 160 - 31 - - - - Qt::ClickFocus - - - Affiche les commandes possibles - - - background-color:rgb(104,110,149); -color :white; -border-radius : 12px - - - - &Commandes - - - Shift+A, Alt+A, Alt+A, Alt+A - - - true - - - true - - - - - - - - - - 0 - 0 - - - - - 60 - 24 - - - - - 60 - 24 - - - - Qt::ClickFocus - - - Affiche le formulaire de la commande précédente - - - background-color:rgb(104,110,149); -color :white; -border-radius : 12px - - - - << - - - Shift+A, Alt+A, Alt+A, Alt+A - - - true - - - true - - - - - - - - 0 - 0 - - - - - 60 - 24 - - - - - 60 - 24 - - - - Qt::ClickFocus - - - Affiche le formulaire de la commande suivante - - - background-color:rgb(104,110,149); -color :white; -border-radius : 12px - - - - >> - - - Shift+A, Alt+A, Alt+A, Alt+A - - - true - - - true - - - - - - - - - - - - - - 0 - 81 - - - - background : rgb(247,247,247) - - - - - - QFrame::NoFrame - - - Qt::ScrollBarAsNeeded - - - Qt::ScrollBarAsNeeded - - - true - - - - - 0 - 0 - 1138 - 598 - - - - - - - - - - 0 - 0 - - - - <h3><p align="center"><u><b>Nom de la formule</b></u></p></h3> - - - false - - - - - - - - - <h3><p align="center"><u><b>Arguments</b></u></p></h3> - - - false - - - - - - - variables séparées par des "," - par ex. : x,y,z - - - false - - - - - - - - - - 0 - 0 - - - - - 0 - 0 - - - - <h3><p align="center"><u><b>Expression</b></u></p></h3> - - - false - - - - - - - Qt::Horizontal - - - QSizePolicy::Fixed - - - - 17 - 17 - - - - - - - - - 0 - 40 - - - - - - - - - - <h1><b>(</b></h1> - - - false - - - - - - - - 230 - 40 - - - - - - - - <h1><b>)</b></h1> - - - false - - - - - - - - - - - Qt::Vertical - - - - 20 - 5 - - - - - - - - - 0 - 0 - - - - - 0 - 35 - - - - - 16777215 - 35 - - - - <font size="+4" face="Helvetica"><b>=</b></font> - - - false - - - - - - - Qt::Vertical - - - - 20 - 10 - - - - - - - - - - - 0 - 0 - - - - - 0 - 40 - - - - - - - - - - Qt::Vertical - - - - 20 - 446 - - - - - - - - - - - - qPixmapFromMimeSource - - - MonBoutonValide - QToolButton -
        monBoutonValide.h
        -
        - - MonLabelClic - QLabel -
        monLabelClic.h
        -
        -
        - - scrollAreaCommandes - LENomsArgs - LECorpsFormule - LENom - LENomFormule - - - -
        diff --git a/UiQT5/desWidgetHeure.ui b/UiQT5/desWidgetHeure.ui deleted file mode 100644 index 03d5dfba..00000000 --- a/UiQT5/desWidgetHeure.ui +++ /dev/null @@ -1,256 +0,0 @@ - - - WidgetHeure - - - - 0 - 0 - 658 - 61 - - - - - 0 - 0 - - - - - 0 - 0 - - - - Form - - - - 0 - - - 0 - - - 1 - - - 0 - - - 0 - - - - - 0 - - - QLayout::SetFixedSize - - - - - Qt::Horizontal - - - QSizePolicy::Fixed - - - - 21 - 20 - - - - - - - - - 21 - 25 - - - - - 21 - 25 - - - - Qt::ClickFocus - - - Affiche le rapport de validation du mot-clef - - - border : 0px - - - ... - - - - ../Editeur/icons/ast-green-ball.png../Editeur/icons/ast-green-ball.png - - - - 25 - 25 - - - - - - - - - - - 0 - 0 - - - - - 300 - 25 - - - - - 178 - 16777215 - - - - QFrame::NoFrame - - - <html><head/><body><p>aaa</p><p>dqsklmdqm</p></body></html> - - - false - - - Qt::AlignLeading|Qt::AlignLeft|Qt::AlignTop - - - - - - - <html><head/><body><p><br/></p></body></html> - - - - - - - - - - - Qt::Horizontal - - - QSizePolicy::Preferred - - - - 17 - 17 - - - - - - - - - - - Qt::Horizontal - - - - 454 - 20 - - - - - - - - - 21 - 25 - - - - - 21 - 25 - - - - Qt::ClickFocus - - - Détruit le mot-clef - - - border : 0px - - - ... - - - - ../Editeur/icons/deleteRond.png../Editeur/icons/deleteRond.png - - - - 25 - 25 - - - - - - - - - - Qt::Vertical - - - - 20 - 3 - - - - - - - - - - - MonBoutonValide - QToolButton -
        monBoutonValide.h
        -
        - - MonLabelClic - QLabel -
        monLabelClic.h
        -
        -
        - - -
        diff --git a/UiQT5/desWidgetInactif.ui b/UiQT5/desWidgetInactif.ui deleted file mode 100644 index 336a26fa..00000000 --- a/UiQT5/desWidgetInactif.ui +++ /dev/null @@ -1,471 +0,0 @@ - - - WidgetInactif - - - - 0 - 0 - 946 - 495 - - - - - 350 - 0 - - - - DInactif - - - - - - - - - 0 - 0 - - - - QFrame::Box - - - QFrame::Raised - - - - 0 - - - - - Qt::Horizontal - - - QSizePolicy::Fixed - - - - 13 - 20 - - - - - - - - - 17 - 31 - - - - - 21 - 31 - - - - Qt::ClickFocus - - - Affiche le rapport de validité de la commande - - - border : 0px - - - - - - - ../Editeur/icons/ast-white-square.png../Editeur/icons/ast-white-square.png - - - - 21 - 31 - - - - false - - - - - - - Qt::Horizontal - - - QSizePolicy::Fixed - - - - 13 - 20 - - - - - - - - - 0 - 0 - - - - - 150 - 31 - - - - QFrame::NoFrame - - - QFrame::Raised - - - <html><head/><body><p><span style=" color:#0000ff;">commande </span></p></body></html> - - - - - - - Qt::Horizontal - - - QSizePolicy::Maximum - - - - 2 - 40 - - - - - - - - Qt::Horizontal - - - QSizePolicy::Ignored - - - - 2 - 40 - - - - - - - - 4 - - - QLayout::SetFixedSize - - - - - - - Qt::Horizontal - - - QSizePolicy::Fixed - - - - 13 - 20 - - - - - - - - - 21 - 31 - - - - - 21 - 31 - - - - Qt::ClickFocus - - - Détruit la commande - - - border : 0px - - - ... - - - - ../Editeur/icons/deleteRond.png../Editeur/icons/deleteRond.png - - - - 21 - 31 - - - - - - RBValide - labelNomCommande - horizontalSpacer_3 - horizontalSpacer_4 - RBPoubelle - horizontalSpacer_5 - - - - - - - - - 0 - 0 - - - - - 160 - 31 - - - - Qt::ClickFocus - - - Affiche les commandes possibles - - - background-color:rgb(104,110,149); -color :white; -border-radius : 12px - - - - &Commandes - - - Shift+A, Alt+A, Alt+A, Alt+A - - - true - - - true - - - - - - - - - - 0 - 0 - - - - - 60 - 24 - - - - - 60 - 24 - - - - Qt::ClickFocus - - - Affiche le formulaire de la commande précédente - - - background-color:rgb(104,110,149); -color :white; -border-radius : 12px - - - - << - - - Shift+A, Alt+A, Alt+A, Alt+A - - - true - - - true - - - - - - - - 0 - 0 - - - - - 60 - 24 - - - - - 60 - 24 - - - - Qt::ClickFocus - - - Affiche le formulaire de la commande suivante - - - background-color:rgb(104,110,149); -color :white; -border-radius : 12px - - - - >> - - - Shift+A, Alt+A, Alt+A, Alt+A - - - true - - - true - - - - - - - - - - - - - Qt::Vertical - - - - 20 - 66 - - - - - - - - - 0 - 0 - - - - <html><head/><body><p align="center"><span style=" font-size:16pt;">Le noeud sélectionné</span></p><p align="center"><span style=" font-size:16pt;">ne correspond pas à un objet actif</span></p></body></html> - - - false - - - - - - - Qt::Vertical - - - - 20 - 67 - - - - - - - - <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> -<html><head><meta name="qrichtext" content="1" /><style type="text/css"> -p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal;"> -<p align="center" style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:x-large;"><span style=" font-size:x-large;">Seules les commandes placées</span></p> -<p align="center" style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:x-large;"><span style=" font-size:x-large;"> entre : DEBUT / FIN sont actives </span></p></body></html> - - - false - - - - - - - Qt::Vertical - - - - 20 - 66 - - - - - - - - qPixmapFromMimeSource - - - MonLabelClic - QLabel -
        monLabelClic.h
        -
        -
        - - -
        diff --git a/UiQT5/desWidgetInformation.ui b/UiQT5/desWidgetInformation.ui deleted file mode 100644 index 25e2933f..00000000 --- a/UiQT5/desWidgetInformation.ui +++ /dev/null @@ -1,106 +0,0 @@ - - - WidgetInformative - - - - 0 - 0 - 837 - 44 - - - - - 0 - 0 - - - - - 0 - 0 - - - - Form - - - - 0 - - - 0 - - - 1 - - - 0 - - - 1 - - - - - Qt::Horizontal - - - QSizePolicy::Fixed - - - - 38 - 17 - - - - - - - - - 1 - 0 - - - - - 0 - 25 - - - - - 16777215 - 16777215 - - - - background:rgb(255,255,235); -border:0px; - - - - - - - Qt::Horizontal - - - - 13 - 17 - - - - - - - - lineEditVal - - - - diff --git a/UiQT5/desWidgetIntoSug.ui b/UiQT5/desWidgetIntoSug.ui deleted file mode 100644 index 6a429d64..00000000 --- a/UiQT5/desWidgetIntoSug.ui +++ /dev/null @@ -1,468 +0,0 @@ - - - WidgetIntoSug - - - - 0 - 0 - 1049 - 400 - - - - - 0 - 0 - - - - - 0 - 400 - - - - Form - - - - - - 0 - - - - - 0 - - - QLayout::SetFixedSize - - - - - - 0 - 0 - - - - - 21 - 25 - - - - permet de gérer la liste - - - border:0px - - - ... - - - - ../Editeur/icons/minusnode.png../Editeur/icons/minusnode.png - - - - 25 - 25 - - - - - - - - - 21 - 25 - - - - - 21 - 25 - - - - Qt::ClickFocus - - - Affiche le rapport de validation du mot-clef - - - border : 0px - - - ... - - - - ../Editeur/icons/ast-green-ball.png../Editeur/icons/ast-green-ball.png - - - - 25 - 25 - - - - - - - - - - Qt::Vertical - - - - 20 - 5 - - - - - - - - - - - - - 0 - 0 - - - - - 280 - 25 - - - - - 280 - 16777215 - - - - QFrame::NoFrame - - - <html><head/><body><p>aaa</p><p>dqsklmdqm</p></body></html> - - - false - - - Qt::AlignLeading|Qt::AlignLeft|Qt::AlignTop - - - - - - - - 0 - 0 - - - - - 300 - 0 - - - - - 300 - 16777215 - - - - QFrame::NoFrame - - - 0 - - - true - - - - - 0 - 0 - 300 - 316 - - - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - - - - 0 - 0 - - - - - 78 - 25 - - - - - 278 - 16777215 - - - - QFrame::NoFrame - - - <html><head/><body><p><br/></p></body></html> - - - false - - - Qt::AlignLeading|Qt::AlignLeft|Qt::AlignTop - - - - - - - Qt::Vertical - - - - 20 - 40 - - - - - - - - - - - - - - 15 - - - - - background:rgb(221, 221, 166) - - - QFrame::Box - - - - - - - - - Valeurs hors liste - la valeur saisie sera ajoutée à la liste - - - - - - - background : white - - - - - - - - - - - - 0 - 0 - - - - background : rgb(247,247,247) - - - QFrame::NoFrame - - - QFrame::Plain - - - 1 - - - true - - - Qt::AlignBottom|Qt::AlignLeading|Qt::AlignLeft - - - - - 0 - 0 - 614 - 297 - - - - - 0 - 0 - - - - - - - Qt::Vertical - - - - 20 - 40 - - - - - - - - - - - - - - Qt::Horizontal - - - QSizePolicy::Preferred - - - - 20 - 17 - - - - - - - - - - - 21 - 31 - - - - - 21 - 31 - - - - Détruit le mot-clef - - - border : 0px - - - ... - - - - ../Editeur/icons/deleteRond.png../Editeur/icons/deleteRond.png - - - - 32 - 32 - - - - - - - - - - - true - - - - - - - Qt::Vertical - - - - 20 - 40 - - - - - - - - horizontalSpacer - - - - - - MonBoutonValide - QToolButton -
        monBoutonValide.h
        -
        - - MonLabelClic - QLabel -
        monLabelClic.h
        -
        -
        - - -
        diff --git a/UiQT5/desWidgetMatrice.ui b/UiQT5/desWidgetMatrice.ui deleted file mode 100644 index 378b9d7f..00000000 --- a/UiQT5/desWidgetMatrice.ui +++ /dev/null @@ -1,274 +0,0 @@ - - - desWidgetMatrice - - - - 0 - 0 - 399 - 226 - - - - - 0 - 0 - - - - - 0 - 0 - - - - Dialog - - - - - - 0 - - - QLayout::SetFixedSize - - - - - 0 - - - QLayout::SetFixedSize - - - - - Qt::Horizontal - - - QSizePolicy::Fixed - - - - 21 - 20 - - - - - - - - - 21 - 25 - - - - - 21 - 25 - - - - Qt::ClickFocus - - - Affiche le rapport de validation du mot-clef - - - border : 0px - - - ... - - - - ../../../../../../home/A96028/GitEficasTravail/eficas/Editeur/icons/ast-green-ball.png../../../../../../home/A96028/GitEficasTravail/eficas/Editeur/icons/ast-green-ball.png - - - - 25 - 25 - - - - - - - - - - Qt::Vertical - - - QSizePolicy::Fixed - - - - 20 - 15 - - - - - - - - <html><head/><body><p>Met à jour l'en-tête</p></body></html> - - - - - - - - - - - - - - - Qt::Vertical - - - - 20 - 40 - - - - - - - - - - - 0 - 0 - - - - - 100 - 25 - - - - - 100 - 16777215 - - - - QFrame::NoFrame - - - <html><head/><body><p>aaa</p><p>dqsklmdqm</p></body></html> - - - false - - - Qt::AlignLeading|Qt::AlignLeft|Qt::AlignTop - - - - - - - Qt::Horizontal - - - QSizePolicy::MinimumExpanding - - - - 2 - 2 - - - - - - - - - - - 200 - 200 - - - - QFrame::Box - - - QFrame::Raised - - - QAbstractScrollArea::AdjustToContents - - - true - - - - - - - Qt::Vertical - - - QSizePolicy::Ignored - - - - 20 - 2 - - - - - - - - - - Qt::Horizontal - - - QSizePolicy::MinimumExpanding - - - - 2 - 2 - - - - - - label - horizontalSpacer_2 - TBMatrice - - - - MonBoutonValide - QToolButton -
        monBoutonValide.h
        -
        - - MonLabelClic - QLabel -
        monLabelClic.h
        -
        -
        - - -
        diff --git a/UiQT5/desWidgetNiveauFact.ui b/UiQT5/desWidgetNiveauFact.ui deleted file mode 100644 index f02a7854..00000000 --- a/UiQT5/desWidgetNiveauFact.ui +++ /dev/null @@ -1,544 +0,0 @@ - - - WidgetNiveauFact - - - - 0 - 0 - 1353 - 596 - - - - - 0 - 0 - - - - - 0 - 0 - - - - DCommandeUnique - - - - - - background-color : rgb(224,223,222); -font : 'times' 9px - - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - - - - 0 - 0 - - - - - 0 - 130 - - - - - 16777215 - 130 - - - - background-color:rgb(224,223,222) - - - - 2 - - - 3 - - - 2 - - - - - - 0 - 0 - - - - QFrame::Box - - - QFrame::Raised - - - - 0 - - - - - Qt::Horizontal - - - QSizePolicy::Fixed - - - - 13 - 20 - - - - - - - - - 17 - 31 - - - - - 21 - 31 - - - - Qt::ClickFocus - - - Affiche le rapport de validité de la commande - - - border : 0px - - - ... - - - - ../../../.designer/Editeur/icons/ast-green-ball.png../../../.designer/Editeur/icons/ast-green-ball.png - - - - 21 - 31 - - - - - - - - Qt::Horizontal - - - QSizePolicy::Fixed - - - - 13 - 20 - - - - - - - - - 0 - 0 - - - - - 150 - 31 - - - - QFrame::NoFrame - - - QFrame::Raised - - - <html><head/><body><p><span style=" color:#0000ff;">commande </span></p></body></html> - - - - - - - Qt::Horizontal - - - QSizePolicy::Maximum - - - - 2 - 40 - - - - - - - - Qt::Horizontal - - - - 108 - 20 - - - - - - - - Qt::Horizontal - - - QSizePolicy::Ignored - - - - 2 - 40 - - - - - - - - 4 - - - QLayout::SetFixedSize - - - - - - 21 - 31 - - - - - 21 - 31 - - - - Qt::ClickFocus - - - Lance un script associé à la commande - - - border : 0px - - - ... - - - - ../../../.designer/Editeur/icons/roue.png../../../.designer/Editeur/icons/roue.png - - - - 21 - 31 - - - - - - - - - 0 - 0 - - - - - 0 - 38 - - - - true - - - - - - - - 21 - 31 - - - - - 31 - 31 - - - - Qt::ClickFocus - - - ouvre un navigateur sur l'aide contextuelle - - - border : 0px - - - ... - - - - ../../../.designer/Editeur/icons/point-interrogation.png../../../.designer/Editeur/icons/point-interrogation.png - - - - 21 - 31 - - - - - - - - - 21 - 31 - - - - - 31 - 31 - - - - Qt::ClickFocus - - - affiche les régles de validité - - - border : 0px - - - ... - - - - ../../../.designer/Editeur/icons/lettreRblanc30.png../../../.designer/Editeur/icons/lettreRblanc30.png - - - - 21 - 31 - - - - - - - - - - Qt::Horizontal - - - QSizePolicy::Fixed - - - - 13 - 20 - - - - - - - - - 21 - 31 - - - - - 21 - 31 - - - - Qt::ClickFocus - - - Détruit la commande - - - border : 0px - - - ... - - - - ../../../.designer/Editeur/icons/deleteRond.png../../../.designer/Editeur/icons/deleteRond.png - - - - 21 - 31 - - - - - - RBValide - labelNomCommande - horizontalSpacer_3 - horizontalSpacer_4 - RBPoubelle - horizontalSpacer_5 - horizontalSpacer_7 - - - - - - TextLabel - - - - - - - 0 - - - - - - - - - - - 0 - 81 - - - - background : rgb(247,247,247) - - - - - - QFrame::NoFrame - - - Qt::ScrollBarAsNeeded - - - Qt::ScrollBarAsNeeded - - - true - - - - - 0 - 0 - 1353 - 466 - - - - - - - 1 - - - - - - - Qt::Vertical - - - - 20 - 5 - - - - - - - - - - - - qPixmapFromMimeSource - - - MonBoutonValide - QToolButton -
        monBoutonValide.h
        -
        - - MonLabelClic - QLabel -
        monLabelClic.h
        -
        -
        - - -
        diff --git a/UiQT5/desWidgetOptionnel.ui b/UiQT5/desWidgetOptionnel.ui deleted file mode 100644 index 6e9e3935..00000000 --- a/UiQT5/desWidgetOptionnel.ui +++ /dev/null @@ -1,190 +0,0 @@ - - - WidgetOptionnel - - - - 0 - 0 - 297 - 199 - - - - - 0 - 0 - - - - - 0 - 0 - - - - WidgetOptionnel - - - background-color : rgb(224,223,222); -font : 'times' 9px - - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - - - - 0 - 0 - - - - QFrame::Box - - - QFrame::Raised - - - - - - - 0 - 0 - - - - - 0 - 31 - - - - QFrame::NoFrame - - - QFrame::Raised - - - <html><head/><body><p><span style=" color:#0000ff;">commande </span></p></body></html> - - - - - - - Qt::Horizontal - - - - 1037 - 20 - - - - - - - - - - - - 0 - 0 - - - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - - - - 0 - 0 - - - - background : rgb(247,247,247) - - - QFrame::NoFrame - - - 0 - - - true - - - - - 0 - 0 - 297 - 146 - - - - - 0 - 0 - - - - - - - Qt::Vertical - - - - 20 - 75 - - - - - - - - - - - - - - - qPixmapFromMimeSource - - - diff --git a/UiQT5/desWidgetOptionnelMC.ui b/UiQT5/desWidgetOptionnelMC.ui deleted file mode 100644 index 950792e0..00000000 --- a/UiQT5/desWidgetOptionnelMC.ui +++ /dev/null @@ -1,127 +0,0 @@ - - - desWidgetOptionnel - - - - 0 - 0 - 384 - 218 - - - - Form - - - - 0 - - - - - - - Qt::Horizontal - - - - - - - - 0 - 0 - - - - - 0 - 25 - - - - - 12121213 - 25 - - - - TextLabel - - - - - - - Qt::Horizontal - - - - - - - - - - 0 - 0 - - - - background : rgb(247,247,247) - - - QFrame::NoFrame - - - 0 - - - true - - - - - 0 - 0 - 384 - 185 - - - - - 0 - 0 - - - - - - - Qt::Vertical - - - - 20 - 75 - - - - - - - - - - - - - MonLabelClic - QLabel -
        monLabelClic.h
        -
        -
        - - -
        diff --git a/UiQT5/desWidgetParam.ui b/UiQT5/desWidgetParam.ui deleted file mode 100644 index 357c0097..00000000 --- a/UiQT5/desWidgetParam.ui +++ /dev/null @@ -1,635 +0,0 @@ - - - WidgetParam - - - - 0 - 0 - 786 - 515 - - - - - 0 - 0 - - - - - 0 - 0 - - - - DCommandeUnique - - - - - - background-color : rgb(224,223,222); -font : 'times' 9px - - - - - - - 0 - 0 - - - - - 0 - 130 - - - - - 16777215 - 130 - - - - background-color:rgb(224,223,222) - - - QFrame::NoFrame - - - QFrame::Raised - - - - 0 - - - 0 - - - 0 - - - - - - - - - - 0 - 0 - - - - QFrame::Box - - - QFrame::Raised - - - - 0 - - - - - Qt::Horizontal - - - QSizePolicy::Fixed - - - - 13 - 20 - - - - - - - - - 17 - 31 - - - - - 21 - 31 - - - - Qt::ClickFocus - - - Affiche le rapport de validité de la commande - - - border : 0px - - - ... - - - - ../Editeur/icons/ast-green-ball.png../Editeur/icons/ast-green-ball.png - - - - 21 - 31 - - - - - - - - Qt::Horizontal - - - QSizePolicy::Fixed - - - - 13 - 20 - - - - - - - - - 0 - 0 - - - - - 150 - 31 - - - - QFrame::NoFrame - - - QFrame::Raised - - - <html><head/><body><p><span style=" color:#000000;">Paramètre</span></p></body></html> - - - - - - - Qt::Horizontal - - - QSizePolicy::Maximum - - - - 2 - 40 - - - - - - - - Qt::Horizontal - - - QSizePolicy::Ignored - - - - 2 - 40 - - - - - - - - Qt::Horizontal - - - QSizePolicy::Fixed - - - - 13 - 20 - - - - - - - - - 21 - 31 - - - - - 21 - 31 - - - - Qt::ClickFocus - - - Détruit la commande - - - border : 0px - - - ... - - - - ../Editeur/icons/deleteRond.png../Editeur/icons/deleteRond.png - - - - 21 - 31 - - - - - - RBValide - RBPoubelle - horizontalSpacer_4 - labelParam - - - - - - Qt::Vertical - - - - 20 - 40 - - - - - - - - - - 8 - - - 15 - - - - - - 0 - 0 - - - - - 160 - 31 - - - - Qt::ClickFocus - - - Affiche les commandes possibles - - - background-color:rgb(104,110,149); -color :white; -border-radius : 12px - - - - &Commandes - - - Shift+A, Alt+A, Alt+A, Alt+A - - - true - - - true - - - - - - - - - - 0 - 0 - - - - - 60 - 24 - - - - - 60 - 24 - - - - Qt::ClickFocus - - - Affiche le formulaire de la commande précédente - - - background-color:rgb(104,110,149); -color :white; -border-radius : 12px - - - - << - - - Shift+A, Alt+A, Alt+A, Alt+A - - - true - - - true - - - - - - - - 0 - 0 - - - - - 60 - 24 - - - - - 60 - 24 - - - - Qt::ClickFocus - - - Affiche le formulaire de la commande suivante - - - background-color:rgb(104,110,149); -color :white; -border-radius : 12px - - - - >> - - - Shift+A, Alt+A, Alt+A, Alt+A - - - true - - - true - - - - - - - - - - - - - - - - - 0 - 81 - - - - background : rgb(247,247,247); - - - - - - - QFrame::NoFrame - - - Qt::ScrollBarAsNeeded - - - true - - - - - 0 - 0 - 768 - 361 - - - - - - - 25 - - - - - <html><head/><body><p>Valeur: </p></body></html> - - - false - - - - - - - - 231 - 31 - - - - background:rgb(235,235,235); -border:0px; - - - - - - - - - - 231 - 31 - - - - background:rgb(235,235,235); -border:0px; - - - - - - - <html><head/><body><p>Nom: </p></body></html> - - - false - - - - - - - Qt::Vertical - - - - 20 - 40 - - - - - - - - - 0 - 0 - - - - - 160 - 31 - - - - Affiche les commandes possibles - - - background-color:rgb(104,110,149); -color :white; -border-radius : 12px - - - - Verifie la valeur - - - Shift+A, Alt+A, Alt+A, Alt+A - - - true - - - true - - - - - - - - - <html><head/><body><p><br/></p></body></html> - - - false - - - - - - - Qt::Vertical - - - - 20 - 70 - - - - - - - - - - - - qPixmapFromMimeSource - - - MonBoutonValide - QToolButton -
        monBoutonValide.h
        -
        -
        - - scrollAreaCommandes - - - -
        diff --git a/UiQT5/desWidgetPlusieursBase.ui b/UiQT5/desWidgetPlusieursBase.ui deleted file mode 100644 index b4d801dc..00000000 --- a/UiQT5/desWidgetPlusieursBase.ui +++ /dev/null @@ -1,809 +0,0 @@ - - - WidgetPlusieursBase - - - - 0 - 0 - 1002 - 91 - - - - - 0 - 0 - - - - - 100 - 20 - - - - Form - - - - - - - 0 - - - 0 - - - 2 - - - 0 - - - 2 - - - - - 0 - - - - - 0 - - - QLayout::SetFixedSize - - - - - - 0 - 0 - - - - - 21 - 25 - - - - permet de gérer la liste - - - border:0px - - - ... - - - - ../Editeur/icons/minusnode.png../Editeur/icons/minusnode.png - - - - 25 - 25 - - - - - - - - - 21 - 25 - - - - - 21 - 25 - - - - Qt::ClickFocus - - - Affiche le rapport de validation du mot-clef - - - border : 0px - - - ... - - - - ../Editeur/icons/ast-green-ball.png../Editeur/icons/ast-green-ball.png - - - - 25 - 25 - - - - - - - - - - Qt::Vertical - - - - 20 - 5 - - - - - - - - - - 0 - - - - - - 0 - 0 - - - - - 300 - 25 - - - - - 178 - 16777215 - - - - QFrame::NoFrame - - - <html><head/><body><p>aaa</p><p>dqsklmdqm</p></body></html> - - - false - - - Qt::AlignLeading|Qt::AlignLeft|Qt::AlignTop - - - - - - - - 0 - 0 - - - - QFrame::NoFrame - - - QFrame::Plain - - - true - - - - - 0 - 0 - 300 - 60 - - - - - 0 - 0 - - - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - - - - 0 - 0 - - - - - 300 - 0 - - - - <html><head/><body><p>les types des tuples</p></body></html> - - - - - - - - - - - - - - - - 0 - 0 - - - - - 400 - 20 - - - - - - - QFrame::NoFrame - - - QFrame::Plain - - - 1 - - - true - - - Qt::AlignBottom|Qt::AlignLeading|Qt::AlignLeft - - - - - 0 - 0 - 589 - 44 - - - - - 0 - 0 - - - - - 0 - - - 2 - - - 0 - - - 2 - - - 0 - - - - - Qt::Vertical - - - QSizePolicy::Fixed - - - - 20 - 1 - - - - - - - - - - - - QLayout::SetFixedSize - - - - - - 0 - 0 - - - - QFrame::Box - - - - 0 - - - QLayout::SetFixedSize - - - 0 - - - 0 - - - 0 - - - 0 - - - - - - 21 - 31 - - - - - 21 - 31 - - - - Qt::ClickFocus - - - Descend la ligne - - - border : 0px - - - ... - - - - .. - - - - 32 - 32 - - - - - - - - - 21 - 31 - - - - - 21 - 31 - - - - Qt::ClickFocus - - - Remonte la ligne - - - border : 0px - - - ... - - - - .. - - - - 32 - 32 - - - - - - - - - 21 - 31 - - - - - 21 - 31 - - - - Qt::ClickFocus - - - supprime une ligne - - - border : 0px - - - ... - - - - - - - 32 - 32 - - - - - - - - - 21 - 31 - - - - - 21 - 31 - - - - Qt::ClickFocus - - - Ajoute une ligne - - - border : 0px - - - ... - - - - - - - 32 - 32 - - - - - - - - - 21 - 31 - - - - - 21 - 31 - - - - Qt::ClickFocus - - - Montre l'ensemble des valeurs - - - border : 0px - - - ... - - - - - - - 32 - 32 - - - - - - - - - 21 - 31 - - - - - 21 - 31 - - - - Qt::ClickFocus - - - Visualise dans Salome - - - border : 0px - - - ... - - - - ../Editeur/icons/eye.png../Editeur/icons/eye.png - - - - 32 - 32 - - - - - - - - - 21 - 31 - - - - - 21 - 31 - - - - Qt::ClickFocus - - - Sélectionne depuis Salome - - - border : 0px - - - ... - - - - ../Editeur/icons/flecheSalome.png../Editeur/icons/flecheSalome.png - - - - 32 - 32 - - - - - - - - - - - Qt::Horizontal - - - - 40 - 20 - - - - - - - - - - - - 0 - - - 0 - - - - - 0 - - - - - - 0 - 0 - - - - - 25 - 30 - - - - Qt::ClickFocus - - - Ouvre un fichier de sélection des valeurs - - - border:0px - - - ... - - - - .. - - - - 32 - 32 - - - - - - - - Qt::Horizontal - - - QSizePolicy::Fixed - - - - 13 - 20 - - - - - - - - - 21 - 31 - - - - - 21 - 31 - - - - Qt::ClickFocus - - - Détruit le mot-clef - - - border : 0px - - - ... - - - - ../Editeur/icons/deleteRond.png../Editeur/icons/deleteRond.png - - - - 32 - 32 - - - - - - - - - - Qt::Vertical - - - - 20 - 40 - - - - - - - - - - - - MonBoutonValide - QToolButton -
        monBoutonValide.h
        -
        - - MonLabelClic - QLabel -
        monLabelClic.h
        -
        -
        - - RBMoins - BSelectFichier - RBPoubelle - - - -
        diff --git a/UiQT5/desWidgetPlusieursInto.ui b/UiQT5/desWidgetPlusieursInto.ui deleted file mode 100644 index 7c684a7e..00000000 --- a/UiQT5/desWidgetPlusieursInto.ui +++ /dev/null @@ -1,602 +0,0 @@ - - - WidgetPlusieursInto - - - - 0 - 0 - 1061 - 326 - - - - - 0 - 0 - - - - - 0 - 100 - - - - Form - - - - 0 - - - 0 - - - - - 0 - - - - - 0 - - - QLayout::SetFixedSize - - - - - - 0 - 0 - - - - - 21 - 25 - - - - permet de gérer la liste - - - border:0px - - - ... - - - - ../Editeur/icons/minusnode.png../Editeur/icons/minusnode.png - - - - 25 - 25 - - - - - - - - - 21 - 25 - - - - - 21 - 25 - - - - Qt::ClickFocus - - - Affiche le rapport de validation du mot-clef - - - border : 0px - - - ... - - - - ../Editeur/icons/ast-green-ball.png../Editeur/icons/ast-green-ball.png - - - - 25 - 25 - - - - - - - - - - Qt::Vertical - - - - 20 - 5 - - - - - - - - - - - - - 0 - 0 - - - - - 280 - 25 - - - - - 280 - 16777215 - - - - QFrame::NoFrame - - - <html><head/><body><p>aaa</p><p>dqsklmdqm</p></body></html> - - - false - - - Qt::AlignLeading|Qt::AlignLeft|Qt::AlignTop - - - - - - - - 0 - 111 - - - - - 16777215 - 111 - - - - QFrame::NoFrame - - - QFrame::Raised - - - - - - 0 - - - - - - - - - 0 - 0 - - - - - 250 - 0 - - - - - 250 - 16777215 - - - - background:rgb(255,255,255) - - - - - - - - - Qt::Horizontal - - - QSizePolicy::Fixed - - - - 5 - 20 - - - - - - - - - 21 - 31 - - - - - 21 - 31 - - - - Cherche la valeur - - - border : 0px - - - ... - - - - .. - - - - 32 - 32 - - - - - - - - Qt::Horizontal - - - - 40 - 20 - - - - - - - - - - - - Original - - - - - - - Alpha - - - - - - - Qt::Horizontal - - - - 40 - 20 - - - - - - - - - - - - - - 0 - 0 - - - - - 300 - 0 - - - - - 300 - 16777215 - - - - QFrame::NoFrame - - - 0 - - - true - - - - - 0 - 0 - 300 - 143 - - - - - 0 - 0 - - - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - - - - 0 - 0 - - - - - 78 - 25 - - - - - 278 - 16777215 - - - - QFrame::NoFrame - - - <html><head/><body><p><br/></p></body></html> - - - false - - - Qt::AlignLeading|Qt::AlignLeft|Qt::AlignTop - - - - - - - - - - - - - - 0 - 0 - - - - background : rgb(247,247,247) - - - QFrame::NoFrame - - - QFrame::Plain - - - 1 - - - true - - - Qt::AlignBottom|Qt::AlignLeading|Qt::AlignLeft - - - - - 0 - 0 - 474 - 308 - - - - - 0 - 0 - - - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - - - Qt::Vertical - - - - 20 - 400 - - - - - - - - - - - - Qt::Horizontal - - - QSizePolicy::Preferred - - - - 20 - 17 - - - - - - - - - - - 21 - 31 - - - - - 21 - 31 - - - - Détruit le mot-clef - - - border : 0px - - - ... - - - - ../Editeur/icons/deleteRond.png../Editeur/icons/deleteRond.png - - - - 32 - 32 - - - - - - - - - - - true - - - - - - - Qt::Vertical - - - - 20 - 40 - - - - - - - - horizontalSpacer - scrollArea - - - - - - MonBoutonValide - QToolButton -
        monBoutonValide.h
        -
        - - MonLabelClic - QLabel -
        monLabelClic.h
        -
        -
        - - -
        diff --git a/UiQT5/desWidgetPlusieursIntoOrdonne.ui b/UiQT5/desWidgetPlusieursIntoOrdonne.ui deleted file mode 100644 index 832a9176..00000000 --- a/UiQT5/desWidgetPlusieursIntoOrdonne.ui +++ /dev/null @@ -1,900 +0,0 @@ - - - WidgetPlusieursIntoOrdonne - - - - 0 - 0 - 1386 - 538 - - - - - 0 - 0 - - - - - 0 - 0 - - - - Form - - - - 0 - - - 0 - - - 2 - - - 0 - - - 15 - - - - - 0 - - - - - 0 - - - QLayout::SetFixedSize - - - - - - 0 - 0 - - - - - 21 - 25 - - - - permet de gérer la liste - - - border:0px - - - ... - - - - ../../../.designer/Editeur/icons/minusnode.png../../../.designer/Editeur/icons/minusnode.png - - - - 25 - 25 - - - - - - - - - 21 - 25 - - - - - 21 - 25 - - - - Qt::ClickFocus - - - Affiche le rapport de validation du mot-clef - - - border : 0px - - - ... - - - - ../../../.designer/Editeur/icons/ast-green-ball.png../../../.designer/Editeur/icons/ast-green-ball.png - - - - 25 - 25 - - - - - - - - - - Qt::Vertical - - - - 20 - 5 - - - - - - - - - - 0 - - - - - - 0 - 0 - - - - - 300 - 25 - - - - - 178 - 16777215 - - - - QFrame::NoFrame - - - <html><head/><body><p><br/></p></body></html> - - - false - - - Qt::AlignLeading|Qt::AlignLeft|Qt::AlignTop - - - - - - - Qt::Vertical - - - - 20 - 40 - - - - - - - - - - - background:rgb(255,255,255) - - - - - - - - - - 21 - 31 - - - - - 21 - 31 - - - - Cherche dans la liste - - - border : 0px - - - ... - - - - ../../../.designer/backup../../../.designer/backup - - - - 32 - 32 - - - - - - - - - 21 - 31 - - - - - 21 - 31 - - - - remet le filtre à blanc - - - border : 0px - - - ... - - - - ../Editeur/icons/CleanFilter.png../Editeur/icons/CleanFilter.png - - - - 32 - 32 - - - - - - - - - - - - - - Catalogue - - - - - - - Alpha - - - - - - - Qt::Horizontal - - - - 40 - 20 - - - - - - - - - - - Qt::Vertical - - - QSizePolicy::Fixed - - - - 20 - 20 - - - - - - - - - 0 - 0 - - - - QFrame::NoFrame - - - QFrame::Plain - - - true - - - - - 0 - 0 - 18 - 189 - - - - - 0 - 0 - - - - - - - <html><head/><body><p><br/></p></body></html> - - - - - - - - - - - - - Qt::Horizontal - - - QSizePolicy::Fixed - - - - 8 - 20 - - - - - - - - - 0 - 0 - - - - background : rgb(247,247,247) - - - QFrame::Box - - - QFrame::Plain - - - 1 - - - true - - - Qt::AlignBottom|Qt::AlignLeading|Qt::AlignLeft - - - - - 0 - 0 - 425 - 519 - - - - - 0 - 0 - - - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - - - Qt::Vertical - - - - 20 - 40 - - - - - - - - - - - - Qt::Horizontal - - - QSizePolicy::Preferred - - - - 8 - 108 - - - - - - - - - - 0 - - - - - - 0 - 0 - - - - background : rgb(247,247,247) - - - QFrame::Box - - - QFrame::Plain - - - 1 - - - true - - - Qt::AlignBottom|Qt::AlignLeading|Qt::AlignLeft - - - - - 0 - 0 - 421 - 474 - - - - - 0 - 0 - - - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - - - Qt::Vertical - - - - 20 - 40 - - - - - - - - - - - - - - - 0 - 0 - - - - QFrame::Box - - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - - - 0 - - - QLayout::SetFixedSize - - - - - - 21 - 31 - - - - - 21 - 31 - - - - Remonte d'une ligne - - - border : 0px - - - ... - - - - ../../../.designer/backup../../../.designer/backup - - - - 32 - 32 - - - - - - - - - 21 - 31 - - - - - 21 - 31 - - - - Descend d'une ligne - - - border : 0px - - - ... - - - - ../../../.designer/backup../../../.designer/backup - - - - 32 - 32 - - - - - - - - - 21 - 31 - - - - - 21 - 31 - - - - Détruit une ligne - - - border : 0px - - - ... - - - - .. - - - - 32 - 32 - - - - - - - - - 21 - 31 - - - - - 21 - 31 - - - - ajoute une ligne - - - border : 0px - - - ... - - - - .. - - - - 32 - 32 - - - - - - - - - - Qt::Horizontal - - - - 40 - 20 - - - - - - - - - 21 - 31 - - - - - 21 - 31 - - - - visualise l'ensemble des valeurs - - - border : 0px - - - ... - - - - .. - - - - 32 - 32 - - - - - - - - Qt::Horizontal - - - - 18 - 20 - - - - - - - - - - - - - Qt::Horizontal - - - QSizePolicy::Preferred - - - - 20 - 17 - - - - - - - - - - - 21 - 31 - - - - - 21 - 31 - - - - Détruit le mot-clef - - - border : 0px - - - ... - - - - ../../../.designer/Editeur/icons/deleteRond.png../../../.designer/Editeur/icons/deleteRond.png - - - - 32 - 32 - - - - - - - - Qt::Vertical - - - - 20 - 40 - - - - - - - - horizontalSpacer - horizontalSpacer_2 - horizontalSpacer_3 - scrollArea - - - - - MonBoutonValide - QToolButton -
        monBoutonValide.h
        -
        - - MonLabelClic - QLabel -
        monLabelClic.h
        -
        -
        - - -
        diff --git a/UiQT5/desWidgetPlusieursPlie.ui b/UiQT5/desWidgetPlusieursPlie.ui deleted file mode 100644 index a69913f6..00000000 --- a/UiQT5/desWidgetPlusieursPlie.ui +++ /dev/null @@ -1,290 +0,0 @@ - - - WidgetPlusieursPlie - - - - 0 - 0 - 1095 - 62 - - - - - 0 - 0 - - - - - 0 - 0 - - - - Form - - - - 0 - - - 0 - - - 1 - - - 0 - - - 1 - - - - - - - 0 - - - - - - 0 - 0 - - - - - 21 - 25 - - - - permet de gérer la liste - - - border:0px - - - ... - - - - ../Editeur/icons/plusnode.png../Editeur/icons/plusnode.png - - - - 25 - 25 - - - - - - - - - 21 - 25 - - - - - 21 - 25 - - - - Affiche le rapport de validité du mot-clef - - - border : 0px - - - ... - - - - ../Editeur/icons/ast-green-ball.png../Editeur/icons/ast-green-ball.png - - - - 25 - 25 - - - - - - - - - - Qt::Vertical - - - - 20 - 5 - - - - - - - - - - - 0 - 0 - - - - - 300 - 25 - - - - - 178 - 16777215 - - - - QFrame::NoFrame - - - <html><head/><body><p>aaa</p><p>dqsklmdqm</p></body></html> - - - false - - - Qt::AlignLeading|Qt::AlignLeft|Qt::AlignTop - - - - - - - - - - - background:rgb(195,195,195) - - - - - - - 0 - - - QLayout::SetFixedSize - - - - - Qt::Horizontal - - - QSizePolicy::Fixed - - - - 13 - 20 - - - - - - - - - 0 - 0 - - - - - 21 - 25 - - - - - 21 - 25 - - - - Détruit le mot-clef - - - border : 0px - - - ... - - - - ../Editeur/icons/deleteRond.png../Editeur/icons/deleteRond.png - - - - 21 - 25 - - - - - - - - - - - - Qt::Vertical - - - QSizePolicy::Expanding - - - - 20 - 5 - - - - - - - - - - - MonBoutonValide - QToolButton -
        monBoutonValide.h
        -
        - - MonLabelClic - QLabel -
        monLabelClic.h
        -
        -
        - - RBPoubelle - RBValide - - - -
        diff --git a/UiQT5/desWidgetPlusieursTuple.ui b/UiQT5/desWidgetPlusieursTuple.ui deleted file mode 100644 index a47fb9e9..00000000 --- a/UiQT5/desWidgetPlusieursTuple.ui +++ /dev/null @@ -1,652 +0,0 @@ - - - WidgetPlusieursTuple - - - - 0 - 0 - 740 - 386 - - - - - 0 - 0 - - - - - 0 - 0 - - - - Form - - - - 0 - - - - - 0 - - - - - 0 - - - - - 0 - - - QLayout::SetFixedSize - - - - - Qt::Horizontal - - - QSizePolicy::Fixed - - - - 21 - 20 - - - - - - - - - 21 - 25 - - - - - 21 - 25 - - - - Qt::ClickFocus - - - Affiche le rapport de validation du mot-clef - - - border : 0px - - - ... - - - - ../Editeur/icons/ast-green-ball.png../Editeur/icons/ast-green-ball.png - - - - 25 - 25 - - - - - - - - - - Qt::Vertical - - - - 20 - 5 - - - - - - - - - - - - 0 - - - - - - 0 - 0 - - - - - 300 - 25 - - - - - 178 - 16777215 - - - - QFrame::NoFrame - - - <html><head/><body><p>aaa</p><p>dqsklmdqm</p></body></html> - - - false - - - Qt::AlignLeading|Qt::AlignLeft|Qt::AlignTop - - - - - - - - 0 - 0 - - - - - 300 - 0 - - - - - 300 - 16777215 - - - - <html><head/><body><p><br/></p><p><br/></p></body></html> - - - - - - - - - - - QFrame::NoFrame - - - - 0 - - - 0 - - - - - - 0 - 0 - - - - background : rgb(247,247,247) - - - QFrame::NoFrame - - - 1 - - - true - - - Qt::AlignBottom|Qt::AlignLeading|Qt::AlignLeft - - - - - 0 - 0 - 279 - 307 - - - - - 0 - 0 - - - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - - - Qt::Vertical - - - - 20 - 13 - - - - - - - - - - - - - - - QFrame::Box - - - - 0 - - - 0 - - - 0 - - - 0 - - - - - 0 - - - QLayout::SetFixedSize - - - - - - 21 - 31 - - - - - 21 - 31 - - - - Qt::ClickFocus - - - Remonte la ligne - - - border : 0px - - - ... - - - - .. - - - - 32 - 32 - - - - - - - - - 21 - 31 - - - - - 21 - 31 - - - - Qt::ClickFocus - - - Descend la ligne - - - border : 0px - - - ... - - - - .. - - - - 32 - 32 - - - - - - - - - 21 - 31 - - - - - 21 - 31 - - - - Qt::ClickFocus - - - supprime une ligne - - - border : 0px - - - - ../Editeur/icons/MoinsBleu.png../Editeur/icons/MoinsBleu.png - - - - 32 - 32 - - - - - - - - - 21 - 31 - - - - - 21 - 31 - - - - Qt::ClickFocus - - - Ajoute une ligne - - - border : 0px - - - ... - - - - ../Editeur/icons/PlusBleu.png../Editeur/icons/PlusBleu.png - - - - 32 - 32 - - - - - - - - - - Qt::Horizontal - - - QSizePolicy::Minimum - - - - 40 - 20 - - - - - - - - - 21 - 31 - - - - - 21 - 31 - - - - Qt::ClickFocus - - - Montre l'ensemble des valeurs - - - border : 0px - - - ... - - - - .. - - - - 32 - 32 - - - - - - - - - - - - - - - 0 - - - - - - 0 - 0 - - - - - 25 - 30 - - - - Qt::ClickFocus - - - Ouvre un fichier de sélection des valeurs - - - border:0px - - - ... - - - - .. - - - - 32 - 32 - - - - - - - - Qt::Horizontal - - - QSizePolicy::Fixed - - - - 13 - 20 - - - - - - - - - 21 - 31 - - - - - 21 - 31 - - - - Qt::ClickFocus - - - Détruit le mot-clef - - - border : 0px - - - ... - - - - ../Editeur/icons/deleteRond.png../Editeur/icons/deleteRond.png - - - - 32 - 32 - - - - - - - - - - Valide - - - - - - - Qt::Vertical - - - - 20 - 40 - - - - - - - - - - - MonBoutonValide - QToolButton -
        monBoutonValide.h
        -
        - - MonLabelClic - QLabel -
        monLabelClic.h
        -
        -
        - - -
        diff --git a/UiQT5/desWidgetRadioButton.ui b/UiQT5/desWidgetRadioButton.ui deleted file mode 100644 index 07399485..00000000 --- a/UiQT5/desWidgetRadioButton.ui +++ /dev/null @@ -1,315 +0,0 @@ - - - WidgetRadioButton - - - - 0 - 0 - 743 - 60 - - - - - 0 - 0 - - - - - 0 - 0 - - - - - 1677721 - 60 - - - - Form - - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - - - 0 - - - - - 0 - - - QLayout::SetFixedSize - - - - - Qt::Horizontal - - - QSizePolicy::Fixed - - - - 21 - 20 - - - - - - - - - 21 - 25 - - - - - 21 - 25 - - - - Qt::ClickFocus - - - Affiche le rapport de validation du mot-clef - - - border : 0px - - - ... - - - - ../Editeur/icons/ast-green-ball.png../Editeur/icons/ast-green-ball.png - - - - 25 - 25 - - - - - - - - - - Qt::Vertical - - - - 20 - 5 - - - - - - - - - - - 0 - 0 - - - - - 300 - 25 - - - - - 178 - 16777215 - - - - QFrame::NoFrame - - - <html><head/><body><p>aaa</p><p>dqsklmdqm</p></body></html> - - - false - - - Qt::AlignLeading|Qt::AlignLeft|Qt::AlignTop - - - - - - - 0 - - - QLayout::SetMinimumSize - - - - - 0 - - - - - - 0 - 0 - - - - RadioButton - - - - - - - - 0 - 0 - - - - - 0 - 25 - - - - RadioButton - - - - - - - - 0 - 0 - - - - RadioButton - - - - - - - Qt::Horizontal - - - QSizePolicy::Expanding - - - - 13 - 20 - - - - - - - - - 21 - 25 - - - - - 21 - 25 - - - - Qt::ClickFocus - - - Détruit le mot-clef - - - border : 0px - - - ... - - - - ../Editeur/icons/deleteRond.png../Editeur/icons/deleteRond.png - - - - 25 - 25 - - - - - - - - - - Qt::Vertical - - - - 20 - 13 - - - - - - - - label - - - - - MonBoutonValide - QToolButton -
        monBoutonValide.h
        -
        - - MonLabelClic - QLabel -
        monLabelClic.h
        -
        -
        - - -
        diff --git a/UiQT5/desWidgetSDCOInto.ui b/UiQT5/desWidgetSDCOInto.ui deleted file mode 100644 index 8974f213..00000000 --- a/UiQT5/desWidgetSDCOInto.ui +++ /dev/null @@ -1,360 +0,0 @@ - - - WidgetSDCOInto - - - - 0 - 0 - 858 - 312 - - - - - 0 - 0 - - - - - 0 - 0 - - - - Form - - - - 0 - - - 0 - - - 1 - - - 0 - - - 1 - - - - - 0 - - - - - 0 - - - QLayout::SetFixedSize - - - - - Qt::Horizontal - - - QSizePolicy::Fixed - - - - 21 - 20 - - - - - - - - - 21 - 25 - - - - - 21 - 25 - - - - Qt::ClickFocus - - - Affiche le rapport de validation du mot-clef - - - border : 0px - - - ... - - - - ../Editeur/icons/ast-green-ball.png../Editeur/icons/ast-green-ball.png - - - - 25 - 25 - - - - - - - - - - Qt::Vertical - - - - 20 - 5 - - - - - - - - - - - 0 - 0 - - - - - 300 - 25 - - - - - 178 - 16777215 - - - - QFrame::NoFrame - - - <html><head/><body><p>aaa</p><p>dqsklmdqm</p></body></html> - - - false - - - Qt::AlignLeading|Qt::AlignLeft|Qt::AlignTop - - - - - - - QFrame::Box - - - - 0 - - - - - - 0 - 0 - - - - - 16777215 - 31 - - - - <html><head/><body><p>Structures de données du type requis </p><p><br/></p></body></html> - - - false - - - - - - - - 0 - 0 - - - - - 16777215 - 200 - - - - QFrame::NoFrame - - - true - - - - - 0 - 0 - 462 - 200 - - - - - - - QFrame::NoFrame - - - - - - - - - - - - 0 - 0 - - - - <html><head/><body><p>ou Nom du concept</p></body></html> - - - - - - - - 0 - 0 - - - - - 0 - 25 - - - - - 805 - 31 - - - - background:rgb(235,235,235); -border:0px; - - - - - - - - - - Qt::Horizontal - - - QSizePolicy::Preferred - - - - 20 - 17 - - - - - - - - - - - 21 - 31 - - - - - 21 - 31 - - - - Détruit le mot-clef - - - border : 0px - - - ... - - - - ../Editeur/icons/deleteRond.png../Editeur/icons/deleteRond.png - - - - 32 - 32 - - - - - - - - Qt::Vertical - - - - 20 - 40 - - - - - - - - - - - MonBoutonValide - QToolButton -
        monBoutonValide.h
        -
        - - MonLabelClic - QLabel -
        monLabelClic.h
        -
        -
        - - -
        diff --git a/UiQT5/desWidgetSimpBase.ui b/UiQT5/desWidgetSimpBase.ui deleted file mode 100644 index 60c7dce5..00000000 --- a/UiQT5/desWidgetSimpBase.ui +++ /dev/null @@ -1,304 +0,0 @@ - - - WidgetSimpBase - - - - 0 - 0 - 743 - 60 - - - - - 0 - 0 - - - - - 0 - 0 - - - - - 1677721 - 60 - - - - Form - - - - 0 - - - 0 - - - 1 - - - 0 - - - 1 - - - - - 0 - - - - - 0 - - - QLayout::SetFixedSize - - - - - Qt::Horizontal - - - QSizePolicy::Fixed - - - - 21 - 20 - - - - - - - - - 21 - 25 - - - - - 21 - 25 - - - - Qt::ClickFocus - - - Affiche le rapport de validation du mot-clef - - - border : 0px - - - ... - - - - ../Editeur/icons/ast-green-ball.png../Editeur/icons/ast-green-ball.png - - - - 25 - 25 - - - - - - - - - - Qt::Vertical - - - - 20 - 5 - - - - - - - - - - - 0 - 0 - - - - - 300 - 25 - - - - - 178 - 16777215 - - - - QFrame::NoFrame - - - <html><head/><body><p>aaa</p><p>dqsklmdqm</p></body></html> - - - false - - - Qt::AlignLeading|Qt::AlignLeft|Qt::AlignTop - - - - - - - 0 - - - - - - - - 0 - 0 - - - - - 0 - 25 - - - - - 805 - 16777215 - - - - background:rgb(235,235,235); -border:0px; - - - - - - - Qt::Horizontal - - - QSizePolicy::Fixed - - - - 3 - 20 - - - - - - - - Qt::Horizontal - - - QSizePolicy::Expanding - - - - 58 - 20 - - - - - - - - - 21 - 25 - - - - - 21 - 25 - - - - Qt::ClickFocus - - - Détruit le mot-clef - - - border : 0px - - - ... - - - - ../Editeur/icons/deleteRond.png../Editeur/icons/deleteRond.png - - - - 25 - 25 - - - - - - - - - - Qt::Vertical - - - - 20 - 5 - - - - - - - - - - - MonBoutonValide - QToolButton -
        monBoutonValide.h
        -
        - - MonLabelClic - QLabel -
        monLabelClic.h
        -
        -
        - - -
        diff --git a/UiQT5/desWidgetSimpBool.ui b/UiQT5/desWidgetSimpBool.ui deleted file mode 100644 index 6a1577ae..00000000 --- a/UiQT5/desWidgetSimpBool.ui +++ /dev/null @@ -1,300 +0,0 @@ - - - WidgetSimpBool - - - - 0 - 0 - 1065 - 56 - - - - - 0 - 0 - - - - - 0 - 0 - - - - - 1493 - 56 - - - - Form - - - - 0 - - - 0 - - - - - 0 - - - - - 0 - - - QLayout::SetFixedSize - - - - - Qt::Horizontal - - - QSizePolicy::Fixed - - - - 21 - 20 - - - - - - - - - 21 - 25 - - - - - 21 - 25 - - - - Qt::ClickFocus - - - Affiche le rapport de validation du mot-clef - - - border : 0px - - - ... - - - - ../Editeur/icons/ast-green-ball.png../Editeur/icons/ast-green-ball.png - - - - 25 - 25 - - - - - - - - - - Qt::Vertical - - - - 20 - 5 - - - - - - - - - - - 0 - 0 - - - - - 300 - 25 - - - - - 178 - 16777215 - - - - QFrame::NoFrame - - - <html><head/><body><p>aaa</p><p>dqsklmdqm</p></body></html> - - - false - - - Qt::AlignLeading|Qt::AlignLeft|Qt::AlignTop - - - - - - - - - - - True - - - - - - - Qt::Horizontal - - - QSizePolicy::Fixed - - - - 40 - 20 - - - - - - - - False - - - - - - - Qt::Horizontal - - - - 50 - 20 - - - - - - - - - - Qt::Vertical - - - QSizePolicy::Minimum - - - - 20 - 5 - - - - - - - - - - - - - 0 - 0 - - - - - 21 - 25 - - - - - 21 - 25 - - - - Détruit le mot-clef - - - border : 0px - - - ... - - - - ../Editeur/icons/deleteRond.png../Editeur/icons/deleteRond.png - - - - 25 - 25 - - - - - - - - Qt::Vertical - - - - 20 - 5 - - - - - - - - - - - MonBoutonValide - QToolButton -
        monBoutonValide.h
        -
        - - MonLabelClic - QLabel -
        monLabelClic.h
        -
        -
        - - -
        diff --git a/UiQT5/desWidgetSimpComplexe.ui b/UiQT5/desWidgetSimpComplexe.ui deleted file mode 100644 index 4e9db7e6..00000000 --- a/UiQT5/desWidgetSimpComplexe.ui +++ /dev/null @@ -1,390 +0,0 @@ - - - WidgetSimpComplexe - - - - 0 - 0 - 1242 - 87 - - - - - 0 - 0 - - - - - 940 - 0 - - - - - 1493 - 1400 - - - - Form - - - QLineEdit { -background:rgb(235,235,235); -border:0px; -} - - - - 0 - - - 0 - - - 1 - - - 0 - - - 1 - - - - - 0 - - - - - 0 - - - QLayout::SetFixedSize - - - - - Qt::Horizontal - - - QSizePolicy::Fixed - - - - 21 - 20 - - - - - - - - - 21 - 25 - - - - - 21 - 25 - - - - Qt::ClickFocus - - - Affiche le rapport de validation du mot-clef - - - border : 0px - - - ... - - - - ../Editeur/icons/ast-green-ball.png../Editeur/icons/ast-green-ball.png - - - - 25 - 25 - - - - - - - - - - Qt::Vertical - - - - 20 - 5 - - - - - - - - - - - 0 - 0 - - - - - 300 - 25 - - - - - 178 - 16777215 - - - - QFrame::NoFrame - - - <html><head/><body><p>aaa</p><p>dqsklmdqm</p></body></html> - - - false - - - Qt::AlignLeading|Qt::AlignLeft|Qt::AlignTop - - - - - - - QFrame::Box - - - - - - - - - 0 - 0 - - - - - 0 - 29 - - - - - 16777215 - 29 - - - - Complexe : a+bj - - - - - - - Qt::Horizontal - - - - 19 - 20 - - - - - - - - - - false - - - - - - - - 0 - 0 - - - - - 50 - 24 - - - - <html><head/><body><p align="center">OU </p></body></html> - - - - - - - 4 - - - 0 - - - - - Réel/Imaginaire - - - - - - - Module/Phase - - - - - - - - - - - false - - - - - - - Qt::Horizontal - - - - 5 - 20 - - - - - - - - false - - - - - - - - - Qt::Vertical - - - - 17 - 20 - - - - - - - - - - - - - - 21 - 31 - - - - - 21 - 31 - - - - border : 0px - - - ... - - - - ../Editeur/icons/deleteRond.png../Editeur/icons/deleteRond.png - - - - 32 - 32 - - - - - - - - Qt::Vertical - - - - 18 - 47 - - - - - - - - - - - MonBoutonValide - QToolButton -
        monBoutonValide.h
        -
        - - MonLabelClic - QLabel -
        monLabelClic.h
        -
        -
        - - LEComp - RBRI - RBMP - RBPoubelle - - - -
        diff --git a/UiQT5/desWidgetSimpFichier.ui b/UiQT5/desWidgetSimpFichier.ui deleted file mode 100644 index 408f8dfb..00000000 --- a/UiQT5/desWidgetSimpFichier.ui +++ /dev/null @@ -1,374 +0,0 @@ - - - WidgetSimpFichier - - - - 0 - 0 - 1095 - 62 - - - - - 0 - 0 - - - - - 0 - 0 - - - - Form - - - - 0 - - - 0 - - - 1 - - - 0 - - - 1 - - - - - - - 0 - - - - - Qt::Horizontal - - - QSizePolicy::Fixed - - - - 21 - 20 - - - - - - - - - 21 - 25 - - - - - 21 - 25 - - - - Affiche le rapport de validité du mot-clef - - - border : 0px - - - ... - - - - ../Editeur/icons/ast-green-ball.png../Editeur/icons/ast-green-ball.png - - - - 25 - 25 - - - - - - - - - - Qt::Vertical - - - - 20 - 5 - - - - - - - - - - - 0 - 0 - - - - - 300 - 25 - - - - - 178 - 16777215 - - - - QFrame::NoFrame - - - <html><head/><body><p>aaa</p><p>dqsklmdqm</p></body></html> - - - false - - - Qt::AlignLeading|Qt::AlignLeft|Qt::AlignTop - - - - - - - - - - - - 1 - 0 - - - - - 0 - 25 - - - - - 805 - 16777215 - - - - background:rgb(235,235,235); -border:0px; - - - - - - - Qt::Horizontal - - - QSizePolicy::MinimumExpanding - - - - 71 - 20 - - - - - - - - 0 - - - QLayout::SetFixedSize - - - - - - 0 - 0 - - - - - 25 - 25 - - - - affiche l'explorateur de fichier - - - border : 0px - - - ... - - - - - - - - - 25 - 25 - - - - - - - - - 25 - 25 - - - - ouvre le fichier choisi - - - border:0px - - - ... - - - - ../Editeur/icons/visuFichier.png../Editeur/icons/visuFichier.png - - - - 25 - 25 - - - - - - - - Qt::Horizontal - - - QSizePolicy::Fixed - - - - 13 - 20 - - - - - - - - - 0 - 0 - - - - - 21 - 25 - - - - - 21 - 25 - - - - Détruit le mot-clef - - - border : 0px - - - ... - - - - ../Editeur/icons/deleteRond.png../Editeur/icons/deleteRond.png - - - - 21 - 25 - - - - - - - - - - - - Qt::Vertical - - - QSizePolicy::Expanding - - - - 20 - 5 - - - - - - - - - - - MonBoutonValide - QToolButton -
        monBoutonValide.h
        -
        - - MonLabelClic - QLabel -
        monLabelClic.h
        -
        -
        - - lineEditVal - BFichier - BVisuFichier - RBPoubelle - RBValide - - - -
        diff --git a/UiQT5/desWidgetSimpSalome.ui b/UiQT5/desWidgetSimpSalome.ui deleted file mode 100644 index ba8ed2fd..00000000 --- a/UiQT5/desWidgetSimpSalome.ui +++ /dev/null @@ -1,373 +0,0 @@ - - - WidgetSimpSalome - - - - 0 - 0 - 1095 - 62 - - - - - 0 - 0 - - - - - 0 - 0 - - - - Form - - - - 0 - - - 0 - - - 1 - - - 0 - - - 1 - - - - - - - 0 - - - - - Qt::Horizontal - - - QSizePolicy::Fixed - - - - 21 - 20 - - - - - - - - - 21 - 25 - - - - - 21 - 25 - - - - Affiche le rapport de validité du mot-clef - - - border : 0px - - - ... - - - - ../Editeur/icons/ast-green-ball.png../Editeur/icons/ast-green-ball.png - - - - 25 - 25 - - - - - - - - - - Qt::Vertical - - - - 20 - 5 - - - - - - - - - - - 0 - 0 - - - - - 300 - 25 - - - - - 178 - 16777215 - - - - QFrame::NoFrame - - - <html><head/><body><p>aaa</p><p>dqsklmdqm</p></body></html> - - - false - - - Qt::AlignLeading|Qt::AlignLeft|Qt::AlignTop - - - - - - - - - - - - 1 - 0 - - - - - 0 - 25 - - - - - 805 - 16777215 - - - - background:rgb(235,235,235); -border:0px; - - - - - - - Qt::Horizontal - - - QSizePolicy::MinimumExpanding - - - - 71 - 20 - - - - - - - - 0 - - - QLayout::SetFixedSize - - - - - - 0 - 0 - - - - - 25 - 25 - - - - affiche l'explorateur de fichier - - - border : 0px - - - ... - - - - ../Editeur/icons/flecheSalome.png../Editeur/icons/flecheSalome.png - - - - 25 - 25 - - - - - - - - - 25 - 25 - - - - ouvre le fichier choisi - - - border:0px - - - ... - - - - ../Editeur/icons/eye.png../Editeur/icons/eye.png - - - - 25 - 25 - - - - - - - - Qt::Horizontal - - - QSizePolicy::Fixed - - - - 13 - 20 - - - - - - - - - 0 - 0 - - - - - 21 - 25 - - - - - 21 - 25 - - - - Détruit le mot-clef - - - border : 0px - - - ... - - - - ../Editeur/icons/deleteRond.png../Editeur/icons/deleteRond.png - - - - 21 - 25 - - - - - - - - - - - - Qt::Vertical - - - QSizePolicy::Expanding - - - - 20 - 5 - - - - - - - - - - - MonBoutonValide - QToolButton -
        monBoutonValide.h
        -
        - - MonLabelClic - QLabel -
        monLabelClic.h
        -
        -
        - - lineEditVal - RBSalome - RBSalomeVue - RBPoubelle - RBValide - - - -
        diff --git a/UiQT5/desWidgetSimpTxt.ui b/UiQT5/desWidgetSimpTxt.ui deleted file mode 100644 index 43a90938..00000000 --- a/UiQT5/desWidgetSimpTxt.ui +++ /dev/null @@ -1,304 +0,0 @@ - - - WidgetSimpTxt - - - - 0 - 0 - 743 - 31 - - - - - 0 - 0 - - - - - 0 - 0 - - - - - 1677721 - 60 - - - - Form - - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - - - 0 - - - - - 0 - - - QLayout::SetFixedSize - - - - - Qt::Horizontal - - - QSizePolicy::Fixed - - - - 21 - 20 - - - - - - - - - 21 - 25 - - - - - 21 - 25 - - - - Qt::ClickFocus - - - Affiche le rapport de validation du mot-clef - - - border : 0px - - - ... - - - - ../Editeur/icons/ast-green-ball.png../Editeur/icons/ast-green-ball.png - - - - 25 - 25 - - - - - - - - - - Qt::Vertical - - - - 20 - 5 - - - - - - - - - - - 0 - 0 - - - - - 300 - 25 - - - - - 300 - 16777215 - - - - QFrame::NoFrame - - - <html><head/><body><p><br/></p></body></html> - - - false - - - Qt::AlignLeading|Qt::AlignLeft|Qt::AlignTop - - - - - - - 0 - - - - - - - - 1 - 0 - - - - - 0 - 25 - - - - - 805 - 16777215 - - - - background:rgb(235,235,235); -border:0px; - - - - - - - Qt::Horizontal - - - QSizePolicy::Fixed - - - - 3 - 20 - - - - - - - - Qt::Horizontal - - - QSizePolicy::Expanding - - - - 5 - 20 - - - - - - - - - 21 - 25 - - - - - 21 - 25 - - - - Qt::ClickFocus - - - Détruit le mot-clef - - - border : 0px - - - ... - - - - ../Editeur/icons/deleteRond.png../Editeur/icons/deleteRond.png - - - - 25 - 25 - - - - - - - - - - Qt::Vertical - - - - 20 - 1 - - - - - - - - - - - MonBoutonValide - QToolButton -
        monBoutonValide.h
        -
        - - MonLabelClic - QLabel -
        monLabelClic.h
        -
        -
        - - -
        diff --git a/UiQT5/desWidgetTableau.ui b/UiQT5/desWidgetTableau.ui deleted file mode 100644 index 30e2f41c..00000000 --- a/UiQT5/desWidgetTableau.ui +++ /dev/null @@ -1,623 +0,0 @@ - - - WidgetTableau - - - - 0 - 0 - 1094 - 304 - - - - - 0 - 0 - - - - - 0 - 0 - - - - Form - - - - 0 - - - 0 - - - - - - - 0 - - - QLayout::SetFixedSize - - - - - Qt::Horizontal - - - QSizePolicy::Fixed - - - - 21 - 20 - - - - - - - - - 21 - 25 - - - - - 21 - 25 - - - - Qt::ClickFocus - - - Affiche le rapport de validation du mot-clef - - - border : 0px - - - ... - - - - ../Editeur/icons/ast-green-ball.png../Editeur/icons/ast-green-ball.png - - - - 25 - 25 - - - - - - - - - - Qt::Vertical - - - QSizePolicy::Fixed - - - - 20 - 40 - - - - - - - - - 0 - 0 - - - - QFrame::Box - - - - - - - 21 - 31 - - - - - 21 - 31 - - - - Qt::ClickFocus - - - Ajoute une ligne - - - border : 0px - - - ... - - - - - - - 32 - 32 - - - - - - - - - 21 - 31 - - - - - 21 - 31 - - - - Qt::ClickFocus - - - supprime une ligne - - - border : 0px - - - - - - - 32 - 32 - - - - - - - - - 21 - 31 - - - - - 21 - 31 - - - - Qt::ClickFocus - - - Remonte la ligne - - - border : 0px - - - ... - - - - - - - - - 32 - 32 - - - - - - - - - 21 - 31 - - - - - 21 - 31 - - - - Qt::ClickFocus - - - Descend la ligne - - - border : 0px - - - ... - - - - - - - - - 32 - 32 - - - - - - - - - 21 - 31 - - - - - 21 - 31 - - - - Qt::ClickFocus - - - Montre l'ensemble des valeurs - - - border : 0px - - - ... - - - - - - - 32 - 32 - - - - - - - - - - - Qt::Vertical - - - - 20 - 13 - - - - - - - - - - - - - - - 0 - 0 - - - - - 300 - 25 - - - - - 178 - 16777215 - - - - QFrame::NoFrame - - - <html><head/><body><p>aaa</p><p>dqsklmdqm</p></body></html> - - - false - - - Qt::AlignLeading|Qt::AlignLeft|Qt::AlignTop - - - - - - - Qt::Horizontal - - - - 40 - 20 - - - - - - - - - - - - Qt::Horizontal - - - - 40 - 20 - - - - - - - - - - QFrame::NoFrame - - - - 0 - - - 0 - - - - - - 0 - 0 - - - - background : rgb(247,247,247) - - - QFrame::NoFrame - - - 1 - - - true - - - Qt::AlignBottom|Qt::AlignLeading|Qt::AlignLeft - - - - - 0 - 0 - 947 - 205 - - - - - 0 - 0 - - - - - 2 - - - 0 - - - - - Qt::Vertical - - - - 20 - 500 - - - - - - - - - - - - - - - - - - - 0 - - - - - - 0 - 0 - - - - - 25 - 30 - - - - Qt::ClickFocus - - - Ouvre un fichier de sélection des valeurs - - - border:0px - - - ... - - - - - - - - - 32 - 32 - - - - - - - - Qt::Horizontal - - - QSizePolicy::Fixed - - - - 13 - 20 - - - - - - - - - 21 - 31 - - - - - 21 - 31 - - - - Qt::ClickFocus - - - Détruit le mot-clef - - - border : 0px - - - ... - - - - ../Editeur/icons/deleteRond.png../Editeur/icons/deleteRond.png - - - - 32 - 32 - - - - - - - - - - Valide - - - - - - - Qt::Vertical - - - - 20 - 40 - - - - - - - - - - - - MonBoutonValide - QToolButton -
        monBoutonValide.h
        -
        - - MonLabelClic - QLabel -
        monLabelClic.h
        -
        -
        - - -
        diff --git a/UiQT5/desWidgetTuple10.ui b/UiQT5/desWidgetTuple10.ui deleted file mode 100644 index e3c04710..00000000 --- a/UiQT5/desWidgetTuple10.ui +++ /dev/null @@ -1,590 +0,0 @@ - - - WidgetTuple10 - - - - 0 - 0 - 1282 - 61 - - - - - 0 - 0 - - - - - 0 - 0 - - - - Form - - - - 0 - - - 1 - - - 0 - - - 0 - - - 1 - - - - - 0 - - - - - 0 - - - QLayout::SetFixedSize - - - - - Qt::Horizontal - - - QSizePolicy::Fixed - - - - 21 - 20 - - - - - - - - - 21 - 25 - - - - - 21 - 25 - - - - Qt::ClickFocus - - - Affiche le rapport de validation du mot-clef - - - border : 0px - - - ... - - - - ../Editeur/icons/ast-green-ball.png../Editeur/icons/ast-green-ball.png - - - - 25 - 25 - - - - - - - - - - Qt::Vertical - - - - 20 - 5 - - - - - - - - - - - 0 - 0 - - - - - 300 - 25 - - - - - 178 - 16777215 - - - - QFrame::NoFrame - - - <html><head/><body><p>aaa</p><p>dqsklmdqm</p></body></html> - - - false - - - Qt::AlignLeading|Qt::AlignLeft|Qt::AlignTop - - - - - - - - - - - <html><head/><body><p><span style=" font-size:14pt;">(</span></p></body></html> - - - - - - - - 0 - 0 - - - - - 0 - 25 - - - - - 805 - 16777215 - - - - background:rgb(235,235,235); -border:0px; - - - - - - - <html><head/><body><p><span style=" font-size:14pt;">,</span></p></body></html> - - - - - - - - 0 - 0 - - - - - 0 - 25 - - - - - 805 - 16777215 - - - - Qt::StrongFocus - - - background:rgb(235,235,235); -border:0px; - - - - - - - <html><head/><body><p><span style=" font-size:14pt;">,</span></p></body></html> - - - - - - - - 0 - 0 - - - - - 0 - 25 - - - - - 805 - 16777215 - - - - Qt::StrongFocus - - - background:rgb(235,235,235); -border:0px; - - - - - - - <html><head/><body><p><span style=" font-size:14pt;">,</span></p></body></html> - - - - - - - - 0 - 0 - - - - - 0 - 25 - - - - - 10000 - 16777215 - - - - Qt::StrongFocus - - - background:rgb(235,235,235); -border:0px; - - - - - - - <html><head/><body><p><span style=" font-size:14pt;">,</span></p></body></html> - - - - - - - - 0 - 0 - - - - - 0 - 25 - - - - - 10000 - 16777215 - - - - Qt::StrongFocus - - - background:rgb(235,235,235); -border:0px; - - - - - - - <html><head/><body><p><span style=" font-size:14pt;">,</span></p></body></html> - - - - - - - - 0 - 0 - - - - - 0 - 25 - - - - - 10000 - 16777215 - - - - Qt::StrongFocus - - - background:rgb(235,235,235); -border:0px; - - - - - - - <html><head/><body><p><span style=" font-size:14pt;">,</span></p></body></html> - - - - - - - - 0 - 0 - - - - - 0 - 25 - - - - - 10000 - 16777215 - - - - Qt::StrongFocus - - - background:rgb(235,235,235); -border:0px; - - - - - - - <html><head/><body><p><span style=" font-size:14pt;">,</span></p></body></html> - - - - - - - - 0 - 0 - - - - - 0 - 25 - - - - - 10000 - 16777215 - - - - Qt::StrongFocus - - - background:rgb(235,235,235); -border:0px; - - - - - - - <html><head/><body><p><span style=" font-size:14pt;">,</span></p></body></html> - - - - - - - - 0 - 0 - - - - - 0 - 25 - - - - - 10000 - 16777215 - - - - Qt::StrongFocus - - - background:rgb(235,235,235); -border:0px; - - - - - - - <html><head/><body><p><span style=" font-size:14pt;">,</span></p></body></html> - - - - - - - <html><head/><body><p><span style=" font-size:14pt;">)</span></p></body></html> - - - - - - - Qt::Horizontal - - - - 40 - 20 - - - - - - - - - 21 - 25 - - - - - 21 - 25 - - - - Qt::ClickFocus - - - Détruit le mot-clef - - - border : 0px - - - ... - - - - ../Editeur/icons/deleteRond.png../Editeur/icons/deleteRond.png - - - - 25 - 25 - - - - - - - - - - Qt::Vertical - - - - 20 - 13 - - - - - - - - - - - MonBoutonValide - QToolButton -
        monBoutonValide.h
        -
        - - MonLabelClic - QLabel -
        monLabelClic.h
        -
        - - LECustomTuple - QLineEdit -
        gereListe.h
        -
        -
        - - -
        diff --git a/UiQT5/desWidgetTuple2.ui b/UiQT5/desWidgetTuple2.ui deleted file mode 100644 index 9c45154b..00000000 --- a/UiQT5/desWidgetTuple2.ui +++ /dev/null @@ -1,345 +0,0 @@ - - - WidgetTuple2 - - - - 0 - 0 - 936 - 62 - - - - - 0 - 0 - - - - - 0 - 0 - - - - Form - - - - - - - 0 - - - 0 - - - 1 - - - 0 - - - 1 - - - - - 0 - - - - - 0 - - - QLayout::SetFixedSize - - - - - Qt::Horizontal - - - QSizePolicy::Fixed - - - - 21 - 20 - - - - - - - - - 21 - 25 - - - - - 21 - 25 - - - - Qt::ClickFocus - - - Affiche le rapport de validation du mot-clef - - - border : 0px - - - ... - - - - ../Editeur/icons/ast-green-ball.png../Editeur/icons/ast-green-ball.png - - - - 25 - 25 - - - - - - - - - - Qt::Vertical - - - - 20 - 5 - - - - - - - - - - - 0 - 0 - - - - - 300 - 25 - - - - - 178 - 16777215 - - - - QFrame::NoFrame - - - <html><head/><body><p>aaa</p><p>dqsklmdqm</p></body></html> - - - false - - - Qt::AlignLeading|Qt::AlignLeft|Qt::AlignTop - - - - - - - - - - - - - <html><head/><body><p><span style=" font-size:14pt;">(</span></p></body></html> - - - - - - - - 0 - 0 - - - - - 0 - 25 - - - - - 805 - 16777215 - - - - background:rgb(235,235,235); -border:0px; - - - - - false - - - - - - - <html><head/><body><p><span style=" font-size:14pt;">,</span></p></body></html> - - - - - - - - 0 - 0 - - - - - 0 - 25 - - - - - 805 - 16777215 - - - - Qt::StrongFocus - - - background:rgb(235,235,235); -border:0px; - - - - - - - <html><head/><body><p><span style=" font-size:14pt;">)</span></p></body></html> - - - - - - - - - Qt::Horizontal - - - QSizePolicy::Expanding - - - - 58 - 20 - - - - - - - - - 21 - 25 - - - - - 21 - 25 - - - - Qt::ClickFocus - - - Détruit le mot-clef - - - border : 0px - - - ... - - - - ../Editeur/icons/deleteRond.png../Editeur/icons/deleteRond.png - - - - 25 - 25 - - - - - - - - - - Qt::Vertical - - - - 20 - 5 - - - - - - - - - - - MonBoutonValide - QToolButton -
        monBoutonValide.h
        -
        - - MonLabelClic - QLabel -
        monLabelClic.h
        -
        -
        - - lineEditVal1 - lineEditVal2 - - - -
        diff --git a/UiQT5/desWidgetTuple3.ui b/UiQT5/desWidgetTuple3.ui deleted file mode 100644 index a31e9b55..00000000 --- a/UiQT5/desWidgetTuple3.ui +++ /dev/null @@ -1,362 +0,0 @@ - - - WidgetTuple3 - - - - 0 - 0 - 1282 - 61 - - - - - 0 - 0 - - - - - 0 - 0 - - - - Form - - - - 0 - - - 1 - - - 0 - - - 0 - - - 1 - - - - - 0 - - - - - 0 - - - QLayout::SetFixedSize - - - - - Qt::Horizontal - - - QSizePolicy::Fixed - - - - 21 - 20 - - - - - - - - - 21 - 25 - - - - - 21 - 25 - - - - Qt::ClickFocus - - - Affiche le rapport de validation du mot-clef - - - border : 0px - - - ... - - - - ../Editeur/icons/ast-green-ball.png../Editeur/icons/ast-green-ball.png - - - - 25 - 25 - - - - - - - - - - Qt::Vertical - - - - 20 - 5 - - - - - - - - - - - 0 - 0 - - - - - 300 - 25 - - - - - 178 - 16777215 - - - - QFrame::NoFrame - - - <html><head/><body><p>aaa</p><p>dqsklmdqm</p></body></html> - - - false - - - Qt::AlignLeading|Qt::AlignLeft|Qt::AlignTop - - - - - - - - - - - <html><head/><body><p><span style=" font-size:14pt;">(</span></p></body></html> - - - - - - - - 0 - 0 - - - - - 0 - 25 - - - - - 805 - 16777215 - - - - background:rgb(235,235,235); -border:0px; - - - - - - - <html><head/><body><p><span style=" font-size:14pt;">,</span></p></body></html> - - - - - - - - 0 - 0 - - - - - 0 - 25 - - - - - 805 - 16777215 - - - - Qt::StrongFocus - - - background:rgb(235,235,235); -border:0px; - - - - - - - <html><head/><body><p><span style=" font-size:14pt;">,</span></p></body></html> - - - - - - - - 0 - 0 - - - - - 0 - 25 - - - - - 805 - 16777215 - - - - Qt::StrongFocus - - - background:rgb(235,235,235); -border:0px; - - - - - - - <html><head/><body><p><span style=" font-size:14pt;">)</span></p></body></html> - - - - - - - Qt::Horizontal - - - - 40 - 20 - - - - - - - - - 21 - 25 - - - - - 21 - 25 - - - - Qt::ClickFocus - - - Détruit le mot-clef - - - border : 0px - - - ... - - - - ../Editeur/icons/deleteRond.png../Editeur/icons/deleteRond.png - - - - 25 - 25 - - - - - - - - - - Qt::Vertical - - - - 20 - 13 - - - - - - - - - - - MonBoutonValide - QToolButton -
        monBoutonValide.h
        -
        - - MonLabelClic - QLabel -
        monLabelClic.h
        -
        -
        - - -
        diff --git a/UiQT5/desWidgetTuple4.ui b/UiQT5/desWidgetTuple4.ui deleted file mode 100644 index c939a9fb..00000000 --- a/UiQT5/desWidgetTuple4.ui +++ /dev/null @@ -1,403 +0,0 @@ - - - WidgetTuple4 - - - - 0 - 0 - 1282 - 61 - - - - - 0 - 0 - - - - - 0 - 0 - - - - Form - - - - 0 - - - 1 - - - 0 - - - 0 - - - 1 - - - - - 0 - - - - - 0 - - - QLayout::SetFixedSize - - - - - Qt::Horizontal - - - QSizePolicy::Fixed - - - - 21 - 20 - - - - - - - - - 21 - 25 - - - - - 21 - 25 - - - - Qt::ClickFocus - - - Affiche le rapport de validation du mot-clef - - - border : 0px - - - ... - - - - ../Editeur/icons/ast-green-ball.png../Editeur/icons/ast-green-ball.png - - - - 25 - 25 - - - - - - - - - - Qt::Vertical - - - - 20 - 5 - - - - - - - - - - - 0 - 0 - - - - - 300 - 25 - - - - - 178 - 16777215 - - - - QFrame::NoFrame - - - <html><head/><body><p>aaa</p><p>dqsklmdqm</p></body></html> - - - false - - - Qt::AlignLeading|Qt::AlignLeft|Qt::AlignTop - - - - - - - - - - - <html><head/><body><p><span style=" font-size:14pt;">(</span></p></body></html> - - - - - - - - 0 - 0 - - - - - 0 - 25 - - - - - 805 - 16777215 - - - - background:rgb(235,235,235); -border:0px; - - - - - - - <html><head/><body><p><span style=" font-size:14pt;">,</span></p></body></html> - - - - - - - - 0 - 0 - - - - - 0 - 25 - - - - - 805 - 16777215 - - - - Qt::StrongFocus - - - background:rgb(235,235,235); -border:0px; - - - - - - - <html><head/><body><p><span style=" font-size:14pt;">,</span></p></body></html> - - - - - - - - 0 - 0 - - - - - 0 - 25 - - - - - 805 - 16777215 - - - - Qt::StrongFocus - - - background:rgb(235,235,235); -border:0px; - - - - - - - <html><head/><body><p><span style=" font-size:14pt;">,</span></p></body></html> - - - - - - - - 0 - 0 - - - - - 0 - 25 - - - - - 10000 - 16777215 - - - - Qt::StrongFocus - - - background:rgb(235,235,235); -border:0px; - - - - - - - <html><head/><body><p><span style=" font-size:14pt;">)</span></p></body></html> - - - - - - - Qt::Horizontal - - - - 40 - 20 - - - - - - - - - 21 - 25 - - - - - 21 - 25 - - - - Qt::ClickFocus - - - Détruit le mot-clef - - - border : 0px - - - ... - - - - ../Editeur/icons/deleteRond.png../Editeur/icons/deleteRond.png - - - - 25 - 25 - - - - - - - - - - Qt::Vertical - - - - 20 - 13 - - - - - - - - - - - MonBoutonValide - QToolButton -
        monBoutonValide.h
        -
        - - MonLabelClic - QLabel -
        monLabelClic.h
        -
        - - LECustomTuple - QLineEdit -
        gereListe.h
        -
        -
        - - -
        diff --git a/UiQT5/desWidgetTuple5.ui b/UiQT5/desWidgetTuple5.ui deleted file mode 100644 index c592ac6d..00000000 --- a/UiQT5/desWidgetTuple5.ui +++ /dev/null @@ -1,439 +0,0 @@ - - - WidgetTuple5 - - - - 0 - 0 - 1282 - 61 - - - - - 0 - 0 - - - - - 0 - 0 - - - - Form - - - - 0 - - - 1 - - - 0 - - - 0 - - - 1 - - - - - 0 - - - - - 0 - - - QLayout::SetFixedSize - - - - - Qt::Horizontal - - - QSizePolicy::Fixed - - - - 21 - 20 - - - - - - - - - 21 - 25 - - - - - 21 - 25 - - - - Qt::ClickFocus - - - Affiche le rapport de validation du mot-clef - - - border : 0px - - - ... - - - - ../Editeur/icons/ast-green-ball.png../Editeur/icons/ast-green-ball.png - - - - 25 - 25 - - - - - - - - - - Qt::Vertical - - - - 20 - 5 - - - - - - - - - - - 0 - 0 - - - - - 300 - 25 - - - - - 178 - 16777215 - - - - QFrame::NoFrame - - - <html><head/><body><p>aaa</p><p>dqsklmdqm</p></body></html> - - - false - - - Qt::AlignLeading|Qt::AlignLeft|Qt::AlignTop - - - - - - - - - - - <html><head/><body><p><span style=" font-size:14pt;">(</span></p></body></html> - - - - - - - - 0 - 0 - - - - - 0 - 25 - - - - - 805 - 16777215 - - - - background:rgb(235,235,235); -border:0px; - - - - - - - <html><head/><body><p><span style=" font-size:14pt;">,</span></p></body></html> - - - - - - - - 0 - 0 - - - - - 0 - 25 - - - - - 805 - 16777215 - - - - Qt::StrongFocus - - - background:rgb(235,235,235); -border:0px; - - - - - - - <html><head/><body><p><span style=" font-size:14pt;">,</span></p></body></html> - - - - - - - - 0 - 0 - - - - - 0 - 25 - - - - - 805 - 16777215 - - - - Qt::StrongFocus - - - background:rgb(235,235,235); -border:0px; - - - - - - - <html><head/><body><p><span style=" font-size:14pt;">,</span></p></body></html> - - - - - - - - 0 - 0 - - - - - 0 - 25 - - - - - 10000 - 16777215 - - - - Qt::StrongFocus - - - background:rgb(235,235,235); -border:0px; - - - - - - - <html><head/><body><p><span style=" font-size:14pt;">,</span></p></body></html> - - - - - - - - 0 - 0 - - - - - 0 - 25 - - - - - 10000 - 16777215 - - - - Qt::StrongFocus - - - background:rgb(235,235,235); -border:0px; - - - - - - - <html><head/><body><p><span style=" font-size:14pt;">)</span></p></body></html> - - - - - - - Qt::Horizontal - - - - 40 - 20 - - - - - - - - - 21 - 25 - - - - - 21 - 25 - - - - Qt::ClickFocus - - - Détruit le mot-clef - - - border : 0px - - - ... - - - - ../Editeur/icons/deleteRond.png../Editeur/icons/deleteRond.png - - - - 25 - 25 - - - - - - - - - - Qt::Vertical - - - - 20 - 13 - - - - - - - - - - - MonBoutonValide - QToolButton -
        monBoutonValide.h
        -
        - - MonLabelClic - QLabel -
        monLabelClic.h
        -
        - - LECustomTuple - QLineEdit -
        gereListe.h
        -
        -
        - - -
        diff --git a/UiQT5/desWidgetTuple6.ui b/UiQT5/desWidgetTuple6.ui deleted file mode 100644 index 92aac0af..00000000 --- a/UiQT5/desWidgetTuple6.ui +++ /dev/null @@ -1,475 +0,0 @@ - - - WidgetTuple6 - - - - 0 - 0 - 1282 - 61 - - - - - 0 - 0 - - - - - 0 - 0 - - - - Form - - - - 0 - - - 1 - - - 0 - - - 0 - - - 1 - - - - - 0 - - - - - 0 - - - QLayout::SetFixedSize - - - - - Qt::Horizontal - - - QSizePolicy::Fixed - - - - 21 - 20 - - - - - - - - - 21 - 25 - - - - - 21 - 25 - - - - Qt::ClickFocus - - - Affiche le rapport de validation du mot-clef - - - border : 0px - - - ... - - - - ../Editeur/icons/ast-green-ball.png../Editeur/icons/ast-green-ball.png - - - - 25 - 25 - - - - - - - - - - Qt::Vertical - - - - 20 - 5 - - - - - - - - - - - 0 - 0 - - - - - 300 - 25 - - - - - 178 - 16777215 - - - - QFrame::NoFrame - - - <html><head/><body><p>aaa</p><p>dqsklmdqm</p></body></html> - - - false - - - Qt::AlignLeading|Qt::AlignLeft|Qt::AlignTop - - - - - - - - - - - <html><head/><body><p><span style=" font-size:14pt;">(</span></p></body></html> - - - - - - - - 0 - 0 - - - - - 0 - 25 - - - - - 805 - 16777215 - - - - background:rgb(235,235,235); -border:0px; - - - - - - - <html><head/><body><p><span style=" font-size:14pt;">,</span></p></body></html> - - - - - - - - 0 - 0 - - - - - 0 - 25 - - - - - 805 - 16777215 - - - - Qt::StrongFocus - - - background:rgb(235,235,235); -border:0px; - - - - - - - <html><head/><body><p><span style=" font-size:14pt;">,</span></p></body></html> - - - - - - - - 0 - 0 - - - - - 0 - 25 - - - - - 805 - 16777215 - - - - Qt::StrongFocus - - - background:rgb(235,235,235); -border:0px; - - - - - - - <html><head/><body><p><span style=" font-size:14pt;">,</span></p></body></html> - - - - - - - - 0 - 0 - - - - - 0 - 25 - - - - - 10000 - 16777215 - - - - Qt::StrongFocus - - - background:rgb(235,235,235); -border:0px; - - - - - - - <html><head/><body><p><span style=" font-size:14pt;">,</span></p></body></html> - - - - - - - - 0 - 0 - - - - - 0 - 25 - - - - - 10000 - 16777215 - - - - Qt::StrongFocus - - - background:rgb(235,235,235); -border:0px; - - - - - - - <html><head/><body><p><span style=" font-size:14pt;">,</span></p></body></html> - - - - - - - - 0 - 0 - - - - - 0 - 25 - - - - - 10000 - 16777215 - - - - Qt::StrongFocus - - - background:rgb(235,235,235); -border:0px; - - - - - - - <html><head/><body><p><span style=" font-size:14pt;">)</span></p></body></html> - - - - - - - Qt::Horizontal - - - - 40 - 20 - - - - - - - - - 21 - 25 - - - - - 21 - 25 - - - - Qt::ClickFocus - - - Détruit le mot-clef - - - border : 0px - - - ... - - - - ../Editeur/icons/deleteRond.png../Editeur/icons/deleteRond.png - - - - 25 - 25 - - - - - - - - - - Qt::Vertical - - - - 20 - 13 - - - - - - - - - - - MonBoutonValide - QToolButton -
        monBoutonValide.h
        -
        - - MonLabelClic - QLabel -
        monLabelClic.h
        -
        - - LECustomTuple - QLineEdit -
        gereListe.h
        -
        -
        - - -
        diff --git a/UiQT5/desWidgetTuple7.ui b/UiQT5/desWidgetTuple7.ui deleted file mode 100644 index 43b719de..00000000 --- a/UiQT5/desWidgetTuple7.ui +++ /dev/null @@ -1,511 +0,0 @@ - - - WidgetTuple7 - - - - 0 - 0 - 1282 - 61 - - - - - 0 - 0 - - - - - 0 - 0 - - - - Form - - - - 0 - - - 1 - - - 0 - - - 0 - - - 1 - - - - - 0 - - - - - 0 - - - QLayout::SetFixedSize - - - - - Qt::Horizontal - - - QSizePolicy::Fixed - - - - 21 - 20 - - - - - - - - - 21 - 25 - - - - - 21 - 25 - - - - Qt::ClickFocus - - - Affiche le rapport de validation du mot-clef - - - border : 0px - - - ... - - - - ../Editeur/icons/ast-green-ball.png../Editeur/icons/ast-green-ball.png - - - - 25 - 25 - - - - - - - - - - Qt::Vertical - - - - 20 - 5 - - - - - - - - - - - 0 - 0 - - - - - 300 - 25 - - - - - 178 - 16777215 - - - - QFrame::NoFrame - - - <html><head/><body><p>aaa</p><p>dqsklmdqm</p></body></html> - - - false - - - Qt::AlignLeading|Qt::AlignLeft|Qt::AlignTop - - - - - - - - - - - <html><head/><body><p><span style=" font-size:14pt;">(</span></p></body></html> - - - - - - - - 0 - 0 - - - - - 0 - 25 - - - - - 805 - 16777215 - - - - background:rgb(235,235,235); -border:0px; - - - - - - - <html><head/><body><p><span style=" font-size:14pt;">,</span></p></body></html> - - - - - - - - 0 - 0 - - - - - 0 - 25 - - - - - 805 - 16777215 - - - - Qt::StrongFocus - - - background:rgb(235,235,235); -border:0px; - - - - - - - <html><head/><body><p><span style=" font-size:14pt;">,</span></p></body></html> - - - - - - - - 0 - 0 - - - - - 0 - 25 - - - - - 805 - 16777215 - - - - Qt::StrongFocus - - - background:rgb(235,235,235); -border:0px; - - - - - - - <html><head/><body><p><span style=" font-size:14pt;">,</span></p></body></html> - - - - - - - - 0 - 0 - - - - - 0 - 25 - - - - - 10000 - 16777215 - - - - Qt::StrongFocus - - - background:rgb(235,235,235); -border:0px; - - - - - - - <html><head/><body><p><span style=" font-size:14pt;">,</span></p></body></html> - - - - - - - - 0 - 0 - - - - - 0 - 25 - - - - - 10000 - 16777215 - - - - Qt::StrongFocus - - - background:rgb(235,235,235); -border:0px; - - - - - - - <html><head/><body><p><span style=" font-size:14pt;">,</span></p></body></html> - - - - - - - - 0 - 0 - - - - - 0 - 25 - - - - - 10000 - 16777215 - - - - Qt::StrongFocus - - - background:rgb(235,235,235); -border:0px; - - - - - - - <html><head/><body><p><span style=" font-size:14pt;">,</span></p></body></html> - - - - - - - - 0 - 0 - - - - - 0 - 25 - - - - - 10000 - 16777215 - - - - Qt::StrongFocus - - - background:rgb(235,235,235); -border:0px; - - - - - - - <html><head/><body><p><span style=" font-size:14pt;">)</span></p></body></html> - - - - - - - Qt::Horizontal - - - - 40 - 20 - - - - - - - - - 21 - 25 - - - - - 21 - 25 - - - - Qt::ClickFocus - - - Détruit le mot-clef - - - border : 0px - - - ... - - - - ../Editeur/icons/deleteRond.png../Editeur/icons/deleteRond.png - - - - 25 - 25 - - - - - - - - - - Qt::Vertical - - - - 20 - 13 - - - - - - - - - - - MonBoutonValide - QToolButton -
        monBoutonValide.h
        -
        - - MonLabelClic - QLabel -
        monLabelClic.h
        -
        - - LECustomTuple - QLineEdit -
        gereListe.h
        -
        -
        - - -
        diff --git a/UiQT5/desWidgetTuple8.ui b/UiQT5/desWidgetTuple8.ui deleted file mode 100644 index 6cbb52dd..00000000 --- a/UiQT5/desWidgetTuple8.ui +++ /dev/null @@ -1,547 +0,0 @@ - - - WidgetTuple8 - - - - 0 - 0 - 1282 - 61 - - - - - 0 - 0 - - - - - 0 - 0 - - - - Form - - - - 0 - - - 1 - - - 0 - - - 0 - - - 1 - - - - - 0 - - - - - 0 - - - QLayout::SetFixedSize - - - - - Qt::Horizontal - - - QSizePolicy::Fixed - - - - 21 - 20 - - - - - - - - - 21 - 25 - - - - - 21 - 25 - - - - Qt::ClickFocus - - - Affiche le rapport de validation du mot-clef - - - border : 0px - - - ... - - - - ../Editeur/icons/ast-green-ball.png../Editeur/icons/ast-green-ball.png - - - - 25 - 25 - - - - - - - - - - Qt::Vertical - - - - 20 - 5 - - - - - - - - - - - 0 - 0 - - - - - 300 - 25 - - - - - 178 - 16777215 - - - - QFrame::NoFrame - - - <html><head/><body><p>aaa</p><p>dqsklmdqm</p></body></html> - - - false - - - Qt::AlignLeading|Qt::AlignLeft|Qt::AlignTop - - - - - - - - - - - <html><head/><body><p><span style=" font-size:14pt;">(</span></p></body></html> - - - - - - - - 0 - 0 - - - - - 0 - 25 - - - - - 805 - 16777215 - - - - background:rgb(235,235,235); -border:0px; - - - - - - - <html><head/><body><p><span style=" font-size:14pt;">,</span></p></body></html> - - - - - - - - 0 - 0 - - - - - 0 - 25 - - - - - 805 - 16777215 - - - - Qt::StrongFocus - - - background:rgb(235,235,235); -border:0px; - - - - - - - <html><head/><body><p><span style=" font-size:14pt;">,</span></p></body></html> - - - - - - - - 0 - 0 - - - - - 0 - 25 - - - - - 805 - 16777215 - - - - Qt::StrongFocus - - - background:rgb(235,235,235); -border:0px; - - - - - - - <html><head/><body><p><span style=" font-size:14pt;">,</span></p></body></html> - - - - - - - - 0 - 0 - - - - - 0 - 25 - - - - - 10000 - 16777215 - - - - Qt::StrongFocus - - - background:rgb(235,235,235); -border:0px; - - - - - - - <html><head/><body><p><span style=" font-size:14pt;">,</span></p></body></html> - - - - - - - - 0 - 0 - - - - - 0 - 25 - - - - - 10000 - 16777215 - - - - Qt::StrongFocus - - - background:rgb(235,235,235); -border:0px; - - - - - - - <html><head/><body><p><span style=" font-size:14pt;">,</span></p></body></html> - - - - - - - - 0 - 0 - - - - - 0 - 25 - - - - - 10000 - 16777215 - - - - Qt::StrongFocus - - - background:rgb(235,235,235); -border:0px; - - - - - - - <html><head/><body><p><span style=" font-size:14pt;">,</span></p></body></html> - - - - - - - - 0 - 0 - - - - - 0 - 25 - - - - - 10000 - 16777215 - - - - Qt::StrongFocus - - - background:rgb(235,235,235); -border:0px; - - - - - - - <html><head/><body><p><span style=" font-size:14pt;">,</span></p></body></html> - - - - - - - - 0 - 0 - - - - - 0 - 25 - - - - - 10000 - 16777215 - - - - Qt::StrongFocus - - - background:rgb(235,235,235); -border:0px; - - - - - - - <html><head/><body><p><span style=" font-size:14pt;">)</span></p></body></html> - - - - - - - Qt::Horizontal - - - - 40 - 20 - - - - - - - - - 21 - 25 - - - - - 21 - 25 - - - - Qt::ClickFocus - - - Détruit le mot-clef - - - border : 0px - - - ... - - - - ../Editeur/icons/deleteRond.png../Editeur/icons/deleteRond.png - - - - 25 - 25 - - - - - - - - - - Qt::Vertical - - - - 20 - 13 - - - - - - - - - - - MonBoutonValide - QToolButton -
        monBoutonValide.h
        -
        - - MonLabelClic - QLabel -
        monLabelClic.h
        -
        - - LECustomTuple - QLineEdit -
        gereListe.h
        -
        -
        - - -
        diff --git a/UiQT5/desWidgetTuple9.ui b/UiQT5/desWidgetTuple9.ui deleted file mode 100644 index 7dde5439..00000000 --- a/UiQT5/desWidgetTuple9.ui +++ /dev/null @@ -1,583 +0,0 @@ - - - WidgetTuple9 - - - - 0 - 0 - 1282 - 61 - - - - - 0 - 0 - - - - - 0 - 0 - - - - Form - - - - 0 - - - 1 - - - 0 - - - 0 - - - 1 - - - - - 0 - - - - - 0 - - - QLayout::SetFixedSize - - - - - Qt::Horizontal - - - QSizePolicy::Fixed - - - - 21 - 20 - - - - - - - - - 21 - 25 - - - - - 21 - 25 - - - - Qt::ClickFocus - - - Affiche le rapport de validation du mot-clef - - - border : 0px - - - ... - - - - ../Editeur/icons/ast-green-ball.png../Editeur/icons/ast-green-ball.png - - - - 25 - 25 - - - - - - - - - - Qt::Vertical - - - - 20 - 5 - - - - - - - - - - - 0 - 0 - - - - - 300 - 25 - - - - - 178 - 16777215 - - - - QFrame::NoFrame - - - <html><head/><body><p>aaa</p><p>dqsklmdqm</p></body></html> - - - false - - - Qt::AlignLeading|Qt::AlignLeft|Qt::AlignTop - - - - - - - - - - - <html><head/><body><p><span style=" font-size:14pt;">(</span></p></body></html> - - - - - - - - 0 - 0 - - - - - 0 - 25 - - - - - 805 - 16777215 - - - - background:rgb(235,235,235); -border:0px; - - - - - - - <html><head/><body><p><span style=" font-size:14pt;">,</span></p></body></html> - - - - - - - - 0 - 0 - - - - - 0 - 25 - - - - - 805 - 16777215 - - - - Qt::StrongFocus - - - background:rgb(235,235,235); -border:0px; - - - - - - - <html><head/><body><p><span style=" font-size:14pt;">,</span></p></body></html> - - - - - - - - 0 - 0 - - - - - 0 - 25 - - - - - 805 - 16777215 - - - - Qt::StrongFocus - - - background:rgb(235,235,235); -border:0px; - - - - - - - <html><head/><body><p><span style=" font-size:14pt;">,</span></p></body></html> - - - - - - - - 0 - 0 - - - - - 0 - 25 - - - - - 10000 - 16777215 - - - - Qt::StrongFocus - - - background:rgb(235,235,235); -border:0px; - - - - - - - <html><head/><body><p><span style=" font-size:14pt;">,</span></p></body></html> - - - - - - - - 0 - 0 - - - - - 0 - 25 - - - - - 10000 - 16777215 - - - - Qt::StrongFocus - - - background:rgb(235,235,235); -border:0px; - - - - - - - <html><head/><body><p><span style=" font-size:14pt;">,</span></p></body></html> - - - - - - - - 0 - 0 - - - - - 0 - 25 - - - - - 10000 - 16777215 - - - - Qt::StrongFocus - - - background:rgb(235,235,235); -border:0px; - - - - - - - <html><head/><body><p><span style=" font-size:14pt;">,</span></p></body></html> - - - - - - - - 0 - 0 - - - - - 0 - 25 - - - - - 10000 - 16777215 - - - - Qt::StrongFocus - - - background:rgb(235,235,235); -border:0px; - - - - - - - <html><head/><body><p><span style=" font-size:14pt;">,</span></p></body></html> - - - - - - - - 0 - 0 - - - - - 0 - 25 - - - - - 10000 - 16777215 - - - - Qt::StrongFocus - - - background:rgb(235,235,235); -border:0px; - - - - - - - <html><head/><body><p><span style=" font-size:14pt;">,</span></p></body></html> - - - - - - - - 0 - 0 - - - - - 0 - 25 - - - - - 10000 - 16777215 - - - - Qt::StrongFocus - - - background:rgb(235,235,235); -border:0px; - - - - - - - <html><head/><body><p><span style=" font-size:14pt;">)</span></p></body></html> - - - - - - - Qt::Horizontal - - - - 40 - 20 - - - - - - - - - 21 - 25 - - - - - 21 - 25 - - - - Qt::ClickFocus - - - Détruit le mot-clef - - - border : 0px - - - ... - - - - ../Editeur/icons/deleteRond.png../Editeur/icons/deleteRond.png - - - - 25 - 25 - - - - - - - - - - Qt::Vertical - - - - 20 - 13 - - - - - - - - - - - MonBoutonValide - QToolButton -
        monBoutonValide.h
        -
        - - MonLabelClic - QLabel -
        monLabelClic.h
        -
        - - LECustomTuple - QLineEdit -
        gereListe.h
        -
        -
        - - -
        diff --git a/UiQT5/desWidgetUniqueSDCO.ui b/UiQT5/desWidgetUniqueSDCO.ui deleted file mode 100644 index 178cfc04..00000000 --- a/UiQT5/desWidgetUniqueSDCO.ui +++ /dev/null @@ -1,277 +0,0 @@ - - - WidgetUniqueSDCO - - - - 0 - 0 - 1069 - 56 - - - - - 0 - 0 - - - - - 0 - 0 - - - - Form - - - - 1 - - - 0 - - - - - 0 - - - - - 0 - - - QLayout::SetFixedSize - - - - - Qt::Horizontal - - - QSizePolicy::Fixed - - - - 21 - 20 - - - - - - - - - 21 - 25 - - - - - 21 - 25 - - - - Qt::ClickFocus - - - Affiche le rapport de validation du mot-clef - - - border : 0px - - - ... - - - - ../Editeur/icons/ast-green-ball.png../Editeur/icons/ast-green-ball.png - - - - 25 - 25 - - - - - - - - - - Qt::Vertical - - - - 20 - 2 - - - - - - - - - - - 0 - 0 - - - - - 300 - 25 - - - - - 178 - 16777215 - - - - QFrame::NoFrame - - - <html><head/><body><p>aaa</p><p>dqsklmdqm</p></body></html> - - - false - - - Qt::AlignLeading|Qt::AlignLeft|Qt::AlignTop - - - - - - - 0 - - - - - - 0 - 25 - - - - - 805 - 16777215 - - - - background:rgb(235,235,235); -border:0px; - - - - - - - Attend un objet de type CO - - - - - - - - - Qt::Horizontal - - - QSizePolicy::MinimumExpanding - - - - 79 - 17 - - - - - - - - - - - 21 - 25 - - - - - 21 - 25 - - - - Qt::ClickFocus - - - Détruit le mot-clef - - - border : 0px - - - ... - - - - ../Editeur/icons/deleteRond.png../Editeur/icons/deleteRond.png - - - - 25 - 25 - - - - - - - - Qt::Vertical - - - - 20 - 2 - - - - - - - - - - - MonBoutonValide - QToolButton -
        monBoutonValide.h
        -
        - - MonLabelClic - QLabel -
        monLabelClic.h
        -
        -
        - - LESDCO - - - -
        diff --git a/UiQT5/desWidgetVide.ui b/UiQT5/desWidgetVide.ui deleted file mode 100644 index 8c0217bb..00000000 --- a/UiQT5/desWidgetVide.ui +++ /dev/null @@ -1,330 +0,0 @@ - - - WidgetVide - - - - 0 - 0 - 1069 - 60 - - - - - 0 - 0 - - - - - 0 - 0 - - - - Form - - - - 0 - - - 0 - - - 8 - - - 0 - - - 8 - - - - - 0 - - - QLayout::SetFixedSize - - - - - Qt::Horizontal - - - QSizePolicy::Fixed - - - - 21 - 20 - - - - - - - - - 21 - 31 - - - - - 21 - 35 - - - - Qt::ClickFocus - - - border : 0px - - - ... - - - - ../Editeur/icons/ast-green-ball.png../Editeur/icons/ast-green-ball.png - - - - 32 - 32 - - - - - - - - - - - 0 - 0 - - - - - 300 - 24 - - - - - 178 - 16777215 - - - - QFrame::NoFrame - - - <html><head/><body><p><span style=" color:#0055ff;">Label</span></p></body></html> - - - - - - - - 1 - 0 - - - - - 0 - 32 - - - - - 805 - 16777215 - - - - background:rgb(235,235,235); -border:0px; - - - Attend un objet de type XXXX. Il faut le créer - - - - - - - Qt::Horizontal - - - QSizePolicy::MinimumExpanding - - - - 79 - 17 - - - - - - - - 0 - - - - - - 25 - 30 - - - - - 25 - 30 - - - - Qt::ClickFocus - - - border : 0px - - - ... - - - - ../Editeur/icons/flecheSalome.png../Editeur/icons/flecheSalome.png - - - - 32 - 32 - - - - - - - - - 0 - 0 - - - - - 25 - 30 - - - - - 25 - 30 - - - - Qt::ClickFocus - - - border:0px - - - ... - - - - ../Editeur/icons/icon_salome.png../Editeur/icons/icon_salome.png - - - - 32 - 32 - - - - - - - - Qt::Horizontal - - - QSizePolicy::Fixed - - - - 13 - 20 - - - - - - - - - 21 - 31 - - - - - 21 - 31 - - - - Qt::ClickFocus - - - border : 0px - - - ... - - - - ../Editeur/icons/deleteRond.png../Editeur/icons/deleteRond.png - - - - 21 - 32 - - - - - - - - - - - MonBoutonValide - QToolButton -
        monBoutonValide.h
        -
        -
        - - lineEditVal - RBSalome - RBSalomeVue - RBValide - RBPoubelle - - - -
        diff --git a/UiQT5/eficas_en.ts b/UiQT5/eficas_en.ts deleted file mode 100644 index e94e9576..00000000 --- a/UiQT5/eficas_en.ts +++ /dev/null @@ -1,4256 +0,0 @@ - - - - @default - - - lecture du fichier impossible : - unable to read file : - - - - Impossible d'ouvrir le fichier %s - unable to open file %s - - - - Impossible de convertir le fichier Python qui doit contenir des erreurs. - - On retourne le fichier non converti. Prevenir la maintenance. - - %s - Unable to translate the file. it probably contains mistake -ask eficas team -%s - - - - Format de sortie : %s, non supporte - Unsupported format %s - - - - Impossible d'ouvrir le fichier : %s - unable to open file: %s - - - - Erreur ! Erreur ! - Error! - - - - Erreur rencontree dans recherche_enfants : %s - Error in recherche_enfants : %s - - - - Erreur dans la creation du mot-cle : %s - Error when creating %s - - - - Impossible d'ouvrir le fichier : %s - unable to open file : %s - - - - le texte a analyser n'est pas celui d'une commande ou d'un operateur : - text is no eficas text: - - - - Erreur dans la recherche du nom de la commande : - error when searching command's name : - - - - Erreur dans la recherche des args de la commande : - error when searching argument's command : - - - - Erreur dans la recherche du nom de la commande : - error when searching command's name : - - - - Erreur dans la recherche des args de la commande : - error when searching argument's command : - - - - %d n'est pas un index valide pour append_brother - %d is not a valid index for append-brother - - - - le fichier de commandes %s n'existe pas - commands file %s does not exist - - - - un fichier de commandes doit etre defini avant une poursuite %s - You have to define principal commands file before a secondary (poursuite) file %s - - - - le fichier poursuite %s n'existe pas - the secondary (poursuite) file does not exist - - - - include mal defini %s - include is not correct %s - - - - un fichier de commandes doit etre defini avant un include %s - You have to define principal commands file before include %s - - - - le fichier include %s n'existe pas - include file does not exist - - - - jdc %(v_1)s, le fichier - de commandes %(v_2)s n'existe pas - v_1 - jdc %(v_1)s : .comm %(v_2)s does not exist - - - - le fichier jdc %s n'existe pas - file %s does not exist - - - - jdc %s manque option jdc dans section jdc - jdc %s does not have jdc option in command line - - - - %(v_1)s include %(v_2)s : %(v_3)s - v_1 - %(v_1)s include %(v_2)s : %(v_3)s - - - - %(v_1)s fichier poursuite: %(v_2)s - v_1 - %(v_1)ssecondary (poursuite) file %(v_2)s - - - - nom etude : %s - study's name : %s - - - - utilisation : %prog [options] - use : %prog[options] - - - - nom du fichier de commandes - principal .comm file's name - - - - nom du fichier poursuite - secondary (poursuite) file's name - - - - numero d'unite suivi du nom du fichier include - unit number and include file's name - - - - fichier decrivant une etude - file containing a study - - - - version de catalogue a utiliser - catalog's version - - - - nom du code a utiliser - code's name - - - - niveau de debug - debug level - - - - schema - schema - - - - Nombre incorrect d'arguments - incorrect number of arguments - - - - Localisation specifiee pour l'application. - specified localization for the application. - - - - Impossible de transferer les fichiers requis dans : %s - unable to transfer files to : %s - - - - Erreur - error - - - - Erreurs fatales - fatale error - - - - Impossible reconstruire commande - - unable to construct command - - - - Objet commentaire non valorise - comment object has no value - - - - Debut Fonction %s - start function %s - - - - Fin Fonction %s - end function %s - - - - Nom de concept deja defini : %s - Concept's name %s is already existing - - - - Longueur incorrecte - incorrect length - - - - L'attribut 'min' doit etre un entier : - min must be an integer : - - - - L'attribut 'max' doit etre un entier : - max must be an integer : - - - - Nombres d'occurrence min et max invalides : - min and max are invalid: - - - - L'attribut 'fr' doit etre une chaine de caracteres - 'fr' must be a string - - - - L'attribut 'statut' doit valoir 'o','f','c' ou 'd' - values for statut arguments are : 'o','f','c' or 'd' - - - - L'attribut 'docu' doit etre une chaine de caracteres - docu must be a string - - - - Fin - end - - - - Le parametre EVAL %s ne peut valoir None - None is not a valid value for Eval parameter %s - - - - Pas de nom donne au parametre EVAL - No name for parameter EVAL - - - - Un nom de parametre ne peut depasser 8 caracteres - parameter's name can not exceed 8 characters - - - - Un concept de nom %s existe deja ! - Concept's name %s is already existing! - - - - ERREUR - ERROR - - - - Format pas implemente : %s - format : %s not implemented - - - - Type d'objet non prevu : %s - object type not expected : %s - - - - ce groupe de maillage %s est associe a au moins un materiau et au moins une source. - mesh group %s is associated with at least one material and at least a source. - - - - ce groupe de maillage %s n'est associe a aucun materiau ou source. - mesh group %s is associated with no material or no source. - - - - toutes les donnees ne sont pas connues - all data are not available - - - - Fichier patron %s n'existe pas. - pattern file %s does not exist. - - - - Pas supporte - not implemented - - - - Entite inconnue ou interdite :%s - Unknown or unsupported entity : %s - - - - Entite inconnue ou interdite :%s. Elle est ignoree - Unknown or unsupported entity : %s. ignored - - - - Les tuples ne sont pas supportes pour le format ini :%s - Tuple are not allowed for format ini : %s - - - - Type de valeur non supportee par le format ini :%(nom)s -%(exception)s - nom - Unsupported type of value for .ini format %(nom)s -%(exception)s - - - - Il y a un pb a la Creation du XML - problem when creating XML - - - - Il y a un pb a la Creation du STD - problem when creating STD - - - - Entite inconnue ou interdite : %s. Elle est ignoree - unkown ou unsupported entity : %s. ignored - - - - Tag %s non-defini. Ceci est un bogue interne. en informer les developpeurs. - Tag %s not defined. Ask developpeurs team. - - - - Le mot-cle %s est obligatoire. - mandatory keyword : %s. - - - - concept %(inst_name)s de type %(class_name)s - inst_name - concept %(inst_name)s of type %(class_name)s - - - - Un nom de concept doit etre un identificateur Python - concept's name must be a python identifier - - - - Concept existant - allready existing concept - - - - Operateur reentrant mais concept non existant - operator 'reentrant' but concept does not exist - - - - Operateur reentrant et concept existant trouve - Operator 're-entrant' and concept exists - - - - Concept deja existant et de mauvais type - already existing concept of not supported type - - - - Nommage du concept refuse : un concept de meme nom existe deja - Name is refused : already existing concept - - - - Nommage du concept effectue - Concept named - - - - Nommage impossible %s - unable to name %s - - - - La liste des arguments d'une formule doit etre entre parentheses : parenthese ouvrante manquante - formula expects a list of arguments : no left parenthesis - - - - La liste des arguments d'une formule doit etre entre parentheses : parenthese fermante manquante - formula expects a list of arguments : no right parenthes - - - - Pas de nom donne a la FORMULE - no name given - - - - Un nom de FORMULE ne peut depasser 8 caracteres - name too long (8 characters max) - - - - Un nom de FORMULE ne peut pas commencer par un chiffre - name does not begin with a figure - - - - Le type de la valeur retournee n'est pas specifie - no type is specified for the return value - - - - Une formule ne peut retourner une valeur de type : %s - impossible to return a value of type : %s - - - - Impossible d'ajouter la commande - unable to add the keyword (commande) - - - - Impossible d ajouter la commande - unable to add the keyword (commande) - - - - Pas implemente - not implemented - - - - Nom de concept deja defini - already defined concept - - - - Nom de concept deja defini : - already defined concept : - - - - Impossible de trouver le fichier correspondant a l'unite - unable to find file corresponding to unit - - - - n'est pas un fichier existant - is not an existing file - - - - Fichier invalide %s - invalid file %s - - - - Impossible de construire le jeu de commandes correspondant au fichier - unable to create the jdc corresponding to the file - - - - Erreur lors de l'evaluation du fichier inclus - Error when reading the 'include' file - - - - Ce fichier ne sera pas pris en compte - the file is ignored - - - - Ce fichier ne sera pas pris en compte -Le fichier associe n'est pas defini - the file is ignored : associated file is not defined - - - - Le fichier n est pas defini - file is not defined - - - - le fichier doit contenir une unique variable de sortie - file must declare a single output variable - - - - Fichier invalide - invalid file - - - - Le contenu de ce fichier ne sera pas pris en compte - %s - the file will be ignored : -%s - - - - Le fichier INCLUDE n est pas defini - include file is not defined - - - - Le contenu de ce fichier ne sera pas pris en compte - - file will be ignored - - - - - Erreur lors de l'evaluation du fichier poursuite - Error when creating secondary (poursuite) file - - - - L'objet %(v_1)s ne peut etre un fils de %(v_2)s - v_1 - Object %(v_1)s can not be a child for %(v_2)s - - - - L'objet %s ne peut pas etre repete - Object %s can not be repeated - - - - Erreur - mclist inexistante : %s - Error - mclist does not exist : %s - - - - Erreur - mot cle facteur de nom : %s - Error - keyword "mot-clef facteur" nammed : %s - - - - traitement non-prevu - unexpected task - - - - L'objet %s ne peut pas etre ajoute - Object %s cannot be add - - - - None n'est pas une valeur autorisee - None is not a valid value - - - - un concept de meme nom existe deja - concept already exists - - - - Concept cree - concept created - - - - La matrice n'est pas une matrice %(n_lign)d sur %(n_col)d - n_lign - matrix is not a %(n_lign)d x %(n_col)d matrix - - - - Decommenter - uncomment - - - - Decommente la commande - uncomment the command - - - - Impossible de supprimer un mot-cle obligatoire - mandatory keyword cannot be deleted - - - - Mot-cle %s supprime - Keyword %s deleted - - - - Pb interne : impossible de supprimer ce mot-cle - internal problem : unable to delete keyword - - - - Commentaire supprime - comment is deleted - - - - Commande %s supprimee - command %s is deleted - - - - Pb interne : impossible de supprimer cet objet - internal problem : unable to delete object - - - - Le fichier de commande n'a pas pu etre converti pour etre editable par Eficas - - - unable to convert .comm file in order to open it with Eficas - - - - Include vide - include file is empty - - - - L'include doit etre correctement initialise pour etre visualise - include file must be correct - - - - Impossible de supprimer ce mot-clef - unable to delete this keyword - - - - View3D - View3D - - - - affiche dans Geom les elements de structure - diplay SE in Geom - - - - Graphique - graphic - - - - affiche la distribution - display distribution - - - - Impossible de supprimer un mot-clef obligatoire - unable to delete a mandatory keyword - - - - Mot-clef %s supprime - Keyword %s is deleted - - - - Definition d'un parametre - defines a parameter - - - - Import du fichier de Configuration - import configuration file - - - - Erreur a la lecture du fichier de configuration %s - Error when reading configuration file - - - - Erreur fatale au chargement de %s - fatal error when loading %s - - - - Erreur fatale au chargement d'un fichier - Fatal error when loading file - - - - fichier modifie - file updated - - - - Attention! fichier change hors EFICAS - Warning ! this file was modified outside Eficas - - - - Type de fichier non reconnu - unsupported file type - - - - EFICAS ne sait pas ouvrir le type de fichier %s - Eficas is not able to open this file's type : %s - - - - EFICAS ne sait pas ouvrir ce type de fichier - Eficas is not able to open this file's type - - - - Copie impossible - unable to copy - - - - Veuillez selectionner un objet a copier - you have to select an object to copy - - - - Veuillez selectionner un seul objet : la copie se fera apres le noeud selectionne - You have to select a single object : copy will be done after the selected node - - - - Aucun Objet n a ete copie ou coupe - No object was cut or copied - - - - Copie refusee - rejected copy - - - - Eficas n a pas reussi a copier l objet - Eficas cannot copy this object - - - - Copie refusee pour ce type d objet - Copy rejected : bad object type - - - - Deplacement refuse - move rejected - - - - Deplacement refuse entre 2 fichiers. Seule la copie est autorisee - move rejected. no move between two files : only copy is available - - - - Copie impossible a cet endroit - unable to copy here - - - - Veuillez selectionner une commande, un parametre, un commentaire ou une macro - select a command; a parameter, a comment or a macro - - - - Choix d'un fichier XML - Choice of XML file - - - - Ouvrir Fichier - Open file - - - - Erreur a la generation - Error when generating - - - - EFICAS ne sait pas convertir ce JDC - Eficas is unable to convert JDC - - - - Format %s non reconnu - not supported format %s - - - - Execution impossible - Unable to execute - - - - le JDC doit etre valide pour une execution MAP - JDC has to be valid before run - - - - le JDC doit contenir un et un seul composant - JDC must contains a single componant - - - - Sauvegarde du Fichier - Save File - - - - Le fichier - file - - - - existe deja - allready exists - - - &Ecraser - &Replace - - - &Abandonner - &Cancel - - - - Choix d'un fichier de poursuite - Choose poursuite file - - - - Le fichier %s contient une commande POURSUITE - - file %s contains a POURSUITE command - - - - Traduire Fichier - file translation - - - - Fichiers JDC (*.comm);;Tous les Fichiers (*) - JDC files(*.comm);; All FIles(*) - - - - Fichier Traduit : %s - - - Translated file : %s - - - - Pas de difference entre le fichier origine et le fichier traduit - No difference between the primary file and the translated file - - - - %d versions du catalogue sont disponibles - %d catalogs versions are available - - - - &Ok - &Ok - - - - Entrez - enter - - - - valeurs - values - - - - Entrez entre - enter between - - - - et - and - - - - chaines de caractere - strings - - - - chaine de caractere - string - - - - Selection - selection - - - - reels - reals - - - - reel - real - - - - entiers - integers - - - - entiers - integer - - - - Matrice - Matrix - - - - complexes - complex numbers - - - - Entrez une liste de - Enter a list of - - - - Type de base inconnu - unkown type - - - - Visualisation Fichier - view file - - - - Impossibilite d'afficher le Fichier - Unable to display file - - - - Sauvegarder Fichier - save File - - - - Fichier selectionne - file selected - - - - expression valide - valid expression - - - - expression invalide - unvalid expression - - - - expression n est pas de la forme a+bj - expression is not as a+bj - - - - entrer une seule valeur SVP - Please, enter a single value - - - - saisir le type de complexe - choose complex's type - - - - Sauvegarder le fichier - save file - - - - Le fichier <b>%(v_1)s</b> n'a pu etre sauvegarde. <br>Raison : %(v_2)s - v_1 - file <b>%(v_1)s</b> was not saved. Raison : %(v_2)s - - - - &Recents - &Recently Opened - - - - Aide specifique - code's help - - - - Traduction - translation - - - - Options - Options - - - - version - version - - - - pour - for - - - - Aide Indisponible - no help avalaible - - - - Parametrage - Options - - - - Veuillez d abord choisir un code - Choose a code - - - - Pas de possibilite de personnalisation de la configuration - no options avalaible for configuration - - - - &Effacer - &Delete - - - - Veuillez entrer le complexe sous forme aster ou sous forme python - enter a complex - - - - Import du catalogue - Loading catalog - - - - Pas de catalogue defini pour le code - No catalog for this code - - - - Aucun catalogue trouve - No catalog - - - - avec le catalogue - with catalog - - - - Impossible d'importer le catalogue - unable to load catalog - - - - Choix d une version du code - Choose a version for - - - - Choix d une version - choose a version - - - - Parametre - parameter - - - - Insere un parametre - insert a parameter - - - - item invalide - invalid item - - - - l item doit etre valide - item must be valid - - - - apres - after - - - - Insere un commentaire apres la commande - insert a comment after the command - - - - avant - before - - - - Insere un commentaire avant la commande - insert a comment before the command - - - - Insere un parametre apres la commande - insert a parameter after the command - - - - Insere un parametre avant la commande - insert a parameter before the commande - - - - Supprimer - delete - - - - supprime le mot clef - delete keyword - - - - Documentation - documentation - - - - documentation sur la commande - command's documentation - - - - Documentation Vide - empty documentation - - - - Aucune documentation n'est associee a ce noeud - no documentation is available for this node - - - - impossible de trouver la commande - unable to find command - - - - Lecteur PDF - PDF reader - - - - impossible d'ouvrir - unable to open - - - - Commentaire - Comment - - - - ce noeud - this node - - - - commente le noeud - comment this node - - - - Fichiers JDC (*.comm);;Tous les Fichiers (*) - JDC Files (*.comm);;All Files(*) - - - - &Quitter - &Exit - - - - Quitter - Exit - - - sauvegarde - save - - - - Fichier Duplique - file is duplicated - - - - Le fichier ne sera pas sauvegarde. - File will not be saved. - - - - &Annuler - &Cancel - - - - Fichier - File - - - - Le fichier <b>%s</b> est deja ouvert. - File <b>%s</b> is already open. - - - - &Duplication - &Duplication - - - - &Abort - &Abort - - - - Fichier Modifie - File is modified - - - - Le fichier %s n a pas ete sauvegarde. - file %s was not saved. - - - - &Sauvegarder - &Save - - - - &Quitter sans sauvegarder - &Quit anyway - - - - Erreur a l'evaluation : - %s - Error when loadind : -%s - - - - Un fichier de nom %s existe deja : impossible de creer un repertoire de meme nom - File %s already exists : unable to create a directory with the same name - - - - Creation du repertoire %s impossible - Verifiez vos droits d'acces - Unable to create directory : check your access rights - - - - localisation de l'application, pour la traduction - use for application translation - - - - n'est pas un index valide pour append_brother - is not correct - no possible "append_brother" - - - - Erreur interne - Internal error - - - - La PDF de la loi ne peut pas etre affichee. - unable to display law's PDF. - - - - Le fichier contient une commande MODEL - - file contains MODEL command - - - - Choix unite %d - Choice for unit %d - - - - Fichier pour unite - File for unit - - - - La formule passee a l'interpreteur doit etre sous forme de tuple - formula must be written as tuple - - - - Debut - Beginning - - - - Le parametre EVAL ne peut valoir None - None is not a valid value for EVAL - - - - Pas de nom donne au parametre - No name given - - - - Le parametre %s ne peut valoir None - None is an incorrect value for parameter %s - - - - Format non implemente : %s - Not implemented format - - - - Type de valeur non supporte par le format pyth : n %(exception)s - nom - unsupported type of value - - - - Impossible de realiser la verification de la formule - unable to verify formula - - - - Pb interne : impossible de supprimer ce mot-clef - internal problem : unable to delete keyword - - - - Eficas ne peut pas traiter plusieurs instructions - sur la meme ligne : %s - Eficas is not able to manage many instructions on a same line - - - - le texte a analyser n'est pas celui d'une commande ou - d'un operateur : %s - text is not valid for a command or a operaor - - - - le texte a analyser n'est pas celui d'une commande connue : - %(v_1)s %(v_2)s - v_1 - text is not valid for command %(v_1)s %(v_2)s - - - - le texte a analyser n'est pas celui d'une commande connue : - %(v_1)s %(v_2)s - v_1 - text is not valid for command %(v_1)s %(v_2)s - - - - jdc %(v_1)s manque - fichier comm dans section %(v_2)s - v_1 - file %(v_1)s need a .comm file in section %(v_2)s - - - - jdc %(v_1)s - fichier include %(v_2)s, %(v_3)s - n'existe pas - v_1 - file %(v_1)s need an include file %(v_2)s,%(v_3)s does not exist - - - - jdc %(v_1)s manque fichier comm - dans section %(v_2)s - v_1 - file %(v_1)s need a .comm file in section %(v_2)s - - - - jdc %(v_1)s, le fichier de commandes - %(v_2)s n'existe pas - v_1 - jdc%(v_1)s, .comm %(v_2)s does not exist - - - - - Include Invalide. - ne sera pas pris en compte - Invalid include file. text will not be included - - - - Impossible de relire le fichier %s - - unable to read file - - - - Le fichier include contient des erreurs - include file contains errors - - - - PARAMETRE - PARAMETER - - - - EFICAS ne sait pas convertir le JDC selon le format - Eficas does not know how to convert data according to the defined format - - - - le JDC doit etre valide pour une execution - Before a run action, JDC must be valid - - - - Sauvegarder SVP avant l'execution - Save before run action - - - - Sauvegarde de l'input impossible - unable to save input file - - - - Un JdC valide est necessaire pour creer un .input - file must be valid to create a .input file - - - - Choix du composant obligatoire - You have to choose a component - - - - Le fichier %s contient une commande INCLUDE - - file %s contains an "INCLUDE" command - - - - Donnez le nom du fichier dont vous - voulez faire une poursuite - Name the principal file - - - - Fichiers Med (*.med);;Tous les Fichiers (*) - Med Files (*.med);;All Files(*) - - - - Fichier Med - Med File - - - - Veuillez selectionner un fichier Med - Choose a Med file - - - - reel - float - - - - entier - integer - - - - complexe - complex - - - - l'aide n est pas installee - Help is not available - - - - Export Med vers Fichier - export Med Mesh in a file - - - - Impossibilite d exporter le Fichier - Unable to export file - - - - objet valide - valid object - - - - Valeur non modifiable - value can not be changed - - - - Options pour - - Settings - - - - Nombre minimal de valeurs : - minimal number of values : - - - - Nombre maximal de valeurs : - Maximal number of values : - - - - l expression n est pas de la forme a+bj - expression must be as a+bj - - - - Valeur du mot-cle enregistree - Value is recorded - - - - Valeur du mot-cle non autorisee - Value is not authorized - - - Fichier non encore nomme - unnamed file - - - - SOURCE - SOURCE - - - - EnveloppeConnexeInducteur - Bounding_Box - - - - VecteurDirecteur - Direction_Vector - - - - Centre - Center - - - - SectionBobine - Section - - - - Amplitude - Amplitude - - - - NbdeTours - NbTurns - - - - CONDUCTEUR - CONDUCTOR - - - - Conductivite - Conductivity - - - - PermeabiliteRelative - Relative_Permeability - - - - NOCOND - DIELECTRIC - - - - VCUT - CUT - - - - Orientation - Orientation - - - - ZS - ZS - - - - RepCarmel - Carmel_Directory - - - - TypedeFormule - Formula - - - - Frequence - Frequency - - - - Nb_Max_Iterations - Max_Nb_Iterations - - - - Erreur_Max - Max_Error - - - - Format non implemente - non implemented format - - - - Fichier de donnees - data file - - - - Tous les Fichiers (*) - all files (*) - - - - Select - select - - - - nb min de valeurs : - minimal number of values : - - - - nb max de valeurs atteint - maximum number of values - - - - Sauve Format Ligne - save file in line format - - - - Valeur du mot-clef enregistree - value recorded - - - - Valeur du mot-clef non autorisee : - unvalid value - - - - %s n'est pas un fichier valide - %s is not a valid file - - - - : verifie les types dans un tuple - valids type in a tuple - - - - Les types entres ne sont pas permis - unvalid type for values - - - - La cardinalite n'est pas correcte, la derniere valeur est ignoree - unvalid multiplicity. last value will be ignored - - - - n est pas un tuple de - is not a tuple - - - - valeurs - values - - - - Valeur incorrecte - incorrect value - - - - n est pas un identifiant correct - - is not a valid name - - - - Entrer un float SVP - Float expected - - - - Entrer un float inferieur a - float lower than - - - - Entrer un float superieur a - float superior than - - - - Mauvaise execution - bad run - - - - impossible d executer la methode - unable to run method - - - - Mauvaise Commande - bad command - - - - Aucune variable connue - no possible variable - - - - Mauvaise dimension de matrice - bad matrix dimension - - - - le nombre de ligne n est pas egal a - number of lines is not - - - - le nombre de colonne n est pas egal a - number of columns is not - - - - Mauvaise Valeur - bad value - - - - l element - element - - - - n est pas correct - is not correct - - - - Modification Impossible - unable to modify - - - - le parametre n'est pas valide - parameter is not valid - - - - n est pas un identifiant correct - is not a correct name - - - - Valeur incorrecte: - incorrect value : - - - - Valeur incorrecte - incorrect value - - - - Valeur correcte - valid value - - - - impossible d'evaluer : - unable to evaluate : - - - - Un concept de nom %s existe déjà ! - already existing concept with name : %s ! - - - - existe deja - - already exists - - - - La matrice n'a pas le bon entete - header does not match with matrix - - - - le mot clef - keyword - - - - doit etre insere avant - has to be inserted before - - - - insertion impossible - unable to insert keyword - - - - doit etre insere apres - has to be inserted after - - - - Nb maximum de valeurs atteint - Maximal number of values - - - - pas de regle de construction pour ce jeu de commandes - No specific rules for building this dataset - - - - Gestion Maillage - Mesh Menu - - - - Acquiert groupe mailles - Read elements mesh - - - - Acquisition Groupe Maille - Read elements mesh - - - - VERSION - VERSION_EN - - - - NUM - NUMBER - - - - FILETYPE - FILETYPE - - - - PARAMETERS - Parametres - - - - Fichier_maillage - FichierMaillage - - - - Echelle_du_maillage - MeshScale - - - - Formulation - Fomulation - - - - Timeproblem - TimeProblem - - - - spectral - EssaiSpectral - - - - Basis - Basis - - - - Fourier - Fourier - - - - Ordre - Ordre - - - - FREQUENCY - Frequency - - - - minimisation - Minimisation - - - - no - no - - - - yes - yes - - - - nb_procs_para - NbProcs - - - - POLYMER - Polymer_en_Anglais - - - - MODEL_DATABASE - MoDEL_DATa_Anglais - - - - ChoixCode - - - Choix du code - Choose code - - - - Veuillez choisir un code : - Choose code : - - - - &Cancel - - - - - Validate choice - - - - - &OK - - - - - ChoixCommandes - - - DMacro - DMacro - - - - Alphabetique - alphabetic sort - - - - Par Groupe - Sort by group - - - - <html><head/><body><p align="center"><span style=" text-decoration: underline;">Affichage</span></p></body></html> - <html><head/><body><p align="center"><span style=" text-decoration: underline;">Order</span></p></body></html> - - - - affiche les commandes par ordre alphabetique - display commands in alphabetic order - - - - affiche les commandes selon les thèmes - display commands by thema - - - - Ordre de la modélisation - ordered by modelisation - - - - <html><head/><body><p align="center">Filtre Commande</p></body></html> - <html><head/><body><p align="center">Filters Commands</p></body></html> - - - - filter commands - filters commands - - - - affiche les régles de validité - display validity rules - - - - ... - - - - - Règles de construction - Building Rules - - - - Sensible à la casse - case-sensitive - - - - Effacer - Clear - - - - selectionne les mots qui CONTIENNENT l expression - select words that CONTAINS the filter - - - - ré-affiche toutes les commandes - re-display the list of commands - - - - ChoixLangue - - - Langue - lang - - - - Français - French - - - - English - English - - - - Validate choice - Validate choice - - - - &OK - &OK - - - - DChoixCata - - - Choix d'une version du code Aster - Choose a version for code Aster - - - - <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> -<html><head><meta name="qrichtext" content="1" /><style type="text/css"> -p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal;"> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:11pt;">2 versions sont disponibles</span></p></body></html> - <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"><html><head><meta name="qrichtext" content="1" /><style type="text/css">p, li { white-space: pre-wrap; }</style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal;"><p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:11pt;">2 catalogs are available </span></p></body></html> - - - - &OK - &Ok - - - - &Cancel - &Cancel - - - - Validate choice - validate choice - - - - DSelVal - - - Sélection de valeurs - Values Selections - - - - Separateur - marker - - - - espace - space - - - - virgule - comma - - - - point-virgule - semi-colon - - - - Ajouter Selection - add selected value - - - - Importer Tout - imports all values - - - - DVisu - - - Visualisation Include Materiau - View Include - - - - Eficas - - - MainWindow - Main Window - - - - &Fichier - &File - - - - &Aide - &Help - - - - toolBar - toolBar - - - - &Nouveau - &New - - - - Ctrl+N - Ctrl+N - - - - Nouvel Include - New Include - - - - &Ouvrir - &Open - - - - Ctrl+O - Ctrl+O - - - - Enregistrer - Save - - - - Enregistrer sous - Save as - - - - Fermer - Close - - - - Ctrl+W - - - - - Fermer tout - Close all - - - - Couper - Cut - - - - Ctrl+X - Ctrl+X - - - - Copier - Copy - - - - Ctrl+C - Ctrl+C - - - - Coller - Paste - - - - Ctrl+V - Ctrl+V - - - - Quitter - Exit - - - - Ctrl+Q - Ctrl+Q - - - - Rapport de Validation - Validation Report - - - - Fichier Source - Source File - - - - Fichier Résultat - Result File - - - - Parametres Eficas - Eficas Parameters - - - - Lecteur documentation - documentation reader - - - - Eficas - Eficas - - - - Version - Version - - - - Supprimer - Delete - - - - Rechercher - Find - - - - Rechercher dans l'arbre d'etude - Find in Data Tree - - - - Ctrl+F - Ctrl+F - - - - Replier/Deplier - Expand/Collapse - - - - Execution - Run - - - - Execution - Run - - - - Patrons - Patterns - - - - Tab 1 - - - - - &Edition - &Edit - - - - &JeuDeDonnées - &Data - - - - Shift+I - - - - - Ctrl+S - - - - - Ctrl+Shift+S - - - - - Shift+V - - - - - Chercher Mot-Clef - Find Keyword - - - - Rechercher dans le catalogue - Find Keyword in Catalog - - - - Shift+F - - - - - Shift+D - - - - - Commentaire - Comment - - - - Shift+C - - - - - Paramètres - Parameters - - - - Gestion des paramètres - Managing parameters - - - - Shift+P - - - - - Parametre Eficas - Eficas Settings - - - - Save Run - Save run - - - - Run - run - - - - &bad - - - - - Régles du JdC - Rules for dataset - - - - Cacher l'Arbre - Hide dataset tree - - - - Afficher l'Arbre - Show dataset tree - - - &Abandonner - &Cancel - - - - Tuple2 - - - Form - - - - - <html><head/><body><p><span style=" font-size:14pt;">(</span></p></body></html> - - - - - <html><head/><body><p><span style=" font-size:14pt;">,</span></p></body></html> - - - - - <html><head/><body><p><span style=" font-size:14pt;">)</span></p></body></html> - - - - - Tuple3 - - - Form - - - - - <html><head/><body><p><span style=" font-size:14pt;">(</span></p></body></html> - - - - - <html><head/><body><p><span style=" font-size:14pt;">,</span></p></body></html> - - - - - <html><head/><body><p><span style=" font-size:14pt;">)</span></p></body></html> - - - - - Widget4a6RadioButton - - - Affiche le rapport de validation du mot-clef - Display validity report for the keyword - - - - Détruit le mot-clef - Delete the keyword - - - - Form - - - - - ... - - - - - <html><head/><body><p>aaa</p><p>dqsklmdqm</p></body></html> - - - - - RadioButton - - - - - WidgetBloc - - - Form - - - - - WidgetCB - - - Affiche le rapport de validation du mot-clef - display validation report for the keyword - - - - Détruit le mot-clef - Delete the keyword - - - - Form - - - - - ... - - - - - <html><head/><body><p>aaa</p><p>dqsklmdqm</p></body></html> - - - - - WidgetCommande - - - Affiche le rapport de validité de la commande - Display validity report for the keyword - - - - <html><head/><body><p><span style=" color:#0000ff;">commande </span></p></body></html> - <html><head/><body><p><span style=" color:#0000ff;">command </span></p></body></html - - - - Nom de l'objet. Seuls, les objets valides peuvent être nommés - Object Name. Only valid objects can be named - - - - Lance un script associé à la commande - Run associated script - - - - ouvre un navigateur sur l'aide contextuelle - open a browser to navigate to contextual help - - - - affiche les régles de validité - display validity rules - - - - Détruit la commande - Delete the command - - - - Affiche les commandes possibles - display allowed commands - - - - &Commandes - &Commands - - - - Shift+A, Alt+A, Alt+A, Alt+A - Shift+A, Alt+A, Alt+A, Alt+A - - - - Affiche le formulaire de la commande précédente - display previous command - - - - Affiche le formulaire de la commande suivante - display next command - - - - DCommandeUnique - - - - - ... - - - - - << - - - - - >> - - - - - TextLabel - - - - - WidgetCommentaire - - - <html><head/><body><p><span style=" color:#0000ff;">Commentaire</span></p></body></html> - <html><head/><body><p><span style=" color:#0000ff;">Comment</span></p></body></html> - - - - Affiche les commandes possibles - display allowed commands - - - - Shift+A, Alt+A, Alt+A, Alt+A - Shift+A, Alt+A, Alt+A, Alt+A - - - - Détruit le commentaire - Delete the comment - - - - &Commandes - &Commands - - - - Affiche le formulaire de la commande précédente - display previous command - - - - Affiche le formulaire de la commande suivante - display next command - - - - DCommandeUnique - - - - - ... - - - - - << - - - - - >> - - - - - Affiche le rapport de validité de la commande - Display validity report for the keyword - - - - <html><head/><body><p>Commentaire</p></body></html> - <html><head/><body><p>Comment</p></body></html> - - - - Détruit la commande - Delete the command - - - - WidgetDate - - - Affiche le rapport de validation du mot-clef - Display validity report for keyword - - - - Détruit le mot-clef - Delete the keyword - - - - Form - - - - - ... - - - - - <html><head/><body><p>aaa</p><p>dqsklmdqm</p></body></html> - - - - - WidgetFact - - - Form - - - - - ... - - - - - <html><head/><body><p><span style=" font-style:italic;">TextLabel</span></p></body></html> - - - - - Lance un script associé à la commande - Run associated script - - - - WidgetFactHorizon - - - Form - - - - - ... - - - - - <html><head/><body><p><span style=" font-style:italic;">TextLabel</span></p></body></html> - - - - - Lance un script associé à la commande - Run associated script - - - - WidgetFactPlie - - - TextLabel - TextLabel - - - - Form - - - - - ... - - - - - WidgetFormule - - - DCommandeUnique - - - - - Affiche le rapport de validité de la commande - Display validity report for the keyword - - - - ... - - - - - <html><head/><body><p><span style=" color:#0000ff;">Formule</span></p></body></html> - - - - - Nom de l'objet. Seuls, les objets valides peuvent être nommés - Object Name. Only valid objects can be named - - - - Détruit la commande - Delete the command - - - - Affiche les commandes possibles - - - - - &Commandes - &Commands - - - - Shift+A, Alt+A, Alt+A, Alt+A - Shift+A, Alt+A, Alt+A, Alt+A - - - - Affiche le formulaire de la commande précédente - - - - - << - - - - - Affiche le formulaire de la commande suivante - - - - - >> - - - - - <h3><p align="center"><u><b>Nom de la formule</b></u></p></h3> - - - - - <h3><p align="center"><u><b>Arguments</b></u></p></h3> - - - - - variables séparées par des "," - par ex. : x,y,z - - - - - <h3><p align="center"><u><b>Expression</b></u></p></h3> - - - - - <h1><b>(</b></h1> - - - - - <h1><b>)</b></h1> - - - - - <font size="+4" face="Helvetica"><b>=</b></font> - - - - - WidgetHeure - - - Affiche le rapport de validation du mot-clef - Display validity report for keyword - - - - Détruit le mot-clef - Delete the keyword - - - - Form - - - - - ... - - - - - <html><head/><body><p>aaa</p><p>dqsklmdqm</p></body></html> - - - - - <html><head/><body><p><br/></p></body></html> - - - - - WidgetInactif - - - DInactif - - - - - Affiche le rapport de validité de la commande - Display validity report for the keyword - - - - <html><head/><body><p><span style=" color:#0000ff;">commande </span></p></body></html> - <html><head/><body><p><span style=" color:#0000ff;">command </span></p></body></html - - - - Détruit la commande - Delete the command - - - - ... - - - - - Affiche les commandes possibles - Available commands - - - - &Commandes - >&Commands - - - - Shift+A, Alt+A, Alt+A, Alt+A - Shift+A, Alt+A, Alt+A, Alt+A - - - - Affiche le formulaire de la commande précédente - previous command - - - - << - - - - - Affiche le formulaire de la commande suivante - - - - - >> - - - - - <html><head/><body><p align="center"><span style=" font-size:16pt;">Le noeud sélectionné</span></p><p align="center"><span style=" font-size:16pt;">ne correspond pas à un objet actif</span></p></body></html> - - - - - <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> -<html><head><meta name="qrichtext" content="1" /><style type="text/css"> -p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal;"> -<p align="center" style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:x-large;"><span style=" font-size:x-large;">Seules les commandes placées</span></p> -<p align="center" style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:x-large;"><span style=" font-size:x-large;"> entre : DEBUT / FIN sont actives </span></p></body></html> - - - - - WidgetInformative - - - Form - - - - - WidgetIntoSug - - - Form - - - - - permet de gérer la liste - manage list - - - - ... - - - - - Affiche le rapport de validation du mot-clef - - - - - <html><head/><body><p>aaa</p><p>dqsklmdqm</p></body></html> - - - - - <html><head/><body><p><br/></p></body></html> - - - - - Valeurs hors liste - la valeur saisie sera ajoutée à la liste - - - - - Détruit le mot-clef - Delete the keyword - - - - WidgetOptionnel - - - <html><head/><body><p><span style=" color:#0000ff;">commande </span></p></body></html> - <html><head/><body><p><span style=" color:#0000ff;">command </span></p></body></html - - - - WidgetOptionnel - - - - - WidgetParam - - - <html><head/><body><p><span style=" color:#000000;">Paramètre</span></p></body></html> - <html><head/><body><p><span style=" color:#000000;">Parameter</span></p></body></html> - - - - Détruit le commentaire - Delete the comment - - - - Affiche les commandes possibles - Display allowed commands - - - - &Commandes - &Commands - - - - Shift+A, Alt+A, Alt+A, Alt+A - Shift+A, Alt+A, Alt+A, Alt+A - - - - Affiche le formulaire de la commande précédente - Display previous command - - - - Affiche le formulaire de la commande suivante - Display next command - - - - <html><head/><body><p>Valeur: </p></body></html> - <html><head/><body><p>Value: </p></body></html< - - - - <html><head/><body><p>Nom: </p></body></html> - <html><head/><body><p>Name: </p></body></html> - - - - Verifie la valeur - Valid the value - - - - DCommandeUnique - - - - - ... - - - - - << - - - - - >> - - - - - <html><head/><body><p><br/></p></body></html> - - - - - Affiche le rapport de validité de la commande - Display validity report for the keyword - - - - Détruit la commande - Delete the command - - - - WidgetPlusieursBase - - - Affiche le rapport de validation du mot-clef - Display validity report for keyword - - - - Remonte la ligne - up - - - - Descend la ligne - down - - - - supprime une ligne - deletes a line - - - - Ajoute une ligne - add a line - - - - Montre l'ensemble des valeurs - display all the value - - - - Sélectionne depuis Salome - from salome - - - - Visualise dans Salome - Show in salome - - - - Ouvre un fichier de sélection des valeurs - Open a file for selection - - - - Détruit le mot-clef - Delete the keyword - - - - Form - - - - - ... - - - - - <html><head/><body><p>aaa</p><p>dqsklmdqm</p></body></html> - - - - - permet de gérer la liste - manage list - - - - TextLabel - TextLabel - - - - WidgetPlusieursInto - - - Affiche le rapport de validation du mot-clef - Display validity report for the keyword - - - - Détruit le mot-clef - Delete the keyword - - - - Form - - - - - ... - - - - - <html><head/><body><p>aaa</p><p>dqsklmdqm</p></body></html> - - - - - permet de gérer la liste - manage list - - - - Cherche la valeur - Values - - - - Original - - - - - Alpha - Alpha - - - - <html><head/><body><p><br/></p></body></html> - - - - - WidgetPlusieursIntoOrdonne - - - Affiche le rapport de validation du mot-clef - display validity report for the keyword - - - - TextLabel - TextLabel - - - - Remonte d'une ligne - Up - - - - Descend d'une ligne - Down - - - - Détruit une ligne - Delete a line - - - - ajoute une ligne - add a line - - - - visualise l'ensemble des valeurs - show all values - - - - Détruit le mot-clef - Delete the keyword - - - - Form - - - - - ... - - - - - permet de gérer la liste - manage list - - - - <html><head/><body><p><br/></p></body></html> - - - - - Cherche dans la liste - find - - - - remet le filtre à blanc - clean filter - - - - Catalogue - Catalog - - - - Alpha - Alpha - - - - WidgetPlusieursPlie - - - Form - - - - - Affiche le rapport de validité du mot-clef - Display validity report for the keyword - - - - ... - - - - - <html><head/><body><p>aaa</p><p>dqsklmdqm</p></body></html> - - - - - permet de gérer la liste - manage list - - - - Détruit le mot-clef - Delete the keyword - - - - WidgetPlusieursTuple - - - Form - - - - - Affiche le rapport de validation du mot-clef - Display validity report for the keyword - - - - ... - - - - - <html><head/><body><p>aaa</p><p>dqsklmdqm</p></body></html> - - - - - Remonte la ligne - Up - - - - Descend la ligne - Down - - - - supprime une ligne - delete a line - - - - Ajoute une ligne - add a line - - - - Montre l'ensemble des valeurs - show all values - - - - Ouvre un fichier de sélection des valeurs - import data from a file - - - - Détruit le mot-clef - Delete the keyword - - - - TextLabel - TextLabel - - - - WidgetRadioButton - - - Affiche le rapport de validation du mot-clef - Display validity report for the keyword - - - - Détruit le mot-clef - Delete the keyword - - - - Form - - - - - ... - - - - - <html><head/><body><p>aaa</p><p>dqsklmdqm</p></body></html> - - - - - RadioButton - - - - - WidgetSDCOInto - - - Affiche le rapport de validation du mot-clef - Display validity report for the keyword - - - - <html><head/><body><p>Structures de données du type requis </p><p><br/></p></body></html> - <html><head/><body><p>Objects with the recquired type</p><p><br/></p></body></html> - - - - <html><head/><body><p>ou Nom du concept</p></body></html> - or name the object - - - - Détruit le mot-clef - Delete the keyword - - - - Form - - - - - ... - - - - - <html><head/><body><p>aaa</p><p>dqsklmdqm</p></body></html> - - - - - WidgetSimpBase - - - Affiche le rapport de validation du mot-clef - Display validity report for the keyword - - - - Détruit le mot-clef - Delete the keyword - - - - Form - - - - - ... - - - - - <html><head/><body><p>aaa</p><p>dqsklmdqm</p></body></html> - - - - - WidgetSimpBool - - - Affiche le rapport de validation du mot-clef - Display validity report for the keyword - - - - Détruit le mot-clef - Delete the keyword - - - - Form - - - - - ... - - - - - <html><head/><body><p>aaa</p><p>dqsklmdqm</p></body></html> - - - - - True - - - - - False - - - - - WidgetSimpComplexe - - - Complexe : a+bj - Complex : a+bj - - - - Réel/Imaginaire - Real/Imaginary - - - - Module/Phase - Module/Phase - - - - Affiche le rapport de validation du mot-clef - Display validity report for the keyword - - - - Form - - - - - ... - - - - - <html><head/><body><p>aaa</p><p>dqsklmdqm</p></body></html> - - - - - <html><head/><body><p align="center">OU </p></body></html> - - - - - WidgetSimpFichier - - - Affiche le rapport de validité du mot-clef - Display validity report for the keyword - - - - affiche l'explorateur de fichier - open file explorer - - - - ouvre le fichier choisi - Open the file - - - - Détruit le mot-clef - Delete the keyword - - - - Form - - - - - ... - - - - - <html><head/><body><p>aaa</p><p>dqsklmdqm</p></body></html> - - - - - WidgetSimpSalome - - - Form - - - - - Affiche le rapport de validité du mot-clef - Display validity report for the keyword - - - - ... - - - - - <html><head/><body><p>aaa</p><p>dqsklmdqm</p></body></html> - - - - - affiche l'explorateur de fichier - open file explorer - - - - ouvre le fichier choisi - Open the file - - - - Détruit le mot-clef - Delete the keyword - - - - WidgetSimpTxt - - - Affiche le rapport de validation du mot-clef - Display validity report for the keyword - - - - Détruit le mot-clef - Delete the keyword - - - - Form - - - - - ... - - - - - <html><head/><body><p>aaa</p><p>dqsklmdqm</p></body></html> - - - - - WidgetTuple2 - - - Affiche le rapport de validation du mot-clef - Display validity report for the keyword - - - - Détruit le mot-clef - Delete the keyword - - - - Form - - - - - ... - - - - - <html><head/><body><p>aaa</p><p>dqsklmdqm</p></body></html> - - - - - <html><head/><body><p><span style=" font-size:14pt;">(</span></p></body></html> - - - - - <html><head/><body><p><span style=" font-size:14pt;">,</span></p></body></html> - - - - - <html><head/><body><p><span style=" font-size:14pt;">)</span></p></body></html> - - - - - WidgetTuple3 - - - Affiche le rapport de validation du mot-clef - Display validity report for the keyword - - - - Détruit le mot-clef - Delete the keyword - - - - Form - - - - - ... - - - - - <html><head/><body><p>aaa</p><p>dqsklmdqm</p></body></html> - - - - - <html><head/><body><p><span style=" font-size:14pt;">(</span></p></body></html> - - - - - <html><head/><body><p><span style=" font-size:14pt;">,</span></p></body></html> - - - - - <html><head/><body><p><span style=" font-size:14pt;">)</span></p></body></html> - - - - - WidgetUniqueSDCO - - - Affiche le rapport de validation du mot-clef - Display validity report for the keyword - - - - Attend un objet de type CO - expect a CO Object - - - - Détruit le mot-clef - Delete the keyword - - - - Form - - - - - ... - - - - - <html><head/><body><p>aaa</p><p>dqsklmdqm</p></body></html> - - - - - WidgetVide - - - Form - - - - - ... - - - - - <html><head/><body><p><span style=" color:#0055ff;">Label</span></p></body></html> - - - - - Attend un objet de type XXXX. Il faut le créer - object must be created - - - - baseWidget - - - DMacro - DMacro - - - - customPB - - - Form - - - - - PushButton - - - - - dView - - - Dialog - Dialog - - - - Fermer - Close - - - - Sauver - Save - - - - desRecherche - - - Rechercher dans le JDC - Find in JDC - - - - Suivant - Next - - - - Next - - - - - desRechercheCatalogue - - - Rechercher dans le Catalogue - - - - - Mot à chercher - - - - - Généalogie - - - - - Documentation - documentation - - - - desWidgetCreeParam - - - Gestion des Paramètres - Parameters - - - - <html><head/><body><p>Nom: </p></body></html> - Name - - - - <html><head/><body><p>Valeur: </p></body></html> - Value - - - - <html><head/><body><p><span style=" text-decoration: underline;">Créer un paramètre</span></p></body></html> - <html><head/><body><p><span style=" text-decoration: underline;">New Parameter</span></p></body></html> - - - - desWidgetMatrice - - - Dialog - Dialog - - - - Affiche le rapport de validation du mot-clef - Display validity report for the keyword - - - - ... - - - - - <html><head/><body><p>Met à jour l'en-tête</p></body></html> - - - - - <html><head/><body><p>aaa</p><p>dqsklmdqm</p></body></html> - - - - - desWidgetOptionnel - - - Form - - - - - TextLabel - TextLabel - - - - groupeOptionnel - - - Form - - - - - <html><head/><body><p><span style=" color:#0000ff;">commande </span></p></body></html> - <html><head/><body><p><span style=" color:#0000ff;">command </span></p></body></html - - - - self.appliEficas - - - viewRegles - - - Dialog - Dialog - - - - Fermer - Close - - - diff --git a/UiQT5/eficas_fr.ts b/UiQT5/eficas_fr.ts deleted file mode 100644 index 124f6210..00000000 --- a/UiQT5/eficas_fr.ts +++ /dev/null @@ -1,2145 +0,0 @@ - - - - @defaut - - - lecture du fichier impossible : - unable to read file - - - - Impossible d'ouvrir le fichier %s - unable to read file - - - - &Ok - &Ok - - - - ChoixCode - - - Choix du code - - - - - Veuillez choisir un code : - - - - - &Cancel - - - - - Validate choice - - - - - &OK - - - - - ChoixCommandes - - - DMacro - - - - - <html><head/><body><p align="center"><span style=" text-decoration: underline;">Affichage</span></p></body></html> - - - - - affiche les commandes par ordre alphabetique - - - - - Alphabetique - - - - - affiche les commandes selon les thèmes - - - - - Ordre de la modélisation - - - - - Par Groupe - - - - - <html><head/><body><p align="center">Filtre Commande</p></body></html> - - - - - filter commands - - - - - affiche les régles de validité - - - - - ... - - - - - Règles de construction - - - - - Sensible à la casse - - - - - Effacer - - - - - selectionne les mots qui CONTIENNENT l expression - - - - - ré-affiche toutes les commandes - - - - - ChoixLangue - - - Langue - - - - - Français - - - - - English - - - - - Validate choice - - - - - &OK - - - - - DChoixCata - - - Choix d'une version du code Aster - - - - - <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> -<html><head><meta name="qrichtext" content="1" /><style type="text/css"> -p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal;"> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:11pt;">2 versions sont disponibles</span></p></body></html> - - - - - &Cancel - - - - - Validate choice - - - - - &OK - - - - - DSelVal - - - Sélection de valeurs - - - - - Separateur - - - - - espace - - - - - virgule - - - - - point-virgule - - - - - Ajouter Selection - - - - - Importer Tout - - - - - DVisu - - - Visualisation Include Materiau - - - - - Eficas - - - MainWindow - - - - - &Fichier - - - - - &Aide - - - - - toolBar - - - - - &Nouveau - - - - - Ctrl+N - - - - - Nouvel Include - - - - - &Ouvrir - - - - - Ctrl+O - - - - - Enregistrer - - - - - Enregistrer sous - - - - - Fermer - - - - - Ctrl+W - - - - - Fermer tout - - - - - Couper - - - - - Ctrl+X - - - - - Copier - - - - - Ctrl+C - - - - - Coller - - - - - Ctrl+V - - - - - Quitter - - - - - Ctrl+Q - - - - - Rapport de Validation - - - - - Fichier Source - - - - - Fichier Résultat - - - - - Parametres Eficas - - - - - Lecteur documentation - - - - - Eficas - - - - - Version - - - - - Supprimer - - - - - Rechercher - - - - - Rechercher dans l'arbre d'etude - - - - - Ctrl+F - - - - - Replier/Deplier - - - - - Tab 1 - - - - - &Edition - - - - - &JeuDeDonnées - - - - - Shift+I - - - - - Ctrl+S - - - - - Ctrl+Shift+S - - - - - Shift+V - - - - - Chercher Mot-Clef - - - - - Rechercher dans le catalogue - - - - - Shift+F - - - - - Shift+D - - - - - Commentaire - - - - - Shift+C - - - - - Paramètres - - - - - Gestion des paramètres - - - - - Shift+P - - - - - Parametre Eficas - - - - - &bad - - - - - Régles du JdC - - - - - Cacher l'Arbre - - - - - Afficher l'Arbre - - - - - JDCEditor - - - &Abandonner - &Abandonner - - - - Tuple2 - - - Form - - - - - <html><head/><body><p><span style=" font-size:14pt;">(</span></p></body></html> - - - - - <html><head/><body><p><span style=" font-size:14pt;">,</span></p></body></html> - - - - - <html><head/><body><p><span style=" font-size:14pt;">)</span></p></body></html> - - - - - Tuple3 - - - Form - - - - - <html><head/><body><p><span style=" font-size:14pt;">(</span></p></body></html> - - - - - <html><head/><body><p><span style=" font-size:14pt;">,</span></p></body></html> - - - - - <html><head/><body><p><span style=" font-size:14pt;">)</span></p></body></html> - - - - - Widget4a6RadioButton - - - Form - - - - - Affiche le rapport de validation du mot-clef - - - - - ... - - - - - <html><head/><body><p>aaa</p><p>dqsklmdqm</p></body></html> - - - - - RadioButton - - - - - Détruit le mot-clef - - - - - WidgetBloc - - - Form - - - - - WidgetCB - - - Form - - - - - Affiche le rapport de validation du mot-clef - - - - - ... - - - - - <html><head/><body><p>aaa</p><p>dqsklmdqm</p></body></html> - - - - - Détruit le mot-clef - - - - - WidgetCommande - - - DCommandeUnique - - - - - Affiche le rapport de validité de la commande - - - - - ... - - - - - <html><head/><body><p><span style=" color:#0000ff;">commande </span></p></body></html> - - - - - Nom de l'objet. Seuls, les objets valides peuvent être nommés - - - - - Lance un script associé à la commande - - - - - ouvre un navigateur sur l'aide contextuelle - - - - - affiche les régles de validité - - - - - Détruit la commande - - - - - Affiche les commandes possibles - - - - - &Commandes - - - - - Shift+A, Alt+A, Alt+A, Alt+A - - - - - Affiche le formulaire de la commande précédente - - - - - << - - - - - Affiche le formulaire de la commande suivante - - - - - >> - - - - - TextLabel - - - - - WidgetCommentaire - - - DCommandeUnique - - - - - ... - - - - - Affiche les commandes possibles - - - - - &Commandes - - - - - Shift+A, Alt+A, Alt+A, Alt+A - - - - - Affiche le formulaire de la commande précédente - - - - - << - - - - - Affiche le formulaire de la commande suivante - - - - - >> - - - - - Affiche le rapport de validité de la commande - - - - - <html><head/><body><p>Commentaire</p></body></html> - - - - - Détruit la commande - - - - - WidgetDate - - - Form - - - - - Affiche le rapport de validation du mot-clef - - - - - ... - - - - - <html><head/><body><p>aaa</p><p>dqsklmdqm</p></body></html> - - - - - Détruit le mot-clef - - - - - WidgetFact - - - Form - - - - - ... - - - - - <html><head/><body><p><span style=" font-style:italic;">TextLabel</span></p></body></html> - - - - - Lance un script associé à la commande - - - - - WidgetFactHorizon - - - Form - - - - - ... - - - - - <html><head/><body><p><span style=" font-style:italic;">TextLabel</span></p></body></html> - - - - - Lance un script associé à la commande - - - - - WidgetFactPlie - - - Form - - - - - ... - - - - - TextLabel - - - - - WidgetFormule - - - DCommandeUnique - - - - - Affiche le rapport de validité de la commande - - - - - ... - - - - - <html><head/><body><p><span style=" color:#0000ff;">Formule</span></p></body></html> - - - - - Nom de l'objet. Seuls, les objets valides peuvent être nommés - - - - - Détruit la commande - - - - - Affiche les commandes possibles - - - - - &Commandes - - - - - Shift+A, Alt+A, Alt+A, Alt+A - - - - - Affiche le formulaire de la commande précédente - - - - - << - - - - - Affiche le formulaire de la commande suivante - - - - - >> - - - - - <h3><p align="center"><u><b>Nom de la formule</b></u></p></h3> - - - - - <h3><p align="center"><u><b>Arguments</b></u></p></h3> - - - - - variables séparées par des "," - par ex. : x,y,z - - - - - <h3><p align="center"><u><b>Expression</b></u></p></h3> - - - - - <h1><b>(</b></h1> - - - - - <h1><b>)</b></h1> - - - - - <font size="+4" face="Helvetica"><b>=</b></font> - - - - - WidgetHeure - - - Form - - - - - Affiche le rapport de validation du mot-clef - - - - - ... - - - - - <html><head/><body><p>aaa</p><p>dqsklmdqm</p></body></html> - - - - - <html><head/><body><p><br/></p></body></html> - - - - - Détruit le mot-clef - - - - - WidgetInactif - - - DInactif - - - - - Affiche le rapport de validité de la commande - - - - - <html><head/><body><p><span style=" color:#0000ff;">commande </span></p></body></html> - - - - - Détruit la commande - - - - - ... - - - - - Affiche les commandes possibles - - - - - &Commandes - - - - - Shift+A, Alt+A, Alt+A, Alt+A - - - - - Affiche le formulaire de la commande précédente - - - - - << - - - - - Affiche le formulaire de la commande suivante - - - - - >> - - - - - <html><head/><body><p align="center"><span style=" font-size:16pt;">Le noeud sélectionné</span></p><p align="center"><span style=" font-size:16pt;">ne correspond pas à un objet actif</span></p></body></html> - - - - - <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> -<html><head><meta name="qrichtext" content="1" /><style type="text/css"> -p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal;"> -<p align="center" style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:x-large;"><span style=" font-size:x-large;">Seules les commandes placées</span></p> -<p align="center" style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:x-large;"><span style=" font-size:x-large;"> entre : DEBUT / FIN sont actives </span></p></body></html> - - - - - WidgetInformative - - - Form - - - - - WidgetIntoSug - - - Form - - - - - permet de gérer la liste - - - - - ... - - - - - Affiche le rapport de validation du mot-clef - - - - - <html><head/><body><p>aaa</p><p>dqsklmdqm</p></body></html> - - - - - <html><head/><body><p><br/></p></body></html> - - - - - Valeurs hors liste - la valeur saisie sera ajoutée à la liste - - - - - Détruit le mot-clef - - - - - WidgetOptionnel - - - WidgetOptionnel - - - - - <html><head/><body><p><span style=" color:#0000ff;">commande </span></p></body></html> - - - - - WidgetParam - - - DCommandeUnique - - - - - ... - - - - - <html><head/><body><p><span style=" color:#000000;">Paramètre</span></p></body></html> - - - - - Affiche les commandes possibles - - - - - &Commandes - - - - - Shift+A, Alt+A, Alt+A, Alt+A - - - - - Affiche le formulaire de la commande précédente - - - - - << - - - - - Affiche le formulaire de la commande suivante - - - - - >> - - - - - <html><head/><body><p>Valeur: </p></body></html> - - - - - <html><head/><body><p>Nom: </p></body></html> - - - - - Verifie la valeur - - - - - <html><head/><body><p><br/></p></body></html> - - - - - Affiche le rapport de validité de la commande - - - - - Détruit la commande - - - - - WidgetPlusieursBase - - - Form - - - - - Affiche le rapport de validation du mot-clef - - - - - ... - - - - - <html><head/><body><p>aaa</p><p>dqsklmdqm</p></body></html> - - - - - Remonte la ligne - - - - - Descend la ligne - - - - - supprime une ligne - - - - - Ajoute une ligne - - - - - Montre l'ensemble des valeurs - - - - - Sélectionne depuis Salome - - - - - Visualise dans Salome - - - - - Ouvre un fichier de sélection des valeurs - - - - - Détruit le mot-clef - - - - - permet de gérer la liste - - - - - TextLabel - - - - - WidgetPlusieursInto - - - Form - - - - - Affiche le rapport de validation du mot-clef - - - - - ... - - - - - <html><head/><body><p>aaa</p><p>dqsklmdqm</p></body></html> - - - - - Détruit le mot-clef - - - - - permet de gérer la liste - - - - - Cherche la valeur - - - - - Original - - - - - Alpha - - - - - <html><head/><body><p><br/></p></body></html> - - - - - WidgetPlusieursIntoOrdonne - - - Form - - - - - Affiche le rapport de validation du mot-clef - - - - - ... - - - - - Remonte d'une ligne - - - - - Descend d'une ligne - - - - - Détruit une ligne - - - - - ajoute une ligne - - - - - visualise l'ensemble des valeurs - - - - - Détruit le mot-clef - - - - - permet de gérer la liste - - - - - <html><head/><body><p><br/></p></body></html> - - - - - Cherche dans la liste - - - - - remet le filtre à blanc - - - - - Catalogue - - - - - Alpha - - - - - WidgetPlusieursPlie - - - Form - - - - - Affiche le rapport de validité du mot-clef - - - - - ... - - - - - <html><head/><body><p>aaa</p><p>dqsklmdqm</p></body></html> - - - - - permet de gérer la liste - - - - - Détruit le mot-clef - - - - - WidgetPlusieursTuple - - - Form - - - - - Affiche le rapport de validation du mot-clef - - - - - ... - - - - - <html><head/><body><p>aaa</p><p>dqsklmdqm</p></body></html> - - - - - Remonte la ligne - - - - - Descend la ligne - - - - - supprime une ligne - - - - - Ajoute une ligne - - - - - Montre l'ensemble des valeurs - - - - - Ouvre un fichier de sélection des valeurs - - - - - Détruit le mot-clef - - - - - TextLabel - - - - - WidgetRadioButton - - - Form - - - - - Affiche le rapport de validation du mot-clef - - - - - ... - - - - - <html><head/><body><p>aaa</p><p>dqsklmdqm</p></body></html> - - - - - RadioButton - - - - - Détruit le mot-clef - - - - - WidgetSDCOInto - - - Form - - - - - Affiche le rapport de validation du mot-clef - - - - - ... - - - - - <html><head/><body><p>aaa</p><p>dqsklmdqm</p></body></html> - - - - - <html><head/><body><p>Structures de données du type requis </p><p><br/></p></body></html> - - - - - <html><head/><body><p>ou Nom du concept</p></body></html> - - - - - Détruit le mot-clef - - - - - WidgetSimpBase - - - Form - - - - - Affiche le rapport de validation du mot-clef - - - - - ... - - - - - <html><head/><body><p>aaa</p><p>dqsklmdqm</p></body></html> - - - - - Détruit le mot-clef - - - - - WidgetSimpBool - - - Form - - - - - Affiche le rapport de validation du mot-clef - - - - - ... - - - - - <html><head/><body><p>aaa</p><p>dqsklmdqm</p></body></html> - - - - - True - - - - - False - - - - - Détruit le mot-clef - - - - - WidgetSimpComplexe - - - Form - - - - - Affiche le rapport de validation du mot-clef - - - - - ... - - - - - <html><head/><body><p>aaa</p><p>dqsklmdqm</p></body></html> - - - - - Complexe : a+bj - - - - - <html><head/><body><p align="center">OU </p></body></html> - - - - - Réel/Imaginaire - - - - - Module/Phase - - - - - WidgetSimpFichier - - - Form - - - - - Affiche le rapport de validité du mot-clef - - - - - ... - - - - - <html><head/><body><p>aaa</p><p>dqsklmdqm</p></body></html> - - - - - affiche l'explorateur de fichier - - - - - ouvre le fichier choisi - - - - - Détruit le mot-clef - - - - - WidgetSimpSalome - - - Form - - - - - Affiche le rapport de validité du mot-clef - - - - - ... - - - - - <html><head/><body><p>aaa</p><p>dqsklmdqm</p></body></html> - - - - - affiche l'explorateur de fichier - - - - - ouvre le fichier choisi - - - - - Détruit le mot-clef - - - - - WidgetSimpTxt - - - Form - - - - - Affiche le rapport de validation du mot-clef - - - - - ... - - - - - <html><head/><body><p>aaa</p><p>dqsklmdqm</p></body></html> - - - - - Détruit le mot-clef - - - - - WidgetTuple2 - - - Form - - - - - Affiche le rapport de validation du mot-clef - - - - - ... - - - - - <html><head/><body><p>aaa</p><p>dqsklmdqm</p></body></html> - - - - - <html><head/><body><p><span style=" font-size:14pt;">(</span></p></body></html> - - - - - <html><head/><body><p><span style=" font-size:14pt;">,</span></p></body></html> - - - - - <html><head/><body><p><span style=" font-size:14pt;">)</span></p></body></html> - - - - - Détruit le mot-clef - - - - - WidgetTuple3 - - - Form - - - - - Affiche le rapport de validation du mot-clef - - - - - ... - - - - - <html><head/><body><p>aaa</p><p>dqsklmdqm</p></body></html> - - - - - <html><head/><body><p><span style=" font-size:14pt;">(</span></p></body></html> - - - - - <html><head/><body><p><span style=" font-size:14pt;">,</span></p></body></html> - - - - - <html><head/><body><p><span style=" font-size:14pt;">)</span></p></body></html> - - - - - Détruit le mot-clef - - - - - WidgetUniqueSDCO - - - Form - - - - - Affiche le rapport de validation du mot-clef - - - - - ... - - - - - <html><head/><body><p>aaa</p><p>dqsklmdqm</p></body></html> - - - - - Attend un objet de type CO - - - - - Détruit le mot-clef - - - - - WidgetVide - - - Form - - - - - ... - - - - - <html><head/><body><p><span style=" color:#0055ff;">Label</span></p></body></html> - - - - - Attend un objet de type XXXX. Il faut le créer - - - - - baseWidget - - - DMacro - - - - - customPB - - - Form - - - - - PushButton - - - - - dView - - - Dialog - - - - - Fermer - - - - - Sauver - - - - - desRecherche - - - Rechercher dans le JDC - - - - - Next - - - - - Suivant - - - - - desRechercheCatalogue - - - Rechercher dans le Catalogue - - - - - Mot à chercher - - - - - Généalogie - - - - - Documentation - - - - - desWidgetCreeParam - - - Gestion des Paramètres - - - - - <html><head/><body><p>Nom: </p></body></html> - - - - - <html><head/><body><p>Valeur: </p></body></html> - - - - - <html><head/><body><p><span style=" text-decoration: underline;">Créer un paramètre</span></p></body></html> - - - - - desWidgetMatrice - - - Dialog - - - - - Affiche le rapport de validation du mot-clef - - - - - ... - - - - - <html><head/><body><p>Met à jour l'en-tête</p></body></html> - - - - - <html><head/><body><p>aaa</p><p>dqsklmdqm</p></body></html> - - - - - desWidgetOptionnel - - - Form - - - - - TextLabel - - - - - groupeOptionnel - - - Form - - - - - <html><head/><body><p><span style=" color:#0000ff;">commande </span></p></body></html> - - - - - viewRegles - - - Dialog - - - - - Fermer - - - - diff --git a/UiQT5/myMain.ui b/UiQT5/myMain.ui deleted file mode 100644 index 045a868b..00000000 --- a/UiQT5/myMain.ui +++ /dev/null @@ -1,500 +0,0 @@ - - - Eficas - - - - 0 - 0 - 1676 - 811 - - - - - 0 - 0 - - - - MainWindow - - - /* QMenuBar { - background-color: qlineargradient(x1:0, y1:0, x2:0, y2:1, - stop:0 rgb(226,255,253), stop:1 rgb(191,237,255)); - }*/ - -QMenuBar { - background-color: qlineargradient(x1:0, y1:0, x2:0, y2:1, - stop:0 rgb(164,165,178), stop:1 rgb(55,66,126)); - } - QMenuBar::item { - spacing: 3px; /* spacing between menu bar items */ - color: white; - padding: 1px 4px; - background: transparent; - border-radius: 4px; - } - - QMenuBar::item:selected { /* when selected using mouse or keyboard */ - background: #a8a8a8; - } - - QMenuBar::item:pressed { - background: #888888; - } - - - - - - - - - - - - - QComboBox{combobox-popup:0;} - - - - 0 - - - - - - 0 - 60 - - - - - 16777215 - 60 - - - - /*background-color: qlineargradient(x1:0, y1:0, x2:0, y2:1, - stop:0 rgb(218,229,248), stop:1 rgb(9,86,109));*/ -/*background-color:rgb(208,225,238)*/ - - - QFrame::NoFrame - - - QFrame::Raised - - - 2 - - - - - - - background-color:rgb(224,223,222) - - - QTabWidget::North - - - 0 - - - true - - - - Tab 1 - - - - - - - - - - 0 - 0 - 1676 - 24 - - - - - &Fichier - - - - - - - - - - - - - - - - &Edition - - - - - - - - - - - - - &JeuDeDonnées - - - - - - - - - - - - - - - &Aide - - - - - - - - - - - - - - toolBar - - - - 36 - 36 - - - - TopToolBarArea - - - false - - - - - - - - - - - - - - - toolBar_2 - - - TopToolBarArea - - - false - - - - - - - - - - &Nouveau - - - Ctrl+N - - - - - Nouvel Include - - - Shift+I - - - - - &bad - - - - - - - - - - &Ouvrir - - - Ctrl+O - - - - - - - - - - Enregistrer - - - Ctrl+S - - - - - Parametres Eficas - - - - - - - - - - Enregistrer sous - - - Ctrl+Shift+S - - - - - Fermer - - - Ctrl+W - - - - - Fermer tout - - - - - - - - - - Couper - - - Ctrl+X - - - Qt::ApplicationShortcut - - - - - - - - - - Copier - - - Ctrl+C - - - Qt::ApplicationShortcut - - - - - - - - - - Coller - - - Ctrl+V - - - Qt::ApplicationShortcut - - - - - Quitter - - - Ctrl+Q - - - - - Rapport de Validation - - - Shift+V - - - false - - - - - Fichier Source - - - - - Fichier Résultat - - - - - - - - - - Lecteur documentation - - - - - Eficas - - - - - Version - - - - - - - - - - Supprimer - - - - - Chercher Mot-Clef - - - Rechercher dans le catalogue - - - Shift+F - - - Qt::ApplicationShortcut - - - - - - - - - - Rechercher - - - Rechercher dans l'arbre d'etude - - - Ctrl+F - - - Qt::ApplicationShortcut - - - - - Replier/Deplier - - - Shift+D - - - - - Commentaire - - - Shift+C - - - - - - ../Editeur/icons/parametres.png../Editeur/icons/parametres.png - - - Paramètres - - - Gestion des paramètres - - - Shift+P - - - - - Parametre Eficas - - - - - Régles du JdC - - - - - Cacher l'Arbre - - - - - Afficher l'Arbre - - - - - - diff --git a/Vimmp/CNT53_12x057.comm b/Vimmp/CNT53_12x057.comm deleted file mode 100644 index 5c3e92de..00000000 --- a/Vimmp/CNT53_12x057.comm +++ /dev/null @@ -1,265 +0,0 @@ -C=Specie() -C3=BondedParticle() -C2=BondedParticle() -C1=BondedParticle() - -NanoTube12_EM=CDM(Title='(NanoTubeC53) Energy minimization ', - Simulated_Time_Lapse=_F(Initial_Time=0.0, - Duration=100.0,), - Geometric_Domain=_F(Shape='Simplified Shape', - Box='Cube', - Size_Of_Bounding_Box=(16.0,16.0,16.0), - Surface= - ('INT1','INT2','INT3','INT4','INT5','INT6', - 'INT7','INT8','INT9','INT10','INT11','INT12','INT13','INT14','INT15', - 'INT16','INT17','INT18','INT19','INT20','INT21','INT22','INT23','INT24', - 'INT25','INT26','INT27','INT28','INT29','INT30','INT31','INT32','INT33', - 'INT34','INT35','INT36','INT37','INT38','INT39','INT40','INT41','INT42', - 'INT43','INT44','INT45','INT46','INT47','INT48','INT49','INT50','INT51', - 'INT52',),), - System_Component=_F(General_Level_Of_Description='Mesoscopic', - Component='Classical_Particle System', - Physical_Description_Particle=_F(List_Of_Species=_F(Number_Of_Species=1, - Specie=_F(Name_Of_Specie=C, - Mass_Molaire=12.011, - Number_of_Particle=784,),), - List_Of_Bonded_Particles=_F(Bonded_Particles=(_F( - Name_Of_Bonded_Particles=C1, - Species_in_Particle=(C,C,),), - _F( - Name_Of_Bonded_Particles=C2, - Species_in_Particle=(C,C,C,),), - _F( - Name_Of_Bonded_Particles=C3, - Species_in_Particle=(C,C,C,C,),),),), - List_Of_Interactions=_F(Bonded_Interactions=(_F( - Type_Of_Bonded_Interaction='Covalent Bond Angle', - Interaction_Angles_Parameters=_F( - Apply_To_Bonded_Particles=(C3,C3,), - Spring_Stifness=1.0, - Mean_Bond_Angle=2.0,),), - _F( - Type_Of_Bonded_Interaction='Covalent Bond Length', - Interaction_Length_Parameters=_F( - Apply_To_Bonded_Particles=(C2,), - Spring_Stifness=3.0, - Mean_Bond_Length=4.0,),),), - Unbonded_Interactions=_F( - Type_Of_Unbonded_Interaction='Repulsion_and_VdW', - Species_Pair_Parameters=_F( - Type_Repulsion_and_VdW='Lennard_Jones', - Species_Pair=(C,C,), - VdW_Radius=0.0355, - Depth_Of_The_Potential_Well=0.292288,),), - External_Field_Interaction=_F( - Type_Of_Interaction_With_An_External_Field='No',),), - Statistical_Physics=_F(Type_Of_Statistical_Physics='No',),), - Particle_Representation=_F(Representation_Type='Particle_Representation', - Type_Of_Entity='Atom', - Numerical_Particle_Model=_F(Type_Of_State_Vector='Kinetic',), - Definition_Numerical_Model=_F(Numerical_Model='MD', - Structure_Of_The_Evolution_Law=\ - 'Newton equations',),),), - Boundary_Conditions=_F(Type_Of_Boundary_Condition='Periodic', - Direction='XYZ',),); - -NanoTube12_TE=CDM(Title='(NanoTubeC53) Thermal Equilibrium', - Simulated_Time_Lapse=_F(Initial_Time=0.0, - Duration=100.0,), - Geometric_Domain=_F(Shape='Simplified Shape', - Box='Cube', - Size_Of_Bounding_Box=(16.0,16.0,16.0), - Surface= - ('INT1','INT2','INT3','INT4','INT5','INT6', - 'INT7','INT8','INT9','INT10','INT11','INT12','INT13','INT14','INT15', - 'INT16','INT17','INT18','INT19','INT20','INT21','INT22','INT23','INT24', - 'INT25','INT26','INT27','INT28','INT29','INT30','INT31','INT32','INT33', - 'INT34','INT35','INT36','INT37','INT38','INT39','INT40','INT41','INT42', - 'INT43','INT44','INT45','INT46','INT47','INT48','INT49','INT50','INT51', - 'INT52',),), - System_Component=_F(General_Level_Of_Description='Mesoscopic', - Component='Classical_Particle System', - Physical_Description_Particle=_F(List_Of_Species=_F(Number_Of_Species=1, - Specie=_F(Name_Of_Specie=C, - Mass_Molaire=12.011, - Number_of_Particle=784,),), - List_Of_Bonded_Particles=_F(Bonded_Particles=(_F( - Name_Of_Bonded_Particles=C1, - Species_in_Particle=(C,C,),), - _F( - Name_Of_Bonded_Particles=C2, - Species_in_Particle=(C,C,C,),), - _F( - Name_Of_Bonded_Particles=C3, - Species_in_Particle=(C,C,C,C,),),),), - List_Of_Interactions=_F(Bonded_Interactions=(_F( - Type_Of_Bonded_Interaction='Covalent Bond Angle', - Interaction_Angles_Parameters=_F( - Apply_To_Bonded_Particles=(C3,C3,), - Spring_Stifness=1.0, - Mean_Bond_Angle=2.0,),), - _F( - Type_Of_Bonded_Interaction='Covalent Bond Length', - Interaction_Length_Parameters=_F( - Apply_To_Bonded_Particles=(C2,), - Spring_Stifness=3.0, - Mean_Bond_Length=4.0,),),), - Unbonded_Interactions=_F( - Type_Of_Unbonded_Interaction='Repulsion_and_VdW', - Species_Pair_Parameters=_F( - Type_Repulsion_and_VdW='Lennard_Jones', - Species_Pair=(C,C,), - VdW_Radius=0.0355, - Depth_Of_The_Potential_Well=0.292288,),), - External_Field_Interaction=_F( - Type_Of_Interaction_With_An_External_Field='No',),), - Statistical_Physics=_F(Type_Of_Statistical_Physics=\ - 'Equilibrium', - Distribution='nvt', - Target_Temperature=300.0,),), - Particle_Representation=_F(Representation_Type='Particle_Representation', - Type_Of_Entity='Grain', - Numerical_Particle_Model=_F(Type_Of_State_Vector='Kinetic',), - Definition_Numerical_Model=_F(Numerical_Model='MD', - Structure_Of_The_Evolution_Law=\ - 'Newton equations',),),), - Boundary_Conditions=_F(Type_Of_Boundary_Condition='Periodic', - Direction='XYZ',),); - -NanoTube12_NE=CDM(Title='(NanoTubeC53) Non Equilibrium', - Simulated_Time_Lapse=_F(Initial_Time=0.0, - Duration=300.0,), - Geometric_Domain=_F(Shape='Simplified Shape', - Box='Cube', - Size_Of_Bounding_Box=(16.0,16.0,16.0), - Surface= - ('INT1','INT2','INT3','INT4','INT5','INT6', - 'INT7','INT8','INT9','INT10','INT11','INT12','INT13','INT14','INT15', - 'INT16','INT17','INT18','INT19','INT20','INT21','INT22','INT23','INT24', - 'INT25','INT26','INT27','INT28','INT29','INT30','INT31','INT32','INT33', - 'INT34','INT35','INT36','INT37','INT38','INT39','INT40','INT41','INT42', - 'INT43','INT44','INT45','INT46','INT47','INT48','INT49','INT50','INT51', - 'INT52',),), - System_Component=_F(General_Level_Of_Description='Mesoscopic', - Component='Classical_Particle System', - Physical_Description_Particle=_F(List_Of_Species=_F(Number_Of_Species=1, - Specie=_F(Name_Of_Specie=C, - Mass_Molaire=12.011, - Number_of_Particle=784,),), - List_Of_Bonded_Particles=_F(Bonded_Particles=(_F( - Name_Of_Bonded_Particles=C1, - Species_in_Particle=(C,C,),), - _F( - Name_Of_Bonded_Particles=C2, - Species_in_Particle=(C,C,C,),), - _F( - Name_Of_Bonded_Particles=C3, - Species_in_Particle=(C,C,C,C,),),),), - List_Of_Interactions=_F(Bonded_Interactions=(_F( - Type_Of_Bonded_Interaction='Covalent Bond Angle', - Interaction_Angles_Parameters=_F( - Apply_To_Bonded_Particles=(C3,C3,), - Spring_Stifness=1.0, - Mean_Bond_Angle=2.0,),), - _F( - Type_Of_Bonded_Interaction='Covalent Bond Length', - Interaction_Length_Parameters=_F( - Apply_To_Bonded_Particles=(C2,), - Spring_Stifness=3.0, - Mean_Bond_Length=4.0,),),), - Unbonded_Interactions=_F( - Type_Of_Unbonded_Interaction='Repulsion_and_VdW', - Species_Pair_Parameters=_F( - Type_Repulsion_and_VdW='Lennard_Jones', - Species_Pair=(C,C,), - VdW_Radius=0.0355, - Depth_Of_The_Potential_Well=0.292288,),), - External_Field_Interaction=_F( - Type_Of_Interaction_With_An_External_Field='No',),), - Statistical_Physics=_F(Type_Of_Statistical_Physics=\ - 'Equilibrium', - Distribution='nvt', - Target_Temperature=300.0,),), - Particle_Representation=_F(Representation_Type='Particle_Representation', - Type_Of_Entity='Grain', - Numerical_Particle_Model=_F(Type_Of_State_Vector='Kinetic',), - Definition_Numerical_Model=_F(Numerical_Model='MD', - Structure_Of_The_Evolution_Law=\ - 'Newton equations',),),), - Boundary_Conditions=_F(Type_Of_Boundary_Condition='Periodic', - Direction='XYZ',),); - -CodeSpecific(Gromacs_Physical_Constraints=_F(Remove_Center_Of_Mass_Motion='Non Activ', - Bond_Constraints=_F(Bond_Constraint_Type='BC_none',), - Temperature_Coupling=_F(tcoupl='Non Activ',),), - Gromacs_Numerical_Description=_F(Integrator='steep', - emtol=10.0, - emstep=0.001, - Nb_Of_Steps=5000,), - Gromacs_Neighbor_Searching=_F(cutoff_scheme='group', - nstlist=10, - nst_type='grid', - periodic_molecules=True, - rlist=1, - rcoulomb=1.0, - rvdw=1.0,), - Gromacs_Run_Options=_F(UserDef='-DFLEX_SRC', - Files=_F(Gromos_File='/home/vimmp/training/app/gromacs/gromax.testdata/CNT53_12x057.gro', - Gromacs_Topology_File=\ - '/home/vimmp/training/app/gromacs/gromax.testdata/CNT53_12x057.top', - MDP_Generated_File='/tmp/em.mdp',),),); - -CodeSpecific(Gromacs_Physical_Constraints=_F(Remove_Center_Of_Mass_Motion='Linear', - nstcomm=100, - Apply_On_The_Complete_System=True, - Bond_Constraints=_F(Bond_Constraint_Type='BC_none',), - Temperature_Coupling=_F(tcoupl='Non Activ',),), - Gromacs_Numerical_Description=_F(Integrator='md', - Nb_Of_Steps=100000,), - Gromacs_Neighbor_Searching=_F(cutoff_scheme='verlet', - nstlist=10, - nst_type='grid', - periodic_molecules=True, - rcoulomb=1.0, - rvdw=1.0,), - Gromacs_Initial_Conditions=_F(gen_vel='yes', - gen_temp=300.0, - gen_seed=1993,), - Gromacs_Run_Options=_F(Files=_F(MDP_Initial_Input_File='/home/vimmp/training/app/session10/datafiles/nvt_initial.mdp', - Gromos_File='/home/vimmp/training/app/gromacs/gromax.testdata/CNT53_12x057.gro', - Gromacs_Topology_File=\ - '/home/vimmp/training/app/gromacs/gromax.testdata/CNT53_12x057.top', - MDP_Generated_File='/tmp/te.mdp',),),); - -CodeSpecific(Gromacs_Physical_Constraints=_F(Remove_Center_Of_Mass_Motion='Linear', - nstcomm=100, - Apply_On_The_Complete_System=True, - Bond_Constraints=_F(Bond_Constraint_Type='BC_none',), - Temperature_Coupling=_F(tcoupl='Nos-Hoover', - Groups_Separatly_Coupled=True, - TC_Group_Param=( - _F(Name_Of_Group='INT1', - tau_t=0.1, - ref_t=350.0,), - _F(Name_Of_Group='INT52', - tau_t=0.1, - ref_t=250.0,),),),), - Gromacs_Numerical_Description=_F(Integrator='md', - Nb_Of_Steps=300000, - nsttcouple=1993,), - Gromacs_Neighbor_Searching=_F(cutoff_scheme='group', - nstlist=5, - nst_type='grid', - periodic_molecules=True, - rlist=1, - rcoulomb=1.0, - rvdw=1.0,), - Gromacs_Initial_Conditions=_F(gen_vel='yes', - gen_temp=300.0, - gen_seed=-1.0,), - Gromacs_Run_Options=_F(Files=_F(MDP_Initial_Input_File='/home/vimmp/training/app/session10/datafiles/ne_initial.mdp', - Gromos_File='/home/vimmp/training/app/gromacs/gromax.testdata/CNT53_12x057.gro', - Gromacs_Topology_File=\ - '/home/vimmp/training/app/gromacs/gromax.testdata/CNT53_12x057.top', - MDP_Generated_File='/tmp/ne.mdp',),),); -#CHECKSUM:4360baa1c30ab397af0b0f4f908eda24 -:FIN CHECKSUM diff --git a/Vimmp/GNUmakefile b/Vimmp/GNUmakefile deleted file mode 100644 index 42745e28..00000000 --- a/Vimmp/GNUmakefile +++ /dev/null @@ -1,128 +0,0 @@ -.SUFFIXES: .xsd .py _driver.py _test_driver_0.comm _test_driver_1.comm _test_driver_0.xml _test_driver_1.xml _test_driver_0.py _test_driver_1.py .comm .xml -#TODO : Supprimer les suffixes inutiles depuis l'utilisation des des règles pattern au lieu des règles suffixes -#TODO : Ajouter la dépendance entre le make .xml et la présence du driver -.PHONY: xsdAll driverAll -SHELL=bash - -ifdef EFICAS4VIMMP_ROOT -srcdir?=${EFICAS4VIMMP_ROOT} -else -srcdir?=.. -endif - -confdir?=$(srcdir)/config -tooldir=$(srcdir)/Tools - -# Règle en tête de Makefile -all: driverAll - -############# ENVIRONEMENT DE CONSTRUCTION VIMMP Traning ################ - -ifeq ($(findstring vimmp,$dir($(realpath GNUmakefile))),vimmp) -include $(confdir)/GNUmakefile.mdm -include $(confdir)/GNUmakefile.env -else -include $(confdir)/GNUmakefile.env -endif - -PYXB ?=pyxbgen - -################# REGLES DE CONSTRUCTION ######################## - -define cata_dependencies = -cata_gromacs$1 : cata_Vimmp$1 -endef - -#Définition des dépendances pour le modèle .py -$(eval $(call cata_dependencies,.py)) -#Définition des dépendances pour le modèle .xsd -$(eval $(call cata_dependencies,.xsd)) - -# $(subst .py,.xsd,cata_dependencies) - -cata_files= \ -cata_Vimmp.py \ -cata_gromacs.py \ -cata_cps.py \ -cata_CSAndCPS.py \ -cata_CSAndCPS_v11.py - -cata_basename=$(cata_files:%.py=%) -xsd_files = $(cata_files:%.py=%.xsd) -driver_files= $(cata_files:%.py=%_driver.py) - -xsdAll: $(xsd_files) -driverAll: exec.sh environ.sh qtEficas.sh $(driver_files) -# qtEficasSlm.sh - - -# Exemple PyxB : $(PYXB) -m $(basename $@) -u $< --location-prefix-rewrite http://chercheurs.edf.com/logiciels/vimmp= --write-for-customization \ -# L'utilisation de $? ne fonctionne pas si l'on ne modifie qu'un seul catalogue car il liste uniquement les fichiers modifiés et pyxb détecte -# que l'autre fichier en dépend et qu'il n'a pas été regénéré en même temps: $^ -.py.xsd: - $(tooldir)/generateXSD.py -c $(abspath $<) - -.xsd_driver.py: - $(PYXB) -m $(basename $@) -u $^ --write-for-customization - xmllint --path $(confdir) --schema XMLSchema11_local.xsd --noout $^ - -#Les Tools eficas ont besoins d'un chemin absolu -#ATTENTION : La .sufix rule n'autorise pas les dépendances après le : (sinon la ligne entière est un nom de fichier bizzare) -#_test_driver_$1.comm_test_driver_$1.xml: -# il faut les définir à part -# TODO : -#.SECONDEXPANSION: -#%_test_driver_$1.xml : %_test_driver_$1.comm $$(realpath $$(*).py) $$(*)_driver.py - -define test_xml_rule = -%_test_driver_$1.xml : %_test_driver_$1.comm $$(realpath $$(*).py) - echo -e "\n\n------ $$(*)_driver.py ----------\n" - @echo -e "\n\n------ Generate xml test file $$(@) ------\n" - @[[ -f $$(*).py ]] || (echo "Le fichier catalogue $$(*).py est introuvable" && false) - $(tooldir)/generateXML.py -c $$(abspath $$(*).py) $$< -endef - - -#ATTENTION : La .sufix rule n'autorise pas les dépendances après le : (sinon la ligne entière est un nom de fichier bizzare) -#_test_driver_$1.comm_test_driver_$1.py: -# il faut les définir à part -define test_driver_rule = -%_test_driver_$1.py : %_test_driver_$1.comm - @echo -e "\n\n------ Generate xml test driver $$(@) ------\n" - sed -e "s,@module@,$$(*)_driver,g" -e "s,@file@,$$(<:%.comm=%.xml),g" $$(confdir)/test_driver_subst.py > $$(@) && \ - chmod +x $$(<:%.comm=%.py); -endef - -#Définition des règles de construction pour les tests -#$(eval $(call test_driver_rule,0)) -#$(eval $(call test_driver_rule,1)) -$(foreach it,0 1 2 3 4 5 6 7 8 9, $(eval $(call test_xml_rule,$(it))) ) -$(foreach it,0 1 2 3 4 5 6 7 8 9, $(eval $(call test_driver_rule,$(it))) ) - -#test_driver_xml:= $(patsubst %.comm,%.xml,$(wildcard *_test_driver_?.comm)) -#test_driver_py:= $(patsubst %.comm,%.py,$(wildcard *_test_driver_?.comm)) - -new_test_driver_xml:= $(foreach it,$(cata_basename), $(patsubst %.comm,%.xml,$(wildcard $(it)_test_driver_?.comm)) ) -new_test_driver_py:= $(foreach it,$(cata_basename), $(patsubst %.comm,%.py,$(wildcard $(it)_test_driver_?.comm)) ) - -#$(info $(new_test_driver_xml) "----" $(cata_basename) ) -#$(info $(new_test_driver_py) "----" $(cata_basename) ) - -# xml: -# @echo "Reminder: a .comm file is needed for this step" -# ../tools/generateXML.py -c cata_1.py cata_1_test_1.comm - -check test: testAll - -################# REGLES DE TESTS ######################## - -testAll: exec.sh driverAll $(new_test_driver_py) $(new_test_driver_xml) - for i in $(new_test_driver_py) ; do echo -e "\n\n------ Launching $$i ------" && ./exec.sh python $$i ; done -# for i in `ls *_test_driver*.py` ; do echo -e "\n\n------ Launching $$i ------" && ./exec.sh python $$i || break ; done - -################# REGLES DE NETTOYAGE ######################## - -clean: - rm -f *.pyc *~ qtEficasSlm.sh exec.sh environ.sh - rm -rf raw binding.py __pycache__ - rm -f $(xsd_files) $(driver_files) *test_driver_?.py *test_driver_?.xml diff --git a/Vimmp/OLD/cata_CSAndCPS_v1.py b/Vimmp/OLD/cata_CSAndCPS_v1.py deleted file mode 100755 index 8ed43ae5..00000000 --- a/Vimmp/OLD/cata_CSAndCPS_v1.py +++ /dev/null @@ -1,626 +0,0 @@ -from Accas import * - -class composant(ASSD):pass -class geometricDomain(ASSD):pass -class modeleNumDuCompo(UserASSD):pass -class especeChimique(UserASSD):pass -class userParticle(UserASSD) :pass -class userAtom(userParticle) :pass -class userMolecule(userParticle) :pass -class userDiscrete(userParticle) :pass -class userDPD(userParticle) :pass - -dictSystemTypeModeleNumerique = { 'Quantum system' : (), - 'Classical particle system' : ('MD', 'DPD', 'LBM', 'SDPD','SPH','CFD_Discrete_Particles'), - 'Continuum system' :('Fluid_Fields','Fluid_Particles', 'SPH','Lagrangian one-particle pdf'), - } - -# PN a faire --> ajouter un MC modeleNumerique ( apres avoir renomme le modeleNumerique actuel en classe de modele numerique) et le dictionnaire d apres -dictTypModNumModNum = { - ('Continuum system','Particles') : ('SPH','Lagrangian one-fluid-particle pdf'), - ('Continuum system','Fields') : ('FV','FEM', 'Spectral method'), - ('Classical particle system','Particles') : ('MD', 'DPD', 'SDPD','SPH','CFD_Discrete_Particles'), - ('Classical particle system','Fields') : ('LBM',), - ('Quantum system','Particles') : ('Particle method',), - ('Quantum system','Fields') : ('Wave',), -} - -dictCodeModeleNumerique = { - - 'Code_Saturne' : ('Lagrangian one-fluid-particle pdf', 'FV', 'CFD_Discrete_Particles',), - 'Fluent' : ('FV',), - 'Culgi Package': (), - 'DEM_SD' : ('Lagrangian one-fluid-particle pdf', 'FV', 'CFD_Discrete_Particles',), - 'DFTB+' : ('density functional tight binding method',), - 'DL_MESO_DPD' : ('Lagrangian one-fluid-particle pdf', 'FV', 'CFD_Discrete_Particles',), - 'DL_MESO_LBE' : ('Lagrangian one-fluid-particle pdf', 'FV', 'CFD_Discrete_Particles',), - 'DL_POLY_4' : ('Lagrangian one-fluid-particle pdf', 'FV', 'CFD_Discrete_Particles',), - 'GROMACS' : ('Lagrangian one-fluid-particle pdf', 'FV', 'CFD_Discrete_Particles',), - 'GROMACS_LS' : ('Lagrangian one-fluid-particle pdf', 'FV', 'CFD_Discrete_Particles',), - 'LAMMPS' : ('Lagrangian one-fluid-particle pdf', 'FV', 'CFD_Discrete_Particles',), - 'NWChem' : ('Lagrangian one-fluid-particle pdf', 'FV', 'CFD_Discrete_Particles',), - 'OpenFOAM' : ('Lagrangian one-fluid-particle pdf', 'FV', 'CFD_Discrete_Particles',), - 'Quantum EXPRESSO' : ('Particle method', 'Wave',), - 'RHEO_AGGRATE' : ('Particle method', 'Wave',), - 'RHEO_DROP' : ('Particle method', 'Wave',), - 'STAR_CCM+' : ('FV', 'Particles',), - 'Code Nill' : ('Spectral method', ), -} - -dictCodeFormat = { - 'Code_Saturne' : ('med', 'cgns', 'msh', 'des', 'unv ', 'Use converter'), - 'Culgi Package': ('cof',), - 'DEM_SD' : ('geo', 'ascii'), - 'DFTB+' : ('geo', 'ascii'), - 'Fluent' : ('FluentFormat', 'Use converter'), - 'OpenFOAM' : ('OpenFoamFormat', 'Med', 'Use converter'), -} - -dictTermeLE = { - ('Fields','Particles') : ('Fluid_Velocity_Field', - 'Fluid_Temperature_Field', - 'Fluid_Species_Mass_Fraction_Fluid',), - ('Particles','Fields') : ('Fluid_Particle_Momentum_Exchange_Field', - 'Fluid_Particle_Thermal_Exchange_Field', - 'Lagrangian one-particle pdfFluid_Particle_Mass_Source_Field', - 'Particle_Volumetric_Concentration_Modified_Fluid_Viscosity', - 'Particle_Extra_Stress_Tensor'), -} - -dictCodeConvertisseur = { - ('Saturne', 'OpenFOAM') : ('gmsh', 'Saturne2CDM and CDM2OpenFoam'), - ('Saturne', 'Fluent') : ( 'Saturne2CDM and CDM2Fluent'), - ('Fluent', 'OpenFOAM') : ('Fluent2CDM and CDM2OpenFoam'), - } - -def prepareBlocSystemType(systemType) : - condition = "SystemType == '" + systemType + "'" - Identifier = SIMP(statut='o', typ=(modeleNumDuCompo,'createObject'),) - ModelType = SIMP(statut='o', typ='TXM', into = ('Particles', 'Fields')) - dicoArgs={} - for typeMod in ('Particles', 'Fields'): - conditionType = "ModelType == '" + typeMod + "'" - NumericalMethod = SIMP(statut='o',typ='TXM', into=dictTypModNumModNum[systemType, typeMod], - position='global_jdc', intoXML=allValueInDict(dictTypModNumModNum)) - dicoBloc = {} - for modeleNumerique in list(dictTypModNumModNum[systemType,typeMod]): - conditionNum = "NumericalMethod == '" + modeleNumerique + "'" - setCode = set() - for code in dictCodeModeleNumerique.keys(): - if modeleNumerique in dictCodeModeleNumerique[code]: setCode.add(code) - Solver = SIMP(statut='o', typ='TXM', into=list(setCode), intoXML=list(dictCodeModeleNumerique.keys()) ) - monNomBloc='b_ModelName_' + modeleNumerique.replace(' ','_') - if setCode !=set(): dicoBloc[monNomBloc]=BLOC(condition=conditionNum, nomXML='b_ModelName',Solver=Solver) - dicoArgs['b_modelType'+typeMod] = BLOC(condition=conditionType, NumericalMethod=NumericalMethod,**dicoBloc) - NumericalModel = FACT(statut='o', max= '**', Identifier=Identifier, ModelType=ModelType, **dicoArgs) - return BLOC(condition=condition, nomXML='b_systemType', NumericalModel=NumericalModel) - -def calculCommun( key1, key2, dico): - monSet=set() - if not key1 in dico: return () - if not key2 in dico: return () - for val in dico[key1]: - if val in dico[key2]: - monSet.add(val) - if monSet == set() : monSet.add ('No common format') - return list(monSet) - -def allValueInDict( dico): - monSet=set() - for clef in dico : - for val in dico[clef] : monSet.add(val) - return monSet - -def creeBlocPourLesFichiers (laCondition, NomDuFichier, ListeFormats): - SIMPFormatFichier = SIMP(statut='o', typ = 'TXM', into = tuple(ListeFormats) + ('others',), ) - dicoDesBlocs = {} - for formatFich in ListeFormats : - nomBloc = 'b_format_fichier' + str(formatFich) - typeDesFichiers = ('Fichier', formatFich + " Files (*." + formatFich + ");;All Files (*)",) - blocCondition ="FileFormat == '" + formatFich + "'" - dicoDesBlocs[nomBloc] = BLOC( condition = blocCondition, FileName = SIMP(statut='o', typ = typeDesFichiers ),) - dicoDesBlocs['b_format_fichier_others'] = BLOC(condition="FileFormat == 'others'", FileName = SIMP(statut='o', typ = ('Fichier','All Files (*)'),),) - return BLOC(condition=laCondition, FileFormat = SIMPFormatFichier, **dicoDesBlocs) - -def champ(nomDelaContante, labels ,nbReels ) : -# ajouter les extensions pour le fichier et les blocs associes -# certains champs ne seront jamais uniformes - #Input_Mode = SIMP( statut='o', typ='TXM', into=('uniform value','values directly assigned','values read in file','analytical function', 'call to a service')), -#PNPN : Passer le nom du champ pour le label du vecteur - dicoBloc = {} - dicoBloc[nomDelaContante] = SIMP( statut='o', typ='R') - return FACT( statut='o', - Input_Mode = SIMP( statut='o', typ='TXM', into=('uniform value','values directly assigned','values read in file','analytical function',)), - b_uniforme = BLOC( condition = "Input_Mode == 'uniform value'", **dicoBloc), - b_vsaisies = BLOC( condition = "Input_Mode == 'values directly assigned'", - Field = SIMP( typ='R', statut='o', max ='**'), - #Vecteur = SIMP( fenetreIhm='Tableau', homo = labels, - # statut='o', min=2, max='**', - # typ=Tuple(nbReels), - # validators=VerifTypeTuple(("'R',"*nbReels),),) # end particle - ), #b_vsaisie - b_vdsfich = BLOC( condition = "Input_Mode == 'values read in file'", - Format = SIMP( statut='o', typ='TXM', into=['txt','Med',], position='global' ), - td_txt = BLOC(condition = 'Format == "txt"', - File = SIMP( statut='o', typ=('Fichier','Text Files(*.txt);All Files (*)'),), - ), - td_med_1 = BLOC( condition = 'Format == "Med"', - File = SIMP( statut='o', typ=('Fichier','Med Files(*.med);All Files (*)'),), - ), - td_med_2 = BLOC( condition = 'Format == "Med"', - FieldName = SIMP( statut='o', typ='TXM',), - ), - ), - b_vfct = BLOC( condition = "Input_Mode == 'analytical function'", - Function = SIMP( statut='o', typ='TXM',), - ), - #b_vserc = BLOC( condition = "Input_Mode == 'call to a service'", - # Service = SIMP( statut='o', typ='TXM',), - #), - ) - - - - -def FactTurbulence(statut): - return FACT (statut=statut, - TurbulenceModellingType = SIMP(typ='TXM', statut='o', into =['No Model (DNS)', - 'Spatial filtering (LES)', 'One-point moment', 'One-point PDF']) , - bloc_one_point = BLOC(condition= "TurbulenceModellingType == 'One-point moment'", - RANSModel = SIMP(statut="o", typ="TXM", into=['Turbulent-Viscosity Model(TVM)', 'Reynolds Stress Model (RSM)']), - bloc_TVM = BLOC(condition= "RANSModel == 'Turbulent-Viscosity Model(TVM)'", - TVMChoice = SIMP(typ='TXM', statut='o', into=['k-epsilon', 'k-omega']), - ), # fin bloc_TVM - bloc_RSM = BLOC(condition = "RANSModel == 'Reynolds Stress Model (RSM)'", - RSMChoice = SIMP(typ='TXM', statut='o', into=['Rotta', 'LRR-IP','LRR-QI','SSG']), - ), # fin bloc_RSM - ), # fin bloc_one_point - bloc_one_spatial = BLOC(condition = "TurbulenceModellingType == 'Spatial filtering (LES)'", - ChoiceOfApproach = SIMP(typ='TXM', statut='o', into=['Field-based LES', 'Filtered Density Function (FDF)']), - SubgridScaleModel = SIMP(typ='TXM', statut='o', into=['No SGS', 'Smagorinsky','Dynamical model', 'SGS Transport Equations']), - ), # fin bloc_one_spatial - bloc_one_point_pdf = BLOC(condition = "TurbulenceModellingType == 'One-point PDF'", - ChoiceOfApproach = SIMP(typ='TXM', statut='o', into=['One-point Eulerian PDF', 'One-particle Lagrangian PDF']), - bloc_lagrangian_pdf=BLOC(condition = "ChoiceOfApproach == 'One-particle Lagrangian PDF'", - StochasticModel = SIMP(typ='TXM', statut='o', into=['Langevin','Other'], defaut='Langevin'), - )# fin lagrangian - ), # fin bloc_one_point_pdf - bloc_no_model = BLOC(condition = "TurbulenceModellingType == 'No Model (DNS)'", - ChoiceOfApproach = SIMP(statut='o', typ='TXM', into=['Field-based DNS', 'N-Particle Method']), - bloc_Field = BLOC(condition = "ChoiceOfApproach == 'Field-based DNS'", - NumericalMethod=SIMP(statut='o', typ='TXM', into=['FV', 'Spectral Method']), - ),# fin bloc_Field - bloc_N_particle = BLOC(condition = "ChoiceOfApproach == 'N-Particle Method'", - NumericalMethod=SIMP(statut='o', typ='TXM', into=['SPH', 'Vortex Method']), - ),# fin bloc_N_particle - ), # fin bloc_no_model -)# fin du bloc return de la fonction factTurbulence - -def Particle(cardinalite) : - return FACT (statut='o', max=cardinalite, - ParticleNature = SIMP( statut='o', typ='TXM', into=['Atoms', 'Molecules', 'Dissipative', 'Fluid Particle', 'Discrete Particle']), - b_Atom = BLOC( condition='ParticleNature == "Atoms"', - AtomsName = SIMP( statut='o', typ=(userAtom,'createObject'),), - Atom = FACT (statut ='o', max= '**', - ChemicalSpecie = SIMP( statut='o', typ='TXM'), - Number = SIMP (statut ='o', typ = 'I'), - ElectricCharge = SIMP( statut='o', typ='R'), - MagneticMoment = SIMP( statut='o', typ='R'), - Size = SIMP( statut='f', typ='R'), # relevant ? - ), - ), - b_Molecule = BLOC( condition='ParticleNature == "Molecules"', - MoleculeName = SIMP( statut='o', typ=(userMolecule,'createObject'),), - ChemicalSpecie = FACT ( max='**', statut='o', - ChemicalSpecieName = SIMP( statut='o', typ=userAtom), - Proportion = SIMP( statut='o', typ='R', val_max =1), - ), - ElectricCharge = SIMP( statut='o', typ='R'), - MagneticMoment = SIMP( statut='o', typ='R'), - Shape = SIMP( statut='f', typ='TXM', into=['Linear', 'Trigonal Planar', 'Angular', 'Tetrahedral', 'Octahedral', 'Trigonal pyramid', 'Other']), - ), - b_Dissipative = BLOC( condition='ParticleNature == "Dissipative"', - DPDName = SIMP( statut='o', typ=(userDPD,'createObject'),), - BondedParticles = SIMP(statut="o", typ=bool, defaut=False), - ), - b_Discrete = BLOC( condition='ParticleNature == "Discrete Particle"', - DiscreteParticleName = SIMP(statut='o', typ=(userDiscrete,'createObject'),), - TypeOfDiscreteParticle = SIMP( statut='o', typ='TXM', into=['Solid', 'Droplets', 'Bubbles','Bio Organism'],), - b_TypeDP_Solid = BLOC( condition ='TypeOfDiscreteParticle == "Solid"', - TypeOfSolid = SIMP( statut='o', typ='TXM', into=['Primary Particle', 'Assemblage / Aggregate'], position = 'global'), - b_SolidPrimary = BLOC( condition='TypeOfSolid == "Primary Particle"', - ), - b_SolidAggregate = BLOC( condition='TypeOfSolid == "Assemblage / Aggregate"', - ), - ), - b_TypeBio_Solid = BLOC( condition='TypeOfDiscreteParticle == "Bio Organism"', - TypeOfOrganism = SIMP( statut='o', typ='TXM', into=['Unicellular', 'Multicellular']), - b_Unicellular = BLOC( condition ='TypeOfOrganism=="Unicellular"', - Unicellular = SIMP( statut='o', typ='TXM', into=["Bactaria"], defaut='Bactaria') - ), - b_Multicellular = BLOC( condition ='TypeOfOrganism=="Multicellular"', - Multicellular = SIMP( statut='o', typ='TXM', into=["Animal","Fongus","Plant"]) - ), - ), # b_TypeBio_Solid - Properties = FACT ( statut ='o', - Geometry = SIMP( statut='o', typ='TXM', into=['Sphere', 'Ellopsoids', 'Other Shape']), - b_geom_Sphere = BLOC( condition = 'Geometry == "Sphere"', - ParticleRadius = SIMP( statut='o', typ ='R', val_min = 0), - ), - Weight = FACT (statut = 'o', - Mass = SIMP( statut='o', typ ='R', val_min = 0), - Density = SIMP( statut='o', typ ='R', val_min = 0), - ), - Mechanical = SIMP( statut='o', typ='TXM', into=['Rigid', 'Flexible', 'Deformable']), - b_SolidAggregate = BLOC( condition='TypeOfSolid == "Assemblage / Aggregate"', - Morphological = FACT (statut = 'o', - Consigne = SIMP(statut="o", homo="information", typ="TXM", defaut='Choose optional properties'), - FractalDimension = SIMP( statut='f', typ='R'), - NumberOfPrimaryParticle = SIMP (statut ='f',typ='I'), - EquivalentSize = SIMP( statut='f', typ='R'), - Porosoty = SIMP( statut='f', typ='R'), - ), # Morphological - ), # b_SolidAggregate - ElectroMagnetic = FACT (statut = 'f', - ElectricCharge = SIMP( statut='o', typ='R'), - MagneticMoment = SIMP( statut='o', typ='R'), - ), - b_SolidAggregateBonded = BLOC( condition='TypeOfSolid == "Assemblage / Aggregate"', - BondedParticles = FACT( - ListOfBondedParticles = SIMP(statut='o', max='**', typ = userParticle), - ), - ), - ), # Properties - ), # b_Discrete -############################ - - List_Of_Bonded_Particles = FACT( statut='f', - # -------------------------------------------# - Bonded_Particles = FACT( statut='o', max = "**", - Name_Of_Bonded_Particles = SIMP( statut='o', typ='TXM'), - Species_in_Particle = SIMP( statut='o', min=2, typ='TXM' , max = "**"), - ), # Bonded_Particles - ), # List_Of_Bonded_Particles - - List_Of_Interactions = FACT( statut='o', max = "**", - # --------------------------------------------------# - - Bonded_Interactions = FACT( statut='o', max = "**", - - #Type_Of_Bonded_Interaction = SIMP( statut='o', typ='TXM', into=['No', 'Covalent Bond Length', 'FENE', 'Covalent Bond Angle', 'Dihedral Angles', 'Improper Dihedral', 'Frozen Motion' ], defaut='No', position='global'), - Type_Of_Bonded_Interaction = SIMP( statut='o', typ='TXM', into=['No', 'Covalent Bond Length', 'FENE', 'Covalent Bond Angle', 'Dihedral Angles', 'Improper Dihedral', 'Frozen Motion' ], defaut='No'), - - #La saisie de l'ensemble des liaisons d'un meme type peut se faire ds le meme bloc (soit ds un fichier, soit manuelle) - #Une seule valeur de distante? est a saisir pour l'ensemble - # bloc_covalent_1 = BLOC( condition = 'Type_Of_Bonded_Interaction in ("Covalent Bond Length","FENE")', - # ), # fin bloc_covalent_1 - bloc_covalent_length = BLOC( condition = 'Type_Of_Bonded_Interaction == "Covalent Bond Length"', - Interaction_Length_Parameters = FACT( statut='o', max="**", - Apply_To_Bonded_Particles = SIMP( statut='o', max='**', typ='TXM'), - Spring_Stifness = SIMP( statut='o', typ='R', val_min=0), - Mean_Bond_Length = SIMP( statut='o', typ='R', val_min=0), - ), # fin Interation_Length_Parameters - ), # fin Bond_Length_Parameters - bloc_covalent_angle = BLOC( condition = 'Type_Of_Bonded_Interaction == "Covalent Bond Angle"', - Interaction_Angles_Parameters = FACT( statut='o', max="**", - Apply_To_Bonded_Particles = SIMP( statut='o', max='**', typ='TXM'), - Spring_Stifness = SIMP( statut='o', typ='R', val_min=0), - Mean_Bond_Angle = SIMP( statut='o', typ='R', val_min=0), - ), # fin Interation_Angles_Parameters - ), # fin bloc_covalent_length_and_angle - - #bloc_covalent_length_and_angle = BLOC( condition = 'Type_Of_Bonded_Interaction == "Covalent Bond Length" or Type_Of_Bonded_Interaction == "Covalent Bond Angle"', - # Bond_Parameters = FACT( statut='o', max="**", - # Apply_To_Bonded_Particles = SIMP( statut='o', max='**', typ='TXM'), - # Spring_Stifness = SIMP( statut='o', typ='R', val_min=0), - # bloc_covalent_length = BLOC( condition = 'Type_Of_Bonded_Interaction == "Covalent Bond Length"', - # Mean_Bond_Length = SIMP( statut='o', typ='R', val_min=0), - # ), # fin Bond_Length_Parameters - # bloc_covalent_angle = BLOC( condition = 'Type_Of_Bonded_Interaction == "Covalent Bond Angle"', - # Mean_Bond_Angle = SIMP( statut='o', typ='R', val_min=0), - # ), # fin Bond_Length_Parameters - # ), # fin Bond_Length_Parameters - #), # fin bloc_covalent_length_and_angle - - bloc_FENE = BLOC( condition = 'Type_Of_Bonded_Interaction == "FENE"', - Applies_To_All_Particles = SIMP( statut='o', typ=bool, defaut=True), - bloc_not_on_all = BLOC( condition = 'Applies_To_All_Particles == False', - FENE_Parameters = FACT( statut='o', max="**", - Species_Pair = SIMP( statut='o', max=2, typ='TXM'), - Spring_Constant_H = SIMP( statut='o', typ='R', val_min=0), - LMax = SIMP( statut='o', typ='R', val_min=0), - ), # fin FENE_Parameters - ), # fin bloc_not_on_all - bloc_on_all = BLOC( condition = 'Applies_To_All_Particles == True', - Spring_Constant_H = SIMP( statut='o', typ='R', val_min=0), - LMax = SIMP( statut='o', typ='R', val_min=0), - ), # fin bloc_on_all - ), # fin bloc_FENE - - bloc_le_reste = BLOC( condition = 'Type_Of_Bonded_Interaction in ("Dihedral Angles", "Improper Dihedral", "Frozen Motion")', - Particle_Name = SIMP( statut="f", typ='TXM'), - #Consigne = SIMP( statut="o", homo="information", typ="TXM", defaut='Not Implemented Yet'), - - ), - ), # fin Bonded_Interaction - - # ------------------------------- # - - Unbonded_Interactions = FACT( statut='o', max= "**", - - Type_Of_Unbonded_Interaction = SIMP( statut='o', typ='TXM', into=['No', 'electro_magnetic', 'Repulsion_and_VdW', 'Soft_Potentiel', ], defaut='No', position='global',fenetreIhm='menuDeroulant'), - - bloc_elec = BLOC( condition = 'Type_Of_Unbonded_Interaction == "electro_magnetic"', - Permittivity = SIMP( statut='o', typ='R', position='global_jdc'), - Magnetic = SIMP( statut='o', typ=bool, defaut=False,), - bloc_magnetic = BLOC( condition = 'Magnetic == True', - Permability = SIMP( statut='o', typ='R'), - ), # bloc_magnetic - ),# fin bloc_elec - - bloc_VdW = BLOC( condition = 'Type_Of_Unbonded_Interaction == "Repulsion_and_VdW"', - Species_Pair_Parameters = FACT( statut='o', max="**", - Type_Repulsion_and_VdW = SIMP( statut='o', typ='TXM', into = [ 'Lennard_Jones', 'Hard_sphere_model']), - Species_Pair = SIMP( statut='o', max=2, typ='TXM'), - VdW_Radius = SIMP( statut='o', typ='R', val_min=0), - b_Lennard = BLOC( condition = "Type_Repulsion_and_VdW == 'Lennard_Jones'", - Depth_Of_The_Potential_Well = SIMP( statut='o', typ='R', val_min=0), - ), # fin b_Lennard - ), # fin Species_Pair_Parameters - ), # bloc_VdW - - b_Param_Soft_Potentiel = BLOC( condition = "Type_Of_Unbonded_Interaction == 'Soft_Potentiel'", - Groot_Warren_Repulsion = SIMP( statut='o', typ='R', defaut=25.0, val_min=0), - Groot_Warren_Cutoff = SIMP( statut='o', typ='R', defaut=1.0, val_min=0), - Drag_Coefficient = SIMP( statut='o', typ='R'), # les 2 valent 0 pour MD - Drag_Force_Cutoff = SIMP( statut='o', typ='R', val_min=0), - ), # b_Param_Soft_Potentiel - - ), # fin UnBonded_Interactions - - # ------------------------------- # - - External_Field_Interaction = FACT( statut='o', max= "**", - Type_Of_Interaction_With_An_External_Field = SIMP( statut='o', typ='TXM', into=['No','gravitational field','electric field','magnetic field', 'Hydrodynamic_Field'], fenetreIhm='menuDeroulant', defaut ='No'), - b_gravite = BLOC( condition = 'Type_Of_Interaction_With_An_External_Field=="gravitational field"', - G = SIMP( statut='o', typ='R', defaut=9.81), - ), - b_elect = BLOC( condition = 'Type_Of_Interaction_With_An_External_Field=="electric field"', - Electric_Field = champ('E', ('E',), 1), - ), - b_magnetic = BLOC( condition = 'Type_Of_Interaction_With_An_External_Field=="magnetic field"', - Magnetic_Field = champ('B', ('B',), 1), - ), - b_hydrodynamic = BLOC( condition = 'Type_Of_Interaction_With_An_External_Field=="hydrodynamic field"', - Hydrodynamic_Field = champ('U', ('U',), 1), - ), - b_External_Field_Interaction = BLOC( condition = 'Type_Of_Interaction_With_An_External_Field != "No"', - Field_Applies_On_All_Species = SIMP( statut='o', typ=bool, defaut=True), - b_porte_espece = BLOC( condition = 'Field_Applies_On_All_Species == False ', - Species_List = SIMP( statut='o', typ='TXM', max= '**'), # faire un typ = "espece" - ), - ), # fin b_External_Field_Interaction - ), # fin Interaction_External_Field - - ), # fin List_Of_Interactions - -############################ - ) - -def bloc_CPS(): - return BLOC(condition = 'SystemType == "Classical particle system"', - Particle = Particle('**'), -) - -def bloc_FluideMacro(): - return BLOC(condition = 'SystemType == "Continuum system"', - FluidComplexe = SIMP(typ=bool, statut='o', defaut = False,), - - FlowNature = SIMP(typ='TXM', statut='o', into =['Laminar', 'Turbulent'], position='global'), - bloc_FlowNature_Turbulent = BLOC(condition = ' FlowNature == "Turbulent"', - TurbulenceForFlowDynamics = FactTurbulence('o'), - ), #------ fin bloc_FlowNature_Turbulent - - -# ---------------------- Effets thermiques - - Thermal = FACT (statut ='o', - ThermalEffects = SIMP(typ='TXM', statut='o', into =['Non thermal', - 'No effect on flow dynamics', 'Effect on flow dynamics'], defaut='Non thermal'), - - bloc_NonThermalEffects = BLOC(condition = ' ThermalEffects == "Non thermal" or ThermalEffects == "No effect on flow dynamics"', - DensityEquationOfState = SIMP(typ='TXM', statut='o', into =['Constant density'], defaut = 'Constant density'), - ), # fin bloc_NonThermalEffects - - bloc_ThermalEffects_Active = BLOC(condition = ' ThermalEffects == "Effect on flow dynamics"', - DensityEquationOfState = SIMP(typ='TXM', statut='o', into =['Variable density', 'Compressible']), -# PNJPM est ce suffisant ? - ), # fin bloc_ThermalEffects_Active - bloc_ThermalEffects = BLOC(condition = ' ThermalEffects == "Effect on flow dynamics" or ThermalEffects == "No effect on flow dynamics"', - bloc_scalar_thermal_flux = BLOC (condition = "FlowNature == 'Turbulent'", - ThermalFluxModel = FactTurbulence('f'), - ),# fin bloc_scalar_thermal_flux - WithChemicalReactions = SIMP(typ=bool, statut ='o', defaut = False), - ), # fin bloc_ThermalEffects - ),# fin Fact Thermal - -# ---------------------- Scalaire additional - bloc_scalar_FluidTurbulentOrLaminar = BLOC(condition = "(FluidComplexe == False and FlowNature == 'Turbulent') or (FluidComplexe == False and FlowNature == 'Laminar')", - AdditionalScalars = FACT(statut = 'f', - Scalar = FACT(statut = 'o', max ='**', - Name = SIMP(typ='TXM', statut='o',), - bloc_scalar_FluidTurbulentandNonComplexe = BLOC (condition = "FlowNature == 'Turbulent'", - ScalarFluxModel = FactTurbulence('f'), - ) # bloc_scalar_FluidTurbulentandNonComplexe - ),# Scalar - ),# AdditionalScalars - ), # fin FluidTurbulentandNonComplexe - #bloc_scalar_FluidLaminaireandNonComplexe = BLOC (condition = "FluidComplexe == False and FlowNature == 'Laminar'", - # AdditionalScalars = FACT (statut = 'o', - # Scalar = FACT ( statut = 'f', max ='**', - # Name = SIMP(typ='TXM', statut='o',), - # ),# Scalar - # ),# AdditionalScalars - #), # fin FluidLaminaireandNonComplexe - bloc_FlowNature_Turbulent_For_Scalars = BLOC(condition = ' FlowNature == "Turbulent"', - ScalarTurbulenceModelling = FactTurbulence('f'), - ), - # il faut une validation de coherence entre l existence de tous les turbulencesModelling - )# fin bloc_FluideMacro - -JdC = JDC_CATA ( - code = 'Vimmp', - # faire un validateur qui verifie que si on active reactions chimiques il faut que les masses molaires soient rentrees -) - -Component = OPER(nom='Component', sd_prod=composant, - SystemType = SIMP(typ='TXM', into=['Quantum system', 'Classical particle system', 'Continuum system'], statut='o',position='global'), - PhysicalDescription = FACT(statut = 'o', - b_FluideMacro = bloc_FluideMacro(), - b_bloc_CPS = bloc_CPS(), - ), - b_ModeleNumerique_quantum = prepareBlocSystemType('Quantum system'), - b_ModeleNumerique_classical = prepareBlocSystemType('Classical particle system'), - b_ModeleNumerique_continuum = prepareBlocSystemType('Continuum system'), -) - -Species = PROC(nom='Species', - Specie = FACT( statut='o', max ="**", - Name = SIMP( statut='o', typ=(especeChimique,'createObject') ), - masse_molaire = SIMP( statut='f', typ='R',), - ) -) - -#Physical_Description = PROC(nom='Physical_Description', -# Component = SIMP(typ=composant, statut ='o',), -## bloc_FluideMacro = BLOC(condition = 'systemType == "Continuum system"',) -## faire un validateur qui verifie que si on active reactions chimiques il faut que les masses molaires soient rentrees -# -## ------------------------------------ Bloc FluidMacro ---------------------------------- -# bloc_FluideMacro = BLOC(condition = 'getEficasAttribut(Component,"SystemType") == "Continuum system"', -# #bloc_FluideMacro = BLOC(condition = '"Fields" in getEficasListOfAttributs(Component,["NumericalModel","ModelType"])' , -# # n est ce pas plutot un des modelNumrerique vaut Field ? ou faut-il les 2 -# FluidComplexe = SIMP(typ=bool, statut='o', defaut = False), -# -# FlowNature = SIMP(typ='TXM', statut='o', into =['Laminar', 'Turbulent'], position='global'), -## ----------- FlowNature Turbulent -# bloc_FlowNature_Turbulent = BLOC(condition = ' FlowNature == "Turbulent"', -# TurbulenceForFlowDynamics = FactTurbulence('o'), -### PNPN a faire -## # controle de coherence entre les modeles de turbulences et les modeles numeriques choisis ), -## # Consigne = SIMP(statut ="o", homo="information", typ="TXM",defaut ='Incoherence') -## # il faut verifier la coherence entre le model de turbulence et le model type ), -## -# ), #------ fin bloc_FlowNature_Turbulent -# -# -## ---------------------- Effets thermiques -# -# Thermal = FACT (statut ='o', -# ThermalEffects = SIMP(typ='TXM', statut='o', into =['Non thermal', -# 'No effect on flow dynamics', 'Effect on flow dynamics'], defaut='Non thermal'), -# -# bloc_NonThermalEffects = BLOC(condition = ' ThermalEffects == "Non thermal" or ThermalEffects == "No effect on flow dynamics"', -# DensityEquationOfState = SIMP(typ='TXM', statut='o', into =['Constant density'], defaut = 'Constant density'), -# ), # fin bloc_NonThermalEffects -# -# bloc_ThermalEffects_Active = BLOC(condition = ' ThermalEffects == "Effect on flow dynamics"', -# DensityEquationOfState = SIMP(typ='TXM', statut='o', into =['Variable density', 'Compressible']), -## PNJPM est ce suffisant ? -# ), # fin bloc_ThermalEffects_Active -# bloc_ThermalEffects = BLOC(condition = ' ThermalEffects == "Effect on flow dynamics" or ThermalEffects == "No effect on flow dynamics"', -# bloc_scalar_thermal_flux = BLOC (condition = "FlowNature == 'Turbulent'", -# ThermalFluxModel = FactTurbulence('f'), -# ),# fin bloc_scalar_thermal_flux -# WithChemicalReactions = SIMP(typ=bool, statut ='o', defaut = False), -# ), # fin bloc_ThermalEffects -# ),# fin Fact Thermal -# -## ---------------------- Scalaire additional -# bloc_scalar_FluidTurbulentandNonComplexe = BLOC(condition = "FluidComplexe == False and FlowNature == 'Turbulent'", -# AdditionalScalars = FACT(statut = 'o', -# Scalar = FACT(statut = 'f', max ='**', -# Name = SIMP(typ='TXM', statut='o',), -# ScalarFluxModel = FactTurbulence('f'), -# ),# Scalar -# ),# AdditionalScalars -# ), # fin FluidTurbulentandNonComplexe -# bloc_scalar_FluidLaminaireandNonComplexe = BLOC (condition = "FluidComplexe == False and FlowNature == 'Laminar'", -# AdditionalScalars = FACT (statut = 'o', -# Scalar = FACT ( statut = 'f', max ='**', -# Name = SIMP(typ='TXM', statut='o',), -# ),# Scalar -# ),# AdditionalScalars -# ), # fin FluidLaminaireandNonComplexe -# bloc_FlowNature_Turbulent_For_Scalars = BLOC(condition = ' FlowNature == "Turbulent"', -# ScalarTurbulenceModelling = FactTurbulence('f'), -# ), -# # il faut une validation de coherence entre l existence de tous les turbulencesModelling -# ),# fin bloc_FluideMacro -#) - -Interactions = PROC(nom='Interactions', - InteractionComposant = FACT( max = '**', - origine = SIMP(typ=modeleNumDuCompo, statut='o'), - destination = SIMP(typ=modeleNumDuCompo, statut='o'), -# PN a derouler avec une fonction - monBloc_FFDP = BLOC ( - condition = 'getEficasAttribut(origine,"ModelType") == "Fields" and getEficasAttribut(destination,"ModelType") == "Particles"' , - termeLE = SIMP(typ='TXM', statut='o', into = dictTermeLE['Fields','Particles'],fenetreIhm='menuDeroulant'), - ), - monBloc_DPFF = BLOC ( - condition = 'getEficasAttribut(origine,"ModelType") == "Particles" and getEficasAttribut(destination,"ModelType") == "Fields"' , - termeLE = SIMP(typ='TXM', statut='o', into = dictTermeLE['Particles','Fields'],fenetreIhm='menuDeroulant'), - ), - monBloc_Saturne_Fluent = BLOC ( - condition = 'getEficasAttribut(origine,"Solver") == "Code_Saturne" and getEficasAttribut(destination,"Solver") == "Fluent"' , - Format = SIMP(typ='TXM', statut='o', into = calculCommun( "Code_Saturne", "Fluent",dictCodeFormat) ), - ), - monBloc_Saturne_OpenFoam = BLOC ( - condition = 'getEficasAttribut(origine,"Solver") == "Code_Saturne" and getEficasAttribut(destination,"Solver") == "OpenFOAM"' , - Format = SIMP(typ='TXM', statut='o', into = calculCommun( "Code_Saturne", "OpenFOAM",dictCodeFormat) ), - monBloc_conversion = BLOC (condition = 'Format == "Use converter"', - converter = SIMP(typ='TXM', statut='o', into = dictCodeConvertisseur['Saturne', 'OpenFOAM']), - ), - ), - ), -) - -dict_condition={'NumericalMethod' : ('Interactions', 'Component'), -# 'TypeOfSolid' : ('Component',) -} - -Simulated_Time_Lapse = PROC( nom ="Simulated_Time_Lapse", - Initial_Time = SIMP( statut='o', typ='R'), - Duration = SIMP( statut='o', typ='R'), -) -# -Geometric_Domain= OPER( nom='Geometric_Domain', sd_prod=geometricDomain, - Shape = SIMP( statut='o', typ='TXM', into=['Simplified Shape', 'CAD or Mesh']), - b_Shape = BLOC( condition = 'Shape == "Simplified Shape"', - Box = SIMP( statut='o', typ='TXM', into=['Cube', 'Sphere','Cylinder'] ), - b_Cube = BLOC( condition = 'Box == "Cube"', - #Taille_Box_Englobante = SIMP( statut='o', typ='R', max=3, min =3) - # derait etre un Tuple(3) mais a faire apres la projection - Size_Of_Bounding_Box = SIMP( statut='o', typ=Tuple(3), validators=VerifTypeTuple(('R','R','R'),),) - ), # fin b_Cube - b_Boule = BLOC( condition = 'Box == "Sphere"', - Center = SIMP( statut='o', typ='R', max=3, min =3), - # devrait etre un Tuple(3) mais a faire apres la projection - ),# fin b_Boule - b_Cylinder = BLOC( condition = 'Box == "Cylinder"', - Heigth = SIMP( statut="o", typ='R', val_min=0.0, ang='Nanotube length [m]'), - ),# fin b_Tube - b_Boule_ou_Cylinder = BLOC( condition = 'Box == "Sphere" or Box == "Cylinder"', - Radius = SIMP( statut='o', typ='R', val_min=0.0, ang='radius length [m]') , - ),# fin b_Boule_ouCylinder - ), # fin b_Shape -# - b_CAO = creeBlocPourLesFichiers( "Shape == 'CAD or Mesh'",'Domain_File', ['txt','med','I-deas', 'Gmsh', 'top',]), - - Surface=SIMP( statut='o', typ='TXM',max='**',), -) # fin Geometric_Domain - - - - diff --git a/Vimmp/OLD/cata_CSAndCPS_v10.py b/Vimmp/OLD/cata_CSAndCPS_v10.py deleted file mode 100644 index d202e182..00000000 --- a/Vimmp/OLD/cata_CSAndCPS_v10.py +++ /dev/null @@ -1,1085 +0,0 @@ -from Accas import * - -class composant(ASSD):pass -class mapper(ASSD):pass -class converter(mapper):pass -class modeleNumDuCompo(UserASSD):pass -class especeChimique(UserASSD):pass -class userParticle(UserASSD) :pass -class userAtom(userParticle) :pass -class userMolecule(userParticle) :pass -class userDiscrete(userParticle) :pass -class userDPD(userParticle) :pass - -class spatialRegion(UserASSD):pass -class cadShape(spatialRegion):pass -#class meshGroup(spatialRegion,UserASSDMultiple):pass -class meshGroup(spatialRegion):pass -class meshIdentifier(spatialRegion):pass -class systemGeometry(UserASSD):pass -class simulatedTime(UserASSD):pass -class constitutiveRelation(UserASSD):pass -class interaction(UserASSD):pass - -class stateVariable(UserASSD) : pass -class scalar(stateVariable):pass -class dynamicVariable(stateVariable):pass - - -# PN a faire --> ajouter un MC modeleNumerique (apres avoir renomme le modeleNumerique actuel en classe de modele numerique) -# et le dictionnaire d apres -dictTypModNumModNum = { - ('Continuum system','Particles') : ('SPH','Lagrangian one-fluid-particle pdf'), - ('Continuum system','Fields') : ('FV','FEM', 'Spectral method'), - ('Classical particle system','Particles') : ('MD', 'DPD', 'SDPD','SPH','CFD_Discrete_Particles'), - ('Classical particle system','Fields') : ('LBM',), - ('Quantum system','Particles') : ('Particle method',), - ('Quantum system','Fields') : ('Wave',), -} - -dictCodeModeleNumerique = { - 'Code_Saturne' : ('Lagrangian one-fluid-particle pdf', 'FV', 'CFD_Discrete_Particles',), - 'Fluent' : ('FV',), - 'Culgi Package': (), - 'DEM_SD' : ('Lagrangian one-fluid-particle pdf', 'FV', 'CFD_Discrete_Particles',), - 'DFTB+' : ('density functional tight binding method',), - 'DL_MESO_DPD' : ('Lagrangian one-fluid-particle pdf', 'FV', 'CFD_Discrete_Particles',), - 'DL_MESO_LBE' : ('Lagrangian one-fluid-particle pdf', 'FV', 'CFD_Discrete_Particles',), - 'DL_POLY_4' : ('Lagrangian one-fluid-particle pdf', 'FV', 'CFD_Discrete_Particles',), - 'GROMACS' : ('Lagrangian one-fluid-particle pdf', 'FV', 'CFD_Discrete_Particles',), - 'GROMACS_LS' : ('Lagrangian one-fluid-particle pdf', 'FV', 'CFD_Discrete_Particles',), - 'LAMMPS' : ('Lagrangian one-fluid-particle pdf', 'FV', 'CFD_Discrete_Particles',), - 'NWChem' : ('Lagrangian one-fluid-particle pdf', 'FV', 'CFD_Discrete_Particles',), - 'OpenFOAM' : ('Lagrangian one-fluid-particle pdf', 'FV', 'CFD_Discrete_Particles',), - 'Quantum EXPRESSO' : ('Particle method', 'Wave',), - 'RHEO_AGGRATE' : ('Particle method', 'Wave',), - 'RHEO_DROP' : ('Particle method', 'Wave',), - 'STAR_CCM+' : ('FV', 'Particles',), - 'Code Nill' : ('Spectral method', ), -} -# Le Code Nill est ajouté en dur au Solver - -dictCodeFormat = { - 'Code_Saturne' : ('Med', 'cgns', 'msh', 'des', 'unv', ), - 'Culgi Package': ('cof',), - 'DEM_SD' : ('geo', 'ascii'), - 'DFTB+' : ('geo', 'ascii'), - 'Fluent' : ('FluentFormat', ), - 'OpenFOAM' : ('OpenFoamFormat', 'Med', ), -} - -dictMapperFormat = { - 'Med Coupling' : ('Med',), - 'Gmsh' : ('Med', 'OpenFoamFormat'), -} - -dictTermeLE = { - ('Fields','Particles') : ('Fluid_Velocity_Field', - 'Fluid_Temperature_Field', - 'Fluid_Species_Mass_Fraction_Fluid',), - ('Particles','Fields') : ('Fluid_Particle_Momentum_Exchange_Field', - 'Fluid_Particle_Thermal_Exchange_Field', - 'Lagrangian one-particle pdfFluid_Particle_Mass_Source_Field', - 'Particle_Volumetric_Concentration_Modified_Fluid_Viscosity', - 'Particle_Extra_Stress_Tensor'), - ('Particles','Particles') : ('Pas encore fait'), - ('Fields','Fields') : ('Pas encore fait'), -} - -dictCodeConvertisseur = { - ('Saturne', 'OpenFOAM') : ('gmsh', 'Saturne2CDM and CDM2OpenFoam'), - ('Saturne', 'Fluent') : ('Saturne2CDM and CDM2Fluent'), - ('Fluent', 'OpenFOAM') : ('Fluent2CDM and CDM2OpenFoam'), -} - -listeFormatGenerique =['Med', 'Cgns', 'Gmsh', ] - -#---------------------------------------- -def prepareBlocSystemType(systemType) : -#---------------------------------------- - condition = "SystemType == '" + systemType + "'" - Identifier = SIMP(statut='o', typ=(modeleNumDuCompo,'createObject'),) - SimulatedTimeLapse = SIMP(statut ='o', typ = simulatedTime) - ModelType = SIMP(statut='o', typ='TXM', into = ('Particles', 'Fields'), position='inGetAttribut') - dicoArgs={} - - for typeMod in ('Particles', 'Fields'): - conditionType = "ModelType == '" + typeMod + "'" - NumericalMethod = SIMP(statut='o',typ='TXM', into=dictTypModNumModNum[systemType, typeMod], - position='global', intoXML=allValueInDict(dictTypModNumModNum)) - dicoBloc = {} - for modeleNumerique in list(dictTypModNumModNum[systemType,typeMod]): - conditionNum = "NumericalMethod == '" + modeleNumerique + "'" - setCode = set() - for code in dictCodeModeleNumerique.keys(): - if modeleNumerique in dictCodeModeleNumerique[code]: setCode.add(code) - Solver = SIMP(statut='o', typ='TXM', into=list(setCode), intoXML=list(dictCodeModeleNumerique.keys()) ) - monNomBloc = 'bloc_ModelName_' + modeleNumerique.replace(' ','_') - if setCode ==set(): setCode.add('Code Nill') - if setCode !=set(): dicoBloc[monNomBloc]=BLOC(condition=conditionNum, nomXML='b_ModelName',Solver=Solver) - dicoArgs['blocModelType'+typeMod] = BLOC(condition=conditionType, NumericalMethod=NumericalMethod, **dicoBloc) - - blocMeshRef = BLOC(condition = '(ModelType == "Fields") and (NumericalMethod == "FV")', - MeshIdentifiers = SIMP(statut ='o', max ='**', typ = meshIdentifier),) - dicoArgs['blocMeshRef'] = blocMeshRef - NumericalModel = FACT(statut='o', max= '**', Identifier=Identifier, ModelType=ModelType, - SimulatedTimeLapse=SimulatedTimeLapse, **dicoArgs) - return BLOC(condition=condition, nomXML='b_systemType', NumericalModel=NumericalModel) - -#----------------------------------- -def calculCommun(key1, key2, dico): -#----------------------------------- -# retourne la liste des valeurs communes a dico[key1] et dico[key2] - monSet=set() - if not key1 in dico: return () - if not key2 in dico: return () - for val in dico[key1]: - if val in dico[key2]: - monSet.add(val) - if monSet == set() : monSet.add ('No common format') - return list(monSet) - -#------------------------- -def allValueInDict(dico): -#------------------------- -# retourne la liste de toutes les valeurs possibles dans dico - monSet=set() - for clef in dico : - for val in dico[clef] : monSet.add(val) - return monSet - -#-------------------------------------------------------------------------------------------------- -def creeBlocPourLesFichiers(laCondition, Prefixe='Empty', ListeFormats=[], FieldName=None): -#--------------------------------------------------------------------------------------------------- -# il faut reflechir pour parametrer NomDuFichier -# et le type (existing... du fichier) -# et utiliser le creeBlocPourLesFichiers - SIMPFormatFichier = SIMP(statut='o', typ = 'TXM', into = tuple(ListeFormats) + ('All',), defaut='All' ) - dicoDesBlocs = {} - NomDuFichier = Prefixe+'FileName' - formatName = Prefixe+'FileFormat' - dicoDesBlocs[formatName] = SIMPFormatFichier - ListeFormatsboucle = tuple(ListeFormats) + ('All',) - for formatFich in ListeFormatsboucle : - dicoArgs={} - nomBloc = 'blocFormatFichier' + str(formatFich) - typeDesFichiers = ('Fichier', formatFich + " Files (*." + formatFich + ");;All Files (*)",) - blocCondition = formatName + " == '" + formatFich + "'" - dicoArgs[NomDuFichier] = SIMP(statut='o', typ = typeDesFichiers ) - dicoDesBlocs[nomBloc] = BLOC(condition = blocCondition, **dicoArgs) - if FieldName: - SIMPFieldName = SIMP(statut='o', typ = 'TXM',) - dicoDesBlocs[FieldName] = SIMPFieldName - return BLOC(condition=laCondition, **dicoDesBlocs) - -#--------------------------------------------- -def prepareChamp(nomDelaContante, labels ,nbReels ) : -#--------------------------------------------- -# PN : a reecrire -# ajouter les extensions pour le fichier et les blocs associes -# certains champs ne seront jamais uniformes -# probablement a refaire -#PNPN : Passer le nom du champ pour le label du vecteur -# A revoir - - dicoBloc = {} - dicoBloc[nomDelaContante] = SIMP(statut='o', typ='R') - return FACT(statut='o', - InputMode = SIMP(statut='o', typ='TXM', into=('uniform value','values directly assigned','values read in file','analytical function',)), - blocUniforme = BLOC(condition = "InputMode == 'uniform value'", **dicoBloc), - blocVsaisies = BLOC(condition = "InputMode == 'values directly assigned'", - Field = SIMP(typ='R', statut='o', max ='**'), - #Vecteur = SIMP(fenetreIhm='Tableau', homo = labels, - # statut='o', min=2, max='**', - # typ=Tuple(nbReels), - # validators=VerifTypeTuple(("'R',"*nbReels),),) # end particle - ), #b_vsaisie - blocVdsfich = BLOC(condition = "InputMode == 'values read in file'", - Format = SIMP(statut='o', typ='TXM', into=['txt','Med',], position='global' ), - td_txt = BLOC(condition = 'Format == "txt"', - File = SIMP(statut='o', typ=('Fichier','Text Files(*.txt);All Files (*)'),), - ), # fin vtd_txt - td_med_1 = BLOC(condition = 'Format == "Med"', - File = SIMP(statut='o', typ=('Fichier','Med Files(*.med);All Files (*)'),), - ), - td_med_2 = BLOC(condition = 'Format == "Med"', - FieldName = SIMP(statut='o', typ='TXM',), - ), - ), - blocFunct = BLOC(condition = "InputMode == 'analytical function'", - Function = SIMP(statut='o', typ='TXM',), - ), - #b_vserc = BLOC(condition = "InputMode == 'call to a service'", - # Service = SIMP(statut='o', typ='TXM',), - #), - ) - - -#------------------------------ -def prepareTermeSource(condition): -#------------------------------ - return BLOC (condition=condition, - OriginOfSourceTerm = SIMP(statut='o', typ='TXM',into=['Interaction', 'Chemical Reaction', 'Other Scalar']), - blocOriginOfSourceTermInteraction = BLOC(condition = 'OriginOfSourceTerm == "Interaction"', - SourceTermInteraction = SIMP(typ=interaction,statut='o'), - Consigne = SIMP(statut="o", homo="information", typ="TXM", defaut='Create and choose suitable interaction'), - ), - blocOriginOfSourceTermOtherScalar = BLOC(condition = 'OriginOfSourceTerm == "Other Scalar"', - ApplyOnScalar = SIMP (statut ='o', typ=scalar, ), #PNPN A FAIRE : fenetreIhm='menuDeroulant' - ), - ) - -#------------------------------ -def prepareTermeSourceDynVar(condition): -#------------------------------ - return BLOC (condition=condition, - OriginOfSourceTerm = SIMP(statut='o', typ='TXM',into=['Interaction', 'Other Scalar']), - ) - -#------------------------------------------------------ -def prepareFactTurbulence(statut, ajout=None , position=None, positionTVMChoice=None): -#------------------------------------------------------ - listInto = ['Fully resolved (DNS)', 'Spatial filtering (LES)', 'One-point moment', 'One-point PDF'] - if ajout != None : listInto.append(ajout) - return FACT(statut=statut, - TurbulenceModellingType = SIMP(typ='TXM', statut='o', into =listInto, position=position ), - -# --------------- One-point moment ------------------ - blocOnePoint = BLOC(condition= "TurbulenceModellingType == 'One-point moment'", - RANSModel = SIMP(statut="o", typ="TXM", - into=['Turbulent-Viscosity Model (TVM)', 'Reynolds Stress Model (RSM)']), - blocTVM = BLOC(condition= "RANSModel == 'Turbulent-Viscosity Model (TVM)'", - TVMChoice = SIMP(typ='TXM', statut='o', into=['K-Epsilon', 'K-Omega'] , position=positionTVMChoice), ##PN PN : parametre vs reCalculeEtape - ), # fin blocTVM - blocRSM = BLOC(condition = "RANSModel == 'Reynolds Stress Model (RSM)'", - RSMChoice = SIMP(typ='TXM', statut='o', into=['Rotta', 'LRR-IP','LRR-QI','SSG']), - ), # fin blocRSM - ), # fin bloc_one_point - -# --------------- Spatial filtering (LES) ------------------ - blocOneSpatial = BLOC(condition = "TurbulenceModellingType == 'Spatial filtering (LES)'", - ChoiceOfApproach = SIMP(typ='TXM', statut='o', into=['Field-based (LES)', 'Filtered Density Function (FDF)']), - SubgridScaleModel = SIMP(typ='TXM', statut='o', into=['No SGS', 'Smagorinsky','Dynamical model', 'SGS Transport Equations']), - ), # fin bloc_one_spatial - -# --------------- One-point PDF ------------------ - blocOnePointPdf = BLOC(condition = "TurbulenceModellingType == 'One-point PDF'", - ChoiceOfApproach = SIMP(typ='TXM', statut='o', into=['One-point Eulerian PDF', 'One-particle Lagrangian PDF']), - blocLagrangianPdf = BLOC(condition = "ChoiceOfApproach == 'One-particle Lagrangian PDF'", - StochasticModel = SIMP(typ='TXM', statut='o', into=['Langevin','Other'], defaut='Langevin'), - )# fin lagrangian - ), # fin bloc_one_point_pdf - -# --------------- Fully resolved (DNS) ------------------ - blocNoModel = BLOC(condition = "TurbulenceModellingType == 'Fully resolved (DNS)'", - ChoiceOfApproach = SIMP(statut='o', typ='TXM', into=['Field-based (DNS)', 'N-Particle Method']), - blocField = BLOC(condition = "ChoiceOfApproach == 'Field-based (DNS)'", - NumericalMethod = SIMP(statut='o', typ='TXM', into=['FV', 'Spectral Method'], - intoXML=['FV', 'Spectral Method','SPH', 'Vortex Method']), - ),# fin bloc_Field - blocNParticle = BLOC(condition = "ChoiceOfApproach == 'N-Particle Method'", - NumericalMethod = SIMP(statut='o', typ='TXM', into=['SPH', 'Vortex Method'], - intoXML=['FV', 'Spectral Method','SPH', 'Vortex Method']), - ),# fin bloc_N_particle - ), # fin bloc_no_model - ) # fin du return de la fonction factTurbulence - -#-------------------------- -def Particle(cardinalite) : -#-------------------------- - return FACT(statut='o', max=cardinalite, - ParticleNature = SIMP(statut='o', typ='TXM', into=['Atoms', 'Molecules', 'Dissipative', 'Fluid Particle', 'Discrete Particle']), - blocAtom = BLOC(condition='ParticleNature == "Atoms"', - AtomsName = SIMP(statut='o', typ=(userAtom,'createObject'),), - Atom = FACT(statut ='o', max= '**', - ChemicalSpecie = SIMP(statut='o', typ='TXM'), - Number = SIMP(statut='o', typ = 'I'), - ElectricCharge = SIMP(statut='o', typ='R'), - MagneticMoment = SIMP(statut='o', typ='R'), - Size = SIMP(statut='f', typ='R'), # relevant ? - ),# Atom - ), # fin b_Atom -# --------------- Molecules ------------------ - blocMolecule = BLOC(condition='ParticleNature == "Molecules"', - MoleculeName = SIMP(statut='o', typ=(userMolecule,'createObject'),), - ChemicalSpecie = FACT(max='**', statut='o', - ChemicalSpecieName = SIMP(statut='o', typ=userAtom), - Proportion = SIMP(statut='o', typ='R', val_max =1), - ), - ElectricCharge = SIMP(statut='o', typ='R'), - MagneticMoment = SIMP(statut='o', typ='R'), - Shape = SIMP(statut='f', typ='TXM', into=['Linear', 'Trigonal Planar', 'Angular', 'Tetrahedral', 'Octahedral', 'Trigonal pyramid', 'Other']), - ), #fin b_Molecule - -# --------------- Dissipative ------------------ - blocDissipative = BLOC(condition='ParticleNature == "Dissipative"', - DPDName = SIMP(statut='o', typ=(userDPD,'createObject'),), - BondedParticles = SIMP(statut="o", typ=bool, defaut=False), - ), # b_Dissipative - -# --------------- Discrete Particle ------------------ - blocDiscrete = BLOC(condition='ParticleNature == "Discrete Particle"', - DiscreteParticleName = SIMP(statut='o', typ=(userDiscrete,'createObject'),), - TypeOfDiscreteParticle = SIMP(statut='o', typ='TXM', into=['Solid', 'Droplets', 'Bubbles','Bio Organism'],), - blocTypeDPSolid = BLOC(condition ='TypeOfDiscreteParticle == "Solid"', - TypeOfSolid = SIMP(statut='o', typ='TXM', into=['Primary Particle', 'Assemblage / Aggregate'], position = 'global'), - b_SolidPrimary = BLOC(condition='TypeOfSolid == "Primary Particle"', - ), - b_SolidAggregate = BLOC(condition='TypeOfSolid == "Assemblage / Aggregate"', - ), - ), -# --------------- Bio Organism ------------------ - blocTypeBioSolid = BLOC(condition='TypeOfDiscreteParticle == "Bio Organism"', - TypeOfOrganism = SIMP(statut='o', typ='TXM', into=['Unicellular', 'Multicellular']), - blocUnicellular = BLOC(condition ='TypeOfOrganism=="Unicellular"', - Unicellular = SIMP(statut='o', typ='TXM', into=["Bactaria"], defaut='Bactaria') - ), - b_Multicellular = BLOC(condition ='TypeOfOrganism=="Multicellular"', - Multicellular = SIMP(statut='o', typ='TXM', into=["Animal","Fongus","Plant"]) - ), - ), # b_TypeBio_Solid - -# --------------- Particule Properties ------------------ - Properties = FACT(statut ='o', - Geometry = SIMP(statut='o', typ='TXM', into=['Sphere', 'Ellopsoids', 'Other Shape']), - b_geom_Sphere = BLOC(condition = 'Geometry == "Sphere"', - ParticleRadius = SIMP(statut='o', typ ='R', val_min = 0), - ), - Weight = FACT(statut = 'o', - Mass = SIMP(statut='o', typ ='R', val_min = 0), - Density = SIMP(statut='o', typ ='R', val_min = 0), - ), - Mechanical = SIMP(statut='o', typ='TXM', into=['Rigid', 'Flexible', 'Deformable']), - b_SolidAggregate = BLOC(condition='TypeOfSolid == "Assemblage / Aggregate"', - Morphological = FACT(statut = 'o', - Consigne = SIMP(statut="o", homo="information", typ="TXM", defaut='Choose optional properties'), - FractalDimension = SIMP(statut='f', typ='R'), - NumberOfPrimaryParticle = SIMP(statut ='f',typ='I'), - EquivalentSize = SIMP(statut='f', typ='R'), - Porosity = SIMP(statut='f', typ='R'), - ), # Morphological - ), # b_SolidAggregate - ElectroMagnetic = FACT(statut = 'f', - ElectricCharge = SIMP(statut='o', typ='R'), - MagneticMoment = SIMP(statut='o', typ='R'), - ), - b_SolidAggregateBonded = BLOC(condition='TypeOfSolid == "Assemblage / Aggregate"', - BondedParticles = FACT( - ListOfBondedParticles = SIMP(statut='o', max='**', typ = userParticle), - ), - ), - ), # Properties - ), # b_Discrete - -############################ - - ListOfBondedParticles = FACT(statut='f', - # --------------------------------------# - BondedParticles = FACT(statut='o', max = "**", - NameOfBonded_Particles = SIMP(statut='o', typ='TXM'), - SpeciesinParticle = SIMP(statut='o', min=2, typ='TXM' , max = "**"), - ), # BondedParticles - ), # ListOfBondedParticles - - ListOfInteractions = FACT(statut='o', max = "**", - # ------------------------------------------------# - - BondedInteractions = FACT(statut='o', max = "**", - TypeOfBondedInteraction = SIMP(statut='o', typ='TXM', into=['NoOne', 'Covalent Bond Length', 'FENE', 'Covalent Bond Angle', 'Dihedral Angles', 'Improper Dihedral', 'Frozen Motion' ], defaut='NoOne'), - - #La saisie de l'ensemble des liaisons d'un meme type peut se faire ds le meme bloc (soit ds un fichier, soit manuelle) - #Une seule valeur de distante? est a saisir pour l'ensemble - # bloc_covalent_1 = BLOC(condition = 'TypeOfBondedInteraction in ("Covalent Bond Length","FENE")', - # ), # fin bloc_covalent_1 - -# --------------- Covalent Bond Length ------------------ - blocCovalentLength = BLOC(condition = 'TypeOfBondedInteraction == "Covalent Bond Length"', - InteractionLengthParameters = FACT(statut='o', max="**", - ApplyToBondedParticles = SIMP(statut='o', max='**', typ='TXM'), - SpringStifness = SIMP(statut='o', typ='R', val_min=0), - MeanBondLength = SIMP(statut='o', typ='R', val_min=0), - ), # fin Interation_Length_Parameters - ), # fin BondLengthParameters - -# --------------- Covalent Bond Angle ------------------ - blocCovalentAngle = BLOC(condition = 'TypeOfBondedInteraction == "Covalent Bond Angle"', - InteractionAnglesParameters = FACT(statut='o', max="**", - ApplyToBondedParticles = SIMP(statut='o', max='**', typ='TXM'), - SpringStifness = SIMP(statut='o', typ='R', val_min=0), - MeanBondAngle = SIMP(statut='o', typ='R', val_min=0), - ), # fin Interation_Angles_Parameters - ), # fin bloccovalentlengthand_angle - - #bloc_covalent_length_and_angle = BLOC(condition = 'TypeOfBondedInteraction == "Covalent Bond Length" or TypeOfBondedInteraction == "Covalent Bond Angle"', - # Bond_Parameters = FACT(statut='o', max="**", - # Apply_To_Bonded_Particles = SIMP(statut='o', max='**', typ='TXM'), - # Spring_Stifness = SIMP(statut='o', typ='R', val_min=0), - # bloc_covalent_length = BLOC(condition = 'TypeOfBondedInteraction == "Covalent Bond Length"', - # Mean_Bond_Length = SIMP(statut='o', typ='R', val_min=0), - # ), # fin Bond_Length_Parameters - # bloc_covalent_angle = BLOC(condition = 'TypeOfBondedInteraction == "Covalent Bond Angle"', - # Mean_Bond_Angle = SIMP(statut='o', typ='R', val_min=0), - # ), # fin Bond_Length_Parameters - # ), # fin Bond_Length_Parameters - #), # fin bloc_covalent_length_and_angle - -# --------------- Covalent Bond Angle ------------------ - blocFENE = BLOC(condition = 'TypeOfBondedInteraction == "FENE"', - AppliesToAllParticles = SIMP(statut='o', typ=bool, defaut=True), - blocNotOnAll = BLOC(condition = 'AppliesToAllParticles == False', - FENEParameters = FACT(statut='o', max="**", - SpeciesPair = SIMP(statut='o', max=2, typ='TXM'), - SpringConstant_H = SIMP(statut='o', typ='R', val_min=0), - LMax = SIMP(statut='o', typ='R', val_min=0), - ), # fin FENE_Parameters - ), # fin bloc_not_on_all - blocOnAll = BLOC(condition = 'AppliesToAllParticles == True', - Spring_Constant_H = SIMP(statut='o', typ='R', val_min=0), - LMax = SIMP(statut='o', typ='R', val_min=0), - ), # fin bloc_on_all - ), # fin blocFENE - - blocLeReste = BLOC(condition = 'TypeOfBondedInteraction in ("Dihedral Angles", "Improper Dihedral", "Frozen Motion")', - ParticleName = SIMP(statut="f", typ='TXM'), - #Consigne = SIMP(statut="o", homo="information", typ="TXM", defaut='Not Implemented Yet'), - ), - - ), # fin Bonded_Interaction - - # ------------------------------- # - - UnbondedInteractions = FACT(statut='o', max= "**", - - TypeOfUnbondedInteraction = SIMP(statut='o', typ='TXM', into=['No', 'electro_magnetic', 'Repulsion_and_VdW', 'Soft_Potentiel', ], defaut='No', position='global',fenetreIhm='menuDeroulant'), - - blocElec = BLOC(condition = 'TypeOfUnbondedInteraction == "electro_magnetic"', - Permittivity = SIMP(statut='o', typ='R', position='global_jdc'), - Magnetic = SIMP(statut='o', typ=bool, defaut=False,), - blocMagnetic = BLOC(condition = 'Magnetic == True', - Permability = SIMP(statut='o', typ='R'), - ), # bloc_magnetic - ),# fin bloc_elec - - blocVdW = BLOC(condition = 'TypeOfUnbondedInteraction == "Repulsion_and_VdW"', - SpeciesPairParameters = FACT(statut='o', max="**", - TypeRepulsionAndVdW = SIMP(statut='o', typ='TXM', into = [ 'Lennard_Jones', 'Hard_sphere_model']), - SpeciesPair = SIMP(statut='o', max=2, typ='TXM'), - VdWRadius = SIMP(statut='o', typ='R', val_min=0), - blocLennard = BLOC(condition = "TypeRepulsionAndVdW == 'Lennard_Jones'", - DepthOfThePotentialWell = SIMP(statut='o', typ='R', val_min=0), - ), # fin b_Lennard - ), # fin Species_Pair_Parameters - ), # bloc_VdW - - blocParamSoftPotentiel = BLOC(condition = "TypeOfUnbondedInteraction == 'Soft_Potentiel'", - GrootWarrenRepulsion = SIMP(statut='o', typ='R', defaut=25.0, val_min=0), - GrootWarrenCutoff = SIMP(statut='o', typ='R', defaut=1.0, val_min=0), - DragCoefficient = SIMP(statut='o', typ='R'), # les 2 valent 0 pour MD - DragForceCutoff = SIMP(statut='o', typ='R', val_min=0), - ), # b_Param_Soft_Potentiel - - ), # fin UnBonded_Interactions - - # ------------------------------- # - - ExternalFieldInteraction = FACT(statut='o', max= "**", - TypeOfInteractionWithAnExternalField = SIMP(statut='o', typ='TXM', into=['NoOne','gravitational field','electric field','magnetic field', 'Hydrodynamic_Field'], fenetreIhm='menuDeroulant', defaut ='NoOne'), - blocGravite = BLOC(condition = 'TypeOfInteractionWithAnExternalField=="gravitational field"', - G = SIMP(statut='o', typ='R', defaut=9.81), - ), - blocElect = BLOC(condition = 'TypeOfInteractionWithAnExternalField=="electric field"', - ElectricField = prepareChamp('E', ('E',), 1), - ), - blocMagnetic = BLOC(condition = 'TypeOfInteractionWithAnExternalField=="magnetic field"', - MagneticField = prepareChamp('B', ('B',), 1), - ), - blocHydrodynamic = BLOC(condition = 'TypeOfInteractionWithAnExternalField=="hydrodynamic field"', - HydrodynamicField = prepareChamp('U', ('U',), 1), - ), - blocExternalFieldInteraction = BLOC(condition = 'TypeOfInteractionWithAnExternalField != "No"', - FieldAppliesOnAllSpecies = SIMP(statut='o', typ=bool, defaut=True), - blocPorteEspece = BLOC(condition = 'FieldAppliesOnAllSpecies == False ', - SpeciesList = SIMP(statut='o', typ='TXM', max= '**', homo='SansOrdreNiDoublon'), # faire un typ = "espece" - ), - ), # fin b_External_Field_Interaction - ), # fin Interaction_External_Field - - ), # fin List_Of_Interactions - -############################ -) # fin Particle - -#-------------------- -def prepareBlocCPS(): -#-------------------- - return BLOC(condition = 'SystemType == "Classical particle system"', - Particle = Particle('**'), - ) - -#--------------------------- -def prepareBlocFluideMacro(): -#--------------------------- - return BLOC(condition = 'SystemType == "Continuum system"', - ComplexFluid = SIMP(typ=bool, statut='o', defaut = False, position='global'), - FlowNature = SIMP(typ='TXM', statut='o', into =['Laminar', 'Turbulent'], position='global'), - -# --------------------------- Density ------------- - DensityInitialisation = FACT(statut ='o', - DensityValueType = SIMP(typ='TXM', statut ='o', into = ['Value', 'Field'], defaut ='Value'), - blocDensityValue = BLOC(condition = 'DensityValueType == "Value"', - Density = SIMP(typ='R', statut ='o'), - ), - blocDensField= creeBlocPourLesFichiers('DensityValueType == "Field"', 'Density', ListeFormats=listeFormatGenerique, FieldName='DensityFieldName'), - ),# DensityInitialisation - -# --------------------------- Viscosity ------------- - ViscosityInitialisation = FACT(statut ='o', - ViscosityValueType = SIMP(typ='TXM', statut ='o', into = ['Value', 'Field'], defaut ='Value'), - blocViscosityValue = BLOC(condition = 'ViscosityValueType == "Value"', - Viscosity = SIMP(typ='R', statut ='o'), - ), - blocViscosityField = creeBlocPourLesFichiers('ViscosityValueType == "Field"', 'Viscosity', ListeFormats=listeFormatGenerique, FieldName='ViscosityFieldName'), - ), #fin ViscosityityInitialisation - -# --------------------------- Turbulent ------------- - blocFlowNatureTurbulent = BLOC(condition = ' FlowNature == "Turbulent"', - TurbulenceForFlowDynamics = prepareFactTurbulence('o',position='global',positionTVMChoice='reCalculeEtape'), - ), #fin bloc_FlowNature_Turbulent - - DynamicalVariables = FACT(statut ='o', - OriginOfDynamicalVariables = SIMP(statut='o', into =['Given', 'Interaction', 'to be simulated'], typ ='TXM', position='global'), - BlocGivenOrInteraction = BLOC(condition = 'OriginOfDynamicalVariables in ["Given", "Interaction",]', - Steady = SIMP(typ=bool, statut ='o', defaut = True, position = 'global'), - BlocNotSteady = BLOC(condition = 'Steady == False', - Consigne = SIMP(statut="o", homo="information", typ="TXM", defaut='Not implemented yet. Will ask for a range of calculation steps.'), - ), #BlocNotSteady - BlocSteady = BLOC(condition = 'Steady == True', - BlocGiven = BLOC(condition = 'OriginOfDynamicalVariables == "Given"', - InSameFile = SIMP(typ=bool, statut ='o', defaut = True, position = 'reCalculeEtape'), - BlocSameFile = creeBlocPourLesFichiers('InSameFile == True', 'DynamicalVariables', ('Med', 'cgns' ), None), - ), #BlocGiven - ), #BlocSteady - ), #BlocGivenOrInteraction - Pressure = FACT(statut ='o', - FluidPressure = SIMP(typ=(dynamicVariable,'createObject'), statut='o', defaut ='Fluid_Pressure', homo='constant'), - BlocSteady = BLOC(condition = 'Steady == True', - BlocFluidInSame = creeBlocPourLesFichiers('InSameFile == False', 'Pressure', ('Med', 'cgns' ), None), - BlocGivenPressure = BLOC(condition = 'OriginOfDynamicalVariables == "Given"', - PressureFieldName = SIMP(typ='TXM',statut='o'), - ), - BlocInteractionPressure = BLOC(condition = 'OriginOfDynamicalVariables == "Interaction"', - InteractionName = SIMP(typ=interaction,statut='o'), - Consigne = SIMP(statut="o", homo="information", typ="TXM", defaut='Create and choose suitable interaction'), - ), - ), - BlocSimulatedPressure = BLOC(condition = 'OriginOfDynamicalVariables == "to be simulated"', - SourceTerm = SIMP(typ=bool, statut='o', defaut=False), - blocSourceTerm = prepareTermeSourceDynVar('SourceTerm==True'), - ), - ), - Velocity = FACT(statut ='o', - blocFlowNatureTurbulent = BLOC(condition = 'FlowNature == "Turbulent"', - #sousBlocFlowNatureTurbulent = BLOC(condition = 'TurbulenceModellingType != "Fully resolved (DNS)"', - AverageVelocity = SIMP(typ=(dynamicVariable,'createObject'), statut='o', defaut ='Average_Velocity', homo='constant'), - BlocSteadyGivenVelocity1 = BLOC(condition = 'OriginOfDynamicalVariables == "Given" and Steady == True ', - AverageVelocityValue = SIMP(typ='R', statut='o' ), - ), - #), - ), - #blocFlowNatureLaminar = BLOC(condition = ' FlowNature == "Laminar" or TurbulenceModellingType == "Fully resolved (DNS)"', - blocFlowNatureLaminar = BLOC(condition = 'FlowNature == "Laminar"', - FluidVelocity = SIMP(typ=(dynamicVariable,'createObject'), statut='o', defaut ='Fluid_Velocity', homo='constant'), - BlocSteady = BLOC(condition = 'Steady == True', - BlocVelocityInSame = creeBlocPourLesFichiers('InSameFile == False', 'Velocity', ('Med', 'cgns' ), None), - BlocSteadyGivenVelocity2 = BLOC(condition = 'OriginOfDynamicalVariables == "Given"', - VelocityFieldName = SIMP(typ='TXM',statut='o'), - ), - ), - ), - BlocSimulatedVelocity = BLOC(condition = 'OriginOfDynamicalVariables == "to be simulated"', - SourceTerm = SIMP(typ=bool, statut='o', defaut=False), - blocSourceTerm = prepareTermeSourceDynVar('SourceTerm==True'), - ), - BlocSteady = BLOC(condition = 'Steady == True', - BlocInteractionVelocity = BLOC(condition = 'OriginOfDynamicalVariables == "Interaction"', - InteractionName = SIMP(typ=interaction,statut='o'), - Consigne = SIMP(statut="o", homo="information", typ="TXM", defaut='Create and choose suitable interaction'), - ), - ), - ), - BFlowNatureTurbulent = BLOC(condition ='FlowNature == "Turbulent"', - # K-epislon ou k-omega - blocTurbulenceTWMChoice1 = BLOC(condition = 'TVMChoice == "K-Epsilon" or TVMChoice == "K-Omega"', - KDefinition = FACT(statut ='o', - Name = SIMP(typ=(scalar,'createObject'), statut='o', defaut ='K', homo='constant'), - BlocSteady = BLOC(condition = 'Steady == True', - BlocKInSame = creeBlocPourLesFichiers('InSameFile == False', 'K', ('Med', 'cgns' ), None), - BlocKGiven = BLOC(condition = 'OriginOfDynamicalVariables == "Given"', - KFieldName = SIMP(typ='TXM',statut='o', defaut='K'), - ), - BlocKInteraction = BLOC(condition = 'OriginOfDynamicalVariables == "Interaction"', - InteractionName = SIMP(typ=interaction,statut='o'), - Consigne = SIMP(statut="o", homo="information", typ="TXM", defaut='Create and choose suitable interaction'), - ), - ), - BlocSimulatedKDefinition = BLOC(condition = 'OriginOfDynamicalVariables == "to be simulated"', - SourceTerm = SIMP(typ=bool, statut='o', defaut=False), - blocSourceTerm = prepareTermeSourceDynVar('SourceTerm==True'), - ), - ), # KDefinition - ),# fin blocTurbulenceTWMChoice1 - - blocTurbulenceTWMChoice2 = BLOC(condition = 'TVMChoice == "K-Epsilon"', - EpsilonDefinition = FACT(statut ='o', - Name = SIMP(typ=(scalar,'createObject'), statut='o', defaut ='Epsilon', homo='constant'), - BlocSteady = BLOC(condition = 'Steady == True', - BlocEpsilonInSame = creeBlocPourLesFichiers('InSameFile == False', 'Epsilon', ('Med', 'cgns' ), None), - BlocEpsilonGiven = BLOC(condition = 'OriginOfDynamicalVariables == "Given"', - EpsilonFieldName = SIMP(typ='TXM',statut='o'), - ), - BlocEpsilonInteraction = BLOC(condition = 'OriginOfDynamicalVariables == "Interaction"', - InteractionName = SIMP(typ=interaction,statut='o'), - Consigne = SIMP(statut="o", homo="information", typ="TXM", defaut='Create and choose suitable interaction'), - ), - ), - BlocSimulatedEpsilonDefinition = BLOC(condition = 'OriginOfDynamicalVariables == "to be simulated"', - SourceTerm = SIMP(typ=bool, statut='o', defaut=False), - blocSourceTerm = prepareTermeSourceDynVar('SourceTerm==True'), - ), - ), #EpsilonDefinition - ), # bloc_Turbulence_TWMChoice2 - - blocTurbulenceTWMChoice3 = BLOC(condition = 'TVMChoice == "K-Omega"', - OmegaDefinition = FACT(statut ='o', - Name = SIMP(typ=(scalar,'createObject'), statut='o', defaut ='Omega', homo='constant'), - BlocSteady = BLOC(condition = 'Steady == True', - BlocOmegaInSame = creeBlocPourLesFichiers('InSameFile == False', 'Omega', ('Med', 'cgns' ), None), - BlocOmegaGiven = BLOC(condition = 'OriginOfDynamicalVariables == "Given"', - OmegaFieldName = SIMP(typ='TXM',statut='o'), - ), - BlocOmegaInteraction = BLOC(condition = 'OriginOfDynamicalVariables == "Interaction"', - InteractionName = SIMP(typ=interaction,statut='o'), - Consigne = SIMP(statut="o", homo="information", typ="TXM", defaut='Create and choose suitable interaction'), - ), - ), - BlocSimulatedOmegaDefinition = BLOC(condition = 'OriginOfDynamicalVariables == "to be simulated"', - SourceTerm = SIMP(typ=bool, statut='o', defaut=False), - blocSourceTerm = prepareTermeSourceDynVar('SourceTerm==True'), - ), - ), - ), # blocTurbulenceTWMChoice3 - ), #BFlowNatureTurbulent - ), # DynamicalVariables - -# ---------------------- Effets thermiques - Thermal = FACT(statut ='o', - ThermalEffects = SIMP(typ='TXM', statut='o', into =['Non thermal', 'Thermal'] , defaut='Thermal', position='global' ), - blocNonThermalEffects = BLOC(condition = 'ThermalEffects == "Non thermal"', - ReferenceTemperature = SIMP(typ='R', statut='o', val_min=-273.15 ), - ), # fin bloc_NonThermal - bloc_ThermalEffects_ = BLOC(condition = 'ThermalEffects == "Thermal"', - ConductivityValueType = SIMP(typ='TXM', statut ='o', into = ['Value', 'Field'], defaut ='Value'), - blocCondValue = BLOC (condition = 'ConductivityValueType == "Value"', - Conductivity = SIMP(typ='R', statut ='o'), - ), - blocCondField = creeBlocPourLesFichiers('ConductivityValueType == "Field"', 'Conductivity', ListeFormats=listeFormatGenerique, FieldName='conductivityFieldName'), - #ActiveOnFlowEffect = ActiveOnFlowEffect(), - ), - ),# fin Fact Thermal - -# ---------------------- Scalaires - - blocScalarFluidTurbulentOrLaminar = BLOC(condition = "(ComplexFluid == False and FlowNature == 'Turbulent') or (ComplexFluid == False and FlowNature == 'Laminar')", - Scalars = FACT(statut = 'o', - blocFlowNatureTurbulentForScalars = BLOC(condition = ' FlowNature == "Turbulent"', - AsTurbulenceForFlowDynamics = SIMP(statut='o', typ=bool, defaut=True), - BlocAsTFFD = BLOC(condition = "AsTurbulenceForFlowDynamics == False", - ScalarsTurbulenceModelling = prepareFactTurbulence('o',), - ), - ), - blocThermalEffectsOn = BLOC(condition = ' ThermalEffects == "Thermal"', - TemperatureScalar = FACT(statut ='o', - #Name = SIMP(typ=(scalar,'createObject'), statut='o', defaut ='Temperature', homo='constant', position='reCalculeEtape'), - Name = SIMP(typ=(scalar,'createObject'), statut='o', defaut ='Temperature', homo='constant'), - SourceTerm = SIMP(typ=bool, statut='o', defaut=False), - blocSourceTerm = prepareTermeSource('SourceTerm==True'), - TemperatureInitialisation = FACT(statut ='o', - OriginOfThermalFluxField = SIMP(statut='o', into =['Given', 'Interaction', 'to be simulated'], typ ='TXM'), - BlocGiven = creeBlocPourLesFichiers('OriginOfThermalFluxField == "Given"', 'Temperature', ('Med', 'cgns' ), FieldName='FieldName'), - ),# fin TemperatureInitialisation - ),# TemperatureScalar - ), # fin bloc_ThermalEffects_On - Scalar = FACT(statut = 'o', max ='**', - Name = SIMP(typ=(scalar,'createObject'), statut='o',), - DiffusivityValueType = SIMP(typ='TXM', statut ='o', into = ['Value', 'Field'], defaut ='Value'), - blocDiffValue = BLOC(condition = 'DiffusivityValueType == "Value"', - Diffusivity = SIMP(typ='R', statut ='o'), - ), - blocDiffField = creeBlocPourLesFichiers('DiffusivityValueType == "Field"', 'Diffusivity', ListeFormats=listeFormatGenerique, FieldName='DiffusivityFieldName'), - OriginOfScalar = SIMP(statut='o', into =['Given', 'Interaction', 'to be simulated'], typ ='TXM', defaut='to be simulated'), - blocSimulatedScalar = BLOC(condition = 'OriginOfScalar == "to be simulated"', - SourceTerm = SIMP(typ=bool, statut='o', defaut=False), - blocSourceTerm = prepareTermeSource('SourceTerm==True'), - Initialisation = FACT(statut ='o', - InitialisationOfScalar = SIMP(statut='o', into =['ValueInit', 'FileInit', 'InteractionInit'], typ ='TXM', defaut='ValueInit'), - BlocFileInit = creeBlocPourLesFichiers('InitialisationOfScalar == "FileInit"', 'ScalarInit', ListeFormats = listeFormatGenerique, FieldName='ScalarInitField'), - BlocInteractionInit = BLOC(condition = 'InitialisationOfScalar == "InteractionInit"', - InteractionName = SIMP(typ=interaction,statut='o'), - Consigne = SIMP(statut="o", homo="information", typ="TXM", defaut='Create and choose suitable interaction'), - ), - BlocValueInit = BLOC(condition = 'InitialisationOfScalar == "ValueInit"', - ValueInit = SIMP (statut ='o', typ='R'), - ), - ), - ), - blocInteractionScalar = BLOC(condition = 'OriginOfScalar == "Interaction"', - InteractionName = SIMP(typ=interaction,statut='o'), - Consigne = SIMP(statut="o", homo="information", typ="TXM", defaut='Create and choose suitable interaction'), - ), - blocGivenScalar = creeBlocPourLesFichiers('OriginOfScalar == "Given"', 'Scalar', ListeFormats = listeFormatGenerique, FieldName='ScalarField'), - EffectOnFlowDynamic = SIMP(typ='TXM', statut='o', into=[ 'Passive', 'Active'], defaut='Passive', ), - blocScalarActiveOnFlowDynamic = BLOC(condition = ' EffectOnFlowDynamic == "Active"', - ActiveOnFlowEffect = ActiveOnFlowEffect(), - ), - blocScalarFluidTurbulentAndNonComplexe = BLOC (condition = "FlowNature == 'Turbulent'", - ScalarFluxModel = prepareFactTurbulence('f'), - ), # bloc_scalar_FluidTurbulentandNonComplexe - ),# Scalar - ),# Scalars - ), # fin FluidTurbulentandNonComplexe - # il faut une validation de coherence entre l existence de tous les turbulencesModelling - )# fin bloc_FluideMacro - -#---------------------------------------- -def ActiveOnFlowEffect(inTemperature=True): -#---------------------------------------- - return FACT(statut = 'o', max='**', - RelationType = SIMP(statut = 'o', into =['Equation Of State', 'Force-Flux Relation'], typ ='TXM'), - bloc_EOS = BLOC(condition = 'RelationType == "Equation Of State"', - TypeOfEquationOfState = SIMP(statut='o', into =['variable density', 'compressible'], typ ='TXM'), - ), - bloc_NonEOSAndSimple=BLOC(condition = 'RelationType == "Force-Flux Relation" and ComplexFluid == False', - TypeOfForceFluxRelation = SIMP(statut='o', into =['Viscosity', 'Diffusivity', 'Thermal Conductivity'], intoXML=['Viscosity', 'Diffusivity', 'Thermal Conductivity','Shear-stress closure', 'Scalar flux'], typ ='TXM', ), - blocViscosity=BLOC(condition = 'TypeOfForceFluxRelation == "Viscosity" ', - ViscosityLaw=SIMP(typ='TXM', statut = 'o', into=['law1', 'law2']), - ), - blocDiffusivity=BLOC(condition = 'TypeOfForceFluxRelation == "Diffusivity"', - DiffusivityLaw=SIMP(typ='TXM', statut = 'o', into=['law1', 'law2']), - ), - blocConductivity=BLOC(condition = 'TypeOfForceFluxRelation == "Thermal Conductivity"', - ConductivityLaw=SIMP(typ='TXM', statut = 'o', into=['law1', 'law2']), - ), - ), -) - -#-----------------------------------------------------# -def prepareBoundaryCondition(): - return FACT(statut='o',max = '**', # max = nb de facette de bord - TypeOfBoundaryCondition = SIMP(statut='o', typ='TXM', into=['Inlet', 'Outlet', 'Symmetry','Periodicity', '_Wall', 'Free Surface'], ), - - blocDesigneMesh = BLOC(condition = "SystemType == 'Continuum system'", - ApplyOnMeshGroups = SIMP (statut ='o', typ=meshGroup, max='**', homo='SansOrdreNiDoublon'), - ), - blocDesigne_Shape = BLOC(condition = "SystemType == 'Classical particle system'", - ApplyOnCadGroups = SIMP (statut ='o', typ=spatialRegion, max='**'), - ), - - blocOnStateVariable = BLOC(condition = "TypeOfBoundaryCondition not in ['_Wall',]", - ApplyOnStateVariable = SIMP (statut ='o', typ=stateVariable, max='**', homo='SansOrdreNiDoublon'), #PNPN A FAIRE : fenetreIhm='menuDeroulant' - ), - blocPeriodique = BLOC(condition = "TypeOfBoundaryCondition == 'Periodic'", - Direction = SIMP(statut='o', typ='TXM', into=['X','Y','Z', 'XYZ']), - ), # b_periodique - blocInlet = BLOC(condition = "TypeOfBoundaryCondition == 'Inlet'", - FormulationOfBoundary= SIMP(statut='o', typ='TXM', into=['Dirichlet','Neumann','Cauchy']), - blocDirichlet = BLOC(condition = 'FormulationOfBoundary == "Dirichlet"', - regles=(AU_MOINS_UN('InletProfile','IntegratedValue','IntegratedVectorValue',), - EXCLUS ('InletProfile','IntegratedValue','IntegratedVectorValue',), ), - Consigne = SIMP(statut ="o", homo="information", typ="TXM", defaut = "Choose between InletProfile,IntegratedValue,IntegratedVectorValue "), - InletProfile = SIMP (statut ='f', typ='TXM'), - IntegratedValue = SIMP (statut='f', typ='R'), - IntegratedVectorValue = FACT(statut='f', - U = SIMP (statut ='o', typ='R'), - V = SIMP (statut ='o', typ='R'), - W = SIMP (statut ='o', typ='R'), - ), - #PN : faire une regle - ), - blocNeumann = BLOC(condition = 'FormulationOfBoundary == "Neumann"', - Flux = SIMP (statut ='o', typ='TXM'), - ), - blocCauchy = BLOC(condition = 'FormulationOfBoundary == "Cauchy"', - ImposedFlux = SIMP (statut ='o', typ='TXM'), - IntegratedValue = SIMP (statut='o', typ='R'), - ), - ), # b_inlet - blocWall = BLOC(condition = "TypeOfBoundaryCondition == '_Wall'", - VelocityAtBoundary = FACT(statut='o', - SlipVelocity = SIMP(statut='o', typ='R', defaut= 0.0), - WallMotion = FACT(statut='o', - U = SIMP (statut ='o', typ='R'), - V = SIMP (statut ='o', typ='R'), - W = SIMP (statut ='o', typ='R'), - ), - ), - LevelOfDescription = FACT(statut='o', - blocWall = BLOC(condition = "FlowNature == 'Turbulent'", ##JP+CH TODO : Choix des lois en fct du type du TurbulenceModelingType - WallFunction = SIMP(statut ='o', typ='TXM', - into=['No wall function','1-scale model (Log law)', - '2-scale model (Log law)','Scalable 2-scale model (Log law)', - ], defaut='No wall function', fenetreIhm='menuDeroulant'), - ), - ), - ), # b_Wall - - ) # Boundary_Conditions - - -# def prepareBoundaryCondition(): -# return FACT(statut='o',max = '**', # max = nb de facette de bord -# ApplyOnStateVariable = SIMP (statut ='o', typ=stateVariable, ), #PNPN A FAIRE : fenetreIhm='menuDeroulant' -# blocDesigneMesh = BLOC(condition = "SystemType == 'Continuum system'", -# ApplyOnMeshGroups = SIMP (statut ='o', typ=meshGroup, max='**', homo='SansOrdreNiDoublon'), -# ), -# blocDesigne_Shape = BLOC(condition = "SystemType == 'Classical particle system'", -# ApplyOnCadGroups = SIMP (statut ='o', typ=spatialRegion, max='**'), -# ), -# TypeOfBoundaryCondition = SIMP(statut='o', typ='TXM', into=['Inlet', 'Outlet', 'Symmetry','Periodicity', 'Wall', 'Free Surface'], ), -# blocPeriodique = BLOC(condition = "TypeOfBoundaryCondition == 'Periodic'", -# Direction = SIMP(statut='o', typ='TXM', into=['X','Y','Z', 'XYZ']), -# ), # b_periodique -# blocInlet = BLOC(condition = "TypeOfBoundaryCondition == 'Inlet'", -# FormulationOfBoundary= SIMP(statut='o', typ='TXM', into=['Dirichlet','Neumann','Cauchy']), -# blocDirichlet = BLOC(condition = 'FormulationOfBoundary == "Dirichlet"', -# regles=(AU_MOINS_UN('InletProfile','IntegratedValue','IntegratedVectorValue',), -# EXCLUS ('InletProfile','IntegratedValue','IntegratedVectorValue',), ), -# Consigne = SIMP(statut ="o", homo="information", typ="TXM", defaut = "Choose between InletProfile,IntegratedValue,IntegratedVectorValue "), -# InletProfile = SIMP (statut ='f', typ='TXM'), -# IntegratedValue = SIMP (statut='f', typ='R'), -# IntegratedVectorValue = FACT(statut='f', -# x = SIMP (statut ='o', typ='R'), -# y = SIMP (statut ='o', typ='R'), -# z = SIMP (statut ='o', typ='R'), -# ), -# #PN : faire une regle -# ), -# blocNeumann = BLOC(condition = 'FormulationOfBoundary == "Neumann"', -# Flux = SIMP (statut ='o', typ='TXM'), -# ), -# blocCauchy = BLOC(condition = 'FormulationOfBoundary == "Cauchy"', -# ImposedFlux = SIMP (statut ='o', typ='TXM'), -# IntegratedValue = SIMP (statut='o', typ='R'), -# ), -# ), # b_inlet -# ) # Boundary_Conditions - - - - -JdC = JDC_CATA ( - code = 'Vimmp', - # faire un validateur qui verifie que si on active reactions chimiques il faut que les masses molaires soient rentrees -) - -Component = OPER(nom='Component', sd_prod=composant, - SystemType = SIMP(typ='TXM', into=['Quantum system', 'Classical particle system', 'Continuum system'], statut='o',position='global'), - PhysicalDescription = FACT(statut = 'o', - blocFluideMacro = prepareBlocFluideMacro(), - blocCPS = prepareBlocCPS(), - ), - blocModeleNumeriqueQuantum = prepareBlocSystemType('Quantum system'), - blocModeleNumeriqueClassical = prepareBlocSystemType('Classical particle system'), - blocModeleNumeriqueContinuum = prepareBlocSystemType('Continuum system'), - BoundaryConditions = FACT(statut = 'o', - BoundaryCondition = prepareBoundaryCondition(), - ) -) - -Species = PROC(nom='Species', - Specie = FACT(statut='o', max ="**", - Name = SIMP(statut='o', typ=(especeChimique,'createObject') ), - MolarMass = SIMP(statut='f', typ='R',), - ) -) - -def monBlocInteractionTypeChamp (): - return BLOC (condition = '1 == 1' , # a distinguer selon les cas - fieldNameInOrigine = SIMP(typ='TXM', statut='o'), - fieldNameInDestination = SIMP(typ='TXM', statut='o'), - ) - -def TousSelonLeTypeDeFormatDisponible(condition, prefixName=''): - TransfertType = SIMP(typ='TXM', statut='o', into =['File', 'Memory', 'CorbaObject']) - maListe = list(dictCodeFormat.keys()) - dicoArgs={} - #index=0 - #for Solv1 in maListe[index:]: - # for Solv2 in maListe[index:]: - # #print (Solv1,Solv2, calculCommun(Solv1, Solv2,dictCodeFormat)) - # print ('PNPN attention changement de dictCodeFormat tant que getEficasAttribut n est pas correct') - # conditionSolv = 'TransfertType == "File" and getEficasAttribut(origine,"Solver")==Solv1 and getEficasAttribut(destination,"Solver")==Solv2' , - # conditionSolv = 'TransfertType == "File"' - # monBlocFichier=creeBlocPourLesFichiers (conditionSolv, 'FileName', calculCommun(Solv1, Solv2,dictCodeFormat)) - # dicoArgs['monBlocFichier'+str(index)]=monBlocFichier - # index=index+1 - mesFormats=set() - for solv1 in dictCodeFormat.keys() : - for f in dictCodeFormat[solv1] : mesFormats.add(f) - conditionSolv='TransfertType == "File"' - BlocFichier=creeBlocPourLesFichiers (conditionSolv, prefixName, mesFormats, None) - dicoArgs['BlocFichier']=BlocFichier - monBlocChamp = BLOC(condition = "TransfertType=='File'", FieldName=SIMP(typ='TXM', statut='o')) - dicoArgs['monBlocChamp']=monBlocChamp - return BLOC(condition = condition,TransfertType=TransfertType, **dicoArgs) - -def SelonLeTypeDeFormatDisponibleMapper(condition): - TransferType = SIMP(typ='TXM', statut='o', into =['File', 'Memory', 'CorbaObject']) - maListe = list(dictCodeFormat.keys()) - dicoArgs={} - index=0 - for Solv1 in maListe[index:]: - for Solv2 in maListe[index:]: - #print (Solv1,Solv2, calculCommun(Solv1, Solv2,dictCodeFormat)) - print ('PNPN attention changement de dictCodeFormat tant que getEficasAttribut n est pas correct') - conditionSolv = 'TransferType == "File" and getEficasAttribut(origine,"Solver")==Solv1 and getEficasAttribut(destination,"Solver")==Solv2' , - conditionSolv = 'TransferType == "File"' - monBlocFichier=creeBlocPourLesFichiers (conditionSolv, '', calculCommun(Solv1, Solv2,dictCodeFormat),None) - dicoArgs['monBlocFichier'+str(index)]=monBlocFichier - index=index+1 - BlocChamp = BLOC(condition = "TransferType=='File'", FieldName=SIMP(typ='TXM', statut='o')) - dicoArgs['BlocChamp'] = BlocChamp - return BLOC(condition = condition,TransferType=TransferType, **dicoArgs) - -Mapper = OPER (nom= 'Mapper',sd_prod=mapper, - MapperType=SIMP(statut='o', typ='TXM', into = list(dictMapperFormat.keys())), - ) -Converter = OPER (nom= 'Converter',sd_prod=converter) - -Interactions = PROC(nom='Interactions', - Interaction = FACT(max = '**', - InteractionName = SIMP(statut='o', typ=(interaction,'createObject'),), - From = SIMP(typ=modeleNumDuCompo, statut='o'), - To = SIMP(typ=modeleNumDuCompo, statut='o'), - # ApplyOnStateVariable = SIMP(statut ='o', typ=stateVariable), #PNPN A FAIRE : fenetreIhm='menuDeroulant' - InvolvedStateVariable = SIMP(statut ='o', typ=stateVariable), #PNPN A FAIRE : Seulement du composant d'origine From - # monBloc_FFFF = BLOC ( - # condition = 'getEficasAttribut(From,"ModelType") == "Fields" and getEficasAttribut(To,"ModelType") == "Fields"' , - # TermeLE = SIMP(typ='TXM', statut='o', into = dictTermeLE['Fields','Fields'],fenetreIhm='menuDeroulant'), - # ), - # monBloc_DPDP = BLOC ( - # condition = 'getEficasAttribut(From,"ModelType") == "Particles" and getEficasAttribut(To,"ModelType") == "Particles"' , - # TermeLE = SIMP(typ='TXM', statut='o', into = dictTermeLE['Particles','Particles'],fenetreIhm='menuDeroulant'), - # ), - # monBloc_FFDP = BLOC ( - # condition = 'getEficasAttribut(From,"ModelType") == "Fields" and getEficasAttribut(To,"ModelType") == "Particles"' , - # TermeLE = SIMP(typ='TXM', statut='o', into = dictTermeLE['Fields','Particles'],fenetreIhm='menuDeroulant'), - # ), - # monBloc_DPFF = BLOC ( - # condition = 'getEficasAttribut(From,"ModelType") == "Particles" and getEficasAttribut(To,"ModelType") == "Fields"' , - # TermeLE = SIMP(typ='TXM', statut='o', into = dictTermeLE['Particles','Fields'],fenetreIhm='menuDeroulant'), - # ), - InteractionConfiguration = FACT(statut='o', - CouplingMode = SIMP(typ='TXM', statut='o', into =['Direct', 'DataProcessing', 'Conversion']), - monBlocDirect = TousSelonLeTypeDeFormatDisponible("CouplingMode=='Direct'" ), - monBlocIn = BLOC (condition = "CouplingMode=='DataProcessing' or CouplingMode=='Conversion'", - ComponentProduction = FACT(statut='o', - monBlocFormat = TousSelonLeTypeDeFormatDisponible("1", 'ComponentProduction' ), - ), - ), - monBlocMapper = BLOC (condition = "CouplingMode=='DataProcessing' or CouplingMode=='Conversion'", - ConversionNode = FACT(min=1, max='**', statut ='o', - Tool = SIMP(typ=mapper, statut ='o'), - OutFromMapper = FACT(statut ='o', - monBlocFormat = TousSelonLeTypeDeFormatDisponible("1", 'outFromMapper' ), - ), - ), - ), - ), - ), -) - -dict_condition={ -'ModelType' : ('Interactions', 'Component'), -'Interactions' : ( 'Component'), -} - -Temporal_Aspects = PROC(nom ="Temporal_Aspects", - Simulated_Time_Laps = FACT(statut='o', max='**', - name = SIMP(statut='o', typ=(simulatedTime,'createObject'),), - initialTime = SIMP(statut='o', typ='R'), - finalTime = SIMP(statut='o', typ='R'), - timeDiscretization = SIMP(statut ='o', typ = 'TXM', into = ['Constant Time Step', 'Varying Time Step']), - bloc_Constant = BLOC (condition = 'timeDiscretization == "Constant Time Step"', - constantTimeStep = SIMP (statut ='o', typ = 'R'), - ), - bloc_Varying = BLOC (condition = 'timeDiscretization == "Varying Time Step"', - CFLNumberCriteria = SIMP (statut ='o', typ = 'R'), - FourierNumberCriteria = SIMP (statut ='o', typ = 'R'), - ), - ), -) -# -# ----------------------------------------- -SpatialAspects = PROC(nom='SpatialAspects', -# ----------------------------------------- - regles = (AU_MOINS_UN('SystemGeometry', 'SpatialDiscretization'),), - - SystemGeometry = FACT(statut='f', max='**', - SystemGeometryName = SIMP(statut='o', typ=(systemGeometry, 'createObject'),), - Shape = FACT(statut ='o', max='**', - ShapeIdentifier = SIMP(statut='o', typ=(cadShape,'createObject'),max='**',), - ShapeNature = SIMP(statut='o', typ='TXM', into=['Typical Geometry', 'CAD']), - - blocShape = BLOC(condition = 'Shape_Nature == "Typical Geometry"', - Box = SIMP(statut='o', typ='TXM', into=['Cube', 'Sphere','Cylinder'] ), - blocCube = BLOC(condition = 'Box == "Cube"', - #Taille_Box_Englobante = SIMP(statut='o', typ='R', max=3, min =3) - # derait etre un Tuple(3) mais a faire apres la projection - #Size_Of_Bounding_Box = SIMP(statut='o', typ=Tuple(3), validators=VerifTypeTuple(('R','R','R'),),) - Size_Of_Bounding_Box = SIMP(statut='o', typ='R', max=3, min=3, ), - ), # fin blocCube - blocBoule = BLOC(condition = 'Box == "Sphere"', - Center = SIMP(statut='o', typ='R', max=3, min =3), - ),# fin b_Boule - blocCylinder = BLOC(condition = 'Box == "Cylinder"', - Heigth = SIMP(statut="o", typ='R', val_min=0.0, ang='Nanotube length [m]'), - ),# fin blocCylinder - blocBouleOuCylinder = BLOC(condition = 'Box == "Sphere" or Box == "Cylinder"', - Radius = SIMP(statut='o', typ='R', val_min=0.0, ang='radius length [m]') , - ),# fin blocBouleOuCylinder - ), # fin blocShape - blocCAO = creeBlocPourLesFichiers("Shape_Nature == 'CAD'",'Domain', ['txt','I-deas', 'Gmsh', 'top',],None), - ), # fin Shape - ),# SystemGeometry - - SpatialDiscretization = FACT(statut='f', max="**", - MeshName = SIMP(statut='o', typ=(meshIdentifier,'createObject')), - blocMeshFile = creeBlocPourLesFichiers("1 == 1",'Mesh',listeFormatGenerique,None), - GroupIdentifier = SIMP(statut='o', typ=(meshGroup,'createObject'),max='**',), - ),# SpatialDiscretization - - BoundaryConstraints = FACT(statut = 'f', - Motion = FACT(statut='f', - MotionNature = SIMP(statut='o', typ='TXM', into=['Fixed boudary', 'Translational motion', 'Rotational motion', 'Scaling']), - - blocTranslationalMotion = BLOC(condition = 'MotionNature == "Translational motion"', - TranslationVelocity = SIMP(statut='o', typ='R'), - boundaries = SIMP(statut='o', typ=spatialRegion,max='**', homo='SansOrdreNiDoublon' ), - ), - blocRotationalMotion = BLOC(condition = 'MotionNature == "Rotational motion"', - RotationRate = SIMP(statut='o', typ='R'), - boundaries = SIMP(statut='o', typ=spatialRegion,max='**', homo='SansOrdreNiDoublon' ), - ), - blocFixed = BLOC(condition = 'MotionNature == "Fixed boudary"', - boundaries = SIMP(statut='o', typ=spatialRegion,max='**', homo='SansOrdreNiDoublon'), - ), - ), -#PN decrire page 28 - Mapping = FACT(statut='f', - ), - ), # Boundary_Constraints -) # fin Geometric_Domain - -TEXTE_NEW_JDC = "\ -Velocity=scalar()\ -" diff --git a/Vimmp/OLD/cata_CSAndCPS_v10_test_driver_1.comm b/Vimmp/OLD/cata_CSAndCPS_v10_test_driver_1.comm deleted file mode 100644 index 6d02e15c..00000000 --- a/Vimmp/OLD/cata_CSAndCPS_v10_test_driver_1.comm +++ /dev/null @@ -1,145 +0,0 @@ -Fluid_Pressure=dynamicVariable() -Temperature=scalar() -Average_Velocity=dynamicVariable() -K=scalar() -Epsilon=scalar() -Omega=scalar() -Time1=simulatedTime() -Time2=simulatedTime() -CS_Num1=modeleNumDuCompo() -P1=userDiscrete() -CS_Num2=modeleNumDuCompo() -half_pipe=meshIdentifier() -Outlet2=meshGroup() -Wall=meshGroup() -Symetry=meshGroup() -CS_Num1__CS_Num2__Velocity=interaction() -Inlet1=meshGroup() -Inlet2=meshGroup() - -SpatialAspects(SpatialDiscretization=_F(MeshName=half_pipe, - MeshFormat='Med', - MeshFileName='/home/eric/VIMMP/vimmptraining/app/fluide+particule/datafiles/half_pipe.med', - GroupIdentifier=(Inlet1,Inlet2,Outlet2,Symetry,Wall,),),); - -Temporal_Aspects(Simulated_Time_Laps=_F(name=Time1, - initialTime=0.0, - finalTime=10.0, - timeDiscretization='Constant Time Step', - constantTimeStep=0.1,),); - -Temporal_Aspects(Simulated_Time_Laps=_F(name=Time2, - initialTime=10.0, - finalTime=15.0, - timeDiscretization='Constant Time Step', - constantTimeStep=0.01,),); - -sansnom=Component(SystemType='Continuum system', - PhysicalDescription=_F(ComplexFluid=False, - FlowNature='Turbulent', - DensityInitialisation=_F(DensityValueType='Value', - Density=1.17862,), - ViscosityInitialisation=_F(ViscosityValueType='Value', - Viscosity=0.0183,), - TurbulenceForFlowDynamics=_F(TurbulenceModellingType='One-point moment', - RANSModel='Turbulent-Viscosity Model (TVM)', - TVMChoice='K-Epsilon',), - DynamicalVariables=_F(OriginOfDynamicalVariables='to be simulated', - Pressure=_F(FluidPressure=Fluid_Pressure, - SourceTerm=False,), - Velocity=_F(AverageVelocity=Average_Velocity, - SourceTerm=False,), - KDefinition=_F(Name=K, - SourceTerm=False,), - EpsilonDefinition=_F(Name=Epsilon, - SourceTerm=False,),), - Thermal=_F(ThermalEffects='Non thermal', - ReferenceTemperature=293.15,), - Scalars=_F(AsTurbulenceForFlowDynamics=True, - Scalar=_F(Name=None, - DiffusivityValueType='Value', - Diffusivity=None, - EffectOnFlowDynamic='Active', - ActiveOnFlowEffect=_F(RelationType='Force-Flux Relation', - TypeOfForceFluxRelation='Diffusivity', - DiffusivityLaw=None,), - SourceTerm=False, - Initialisation=_F(OriginOfFluxField='Interaction',),),),), - NumericalModel=_F(Identifier=CS_Num1, - SimulatedTimeLapse=Time1, - ModelType='Fields', - NumericalMethod='FV', - Solver='Code_Saturne', - MeshIdentifiers=(half_pipe,),), - BoundaryConditions=_F(BoundaryCondition=(_F(TypeOfBoundaryCondition='Inlet', - ApplyOnMeshGroups=(Inlet1,Inlet2,), - ApplyOnStateVariable=(Average_Velocity,), - FormulationOfBoundary='Dirichlet', - Consigne='Choose between InletProfile or IntegratedValue ', - IntegratedVectorValue=_F(U=1.0, - V=0.0, - W=0.0,),), - _F(TypeOfBoundaryCondition='Inlet', - ApplyOnMeshGroups=(Inlet1,Inlet2,), - ApplyOnStateVariable=(K,), - FormulationOfBoundary='Dirichlet', - Consigne='Choose between InletProfile or IntegratedValue ', - IntegratedValue=0.0,), - _F(TypeOfBoundaryCondition='_Wall', - ApplyOnMeshGroups=(Wall,), - VelocityAtBoundary=_F(SlipVelocity=0.0, - WallMotion=_F(U=1.0, - V=0.0, - W=0.0,),), - LevelOfDescription=_F(WallFunction='2-scale model (Log law)',),),),),); - -sansnom=Component(SystemType='Classical particle system', - PhysicalDescription=_F(Particle=_F(ParticleNature='Discrete Particle', - DiscreteParticleName=P1, - TypeOfDiscreteParticle='Solid', - TypeOfSolid='Primary Particle', - Properties=_F(Geometry='Sphere', - ParticleRadius=1e-05, - Weight=_F(Mass=None, - Density=1000.0,), - Mechanical='Rigid',), - ListOfInteractions=_F(BondedInteractions=_F(TypeOfBondedInteraction='NoOne',), - UnbondedInteractions=_F(TypeOfUnbondedInteraction='No',), - ExternalFieldInteraction=_F( - TypeOfInteractionWithAnExternalField='NoOne', - FieldAppliesOnAllSpecies=\ - True,),),),), - NumericalModel=_F(Identifier=CS_Num2, - SimulatedTimeLapse=Time2, - ModelType='Particles', - NumericalMethod='CFD_Discrete_Particles', - Solver='Code_Saturne',), - BoundaryConditions=_F(BoundaryCondition=_F(TypeOfBoundaryCondition=None, - ApplyOnCadGroups=None, - ApplyOnStateVariable=None,),),); - -sansnom=Converter(); - -sansnom=Mapper(MapperName=None,); - -Interactions(Interaction=_F(InteractionName=CS_Num1__CS_Num2__Velocity, - Origine=CS_Num1, - Destination=CS_Num2, - TermeLE='Fluid_Velocity_Field', - CouplingPart=_F(CouplingMode='direct', - transferType='File', - Format='All', - FileName=None, - FieldName=None,),),); - -# Interactions(Interaction=_F(InteractionName=CS_Num1-CS_Num2-Velocity, -# Origine=CS_Num1, -# Destination=CS_Num2, -# TermeLE='Fluid_Velocity_Field', -# CouplingPart=_F(CouplingMode='direct', -# transferType='File', -# Format='All', -# FileName=None, -# FieldName=None,),),); - -#CHECKSUM:de692e7d5bd6b5ec75a4a67ad47aac05 -:FIN CHECKSUM \ No newline at end of file diff --git a/Vimmp/OLD/cata_CSAndCPS_v10b_test_driver_1.comm b/Vimmp/OLD/cata_CSAndCPS_v10b_test_driver_1.comm deleted file mode 100644 index 0d01d951..00000000 --- a/Vimmp/OLD/cata_CSAndCPS_v10b_test_driver_1.comm +++ /dev/null @@ -1,86 +0,0 @@ -Fluid_Pressure=dynamicVariable() -Temperature=scalar() -Average_Velocity=dynamicVariable() -K=scalar() -Epsilon=scalar() -Time1=simulatedTime() -Time2=simulatedTime() -half_pipe=meshIdentifier() -Inlet1=meshGroup() -Inlet2=meshGroup() -Outlet=meshGroup() -Wall=meshGroup() -Symetry=meshGroup() -CS_Num_FV=modeleNumDuCompo() -Sclaliare1=scalar() - -Temporal_Aspects(Simulated_Time_Laps=_F(name=Time1, - initialTime=0.0, - finalTime=10.0, - timeDiscretization='Constant Time Step', - constantTimeStep=0.1,),); - -Temporal_Aspects(Simulated_Time_Laps=_F(name=Time2, - initialTime=0.0, - finalTime=15.0, - timeDiscretization='Constant Time Step', - constantTimeStep=0.01,),); - -SpatialAspects(SpatialDiscretization=_F(MeshName=half_pipe, - MeshFileFormat='Med', - MeshFileName='/home/eric/VIMMP/vimmptraining/app/fluide+particule/datafiles/half_pipe.med', - GroupIdentifier=(Inlet1,Inlet2,Outlet,Symetry,Wall,),),); - -sansnom=Component(SystemType='Continuum system', - PhysicalDescription=_F(ComplexFluid=False, - FlowNature='Turbulent', - DensityInitialisation=_F(DensityValueType='Value', - Density=1.17862,), - ViscosityInitialisation=_F(ViscosityValueType='Value', - Viscosity=0.00183,), - TurbulenceForFlowDynamics=_F(TurbulenceModellingType='One-point moment', - RANSModel='Turbulent-Viscosity Model (TVM)', - TVMChoice='K-Epsilon',), - DynamicalVariables=_F(OriginOfDynamicalVariables='to be simulated', - Pressure=_F(FluidPressure=Fluid_Pressure, - SourceTerm=False,), - Velocity=_F(AverageVelocity=Average_Velocity, - SourceTerm=False,), - KDefinition=_F(Name=K, - SourceTerm=False,), - EpsilonDefinition=_F(Name=Epsilon, - SourceTerm=False,),), - Thermal=_F(ThermalEffects='Non thermal', - ReferenceTemperature=293.15,), - Scalars=_F(AsTurbulenceForFlowDynamics=True, - Scalar=_F(Name=Sclaliare1, - DiffusivityValueType='Value', - Diffusivity=0.0, - OriginOfScalar='to be simulated', - SourceTerm=False, - Initialisation=_F(InitialisationOfScalar='ValueInit', - ValueInit=0.0,), - EffectOnFlowDynamic='Passive',),),), - NumericalModel=_F(Identifier=CS_Num_FV, - SimulatedTimeLapse=Time1, - ModelType='Fields', - NumericalMethod='FV', - Solver='Code_Saturne', - MeshIdentifiers=(half_pipe,),), - BoundaryConditions=_F(BoundaryCondition=(_F(TypeOfBoundaryCondition='Inlet', - ApplyOnMeshGroups=(Inlet1,Inlet2,), - ApplyOnStateVariable=(Average_Velocity,), - FormulationOfBoundary='Dirichlet', - Consigne=\ - 'Choose between InletProfile,IntegratedValue,IntegratedVectorValue ', - IntegratedVectorValue=_F(U=1.0, - V=0.0, - W=0.0,),), - _F(TypeOfBoundaryCondition='_Wall', - ApplyOnMeshGroups=(Wall,), - VelocityAtBoundary=_F(SlipVelocity=0.0, - WallMotion=_F(U=1.0, - V=0.0, - W=0.0,),), - LevelOfDescription=_F(WallFunction='2-scale model (Log law)',),),),),); -#CHECKSUM:2a41c2aa90b5d6d507cda67fc2ae6c07 -:FIN CHECKSUM \ No newline at end of file diff --git a/Vimmp/OLD/cata_CSAndCPS_v10c_test_driver_1.comm b/Vimmp/OLD/cata_CSAndCPS_v10c_test_driver_1.comm deleted file mode 100644 index 21d1e02d..00000000 --- a/Vimmp/OLD/cata_CSAndCPS_v10c_test_driver_1.comm +++ /dev/null @@ -1,129 +0,0 @@ -Fluid_Pressure=dynamicVariable() -Temperature=scalar() -Average_Velocity=dynamicVariable() -K=scalar() -Epsilon=scalar() -Time1=simulatedTime() -Time2=simulatedTime() -half_pipe=meshIdentifier() -Inlet1=meshGroup() -Inlet2=meshGroup() -Outlet=meshGroup() -Wall=meshGroup() -Symetry=meshGroup() -CS_Num_FV=modeleNumDuCompo() -P1=userDiscrete() -CS_Num_CFD_DP=modeleNumDuCompo() -Scalaire1=scalar() - -Temporal_Aspects(Simulated_Time_Laps=_F(name=Time1, - initialTime=0.0, - finalTime=10.0, - timeDiscretization='Constant Time Step', - constantTimeStep=0.1,),); - -Temporal_Aspects(Simulated_Time_Laps=_F(name=Time2, - initialTime=0.0, - finalTime=15.0, - timeDiscretization='Constant Time Step', - constantTimeStep=0.01,),); - -SpatialAspects(SpatialDiscretization=_F(MeshName=half_pipe, - MeshFileFormat='Med', - MeshFileName='/home/eric/VIMMP/vimmptraining/app/fluide+particule/datafiles/half_pipe.med', - GroupIdentifier=(Inlet1,Inlet2,Outlet,Symetry,Wall,),),); - -sansnom=Mapper(MapperName=None,); - -sansnom=Component(SystemType='Continuum system', - PhysicalDescription=_F(ComplexFluid=False, - FlowNature='Turbulent', - DensityInitialisation=_F(DensityValueType='Value', - Density=1.17862,), - ViscosityInitialisation=_F(ViscosityValueType='Value', - Viscosity=0.00183,), - TurbulenceForFlowDynamics=_F(TurbulenceModellingType='One-point moment', - RANSModel='Turbulent-Viscosity Model (TVM)', - TVMChoice='K-Epsilon',), - DynamicalVariables=_F(OriginOfDynamicalVariables='to be simulated', - Pressure=_F(FluidPressure=Fluid_Pressure, - SourceTerm=True, - OriginOfSourceTerm=None,), - Velocity=_F(AverageVelocity=Average_Velocity, - SourceTerm=False,), - KDefinition=_F(Name=K, - SourceTerm=False,), - EpsilonDefinition=_F(Name=Epsilon, - SourceTerm=False,),), - Thermal=_F(ThermalEffects='Non thermal', - ReferenceTemperature=293.15,), - Scalars=_F(AsTurbulenceForFlowDynamics=True, - Scalar=_F(Name=Scalaire1, - DiffusivityValueType='Value', - Diffusivity=0.0, - OriginOfScalar='to be simulated', - SourceTerm=True, - OriginOfSourceTerm=None, - Initialisation=_F(InitialisationOfScalar='Given',), - EffectOnFlowDynamic='Active', - ActiveOnFlowEffect=_F(RelationType='Force-Flux Relation', - TypeOfForceFluxRelation='Diffusivity', - DiffusivityLaw=None,),),),), - NumericalModel=_F(Identifier=CS_Num_FV, - SimulatedTimeLapse=Time1, - ModelType='Fields', - NumericalMethod='FV', - Solver='Code_Saturne', - MeshIdentifiers=(half_pipe,),), - BoundaryConditions=_F(BoundaryCondition=(_F(TypeOfBoundaryCondition='Inlet', - ApplyOnMeshGroups=(Inlet1,Inlet2,), - ApplyOnStateVariable=(Average_Velocity,), - FormulationOfBoundary='Dirichlet', - Consigne=\ - 'Choose between InletProfile,IntegratedValue,IntegratedVectorValue ', - IntegratedVectorValue=_F(U=1.0, - V=0.0, - W=0.0,),), - _F(TypeOfBoundaryCondition='_Wall', - ApplyOnMeshGroups=(Wall,), - VelocityAtBoundary=_F(SlipVelocity=0.0, - WallMotion=_F(U=1.0, - V=0.0, - W=0.0,),), - LevelOfDescription=_F(WallFunction='2-scale model (Log law)',),),),),); - -sansnom=Component(SystemType='Classical particle system', - PhysicalDescription=_F(Particle=_F(ParticleNature='Discrete Particle', - DiscreteParticleName=P1, - TypeOfDiscreteParticle='Solid', - TypeOfSolid='Primary Particle', - Properties=_F(Geometry='Sphere', - ParticleRadius=1e-05, - Weight=_F(Mass=None, - Density=1000.0,), - Mechanical='Rigid',), - ListOfInteractions=_F(BondedInteractions=_F(TypeOfBondedInteraction='NoOne',), - UnbondedInteractions=_F(TypeOfUnbondedInteraction='No',), - ExternalFieldInteraction=_F( - TypeOfInteractionWithAnExternalField='NoOne', - FieldAppliesOnAllSpecies=\ - True,),),),), - NumericalModel=_F(Identifier=CS_Num_CFD_DP, - SimulatedTimeLapse=Time2, - ModelType='Particles', - NumericalMethod='CFD_Discrete_Particles', - Solver='Code_Saturne',), - BoundaryConditions=_F(BoundaryCondition=_F(TypeOfBoundaryCondition=None, - ApplyOnCadGroups=None, - ApplyOnStateVariable=None,),),); - -Interactions(Interaction=_F(InteractionName=None, - From=CS_Num_FV, - To=CS_Num_CFD_DP, - InvolvedStateVariable=Average_Velocity, - InteractionConfiguration=_F(CouplingMode='Direct', - TransfertType='File', - FileFormat='Med', - FileName=None, - FieldName=None,),),); -#CHECKSUM:a1a95ffafb248ff4ecc6b1a1fc5b3bf3 -:FIN CHECKSUM \ No newline at end of file diff --git a/Vimmp/OLD/cata_CSAndCPS_v2.py b/Vimmp/OLD/cata_CSAndCPS_v2.py deleted file mode 100644 index ab993ec5..00000000 --- a/Vimmp/OLD/cata_CSAndCPS_v2.py +++ /dev/null @@ -1,606 +0,0 @@ -from Accas import * - -class composant(ASSD):pass -class modeleNumDuCompo(UserASSD):pass -class especeChimique(UserASSD):pass -class userParticle(UserASSD) :pass -class userAtom(userParticle) :pass -class userMolecule(userParticle) :pass -class userDiscrete(userParticle) :pass -class userDPD(userParticle) :pass - -class spatialRegion(UserASSD):pass -class cadShape(spatialRegion):pass -class meshGroup(spatialRegion):pass -class meshIdentifier(spatialRegion):pass - -dictSystemTypeModeleNumerique = { 'Quantum system' : (), - 'Classical particle system' : ('MD', 'DPD', 'LBM', 'SDPD','SPH','CFD_Discrete_Particles'), - 'Continuum system' :('Fluid_Fields','Fluid_Particles', 'SPH','Lagrangian one-particle pdf'), - } - -# PN a faire --> ajouter un MC modeleNumerique ( apres avoir renomme le modeleNumerique actuel en classe de modele numerique) et le dictionnaire d apres -dictTypModNumModNum = { - ('Continuum system','Particles') : ('SPH','Lagrangian one-fluid-particle pdf'), - ('Continuum system','Fields') : ('FV','FEM', 'Spectral method'), - ('Classical particle system','Particles') : ('MD', 'DPD', 'SDPD','SPH','CFD_Discrete_Particles'), - ('Classical particle system','Fields') : ('LBM',), - ('Quantum system','Particles') : ('Particle method',), - ('Quantum system','Fields') : ('Wave',), -} - -dictCodeModeleNumerique = { - - 'Code_Saturne' : ('Lagrangian one-fluid-particle pdf', 'FV', 'CFD_Discrete_Particles',), - 'Fluent' : ('FV',), - 'Culgi Package': (), - 'DEM_SD' : ('Lagrangian one-fluid-particle pdf', 'FV', 'CFD_Discrete_Particles',), - 'DFTB+' : ('density functional tight binding method',), - 'DL_MESO_DPD' : ('Lagrangian one-fluid-particle pdf', 'FV', 'CFD_Discrete_Particles',), - 'DL_MESO_LBE' : ('Lagrangian one-fluid-particle pdf', 'FV', 'CFD_Discrete_Particles',), - 'DL_POLY_4' : ('Lagrangian one-fluid-particle pdf', 'FV', 'CFD_Discrete_Particles',), - 'GROMACS' : ('Lagrangian one-fluid-particle pdf', 'FV', 'CFD_Discrete_Particles',), - 'GROMACS_LS' : ('Lagrangian one-fluid-particle pdf', 'FV', 'CFD_Discrete_Particles',), - 'LAMMPS' : ('Lagrangian one-fluid-particle pdf', 'FV', 'CFD_Discrete_Particles',), - 'NWChem' : ('Lagrangian one-fluid-particle pdf', 'FV', 'CFD_Discrete_Particles',), - 'OpenFOAM' : ('Lagrangian one-fluid-particle pdf', 'FV', 'CFD_Discrete_Particles',), - 'Quantum EXPRESSO' : ('Particle method', 'Wave',), - 'RHEO_AGGRATE' : ('Particle method', 'Wave',), - 'RHEO_DROP' : ('Particle method', 'Wave',), - 'STAR_CCM+' : ('FV', 'Particles',), - 'Code Nill' : ('Spectral method', ), -} - -dictCodeFormat = { - 'Code_Saturne' : ('Med', 'cgns', 'msh', 'des', 'unv ', 'Use converter'), - 'Culgi Package': ('cof',), - 'DEM_SD' : ('geo', 'ascii'), - 'DFTB+' : ('geo', 'ascii'), - 'Fluent' : ('FluentFormat', 'Use converter'), - 'OpenFOAM' : ('OpenFoamFormat', 'Med', 'Use converter'), -} - -dictTermeLE = { - ('Fields','Particles') : ('Fluid_Velocity_Field', - 'Fluid_Temperature_Field', - 'Fluid_Species_Mass_Fraction_Fluid',), - ('Particles','Fields') : ('Fluid_Particle_Momentum_Exchange_Field', - 'Fluid_Particle_Thermal_Exchange_Field', - 'Lagrangian one-particle pdfFluid_Particle_Mass_Source_Field', - 'Particle_Volumetric_Concentration_Modified_Fluid_Viscosity', - 'Particle_Extra_Stress_Tensor'), -} - -dictCodeConvertisseur = { - ('Saturne', 'OpenFOAM') : ('gmsh', 'Saturne2CDM and CDM2OpenFoam'), - ('Saturne', 'Fluent') : ( 'Saturne2CDM and CDM2Fluent'), - ('Fluent', 'OpenFOAM') : ('Fluent2CDM and CDM2OpenFoam'), - } - -def prepareBlocSystemType(systemType) : - condition = "SystemType == '" + systemType + "'" - Identifier = SIMP(statut='o', typ=(modeleNumDuCompo,'createObject'),) - ModelType = SIMP(statut='o', typ='TXM', into = ('Particles', 'Fields'),position='global') - dicoArgs={} - for typeMod in ('Particles', 'Fields'): - conditionType = "ModelType == '" + typeMod + "'" - NumericalMethod = SIMP(statut='o',typ='TXM', into=dictTypModNumModNum[systemType, typeMod], - position='global_jdc', intoXML=allValueInDict(dictTypModNumModNum)) - bloc_meshRef = BLOC(condition = 'ModelType == "Fields" and NumericalMethod == "FV"', - Mesh_Identifiers = SIMP (statut ='o', max ='**', typ = meshIdentifier), - ) - dicoBloc = {} - for modeleNumerique in list(dictTypModNumModNum[systemType,typeMod]): - conditionNum = "NumericalMethod == '" + modeleNumerique + "'" - setCode = set() - for code in dictCodeModeleNumerique.keys(): - if modeleNumerique in dictCodeModeleNumerique[code]: setCode.add(code) - Solver = SIMP(statut='o', typ='TXM', into=list(setCode), intoXML=list(dictCodeModeleNumerique.keys()) ) - monNomBloc='b_ModelName_' + modeleNumerique.replace(' ','_') - if setCode !=set(): dicoBloc[monNomBloc]=BLOC(condition=conditionNum, nomXML='b_ModelName',Solver=Solver) - dicoArgs['b_modelType'+typeMod] = BLOC(condition=conditionType, NumericalMethod=NumericalMethod,**dicoBloc) - NumericalModel = FACT(statut='o', max= '**', Identifier=Identifier, ModelType=ModelType,bloc_meshRef=bloc_meshRef, **dicoArgs) - return BLOC(condition=condition, nomXML='b_systemType', NumericalModel=NumericalModel) - -def calculCommun( key1, key2, dico): - monSet=set() - if not key1 in dico: return () - if not key2 in dico: return () - for val in dico[key1]: - if val in dico[key2]: - monSet.add(val) - if monSet == set() : monSet.add ('No common format') - return list(monSet) - -def allValueInDict( dico): - monSet=set() - for clef in dico : - for val in dico[clef] : monSet.add(val) - return monSet - -def creeBlocPourLesFichiers (laCondition, NomDuFichier, ListeFormats): - SIMPFormatFichier = SIMP(statut='o', typ = 'TXM', into = tuple(ListeFormats) + ('others',), ) - dicoDesBlocs = {} - for formatFich in ListeFormats : - nomBloc = 'b_format_fichier' + str(formatFich) - typeDesFichiers = ('Fichier', formatFich + " Files (*." + formatFich + ");;All Files (*)",) - blocCondition ="FileFormat == '" + formatFich + "'" - dicoDesBlocs[nomBloc] = BLOC( condition = blocCondition, FileName = SIMP(statut='o', typ = typeDesFichiers ),) - dicoDesBlocs['b_format_fichier_others'] = BLOC(condition="FileFormat == 'others'", FileName = SIMP(statut='o', typ = ('Fichier','All Files (*)'),),) - return BLOC(condition=laCondition, FileFormat = SIMPFormatFichier, **dicoDesBlocs) - -def champ(nomDelaContante, labels ,nbReels ) : -# ajouter les extensions pour le fichier et les blocs associes -# certains champs ne seront jamais uniformes - #Input_Mode = SIMP( statut='o', typ='TXM', into=('uniform value','values directly assigned','values read in file','analytical function', 'call to a service')), -#PNPN : Passer le nom du champ pour le label du vecteur - dicoBloc = {} - dicoBloc[nomDelaContante] = SIMP( statut='o', typ='R') - return FACT( statut='o', - Input_Mode = SIMP( statut='o', typ='TXM', into=('uniform value','values directly assigned','values read in file','analytical function',)), - b_uniforme = BLOC( condition = "Input_Mode == 'uniform value'", **dicoBloc), - b_vsaisies = BLOC( condition = "Input_Mode == 'values directly assigned'", - Field = SIMP( typ='R', statut='o', max ='**'), - #Vecteur = SIMP( fenetreIhm='Tableau', homo = labels, - # statut='o', min=2, max='**', - # typ=Tuple(nbReels), - # validators=VerifTypeTuple(("'R',"*nbReels),),) # end particle - ), #b_vsaisie - b_vdsfich = BLOC( condition = "Input_Mode == 'values read in file'", - Format = SIMP( statut='o', typ='TXM', into=['txt','Med',], position='global' ), - td_txt = BLOC(condition = 'Format == "txt"', - File = SIMP( statut='o', typ=('Fichier','Text Files(*.txt);All Files (*)'),), - ), - td_med_1 = BLOC( condition = 'Format == "Med"', - File = SIMP( statut='o', typ=('Fichier','Med Files(*.med);All Files (*)'),), - ), - td_med_2 = BLOC( condition = 'Format == "Med"', - FieldName = SIMP( statut='o', typ='TXM',), - ), - ), - b_vfct = BLOC( condition = "Input_Mode == 'analytical function'", - Function = SIMP( statut='o', typ='TXM',), - ), - #b_vserc = BLOC( condition = "Input_Mode == 'call to a service'", - # Service = SIMP( statut='o', typ='TXM',), - #), - ) - - - - -def FactTurbulence(statut): - return FACT (statut=statut, - TurbulenceModellingType = SIMP(typ='TXM', statut='o', into =['No Model (DNS)', - 'Spatial filtering (LES)', 'One-point moment', 'One-point PDF']) , - bloc_one_point = BLOC(condition= "TurbulenceModellingType == 'One-point moment'", - RANSModel = SIMP(statut="o", typ="TXM", into=['Turbulent-Viscosity Model(TVM)', 'Reynolds Stress Model (RSM)']), - bloc_TVM = BLOC(condition= "RANSModel == 'Turbulent-Viscosity Model(TVM)'", - TVMChoice = SIMP(typ='TXM', statut='o', into=['k-epsilon', 'k-omega']), - ), # fin bloc_TVM - bloc_RSM = BLOC(condition = "RANSModel == 'Reynolds Stress Model (RSM)'", - RSMChoice = SIMP(typ='TXM', statut='o', into=['Rotta', 'LRR-IP','LRR-QI','SSG']), - ), # fin bloc_RSM - ), # fin bloc_one_point - bloc_one_spatial = BLOC(condition = "TurbulenceModellingType == 'Spatial filtering (LES)'", - ChoiceOfApproach = SIMP(typ='TXM', statut='o', into=['Field-based LES', 'Filtered Density Function (FDF)']), - SubgridScaleModel = SIMP(typ='TXM', statut='o', into=['No SGS', 'Smagorinsky','Dynamical model', 'SGS Transport Equations']), - ), # fin bloc_one_spatial - bloc_one_point_pdf = BLOC(condition = "TurbulenceModellingType == 'One-point PDF'", - ChoiceOfApproach = SIMP(typ='TXM', statut='o', into=['One-point Eulerian PDF', 'One-particle Lagrangian PDF']), - bloc_lagrangian_pdf=BLOC(condition = "ChoiceOfApproach == 'One-particle Lagrangian PDF'", - StochasticModel = SIMP(typ='TXM', statut='o', into=['Langevin','Other'], defaut='Langevin'), - )# fin lagrangian - ), # fin bloc_one_point_pdf - bloc_no_model = BLOC(condition = "TurbulenceModellingType == 'No Model (DNS)'", - ChoiceOfApproach = SIMP(statut='o', typ='TXM', into=['Field-based DNS', 'N-Particle Method']), - bloc_Field = BLOC(condition = "ChoiceOfApproach == 'Field-based DNS'", - NumericalMethod=SIMP(statut='o', typ='TXM', into=['FV', 'Spectral Method']), - ),# fin bloc_Field - bloc_N_particle = BLOC(condition = "ChoiceOfApproach == 'N-Particle Method'", - NumericalMethod=SIMP(statut='o', typ='TXM', into=['SPH', 'Vortex Method']), - ),# fin bloc_N_particle - ), # fin bloc_no_model -)# fin du bloc return de la fonction factTurbulence - -def Particle(cardinalite) : - return FACT (statut='o', max=cardinalite, - ParticleNature = SIMP( statut='o', typ='TXM', into=['Atoms', 'Molecules', 'Dissipative', 'Fluid Particle', 'Discrete Particle']), - b_Atom = BLOC( condition='ParticleNature == "Atoms"', - AtomsName = SIMP( statut='o', typ=(userAtom,'createObject'),), - Atom = FACT (statut ='o', max= '**', - ChemicalSpecie = SIMP( statut='o', typ='TXM'), - Number = SIMP (statut ='o', typ = 'I'), - ElectricCharge = SIMP( statut='o', typ='R'), - MagneticMoment = SIMP( statut='o', typ='R'), - Size = SIMP( statut='f', typ='R'), # relevant ? - ), - ), - b_Molecule = BLOC( condition='ParticleNature == "Molecules"', - MoleculeName = SIMP( statut='o', typ=(userMolecule,'createObject'),), - ChemicalSpecie = FACT ( max='**', statut='o', - ChemicalSpecieName = SIMP( statut='o', typ=userAtom), - Proportion = SIMP( statut='o', typ='R', val_max =1), - ), - ElectricCharge = SIMP( statut='o', typ='R'), - MagneticMoment = SIMP( statut='o', typ='R'), - Shape = SIMP( statut='f', typ='TXM', into=['Linear', 'Trigonal Planar', 'Angular', 'Tetrahedral', 'Octahedral', 'Trigonal pyramid', 'Other']), - ), - b_Dissipative = BLOC( condition='ParticleNature == "Dissipative"', - DPDName = SIMP( statut='o', typ=(userDPD,'createObject'),), - BondedParticles = SIMP(statut="o", typ=bool, defaut=False), - ), - b_Discrete = BLOC( condition='ParticleNature == "Discrete Particle"', - DiscreteParticleName = SIMP(statut='o', typ=(userDiscrete,'createObject'),), - TypeOfDiscreteParticle = SIMP( statut='o', typ='TXM', into=['Solid', 'Droplets', 'Bubbles','Bio Organism'],), - b_TypeDP_Solid = BLOC( condition ='TypeOfDiscreteParticle == "Solid"', - TypeOfSolid = SIMP( statut='o', typ='TXM', into=['Primary Particle', 'Assemblage / Aggregate'], position = 'global'), - b_SolidPrimary = BLOC( condition='TypeOfSolid == "Primary Particle"', - ), - b_SolidAggregate = BLOC( condition='TypeOfSolid == "Assemblage / Aggregate"', - ), - ), - b_TypeBio_Solid = BLOC( condition='TypeOfDiscreteParticle == "Bio Organism"', - TypeOfOrganism = SIMP( statut='o', typ='TXM', into=['Unicellular', 'Multicellular']), - b_Unicellular = BLOC( condition ='TypeOfOrganism=="Unicellular"', - Unicellular = SIMP( statut='o', typ='TXM', into=["Bactaria"], defaut='Bactaria') - ), - b_Multicellular = BLOC( condition ='TypeOfOrganism=="Multicellular"', - Multicellular = SIMP( statut='o', typ='TXM', into=["Animal","Fongus","Plant"]) - ), - ), # b_TypeBio_Solid - Properties = FACT ( statut ='o', - Geometry = SIMP( statut='o', typ='TXM', into=['Sphere', 'Ellopsoids', 'Other Shape']), - b_geom_Sphere = BLOC( condition = 'Geometry == "Sphere"', - ParticleRadius = SIMP( statut='o', typ ='R', val_min = 0), - ), - Weight = FACT (statut = 'o', - Mass = SIMP( statut='o', typ ='R', val_min = 0), - Density = SIMP( statut='o', typ ='R', val_min = 0), - ), - Mechanical = SIMP( statut='o', typ='TXM', into=['Rigid', 'Flexible', 'Deformable']), - b_SolidAggregate = BLOC( condition='TypeOfSolid == "Assemblage / Aggregate"', - Morphological = FACT (statut = 'o', - Consigne = SIMP(statut="o", homo="information", typ="TXM", defaut='Choose optional properties'), - FractalDimension = SIMP( statut='f', typ='R'), - NumberOfPrimaryParticle = SIMP (statut ='f',typ='I'), - EquivalentSize = SIMP( statut='f', typ='R'), - Porosoty = SIMP( statut='f', typ='R'), - ), # Morphological - ), # b_SolidAggregate - ElectroMagnetic = FACT (statut = 'f', - ElectricCharge = SIMP( statut='o', typ='R'), - MagneticMoment = SIMP( statut='o', typ='R'), - ), - b_SolidAggregateBonded = BLOC( condition='TypeOfSolid == "Assemblage / Aggregate"', - BondedParticles = FACT( - ListOfBondedParticles = SIMP(statut='o', max='**', typ = userParticle), - ), - ), - ), # Properties - ), # b_Discrete -############################ - - List_Of_Bonded_Particles = FACT( statut='f', - # -------------------------------------------# - Bonded_Particles = FACT( statut='o', max = "**", - Name_Of_Bonded_Particles = SIMP( statut='o', typ='TXM'), - Species_in_Particle = SIMP( statut='o', min=2, typ='TXM' , max = "**"), - ), # Bonded_Particles - ), # List_Of_Bonded_Particles - - List_Of_Interactions = FACT( statut='o', max = "**", - # --------------------------------------------------# - - Bonded_Interactions = FACT( statut='o', max = "**", - - #Type_Of_Bonded_Interaction = SIMP( statut='o', typ='TXM', into=['No', 'Covalent Bond Length', 'FENE', 'Covalent Bond Angle', 'Dihedral Angles', 'Improper Dihedral', 'Frozen Motion' ], defaut='No', position='global'), - Type_Of_Bonded_Interaction = SIMP( statut='o', typ='TXM', into=['No', 'Covalent Bond Length', 'FENE', 'Covalent Bond Angle', 'Dihedral Angles', 'Improper Dihedral', 'Frozen Motion' ], defaut='No'), - - #La saisie de l'ensemble des liaisons d'un meme type peut se faire ds le meme bloc (soit ds un fichier, soit manuelle) - #Une seule valeur de distante? est a saisir pour l'ensemble - # bloc_covalent_1 = BLOC( condition = 'Type_Of_Bonded_Interaction in ("Covalent Bond Length","FENE")', - # ), # fin bloc_covalent_1 - bloc_covalent_length = BLOC( condition = 'Type_Of_Bonded_Interaction == "Covalent Bond Length"', - Interaction_Length_Parameters = FACT( statut='o', max="**", - Apply_To_Bonded_Particles = SIMP( statut='o', max='**', typ='TXM'), - Spring_Stifness = SIMP( statut='o', typ='R', val_min=0), - Mean_Bond_Length = SIMP( statut='o', typ='R', val_min=0), - ), # fin Interation_Length_Parameters - ), # fin Bond_Length_Parameters - bloc_covalent_angle = BLOC( condition = 'Type_Of_Bonded_Interaction == "Covalent Bond Angle"', - Interaction_Angles_Parameters = FACT( statut='o', max="**", - Apply_To_Bonded_Particles = SIMP( statut='o', max='**', typ='TXM'), - Spring_Stifness = SIMP( statut='o', typ='R', val_min=0), - Mean_Bond_Angle = SIMP( statut='o', typ='R', val_min=0), - ), # fin Interation_Angles_Parameters - ), # fin bloc_covalent_length_and_angle - - #bloc_covalent_length_and_angle = BLOC( condition = 'Type_Of_Bonded_Interaction == "Covalent Bond Length" or Type_Of_Bonded_Interaction == "Covalent Bond Angle"', - # Bond_Parameters = FACT( statut='o', max="**", - # Apply_To_Bonded_Particles = SIMP( statut='o', max='**', typ='TXM'), - # Spring_Stifness = SIMP( statut='o', typ='R', val_min=0), - # bloc_covalent_length = BLOC( condition = 'Type_Of_Bonded_Interaction == "Covalent Bond Length"', - # Mean_Bond_Length = SIMP( statut='o', typ='R', val_min=0), - # ), # fin Bond_Length_Parameters - # bloc_covalent_angle = BLOC( condition = 'Type_Of_Bonded_Interaction == "Covalent Bond Angle"', - # Mean_Bond_Angle = SIMP( statut='o', typ='R', val_min=0), - # ), # fin Bond_Length_Parameters - # ), # fin Bond_Length_Parameters - #), # fin bloc_covalent_length_and_angle - - bloc_FENE = BLOC( condition = 'Type_Of_Bonded_Interaction == "FENE"', - Applies_To_All_Particles = SIMP( statut='o', typ=bool, defaut=True), - bloc_not_on_all = BLOC( condition = 'Applies_To_All_Particles == False', - FENE_Parameters = FACT( statut='o', max="**", - Species_Pair = SIMP( statut='o', max=2, typ='TXM'), - Spring_Constant_H = SIMP( statut='o', typ='R', val_min=0), - LMax = SIMP( statut='o', typ='R', val_min=0), - ), # fin FENE_Parameters - ), # fin bloc_not_on_all - bloc_on_all = BLOC( condition = 'Applies_To_All_Particles == True', - Spring_Constant_H = SIMP( statut='o', typ='R', val_min=0), - LMax = SIMP( statut='o', typ='R', val_min=0), - ), # fin bloc_on_all - ), # fin bloc_FENE - - bloc_le_reste = BLOC( condition = 'Type_Of_Bonded_Interaction in ("Dihedral Angles", "Improper Dihedral", "Frozen Motion")', - Particle_Name = SIMP( statut="f", typ='TXM'), - #Consigne = SIMP( statut="o", homo="information", typ="TXM", defaut='Not Implemented Yet'), - - ), - ), # fin Bonded_Interaction - - # ------------------------------- # - - Unbonded_Interactions = FACT( statut='o', max= "**", - - Type_Of_Unbonded_Interaction = SIMP( statut='o', typ='TXM', into=['No', 'electro_magnetic', 'Repulsion_and_VdW', 'Soft_Potentiel', ], defaut='No', position='global',fenetreIhm='menuDeroulant'), - - bloc_elec = BLOC( condition = 'Type_Of_Unbonded_Interaction == "electro_magnetic"', - Permittivity = SIMP( statut='o', typ='R', position='global_jdc'), - Magnetic = SIMP( statut='o', typ=bool, defaut=False,), - bloc_magnetic = BLOC( condition = 'Magnetic == True', - Permability = SIMP( statut='o', typ='R'), - ), # bloc_magnetic - ),# fin bloc_elec - - bloc_VdW = BLOC( condition = 'Type_Of_Unbonded_Interaction == "Repulsion_and_VdW"', - Species_Pair_Parameters = FACT( statut='o', max="**", - Type_Repulsion_and_VdW = SIMP( statut='o', typ='TXM', into = [ 'Lennard_Jones', 'Hard_sphere_model']), - Species_Pair = SIMP( statut='o', max=2, typ='TXM'), - VdW_Radius = SIMP( statut='o', typ='R', val_min=0), - b_Lennard = BLOC( condition = "Type_Repulsion_and_VdW == 'Lennard_Jones'", - Depth_Of_The_Potential_Well = SIMP( statut='o', typ='R', val_min=0), - ), # fin b_Lennard - ), # fin Species_Pair_Parameters - ), # bloc_VdW - - b_Param_Soft_Potentiel = BLOC( condition = "Type_Of_Unbonded_Interaction == 'Soft_Potentiel'", - Groot_Warren_Repulsion = SIMP( statut='o', typ='R', defaut=25.0, val_min=0), - Groot_Warren_Cutoff = SIMP( statut='o', typ='R', defaut=1.0, val_min=0), - Drag_Coefficient = SIMP( statut='o', typ='R'), # les 2 valent 0 pour MD - Drag_Force_Cutoff = SIMP( statut='o', typ='R', val_min=0), - ), # b_Param_Soft_Potentiel - - ), # fin UnBonded_Interactions - - # ------------------------------- # - - External_Field_Interaction = FACT( statut='o', max= "**", - Type_Of_Interaction_With_An_External_Field = SIMP( statut='o', typ='TXM', into=['No','gravitational field','electric field','magnetic field', 'Hydrodynamic_Field'], fenetreIhm='menuDeroulant', defaut ='No'), - b_gravite = BLOC( condition = 'Type_Of_Interaction_With_An_External_Field=="gravitational field"', - G = SIMP( statut='o', typ='R', defaut=9.81), - ), - b_elect = BLOC( condition = 'Type_Of_Interaction_With_An_External_Field=="electric field"', - Electric_Field = champ('E', ('E',), 1), - ), - b_magnetic = BLOC( condition = 'Type_Of_Interaction_With_An_External_Field=="magnetic field"', - Magnetic_Field = champ('B', ('B',), 1), - ), - b_hydrodynamic = BLOC( condition = 'Type_Of_Interaction_With_An_External_Field=="hydrodynamic field"', - Hydrodynamic_Field = champ('U', ('U',), 1), - ), - b_External_Field_Interaction = BLOC( condition = 'Type_Of_Interaction_With_An_External_Field != "No"', - Field_Applies_On_All_Species = SIMP( statut='o', typ=bool, defaut=True), - b_porte_espece = BLOC( condition = 'Field_Applies_On_All_Species == False ', - Species_List = SIMP( statut='o', typ='TXM', max= '**'), # faire un typ = "espece" - ), - ), # fin b_External_Field_Interaction - ), # fin Interaction_External_Field - - ), # fin List_Of_Interactions - -############################ - ) - -def bloc_CPS(): - return BLOC(condition = 'SystemType == "Classical particle system"', - Particle = Particle('**'), -) - -def bloc_FluideMacro(): - return BLOC(condition = 'SystemType == "Continuum system"', - FluidComplexe = SIMP(typ=bool, statut='o', defaut = False,), - - FlowNature = SIMP(typ='TXM', statut='o', into =['Laminar', 'Turbulent'], position='global'), - bloc_FlowNature_Turbulent = BLOC(condition = ' FlowNature == "Turbulent"', - TurbulenceForFlowDynamics = FactTurbulence('o'), - ), #------ fin bloc_FlowNature_Turbulent - - -# ---------------------- Effets thermiques - - Thermal = FACT (statut ='o', - ThermalEffects = SIMP(typ='TXM', statut='o', into =['Non thermal', - 'No effect on flow dynamics', 'Effect on flow dynamics'], defaut='Non thermal'), - - bloc_NonThermalEffects = BLOC(condition = ' ThermalEffects == "Non thermal" or ThermalEffects == "No effect on flow dynamics"', - DensityEquationOfState = SIMP(typ='TXM', statut='o', into =['Constant density'], defaut = 'Constant density'), - ), # fin bloc_NonThermalEffects - - bloc_ThermalEffects_Active = BLOC(condition = ' ThermalEffects == "Effect on flow dynamics"', - DensityEquationOfState = SIMP(typ='TXM', statut='o', into =['Variable density', 'Compressible']), -# PNJPM est ce suffisant ? - ), # fin bloc_ThermalEffects_Active - bloc_ThermalEffects = BLOC(condition = ' ThermalEffects == "Effect on flow dynamics" or ThermalEffects == "No effect on flow dynamics"', - bloc_scalar_thermal_flux = BLOC (condition = "FlowNature == 'Turbulent'", - ThermalFluxModel = FactTurbulence('f'), - ),# fin bloc_scalar_thermal_flux - WithChemicalReactions = SIMP(typ=bool, statut ='o', defaut = False), - ), # fin bloc_ThermalEffects - ),# fin Fact Thermal - -# ---------------------- Scalaire additional - bloc_scalar_FluidTurbulentOrLaminar = BLOC(condition = "(FluidComplexe == False and FlowNature == 'Turbulent') or (FluidComplexe == False and FlowNature == 'Laminar')", - AdditionalScalars = FACT(statut = 'f', - Scalar = FACT(statut = 'o', max ='**', - Name = SIMP(typ='TXM', statut='o',), - bloc_scalar_FluidTurbulentandNonComplexe = BLOC (condition = "FlowNature == 'Turbulent'", - ScalarFluxModel = FactTurbulence('f'), - ) # bloc_scalar_FluidTurbulentandNonComplexe - ),# Scalar - ),# AdditionalScalars - ), # fin FluidTurbulentandNonComplexe - #bloc_scalar_FluidLaminaireandNonComplexe = BLOC (condition = "FluidComplexe == False and FlowNature == 'Laminar'", - # AdditionalScalars = FACT (statut = 'o', - # Scalar = FACT ( statut = 'f', max ='**', - # Name = SIMP(typ='TXM', statut='o',), - # ),# Scalar - # ),# AdditionalScalars - #), # fin FluidLaminaireandNonComplexe - bloc_FlowNature_Turbulent_For_Scalars = BLOC(condition = ' FlowNature == "Turbulent"', - ScalarTurbulenceModelling = FactTurbulence('f'), - ), - # il faut une validation de coherence entre l existence de tous les turbulencesModelling - )# fin bloc_FluideMacro - -JdC = JDC_CATA ( - code = 'Vimmp', - # faire un validateur qui verifie que si on active reactions chimiques il faut que les masses molaires soient rentrees -) - -Component = OPER(nom='Component', sd_prod=composant, - SystemType = SIMP(typ='TXM', into=['Quantum system', 'Classical particle system', 'Continuum system'], statut='o',position='global'), - PhysicalDescription = FACT(statut = 'o', - b_FluideMacro = bloc_FluideMacro(), - b_bloc_CPS = bloc_CPS(), - ), - b_ModeleNumerique_quantum = prepareBlocSystemType('Quantum system'), - b_ModeleNumerique_classical = prepareBlocSystemType('Classical particle system'), - b_ModeleNumerique_continuum = prepareBlocSystemType('Continuum system'), -) - -Species = PROC(nom='Species', - Specie = FACT( statut='o', max ="**", - Name = SIMP( statut='o', typ=(especeChimique,'createObject') ), - masse_molaire = SIMP( statut='f', typ='R',), - ) -) - -def monBlocInteractionTypeChamp (): - return BLOC (condition = '1 == 1' , # a distinguer selon les cas - fieldNameInOrigine = SIMP(typ='TXM', statut='o'), - fieldNameInDestination = SIMP(typ='TXM', statut='o'), - ) - -Interactions = PROC(nom='Interactions', - Interaction = FACT( max = '**', - origine = SIMP(typ=modeleNumDuCompo, statut='o'), - destination = SIMP(typ=modeleNumDuCompo, statut='o'), -# PN a derouler avec une fonction - monBloc_FFDP = BLOC ( - condition = 'getEficasAttribut(origine,"ModelType") == "Fields" and getEficasAttribut(destination,"ModelType") == "Particles"' , - termeLE = SIMP(typ='TXM', statut='o', into = dictTermeLE['Fields','Particles'],fenetreIhm='menuDeroulant'), - monBloc_Champ = monBlocInteractionTypeChamp(), - ), - monBloc_DPFF = BLOC ( - condition = 'getEficasAttribut(origine,"ModelType") == "Particles" and getEficasAttribut(destination,"ModelType") == "Fields"' , - termeLE = SIMP(typ='TXM', statut='o', into = dictTermeLE['Particles','Fields'],fenetreIhm='menuDeroulant'), - monBloc_Champ = monBlocInteractionTypeChamp(), - ), - transferType = SIMP(typ='TXM', statut='o', into =['File', 'Memory', 'CorbaObject']), - monBloc_Saturne_Saturne = BLOC ( - condition = 'transferType == "File" and getEficasAttribut(origine,"Solver") == "Code_Saturne" and getEficasAttribut(destination,"Solver") == "Code_Saturne"' , - Format = SIMP(typ='TXM', statut='o', into = calculCommun( "Code_Saturne", "Fluent",dictCodeFormat) ), - ), - monBloc_Saturne_Fluent = BLOC ( - condition = 'transferType == "File" and getEficasAttribut(origine,"Solver") == "Code_Saturne" and getEficasAttribut(destination,"Solver") == "Fluent"' , - Format = SIMP(typ='TXM', statut='o', into = calculCommun( "Code_Saturne", "Fluent",dictCodeFormat) ), - ), - monBloc_Saturne_OpenFoam = BLOC ( - condition = 'transferType == "File" and getEficasAttribut(origine,"Solver") == "Code_Saturne" and getEficasAttribut(destination,"Solver") == "OpenFOAM"' , - Format = SIMP(typ='TXM', statut='o', into = calculCommun( "Code_Saturne", "OpenFOAM",dictCodeFormat) ), - monBloc_conversion = BLOC (condition = 'Format == "Use converter"', - converter = SIMP(typ='TXM', statut='o', into = dictCodeConvertisseur['Saturne', 'OpenFOAM']), - ), - ), - ), -) - -dict_condition={'NumericalMethod' : ('Interactions', 'Component'), -# 'TypeOfSolid' : ('Component',) -} - -Simulated_Time_Lapse = PROC( nom ="Simulated_Time_Lapse", - Initial_Time = SIMP( statut='o', typ='R'), - Duration = SIMP( statut='o', typ='R'), -) -# -#Spatial_Aspects= OPER( nom='Spatial_Aspects', sd_prod=geometricDomain, -Spatial_Aspects = PROC( nom='Spatial_Aspects', - System_Geometry = FACT ( statut='f', - Shape = FACT (statut ='f', max='**', - Shape_Nature = SIMP( statut='o', typ='TXM', into=['Typical Geometry', 'CAD']), - b_Shape = BLOC( condition = 'Shape_Nature == "Typical Geometry"', - Box = SIMP( statut='o', typ='TXM', into=['Cube', 'Sphere','Cylinder'] ), - b_Cube = BLOC( condition = 'Box == "Cube"', - #Taille_Box_Englobante = SIMP( statut='o', typ='R', max=3, min =3) - # derait etre un Tuple(3) mais a faire apres la projection - #Size_Of_Bounding_Box = SIMP( statut='o', typ=Tuple(3), validators=VerifTypeTuple(('R','R','R'),),) - Size_Of_Bounding_Box = SIMP( statut='o', typ='R', max=3, min=3, ), - ), # fin b_Cube - b_Boule = BLOC( condition = 'Box == "Sphere"', - Center = SIMP( statut='o', typ='R', max=3, min =3), - ),# fin b_Boule - b_Cylinder = BLOC( condition = 'Box == "Cylinder"', - Heigth = SIMP( statut="o", typ='R', val_min=0.0, ang='Nanotube length [m]'), - ),# fin b_Tube - b_Boule_ou_Cylinder = BLOC( condition = 'Box == "Sphere" or Box == "Cylinder"', - Radius = SIMP( statut='o', typ='R', val_min=0.0, ang='radius length [m]') , - ),# fin b_Boule_ouCylinder - ), # fin b_Shape - b_CAO = creeBlocPourLesFichiers( "Shape_Nature == 'CAD'",'Domain_File', ['txt','I-deas', 'Gmsh', 'top',]), - ShapeIdentifier=SIMP( statut='o', typ=(cadShape,'createObject'),max='**',), - ), - ),# System_Geometry - Spatial_Discretization = FACT ( statut='f', - Mesh_Name = SIMP( statut='o', typ=(meshIdentifier,'createObject')), - b_Mesh = creeBlocPourLesFichiers( "1 == 1",'Domain_File', ['med', 'Gmsh',]), - GroupIdentifier = SIMP( statut='o', typ=(meshGroup,'createObject'),max='**',), - ), - Boundary_Constraints = FACT (statut = 'f', - Motion = FACT ( statut='f', - Motion_Nature = SIMP(statut='o', typ='TXM', into=['Fixed boudary', 'Translational motion', 'Rotational motion', 'Scaling']), - b_Translational_motion=BLOC(condition = 'Motion_Nature == "Translational motion"', - Translation_Velocity=SIMP( statut='o', typ='R'), - boundaries=SIMP( statut='o', typ=spatialRegion,max='**' ), - ), - b_Rotational_motion=BLOC(condition = 'Motion_Nature == "Rotational motion"', - Rotation_Rate=SIMP( statut='o', typ='R'), - boundaries=SIMP( statut='o', typ=spatialRegion,max='**' ), - ), - b_fixed=BLOC(condition = 'Motion_Nature == "Fixed boudary"', - #boundaries=SIMP( statut='o', typ=spatialRegion,max='**', homo='SansOrdreNiDoublon'), - boundaries=SIMP( statut='o', typ=spatialRegion,max='**' ), - ), - ), -#PN decrire page 28 - Mapping = FACT ( statut='f', - ), - ), -) # fin Geometric_Domain - - - - diff --git a/Vimmp/OLD/cata_CSAndCPS_v2_test_driver_1.comm b/Vimmp/OLD/cata_CSAndCPS_v2_test_driver_1.comm deleted file mode 100644 index 2946f69c..00000000 --- a/Vimmp/OLD/cata_CSAndCPS_v2_test_driver_1.comm +++ /dev/null @@ -1,71 +0,0 @@ -P1=userDiscrete() -CS_num_FV=modeleNumDuCompo() -CS_num_CFD_Discrete_Particles=modeleNumDuCompo() -half_pipe=meshIdentifier() -inlet=meshGroup() -outlet=meshGroup() -wall=meshGroup() -symetry=meshGroup() -SD_11=meshGroup() -inlet1=meshGroup() -half_pipe2=meshIdentifier() - -Spatial_Aspects(Spatial_Discretization=(_F(Mesh_Name=half_pipe, - FileFormat='med', - FileName='/home/eric/VIMMP/vimmptraining/app/fluide+particule/datafiles/half_pipe.med', - GroupIdentifier=(inlet,outlet,wall,symetry,SD_11,),), - _F(Mesh_Name=half_pipe2, - FileFormat='med', - FileName='/home/eric/VIMMP/vimmptraining/app/fluide+particule/datafiles/half_pipe.med', - GroupIdentifier=(inlet1,),),),); - -FluidComponent=Component(SystemType='Continuum system', - PhysicalDescription=_F(FluidComplexe=False, - FlowNature='Turbulent', - TurbulenceForFlowDynamics=_F(TurbulenceModellingType='One-point moment', - RANSModel='Turbulent-Viscosity Model(TVM)', - TVMChoice='k-epsilon',), - Thermal=_F(ThermalEffects='Non thermal', - DensityEquationOfState='Constant density',),), - NumericalModel=_F(Identifier=CS_num_FV, - ModelType='Fields', - Mesh_Identifiers=None, - NumericalMethod='FV', - Solver='Code_Saturne',),); - -PartComponent=Component(SystemType='Classical particle system', - PhysicalDescription=_F(Particle=_F(ParticleNature='Discrete Particle', - DiscreteParticleName=P1, - TypeOfDiscreteParticle='Solid', - TypeOfSolid='Primary Particle', - Properties=_F(Geometry='Sphere', - ParticleRadius=99.0, - Weight=_F(Mass=99.0, - Density=99.0,), - Mechanical='Rigid',), - List_Of_Interactions=_F(Bonded_Interactions=_F( - Type_Of_Bonded_Interaction='No',), - Unbonded_Interactions=_F( - Type_Of_Unbonded_Interaction='No',), - External_Field_Interaction=_F( - Type_Of_Interaction_With_An_External_Field='No',),),),), - NumericalModel=_F(Identifier=CS_num_CFD_Discrete_Particles, - ModelType='Particles', - NumericalMethod='CFD_Discrete_Particles', - Solver='Code_Saturne',),); - -Interactions(InteractionComposant=_F(origine=CS_num_FV, - destination=CS_num_CFD_Discrete_Particles, - termeLE='Fluid_Velocity_Field',),); - -sansnom=Component(SystemType='Continuum system', - PhysicalDescription=_F(FluidComplexe=False, - FlowNature=None, - Thermal=_F(ThermalEffects='Non thermal', - DensityEquationOfState='Constant density',),), - NumericalModel=_F(Identifier=None, - ModelType='Fields', - Mesh_Identifiers=(half_pipe,), - NumericalMethod='FV', - Solver=None,),); -#CHECKSUM:cfeb01a69d022d11f6ec99fd0baf183e -:FIN CHECKSUM \ No newline at end of file diff --git a/Vimmp/OLD/cata_CSAndCPS_v3.py b/Vimmp/OLD/cata_CSAndCPS_v3.py deleted file mode 100644 index e7555241..00000000 --- a/Vimmp/OLD/cata_CSAndCPS_v3.py +++ /dev/null @@ -1,687 +0,0 @@ -from Accas import * - -class composant(ASSD):pass -class mapper(ASSD):pass -class converter(ASSD):pass -class modeleNumDuCompo(UserASSD):pass -class especeChimique(UserASSD):pass -class userParticle(UserASSD) :pass -class userAtom(userParticle) :pass -class userMolecule(userParticle) :pass -class userDiscrete(userParticle) :pass -class userDPD(userParticle) :pass - -class spatialRegion(UserASSD):pass -class cadShape(spatialRegion):pass -#class meshGroup(spatialRegion,UserASSDMultiple):pass -class meshGroup(spatialRegion):pass -class meshIdentifier(spatialRegion):pass - -class scalar(UserASSD):pass -class mapper2(UserASSD):pass - - -dictSystemTypeModeleNumerique = { 'Quantum system' : (), - 'Classical particle system' : ('MD', 'DPD', 'LBM', 'SDPD','SPH','CFD_Discrete_Particles'), - 'Continuum system' :('Fluid_Fields','Fluid_Particles', 'SPH','Lagrangian one-particle pdf'), - } - -# PN a faire --> ajouter un MC modeleNumerique ( apres avoir renomme le modeleNumerique actuel en classe de modele numerique) et le dictionnaire d apres -dictTypModNumModNum = { - ('Continuum system','Particles') : ('SPH','Lagrangian one-fluid-particle pdf'), - ('Continuum system','Fields') : ('FV','FEM', 'Spectral method'), - ('Classical particle system','Particles') : ('MD', 'DPD', 'SDPD','SPH','CFD_Discrete_Particles'), - ('Classical particle system','Fields') : ('LBM',), - ('Quantum system','Particles') : ('Particle method',), - ('Quantum system','Fields') : ('Wave',), -} - -dictCodeModeleNumerique = { - - 'Code_Saturne' : ('Lagrangian one-fluid-particle pdf', 'FV', 'CFD_Discrete_Particles',), - 'Fluent' : ('FV',), - 'Culgi Package': (), - 'DEM_SD' : ('Lagrangian one-fluid-particle pdf', 'FV', 'CFD_Discrete_Particles',), - 'DFTB+' : ('density functional tight binding method',), - 'DL_MESO_DPD' : ('Lagrangian one-fluid-particle pdf', 'FV', 'CFD_Discrete_Particles',), - 'DL_MESO_LBE' : ('Lagrangian one-fluid-particle pdf', 'FV', 'CFD_Discrete_Particles',), - 'DL_POLY_4' : ('Lagrangian one-fluid-particle pdf', 'FV', 'CFD_Discrete_Particles',), - 'GROMACS' : ('Lagrangian one-fluid-particle pdf', 'FV', 'CFD_Discrete_Particles',), - 'GROMACS_LS' : ('Lagrangian one-fluid-particle pdf', 'FV', 'CFD_Discrete_Particles',), - 'LAMMPS' : ('Lagrangian one-fluid-particle pdf', 'FV', 'CFD_Discrete_Particles',), - 'NWChem' : ('Lagrangian one-fluid-particle pdf', 'FV', 'CFD_Discrete_Particles',), - 'OpenFOAM' : ('Lagrangian one-fluid-particle pdf', 'FV', 'CFD_Discrete_Particles',), - 'Quantum EXPRESSO' : ('Particle method', 'Wave',), - 'RHEO_AGGRATE' : ('Particle method', 'Wave',), - 'RHEO_DROP' : ('Particle method', 'Wave',), - 'STAR_CCM+' : ('FV', 'Particles',), - 'Code Nill' : ('Spectral method', ), -} - -dictCodeFormat = { - 'Code_Saturne' : ('Med', 'cgns', 'msh', 'des', 'unv', ), - 'Culgi Package': ('cof',), - 'DEM_SD' : ('geo', 'ascii'), - 'DFTB+' : ('geo', 'ascii'), - 'Fluent' : ('FluentFormat', ), - 'OpenFOAM' : ('OpenFoamFormat', 'Med', ), -} - -dictMapperFormat = { - 'Med Coupling' : ('Med',), - 'Gmsh' : ('Med', 'OpenFoamFormat'), -} - -dictTermeLE = { - ('Fields','Particles') : ('Fluid_Velocity_Field', - 'Fluid_Temperature_Field', - 'Fluid_Species_Mass_Fraction_Fluid',), - ('Particles','Fields') : ('Fluid_Particle_Momentum_Exchange_Field', - 'Fluid_Particle_Thermal_Exchange_Field', - 'Lagrangian one-particle pdfFluid_Particle_Mass_Source_Field', - 'Particle_Volumetric_Concentration_Modified_Fluid_Viscosity', - 'Particle_Extra_Stress_Tensor'), -} - -dictCodeConvertisseur = { - ('Saturne', 'OpenFOAM') : ('gmsh', 'Saturne2CDM and CDM2OpenFoam'), - ('Saturne', 'Fluent') : ( 'Saturne2CDM and CDM2Fluent'), - ('Fluent', 'OpenFOAM') : ('Fluent2CDM and CDM2OpenFoam'), - } - -def prepareBlocSystemType(systemType) : - condition = "SystemType == '" + systemType + "'" - Identifier = SIMP(statut='o', typ=(modeleNumDuCompo,'createObject'),) - ModelType = SIMP(statut='o', typ='TXM', into = ('Particles', 'Fields'),position='global') - dicoArgs={} - for typeMod in ('Particles', 'Fields'): - conditionType = "ModelType == '" + typeMod + "'" - NumericalMethod = SIMP(statut='o',typ='TXM', into=dictTypModNumModNum[systemType, typeMod], - position='global_jdc', intoXML=allValueInDict(dictTypModNumModNum)) - bloc_meshRef = BLOC(condition = 'ModelType == "Fields" and NumericalMethod == "FV"', - Mesh_Identifiers = SIMP (statut ='o', max ='**', typ = meshIdentifier), - ) - dicoBloc = {} - for modeleNumerique in list(dictTypModNumModNum[systemType,typeMod]): - conditionNum = "NumericalMethod == '" + modeleNumerique + "'" - setCode = set() - for code in dictCodeModeleNumerique.keys(): - if modeleNumerique in dictCodeModeleNumerique[code]: setCode.add(code) - Solver = SIMP(statut='o', typ='TXM', into=list(setCode), intoXML=list(dictCodeModeleNumerique.keys()) ) - monNomBloc='b_ModelName_' + modeleNumerique.replace(' ','_') - if setCode !=set(): dicoBloc[monNomBloc]=BLOC(condition=conditionNum, nomXML='b_ModelName',Solver=Solver) - dicoArgs['b_modelType'+typeMod] = BLOC(condition=conditionType, NumericalMethod=NumericalMethod,**dicoBloc) - NumericalModel = FACT(statut='o', max= '**', Identifier=Identifier, ModelType=ModelType,bloc_meshRef=bloc_meshRef, **dicoArgs) - return BLOC(condition=condition, nomXML='b_systemType', NumericalModel=NumericalModel) - -def calculCommun( key1, key2, dico): - monSet=set() - if not key1 in dico: return () - if not key2 in dico: return () - for val in dico[key1]: - if val in dico[key2]: - monSet.add(val) - if monSet == set() : monSet.add ('No common format') - return list(monSet) - -def allValueInDict( dico): - monSet=set() - for clef in dico : - for val in dico[clef] : monSet.add(val) - return monSet - -def creeBlocPourLesFichiers (laCondition, NomDuFichier, ListeFormats): - SIMPFormatFichier = SIMP(statut='o', typ = 'TXM', into = tuple(ListeFormats) + ('others',), ) - dicoDesBlocs = {} - for formatFich in ListeFormats : - nomBloc = 'b_format_fichier' + str(formatFich) - typeDesFichiers = ('Fichier', formatFich + " Files (*." + formatFich + ");;All Files (*)",) - blocCondition ="FileFormat == '" + formatFich + "'" - dicoDesBlocs[nomBloc] = BLOC( condition = blocCondition, FileName = SIMP(statut='o', typ = typeDesFichiers ),) - dicoDesBlocs['b_format_fichier_others'] = BLOC(condition="FileFormat == 'others'", FileName = SIMP(statut='o', typ = ('Fichier','All Files (*)'),),) - return BLOC(condition=laCondition, FileFormat = SIMPFormatFichier, **dicoDesBlocs) - -def champ(nomDelaContante, labels ,nbReels ) : -# ajouter les extensions pour le fichier et les blocs associes -# certains champs ne seront jamais uniformes - #Input_Mode = SIMP( statut='o', typ='TXM', into=('uniform value','values directly assigned','values read in file','analytical function', 'call to a service')), -#PNPN : Passer le nom du champ pour le label du vecteur - dicoBloc = {} - dicoBloc[nomDelaContante] = SIMP( statut='o', typ='R') - return FACT( statut='o', - Input_Mode = SIMP( statut='o', typ='TXM', into=('uniform value','values directly assigned','values read in file','analytical function',)), - b_uniforme = BLOC( condition = "Input_Mode == 'uniform value'", **dicoBloc), - b_vsaisies = BLOC( condition = "Input_Mode == 'values directly assigned'", - Field = SIMP( typ='R', statut='o', max ='**'), - #Vecteur = SIMP( fenetreIhm='Tableau', homo = labels, - # statut='o', min=2, max='**', - # typ=Tuple(nbReels), - # validators=VerifTypeTuple(("'R',"*nbReels),),) # end particle - ), #b_vsaisie - b_vdsfich = BLOC( condition = "Input_Mode == 'values read in file'", - Format = SIMP( statut='o', typ='TXM', into=['txt','Med',], position='global' ), - td_txt = BLOC(condition = 'Format == "txt"', - File = SIMP( statut='o', typ=('Fichier','Text Files(*.txt);All Files (*)'),), - ), - td_med_1 = BLOC( condition = 'Format == "Med"', - File = SIMP( statut='o', typ=('Fichier','Med Files(*.med);All Files (*)'),), - ), - td_med_2 = BLOC( condition = 'Format == "Med"', - FieldName = SIMP( statut='o', typ='TXM',), - ), - ), - b_vfct = BLOC( condition = "Input_Mode == 'analytical function'", - Function = SIMP( statut='o', typ='TXM',), - ), - #b_vserc = BLOC( condition = "Input_Mode == 'call to a service'", - # Service = SIMP( statut='o', typ='TXM',), - #), - ) - - - - -def FactTurbulence(statut, ajout=None): - listInto = ['No Model (DNS)', 'Spatial filtering (LES)', 'One-point moment', 'One-point PDF'] - if ajout != None : listInto.append(ajout) - return FACT (statut=statut, - TurbulenceModellingType = SIMP(typ='TXM', statut='o', into =listInto, ), - bloc_one_point = BLOC(condition= "TurbulenceModellingType == 'One-point moment'", - RANSModel = SIMP(statut="o", typ="TXM", into=['Turbulent-Viscosity Model(TVM)', 'Reynolds Stress Model (RSM)']), - bloc_TVM = BLOC(condition= "RANSModel == 'Turbulent-Viscosity Model(TVM)'", - TVMChoice = SIMP(typ='TXM', statut='o', into=['k-epsilon', 'k-omega']), - ), # fin bloc_TVM - bloc_RSM = BLOC(condition = "RANSModel == 'Reynolds Stress Model (RSM)'", - RSMChoice = SIMP(typ='TXM', statut='o', into=['Rotta', 'LRR-IP','LRR-QI','SSG']), - ), # fin bloc_RSM - ), # fin bloc_one_point - bloc_one_spatial = BLOC(condition = "TurbulenceModellingType == 'Spatial filtering (LES)'", - ChoiceOfApproach = SIMP(typ='TXM', statut='o', into=['Field-based LES', 'Filtered Density Function (FDF)']), - SubgridScaleModel = SIMP(typ='TXM', statut='o', into=['No SGS', 'Smagorinsky','Dynamical model', 'SGS Transport Equations']), - ), # fin bloc_one_spatial - bloc_one_point_pdf = BLOC(condition = "TurbulenceModellingType == 'One-point PDF'", - ChoiceOfApproach = SIMP(typ='TXM', statut='o', into=['One-point Eulerian PDF', 'One-particle Lagrangian PDF']), - bloc_lagrangian_pdf=BLOC(condition = "ChoiceOfApproach == 'One-particle Lagrangian PDF'", - StochasticModel = SIMP(typ='TXM', statut='o', into=['Langevin','Other'], defaut='Langevin'), - )# fin lagrangian - ), # fin bloc_one_point_pdf - bloc_no_model = BLOC(condition = "TurbulenceModellingType == 'No Model (DNS)'", - ChoiceOfApproach = SIMP(statut='o', typ='TXM', into=['Field-based DNS', 'N-Particle Method']), - bloc_Field = BLOC(condition = "ChoiceOfApproach == 'Field-based DNS'", - NumericalMethod=SIMP(statut='o', typ='TXM', into=['FV', 'Spectral Method']), - ),# fin bloc_Field - bloc_N_particle = BLOC(condition = "ChoiceOfApproach == 'N-Particle Method'", - NumericalMethod=SIMP(statut='o', typ='TXM', into=['SPH', 'Vortex Method']), - ),# fin bloc_N_particle - ), # fin bloc_no_model -)# fin du bloc return de la fonction factTurbulence - -def Particle(cardinalite) : - return FACT (statut='o', max=cardinalite, - ParticleNature = SIMP( statut='o', typ='TXM', into=['Atoms', 'Molecules', 'Dissipative', 'Fluid Particle', 'Discrete Particle']), - b_Atom = BLOC( condition='ParticleNature == "Atoms"', - AtomsName = SIMP( statut='o', typ=(userAtom,'createObject'),), - Atom = FACT (statut ='o', max= '**', - ChemicalSpecie = SIMP( statut='o', typ='TXM'), - Number = SIMP (statut ='o', typ = 'I'), - ElectricCharge = SIMP( statut='o', typ='R'), - MagneticMoment = SIMP( statut='o', typ='R'), - Size = SIMP( statut='f', typ='R'), # relevant ? - ), - ), - b_Molecule = BLOC( condition='ParticleNature == "Molecules"', - MoleculeName = SIMP( statut='o', typ=(userMolecule,'createObject'),), - ChemicalSpecie = FACT ( max='**', statut='o', - ChemicalSpecieName = SIMP( statut='o', typ=userAtom), - Proportion = SIMP( statut='o', typ='R', val_max =1), - ), - ElectricCharge = SIMP( statut='o', typ='R'), - MagneticMoment = SIMP( statut='o', typ='R'), - Shape = SIMP( statut='f', typ='TXM', into=['Linear', 'Trigonal Planar', 'Angular', 'Tetrahedral', 'Octahedral', 'Trigonal pyramid', 'Other']), - ), - b_Dissipative = BLOC( condition='ParticleNature == "Dissipative"', - DPDName = SIMP( statut='o', typ=(userDPD,'createObject'),), - BondedParticles = SIMP(statut="o", typ=bool, defaut=False), - ), - b_Discrete = BLOC( condition='ParticleNature == "Discrete Particle"', - DiscreteParticleName = SIMP(statut='o', typ=(userDiscrete,'createObject'),), - TypeOfDiscreteParticle = SIMP( statut='o', typ='TXM', into=['Solid', 'Droplets', 'Bubbles','Bio Organism'],), - b_TypeDP_Solid = BLOC( condition ='TypeOfDiscreteParticle == "Solid"', - TypeOfSolid = SIMP( statut='o', typ='TXM', into=['Primary Particle', 'Assemblage / Aggregate'], position = 'global'), - b_SolidPrimary = BLOC( condition='TypeOfSolid == "Primary Particle"', - ), - b_SolidAggregate = BLOC( condition='TypeOfSolid == "Assemblage / Aggregate"', - ), - ), - b_TypeBio_Solid = BLOC( condition='TypeOfDiscreteParticle == "Bio Organism"', - TypeOfOrganism = SIMP( statut='o', typ='TXM', into=['Unicellular', 'Multicellular']), - b_Unicellular = BLOC( condition ='TypeOfOrganism=="Unicellular"', - Unicellular = SIMP( statut='o', typ='TXM', into=["Bactaria"], defaut='Bactaria') - ), - b_Multicellular = BLOC( condition ='TypeOfOrganism=="Multicellular"', - Multicellular = SIMP( statut='o', typ='TXM', into=["Animal","Fongus","Plant"]) - ), - ), # b_TypeBio_Solid - Properties = FACT ( statut ='o', - Geometry = SIMP( statut='o', typ='TXM', into=['Sphere', 'Ellopsoids', 'Other Shape']), - b_geom_Sphere = BLOC( condition = 'Geometry == "Sphere"', - ParticleRadius = SIMP( statut='o', typ ='R', val_min = 0), - ), - Weight = FACT (statut = 'o', - Mass = SIMP( statut='o', typ ='R', val_min = 0), - Density = SIMP( statut='o', typ ='R', val_min = 0), - ), - Mechanical = SIMP( statut='o', typ='TXM', into=['Rigid', 'Flexible', 'Deformable']), - b_SolidAggregate = BLOC( condition='TypeOfSolid == "Assemblage / Aggregate"', - Morphological = FACT (statut = 'o', - Consigne = SIMP(statut="o", homo="information", typ="TXM", defaut='Choose optional properties'), - FractalDimension = SIMP( statut='f', typ='R'), - NumberOfPrimaryParticle = SIMP (statut ='f',typ='I'), - EquivalentSize = SIMP( statut='f', typ='R'), - Porosoty = SIMP( statut='f', typ='R'), - ), # Morphological - ), # b_SolidAggregate - ElectroMagnetic = FACT (statut = 'f', - ElectricCharge = SIMP( statut='o', typ='R'), - MagneticMoment = SIMP( statut='o', typ='R'), - ), - b_SolidAggregateBonded = BLOC( condition='TypeOfSolid == "Assemblage / Aggregate"', - BondedParticles = FACT( - ListOfBondedParticles = SIMP(statut='o', max='**', typ = userParticle), - ), - ), - ), # Properties - ), # b_Discrete -############################ - - List_Of_Bonded_Particles = FACT( statut='f', - # -------------------------------------------# - Bonded_Particles = FACT( statut='o', max = "**", - Name_Of_Bonded_Particles = SIMP( statut='o', typ='TXM'), - Species_in_Particle = SIMP( statut='o', min=2, typ='TXM' , max = "**"), - ), # Bonded_Particles - ), # List_Of_Bonded_Particles - - List_Of_Interactions = FACT( statut='o', max = "**", - # --------------------------------------------------# - - Bonded_Interactions = FACT( statut='o', max = "**", - - #Type_Of_Bonded_Interaction = SIMP( statut='o', typ='TXM', into=['No', 'Covalent Bond Length', 'FENE', 'Covalent Bond Angle', 'Dihedral Angles', 'Improper Dihedral', 'Frozen Motion' ], defaut='No', position='global'), - Type_Of_Bonded_Interaction = SIMP( statut='o', typ='TXM', into=['No', 'Covalent Bond Length', 'FENE', 'Covalent Bond Angle', 'Dihedral Angles', 'Improper Dihedral', 'Frozen Motion' ], defaut='No'), - - #La saisie de l'ensemble des liaisons d'un meme type peut se faire ds le meme bloc (soit ds un fichier, soit manuelle) - #Une seule valeur de distante? est a saisir pour l'ensemble - # bloc_covalent_1 = BLOC( condition = 'Type_Of_Bonded_Interaction in ("Covalent Bond Length","FENE")', - # ), # fin bloc_covalent_1 - bloc_covalent_length = BLOC( condition = 'Type_Of_Bonded_Interaction == "Covalent Bond Length"', - Interaction_Length_Parameters = FACT( statut='o', max="**", - Apply_To_Bonded_Particles = SIMP( statut='o', max='**', typ='TXM'), - Spring_Stifness = SIMP( statut='o', typ='R', val_min=0), - Mean_Bond_Length = SIMP( statut='o', typ='R', val_min=0), - ), # fin Interation_Length_Parameters - ), # fin Bond_Length_Parameters - bloc_covalent_angle = BLOC( condition = 'Type_Of_Bonded_Interaction == "Covalent Bond Angle"', - Interaction_Angles_Parameters = FACT( statut='o', max="**", - Apply_To_Bonded_Particles = SIMP( statut='o', max='**', typ='TXM'), - Spring_Stifness = SIMP( statut='o', typ='R', val_min=0), - Mean_Bond_Angle = SIMP( statut='o', typ='R', val_min=0), - ), # fin Interation_Angles_Parameters - ), # fin bloc_covalent_length_and_angle - - #bloc_covalent_length_and_angle = BLOC( condition = 'Type_Of_Bonded_Interaction == "Covalent Bond Length" or Type_Of_Bonded_Interaction == "Covalent Bond Angle"', - # Bond_Parameters = FACT( statut='o', max="**", - # Apply_To_Bonded_Particles = SIMP( statut='o', max='**', typ='TXM'), - # Spring_Stifness = SIMP( statut='o', typ='R', val_min=0), - # bloc_covalent_length = BLOC( condition = 'Type_Of_Bonded_Interaction == "Covalent Bond Length"', - # Mean_Bond_Length = SIMP( statut='o', typ='R', val_min=0), - # ), # fin Bond_Length_Parameters - # bloc_covalent_angle = BLOC( condition = 'Type_Of_Bonded_Interaction == "Covalent Bond Angle"', - # Mean_Bond_Angle = SIMP( statut='o', typ='R', val_min=0), - # ), # fin Bond_Length_Parameters - # ), # fin Bond_Length_Parameters - #), # fin bloc_covalent_length_and_angle - - bloc_FENE = BLOC( condition = 'Type_Of_Bonded_Interaction == "FENE"', - Applies_To_All_Particles = SIMP( statut='o', typ=bool, defaut=True), - bloc_not_on_all = BLOC( condition = 'Applies_To_All_Particles == False', - FENE_Parameters = FACT( statut='o', max="**", - Species_Pair = SIMP( statut='o', max=2, typ='TXM'), - Spring_Constant_H = SIMP( statut='o', typ='R', val_min=0), - LMax = SIMP( statut='o', typ='R', val_min=0), - ), # fin FENE_Parameters - ), # fin bloc_not_on_all - bloc_on_all = BLOC( condition = 'Applies_To_All_Particles == True', - Spring_Constant_H = SIMP( statut='o', typ='R', val_min=0), - LMax = SIMP( statut='o', typ='R', val_min=0), - ), # fin bloc_on_all - ), # fin bloc_FENE - - bloc_le_reste = BLOC( condition = 'Type_Of_Bonded_Interaction in ("Dihedral Angles", "Improper Dihedral", "Frozen Motion")', - Particle_Name = SIMP( statut="f", typ='TXM'), - #Consigne = SIMP( statut="o", homo="information", typ="TXM", defaut='Not Implemented Yet'), - - ), - ), # fin Bonded_Interaction - - # ------------------------------- # - - Unbonded_Interactions = FACT( statut='o', max= "**", - - Type_Of_Unbonded_Interaction = SIMP( statut='o', typ='TXM', into=['No', 'electro_magnetic', 'Repulsion_and_VdW', 'Soft_Potentiel', ], defaut='No', position='global',fenetreIhm='menuDeroulant'), - - bloc_elec = BLOC( condition = 'Type_Of_Unbonded_Interaction == "electro_magnetic"', - Permittivity = SIMP( statut='o', typ='R', position='global_jdc'), - Magnetic = SIMP( statut='o', typ=bool, defaut=False,), - bloc_magnetic = BLOC( condition = 'Magnetic == True', - Permability = SIMP( statut='o', typ='R'), - ), # bloc_magnetic - ),# fin bloc_elec - - bloc_VdW = BLOC( condition = 'Type_Of_Unbonded_Interaction == "Repulsion_and_VdW"', - Species_Pair_Parameters = FACT( statut='o', max="**", - Type_Repulsion_and_VdW = SIMP( statut='o', typ='TXM', into = [ 'Lennard_Jones', 'Hard_sphere_model']), - Species_Pair = SIMP( statut='o', max=2, typ='TXM'), - VdW_Radius = SIMP( statut='o', typ='R', val_min=0), - b_Lennard = BLOC( condition = "Type_Repulsion_and_VdW == 'Lennard_Jones'", - Depth_Of_The_Potential_Well = SIMP( statut='o', typ='R', val_min=0), - ), # fin b_Lennard - ), # fin Species_Pair_Parameters - ), # bloc_VdW - - b_Param_Soft_Potentiel = BLOC( condition = "Type_Of_Unbonded_Interaction == 'Soft_Potentiel'", - Groot_Warren_Repulsion = SIMP( statut='o', typ='R', defaut=25.0, val_min=0), - Groot_Warren_Cutoff = SIMP( statut='o', typ='R', defaut=1.0, val_min=0), - Drag_Coefficient = SIMP( statut='o', typ='R'), # les 2 valent 0 pour MD - Drag_Force_Cutoff = SIMP( statut='o', typ='R', val_min=0), - ), # b_Param_Soft_Potentiel - - ), # fin UnBonded_Interactions - - # ------------------------------- # - - External_Field_Interaction = FACT( statut='o', max= "**", - Type_Of_Interaction_With_An_External_Field = SIMP( statut='o', typ='TXM', into=['No','gravitational field','electric field','magnetic field', 'Hydrodynamic_Field'], fenetreIhm='menuDeroulant', defaut ='No'), - b_gravite = BLOC( condition = 'Type_Of_Interaction_With_An_External_Field=="gravitational field"', - G = SIMP( statut='o', typ='R', defaut=9.81), - ), - b_elect = BLOC( condition = 'Type_Of_Interaction_With_An_External_Field=="electric field"', - Electric_Field = champ('E', ('E',), 1), - ), - b_magnetic = BLOC( condition = 'Type_Of_Interaction_With_An_External_Field=="magnetic field"', - Magnetic_Field = champ('B', ('B',), 1), - ), - b_hydrodynamic = BLOC( condition = 'Type_Of_Interaction_With_An_External_Field=="hydrodynamic field"', - Hydrodynamic_Field = champ('U', ('U',), 1), - ), - b_External_Field_Interaction = BLOC( condition = 'Type_Of_Interaction_With_An_External_Field != "No"', - Field_Applies_On_All_Species = SIMP( statut='o', typ=bool, defaut=True), - b_porte_espece = BLOC( condition = 'Field_Applies_On_All_Species == False ', - Species_List = SIMP( statut='o', typ='TXM', max= '**'), # faire un typ = "espece" - ), - ), # fin b_External_Field_Interaction - ), # fin Interaction_External_Field - - ), # fin List_Of_Interactions - -############################ - ) - -def bloc_CPS(): - return BLOC(condition = 'SystemType == "Classical particle system"', - Particle = Particle('**'), -) - -def bloc_FluideMacro(): - return BLOC(condition = 'SystemType == "Continuum system"', - FluidComplexe = SIMP(typ=bool, statut='o', defaut = False,), - - FlowNature = SIMP(typ='TXM', statut='o', into =['Laminar', 'Turbulent'], position='global'), - bloc_FlowNature_Turbulent = BLOC(condition = ' FlowNature == "Turbulent"', - TurbulenceForFlowDynamics = FactTurbulence('o'), - ), #------ fin bloc_FlowNature_Turbulent - - -# ---------------------- Effets thermiques - - Thermal = FACT (statut ='o', - ThermalEffects = SIMP(typ='TXM', statut='o', into =['Non thermal', - 'No effect on flow dynamics', 'Effect on flow dynamics'], defaut='Non thermal'), - - bloc_NonThermalEffects = BLOC(condition = ' ThermalEffects == "Non thermal" or ThermalEffects == "No effect on flow dynamics"', - DensityEquationOfState = SIMP(typ='TXM', statut='o', into =['Constant density'], defaut = 'Constant density'), - ), # fin bloc_NonThermalEffects - - bloc_ThermalEffects_Active = BLOC(condition = ' ThermalEffects == "Effect on flow dynamics"', - DensityEquationOfState = SIMP(typ='TXM', statut='o', into =['Variable density', 'Compressible']), -# PNJPM est ce suffisant ? - ), # fin bloc_ThermalEffects_Active - bloc_ThermalEffects = BLOC(condition = ' ThermalEffects == "Effect on flow dynamics" or ThermalEffects == "No effect on flow dynamics"', - bloc_scalar_thermal_flux = BLOC (condition = "FlowNature == 'Turbulent'", - ThermalFluxModel = FactTurbulence('f'), - ),# fin bloc_scalar_thermal_flux - WithChemicalReactions = SIMP(typ=bool, statut ='o', defaut = False), - ), # fin bloc_ThermalEffects - ),# fin Fact Thermal - -# ---------------------- Scalaire additional - bloc_scalar_FluidTurbulentOrLaminar = BLOC(condition = "(FluidComplexe == False and FlowNature == 'Turbulent') or (FluidComplexe == False and FlowNature == 'Laminar')", - Scalars = FACT(statut = 'o', - bloc_FlowNature_Turbulent_For_Scalars = BLOC(condition = ' FlowNature == "Turbulent"', - ScalarsTurbulenceModelling = FactTurbulence('o', ajout='NoOne'), - ), - ImplicitScalar =FACT(statut ='o', - Name = SIMP(typ=(scalar,'createObject'), statut='o', defaut ='ObligatoireScalaire', homo='constant'), - bloc_scalar_FluidTurbulentandNonComplexe = BLOC (condition = "FlowNature == 'Turbulent'", - ImplicitScalarFluxModel = FactTurbulence('f'), - ) # bloc_scalar_FluidTurbulentandNonComplexe - ),# ObligatoireScalaire - Scalar = FACT(statut = 'o', max ='**', - Name = SIMP(typ=(scalar,'createObject'), statut='o',), - bloc_scalar_FluidTurbulentandNonComplexe = BLOC (condition = "FlowNature == 'Turbulent'", - ScalarFluxModel = FactTurbulence('f'), - ) # bloc_scalar_FluidTurbulentandNonComplexe - ),# Scalar - ),# AdditionalScalars - ), # fin FluidTurbulentandNonComplexe - #bloc_scalar_FluidLaminaireandNonComplexe = BLOC (condition = "FluidComplexe == False and FlowNature == 'Laminar'", - # AdditionalScalars = FACT (statut = 'o', - # Scalar = FACT ( statut = 'f', max ='**', - # Name = SIMP(typ='TXM', statut='o',), - # ),# Scalar - # ),# AdditionalScalars - #), # fin FluidLaminaireandNonComplexe - # il faut une validation de coherence entre l existence de tous les turbulencesModelling - )# fin bloc_FluideMacro - -JdC = JDC_CATA ( - code = 'Vimmp', - # faire un validateur qui verifie que si on active reactions chimiques il faut que les masses molaires soient rentrees -) - -Component = OPER(nom='Component', sd_prod=composant, - SystemType = SIMP(typ='TXM', into=['Quantum system', 'Classical particle system', 'Continuum system'], statut='o',position='global'), - PhysicalDescription = FACT(statut = 'o', - b_FluideMacro = bloc_FluideMacro(), - b_bloc_CPS = bloc_CPS(), - ), - b_ModeleNumerique_quantum = prepareBlocSystemType('Quantum system'), - b_ModeleNumerique_classical = prepareBlocSystemType('Classical particle system'), - b_ModeleNumerique_continuum = prepareBlocSystemType('Continuum system'), -) - -Species = PROC(nom='Species', - Specie = FACT( statut='o', max ="**", - Name = SIMP( statut='o', typ=(especeChimique,'createObject') ), - masse_molaire = SIMP( statut='f', typ='R',), - ) -) - -def monBlocInteractionTypeChamp (): - return BLOC (condition = '1 == 1' , # a distinguer selon les cas - fieldNameInOrigine = SIMP(typ='TXM', statut='o'), - fieldNameInDestination = SIMP(typ='TXM', statut='o'), - ) - -def TousSelonLeTypeDeFormatDisponible(condition, labelName='fileName'): - transferType = SIMP(typ='TXM', statut='o', into =['File', 'Memory', 'CorbaObject']) - maListe = list(dictCodeFormat.keys()) - dicoArgs={} - #index=0 - #for Solv1 in maListe[index:]: - # for Solv2 in maListe[index:]: - # #print (Solv1,Solv2, calculCommun(Solv1, Solv2,dictCodeFormat)) - # print ('PNPN attention changement de dictCodeFormat tant que getEficasAttribut n est pas correct') - # conditionSolv = 'transferType == "File" and getEficasAttribut(origine,"Solver")==Solv1 and getEficasAttribut(destination,"Solver")==Solv2' , - # conditionSolv = 'transferType == "File"' - # monBlocFichier=creeBlocPourLesFichiers (conditionSolv, 'FileName', calculCommun(Solv1, Solv2,dictCodeFormat)) - # dicoArgs['monBlocFichier'+str(index)]=monBlocFichier - # index=index+1 - mesFormats=set() - for solv1 in dictCodeFormat.keys() : - for f in dictCodeFormat[solv1] : mesFormats.add(f) - conditionSolv='transferType == "File"' - BlocFichier=creeBlocPourLesFichiers (conditionSolv, labelName, mesFormats) - dicoArgs['BlocFichier']=BlocFichier - monBlocChamp = BLOC(condition = "transferType=='File'", FieldName=SIMP(typ='TXM', statut='o')) - dicoArgs['monBlocChamp']=monBlocChamp - return BLOC(condition = condition,transferType=transferType, **dicoArgs) - -def SelonLeTypeDeFormatDisponibleMapper(condition): - transferType = SIMP(typ='TXM', statut='o', into =['File', 'Memory', 'CorbaObject']) - maListe = list(dictCodeFormat.keys()) - dicoArgs={} - index=0 - for Solv1 in maListe[index:]: - for Solv2 in maListe[index:]: - #print (Solv1,Solv2, calculCommun(Solv1, Solv2,dictCodeFormat)) - print ('PNPN attention changement de dictCodeFormat tant que getEficasAttribut n est pas correct') - conditionSolv = 'transferType == "File" and getEficasAttribut(origine,"Solver")==Solv1 and getEficasAttribut(destination,"Solver")==Solv2' , - conditionSolv = 'transferType == "File"' - monBlocFichier=creeBlocPourLesFichiers (conditionSolv, 'FileName', calculCommun(Solv1, Solv2,dictCodeFormat)) - dicoArgs['monBlocFichier'+str(index)]=monBlocFichier - index=index+1 - monBlocChamp = BLOC(condition = "transferType=='File'", FieldName=SIMP(typ='TXM', statut='o')) - dicoArgs['monBlocChamp']=monBlocChamp - return BLOC(condition = condition,transferType=transferType, **dicoArgs) - -Mapper = OPER (nom= 'Mapper',sd_prod=mapper, - Solver=SIMP(statut='o', typ='TXM', into = list(dictMapperFormat.keys())), - ) -Converter = OPER (nom= 'Converter',sd_prod=converter) - -Interactions = PROC(nom='Interactions', - Interaction = FACT( max = '**', - origine = SIMP(typ=modeleNumDuCompo, statut='o'), - destination = SIMP(typ=modeleNumDuCompo, statut='o'), -# PN a derouler avec une fonction - monBloc_FFDP = BLOC ( - condition = 'getEficasAttribut(origine,"ModelType") == "Fields" and getEficasAttribut(destination,"ModelType") == "Particles"' , - termeLE = SIMP(typ='TXM', statut='o', into = dictTermeLE['Fields','Particles'],fenetreIhm='menuDeroulant'), - ), - monBloc_DPFF = BLOC ( - condition = 'getEficasAttribut(origine,"ModelType") == "Particles" and getEficasAttribut(destination,"ModelType") == "Fields"' , - termeLE = SIMP(typ='TXM', statut='o', into = dictTermeLE['Particles','Fields'],fenetreIhm='menuDeroulant'), - ), - couplingPart = FACT( statut='o', - couplingMode = SIMP(typ='TXM', statut='o', into =['direct', 'scaling','use converter']), - monBlocDirect = TousSelonLeTypeDeFormatDisponible( "couplingMode=='direct'" ), - monBlocIn = BLOC ( condition = "couplingMode=='scaling'", - OutFromComponent = FACT( statut='o', - monBlocFormat = TousSelonLeTypeDeFormatDisponible( "1", labelName = 'outFromMapperFileName' ), - ), - ), - monBlocMapper = BLOC ( condition = "couplingMode=='scaling'", - ConversionNode = FACT( min=1, max='**', statut ='o', - #MapperInformation = FACT (statut ='o', - myMapper = SIMP(typ=mapper, statut ='o'), - mesParametres = FACT (statut ='o', monParametreQuiDependDeTermeLESiCelaExiste= SIMP(statut='o', typ='I')), - #), - #couplingMode = SIMP(typ='TXM', statut='o', into =['direct', 'scaling','use converter']), - OutFromMapper = FACT (statut ='o', - monBlocFormat = TousSelonLeTypeDeFormatDisponible( "1", labelName = 'outFromMapperFileName' ), - ), - ), - ), - ), - monBlocUseConverter = BLOC ( condition = "couplingMode=='use converter'", - myConverter = SIMP(typ=converter, statut ='o') - ), - ), -) - -dict_condition={'NumericalMethod' : ('Interactions', 'Component'), -# 'TypeOfSolid' : ('Component',) -} - -Temporal_Aspects = PROC( nom ="Temporal_Aspects", - initialTime = SIMP( statut='o', typ='R'), - finalTime = SIMP( statut='o', typ='R'), - timeDiscretization = SIMP( statut ='o', typ = 'TXM', into = ['Constant Time Step', 'Varying Time Step']), - bloc_Constant = BLOC (condition = 'timeDiscretization == "Constant Time Step"', - constantTimeStep = SIMP (statut ='o', typ = 'R'), - ), - bloc_Varying = BLOC (condition = 'timeDiscretization == "Varying Time Step"', - CFLNumberCriteria = SIMP (statut ='o', typ = 'R'), - FourierNumberCriteria = SIMP (statut ='o', typ = 'R'), - timeStepFactor = SIMP (statut ='o', typ = 'R'), - ), -) -# -#Spatial_Aspects= OPER( nom='Spatial_Aspects', sd_prod=geometricDomain, -Spatial_Aspects = PROC( nom='Spatial_Aspects', - System_Geometry = FACT ( statut='f', - Shape = FACT (statut ='f', max='**', - Shape_Nature = SIMP( statut='o', typ='TXM', into=['Typical Geometry', 'CAD']), - b_Shape = BLOC( condition = 'Shape_Nature == "Typical Geometry"', - Box = SIMP( statut='o', typ='TXM', into=['Cube', 'Sphere','Cylinder'] ), - b_Cube = BLOC( condition = 'Box == "Cube"', - #Taille_Box_Englobante = SIMP( statut='o', typ='R', max=3, min =3) - # derait etre un Tuple(3) mais a faire apres la projection - #Size_Of_Bounding_Box = SIMP( statut='o', typ=Tuple(3), validators=VerifTypeTuple(('R','R','R'),),) - Size_Of_Bounding_Box = SIMP( statut='o', typ='R', max=3, min=3, ), - ), # fin b_Cube - b_Boule = BLOC( condition = 'Box == "Sphere"', - Center = SIMP( statut='o', typ='R', max=3, min =3), - ),# fin b_Boule - b_Cylinder = BLOC( condition = 'Box == "Cylinder"', - Heigth = SIMP( statut="o", typ='R', val_min=0.0, ang='Nanotube length [m]'), - ),# fin b_Tube - b_Boule_ou_Cylinder = BLOC( condition = 'Box == "Sphere" or Box == "Cylinder"', - Radius = SIMP( statut='o', typ='R', val_min=0.0, ang='radius length [m]') , - ),# fin b_Boule_ouCylinder - ), # fin b_Shape - b_CAO = creeBlocPourLesFichiers( "Shape_Nature == 'CAD'",'Domain_File', ['txt','I-deas', 'Gmsh', 'top',]), - ShapeIdentifier=SIMP( statut='o', typ=(cadShape,'createObject'),max='**',), - ), - ),# System_Geometry - Spatial_Discretization = FACT ( statut='f', max="**", - Mesh_Name = SIMP( statut='o', typ=(meshIdentifier,'createObject')), - b_Mesh = creeBlocPourLesFichiers( "1 == 1",'Domain_File', ['med', 'Gmsh',]), - GroupIdentifier = SIMP( statut='o', typ=(meshGroup,'createObject'),max='**',), - ), - Boundary_Constraints = FACT (statut = 'f', - Motion = FACT ( statut='f', - Motion_Nature = SIMP(statut='o', typ='TXM', into=['Fixed boudary', 'Translational motion', 'Rotational motion', 'Scaling']), - b_Translational_motion=BLOC(condition = 'Motion_Nature == "Translational motion"', - Translation_Velocity=SIMP( statut='o', typ='R'), - boundaries=SIMP( statut='o', typ=spatialRegion,max='**' ), - ), - b_Rotational_motion=BLOC(condition = 'Motion_Nature == "Rotational motion"', - Rotation_Rate=SIMP( statut='o', typ='R'), - boundaries=SIMP( statut='o', typ=spatialRegion,max='**' ), - ), - b_fixed=BLOC(condition = 'Motion_Nature == "Fixed boudary"', - #boundaries=SIMP( statut='o', typ=spatialRegion,max='**', homo='SansOrdreNiDoublon'), - boundaries=SIMP( statut='o', typ=spatialRegion,max='**' ), - ), - ), -#PN decrire page 28 - Mapping = FACT ( statut='f', - ), - ), -) # fin Geometric_Domain - - - - diff --git a/Vimmp/OLD/cata_CSAndCPS_v3_test_driver_1.comm b/Vimmp/OLD/cata_CSAndCPS_v3_test_driver_1.comm deleted file mode 100644 index d27516dc..00000000 --- a/Vimmp/OLD/cata_CSAndCPS_v3_test_driver_1.comm +++ /dev/null @@ -1,78 +0,0 @@ -P1=userDiscrete() -CS_num_FV=modeleNumDuCompo() -CS_num_CFD_Discrete_Particles=modeleNumDuCompo() -half_pipe=meshIdentifier() -inlet=meshGroup() -outlet=meshGroup() -wall=meshGroup() -symetry=meshGroup() -SD_11=meshGroup() -inlet1=meshGroup() -half_pipe2=meshIdentifier() - -Simulated_Time_Lapse(Initial_Time=None, - Duration=None,); - -Spatial_Aspects(System_Geometry=_F(Shape=_F(Shape_Nature='Typical Geometry', - Box='Cube', - Size_Of_Bounding_Box=None, - ShapeIdentifier=None,),), - Spatial_Discretization=(_F(Mesh_Name=half_pipe, - FileFormat='med', - FileName='/home/eric/VIMMP/vimmptraining/app/fluide+particule/datafiles/half_pipe.med', - GroupIdentifier=(inlet,outlet,wall,symetry,SD_11,),), - _F(Mesh_Name=half_pipe2, - FileFormat='med', - FileName='/home/eric/VIMMP/vimmptraining/app/fluide+particule/datafiles/half_pipe.med', - GroupIdentifier=(inlet1,),),),); - -FluidComponent=Component(SystemType='Continuum system', - PhysicalDescription=_F(FluidComplexe=False, - FlowNature='Turbulent', - TurbulenceForFlowDynamics=_F(TurbulenceModellingType='One-point moment', - RANSModel='Turbulent-Viscosity Model(TVM)', - TVMChoice='k-epsilon',), - Thermal=_F(ThermalEffects='Non thermal', - DensityEquationOfState='Constant density',), - AdditionalScalars=_F(Scalar=(_F(Name=None, - ScalarFluxModel=_F(TurbulenceModellingType=\ - 'No Model (DNS)', - ChoiceOfApproach=None,),), - _F(Name=None,),),), - ScalarTurbulenceModelling=_F(TurbulenceModellingType=None,),), - NumericalModel=_F(Identifier=CS_num_FV, - ModelType='Fields', - NumericalMethod='FV', - Solver='Code_Saturne', - Mesh_Identifiers=(half_pipe,),),); - -PartComponent=Component(SystemType='Classical particle system', - PhysicalDescription=_F(Particle=_F(ParticleNature='Discrete Particle', - DiscreteParticleName=P1, - TypeOfDiscreteParticle='Solid', - TypeOfSolid='Primary Particle', - Properties=_F(Geometry='Sphere', - ParticleRadius=99.0, - Weight=_F(Mass=99.0, - Density=99.0,), - Mechanical='Rigid',), - List_Of_Interactions=_F(Bonded_Interactions=_F( - Type_Of_Bonded_Interaction='No',), - Unbonded_Interactions=_F( - Type_Of_Unbonded_Interaction='No',), - External_Field_Interaction=_F( - Type_Of_Interaction_With_An_External_Field='No',),),),), - NumericalModel=_F(Identifier=CS_num_CFD_Discrete_Particles, - ModelType='Particles', - NumericalMethod='CFD_Discrete_Particles', - Solver='OpenFOAM',),); - -Interactions(Interaction=_F(origine=CS_num_FV, - destination=CS_num_CFD_Discrete_Particles, - termeLE='Fluid_Velocity_Field', - fieldNameInOrigine=None, - fieldNameInDetgination=None, - transferType='File', - Format='Use converter', - converter='gmsh',),); -#CHECKSUM:5346559f3e67b54f3c07a0ea4d7a176b -:FIN CHECKSUM \ No newline at end of file diff --git a/Vimmp/OLD/cata_CSAndCPS_v4.py b/Vimmp/OLD/cata_CSAndCPS_v4.py deleted file mode 100644 index 5f80cd19..00000000 --- a/Vimmp/OLD/cata_CSAndCPS_v4.py +++ /dev/null @@ -1,704 +0,0 @@ -from Accas import * - -class composant(ASSD):pass -class mapper(ASSD):pass -class converter(mapper):pass -class modeleNumDuCompo(UserASSD):pass -class especeChimique(UserASSD):pass -class userParticle(UserASSD) :pass -class userAtom(userParticle) :pass -class userMolecule(userParticle) :pass -class userDiscrete(userParticle) :pass -class userDPD(userParticle) :pass - -class spatialRegion(UserASSD):pass -class cadShape(spatialRegion):pass -#class meshGroup(spatialRegion,UserASSDMultiple):pass -class meshGroup(spatialRegion):pass -class meshIdentifier(spatialRegion):pass -class systemGeometry(UserASSD):pass -class simulatedTime(UserASSD):pass - -class scalar(UserASSD):pass - - -#dictSystemTypeModeleNumerique = { 'Quantum system' : (), -# 'Classical particle system' : ('MD', 'DPD', 'LBM', 'SDPD','SPH','CFD_Discrete_Particles'), -# 'Continuum system' :('Fluid_Fields','Fluid_Particles', 'SPH','Lagrangian one-particle pdf'), -# } -# - -# PN a faire --> ajouter un MC modeleNumerique ( apres avoir renomme le modeleNumerique actuel en classe de modele numerique) et le dictionnaire d apres -dictTypModNumModNum = { - ('Continuum system','Particles') : ('SPH','Lagrangian one-fluid-particle pdf'), - ('Continuum system','Fields') : ('FV','FEM', 'Spectral method'), - ('Classical particle system','Particles') : ('MD', 'DPD', 'SDPD','SPH','CFD_Discrete_Particles'), - ('Classical particle system','Fields') : ('LBM',), - ('Quantum system','Particles') : ('Particle method',), - ('Quantum system','Fields') : ('Wave',), -} - -dictCodeModeleNumerique = { - - 'Code_Saturne' : ('Lagrangian one-fluid-particle pdf', 'FV', 'CFD_Discrete_Particles',), - 'Fluent' : ('FV',), - 'Culgi Package': (), - 'DEM_SD' : ('Lagrangian one-fluid-particle pdf', 'FV', 'CFD_Discrete_Particles',), - 'DFTB+' : ('density functional tight binding method',), - 'DL_MESO_DPD' : ('Lagrangian one-fluid-particle pdf', 'FV', 'CFD_Discrete_Particles',), - 'DL_MESO_LBE' : ('Lagrangian one-fluid-particle pdf', 'FV', 'CFD_Discrete_Particles',), - 'DL_POLY_4' : ('Lagrangian one-fluid-particle pdf', 'FV', 'CFD_Discrete_Particles',), - 'GROMACS' : ('Lagrangian one-fluid-particle pdf', 'FV', 'CFD_Discrete_Particles',), - 'GROMACS_LS' : ('Lagrangian one-fluid-particle pdf', 'FV', 'CFD_Discrete_Particles',), - 'LAMMPS' : ('Lagrangian one-fluid-particle pdf', 'FV', 'CFD_Discrete_Particles',), - 'NWChem' : ('Lagrangian one-fluid-particle pdf', 'FV', 'CFD_Discrete_Particles',), - 'OpenFOAM' : ('Lagrangian one-fluid-particle pdf', 'FV', 'CFD_Discrete_Particles',), - 'Quantum EXPRESSO' : ('Particle method', 'Wave',), - 'RHEO_AGGRATE' : ('Particle method', 'Wave',), - 'RHEO_DROP' : ('Particle method', 'Wave',), - 'STAR_CCM+' : ('FV', 'Particles',), - 'Code Nill' : ('Spectral method', ), -} - -dictCodeFormat = { - 'Code_Saturne' : ('Med', 'cgns', 'msh', 'des', 'unv', ), - 'Culgi Package': ('cof',), - 'DEM_SD' : ('geo', 'ascii'), - 'DFTB+' : ('geo', 'ascii'), - 'Fluent' : ('FluentFormat', ), - 'OpenFOAM' : ('OpenFoamFormat', 'Med', ), -} - -dictMapperFormat = { - 'Med Coupling' : ('Med',), - 'Gmsh' : ('Med', 'OpenFoamFormat'), -} - -dictTermeLE = { - ('Fields','Particles') : ('Fluid_Velocity_Field', - 'Fluid_Temperature_Field', - 'Fluid_Species_Mass_Fraction_Fluid',), - ('Particles','Fields') : ('Fluid_Particle_Momentum_Exchange_Field', - 'Fluid_Particle_Thermal_Exchange_Field', - 'Lagrangian one-particle pdfFluid_Particle_Mass_Source_Field', - 'Particle_Volumetric_Concentration_Modified_Fluid_Viscosity', - 'Particle_Extra_Stress_Tensor'), - ('Particles','Particles') : ('Pas encore fait'), - ('Fields','Fields') : ('Pas encore fait'), -} - -dictCodeConvertisseur = { - ('Saturne', 'OpenFOAM') : ('gmsh', 'Saturne2CDM and CDM2OpenFoam'), - ('Saturne', 'Fluent') : ( 'Saturne2CDM and CDM2Fluent'), - ('Fluent', 'OpenFOAM') : ('Fluent2CDM and CDM2OpenFoam'), - } - - -def prepareBlocSystemType(systemType) : - condition = "SystemType == '" + systemType + "'" - Identifier = SIMP(statut='o', typ=(modeleNumDuCompo,'createObject'),) - SimulatedTimeLapse = SIMP (statut ='o', typ = simulatedTime) - ModelType = SIMP(statut='o', typ='TXM', into = ('Particles', 'Fields'), position='inGetAttribut') - dicoArgs={} - - for typeMod in ('Particles', 'Fields'): - conditionType = "ModelType == '" + typeMod + "'" - NumericalMethod = SIMP(statut='o',typ='TXM', into=dictTypModNumModNum[systemType, typeMod], - position='global', intoXML=allValueInDict(dictTypModNumModNum)) - dicoBloc = {} - for modeleNumerique in list(dictTypModNumModNum[systemType,typeMod]): - conditionNum = "NumericalMethod == '" + modeleNumerique + "'" - setCode = set() - for code in dictCodeModeleNumerique.keys(): - if modeleNumerique in dictCodeModeleNumerique[code]: setCode.add(code) - Solver = SIMP(statut='o', typ='TXM', into=list(setCode), intoXML=list(dictCodeModeleNumerique.keys()) ) - monNomBloc='b_ModelName_' + modeleNumerique.replace(' ','_') - if setCode !=set(): dicoBloc[monNomBloc]=BLOC(condition=conditionNum, nomXML='b_ModelName',Solver=Solver) - dicoArgs['b_modelType'+typeMod] = BLOC(condition=conditionType, NumericalMethod=NumericalMethod,**dicoBloc) - - blocMeshRef = BLOC(condition = '(ModelType == "Fields") and (NumericalMethod == "FV")', - #blocMeshRef = BLOC(condition = 'NumericalMethod == "FV"', - Mesh_Identifiers = SIMP (statut ='o', max ='**', typ = meshIdentifier),) - dicoArgs['blocMeshRef'] = blocMeshRef - NumericalModel = FACT(statut='o', max= '**', Identifier=Identifier, ModelType=ModelType, - SimulatedTimeLapse=SimulatedTimeLapse, **dicoArgs) - return BLOC(condition=condition, nomXML='b_systemType', NumericalModel=NumericalModel) - -def calculCommun( key1, key2, dico): - monSet=set() - if not key1 in dico: return () - if not key2 in dico: return () - for val in dico[key1]: - if val in dico[key2]: - monSet.add(val) - if monSet == set() : monSet.add ('No common format') - return list(monSet) - -def allValueInDict( dico): - monSet=set() - for clef in dico : - for val in dico[clef] : monSet.add(val) - return monSet - -def creeBlocPourLesFichiers (laCondition, NomDuFichier, ListeFormats): - SIMPFormatFichier = SIMP(statut='o', typ = 'TXM', into = tuple(ListeFormats) + ('others',), ) - dicoDesBlocs = {} - for formatFich in ListeFormats : - nomBloc = 'b_format_fichier' + str(formatFich) - typeDesFichiers = ('Fichier', formatFich + " Files (*." + formatFich + ");;All Files (*)",) - blocCondition ="FileFormat == '" + formatFich + "'" - dicoDesBlocs[nomBloc] = BLOC( condition = blocCondition, FileName = SIMP(statut='o', typ = typeDesFichiers ),) - dicoDesBlocs['b_format_fichier_others'] = BLOC(condition="FileFormat == 'others'", FileName = SIMP(statut='o', typ = ('Fichier','All Files (*)'),),) - return BLOC(condition=laCondition, FileFormat = SIMPFormatFichier, **dicoDesBlocs) - -def champ(nomDelaContante, labels ,nbReels ) : -# ajouter les extensions pour le fichier et les blocs associes -# certains champs ne seront jamais uniformes - #Input_Mode = SIMP( statut='o', typ='TXM', into=('uniform value','values directly assigned','values read in file','analytical function', 'call to a service')), -#PNPN : Passer le nom du champ pour le label du vecteur - dicoBloc = {} - dicoBloc[nomDelaContante] = SIMP( statut='o', typ='R') - return FACT( statut='o', - Input_Mode = SIMP( statut='o', typ='TXM', into=('uniform value','values directly assigned','values read in file','analytical function',)), - b_uniforme = BLOC( condition = "Input_Mode == 'uniform value'", **dicoBloc), - b_vsaisies = BLOC( condition = "Input_Mode == 'values directly assigned'", - Field = SIMP( typ='R', statut='o', max ='**'), - #Vecteur = SIMP( fenetreIhm='Tableau', homo = labels, - # statut='o', min=2, max='**', - # typ=Tuple(nbReels), - # validators=VerifTypeTuple(("'R',"*nbReels),),) # end particle - ), #b_vsaisie - b_vdsfich = BLOC( condition = "Input_Mode == 'values read in file'", - Format = SIMP( statut='o', typ='TXM', into=['txt','Med',], position='global' ), - td_txt = BLOC(condition = 'Format == "txt"', - File = SIMP( statut='o', typ=('Fichier','Text Files(*.txt);All Files (*)'),), - ), - td_med_1 = BLOC( condition = 'Format == "Med"', - File = SIMP( statut='o', typ=('Fichier','Med Files(*.med);All Files (*)'),), - ), - td_med_2 = BLOC( condition = 'Format == "Med"', - FieldName = SIMP( statut='o', typ='TXM',), - ), - ), - b_vfct = BLOC( condition = "Input_Mode == 'analytical function'", - Function = SIMP( statut='o', typ='TXM',), - ), - #b_vserc = BLOC( condition = "Input_Mode == 'call to a service'", - # Service = SIMP( statut='o', typ='TXM',), - #), - ) - - - - -def FactTurbulence(statut, ajout=None): - listInto = ['No Model (DNS)', 'Spatial filtering (LES)', 'One-point moment', 'One-point PDF'] - if ajout != None : listInto.append(ajout) - return FACT (statut=statut, - TurbulenceModellingType = SIMP(typ='TXM', statut='o', into =listInto, ), - bloc_one_point = BLOC(condition= "TurbulenceModellingType == 'One-point moment'", - RANSModel = SIMP(statut="o", typ="TXM", into=['Turbulent-Viscosity Model(TVM)', 'Reynolds Stress Model (RSM)']), - bloc_TVM = BLOC(condition= "RANSModel == 'Turbulent-Viscosity Model(TVM)'", - TVMChoice = SIMP(typ='TXM', statut='o', into=['k-epsilon', 'k-omega']), - ), # fin bloc_TVM - bloc_RSM = BLOC(condition = "RANSModel == 'Reynolds Stress Model (RSM)'", - RSMChoice = SIMP(typ='TXM', statut='o', into=['Rotta', 'LRR-IP','LRR-QI','SSG']), - ), # fin bloc_RSM - ), # fin bloc_one_point - bloc_one_spatial = BLOC(condition = "TurbulenceModellingType == 'Spatial filtering (LES)'", - ChoiceOfApproach = SIMP(typ='TXM', statut='o', into=['Field-based LES', 'Filtered Density Function (FDF)']), - SubgridScaleModel = SIMP(typ='TXM', statut='o', into=['No SGS', 'Smagorinsky','Dynamical model', 'SGS Transport Equations']), - ), # fin bloc_one_spatial - bloc_one_point_pdf = BLOC(condition = "TurbulenceModellingType == 'One-point PDF'", - ChoiceOfApproach = SIMP(typ='TXM', statut='o', into=['One-point Eulerian PDF', 'One-particle Lagrangian PDF']), - bloc_lagrangian_pdf=BLOC(condition = "ChoiceOfApproach == 'One-particle Lagrangian PDF'", - StochasticModel = SIMP(typ='TXM', statut='o', into=['Langevin','Other'], defaut='Langevin'), - )# fin lagrangian - ), # fin bloc_one_point_pdf - bloc_no_model = BLOC(condition = "TurbulenceModellingType == 'No Model (DNS)'", - ChoiceOfApproach = SIMP(statut='o', typ='TXM', into=['Field-based DNS', 'N-Particle Method']), - bloc_Field = BLOC(condition = "ChoiceOfApproach == 'Field-based DNS'", - NumericalMethod=SIMP(statut='o', typ='TXM', into=['FV', 'Spectral Method']), - ),# fin bloc_Field - bloc_N_particle = BLOC(condition = "ChoiceOfApproach == 'N-Particle Method'", - NumericalMethod=SIMP(statut='o', typ='TXM', into=['SPH', 'Vortex Method']), - ),# fin bloc_N_particle - ), # fin bloc_no_model -)# fin du bloc return de la fonction factTurbulence - -def Particle(cardinalite) : - return FACT (statut='o', max=cardinalite, - ParticleNature = SIMP( statut='o', typ='TXM', into=['Atoms', 'Molecules', 'Dissipative', 'Fluid Particle', 'Discrete Particle']), - b_Atom = BLOC( condition='ParticleNature == "Atoms"', - AtomsName = SIMP( statut='o', typ=(userAtom,'createObject'),), - Atom = FACT (statut ='o', max= '**', - ChemicalSpecie = SIMP( statut='o', typ='TXM'), - Number = SIMP (statut ='o', typ = 'I'), - ElectricCharge = SIMP( statut='o', typ='R'), - MagneticMoment = SIMP( statut='o', typ='R'), - Size = SIMP( statut='f', typ='R'), # relevant ? - ), - ), - b_Molecule = BLOC( condition='ParticleNature == "Molecules"', - MoleculeName = SIMP( statut='o', typ=(userMolecule,'createObject'),), - ChemicalSpecie = FACT ( max='**', statut='o', - ChemicalSpecieName = SIMP( statut='o', typ=userAtom), - Proportion = SIMP( statut='o', typ='R', val_max =1), - ), - ElectricCharge = SIMP( statut='o', typ='R'), - MagneticMoment = SIMP( statut='o', typ='R'), - Shape = SIMP( statut='f', typ='TXM', into=['Linear', 'Trigonal Planar', 'Angular', 'Tetrahedral', 'Octahedral', 'Trigonal pyramid', 'Other']), - ), - b_Dissipative = BLOC( condition='ParticleNature == "Dissipative"', - DPDName = SIMP( statut='o', typ=(userDPD,'createObject'),), - BondedParticles = SIMP(statut="o", typ=bool, defaut=False), - ), - b_Discrete = BLOC( condition='ParticleNature == "Discrete Particle"', - DiscreteParticleName = SIMP(statut='o', typ=(userDiscrete,'createObject'),), - TypeOfDiscreteParticle = SIMP( statut='o', typ='TXM', into=['Solid', 'Droplets', 'Bubbles','Bio Organism'],), - b_TypeDP_Solid = BLOC( condition ='TypeOfDiscreteParticle == "Solid"', - TypeOfSolid = SIMP( statut='o', typ='TXM', into=['Primary Particle', 'Assemblage / Aggregate'], position = 'global'), - b_SolidPrimary = BLOC( condition='TypeOfSolid == "Primary Particle"', - ), - b_SolidAggregate = BLOC( condition='TypeOfSolid == "Assemblage / Aggregate"', - ), - ), - b_TypeBio_Solid = BLOC( condition='TypeOfDiscreteParticle == "Bio Organism"', - TypeOfOrganism = SIMP( statut='o', typ='TXM', into=['Unicellular', 'Multicellular']), - b_Unicellular = BLOC( condition ='TypeOfOrganism=="Unicellular"', - Unicellular = SIMP( statut='o', typ='TXM', into=["Bactaria"], defaut='Bactaria') - ), - b_Multicellular = BLOC( condition ='TypeOfOrganism=="Multicellular"', - Multicellular = SIMP( statut='o', typ='TXM', into=["Animal","Fongus","Plant"]) - ), - ), # b_TypeBio_Solid - Properties = FACT ( statut ='o', - Geometry = SIMP( statut='o', typ='TXM', into=['Sphere', 'Ellopsoids', 'Other Shape']), - b_geom_Sphere = BLOC( condition = 'Geometry == "Sphere"', - ParticleRadius = SIMP( statut='o', typ ='R', val_min = 0), - ), - Weight = FACT (statut = 'o', - Mass = SIMP( statut='o', typ ='R', val_min = 0), - Density = SIMP( statut='o', typ ='R', val_min = 0), - ), - Mechanical = SIMP( statut='o', typ='TXM', into=['Rigid', 'Flexible', 'Deformable']), - b_SolidAggregate = BLOC( condition='TypeOfSolid == "Assemblage / Aggregate"', - Morphological = FACT (statut = 'o', - Consigne = SIMP(statut="o", homo="information", typ="TXM", defaut='Choose optional properties'), - FractalDimension = SIMP( statut='f', typ='R'), - NumberOfPrimaryParticle = SIMP (statut ='f',typ='I'), - EquivalentSize = SIMP( statut='f', typ='R'), - Porosoty = SIMP( statut='f', typ='R'), - ), # Morphological - ), # b_SolidAggregate - ElectroMagnetic = FACT (statut = 'f', - ElectricCharge = SIMP( statut='o', typ='R'), - MagneticMoment = SIMP( statut='o', typ='R'), - ), - b_SolidAggregateBonded = BLOC( condition='TypeOfSolid == "Assemblage / Aggregate"', - BondedParticles = FACT( - ListOfBondedParticles = SIMP(statut='o', max='**', typ = userParticle), - ), - ), - ), # Properties - ), # b_Discrete -############################ - - List_Of_Bonded_Particles = FACT( statut='f', - # -------------------------------------------# - Bonded_Particles = FACT( statut='o', max = "**", - Name_Of_Bonded_Particles = SIMP( statut='o', typ='TXM'), - Species_in_Particle = SIMP( statut='o', min=2, typ='TXM' , max = "**"), - ), # Bonded_Particles - ), # List_Of_Bonded_Particles - - List_Of_Interactions = FACT( statut='o', max = "**", - # --------------------------------------------------# - - Bonded_Interactions = FACT( statut='o', max = "**", - - #Type_Of_Bonded_Interaction = SIMP( statut='o', typ='TXM', into=['No', 'Covalent Bond Length', 'FENE', 'Covalent Bond Angle', 'Dihedral Angles', 'Improper Dihedral', 'Frozen Motion' ], defaut='No', position='global'), - Type_Of_Bonded_Interaction = SIMP( statut='o', typ='TXM', into=['No', 'Covalent Bond Length', 'FENE', 'Covalent Bond Angle', 'Dihedral Angles', 'Improper Dihedral', 'Frozen Motion' ], defaut='No'), - - #La saisie de l'ensemble des liaisons d'un meme type peut se faire ds le meme bloc (soit ds un fichier, soit manuelle) - #Une seule valeur de distante? est a saisir pour l'ensemble - # bloc_covalent_1 = BLOC( condition = 'Type_Of_Bonded_Interaction in ("Covalent Bond Length","FENE")', - # ), # fin bloc_covalent_1 - bloc_covalent_length = BLOC( condition = 'Type_Of_Bonded_Interaction == "Covalent Bond Length"', - Interaction_Length_Parameters = FACT( statut='o', max="**", - Apply_To_Bonded_Particles = SIMP( statut='o', max='**', typ='TXM'), - Spring_Stifness = SIMP( statut='o', typ='R', val_min=0), - Mean_Bond_Length = SIMP( statut='o', typ='R', val_min=0), - ), # fin Interation_Length_Parameters - ), # fin Bond_Length_Parameters - bloc_covalent_angle = BLOC( condition = 'Type_Of_Bonded_Interaction == "Covalent Bond Angle"', - Interaction_Angles_Parameters = FACT( statut='o', max="**", - Apply_To_Bonded_Particles = SIMP( statut='o', max='**', typ='TXM'), - Spring_Stifness = SIMP( statut='o', typ='R', val_min=0), - Mean_Bond_Angle = SIMP( statut='o', typ='R', val_min=0), - ), # fin Interation_Angles_Parameters - ), # fin bloc_covalent_length_and_angle - - #bloc_covalent_length_and_angle = BLOC( condition = 'Type_Of_Bonded_Interaction == "Covalent Bond Length" or Type_Of_Bonded_Interaction == "Covalent Bond Angle"', - # Bond_Parameters = FACT( statut='o', max="**", - # Apply_To_Bonded_Particles = SIMP( statut='o', max='**', typ='TXM'), - # Spring_Stifness = SIMP( statut='o', typ='R', val_min=0), - # bloc_covalent_length = BLOC( condition = 'Type_Of_Bonded_Interaction == "Covalent Bond Length"', - # Mean_Bond_Length = SIMP( statut='o', typ='R', val_min=0), - # ), # fin Bond_Length_Parameters - # bloc_covalent_angle = BLOC( condition = 'Type_Of_Bonded_Interaction == "Covalent Bond Angle"', - # Mean_Bond_Angle = SIMP( statut='o', typ='R', val_min=0), - # ), # fin Bond_Length_Parameters - # ), # fin Bond_Length_Parameters - #), # fin bloc_covalent_length_and_angle - - bloc_FENE = BLOC( condition = 'Type_Of_Bonded_Interaction == "FENE"', - Applies_To_All_Particles = SIMP( statut='o', typ=bool, defaut=True), - bloc_not_on_all = BLOC( condition = 'Applies_To_All_Particles == False', - FENE_Parameters = FACT( statut='o', max="**", - Species_Pair = SIMP( statut='o', max=2, typ='TXM'), - Spring_Constant_H = SIMP( statut='o', typ='R', val_min=0), - LMax = SIMP( statut='o', typ='R', val_min=0), - ), # fin FENE_Parameters - ), # fin bloc_not_on_all - bloc_on_all = BLOC( condition = 'Applies_To_All_Particles == True', - Spring_Constant_H = SIMP( statut='o', typ='R', val_min=0), - LMax = SIMP( statut='o', typ='R', val_min=0), - ), # fin bloc_on_all - ), # fin bloc_FENE - - bloc_le_reste = BLOC( condition = 'Type_Of_Bonded_Interaction in ("Dihedral Angles", "Improper Dihedral", "Frozen Motion")', - Particle_Name = SIMP( statut="f", typ='TXM'), - #Consigne = SIMP( statut="o", homo="information", typ="TXM", defaut='Not Implemented Yet'), - - ), - ), # fin Bonded_Interaction - - # ------------------------------- # - - Unbonded_Interactions = FACT( statut='o', max= "**", - - Type_Of_Unbonded_Interaction = SIMP( statut='o', typ='TXM', into=['No', 'electro_magnetic', 'Repulsion_and_VdW', 'Soft_Potentiel', ], defaut='No', position='global',fenetreIhm='menuDeroulant'), - - bloc_elec = BLOC( condition = 'Type_Of_Unbonded_Interaction == "electro_magnetic"', - Permittivity = SIMP( statut='o', typ='R', position='global_jdc'), - Magnetic = SIMP( statut='o', typ=bool, defaut=False,), - bloc_magnetic = BLOC( condition = 'Magnetic == True', - Permability = SIMP( statut='o', typ='R'), - ), # bloc_magnetic - ),# fin bloc_elec - - bloc_VdW = BLOC( condition = 'Type_Of_Unbonded_Interaction == "Repulsion_and_VdW"', - Species_Pair_Parameters = FACT( statut='o', max="**", - Type_Repulsion_and_VdW = SIMP( statut='o', typ='TXM', into = [ 'Lennard_Jones', 'Hard_sphere_model']), - Species_Pair = SIMP( statut='o', max=2, typ='TXM'), - VdW_Radius = SIMP( statut='o', typ='R', val_min=0), - b_Lennard = BLOC( condition = "Type_Repulsion_and_VdW == 'Lennard_Jones'", - Depth_Of_The_Potential_Well = SIMP( statut='o', typ='R', val_min=0), - ), # fin b_Lennard - ), # fin Species_Pair_Parameters - ), # bloc_VdW - - b_Param_Soft_Potentiel = BLOC( condition = "Type_Of_Unbonded_Interaction == 'Soft_Potentiel'", - Groot_Warren_Repulsion = SIMP( statut='o', typ='R', defaut=25.0, val_min=0), - Groot_Warren_Cutoff = SIMP( statut='o', typ='R', defaut=1.0, val_min=0), - Drag_Coefficient = SIMP( statut='o', typ='R'), # les 2 valent 0 pour MD - Drag_Force_Cutoff = SIMP( statut='o', typ='R', val_min=0), - ), # b_Param_Soft_Potentiel - - ), # fin UnBonded_Interactions - - # ------------------------------- # - - External_Field_Interaction = FACT( statut='o', max= "**", - Type_Of_Interaction_With_An_External_Field = SIMP( statut='o', typ='TXM', into=['No','gravitational field','electric field','magnetic field', 'Hydrodynamic_Field'], fenetreIhm='menuDeroulant', defaut ='No'), - b_gravite = BLOC( condition = 'Type_Of_Interaction_With_An_External_Field=="gravitational field"', - G = SIMP( statut='o', typ='R', defaut=9.81), - ), - b_elect = BLOC( condition = 'Type_Of_Interaction_With_An_External_Field=="electric field"', - Electric_Field = champ('E', ('E',), 1), - ), - b_magnetic = BLOC( condition = 'Type_Of_Interaction_With_An_External_Field=="magnetic field"', - Magnetic_Field = champ('B', ('B',), 1), - ), - b_hydrodynamic = BLOC( condition = 'Type_Of_Interaction_With_An_External_Field=="hydrodynamic field"', - Hydrodynamic_Field = champ('U', ('U',), 1), - ), - b_External_Field_Interaction = BLOC( condition = 'Type_Of_Interaction_With_An_External_Field != "No"', - Field_Applies_On_All_Species = SIMP( statut='o', typ=bool, defaut=True), - b_porte_espece = BLOC( condition = 'Field_Applies_On_All_Species == False ', - Species_List = SIMP( statut='o', typ='TXM', max= '**'), # faire un typ = "espece" - ), - ), # fin b_External_Field_Interaction - ), # fin Interaction_External_Field - - ), # fin List_Of_Interactions - -############################ - ) - -def bloc_CPS(): - return BLOC(condition = 'SystemType == "Classical particle system"', - Particle = Particle('**'), -) - -def bloc_FluideMacro(): - return BLOC(condition = 'SystemType == "Continuum system"', - FluidComplexe = SIMP(typ=bool, statut='o', defaut = False,), - - FlowNature = SIMP(typ='TXM', statut='o', into =['Laminar', 'Turbulent'], position='global'), - bloc_FlowNature_Turbulent = BLOC(condition = ' FlowNature == "Turbulent"', - TurbulenceForFlowDynamics = FactTurbulence('o'), - ), #------ fin bloc_FlowNature_Turbulent - - -# ---------------------- Effets thermiques - - Thermal = FACT (statut ='o', - ThermalEffects = SIMP(typ='TXM', statut='o', into =['Non thermal', - 'No effect on flow dynamics', 'Effect on flow dynamics'], defaut='Non thermal'), - - bloc_NonThermalEffects = BLOC(condition = ' ThermalEffects == "Non thermal" or ThermalEffects == "No effect on flow dynamics"', - DensityEquationOfState = SIMP(typ='TXM', statut='o', into =['Constant density'], defaut = 'Constant density'), - ), # fin bloc_NonThermalEffects - - bloc_ThermalEffects_Active = BLOC(condition = ' ThermalEffects == "Effect on flow dynamics"', - DensityEquationOfState = SIMP(typ='TXM', statut='o', into =['Variable density', 'Compressible']), -# PNJPM est ce suffisant ? - ), # fin bloc_ThermalEffects_Active - bloc_ThermalEffects = BLOC(condition = ' ThermalEffects == "Effect on flow dynamics" or ThermalEffects == "No effect on flow dynamics"', - bloc_scalar_thermal_flux = BLOC (condition = "FlowNature == 'Turbulent'", - ThermalFluxModel = FactTurbulence('f'), - ),# fin bloc_scalar_thermal_flux - WithChemicalReactions = SIMP(typ=bool, statut ='o', defaut = False), - ), # fin bloc_ThermalEffects - ),# fin Fact Thermal - -# ---------------------- Scalaire additional - bloc_scalar_FluidTurbulentOrLaminar = BLOC(condition = "(FluidComplexe == False and FlowNature == 'Turbulent') or (FluidComplexe == False and FlowNature == 'Laminar')", - Scalars = FACT(statut = 'o', - bloc_FlowNature_Turbulent_For_Scalars = BLOC(condition = ' FlowNature == "Turbulent"', - ScalarsTurbulenceModelling = FactTurbulence('o', ajout='NoOne'), - ), - ImplicitScalar =FACT(statut ='o', - Name = SIMP(typ=(scalar,'createObject'), statut='o', defaut ='ObligatoireScalaire', homo='constant'), - bloc_scalar_FluidTurbulentandNonComplexe = BLOC (condition = "FlowNature == 'Turbulent'", - ImplicitScalarFluxModel = FactTurbulence('f'), - ) # bloc_scalar_FluidTurbulentandNonComplexe - ),# ObligatoireScalaire - Scalar = FACT(statut = 'o', max ='**', - Name = SIMP(typ=(scalar,'createObject'), statut='o',), - bloc_scalar_FluidTurbulentandNonComplexe = BLOC (condition = "FlowNature == 'Turbulent'", - ScalarFluxModel = FactTurbulence('f'), - ) # bloc_scalar_FluidTurbulentandNonComplexe - ),# Scalar - ),# AdditionalScalars - ), # fin FluidTurbulentandNonComplexe - #bloc_scalar_FluidLaminaireandNonComplexe = BLOC (condition = "FluidComplexe == False and FlowNature == 'Laminar'", - # AdditionalScalars = FACT (statut = 'o', - # Scalar = FACT ( statut = 'f', max ='**', - # Name = SIMP(typ='TXM', statut='o',), - # ),# Scalar - # ),# AdditionalScalars - #), # fin FluidLaminaireandNonComplexe - # il faut une validation de coherence entre l existence de tous les turbulencesModelling - )# fin bloc_FluideMacro - -JdC = JDC_CATA ( - code = 'Vimmp', - # faire un validateur qui verifie que si on active reactions chimiques il faut que les masses molaires soient rentrees -) - -Component = OPER(nom='Component', sd_prod=composant, - SystemType = SIMP(typ='TXM', into=['Quantum system', 'Classical particle system', 'Continuum system'], statut='o',position='global'), - PhysicalDescription = FACT(statut = 'o', - b_FluideMacro = bloc_FluideMacro(), - b_bloc_CPS = bloc_CPS(), - ), - b_ModeleNumerique_quantum = prepareBlocSystemType('Quantum system'), - b_ModeleNumerique_classical = prepareBlocSystemType('Classical particle system'), - b_ModeleNumerique_continuum = prepareBlocSystemType('Continuum system'), -) - -Species = PROC(nom='Species', - Specie = FACT( statut='o', max ="**", - Name = SIMP( statut='o', typ=(especeChimique,'createObject') ), - masse_molaire = SIMP( statut='f', typ='R',), - ) -) - -def monBlocInteractionTypeChamp (): - return BLOC (condition = '1 == 1' , # a distinguer selon les cas - fieldNameInOrigine = SIMP(typ='TXM', statut='o'), - fieldNameInDestination = SIMP(typ='TXM', statut='o'), - ) - -def TousSelonLeTypeDeFormatDisponible(condition, labelName='fileName'): - transferType = SIMP(typ='TXM', statut='o', into =['File', 'Memory', 'CorbaObject']) - maListe = list(dictCodeFormat.keys()) - dicoArgs={} - #index=0 - #for Solv1 in maListe[index:]: - # for Solv2 in maListe[index:]: - # #print (Solv1,Solv2, calculCommun(Solv1, Solv2,dictCodeFormat)) - # print ('PNPN attention changement de dictCodeFormat tant que getEficasAttribut n est pas correct') - # conditionSolv = 'transferType == "File" and getEficasAttribut(origine,"Solver")==Solv1 and getEficasAttribut(destination,"Solver")==Solv2' , - # conditionSolv = 'transferType == "File"' - # monBlocFichier=creeBlocPourLesFichiers (conditionSolv, 'FileName', calculCommun(Solv1, Solv2,dictCodeFormat)) - # dicoArgs['monBlocFichier'+str(index)]=monBlocFichier - # index=index+1 - mesFormats=set() - for solv1 in dictCodeFormat.keys() : - for f in dictCodeFormat[solv1] : mesFormats.add(f) - conditionSolv='transferType == "File"' - BlocFichier=creeBlocPourLesFichiers (conditionSolv, labelName, mesFormats) - dicoArgs['BlocFichier']=BlocFichier - monBlocChamp = BLOC(condition = "transferType=='File'", FieldName=SIMP(typ='TXM', statut='o')) - dicoArgs['monBlocChamp']=monBlocChamp - return BLOC(condition = condition,transferType=transferType, **dicoArgs) - -def SelonLeTypeDeFormatDisponibleMapper(condition): - transferType = SIMP(typ='TXM', statut='o', into =['File', 'Memory', 'CorbaObject']) - maListe = list(dictCodeFormat.keys()) - dicoArgs={} - index=0 - for Solv1 in maListe[index:]: - for Solv2 in maListe[index:]: - #print (Solv1,Solv2, calculCommun(Solv1, Solv2,dictCodeFormat)) - print ('PNPN attention changement de dictCodeFormat tant que getEficasAttribut n est pas correct') - conditionSolv = 'transferType == "File" and getEficasAttribut(origine,"Solver")==Solv1 and getEficasAttribut(destination,"Solver")==Solv2' , - conditionSolv = 'transferType == "File"' - monBlocFichier=creeBlocPourLesFichiers (conditionSolv, 'FileName', calculCommun(Solv1, Solv2,dictCodeFormat)) - dicoArgs['monBlocFichier'+str(index)]=monBlocFichier - index=index+1 - monBlocChamp = BLOC(condition = "transferType=='File'", FieldName=SIMP(typ='TXM', statut='o')) - dicoArgs['monBlocChamp']=monBlocChamp - return BLOC(condition = condition,transferType=transferType, **dicoArgs) - -Mapper = OPER (nom= 'Mapper',sd_prod=mapper, - Solver=SIMP(statut='o', typ='TXM', into = list(dictMapperFormat.keys())), - ) -Converter = OPER (nom= 'Converter',sd_prod=converter) - -Interactions = PROC(nom='Interactions', - Interaction = FACT( max = '**', - origine = SIMP(typ=modeleNumDuCompo, statut='o'), - destination = SIMP(typ=modeleNumDuCompo, statut='o'), - monBloc_FFFF = BLOC ( - condition = 'getEficasAttribut(origine,"ModelType") == "Fields" and getEficasAttribut(destination,"ModelType") == "Fields"' , - termeLE = SIMP(typ='TXM', statut='o', into = dictTermeLE['Fields','Fields'],fenetreIhm='menuDeroulant'), - ), - monBloc_DPDP = BLOC ( - condition = 'getEficasAttribut(origine,"ModelType") == "Particles" and getEficasAttribut(destination,"ModelType") == "Particles"' , - termeLE = SIMP(typ='TXM', statut='o', into = dictTermeLE['Particles','Particles'],fenetreIhm='menuDeroulant'), - ), - monBloc_FFDP = BLOC ( - condition = 'getEficasAttribut(origine,"ModelType") == "Fields" and getEficasAttribut(destination,"ModelType") == "Particles"' , - termeLE = SIMP(typ='TXM', statut='o', into = dictTermeLE['Fields','Particles'],fenetreIhm='menuDeroulant'), - ), - monBloc_DPFF = BLOC ( - condition = 'getEficasAttribut(origine,"ModelType") == "Particles" and getEficasAttribut(destination,"ModelType") == "Fields"' , - termeLE = SIMP(typ='TXM', statut='o', into = dictTermeLE['Particles','Fields'],fenetreIhm='menuDeroulant'), - ), - couplingPart = FACT( statut='o', - couplingMode = SIMP(typ='TXM', statut='o', into =['direct', 'scaling', 'conversion']), - monBlocDirect = TousSelonLeTypeDeFormatDisponible( "couplingMode=='direct'" ), - monBlocIn = BLOC ( condition = "couplingMode=='scaling' or couplingMode=='conversion'", - OutFromComponent = FACT( statut='o', - monBlocFormat = TousSelonLeTypeDeFormatDisponible( "1", labelName = 'outFromMapperFileName' ), - ), - ), - monBlocMapper = BLOC ( condition = "couplingMode=='scaling' or couplingMode=='conversion'", - ConversionNode = FACT( min=1, max='**', statut ='o', - tool = SIMP(typ=mapper, statut ='o'), - OutFromMapper = FACT (statut ='o', - monBlocFormat = TousSelonLeTypeDeFormatDisponible( "1", labelName = 'outFromMapperFileName' ), - ), - ), - ), - ), - monBlocUseConverter = BLOC ( condition = "couplingMode=='use converter'", - myConverter = SIMP(typ=converter, statut ='o') - ), - ), -) - -dict_condition={ -'ModelType' : ('Interactions', 'Component'), -#'NumericalMethod' : ('Interactions', 'Component'), -# 'TypeOfSolid' : ('Component',) -} - -Temporal_Aspects = PROC( nom ="Temporal_Aspects", - Simulated_Time_Laps = FACT (statut='o', max='**', - name = SIMP(statut='o', typ=(simulatedTime,'createObject'),), - initialTime = SIMP( statut='o', typ='R'), - finalTime = SIMP( statut='o', typ='R'), - timeDiscretization = SIMP( statut ='o', typ = 'TXM', into = ['Constant Time Step', 'Varying Time Step']), - bloc_Constant = BLOC (condition = 'timeDiscretization == "Constant Time Step"', - constantTimeStep = SIMP (statut ='o', typ = 'R'), - ), - bloc_Varying = BLOC (condition = 'timeDiscretization == "Varying Time Step"', - CFLNumberCriteria = SIMP (statut ='o', typ = 'R'), - FourierNumberCriteria = SIMP (statut ='o', typ = 'R'), - ), - ), -) -# -Spatial_Aspects = PROC( nom='Spatial_Aspects', - System_Geometry = FACT ( statut='o', max='**', - System_Geometry_name = SIMP( statut='o', typ=(systemGeometry, 'createObject'),), - Shape = FACT (statut ='f', max='**', - Shape_Nature = SIMP( statut='o', typ='TXM', into=['Typical Geometry', 'CAD']), - b_Shape = BLOC( condition = 'Shape_Nature == "Typical Geometry"', - Box = SIMP( statut='o', typ='TXM', into=['Cube', 'Sphere','Cylinder'] ), - b_Cube = BLOC( condition = 'Box == "Cube"', - #Taille_Box_Englobante = SIMP( statut='o', typ='R', max=3, min =3) - # derait etre un Tuple(3) mais a faire apres la projection - #Size_Of_Bounding_Box = SIMP( statut='o', typ=Tuple(3), validators=VerifTypeTuple(('R','R','R'),),) - Size_Of_Bounding_Box = SIMP( statut='o', typ='R', max=3, min=3, ), - ), # fin b_Cube - b_Boule = BLOC( condition = 'Box == "Sphere"', - Center = SIMP( statut='o', typ='R', max=3, min =3), - ),# fin b_Boule - b_Cylinder = BLOC( condition = 'Box == "Cylinder"', - Heigth = SIMP( statut="o", typ='R', val_min=0.0, ang='Nanotube length [m]'), - ),# fin b_Tube - b_Boule_ou_Cylinder = BLOC( condition = 'Box == "Sphere" or Box == "Cylinder"', - Radius = SIMP( statut='o', typ='R', val_min=0.0, ang='radius length [m]') , - ),# fin b_Boule_ouCylinder - ), # fin b_Shape - b_CAO = creeBlocPourLesFichiers( "Shape_Nature == 'CAD'",'Domain_File', ['txt','I-deas', 'Gmsh', 'top',]), - ShapeIdentifier=SIMP( statut='o', typ=(cadShape,'createObject'),max='**',), - ), # fin Shape - ),# System_Geometry - Spatial_Discretization = FACT ( statut='f', max="**", - Mesh_Name = SIMP( statut='o', typ=(meshIdentifier,'createObject')), - b_Mesh = creeBlocPourLesFichiers( "1 == 1",'Domain_File', ['med', 'Gmsh',]), - GroupIdentifier = SIMP( statut='o', typ=(meshGroup,'createObject'),max='**',), - ), - Boundary_Constraints = FACT (statut = 'f', - Motion = FACT ( statut='f', - Motion_Nature = SIMP(statut='o', typ='TXM', into=['Fixed boudary', 'Translational motion', 'Rotational motion', 'Scaling']), - b_Translational_motion=BLOC(condition = 'Motion_Nature == "Translational motion"', - Translation_Velocity=SIMP( statut='o', typ='R'), - boundaries=SIMP( statut='o', typ=spatialRegion,max='**' ), - ), - b_Rotational_motion=BLOC(condition = 'Motion_Nature == "Rotational motion"', - Rotation_Rate=SIMP( statut='o', typ='R'), - boundaries=SIMP( statut='o', typ=spatialRegion,max='**' ), - ), - b_fixed=BLOC(condition = 'Motion_Nature == "Fixed boudary"', - boundaries=SIMP( statut='o', typ=spatialRegion,max='**', homo='SansOrdreNiDoublon'), - #boundaries=SIMP( statut='o', typ=spatialRegion,max='**' ), - ), - ), -#PN decrire page 28 - Mapping = FACT ( statut='f', - ), - ), # Boundary_Constraints -) # fin Geometric_Domain - - - - diff --git a/Vimmp/OLD/cata_CSAndCPS_v4_test_driver_0.comm b/Vimmp/OLD/cata_CSAndCPS_v4_test_driver_0.comm deleted file mode 100644 index 7222027b..00000000 --- a/Vimmp/OLD/cata_CSAndCPS_v4_test_driver_0.comm +++ /dev/null @@ -1,89 +0,0 @@ -ObligatoireScalaire=scalar() -P1=userDiscrete() -CS_num_FV=modeleNumDuCompo() -CS_num_CFD_Discrete_Particles=modeleNumDuCompo() -half_pipe=meshIdentifier() -inlet=meshGroup() -outlet=meshGroup() -wall=meshGroup() -symetry=meshGroup() -SD_11=meshGroup() -inlet1=meshGroup() -half_pipe2=meshIdentifier() -Essai=systemGeometry() -shp1=cadShape() -time1=simulatedTime() -Scal1=scalar() - -Temporal_Aspects(Simulated_Time_Laps=_F(name=time1, - initialTime=0.0, - finalTime=2.0, - timeDiscretization='Constant Time Step', - constantTimeStep=0.1,),); - -Spatial_Aspects(System_Geometry=_F(System_Geometry_name=Essai, - Shape=_F(Shape_Nature='Typical Geometry', - Box='Cube', - Size_Of_Bounding_Box=(10.0,10.0,10.0,), - ShapeIdentifier=(shp1,),),), - Spatial_Discretization=(_F(Mesh_Name=half_pipe, - FileFormat='med', - FileName='/home/eric/VIMMP/vimmptraining/app/fluide+particule/datafiles/half_pipe.med', - GroupIdentifier=(inlet,outlet,wall,symetry,SD_11,),), - _F(Mesh_Name=half_pipe2, - FileFormat='med', - FileName='/home/eric/VIMMP/vimmptraining/app/fluide+particule/datafiles/half_pipe.med', - GroupIdentifier=(inlet1,),),),); - -FluidComponent=Component(SystemType='Continuum system', - PhysicalDescription=_F(FluidComplexe=False, - FlowNature='Turbulent', - TurbulenceForFlowDynamics=_F(TurbulenceModellingType='One-point moment', - RANSModel='Turbulent-Viscosity Model(TVM)', - TVMChoice='k-epsilon',), - Thermal=_F(ThermalEffects='Non thermal', - DensityEquationOfState='Constant density',), - Scalars=_F(ScalarsTurbulenceModelling=_F(TurbulenceModellingType='One-point moment', - RANSModel=\ - 'Turbulent-Viscosity Model(TVM)', - TVMChoice='k-epsilon',), - ImplicitScalar=_F(Name=ObligatoireScalaire,), - Scalar=_F(Name=Scal1,),),), - NumericalModel=_F(Identifier=CS_num_FV, - SimulatedTimeLapse=time1, - ModelType='Fields', - NumericalMethod='FV', - Solver='Code_Saturne', - Mesh_Identifiers=(half_pipe,),),); - -PartComponent=Component(SystemType='Classical particle system', - PhysicalDescription=_F(Particle=_F(ParticleNature='Discrete Particle', - DiscreteParticleName=P1, - TypeOfDiscreteParticle='Solid', - TypeOfSolid='Primary Particle', - Properties=_F(Geometry='Sphere', - ParticleRadius=99.0, - Weight=_F(Mass=99.0, - Density=99.0,), - Mechanical='Rigid',), - List_Of_Interactions=_F(Bonded_Interactions=_F( - Type_Of_Bonded_Interaction='No',), - Unbonded_Interactions=_F( - Type_Of_Unbonded_Interaction='No',), - External_Field_Interaction=_F( - Type_Of_Interaction_With_An_External_Field='No',),),),), - NumericalModel=_F(Identifier=CS_num_CFD_Discrete_Particles, - SimulatedTimeLapse=time1, - ModelType='Particles', - NumericalMethod='CFD_Discrete_Particles', - Solver='OpenFOAM',),); - -Interactions(Interaction=_F(origine=CS_num_FV, - destination=CS_num_CFD_Discrete_Particles, - termeLE='Fluid_Velocity_Field', - couplingPart=_F(couplingMode='direct', - transferType='File', - FileFormat='Med', - FileName='/home/eric/VIMMP/vimmptraining/app/fluide+particule/datafiles/half_pipe.med', - FieldName='velocity',),),); -#CHECKSUM:533335c85b3d2a04ab411dbc5fdeebe0 -:FIN CHECKSUM \ No newline at end of file diff --git a/Vimmp/OLD/cata_CSAndCPS_v4_test_driver_1.comm b/Vimmp/OLD/cata_CSAndCPS_v4_test_driver_1.comm deleted file mode 100644 index c81b462f..00000000 --- a/Vimmp/OLD/cata_CSAndCPS_v4_test_driver_1.comm +++ /dev/null @@ -1,76 +0,0 @@ -P1=userDiscrete() -CS_num_FV=modeleNumDuCompo() -CS_num_CFD_Discrete_Particles=modeleNumDuCompo() -half_pipe=meshIdentifier() -inlet=meshGroup() -outlet=meshGroup() -wall=meshGroup() -symetry=meshGroup() -SD_11=meshGroup() -inlet1=meshGroup() -half_pipe2=meshIdentifier() - - -Spatial_Aspects(System_Geometry=_F(Shape=_F(Shape_Nature='Typical Geometry', - Box='Cube', - Size_Of_Bounding_Box=None, - ShapeIdentifier=None,),), - Spatial_Discretization=(_F(Mesh_Name=half_pipe, - FileFormat='med', - FileName='/home/eric/VIMMP/vimmptraining/app/fluide+particule/datafiles/half_pipe.med', - GroupIdentifier=(inlet,outlet,wall,symetry,SD_11,),), - _F(Mesh_Name=half_pipe2, - FileFormat='med', - FileName='/home/eric/VIMMP/vimmptraining/app/fluide+particule/datafiles/half_pipe.med', - GroupIdentifier=(inlet1,),),),); - -FluidComponent=Component(SystemType='Continuum system', - PhysicalDescription=_F(FluidComplexe=False, - FlowNature='Turbulent', - TurbulenceForFlowDynamics=_F(TurbulenceModellingType='One-point moment', - RANSModel='Turbulent-Viscosity Model(TVM)', - TVMChoice='k-epsilon',), - Thermal=_F(ThermalEffects='Non thermal', - DensityEquationOfState='Constant density',), - AdditionalScalars=_F(Scalar=(_F(Name=None, - ScalarFluxModel=_F(TurbulenceModellingType=\ - 'No Model (DNS)', - ChoiceOfApproach=None,),), - _F(Name=None,),),), - ScalarTurbulenceModelling=_F(TurbulenceModellingType=None,),), - NumericalModel=_F(Identifier=CS_num_FV, - ModelType='Fields', - NumericalMethod='FV', - Solver='Code_Saturne', - Mesh_Identifiers=(half_pipe,),),); - -PartComponent=Component(SystemType='Classical particle system', - PhysicalDescription=_F(Particle=_F(ParticleNature='Discrete Particle', - DiscreteParticleName=P1, - TypeOfDiscreteParticle='Solid', - TypeOfSolid='Primary Particle', - Properties=_F(Geometry='Sphere', - ParticleRadius=99.0, - Weight=_F(Mass=99.0, - Density=99.0,), - Mechanical='Rigid',), - List_Of_Interactions=_F(Bonded_Interactions=_F( - Type_Of_Bonded_Interaction='No',), - Unbonded_Interactions=_F( - Type_Of_Unbonded_Interaction='No',), - External_Field_Interaction=_F( - Type_Of_Interaction_With_An_External_Field='No',),),),), - NumericalModel=_F(Identifier=CS_num_CFD_Discrete_Particles, - ModelType='Particles', - NumericalMethod='CFD_Discrete_Particles', - Solver='OpenFOAM',),); - -Interactions(Interaction=_F(origine=CS_num_FV, - destination=CS_num_CFD_Discrete_Particles, - termeLE='Fluid_Velocity_Field', - fieldNameInOrigine=None, - fieldNameInDetgination=None, - transferType='File', - Format='Use converter', - converter='gmsh',),); -#CHECKSUM:5346559f3e67b54f3c07a0ea4d7a176b -:FIN CHECKSUM diff --git a/Vimmp/OLD/cata_CSAndCPS_v5.py b/Vimmp/OLD/cata_CSAndCPS_v5.py deleted file mode 100644 index 7f643952..00000000 --- a/Vimmp/OLD/cata_CSAndCPS_v5.py +++ /dev/null @@ -1,823 +0,0 @@ -from Accas import * - -class composant(ASSD):pass -class mapper(ASSD):pass -class converter(mapper):pass -class modeleNumDuCompo(UserASSD):pass -class especeChimique(UserASSD):pass -class userParticle(UserASSD) :pass -class userAtom(userParticle) :pass -class userMolecule(userParticle) :pass -class userDiscrete(userParticle) :pass -class userDPD(userParticle) :pass - -class spatialRegion(UserASSD):pass -class cadShape(spatialRegion):pass -#class meshGroup(spatialRegion,UserASSDMultiple):pass -class meshGroup(spatialRegion):pass -class meshIdentifier(spatialRegion):pass -class systemGeometry(UserASSD):pass -class simulatedTime(UserASSD):pass -class constitutiveRelation(UserASSD):pass - -class scalar(UserASSD):pass - - -#dictSystemTypeModeleNumerique = { 'Quantum system' : (), -# 'Classical particle system' : ('MD', 'DPD', 'LBM', 'SDPD','SPH','CFD_Discrete_Particles'), -# 'Continuum system' :('Fluid_Fields','Fluid_Particles', 'SPH','Lagrangian one-particle pdf'), -# } -# - -# PN a faire --> ajouter un MC modeleNumerique ( apres avoir renomme le modeleNumerique actuel en classe de modele numerique) et le dictionnaire d apres -dictTypModNumModNum = { - ('Continuum system','Particles') : ('SPH','Lagrangian one-fluid-particle pdf'), - ('Continuum system','Fields') : ('FV','FEM', 'Spectral method'), - ('Classical particle system','Particles') : ('MD', 'DPD', 'SDPD','SPH','CFD_Discrete_Particles'), - ('Classical particle system','Fields') : ('LBM',), - ('Quantum system','Particles') : ('Particle method',), - ('Quantum system','Fields') : ('Wave',), -} - -dictCodeModeleNumerique = { - - 'Code_Saturne' : ('Lagrangian one-fluid-particle pdf', 'FV', 'CFD_Discrete_Particles',), - 'Fluent' : ('FV',), - 'Culgi Package': (), - 'DEM_SD' : ('Lagrangian one-fluid-particle pdf', 'FV', 'CFD_Discrete_Particles',), - 'DFTB+' : ('density functional tight binding method',), - 'DL_MESO_DPD' : ('Lagrangian one-fluid-particle pdf', 'FV', 'CFD_Discrete_Particles',), - 'DL_MESO_LBE' : ('Lagrangian one-fluid-particle pdf', 'FV', 'CFD_Discrete_Particles',), - 'DL_POLY_4' : ('Lagrangian one-fluid-particle pdf', 'FV', 'CFD_Discrete_Particles',), - 'GROMACS' : ('Lagrangian one-fluid-particle pdf', 'FV', 'CFD_Discrete_Particles',), - 'GROMACS_LS' : ('Lagrangian one-fluid-particle pdf', 'FV', 'CFD_Discrete_Particles',), - 'LAMMPS' : ('Lagrangian one-fluid-particle pdf', 'FV', 'CFD_Discrete_Particles',), - 'NWChem' : ('Lagrangian one-fluid-particle pdf', 'FV', 'CFD_Discrete_Particles',), - 'OpenFOAM' : ('Lagrangian one-fluid-particle pdf', 'FV', 'CFD_Discrete_Particles',), - 'Quantum EXPRESSO' : ('Particle method', 'Wave',), - 'RHEO_AGGRATE' : ('Particle method', 'Wave',), - 'RHEO_DROP' : ('Particle method', 'Wave',), - 'STAR_CCM+' : ('FV', 'Particles',), - 'Code Nill' : ('Spectral method', ), -} - -dictCodeFormat = { - 'Code_Saturne' : ('Med', 'cgns', 'msh', 'des', 'unv', ), - 'Culgi Package': ('cof',), - 'DEM_SD' : ('geo', 'ascii'), - 'DFTB+' : ('geo', 'ascii'), - 'Fluent' : ('FluentFormat', ), - 'OpenFOAM' : ('OpenFoamFormat', 'Med', ), -} - -dictMapperFormat = { - 'Med Coupling' : ('Med',), - 'Gmsh' : ('Med', 'OpenFoamFormat'), -} - -dictTermeLE = { - ('Fields','Particles') : ('Fluid_Velocity_Field', - 'Fluid_Temperature_Field', - 'Fluid_Species_Mass_Fraction_Fluid',), - ('Particles','Fields') : ('Fluid_Particle_Momentum_Exchange_Field', - 'Fluid_Particle_Thermal_Exchange_Field', - 'Lagrangian one-particle pdfFluid_Particle_Mass_Source_Field', - 'Particle_Volumetric_Concentration_Modified_Fluid_Viscosity', - 'Particle_Extra_Stress_Tensor'), - ('Particles','Particles') : ('Pas encore fait'), - ('Fields','Fields') : ('Pas encore fait'), -} - -dictCodeConvertisseur = { - ('Saturne', 'OpenFOAM') : ('gmsh', 'Saturne2CDM and CDM2OpenFoam'), - ('Saturne', 'Fluent') : ( 'Saturne2CDM and CDM2Fluent'), - ('Fluent', 'OpenFOAM') : ('Fluent2CDM and CDM2OpenFoam'), - } - - -def prepareBlocSystemType(systemType) : - condition = "SystemType == '" + systemType + "'" - Identifier = SIMP(statut='o', typ=(modeleNumDuCompo,'createObject'),) - SimulatedTimeLapse = SIMP (statut ='o', typ = simulatedTime) - ModelType = SIMP(statut='o', typ='TXM', into = ('Particles', 'Fields'), position='inGetAttribut') - dicoArgs={} - - for typeMod in ('Particles', 'Fields'): - conditionType = "ModelType == '" + typeMod + "'" - NumericalMethod = SIMP(statut='o',typ='TXM', into=dictTypModNumModNum[systemType, typeMod], - position='global', intoXML=allValueInDict(dictTypModNumModNum)) - dicoBloc = {} - for modeleNumerique in list(dictTypModNumModNum[systemType,typeMod]): - conditionNum = "NumericalMethod == '" + modeleNumerique + "'" - setCode = set() - for code in dictCodeModeleNumerique.keys(): - if modeleNumerique in dictCodeModeleNumerique[code]: setCode.add(code) - Solver = SIMP(statut='o', typ='TXM', into=list(setCode), intoXML=list(dictCodeModeleNumerique.keys()) ) - monNomBloc='b_ModelName_' + modeleNumerique.replace(' ','_') - if setCode !=set(): dicoBloc[monNomBloc]=BLOC(condition=conditionNum, nomXML='b_ModelName',Solver=Solver) - dicoArgs['b_modelType'+typeMod] = BLOC(condition=conditionType, NumericalMethod=NumericalMethod,**dicoBloc) - - blocMeshRef = BLOC(condition = '(ModelType == "Fields") and (NumericalMethod == "FV")', - #blocMeshRef = BLOC(condition = 'NumericalMethod == "FV"', - Mesh_Identifiers = SIMP (statut ='o', max ='**', typ = meshIdentifier),) - dicoArgs['blocMeshRef'] = blocMeshRef - NumericalModel = FACT(statut='o', max= '**', Identifier=Identifier, ModelType=ModelType, - SimulatedTimeLapse=SimulatedTimeLapse, **dicoArgs) - return BLOC(condition=condition, nomXML='b_systemType', NumericalModel=NumericalModel) - -def calculCommun( key1, key2, dico): - monSet=set() - if not key1 in dico: return () - if not key2 in dico: return () - for val in dico[key1]: - if val in dico[key2]: - monSet.add(val) - if monSet == set() : monSet.add ('No common format') - return list(monSet) - -def allValueInDict( dico): - monSet=set() - for clef in dico : - for val in dico[clef] : monSet.add(val) - return monSet - -def creeBlocPourLesFichiers (laCondition, NomDuFichier, ListeFormats, FieldName=False): - SIMPFormatFichier = SIMP(statut='o', typ = 'TXM', into = tuple(ListeFormats) + ('others',), ) - dicoDesBlocs = {} - for formatFich in ListeFormats : - nomBloc = 'b_format_fichier' + str(formatFich) - typeDesFichiers = ('Fichier', formatFich + " Files (*." + formatFich + ");;All Files (*)",) - blocCondition ="FileFormat == '" + formatFich + "'" - dicoDesBlocs[nomBloc] = BLOC( condition = blocCondition, FileName = SIMP(statut='o', typ = typeDesFichiers ),) - dicoDesBlocs['b_format_fichier_others'] = BLOC(condition="FileFormat == 'others'", FileName = SIMP(statut='o', typ = ('Fichier','All Files (*)'),),) - if FieldName: - SIMPFieldName = SIMP(statut='o', typ = 'TXM',) - return BLOC(condition=laCondition, FileFormat = SIMPFormatFichier, **dicoDesBlocs, FieldName=SIMPFieldName) - #return BLOC(condition=laCondition, FileFormat = SIMPFormatFichier, **dicoDesBlocs) - else : - return BLOC(condition=laCondition, FileFormat = SIMPFormatFichier, **dicoDesBlocs) - -def champ(nomDelaContante, labels ,nbReels ) : -# ajouter les extensions pour le fichier et les blocs associes -# certains champs ne seront jamais uniformes - #Input_Mode = SIMP( statut='o', typ='TXM', into=('uniform value','values directly assigned','values read in file','analytical function', 'call to a service')), -#PNPN : Passer le nom du champ pour le label du vecteur - dicoBloc = {} - dicoBloc[nomDelaContante] = SIMP( statut='o', typ='R') - return FACT( statut='o', - Input_Mode = SIMP( statut='o', typ='TXM', into=('uniform value','values directly assigned','values read in file','analytical function',)), - b_uniforme = BLOC( condition = "Input_Mode == 'uniform value'", **dicoBloc), - b_vsaisies = BLOC( condition = "Input_Mode == 'values directly assigned'", - Field = SIMP( typ='R', statut='o', max ='**'), - #Vecteur = SIMP( fenetreIhm='Tableau', homo = labels, - # statut='o', min=2, max='**', - # typ=Tuple(nbReels), - # validators=VerifTypeTuple(("'R',"*nbReels),),) # end particle - ), #b_vsaisie - b_vdsfich = BLOC( condition = "Input_Mode == 'values read in file'", - Format = SIMP( statut='o', typ='TXM', into=['txt','Med',], position='global' ), - td_txt = BLOC(condition = 'Format == "txt"', - File = SIMP( statut='o', typ=('Fichier','Text Files(*.txt);All Files (*)'),), - ), - td_med_1 = BLOC( condition = 'Format == "Med"', - File = SIMP( statut='o', typ=('Fichier','Med Files(*.med);All Files (*)'),), - ), - td_med_2 = BLOC( condition = 'Format == "Med"', - FieldName = SIMP( statut='o', typ='TXM',), - ), - ), - b_vfct = BLOC( condition = "Input_Mode == 'analytical function'", - Function = SIMP( statut='o', typ='TXM',), - ), - #b_vserc = BLOC( condition = "Input_Mode == 'call to a service'", - # Service = SIMP( statut='o', typ='TXM',), - #), - ) - - -def FactTermeSource(condition): - return BLOC (condition=condition, - Origin = SIMP( statut='o', typ='TXM',into=['question JP'] - )) - - -def FactTurbulence(statut, ajout=None): - listInto = ['No Model (DNS)', 'Spatial filtering (LES)', 'One-point moment', 'One-point PDF'] - if ajout != None : listInto.append(ajout) - return FACT (statut=statut, - TurbulenceModellingType = SIMP(typ='TXM', statut='o', into =listInto, ), - bloc_one_point = BLOC(condition= "TurbulenceModellingType == 'One-point moment'", - RANSModel = SIMP(statut="o", typ="TXM", into=['Turbulent-Viscosity Model(TVM)', 'Reynolds Stress Model (RSM)']), - bloc_TVM = BLOC(condition= "RANSModel == 'Turbulent-Viscosity Model(TVM)'", - TVMChoice = SIMP(typ='TXM', statut='o', into=['k-epsilon', 'k-omega']), - ), # fin bloc_TVM - bloc_RSM = BLOC(condition = "RANSModel == 'Reynolds Stress Model (RSM)'", - RSMChoice = SIMP(typ='TXM', statut='o', into=['Rotta', 'LRR-IP','LRR-QI','SSG']), - ), # fin bloc_RSM - ), # fin bloc_one_point - bloc_one_spatial = BLOC(condition = "TurbulenceModellingType == 'Spatial filtering (LES)'", - ChoiceOfApproach = SIMP(typ='TXM', statut='o', into=['Field-based LES', 'Filtered Density Function (FDF)']), - SubgridScaleModel = SIMP(typ='TXM', statut='o', into=['No SGS', 'Smagorinsky','Dynamical model', 'SGS Transport Equations']), - ), # fin bloc_one_spatial - bloc_one_point_pdf = BLOC(condition = "TurbulenceModellingType == 'One-point PDF'", - ChoiceOfApproach = SIMP(typ='TXM', statut='o', into=['One-point Eulerian PDF', 'One-particle Lagrangian PDF']), - bloc_lagrangian_pdf=BLOC(condition = "ChoiceOfApproach == 'One-particle Lagrangian PDF'", - StochasticModel = SIMP(typ='TXM', statut='o', into=['Langevin','Other'], defaut='Langevin'), - )# fin lagrangian - ), # fin bloc_one_point_pdf - bloc_no_model = BLOC(condition = "TurbulenceModellingType == 'No Model (DNS)'", - ChoiceOfApproach = SIMP(statut='o', typ='TXM', into=['Field-based DNS', 'N-Particle Method']), - bloc_Field = BLOC(condition = "ChoiceOfApproach == 'Field-based DNS'", - NumericalMethod=SIMP(statut='o', typ='TXM', into=['FV', 'Spectral Method']), - ),# fin bloc_Field - bloc_N_particle = BLOC(condition = "ChoiceOfApproach == 'N-Particle Method'", - NumericalMethod=SIMP(statut='o', typ='TXM', into=['SPH', 'Vortex Method']), - ),# fin bloc_N_particle - ), # fin bloc_no_model -)# fin du bloc return de la fonction factTurbulence - -def Particle(cardinalite) : - return FACT (statut='o', max=cardinalite, - ParticleNature = SIMP( statut='o', typ='TXM', into=['Atoms', 'Molecules', 'Dissipative', 'Fluid Particle', 'Discrete Particle']), - b_Atom = BLOC( condition='ParticleNature == "Atoms"', - AtomsName = SIMP( statut='o', typ=(userAtom,'createObject'),), - Atom = FACT (statut ='o', max= '**', - ChemicalSpecie = SIMP( statut='o', typ='TXM'), - Number = SIMP (statut ='o', typ = 'I'), - ElectricCharge = SIMP( statut='o', typ='R'), - MagneticMoment = SIMP( statut='o', typ='R'), - Size = SIMP( statut='f', typ='R'), # relevant ? - ), - ), - b_Molecule = BLOC( condition='ParticleNature == "Molecules"', - MoleculeName = SIMP( statut='o', typ=(userMolecule,'createObject'),), - ChemicalSpecie = FACT ( max='**', statut='o', - ChemicalSpecieName = SIMP( statut='o', typ=userAtom), - Proportion = SIMP( statut='o', typ='R', val_max =1), - ), - ElectricCharge = SIMP( statut='o', typ='R'), - MagneticMoment = SIMP( statut='o', typ='R'), - Shape = SIMP( statut='f', typ='TXM', into=['Linear', 'Trigonal Planar', 'Angular', 'Tetrahedral', 'Octahedral', 'Trigonal pyramid', 'Other']), - ), - b_Dissipative = BLOC( condition='ParticleNature == "Dissipative"', - DPDName = SIMP( statut='o', typ=(userDPD,'createObject'),), - BondedParticles = SIMP(statut="o", typ=bool, defaut=False), - ), - b_Discrete = BLOC( condition='ParticleNature == "Discrete Particle"', - DiscreteParticleName = SIMP(statut='o', typ=(userDiscrete,'createObject'),), - TypeOfDiscreteParticle = SIMP( statut='o', typ='TXM', into=['Solid', 'Droplets', 'Bubbles','Bio Organism'],), - b_TypeDP_Solid = BLOC( condition ='TypeOfDiscreteParticle == "Solid"', - TypeOfSolid = SIMP( statut='o', typ='TXM', into=['Primary Particle', 'Assemblage / Aggregate'], position = 'global'), - b_SolidPrimary = BLOC( condition='TypeOfSolid == "Primary Particle"', - ), - b_SolidAggregate = BLOC( condition='TypeOfSolid == "Assemblage / Aggregate"', - ), - ), - b_TypeBio_Solid = BLOC( condition='TypeOfDiscreteParticle == "Bio Organism"', - TypeOfOrganism = SIMP( statut='o', typ='TXM', into=['Unicellular', 'Multicellular']), - b_Unicellular = BLOC( condition ='TypeOfOrganism=="Unicellular"', - Unicellular = SIMP( statut='o', typ='TXM', into=["Bactaria"], defaut='Bactaria') - ), - b_Multicellular = BLOC( condition ='TypeOfOrganism=="Multicellular"', - Multicellular = SIMP( statut='o', typ='TXM', into=["Animal","Fongus","Plant"]) - ), - ), # b_TypeBio_Solid - Properties = FACT ( statut ='o', - Geometry = SIMP( statut='o', typ='TXM', into=['Sphere', 'Ellopsoids', 'Other Shape']), - b_geom_Sphere = BLOC( condition = 'Geometry == "Sphere"', - ParticleRadius = SIMP( statut='o', typ ='R', val_min = 0), - ), - Weight = FACT (statut = 'o', - Mass = SIMP( statut='o', typ ='R', val_min = 0), - Density = SIMP( statut='o', typ ='R', val_min = 0), - ), - Mechanical = SIMP( statut='o', typ='TXM', into=['Rigid', 'Flexible', 'Deformable']), - b_SolidAggregate = BLOC( condition='TypeOfSolid == "Assemblage / Aggregate"', - Morphological = FACT (statut = 'o', - Consigne = SIMP(statut="o", homo="information", typ="TXM", defaut='Choose optional properties'), - FractalDimension = SIMP( statut='f', typ='R'), - NumberOfPrimaryParticle = SIMP (statut ='f',typ='I'), - EquivalentSize = SIMP( statut='f', typ='R'), - Porosoty = SIMP( statut='f', typ='R'), - ), # Morphological - ), # b_SolidAggregate - ElectroMagnetic = FACT (statut = 'f', - ElectricCharge = SIMP( statut='o', typ='R'), - MagneticMoment = SIMP( statut='o', typ='R'), - ), - b_SolidAggregateBonded = BLOC( condition='TypeOfSolid == "Assemblage / Aggregate"', - BondedParticles = FACT( - ListOfBondedParticles = SIMP(statut='o', max='**', typ = userParticle), - ), - ), - ), # Properties - ), # b_Discrete -############################ - - List_Of_Bonded_Particles = FACT( statut='f', - # -------------------------------------------# - Bonded_Particles = FACT( statut='o', max = "**", - Name_Of_Bonded_Particles = SIMP( statut='o', typ='TXM'), - Species_in_Particle = SIMP( statut='o', min=2, typ='TXM' , max = "**"), - ), # Bonded_Particles - ), # List_Of_Bonded_Particles - - List_Of_Interactions = FACT( statut='o', max = "**", - # --------------------------------------------------# - - Bonded_Interactions = FACT( statut='o', max = "**", - - #Type_Of_Bonded_Interaction = SIMP( statut='o', typ='TXM', into=['No', 'Covalent Bond Length', 'FENE', 'Covalent Bond Angle', 'Dihedral Angles', 'Improper Dihedral', 'Frozen Motion' ], defaut='No', position='global'), - Type_Of_Bonded_Interaction = SIMP( statut='o', typ='TXM', into=['No', 'Covalent Bond Length', 'FENE', 'Covalent Bond Angle', 'Dihedral Angles', 'Improper Dihedral', 'Frozen Motion' ], defaut='No'), - - #La saisie de l'ensemble des liaisons d'un meme type peut se faire ds le meme bloc (soit ds un fichier, soit manuelle) - #Une seule valeur de distante? est a saisir pour l'ensemble - # bloc_covalent_1 = BLOC( condition = 'Type_Of_Bonded_Interaction in ("Covalent Bond Length","FENE")', - # ), # fin bloc_covalent_1 - bloc_covalent_length = BLOC( condition = 'Type_Of_Bonded_Interaction == "Covalent Bond Length"', - Interaction_Length_Parameters = FACT( statut='o', max="**", - Apply_To_Bonded_Particles = SIMP( statut='o', max='**', typ='TXM'), - Spring_Stifness = SIMP( statut='o', typ='R', val_min=0), - Mean_Bond_Length = SIMP( statut='o', typ='R', val_min=0), - ), # fin Interation_Length_Parameters - ), # fin Bond_Length_Parameters - bloc_covalent_angle = BLOC( condition = 'Type_Of_Bonded_Interaction == "Covalent Bond Angle"', - Interaction_Angles_Parameters = FACT( statut='o', max="**", - Apply_To_Bonded_Particles = SIMP( statut='o', max='**', typ='TXM'), - Spring_Stifness = SIMP( statut='o', typ='R', val_min=0), - Mean_Bond_Angle = SIMP( statut='o', typ='R', val_min=0), - ), # fin Interation_Angles_Parameters - ), # fin bloc_covalent_length_and_angle - - #bloc_covalent_length_and_angle = BLOC( condition = 'Type_Of_Bonded_Interaction == "Covalent Bond Length" or Type_Of_Bonded_Interaction == "Covalent Bond Angle"', - # Bond_Parameters = FACT( statut='o', max="**", - # Apply_To_Bonded_Particles = SIMP( statut='o', max='**', typ='TXM'), - # Spring_Stifness = SIMP( statut='o', typ='R', val_min=0), - # bloc_covalent_length = BLOC( condition = 'Type_Of_Bonded_Interaction == "Covalent Bond Length"', - # Mean_Bond_Length = SIMP( statut='o', typ='R', val_min=0), - # ), # fin Bond_Length_Parameters - # bloc_covalent_angle = BLOC( condition = 'Type_Of_Bonded_Interaction == "Covalent Bond Angle"', - # Mean_Bond_Angle = SIMP( statut='o', typ='R', val_min=0), - # ), # fin Bond_Length_Parameters - # ), # fin Bond_Length_Parameters - #), # fin bloc_covalent_length_and_angle - - bloc_FENE = BLOC( condition = 'Type_Of_Bonded_Interaction == "FENE"', - Applies_To_All_Particles = SIMP( statut='o', typ=bool, defaut=True), - bloc_not_on_all = BLOC( condition = 'Applies_To_All_Particles == False', - FENE_Parameters = FACT( statut='o', max="**", - Species_Pair = SIMP( statut='o', max=2, typ='TXM'), - Spring_Constant_H = SIMP( statut='o', typ='R', val_min=0), - LMax = SIMP( statut='o', typ='R', val_min=0), - ), # fin FENE_Parameters - ), # fin bloc_not_on_all - bloc_on_all = BLOC( condition = 'Applies_To_All_Particles == True', - Spring_Constant_H = SIMP( statut='o', typ='R', val_min=0), - LMax = SIMP( statut='o', typ='R', val_min=0), - ), # fin bloc_on_all - ), # fin bloc_FENE - - bloc_le_reste = BLOC( condition = 'Type_Of_Bonded_Interaction in ("Dihedral Angles", "Improper Dihedral", "Frozen Motion")', - Particle_Name = SIMP( statut="f", typ='TXM'), - #Consigne = SIMP( statut="o", homo="information", typ="TXM", defaut='Not Implemented Yet'), - - ), - ), # fin Bonded_Interaction - - # ------------------------------- # - - Unbonded_Interactions = FACT( statut='o', max= "**", - - Type_Of_Unbonded_Interaction = SIMP( statut='o', typ='TXM', into=['No', 'electro_magnetic', 'Repulsion_and_VdW', 'Soft_Potentiel', ], defaut='No', position='global',fenetreIhm='menuDeroulant'), - - bloc_elec = BLOC( condition = 'Type_Of_Unbonded_Interaction == "electro_magnetic"', - Permittivity = SIMP( statut='o', typ='R', position='global_jdc'), - Magnetic = SIMP( statut='o', typ=bool, defaut=False,), - bloc_magnetic = BLOC( condition = 'Magnetic == True', - Permability = SIMP( statut='o', typ='R'), - ), # bloc_magnetic - ),# fin bloc_elec - - bloc_VdW = BLOC( condition = 'Type_Of_Unbonded_Interaction == "Repulsion_and_VdW"', - Species_Pair_Parameters = FACT( statut='o', max="**", - Type_Repulsion_and_VdW = SIMP( statut='o', typ='TXM', into = [ 'Lennard_Jones', 'Hard_sphere_model']), - Species_Pair = SIMP( statut='o', max=2, typ='TXM'), - VdW_Radius = SIMP( statut='o', typ='R', val_min=0), - b_Lennard = BLOC( condition = "Type_Repulsion_and_VdW == 'Lennard_Jones'", - Depth_Of_The_Potential_Well = SIMP( statut='o', typ='R', val_min=0), - ), # fin b_Lennard - ), # fin Species_Pair_Parameters - ), # bloc_VdW - - b_Param_Soft_Potentiel = BLOC( condition = "Type_Of_Unbonded_Interaction == 'Soft_Potentiel'", - Groot_Warren_Repulsion = SIMP( statut='o', typ='R', defaut=25.0, val_min=0), - Groot_Warren_Cutoff = SIMP( statut='o', typ='R', defaut=1.0, val_min=0), - Drag_Coefficient = SIMP( statut='o', typ='R'), # les 2 valent 0 pour MD - Drag_Force_Cutoff = SIMP( statut='o', typ='R', val_min=0), - ), # b_Param_Soft_Potentiel - - ), # fin UnBonded_Interactions - - # ------------------------------- # - - External_Field_Interaction = FACT( statut='o', max= "**", - Type_Of_Interaction_With_An_External_Field = SIMP( statut='o', typ='TXM', into=['No','gravitational field','electric field','magnetic field', 'Hydrodynamic_Field'], fenetreIhm='menuDeroulant', defaut ='No'), - b_gravite = BLOC( condition = 'Type_Of_Interaction_With_An_External_Field=="gravitational field"', - G = SIMP( statut='o', typ='R', defaut=9.81), - ), - b_elect = BLOC( condition = 'Type_Of_Interaction_With_An_External_Field=="electric field"', - Electric_Field = champ('E', ('E',), 1), - ), - b_magnetic = BLOC( condition = 'Type_Of_Interaction_With_An_External_Field=="magnetic field"', - Magnetic_Field = champ('B', ('B',), 1), - ), - b_hydrodynamic = BLOC( condition = 'Type_Of_Interaction_With_An_External_Field=="hydrodynamic field"', - Hydrodynamic_Field = champ('U', ('U',), 1), - ), - b_External_Field_Interaction = BLOC( condition = 'Type_Of_Interaction_With_An_External_Field != "No"', - Field_Applies_On_All_Species = SIMP( statut='o', typ=bool, defaut=True), - b_porte_espece = BLOC( condition = 'Field_Applies_On_All_Species == False ', - Species_List = SIMP( statut='o', typ='TXM', max= '**'), # faire un typ = "espece" - ), - ), # fin b_External_Field_Interaction - ), # fin Interaction_External_Field - - ), # fin List_Of_Interactions - -############################ - ) - -def bloc_CPS(): - return BLOC(condition = 'SystemType == "Classical particle system"', - Particle = Particle('**'), -) - -def bloc_FluideMacro(): - return BLOC(condition = 'SystemType == "Continuum system"', - ComplexFluid = SIMP(typ=bool, statut='o', defaut = False, position='global'), - FlowNature = SIMP(typ='TXM', statut='o', into =['Laminar', 'Turbulent'], position='global'), - bloc_FlowNature_Turbulent = BLOC(condition = ' FlowNature == "Turbulent"', - TurbulenceForFlowDynamics = FactTurbulence('o'), - ), #------ fin bloc_FlowNature_Turbulent - -# ConstitutiveRelation = FACT(statut ='o',max='**', -# Name = SIMP(statut='o', typ=(constitutiveRelation,'createObject'),), -# Nature = SIMP( statut='o', into =['Equation Of State', 'Force Field Relation'], typ ='TXM'), -# ), -# ---------------------- Effets thermiques - #bloc_NonThermalEffectsAndNoEffect = BLOC(condition = ' ThermalEffects == "Non thermal" or ThermalEffects == "Passive on flow dynamics"', - # DensityEquationOfState = SIMP(typ='TXM', statut='o', into =['Constant density'], defaut = 'Constant density'), - # ), # fin bloc_NonThermalEffectsAndNoEffect - - Thermal = FACT (statut ='o', - ThermalEffects = SIMP(typ='TXM', statut='o', into =['Non thermal', - 'Passive on flow dynamics', 'Active on flow dynamics'], defaut='Non thermal', position='global' ), - - - TemperatureInitialisation = FACT( statut ='o', - bloc_NonThermalEffects = BLOC(condition = ' ThermalEffects == "Non thermal"', - InitialTemperature = SIMP(typ='R', statut='o', val_min=-273.15 ), - ), # fin bloc_NonThermal - bloc_NonNonThermalEffects = BLOC(condition = 'not(ThermalEffects == "Non thermal")', - OriginOfThermalFluxModel = SIMP( statut='o', into =['Given', 'Interaction'], typ ='TXM'), - BlocGiven =creeBlocPourLesFichiers (' OriginOfThermalFluxModel == "Given"', None, ('Med', 'cgns' ), FieldName=1), - ), - ), - - DensityInitialisation = FACT( statut ='o', - bloc_DensityNonThermal = BLOC(condition = ' ThermalEffects == "Non thermal" or ThermalEffects == "Passive on flow dynamics"', - DensityEquationOfState = SIMP(typ='TXM', statut='o', into =['Constant density'], defaut = 'Constant density'), - InitialDensity = SIMP(typ='R', statut='o',), - ), # fin bloc_DensityNonThermal - bloc_DensityAndThermalActive = BLOC(condition = ' ThermalEffects == "Active on flow dynamics"', - OriginOfThermalEffects = SIMP( statut='o', into =['Given', 'Constant density'], typ ='TXM', defaut ='Given'), - BlocGiven =creeBlocPourLesFichiers (' OriginOfThermalEffects == "Given"', None, ('Med', 'cgns' ), FieldName=1), - BlocConstant = BLOC(condition = 'OriginOfThermalEffects == "Constant density"', - InitialDensity = SIMP(typ='R', statut='o',), - ), - ), - ), # fin DensityInitialisation - - bloc_ThermalEffects_Active = BLOC(condition = ' ThermalEffects == "Active on flow dynamics"', - ActiveOnFlowEffect = FACT(statut = 'o', max='**', - RelationType = SIMP( statut='o', into =['Equation Of State', 'Force Field Relation'], typ ='TXM'), - bloc_EOS=BLOC( condition = 'RelationType == "Equation Of State"', - TypeOfEquationOfState = SIMP( statut='o', into =['variable density', 'compressible'], typ ='TXM'), - ), - bloc_NonEOSAndSimple=BLOC( condition = 'RelationType == "Force Field Relation" and ComplexFluid == False', - TypeOfEquationOfState = SIMP( statut='o', into =['Newtonian', 'Fick Law', 'Fourier Law'], intoXML=['Newtonian', 'Fick Law', 'Fourier Law','Shear-stress closure', 'Scalar flux'], typ ='TXM'), - ), - bloc_NonEOSAndComplex=BLOC( condition = 'RelationType == "Force Field Relation" and ComplexFluid == True', - TypeOfEquationOfState = SIMP( statut='o', into =['Shear-stress closure', 'Scalar flux'], typ ='TXM', intoXML=['Newtonian', 'Fick Law', 'Fourier Law','Shear-stress closure', 'Scalar flux']), - ), - ), - ), # fin bloc_ThermalEffects_Active - - - ),# fin Fact Thermal - -# ---------------------- Effets thermiques - -# Thermal = FACT (statut ='o', -# ThermalEffects = SIMP(typ='TXM', statut='o', into =['Non thermal', -# 'Passive on flow dynamics', 'Active on flow dynamics'], defaut='Non thermal'), -# -# bloc_NonThermalEffects = BLOC(condition = ' ThermalEffects == "Non thermal" or ThermalEffects == "Passive on flow dynamics"', -# InitialTemperature = SIMP(typ='R', statut='o', val_min=-273.15 ), -# ), # fin bloc_NonThermal -# -# bloc_NonThermalEffectsAndNoEffect = BLOC(condition = ' ThermalEffects == "Non thermal" or ThermalEffects == "Passive on flow dynamics"', -# DensityEquationOfState = SIMP(typ='TXM', statut='o', into =['Constant density'], defaut = 'Constant density'), -# ), # fin bloc_NonThermalEffectsAndNoEffect -# -# bloc_ThermalEffects_Active = BLOC(condition = ' ThermalEffects == "Active on flow dynamics"', -# DensityEquationOfState = SIMP(typ='TXM', statut='o', into =['Variable density', 'Compressible']), -## PNJPM est ce suffisant ? -# ), # fin bloc_ThermalEffects_Active -# -# bloc_ThermalEffects = BLOC(condition = ' ThermalEffects == "Active on flow dynamics" or ThermalEffects == "Passive on flow dynamics"', -# bloc_scalar_thermal_flux = BLOC (condition = "FlowNature == 'Turbulent'", -# ThermalFluxModel = FactTurbulence('f'), -# ),# fin bloc_scalar_thermal_flux -# WithChemicalReactions = SIMP(typ=bool, statut ='o', defaut = False), -# ), # fin bloc_ThermalEffects -# ),# fin Fact Thermal - -# ---------------------- Scalaire additional - bloc_scalar_FluidTurbulentOrLaminar = BLOC(condition = "(ComplexFluid == False and FlowNature == 'Turbulent') or (ComplexFluid == False and FlowNature == 'Laminar')", - Scalars = FACT(statut = 'o', - bloc_FlowNature_Turbulent_For_Scalars = BLOC(condition = ' FlowNature == "Turbulent"', - ScalarsTurbulenceModelling = FactTurbulence('o', ajout='NoOne'), - ), - bloc_ThermalEffects_On = BLOC(condition = ' ThermalEffects == "Active on flow dynamics" or ThermalEffects == "Passive on flow dynamics"', - TemperatureScalar =FACT(statut ='o', - Name = SIMP(typ=(scalar,'createObject'), statut='o', defaut ='Temperature', homo='constant'), - SourceTerm=SIMP(typ=bool, statut='o', defaut=False), - blocSourceTerm = FactTermeSource('SourceTerm==True'), - # bloc_scalar_FluidTurbulentandNonComplexe = BLOC (condition = "FlowNature == 'Turbulent'", - # ImplicitScalarFluxModel = FactTurbulence('f'), - # ) # bloc_scalar_FluidTurbulentandNonComplexe - ),# ObligatoireScalaire - ), - Scalar = FACT(statut = 'o', max ='**', - Name = SIMP(typ=(scalar,'createObject'), statut='o',), - bloc_scalar_FluidTurbulentandNonComplexe = BLOC (condition = "FlowNature == 'Turbulent'", - ScalarFluxModel = FactTurbulence('f'), - ), # bloc_scalar_FluidTurbulentandNonComplexe - SourceTerm=SIMP(typ=bool, statut='o', defaut=False), - blocSourceTerm = FactTermeSource('SourceTerm==True'), - ),# Scalar - ),# AdditionalScalars - #UtiliseLesScalaires=SIMP(typ=scalar, statut='o',) - ), # fin FluidTurbulentandNonComplexe - #bloc_scalar_FluidLaminaireandNonComplexe = BLOC (condition = "ComplexFluid == False and FlowNature == 'Laminar'", - # AdditionalScalars = FACT (statut = 'o', - # Scalar = FACT ( statut = 'f', max ='**', - # Name = SIMP(typ='TXM', statut='o',), - # ),# Scalar - # ),# AdditionalScalars - #), # fin FluidLaminaireandNonComplexe - # il faut une validation de coherence entre l existence de tous les turbulencesModelling - )# fin bloc_FluideMacro - -#-----------------------------------------------------# -def prepareBoundaryCondition(): - return FACT( statut='f',max = '**', # max = nb de facette de bord - Apply_to_Wich_Quantity = SIMP( statut='o', typ='TXM', into=['Mass FLux', 'Scalars']), - applyOnEssai2 = SIMP (statut ='o', typ=scalar, ), - - b_on_scalar=BLOC(condition='Apply_to_Wich_Quantity == "Scalars"', - applyOn = SIMP (statut ='o', typ=scalar, ), - - Type_Of_Boundary_Condition = SIMP( statut='o', typ='TXM', into=['Inlet', 'Outlet', 'Symmetry','Periodicity', 'Wall', 'Free Surface'], ), - b_periodique = BLOC( condition = "Type_Of_Boundary_Condition == 'Periodic'", - Direction = SIMP( statut='o', typ='TXM', into=['X','Y','Z', 'XYZ']), - ), # b_periodique - - b_inOrOutlet = BLOC( condition = "Type_Of_Boundary_Condition == 'Inlet' or Type_Of_Boundary_Condition == 'Outlet'", - Formulation_of_Boundary= SIMP( statut='o', typ='TXM', into=['Dirichlet','Neumann','Cauchy']), - b_Formulation_of_Boundary_dirichlet = BLOC( condition = 'Formulation_of_Boundary == "Dirichlet"', - InletProfile = SIMP (statut ='o', typ='TXM', defaut='QuestionJP'), - IntegratedValue = SIMP ( statut='o', typ='R'), - #PN : faire une regle - ), -# b_Formulation_of_Boundary_Neumann = BLOC( condition = 'Formulation_of_Boundary == "Neumann"', -# ), -# b_Formulation_of_Boundary_Cauchy = BLOC( condition = 'Formulation_of_Boundary == "Cauchy"', -# ), -# ), # b_inOrOutlet - -# #b_non_periodique = BLOC( condition = "Type_Of_Boundary_Condition != 'Periodic'", -# # Boundary_Face = SIMP( statut='o', typ= spatialRegion), -# #Apply_to_Wich_Quantity = SIMP( statut='o', typ='TXM', into=['Mass FLux', 'Velocity', 'Temperature','Scalars','all',]), - ), - - # Formulation_of_Boundary= SIMP( statut='o', typ='TXM', into=['Dirichlet','Neumann']), - # b_Formulation_of_Boundary_dirichlet = BLOC( condition = 'Formulation_of_Boundary == "Dirichlet"', - # Value = SIMP ( statut='o', typ='R'), - # ), - ), # b_non_periodique - ) # Boundary_Conditions - - - - -JdC = JDC_CATA ( - code = 'Vimmp', - # faire un validateur qui verifie que si on active reactions chimiques il faut que les masses molaires soient rentrees -) - -Component = OPER(nom='Component', sd_prod=composant, - SystemType = SIMP(typ='TXM', into=['Quantum system', 'Classical particle system', 'Continuum system'], statut='o',position='global'), - PhysicalDescription = FACT(statut = 'o', - b_FluideMacro = bloc_FluideMacro(), - b_bloc_CPS = bloc_CPS(), - ), - b_ModeleNumerique_quantum = prepareBlocSystemType('Quantum system'), - b_ModeleNumerique_classical = prepareBlocSystemType('Classical particle system'), - b_ModeleNumerique_continuum = prepareBlocSystemType('Continuum system'), - BoundaryConditions = prepareBoundaryCondition(), -) - -Species = PROC(nom='Species', - Specie = FACT( statut='o', max ="**", - Name = SIMP( statut='o', typ=(especeChimique,'createObject') ), - masse_molaire = SIMP( statut='f', typ='R',), - ) -) - -def monBlocInteractionTypeChamp (): - return BLOC (condition = '1 == 1' , # a distinguer selon les cas - fieldNameInOrigine = SIMP(typ='TXM', statut='o'), - fieldNameInDestination = SIMP(typ='TXM', statut='o'), - ) - -def TousSelonLeTypeDeFormatDisponible(condition, labelName='fileName'): - transferType = SIMP(typ='TXM', statut='o', into =['File', 'Memory', 'CorbaObject']) - maListe = list(dictCodeFormat.keys()) - dicoArgs={} - #index=0 - #for Solv1 in maListe[index:]: - # for Solv2 in maListe[index:]: - # #print (Solv1,Solv2, calculCommun(Solv1, Solv2,dictCodeFormat)) - # print ('PNPN attention changement de dictCodeFormat tant que getEficasAttribut n est pas correct') - # conditionSolv = 'transferType == "File" and getEficasAttribut(origine,"Solver")==Solv1 and getEficasAttribut(destination,"Solver")==Solv2' , - # conditionSolv = 'transferType == "File"' - # monBlocFichier=creeBlocPourLesFichiers (conditionSolv, 'FileName', calculCommun(Solv1, Solv2,dictCodeFormat)) - # dicoArgs['monBlocFichier'+str(index)]=monBlocFichier - # index=index+1 - mesFormats=set() - for solv1 in dictCodeFormat.keys() : - for f in dictCodeFormat[solv1] : mesFormats.add(f) - conditionSolv='transferType == "File"' - BlocFichier=creeBlocPourLesFichiers (conditionSolv, labelName, mesFormats) - dicoArgs['BlocFichier']=BlocFichier - monBlocChamp = BLOC(condition = "transferType=='File'", FieldName=SIMP(typ='TXM', statut='o')) - dicoArgs['monBlocChamp']=monBlocChamp - return BLOC(condition = condition,transferType=transferType, **dicoArgs) - -def SelonLeTypeDeFormatDisponibleMapper(condition): - transferType = SIMP(typ='TXM', statut='o', into =['File', 'Memory', 'CorbaObject']) - maListe = list(dictCodeFormat.keys()) - dicoArgs={} - index=0 - for Solv1 in maListe[index:]: - for Solv2 in maListe[index:]: - #print (Solv1,Solv2, calculCommun(Solv1, Solv2,dictCodeFormat)) - print ('PNPN attention changement de dictCodeFormat tant que getEficasAttribut n est pas correct') - conditionSolv = 'transferType == "File" and getEficasAttribut(origine,"Solver")==Solv1 and getEficasAttribut(destination,"Solver")==Solv2' , - conditionSolv = 'transferType == "File"' - monBlocFichier=creeBlocPourLesFichiers (conditionSolv, 'FileName', calculCommun(Solv1, Solv2,dictCodeFormat)) - dicoArgs['monBlocFichier'+str(index)]=monBlocFichier - index=index+1 - monBlocChamp = BLOC(condition = "transferType=='File'", FieldName=SIMP(typ='TXM', statut='o')) - dicoArgs['monBlocChamp']=monBlocChamp - return BLOC(condition = condition,transferType=transferType, **dicoArgs) - -Mapper = OPER (nom= 'Mapper',sd_prod=mapper, - Solver=SIMP(statut='o', typ='TXM', into = list(dictMapperFormat.keys())), - ) -Converter = OPER (nom= 'Converter',sd_prod=converter) - -Interactions = PROC(nom='Interactions', - Interaction = FACT( max = '**', - origine = SIMP(typ=modeleNumDuCompo, statut='o'), - destination = SIMP(typ=modeleNumDuCompo, statut='o'), - monBloc_FFFF = BLOC ( - condition = 'getEficasAttribut(origine,"ModelType") == "Fields" and getEficasAttribut(destination,"ModelType") == "Fields"' , - termeLE = SIMP(typ='TXM', statut='o', into = dictTermeLE['Fields','Fields'],fenetreIhm='menuDeroulant'), - ), - monBloc_DPDP = BLOC ( - condition = 'getEficasAttribut(origine,"ModelType") == "Particles" and getEficasAttribut(destination,"ModelType") == "Particles"' , - termeLE = SIMP(typ='TXM', statut='o', into = dictTermeLE['Particles','Particles'],fenetreIhm='menuDeroulant'), - ), - monBloc_FFDP = BLOC ( - condition = 'getEficasAttribut(origine,"ModelType") == "Fields" and getEficasAttribut(destination,"ModelType") == "Particles"' , - termeLE = SIMP(typ='TXM', statut='o', into = dictTermeLE['Fields','Particles'],fenetreIhm='menuDeroulant'), - ), - monBloc_DPFF = BLOC ( - condition = 'getEficasAttribut(origine,"ModelType") == "Particles" and getEficasAttribut(destination,"ModelType") == "Fields"' , - termeLE = SIMP(typ='TXM', statut='o', into = dictTermeLE['Particles','Fields'],fenetreIhm='menuDeroulant'), - ), - couplingPart = FACT( statut='o', - couplingMode = SIMP(typ='TXM', statut='o', into =['direct', 'scaling', 'conversion']), - monBlocDirect = TousSelonLeTypeDeFormatDisponible( "couplingMode=='direct'" ), - monBlocIn = BLOC ( condition = "couplingMode=='scaling' or couplingMode=='conversion'", - OutFromComponent = FACT( statut='o', - monBlocFormat = TousSelonLeTypeDeFormatDisponible( "1", labelName = 'outFromMapperFileName' ), - ), - ), - monBlocMapper = BLOC ( condition = "couplingMode=='scaling' or couplingMode=='conversion'", - ConversionNode = FACT( min=1, max='**', statut ='o', - tool = SIMP(typ=mapper, statut ='o'), - OutFromMapper = FACT (statut ='o', - monBlocFormat = TousSelonLeTypeDeFormatDisponible( "1", labelName = 'outFromMapperFileName' ), - ), - ), - ), - ), - monBlocUseConverter = BLOC ( condition = "couplingMode=='use converter'", - myConverter = SIMP(typ=converter, statut ='o') - ), - ), -) - -dict_condition={ -'ModelType' : ('Interactions', 'Component'), -#'NumericalMethod' : ('Interactions', 'Component'), -# 'TypeOfSolid' : ('Component',) -} - -Temporal_Aspects = PROC( nom ="Temporal_Aspects", - Simulated_Time_Laps = FACT (statut='o', max='**', - name = SIMP(statut='o', typ=(simulatedTime,'createObject'),), - initialTime = SIMP( statut='o', typ='R'), - finalTime = SIMP( statut='o', typ='R'), - timeDiscretization = SIMP( statut ='o', typ = 'TXM', into = ['Constant Time Step', 'Varying Time Step']), - bloc_Constant = BLOC (condition = 'timeDiscretization == "Constant Time Step"', - constantTimeStep = SIMP (statut ='o', typ = 'R'), - ), - bloc_Varying = BLOC (condition = 'timeDiscretization == "Varying Time Step"', - CFLNumberCriteria = SIMP (statut ='o', typ = 'R'), - FourierNumberCriteria = SIMP (statut ='o', typ = 'R'), - ), - ), -) -# -Spatial_Aspects = PROC( nom='Spatial_Aspects', - System_Geometry = FACT ( statut='o', max='**', - System_Geometry_name = SIMP( statut='o', typ=(systemGeometry, 'createObject'),), - Shape = FACT (statut ='f', max='**', - Shape_Nature = SIMP( statut='o', typ='TXM', into=['Typical Geometry', 'CAD']), - b_Shape = BLOC( condition = 'Shape_Nature == "Typical Geometry"', - Box = SIMP( statut='o', typ='TXM', into=['Cube', 'Sphere','Cylinder'] ), - b_Cube = BLOC( condition = 'Box == "Cube"', - #Taille_Box_Englobante = SIMP( statut='o', typ='R', max=3, min =3) - # derait etre un Tuple(3) mais a faire apres la projection - #Size_Of_Bounding_Box = SIMP( statut='o', typ=Tuple(3), validators=VerifTypeTuple(('R','R','R'),),) - Size_Of_Bounding_Box = SIMP( statut='o', typ='R', max=3, min=3, ), - ), # fin b_Cube - b_Boule = BLOC( condition = 'Box == "Sphere"', - Center = SIMP( statut='o', typ='R', max=3, min =3), - ),# fin b_Boule - b_Cylinder = BLOC( condition = 'Box == "Cylinder"', - Heigth = SIMP( statut="o", typ='R', val_min=0.0, ang='Nanotube length [m]'), - ),# fin b_Tube - b_Boule_ou_Cylinder = BLOC( condition = 'Box == "Sphere" or Box == "Cylinder"', - Radius = SIMP( statut='o', typ='R', val_min=0.0, ang='radius length [m]') , - ),# fin b_Boule_ouCylinder - ), # fin b_Shape - b_CAO = creeBlocPourLesFichiers( "Shape_Nature == 'CAD'",'Domain_File', ['txt','I-deas', 'Gmsh', 'top',]), - ShapeIdentifier=SIMP( statut='o', typ=(cadShape,'createObject'),max='**',), - ), # fin Shape - ),# System_Geometry - Spatial_Discretization = FACT ( statut='f', max="**", - Mesh_Name = SIMP( statut='o', typ=(meshIdentifier,'createObject')), - b_Mesh = creeBlocPourLesFichiers( "1 == 1",'Domain_File', ['med', 'Gmsh',]), - GroupIdentifier = SIMP( statut='o', typ=(meshGroup,'createObject'),max='**',), - ), - Boundary_Constraints = FACT (statut = 'f', - Motion = FACT ( statut='f', - Motion_Nature = SIMP(statut='o', typ='TXM', into=['Fixed boudary', 'Translational motion', 'Rotational motion', 'Scaling']), - b_Translational_motion=BLOC(condition = 'Motion_Nature == "Translational motion"', - Translation_Velocity=SIMP( statut='o', typ='R'), - boundaries=SIMP( statut='o', typ=spatialRegion,max='**' ), - ), - b_Rotational_motion=BLOC(condition = 'Motion_Nature == "Rotational motion"', - Rotation_Rate=SIMP( statut='o', typ='R'), - boundaries=SIMP( statut='o', typ=spatialRegion,max='**' ), - ), - b_fixed=BLOC(condition = 'Motion_Nature == "Fixed boudary"', - boundaries=SIMP( statut='o', typ=spatialRegion,max='**', homo='SansOrdreNiDoublon'), - #boundaries=SIMP( statut='o', typ=spatialRegion,max='**' ), - ), - ), -#PN decrire page 28 - Mapping = FACT ( statut='f', - ), - ), # Boundary_Constraints -) # fin Geometric_Domain - -TEXTE_NEW_JDC = "\ -Velocity=scalar()\ -" diff --git a/Vimmp/OLD/cata_CSAndCPS_v6.py b/Vimmp/OLD/cata_CSAndCPS_v6.py deleted file mode 100644 index f6250761..00000000 --- a/Vimmp/OLD/cata_CSAndCPS_v6.py +++ /dev/null @@ -1,834 +0,0 @@ -from Accas import * - -class composant(ASSD):pass -class mapper(ASSD):pass -class converter(mapper):pass -class modeleNumDuCompo(UserASSD):pass -class especeChimique(UserASSD):pass -class userParticle(UserASSD) :pass -class userAtom(userParticle) :pass -class userMolecule(userParticle) :pass -class userDiscrete(userParticle) :pass -class userDPD(userParticle) :pass - -class spatialRegion(UserASSD):pass -class cadShape(spatialRegion):pass -#class meshGroup(spatialRegion,UserASSDMultiple):pass -class meshGroup(spatialRegion):pass -class meshIdentifier(spatialRegion):pass -class systemGeometry(UserASSD):pass -class simulatedTime(UserASSD):pass -class constitutiveRelation(UserASSD):pass - -class boundaryObject(UserASSD) : pass -class scalar(boundaryObject):pass -class dynamicVariable(boundaryObject):pass - - -# PN a faire --> ajouter un MC modeleNumerique ( apres avoir renomme le modeleNumerique actuel en classe de modele numerique) -# et le dictionnaire d apres -dictTypModNumModNum = { - ('Continuum system','Particles') : ('SPH','Lagrangian one-fluid-particle pdf'), - ('Continuum system','Fields') : ('FV','FEM', 'Spectral method'), - ('Classical particle system','Particles') : ('MD', 'DPD', 'SDPD','SPH','CFD_Discrete_Particles'), - ('Classical particle system','Fields') : ('LBM',), - ('Quantum system','Particles') : ('Particle method',), - ('Quantum system','Fields') : ('Wave',), -} - -dictCodeModeleNumerique = { - 'Code_Saturne' : ('Lagrangian one-fluid-particle pdf', 'FV', 'CFD_Discrete_Particles',), - 'Fluent' : ('FV',), - 'Culgi Package': (), - 'DEM_SD' : ('Lagrangian one-fluid-particle pdf', 'FV', 'CFD_Discrete_Particles',), - 'DFTB+' : ('density functional tight binding method',), - 'DL_MESO_DPD' : ('Lagrangian one-fluid-particle pdf', 'FV', 'CFD_Discrete_Particles',), - 'DL_MESO_LBE' : ('Lagrangian one-fluid-particle pdf', 'FV', 'CFD_Discrete_Particles',), - 'DL_POLY_4' : ('Lagrangian one-fluid-particle pdf', 'FV', 'CFD_Discrete_Particles',), - 'GROMACS' : ('Lagrangian one-fluid-particle pdf', 'FV', 'CFD_Discrete_Particles',), - 'GROMACS_LS' : ('Lagrangian one-fluid-particle pdf', 'FV', 'CFD_Discrete_Particles',), - 'LAMMPS' : ('Lagrangian one-fluid-particle pdf', 'FV', 'CFD_Discrete_Particles',), - 'NWChem' : ('Lagrangian one-fluid-particle pdf', 'FV', 'CFD_Discrete_Particles',), - 'OpenFOAM' : ('Lagrangian one-fluid-particle pdf', 'FV', 'CFD_Discrete_Particles',), - 'Quantum EXPRESSO' : ('Particle method', 'Wave',), - 'RHEO_AGGRATE' : ('Particle method', 'Wave',), - 'RHEO_DROP' : ('Particle method', 'Wave',), - 'STAR_CCM+' : ('FV', 'Particles',), - 'Code Nill' : ('Spectral method', ), -} - -dictCodeFormat = { - 'Code_Saturne' : ('Med', 'cgns', 'msh', 'des', 'unv', ), - 'Culgi Package': ('cof',), - 'DEM_SD' : ('geo', 'ascii'), - 'DFTB+' : ('geo', 'ascii'), - 'Fluent' : ('FluentFormat', ), - 'OpenFOAM' : ('OpenFoamFormat', 'Med', ), -} - -dictMapperFormat = { - 'Med Coupling' : ('Med',), - 'Gmsh' : ('Med', 'OpenFoamFormat'), -} - -dictTermeLE = { - ('Fields','Particles') : ('Fluid_Velocity_Field', - 'Fluid_Temperature_Field', - 'Fluid_Species_Mass_Fraction_Fluid',), - ('Particles','Fields') : ('Fluid_Particle_Momentum_Exchange_Field', - 'Fluid_Particle_Thermal_Exchange_Field', - 'Lagrangian one-particle pdfFluid_Particle_Mass_Source_Field', - 'Particle_Volumetric_Concentration_Modified_Fluid_Viscosity', - 'Particle_Extra_Stress_Tensor'), - ('Particles','Particles') : ('Pas encore fait'), - ('Fields','Fields') : ('Pas encore fait'), -} - -dictCodeConvertisseur = { - ('Saturne', 'OpenFOAM') : ('gmsh', 'Saturne2CDM and CDM2OpenFoam'), - ('Saturne', 'Fluent') : ( 'Saturne2CDM and CDM2Fluent'), - ('Fluent', 'OpenFOAM') : ('Fluent2CDM and CDM2OpenFoam'), -} - -dictVariableDynamique = { - 'K-Epsilon' : ('K', 'epsilon'), -} - -#---------------------------------------- -def prepareBlocSystemType(systemType) : -#---------------------------------------- - condition = "SystemType == '" + systemType + "'" - Identifier = SIMP(statut='o', typ=(modeleNumDuCompo,'createObject'),) - SimulatedTimeLapse = SIMP(statut ='o', typ = simulatedTime) - ModelType = SIMP(statut='o', typ='TXM', into = ('Particles', 'Fields'), position='inGetAttribut') - dicoArgs={} - - for typeMod in ('Particles', 'Fields'): - conditionType = "ModelType == '" + typeMod + "'" - NumericalMethod = SIMP(statut='o',typ='TXM', into=dictTypModNumModNum[systemType, typeMod], - position='global', intoXML=allValueInDict(dictTypModNumModNum)) - dicoBloc = {} - for modeleNumerique in list(dictTypModNumModNum[systemType,typeMod]): - conditionNum = "NumericalMethod == '" + modeleNumerique + "'" - setCode = set() - for code in dictCodeModeleNumerique.keys(): - if modeleNumerique in dictCodeModeleNumerique[code]: setCode.add(code) - Solver = SIMP(statut='o', typ='TXM', into=list(setCode), intoXML=list(dictCodeModeleNumerique.keys()) ) - monNomBloc='b_ModelName_' + modeleNumerique.replace(' ','_') - if setCode !=set(): dicoBloc[monNomBloc]=BLOC(condition=conditionNum, nomXML='b_ModelName',Solver=Solver) - dicoArgs['b_modelType'+typeMod] = BLOC(condition=conditionType, NumericalMethod=NumericalMethod,**dicoBloc) - - blocMeshRef = BLOC(condition = '(ModelType == "Fields") and (NumericalMethod == "FV")', - Mesh_Identifiers = SIMP (statut ='o', max ='**', typ = meshIdentifier),) - dicoArgs['blocMeshRef'] = blocMeshRef - NumericalModel = FACT(statut='o', max= '**', Identifier=Identifier, ModelType=ModelType, - SimulatedTimeLapse=SimulatedTimeLapse, **dicoArgs) - return BLOC(condition=condition, nomXML='b_systemType', NumericalModel=NumericalModel) - -#----------------------------------- -def calculCommun(key1, key2, dico): -#----------------------------------- -# retourne la liste des valeurs communes a dico[key1] et dico[key2] - monSet=set() - if not key1 in dico: return () - if not key2 in dico: return () - for val in dico[key1]: - if val in dico[key2]: - monSet.add(val) - if monSet == set() : monSet.add ('No common format') - return list(monSet) - -#------------------------- -def allValueInDict(dico): -#------------------------- -# retourne la liste de toutes les valeurs possible dans dico - monSet=set() - for clef in dico : - for val in dico[clef] : monSet.add(val) - return monSet - -#------------------------------------------------------------------------------------ -def creeBlocPourLesFichiers(laCondition, NomDuFichier, ListeFormats, FieldName=False): -#------------------------------------------------------------------------------------- - SIMPFormatFichier = SIMP(statut='o', typ = 'TXM', into = tuple(ListeFormats) + ('others',), ) - dicoDesBlocs = {} - for formatFich in ListeFormats : - nomBloc = 'b_format_fichier' + str(formatFich) - typeDesFichiers = ('Fichier', formatFich + " Files (*." + formatFich + ");;All Files (*)",) - blocCondition ="FileFormat == '" + formatFich + "'" - dicoDesBlocs[nomBloc] = BLOC( condition = blocCondition, FileName = SIMP(statut='o', typ = typeDesFichiers ),) - dicoDesBlocs['b_format_fichier_others'] = BLOC(condition="FileFormat == 'others'", FileName = SIMP(statut='o', typ = ('Fichier','All Files (*)'),),) - if FieldName: - SIMPFieldName = SIMP(statut='o', typ = 'TXM',) - return BLOC(condition=laCondition, FileFormat = SIMPFormatFichier, **dicoDesBlocs, FieldName=SIMPFieldName) - else : - return BLOC(condition=laCondition, FileFormat = SIMPFormatFichier, **dicoDesBlocs) - -#------------------------------------------------------------------------------------ -def creeBlocPourLesFichiers2(laCondition, NomDuFichier='FileName', ListeFormats=[], FieldName=False): -#------------------------------------------------------------------------------------- -# il faut reflechir pour parametrer NomDuFichier -# et le type (existing... du fichier) -# et utiliser le creeBlocPourLesFichiers2 - SIMPFormatFichier = SIMP(statut='o', typ = 'TXM', into = tuple(ListeFormats) + ('others',), ) - dicoDesBlocs = {} - for formatFich in ListeFormats : - dicoArgs={} - nomBloc = 'b_format_fichier' + str(formatFich) - typeDesFichiers = ('Fichier', formatFich + " Files (*." + formatFich + ");;All Files (*)",) - blocCondition = "FileFormat == '" + formatFich + "'" - dicoArgs[NomDuFichier] = SIMP(statut='o', typ = typeDesFichiers ) - dicoDesBlocs[nomBloc] = BLOC( condition = blocCondition, **dicoArgs) - dicoArgs={} - dicoArgs[NomDuFichier]=SIMP(statut='o', typ = ('Fichier','All Files (*)'),), - dicoDesBlocs['b_format_fichier_others'] = BLOC(condition="FileFormat == 'others'", **dicoArgs) - if FieldName: - SIMPFieldName = SIMP(statut='o', typ = 'TXM',) - return BLOC(condition=laCondition, FileFormat = SIMPFormatFichier, **dicoDesBlocs, FieldName=SIMPFieldName) - else : - return BLOC(condition=laCondition, FileFormat = SIMPFormatFichier, **dicoDesBlocs) - -#--------------------------------------------- -def champ(nomDelaContante, labels ,nbReels ) : -#--------------------------------------------- -# ajouter les extensions pour le fichier et les blocs associes -# certains champs ne seront jamais uniformes - -#PNPN : Passer le nom du champ pour le label du vecteur -# A revoir - dicoBloc = {} - dicoBloc[nomDelaContante] = SIMP( statut='o', typ='R') - return FACT( statut='o', - Input_Mode = SIMP( statut='o', typ='TXM', into=('uniform value','values directly assigned','values read in file','analytical function',)), - b_uniforme = BLOC( condition = "Input_Mode == 'uniform value'", **dicoBloc), - b_vsaisies = BLOC( condition = "Input_Mode == 'values directly assigned'", - Field = SIMP( typ='R', statut='o', max ='**'), - #Vecteur = SIMP( fenetreIhm='Tableau', homo = labels, - # statut='o', min=2, max='**', - # typ=Tuple(nbReels), - # validators=VerifTypeTuple(("'R',"*nbReels),),) # end particle - ), #b_vsaisie - b_vdsfich = BLOC( condition = "Input_Mode == 'values read in file'", - Format = SIMP( statut='o', typ='TXM', into=['txt','Med',], position='global' ), - td_txt = BLOC(condition = 'Format == "txt"', - File = SIMP( statut='o', typ=('Fichier','Text Files(*.txt);All Files (*)'),), - ), # fin vtd_txt - td_med_1 = BLOC( condition = 'Format == "Med"', - File = SIMP( statut='o', typ=('Fichier','Med Files(*.med);All Files (*)'),), - ), - td_med_2 = BLOC( condition = 'Format == "Med"', - FieldName = SIMP( statut='o', typ='TXM',), - ), - ), - b_vfct = BLOC( condition = "Input_Mode == 'analytical function'", - Function = SIMP( statut='o', typ='TXM',), - ), - #b_vserc = BLOC( condition = "Input_Mode == 'call to a service'", - # Service = SIMP( statut='o', typ='TXM',), - #), - ) - - -#------------------------------ -def FactTermeSource(condition): -#------------------------------ - return BLOC (condition=condition, - OriginOfSourceTerm = SIMP( statut='o', typ='TXM',into=['Interaction', 'Chemical Reaction', 'Other Scalar']), - ) - -#------------------------------------- -def FactTurbulence(statut, ajout=None): -#------------------------------------- - listInto = ['Fully resolved (DNS)', 'Spatial filtering (LES)', 'One-point moment', 'One-point PDF'] - if ajout != None : listInto.append(ajout) - return FACT(statut=statut, - TurbulenceModellingType = SIMP(typ='TXM', statut='o', into =listInto, ), - bloc_one_point = BLOC(condition= "TurbulenceModellingType == 'One-point moment'", - RANSModel = SIMP(statut="o", typ="TXM", into=['Turbulent-Viscosity Model(TVM)', 'Reynolds Stress Model (RSM)']), - bloc_TVM = BLOC(condition= "RANSModel == 'Turbulent-Viscosity Model(TVM)'", - TVMChoice = SIMP(typ='TXM', statut='o', into=['k-epsilon', 'k-omega']), - ), # fin bloc_TVM - bloc_RSM = BLOC(condition = "RANSModel == 'Reynolds Stress Model (RSM)'", - RSMChoice = SIMP(typ='TXM', statut='o', into=['Rotta', 'LRR-IP','LRR-QI','SSG']), - ), # fin bloc_RSM - ), # fin bloc_one_point - bloc_one_spatial = BLOC(condition = "TurbulenceModellingType == 'Spatial filtering (LES)'", - ChoiceOfApproach = SIMP(typ='TXM', statut='o', into=['Field-based LES', 'Filtered Density Function (FDF)']), - SubgridScaleModel = SIMP(typ='TXM', statut='o', into=['No SGS', 'Smagorinsky','Dynamical model', 'SGS Transport Equations']), - ), # fin bloc_one_spatial - bloc_one_point_pdf = BLOC(condition = "TurbulenceModellingType == 'One-point PDF'", - ChoiceOfApproach = SIMP(typ='TXM', statut='o', into=['One-point Eulerian PDF', 'One-particle Lagrangian PDF']), - bloc_lagrangian_pdf=BLOC(condition = "ChoiceOfApproach == 'One-particle Lagrangian PDF'", - StochasticModel = SIMP(typ='TXM', statut='o', into=['Langevin','Other'], defaut='Langevin'), - )# fin lagrangian - ), # fin bloc_one_point_pdf - bloc_no_model = BLOC(condition = "TurbulenceModellingType == 'Fully resolved (DNS)'", - ChoiceOfApproach = SIMP(statut='o', typ='TXM', into=['Field-based DNS', 'N-Particle Method']), - bloc_Field = BLOC(condition = "ChoiceOfApproach == 'Field-based DNS'", - NumericalMethod=SIMP(statut='o', typ='TXM', into=['FV', 'Spectral Method']), - ),# fin bloc_Field - bloc_N_particle = BLOC(condition = "ChoiceOfApproach == 'N-Particle Method'", - NumericalMethod=SIMP(statut='o', typ='TXM', into=['SPH', 'Vortex Method']), - ),# fin bloc_N_particle - ), # fin bloc_no_model - ) # fin du return de la fonction factTurbulence - -#-------------------------- -def Particle(cardinalite) : -#-------------------------- - return FACT (statut='o', max=cardinalite, - ParticleNature = SIMP( statut='o', typ='TXM', into=['Atoms', 'Molecules', 'Dissipative', 'Fluid Particle', 'Discrete Particle']), - b_Atom = BLOC( condition='ParticleNature == "Atoms"', - AtomsName = SIMP( statut='o', typ=(userAtom,'createObject'),), - Atom = FACT (statut ='o', max= '**', - ChemicalSpecie = SIMP( statut='o', typ='TXM'), - Number = SIMP (statut ='o', typ = 'I'), - ElectricCharge = SIMP( statut='o', typ='R'), - MagneticMoment = SIMP( statut='o', typ='R'), - Size = SIMP(statut='f', typ='R'), # relevant ? - ),# Atom - ), # fin b_Atom - b_Molecule = BLOC( condition='ParticleNature == "Molecules"', - MoleculeName = SIMP( statut='o', typ=(userMolecule,'createObject'),), - ChemicalSpecie = FACT ( max='**', statut='o', - ChemicalSpecieName = SIMP( statut='o', typ=userAtom), - Proportion = SIMP( statut='o', typ='R', val_max =1), - ), - ElectricCharge = SIMP( statut='o', typ='R'), - MagneticMoment = SIMP( statut='o', typ='R'), - Shape = SIMP( statut='f', typ='TXM', into=['Linear', 'Trigonal Planar', 'Angular', 'Tetrahedral', 'Octahedral', 'Trigonal pyramid', 'Other']), - ), #fin b_Molecule - b_Dissipative = BLOC( condition='ParticleNature == "Dissipative"', - DPDName = SIMP( statut='o', typ=(userDPD,'createObject'),), - BondedParticles = SIMP(statut="o", typ=bool, defaut=False), - ), # b_Dissipative - b_Discrete = BLOC( condition='ParticleNature == "Discrete Particle"', - DiscreteParticleName = SIMP(statut='o', typ=(userDiscrete,'createObject'),), - TypeOfDiscreteParticle = SIMP( statut='o', typ='TXM', into=['Solid', 'Droplets', 'Bubbles','Bio Organism'],), - b_TypeDP_Solid = BLOC( condition ='TypeOfDiscreteParticle == "Solid"', - TypeOfSolid = SIMP( statut='o', typ='TXM', into=['Primary Particle', 'Assemblage / Aggregate'], position = 'global'), - b_SolidPrimary = BLOC( condition='TypeOfSolid == "Primary Particle"', - ), - b_SolidAggregate = BLOC( condition='TypeOfSolid == "Assemblage / Aggregate"', - ), - ), - b_TypeBio_Solid = BLOC( condition='TypeOfDiscreteParticle == "Bio Organism"', - TypeOfOrganism = SIMP( statut='o', typ='TXM', into=['Unicellular', 'Multicellular']), - b_Unicellular = BLOC( condition ='TypeOfOrganism=="Unicellular"', - Unicellular = SIMP( statut='o', typ='TXM', into=["Bactaria"], defaut='Bactaria') - ), - b_Multicellular = BLOC( condition ='TypeOfOrganism=="Multicellular"', - Multicellular = SIMP( statut='o', typ='TXM', into=["Animal","Fongus","Plant"]) - ), - ), # b_TypeBio_Solid - Properties = FACT ( statut ='o', - Geometry = SIMP( statut='o', typ='TXM', into=['Sphere', 'Ellopsoids', 'Other Shape']), - b_geom_Sphere = BLOC( condition = 'Geometry == "Sphere"', - ParticleRadius = SIMP( statut='o', typ ='R', val_min = 0), - ), - Weight = FACT (statut = 'o', - Mass = SIMP( statut='o', typ ='R', val_min = 0), - Density = SIMP( statut='o', typ ='R', val_min = 0), - ), - Mechanical = SIMP( statut='o', typ='TXM', into=['Rigid', 'Flexible', 'Deformable']), - b_SolidAggregate = BLOC( condition='TypeOfSolid == "Assemblage / Aggregate"', - Morphological = FACT (statut = 'o', - Consigne = SIMP(statut="o", homo="information", typ="TXM", defaut='Choose optional properties'), - FractalDimension = SIMP( statut='f', typ='R'), - NumberOfPrimaryParticle = SIMP (statut ='f',typ='I'), - EquivalentSize = SIMP( statut='f', typ='R'), - Porosoty = SIMP( statut='f', typ='R'), - ), # Morphological - ), # b_SolidAggregate - ElectroMagnetic = FACT (statut = 'f', - ElectricCharge = SIMP( statut='o', typ='R'), - MagneticMoment = SIMP( statut='o', typ='R'), - ), - b_SolidAggregateBonded = BLOC( condition='TypeOfSolid == "Assemblage / Aggregate"', - BondedParticles = FACT( - ListOfBondedParticles = SIMP(statut='o', max='**', typ = userParticle), - ), - ), - ), # Properties - ), # b_Discrete -############################ - - List_Of_Bonded_Particles = FACT( statut='f', - # -------------------------------------------# - Bonded_Particles = FACT( statut='o', max = "**", - Name_Of_Bonded_Particles = SIMP( statut='o', typ='TXM'), - Species_in_Particle = SIMP( statut='o', min=2, typ='TXM' , max = "**"), - ), # Bonded_Particles - ), # List_Of_Bonded_Particles - - List_Of_Interactions = FACT( statut='o', max = "**", - # --------------------------------------------------# - - Bonded_Interactions = FACT( statut='o', max = "**", - - #Type_Of_Bonded_Interaction = SIMP( statut='o', typ='TXM', into=['No', 'Covalent Bond Length', 'FENE', 'Covalent Bond Angle', 'Dihedral Angles', 'Improper Dihedral', 'Frozen Motion' ], defaut='No', position='global'), - Type_Of_Bonded_Interaction = SIMP( statut='o', typ='TXM', into=['No', 'Covalent Bond Length', 'FENE', 'Covalent Bond Angle', 'Dihedral Angles', 'Improper Dihedral', 'Frozen Motion' ], defaut='No'), - - #La saisie de l'ensemble des liaisons d'un meme type peut se faire ds le meme bloc (soit ds un fichier, soit manuelle) - #Une seule valeur de distante? est a saisir pour l'ensemble - # bloc_covalent_1 = BLOC( condition = 'Type_Of_Bonded_Interaction in ("Covalent Bond Length","FENE")', - # ), # fin bloc_covalent_1 - bloc_covalent_length = BLOC( condition = 'Type_Of_Bonded_Interaction == "Covalent Bond Length"', - Interaction_Length_Parameters = FACT( statut='o', max="**", - Apply_To_Bonded_Particles = SIMP( statut='o', max='**', typ='TXM'), - Spring_Stifness = SIMP( statut='o', typ='R', val_min=0), - Mean_Bond_Length = SIMP( statut='o', typ='R', val_min=0), - ), # fin Interation_Length_Parameters - ), # fin Bond_Length_Parameters - bloc_covalent_angle = BLOC( condition = 'Type_Of_Bonded_Interaction == "Covalent Bond Angle"', - Interaction_Angles_Parameters = FACT( statut='o', max="**", - Apply_To_Bonded_Particles = SIMP( statut='o', max='**', typ='TXM'), - Spring_Stifness = SIMP( statut='o', typ='R', val_min=0), - Mean_Bond_Angle = SIMP( statut='o', typ='R', val_min=0), - ), # fin Interation_Angles_Parameters - ), # fin bloc_covalent_length_and_angle - - #bloc_covalent_length_and_angle = BLOC( condition = 'Type_Of_Bonded_Interaction == "Covalent Bond Length" or Type_Of_Bonded_Interaction == "Covalent Bond Angle"', - # Bond_Parameters = FACT( statut='o', max="**", - # Apply_To_Bonded_Particles = SIMP( statut='o', max='**', typ='TXM'), - # Spring_Stifness = SIMP( statut='o', typ='R', val_min=0), - # bloc_covalent_length = BLOC( condition = 'Type_Of_Bonded_Interaction == "Covalent Bond Length"', - # Mean_Bond_Length = SIMP( statut='o', typ='R', val_min=0), - # ), # fin Bond_Length_Parameters - # bloc_covalent_angle = BLOC( condition = 'Type_Of_Bonded_Interaction == "Covalent Bond Angle"', - # Mean_Bond_Angle = SIMP( statut='o', typ='R', val_min=0), - # ), # fin Bond_Length_Parameters - # ), # fin Bond_Length_Parameters - #), # fin bloc_covalent_length_and_angle - - bloc_FENE = BLOC( condition = 'Type_Of_Bonded_Interaction == "FENE"', - Applies_To_All_Particles = SIMP( statut='o', typ=bool, defaut=True), - bloc_not_on_all = BLOC( condition = 'Applies_To_All_Particles == False', - FENE_Parameters = FACT( statut='o', max="**", - Species_Pair = SIMP( statut='o', max=2, typ='TXM'), - Spring_Constant_H = SIMP( statut='o', typ='R', val_min=0), - LMax = SIMP( statut='o', typ='R', val_min=0), - ), # fin FENE_Parameters - ), # fin bloc_not_on_all - bloc_on_all = BLOC( condition = 'Applies_To_All_Particles == True', - Spring_Constant_H = SIMP( statut='o', typ='R', val_min=0), - LMax = SIMP( statut='o', typ='R', val_min=0), - ), # fin bloc_on_all - ), # fin bloc_FENE - - bloc_le_reste = BLOC( condition = 'Type_Of_Bonded_Interaction in ("Dihedral Angles", "Improper Dihedral", "Frozen Motion")', - Particle_Name = SIMP( statut="f", typ='TXM'), - #Consigne = SIMP( statut="o", homo="information", typ="TXM", defaut='Not Implemented Yet'), - - ), - ), # fin Bonded_Interaction - - # ------------------------------- # - - Unbonded_Interactions = FACT( statut='o', max= "**", - - Type_Of_Unbonded_Interaction = SIMP( statut='o', typ='TXM', into=['No', 'electro_magnetic', 'Repulsion_and_VdW', 'Soft_Potentiel', ], defaut='No', position='global',fenetreIhm='menuDeroulant'), - - bloc_elec = BLOC( condition = 'Type_Of_Unbonded_Interaction == "electro_magnetic"', - Permittivity = SIMP( statut='o', typ='R', position='global_jdc'), - Magnetic = SIMP( statut='o', typ=bool, defaut=False,), - bloc_magnetic = BLOC( condition = 'Magnetic == True', - Permability = SIMP( statut='o', typ='R'), - ), # bloc_magnetic - ),# fin bloc_elec - - bloc_VdW = BLOC( condition = 'Type_Of_Unbonded_Interaction == "Repulsion_and_VdW"', - Species_Pair_Parameters = FACT( statut='o', max="**", - Type_Repulsion_and_VdW = SIMP( statut='o', typ='TXM', into = [ 'Lennard_Jones', 'Hard_sphere_model']), - Species_Pair = SIMP( statut='o', max=2, typ='TXM'), - VdW_Radius = SIMP( statut='o', typ='R', val_min=0), - b_Lennard = BLOC( condition = "Type_Repulsion_and_VdW == 'Lennard_Jones'", - Depth_Of_The_Potential_Well = SIMP( statut='o', typ='R', val_min=0), - ), # fin b_Lennard - ), # fin Species_Pair_Parameters - ), # bloc_VdW - - b_Param_Soft_Potentiel = BLOC( condition = "Type_Of_Unbonded_Interaction == 'Soft_Potentiel'", - Groot_Warren_Repulsion = SIMP( statut='o', typ='R', defaut=25.0, val_min=0), - Groot_Warren_Cutoff = SIMP( statut='o', typ='R', defaut=1.0, val_min=0), - Drag_Coefficient = SIMP( statut='o', typ='R'), # les 2 valent 0 pour MD - Drag_Force_Cutoff = SIMP( statut='o', typ='R', val_min=0), - ), # b_Param_Soft_Potentiel - - ), # fin UnBonded_Interactions - - # ------------------------------- # - - External_Field_Interaction = FACT( statut='o', max= "**", - Type_Of_Interaction_With_An_External_Field = SIMP( statut='o', typ='TXM', into=['No','gravitational field','electric field','magnetic field', 'Hydrodynamic_Field'], fenetreIhm='menuDeroulant', defaut ='No'), - b_gravite = BLOC( condition = 'Type_Of_Interaction_With_An_External_Field=="gravitational field"', - G = SIMP( statut='o', typ='R', defaut=9.81), - ), - b_elect = BLOC( condition = 'Type_Of_Interaction_With_An_External_Field=="electric field"', - Electric_Field = champ('E', ('E',), 1), - ), - b_magnetic = BLOC( condition = 'Type_Of_Interaction_With_An_External_Field=="magnetic field"', - Magnetic_Field = champ('B', ('B',), 1), - ), - b_hydrodynamic = BLOC( condition = 'Type_Of_Interaction_With_An_External_Field=="hydrodynamic field"', - Hydrodynamic_Field = champ('U', ('U',), 1), - ), - b_External_Field_Interaction = BLOC( condition = 'Type_Of_Interaction_With_An_External_Field != "No"', - Field_Applies_On_All_Species = SIMP( statut='o', typ=bool, defaut=True), - b_porte_espece = BLOC( condition = 'Field_Applies_On_All_Species == False ', - Species_List = SIMP( statut='o', typ='TXM', max= '**'), # faire un typ = "espece" - ), - ), # fin b_External_Field_Interaction - ), # fin Interaction_External_Field - - ), # fin List_Of_Interactions - -############################ -) # fin Particle - -def bloc_CPS(): - return BLOC(condition = 'SystemType == "Classical particle system"', - Particle = Particle('**'), - ) - -def bloc_FluideMacro(): - return BLOC(condition = 'SystemType == "Continuum system"', - ComplexFluid = SIMP(typ=bool, statut='o', defaut = False, position='global'), - FlowNature = SIMP(typ='TXM', statut='o', into =['Laminar', 'Turbulent'], position='global'), - bloc_FlowNature_Turbulent = BLOC(condition = ' FlowNature == "Turbulent"', - TurbulenceForFlowDynamics = FactTurbulence('o'), - ), #------ fin bloc_FlowNature_Turbulent - -# ---------------------- Effets thermiques - Thermal = FACT (statut ='o', - ThermalEffects = SIMP(typ='TXM', statut='o', into =['Non thermal', - 'Passive on flow dynamics', 'Active on flow dynamics'], defaut='Non thermal', position='global' ), - TemperatureInitialisation = FACT( statut ='o', - bloc_NonThermalEffects = BLOC(condition = ' ThermalEffects == "Non thermal"', - InitialTemperature = SIMP(typ='R', statut='o', val_min=-273.15 ), - ), # fin bloc_NonThermal - bloc_NonNonThermalEffects = BLOC(condition = 'not(ThermalEffects == "Non thermal")', - OriginOfThermalFluxModel = SIMP( statut='o', into =['Given', 'Interaction', 'to be simulated'], typ ='TXM'), - BlocGiven =creeBlocPourLesFichiers (' OriginOfThermalFluxModel == "Given"', 'FileName', ('Med', 'cgns' ), FieldName=1), - ), - ), - - bloc_ThermalEffects_Active = BLOC(condition = ' ThermalEffects == "Active on flow dynamics"', - ActiveOnFlowEffect = FACT(statut = 'o', max='**', - RelationType = SIMP( statut='o', into =['Equation Of State', 'Force-Flux Relation'], typ ='TXM'), - bloc_EOS=BLOC( condition = 'RelationType == "Equation Of State"', - TypeOfEquationOfState = SIMP( statut='o', into =['variable density', 'compressible'], typ ='TXM'), - ), - bloc_NonEOSAndSimple=BLOC( condition = 'RelationType == "Force-Flux Relation" and ComplexFluid == False', - TypeOfForceFluxRelation = SIMP( statut='o', into =['Viscosity', 'Diffusivity', 'Thermal Conductivity'], intoXML=['Viscosity', 'Diffusivity', 'Thermal Conductivity','Shear-stress closure', 'Scalar flux'], typ ='TXM'), - blocViscosity=BLOC( condition = 'TypeOfForceFluxRelation == "Viscosity"', - AFAIRE=SIMP(typ='TXM', statut = 'o', defaut = 'Initialisation ?') - ), - blocDiffusivity=BLOC( condition = 'TypeOfForceFluxRelation == "Diffusivity"', - AFAIRE=SIMP(typ='TXM', statut ='o', defaut = 'Initialisation ?') - ), - blocConductivity=BLOC( condition = 'TypeOfForceFluxRelation == "Thermal Conductivity"', - AFAIRE=SIMP(typ='TXM', statut ='o', defaut = 'Initialisation ?') - ), - ), - bloc_NonEOSAndComplex=BLOC( condition = 'RelationType == "Force-Flux Relation" and ComplexFluid == True', - TypeOfForceFluxRelation = SIMP( statut='o', into =['Shear-stress closure', 'Scalar flux'], typ ='TXM', intoXML=['Viscosity', 'Diffusivity', 'Thermal Conductivity','Shear-stress closure', 'Scalar flux']), - ), - ), - ), # fin bloc_ThermalEffects_Active - - DensityInitialisation = FACT( statut ='o', - bloc_DensityNonThermal = BLOC(condition = ' ThermalEffects == "Non thermal" or ThermalEffects == "Passive on flow dynamics"', - DensityEquationOfState = SIMP(typ='TXM', statut='o', into =['Constant density'], defaut = 'Constant density'), - InitialDensity = SIMP(typ='R', statut='o',), - ), # fin bloc_DensityNonThermal - bloc_DensityAndThermalActive = BLOC(condition = ' ThermalEffects == "Active on flow dynamics"', - OriginOfThermalEffects = SIMP( statut='o', into =['Given', 'Constant density'], typ ='TXM', defaut ='Constant density'), - BlocGiven =creeBlocPourLesFichiers (' OriginOfThermalEffects == "Given"', 'FileName', ('Med', 'cgns' ), FieldName=1), - BlocConstant = BLOC(condition = 'OriginOfThermalEffects == "Constant density"', - InitialDensity = SIMP(typ='R', statut='o',), - ), - ), - ), # fin DensityInitialisation - - - ),# fin Fact Thermal - - bloc_scalar_FluidTurbulentOrLaminar = BLOC(condition = "(ComplexFluid == False and FlowNature == 'Turbulent') or (ComplexFluid == False and FlowNature == 'Laminar')", - Scalars = FACT(statut = 'o', - bloc_FlowNature_Turbulent_For_Scalars = BLOC(condition = ' FlowNature == "Turbulent"', - asTurbulenceForFlowDynamics = SIMP (statut='o', typ=bool, defaut=True), - BlocAsTFFD = BLOC(condition = "asTurbulenceForFlowDynamics == False", - ScalarsTurbulenceModelling = FactTurbulence('o',), - ), - ), - bloc_ThermalEffects_On = BLOC(condition = ' ThermalEffects == "Active on flow dynamics" or ThermalEffects == "Passive on flow dynamics"', - TemperatureScalar =FACT(statut ='o', - Name = SIMP(typ=(scalar,'createObject'), statut='o', defaut ='Temperature', homo='constant'), - SourceTerm=SIMP(typ=bool, statut='o', defaut=False), - blocSourceTerm = FactTermeSource('SourceTerm==True'), - # bloc_scalar_FluidTurbulentandNonComplexe = BLOC (condition = "FlowNature == 'Turbulent'", - # ImplicitScalarFluxModel = FactTurbulence('f'), - # ) # bloc_scalar_FluidTurbulentandNonComplexe - ),# ObligatoireScalaire - ), - Scalar = FACT(statut = 'o', max ='**', - Name = SIMP(typ=(scalar,'createObject'), statut='o',), - bloc_scalar_FluidTurbulentandNonComplexe = BLOC (condition = "FlowNature == 'Turbulent'", - ScalarFluxModel = FactTurbulence('f'), - ), # bloc_scalar_FluidTurbulentandNonComplexe - SourceTerm=SIMP(typ=bool, statut='o', defaut=False), - blocSourceTerm = FactTermeSource('SourceTerm==True'), - ),# Scalar - ),# AdditionalScalars - ), # fin FluidTurbulentandNonComplexe - # il faut une validation de coherence entre l existence de tous les turbulencesModelling - )# fin bloc_FluideMacro - -#-----------------------------------------------------# -def prepareBoundaryCondition(): - return FACT( statut='o',max = '**', # max = nb de facette de bord - applyOnEssai = SIMP (statut ='o', typ=boundaryObject, ), - Type_Of_Boundary_Condition = SIMP( statut='o', typ='TXM', into=['Inlet', 'Outlet', 'Symmetry','Periodicity', 'Wall', 'Free Surface'], ), - b_periodique = BLOC( condition = "Type_Of_Boundary_Condition == 'Periodic'", - Direction = SIMP( statut='o', typ='TXM', into=['X','Y','Z', 'XYZ']), - ), # b_periodique - - b_inlet = BLOC( condition = "Type_Of_Boundary_Condition == 'Inlet'", - Formulation_of_Boundary= SIMP( statut='o', typ='TXM', into=['Dirichlet','Neumann','Cauchy']), - b_Formulation_of_Boundary_dirichlet = BLOC( condition = 'Formulation_of_Boundary == "Dirichlet"', - InletProfile = SIMP (statut ='o', typ='TXM', defaut='QuestionJP'), - IntegratedValue = SIMP ( statut='o', typ='R'), - #PN : faire une regle - ), - ), # b_inlet -# b_Formulation_of_Boundary_Neumann = BLOC( condition = 'Formulation_of_Boundary == "Neumann"', -# ), -# b_Formulation_of_Boundary_Cauchy = BLOC( condition = 'Formulation_of_Boundary == "Cauchy"', -# ), - -# #b_non_periodique = BLOC( condition = "Type_Of_Boundary_Condition != 'Periodic'", -# # Boundary_Face = SIMP( statut='o', typ= spatialRegion), -# #Apply_to_Wich_Quantity = SIMP( statut='o', typ='TXM', into=['Mass FLux', 'Velocity', 'Temperature','Scalars','all',]), -# ), - - # Formulation_of_Boundary= SIMP( statut='o', typ='TXM', into=['Dirichlet','Neumann']), - # b_Formulation_of_Boundary_dirichlet = BLOC( condition = 'Formulation_of_Boundary == "Dirichlet"', - # Value = SIMP ( statut='o', typ='R'), - # ), - ) # Boundary_Conditions - - - - -JdC = JDC_CATA ( - code = 'Vimmp', - # faire un validateur qui verifie que si on active reactions chimiques il faut que les masses molaires soient rentrees -) - -Component = OPER(nom='Component', sd_prod=composant, - SystemType = SIMP(typ='TXM', into=['Quantum system', 'Classical particle system', 'Continuum system'], statut='o',position='global'), - PhysicalDescription = FACT(statut = 'o', - b_FluideMacro = bloc_FluideMacro(), - b_bloc_CPS = bloc_CPS(), - ), - b_ModeleNumerique_quantum = prepareBlocSystemType('Quantum system'), - b_ModeleNumerique_classical = prepareBlocSystemType('Classical particle system'), - b_ModeleNumerique_continuum = prepareBlocSystemType('Continuum system'), - BoundaryConditions = FACT(statut = 'o', - DynamicalVariables = FACT (statut ='o', - BFlowNatureLaminar = BLOC(condition ='FlowNature == "Laminar"', - Fluid_Velocity = SIMP(typ=(dynamicVariable,'createObject'), statut='o', defaut ='Fluid_Velocity', homo='constant'), - Fluid_Pressure = SIMP(typ=(dynamicVariable,'createObject'), statut='o', defaut ='Fluid_Pressure', homo='constant'), - ), - BFlowNatureTurbulent = BLOC(condition ='FlowNature == "Turbulent"', - Avarage_Velocity = SIMP(typ=(dynamicVariable,'createObject'), statut='o', defaut ='Average_Velocity', homo='constant'), - Fluid_Pressure = SIMP(typ=(dynamicVariable,'createObject'), statut='o', defaut ='Fluid_Pressure', homo='constant'), - ), - ), - BoundaryCondition = prepareBoundaryCondition(), - ) -) - -Species = PROC(nom='Species', - Specie = FACT( statut='o', max ="**", - Name = SIMP( statut='o', typ=(especeChimique,'createObject') ), - masse_molaire = SIMP( statut='f', typ='R',), - ) -) - -def monBlocInteractionTypeChamp (): - return BLOC (condition = '1 == 1' , # a distinguer selon les cas - fieldNameInOrigine = SIMP(typ='TXM', statut='o'), - fieldNameInDestination = SIMP(typ='TXM', statut='o'), - ) - -def TousSelonLeTypeDeFormatDisponible(condition, labelName='fileName'): - transferType = SIMP(typ='TXM', statut='o', into =['File', 'Memory', 'CorbaObject']) - maListe = list(dictCodeFormat.keys()) - dicoArgs={} - #index=0 - #for Solv1 in maListe[index:]: - # for Solv2 in maListe[index:]: - # #print (Solv1,Solv2, calculCommun(Solv1, Solv2,dictCodeFormat)) - # print ('PNPN attention changement de dictCodeFormat tant que getEficasAttribut n est pas correct') - # conditionSolv = 'transferType == "File" and getEficasAttribut(origine,"Solver")==Solv1 and getEficasAttribut(destination,"Solver")==Solv2' , - # conditionSolv = 'transferType == "File"' - # monBlocFichier=creeBlocPourLesFichiers (conditionSolv, 'FileName', calculCommun(Solv1, Solv2,dictCodeFormat)) - # dicoArgs['monBlocFichier'+str(index)]=monBlocFichier - # index=index+1 - mesFormats=set() - for solv1 in dictCodeFormat.keys() : - for f in dictCodeFormat[solv1] : mesFormats.add(f) - conditionSolv='transferType == "File"' - BlocFichier=creeBlocPourLesFichiers (conditionSolv, labelName, mesFormats) - dicoArgs['BlocFichier']=BlocFichier - monBlocChamp = BLOC(condition = "transferType=='File'", FieldName=SIMP(typ='TXM', statut='o')) - dicoArgs['monBlocChamp']=monBlocChamp - return BLOC(condition = condition,transferType=transferType, **dicoArgs) - -def SelonLeTypeDeFormatDisponibleMapper(condition): - transferType = SIMP(typ='TXM', statut='o', into =['File', 'Memory', 'CorbaObject']) - maListe = list(dictCodeFormat.keys()) - dicoArgs={} - index=0 - for Solv1 in maListe[index:]: - for Solv2 in maListe[index:]: - #print (Solv1,Solv2, calculCommun(Solv1, Solv2,dictCodeFormat)) - print ('PNPN attention changement de dictCodeFormat tant que getEficasAttribut n est pas correct') - conditionSolv = 'transferType == "File" and getEficasAttribut(origine,"Solver")==Solv1 and getEficasAttribut(destination,"Solver")==Solv2' , - conditionSolv = 'transferType == "File"' - monBlocFichier=creeBlocPourLesFichiers (conditionSolv, 'FileName', calculCommun(Solv1, Solv2,dictCodeFormat)) - dicoArgs['monBlocFichier'+str(index)]=monBlocFichier - index=index+1 - monBlocChamp = BLOC(condition = "transferType=='File'", FieldName=SIMP(typ='TXM', statut='o')) - dicoArgs['monBlocChamp']=monBlocChamp - return BLOC(condition = condition,transferType=transferType, **dicoArgs) - -Mapper = OPER (nom= 'Mapper',sd_prod=mapper, - Solver=SIMP(statut='o', typ='TXM', into = list(dictMapperFormat.keys())), - ) -Converter = OPER (nom= 'Converter',sd_prod=converter) - -Interactions = PROC(nom='Interactions', - Interaction = FACT( max = '**', - origine = SIMP(typ=modeleNumDuCompo, statut='o'), - destination = SIMP(typ=modeleNumDuCompo, statut='o'), - monBloc_FFFF = BLOC ( - condition = 'getEficasAttribut(origine,"ModelType") == "Fields" and getEficasAttribut(destination,"ModelType") == "Fields"' , - termeLE = SIMP(typ='TXM', statut='o', into = dictTermeLE['Fields','Fields'],fenetreIhm='menuDeroulant'), - ), - monBloc_DPDP = BLOC ( - condition = 'getEficasAttribut(origine,"ModelType") == "Particles" and getEficasAttribut(destination,"ModelType") == "Particles"' , - termeLE = SIMP(typ='TXM', statut='o', into = dictTermeLE['Particles','Particles'],fenetreIhm='menuDeroulant'), - ), - monBloc_FFDP = BLOC ( - condition = 'getEficasAttribut(origine,"ModelType") == "Fields" and getEficasAttribut(destination,"ModelType") == "Particles"' , - termeLE = SIMP(typ='TXM', statut='o', into = dictTermeLE['Fields','Particles'],fenetreIhm='menuDeroulant'), - ), - monBloc_DPFF = BLOC ( - condition = 'getEficasAttribut(origine,"ModelType") == "Particles" and getEficasAttribut(destination,"ModelType") == "Fields"' , - termeLE = SIMP(typ='TXM', statut='o', into = dictTermeLE['Particles','Fields'],fenetreIhm='menuDeroulant'), - ), - couplingPart = FACT( statut='o', - couplingMode = SIMP(typ='TXM', statut='o', into =['direct', 'scaling', 'conversion']), - monBlocDirect = TousSelonLeTypeDeFormatDisponible( "couplingMode=='direct'" ), - monBlocIn = BLOC ( condition = "couplingMode=='scaling' or couplingMode=='conversion'", - OutFromComponent = FACT( statut='o', - monBlocFormat = TousSelonLeTypeDeFormatDisponible( "1", labelName = 'outFromMapperFileName' ), - ), - ), - monBlocMapper = BLOC ( condition = "couplingMode=='scaling' or couplingMode=='conversion'", - ConversionNode = FACT( min=1, max='**', statut ='o', - tool = SIMP(typ=mapper, statut ='o'), - OutFromMapper = FACT (statut ='o', - monBlocFormat = TousSelonLeTypeDeFormatDisponible( "1", labelName = 'outFromMapperFileName' ), - ), - ), - ), - ), - monBlocUseConverter = BLOC ( condition = "couplingMode=='use converter'", - myConverter = SIMP(typ=converter, statut ='o') - ), - ), -) - -dict_condition={ -'ModelType' : ('Interactions', 'Component'), -#'NumericalMethod' : ('Interactions', 'Component'), -# 'TypeOfSolid' : ('Component',) -} - -Temporal_Aspects = PROC( nom ="Temporal_Aspects", - Simulated_Time_Laps = FACT (statut='o', max='**', - name = SIMP(statut='o', typ=(simulatedTime,'createObject'),), - initialTime = SIMP( statut='o', typ='R'), - finalTime = SIMP( statut='o', typ='R'), - timeDiscretization = SIMP( statut ='o', typ = 'TXM', into = ['Constant Time Step', 'Varying Time Step']), - bloc_Constant = BLOC (condition = 'timeDiscretization == "Constant Time Step"', - constantTimeStep = SIMP (statut ='o', typ = 'R'), - ), - bloc_Varying = BLOC (condition = 'timeDiscretization == "Varying Time Step"', - CFLNumberCriteria = SIMP (statut ='o', typ = 'R'), - FourierNumberCriteria = SIMP (statut ='o', typ = 'R'), - ), - ), -) -# -Spatial_Aspects = PROC( nom='Spatial_Aspects', - System_Geometry = FACT ( statut='o', max='**', - System_Geometry_name = SIMP( statut='o', typ=(systemGeometry, 'createObject'),), - Shape = FACT (statut ='f', max='**', - Shape_Nature = SIMP( statut='o', typ='TXM', into=['Typical Geometry', 'CAD']), - b_Shape = BLOC( condition = 'Shape_Nature == "Typical Geometry"', - Box = SIMP( statut='o', typ='TXM', into=['Cube', 'Sphere','Cylinder'] ), - b_Cube = BLOC( condition = 'Box == "Cube"', - #Taille_Box_Englobante = SIMP( statut='o', typ='R', max=3, min =3) - # derait etre un Tuple(3) mais a faire apres la projection - #Size_Of_Bounding_Box = SIMP( statut='o', typ=Tuple(3), validators=VerifTypeTuple(('R','R','R'),),) - Size_Of_Bounding_Box = SIMP( statut='o', typ='R', max=3, min=3, ), - ), # fin b_Cube - b_Boule = BLOC( condition = 'Box == "Sphere"', - Center = SIMP( statut='o', typ='R', max=3, min =3), - ),# fin b_Boule - b_Cylinder = BLOC( condition = 'Box == "Cylinder"', - Heigth = SIMP( statut="o", typ='R', val_min=0.0, ang='Nanotube length [m]'), - ),# fin b_Tube - b_Boule_ou_Cylinder = BLOC( condition = 'Box == "Sphere" or Box == "Cylinder"', - Radius = SIMP( statut='o', typ='R', val_min=0.0, ang='radius length [m]') , - ),# fin b_Boule_ouCylinder - ), # fin b_Shape - b_CAO = creeBlocPourLesFichiers( "Shape_Nature == 'CAD'",'Domain_File', ['txt','I-deas', 'Gmsh', 'top',]), - ShapeIdentifier=SIMP( statut='o', typ=(cadShape,'createObject'),max='**',), - ), # fin Shape - ),# System_Geometry - Spatial_Discretization = FACT ( statut='f', max="**", - Mesh_Name = SIMP( statut='o', typ=(meshIdentifier,'createObject')), - b_Mesh = creeBlocPourLesFichiers( "1 == 1",'Domain_File', ['med', 'Gmsh',]), - GroupIdentifier = SIMP( statut='o', typ=(meshGroup,'createObject'),max='**',), - ), - Boundary_Constraints = FACT (statut = 'f', - Motion = FACT ( statut='f', - Motion_Nature = SIMP(statut='o', typ='TXM', into=['Fixed boudary', 'Translational motion', 'Rotational motion', 'Scaling']), - b_Translational_motion=BLOC(condition = 'Motion_Nature == "Translational motion"', - Translation_Velocity=SIMP( statut='o', typ='R'), - boundaries=SIMP( statut='o', typ=spatialRegion,max='**' ), - ), - b_Rotational_motion=BLOC(condition = 'Motion_Nature == "Rotational motion"', - Rotation_Rate=SIMP( statut='o', typ='R'), - boundaries=SIMP( statut='o', typ=spatialRegion,max='**' ), - ), - b_fixed=BLOC(condition = 'Motion_Nature == "Fixed boudary"', - boundaries=SIMP( statut='o', typ=spatialRegion,max='**', homo='SansOrdreNiDoublon'), - #boundaries=SIMP( statut='o', typ=spatialRegion,max='**' ), - ), - ), -#PN decrire page 28 - Mapping = FACT ( statut='f', - ), - ), # Boundary_Constraints -) # fin Geometric_Domain - -TEXTE_NEW_JDC = "\ -Velocity=scalar()\ -" diff --git a/Vimmp/OLD/cata_CSAndCPS_v7.py b/Vimmp/OLD/cata_CSAndCPS_v7.py deleted file mode 100644 index 9ceaf5a1..00000000 --- a/Vimmp/OLD/cata_CSAndCPS_v7.py +++ /dev/null @@ -1,889 +0,0 @@ -from Accas import * - -class composant(ASSD):pass -class mapper(ASSD):pass -class converter(mapper):pass -class modeleNumDuCompo(UserASSD):pass -class especeChimique(UserASSD):pass -class userParticle(UserASSD) :pass -class userAtom(userParticle) :pass -class userMolecule(userParticle) :pass -class userDiscrete(userParticle) :pass -class userDPD(userParticle) :pass - -class spatialRegion(UserASSD):pass -class cadShape(spatialRegion):pass -#class meshGroup(spatialRegion,UserASSDMultiple):pass -class meshGroup(spatialRegion):pass -class meshIdentifier(spatialRegion):pass -class systemGeometry(UserASSD):pass -class simulatedTime(UserASSD):pass -class constitutiveRelation(UserASSD):pass - -class stateVariable(UserASSD) : pass -class scalar(stateVariable):pass -class dynamicVariable(stateVariable):pass - - -# PN a faire --> ajouter un MC modeleNumerique ( apres avoir renomme le modeleNumerique actuel en classe de modele numerique) -# et le dictionnaire d apres -dictTypModNumModNum = { - ('Continuum system','Particles') : ('SPH','Lagrangian one-fluid-particle pdf'), - ('Continuum system','Fields') : ('FV','FEM', 'Spectral method'), - ('Classical particle system','Particles') : ('MD', 'DPD', 'SDPD','SPH','CFD_Discrete_Particles'), - ('Classical particle system','Fields') : ('LBM',), - ('Quantum system','Particles') : ('Particle method',), - ('Quantum system','Fields') : ('Wave',), -} - -dictCodeModeleNumerique = { - 'Code_Saturne' : ('Lagrangian one-fluid-particle pdf', 'FV', 'CFD_Discrete_Particles',), - 'Fluent' : ('FV',), - 'Culgi Package': (), - 'DEM_SD' : ('Lagrangian one-fluid-particle pdf', 'FV', 'CFD_Discrete_Particles',), - 'DFTB+' : ('density functional tight binding method',), - 'DL_MESO_DPD' : ('Lagrangian one-fluid-particle pdf', 'FV', 'CFD_Discrete_Particles',), - 'DL_MESO_LBE' : ('Lagrangian one-fluid-particle pdf', 'FV', 'CFD_Discrete_Particles',), - 'DL_POLY_4' : ('Lagrangian one-fluid-particle pdf', 'FV', 'CFD_Discrete_Particles',), - 'GROMACS' : ('Lagrangian one-fluid-particle pdf', 'FV', 'CFD_Discrete_Particles',), - 'GROMACS_LS' : ('Lagrangian one-fluid-particle pdf', 'FV', 'CFD_Discrete_Particles',), - 'LAMMPS' : ('Lagrangian one-fluid-particle pdf', 'FV', 'CFD_Discrete_Particles',), - 'NWChem' : ('Lagrangian one-fluid-particle pdf', 'FV', 'CFD_Discrete_Particles',), - 'OpenFOAM' : ('Lagrangian one-fluid-particle pdf', 'FV', 'CFD_Discrete_Particles',), - 'Quantum EXPRESSO' : ('Particle method', 'Wave',), - 'RHEO_AGGRATE' : ('Particle method', 'Wave',), - 'RHEO_DROP' : ('Particle method', 'Wave',), - 'STAR_CCM+' : ('FV', 'Particles',), - 'Code Nill' : ('Spectral method', ), -} -# Le Code Nill est ajouté en dur au Solver - -dictCodeFormat = { - 'Code_Saturne' : ('Med', 'cgns', 'msh', 'des', 'unv', ), - 'Culgi Package': ('cof',), - 'DEM_SD' : ('geo', 'ascii'), - 'DFTB+' : ('geo', 'ascii'), - 'Fluent' : ('FluentFormat', ), - 'OpenFOAM' : ('OpenFoamFormat', 'Med', ), -} - -dictMapperFormat = { - 'Med Coupling' : ('Med',), - 'Gmsh' : ('Med', 'OpenFoamFormat'), -} - -dictTermeLE = { - ('Fields','Particles') : ('Fluid_Velocity_Field', - 'Fluid_Temperature_Field', - 'Fluid_Species_Mass_Fraction_Fluid',), - ('Particles','Fields') : ('Fluid_Particle_Momentum_Exchange_Field', - 'Fluid_Particle_Thermal_Exchange_Field', - 'Lagrangian one-particle pdfFluid_Particle_Mass_Source_Field', - 'Particle_Volumetric_Concentration_Modified_Fluid_Viscosity', - 'Particle_Extra_Stress_Tensor'), - ('Particles','Particles') : ('Pas encore fait'), - ('Fields','Fields') : ('Pas encore fait'), -} - -dictCodeConvertisseur = { - ('Saturne', 'OpenFOAM') : ('gmsh', 'Saturne2CDM and CDM2OpenFoam'), - ('Saturne', 'Fluent') : ( 'Saturne2CDM and CDM2Fluent'), - ('Fluent', 'OpenFOAM') : ('Fluent2CDM and CDM2OpenFoam'), -} - -#dictScalarsImplicites = { -# 'K-Epsilon' : ('K', 'Epsilon'), -# 'K-Omega' : ('K', 'Omega'), -#} - -#---------------------------------------- -def prepareBlocSystemType(systemType) : -#---------------------------------------- - condition = "SystemType == '" + systemType + "'" - Identifier = SIMP(statut='o', typ=(modeleNumDuCompo,'createObject'),) - SimulatedTimeLapse = SIMP(statut ='o', typ = simulatedTime) - ModelType = SIMP(statut='o', typ='TXM', into = ('Particles', 'Fields'), position='inGetAttribut') - dicoArgs={} - - for typeMod in ('Particles', 'Fields'): - conditionType = "ModelType == '" + typeMod + "'" - NumericalMethod = SIMP(statut='o',typ='TXM', into=dictTypModNumModNum[systemType, typeMod], - position='global', intoXML=allValueInDict(dictTypModNumModNum)) - dicoBloc = {} - for modeleNumerique in list(dictTypModNumModNum[systemType,typeMod]): - conditionNum = "NumericalMethod == '" + modeleNumerique + "'" - setCode = set() - for code in dictCodeModeleNumerique.keys(): - if modeleNumerique in dictCodeModeleNumerique[code]: setCode.add(code) - Solver = SIMP(statut='o', typ='TXM', into=list(setCode), intoXML=list(dictCodeModeleNumerique.keys()) ) - monNomBloc='b_ModelName_' + modeleNumerique.replace(' ','_') - if setCode ==set(): setCode.add('Code Nill') - if setCode !=set(): dicoBloc[monNomBloc]=BLOC(condition=conditionNum, nomXML='b_ModelName',Solver=Solver) - dicoArgs['b_modelType'+typeMod] = BLOC(condition=conditionType, NumericalMethod=NumericalMethod,**dicoBloc) - - blocMeshRef = BLOC(condition = '(ModelType == "Fields") and (NumericalMethod == "FV")', - Mesh_Identifiers = SIMP (statut ='o', max ='**', typ = meshIdentifier),) - dicoArgs['blocMeshRef'] = blocMeshRef - NumericalModel = FACT(statut='o', max= '**', Identifier=Identifier, ModelType=ModelType, - SimulatedTimeLapse=SimulatedTimeLapse, **dicoArgs) - return BLOC(condition=condition, nomXML='b_systemType', NumericalModel=NumericalModel) - -#----------------------------------- -def calculCommun(key1, key2, dico): -#----------------------------------- -# retourne la liste des valeurs communes a dico[key1] et dico[key2] - monSet=set() - if not key1 in dico: return () - if not key2 in dico: return () - for val in dico[key1]: - if val in dico[key2]: - monSet.add(val) - if monSet == set() : monSet.add ('No common format') - return list(monSet) - -#------------------------- -def allValueInDict(dico): -#------------------------- -# retourne la liste de toutes les valeurs possibles dans dico - monSet=set() - for clef in dico : - for val in dico[clef] : monSet.add(val) - return monSet - -#------------------------------------------------------------------------------------ -def creeBlocPourLesFichiers(laCondition, NomDuFichier, ListeFormats, FieldName=False): -#------------------------------------------------------------------------------------- - SIMPFormatFichier = SIMP(statut='o', typ = 'TXM', into = tuple(ListeFormats) + ('others',), ) - dicoDesBlocs = {} - for formatFich in ListeFormats : - nomBloc = 'b_format_fichier' + str(formatFich) - typeDesFichiers = ('Fichier', formatFich + " Files (*." + formatFich + ");;All Files (*)",) - blocCondition ="FileFormat == '" + formatFich + "'" - dicoDesBlocs[nomBloc] = BLOC( condition = blocCondition, FileName = SIMP(statut='o', typ = typeDesFichiers ),) - dicoDesBlocs['b_format_fichier_others'] = BLOC(condition="FileFormat == 'others'", FileName = SIMP(statut='o', typ = ('Fichier','All Files (*)'),),) - if FieldName: - SIMPFieldName = SIMP(statut='o', typ = 'TXM',) - return BLOC(condition=laCondition, FileFormat = SIMPFormatFichier, **dicoDesBlocs, FieldName=SIMPFieldName) - else : - return BLOC(condition=laCondition, FileFormat = SIMPFormatFichier, **dicoDesBlocs) - -#------------------------------------------------------------------------------------ -def creeBlocPourLesFichiers2(laCondition, NomDuFichier='FileName', ListeFormats=[], FieldName=False): -#------------------------------------------------------------------------------------- -# il faut reflechir pour parametrer NomDuFichier -# et le type (existing... du fichier) -# et utiliser le creeBlocPourLesFichiers2 - SIMPFormatFichier = SIMP(statut='o', typ = 'TXM', into = tuple(ListeFormats) + ('others',), ) - dicoDesBlocs = {} - for formatFich in ListeFormats : - dicoArgs={} - nomBloc = 'b_format_fichier' + str(formatFich) - typeDesFichiers = ('Fichier', formatFich + " Files (*." + formatFich + ");;All Files (*)",) - blocCondition = "FileFormat == '" + formatFich + "'" - dicoArgs[NomDuFichier] = SIMP(statut='o', typ = typeDesFichiers ) - dicoDesBlocs[nomBloc] = BLOC( condition = blocCondition, **dicoArgs) - dicoArgs={} - dicoArgs[NomDuFichier]=SIMP(statut='o', typ = ('Fichier','All Files (*)'),), - dicoDesBlocs['b_format_fichier_others'] = BLOC(condition="FileFormat == 'others'", **dicoArgs) - if FieldName: - SIMPFieldName = SIMP(statut='o', typ = 'TXM',) - return BLOC(condition=laCondition, FileFormat = SIMPFormatFichier, **dicoDesBlocs, FieldName=SIMPFieldName) - else : - return BLOC(condition=laCondition, FileFormat = SIMPFormatFichier, **dicoDesBlocs) - -#--------------------------------------------- -def champ(nomDelaContante, labels ,nbReels ) : -#--------------------------------------------- -# ajouter les extensions pour le fichier et les blocs associes -# certains champs ne seront jamais uniformes -# probablement a refaire -#PNPN : Passer le nom du champ pour le label du vecteur -# A revoir - - dicoBloc = {} - dicoBloc[nomDelaContante] = SIMP( statut='o', typ='R') - return FACT( statut='o', - Input_Mode = SIMP( statut='o', typ='TXM', into=('uniform value','values directly assigned','values read in file','analytical function',)), - b_uniforme = BLOC( condition = "Input_Mode == 'uniform value'", **dicoBloc), - b_vsaisies = BLOC( condition = "Input_Mode == 'values directly assigned'", - Field = SIMP( typ='R', statut='o', max ='**'), - #Vecteur = SIMP( fenetreIhm='Tableau', homo = labels, - # statut='o', min=2, max='**', - # typ=Tuple(nbReels), - # validators=VerifTypeTuple(("'R',"*nbReels),),) # end particle - ), #b_vsaisie - b_vdsfich = BLOC( condition = "Input_Mode == 'values read in file'", - Format = SIMP( statut='o', typ='TXM', into=['txt','Med',], position='global' ), - td_txt = BLOC(condition = 'Format == "txt"', - File = SIMP( statut='o', typ=('Fichier','Text Files(*.txt);All Files (*)'),), - ), # fin vtd_txt - td_med_1 = BLOC( condition = 'Format == "Med"', - File = SIMP( statut='o', typ=('Fichier','Med Files(*.med);All Files (*)'),), - ), - td_med_2 = BLOC( condition = 'Format == "Med"', - FieldName = SIMP( statut='o', typ='TXM',), - ), - ), - b_vfct = BLOC( condition = "Input_Mode == 'analytical function'", - Function = SIMP( statut='o', typ='TXM',), - ), - #b_vserc = BLOC( condition = "Input_Mode == 'call to a service'", - # Service = SIMP( statut='o', typ='TXM',), - #), - ) - - -#------------------------------ -def FactTermeSource(condition): -#------------------------------ - return BLOC (condition=condition, - OriginOfSourceTerm = SIMP( statut='o', typ='TXM',into=['Interaction', 'Chemical Reaction', 'Other Scalar']), - ) - -#------------------------------------------------------ -def FactTurbulence(statut, ajout=None , position=None): -#------------------------------------------------------ - listInto = ['Fully resolved (DNS)', 'Spatial filtering (LES)', 'One-point moment', 'One-point PDF'] - if ajout != None : listInto.append(ajout) - return FACT(statut=statut, - TurbulenceModellingType = SIMP(typ='TXM', statut='o', into =listInto, ), - bloc_one_point = BLOC(condition= "TurbulenceModellingType == 'One-point moment'", - RANSModel = SIMP(statut="o", typ="TXM", - into=['Turbulent-Viscosity Model (TVM)', 'Reynolds Stress Model (RSM)']), - bloc_TVM = BLOC(condition= "RANSModel == 'Turbulent-Viscosity Model (TVM)'", - TVMChoice = SIMP(typ='TXM', statut='o', into=['K-Epsilon', 'K-Omega'] , position=position), - ), # fin bloc_TVM - bloc_RSM = BLOC(condition = "RANSModel == 'Reynolds Stress Model (RSM)'", - RSMChoice = SIMP(typ='TXM', statut='o', into=['Rotta', 'LRR-IP','LRR-QI','SSG']), - ), # fin bloc_RSM - ), # fin bloc_one_point - - bloc_one_spatial = BLOC(condition = "TurbulenceModellingType == 'Spatial filtering (LES)'", - ChoiceOfApproach = SIMP(typ='TXM', statut='o', into=['Field-based (LES)', 'Filtered Density Function (FDF)']), - SubgridScaleModel = SIMP(typ='TXM', statut='o', into=['No SGS', 'Smagorinsky','Dynamical model', 'SGS Transport Equations']), - ), # fin bloc_one_spatial - bloc_one_point_pdf = BLOC(condition = "TurbulenceModellingType == 'One-point PDF'", - ChoiceOfApproach = SIMP(typ='TXM', statut='o', into=['One-point Eulerian PDF', 'One-particle Lagrangian PDF']), - bloc_lagrangian_pdf = BLOC(condition = "ChoiceOfApproach == 'One-particle Lagrangian PDF'", - StochasticModel = SIMP(typ='TXM', statut='o', into=['Langevin','Other'], defaut='Langevin'), - )# fin lagrangian - ), # fin bloc_one_point_pdf - bloc_no_model = BLOC(condition = "TurbulenceModellingType == 'Fully resolved (DNS)'", - ChoiceOfApproach = SIMP(statut='o', typ='TXM', into=['Field-based (DNS)', 'N-Particle Method']), - bloc_Field = BLOC(condition = "ChoiceOfApproach == 'Field-based (DNS)'", - NumericalMethod = SIMP(statut='o', typ='TXM', into=['FV', 'Spectral Method'], - intoXML=['FV', 'Spectral Method','SPH', 'Vortex Method']), - ),# fin bloc_Field - bloc_N_particle = BLOC(condition = "ChoiceOfApproach == 'N-Particle Method'", - NumericalMethod = SIMP(statut='o', typ='TXM', into=['SPH', 'Vortex Method'], - intoXML=['FV', 'Spectral Method','SPH', 'Vortex Method']), - ),# fin bloc_N_particle - ), # fin bloc_no_model - ) # fin du return de la fonction factTurbulence - -#-------------------------- -def Particle(cardinalite) : -#-------------------------- - return FACT (statut='o', max=cardinalite, - ParticleNature = SIMP( statut='o', typ='TXM', into=['Atoms', 'Molecules', 'Dissipative', 'Fluid Particle', 'Discrete Particle']), - b_Atom = BLOC( condition='ParticleNature == "Atoms"', - AtomsName = SIMP( statut='o', typ=(userAtom,'createObject'),), - Atom = FACT (statut ='o', max= '**', - ChemicalSpecie = SIMP( statut='o', typ='TXM'), - Number = SIMP (statut ='o', typ = 'I'), - ElectricCharge = SIMP( statut='o', typ='R'), - MagneticMoment = SIMP( statut='o', typ='R'), - Size = SIMP(statut='f', typ='R'), # relevant ? - ),# Atom - ), # fin b_Atom - b_Molecule = BLOC( condition='ParticleNature == "Molecules"', - MoleculeName = SIMP( statut='o', typ=(userMolecule,'createObject'),), - ChemicalSpecie = FACT ( max='**', statut='o', - ChemicalSpecieName = SIMP( statut='o', typ=userAtom), - Proportion = SIMP( statut='o', typ='R', val_max =1), - ), - ElectricCharge = SIMP( statut='o', typ='R'), - MagneticMoment = SIMP( statut='o', typ='R'), - Shape = SIMP( statut='f', typ='TXM', into=['Linear', 'Trigonal Planar', 'Angular', 'Tetrahedral', 'Octahedral', 'Trigonal pyramid', 'Other']), - ), #fin b_Molecule - b_Dissipative = BLOC( condition='ParticleNature == "Dissipative"', - DPDName = SIMP( statut='o', typ=(userDPD,'createObject'),), - BondedParticles = SIMP(statut="o", typ=bool, defaut=False), - ), # b_Dissipative - b_Discrete = BLOC( condition='ParticleNature == "Discrete Particle"', - DiscreteParticleName = SIMP(statut='o', typ=(userDiscrete,'createObject'),), - TypeOfDiscreteParticle = SIMP( statut='o', typ='TXM', into=['Solid', 'Droplets', 'Bubbles','Bio Organism'],), - b_TypeDP_Solid = BLOC( condition ='TypeOfDiscreteParticle == "Solid"', - TypeOfSolid = SIMP( statut='o', typ='TXM', into=['Primary Particle', 'Assemblage / Aggregate'], position = 'global'), - b_SolidPrimary = BLOC( condition='TypeOfSolid == "Primary Particle"', - ), - b_SolidAggregate = BLOC( condition='TypeOfSolid == "Assemblage / Aggregate"', - ), - ), - b_TypeBio_Solid = BLOC( condition='TypeOfDiscreteParticle == "Bio Organism"', - TypeOfOrganism = SIMP( statut='o', typ='TXM', into=['Unicellular', 'Multicellular']), - b_Unicellular = BLOC( condition ='TypeOfOrganism=="Unicellular"', - Unicellular = SIMP( statut='o', typ='TXM', into=["Bactaria"], defaut='Bactaria') - ), - b_Multicellular = BLOC( condition ='TypeOfOrganism=="Multicellular"', - Multicellular = SIMP( statut='o', typ='TXM', into=["Animal","Fongus","Plant"]) - ), - ), # b_TypeBio_Solid - Properties = FACT ( statut ='o', - Geometry = SIMP( statut='o', typ='TXM', into=['Sphere', 'Ellopsoids', 'Other Shape']), - b_geom_Sphere = BLOC( condition = 'Geometry == "Sphere"', - ParticleRadius = SIMP( statut='o', typ ='R', val_min = 0), - ), - Weight = FACT (statut = 'o', - Mass = SIMP( statut='o', typ ='R', val_min = 0), - Density = SIMP( statut='o', typ ='R', val_min = 0), - ), - Mechanical = SIMP( statut='o', typ='TXM', into=['Rigid', 'Flexible', 'Deformable']), - b_SolidAggregate = BLOC( condition='TypeOfSolid == "Assemblage / Aggregate"', - Morphological = FACT (statut = 'o', - Consigne = SIMP(statut="o", homo="information", typ="TXM", defaut='Choose optional properties'), - FractalDimension = SIMP( statut='f', typ='R'), - NumberOfPrimaryParticle = SIMP (statut ='f',typ='I'), - EquivalentSize = SIMP( statut='f', typ='R'), - Porosoty = SIMP( statut='f', typ='R'), - ), # Morphological - ), # b_SolidAggregate - ElectroMagnetic = FACT (statut = 'f', - ElectricCharge = SIMP( statut='o', typ='R'), - MagneticMoment = SIMP( statut='o', typ='R'), - ), - b_SolidAggregateBonded = BLOC( condition='TypeOfSolid == "Assemblage / Aggregate"', - BondedParticles = FACT( - ListOfBondedParticles = SIMP(statut='o', max='**', typ = userParticle), - ), - ), - ), # Properties - ), # b_Discrete -############################ - - List_Of_Bonded_Particles = FACT( statut='f', - # -------------------------------------------# - Bonded_Particles = FACT( statut='o', max = "**", - Name_Of_Bonded_Particles = SIMP( statut='o', typ='TXM'), - Species_in_Particle = SIMP( statut='o', min=2, typ='TXM' , max = "**"), - ), # Bonded_Particles - ), # List_Of_Bonded_Particles - - List_Of_Interactions = FACT( statut='o', max = "**", - # --------------------------------------------------# - - Bonded_Interactions = FACT( statut='o', max = "**", - - #Type_Of_Bonded_Interaction = SIMP( statut='o', typ='TXM', into=['No', 'Covalent Bond Length', 'FENE', 'Covalent Bond Angle', 'Dihedral Angles', 'Improper Dihedral', 'Frozen Motion' ], defaut='No', position='global'), - Type_Of_Bonded_Interaction = SIMP( statut='o', typ='TXM', into=['No', 'Covalent Bond Length', 'FENE', 'Covalent Bond Angle', 'Dihedral Angles', 'Improper Dihedral', 'Frozen Motion' ], defaut='No'), - - #La saisie de l'ensemble des liaisons d'un meme type peut se faire ds le meme bloc (soit ds un fichier, soit manuelle) - #Une seule valeur de distante? est a saisir pour l'ensemble - # bloc_covalent_1 = BLOC( condition = 'Type_Of_Bonded_Interaction in ("Covalent Bond Length","FENE")', - # ), # fin bloc_covalent_1 - bloc_covalent_length = BLOC( condition = 'Type_Of_Bonded_Interaction == "Covalent Bond Length"', - Interaction_Length_Parameters = FACT( statut='o', max="**", - Apply_To_Bonded_Particles = SIMP( statut='o', max='**', typ='TXM'), - Spring_Stifness = SIMP( statut='o', typ='R', val_min=0), - Mean_Bond_Length = SIMP( statut='o', typ='R', val_min=0), - ), # fin Interation_Length_Parameters - ), # fin Bond_Length_Parameters - bloc_covalent_angle = BLOC( condition = 'Type_Of_Bonded_Interaction == "Covalent Bond Angle"', - Interaction_Angles_Parameters = FACT( statut='o', max="**", - Apply_To_Bonded_Particles = SIMP( statut='o', max='**', typ='TXM'), - Spring_Stifness = SIMP( statut='o', typ='R', val_min=0), - Mean_Bond_Angle = SIMP( statut='o', typ='R', val_min=0), - ), # fin Interation_Angles_Parameters - ), # fin bloc_covalent_length_and_angle - - #bloc_covalent_length_and_angle = BLOC( condition = 'Type_Of_Bonded_Interaction == "Covalent Bond Length" or Type_Of_Bonded_Interaction == "Covalent Bond Angle"', - # Bond_Parameters = FACT( statut='o', max="**", - # Apply_To_Bonded_Particles = SIMP( statut='o', max='**', typ='TXM'), - # Spring_Stifness = SIMP( statut='o', typ='R', val_min=0), - # bloc_covalent_length = BLOC( condition = 'Type_Of_Bonded_Interaction == "Covalent Bond Length"', - # Mean_Bond_Length = SIMP( statut='o', typ='R', val_min=0), - # ), # fin Bond_Length_Parameters - # bloc_covalent_angle = BLOC( condition = 'Type_Of_Bonded_Interaction == "Covalent Bond Angle"', - # Mean_Bond_Angle = SIMP( statut='o', typ='R', val_min=0), - # ), # fin Bond_Length_Parameters - # ), # fin Bond_Length_Parameters - #), # fin bloc_covalent_length_and_angle - - bloc_FENE = BLOC( condition = 'Type_Of_Bonded_Interaction == "FENE"', - Applies_To_All_Particles = SIMP( statut='o', typ=bool, defaut=True), - bloc_not_on_all = BLOC( condition = 'Applies_To_All_Particles == False', - FENE_Parameters = FACT( statut='o', max="**", - Species_Pair = SIMP( statut='o', max=2, typ='TXM'), - Spring_Constant_H = SIMP( statut='o', typ='R', val_min=0), - LMax = SIMP( statut='o', typ='R', val_min=0), - ), # fin FENE_Parameters - ), # fin bloc_not_on_all - bloc_on_all = BLOC( condition = 'Applies_To_All_Particles == True', - Spring_Constant_H = SIMP( statut='o', typ='R', val_min=0), - LMax = SIMP( statut='o', typ='R', val_min=0), - ), # fin bloc_on_all - ), # fin bloc_FENE - - bloc_le_reste = BLOC( condition = 'Type_Of_Bonded_Interaction in ("Dihedral Angles", "Improper Dihedral", "Frozen Motion")', - Particle_Name = SIMP( statut="f", typ='TXM'), - #Consigne = SIMP( statut="o", homo="information", typ="TXM", defaut='Not Implemented Yet'), - - ), - ), # fin Bonded_Interaction - - # ------------------------------- # - - Unbonded_Interactions = FACT( statut='o', max= "**", - - Type_Of_Unbonded_Interaction = SIMP( statut='o', typ='TXM', into=['No', 'electro_magnetic', 'Repulsion_and_VdW', 'Soft_Potentiel', ], defaut='No', position='global',fenetreIhm='menuDeroulant'), - - bloc_elec = BLOC( condition = 'Type_Of_Unbonded_Interaction == "electro_magnetic"', - Permittivity = SIMP( statut='o', typ='R', position='global_jdc'), - Magnetic = SIMP( statut='o', typ=bool, defaut=False,), - bloc_magnetic = BLOC( condition = 'Magnetic == True', - Permability = SIMP( statut='o', typ='R'), - ), # bloc_magnetic - ),# fin bloc_elec - - bloc_VdW = BLOC( condition = 'Type_Of_Unbonded_Interaction == "Repulsion_and_VdW"', - Species_Pair_Parameters = FACT( statut='o', max="**", - Type_Repulsion_and_VdW = SIMP( statut='o', typ='TXM', into = [ 'Lennard_Jones', 'Hard_sphere_model']), - Species_Pair = SIMP( statut='o', max=2, typ='TXM'), - VdW_Radius = SIMP( statut='o', typ='R', val_min=0), - b_Lennard = BLOC( condition = "Type_Repulsion_and_VdW == 'Lennard_Jones'", - Depth_Of_The_Potential_Well = SIMP( statut='o', typ='R', val_min=0), - ), # fin b_Lennard - ), # fin Species_Pair_Parameters - ), # bloc_VdW - - b_Param_Soft_Potentiel = BLOC( condition = "Type_Of_Unbonded_Interaction == 'Soft_Potentiel'", - Groot_Warren_Repulsion = SIMP( statut='o', typ='R', defaut=25.0, val_min=0), - Groot_Warren_Cutoff = SIMP( statut='o', typ='R', defaut=1.0, val_min=0), - Drag_Coefficient = SIMP( statut='o', typ='R'), # les 2 valent 0 pour MD - Drag_Force_Cutoff = SIMP( statut='o', typ='R', val_min=0), - ), # b_Param_Soft_Potentiel - - ), # fin UnBonded_Interactions - - # ------------------------------- # - - External_Field_Interaction = FACT( statut='o', max= "**", - Type_Of_Interaction_With_An_External_Field = SIMP( statut='o', typ='TXM', into=['No','gravitational field','electric field','magnetic field', 'Hydrodynamic_Field'], fenetreIhm='menuDeroulant', defaut ='No'), - b_gravite = BLOC( condition = 'Type_Of_Interaction_With_An_External_Field=="gravitational field"', - G = SIMP( statut='o', typ='R', defaut=9.81), - ), - b_elect = BLOC( condition = 'Type_Of_Interaction_With_An_External_Field=="electric field"', - Electric_Field = champ('E', ('E',), 1), - ), - b_magnetic = BLOC( condition = 'Type_Of_Interaction_With_An_External_Field=="magnetic field"', - Magnetic_Field = champ('B', ('B',), 1), - ), - b_hydrodynamic = BLOC( condition = 'Type_Of_Interaction_With_An_External_Field=="hydrodynamic field"', - Hydrodynamic_Field = champ('U', ('U',), 1), - ), - b_External_Field_Interaction = BLOC( condition = 'Type_Of_Interaction_With_An_External_Field != "No"', - Field_Applies_On_All_Species = SIMP( statut='o', typ=bool, defaut=True), - b_porte_espece = BLOC( condition = 'Field_Applies_On_All_Species == False ', - Species_List = SIMP( statut='o', typ='TXM', max= '**'), # faire un typ = "espece" - ), - ), # fin b_External_Field_Interaction - ), # fin Interaction_External_Field - - ), # fin List_Of_Interactions - -############################ -) # fin Particle - -#--------------- -def bloc_CPS(): -#--------------- - return BLOC(condition = 'SystemType == "Classical particle system"', - Particle = Particle('**'), - ) - -#---------------------- -def bloc_FluideMacro(): -#---------------------- - return BLOC(condition = 'SystemType == "Continuum system"', - ComplexFluid = SIMP(typ=bool, statut='o', defaut = False, position='global'), - FlowNature = SIMP(typ='TXM', statut='o', into =['Laminar', 'Turbulent'], position='global'), - bloc_FlowNature_Turbulent = BLOC(condition = ' FlowNature == "Turbulent"', - TurbulenceForFlowDynamics = FactTurbulence('o',position='global'), - ), #------ fin bloc_FlowNature_Turbulent - -# ---------------------- Effets thermiques - Thermal = FACT (statut ='o', - ThermalEffects = SIMP(typ='TXM', statut='o', into =['Non thermal', - 'Passive on flow dynamics', 'Active on flow dynamics'], defaut='Non thermal', position='global' ), - bloc_NonThermalEffects = BLOC(condition = ' ThermalEffects == "Non thermal"', - ReferenceTemperature = SIMP(typ='R', statut='o', val_min=-273.15 ), - ), # fin bloc_NonThermal - bloc_ThermalEffects_Active = BLOC(condition = ' ThermalEffects == "Active on flow dynamics"', -# PN a faire : un seul EOS possible mais +sieurs FFR - ActiveOnFlowEffect = FACT(statut = 'o', max='**', - RelationType = SIMP(statut = 'o', into =['Equation Of State', 'Force-Flux Relation'], typ ='TXM'), - bloc_EOS = BLOC(condition = 'RelationType == "Equation Of State"', - TypeOfEquationOfState = SIMP( statut='o', into =['variable density', 'compressible'], typ ='TXM'), - ), - bloc_NonEOSAndSimple=BLOC( condition = 'RelationType == "Force-Flux Relation" and ComplexFluid == False', - TypeOfForceFluxRelation = SIMP( statut='o', into =['Viscosity', 'Diffusivity', 'Thermal Conductivity'], intoXML=['Viscosity', 'Diffusivity', 'Thermal Conductivity','Shear-stress closure', 'Scalar flux'], typ ='TXM'), - blocViscosity=BLOC( condition = 'TypeOfForceFluxRelation == "Viscosity"', - AFAIRE=SIMP(typ='TXM', statut = 'o', defaut = 'Initialisation ?') - ), - blocDiffusivity=BLOC( condition = 'TypeOfForceFluxRelation == "Diffusivity"', - AFAIRE=SIMP(typ='TXM', statut ='o', defaut = 'Initialisation ?') - ), - blocConductivity=BLOC( condition = 'TypeOfForceFluxRelation == "Thermal Conductivity"', - AFAIRE=SIMP(typ='TXM', statut ='o', defaut = 'Initialisation ?') - ), - ), - bloc_NonEOSAndComplex=BLOC( condition = 'RelationType == "Force-Flux Relation" and ComplexFluid == True', - TypeOfForceFluxRelation = SIMP( statut='o', into =['Shear-stress closure', 'Scalar flux'], typ ='TXM', intoXML=['Viscosity', 'Diffusivity', 'Thermal Conductivity','Shear-stress closure', 'Scalar flux']), - ), - ), # fin ActiveOnFlowEffect - ), # fin bloc_ThermalEffects_Active - - DensityInitialisation = FACT( statut ='o', - bloc_DensityNonThermal = BLOC(condition = ' ThermalEffects == "Non thermal" or ThermalEffects == "Passive on flow dynamics"', - DensityEquationOfState = SIMP(typ='TXM', statut='o', into =['Constant density'], defaut = 'Constant density'), - InitialDensity = SIMP(typ='R', statut='o',), - ), # fin bloc_DensityNonThermal - bloc_DensityAndThermalActive = BLOC(condition = ' ThermalEffects == "Active on flow dynamics"', - OriginOfThermalEffects = SIMP( statut='o', into =['Given', 'Constant density'], typ ='TXM', defaut ='Constant density'), - BlocGiven =creeBlocPourLesFichiers (' OriginOfThermalEffects == "Given"', 'FileName', ('Med', 'cgns' ), FieldName=1), - BlocConstant = BLOC(condition = 'OriginOfThermalEffects == "Constant density"', - InitialDensity = SIMP(typ='R', statut='o',), - ), - ), - ), # fin DensityInitialisation - - - ),# fin Fact Thermal - - bloc_scalar_FluidTurbulentOrLaminar = BLOC(condition = "(ComplexFluid == False and FlowNature == 'Turbulent') or (ComplexFluid == False and FlowNature == 'Laminar')", - Scalars = FACT(statut = 'o', - bloc_FlowNature_Turbulent_For_Scalars = BLOC(condition = ' FlowNature == "Turbulent"', - asTurbulenceForFlowDynamics = SIMP (statut='o', typ=bool, defaut=True), - BlocAsTFFD = BLOC(condition = "asTurbulenceForFlowDynamics == False", - ScalarsTurbulenceModelling = FactTurbulence('o',), - ), - ), - bloc_ThermalEffects_On = BLOC(condition = ' ThermalEffects == "Active on flow dynamics" or ThermalEffects == "Passive on flow dynamics"', - TemperatureScalar =FACT(statut ='o', - Name = SIMP(typ=(scalar,'createObject'), statut='o', defaut ='Temperature', homo='constant'), - SourceTerm=SIMP(typ=bool, statut='o', defaut=False), - blocSourceTerm = FactTermeSource('SourceTerm==True'), - TemperatureInitialisation = FACT( statut ='o', - OriginOfThermalFluxField = SIMP( statut='o', into =['Given', 'Interaction', 'to be simulated'], typ ='TXM'), - BlocGiven = creeBlocPourLesFichiers('OriginOfThermalFluxField == "Given"', 'FileName', ('Med', 'cgns' ), FieldName=1), - ),# fin TemperatureInitialisation - ),# TemperatureScalar - ), # fin bloc_ThermalEffects_On - bloc_Turbulence_TWMChoice1 = BLOC(condition = 'TVMChoice == "K-Epsilon" or TVMChoice == "K-Omega"', - KScalar =FACT(statut ='o', - Name = SIMP(typ=(scalar,'createObject'), statut='o', defaut ='K', homo='constant'), - SourceTerm=SIMP(typ=bool, statut='o', defaut=False), - blocSourceTerm = FactTermeSource('SourceTerm==True'), - Initialisation = FACT( statut ='o', - OriginOfFluxField = SIMP( statut='o', into =['Given', 'Interaction', 'to be simulated'], typ ='TXM', defaut='to be simulated'), - BlocGiven = creeBlocPourLesFichiers('OriginOfThermalFluxField == "Given"', 'FileName', ('Med', 'cgns' ), FieldName=1), - ), - ), - ), - bloc_Turbulence_TWMChoice2 = BLOC(condition = 'TVMChoice == "K-Epsilon"', - EpsilonScalar =FACT(statut ='o', - Name = SIMP(typ=(scalar,'createObject'), statut='o', defaut ='Epsilon', homo='constant'), - SourceTerm=SIMP(typ=bool, statut='o', defaut=False), - blocSourceTerm = FactTermeSource('SourceTerm==True'), - Initialisation = FACT( statut ='o', - OriginOfFluxField = SIMP( statut='o', into =['Given', 'Interaction', 'to be simulated'], typ ='TXM', defaut='to be simulated'), - BlocGiven = creeBlocPourLesFichiers('OriginOfThermalFluxField == "Given"', 'FileName', ('Med', 'cgns' ), FieldName=1), - ), - ), - ), - bloc_Turbulence_TWMChoice3 = BLOC(condition = 'TVMChoice == "K-Omega"', - OmegaScalar =FACT(statut ='o', - Name = SIMP(typ=(scalar,'createObject'), statut='o', defaut ='Omega', homo='constant'), - SourceTerm=SIMP(typ=bool, statut='o', defaut=False), - blocSourceTerm = FactTermeSource('SourceTerm==True'), - Initialisation = FACT( statut ='o', - OriginOfFluxField = SIMP( statut='o', into =['Given', 'Interaction', 'to be simulated'], typ ='TXM', defaut='to be simulated'), - BlocGiven = creeBlocPourLesFichiers('OriginOfThermalFluxField == "Given"', 'FileName', ('Med', 'cgns' ), FieldName=1), - ), - ), - ), - Scalar = FACT(statut = 'o', max ='**', - Name = SIMP(typ = (scalar,'createObject'), statut='o',), - bloc_scalar_FluidTurbulentAndNonComplexe = BLOC (condition = "FlowNature == 'Turbulent'", - ScalarFluxModel = FactTurbulence('f'), - ), # bloc_scalar_FluidTurbulentandNonComplexe - SourceTerm=SIMP(typ=bool, statut='o', defaut=False), - blocSourceTerm = FactTermeSource('SourceTerm==True'), - Initialisation = FACT( statut ='o', - OriginOfFluxField = SIMP( statut='o', into =['Given', 'Interaction', 'to be simulated'], typ ='TXM', defaut='to be simulated'), - BlocGiven = creeBlocPourLesFichiers('OriginOfThermalFluxField == "Given"', 'FileName', ('Med', 'cgns' ), FieldName=1), - ),# fin Initialisation - ),# Scalar - ),# AdditionalScalars - ), # fin FluidTurbulentandNonComplexe - # il faut une validation de coherence entre l existence de tous les turbulencesModelling - )# fin bloc_FluideMacro - -#-----------------------------------------------------# -def prepareBoundaryCondition(): - return FACT( statut='o',max = '**', # max = nb de facette de bord - applyOnStateVariable = SIMP (statut ='o', typ=stateVariable ), - b_designe_Mesh = BLOC(condition = "SystemType == 'Continuum system'", - ApplyOnMeshGroups = SIMP (statut ='o', typ=meshGroup, max='**'), - ), - #b_designe_Shape = BLOC(condition = "SystemType == 'Classical particle system'", - # ApplyOnCadGroups = SIMP (statut ='o', typ=spatialRegion, max='**'), - - Type_Of_Boundary_Condition = SIMP( statut='o', typ='TXM', into=['Inlet', 'Outlet', 'Symmetry','Periodicity', 'Wall', 'Free Surface'], ), - b_periodique = BLOC( condition = "Type_Of_Boundary_Condition == 'Periodic'", - Direction = SIMP( statut='o', typ='TXM', into=['X','Y','Z', 'XYZ']), - ), # b_periodique - b_inlet = BLOC( condition = "Type_Of_Boundary_Condition == 'Inlet'", - Formulation_of_Boundary= SIMP( statut='o', typ='TXM', into=['Dirichlet','Neumann','Cauchy']), - b_Formulation_of_Boundary_dirichlet = BLOC( condition = 'Formulation_of_Boundary == "Dirichlet"', - regles=(AU_MOINS_UN('InletProfile','IntegratedValue',), - EXCLUS('InletProfile','IntegratedValue'), ), - Consigne = SIMP(statut ="o", homo="information", typ="TXM", defaut = "Choose between InletProfile or IntegratedValue "), - InletProfile = SIMP (statut ='f', typ='TXM'), - IntegratedValue = SIMP ( statut='f', typ='R'), - #PN : faire une regle - ), - b_Formulation_of_Boundary_Neumann = BLOC( condition = 'Formulation_of_Boundary == "Neumann"', - Flux = SIMP (statut ='o', typ='TXM'), - ), - b_Formulation_of_Boundary_Cauchy = BLOC( condition = 'Formulation_of_Boundary == "Cauchy"', - ImposedFlux = SIMP (statut ='o', typ='TXM'), - IntegratedValue = SIMP ( statut='o', typ='R'), - ), - ), # b_inlet - -# #b_non_periodique = BLOC( condition = "Type_Of_Boundary_Condition != 'Periodic'", -# # Boundary_Face = SIMP( statut='o', typ= spatialRegion), -# #Apply_to_Wich_Quantity = SIMP( statut='o', typ='TXM', into=['Mass FLux', 'Velocity', 'Temperature','Scalars','all',]), -# ), - - # Formulation_of_Boundary= SIMP( statut='o', typ='TXM', into=['Dirichlet','Neumann']), - # b_Formulation_of_Boundary_dirichlet = BLOC( condition = 'Formulation_of_Boundary == "Dirichlet"', - # Value = SIMP ( statut='o', typ='R'), - # ), - ) # Boundary_Conditions - - - - -JdC = JDC_CATA ( - code = 'Vimmp', - # faire un validateur qui verifie que si on active reactions chimiques il faut que les masses molaires soient rentrees -) - -Component = OPER(nom='Component', sd_prod=composant, - SystemType = SIMP(typ='TXM', into=['Quantum system', 'Classical particle system', 'Continuum system'], statut='o',position='global'), - PhysicalDescription = FACT(statut = 'o', - b_FluideMacro = bloc_FluideMacro(), - b_bloc_CPS = bloc_CPS(), - ), - b_ModeleNumerique_quantum = prepareBlocSystemType('Quantum system'), - b_ModeleNumerique_classical = prepareBlocSystemType('Classical particle system'), - b_ModeleNumerique_continuum = prepareBlocSystemType('Continuum system'), - BoundaryConditions = FACT(statut = 'o', - DynamicalVariables = FACT (statut ='o', - BFlowNatureLaminar = BLOC(condition ='FlowNature == "Laminar"', - Fluid_Velocity = SIMP(typ=(dynamicVariable,'createObject'), statut='o', defaut ='Fluid_Velocity', homo='constant'), - Fluid_Pressure = SIMP(typ=(dynamicVariable,'createObject'), statut='o', defaut ='Fluid_Pressure', homo='constant'), - ), - BFlowNatureTurbulent = BLOC(condition ='FlowNature == "Turbulent"', - Avarage_Velocity = SIMP(typ=(dynamicVariable,'createObject'), statut='o', defaut ='Average_Velocity', homo='constant'), - Fluid_Pressure = SIMP(typ=(dynamicVariable,'createObject'), statut='o', defaut ='Fluid_Pressure', homo='constant'), - ), - ), - BoundaryCondition = prepareBoundaryCondition(), - ) -) - -Species = PROC(nom='Species', - Specie = FACT( statut='o', max ="**", - Name = SIMP( statut='o', typ=(especeChimique,'createObject') ), - masse_molaire = SIMP( statut='f', typ='R',), - ) -) - -def monBlocInteractionTypeChamp (): - return BLOC (condition = '1 == 1' , # a distinguer selon les cas - fieldNameInOrigine = SIMP(typ='TXM', statut='o'), - fieldNameInDestination = SIMP(typ='TXM', statut='o'), - ) - -def TousSelonLeTypeDeFormatDisponible(condition, labelName='fileName'): - transferType = SIMP(typ='TXM', statut='o', into =['File', 'Memory', 'CorbaObject']) - maListe = list(dictCodeFormat.keys()) - dicoArgs={} - #index=0 - #for Solv1 in maListe[index:]: - # for Solv2 in maListe[index:]: - # #print (Solv1,Solv2, calculCommun(Solv1, Solv2,dictCodeFormat)) - # print ('PNPN attention changement de dictCodeFormat tant que getEficasAttribut n est pas correct') - # conditionSolv = 'transferType == "File" and getEficasAttribut(origine,"Solver")==Solv1 and getEficasAttribut(destination,"Solver")==Solv2' , - # conditionSolv = 'transferType == "File"' - # monBlocFichier=creeBlocPourLesFichiers (conditionSolv, 'FileName', calculCommun(Solv1, Solv2,dictCodeFormat)) - # dicoArgs['monBlocFichier'+str(index)]=monBlocFichier - # index=index+1 - mesFormats=set() - for solv1 in dictCodeFormat.keys() : - for f in dictCodeFormat[solv1] : mesFormats.add(f) - conditionSolv='transferType == "File"' - BlocFichier=creeBlocPourLesFichiers (conditionSolv, labelName, mesFormats) - dicoArgs['BlocFichier']=BlocFichier - monBlocChamp = BLOC(condition = "transferType=='File'", FieldName=SIMP(typ='TXM', statut='o')) - dicoArgs['monBlocChamp']=monBlocChamp - return BLOC(condition = condition,transferType=transferType, **dicoArgs) - -def SelonLeTypeDeFormatDisponibleMapper(condition): - transferType = SIMP(typ='TXM', statut='o', into =['File', 'Memory', 'CorbaObject']) - maListe = list(dictCodeFormat.keys()) - dicoArgs={} - index=0 - for Solv1 in maListe[index:]: - for Solv2 in maListe[index:]: - #print (Solv1,Solv2, calculCommun(Solv1, Solv2,dictCodeFormat)) - print ('PNPN attention changement de dictCodeFormat tant que getEficasAttribut n est pas correct') - conditionSolv = 'transferType == "File" and getEficasAttribut(origine,"Solver")==Solv1 and getEficasAttribut(destination,"Solver")==Solv2' , - conditionSolv = 'transferType == "File"' - monBlocFichier=creeBlocPourLesFichiers (conditionSolv, 'FileName', calculCommun(Solv1, Solv2,dictCodeFormat)) - dicoArgs['monBlocFichier'+str(index)]=monBlocFichier - index=index+1 - monBlocChamp = BLOC(condition = "transferType=='File'", FieldName=SIMP(typ='TXM', statut='o')) - dicoArgs['monBlocChamp']=monBlocChamp - return BLOC(condition = condition,transferType=transferType, **dicoArgs) - -Mapper = OPER (nom= 'Mapper',sd_prod=mapper, - Solver=SIMP(statut='o', typ='TXM', into = list(dictMapperFormat.keys())), - ) -Converter = OPER (nom= 'Converter',sd_prod=converter) - -Interactions = PROC(nom='Interactions', - Interaction = FACT( max = '**', - origine = SIMP(typ=modeleNumDuCompo, statut='o'), - destination = SIMP(typ=modeleNumDuCompo, statut='o'), - monBloc_FFFF = BLOC ( - condition = 'getEficasAttribut(origine,"ModelType") == "Fields" and getEficasAttribut(destination,"ModelType") == "Fields"' , - termeLE = SIMP(typ='TXM', statut='o', into = dictTermeLE['Fields','Fields'],fenetreIhm='menuDeroulant'), - ), - monBloc_DPDP = BLOC ( - condition = 'getEficasAttribut(origine,"ModelType") == "Particles" and getEficasAttribut(destination,"ModelType") == "Particles"' , - termeLE = SIMP(typ='TXM', statut='o', into = dictTermeLE['Particles','Particles'],fenetreIhm='menuDeroulant'), - ), - monBloc_FFDP = BLOC ( - condition = 'getEficasAttribut(origine,"ModelType") == "Fields" and getEficasAttribut(destination,"ModelType") == "Particles"' , - termeLE = SIMP(typ='TXM', statut='o', into = dictTermeLE['Fields','Particles'],fenetreIhm='menuDeroulant'), - ), - monBloc_DPFF = BLOC ( - condition = 'getEficasAttribut(origine,"ModelType") == "Particles" and getEficasAttribut(destination,"ModelType") == "Fields"' , - termeLE = SIMP(typ='TXM', statut='o', into = dictTermeLE['Particles','Fields'],fenetreIhm='menuDeroulant'), - ), - couplingPart = FACT( statut='o', - couplingMode = SIMP(typ='TXM', statut='o', into =['direct', 'scaling', 'conversion']), - monBlocDirect = TousSelonLeTypeDeFormatDisponible( "couplingMode=='direct'" ), - monBlocIn = BLOC ( condition = "couplingMode=='scaling' or couplingMode=='conversion'", - OutFromComponent = FACT( statut='o', - monBlocFormat = TousSelonLeTypeDeFormatDisponible( "1", labelName = 'outFromMapperFileName' ), - ), - ), - monBlocMapper = BLOC ( condition = "couplingMode=='scaling' or couplingMode=='conversion'", - ConversionNode = FACT( min=1, max='**', statut ='o', - tool = SIMP(typ=mapper, statut ='o'), - OutFromMapper = FACT (statut ='o', - monBlocFormat = TousSelonLeTypeDeFormatDisponible( "1", labelName = 'outFromMapperFileName' ), - ), - ), - ), - ), - monBlocUseConverter = BLOC ( condition = "couplingMode=='use converter'", - myConverter = SIMP(typ=converter, statut ='o') - ), - ), -) - -dict_condition={ -'ModelType' : ('Interactions', 'Component'), -#'NumericalMethod' : ('Interactions', 'Component'), -# 'TypeOfSolid' : ('Component',) -} - -Temporal_Aspects = PROC( nom ="Temporal_Aspects", - Simulated_Time_Laps = FACT (statut='o', max='**', - name = SIMP(statut='o', typ=(simulatedTime,'createObject'),), - initialTime = SIMP( statut='o', typ='R'), - finalTime = SIMP( statut='o', typ='R'), - timeDiscretization = SIMP( statut ='o', typ = 'TXM', into = ['Constant Time Step', 'Varying Time Step']), - bloc_Constant = BLOC (condition = 'timeDiscretization == "Constant Time Step"', - constantTimeStep = SIMP (statut ='o', typ = 'R'), - ), - bloc_Varying = BLOC (condition = 'timeDiscretization == "Varying Time Step"', - CFLNumberCriteria = SIMP (statut ='o', typ = 'R'), - FourierNumberCriteria = SIMP (statut ='o', typ = 'R'), - ), - ), -) -# -Spatial_Aspects = PROC( nom='Spatial_Aspects', - System_Geometry = FACT ( statut='o', max='**', - System_Geometry_name = SIMP( statut='o', typ=(systemGeometry, 'createObject'),), - Shape = FACT (statut ='f', max='**', - Shape_Nature = SIMP( statut='o', typ='TXM', into=['Typical Geometry', 'CAD']), - b_Shape = BLOC( condition = 'Shape_Nature == "Typical Geometry"', - Box = SIMP( statut='o', typ='TXM', into=['Cube', 'Sphere','Cylinder'] ), - b_Cube = BLOC( condition = 'Box == "Cube"', - #Taille_Box_Englobante = SIMP( statut='o', typ='R', max=3, min =3) - # derait etre un Tuple(3) mais a faire apres la projection - #Size_Of_Bounding_Box = SIMP( statut='o', typ=Tuple(3), validators=VerifTypeTuple(('R','R','R'),),) - Size_Of_Bounding_Box = SIMP( statut='o', typ='R', max=3, min=3, ), - ), # fin b_Cube - b_Boule = BLOC( condition = 'Box == "Sphere"', - Center = SIMP( statut='o', typ='R', max=3, min =3), - ),# fin b_Boule - b_Cylinder = BLOC( condition = 'Box == "Cylinder"', - Heigth = SIMP( statut="o", typ='R', val_min=0.0, ang='Nanotube length [m]'), - ),# fin b_Tube - b_Boule_ou_Cylinder = BLOC( condition = 'Box == "Sphere" or Box == "Cylinder"', - Radius = SIMP( statut='o', typ='R', val_min=0.0, ang='radius length [m]') , - ),# fin b_Boule_ouCylinder - ), # fin b_Shape - b_CAO = creeBlocPourLesFichiers( "Shape_Nature == 'CAD'",'Domain_File', ['txt','I-deas', 'Gmsh', 'top',]), - ShapeIdentifier=SIMP( statut='o', typ=(cadShape,'createObject'),max='**',), - ), # fin Shape - ),# System_Geometry - Spatial_Discretization = FACT ( statut='f', max="**", - Mesh_Name = SIMP( statut='o', typ=(meshIdentifier,'createObject')), - b_Mesh = creeBlocPourLesFichiers( "1 == 1",'Domain_File', ['med', 'Gmsh',]), - GroupIdentifier = SIMP( statut='o', typ=(meshGroup,'createObject'),max='**',), - ), - Boundary_Constraints = FACT (statut = 'f', - Motion = FACT ( statut='f', - Motion_Nature = SIMP(statut='o', typ='TXM', into=['Fixed boudary', 'Translational motion', 'Rotational motion', 'Scaling']), - b_Translational_motion=BLOC(condition = 'Motion_Nature == "Translational motion"', - Translation_Velocity=SIMP( statut='o', typ='R'), - boundaries=SIMP( statut='o', typ=spatialRegion,max='**' ), - ), - b_Rotational_motion=BLOC(condition = 'Motion_Nature == "Rotational motion"', - Rotation_Rate=SIMP( statut='o', typ='R'), - boundaries=SIMP( statut='o', typ=spatialRegion,max='**' ), - ), - b_fixed=BLOC(condition = 'Motion_Nature == "Fixed boudary"', - boundaries=SIMP( statut='o', typ=spatialRegion,max='**', homo='SansOrdreNiDoublon'), - #boundaries=SIMP( statut='o', typ=spatialRegion,max='**' ), - ), - ), -#PN decrire page 28 - Mapping = FACT ( statut='f', - ), - ), # Boundary_Constraints -) # fin Geometric_Domain - -TEXTE_NEW_JDC = "\ -Velocity=scalar()\ -" diff --git a/Vimmp/OLD/cata_CSAndCPS_v8.py b/Vimmp/OLD/cata_CSAndCPS_v8.py deleted file mode 100644 index 58a4ca7a..00000000 --- a/Vimmp/OLD/cata_CSAndCPS_v8.py +++ /dev/null @@ -1,893 +0,0 @@ -from Accas import * - -class composant(ASSD):pass -class mapper(ASSD):pass -class converter(mapper):pass -class modeleNumDuCompo(UserASSD):pass -class especeChimique(UserASSD):pass -class userParticle(UserASSD) :pass -class userAtom(userParticle) :pass -class userMolecule(userParticle) :pass -class userDiscrete(userParticle) :pass -class userDPD(userParticle) :pass - -class spatialRegion(UserASSD):pass -class cadShape(spatialRegion):pass -#class meshGroup(spatialRegion,UserASSDMultiple):pass -class meshGroup(spatialRegion):pass -class meshIdentifier(spatialRegion):pass -class systemGeometry(UserASSD):pass -class simulatedTime(UserASSD):pass -class constitutiveRelation(UserASSD):pass - -class stateVariable(UserASSD) : pass -class scalar(stateVariable):pass -class dynamicVariable(stateVariable):pass - - -# PN a faire --> ajouter un MC modeleNumerique ( apres avoir renomme le modeleNumerique actuel en classe de modele numerique) -# et le dictionnaire d apres -dictTypModNumModNum = { - ('Continuum system','Particles') : ('SPH','Lagrangian one-fluid-particle pdf'), - ('Continuum system','Fields') : ('FV','FEM', 'Spectral method'), - ('Classical particle system','Particles') : ('MD', 'DPD', 'SDPD','SPH','CFD_Discrete_Particles'), - ('Classical particle system','Fields') : ('LBM',), - ('Quantum system','Particles') : ('Particle method',), - ('Quantum system','Fields') : ('Wave',), -} - -dictCodeModeleNumerique = { - 'Code_Saturne' : ('Lagrangian one-fluid-particle pdf', 'FV', 'CFD_Discrete_Particles',), - 'Fluent' : ('FV',), - 'Culgi Package': (), - 'DEM_SD' : ('Lagrangian one-fluid-particle pdf', 'FV', 'CFD_Discrete_Particles',), - 'DFTB+' : ('density functional tight binding method',), - 'DL_MESO_DPD' : ('Lagrangian one-fluid-particle pdf', 'FV', 'CFD_Discrete_Particles',), - 'DL_MESO_LBE' : ('Lagrangian one-fluid-particle pdf', 'FV', 'CFD_Discrete_Particles',), - 'DL_POLY_4' : ('Lagrangian one-fluid-particle pdf', 'FV', 'CFD_Discrete_Particles',), - 'GROMACS' : ('Lagrangian one-fluid-particle pdf', 'FV', 'CFD_Discrete_Particles',), - 'GROMACS_LS' : ('Lagrangian one-fluid-particle pdf', 'FV', 'CFD_Discrete_Particles',), - 'LAMMPS' : ('Lagrangian one-fluid-particle pdf', 'FV', 'CFD_Discrete_Particles',), - 'NWChem' : ('Lagrangian one-fluid-particle pdf', 'FV', 'CFD_Discrete_Particles',), - 'OpenFOAM' : ('Lagrangian one-fluid-particle pdf', 'FV', 'CFD_Discrete_Particles',), - 'Quantum EXPRESSO' : ('Particle method', 'Wave',), - 'RHEO_AGGRATE' : ('Particle method', 'Wave',), - 'RHEO_DROP' : ('Particle method', 'Wave',), - 'STAR_CCM+' : ('FV', 'Particles',), - 'Code Nill' : ('Spectral method', ), -} -# Le Code Nill est ajouté en dur au Solver - -dictCodeFormat = { - 'Code_Saturne' : ('Med', 'cgns', 'msh', 'des', 'unv', ), - 'Culgi Package': ('cof',), - 'DEM_SD' : ('geo', 'ascii'), - 'DFTB+' : ('geo', 'ascii'), - 'Fluent' : ('FluentFormat', ), - 'OpenFOAM' : ('OpenFoamFormat', 'Med', ), -} - -dictMapperFormat = { - 'Med Coupling' : ('Med',), - 'Gmsh' : ('Med', 'OpenFoamFormat'), -} - -dictTermeLE = { - ('Fields','Particles') : ('Fluid_Velocity_Field', - 'Fluid_Temperature_Field', - 'Fluid_Species_Mass_Fraction_Fluid',), - ('Particles','Fields') : ('Fluid_Particle_Momentum_Exchange_Field', - 'Fluid_Particle_Thermal_Exchange_Field', - 'Lagrangian one-particle pdfFluid_Particle_Mass_Source_Field', - 'Particle_Volumetric_Concentration_Modified_Fluid_Viscosity', - 'Particle_Extra_Stress_Tensor'), - ('Particles','Particles') : ('Pas encore fait'), - ('Fields','Fields') : ('Pas encore fait'), -} - -dictCodeConvertisseur = { - ('Saturne', 'OpenFOAM') : ('gmsh', 'Saturne2CDM and CDM2OpenFoam'), - ('Saturne', 'Fluent') : ( 'Saturne2CDM and CDM2Fluent'), - ('Fluent', 'OpenFOAM') : ('Fluent2CDM and CDM2OpenFoam'), -} - -#dictScalarsImplicites = { -# 'K-Epsilon' : ('K', 'Epsilon'), -# 'K-Omega' : ('K', 'Omega'), -#} - -#---------------------------------------- -def prepareBlocSystemType(systemType) : -#---------------------------------------- - condition = "SystemType == '" + systemType + "'" - Identifier = SIMP(statut='o', typ=(modeleNumDuCompo,'createObject'),) - SimulatedTimeLapse = SIMP(statut ='o', typ = simulatedTime) - ModelType = SIMP(statut='o', typ='TXM', into = ('Particles', 'Fields'), position='inGetAttribut') - dicoArgs={} - - for typeMod in ('Particles', 'Fields'): - conditionType = "ModelType == '" + typeMod + "'" - NumericalMethod = SIMP(statut='o',typ='TXM', into=dictTypModNumModNum[systemType, typeMod], - position='global', intoXML=allValueInDict(dictTypModNumModNum)) - dicoBloc = {} - for modeleNumerique in list(dictTypModNumModNum[systemType,typeMod]): - conditionNum = "NumericalMethod == '" + modeleNumerique + "'" - setCode = set() - for code in dictCodeModeleNumerique.keys(): - if modeleNumerique in dictCodeModeleNumerique[code]: setCode.add(code) - Solver = SIMP(statut='o', typ='TXM', into=list(setCode), intoXML=list(dictCodeModeleNumerique.keys()) ) - monNomBloc='b_ModelName_' + modeleNumerique.replace(' ','_') - if setCode ==set(): setCode.add('Code Nill') - if setCode !=set(): dicoBloc[monNomBloc]=BLOC(condition=conditionNum, nomXML='b_ModelName',Solver=Solver) - dicoArgs['b_modelType'+typeMod] = BLOC(condition=conditionType, NumericalMethod=NumericalMethod,**dicoBloc) - - blocMeshRef = BLOC(condition = '(ModelType == "Fields") and (NumericalMethod == "FV")', - Mesh_Identifiers = SIMP (statut ='o', max ='**', typ = meshIdentifier),) - dicoArgs['blocMeshRef'] = blocMeshRef - NumericalModel = FACT(statut='o', max= '**', Identifier=Identifier, ModelType=ModelType, - SimulatedTimeLapse=SimulatedTimeLapse, **dicoArgs) - return BLOC(condition=condition, nomXML='b_systemType', NumericalModel=NumericalModel) - -#----------------------------------- -def calculCommun(key1, key2, dico): -#----------------------------------- -# retourne la liste des valeurs communes a dico[key1] et dico[key2] - monSet=set() - if not key1 in dico: return () - if not key2 in dico: return () - for val in dico[key1]: - if val in dico[key2]: - monSet.add(val) - if monSet == set() : monSet.add ('No common format') - return list(monSet) - -#------------------------- -def allValueInDict(dico): -#------------------------- -# retourne la liste de toutes les valeurs possibles dans dico - monSet=set() - for clef in dico : - for val in dico[clef] : monSet.add(val) - return monSet - -#------------------------------------------------------------------------------------ -def creeBlocPourLesFichiers(laCondition, NomDuFichier, ListeFormats, FieldName=False): -#------------------------------------------------------------------------------------- - SIMPFormatFichier = SIMP(statut='o', typ = 'TXM', into = tuple(ListeFormats) + ('others',), ) - dicoDesBlocs = {} - for formatFich in ListeFormats : - nomBloc = 'b_format_fichier' + str(formatFich) - typeDesFichiers = ('Fichier', formatFich + " Files (*." + formatFich + ");;All Files (*)",) - blocCondition ="FileFormat == '" + formatFich + "'" - dicoDesBlocs[nomBloc] = BLOC( condition = blocCondition, FileName = SIMP(statut='o', typ = typeDesFichiers ),) - dicoDesBlocs['b_format_fichier_others'] = BLOC(condition="FileFormat == 'others'", FileName = SIMP(statut='o', typ = ('Fichier','All Files (*)'),),) - if FieldName: - SIMPFieldName = SIMP(statut='o', typ = 'TXM',) - return BLOC(condition=laCondition, FileFormat = SIMPFormatFichier, **dicoDesBlocs, FieldName=SIMPFieldName) - else : - return BLOC(condition=laCondition, FileFormat = SIMPFormatFichier, **dicoDesBlocs) - -#-------------------------------------------------------------------------------------------------- -def creeBlocPourLesFichiers2(laCondition, NomDuFichier='FileName', ListeFormats=[], FieldName=None): -#--------------------------------------------------------------------------------------------------- -# il faut reflechir pour parametrer NomDuFichier -# et le type (existing... du fichier) -# et utiliser le creeBlocPourLesFichiers2 - SIMPFormatFichier = SIMP(statut='o', typ = 'TXM', into = tuple(ListeFormats) + ('others',), ) - dicoDesBlocs = {} - formatName=NomDuFichier+'Format' - dicoDesBlocs [ formatName] = SIMPFormatFichier - for formatFich in ListeFormats : - dicoArgs={} - nomBloc = 'b_format_fichier' + str(formatFich) - typeDesFichiers = ('Fichier', formatFich + " Files (*." + formatFich + ");;All Files (*)",) - blocCondition = formatName + " == '" + formatFich + "'" - dicoArgs[NomDuFichier] = SIMP(statut='o', typ = typeDesFichiers ) - dicoDesBlocs[nomBloc] = BLOC( condition = blocCondition, **dicoArgs) - print (nomBloc, dicoDesBlocs[nomBloc]) - #dicoDesBlocs['b_format_fichier_others'] = BLOC(condition="FileFormat == 'others'", **dicoArgs) - if FieldName: - SIMPFieldName = SIMP(statut='o', typ = 'TXM',) - dicoDesBlocs[FieldName] = SIMPFieldName - return BLOC(condition=laCondition, **dicoDesBlocs) - -#--------------------------------------------- -def champ(nomDelaContante, labels ,nbReels ) : -#--------------------------------------------- -# ajouter les extensions pour le fichier et les blocs associes -# certains champs ne seront jamais uniformes -# probablement a refaire -#PNPN : Passer le nom du champ pour le label du vecteur -# A revoir - - dicoBloc = {} - dicoBloc[nomDelaContante] = SIMP( statut='o', typ='R') - return FACT( statut='o', - Input_Mode = SIMP( statut='o', typ='TXM', into=('uniform value','values directly assigned','values read in file','analytical function',)), - b_uniforme = BLOC( condition = "Input_Mode == 'uniform value'", **dicoBloc), - b_vsaisies = BLOC( condition = "Input_Mode == 'values directly assigned'", - Field = SIMP( typ='R', statut='o', max ='**'), - #Vecteur = SIMP( fenetreIhm='Tableau', homo = labels, - # statut='o', min=2, max='**', - # typ=Tuple(nbReels), - # validators=VerifTypeTuple(("'R',"*nbReels),),) # end particle - ), #b_vsaisie - b_vdsfich = BLOC( condition = "Input_Mode == 'values read in file'", - Format = SIMP( statut='o', typ='TXM', into=['txt','Med',], position='global' ), - td_txt = BLOC(condition = 'Format == "txt"', - File = SIMP( statut='o', typ=('Fichier','Text Files(*.txt);All Files (*)'),), - ), # fin vtd_txt - td_med_1 = BLOC( condition = 'Format == "Med"', - File = SIMP( statut='o', typ=('Fichier','Med Files(*.med);All Files (*)'),), - ), - td_med_2 = BLOC( condition = 'Format == "Med"', - FieldName = SIMP( statut='o', typ='TXM',), - ), - ), - b_vfct = BLOC( condition = "Input_Mode == 'analytical function'", - Function = SIMP( statut='o', typ='TXM',), - ), - #b_vserc = BLOC( condition = "Input_Mode == 'call to a service'", - # Service = SIMP( statut='o', typ='TXM',), - #), - ) - - -#------------------------------ -def FactTermeSource(condition): -#------------------------------ - return BLOC (condition=condition, - OriginOfSourceTerm = SIMP( statut='o', typ='TXM',into=['Interaction', 'Chemical Reaction', 'Other Scalar']), - ) - -#------------------------------------------------------ -def FactTurbulence(statut, ajout=None , position=None): -#------------------------------------------------------ - listInto = ['Fully resolved (DNS)', 'Spatial filtering (LES)', 'One-point moment', 'One-point PDF'] - if ajout != None : listInto.append(ajout) - return FACT(statut=statut, - TurbulenceModellingType = SIMP(typ='TXM', statut='o', into =listInto, ), - bloc_one_point = BLOC(condition= "TurbulenceModellingType == 'One-point moment'", - RANSModel = SIMP(statut="o", typ="TXM", - into=['Turbulent-Viscosity Model (TVM)', 'Reynolds Stress Model (RSM)']), - bloc_TVM = BLOC(condition= "RANSModel == 'Turbulent-Viscosity Model (TVM)'", - TVMChoice = SIMP(typ='TXM', statut='o', into=['K-Epsilon', 'K-Omega'] , position=position), - ), # fin bloc_TVM - bloc_RSM = BLOC(condition = "RANSModel == 'Reynolds Stress Model (RSM)'", - RSMChoice = SIMP(typ='TXM', statut='o', into=['Rotta', 'LRR-IP','LRR-QI','SSG']), - ), # fin bloc_RSM - ), # fin bloc_one_point - - bloc_one_spatial = BLOC(condition = "TurbulenceModellingType == 'Spatial filtering (LES)'", - ChoiceOfApproach = SIMP(typ='TXM', statut='o', into=['Field-based (LES)', 'Filtered Density Function (FDF)']), - SubgridScaleModel = SIMP(typ='TXM', statut='o', into=['No SGS', 'Smagorinsky','Dynamical model', 'SGS Transport Equations']), - ), # fin bloc_one_spatial - bloc_one_point_pdf = BLOC(condition = "TurbulenceModellingType == 'One-point PDF'", - ChoiceOfApproach = SIMP(typ='TXM', statut='o', into=['One-point Eulerian PDF', 'One-particle Lagrangian PDF']), - bloc_lagrangian_pdf = BLOC(condition = "ChoiceOfApproach == 'One-particle Lagrangian PDF'", - StochasticModel = SIMP(typ='TXM', statut='o', into=['Langevin','Other'], defaut='Langevin'), - )# fin lagrangian - ), # fin bloc_one_point_pdf - bloc_no_model = BLOC(condition = "TurbulenceModellingType == 'Fully resolved (DNS)'", - ChoiceOfApproach = SIMP(statut='o', typ='TXM', into=['Field-based (DNS)', 'N-Particle Method']), - bloc_Field = BLOC(condition = "ChoiceOfApproach == 'Field-based (DNS)'", - NumericalMethod = SIMP(statut='o', typ='TXM', into=['FV', 'Spectral Method'], - intoXML=['FV', 'Spectral Method','SPH', 'Vortex Method']), - ),# fin bloc_Field - bloc_N_particle = BLOC(condition = "ChoiceOfApproach == 'N-Particle Method'", - NumericalMethod = SIMP(statut='o', typ='TXM', into=['SPH', 'Vortex Method'], - intoXML=['FV', 'Spectral Method','SPH', 'Vortex Method']), - ),# fin bloc_N_particle - ), # fin bloc_no_model - ) # fin du return de la fonction factTurbulence - -#-------------------------- -def Particle(cardinalite) : -#-------------------------- - return FACT (statut='o', max=cardinalite, - ParticleNature = SIMP( statut='o', typ='TXM', into=['Atoms', 'Molecules', 'Dissipative', 'Fluid Particle', 'Discrete Particle']), - b_Atom = BLOC( condition='ParticleNature == "Atoms"', - AtomsName = SIMP( statut='o', typ=(userAtom,'createObject'),), - Atom = FACT (statut ='o', max= '**', - ChemicalSpecie = SIMP( statut='o', typ='TXM'), - Number = SIMP (statut ='o', typ = 'I'), - ElectricCharge = SIMP( statut='o', typ='R'), - MagneticMoment = SIMP( statut='o', typ='R'), - Size = SIMP(statut='f', typ='R'), # relevant ? - ),# Atom - ), # fin b_Atom - b_Molecule = BLOC( condition='ParticleNature == "Molecules"', - MoleculeName = SIMP( statut='o', typ=(userMolecule,'createObject'),), - ChemicalSpecie = FACT ( max='**', statut='o', - ChemicalSpecieName = SIMP( statut='o', typ=userAtom), - Proportion = SIMP( statut='o', typ='R', val_max =1), - ), - ElectricCharge = SIMP( statut='o', typ='R'), - MagneticMoment = SIMP( statut='o', typ='R'), - Shape = SIMP( statut='f', typ='TXM', into=['Linear', 'Trigonal Planar', 'Angular', 'Tetrahedral', 'Octahedral', 'Trigonal pyramid', 'Other']), - ), #fin b_Molecule - b_Dissipative = BLOC( condition='ParticleNature == "Dissipative"', - DPDName = SIMP( statut='o', typ=(userDPD,'createObject'),), - BondedParticles = SIMP(statut="o", typ=bool, defaut=False), - ), # b_Dissipative - b_Discrete = BLOC( condition='ParticleNature == "Discrete Particle"', - DiscreteParticleName = SIMP(statut='o', typ=(userDiscrete,'createObject'),), - TypeOfDiscreteParticle = SIMP( statut='o', typ='TXM', into=['Solid', 'Droplets', 'Bubbles','Bio Organism'],), - b_TypeDP_Solid = BLOC( condition ='TypeOfDiscreteParticle == "Solid"', - TypeOfSolid = SIMP( statut='o', typ='TXM', into=['Primary Particle', 'Assemblage / Aggregate'], position = 'global'), - b_SolidPrimary = BLOC( condition='TypeOfSolid == "Primary Particle"', - ), - b_SolidAggregate = BLOC( condition='TypeOfSolid == "Assemblage / Aggregate"', - ), - ), - b_TypeBio_Solid = BLOC( condition='TypeOfDiscreteParticle == "Bio Organism"', - TypeOfOrganism = SIMP( statut='o', typ='TXM', into=['Unicellular', 'Multicellular']), - b_Unicellular = BLOC( condition ='TypeOfOrganism=="Unicellular"', - Unicellular = SIMP( statut='o', typ='TXM', into=["Bactaria"], defaut='Bactaria') - ), - b_Multicellular = BLOC( condition ='TypeOfOrganism=="Multicellular"', - Multicellular = SIMP( statut='o', typ='TXM', into=["Animal","Fongus","Plant"]) - ), - ), # b_TypeBio_Solid - Properties = FACT ( statut ='o', - Geometry = SIMP( statut='o', typ='TXM', into=['Sphere', 'Ellopsoids', 'Other Shape']), - b_geom_Sphere = BLOC( condition = 'Geometry == "Sphere"', - ParticleRadius = SIMP( statut='o', typ ='R', val_min = 0), - ), - Weight = FACT (statut = 'o', - Mass = SIMP( statut='o', typ ='R', val_min = 0), - Density = SIMP( statut='o', typ ='R', val_min = 0), - ), - Mechanical = SIMP( statut='o', typ='TXM', into=['Rigid', 'Flexible', 'Deformable']), - b_SolidAggregate = BLOC( condition='TypeOfSolid == "Assemblage / Aggregate"', - Morphological = FACT (statut = 'o', - Consigne = SIMP(statut="o", homo="information", typ="TXM", defaut='Choose optional properties'), - FractalDimension = SIMP( statut='f', typ='R'), - NumberOfPrimaryParticle = SIMP (statut ='f',typ='I'), - EquivalentSize = SIMP( statut='f', typ='R'), - Porosoty = SIMP( statut='f', typ='R'), - ), # Morphological - ), # b_SolidAggregate - ElectroMagnetic = FACT (statut = 'f', - ElectricCharge = SIMP( statut='o', typ='R'), - MagneticMoment = SIMP( statut='o', typ='R'), - ), - b_SolidAggregateBonded = BLOC( condition='TypeOfSolid == "Assemblage / Aggregate"', - BondedParticles = FACT( - ListOfBondedParticles = SIMP(statut='o', max='**', typ = userParticle), - ), - ), - ), # Properties - ), # b_Discrete -############################ - - List_Of_Bonded_Particles = FACT( statut='f', - # -------------------------------------------# - Bonded_Particles = FACT( statut='o', max = "**", - Name_Of_Bonded_Particles = SIMP( statut='o', typ='TXM'), - Species_in_Particle = SIMP( statut='o', min=2, typ='TXM' , max = "**"), - ), # Bonded_Particles - ), # List_Of_Bonded_Particles - - List_Of_Interactions = FACT( statut='o', max = "**", - # --------------------------------------------------# - - Bonded_Interactions = FACT( statut='o', max = "**", - - #Type_Of_Bonded_Interaction = SIMP( statut='o', typ='TXM', into=['No', 'Covalent Bond Length', 'FENE', 'Covalent Bond Angle', 'Dihedral Angles', 'Improper Dihedral', 'Frozen Motion' ], defaut='No', position='global'), - Type_Of_Bonded_Interaction = SIMP( statut='o', typ='TXM', into=['No', 'Covalent Bond Length', 'FENE', 'Covalent Bond Angle', 'Dihedral Angles', 'Improper Dihedral', 'Frozen Motion' ], defaut='No'), - - #La saisie de l'ensemble des liaisons d'un meme type peut se faire ds le meme bloc (soit ds un fichier, soit manuelle) - #Une seule valeur de distante? est a saisir pour l'ensemble - # bloc_covalent_1 = BLOC( condition = 'Type_Of_Bonded_Interaction in ("Covalent Bond Length","FENE")', - # ), # fin bloc_covalent_1 - bloc_covalent_length = BLOC( condition = 'Type_Of_Bonded_Interaction == "Covalent Bond Length"', - Interaction_Length_Parameters = FACT( statut='o', max="**", - Apply_To_Bonded_Particles = SIMP( statut='o', max='**', typ='TXM'), - Spring_Stifness = SIMP( statut='o', typ='R', val_min=0), - Mean_Bond_Length = SIMP( statut='o', typ='R', val_min=0), - ), # fin Interation_Length_Parameters - ), # fin Bond_Length_Parameters - bloc_covalent_angle = BLOC( condition = 'Type_Of_Bonded_Interaction == "Covalent Bond Angle"', - Interaction_Angles_Parameters = FACT( statut='o', max="**", - Apply_To_Bonded_Particles = SIMP( statut='o', max='**', typ='TXM'), - Spring_Stifness = SIMP( statut='o', typ='R', val_min=0), - Mean_Bond_Angle = SIMP( statut='o', typ='R', val_min=0), - ), # fin Interation_Angles_Parameters - ), # fin bloc_covalent_length_and_angle - - #bloc_covalent_length_and_angle = BLOC( condition = 'Type_Of_Bonded_Interaction == "Covalent Bond Length" or Type_Of_Bonded_Interaction == "Covalent Bond Angle"', - # Bond_Parameters = FACT( statut='o', max="**", - # Apply_To_Bonded_Particles = SIMP( statut='o', max='**', typ='TXM'), - # Spring_Stifness = SIMP( statut='o', typ='R', val_min=0), - # bloc_covalent_length = BLOC( condition = 'Type_Of_Bonded_Interaction == "Covalent Bond Length"', - # Mean_Bond_Length = SIMP( statut='o', typ='R', val_min=0), - # ), # fin Bond_Length_Parameters - # bloc_covalent_angle = BLOC( condition = 'Type_Of_Bonded_Interaction == "Covalent Bond Angle"', - # Mean_Bond_Angle = SIMP( statut='o', typ='R', val_min=0), - # ), # fin Bond_Length_Parameters - # ), # fin Bond_Length_Parameters - #), # fin bloc_covalent_length_and_angle - - bloc_FENE = BLOC( condition = 'Type_Of_Bonded_Interaction == "FENE"', - Applies_To_All_Particles = SIMP( statut='o', typ=bool, defaut=True), - bloc_not_on_all = BLOC( condition = 'Applies_To_All_Particles == False', - FENE_Parameters = FACT( statut='o', max="**", - Species_Pair = SIMP( statut='o', max=2, typ='TXM'), - Spring_Constant_H = SIMP( statut='o', typ='R', val_min=0), - LMax = SIMP( statut='o', typ='R', val_min=0), - ), # fin FENE_Parameters - ), # fin bloc_not_on_all - bloc_on_all = BLOC( condition = 'Applies_To_All_Particles == True', - Spring_Constant_H = SIMP( statut='o', typ='R', val_min=0), - LMax = SIMP( statut='o', typ='R', val_min=0), - ), # fin bloc_on_all - ), # fin bloc_FENE - - bloc_le_reste = BLOC( condition = 'Type_Of_Bonded_Interaction in ("Dihedral Angles", "Improper Dihedral", "Frozen Motion")', - Particle_Name = SIMP( statut="f", typ='TXM'), - #Consigne = SIMP( statut="o", homo="information", typ="TXM", defaut='Not Implemented Yet'), - - ), - ), # fin Bonded_Interaction - - # ------------------------------- # - - Unbonded_Interactions = FACT( statut='o', max= "**", - - Type_Of_Unbonded_Interaction = SIMP( statut='o', typ='TXM', into=['No', 'electro_magnetic', 'Repulsion_and_VdW', 'Soft_Potentiel', ], defaut='No', position='global',fenetreIhm='menuDeroulant'), - - bloc_elec = BLOC( condition = 'Type_Of_Unbonded_Interaction == "electro_magnetic"', - Permittivity = SIMP( statut='o', typ='R', position='global_jdc'), - Magnetic = SIMP( statut='o', typ=bool, defaut=False,), - bloc_magnetic = BLOC( condition = 'Magnetic == True', - Permability = SIMP( statut='o', typ='R'), - ), # bloc_magnetic - ),# fin bloc_elec - - bloc_VdW = BLOC( condition = 'Type_Of_Unbonded_Interaction == "Repulsion_and_VdW"', - Species_Pair_Parameters = FACT( statut='o', max="**", - Type_Repulsion_and_VdW = SIMP( statut='o', typ='TXM', into = [ 'Lennard_Jones', 'Hard_sphere_model']), - Species_Pair = SIMP( statut='o', max=2, typ='TXM'), - VdW_Radius = SIMP( statut='o', typ='R', val_min=0), - b_Lennard = BLOC( condition = "Type_Repulsion_and_VdW == 'Lennard_Jones'", - Depth_Of_The_Potential_Well = SIMP( statut='o', typ='R', val_min=0), - ), # fin b_Lennard - ), # fin Species_Pair_Parameters - ), # bloc_VdW - - b_Param_Soft_Potentiel = BLOC( condition = "Type_Of_Unbonded_Interaction == 'Soft_Potentiel'", - Groot_Warren_Repulsion = SIMP( statut='o', typ='R', defaut=25.0, val_min=0), - Groot_Warren_Cutoff = SIMP( statut='o', typ='R', defaut=1.0, val_min=0), - Drag_Coefficient = SIMP( statut='o', typ='R'), # les 2 valent 0 pour MD - Drag_Force_Cutoff = SIMP( statut='o', typ='R', val_min=0), - ), # b_Param_Soft_Potentiel - - ), # fin UnBonded_Interactions - - # ------------------------------- # - - External_Field_Interaction = FACT( statut='o', max= "**", - Type_Of_Interaction_With_An_External_Field = SIMP( statut='o', typ='TXM', into=['No','gravitational field','electric field','magnetic field', 'Hydrodynamic_Field'], fenetreIhm='menuDeroulant', defaut ='No'), - b_gravite = BLOC( condition = 'Type_Of_Interaction_With_An_External_Field=="gravitational field"', - G = SIMP( statut='o', typ='R', defaut=9.81), - ), - b_elect = BLOC( condition = 'Type_Of_Interaction_With_An_External_Field=="electric field"', - Electric_Field = champ('E', ('E',), 1), - ), - b_magnetic = BLOC( condition = 'Type_Of_Interaction_With_An_External_Field=="magnetic field"', - Magnetic_Field = champ('B', ('B',), 1), - ), - b_hydrodynamic = BLOC( condition = 'Type_Of_Interaction_With_An_External_Field=="hydrodynamic field"', - Hydrodynamic_Field = champ('U', ('U',), 1), - ), - b_External_Field_Interaction = BLOC( condition = 'Type_Of_Interaction_With_An_External_Field != "No"', - Field_Applies_On_All_Species = SIMP( statut='o', typ=bool, defaut=True), - b_porte_espece = BLOC( condition = 'Field_Applies_On_All_Species == False ', - Species_List = SIMP( statut='o', typ='TXM', max= '**'), # faire un typ = "espece" - ), - ), # fin b_External_Field_Interaction - ), # fin Interaction_External_Field - - ), # fin List_Of_Interactions - -############################ -) # fin Particle - -#--------------- -def bloc_CPS(): -#--------------- - return BLOC(condition = 'SystemType == "Classical particle system"', - Particle = Particle('**'), - ) - -#---------------------- -def bloc_FluideMacro(): -#---------------------- - return BLOC(condition = 'SystemType == "Continuum system"', - ComplexFluid = SIMP(typ=bool, statut='o', defaut = False, position='global'), - FlowNature = SIMP(typ='TXM', statut='o', into =['Laminar', 'Turbulent'], position='global'), - bloc_FlowNature_Turbulent = BLOC(condition = ' FlowNature == "Turbulent"', - TurbulenceForFlowDynamics = FactTurbulence('o',position='global'), - ), #------ fin bloc_FlowNature_Turbulent - DynamicalVariables = FACT (statut ='o', - OriginOfDynamicalVariables = SIMP( statut='o', into =['Given', 'Interaction', 'to be simulated'], typ ='TXM', position='global'), - FluidPressure = SIMP(typ=(dynamicVariable,'createObject'), statut='o', defaut ='Fluid_Pressure', homo='constant'), - BlocGiven1= creeBlocPourLesFichiers2('OriginOfDynamicalVariables == "Given"', 'PressureFileName', ('Med', 'cgns' ), 'PressureFieldName'), - bloc_FlowNature_Turbulent = BLOC(condition = ' FlowNature == "Turbulent"', - Average_Velocity = SIMP(typ=(dynamicVariable,'createObject'), statut='o', defaut ='Average_Velocity', homo='constant'), - Average_VelocityValue = SIMP(typ='R', statut='o' ), - ), - bloc_FlowNature_Laminar = BLOC(condition = ' FlowNature == "Laminar"', - Fluid_Velocity = SIMP(typ=(dynamicVariable,'createObject'), statut='o', defaut ='Fluid_Velocity', homo='constant'), - BlocGiven2= creeBlocPourLesFichiers2('OriginOfDynamicalVariables == "Given"', 'VelocityFileName', ('Med', 'cgns' ), 'VelocityFieldName'), - ), -# PN a corriger - #BlocGiven2= creeBlocPourLesFichiers2('OriginOfDynamicalVariables == "Given"', 'PressureFileName', ('Med', 'cgns' ), FieldName=1), - BFlowNatureTurbulent = BLOC(condition ='FlowNature == "Turbulent"', - bloc_Turbulence_TWMChoice1 = BLOC(condition = 'TVMChoice == "K-Epsilon" or TVMChoice == "K-Omega"', - K = FACT(statut ='o', - Name = SIMP(typ=(scalar,'createObject'), statut='o', defaut ='K', homo='constant'), - Initialisation = FACT( statut ='o', - ), - ), - K2 = SIMP(typ=(scalar,'createObject'), statut='o', defaut ='K2', homo='constant'), - ), - ), - ), - -# ---------------------- Effets thermiques - Thermal = FACT (statut ='o', - ThermalEffects = SIMP(typ='TXM', statut='o', into =['Non thermal', - 'Passive on flow dynamics', 'Active on flow dynamics'], defaut='Non thermal', position='global' ), - bloc_NonThermalEffects = BLOC(condition = ' ThermalEffects == "Non thermal"', - ReferenceTemperature = SIMP(typ='R', statut='o', val_min=-273.15 ), - ), # fin bloc_NonThermal - bloc_ThermalEffects_Active = BLOC(condition = ' ThermalEffects == "Active on flow dynamics"', -# PN a faire : un seul EOS possible mais +sieurs FFR - ActiveOnFlowEffect = FACT(statut = 'o', max='**', - RelationType = SIMP(statut = 'o', into =['Equation Of State', 'Force-Flux Relation'], typ ='TXM'), - bloc_EOS = BLOC(condition = 'RelationType == "Equation Of State"', - TypeOfEquationOfState = SIMP( statut='o', into =['variable density', 'compressible'], typ ='TXM'), - ), - bloc_NonEOSAndSimple=BLOC( condition = 'RelationType == "Force-Flux Relation" and ComplexFluid == False', - TypeOfForceFluxRelation = SIMP( statut='o', into =['Viscosity', 'Diffusivity', 'Thermal Conductivity'], intoXML=['Viscosity', 'Diffusivity', 'Thermal Conductivity','Shear-stress closure', 'Scalar flux'], typ ='TXM'), - blocViscosity=BLOC( condition = 'TypeOfForceFluxRelation == "Viscosity"', - AFAIRE=SIMP(typ='TXM', statut = 'o', defaut = 'Initialisation ?') - ), - blocDiffusivity=BLOC( condition = 'TypeOfForceFluxRelation == "Diffusivity"', - AFAIRE=SIMP(typ='TXM', statut ='o', defaut = 'Initialisation ?') - ), - blocConductivity=BLOC( condition = 'TypeOfForceFluxRelation == "Thermal Conductivity"', - AFAIRE=SIMP(typ='TXM', statut ='o', defaut = 'Initialisation ?') - ), - ), - bloc_NonEOSAndComplex=BLOC( condition = 'RelationType == "Force-Flux Relation" and ComplexFluid == True', - TypeOfForceFluxRelation = SIMP( statut='o', into =['Shear-stress closure', 'Scalar flux'], typ ='TXM', intoXML=['Viscosity', 'Diffusivity', 'Thermal Conductivity','Shear-stress closure', 'Scalar flux']), - ), - ), # fin ActiveOnFlowEffect - ), # fin bloc_ThermalEffects_Active - - DensityInitialisation = FACT( statut ='o', - bloc_DensityNonThermal = BLOC(condition = ' ThermalEffects == "Non thermal" or ThermalEffects == "Passive on flow dynamics"', - DensityEquationOfState = SIMP(typ='TXM', statut='o', into =['Constant density'], defaut = 'Constant density'), - InitialDensity = SIMP(typ='R', statut='o',), - ), # fin bloc_DensityNonThermal - bloc_DensityAndThermalActive = BLOC(condition = ' ThermalEffects == "Active on flow dynamics"', - OriginOfThermalEffects = SIMP( statut='o', into =['Given', 'Constant density'], typ ='TXM', defaut ='Constant density'), - BlocGiven =creeBlocPourLesFichiers (' OriginOfThermalEffects == "Given"', 'FileName', ('Med', 'cgns' ), FieldName=1), - BlocConstant = BLOC(condition = 'OriginOfThermalEffects == "Constant density"', - InitialDensity = SIMP(typ='R', statut='o',), - ), - ), - ), # fin DensityInitialisation - - - ),# fin Fact Thermal - - bloc_scalar_FluidTurbulentOrLaminar = BLOC(condition = "(ComplexFluid == False and FlowNature == 'Turbulent') or (ComplexFluid == False and FlowNature == 'Laminar')", - Scalars = FACT(statut = 'o', - bloc_FlowNature_Turbulent_For_Scalars = BLOC(condition = ' FlowNature == "Turbulent"', - asTurbulenceForFlowDynamics = SIMP (statut='o', typ=bool, defaut=True), - BlocAsTFFD = BLOC(condition = "asTurbulenceForFlowDynamics == False", - ScalarsTurbulenceModelling = FactTurbulence('o',), - ), - ), - bloc_ThermalEffects_On = BLOC(condition = ' ThermalEffects == "Active on flow dynamics" or ThermalEffects == "Passive on flow dynamics"', - TemperatureScalar =FACT(statut ='o', - Name = SIMP(typ=(scalar,'createObject'), statut='o', defaut ='Temperature', homo='constant'), - SourceTerm=SIMP(typ=bool, statut='o', defaut=False), - blocSourceTerm = FactTermeSource('SourceTerm==True'), - TemperatureInitialisation = FACT( statut ='o', - OriginOfThermalFluxField = SIMP( statut='o', into =['Given', 'Interaction', 'to be simulated'], typ ='TXM'), - BlocGiven = creeBlocPourLesFichiers('OriginOfThermalFluxField == "Given"', 'FileName', ('Med', 'cgns' ), FieldName=1), - ),# fin TemperatureInitialisation - ),# TemperatureScalar - ), # fin bloc_ThermalEffects_On - bloc_Turbulence_TWMChoice2 = BLOC(condition = 'TVMChoice == "K-Epsilon"', - EpsilonScalar =FACT(statut ='o', - Name = SIMP(typ=(scalar,'createObject'), statut='o', defaut ='Epsilon', homo='constant'), - SourceTerm=SIMP(typ=bool, statut='o', defaut=False), - blocSourceTerm = FactTermeSource('SourceTerm==True'), - Initialisation = FACT( statut ='o', - OriginOfFluxField = SIMP( statut='o', into =['Given', 'Interaction', 'to be simulated'], typ ='TXM', defaut='to be simulated'), - BlocGiven = creeBlocPourLesFichiers('OriginOfThermalFluxField == "Given"', 'FileName', ('Med', 'cgns' ), FieldName=1), - ), - ), - ), - bloc_Turbulence_TWMChoice3 = BLOC(condition = 'TVMChoice == "K-Omega"', - OmegaScalar =FACT(statut ='o', - Name = SIMP(typ=(scalar,'createObject'), statut='o', defaut ='Omega', homo='constant'), - SourceTerm=SIMP(typ=bool, statut='o', defaut=False), - blocSourceTerm = FactTermeSource('SourceTerm==True'), - Initialisation = FACT( statut ='o', - OriginOfFluxField = SIMP( statut='o', into =['Given', 'Interaction', 'to be simulated'], typ ='TXM', defaut='to be simulated'), - BlocGiven = creeBlocPourLesFichiers('OriginOfThermalFluxField == "Given"', 'FileName', ('Med', 'cgns' ), FieldName=1), - ), - ), - ), - Scalar = FACT(statut = 'o', max ='**', - Name = SIMP(typ = (scalar,'createObject'), statut='o',), - bloc_scalar_FluidTurbulentAndNonComplexe = BLOC (condition = "FlowNature == 'Turbulent'", - ScalarFluxModel = FactTurbulence('f'), - ), # bloc_scalar_FluidTurbulentandNonComplexe - SourceTerm=SIMP(typ=bool, statut='o', defaut=False), - blocSourceTerm = FactTermeSource('SourceTerm==True'), - Initialisation = FACT( statut ='o', - OriginOfFluxField = SIMP( statut='o', into =['Given', 'Interaction', 'to be simulated'], typ ='TXM', defaut='to be simulated'), - BlocGiven = creeBlocPourLesFichiers('OriginOfThermalFluxField == "Given"', 'FileName', ('Med', 'cgns' ), FieldName=1), - ),# fin Initialisation - ),# Scalar - ),# AdditionalScalars - ), # fin FluidTurbulentandNonComplexe - # il faut une validation de coherence entre l existence de tous les turbulencesModelling - )# fin bloc_FluideMacro - -#-----------------------------------------------------# -def prepareBoundaryCondition(): - return FACT( statut='o',max = '**', # max = nb de facette de bord - applyOnStateVariable = SIMP (statut ='o', typ=stateVariable ), - b_designe_Mesh = BLOC(condition = "SystemType == 'Continuum system'", - ApplyOnMeshGroups = SIMP (statut ='o', typ=meshGroup, max='**'), - ), - #b_designe_Shape = BLOC(condition = "SystemType == 'Classical particle system'", - # ApplyOnCadGroups = SIMP (statut ='o', typ=spatialRegion, max='**'), - - Type_Of_Boundary_Condition = SIMP( statut='o', typ='TXM', into=['Inlet', 'Outlet', 'Symmetry','Periodicity', 'Wall', 'Free Surface'], ), - b_periodique = BLOC( condition = "Type_Of_Boundary_Condition == 'Periodic'", - Direction = SIMP( statut='o', typ='TXM', into=['X','Y','Z', 'XYZ']), - ), # b_periodique - b_inlet = BLOC( condition = "Type_Of_Boundary_Condition == 'Inlet'", - Formulation_of_Boundary= SIMP( statut='o', typ='TXM', into=['Dirichlet','Neumann','Cauchy']), - b_Formulation_of_Boundary_dirichlet = BLOC( condition = 'Formulation_of_Boundary == "Dirichlet"', - regles=(AU_MOINS_UN('InletProfile','IntegratedValue',), - EXCLUS('InletProfile','IntegratedValue'), ), - Consigne = SIMP(statut ="o", homo="information", typ="TXM", defaut = "Choose between InletProfile or IntegratedValue "), - InletProfile = SIMP (statut ='f', typ='TXM'), - IntegratedValue = SIMP ( statut='f', typ='R'), - #PN : faire une regle - ), - b_Formulation_of_Boundary_Neumann = BLOC( condition = 'Formulation_of_Boundary == "Neumann"', - Flux = SIMP (statut ='o', typ='TXM'), - ), - b_Formulation_of_Boundary_Cauchy = BLOC( condition = 'Formulation_of_Boundary == "Cauchy"', - ImposedFlux = SIMP (statut ='o', typ='TXM'), - IntegratedValue = SIMP ( statut='o', typ='R'), - ), - ), # b_inlet - -# #b_non_periodique = BLOC( condition = "Type_Of_Boundary_Condition != 'Periodic'", -# # Boundary_Face = SIMP( statut='o', typ= spatialRegion), -# #Apply_to_Wich_Quantity = SIMP( statut='o', typ='TXM', into=['Mass FLux', 'Velocity', 'Temperature','Scalars','all',]), -# ), - - # Formulation_of_Boundary= SIMP( statut='o', typ='TXM', into=['Dirichlet','Neumann']), - # b_Formulation_of_Boundary_dirichlet = BLOC( condition = 'Formulation_of_Boundary == "Dirichlet"', - # Value = SIMP ( statut='o', typ='R'), - # ), - ) # Boundary_Conditions - - - - -JdC = JDC_CATA ( - code = 'Vimmp', - # faire un validateur qui verifie que si on active reactions chimiques il faut que les masses molaires soient rentrees -) - -Component = OPER(nom='Component', sd_prod=composant, - SystemType = SIMP(typ='TXM', into=['Quantum system', 'Classical particle system', 'Continuum system'], statut='o',position='global'), - PhysicalDescription = FACT(statut = 'o', - b_FluideMacro = bloc_FluideMacro(), - b_bloc_CPS = bloc_CPS(), - ), - b_ModeleNumerique_quantum = prepareBlocSystemType('Quantum system'), - b_ModeleNumerique_classical = prepareBlocSystemType('Classical particle system'), - b_ModeleNumerique_continuum = prepareBlocSystemType('Continuum system'), - BoundaryConditions = FACT(statut = 'o', - BoundaryCondition = prepareBoundaryCondition(), - ) -) - -Species = PROC(nom='Species', - Specie = FACT( statut='o', max ="**", - Name = SIMP( statut='o', typ=(especeChimique,'createObject') ), - masse_molaire = SIMP( statut='f', typ='R',), - ) -) - -def monBlocInteractionTypeChamp (): - return BLOC (condition = '1 == 1' , # a distinguer selon les cas - fieldNameInOrigine = SIMP(typ='TXM', statut='o'), - fieldNameInDestination = SIMP(typ='TXM', statut='o'), - ) - -def TousSelonLeTypeDeFormatDisponible(condition, labelName='fileName'): - transferType = SIMP(typ='TXM', statut='o', into =['File', 'Memory', 'CorbaObject']) - maListe = list(dictCodeFormat.keys()) - dicoArgs={} - #index=0 - #for Solv1 in maListe[index:]: - # for Solv2 in maListe[index:]: - # #print (Solv1,Solv2, calculCommun(Solv1, Solv2,dictCodeFormat)) - # print ('PNPN attention changement de dictCodeFormat tant que getEficasAttribut n est pas correct') - # conditionSolv = 'transferType == "File" and getEficasAttribut(origine,"Solver")==Solv1 and getEficasAttribut(destination,"Solver")==Solv2' , - # conditionSolv = 'transferType == "File"' - # monBlocFichier=creeBlocPourLesFichiers (conditionSolv, 'FileName', calculCommun(Solv1, Solv2,dictCodeFormat)) - # dicoArgs['monBlocFichier'+str(index)]=monBlocFichier - # index=index+1 - mesFormats=set() - for solv1 in dictCodeFormat.keys() : - for f in dictCodeFormat[solv1] : mesFormats.add(f) - conditionSolv='transferType == "File"' - BlocFichier=creeBlocPourLesFichiers (conditionSolv, labelName, mesFormats) - dicoArgs['BlocFichier']=BlocFichier - monBlocChamp = BLOC(condition = "transferType=='File'", FieldName=SIMP(typ='TXM', statut='o')) - dicoArgs['monBlocChamp']=monBlocChamp - return BLOC(condition = condition,transferType=transferType, **dicoArgs) - -def SelonLeTypeDeFormatDisponibleMapper(condition): - transferType = SIMP(typ='TXM', statut='o', into =['File', 'Memory', 'CorbaObject']) - maListe = list(dictCodeFormat.keys()) - dicoArgs={} - index=0 - for Solv1 in maListe[index:]: - for Solv2 in maListe[index:]: - #print (Solv1,Solv2, calculCommun(Solv1, Solv2,dictCodeFormat)) - print ('PNPN attention changement de dictCodeFormat tant que getEficasAttribut n est pas correct') - conditionSolv = 'transferType == "File" and getEficasAttribut(origine,"Solver")==Solv1 and getEficasAttribut(destination,"Solver")==Solv2' , - conditionSolv = 'transferType == "File"' - monBlocFichier=creeBlocPourLesFichiers (conditionSolv, 'FileName', calculCommun(Solv1, Solv2,dictCodeFormat)) - dicoArgs['monBlocFichier'+str(index)]=monBlocFichier - index=index+1 - monBlocChamp = BLOC(condition = "transferType=='File'", FieldName=SIMP(typ='TXM', statut='o')) - dicoArgs['monBlocChamp']=monBlocChamp - return BLOC(condition = condition,transferType=transferType, **dicoArgs) - -Mapper = OPER (nom= 'Mapper',sd_prod=mapper, - Solver=SIMP(statut='o', typ='TXM', into = list(dictMapperFormat.keys())), - ) -Converter = OPER (nom= 'Converter',sd_prod=converter) - -Interactions = PROC(nom='Interactions', - Interaction = FACT( max = '**', - origine = SIMP(typ=modeleNumDuCompo, statut='o'), - destination = SIMP(typ=modeleNumDuCompo, statut='o'), - monBloc_FFFF = BLOC ( - condition = 'getEficasAttribut(origine,"ModelType") == "Fields" and getEficasAttribut(destination,"ModelType") == "Fields"' , - termeLE = SIMP(typ='TXM', statut='o', into = dictTermeLE['Fields','Fields'],fenetreIhm='menuDeroulant'), - ), - monBloc_DPDP = BLOC ( - condition = 'getEficasAttribut(origine,"ModelType") == "Particles" and getEficasAttribut(destination,"ModelType") == "Particles"' , - termeLE = SIMP(typ='TXM', statut='o', into = dictTermeLE['Particles','Particles'],fenetreIhm='menuDeroulant'), - ), - monBloc_FFDP = BLOC ( - condition = 'getEficasAttribut(origine,"ModelType") == "Fields" and getEficasAttribut(destination,"ModelType") == "Particles"' , - termeLE = SIMP(typ='TXM', statut='o', into = dictTermeLE['Fields','Particles'],fenetreIhm='menuDeroulant'), - ), - monBloc_DPFF = BLOC ( - condition = 'getEficasAttribut(origine,"ModelType") == "Particles" and getEficasAttribut(destination,"ModelType") == "Fields"' , - termeLE = SIMP(typ='TXM', statut='o', into = dictTermeLE['Particles','Fields'],fenetreIhm='menuDeroulant'), - ), - couplingPart = FACT( statut='o', - couplingMode = SIMP(typ='TXM', statut='o', into =['direct', 'scaling', 'conversion']), - monBlocDirect = TousSelonLeTypeDeFormatDisponible( "couplingMode=='direct'" ), - monBlocIn = BLOC ( condition = "couplingMode=='scaling' or couplingMode=='conversion'", - OutFromComponent = FACT( statut='o', - monBlocFormat = TousSelonLeTypeDeFormatDisponible( "1", labelName = 'outFromMapperFileName' ), - ), - ), - monBlocMapper = BLOC ( condition = "couplingMode=='scaling' or couplingMode=='conversion'", - ConversionNode = FACT( min=1, max='**', statut ='o', - tool = SIMP(typ=mapper, statut ='o'), - OutFromMapper = FACT (statut ='o', - monBlocFormat = TousSelonLeTypeDeFormatDisponible( "1", labelName = 'outFromMapperFileName' ), - ), - ), - ), - ), - monBlocUseConverter = BLOC ( condition = "couplingMode=='use converter'", - myConverter = SIMP(typ=converter, statut ='o') - ), - ), -) - -dict_condition={ -'ModelType' : ('Interactions', 'Component'), -#'NumericalMethod' : ('Interactions', 'Component'), -# 'TypeOfSolid' : ('Component',) -} - -Temporal_Aspects = PROC( nom ="Temporal_Aspects", - Simulated_Time_Laps = FACT (statut='o', max='**', - name = SIMP(statut='o', typ=(simulatedTime,'createObject'),), - initialTime = SIMP( statut='o', typ='R'), - finalTime = SIMP( statut='o', typ='R'), - timeDiscretization = SIMP( statut ='o', typ = 'TXM', into = ['Constant Time Step', 'Varying Time Step']), - bloc_Constant = BLOC (condition = 'timeDiscretization == "Constant Time Step"', - constantTimeStep = SIMP (statut ='o', typ = 'R'), - ), - bloc_Varying = BLOC (condition = 'timeDiscretization == "Varying Time Step"', - CFLNumberCriteria = SIMP (statut ='o', typ = 'R'), - FourierNumberCriteria = SIMP (statut ='o', typ = 'R'), - ), - ), -) -# -Spatial_Aspects = PROC( nom='Spatial_Aspects', - System_Geometry = FACT ( statut='o', max='**', - System_Geometry_name = SIMP( statut='o', typ=(systemGeometry, 'createObject'),), - Shape = FACT (statut ='f', max='**', - Shape_Nature = SIMP( statut='o', typ='TXM', into=['Typical Geometry', 'CAD']), - b_Shape = BLOC( condition = 'Shape_Nature == "Typical Geometry"', - Box = SIMP( statut='o', typ='TXM', into=['Cube', 'Sphere','Cylinder'] ), - b_Cube = BLOC( condition = 'Box == "Cube"', - #Taille_Box_Englobante = SIMP( statut='o', typ='R', max=3, min =3) - # derait etre un Tuple(3) mais a faire apres la projection - #Size_Of_Bounding_Box = SIMP( statut='o', typ=Tuple(3), validators=VerifTypeTuple(('R','R','R'),),) - Size_Of_Bounding_Box = SIMP( statut='o', typ='R', max=3, min=3, ), - ), # fin b_Cube - b_Boule = BLOC( condition = 'Box == "Sphere"', - Center = SIMP( statut='o', typ='R', max=3, min =3), - ),# fin b_Boule - b_Cylinder = BLOC( condition = 'Box == "Cylinder"', - Heigth = SIMP( statut="o", typ='R', val_min=0.0, ang='Nanotube length [m]'), - ),# fin b_Tube - b_Boule_ou_Cylinder = BLOC( condition = 'Box == "Sphere" or Box == "Cylinder"', - Radius = SIMP( statut='o', typ='R', val_min=0.0, ang='radius length [m]') , - ),# fin b_Boule_ouCylinder - ), # fin b_Shape - b_CAO = creeBlocPourLesFichiers( "Shape_Nature == 'CAD'",'Domain_File', ['txt','I-deas', 'Gmsh', 'top',]), - ShapeIdentifier=SIMP( statut='o', typ=(cadShape,'createObject'),max='**',), - ), # fin Shape - ),# System_Geometry - Spatial_Discretization = FACT ( statut='f', max="**", - Mesh_Name = SIMP( statut='o', typ=(meshIdentifier,'createObject')), - b_Mesh = creeBlocPourLesFichiers( "1 == 1",'Domain_File', ['med', 'Gmsh',]), - GroupIdentifier = SIMP( statut='o', typ=(meshGroup,'createObject'),max='**',), - ), - Boundary_Constraints = FACT (statut = 'f', - Motion = FACT ( statut='f', - Motion_Nature = SIMP(statut='o', typ='TXM', into=['Fixed boudary', 'Translational motion', 'Rotational motion', 'Scaling']), - b_Translational_motion=BLOC(condition = 'Motion_Nature == "Translational motion"', - Translation_Velocity=SIMP( statut='o', typ='R'), - boundaries=SIMP( statut='o', typ=spatialRegion,max='**' ), - ), - b_Rotational_motion=BLOC(condition = 'Motion_Nature == "Rotational motion"', - Rotation_Rate=SIMP( statut='o', typ='R'), - boundaries=SIMP( statut='o', typ=spatialRegion,max='**' ), - ), - b_fixed=BLOC(condition = 'Motion_Nature == "Fixed boudary"', - boundaries=SIMP( statut='o', typ=spatialRegion,max='**', homo='SansOrdreNiDoublon'), - #boundaries=SIMP( statut='o', typ=spatialRegion,max='**' ), - ), - ), -#PN decrire page 28 - Mapping = FACT ( statut='f', - ), - ), # Boundary_Constraints -) # fin Geometric_Domain - -TEXTE_NEW_JDC = "\ -Velocity=scalar()\ -" diff --git a/Vimmp/OLD/cata_CSAndCPS_v9.py b/Vimmp/OLD/cata_CSAndCPS_v9.py deleted file mode 100644 index d33fad0c..00000000 --- a/Vimmp/OLD/cata_CSAndCPS_v9.py +++ /dev/null @@ -1,929 +0,0 @@ -from Accas import * - -class composant(ASSD):pass -class mapper(ASSD):pass -class converter(mapper):pass -class modeleNumDuCompo(UserASSD):pass -class especeChimique(UserASSD):pass -class userParticle(UserASSD) :pass -class userAtom(userParticle) :pass -class userMolecule(userParticle) :pass -class userDiscrete(userParticle) :pass -class userDPD(userParticle) :pass - -class spatialRegion(UserASSD):pass -class cadShape(spatialRegion):pass -#class meshGroup(spatialRegion,UserASSDMultiple):pass -class meshGroup(spatialRegion):pass -class meshIdentifier(spatialRegion):pass -class systemGeometry(UserASSD):pass -class simulatedTime(UserASSD):pass -class constitutiveRelation(UserASSD):pass - -class stateVariable(UserASSD) : pass -class scalar(stateVariable):pass -class dynamicVariable(stateVariable):pass - - -# PN a faire --> ajouter un MC modeleNumerique ( apres avoir renomme le modeleNumerique actuel en classe de modele numerique) -# et le dictionnaire d apres -dictTypModNumModNum = { - ('Continuum system','Particles') : ('SPH','Lagrangian one-fluid-particle pdf'), - ('Continuum system','Fields') : ('FV','FEM', 'Spectral method'), - ('Classical particle system','Particles') : ('MD', 'DPD', 'SDPD','SPH','CFD_Discrete_Particles'), - ('Classical particle system','Fields') : ('LBM',), - ('Quantum system','Particles') : ('Particle method',), - ('Quantum system','Fields') : ('Wave',), -} - -dictCodeModeleNumerique = { - 'Code_Saturne' : ('Lagrangian one-fluid-particle pdf', 'FV', 'CFD_Discrete_Particles',), - 'Fluent' : ('FV',), - 'Culgi Package': (), - 'DEM_SD' : ('Lagrangian one-fluid-particle pdf', 'FV', 'CFD_Discrete_Particles',), - 'DFTB+' : ('density functional tight binding method',), - 'DL_MESO_DPD' : ('Lagrangian one-fluid-particle pdf', 'FV', 'CFD_Discrete_Particles',), - 'DL_MESO_LBE' : ('Lagrangian one-fluid-particle pdf', 'FV', 'CFD_Discrete_Particles',), - 'DL_POLY_4' : ('Lagrangian one-fluid-particle pdf', 'FV', 'CFD_Discrete_Particles',), - 'GROMACS' : ('Lagrangian one-fluid-particle pdf', 'FV', 'CFD_Discrete_Particles',), - 'GROMACS_LS' : ('Lagrangian one-fluid-particle pdf', 'FV', 'CFD_Discrete_Particles',), - 'LAMMPS' : ('Lagrangian one-fluid-particle pdf', 'FV', 'CFD_Discrete_Particles',), - 'NWChem' : ('Lagrangian one-fluid-particle pdf', 'FV', 'CFD_Discrete_Particles',), - 'OpenFOAM' : ('Lagrangian one-fluid-particle pdf', 'FV', 'CFD_Discrete_Particles',), - 'Quantum EXPRESSO' : ('Particle method', 'Wave',), - 'RHEO_AGGRATE' : ('Particle method', 'Wave',), - 'RHEO_DROP' : ('Particle method', 'Wave',), - 'STAR_CCM+' : ('FV', 'Particles',), - 'Code Nill' : ('Spectral method', ), -} -# Le Code Nill est ajouté en dur au Solver - -dictCodeFormat = { - 'Code_Saturne' : ('Med', 'cgns', 'msh', 'des', 'unv', ), - 'Culgi Package': ('cof',), - 'DEM_SD' : ('geo', 'ascii'), - 'DFTB+' : ('geo', 'ascii'), - 'Fluent' : ('FluentFormat', ), - 'OpenFOAM' : ('OpenFoamFormat', 'Med', ), -} - -dictMapperFormat = { - 'Med Coupling' : ('Med',), - 'Gmsh' : ('Med', 'OpenFoamFormat'), -} - -dictTermeLE = { - ('Fields','Particles') : ('Fluid_Velocity_Field', - 'Fluid_Temperature_Field', - 'Fluid_Species_Mass_Fraction_Fluid',), - ('Particles','Fields') : ('Fluid_Particle_Momentum_Exchange_Field', - 'Fluid_Particle_Thermal_Exchange_Field', - 'Lagrangian one-particle pdfFluid_Particle_Mass_Source_Field', - 'Particle_Volumetric_Concentration_Modified_Fluid_Viscosity', - 'Particle_Extra_Stress_Tensor'), - ('Particles','Particles') : ('Pas encore fait'), - ('Fields','Fields') : ('Pas encore fait'), -} - -dictCodeConvertisseur = { - ('Saturne', 'OpenFOAM') : ('gmsh', 'Saturne2CDM and CDM2OpenFoam'), - ('Saturne', 'Fluent') : ( 'Saturne2CDM and CDM2Fluent'), - ('Fluent', 'OpenFOAM') : ('Fluent2CDM and CDM2OpenFoam'), -} - -listeFormatGenerique =['Med', 'Cgns', 'Gmsh', ] - -#---------------------------------------- -def prepareBlocSystemType(systemType) : -#---------------------------------------- - condition = "SystemType == '" + systemType + "'" - Identifier = SIMP(statut='o', typ=(modeleNumDuCompo,'createObject'),) - SimulatedTimeLapse = SIMP(statut ='o', typ = simulatedTime) - ModelType = SIMP(statut='o', typ='TXM', into = ('Particles', 'Fields'), position='inGetAttribut') - dicoArgs={} - - for typeMod in ('Particles', 'Fields'): - conditionType = "ModelType == '" + typeMod + "'" - NumericalMethod = SIMP(statut='o',typ='TXM', into=dictTypModNumModNum[systemType, typeMod], - position='global', intoXML=allValueInDict(dictTypModNumModNum)) - dicoBloc = {} - for modeleNumerique in list(dictTypModNumModNum[systemType,typeMod]): - conditionNum = "NumericalMethod == '" + modeleNumerique + "'" - setCode = set() - for code in dictCodeModeleNumerique.keys(): - if modeleNumerique in dictCodeModeleNumerique[code]: setCode.add(code) - Solver = SIMP(statut='o', typ='TXM', into=list(setCode), intoXML=list(dictCodeModeleNumerique.keys()) ) - monNomBloc='b_ModelName_' + modeleNumerique.replace(' ','_') - if setCode ==set(): setCode.add('Code Nill') - if setCode !=set(): dicoBloc[monNomBloc]=BLOC(condition=conditionNum, nomXML='b_ModelName',Solver=Solver) - dicoArgs['b_modelType'+typeMod] = BLOC(condition=conditionType, NumericalMethod=NumericalMethod,**dicoBloc) - - blocMeshRef = BLOC(condition = '(ModelType == "Fields") and (NumericalMethod == "FV")', - Mesh_Identifiers = SIMP (statut ='o', max ='**', typ = meshIdentifier),) - dicoArgs['blocMeshRef'] = blocMeshRef - NumericalModel = FACT(statut='o', max= '**', Identifier=Identifier, ModelType=ModelType, - SimulatedTimeLapse=SimulatedTimeLapse, **dicoArgs) - return BLOC(condition=condition, nomXML='b_systemType', NumericalModel=NumericalModel) - -#----------------------------------- -def calculCommun(key1, key2, dico): -#----------------------------------- -# retourne la liste des valeurs communes a dico[key1] et dico[key2] - monSet=set() - if not key1 in dico: return () - if not key2 in dico: return () - for val in dico[key1]: - if val in dico[key2]: - monSet.add(val) - if monSet == set() : monSet.add ('No common format') - return list(monSet) - -#------------------------- -def allValueInDict(dico): -#------------------------- -# retourne la liste de toutes les valeurs possibles dans dico - monSet=set() - for clef in dico : - for val in dico[clef] : monSet.add(val) - return monSet - -#------------------------------------------------------------------------------------ -def creeBlocPourLesFichiers(laCondition, NomDuFichier, ListeFormats, FieldName=False): -#------------------------------------------------------------------------------------- - SIMPFormatFichier = SIMP(statut='o', typ = 'TXM', into = tuple(ListeFormats) + ('others',), ) - dicoDesBlocs = {} - for formatFich in ListeFormats : - nomBloc = 'b_format_fichier' + str(formatFich) - typeDesFichiers = ('Fichier', formatFich + " Files (*." + formatFich + ");;All Files (*)",) - blocCondition ="FileFormat == '" + formatFich + "'" - dicoDesBlocs[nomBloc] = BLOC( condition = blocCondition, FileName = SIMP(statut='o', typ = typeDesFichiers ),) - dicoDesBlocs['b_format_fichier_others'] = BLOC(condition="FileFormat == 'others'", FileName = SIMP(statut='o', typ = ('Fichier','All Files (*)'),),) - if FieldName: - SIMPFieldName = SIMP(statut='o', typ = 'TXM',) - return BLOC(condition=laCondition, FileFormat = SIMPFormatFichier, **dicoDesBlocs, FieldName=SIMPFieldName) - else : - return BLOC(condition=laCondition, FileFormat = SIMPFormatFichier, **dicoDesBlocs) - -#-------------------------------------------------------------------------------------------------- -def creeBlocPourLesFichiers2(laCondition, NomDuFichier='FileName', ListeFormats=[], FieldName=None): -#--------------------------------------------------------------------------------------------------- -# il faut reflechir pour parametrer NomDuFichier -# et le type (existing... du fichier) -# et utiliser le creeBlocPourLesFichiers2 - SIMPFormatFichier = SIMP(statut='o', typ = 'TXM', into = tuple(ListeFormats) + ('others',), defaut='others' ) - dicoDesBlocs = {} - formatName=NomDuFichier+'Format' - dicoDesBlocs [ formatName] = SIMPFormatFichier - ListeFormatsboucle = tuple(ListeFormats) + ('others',) - for formatFich in ListeFormatsboucle : - dicoArgs={} - nomBloc = 'b_format_fichier' + str(formatFich) - typeDesFichiers = ('Fichier', formatFich + " Files (*." + formatFich + ");;All Files (*)",) - blocCondition = formatName + " == '" + formatFich + "'" - dicoArgs[NomDuFichier] = SIMP(statut='o', typ = typeDesFichiers ) - dicoDesBlocs[nomBloc] = BLOC( condition = blocCondition, **dicoArgs) - print (nomBloc, dicoDesBlocs[nomBloc]) - #dicoDesBlocs['b_format_fichier_others'] = BLOC(condition="FileFormat == 'others'", **dicoArgs) - if FieldName: - SIMPFieldName = SIMP(statut='o', typ = 'TXM',) - dicoDesBlocs[FieldName] = SIMPFieldName - return BLOC(condition=laCondition, **dicoDesBlocs) - -#--------------------------------------------- -def champ(nomDelaContante, labels ,nbReels ) : -#--------------------------------------------- -# ajouter les extensions pour le fichier et les blocs associes -# certains champs ne seront jamais uniformes -# probablement a refaire -#PNPN : Passer le nom du champ pour le label du vecteur -# A revoir - - dicoBloc = {} - dicoBloc[nomDelaContante] = SIMP( statut='o', typ='R') - return FACT( statut='o', - Input_Mode = SIMP( statut='o', typ='TXM', into=('uniform value','values directly assigned','values read in file','analytical function',)), - b_uniforme = BLOC( condition = "Input_Mode == 'uniform value'", **dicoBloc), - b_vsaisies = BLOC( condition = "Input_Mode == 'values directly assigned'", - Field = SIMP( typ='R', statut='o', max ='**'), - #Vecteur = SIMP( fenetreIhm='Tableau', homo = labels, - # statut='o', min=2, max='**', - # typ=Tuple(nbReels), - # validators=VerifTypeTuple(("'R',"*nbReels),),) # end particle - ), #b_vsaisie - b_vdsfich = BLOC( condition = "Input_Mode == 'values read in file'", - Format = SIMP( statut='o', typ='TXM', into=['txt','Med',], position='global' ), - td_txt = BLOC(condition = 'Format == "txt"', - File = SIMP( statut='o', typ=('Fichier','Text Files(*.txt);All Files (*)'),), - ), # fin vtd_txt - td_med_1 = BLOC( condition = 'Format == "Med"', - File = SIMP( statut='o', typ=('Fichier','Med Files(*.med);All Files (*)'),), - ), - td_med_2 = BLOC( condition = 'Format == "Med"', - FieldName = SIMP( statut='o', typ='TXM',), - ), - ), - b_vfct = BLOC( condition = "Input_Mode == 'analytical function'", - Function = SIMP( statut='o', typ='TXM',), - ), - #b_vserc = BLOC( condition = "Input_Mode == 'call to a service'", - # Service = SIMP( statut='o', typ='TXM',), - #), - ) - - -#------------------------------ -def FactTermeSource(condition): -#------------------------------ - return BLOC (condition=condition, - OriginOfSourceTerm = SIMP( statut='o', typ='TXM',into=['Interaction', 'Chemical Reaction', 'Other Scalar']), - ) - -#------------------------------------------------------ -def FactTurbulence(statut, ajout=None , position=None): -#------------------------------------------------------ - listInto = ['Fully resolved (DNS)', 'Spatial filtering (LES)', 'One-point moment', 'One-point PDF'] - if ajout != None : listInto.append(ajout) - return FACT(statut=statut, - TurbulenceModellingType = SIMP(typ='TXM', statut='o', into =listInto, position=position ), - bloc_one_point = BLOC(condition= "TurbulenceModellingType == 'One-point moment'", - RANSModel = SIMP(statut="o", typ="TXM", - into=['Turbulent-Viscosity Model (TVM)', 'Reynolds Stress Model (RSM)']), - bloc_TVM = BLOC(condition= "RANSModel == 'Turbulent-Viscosity Model (TVM)'", - TVMChoice = SIMP(typ='TXM', statut='o', into=['K-Epsilon', 'K-Omega'] , position=position), - ), # fin bloc_TVM - bloc_RSM = BLOC(condition = "RANSModel == 'Reynolds Stress Model (RSM)'", - RSMChoice = SIMP(typ='TXM', statut='o', into=['Rotta', 'LRR-IP','LRR-QI','SSG']), - ), # fin bloc_RSM - ), # fin bloc_one_point - - bloc_one_spatial = BLOC(condition = "TurbulenceModellingType == 'Spatial filtering (LES)'", - ChoiceOfApproach = SIMP(typ='TXM', statut='o', into=['Field-based (LES)', 'Filtered Density Function (FDF)']), - SubgridScaleModel = SIMP(typ='TXM', statut='o', into=['No SGS', 'Smagorinsky','Dynamical model', 'SGS Transport Equations']), - ), # fin bloc_one_spatial - bloc_one_point_pdf = BLOC(condition = "TurbulenceModellingType == 'One-point PDF'", - ChoiceOfApproach = SIMP(typ='TXM', statut='o', into=['One-point Eulerian PDF', 'One-particle Lagrangian PDF']), - bloc_lagrangian_pdf = BLOC(condition = "ChoiceOfApproach == 'One-particle Lagrangian PDF'", - StochasticModel = SIMP(typ='TXM', statut='o', into=['Langevin','Other'], defaut='Langevin'), - )# fin lagrangian - ), # fin bloc_one_point_pdf - bloc_no_model = BLOC(condition = "TurbulenceModellingType == 'Fully resolved (DNS)'", - ChoiceOfApproach = SIMP(statut='o', typ='TXM', into=['Field-based (DNS)', 'N-Particle Method']), - bloc_Field = BLOC(condition = "ChoiceOfApproach == 'Field-based (DNS)'", - NumericalMethod = SIMP(statut='o', typ='TXM', into=['FV', 'Spectral Method'], - intoXML=['FV', 'Spectral Method','SPH', 'Vortex Method']), - ),# fin bloc_Field - bloc_N_particle = BLOC(condition = "ChoiceOfApproach == 'N-Particle Method'", - NumericalMethod = SIMP(statut='o', typ='TXM', into=['SPH', 'Vortex Method'], - intoXML=['FV', 'Spectral Method','SPH', 'Vortex Method']), - ),# fin bloc_N_particle - ), # fin bloc_no_model - ) # fin du return de la fonction factTurbulence - -#-------------------------- -def Particle(cardinalite) : -#-------------------------- - return FACT (statut='o', max=cardinalite, - ParticleNature = SIMP( statut='o', typ='TXM', into=['Atoms', 'Molecules', 'Dissipative', 'Fluid Particle', 'Discrete Particle']), - b_Atom = BLOC( condition='ParticleNature == "Atoms"', - AtomsName = SIMP( statut='o', typ=(userAtom,'createObject'),), - Atom = FACT (statut ='o', max= '**', - ChemicalSpecie = SIMP( statut='o', typ='TXM'), - Number = SIMP (statut ='o', typ = 'I'), - ElectricCharge = SIMP( statut='o', typ='R'), - MagneticMoment = SIMP( statut='o', typ='R'), - Size = SIMP(statut='f', typ='R'), # relevant ? - ),# Atom - ), # fin b_Atom - b_Molecule = BLOC( condition='ParticleNature == "Molecules"', - MoleculeName = SIMP( statut='o', typ=(userMolecule,'createObject'),), - ChemicalSpecie = FACT ( max='**', statut='o', - ChemicalSpecieName = SIMP( statut='o', typ=userAtom), - Proportion = SIMP( statut='o', typ='R', val_max =1), - ), - ElectricCharge = SIMP( statut='o', typ='R'), - MagneticMoment = SIMP( statut='o', typ='R'), - Shape = SIMP( statut='f', typ='TXM', into=['Linear', 'Trigonal Planar', 'Angular', 'Tetrahedral', 'Octahedral', 'Trigonal pyramid', 'Other']), - ), #fin b_Molecule - b_Dissipative = BLOC( condition='ParticleNature == "Dissipative"', - DPDName = SIMP( statut='o', typ=(userDPD,'createObject'),), - BondedParticles = SIMP(statut="o", typ=bool, defaut=False), - ), # b_Dissipative - b_Discrete = BLOC( condition='ParticleNature == "Discrete Particle"', - DiscreteParticleName = SIMP(statut='o', typ=(userDiscrete,'createObject'),), - TypeOfDiscreteParticle = SIMP( statut='o', typ='TXM', into=['Solid', 'Droplets', 'Bubbles','Bio Organism'],), - b_TypeDP_Solid = BLOC( condition ='TypeOfDiscreteParticle == "Solid"', - TypeOfSolid = SIMP( statut='o', typ='TXM', into=['Primary Particle', 'Assemblage / Aggregate'], position = 'global'), - b_SolidPrimary = BLOC( condition='TypeOfSolid == "Primary Particle"', - ), - b_SolidAggregate = BLOC( condition='TypeOfSolid == "Assemblage / Aggregate"', - ), - ), - b_TypeBio_Solid = BLOC( condition='TypeOfDiscreteParticle == "Bio Organism"', - TypeOfOrganism = SIMP( statut='o', typ='TXM', into=['Unicellular', 'Multicellular']), - b_Unicellular = BLOC( condition ='TypeOfOrganism=="Unicellular"', - Unicellular = SIMP( statut='o', typ='TXM', into=["Bactaria"], defaut='Bactaria') - ), - b_Multicellular = BLOC( condition ='TypeOfOrganism=="Multicellular"', - Multicellular = SIMP( statut='o', typ='TXM', into=["Animal","Fongus","Plant"]) - ), - ), # b_TypeBio_Solid - Properties = FACT ( statut ='o', - Geometry = SIMP( statut='o', typ='TXM', into=['Sphere', 'Ellopsoids', 'Other Shape']), - b_geom_Sphere = BLOC( condition = 'Geometry == "Sphere"', - ParticleRadius = SIMP( statut='o', typ ='R', val_min = 0), - ), - Weight = FACT (statut = 'o', - Mass = SIMP( statut='o', typ ='R', val_min = 0), - Density = SIMP( statut='o', typ ='R', val_min = 0), - ), - Mechanical = SIMP( statut='o', typ='TXM', into=['Rigid', 'Flexible', 'Deformable']), - b_SolidAggregate = BLOC( condition='TypeOfSolid == "Assemblage / Aggregate"', - Morphological = FACT (statut = 'o', - Consigne = SIMP(statut="o", homo="information", typ="TXM", defaut='Choose optional properties'), - FractalDimension = SIMP( statut='f', typ='R'), - NumberOfPrimaryParticle = SIMP (statut ='f',typ='I'), - EquivalentSize = SIMP( statut='f', typ='R'), - Porosoty = SIMP( statut='f', typ='R'), - ), # Morphological - ), # b_SolidAggregate - ElectroMagnetic = FACT (statut = 'f', - ElectricCharge = SIMP( statut='o', typ='R'), - MagneticMoment = SIMP( statut='o', typ='R'), - ), - b_SolidAggregateBonded = BLOC( condition='TypeOfSolid == "Assemblage / Aggregate"', - BondedParticles = FACT( - ListOfBondedParticles = SIMP(statut='o', max='**', typ = userParticle), - ), - ), - ), # Properties - ), # b_Discrete -############################ - - List_Of_Bonded_Particles = FACT( statut='f', - # -------------------------------------------# - Bonded_Particles = FACT( statut='o', max = "**", - Name_Of_Bonded_Particles = SIMP( statut='o', typ='TXM'), - Species_in_Particle = SIMP( statut='o', min=2, typ='TXM' , max = "**"), - ), # Bonded_Particles - ), # List_Of_Bonded_Particles - - List_Of_Interactions = FACT( statut='o', max = "**", - # --------------------------------------------------# - - Bonded_Interactions = FACT( statut='o', max = "**", - - #Type_Of_Bonded_Interaction = SIMP( statut='o', typ='TXM', into=['No', 'Covalent Bond Length', 'FENE', 'Covalent Bond Angle', 'Dihedral Angles', 'Improper Dihedral', 'Frozen Motion' ], defaut='No', position='global'), - Type_Of_Bonded_Interaction = SIMP( statut='o', typ='TXM', into=['No', 'Covalent Bond Length', 'FENE', 'Covalent Bond Angle', 'Dihedral Angles', 'Improper Dihedral', 'Frozen Motion' ], defaut='No'), - - #La saisie de l'ensemble des liaisons d'un meme type peut se faire ds le meme bloc (soit ds un fichier, soit manuelle) - #Une seule valeur de distante? est a saisir pour l'ensemble - # bloc_covalent_1 = BLOC( condition = 'Type_Of_Bonded_Interaction in ("Covalent Bond Length","FENE")', - # ), # fin bloc_covalent_1 - bloc_covalent_length = BLOC( condition = 'Type_Of_Bonded_Interaction == "Covalent Bond Length"', - Interaction_Length_Parameters = FACT( statut='o', max="**", - Apply_To_Bonded_Particles = SIMP( statut='o', max='**', typ='TXM'), - Spring_Stifness = SIMP( statut='o', typ='R', val_min=0), - Mean_Bond_Length = SIMP( statut='o', typ='R', val_min=0), - ), # fin Interation_Length_Parameters - ), # fin Bond_Length_Parameters - bloc_covalent_angle = BLOC( condition = 'Type_Of_Bonded_Interaction == "Covalent Bond Angle"', - Interaction_Angles_Parameters = FACT( statut='o', max="**", - Apply_To_Bonded_Particles = SIMP( statut='o', max='**', typ='TXM'), - Spring_Stifness = SIMP( statut='o', typ='R', val_min=0), - Mean_Bond_Angle = SIMP( statut='o', typ='R', val_min=0), - ), # fin Interation_Angles_Parameters - ), # fin bloc_covalent_length_and_angle - - #bloc_covalent_length_and_angle = BLOC( condition = 'Type_Of_Bonded_Interaction == "Covalent Bond Length" or Type_Of_Bonded_Interaction == "Covalent Bond Angle"', - # Bond_Parameters = FACT( statut='o', max="**", - # Apply_To_Bonded_Particles = SIMP( statut='o', max='**', typ='TXM'), - # Spring_Stifness = SIMP( statut='o', typ='R', val_min=0), - # bloc_covalent_length = BLOC( condition = 'Type_Of_Bonded_Interaction == "Covalent Bond Length"', - # Mean_Bond_Length = SIMP( statut='o', typ='R', val_min=0), - # ), # fin Bond_Length_Parameters - # bloc_covalent_angle = BLOC( condition = 'Type_Of_Bonded_Interaction == "Covalent Bond Angle"', - # Mean_Bond_Angle = SIMP( statut='o', typ='R', val_min=0), - # ), # fin Bond_Length_Parameters - # ), # fin Bond_Length_Parameters - #), # fin bloc_covalent_length_and_angle - - bloc_FENE = BLOC( condition = 'Type_Of_Bonded_Interaction == "FENE"', - Applies_To_All_Particles = SIMP( statut='o', typ=bool, defaut=True), - bloc_not_on_all = BLOC( condition = 'Applies_To_All_Particles == False', - FENE_Parameters = FACT( statut='o', max="**", - Species_Pair = SIMP( statut='o', max=2, typ='TXM'), - Spring_Constant_H = SIMP( statut='o', typ='R', val_min=0), - LMax = SIMP( statut='o', typ='R', val_min=0), - ), # fin FENE_Parameters - ), # fin bloc_not_on_all - bloc_on_all = BLOC( condition = 'Applies_To_All_Particles == True', - Spring_Constant_H = SIMP( statut='o', typ='R', val_min=0), - LMax = SIMP( statut='o', typ='R', val_min=0), - ), # fin bloc_on_all - ), # fin bloc_FENE - - bloc_le_reste = BLOC( condition = 'Type_Of_Bonded_Interaction in ("Dihedral Angles", "Improper Dihedral", "Frozen Motion")', - Particle_Name = SIMP( statut="f", typ='TXM'), - #Consigne = SIMP( statut="o", homo="information", typ="TXM", defaut='Not Implemented Yet'), - - ), - ), # fin Bonded_Interaction - - # ------------------------------- # - - Unbonded_Interactions = FACT( statut='o', max= "**", - - Type_Of_Unbonded_Interaction = SIMP( statut='o', typ='TXM', into=['No', 'electro_magnetic', 'Repulsion_and_VdW', 'Soft_Potentiel', ], defaut='No', position='global',fenetreIhm='menuDeroulant'), - - bloc_elec = BLOC( condition = 'Type_Of_Unbonded_Interaction == "electro_magnetic"', - Permittivity = SIMP( statut='o', typ='R', position='global_jdc'), - Magnetic = SIMP( statut='o', typ=bool, defaut=False,), - bloc_magnetic = BLOC( condition = 'Magnetic == True', - Permability = SIMP( statut='o', typ='R'), - ), # bloc_magnetic - ),# fin bloc_elec - - bloc_VdW = BLOC( condition = 'Type_Of_Unbonded_Interaction == "Repulsion_and_VdW"', - Species_Pair_Parameters = FACT( statut='o', max="**", - Type_Repulsion_and_VdW = SIMP( statut='o', typ='TXM', into = [ 'Lennard_Jones', 'Hard_sphere_model']), - Species_Pair = SIMP( statut='o', max=2, typ='TXM'), - VdW_Radius = SIMP( statut='o', typ='R', val_min=0), - b_Lennard = BLOC( condition = "Type_Repulsion_and_VdW == 'Lennard_Jones'", - Depth_Of_The_Potential_Well = SIMP( statut='o', typ='R', val_min=0), - ), # fin b_Lennard - ), # fin Species_Pair_Parameters - ), # bloc_VdW - - b_Param_Soft_Potentiel = BLOC( condition = "Type_Of_Unbonded_Interaction == 'Soft_Potentiel'", - Groot_Warren_Repulsion = SIMP( statut='o', typ='R', defaut=25.0, val_min=0), - Groot_Warren_Cutoff = SIMP( statut='o', typ='R', defaut=1.0, val_min=0), - Drag_Coefficient = SIMP( statut='o', typ='R'), # les 2 valent 0 pour MD - Drag_Force_Cutoff = SIMP( statut='o', typ='R', val_min=0), - ), # b_Param_Soft_Potentiel - - ), # fin UnBonded_Interactions - - # ------------------------------- # - - External_Field_Interaction = FACT( statut='o', max= "**", - Type_Of_Interaction_With_An_External_Field = SIMP( statut='o', typ='TXM', into=['No','gravitational field','electric field','magnetic field', 'Hydrodynamic_Field'], fenetreIhm='menuDeroulant', defaut ='No'), - b_gravite = BLOC( condition = 'Type_Of_Interaction_With_An_External_Field=="gravitational field"', - G = SIMP( statut='o', typ='R', defaut=9.81), - ), - b_elect = BLOC( condition = 'Type_Of_Interaction_With_An_External_Field=="electric field"', - Electric_Field = champ('E', ('E',), 1), - ), - b_magnetic = BLOC( condition = 'Type_Of_Interaction_With_An_External_Field=="magnetic field"', - Magnetic_Field = champ('B', ('B',), 1), - ), - b_hydrodynamic = BLOC( condition = 'Type_Of_Interaction_With_An_External_Field=="hydrodynamic field"', - Hydrodynamic_Field = champ('U', ('U',), 1), - ), - b_External_Field_Interaction = BLOC( condition = 'Type_Of_Interaction_With_An_External_Field != "No"', - Field_Applies_On_All_Species = SIMP( statut='o', typ=bool, defaut=True), - b_porte_espece = BLOC( condition = 'Field_Applies_On_All_Species == False ', - Species_List = SIMP( statut='o', typ='TXM', max= '**'), # faire un typ = "espece" - ), - ), # fin b_External_Field_Interaction - ), # fin Interaction_External_Field - - ), # fin List_Of_Interactions - -############################ -) # fin Particle - -#--------------- -def bloc_CPS(): -#--------------- - return BLOC(condition = 'SystemType == "Classical particle system"', - Particle = Particle('**'), - ) - -#---------------------- -def bloc_FluideMacro(): -#---------------------- - return BLOC(condition = 'SystemType == "Continuum system"', - ComplexFluid = SIMP(typ=bool, statut='o', defaut = False, position='global'), - FlowNature = SIMP(typ='TXM', statut='o', into =['Laminar', 'Turbulent'], position='global'), - - DensityInitialisation = FACT( statut ='o', - DensityValueType = SIMP(typ='TXM', statut ='o', into = ['Value', 'Field'], defaut ='Value'), - blocDensityValue= BLOC (condition = 'DensityValueType == "Value"', - Density = SIMP(typ='R', statut ='o'), - ), - blocDensField= creeBlocPourLesFichiers2('DensityValueType == "Field"', NomDuFichier='DensityFileName', ListeFormats=listeFormatGenerique, FieldName='DensityFieldName'), - ),# DensityInitialisation - - ViscosityInitialisation = FACT( statut ='o', - ViscosityValueType = SIMP(typ='TXM', statut ='o', into = ['Value', 'Field'], defaut ='Value'), - blocViscosityValue= BLOC (condition = 'ViscosityValueType == "Value"', - Viscosity = SIMP(typ='R', statut ='o'), - ), - blocViscosityField= creeBlocPourLesFichiers2('ViscosityValueType == "Field"', NomDuFichier='VIscosityFileName', ListeFormats=listeFormatGenerique, FieldName='ViscosityFieldName'), - ), #fin ViscosityityInitialisation - - bloc_FlowNature_Turbulent = BLOC(condition = ' FlowNature == "Turbulent"', - TurbulenceForFlowDynamics = FactTurbulence('o',position='global'), - ), #fin bloc_FlowNature_Turbulent - - DynamicalVariables = FACT (statut ='o', - OriginOfDynamicalVariables = SIMP( statut='o', into =['Given', 'Interaction', 'to be simulated'], typ ='TXM', position='global'), - BlocGiven = BLOC(condition = 'OriginOfDynamicalVariables == "Given"', - inSameFile = SIMP(typ=bool, statut ='o', defaut = True, position = 'global'), - BlocSameFile = creeBlocPourLesFichiers2('inSameFile == True', 'DynamicFileName', ('Med', 'cgns' ), None), - ), - Pressure = FACT (statut ='o', - FluidPressure = SIMP(typ=(dynamicVariable,'createObject'), statut='o', defaut ='Fluid_Pressure', homo='constant'), - BlocFluidInSame = creeBlocPourLesFichiers2('inSameFile == False', 'PressureFileName', ('Med', 'cgns' ), None), - BlocGivenPressure = BLOC(condition = 'OriginOfDynamicalVariables == "Given"', - PressureFieldName = SIMP(typ='TXM',statut='o'), - ), - SourceTerm=SIMP(typ=bool, statut='o', defaut=False), - blocSourceTerm = FactTermeSource('SourceTerm==True'), - ), - Velocity = FACT (statut ='o', - bloc_FlowNature_Turbulent = BLOC(condition = ' FlowNature == "Turbulent" and TurbulenceModellingType != "Fully resolved (DNS)"', - Average_Velocity = SIMP(typ=(dynamicVariable,'createObject'), statut='o', defaut ='Average_Velocity', homo='constant'), - BlocGivenVelocity = BLOC(condition = 'OriginOfDynamicalVariables == "Given"', - Average_VelocityValue = SIMP(typ='R', statut='o' ), - ), - SourceTerm=SIMP(typ=bool, statut='o', defaut=False), - blocSourceTerm = FactTermeSource('SourceTerm==True'), - ), - bloc_FlowNature_Laminar = BLOC(condition = ' FlowNature == "Laminar" or TurbulenceModellingType == "Fully resolved (DNS)"', - Fluid_Velocity = SIMP(typ=(dynamicVariable,'createObject'), statut='o', defaut ='Fluid_Velocity', homo='constant'), - BlocVelocityInSame = creeBlocPourLesFichiers2('inSameFile == False', 'VelocityFileName', ('Med', 'cgns' ), None), - BlocGivenVelocity = BLOC(condition = 'OriginOfDynamicalVariables == "Given"', - VelocityFieldName = SIMP(typ='TXM',statut='o'), - ), - SourceTerm=SIMP(typ=bool, statut='o', defaut=False), - blocSourceTerm = FactTermeSource('SourceTerm==True'), - ), - ), - BFlowNatureTurbulent = BLOC(condition ='FlowNature == "Turbulent"', - # K-epislon ou k-omega - bloc_Turbulence_TWMChoice1 = BLOC(condition = 'TVMChoice == "K-Epsilon" or TVMChoice == "K-Omega"', - KDefinition = FACT(statut ='o', - Name = SIMP(typ=(scalar,'createObject'), statut='o', defaut ='K', homo='constant'), - BlocKInSame = creeBlocPourLesFichiers2('inSameFile == False', 'KFileName', ('Med', 'cgns' ), None), - BlocKGiven = BLOC(condition = 'OriginOfDynamicalVariables == "Given"', - KFieldName = SIMP(typ='TXM',statut='o', defaut='K'), - ), - SourceTerm=SIMP(typ=bool, statut='o', defaut=False), - blocSourceTerm = FactTermeSource('SourceTerm==True'), - ), # KDefinition - ),# fin bloc_Turbulence_TWMChoice1 - bloc_Turbulence_TWMChoice2 = BLOC(condition = 'TVMChoice == "K-Epsilon"', - EpsilonDefinition =FACT(statut ='o', - Name = SIMP(typ=(scalar,'createObject'), statut='o', defaut ='Epsilon', homo='constant'), - BlocEpsilonInSame = creeBlocPourLesFichiers2('inSameFile == False', 'EpsilonFileName', ('Med', 'cgns' ), None), - BlocEpsilonGiven = BLOC(condition = 'OriginOfDynamicalVariables == "Given"', - EpsilonFieldName = SIMP(typ='TXM',statut='o', defaut='Epsilon'), - ), - SourceTerm=SIMP(typ=bool, statut='o', defaut=False), - blocSourceTerm = FactTermeSource('SourceTerm==True'), - ), - ), # bloc_Turbulence_TWMChoice2 - bloc_Turbulence_TWMChoice3 = BLOC(condition = 'TVMChoice == "K-Omega"', - OmegaScalar =FACT(statut ='o', - Name = SIMP(typ=(scalar,'createObject'), statut='o', defaut ='Omega', homo='constant'), - BlocOmegaInSame = creeBlocPourLesFichiers2('inSameFile == False', 'OmegaFileName', ('Med', 'cgns' ), None), - BlocOmegaGiven = BLOC(condition = 'OriginOfDynamicalVariables == "Given"', - OmegaFieldName = SIMP(typ='TXM',statut='o', defaut='Omega'), - ), - SourceTerm=SIMP(typ=bool, statut='o', defaut=False), - blocSourceTerm = FactTermeSource('SourceTerm==True'), - ), - ), # bloc_Turbulence_TWMChoice3 - ), - ), # DynamicalVariables - -# ---------------------- Effets thermiques - Thermal = FACT (statut ='o', - ThermalEffects = SIMP(typ='TXM', statut='o', into =['Non thermal', 'Thermal'] , defaut='Thermal', position='global' ), - bloc_NonThermalEffects = BLOC(condition = ' ThermalEffects == "Non thermal"', - ReferenceTemperature = SIMP(typ='R', statut='o', val_min=-273.15 ), - ), # fin bloc_NonThermal - bloc_ThermalEffects_ = BLOC(condition = ' ThermalEffects == "Thermal"', - conductivityValueType = SIMP(typ='TXM', statut ='o', into = ['Value', 'Field'], defaut ='Value'), - blocCondValue = BLOC (condition = 'conductivityValueType == "Value"', - conductivity = SIMP(typ='R', statut ='o'), - ), - blocCondField= creeBlocPourLesFichiers2('conductivityValueType == "Field"', NomDuFichier='conductivityFileName', ListeFormats=listeFormatGenerique, FieldName='conductivityFieldName'), - #ActiveOnFlowEffect = ActiveOnFlowEffect(), - ), - ),# fin Fact Thermal - - bloc_scalar_FluidTurbulentOrLaminar = BLOC(condition = "(ComplexFluid == False and FlowNature == 'Turbulent') or (ComplexFluid == False and FlowNature == 'Laminar')", - Scalars = FACT(statut = 'o', - bloc_FlowNature_Turbulent_For_Scalars = BLOC(condition = ' FlowNature == "Turbulent"', - asTurbulenceForFlowDynamics = SIMP (statut='o', typ=bool, defaut=True), - BlocAsTFFD = BLOC(condition = "asTurbulenceForFlowDynamics == False", - ScalarsTurbulenceModelling = FactTurbulence('o',), - ), - ), - bloc_ThermalEffects_On = BLOC(condition = ' ThermalEffects == "Active on flow dynamics" or ThermalEffects == "Passive on flow dynamics"', - TemperatureScalar =FACT(statut ='o', - Name = SIMP(typ=(scalar,'createObject'), statut='o', defaut ='Temperature', homo='constant'), - SourceTerm=SIMP(typ=bool, statut='o', defaut=False), - blocSourceTerm = FactTermeSource('SourceTerm==True'), - TemperatureInitialisation = FACT( statut ='o', - OriginOfThermalFluxField = SIMP( statut='o', into =['Given', 'Interaction', 'to be simulated'], typ ='TXM'), - BlocGiven = creeBlocPourLesFichiers('OriginOfThermalFluxField == "Given"', 'FileName', ('Med', 'cgns' ), FieldName=1), - ),# fin TemperatureInitialisation - ),# TemperatureScalar - ), # fin bloc_ThermalEffects_On - Scalar = FACT(statut = 'o', max ='**', - Name = SIMP(typ=(scalar,'createObject'), statut='o',), - DiffusivityValueType = SIMP(typ='TXM', statut ='o', into = ['Value', 'Field'], defaut ='Value'), - blocDiffValue= BLOC (condition = 'DiffusivityValueType == "Value"', - Diffusivity = SIMP(typ='R', statut ='o'), - ), - blocDiffField= creeBlocPourLesFichiers2('DiffusivityValueType == "Field"', NomDuFichier='DiffusivityFileName', ListeFormats=listeFormatGenerique, FieldName='DiffusivityFieldName'), - EffectOnFlowDynamic = SIMP(typ='TXM', statut='o', into=[ 'Passive', 'Active'], defaut='Passive', ), - bloc_Scalar_Active_onFlowDynamic = BLOC(condition = ' EffectOnFlowDynamic == "Active"', - ActiveOnFlowEffect = ActiveOnFlowEffect(), - ), - bloc_scalar_FluidTurbulentAndNonComplexe = BLOC (condition = "FlowNature == 'Turbulent'", - ScalarFluxModel = FactTurbulence('f'), - ), # bloc_scalar_FluidTurbulentandNonComplexe - SourceTerm=SIMP(typ=bool, statut='o', defaut=False), - blocSourceTerm = FactTermeSource('SourceTerm==True'), - Initialisation = FACT( statut ='o', - OriginOfFluxField = SIMP( statut='o', into =['Given', 'Interaction', 'to be simulated'], typ ='TXM', defaut='to be simulated'), - BlocGiven = creeBlocPourLesFichiers2('OriginOfFluxField == "Given"', NomDuFichier='InitialFluxFile', ListeFormats = listeFormatGenerique, FieldName='InitialFluxField'), - ),# fin Initialisation - ),# Scalar - ),# AdditionalScalars - ), # fin FluidTurbulentandNonComplexe - # il faut une validation de coherence entre l existence de tous les turbulencesModelling - )# fin bloc_FluideMacro - -def ActiveOnFlowEffect(inTemperature=True): - return FACT(statut = 'o', max='**', - RelationType = SIMP(statut = 'o', into =['Equation Of State', 'Force-Flux Relation'], typ ='TXM'), - bloc_EOS = BLOC(condition = 'RelationType == "Equation Of State"', - TypeOfEquationOfState = SIMP( statut='o', into =['variable density', 'compressible'], typ ='TXM'), - ), - bloc_NonEOSAndSimple=BLOC( condition = 'RelationType == "Force-Flux Relation" and ComplexFluid == False', - TypeOfForceFluxRelation = SIMP( statut='o', into =['Viscosity', 'Diffusivity', 'Thermal Conductivity'], intoXML=['Viscosity', 'Diffusivity', 'Thermal Conductivity','Shear-stress closure', 'Scalar flux'], typ ='TXM', ), - blocViscosity=BLOC( condition = 'TypeOfForceFluxRelation == "Viscosity" ', - ViscosityLaw=SIMP(typ='TXM', statut = 'o', into=['law1', 'law2']), - ), - blocDiffusivity=BLOC( condition = 'TypeOfForceFluxRelation == "Diffusivity"', - DiffusivityLaw=SIMP(typ='TXM', statut = 'o', into=['law1', 'law2']), - ), - blocConductivity=BLOC( condition = 'TypeOfForceFluxRelation == "Thermal Conductivity"', - ConductivityLaw=SIMP(typ='TXM', statut = 'o', into=['law1', 'law2']), - ), - ), -) - -#-----------------------------------------------------# -def prepareBoundaryCondition(): - return FACT( statut='o',max = '**', # max = nb de facette de bord - applyOnStateVariable = SIMP (statut ='o', typ=stateVariable ), - b_designe_Mesh = BLOC(condition = "SystemType == 'Continuum system'", - ApplyOnMeshGroups = SIMP (statut ='o', typ=meshGroup, max='**'), - ), - #b_designe_Shape = BLOC(condition = "SystemType == 'Classical particle system'", - # ApplyOnCadGroups = SIMP (statut ='o', typ=spatialRegion, max='**'), - - Type_Of_Boundary_Condition = SIMP( statut='o', typ='TXM', into=['Inlet', 'Outlet', 'Symmetry','Periodicity', 'Wall', 'Free Surface'], ), - b_periodique = BLOC( condition = "Type_Of_Boundary_Condition == 'Periodic'", - Direction = SIMP( statut='o', typ='TXM', into=['X','Y','Z', 'XYZ']), - ), # b_periodique - b_inlet = BLOC( condition = "Type_Of_Boundary_Condition == 'Inlet'", - Formulation_of_Boundary= SIMP( statut='o', typ='TXM', into=['Dirichlet','Neumann','Cauchy']), - b_Formulation_of_Boundary_dirichlet = BLOC( condition = 'Formulation_of_Boundary == "Dirichlet"', - regles=(AU_MOINS_UN('InletProfile','IntegratedValue',), - EXCLUS('InletProfile','IntegratedValue'), ), - Consigne = SIMP(statut ="o", homo="information", typ="TXM", defaut = "Choose between InletProfile or IntegratedValue "), - InletProfile = SIMP (statut ='f', typ='TXM'), - IntegratedValue = SIMP ( statut='f', typ='R'), - #PN : faire une regle - ), - b_Formulation_of_Boundary_Neumann = BLOC( condition = 'Formulation_of_Boundary == "Neumann"', - Flux = SIMP (statut ='o', typ='TXM'), - ), - b_Formulation_of_Boundary_Cauchy = BLOC( condition = 'Formulation_of_Boundary == "Cauchy"', - ImposedFlux = SIMP (statut ='o', typ='TXM'), - IntegratedValue = SIMP ( statut='o', typ='R'), - ), - ), # b_inlet - -# #b_non_periodique = BLOC( condition = "Type_Of_Boundary_Condition != 'Periodic'", -# # Boundary_Face = SIMP( statut='o', typ= spatialRegion), -# #Apply_to_Wich_Quantity = SIMP( statut='o', typ='TXM', into=['Mass FLux', 'Velocity', 'Temperature','Scalars','all',]), -# ), - - # Formulation_of_Boundary= SIMP( statut='o', typ='TXM', into=['Dirichlet','Neumann']), - # b_Formulation_of_Boundary_dirichlet = BLOC( condition = 'Formulation_of_Boundary == "Dirichlet"', - # Value = SIMP ( statut='o', typ='R'), - # ), - ) # Boundary_Conditions - - - - -JdC = JDC_CATA ( - code = 'Vimmp', - # faire un validateur qui verifie que si on active reactions chimiques il faut que les masses molaires soient rentrees -) - -Component = OPER(nom='Component', sd_prod=composant, - SystemType = SIMP(typ='TXM', into=['Quantum system', 'Classical particle system', 'Continuum system'], statut='o',position='global'), - PhysicalDescription = FACT(statut = 'o', - b_FluideMacro = bloc_FluideMacro(), - b_bloc_CPS = bloc_CPS(), - ), - b_ModeleNumerique_quantum = prepareBlocSystemType('Quantum system'), - b_ModeleNumerique_classical = prepareBlocSystemType('Classical particle system'), - b_ModeleNumerique_continuum = prepareBlocSystemType('Continuum system'), - BoundaryConditions = FACT(statut = 'o', - BoundaryCondition = prepareBoundaryCondition(), - ) -) - -Species = PROC(nom='Species', - Specie = FACT( statut='o', max ="**", - Name = SIMP( statut='o', typ=(especeChimique,'createObject') ), - masse_molaire = SIMP( statut='f', typ='R',), - ) -) - -def monBlocInteractionTypeChamp (): - return BLOC (condition = '1 == 1' , # a distinguer selon les cas - fieldNameInOrigine = SIMP(typ='TXM', statut='o'), - fieldNameInDestination = SIMP(typ='TXM', statut='o'), - ) - -def TousSelonLeTypeDeFormatDisponible(condition, labelName='fileName'): - transferType = SIMP(typ='TXM', statut='o', into =['File', 'Memory', 'CorbaObject']) - maListe = list(dictCodeFormat.keys()) - dicoArgs={} - #index=0 - #for Solv1 in maListe[index:]: - # for Solv2 in maListe[index:]: - # #print (Solv1,Solv2, calculCommun(Solv1, Solv2,dictCodeFormat)) - # print ('PNPN attention changement de dictCodeFormat tant que getEficasAttribut n est pas correct') - # conditionSolv = 'transferType == "File" and getEficasAttribut(origine,"Solver")==Solv1 and getEficasAttribut(destination,"Solver")==Solv2' , - # conditionSolv = 'transferType == "File"' - # monBlocFichier=creeBlocPourLesFichiers (conditionSolv, 'FileName', calculCommun(Solv1, Solv2,dictCodeFormat)) - # dicoArgs['monBlocFichier'+str(index)]=monBlocFichier - # index=index+1 - mesFormats=set() - for solv1 in dictCodeFormat.keys() : - for f in dictCodeFormat[solv1] : mesFormats.add(f) - conditionSolv='transferType == "File"' - BlocFichier=creeBlocPourLesFichiers (conditionSolv, labelName, mesFormats) - dicoArgs['BlocFichier']=BlocFichier - monBlocChamp = BLOC(condition = "transferType=='File'", FieldName=SIMP(typ='TXM', statut='o')) - dicoArgs['monBlocChamp']=monBlocChamp - return BLOC(condition = condition,transferType=transferType, **dicoArgs) - -def SelonLeTypeDeFormatDisponibleMapper(condition): - transferType = SIMP(typ='TXM', statut='o', into =['File', 'Memory', 'CorbaObject']) - maListe = list(dictCodeFormat.keys()) - dicoArgs={} - index=0 - for Solv1 in maListe[index:]: - for Solv2 in maListe[index:]: - #print (Solv1,Solv2, calculCommun(Solv1, Solv2,dictCodeFormat)) - print ('PNPN attention changement de dictCodeFormat tant que getEficasAttribut n est pas correct') - conditionSolv = 'transferType == "File" and getEficasAttribut(origine,"Solver")==Solv1 and getEficasAttribut(destination,"Solver")==Solv2' , - conditionSolv = 'transferType == "File"' - monBlocFichier=creeBlocPourLesFichiers (conditionSolv, 'FileName', calculCommun(Solv1, Solv2,dictCodeFormat)) - dicoArgs['monBlocFichier'+str(index)]=monBlocFichier - index=index+1 - monBlocChamp = BLOC(condition = "transferType=='File'", FieldName=SIMP(typ='TXM', statut='o')) - dicoArgs['monBlocChamp']=monBlocChamp - return BLOC(condition = condition,transferType=transferType, **dicoArgs) - -Mapper = OPER (nom= 'Mapper',sd_prod=mapper, - Solver=SIMP(statut='o', typ='TXM', into = list(dictMapperFormat.keys())), - ) -Converter = OPER (nom= 'Converter',sd_prod=converter) - -Interactions = PROC(nom='Interactions', - Interaction = FACT( max = '**', - origine = SIMP(typ=modeleNumDuCompo, statut='o'), - destination = SIMP(typ=modeleNumDuCompo, statut='o'), - monBloc_FFFF = BLOC ( - condition = 'getEficasAttribut(origine,"ModelType") == "Fields" and getEficasAttribut(destination,"ModelType") == "Fields"' , - termeLE = SIMP(typ='TXM', statut='o', into = dictTermeLE['Fields','Fields'],fenetreIhm='menuDeroulant'), - ), - monBloc_DPDP = BLOC ( - condition = 'getEficasAttribut(origine,"ModelType") == "Particles" and getEficasAttribut(destination,"ModelType") == "Particles"' , - termeLE = SIMP(typ='TXM', statut='o', into = dictTermeLE['Particles','Particles'],fenetreIhm='menuDeroulant'), - ), - monBloc_FFDP = BLOC ( - condition = 'getEficasAttribut(origine,"ModelType") == "Fields" and getEficasAttribut(destination,"ModelType") == "Particles"' , - termeLE = SIMP(typ='TXM', statut='o', into = dictTermeLE['Fields','Particles'],fenetreIhm='menuDeroulant'), - ), - monBloc_DPFF = BLOC ( - condition = 'getEficasAttribut(origine,"ModelType") == "Particles" and getEficasAttribut(destination,"ModelType") == "Fields"' , - termeLE = SIMP(typ='TXM', statut='o', into = dictTermeLE['Particles','Fields'],fenetreIhm='menuDeroulant'), - ), - couplingPart = FACT( statut='o', - couplingMode = SIMP(typ='TXM', statut='o', into =['direct', 'scaling', 'conversion']), - monBlocDirect = TousSelonLeTypeDeFormatDisponible( "couplingMode=='direct'" ), - monBlocIn = BLOC ( condition = "couplingMode=='scaling' or couplingMode=='conversion'", - OutFromComponent = FACT( statut='o', - monBlocFormat = TousSelonLeTypeDeFormatDisponible( "1", labelName = 'outFromMapperFileName' ), - ), - ), - monBlocMapper = BLOC ( condition = "couplingMode=='scaling' or couplingMode=='conversion'", - ConversionNode = FACT( min=1, max='**', statut ='o', - tool = SIMP(typ=mapper, statut ='o'), - OutFromMapper = FACT (statut ='o', - monBlocFormat = TousSelonLeTypeDeFormatDisponible( "1", labelName = 'outFromMapperFileName' ), - ), - ), - ), - ), - monBlocUseConverter = BLOC ( condition = "couplingMode=='use converter'", - myConverter = SIMP(typ=converter, statut ='o') - ), - ), -) - -dict_condition={ -'ModelType' : ('Interactions', 'Component'), -#'NumericalMethod' : ('Interactions', 'Component'), -# 'TypeOfSolid' : ('Component',) -} - -Temporal_Aspects = PROC( nom ="Temporal_Aspects", - Simulated_Time_Laps = FACT (statut='o', max='**', - name = SIMP(statut='o', typ=(simulatedTime,'createObject'),), - initialTime = SIMP( statut='o', typ='R'), - finalTime = SIMP( statut='o', typ='R'), - timeDiscretization = SIMP( statut ='o', typ = 'TXM', into = ['Constant Time Step', 'Varying Time Step']), - bloc_Constant = BLOC (condition = 'timeDiscretization == "Constant Time Step"', - constantTimeStep = SIMP (statut ='o', typ = 'R'), - ), - bloc_Varying = BLOC (condition = 'timeDiscretization == "Varying Time Step"', - CFLNumberCriteria = SIMP (statut ='o', typ = 'R'), - FourierNumberCriteria = SIMP (statut ='o', typ = 'R'), - ), - ), -) -# -Spatial_Aspects = PROC( nom='Spatial_Aspects', - System_Geometry = FACT ( statut='o', max='**', - System_Geometry_name = SIMP( statut='o', typ=(systemGeometry, 'createObject'),), - Shape = FACT (statut ='f', max='**', - Shape_Nature = SIMP( statut='o', typ='TXM', into=['Typical Geometry', 'CAD']), - b_Shape = BLOC( condition = 'Shape_Nature == "Typical Geometry"', - Box = SIMP( statut='o', typ='TXM', into=['Cube', 'Sphere','Cylinder'] ), - b_Cube = BLOC( condition = 'Box == "Cube"', - #Taille_Box_Englobante = SIMP( statut='o', typ='R', max=3, min =3) - # derait etre un Tuple(3) mais a faire apres la projection - #Size_Of_Bounding_Box = SIMP( statut='o', typ=Tuple(3), validators=VerifTypeTuple(('R','R','R'),),) - Size_Of_Bounding_Box = SIMP( statut='o', typ='R', max=3, min=3, ), - ), # fin b_Cube - b_Boule = BLOC( condition = 'Box == "Sphere"', - Center = SIMP( statut='o', typ='R', max=3, min =3), - ),# fin b_Boule - b_Cylinder = BLOC( condition = 'Box == "Cylinder"', - Heigth = SIMP( statut="o", typ='R', val_min=0.0, ang='Nanotube length [m]'), - ),# fin b_Tube - b_Boule_ou_Cylinder = BLOC( condition = 'Box == "Sphere" or Box == "Cylinder"', - Radius = SIMP( statut='o', typ='R', val_min=0.0, ang='radius length [m]') , - ),# fin b_Boule_ouCylinder - ), # fin b_Shape - b_CAO = creeBlocPourLesFichiers( "Shape_Nature == 'CAD'",'Domain_File', ['txt','I-deas', 'Gmsh', 'top',]), - ShapeIdentifier=SIMP( statut='o', typ=(cadShape,'createObject'),max='**',), - ), # fin Shape - ),# System_Geometry - Spatial_Discretization = FACT ( statut='f', max="**", - Mesh_Name = SIMP( statut='o', typ=(meshIdentifier,'createObject')), - b_Mesh = creeBlocPourLesFichiers( "1 == 1",'Domain_File', ['med', 'Gmsh',]), - GroupIdentifier = SIMP( statut='o', typ=(meshGroup,'createObject'),max='**',), - ), - Boundary_Constraints = FACT (statut = 'f', - Motion = FACT ( statut='f', - Motion_Nature = SIMP(statut='o', typ='TXM', into=['Fixed boudary', 'Translational motion', 'Rotational motion', 'Scaling']), - b_Translational_motion=BLOC(condition = 'Motion_Nature == "Translational motion"', - Translation_Velocity=SIMP( statut='o', typ='R'), - boundaries=SIMP( statut='o', typ=spatialRegion,max='**' ), - ), - b_Rotational_motion=BLOC(condition = 'Motion_Nature == "Rotational motion"', - Rotation_Rate=SIMP( statut='o', typ='R'), - boundaries=SIMP( statut='o', typ=spatialRegion,max='**' ), - ), - b_fixed=BLOC(condition = 'Motion_Nature == "Fixed boudary"', - boundaries=SIMP( statut='o', typ=spatialRegion,max='**', homo='SansOrdreNiDoublon'), - #boundaries=SIMP( statut='o', typ=spatialRegion,max='**' ), - ), - ), -#PN decrire page 28 - Mapping = FACT ( statut='f', - ), - ), # Boundary_Constraints -) # fin Geometric_Domain - -TEXTE_NEW_JDC = "\ -Velocity=scalar()\ -" diff --git a/Vimmp/OLD/generateXML.py b/Vimmp/OLD/generateXML.py deleted file mode 100755 index d8fd33dd..00000000 --- a/Vimmp/OLD/generateXML.py +++ /dev/null @@ -1,36 +0,0 @@ -#!/usr/bin/env python -# -*- coding: utf-8 -*- -# Copyright (C) 2007-2013 EDF R&D -# -# 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 -# -""" - Ce module sert a lancer EFICAS configure pour Meteo -""" -# Modules Python -# Modules Eficas -import prefs -name='prefs_'+prefs.code -__import__(name) - -import sys -import os -sys.path.append(os.path.join(os.path.abspath(os.path.dirname(__file__)),'../..')) - -import prefs -from InterfaceQT4 import eficas_go -eficas_go.genereXML(code=prefs.code) diff --git a/Vimmp/OLD/generateXSD.py b/Vimmp/OLD/generateXSD.py deleted file mode 100755 index ed550619..00000000 --- a/Vimmp/OLD/generateXSD.py +++ /dev/null @@ -1,36 +0,0 @@ -#!/usr/bin/env python -# -*- coding: utf-8 -*- -# Copyright (C) 2007-2013 EDF R&D -# -# 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 -# -""" - Ce module sert a lancer EFICAS configure pour Meteo -""" -# Modules Python -# Modules Eficas -import prefs -name='prefs_'+prefs.code -__import__(name) - -import sys -import os -sys.path.append(os.path.join(os.path.abspath(os.path.dirname(__file__)),'../..')) - -import prefs -from InterfaceQT4 import eficas_go -eficas_go.genereXSD(code=prefs.code) diff --git a/Vimmp/cata_CSAndCPS.py b/Vimmp/cata_CSAndCPS.py deleted file mode 120000 index 290d7a1e..00000000 --- a/Vimmp/cata_CSAndCPS.py +++ /dev/null @@ -1 +0,0 @@ -cata_CSAndCPS_v00_ref.py \ No newline at end of file diff --git a/Vimmp/cata_CSAndCPS_driver_custom.py b/Vimmp/cata_CSAndCPS_driver_custom.py deleted file mode 100644 index 4318b401..00000000 --- a/Vimmp/cata_CSAndCPS_driver_custom.py +++ /dev/null @@ -1,47 +0,0 @@ -# -*- coding: utf-8 -*- -from raw.cata_CSAndCPS_driver import * -import raw.cata_CSAndCPS_driver as raw_cata_CSAndCPS_driver -import inspect -import sys - -root_classes=[raw_cata_CSAndCPS_driver.T_Vimmp] - -class T_step_Vimmp(raw_cata_CSAndCPS_driver.T_step_Vimmp): - def coucou(self): print("coucou") - -sav_T_step_Vimmp = raw_cata_CSAndCPS_driver.T_step_Vimmp -raw_cata_CSAndCPS_driver.T_step_Vimmp._SetSupersedingClass(T_step_Vimmp) - -def _isSupersedable (cls): - return inspect.isclass(cls) and issubclass(cls, pyxb.binding.basis._DynamicCreate_mixin) - -import pyxb.binding.basis - -raw_classes = set([_o for (_, _o) in inspect.getmembers(raw_cata_CSAndCPS_driver) if _isSupersedable(_o)]) - -this_module = sys.modules[__name__] -this_classes = set([_o for (_, _o) in inspect.getmembers(this_module) if _isSupersedable(_o) and _o not in raw_classes]) - -superseded_classes = set([ _o for _o in raw_classes if _o._SupersedingClass() in this_classes ]) -superseded_classes_tuple = tuple(superseded_classes) - -#TODO : Boucler pour toutes les classes superseded -# --> Une seule ou plusieurs en multiple cata -need_supersedure_classes = set([_o for _o in raw_classes if issubclass(_o, superseded_classes_tuple) and _o not in superseded_classes]) - -#local_name_classes=map(lambda cls:cls._ExpandedName.localName(),my_need_supersedure_classes) -local_name_classes=list(map(lambda cls:cls._ExpandedName.localName(),need_supersedure_classes)) - -#Check T_ prefix in local_name, exception ValueError: substring not found && assert fail if not a prefix -#map(lambda lname:lname.index('T_'),local_name_classes) -assert(list(map(lambda lname:lname.index('T_'),local_name_classes))==[0]*len(local_name_classes)) - -accessor_list=list(map(lambda lname:lname[2:],local_name_classes)) - - -#TODO : Améliorer le list et le c._ExpandedName.localName() == "T_"+lname -for scls in root_classes : - list(map(lambda lname: setattr( scls, lname, property( lambda s:[c for c in [ o.value for o in s.orderedContent()[:]] if c._ExpandedName.localName() == "T_"+lname], None, None, "Return the value for this use within the given instance.") ) , accessor_list)) - -raw_cata_CSAndCPS_driver.T_step_Vimmp=sav_T_step_Vimmp -T_step_Vimmp=sav_T_step_Vimmp diff --git a/Vimmp/cata_CSAndCPS_test_driver_0.comm b/Vimmp/cata_CSAndCPS_test_driver_0.comm deleted file mode 120000 index c411b59e..00000000 --- a/Vimmp/cata_CSAndCPS_test_driver_0.comm +++ /dev/null @@ -1 +0,0 @@ -cata_CSAndCPS_v00_ref_test_driver_0.comm \ No newline at end of file diff --git a/Vimmp/cata_CSAndCPS_v0.py b/Vimmp/cata_CSAndCPS_v0.py deleted file mode 100755 index 710c7783..00000000 --- a/Vimmp/cata_CSAndCPS_v0.py +++ /dev/null @@ -1,626 +0,0 @@ -from Accas import * - -class composant(ASSD):pass -class geometricDomain(ASSD):pass -class modeleNumDuCompo(UserASSD):pass -class especeChimique(UserASSD):pass -class userParticle(UserASSD) :pass -class userAtom(userParticle) :pass -class userMolecule(userParticle) :pass -class userDiscrete(userParticle) :pass -class userDPD(userParticle) :pass - -dictSystemTypeModeleNumerique = { 'Quantum system' : (), - 'Classical particle system' : ('MD', 'DPD', 'LBM', 'SDPD','SPH','CFD_Discrete_Particles'), - 'Continuum system' :('Fluid_Fields','Fluid_Particles', 'SPH','Lagrangian one-particle pdf'), - } - -# PN a faire --> ajouter un MC modeleNumerique ( apres avoir renomme le modeleNumerique actuel en classe de modele numerique) et le dictionnaire d apres -dictTypModNumModNum = { - ('Continuum system','Particles') : ('SPH','Lagrangian one-fluid-particle pdf'), - ('Continuum system','Fields') : ('FV','FEM', 'Spectral method'), - ('Classical particle system','Particles') : ('MD', 'DPD', 'SDPD','SPH','CFD_Discrete_Particles'), - ('Classical particle system','Fields') : ('LBM',), - ('Quantum system','Particles') : ('Particle method',), - ('Quantum system','Fields') : ('Wave',), -} - -dictCodeModeleNumerique = { - - 'Code_Saturne' : ('Lagrangian one-fluid-particle pdf', 'FV', 'CFD_Discrete_Particles',), - 'Fluent' : ('FV',), - 'Culgi Package': (), - 'DEM_SD' : ('Lagrangian one-fluid-particle pdf', 'FV', 'CFD_Discrete_Particles',), - 'DFTB+' : ('density functional tight binding method',), - 'DL_MESO_DPD' : ('Lagrangian one-fluid-particle pdf', 'FV', 'CFD_Discrete_Particles',), - 'DL_MESO_LBE' : ('Lagrangian one-fluid-particle pdf', 'FV', 'CFD_Discrete_Particles',), - 'DL_POLY_4' : ('Lagrangian one-fluid-particle pdf', 'FV', 'CFD_Discrete_Particles',), - 'GROMACS' : ('Lagrangian one-fluid-particle pdf', 'FV', 'CFD_Discrete_Particles',), - 'GROMACS_LS' : ('Lagrangian one-fluid-particle pdf', 'FV', 'CFD_Discrete_Particles',), - 'LAMMPS' : ('Lagrangian one-fluid-particle pdf', 'FV', 'CFD_Discrete_Particles',), - 'NWChem' : ('Lagrangian one-fluid-particle pdf', 'FV', 'CFD_Discrete_Particles',), - 'OpenFOAM' : ('Lagrangian one-fluid-particle pdf', 'FV', 'CFD_Discrete_Particles',), - 'Quantum EXPRESSO' : ('Particle method', 'Wave',), - 'RHEO_AGGRATE' : ('Particle method', 'Wave',), - 'RHEO_DROP' : ('Particle method', 'Wave',), - 'STAR_CCM+' : ('FV', 'Particles',), - 'Code Nill' : ('Spectral method', ), -} - -dictCodeFormat = { - 'Code_Saturne' : ('med', 'cgns', 'msh', 'des', 'unv ', 'Use converter'), - 'Culgi Package': ('cof',), - 'DEM_SD' : ('geo', 'ascii'), - 'DFTB+' : ('geo', 'ascii'), - 'Fluent' : ('FluentFormat', 'Use converter'), - 'OpenFOAM' : ('OpenFoamFormat', 'Med', 'Use converter'), -} - -dictTermeLE = { - ('Fields','Particles') : ('Fluid_Velocity_Field', - 'Fluid_Temperature_Field', - 'Fluid_Species_Mass_Fraction_Fluid',), - ('Particles','Fields') : ('Fluid_Particle_Momentum_Exchange_Field', - 'Fluid_Particle_Thermal_Exchange_Field', - 'Lagrangian one-particle pdfFluid_Particle_Mass_Source_Field', - 'Particle_Volumetric_Concentration_Modified_Fluid_Viscosity', - 'Particle_Extra_Stress_Tensor'), -} - -dictCodeConvertisseur = { - ('Saturne', 'OpenFOAM') : ('gmsh', 'Saturne2CDM and CDM2OpenFoam'), - ('Saturne', 'Fluent') : ( 'Saturne2CDM and CDM2Fluent'), - ('Fluent', 'OpenFOAM') : ('Fluent2CDM and CDM2OpenFoam'), - } - -def prepareBlocSystemType(systemType) : - condition = "SystemType == '" + systemType + "'" - Identifier = SIMP(statut='o', typ=(modeleNumDuCompo,'createObject'),) - ModelType = SIMP(statut='o', typ='TXM', into = ('Particles', 'Fields')) - dicoArgs={} - for typeMod in ('Particles', 'Fields'): - conditionType = "ModelType == '" + typeMod + "'" - NumericalMethod = SIMP(statut='o',typ='TXM', into=dictTypModNumModNum[systemType, typeMod], - position='global_jdc', intoXML=allValueInDict(dictTypModNumModNum)) - dicoBloc = {} - for modeleNumerique in list(dictTypModNumModNum[systemType,typeMod]): - conditionNum = "NumericalMethod == '" + modeleNumerique + "'" - setCode = set() - for code in dictCodeModeleNumerique.keys(): - if modeleNumerique in dictCodeModeleNumerique[code]: setCode.add(code) - Solver = SIMP(statut='o', typ='TXM', into=list(setCode), intoXML=list(dictCodeModeleNumerique.keys()) ) - monNomBloc='b_ModelName_' + modeleNumerique.replace(' ','_') - if setCode !=set(): dicoBloc[monNomBloc]=BLOC(condition=conditionNum, nomXML='b_ModelName',Solver=Solver) - dicoArgs['b_modelType'+typeMod] = BLOC(condition=conditionType, NumericalMethod=NumericalMethod,**dicoBloc) - NumericalModel = FACT(statut='o', max= '**', Identifier=Identifier, ModelType=ModelType, **dicoArgs) - return BLOC(condition=condition, nomXML='b_systemType', NumericalModel=NumericalModel) - -def calculCommun( key1, key2, dico): - monSet=set() - if not key1 in dico: return () - if not key2 in dico: return () - for val in dico[key1]: - if val in dico[key2]: - monSet.add(val) - if monSet == set() : monSet.add ('No common format') - return list(monSet) - -def allValueInDict( dico): - monSet=set() - for clef in dico : - for val in dico[clef] : monSet.add(val) - return monSet - -def creeBlocPourLesFichiers (laCondition, NomDuFichier, ListeFormats): - SIMPFormatFichier = SIMP(statut='o', typ = 'TXM', into = tuple(ListeFormats) + ('others',), ) - dicoDesBlocs = {} - for formatFich in ListeFormats : - nomBloc = 'b_format_fichier' + str(formatFich) - typeDesFichiers = ('Fichier', formatFich + " Files (*." + formatFich + ");;All Files (*)",) - blocCondition ="FileFormat == '" + formatFich + "'" - dicoDesBlocs[nomBloc] = BLOC( condition = blocCondition, FileName = SIMP(statut='o', typ = typeDesFichiers ),) - dicoDesBlocs['b_format_fichier_others'] = BLOC(condition="FileFormat == 'others'", FileName = SIMP(statut='o', typ = ('Fichier','All Files (*)'),),) - return BLOC(condition=laCondition, FileFormat = SIMPFormatFichier, **dicoDesBlocs) - -def champ(nomDelaContante, labels ,nbReels ) : -# ajouter les extensions pour le fichier et les blocs associes -# certains champs ne seront jamais uniformes - #Input_Mode = SIMP( statut='o', typ='TXM', into=('uniform value','values directly assigned','values read in file','analytical function', 'call to a service')), -#PNPN : Passer le nom du champ pour le label du vecteur - dicoBloc = {} - dicoBloc[nomDelaContante] = SIMP( statut='o', typ='R') - return FACT( statut='o', - Input_Mode = SIMP( statut='o', typ='TXM', into=('uniform value','values directly assigned','values read in file','analytical function',)), - b_uniforme = BLOC( condition = "Input_Mode == 'uniform value'", **dicoBloc), - b_vsaisies = BLOC( condition = "Input_Mode == 'values directly assigned'", - Field = SIMP( typ='R', statut='o', max ='**'), - #Vecteur = SIMP( fenetreIhm='Tableau', homo = labels, - # statut='o', min=2, max='**', - # typ=Tuple(nbReels), - # validators=VerifTypeTuple(("'R',"*nbReels),),) # end particle - ), #b_vsaisie - b_vdsfich = BLOC( condition = "Input_Mode == 'values read in file'", - Format = SIMP( statut='o', typ='TXM', into=['txt','Med',], position='global' ), - td_txt = BLOC(condition = 'Format == "txt"', - File = SIMP( statut='o', typ=('Fichier','Text Files(*.txt);All Files (*)'),), - ), - td_med_1 = BLOC( condition = 'Format == "Med"', - File = SIMP( statut='o', typ=('Fichier','Med Files(*.med);All Files (*)'),), - ), - td_med_2 = BLOC( condition = 'Format == "Med"', - FieldName = SIMP( statut='o', typ='TXM',), - ), - ), - b_vfct = BLOC( condition = "Input_Mode == 'analytical function'", - Function = SIMP( statut='o', typ='TXM',), - ), - #b_vserc = BLOC( condition = "Input_Mode == 'call to a service'", - # Service = SIMP( statut='o', typ='TXM',), - #), - ) - - - - -def FactTurbulence(statut): - return FACT (statut=statut, - TurbulenceModellingType = SIMP(typ='TXM', statut='o', into =['No Model (DNS)', - 'Spatial filtering (LES)', 'One-point moment', 'One-point PDF']) , - bloc_one_point = BLOC(condition= "TurbulenceModellingType == 'One-point moment'", - RANSModel = SIMP(statut="o", typ="TXM", into=['Turbulent-Viscosity Model(TVM)', 'Reynolds Stress Model (RSM)']), - bloc_TVM = BLOC(condition= "RANSModel == 'Turbulent-Viscosity Model(TVM)'", - TVMChoice = SIMP(typ='TXM', statut='o', into=['k-epsilon', 'k-omega']), - ), # fin bloc_TVM - bloc_RSM = BLOC(condition = "RANSModel == 'Reynolds Stress Model (RSM)'", - RSMChoice = SIMP(typ='TXM', statut='o', into=['Rotta', 'LRR-IP','LRR-QI','SSG']), - ), # fin bloc_RSM - ), # fin bloc_one_point - bloc_one_spatial = BLOC(condition = "TurbulenceModellingType == 'Spatial filtering (LES)'", - ChoiceOfApproach = SIMP(typ='TXM', statut='o', into=['Field-based LES', 'Filtered Density Function (FDF)']), - SubgridScaleModel = SIMP(typ='TXM', statut='o', into=['No SGS', 'Smagorinsky','Dynamical model', 'SGS Transport Equations']), - ), # fin bloc_one_spatial - bloc_one_point_pdf = BLOC(condition = "TurbulenceModellingType == 'One-point PDF'", - ChoiceOfApproach = SIMP(typ='TXM', statut='o', into=['One-point Eulerian PDF', 'One-particle Lagrangian PDF']), - bloc_lagrangian_pdf=BLOC(condition = "ChoiceOfApproach == 'One-particle Lagrangian PDF'", - StochasticModel = SIMP(typ='TXM', statut='o', into=['Langevin','Other'], defaut='Langevin'), - )# fin lagrangian - ), # fin bloc_one_point_pdf - bloc_no_model = BLOC(condition = "TurbulenceModellingType == 'No Model (DNS)'", - ChoiceOfApproach = SIMP(statut='o', typ='TXM', into=['Field-based DNS', 'N-Particle Method']), - bloc_Field = BLOC(condition = "ChoiceOfApproach == 'Field-based DNS'", - NumericalMethod=SIMP(statut='o', typ='TXM', into=['FV', 'Spectral Method']), - ),# fin bloc_Field - bloc_N_particle = BLOC(condition = "ChoiceOfApproach == 'N-Particle Method'", - NumericalMethod=SIMP(statut='o', typ='TXM', into=['SPH', 'Vortex Method']), - ),# fin bloc_N_particle - ), # fin bloc_no_model -)# fin du bloc return de la fonction factTurbulence - -def Particle(cardinalite) : - return FACT (statut='o', max=cardinalite, - ParticleNature = SIMP( statut='o', typ='TXM', into=['Atoms', 'Molecules', 'Dissipative', 'Fluid Particle', 'Discrete Particle']), - b_Atom = BLOC( condition='ParticleNature == "Atoms"', - AtomsName = SIMP( statut='o', typ=(userAtom,'createObject'),), - Atom = FACT (statut ='o', max= '**', - ChemicalSpecie = SIMP( statut='o', typ='TXM'), - Number = SIMP (statut ='o', typ = 'I'), - ElectricCharge = SIMP( statut='o', typ='R'), - MagneticMoment = SIMP( statut='o', typ='R'), - Size = SIMP( statut='f', typ='R'), # relevant ? - ), - ), - b_Molecule = BLOC( condition='ParticleNature == "Molecules"', - MoleculeName = SIMP( statut='o', typ=(userMolecule,'createObject'),), - ChemicalSpecie = FACT ( max='**', statut='o', - ChemicalSpecieName = SIMP( statut='o', typ=userAtom), - Proportion = SIMP( statut='o', typ='R', val_max =1), - ), - ElectricCharge = SIMP( statut='o', typ='R'), - MagneticMoment = SIMP( statut='o', typ='R'), - Shape = SIMP( statut='f', typ='TXM', into=['Linear', 'Trigonal Planar', 'Angular', 'Tetrahedral', 'Octahedral', 'Trigonal pyramid', 'Other']), - ), - b_Dissipative = BLOC( condition='ParticleNature == "Dissipative"', - DPDName = SIMP( statut='o', typ=(userDPD,'createObject'),), - BondedParticles = SIMP(statut="o", typ=bool, defaut=False), - ), - b_Discrete = BLOC( condition='ParticleNature == "Discrete Particle"', - DiscreteParticleName = SIMP(statut='o', typ=(userDiscrete,'createObject'),), - TypeOfDiscreteParticle = SIMP( statut='o', typ='TXM', into=['Solid', 'Droplets', 'Bubbles','Bio Organism'],), - b_TypeDP_Solid = BLOC( condition ='TypeOfDiscreteParticle == "Solid"', - TypeOfSolid = SIMP( statut='o', typ='TXM', into=['Primary Particle', 'Assemblage / Aggregate'], position = 'global'), - b_SolidPrimary = BLOC( condition='TypeOfSolid == "Primary Particle"', - ), - b_SolidAggregate = BLOC( condition='TypeOfSolid == "Assemblage / Aggregate"', - ), - ), - b_TypeBio_Solid = BLOC( condition='TypeOfDiscreteParticle == "Bio Organism"', - TypeOfOrganism = SIMP( statut='o', typ='TXM', into=['Unicellular', 'Multicellular']), - b_Unicellular = BLOC( condition ='TypeOfOrganism=="Unicellular"', - Unicellular = SIMP( statut='o', typ='TXM', into=["Bactaria"], defaut='Bactaria') - ), - b_Multicellular = BLOC( condition ='TypeOfOrganism=="Multicellular"', - Multicellular = SIMP( statut='o', typ='TXM', into=["Animal","Fongus","Plant"]) - ), - ), # b_TypeBio_Solid - Properties = FACT ( statut ='o', - Geometry = SIMP( statut='o', typ='TXM', into=['Sphere', 'Ellopsoids', 'Other Shape']), - b_geom_Sphere = BLOC( condition = 'Geometry == "Sphere"', - ParticleRadius = SIMP( statut='o', typ ='R', val_min = 0), - ), - Weight = FACT (statut = 'o', - Mass = SIMP( statut='o', typ ='R', val_min = 0), - Density = SIMP( statut='o', typ ='R', val_min = 0), - ), - Mechanical = SIMP( statut='o', typ='TXM', into=['Rigid', 'Flexible', 'Deformable']), - b_SolidAggregate = BLOC( condition='TypeOfSolid == "Assemblage / Aggregate"', - Morphological = FACT (statut = 'o', - Consigne = SIMP(statut="o", homo="information", typ="TXM", defaut='Choose optional properties'), - FractalDimension = SIMP( statut='f', typ='R'), - NumberOfPrimaryParticle = SIMP (statut ='f',typ='I'), - EquivalentSize = SIMP( statut='f', typ='R'), - Porosoty = SIMP( statut='f', typ='R'), - ), # Morphological - ), # b_SolidAggregate - ElectroMagnetic = FACT (statut = 'f', - ElectricCharge = SIMP( statut='o', typ='R'), - MagneticMoment = SIMP( statut='o', typ='R'), - ), - b_SolidAggregateBonded = BLOC( condition='TypeOfSolid == "Assemblage / Aggregate"', - BondedParticles = FACT( - ListOfBondedParticles = SIMP(statut='o', max='**', typ = userParticle), - ), - ), - ), # Properties - ), # b_Discrete -############################ - - List_Of_Bonded_Particles = FACT( statut='f', - # -------------------------------------------# - Bonded_Particles = FACT( statut='o', max = "**", - Name_Of_Bonded_Particles = SIMP( statut='o', typ='TXM'), - Species_in_Particle = SIMP( statut='o', min=2, typ='TXM' , max = "**"), - ), # Bonded_Particles - ), # List_Of_Bonded_Particles - - List_Of_Interactions = FACT( statut='o', max = "**", - # --------------------------------------------------# - - Bonded_Interactions = FACT( statut='o', max = "**", - - #Type_Of_Bonded_Interaction = SIMP( statut='o', typ='TXM', into=['No', 'Covalent Bond Length', 'FENE', 'Covalent Bond Angle', 'Dihedral Angles', 'Improper Dihedral', 'Frozen Motion' ], defaut='No', position='global'), - Type_Of_Bonded_Interaction = SIMP( statut='o', typ='TXM', into=['No', 'Covalent Bond Length', 'FENE', 'Covalent Bond Angle', 'Dihedral Angles', 'Improper Dihedral', 'Frozen Motion' ], defaut='No'), - - #La saisie de l'ensemble des liaisons d'un meme type peut se faire ds le meme bloc (soit ds un fichier, soit manuelle) - #Une seule valeur de distante? est a saisir pour l'ensemble - # bloc_covalent_1 = BLOC( condition = 'Type_Of_Bonded_Interaction in ("Covalent Bond Length","FENE")', - # ), # fin bloc_covalent_1 - bloc_covalent_length = BLOC( condition = 'Type_Of_Bonded_Interaction == "Covalent Bond Length"', - Interaction_Length_Parameters = FACT( statut='o', max="**", - Apply_To_Bonded_Particles = SIMP( statut='o', max='**', typ='TXM'), - Spring_Stifness = SIMP( statut='o', typ='R', val_min=0), - Mean_Bond_Length = SIMP( statut='o', typ='R', val_min=0), - ), # fin Interation_Length_Parameters - ), # fin Bond_Length_Parameters - bloc_covalent_angle = BLOC( condition = 'Type_Of_Bonded_Interaction == "Covalent Bond Angle"', - Interaction_Angles_Parameters = FACT( statut='o', max="**", - Apply_To_Bonded_Particles = SIMP( statut='o', max='**', typ='TXM'), - Spring_Stifness = SIMP( statut='o', typ='R', val_min=0), - Mean_Bond_Angle = SIMP( statut='o', typ='R', val_min=0), - ), # fin Interation_Angles_Parameters - ), # fin bloc_covalent_length_and_angle - - #bloc_covalent_length_and_angle = BLOC( condition = 'Type_Of_Bonded_Interaction == "Covalent Bond Length" or Type_Of_Bonded_Interaction == "Covalent Bond Angle"', - # Bond_Parameters = FACT( statut='o', max="**", - # Apply_To_Bonded_Particles = SIMP( statut='o', max='**', typ='TXM'), - # Spring_Stifness = SIMP( statut='o', typ='R', val_min=0), - # bloc_covalent_length = BLOC( condition = 'Type_Of_Bonded_Interaction == "Covalent Bond Length"', - # Mean_Bond_Length = SIMP( statut='o', typ='R', val_min=0), - # ), # fin Bond_Length_Parameters - # bloc_covalent_angle = BLOC( condition = 'Type_Of_Bonded_Interaction == "Covalent Bond Angle"', - # Mean_Bond_Angle = SIMP( statut='o', typ='R', val_min=0), - # ), # fin Bond_Length_Parameters - # ), # fin Bond_Length_Parameters - #), # fin bloc_covalent_length_and_angle - - bloc_FENE = BLOC( condition = 'Type_Of_Bonded_Interaction == "FENE"', - Applies_To_All_Particles = SIMP( statut='o', typ=bool, defaut=True), - bloc_not_on_all = BLOC( condition = 'Applies_To_All_Particles == False', - FENE_Parameters = FACT( statut='o', max="**", - Species_Pair = SIMP( statut='o', max=2, typ='TXM'), - Spring_Constant_H = SIMP( statut='o', typ='R', val_min=0), - LMax = SIMP( statut='o', typ='R', val_min=0), - ), # fin FENE_Parameters - ), # fin bloc_not_on_all - bloc_on_all = BLOC( condition = 'Applies_To_All_Particles == True', - Spring_Constant_H = SIMP( statut='o', typ='R', val_min=0), - LMax = SIMP( statut='o', typ='R', val_min=0), - ), # fin bloc_on_all - ), # fin bloc_FENE - - bloc_le_reste = BLOC( condition = 'Type_Of_Bonded_Interaction in ("Dihedral Angles", "Improper Dihedral", "Frozen Motion")', - Particle_Name = SIMP( statut="f", typ='TXM'), - #Consigne = SIMP( statut="o", homo="information", typ="TXM", defaut='Not Implemented Yet'), - - ), - ), # fin Bonded_Interaction - - # ------------------------------- # - - Unbonded_Interactions = FACT( statut='o', max= "**", - - Type_Of_Unbonded_Interaction = SIMP( statut='o', typ='TXM', into=['No', 'electro_magnetic', 'Repulsion_and_VdW', 'Soft_Potentiel', ], defaut='No', position='global',fenetreIhm='menuDeroulant'), - - bloc_elec = BLOC( condition = 'Type_Of_Unbonded_Interaction == "electro_magnetic"', - Permittivity = SIMP( statut='o', typ='R', position='global_jdc'), - Magnetic = SIMP( statut='o', typ=bool, defaut=False,), - bloc_magnetic = BLOC( condition = 'Magnetic == True', - Permability = SIMP( statut='o', typ='R'), - ), # bloc_magnetic - ),# fin bloc_elec - - bloc_VdW = BLOC( condition = 'Type_Of_Unbonded_Interaction == "Repulsion_and_VdW"', - Species_Pair_Parameters = FACT( statut='o', max="**", - Type_Repulsion_and_VdW = SIMP( statut='o', typ='TXM', into = [ 'Lennard_Jones', 'Hard_sphere_model']), - Species_Pair = SIMP( statut='o', max=2, typ='TXM'), - VdW_Radius = SIMP( statut='o', typ='R', val_min=0), - b_Lennard = BLOC( condition = "Type_Repulsion_and_VdW == 'Lennard_Jones'", - Depth_Of_The_Potential_Well = SIMP( statut='o', typ='R', val_min=0), - ), # fin b_Lennard - ), # fin Species_Pair_Parameters - ), # bloc_VdW - - b_Param_Soft_Potentiel = BLOC( condition = "Type_Of_Unbonded_Interaction == 'Soft_Potentiel'", - Groot_Warren_Repulsion = SIMP( statut='o', typ='R', defaut=25.0, val_min=0), - Groot_Warren_Cutoff = SIMP( statut='o', typ='R', defaut=1.0, val_min=0), - Drag_Coefficient = SIMP( statut='o', typ='R'), # les 2 valent 0 pour MD - Drag_Force_Cutoff = SIMP( statut='o', typ='R', val_min=0), - ), # b_Param_Soft_Potentiel - - ), # fin UnBonded_Interactions - - # ------------------------------- # - - External_Field_Interaction = FACT( statut='o', max= "**", - Type_Of_Interaction_With_An_External_Field = SIMP( statut='o', typ='TXM', into=['No','gravitational field','electric field','magnetic field', 'Hydrodynamic_Field'], fenetreIhm='menuDeroulant', defaut ='No'), - b_gravite = BLOC( condition = 'Type_Of_Interaction_With_An_External_Field=="gravitational field"', - G = SIMP( statut='o', typ='R', defaut=9.81), - ), - b_elect = BLOC( condition = 'Type_Of_Interaction_With_An_External_Field=="electric field"', - Electric_Field = champ('E', ('E',), 1), - ), - b_magnetic = BLOC( condition = 'Type_Of_Interaction_With_An_External_Field=="magnetic field"', - Magnetic_Field = champ('B', ('B',), 1), - ), - b_hydrodynamic = BLOC( condition = 'Type_Of_Interaction_With_An_External_Field=="hydrodynamic field"', - Hydrodynamic_Field = champ('U', ('U',), 1), - ), - b_External_Field_Interaction = BLOC( condition = 'Type_Of_Interaction_With_An_External_Field != "No"', - Field_Applies_On_All_Species = SIMP( statut='o', typ=bool, defaut=True), - b_porte_espece = BLOC( condition = 'Field_Applies_On_All_Species == False ', - Species_List = SIMP( statut='o', typ='TXM', max= '**'), # faire un typ = "espece" - ), - ), # fin b_External_Field_Interaction - ), # fin Interaction_External_Field - - ), # fin List_Of_Interactions - -############################ - ) - -def bloc_CPS(): - return BLOC(condition = 'SystemType == "Classical particle system"', - PhysicalDescription__tmp = FACT (statut ='o', - Particle = Particle('**'), - ) -) - -def bloc_FluideMacro(): - return BLOC(condition = 'SystemType == "Continuum system"', - PhysicalDescription = FACT (statut ='o', - FluidComplexe = SIMP(typ=bool, statut='o', defaut = False), - - FlowNature = SIMP(typ='TXM', statut='o', into =['Laminar', 'Turbulent'], position='global'), - bloc_FlowNature_Turbulent = BLOC(condition = ' FlowNature == "Turbulent"', - TurbulenceForFlowDynamics = FactTurbulence('o'), - ), #------ fin bloc_FlowNature_Turbulent - - -# ---------------------- Effets thermiques - - Thermal = FACT (statut ='o', - ThermalEffects = SIMP(typ='TXM', statut='o', into =['Non thermal', - 'No effect on flow dynamics', 'Effect on flow dynamics'], defaut='Non thermal'), - - bloc_NonThermalEffects = BLOC(condition = ' ThermalEffects == "Non thermal" or ThermalEffects == "No effect on flow dynamics"', - DensityEquationOfState = SIMP(typ='TXM', statut='o', into =['Constant density'], defaut = 'Constant density'), - ), # fin bloc_NonThermalEffects - - bloc_ThermalEffects_Active = BLOC(condition = ' ThermalEffects == "Effect on flow dynamics"', - DensityEquationOfState = SIMP(typ='TXM', statut='o', into =['Variable density', 'Compressible']), -# PNJPM est ce suffisant ? - ), # fin bloc_ThermalEffects_Active - bloc_ThermalEffects = BLOC(condition = ' ThermalEffects == "Effect on flow dynamics" or ThermalEffects == "No effect on flow dynamics"', - bloc_scalar_thermal_flux = BLOC (condition = "FlowNature == 'Turbulent'", - ThermalFluxModel = FactTurbulence('f'), - ),# fin bloc_scalar_thermal_flux - WithChemicalReactions = SIMP(typ=bool, statut ='o', defaut = False), - ), # fin bloc_ThermalEffects - ),# fin Fact Thermal - -# ---------------------- Scalaire additional - bloc_scalar_FluidTurbulentandNonComplexe = BLOC(condition = "FluidComplexe == False and FlowNature == 'Turbulent'", - AdditionalScalars__tmp1 = FACT(statut = 'o', - Scalar = FACT(statut = 'f', max ='**', - Name = SIMP(typ='TXM', statut='o',), - ScalarFluxModel = FactTurbulence('f'), - ),# Scalar - ),# AdditionalScalars - ), # fin FluidTurbulentandNonComplexe - bloc_scalar_FluidLaminaireandNonComplexe = BLOC (condition = "FluidComplexe == False and FlowNature == 'Laminar'", - AdditionalScalars__tmp2 = FACT (statut = 'o', - Scalar = FACT ( statut = 'f', max ='**', - Name = SIMP(typ='TXM', statut='o',), - ),# Scalar - ),# AdditionalScalars - ), # fin FluidLaminaireandNonComplexe - bloc_FlowNature_Turbulent_For_Scalars = BLOC(condition = ' FlowNature == "Turbulent"', - ScalarTurbulenceModelling = FactTurbulence('f'), - ), - # il faut une validation de coherence entre l existence de tous les turbulencesModelling - ) # fin PhysicalDescription - )# fin bloc_FluideMacro - -JdC = JDC_CATA ( - code = 'Vimmp', - # faire un validateur qui verifie que si on active reactions chimiques il faut que les masses molaires soient rentrees -) - -Component = OPER(nom='Component', sd_prod=composant, - SystemType = SIMP(typ='TXM', into=['Quantum system', 'Classical particle system', 'Continuum system'], statut='o'), - b_FluideMacro = bloc_FluideMacro(), - b_bloc_CPS = bloc_CPS(), - b_ModeleNumerique_quantum = prepareBlocSystemType('Quantum system'), - b_ModeleNumerique_classical = prepareBlocSystemType('Classical particle system'), - b_ModeleNumerique_continuum = prepareBlocSystemType('Continuum system'), -) - -Species = PROC(nom='Species', - Specie = FACT( statut='o', max ="**", - Name = SIMP( statut='o', typ=(especeChimique,'createObject') ), - masse_molaire = SIMP( statut='f', typ='R',), - ) -) - -#Physical_Description = PROC(nom='Physical_Description', -# Component = SIMP(typ=composant, statut ='o',), -## bloc_FluideMacro = BLOC(condition = 'systemType == "Continuum system"',) -## faire un validateur qui verifie que si on active reactions chimiques il faut que les masses molaires soient rentrees -# -## ------------------------------------ Bloc FluidMacro ---------------------------------- -# bloc_FluideMacro = BLOC(condition = 'getEficasAttribut(Component,"SystemType") == "Continuum system"', -# #bloc_FluideMacro = BLOC(condition = '"Fields" in getEficasListOfAttributs(Component,["NumericalModel","ModelType"])' , -# # n est ce pas plutot un des modelNumrerique vaut Field ? ou faut-il les 2 -# FluidComplexe = SIMP(typ=bool, statut='o', defaut = False), -# -# FlowNature = SIMP(typ='TXM', statut='o', into =['Laminar', 'Turbulent'], position='global'), -## ----------- FlowNature Turbulent -# bloc_FlowNature_Turbulent = BLOC(condition = ' FlowNature == "Turbulent"', -# TurbulenceForFlowDynamics = FactTurbulence('o'), -### PNPN a faire -## # controle de coherence entre les modeles de turbulences et les modeles numeriques choisis ), -## # Consigne = SIMP(statut ="o", homo="information", typ="TXM",defaut ='Incoherence') -## # il faut verifier la coherence entre le model de turbulence et le model type ), -## -# ), #------ fin bloc_FlowNature_Turbulent -# -# -## ---------------------- Effets thermiques -# -# Thermal = FACT (statut ='o', -# ThermalEffects = SIMP(typ='TXM', statut='o', into =['Non thermal', -# 'No effect on flow dynamics', 'Effect on flow dynamics'], defaut='Non thermal'), -# -# bloc_NonThermalEffects = BLOC(condition = ' ThermalEffects == "Non thermal" or ThermalEffects == "No effect on flow dynamics"', -# DensityEquationOfState = SIMP(typ='TXM', statut='o', into =['Constant density'], defaut = 'Constant density'), -# ), # fin bloc_NonThermalEffects -# -# bloc_ThermalEffects_Active = BLOC(condition = ' ThermalEffects == "Effect on flow dynamics"', -# DensityEquationOfState = SIMP(typ='TXM', statut='o', into =['Variable density', 'Compressible']), -## PNJPM est ce suffisant ? -# ), # fin bloc_ThermalEffects_Active -# bloc_ThermalEffects = BLOC(condition = ' ThermalEffects == "Effect on flow dynamics" or ThermalEffects == "No effect on flow dynamics"', -# bloc_scalar_thermal_flux = BLOC (condition = "FlowNature == 'Turbulent'", -# ThermalFluxModel = FactTurbulence('f'), -# ),# fin bloc_scalar_thermal_flux -# WithChemicalReactions = SIMP(typ=bool, statut ='o', defaut = False), -# ), # fin bloc_ThermalEffects -# ),# fin Fact Thermal -# -## ---------------------- Scalaire additional -# bloc_scalar_FluidTurbulentandNonComplexe = BLOC(condition = "FluidComplexe == False and FlowNature == 'Turbulent'", -# AdditionalScalars = FACT(statut = 'o', -# Scalar = FACT(statut = 'f', max ='**', -# Name = SIMP(typ='TXM', statut='o',), -# ScalarFluxModel = FactTurbulence('f'), -# ),# Scalar -# ),# AdditionalScalars -# ), # fin FluidTurbulentandNonComplexe -# bloc_scalar_FluidLaminaireandNonComplexe = BLOC (condition = "FluidComplexe == False and FlowNature == 'Laminar'", -# AdditionalScalars = FACT (statut = 'o', -# Scalar = FACT ( statut = 'f', max ='**', -# Name = SIMP(typ='TXM', statut='o',), -# ),# Scalar -# ),# AdditionalScalars -# ), # fin FluidLaminaireandNonComplexe -# bloc_FlowNature_Turbulent_For_Scalars = BLOC(condition = ' FlowNature == "Turbulent"', -# ScalarTurbulenceModelling = FactTurbulence('f'), -# ), -# # il faut une validation de coherence entre l existence de tous les turbulencesModelling -# ),# fin bloc_FluideMacro -#) - -Interactions = PROC(nom='Interactions', - InteractionComposant = FACT( max = '**', - origine = SIMP(typ=modeleNumDuCompo, statut='o'), - destination = SIMP(typ=modeleNumDuCompo, statut='o'), -# PN a derouler avec une fonction - monBloc_FFDP = BLOC ( - condition = 'getEficasAttribut(origine,"ModelType") == "Fields" and getEficasAttribut(destination,"ModelType") == "Particles"' , - termeLE = SIMP(typ='TXM', statut='o', into = dictTermeLE['Fields','Particles'],fenetreIhm='menuDeroulant'), - ), - monBloc_DPFF = BLOC ( - condition = 'getEficasAttribut(origine,"ModelType") == "Particles" and getEficasAttribut(destination,"ModelType") == "Fields"' , - termeLE = SIMP(typ='TXM', statut='o', into = dictTermeLE['Particles','Fields'],fenetreIhm='menuDeroulant'), - ), - monBloc_Saturne_Fluent = BLOC ( - condition = 'getEficasAttribut(origine,"Solver") == "Code_Saturne" and getEficasAttribut(destination,"Solver") == "Fluent"' , - Format = SIMP(typ='TXM', statut='o', into = calculCommun( "Code_Saturne", "Fluent",dictCodeFormat) ), - ), - monBloc_Saturne_OpenFoam = BLOC ( - condition = 'getEficasAttribut(origine,"Solver") == "Code_Saturne" and getEficasAttribut(destination,"Solver") == "OpenFOAM"' , - Format = SIMP(typ='TXM', statut='o', into = calculCommun( "Code_Saturne", "OpenFOAM",dictCodeFormat) ), - monBloc_conversion = BLOC (condition = 'Format == "Use converter"', - converter = SIMP(typ='TXM', statut='o', into = dictCodeConvertisseur['Saturne', 'OpenFOAM']), - ), - ), - ), -) - -dict_condition={'NumericalMethod' : ('Interactions', 'Component'), -# 'TypeOfSolid' : ('Component',) -} - -Simulated_Time_Lapse = PROC( nom ="Simulated_Time_Lapse", - Initial_Time = SIMP( statut='o', typ='R'), - Duration = SIMP( statut='o', typ='R'), -) -# -Geometric_Domain= OPER( nom='Geometric_Domain', sd_prod=geometricDomain, - Shape = SIMP( statut='o', typ='TXM', into=['Simplified Shape', 'CAD or Mesh']), - b_Shape = BLOC( condition = 'Shape == "Simplified Shape"', - Box = SIMP( statut='o', typ='TXM', into=['Cube', 'Sphere','Cylinder'] ), - b_Cube = BLOC( condition = 'Box == "Cube"', - #Taille_Box_Englobante = SIMP( statut='o', typ='R', max=3, min =3) - # derait etre un Tuple(3) mais a faire apres la projection - Size_Of_Bounding_Box = SIMP( statut='o', typ=Tuple(3), validators=VerifTypeTuple(('R','R','R'),),) - ), # fin b_Cube - b_Boule = BLOC( condition = 'Box == "Sphere"', - Center = SIMP( statut='o', typ='R', max=3, min =3), - # devrait etre un Tuple(3) mais a faire apres la projection - ),# fin b_Boule - b_Cylinder = BLOC( condition = 'Box == "Cylinder"', - Heigth = SIMP( statut="o", typ='R', val_min=0.0, ang='Nanotube length [m]'), - ),# fin b_Tube - b_Boule_ou_Cylinder = BLOC( condition = 'Box == "Sphere" or Box == "Cylinder"', - Radius = SIMP( statut='o', typ='R', val_min=0.0, ang='radius length [m]') , - ),# fin b_Boule_ouCylinder - ), # fin b_Shape -# - b_CAO = creeBlocPourLesFichiers( "Shape == 'CAD or Mesh'",'Domain_File', ['txt','med','I-deas', 'Gmsh', 'top',]), - - Surface=SIMP( statut='o', typ='TXM',max='**',), -) # fin Geometric_Domain - - - - diff --git a/Vimmp/cata_CSAndCPS_v00_ref.py b/Vimmp/cata_CSAndCPS_v00_ref.py deleted file mode 100755 index 8ed43ae5..00000000 --- a/Vimmp/cata_CSAndCPS_v00_ref.py +++ /dev/null @@ -1,626 +0,0 @@ -from Accas import * - -class composant(ASSD):pass -class geometricDomain(ASSD):pass -class modeleNumDuCompo(UserASSD):pass -class especeChimique(UserASSD):pass -class userParticle(UserASSD) :pass -class userAtom(userParticle) :pass -class userMolecule(userParticle) :pass -class userDiscrete(userParticle) :pass -class userDPD(userParticle) :pass - -dictSystemTypeModeleNumerique = { 'Quantum system' : (), - 'Classical particle system' : ('MD', 'DPD', 'LBM', 'SDPD','SPH','CFD_Discrete_Particles'), - 'Continuum system' :('Fluid_Fields','Fluid_Particles', 'SPH','Lagrangian one-particle pdf'), - } - -# PN a faire --> ajouter un MC modeleNumerique ( apres avoir renomme le modeleNumerique actuel en classe de modele numerique) et le dictionnaire d apres -dictTypModNumModNum = { - ('Continuum system','Particles') : ('SPH','Lagrangian one-fluid-particle pdf'), - ('Continuum system','Fields') : ('FV','FEM', 'Spectral method'), - ('Classical particle system','Particles') : ('MD', 'DPD', 'SDPD','SPH','CFD_Discrete_Particles'), - ('Classical particle system','Fields') : ('LBM',), - ('Quantum system','Particles') : ('Particle method',), - ('Quantum system','Fields') : ('Wave',), -} - -dictCodeModeleNumerique = { - - 'Code_Saturne' : ('Lagrangian one-fluid-particle pdf', 'FV', 'CFD_Discrete_Particles',), - 'Fluent' : ('FV',), - 'Culgi Package': (), - 'DEM_SD' : ('Lagrangian one-fluid-particle pdf', 'FV', 'CFD_Discrete_Particles',), - 'DFTB+' : ('density functional tight binding method',), - 'DL_MESO_DPD' : ('Lagrangian one-fluid-particle pdf', 'FV', 'CFD_Discrete_Particles',), - 'DL_MESO_LBE' : ('Lagrangian one-fluid-particle pdf', 'FV', 'CFD_Discrete_Particles',), - 'DL_POLY_4' : ('Lagrangian one-fluid-particle pdf', 'FV', 'CFD_Discrete_Particles',), - 'GROMACS' : ('Lagrangian one-fluid-particle pdf', 'FV', 'CFD_Discrete_Particles',), - 'GROMACS_LS' : ('Lagrangian one-fluid-particle pdf', 'FV', 'CFD_Discrete_Particles',), - 'LAMMPS' : ('Lagrangian one-fluid-particle pdf', 'FV', 'CFD_Discrete_Particles',), - 'NWChem' : ('Lagrangian one-fluid-particle pdf', 'FV', 'CFD_Discrete_Particles',), - 'OpenFOAM' : ('Lagrangian one-fluid-particle pdf', 'FV', 'CFD_Discrete_Particles',), - 'Quantum EXPRESSO' : ('Particle method', 'Wave',), - 'RHEO_AGGRATE' : ('Particle method', 'Wave',), - 'RHEO_DROP' : ('Particle method', 'Wave',), - 'STAR_CCM+' : ('FV', 'Particles',), - 'Code Nill' : ('Spectral method', ), -} - -dictCodeFormat = { - 'Code_Saturne' : ('med', 'cgns', 'msh', 'des', 'unv ', 'Use converter'), - 'Culgi Package': ('cof',), - 'DEM_SD' : ('geo', 'ascii'), - 'DFTB+' : ('geo', 'ascii'), - 'Fluent' : ('FluentFormat', 'Use converter'), - 'OpenFOAM' : ('OpenFoamFormat', 'Med', 'Use converter'), -} - -dictTermeLE = { - ('Fields','Particles') : ('Fluid_Velocity_Field', - 'Fluid_Temperature_Field', - 'Fluid_Species_Mass_Fraction_Fluid',), - ('Particles','Fields') : ('Fluid_Particle_Momentum_Exchange_Field', - 'Fluid_Particle_Thermal_Exchange_Field', - 'Lagrangian one-particle pdfFluid_Particle_Mass_Source_Field', - 'Particle_Volumetric_Concentration_Modified_Fluid_Viscosity', - 'Particle_Extra_Stress_Tensor'), -} - -dictCodeConvertisseur = { - ('Saturne', 'OpenFOAM') : ('gmsh', 'Saturne2CDM and CDM2OpenFoam'), - ('Saturne', 'Fluent') : ( 'Saturne2CDM and CDM2Fluent'), - ('Fluent', 'OpenFOAM') : ('Fluent2CDM and CDM2OpenFoam'), - } - -def prepareBlocSystemType(systemType) : - condition = "SystemType == '" + systemType + "'" - Identifier = SIMP(statut='o', typ=(modeleNumDuCompo,'createObject'),) - ModelType = SIMP(statut='o', typ='TXM', into = ('Particles', 'Fields')) - dicoArgs={} - for typeMod in ('Particles', 'Fields'): - conditionType = "ModelType == '" + typeMod + "'" - NumericalMethod = SIMP(statut='o',typ='TXM', into=dictTypModNumModNum[systemType, typeMod], - position='global_jdc', intoXML=allValueInDict(dictTypModNumModNum)) - dicoBloc = {} - for modeleNumerique in list(dictTypModNumModNum[systemType,typeMod]): - conditionNum = "NumericalMethod == '" + modeleNumerique + "'" - setCode = set() - for code in dictCodeModeleNumerique.keys(): - if modeleNumerique in dictCodeModeleNumerique[code]: setCode.add(code) - Solver = SIMP(statut='o', typ='TXM', into=list(setCode), intoXML=list(dictCodeModeleNumerique.keys()) ) - monNomBloc='b_ModelName_' + modeleNumerique.replace(' ','_') - if setCode !=set(): dicoBloc[monNomBloc]=BLOC(condition=conditionNum, nomXML='b_ModelName',Solver=Solver) - dicoArgs['b_modelType'+typeMod] = BLOC(condition=conditionType, NumericalMethod=NumericalMethod,**dicoBloc) - NumericalModel = FACT(statut='o', max= '**', Identifier=Identifier, ModelType=ModelType, **dicoArgs) - return BLOC(condition=condition, nomXML='b_systemType', NumericalModel=NumericalModel) - -def calculCommun( key1, key2, dico): - monSet=set() - if not key1 in dico: return () - if not key2 in dico: return () - for val in dico[key1]: - if val in dico[key2]: - monSet.add(val) - if monSet == set() : monSet.add ('No common format') - return list(monSet) - -def allValueInDict( dico): - monSet=set() - for clef in dico : - for val in dico[clef] : monSet.add(val) - return monSet - -def creeBlocPourLesFichiers (laCondition, NomDuFichier, ListeFormats): - SIMPFormatFichier = SIMP(statut='o', typ = 'TXM', into = tuple(ListeFormats) + ('others',), ) - dicoDesBlocs = {} - for formatFich in ListeFormats : - nomBloc = 'b_format_fichier' + str(formatFich) - typeDesFichiers = ('Fichier', formatFich + " Files (*." + formatFich + ");;All Files (*)",) - blocCondition ="FileFormat == '" + formatFich + "'" - dicoDesBlocs[nomBloc] = BLOC( condition = blocCondition, FileName = SIMP(statut='o', typ = typeDesFichiers ),) - dicoDesBlocs['b_format_fichier_others'] = BLOC(condition="FileFormat == 'others'", FileName = SIMP(statut='o', typ = ('Fichier','All Files (*)'),),) - return BLOC(condition=laCondition, FileFormat = SIMPFormatFichier, **dicoDesBlocs) - -def champ(nomDelaContante, labels ,nbReels ) : -# ajouter les extensions pour le fichier et les blocs associes -# certains champs ne seront jamais uniformes - #Input_Mode = SIMP( statut='o', typ='TXM', into=('uniform value','values directly assigned','values read in file','analytical function', 'call to a service')), -#PNPN : Passer le nom du champ pour le label du vecteur - dicoBloc = {} - dicoBloc[nomDelaContante] = SIMP( statut='o', typ='R') - return FACT( statut='o', - Input_Mode = SIMP( statut='o', typ='TXM', into=('uniform value','values directly assigned','values read in file','analytical function',)), - b_uniforme = BLOC( condition = "Input_Mode == 'uniform value'", **dicoBloc), - b_vsaisies = BLOC( condition = "Input_Mode == 'values directly assigned'", - Field = SIMP( typ='R', statut='o', max ='**'), - #Vecteur = SIMP( fenetreIhm='Tableau', homo = labels, - # statut='o', min=2, max='**', - # typ=Tuple(nbReels), - # validators=VerifTypeTuple(("'R',"*nbReels),),) # end particle - ), #b_vsaisie - b_vdsfich = BLOC( condition = "Input_Mode == 'values read in file'", - Format = SIMP( statut='o', typ='TXM', into=['txt','Med',], position='global' ), - td_txt = BLOC(condition = 'Format == "txt"', - File = SIMP( statut='o', typ=('Fichier','Text Files(*.txt);All Files (*)'),), - ), - td_med_1 = BLOC( condition = 'Format == "Med"', - File = SIMP( statut='o', typ=('Fichier','Med Files(*.med);All Files (*)'),), - ), - td_med_2 = BLOC( condition = 'Format == "Med"', - FieldName = SIMP( statut='o', typ='TXM',), - ), - ), - b_vfct = BLOC( condition = "Input_Mode == 'analytical function'", - Function = SIMP( statut='o', typ='TXM',), - ), - #b_vserc = BLOC( condition = "Input_Mode == 'call to a service'", - # Service = SIMP( statut='o', typ='TXM',), - #), - ) - - - - -def FactTurbulence(statut): - return FACT (statut=statut, - TurbulenceModellingType = SIMP(typ='TXM', statut='o', into =['No Model (DNS)', - 'Spatial filtering (LES)', 'One-point moment', 'One-point PDF']) , - bloc_one_point = BLOC(condition= "TurbulenceModellingType == 'One-point moment'", - RANSModel = SIMP(statut="o", typ="TXM", into=['Turbulent-Viscosity Model(TVM)', 'Reynolds Stress Model (RSM)']), - bloc_TVM = BLOC(condition= "RANSModel == 'Turbulent-Viscosity Model(TVM)'", - TVMChoice = SIMP(typ='TXM', statut='o', into=['k-epsilon', 'k-omega']), - ), # fin bloc_TVM - bloc_RSM = BLOC(condition = "RANSModel == 'Reynolds Stress Model (RSM)'", - RSMChoice = SIMP(typ='TXM', statut='o', into=['Rotta', 'LRR-IP','LRR-QI','SSG']), - ), # fin bloc_RSM - ), # fin bloc_one_point - bloc_one_spatial = BLOC(condition = "TurbulenceModellingType == 'Spatial filtering (LES)'", - ChoiceOfApproach = SIMP(typ='TXM', statut='o', into=['Field-based LES', 'Filtered Density Function (FDF)']), - SubgridScaleModel = SIMP(typ='TXM', statut='o', into=['No SGS', 'Smagorinsky','Dynamical model', 'SGS Transport Equations']), - ), # fin bloc_one_spatial - bloc_one_point_pdf = BLOC(condition = "TurbulenceModellingType == 'One-point PDF'", - ChoiceOfApproach = SIMP(typ='TXM', statut='o', into=['One-point Eulerian PDF', 'One-particle Lagrangian PDF']), - bloc_lagrangian_pdf=BLOC(condition = "ChoiceOfApproach == 'One-particle Lagrangian PDF'", - StochasticModel = SIMP(typ='TXM', statut='o', into=['Langevin','Other'], defaut='Langevin'), - )# fin lagrangian - ), # fin bloc_one_point_pdf - bloc_no_model = BLOC(condition = "TurbulenceModellingType == 'No Model (DNS)'", - ChoiceOfApproach = SIMP(statut='o', typ='TXM', into=['Field-based DNS', 'N-Particle Method']), - bloc_Field = BLOC(condition = "ChoiceOfApproach == 'Field-based DNS'", - NumericalMethod=SIMP(statut='o', typ='TXM', into=['FV', 'Spectral Method']), - ),# fin bloc_Field - bloc_N_particle = BLOC(condition = "ChoiceOfApproach == 'N-Particle Method'", - NumericalMethod=SIMP(statut='o', typ='TXM', into=['SPH', 'Vortex Method']), - ),# fin bloc_N_particle - ), # fin bloc_no_model -)# fin du bloc return de la fonction factTurbulence - -def Particle(cardinalite) : - return FACT (statut='o', max=cardinalite, - ParticleNature = SIMP( statut='o', typ='TXM', into=['Atoms', 'Molecules', 'Dissipative', 'Fluid Particle', 'Discrete Particle']), - b_Atom = BLOC( condition='ParticleNature == "Atoms"', - AtomsName = SIMP( statut='o', typ=(userAtom,'createObject'),), - Atom = FACT (statut ='o', max= '**', - ChemicalSpecie = SIMP( statut='o', typ='TXM'), - Number = SIMP (statut ='o', typ = 'I'), - ElectricCharge = SIMP( statut='o', typ='R'), - MagneticMoment = SIMP( statut='o', typ='R'), - Size = SIMP( statut='f', typ='R'), # relevant ? - ), - ), - b_Molecule = BLOC( condition='ParticleNature == "Molecules"', - MoleculeName = SIMP( statut='o', typ=(userMolecule,'createObject'),), - ChemicalSpecie = FACT ( max='**', statut='o', - ChemicalSpecieName = SIMP( statut='o', typ=userAtom), - Proportion = SIMP( statut='o', typ='R', val_max =1), - ), - ElectricCharge = SIMP( statut='o', typ='R'), - MagneticMoment = SIMP( statut='o', typ='R'), - Shape = SIMP( statut='f', typ='TXM', into=['Linear', 'Trigonal Planar', 'Angular', 'Tetrahedral', 'Octahedral', 'Trigonal pyramid', 'Other']), - ), - b_Dissipative = BLOC( condition='ParticleNature == "Dissipative"', - DPDName = SIMP( statut='o', typ=(userDPD,'createObject'),), - BondedParticles = SIMP(statut="o", typ=bool, defaut=False), - ), - b_Discrete = BLOC( condition='ParticleNature == "Discrete Particle"', - DiscreteParticleName = SIMP(statut='o', typ=(userDiscrete,'createObject'),), - TypeOfDiscreteParticle = SIMP( statut='o', typ='TXM', into=['Solid', 'Droplets', 'Bubbles','Bio Organism'],), - b_TypeDP_Solid = BLOC( condition ='TypeOfDiscreteParticle == "Solid"', - TypeOfSolid = SIMP( statut='o', typ='TXM', into=['Primary Particle', 'Assemblage / Aggregate'], position = 'global'), - b_SolidPrimary = BLOC( condition='TypeOfSolid == "Primary Particle"', - ), - b_SolidAggregate = BLOC( condition='TypeOfSolid == "Assemblage / Aggregate"', - ), - ), - b_TypeBio_Solid = BLOC( condition='TypeOfDiscreteParticle == "Bio Organism"', - TypeOfOrganism = SIMP( statut='o', typ='TXM', into=['Unicellular', 'Multicellular']), - b_Unicellular = BLOC( condition ='TypeOfOrganism=="Unicellular"', - Unicellular = SIMP( statut='o', typ='TXM', into=["Bactaria"], defaut='Bactaria') - ), - b_Multicellular = BLOC( condition ='TypeOfOrganism=="Multicellular"', - Multicellular = SIMP( statut='o', typ='TXM', into=["Animal","Fongus","Plant"]) - ), - ), # b_TypeBio_Solid - Properties = FACT ( statut ='o', - Geometry = SIMP( statut='o', typ='TXM', into=['Sphere', 'Ellopsoids', 'Other Shape']), - b_geom_Sphere = BLOC( condition = 'Geometry == "Sphere"', - ParticleRadius = SIMP( statut='o', typ ='R', val_min = 0), - ), - Weight = FACT (statut = 'o', - Mass = SIMP( statut='o', typ ='R', val_min = 0), - Density = SIMP( statut='o', typ ='R', val_min = 0), - ), - Mechanical = SIMP( statut='o', typ='TXM', into=['Rigid', 'Flexible', 'Deformable']), - b_SolidAggregate = BLOC( condition='TypeOfSolid == "Assemblage / Aggregate"', - Morphological = FACT (statut = 'o', - Consigne = SIMP(statut="o", homo="information", typ="TXM", defaut='Choose optional properties'), - FractalDimension = SIMP( statut='f', typ='R'), - NumberOfPrimaryParticle = SIMP (statut ='f',typ='I'), - EquivalentSize = SIMP( statut='f', typ='R'), - Porosoty = SIMP( statut='f', typ='R'), - ), # Morphological - ), # b_SolidAggregate - ElectroMagnetic = FACT (statut = 'f', - ElectricCharge = SIMP( statut='o', typ='R'), - MagneticMoment = SIMP( statut='o', typ='R'), - ), - b_SolidAggregateBonded = BLOC( condition='TypeOfSolid == "Assemblage / Aggregate"', - BondedParticles = FACT( - ListOfBondedParticles = SIMP(statut='o', max='**', typ = userParticle), - ), - ), - ), # Properties - ), # b_Discrete -############################ - - List_Of_Bonded_Particles = FACT( statut='f', - # -------------------------------------------# - Bonded_Particles = FACT( statut='o', max = "**", - Name_Of_Bonded_Particles = SIMP( statut='o', typ='TXM'), - Species_in_Particle = SIMP( statut='o', min=2, typ='TXM' , max = "**"), - ), # Bonded_Particles - ), # List_Of_Bonded_Particles - - List_Of_Interactions = FACT( statut='o', max = "**", - # --------------------------------------------------# - - Bonded_Interactions = FACT( statut='o', max = "**", - - #Type_Of_Bonded_Interaction = SIMP( statut='o', typ='TXM', into=['No', 'Covalent Bond Length', 'FENE', 'Covalent Bond Angle', 'Dihedral Angles', 'Improper Dihedral', 'Frozen Motion' ], defaut='No', position='global'), - Type_Of_Bonded_Interaction = SIMP( statut='o', typ='TXM', into=['No', 'Covalent Bond Length', 'FENE', 'Covalent Bond Angle', 'Dihedral Angles', 'Improper Dihedral', 'Frozen Motion' ], defaut='No'), - - #La saisie de l'ensemble des liaisons d'un meme type peut se faire ds le meme bloc (soit ds un fichier, soit manuelle) - #Une seule valeur de distante? est a saisir pour l'ensemble - # bloc_covalent_1 = BLOC( condition = 'Type_Of_Bonded_Interaction in ("Covalent Bond Length","FENE")', - # ), # fin bloc_covalent_1 - bloc_covalent_length = BLOC( condition = 'Type_Of_Bonded_Interaction == "Covalent Bond Length"', - Interaction_Length_Parameters = FACT( statut='o', max="**", - Apply_To_Bonded_Particles = SIMP( statut='o', max='**', typ='TXM'), - Spring_Stifness = SIMP( statut='o', typ='R', val_min=0), - Mean_Bond_Length = SIMP( statut='o', typ='R', val_min=0), - ), # fin Interation_Length_Parameters - ), # fin Bond_Length_Parameters - bloc_covalent_angle = BLOC( condition = 'Type_Of_Bonded_Interaction == "Covalent Bond Angle"', - Interaction_Angles_Parameters = FACT( statut='o', max="**", - Apply_To_Bonded_Particles = SIMP( statut='o', max='**', typ='TXM'), - Spring_Stifness = SIMP( statut='o', typ='R', val_min=0), - Mean_Bond_Angle = SIMP( statut='o', typ='R', val_min=0), - ), # fin Interation_Angles_Parameters - ), # fin bloc_covalent_length_and_angle - - #bloc_covalent_length_and_angle = BLOC( condition = 'Type_Of_Bonded_Interaction == "Covalent Bond Length" or Type_Of_Bonded_Interaction == "Covalent Bond Angle"', - # Bond_Parameters = FACT( statut='o', max="**", - # Apply_To_Bonded_Particles = SIMP( statut='o', max='**', typ='TXM'), - # Spring_Stifness = SIMP( statut='o', typ='R', val_min=0), - # bloc_covalent_length = BLOC( condition = 'Type_Of_Bonded_Interaction == "Covalent Bond Length"', - # Mean_Bond_Length = SIMP( statut='o', typ='R', val_min=0), - # ), # fin Bond_Length_Parameters - # bloc_covalent_angle = BLOC( condition = 'Type_Of_Bonded_Interaction == "Covalent Bond Angle"', - # Mean_Bond_Angle = SIMP( statut='o', typ='R', val_min=0), - # ), # fin Bond_Length_Parameters - # ), # fin Bond_Length_Parameters - #), # fin bloc_covalent_length_and_angle - - bloc_FENE = BLOC( condition = 'Type_Of_Bonded_Interaction == "FENE"', - Applies_To_All_Particles = SIMP( statut='o', typ=bool, defaut=True), - bloc_not_on_all = BLOC( condition = 'Applies_To_All_Particles == False', - FENE_Parameters = FACT( statut='o', max="**", - Species_Pair = SIMP( statut='o', max=2, typ='TXM'), - Spring_Constant_H = SIMP( statut='o', typ='R', val_min=0), - LMax = SIMP( statut='o', typ='R', val_min=0), - ), # fin FENE_Parameters - ), # fin bloc_not_on_all - bloc_on_all = BLOC( condition = 'Applies_To_All_Particles == True', - Spring_Constant_H = SIMP( statut='o', typ='R', val_min=0), - LMax = SIMP( statut='o', typ='R', val_min=0), - ), # fin bloc_on_all - ), # fin bloc_FENE - - bloc_le_reste = BLOC( condition = 'Type_Of_Bonded_Interaction in ("Dihedral Angles", "Improper Dihedral", "Frozen Motion")', - Particle_Name = SIMP( statut="f", typ='TXM'), - #Consigne = SIMP( statut="o", homo="information", typ="TXM", defaut='Not Implemented Yet'), - - ), - ), # fin Bonded_Interaction - - # ------------------------------- # - - Unbonded_Interactions = FACT( statut='o', max= "**", - - Type_Of_Unbonded_Interaction = SIMP( statut='o', typ='TXM', into=['No', 'electro_magnetic', 'Repulsion_and_VdW', 'Soft_Potentiel', ], defaut='No', position='global',fenetreIhm='menuDeroulant'), - - bloc_elec = BLOC( condition = 'Type_Of_Unbonded_Interaction == "electro_magnetic"', - Permittivity = SIMP( statut='o', typ='R', position='global_jdc'), - Magnetic = SIMP( statut='o', typ=bool, defaut=False,), - bloc_magnetic = BLOC( condition = 'Magnetic == True', - Permability = SIMP( statut='o', typ='R'), - ), # bloc_magnetic - ),# fin bloc_elec - - bloc_VdW = BLOC( condition = 'Type_Of_Unbonded_Interaction == "Repulsion_and_VdW"', - Species_Pair_Parameters = FACT( statut='o', max="**", - Type_Repulsion_and_VdW = SIMP( statut='o', typ='TXM', into = [ 'Lennard_Jones', 'Hard_sphere_model']), - Species_Pair = SIMP( statut='o', max=2, typ='TXM'), - VdW_Radius = SIMP( statut='o', typ='R', val_min=0), - b_Lennard = BLOC( condition = "Type_Repulsion_and_VdW == 'Lennard_Jones'", - Depth_Of_The_Potential_Well = SIMP( statut='o', typ='R', val_min=0), - ), # fin b_Lennard - ), # fin Species_Pair_Parameters - ), # bloc_VdW - - b_Param_Soft_Potentiel = BLOC( condition = "Type_Of_Unbonded_Interaction == 'Soft_Potentiel'", - Groot_Warren_Repulsion = SIMP( statut='o', typ='R', defaut=25.0, val_min=0), - Groot_Warren_Cutoff = SIMP( statut='o', typ='R', defaut=1.0, val_min=0), - Drag_Coefficient = SIMP( statut='o', typ='R'), # les 2 valent 0 pour MD - Drag_Force_Cutoff = SIMP( statut='o', typ='R', val_min=0), - ), # b_Param_Soft_Potentiel - - ), # fin UnBonded_Interactions - - # ------------------------------- # - - External_Field_Interaction = FACT( statut='o', max= "**", - Type_Of_Interaction_With_An_External_Field = SIMP( statut='o', typ='TXM', into=['No','gravitational field','electric field','magnetic field', 'Hydrodynamic_Field'], fenetreIhm='menuDeroulant', defaut ='No'), - b_gravite = BLOC( condition = 'Type_Of_Interaction_With_An_External_Field=="gravitational field"', - G = SIMP( statut='o', typ='R', defaut=9.81), - ), - b_elect = BLOC( condition = 'Type_Of_Interaction_With_An_External_Field=="electric field"', - Electric_Field = champ('E', ('E',), 1), - ), - b_magnetic = BLOC( condition = 'Type_Of_Interaction_With_An_External_Field=="magnetic field"', - Magnetic_Field = champ('B', ('B',), 1), - ), - b_hydrodynamic = BLOC( condition = 'Type_Of_Interaction_With_An_External_Field=="hydrodynamic field"', - Hydrodynamic_Field = champ('U', ('U',), 1), - ), - b_External_Field_Interaction = BLOC( condition = 'Type_Of_Interaction_With_An_External_Field != "No"', - Field_Applies_On_All_Species = SIMP( statut='o', typ=bool, defaut=True), - b_porte_espece = BLOC( condition = 'Field_Applies_On_All_Species == False ', - Species_List = SIMP( statut='o', typ='TXM', max= '**'), # faire un typ = "espece" - ), - ), # fin b_External_Field_Interaction - ), # fin Interaction_External_Field - - ), # fin List_Of_Interactions - -############################ - ) - -def bloc_CPS(): - return BLOC(condition = 'SystemType == "Classical particle system"', - Particle = Particle('**'), -) - -def bloc_FluideMacro(): - return BLOC(condition = 'SystemType == "Continuum system"', - FluidComplexe = SIMP(typ=bool, statut='o', defaut = False,), - - FlowNature = SIMP(typ='TXM', statut='o', into =['Laminar', 'Turbulent'], position='global'), - bloc_FlowNature_Turbulent = BLOC(condition = ' FlowNature == "Turbulent"', - TurbulenceForFlowDynamics = FactTurbulence('o'), - ), #------ fin bloc_FlowNature_Turbulent - - -# ---------------------- Effets thermiques - - Thermal = FACT (statut ='o', - ThermalEffects = SIMP(typ='TXM', statut='o', into =['Non thermal', - 'No effect on flow dynamics', 'Effect on flow dynamics'], defaut='Non thermal'), - - bloc_NonThermalEffects = BLOC(condition = ' ThermalEffects == "Non thermal" or ThermalEffects == "No effect on flow dynamics"', - DensityEquationOfState = SIMP(typ='TXM', statut='o', into =['Constant density'], defaut = 'Constant density'), - ), # fin bloc_NonThermalEffects - - bloc_ThermalEffects_Active = BLOC(condition = ' ThermalEffects == "Effect on flow dynamics"', - DensityEquationOfState = SIMP(typ='TXM', statut='o', into =['Variable density', 'Compressible']), -# PNJPM est ce suffisant ? - ), # fin bloc_ThermalEffects_Active - bloc_ThermalEffects = BLOC(condition = ' ThermalEffects == "Effect on flow dynamics" or ThermalEffects == "No effect on flow dynamics"', - bloc_scalar_thermal_flux = BLOC (condition = "FlowNature == 'Turbulent'", - ThermalFluxModel = FactTurbulence('f'), - ),# fin bloc_scalar_thermal_flux - WithChemicalReactions = SIMP(typ=bool, statut ='o', defaut = False), - ), # fin bloc_ThermalEffects - ),# fin Fact Thermal - -# ---------------------- Scalaire additional - bloc_scalar_FluidTurbulentOrLaminar = BLOC(condition = "(FluidComplexe == False and FlowNature == 'Turbulent') or (FluidComplexe == False and FlowNature == 'Laminar')", - AdditionalScalars = FACT(statut = 'f', - Scalar = FACT(statut = 'o', max ='**', - Name = SIMP(typ='TXM', statut='o',), - bloc_scalar_FluidTurbulentandNonComplexe = BLOC (condition = "FlowNature == 'Turbulent'", - ScalarFluxModel = FactTurbulence('f'), - ) # bloc_scalar_FluidTurbulentandNonComplexe - ),# Scalar - ),# AdditionalScalars - ), # fin FluidTurbulentandNonComplexe - #bloc_scalar_FluidLaminaireandNonComplexe = BLOC (condition = "FluidComplexe == False and FlowNature == 'Laminar'", - # AdditionalScalars = FACT (statut = 'o', - # Scalar = FACT ( statut = 'f', max ='**', - # Name = SIMP(typ='TXM', statut='o',), - # ),# Scalar - # ),# AdditionalScalars - #), # fin FluidLaminaireandNonComplexe - bloc_FlowNature_Turbulent_For_Scalars = BLOC(condition = ' FlowNature == "Turbulent"', - ScalarTurbulenceModelling = FactTurbulence('f'), - ), - # il faut une validation de coherence entre l existence de tous les turbulencesModelling - )# fin bloc_FluideMacro - -JdC = JDC_CATA ( - code = 'Vimmp', - # faire un validateur qui verifie que si on active reactions chimiques il faut que les masses molaires soient rentrees -) - -Component = OPER(nom='Component', sd_prod=composant, - SystemType = SIMP(typ='TXM', into=['Quantum system', 'Classical particle system', 'Continuum system'], statut='o',position='global'), - PhysicalDescription = FACT(statut = 'o', - b_FluideMacro = bloc_FluideMacro(), - b_bloc_CPS = bloc_CPS(), - ), - b_ModeleNumerique_quantum = prepareBlocSystemType('Quantum system'), - b_ModeleNumerique_classical = prepareBlocSystemType('Classical particle system'), - b_ModeleNumerique_continuum = prepareBlocSystemType('Continuum system'), -) - -Species = PROC(nom='Species', - Specie = FACT( statut='o', max ="**", - Name = SIMP( statut='o', typ=(especeChimique,'createObject') ), - masse_molaire = SIMP( statut='f', typ='R',), - ) -) - -#Physical_Description = PROC(nom='Physical_Description', -# Component = SIMP(typ=composant, statut ='o',), -## bloc_FluideMacro = BLOC(condition = 'systemType == "Continuum system"',) -## faire un validateur qui verifie que si on active reactions chimiques il faut que les masses molaires soient rentrees -# -## ------------------------------------ Bloc FluidMacro ---------------------------------- -# bloc_FluideMacro = BLOC(condition = 'getEficasAttribut(Component,"SystemType") == "Continuum system"', -# #bloc_FluideMacro = BLOC(condition = '"Fields" in getEficasListOfAttributs(Component,["NumericalModel","ModelType"])' , -# # n est ce pas plutot un des modelNumrerique vaut Field ? ou faut-il les 2 -# FluidComplexe = SIMP(typ=bool, statut='o', defaut = False), -# -# FlowNature = SIMP(typ='TXM', statut='o', into =['Laminar', 'Turbulent'], position='global'), -## ----------- FlowNature Turbulent -# bloc_FlowNature_Turbulent = BLOC(condition = ' FlowNature == "Turbulent"', -# TurbulenceForFlowDynamics = FactTurbulence('o'), -### PNPN a faire -## # controle de coherence entre les modeles de turbulences et les modeles numeriques choisis ), -## # Consigne = SIMP(statut ="o", homo="information", typ="TXM",defaut ='Incoherence') -## # il faut verifier la coherence entre le model de turbulence et le model type ), -## -# ), #------ fin bloc_FlowNature_Turbulent -# -# -## ---------------------- Effets thermiques -# -# Thermal = FACT (statut ='o', -# ThermalEffects = SIMP(typ='TXM', statut='o', into =['Non thermal', -# 'No effect on flow dynamics', 'Effect on flow dynamics'], defaut='Non thermal'), -# -# bloc_NonThermalEffects = BLOC(condition = ' ThermalEffects == "Non thermal" or ThermalEffects == "No effect on flow dynamics"', -# DensityEquationOfState = SIMP(typ='TXM', statut='o', into =['Constant density'], defaut = 'Constant density'), -# ), # fin bloc_NonThermalEffects -# -# bloc_ThermalEffects_Active = BLOC(condition = ' ThermalEffects == "Effect on flow dynamics"', -# DensityEquationOfState = SIMP(typ='TXM', statut='o', into =['Variable density', 'Compressible']), -## PNJPM est ce suffisant ? -# ), # fin bloc_ThermalEffects_Active -# bloc_ThermalEffects = BLOC(condition = ' ThermalEffects == "Effect on flow dynamics" or ThermalEffects == "No effect on flow dynamics"', -# bloc_scalar_thermal_flux = BLOC (condition = "FlowNature == 'Turbulent'", -# ThermalFluxModel = FactTurbulence('f'), -# ),# fin bloc_scalar_thermal_flux -# WithChemicalReactions = SIMP(typ=bool, statut ='o', defaut = False), -# ), # fin bloc_ThermalEffects -# ),# fin Fact Thermal -# -## ---------------------- Scalaire additional -# bloc_scalar_FluidTurbulentandNonComplexe = BLOC(condition = "FluidComplexe == False and FlowNature == 'Turbulent'", -# AdditionalScalars = FACT(statut = 'o', -# Scalar = FACT(statut = 'f', max ='**', -# Name = SIMP(typ='TXM', statut='o',), -# ScalarFluxModel = FactTurbulence('f'), -# ),# Scalar -# ),# AdditionalScalars -# ), # fin FluidTurbulentandNonComplexe -# bloc_scalar_FluidLaminaireandNonComplexe = BLOC (condition = "FluidComplexe == False and FlowNature == 'Laminar'", -# AdditionalScalars = FACT (statut = 'o', -# Scalar = FACT ( statut = 'f', max ='**', -# Name = SIMP(typ='TXM', statut='o',), -# ),# Scalar -# ),# AdditionalScalars -# ), # fin FluidLaminaireandNonComplexe -# bloc_FlowNature_Turbulent_For_Scalars = BLOC(condition = ' FlowNature == "Turbulent"', -# ScalarTurbulenceModelling = FactTurbulence('f'), -# ), -# # il faut une validation de coherence entre l existence de tous les turbulencesModelling -# ),# fin bloc_FluideMacro -#) - -Interactions = PROC(nom='Interactions', - InteractionComposant = FACT( max = '**', - origine = SIMP(typ=modeleNumDuCompo, statut='o'), - destination = SIMP(typ=modeleNumDuCompo, statut='o'), -# PN a derouler avec une fonction - monBloc_FFDP = BLOC ( - condition = 'getEficasAttribut(origine,"ModelType") == "Fields" and getEficasAttribut(destination,"ModelType") == "Particles"' , - termeLE = SIMP(typ='TXM', statut='o', into = dictTermeLE['Fields','Particles'],fenetreIhm='menuDeroulant'), - ), - monBloc_DPFF = BLOC ( - condition = 'getEficasAttribut(origine,"ModelType") == "Particles" and getEficasAttribut(destination,"ModelType") == "Fields"' , - termeLE = SIMP(typ='TXM', statut='o', into = dictTermeLE['Particles','Fields'],fenetreIhm='menuDeroulant'), - ), - monBloc_Saturne_Fluent = BLOC ( - condition = 'getEficasAttribut(origine,"Solver") == "Code_Saturne" and getEficasAttribut(destination,"Solver") == "Fluent"' , - Format = SIMP(typ='TXM', statut='o', into = calculCommun( "Code_Saturne", "Fluent",dictCodeFormat) ), - ), - monBloc_Saturne_OpenFoam = BLOC ( - condition = 'getEficasAttribut(origine,"Solver") == "Code_Saturne" and getEficasAttribut(destination,"Solver") == "OpenFOAM"' , - Format = SIMP(typ='TXM', statut='o', into = calculCommun( "Code_Saturne", "OpenFOAM",dictCodeFormat) ), - monBloc_conversion = BLOC (condition = 'Format == "Use converter"', - converter = SIMP(typ='TXM', statut='o', into = dictCodeConvertisseur['Saturne', 'OpenFOAM']), - ), - ), - ), -) - -dict_condition={'NumericalMethod' : ('Interactions', 'Component'), -# 'TypeOfSolid' : ('Component',) -} - -Simulated_Time_Lapse = PROC( nom ="Simulated_Time_Lapse", - Initial_Time = SIMP( statut='o', typ='R'), - Duration = SIMP( statut='o', typ='R'), -) -# -Geometric_Domain= OPER( nom='Geometric_Domain', sd_prod=geometricDomain, - Shape = SIMP( statut='o', typ='TXM', into=['Simplified Shape', 'CAD or Mesh']), - b_Shape = BLOC( condition = 'Shape == "Simplified Shape"', - Box = SIMP( statut='o', typ='TXM', into=['Cube', 'Sphere','Cylinder'] ), - b_Cube = BLOC( condition = 'Box == "Cube"', - #Taille_Box_Englobante = SIMP( statut='o', typ='R', max=3, min =3) - # derait etre un Tuple(3) mais a faire apres la projection - Size_Of_Bounding_Box = SIMP( statut='o', typ=Tuple(3), validators=VerifTypeTuple(('R','R','R'),),) - ), # fin b_Cube - b_Boule = BLOC( condition = 'Box == "Sphere"', - Center = SIMP( statut='o', typ='R', max=3, min =3), - # devrait etre un Tuple(3) mais a faire apres la projection - ),# fin b_Boule - b_Cylinder = BLOC( condition = 'Box == "Cylinder"', - Heigth = SIMP( statut="o", typ='R', val_min=0.0, ang='Nanotube length [m]'), - ),# fin b_Tube - b_Boule_ou_Cylinder = BLOC( condition = 'Box == "Sphere" or Box == "Cylinder"', - Radius = SIMP( statut='o', typ='R', val_min=0.0, ang='radius length [m]') , - ),# fin b_Boule_ouCylinder - ), # fin b_Shape -# - b_CAO = creeBlocPourLesFichiers( "Shape == 'CAD or Mesh'",'Domain_File', ['txt','med','I-deas', 'Gmsh', 'top',]), - - Surface=SIMP( statut='o', typ='TXM',max='**',), -) # fin Geometric_Domain - - - - diff --git a/Vimmp/cata_CSAndCPS_v00_ref_test_driver_0.comm b/Vimmp/cata_CSAndCPS_v00_ref_test_driver_0.comm deleted file mode 100644 index 9082467f..00000000 --- a/Vimmp/cata_CSAndCPS_v00_ref_test_driver_0.comm +++ /dev/null @@ -1,42 +0,0 @@ -P1=userDiscrete() -CS_num_FV=modeleNumDuCompo() -CS_num_CFD_Discrete_Particles=modeleNumDuCompo() - -FluidComponent=Component(SystemType='Continuum system', - PhysicalDescription=_F(FluidComplexe=False, - FlowNature='Turbulent', - TurbulenceForFlowDynamics=_F(TurbulenceModellingType='One-point moment', - RANSModel='Turbulent-Viscosity Model(TVM)', - TVMChoice='k-epsilon',), - Thermal=_F(ThermalEffects='Non thermal', - DensityEquationOfState='Constant density',),), - NumericalModel=_F(Identifier=CS_num_FV, - ModelType='Fields', - NumericalMethod='FV', - Solver='Code_Saturne',),); - -PartComponent=Component(SystemType='Classical particle system', - PhysicalDescription=_F(Particle=_F(ParticleNature='Discrete Particle', - DiscreteParticleName=P1, - TypeOfDiscreteParticle='Solid', - TypeOfSolid='Primary Particle', - Properties=_F(Geometry='Sphere', - ParticleRadius=99.0, - Weight=_F(Mass=99.0, - Density=99.0,), - Mechanical='Rigid',), - List_Of_Interactions=_F(Bonded_Interactions=_F( - Type_Of_Bonded_Interaction='No',), - Unbonded_Interactions=_F( - Type_Of_Unbonded_Interaction='No',), - External_Field_Interaction=_F( - Type_Of_Interaction_With_An_External_Field='No',),),),), - NumericalModel=_F(Identifier=CS_num_CFD_Discrete_Particles, - ModelType='Particles', - NumericalMethod='CFD_Discrete_Particles', - Solver='Code_Saturne',),); - -Interactions(InteractionComposant=_F(origine=CS_num_FV, - destination=CS_num_CFD_Discrete_Particles, - termeLE='Fluid_Velocity_Field',),); -#CHECKSUM:1857eecf6659efa4f3ff5a7011a14443 -:FIN CHECKSUM diff --git a/Vimmp/cata_CSAndCPS_v11.py b/Vimmp/cata_CSAndCPS_v11.py deleted file mode 100644 index 3bb03db8..00000000 --- a/Vimmp/cata_CSAndCPS_v11.py +++ /dev/null @@ -1,1195 +0,0 @@ -from Accas import * - -class composant(ASSD):pass -class mapper(ASSD):pass -class converter(mapper):pass -class modeleNumDuCompo(UserASSD):pass -class especeChimique(UserASSD):pass -class userParticle(UserASSD) :pass -class userAtom(userParticle) :pass -class userMolecule(userParticle) :pass -class userDiscrete(userParticle) :pass -class userDPD(userParticle) :pass - -class spatialRegion(UserASSD):pass -class cadShape(spatialRegion):pass -#class meshGroup(spatialRegion,UserASSDMultiple):pass -class meshGroup(UserASSDMultiple):pass -class meshIdentifier(spatialRegion):pass -class systemGeometry(UserASSD):pass -class simulatedTime(UserASSD):pass -class constitutiveRelation(UserASSD):pass -class interaction(UserASSD):pass - -class stateVariable(UserASSDMultiple) : pass -class scalar(stateVariable):pass -class dynamicVariable(stateVariable):pass - - -# PN a faire --> ajouter un MC modeleNumerique (apres avoir renomme le modeleNumerique actuel en classe de modele numerique) -# et le dictionnaire d apres -# dictTypModNumModNum = { -# ('Continuum system','Particles') : ('SPH','Lagrangian one-fluid-particle pdf'), -# ('Continuum system','Fields') : ('FV','FEM', 'Spectral method'), -# ('Classical particle system','Particles') : ('MD', 'DPD', 'SDPD','SPH','CFD_Discrete_Particles'), -# ('Classical particle system','Fields') : ('LBM',), -# ('Quantum system','Particles') : ('Particle method',), -# ('Quantum system','Fields') : ('Wave',), -# } - -dictTypModNumModNum = { - ('Continuum system','N-Particle_Method') : ('SPH' , 'Lagrangian one-fluid-particle pdf'), #TODO 'N-Particle_Method --> N-Particle_Method - ('Continuum system','Field-based') : ('FV' , 'FEM', 'Spectral method'), - ('Classical particle system','N-Particle_Method') : ('MD' , 'DPD', 'SDPD','SPH','CFD_Discrete_N-Particle_Method'), - ('Classical particle system','Field-based') : ('LBM' ,), - ('Quantum system','N-Particle_Method') : ('Particle method',), - ('Quantum system','Field-based') : ('Wave',), -} - -dictCodeModeleNumerique = { - 'Code_Saturne' : ('Lagrangian one-fluid-particle pdf', 'FV', 'CFD_Discrete_N-Particle_Method',), - 'Fluent' : ('FV',), - 'Culgi Package': (), - 'DEM_SD' : ('Lagrangian one-fluid-particle pdf', 'FV', 'CFD_Discrete_N-Particle_Method',), - 'DFTB+' : ('density functional tight binding method',), - 'DL_MESO_DPD' : ('Lagrangian one-fluid-particle pdf', 'FV', 'CFD_Discrete_N-Particle_Method',), - 'DL_MESO_LBE' : ('Lagrangian one-fluid-particle pdf', 'FV', 'CFD_Discrete_N-Particle_Method',), - 'DL_POLY_4' : ('Lagrangian one-fluid-particle pdf', 'FV', 'CFD_Discrete_N-Particle_Method',), - 'GROMACS' : ('Lagrangian one-fluid-particle pdf', 'FV', 'CFD_Discrete_N-Particle_Method',), - 'GROMACS_LS' : ('Lagrangian one-fluid-particle pdf', 'FV', 'CFD_Discrete_N-Particle_Method',), - 'LAMMPS' : ('Lagrangian one-fluid-particle pdf', 'FV', 'CFD_Discrete_N-Particle_Method',), - 'NWChem' : ('Lagrangian one-fluid-particle pdf', 'FV', 'CFD_Discrete_N-Particle_Method',), - 'OpenFOAM' : ('Lagrangian one-fluid-particle pdf', 'FV', 'CFD_Discrete_N-Particle_Method',), - 'Quantum EXPRESSO' : ('Particle method', 'Wave',), - 'RHEO_AGGRATE' : ('Particle method', 'Wave',), - 'RHEO_DROP' : ('Particle method', 'Wave',), - 'STAR_CCM+' : ('FV', 'Particles',), - 'Code Nill' : ('Spectral method', ), -} -# Le Code Nill est ajouté en dur au Solver - -dictCodeFormat = { - 'Code_Saturne' : ('Med', 'cgns', 'msh', 'des', 'unv', ), - 'Culgi Package': ('cof',), - 'DEM_SD' : ('geo', 'ascii'), - 'DFTB+' : ('geo', 'ascii'), - 'Fluent' : ('FluentFormat', ), - 'OpenFOAM' : ('OpenFoamFormat', 'Med', ), -} - -dictMapperFormat = { - 'Med Coupling' : ('Med',), - 'Gmsh' : ('Med', 'OpenFoamFormat'), -} - -dictTermeLE = { - ('Fields','Particles') : ('Fluid_Velocity_Field', - 'Fluid_Temperature_Field', - 'Fluid_Species_Mass_Fraction_Fluid',), - ('Particles','Fields') : ('Fluid_Particle_Momentum_Exchange_Field', - 'Fluid_Particle_Thermal_Exchange_Field', - 'Lagrangian one-particle pdfFluid_Particle_Mass_Source_Field', - 'Particle_Volumetric_Concentration_Modified_Fluid_Viscosity', - 'Particle_Extra_Stress_Tensor'), - ('Particles','Particles') : ('Pas encore fait'), - ('Fields','Fields') : ('Pas encore fait'), -} - -dictCodeConvertisseur = { - ('Saturne', 'OpenFOAM') : ('gmsh', 'Saturne2CDM and CDM2OpenFoam'), - ('Saturne', 'Fluent') : ('Saturne2CDM and CDM2Fluent'), - ('Fluent', 'OpenFOAM') : ('Fluent2CDM and CDM2OpenFoam'), -} - -listeFormatGenerique =['Med', 'Cgns', 'Gmsh', ] - -#---------------------------------------- -def prepareBlocSystemType(systemType) : -#---------------------------------------- - condition = "SystemType == '" + systemType + "'" - Identifier = SIMP(statut='o', typ=(modeleNumDuCompo,'createObject'),) - SimulatedTimeLapse = SIMP(statut ='o', typ = simulatedTime) - # ModelType = SIMP(statut='o', typ='TXM', into = ('Particles', 'Fields'), position='inGetAttribut') - ChoiceOfApproach = SIMP(statut='o', typ='TXM', into=['Field-based', 'N-Particle_Method'], position='inGetAttribut') - - dicoArgs={} - - for typeMod in ('Field-based', 'N-Particle_Method'): - conditionType = "ChoiceOfApproach == '" + typeMod + "'" - NumericalMethod = SIMP(statut='o',typ='TXM', into=dictTypModNumModNum[systemType, typeMod], - position='global', intoXML=allValueInDict(dictTypModNumModNum)) - dicoBloc = {} - for modeleNumerique in list(dictTypModNumModNum[systemType,typeMod]): - conditionNum = "NumericalMethod == '" + modeleNumerique + "'" - setCode = set() - for code in dictCodeModeleNumerique.keys(): - if modeleNumerique in dictCodeModeleNumerique[code]: setCode.add(code) - # print('------------- conditionType -------->',conditionType) - if setCode ==set(): setCode.add('Code Nill') - Solver = SIMP(statut='o', typ='TXM', into=list(setCode), intoXML=list(dictCodeModeleNumerique.keys()) ) - monNomBloc = 'bloc_ModelName_' + modeleNumerique.replace(' ','_') #les noms de blocs ne peuvent pas avoir de blanc ! - if setCode !=set(): dicoBloc[monNomBloc]=BLOC(condition=conditionNum, nomXML='b_ModelName',Solver=Solver) - dicoArgs['blocModelType'+typeMod] = BLOC(condition=conditionType, NumericalMethod=NumericalMethod, **dicoBloc) - - blocMeshRef = BLOC(condition = '( (ChoiceOfApproach == "Field-based") and (NumericalMethod == "FV") ) or ' - '( (ChoiceOfApproach == "N-Particle_Method") and (NumericalMethod == "CFD_Discrete_N-Particle_Method") )', - MeshIdentifiers = SIMP(statut ='o', max ='**', typ = meshIdentifier, - metAJour=(('ApplyOnGroups', - 'self.etape.getChild("BoundaryConditions").getChild("BoundaryCondition")'),), - ),) - dicoArgs['blocMeshRef'] = blocMeshRef - NumericalModel = FACT(statut='o', max= '**', Identifier=Identifier, ChoiceOfApproach=ChoiceOfApproach, - SimulatedTimeLapse=SimulatedTimeLapse, **dicoArgs) - return BLOC(condition=condition, nomXML='b_systemType', NumericalModel=NumericalModel) - - -#----------------------------------- -def calculCommun(key1, key2, dico): -#----------------------------------- -# retourne la liste des valeurs communes a dico[key1] et dico[key2] - monSet=set() - if not key1 in dico: return () - if not key2 in dico: return () - for val in dico[key1]: - if val in dico[key2]: - monSet.add(val) - if monSet == set() : monSet.add ('No common format') - return list(monSet) - -#------------------------- -def allValueInDict(dico): -#------------------------- -# retourne la liste de toutes les valeurs possibles dans dico - monSet=set() - for clef in dico : - for val in dico[clef] : monSet.add(val) - return monSet - -#-------------------------------------------------------------------------------------------------- -def creeBlocPourLesFichiers(laCondition, Prefixe='Empty', ListeFormats=[], FieldName=None): -#--------------------------------------------------------------------------------------------------- -# il faut reflechir pour parametrer NomDuFichier -# et le type (existing... du fichier) -# et utiliser le creeBlocPourLesFichiers - SIMPFormatFichier = SIMP(statut='o', typ = 'TXM', into = tuple(ListeFormats) + ('All',), defaut='All' ) - dicoDesBlocs = {} - NomDuFichier = Prefixe+'FileName' - formatName = Prefixe+'FileFormat' - dicoDesBlocs[formatName] = SIMPFormatFichier - ListeFormatsboucle = tuple(ListeFormats) + ('All',) - for formatFich in ListeFormatsboucle : - dicoArgs={} - nomBloc = 'blocFormatFichier' + str(formatFich) - #typeDesFichiers = ('Fichier', formatFich + " Files (*." + formatFich + ");;All Files (*)",'Sauvegarde') - typeDesFichiers = ('Fichier', formatFich + " Files (*." + formatFich + ");;All Files (*)",) - blocCondition = formatName + " == '" + formatFich + "'" - dicoArgs[NomDuFichier] = SIMP(statut='o', typ = typeDesFichiers, nomXML=NomDuFichier ) - dicoDesBlocs[nomBloc] = BLOC(condition = blocCondition, **dicoArgs) - if FieldName: - SIMPFieldName = SIMP(statut='o', typ = 'TXM',) - dicoDesBlocs[FieldName] = SIMPFieldName - return BLOC(condition=laCondition, **dicoDesBlocs) - -#--------------------------------------------- -def prepareChamp(nomDelaContante, labels ,nbReels ) : -#--------------------------------------------- -# PN : a reecrire -# ajouter les extensions pour le fichier et les blocs associes -# certains champs ne seront jamais uniformes -# probablement a refaire -#PNPN : Passer le nom du champ pour le label du vecteur -# A revoir - - dicoBloc = {} - dicoBloc[nomDelaContante] = SIMP(statut='o', typ='R') - return FACT(statut='o', - InputMode = SIMP(statut='o', typ='TXM', into=('uniform value','values directly assigned','values read in file','analytical function',)), - blocUniforme = BLOC(condition = "InputMode == 'uniform value'", **dicoBloc), - blocVsaisies = BLOC(condition = "InputMode == 'values directly assigned'", - Field = SIMP(typ='R', statut='o', max ='**'), - #Vecteur = SIMP(fenetreIhm='Tableau', homo = labels, - # statut='o', min=2, max='**', - # typ=Tuple(nbReels), - # validators=VerifTypeTuple(("'R',"*nbReels),),) # end particle - ), #b_vsaisie - blocVdsfich = BLOC(condition = "InputMode == 'values read in file'", - Format = SIMP(statut='o', typ='TXM', into=['txt','Med',], position='global' ), - td_txt = BLOC(condition = 'Format == "txt"', - File = SIMP(statut='o', typ=('Fichier','Text Files(*.txt);All Files (*)'),), - ), # fin vtd_txt - td_med_1 = BLOC(condition = 'Format == "Med"', - File = SIMP(statut='o', typ=('Fichier','Med Files(*.med);All Files (*)'),), - ), - td_med_2 = BLOC(condition = 'Format == "Med"', - FieldName = SIMP(statut='o', typ='TXM',), - ), - ), - blocFunct = BLOC(condition = "InputMode == 'analytical function'", - Function = SIMP(statut='o', typ='TXM',), - ), - #b_vserc = BLOC(condition = "InputMode == 'call to a service'", - # Service = SIMP(statut='o', typ='TXM',), - #), - ) - - -#------------------------------ -def prepareTermeSource(condition): -#------------------------------ - return BLOC (condition=condition, - OriginOfSourceTerm = SIMP(statut='o', typ='TXM',into=['Interaction', 'Chemical Reaction', 'Other Scalar']), - blocOriginOfSourceTermInteraction = BLOC(condition = 'OriginOfSourceTerm == "Interaction"', - SourceTermInteraction = SIMP(typ=interaction,statut='o'), - #Consigne = SIMP(statut="o", homo="information", typ="TXM", defaut='Create and choose suitable interaction'), - ), - blocOriginOfSourceTermOtherScalar = BLOC(condition = 'OriginOfSourceTerm == "Other Scalar"', - ApplyOnScalar = SIMP (statut ='o', typ=scalar, ), #PNPN A FAIRE : fenetreIhm='menuDeroulant' - ), - ) - -#------------------------------ -def prepareTermeSourceDynVar(condition): -#------------------------------ - return BLOC (condition=condition, - OriginOfSourceTerm = SIMP(statut='o', typ='TXM',into=['Interaction', 'Other Scalar']), - ) - -#------------------------------------------------------ -def prepareFactTurbulence(statut, ajout=None , position=None, positionTVMChoice=None): -#------------------------------------------------------ - listInto = ['Fully resolved (DNS)', 'Spatial filtering (LES)', 'One-point moment', 'One-point PDF'] - if ajout != None : listInto.append(ajout) - return FACT(statut=statut, - TurbulenceModellingType = SIMP(typ='TXM', statut='o', into =listInto, position=position ), - -# --------------- One-point moment ------------------ - blocOnePoint = BLOC(condition= "TurbulenceModellingType == 'One-point moment'", - RANSModel = SIMP(statut="o", typ="TXM", - into=['Turbulent-Viscosity Model (TVM)', 'Reynolds Stress Model (RSM)']), - blocTVM = BLOC(condition= "RANSModel == 'Turbulent-Viscosity Model (TVM)'", - TVMChoice = SIMP(typ='TXM', statut='o', into=['K-Epsilon', 'K-Omega'] , position=positionTVMChoice), ##PN PN : parametre vs reCalculeEtape - ), # fin blocTVM - blocRSM = BLOC(condition = "RANSModel == 'Reynolds Stress Model (RSM)'", - RSMChoice = SIMP(typ='TXM', statut='o', into=['Rotta', 'LRR-IP','LRR-QI','SSG']), - ), # fin blocRSM - ), # fin bloc_one_point - -# --------------- Spatial filtering (LES) ------------------ - blocOneSpatial = BLOC(condition = "TurbulenceModellingType == 'Spatial filtering (LES)'", - ChoiceOfDescription = SIMP(typ='TXM', statut='o', into=['One-point filtered variables', 'Filtered Density Function (FDF)']), - blocOnePoint = BLOC(condition = "ChoiceOfDescription == 'One-point filtered variables'", - SubgridScaleModel = SIMP(typ='TXM', statut='o', into=['No SGS', 'Smagorinsky','Dynamical model', 'SGS Transport Equations']), - ),# fin bloc_OnePoint - blocFDF = BLOC(condition = "ChoiceOfDescription == 'Filtered Density Function (FDF)'", - SubgridScaleModel = SIMP(typ='TXM', statut='o', into=['SLM model for SGS', 'Viscous SLM model for SGS']), - ),# fin bloc_FDF - ), # fin bloc_one_spatial - -# --------------- One-point PDF ------------------ - blocOnePointPdf = BLOC(condition = "TurbulenceModellingType == 'One-point PDF'", - ChoiceOfDescription = SIMP(typ='TXM', statut='o', into=['Velocity PDF', 'Velocity frequency PDF']), - blocVPdf = BLOC(condition = "ChoiceOfDescription == 'Velocity PDF'", - StochasticModel = SIMP(typ='TXM', statut='o', into=['SLM','GLM'], defaut='SLM'), - ), # fin blocVPdf - blocVFPdf = BLOC(condition = "ChoiceOfDescription == 'Velocity frequency PDF'", - StochasticModel = SIMP(typ='TXM', statut='o', into=['Log-normal model','Gamma model','User-defined form'], defaut='SLM'), - ), # fin blocVFPdf - ), # fin bloc_one_point_pdf - -# --------------- Fully resolved (DNS) ------------------ - # blocNoModel = BLOC(condition = "TurbulenceModellingType == 'Fully resolved (DNS)'", - # ChoiceOfApproach = SIMP(statut='o', typ='TXM', into=['Field-based (DNS)', 'N-Particle_Method']), - # blocField = BLOC(condition = "ChoiceOfApproach == 'Field-based (DNS)'", - # NumericalMethod = SIMP(statut='o', typ='TXM', into=['FV', 'Spectral Method'], - # intoXML=['FV', 'Spectral Method','SPH', 'Vortex Method']), - # ),# fin bloc_Field - # blocNParticle = BLOC(condition = "ChoiceOfApproach == 'N-Particle_Method'", - # NumericalMethod = SIMP(statut='o', typ='TXM', into=['SPH', 'Vortex Method'], - # intoXML=['FV', 'Spectral Method','SPH', 'Vortex Method']), - # ),# fin bloc_N_particle - # ), # fin bloc_no_model - ) # fin du return de la fonction factTurbulence - - - -#------------------------------------------------------ -def prepareFactTurbulenceScalaire(statut, ajout=None , position=None, positionTVMChoice=None): -#------------------------------------------------------ - listInto = ['Fully resolved (DNS)', 'Spatial filtering (LES)', 'One-point moment', 'One-point PDF'] - if ajout != None : listInto.append(ajout) - return FACT(statut=statut, - TurbulenceModellingType = SIMP(typ='TXM', statut='o', into =listInto, position=position ), - -# --------------- One-point moment ------------------ - blocOnePoint = BLOC(condition= "TurbulenceModellingType == 'One-point moment'", - RANSModel = SIMP(statut="o", typ="TXM", - into=['Algebraic flux models','Turbulent diffusivity models', 'Scalar-flux transport equations']), - blocAlgebraic = BLOC(condition= "RANSModel == 'Algebraic flux models'", - #Consigne = SIMP(statut="o", homo="information", typ="TXM", defaut='Not implemented yet'), - ), # fin blocAlgebraic - blocTDM = BLOC(condition = "RANSModel == 'Turbulent diffusivity models'", - TDMChoice = SIMP(typ='TXM', statut='o', into=['SGDH', 'GGDH',]), - ), # fin blocTDM - blocSFTE = BLOC(condition = "RANSModel == 'Scalar-flux transport equations'", - SFTEChoice = SIMP(typ='TXM', statut='o', into=['Pressure-scrambling model', 'EB-DFM',]), - ), # fin blocSFTE - ), # fin bloc_one_point - -# --------------- Spatial filtering (LES) ------------------ - blocOneSpatial = BLOC(condition = "TurbulenceModellingType == 'Spatial filtering (LES)'", - ChoiceOfDescription = SIMP(typ='TXM', statut='o', into=['One-point filtered variables', 'Filtered Density Function (FDF)']), - blocOnePoint = BLOC(condition = "ChoiceOfDescription == 'One-point filtered variables'", - SubgridScaleModel = SIMP(typ='TXM', statut='o', into=['No SGS model', 'SGS diffusivity', 'Transport eqs. for SGS scalar fluxes']), - ),# fin bloc_OnePoint - blocFDF = BLOC(condition = "ChoiceOfDescription == 'Filtered Density Function (FDF)'", - SubgridScaleModel = SIMP(typ='TXM', statut='o', into=['Composition FDF', 'Scalar-velocity FDF', 'Micro-mixing model']), - ),# fin bloc_FDF - ), # fin bloc_one_spatial - -# --------------- One-point PDF ------------------ - blocOnePointPdf = BLOC(condition = "TurbulenceModellingType == 'One-point PDF'", - ChoiceOfDescription = SIMP(typ='TXM', statut='o', into=['Composition PDF','Velocity PDF', 'Micro-mixing models']), - #PNPN: Créer un bloc#Consigne qui sera ignoré à la génération du .xsd - # blocCPdf = BLOC(condition = "(ChoiceOfDescription == 'Composition PDF') or (ChoiceOfDescription == 'Velocity PDF')", - # bloc#Consigne = BLOC(condition = "(ChoiceOfDescription == 'Composition PDF') or (ChoiceOfDescription == 'Velocity PDF')", - # consigne = SIMP(statut="o", homo="information", typ="TXM", defaut='Not implemented yet.'), - # ), # fin blocCPdf - # blocVPdf = BLOC(condition = "ChoiceOfDescription == 'Velocity PDF'", - # ), # fin blocVPdf - blocMMMPdf = BLOC(condition = "ChoiceOfDescription == 'Micro-mixing models'", - ChoiceOfModel = SIMP(typ='TXM', statut='o', into=['IEM/CIEM','Curl model','Mapping','EMST'],), - ), # fin blocMMMdf - ), # fin bloc_one_point_pdf - -# --------------- Fully resolved (DNS) ------------------ - # blocNoModel = BLOC(condition = "TurbulenceModellingType == 'Fully resolved (DNS)'", - # ChoiceOfApproach = SIMP(statut='o', typ='TXM', into=['Field-based (DNS)', 'N-Particle_Method']), - # blocField = BLOC(condition = "ChoiceOfApproach == 'Field-based (DNS)'", - # NumericalMethod = SIMP(statut='o', typ='TXM', into=['FV', 'Spectral Method'], - # intoXML=['FV', 'Spectral Method','SPH', 'Vortex Method']), - # ),# fin bloc_Field - # blocNParticle = BLOC(condition = "ChoiceOfApproach == 'N-Particle_Method'", - # NumericalMethod = SIMP(statut='o', typ='TXM', into=['SPH', 'Vortex Method'], - # intoXML=['FV', 'Spectral Method','SPH', 'Vortex Method']), - # ),# fin bloc_N_particle - # ), # fin bloc_no_model - ) # fin du return de la fonction factTurbulence - - -#-------------------------- -def Particle(cardinalite) : -#-------------------------- - return FACT(statut='o', max=cardinalite, - ParticleNature = SIMP(statut='o', typ='TXM', into=['Atoms', 'Molecules', 'Dissipative', 'Fluid Particle', 'Discrete Particle']), - blocAtom = BLOC(condition='ParticleNature == "Atoms"', - AtomsName = SIMP(statut='o', typ=(userAtom,'createObject'),), - Atom = FACT(statut ='o', max= '**', - ChemicalSpecie = SIMP(statut='o', typ='TXM'), - Number = SIMP(statut='o', typ = 'I'), - ElectricCharge = SIMP(statut='o', typ='R'), - MagneticMoment = SIMP(statut='o', typ='R'), - Size = SIMP(statut='f', typ='R'), # relevant ? - ),# Atom - ), # fin b_Atom -# --------------- Molecules ------------------ - blocMolecule = BLOC(condition='ParticleNature == "Molecules"', - MoleculeName = SIMP(statut='o', typ=(userMolecule,'createObject'),), - ChemicalSpecie = FACT(max='**', statut='o', - ChemicalSpecieName = SIMP(statut='o', typ=userAtom), - Proportion = SIMP(statut='o', typ='R', val_max =1), - ), - ElectricCharge = SIMP(statut='o', typ='R'), - MagneticMoment = SIMP(statut='o', typ='R'), - Shape = SIMP(statut='f', typ='TXM', into=['Linear', 'Trigonal Planar', 'Angular', 'Tetrahedral', 'Octahedral', 'Trigonal pyramid', 'Other']), - ), #fin b_Molecule - -# --------------- Dissipative ------------------ - blocDissipative = BLOC(condition='ParticleNature == "Dissipative"', - DPDName = SIMP(statut='o', typ=(userDPD,'createObject'),), - BondedParticles = SIMP(statut="o", typ=bool, defaut=False), - ), # b_Dissipative - -# --------------- Discrete Particle ------------------ - blocDiscrete = BLOC(condition='ParticleNature == "Discrete Particle"', - DiscreteParticleName = SIMP(statut='o', typ=(userDiscrete,'createObject'),), - TypeOfDiscreteParticle = SIMP(statut='o', typ='TXM', into=['Solid', 'Droplets', 'Bubbles','Bio Organism'],), - blocTypeDPSolid = BLOC(condition ='TypeOfDiscreteParticle == "Solid"', - TypeOfSolid = SIMP(statut='o', typ='TXM', into=['Primary Particle', 'Assemblage / Aggregate'], position = 'global'), - b_SolidPrimary = BLOC(condition='TypeOfSolid == "Primary Particle"', - ), - b_SolidAggregate = BLOC(condition='TypeOfSolid == "Assemblage / Aggregate"', - ), - ), -# --------------- Bio Organism ------------------ - blocTypeBioSolid = BLOC(condition='TypeOfDiscreteParticle == "Bio Organism"', - TypeOfOrganism = SIMP(statut='o', typ='TXM', into=['Unicellular', 'Multicellular']), - blocUnicellular = BLOC(condition ='TypeOfOrganism=="Unicellular"', - Unicellular = SIMP(statut='o', typ='TXM', into=["Bactaria"], defaut='Bactaria') - ), - b_Multicellular = BLOC(condition ='TypeOfOrganism=="Multicellular"', - Multicellular = SIMP(statut='o', typ='TXM', into=["Animal","Fongus","Plant"]) - ), - ), # b_TypeBio_Solid - -# --------------- Particule Properties ------------------ - Properties = FACT(statut ='o', - Geometry = SIMP(statut='o', typ='TXM', into=['Sphere', 'Ellopsoids', 'Other Shape']), - b_geom_Sphere = BLOC(condition = 'Geometry == "Sphere"', - ParticleRadius = SIMP(statut='o', typ ='R', val_min = 0), - ), - Weight = FACT(statut = 'o', - #Consigne = SIMP(statut="o", homo="information", typ="TXM", defaut='Choose between Mass or Density'), - Mass = SIMP(statut='f', typ ='R', val_min = 0), - Density = SIMP(statut='f', typ ='R', val_min = 0), - ), - Mechanical = SIMP(statut='o', typ='TXM', into=['Rigid', 'Flexible', 'Deformable']), - b_SolidAggregate = BLOC(condition='TypeOfSolid == "Assemblage / Aggregate"', - Morphological = FACT(statut = 'o', - #Consigne = SIMP(statut="o", homo="information", typ="TXM", defaut='Choose optional properties'), - FractalDimension = SIMP(statut='f', typ='R'), - NumberOfPrimaryParticle = SIMP(statut ='f',typ='I'), - EquivalentSize = SIMP(statut='f', typ='R'), - Porosity = SIMP(statut='f', typ='R'), - ), # Morphological - ), # b_SolidAggregate - ElectroMagnetic = FACT(statut = 'f', - ElectricCharge = SIMP(statut='o', typ='R'), - MagneticMoment = SIMP(statut='o', typ='R'), - ), - b_SolidAggregateBonded = BLOC(condition='TypeOfSolid == "Assemblage / Aggregate"', - BondedParticles = FACT( - ListOfBondedParticles = SIMP(statut='o', max='**', typ = userParticle), - ), - ), - ), # Properties - ), # b_Discrete - -############################ - - ListOfBondedParticles = FACT(statut='f', - # --------------------------------------# - BondedParticles = FACT(statut='o', max = "**", - NameOfBonded_Particles = SIMP(statut='o', typ='TXM'), - SpeciesinParticle = SIMP(statut='o', min=2, typ='TXM' , max = "**"), - ), # BondedParticles - ), # ListOfBondedParticles - - ListOfInteractions = FACT(statut='o', max = "**", - # ------------------------------------------------# - - BondedInteractions = FACT(statut='o', max = "**", - TypeOfBondedInteraction = SIMP(statut='o', typ='TXM', into=['NoOne', 'Covalent Bond Length', 'FENE', 'Covalent Bond Angle', 'Dihedral Angles', 'Improper Dihedral', 'Frozen Motion' ], defaut='NoOne'), - - #La saisie de l'ensemble des liaisons d'un meme type peut se faire ds le meme bloc (soit ds un fichier, soit manuelle) - #Une seule valeur de distante? est a saisir pour l'ensemble - # bloc_covalent_1 = BLOC(condition = 'TypeOfBondedInteraction in ("Covalent Bond Length","FENE")', - # ), # fin bloc_covalent_1 - -# --------------- Covalent Bond Length ------------------ - blocCovalentLength = BLOC(condition = 'TypeOfBondedInteraction == "Covalent Bond Length"', - InteractionLengthParameters = FACT(statut='o', max="**", - ApplyToBondedParticles = SIMP(statut='o', max='**', typ='TXM'), - SpringStifness = SIMP(statut='o', typ='R', val_min=0), - MeanBondLength = SIMP(statut='o', typ='R', val_min=0), - ), # fin Interation_Length_Parameters - ), # fin BondLengthParameters - -# --------------- Covalent Bond Angle ------------------ - blocCovalentAngle = BLOC(condition = 'TypeOfBondedInteraction == "Covalent Bond Angle"', - InteractionAnglesParameters = FACT(statut='o', max="**", - ApplyToBondedParticles = SIMP(statut='o', max='**', typ='TXM'), - SpringStifness = SIMP(statut='o', typ='R', val_min=0), - MeanBondAngle = SIMP(statut='o', typ='R', val_min=0), - ), # fin Interation_Angles_Parameters - ), # fin bloccovalentlengthand_angle - - #bloc_covalent_length_and_angle = BLOC(condition = 'TypeOfBondedInteraction == "Covalent Bond Length" or TypeOfBondedInteraction == "Covalent Bond Angle"', - # Bond_Parameters = FACT(statut='o', max="**", - # Apply_To_Bonded_Particles = SIMP(statut='o', max='**', typ='TXM'), - # Spring_Stifness = SIMP(statut='o', typ='R', val_min=0), - # bloc_covalent_length = BLOC(condition = 'TypeOfBondedInteraction == "Covalent Bond Length"', - # Mean_Bond_Length = SIMP(statut='o', typ='R', val_min=0), - # ), # fin Bond_Length_Parameters - # bloc_covalent_angle = BLOC(condition = 'TypeOfBondedInteraction == "Covalent Bond Angle"', - # Mean_Bond_Angle = SIMP(statut='o', typ='R', val_min=0), - # ), # fin Bond_Length_Parameters - # ), # fin Bond_Length_Parameters - #), # fin bloc_covalent_length_and_angle - -# --------------- Covalent Bond Angle ------------------ - blocFENE = BLOC(condition = 'TypeOfBondedInteraction == "FENE"', - AppliesToAllParticles = SIMP(statut='o', typ=bool, defaut=True), - blocNotOnAll = BLOC(condition = 'AppliesToAllParticles == False', - FENEParameters = FACT(statut='o', max="**", - SpeciesPair = SIMP(statut='o', max=2, typ='TXM'), - SpringConstant_H = SIMP(statut='o', typ='R', val_min=0), - LMax = SIMP(statut='o', typ='R', val_min=0), - ), # fin FENE_Parameters - ), # fin bloc_not_on_all - blocOnAll = BLOC(condition = 'AppliesToAllParticles == True', - Spring_Constant_H = SIMP(statut='o', typ='R', val_min=0), - LMax = SIMP(statut='o', typ='R', val_min=0), - ), # fin bloc_on_all - ), # fin blocFENE - - blocLeReste = BLOC(condition = 'TypeOfBondedInteraction in ("Dihedral Angles", "Improper Dihedral", "Frozen Motion")', - ParticleName = SIMP(statut="f", typ='TXM'), - ##Consigne = SIMP(statut="o", homo="information", typ="TXM", defaut='Not Implemented Yet'), - ), - - ), # fin Bonded_Interaction - - # ------------------------------- # - - UnbondedInteractions = FACT(statut='o', max= "**", - - TypeOfUnbondedInteraction = SIMP(statut='o', typ='TXM', into=['No', 'electro_magnetic', 'Repulsion_and_VdW', 'Soft_Potentiel', ], defaut='No', position='global',fenetreIhm='menuDeroulant'), - - blocElec = BLOC(condition = 'TypeOfUnbondedInteraction == "electro_magnetic"', - Permittivity = SIMP(statut='o', typ='R', position='global_jdc'), - Magnetic = SIMP(statut='o', typ=bool, defaut=False,), - blocMagnetic = BLOC(condition = 'Magnetic == True', - Permability = SIMP(statut='o', typ='R'), - ), # bloc_magnetic - ),# fin bloc_elec - - blocVdW = BLOC(condition = 'TypeOfUnbondedInteraction == "Repulsion_and_VdW"', - SpeciesPairParameters = FACT(statut='o', max="**", - TypeRepulsionAndVdW = SIMP(statut='o', typ='TXM', into = [ 'Lennard_Jones', 'Hard_sphere_model']), - SpeciesPair = SIMP(statut='o', max=2, typ='TXM'), - VdWRadius = SIMP(statut='o', typ='R', val_min=0), - blocLennard = BLOC(condition = "TypeRepulsionAndVdW == 'Lennard_Jones'", - DepthOfThePotentialWell = SIMP(statut='o', typ='R', val_min=0), - ), # fin b_Lennard - ), # fin Species_Pair_Parameters - ), # bloc_VdW - - blocParamSoftPotentiel = BLOC(condition = "TypeOfUnbondedInteraction == 'Soft_Potentiel'", - GrootWarrenRepulsion = SIMP(statut='o', typ='R', defaut=25.0, val_min=0), - GrootWarrenCutoff = SIMP(statut='o', typ='R', defaut=1.0, val_min=0), - DragCoefficient = SIMP(statut='o', typ='R'), # les 2 valent 0 pour MD - DragForceCutoff = SIMP(statut='o', typ='R', val_min=0), - ), # b_Param_Soft_Potentiel - - ), # fin UnBonded_Interactions - - # ------------------------------- # - - ExternalFieldInteraction = FACT(statut='o', max= "**", - TypeOfInteractionWithAnExternalField = SIMP(statut='o', typ='TXM', into=['NoOne','gravitational field','electric field','magnetic field', 'Hydrodynamic_Field'], fenetreIhm='menuDeroulant', defaut ='NoOne'), - blocGravite = BLOC(condition = 'TypeOfInteractionWithAnExternalField=="gravitational field"', - G = SIMP(statut='o', typ='R', defaut=9.81), - ), - blocElect = BLOC(condition = 'TypeOfInteractionWithAnExternalField=="electric field"', - ElectricField = prepareChamp('E', ('E',), 1), - ), - blocMagnetic = BLOC(condition = 'TypeOfInteractionWithAnExternalField=="magnetic field"', - MagneticField = prepareChamp('B', ('B',), 1), - ), - blocHydrodynamic = BLOC(condition = 'TypeOfInteractionWithAnExternalField=="hydrodynamic field"', - HydrodynamicField = prepareChamp('U', ('U',), 1), - ), - blocExternalFieldInteraction = BLOC(condition = 'TypeOfInteractionWithAnExternalField != "No"', - FieldAppliesOnAllSpecies = SIMP(statut='o', typ=bool, defaut=True), - blocPorteEspece = BLOC(condition = 'FieldAppliesOnAllSpecies == False ', - SpeciesList = SIMP(statut='o', typ='TXM', max= '**', homo='SansOrdreNiDoublon'), # faire un typ = "espece" - ), - ), # fin b_External_Field_Interaction - ), # fin Interaction_External_Field - - ), # fin List_Of_Interactions - -############################ -) # fin Particle - -#-------------------- -def prepareBlocCPS(): -#-------------------- - return BLOC(condition = 'SystemType == "Classical particle system"', - Particle = Particle('**'), - ) - -#--------------------------- -def prepareBlocFluideMacro(): -#--------------------------- - return BLOC(condition = 'SystemType == "Continuum system"', - ComplexFluid = SIMP(typ=bool, statut='o', defaut = False, position='global'), - FlowNature = SIMP(typ='TXM', statut='o', into =['Laminar', 'Turbulent'], position='global'), - -# --------------------------- Density ------------- - DensityInitialisation = FACT(statut ='o', - DensityValueType = SIMP(typ='TXM', statut ='o', into = ['Value', 'Field'], defaut ='Value'), - blocDensityValue = BLOC(condition = 'DensityValueType == "Value"', - Density = SIMP(typ='R', statut ='o'), - ), - blocDensField= creeBlocPourLesFichiers('DensityValueType == "Field"', 'Density', ListeFormats=listeFormatGenerique, FieldName='DensityFieldName'), - ),# DensityInitialisation - -# --------------------------- Viscosity ------------- - ViscosityInitialisation = FACT(statut ='o', - ViscosityValueType = SIMP(typ='TXM', statut ='o', into = ['Value', 'Field'], defaut ='Value'), - blocViscosityValue = BLOC(condition = 'ViscosityValueType == "Value"', - Viscosity = SIMP(typ='R', statut ='o'), - ), - blocViscosityField = creeBlocPourLesFichiers('ViscosityValueType == "Field"', 'Viscosity', ListeFormats=listeFormatGenerique, FieldName='ViscosityFieldName'), - ), #fin ViscosityityInitialisation - -# --------------------------- Turbulent ------------- - blocFlowNatureTurbulent = BLOC(condition = ' FlowNature == "Turbulent"', - TurbulenceForFlowDynamics = prepareFactTurbulence('o',position='global',positionTVMChoice='reCalculeEtape'), - ), #fin bloc_FlowNature_Turbulent - - DynamicalVariables = FACT(statut ='o', - OriginOfDynamicalVariables = SIMP(statut='o', into =['Given', 'Interaction', 'to be simulated'], typ ='TXM', position='global'), - BlocGivenOrInteraction = BLOC(condition = 'OriginOfDynamicalVariables in ["Given", "Interaction",]', - Steady = SIMP(typ=bool, statut ='o', defaut = True, position = 'global'), - BlocNotSteady = BLOC(condition = 'Steady == False', - #Consigne = SIMP(statut="o", homo="information", typ="TXM", defaut='Not implemented yet. Will ask for a range of calculation steps.'), - ), #BlocNotSteady - BlocSteady = BLOC(condition = 'Steady == True', - BlocGiven = BLOC(condition = 'OriginOfDynamicalVariables == "Given"', - InSameFile = SIMP(typ=bool, statut ='o', defaut = True, position = 'reCalculeEtape'), - BlocSameFile = creeBlocPourLesFichiers('InSameFile == True', 'DynamicalVariables', ('Med', 'cgns' ), None), - ), #BlocGiven - ), #BlocSteady - ), #BlocGivenOrInteraction - Pressure = FACT(statut ='o', - FluidPressure = SIMP(typ=(dynamicVariable,'createObject'), statut='o', defaut ='Fluid_Pressure', homo='constant'), - BlocSteady = BLOC(condition = 'Steady == True', - BlocFluidInSame = creeBlocPourLesFichiers('InSameFile == False', 'Pressure', ('Med', 'cgns' ), None), - BlocGivenPressure = BLOC(condition = 'OriginOfDynamicalVariables == "Given"', - PressureFieldName = SIMP(typ='TXM',statut='o'), - ), - BlocInteractionPressure = BLOC(condition = 'OriginOfDynamicalVariables == "Interaction"', - InteractionName = SIMP(typ=interaction,statut='o'), - #Consigne = SIMP(statut="o", homo="information", typ="TXM", defaut='Create and choose suitable interaction'), - ), - ), - BlocSimulatedPressure = BLOC(condition = 'OriginOfDynamicalVariables == "to be simulated"', - SourceTerm = SIMP(typ=bool, statut='o', defaut=False), - blocSourceTerm = prepareTermeSourceDynVar('SourceTerm==True'), - ), - ), - Velocity = FACT(statut ='o', - blocFlowNatureTurbulent = BLOC(condition = 'FlowNature == "Turbulent"', - #sousBlocFlowNatureTurbulent = BLOC(condition = 'TurbulenceModellingType != "Fully resolved (DNS)"', - AverageVelocity = SIMP(typ=(dynamicVariable,'createObject'), statut='o', defaut ='Average_Velocity', homo='constant'), - BlocSteadyGivenVelocity1 = BLOC(condition = 'OriginOfDynamicalVariables == "Given" and Steady == True ', - AverageVelocityValue = SIMP(typ='R', statut='o' ), - ), - #), - ), - #blocFlowNatureLaminar = BLOC(condition = ' FlowNature == "Laminar" or TurbulenceModellingType == "Fully resolved (DNS)"', - blocFlowNatureLaminar = BLOC(condition = 'FlowNature == "Laminar"', - FluidVelocity = SIMP(typ=(dynamicVariable,'createObject'), statut='o', defaut ='Fluid_Velocity', homo='constant'), - BlocSteady = BLOC(condition = 'Steady == True', - BlocVelocityInSame = creeBlocPourLesFichiers('InSameFile == False', 'Velocity', ('Med', 'cgns' ), None), - BlocSteadyGivenVelocity2 = BLOC(condition = 'OriginOfDynamicalVariables == "Given"', - VelocityFieldName = SIMP(typ='TXM',statut='o'), - ), - ), - ), - BlocSimulatedVelocity = BLOC(condition = 'OriginOfDynamicalVariables == "to be simulated"', - SourceTerm = SIMP(typ=bool, statut='o', defaut=False), - blocSourceTerm = prepareTermeSourceDynVar('SourceTerm==True'), - ), - BlocSteady = BLOC(condition = 'Steady == True', - BlocInteractionVelocity = BLOC(condition = 'OriginOfDynamicalVariables == "Interaction"', - InteractionName = SIMP(typ=interaction,statut='o'), - #Consigne = SIMP(statut="o", homo="information", typ="TXM", defaut='Create and choose suitable interaction'), - ), - ), - ), - BFlowNatureTurbulent = BLOC(condition ='FlowNature == "Turbulent"', - # K-epislon ou k-omega - blocTurbulenceTWMChoice1 = BLOC(condition = 'TVMChoice == "K-Epsilon" or TVMChoice == "K-Omega"', - KDefinition = FACT(statut ='o', - Name = SIMP(typ=(scalar,'createObject'), statut='o', defaut ='K', homo='constant'), - BlocSteady = BLOC(condition = 'Steady == True', - BlocKInSame = creeBlocPourLesFichiers('InSameFile == False', 'K', ('Med', 'cgns' ), None), - BlocKGiven = BLOC(condition = 'OriginOfDynamicalVariables == "Given"', - KFieldName = SIMP(typ='TXM',statut='o', defaut='K'), - ), - BlocKInteraction = BLOC(condition = 'OriginOfDynamicalVariables == "Interaction"', - InteractionName = SIMP(typ=interaction,statut='o'), - #Consigne = SIMP(statut="o", homo="information", typ="TXM", defaut='Create and choose suitable interaction'), - ), - ), - BlocSimulatedKDefinition = BLOC(condition = 'OriginOfDynamicalVariables == "to be simulated"', - SourceTerm = SIMP(typ=bool, statut='o', defaut=False), - blocSourceTerm = prepareTermeSourceDynVar('SourceTerm==True'), - ), - ), # KDefinition - ),# fin blocTurbulenceTWMChoice1 - - blocTurbulenceTWMChoice2 = BLOC(condition = 'TVMChoice == "K-Epsilon"', - EpsilonDefinition = FACT(statut ='o', - Name = SIMP(typ=(scalar,'createObject'), statut='o', defaut ='Epsilon', homo='constant'), - BlocSteady = BLOC(condition = 'Steady == True', - BlocEpsilonInSame = creeBlocPourLesFichiers('InSameFile == False', 'Epsilon', ('Med', 'cgns' ), None), - BlocEpsilonGiven = BLOC(condition = 'OriginOfDynamicalVariables == "Given"', - EpsilonFieldName = SIMP(typ='TXM',statut='o'), - ), - BlocEpsilonInteraction = BLOC(condition = 'OriginOfDynamicalVariables == "Interaction"', - InteractionName = SIMP(typ=interaction,statut='o'), - #Consigne = SIMP(statut="o", homo="information", typ="TXM", defaut='Create and choose suitable interaction'), - ), - ), - BlocSimulatedEpsilonDefinition = BLOC(condition = 'OriginOfDynamicalVariables == "to be simulated"', - SourceTerm = SIMP(typ=bool, statut='o', defaut=False), - blocSourceTerm = prepareTermeSourceDynVar('SourceTerm==True'), - ), - ), #EpsilonDefinition - ), # bloc_Turbulence_TWMChoice2 - - blocTurbulenceTWMChoice3 = BLOC(condition = 'TVMChoice == "K-Omega"', - OmegaDefinition = FACT(statut ='o', - Name = SIMP(typ=(scalar,'createObject'), statut='o', defaut ='Omega', homo='constant'), - BlocSteady = BLOC(condition = 'Steady == True', - BlocOmegaInSame = creeBlocPourLesFichiers('InSameFile == False', 'Omega', ('Med', 'cgns' ), None), - BlocOmegaGiven = BLOC(condition = 'OriginOfDynamicalVariables == "Given"', - OmegaFieldName = SIMP(typ='TXM',statut='o'), - ), - BlocOmegaInteraction = BLOC(condition = 'OriginOfDynamicalVariables == "Interaction"', - InteractionName = SIMP(typ=interaction,statut='o'), - #Consigne = SIMP(statut="o", homo="information", typ="TXM", defaut='Create and choose suitable interaction'), - ), - ), - BlocSimulatedOmegaDefinition = BLOC(condition = 'OriginOfDynamicalVariables == "to be simulated"', - SourceTerm = SIMP(typ=bool, statut='o', defaut=False), - blocSourceTerm = prepareTermeSourceDynVar('SourceTerm==True'), - ), - ), - ), # blocTurbulenceTWMChoice3 - ), #BFlowNatureTurbulent - ), # DynamicalVariables - -# ---------------------- Effets thermiques - Thermal = FACT(statut ='o', - ThermalEffects = SIMP(typ='TXM', statut='o', into =['Non thermal', 'Thermal'] , defaut='Thermal', position='global' ), - blocNonThermalEffects = BLOC(condition = 'ThermalEffects == "Non thermal"', - ReferenceTemperature = SIMP(typ='R', statut='o', val_min=-273.15 ), - ), # fin bloc_NonThermal - bloc_ThermalEffects_ = BLOC(condition = 'ThermalEffects == "Thermal"', - ConductivityValueType = SIMP(typ='TXM', statut ='o', into = ['Value', 'Field'], defaut ='Value'), - blocCondValue = BLOC (condition = 'ConductivityValueType == "Value"', - Conductivity = SIMP(typ='R', statut ='o'), - ), - blocCondField = creeBlocPourLesFichiers('ConductivityValueType == "Field"', 'Conductivity', ListeFormats=listeFormatGenerique, FieldName='conductivityFieldName'), - #ActiveOnFlowEffect = ActiveOnFlowEffect(), - ), - ),# fin Fact Thermal - -# ---------------------- Scalaires - - blocScalarFluidTurbulentOrLaminar = BLOC(condition = "(ComplexFluid == False and FlowNature == 'Turbulent') or (ComplexFluid == False and FlowNature == 'Laminar')", - Scalars = FACT(statut = 'o', - withScalars = SIMP(statut='o', typ=bool, defaut=False), - blocwithScalars = BLOC(condition = 'withScalars == True', - blocFlowNatureTurbulentForScalars = BLOC(condition = ' FlowNature == "Turbulent"', - AsTurbulenceForFlowDynamics = SIMP(statut='o', typ=bool, defaut=True), - BlocAsTFFD = BLOC(condition = "AsTurbulenceForFlowDynamics == False", - ScalarsTurbulenceModelling = prepareFactTurbulenceScalaire('o',), - ), - ), - blocThermalEffectsOn = BLOC(condition = ' ThermalEffects == "Thermal"', - TemperatureScalar = FACT(statut ='o', - #Name = SIMP(typ=(scalar,'createObject'), statut='o', defaut ='Temperature', homo='constant', position='reCalculeEtape'), - Name = SIMP(typ=(scalar,'createObject'), statut='o', defaut ='Temperature', homo='constant'), - SourceTerm = SIMP(typ=bool, statut='o', defaut=False), - blocSourceTerm = prepareTermeSource('SourceTerm==True'), - TemperatureInitialisation = FACT(statut ='o', - OriginOfThermalFluxField = SIMP(statut='o', into =['Given', 'Interaction', 'to be simulated'], typ ='TXM'), - BlocGiven = creeBlocPourLesFichiers('OriginOfThermalFluxField == "Given"', 'Temperature', ('Med', 'cgns' ), FieldName='FieldName'), - ),# fin TemperatureInitialisation - ),# TemperatureScalar - ), # fin bloc_ThermalEffects_On - Scalar = FACT(statut = 'o', max ='**', - Name = SIMP(typ=(scalar,'createObject'), statut='o',), - DiffusivityValueType = SIMP(typ='TXM', statut ='o', into = ['Value', 'Field'], defaut ='Value'), - blocDiffValue = BLOC(condition = 'DiffusivityValueType == "Value"', - Diffusivity = SIMP(typ='R', statut ='o'), - ), - blocDiffField = creeBlocPourLesFichiers('DiffusivityValueType == "Field"', 'Diffusivity', ListeFormats=listeFormatGenerique, FieldName='DiffusivityFieldName'), - OriginOfScalar = SIMP(statut='o', into =['Given', 'Interaction', 'to be simulated'], typ ='TXM', defaut='to be simulated'), - blocSimulatedScalar = BLOC(condition = 'OriginOfScalar == "to be simulated"', - SourceTerm = SIMP(typ=bool, statut='o', defaut=False), - blocSourceTerm = prepareTermeSource('SourceTerm==True'), - Initialisation = FACT(statut ='o', - InitialisationOfScalar = SIMP(statut='o', into =['ValueInit', 'FileInit', 'InteractionInit'], typ ='TXM', defaut='ValueInit'), - BlocFileInit = creeBlocPourLesFichiers('InitialisationOfScalar == "FileInit"', 'ScalarInit', ListeFormats = listeFormatGenerique, FieldName='ScalarInitField'), - BlocInteractionInit = BLOC(condition = 'InitialisationOfScalar == "InteractionInit"', - InteractionName = SIMP(typ=interaction,statut='o'), - #Consigne = SIMP(statut="o", homo="information", typ="TXM", defaut='Create and choose suitable interaction'), - ), - BlocValueInit = BLOC(condition = 'InitialisationOfScalar == "ValueInit"', - ValueInit = SIMP (statut ='o', typ='R'), - ), - ), - ), - blocInteractionScalar = BLOC(condition = 'OriginOfScalar == "Interaction"', - InteractionName = SIMP(typ=interaction,statut='o'), - #Consigne = SIMP(statut="o", homo="information", typ="TXM", defaut='Create and choose suitable interaction'), - ), - blocGivenScalar = creeBlocPourLesFichiers('OriginOfScalar == "Given"', 'Scalar', ListeFormats = listeFormatGenerique, FieldName='ScalarField'), - EffectOnFlowDynamic = SIMP(typ='TXM', statut='o', into=[ 'Passive', 'Active'], defaut='Passive', ), - blocScalarActiveOnFlowDynamic = BLOC(condition = ' EffectOnFlowDynamic == "Active"', - ActiveOnFlowEffect = ActiveOnFlowEffect(), - ), - blocScalarFluidTurbulentAndNonComplexe = BLOC (condition = "FlowNature == 'Turbulent'", - ScalarFluxModel = prepareFactTurbulence('f'), - ), # bloc_scalar_FluidTurbulentandNonComplexe - ),# Scalar - ),# blocwWithScalars - ),# Scalars - ), # fin FluidTurbulentandNonComplexe - # il faut une validation de coherence entre l existence de tous les turbulencesModelling - )# fin bloc_FluideMacro - -#---------------------------------------- -def ActiveOnFlowEffect(inTemperature=True): -#---------------------------------------- - return FACT(statut = 'o', max='**', - RelationType = SIMP(statut = 'o', into =['Equation Of State', 'Force-Flux Relation'], typ ='TXM'), - bloc_EOS = BLOC(condition = 'RelationType == "Equation Of State"', - TypeOfEquationOfState = SIMP(statut='o', into =['variable density', 'compressible'], typ ='TXM'), - ), - bloc_NonEOSAndSimple=BLOC(condition = 'RelationType == "Force-Flux Relation" and ComplexFluid == False', - TypeOfForceFluxRelation = SIMP(statut='o', into =['Viscosity', 'Diffusivity', 'Thermal Conductivity'], intoXML=['Viscosity', 'Diffusivity', 'Thermal Conductivity','Shear-stress closure', 'Scalar flux'], typ ='TXM', ), - blocViscosity=BLOC(condition = 'TypeOfForceFluxRelation == "Viscosity" ', - ViscosityLaw=SIMP(typ='TXM', statut = 'o', into=['law1', 'law2']), - ), - blocDiffusivity=BLOC(condition = 'TypeOfForceFluxRelation == "Diffusivity"', - DiffusivityLaw=SIMP(typ='TXM', statut = 'o', into=['law1', 'law2']), - ), - blocConductivity=BLOC(condition = 'TypeOfForceFluxRelation == "Thermal Conductivity"', - ConductivityLaw=SIMP(typ='TXM', statut = 'o', into=['law1', 'law2']), - ), - ), -) - -#-----------------------------------------------------# -def prepareBoundaryCondition(): - return FACT(statut='o',max = '**', # max = nb de facette de bord - TypeOfBoundaryCondition = SIMP(statut='o', typ='TXM', into=['Inlet', 'Outlet', 'Symmetry','Periodicity', 'Wall', 'Free Surface'], ), - - blocDesigneMesh = BLOC(condition = "SystemType == 'Continuum system'", - ApplyOnGroups = SIMP(statut ='o', typ=meshGroup, max='**', homo='SansOrdreNiDoublon', - filtre=( '(set(MeshIdentifiers).intersection( set(self.getParentsWithId().getListeUserASSD("MeshId")) ) != set()) ', - ( ('MeshIdentifiers', 'self.etape.getChild("blocModeleNumeriqueContinuum").getChild("NumericalModel")'), ) - ), - ), - ), - blocDesigne_Shape = BLOC(condition = "SystemType == 'Classical particle system'", - #ApplyOnGroups = SIMP (statut ='o', typ=spatialRegion, max='**' - ApplyOnGroups = SIMP (statut ='o', typ=meshGroup, max='**', homo='SansOrdreNiDoublon', - filtre=( '(set(MeshIdentifiers).intersection( set(self.getParentsWithId().getListeUserASSD("MeshId")) ) != set()) ', - ( ('MeshIdentifiers', 'self.etape.getChild("blocModeleNumeriqueClassical").getChild("NumericalModel")'), ) - ), - ), - ), - - blocOnStateVariable = BLOC(condition = "TypeOfBoundaryCondition not in ['Wall',]", - ApplyOnStateVariable = SIMP (statut ='o', typ=stateVariable, max='**', homo='SansOrdreNiDoublon', - filtre=( 'etape in set(self.getEtapes()) ', (('etape', None),), ), #Il ne faut pas proposer les variables d'état des autres composants. - ), #PNPN A FAIRE : fenetreIhm='menuDeroulant' - ), - blocPeriodique = BLOC(condition = "TypeOfBoundaryCondition == 'Periodic'", - Direction = SIMP(statut='o', typ='TXM', into=['X','Y','Z', 'XYZ']), - ), # b_periodique - blocInlet = BLOC(condition = "TypeOfBoundaryCondition == 'Inlet'", - FormulationOfBoundary= SIMP(statut='o', typ='TXM', into=['Dirichlet','Neumann','Cauchy']), - blocDirichlet = BLOC(condition = 'FormulationOfBoundary == "Dirichlet"', - regles=(AU_MOINS_UN('InletProfile','IntegratedValue','IntegratedVectorValue',), - EXCLUS ('InletProfile','IntegratedValue','IntegratedVectorValue',), ), - #Consigne = SIMP(statut ="o", homo="information", typ="TXM", defaut = "Choose between InletProfile,IntegratedValue,IntegratedVectorValue "), - InletProfile = SIMP (statut ='f', typ='TXM'), - IntegratedValue = SIMP (statut='f', typ='R'), - IntegratedVectorValue = FACT(statut='f', - U = SIMP (statut ='o', typ='R'), - V = SIMP (statut ='o', typ='R'), - W = SIMP (statut ='o', typ='R'), - ), - #PN : faire une regle - ), - blocNeumann = BLOC(condition = 'FormulationOfBoundary == "Neumann"', - Flux = SIMP (statut ='o', typ='TXM'), - ), - blocCauchy = BLOC(condition = 'FormulationOfBoundary == "Cauchy"', - ImposedFlux = SIMP (statut ='o', typ='TXM'), - _IntegratedValue = SIMP (statut='o', typ='R'), - ), - ), # b_inlet - blocWall = BLOC(condition = "TypeOfBoundaryCondition == 'Wall'", - VelocityAtBoundary = FACT(statut='o', - SlipVelocity = SIMP(statut='o', typ='R', defaut= 0.0), - WallMotion = FACT(statut='o', - U = SIMP (statut ='o', typ='R'), - V = SIMP (statut ='o', typ='R'), - W = SIMP (statut ='o', typ='R'), - ), - ), - LevelOfDescription = FACT(statut='o', - blocWall = BLOC(condition = "FlowNature == 'Turbulent'", ##JP+CH TODO : Choix des lois en fct du type du TurbulenceModelingType - WallFunction = SIMP(statut ='o', typ='TXM', - into=['No wall function','1-scale model (Log law)', - '2-scale model (Log law)','Scalable 2-scale model (Log law)', - ], defaut='No wall function', fenetreIhm='menuDeroulant'), - ), - ), - ), # b_Wall - - ) # Boundary_Conditions - - -# def prepareBoundaryCondition(): -# return FACT(statut='o',max = '**', # max = nb de facette de bord -# ApplyOnStateVariable = SIMP (statut ='o', typ=stateVariable, ), #PNPN A FAIRE : fenetreIhm='menuDeroulant' -# blocDesigneMesh = BLOC(condition = "SystemType == 'Continuum system'", -# ApplyOnGroups = SIMP (statut ='o', typ=meshGroup, max='**', homo='SansOrdreNiDoublon'), -# ), -# blocDesigne_Shape = BLOC(condition = "SystemType == 'Classical particle system'", -# ApplyOnCadGroups = SIMP (statut ='o', typ=spatialRegion, max='**'), -# ), -# TypeOfBoundaryCondition = SIMP(statut='o', typ='TXM', into=['Inlet', 'Outlet', 'Symmetry','Periodicity', 'Wall', 'Free Surface'], ), -# blocPeriodique = BLOC(condition = "TypeOfBoundaryCondition == 'Periodic'", -# Direction = SIMP(statut='o', typ='TXM', into=['X','Y','Z', 'XYZ']), -# ), # b_periodique -# blocInlet = BLOC(condition = "TypeOfBoundaryCondition == 'Inlet'", -# FormulationOfBoundary= SIMP(statut='o', typ='TXM', into=['Dirichlet','Neumann','Cauchy']), -# blocDirichlet = BLOC(condition = 'FormulationOfBoundary == "Dirichlet"', -# regles=(AU_MOINS_UN('InletProfile','IntegratedValue','IntegratedVectorValue',), -# EXCLUS ('InletProfile','IntegratedValue','IntegratedVectorValue',), ), -# #Consigne = SIMP(statut ="o", homo="information", typ="TXM", defaut = "Choose between InletProfile,IntegratedValue,IntegratedVectorValue "), -# InletProfile = SIMP (statut ='f', typ='TXM'), -# IntegratedValue = SIMP (statut='f', typ='R'), -# IntegratedVectorValue = FACT(statut='f', -# x = SIMP (statut ='o', typ='R'), -# y = SIMP (statut ='o', typ='R'), -# z = SIMP (statut ='o', typ='R'), -# ), -# #PN : faire une regle -# ), -# blocNeumann = BLOC(condition = 'FormulationOfBoundary == "Neumann"', -# Flux = SIMP (statut ='o', typ='TXM'), -# ), -# blocCauchy = BLOC(condition = 'FormulationOfBoundary == "Cauchy"', -# ImposedFlux = SIMP (statut ='o', typ='TXM'), -# IntegratedValue = SIMP (statut='o', typ='R'), -# ), -# ), # b_inlet -# ) # Boundary_Conditions - - - - -JdC = JDC_CATA ( - code = 'Vimmp', - # faire un validateur qui verifie que si on active reactions chimiques il faut que les masses molaires soient rentrees -) - -Component = OPER(nom='Component', sd_prod=composant, - SystemType = SIMP(typ='TXM', into=['Quantum system', 'Classical particle system', 'Continuum system'], statut='o',position='global'), - PhysicalDescription = FACT(statut = 'o', - blocFluideMacro = prepareBlocFluideMacro(), - blocCPS = prepareBlocCPS(), - ), - blocModeleNumeriqueQuantum = prepareBlocSystemType('Quantum system'), - blocModeleNumeriqueClassical = prepareBlocSystemType('Classical particle system'), - blocModeleNumeriqueContinuum = prepareBlocSystemType('Continuum system'), - BoundaryConditions = FACT(statut = 'o', - BoundaryCondition = prepareBoundaryCondition(), - ) -) - -Species = PROC(nom='Species', - Specie = FACT(statut='o', max ="**", - Name = SIMP(statut='o', typ=(especeChimique,'createObject') ), - MolarMass = SIMP(statut='f', typ='R',), - ) -) - -def monBlocInteractionTypeChamp (): - return BLOC (condition = '1 == 1' , # a distinguer selon les cas - fieldNameInOrigine = SIMP(typ='TXM', statut='o'), - fieldNameInDestination = SIMP(typ='TXM', statut='o'), - ) - -def TousSelonLeTypeDeFormatDisponible(condition, prefixName=''): - TransfertType = SIMP(typ='TXM', statut='o', into =['File', 'Memory', 'CorbaObject']) - maListe = list(dictCodeFormat.keys()) - dicoArgs={} - #index=0 - #for Solv1 in maListe[index:]: - # for Solv2 in maListe[index:]: - # #print (Solv1,Solv2, calculCommun(Solv1, Solv2,dictCodeFormat)) - # print ('PNPN attention changement de dictCodeFormat tant que getEficasAttribut n est pas correct') - # conditionSolv = 'TransfertType == "File" and getEficasAttribut(origine,"Solver")==Solv1 and getEficasAttribut(destination,"Solver")==Solv2' , - # conditionSolv = 'TransfertType == "File"' - # monBlocFichier=creeBlocPourLesFichiers (conditionSolv, 'FileName', calculCommun(Solv1, Solv2,dictCodeFormat)) - # dicoArgs['monBlocFichier'+str(index)]=monBlocFichier - # index=index+1 - mesFormats=set() - for solv1 in dictCodeFormat.keys() : - for f in dictCodeFormat[solv1] : mesFormats.add(f) - conditionSolv='TransfertType == "File"' - BlocFichier=creeBlocPourLesFichiers (conditionSolv, prefixName, mesFormats, None) - dicoArgs['BlocFichier']=BlocFichier - monBlocChamp = BLOC(condition = "TransfertType=='File'", FieldName=SIMP(typ='TXM', statut='o')) - dicoArgs['monBlocChamp']=monBlocChamp - return BLOC(condition = condition,TransfertType=TransfertType, **dicoArgs) - -def SelonLeTypeDeFormatDisponibleMapper(condition): - TransferType = SIMP(typ='TXM', statut='o', into =['File', 'Memory', 'CorbaObject']) - maListe = list(dictCodeFormat.keys()) - dicoArgs={} - index=0 - for Solv1 in maListe[index:]: - for Solv2 in maListe[index:]: - #print (Solv1,Solv2, calculCommun(Solv1, Solv2,dictCodeFormat)) - print ('PNPN attention changement de dictCodeFormat tant que getEficasAttribut n est pas correct') - conditionSolv = 'TransferType == "File" and getEficasAttribut(origine,"Solver")==Solv1 and getEficasAttribut(destination,"Solver")==Solv2' , - conditionSolv = 'TransferType == "File"' - monBlocFichier=creeBlocPourLesFichiers (conditionSolv, '', calculCommun(Solv1, Solv2,dictCodeFormat),None) - dicoArgs['monBlocFichier'+str(index)]=monBlocFichier - index=index+1 - BlocChamp = BLOC(condition = "TransferType=='File'", FieldName=SIMP(typ='TXM', statut='o')) - dicoArgs['BlocChamp'] = BlocChamp - return BLOC(condition = condition,TransferType=TransferType, **dicoArgs) - -Mapper = OPER (nom= 'Mapper',sd_prod=mapper, - MapperType=SIMP(statut='o', typ='TXM', into = list(dictMapperFormat.keys())), - ) -Converter = OPER (nom= 'Converter',sd_prod=converter) - -Interactions = PROC(nom='Interactions', - Interaction = FACT(max = '**', - InteractionName = SIMP(statut='o', typ=(interaction,'createObject'),), - From = SIMP(typ=modeleNumDuCompo, statut='o'), - To = SIMP(typ=modeleNumDuCompo, statut='o'), - # ApplyOnStateVariable = SIMP(statut ='o', typ=stateVariable), #PNPN A FAIRE : fenetreIhm='menuDeroulant' - InvolvedStateVariable = SIMP(statut ='o', typ=stateVariable), #PNPN A FAIRE : Seulement du composant d'origine From - # monBloc_FFFF = BLOC ( - # condition = 'getEficasAttribut(From,"ModelType") == "Fields" and getEficasAttribut(To,"ModelType") == "Fields"' , - # TermeLE = SIMP(typ='TXM', statut='o', into = dictTermeLE['Fields','Fields'],fenetreIhm='menuDeroulant'), - # ), - # monBloc_DPDP = BLOC ( - # condition = 'getEficasAttribut(From,"ModelType") == "Particles" and getEficasAttribut(To,"ModelType") == "Particles"' , - # TermeLE = SIMP(typ='TXM', statut='o', into = dictTermeLE['Particles','Particles'],fenetreIhm='menuDeroulant'), - # ), - # monBloc_FFDP = BLOC ( - # condition = 'getEficasAttribut(From,"ModelType") == "Fields" and getEficasAttribut(To,"ModelType") == "Particles"' , - # TermeLE = SIMP(typ='TXM', statut='o', into = dictTermeLE['Fields','Particles'],fenetreIhm='menuDeroulant'), - # ), - # monBloc_DPFF = BLOC ( - # condition = 'getEficasAttribut(From,"ModelType") == "Particles" and getEficasAttribut(To,"ModelType") == "Fields"' , - # TermeLE = SIMP(typ='TXM', statut='o', into = dictTermeLE['Particles','Fields'],fenetreIhm='menuDeroulant'), - # ), - InteractionConfiguration = FACT(statut='o', - CouplingMode = SIMP(typ='TXM', statut='o', into =['Direct', 'DataProcessing', 'Conversion']), - monBlocDirect = TousSelonLeTypeDeFormatDisponible("CouplingMode=='Direct'" ), - monBlocIn = BLOC (condition = "CouplingMode=='DataProcessing' or CouplingMode=='Conversion'", - ComponentProduction = FACT(statut='o', - monBlocFormat = TousSelonLeTypeDeFormatDisponible("1", 'ComponentProduction' ), - ), - ), - monBlocMapper = BLOC (condition = "CouplingMode=='DataProcessing' or CouplingMode=='Conversion'", - ConversionNode = FACT(min=1, max='**', statut ='o', - Tool = SIMP(typ=mapper, statut ='o'), - OutFromMapper = FACT(statut ='o', - monBlocFormat = TousSelonLeTypeDeFormatDisponible("1", 'outFromMapper' ), - ), - ), - ), - ), - ), -) - -#Le dictionnaire dict_condition est un dictionnaire utilisé par eficas -# pour les position='global_jdc' et position='inGetAttribut' -dict_condition={ -'ChoiceOfApproach': ('Interactions', 'Component'), -'Interactions' : ( 'Component'), -} - -Temporal_Aspects = PROC(nom ="Temporal_Aspects", - Simulated_Time_Laps = FACT(statut='o', max='**', - name = SIMP(statut='o', typ=(simulatedTime,'createObject'),), - initialTime = SIMP(statut='o', typ='R'), - finalTime = SIMP(statut='o', typ='R'), - timeDiscretization = SIMP(statut ='o', typ = 'TXM', into = ['Constant Time Step', 'Varying Time Step']), - bloc_Constant = BLOC (condition = 'timeDiscretization == "Constant Time Step"', - constantTimeStep = SIMP (statut ='o', typ = 'R'), - ), - bloc_Varying = BLOC (condition = 'timeDiscretization == "Varying Time Step"', - CFLNumberCriteria = SIMP (statut ='o', typ = 'R'), - FourierNumberCriteria = SIMP (statut ='o', typ = 'R'), - ), - ), -) -# -# ----------------------------------------- -SpatialAspects = PROC(nom='SpatialAspects', -# ----------------------------------------- - regles = (AU_MOINS_UN('SystemGeometry', 'SpatialDiscretization'),), - - SystemGeometry = FACT(statut='f', max='**', - SystemGeometryName = SIMP(statut='o', typ=(systemGeometry, 'createObject'),), - Shape = FACT(statut ='o', max='**', - ShapeIdentifier = SIMP(statut='o', typ=(cadShape,'createObject'),max='**',), - ShapeNature = SIMP(statut='o', typ='TXM', into=['Typical Geometry', 'CAD']), - - blocShape = BLOC(condition = 'Shape_Nature == "Typical Geometry"', - Box = SIMP(statut='o', typ='TXM', into=['Cube', 'Sphere','Cylinder'] ), - blocCube = BLOC(condition = 'Box == "Cube"', - #Taille_Box_Englobante = SIMP(statut='o', typ='R', max=3, min =3) - # derait etre un Tuple(3) mais a faire apres la projection - #Size_Of_Bounding_Box = SIMP(statut='o', typ=Tuple(3), validators=VerifTypeTuple(('R','R','R'),),) - Size_Of_Bounding_Box = SIMP(statut='o', typ='R', max=3, min=3, ), - ), # fin blocCube - blocBoule = BLOC(condition = 'Box == "Sphere"', - Center = SIMP(statut='o', typ='R', max=3, min =3), - ),# fin b_Boule - blocCylinder = BLOC(condition = 'Box == "Cylinder"', - Heigth = SIMP(statut="o", typ='R', val_min=0.0, ang='Nanotube length [m]'), - ),# fin blocCylinder - blocBouleOuCylinder = BLOC(condition = 'Box == "Sphere" or Box == "Cylinder"', - Radius = SIMP(statut='o', typ='R', val_min=0.0, ang='radius length [m]') , - ),# fin blocBouleOuCylinder - ), # fin blocShape - blocCAO = creeBlocPourLesFichiers("Shape_Nature == 'CAD'",'Domain', ['txt','I-deas', 'Gmsh', 'top',],None), - ), # fin Shape - ),# SystemGeometry - - SpatialDiscretization = FACT(statut='f', max="**", - MeshId = SIMP(statut='o', typ=(meshIdentifier,'createObject')), - MeshName = SIMP(statut='o', typ='TXM'), - blocMeshFile = creeBlocPourLesFichiers("1 == 1",'Mesh',listeFormatGenerique,None), - GroupIdentifier = SIMP(statut='o', typ=(meshGroup,'createObject'),max='**',), - ),# SpatialDiscretization - - BoundaryConstraints = FACT(statut = 'f', - Motion = FACT(statut='f', - MotionNature = SIMP(statut='o', typ='TXM', into=['Fixed boudary', 'Translational motion', 'Rotational motion', 'Scaling']), - - blocTranslationalMotion = BLOC(condition = 'MotionNature == "Translational motion"', - TranslationVelocity = SIMP(statut='o', typ='R'), - boundaries = SIMP(statut='o', typ=spatialRegion,max='**', homo='SansOrdreNiDoublon' ), - ), - blocRotationalMotion = BLOC(condition = 'MotionNature == "Rotational motion"', - RotationRate = SIMP(statut='o', typ='R'), - boundaries = SIMP(statut='o', typ=spatialRegion,max='**', homo='SansOrdreNiDoublon' ), - ), - blocFixed = BLOC(condition = 'MotionNature == "Fixed boudary"', - boundaries = SIMP(statut='o', typ=spatialRegion,max='**', homo='SansOrdreNiDoublon'), - ), - ), -#PN decrire page 28 - Mapping = FACT(statut='f', - ), - ), # Boundary_Constraints -) # fin Geometric_Domain - -TEXTE_NEW_JDC = "\ -Velocity=scalar()\ -" diff --git a/Vimmp/cata_CSAndCPS_v11_test_driver_1.comm b/Vimmp/cata_CSAndCPS_v11_test_driver_1.comm deleted file mode 100644 index bbe061e9..00000000 --- a/Vimmp/cata_CSAndCPS_v11_test_driver_1.comm +++ /dev/null @@ -1,143 +0,0 @@ -Fluid_Pressure=dynamicVariable() -Temperature=scalar() -Time1=simulatedTime() -Time2=simulatedTime() -CS_Num1=modeleNumDuCompo() -P1=userDiscrete() -CS_Num2=modeleNumDuCompo() -CS_Num1__CS_Num2__Velocity=interaction() -Group_From_Mesh1=meshGroup() -Group_From_Mesh2=meshGroup() -Average_Velocity=dynamicVariable() -K=scalar() -Epsilon=scalar() -outlet=meshGroup() -symmetry=meshGroup() -wall=meshGroup() -half_pipe_15_20=meshIdentifier() -half_pipe_3=meshIdentifier() -inlet1=meshGroup() -inlet2=meshGroup() - -SpatialAspects(SpatialDiscretization=(_F(MeshId=half_pipe_15_20, - MeshName='half_pipe', - MeshFileFormat='Med', - MeshFileName=\ - '/home/eric/VIMMP/vimmptraining/app/fluide+mapper+particule/datafiles/half_pipe_15_20.med', - GroupIdentifier=(inlet1,inlet2,outlet,symmetry,wall,Group_From_Mesh1,),), - _F(MeshId=half_pipe_3, - MeshName='half_pipe_generation_tetra', - MeshFileFormat='Med', - MeshFileName=\ - '/home/eric/VIMMP/vimmptraining/app/fluide+mapper+particule/datafiles/half_pipe_3.med', - GroupIdentifier=(inlet1,inlet2,outlet,symmetry,wall,Group_From_Mesh2,),),),); - -Temporal_Aspects(Simulated_Time_Laps=_F(name=Time1, - initialTime=0.0, - finalTime=10.0, - timeDiscretization='Constant Time Step', - constantTimeStep=0.1,),); - -Temporal_Aspects(Simulated_Time_Laps=_F(name=Time2, - initialTime=10.0, - finalTime=15.0, - timeDiscretization='Constant Time Step', - constantTimeStep=0.01,),); - -FluidComponent=Component(SystemType='Continuum system', - PhysicalDescription=_F(ComplexFluid=False, - FlowNature='Turbulent', - DensityInitialisation=_F(DensityValueType='Value', - Density=1.17862,), - ViscosityInitialisation=_F(ViscosityValueType='Value', - Viscosity=0.0183,), - TurbulenceForFlowDynamics=_F(TurbulenceModellingType='One-point moment', - RANSModel='Turbulent-Viscosity Model (TVM)', - TVMChoice='K-Epsilon',), - DynamicalVariables=_F(OriginOfDynamicalVariables='to be simulated', - Pressure=_F(FluidPressure=Fluid_Pressure, - SourceTerm=False,), - Velocity=_F(AverageVelocity=Average_Velocity, - SourceTerm=False,), - KDefinition=_F(Name=K, - SourceTerm=False,), - EpsilonDefinition=_F(Name=Epsilon, - SourceTerm=False,),), - Thermal=_F(ThermalEffects='Non thermal', - ReferenceTemperature=293.15,), - Scalars=_F(withScalars=False,),), - NumericalModel=_F(Identifier=CS_Num1, - SimulatedTimeLapse=Time1, - ChoiceOfApproach='Field-based', - NumericalMethod='FV', - Solver='Code_Saturne', - MeshIdentifiers=(half_pipe_15_20,),), - BoundaryConditions=_F(BoundaryCondition=(_F(TypeOfBoundaryCondition='Inlet', - ApplyOnGroups=(inlet1,inlet2,), - ApplyOnStateVariable=(Average_Velocity,), - FormulationOfBoundary='Dirichlet', - IntegratedVectorValue=_F(U=1.0, - V=0.0, - W=0.0,),), - _F(TypeOfBoundaryCondition='Inlet', - ApplyOnGroups=(inlet1,inlet2,), - ApplyOnStateVariable=(K,), - FormulationOfBoundary='Dirichlet', - IntegratedValue=0.0,), - _F(TypeOfBoundaryCondition='Wall', - ApplyOnGroups=(wall,), - VelocityAtBoundary=_F(SlipVelocity=0.0, - WallMotion=_F(U=1.0, - V=0.0, - W=0.0,),), - LevelOfDescription=_F(WallFunction='2-scale model (Log law)',),),),),); - -PartComponent=Component(SystemType='Classical particle system', - PhysicalDescription=_F(Particle=_F(ParticleNature='Discrete Particle', - DiscreteParticleName=P1, - TypeOfDiscreteParticle='Solid', - TypeOfSolid='Primary Particle', - Properties=_F(Geometry='Sphere', - ParticleRadius=1e-05, - Weight=_F(Density=1000.0,), - Mechanical='Rigid',), - ListOfInteractions=_F(BondedInteractions=_F(TypeOfBondedInteraction=\ - 'NoOne',), - UnbondedInteractions=_F(TypeOfUnbondedInteraction=\ - 'No',), - ExternalFieldInteraction=_F( - TypeOfInteractionWithAnExternalField='NoOne', - FieldAppliesOnAllSpecies=True,),),),), - NumericalModel=_F(Identifier=CS_Num2, - SimulatedTimeLapse=Time2, - ChoiceOfApproach='N-Particle_Method', - NumericalMethod='CFD_Discrete_N-Particle_Method', - Solver='Code_Saturne', - MeshIdentifiers=(half_pipe_3,),), - BoundaryConditions=_F(BoundaryCondition=_F(TypeOfBoundaryCondition='Wall', - ApplyOnGroups=(wall,), - VelocityAtBoundary=_F(SlipVelocity=0.0, - WallMotion=_F(U=0.0, - V=0.0, - W=0.0,),), - LevelOfDescription=_F(),),),); - -MedCouplingComponent=Mapper(MapperType='Med Coupling',); - -Interactions(Interaction=_F(InteractionName=CS_Num1__CS_Num2__Velocity, - From=CS_Num1, - To=CS_Num2, - InvolvedStateVariable=Average_Velocity, - InteractionConfiguration=_F(CouplingMode='DataProcessing', - ComponentProduction=_F(TransfertType='File', - ComponentProductionFileFormat='All', - ComponentProductionFileName=\ - '/tmp/results_Fluid_domain.med', - FieldName='Velocity',), - ConversionNode=_F(Tool=MedCouplingComponent, - OutFromMapper=_F(TransfertType='File', - outFromMapperFileFormat='Med', - outFromMapperFileName=\ - '/tmp/results_Fluid_domain.med', - FieldName='Velocity',),),),),); -#CHECKSUM:7e8036a9ad8ee817209c60d890bcf4f8 -:FIN CHECKSUM \ No newline at end of file diff --git a/Vimmp/cata_CSAndCPS_v12.py b/Vimmp/cata_CSAndCPS_v12.py deleted file mode 100644 index 815bf384..00000000 --- a/Vimmp/cata_CSAndCPS_v12.py +++ /dev/null @@ -1,1291 +0,0 @@ -from Accas import * - -class composant(ASSD):pass -class mapper(ASSD):pass -class converter(mapper):pass -class interpolator(mapper):pass -class modeleNumDuCompo(UserASSD):pass -class especeChimique(UserASSD):pass -class userParticle(UserASSD) :pass -class userAtom(userParticle) :pass -class userMolecule(userParticle) :pass -class userDiscrete(userParticle) :pass -class userDPD(userParticle) :pass - -class spatialRegion(UserASSD):pass -class cadShape(spatialRegion):pass -#class meshGroup(spatialRegion,UserASSDMultiple):pass -class meshGroup(UserASSDMultiple):pass -class meshIdentifier(spatialRegion):pass -class systemGeometry(UserASSD):pass -class simulatedTime(UserASSD):pass -class constitutiveRelation(UserASSD):pass -class interaction(UserASSD):pass -class transferId(UserASSD):pass -class fileId(transferId):pass -class memoryId(transferId):pass -class corbaId(transferId):pass - -class stateVariable(UserASSDMultiple) : pass -class scalar(stateVariable):pass -class dynamicVariable(stateVariable):pass - - -# PN a faire --> ajouter un MC modeleNumerique (apres avoir renomme le modeleNumerique actuel en classe de modele numerique) -# et le dictionnaire d apres -# dictTypModNumModNum = { -# ('Continuum system','Particles') : ('SPH','Lagrangian one-fluid-particle pdf'), -# ('Continuum system','Fields') : ('FV','FEM', 'Spectral method'), -# ('Classical particle system','Particles') : ('MD', 'DPD', 'SDPD','SPH','CFD_Discrete_Particles'), -# ('Classical particle system','Fields') : ('LBM',), -# ('Quantum system','Particles') : ('Particle method',), -# ('Quantum system','Fields') : ('Wave',), -# } - -dictTypModNumModNum = { - ('Continuum system','N-Particle_Method') : ('SPH' , 'Lagrangian one-fluid-particle pdf'), #TODO 'N-Particle_Method --> N-Particle_Method - ('Continuum system','Field-based') : ('FV' , 'FEM', 'Spectral method'), - ('Classical particle system','N-Particle_Method') : ('MD' , 'DPD', 'SDPD','SPH','CFD_Discrete_N-Particle_Method'), - ('Classical particle system','Field-based') : ('LBM' ,), - ('Quantum system','N-Particle_Method') : ('Particle method',), - ('Quantum system','Field-based') : ('Wave',), -} - -dictCodeModeleNumerique = { - 'Code_Saturne' : ('Lagrangian one-fluid-particle pdf', 'FV', 'CFD_Discrete_N-Particle_Method',), - 'Fluent' : ('FV',), - 'Culgi Package': (), - 'DEM_SD' : ('Lagrangian one-fluid-particle pdf', 'FV', 'CFD_Discrete_N-Particle_Method',), - 'DFTB+' : ('density functional tight binding method',), - 'DL_MESO_DPD' : ('Lagrangian one-fluid-particle pdf', 'FV', 'CFD_Discrete_N-Particle_Method',), - 'DL_MESO_LBE' : ('Lagrangian one-fluid-particle pdf', 'FV', 'CFD_Discrete_N-Particle_Method',), - 'DL_POLY_4' : ('Lagrangian one-fluid-particle pdf', 'FV', 'CFD_Discrete_N-Particle_Method',), - 'GROMACS' : ('Lagrangian one-fluid-particle pdf', 'FV', 'CFD_Discrete_N-Particle_Method',), - 'GROMACS_LS' : ('Lagrangian one-fluid-particle pdf', 'FV', 'CFD_Discrete_N-Particle_Method',), - 'LAMMPS' : ('Lagrangian one-fluid-particle pdf', 'FV', 'CFD_Discrete_N-Particle_Method',), - 'NWChem' : ('Lagrangian one-fluid-particle pdf', 'FV', 'CFD_Discrete_N-Particle_Method',), - 'OpenFOAM' : ('Lagrangian one-fluid-particle pdf', 'FV', 'CFD_Discrete_N-Particle_Method',), - 'Quantum EXPRESSO' : ('Particle method', 'Wave',), - 'RHEO_AGGRATE' : ('Particle method', 'Wave',), - 'RHEO_DROP' : ('Particle method', 'Wave',), - 'STAR_CCM+' : ('FV', 'Particles',), - 'Code Nill' : ('Spectral method', ), -} -# Le Code Nill est ajouté en dur au Solver - -dictCodeFormat = { - 'Code_Saturne' : ('Med', 'cgns', 'msh', 'des', 'unv', ), - 'Culgi Package': ('cof',), - 'DEM_SD' : ('geo', 'ascii'), - 'DFTB+' : ('geo', 'ascii'), - 'Fluent' : ('FluentFormat', ), - 'OpenFOAM' : ('OpenFoamFormat', 'Med', ), -} - -dictInterpolatorFormat = { - 'Med Coupling' : ('Med',), -} -dictConvertorFormat = { - 'Gmsh' : ('Med', 'OpenFoamFormat'), -} - -dictTermeLE = { - ('Fields','Particles') : ('Fluid_Velocity_Field', - 'Fluid_Temperature_Field', - 'Fluid_Species_Mass_Fraction_Fluid',), - ('Particles','Fields') : ('Fluid_Particle_Momentum_Exchange_Field', - 'Fluid_Particle_Thermal_Exchange_Field', - 'Lagrangian one-particle pdfFluid_Particle_Mass_Source_Field', - 'Particle_Volumetric_Concentration_Modified_Fluid_Viscosity', - 'Particle_Extra_Stress_Tensor'), - ('Particles','Particles') : ('Pas encore fait'), - ('Fields','Fields') : ('Pas encore fait'), -} - -dictCodeConvertisseur = { - ('Saturne', 'OpenFOAM') : ('gmsh', 'Saturne2CDM and CDM2OpenFoam'), - ('Saturne', 'Fluent') : ('Saturne2CDM and CDM2Fluent'), - ('Fluent', 'OpenFOAM') : ('Fluent2CDM and CDM2OpenFoam'), -} - -listeFormatGenerique =['Med', 'Cgns', 'Gmsh', ] - -#---------------------------------------- -def prepareBlocSystemType(systemType) : -#---------------------------------------- - condition = "SystemType == '" + systemType + "'" - Identifier = SIMP(statut='o', typ=(modeleNumDuCompo,'createObject'),) - SimulatedTimeLapse = SIMP(statut ='o', typ = simulatedTime) - # ModelType = SIMP(statut='o', typ='TXM', into = ('Particles', 'Fields'), position='inGetAttribut') - ChoiceOfApproach = SIMP(statut='o', typ='TXM', into=['Field-based', 'N-Particle_Method'], position='inGetAttribut') - - dicoArgs={} - - for typeMod in ('Field-based', 'N-Particle_Method'): - conditionType = "ChoiceOfApproach == '" + typeMod + "'" - NumericalMethod = SIMP(statut='o',typ='TXM', into=dictTypModNumModNum[systemType, typeMod], - position='global', intoXML=allValueInDict(dictTypModNumModNum)) - dicoBloc = {} - for modeleNumerique in list(dictTypModNumModNum[systemType,typeMod]): - conditionNum = "NumericalMethod == '" + modeleNumerique + "'" - setCode = set() - for code in dictCodeModeleNumerique.keys(): - if modeleNumerique in dictCodeModeleNumerique[code]: setCode.add(code) - # print('------------- conditionType -------->',conditionType) - if setCode ==set(): setCode.add('Code Nill') - Solver = SIMP(statut='o', typ='TXM', into=list(setCode), intoXML=list(dictCodeModeleNumerique.keys()) ) - monNomBloc = 'bloc_ModelName_' + modeleNumerique.replace(' ','_') #les noms de blocs ne peuvent pas avoir de blanc ! - if setCode !=set(): dicoBloc[monNomBloc]=BLOC(condition=conditionNum, nomXML='b_ModelName',Solver=Solver) - dicoArgs['blocModelType'+typeMod] = BLOC(condition=conditionType, NumericalMethod=NumericalMethod, **dicoBloc) - - blocMeshRef = BLOC(condition = '( (ChoiceOfApproach == "Field-based") and (NumericalMethod == "FV") ) or ' - '( (ChoiceOfApproach == "N-Particle_Method") and (NumericalMethod == "CFD_Discrete_N-Particle_Method") )', - MeshIdentifiers = SIMP(statut ='o', max ='**', typ = meshIdentifier, - metAJour=(('ApplyOnGroups', - 'self.etape.getChild("BoundaryConditions").getChild("BoundaryCondition")'),), - ),) - dicoArgs['blocMeshRef'] = blocMeshRef - NumericalModel = FACT(statut='o', max= '**', Identifier=Identifier, ChoiceOfApproach=ChoiceOfApproach, - SimulatedTimeLapse=SimulatedTimeLapse, **dicoArgs) - return BLOC(condition=condition, nomXML='b_systemType', NumericalModel=NumericalModel) - - -#----------------------------------- -def calculCommun(key1, key2, dico): -#----------------------------------- -# retourne la liste des valeurs communes a dico[key1] et dico[key2] - monSet=set() - if not key1 in dico: return () - if not key2 in dico: return () - for val in dico[key1]: - if val in dico[key2]: - monSet.add(val) - if monSet == set() : monSet.add ('No common format') - return list(monSet) - -#------------------------- -def allValueInDict(dico): -#------------------------- -# retourne la liste de toutes les valeurs possibles dans dico - monSet=set() - for clef in dico : - for val in dico[clef] : monSet.add(val) - return monSet - -#-------------------------------------------------------------------------------------------------- -def creeBlocPourLesFichiers(laCondition, Prefixe='Empty', ListeFormats=[], FieldName=None): -#--------------------------------------------------------------------------------------------------- -# il faut reflechir pour parametrer NomDuFichier -# et le type (existing... du fichier) -# et utiliser le creeBlocPourLesFichiers - SIMPFormatFichier = SIMP(statut='o', typ = 'TXM', into = tuple(ListeFormats) + ('All',), defaut='All' ) - dicoDesBlocs = {} - NomDuFichier = Prefixe+'FileName' - formatName = Prefixe+'FileFormat' - dicoDesBlocs[formatName] = SIMPFormatFichier - ListeFormatsboucle = tuple(ListeFormats) + ('All',) - for formatFich in ListeFormatsboucle : - dicoArgs={} - nomBloc = 'blocFormatFichier' + str(formatFich) - typeDesFichiers = ('Fichier', formatFich + " Files (*." + formatFich + ");;All Files (*)",'Sauvegarde') - blocCondition = formatName + " == '" + formatFich + "'" - dicoArgs[NomDuFichier] = SIMP(statut='o', typ = typeDesFichiers, nomXML=NomDuFichier ) - dicoDesBlocs[nomBloc] = BLOC(condition = blocCondition, **dicoArgs) - if FieldName: - SIMPFieldName = SIMP(statut='o', typ = 'TXM',) - dicoDesBlocs[FieldName] = SIMPFieldName - return BLOC(condition=laCondition, **dicoDesBlocs) - -#--------------------------------------------- -def prepareChamp(nomDelaContante, labels ,nbReels ) : -#--------------------------------------------- -# PN : a reecrire -# ajouter les extensions pour le fichier et les blocs associes -# certains champs ne seront jamais uniformes -# probablement a refaire -#PNPN : Passer le nom du champ pour le label du vecteur -# A revoir - - dicoBloc = {} - dicoBloc[nomDelaContante] = SIMP(statut='o', typ='R') - return FACT(statut='o', - InputMode = SIMP(statut='o', typ='TXM', into=('uniform value','values directly assigned','values read in file','analytical function',)), - blocUniforme = BLOC(condition = "InputMode == 'uniform value'", **dicoBloc), - blocVsaisies = BLOC(condition = "InputMode == 'values directly assigned'", - Field = SIMP(typ='R', statut='o', max ='**'), - #Vecteur = SIMP(fenetreIhm='Tableau', homo = labels, - # statut='o', min=2, max='**', - # typ=Tuple(nbReels), - # validators=VerifTypeTuple(("'R',"*nbReels),),) # end particle - ), #b_vsaisie - blocVdsfich = BLOC(condition = "InputMode == 'values read in file'", - Format = SIMP(statut='o', typ='TXM', into=['txt','Med',], position='global' ), - td_txt = BLOC(condition = 'Format == "txt"', - File = SIMP(statut='o', typ=('Fichier','Text Files(*.txt);All Files (*)'),), - ), # fin vtd_txt - td_med_1 = BLOC(condition = 'Format == "Med"', - File = SIMP(statut='o', typ=('Fichier','Med Files(*.med);All Files (*)'),), - ), - td_med_2 = BLOC(condition = 'Format == "Med"', - FieldName = SIMP(statut='o', typ='TXM',), - ), - ), - blocFunct = BLOC(condition = "InputMode == 'analytical function'", - Function = SIMP(statut='o', typ='TXM',), - ), - #b_vserc = BLOC(condition = "InputMode == 'call to a service'", - # Service = SIMP(statut='o', typ='TXM',), - #), - ) - - -#------------------------------ -def prepareTermeSource(condition): -#------------------------------ - return BLOC (condition=condition, - OriginOfSourceTerm = SIMP(statut='o', typ='TXM',into=['Interaction', 'Chemical Reaction', 'Other Scalar']), - blocOriginOfSourceTermInteraction = BLOC(condition = 'OriginOfSourceTerm == "Interaction"', - SourceTermInteraction = SIMP(typ=interaction,statut='o'), - Consigne = SIMP(statut="o", homo="information", typ="TXM", defaut='Create and choose suitable interaction'), - ), - blocOriginOfSourceTermOtherScalar = BLOC(condition = 'OriginOfSourceTerm == "Other Scalar"', - ApplyOnScalar = SIMP (statut ='o', typ=scalar, ), #PNPN A FAIRE : fenetreIhm='menuDeroulant' - ), - ) - -#------------------------------ -def prepareTermeSourceDynVar(condition): -#------------------------------ - return BLOC (condition=condition, - OriginOfSourceTerm = SIMP(statut='o', typ='TXM',into=['Interaction', 'Other Scalar']), - ) - -#------------------------------------------------------ -def prepareFactTurbulence(statut, ajout=None , position=None, positionChoice=None): -#------------------------------------------------------ - listInto = ['Fully resolved (DNS)', 'Spatial filtering (LES)', 'One-point moment', 'One-point PDF'] - if ajout != None : listInto.append(ajout) - return FACT(statut=statut, - TurbulenceModellingType = SIMP(typ='TXM', statut='o', into =listInto, position=position ), - -# --------------- One-point moment ------------------ - blocOnePoint = BLOC(condition= "TurbulenceModellingType == 'One-point moment'", - RANSModel = SIMP(statut="o", typ="TXM", position='global', - into=['Turbulent-Viscosity Model (TVM)', 'Reynolds Stress Model (RSM)']), - blocTVM = BLOC(condition= "RANSModel == 'Turbulent-Viscosity Model (TVM)'", - TVMChoice = SIMP(typ='TXM', statut='o', into=['K-Epsilon', 'K-Omega'] , position=positionChoice), ##PN PN : parametre vs reCalculeEtape - ), # fin blocTVM - blocRSM = BLOC(condition = "RANSModel == 'Reynolds Stress Model (RSM)'", - RSMChoice = SIMP(typ='TXM', statut='o', into=['Rotta', 'LRR-IP','LRR-QI','SSG'], position=positionChoice), - ), # fin blocRSM - ), # fin bloc_one_point - -# --------------- Spatial filtering (LES) ------------------ - blocOneSpatial = BLOC(condition = "TurbulenceModellingType == 'Spatial filtering (LES)'", - ChoiceOfDescription = SIMP(typ='TXM', statut='o', into=['One-point filtered variables', 'Filtered Density Function (FDF)']), - blocOnePoint = BLOC(condition = "ChoiceOfDescription == 'One-point filtered variables'", - SubgridScaleModel = SIMP(typ='TXM', statut='o', into=['No SGS', 'Smagorinsky','Dynamical model', 'SGS Transport Equations']), - ),# fin bloc_OnePoint - blocFDF = BLOC(condition = "ChoiceOfDescription == 'Filtered Density Function (FDF)'", - SubgridScaleModel = SIMP(typ='TXM', statut='o', into=['SLM model for SGS', 'Viscous SLM model for SGS']), - ),# fin bloc_FDF - ), # fin bloc_one_spatial - -# --------------- One-point PDF ------------------ - blocOnePointPdf = BLOC(condition = "TurbulenceModellingType == 'One-point PDF'", - ChoiceOfDescription = SIMP(typ='TXM', statut='o', into=['Velocity PDF', 'Velocity frequency PDF']), - blocVPdf = BLOC(condition = "ChoiceOfDescription == 'Velocity PDF'", - StochasticModel = SIMP(typ='TXM', statut='o', into=['SLM','GLM'], defaut='SLM'), - ), # fin blocVPdf - blocVFPdf = BLOC(condition = "ChoiceOfDescription == 'Velocity frequency PDF'", - StochasticModel = SIMP(typ='TXM', statut='o', into=['Log-normal model','Gamma model','User-defined form'], defaut='SLM'), - ), # fin blocVFPdf - ), # fin bloc_one_point_pdf - -# --------------- Fully resolved (DNS) ------------------ - # blocNoModel = BLOC(condition = "TurbulenceModellingType == 'Fully resolved (DNS)'", - # ChoiceOfApproach = SIMP(statut='o', typ='TXM', into=['Field-based (DNS)', 'N-Particle_Method']), - # blocField = BLOC(condition = "ChoiceOfApproach == 'Field-based (DNS)'", - # NumericalMethod = SIMP(statut='o', typ='TXM', into=['FV', 'Spectral Method'], - # intoXML=['FV', 'Spectral Method','SPH', 'Vortex Method']), - # ),# fin bloc_Field - # blocNParticle = BLOC(condition = "ChoiceOfApproach == 'N-Particle_Method'", - # NumericalMethod = SIMP(statut='o', typ='TXM', into=['SPH', 'Vortex Method'], - # intoXML=['FV', 'Spectral Method','SPH', 'Vortex Method']), - # ),# fin bloc_N_particle - # ), # fin bloc_no_model - ) # fin du return de la fonction factTurbulence - - - -#------------------------------------------------------ -def prepareFactTurbulenceScalaire(statut, ajout=None , position=None): -#------------------------------------------------------ - listInto = ['Fully resolved (DNS)', 'Spatial filtering (LES)', 'One-point moment', 'One-point PDF'] - if ajout != None : listInto.append(ajout) - return FACT(statut=statut, - TurbulenceModellingType = SIMP(typ='TXM', statut='o', into =listInto, position=position ), - -# --------------- One-point moment ------------------ - blocOnePoint = BLOC(condition= "TurbulenceModellingType == 'One-point moment'", - RANSModel = SIMP(statut="o", typ="TXM", - into=['Algebraic flux models','Turbulent diffusivity models', 'Scalar-flux transport equations']), - # blocAlgebraic = BLOC(condition= "RANSModel == 'Algebraic flux models'", - # blocConsigne = BLOC(condition= "RANSModel == 'Algebraic flux models'", - # Consigne = SIMP(statut="o", homo="information", typ="TXM", defaut='Not implemented yet'), - # ), # fin blocAlgebraic - blocTDM = BLOC(condition = "RANSModel == 'Turbulent diffusivity models'", - TDMChoice = SIMP(typ='TXM', statut='o', into=['SGDH', 'GGDH',]), - ), # fin blocTDM - blocSFTE = BLOC(condition = "RANSModel == 'Scalar-flux transport equations'", - SFTEChoice = SIMP(typ='TXM', statut='o', into=['Pressure-scrambling model', 'EB-DFM',]), - ), # fin blocSFTE - ), # fin bloc_one_point - -# --------------- Spatial filtering (LES) ------------------ - blocOneSpatial = BLOC(condition = "TurbulenceModellingType == 'Spatial filtering (LES)'", - ChoiceOfDescription = SIMP(typ='TXM', statut='o', into=['One-point filtered variables', 'Filtered Density Function (FDF)']), - blocOnePoint = BLOC(condition = "ChoiceOfDescription == 'One-point filtered variables'", - SubgridScaleModel = SIMP(typ='TXM', statut='o', into=['No SGS model', 'SGS diffusivity', 'Transport eqs. for SGS scalar fluxes']), - ),# fin bloc_OnePoint - blocFDF = BLOC(condition = "ChoiceOfDescription == 'Filtered Density Function (FDF)'", - SubgridScaleModel = SIMP(typ='TXM', statut='o', into=['Composition FDF', 'Scalar-velocity FDF', 'Micro-mixing model']), - ),# fin bloc_FDF - ), # fin bloc_one_spatial - -# --------------- One-point PDF ------------------ - blocOnePointPdf = BLOC(condition = "TurbulenceModellingType == 'One-point PDF'", - ChoiceOfDescription = SIMP(typ='TXM', statut='o', into=['Composition PDF','Velocity PDF', 'Micro-mixing models']), - # blocCPdf = BLOC(condition = "(ChoiceOfDescription == 'Composition PDF') or (ChoiceOfDescription == 'Velocity PDF')", - # blocConsigne = BLOC(condition = "(ChoiceOfDescription == 'Composition PDF') or (ChoiceOfDescription == 'Velocity PDF')", - # Consigne = SIMP(statut="o", homo="information", typ="TXM", defaut='Not implemented yet.'), - # ), # fin blocCPdf - # blocVPdf = BLOC(condition = "ChoiceOfDescription == 'Velocity PDF'", - # ), # fin blocVPdf - blocMMMPdf = BLOC(condition = "ChoiceOfDescription == 'Micro-mixing models'", - ChoiceOfModel = SIMP(typ='TXM', statut='o', into=['IEM/CIEM','Curl model','Mapping','EMST'],), - ), # fin blocMMMdf - ), # fin bloc_one_point_pdf - -# --------------- Fully resolved (DNS) ------------------ - # blocNoModel = BLOC(condition = "TurbulenceModellingType == 'Fully resolved (DNS)'", - # ChoiceOfApproach = SIMP(statut='o', typ='TXM', into=['Field-based (DNS)', 'N-Particle_Method']), - # blocField = BLOC(condition = "ChoiceOfApproach == 'Field-based (DNS)'", - # NumericalMethod = SIMP(statut='o', typ='TXM', into=['FV', 'Spectral Method'], - # intoXML=['FV', 'Spectral Method','SPH', 'Vortex Method']), - # ),# fin bloc_Field - # blocNParticle = BLOC(condition = "ChoiceOfApproach == 'N-Particle_Method'", - # NumericalMethod = SIMP(statut='o', typ='TXM', into=['SPH', 'Vortex Method'], - # intoXML=['FV', 'Spectral Method','SPH', 'Vortex Method']), - # ),# fin bloc_N_particle - # ), # fin bloc_no_model - ) # fin du return de la fonction factTurbulence - - -#-------------------------- -def Particle(cardinalite) : -#-------------------------- - return FACT(statut='o', max=cardinalite, - ParticleNature = SIMP(statut='o', typ='TXM', into=['Atoms', 'Molecules', 'Dissipative', 'Fluid Particle', 'Discrete Particle']), - blocAtom = BLOC(condition='ParticleNature == "Atoms"', - AtomsName = SIMP(statut='o', typ=(userAtom,'createObject'),), - Atom = FACT(statut ='o', max= '**', - ChemicalSpecie = SIMP(statut='o', typ='TXM'), - Number = SIMP(statut='o', typ = 'I'), - ElectricCharge = SIMP(statut='o', typ='R'), - MagneticMoment = SIMP(statut='o', typ='R'), - Size = SIMP(statut='f', typ='R'), # relevant ? - ),# Atom - ), # fin b_Atom -# --------------- Molecules ------------------ - blocMolecule = BLOC(condition='ParticleNature == "Molecules"', - MoleculeName = SIMP(statut='o', typ=(userMolecule,'createObject'),), - ChemicalSpecie = FACT(max='**', statut='o', - ChemicalSpecieName = SIMP(statut='o', typ=userAtom), - Proportion = SIMP(statut='o', typ='R', val_max =1), - ), - ElectricCharge = SIMP(statut='o', typ='R'), - MagneticMoment = SIMP(statut='o', typ='R'), - Shape = SIMP(statut='f', typ='TXM', into=['Linear', 'Trigonal Planar', 'Angular', 'Tetrahedral', 'Octahedral', 'Trigonal pyramid', 'Other']), - ), #fin b_Molecule - -# --------------- Dissipative ------------------ - blocDissipative = BLOC(condition='ParticleNature == "Dissipative"', - DPDName = SIMP(statut='o', typ=(userDPD,'createObject'),), - BondedParticles = SIMP(statut="o", typ=bool, defaut=False), - ), # b_Dissipative - -# --------------- Discrete Particle ------------------ - blocDiscrete = BLOC(condition='ParticleNature == "Discrete Particle"', - DiscreteParticleName = SIMP(statut='o', typ=(userDiscrete,'createObject'),), - TypeOfDiscreteParticle = SIMP(statut='o', typ='TXM', into=['Solid', 'Droplets', 'Bubbles','Bio Organism'],), - blocTypeDPSolid = BLOC(condition ='TypeOfDiscreteParticle == "Solid"', - TypeOfSolid = SIMP(statut='o', typ='TXM', into=['Primary Particle', 'Assemblage / Aggregate'], position = 'global'), - b_SolidPrimary = BLOC(condition='TypeOfSolid == "Primary Particle"', - ), - b_SolidAggregate = BLOC(condition='TypeOfSolid == "Assemblage / Aggregate"', - ), - ), -# --------------- Bio Organism ------------------ - blocTypeBioSolid = BLOC(condition='TypeOfDiscreteParticle == "Bio Organism"', - TypeOfOrganism = SIMP(statut='o', typ='TXM', into=['Unicellular', 'Multicellular']), - blocUnicellular = BLOC(condition ='TypeOfOrganism=="Unicellular"', - Unicellular = SIMP(statut='o', typ='TXM', into=["Bactaria"], defaut='Bactaria') - ), - b_Multicellular = BLOC(condition ='TypeOfOrganism=="Multicellular"', - Multicellular = SIMP(statut='o', typ='TXM', into=["Animal","Fongus","Plant"]) - ), - ), # b_TypeBio_Solid - -# --------------- Particule Properties ------------------ - Properties = FACT(statut ='o', - Geometry = SIMP(statut='o', typ='TXM', into=['Sphere', 'Ellopsoids', 'Other Shape']), - b_geom_Sphere = BLOC(condition = 'Geometry == "Sphere"', - ParticleRadius = SIMP(statut='o', typ ='R', val_min = 0), - ), - Weight = FACT(statut = 'o', - Consigne = SIMP(statut="o", homo="information", typ="TXM", defaut='Choose between Mass or Density'), - Mass = SIMP(statut='f', typ ='R', val_min = 0), - Density = SIMP(statut='f', typ ='R', val_min = 0), - ), - Mechanical = SIMP(statut='o', typ='TXM', into=['Rigid', 'Flexible', 'Deformable']), - b_SolidAggregate = BLOC(condition='TypeOfSolid == "Assemblage / Aggregate"', - Morphological = FACT(statut = 'o', - Consigne = SIMP(statut="o", homo="information", typ="TXM", defaut='Choose optional properties'), - FractalDimension = SIMP(statut='f', typ='R'), - NumberOfPrimaryParticle = SIMP(statut ='f',typ='I'), - EquivalentSize = SIMP(statut='f', typ='R'), - Porosity = SIMP(statut='f', typ='R'), - ), # Morphological - ), # b_SolidAggregate - ElectroMagnetic = FACT(statut = 'f', - ElectricCharge = SIMP(statut='o', typ='R'), - MagneticMoment = SIMP(statut='o', typ='R'), - ), - b_SolidAggregateBonded = BLOC(condition='TypeOfSolid == "Assemblage / Aggregate"', - BondedParticles = FACT( - ListOfBondedParticles = SIMP(statut='o', max='**', typ = userParticle), - ), - ), - ), # Properties - ), # b_Discrete - -############################ - - ListOfBondedParticles = FACT(statut='f', - # --------------------------------------# - BondedParticles = FACT(statut='o', max = "**", - NameOfBonded_Particles = SIMP(statut='o', typ='TXM'), - SpeciesinParticle = SIMP(statut='o', min=2, typ='TXM' , max = "**"), - ), # BondedParticles - ), # ListOfBondedParticles - - ListOfInteractions = FACT(statut='o', max = "**", - # ------------------------------------------------# - - BondedInteractions = FACT(statut='o', max = "**", - TypeOfBondedInteraction = SIMP(statut='o', typ='TXM', into=['NoOne', 'Covalent Bond Length', 'FENE', 'Covalent Bond Angle', 'Dihedral Angles', 'Improper Dihedral', 'Frozen Motion' ], defaut='NoOne'), - - #La saisie de l'ensemble des liaisons d'un meme type peut se faire ds le meme bloc (soit ds un fichier, soit manuelle) - #Une seule valeur de distante? est a saisir pour l'ensemble - # bloc_covalent_1 = BLOC(condition = 'TypeOfBondedInteraction in ("Covalent Bond Length","FENE")', - # ), # fin bloc_covalent_1 - -# --------------- Covalent Bond Length ------------------ - blocCovalentLength = BLOC(condition = 'TypeOfBondedInteraction == "Covalent Bond Length"', - InteractionLengthParameters = FACT(statut='o', max="**", - ApplyToBondedParticles = SIMP(statut='o', max='**', typ='TXM'), - SpringStifness = SIMP(statut='o', typ='R', val_min=0), - MeanBondLength = SIMP(statut='o', typ='R', val_min=0), - ), # fin Interation_Length_Parameters - ), # fin BondLengthParameters - -# --------------- Covalent Bond Angle ------------------ - blocCovalentAngle = BLOC(condition = 'TypeOfBondedInteraction == "Covalent Bond Angle"', - InteractionAnglesParameters = FACT(statut='o', max="**", - ApplyToBondedParticles = SIMP(statut='o', max='**', typ='TXM'), - SpringStifness = SIMP(statut='o', typ='R', val_min=0), - MeanBondAngle = SIMP(statut='o', typ='R', val_min=0), - ), # fin Interation_Angles_Parameters - ), # fin bloccovalentlengthand_angle - - #bloc_covalent_length_and_angle = BLOC(condition = 'TypeOfBondedInteraction == "Covalent Bond Length" or TypeOfBondedInteraction == "Covalent Bond Angle"', - # Bond_Parameters = FACT(statut='o', max="**", - # Apply_To_Bonded_Particles = SIMP(statut='o', max='**', typ='TXM'), - # Spring_Stifness = SIMP(statut='o', typ='R', val_min=0), - # bloc_covalent_length = BLOC(condition = 'TypeOfBondedInteraction == "Covalent Bond Length"', - # Mean_Bond_Length = SIMP(statut='o', typ='R', val_min=0), - # ), # fin Bond_Length_Parameters - # bloc_covalent_angle = BLOC(condition = 'TypeOfBondedInteraction == "Covalent Bond Angle"', - # Mean_Bond_Angle = SIMP(statut='o', typ='R', val_min=0), - # ), # fin Bond_Length_Parameters - # ), # fin Bond_Length_Parameters - #), # fin bloc_covalent_length_and_angle - -# --------------- Covalent Bond Angle ------------------ - blocFENE = BLOC(condition = 'TypeOfBondedInteraction == "FENE"', - AppliesToAllParticles = SIMP(statut='o', typ=bool, defaut=True), - blocNotOnAll = BLOC(condition = 'AppliesToAllParticles == False', - FENEParameters = FACT(statut='o', max="**", - SpeciesPair = SIMP(statut='o', max=2, typ='TXM'), - SpringConstant_H = SIMP(statut='o', typ='R', val_min=0), - LMax = SIMP(statut='o', typ='R', val_min=0), - ), # fin FENE_Parameters - ), # fin bloc_not_on_all - blocOnAll = BLOC(condition = 'AppliesToAllParticles == True', - Spring_Constant_H = SIMP(statut='o', typ='R', val_min=0), - LMax = SIMP(statut='o', typ='R', val_min=0), - ), # fin bloc_on_all - ), # fin blocFENE - - blocLeReste = BLOC(condition = 'TypeOfBondedInteraction in ("Dihedral Angles", "Improper Dihedral", "Frozen Motion")', - ParticleName = SIMP(statut="f", typ='TXM'), - Consigne = SIMP(statut="o", homo="information", typ="TXM", defaut='Not Implemented Yet'), - ), - - ), # fin Bonded_Interaction - - # ------------------------------- # - - UnbondedInteractions = FACT(statut='o', max= "**", - - TypeOfUnbondedInteraction = SIMP(statut='o', typ='TXM', into=['No', 'electro_magnetic', 'Repulsion_and_VdW', 'Soft_Potentiel', ], defaut='No', position='global',fenetreIhm='menuDeroulant'), - - blocElec = BLOC(condition = 'TypeOfUnbondedInteraction == "electro_magnetic"', - Permittivity = SIMP(statut='o', typ='R', position='global_jdc'), - Magnetic = SIMP(statut='o', typ=bool, defaut=False,), - blocMagnetic = BLOC(condition = 'Magnetic == True', - Permability = SIMP(statut='o', typ='R'), - ), # bloc_magnetic - ),# fin bloc_elec - - blocVdW = BLOC(condition = 'TypeOfUnbondedInteraction == "Repulsion_and_VdW"', - SpeciesPairParameters = FACT(statut='o', max="**", - TypeRepulsionAndVdW = SIMP(statut='o', typ='TXM', into = [ 'Lennard_Jones', 'Hard_sphere_model']), - SpeciesPair = SIMP(statut='o', max=2, typ='TXM'), - VdWRadius = SIMP(statut='o', typ='R', val_min=0), - blocLennard = BLOC(condition = "TypeRepulsionAndVdW == 'Lennard_Jones'", - DepthOfThePotentialWell = SIMP(statut='o', typ='R', val_min=0), - ), # fin b_Lennard - ), # fin Species_Pair_Parameters - ), # bloc_VdW - - blocParamSoftPotentiel = BLOC(condition = "TypeOfUnbondedInteraction == 'Soft_Potentiel'", - GrootWarrenRepulsion = SIMP(statut='o', typ='R', defaut=25.0, val_min=0), - GrootWarrenCutoff = SIMP(statut='o', typ='R', defaut=1.0, val_min=0), - DragCoefficient = SIMP(statut='o', typ='R'), # les 2 valent 0 pour MD - DragForceCutoff = SIMP(statut='o', typ='R', val_min=0), - ), # b_Param_Soft_Potentiel - - ), # fin UnBonded_Interactions - - # ------------------------------- # - - ExternalFieldInteraction = FACT(statut='o', max= "**", - TypeOfInteractionWithAnExternalField = SIMP(statut='o', typ='TXM', into=['NoOne','gravitational field','electric field','magnetic field', 'Hydrodynamic_Field'], fenetreIhm='menuDeroulant', defaut ='NoOne'), - blocGravite = BLOC(condition = 'TypeOfInteractionWithAnExternalField=="gravitational field"', - G = SIMP(statut='o', typ='R', defaut=9.81), - ), - blocElect = BLOC(condition = 'TypeOfInteractionWithAnExternalField=="electric field"', - ElectricField = prepareChamp('E', ('E',), 1), - ), - blocMagnetic = BLOC(condition = 'TypeOfInteractionWithAnExternalField=="magnetic field"', - MagneticField = prepareChamp('B', ('B',), 1), - ), - blocHydrodynamic = BLOC(condition = 'TypeOfInteractionWithAnExternalField=="hydrodynamic field"', - HydrodynamicField = prepareChamp('U', ('U',), 1), - ), - blocExternalFieldInteraction = BLOC(condition = 'TypeOfInteractionWithAnExternalField != "No"', - FieldAppliesOnAllSpecies = SIMP(statut='o', typ=bool, defaut=True), - blocPorteEspece = BLOC(condition = 'FieldAppliesOnAllSpecies == False ', - SpeciesList = SIMP(statut='o', typ='TXM', max= '**', homo='SansOrdreNiDoublon'), # faire un typ = "espece" - ), - ), # fin b_External_Field_Interaction - ), # fin Interaction_External_Field - - ), # fin List_Of_Interactions - -############################ -) # fin Particle - -#-------------------- -def prepareBlocCPS(): -#-------------------- - return BLOC(condition = 'SystemType == "Classical particle system"', - Particle = Particle('**'), - ) - -#--------------------------- -def prepareBlocFluideMacro(): -#--------------------------- - return BLOC(condition = 'SystemType == "Continuum system"', - ComplexFluid = SIMP(typ=bool, statut='o', defaut = False, position='global'), - FlowNature = SIMP(typ='TXM', statut='o', into =['Laminar', 'Turbulent'], position='global'), - -# --------------------------- Density ------------- - DensityInitialisation = FACT(statut ='o', - DensityValueType = SIMP(typ='TXM', statut ='o', into = ['Value', 'Field'], defaut ='Value'), - blocDensityValue = BLOC(condition = 'DensityValueType == "Value"', - Density = SIMP(typ='R', statut ='o'), - ), - blocDensField= creeBlocPourLesFichiers('DensityValueType == "Field"', 'Density', ListeFormats=listeFormatGenerique, FieldName='DensityFieldName'), - ),# DensityInitialisation - -# --------------------------- Viscosity ------------- - ViscosityInitialisation = FACT(statut ='o', - ViscosityValueType = SIMP(typ='TXM', statut ='o', into = ['Value', 'Field'], defaut ='Value'), - blocViscosityValue = BLOC(condition = 'ViscosityValueType == "Value"', - Viscosity = SIMP(typ='R', statut ='o'), - ), - blocViscosityField = creeBlocPourLesFichiers('ViscosityValueType == "Field"', 'Viscosity', ListeFormats=listeFormatGenerique, FieldName='ViscosityFieldName'), - ), #fin ViscosityityInitialisation - -# --------------------------- Turbulent ------------- - blocFlowNatureTurbulent = BLOC(condition = ' FlowNature == "Turbulent"', - TurbulenceForFlowDynamics = prepareFactTurbulence('o',position='global',positionChoice='reCalculeEtape'), - ), #fin bloc_FlowNature_Turbulent - - DynamicalVariables = FACT(statut ='o', - OriginOfDynamicalVariables = SIMP(statut='o', into =['Given', 'Interaction', 'to be simulated'], typ ='TXM', position='global'), - BlocGivenOrInteraction = BLOC(condition = 'OriginOfDynamicalVariables in ["Given", "Interaction",]', - Steady = SIMP(typ=bool, statut ='o', defaut = True, position = 'global'), - # BlocNotSteady = BLOC(condition = 'Steady == False', - BlocConsigne = BLOC(condition = 'Steady == False', - Consigne = SIMP(statut="o", homo="information", typ="TXM", defaut='Not implemented yet. Will ask for a range of calculation steps.'), - ), #BlocNotSteady - BlocSteady = BLOC(condition = 'Steady == True', - BlocGiven = BLOC(condition = 'OriginOfDynamicalVariables == "Given"', - InSameFile = SIMP(typ=bool, statut ='o', defaut = True, position = 'reCalculeEtape'), - BlocSameFile = creeBlocPourLesFichiers('InSameFile == True', 'DynamicalVariables', ('Med', 'cgns' ), None), - ), #BlocGiven - ), #BlocSteady - ), #BlocGivenOrInteraction - PressureDefinition = FACT(statut ='o', - Pressure = SIMP(typ=(dynamicVariable,'createObject'), statut='o', defaut ='Pressure', homo='constant'), - BlocSteady = BLOC(condition = 'Steady == True', - BlocFluidInSame = creeBlocPourLesFichiers('InSameFile == False', 'Pressure', ('Med', 'cgns' ), None), - BlocGivenPressure = BLOC(condition = 'OriginOfDynamicalVariables == "Given"', - PressureFieldName = SIMP(typ='TXM',statut='o'), - ), - BlocInteractionPressure = BLOC(condition = 'OriginOfDynamicalVariables == "Interaction"', - InteractionName = SIMP(typ=interaction,statut='o'), - Consigne = SIMP(statut="o", homo="information", typ="TXM", defaut='Create and choose suitable interaction'), - ), - ), - BlocSimulatedPressure = BLOC(condition = 'OriginOfDynamicalVariables == "to be simulated"', - SourceTerm = SIMP(typ=bool, statut='o', defaut=False), - blocSourceTerm = prepareTermeSourceDynVar('SourceTerm==True'), - ), - ), - VelocityDefinition = FACT(statut ='o', - blocFlowNatureTurbulent = BLOC(condition = 'FlowNature == "Turbulent"', - #sousBlocFlowNatureTurbulent = BLOC(condition = 'TurbulenceModellingType != "Fully resolved (DNS)"', - AverageVelocity = SIMP(typ=(dynamicVariable,'createObject'), statut='o', defaut ='Average_Velocity', homo='constant'), - BlocSteadyGivenVelocity1 = BLOC(condition = 'OriginOfDynamicalVariables == "Given" and Steady == True ', - AverageVelocityValue = SIMP(typ='R', statut='o' ), - ), - #), - ), - #blocFlowNatureLaminar = BLOC(condition = ' FlowNature == "Laminar" or TurbulenceModellingType == "Fully resolved (DNS)"', - blocFlowNatureLaminar = BLOC(condition = 'FlowNature == "Laminar"', - FluidVelocity = SIMP(typ=(dynamicVariable,'createObject'), statut='o', defaut ='Fluid_Velocity', homo='constant'), - BlocSteady = BLOC(condition = 'Steady == True', - BlocVelocityInSame = creeBlocPourLesFichiers('InSameFile == False', 'Velocity', ('Med', 'cgns' ), None), - BlocSteadyGivenVelocity2 = BLOC(condition = 'OriginOfDynamicalVariables == "Given"', - VelocityFieldName = SIMP(typ='TXM',statut='o'), - ), - ), - ), - BlocSimulatedVelocity = BLOC(condition = 'OriginOfDynamicalVariables == "to be simulated"', - SourceTerm = SIMP(typ=bool, statut='o', defaut=False), - blocSourceTerm = prepareTermeSourceDynVar('SourceTerm==True'), - ), - BlocSteady = BLOC(condition = 'Steady == True', - BlocInteractionVelocity = BLOC(condition = 'OriginOfDynamicalVariables == "Interaction"', - InteractionName = SIMP(typ=interaction,statut='o'), - Consigne = SIMP(statut="o", homo="information", typ="TXM", defaut='Create and choose suitable interaction'), - ), - ), - ), - BFlowNatureTurbulent = BLOC(condition ='FlowNature == "Turbulent"', - # K-epislon ou k-omega - blocTurbulenceTWMChoice1 = BLOC(condition = 'TVMChoice == "K-Epsilon" or TVMChoice == "K-Omega"', - KDefinition = FACT(statut ='o', - Name = SIMP(typ=(scalar,'createObject'), statut='o', defaut ='K', homo='constant'), - BlocSteady = BLOC(condition = 'Steady == True', - BlocKInSame = creeBlocPourLesFichiers('InSameFile == False', 'K', ('Med', 'cgns' ), None), - BlocKGiven = BLOC(condition = 'OriginOfDynamicalVariables == "Given"', - KFieldName = SIMP(typ='TXM',statut='o', defaut='K'), - ), - BlocKInteraction = BLOC(condition = 'OriginOfDynamicalVariables == "Interaction"', - InteractionName = SIMP(typ=interaction,statut='o'), - Consigne = SIMP(statut="o", homo="information", typ="TXM", defaut='Create and choose suitable interaction'), - ), - ), - BlocSimulatedKDefinition = BLOC(condition = 'OriginOfDynamicalVariables == "to be simulated"', - SourceTerm = SIMP(typ=bool, statut='o', defaut=False), - blocSourceTerm = prepareTermeSourceDynVar('SourceTerm==True'), - ), - ), # KDefinition - ),# fin blocTurbulenceTWMChoice1 - - # REM : L'existence des mc TVMChoice et RSMChoice est exclusive, du coup une évaluation de condition - # qui contient les deux renvoie forcément une exception, le bloc n'est alors pas evalué - # sauf si le mc de la première condition existe (ordre évaluation du or) - # blocTurbulenceTWMChoice2 = BLOC(condition = 'TVMChoice == "K-Epsilon" or RSMChoice != None', - # blocTurbulenceTWMChoice2 = BLOC(condition = '(RSMChoice != None) or (TVMChoice == "K-Epsilon")', - # blocTurbulenceTWMChoice2 = BLOC(condition = 'TVMChoice == "K-Epsilon"', - blocTurbulenceTWMChoice2 = BLOC(condition = 'RANSModel == "Reynolds Stress Model (RSM)" or TVMChoice == "K-Epsilon"', - EpsilonDefinition = FACT(statut ='o', - Name = SIMP(typ=(scalar,'createObject'), statut='o', defaut ='Epsilon', homo='constant'), - BlocSteady = BLOC(condition = 'Steady == True', - BlocEpsilonInSame = creeBlocPourLesFichiers('InSameFile == False', 'Epsilon', ('Med', 'cgns' ), None), - BlocEpsilonGiven = BLOC(condition = 'OriginOfDynamicalVariables == "Given"', - EpsilonFieldName = SIMP(typ='TXM',statut='o'), - ), - BlocEpsilonInteraction = BLOC(condition = 'OriginOfDynamicalVariables == "Interaction"', - InteractionName = SIMP(typ=interaction,statut='o'), - Consigne = SIMP(statut="o", homo="information", typ="TXM", defaut='Create and choose suitable interaction'), - ), - ), - BlocSimulatedEpsilonDefinition = BLOC(condition = 'OriginOfDynamicalVariables == "to be simulated"', - SourceTerm = SIMP(typ=bool, statut='o', defaut=False), - blocSourceTerm = prepareTermeSourceDynVar('SourceTerm==True'), - ), - ), #EpsilonDefinition - ), # bloc_Turbulence_TWMChoice2 - - blocTurbulenceTWMChoice3 = BLOC(condition = 'TVMChoice == "K-Omega"', - OmegaDefinition = FACT(statut ='o', - Name = SIMP(typ=(scalar,'createObject'), statut='o', defaut ='Omega', homo='constant'), - BlocSteady = BLOC(condition = 'Steady == True', - BlocOmegaInSame = creeBlocPourLesFichiers('InSameFile == False', 'Omega', ('Med', 'cgns' ), None), - BlocOmegaGiven = BLOC(condition = 'OriginOfDynamicalVariables == "Given"', - OmegaFieldName = SIMP(typ='TXM',statut='o'), - ), - BlocOmegaInteraction = BLOC(condition = 'OriginOfDynamicalVariables == "Interaction"', - InteractionName = SIMP(typ=interaction,statut='o'), - Consigne = SIMP(statut="o", homo="information", typ="TXM", defaut='Create and choose suitable interaction'), - ), - ), - BlocSimulatedOmegaDefinition = BLOC(condition = 'OriginOfDynamicalVariables == "to be simulated"', - SourceTerm = SIMP(typ=bool, statut='o', defaut=False), - blocSourceTerm = prepareTermeSourceDynVar('SourceTerm==True'), - ), - ), - ), # blocTurbulenceTWMChoice3 - - # blocTurbulenceRSMChoice1 = BLOC(condition = "(RANSModel == 'Reynolds Stress Model (RSM)') and (RSMChoice !=None)", - blocTurbulenceRSMChoice1 = BLOC(condition = "RSMChoice !=None", - RijDefinition = FACT(statut ='o', - Name = SIMP(typ=(scalar,'createObject'), statut='o', defaut ='Rij', homo='constant'), - BlocSteady = BLOC(condition = 'Steady == True', - BlocRijInSame = creeBlocPourLesFichiers('InSameFile == False', 'Rij', ('Med', 'cgns' ), None), - BlocRijGiven = BLOC(condition = 'OriginOfDynamicalVariables == "Given"', - RijFieldName = SIMP(typ='TXM',statut='o'), - ), - BlocRijInteraction = BLOC(condition = 'OriginOfDynamicalVariables == "Interaction"', - InteractionName = SIMP(typ=interaction,statut='o'), - Consigne = SIMP(statut="o", homo="information", typ="TXM", defaut='Create and choose suitable interaction'), - ), - ), - BlocSimulatedRijDefinition = BLOC(condition = 'OriginOfDynamicalVariables == "to be simulated"', - SourceTerm = SIMP(typ=bool, statut='o', defaut=False), - blocSourceTerm = prepareTermeSourceDynVar('SourceTerm==True'), - ), - ), - ), # blocTurbulenceRSMChoice1 - - # blocTurbulenceRSMChoice2 = BLOC(condition = 'RSMChoice != None', - # EpsilonDefinition = FACT(statut ='o', - # Name = SIMP(typ=(scalar,'createObject'), statut='o', defaut ='Epsilon', homo='constant'), - # BlocSteady = BLOC(condition = 'Steady == True', - # BlocEpsilonInSame = creeBlocPourLesFichiers('InSameFile == False', 'Epsilon', ('Med', 'cgns' ), None), - # BlocEpsilonGiven = BLOC(condition = 'OriginOfDynamicalVariables == "Given"', - # EpsilonFieldName = SIMP(typ='TXM',statut='o'), - # ), - # BlocEpsilonInteraction = BLOC(condition = 'OriginOfDynamicalVariables == "Interaction"', - # InteractionName = SIMP(typ=interaction,statut='o'), - # Consigne = SIMP(statut="o", homo="information", typ="TXM", defaut='Create and choose suitable interaction'), - # ), - # ), - # BlocSimulatedEpsilonDefinition = BLOC(condition = 'OriginOfDynamicalVariables == "to be simulated"', - # SourceTerm = SIMP(typ=bool, statut='o', defaut=False), - # blocSourceTerm = prepareTermeSourceDynVar('SourceTerm==True'), - # ), - # ), #EpsilonDefinition - # ), # bloc_Turbulence_RSMChoice2 - - ), #BFlowNatureTurbulent - ), # DynamicalVariables - -# ---------------------- Effets thermiques - Thermal = FACT(statut ='o', - ThermalEffects = SIMP(typ='TXM', statut='o', into =['Non thermal', 'Thermal'] , defaut='Thermal', position='global' ), - blocNonThermalEffects = BLOC(condition = 'ThermalEffects == "Non thermal"', - ReferenceTemperature = SIMP(typ='R', statut='o', val_min=-273.15 ), - ), # fin bloc_NonThermal - bloc_ThermalEffects_ = BLOC(condition = 'ThermalEffects == "Thermal"', - ConductivityValueType = SIMP(typ='TXM', statut ='o', into = ['Value', 'Field'], defaut ='Value'), - blocCondValue = BLOC (condition = 'ConductivityValueType == "Value"', - Conductivity = SIMP(typ='R', statut ='o'), - ), - blocCondField = creeBlocPourLesFichiers('ConductivityValueType == "Field"', 'Conductivity', ListeFormats=listeFormatGenerique, FieldName='conductivityFieldName'), - #ActiveOnFlowEffect = ActiveOnFlowEffect(), - ), - ),# fin Fact Thermal - -# ---------------------- Scalaires - - blocScalarFluidTurbulentOrLaminar = BLOC(condition = "(ComplexFluid == False and FlowNature == 'Turbulent') or (ComplexFluid == False and FlowNature == 'Laminar')", - Scalars = FACT(statut = 'o', - withScalars = SIMP(statut='o', typ=bool, defaut=False), - blocwithScalars = BLOC(condition = 'withScalars == True', - blocFlowNatureTurbulentForScalars = BLOC(condition = ' FlowNature == "Turbulent"', - AsTurbulenceForFlowDynamics = SIMP(statut='o', typ=bool, defaut=True), - BlocAsTFFD = BLOC(condition = "AsTurbulenceForFlowDynamics == False", - ScalarsTurbulenceModelling = prepareFactTurbulenceScalaire('o',), - ), - ), - blocThermalEffectsOn = BLOC(condition = ' ThermalEffects == "Thermal"', - TemperatureScalar = FACT(statut ='o', - #Name = SIMP(typ=(scalar,'createObject'), statut='o', defaut ='Temperature', homo='constant', position='reCalculeEtape'), - Name = SIMP(typ=(scalar,'createObject'), statut='o', defaut ='Temperature', homo='constant'), - SourceTerm = SIMP(typ=bool, statut='o', defaut=False), - blocSourceTerm = prepareTermeSource('SourceTerm==True'), - TemperatureInitialisation = FACT(statut ='o', - OriginOfThermalFluxField = SIMP(statut='o', into =['Given', 'Interaction', 'to be simulated'], typ ='TXM'), - BlocGiven = creeBlocPourLesFichiers('OriginOfThermalFluxField == "Given"', 'Temperature', ('Med', 'cgns' ), FieldName='FieldName'), - ),# fin TemperatureInitialisation - ),# TemperatureScalar - ), # fin bloc_ThermalEffects_On - Scalar = FACT(statut = 'o', max ='**', - Name = SIMP(typ=(scalar,'createObject'), statut='o',), - DiffusivityValueType = SIMP(typ='TXM', statut ='o', into = ['Value', 'Field'], defaut ='Value'), - blocDiffValue = BLOC(condition = 'DiffusivityValueType == "Value"', - Diffusivity = SIMP(typ='R', statut ='o'), - ), - blocDiffField = creeBlocPourLesFichiers('DiffusivityValueType == "Field"', 'Diffusivity', ListeFormats=listeFormatGenerique, FieldName='DiffusivityFieldName'), - OriginOfScalar = SIMP(statut='o', into =['Given', 'Interaction', 'to be simulated'], typ ='TXM', defaut='to be simulated'), - blocSimulatedScalar = BLOC(condition = 'OriginOfScalar == "to be simulated"', - SourceTerm = SIMP(typ=bool, statut='o', defaut=False), - blocSourceTerm = prepareTermeSource('SourceTerm==True'), - Initialisation = FACT(statut ='o', - InitialisationOfScalar = SIMP(statut='o', into =['ValueInit', 'FileInit', 'InteractionInit'], typ ='TXM', defaut='ValueInit'), - BlocFileInit = creeBlocPourLesFichiers('InitialisationOfScalar == "FileInit"', 'ScalarInit', ListeFormats = listeFormatGenerique, FieldName='ScalarInitField'), - BlocInteractionInit = BLOC(condition = 'InitialisationOfScalar == "InteractionInit"', - InteractionName = SIMP(typ=interaction,statut='o'), - Consigne = SIMP(statut="o", homo="information", typ="TXM", defaut='Create and choose suitable interaction'), - ), - BlocValueInit = BLOC(condition = 'InitialisationOfScalar == "ValueInit"', - ValueInit = SIMP (statut ='o', typ='R'), - ), - ), - ), - blocInteractionScalar = BLOC(condition = 'OriginOfScalar == "Interaction"', - InteractionName = SIMP(typ=interaction,statut='o'), - Consigne = SIMP(statut="o", homo="information", typ="TXM", defaut='Create and choose suitable interaction'), - ), - blocGivenScalar = creeBlocPourLesFichiers('OriginOfScalar == "Given"', 'Scalar', ListeFormats = listeFormatGenerique, FieldName='ScalarField'), - EffectOnFlowDynamic = SIMP(typ='TXM', statut='o', into=[ 'Passive', 'Active'], defaut='Passive', ), - blocScalarActiveOnFlowDynamic = BLOC(condition = ' EffectOnFlowDynamic == "Active"', - ActiveOnFlowEffect = ActiveOnFlowEffect(), - ), - blocScalarFluidTurbulentAndNonComplexe = BLOC (condition = "FlowNature == 'Turbulent'", - ScalarFluxModel = prepareFactTurbulenceScalaire('f'), - ), # bloc_scalar_FluidTurbulentandNonComplexe - ),# Scalar - ),# blocwWithScalars - ),# Scalars - ), # fin FluidTurbulentandNonComplexe - # il faut une validation de coherence entre l existence de tous les turbulencesModelling - )# fin bloc_FluideMacro - -#---------------------------------------- -def ActiveOnFlowEffect(inTemperature=True): -#---------------------------------------- - return FACT(statut = 'o', max='**', - RelationType = SIMP(statut = 'o', into =['Equation Of State', 'Force-Flux Relation'], typ ='TXM'), - bloc_EOS = BLOC(condition = 'RelationType == "Equation Of State"', - TypeOfEquationOfState = SIMP(statut='o', into =['variable density', 'compressible'], typ ='TXM'), - ), - bloc_NonEOSAndSimple=BLOC(condition = 'RelationType == "Force-Flux Relation" and ComplexFluid == False', - TypeOfForceFluxRelation = SIMP(statut='o', into =['Viscosity', 'Diffusivity', 'Thermal Conductivity'], intoXML=['Viscosity', 'Diffusivity', 'Thermal Conductivity','Shear-stress closure', 'Scalar flux'], typ ='TXM', ), - blocViscosity=BLOC(condition = 'TypeOfForceFluxRelation == "Viscosity" ', - ViscosityLaw=SIMP(typ='TXM', statut = 'o', into=['law1', 'law2']), - ), - blocDiffusivity=BLOC(condition = 'TypeOfForceFluxRelation == "Diffusivity"', - DiffusivityLaw=SIMP(typ='TXM', statut = 'o', into=['law1', 'law2']), - ), - blocConductivity=BLOC(condition = 'TypeOfForceFluxRelation == "Thermal Conductivity"', - ConductivityLaw=SIMP(typ='TXM', statut = 'o', into=['law1', 'law2']), - ), - ), -) - -#-----------------------------------------------------# -def prepareBoundaryCondition(): - return FACT(statut='o',max = '**', # max = nb de facette de bord - TypeOfBoundaryCondition = SIMP(statut='o', typ='TXM', into=['Inlet', 'Outlet', 'Symmetry','Periodicity', 'Wall', 'Free Surface'], ), - - blocDesigneMesh = BLOC(condition = "SystemType == 'Continuum system'", - ApplyOnGroups = SIMP(statut ='o', typ=meshGroup, max='**', homo='SansOrdreNiDoublon', - filtre=( '(set(MeshIdentifiers).intersection( set(self.getParentsWithId().getListeUserASSD("MeshId")) ) != set()) ', - ( ('MeshIdentifiers', 'self.etape.getChild("blocModeleNumeriqueContinuum").getChild("NumericalModel")'), ) - ), - ), - ), - blocDesigne_Shape = BLOC(condition = "SystemType == 'Classical particle system'", - #ApplyOnGroups = SIMP (statut ='o', typ=spatialRegion, max='**' - ApplyOnGroups = SIMP (statut ='o', typ=meshGroup, max='**', homo='SansOrdreNiDoublon', - filtre=( '(set(MeshIdentifiers).intersection( set(self.getParentsWithId().getListeUserASSD("MeshId")) ) != set()) ', - ( ('MeshIdentifiers', 'self.etape.getChild("blocModeleNumeriqueClassical").getChild("NumericalModel")'), ) - ), - ), - ), - - blocOnStateVariable = BLOC(condition = "TypeOfBoundaryCondition not in ['Wall',]", - ApplyOnStateVariable = SIMP (statut ='o', typ=stateVariable, max='**', homo='SansOrdreNiDoublon', - filtre=( 'etape in set(self.getEtapes()) ', (('etape', None),), ), #Il ne faut pas proposer les variables d'état des autres composants. - ), #PNPN A FAIRE : fenetreIhm='menuDeroulant' - ), - blocPeriodique = BLOC(condition = "TypeOfBoundaryCondition == 'Periodic'", - Direction = SIMP(statut='o', typ='TXM', into=['X','Y','Z', 'XYZ']), - ), # b_periodique - blocInlet = BLOC(condition = "TypeOfBoundaryCondition == 'Inlet'", - FormulationOfBoundary= SIMP(statut='o', typ='TXM', into=['Dirichlet','Neumann','Cauchy']), - blocDirichlet = BLOC(condition = 'FormulationOfBoundary == "Dirichlet"', - regles=(AU_MOINS_UN('InletProfile','IntegratedValue','IntegratedVectorValue',), - EXCLUS ('InletProfile','IntegratedValue','IntegratedVectorValue',), ), - Consigne = SIMP(statut ="o", homo="information", typ="TXM", defaut = "Choose between InletProfile,IntegratedValue,IntegratedVectorValue "), - InletProfile = SIMP (statut ='f', typ='TXM'), - IntegratedValue = SIMP (statut='f', typ='R'), - IntegratedVectorValue = FACT(statut='f', - U = SIMP (statut ='o', typ='R'), - V = SIMP (statut ='o', typ='R'), - W = SIMP (statut ='o', typ='R'), - ), - #PN : faire une regle - ), - blocNeumann = BLOC(condition = 'FormulationOfBoundary == "Neumann"', - Flux = SIMP (statut ='o', typ='TXM'), - ), - blocCauchy = BLOC(condition = 'FormulationOfBoundary == "Cauchy"', - ImposedFlux = SIMP (statut ='o', typ='TXM'), - _IntegratedValue = SIMP (statut='o', typ='R'), - ), - ), # b_inlet - blocWall = BLOC(condition = "TypeOfBoundaryCondition == 'Wall'", - VelocityAtBoundary = FACT(statut='o', - SlipVelocity = SIMP(statut='o', typ='R', defaut= 0.0), - WallMotion = FACT(statut='o', - U = SIMP (statut ='o', typ='R'), - V = SIMP (statut ='o', typ='R'), - W = SIMP (statut ='o', typ='R'), - ), - ), - LevelOfDescription = FACT(statut='o', - blocWall = BLOC(condition = "FlowNature == 'Turbulent'", ##JP+CH TODO : Choix des lois en fct du type du TurbulenceModelingType - WallFunction = SIMP(statut ='o', typ='TXM', - into=['No wall function','1-scale model (Log law)', - '2-scale model (Log law)','Scalable 2-scale model (Log law)', - ], defaut='No wall function', fenetreIhm='menuDeroulant'), - ), - ), - ), # b_Wall - - ) # Boundary_Conditions - - -# def prepareBoundaryCondition(): -# return FACT(statut='o',max = '**', # max = nb de facette de bord -# ApplyOnStateVariable = SIMP (statut ='o', typ=stateVariable, ), #PNPN A FAIRE : fenetreIhm='menuDeroulant' -# blocDesigneMesh = BLOC(condition = "SystemType == 'Continuum system'", -# ApplyOnGroups = SIMP (statut ='o', typ=meshGroup, max='**', homo='SansOrdreNiDoublon'), -# ), -# blocDesigne_Shape = BLOC(condition = "SystemType == 'Classical particle system'", -# ApplyOnCadGroups = SIMP (statut ='o', typ=spatialRegion, max='**'), -# ), -# TypeOfBoundaryCondition = SIMP(statut='o', typ='TXM', into=['Inlet', 'Outlet', 'Symmetry','Periodicity', 'Wall', 'Free Surface'], ), -# blocPeriodique = BLOC(condition = "TypeOfBoundaryCondition == 'Periodic'", -# Direction = SIMP(statut='o', typ='TXM', into=['X','Y','Z', 'XYZ']), -# ), # b_periodique -# blocInlet = BLOC(condition = "TypeOfBoundaryCondition == 'Inlet'", -# FormulationOfBoundary= SIMP(statut='o', typ='TXM', into=['Dirichlet','Neumann','Cauchy']), -# blocDirichlet = BLOC(condition = 'FormulationOfBoundary == "Dirichlet"', -# regles=(AU_MOINS_UN('InletProfile','IntegratedValue','IntegratedVectorValue',), -# EXCLUS ('InletProfile','IntegratedValue','IntegratedVectorValue',), ), -# #Consigne = SIMP(statut ="o", homo="information", typ="TXM", defaut = "Choose between InletProfile,IntegratedValue,IntegratedVectorValue "), -# InletProfile = SIMP (statut ='f', typ='TXM'), -# IntegratedValue = SIMP (statut='f', typ='R'), -# IntegratedVectorValue = FACT(statut='f', -# x = SIMP (statut ='o', typ='R'), -# y = SIMP (statut ='o', typ='R'), -# z = SIMP (statut ='o', typ='R'), -# ), -# #PN : faire une regle -# ), -# blocNeumann = BLOC(condition = 'FormulationOfBoundary == "Neumann"', -# Flux = SIMP (statut ='o', typ='TXM'), -# ), -# blocCauchy = BLOC(condition = 'FormulationOfBoundary == "Cauchy"', -# ImposedFlux = SIMP (statut ='o', typ='TXM'), -# IntegratedValue = SIMP (statut='o', typ='R'), -# ), -# ), # b_inlet -# ) # Boundary_Conditions - - - - -JdC = JDC_CATA ( - #PN : TODO : regles = (AU_PLUS_UN('DataTransfer_Aspects',),), - code = 'Vimmp', - # faire un validateur qui verifie que si on active reactions chimiques il faut que les masses molaires soient rentrees -) - -Component = OPER(nom='Component', sd_prod=composant, - SystemType = SIMP(typ='TXM', into=['Quantum system', 'Classical particle system', 'Continuum system'], statut='o',position='global'), - PhysicalDescription = FACT(statut = 'o', - blocFluideMacro = prepareBlocFluideMacro(), - blocCPS = prepareBlocCPS(), - ), - blocModeleNumeriqueQuantum = prepareBlocSystemType('Quantum system'), - blocModeleNumeriqueClassical = prepareBlocSystemType('Classical particle system'), - blocModeleNumeriqueContinuum = prepareBlocSystemType('Continuum system'), - BoundaryConditions = FACT(statut = 'o', - BoundaryCondition = prepareBoundaryCondition(), - ) -) - -Species = PROC(nom='Species', - Specie = FACT(statut='o', max ="**", - Name = SIMP(statut='o', typ=(especeChimique,'createObject') ), - MolarMass = SIMP(statut='f', typ='R',), - ) -) - -def monBlocInteractionTypeChamp (): - return BLOC (condition = '1 == 1' , # a distinguer selon les cas - fieldNameInOrigine = SIMP(typ='TXM', statut='o'), - fieldNameInDestination = SIMP(typ='TXM', statut='o'), - ) - -def TousSelonLeTypeDeFormatDisponible(condition, prefixName=''): - TransfertType = SIMP(typ='TXM', statut='o', into =['File', 'Memory', 'CorbaObject']) - maListe = list(dictCodeFormat.keys()) - dicoArgs={} - #index=0 - #for Solv1 in maListe[index:]: - # for Solv2 in maListe[index:]: - # #print (Solv1,Solv2, calculCommun(Solv1, Solv2,dictCodeFormat)) - # print ('PNPN attention changement de dictCodeFormat tant que getEficasAttribut n est pas correct') - # conditionSolv = 'TransfertType == "File" and getEficasAttribut(origine,"Solver")==Solv1 and getEficasAttribut(destination,"Solver")==Solv2' , - # conditionSolv = 'TransfertType == "File"' - # monBlocFichier=creeBlocPourLesFichiers (conditionSolv, 'FileName', calculCommun(Solv1, Solv2,dictCodeFormat)) - # dicoArgs['monBlocFichier'+str(index)]=monBlocFichier - # index=index+1 - mesFormats=set() - for solv1 in dictCodeFormat.keys() : - for f in dictCodeFormat[solv1] : mesFormats.add(f) - conditionSolv='TransfertType == "File"' - BlocFichier=creeBlocPourLesFichiers (conditionSolv, prefixName, mesFormats, None) - dicoArgs['BlocFichier']=BlocFichier - monBlocChamp = BLOC(condition = "TransfertType=='File'", FieldName=SIMP(typ='TXM', statut='o')) - dicoArgs['monBlocChamp']=monBlocChamp - return BLOC(condition = condition,TransfertType=TransfertType, **dicoArgs) - -def SelonLeTypeDeFormatDisponibleMapper(condition): - TransferType = SIMP(typ='TXM', statut='o', into =['File', 'Memory', 'CorbaObject']) - maListe = list(dictCodeFormat.keys()) - dicoArgs={} - index=0 - for Solv1 in maListe[index:]: - for Solv2 in maListe[index:]: - #print (Solv1,Solv2, calculCommun(Solv1, Solv2,dictCodeFormat)) - print ('PNPN attention changement de dictCodeFormat tant que getEficasAttribut n est pas correct') - conditionSolv = 'TransferType == "File" and getEficasAttribut(origine,"Solver")==Solv1 and getEficasAttribut(destination,"Solver")==Solv2' , - conditionSolv = 'TransferType == "File"' - monBlocFichier=creeBlocPourLesFichiers (conditionSolv, '', calculCommun(Solv1, Solv2,dictCodeFormat),None) - dicoArgs['monBlocFichier'+str(index)]=monBlocFichier - index=index+1 - BlocChamp = BLOC(condition = "TransferType=='File'", FieldName=SIMP(typ='TXM', statut='o')) - dicoArgs['BlocChamp'] = BlocChamp - return BLOC(condition = condition,TransferType=TransferType, **dicoArgs) - -Interpolator = OPER (nom= 'Interpolator',sd_prod=interpolator, - InterpolatorType=SIMP(statut='o', typ='TXM', into = list(dictInterpolatorFormat.keys())), - blocMedCoupling= BLOC(condition="InterpolatorType == 'Med Coupling'", - TargetMeshIdentifier = SIMP(statut ='o', typ = meshIdentifier,), - InterpolationType = SIMP(statut ='o', typ='TXM', into=['P0P0','P0P1','P1P1','P1P0'],), - ), -) -Converter = OPER (nom= 'Converter',sd_prod=converter) - -Interactions = PROC(nom='Interactions', - - IOAspects = FACT(statut='o', - - #WorkingDirectory = SIMP(statut='o', typ='Repertoire', defaut='/tmp'), - - FileTransfer = FACT(statut='f', max='**', - TransferId = SIMP(statut='o', typ=(fileId,'createObject'),), - monBlocFormat = creeBlocPourLesFichiers('1', '', listeFormatGenerique, FieldName=None ), - ), - MemoryTransfer = FACT(statut='f', max='**', - TransferId = SIMP(statut='o', typ=(memoryId,'createObject'),), - ), - CorbaTransfer = FACT(statut='f', max='**', - TransferId = SIMP(statut='o', typ=(corbaId,'createObject'),), - ), - ), - - - Interaction = FACT(max = '**', - InteractionName = SIMP(statut='o', typ=(interaction,'createObject'),), - From = SIMP(typ=modeleNumDuCompo, statut='o'), - To = SIMP(typ=modeleNumDuCompo, statut='o'), - # ApplyOnStateVariable = SIMP(statut ='o', typ=stateVariable), #PNPN A FAIRE : fenetreIhm='menuDeroulant' - InvolvedStateVariable = SIMP(statut ='o', typ=stateVariable), #PNPN A FAIRE : Seulement du composant d'origine From - # monBloc_FFFF = BLOC ( - # condition = 'getEficasAttribut(From,"ModelType") == "Fields" and getEficasAttribut(To,"ModelType") == "Fields"' , - # TermeLE = SIMP(typ='TXM', statut='o', into = dictTermeLE['Fields','Fields'],fenetreIhm='menuDeroulant'), - # ), - # monBloc_DPDP = BLOC ( - # condition = 'getEficasAttribut(From,"ModelType") == "Particles" and getEficasAttribut(To,"ModelType") == "Particles"' , - # TermeLE = SIMP(typ='TXM', statut='o', into = dictTermeLE['Particles','Particles'],fenetreIhm='menuDeroulant'), - # ), - # monBloc_FFDP = BLOC ( - # condition = 'getEficasAttribut(From,"ModelType") == "Fields" and getEficasAttribut(To,"ModelType") == "Particles"' , - # TermeLE = SIMP(typ='TXM', statut='o', into = dictTermeLE['Fields','Particles'],fenetreIhm='menuDeroulant'), - # ), - # monBloc_DPFF = BLOC ( - # condition = 'getEficasAttribut(From,"ModelType") == "Particles" and getEficasAttribut(To,"ModelType") == "Fields"' , - # TermeLE = SIMP(typ='TXM', statut='o', into = dictTermeLE['Particles','Fields'],fenetreIhm='menuDeroulant'), - # ), - InteractionConfiguration = FACT(statut='o', - - OutputId = SIMP(statut='o',typ=(transferId,),), - FieldName=SIMP(typ='TXM', statut='o'), - # ComponentProduction = FACT(statut='o', - # monBlocFormat = TousSelonLeTypeDeFormatDisponible("1", 'ComponentProduction' ), - # ), - # ), - #CouplingMode = SIMP(typ='TXM', statut='o', into =['Direct', 'DataProcessing', 'Conversion']), - CouplingMode = SIMP(typ='TXM', statut='o', into =['Direct', 'DataProcessing']), - #monBlocDirect = TousSelonLeTypeDeFormatDisponible("CouplingMode=='Direct'" ), - - monBlocDataProcessing = BLOC (condition = "CouplingMode=='DataProcessing'", - DataProcessingNode = FACT(min=1, max='**', statut ='o', - Tool = SIMP(typ=mapper, statut ='o'), - OutputId = SIMP(statut='o',typ=(transferId,),), - FieldName = SIMP(typ='TXM', statut='o'), - monBlocInterpolator = BLOC (condition = "(Tool != None) and (isinstance(Tool,interpolator))", - FieldNature = SIMP(typ='TXM', statut='o', into=['ExtensiveMaximum', 'IntensiveMaximum', - 'ExtensiveConservation', 'IntensiveConservation']), #PN: DICO pour le into avec key==Tool - ), - ), - ), #fin monBlocDataProcessing - ), #fin InteractionConfiguration - ), -) - - - -EnvironementAspects = PROC(nom ="EnvironementAspects", - WorkflowName = SIMP(statut='o', typ='TXM', defaut='MyStudyCasename'), #PN: -> path - WorkingDirectory = SIMP(statut='o', typ='Repertoire', defaut='/tmp'), -) - -#Le dictionnaire dict_condition est un dictionnaire utilisé par eficas -# pour les position='global_jdc' et position='inGetAttribut' -dict_condition={ -'ChoiceOfApproach': ('Interactions', 'Component'), -'Interactions' : ( 'Component'), -} - -TemporalAspects = PROC(nom ="TemporalAspects", - Simulated_Time_Laps = FACT(statut='o', max='**', - name = SIMP(statut='o', typ=(simulatedTime,'createObject'),), - initialTime = SIMP(statut='o', typ='R'), - finalTime = SIMP(statut='o', typ='R'), - timeDiscretization = SIMP(statut ='o', typ = 'TXM', into = ['Constant Time Step', 'Varying Time Step']), - bloc_Constant = BLOC (condition = 'timeDiscretization == "Constant Time Step"', - constantTimeStep = SIMP (statut ='o', typ = 'R'), - ), - bloc_Varying = BLOC (condition = 'timeDiscretization == "Varying Time Step"', - CFLNumberCriteria = SIMP (statut ='o', typ = 'R'), - FourierNumberCriteria = SIMP (statut ='o', typ = 'R'), - ), - ), -) - - - - -# -# ----------------------------------------- -SpatialAspects = PROC(nom='SpatialAspects', -# ----------------------------------------- - regles = (AU_MOINS_UN('SystemGeometry', 'SpatialDiscretization'),), - - SystemGeometry = FACT(statut='f', max='**', - SystemGeometryName = SIMP(statut='o', typ=(systemGeometry, 'createObject'),), - Shape = FACT(statut ='o', max='**', - ShapeIdentifier = SIMP(statut='o', typ=(cadShape,'createObject'),max='**',), - ShapeNature = SIMP(statut='o', typ='TXM', into=['Typical Geometry', 'CAD']), - - blocShape = BLOC(condition = 'Shape_Nature == "Typical Geometry"', - Box = SIMP(statut='o', typ='TXM', into=['Cube', 'Sphere','Cylinder'] ), - blocCube = BLOC(condition = 'Box == "Cube"', - #Taille_Box_Englobante = SIMP(statut='o', typ='R', max=3, min =3) - # derait etre un Tuple(3) mais a faire apres la projection - #Size_Of_Bounding_Box = SIMP(statut='o', typ=Tuple(3), validators=VerifTypeTuple(('R','R','R'),),) - Size_Of_Bounding_Box = SIMP(statut='o', typ='R', max=3, min=3, ), - ), # fin blocCube - blocBoule = BLOC(condition = 'Box == "Sphere"', - Center = SIMP(statut='o', typ='R', max=3, min =3), - ),# fin b_Boule - blocCylinder = BLOC(condition = 'Box == "Cylinder"', - Heigth = SIMP(statut="o", typ='R', val_min=0.0, ang='Nanotube length [m]'), - ),# fin blocCylinder - blocBouleOuCylinder = BLOC(condition = 'Box == "Sphere" or Box == "Cylinder"', - Radius = SIMP(statut='o', typ='R', val_min=0.0, ang='radius length [m]') , - ),# fin blocBouleOuCylinder - ), # fin blocShape - blocCAO = creeBlocPourLesFichiers("Shape_Nature == 'CAD'",'Domain', ['txt','I-deas', 'Gmsh', 'top',],None), - ), # fin Shape - ),# SystemGeometry - - SpatialDiscretization = FACT(statut='f', max="**", - MeshId = SIMP(statut='o', typ=(meshIdentifier,'createObject')), - MeshName = SIMP(statut='o', typ='TXM'), - blocMeshFile = creeBlocPourLesFichiers("1 == 1",'Mesh',listeFormatGenerique,None), - GroupIdentifier = SIMP(statut='o', typ=(meshGroup,'createObject'),max='**',), - ),# SpatialDiscretization - - BoundaryConstraints = FACT(statut = 'f', - Motion = FACT(statut='f', - MotionNature = SIMP(statut='o', typ='TXM', into=['Fixed boudary', 'Translational motion', 'Rotational motion', 'Scaling']), - - blocTranslationalMotion = BLOC(condition = 'MotionNature == "Translational motion"', - TranslationVelocity = SIMP(statut='o', typ='R'), - boundaries = SIMP(statut='o', typ=spatialRegion,max='**', homo='SansOrdreNiDoublon' ), - ), - blocRotationalMotion = BLOC(condition = 'MotionNature == "Rotational motion"', - RotationRate = SIMP(statut='o', typ='R'), - boundaries = SIMP(statut='o', typ=spatialRegion,max='**', homo='SansOrdreNiDoublon' ), - ), - blocFixed = BLOC(condition = 'MotionNature == "Fixed boudary"', - boundaries = SIMP(statut='o', typ=spatialRegion,max='**', homo='SansOrdreNiDoublon'), - ), - ), -#PN decrire page 28 - Mapping = FACT(statut='f', - ), - ), # Boundary_Constraints -) # fin Geometric_Domain - -TEXTE_NEW_JDC = "\ -Velocity=scalar()\ -" diff --git a/Vimmp/cata_CSAndCPS_v12_test_driver_1.comm b/Vimmp/cata_CSAndCPS_v12_test_driver_1.comm deleted file mode 100644 index 61b84d0b..00000000 --- a/Vimmp/cata_CSAndCPS_v12_test_driver_1.comm +++ /dev/null @@ -1,186 +0,0 @@ -Pressure=dynamicVariable() -Temperature=scalar() -Time1=simulatedTime() -CS_Num1=modeleNumDuCompo() -P1=userDiscrete() -CS_Num2=modeleNumDuCompo() -Group_From_Mesh1=meshGroup() -Group_From_Mesh2=meshGroup() -Average_Velocity=dynamicVariable() -K=scalar() -Epsilon=scalar() -outlet=meshGroup() -symmetry=meshGroup() -wall=meshGroup() -inlet1=meshGroup() -inlet2=meshGroup() -fluidfile=fileId() -CS_Num1__CS_Num2_Velocity=interaction() -CS_Num1__CS_Num2_Epsilon=interaction() -CS_Num1__CS_Num2_Pressure=interaction() -Time2=simulatedTime() -half_pipe_21_60=meshIdentifier() -half_pipe_15_40=meshIdentifier() -Interpolated_Pressure_File=fileId() -Interpolated_Epsilon_File=fileId() -interpolated_Velocity_File=fileId() - -EnvironementAspects(WorkflowName='Inria', - WorkingDirectory='/tmp/eric',); - -SpatialAspects(SpatialDiscretization=(_F(MeshId=half_pipe_21_60, - MeshName='half_pipe_generation_2inlet', - MeshFileFormat='Med', - MeshFileName=\ - '/home/eric/VIMMP/vimmptraining/app/fluide+mapper+particule/datafiles/half_pipe_21_60_2inlet.med', - GroupIdentifier=(inlet1,inlet2,outlet,symmetry,wall,Group_From_Mesh1,),), - _F(MeshId=half_pipe_15_40, - MeshName='half_pipe_generation_2inlet', - MeshFileFormat='Med', - MeshFileName=\ - '/home/eric/VIMMP/vimmptraining/app/fluide+mapper+particule/datafiles/half_pipe_15_40_2inlet.med', - GroupIdentifier=(inlet1,inlet2,outlet,symmetry,wall,Group_From_Mesh2,),),),); - -TemporalAspects(Simulated_Time_Laps=(_F(name=Time1, - initialTime=0.0, - finalTime=10.0, - timeDiscretization='Constant Time Step', - constantTimeStep=0.1,), - _F(name=Time2, - initialTime=10.0, - finalTime=15.0, - timeDiscretization='Constant Time Step', - constantTimeStep=0.01,),),); - -FluidComponent=Component(SystemType='Continuum system', - PhysicalDescription=_F(ComplexFluid=False, - FlowNature='Turbulent', - DensityInitialisation=_F(DensityValueType='Value', - Density=1.17862,), - ViscosityInitialisation=_F(ViscosityValueType='Value', - Viscosity=0.0183,), - TurbulenceForFlowDynamics=_F(TurbulenceModellingType='One-point moment', - RANSModel='Turbulent-Viscosity Model (TVM)', - TVMChoice='K-Epsilon',), - DynamicalVariables=_F(OriginOfDynamicalVariables='to be simulated', - PressureDefinition=_F(Pressure=Pressure, - SourceTerm=False,), - VelocityDefinition=_F(AverageVelocity=Average_Velocity, - SourceTerm=False,), - KDefinition=_F(Name=K, - SourceTerm=False,), - EpsilonDefinition=_F(Name=Epsilon, - SourceTerm=False,),), - Thermal=_F(ThermalEffects='Non thermal', - ReferenceTemperature=293.15,), - Scalars=_F(withScalars=False,),), - NumericalModel=_F(Identifier=CS_Num1, - SimulatedTimeLapse=Time1, - ChoiceOfApproach='Field-based', - NumericalMethod='FV', - Solver='Code_Saturne', - MeshIdentifiers=(half_pipe_21_60,),), - BoundaryConditions=_F(BoundaryCondition=(_F(TypeOfBoundaryCondition='Inlet', - ApplyOnGroups=(inlet1,inlet2,), - ApplyOnStateVariable=(Average_Velocity,), - FormulationOfBoundary='Dirichlet', - Consigne=\ - 'Choose between InletProfile,IntegratedValue,IntegratedVectorValue ', - IntegratedVectorValue=_F(U=1.0, - V=0.0, - W=0.0,),), - _F(TypeOfBoundaryCondition='Inlet', - ApplyOnGroups=(inlet1,inlet2,), - ApplyOnStateVariable=(K,), - FormulationOfBoundary='Dirichlet', - Consigne=\ - 'Choose between InletProfile,IntegratedValue,IntegratedVectorValue ', - IntegratedValue=0.0,), - _F(TypeOfBoundaryCondition='Wall', - ApplyOnGroups=(wall,), - VelocityAtBoundary=_F(SlipVelocity=0.0, - WallMotion=_F(U=1.0, - V=0.0, - W=0.0,),), - LevelOfDescription=_F(WallFunction='2-scale model (Log law)',),),),),); - -PartComponent=Component(SystemType='Classical particle system', - PhysicalDescription=_F(Particle=_F(ParticleNature='Discrete Particle', - DiscreteParticleName=P1, - TypeOfDiscreteParticle='Solid', - TypeOfSolid='Primary Particle', - Properties=_F(Geometry='Sphere', - ParticleRadius=1e-05, - Weight=_F(Density=1000.0,), - Mechanical='Rigid',), - ListOfInteractions=_F(BondedInteractions=_F(TypeOfBondedInteraction=\ - 'NoOne',), - UnbondedInteractions=_F(TypeOfUnbondedInteraction=\ - 'No',), - ExternalFieldInteraction=_F( - TypeOfInteractionWithAnExternalField='NoOne', - FieldAppliesOnAllSpecies=True,),),),), - NumericalModel=_F(Identifier=CS_Num2, - SimulatedTimeLapse=Time2, - ChoiceOfApproach='N-Particle_Method', - NumericalMethod='CFD_Discrete_N-Particle_Method', - Solver='Code_Saturne', - MeshIdentifiers=(half_pipe_15_40,),), - BoundaryConditions=_F(BoundaryCondition=_F(TypeOfBoundaryCondition='Wall', - ApplyOnGroups=(wall,), - VelocityAtBoundary=_F(SlipVelocity=0.0, - WallMotion=_F(U=0.0, - V=0.0, - W=0.0,),), - LevelOfDescription=_F(),),),); - -MedCouplingComponent=Interpolator(InterpolatorType='Med Coupling', - TargetMeshIdentifier=half_pipe_15_40, - InterpolationType='P0P0',); - -Interactions(IOAspects=_F(FileTransfer=(_F(TransferId=fluidfile, - FileFormat='Med', - FileName='results_Fluid_domain.med',), - _F(TransferId=interpolated_Velocity_File, - FileFormat='Med', - FileName='results_Fluid_Interpolated_Velocity.med',), - _F(TransferId=Interpolated_Epsilon_File, - FileFormat='Med', - FileName='results_Fluid_Interpolated_Epsilon.med',), - _F(TransferId=Interpolated_Pressure_File, - FileFormat='Med', - FileName='results_Fluid_Interpolated_Pressure.med',),),), - Interaction=(_F(InteractionName=CS_Num1__CS_Num2_Velocity, - From=CS_Num1, - To=CS_Num2, - InvolvedStateVariable=Average_Velocity, - InteractionConfiguration=_F(OutputId=fluidfile, - FieldName='Velocity', - CouplingMode='DataProcessing', - DataProcessingNode=_F(Tool=MedCouplingComponent, - OutputId=interpolated_Velocity_File, - FieldName='Velocity', - FieldNature='IntensiveMaximum',),),), - _F(InteractionName=CS_Num1__CS_Num2_Epsilon, - From=CS_Num1, - To=CS_Num2, - InvolvedStateVariable=Epsilon, - InteractionConfiguration=_F(OutputId=fluidfile, - FieldName='epsilon', - CouplingMode='DataProcessing', - DataProcessingNode=_F(Tool=MedCouplingComponent, - OutputId=Interpolated_Epsilon_File, - FieldName='epsilon', - FieldNature='IntensiveMaximum',),),), - _F(InteractionName=CS_Num1__CS_Num2_Pressure, - From=CS_Num1, - To=CS_Num2, - InvolvedStateVariable=Pressure, - InteractionConfiguration=_F(OutputId=fluidfile, - FieldName='Pressure', - CouplingMode='DataProcessing', - DataProcessingNode=_F(Tool=MedCouplingComponent, - OutputId=Interpolated_Pressure_File, - FieldName='Pressure', - FieldNature='IntensiveMaximum',),),),),); -#CHECKSUM:bf096ea4db8633808bfcdba60f251338 -:FIN CHECKSUM \ No newline at end of file diff --git a/Vimmp/cata_CSAndCPS_v13.py b/Vimmp/cata_CSAndCPS_v13.py deleted file mode 100644 index bffd3f61..00000000 --- a/Vimmp/cata_CSAndCPS_v13.py +++ /dev/null @@ -1,1273 +0,0 @@ -from Accas import * - -class composant(ASSD):pass -class mapper(ASSD):pass -class converter(mapper):pass -class interpolator(mapper):pass -class modeleNumDuCompo(UserASSD):pass -class especeChimique(UserASSD):pass -class userParticle(UserASSD) :pass -class userAtom(userParticle) :pass -class userMolecule(userParticle) :pass -class userDiscrete(userParticle) :pass -class userDPD(userParticle) :pass - -class spatialRegion(UserASSD):pass -class cadShape(spatialRegion):pass -#class meshGroup(spatialRegion,UserASSDMultiple):pass -class meshGroup(UserASSDMultiple):pass -class meshIdentifier(spatialRegion):pass -class systemGeometry(UserASSD):pass -class simulatedTime(UserASSD):pass -class constitutiveRelation(UserASSD):pass -class interaction(UserASSD):pass -class transferId(UserASSD):pass -class fileId(transferId):pass -class memoryId(transferId):pass -class corbaId(transferId):pass - -class stateVariable(UserASSDMultiple) : pass -class scalar(stateVariable):pass -class dynamicVariable(stateVariable):pass - -# PN a faire --> ajouter un MC modeleNumerique (apres avoir renomme le modeleNumerique actuel en classe de modele numerique) -# et le dictionnaire d apres -# dictTypModNumModNum = { -# ('Continuum system','Particles') : ('SPH','Lagrangian one-fluid-particle pdf'), -# ('Continuum system','Fields') : ('FV','FEM', 'Spectral method'), -# ('Classical particle system','Particles') : ('MD', 'DPD', 'SDPD','SPH','CFD_Discrete_Particles'), -# ('Classical particle system','Fields') : ('LBM',), -# ('Quantum system','Particles') : ('Particle method',), -# ('Quantum system','Fields') : ('Wave',), -# } - -dictTypModNumModNum = { - ('Continuum system','N-Particle_Method') : ('SPH' , 'Lagrangian one-fluid-particle pdf'), #TODO 'N-Particle_Method --> N-Particle_Method - ('Continuum system','Field-based') : ('FV' , 'FEM', 'Spectral method'), - ('Classical particle system','N-Particle_Method') : ('MD' , 'DPD', 'SDPD','SPH','CFD_Discrete_N-Particle_Method'), - ('Classical particle system','Field-based') : ('LBM' ,), - ('Quantum system','N-Particle_Method') : ('Particle method',), - ('Quantum system','Field-based') : ('Wave',), -} - -dictCodeModeleNumerique = { - 'Code_Saturne' : ('Lagrangian one-fluid-particle pdf', 'FV', 'CFD_Discrete_N-Particle_Method',), - 'Fluent' : ('FV',), - 'Culgi Package': (), - 'DEM_SD' : ('Lagrangian one-fluid-particle pdf', 'FV', 'CFD_Discrete_N-Particle_Method',), - 'DFTB+' : ('density functional tight binding method',), - 'DL_MESO_DPD' : ('Lagrangian one-fluid-particle pdf', 'FV', 'CFD_Discrete_N-Particle_Method',), - 'DL_MESO_LBE' : ('Lagrangian one-fluid-particle pdf', 'FV', 'CFD_Discrete_N-Particle_Method',), - 'DL_POLY_4' : ('Lagrangian one-fluid-particle pdf', 'FV', 'CFD_Discrete_N-Particle_Method',), - 'GROMACS' : ('Lagrangian one-fluid-particle pdf', 'FV', 'CFD_Discrete_N-Particle_Method',), - 'GROMACS_LS' : ('Lagrangian one-fluid-particle pdf', 'FV', 'CFD_Discrete_N-Particle_Method',), - 'LAMMPS' : ('Lagrangian one-fluid-particle pdf', 'FV', 'CFD_Discrete_N-Particle_Method',), - 'NWChem' : ('Lagrangian one-fluid-particle pdf', 'FV', 'CFD_Discrete_N-Particle_Method',), - 'OpenFOAM' : ('Lagrangian one-fluid-particle pdf', 'FV', 'CFD_Discrete_N-Particle_Method',), - 'Quantum EXPRESSO' : ('Particle method', 'Wave',), - 'RHEO_AGGRATE' : ('Particle method', 'Wave',), - 'RHEO_DROP' : ('Particle method', 'Wave',), - 'STAR_CCM+' : ('FV', 'Particles',), - 'Code Nill' : ('Spectral method', ), -} -# Le Code Nill est ajouté en dur au Solver - -dictCodeFormat = { - 'Code_Saturne' : ('Med', 'cgns', 'msh', 'des', 'unv', ), - 'Culgi Package': ('cof',), - 'DEM_SD' : ('geo', 'ascii'), - 'DFTB+' : ('geo', 'ascii'), - 'Fluent' : ('FluentFormat', ), - 'OpenFOAM' : ('OpenFoamFormat', 'Med', ), -} - -dictInterpolatorFormat = { - 'Med Coupling' : ('Med',), -} -dictConvertorFormat = { - 'Gmsh' : ('Med', 'OpenFoamFormat'), -} - -dictTermeLE = { - ('Fields','Particles') : ('Fluid_Velocity_Field', - 'Fluid_Temperature_Field', - 'Fluid_Species_Mass_Fraction_Fluid',), - ('Particles','Fields') : ('Fluid_Particle_Momentum_Exchange_Field', - 'Fluid_Particle_Thermal_Exchange_Field', - 'Lagrangian one-particle pdfFluid_Particle_Mass_Source_Field', - 'Particle_Volumetric_Concentration_Modified_Fluid_Viscosity', - 'Particle_Extra_Stress_Tensor'), - ('Particles','Particles') : ('Pas encore fait'), - ('Fields','Fields') : ('Pas encore fait'), -} - -dictCodeConvertisseur = { - ('Saturne', 'OpenFOAM') : ('gmsh', 'Saturne2CDM and CDM2OpenFoam'), - ('Saturne', 'Fluent') : ('Saturne2CDM and CDM2Fluent'), - ('Fluent', 'OpenFOAM') : ('Fluent2CDM and CDM2OpenFoam'), -} - -listeFormatGenerique =['Med', 'Cgns', 'Gmsh', ] - -#---------------------------------------- -def prepareBlocSystemType(systemType) : -#---------------------------------------- - condition = "SystemType == '" + systemType + "'" - Identifier = SIMP(statut='o', typ=(modeleNumDuCompo,'createObject'),) - SimulatedTimeLapse = SIMP(statut ='o', typ = simulatedTime) - # ModelType = SIMP(statut='o', typ='TXM', into = ('Particles', 'Fields'), position='inGetAttribut') - ChoiceOfApproach = SIMP(statut='o', typ='TXM', into=['Field-based', 'N-Particle_Method'], position='inGetAttribut') - - dicoArgs={} - - for typeMod in ('Field-based', 'N-Particle_Method'): - conditionType = "ChoiceOfApproach == '" + typeMod + "'" - NumericalMethod = SIMP(statut='o',typ='TXM', into=dictTypModNumModNum[systemType, typeMod], - position='global', intoXML=allValueInDict(dictTypModNumModNum)) - dicoBloc = {} - for modeleNumerique in list(dictTypModNumModNum[systemType,typeMod]): - conditionNum = "NumericalMethod == '" + modeleNumerique + "'" - setCode = set() - for code in dictCodeModeleNumerique.keys(): - if modeleNumerique in dictCodeModeleNumerique[code]: setCode.add(code) - # print('------------- conditionType -------->',conditionType) - if setCode ==set(): setCode.add('Code Nill') - Solver = SIMP(statut='o', typ='TXM', into=list(setCode), intoXML=list(dictCodeModeleNumerique.keys()) ) - monNomBloc = 'bloc_ModelName_' + modeleNumerique.replace(' ','_') #les noms de blocs ne peuvent pas avoir de blanc ! - if setCode !=set(): dicoBloc[monNomBloc]=BLOC(condition=conditionNum, nomXML='b_ModelName',Solver=Solver) - dicoArgs['blocModelType'+typeMod] = BLOC(condition=conditionType, NumericalMethod=NumericalMethod, **dicoBloc) - - blocMeshRef = BLOC(condition = '( (ChoiceOfApproach == "Field-based") and (NumericalMethod == "FV") ) or ' - '( (ChoiceOfApproach == "N-Particle_Method") and (NumericalMethod == "CFD_Discrete_N-Particle_Method") )', - MeshIdentifiers = SIMP(statut ='o', max ='**', typ = meshIdentifier, - metAJour=(('ApplyOnGroups', - 'self.etape.getChild("BoundaryConditions").getChild("BoundaryCondition")'),), - ),) - dicoArgs['blocMeshRef'] = blocMeshRef - NumericalModel = FACT(statut='o', max= '**', Identifier=Identifier, ChoiceOfApproach=ChoiceOfApproach, - SimulatedTimeLapse=SimulatedTimeLapse, **dicoArgs) - return BLOC(condition=condition, nomXML='b_systemType', NumericalModel=NumericalModel) - - -#----------------------------------- -def calculCommun(key1, key2, dico): -#----------------------------------- -# retourne la liste des valeurs communes a dico[key1] et dico[key2] - monSet=set() - if not key1 in dico: return () - if not key2 in dico: return () - for val in dico[key1]: - if val in dico[key2]: - monSet.add(val) - if monSet == set() : monSet.add ('No common format') - return list(monSet) - -#------------------------- -def allValueInDict(dico): -#------------------------- -# retourne la liste de toutes les valeurs possibles dans dico - monSet=set() - for clef in dico : - for val in dico[clef] : monSet.add(val) - return monSet - -#-------------------------------------------------------------------------------------------------- -def creeBlocPourLesFichiers(laCondition, Prefixe='Empty', ListeFormats=[], FieldName=None): -#--------------------------------------------------------------------------------------------------- -# il faut reflechir pour parametrer NomDuFichier -# et le type (existing... du fichier) -# et utiliser le creeBlocPourLesFichiers - SIMPFormatFichier = SIMP(statut='o', typ = 'TXM', into = tuple(ListeFormats) + ('All',), defaut='All' ) - dicoDesBlocs = {} - NomDuFichier = Prefixe+'FileName' - formatName = Prefixe+'FileFormat' - dicoDesBlocs[formatName] = SIMPFormatFichier - ListeFormatsboucle = tuple(ListeFormats) + ('All',) - for formatFich in ListeFormatsboucle : - dicoArgs={} - nomBloc = 'blocFormatFichier' + str(formatFich) - typeDesFichiers = ('Fichier', formatFich + " Files (*." + formatFich + ");;All Files (*)",'Sauvegarde') - blocCondition = formatName + " == '" + formatFich + "'" - dicoArgs[NomDuFichier] = SIMP(statut='o', typ = typeDesFichiers, nomXML=NomDuFichier ) - dicoDesBlocs[nomBloc] = BLOC(condition = blocCondition, **dicoArgs) - if FieldName: - SIMPFieldName = SIMP(statut='o', typ = 'TXM',) - dicoDesBlocs[FieldName] = SIMPFieldName - return BLOC(condition=laCondition, **dicoDesBlocs) - -#--------------------------------------------- -def prepareChamp(nomDelaContante, labels ,nbReels ) : -#--------------------------------------------- -# PN : a reecrire -# ajouter les extensions pour le fichier et les blocs associes -# certains champs ne seront jamais uniformes -# probablement a refaire -#PNPN : Passer le nom du champ pour le label du vecteur -# A revoir - - dicoBloc = {} - dicoBloc[nomDelaContante] = SIMP(statut='o', typ='R') - return FACT(statut='o', - InputMode = SIMP(statut='o', typ='TXM', into=('uniform value','values directly assigned','values read in file','analytical function',)), - blocUniforme = BLOC(condition = "InputMode == 'uniform value'", **dicoBloc), - blocVsaisies = BLOC(condition = "InputMode == 'values directly assigned'", - Field = SIMP(typ='R', statut='o', max ='**'), - #Vecteur = SIMP(fenetreIhm='Tableau', homo = labels, - # statut='o', min=2, max='**', - # typ=Tuple(nbReels), - # validators=VerifTypeTuple(("'R',"*nbReels),),) # end particle - ), #b_vsaisie - blocVdsfich = BLOC(condition = "InputMode == 'values read in file'", - Format = SIMP(statut='o', typ='TXM', into=['txt','Med',], position='global' ), - td_txt = BLOC(condition = 'Format == "txt"', - File = SIMP(statut='o', typ=('Fichier','Text Files(*.txt);All Files (*)'),), - ), # fin vtd_txt - td_med_1 = BLOC(condition = 'Format == "Med"', - File = SIMP(statut='o', typ=('Fichier','Med Files(*.med);All Files (*)'),), - ), - td_med_2 = BLOC(condition = 'Format == "Med"', - FieldName = SIMP(statut='o', typ='TXM',), - ), - ), - blocFunct = BLOC(condition = "InputMode == 'analytical function'", - Function = SIMP(statut='o', typ='TXM',), - ), - #b_vserc = BLOC(condition = "InputMode == 'call to a service'", - # Service = SIMP(statut='o', typ='TXM',), - #), - ) - - -#------------------------------ -def prepareTermeSource(condition): -#------------------------------ - return BLOC (condition=condition, - OriginOfSourceTerm = SIMP(statut='o', typ='TXM',into=['Interaction', 'Chemical Reaction', 'Other Scalar']), - blocOriginOfSourceTermInteraction = BLOC(condition = 'OriginOfSourceTerm == "Interaction"', - SourceTermInteraction = SIMP(typ=interaction,statut='o'), - Consigne = SIMP(statut="o", homo="information", typ="TXM", defaut='Create and choose suitable interaction'), - ), - blocOriginOfSourceTermOtherScalar = BLOC(condition = 'OriginOfSourceTerm == "Other Scalar"', - ApplyOnScalar = SIMP (statut ='o', typ=scalar, ), #PNPN A FAIRE : fenetreIhm='menuDeroulant' - ), - ) - -#------------------------------ -def prepareTermeSourceDynVar(condition): -#------------------------------ - return BLOC (condition=condition, - OriginOfSourceTerm = SIMP(statut='o', typ='TXM',into=['Interaction', 'Other Scalar']), - ) - -#------------------------------------------------------ -def prepareFactTurbulence(statut, ajout=None , position=None, positionChoice=None): -#------------------------------------------------------ - listInto = ['Fully resolved (DNS)', 'Spatial filtering (LES)', 'One-point moment', 'One-point PDF'] - if ajout != None : listInto.append(ajout) - return FACT(statut=statut, - TurbulenceModellingType = SIMP(typ='TXM', statut='o', into =listInto, position=position ), - -# --------------- One-point moment ------------------ - blocOnePoint = BLOC(condition= "TurbulenceModellingType == 'One-point moment'", - RANSModel = SIMP(statut="o", typ="TXM", position='global', - into=['Turbulent-Viscosity Model (TVM)', 'Reynolds Stress Model (RSM)']), - blocTVM = BLOC(condition= "RANSModel == 'Turbulent-Viscosity Model (TVM)'", - TVMChoice = SIMP(typ='TXM', statut='o', into=['K-Epsilon', 'K-Omega'] , position=positionChoice), ##PN PN : parametre vs reCalculeEtape - ), # fin blocTVM - blocRSM = BLOC(condition = "RANSModel == 'Reynolds Stress Model (RSM)'", - RSMChoice = SIMP(typ='TXM', statut='o', into=['Rotta', 'LRR-IP','LRR-QI','SSG'], position=positionChoice), - ), # fin blocRSM - ), # fin bloc_one_point - -# --------------- Spatial filtering (LES) ------------------ - blocOneSpatial = BLOC(condition = "TurbulenceModellingType == 'Spatial filtering (LES)'", - ChoiceOfDescription = SIMP(typ='TXM', statut='o', into=['One-point filtered variables', 'Filtered Density Function (FDF)']), - blocOnePoint = BLOC(condition = "ChoiceOfDescription == 'One-point filtered variables'", - SubgridScaleModel = SIMP(typ='TXM', statut='o', into=['No SGS', 'Smagorinsky','Dynamical model', 'SGS Transport Equations']), - ),# fin bloc_OnePoint - blocFDF = BLOC(condition = "ChoiceOfDescription == 'Filtered Density Function (FDF)'", - SubgridScaleModel = SIMP(typ='TXM', statut='o', into=['SLM model for SGS', 'Viscous SLM model for SGS']), - ),# fin bloc_FDF - ), # fin bloc_one_spatial - -# --------------- One-point PDF ------------------ - blocOnePointPdf = BLOC(condition = "TurbulenceModellingType == 'One-point PDF'", - ChoiceOfDescription = SIMP(typ='TXM', statut='o', into=['Velocity PDF', 'Velocity frequency PDF']), - blocVPdf = BLOC(condition = "ChoiceOfDescription == 'Velocity PDF'", - StochasticModel = SIMP(typ='TXM', statut='o', into=['SLM','GLM'], defaut='SLM'), - ), # fin blocVPdf - blocVFPdf = BLOC(condition = "ChoiceOfDescription == 'Velocity frequency PDF'", - StochasticModel = SIMP(typ='TXM', statut='o', into=['Log-normal model','Gamma model','User-defined form'], defaut='SLM'), - ), # fin blocVFPdf - ), # fin bloc_one_point_pdf - -# --------------- Fully resolved (DNS) ------------------ - # blocNoModel = BLOC(condition = "TurbulenceModellingType == 'Fully resolved (DNS)'", - # ChoiceOfApproach = SIMP(statut='o', typ='TXM', into=['Field-based (DNS)', 'N-Particle_Method']), - # blocField = BLOC(condition = "ChoiceOfApproach == 'Field-based (DNS)'", - # NumericalMethod = SIMP(statut='o', typ='TXM', into=['FV', 'Spectral Method'], - # intoXML=['FV', 'Spectral Method','SPH', 'Vortex Method']), - # ),# fin bloc_Field - # blocNParticle = BLOC(condition = "ChoiceOfApproach == 'N-Particle_Method'", - # NumericalMethod = SIMP(statut='o', typ='TXM', into=['SPH', 'Vortex Method'], - # intoXML=['FV', 'Spectral Method','SPH', 'Vortex Method']), - # ),# fin bloc_N_particle - # ), # fin bloc_no_model - ) # fin du return de la fonction factTurbulence - - - -#------------------------------------------------------ -def prepareFactTurbulenceScalaire(statut, ajout=None , position=None): -#------------------------------------------------------ - listInto = ['Fully resolved (DNS)', 'Spatial filtering (LES)', 'One-point moment', 'One-point PDF'] - if ajout != None : listInto.append(ajout) - return FACT(statut=statut, - TurbulenceModellingType = SIMP(typ='TXM', statut='o', into =listInto, position=position ), - -# --------------- One-point moment ------------------ - blocOnePoint = BLOC(condition= "TurbulenceModellingType == 'One-point moment'", - RANSModel = SIMP(statut="o", typ="TXM", - into=['Algebraic flux models','Turbulent diffusivity models', 'Scalar-flux transport equations']), - # blocAlgebraic = BLOC(condition= "RANSModel == 'Algebraic flux models'", - # blocConsigne = BLOC(condition= "RANSModel == 'Algebraic flux models'", - # Consigne = SIMP(statut="o", homo="information", typ="TXM", defaut='Not implemented yet'), - # ), # fin blocAlgebraic - blocTDM = BLOC(condition = "RANSModel == 'Turbulent diffusivity models'", - TDMChoice = SIMP(typ='TXM', statut='o', into=['SGDH', 'GGDH',]), - ), # fin blocTDM - blocSFTE = BLOC(condition = "RANSModel == 'Scalar-flux transport equations'", - SFTEChoice = SIMP(typ='TXM', statut='o', into=['Pressure-scrambling model', 'EB-DFM',]), - ), # fin blocSFTE - ), # fin bloc_one_point - -# --------------- Spatial filtering (LES) ------------------ - blocOneSpatial = BLOC(condition = "TurbulenceModellingType == 'Spatial filtering (LES)'", - ChoiceOfDescription = SIMP(typ='TXM', statut='o', into=['One-point filtered variables', 'Filtered Density Function (FDF)']), - blocOnePoint = BLOC(condition = "ChoiceOfDescription == 'One-point filtered variables'", - SubgridScaleModel = SIMP(typ='TXM', statut='o', into=['No SGS model', 'SGS diffusivity', 'Transport eqs. for SGS scalar fluxes']), - ),# fin bloc_OnePoint - blocFDF = BLOC(condition = "ChoiceOfDescription == 'Filtered Density Function (FDF)'", - SubgridScaleModel = SIMP(typ='TXM', statut='o', into=['Composition FDF', 'Scalar-velocity FDF', 'Micro-mixing model']), - ),# fin bloc_FDF - ), # fin bloc_one_spatial - -# --------------- One-point PDF ------------------ - blocOnePointPdf = BLOC(condition = "TurbulenceModellingType == 'One-point PDF'", - ChoiceOfDescription = SIMP(typ='TXM', statut='o', into=['Composition PDF','Velocity PDF', 'Micro-mixing models']), - # blocCPdf = BLOC(condition = "(ChoiceOfDescription == 'Composition PDF') or (ChoiceOfDescription == 'Velocity PDF')", - # blocConsigne = BLOC(condition = "(ChoiceOfDescription == 'Composition PDF') or (ChoiceOfDescription == 'Velocity PDF')", - # Consigne = SIMP(statut="o", homo="information", typ="TXM", defaut='Not implemented yet.'), - # ), # fin blocCPdf - # blocVPdf = BLOC(condition = "ChoiceOfDescription == 'Velocity PDF'", - # ), # fin blocVPdf - blocMMMPdf = BLOC(condition = "ChoiceOfDescription == 'Micro-mixing models'", - ChoiceOfModel = SIMP(typ='TXM', statut='o', into=['IEM/CIEM','Curl model','Mapping','EMST'],), - ), # fin blocMMMdf - ), # fin bloc_one_point_pdf - -# --------------- Fully resolved (DNS) ------------------ - # blocNoModel = BLOC(condition = "TurbulenceModellingType == 'Fully resolved (DNS)'", - # ChoiceOfApproach = SIMP(statut='o', typ='TXM', into=['Field-based (DNS)', 'N-Particle_Method']), - # blocField = BLOC(condition = "ChoiceOfApproach == 'Field-based (DNS)'", - # NumericalMethod = SIMP(statut='o', typ='TXM', into=['FV', 'Spectral Method'], - # intoXML=['FV', 'Spectral Method','SPH', 'Vortex Method']), - # ),# fin bloc_Field - # blocNParticle = BLOC(condition = "ChoiceOfApproach == 'N-Particle_Method'", - # NumericalMethod = SIMP(statut='o', typ='TXM', into=['SPH', 'Vortex Method'], - # intoXML=['FV', 'Spectral Method','SPH', 'Vortex Method']), - # ),# fin bloc_N_particle - # ), # fin bloc_no_model - ) # fin du return de la fonction factTurbulence - - -#-------------------- -def prepareBlocCPS(): -#-------------------- - return BLOC(condition = 'SystemType == "Classical particle system"', - Particles = FACT(statut='o', max='**', - ParticleNature = SIMP(statut='o', typ='TXM', - into=['Atom/Molecule','Atoms', 'Molecules', 'Dissipative', 'Fluid Particle', 'Discrete Particle']), - # blocAtomMolecule = BLOC(condition='ParticleNature == "Atom/Molecule"', - # Name = SIMP(statut='o', typ=(userMolecule,'createObject'),), - # ChemicalSpecie = FACT(max='**', statut='o', - # ChemicalSpecieName = SIMP(statut='o', typ='TXM'), - # Proportion = SIMP(statut='o', typ='R', val_max =1), - # Number = SIMP(statut='o', typ = 'I'), - # #PN proportion vs Number . - # ), - # Mass = SIMP(statut='o', typ = 'I'), - # ElectricCharge = SIMP(statut='o', typ='R'), - # MagneticMoment = SIMP(statut='o', typ='R'), - # ), #blocAtomMolecule - blocAtom = BLOC(condition='ParticleNature == "Atoms"', - AtomsName = SIMP(statut='o', typ=(userAtom,'createObject'),), - Atom = FACT(statut ='o', max= '**', - ChemicalSpecie = SIMP(statut='o', typ='TXM'), - Number = SIMP(statut='o', typ = 'I'), - ElectricCharge = SIMP(statut='o', typ='R'), - MagneticMoment = SIMP(statut='o', typ='R'), - Size = SIMP(statut='f', typ='R'), # relevant ? - ),# Atom - ), # fin b_Atom -# --------------- Molecules ------------------ - blocMolecule = BLOC(condition='ParticleNature == "Molecules"', - MoleculeName = SIMP(statut='o', typ=(userMolecule,'createObject'),), - ChemicalSpecie = FACT(max='**', statut='o', - ChemicalSpecieName = SIMP(statut='o', typ=userAtom), - Proportion = SIMP(statut='o', typ='R', val_max =1), - ), - ElectricCharge = SIMP(statut='o', typ='R'), - MagneticMoment = SIMP(statut='o', typ='R'), - Shape = SIMP(statut='f', typ='TXM', into=['Linear', 'Trigonal Planar', 'Angular', 'Tetrahedral', 'Octahedral', 'Trigonal pyramid', 'Other']), - ), #fin b_Molecule -# --------------- Dissipative ------------------ - blocDissipative = BLOC(condition='ParticleNature == "Dissipative"', - DPDName = SIMP(statut='o', typ=(userDPD,'createObject'),), - BondedParticles = SIMP(statut="o", typ=bool, defaut=False), - ), # b_Dissipative - -# --------------- Discrete Particle ------------------ - blocDiscrete = BLOC(condition='ParticleNature == "Discrete Particle"', - DiscreteParticleName = SIMP(statut='o', typ=(userDiscrete,'createObject'),), - TypeOfDiscreteParticle = SIMP(statut='o', typ='TXM', into=['Solid', 'Droplets', 'Bubbles','Bio Organism'],), - blocTypeDPSolid = BLOC(condition ='TypeOfDiscreteParticle == "Solid"', - TypeOfSolid = SIMP(statut='o', typ='TXM', into=['Primary Particle', 'Assemblage / Aggregate'], position = 'global'), - b_SolidPrimary = BLOC(condition='TypeOfSolid == "Primary Particle"', - ), - b_SolidAggregate = BLOC(condition='TypeOfSolid == "Assemblage / Aggregate"', - ), - ), -# --------------- Bio Organism ------------------ - blocTypeBioSolid = BLOC(condition='TypeOfDiscreteParticle == "Bio Organism"', - TypeOfOrganism = SIMP(statut='o', typ='TXM', into=['Unicellular', 'Multicellular']), - blocUnicellular = BLOC(condition ='TypeOfOrganism=="Unicellular"', - Unicellular = SIMP(statut='o', typ='TXM', into=["Bactaria"], defaut='Bactaria') - ), - b_Multicellular = BLOC(condition ='TypeOfOrganism=="Multicellular"', - Multicellular = SIMP(statut='o', typ='TXM', into=["Animal","Fongus","Plant"]) - ), - ), # b_TypeBio_Solid - -# --------------- Particule Properties ------------------ - Properties = FACT(statut ='o', - Geometry = SIMP(statut='o', typ='TXM', into=['Sphere', 'Ellopsoids', 'Other Shape']), - b_geom_Sphere = BLOC(condition = 'Geometry == "Sphere"', - ParticleRadius = SIMP(statut='o', typ ='R', val_min = 0), - ), - Weight = FACT(statut = 'o', - Consigne = SIMP(statut="o", homo="information", typ="TXM", defaut='Choose between Mass or Density'), - Mass = SIMP(statut='f', typ ='R', val_min = 0), - Density = SIMP(statut='f', typ ='R', val_min = 0), - ), - Mechanical = SIMP(statut='o', typ='TXM', into=['Rigid', 'Flexible', 'Deformable']), - b_SolidAggregate = BLOC(condition='TypeOfSolid == "Assemblage / Aggregate"', - Morphological = FACT(statut = 'o', - Consigne = SIMP(statut="o", homo="information", typ="TXM", defaut='Choose optional properties'), - FractalDimension = SIMP(statut='f', typ='R'), - NumberOfPrimaryParticle = SIMP(statut ='f',typ='I'), - EquivalentSize = SIMP(statut='f', typ='R'), - Porosity = SIMP(statut='f', typ='R'), - ), # Morphological - ), # b_SolidAggregate - ElectroMagnetic = FACT(statut = 'f', - ElectricCharge = SIMP(statut='o', typ='R'), - MagneticMoment = SIMP(statut='o', typ='R'), - ), - b_SolidAggregateBonded = BLOC(condition='TypeOfSolid == "Assemblage / Aggregate"', - BondedParticles = FACT( - ListOfBondedParticles = SIMP(statut='o', max='**', typ = userParticle), - ), - ), - ), # Properties - ), # b_Discrete - ListOfBondedParticles = FACT(statut='f', - # --------------------------------------# - BondedParticles = FACT(statut='o', max = "**", - NameOfBonded_Particles = SIMP(statut='o', typ='TXM'), - SpeciesinParticle = SIMP(statut='o', min=2, typ='TXM' , max = "**"), - ), # BondedParticles - ), # ListOfBondedParticles - ), # fin Particle - ParticleParticleInteraction = FACT(statut='o', max = "**", - # -------------------------------------------------------# - BondedInteractions = FACT(statut='o', max = "**", - TypeOfBondedInteraction = SIMP(statut='o', typ='TXM', into=['NoOne', 'Covalent Bond Length', 'FENE', 'Covalent Bond Angle', 'Dihedral Angles', 'Improper Dihedral', 'Frozen Motion' ], defaut='NoOne'), - - #La saisie de l'ensemble des liaisons d'un meme type peut se faire ds le meme bloc (soit ds un fichier, soit manuelle) - #Une seule valeur de distante? est a saisir pour l'ensemble - # bloc_covalent_1 = BLOC(condition = 'TypeOfBondedInteraction in ("Covalent Bond Length","FENE")', - # ), # fin bloc_covalent_1 - -# --------------- Covalent Bond Length ------------------ - blocCovalentLength = BLOC(condition = 'TypeOfBondedInteraction == "Covalent Bond Length"', - InteractionLengthParameters = FACT(statut='o', max="**", - ApplyToBondedParticles = SIMP(statut='o', max='**', typ='TXM'), - SpringStifness = SIMP(statut='o', typ='R', val_min=0), - MeanBondLength = SIMP(statut='o', typ='R', val_min=0), - ), # fin Interation_Length_Parameters - ), # fin BondLengthParameters - -# --------------- Covalent Bond Angle ------------------ - blocCovalentAngle = BLOC(condition = 'TypeOfBondedInteraction == "Covalent Bond Angle"', - InteractionAnglesParameters = FACT(statut='o', max="**", - ApplyToBondedParticles = SIMP(statut='o', max='**', typ='TXM'), - SpringStifness = SIMP(statut='o', typ='R', val_min=0), - MeanBondAngle = SIMP(statut='o', typ='R', val_min=0), - ), # fin Interation_Angles_Parameters - ), # fin bloccovalentlengthand_angle - - #bloc_covalent_length_and_angle = BLOC(condition = 'TypeOfBondedInteraction == "Covalent Bond Length" or TypeOfBondedInteraction == "Covalent Bond Angle"', - # Bond_Parameters = FACT(statut='o', max="**", - # Apply_To_Bonded_Particles = SIMP(statut='o', max='**', typ='TXM'), - # Spring_Stifness = SIMP(statut='o', typ='R', val_min=0), - # bloc_covalent_length = BLOC(condition = 'TypeOfBondedInteraction == "Covalent Bond Length"', - # Mean_Bond_Length = SIMP(statut='o', typ='R', val_min=0), - # ), # fin Bond_Length_Parameters - # bloc_covalent_angle = BLOC(condition = 'TypeOfBondedInteraction == "Covalent Bond Angle"', - # Mean_Bond_Angle = SIMP(statut='o', typ='R', val_min=0), - # ), # fin Bond_Length_Parameters - # ), # fin Bond_Length_Parameters - #), # fin bloc_covalent_length_and_angle - -# --------------- Covalent Bond Angle ------------------ - blocFENE = BLOC(condition = 'TypeOfBondedInteraction == "FENE"', - AppliesToAllParticles = SIMP(statut='o', typ=bool, defaut=True), - blocNotOnAll = BLOC(condition = 'AppliesToAllParticles == False', - FENEParameters = FACT(statut='o', max="**", - SpeciesPair = SIMP(statut='o', max=2, typ='TXM'), - SpringConstant_H = SIMP(statut='o', typ='R', val_min=0), - LMax = SIMP(statut='o', typ='R', val_min=0), - ), # fin FENE_Parameters - ), # fin bloc_not_on_all - blocOnAll = BLOC(condition = 'AppliesToAllParticles == True', - Spring_Constant_H = SIMP(statut='o', typ='R', val_min=0), - LMax = SIMP(statut='o', typ='R', val_min=0), - ), # fin bloc_on_all - ), # fin blocFENE - - blocLeReste = BLOC(condition = 'TypeOfBondedInteraction in ("Dihedral Angles", "Improper Dihedral", "Frozen Motion")', - ParticleName = SIMP(statut="f", typ='TXM'), - Consigne = SIMP(statut="o", homo="information", typ="TXM", defaut='Not Implemented Yet'), - ), - - ), # fin Bonded_Interaction - - # ------------------------------- # - - UnbondedInteractions = FACT(statut='o', max= "**", - - TypeOfUnbondedInteraction = SIMP(statut='o', typ='TXM', into=['No', 'electro_magnetic', 'Repulsion_and_VdW', 'Soft_Potentiel', ], defaut='No', position='global',fenetreIhm='menuDeroulant'), - - blocElec = BLOC(condition = 'TypeOfUnbondedInteraction == "electro_magnetic"', - Permittivity = SIMP(statut='o', typ='R', position='global_jdc'), - Magnetic = SIMP(statut='o', typ=bool, defaut=False,), - blocMagnetic = BLOC(condition = 'Magnetic == True', - Permability = SIMP(statut='o', typ='R'), - ), # bloc_magnetic - ),# fin bloc_elec - - blocVdW = BLOC(condition = 'TypeOfUnbondedInteraction == "Repulsion_and_VdW"', - SpeciesPairParameters = FACT(statut='o', max="**", - TypeRepulsionAndVdW = SIMP(statut='o', typ='TXM', into = [ 'Lennard_Jones', 'Hard_sphere_model']), - SpeciesPair = SIMP(statut='o', max=2, typ='TXM'), - VdWRadius = SIMP(statut='o', typ='R', val_min=0), - blocLennard = BLOC(condition = "TypeRepulsionAndVdW == 'Lennard_Jones'", - DepthOfThePotentialWell = SIMP(statut='o', typ='R', val_min=0), - ), # fin b_Lennard - ), # fin Species_Pair_Parameters - ), # bloc_VdW - - blocParamSoftPotentiel = BLOC(condition = "TypeOfUnbondedInteraction == 'Soft_Potentiel'", - GrootWarrenRepulsion = SIMP(statut='o', typ='R', defaut=25.0, val_min=0), - GrootWarrenCutoff = SIMP(statut='o', typ='R', defaut=1.0, val_min=0), - DragCoefficient = SIMP(statut='o', typ='R'), # les 2 valent 0 pour MD - DragForceCutoff = SIMP(statut='o', typ='R', val_min=0), - ), # b_Param_Soft_Potentiel - - ), # fin UnBonded_Interactions - - # ------------------------------- # - - ExternalFieldInteraction = FACT(statut='o', max= "**", - TypeOfInteractionWithAnExternalField = SIMP(statut='o', typ='TXM', into=['NoOne','gravitational field','electric field','magnetic field', 'Hydrodynamic_Field'], fenetreIhm='menuDeroulant', defaut ='NoOne'), - blocGravite = BLOC(condition = 'TypeOfInteractionWithAnExternalField=="gravitational field"', - G = SIMP(statut='o', typ='R', defaut=9.81), - ), - blocElect = BLOC(condition = 'TypeOfInteractionWithAnExternalField=="electric field"', - ElectricField = prepareChamp('E', ('E',), 1), - ), - blocMagnetic = BLOC(condition = 'TypeOfInteractionWithAnExternalField=="magnetic field"', - MagneticField = prepareChamp('B', ('B',), 1), - ), - blocHydrodynamic = BLOC(condition = 'TypeOfInteractionWithAnExternalField=="hydrodynamic field"', - HydrodynamicField = prepareChamp('U', ('U',), 1), - ), - blocExternalFieldInteraction = BLOC(condition = 'TypeOfInteractionWithAnExternalField != "No"', - FieldAppliesOnAllSpecies = SIMP(statut='o', typ=bool, defaut=True), - blocPorteEspece = BLOC(condition = 'FieldAppliesOnAllSpecies == False ', - SpeciesList = SIMP(statut='o', typ='TXM', max= '**', homo='SansOrdreNiDoublon'), # faire un typ = "espece" - ), - ), # fin b_External_Field_Interaction - ), # fin Interaction_External_Field - - ), # fin List_Of_Interactions - )# fin du prepareBlocCps - -# _______________________________________ - -def prepareBlocInitialisation(condition): - return BLOC(condition = condition, - Initialisation = FACT(statut ='o', - InitialisationType = SIMP(statut='o', into =['ByValue', 'ByFile', 'ByInteraction'], typ ='TXM', defaut='ByValue'), - BlocByFile = creeBlocPourLesFichiers('InitialisationType == "ByFile"', '', ListeFormats = listeFormatGenerique, FieldName='FieldName'), - BlocByInteraction = BLOC(condition = 'InitialisationType == "ByInteraction"', - InteractionName = SIMP(typ=interaction,statut='o'), - Consigne = SIMP(statut="o", homo="information", typ="TXM", defaut='Create and choose suitable interaction'), - ), - BlocByValue = BLOC(condition = 'InitialisationType == "ByValue"', - Value = SIMP (statut ='o', typ='R'), - ), - ), - SourceTerm = SIMP(typ=bool, statut='o', defaut=False), - blocSourceTerm = prepareTermeSourceDynVar('SourceTerm==True'), - ) #BlocSimulatedPressure - -#--------------------------- -def prepareBlocFluideMacro(): -#--------------------------- - return BLOC(condition = 'SystemType == "Continuum system"', - ComplexFluid = SIMP(typ=bool, statut='o', defaut = False, position='global'), - FlowNature = SIMP(typ='TXM', statut='o', into =['Laminar', 'Turbulent'], position='global'), - -# --------------------------- Density ------------- - DensityInitialisation = FACT(statut ='o', - DensityValueType = SIMP(typ='TXM', statut ='o', into = ['Value', 'Field'], defaut ='Value'), - blocDensityValue = BLOC(condition = 'DensityValueType == "Value"', - Density = SIMP(typ='R', statut ='o'), - ), - blocDensField= creeBlocPourLesFichiers('DensityValueType == "Field"', 'Density', ListeFormats=listeFormatGenerique, FieldName='DensityFieldName'), - ),# DensityInitialisation - -# --------------------------- Viscosity ------------- - ViscosityInitialisation = FACT(statut ='o', - ViscosityValueType = SIMP(typ='TXM', statut ='o', into = ['Value', 'Field'], defaut ='Value'), - blocViscosityValue = BLOC(condition = 'ViscosityValueType == "Value"', - Viscosity = SIMP(typ='R', statut ='o'), - ), - blocViscosityField = creeBlocPourLesFichiers('ViscosityValueType == "Field"', 'Viscosity', ListeFormats=listeFormatGenerique, FieldName='ViscosityFieldName'), - ), #fin ViscosityityInitialisation - -# --------------------------- Turbulent ------------- - blocFlowNatureTurbulent = BLOC(condition = ' FlowNature == "Turbulent"', - TurbulenceForFlowDynamics = prepareFactTurbulence('o',position='global',positionChoice='reCalculeEtape'), - ), #fin bloc_FlowNature_Turbulent - - DynamicalVariables = FACT(statut ='o', - VariablesSimulation = SIMP(statut='o', typ =bool, position='global'), - BlocVariablesSimulation = BLOC(condition = 'VariablesSimulation == False', - OriginOfDynamicalVariables = SIMP(statut='o', into =['Given', 'Interaction'], typ ='TXM', position='global'), - BlocGivenOrInteraction = BLOC(condition = 'OriginOfDynamicalVariables in ["Given", "Interaction",]', - Steady = SIMP(typ=bool, statut ='o', defaut = True, position = 'global'), - # BlocNotSteady = BLOC(condition = 'Steady == False', - BlocConsigne = BLOC(condition = 'Steady == False', - Consigne = SIMP(statut="o", homo="information", typ="TXM", defaut='Not implemented yet. Will ask for a range of calculation steps.'), - ), #BlocNotSteady - BlocSteady = BLOC(condition = 'Steady == True', - BlocGiven = BLOC(condition = 'OriginOfDynamicalVariables == "Given"', - InSameFile = SIMP(typ=bool, statut ='o', defaut = True, position = 'reCalculeEtape'), - BlocSameFile = creeBlocPourLesFichiers('InSameFile == True', 'DynamicalVariables', ('Med', 'cgns' ), None), - ), #BlocGiven - ), #BlocSteady - ), #BlocGivenOrInteraction - ), - PressureDefinition = FACT(statut ='o', - Pressure = SIMP(typ=(dynamicVariable,'createObject'), statut='o', defaut ='Pressure', homo='constant'), - BlocSteady = BLOC(condition = 'Steady == True', - BlocFluidInSame = creeBlocPourLesFichiers('InSameFile == False', 'Pressure', ('Med', 'cgns' ), None), - BlocGivenPressure = BLOC(condition = 'OriginOfDynamicalVariables == "Given"', - PressureFieldName = SIMP(typ='TXM',statut='o'), - ), - BlocInteractionPressure = BLOC(condition = 'OriginOfDynamicalVariables == "Interaction"', - InteractionName = SIMP(typ=interaction,statut='o'), - Consigne = SIMP(statut="o", homo="information", typ="TXM", defaut='Create and choose suitable interaction'), - ), - ), - BlocSimulatedPressure = prepareBlocInitialisation(condition = 'VariablesSimulation == True'), - ), - VelocityDefinition = FACT(statut ='o', - blocFlowNatureTurbulent = BLOC(condition = 'FlowNature == "Turbulent"', - #sousBlocFlowNatureTurbulent = BLOC(condition = 'TurbulenceModellingType != "Fully resolved (DNS)"', - AverageVelocity = SIMP(typ=(dynamicVariable,'createObject'), statut='o', defaut ='Average_Velocity', homo='constant'), - BlocSteadyGivenVelocity1 = BLOC(condition = 'OriginOfDynamicalVariables == "Given" and Steady == True ', - AverageVelocityValue = SIMP(typ='R', statut='o' ), - ), - #), - ), - #blocFlowNatureLaminar = BLOC(condition = ' FlowNature == "Laminar" or TurbulenceModellingType == "Fully resolved (DNS)"', - blocFlowNatureLaminar = BLOC(condition = 'FlowNature == "Laminar"', - FluidVelocity = SIMP(typ=(dynamicVariable,'createObject'), statut='o', defaut ='Fluid_Velocity', homo='constant'), - BlocSteady = BLOC(condition = 'Steady == True', - BlocVelocityInSame = creeBlocPourLesFichiers('InSameFile == False', 'Velocity', ('Med', 'cgns' ), None), - BlocSteadyGivenVelocity2 = BLOC(condition = 'OriginOfDynamicalVariables == "Given"', - VelocityFieldName = SIMP(typ='TXM',statut='o'), - ), - ), - ), - BlocSteady = BLOC(condition = 'Steady == True', - BlocInteractionVelocity = BLOC(condition = 'OriginOfDynamicalVariables == "Interaction"', - InteractionName = SIMP(typ=interaction,statut='o'), - Consigne = SIMP(statut="o", homo="information", typ="TXM", defaut='Create and choose suitable interaction'), - ), - ), - BlocSimulatedVelocity = prepareBlocInitialisation(condition = 'VariablesSimulation == True'), - ), - BFlowNatureTurbulent = BLOC(condition ='FlowNature == "Turbulent"', - # K-epislon ou k-omega - blocTurbulenceTWMChoice1 = BLOC(condition = 'TVMChoice == "K-Epsilon" or TVMChoice == "K-Omega"', - KDefinition = FACT(statut ='o', - Name = SIMP(typ=(scalar,'createObject'), statut='o', defaut ='K', homo='constant'), - BlocSteady = BLOC(condition = 'Steady == True', - BlocKInSame = creeBlocPourLesFichiers('InSameFile == False', 'K', ('Med', 'cgns' ), None), - BlocKGiven = BLOC(condition = 'OriginOfDynamicalVariables == "Given"', - KFieldName = SIMP(typ='TXM',statut='o', defaut='K'), - ), - BlocKInteraction = BLOC(condition = 'OriginOfDynamicalVariables == "Interaction"', - InteractionName = SIMP(typ=interaction,statut='o'), - Consigne = SIMP(statut="o", homo="information", typ="TXM", defaut='Create and choose suitable interaction'), - ), - ), - BlocSimulatedKDefinition = prepareBlocInitialisation(condition = 'VariablesSimulation == True'), - ), # KDefinition - ),# fin blocTurbulenceTWMChoice1 - - # REM : L'existence des mc TVMChoice et RSMChoice est exclusive, du coup une évaluation de condition - # qui contient les deux renvoie forcément une exception, le bloc n'est alors pas evalué - # sauf si le mc de la première condition existe (ordre évaluation du or) - # blocTurbulenceTWMChoice2 = BLOC(condition = 'TVMChoice == "K-Epsilon" or RSMChoice != None', - # blocTurbulenceTWMChoice2 = BLOC(condition = '(RSMChoice != None) or (TVMChoice == "K-Epsilon")', - # blocTurbulenceTWMChoice2 = BLOC(condition = 'TVMChoice == "K-Epsilon"', - blocTurbulenceTWMChoice2 = BLOC(condition = 'RANSModel == "Reynolds Stress Model (RSM)" or TVMChoice == "K-Epsilon"', - EpsilonDefinition = FACT(statut ='o', - Name = SIMP(typ=(scalar,'createObject'), statut='o', defaut ='Epsilon', homo='constant'), - BlocSteady = BLOC(condition = 'Steady == True', - BlocEpsilonInSame = creeBlocPourLesFichiers('InSameFile == False', 'Epsilon', ('Med', 'cgns' ), None), - BlocEpsilonGiven = BLOC(condition = 'OriginOfDynamicalVariables == "Given"', - EpsilonFieldName = SIMP(typ='TXM',statut='o'), - ), - BlocEpsilonInteraction = BLOC(condition = 'OriginOfDynamicalVariables == "Interaction"', - InteractionName = SIMP(typ=interaction,statut='o'), - Consigne = SIMP(statut="o", homo="information", typ="TXM", defaut='Create and choose suitable interaction'), - ), - ), - BlocSimulatedEpsilonDefinition = prepareBlocInitialisation(condition = 'VariablesSimulation == True'), - ), #EpsilonDefinition - ), # bloc_Turbulence_TWMChoice2 - - blocTurbulenceTWMChoice3 = BLOC(condition = 'TVMChoice == "K-Omega"', - OmegaDefinition = FACT(statut ='o', - Name = SIMP(typ=(scalar,'createObject'), statut='o', defaut ='Omega', homo='constant'), - BlocSteady = BLOC(condition = 'Steady == True', - BlocOmegaInSame = creeBlocPourLesFichiers('InSameFile == False', 'Omega', ('Med', 'cgns' ), None), - BlocOmegaGiven = BLOC(condition = 'OriginOfDynamicalVariables == "Given"', - OmegaFieldName = SIMP(typ='TXM',statut='o'), - ), - BlocOmegaInteraction = BLOC(condition = 'OriginOfDynamicalVariables == "Interaction"', - InteractionName = SIMP(typ=interaction,statut='o'), - Consigne = SIMP(statut="o", homo="information", typ="TXM", defaut='Create and choose suitable interaction'), - ), - ), - BlocSimulatedOmegaDefinition = prepareBlocInitialisation(condition = 'VariablesSimulation == True'), - ), - ), # blocTurbulenceTWMChoice3 - - # blocTurbulenceRSMChoice1 = BLOC(condition = "(RANSModel == 'Reynolds Stress Model (RSM)') and (RSMChoice !=None)", - blocTurbulenceRSMChoice1 = BLOC(condition = "RSMChoice !=None", - RijDefinition = FACT(statut ='o', - Name = SIMP(typ=(scalar,'createObject'), statut='o', defaut ='Rij', homo='constant'), - BlocSteady = BLOC(condition = 'Steady == True', - BlocRijInSame = creeBlocPourLesFichiers('InSameFile == False', 'Rij', ('Med', 'cgns' ), None), - BlocRijGiven = BLOC(condition = 'OriginOfDynamicalVariables == "Given"', - RijFieldName = SIMP(typ='TXM',statut='o'), - ), - BlocRijInteraction = BLOC(condition = 'OriginOfDynamicalVariables == "Interaction"', - InteractionName = SIMP(typ=interaction,statut='o'), - Consigne = SIMP(statut="o", homo="information", typ="TXM", defaut='Create and choose suitable interaction'), - ), - ), - BlocSimulatedRijDefinition = prepareBlocInitialisation(condition = 'VariablesSimulation == True'), - ), - ), # blocTurbulenceRSMChoice1 - ), #BFlowNatureTurbulent - ), # DynamicalVariables - -# ---------------------- Effets thermiques - Thermal = FACT(statut ='o', - ThermalEffects = SIMP(typ='TXM', statut='o', into =['Non thermal', 'Thermal'] , defaut='Thermal', position='global' ), - blocNonThermalEffects = BLOC(condition = 'ThermalEffects == "Non thermal"', - ReferenceTemperature = SIMP(typ='R', statut='o', val_min=-273.15 ), - ), # fin bloc_NonThermal - bloc_ThermalEffects_ = BLOC(condition = 'ThermalEffects == "Thermal"', - ConductivityValueType = SIMP(typ='TXM', statut ='o', into = ['Value', 'Field'], defaut ='Value'), - blocCondValue = BLOC (condition = 'ConductivityValueType == "Value"', - Conductivity = SIMP(typ='R', statut ='o'), - ), - blocCondField = creeBlocPourLesFichiers('ConductivityValueType == "Field"', 'Conductivity', ListeFormats=listeFormatGenerique, FieldName='conductivityFieldName'), - #ActiveOnFlowEffect = ActiveOnFlowEffect(), - ), - ),# fin Fact Thermal - -# ---------------------- Scalaires - - blocScalarFluidTurbulentOrLaminar = BLOC(condition = "(ComplexFluid == False and FlowNature == 'Turbulent') or (ComplexFluid == False and FlowNature == 'Laminar')", - Scalars = FACT(statut = 'o', - withScalars = SIMP(statut='o', typ=bool, defaut=False), - blocwithScalars = BLOC(condition = 'withScalars == True', - blocFlowNatureTurbulentForScalars = BLOC(condition = ' FlowNature == "Turbulent"', - AsTurbulenceForFlowDynamics = SIMP(statut='o', typ=bool, defaut=True), - BlocAsTFFD = BLOC(condition = "AsTurbulenceForFlowDynamics == False", - ScalarsTurbulenceModelling = prepareFactTurbulenceScalaire('o',), - ), - ), - blocThermalEffectsOn = BLOC(condition = ' ThermalEffects == "Thermal"', - TemperatureScalar = FACT(statut ='o', - #Name = SIMP(typ=(scalar,'createObject'), statut='o', defaut ='Temperature', homo='constant', position='reCalculeEtape'), - Name = SIMP(typ=(scalar,'createObject'), statut='o', defaut ='Temperature', homo='constant'), - SourceTerm = SIMP(typ=bool, statut='o', defaut=False), - blocSourceTerm = prepareTermeSource('SourceTerm==True'), - TemperatureInitialisation = FACT(statut ='o', - OriginOfThermalFluxField = SIMP(statut='o', into =['Given', 'Interaction', 'to be simulated'], typ ='TXM'), - BlocGiven = creeBlocPourLesFichiers('OriginOfThermalFluxField == "Given"', 'Temperature', ('Med', 'cgns' ), FieldName='FieldName'), - ),# fin TemperatureInitialisation - ),# TemperatureScalar - ), # fin bloc_ThermalEffects_On - Scalar = FACT(statut = 'o', max ='**', - Name = SIMP(typ=(scalar,'createObject'), statut='o',), - DiffusivityValueType = SIMP(typ='TXM', statut ='o', into = ['Value', 'Field'], defaut ='Value'), - blocDiffValue = BLOC(condition = 'DiffusivityValueType == "Value"', - Diffusivity = SIMP(typ='R', statut ='o'), - ), - blocDiffField = creeBlocPourLesFichiers('DiffusivityValueType == "Field"', 'Diffusivity', ListeFormats=listeFormatGenerique, FieldName='DiffusivityFieldName'), - OriginOfScalar = SIMP(statut='o', into =['Given', 'Interaction', 'to be simulated'], typ ='TXM', defaut='to be simulated'), - blocSimulatedScalar = BLOC(condition = 'OriginOfScalar == "to be simulated"', - SourceTerm = SIMP(typ=bool, statut='o', defaut=False), - blocSourceTerm = prepareTermeSource('SourceTerm==True'), - Initialisation = FACT(statut ='o', - InitialisationOfScalar = SIMP(statut='o', into =['ValueInit', 'FileInit', 'InteractionInit'], typ ='TXM', defaut='ValueInit'), - BlocFileInit = creeBlocPourLesFichiers('InitialisationOfScalar == "FileInit"', 'ScalarInit', ListeFormats = listeFormatGenerique, FieldName='ScalarInitField'), - BlocInteractionInit = BLOC(condition = 'InitialisationOfScalar == "InteractionInit"', - InteractionName = SIMP(typ=interaction,statut='o'), - Consigne = SIMP(statut="o", homo="information", typ="TXM", defaut='Create and choose suitable interaction'), - ), - BlocValueInit = BLOC(condition = 'InitialisationOfScalar == "ValueInit"', - ValueInit = SIMP (statut ='o', typ='R'), - ), - ), #Initialisation - ), #blocSimulatedScalar - blocInteractionScalar = BLOC(condition = 'OriginOfScalar == "Interaction"', - InteractionName = SIMP(typ=interaction,statut='o'), - Consigne = SIMP(statut="o", homo="information", typ="TXM", defaut='Create and choose suitable interaction'), - ), - blocGivenScalar = creeBlocPourLesFichiers('OriginOfScalar == "Given"', 'Scalar', ListeFormats = listeFormatGenerique, FieldName='ScalarField'), - EffectOnFlowDynamic = SIMP(typ='TXM', statut='o', into=[ 'Passive', 'Active'], defaut='Passive', ), - blocScalarActiveOnFlowDynamic = BLOC(condition = ' EffectOnFlowDynamic == "Active"', - ActiveOnFlowEffect = ActiveOnFlowEffect(), - ), - blocScalarFluidTurbulentAndNonComplexe = BLOC (condition = "FlowNature == 'Turbulent'", - ScalarFluxModel = prepareFactTurbulenceScalaire('f'), - ), # bloc_scalar_FluidTurbulentandNonComplexe - ),# Scalar - ),# blocwWithScalars - ),# Scalars - ), # fin FluidTurbulentandNonComplexe - # il faut une validation de coherence entre l existence de tous les turbulencesModelling - )# fin bloc_FluideMacro - -#---------------------------------------- -def ActiveOnFlowEffect(inTemperature=True): -#---------------------------------------- - return FACT(statut = 'o', max='**', - RelationType = SIMP(statut = 'o', into =['Equation Of State', 'Force-Flux Relation'], typ ='TXM'), - bloc_EOS = BLOC(condition = 'RelationType == "Equation Of State"', - TypeOfEquationOfState = SIMP(statut='o', into =['variable density', 'compressible'], typ ='TXM'), - ), - bloc_NonEOSAndSimple=BLOC(condition = 'RelationType == "Force-Flux Relation" and ComplexFluid == False', - TypeOfForceFluxRelation = SIMP(statut='o', into =['Viscosity', 'Diffusivity', 'Thermal Conductivity'], intoXML=['Viscosity', 'Diffusivity', 'Thermal Conductivity','Shear-stress closure', 'Scalar flux'], typ ='TXM', ), - blocViscosity=BLOC(condition = 'TypeOfForceFluxRelation == "Viscosity" ', - ViscosityLaw=SIMP(typ='TXM', statut = 'o', into=['law1', 'law2']), - ), - blocDiffusivity=BLOC(condition = 'TypeOfForceFluxRelation == "Diffusivity"', - DiffusivityLaw=SIMP(typ='TXM', statut = 'o', into=['law1', 'law2']), - ), - blocConductivity=BLOC(condition = 'TypeOfForceFluxRelation == "Thermal Conductivity"', - ConductivityLaw=SIMP(typ='TXM', statut = 'o', into=['law1', 'law2']), - ), - ), -) - -#-----------------------------------------------------# -def prepareBoundaryCondition(): - return FACT(statut='o',max = '**', # max = nb de facette de bord - TypeOfBoundaryCondition = SIMP(statut='o', typ='TXM', into=['Inlet', 'Outlet', 'Symmetry','Periodicity', 'Wall', 'Free Surface'], ), - - blocDesigneMesh = BLOC(condition = "SystemType == 'Continuum system'", - ApplyOnGroups = SIMP(statut ='o', typ=meshGroup, max='**', homo='SansOrdreNiDoublon', - filtre=( '(set(MeshIdentifiers).intersection( set(self.getParentsWithId().getListeUserASSD("MeshId")) ) != set()) ', - ( ('MeshIdentifiers', 'self.etape.getChild("blocModeleNumeriqueContinuum").getChild("NumericalModel")'), ) - ), - ), - ), - blocDesigne_Shape = BLOC(condition = "SystemType == 'Classical particle system'", - #ApplyOnGroups = SIMP (statut ='o', typ=spatialRegion, max='**' - ApplyOnGroups = SIMP (statut ='o', typ=meshGroup, max='**', homo='SansOrdreNiDoublon', - filtre=( '(set(MeshIdentifiers).intersection( set(self.getParentsWithId().getListeUserASSD("MeshId")) ) != set()) ', - ( ('MeshIdentifiers', 'self.etape.getChild("blocModeleNumeriqueClassical").getChild("NumericalModel")'), ) - ), - ), - ), - - blocOnStateVariable = BLOC(condition = "TypeOfBoundaryCondition not in ['Wall',]", - ApplyOnStateVariable = SIMP (statut ='o', typ=stateVariable, max='**', homo='SansOrdreNiDoublon', - filtre=( 'etape in set(self.getEtapes()) ', (('etape', None),), ), #Il ne faut pas proposer les variables d'état des autres composants. - ), #PNPN A FAIRE : fenetreIhm='menuDeroulant' - ), - blocPeriodique = BLOC(condition = "TypeOfBoundaryCondition == 'Periodic'", - Direction = SIMP(statut='o', typ='TXM', into=['X','Y','Z', 'XYZ']), - ), # b_periodique - blocInlet = BLOC(condition = "TypeOfBoundaryCondition == 'Inlet'", - FormulationOfBoundary= SIMP(statut='o', typ='TXM', into=['Dirichlet','Neumann','Cauchy']), - blocDirichlet = BLOC(condition = 'FormulationOfBoundary == "Dirichlet"', - regles=(AU_MOINS_UN('InletProfile','IntegratedValue','IntegratedVectorValue',), - EXCLUS ('InletProfile','IntegratedValue','IntegratedVectorValue',), ), - Consigne = SIMP(statut ="o", homo="information", typ="TXM", defaut = "Choose between InletProfile,IntegratedValue,IntegratedVectorValue "), - InletProfile = SIMP (statut ='f', typ='TXM'), - IntegratedValue = SIMP (statut='f', typ='R'), - IntegratedVectorValue = FACT(statut='f', - U = SIMP (statut ='o', typ='R'), - V = SIMP (statut ='o', typ='R'), - W = SIMP (statut ='o', typ='R'), - ), - #PN : faire une regle - ), - blocNeumann = BLOC(condition = 'FormulationOfBoundary == "Neumann"', - Flux = SIMP (statut ='o', typ='TXM'), - ), - blocCauchy = BLOC(condition = 'FormulationOfBoundary == "Cauchy"', - ImposedFlux = SIMP (statut ='o', typ='TXM'), - _IntegratedValue = SIMP (statut='o', typ='R'), - ), - ), # b_inlet - blocWall = BLOC(condition = "TypeOfBoundaryCondition == 'Wall'", - VelocityAtBoundary = FACT(statut='o', - SlipVelocity = SIMP(statut='o', typ='R', defaut= 0.0), - WallMotion = FACT(statut='o', - U = SIMP (statut ='o', typ='R'), - V = SIMP (statut ='o', typ='R'), - W = SIMP (statut ='o', typ='R'), - ), - ), - LevelOfDescription = FACT(statut='o', - blocWall = BLOC(condition = "FlowNature == 'Turbulent'", ##JP+CH TODO : Choix des lois en fct du type du TurbulenceModelingType - WallFunction = SIMP(statut ='o', typ='TXM', - into=['No wall function','1-scale model (Log law)', - '2-scale model (Log law)','Scalable 2-scale model (Log law)', - ], defaut='No wall function', fenetreIhm='menuDeroulant'), - ), - ), - ), # b_Wall - - ) # Boundary_Conditions - - -# def prepareBoundaryCondition(): -# return FACT(statut='o',max = '**', # max = nb de facette de bord -# ApplyOnStateVariable = SIMP (statut ='o', typ=stateVariable, ), #PNPN A FAIRE : fenetreIhm='menuDeroulant' -# blocDesigneMesh = BLOC(condition = "SystemType == 'Continuum system'", -# ApplyOnGroups = SIMP (statut ='o', typ=meshGroup, max='**', homo='SansOrdreNiDoublon'), -# ), -# blocDesigne_Shape = BLOC(condition = "SystemType == 'Classical particle system'", -# ApplyOnCadGroups = SIMP (statut ='o', typ=spatialRegion, max='**'), -# ), -# TypeOfBoundaryCondition = SIMP(statut='o', typ='TXM', into=['Inlet', 'Outlet', 'Symmetry','Periodicity', 'Wall', 'Free Surface'], ), -# blocPeriodique = BLOC(condition = "TypeOfBoundaryCondition == 'Periodic'", -# Direction = SIMP(statut='o', typ='TXM', into=['X','Y','Z', 'XYZ']), -# ), # b_periodique -# blocInlet = BLOC(condition = "TypeOfBoundaryCondition == 'Inlet'", -# FormulationOfBoundary= SIMP(statut='o', typ='TXM', into=['Dirichlet','Neumann','Cauchy']), -# blocDirichlet = BLOC(condition = 'FormulationOfBoundary == "Dirichlet"', -# regles=(AU_MOINS_UN('InletProfile','IntegratedValue','IntegratedVectorValue',), -# EXCLUS ('InletProfile','IntegratedValue','IntegratedVectorValue',), ), -# #Consigne = SIMP(statut ="o", homo="information", typ="TXM", defaut = "Choose between InletProfile,IntegratedValue,IntegratedVectorValue "), -# InletProfile = SIMP (statut ='f', typ='TXM'), -# IntegratedValue = SIMP (statut='f', typ='R'), -# IntegratedVectorValue = FACT(statut='f', -# x = SIMP (statut ='o', typ='R'), -# y = SIMP (statut ='o', typ='R'), -# z = SIMP (statut ='o', typ='R'), -# ), -# #PN : faire une regle -# ), -# blocNeumann = BLOC(condition = 'FormulationOfBoundary == "Neumann"', -# Flux = SIMP (statut ='o', typ='TXM'), -# ), -# blocCauchy = BLOC(condition = 'FormulationOfBoundary == "Cauchy"', -# ImposedFlux = SIMP (statut ='o', typ='TXM'), -# IntegratedValue = SIMP (statut='o', typ='R'), -# ), -# ), # b_inlet -# ) # Boundary_Conditions - - - - -JdC = JDC_CATA ( - #PN : TODO : regles = (AU_PLUS_UN('DataTransfer_Aspects',),), - code = 'Vimmp', - # faire un validateur qui verifie que si on active reactions chimiques il faut que les masses molaires soient rentrees -) - -Component = OPER(nom='Component', sd_prod=composant, - SystemType = SIMP(typ='TXM', into=['Quantum system', 'Classical particle system', 'Continuum system'], statut='o',position='global'), - PhysicalDescription = FACT(statut = 'o', - blocFluideMacro = prepareBlocFluideMacro(), - blocCPS = prepareBlocCPS(), - ), - blocModeleNumeriqueQuantum = prepareBlocSystemType('Quantum system'), - blocModeleNumeriqueClassical = prepareBlocSystemType('Classical particle system'), - blocModeleNumeriqueContinuum = prepareBlocSystemType('Continuum system'), - BoundaryConditions = FACT(statut = 'o', - BoundaryCondition = prepareBoundaryCondition(), - ) -) - -Species = PROC(nom='Species', - Specie = FACT(statut='o', max ="**", - Name = SIMP(statut='o', typ=(especeChimique,'createObject') ), - MolarMass = SIMP(statut='f', typ='R',), - ) -) - -def monBlocInteractionTypeChamp (): - return BLOC (condition = '1 == 1' , # a distinguer selon les cas - fieldNameInOrigine = SIMP(typ='TXM', statut='o'), - fieldNameInDestination = SIMP(typ='TXM', statut='o'), - ) - -def TousSelonLeTypeDeFormatDisponible(condition, prefixName=''): - TransfertType = SIMP(typ='TXM', statut='o', into =['File', 'Memory', 'CorbaObject']) - maListe = list(dictCodeFormat.keys()) - dicoArgs={} - #index=0 - #for Solv1 in maListe[index:]: - # for Solv2 in maListe[index:]: - # #print (Solv1,Solv2, calculCommun(Solv1, Solv2,dictCodeFormat)) - # print ('PNPN attention changement de dictCodeFormat tant que getEficasAttribut n est pas correct') - # conditionSolv = 'TransfertType == "File" and getEficasAttribut(origine,"Solver")==Solv1 and getEficasAttribut(destination,"Solver")==Solv2' , - # conditionSolv = 'TransfertType == "File"' - # monBlocFichier=creeBlocPourLesFichiers (conditionSolv, 'FileName', calculCommun(Solv1, Solv2,dictCodeFormat)) - # dicoArgs['monBlocFichier'+str(index)]=monBlocFichier - # index=index+1 - mesFormats=set() - for solv1 in dictCodeFormat.keys() : - for f in dictCodeFormat[solv1] : mesFormats.add(f) - conditionSolv='TransfertType == "File"' - BlocFichier=creeBlocPourLesFichiers (conditionSolv, prefixName, mesFormats, None) - dicoArgs['BlocFichier']=BlocFichier - monBlocChamp = BLOC(condition = "TransfertType=='File'", FieldName=SIMP(typ='TXM', statut='o')) - dicoArgs['monBlocChamp']=monBlocChamp - return BLOC(condition = condition,TransfertType=TransfertType, **dicoArgs) - -def SelonLeTypeDeFormatDisponibleMapper(condition): - TransferType = SIMP(typ='TXM', statut='o', into =['File', 'Memory', 'CorbaObject']) - maListe = list(dictCodeFormat.keys()) - dicoArgs={} - index=0 - for Solv1 in maListe[index:]: - for Solv2 in maListe[index:]: - #print (Solv1,Solv2, calculCommun(Solv1, Solv2,dictCodeFormat)) - print ('PNPN attention changement de dictCodeFormat tant que getEficasAttribut n est pas correct') - conditionSolv = 'TransferType == "File" and getEficasAttribut(origine,"Solver")==Solv1 and getEficasAttribut(destination,"Solver")==Solv2' , - conditionSolv = 'TransferType == "File"' - monBlocFichier=creeBlocPourLesFichiers (conditionSolv, '', calculCommun(Solv1, Solv2,dictCodeFormat),None) - dicoArgs['monBlocFichier'+str(index)]=monBlocFichier - index=index+1 - BlocChamp = BLOC(condition = "TransferType=='File'", FieldName=SIMP(typ='TXM', statut='o')) - dicoArgs['BlocChamp'] = BlocChamp - return BLOC(condition = condition,TransferType=TransferType, **dicoArgs) - -Interpolator = OPER (nom= 'Interpolator',sd_prod=interpolator, - InterpolatorType=SIMP(statut='o', typ='TXM', into = list(dictInterpolatorFormat.keys())), - blocMedCoupling= BLOC(condition="InterpolatorType == 'Med Coupling'", - TargetMeshIdentifier = SIMP(statut ='o', typ = meshIdentifier,), - InterpolationType = SIMP(statut ='o', typ='TXM', into=['P0P0','P0P1','P1P1','P1P0'],), - ), -) -Converter = OPER (nom= 'Converter',sd_prod=converter) - -Interactions = PROC(nom='Interactions', - - IOAspects = FACT(statut='o', - - #WorkingDirectory = SIMP(statut='o', typ='Repertoire', defaut='/tmp'), - - FileTransfer = FACT(statut='f', max='**', - TransferId = SIMP(statut='o', typ=(fileId,'createObject'),), - monBlocFormat = creeBlocPourLesFichiers('1', '', listeFormatGenerique, FieldName=None ), - ), - MemoryTransfer = FACT(statut='f', max='**', - TransferId = SIMP(statut='o', typ=(memoryId,'createObject'),), - ), - CorbaTransfer = FACT(statut='f', max='**', - TransferId = SIMP(statut='o', typ=(corbaId,'createObject'),), - ), - ), - - - Interaction = FACT(max = '**', - InteractionName = SIMP(statut='o', typ=(interaction,'createObject'),), - From = SIMP(typ=modeleNumDuCompo, statut='o'), - To = SIMP(typ=modeleNumDuCompo, statut='o'), - # ApplyOnStateVariable = SIMP(statut ='o', typ=stateVariable), #PNPN A FAIRE : fenetreIhm='menuDeroulant' - InvolvedStateVariable = SIMP(statut ='o', typ=stateVariable), #PNPN A FAIRE : Seulement du composant d'origine From - # monBloc_FFFF = BLOC ( - # condition = 'getEficasAttribut(From,"ModelType") == "Fields" and getEficasAttribut(To,"ModelType") == "Fields"' , - # TermeLE = SIMP(typ='TXM', statut='o', into = dictTermeLE['Fields','Fields'],fenetreIhm='menuDeroulant'), - # ), - # monBloc_DPDP = BLOC ( - # condition = 'getEficasAttribut(From,"ModelType") == "Particles" and getEficasAttribut(To,"ModelType") == "Particles"' , - # TermeLE = SIMP(typ='TXM', statut='o', into = dictTermeLE['Particles','Particles'],fenetreIhm='menuDeroulant'), - # ), - # monBloc_FFDP = BLOC ( - # condition = 'getEficasAttribut(From,"ModelType") == "Fields" and getEficasAttribut(To,"ModelType") == "Particles"' , - # TermeLE = SIMP(typ='TXM', statut='o', into = dictTermeLE['Fields','Particles'],fenetreIhm='menuDeroulant'), - # ), - # monBloc_DPFF = BLOC ( - # condition = 'getEficasAttribut(From,"ModelType") == "Particles" and getEficasAttribut(To,"ModelType") == "Fields"' , - # TermeLE = SIMP(typ='TXM', statut='o', into = dictTermeLE['Particles','Fields'],fenetreIhm='menuDeroulant'), - # ), - InteractionConfiguration = FACT(statut='o', - - OutputId = SIMP(statut='o',typ=(transferId,),), - FieldName=SIMP(typ='TXM', statut='o'), - # ComponentProduction = FACT(statut='o', - # monBlocFormat = TousSelonLeTypeDeFormatDisponible("1", 'ComponentProduction' ), - # ), - # ), - #CouplingMode = SIMP(typ='TXM', statut='o', into =['Direct', 'DataProcessing', 'Conversion']), - CouplingMode = SIMP(typ='TXM', statut='o', into =['Direct', 'DataProcessing']), - #monBlocDirect = TousSelonLeTypeDeFormatDisponible("CouplingMode=='Direct'" ), - - monBlocDataProcessing = BLOC (condition = "CouplingMode=='DataProcessing'", - DataProcessingNode = FACT(min=1, max='**', statut ='o', - Tool = SIMP(typ=mapper, statut ='o'), - OutputId = SIMP(statut='o',typ=(transferId,),), - FieldName = SIMP(typ='TXM', statut='o'), - monBlocInterpolator = BLOC (condition = "(Tool != None) and (isinstance(Tool,interpolator))", - FieldNature = SIMP(typ='TXM', statut='o', into=['ExtensiveMaximum', 'IntensiveMaximum', - 'ExtensiveConservation', 'IntensiveConservation']), #PN: DICO pour le into avec key==Tool - ), - ), - ), #fin monBlocDataProcessing - ), #fin InteractionConfiguration - ), -) - - - -EnvironementAspects = PROC(nom ="EnvironementAspects", - WorkflowName = SIMP(statut='o', typ='TXM', defaut='MyStudyCasename'), #PN: -> path - WorkingDirectory = SIMP(statut='o', typ='Repertoire', defaut='/tmp'), -) - -#Le dictionnaire dict_condition est un dictionnaire utilisé par eficas -# pour les position='global_jdc' et position='inGetAttribut' -dict_condition={ -'ChoiceOfApproach': ('Interactions', 'Component'), -'Interactions' : ( 'Component'), -} - -TemporalAspects = PROC(nom ="TemporalAspects", - Simulated_Time_Laps = FACT(statut='o', max='**', - name = SIMP(statut='o', typ=(simulatedTime,'createObject'),), - initialTime = SIMP(statut='o', typ='R'), - finalTime = SIMP(statut='o', typ='R'), - timeDiscretization = SIMP(statut ='o', typ = 'TXM', into = ['Constant Time Step', 'Varying Time Step']), - bloc_Constant = BLOC (condition = 'timeDiscretization == "Constant Time Step"', - constantTimeStep = SIMP (statut ='o', typ = 'R'), - ), - bloc_Varying = BLOC (condition = 'timeDiscretization == "Varying Time Step"', - CFLNumberCriteria = SIMP (statut ='o', typ = 'R'), - FourierNumberCriteria = SIMP (statut ='o', typ = 'R'), - ), - ), -) - - - - -# -# ----------------------------------------- -SpatialAspects = PROC(nom='SpatialAspects', -# ----------------------------------------- - regles = (AU_MOINS_UN('SystemGeometry', 'SpatialDiscretization'),), - - SystemGeometry = FACT(statut='f', max='**', - SystemGeometryName = SIMP(statut='o', typ=(systemGeometry, 'createObject'),), - Shape = FACT(statut ='o', max='**', - ShapeIdentifier = SIMP(statut='o', typ=(cadShape,'createObject'),max='**',), - ShapeNature = SIMP(statut='o', typ='TXM', into=['Typical Geometry', 'CAD']), - - blocShape = BLOC(condition = 'Shape_Nature == "Typical Geometry"', - Box = SIMP(statut='o', typ='TXM', into=['Cube', 'Sphere','Cylinder'] ), - blocCube = BLOC(condition = 'Box == "Cube"', - #Taille_Box_Englobante = SIMP(statut='o', typ='R', max=3, min =3) - # derait etre un Tuple(3) mais a faire apres la projection - #Size_Of_Bounding_Box = SIMP(statut='o', typ=Tuple(3), validators=VerifTypeTuple(('R','R','R'),),) - Size_Of_Bounding_Box = SIMP(statut='o', typ='R', max=3, min=3, ), - ), # fin blocCube - blocBoule = BLOC(condition = 'Box == "Sphere"', - Center = SIMP(statut='o', typ='R', max=3, min =3), - ),# fin b_Boule - blocCylinder = BLOC(condition = 'Box == "Cylinder"', - Heigth = SIMP(statut="o", typ='R', val_min=0.0, ang='Nanotube length [m]'), - ),# fin blocCylinder - blocBouleOuCylinder = BLOC(condition = 'Box == "Sphere" or Box == "Cylinder"', - Radius = SIMP(statut='o', typ='R', val_min=0.0, ang='radius length [m]') , - ),# fin blocBouleOuCylinder - ), # fin blocShape - blocCAO = creeBlocPourLesFichiers("Shape_Nature == 'CAD'",'Domain', ['txt','I-deas', 'Gmsh', 'top',],None), - ), # fin Shape - ),# SystemGeometry - - SpatialDiscretization = FACT(statut='f', max="**", - MeshId = SIMP(statut='o', typ=(meshIdentifier,'createObject')), - MeshName = SIMP(statut='o', typ='TXM'), - blocMeshFile = creeBlocPourLesFichiers("1 == 1",'Mesh',listeFormatGenerique,None), - GroupIdentifier = SIMP(statut='o', typ=(meshGroup,'createObject'),max='**',), - ),# SpatialDiscretization - - BoundaryConstraints = FACT(statut = 'f', - Motion = FACT(statut='f', - MotionNature = SIMP(statut='o', typ='TXM', into=['Fixed boudary', 'Translational motion', 'Rotational motion', 'Scaling']), - - blocTranslationalMotion = BLOC(condition = 'MotionNature == "Translational motion"', - TranslationVelocity = SIMP(statut='o', typ='R'), - boundaries = SIMP(statut='o', typ=spatialRegion,max='**', homo='SansOrdreNiDoublon' ), - ), - blocRotationalMotion = BLOC(condition = 'MotionNature == "Rotational motion"', - RotationRate = SIMP(statut='o', typ='R'), - boundaries = SIMP(statut='o', typ=spatialRegion,max='**', homo='SansOrdreNiDoublon' ), - ), - blocFixed = BLOC(condition = 'MotionNature == "Fixed boudary"', - boundaries = SIMP(statut='o', typ=spatialRegion,max='**', homo='SansOrdreNiDoublon'), - ), - ), -#PN decrire page 28 - Mapping = FACT(statut='f', - ), - ), # Boundary_Constraints -) # fin Geometric_Domain - -TEXTE_NEW_JDC = "\ -Velocity=scalar()\ -" diff --git a/Vimmp/cata_CSAndCPS_v13_test_driver_1.comm b/Vimmp/cata_CSAndCPS_v13_test_driver_1.comm deleted file mode 100644 index 7b958b51..00000000 --- a/Vimmp/cata_CSAndCPS_v13_test_driver_1.comm +++ /dev/null @@ -1,181 +0,0 @@ -Pressure=dynamicVariable() -Temperature=scalar() -Time1=simulatedTime() -CS_Num1=modeleNumDuCompo() -P1=userDiscrete() -CS_Num2=modeleNumDuCompo() -Group_From_Mesh1=meshGroup() -Group_From_Mesh2=meshGroup() -Average_Velocity=dynamicVariable() -K=scalar() -Epsilon=scalar() -outlet=meshGroup() -symmetry=meshGroup() -wall=meshGroup() -half_pipe_15_20=meshIdentifier() -half_pipe_3=meshIdentifier() -inlet1=meshGroup() -inlet2=meshGroup() -fluidfile=fileId() -interpolatedfile=fileId() -CS_Num1__CS_Num2_Velocity=interaction() -CS_Num1__CS_Num2_Epsilon=interaction() -CS_Num1__CS_Num2_Pressure=interaction() -Time2=simulatedTime() - -EnvironementAspects(WorkflowName='Inria', - WorkingDirectory='/tmp',); - -SpatialAspects(SpatialDiscretization=(_F(MeshId=half_pipe_15_20, - MeshName='half_pipe', - MeshFileFormat='Med', - MeshFileName=\ - '/home/eric/VIMMP/vimmptraining/app/fluide+mapper+particule/datafiles/half_pipe_15_20.med', - GroupIdentifier=(inlet1,inlet2,outlet,symmetry,wall,Group_From_Mesh1,),), - _F(MeshId=half_pipe_3, - MeshName='half_pipe_generation_tetra', - MeshFileFormat='Med', - MeshFileName=\ - '/home/eric/VIMMP/vimmptraining/app/fluide+mapper+particule/datafiles/half_pipe_3.med', - GroupIdentifier=(inlet1,inlet2,outlet,symmetry,wall,Group_From_Mesh2,),),),); - -TemporalAspects(Simulated_Time_Laps=(_F(name=Time1, - initialTime=0.0, - finalTime=10.0, - timeDiscretization='Constant Time Step', - constantTimeStep=0.1,), - _F(name=Time2, - initialTime=10.0, - finalTime=15.0, - timeDiscretization='Constant Time Step', - constantTimeStep=0.01,),),); - -FluidComponent=Component(SystemType='Continuum system', - PhysicalDescription=_F(ComplexFluid=False, - FlowNature='Turbulent', - DensityInitialisation=_F(DensityValueType='Value', - Density=1.17862,), - ViscosityInitialisation=_F(ViscosityValueType='Value', - Viscosity=0.0183,), - TurbulenceForFlowDynamics=_F(TurbulenceModellingType='One-point moment', - RANSModel='Turbulent-Viscosity Model (TVM)', - TVMChoice='K-Epsilon',), - DynamicalVariables=_F(VariablesSimulation=True, - PressureDefinition=_F(Pressure=Pressure, - Initialisation=_F(InitialisationType=\ - 'ByValue', - Value=None,), - SourceTerm=False,), - VelocityDefinition=_F(AverageVelocity=Average_Velocity, - SourceTerm=False,), - KDefinition=_F(Name=K, - SourceTerm=False,), - EpsilonDefinition=_F(Name=Epsilon, - SourceTerm=False,),), - Thermal=_F(ThermalEffects='Non thermal', - ReferenceTemperature=293.15,), - Scalars=_F(withScalars=False,),), - NumericalModel=_F(Identifier=CS_Num1, - SimulatedTimeLapse=Time1, - ChoiceOfApproach='Field-based', - NumericalMethod='FV', - Solver='Code_Saturne', - MeshIdentifiers=(half_pipe_15_20,),), - BoundaryConditions=_F(BoundaryCondition=(_F(TypeOfBoundaryCondition='Inlet', - ApplyOnGroups=(inlet1,inlet2,), - ApplyOnStateVariable=(Average_Velocity,), - FormulationOfBoundary='Dirichlet', - Consigne=\ - 'Choose between InletProfile,IntegratedValue,IntegratedVectorValue ', - IntegratedVectorValue=_F(U=1.0, - V=0.0, - W=0.0,),), - _F(TypeOfBoundaryCondition='Inlet', - ApplyOnGroups=(inlet1,inlet2,), - ApplyOnStateVariable=(K,), - FormulationOfBoundary='Dirichlet', - Consigne=\ - 'Choose between InletProfile,IntegratedValue,IntegratedVectorValue ', - IntegratedValue=0.0,), - _F(TypeOfBoundaryCondition='Wall', - ApplyOnGroups=(wall,), - VelocityAtBoundary=_F(SlipVelocity=0.0, - WallMotion=_F(U=1.0, - V=0.0, - W=0.0,),), - LevelOfDescription=_F(WallFunction='2-scale model (Log law)',),),),),); - -PartComponent=Component(SystemType='Classical particle system', - PhysicalDescription=_F(Particle=_F(ParticleNature='Discrete Particle', - DiscreteParticleName=P1, - TypeOfDiscreteParticle='Solid', - TypeOfSolid='Primary Particle', - Properties=_F(Geometry='Sphere', - ParticleRadius=1e-05, - Weight=_F(Density=1000.0,), - Mechanical='Rigid',), - ListOfInteractions=_F(BondedInteractions=_F(TypeOfBondedInteraction=\ - 'NoOne',), - UnbondedInteractions=_F(TypeOfUnbondedInteraction=\ - 'No',), - ExternalFieldInteraction=_F( - TypeOfInteractionWithAnExternalField='NoOne', - FieldAppliesOnAllSpecies=True,),),),), - NumericalModel=_F(Identifier=CS_Num2, - SimulatedTimeLapse=Time2, - ChoiceOfApproach='N-Particle_Method', - NumericalMethod='CFD_Discrete_N-Particle_Method', - Solver='Code_Saturne', - MeshIdentifiers=(half_pipe_3,),), - BoundaryConditions=_F(BoundaryCondition=_F(TypeOfBoundaryCondition='Wall', - ApplyOnGroups=(wall,), - VelocityAtBoundary=_F(SlipVelocity=0.0, - WallMotion=_F(U=0.0, - V=0.0, - W=0.0,),), - LevelOfDescription=_F(),),),); - -MedCouplingComponent=Interpolator(InterpolatorType='Med Coupling', - TargetMeshIdentifier=half_pipe_3, - InterpolationType='P0P0',); - -Interactions(IOAspects=_F(FileTransfer=(_F(TransferId=fluidfile, - FileFormat='Med', - FileName='results_Fluid_domain.med',), - _F(TransferId=interpolatedfile, - FileFormat='Med', - FileName='results_Fluid_Interpolated_Velocity.med',),),), - Interaction=(_F(InteractionName=CS_Num1__CS_Num2_Velocity, - From=CS_Num1, - To=CS_Num2, - InvolvedStateVariable=Average_Velocity, - InteractionConfiguration=_F(OutputId=fluidfile, - FieldName='Velocity', - CouplingMode='DataProcessing', - DataProcessingNode=_F(Tool=MedCouplingComponent, - OutputId=interpolatedfile, - FieldName='Velocity', - FieldNature='IntensiveMaximum',),),), - _F(InteractionName=CS_Num1__CS_Num2_Epsilon, - From=CS_Num1, - To=CS_Num2, - InvolvedStateVariable=Epsilon, - InteractionConfiguration=_F(OutputId=fluidfile, - FieldName='epsilon', - CouplingMode='DataProcessing', - DataProcessingNode=_F(Tool=MedCouplingComponent, - OutputId=interpolatedfile, - FieldName='epsilon', - FieldNature='IntensiveMaximum',),),), - _F(InteractionName=CS_Num1__CS_Num2_Pressure, - From=CS_Num1, - To=CS_Num2, - InvolvedStateVariable=Pressure, - InteractionConfiguration=_F(OutputId=fluidfile, - FieldName='Pressure', - CouplingMode='DataProcessing', - DataProcessingNode=_F(Tool=MedCouplingComponent, - OutputId=interpolatedfile, - FieldName='Pressure', - FieldNature='IntensiveMaximum',),),),),); -#CHECKSUM:7b34029d8ff4b800a553c7f36c58a030 -:FIN CHECKSUM \ No newline at end of file diff --git a/Vimmp/cata_CSAndCPS_v14.py b/Vimmp/cata_CSAndCPS_v14.py deleted file mode 100644 index 215c7344..00000000 --- a/Vimmp/cata_CSAndCPS_v14.py +++ /dev/null @@ -1,1380 +0,0 @@ -from Accas import * - -class composant(ASSD):pass -class mapper(ASSD):pass -class converter(mapper):pass -class interpolator(mapper):pass -class modeleNumDuCompo(UserASSD):pass -class especeChimique(UserASSD):pass -class userParticle(UserASSD) :pass -class userAtom(userParticle) :pass -class userMolecule(userParticle) :pass -class userDiscrete(userParticle) :pass -class userDPD(userParticle) :pass - -class spatialRegion(UserASSD):pass -class cadShape(spatialRegion):pass -#class meshGroup(spatialRegion,UserASSDMultiple):pass -class meshGroup(UserASSDMultiple):pass -class meshIdentifier(spatialRegion):pass -class systemGeometry(UserASSD):pass -class simulatedTime(UserASSD):pass -class constitutiveRelation(UserASSD):pass -class interaction(UserASSD):pass -class transferId(UserASSD):pass -class fileId(transferId):pass -class memoryId(transferId):pass -class corbaId(transferId):pass - -class stateVariable(UserASSDMultiple) : pass -class scalar(stateVariable):pass -class dynamicVariable(stateVariable):pass -class dynamicVariableParticle(stateVariable):pass - -# PN a faire --> ajouter un MC modeleNumerique (apres avoir renomme le modeleNumerique actuel en classe de modele numerique) -# et le dictionnaire d apres -# dictTypModNumModNum = { -# ('Continuum system','Particles') : ('SPH','Lagrangian one-fluid-particle pdf'), -# ('Continuum system','Fields') : ('FV','FEM', 'Spectral method'), -# ('Classical particle system','Particles') : ('MD', 'DPD', 'SDPD','SPH','CFD_Discrete_Particles'), -# ('Classical particle system','Fields') : ('LBM',), -# ('Quantum system','Particles') : ('Particle method',), -# ('Quantum system','Fields') : ('Wave',), -# } - -dictTypModNumModNum = { - ('Continuum system','N-Particle_Method') : ('SPH' , 'Lagrangian one-fluid-particle pdf'), #TODO 'N-Particle_Method --> N-Particle_Method - ('Continuum system','Field-based') : ('FV' , 'FEM', 'Spectral method'), - ('Classical particle system','N-Particle_Method') : ('MD' , 'DPD', 'SDPD','SPH','CFD_Discrete_N-Particle_Method'), - ('Classical particle system','Field-based') : ('LBM' ,), - ('Quantum system','N-Particle_Method') : ('Particle method',), - ('Quantum system','Field-based') : ('Wave',), -} - -dictCodeModeleNumerique = { - 'Code_Saturne' : ('Lagrangian one-fluid-particle pdf', 'FV', 'CFD_Discrete_N-Particle_Method',), - 'Fluent' : ('FV',), - 'Culgi Package': (), - 'DEM_SD' : ('Lagrangian one-fluid-particle pdf', 'FV', 'CFD_Discrete_N-Particle_Method',), - 'DFTB+' : ('density functional tight binding method',), - 'DL_MESO_DPD' : ('Lagrangian one-fluid-particle pdf', 'FV', 'CFD_Discrete_N-Particle_Method',), - 'DL_MESO_LBE' : ('Lagrangian one-fluid-particle pdf', 'FV', 'CFD_Discrete_N-Particle_Method',), - 'DL_POLY_4' : ('Lagrangian one-fluid-particle pdf', 'FV', 'CFD_Discrete_N-Particle_Method',), - 'GROMACS' : ('Lagrangian one-fluid-particle pdf', 'FV', 'CFD_Discrete_N-Particle_Method',), - 'GROMACS_LS' : ('Lagrangian one-fluid-particle pdf', 'FV', 'CFD_Discrete_N-Particle_Method',), - 'LAMMPS' : ('Lagrangian one-fluid-particle pdf', 'FV', 'CFD_Discrete_N-Particle_Method',), - 'NWChem' : ('Lagrangian one-fluid-particle pdf', 'FV', 'CFD_Discrete_N-Particle_Method',), - 'OpenFOAM' : ('Lagrangian one-fluid-particle pdf', 'FV', 'CFD_Discrete_N-Particle_Method',), - 'Quantum EXPRESSO' : ('Particle method', 'Wave',), - 'RHEO_AGGRATE' : ('Particle method', 'Wave',), - 'RHEO_DROP' : ('Particle method', 'Wave',), - 'STAR_CCM+' : ('FV', 'Particles',), - 'Code Nill' : ('Spectral method', ), -} -# Le Code Nill est ajouté en dur au Solver - -dictCodeFormat = { - 'Code_Saturne' : ('Med', 'cgns', 'msh', 'des', 'unv', ), - 'Culgi Package': ('cof',), - 'DEM_SD' : ('geo', 'ascii'), - 'DFTB+' : ('geo', 'ascii'), - 'Fluent' : ('FluentFormat', ), - 'OpenFOAM' : ('OpenFoamFormat', 'Med', ), -} - -dictInterpolatorFormat = { - 'Med Coupling' : ('Med',), -} -dictConvertorFormat = { - 'Gmsh' : ('Med', 'OpenFoamFormat'), -} - -dictTermeLE = { - ('Fields','Particles') : ('Fluid_Velocity_Field', - 'Fluid_Temperature_Field', - 'Fluid_Species_Mass_Fraction_Fluid',), - ('Particles','Fields') : ('Fluid_Particle_Momentum_Exchange_Field', - 'Fluid_Particle_Thermal_Exchange_Field', - 'Lagrangian one-particle pdfFluid_Particle_Mass_Source_Field', - 'Particle_Volumetric_Concentration_Modified_Fluid_Viscosity', - 'Particle_Extra_Stress_Tensor'), - ('Particles','Particles') : ('Pas encore fait'), - ('Fields','Fields') : ('Pas encore fait'), -} - -dictCodeConvertisseur = { - ('Saturne', 'OpenFOAM') : ('gmsh', 'Saturne2CDM and CDM2OpenFoam'), - ('Saturne', 'Fluent') : ('Saturne2CDM and CDM2Fluent'), - ('Fluent', 'OpenFOAM') : ('Fluent2CDM and CDM2OpenFoam'), -} - -listeFormatGenerique =['Med', 'Cgns', 'Gmsh', ] - -#---------------------------------------- -def prepareBlocSystemType(systemType) : -#---------------------------------------- - condition = "SystemType == '" + systemType + "'" - Identifier = SIMP(statut='o', typ=(modeleNumDuCompo,'createObject'),) - SimulatedTimeLapse = SIMP(statut ='o', typ = simulatedTime) - # ModelType = SIMP(statut='o', typ='TXM', into = ('Particles', 'Fields'), position='inGetAttribut') - ChoiceOfApproach = SIMP(statut='o', typ='TXM', into=['Field-based', 'N-Particle_Method'], position='inGetAttribut') - - dicoArgs={} - - for typeMod in ('Field-based', 'N-Particle_Method'): - conditionType = "ChoiceOfApproach == '" + typeMod + "'" - NumericalMethod = SIMP(statut='o',typ='TXM', into=dictTypModNumModNum[systemType, typeMod], - position='global', intoXML=allValueInDict(dictTypModNumModNum)) - dicoBloc = {} - for modeleNumerique in list(dictTypModNumModNum[systemType,typeMod]): - conditionNum = "NumericalMethod == '" + modeleNumerique + "'" - setCode = set() - for code in dictCodeModeleNumerique.keys(): - if modeleNumerique in dictCodeModeleNumerique[code]: setCode.add(code) - # print('------------- conditionType -------->',conditionType) - if setCode ==set(): setCode.add('Code Nill') - Solver = SIMP(statut='o', typ='TXM', into=list(setCode), intoXML=list(dictCodeModeleNumerique.keys()) ) - monNomBloc = 'bloc_ModelName_' + modeleNumerique.replace(' ','_') #les noms de blocs ne peuvent pas avoir de blanc ! - if setCode !=set(): dicoBloc[monNomBloc]=BLOC(condition=conditionNum, nomXML='b_ModelName',Solver=Solver) - dicoArgs['blocModelType'+typeMod] = BLOC(condition=conditionType, NumericalMethod=NumericalMethod, **dicoBloc) - - blocMeshRef = BLOC(condition = '( (ChoiceOfApproach == "Field-based") and (NumericalMethod == "FV") ) or ' - '( (ChoiceOfApproach == "N-Particle_Method") and (NumericalMethod == "CFD_Discrete_N-Particle_Method") )', - MeshIdentifiers = SIMP(statut ='o', max ='**', typ = meshIdentifier, - metAJour=(('ApplyOnGroups', - 'self.etape.getChild("BoundaryConditions").getChild("BoundaryCondition")'),), - ),) - dicoArgs['blocMeshRef'] = blocMeshRef - NumericalModel = FACT(statut='o', max= '**', Identifier=Identifier, ChoiceOfApproach=ChoiceOfApproach, - SimulatedTimeLapse=SimulatedTimeLapse, **dicoArgs) - return BLOC(condition=condition, nomXML='b_systemType', NumericalModel=NumericalModel) - - -#----------------------------------- -def calculCommun(key1, key2, dico): -#----------------------------------- -# retourne la liste des valeurs communes a dico[key1] et dico[key2] - monSet=set() - if not key1 in dico: return () - if not key2 in dico: return () - for val in dico[key1]: - if val in dico[key2]: - monSet.add(val) - if monSet == set() : monSet.add ('No common format') - return list(monSet) - -#------------------------- -def allValueInDict(dico): -#------------------------- -# retourne la liste de toutes les valeurs possibles dans dico - monSet=set() - for clef in dico : - for val in dico[clef] : monSet.add(val) - return monSet - -#-------------------------------------------------------------------------------------------------- -def creeBlocPourLesFichiers(laCondition, Prefixe='Empty', ListeFormats=[], FieldName=None): -#--------------------------------------------------------------------------------------------------- -# il faut reflechir pour parametrer NomDuFichier -# et le type (existing... du fichier) -# et utiliser le creeBlocPourLesFichiers - SIMPFormatFichier = SIMP(statut='o', typ = 'TXM', into = tuple(ListeFormats) + ('All',), defaut='All' ) - dicoDesBlocs = {} - NomDuFichier = Prefixe+'FileName' - formatName = Prefixe+'FileFormat' - dicoDesBlocs[formatName] = SIMPFormatFichier - ListeFormatsboucle = tuple(ListeFormats) + ('All',) - for formatFich in ListeFormatsboucle : - dicoArgs={} - nomBloc = 'blocFormatFichier' + str(formatFich) - typeDesFichiers = ('Fichier', formatFich + " Files (*." + formatFich + ");;All Files (*)",'Sauvegarde') - blocCondition = formatName + " == '" + formatFich + "'" - dicoArgs[NomDuFichier] = SIMP(statut='o', typ = typeDesFichiers, nomXML=NomDuFichier ) - dicoDesBlocs[nomBloc] = BLOC(condition = blocCondition, **dicoArgs) - if FieldName: - SIMPFieldName = SIMP(statut='o', typ = 'TXM',) - dicoDesBlocs[FieldName] = SIMPFieldName - return BLOC(condition=laCondition, **dicoDesBlocs) - -#--------------------------------------------------------------------- -def prepareBlocParticleDynVar(condition, nomDuFact, nomDelaContante) : -#--------------------------------------------------------------------- - dicoDesBlocs = {} - dicoDuFact = {} - dicoDuFact[nomDelaContante] = SIMP(typ=(dynamicVariableParticle,'createObject'), statut='o', defaut = nomDelaContante, homo='constant') - monFact = FACT ( statut ='o', - **dicoDuFact, - BlocSteady = BLOC(condition = 'Steady == True', - BlocFluidInSame = creeBlocPourLesFichiers('InSameFile == False', 'Position', ('Med', 'cgns' ), None), - BlocGivenPosition = BLOC(condition = 'OriginOfDynamicalVariables == "Given"', - PositionFieldName = SIMP(typ='TXM',statut='o'), - ), - BlocInteractionPosition = BLOC(condition = 'OriginOfDynamicalVariables == "Interaction"', - InteractionName = SIMP(typ=interaction,statut='o'), - Consigne = SIMP(statut="o", homo="information", typ="TXM", defaut='Create and choose suitable interaction'), - ), - ), - BlocSimulatedPosition = prepareBlocInitialisation(condition = 'VariablesSimulation == True'), - ) - dicoDesBlocs[nomDuFact] = monFact - return BLOC(condition=condition,**dicoDesBlocs) - -#--------------------------------------------------------------------- -def prepareBlocAmbiantMediaField(condition, nomDuFact, nomDelaContante) : -#--------------------------------------------------------------------- - dicoDesBlocs = {} - dicoDuFact = {} - dicoDuFact[nomDelaContante] = SIMP(typ='TXM', statut='o', defaut = nomDelaContante, homo='constant') - monFact = FACT ( statut ='o', - **dicoDuFact, - Steady = SIMP(typ=bool, statut ='o', defaut = True,), - BlocSteady = BLOC(condition = 'Steady == True', - FieldOrigin = SIMP(statut='o', into =['File', 'Interaction'], typ ='TXM',), - BlocFile = creeBlocPourLesFichiers('FieldOrigin == "File"', 'Position', ('Med', 'cgns' ), ''), - BlocInteractio = BLOC(condition = 'FieldOrigin == "Interaction"', - InteractionName = SIMP(typ=interaction,statut='o'), - Consigne = SIMP(statut="o", homo="information", typ="TXM", defaut='Create and choose suitable interaction'), - ), - ), - BlocConsigne = BLOC(condition = 'Steady == False', - Consigne = SIMP(statut="o", homo="information", typ="TXM", defaut='Not implemented yet. Will ask for a range of calculation steps.'), - ), #BlocNotSteady - ) - dicoDesBlocs[nomDuFact] = monFact - return BLOC(condition=condition,**dicoDesBlocs) - -#--------------------------------------------- - -def prepareChamp(nomDelaContante, labels ,nbReels ) : -#--------------------------------------------- -# PN : a reecrire -# ajouter les extensions pour le fichier et les blocs associes -# certains champs ne seront jamais uniformes -# probablement a refaire -#PNPN : Passer le nom du champ pour le label du vecteur -# A revoir - - dicoBloc = {} - dicoBloc[nomDelaContante] = SIMP(statut='o', typ='R') - return FACT(statut='o', - InputMode = SIMP(statut='o', typ='TXM', into=('uniform value','values directly assigned','values read in file','analytical function',)), - blocUniforme = BLOC(condition = "InputMode == 'uniform value'", **dicoBloc), - blocVsaisies = BLOC(condition = "InputMode == 'values directly assigned'", - Field = SIMP(typ='R', statut='o', max ='**'), - #Vecteur = SIMP(fenetreIhm='Tableau', homo = labels, - # statut='o', min=2, max='**', - # typ=Tuple(nbReels), - # validators=VerifTypeTuple(("'R',"*nbReels),),) # end particle - ), #b_vsaisie - blocVdsfich = BLOC(condition = "InputMode == 'values read in file'", - Format = SIMP(statut='o', typ='TXM', into=['txt','Med',], position='global' ), - td_txt = BLOC(condition = 'Format == "txt"', - File = SIMP(statut='o', typ=('Fichier','Text Files(*.txt);All Files (*)'),), - ), # fin vtd_txt - td_med_1 = BLOC(condition = 'Format == "Med"', - File = SIMP(statut='o', typ=('Fichier','Med Files(*.med);All Files (*)'),), - ), - td_med_2 = BLOC(condition = 'Format == "Med"', - FieldName = SIMP(statut='o', typ='TXM',), - ), - ), - blocFunct = BLOC(condition = "InputMode == 'analytical function'", - Function = SIMP(statut='o', typ='TXM',), - ), - #b_vserc = BLOC(condition = "InputMode == 'call to a service'", - # Service = SIMP(statut='o', typ='TXM',), - #), - ) - - -#------------------------------ -def prepareTermeSource(condition): -#------------------------------ - return BLOC (condition=condition, - OriginOfSourceTerm = SIMP(statut='o', typ='TXM',into=['Interaction', 'Chemical Reaction', 'Other Scalar']), - blocOriginOfSourceTermInteraction = BLOC(condition = 'OriginOfSourceTerm == "Interaction"', - SourceTermInteraction = SIMP(typ=interaction,statut='o'), - Consigne = SIMP(statut="o", homo="information", typ="TXM", defaut='Create and choose suitable interaction'), - ), - blocOriginOfSourceTermOtherScalar = BLOC(condition = 'OriginOfSourceTerm == "Other Scalar"', - ApplyOnScalar = SIMP (statut ='o', typ=scalar, ), #PNPN A FAIRE : fenetreIhm='menuDeroulant' - ), - ) - -#------------------------------ -def prepareTermeSourceDynVar(condition): -#------------------------------ - return BLOC (condition=condition, - OriginOfSourceTerm = SIMP(statut='o', typ='TXM',into=['Interaction', 'Other Scalar']), - ) - -#------------------------------------------------------ -def prepareFactTurbulence(statut, ajout=None , position=None, positionChoice=None): -#------------------------------------------------------ - listInto = ['Fully resolved (DNS)', 'Spatial filtering (LES)', 'One-point moment', 'One-point PDF'] - if ajout != None : listInto.append(ajout) - return FACT(statut=statut, - TurbulenceModellingType = SIMP(typ='TXM', statut='o', into =listInto, position=position ), - -# --------------- One-point moment ------------------ - blocOnePoint = BLOC(condition= "TurbulenceModellingType == 'One-point moment'", - RANSModel = SIMP(statut="o", typ="TXM", position='global', - into=['Turbulent-Viscosity Model (TVM)', 'Reynolds Stress Model (RSM)']), - blocTVM = BLOC(condition= "RANSModel == 'Turbulent-Viscosity Model (TVM)'", - TVMChoice = SIMP(typ='TXM', statut='o', into=['K-Epsilon', 'K-Omega'] , position=positionChoice), ##PN PN : parametre vs reCalculeEtape - ), # fin blocTVM - blocRSM = BLOC(condition = "RANSModel == 'Reynolds Stress Model (RSM)'", - RSMChoice = SIMP(typ='TXM', statut='o', into=['Rotta', 'LRR-IP','LRR-QI','SSG'], position=positionChoice), - ), # fin blocRSM - ), # fin bloc_one_point - -# --------------- Spatial filtering (LES) ------------------ - blocOneSpatial = BLOC(condition = "TurbulenceModellingType == 'Spatial filtering (LES)'", - ChoiceOfDescription = SIMP(typ='TXM', statut='o', into=['One-point filtered variables', 'Filtered Density Function (FDF)']), - blocOnePoint = BLOC(condition = "ChoiceOfDescription == 'One-point filtered variables'", - SubgridScaleModel = SIMP(typ='TXM', statut='o', into=['No SGS', 'Smagorinsky','Dynamical model', 'SGS Transport Equations']), - ),# fin bloc_OnePoint - blocFDF = BLOC(condition = "ChoiceOfDescription == 'Filtered Density Function (FDF)'", - SubgridScaleModel = SIMP(typ='TXM', statut='o', into=['SLM model for SGS', 'Viscous SLM model for SGS']), - ),# fin bloc_FDF - ), # fin bloc_one_spatial - -# --------------- One-point PDF ------------------ - blocOnePointPdf = BLOC(condition = "TurbulenceModellingType == 'One-point PDF'", - ChoiceOfDescription = SIMP(typ='TXM', statut='o', into=['Velocity PDF', 'Velocity frequency PDF']), - blocVPdf = BLOC(condition = "ChoiceOfDescription == 'Velocity PDF'", - StochasticModel = SIMP(typ='TXM', statut='o', into=['SLM','GLM'], defaut='SLM'), - ), # fin blocVPdf - blocVFPdf = BLOC(condition = "ChoiceOfDescription == 'Velocity frequency PDF'", - StochasticModel = SIMP(typ='TXM', statut='o', into=['Log-normal model','Gamma model','User-defined form'], defaut='SLM'), - ), # fin blocVFPdf - ), # fin bloc_one_point_pdf - -# --------------- Fully resolved (DNS) ------------------ - # blocNoModel = BLOC(condition = "TurbulenceModellingType == 'Fully resolved (DNS)'", - # ChoiceOfApproach = SIMP(statut='o', typ='TXM', into=['Field-based (DNS)', 'N-Particle_Method']), - # blocField = BLOC(condition = "ChoiceOfApproach == 'Field-based (DNS)'", - # NumericalMethod = SIMP(statut='o', typ='TXM', into=['FV', 'Spectral Method'], - # intoXML=['FV', 'Spectral Method','SPH', 'Vortex Method']), - # ),# fin bloc_Field - # blocNParticle = BLOC(condition = "ChoiceOfApproach == 'N-Particle_Method'", - # NumericalMethod = SIMP(statut='o', typ='TXM', into=['SPH', 'Vortex Method'], - # intoXML=['FV', 'Spectral Method','SPH', 'Vortex Method']), - # ),# fin bloc_N_particle - # ), # fin bloc_no_model - ) # fin du return de la fonction factTurbulence - - - -#------------------------------------------------------ -def prepareFactTurbulenceScalaire(statut, ajout=None , position=None): -#------------------------------------------------------ - listInto = ['Fully resolved (DNS)', 'Spatial filtering (LES)', 'One-point moment', 'One-point PDF'] - if ajout != None : listInto.append(ajout) - return FACT(statut=statut, - TurbulenceModellingType = SIMP(typ='TXM', statut='o', into =listInto, position=position ), - -# --------------- One-point moment ------------------ - blocOnePoint = BLOC(condition= "TurbulenceModellingType == 'One-point moment'", - RANSModel = SIMP(statut="o", typ="TXM", - into=['Algebraic flux models','Turbulent diffusivity models', 'Scalar-flux transport equations']), - # blocAlgebraic = BLOC(condition= "RANSModel == 'Algebraic flux models'", - # blocConsigne = BLOC(condition= "RANSModel == 'Algebraic flux models'", - # Consigne = SIMP(statut="o", homo="information", typ="TXM", defaut='Not implemented yet'), - # ), # fin blocAlgebraic - blocTDM = BLOC(condition = "RANSModel == 'Turbulent diffusivity models'", - TDMChoice = SIMP(typ='TXM', statut='o', into=['SGDH', 'GGDH',]), - ), # fin blocTDM - blocSFTE = BLOC(condition = "RANSModel == 'Scalar-flux transport equations'", - SFTEChoice = SIMP(typ='TXM', statut='o', into=['Pressure-scrambling model', 'EB-DFM',]), - ), # fin blocSFTE - ), # fin bloc_one_point - -# --------------- Spatial filtering (LES) ------------------ - blocOneSpatial = BLOC(condition = "TurbulenceModellingType == 'Spatial filtering (LES)'", - ChoiceOfDescription = SIMP(typ='TXM', statut='o', into=['One-point filtered variables', 'Filtered Density Function (FDF)']), - blocOnePoint = BLOC(condition = "ChoiceOfDescription == 'One-point filtered variables'", - SubgridScaleModel = SIMP(typ='TXM', statut='o', into=['No SGS model', 'SGS diffusivity', 'Transport eqs. for SGS scalar fluxes']), - ),# fin bloc_OnePoint - blocFDF = BLOC(condition = "ChoiceOfDescription == 'Filtered Density Function (FDF)'", - SubgridScaleModel = SIMP(typ='TXM', statut='o', into=['Composition FDF', 'Scalar-velocity FDF', 'Micro-mixing model']), - ),# fin bloc_FDF - ), # fin bloc_one_spatial - -# --------------- One-point PDF ------------------ - blocOnePointPdf = BLOC(condition = "TurbulenceModellingType == 'One-point PDF'", - ChoiceOfDescription = SIMP(typ='TXM', statut='o', into=['Composition PDF','Velocity PDF', 'Micro-mixing models']), - # blocCPdf = BLOC(condition = "(ChoiceOfDescription == 'Composition PDF') or (ChoiceOfDescription == 'Velocity PDF')", - # blocConsigne = BLOC(condition = "(ChoiceOfDescription == 'Composition PDF') or (ChoiceOfDescription == 'Velocity PDF')", - # Consigne = SIMP(statut="o", homo="information", typ="TXM", defaut='Not implemented yet.'), - # ), # fin blocCPdf - # blocVPdf = BLOC(condition = "ChoiceOfDescription == 'Velocity PDF'", - # ), # fin blocVPdf - blocMMMPdf = BLOC(condition = "ChoiceOfDescription == 'Micro-mixing models'", - ChoiceOfModel = SIMP(typ='TXM', statut='o', into=['IEM/CIEM','Curl model','Mapping','EMST'],), - ), # fin blocMMMdf - ), # fin bloc_one_point_pdf - -# --------------- Fully resolved (DNS) ------------------ - # blocNoModel = BLOC(condition = "TurbulenceModellingType == 'Fully resolved (DNS)'", - # ChoiceOfApproach = SIMP(statut='o', typ='TXM', into=['Field-based (DNS)', 'N-Particle_Method']), - # blocField = BLOC(condition = "ChoiceOfApproach == 'Field-based (DNS)'", - # NumericalMethod = SIMP(statut='o', typ='TXM', into=['FV', 'Spectral Method'], - # intoXML=['FV', 'Spectral Method','SPH', 'Vortex Method']), - # ),# fin bloc_Field - # blocNParticle = BLOC(condition = "ChoiceOfApproach == 'N-Particle_Method'", - # NumericalMethod = SIMP(statut='o', typ='TXM', into=['SPH', 'Vortex Method'], - # intoXML=['FV', 'Spectral Method','SPH', 'Vortex Method']), - # ),# fin bloc_N_particle - # ), # fin bloc_no_model - ) # fin du return de la fonction factTurbulence - - -#-------------------- -def prepareBlocCPS(): -#-------------------- - return BLOC(condition = 'SystemType == "Classical particle system"', - - AmbiantMediaInteraction = FACT(statut='o', - # into=['No One', 'Momentum Exchange','Mass Exchange', 'PNPN'], fenetreIhm='menuDeroulant', defaut = 'No One'), - MomentumExchange = FACT(statut='o', - withMomentumExchange = SIMP(statut='o', typ=bool, defaut=False), -# blocGravite = BLOC(condition = 'TypeOfInteractionWithAnExternalField=="Gravitational Field"', -# G = SIMP(statut='o', typ='R', defaut=9.81), -# ), -# blocExternalFieldInteraction = BLOC(condition = 'TypeOfInteractionWithAnExternalField != "No"', -# FieldAppliesOnAllSpecies = SIMP(statut='o', typ=bool, defaut=True), -# blocPorteEspece = BLOC(condition = 'FieldAppliesOnAllSpecies == False ', -# SpeciesList = SIMP(statut='o', typ='TXM', max= '**', homo='SansOrdreNiDoublon'), # faire un typ = "espece" -# ), -# ), # fin b_External_Field_Interaction -# ), # fin blocMomentum - blocMomentum = BLOC(condition = 'withMomentumExchange == True', - MomentumFieldType = SIMP(statut='o', typ='TXM', into=['Gravitational','Electric','Magnetic', 'Hydrodynamic'], max='**', homo='SansOrdreNiDoublon',position='global'), - blocElectric = prepareBlocAmbiantMediaField('"Electric" in MomentumFieldType', 'ElectricDefinition', 'E') , - blocMagnetic = prepareBlocAmbiantMediaField('"Magnetic" in MomentumFieldType', 'MagneticDefinition', 'B') , - - ), # fin blocMomentum - ), # fin MomentumExchange - MassExchange = FACT(statut='o', - withMassExchange = SIMP(statut='o', typ=bool, defaut=False), - blocMassExchange = BLOC(condition = 'withMassExchange == True', - MassExchangeFieldType = SIMP(statut='o', typ='TXM', into=['Evaporation','Condensation','Precipitation'], max='**', homo='SansOrdreNiDoublon',position='reCalculeEtape'), - ), # fin blocMassExchange - ), # fin MassExchange - ), # fin AmbiantMediaInteraction - - DynamicalVariables = FACT(statut ='o', - VariablesSimulation = SIMP(statut='o', typ =bool, position='global'), - BlocVariablesSimulation = BLOC(condition = 'VariablesSimulation == False', - OriginOfDynamicalVariables = SIMP(statut='o', into =['Given', 'Interaction'], typ ='TXM', position='global'), - BlocGivenOrInteraction = BLOC(condition = 'OriginOfDynamicalVariables in ["Given", "Interaction",]', - Steady = SIMP(typ=bool, statut ='o', defaut = True, position = 'global'), - # BlocNotSteady = BLOC(condition = 'Steady == False', - BlocConsigne = BLOC(condition = 'Steady == False', - Consigne = SIMP(statut="o", homo="information", typ="TXM", defaut='Not implemented yet. Will ask for a range of calculation steps.'), - ), #BlocNotSteady - BlocSteady = BLOC(condition = 'Steady == True', - BlocGiven = BLOC(condition = 'OriginOfDynamicalVariables == "Given"', - InSameFile = SIMP(typ=bool, statut ='o', defaut = True, position = 'reCalculeEtape'), - BlocSameFile = creeBlocPourLesFichiers('InSameFile == True', 'DynamicalVariables', ('Med', 'cgns' ), None), - ), #BlocGiven - ), #BlocSteady - ), #BlocGivenOrInteraction - ), - PositionDefinition = FACT(statut ='o', - Position = SIMP(typ=(dynamicVariable,'createObject'), statut='o', defaut ='Position', homo='constant'), - BlocSteady = BLOC(condition = 'Steady == True', - BlocFluidInSame = creeBlocPourLesFichiers('InSameFile == False', 'Position', ('Med', 'cgns' ), None), - BlocGivenPosition = BLOC(condition = 'OriginOfDynamicalVariables == "Given"', - PositionFieldName = SIMP(typ='TXM',statut='o'), - ), - BlocInteractionPosition = BLOC(condition = 'OriginOfDynamicalVariables == "Interaction"', - InteractionName = SIMP(typ=interaction,statut='o'), - Consigne = SIMP(statut="o", homo="information", typ="TXM", defaut='Create and choose suitable interaction'), - ), - ), - BlocSimulatedPosition = prepareBlocInitialisation(condition = 'VariablesSimulation == True'), - ), #fin PositionDefinition - VelocityDefinition = FACT(statut ='o', - VelocityUse = SIMP(typ=bool, statut ='o', defaut = True,), - BlocVelocityActivated = BLOC(condition = 'VelocityUse == True', - Velocity = SIMP(typ=(dynamicVariable,'createObject'), statut='o', defaut ='Velocity', homo='constant'), - BlocSteady = BLOC(condition = 'Steady == True', - BlocFluidInSame = creeBlocPourLesFichiers('InSameFile == False', 'Velocity', ('Med', 'cgns' ), None), - BlocGivenVelocity = BLOC(condition = 'OriginOfDynamicalVariables == "Given"', - VelocityFieldName = SIMP(typ='TXM',statut='o'), - ), - BlocInteractionVelocity = BLOC(condition = 'OriginOfDynamicalVariables == "Interaction"', - InteractionName = SIMP(typ=interaction,statut='o'), - Consigne = SIMP(statut="o", homo="information", typ="TXM", defaut='Create and choose suitable interaction'), - ), - ), - BlocSimulatedVelocity = prepareBlocInitialisation(condition = 'VariablesSimulation == True'), - ), - ), #fin VelocityDefinition - blocHydrodynamic = prepareBlocParticleDynVar('"Hydrodynamic" in MomentumFieldType', 'HydrodynamicDefinition', 'VelocityViewed') , - ), #fin DynamicalVariables - - Particles = FACT(statut='o', max='**', - ParticleNature = SIMP(statut='o', typ='TXM', - into=['Atom/Molecule','Atoms', 'Molecules', 'Dissipative', 'Fluid Particle', 'Discrete Particle']), - # blocAtomMolecule = BLOC(condition='ParticleNature == "Atom/Molecule"', - # Name = SIMP(statut='o', typ=(userMolecule,'createObject'),), - # ChemicalSpecie = FACT(max='**', statut='o', - # ChemicalSpecieName = SIMP(statut='o', typ='TXM'), - # Proportion = SIMP(statut='o', typ='R', val_max =1), - # Number = SIMP(statut='o', typ = 'I'), - # #PN proportion vs Number . - # ), - # Mass = SIMP(statut='o', typ = 'I'), - # ElectricCharge = SIMP(statut='o', typ='R'), - # MagneticMoment = SIMP(statut='o', typ='R'), - # ), #blocAtomMolecule - blocAtom = BLOC(condition='ParticleNature == "Atoms"', - AtomsName = SIMP(statut='o', typ=(userAtom,'createObject'),), - Atom = FACT(statut ='o', max= '**', - ChemicalSpecie = SIMP(statut='o', typ='TXM'), - Number = SIMP(statut='o', typ = 'I'), - ElectricCharge = SIMP(statut='o', typ='R'), - MagneticMoment = SIMP(statut='o', typ='R'), - Size = SIMP(statut='f', typ='R'), # relevant ? - ),# Atom - ), # fin b_Atom -# --------------- Molecules ------------------ - blocMolecule = BLOC(condition='ParticleNature == "Molecules"', - MoleculeName = SIMP(statut='o', typ=(userMolecule,'createObject'),), - ChemicalSpecie = FACT(max='**', statut='o', - ChemicalSpecieName = SIMP(statut='o', typ=userAtom), - Proportion = SIMP(statut='o', typ='R', val_max =1), - ), - ElectricCharge = SIMP(statut='o', typ='R'), - MagneticMoment = SIMP(statut='o', typ='R'), - Shape = SIMP(statut='f', typ='TXM', into=['Linear', 'Trigonal Planar', 'Angular', 'Tetrahedral', 'Octahedral', 'Trigonal pyramid', 'Other']), - ), #fin b_Molecule -# --------------- Dissipative ------------------ - blocDissipative = BLOC(condition='ParticleNature == "Dissipative"', - DPDName = SIMP(statut='o', typ=(userDPD,'createObject'),), - BondedParticles = SIMP(statut="o", typ=bool, defaut=False), - ), # b_Dissipative - -# --------------- Discrete Particle ------------------ - blocDiscrete = BLOC(condition='ParticleNature == "Discrete Particle"', - DiscreteParticleName = SIMP(statut='o', typ=(userDiscrete,'createObject'),), - TypeOfDiscreteParticle = SIMP(statut='o', typ='TXM', into=['Solid', 'Droplets', 'Bubbles','Bio Organism'],), - blocTypeDPSolid = BLOC(condition ='TypeOfDiscreteParticle == "Solid"', - TypeOfSolid = SIMP(statut='o', typ='TXM', into=['Primary Particle', 'Assemblage / Aggregate'], position = 'global'), - b_SolidPrimary = BLOC(condition='TypeOfSolid == "Primary Particle"', - ), - b_SolidAggregate = BLOC(condition='TypeOfSolid == "Assemblage / Aggregate"', - ), - ), -# --------------- Bio Organism ------------------ - blocTypeBioSolid = BLOC(condition='TypeOfDiscreteParticle == "Bio Organism"', - TypeOfOrganism = SIMP(statut='o', typ='TXM', into=['Unicellular', 'Multicellular']), - blocUnicellular = BLOC(condition ='TypeOfOrganism=="Unicellular"', - Unicellular = SIMP(statut='o', typ='TXM', into=["Bactaria"], defaut='Bactaria') - ), - b_Multicellular = BLOC(condition ='TypeOfOrganism=="Multicellular"', - Multicellular = SIMP(statut='o', typ='TXM', into=["Animal","Fongus","Plant"]) - ), - ), # b_TypeBio_Solid - -# --------------- Particule Properties ------------------ - Properties = FACT(statut ='o', - Geometry = SIMP(statut='o', typ='TXM', into=['Sphere', 'Ellopsoids', 'Other Shape']), - b_geom_Sphere = BLOC(condition = 'Geometry == "Sphere"', - ParticleRadius = SIMP(statut='o', typ ='R', val_min = 0), - ), - Weight = FACT(statut = 'o', - Consigne = SIMP(statut="o", homo="information", typ="TXM", defaut='Choose between Mass or Density'), - Mass = SIMP(statut='f', typ ='R', val_min = 0), - Density = SIMP(statut='f', typ ='R', val_min = 0), - ), - Mechanical = SIMP(statut='o', typ='TXM', into=['Rigid', 'Flexible', 'Deformable']), - b_SolidAggregate = BLOC(condition='TypeOfSolid == "Assemblage / Aggregate"', - Morphological = FACT(statut = 'o', - Consigne = SIMP(statut="o", homo="information", typ="TXM", defaut='Choose optional properties'), - FractalDimension = SIMP(statut='f', typ='R'), - NumberOfPrimaryParticle = SIMP(statut ='f',typ='I'), - EquivalentSize = SIMP(statut='f', typ='R'), - Porosity = SIMP(statut='f', typ='R'), - ), # Morphological - ), # b_SolidAggregate - ElectroMagnetic = FACT(statut = 'f', - ElectricCharge = SIMP(statut='o', typ='R'), - MagneticMoment = SIMP(statut='o', typ='R'), - ), - b_SolidAggregateBonded = BLOC(condition='TypeOfSolid == "Assemblage / Aggregate"', - BondedParticles = FACT( - ListOfBondedParticles = SIMP(statut='o', max='**', typ = userParticle), - ), - ), - ), # Properties - ), # b_Discrete - - ListOfBondedParticles = FACT(statut='f', - # --------------------------------------# - BondedParticles = FACT(statut='o', max = "**", - NameOfBonded_Particles = SIMP(statut='o', typ='TXM'), - SpeciesinParticle = SIMP(statut='o', min=2, typ='TXM' , max = "**"), - ), # BondedParticles - ), # ListOfBondedParticles - - BondedInteractions = FACT(statut='o', max = "**", - TypeOfBondedInteraction = SIMP(statut='o', typ='TXM', into=['NoOne', 'Covalent Bond Length', 'FENE', 'Covalent Bond Angle', 'Dihedral Angles', 'Improper Dihedral', 'Frozen Motion' ], defaut='NoOne'), - - #La saisie de l'ensemble des liaisons d'un meme type peut se faire ds le meme bloc (soit ds un fichier, soit manuelle) - #Une seule valeur de distante? est a saisir pour l'ensemble - # bloc_covalent_1 = BLOC(condition = 'TypeOfBondedInteraction in ("Covalent Bond Length","FENE")', - # ), # fin bloc_covalent_1 - -# ------------ Covalent Bond Length ------------------ - blocCovalentLength = BLOC(condition = 'TypeOfBondedInteraction == "Covalent Bond Length"', - InteractionLengthParameters = FACT(statut='o', max="**", - ApplyToBondedParticles = SIMP(statut='o', max='**', typ='TXM'), - SpringStifness = SIMP(statut='o', typ='R', val_min=0), - MeanBondLength = SIMP(statut='o', typ='R', val_min=0), - ), # fin Interation_Length_Parameters - ), # fin BondLengthParameters - -# ------------ Covalent Bond Angle ------------------ - blocCovalentAngle = BLOC(condition = 'TypeOfBondedInteraction == "Covalent Bond Angle"', - InteractionAnglesParameters = FACT(statut='o', max="**", - ApplyToBondedParticles = SIMP(statut='o', max='**', typ='TXM'), - SpringStifness = SIMP(statut='o', typ='R', val_min=0), - MeanBondAngle = SIMP(statut='o', typ='R', val_min=0), - ), # fin Interation_Angles_Parameters - ), # fin bloccovalentlengthand_angle - - #bloc_covalent_length_and_angle = BLOC(condition = 'TypeOfBondedInteraction == "Covalent Bond Length" or TypeOfBondedInteraction == "Covalent Bond Angle"', - # Bond_Parameters = FACT(statut='o', max="**", - # Apply_To_Bonded_Particles = SIMP(statut='o', max='**', typ='TXM'), - # Spring_Stifness = SIMP(statut='o', typ='R', val_min=0), - # bloc_covalent_length = BLOC(condition = 'TypeOfBondedInteraction == "Covalent Bond Length"', - # Mean_Bond_Length = SIMP(statut='o', typ='R', val_min=0), - # ), # fin Bond_Length_Parameters - # bloc_covalent_angle = BLOC(condition = 'TypeOfBondedInteraction == "Covalent Bond Angle"', - # Mean_Bond_Angle = SIMP(statut='o', typ='R', val_min=0), - # ), # fin Bond_Length_Parameters - # ), # fin Bond_Length_Parameters - #), # fin bloc_covalent_length_and_angle - -# ------------ Covalent Bond Angle ------------------ - blocFENE = BLOC(condition = 'TypeOfBondedInteraction == "FENE"', - AppliesToAllParticles = SIMP(statut='o', typ=bool, defaut=True), - blocNotOnAll = BLOC(condition = 'AppliesToAllParticles == False', - FENEParameters = FACT(statut='o', max="**", - SpeciesPair = SIMP(statut='o', max=2, typ='TXM'), - SpringConstant_H = SIMP(statut='o', typ='R', val_min=0), - LMax = SIMP(statut='o', typ='R', val_min=0), - ), # fin FENE_Parameters - ), # fin bloc_not_on_all - blocOnAll = BLOC(condition = 'AppliesToAllParticles == True', - Spring_Constant_H = SIMP(statut='o', typ='R', val_min=0), - LMax = SIMP(statut='o', typ='R', val_min=0), - ), # fin bloc_on_all - ), # fin blocFENE - - blocLeReste = BLOC(condition = 'TypeOfBondedInteraction in ("Dihedral Angles", "Improper Dihedral", "Frozen Motion")', - ParticleName = SIMP(statut="f", typ='TXM'), - Consigne = SIMP(statut="o", homo="information", typ="TXM", defaut='Not Implemented Yet'), - ), - - ), # fin Bonded_Interaction - ), # fin Particle - - ParticleParticleInteraction = FACT(statut='o', max = "**", - # -------------------------------------------------------# - - UnbondedInteractions = FACT(statut='o', max= "**", - - TypeOfUnbondedInteraction = SIMP(statut='o', typ='TXM', into=['No', 'electro_magnetic', 'Repulsion_and_VdW', 'Soft_Potentiel', ], defaut='No', position='global',fenetreIhm='menuDeroulant'), - - blocElec = BLOC(condition = 'TypeOfUnbondedInteraction == "electro_magnetic"', - Permittivity = SIMP(statut='o', typ='R', position='global_jdc'), - Magnetic = SIMP(statut='o', typ=bool, defaut=False,), - blocMagnetic = BLOC(condition = 'Magnetic == True', - Permability = SIMP(statut='o', typ='R'), - ), # bloc_magnetic - ),# fin bloc_elec - - blocVdW = BLOC(condition = 'TypeOfUnbondedInteraction == "Repulsion_and_VdW"', - SpeciesPairParameters = FACT(statut='o', max="**", - TypeRepulsionAndVdW = SIMP(statut='o', typ='TXM', into = [ 'Lennard_Jones', 'Hard_sphere_model']), - SpeciesPair = SIMP(statut='o', max=2, typ='TXM'), - VdWRadius = SIMP(statut='o', typ='R', val_min=0), - blocLennard = BLOC(condition = "TypeRepulsionAndVdW == 'Lennard_Jones'", - DepthOfThePotentialWell = SIMP(statut='o', typ='R', val_min=0), - ), # fin b_Lennard - ), # fin Species_Pair_Parameters - ), # bloc_VdW - - blocParamSoftPotentiel = BLOC(condition = "TypeOfUnbondedInteraction == 'Soft_Potentiel'", - GrootWarrenRepulsion = SIMP(statut='o', typ='R', defaut=25.0, val_min=0), - GrootWarrenCutoff = SIMP(statut='o', typ='R', defaut=1.0, val_min=0), - DragCoefficient = SIMP(statut='o', typ='R'), # les 2 valent 0 pour MD - DragForceCutoff = SIMP(statut='o', typ='R', val_min=0), - ), # b_Param_Soft_Potentiel - - ), # fin UnBonded_Interactions - ), # fin ParticleParticleInteraction - )# fin du prepareBlocCps - -# _______________________________________ - -def prepareBlocInitialisation(condition): - return BLOC(condition = condition, - Initialisation = FACT(statut ='o', - InitialisationType = SIMP(statut='o', into =['ByValue', 'ByFile', 'ByInteraction'], typ ='TXM', defaut='ByValue'), - BlocByFile = creeBlocPourLesFichiers('InitialisationType == "ByFile"', '', ListeFormats = listeFormatGenerique, FieldName='FieldName'), - BlocByInteraction = BLOC(condition = 'InitialisationType == "ByInteraction"', - InteractionName = SIMP(typ=interaction,statut='o'), - Consigne = SIMP(statut="o", homo="information", typ="TXM", defaut='Create and choose suitable interaction'), - ), - BlocByValue = BLOC(condition = 'InitialisationType == "ByValue"', - Value = SIMP (statut ='o', typ='R'), - ), - ), - SourceTerm = SIMP(typ=bool, statut='o', defaut=False), - blocSourceTerm = prepareTermeSourceDynVar('SourceTerm==True'), - ) #BlocSimulatedPressure - -#--------------------------- -def prepareBlocFluideMacro(): -#--------------------------- - return BLOC(condition = 'SystemType == "Continuum system"', - ComplexFluid = SIMP(typ=bool, statut='o', defaut = False, position='global'), - FlowNature = SIMP(typ='TXM', statut='o', into =['Laminar', 'Turbulent'], position='global'), - -# --------------------------- Density ------------- - DensityInitialisation = FACT(statut ='o', - DensityValueType = SIMP(typ='TXM', statut ='o', into = ['Value', 'Field'], defaut ='Value'), - blocDensityValue = BLOC(condition = 'DensityValueType == "Value"', - Density = SIMP(typ='R', statut ='o'), - ), - blocDensField= creeBlocPourLesFichiers('DensityValueType == "Field"', 'Density', ListeFormats=listeFormatGenerique, FieldName='DensityFieldName'), - ),# DensityInitialisation - -# --------------------------- Viscosity ------------- - ViscosityInitialisation = FACT(statut ='o', - ViscosityValueType = SIMP(typ='TXM', statut ='o', into = ['Value', 'Field'], defaut ='Value'), - blocViscosityValue = BLOC(condition = 'ViscosityValueType == "Value"', - Viscosity = SIMP(typ='R', statut ='o'), - ), - blocViscosityField = creeBlocPourLesFichiers('ViscosityValueType == "Field"', 'Viscosity', ListeFormats=listeFormatGenerique, FieldName='ViscosityFieldName'), - ), #fin ViscosityityInitialisation - -# --------------------------- Turbulent ------------- - blocFlowNatureTurbulent = BLOC(condition = ' FlowNature == "Turbulent"', - TurbulenceForFlowDynamics = prepareFactTurbulence('o',position='global',positionChoice='reCalculeEtape'), - ), #fin bloc_FlowNature_Turbulent - - DynamicalVariables = FACT(statut ='o', - VariablesSimulation = SIMP(statut='o', typ =bool, position='global'), - BlocVariablesSimulation = BLOC(condition = 'VariablesSimulation == False', - OriginOfDynamicalVariables = SIMP(statut='o', into =['Given', 'Interaction'], typ ='TXM', position='global'), - BlocGivenOrInteraction = BLOC(condition = 'OriginOfDynamicalVariables in ["Given", "Interaction",]', - Steady = SIMP(typ=bool, statut ='o', defaut = True, position = 'global'), - # BlocNotSteady = BLOC(condition = 'Steady == False', - BlocConsigne = BLOC(condition = 'Steady == False', - Consigne = SIMP(statut="o", homo="information", typ="TXM", defaut='Not implemented yet. Will ask for a range of calculation steps.'), - ), #BlocNotSteady - BlocSteady = BLOC(condition = 'Steady == True', - BlocGiven = BLOC(condition = 'OriginOfDynamicalVariables == "Given"', - InSameFile = SIMP(typ=bool, statut ='o', defaut = True, position = 'reCalculeEtape'), - BlocSameFile = creeBlocPourLesFichiers('InSameFile == True', 'DynamicalVariables', ('Med', 'cgns' ), None), - ), #BlocGiven - ), #BlocSteady - ), #BlocGivenOrInteraction - ), - PressureDefinition = FACT(statut ='o', - Pressure = SIMP(typ=(dynamicVariable,'createObject'), statut='o', defaut ='Pressure', homo='constant'), - BlocSteady = BLOC(condition = 'Steady == True', - BlocFluidInSame = creeBlocPourLesFichiers('InSameFile == False', 'Pressure', ('Med', 'cgns' ), None), - BlocGivenPressure = BLOC(condition = 'OriginOfDynamicalVariables == "Given"', - PressureFieldName = SIMP(typ='TXM',statut='o'), - ), - BlocInteractionPressure = BLOC(condition = 'OriginOfDynamicalVariables == "Interaction"', - InteractionName = SIMP(typ=interaction,statut='o'), - Consigne = SIMP(statut="o", homo="information", typ="TXM", defaut='Create and choose suitable interaction'), - ), - ), - BlocSimulatedPressure = prepareBlocInitialisation(condition = 'VariablesSimulation == True'), - ), - VelocityDefinition = FACT(statut ='o', - blocFlowNatureTurbulent = BLOC(condition = 'FlowNature == "Turbulent"', - #sousBlocFlowNatureTurbulent = BLOC(condition = 'TurbulenceModellingType != "Fully resolved (DNS)"', - AverageVelocity = SIMP(typ=(dynamicVariable,'createObject'), statut='o', defaut ='Average_Velocity', homo='constant'), - BlocSteadyGivenVelocity1 = BLOC(condition = 'OriginOfDynamicalVariables == "Given" and Steady == True ', - AverageVelocityValue = SIMP(typ='R', statut='o' ), - ), - #), - ), - #blocFlowNatureLaminar = BLOC(condition = ' FlowNature == "Laminar" or TurbulenceModellingType == "Fully resolved (DNS)"', - blocFlowNatureLaminar = BLOC(condition = 'FlowNature == "Laminar"', - FluidVelocity = SIMP(typ=(dynamicVariable,'createObject'), statut='o', defaut ='Fluid_Velocity', homo='constant'), - BlocSteady = BLOC(condition = 'Steady == True', - BlocVelocityInSame = creeBlocPourLesFichiers('InSameFile == False', 'Velocity', ('Med', 'cgns' ), None), - BlocSteadyGivenVelocity2 = BLOC(condition = 'OriginOfDynamicalVariables == "Given"', - VelocityFieldName = SIMP(typ='TXM',statut='o'), - ), - ), - ), - BlocSteady = BLOC(condition = 'Steady == True', - BlocInteractionVelocity = BLOC(condition = 'OriginOfDynamicalVariables == "Interaction"', - InteractionName = SIMP(typ=interaction,statut='o'), - Consigne = SIMP(statut="o", homo="information", typ="TXM", defaut='Create and choose suitable interaction'), - ), - ), - BlocSimulatedVelocity = prepareBlocInitialisation(condition = 'VariablesSimulation == True'), - ), - BFlowNatureTurbulent = BLOC(condition ='FlowNature == "Turbulent"', - # K-epislon ou k-omega - blocTurbulenceTWMChoice1 = BLOC(condition = 'TVMChoice == "K-Epsilon" or TVMChoice == "K-Omega"', - KDefinition = FACT(statut ='o', - Name = SIMP(typ=(scalar,'createObject'), statut='o', defaut ='K', homo='constant'), - BlocSteady = BLOC(condition = 'Steady == True', - BlocKInSame = creeBlocPourLesFichiers('InSameFile == False', 'K', ('Med', 'cgns' ), None), - BlocKGiven = BLOC(condition = 'OriginOfDynamicalVariables == "Given"', - KFieldName = SIMP(typ='TXM',statut='o', defaut='K'), - ), - BlocKInteraction = BLOC(condition = 'OriginOfDynamicalVariables == "Interaction"', - InteractionName = SIMP(typ=interaction,statut='o'), - Consigne = SIMP(statut="o", homo="information", typ="TXM", defaut='Create and choose suitable interaction'), - ), - ), - BlocSimulatedKDefinition = prepareBlocInitialisation(condition = 'VariablesSimulation == True'), - ), # KDefinition - ),# fin blocTurbulenceTWMChoice1 - - # REM : L'existence des mc TVMChoice et RSMChoice est exclusive, du coup une évaluation de condition - # qui contient les deux renvoie forcément une exception, le bloc n'est alors pas evalué - # sauf si le mc de la première condition existe (ordre évaluation du or) - # blocTurbulenceTWMChoice2 = BLOC(condition = 'TVMChoice == "K-Epsilon" or RSMChoice != None', - # blocTurbulenceTWMChoice2 = BLOC(condition = '(RSMChoice != None) or (TVMChoice == "K-Epsilon")', - # blocTurbulenceTWMChoice2 = BLOC(condition = 'TVMChoice == "K-Epsilon"', - blocTurbulenceTWMChoice2 = BLOC(condition = 'RANSModel == "Reynolds Stress Model (RSM)" or TVMChoice == "K-Epsilon"', - EpsilonDefinition = FACT(statut ='o', - Name = SIMP(typ=(scalar,'createObject'), statut='o', defaut ='Epsilon', homo='constant'), - BlocSteady = BLOC(condition = 'Steady == True', - BlocEpsilonInSame = creeBlocPourLesFichiers('InSameFile == False', 'Epsilon', ('Med', 'cgns' ), None), - BlocEpsilonGiven = BLOC(condition = 'OriginOfDynamicalVariables == "Given"', - EpsilonFieldName = SIMP(typ='TXM',statut='o'), - ), - BlocEpsilonInteraction = BLOC(condition = 'OriginOfDynamicalVariables == "Interaction"', - InteractionName = SIMP(typ=interaction,statut='o'), - Consigne = SIMP(statut="o", homo="information", typ="TXM", defaut='Create and choose suitable interaction'), - ), - ), - BlocSimulatedEpsilonDefinition = prepareBlocInitialisation(condition = 'VariablesSimulation == True'), - ), #EpsilonDefinition - ), # bloc_Turbulence_TWMChoice2 - - blocTurbulenceTWMChoice3 = BLOC(condition = 'TVMChoice == "K-Omega"', - OmegaDefinition = FACT(statut ='o', - Name = SIMP(typ=(scalar,'createObject'), statut='o', defaut ='Omega', homo='constant'), - BlocSteady = BLOC(condition = 'Steady == True', - BlocOmegaInSame = creeBlocPourLesFichiers('InSameFile == False', 'Omega', ('Med', 'cgns' ), None), - BlocOmegaGiven = BLOC(condition = 'OriginOfDynamicalVariables == "Given"', - OmegaFieldName = SIMP(typ='TXM',statut='o'), - ), - BlocOmegaInteraction = BLOC(condition = 'OriginOfDynamicalVariables == "Interaction"', - InteractionName = SIMP(typ=interaction,statut='o'), - Consigne = SIMP(statut="o", homo="information", typ="TXM", defaut='Create and choose suitable interaction'), - ), - ), - BlocSimulatedOmegaDefinition = prepareBlocInitialisation(condition = 'VariablesSimulation == True'), - ), - ), # blocTurbulenceTWMChoice3 - - # blocTurbulenceRSMChoice1 = BLOC(condition = "(RANSModel == 'Reynolds Stress Model (RSM)') and (RSMChoice !=None)", - blocTurbulenceRSMChoice1 = BLOC(condition = "RSMChoice !=None", - RijDefinition = FACT(statut ='o', - Name = SIMP(typ=(scalar,'createObject'), statut='o', defaut ='Rij', homo='constant'), - BlocSteady = BLOC(condition = 'Steady == True', - BlocRijInSame = creeBlocPourLesFichiers('InSameFile == False', 'Rij', ('Med', 'cgns' ), None), - BlocRijGiven = BLOC(condition = 'OriginOfDynamicalVariables == "Given"', - RijFieldName = SIMP(typ='TXM',statut='o'), - ), - BlocRijInteraction = BLOC(condition = 'OriginOfDynamicalVariables == "Interaction"', - InteractionName = SIMP(typ=interaction,statut='o'), - Consigne = SIMP(statut="o", homo="information", typ="TXM", defaut='Create and choose suitable interaction'), - ), - ), - BlocSimulatedRijDefinition = prepareBlocInitialisation(condition = 'VariablesSimulation == True'), - ), - ), # blocTurbulenceRSMChoice1 - ), #BFlowNatureTurbulent - ), # DynamicalVariables - -# ---------------------- Effets thermiques - Thermal = FACT(statut ='o', - ThermalEffects = SIMP(typ='TXM', statut='o', into =['Non thermal', 'Thermal'] , defaut='Thermal', position='global' ), - blocNonThermalEffects = BLOC(condition = 'ThermalEffects == "Non thermal"', - ReferenceTemperature = SIMP(typ='R', statut='o', val_min=-273.15 ), - ), # fin bloc_NonThermal - bloc_ThermalEffects_ = BLOC(condition = 'ThermalEffects == "Thermal"', - ConductivityValueType = SIMP(typ='TXM', statut ='o', into = ['Value', 'Field'], defaut ='Value'), - blocCondValue = BLOC (condition = 'ConductivityValueType == "Value"', - Conductivity = SIMP(typ='R', statut ='o'), - ), - blocCondField = creeBlocPourLesFichiers('ConductivityValueType == "Field"', 'Conductivity', ListeFormats=listeFormatGenerique, FieldName='conductivityFieldName'), - #ActiveOnFlowEffect = ActiveOnFlowEffect(), - ), - ),# fin Fact Thermal - -# ---------------------- Scalaires - - blocScalarFluidTurbulentOrLaminar = BLOC(condition = "(ComplexFluid == False and FlowNature == 'Turbulent') or (ComplexFluid == False and FlowNature == 'Laminar')", - Scalars = FACT(statut = 'o', - withScalars = SIMP(statut='o', typ=bool, defaut=False), - blocwithScalars = BLOC(condition = 'withScalars == True', - blocFlowNatureTurbulentForScalars = BLOC(condition = ' FlowNature == "Turbulent"', - AsTurbulenceForFlowDynamics = SIMP(statut='o', typ=bool, defaut=True), - BlocAsTFFD = BLOC(condition = "AsTurbulenceForFlowDynamics == False", - ScalarsTurbulenceModelling = prepareFactTurbulenceScalaire('o',), - ), - ), - blocThermalEffectsOn = BLOC(condition = ' ThermalEffects == "Thermal"', - TemperatureScalar = FACT(statut ='o', - #Name = SIMP(typ=(scalar,'createObject'), statut='o', defaut ='Temperature', homo='constant', position='reCalculeEtape'), - Name = SIMP(typ=(scalar,'createObject'), statut='o', defaut ='Temperature', homo='constant'), - SourceTerm = SIMP(typ=bool, statut='o', defaut=False), - blocSourceTerm = prepareTermeSource('SourceTerm==True'), - TemperatureInitialisation = FACT(statut ='o', - OriginOfThermalFluxField = SIMP(statut='o', into =['Given', 'Interaction', 'to be simulated'], typ ='TXM'), - BlocGiven = creeBlocPourLesFichiers('OriginOfThermalFluxField == "Given"', 'Temperature', ('Med', 'cgns' ), FieldName='FieldName'), - ),# fin TemperatureInitialisation - ),# TemperatureScalar - ), # fin bloc_ThermalEffects_On - Scalar = FACT(statut = 'o', max ='**', - Name = SIMP(typ=(scalar,'createObject'), statut='o',), - DiffusivityValueType = SIMP(typ='TXM', statut ='o', into = ['Value', 'Field'], defaut ='Value'), - blocDiffValue = BLOC(condition = 'DiffusivityValueType == "Value"', - Diffusivity = SIMP(typ='R', statut ='o'), - ), - blocDiffField = creeBlocPourLesFichiers('DiffusivityValueType == "Field"', 'Diffusivity', ListeFormats=listeFormatGenerique, FieldName='DiffusivityFieldName'), - OriginOfScalar = SIMP(statut='o', into =['Given', 'Interaction', 'to be simulated'], typ ='TXM', defaut='to be simulated'), - blocSimulatedScalar = BLOC(condition = 'OriginOfScalar == "to be simulated"', - SourceTerm = SIMP(typ=bool, statut='o', defaut=False), - blocSourceTerm = prepareTermeSource('SourceTerm==True'), - Initialisation = FACT(statut ='o', - InitialisationOfScalar = SIMP(statut='o', into =['ValueInit', 'FileInit', 'InteractionInit'], typ ='TXM', defaut='ValueInit'), - BlocFileInit = creeBlocPourLesFichiers('InitialisationOfScalar == "FileInit"', 'ScalarInit', ListeFormats = listeFormatGenerique, FieldName='ScalarInitField'), - BlocInteractionInit = BLOC(condition = 'InitialisationOfScalar == "InteractionInit"', - InteractionName = SIMP(typ=interaction,statut='o'), - Consigne = SIMP(statut="o", homo="information", typ="TXM", defaut='Create and choose suitable interaction'), - ), - BlocValueInit = BLOC(condition = 'InitialisationOfScalar == "ValueInit"', - ValueInit = SIMP (statut ='o', typ='R'), - ), - ), #Initialisation - ), #blocSimulatedScalar - blocInteractionScalar = BLOC(condition = 'OriginOfScalar == "Interaction"', - InteractionName = SIMP(typ=interaction,statut='o'), - Consigne = SIMP(statut="o", homo="information", typ="TXM", defaut='Create and choose suitable interaction'), - ), - blocGivenScalar = creeBlocPourLesFichiers('OriginOfScalar == "Given"', 'Scalar', ListeFormats = listeFormatGenerique, FieldName='ScalarField'), - EffectOnFlowDynamic = SIMP(typ='TXM', statut='o', into=[ 'Passive', 'Active'], defaut='Passive', ), - blocScalarActiveOnFlowDynamic = BLOC(condition = ' EffectOnFlowDynamic == "Active"', - ActiveOnFlowEffect = ActiveOnFlowEffect(), - ), - blocScalarFluidTurbulentAndNonComplexe = BLOC (condition = "FlowNature == 'Turbulent'", - ScalarFluxModel = prepareFactTurbulenceScalaire('f'), - ), # bloc_scalar_FluidTurbulentandNonComplexe - ),# Scalar - ),# blocwWithScalars - ),# Scalars - ), # fin FluidTurbulentandNonComplexe - # il faut une validation de coherence entre l existence de tous les turbulencesModelling - )# fin bloc_FluideMacro - -#---------------------------------------- -def ActiveOnFlowEffect(inTemperature=True): -#---------------------------------------- - return FACT(statut = 'o', max='**', - RelationType = SIMP(statut = 'o', into =['Equation Of State', 'Force-Flux Relation'], typ ='TXM'), - bloc_EOS = BLOC(condition = 'RelationType == "Equation Of State"', - TypeOfEquationOfState = SIMP(statut='o', into =['variable density', 'compressible'], typ ='TXM'), - ), - bloc_NonEOSAndSimple=BLOC(condition = 'RelationType == "Force-Flux Relation" and ComplexFluid == False', - TypeOfForceFluxRelation = SIMP(statut='o', into =['Viscosity', 'Diffusivity', 'Thermal Conductivity'], intoXML=['Viscosity', 'Diffusivity', 'Thermal Conductivity','Shear-stress closure', 'Scalar flux'], typ ='TXM', ), - blocViscosity=BLOC(condition = 'TypeOfForceFluxRelation == "Viscosity" ', - ViscosityLaw=SIMP(typ='TXM', statut = 'o', into=['law1', 'law2']), - ), - blocDiffusivity=BLOC(condition = 'TypeOfForceFluxRelation == "Diffusivity"', - DiffusivityLaw=SIMP(typ='TXM', statut = 'o', into=['law1', 'law2']), - ), - blocConductivity=BLOC(condition = 'TypeOfForceFluxRelation == "Thermal Conductivity"', - ConductivityLaw=SIMP(typ='TXM', statut = 'o', into=['law1', 'law2']), - ), - ), -) - -#-----------------------------------------------------# -def prepareBoundaryCondition(): - return FACT(statut='o',max = '**', # max = nb de facette de bord - TypeOfBoundaryCondition = SIMP(statut='o', typ='TXM', into=['Inlet', 'Outlet', 'Symmetry','Periodicity', 'Wall', 'Free Surface'], ), - - blocDesigneMesh = BLOC(condition = "SystemType == 'Continuum system'", - ApplyOnGroups = SIMP(statut ='o', typ=meshGroup, max='**', homo='SansOrdreNiDoublon', - filtre=( '(set(MeshIdentifiers).intersection( set(self.getParentsWithId().getListeUserASSD("MeshId")) ) != set()) ', - ( ('MeshIdentifiers', 'self.etape.getChild("blocModeleNumeriqueContinuum").getChild("NumericalModel")'), ) - ), - ), - ), - blocDesigne_Shape = BLOC(condition = "SystemType == 'Classical particle system'", - #ApplyOnGroups = SIMP (statut ='o', typ=spatialRegion, max='**' - ApplyOnGroups = SIMP (statut ='o', typ=meshGroup, max='**', homo='SansOrdreNiDoublon', - filtre=( '(set(MeshIdentifiers).intersection( set(self.getParentsWithId().getListeUserASSD("MeshId")) ) != set()) ', - ( ('MeshIdentifiers', 'self.etape.getChild("blocModeleNumeriqueClassical").getChild("NumericalModel")'), ) - ), - ), - ), - - blocOnStateVariable = BLOC(condition = "TypeOfBoundaryCondition not in ['Wall',]", - ApplyOnStateVariable = SIMP (statut ='o', typ=stateVariable, max='**', homo='SansOrdreNiDoublon', - filtre=( 'etape in set(self.getEtapes()) ', (('etape', None),), ), #Il ne faut pas proposer les variables d'état des autres composants. - ), #PNPN A FAIRE : fenetreIhm='menuDeroulant' - ), - blocPeriodique = BLOC(condition = "TypeOfBoundaryCondition == 'Periodic'", - Direction = SIMP(statut='o', typ='TXM', into=['X','Y','Z', 'XYZ']), - ), # b_periodique - blocInlet = BLOC(condition = "TypeOfBoundaryCondition == 'Inlet'", - FormulationOfBoundary= SIMP(statut='o', typ='TXM', into=['Dirichlet','Neumann','Cauchy']), - blocDirichlet = BLOC(condition = 'FormulationOfBoundary == "Dirichlet"', - regles=(AU_MOINS_UN('InletProfile','IntegratedValue','IntegratedVectorValue',), - EXCLUS ('InletProfile','IntegratedValue','IntegratedVectorValue',), ), - Consigne = SIMP(statut ="o", homo="information", typ="TXM", defaut = "Choose between InletProfile,IntegratedValue,IntegratedVectorValue "), - InletProfile = SIMP (statut ='f', typ='TXM'), - IntegratedValue = SIMP (statut='f', typ='R'), - IntegratedVectorValue = FACT(statut='f', - U = SIMP (statut ='o', typ='R'), - V = SIMP (statut ='o', typ='R'), - W = SIMP (statut ='o', typ='R'), - ), - #PN : faire une regle - ), - blocNeumann = BLOC(condition = 'FormulationOfBoundary == "Neumann"', - Flux = SIMP (statut ='o', typ='TXM'), - ), - blocCauchy = BLOC(condition = 'FormulationOfBoundary == "Cauchy"', - ImposedFlux = SIMP (statut ='o', typ='TXM'), - _IntegratedValue = SIMP (statut='o', typ='R'), - ), - ), # b_inlet - blocWall = BLOC(condition = "TypeOfBoundaryCondition == 'Wall'", - VelocityAtBoundary = FACT(statut='o', - SlipVelocity = SIMP(statut='o', typ='R', defaut= 0.0), - WallMotion = FACT(statut='o', - U = SIMP (statut ='o', typ='R'), - V = SIMP (statut ='o', typ='R'), - W = SIMP (statut ='o', typ='R'), - ), - ), - LevelOfDescription = FACT(statut='o', - blocWall = BLOC(condition = "FlowNature == 'Turbulent'", ##JP+CH TODO : Choix des lois en fct du type du TurbulenceModelingType - WallFunction = SIMP(statut ='o', typ='TXM', - into=['No wall function','1-scale model (Log law)', - '2-scale model (Log law)','Scalable 2-scale model (Log law)', - ], defaut='No wall function', fenetreIhm='menuDeroulant'), - ), - ), - ), # b_Wall - - ) # Boundary_Conditions - - -# def prepareBoundaryCondition(): -# return FACT(statut='o',max = '**', # max = nb de facette de bord -# ApplyOnStateVariable = SIMP (statut ='o', typ=stateVariable, ), #PNPN A FAIRE : fenetreIhm='menuDeroulant' -# blocDesigneMesh = BLOC(condition = "SystemType == 'Continuum system'", -# ApplyOnGroups = SIMP (statut ='o', typ=meshGroup, max='**', homo='SansOrdreNiDoublon'), -# ), -# blocDesigne_Shape = BLOC(condition = "SystemType == 'Classical particle system'", -# ApplyOnCadGroups = SIMP (statut ='o', typ=spatialRegion, max='**'), -# ), -# TypeOfBoundaryCondition = SIMP(statut='o', typ='TXM', into=['Inlet', 'Outlet', 'Symmetry','Periodicity', 'Wall', 'Free Surface'], ), -# blocPeriodique = BLOC(condition = "TypeOfBoundaryCondition == 'Periodic'", -# Direction = SIMP(statut='o', typ='TXM', into=['X','Y','Z', 'XYZ']), -# ), # b_periodique -# blocInlet = BLOC(condition = "TypeOfBoundaryCondition == 'Inlet'", -# FormulationOfBoundary= SIMP(statut='o', typ='TXM', into=['Dirichlet','Neumann','Cauchy']), -# blocDirichlet = BLOC(condition = 'FormulationOfBoundary == "Dirichlet"', -# regles=(AU_MOINS_UN('InletProfile','IntegratedValue','IntegratedVectorValue',), -# EXCLUS ('InletProfile','IntegratedValue','IntegratedVectorValue',), ), -# #Consigne = SIMP(statut ="o", homo="information", typ="TXM", defaut = "Choose between InletProfile,IntegratedValue,IntegratedVectorValue "), -# InletProfile = SIMP (statut ='f', typ='TXM'), -# IntegratedValue = SIMP (statut='f', typ='R'), -# IntegratedVectorValue = FACT(statut='f', -# x = SIMP (statut ='o', typ='R'), -# y = SIMP (statut ='o', typ='R'), -# z = SIMP (statut ='o', typ='R'), -# ), -# #PN : faire une regle -# ), -# blocNeumann = BLOC(condition = 'FormulationOfBoundary == "Neumann"', -# Flux = SIMP (statut ='o', typ='TXM'), -# ), -# blocCauchy = BLOC(condition = 'FormulationOfBoundary == "Cauchy"', -# ImposedFlux = SIMP (statut ='o', typ='TXM'), -# IntegratedValue = SIMP (statut='o', typ='R'), -# ), -# ), # b_inlet -# ) # Boundary_Conditions - - - - -JdC = JDC_CATA ( - #PN : TODO : regles = (AU_PLUS_UN('DataTransfer_Aspects',),), - code = 'Vimmp', - # faire un validateur qui verifie que si on active reactions chimiques il faut que les masses molaires soient rentrees -) - -Component = OPER(nom='Component', sd_prod=composant, - SystemType = SIMP(typ='TXM', into=['Quantum system', 'Classical particle system', 'Continuum system'], statut='o',position='global'), - PhysicalDescription = FACT(statut = 'o', - blocFluideMacro = prepareBlocFluideMacro(), - blocCPS = prepareBlocCPS(), - ), - blocModeleNumeriqueQuantum = prepareBlocSystemType('Quantum system'), - blocModeleNumeriqueClassical = prepareBlocSystemType('Classical particle system'), - blocModeleNumeriqueContinuum = prepareBlocSystemType('Continuum system'), - BoundaryConditions = FACT(statut = 'o', - BoundaryCondition = prepareBoundaryCondition(), - ) -) - -Species = PROC(nom='Species', - Specie = FACT(statut='o', max ="**", - Name = SIMP(statut='o', typ=(especeChimique,'createObject') ), - MolarMass = SIMP(statut='f', typ='R',), - ) -) - -def monBlocInteractionTypeChamp (): - return BLOC (condition = '1 == 1' , # a distinguer selon les cas - fieldNameInOrigine = SIMP(typ='TXM', statut='o'), - fieldNameInDestination = SIMP(typ='TXM', statut='o'), - ) - -def TousSelonLeTypeDeFormatDisponible(condition, prefixName=''): - TransfertType = SIMP(typ='TXM', statut='o', into =['File', 'Memory', 'CorbaObject']) - maListe = list(dictCodeFormat.keys()) - dicoArgs={} - #index=0 - #for Solv1 in maListe[index:]: - # for Solv2 in maListe[index:]: - # #print (Solv1,Solv2, calculCommun(Solv1, Solv2,dictCodeFormat)) - # print ('PNPN attention changement de dictCodeFormat tant que getEficasAttribut n est pas correct') - # conditionSolv = 'TransfertType == "File" and getEficasAttribut(origine,"Solver")==Solv1 and getEficasAttribut(destination,"Solver")==Solv2' , - # conditionSolv = 'TransfertType == "File"' - # monBlocFichier=creeBlocPourLesFichiers (conditionSolv, 'FileName', calculCommun(Solv1, Solv2,dictCodeFormat)) - # dicoArgs['monBlocFichier'+str(index)]=monBlocFichier - # index=index+1 - mesFormats=set() - for solv1 in dictCodeFormat.keys() : - for f in dictCodeFormat[solv1] : mesFormats.add(f) - conditionSolv='TransfertType == "File"' - BlocFichier=creeBlocPourLesFichiers (conditionSolv, prefixName, mesFormats, None) - dicoArgs['BlocFichier']=BlocFichier - monBlocChamp = BLOC(condition = "TransfertType=='File'", FieldName=SIMP(typ='TXM', statut='o')) - dicoArgs['monBlocChamp']=monBlocChamp - return BLOC(condition = condition,TransfertType=TransfertType, **dicoArgs) - -def SelonLeTypeDeFormatDisponibleMapper(condition): - TransferType = SIMP(typ='TXM', statut='o', into =['File', 'Memory', 'CorbaObject']) - maListe = list(dictCodeFormat.keys()) - dicoArgs={} - index=0 - for Solv1 in maListe[index:]: - for Solv2 in maListe[index:]: - #print (Solv1,Solv2, calculCommun(Solv1, Solv2,dictCodeFormat)) - print ('PNPN attention changement de dictCodeFormat tant que getEficasAttribut n est pas correct') - conditionSolv = 'TransferType == "File" and getEficasAttribut(origine,"Solver")==Solv1 and getEficasAttribut(destination,"Solver")==Solv2' , - conditionSolv = 'TransferType == "File"' - monBlocFichier=creeBlocPourLesFichiers (conditionSolv, '', calculCommun(Solv1, Solv2,dictCodeFormat),None) - dicoArgs['monBlocFichier'+str(index)]=monBlocFichier - index=index+1 - BlocChamp = BLOC(condition = "TransferType=='File'", FieldName=SIMP(typ='TXM', statut='o')) - dicoArgs['BlocChamp'] = BlocChamp - return BLOC(condition = condition,TransferType=TransferType, **dicoArgs) - -Interpolator = OPER (nom= 'Interpolator',sd_prod=interpolator, - InterpolatorType=SIMP(statut='o', typ='TXM', into = list(dictInterpolatorFormat.keys())), - blocMedCoupling= BLOC(condition="InterpolatorType == 'Med Coupling'", - TargetMeshIdentifier = SIMP(statut ='o', typ = meshIdentifier,), - InterpolationType = SIMP(statut ='o', typ='TXM', into=['P0P0','P0P1','P1P1','P1P0'],), - ), -) -Converter = OPER (nom= 'Converter',sd_prod=converter) - -Interactions = PROC(nom='Interactions', - - IOAspects = FACT(statut='o', - - #WorkingDirectory = SIMP(statut='o', typ='Repertoire', defaut='/tmp'), - - FileTransfer = FACT(statut='f', max='**', - TransferId = SIMP(statut='o', typ=(fileId,'createObject'),), - monBlocFormat = creeBlocPourLesFichiers('1', '', listeFormatGenerique, FieldName=None ), - ), - MemoryTransfer = FACT(statut='f', max='**', - TransferId = SIMP(statut='o', typ=(memoryId,'createObject'),), - ), - CorbaTransfer = FACT(statut='f', max='**', - TransferId = SIMP(statut='o', typ=(corbaId,'createObject'),), - ), - ), - - - Interaction = FACT(max = '**', - InteractionName = SIMP(statut='o', typ=(interaction,'createObject'),), - From = SIMP(typ=modeleNumDuCompo, statut='o'), - To = SIMP(typ=modeleNumDuCompo, statut='o'), - # ApplyOnStateVariable = SIMP(statut ='o', typ=stateVariable), #PNPN A FAIRE : fenetreIhm='menuDeroulant' - InvolvedStateVariable = SIMP(statut ='o', typ=stateVariable), #PNPN A FAIRE : Seulement du composant d'origine From - # monBloc_FFFF = BLOC ( - # condition = 'getEficasAttribut(From,"ModelType") == "Fields" and getEficasAttribut(To,"ModelType") == "Fields"' , - # TermeLE = SIMP(typ='TXM', statut='o', into = dictTermeLE['Fields','Fields'],fenetreIhm='menuDeroulant'), - # ), - # monBloc_DPDP = BLOC ( - # condition = 'getEficasAttribut(From,"ModelType") == "Particles" and getEficasAttribut(To,"ModelType") == "Particles"' , - # TermeLE = SIMP(typ='TXM', statut='o', into = dictTermeLE['Particles','Particles'],fenetreIhm='menuDeroulant'), - # ), - # monBloc_FFDP = BLOC ( - # condition = 'getEficasAttribut(From,"ModelType") == "Fields" and getEficasAttribut(To,"ModelType") == "Particles"' , - # TermeLE = SIMP(typ='TXM', statut='o', into = dictTermeLE['Fields','Particles'],fenetreIhm='menuDeroulant'), - # ), - # monBloc_DPFF = BLOC ( - # condition = 'getEficasAttribut(From,"ModelType") == "Particles" and getEficasAttribut(To,"ModelType") == "Fields"' , - # TermeLE = SIMP(typ='TXM', statut='o', into = dictTermeLE['Particles','Fields'],fenetreIhm='menuDeroulant'), - # ), - InteractionConfiguration = FACT(statut='o', - - OutputId = SIMP(statut='o',typ=(transferId,),), - FieldName=SIMP(typ='TXM', statut='o'), - # ComponentProduction = FACT(statut='o', - # monBlocFormat = TousSelonLeTypeDeFormatDisponible("1", 'ComponentProduction' ), - # ), - # ), - #CouplingMode = SIMP(typ='TXM', statut='o', into =['Direct', 'DataProcessing', 'Conversion']), - CouplingMode = SIMP(typ='TXM', statut='o', into =['Direct', 'DataProcessing']), - #monBlocDirect = TousSelonLeTypeDeFormatDisponible("CouplingMode=='Direct'" ), - - monBlocDataProcessing = BLOC (condition = "CouplingMode=='DataProcessing'", - DataProcessingNode = FACT(min=1, max='**', statut ='o', - Tool = SIMP(typ=mapper, statut ='o'), - OutputId = SIMP(statut='o',typ=(transferId,),), - FieldName = SIMP(typ='TXM', statut='o'), - monBlocInterpolator = BLOC (condition = "(Tool != None) and (isinstance(Tool,interpolator))", - FieldNature = SIMP(typ='TXM', statut='o', into=['ExtensiveMaximum', 'IntensiveMaximum', - 'ExtensiveConservation', 'IntensiveConservation']), #PN: DICO pour le into avec key==Tool - ), - ), - ), #fin monBlocDataProcessing - ), #fin InteractionConfiguration - ), -) - - - -EnvironementAspects = PROC(nom ="EnvironementAspects", - WorkflowName = SIMP(statut='o', typ='TXM', defaut='MyStudyCasename'), #PN: -> path - WorkingDirectory = SIMP(statut='o', typ='Repertoire', defaut='/tmp'), -) - -#Le dictionnaire dict_condition est un dictionnaire utilisé par eficas -# pour les position='global_jdc' et position='inGetAttribut' -dict_condition={ -'ChoiceOfApproach': ('Interactions', 'Component'), -'Interactions' : ( 'Component'), -} - -TemporalAspects = PROC(nom ="TemporalAspects", - Simulated_Time_Laps = FACT(statut='o', max='**', - name = SIMP(statut='o', typ=(simulatedTime,'createObject'),), - initialTime = SIMP(statut='o', typ='R'), - finalTime = SIMP(statut='o', typ='R'), - timeDiscretization = SIMP(statut ='o', typ = 'TXM', into = ['Constant Time Step', 'Varying Time Step']), - bloc_Constant = BLOC (condition = 'timeDiscretization == "Constant Time Step"', - constantTimeStep = SIMP (statut ='o', typ = 'R'), - ), - bloc_Varying = BLOC (condition = 'timeDiscretization == "Varying Time Step"', - CFLNumberCriteria = SIMP (statut ='o', typ = 'R'), - FourierNumberCriteria = SIMP (statut ='o', typ = 'R'), - ), - ), -) - - - - -# -# ----------------------------------------- -SpatialAspects = PROC(nom='SpatialAspects', -# ----------------------------------------- - regles = (AU_MOINS_UN('SystemGeometry', 'SpatialDiscretization'),), - - SystemGeometry = FACT(statut='f', max='**', - SystemGeometryName = SIMP(statut='o', typ=(systemGeometry, 'createObject'),), - Shape = FACT(statut ='o', max='**', - ShapeIdentifier = SIMP(statut='o', typ=(cadShape,'createObject'),max='**',), - ShapeNature = SIMP(statut='o', typ='TXM', into=['Typical Geometry', 'CAD']), - - blocShape = BLOC(condition = 'Shape_Nature == "Typical Geometry"', - Box = SIMP(statut='o', typ='TXM', into=['Cube', 'Sphere','Cylinder'] ), - blocCube = BLOC(condition = 'Box == "Cube"', - #Taille_Box_Englobante = SIMP(statut='o', typ='R', max=3, min =3) - # derait etre un Tuple(3) mais a faire apres la projection - #Size_Of_Bounding_Box = SIMP(statut='o', typ=Tuple(3), validators=VerifTypeTuple(('R','R','R'),),) - Size_Of_Bounding_Box = SIMP(statut='o', typ='R', max=3, min=3, ), - ), # fin blocCube - blocBoule = BLOC(condition = 'Box == "Sphere"', - Center = SIMP(statut='o', typ='R', max=3, min =3), - ),# fin b_Boule - blocCylinder = BLOC(condition = 'Box == "Cylinder"', - Heigth = SIMP(statut="o", typ='R', val_min=0.0, ang='Nanotube length [m]'), - ),# fin blocCylinder - blocBouleOuCylinder = BLOC(condition = 'Box == "Sphere" or Box == "Cylinder"', - Radius = SIMP(statut='o', typ='R', val_min=0.0, ang='radius length [m]') , - ),# fin blocBouleOuCylinder - ), # fin blocShape - blocCAO = creeBlocPourLesFichiers("Shape_Nature == 'CAD'",'Domain', ['txt','I-deas', 'Gmsh', 'top',],None), - ), # fin Shape - ),# SystemGeometry - - SpatialDiscretization = FACT(statut='f', max="**", - MeshId = SIMP(statut='o', typ=(meshIdentifier,'createObject')), - MeshName = SIMP(statut='o', typ='TXM'), - blocMeshFile = creeBlocPourLesFichiers("1 == 1",'Mesh',listeFormatGenerique,None), - GroupIdentifier = SIMP(statut='o', typ=(meshGroup,'createObject'),max='**',), - ),# SpatialDiscretization - - BoundaryConstraints = FACT(statut = 'f', - Motion = FACT(statut='f', - MotionNature = SIMP(statut='o', typ='TXM', into=['Fixed boudary', 'Translational motion', 'Rotational motion', 'Scaling']), - - blocTranslationalMotion = BLOC(condition = 'MotionNature == "Translational motion"', - TranslationVelocity = SIMP(statut='o', typ='R'), - boundaries = SIMP(statut='o', typ=spatialRegion,max='**', homo='SansOrdreNiDoublon' ), - ), - blocRotationalMotion = BLOC(condition = 'MotionNature == "Rotational motion"', - RotationRate = SIMP(statut='o', typ='R'), - boundaries = SIMP(statut='o', typ=spatialRegion,max='**', homo='SansOrdreNiDoublon' ), - ), - blocFixed = BLOC(condition = 'MotionNature == "Fixed boudary"', - boundaries = SIMP(statut='o', typ=spatialRegion,max='**', homo='SansOrdreNiDoublon'), - ), - ), -#PN decrire page 28 - Mapping = FACT(statut='f', - ), - ), # Boundary_Constraints -) # fin Geometric_Domain - -TEXTE_NEW_JDC = "\ -Velocity=scalar()\ -" diff --git a/Vimmp/cata_CSAndCPS_v14_test_driver_1.comm b/Vimmp/cata_CSAndCPS_v14_test_driver_1.comm deleted file mode 100644 index 4777f2ce..00000000 --- a/Vimmp/cata_CSAndCPS_v14_test_driver_1.comm +++ /dev/null @@ -1,186 +0,0 @@ -Pressure=dynamicVariable() -Temperature=scalar() -Time1=simulatedTime() -CS_Num1=modeleNumDuCompo() -P1=userDiscrete() -CS_Num2=modeleNumDuCompo() -Group_From_Mesh1=meshGroup() -Group_From_Mesh2=meshGroup() -Average_Velocity=dynamicVariable() -K=scalar() -Epsilon=scalar() -outlet=meshGroup() -symmetry=meshGroup() -wall=meshGroup() -half_pipe_15_20=meshIdentifier() -half_pipe_3=meshIdentifier() -inlet1=meshGroup() -inlet2=meshGroup() -fluidfile=fileId() -interpolatedfile=fileId() -CS_Num1__CS_Num2_Velocity=interaction() -CS_Num1__CS_Num2_Epsilon=interaction() -CS_Num1__CS_Num2_Pressure=interaction() -Time2=simulatedTime() -Position=dynamicVariable() -U=dynamicVariableParticle() - -EnvironementAspects(WorkflowName='Inria', - WorkingDirectory='/tmp',); - -SpatialAspects(SpatialDiscretization=(_F(MeshId=half_pipe_15_20, - MeshName='half_pipe', - MeshFileFormat='Med', - MeshFileName=\ - '/home/eric/VIMMP/vimmptraining/app/fluide+mapper+particule/datafiles/half_pipe_15_20.med', - GroupIdentifier=(inlet1,inlet2,outlet,symmetry,wall,Group_From_Mesh1,),), - _F(MeshId=half_pipe_3, - MeshName='half_pipe_generation_tetra', - MeshFileFormat='Med', - MeshFileName=\ - '/home/eric/VIMMP/vimmptraining/app/fluide+mapper+particule/datafiles/half_pipe_3.med', - GroupIdentifier=(inlet1,inlet2,outlet,symmetry,wall,Group_From_Mesh2,),),),); - -TemporalAspects(Simulated_Time_Laps=(_F(name=Time1, - initialTime=0.0, - finalTime=10.0, - timeDiscretization='Constant Time Step', - constantTimeStep=0.1,), - _F(name=Time2, - initialTime=10.0, - finalTime=15.0, - timeDiscretization='Constant Time Step', - constantTimeStep=0.01,),),); - -FluidComponent=Component(SystemType='Continuum system', - PhysicalDescription=_F(ComplexFluid=False, - FlowNature='Turbulent', - DensityInitialisation=_F(DensityValueType='Value', - Density=1.17862,), - ViscosityInitialisation=_F(ViscosityValueType='Value', - Viscosity=0.0183,), - TurbulenceForFlowDynamics=_F(TurbulenceModellingType='One-point moment', - RANSModel='Turbulent-Viscosity Model (TVM)', - TVMChoice='K-Epsilon',), - DynamicalVariables=_F(VariablesSimulation=True, - PressureDefinition=_F(Pressure=Pressure, - Initialisation=_F(InitialisationType=\ - 'ByValue', - Value=None,), - SourceTerm=False,), - VelocityDefinition=_F(AverageVelocity=Average_Velocity, - Initialisation=_F(InitialisationType=\ - 'ByValue', - Value=None,), - SourceTerm=False,), - KDefinition=_F(Name=K, - Initialisation=_F(InitialisationType='ByValue', - Value=None,), - SourceTerm=False,), - EpsilonDefinition=_F(Name=Epsilon, - Initialisation=_F(InitialisationType=\ - 'ByValue', - Value=None,), - SourceTerm=False,),), - Thermal=_F(ThermalEffects='Non thermal', - ReferenceTemperature=293.15,), - Scalars=_F(withScalars=False,),), - NumericalModel=_F(Identifier=CS_Num1, - SimulatedTimeLapse=Time1, - ChoiceOfApproach='Field-based', - NumericalMethod='FV', - Solver='Code_Saturne', - MeshIdentifiers=(half_pipe_15_20,),), - BoundaryConditions=_F(BoundaryCondition=(_F(TypeOfBoundaryCondition='Inlet', - ApplyOnGroups=(inlet1,inlet2,), - ApplyOnStateVariable=(Average_Velocity,), - FormulationOfBoundary='Dirichlet', - Consigne=\ - 'Choose between InletProfile,IntegratedValue,IntegratedVectorValue ', - IntegratedVectorValue=_F(U=1.0, - V=0.0, - W=0.0,),), - _F(TypeOfBoundaryCondition='Inlet', - ApplyOnGroups=(inlet1,inlet2,), - ApplyOnStateVariable=(K,), - FormulationOfBoundary='Dirichlet', - Consigne=\ - 'Choose between InletProfile,IntegratedValue,IntegratedVectorValue ', - IntegratedValue=0.0,), - _F(TypeOfBoundaryCondition='Wall', - ApplyOnGroups=(wall,), - VelocityAtBoundary=_F(SlipVelocity=0.0, - WallMotion=_F(U=1.0, - V=0.0, - W=0.0,),), - LevelOfDescription=_F(WallFunction='2-scale model (Log law)',),),),),); - -PartComponent=Component(SystemType='Classical particle system', - PhysicalDescription=_F(AmbiantMediaInteraction=_F(MomentumExchange=_F(withMomentumExchange=True, - MomentumFieldType=('Hydrodynamic',),),), - DynamicalVariables=_F(VariablesSimulation=None, - PositionDefinition=_F(Position=Position,), - HydrodynamicSection=_F(U=U, - iiii=None,),), - Particles=_F(ParticleNature=None, - BondedInteractions=_F(TypeOfBondedInteraction='NoOne',),), - ParticleParticleInteraction=_F(UnbondedInteractions=_F(TypeOfUnbondedInteraction=\ - 'No',),),), - NumericalModel=_F(Identifier=CS_Num2, - SimulatedTimeLapse=Time2, - ChoiceOfApproach='N-Particle_Method', - NumericalMethod='CFD_Discrete_N-Particle_Method', - Solver='Code_Saturne', - MeshIdentifiers=(half_pipe_3,),), - BoundaryConditions=_F(BoundaryCondition=_F(TypeOfBoundaryCondition='Wall', - ApplyOnGroups=(wall,), - VelocityAtBoundary=_F(SlipVelocity=0.0, - WallMotion=_F(U=0.0, - V=0.0, - W=0.0,),), - LevelOfDescription=_F(),),),); - -MedCouplingComponent=Interpolator(InterpolatorType='Med Coupling', - TargetMeshIdentifier=half_pipe_3, - InterpolationType='P0P0',); - -Interactions(IOAspects=_F(FileTransfer=(_F(TransferId=fluidfile, - FileFormat='Med', - FileName='results_Fluid_domain.med',), - _F(TransferId=interpolatedfile, - FileFormat='Med', - FileName='results_Fluid_Interpolated_Velocity.med',),),), - Interaction=(_F(InteractionName=CS_Num1__CS_Num2_Velocity, - From=CS_Num1, - To=CS_Num2, - InvolvedStateVariable=Average_Velocity, - InteractionConfiguration=_F(OutputId=fluidfile, - FieldName='Velocity', - CouplingMode='DataProcessing', - DataProcessingNode=_F(Tool=MedCouplingComponent, - OutputId=interpolatedfile, - FieldName='Velocity', - FieldNature='IntensiveMaximum',),),), - _F(InteractionName=CS_Num1__CS_Num2_Epsilon, - From=CS_Num1, - To=CS_Num2, - InvolvedStateVariable=Epsilon, - InteractionConfiguration=_F(OutputId=fluidfile, - FieldName='epsilon', - CouplingMode='DataProcessing', - DataProcessingNode=_F(Tool=MedCouplingComponent, - OutputId=interpolatedfile, - FieldName='epsilon', - FieldNature='IntensiveMaximum',),),), - _F(InteractionName=CS_Num1__CS_Num2_Pressure, - From=CS_Num1, - To=CS_Num2, - InvolvedStateVariable=Pressure, - InteractionConfiguration=_F(OutputId=fluidfile, - FieldName='Pressure', - CouplingMode='DataProcessing', - DataProcessingNode=_F(Tool=MedCouplingComponent, - OutputId=interpolatedfile, - FieldName='Pressure', - FieldNature='IntensiveMaximum',),),),),); -#CHECKSUM:e9f00dca4915a88e21454e2f0a9ce31a -:FIN CHECKSUM \ No newline at end of file diff --git a/Vimmp/cata_CSAndCPS_v15.py b/Vimmp/cata_CSAndCPS_v15.py deleted file mode 100644 index 05863eb9..00000000 --- a/Vimmp/cata_CSAndCPS_v15.py +++ /dev/null @@ -1,1558 +0,0 @@ -from Accas import * - -class composant(ASSD):pass -class mapper(ASSD):pass -class converter(mapper):pass -class interpolator(mapper):pass -class modeleNumDuCompo(UserASSD):pass -class especeChimique(UserASSD):pass -class userParticle(UserASSD) :pass -class userAtom(userParticle) :pass -class userMolecule(userParticle) :pass -class userDiscrete(userParticle) :pass -class userDPD(userParticle) :pass - -class spatialRegion(UserASSD):pass -class cadShape(spatialRegion):pass -#class meshGroup(spatialRegion,UserASSDMultiple):pass -class meshGroup(UserASSDMultiple):pass -class meshIdentifier(spatialRegion):pass -class systemGeometry(UserASSD):pass -class simulatedTime(UserASSD):pass -class constitutiveRelation(UserASSD):pass -class interaction(UserASSD):pass -class transferId(UserASSD):pass -class fileId(transferId):pass -class memoryId(transferId):pass -class corbaId(transferId):pass - -class stateVariable(UserASSDMultiple) : pass -class scalar(stateVariable):pass -class dynamicVariable(stateVariable):pass -class dynamicVariableParticle(stateVariable):pass -class wallInteractionId(UserASSD):pass - - -dictTypModNumModNum = { - ('Continuum system','Particle_based') : ('SPH' , 'Lagrangian one-fluid-particle pdf'), #TODO 'Particle_based --> Particle_based - ('Continuum system','Field_based') : ('FV' , 'FEM', 'Spectral method'), - ('Classical particle system','Particle_based') : ('MD' , 'DPD', 'SDPD','SPH','CFD_Discrete_Particle_based'), - ('Classical particle system','Field_based') : ('LBM' ,), - ('Quantum system','Particle_based') : ('Particle method',), - ('Quantum system','Field_based') : ('Wave',), -} - -dictCodeModeleNumerique = { - 'Code_Saturne' : ('Lagrangian one-fluid-particle pdf', 'FV', 'CFD_Discrete_Particle_based',), - 'Fluent' : ('FV',), - 'Culgi Package': (), - 'DEM_SD' : ('Lagrangian one-fluid-particle pdf', 'FV', 'CFD_Discrete_Particle_based',), - 'DFTB+' : ('density functional tight binding method',), - 'DL_MESO_DPD' : ('Lagrangian one-fluid-particle pdf', 'FV', 'CFD_Discrete_Particle_based',), - 'DL_MESO_LBE' : ('Lagrangian one-fluid-particle pdf', 'FV', 'CFD_Discrete_Particle_based',), - 'DL_POLY_4' : ('Lagrangian one-fluid-particle pdf', 'FV', 'CFD_Discrete_Particle_based',), - 'GROMACS' : ('Lagrangian one-fluid-particle pdf', 'FV', 'CFD_Discrete_Particle_based',), - 'GROMACS_LS' : ('Lagrangian one-fluid-particle pdf', 'FV', 'CFD_Discrete_Particle_based',), - 'LAMMPS' : ('Lagrangian one-fluid-particle pdf', 'FV', 'CFD_Discrete_Particle_based',), - 'NWChem' : ('Lagrangian one-fluid-particle pdf', 'FV', 'CFD_Discrete_Particle_based',), - 'OpenFOAM' : ('Lagrangian one-fluid-particle pdf', 'FV', 'CFD_Discrete_Particle_based',), - 'Quantum EXPRESSO' : ('Particle method', 'Wave',), - 'RHEO_AGGRATE' : ('Particle method', 'Wave',), - 'RHEO_DROP' : ('Particle method', 'Wave',), - 'STAR_CCM+' : ('FV', 'Particles',), - 'Code Nill' : ('Spectral method', ), -} -# Le Code Nill est ajouté en dur au Solver - -dictCodeFormat = { - 'Code_Saturne' : ('Med', 'cgns', 'msh', 'des', 'unv', ), - 'Culgi Package': ('cof',), - 'DEM_SD' : ('geo', 'ascii'), - 'DFTB+' : ('geo', 'ascii'), - 'Fluent' : ('FluentFormat', ), - 'OpenFOAM' : ('OpenFoamFormat', 'Med', ), -} - -dictInterpolatorFormat = { - 'Med Coupling' : ('Med',), -} -dictConvertorFormat = { - 'Gmsh' : ('Med', 'OpenFoamFormat'), -} - -dictTermeLE = { - ('Fields','Particles') : ('Fluid_Velocity_Field', - 'Fluid_Temperature_Field', - 'Fluid_Species_Mass_Fraction_Fluid',), - ('Particles','Fields') : ('Fluid_Particle_Momentum_Exchange_Field', - 'Fluid_Particle_Thermal_Exchange_Field', - 'Lagrangian one-particle pdfFluid_Particle_Mass_Source_Field', - 'Particle_Volumetric_Concentration_Modified_Fluid_Viscosity', - 'Particle_Extra_Stress_Tensor'), - ('Particles','Particles') : ('Pas encore fait'), - ('Fields','Fields') : ('Pas encore fait'), -} - -dictCodeConvertisseur = { - ('Saturne', 'OpenFOAM') : ('gmsh', 'Saturne2CDM and CDM2OpenFoam'), - ('Saturne', 'Fluent') : ('Saturne2CDM and CDM2Fluent'), - ('Fluent', 'OpenFOAM') : ('Fluent2CDM and CDM2OpenFoam'), -} - -listeFormatGenerique =['Med', 'Cgns', 'Gmsh', ] - -#---------------------------------------- -def prepareBlocSystemType(systemType) : -#---------------------------------------- - condition = "SystemType == '" + systemType + "'" - Identifier = SIMP(statut='o', typ=(modeleNumDuCompo,'createObject'),) - SimulatedTimeLapse = SIMP(statut ='o', typ = simulatedTime) - ChoiceOfApproach = SIMP(statut='o', typ='TXM', into=['Field_based', 'Particle_based'], position='inGetAttribut') - - dicoArgs={} - - for typeMod in ('Field_based', 'Particle_based'): - conditionType = "ChoiceOfApproach == '" + typeMod + "'" - NumericalMethod = SIMP(statut='o',typ='TXM', into=dictTypModNumModNum[systemType, typeMod], - position='global', intoXML=allValueInDict(dictTypModNumModNum)) - dicoBloc = {} - for modeleNumerique in list(dictTypModNumModNum[systemType,typeMod]): - conditionNum = "NumericalMethod == '" + modeleNumerique + "'" - setCode = set() - for code in dictCodeModeleNumerique.keys(): - if modeleNumerique in dictCodeModeleNumerique[code]: setCode.add(code) - # print('------------- conditionType -------->',conditionType) - if setCode ==set(): setCode.add('Code Nill') - Solver = SIMP(statut='o', typ='TXM', into=list(setCode), intoXML=list(dictCodeModeleNumerique.keys()) ) - monNomBloc = 'bloc_ModelName_' + modeleNumerique.replace(' ','_') #les noms de blocs ne peuvent pas avoir de blanc ! - if setCode !=set(): dicoBloc[monNomBloc]=BLOC(condition=conditionNum, nomXML='b_ModelName',Solver=Solver) - dicoArgs['blocModelType'+typeMod] = BLOC(condition=conditionType, NumericalMethod=NumericalMethod, **dicoBloc) - - blocMeshRef = BLOC(condition = '( (ChoiceOfApproach == "Field_based") and (NumericalMethod == "FV") ) or ' - '( (ChoiceOfApproach == "Particle_based") and (NumericalMethod == "CFD_Discrete_Particle_based") )', - MeshIdentifiers = SIMP(statut ='o', max ='**', typ = meshIdentifier, - metAJour=(('ApplyOnGroups', - 'self.etape.getChild("BoundaryConditions").getChild("BoundaryCondition")'),), - ),) - dicoArgs['blocMeshRef'] = blocMeshRef - NumericalModel = FACT(statut='o', max= '**', Identifier=Identifier, ChoiceOfApproach=ChoiceOfApproach, - SimulatedTimeLapse=SimulatedTimeLapse, **dicoArgs) - return BLOC(condition=condition, nomXML='b_systemType', NumericalModel=NumericalModel) - - -#----------------------------------- -def calculCommun(key1, key2, dico): -#----------------------------------- -# retourne la liste des valeurs communes a dico[key1] et dico[key2] - monSet=set() - if not key1 in dico: return () - if not key2 in dico: return () - for val in dico[key1]: - if val in dico[key2]: - monSet.add(val) - if monSet == set() : monSet.add ('No common format') - return list(monSet) - -#------------------------- -def allValueInDict(dico): -#------------------------- -# retourne la liste de toutes les valeurs possibles dans dico - monSet=set() - for clef in dico : - for val in dico[clef] : monSet.add(val) - return monSet - -#-------------------------------------------------------------------------------------------------- -def creeBlocPourLesFichiers(laCondition, Prefixe='Empty', ListeFormats=[], FieldName=None): -#--------------------------------------------------------------------------------------------------- -# il faut reflechir pour parametrer NomDuFichier -# et le type (existing... du fichier) -# et utiliser le creeBlocPourLesFichiers - SIMPFormatFichier = SIMP(statut='o', typ = 'TXM', into = tuple(ListeFormats) + ('All',), defaut='All' ) - dicoDesBlocs = {} - NomDuFichier = Prefixe+'FileName' - formatName = Prefixe+'FileFormat' - dicoDesBlocs[formatName] = SIMPFormatFichier - ListeFormatsboucle = tuple(ListeFormats) + ('All',) - for formatFich in ListeFormatsboucle : - dicoArgs={} - nomBloc = 'blocFormatFichier' + str(formatFich) - typeDesFichiers = ('Fichier', formatFich + " Files (*." + formatFich + ");;All Files (*)",'Sauvegarde') - blocCondition = formatName + " == '" + formatFich + "'" - dicoArgs[NomDuFichier] = SIMP(statut='o', typ = typeDesFichiers, nomXML=NomDuFichier ) - dicoDesBlocs[nomBloc] = BLOC(condition = blocCondition, **dicoArgs) - if FieldName: - SIMPFieldName = SIMP(statut='o', typ = 'TXM',) - dicoDesBlocs[FieldName] = SIMPFieldName - return BLOC(condition=laCondition, **dicoDesBlocs) - -#--------------------------------------------------------------------- -def prepareBlocAmbiantMediaField(condition, nomDuFact, nomDelaContante) : -#--------------------------------------------------------------------- - dicoDesBlocs = {} - dicoDuFact = {} - dicoDuFact[nomDelaContante] = SIMP(typ='TXM', statut='o', defaut = nomDelaContante, homo='constant') - monFact = FACT ( statut ='o', - **dicoDuFact, - SteadyState = SIMP(typ=bool, statut ='o', defaut = True,), - blocSteadyState = BLOC(condition = 'SteadyState == True', - FieldOrigin = SIMP(statut='o', into =['File', 'Value','Interaction'], typ ='TXM',), - blocValue = BLOC(condition = 'FieldOrigin == "Value"', - ConstantValue = SIMP(statut ='o', typ='R'), - ), - blocFile = creeBlocPourLesFichiers('FieldOrigin == "File"', 'Position', ('Med', 'cgns' ), ''), - blocInteraction = BLOC(condition = 'FieldOrigin == "Interaction"', - InteractionName = SIMP(typ=interaction,statut='o'), - Consigne = SIMP(statut="o", homo="information", typ="TXM", defaut='Create and choose suitable interaction'), - ), - ), - blocConsigne = BLOC(condition = 'SteadyState == False', - Consigne = SIMP(statut="o", homo="information", typ="TXM", defaut='Not implemented yet. Will ask for a range of calculation steps.'), - ), #BlocNotSteady - FieldAppliesOnAllSpecies = SIMP(statut='o', typ=bool, defaut=True), - blocPorteEspece = BLOC(condition = 'FieldAppliesOnAllSpecies == False ', - AppliesToSpecies = SIMP(statut='o', typ=userParticle, max= '**', homo='SansOrdreNiDoublon'), # faire un typ = "espece" - ), - ) - dicoDesBlocs[nomDuFact] = monFact - return BLOC(condition=condition,**dicoDesBlocs) - -#------------------------------ -def prepareTermeSource(condition): -#------------------------------ - return BLOC (condition=condition, - OriginOfSourceTerm = SIMP(statut='o', typ='TXM',into=['Interaction', 'Chemical Reaction', 'Other Scalar']), - blocOriginOfSourceTermInteraction = BLOC(condition = 'OriginOfSourceTerm == "Interaction"', - SourceTermInteraction = SIMP(typ=interaction,statut='o'), - Consigne = SIMP(statut="o", homo="information", typ="TXM", defaut='Create and choose suitable interaction'), - ), - blocOriginOfSourceTermOtherScalar = BLOC(condition = 'OriginOfSourceTerm == "Other Scalar"', - TakenFrom = SIMP (statut ='o', typ=scalar, ), #PNPN A FAIRE : fenetreIhm='menuDeroulant' - ), - ) - -#------------------------------ -def prepareTermeSourceDynVar(condition): -#------------------------------ - return BLOC (condition=condition, - OriginOfSourceTerm = SIMP(statut='o', typ='TXM',into=['Interaction', 'Other Particle']), - blocOriginOfSourceTermInteraction = BLOC(condition = 'OriginOfSourceTerm == "Interaction"', - SourceTermInteraction = SIMP(typ=interaction,statut='o'), - Consigne = SIMP(statut="o", homo="information", typ="TXM", defaut='Create and choose suitable interaction'), - ), - blocOriginOfSourceTermOtherScalar = BLOC(condition = 'OriginOfSourceTerm == "Other Particle"', - TakenFrom = SIMP (statut ='o', typ=userParticle, ), #PNPN A FAIRE : fenetreIhm='menuDeroulant' - ), - ) - -#------------------------------------------------------ -def prepareFactTurbulence(statut, ajout=None , position=None, positionChoice=None): -#------------------------------------------------------ - listInto = ['Fully resolved (DNS)', 'Spatial filtering (LES)', 'One-point moment', 'One-point PDF'] - if ajout != None : listInto.append(ajout) - return FACT(statut=statut, - TurbulenceModellingType = SIMP(typ='TXM', statut='o', into =listInto, position=position ), - -# --------------- One-point moment ------------------ - blocOnePoint = BLOC(condition= "TurbulenceModellingType == 'One-point moment'", - RANSModel = SIMP(statut="o", typ="TXM", position='global', - into=['Turbulent-Viscosity Model (TVM)', 'Reynolds Stress Model (RSM)']), - blocTVM = BLOC(condition= "RANSModel == 'Turbulent-Viscosity Model (TVM)'", - TVMChoice = SIMP(typ='TXM', statut='o', into=['K-Epsilon', 'K-Omega'] , position=positionChoice), ##PN PN : parametre vs reCalculeEtape - ), # fin blocTVM - blocRSM = BLOC(condition = "RANSModel == 'Reynolds Stress Model (RSM)'", - RSMChoice = SIMP(typ='TXM', statut='o', into=['Rotta', 'LRR-IP','LRR-QI','SSG'], position=positionChoice), - ), # fin blocRSM - ), # fin bloc_one_point - -# --------------- Spatial filtering (LES) ------------------ - blocOneSpatial = BLOC(condition = "TurbulenceModellingType == 'Spatial filtering (LES)'", - ChoiceOfDescription = SIMP(typ='TXM', statut='o', into=['One-point filtered variables', 'Filtered Density Function (FDF)']), - blocOnePoint = BLOC(condition = "ChoiceOfDescription == 'One-point filtered variables'", - SubgridScaleModel = SIMP(typ='TXM', statut='o', into=['No SGS', 'Smagorinsky','Dynamical model', 'SGS Transport Equations']), - ),# fin bloc_OnePoint - blocFDF = BLOC(condition = "ChoiceOfDescription == 'Filtered Density Function (FDF)'", - SubgridScaleModel = SIMP(typ='TXM', statut='o', into=['SLM model for SGS', 'Viscous SLM model for SGS']), - ),# fin bloc_FDF - ), # fin bloc_one_spatial - -# --------------- One-point PDF ------------------ - blocOnePointPdf = BLOC(condition = "TurbulenceModellingType == 'One-point PDF'", - ChoiceOfDescription = SIMP(typ='TXM', statut='o', into=['Velocity PDF', 'Velocity frequency PDF']), - blocVPdf = BLOC(condition = "ChoiceOfDescription == 'Velocity PDF'", - StochasticModel = SIMP(typ='TXM', statut='o', into=['SLM','GLM'], defaut='SLM'), - ), # fin blocVPdf - blocVFPdf = BLOC(condition = "ChoiceOfDescription == 'Velocity frequency PDF'", - StochasticModel = SIMP(typ='TXM', statut='o', into=['Log-normal model','Gamma model','User-defined form'], defaut='SLM'), - ), # fin blocVFPdf - ), # fin bloc_one_point_pdf - -# --------------- Fully resolved (DNS) ------------------ - # blocNoModel = BLOC(condition = "TurbulenceModellingType == 'Fully resolved (DNS)'", - # ChoiceOfApproach = SIMP(statut='o', typ='TXM', into=['Field_based (DNS)', 'Particle_based']), - # blocField = BLOC(condition = "ChoiceOfApproach == 'Field_based (DNS)'", - # NumericalMethod = SIMP(statut='o', typ='TXM', into=['FV', 'Spectral Method'], - # intoXML=['FV', 'Spectral Method','SPH', 'Vortex Method']), - # ),# fin bloc_Field - # blocNParticle = BLOC(condition = "ChoiceOfApproach == 'Particle_based'", - # NumericalMethod = SIMP(statut='o', typ='TXM', into=['SPH', 'Vortex Method'], - # intoXML=['FV', 'Spectral Method','SPH', 'Vortex Method']), - # ),# fin bloc_N_particle - # ), # fin bloc_no_model - ) # fin du return de la fonction factTurbulence - -#------------------------------------------------------ -def prepareFactTurbulenceForParticule(): -#------------------------------------------------------ - listInto = ['Fully resolved (DNS)', 'Spatial filtering (LES)', 'One-point moment', 'One-point PDF'] - return FACT(statut='o', - NatureOfFlow = SIMP(typ='TXM', statut='o', into =['Laminar', 'Turbulent'], position='global'), - blocTurbulent = BLOC( condition = 'NatureOfFlow == "Turbulent"', - TurbulenceModellingType = SIMP(typ='TXM', statut='o', into =listInto,), -# --------------- One-point moment ------------------ - blocOnePoint = BLOC(condition= "TurbulenceModellingType == 'One-point moment'", - RANSModel = SIMP(statut="o", typ="TXM", into=['Turbulent-Viscosity Model (TVM)', 'Reynolds Stress Model (RSM)']), - ), # fin bloc_one_point - -# --------------- Spatial filtering (LES) ------------------ - blocOneSpatial = BLOC(condition = "TurbulenceModellingType == 'Spatial filtering (LES)'", - ChoiceOfDescription = SIMP(typ='TXM', statut='o', into=['One-point filtered variables', 'Filtered Density Function (FDF)']), - ), # fin bloc_one_spatial - -# --------------- One-point PDF ------------------ - blocOnePointPdf = BLOC(condition = "TurbulenceModellingType == 'One-point PDF'", - ChoiceOfDescription = SIMP(typ='TXM', statut='o', into=['Velocity PDF', 'Velocity frequency PDF']), - ), # fin bloc_one_point_pdf - #TypeOfHydroDynamicForce - blocTMD = BLOC(condition ='NatureOfFlow == "Turbulent" and "Drag" in TypeOfHydroDynamicForce', - TurbulenceModelDispersion = SIMP (statut ='o', typ='TXM', into = ['Langevin']), - BlocInitialisationLangevin = BLOC(condition ='TurbulenceModelDispersion == "Langevin"', - InitialisationType = SIMP(statut='o', into =['ByInteraction', 'ByFile' ], typ ='TXM', ), - blocByFile = creeBlocPourLesFichiers('OrigineType == "ByFile"', '', ListeFormats = 'all', FieldName=None), - blocByInteraction = BLOC(condition = 'InitialisationType == "ByInteraction"', - Consigne = SIMP(statut="o", homo="information", typ="TXM", defaut='Create and choose suitable interactions'), - InteractionNameForPressure = SIMP(typ=interaction,statut='o'), - InteractionNameForVelocity = SIMP(typ=interaction,statut='o'), - InteractionNameForEpsilon = SIMP(typ=interaction,statut='o'), - InteractionNameForRij = SIMP(typ=interaction,statut='o'), - ), - ), - ), - ),# fin bloc Turbulent - ) # fin du return de la fonction factTurbulence - -#------------------------------------------------------ -def prepareFactTurbulenceScalaire(statut, ajout=None , position=None): -#------------------------------------------------------ - listInto = ['Fully resolved (DNS)', 'Spatial filtering (LES)', 'One-point moment', 'One-point PDF'] - if ajout != None : listInto.append(ajout) - return FACT(statut=statut, - TurbulenceModellingType = SIMP(typ='TXM', statut='o', into =listInto, position=position ), - -# --------------- One-point moment ------------------ - blocOnePoint = BLOC(condition= "TurbulenceModellingType == 'One-point moment'", - RANSModel = SIMP(statut="o", typ="TXM", - into=['Algebraic flux models','Turbulent diffusivity models', 'Scalar-flux transport equations']), - # Ce bloc consigne ne passe pas dans la projection XSD - # blocAlgebraic = BLOC(condition= "RANSModel == 'Algebraic flux models'", - blocConsigne = BLOC(condition= "RANSModel == 'Algebraic flux models'", - Consigne = SIMP(statut="o", homo="information", typ="TXM", defaut='Not implemented yet'), - ), # fin blocAlgebraic - blocTDM = BLOC(condition = "RANSModel == 'Turbulent diffusivity models'", - TDMChoice = SIMP(typ='TXM', statut='o', into=['SGDH', 'GGDH',]), - ), # fin blocTDM - blocSFTE = BLOC(condition = "RANSModel == 'Scalar-flux transport equations'", - SFTEChoice = SIMP(typ='TXM', statut='o', into=['Pressure-scrambling model', 'EB-DFM',]), - ), # fin blocSFTE - ), # fin bloc_one_point - -# --------------- Spatial filtering (LES) ------------------ - blocOneSpatial = BLOC(condition = "TurbulenceModellingType == 'Spatial filtering (LES)'", - ChoiceOfDescription = SIMP(typ='TXM', statut='o', into=['One-point filtered variables', 'Filtered Density Function (FDF)']), - blocOnePoint = BLOC(condition = "ChoiceOfDescription == 'One-point filtered variables'", - SubgridScaleModel = SIMP(typ='TXM', statut='o', into=['No SGS model', 'SGS diffusivity', 'Transport eqs. for SGS scalar fluxes']), - ),# fin bloc_OnePoint - blocFDF = BLOC(condition = "ChoiceOfDescription == 'Filtered Density Function (FDF)'", - SubgridScaleModel = SIMP(typ='TXM', statut='o', into=['Composition FDF', 'Scalar-velocity FDF', 'Micro-mixing model']), - ),# fin bloc_FDF - ), # fin bloc_one_spatial - -# --------------- One-point PDF ------------------ - blocOnePointPdf = BLOC(condition = "TurbulenceModellingType == 'One-point PDF'", - ChoiceOfDescription = SIMP(typ='TXM', statut='o', into=['Composition PDF','Velocity PDF', 'Micro-mixing models']), - # blocCPdf = BLOC(condition = "(ChoiceOfDescription == 'Composition PDF') or (ChoiceOfDescription == 'Velocity PDF')", - # blocConsigne = BLOC(condition = "(ChoiceOfDescription == 'Composition PDF') or (ChoiceOfDescription == 'Velocity PDF')", - # Consigne = SIMP(statut="o", homo="information", typ="TXM", defaut='Not implemented yet.'), - # ), # fin blocCPdf - # blocVPdf = BLOC(condition = "ChoiceOfDescription == 'Velocity PDF'", - # ), # fin blocVPdf - blocMMMPdf = BLOC(condition = "ChoiceOfDescription == 'Micro-mixing models'", - ChoiceOfModel = SIMP(typ='TXM', statut='o', into=['IEM/CIEM','Curl model','Mapping','EMST'],), - ), # fin blocMMMdf - ), # fin bloc_one_point_pdf - -# --------------- Fully resolved (DNS) ------------------ - # blocNoModel = BLOC(condition = "TurbulenceModellingType == 'Fully resolved (DNS)'", - # ChoiceOfApproach = SIMP(statut='o', typ='TXM', into=['Field_based (DNS)', 'Particle_based']), - # blocField = BLOC(condition = "ChoiceOfApproach == 'Field_based (DNS)'", - # NumericalMethod = SIMP(statut='o', typ='TXM', into=['FV', 'Spectral Method'], - # intoXML=['FV', 'Spectral Method','SPH', 'Vortex Method']), - # ),# fin bloc_Field - # blocNParticle = BLOC(condition = "ChoiceOfApproach == 'Particle_based'", - # NumericalMethod = SIMP(statut='o', typ='TXM', into=['SPH', 'Vortex Method'], - # intoXML=['FV', 'Spectral Method','SPH', 'Vortex Method']), - # ),# fin bloc_N_particle - # ), # fin bloc_no_model - ) # fin du return de la fonction factTurbulence - - -#-------------------- -def prepareBlocCPS(): -#-------------------- - return BLOC(condition = 'SystemType == "Classical particle system"', - - Particles = prepareParticles(), -#------------------------------- AmbiantMediaInteraction ---------------------------------- - AmbiantMediaInteraction = FACT(statut='o', - MomentumExchange = FACT(statut='o', - withMomentumExchange = SIMP(statut='o', typ=bool, defaut=False), - blocMomentum = BLOC(condition = 'withMomentumExchange == True', - MomentumFieldType = SIMP(statut='o', typ='TXM', into=['Gravitational','Electric','Magnetic', 'Hydrodynamic'], max='**', homo='SansOrdreNiDoublon',position='reCalculeEtape'), - blocElectric = prepareBlocAmbiantMediaField('MomentumFieldType != None and "Electric" in MomentumFieldType', 'DefineElectricForce', 'E') , - blocMagnetic = prepareBlocAmbiantMediaField('MomentumFieldType != None and "Magnetic" in MomentumFieldType', 'DefineMagneticForce', 'B') , - blocGravite = BLOC(condition = 'MomentumFieldType != None and "Gravitational" in MomentumFieldType', - DefineGravityForce = FACT (statut='o', - InitialisationType = SIMP(statut='o', into =['ByValue', 'ByFile' ], typ ='TXM', defaut='ByValue'), - blocInitValue= BLOC(condition = 'InitialisationType == "ByValue"', - G = SIMP(statut='o', typ='R', defaut=9.81), - Direction = FACT (statut ='o', - GX = SIMP(statut='o', typ='R', ), - GY = SIMP(statut='o', typ='R', ), - GZ = SIMP(statut='o', typ='R', ), - ), - ), # fin blocInitValue - #PN : a completer pour fichier - FieldAppliesOnAllSpecies = SIMP(statut='o', typ=bool, defaut=True), - blocPorteEspece = BLOC(condition = 'FieldAppliesOnAllSpecies == False ', - AppliesToSpecies = SIMP(statut='o', typ=userParticle, max= '**', homo='SansOrdreNiDoublon'), # faire un typ = "espece" - ), - ), # Fact Gravite - ), # bloc Gravite - blocHydro = BLOC(condition = 'MomentumFieldType != None and "Hydrodynamic" in MomentumFieldType', - DefineForceOnParticle = FACT (statut='o', - TypeOfHydroDynamicForce = SIMP(statut='o', max='**', typ='TXM', into=['Drag', 'Lift', 'Fluid Pressure Gradient', 'ThermoPhoresis', 'Brownian Motion'], homo='SansOrdreNiDoublon', position='global'), - - FieldAppliesOnAllSpecies = SIMP(statut='o', typ=bool, defaut=True), - blocPorteEspece = BLOC(condition = 'FieldAppliesOnAllSpecies == False ', - AppliesToSpecies = SIMP(statut='o', typ=userParticle, max= '**', homo='SansOrdreNiDoublon'), # faire un typ = "espece" - ), - NatureOfFluidForce = prepareFactTurbulenceForParticule() - ), - ), - ), # fin blocMomentum - ), # fin MomentumExchange - MassExchange = FACT(statut='o', - withMassExchange = SIMP(statut='o', typ=bool, defaut=False), - blocMassExchange = BLOC(condition = 'withMassExchange == True', - MassExchangeFieldType = SIMP(statut='o', typ='TXM', into=['Evaporation','Condensation','Precipitation'], max='**', homo='SansOrdreNiDoublon',), - ), # fin blocMassExchange - ), # fin MassExchange - EnergyExchange = FACT(statut='o', - withEnergyExchange = SIMP(statut='o', typ=bool, defaut=False), - blocEnergyExchange = BLOC(condition = 'withEnergyExchange == True', - EnergyExchangeFieldType = SIMP(statut='o', typ='TXM', into=['HeatTransfer','Radiation','Combustion'], max='**', homo='SansOrdreNiDoublon',), - ), # fin blocMassExchange - ), # fin EnergyExchange - AmbientInducedProcesses = FACT(statut='o', - withAmbientInducedProcesses = SIMP(statut='o', typ=bool, defaut=False), - blocAmbientInducedProcesses = BLOC(condition = 'withAmbientInducedProcesses == True', - AmbientInducedProcessesType= SIMP(statut='o', typ='TXM', into=['Fragmentation',], max='**', homo='SansOrdreNiDoublon',), - bAmbientInducedProcessesType = BLOC(condition = '(AmbientInducedProcessesType != None) and ("Fragmentation" in AmbientInducedProcessesType)', - #PN : pb dans les locaux et l operateur in - LevelOfDescription= SIMP(statut='o', typ='TXM', into=['Fully-resolved','Mean-field approaches']), - bMeanField = BLOC(condition = "LevelOfDescription == 'Mean-field approaches'", - FragmentationRate = SIMP(statut='o', typ='R'), - DaughterSizeDistribution = SIMP(statut='o', typ='R'), - ), - ), - ), # fin AmbientInducedProcesses - ), # fin EnergyExchange - AdditionalSamplingOfAmbientMedia = FACT(statut='o', - withAdditionalSamplingOfAmbientMedia = SIMP(statut='o', typ=bool, defaut=False), - blocAdditionalSamplingOfAmbientMedia = BLOC(condition = 'withAdditionalSamplingOfAmbientMedia == True', - FluidProperties = FACT(statut='o', - VelocityGradient = SIMP(statut='o', typ = bool, defaut=False), - PressureGradient = SIMP(statut='o', typ = bool, defaut=False), - ), - ), # fin blocblocAdditionalSamplingOfAmbientMedia - ), # fin AdditionalSamplingOfAmbientMedia - ), # fin AmbiantMediaInteraction - - - - ParticleParticleInteraction = FACT(statut='o', max = "**", - # -------------------------------------------------------# - BondedInteractions = prepareBondedInteractions(), - ActionsAtDistance = prepareActionsAtDistance(), - ContactPhenomena = prepareContactPhenomena(), - ), # fin ParticleParticleInteraction - - ParticleWallInteraction = FACT(statut='o', max = "**", - withParticleWallInteraction = SIMP(statut='o', typ =bool, defaut=False), - bwithParticleWallInteraction = BLOC (condition = 'withParticleWallInteraction == True', - ParticleWallInteractionId= SIMP(typ=(wallInteractionId,'createObject'), statut='o',), - TypeOfWall = FACT(statut='o', - Dynamics = SIMP(statut='o', typ='TXM', into = ('Fixed position','Moving wall'),), - LevelOfDescription = SIMP(statut='o', typ='TXM', into = ('Discretized particles','Continuum'),), - bContinuum = BLOC(condition = 'LevelOfDescription == "Continuum"', - SurfaceTexture = SIMP(statut='o', typ='TXM', into = ('Smooth','Rough'),), - ), - bDiscretized = BLOC(condition = 'LevelOfDescription == "Discretized particles"', - BondedInteractions = prepareBondedInteractions(True), - ), - ), - ActionsAtDistance = prepareActionsAtDistanceForWall(), - ContactPhenomena = prepareContactPhenomenaWall(), - ), - ),# fin ParticleWallInteraction - - ConstraintsAndReducedStatisticalDescription = FACT(statut='o', - Constraint= FACT(statut='o', - TypeOfConstraint = SIMP( typ='TXM', statut='o', into=['Quasi-static_methods','Brownian_dynamics','Presumed_transport','Time-marching_equilibrium','Time-marching_non-equilibrium'],defaut=['Time-marching_non-equilibrium',], max ='**', position='reCalculeEtape', homo='SansOrdreNiDoublon'), - ), - ), - -# transparents 163 et 164 -# si brownian Diameter mass et position -# Presumed transport -# No particle transport --> -# givencenter-of-mass transport __> position sera presente mais given transport - - StateVector = FACT(statut ='o', - ParticleDiameter = FACT(statut ='o', - Diameter = SIMP(typ=(dynamicVariable,'createObject'), statut='o', defaut ='Diameter', homo='constant'), - ToSimulate = SIMP(typ=bool, statut ='o', defaut = True,), - blocSimulatedDiameter = prepareBlocInitialisationParticle(condition = 'ToSimulate == True', termeSource=True), - #blocNoSimulatedDiameter = prepareBlocOrigine(condition = 'ToSimulate == False'), - ), - ParticleMass = FACT(statut ='o', - Mass = SIMP(typ=(dynamicVariable,'createObject'), statut='o', defaut ='Mass', homo='constant'), - ToSimulate = SIMP(typ=bool, statut ='o', defaut = True,), - blocSimulatedMass = prepareBlocInitialisationParticle(condition = 'ToSimulate == True', termeSource=True), - #blocNoSimulatedMass = prepareBlocOrigine(condition = 'ToSimulate == False'), - ), - ParticlePosition = FACT(statut ='o', - Position = SIMP(typ=(dynamicVariable,'createObject'), statut='o', defaut ='Position', homo='constant'), - ToSimulate = SIMP(typ=bool, statut ='o', defaut = True,), - blocSimulatedPosition = prepareBlocInitialisationParticle(condition = 'ToSimulate == True', termeSource=False), - blocNoSimulatedPosition = prepareBlocOrigine(condition = 'ToSimulate == False'), - ), - blocNoBrownianDynamics = BLOC(condition = '(TypeOfConstraint != None) and not("Brownian dynamics" in TypeOfConstraint)', - ParticleVelocity = FACT(statut ='o', - Velocity = SIMP(typ=(dynamicVariable,'createObject'), statut='o', defaut ='Velocity', homo='constant'), - ToSimulate = SIMP(typ=bool, statut ='o', defaut = True,), - blocSimulatedVelocity = prepareBlocInitialisationParticle(condition = 'ToSimulate == True', termeSource=True), - blocNotSimulatedVelocity = prepareBlocOrigine(condition = 'ToSimulate == False',), - ), #fin VelocityDefinition - blocHydrodynamic = BLOC(condition = '"Hydrodynamic" in MomentumFieldType', - FluidVelocitySeenByParticles = FACT(statut ='o', - FluidSeenVelocity = SIMP(typ=(dynamicVariable,'createObject'), statut='o', defaut ='FluidSeenVelocity', homo='constant'), - ToSimulate = SIMP(typ=bool, statut ='o', defaut = True,), - blocHydrodynamicVelocity = prepareBlocInitialisationParticle(condition = 'ToSimulate == True', termeSource=True), - blocNotHydrodynamicVelocity = prepareBlocOrigine(condition = 'ToSimulate == False',), - ) , - ) , - ), #blocNoBrownianDynamics - ), #fin StateVector - )# fin du prepareBlocCps - -def prepareParticles(): - return FACT(statut='o', max='**', - ParticleNature = SIMP(statut='o', typ='TXM', - into=['Atom', 'Molecule', 'Dissipative Particle', 'Fluid Particle', 'Discrete Particle']), - blocAtomName = BLOC(condition='ParticleNature == "Atom"', - ParticleName = SIMP(statut='o', typ=(userAtom,'createObject') ), - InitialNumberOfParticles = SIMP(statut='o', typ='I', val_min=0), - ), - - blocMoleculeName = BLOC(condition='ParticleNature == "Molecule"', - ParticleName = SIMP(statut='o', typ=(userMolecule,'createObject')), - InitialNumberOfParticles = SIMP(statut='o', typ='I', val_min=0), - ), - - blocDissipativeName = BLOC(condition='ParticleNature == "Dissipative Particle"', - ParticleName = SIMP(statut='o', typ=(userDPD,'createObject')), - InitialNumberOfParticles = SIMP(statut='o', typ='I', val_min=0), - ), - - blocDiscreteName = BLOC(condition='ParticleNature == "Discrete Particle"', - ParticleName = SIMP(statut='o', typ=(userDiscrete,'createObject')), - InitialNumberOfParticles = SIMP(statut='o', typ='I', val_min=0), - ), - - blocAtom = BLOC(condition='ParticleNature == "Atom"', - ChemicalSpecies = SIMP(statut='o', typ='TXM'), - ElectricCharge = SIMP(statut='f', typ='R'), - MagneticMoment = SIMP(statut='f', typ='R'), - Size = SIMP(statut='f', typ='R'), # relevant ? - # ),# Atom - ), # fin b_Atom -# --------------- Molecules ------------------ - blocMolecule = BLOC(condition='ParticleNature == "Molecule"', - Shape = SIMP(statut='o', typ='TXM', into=['Linear', 'Trigonal Planar', 'Angular', 'Tetrahedral', 'Octahedral', 'Trigonal pyramid', 'Other']), - ElectricCharge = SIMP(statut='f', typ='R'), - MagneticMoment = SIMP(statut='f', typ='R'), - Size = SIMP(statut='f', typ='R'), # relevant ? - ), #fin b_Molecule -# --------------- Dissipative ------------------ - blocDissipative = BLOC(condition='ParticleNature == "Dissipative Particle"', - BondedParticles = SIMP(statut="o", typ=bool, defaut=False), - ), # b_Dissipative - -# --------------- Discrete Particle ------------------ - blocDiscrete = BLOC(condition='ParticleNature == "Discrete Particle"', - TypeOfDiscreteParticle = SIMP(statut='o', typ='TXM', into=['Solid', 'Droplets', 'Bubbles','Bio Organism'],), - blocTypeDPSolid = BLOC(condition ='TypeOfDiscreteParticle == "Solid"', - #PrimaryOrAggregate = SIMP(statut='o', typ='TXM', into=['Primary Particle', 'Assemblage / Aggregate'], position = 'global'), - PrimaryOrAggregate = SIMP(statut='o', typ='TXM', into=['Primary Particle', 'Assemblage / Aggregate'], ), -# b_SolidPrimary = BLOC(condition='PrimaryOrAggregate == "Primary Particle"', -# ), - b_SolidAggregate = BLOC(condition='PrimaryOrAggregate == "Assemblage / Aggregate"', - Morphology = FACT (statut ='o', - NumberOfPrimaryParticles = SIMP(statut='o', typ='I', val_min=0), - FractalDimension = SIMP(statut='o', typ='R', val_min=1), - EquivalentSize = SIMP(statut='o', typ='I', val_min=0), - Porosity = SIMP(statut='o', typ='I', val_min=0), - ), - ), - ), -# --------------- Bio Organism ------------------ - blocTypeBioSolid = BLOC(condition='TypeOfDiscreteParticle == "Bio Organism"', - TypeOfOrganism = SIMP(statut='o', typ='TXM', into=['Unicellular', 'Multicellular']), - blocUnicellular = BLOC(condition ='TypeOfOrganism=="Unicellular"', - Unicellular = SIMP(statut='o', typ='TXM', into=["Bactaria"], defaut='Bactaria') - ), - b_Multicellular = BLOC(condition ='TypeOfOrganism=="Multicellular"', - Multicellular = SIMP(statut='o', typ='TXM', into=["Animal","Fongus","Plant"]) - ), - ), # b_TypeBio_Solid - -# --------------- Particule Properties ------------------ - Properties = FACT(statut ='o', - Geometry = SIMP(statut='o', typ='TXM', into=['Sphere', 'Ellipsoids', 'Other Shape']), - b_geom_Sphere = BLOC(condition = 'Geometry == "Sphere"', - ReferenceParticleRadius = SIMP(statut='o', typ ='R', val_min = 0), - ), - Weight = FACT(statut = 'o', - Consigne = SIMP(statut="o", homo="information", typ="TXM", defaut='Choose between Mass or Density'), - Mass = SIMP(statut='f', typ ='R', val_min = 0), - Density = SIMP(statut='f', typ ='R', val_min = 0), - ), - Mechanical = SIMP(statut='o', typ='TXM', into=['Rigid', 'Flexible', 'Deformable']), - b_SolidAggregate = BLOC(condition='TypeOfSolid == "Assemblage / Aggregate"', - Morphological = FACT(statut = 'o', - Consigne = SIMP(statut="o", homo="information", typ="TXM", defaut='Choose optional properties'), - FractalDimension = SIMP(statut='f', typ='R'), - NumberOfPrimaryParticle = SIMP(statut ='f',typ='I'), - EquivalentSize = SIMP(statut='f', typ='R'), - Porosity = SIMP(statut='f', typ='R'), - ), # Morphological - ), # b_SolidAggregate - ElectroMagnetic = FACT(statut = 'f', - ElectricCharge = SIMP(statut='o', typ='R'), - MagneticMoment = SIMP(statut='o', typ='R'), - ), - b_SolidAggregateBonded = BLOC(condition='TypeOfSolid == "Assemblage / Aggregate"', - BondedParticles = FACT( - ListOfBondedParticles = SIMP(statut='o', max='**', typ = userParticle), - ), - ), - ), # Properties - ), # b_Discrete - ) # fin Particle - -#--------------------------------- -def prepareContactPhenomena(): -#--------------------------------- - return FACT(statut='o', max= "**", - withContactPhenomena = SIMP(statut='o', typ=bool, defaut=False), - bwithContact = BLOC(condition = 'withContactPhenomena == True', - LevelOfDescription = SIMP(statut='o', typ='TXM', into=[ 'Microscopic', 'Macroscopic']), - bMicroscopic = BLOC(condition = 'LevelOfDescription == "Microscopic"', - DescriptionOfContact = SIMP(statut='o', typ='TXM', into=[ 'Contact distance (cutoff)', 'Contact force']), - ), - bMacroscopic = BLOC(condition = 'LevelOfDescription == "Macroscopic"', - OutcomeOfContact = SIMP(statut='o', typ='TXM', into=[ 'Sticky collision','Elastic collision','Inelastic collision', 'Mixed collisional event'],), - ), - TreatmentOfCollisions = SIMP(statut='o', typ='TXM', into=[ 'No collision', 'Binary/multiple particle collisions', 'Collision-induced fragmentation'], fenetreIhm = 'menuDeroulant', defaut = 'No collision'), - ), #bwithActions - )#FACT - -#--------------------------------- -def prepareContactPhenomenaWall(): -#--------------------------------- - return FACT(statut='o', max= "**", - withContactPhenomena = SIMP(statut='o', typ=bool, defaut=False), - bwithContact = BLOC(condition = 'withContactPhenomena == True', - LevelOfDescription = SIMP(statut='o', typ='TXM', into=[ 'Microscopic', 'Macroscopic']), - bMicroscopic = BLOC(condition = 'LevelOfDescription == "Microscopic"', - DescriptionOfContact = SIMP(statut='o', typ='TXM', into=[ 'Contact distance (cutoff)', 'Contact force']), - ), - bMacroscopic = BLOC(condition = 'LevelOfDescription == "Macroscopic"', - OutcomeOfContact = SIMP(statut='o', typ='TXM', into=[ 'Sticky collision','Elastic collision','Inelastic collision', 'Mixed collisional event']), - ), - ), #bwithActions - )#FACT - -#--------------------------------- -def prepareActionsAtDistance(): -#--------------------------------- - return FACT(statut='o', max= "**", - withActionsAtDistance = SIMP(statut='o', typ=bool, defaut=False), - bwithActions = BLOC(condition = 'withActionsAtDistance == True', - TypeOfActionAtDistance = SIMP(statut='o', typ='TXM', into=[ 'electro_magnetic', 'Inter-surface forces', 'Fluid-like forces','Fluid-mediated forces', 'Biological forces','Radiative Effects'], position='global',fenetreIhm='menuDeroulant'), - - blocElec = BLOC(condition = 'TypeOfActionAtDistance == "electro_magnetic"', - Permittivity = SIMP(statut='o', typ='R', ), - Magnetic = SIMP(statut='o', typ=bool, defaut=False,), - blocMagnetic = BLOC(condition = 'Magnetic == True', - Permeability = SIMP(statut='o', typ='R'), - ), # bloc_magnetic - Consigne = SIMP(statut="o", homo="information", typ="TXM", defaut='Enter ElectricCharge for Particle'), - # Creation PN activation ElectricCharge - ),# fin bloc_elec - - blocInterSurface = BLOC(condition = 'TypeOfActionAtDistance == "Inter-surface forces"', - TypeInterSurfaceForce = SIMP(statut='o', typ='TXM', into = [ 'Lennard_Jones', 'Steric', 'Soft_Potential','van der Waals']), - blocvanderWaals = BLOC(condition = "TypeInterSurfaceForce == 'van der Waals'", - HamakerConstant = SIMP(statut='o', typ='R', val_min=0), - ParticlesPairs = SIMP(statut='o', max=2, typ=userParticle), - ), - blocLennard = BLOC(condition = "TypeInterSurfaceForce == 'Lennard_Jones'", - LennardJonesRadius = SIMP(statut='o', typ='R', val_min=0), - DepthOfThePotentialWell = SIMP(statut='o', typ='R', val_min=0), - ParticlesPairs = SIMP(statut='o', max=2, typ=userParticle), - ), # fin b_Lennard - - blocParamSoftPotentiel = BLOC(condition = "TypeOfActionAtDistance == 'Soft_Potentiel'", - GrootWarrenRepulsion = SIMP(statut='o', typ='R', defaut=25.0, val_min=0), - GrootWarrenCutoff = SIMP(statut='o', typ='R', defaut=1.0, val_min=0), - DragCoefficient = SIMP(statut='o', typ='R'), # les 2 valent 0 pour MD - DragForceCutoff = SIMP(statut='o', typ='R', val_min=0), - ParticlesPairs = SIMP(statut='o', max=2, typ=userParticle), - ), # b_Param_Soft_Potentiel - ), # bloc_VdW - - ) # fin bloc - ) # fin prepareActionsAtADistance - -#--------------------------------- -def prepareActionsAtDistanceForWall(): -#--------------------------------- - return FACT(statut='o', max= "**", - withActionsAtDistance = SIMP(statut='o', typ=bool, defaut=False), - bwithActions = BLOC(condition = 'withActionsAtDistance == True', - TypeOfActionAtDistance = SIMP(statut='o', typ='TXM', into=[ 'electro_magnetic', 'Inter-surface forces', 'Fluid-like forces','Fluid-mediated forces', 'Biological forces','Radiative Effects'], position='global',fenetreIhm='menuDeroulant'), - - blocElec = BLOC(condition = 'TypeOfActionAtDistance == "electro_magnetic"', - Permittivity = SIMP(statut='o', typ='R', ), - Magnetic = SIMP(statut='o', typ=bool, defaut=False,), - blocMagnetic = BLOC(condition = 'Magnetic == True', - Permeability = SIMP(statut='o', typ='R'), - ), # bloc_magnetic - # Creation PN activation ElectricCharge - ),# fin bloc_elec - - blocInterSurface = BLOC(condition = 'TypeOfActionAtDistance == "Inter-surface forces"', - TypeInterSurfaceForce = SIMP(statut='o', typ='TXM', into = [ 'Lennard_Jones', 'Steric', 'Soft_Potential','van der Waals']), - blocvanderWaals = BLOC(condition = "TypeInterSurfaceForce == 'van der Waals'", - HamakerConstant = SIMP(statut='o', typ='R', val_min=0), - ), - blocLennard = BLOC(condition = "TypeInterSurfaceForce == 'Lennard_Jones'", - LennardJonesRadius = SIMP(statut='o', typ='R', val_min=0), - DepthOfThePotentialWell = SIMP(statut='o', typ='R', val_min=0), - ), # fin b_Lennard - - blocParamSoftPotentiel = BLOC(condition = "TypeOfActionAtDistance == 'Soft_Potentiel'", - GrootWarrenRepulsion = SIMP(statut='o', typ='R', defaut=25.0, val_min=0), - GrootWarrenCutoff = SIMP(statut='o', typ='R', defaut=1.0, val_min=0), - DragCoefficient = SIMP(statut='o', typ='R'), # les 2 valent 0 pour MD - DragForceCutoff = SIMP(statut='o', typ='R', val_min=0), - ), # b_Param_Soft_Potentiel - ), # bloc_VdW - - blocActionChoisie = BLOC (condition = 'TypeOfActionAtDistance !=None ', - LevelOfDescriptionNearWalls= SIMP(statut='o', typ='TXM', into =('Full force-distance curve', 'Simplified treatment'),), - blocSimplifed = BLOC (condition = 'LevelOfDescriptionNearWalls == "Simplified treatment" ', - TypeOfSimplifiedTreatment =SIMP(statut='o', typ='TXM', into =('Energy-based Wall Model',) - ), - ), - ) # fin blocActionChoisie - ) # fin bloc - ) # fin prepareActionsAtADistanceForWall - -#--------------------------------- -def prepareBondedInteractions(fromWall=False): -#--------------------------------- - intoHorsWall=[ 'Bond stretching', 'Angle bending', 'Torsional motion', 'Frozen or collective motion',] - intoWall=[ 'Bond stretching', 'Angle bending', 'Torsional motion', 'Frozen or collective motion','Contact mechanics'] - if fromWall : - mesInto=intoWall - #monBondedParticles = SIMP(statut='o', typ='TXM', defaut='True', into=['True',]) #PNPN - monBondedParticles = SIMP(statut='o', typ=bool, defaut=1, ) - else : - mesInto=intoHorsWall - monBondedParticles = SIMP(statut='o', typ=bool, defaut=False) - - return FACT(statut='o', max = "**", - BondedParticles = monBondedParticles, - blocBonded = BLOC(condition = 'BondedParticles == True', - DescribedWithTopologyFile = SIMP(statut='o', typ=bool, defaut=False), - blocTopologyFile = BLOC (condition = 'DescribedWithTopologyFile == True', - TopologyFile =SIMP(statut='o', typ=('Fichier', " Files (*.pdb );;All Files (*)",'Sauvegarde')), - ), - blocNoTopologyFile = BLOC (condition = 'DescribedWithTopologyFile == False', - BondedInteraction = FACT (statut ='o', max ='**', - NatureOfBondedInteraction = SIMP(statut='o', typ='TXM', into= mesInto), - bBondStretching = BLOC ( condition = 'NatureOfBondedInteraction == "Bond stretching"', - TypeOfBondStretching = SIMP(statut='o', typ='TXM', into=[ 'Bond harmonic potential', 'FENE',],), -# ------------ FENE ------------------ - blocFENE = BLOC(condition = 'TypeOfBondStretching == "FENE"', - FENEParameters = FACT(statut='o', max="**", - SpringConstant_H = SIMP(statut='o', typ='R', val_min=0), - LMax = SIMP(statut='o', typ='R', val_min=0), - ListOfBondedParticles = SIMP(statut='o', max='**', typ = Tuple(2), validators=VerifTypeTuple(('I','I'),)), - ), # fin FENE_Parameters - ), # fin blocFENE -# ------------ Harmonic potential Parameters ------------------ - blocharmonic = BLOC(condition = 'TypeOfBondStretching == "Bond harmonic potential"', - BondHarmonicParameters = FACT(statut='o', max="**", - ListOfBondedParticles = SIMP(statut='o', max='**', typ = Tuple(2), validators=VerifTypeTuple(('I','I'),)), - ), # fin BondHarmonicParameters - ), # fin blocharmonic - ), # fin bBondStretching - #TypeOfBondedInteraction = SIMP(statut='o', typ='TXM', into=[ 'Covalent Bond Length', 'FENE', 'Covalent Bond Angle', 'Dihedral Angles', 'Improper Dihedral ou Torsonial Motion ?', 'Frozen Motion', 'Angle bending' ], defaut='NoOne'), - - #PNPN 114 - #La saisie de l'ensemble des liaisons d'un meme type peut se faire ds le meme bloc (soit ds un fichier, soit manuelle) - #Une seule valeur de distante? est a saisir pour l'ensemble - -# ------------ Covalent Bond Length ------------------ - # blocCovalentLength = BLOC(condition = 'TypeOfBondedInteraction == "Covalent Bond Length"', - # InteractionLengthParameters = FACT(statut='o', max="**", - # SpringStifness = SIMP(statut='o', typ='R', val_min=0), - # MeanBondLength = SIMP(statut='o', typ='R', val_min=0), - # ListOfBondedParticles = SIMP(statut='o', max='**', typ = Tuple(2), validators=VerifTypeTuple(('I','I'),)), - # ), # fin Interation_Length_Parameters - # ), # fin BondLengthParameters - -# ------------ Covalent Bond Angle ------------------ - # blocCovalentAngle = BLOC(condition = 'TypeOfBondedInteraction == "Covalent Bond Angle"', - # InteractionAnglesParameters = FACT(statut='o', max="**", - # ApplyToBondedParticles = SIMP(statut='o', max='**', typ='TXM'), - # SpringStifness = SIMP(statut='o', typ='R', val_min=0), - # MeanBondAngle = SIMP(statut='o', typ='R', val_min=0), - # ListOfBondedParticles = SIMP(statut='o', max='**', typ = Tuple(2), validators=VerifTypeTuple(('I','I'),)), - # ), # fin Interation_Angles_Parameters - # ), # fin bloccovalentlengthand_angle - - - -# ------------ Dihedral Angles ------------------ - # blocDihedral = BLOC(condition = 'TypeOfBondedInteraction == "Dihedral Angles"', - # DihedralAnglesQueDemandeTon = SIMP(statut='o', typ='TXM'), - # ), - -# ------------ Improper Dihedral ------------------ - # blocImproperDihedral = BLOC(condition = 'TypeOfBondedInteraction == "Improper Dihedral"', - # ImproperDihedralQueDemandeTon = SIMP(statut='o', typ='TXM'), - # ), - # blocFrozen = BLOC(condition = 'TypeOfBondedInteraction == "Frozen Motion"', - # FrozenQueDemandeTon = SIMP(statut='o', typ='TXM'), - # ), - )# fin bondedInteraction - ), # blocNoTopology - ), # blocBondedInteractop, - ) # fin Bonded_Interaction - -# _______________________________________ -def prepareBlocOrigine(condition): -# _______________________________________ - return BLOC(condition = condition, - Origin = FACT(statut ='o', - OriginType = SIMP(statut='o', into =['ByValue', 'ByFile', 'ByInteraction'], typ ='TXM', defaut='ByValue'), - blocByFile = creeBlocPourLesFichiers('OrigineType == "ByFile"', '', ListeFormats = listeFormatGenerique, FieldName='FieldName'), - blocByInteraction = BLOC(condition = 'InitialisationType == "ByInteraction"', - InteractionName = SIMP(typ=interaction,statut='o'), - Consigne = SIMP(statut="o", homo="information", typ="TXM", defaut='Create and choose suitable interaction'), - ), - blocByValue = BLOC(condition = 'OrgineType == "ByValue"', - ConstantValue = SIMP (statut ='o', typ='R'), - ), - ), - ) -# __________________________________________________________________ -def prepareBlocInitialisation(condition,ajoutPossible=None,particle=False): -# __________________________________________________________________ - monIntoType = ['ByValue', 'ByFile', 'ByInteraction'] - dicoParticle = {} - if particle : dicoParticle['ParticleIdentifier']=SIMP(statut='o', typ = userParticle) - if ajoutPossible != None : - monIntoType.append(ajoutPossible) - return BLOC(condition = condition, - Initialisation = FACT(statut ='o', - **dicoParticle, - InitialisationType = SIMP(statut='o', into = monIntoType, typ ='TXM', defaut='ByValue'), - blocByFile = creeBlocPourLesFichiers('InitialisationType == "ByFile"', '', ListeFormats = listeFormatGenerique, FieldName='FieldName'), - blocByInteraction = BLOC(condition = 'InitialisationType == "ByInteraction"', - InteractionName = SIMP(typ=interaction,statut='o'), - Consigne = SIMP(statut="o", homo="information", typ="TXM", defaut='Create and choose suitable interaction'), - ), - blocByValue = BLOC(condition = 'InitialisationType == "ByValue"', - Value = SIMP (statut ='o', typ='R'), - ), - ), - SourceTerm = SIMP(typ=bool, statut='o', defaut=False), - blocSourceTerm = prepareTermeSourceDynVar('SourceTerm==True'), - ) #blocSimulatedPressure - -def prepareBlocInitialisationParticle(condition, termeSource=True): - monIntoType = ['ByValue', 'ByFile', 'ByInteraction','Not needed' ] - dicoTermeSource = {} - if termeSource : - dicoTermeSource['SourceTerm'] = SIMP(typ=bool, statut='o', defaut=False), - dicoTermeSource['blocSourceTerm'] = prepareTermeSourceDynVar('SourceTerm==True') - - if termeSource : - return BLOC(condition = condition, - Initialisation = FACT(statut ='o', - InitialisationType = SIMP(statut='o', into =monIntoType, typ ='TXM', defaut='ByValue'), - blocNotNeeded = BLOC(condition = 'InitialisationType != "Not needed"', - ParticleIdentifier=SIMP(statut='o', typ = userParticle), - ), - blocByFile = creeBlocPourLesFichiers('InitialisationType == "ByFile"', '', ListeFormats = listeFormatGenerique, FieldName='FieldName'), - blocByInteraction = BLOC(condition = 'InitialisationType == "ByInteraction"', - InteractionName = SIMP(typ=interaction,statut='o'), - Consigne = SIMP(statut="o", homo="information", typ="TXM", defaut='Create and choose suitable interaction'), - ), - blocByValue = BLOC(condition = 'InitialisationType == "ByValue"', - Value = SIMP (statut ='o', typ='R'), - ), - SourceTerm = SIMP(typ=bool, statut='o', defaut=False), - blocSourceTerm = prepareTermeSourceDynVar('SourceTerm==True'), - ), - ) #blocSimulatedPressure - else : - return BLOC(condition = condition, - Initialisation = FACT(statut ='o', - InitialisationType = SIMP(statut='o', into =monIntoType, typ ='TXM', defaut='ByValue'), - blocNotNeeded = BLOC(condition = 'InitialisationType != "Not needed"', - ParticleIdentifier=SIMP(statut='o', typ = userParticle), - ), - blocByFile = creeBlocPourLesFichiers('InitialisationType == "ByFile"', '', ListeFormats = listeFormatGenerique, FieldName='FieldName'), - blocByInteraction = BLOC(condition = 'InitialisationType == "ByInteraction"', - InteractionName = SIMP(typ=interaction,statut='o'), - Consigne = SIMP(statut="o", homo="information", typ="TXM", defaut='Create and choose suitable interaction'), - ), - blocByValue = BLOC(condition = 'InitialisationType == "ByValue"', - Value = SIMP (statut ='o', typ='R'), - ), - ), - ) #blocSimulatedPressure - -#--------------------------- -def prepareBlocFluideMacro(): -#--------------------------- - return BLOC(condition = 'SystemType == "Continuum system"', - ComplexFluid = SIMP(typ=bool, statut='o', defaut = False, position='global'), - FlowNature = SIMP(typ='TXM', statut='o', into =['Laminar', 'Turbulent'], position='global'), - -# --------------------------- Density ------------- - DensityInitialisation = FACT(statut ='o', - DensityValueType = SIMP(typ='TXM', statut ='o', into = ['Value', 'Field'], defaut ='Value'), - blocDensityValue = BLOC(condition = 'DensityValueType == "Value"', - Density = SIMP(typ='R', statut ='o'), - ), - blocDensField= creeBlocPourLesFichiers('DensityValueType == "Field"', 'Density', ListeFormats=listeFormatGenerique, FieldName='DensityFieldName'), - ),# DensityInitialisation - -# --------------------------- Viscosity ------------- - ViscosityInitialisation = FACT(statut ='o', - ViscosityValueType = SIMP(typ='TXM', statut ='o', into = ['Value', 'Field'], defaut ='Value'), - blocViscosityValue = BLOC(condition = 'ViscosityValueType == "Value"', - Viscosity = SIMP(typ='R', statut ='o'), - ), - blocViscosityField = creeBlocPourLesFichiers('ViscosityValueType == "Field"', 'Viscosity', ListeFormats=listeFormatGenerique, FieldName='ViscosityFieldName'), - ), #fin ViscosityityInitialisation - -# --------------------------- Turbulent ------------- - blocFlowNatureTurbulent = BLOC(condition = ' FlowNature == "Turbulent"', - TurbulenceForFlowDynamics = prepareFactTurbulence('o',position='global',positionChoice='reCalculeEtape'), - ), #fin bloc_FlowNature_Turbulent - - DynamicalVariables = FACT(statut ='o', - VariablesSimulation = SIMP(statut='o', typ =bool, position='global'), - blocVariablesSimulation = BLOC(condition = 'VariablesSimulation == False', - OriginOfDynamicalVariables = SIMP(statut='o', into =['Given', 'Interaction'], typ ='TXM', position='global'), - blocGivenOrInteraction = BLOC(condition = 'OriginOfDynamicalVariables in ["Given", "Interaction",]', - SteadyState = SIMP(typ=bool, statut ='o', defaut = True, position = 'global'), - # blocNotSteady = BLOC(condition = 'SteadyState == False', - # blocConsigne = BLOC(condition = 'SteadyState == False', - # Consigne = SIMP(statut="o", homo="information", typ="TXM", defaut='Not implemented yet. Will ask for a range of calculation steps.'), - # ), #blocNotSteady - blocSteady = BLOC(condition = 'SteadyState == True', - blocGiven = BLOC(condition = 'OriginOfDynamicalVariables == "Given"', - InSameFile = SIMP(typ=bool, statut ='o', defaut = True, position = 'reCalculeEtape'), - blocSameFile = creeBlocPourLesFichiers('InSameFile == True', 'DynamicalVariables', ('Med', 'cgns' ), None), - ), #blocGiven - ), #blocSteady - ), #blocGivenOrInteraction - ), - PressureDefinition = FACT(statut ='o', - Pressure = SIMP(typ=(dynamicVariable,'createObject'), statut='o', defaut ='Pressure', homo='constant'), - blocSteadyState = BLOC(condition = 'SteadyState == True', - blocFluidInSame = creeBlocPourLesFichiers('InSameFile == False', 'Pressure', ('Med', 'cgns' ), None), - blocGivenPressure = BLOC(condition = 'OriginOfDynamicalVariables == "Given"', - PressureFieldName = SIMP(typ='TXM',statut='o'), - ), - blocInteractionPressure = BLOC(condition = 'OriginOfDynamicalVariables == "Interaction"', - InteractionName = SIMP(typ=interaction,statut='o'), - Consigne = SIMP(statut="o", homo="information", typ="TXM", defaut='Create and choose suitable interaction'), - ), - ), - blocSimulatedPressure = prepareBlocInitialisation(condition = 'VariablesSimulation == True'), - ), - VelocityDefinition = FACT(statut ='o', - blocFlowNatureTurbulent = BLOC(condition = 'FlowNature == "Turbulent"', - #sousBlocFlowNatureTurbulent = BLOC(condition = 'TurbulenceModellingType != "Fully resolved (DNS)"', - AverageVelocity = SIMP(typ=(dynamicVariable,'createObject'), statut='o', defaut ='Average_Velocity', homo='constant'), - blocSteadyGivenVelocity1 = BLOC(condition = 'OriginOfDynamicalVariables == "Given" and SteadyState == True ', - AverageVelocityValue = SIMP(typ='R', statut='o' ), - ), - #), - ), - #blocFlowNatureLaminar = BLOC(condition = ' FlowNature == "Laminar" or TurbulenceModellingType == "Fully resolved (DNS)"', - blocFlowNatureLaminar = BLOC(condition = 'FlowNature == "Laminar"', - FluidVelocity = SIMP(typ=(dynamicVariable,'createObject'), statut='o', defaut ='Fluid_Velocity', homo='constant'), - blocSteady = BLOC(condition = 'SteadyState == True', - blocVelocityInSame = creeBlocPourLesFichiers('InSameFile == False', 'Velocity', ('Med', 'cgns' ), None), - blocSteadyGivenVelocity2 = BLOC(condition = 'OriginOfDynamicalVariables == "Given"', - VelocityFieldName = SIMP(typ='TXM',statut='o'), - ), - ), - ), - blocSteady = BLOC(condition = 'SteadyState == True', - blocInteractionVelocity = BLOC(condition = 'OriginOfDynamicalVariables == "Interaction"', - InteractionName = SIMP(typ=interaction,statut='o'), - Consigne = SIMP(statut="o", homo="information", typ="TXM", defaut='Create and choose suitable interaction'), - ), - ), - blocSimulatedVelocity = prepareBlocInitialisation(condition = 'VariablesSimulation == True'), - ), - BFlowNatureTurbulent = BLOC(condition ='FlowNature == "Turbulent"', - # K-epislon ou k-omega - blocTurbulenceTWMChoice1 = BLOC(condition = 'TVMChoice == "K-Epsilon" or TVMChoice == "K-Omega"', - KDefinition = FACT(statut ='o', - Name = SIMP(typ=(scalar,'createObject'), statut='o', defaut ='K', homo='constant'), - blocSteady = BLOC(condition = 'SteadyState == True', - blocKInSame = creeBlocPourLesFichiers('InSameFile == False', 'K', ('Med', 'cgns' ), None), - blocKGiven = BLOC(condition = 'OriginOfDynamicalVariables == "Given"', - KFieldName = SIMP(typ='TXM',statut='o', defaut='K'), - ), - blocKInteraction = BLOC(condition = 'OriginOfDynamicalVariables == "Interaction"', - InteractionName = SIMP(typ=interaction,statut='o'), - Consigne = SIMP(statut="o", homo="information", typ="TXM", defaut='Create and choose suitable interaction'), - ), - ), - blocSimulatedKDefinition = prepareBlocInitialisation(condition = 'VariablesSimulation == True'), - ), # KDefinition - ),# fin blocTurbulenceTWMChoice1 - - # REM : L'existence des mc TVMChoice et RSMChoice est exclusive, du coup une évaluation de condition - # qui contient les deux renvoie forcément une exception, le bloc n'est alors pas evalué - # sauf si le mc de la première condition existe (ordre évaluation du or) - # blocTurbulenceTWMChoice2 = BLOC(condition = 'TVMChoice == "K-Epsilon" or RSMChoice != None', - # blocTurbulenceTWMChoice2 = BLOC(condition = '(RSMChoice != None) or (TVMChoice == "K-Epsilon")', - # blocTurbulenceTWMChoice2 = BLOC(condition = 'TVMChoice == "K-Epsilon"', - blocTurbulenceTWMChoice2 = BLOC(condition = 'RANSModel == "Reynolds Stress Model (RSM)" or TVMChoice == "K-Epsilon"', - EpsilonDefinition = FACT(statut ='o', - Name = SIMP(typ=(scalar,'createObject'), statut='o', defaut ='Epsilon', homo='constant'), - blocSteady = BLOC(condition = 'SteadyState == True', - blocEpsilonInSame = creeBlocPourLesFichiers('InSameFile == False', 'Epsilon', ('Med', 'cgns' ), None), - blocEpsilonGiven = BLOC(condition = 'OriginOfDynamicalVariables == "Given"', - EpsilonFieldName = SIMP(typ='TXM',statut='o'), - ), - blocEpsilonInteraction = BLOC(condition = 'OriginOfDynamicalVariables == "Interaction"', - InteractionName = SIMP(typ=interaction,statut='o'), - Consigne = SIMP(statut="o", homo="information", typ="TXM", defaut='Create and choose suitable interaction'), - ), - ), - blocSimulatedEpsilonDefinition = prepareBlocInitialisation(condition = 'VariablesSimulation == True'), - ), #EpsilonDefinition - ), # bloc_Turbulence_TWMChoice2 - - blocTurbulenceTWMChoice3 = BLOC(condition = 'TVMChoice == "K-Omega"', - OmegaDefinition = FACT(statut ='o', - Name = SIMP(typ=(scalar,'createObject'), statut='o', defaut ='Omega', homo='constant'), - blocSteady = BLOC(condition = 'SteadyState == True', - blocOmegaInSame = creeBlocPourLesFichiers('InSameFile == False', 'Omega', ('Med', 'cgns' ), None), - blocOmegaGiven = BLOC(condition = 'OriginOfDynamicalVariables == "Given"', - OmegaFieldName = SIMP(typ='TXM',statut='o'), - ), - blocOmegaInteraction = BLOC(condition = 'OriginOfDynamicalVariables == "Interaction"', - InteractionName = SIMP(typ=interaction,statut='o'), - Consigne = SIMP(statut="o", homo="information", typ="TXM", defaut='Create and choose suitable interaction'), - ), - ), - blocSimulatedOmegaDefinition = prepareBlocInitialisation(condition = 'VariablesSimulation == True'), - ), - ), # blocTurbulenceTWMChoice3 - - # blocTurbulenceRSMChoice1 = BLOC(condition = "(RANSModel == 'Reynolds Stress Model (RSM)') and (RSMChoice !=None)", - blocTurbulenceRSMChoice1 = BLOC(condition = "RSMChoice !=None", - RijDefinition = FACT(statut ='o', - Name = SIMP(typ=(scalar,'createObject'), statut='o', defaut ='Rij', homo='constant'), - blocSteady = BLOC(condition = 'SteadyState == True', - blocRijInSame = creeBlocPourLesFichiers('InSameFile == False', 'Rij', ('Med', 'cgns' ), None), - blocRijGiven = BLOC(condition = 'OriginOfDynamicalVariables == "Given"', - RijFieldName = SIMP(typ='TXM',statut='o'), - ), - blocRijInteraction = BLOC(condition = 'OriginOfDynamicalVariables == "Interaction"', - InteractionName = SIMP(typ=interaction,statut='o'), - Consigne = SIMP(statut="o", homo="information", typ="TXM", defaut='Create and choose suitable interaction'), - ), - ), - blocSimulatedRijDefinition = prepareBlocInitialisation(condition = 'VariablesSimulation == True'), - ), - ), # blocTurbulenceRSMChoice1 - ), #BFlowNatureTurbulent - ), # DynamicalVariables - -# ---------------------- Effets thermiques - Thermal = FACT(statut ='o', - ThermalEffects = SIMP(typ='TXM', statut='o', into =['Non thermal', 'Thermal'] , defaut='Thermal', position='global' ), - blocNonThermalEffects = BLOC(condition = 'ThermalEffects == "Non thermal"', - ReferenceTemperature = SIMP(typ='R', statut='o', val_min=-273.15 ), - ), # fin bloc_NonThermal - bloc_ThermalEffects_ = BLOC(condition = 'ThermalEffects == "Thermal"', - ConductivityValueType = SIMP(typ='TXM', statut ='o', into = ['Value', 'Field'], defaut ='Value'), - blocCondValue = BLOC (condition = 'ConductivityValueType == "Value"', - Conductivity = SIMP(typ='R', statut ='o'), - ), - blocCondField = creeBlocPourLesFichiers('ConductivityValueType == "Field"', 'Conductivity', ListeFormats=listeFormatGenerique, FieldName='conductivityFieldName'), - #ActiveOnFlowEffect = ActiveOnFlowEffect(), - ), - ),# fin Fact Thermal - -# ---------------------- Scalaires - - blocScalarFluidTurbulentOrLaminar = BLOC(condition = "(ComplexFluid == False and FlowNature == 'Turbulent') or (ComplexFluid == False and FlowNature == 'Laminar')", - Scalars = FACT(statut = 'o', - withScalars = SIMP(statut='o', typ=bool, defaut=False), - blocwithScalars = BLOC(condition = 'withScalars == True', - blocFlowNatureTurbulentForScalars = BLOC(condition = ' FlowNature == "Turbulent"', - AsTurbulenceForFlowDynamics = SIMP(statut='o', typ=bool, defaut=True), - blocAsTFFD = BLOC(condition = "AsTurbulenceForFlowDynamics == False", - ScalarsTurbulenceModelling = prepareFactTurbulenceScalaire('o',), - ), - ), - blocThermalEffectsOn = BLOC(condition = ' ThermalEffects == "Thermal"', - TemperatureScalar = FACT(statut ='o', - #Name = SIMP(typ=(scalar,'createObject'), statut='o', defaut ='Temperature', homo='constant', position='reCalculeEtape'), - Name = SIMP(typ=(scalar,'createObject'), statut='o', defaut ='Temperature', homo='constant'), - SourceTerm = SIMP(typ=bool, statut='o', defaut=False), - blocSourceTerm = prepareTermeSource('SourceTerm==True'), - TemperatureInitialisation = FACT(statut ='o', - OriginOfThermalFluxField = SIMP(statut='o', into =['Given', 'Interaction', 'to be simulated'], typ ='TXM'), - blocGiven = creeBlocPourLesFichiers('OriginOfThermalFluxField == "Given"', 'Temperature', ('Med', 'cgns' ), FieldName='FieldName'), - ),# fin TemperatureInitialisation - ),# TemperatureScalar - ), # fin bloc_ThermalEffects_On - Scalar = FACT(statut = 'o', max ='**', - Name = SIMP(typ=(scalar,'createObject'), statut='o',), - DiffusivityValueType = SIMP(typ='TXM', statut ='o', into = ['Value', 'Field'], defaut ='Value'), - blocDiffValue = BLOC(condition = 'DiffusivityValueType == "Value"', - Diffusivity = SIMP(typ='R', statut ='o'), - ), - blocDiffField = creeBlocPourLesFichiers('DiffusivityValueType == "Field"', 'Diffusivity', ListeFormats=listeFormatGenerique, FieldName='DiffusivityFieldName'), - OriginOfScalar = SIMP(statut='o', into =['Given', 'Interaction', 'to be simulated'], typ ='TXM', defaut='to be simulated'), - blocSimulatedScalar = BLOC(condition = 'OriginOfScalar == "to be simulated"', - SourceTerm = SIMP(typ=bool, statut='o', defaut=False), - blocSourceTerm = prepareTermeSource('SourceTerm==True'), - Initialisation = FACT(statut ='o', - InitialisationOfScalar = SIMP(statut='o', into =['ValueInit', 'FileInit', 'InteractionInit'], typ ='TXM', defaut='ValueInit'), - blocFileInit = creeBlocPourLesFichiers('InitialisationOfScalar == "FileInit"', 'ScalarInit', ListeFormats = listeFormatGenerique, FieldName='ScalarInitField'), - blocInteractionInit = BLOC(condition = 'InitialisationOfScalar == "InteractionInit"', - InteractionName = SIMP(typ=interaction,statut='o'), - Consigne = SIMP(statut="o", homo="information", typ="TXM", defaut='Create and choose suitable interaction'), - ), - blocValueInit = BLOC(condition = 'InitialisationOfScalar == "ValueInit"', - ValueInit = SIMP (statut ='o', typ='R'), - ), - ), #Initialisation - ), #blocSimulatedScalar - blocInteractionScalar = BLOC(condition = 'OriginOfScalar == "Interaction"', - InteractionName = SIMP(typ=interaction,statut='o'), - Consigne = SIMP(statut="o", homo="information", typ="TXM", defaut='Create and choose suitable interaction'), - ), - blocGivenScalar = creeBlocPourLesFichiers('OriginOfScalar == "Given"', 'Scalar', ListeFormats = listeFormatGenerique, FieldName='ScalarField'), - EffectOnFlowDynamic = SIMP(typ='TXM', statut='o', into=[ 'Passive', 'Active'], defaut='Passive', ), - blocScalarActiveOnFlowDynamic = BLOC(condition = ' EffectOnFlowDynamic == "Active"', - ActiveOnFlowEffect = ActiveOnFlowEffect(), - ), - blocScalarFluidTurbulentAndNonComplexe = BLOC (condition = "FlowNature == 'Turbulent'", - ScalarFluxModel = prepareFactTurbulenceScalaire('f'), - ), # bloc_scalar_FluidTurbulentandNonComplexe - ),# Scalar - ),# blocwWithScalars - ),# Scalars - ), # fin FluidTurbulentandNonComplexe - # il faut une validation de coherence entre l existence de tous les turbulencesModelling - )# fin bloc_FluideMacro - -#---------------------------------------- -def ActiveOnFlowEffect(inTemperature=True): -#---------------------------------------- - return FACT(statut = 'o', max='**', - RelationType = SIMP(statut = 'o', into =['Equation Of State', 'Force-Flux Relation'], typ ='TXM'), - bloc_EOS = BLOC(condition = 'RelationType == "Equation Of State"', - TypeOfEquationOfState = SIMP(statut='o', into =['variable density', 'compressible'], typ ='TXM'), - ), - bloc_NonEOSAndSimple=BLOC(condition = 'RelationType == "Force-Flux Relation" and ComplexFluid == False', - TypeOfForceFluxRelation = SIMP(statut='o', into =['Viscosity', 'Diffusivity', 'Thermal Conductivity'], intoXML=['Viscosity', 'Diffusivity', 'Thermal Conductivity','Shear-stress closure', 'Scalar flux'], typ ='TXM', ), - blocViscosity=BLOC(condition = 'TypeOfForceFluxRelation == "Viscosity" ', - ViscosityLaw=SIMP(typ='TXM', statut = 'o', into=['law1', 'law2']), - ), - blocDiffusivity=BLOC(condition = 'TypeOfForceFluxRelation == "Diffusivity"', - DiffusivityLaw=SIMP(typ='TXM', statut = 'o', into=['law1', 'law2']), - ), - blocConductivity=BLOC(condition = 'TypeOfForceFluxRelation == "Thermal Conductivity"', - ConductivityLaw=SIMP(typ='TXM', statut = 'o', into=['law1', 'law2']), - ), - ), -) - -#-----------------------------------------------------# -def prepareBoundaryCondition(): -#-----------------------------------------------------# -# on en fait 1 bloc seul pour CS and CPS -# pour pas de souci dans la projection XSD - return FACT(statut='o',max = '**', # max = nb de facette de bord - TypeOfBoundaryCondition = SIMP(statut='o', typ='TXM', into=['Inlet', 'Outlet', 'Symmetry','Periodicity', 'Wall', 'Free Surface'], ), - - blocDesigneMesh = BLOC(condition = "SystemType == 'Continuum system'", - ApplyOnGroups = SIMP(statut ='o', typ=meshGroup, max='**', homo='SansOrdreNiDoublon', - filtre=( '(set(MeshIdentifiers).intersection( set(self.getParentsWithId().getListeUserASSD("MeshId")) ) != set()) ', - ( ('MeshIdentifiers', 'self.etape.getChild("blocModeleNumeriqueContinuum").getChild("NumericalModel")'), ) - ), - ), - ), - blocDesigne_Shape = BLOC(condition = "SystemType == 'Classical particle system'", - #ApplyOnGroups = SIMP (statut ='o', typ=spatialRegion, max='**' - ApplyOnGroups = SIMP (statut ='o', typ=meshGroup, max='**', homo='SansOrdreNiDoublon', - filtre=( '(set(MeshIdentifiers).intersection( set(self.getParentsWithId().getListeUserASSD("MeshId")) ) != set()) ', - ( ('MeshIdentifiers', 'self.etape.getChild("blocModeleNumeriqueClassical").getChild("NumericalModel")'), ) - ), - ), - ), - - - blocOnStateVariable = BLOC(condition = "(TypeOfBoundaryCondition in ['Inlet', 'Symmetry','Periodicity', 'Free Surface'] and SystemType == 'Continuum system') or (SystemType == 'Classical particle system' and TypeOfBoundaryCondition not in ['Outlet','Inlet'])" , - ApplyOnStateVariable = SIMP (statut ='o', typ=stateVariable, max='**', homo='SansOrdreNiDoublon', - filtre=( 'etape in set(self.getEtapes()) ', (('etape', None),), ), #Il ne faut pas proposer les variables d'état des autres composants. - ), #PNPN A FAIRE : fenetreIhm='menuDeroulant' - ), - - blocPeriodique = BLOC(condition = "TypeOfBoundaryCondition == 'Periodicity'", - Direction = SIMP(statut='o', typ='TXM', into=['X','Y','Z', 'XYZ']), - ), # b_periodique - - blocInlet1 = BLOC(condition = "TypeOfBoundaryCondition == 'Inlet' and SystemType == 'Continuum system'", - FormulationOfBoundary= SIMP(statut='o', typ='TXM', into=['Dirichlet','Neumann','Cauchy']), - blocDirichlet = BLOC(condition = 'FormulationOfBoundary == "Dirichlet"', - regles=(AU_MOINS_UN('InletProfile','IntegratedValue','IntegratedVectorValue',), - EXCLUS ('InletProfile','IntegratedValue','IntegratedVectorValue',), ), - Consigne = SIMP(statut ="o", homo="information", typ="TXM", defaut = "Choose between InletProfile,IntegratedValue,IntegratedVectorValue "), - InletProfile = SIMP (statut ='f', typ='TXM'), - IntegratedValue = SIMP (statut='f', typ='R'), - IntegratedVectorValue = FACT(statut='f', - U = SIMP (statut ='o', typ='R'), - V = SIMP (statut ='o', typ='R'), - W = SIMP (statut ='o', typ='R'), - ), - ),# fin Dirichlet - blocNeumann = BLOC(condition = 'FormulationOfBoundary == "Neumann"', - FluxFile = SIMP (statut ='o', typ=('Fichier', " ;;All Files (*)"),) - ), - blocCauchy = BLOC(condition = 'FormulationOfBoundary == "Cauchy"', - ImposedFlux = SIMP (statut ='o', typ='TXM'), - _IntegratedValue = SIMP (statut='o', typ='R'), - ), - ), # b_inlet1 - blocWall = BLOC(condition = "TypeOfBoundaryCondition == 'Wall' and SystemType == 'Continuum system'", - VelocityAtBoundary = FACT(statut='o', - SlipVelocity = SIMP(statut='o', typ='R', defaut= 0.0), - WallMotion = FACT(statut='o', - U = SIMP (statut ='o', typ='R'), - V = SIMP (statut ='o', typ='R'), - W = SIMP (statut ='o', typ='R'), - ), - ), - LevelOfDescription = FACT(statut='o', - blocWallInside = BLOC(condition = "FlowNature == 'Turbulent'", ##JP+CH TODO : Choix des lois en fct du type du TurbulenceModelingType - WallFunction = SIMP(statut ='o', typ='TXM', - into=['No wall function','1-scale model (Log law)', - '2-scale model (Log law)','Scalable 2-scale model (Log law)', - ], defaut='No wall function', fenetreIhm='menuDeroulant'), - ), - ), - ), # b_Wall - - blocWall2 = BLOC(condition = "TypeOfBoundaryCondition == 'Wall' and SystemType == 'Classical particle system'", - ChoiceOfParticleWallInteraction = SIMP(statut='o', typ = wallInteractionId) - ), # b_Wall - - blocInlet2 = BLOC(condition = "TypeOfBoundaryCondition == 'Inlet' and SystemType == 'Classical particle system'", - NumberOfParticleInjected = SIMP(statut='o', typ = 'I', val_min = 1), - InjectionEveryNTimeSteps = SIMP(statut='o', typ = 'I', val_min = 0), - DiameterOfParticleInjected = SIMP(statut='o', typ = 'R', val_min = 0), - MassOfParticleInjected = SIMP(statut='o', typ = 'R', val_min = 0), - - PositionOfParticleInjected = FACT(statut='o', - InitialisationMode = SIMP(statut='o', into =['ByValue', 'ByFile', 'ByFormula' ], typ ='TXM', defaut='ByValue'), - # A Rafiner - ), - blocNoBrownianDynamics = BLOC(condition = '(TypeOfConstraint != None) and not("Brownian dynamics" in TypeOfConstraint)', - ParticleVelocity = FACT(statut ='o', - InitialisationMode = SIMP(statut='o', into =['ByValue', 'ByFile', 'ByFormula' ], typ ='TXM', defaut='ByValue'), - ), #fin VelocityDefinition - blocHydrodynamic = BLOC(condition = '"Hydrodynamic" in MomentumFieldType', - FluidVelocitySeenByParticles = FACT(statut ='o', - InitialisationMode = SIMP(statut='o', into =['ByValue', 'ByFile', 'ByFormula' ], typ ='TXM', defaut='ByValue'), - ), - ), - ),# blocNoBrownianDynamics - ), # bInlet2 - ) # Boundary_Conditions - - - -JdC = JDC_CATA ( - #PN : TODO : regles = (AU_PLUS_UN('DataTransfer_Aspects',),), - code = 'Vimmp', - # faire un validateur qui verifie que si on active reactions chimiques il faut que les masses molaires soient rentrees -) - -Component = OPER(nom='Component', sd_prod=composant, - SystemType = SIMP(typ='TXM', into=['Quantum system', 'Classical particle system', 'Continuum system'], statut='o',position='global'), - PhysicalDescription = FACT(statut = 'o', - blocFluideMacro = prepareBlocFluideMacro(), - blocCPS = prepareBlocCPS(), - ), - blocModeleNumeriqueQuantum = prepareBlocSystemType('Quantum system'), - blocModeleNumeriqueClassical = prepareBlocSystemType('Classical particle system'), - blocModeleNumeriqueContinuum = prepareBlocSystemType('Continuum system'), - - # Exemple de reecriture d'un BLOC_XOR pour eviter la generation d'un type xsd double - # BCFluide = BLOC ( condition = 'SystemType == "Continuum system"', - # BoundaryConditions = FACT(statut = 'o', - # BoundaryCondition = prepareBoundaryCondition(), - # ), - # ), - # BCParticle = BLOC ( condition = 'SystemType == "Classical particle system"', - # BoundaryConditions = FACT(statut = 'o', - # BoundaryCondition = prepareBoundaryConditionParticle(), - # ), - # ), - BoundaryConditions = FACT(statut = 'o', - BoundaryCondition = prepareBoundaryCondition(), - ), -) - -Species = PROC(nom='Species', - Specie = FACT(statut='o', max ="**", - Name = SIMP(statut='o', typ=(especeChimique,'createObject') ), - MolarMass = SIMP(statut='f', typ='R',), - ) -) - -def monBlocInteractionTypeChamp (): - return BLOC (condition = '1 == 1' , # a distinguer selon les cas - fieldNameInOrigine = SIMP(typ='TXM', statut='o'), - fieldNameInDestination = SIMP(typ='TXM', statut='o'), - ) - - -def SelonLeTypeDeFormatDisponibleMapper(condition): - TransferType = SIMP(typ='TXM', statut='o', into =['File', 'Memory', 'CorbaObject']) - maListe = list(dictCodeFormat.keys()) - dicoArgs={} - index=0 - for Solv1 in maListe[index:]: - for Solv2 in maListe[index:]: - #print (Solv1,Solv2, calculCommun(Solv1, Solv2,dictCodeFormat)) - print ('PNPN attention changement de dictCodeFormat tant que getEficasAttribut n est pas correct') - conditionSolv = 'TransferType == "File" and getEficasAttribut(origine,"Solver")==Solv1 and getEficasAttribut(destination,"Solver")==Solv2' , - conditionSolv = 'TransferType == "File"' - monBlocFichier=creeBlocPourLesFichiers (conditionSolv, '', calculCommun(Solv1, Solv2,dictCodeFormat),None) - dicoArgs['monBlocFichier'+str(index)]=monBlocFichier - index=index+1 - BlocChamp = BLOC(condition = "TransferType=='File'", FieldName=SIMP(typ='TXM', statut='o')) - dicoArgs['BlocChamp'] = BlocChamp - return BLOC(condition = condition,TransferType=TransferType, **dicoArgs) - -Interpolator = OPER (nom= 'Interpolator',sd_prod=interpolator, - InterpolatorType=SIMP(statut='o', typ='TXM', into = list(dictInterpolatorFormat.keys())), - blocMedCoupling= BLOC(condition="InterpolatorType == 'Med Coupling'", - TargetMeshIdentifier = SIMP(statut ='o', typ = meshIdentifier,), - InterpolationType = SIMP(statut ='o', typ='TXM', into=['P0P0','P0P1','P1P1','P1P0'],), - DefaultValueForUnmatchedMeshTargetEntity = SIMP(statut='o', typ ='R', defaut=-1), - ), -) -Converter = OPER (nom= 'Converter',sd_prod=converter) - -Interactions = PROC(nom='Interactions', - - IOAspects = FACT(statut='o', - - #WorkingDirectory = SIMP(statut='o', typ='Repertoire', defaut='/tmp'), - - FileTransfer = FACT(statut='f', max='**', - TransferId = SIMP(statut='o', typ=(fileId,'createObject'),), - monBlocFormat = creeBlocPourLesFichiers('1', '', listeFormatGenerique, FieldName=None ), - ), - MemoryTransfer = FACT(statut='f', max='**', - TransferId = SIMP(statut='o', typ=(memoryId,'createObject'),), - ), - CorbaTransfer = FACT(statut='f', max='**', - TransferId = SIMP(statut='o', typ=(corbaId,'createObject'),), - ), - ), - - - Interaction = FACT(max = '**', - InteractionName = SIMP(statut='o', typ=(interaction,'createObject'),), - From = SIMP(typ=modeleNumDuCompo, statut='o'), - To = SIMP(typ=modeleNumDuCompo, statut='o'), - # ApplyOnStateVariable = SIMP(statut ='o', typ=stateVariable), #PNPN A FAIRE : fenetreIhm='menuDeroulant' - InvolvedStateVariable = SIMP(statut ='o', typ=stateVariable), #PNPN A FAIRE : Seulement du composant d'origine From - InteractionConfiguration = FACT(statut='o', - - OutputId = SIMP(statut='o',typ=(transferId,),), - FieldName=SIMP(typ='TXM', statut='o'), - CouplingMode = SIMP(typ='TXM', statut='o', into =['Direct', 'DataProcessing']), - - monBlocDataProcessing = BLOC (condition = "CouplingMode=='DataProcessing'", - DataProcessingNode = FACT(min=1, max='**', statut ='o', - Tool = SIMP(typ=mapper, statut ='o'), - OutputId = SIMP(statut='o',typ=(transferId,),), - FieldName = SIMP(typ='TXM', statut='o'), - monBlocInterpolator = BLOC (condition = "(Tool != None) and (isinstance(Tool,interpolator))", - FieldNature = SIMP(typ='TXM', statut='o', into=['ExtensiveMaximum', 'IntensiveMaximum', - 'ExtensiveConservation', 'IntensiveConservation']), #PN: DICO pour le into avec key==Tool - ), - ), - ), #fin monBlocDataProcessing - ), #fin InteractionConfiguration - ), -) - - - -EnvironementAspects = PROC(nom ="EnvironementAspects", - WorkflowName = SIMP(statut='o', typ='TXM', defaut='MyStudyCasename'), #PN: -> path - WorkingDirectory = SIMP(statut='o', typ='Repertoire', defaut='/tmp'), -) - -#Le dictionnaire dict_condition est un dictionnaire utilisé par eficas -# pour les position='global_jdc' et position='inGetAttribut' -dict_condition={ -'ChoiceOfApproach': ('Interactions', 'Component'), -'Interactions' : ( 'Component'), -} - -TemporalAspects = PROC(nom ="TemporalAspects", - Simulated_Time_Laps = FACT(statut='o', max='**', - name = SIMP(statut='o', typ=(simulatedTime,'createObject'),), - initialTime = SIMP(statut='o', typ='R'), - finalTime = SIMP(statut='o', typ='R'), - timeDiscretization = SIMP(statut ='o', typ = 'TXM', into = ['Constant Time Step', 'Varying Time Step']), - bloc_Constant = BLOC (condition = 'timeDiscretization == "Constant Time Step"', - constantTimeStep = SIMP (statut ='o', typ = 'R'), - ), - bloc_Varying = BLOC (condition = 'timeDiscretization == "Varying Time Step"', - CFLNumberCriteria = SIMP (statut ='o', typ = 'R'), - FourierNumberCriteria = SIMP (statut ='o', typ = 'R'), - ), - ), -) - - - - -# -# ----------------------------------------- -SpatialAspects = PROC(nom='SpatialAspects', -# ----------------------------------------- - regles = (AU_MOINS_UN('SystemGeometry', 'SpatialDiscretization'),), - - SystemGeometry = FACT(statut='f', max='**', - SystemGeometryName = SIMP(statut='o', typ=(systemGeometry, 'createObject'),), - Shape = FACT(statut ='o', max='**', - ShapeIdentifier = SIMP(statut='o', typ=(cadShape,'createObject'),max='**',), - ShapeNature = SIMP(statut='o', typ='TXM', into=['Typical Geometry', 'CAD']), - - blocShape = BLOC(condition = 'Shape_Nature == "Typical Geometry"', - Box = SIMP(statut='o', typ='TXM', into=['Cube', 'Sphere','Cylinder'] ), - blocCube = BLOC(condition = 'Box == "Cube"', - #Taille_Box_Englobante = SIMP(statut='o', typ='R', max=3, min =3) - # derait etre un Tuple(3) mais a faire apres la projection - #Size_Of_Bounding_Box = SIMP(statut='o', typ=Tuple(3), validators=VerifTypeTuple(('R','R','R'),),) - Size_Of_Bounding_Box = SIMP(statut='o', typ='R', max=3, min=3, ), - ), # fin blocCube - blocBoule = BLOC(condition = 'Box == "Sphere"', - Center = SIMP(statut='o', typ='R', max=3, min =3), - ),# fin b_Boule - blocCylinder = BLOC(condition = 'Box == "Cylinder"', - Heigth = SIMP(statut="o", typ='R', val_min=0.0, ang='Nanotube length [m]'), - ),# fin blocCylinder - blocBouleOuCylinder = BLOC(condition = 'Box == "Sphere" or Box == "Cylinder"', - Radius = SIMP(statut='o', typ='R', val_min=0.0, ang='radius length [m]') , - ),# fin blocBouleOuCylinder - ), # fin blocShape - blocCAO = creeBlocPourLesFichiers("Shape_Nature == 'CAD'",'Domain', ['txt','I-deas', 'Gmsh', 'top',],None), - ), # fin Shape - ),# SystemGeometry - - SpatialDiscretization = FACT(statut='f', max="**", - MeshId = SIMP(statut='o', typ=(meshIdentifier,'createObject')), - MeshName = SIMP(statut='o', typ='TXM'), - blocMeshFile = creeBlocPourLesFichiers("1 == 1",'Mesh',listeFormatGenerique,None), - GroupIdentifier = SIMP(statut='o', typ=(meshGroup,'createObject'),max='**',), - ),# SpatialDiscretization - - BoundaryConstraints = FACT(statut = 'f', - Motion = FACT(statut='f', - MotionNature = SIMP(statut='o', typ='TXM', into=['Fixed boudary', 'Translational motion', 'Rotational motion', 'Scaling']), - - blocTranslationalMotion = BLOC(condition = 'MotionNature == "Translational motion"', - TranslationVelocity = SIMP(statut='o', typ='R'), - boundaries = SIMP(statut='o', typ=spatialRegion,max='**', homo='SansOrdreNiDoublon' ), - ), - blocRotationalMotion = BLOC(condition = 'MotionNature == "Rotational motion"', - RotationRate = SIMP(statut='o', typ='R'), - boundaries = SIMP(statut='o', typ=spatialRegion,max='**', homo='SansOrdreNiDoublon' ), - ), - blocFixed = BLOC(condition = 'MotionNature == "Fixed boudary"', - boundaries = SIMP(statut='o', typ=spatialRegion,max='**', homo='SansOrdreNiDoublon'), - ), - ), -#PN decrire page 28 - Mapping = FACT(statut='f', - ), - ), # Boundary_Constraints -) # fin Geometric_Domain - -TEXTE_NEW_JDC = "\ -Velocity=scalar()\ -" diff --git a/Vimmp/cata_CSAndCPS_v15_test_driver_1.comm b/Vimmp/cata_CSAndCPS_v15_test_driver_1.comm deleted file mode 100644 index 7243fbcf..00000000 --- a/Vimmp/cata_CSAndCPS_v15_test_driver_1.comm +++ /dev/null @@ -1,281 +0,0 @@ -Pressure=dynamicVariable() -Temperature=scalar() -Time1=simulatedTime() -CS_Num1=modeleNumDuCompo() -CS_Num2=modeleNumDuCompo() -Group_From_Mesh1=meshGroup() -Group_From_Mesh2=meshGroup() -Average_Velocity=dynamicVariable() -Epsilon=scalar() -outlet=meshGroup() -symmetry=meshGroup() -wall=meshGroup() -inlet1=meshGroup() -inlet2=meshGroup() -fluidfile=fileId() -CS_Num1__CS_Num2_Velocity=interaction() -CS_Num1__CS_Num2_Epsilon=interaction() -CS_Num1__CS_Num2_Pressure=interaction() -Time2=simulatedTime() -half_pipe_21_60=meshIdentifier() -half_pipe_15_40=meshIdentifier() -Interpolated_Pressure_File=fileId() -Interpolated_Rij_File=fileId() -Interpolated_Epsilon_File=fileId() -interpolated_Velocity_File=fileId() -Position=dynamicVariable() -Velocity=dynamicVariable() -Rij=scalar() -Colloids=userDiscrete() -Diameter=dynamicVariable() -Mass=dynamicVariable() -WallReboundCondition=wallInteractionId() -FluidSeenVelocity=dynamicVariable() -CS_Num1__CS_Num2_Rij=interaction() - -EnvironementAspects(WorkflowName='Inria', - WorkingDirectory='/tmp',); - -SpatialAspects(SpatialDiscretization=(_F(MeshId=half_pipe_21_60, - MeshName='half_pipe_generation_2inlet', - MeshFileFormat='Med', - MeshFileName=\ - '/home/eric/VIMMP/vimmptraining/app/fluide+mapper+particule/datafiles/half_pipe_21_60_2inlet.med', - GroupIdentifier=(inlet1,inlet2,outlet,symmetry,wall,Group_From_Mesh1,),), - _F(MeshId=half_pipe_15_40, - MeshName='half_pipe_generation_2inlet', - MeshFileFormat='Med', - MeshFileName=\ - '/home/eric/VIMMP/vimmptraining/app/fluide+mapper+particule/datafiles/half_pipe_15_40_2inlet.med', - GroupIdentifier=(inlet1,inlet2,outlet,symmetry,wall,Group_From_Mesh2,),),),); - -TemporalAspects(Simulated_Time_Laps=(_F(name=Time1, - initialTime=0.0, - finalTime=10.0, - timeDiscretization='Constant Time Step', - constantTimeStep=0.1,), - _F(name=Time2, - initialTime=10.0, - finalTime=15.0, - timeDiscretization='Constant Time Step', - constantTimeStep=0.01,),),); - -FluidComponent=Component(SystemType='Continuum system', - PhysicalDescription=_F(ComplexFluid=False, - FlowNature='Turbulent', - DensityInitialisation=_F(DensityValueType='Value', - Density=1.17862,), - ViscosityInitialisation=_F(ViscosityValueType='Value', - Viscosity=0.0183,), - TurbulenceForFlowDynamics=_F(TurbulenceModellingType='One-point moment', - RANSModel='Reynolds Stress Model (RSM)', - RSMChoice='Rotta',), - DynamicalVariables=_F(VariablesSimulation=True, - PressureDefinition=_F(Pressure=Pressure, - Initialisation=_F(InitialisationType=\ - 'ByValue', - Value=0.0,), - SourceTerm=False,), - VelocityDefinition=_F(AverageVelocity=Average_Velocity, - Initialisation=_F(InitialisationType=\ - 'ByValue', - Value=0.0,), - SourceTerm=False,), - EpsilonDefinition=_F(Name=Epsilon, - Initialisation=_F(InitialisationType=\ - 'ByValue', - Value=1.3e-06,), - SourceTerm=False,), - RijDefinition=_F(Name=Rij, - Initialisation=_F(InitialisationType=\ - 'ByValue', - Value=0.0004,), - SourceTerm=False,),), - Thermal=_F(ThermalEffects='Non thermal', - ReferenceTemperature=293.15,), - Scalars=_F(withScalars=False,),), - NumericalModel=_F(Identifier=CS_Num1, - SimulatedTimeLapse=Time1, - ChoiceOfApproach='Field_based', - NumericalMethod='FV', - Solver='Code_Saturne', - MeshIdentifiers=(half_pipe_21_60,),), - BoundaryConditions=_F(BoundaryCondition=(_F(TypeOfBoundaryCondition='Inlet', - ApplyOnGroups=(inlet1,inlet2,), - ApplyOnStateVariable=(Average_Velocity,), - FormulationOfBoundary='Dirichlet', - Consigne=\ - 'Choose between InletProfile,IntegratedValue,IntegratedVectorValue ', - IntegratedVectorValue=_F(U=1.0, - V=0.0, - W=0.0,),), - _F(TypeOfBoundaryCondition='Outlet', - ApplyOnGroups=(outlet,),), - _F(TypeOfBoundaryCondition='Wall', - ApplyOnGroups=(wall,), - VelocityAtBoundary=_F(SlipVelocity=0.0, - WallMotion=_F(U=0.0, - V=0.0, - W=0.0,),), - LevelOfDescription=_F(WallFunction='2-scale model (Log law)',),), - _F(TypeOfBoundaryCondition='Symmetry', - ApplyOnGroups=(symmetry,), - ApplyOnStateVariable=(Pressure,Average_Velocity,Epsilon,Rij,),),),),); - -PartComponent=Component(SystemType='Classical particle system', - PhysicalDescription=_F(Particles=_F(ParticleNature='Discrete Particle', - ParticleName=Colloids, - InitialNumberOfParticles=0, - TypeOfDiscreteParticle='Solid', - PrimaryOrAggregate='Primary Particle', - Properties=_F(Geometry='Sphere', - ReferenceParticleRadius=1e-05, - Weight=_F(Density=1000.0,), - Mechanical='Rigid',),), - AmbiantMediaInteraction=_F(MomentumExchange=_F(withMomentumExchange=True, - MomentumFieldType=('Hydrodynamic',), - DefineForceOnParticle=_F( - TypeOfHydroDynamicForce=('Drag',), - FieldAppliesOnAllSpecies=True, - NatureOfFluidForce=_F( - NatureOfFlow='Turbulent', - TurbulenceModellingType='One-point moment', - RANSModel='Turbulent-Viscosity Model (TVM)', - TurbulenceModelDispersion='Langevin', - InitialisationType='ByInteraction', - Consigne='Create and choose suitable interaction', - InteractionNameForPressure=CS_Num1__CS_Num2_Pressure, - InteractionNameForVelocity=CS_Num1__CS_Num2_Velocity, - InteractionNameForEpsilon=CS_Num1__CS_Num2_Epsilon, - InteractionNameForRij=CS_Num1__CS_Num2_Rij,),),), - MassExchange=_F(withMassExchange=False,), - EnergyExchange=_F(withEnergyExchange=False,), - AmbientInducedProcesses=_F(withAmbientInducedProcesses=\ - False,), - AdditionalSamplingOfAmbientMedia=_F( - withAdditionalSamplingOfAmbientMedia=False,),), - ParticleParticleInteraction=_F(BondedInteractions=_F(BondedParticles=False,), - ActionsAtDistance=_F(withActionsAtDistance=False,), - ContactPhenomena=_F(withContactPhenomena=False,),), - ParticleWallInteraction=_F(withParticleWallInteraction=True, - ParticleWallInteractionId=WallReboundCondition, - TypeOfWall=_F(Dynamics='Fixed position', - LevelOfDescription='Continuum', - SurfaceTexture='Smooth',), - ActionsAtDistance=_F(withActionsAtDistance=False,), - ContactPhenomena=_F(withContactPhenomena=True, - LevelOfDescription='Macroscopic', - OutcomeOfContact='Elastic collision',),), - ConstraintsAndReducedStatisticalDescription=_F(Constraint=_F(TypeOfConstraint= - ('Time-marching_non-equilibrium', - ),),), - StateVector=_F(ParticleDiameter=_F(Diameter=Diameter, - ToSimulate=False,), - ParticleMass=_F(Mass=Mass, - ToSimulate=False,), - ParticlePosition=_F(Position=Position, - ToSimulate=True, - Initialisation=_F(InitialisationType='Not needed',),), - ParticleVelocity=_F(Velocity=Velocity, - ToSimulate=True, - Initialisation=_F(InitialisationType='Not needed', - SourceTerm=False,),), - FluidVelocitySeenByParticles=_F(FluidSeenVelocity=FluidSeenVelocity, - ToSimulate=True, - Initialisation=_F(InitialisationType=\ - 'Not needed', - SourceTerm=False,),),),), - NumericalModel=_F(Identifier=CS_Num2, - SimulatedTimeLapse=Time2, - ChoiceOfApproach='Particle_based', - NumericalMethod='CFD_Discrete_Particle_based', - Solver='Code_Saturne', - MeshIdentifiers=(half_pipe_15_40,),), - BoundaryConditions=_F(BoundaryCondition=(_F(TypeOfBoundaryCondition='Inlet', - ApplyOnGroups=(inlet2,), - NumberOfParticleInjected=100, - InjectionEveryNTimeSteps=1, - DiameterOfParticleInjected=1e-05, - MassOfParticleInjected=4.2e-12, - PositionOfParticleInjected=_F(InitialisationMode='ByFormula',), - ParticleVelocity=_F(InitialisationMode='ByFormula',), - FluidVelocitySeenByParticles=_F(InitialisationMode='ByFormula',),), - _F(TypeOfBoundaryCondition='Outlet', - ApplyOnGroups=(outlet,inlet1,),), - _F(TypeOfBoundaryCondition='Symmetry', - ApplyOnGroups=(symmetry,), - ApplyOnStateVariable= - - (Position,Velocity, - Diameter,Mass, - FluidSeenVelocity,),), - _F(TypeOfBoundaryCondition='Wall', - ApplyOnGroups=(wall,), - ApplyOnStateVariable=(Position,Velocity,FluidSeenVelocity,), - ChoiceOfParticleWallInteraction=WallReboundCondition,),),),); - -MedCouplingComponent=Interpolator(InterpolatorType='Med Coupling', - TargetMeshIdentifier=half_pipe_15_40, - InterpolationType='P0P0', - DefaultValueForUnmatchedMeshTargetEntity=-1.0,); - -Interactions(IOAspects=_F(FileTransfer=(_F(TransferId=fluidfile, - FileFormat='Med', - FileName='results_Fluid_domain.med',), - _F(TransferId=interpolated_Velocity_File, - FileFormat='Med', - FileName='results_Fluid_Interpolated_Velocity.med',), - _F(TransferId=Interpolated_Rij_File, - FileFormat='Med', - FileName='results_Fluid_Interpolated_Rij.med',), - _F(TransferId=Interpolated_Epsilon_File, - FileFormat='Med', - FileName='results_Fluid_Interpolated_Epsilon.med',), - _F(TransferId=Interpolated_Pressure_File, - FileFormat='Med', - FileName='results_Fluid_Interpolated_Pressure.med',),),), - Interaction=(_F(InteractionName=CS_Num1__CS_Num2_Velocity, - From=CS_Num1, - To=CS_Num2, - InvolvedStateVariable=Average_Velocity, - InteractionConfiguration=_F(OutputId=fluidfile, - FieldName='Velocity', - CouplingMode='DataProcessing', - DataProcessingNode=_F(Tool=MedCouplingComponent, - OutputId=interpolated_Velocity_File, - FieldName='Velocity', - FieldNature='IntensiveMaximum',),),), - _F(InteractionName=CS_Num1__CS_Num2_Epsilon, - From=CS_Num1, - To=CS_Num2, - InvolvedStateVariable=Epsilon, - InteractionConfiguration=_F(OutputId=fluidfile, - FieldName='epsilon', - CouplingMode='DataProcessing', - DataProcessingNode=_F(Tool=MedCouplingComponent, - OutputId=Interpolated_Epsilon_File, - FieldName='epsilon', - FieldNature='IntensiveMaximum',),),), - _F(InteractionName=CS_Num1__CS_Num2_Pressure, - From=CS_Num1, - To=CS_Num2, - InvolvedStateVariable=Pressure, - InteractionConfiguration=_F(OutputId=fluidfile, - FieldName='Pressure', - CouplingMode='DataProcessing', - DataProcessingNode=_F(Tool=MedCouplingComponent, - OutputId=Interpolated_Pressure_File, - FieldName='Pressure', - FieldNature='IntensiveMaximum',),),), - _F(InteractionName=CS_Num1__CS_Num2_Rij, - From=CS_Num1, - To=CS_Num2, - InvolvedStateVariable=Rij, - InteractionConfiguration=_F(OutputId=fluidfile, - FieldName='Rij', - CouplingMode='DataProcessing', - DataProcessingNode=_F(Tool=MedCouplingComponent, - OutputId=Interpolated_Rij_File, - FieldName='Rij', - FieldNature='IntensiveMaximum',),),),),); -#CHECKSUM:e5f0a89820583811aab53201d988431a -:FIN CHECKSUM \ No newline at end of file diff --git a/Vimmp/cata_CSAndCPS_v16.py b/Vimmp/cata_CSAndCPS_v16.py deleted file mode 100644 index 1fb59bc1..00000000 --- a/Vimmp/cata_CSAndCPS_v16.py +++ /dev/null @@ -1,1529 +0,0 @@ -from Accas import * -VERSION_CATALOGUE='VimmpV16' - -class composant(ASSD):pass -class mapper(ASSD):pass -class converter(mapper):pass -class interpolator(mapper):pass -class modeleNumDuCompo(UserASSD):pass -class especeChimique(UserASSD):pass -class userParticle(UserASSDMultiple) :pass -class userAtom(userParticle) :pass -class userMolecule(userParticle) :pass -class userDiscrete(userParticle) :pass -class userDPD(userParticle) :pass - -class spatialRegion(UserASSD):pass -class cadShape(spatialRegion):pass -#class meshGroup(spatialRegion,UserASSDMultiple):pass -class meshGroup(UserASSDMultiple):pass -class meshIdentifier(spatialRegion):pass -class systemGeometry(UserASSD):pass -class simulatedTime(UserASSD):pass -class constitutiveRelation(UserASSD):pass -class interaction(UserASSD):pass -class transferId(UserASSD):pass -class fileId(transferId):pass -class memoryId(transferId):pass -class corbaId(transferId):pass - -class stateVariable(UserASSDMultiple) : pass -class scalar(stateVariable):pass -class dynamicVariable(stateVariable):pass -class dynamicVariableParticle(stateVariable):pass -class wallInteractionId(UserASSD):pass - - -dictTypModNumModNum = { - ('Continuum system','Particle_based') : ('SPH' , 'Lagrangian one-fluid-particle pdf'), #TODO 'Particle_based --> Particle_based - ('Continuum system','Field_based') : ('FV' , 'FEM', 'Spectral method'), - ('Classical particle system','Particle_based') : ('MD' , 'DPD', 'SDPD','SPH','CFD_Discrete_Particle_based'), - ('Classical particle system','Field_based') : ('LBM' ,), - ('Quantum system','Particle_based') : ('Particle method',), - ('Quantum system','Field_based') : ('Wave',), -} - -dictCodeModeleNumerique = { - 'Code_Saturne' : ('Lagrangian one-fluid-particle pdf', 'FV', 'CFD_Discrete_Particle_based',), - 'Fluent' : ('FV',), - 'Culgi Package': (), - 'DEM_SD' : ('Lagrangian one-fluid-particle pdf', 'FV', 'CFD_Discrete_Particle_based',), - 'DFTB+' : ('density functional tight binding method',), - 'DL_MESO_DPD' : ('Lagrangian one-fluid-particle pdf', 'FV', 'CFD_Discrete_Particle_based',), - 'DL_MESO_LBE' : ('Lagrangian one-fluid-particle pdf', 'FV', 'CFD_Discrete_Particle_based',), - 'DL_POLY_4' : ('Lagrangian one-fluid-particle pdf', 'FV', 'CFD_Discrete_Particle_based',), - 'GROMACS' : ('Lagrangian one-fluid-particle pdf', 'FV', 'CFD_Discrete_Particle_based',), - 'GROMACS_LS' : ('Lagrangian one-fluid-particle pdf', 'FV', 'CFD_Discrete_Particle_based',), - 'LAMMPS' : ('Lagrangian one-fluid-particle pdf', 'FV', 'CFD_Discrete_Particle_based',), - 'NWChem' : ('Lagrangian one-fluid-particle pdf', 'FV', 'CFD_Discrete_Particle_based',), - 'OpenFOAM' : ('Lagrangian one-fluid-particle pdf', 'FV', 'CFD_Discrete_Particle_based',), - 'Quantum EXPRESSO' : ('Particle method', 'Wave',), - 'RHEO_AGGRATE' : ('Particle method', 'Wave',), - 'RHEO_DROP' : ('Particle method', 'Wave',), - 'STAR_CCM+' : ('FV', 'Particles',), - 'Code Nill' : ('Spectral method', ), -} -# Le Code Nill est ajouté en dur au Solver - -dictCodeFormat = { - 'Code_Saturne' : ('Med', 'cgns', 'msh', 'des', 'unv', ), - 'Culgi Package': ('cof',), - 'DEM_SD' : ('geo', 'ascii'), - 'DFTB+' : ('geo', 'ascii'), - 'Fluent' : ('FluentFormat', ), - 'OpenFOAM' : ('OpenFoamFormat', 'Med', ), -} - -listeFormatGenerique =['Med', 'Cgns', 'msh','geo', 'ascii' ] - -dictInterpolatorFormat = { - 'Med Coupling' : ('Med',), -} -dictConvertorFormat = { - 'Gmsh' : ('Med', 'OpenFoamFormat'), -} - -dictTermeLE = { - ('Fields','Particles') : ('Fluid_Velocity_Field', - 'Fluid_Temperature_Field', - 'Fluid_Species_Mass_Fraction_Fluid',), - ('Particles','Fields') : ('Fluid_Particle_Momentum_Exchange_Field', - 'Fluid_Particle_Thermal_Exchange_Field', - 'Lagrangian one-particle pdfFluid_Particle_Mass_Source_Field', - 'Particle_Volumetric_Concentration_Modified_Fluid_Viscosity', - 'Particle_Extra_Stress_Tensor'), - ('Particles','Particles') : ('Pas encore fait'), - ('Fields','Fields') : ('Pas encore fait'), -} - -dictCodeConvertisseur = { - ('Saturne', 'OpenFOAM') : ('gmsh', 'Saturne2CDM and CDM2OpenFoam'), - ('Saturne', 'Fluent') : ('Saturne2CDM and CDM2Fluent'), - ('Fluent', 'OpenFOAM') : ('Fluent2CDM and CDM2OpenFoam'), -} - -listeFormatGenerique =['Med', 'Cgns', 'Gmsh', ] - -#---------------------------------------- -def prepareBlocSystemType(systemType) : -#---------------------------------------- - condition = "SystemType == '" + systemType + "'" - Identifier = SIMP(statut='o', typ=(modeleNumDuCompo,'createObject'),) - SimulatedTimeLapse = SIMP(statut ='o', typ = simulatedTime) - ChoiceOfApproach = SIMP(statut='o', typ='TXM', into=['Field_based', 'Particle_based'], position='inGetAttribut') - - dicoArgs={} - - for typeMod in ('Field_based', 'Particle_based'): - conditionType = "ChoiceOfApproach == '" + typeMod + "'" - NumericalMethod = SIMP(statut='o',typ='TXM', into=dictTypModNumModNum[systemType, typeMod], - position='global', intoXML=allValueInDict(dictTypModNumModNum)) - dicoBloc = {} - for modeleNumerique in list(dictTypModNumModNum[systemType,typeMod]): - conditionNum = "NumericalMethod == '" + modeleNumerique + "'" - setCode = set() - for code in dictCodeModeleNumerique.keys(): - if modeleNumerique in dictCodeModeleNumerique[code]: setCode.add(code) - # print('------------- conditionType -------->',conditionType) - if setCode ==set(): setCode.add('Code Nill') - Solver = SIMP(statut='o', typ='TXM', into=list(setCode), intoXML=list(dictCodeModeleNumerique.keys()) ) - monNomBloc = 'bloc_ModelName_' + modeleNumerique.replace(' ','_') #les noms de blocs ne peuvent pas avoir de blanc ! - if setCode !=set(): dicoBloc[monNomBloc]=BLOC(condition=conditionNum, nomXML='b_ModelName',Solver=Solver) - dicoArgs['blocModelType'+typeMod] = BLOC(condition=conditionType, NumericalMethod=NumericalMethod, **dicoBloc) - - blocMeshRef = BLOC(condition = '( (ChoiceOfApproach == "Field_based") and (NumericalMethod == "FV") ) or ' - '( (ChoiceOfApproach == "Particle_based") and (NumericalMethod == "CFD_Discrete_Particle_based") )', - MeshIdentifiers = SIMP(statut ='o', max ='**', typ = meshIdentifier, - metAJour=(('ApplyOnGroups', - 'self.etape.getChild("BoundaryConditions").getChild("BoundaryCondition")'),), - ),) - dicoArgs['blocMeshRef'] = blocMeshRef - NumericalModel = FACT(statut='o', max= '**', Identifier=Identifier, ChoiceOfApproach=ChoiceOfApproach, - SimulatedTimeLapse=SimulatedTimeLapse, **dicoArgs) - return BLOC(condition=condition, nomXML='b_systemType', NumericalModel=NumericalModel) - - -#----------------------------------- -def calculCommun(key1, key2, dico): -#----------------------------------- -# retourne la liste des valeurs communes a dico[key1] et dico[key2] - monSet=set() - if not key1 in dico: return () - if not key2 in dico: return () - for val in dico[key1]: - if val in dico[key2]: - monSet.add(val) - if monSet == set() : monSet.add ('No common format') - return list(monSet) - -#------------------------- -def allValueInDict(dico): -#------------------------- -# retourne la liste de toutes les valeurs possibles dans dico - monSet=set() - for clef in dico : - for val in dico[clef] : monSet.add(val) - return monSet - -#-------------------------------------------------------------------------------------------------- -def creeBlocPourLesFichiers(laCondition, Prefixe='Empty', ListeFormats=[], FieldName=None): -#--------------------------------------------------------------------------------------------------- -# il faut reflechir pour parametrer NomDuFichier -# et le type (existing... du fichier) -# et utiliser le creeBlocPourLesFichiers - SIMPFormatFichier = SIMP(statut='o', typ = 'TXM', into = tuple(ListeFormats) + ('All',), defaut='All' ) - dicoDesBlocs = {} - NomDuFichier = Prefixe+'FileName' - formatName = Prefixe+'FileFormat' - dicoDesBlocs[formatName] = SIMPFormatFichier - ListeFormatsboucle = tuple(ListeFormats) + ('All',) - for formatFich in ListeFormatsboucle : - dicoArgs={} - nomBloc = 'blocFormatFichier' + str(formatFich) - typeDesFichiers = ('Fichier', formatFich + " Files (*." + formatFich + ");;All Files (*)",'Sauvegarde') - blocCondition = formatName + " == '" + formatFich + "'" - dicoArgs[NomDuFichier] = SIMP(statut='o', typ = typeDesFichiers, nomXML=NomDuFichier ) - dicoDesBlocs[nomBloc] = BLOC(condition = blocCondition, **dicoArgs) - if FieldName: - SIMPFieldName = SIMP(statut='o', typ = 'TXM',) - dicoDesBlocs[FieldName] = SIMPFieldName - return BLOC(condition=laCondition, **dicoDesBlocs) - -#--------------------------------------------------------------------- -def prepareBlocAmbiantMediaField(condition, nomDuFact, nomDelaContante) : -#--------------------------------------------------------------------- - dicoDesBlocs = {} - dicoDuFact = {} - dicoDuFact[nomDelaContante] = SIMP(typ='TXM', statut='o', defaut = nomDelaContante, homo='constant') - monFact = FACT ( statut ='o', - **dicoDuFact, - SteadyState = SIMP(typ=bool, statut ='o', defaut = True,), - blocSteadyState = BLOC(condition = 'SteadyState == True', - FieldOrigin = SIMP(statut='o', into =['File', 'Value','Interaction'], typ ='TXM',), - blocValue = BLOC(condition = 'FieldOrigin == "Value"', - ConstantValue = SIMP(statut ='o', typ='R'), - ), - blocFile = creeBlocPourLesFichiers('FieldOrigin == "File"', 'Position', ('Med', 'cgns' ), ''), - blocInteraction = BLOC(condition = 'FieldOrigin == "Interaction"', - InteractionName = SIMP(typ=interaction,statut='o'), - Consigne = SIMP(statut="o", homo="information", typ="TXM", defaut='Create and choose suitable interaction'), - ), - ), - blocConsigne = BLOC(condition = 'SteadyState == False', - Consigne = SIMP(statut="o", homo="information", typ="TXM", defaut='Not implemented yet. Will ask for a range of calculation steps.'), - ), #BlocNotSteady - FieldAppliesOnAllSpecies = SIMP(statut='o', typ=bool, defaut=True), - blocPorteEspece = BLOC(condition = 'FieldAppliesOnAllSpecies == False ', - AppliesToSpecies = SIMP(statut='o', typ=userParticle, max= '**', homo='SansOrdreNiDoublon'), # faire un typ = "espece" - ), - ) - dicoDesBlocs[nomDuFact] = monFact - return BLOC(condition=condition,**dicoDesBlocs) - -#------------------------------ -def prepareTermeSource(condition): -#------------------------------ - return BLOC (condition=condition, - OriginOfSourceTerm = SIMP(statut='o', typ='TXM',into=['Interaction', 'Chemical Reaction', 'Other Scalar']), - blocOriginOfSourceTermInteraction = BLOC(condition = 'OriginOfSourceTerm == "Interaction"', - SourceTermInteraction = SIMP(typ=interaction,statut='o'), - Consigne = SIMP(statut="o", homo="information", typ="TXM", defaut='Create and choose suitable interaction'), - ), - blocOriginOfSourceTermOtherScalar = BLOC(condition = 'OriginOfSourceTerm == "Other Scalar"', - TakenFrom = SIMP (statut ='o', typ=scalar, ), #PNPN A FAIRE : fenetreIhm='menuDeroulant' - ), - ) - -#---------------------------------------- -def prepareTermeSourceParticle(condition): -#--------------------------------------- -# les differences avec prepareTermeSource sont -# le type de TakenFrom -# le into -# il est possible de factoriser les 2 fonctions en utilisant un intoXML mais cela -# affaiblit la possibilite de controle du XSD - - return BLOC (condition=condition, - OriginOfSourceTerm = SIMP(statut='o', typ='TXM',into=['Interaction', 'Other Particle']), - blocOriginOfSourceTermInteraction = BLOC(condition = 'OriginOfSourceTerm == "Interaction"', - SourceTermInteraction = SIMP(typ=interaction,statut='o'), - Consigne = SIMP(statut="o", homo="information", typ="TXM", defaut='Create and choose suitable interaction'), - ), - blocOriginOfSourceTermOtherScalar = BLOC(condition = 'OriginOfSourceTerm == "Other Particle"', - TakenFrom = SIMP (statut ='o', typ=userParticle, ), #PNPN A FAIRE : fenetreIhm='menuDeroulant' - ), - ) - -#--------------------------------------------------------------------------------- -def prepareFactTurbulence(statut, ajout=None , position=None, positionChoice=None): -#--------------------------------------------------------------------------------- - listInto = ['Fully resolved (DNS)', 'Spatial filtering (LES)', 'One-point moment', 'One-point PDF'] - if ajout != None : listInto.append(ajout) - return FACT(statut=statut, - TurbulenceModellingType = SIMP(typ='TXM', statut='o', into =listInto, position=position ), - -# --------------- One-point moment ------------------ - blocOnePoint = BLOC(condition= "TurbulenceModellingType == 'One-point moment'", - RANSModel = SIMP(statut="o", typ="TXM", position='global', - into=['Turbulent-Viscosity Model (TVM)', 'Reynolds Stress Model (RSM)']), - blocTVM = BLOC(condition= "RANSModel == 'Turbulent-Viscosity Model (TVM)'", - TVMChoice = SIMP(typ='TXM', statut='o', into=['K-Epsilon', 'K-Omega'] , position=positionChoice), ##PN PN : parametre vs reCalculeEtape - ), # fin blocTVM - blocRSM = BLOC(condition = "RANSModel == 'Reynolds Stress Model (RSM)'", - RSMChoice = SIMP(typ='TXM', statut='o', into=['Rotta', 'LRR-IP','LRR-QI','SSG'], position=positionChoice), - ), # fin blocRSM - ), # fin bloc_one_point - -# --------------- Spatial filtering (LES) ------------------ - blocOneSpatial = BLOC(condition = "TurbulenceModellingType == 'Spatial filtering (LES)'", - ChoiceOfDescription = SIMP(typ='TXM', statut='o', into=['One-point filtered variables', 'Filtered Density Function (FDF)']), - blocOnePoint = BLOC(condition = "ChoiceOfDescription == 'One-point filtered variables'", - SubgridScaleModel = SIMP(typ='TXM', statut='o', into=['No SGS', 'Smagorinsky','Dynamical model', 'SGS Transport Equations']), - ),# fin bloc_OnePoint - blocFDF = BLOC(condition = "ChoiceOfDescription == 'Filtered Density Function (FDF)'", - SubgridScaleModel = SIMP(typ='TXM', statut='o', into=['SLM model for SGS', 'Viscous SLM model for SGS']), - ),# fin bloc_FDF - ), # fin bloc_one_spatial - -# --------------- One-point PDF ------------------ - blocOnePointPdf = BLOC(condition = "TurbulenceModellingType == 'One-point PDF'", - ChoiceOfDescription = SIMP(typ='TXM', statut='o', into=['Velocity PDF', 'Velocity frequency PDF']), - blocVPdf = BLOC(condition = "ChoiceOfDescription == 'Velocity PDF'", - StochasticModel = SIMP(typ='TXM', statut='o', into=['SLM','GLM'], defaut='SLM'), - ), # fin blocVPdf - blocVFPdf = BLOC(condition = "ChoiceOfDescription == 'Velocity frequency PDF'", - StochasticModel = SIMP(typ='TXM', statut='o', into=['Log-normal model','Gamma model','User-defined form'], defaut='SLM'), - ), # fin blocVFPdf - ), # fin bloc_one_point_pdf - -# --------------- Fully resolved (DNS) ------------------ - # blocNoModel = BLOC(condition = "TurbulenceModellingType == 'Fully resolved (DNS)'", - # ChoiceOfApproach = SIMP(statut='o', typ='TXM', into=['Field_based (DNS)', 'Particle_based']), - # blocField = BLOC(condition = "ChoiceOfApproach == 'Field_based (DNS)'", - # NumericalMethod = SIMP(statut='o', typ='TXM', into=['FV', 'Spectral Method'], - # intoXML=['FV', 'Spectral Method','SPH', 'Vortex Method']), - # ),# fin bloc_Field - # blocNParticle = BLOC(condition = "ChoiceOfApproach == 'Particle_based'", - # NumericalMethod = SIMP(statut='o', typ='TXM', into=['SPH', 'Vortex Method'], - # intoXML=['FV', 'Spectral Method','SPH', 'Vortex Method']), - # ),# fin bloc_N_particle - # ), # fin bloc_no_model - ) # fin du return de la fonction factTurbulence - -#-------------------------------------- -def prepareFactTurbulenceForParticule(): -#-------------------------------------- - listInto = ['Fully resolved (DNS)', 'Spatial filtering (LES)', 'One-point moment', 'One-point PDF'] - return FACT(statut='o', - NatureOfFlow = SIMP(typ='TXM', statut='o', into =['Laminar', 'Turbulent'], position='global'), - blocTurbulent = BLOC( condition = 'NatureOfFlow == "Turbulent"', - TurbulenceModellingType = SIMP(typ='TXM', statut='o', into =listInto,), -# --------------- One-point moment ------------------ - blocOnePoint = BLOC(condition= "TurbulenceModellingType == 'One-point moment'", - RANSModel = SIMP(statut="o", typ="TXM", into=['Turbulent-Viscosity Model (TVM)', 'Reynolds Stress Model (RSM)']), - ), # fin bloc_one_point - -# --------------- Spatial filtering (LES) ------------------ - blocOneSpatial = BLOC(condition = "TurbulenceModellingType == 'Spatial filtering (LES)'", - ChoiceOfDescription = SIMP(typ='TXM', statut='o', into=['One-point filtered variables', 'Filtered Density Function (FDF)']), - ), # fin bloc_one_spatial - -# --------------- One-point PDF ------------------ - blocOnePointPdf = BLOC(condition = "TurbulenceModellingType == 'One-point PDF'", - ChoiceOfDescription = SIMP(typ='TXM', statut='o', into=['Velocity PDF', 'Velocity frequency PDF']), - ), # fin bloc_one_point_pdf - #TypeOfHydroDynamicForce - blocTMD = BLOC(condition ='NatureOfFlow == "Turbulent" and "Drag" in TypeOfHydroDynamicForce', - TurbulenceModelDispersion = SIMP (statut ='o', typ='TXM', into = ['Langevin']), - BlocInitialisationLangevin = BLOC(condition ='TurbulenceModelDispersion == "Langevin"', - InitialisationType = SIMP(statut='o', into =['ByInteraction', 'ByFile' ], typ ='TXM', ), - blocByFile = creeBlocPourLesFichiers('OrigineType == "ByFile"', '', ListeFormats = 'all', FieldName=None), - blocByInteraction = BLOC(condition = 'InitialisationType == "ByInteraction"', - Consigne = SIMP(statut="o", homo="information", typ="TXM", defaut='Create and choose suitable interactions'), - InteractionNameForPressure = SIMP(typ=interaction,statut='o'), - InteractionNameForVelocity = SIMP(typ=interaction,statut='o'), - InteractionNameForEpsilon = SIMP(typ=interaction,statut='o'), - InteractionNameForRij = SIMP(typ=interaction,statut='o'), - ), - ), - ), - ),# fin bloc Turbulent - ) # fin du return de la fonction factTurbulence - -#-------------------------------------------------------- -def prepareFactTurbulenceScalaire(statut, position=None): -#------------------------------------------------------- - listInto = ['Fully resolved (DNS)', 'Spatial filtering (LES)', 'One-point moment', 'One-point PDF'] - return FACT(statut=statut, - TurbulenceModellingType = SIMP(typ='TXM', statut='o', into =listInto, position=position ), - -# --------------- One-point moment ------------------ - blocOnePoint = BLOC(condition= "TurbulenceModellingType == 'One-point moment'", - RANSModel = SIMP(statut="o", typ="TXM", - into=['Algebraic flux models','Turbulent diffusivity models', 'Scalar-flux transport equations']), - # Ce bloc consigne ne passe pas dans la projection XSD - # blocAlgebraic = BLOC(condition= "RANSModel == 'Algebraic flux models'", - blocConsigne = BLOC(condition= "RANSModel == 'Algebraic flux models'", - Consigne = SIMP(statut="o", homo="information", typ="TXM", defaut='Not implemented yet'), - ), # fin blocAlgebraic - blocTDM = BLOC(condition = "RANSModel == 'Turbulent diffusivity models'", - TDMChoice = SIMP(typ='TXM', statut='o', into=['SGDH', 'GGDH',]), - ), # fin blocTDM - blocSFTE = BLOC(condition = "RANSModel == 'Scalar-flux transport equations'", - SFTEChoice = SIMP(typ='TXM', statut='o', into=['Pressure-scrambling model', 'EB-DFM',]), - ), # fin blocSFTE - ), # fin bloc_one_point - -# --------------- Spatial filtering (LES) ------------------ - blocOneSpatial = BLOC(condition = "TurbulenceModellingType == 'Spatial filtering (LES)'", - ChoiceOfDescription = SIMP(typ='TXM', statut='o', into=['One-point filtered variables', 'Filtered Density Function (FDF)']), - blocOnePoint = BLOC(condition = "ChoiceOfDescription == 'One-point filtered variables'", - SubgridScaleModel = SIMP(typ='TXM', statut='o', into=['No SGS model', 'SGS diffusivity', 'Transport eqs. for SGS scalar fluxes']), - ),# fin bloc_OnePoint - blocFDF = BLOC(condition = "ChoiceOfDescription == 'Filtered Density Function (FDF)'", - SubgridScaleModel = SIMP(typ='TXM', statut='o', into=['Composition FDF', 'Scalar-velocity FDF', 'Micro-mixing model']), - ),# fin bloc_FDF - ), # fin bloc_one_spatial - -# --------------- One-point PDF ------------------ - blocOnePointPdf = BLOC(condition = "TurbulenceModellingType == 'One-point PDF'", - ChoiceOfDescription = SIMP(typ='TXM', statut='o', into=['Composition PDF','Velocity PDF', 'Micro-mixing models']), - # blocCPdf = BLOC(condition = "(ChoiceOfDescription == 'Composition PDF') or (ChoiceOfDescription == 'Velocity PDF')", - # blocConsigne = BLOC(condition = "(ChoiceOfDescription == 'Composition PDF') or (ChoiceOfDescription == 'Velocity PDF')", - # Consigne = SIMP(statut="o", homo="information", typ="TXM", defaut='Not implemented yet.'), - # ), # fin blocCPdf - # blocVPdf = BLOC(condition = "ChoiceOfDescription == 'Velocity PDF'", - # ), # fin blocVPdf - blocMMMPdf = BLOC(condition = "ChoiceOfDescription == 'Micro-mixing models'", - ChoiceOfModel = SIMP(typ='TXM', statut='o', into=['IEM/CIEM','Curl model','Mapping','EMST'],), - ), # fin blocMMMdf - ), # fin bloc_one_point_pdf - -# --------------- Fully resolved (DNS) ------------------ - # blocNoModel = BLOC(condition = "TurbulenceModellingType == 'Fully resolved (DNS)'", - # ChoiceOfApproach = SIMP(statut='o', typ='TXM', into=['Field_based (DNS)', 'Particle_based']), - # blocField = BLOC(condition = "ChoiceOfApproach == 'Field_based (DNS)'", - # NumericalMethod = SIMP(statut='o', typ='TXM', into=['FV', 'Spectral Method'], - # intoXML=['FV', 'Spectral Method','SPH', 'Vortex Method']), - # ),# fin bloc_Field - # blocNParticle = BLOC(condition = "ChoiceOfApproach == 'Particle_based'", - # NumericalMethod = SIMP(statut='o', typ='TXM', into=['SPH', 'Vortex Method'], - # intoXML=['FV', 'Spectral Method','SPH', 'Vortex Method']), - # ),# fin bloc_N_particle - # ), # fin bloc_no_model - ) # fin du return de la fonction factTurbulence - - -#-------------------- -def prepareBlocCPS(): -#-------------------- - return BLOC(condition = 'SystemType == "Classical particle system"', - Particles = prepareParticles(), - -# ----------------------------- AmbiantMediaInteraction ---------------------------------- - AmbiantMediaInteraction = FACT(statut='o', - MomentumExchange = FACT(statut='o', - withMomentumExchange = SIMP(statut='o', typ=bool, defaut=False), - blocMomentum = BLOC(condition = 'withMomentumExchange == True', - MomentumFieldType = SIMP(statut='o', typ='TXM', into=['Gravitational','Electric','Magnetic', 'Hydrodynamic'], max='**', homo='SansOrdreNiDoublon',position='reCalculeEtape'), - blocElectric = prepareBlocAmbiantMediaField('MomentumFieldType != None and "Electric" in MomentumFieldType', 'DefineElectricForce', 'E') , - blocMagnetic = prepareBlocAmbiantMediaField('MomentumFieldType != None and "Magnetic" in MomentumFieldType', 'DefineMagneticForce', 'B') , - blocGravite = BLOC(condition = 'MomentumFieldType != None and "Gravitational" in MomentumFieldType', - DefineGravityForce = FACT (statut='o', - InitialisationType = SIMP(statut='o', into =['ByValue', 'ByFile' ], typ ='TXM', defaut='ByValue'), - blocInitValue= BLOC(condition = 'InitialisationType == "ByValue"', - G = SIMP(statut='o', typ='R', defaut=9.81), - Direction = FACT (statut ='o', - GX = SIMP(statut='o', typ='R', ), - GY = SIMP(statut='o', typ='R', ), - GZ = SIMP(statut='o', typ='R', ), - ), - ), # fin blocInitValue - #PN : a completer pour fichier - FieldAppliesOnAllSpecies = SIMP(statut='o', typ=bool, defaut=True), - blocPorteEspece = BLOC(condition = 'FieldAppliesOnAllSpecies == False ', - AppliesToSpecies = SIMP(statut='o', typ=userParticle, max= '**', homo='SansOrdreNiDoublon'), # faire un typ = "espece" - ), - ), # Fact Gravite - ), # bloc Gravite - blocHydro = BLOC(condition = 'MomentumFieldType != None and "Hydrodynamic" in MomentumFieldType', - DefineForceOnParticle = FACT (statut='o', - TypeOfHydroDynamicForce = SIMP(statut='o', max='**', typ='TXM', into=['Drag', 'Lift', 'Fluid Pressure Gradient', 'ThermoPhoresis', 'Brownian Motion'], homo='SansOrdreNiDoublon', position='global'), - - FieldAppliesOnAllSpecies = SIMP(statut='o', typ=bool, defaut=True), - blocPorteEspece = BLOC(condition = 'FieldAppliesOnAllSpecies == False ', - AppliesToSpecies = SIMP(statut='o', typ=userParticle, max= '**', homo='SansOrdreNiDoublon'), # faire un typ = "espece" - ), - NatureOfFluidForce = prepareFactTurbulenceForParticule() - ), - ), - ), # fin blocMomentum - ), # fin MomentumExchange - MassExchange = FACT(statut='o', - withMassExchange = SIMP(statut='o', typ=bool, defaut=False), - blocMassExchange = BLOC(condition = 'withMassExchange == True', - MassExchangeFieldType = SIMP(statut='o', typ='TXM', into=['Evaporation','Condensation','Precipitation'], max='**', homo='SansOrdreNiDoublon',), - ), # fin blocMassExchange - ), # fin MassExchange - EnergyExchange = FACT(statut='o', - withEnergyExchange = SIMP(statut='o', typ=bool, defaut=False), - blocEnergyExchange = BLOC(condition = 'withEnergyExchange == True', - EnergyExchangeFieldType = SIMP(statut='o', typ='TXM', into=['HeatTransfer','Radiation','Combustion'], max='**', homo='SansOrdreNiDoublon',), - ), # fin blocMassExchange - ), # fin EnergyExchange - AmbientInducedProcesses = FACT(statut='o', - withAmbientInducedProcesses = SIMP(statut='o', typ=bool, defaut=False), - blocAmbientInducedProcesses = BLOC(condition = 'withAmbientInducedProcesses == True', - AmbientInducedProcessesType= SIMP(statut='o', typ='TXM', into=['Fragmentation',], max='**', homo='SansOrdreNiDoublon',), - bAmbientInducedProcessesType = BLOC(condition = '(AmbientInducedProcessesType != None) and ("Fragmentation" in AmbientInducedProcessesType)', - #PN : pb dans les locaux et l operateur in - LevelOfDescription= SIMP(statut='o', typ='TXM', into=['Fully-resolved','Mean-field approaches']), - bMeanField = BLOC(condition = "LevelOfDescription == 'Mean-field approaches'", - FragmentationRate = SIMP(statut='o', typ='R'), - DaughterSizeDistribution = SIMP(statut='o', typ='R'), - ), - ), - ), # fin AmbientInducedProcesses - ), # fin EnergyExchange - AdditionalSamplingOfAmbientMedia = FACT(statut='o', - withAdditionalSamplingOfAmbientMedia = SIMP(statut='o', typ=bool, defaut=False), - blocAdditionalSamplingOfAmbientMedia = BLOC(condition = 'withAdditionalSamplingOfAmbientMedia == True', - FluidProperties = FACT(statut='o', - VelocityGradient = SIMP(statut='o', typ = bool, defaut=False), - PressureGradient = SIMP(statut='o', typ = bool, defaut=False), - ), - ), # fin blocblocAdditionalSamplingOfAmbientMedia - ), # fin AdditionalSamplingOfAmbientMedia - ), # fin AmbiantMediaInteraction - - ParticleParticleInteraction = FACT(statut='o', max = "**", - # -------------------------------------------------------# - BondedInteractions = prepareBondedInteractions(), - ActionsAtDistance = prepareActionsAtDistance(), - ContactPhenomena = prepareContactPhenomena(), - ), # fin ParticleParticleInteraction - - ParticleWallInteraction = FACT(statut='o', max = "**", - withParticleWallInteraction = SIMP(statut='o', typ =bool, defaut=False), - bwithParticleWallInteraction = BLOC (condition = 'withParticleWallInteraction == True', - ParticleWallInteractionId= SIMP(typ=(wallInteractionId,'createObject'), statut='o',), - TypeOfWall = FACT(statut='o', - Dynamics = SIMP(statut='o', typ='TXM', into = ('Fixed position','Moving wall'),), - LevelOfDescription = SIMP(statut='o', typ='TXM', into = ('Discretized particles','Continuum'),), - bContinuum = BLOC(condition = 'LevelOfDescription == "Continuum"', - SurfaceTexture = SIMP(statut='o', typ='TXM', into = ('Smooth','Rough'),), - ), - bDiscretized = BLOC(condition = 'LevelOfDescription == "Discretized particles"', - BondedInteractions = prepareBondedInteractions(True), - ), - ), - ActionsAtDistance = prepareActionsAtDistanceForWall(), - ContactPhenomena = prepareContactPhenomenaWall(), - ), - ),# fin ParticleWallInteraction - - ConstraintsAndReducedStatisticalDescription = FACT(statut='o', - Constraint= FACT(statut='o', - TypeOfConstraint = SIMP( typ='TXM', statut='o', into=['Quasi-static_methods','Brownian_dynamics','Presumed_transport','Time-marching_equilibrium','Time-marching_non-equilibrium'],defaut=['Time-marching_non-equilibrium',], max ='**', position='reCalculeEtape', homo='SansOrdreNiDoublon'), - ), - ), - -# transparents 163 et 164 -# si brownian Diameter mass et position -# Presumed transport -# No particle transport --> -# givencenter-of-mass transport __> position sera presente mais given transport - - StateVector = FACT(statut ='o', - ParticleDiameter = FACT(statut ='o', - Diameter = SIMP(typ=(dynamicVariable,'createObject'), statut='o', defaut ='Diameter', homo='constant'), - ToSimulate = SIMP(typ=bool, statut ='o', defaut = True,), - blocSimulatedDiameter = prepareBlocInitialisationParticle(condition = 'ToSimulate == True', termeSource=True), - ), - ParticleMass = FACT(statut ='o', - Mass = SIMP(typ=(dynamicVariable,'createObject'), statut='o', defaut ='Mass', homo='constant'), - ToSimulate = SIMP(typ=bool, statut ='o', defaut = True,), - blocSimulatedMass = prepareBlocInitialisationParticle(condition = 'ToSimulate == True', termeSource=True), - ), - ParticlePosition = FACT(statut ='o', - Position = SIMP(typ=(dynamicVariable,'createObject'), statut='o', defaut ='Position', homo='constant'), - ToSimulate = SIMP(typ=bool, statut ='o', defaut = True,), - blocSimulatedPosition = prepareBlocInitialisationParticle(condition = 'ToSimulate == True', termeSource=False), - blocNoSimulatedPosition = prepareBlocOrigine(condition = 'ToSimulate == False') - ), - blocNoBrownianDynamics = BLOC(condition = '(TypeOfConstraint != None) and not("Brownian dynamics" in TypeOfConstraint)', - ParticleVelocity = FACT(statut ='o', - Velocity = SIMP(typ=(dynamicVariable,'createObject'), statut='o', defaut ='Velocity', homo='constant'), - ToSimulate = SIMP(typ=bool, statut ='o', defaut = True,), - blocSimulatedVelocity = prepareBlocInitialisationParticle(condition = 'ToSimulate == True', termeSource=True), - blocNotSimulatedVelocity = prepareBlocOrigine(condition = 'ToSimulate == False',), - ), #fin VelocityDefinition - blocHydrodynamic = BLOC(condition = '"Hydrodynamic" in MomentumFieldType', - FluidVelocitySeenByParticles = FACT(statut ='o', - FluidSeenVelocity = SIMP(typ=(dynamicVariable,'createObject'), statut='o', defaut ='FluidSeenVelocity', homo='constant'), - ToSimulate = SIMP(typ=bool, statut ='o', defaut = True,), - blocHydrodynamicVelocity = prepareBlocInitialisationParticle(condition = 'ToSimulate == True', termeSource=True), - #blocNotHydrodynamicVelocity = prepareBlocOrigine(condition = 'ToSimulate == False',), - ) , - ) , - ), #blocNoBrownianDynamics - ), #fin StateVector - )# fin du prepareBlocCps - -#---------------------- -def prepareParticles(): -#---------------------- - return FACT(statut='o', max='**', - ParticleNature = SIMP(statut='o', typ='TXM', - into=['Atom', 'Molecule', 'Dissipative Particle', 'Fluid Particle', 'Discrete Particle']), - blocAtomName = BLOC(condition='ParticleNature == "Atom"', - ParticleName = SIMP(statut='o', typ=(userAtom,'createObject') ), - InitialNumberOfParticles = SIMP(statut='o', typ='I', val_min=0), - ), - - blocMoleculeName = BLOC(condition='ParticleNature == "Molecule"', - ParticleName = SIMP(statut='o', typ=(userMolecule,'createObject')), - InitialNumberOfParticles = SIMP(statut='o', typ='I', val_min=0), - ), - - blocDissipativeName = BLOC(condition='ParticleNature == "Dissipative Particle"', - ParticleName = SIMP(statut='o', typ=(userDPD,'createObject')), - InitialNumberOfParticles = SIMP(statut='o', typ='I', val_min=0), - ), - - blocDiscreteName = BLOC(condition='ParticleNature == "Discrete Particle"', - ParticleName = SIMP(statut='o', typ=(userDiscrete,'createObject')), - InitialNumberOfParticles = SIMP(statut='o', typ='I', val_min=0), - ), - - blocAtom = BLOC(condition='ParticleNature == "Atom"', - ChemicalSpecies = SIMP(statut='o', typ='TXM'), - ElectricCharge = SIMP(statut='f', typ='R'), - MagneticMoment = SIMP(statut='f', typ='R'), - Size = SIMP(statut='f', typ='R'), # relevant ? - # ),# Atom - ), # fin b_Atom -# --------------- Molecules ------------------ - blocMolecule = BLOC(condition='ParticleNature == "Molecule"', - Shape = SIMP(statut='o', typ='TXM', into=['Linear', 'Trigonal Planar', 'Angular', 'Tetrahedral', 'Octahedral', 'Trigonal pyramid', 'Other']), - ElectricCharge = SIMP(statut='f', typ='R'), - MagneticMoment = SIMP(statut='f', typ='R'), - Size = SIMP(statut='f', typ='R'), # relevant ? - ), #fin b_Molecule -# --------------- Dissipative ------------------ - blocDissipative = BLOC(condition='ParticleNature == "Dissipative Particle"', - BondedParticles = SIMP(statut="o", typ=bool, defaut=False), - ), # b_Dissipative - -# --------------- Discrete Particle ------------------ - blocDiscrete = BLOC(condition='ParticleNature == "Discrete Particle"', - TypeOfDiscreteParticle = SIMP(statut='o', typ='TXM', into=['Solid', 'Droplets', 'Bubbles','Bio Organism'],), - blocTypeDPSolid = BLOC(condition ='TypeOfDiscreteParticle == "Solid"', - PrimaryOrAggregate = SIMP(statut='o', typ='TXM', into=['Primary Particle', 'Assemblage / Aggregate'], ), -# b_SolidPrimary = BLOC(condition='PrimaryOrAggregate == "Primary Particle"', -# ), - b_SolidAggregate = BLOC(condition='PrimaryOrAggregate == "Assemblage / Aggregate"', - Morphology = FACT (statut ='o', - NumberOfPrimaryParticles = SIMP(statut='o', typ='I', val_min=0), - FractalDimension = SIMP(statut='o', typ='R', val_min=1), - EquivalentSize = SIMP(statut='o', typ='I', val_min=0), - Porosity = SIMP(statut='o', typ='I', val_min=0), - ), - ), - ), -# --------------- Bio Organism ------------------ - blocTypeBioSolid = BLOC(condition='TypeOfDiscreteParticle == "Bio Organism"', - TypeOfOrganism = SIMP(statut='o', typ='TXM', into=['Unicellular', 'Multicellular']), - blocUnicellular = BLOC(condition ='TypeOfOrganism=="Unicellular"', - Unicellular = SIMP(statut='o', typ='TXM', into=["Bactaria"], defaut='Bactaria') - ), - b_Multicellular = BLOC(condition ='TypeOfOrganism=="Multicellular"', - Multicellular = SIMP(statut='o', typ='TXM', into=["Animal","Fongus","Plant"]) - ), - ), # b_TypeBio_Solid - -# --------------- Particule Properties ------------------ - Properties = FACT(statut ='o', - Geometry = SIMP(statut='o', typ='TXM', into=['Sphere', 'Ellipsoids', 'Other Shape']), - b_geom_Sphere = BLOC(condition = 'Geometry == "Sphere"', - ReferenceParticleRadius = SIMP(statut='o', typ ='R', val_min = 0), - ), - Weight = FACT(statut = 'o', - regles = (UN_PARMI('Mass','Density'),), - Consigne = SIMP(statut="o", homo="information", typ="TXM", defaut='Choose between Mass or Density (supress current choice to change)'), - Mass = SIMP(statut='f', typ ='R', val_min = 0), - Density = SIMP(statut='f', typ ='R', val_min = 0), - ), - Mechanical = SIMP(statut='o', typ='TXM', into=['Rigid', 'Flexible', 'Deformable']), - b_SolidAggregate = BLOC(condition='TypeOfSolid == "Assemblage / Aggregate"', - Morphological = FACT(statut = 'o', - Consigne = SIMP(statut="o", homo="information", typ="TXM", defaut='Choose optional properties'), - FractalDimension = SIMP(statut='f', typ='R'), - NumberOfPrimaryParticle = SIMP(statut ='f',typ='I'), - EquivalentSize = SIMP(statut='f', typ='R'), - Porosity = SIMP(statut='f', typ='R'), - ), # Morphological - ), # b_SolidAggregate - ElectroMagnetic = FACT(statut = 'f', - ElectricCharge = SIMP(statut='o', typ='R'), - MagneticMoment = SIMP(statut='o', typ='R'), - ), - b_SolidAggregateBonded = BLOC(condition='TypeOfSolid == "Assemblage / Aggregate"', - BondedParticles = FACT( - ListOfBondedParticles = SIMP(statut='o', max='**', typ = userParticle), - ), - ), - ), # Properties - ), # b_Discrete - ) # fin Particle - -#--------------------------------- -def prepareContactPhenomena(): -#--------------------------------- - return FACT(statut='o', max= "**", - withContactPhenomena = SIMP(statut='o', typ=bool, defaut=False), - bwithContact = BLOC(condition = 'withContactPhenomena == True', - LevelOfDescription = SIMP(statut='o', typ='TXM', into=[ 'Microscopic', 'Macroscopic']), - bMicroscopic = BLOC(condition = 'LevelOfDescription == "Microscopic"', - DescriptionOfContact = SIMP(statut='o', typ='TXM', into=[ 'Contact distance (cutoff)', 'Contact force']), - ), - bMacroscopic = BLOC(condition = 'LevelOfDescription == "Macroscopic"', - OutcomeOfContact = SIMP(statut='o', typ='TXM', into=[ 'Sticky collision','Elastic collision','Inelastic collision', 'Mixed collisional event'],), - ), - TreatmentOfCollisions = SIMP(statut='o', typ='TXM', into=[ 'No collision', 'Binary/multiple particle collisions', 'Collision-induced fragmentation'], fenetreIhm = 'menuDeroulant', defaut = 'No collision'), - ), #bwithActions - )#FACT - -#--------------------------------- -def prepareContactPhenomenaWall(): -#--------------------------------- - return FACT(statut='o', max= "**", - withContactPhenomena = SIMP(statut='o', typ=bool, defaut=False), - bwithContact = BLOC(condition = 'withContactPhenomena == True', - LevelOfDescription = SIMP(statut='o', typ='TXM', into=[ 'Microscopic', 'Macroscopic']), - bMicroscopic = BLOC(condition = 'LevelOfDescription == "Microscopic"', - DescriptionOfContact = SIMP(statut='o', typ='TXM', into=[ 'Contact distance (cutoff)', 'Contact force']), - ), - bMacroscopic = BLOC(condition = 'LevelOfDescription == "Macroscopic"', - OutcomeOfContact = SIMP(statut='o', typ='TXM', into=[ 'Sticky collision','Elastic collision','Inelastic collision', 'Mixed collisional event']), - ), - ), #bwithActions - )#FACT - -#--------------------------------- -def prepareActionsAtDistance(): -#--------------------------------- - return FACT(statut='o', max= "**", - withActionsAtDistance = SIMP(statut='o', typ=bool, defaut=False), - bwithActions = BLOC(condition = 'withActionsAtDistance == True', - TypeOfActionAtDistance = SIMP(statut='o', typ='TXM', into=[ 'electro_magnetic', 'Inter-surface forces', 'Fluid-like forces','Fluid-mediated forces', 'Biological forces','Radiative Effects'], position='global',fenetreIhm='menuDeroulant'), - - blocElec = BLOC(condition = 'TypeOfActionAtDistance == "electro_magnetic"', - Permittivity = SIMP(statut='o', typ='R', ), - Magnetic = SIMP(statut='o', typ=bool, defaut=False,), - blocMagnetic = BLOC(condition = 'Magnetic == True', - Permeability = SIMP(statut='o', typ='R'), - ), # bloc_magnetic - Consigne = SIMP(statut="o", homo="information", typ="TXM", defaut="Don't forget to add Electromagnetic Property to each Particle class."), - # Creation PN activation ElectricCharge - ),# fin bloc_elec - - blocInterSurface = BLOC(condition = 'TypeOfActionAtDistance == "Inter-surface forces"', - TypeInterSurfaceForce = SIMP(statut='o', typ='TXM', into = [ 'Lennard_Jones', 'Steric', 'Soft_Potential','van der Waals']), - blocvanderWaals = BLOC(condition = "TypeInterSurfaceForce == 'van der Waals'", - HamakerConstant = SIMP(statut='o', typ='R', val_min=0), - ParticlesPairs = SIMP(statut='o', max=2, typ=userParticle), - ), - blocLennard = BLOC(condition = "TypeInterSurfaceForce == 'Lennard_Jones'", - LennardJonesRadius = SIMP(statut='o', typ='R', val_min=0), - DepthOfThePotentialWell = SIMP(statut='o', typ='R', val_min=0), - ParticlesPairs = SIMP(statut='o', max=2, typ=userParticle), - ), # fin b_Lennard - - blocParamSoftPotentiel = BLOC(condition = "TypeOfActionAtDistance == 'Soft_Potentiel'", - GrootWarrenRepulsion = SIMP(statut='o', typ='R', defaut=25.0, val_min=0), - GrootWarrenCutoff = SIMP(statut='o', typ='R', defaut=1.0, val_min=0), - DragCoefficient = SIMP(statut='o', typ='R'), # les 2 valent 0 pour MD - DragForceCutoff = SIMP(statut='o', typ='R', val_min=0), - ParticlesPairs = SIMP(statut='o', max=2, typ=userParticle), - ), # b_Param_Soft_Potentiel - ), # bloc_VdW - - ) # fin bloc - ) # fin prepareActionsAtADistance - -#--------------------------------- -def prepareActionsAtDistanceForWall(): -#--------------------------------- - return FACT(statut='o', max= "**", - withActionsAtDistance = SIMP(statut='o', typ=bool, defaut=False), - bwithActions = BLOC(condition = 'withActionsAtDistance == True', - TypeOfActionAtDistance = SIMP(statut='o', typ='TXM', into=[ 'electro_magnetic', 'Inter-surface forces', 'Fluid-like forces','Fluid-mediated forces', 'Biological forces','Radiative Effects'], position='global',fenetreIhm='menuDeroulant'), - - blocElec = BLOC(condition = 'TypeOfActionAtDistance == "electro_magnetic"', - Permittivity = SIMP(statut='o', typ='R', ), - Magnetic = SIMP(statut='o', typ=bool, defaut=False,), - blocMagnetic = BLOC(condition = 'Magnetic == True', - Permeability = SIMP(statut='o', typ='R'), - ), # bloc_magnetic - # Creation PN activation ElectricCharge - ),# fin bloc_elec - - blocInterSurface = BLOC(condition = 'TypeOfActionAtDistance == "Inter-surface forces"', - TypeInterSurfaceForce = SIMP(statut='o', typ='TXM', into = [ 'Lennard_Jones', 'Steric', 'Soft_Potential','van der Waals']), - blocvanderWaals = BLOC(condition = "TypeInterSurfaceForce == 'van der Waals'", - HamakerConstant = SIMP(statut='o', typ='R', val_min=0), - ), - blocLennard = BLOC(condition = "TypeInterSurfaceForce == 'Lennard_Jones'", - LennardJonesRadius = SIMP(statut='o', typ='R', val_min=0), - DepthOfThePotentialWell = SIMP(statut='o', typ='R', val_min=0), - ), # fin b_Lennard - - blocParamSoftPotentiel = BLOC(condition = "TypeOfActionAtDistance == 'Soft_Potentiel'", - GrootWarrenRepulsion = SIMP(statut='o', typ='R', defaut=25.0, val_min=0), - GrootWarrenCutoff = SIMP(statut='o', typ='R', defaut=1.0, val_min=0), - DragCoefficient = SIMP(statut='o', typ='R'), # les 2 valent 0 pour MD - DragForceCutoff = SIMP(statut='o', typ='R', val_min=0), - ), # b_Param_Soft_Potentiel - ), # bloc_VdW - - blocActionChoisie = BLOC (condition = 'TypeOfActionAtDistance !=None ', - LevelOfDescriptionNearWalls= SIMP(statut='o', typ='TXM', into =('Full force-distance curve', 'Simplified treatment'),), - blocSimplifed = BLOC (condition = 'LevelOfDescriptionNearWalls == "Simplified treatment" ', - TypeOfSimplifiedTreatment =SIMP(statut='o', typ='TXM', into =('Energy-based Wall Model',) - ), - ), - ) # fin blocActionChoisie - ) # fin bloc - ) # fin prepareActionsAtADistanceForWall - -#-------------------------------------------- -def prepareBondedInteractions(fromWall=False): -#--------------------------------- - intoHorsWall=[ 'Bond stretching', 'Angle bending', 'Torsional motion', 'Frozen or collective motion',] - intoWall=[ 'Bond stretching', 'Angle bending', 'Torsional motion', 'Frozen or collective motion','Contact mechanics'] - if fromWall : - mesInto=intoWall - #monBondedParticles = SIMP(statut='o', typ='TXM', defaut='True', into=['True',]) #PNPN - monBondedParticles = SIMP(statut='o', typ=bool, defaut=1, ) - else : - mesInto=intoHorsWall - monBondedParticles = SIMP(statut='o', typ=bool, defaut=False) - - return FACT(statut='o', max = "**", - BondedParticles = monBondedParticles, - blocBonded = BLOC(condition = 'BondedParticles == True', - DescribedWithTopologyFile = SIMP(statut='o', typ=bool, defaut=False), - blocTopologyFile = BLOC (condition = 'DescribedWithTopologyFile == True', - TopologyFile =SIMP(statut='o', typ=('Fichier', " Files (*.pdb );;All Files (*)",'Sauvegarde')), - ), - blocNoTopologyFile = BLOC (condition = 'DescribedWithTopologyFile == False', - BondedInteraction = FACT (statut ='o', max ='**', - NatureOfBondedInteraction = SIMP(statut='o', typ='TXM', into= mesInto, intoXML = intoWall), - bBondStretching = BLOC ( condition = 'NatureOfBondedInteraction == "Bond stretching"', - TypeOfBondStretching = SIMP(statut='o', typ='TXM', into=[ 'Bond harmonic potential', 'FENE',],), -# ------------ FENE ------------------ - blocFENE = BLOC(condition = 'TypeOfBondStretching == "FENE"', - FENEParameters = FACT(statut='o', max="**", - SpringConstant_H = SIMP(statut='o', typ='R', val_min=0), - LMax = SIMP(statut='o', typ='R', val_min=0), - ListOfBondedParticles = SIMP(statut='o', max='**', typ = Tuple(2), validators=VerifTypeTuple(('I','I'),)), - ), # fin FENE_Parameters - ), # fin blocFENE -# ------------ Harmonic potential Parameters ------------------ - blocharmonic = BLOC(condition = 'TypeOfBondStretching == "Bond harmonic potential"', - BondHarmonicParameters = FACT(statut='o', max="**", - ListOfBondedParticles = SIMP(statut='o', max='**', typ = Tuple(2), validators=VerifTypeTuple(('I','I'),)), - ), # fin BondHarmonicParameters - ), # fin blocharmonic - ), # fin bBondStretching - #TypeOfBondedInteraction = SIMP(statut='o', typ='TXM', into=[ 'Covalent Bond Length', 'FENE', 'Covalent Bond Angle', 'Dihedral Angles', 'Improper Dihedral ou Torsonial Motion ?', 'Frozen Motion', 'Angle bending' ], defaut='NoOne'), - - #PNPN 114 - #La saisie de l'ensemble des liaisons d'un meme type peut se faire ds le meme bloc (soit ds un fichier, soit manuelle) - #Une seule valeur de distante? est a saisir pour l'ensemble - -# ------------ Covalent Bond Length ------------------ - # blocCovalentLength = BLOC(condition = 'TypeOfBondedInteraction == "Covalent Bond Length"', - # InteractionLengthParameters = FACT(statut='o', max="**", - # SpringStifness = SIMP(statut='o', typ='R', val_min=0), - # MeanBondLength = SIMP(statut='o', typ='R', val_min=0), - # ListOfBondedParticles = SIMP(statut='o', max='**', typ = Tuple(2), validators=VerifTypeTuple(('I','I'),)), - # ), # fin Interation_Length_Parameters - # ), # fin BondLengthParameters - -# ------------ Covalent Bond Angle ------------------ - # blocCovalentAngle = BLOC(condition = 'TypeOfBondedInteraction == "Covalent Bond Angle"', - # InteractionAnglesParameters = FACT(statut='o', max="**", - # ApplyToBondedParticles = SIMP(statut='o', max='**', typ='TXM'), - # SpringStifness = SIMP(statut='o', typ='R', val_min=0), - # MeanBondAngle = SIMP(statut='o', typ='R', val_min=0), - # ListOfBondedParticles = SIMP(statut='o', max='**', typ = Tuple(2), validators=VerifTypeTuple(('I','I'),)), - # ), # fin Interation_Angles_Parameters - # ), # fin bloccovalentlengthand_angle - - - -# ------------ Dihedral Angles ------------------ - # blocDihedral = BLOC(condition = 'TypeOfBondedInteraction == "Dihedral Angles"', - # DihedralAnglesQueDemandeTon = SIMP(statut='o', typ='TXM'), - # ), - -# ------------ Improper Dihedral ------------------ - # blocImproperDihedral = BLOC(condition = 'TypeOfBondedInteraction == "Improper Dihedral"', - # ImproperDihedralQueDemandeTon = SIMP(statut='o', typ='TXM'), - # ), - # blocFrozen = BLOC(condition = 'TypeOfBondedInteraction == "Frozen Motion"', - # FrozenQueDemandeTon = SIMP(statut='o', typ='TXM'), - # ), - )# fin bondedInteraction - ), # blocNoTopology - ), # blocBondedInteractop, - ) # fin Bonded_Interaction - -#--------------------------------- -def prepareBlocOrigine(condition): -#--------------------------------- - return BLOC(condition = condition, - Origin = FACT(statut ='o', - OriginType = SIMP(statut='o', into =['ByValue', 'ByFile', 'ByInteraction'], typ ='TXM', defaut='ByValue'), - blocByFile = creeBlocPourLesFichiers('OrigineType == "ByFile"', '', ListeFormats = listeFormatGenerique, FieldName='FieldName'), - blocByInteraction = BLOC(condition = 'InitialisationType == "ByInteraction"', - InteractionName = SIMP(typ=interaction,statut='o'), - Consigne = SIMP(statut="o", homo="information", typ="TXM", defaut='Create and choose suitable interaction'), - ), - blocByValue = BLOC(condition = 'OrgineType == "ByValue"', - ConstantValue = SIMP (statut ='o', typ='R'), - ), - ), - ) -#---------------------------------------- -def prepareBlocInitialisation(condition): -#---------------------------------------- - monIntoType = ['ByValue', 'ByFile', 'ByInteraction'] - return BLOC(condition = condition, - Initialisation = FACT(statut ='o', - InitialisationType = SIMP(statut='o', into = monIntoType, typ ='TXM', defaut='ByValue'), - blocByFile = creeBlocPourLesFichiers('InitialisationType == "ByFile"', '', ListeFormats = listeFormatGenerique, FieldName='FieldName'), - blocByInteraction = BLOC(condition = 'InitialisationType == "ByInteraction"', - InteractionName = SIMP(typ=interaction,statut='o'), - Consigne = SIMP(statut="o", homo="information", typ="TXM", defaut='Create and choose suitable interaction'), - ), - blocByValue = BLOC(condition = 'InitialisationType == "ByValue"', - Value = SIMP (statut ='o', typ='R'), - ), - ), - SourceTerm = SIMP(typ=bool, statut='o', defaut=False), - blocSourceTerm = prepareTermeSource('SourceTerm==True'), - ) #blocSimulatedPressure - -#----------------------------------------------------------------- -def prepareBlocInitialisationParticle(condition, termeSource=True): -#----------------------------------------------------------------- - monIntoType = ['ByValue', 'ByFile', 'ByInteraction','Not needed' ] - #dicoTermeSource = {} - #if termeSource : - # dicoTermeSource['SourceTerm'] = SIMP(typ=bool, statut='o', defaut=False), - # dicoTermeSource['blocSourceTerm'] = prepareTermeSourceParticle('SourceTerm==True') - - if termeSource : - return BLOC(condition = condition, - Initialisation = FACT(statut ='o', - InitialisationType = SIMP(statut='o', into =monIntoType, typ ='TXM', defaut='ByValue'), - blocNotNeeded = BLOC(condition = 'InitialisationType != "Not needed"', - ParticleIdentifier=SIMP(statut='o', typ = userParticle), - ), - blocByFile = creeBlocPourLesFichiers('InitialisationType == "ByFile"', '', ListeFormats = listeFormatGenerique, FieldName='FieldName'), - blocByInteraction = BLOC(condition = 'InitialisationType == "ByInteraction"', - InteractionName = SIMP(typ=interaction,statut='o'), - Consigne = SIMP(statut="o", homo="information", typ="TXM", defaut='Create and choose suitable interaction'), - ), - blocByValue = BLOC(condition = 'InitialisationType == "ByValue"', - Value = SIMP (statut ='o', typ='R'), - ), - SourceTerm = SIMP(typ=bool, statut='o', defaut=False), - blocSourceTerm = prepareTermeSourceParticle('SourceTerm==True') - ), - ) # - else: - return BLOC(condition = condition, - Initialisation = FACT(statut ='o', - InitialisationType = SIMP(statut='o', into =monIntoType, typ ='TXM', defaut='ByValue'), - blocNotNeeded = BLOC(condition = 'InitialisationType != "Not needed"', - ParticleIdentifier=SIMP(statut='o', typ = userParticle), - ), - blocByFile = creeBlocPourLesFichiers('InitialisationType == "ByFile"', '', ListeFormats = listeFormatGenerique, FieldName='FieldName'), - blocByInteraction = BLOC(condition = 'InitialisationType == "ByInteraction"', - InteractionName = SIMP(typ=interaction,statut='o'), - Consigne = SIMP(statut="o", homo="information", typ="TXM", defaut='Create and choose suitable interaction'), - ), - blocByValue = BLOC(condition = 'InitialisationType == "ByValue"', - Value = SIMP (statut ='o', typ='R'), - ), - ), - ) # - -#--------------------------- -def prepareBlocFluideMacro(): -#--------------------------- - return BLOC(condition = 'SystemType == "Continuum system"', - ComplexFluid = SIMP(typ=bool, statut='o', defaut = False, position='global'), - FlowNature = SIMP(typ='TXM', statut='o', into =['Laminar', 'Turbulent'], position='global'), - -# --------------------------- Density ------------- - DensityInitialisation = FACT(statut ='o', - DensityValueType = SIMP(typ='TXM', statut ='o', into = ['Value', 'Field'], defaut ='Value'), - blocDensityValue = BLOC(condition = 'DensityValueType == "Value"', - Density = SIMP(typ='R', statut ='o'), - ), - blocDensField= creeBlocPourLesFichiers('DensityValueType == "Field"', 'Density', ListeFormats=listeFormatGenerique, FieldName='DensityFieldName'), - ),# DensityInitialisation - -# --------------------------- Viscosity ------------- - ViscosityInitialisation = FACT(statut ='o', - ViscosityValueType = SIMP(typ='TXM', statut ='o', into = ['Value', 'Field'], defaut ='Value'), - blocViscosityValue = BLOC(condition = 'ViscosityValueType == "Value"', - Viscosity = SIMP(typ='R', statut ='o'), - ), - blocViscosityField = creeBlocPourLesFichiers('ViscosityValueType == "Field"', 'Viscosity', ListeFormats=listeFormatGenerique, FieldName='ViscosityFieldName'), - ), #fin ViscosityityInitialisation - -# --------------------------- Turbulent ------------- - blocFlowNatureTurbulent = BLOC(condition = ' FlowNature == "Turbulent"', - TurbulenceForFlowDynamics = prepareFactTurbulence('o',position='global',positionChoice='reCalculeEtape'), - ), #fin bloc_FlowNature_Turbulent - - DynamicalVariables = FACT(statut ='o', - VariablesSimulation = SIMP(statut='o', typ =bool, position='global'), - blocVariablesSimulation = BLOC(condition = 'VariablesSimulation == False', - OriginOfDynamicalVariables = SIMP(statut='o', into =['Given', 'Interaction'], typ ='TXM', position='global'), - blocGivenOrInteraction = BLOC(condition = 'OriginOfDynamicalVariables in ["Given", "Interaction",]', - SteadyState = SIMP(typ=bool, statut ='o', defaut = True, position = 'global'), - # blocNotSteady = BLOC(condition = 'SteadyState == False', - # blocConsigne = BLOC(condition = 'SteadyState == False', - # Consigne = SIMP(statut="o", homo="information", typ="TXM", defaut='Not implemented yet. Will ask for a range of calculation steps.'), - # ), #blocNotSteady - blocSteady = BLOC(condition = 'SteadyState == True', - blocGiven = BLOC(condition = 'OriginOfDynamicalVariables == "Given"', - InSameFile = SIMP(typ=bool, statut ='o', defaut = True, position = 'reCalculeEtape'), - blocSameFile = creeBlocPourLesFichiers('InSameFile == True', 'DynamicalVariables', ('Med', 'cgns' ), None), - ), #blocGiven - ), #blocSteady - ), #blocGivenOrInteraction - ), - PressureDefinition = FACT(statut ='o', - Pressure = SIMP(typ=(dynamicVariable,'createObject'), statut='o', defaut ='Pressure', homo='constant'), - blocSteadyState = BLOC(condition = 'SteadyState == True', - blocFluidInSame = creeBlocPourLesFichiers('InSameFile == False', 'Pressure', ('Med', 'cgns' ), None), - blocGivenPressure = BLOC(condition = 'OriginOfDynamicalVariables == "Given"', - PressureFieldName = SIMP(typ='TXM',statut='o'), - ), - blocInteractionPressure = BLOC(condition = 'OriginOfDynamicalVariables == "Interaction"', - InteractionName = SIMP(typ=interaction,statut='o'), - Consigne = SIMP(statut="o", homo="information", typ="TXM", defaut='Create and choose suitable interaction'), - ), - ), - blocSimulatedPressure = prepareBlocInitialisation(condition = 'VariablesSimulation == True'), - ), - VelocityDefinition = FACT(statut ='o', - blocFlowNatureTurbulent = BLOC(condition = 'FlowNature == "Turbulent"', - #sousBlocFlowNatureTurbulent = BLOC(condition = 'TurbulenceModellingType != "Fully resolved (DNS)"', - AverageVelocity = SIMP(typ=(dynamicVariable,'createObject'), statut='o', defaut ='Average_Velocity', homo='constant'), - blocSteadyGivenVelocity1 = BLOC(condition = 'OriginOfDynamicalVariables == "Given" and SteadyState == True ', - AverageVelocityValue = SIMP(typ='R', statut='o' ), - ), - #), - ), - #blocFlowNatureLaminar = BLOC(condition = ' FlowNature == "Laminar" or TurbulenceModellingType == "Fully resolved (DNS)"', - blocFlowNatureLaminar = BLOC(condition = 'FlowNature == "Laminar"', - FluidVelocity = SIMP(typ=(dynamicVariable,'createObject'), statut='o', defaut ='Fluid_Velocity', homo='constant'), - blocSteady = BLOC(condition = 'SteadyState == True', - blocVelocityInSame = creeBlocPourLesFichiers('InSameFile == False', 'Velocity', ('Med', 'cgns' ), None), - blocSteadyGivenVelocity2 = BLOC(condition = 'OriginOfDynamicalVariables == "Given"', - VelocityFieldName = SIMP(typ='TXM',statut='o'), - ), - ), - ), - blocSteady = BLOC(condition = 'SteadyState == True', - blocInteractionVelocity = BLOC(condition = 'OriginOfDynamicalVariables == "Interaction"', - InteractionName = SIMP(typ=interaction,statut='o'), - Consigne = SIMP(statut="o", homo="information", typ="TXM", defaut='Create and choose suitable interaction'), - ), - ), - blocSimulatedVelocity = prepareBlocInitialisation(condition = 'VariablesSimulation == True'), - ), - BFlowNatureTurbulent = BLOC(condition ='FlowNature == "Turbulent"', - # K-epislon ou k-omega - blocTurbulenceTWMChoice1 = BLOC(condition = 'TVMChoice == "K-Epsilon" or TVMChoice == "K-Omega"', - KDefinition = FACT(statut ='o', - Name = SIMP(typ=(scalar,'createObject'), statut='o', defaut ='K', homo='constant'), - blocSteady = BLOC(condition = 'SteadyState == True', - blocKInSame = creeBlocPourLesFichiers('InSameFile == False', 'K', ('Med', 'cgns' ), None), - blocKGiven = BLOC(condition = 'OriginOfDynamicalVariables == "Given"', - KFieldName = SIMP(typ='TXM',statut='o', defaut='K'), - ), - blocKInteraction = BLOC(condition = 'OriginOfDynamicalVariables == "Interaction"', - InteractionName = SIMP(typ=interaction,statut='o'), - Consigne = SIMP(statut="o", homo="information", typ="TXM", defaut='Create and choose suitable interaction'), - ), - ), - blocSimulatedKDefinition = prepareBlocInitialisation(condition = 'VariablesSimulation == True'), - ), # KDefinition - ),# fin blocTurbulenceTWMChoice1 - - # REM : L'existence des mc TVMChoice et RSMChoice est exclusive, du coup une évaluation de condition - # qui contient les deux renvoie forcément une exception, le bloc n'est alors pas evalué - # sauf si le mc de la première condition existe (ordre évaluation du or) - # blocTurbulenceTWMChoice2 = BLOC(condition = 'TVMChoice == "K-Epsilon" or RSMChoice != None', - # blocTurbulenceTWMChoice2 = BLOC(condition = '(RSMChoice != None) or (TVMChoice == "K-Epsilon")', - # blocTurbulenceTWMChoice2 = BLOC(condition = 'TVMChoice == "K-Epsilon"', - blocTurbulenceTWMChoice2 = BLOC(condition = 'RANSModel == "Reynolds Stress Model (RSM)" or TVMChoice == "K-Epsilon"', - EpsilonDefinition = FACT(statut ='o', - Name = SIMP(typ=(scalar,'createObject'), statut='o', defaut ='Epsilon', homo='constant'), - blocSteady = BLOC(condition = 'SteadyState == True', - blocEpsilonInSame = creeBlocPourLesFichiers('InSameFile == False', 'Epsilon', ('Med', 'cgns' ), None), - blocEpsilonGiven = BLOC(condition = 'OriginOfDynamicalVariables == "Given"', - EpsilonFieldName = SIMP(typ='TXM',statut='o'), - ), - blocEpsilonInteraction = BLOC(condition = 'OriginOfDynamicalVariables == "Interaction"', - InteractionName = SIMP(typ=interaction,statut='o'), - Consigne = SIMP(statut="o", homo="information", typ="TXM", defaut='Create and choose suitable interaction'), - ), - ), - blocSimulatedEpsilonDefinition = prepareBlocInitialisation(condition = 'VariablesSimulation == True'), - ), #EpsilonDefinition - ), # bloc_Turbulence_TWMChoice2 - - blocTurbulenceTWMChoice3 = BLOC(condition = 'TVMChoice == "K-Omega"', - OmegaDefinition = FACT(statut ='o', - Name = SIMP(typ=(scalar,'createObject'), statut='o', defaut ='Omega', homo='constant'), - blocSteady = BLOC(condition = 'SteadyState == True', - blocOmegaInSame = creeBlocPourLesFichiers('InSameFile == False', 'Omega', ('Med', 'cgns' ), None), - blocOmegaGiven = BLOC(condition = 'OriginOfDynamicalVariables == "Given"', - OmegaFieldName = SIMP(typ='TXM',statut='o'), - ), - blocOmegaInteraction = BLOC(condition = 'OriginOfDynamicalVariables == "Interaction"', - InteractionName = SIMP(typ=interaction,statut='o'), - Consigne = SIMP(statut="o", homo="information", typ="TXM", defaut='Create and choose suitable interaction'), - ), - ), - blocSimulatedOmegaDefinition = prepareBlocInitialisation(condition = 'VariablesSimulation == True'), - ), - ), # blocTurbulenceTWMChoice3 - - # blocTurbulenceRSMChoice1 = BLOC(condition = "(RANSModel == 'Reynolds Stress Model (RSM)') and (RSMChoice !=None)", - blocTurbulenceRSMChoice1 = BLOC(condition = "RSMChoice !=None", - RijDefinition = FACT(statut ='o', - Name = SIMP(typ=(scalar,'createObject'), statut='o', defaut ='Rij', homo='constant'), - blocSteady = BLOC(condition = 'SteadyState == True', - blocRijInSame = creeBlocPourLesFichiers('InSameFile == False', 'Rij', ('Med', 'cgns' ), None), - blocRijGiven = BLOC(condition = 'OriginOfDynamicalVariables == "Given"', - RijFieldName = SIMP(typ='TXM',statut='o'), - ), - blocRijInteraction = BLOC(condition = 'OriginOfDynamicalVariables == "Interaction"', - InteractionName = SIMP(typ=interaction,statut='o'), - Consigne = SIMP(statut="o", homo="information", typ="TXM", defaut='Create and choose suitable interaction'), - ), - ), - blocSimulatedRijDefinition = prepareBlocInitialisation(condition = 'VariablesSimulation == True'), - ), - ), # blocTurbulenceRSMChoice1 - ), #BFlowNatureTurbulent - ), # DynamicalVariables - -# ---------------------- Effets thermiques - Thermal = FACT(statut ='o', - ThermalEffects = SIMP(typ='TXM', statut='o', into =['Non thermal', 'Thermal'] , defaut='Thermal', position='global' ), - blocNonThermalEffects = BLOC(condition = 'ThermalEffects == "Non thermal"', - ReferenceTemperature = SIMP(typ='R', statut='o', val_min=-273.15 ), - ), # fin bloc_NonThermal - bloc_ThermalEffects_ = BLOC(condition = 'ThermalEffects == "Thermal"', - ConductivityValueType = SIMP(typ='TXM', statut ='o', into = ['Value', 'Field'], defaut ='Value'), - blocCondValue = BLOC (condition = 'ConductivityValueType == "Value"', - Conductivity = SIMP(typ='R', statut ='o'), - ), - blocCondField = creeBlocPourLesFichiers('ConductivityValueType == "Field"', 'Conductivity', ListeFormats=listeFormatGenerique, FieldName='conductivityFieldName'), - #ActiveOnFlowEffect = ActiveOnFlowEffect(), - ), - ),# fin Fact Thermal - -# ---------------------- Scalaires - - blocScalarFluidTurbulentOrLaminar = BLOC(condition = "(ComplexFluid == False and FlowNature == 'Turbulent') or (ComplexFluid == False and FlowNature == 'Laminar')", - Scalars = FACT(statut = 'o', - withScalars = SIMP(statut='o', typ=bool, defaut=False), - blocwithScalars = BLOC(condition = 'withScalars == True', - blocFlowNatureTurbulentForScalars = BLOC(condition = ' FlowNature == "Turbulent"', - AsTurbulenceForFlowDynamics = SIMP(statut='o', typ=bool, defaut=True), - blocAsTFFD = BLOC(condition = "AsTurbulenceForFlowDynamics == False", - ScalarsTurbulenceModelling = prepareFactTurbulenceScalaire('o',), - ), - ), - blocThermalEffectsOn = BLOC(condition = ' ThermalEffects == "Thermal"', - TemperatureScalar = FACT(statut ='o', - #Name = SIMP(typ=(scalar,'createObject'), statut='o', defaut ='Temperature', homo='constant', position='reCalculeEtape'), - Name = SIMP(typ=(scalar,'createObject'), statut='o', defaut ='Temperature', homo='constant'), - SourceTerm = SIMP(typ=bool, statut='o', defaut=False), - blocSourceTerm = prepareTermeSource('SourceTerm==True'), - TemperatureInitialisation = FACT(statut ='o', - OriginOfThermalFluxField = SIMP(statut='o', into =['Given', 'Interaction', 'to be simulated'], typ ='TXM'), - blocGiven = creeBlocPourLesFichiers('OriginOfThermalFluxField == "Given"', 'Temperature', ('Med', 'cgns' ), FieldName='FieldName'), - ),# fin TemperatureInitialisation - ),# TemperatureScalar - ), # fin bloc_ThermalEffects_On - Scalar = FACT(statut = 'o', max ='**', - Name = SIMP(typ=(scalar,'createObject'), statut='o',), - DiffusivityValueType = SIMP(typ='TXM', statut ='o', into = ['Value', 'Field'], defaut ='Value'), - blocDiffValue = BLOC(condition = 'DiffusivityValueType == "Value"', - Diffusivity = SIMP(typ='R', statut ='o'), - ), - blocDiffField = creeBlocPourLesFichiers('DiffusivityValueType == "Field"', 'Diffusivity', ListeFormats=listeFormatGenerique, FieldName='DiffusivityFieldName'), - OriginOfScalar = SIMP(statut='o', into =['Given', 'Interaction', 'to be simulated'], typ ='TXM', defaut='to be simulated'), - blocSimulatedScalar = BLOC(condition = 'OriginOfScalar == "to be simulated"', - SourceTerm = SIMP(typ=bool, statut='o', defaut=False), - blocSourceTerm = prepareTermeSource('SourceTerm==True'), - Initialisation = FACT(statut ='o', - InitialisationOfScalar = SIMP(statut='o', into =['ValueInit', 'FileInit', 'InteractionInit'], typ ='TXM', defaut='ValueInit'), - blocFileInit = creeBlocPourLesFichiers('InitialisationOfScalar == "FileInit"', 'ScalarInit', ListeFormats = listeFormatGenerique, FieldName='ScalarInitField'), - blocInteractionInit = BLOC(condition = 'InitialisationOfScalar == "InteractionInit"', - InteractionName = SIMP(typ=interaction,statut='o'), - Consigne = SIMP(statut="o", homo="information", typ="TXM", defaut='Create and choose suitable interaction'), - ), - blocValueInit = BLOC(condition = 'InitialisationOfScalar == "ValueInit"', - ValueInit = SIMP (statut ='o', typ='R'), - ), - ), #Initialisation - ), #blocSimulatedScalar - blocInteractionScalar = BLOC(condition = 'OriginOfScalar == "Interaction"', - InteractionName = SIMP(typ=interaction,statut='o'), - Consigne = SIMP(statut="o", homo="information", typ="TXM", defaut='Create and choose suitable interaction'), - ), - blocGivenScalar = creeBlocPourLesFichiers('OriginOfScalar == "Given"', 'Scalar', ListeFormats = listeFormatGenerique, FieldName='ScalarField'), - EffectOnFlowDynamic = SIMP(typ='TXM', statut='o', into=[ 'Passive', 'Active'], defaut='Passive', ), - blocScalarActiveOnFlowDynamic = BLOC(condition = ' EffectOnFlowDynamic == "Active"', - ActiveOnFlowEffect = ActiveOnFlowEffect(), - ), - blocScalarFluidTurbulentAndNonComplexe = BLOC (condition = "FlowNature == 'Turbulent'", - ScalarFluxModel = prepareFactTurbulenceScalaire('f'), - ), # bloc_scalar_FluidTurbulentandNonComplexe - ),# Scalar - ),# blocwWithScalars - ),# Scalars - ), # fin FluidTurbulentandNonComplexe - # il faut une validation de coherence entre l existence de tous les turbulencesModelling - )# fin bloc_FluideMacro - -#----------------------------------------- -def ActiveOnFlowEffect(inTemperature=True): -#----------------------------------------- - return FACT(statut = 'o', max='**', - RelationType = SIMP(statut = 'o', into =['Equation Of State', 'Force-Flux Relation'], typ ='TXM'), - bloc_EOS = BLOC(condition = 'RelationType == "Equation Of State"', - TypeOfEquationOfState = SIMP(statut='o', into =['variable density', 'compressible'], typ ='TXM'), - ), - bloc_NonEOSAndSimple=BLOC(condition = 'RelationType == "Force-Flux Relation" and ComplexFluid == False', - TypeOfForceFluxRelation = SIMP(statut='o', into =['Viscosity', 'Diffusivity', 'Thermal Conductivity'], intoXML=['Viscosity', 'Diffusivity', 'Thermal Conductivity','Shear-stress closure', 'Scalar flux'], typ ='TXM', ), - blocViscosity=BLOC(condition = 'TypeOfForceFluxRelation == "Viscosity" ', - ViscosityLaw=SIMP(typ='TXM', statut = 'o', into=['law1', 'law2']), - ), - blocDiffusivity=BLOC(condition = 'TypeOfForceFluxRelation == "Diffusivity"', - DiffusivityLaw=SIMP(typ='TXM', statut = 'o', into=['law1', 'law2']), - ), - blocConductivity=BLOC(condition = 'TypeOfForceFluxRelation == "Thermal Conductivity"', - ConductivityLaw=SIMP(typ='TXM', statut = 'o', into=['law1', 'law2']), - ), - ), -) - -#------------------------------# -def prepareBoundaryCondition(): -#------------------------------# -# on en fait 1 bloc seul pour CS and CPS -# pour pas de souci dans la projection XSD - return FACT(statut='o',max = '**', # max = nb de facette de bord - TypeOfBoundaryCondition = SIMP(statut='o', typ='TXM', into=['Inlet', 'Outlet', 'Symmetry','Periodicity', 'Wall', 'Free Surface'], ), - - blocDesigneMesh = BLOC(condition = "SystemType == 'Continuum system'", - ApplyOnGroups = SIMP(statut ='o', typ=meshGroup, max='**', homo='SansOrdreNiDoublon', - filtre=( '(set(MeshIdentifiers).intersection( set(self.getParentsWithId().getListeUserASSD("MeshId")) ) != set()) ', - ( ('MeshIdentifiers', 'self.etape.getChild("blocModeleNumeriqueContinuum").getChild("NumericalModel")'), ) - ), - ), - ), - blocDesigne_Shape = BLOC(condition = "SystemType == 'Classical particle system'", - #ApplyOnGroups = SIMP (statut ='o', typ=spatialRegion, max='**') - ApplyOnGroups = SIMP (statut ='o', typ=meshGroup, max='**', homo='SansOrdreNiDoublon', - filtre=( '(set(MeshIdentifiers).intersection( set(self.getParentsWithId().getListeUserASSD("MeshId")) ) != set()) ', - ( ('MeshIdentifiers', 'self.etape.getChild("blocModeleNumeriqueClassical").getChild("NumericalModel")'), ) - ), - ), - ), - - - blocOnStateVariable = BLOC(condition = "(TypeOfBoundaryCondition in ['Inlet', 'Symmetry','Periodicity', 'Free Surface'] and SystemType == 'Continuum system') or (SystemType == 'Classical particle system' and TypeOfBoundaryCondition not in ['Outlet','Inlet'])" , - ApplyOnStateVariable = SIMP (statut ='o', typ=stateVariable, max='**', homo='SansOrdreNiDoublon', - filtre=( 'etape in set(self.getEtapes()) ', (('etape', None),), ), #Il ne faut pas proposer les variables d'état des autres composants. - ), #PNPN A FAIRE : fenetreIhm='menuDeroulant' - ), - - blocPeriodique = BLOC(condition = "TypeOfBoundaryCondition == 'Periodicity'", - Direction = SIMP(statut='o', typ='TXM', into=['X','Y','Z', 'XYZ']), - ), # b_periodique - - blocInlet1 = BLOC(condition = "TypeOfBoundaryCondition == 'Inlet' and SystemType == 'Continuum system'", - FormulationOfBoundary= SIMP(statut='o', typ='TXM', into=['Dirichlet','Neumann','Cauchy']), - blocDirichlet = BLOC(condition = 'FormulationOfBoundary == "Dirichlet"', - regles=(AU_MOINS_UN('InletProfile','IntegratedValue','IntegratedVectorValue',), - EXCLUS ('InletProfile','IntegratedValue','IntegratedVectorValue',), ), - Consigne = SIMP(statut ="o", homo="information", typ="TXM", defaut = "Choose between InletProfile,IntegratedValue,IntegratedVectorValue "), - InletProfile = SIMP (statut ='f', typ='TXM'), - IntegratedValue = SIMP (statut='f', typ='R'), - IntegratedVectorValue = FACT(statut='f', - U = SIMP (statut ='o', typ='R'), - V = SIMP (statut ='o', typ='R'), - W = SIMP (statut ='o', typ='R'), - ), - ),# fin Dirichlet - blocNeumann = BLOC(condition = 'FormulationOfBoundary == "Neumann"', - FluxFile = SIMP (statut ='o', typ=('Fichier', " ;;All Files (*)"),) - ), - blocCauchy = BLOC(condition = 'FormulationOfBoundary == "Cauchy"', - ImposedFlux = SIMP (statut ='o', typ='TXM'), - _IntegratedValue = SIMP (statut='o', typ='R'), - ), - ), # b_inlet1 - blocWall = BLOC(condition = "TypeOfBoundaryCondition == 'Wall' and SystemType == 'Continuum system'", - VelocityAtBoundary = FACT(statut='o', - SlipVelocity = SIMP(statut='o', typ='R', defaut= 0.0), - WallMotion = FACT(statut='o', - U = SIMP (statut ='o', typ='R'), - V = SIMP (statut ='o', typ='R'), - W = SIMP (statut ='o', typ='R'), - ), - ), - LevelOfDescription = FACT(statut='o', - blocWallInside = BLOC(condition = "FlowNature == 'Turbulent'", ##JP+CH TODO : Choix des lois en fct du type du TurbulenceModelingType - WallFunction = SIMP(statut ='o', typ='TXM', - into=['No wall function','1-scale model (Log law)', - '2-scale model (Log law)','Scalable 2-scale model (Log law)', - ], defaut='No wall function', fenetreIhm='menuDeroulant'), - ), - ), - ), # b_Wall - - blocWall2 = BLOC(condition = "TypeOfBoundaryCondition == 'Wall' and SystemType == 'Classical particle system'", - ChoiceOfParticleWallInteraction = SIMP(statut='o', typ = wallInteractionId) - ), # b_Wall - - blocInlet2 = BLOC(condition = "TypeOfBoundaryCondition == 'Inlet' and SystemType == 'Classical particle system'", - TypeOfParticleInjected = SIMP(statut='o', typ = userParticle), - NumberOfParticleInjected = SIMP(statut='o', typ = 'I', val_min = 1), - InjectionEveryNTimeSteps = SIMP(statut='o', typ = 'I', val_min = 0), - DiameterOfParticleInjected = SIMP(statut='o', typ = 'R', val_min = 0), - MassOfParticleInjected = SIMP(statut='o', typ = 'R', val_min = 0), - - PositionOfParticleInjected = FACT(statut='o', - InitialisationMode = SIMP(statut='o', into =['ByValue', 'ByFile', 'ByFormula' ], typ ='TXM', defaut='ByValue'), - # A Rafiner - ), - blocNoBrownianDynamics = BLOC(condition = '(TypeOfConstraint != None) and not("Brownian dynamics" in TypeOfConstraint)', - ParticleVelocity = FACT(statut ='o', - InitialisationMode = SIMP(statut='o', into =['ByValue', 'ByFile', 'ByFormula' ], typ ='TXM', defaut='ByValue'), - ), #fin VelocityDefinition - blocHydrodynamic = BLOC(condition = '"Hydrodynamic" in MomentumFieldType', - FluidVelocitySeenByParticles = FACT(statut ='o', - InitialisationMode = SIMP(statut='o', into =['ByValue', 'ByFile', 'ByFormula' ], typ ='TXM', defaut='ByValue'), - ), - ), - ),# blocNoBrownianDynamics - ), # bInlet2 - - blocApplyOnParticle = BLOC(condition = "SystemType == 'Classical particle system' and TypeOfBoundaryCondition != 'Inlet'" , - ApplyOnAllsParticle = SIMP(typ=bool, statut ='o', defaut = True,), - blocSpecifyParticle = BLOC(condition = "ApplyOnAllsParticle == False" , - ApplyOnParticles = SIMP(statut ='o',max="**", typ = userParticle, homo='SansOrdreNiDoublon'), - ), - ), - - ) # Boundary_Conditions - - - -JdC = JDC_CATA ( - #PN : TODO : regles = (AU_PLUS_UN('DataTransfer_Aspects',),), - code = 'Vimmp', - # faire un validateur qui verifie que si on active reactions chimiques il faut que les masses molaires soient rentrees -) - -Component = OPER(nom='Component', sd_prod=composant, - SystemType = SIMP(typ='TXM', into=['Quantum system', 'Classical particle system', 'Continuum system'], statut='o',position='global'), - PhysicalDescription = FACT(statut = 'o', - blocFluideMacro = prepareBlocFluideMacro(), - blocCPS = prepareBlocCPS(), - ), - blocModeleNumeriqueQuantum = prepareBlocSystemType('Quantum system'), - blocModeleNumeriqueClassical = prepareBlocSystemType('Classical particle system'), - blocModeleNumeriqueContinuum = prepareBlocSystemType('Continuum system'), - - # Exemple de reecriture d'un BLOC_XOR pour eviter la generation d'un type xsd double - # BCFluide = BLOC ( condition = 'SystemType == "Continuum system"', - # BoundaryConditions = FACT(statut = 'o', - # BoundaryCondition = prepareBoundaryCondition(), - # ), - # ), - # BCParticle = BLOC ( condition = 'SystemType == "Classical particle system"', - # BoundaryConditions = FACT(statut = 'o', - # BoundaryCondition = prepareBoundaryConditionParticle(), - # ), - # ), - BoundaryConditions = FACT(statut = 'o', - BoundaryCondition = prepareBoundaryCondition(), - ), -) - -Interpolator = OPER (nom= 'Interpolator',sd_prod=interpolator, - InterpolatorType=SIMP(statut='o', typ='TXM', into = list(dictInterpolatorFormat.keys())), - blocMedCoupling= BLOC(condition="InterpolatorType == 'Med Coupling'", - TargetMeshIdentifier = SIMP(statut ='o', typ = meshIdentifier,), - InterpolationType = SIMP(statut ='o', typ='TXM', into=['P0P0','P0P1','P1P1','P1P0'],), - DefaultValueForUnmatchedMeshTargetEntity = SIMP(statut='o', typ ='R', defaut=-1), - ), -) -Converter = OPER (nom= 'Converter',sd_prod=converter) - -Interactions = PROC(nom='Interactions', - - IOAspects = FACT(statut='o', - #WorkingDirectory = SIMP(statut='o', typ='Repertoire', defaut='/tmp'), - FileTransfer = FACT(statut='f', max='**', - TransferId = SIMP(statut='o', typ=(fileId,'createObject'),), - monBlocFormat = creeBlocPourLesFichiers('1', '', listeFormatGenerique, FieldName=None ), - ), - MemoryTransfer = FACT(statut='f', max='**', - TransferId = SIMP(statut='o', typ=(memoryId,'createObject'),), - ), - CorbaTransfer = FACT(statut='f', max='**', - TransferId = SIMP(statut='o', typ=(corbaId,'createObject'),), - ), - ), - - Interaction = FACT(max = '**', - InteractionName = SIMP(statut='o', typ=(interaction,'createObject'),), - From = SIMP(typ=modeleNumDuCompo, statut='o'), - To = SIMP(typ=modeleNumDuCompo, statut='o'), - # ApplyOnStateVariable = SIMP(statut ='o', typ=stateVariable), #PNPN A FAIRE : fenetreIhm='menuDeroulant' - InvolvedStateVariable = SIMP(statut ='o', typ=stateVariable), #PNPN A FAIRE : Seulement du composant d'origine From - InteractionConfiguration = FACT(statut='o', - - OutputId = SIMP(statut='o',typ=(transferId,),), - FieldName=SIMP(typ='TXM', statut='o'), - CouplingMode = SIMP(typ='TXM', statut='o', into =['Direct', 'DataProcessing']), - - monBlocDataProcessing = BLOC (condition = "CouplingMode=='DataProcessing'", - DataProcessingNode = FACT(min=1, max='**', statut ='o', - Tool = SIMP(typ=mapper, statut ='o'), - OutputId = SIMP(statut='o',typ=(transferId,),), - FieldName = SIMP(typ='TXM', statut='o'), - monBlocInterpolator = BLOC (condition = "(Tool != None) and (isinstance(Tool,interpolator))", - FieldNature = SIMP(typ='TXM', statut='o', into=['ExtensiveMaximum', 'IntensiveMaximum', - 'ExtensiveConservation', 'IntensiveConservation']), #PN: DICO pour le into avec key==Tool - ), - ), - ), #fin monBlocDataProcessing - ), #fin InteractionConfiguration - ), -) - -EnvironementAspects = PROC(nom ="EnvironementAspects", - WorkflowName = SIMP(statut='o', typ='TXM', defaut='MyStudyCasename'), #PN: -> path - WorkingDirectory = SIMP(statut='o', typ='Repertoire', defaut='/tmp'), -) - - -TemporalAspects = PROC(nom ="TemporalAspects", - Simulated_Time_Laps = FACT(statut='o', max='**', - name = SIMP(statut='o', typ=(simulatedTime,'createObject'),), - initialTime = SIMP(statut='o', typ='R'), - finalTime = SIMP(statut='o', typ='R'), - timeDiscretization = SIMP(statut ='o', typ = 'TXM', into = ['Constant Time Step', 'Varying Time Step']), - bloc_Constant = BLOC (condition = 'timeDiscretization == "Constant Time Step"', - constantTimeStep = SIMP (statut ='o', typ = 'R'), - ), - bloc_Varying = BLOC (condition = 'timeDiscretization == "Varying Time Step"', - CFLNumberCriteria = SIMP (statut ='o', typ = 'R'), - FourierNumberCriteria = SIMP (statut ='o', typ = 'R'), - ), - ), -) - -# -# ----------------------------------------- -SpatialAspects = PROC(nom='SpatialAspects', -# ----------------------------------------- - regles = (AU_MOINS_UN('SystemGeometry', 'SpatialDiscretization'),), - - SystemGeometry = FACT(statut='f', max='**', - SystemGeometryName = SIMP(statut='o', typ=(systemGeometry, 'createObject'),), - Shape = FACT(statut ='o', max='**', - ShapeIdentifier = SIMP(statut='o', typ=(cadShape,'createObject'),max='**',), - ShapeNature = SIMP(statut='o', typ='TXM', into=['Typical Geometry', 'CAD']), - - blocShape = BLOC(condition = 'Shape_Nature == "Typical Geometry"', - Box = SIMP(statut='o', typ='TXM', into=['Cube', 'Sphere','Cylinder'] ), - blocCube = BLOC(condition = 'Box == "Cube"', - #Taille_Box_Englobante = SIMP(statut='o', typ='R', max=3, min =3) - # derait etre un Tuple(3) mais a faire apres la projection - #Size_Of_Bounding_Box = SIMP(statut='o', typ=Tuple(3), validators=VerifTypeTuple(('R','R','R'),),) - Size_Of_Bounding_Box = SIMP(statut='o', typ='R', max=3, min=3, ), - ), # fin blocCube - blocBoule = BLOC(condition = 'Box == "Sphere"', - Center = SIMP(statut='o', typ='R', max=3, min =3), - ),# fin b_Boule - blocCylinder = BLOC(condition = 'Box == "Cylinder"', - Heigth = SIMP(statut="o", typ='R', val_min=0.0, ang='Nanotube length [m]'), - ),# fin blocCylinder - blocBouleOuCylinder = BLOC(condition = 'Box == "Sphere" or Box == "Cylinder"', - Radius = SIMP(statut='o', typ='R', val_min=0.0, ang='radius length [m]') , - ),# fin blocBouleOuCylinder - ), # fin blocShape - blocCAO = creeBlocPourLesFichiers("Shape_Nature == 'CAD'",'Domain', ['txt','I-deas', 'Gmsh', 'top',],None), - ), # fin Shape - ),# SystemGeometry - - SpatialDiscretization = FACT(statut='f', max="**", - MeshId = SIMP(statut='o', typ=(meshIdentifier,'createObject')), - MeshName = SIMP(statut='o', typ='TXM'), - blocMeshFile = creeBlocPourLesFichiers("1 == 1",'Mesh',listeFormatGenerique,None), - GroupIdentifier = SIMP(statut='o', typ=(meshGroup,'createObject'),max='**',), - ),# SpatialDiscretization - - BoundaryConstraints = FACT(statut = 'f', - Motion = FACT(statut='f', - MotionNature = SIMP(statut='o', typ='TXM', into=['Fixed boudary', 'Translational motion', 'Rotational motion', 'Scaling']), - - blocTranslationalMotion = BLOC(condition = 'MotionNature == "Translational motion"', - TranslationVelocity = SIMP(statut='o', typ='R'), - boundaries = SIMP(statut='o', typ=spatialRegion,max='**', homo='SansOrdreNiDoublon' ), - ), - blocRotationalMotion = BLOC(condition = 'MotionNature == "Rotational motion"', - RotationRate = SIMP(statut='o', typ='R'), - boundaries = SIMP(statut='o', typ=spatialRegion,max='**', homo='SansOrdreNiDoublon' ), - ), - blocFixed = BLOC(condition = 'MotionNature == "Fixed boudary"', - boundaries = SIMP(statut='o', typ=spatialRegion,max='**', homo='SansOrdreNiDoublon'), - ), - ), -#PN decrire page 28 - Mapping = FACT(statut='f', - ), - ), # Boundary_Constraints -) # fin Geometric_Domain - -#Le dictionnaire dict_condition est un dictionnaire utilisé par eficas -# pour les position='global_jdc' et position='inGetAttribut' -dict_condition={ - 'ChoiceOfApproach': ('Interactions', 'Component'), - 'Interactions' : ( 'Component'), -} - -#TEXTE_NEW_JDC = " " diff --git a/Vimmp/cata_CSAndCPS_v16_test_driver_1.comm b/Vimmp/cata_CSAndCPS_v16_test_driver_1.comm deleted file mode 100644 index be92c7c2..00000000 --- a/Vimmp/cata_CSAndCPS_v16_test_driver_1.comm +++ /dev/null @@ -1,286 +0,0 @@ -Pressure=dynamicVariable() -Temperature=scalar() -Time1=simulatedTime() -CS_Num1=modeleNumDuCompo() -CS_Num2=modeleNumDuCompo() -Group_From_Mesh1=meshGroup() -Group_From_Mesh2=meshGroup() -Average_Velocity=dynamicVariable() -Epsilon=scalar() -outlet=meshGroup() -symmetry=meshGroup() -wall=meshGroup() -inlet1=meshGroup() -inlet2=meshGroup() -fluidfile=fileId() -CS_Num1__CS_Num2_Velocity=interaction() -CS_Num1__CS_Num2_Epsilon=interaction() -CS_Num1__CS_Num2_Pressure=interaction() -Time2=simulatedTime() -half_pipe_21_60=meshIdentifier() -half_pipe_15_40=meshIdentifier() -Interpolated_Pressure_File=fileId() -Interpolated_Rij_File=fileId() -Interpolated_Epsilon_File=fileId() -interpolated_Velocity_File=fileId() -Position=dynamicVariable() -Velocity=dynamicVariable() -Rij=scalar() -Colloids=userDiscrete() -Diameter=dynamicVariable() -Mass=dynamicVariable() -WallReboundCondition=wallInteractionId() -FluidSeenVelocity=dynamicVariable() -CS_Num1__CS_Num2_Rij=interaction() - -EnvironementAspects(WorkflowName='Inria', - WorkingDirectory='/tmp',); - -SpatialAspects(SpatialDiscretization=(_F(MeshId=half_pipe_21_60, - MeshName='half_pipe_generation_2inlet', - MeshFileFormat='Med', - MeshFileName=\ - '/home/eric/VIMMP/vimmptraining/app/fluide+mapper+particule/datafiles/half_pipe_21_60_2inlet.med', - GroupIdentifier=(inlet1,inlet2,outlet,symmetry,wall,Group_From_Mesh1,),), - _F(MeshId=half_pipe_15_40, - MeshName='half_pipe_generation_2inlet', - MeshFileFormat='Med', - MeshFileName=\ - '/home/eric/VIMMP/vimmptraining/app/fluide+mapper+particule/datafiles/half_pipe_15_40_2inlet.med', - GroupIdentifier=(inlet1,inlet2,outlet,symmetry,wall,Group_From_Mesh2,),),),); - -TemporalAspects(Simulated_Time_Laps=(_F(name=Time1, - initialTime=0.0, - finalTime=10.0, - timeDiscretization='Constant Time Step', - constantTimeStep=0.1,), - _F(name=Time2, - initialTime=10.0, - finalTime=15.0, - timeDiscretization='Constant Time Step', - constantTimeStep=0.01,),),); - -FluidComponent=Component(SystemType='Continuum system', - PhysicalDescription=_F(ComplexFluid=False, - FlowNature='Turbulent', - DensityInitialisation=_F(DensityValueType='Value', - Density=1.17862,), - ViscosityInitialisation=_F(ViscosityValueType='Value', - Viscosity=0.0183,), - TurbulenceForFlowDynamics=_F(TurbulenceModellingType='One-point moment', - RANSModel='Reynolds Stress Model (RSM)', - RSMChoice='Rotta',), - DynamicalVariables=_F(VariablesSimulation=True, - PressureDefinition=_F(Pressure=Pressure, - Initialisation=_F(InitialisationType=\ - 'ByValue', - Value=0.0,), - SourceTerm=False,), - VelocityDefinition=_F(AverageVelocity=Average_Velocity, - Initialisation=_F(InitialisationType=\ - 'ByValue', - Value=0.0,), - SourceTerm=False,), - EpsilonDefinition=_F(Name=Epsilon, - Initialisation=_F(InitialisationType=\ - 'ByValue', - Value=1.3e-06,), - SourceTerm=False,), - RijDefinition=_F(Name=Rij, - Initialisation=_F(InitialisationType=\ - 'ByValue', - Value=0.0004,), - SourceTerm=False,),), - Thermal=_F(ThermalEffects='Non thermal', - ReferenceTemperature=293.15,), - Scalars=_F(withScalars=False,),), - NumericalModel=_F(Identifier=CS_Num1, - SimulatedTimeLapse=Time1, - ChoiceOfApproach='Field_based', - NumericalMethod='FV', - Solver='Code_Saturne', - MeshIdentifiers=(half_pipe_21_60,),), - BoundaryConditions=_F(BoundaryCondition=(_F(TypeOfBoundaryCondition='Inlet', - ApplyOnGroups=(inlet1,inlet2,), - ApplyOnStateVariable=(Average_Velocity,), - FormulationOfBoundary='Dirichlet', - Consigne=\ - 'Choose between InletProfile,IntegratedValue,IntegratedVectorValue ', - IntegratedVectorValue=_F(U=1.0, - V=0.0, - W=0.0,),), - _F(TypeOfBoundaryCondition='Outlet', - ApplyOnGroups=(outlet,),), - _F(TypeOfBoundaryCondition='Wall', - ApplyOnGroups=(wall,), - VelocityAtBoundary=_F(SlipVelocity=0.0, - WallMotion=_F(U=0.0, - V=0.0, - W=0.0,),), - LevelOfDescription=_F(WallFunction='2-scale model (Log law)',),), - _F(TypeOfBoundaryCondition='Symmetry', - ApplyOnGroups=(symmetry,), - ApplyOnStateVariable=(Pressure,Average_Velocity,Epsilon,Rij,),),),),); - -PartComponent=Component(SystemType='Classical particle system', - PhysicalDescription=_F(Particles=_F(ParticleNature='Discrete Particle', - ParticleName=Colloids, - InitialNumberOfParticles=0, - TypeOfDiscreteParticle='Solid', - PrimaryOrAggregate='Primary Particle', - Properties=_F(Geometry='Sphere', - ReferenceParticleRadius=1e-05, - Weight=_F(Density=1000.0,), - Mechanical='Rigid',),), - AmbiantMediaInteraction=_F(MomentumExchange=_F(withMomentumExchange=True, - MomentumFieldType=('Hydrodynamic',), - DefineForceOnParticle=_F( - TypeOfHydroDynamicForce=('Drag',), - FieldAppliesOnAllSpecies=True, - NatureOfFluidForce=_F( - NatureOfFlow='Turbulent', - TurbulenceModellingType='One-point moment', - RANSModel='Turbulent-Viscosity Model (TVM)', - TurbulenceModelDispersion='Langevin', - InitialisationType='ByInteraction', - Consigne='Create and choose suitable interaction', - InteractionNameForPressure=CS_Num1__CS_Num2_Pressure, - InteractionNameForVelocity=CS_Num1__CS_Num2_Velocity, - InteractionNameForEpsilon=CS_Num1__CS_Num2_Epsilon, - InteractionNameForRij=CS_Num1__CS_Num2_Rij,),),), - MassExchange=_F(withMassExchange=False,), - EnergyExchange=_F(withEnergyExchange=False,), - AmbientInducedProcesses=_F(withAmbientInducedProcesses=\ - False,), - AdditionalSamplingOfAmbientMedia=_F( - withAdditionalSamplingOfAmbientMedia=False,),), - ParticleParticleInteraction=_F(BondedInteractions=_F(BondedParticles=False,), - ActionsAtDistance=_F(withActionsAtDistance=False,), - ContactPhenomena=_F(withContactPhenomena=False,),), - ParticleWallInteraction=_F(withParticleWallInteraction=True, - ParticleWallInteractionId=WallReboundCondition, - TypeOfWall=_F(Dynamics='Fixed position', - LevelOfDescription='Continuum', - SurfaceTexture='Smooth',), - ActionsAtDistance=_F(withActionsAtDistance=False,), - ContactPhenomena=_F(withContactPhenomena=True, - LevelOfDescription='Macroscopic', - OutcomeOfContact='Elastic collision',),), - ConstraintsAndReducedStatisticalDescription=_F(Constraint=_F(TypeOfConstraint= - ('Time-marching_non-equilibrium', - ),),), - StateVector=_F(ParticleDiameter=_F(Diameter=Diameter, - ToSimulate=False,), - ParticleMass=_F(Mass=Mass, - ToSimulate=False,), - ParticlePosition=_F(Position=Position, - ToSimulate=True, - Initialisation=_F(InitialisationType='Not needed',),), - ParticleVelocity=_F(Velocity=Velocity, - ToSimulate=True, - Initialisation=_F(InitialisationType='Not needed', - SourceTerm=False,),), - FluidVelocitySeenByParticles=_F(FluidSeenVelocity=FluidSeenVelocity, - ToSimulate=True, - Initialisation=_F(InitialisationType=\ - 'Not needed', - SourceTerm=False,),),),), - NumericalModel=_F(Identifier=CS_Num2, - SimulatedTimeLapse=Time2, - ChoiceOfApproach='Particle_based', - NumericalMethod='CFD_Discrete_Particle_based', - Solver='Code_Saturne', - MeshIdentifiers=(half_pipe_15_40,),), - BoundaryConditions=_F(BoundaryCondition=(_F(TypeOfBoundaryCondition='Inlet', - ApplyOnGroups=(inlet2,), - TypeOfParticleInjected=Colloids, - NumberOfParticleInjected=100, - InjectionEveryNTimeSteps=1, - DiameterOfParticleInjected=1e-05, - MassOfParticleInjected=4.2e-12, - PositionOfParticleInjected=_F(InitialisationMode='ByFormula',), - ParticleVelocity=_F(InitialisationMode='ByFormula',), - FluidVelocitySeenByParticles=_F(InitialisationMode='ByFormula',),), - _F(TypeOfBoundaryCondition='Outlet', - ApplyOnGroups=(outlet,inlet1,), - ApplyOnAllsParticle=True,), - _F(TypeOfBoundaryCondition='Symmetry', - ApplyOnGroups=(symmetry,), - ApplyOnStateVariable= - - (Position,Velocity, - Diameter,Mass, - FluidSeenVelocity,), - ApplyOnAllsParticle=True,), - _F(TypeOfBoundaryCondition='Wall', - ApplyOnGroups=(wall,), - ApplyOnStateVariable=(Position,Velocity,FluidSeenVelocity,), - ChoiceOfParticleWallInteraction=WallReboundCondition, - ApplyOnAllsParticle=True,),),),); - -MedCouplingComponent=Interpolator(InterpolatorType='Med Coupling', - TargetMeshIdentifier=half_pipe_15_40, - InterpolationType='P0P0', - DefaultValueForUnmatchedMeshTargetEntity=-1.0,); - -Interactions(IOAspects=_F(FileTransfer=(_F(TransferId=fluidfile, - FileFormat='Med', - FileName='results_Fluid_domain.med',), - _F(TransferId=interpolated_Velocity_File, - FileFormat='Med', - FileName='results_Fluid_Interpolated_Velocity.med',), - _F(TransferId=Interpolated_Rij_File, - FileFormat='Med', - FileName='results_Fluid_Interpolated_Rij.med',), - _F(TransferId=Interpolated_Epsilon_File, - FileFormat='Med', - FileName='results_Fluid_Interpolated_Epsilon.med',), - _F(TransferId=Interpolated_Pressure_File, - FileFormat='Med', - FileName='results_Fluid_Interpolated_Pressure.med',),),), - Interaction=(_F(InteractionName=CS_Num1__CS_Num2_Velocity, - From=CS_Num1, - To=CS_Num2, - InvolvedStateVariable=Average_Velocity, - InteractionConfiguration=_F(OutputId=fluidfile, - FieldName='Velocity', - CouplingMode='DataProcessing', - DataProcessingNode=_F(Tool=MedCouplingComponent, - OutputId=interpolated_Velocity_File, - FieldName='Velocity', - FieldNature='IntensiveMaximum',),),), - _F(InteractionName=CS_Num1__CS_Num2_Epsilon, - From=CS_Num1, - To=CS_Num2, - InvolvedStateVariable=Epsilon, - InteractionConfiguration=_F(OutputId=fluidfile, - FieldName='epsilon', - CouplingMode='DataProcessing', - DataProcessingNode=_F(Tool=MedCouplingComponent, - OutputId=Interpolated_Epsilon_File, - FieldName='epsilon', - FieldNature='IntensiveMaximum',),),), - _F(InteractionName=CS_Num1__CS_Num2_Pressure, - From=CS_Num1, - To=CS_Num2, - InvolvedStateVariable=Pressure, - InteractionConfiguration=_F(OutputId=fluidfile, - FieldName='Pressure', - CouplingMode='DataProcessing', - DataProcessingNode=_F(Tool=MedCouplingComponent, - OutputId=Interpolated_Pressure_File, - FieldName='Pressure', - FieldNature='IntensiveMaximum',),),), - _F(InteractionName=CS_Num1__CS_Num2_Rij, - From=CS_Num1, - To=CS_Num2, - InvolvedStateVariable=Rij, - InteractionConfiguration=_F(OutputId=fluidfile, - FieldName='Rij', - CouplingMode='DataProcessing', - DataProcessingNode=_F(Tool=MedCouplingComponent, - OutputId=Interpolated_Rij_File, - FieldName='Rij', - FieldNature='IntensiveMaximum',),),),),); -#VERSION_CATALOGUE:VimmpV16:FIN VERSION_CATALOGUE -#CHECKSUM:af6dc896f894fc543700d58eb69f9c92 -:FIN CHECKSUM \ No newline at end of file diff --git a/Vimmp/cata_CSAndCPS_v17.py b/Vimmp/cata_CSAndCPS_v17.py deleted file mode 100644 index 994dd0ca..00000000 --- a/Vimmp/cata_CSAndCPS_v17.py +++ /dev/null @@ -1,1534 +0,0 @@ -from Accas import * -VERSION_CATALOGUE='VimmpV16' - -class composant(ASSD):pass -class mapper(ASSD):pass -class converter(mapper):pass -class interpolator(mapper):pass -class modeleNumDuCompo(UserASSD):pass -class especeChimique(UserASSD):pass -class userParticle(UserASSDMultiple) :pass -class userAtom(userParticle) :pass -class userMolecule(userParticle) :pass -class userDiscrete(userParticle) :pass -class userDPD(userParticle) :pass - -class spatialRegion(UserASSD):pass -class cadShape(spatialRegion):pass -#class meshGroup(spatialRegion,UserASSDMultiple):pass -class meshGroup(UserASSDMultiple):pass -class meshIdentifier(spatialRegion):pass -class systemGeometry(UserASSD):pass -class simulatedTime(UserASSD):pass -class constitutiveRelation(UserASSD):pass -class interaction(UserASSD):pass -class transferId(UserASSD):pass -class fileId(transferId):pass -class memoryId(transferId):pass -class corbaId(transferId):pass - -class stateVariable(UserASSDMultiple) : pass -class scalar(stateVariable):pass -class dynamicVariable(stateVariable):pass -class dynamicVariableParticle(stateVariable):pass -class wallInteractionId(UserASSD):pass - - -dictTypModNumModNum = { - ('Continuum system','Particle_based') : ('SPH' , 'Lagrangian one-fluid-particle pdf'), #TODO 'Particle_based --> Particle_based - ('Continuum system','Field_based') : ('FV' , 'FEM', 'Spectral method'), - ('Classical particle system','Particle_based') : ('MD' , 'DPD', 'SDPD','SPH','CFD_Discrete_Particle_based'), - ('Classical particle system','Field_based') : ('LBM' ,), - ('Quantum system','Particle_based') : ('Particle method',), - ('Quantum system','Field_based') : ('Wave',), -} - -dictCodeModeleNumerique = { - 'Code_Saturne' : ('Lagrangian one-fluid-particle pdf', 'FV', 'CFD_Discrete_Particle_based',), - 'Fluent' : ('FV',), - 'Culgi Package': (), - 'DEM_SD' : ('Lagrangian one-fluid-particle pdf', 'FV', 'CFD_Discrete_Particle_based',), - 'DFTB+' : ('density functional tight binding method',), - 'DL_MESO_DPD' : ('Lagrangian one-fluid-particle pdf', 'FV', 'CFD_Discrete_Particle_based',), - 'DL_MESO_LBE' : ('Lagrangian one-fluid-particle pdf', 'FV', 'CFD_Discrete_Particle_based',), - 'DL_POLY_4' : ('Lagrangian one-fluid-particle pdf', 'FV', 'CFD_Discrete_Particle_based',), - 'GROMACS' : ('Lagrangian one-fluid-particle pdf', 'FV', 'CFD_Discrete_Particle_based',), - 'GROMACS_LS' : ('Lagrangian one-fluid-particle pdf', 'FV', 'CFD_Discrete_Particle_based',), - 'LAMMPS' : ('Lagrangian one-fluid-particle pdf', 'FV', 'CFD_Discrete_Particle_based',), - 'NWChem' : ('Lagrangian one-fluid-particle pdf', 'FV', 'CFD_Discrete_Particle_based',), - 'OpenFOAM' : ('Lagrangian one-fluid-particle pdf', 'FV', 'CFD_Discrete_Particle_based',), - 'Quantum EXPRESSO' : ('Particle method', 'Wave',), - 'RHEO_AGGRATE' : ('Particle method', 'Wave',), - 'RHEO_DROP' : ('Particle method', 'Wave',), - 'STAR_CCM+' : ('FV', 'Particles',), - 'Code Nill' : ('Spectral method', ), -} -# Le Code Nill est ajouté en dur au Solver - -dictCodeFormat = { - 'Code_Saturne' : ('Med', 'cgns', 'msh', 'des', 'unv', ), - 'Culgi Package': ('cof',), - 'DEM_SD' : ('geo', 'ascii'), - 'DFTB+' : ('geo', 'ascii'), - 'Fluent' : ('FluentFormat', ), - 'OpenFOAM' : ('OpenFoamFormat', 'Med', ), -} - -listeFormatGenerique =['Med', 'Cgns', 'msh','geo', 'ascii' ] - -dictInterpolatorFormat = { - 'Med Coupling' : ('Med',), -} -dictConvertorFormat = { - 'Gmsh' : ('Med', 'OpenFoamFormat'), -} - -dictTermeLE = { - ('Fields','Particles') : ('Fluid_Velocity_Field', - 'Fluid_Temperature_Field', - 'Fluid_Species_Mass_Fraction_Fluid',), - ('Particles','Fields') : ('Fluid_Particle_Momentum_Exchange_Field', - 'Fluid_Particle_Thermal_Exchange_Field', - 'Lagrangian one-particle pdfFluid_Particle_Mass_Source_Field', - 'Particle_Volumetric_Concentration_Modified_Fluid_Viscosity', - 'Particle_Extra_Stress_Tensor'), - ('Particles','Particles') : ('Pas encore fait'), - ('Fields','Fields') : ('Pas encore fait'), -} - -dictCodeConvertisseur = { - ('Saturne', 'OpenFOAM') : ('gmsh', 'Saturne2CDM and CDM2OpenFoam'), - ('Saturne', 'Fluent') : ('Saturne2CDM and CDM2Fluent'), - ('Fluent', 'OpenFOAM') : ('Fluent2CDM and CDM2OpenFoam'), -} - -listeFormatGenerique =['Med', 'Cgns', 'Gmsh', ] - -#---------------------------------------- -def prepareBlocSystemType(systemType) : -#---------------------------------------- - condition = "SystemType == '" + systemType + "'" - Identifier = SIMP(statut='o', typ=(modeleNumDuCompo,'createObject'),ang='Provide a name to identify the numerical model within the CDM') - SimulatedTimeLapse = SIMP(statut ='o', typ = simulatedTime,ang='Define the timelapse to be simulated. \n Requires TemporalAspects to be defined in order to choose one.') - ChoiceOfApproach = SIMP(statut='o', typ='TXM', into=['Field_based', 'Particle_based'], position='inGetAttribut',ang='Choose the approach to be used.\n Current choice includes Field-based and Particle-based approaches.') - - dicoArgs={} - dicoComment_NumericalMethod={} - dicoComment_NumericalMethod['Field_based'] = 'Choose the type of Field-Based approach. \n Current choice includes Lattice-Boltzmann Method (LBM)' - dicoComment_NumericalMethod['Particle_based'] = 'Choose the type of Particle-Based approach. \n Current choice includes Molecular Dynamics (MD), (Smoothed) Dissipative Particle Dynamics (DPD or SDPD), Smoothed Particle Hydrodynamics (SPH), CFD particle tracking.' - - for typeMod in ('Field_based', 'Particle_based'): - conditionType = "ChoiceOfApproach == '" + typeMod + "'" - NumericalMethod = SIMP(statut='o',typ='TXM', into=dictTypModNumModNum[systemType, typeMod], - position='global', intoXML=allValueInDict(dictTypModNumModNum),ang=dicoComment_NumericalMethod[typeMod]) - dicoBloc = {} - for modeleNumerique in list(dictTypModNumModNum[systemType,typeMod]): - conditionNum = "NumericalMethod == '" + modeleNumerique + "'" - setCode = set() - for code in dictCodeModeleNumerique.keys(): - if modeleNumerique in dictCodeModeleNumerique[code]: setCode.add(code) - # print('------------- conditionType -------->',conditionType) - if setCode ==set(): setCode.add('Code Nill') - Solver = SIMP(statut='o', typ='TXM', into=list(setCode), intoXML=list(dictCodeModeleNumerique.keys()), ang='Choose the solver to be used (among the list)') - monNomBloc = 'bloc_ModelName_' + modeleNumerique.replace(' ','_') #les noms de blocs ne peuvent pas avoir de blanc ! - if setCode !=set(): dicoBloc[monNomBloc]=BLOC(condition=conditionNum, nomXML='b_ModelName',Solver=Solver) - dicoArgs['blocModelType'+typeMod] = BLOC(condition=conditionType, NumericalMethod=NumericalMethod, **dicoBloc) - - blocMeshRef = BLOC(condition = '( (ChoiceOfApproach == "Field_based") and (NumericalMethod == "FV") ) or ' - '( (ChoiceOfApproach == "Particle_based") and (NumericalMethod == "CFD_Discrete_Particle_based") )', - MeshIdentifiers = SIMP(statut ='o', max ='**', typ = meshIdentifier, ang='Choose the mesh to be used.\n Requires at least one spatial discrezisation defined in SpatialAspects.', - metAJour=(('ApplyOnGroups', - 'self.etape.getChild("BoundaryConditions").getChild("BoundaryCondition")'),), - ),) - dicoArgs['blocMeshRef'] = blocMeshRef - NumericalModel = FACT(statut='o', max= '**', Identifier=Identifier, ChoiceOfApproach=ChoiceOfApproach, ang='Define the numerical model for the component', - SimulatedTimeLapse=SimulatedTimeLapse, **dicoArgs) - return BLOC(condition=condition, nomXML='b_systemType', NumericalModel=NumericalModel) - - -#----------------------------------- -def calculCommun(key1, key2, dico): -#----------------------------------- -# retourne la liste des valeurs communes a dico[key1] et dico[key2] - monSet=set() - if not key1 in dico: return () - if not key2 in dico: return () - for val in dico[key1]: - if val in dico[key2]: - monSet.add(val) - if monSet == set() : monSet.add ('No common format') - return list(monSet) - -#------------------------- -def allValueInDict(dico): -#------------------------- -# retourne la liste de toutes les valeurs possibles dans dico - monSet=set() - for clef in dico : - for val in dico[clef] : monSet.add(val) - return monSet - -#-------------------------------------------------------------------------------------------------- -def creeBlocPourLesFichiers(laCondition, Prefixe='Empty', ListeFormats=[], FieldName=None): -#--------------------------------------------------------------------------------------------------- -# il faut reflechir pour parametrer NomDuFichier -# et le type (existing... du fichier) -# et utiliser le creeBlocPourLesFichiers - SIMPFormatFichier = SIMP(statut='o', typ = 'TXM', into = tuple(ListeFormats) + ('All',), defaut='All' ,ang='Provide the file format') - dicoDesBlocs = {} - NomDuFichier = Prefixe+'FileName' - formatName = Prefixe+'FileFormat' - dicoDesBlocs[formatName] = SIMPFormatFichier - ListeFormatsboucle = tuple(ListeFormats) + ('All',) - for formatFich in ListeFormatsboucle : - dicoArgs={} - nomBloc = 'blocFormatFichier' + str(formatFich) - typeDesFichiers = ('Fichier', formatFich + " Files (*." + formatFich + ");;All Files (*)",'Sauvegarde') - blocCondition = formatName + " == '" + formatFich + "'" - dicoArgs[NomDuFichier] = SIMP(statut='o', typ = typeDesFichiers, nomXML=NomDuFichier ,ang='Provide the file name') - dicoDesBlocs[nomBloc] = BLOC(condition = blocCondition, **dicoArgs) - if FieldName: - SIMPFieldName = SIMP(statut='o', typ = 'TXM',) - dicoDesBlocs[FieldName] = SIMPFieldName - return BLOC(condition=laCondition, **dicoDesBlocs) - -#--------------------------------------------------------------------- -def prepareBlocAmbiantMediaField(condition, nomDuFact, nomDelaContante, FactComment, FieldComment) : -#--------------------------------------------------------------------- - dicoDesBlocs = {} - dicoDuFact = {} - dicoDuFact[nomDelaContante] = SIMP(typ='TXM', statut='o', defaut = nomDelaContante, homo='constant', ang=FieldComment) - monFact = FACT ( statut ='o', ang=FactComment, - **dicoDuFact, - SteadyState = SIMP(typ=bool, statut ='o', defaut = True,ang='Precise if the ambient field is a steady state'), - blocSteadyState = BLOC(condition = 'SteadyState == True', - FieldOrigin = SIMP(statut='o', into =['File', 'Value','Interaction'], typ ='TXM',ang='Define the origin of the field.\n Current choice includes an external File, a given Value or an Interaction (with a component)'), - blocValue = BLOC(condition = 'FieldOrigin == "Value"', - ConstantValue = SIMP(statut ='o', typ='R',ang='Give the value of the field'), - ), - blocFile = creeBlocPourLesFichiers('FieldOrigin == "File"', 'Position', ('Med', 'cgns' ), ''), - blocInteraction = BLOC(condition = 'FieldOrigin == "Interaction"', - InteractionName = SIMP(typ=interaction,statut='o',ang='Choose the component in interaction.\n Requires at least another component.'), - Consigne = SIMP(statut="o", homo="information", typ="TXM", defaut='Create and choose suitable interaction'), - ), - ), - blocConsigne = BLOC(condition = 'SteadyState == False', - Consigne = SIMP(statut="o", homo="information", typ="TXM", defaut='Not implemented yet. Will ask for a range of calculation steps.'), - ), #BlocNotSteady - FieldAppliesOnAllSpecies = SIMP(statut='o', typ=bool, defaut=True,ang='Precise if the field applies on all species (i.e. all types of particles defined in this Classical-Particle-System component)'), - blocPorteEspece = BLOC(condition = 'FieldAppliesOnAllSpecies == False ', - AppliesToSpecies = SIMP(statut='o', typ=userParticle, max= '**', homo='SansOrdreNiDoublon'), # faire un typ = "espece" - ), - ) - dicoDesBlocs[nomDuFact] = monFact - return BLOC(condition=condition,**dicoDesBlocs) - -#------------------------------ -def prepareTermeSource(condition): -#------------------------------ - return BLOC (condition=condition, - OriginOfSourceTerm = SIMP(statut='o', typ='TXM',into=['Interaction', 'Chemical Reaction', 'Other Scalar'],ang='Choose the origin of the source term. \n Current choice includes Interaction (i.e. with another component), Chemical Reaction, Other Scalars'), - blocOriginOfSourceTermInteraction = BLOC(condition = 'OriginOfSourceTerm == "Interaction"', - SourceTermInteraction = SIMP(typ=interaction,statut='o'), - Consigne = SIMP(statut="o", homo="information", typ="TXM", defaut='Create and choose suitable interaction'), - ), - blocOriginOfSourceTermOtherScalar = BLOC(condition = 'OriginOfSourceTerm == "Other Scalar"', - TakenFrom = SIMP (statut ='o', typ=scalar, ), #PNPN A FAIRE : fenetreIhm='menuDeroulant' - ), - ) - -#---------------------------------------- -def prepareTermeSourceParticle(condition): -#--------------------------------------- -# les differences avec prepareTermeSource sont -# le type de TakenFrom -# le into -# il est possible de factoriser les 2 fonctions en utilisant un intoXML mais cela -# affaiblit la possibilite de controle du XSD - - return BLOC (condition=condition, - OriginOfSourceTerm = SIMP(statut='o', typ='TXM',into=['Interaction', 'Other Particle'],ang='Choose the origin of the source term. \n Current choice includes Interaction (i.e. with another component), Other Particle (i.e. with another particle within this Classical-Particle-System component).'), - blocOriginOfSourceTermInteraction = BLOC(condition = 'OriginOfSourceTerm == "Interaction"', - SourceTermInteraction = SIMP(typ=interaction,statut='o'), - Consigne = SIMP(statut="o", homo="information", typ="TXM", defaut='Create and choose suitable interaction'), - ), - blocOriginOfSourceTermOtherScalar = BLOC(condition = 'OriginOfSourceTerm == "Other Particle"', - TakenFrom = SIMP (statut ='o', typ=userParticle, ), #PNPN A FAIRE : fenetreIhm='menuDeroulant' - ), - ) - -#--------------------------------------------------------------------------------- -def prepareFactTurbulence(statut, ajout=None , position=None, positionChoice=None): -#--------------------------------------------------------------------------------- - listInto = ['Fully resolved (DNS)', 'Spatial filtering (LES)', 'One-point moment', 'One-point PDF'] - if ajout != None : listInto.append(ajout) - return FACT(statut=statut, ang='Define how turbulence is simulated.', - TurbulenceModellingType = SIMP(typ='TXM', statut='o', into =listInto, position=position ,ang='Choose the model used for turbulence.\n Current choice includes DNS (Direct Numerical Simulation), LES (Large-Eddy Simulation), One-point moment and One-point PDF'), - -# --------------- One-point moment ------------------ - blocOnePoint = BLOC(condition= "TurbulenceModellingType == 'One-point moment'", - RANSModel = SIMP(statut="o", typ="TXM", position='global', - into=['Turbulent-Viscosity Model (TVM)', 'Reynolds Stress Model (RSM)'],ang='Choose the type of One-point moment model for turbulence.\n Current choice includes Turbulent-Viscosity Model and Reynolds-Stress Model'), - blocTVM = BLOC(condition= "RANSModel == 'Turbulent-Viscosity Model (TVM)'", - TVMChoice = SIMP(typ='TXM', statut='o', into=['K-Epsilon', 'K-Omega'] , position=positionChoice, ang='Choose the type of Turbulent-Viscosity model for turbulence.\n Current choice includes K-Epsilon and K-Omega models.'), ##PN PN : parametre vs reCalculeEtape - ), # fin blocTVM - blocRSM = BLOC(condition = "RANSModel == 'Reynolds Stress Model (RSM)'", - RSMChoice = SIMP(typ='TXM', statut='o', into=['Rotta', 'LRR-IP','LRR-QI','SSG'], position=positionChoice,ang='Choose the type of Reynolds-Stress model for turbulence.\n Current choice includes Rotta, LRR-IP, LRR-IQ and SSG models.'), - ), # fin blocRSM - ), # fin bloc_one_point - -# --------------- Spatial filtering (LES) ------------------ - blocOneSpatial = BLOC(condition = "TurbulenceModellingType == 'Spatial filtering (LES)'", - ChoiceOfDescription = SIMP(typ='TXM', statut='o', into=['One-point filtered variables', 'Filtered Density Function (FDF)'],ang='Choose the type of LES model for turbulence.\n Current choice includes One-point filtered variables models and Filtered-Density Function (FDF) models.'), - blocOnePoint = BLOC(condition = "ChoiceOfDescription == 'One-point filtered variables'", - SubgridScaleModel = SIMP(typ='TXM', statut='o', into=['No SGS', 'Smagorinsky','Dynamical model', 'SGS Transport Equations'],ang='Choose the type of One-point filtered variables model for turbulence.\n Current choice includes No SGS (Sub-Grid Scale), Smagorinsky, Dynamical model or SGS Transport Equations.'), - ),# fin bloc_OnePoint - blocFDF = BLOC(condition = "ChoiceOfDescription == 'Filtered Density Function (FDF)'", - SubgridScaleModel = SIMP(typ='TXM', statut='o', into=['SLM model for SGS', 'Viscous SLM model for SGS'],ang='Choose the type of FDF model for turbulence.\n Current choice includes SLM model for SGS (Simple Langevin Model) and Viscous SLM model for SGS'), - ),# fin bloc_FDF - ), # fin bloc_one_spatial - -# --------------- One-point PDF ------------------ - blocOnePointPdf = BLOC(condition = "TurbulenceModellingType == 'One-point PDF'", - ChoiceOfDescription = SIMP(typ='TXM', statut='o', into=['Velocity PDF', 'Velocity frequency PDF'],ang='Choose the type of One-point PDF model for turbulence.\n Current choice includes Velocity PDF and Velocity Frequency PDF'), - blocVPdf = BLOC(condition = "ChoiceOfDescription == 'Velocity PDF'", - StochasticModel = SIMP(typ='TXM', statut='o', into=['SLM','GLM'], defaut='SLM',ang='Choose the type of Velocity PDF model for turbulence.\n Current choice includes SLM (Standard Langevin Model) and GLM (Generalized Langevin Model)'), - ), # fin blocVPdf - blocVFPdf = BLOC(condition = "ChoiceOfDescription == 'Velocity frequency PDF'", - StochasticModel = SIMP(typ='TXM', statut='o', into=['Log-normal model','Gamma model','User-defined form'], defaut='SLM',ang='Choose the type of Velocity-Frequency PDF model for turbulence.\n Current choice includes Log-normal model, Gamma model and User-defined forms.'), - ), # fin blocVFPdf - ), # fin bloc_one_point_pdf - -# --------------- Fully resolved (DNS) ------------------ - # blocNoModel = BLOC(condition = "TurbulenceModellingType == 'Fully resolved (DNS)'", - # ChoiceOfApproach = SIMP(statut='o', typ='TXM', into=['Field_based (DNS)', 'Particle_based']), - # blocField = BLOC(condition = "ChoiceOfApproach == 'Field_based (DNS)'", - # NumericalMethod = SIMP(statut='o', typ='TXM', into=['FV', 'Spectral Method'], - # intoXML=['FV', 'Spectral Method','SPH', 'Vortex Method']), - # ),# fin bloc_Field - # blocNParticle = BLOC(condition = "ChoiceOfApproach == 'Particle_based'", - # NumericalMethod = SIMP(statut='o', typ='TXM', into=['SPH', 'Vortex Method'], - # intoXML=['FV', 'Spectral Method','SPH', 'Vortex Method']), - # ),# fin bloc_N_particle - # ), # fin bloc_no_model - ) # fin du return de la fonction factTurbulence - -#-------------------------------------- -def prepareFactTurbulenceForParticule(): -#-------------------------------------- - listInto = ['Fully resolved (DNS)', 'Spatial filtering (LES)', 'One-point moment', 'One-point PDF'] - return FACT(statut='o', - NatureOfFlow = SIMP(typ='TXM', statut='o', into =['Laminar', 'Turbulent'], position='global',ang='Choose the type of flow.\n Current choice includes laminar or turbulent.'), - blocTurbulent = BLOC( condition = 'NatureOfFlow == "Turbulent"', - TurbulenceModellingType = SIMP(typ='TXM', statut='o', into =listInto,ang='Choose the model used for the turbulent flow.\n Current choice includes DNS (Direct Numerical Simulation), LES (Large-Eddy Simulation), One-point moment and One-point PDF'), -# --------------- One-point moment ------------------ - blocOnePoint = BLOC(condition= "TurbulenceModellingType == 'One-point moment'", - RANSModel = SIMP(statut="o", typ="TXM", into=['Turbulent-Viscosity Model (TVM)', 'Reynolds Stress Model (RSM)'],ang='Choose the type of One-point moment model for the turbulent flow.\n Current choice includes Turbulent-Viscosity Model and Reynolds-Stress Model'), - ), # fin bloc_one_point - -# --------------- Spatial filtering (LES) ------------------ - blocOneSpatial = BLOC(condition = "TurbulenceModellingType == 'Spatial filtering (LES)'", - ChoiceOfDescription = SIMP(typ='TXM', statut='o', into=['One-point filtered variables', 'Filtered Density Function (FDF)'],ang='Choose the type of LES model for the turbulent flow.\n Current choice includes One-point filtered variables models and Filtered-Density Function (FDF) models.'), - ), # fin bloc_one_spatial - -# --------------- One-point PDF ------------------ - blocOnePointPdf = BLOC(condition = "TurbulenceModellingType == 'One-point PDF'", - ChoiceOfDescription = SIMP(typ='TXM', statut='o', into=['Velocity PDF', 'Velocity frequency PDF'],ang='Choose the type of One-point PDF model for the turbulent flow.\n Current choice includes Velocity PDF and Velocity Frequency PDF'), - ), # fin bloc_one_point_pdf - #TypeOfHydroDynamicForce - blocTMD = BLOC(condition ='NatureOfFlow == "Turbulent" and "Drag" in TypeOfHydroDynamicForce', - TurbulenceModelDispersion = SIMP (statut ='o', typ='TXM', into = ['Langevin'],ang='Choose the type of model for particle turbulent dispersion.\n Current choice includes Langevin model.'), - BlocInitialisationLangevin = BLOC(condition ='TurbulenceModelDispersion == "Langevin"', - InitialisationType = SIMP(statut='o', into =['ByInteraction', 'ByFile' ], typ ='TXM', ang='Choose how the turbulent field is initialized.\n Current choice includes by Interaction (with another component) or by File.'), - blocByFile = creeBlocPourLesFichiers('OrigineType == "ByFile"', '', ListeFormats = 'all', FieldName=None), - blocByInteraction = BLOC(condition = 'InitialisationType == "ByInteraction"', - Consigne = SIMP(statut="o", homo="information", typ="TXM", defaut='Create and choose suitable interactions'), - InteractionNameForPressure = SIMP(typ=interaction,statut='o', ang='Choose the origin of the pressure field.\n Requires another continuum component.', - filtre=( '(set(("Pressure",)).intersection(set(self.getEficasAttribut("InvolvedStateVariable"))) != set())', - ()), # Pressure en dur - ), - InteractionNameForVelocity = SIMP(typ=interaction,statut='o', ang='Choose the origin of the velocity field. \n Requires another continuum component.'), - InteractionNameForEpsilon = SIMP(typ=interaction,statut='o', ang='Choose the origin of the turbulent dissipation field. \n Requires another continuum component.'), - InteractionNameForRij = SIMP(typ=interaction,statut='o', ang='Choose the origin of the Reynolds Stress field. \n Requires another continuum component.'), - ), - ), - ), - ),# fin bloc Turbulent - ) # fin du return de la fonction factTurbulence - -#-------------------------------------------------------- -def prepareFactTurbulenceScalaire(statut, position=None): -#------------------------------------------------------- - listInto = ['Fully resolved (DNS)', 'Spatial filtering (LES)', 'One-point moment', 'One-point PDF'] - return FACT(statut=statut, - TurbulenceModellingType = SIMP(typ='TXM', statut='o', into =listInto, position=position, ang='Choose the model used for the turbulent transport of the scalar.\n Current choice includes DNS (Direct Numerical Simulation), LES (Large-Eddy Simulation), One-point moment and One-point PDF'), - -# --------------- One-point moment ------------------ - blocOnePoint = BLOC(condition= "TurbulenceModellingType == 'One-point moment'", - RANSModel = SIMP(statut="o", typ="TXM", ang='Choose the type of One-point moment model for the turbulent transport of the scalar.\n Current choice includes Algebraic flux models, Turbulent diffusivity models and Scalar-flux transport equations', - into=['Algebraic flux models','Turbulent diffusivity models', 'Scalar-flux transport equations']), - # Ce bloc consigne ne passe pas dans la projection XSD - # blocAlgebraic = BLOC(condition= "RANSModel == 'Algebraic flux models'", - blocConsigne = BLOC(condition= "RANSModel == 'Algebraic flux models'", - Consigne = SIMP(statut="o", homo="information", typ="TXM", defaut='Not implemented yet'), - ), # fin blocAlgebraic - blocTDM = BLOC(condition = "RANSModel == 'Turbulent diffusivity models'", - TDMChoice = SIMP(typ='TXM', statut='o', into=['SGDH', 'GGDH',],ang='Choose the type of turbulent-diffusivity models for the scalar.\n Current choice includes SGDH (standard gradient diffusion hypothesis) and GGDH (generalized gradient diffusion hypothesis)'), - ), # fin blocTDM - blocSFTE = BLOC(condition = "RANSModel == 'Scalar-flux transport equations'", - SFTEChoice = SIMP(typ='TXM', statut='o', into=['Pressure-scrambling model', 'EB-DFM',]), - ), # fin blocSFTE - ), # fin bloc_one_point - -# --------------- Spatial filtering (LES) ------------------ - blocOneSpatial = BLOC(condition = "TurbulenceModellingType == 'Spatial filtering (LES)'", - ChoiceOfDescription = SIMP(typ='TXM', statut='o', into=['One-point filtered variables', 'Filtered Density Function (FDF)'],ang='Choose the type of LES model for the turbulent transport of the scalar.\n Current choice includes One-point filtered variables, Filtered Density Function (FDF)'), - blocOnePoint = BLOC(condition = "ChoiceOfDescription == 'One-point filtered variables'", - SubgridScaleModel = SIMP(typ='TXM', statut='o', into=['No SGS model', 'SGS diffusivity', 'Transport eqs. for SGS scalar fluxes'],ang='Choose the type of One-point filtered variables model for the turbulent transport of the scalar.\n Current choice includes No SGS (Sub-Grid Scale), Smagorinsky, Dynamical model or SGS Transport Equations.'), - ),# fin bloc_OnePoint - blocFDF = BLOC(condition = "ChoiceOfDescription == 'Filtered Density Function (FDF)'", - SubgridScaleModel = SIMP(typ='TXM', statut='o', into=['Composition FDF', 'Scalar-velocity FDF', 'Micro-mixing model'],ang='Choose the type of FDF model for the turbulent transport of the scalar.\n Current choice includes Composition FDF, Scalar-velocity FDF and Micro-mixig models'), - ),# fin bloc_FDF - ), # fin bloc_one_spatial - -# --------------- One-point PDF ------------------ - blocOnePointPdf = BLOC(condition = "TurbulenceModellingType == 'One-point PDF'", - ChoiceOfDescription = SIMP(typ='TXM', statut='o', into=['Composition PDF','Velocity PDF', 'Micro-mixing models'],ang='Choose the type of One-point PDF model for the turbulent transport of the scalar.\n Current choice includes Composition PDF, Velocity PDF and Micro-mixing models'), - # blocCPdf = BLOC(condition = "(ChoiceOfDescription == 'Composition PDF') or (ChoiceOfDescription == 'Velocity PDF')", - # blocConsigne = BLOC(condition = "(ChoiceOfDescription == 'Composition PDF') or (ChoiceOfDescription == 'Velocity PDF')", - # Consigne = SIMP(statut="o", homo="information", typ="TXM", defaut='Not implemented yet.'), - # ), # fin blocCPdf - # blocVPdf = BLOC(condition = "ChoiceOfDescription == 'Velocity PDF'", - # ), # fin blocVPdf - blocMMMPdf = BLOC(condition = "ChoiceOfDescription == 'Micro-mixing models'", - ChoiceOfModel = SIMP(typ='TXM', statut='o', into=['IEM/CIEM','Curl model','Mapping','EMST'],ang='Choose the type of Micro-mixing model for the turbulent transport of the scalar.\n Current choice includes IEM/CIEM (Interaction by exchange with the mean), Curl model, Mapping and EMST (Euclidean minimum spanning tree).'), - ), # fin blocMMMdf - ), # fin bloc_one_point_pdf - -# --------------- Fully resolved (DNS) ------------------ - # blocNoModel = BLOC(condition = "TurbulenceModellingType == 'Fully resolved (DNS)'", - # ChoiceOfApproach = SIMP(statut='o', typ='TXM', into=['Field_based (DNS)', 'Particle_based']), - # blocField = BLOC(condition = "ChoiceOfApproach == 'Field_based (DNS)'", - # NumericalMethod = SIMP(statut='o', typ='TXM', into=['FV', 'Spectral Method'], - # intoXML=['FV', 'Spectral Method','SPH', 'Vortex Method']), - # ),# fin bloc_Field - # blocNParticle = BLOC(condition = "ChoiceOfApproach == 'Particle_based'", - # NumericalMethod = SIMP(statut='o', typ='TXM', into=['SPH', 'Vortex Method'], - # intoXML=['FV', 'Spectral Method','SPH', 'Vortex Method']), - # ),# fin bloc_N_particle - # ), # fin bloc_no_model - ) # fin du return de la fonction factTurbulence - - -#-------------------- -def prepareBlocCPS(): -#-------------------- - return BLOC(condition = 'SystemType == "Classical particle system"', - Particles = prepareParticles(), - -# ----------------------------- AmbiantMediaInteraction ---------------------------------- - AmbiantMediaInteraction = FACT(statut='o', ang='Define particle-ambient media interactions (when necessary)', - MomentumExchange = FACT(statut='o', - withMomentumExchange = SIMP(statut='o', typ=bool, defaut=False,ang='Activate if the ambient media interacts with particles via momentum exchange'), - blocMomentum = BLOC(condition = 'withMomentumExchange == True', - MomentumFieldType = SIMP(statut='o', typ='TXM', into=['Gravitational','Electric','Magnetic', 'Hydrodynamic'], max='**', homo='SansOrdreNiDoublon',position='reCalculeEtape'), - blocElectric = prepareBlocAmbiantMediaField('MomentumFieldType != None and "Electric" in MomentumFieldType', 'DefineElectricForce', 'E','Provide information on the ambient electric field','Define the value of the electric field') , - blocMagnetic = prepareBlocAmbiantMediaField('MomentumFieldType != None and "Magnetic" in MomentumFieldType', 'DefineMagneticForce', 'B','Provide information on the ambient magnetic field','Define the value of the magnetic field') , - blocGravite = BLOC(condition = 'MomentumFieldType != None and "Gravitational" in MomentumFieldType', - DefineGravityForce = FACT (statut='o', - InitialisationType = SIMP(statut='o', into =['ByValue', 'ByFile' ], typ ='TXM', defaut='ByValue',ang='Choose how the gravity field is initialized'), - blocInitValue= BLOC(condition = 'InitialisationType == "ByValue"', - G = SIMP(statut='o', typ='R', defaut=9.81,ang='Value of the gravitational acceleration (in m/s^2)'), - Direction = FACT (statut ='o', - GX = SIMP(statut='o', typ='R', ), - GY = SIMP(statut='o', typ='R', ), - GZ = SIMP(statut='o', typ='R', ), - ), - ), # fin blocInitValue - #PN : a completer pour fichier - FieldAppliesOnAllSpecies = SIMP(statut='o', typ=bool, defaut=True,ang='Precise if the field applies on all species (i.e. all types of particles defined in this Classical-Particle-System component)'), - blocPorteEspece = BLOC(condition = 'FieldAppliesOnAllSpecies == False ', - AppliesToSpecies = SIMP(statut='o', typ=userParticle, max= '**', homo='SansOrdreNiDoublon'), # faire un typ = "espece" - ), - ), # Fact Gravite - ), # bloc Gravite - blocHydro = BLOC(condition = 'MomentumFieldType != None and "Hydrodynamic" in MomentumFieldType', - DefineForceOnParticle = FACT (statut='o', ang='Define how the ambient media acts on the particle', - TypeOfHydroDynamicForce = SIMP(statut='o', max='**', typ='TXM', into=['Drag', 'Lift', 'Fluid Pressure Gradient', 'ThermoPhoresis', 'Brownian Motion'], homo='SansOrdreNiDoublon', position='global',ang='Choose the type of hydrodynamic force acting on a particle. \n Current choice includes Drag force, Lift force, Fluid Pressure Gradient, Thermophoresis and Brownian motion.'), - - FieldAppliesOnAllSpecies = SIMP(statut='o', typ=bool, defaut=True,ang='Precise if the field applies on all species (i.e. all types of particles defined in this Classical-Particle-System component)'), - blocPorteEspece = BLOC(condition = 'FieldAppliesOnAllSpecies == False ', - AppliesToSpecies = SIMP(statut='o', typ=userParticle, max= '**', homo='SansOrdreNiDoublon'), # faire un typ = "espece" - ), - NatureOfFluidFlow = prepareFactTurbulenceForParticule() - ), - ), - ), # fin blocMomentum - ), # fin MomentumExchange - MassExchange = FACT(statut='o', - withMassExchange = SIMP(statut='o', typ=bool, defaut=False,ang='Activate if the ambient media interacts with particles via mass exchange',), - blocMassExchange = BLOC(condition = 'withMassExchange == True', - MassExchangeFieldType = SIMP(statut='o', typ='TXM', into=['Evaporation','Condensation','Precipitation'], max='**', homo='SansOrdreNiDoublon',ang='Choose the type of mass exchange interaction with the particle. \n Current choice includes Evaporation, Condensation and Precipitation.'), - ), # fin blocMassExchange - ), # fin MassExchange - EnergyExchange = FACT(statut='o', - withEnergyExchange = SIMP(statut='o', typ=bool, defaut=False,ang='Activate if the ambient media interacts with particles via energy exchange'), - blocEnergyExchange = BLOC(condition = 'withEnergyExchange == True', - EnergyExchangeFieldType = SIMP(statut='o', typ='TXM', into=['HeatTransfer','Radiation','Combustion'], max='**', homo='SansOrdreNiDoublon',ang='Choose the type of energy exchange interaction with the particle. \n Current choice includes Heat Transfer, Radiation and Combustion.'), - ), # fin blocMassExchange - ), # fin EnergyExchange - AmbientInducedProcesses = FACT(statut='o', - withAmbientInducedProcesses = SIMP(statut='o', typ=bool, defaut=False,ang='Activate if the ambient media interacts with particles via specific induced processes'), - blocAmbientInducedProcesses = BLOC(condition = 'withAmbientInducedProcesses == True', - AmbientInducedProcessesType= SIMP(statut='o', typ='TXM', into=['Fragmentation',], max='**', homo='SansOrdreNiDoublon',ang='Choose the type of ambient induced processes acting on the particle. \n Current choice include Fragmentation.'), - bAmbientInducedProcessesType = BLOC(condition = '(AmbientInducedProcessesType != None) and ("Fragmentation" in AmbientInducedProcessesType)', - #PN : pb dans les locaux et l operateur in - LevelOfDescription= SIMP(statut='o', typ='TXM', into=['Fully-resolved','Mean-field approaches'],ang='Choose the level of description for the fragmentation of particles. \n Current choice includes Fully-resolved approaches (direct simulations of aggregates fragmentation) and Mean-field approaches (Population Balance Equation)'), - bMeanField = BLOC(condition = "LevelOfDescription == 'Mean-field approaches'", - FragmentationRate = SIMP(statut='o', typ='R',ang='Define the fragmentation rate (for PBE models)'), - DaughterSizeDistribution = SIMP(statut='o', typ='R',ang='Define the daughter size distribution (for PBE models)'), - ), - ), - ), # fin AmbientInducedProcesses - ), # fin EnergyExchange - AdditionalSamplingOfAmbientMedia = FACT(statut='o', - withAdditionalSamplingOfAmbientMedia = SIMP(statut='o', typ=bool, defaut=False,ang='Activate if additional sampling of the ambient media by particles'), - blocAdditionalSamplingOfAmbientMedia = BLOC(condition = 'withAdditionalSamplingOfAmbientMedia == True', - FluidProperties = FACT(statut='o', - VelocityGradient = SIMP(statut='o', typ = bool, defaut=False,ang='Activate sampling of the velocity gradient along particle trajectories'), - PressureGradient = SIMP(statut='o', typ = bool, defaut=False,ang='Activate sampling of the pressure gradient along particle trajectories'), - ), - ), # fin blocblocAdditionalSamplingOfAmbientMedia - ), # fin AdditionalSamplingOfAmbientMedia - ), # fin AmbiantMediaInteraction - - ParticleParticleInteraction = FACT(statut='o', max = "**",ang='Define particle-particle interactions (when necessary)', - # -------------------------------------------------------# - BondedInteractions = prepareBondedInteractions(), - ActionsAtDistance = prepareActionsAtDistance(), - ContactPhenomena = prepareContactPhenomena(), - ), # fin ParticleParticleInteraction - - ParticleWallInteraction = FACT(statut='o', max = "**",ang='Define particle-wall interactions (when necessary)', - withParticleWallInteraction = SIMP(statut='o', typ =bool, defaut=False,ang='Activate particle-wall interactions'), - bwithParticleWallInteraction = BLOC (condition = 'withParticleWallInteraction == True', - ParticleWallInteractionId= SIMP(typ=(wallInteractionId,'createObject'), statut='o',ang='Define a name for the type of particle-wall interaction (to be used within the CDM)'), - TypeOfWall = FACT(statut='o', - Dynamics = SIMP(statut='o', typ='TXM', into = ('Fixed position','Moving wall'),ang='Choose the type of wall dynamics.\n Current choice includes a Fixed wall and a Moving wall.'), - LevelOfDescription = SIMP(statut='o', typ='TXM', into = ('Discretized particles','Continuum'),ang='Choose the level of description of the wall.\n Current choice includes Discretized particles (i.e. microscopic description) and Continuum level (i.e. macroscopic description).'), - bContinuum = BLOC(condition = 'LevelOfDescription == "Continuum"', - SurfaceTexture = SIMP(statut='o', typ='TXM', into = ('Smooth','Rough'),ang='Choose the type of surface texture.\n Current choice includes a Smooth or a Rough wall.'), - ), - bDiscretized = BLOC(condition = 'LevelOfDescription == "Discretized particles"', - BondedInteractions = prepareBondedInteractions(True), - ), - ), - ActionsAtDistance = prepareActionsAtDistanceForWall(), - ContactPhenomena = prepareContactPhenomenaWall(), - ), - ),# fin ParticleWallInteraction - - ConstraintsAndReducedStatisticalDescription = FACT(statut='o', - Constraint= FACT(statut='o', - TypeOfConstraint = SIMP( typ='TXM', statut='o', into=['Quasi-static_methods','Brownian_dynamics','Presumed_transport','Time-marching_equilibrium','Time-marching_non-equilibrium'],defaut=['Time-marching_non-equilibrium',], max ='**', position='reCalculeEtape', homo='SansOrdreNiDoublon',ang='Choose the type of constraints on the classical particle system.\n Current choice includes Quasi-static methods (e.g. Geometric optimisation or Monte-Carlo equilibrium), Brownian Dynamics (overdamped limit), Presumed Transport (i.e. particle motion are known), Time-marching equilibrium (e.g. canonical distribution) and Time-marching non-equilibrium (e.g. unsteady particle-tracking in time).'), - ), - ), - -# transparents 163 et 164 -# si brownian Diameter mass et position -# Presumed transport -# No particle transport --> -# givencenter-of-mass transport __> position sera presente mais given transport - - StateVector = FACT(statut ='o',ang='Define the state vector for the particle (i.e. the variables attached to the particles).', - ParticleDiameter = FACT(statut ='o',ang='Activate the particle diameter in the State Vector', - Diameter = SIMP(typ=(dynamicVariable,'createObject'), statut='o', defaut ='Diameter', homo='constant'), - ToSimulate = SIMP(typ=bool, statut ='o', defaut = True,ang='Choose to track the evolution of the particle diameter'), - blocSimulatedDiameter = prepareBlocInitialisationParticle(condition = 'ToSimulate == True', termeSource=True), - ), - ParticleMass = FACT(statut ='o',ang='Activate the particle mass in the State Vector', - Mass = SIMP(typ=(dynamicVariable,'createObject'), statut='o', defaut ='Mass', homo='constant'), - ToSimulate = SIMP(typ=bool, statut ='o', defaut = True,ang='Choose to track the evolution of the particle mass'), - blocSimulatedMass = prepareBlocInitialisationParticle(condition = 'ToSimulate == True', termeSource=True), - ), - ParticlePosition = FACT(statut ='o',ang='Activate the particle position in the State Vector', - Position = SIMP(typ=(dynamicVariable,'createObject'), statut='o', defaut ='Position', homo='constant'), - ToSimulate = SIMP(typ=bool, statut ='o', defaut = True,ang='Choose to track the evolution of the particle position'), - blocSimulatedPosition = prepareBlocInitialisationParticle(condition = 'ToSimulate == True', termeSource=False), - blocNoSimulatedPosition = prepareBlocOrigine(condition = 'ToSimulate == False') - ), - blocNoBrownianDynamics = BLOC(condition = '(TypeOfConstraint != None) and not("Brownian dynamics" in TypeOfConstraint)', - ParticleVelocity = FACT(statut ='o',ang='Activate the particle velocity in the State Vector', - Velocity = SIMP(typ=(dynamicVariable,'createObject'), statut='o', defaut ='Velocity', homo='constant'), - ToSimulate = SIMP(typ=bool, statut ='o', defaut = True,ang='Choose to track the evolution of the particle velocity'), - blocSimulatedVelocity = prepareBlocInitialisationParticle(condition = 'ToSimulate == True', termeSource=True), - blocNotSimulatedVelocity = prepareBlocOrigine(condition = 'ToSimulate == False',), - ), #fin VelocityDefinition - blocHydrodynamic = BLOC(condition = '"Hydrodynamic" in MomentumFieldType', - FluidVelocitySeenByParticles = FACT(statut ='o',ang='Activate the fluid velocity seen in the State Vector', - FluidSeenVelocity = SIMP(typ=(dynamicVariable,'createObject'), statut='o', defaut ='FluidSeenVelocity', homo='constant'), - ToSimulate = SIMP(typ=bool, statut ='o', defaut = True,ang='Choose to track the evolution of the fluid velocity seen'), - blocHydrodynamicVelocity = prepareBlocInitialisationParticle(condition = 'ToSimulate == True', termeSource=True), - #blocNotHydrodynamicVelocity = prepareBlocOrigine(condition = 'ToSimulate == False',), - ) , - ) , - ), #blocNoBrownianDynamics - ), #fin StateVector - )# fin du prepareBlocCps - -#---------------------- -def prepareParticles(): -#---------------------- - return FACT(statut='o', max='**', - ParticleNature = SIMP(statut='o', typ='TXM', ang='Choose the nature of the particle.\n Current choice includes Atom, Molecule, Dissipative Particle (for DPD), Fluid particle, Discrete Particle (e.g. solid, bubble, droplet).', - into=['Atom', 'Molecule', 'Dissipative Particle', 'Fluid Particle', 'Discrete Particle']), - blocAtomName = BLOC(condition='ParticleNature == "Atom"', - ParticleName = SIMP(statut='o', typ=(userAtom,'createObject'), ang='Define the name of the atom (to be used for CDM).' ), - InitialNumberOfParticles = SIMP(statut='o', typ='I', val_min=0,ang='Define the number of atoms initially in the system'), - ), - - blocMoleculeName = BLOC(condition='ParticleNature == "Molecule"', - ParticleName = SIMP(statut='o', typ=(userMolecule,'createObject'),ang='Define the name of the molecule (used in the CDM).'), - InitialNumberOfParticles = SIMP(statut='o', typ='I', val_min=0,ang='Define the number of molecules initially in the system'), - ), - - blocDissipativeName = BLOC(condition='ParticleNature == "Dissipative Particle"', - ParticleName = SIMP(statut='o', typ=(userDPD,'createObject'),ang='Define the name of the DPD particle (used in the CDM).'), - InitialNumberOfParticles = SIMP(statut='o', typ='I', val_min=0,ang='Define the number of DPD initially in the system'), - ), - - blocDiscreteName = BLOC(condition='ParticleNature == "Discrete Particle"', - ParticleName = SIMP(statut='o', typ=(userDiscrete,'createObject'),ang='Define the name of the discrete particle (used in the CDM).'), - InitialNumberOfParticles = SIMP(statut='o', typ='I', val_min=0,ang='Define the number of discrete particle initially in the system'), - ), - - blocAtom = BLOC(condition='ParticleNature == "Atom"', - ChemicalSpecies = SIMP(statut='o', typ='TXM',ang='Define the type of the chemical atom'), - ElectricCharge = SIMP(statut='f', typ='R',ang='Define the electric charge of the atom (in Coulomb).'), - MagneticMoment = SIMP(statut='f', typ='R',ang='Define the magnetic moment of the atom (in A.m^2)'), - Radius = SIMP(statut='f', typ='R',ang='Define the radius of the atom (in m)'), # relevant ? - # ),# Atom - ), # fin b_Atom -# --------------- Molecules ------------------ - blocMolecule = BLOC(condition='ParticleNature == "Molecule"', - Shape = SIMP(statut='o', typ='TXM', into=['Linear', 'Trigonal Planar', 'Angular', 'Tetrahedral', 'Octahedral', 'Trigonal pyramid', 'Other'],ang='Choose the shape of the molecule.\n Current choice includes Linear, Trigonal Planar, Angular, Tetrahedral, Octahedral, Trigonal Pyramid or Other.'), - ElectricCharge = SIMP(statut='f', typ='R',ang='Define the electric charge of the molecule (in Coulomb)'), - MagneticMoment = SIMP(statut='f', typ='R',ang='Define the magnetic moment of the molecule (in A.m^2)'), - Radius = SIMP(statut='f', typ='R',ang='Define the radius of the molecule (in m)'), # relevant ? - ), #fin b_Molecule -# --------------- Dissipative ------------------ - blocDissipative = BLOC(condition='ParticleNature == "Dissipative Particle"', - BondedParticles = SIMP(statut="o", typ=bool, defaut=False,ang='Define the particles that are bonded together'), - ), # b_Dissipative - -# --------------- Discrete Particle ------------------ - blocDiscrete = BLOC(condition='ParticleNature == "Discrete Particle"', - TypeOfDiscreteParticle = SIMP(statut='o', typ='TXM', into=['Solid', 'Droplets', 'Bubbles','Bio Organism'],ang='Choose the type of discrete particles.\n Current choice includes Solid particles (e.g. colloids, aerosols or dust), Droplets, Bubbles and Bio-organisms (e.g. bacteria).'), - blocTypeDPSolid = BLOC(condition ='TypeOfDiscreteParticle == "Solid"', - PrimaryOrAggregate = SIMP(statut='o', typ='TXM', into=['Primary Particle', 'Assemblage / Aggregate'], ang='Choose the type of solid particle. \n Current choice includes Primary particles (i.e. indivisible objects) and Assemblage/Aggregate (i.e. objects that can break into smaller elements).'), -# b_SolidPrimary = BLOC(condition='PrimaryOrAggregate == "Primary Particle"', -# ), - b_SolidAggregate = BLOC(condition='PrimaryOrAggregate == "Assemblage / Aggregate"', - Morphology = FACT (statut ='o', - NumberOfPrimaryParticles = SIMP(statut='o', typ='I', val_min=0, ang='Define the number of primary particles within an aggregate'), - FractalDimension = SIMP(statut='o', typ='R', val_min=1, ang='Define the fractal dimension of the aggregate'), - EquivalentRadius = SIMP(statut='o', typ='R', val_min=0, ang='Define the equivalent radius of the aggregate (in m)'), - Porosity = SIMP(statut='o', typ='R', val_min=0, ang='Define the porosity of the aggregate'), - ), - ), - ), -# --------------- Bio Organism ------------------ - blocTypeBioSolid = BLOC(condition='TypeOfDiscreteParticle == "Bio Organism"', - TypeOfOrganism = SIMP(statut='o', typ='TXM', into=['Unicellular', 'Multicellular'], ang='Choose the type of bio-organism. \n Current choice includes Unicellular (i.e. indivisible elements) or Multicellular (i.e. composed of several elements) organisms.'), - blocUnicellular = BLOC(condition ='TypeOfOrganism=="Unicellular"', - Unicellular = SIMP(statut='o', typ='TXM', into=["Bacteria"], defaut='Bacteria', ang='Choose the type of unicellular organism.\n Current choice includes Bacteria.') - ), - b_Multicellular = BLOC(condition ='TypeOfOrganism=="Multicellular"', - Multicellular = SIMP(statut='o', typ='TXM', into=["Animal","Fungus","Plant"], ang='Choose the type of multicellular organism.\n Current choice includes Animal, Fungus and Plant.') - ), - ), # b_TypeBio_Solid - -# --------------- Particule Properties ------------------ - Properties = FACT(statut ='o', ang='Define the properties of particles', - Geometry = SIMP(statut='o', typ='TXM', into=['Sphere', 'Ellipsoids', 'Other Shape'], ang='Choose the shape of particles. \n Current choice includes Sphere, Ellipsoids and Other Shapes.'), - b_geom_Sphere = BLOC(condition = 'Geometry == "Sphere"', - ReferenceParticleRadius = SIMP(statut='o', typ ='R', val_min = 0, ang='Define a reference particle radius (in m).'), - ), - Weight = FACT(statut = 'o',ang='Define the weight of particles (either through a mass or a density). ', - Consigne = SIMP(statut="o", homo="information", typ="TXM", defaut='Choose between Mass or Density'), - Mass = SIMP(statut='f', typ ='R', val_min = 0,ang='Define the mass of the particle (in kg).'), - Density = SIMP(statut='f', typ ='R', val_min = 0, ang='Define the density of the particle (in kg/m^3).'), - ), - Mechanical = SIMP(statut='o', typ='TXM', into=['Rigid', 'Flexible', 'Deformable'],ang='Choose the type of mechanical properties for particles. \n Current choice includes Rigid, Flexible and Deformable bodies.'), - b_SolidAggregate = BLOC(condition='TypeOfSolid == "Assemblage / Aggregate"', - Morphological = FACT(statut = 'o', - Consigne = SIMP(statut="o", homo="information", typ="TXM", defaut='Choose optional properties'), - FractalDimension = SIMP(statut='f', typ='R', ang='Define the number of primary particles within an aggregate'), - NumberOfPrimaryParticle = SIMP(statut ='f',typ='I', ang='Define the fractal dimension of the aggregate'), - EquivalentRadius = SIMP(statut='f', typ='R', ang='Define the equivalent radius of the aggregate (in m)'), - Porosity = SIMP(statut='f', typ='R', ang='Define the porosity of the aggregate'), - ), # Morphological - ), # b_SolidAggregate - ElectroMagnetic = FACT(statut = 'f', - ElectricCharge = SIMP(statut='o', typ='R', ang='Define the electric charge of the aggregate (in Coulomb).'), - MagneticMoment = SIMP(statut='o', typ='R', ang='Define the magnetic moment of the aggregate (in A.m^2)'), - ), - b_SolidAggregateBonded = BLOC(condition='TypeOfSolid == "Assemblage / Aggregate"', - BondedParticles = FACT( - ListOfBondedParticles = SIMP(statut='o', max='**', typ = userParticle), - ), - ), - ), # Properties - ), # b_Discrete - ) # fin Particle - -#--------------------------------- -def prepareContactPhenomena(): -#--------------------------------- - return FACT(statut='o', max= "**", - withContactPhenomena = SIMP(statut='o', typ=bool, defaut=False, ang='Activate contact forces between particles (i.e. inter-particle collision).'), - bwithContact = BLOC(condition = 'withContactPhenomena == True', - LevelOfDescription = SIMP(statut='o', typ='TXM', into=[ 'Microscopic', 'Macroscopic'], ang='Choose the level of description of contact forces between particles. \n Current choice includes Microscopic descriptions (with precise contact forces) and Macroscopic descriptions (at the continuum level).'), - bMicroscopic = BLOC(condition = 'LevelOfDescription == "Microscopic"', - DescriptionOfContact = SIMP(statut='o', typ='TXM', into=[ 'Contact distance (cutoff)', 'Adhesion theories'], ang='Choose how contact forces are described. \n Current choice includes Contact distance (i.e. force calculated with a cutoff distance) or Adhesion theories (e.g. JKR or DMT theories).'), - ), - bMacroscopic = BLOC(condition = 'LevelOfDescription == "Macroscopic"', - OutcomeOfContact = SIMP(statut='o', typ='TXM', into=[ 'Sticky collision','Elastic collision','Inelastic collision', 'Mixed collisional event'], ang='Choose the macroscopic model for inter-particle contact. \n Current choice includes Sticky collisions (i.e. particles are stuck), Elastic collisions (i.e. rebound) or Inelastic collisions (i.e. rebound without energy conservation) or Mixed collisional events.'), - ), - TreatmentOfCollisions = SIMP(statut='o', typ='TXM', into=[ 'No collision', 'Binary/multiple particle collisions', 'Collision-induced fragmentation'], fenetreIhm = 'menuDeroulant', defaut = 'No collision', ang='Choose the treatment for the inter-particle collision. \n Current choice includes No collision (i.e. particles do not see each other), Binary/Multiple collision (i.e. with two or more particles) or Collision-induced fragmentation (i.e. breakup of the particle)'), - ), #bwithActions - )#FACT - -#--------------------------------- -def prepareContactPhenomenaWall(): -#--------------------------------- - return FACT(statut='o', max= "**", - withContactPhenomena = SIMP(statut='o', typ=bool, defaut=False, ang='Activate contact forces between particle and wall (i.e. collision with a surface).'), - bwithContact = BLOC(condition = 'withContactPhenomena == True', - LevelOfDescription = SIMP(statut='o', typ='TXM', into=[ 'Microscopic', 'Macroscopic'], ang='Choose the level of description of contact forces between particles and surfaces. \n Current choice includes Microscopic descriptions (with precise contact forces) and Macroscopic descriptions (at the continuum level).'), - bMicroscopic = BLOC(condition = 'LevelOfDescription == "Microscopic"', - DescriptionOfContact = SIMP(statut='o', typ='TXM', into=[ 'Contact distance (cutoff)', 'Adhesion theories'], ang='Choose how particle-surface contact forces are described. \n Current choice includes Contact distance (i.e. force calculated with a cutoff distance) or Adhesion theories (e.g. JKR or DMT theories).'), - ), - bMacroscopic = BLOC(condition = 'LevelOfDescription == "Macroscopic"', - OutcomeOfContact = SIMP(statut='o', typ='TXM', into=[ 'Sticky collision','Elastic collision','Inelastic collision', 'Mixed collisional event'], ang='Choose the macroscopic model for particle-surface contact. \n Current choice includes Sticky collisions (i.e. particle stick/deposit on surfaces), Elastic collisions (i.e. rebound) or Inelastic collisions (i.e. rebound without energy conservation) or Mixed collisional events.'), - ), - ), #bwithActions - )#FACT - -#--------------------------------- -def prepareActionsAtDistance(): -#--------------------------------- - return FACT(statut='o', max= "**", - withActionsAtDistance = SIMP(statut='o', typ=bool, defaut=False, ang='Activate short- and long- range inter-particle forces.'), - bwithActions = BLOC(condition = 'withActionsAtDistance == True', - TypeOfActionAtDistance = SIMP(statut='o', typ='TXM', into=[ 'electro_magnetic', 'Inter-surface forces', 'Fluid-like forces','Fluid-mediated forces', 'Biological forces','Radiative Effects'], position='global',fenetreIhm='menuDeroulant', ang='Choose the type of short- or long-range inter-particle force. \n Current choice includes Electro-Magnetic forces, Inter-surface forces (e.g. van der Waals or Lennard-Jones forces), Fluid-like forces (for fluid particles only), Fluid-mediated forces (e.g. capillary forces, hydrophilic/hydrophobic, electrostatic double-layer forces), Biological forces, Radiative effects.'), - - blocElec = BLOC(condition = 'TypeOfActionAtDistance == "electro_magnetic"', - Permittivity = SIMP(statut='o', typ='R', ang='Define the particle relative permittivity'), - Magnetic = SIMP(statut='o', typ=bool, defaut=False, ang='Activate magnetic forces'), - blocMagnetic = BLOC(condition = 'Magnetic == True', - Permeability = SIMP(statut='o', typ='R', ang='Define the particle permeability (in H/m)'), - ), # bloc_magnetic - Consigne = SIMP(statut="o", homo="information", typ="TXM", defaut='Enter ElectricCharge for Particle'), - # Creation PN activation ElectricCharge - ),# fin bloc_elec - - blocInterSurface = BLOC(condition = 'TypeOfActionAtDistance == "Inter-surface forces"', - TypeInterSurfaceForce = SIMP(statut='o', typ='TXM', into = [ 'Lennard_Jones', 'Steric', 'Soft_Potential','van der Waals'], ang='Choose the type of inter-surface forces between particles. \n Current choice includes Lennard-Jones, Steric, van der Waals or Soft-potential forces.'), - blocvanderWaals = BLOC(condition = "TypeInterSurfaceForce == 'van der Waals'", - HamakerConstant = SIMP(statut='o', typ='R', val_min=0, ang='Define the Hamaker constant between bodies (in J).'), - ParticlesPairs = SIMP(statut='o', max=2, typ=userParticle, ang='Choose the pair of particles involved.\n Requires at least one particle in the Classical Particle System.'), - ), - blocLennard = BLOC(condition = "TypeInterSurfaceForce == 'Lennard_Jones'", - LennardJonesRadius = SIMP(statut='o', typ='R', val_min=0, ang='Define the Lennard-Jones cut-off radius (in m).'), - DepthOfThePotentialWell = SIMP(statut='o', typ='R', val_min=0, ang='Define the Lennard-Jones potential well (in J).'), - ParticlesPairs = SIMP(statut='o', max=2, typ=userParticle, ang='Choose the pair of particles involved.\n Requires at least one particle in the Classical Particle System.'), - ), # fin b_Lennard - - blocParamSoftPotentiel = BLOC(condition = "TypeOfActionAtDistance == 'Soft_Potentiel'", - GrootWarrenRepulsion = SIMP(statut='o', typ='R', defaut=25.0, val_min=0), - GrootWarrenCutoff = SIMP(statut='o', typ='R', defaut=1.0, val_min=0), - DragCoefficient = SIMP(statut='o', typ='R'), # les 2 valent 0 pour MD - DragForceCutoff = SIMP(statut='o', typ='R', val_min=0), - ParticlesPairs = SIMP(statut='o', max=2, typ=userParticle), - ), # b_Param_Soft_Potentiel - ), # bloc_VdW - - ) # fin bloc - ) # fin prepareActionsAtADistance - -#--------------------------------- -def prepareActionsAtDistanceForWall(): -#--------------------------------- - return FACT(statut='o', max= "**", - withActionsAtDistance = SIMP(statut='o', typ=bool, defaut=False, ang='Activate short- and long- range particle-wall forces.'), - bwithActions = BLOC(condition = 'withActionsAtDistance == True', - TypeOfActionAtDistance = SIMP(statut='o', typ='TXM', into=[ 'electro_magnetic', 'Inter-surface forces', 'Fluid-like forces','Fluid-mediated forces', 'Biological forces','Radiative Effects'], position='global',fenetreIhm='menuDeroulant', ang='Choose the type of short- or long-range particle-wall force. \n Current choice includes Electro-Magnetic forces, Inter-surface forces (e.g. van der Waals or Lennard-Jones forces), Fluid-like forces (for fluid particles only), Fluid-mediated forces (e.g. capillary forces, hydrophilic/hydrophobic, electrostatic double-layer forces), Biological forces, Radiative effects.'), - - blocElec = BLOC(condition = 'TypeOfActionAtDistance == "electro_magnetic"', - Permittivity = SIMP(statut='o', typ='R', ang='Define the particle relative permittivity'), - Magnetic = SIMP(statut='o', typ=bool, defaut=False, ang='Activate magnetic forces'), - blocMagnetic = BLOC(condition = 'Magnetic == True', - Permeability = SIMP(statut='o', typ='R', ang='Define the particle permeability (in H/m)'), - ), # bloc_magnetic - # Creation PN activation ElectricCharge - ),# fin bloc_elec - - blocInterSurface = BLOC(condition = 'TypeOfActionAtDistance == "Inter-surface forces"', - TypeInterSurfaceForce = SIMP(statut='o', typ='TXM', into = [ 'Lennard_Jones', 'Steric', 'Soft_Potential','van der Waals'], ang='Choose the type of inter-surface forces between particles and walls. \n Current choice includes Lennard-Jones, Steric, van der Waals or Soft-potential forces.'), - blocvanderWaals = BLOC(condition = "TypeInterSurfaceForce == 'van der Waals'", - HamakerConstant = SIMP(statut='o', typ='R', val_min=0, ang='Define the Hamaker constant between bodies (in J).'), - ), - blocLennard = BLOC(condition = "TypeInterSurfaceForce == 'Lennard_Jones'", - LennardJonesRadius = SIMP(statut='o', typ='R', val_min=0, ang='Define the Lennard-Jones cut-off radius (in m).'), - DepthOfThePotentialWell = SIMP(statut='o', typ='R', val_min=0, ang='Define the Lennard-Jones potential well (in J).'), - ), # fin b_Lennard - - blocParamSoftPotentiel = BLOC(condition = "TypeOfActionAtDistance == 'Soft_Potentiel'", - GrootWarrenRepulsion = SIMP(statut='o', typ='R', defaut=25.0, val_min=0), - GrootWarrenCutoff = SIMP(statut='o', typ='R', defaut=1.0, val_min=0), - DragCoefficient = SIMP(statut='o', typ='R'), # les 2 valent 0 pour MD - DragForceCutoff = SIMP(statut='o', typ='R', val_min=0), - ), # b_Param_Soft_Potentiel - ), # bloc_VdW - - blocActionChoisie = BLOC (condition = 'TypeOfActionAtDistance !=None ', - LevelOfDescriptionNearWalls= SIMP(statut='o', typ='TXM', into =('Full force-distance curve', 'Simplified treatment'),ang='CH1Stcomment\ntest\t espace'), - blocSimplifed = BLOC (condition = 'LevelOfDescriptionNearWalls == "Simplified treatment" ', - TypeOfSimplifiedTreatment =SIMP(statut='o', typ='TXM', into =('Energy-based Wall Model',) - ), - ), - ) # fin blocActionChoisie - ) # fin bloc - ) # fin prepareActionsAtADistanceForWall - -#-------------------------------------------- -def prepareBondedInteractions(fromWall=False): -#--------------------------------- - intoHorsWall=[ 'Bond stretching', 'Angle bending', 'Torsional motion', 'Frozen or collective motion',] - intoWall=[ 'Bond stretching', 'Angle bending', 'Torsional motion', 'Frozen or collective motion','Contact mechanics'] - if fromWall : - mesInto=intoWall - #monBondedParticles = SIMP(statut='o', typ='TXM', defaut='True', into=['True',]) #PNPN - monBondedParticles = SIMP(statut='o', typ=bool, defaut=1, ang='Activate bonded interactions between particles and walls.') - else : - mesInto=intoHorsWall - monBondedParticles = SIMP(statut='o', typ=bool, defaut=False, ang='Activate bonded interactions between particles.') - - return FACT(statut='o', max = "**", - BondedParticles = monBondedParticles, - blocBonded = BLOC(condition = 'BondedParticles == True', - DescribedWithTopologyFile = SIMP(statut='o', typ=bool, defaut=False, ang='Activate description with a topology file (otherwise, user-defined in the CDM).'), - blocTopologyFile = BLOC (condition = 'DescribedWithTopologyFile == True', - TopologyFile =SIMP(statut='o', typ=('Fichier', " Files (*.pdb );;All Files (*)",'Sauvegarde')), - ), - blocNoTopologyFile = BLOC (condition = 'DescribedWithTopologyFile == False', - BondedInteraction = FACT (statut ='o', max ='**', - NatureOfBondedInteraction = SIMP(statut='o', typ='TXM', into= mesInto, intoXML = intoWall,ang='Choose the nature of bonded-interactions. \n Current choice includes bond-stretching, angle bending, torsional motion and frozen/collective motion.'), - bBondStretching = BLOC ( condition = 'NatureOfBondedInteraction == "Bond stretching"', - TypeOfBondStretching = SIMP(statut='o', typ='TXM', into=[ 'Bond harmonic potential', 'FENE',],ang='Choose the type of bond stretching force. \n Current choice includes Bond harmonic potential or FENE model (Finitely-Extensible Non-linear Elastic).'), -# ------------ FENE ------------------ - blocFENE = BLOC(condition = 'TypeOfBondStretching == "FENE"', - FENEParameters = FACT(statut='o', max="**", - SpringConstant_H = SIMP(statut='o', typ='R', val_min=0, ang='Define the value of the spring constant for the FENE model.'), - LMax = SIMP(statut='o', typ='R', val_min=0, ang='Define the value of the maximal extension for the FENE model.'), - ListOfBondedParticles = SIMP(statut='o', max='**', typ = Tuple(2), validators=VerifTypeTuple(('I','I'),),ang='Define the list of bonded particles (loop on particle pairs).'), - ), # fin FENE_Parameters - ), # fin blocFENE -# ------------ Harmonic potential Parameters ------------------ - blocharmonic = BLOC(condition = 'TypeOfBondStretching == "Bond harmonic potential"', - BondHarmonicParameters = FACT(statut='o', max="**", - ListOfBondedParticles = SIMP(statut='o', max='**', typ = Tuple(2), validators=VerifTypeTuple(('I','I'),),ang='Define the list of bonded particles (loop on particle pairs).'), - ), # fin BondHarmonicParameters - ), # fin blocharmonic - ), # fin bBondStretching - #TypeOfBondedInteraction = SIMP(statut='o', typ='TXM', into=[ 'Covalent Bond Length', 'FENE', 'Covalent Bond Angle', 'Dihedral Angles', 'Improper Dihedral ou Torsonial Motion ?', 'Frozen Motion', 'Angle bending' ], defaut='NoOne'), - - #PNPN 114 - #La saisie de l'ensemble des liaisons d'un meme type peut se faire ds le meme bloc (soit ds un fichier, soit manuelle) - #Une seule valeur de distante? est a saisir pour l'ensemble - -# ------------ Covalent Bond Length ------------------ - # blocCovalentLength = BLOC(condition = 'TypeOfBondedInteraction == "Covalent Bond Length"', - # InteractionLengthParameters = FACT(statut='o', max="**", - # SpringStifness = SIMP(statut='o', typ='R', val_min=0), - # MeanBondLength = SIMP(statut='o', typ='R', val_min=0), - # ListOfBondedParticles = SIMP(statut='o', max='**', typ = Tuple(2), validators=VerifTypeTuple(('I','I'),)), - # ), # fin Interation_Length_Parameters - # ), # fin BondLengthParameters - -# ------------ Covalent Bond Angle ------------------ - # blocCovalentAngle = BLOC(condition = 'TypeOfBondedInteraction == "Covalent Bond Angle"', - # InteractionAnglesParameters = FACT(statut='o', max="**", - # ApplyToBondedParticles = SIMP(statut='o', max='**', typ='TXM'), - # SpringStifness = SIMP(statut='o', typ='R', val_min=0), - # MeanBondAngle = SIMP(statut='o', typ='R', val_min=0), - # ListOfBondedParticles = SIMP(statut='o', max='**', typ = Tuple(2), validators=VerifTypeTuple(('I','I'),)), - # ), # fin Interation_Angles_Parameters - # ), # fin bloccovalentlengthand_angle - - - -# ------------ Dihedral Angles ------------------ - # blocDihedral = BLOC(condition = 'TypeOfBondedInteraction == "Dihedral Angles"', - # DihedralAnglesQueDemandeTon = SIMP(statut='o', typ='TXM'), - # ), - -# ------------ Improper Dihedral ------------------ - # blocImproperDihedral = BLOC(condition = 'TypeOfBondedInteraction == "Improper Dihedral"', - # ImproperDihedralQueDemandeTon = SIMP(statut='o', typ='TXM'), - # ), - # blocFrozen = BLOC(condition = 'TypeOfBondedInteraction == "Frozen Motion"', - # FrozenQueDemandeTon = SIMP(statut='o', typ='TXM'), - # ), - )# fin bondedInteraction - ), # blocNoTopology - ), # blocBondedInteractop, - ) # fin Bonded_Interaction - -#--------------------------------- -def prepareBlocOrigine(condition): -#--------------------------------- - return BLOC(condition = condition, - Origin = FACT(statut ='o', - OriginType = SIMP(statut='o', into =['ByValue', 'ByFile', 'ByInteraction'], typ ='TXM', defaut='ByValue',ang='Choose the origin of the variable. \n Current choice includes by Value (user-given), by File or by Interaction (i.e. with another component).'), - blocByFile = creeBlocPourLesFichiers('OrigineType == "ByFile"', '', ListeFormats = listeFormatGenerique, FieldName='FieldName'), - blocByInteraction = BLOC(condition = 'InitialisationType == "ByInteraction"', - InteractionName = SIMP(typ=interaction,statut='o'), - Consigne = SIMP(statut="o", homo="information", typ="TXM", defaut='Create and choose suitable interaction'), - ), - blocByValue = BLOC(condition = 'OriginType == "ByValue"', - ConstantValue = SIMP (statut ='o', typ='R',ang='Define the value of the variable.'), - ), - ), - ) -#---------------------------------------- -def prepareBlocInitialisation(condition): -#---------------------------------------- - monIntoType = ['ByValue', 'ByFile', 'ByInteraction'] - return BLOC(condition = condition, - Initialisation = FACT(statut ='o', - InitialisationType = SIMP(statut='o', into = monIntoType, typ ='TXM', defaut='ByValue',ang='Choose the type of initialization of the variable. \n Current choice includes by Value (user-given).'), - blocByFile = creeBlocPourLesFichiers('InitialisationType == "ByFile"', '', ListeFormats = listeFormatGenerique, FieldName='FieldName'), - blocByInteraction = BLOC(condition = 'InitialisationType == "ByInteraction"', - InteractionName = SIMP(typ=interaction,statut='o'), - Consigne = SIMP(statut="o", homo="information", typ="TXM", defaut='Create and choose suitable interaction'), - ), - blocByValue = BLOC(condition = 'InitialisationType == "ByValue"', - Value = SIMP (statut ='o', typ='R',ang='Define the initial value of the variable.'), - ), - ), - SourceTerm = SIMP(typ=bool, statut='o', defaut=False), - blocSourceTerm = prepareTermeSource('SourceTerm==True'), - ) #blocSimulatedPressure - -#----------------------------------------------------------------- -def prepareBlocInitialisationParticle(condition, termeSource=True): -#----------------------------------------------------------------- - monIntoType = ['ByValue', 'ByFile', 'ByInteraction','Not needed' ] - #dicoTermeSource = {} - #if termeSource : - # dicoTermeSource['SourceTerm'] = SIMP(typ=bool, statut='o', defaut=False), - # dicoTermeSource['blocSourceTerm'] = prepareTermeSourceParticle('SourceTerm==True') - - if termeSource : - return BLOC(condition = condition, - Initialisation = FACT(statut ='o',ang='Define how the state variable is initialized', - InitialisationType = SIMP(statut='o', into =monIntoType, typ ='TXM', defaut='ByValue',ang='Choose the type of initialization. \n Current choice includes by Value (provided by the user), by File, by Interaction (with another component) or Not needed.'), - blocNotNeeded = BLOC(condition = 'InitialisationType != "Not needed"', - ParticleIdentifier=SIMP(statut='o', typ = userParticle,ang='Choose on which types of particles the initialization applies.\n Requires the definition of particles in the Classical Particle System.'), - ), - blocByFile = creeBlocPourLesFichiers('InitialisationType == "ByFile"', '', ListeFormats = listeFormatGenerique, FieldName='FieldName'), - blocByInteraction = BLOC(condition = 'InitialisationType == "ByInteraction"', - InteractionName = SIMP(typ=interaction,statut='o',ang='Choose the component for the interaction.\n Requires another component in the CDM.'), - Consigne = SIMP(statut="o", homo="information", typ="TXM", defaut='Create and choose suitable interaction'), - ), - blocByValue = BLOC(condition = 'InitialisationType == "ByValue"', - Value = SIMP (statut ='o', typ='R',ang='Define the initial value'), - ), - SourceTerm = SIMP(typ=bool, statut='o', defaut=False,ang='Activate a source term for the variable.'), - blocSourceTerm = prepareTermeSourceParticle('SourceTerm==True') - ), - ) # - else: - return BLOC(condition = condition, - Initialisation = FACT(statut ='o',ang='Define how the state variable is initialized', - InitialisationType = SIMP(statut='o', into =monIntoType, typ ='TXM', defaut='ByValue',ang='Choose the type of initialization. \n Current choice includes by Value (provided by the user), by File, by Interaction (with another component) or Not needed.'), - blocNotNeeded = BLOC(condition = 'InitialisationType != "Not needed"', - ParticleIdentifier=SIMP(statut='o', typ = userParticle,ang='Choose on which types of particles the initialization applies.\n Requires the definition of particles in the Classical Particle System.'), - ), - blocByFile = creeBlocPourLesFichiers('InitialisationType == "ByFile"', '', ListeFormats = listeFormatGenerique, FieldName='FieldName'), - blocByInteraction = BLOC(condition = 'InitialisationType == "ByInteraction"', - InteractionName = SIMP(typ=interaction,statut='o',ang='Choose the component for the interaction.\n Requires another component in the CDM.'), - Consigne = SIMP(statut="o", homo="information", typ="TXM", defaut='Create and choose suitable interaction'), - ), - blocByValue = BLOC(condition = 'InitialisationType == "ByValue"', - Value = SIMP (statut ='o', typ='R',ang='Define the initial value'), - ), - ), - ) # - -#--------------------------- -def prepareBlocFluideMacro(): -#--------------------------- - return BLOC(condition = 'SystemType == "Continuum system"', - ComplexFluid = SIMP(typ=bool, statut='o', defaut = False, position='global',ang='Activate the description of complex fluids (e.g. polymeric fluid, emulsions).'), - FlowNature = SIMP(typ='TXM', statut='o', into =['Laminar', 'Turbulent'], position='global',ang='Choose the nature of the flow. \n Current choice includes Laminar or Turbulent flow.'), - -# --------------------------- Density ------------- - DensityInitialisation = FACT(statut ='o',ang='Initialize the fluid density properties', - DensityValueType = SIMP(typ='TXM', statut ='o', into = ['Value', 'Field'], defaut ='Value',ang='Choose the type of initialization for the fluid density. \n Current choice includes by Value of by Field.'), - blocDensityValue = BLOC(condition = 'DensityValueType == "Value"', - Density = SIMP(typ='R', statut ='o',ang='Define the value of the initial fluid density (in kg/m^3).'), - ), - blocDensField= creeBlocPourLesFichiers('DensityValueType == "Field"', 'Density', ListeFormats=listeFormatGenerique, FieldName='DensityFieldName'), - ),# DensityInitialisation - -# --------------------------- Viscosity ------------- - ViscosityInitialisation = FACT(statut ='o',ang='Initialize the fluid viscosity properties', - ViscosityValueType = SIMP(typ='TXM', statut ='o', into = ['Value', 'Field'], defaut ='Value',ang='Choose the type of initialization for the fluid viscosity. \n Current choice includes by Value of by Field.'), - blocViscosityValue = BLOC(condition = 'ViscosityValueType == "Value"', - Viscosity = SIMP(typ='R', statut ='o',ang='Define the value of the initial fluid dynamic viscosity (in m^2/s).'), - ), - blocViscosityField = creeBlocPourLesFichiers('ViscosityValueType == "Field"', 'Viscosity', ListeFormats=listeFormatGenerique, FieldName='ViscosityFieldName'), - ), #fin ViscosityityInitialisation - -# --------------------------- Turbulent ------------- - blocFlowNatureTurbulent = BLOC(condition = ' FlowNature == "Turbulent"', - TurbulenceForFlowDynamics = prepareFactTurbulence('o',position='global',positionChoice='reCalculeEtape'), - ), #fin bloc_FlowNature_Turbulent - - DynamicalVariables = FACT(statut ='o',ang='Define the dynamical variables inherent to the component (e.g. pressure, velocity and other turbulent variables).', - VariablesSimulation = SIMP(statut='o', typ =bool, position='global',ang='Activate the simulation of dynamic variables.'), - blocVariablesSimulation = BLOC(condition = 'VariablesSimulation == False', - OriginOfDynamicalVariables = SIMP(statut='o', into =['Given', 'Interaction'], typ ='TXM', position='global'), - blocGivenOrInteraction = BLOC(condition = 'OriginOfDynamicalVariables in ["Given", "Interaction",]', - SteadyState = SIMP(typ=bool, statut ='o', defaut = True, position = 'global'), - # blocNotSteady = BLOC(condition = 'SteadyState == False', - # blocConsigne = BLOC(condition = 'SteadyState == False', - # Consigne = SIMP(statut="o", homo="information", typ="TXM", defaut='Not implemented yet. Will ask for a range of calculation steps.'), - # ), #blocNotSteady - blocSteady = BLOC(condition = 'SteadyState == True', - blocGiven = BLOC(condition = 'OriginOfDynamicalVariables == "Given"', - InSameFile = SIMP(typ=bool, statut ='o', defaut = True, position = 'reCalculeEtape'), - blocSameFile = creeBlocPourLesFichiers('InSameFile == True', 'DynamicalVariables', ('Med', 'cgns' ), None), - ), #blocGiven - ), #blocSteady - ), #blocGivenOrInteraction - ), - PressureDefinition = FACT(statut ='o',ang='Define the fluid pressure (initialization and source term)', - Pressure = SIMP(typ=(dynamicVariable,'createObject'), statut='o', defaut ='Pressure', homo='constant'), - blocSteadyState = BLOC(condition = 'SteadyState == True', - blocFluidInSame = creeBlocPourLesFichiers('InSameFile == False', 'Pressure', ('Med', 'cgns' ), None), - blocGivenPressure = BLOC(condition = 'OriginOfDynamicalVariables == "Given"', - PressureFieldName = SIMP(typ='TXM',statut='o'), - ), - blocInteractionPressure = BLOC(condition = 'OriginOfDynamicalVariables == "Interaction"', - InteractionName = SIMP(typ=interaction,statut='o'), - Consigne = SIMP(statut="o", homo="information", typ="TXM", defaut='Create and choose suitable interaction'), - ), - ), - blocSimulatedPressure = prepareBlocInitialisation(condition = 'VariablesSimulation == True'), - ), - VelocityDefinition = FACT(statut ='o',ang='Define the fluid velocity (initialization and source term)', - blocFlowNatureTurbulent = BLOC(condition = 'FlowNature == "Turbulent"', - #sousBlocFlowNatureTurbulent = BLOC(condition = 'TurbulenceModellingType != "Fully resolved (DNS)"', - AverageVelocity = SIMP(typ=(dynamicVariable,'createObject'), statut='o', defaut ='Average_Velocity', homo='constant'), - blocSteadyGivenVelocity1 = BLOC(condition = 'OriginOfDynamicalVariables == "Given" and SteadyState == True ', - AverageVelocityValue = SIMP(typ='R', statut='o' ), - ), - #), - ), - #blocFlowNatureLaminar = BLOC(condition = ' FlowNature == "Laminar" or TurbulenceModellingType == "Fully resolved (DNS)"', - blocFlowNatureLaminar = BLOC(condition = 'FlowNature == "Laminar"', - FluidVelocity = SIMP(typ=(dynamicVariable,'createObject'), statut='o', defaut ='Fluid_Velocity', homo='constant'), - blocSteady = BLOC(condition = 'SteadyState == True', - blocVelocityInSame = creeBlocPourLesFichiers('InSameFile == False', 'Velocity', ('Med', 'cgns' ), None), - blocSteadyGivenVelocity2 = BLOC(condition = 'OriginOfDynamicalVariables == "Given"', - VelocityFieldName = SIMP(typ='TXM',statut='o'), - ), - ), - ), - blocSteady = BLOC(condition = 'SteadyState == True', - blocInteractionVelocity = BLOC(condition = 'OriginOfDynamicalVariables == "Interaction"', - InteractionName = SIMP(typ=interaction,statut='o'), - Consigne = SIMP(statut="o", homo="information", typ="TXM", defaut='Create and choose suitable interaction'), - ), - ), - blocSimulatedVelocity = prepareBlocInitialisation(condition = 'VariablesSimulation == True'), - ), - BFlowNatureTurbulent = BLOC(condition ='FlowNature == "Turbulent"', - # K-epislon ou k-omega - blocTurbulenceTWMChoice1 = BLOC(condition = 'TVMChoice == "K-Epsilon" or TVMChoice == "K-Omega"', - KDefinition = FACT(statut ='o',ang='Define the fluid turbulent kinetic energy "k" (initialization and source term)', - Name = SIMP(typ=(scalar,'createObject'), statut='o', defaut ='K', homo='constant'), - blocSteady = BLOC(condition = 'SteadyState == True', - blocKInSame = creeBlocPourLesFichiers('InSameFile == False', 'K', ('Med', 'cgns' ), None), - blocKGiven = BLOC(condition = 'OriginOfDynamicalVariables == "Given"', - KFieldName = SIMP(typ='TXM',statut='o', defaut='K'), - ), - blocKInteraction = BLOC(condition = 'OriginOfDynamicalVariables == "Interaction"', - InteractionName = SIMP(typ=interaction,statut='o'), - Consigne = SIMP(statut="o", homo="information", typ="TXM", defaut='Create and choose suitable interaction'), - ), - ), - blocSimulatedKDefinition = prepareBlocInitialisation(condition = 'VariablesSimulation == True'), - ), # KDefinition - ),# fin blocTurbulenceTWMChoice1 - - # REM : L'existence des mc TVMChoice et RSMChoice est exclusive, du coup une évaluation de condition - # qui contient les deux renvoie forcément une exception, le bloc n'est alors pas evalué - # sauf si le mc de la première condition existe (ordre évaluation du or) - # blocTurbulenceTWMChoice2 = BLOC(condition = 'TVMChoice == "K-Epsilon" or RSMChoice != None', - # blocTurbulenceTWMChoice2 = BLOC(condition = '(RSMChoice != None) or (TVMChoice == "K-Epsilon")', - # blocTurbulenceTWMChoice2 = BLOC(condition = 'TVMChoice == "K-Epsilon"', - blocTurbulenceTWMChoice2 = BLOC(condition = 'RANSModel == "Reynolds Stress Model (RSM)" or TVMChoice == "K-Epsilon"', - EpsilonDefinition = FACT(statut ='o',ang='Define the fluid turbulent kinetic energy "Epsilon" (initialization and source term)', - Name = SIMP(typ=(scalar,'createObject'), statut='o', defaut ='Epsilon', homo='constant'), - blocSteady = BLOC(condition = 'SteadyState == True', - blocEpsilonInSame = creeBlocPourLesFichiers('InSameFile == False', 'Epsilon', ('Med', 'cgns' ), None), - blocEpsilonGiven = BLOC(condition = 'OriginOfDynamicalVariables == "Given"', - EpsilonFieldName = SIMP(typ='TXM',statut='o'), - ), - blocEpsilonInteraction = BLOC(condition = 'OriginOfDynamicalVariables == "Interaction"', - InteractionName = SIMP(typ=interaction,statut='o'), - Consigne = SIMP(statut="o", homo="information", typ="TXM", defaut='Create and choose suitable interaction'), - ), - ), - blocSimulatedEpsilonDefinition = prepareBlocInitialisation(condition = 'VariablesSimulation == True'), - ), #EpsilonDefinition - ), # bloc_Turbulence_TWMChoice2 - - blocTurbulenceTWMChoice3 = BLOC(condition = 'TVMChoice == "K-Omega"', - OmegaDefinition = FACT(statut ='o',ang='Define the fluid specific rate of dissipation "Omega" (initialization and source term)', - Name = SIMP(typ=(scalar,'createObject'), statut='o', defaut ='Omega', homo='constant'), - blocSteady = BLOC(condition = 'SteadyState == True', - blocOmegaInSame = creeBlocPourLesFichiers('InSameFile == False', 'Omega', ('Med', 'cgns' ), None), - blocOmegaGiven = BLOC(condition = 'OriginOfDynamicalVariables == "Given"', - OmegaFieldName = SIMP(typ='TXM',statut='o'), - ), - blocOmegaInteraction = BLOC(condition = 'OriginOfDynamicalVariables == "Interaction"', - InteractionName = SIMP(typ=interaction,statut='o'), - Consigne = SIMP(statut="o", homo="information", typ="TXM", defaut='Create and choose suitable interaction'), - ), - ), - blocSimulatedOmegaDefinition = prepareBlocInitialisation(condition = 'VariablesSimulation == True'), - ), - ), # blocTurbulenceTWMChoice3 - - # blocTurbulenceRSMChoice1 = BLOC(condition = "(RANSModel == 'Reynolds Stress Model (RSM)') and (RSMChoice !=None)", - blocTurbulenceRSMChoice1 = BLOC(condition = "RSMChoice !=None", - RijDefinition = FACT(statut ='o',ang='Define the fluid Reynolds Stresses "Rij" (initialization and source term)', - Name = SIMP(typ=(scalar,'createObject'), statut='o', defaut ='Rij', homo='constant'), - blocSteady = BLOC(condition = 'SteadyState == True', - blocRijInSame = creeBlocPourLesFichiers('InSameFile == False', 'Rij', ('Med', 'cgns' ), None), - blocRijGiven = BLOC(condition = 'OriginOfDynamicalVariables == "Given"', - RijFieldName = SIMP(typ='TXM',statut='o'), - ), - blocRijInteraction = BLOC(condition = 'OriginOfDynamicalVariables == "Interaction"', - InteractionName = SIMP(typ=interaction,statut='o'), - Consigne = SIMP(statut="o", homo="information", typ="TXM", defaut='Create and choose suitable interaction'), - ), - ), - blocSimulatedRijDefinition = prepareBlocInitialisation(condition = 'VariablesSimulation == True'), - ), - ), # blocTurbulenceRSMChoice1 - ), #BFlowNatureTurbulent - ), # DynamicalVariables - -# ---------------------- Effets thermiques - Thermal = FACT(statut ='o',ang='Define the thermal properties of the component', - ThermalEffects = SIMP(typ='TXM', statut='o', into =['Non thermal', 'Thermal'] , defaut='Thermal', position='global' ,ang='Activate thermal effects on the component.'), - blocNonThermalEffects = BLOC(condition = 'ThermalEffects == "Non thermal"', - ReferenceTemperature = SIMP(typ='R', statut='o', val_min=0, ang='Define the reference temperature (in K)',), - ), # fin bloc_NonThermal - bloc_ThermalEffects_ = BLOC(condition = 'ThermalEffects == "Thermal"', - ConductivityValueType = SIMP(typ='TXM', statut ='o', into = ['Value', 'Field'], defaut ='Value',ang='Choose the type for conductivity. \n Current choice includes by Value or by Field.'), - blocCondValue = BLOC (condition = 'ConductivityValueType == "Value"', - Conductivity = SIMP(typ='R', statut ='o',ang='Define the value of the conductivity (in kg.m^3/s^3/A^2)'), - ), - blocCondField = creeBlocPourLesFichiers('ConductivityValueType == "Field"', 'Conductivity', ListeFormats=listeFormatGenerique, FieldName='conductivityFieldName'), - #ActiveOnFlowEffect = ActiveOnFlowEffect(), - ), - ),# fin Fact Thermal - -# ---------------------- Scalaires - - blocScalarFluidTurbulentOrLaminar = BLOC(condition = "(ComplexFluid == False and FlowNature == 'Turbulent') or (ComplexFluid == False and FlowNature == 'Laminar')", - Scalars = FACT(statut = 'o',ang='Define the scalars within the component (i.e. chemical species, temperature).', - withScalars = SIMP(statut='o', typ=bool, defaut=False,ang='Activate scalar within the component.'), - blocwithScalars = BLOC(condition = 'withScalars == True', - blocFlowNatureTurbulentForScalars = BLOC(condition = ' FlowNature == "Turbulent"', - AsTurbulenceForFlowDynamics = SIMP(statut='o', typ=bool, defaut=True,ang='Choose if the dynamics of scalars is the same as the dynamics of the turbulent flow (if not, define the turbulent dynamics for scalars).'), - blocAsTFFD = BLOC(condition = "AsTurbulenceForFlowDynamics == False", - ScalarsTurbulenceModelling = prepareFactTurbulenceScalaire('o',), - ), - ), - blocThermalEffectsOn = BLOC(condition = ' ThermalEffects == "Thermal"', - TemperatureScalar = FACT(statut ='o',ang='Define scalar for temperature', - #Name = SIMP(typ=(scalar,'createObject'), statut='o', defaut ='Temperature', homo='constant', position='reCalculeEtape'), - Name = SIMP(typ=(scalar,'createObject'), statut='o', defaut ='Temperature', homo='constant'), - SourceTerm = SIMP(typ=bool, statut='o', defaut=False,ang='Activate source term for temperature scalar.'), - blocSourceTerm = prepareTermeSource('SourceTerm==True'), - TemperatureInitialisation = FACT(statut ='o', - OriginOfThermalFluxField = SIMP(statut='o', into =['Given', 'Interaction', 'to be simulated'], typ ='TXM',ang='Choose the origin of the thermal flux field. \n Current choice includes Given (by the user), by Interaction (with another component), or To be simulated (i.e. calculated by the component).'), - blocGiven = creeBlocPourLesFichiers('OriginOfThermalFluxField == "Given"', 'Temperature', ('Med', 'cgns' ), FieldName='FieldName'), - ),# fin TemperatureInitialisation - ),# TemperatureScalar - ), # fin bloc_ThermalEffects_On - Scalar = FACT(statut = 'o', max ='**',ang='Define scalar for the component', - Name = SIMP(typ=(scalar,'createObject'), statut='o',), - DiffusivityValueType = SIMP(typ='TXM', statut ='o', into = ['Value', 'Field'], defaut ='Value',ang='Choose the type for diffusivity. \n Current choice includes by Value or by Field.'), - blocDiffValue = BLOC(condition = 'DiffusivityValueType == "Value"', - Diffusivity = SIMP(typ='R', statut ='o',ang='Define the value for the diffusivity (in m^2/s).'), - ), - blocDiffField = creeBlocPourLesFichiers('DiffusivityValueType == "Field"', 'Diffusivity', ListeFormats=listeFormatGenerique, FieldName='DiffusivityFieldName'), - OriginOfScalar = SIMP(statut='o', into =['Given', 'Interaction', 'to be simulated'], typ ='TXM', defaut='to be simulated',ang='Choose the origin of the diffusivity field. \n Current choice includes Given (by the user), by Interaction (with another component), or To be simulated (i.e. calculated by the component).'), - blocSimulatedScalar = BLOC(condition = 'OriginOfScalar == "to be simulated"', - SourceTerm = SIMP(typ=bool, statut='o', defaut=False,ang='Activate source terms for scalars.'), - blocSourceTerm = prepareTermeSource('SourceTerm==True'), - Initialisation = FACT(statut ='o',ang='Define the initialization for scalars', - InitialisationOfScalar = SIMP(statut='o', into =['ValueInit', 'FileInit', 'InteractionInit'], typ ='TXM', defaut='ValueInit',ang='Choose the initialization of scalars. \n Current choice includes by Value (i.e. by the user), by File or by Interaction (i.e. with another component).'), - blocFileInit = creeBlocPourLesFichiers('InitialisationOfScalar == "FileInit"', 'ScalarInit', ListeFormats = listeFormatGenerique, FieldName='ScalarInitField'), - blocInteractionInit = BLOC(condition = 'InitialisationOfScalar == "InteractionInit"', - InteractionName = SIMP(typ=interaction,statut='o'), - Consigne = SIMP(statut="o", homo="information", typ="TXM", defaut='Create and choose suitable interaction'), - ), - blocValueInit = BLOC(condition = 'InitialisationOfScalar == "ValueInit"', - ValueInit = SIMP (statut ='o', typ='R',ang='Define the initial value of the scalar'), - ), - ), #Initialisation - ), #blocSimulatedScalar - blocInteractionScalar = BLOC(condition = 'OriginOfScalar == "Interaction"', - InteractionName = SIMP(typ=interaction,statut='o'), - Consigne = SIMP(statut="o", homo="information", typ="TXM", defaut='Create and choose suitable interaction'), - ), - blocGivenScalar = creeBlocPourLesFichiers('OriginOfScalar == "Given"', 'Scalar', ListeFormats = listeFormatGenerique, FieldName='ScalarField'), - EffectOnFlowDynamic = SIMP(typ='TXM', statut='o', into=[ 'Passive', 'Active'], defaut='Passive', ), - blocScalarActiveOnFlowDynamic = BLOC(condition = ' EffectOnFlowDynamic == "Active"', - ActiveOnFlowEffect = ActiveOnFlowEffect(), - ), - blocScalarFluidTurbulentAndNonComplexe = BLOC (condition = "FlowNature == 'Turbulent'", - ScalarFluxModel = prepareFactTurbulenceScalaire('f'), - ), # bloc_scalar_FluidTurbulentandNonComplexe - ),# Scalar - ),# blocwWithScalars - ),# Scalars - ), # fin FluidTurbulentandNonComplexe - # il faut une validation de coherence entre l existence de tous les turbulencesModelling - )# fin bloc_FluideMacro - -#----------------------------------------- -def ActiveOnFlowEffect(inTemperature=True): -#----------------------------------------- - return FACT(statut = 'o', max='**',ang='Define if the variable has an effect on the flow (e.g. Newtonian fluid).', - RelationType = SIMP(statut = 'o', into =['Equation Of State', 'Force-Flux Relation'], typ ='TXM',ang='Choose the type of relation for the effect of the variable on the flow. \n Current choice includes Equation of State (EoS) and Force-Flux relation (FFR).'), - bloc_EOS = BLOC(condition = 'RelationType == "Equation Of State"', - TypeOfEquationOfState = SIMP(statut='o', into =['variable density', 'compressible'], typ ='TXM',ang='Choose the type of Equation of State. \n Current choice includes Variable density or Compressible.'), - ), - bloc_NonEOSAndSimple=BLOC(condition = 'RelationType == "Force-Flux Relation" and ComplexFluid == False', - TypeOfForceFluxRelation = SIMP(statut='o', into =['Viscosity', 'Diffusivity', 'Thermal Conductivity'], intoXML=['Viscosity', 'Diffusivity', 'Thermal Conductivity','Shear-stress closure', 'Scalar flux'], typ ='TXM', ang='Choose the type of Force-Flux Relation. \n Current choice includes Viscosity (e.g. viscous laws), Diffusivity or Thermal Conductivity.'), - blocViscosity=BLOC(condition = 'TypeOfForceFluxRelation == "Viscosity" ', - ViscosityLaw=SIMP(typ='TXM', statut = 'o', into=['law1', 'law2']), - ), - blocDiffusivity=BLOC(condition = 'TypeOfForceFluxRelation == "Diffusivity"', - DiffusivityLaw=SIMP(typ='TXM', statut = 'o', into=['law1', 'law2']), - ), - blocConductivity=BLOC(condition = 'TypeOfForceFluxRelation == "Thermal Conductivity"', - ConductivityLaw=SIMP(typ='TXM', statut = 'o', into=['law1', 'law2']), - ), - ), -) - -#------------------------------# -def prepareBoundaryCondition(): -#------------------------------# -# on en fait 1 bloc seul pour CS and CPS -# pour pas de souci dans la projection XSD - return FACT(statut='o',max = '**', # max = nb de facette de bord - TypeOfBoundaryCondition = SIMP(statut='o', typ='TXM', into=['Inlet', 'Outlet', 'Symmetry','Periodicity', 'Wall', 'Free Surface'], ang='Pick each type of boundary condition needed.\n Current choice includes Inlet, Outlet, Symmetry, Periodicity, Wall and Free surface.'), - - blocDesigneMesh = BLOC(condition = "SystemType == 'Continuum system'", - ApplyOnGroups = SIMP(statut ='o', typ=meshGroup, max='**', homo='SansOrdreNiDoublon', ang='Choose the surface elements (groups) on which the boundary condition applies. \n Requires the definition of boundary groups in SpatialAspects.', - filtre=( '(set(MeshIdentifiers).intersection( set(self.getParentsWithId().getListeUserASSD("MeshId")) ) != set()) ', - ( ('MeshIdentifiers', 'self.etape.getChild("blocModeleNumeriqueContinuum").getChild("NumericalModel")'), ) - ), - ), - ), - blocDesigne_Shape = BLOC(condition = "SystemType == 'Classical particle system'", - #ApplyOnGroups = SIMP (statut ='o', typ=spatialRegion, max='**') - ApplyOnGroups = SIMP (statut ='o', typ=meshGroup, max='**', homo='SansOrdreNiDoublon', ang='Choose the surface elements (groups) on which the boundary condition applies. \n Requires the definition of boundary groups in SpatialAspects.', - filtre=( '(set(MeshIdentifiers).intersection( set(self.getParentsWithId().getListeUserASSD("MeshId")) ) != set()) ', - ( ('MeshIdentifiers', 'self.etape.getChild("blocModeleNumeriqueClassical").getChild("NumericalModel")'), ) - ), - ), - ), - - - blocOnStateVariable = BLOC(condition = "(TypeOfBoundaryCondition in ['Inlet', 'Symmetry','Periodicity', 'Free Surface'] and SystemType == 'Continuum system') or (SystemType == 'Classical particle system' and TypeOfBoundaryCondition not in ['Outlet','Inlet'])" , - ApplyOnStateVariable = SIMP (statut ='o', typ=stateVariable, max='**', homo='SansOrdreNiDoublon', ang='Pick each State variable on which the boundary condition applies. \n Requires the definition of State variables for the component.', - filtre=( 'etape in set(self.getEtapes()) ', (('etape', None),), ), #Il ne faut pas proposer les variables d'état des autres composants. - ), #PNPN A FAIRE : fenetreIhm='menuDeroulant' - ), - - blocPeriodique = BLOC(condition = "TypeOfBoundaryCondition == 'Periodicity'", - Direction = SIMP(statut='o', typ='TXM', into=['X','Y','Z', 'XYZ'],ang='Choose the direction for the periodic boundary condition. \n Current choice includes along X-direction, Y-direction, Z-direction or all directions (XYZ).'), - ), # b_periodique - - blocInlet1 = BLOC(condition = "TypeOfBoundaryCondition == 'Inlet' and SystemType == 'Continuum system'", - FormulationOfBoundary= SIMP(statut='o', typ='TXM', into=['Dirichlet','Neumann','Cauchy'], ang='Choose the type of inlet condition for the continuum system. \n Current choice includes Dirichlet (value of the variable at the boundary), Neumann (value of the normal derivative of the variable at the boundary) or Cauchy (values of the variable and its normal derivative at the boundary).',), - blocDirichlet = BLOC(condition = 'FormulationOfBoundary == "Dirichlet"', - regles=(AU_MOINS_UN('InletProfile','IntegratedValue','IntegratedVectorValue',), - EXCLUS ('InletProfile','IntegratedValue','IntegratedVectorValue',), ), - Consigne = SIMP(statut ="o", homo="information", typ="TXM", defaut = "Choose between InletProfile,IntegratedValue,IntegratedVectorValue "), - InletProfile = SIMP (statut ='f', typ='TXM',ang='Define the inlet profile for the variable'), - IntegratedValue = SIMP (statut='f', typ='R',ang='Define the integrated value over the inlet for the variable'), - IntegratedVectorValue = FACT(statut='f', - U = SIMP (statut ='o', typ='R',ang='Define the integrated value for the variable along the X-direction (in m/s).'), - V = SIMP (statut ='o', typ='R',ang='Define the integrated value for the variable along the Y-direction (in m/s).'), - W = SIMP (statut ='o', typ='R',ang='Define the integrated value for the variable along the Z-direction (in m/s).'), - ), - ),# fin Dirichlet - blocNeumann = BLOC(condition = 'FormulationOfBoundary == "Neumann"', - FluxFile = SIMP (statut ='o', typ=('Fichier', " ;;All Files (*)"),) - ), - blocCauchy = BLOC(condition = 'FormulationOfBoundary == "Cauchy"', - ImposedFlux = SIMP (statut ='o', typ='TXM'), - _IntegratedValue = SIMP (statut='o', typ='R'), - ), - ), # b_inlet1 - blocWall = BLOC(condition = "TypeOfBoundaryCondition == 'Wall' and SystemType == 'Continuum system'", - VelocityAtBoundary = FACT(statut='o',ang='Define the velocity at the boundary (including the slip velocity and translational motion)', - SlipVelocity = SIMP(statut='o', typ='R', defaut= 0.0,ang='Define the value of the slip velocity at the boundary (in m/s).'), - WallMotion = FACT(statut='o',ang='Define the translational motion of the wall (if necessary)', - U = SIMP (statut ='o', typ='R',ang='Define the value of the translational wall motion along the X-direction (in m/s).'), - V = SIMP (statut ='o', typ='R',ang='Define the value of the translational wall motion along the Y-direction (in m/s).'), - W = SIMP (statut ='o', typ='R',ang='Define the value of the translational wall motion along the Z-direction (in m/s).'), - ), - ), - LevelOfDescription = FACT(statut='o', - blocWallInside = BLOC(condition = "FlowNature == 'Turbulent'", ##JP+CH TODO : Choix des lois en fct du type du TurbulenceModelingType - WallFunction = SIMP(statut ='o', typ='TXM',ang='Choose the model for the turbulent wall function at the boundary. \n Current choice includes No wall function (i.e. no model as in DNS) or log-law models (1-scale, 2-scale or scalable 2-scale models).', - into=['No wall function','1-scale model (Log law)', - '2-scale model (Log law)','Scalable 2-scale model (Log law)', - ], defaut='No wall function', fenetreIhm='menuDeroulant'), - ), - ), - ), # b_Wall - - blocWall2 = BLOC(condition = "TypeOfBoundaryCondition == 'Wall' and SystemType == 'Classical particle system'", - ChoiceOfParticleWallInteraction = SIMP(statut='o', typ = wallInteractionId) - ), # b_Wall - - blocInlet2 = BLOC(condition = "TypeOfBoundaryCondition == 'Inlet' and SystemType == 'Classical particle system'", - TypeOfParticleInjected = SIMP(statut='o', typ = userParticle,ang='Pick the type of particles injected. \n Requires the definition of at least one type of particles in the Classical-Particle system.'), - NumberOfParticleInjected = SIMP(statut='o', typ = 'I', val_min = 1,ang='Define the number of particles injected.'), - InjectionEveryNTimeSteps = SIMP(statut='o', typ = 'I', val_min = 0,ang='Define the frequency of injection of particles.'), - DiameterOfParticleInjected = SIMP(statut='o', typ = 'R', val_min = 0,ang='Define the diameter of the particles injected (in m).'), - MassOfParticleInjected = SIMP(statut='o', typ = 'R', val_min = 0,ang='Define the mass of the particles injected.'), - - PositionOfParticleInjected = FACT(statut='o', - InitialisationMode = SIMP(statut='o', into =['ByValue', 'ByFile', 'ByFormula' ], typ ='TXM', defaut='ByValue',ang='Choose the way the initial particle position is defined. \n Current choice includes by Value (i.e. user given), by File or by Formula.'), - # A Rafiner - ), - blocNoBrownianDynamics = BLOC(condition = '(TypeOfConstraint != None) and not("Brownian dynamics" in TypeOfConstraint)', - ParticleVelocity = FACT(statut ='o', - InitialisationMode = SIMP(statut='o', into =['ByValue', 'ByFile', 'ByFormula' ], typ ='TXM', defaut='ByValue',ang='Choose the way the initial particle velocity is defined. \n Current choice includes by Value (i.e. user given), by File or by Formula.'), - ), #fin VelocityDefinition - blocHydrodynamic = BLOC(condition = '"Hydrodynamic" in MomentumFieldType', - FluidVelocitySeenByParticles = FACT(statut ='o', - InitialisationMode = SIMP(statut='o', into =['ByValue', 'ByFile', 'ByFormula' ], typ ='TXM', defaut='ByValue',ang='Choose the way the initial particle velocity is defined. \n Current choice includes by Value (i.e. user given), by File or by Formula.'), - ), - ), - ),# blocNoBrownianDynamics - ), # bInlet2 - - blocApplyOnParticle = BLOC(condition = "SystemType == 'Classical particle system' and TypeOfBoundaryCondition != 'Inlet'" , - ApplyOnAllsParticle = SIMP(typ=bool, statut ='o', defaut = True,ang='Precise if the field applies on all species (i.e. all types of particles defined in this Classical-Particle-System component)'), - blocSpecifyParticle = BLOC(condition = "ApplyOnAllsParticle == False" , - ApplyOnParticles = SIMP(statut ='o',max="**", typ = userParticle, homo='SansOrdreNiDoublon'), - ), - ), - - ) # Boundary_Conditions - - - -JdC = JDC_CATA ( - #PN : TODO : regles = (AU_PLUS_UN('DataTransfer_Aspects',),), - code = 'Vimmp', - # faire un validateur qui verifie que si on active reactions chimiques il faut que les masses molaires soient rentrees -) - -Component = OPER(nom='Component', sd_prod=composant, - SystemType = SIMP(typ='TXM', into=['Quantum system', 'Classical particle system', 'Continuum system'], statut='o',position='global',ang='Choose the type of system to be simulated. \n Current choice includes Quantum system, Classical-Particle system and Continuum system.'), - PhysicalDescription = FACT(statut = 'o',ang='Describe the physical system to be simulated.', - blocFluideMacro = prepareBlocFluideMacro(), - blocCPS = prepareBlocCPS(), - ), - blocModeleNumeriqueQuantum = prepareBlocSystemType('Quantum system'), - blocModeleNumeriqueClassical = prepareBlocSystemType('Classical particle system'), - blocModeleNumeriqueContinuum = prepareBlocSystemType('Continuum system'), - - # Exemple de reecriture d'un BLOC_XOR pour eviter la generation d'un type xsd double - # BCFluide = BLOC ( condition = 'SystemType == "Continuum system"', - # BoundaryConditions = FACT(statut = 'o', - # BoundaryCondition = prepareBoundaryCondition(), - # ), - # ), - # BCParticle = BLOC ( condition = 'SystemType == "Classical particle system"', - # BoundaryConditions = FACT(statut = 'o', - # BoundaryCondition = prepareBoundaryConditionParticle(), - # ), - # ), - BoundaryConditions = FACT(statut = 'o', - BoundaryCondition = prepareBoundaryCondition(), - ), -) - -Interpolator = OPER (nom= 'Interpolator',sd_prod=interpolator, - InterpolatorType=SIMP(statut='o', typ='TXM', into = list(dictInterpolatorFormat.keys()),ang='Define the type of interpolation operator.'), - blocMedCoupling= BLOC(condition="InterpolatorType == 'Med Coupling'", - TargetMeshIdentifier = SIMP(statut ='o', typ = meshIdentifier,ang='Define the target mesh. \n Requires at least one mesh defined in SpatialAspects.'), - InterpolationType = SIMP(statut ='o', typ='TXM', into=['P0P0','P0P1','P1P1','P1P0'],ang='Choose the type of interpolator used. \n Current choice includes P0P0, P0P1, P1P1 or P1P0 (i.e. the order of the interpolation used).'), - DefaultValueForUnmatchedMeshTargetEntity = SIMP(statut='o', typ ='R', defaut=-1), - ), -) -Converter = OPER (nom= 'Converter',sd_prod=converter) - -Interactions = PROC(nom='Interactions', - - IOAspects = FACT(statut='o',ang='Define the inputs/outputs for the interaction.', - #WorkingDirectory = SIMP(statut='o', typ='Repertoire', defaut='/tmp'), - FileTransfer = FACT(statut='f', max='**', - TransferId = SIMP(statut='o', typ=(fileId,'createObject'),), - monBlocFormat = creeBlocPourLesFichiers('1', '', listeFormatGenerique, FieldName=None ), - ), - MemoryTransfer = FACT(statut='f', max='**', - TransferId = SIMP(statut='o', typ=(memoryId,'createObject'),), - ), - CorbaTransfer = FACT(statut='f', max='**', - TransferId = SIMP(statut='o', typ=(corbaId,'createObject'),), - ), - ), - - Interaction = FACT(max = '**',ang='Define the type of interaction.', - InteractionName = SIMP(statut='o', typ=(interaction,'createObject'),), - From = SIMP(typ=modeleNumDuCompo, statut='o',ang='Choose the source for the interaction among existing components. \n Requires at least one component in the system.'), - To = SIMP(typ=modeleNumDuCompo, statut='o',ang='Choose the target for the interaction among existing components. \n Requires at least one component in the system.'), - # ApplyOnStateVariable = SIMP(statut ='o', typ=stateVariable), #PNPN A FAIRE : fenetreIhm='menuDeroulant' - InvolvedStateVariable = SIMP(statut ='o', typ=stateVariable,ang='Choose the State variable involved in the interaction. \n Requires at least one State Variable in the component.'), #PNPN A FAIRE : Seulement du composant d'origine From - InteractionConfiguration = FACT(statut='o',ang='Configure the type of interaction.', - - OutputId = SIMP(statut='o',typ=(transferId,),), - FieldName=SIMP(typ='TXM', statut='o'), - CouplingMode = SIMP(typ='TXM', statut='o', into =['Direct', 'DataProcessing'],ang='Choose the type of coupling. \n Current choice includes Direct (i.e. direct transfer of data) or DataProcessing (i.e. transfer of data that are processed).'), - - monBlocDataProcessing = BLOC (condition = "CouplingMode=='DataProcessing'", - DataProcessingNode = FACT(min=1, max='**', statut ='o',ang='Define the type of data-processing used in the interaction.', - Tool = SIMP(typ=mapper, statut ='o'), - OutputId = SIMP(statut='o',typ=(transferId,),), - FieldName = SIMP(typ='TXM', statut='o'), - monBlocInterpolator = BLOC (condition = "(Tool != None) and (isinstance(Tool,interpolator))", - FieldNature = SIMP(typ='TXM', statut='o', into=['ExtensiveMaximum', 'IntensiveMaximum', - 'ExtensiveConservation', 'IntensiveConservation']), #PN: DICO pour le into avec key==Tool - ), - ), - ), #fin monBlocDataProcessing - ), #fin InteractionConfiguration - ), -) - -EnvironementAspects = PROC(nom ="EnvironementAspects", - WorkflowName = SIMP(statut='o', typ='TXM', defaut='MyStudyCasename', ang='Define the name of the workflow simulated.'), #PN: -> path - WorkingDirectory = SIMP(statut='o', typ='Repertoire', defaut='/tmp', ang='Define the working directory for the simulation.'), -) - - -TemporalAspects = PROC(nom ="TemporalAspects", - Simulated_Time_Laps = FACT(statut='o', max='**', ang='Define the system temporal characteristics.', - name = SIMP(statut='o', typ=(simulatedTime,'createObject'), ang='Define the name of the temporal characteristics.',), - initialTime = SIMP(statut='o', typ='R', ang='Define the value of the initial time.'), - finalTime = SIMP(statut='o', typ='R', ang='Define the value of the final time.'), - timeDiscretization = SIMP(statut ='o', typ = 'TXM', into = ['Constant Time Step', 'Varying Time Step'], ang='Choose the temporal discretization (i.e. time step).\n Current choice includes Constant time step or Varying time step.'), - bloc_Constant = BLOC (condition = 'timeDiscretization == "Constant Time Step"', - constantTimeStep = SIMP (statut ='o', typ = 'R', ang='Define the value of the time step (in s).'), - ), - bloc_Varying = BLOC (condition = 'timeDiscretization == "Varying Time Step"', - CFLNumberCriteria = SIMP (statut ='o', typ = 'R', ang='Define the value of the CFL criteria for the time step.'), - FourierNumberCriteria = SIMP (statut ='o', typ = 'R', ang='Define the value of the Fourier criteria for the time step.'), - ), - ), -) - -# -# ----------------------------------------- -SpatialAspects = PROC(nom='SpatialAspects', -# ----------------------------------------- - regles = (AU_MOINS_UN('SystemGeometry', 'SpatialDiscretization'),), - - SystemGeometry = FACT(statut='f', max='**', ang='Define the system geometry.', - SystemGeometryName = SIMP(statut='o', typ=(systemGeometry, 'createObject'),ang='Define the name of the system geometry (used for CDM).'), - Shape = FACT(statut ='o', max='**', ang='Define the shape of the system.', - ShapeIdentifier = SIMP(statut='o', typ=(cadShape,'createObject'),max='**',), - ShapeNature = SIMP(statut='o', typ='TXM', into=['Typical Geometry', 'CAD'], ang='Choose the nature of the system shape. \n Current choice includes Typical geometry (e.g. cube, cylinder) or CAD defined.'), - - blocShape = BLOC(condition = 'ShapeNature == "Typical Geometry"', - Box = SIMP(statut='o', typ='TXM', into=['Cube', 'Sphere','Cylinder'], ang='Choose the typical geometry for the system. \n Current choice includes Cube, Sphere, Cylinder.' ), - blocCube = BLOC(condition = 'Box == "Cube"', - #Taille_Box_Englobante = SIMP(statut='o', typ='R', max=3, min =3) - # derait etre un Tuple(3) mais a faire apres la projection - #Size_Of_Bounding_Box = SIMP(statut='o', typ=Tuple(3), validators=VerifTypeTuple(('R','R','R'),),) - Size_Of_Bounding_Box = SIMP(statut='o', typ='R', max=3, min=3, ), - ), # fin blocCube - blocBoule = BLOC(condition = 'Box == "Sphere"', - Center = SIMP(statut='o', typ='R', max=3, min =3), - ),# fin b_Boule - blocCylinder = BLOC(condition = 'Box == "Cylinder"', - Heigth = SIMP(statut="o", typ='R', val_min=0.0, ang='Nanotube length [m]'), - ),# fin blocCylinder - blocBouleOuCylinder = BLOC(condition = 'Box == "Sphere" or Box == "Cylinder"', - Radius = SIMP(statut='o', typ='R', val_min=0.0, ang='radius length [m]') , - ),# fin blocBouleOuCylinder - ), # fin blocShape - blocCAO = creeBlocPourLesFichiers("Shape_Nature == 'CAD'",'Domain', ['txt','I-deas', 'Gmsh', 'top',],None), - ), # fin Shape - ),# SystemGeometry - - SpatialDiscretization = FACT(statut='f', max="**", ang='Define the spatial discretization for the system (i.e. mesh).', - MeshId = SIMP(statut='o', typ=(meshIdentifier,'createObject'), ang='Define the id of the mesh (used in the CDM)'), - MeshName = SIMP(statut='o', typ='TXM', ang='Define the name of the mesh (used in the CDM)'), - blocMeshFile = creeBlocPourLesFichiers("1 == 1",'Mesh',listeFormatGenerique,None), - GroupIdentifier = SIMP(statut='o', typ=(meshGroup,'createObject'),max='**',), - ),# SpatialDiscretization - - BoundaryConstraints = FACT(statut = 'f', ang='Define the boundary constraints for the system.', - Motion = FACT(statut='f', - MotionNature = SIMP(statut='o', typ='TXM', into=['Fixed boudary', 'Translational motion', 'Rotational motion', 'Scaling'], ang='Choose the type of motion for the boundary. \n Current choice includes Fixed boundary, Translational motion, Rotational motion and Scaling'), - - blocTranslationalMotion = BLOC(condition = 'MotionNature == "Translational motion"', - TranslationVelocity = SIMP(statut='o', typ='R', ang='Define the value of the translational velocity for the boundary.'), - boundaries = SIMP(statut='o', typ=spatialRegion,max='**', homo='SansOrdreNiDoublon' ), - ), - blocRotationalMotion = BLOC(condition = 'MotionNature == "Rotational motion"', - RotationRate = SIMP(statut='o', typ='R', ang='Define the value of the rotation rate for the boundary.'), - boundaries = SIMP(statut='o', typ=spatialRegion,max='**', homo='SansOrdreNiDoublon' ), - ), - blocFixed = BLOC(condition = 'MotionNature == "Fixed boudary"', - boundaries = SIMP(statut='o', typ=spatialRegion,max='**', homo='SansOrdreNiDoublon'), - ), - ), -#PN decrire page 28 - Mapping = FACT(statut='f', - ), - ), # Boundary_Constraints -) # fin Geometric_Domain - -#Le dictionnaire dict_condition est un dictionnaire utilisé par eficas -# pour les position='global_jdc' et position='inGetAttribut' -dict_condition={ - 'ChoiceOfApproach': ('Interactions', 'Component'), - 'Interactions' : ( 'Component'), -} - -#TEXTE_NEW_JDC = " " diff --git a/Vimmp/cata_CSAndCPS_v18.py b/Vimmp/cata_CSAndCPS_v18.py deleted file mode 100644 index ccd6d982..00000000 --- a/Vimmp/cata_CSAndCPS_v18.py +++ /dev/null @@ -1,1642 +0,0 @@ -from Accas import * -VERSION_CATALOGUE='VimmpV16' - -class composant(ASSD):pass -class mapper(ASSD):pass -class converter(mapper):pass -class interpolator(mapper):pass -class modeleNumDuCompo(UserASSD):pass -class especeChimique(UserASSD):pass -class userParticle(UserASSDMultiple) :pass -class userAtom(userParticle) :pass -class userMolecule(userParticle) :pass -class userDiscrete(userParticle) :pass -class userDPD(userParticle) :pass - -class spatialRegion(UserASSD):pass -class cadShape(spatialRegion):pass -#class meshGroup(spatialRegion,UserASSDMultiple):pass -class meshGroup(UserASSDMultiple):pass -class meshIdentifier(spatialRegion):pass -class systemGeometry(UserASSD):pass -class simulatedTime(UserASSD):pass -class constitutiveRelation(UserASSD):pass -class interaction(UserASSD):pass -class transferId(UserASSD):pass -class fileId(transferId):pass -class memoryId(transferId):pass -class corbaId(transferId):pass - -class stateVariable(UserASSDMultiple) : pass -class scalar(stateVariable):pass -class dynamicVariable(stateVariable):pass -class dynamicVariableParticle(stateVariable):pass -class wallInteractionId(UserASSD):pass - - -dictTypModNumModNum = { - ('Continuum system','Particle_based') : ('SPH' , 'Lagrangian one-fluid-particle pdf'), #TODO 'Particle_based --> Particle_based - ('Continuum system','Field_based') : ('FV' , 'FEM', 'Spectral method'), - ('Classical particle system','Particle_based') : ('MD' , 'DPD', 'SDPD','SPH','CFD_Discrete_Particle_based'), - ('Classical particle system','Field_based') : ('LBM' ,), - ('Quantum system','Particle_based') : ('Particle method',), - ('Quantum system','Field_based') : ('Wave',), -} - -dictCodeModeleNumerique = { - 'Code_Saturne' : ('Lagrangian one-fluid-particle pdf', 'FV', 'CFD_Discrete_Particle_based',), - 'Fluent' : ('FV',), - 'Culgi Package': (), - 'DEM_SD' : ('Lagrangian one-fluid-particle pdf', 'FV', 'CFD_Discrete_Particle_based',), - 'DFTB+' : ('density functional tight binding method',), - 'DL_MESO_DPD' : ('Lagrangian one-fluid-particle pdf', 'FV', 'CFD_Discrete_Particle_based',), - 'DL_MESO_LBE' : ('Lagrangian one-fluid-particle pdf', 'FV', 'CFD_Discrete_Particle_based',), - 'DL_POLY_4' : ('Lagrangian one-fluid-particle pdf', 'FV', 'CFD_Discrete_Particle_based',), - 'GROMACS' : ('MD',), - 'GROMACS_LS' : ('MD',), - 'LAMMPS' : ('Lagrangian one-fluid-particle pdf', 'FV', 'CFD_Discrete_Particle_based',), - 'NWChem' : ('Lagrangian one-fluid-particle pdf', 'FV', 'CFD_Discrete_Particle_based',), - 'OpenFOAM' : ('Lagrangian one-fluid-particle pdf', 'FV', 'CFD_Discrete_Particle_based',), - 'Quantum EXPRESSO' : ('Particle method', 'Wave',), - 'RHEO_AGGRATE' : ('Particle method', 'Wave',), - 'RHEO_DROP' : ('Particle method', 'Wave',), - 'STAR_CCM+' : ('FV', 'Particles',), - 'Code Nill' : ('Spectral method', ), -} -# Le Code Nill est ajouté en dur au Solver - -dictCodeFormat = { - 'Code_Saturne' : ('Med', 'cgns', 'msh', 'des', 'unv', ), - 'Culgi Package': ('cof',), - 'DEM_SD' : ('geo', 'ascii'), - 'DFTB+' : ('geo', 'ascii'), - 'Fluent' : ('FluentFormat', ), - 'OpenFOAM' : ('OpenFoamFormat', 'Med', ), -} - -listeFormatGenerique =['Med', 'Cgns', 'msh','geo', 'ascii' ] - -dictInterpolatorFormat = { - 'Med Coupling' : ('Med',), -} -dictConvertorFormat = { - 'Gmsh' : ('Med', 'OpenFoamFormat'), -} - -dictTermeLE = { - ('Fields','Particles') : ('Fluid_Velocity_Field', - 'Fluid_Temperature_Field', - 'Fluid_Species_Mass_Fraction_Fluid',), - ('Particles','Fields') : ('Fluid_Particle_Momentum_Exchange_Field', - 'Fluid_Particle_Thermal_Exchange_Field', - 'Lagrangian one-particle pdfFluid_Particle_Mass_Source_Field', - 'Particle_Volumetric_Concentration_Modified_Fluid_Viscosity', - 'Particle_Extra_Stress_Tensor'), - ('Particles','Particles') : ('Pas encore fait'), - ('Fields','Fields') : ('Pas encore fait'), -} - -dictCodeConvertisseur = { - ('Saturne', 'OpenFOAM') : ('gmsh', 'Saturne2CDM and CDM2OpenFoam'), - ('Saturne', 'Fluent') : ('Saturne2CDM and CDM2Fluent'), - ('Fluent', 'OpenFOAM') : ('Fluent2CDM and CDM2OpenFoam'), -} - -listeFormatGenerique =['Med', 'Cgns', 'Gmsh', ] - -#---------------------------------------- -def prepareBlocSystemType(systemType) : -#---------------------------------------- - condition = "SystemType == '" + systemType + "'" - Identifier = SIMP(statut='o', typ=(modeleNumDuCompo,'createObject'),ang='Provide a name to identify the numerical model within the CDM') - SimulatedTimeLapse = SIMP(statut ='o', typ = simulatedTime,ang='Define the timelapse to be simulated. \n Requires TemporalAspects to be defined in order to choose one.') - ChoiceOfApproach = SIMP(statut='o', typ='TXM', into=['Field_based', 'Particle_based'], position='inGetAttribut',ang='Choose the approach to be used.\n Current choice includes Field-based and Particle-based approaches.') - - dicoArgs={} - dicoComment_NumericalMethod={} - dicoComment_NumericalMethod['Field_based'] = 'Choose the type of Field-Based approach. \nCurrent choice includes Lattice-Boltzmann Method (LBM)' - dicoComment_NumericalMethod['Particle_based'] = 'Choose the type of Particle-Based approach. \nCurrent choice includes Molecular Dynamics (MD), (Smoothed) Dissipative Particle Dynamics (DPD or SDPD), Smoothed Particle Hydrodynamics (SPH), CFD particle tracking.' - - for typeMod in ('Field_based', 'Particle_based'): - conditionType = "ChoiceOfApproach == '" + typeMod + "'" - NumericalMethod = SIMP(statut='o',typ='TXM', into=dictTypModNumModNum[systemType, typeMod], - position='global', intoXML=allValueInDict(dictTypModNumModNum),ang=dicoComment_NumericalMethod[typeMod]) - dicoBloc = {} - for modeleNumerique in list(dictTypModNumModNum[systemType,typeMod]): - conditionNum = "NumericalMethod == '" + modeleNumerique + "'" - setCode = set() - for code in dictCodeModeleNumerique.keys(): - if modeleNumerique in dictCodeModeleNumerique[code]: setCode.add(code) - # print('------------- conditionType -------->',conditionType) - if setCode ==set(): setCode.add('Code Nill') - Solver = SIMP(statut='o', typ='TXM', into=list(setCode), intoXML=list(dictCodeModeleNumerique.keys()), ang='Choose the solver to be used (among the list)') - monNomBloc = 'bloc_ModelName_' + modeleNumerique.replace(' ','_') #les noms de blocs ne peuvent pas avoir de blanc ! - if setCode !=set(): dicoBloc[monNomBloc]=BLOC(condition=conditionNum, nomXML='b_ModelName',Solver=Solver) - dicoArgs['blocModelType'+typeMod] = BLOC(condition=conditionType, NumericalMethod=NumericalMethod, **dicoBloc) - - blocMeshRef = BLOC(condition = '( (ChoiceOfApproach == "Field_based") and (NumericalMethod == "FV") ) or ' - '( (ChoiceOfApproach == "Particle_based") and (NumericalMethod == "CFD_Discrete_Particle_based") )', - MeshIdentifiers = SIMP(statut ='o', max ='**', typ = meshIdentifier, ang='Choose the mesh to be used.\n Requires at least one spatial discrezisation defined in SpatialAspects.', - metAJour=(('ApplyOnGroups', - 'self.etape.getChild("BoundaryConditions").getChild("BoundaryCondition")'),), - ),) - dicoArgs['blocMeshRef'] = blocMeshRef - NumericalModel = FACT(statut='o', max= '**', Identifier=Identifier, ChoiceOfApproach=ChoiceOfApproach, ang='Define the numerical model for the component', - SimulatedTimeLapse=SimulatedTimeLapse, **dicoArgs) - return BLOC(condition=condition, nomXML='b_systemType', NumericalModel=NumericalModel) - - -#----------------------------------- -def calculCommun(key1, key2, dico): -#----------------------------------- -# retourne la liste des valeurs communes a dico[key1] et dico[key2] - monSet=set() - if not key1 in dico: return () - if not key2 in dico: return () - for val in dico[key1]: - if val in dico[key2]: - monSet.add(val) - if monSet == set() : monSet.add ('No common format') - return list(monSet) - -#------------------------- -def allValueInDict(dico): -#------------------------- -# retourne la liste de toutes les valeurs possibles dans dico - monSet=set() - for clef in dico : - for val in dico[clef] : monSet.add(val) - return monSet - -#-------------------------------------------------------------------------------------------------- -def creeBlocPourLesFichiers(laCondition, Prefixe='Empty', ListeFormats=[], FieldName=None): -#--------------------------------------------------------------------------------------------------- -# il faut reflechir pour parametrer NomDuFichier -# et le type (existing... du fichier) -# et utiliser le creeBlocPourLesFichiers - SIMPFormatFichier = SIMP(statut='o', typ = 'TXM', into = tuple(ListeFormats) + ('All',), defaut='All' ,ang='Provide the file format') - dicoDesBlocs = {} - NomDuFichier = Prefixe+'FileName' - formatName = Prefixe+'FileFormat' - dicoDesBlocs[formatName] = SIMPFormatFichier - ListeFormatsboucle = tuple(ListeFormats) + ('All',) - for formatFich in ListeFormatsboucle : - dicoArgs={} - nomBloc = 'blocFormatFichier' + str(formatFich) - typeDesFichiers = ('Fichier', formatFich + " Files (*." + formatFich + ");;All Files (*)",'Sauvegarde') - blocCondition = formatName + " == '" + formatFich + "'" - dicoArgs[NomDuFichier] = SIMP(statut='o', typ = typeDesFichiers, nomXML=NomDuFichier ,ang='Provide the file name') - dicoDesBlocs[nomBloc] = BLOC(condition = blocCondition, **dicoArgs) - if FieldName: - SIMPFieldName = SIMP(statut='o', typ = 'TXM',) - dicoDesBlocs[FieldName] = SIMPFieldName - return BLOC(condition=laCondition, **dicoDesBlocs) - -#--------------------------------------------------------------------- -def prepareBlocAmbiantMediaField(condition, nomDuFact, nomDelaContante, FactComment, FieldComment) : -#--------------------------------------------------------------------- - dicoDesBlocs = {} - dicoDuFact = {} - dicoDuFact[nomDelaContante] = SIMP(typ='TXM', statut='o', defaut = nomDelaContante, homo='constant', ang=FieldComment) - monFact = FACT ( statut ='o', ang=FactComment, - **dicoDuFact, - SteadyState = SIMP(typ=bool, statut ='o', defaut = True,ang='Precise if the ambient field is a steady state'), - blocSteadyState = BLOC(condition = 'SteadyState == True', - FieldOrigin = SIMP(statut='o', into =['File', 'Value','Interaction'], typ ='TXM',ang='Define the origin of the field.\n Current choice includes an external File, a given Value or an Interaction (with a component)'), - blocValue = BLOC(condition = 'FieldOrigin == "Value"', - ConstantValue = SIMP(statut ='o', typ='R',ang='Give the value of the field'), - ), - blocFile = creeBlocPourLesFichiers('FieldOrigin == "File"', 'Position', ('Med', 'cgns' ), ''), - blocInteraction = BLOC(condition = 'FieldOrigin == "Interaction"', - InteractionName = SIMP(typ=interaction,statut='o',ang='Choose the component in interaction.\n Requires at least another component.'), - Consigne = SIMP(statut="o", homo="information", typ="TXM", defaut='Create and choose suitable interaction'), - ), - ), - blocConsigne = BLOC(condition = 'SteadyState == False', - Consigne = SIMP(statut="o", homo="information", typ="TXM", defaut='Not implemented yet. Will ask for a range of calculation steps.'), - ), #BlocNotSteady - FieldAppliesOnAllSpecies = SIMP(statut='o', typ=bool, defaut=True,ang='Precise if the field applies on all species (i.e. all types of particles defined in this Classical-Particle-System component)'), - blocPorteEspece = BLOC(condition = 'FieldAppliesOnAllSpecies == False ', - AppliesToSpecies = SIMP(statut='o', typ=userParticle, max= '**', homo='SansOrdreNiDoublon'), # faire un typ = "espece" - ), - ) - dicoDesBlocs[nomDuFact] = monFact - return BLOC(condition=condition,**dicoDesBlocs) - -#------------------------------ -def prepareTermeSource(condition): -#------------------------------ - return BLOC (condition=condition, - OriginOfSourceTerm = SIMP(statut='o', typ='TXM',into=['Interaction', 'Chemical Reaction', 'Other Scalar'],ang='Choose the origin of the source term. \n Current choice includes Interaction (i.e. with another component), Chemical Reaction, Other Scalars'), - blocOriginOfSourceTermInteraction = BLOC(condition = 'OriginOfSourceTerm == "Interaction"', - SourceTermInteraction = SIMP(typ=interaction,statut='o'), - Consigne = SIMP(statut="o", homo="information", typ="TXM", defaut='Create and choose suitable interaction'), - ), - blocOriginOfSourceTermOtherScalar = BLOC(condition = 'OriginOfSourceTerm == "Other Scalar"', - TakenFrom = SIMP (statut ='o', typ=scalar, ), #PNPN A FAIRE : fenetreIhm='menuDeroulant' - ), - ) - -#---------------------------------------- -def prepareTermeSourceParticle(condition): -#--------------------------------------- -# les differences avec prepareTermeSource sont -# le type de TakenFrom -# le into -# il est possible de factoriser les 2 fonctions en utilisant un intoXML mais cela -# affaiblit la possibilite de controle du XSD - - return BLOC (condition=condition, - OriginOfSourceTerm = SIMP(statut='o', typ='TXM',into=['Interaction', 'Other Particle'],ang='Choose the origin of the source term. \n Current choice includes Interaction (i.e. with another component), Other Particle (i.e. with another particle within this Classical-Particle-System component).'), - blocOriginOfSourceTermInteraction = BLOC(condition = 'OriginOfSourceTerm == "Interaction"', - SourceTermInteraction = SIMP(typ=interaction,statut='o'), - Consigne = SIMP(statut="o", homo="information", typ="TXM", defaut='Create and choose suitable interaction'), - ), - blocOriginOfSourceTermOtherScalar = BLOC(condition = 'OriginOfSourceTerm == "Other Particle"', - TakenFrom = SIMP (statut ='o', typ=userParticle, ), #PNPN A FAIRE : fenetreIhm='menuDeroulant' - ), - ) - -#--------------------------------------------------------------------------------- -def prepareFactTurbulence(statut, ajout=None , position=None, positionChoice=None): -#--------------------------------------------------------------------------------- - listInto = ['Fully resolved (DNS)', 'Spatial filtering (LES)', 'One-point moment', 'One-point PDF'] - if ajout != None : listInto.append(ajout) - return FACT(statut=statut, ang='Define how turbulence is simulated.', - TurbulenceModellingType = SIMP(typ='TXM', statut='o', into =listInto, position=position ,ang='Choose the model used for turbulence.\n Current choice includes DNS (Direct Numerical Simulation), LES (Large-Eddy Simulation), One-point moment and One-point PDF'), - -# --------------- One-point moment ------------------ - blocOnePoint = BLOC(condition= "TurbulenceModellingType == 'One-point moment'", - RANSModel = SIMP(statut="o", typ="TXM", position='global', - into=['Turbulent-Viscosity Model (TVM)', 'Reynolds Stress Model (RSM)'],ang='Choose the type of One-point moment model for turbulence.\n Current choice includes Turbulent-Viscosity Model and Reynolds-Stress Model'), - blocTVM = BLOC(condition= "RANSModel == 'Turbulent-Viscosity Model (TVM)'", - TVMChoice = SIMP(typ='TXM', statut='o', into=['K-Epsilon', 'K-Omega'] , position=positionChoice, ang='Choose the type of Turbulent-Viscosity model for turbulence.\n Current choice includes K-Epsilon and K-Omega models.'), ##PN PN : parametre vs reCalculeEtape - ), # fin blocTVM - blocRSM = BLOC(condition = "RANSModel == 'Reynolds Stress Model (RSM)'", - RSMChoice = SIMP(typ='TXM', statut='o', into=['Rotta', 'LRR-IP','LRR-QI','SSG'], position=positionChoice,ang='Choose the type of Reynolds-Stress model for turbulence.\n Current choice includes Rotta, LRR-IP, LRR-IQ and SSG models.'), - ), # fin blocRSM - ), # fin bloc_one_point - -# --------------- Spatial filtering (LES) ------------------ - blocSpatialFiltering = BLOC(condition = "TurbulenceModellingType == 'Spatial filtering (LES)'", - ChoiceOfDescription = SIMP(typ='TXM', statut='o', into=['One-point filtered variables', 'Filtered Density Function (FDF)'],ang='Choose the type of LES model for turbulence.\n Current choice includes One-point filtered variables models and Filtered-Density Function (FDF) models.'), - blocOnePoint = BLOC(condition = "ChoiceOfDescription == 'One-point filtered variables'", - SubgridScaleModel = SIMP(typ='TXM', statut='o', into=['No SGS', 'Smagorinsky','Dynamical model', 'SGS Transport Equations'],ang='Choose the type of One-point filtered variables model for turbulence.\n Current choice includes No SGS (Sub-Grid Scale), Smagorinsky, Dynamical model or SGS Transport Equations.'), - ),# fin bloc_OnePoint - blocFDF = BLOC(condition = "ChoiceOfDescription == 'Filtered Density Function (FDF)'", - SubgridScaleModel = SIMP(typ='TXM', statut='o', into=['SLM model for SGS', 'Viscous SLM model for SGS'],ang='Choose the type of FDF model for turbulence.\n Current choice includes SLM model for SGS (Simple Langevin Model) and Viscous SLM model for SGS'), - ),# fin bloc_FDF - ), # fin bloc_one_spatial - -# --------------- One-point PDF ------------------ - blocOnePointPdf = BLOC(condition = "TurbulenceModellingType == 'One-point PDF'", - ChoiceOfDescription = SIMP(typ='TXM', statut='o', into=['Velocity PDF', 'Velocity frequency PDF'],ang='Choose the type of One-point PDF model for turbulence.\n Current choice includes Velocity PDF and Velocity Frequency PDF'), - blocVPdf = BLOC(condition = "ChoiceOfDescription == 'Velocity PDF'", - StochasticModel = SIMP(typ='TXM', statut='o', into=['SLM','GLM'], defaut='SLM',ang='Choose the type of Velocity PDF model for turbulence.\n Current choice includes SLM (Standard Langevin Model) and GLM (Generalized Langevin Model)'), - ), # fin blocVPdf - blocVFPdf = BLOC(condition = "ChoiceOfDescription == 'Velocity frequency PDF'", - StochasticModel = SIMP(typ='TXM', statut='o', into=['Log-normal model','Gamma model','User-defined form'], defaut='SLM',ang='Choose the type of Velocity-Frequency PDF model for turbulence.\n Current choice includes Log-normal model, Gamma model and User-defined forms.'), - ), # fin blocVFPdf - ), # fin bloc_one_point_pdf - -# --------------- Fully resolved (DNS) ------------------ - # blocNoModel = BLOC(condition = "TurbulenceModellingType == 'Fully resolved (DNS)'", - # ChoiceOfApproach = SIMP(statut='o', typ='TXM', into=['Field_based (DNS)', 'Particle_based']), - # blocField = BLOC(condition = "ChoiceOfApproach == 'Field_based (DNS)'", - # NumericalMethod = SIMP(statut='o', typ='TXM', into=['FV', 'Spectral Method'], - # intoXML=['FV', 'Spectral Method','SPH', 'Vortex Method']), - # ),# fin bloc_Field - # blocNParticle = BLOC(condition = "ChoiceOfApproach == 'Particle_based'", - # NumericalMethod = SIMP(statut='o', typ='TXM', into=['SPH', 'Vortex Method'], - # intoXML=['FV', 'Spectral Method','SPH', 'Vortex Method']), - # ),# fin bloc_N_particle - # ), # fin bloc_no_model - ) # fin du return de la fonction factTurbulence - -#-------------------------------------- -def prepareFactTurbulenceForParticule(): -#-------------------------------------- - listInto = ['Fully resolved (DNS)', 'Spatial filtering (LES)', 'One-point moment', 'One-point PDF'] - return FACT(statut='o', - NatureOfFlow = SIMP(typ='TXM', statut='o', into =['Laminar', 'Turbulent'], position='global',ang='Choose the type of flow.\n Current choice includes laminar or turbulent.'), - blocTurbulent = BLOC( condition = 'NatureOfFlow == "Turbulent"', - TurbulenceModellingType = SIMP(typ='TXM', statut='o', into =listInto, position ='global', ang='Choose the model used for the turbulent flow.\n Current choice includes DNS (Direct Numerical Simulation), LES (Large-Eddy Simulation), One-point moment and One-point PDF'), -# --------------- One-point moment ------------------ - blocOnePoint = BLOC(condition= "TurbulenceModellingType == 'One-point moment'", - RANSModel = SIMP(statut="o", typ="TXM", into=['Turbulent-Viscosity Model (TVM)', 'Reynolds Stress Model (RSM)'],ang='Choose the type of One-point moment model for the turbulent flow.\n Current choice includes Turbulent-Viscosity Model and Reynolds-Stress Model'), - ), # fin bloc_one_point - -# --------------- Spatial filtering (LES) ------------------ - blocOneSpatial = BLOC(condition = "TurbulenceModellingType == 'Spatial filtering (LES)'", - ChoiceOfDescription = SIMP(typ='TXM', statut='o', into=['One-point filtered variables', 'Filtered Density Function (FDF)'],ang='Choose the type of LES model for the turbulent flow.\n Current choice includes One-point filtered variables models and Filtered-Density Function (FDF) models.'), - ), # fin bloc_one_spatial - -# --------------- One-point PDF ------------------ - blocOnePointPdf = BLOC(condition = "TurbulenceModellingType == 'One-point PDF'", - ChoiceOfDescription = SIMP(typ='TXM', statut='o', into=['Velocity PDF', 'Velocity frequency PDF'],ang='Choose the type of One-point PDF model for the turbulent flow.\n Current choice includes Velocity PDF and Velocity Frequency PDF'), - ), # fin bloc_one_point_pdf - #TypeOfHydroDynamicForce - blocTMD = BLOC(condition ='NatureOfFlow == "Turbulent" and TypeOfHydroDynamicForce != None and "Drag" in TypeOfHydroDynamicForce', - TurbulenceModelDispersion = SIMP (statut ='o', typ='TXM', into = ['Langevin'],ang='Choose the type of model for particle turbulent dispersion.\n Current choice includes Langevin model.'), - BlocInitialisationLangevin = BLOC(condition ='TurbulenceModelDispersion == "Langevin"', - InitialisationType = SIMP(statut='o', into =['ByInteraction', 'ByFile' ], typ ='TXM', ang='Choose how the turbulent field is initialized.\n Current choice includes by Interaction (with another component) or by File.'), - blocByFile = creeBlocPourLesFichiers('OrigineType == "ByFile"', '', ListeFormats = 'all', FieldName=None), - blocByInteraction = BLOC(condition = 'InitialisationType == "ByInteraction"', - Consigne = SIMP(statut="o", homo="information", typ="TXM", defaut='Create and choose suitable interactions'), - InteractionNameForPressure = SIMP(typ=interaction,statut='o', ang='Choose the origin of the pressure field.\n Requires another continuum component.', - filtre=( '(set(("Pressure",)).intersection(set(self.getEficasAttribut("InvolvedStateVariable"))) != set())', - ()), # Pressure en dur - ), - InteractionNameForVelocity = SIMP(typ=interaction,statut='o', ang='Choose the origin of the velocity field. \n Requires another continuum component.'), - InteractionNameForEpsilon = SIMP(typ=interaction,statut='o', ang='Choose the origin of the turbulent dissipation field. \n Requires another continuum component.'), - InteractionNameForRij = SIMP(typ=interaction,statut='o', ang='Choose the origin of the Reynolds Stress field. \n Requires another continuum component.'), - ), - ), - ), - ),# fin bloc Turbulent - ) # fin du return de la fonction factTurbulence - -#-------------------------------------------------------- -def prepareFactTurbulenceScalaire(statut, position=None): -#------------------------------------------------------- - listInto = ['Fully resolved (DNS)', 'Spatial filtering (LES)', 'One-point moment', 'One-point PDF'] - return FACT(statut=statut, - TurbulenceModellingType = SIMP(typ='TXM', statut='o', into =listInto, position=position, ang='Choose the model used for the turbulent transport of the scalar.\n Current choice includes DNS (Direct Numerical Simulation), LES (Large-Eddy Simulation), One-point moment and One-point PDF'), - -# --------------- One-point moment ------------------ - blocOnePoint = BLOC(condition= "TurbulenceModellingType == 'One-point moment'", - RANSModel = SIMP(statut="o", typ="TXM", ang='Choose the type of One-point moment model for the turbulent transport of the scalar.\n Current choice includes Algebraic flux models, Turbulent diffusivity models and Scalar-flux transport equations', - into=['Algebraic flux models','Turbulent diffusivity models', 'Scalar-flux transport equations']), - # Ce bloc consigne ne passe pas dans la projection XSD - # blocAlgebraic = BLOC(condition= "RANSModel == 'Algebraic flux models'", - blocConsigne = BLOC(condition= "RANSModel == 'Algebraic flux models'", - Consigne = SIMP(statut="o", homo="information", typ="TXM", defaut='Not implemented yet'), - ), # fin blocAlgebraic - blocTDM = BLOC(condition = "RANSModel == 'Turbulent diffusivity models'", - TDMChoice = SIMP(typ='TXM', statut='o', into=['SGDH', 'GGDH',],ang='Choose the type of turbulent-diffusivity models for the scalar.\n Current choice includes SGDH (standard gradient diffusion hypothesis) and GGDH (generalized gradient diffusion hypothesis)'), - ), # fin blocTDM - blocSFTE = BLOC(condition = "RANSModel == 'Scalar-flux transport equations'", - SFTEChoice = SIMP(typ='TXM', statut='o', into=['Pressure-scrambling model', 'EB-DFM',]), - ), # fin blocSFTE - ), # fin bloc_one_point - -# --------------- Spatial filtering (LES) ------------------ - blocOneSpatial = BLOC(condition = "TurbulenceModellingType == 'Spatial filtering (LES)'", - ChoiceOfDescription = SIMP(typ='TXM', statut='o', into=['One-point filtered variables', 'Filtered Density Function (FDF)'],ang='Choose the type of LES model for the turbulent transport of the scalar.\n Current choice includes One-point filtered variables, Filtered Density Function (FDF)'), - blocOnePoint = BLOC(condition = "ChoiceOfDescription == 'One-point filtered variables'", - SubgridScaleModel = SIMP(typ='TXM', statut='o', into=['No SGS model', 'SGS diffusivity', 'Transport eqs. for SGS scalar fluxes'],ang='Choose the type of One-point filtered variables model for the turbulent transport of the scalar.\n Current choice includes No SGS (Sub-Grid Scale), Smagorinsky, Dynamical model or SGS Transport Equations.'), - ),# fin bloc_OnePoint - blocFDF = BLOC(condition = "ChoiceOfDescription == 'Filtered Density Function (FDF)'", - SubgridScaleModel = SIMP(typ='TXM', statut='o', into=['Composition FDF', 'Scalar-velocity FDF', 'Micro-mixing model'],ang='Choose the type of FDF model for the turbulent transport of the scalar.\n Current choice includes Composition FDF, Scalar-velocity FDF and Micro-mixig models'), - ),# fin bloc_FDF - ), # fin bloc_one_spatial - -# --------------- One-point PDF ------------------ - blocOnePointPdf = BLOC(condition = "TurbulenceModellingType == 'One-point PDF'", - ChoiceOfDescription = SIMP(typ='TXM', statut='o', into=['Composition PDF','Velocity PDF', 'Micro-mixing models'],ang='Choose the type of One-point PDF model for the turbulent transport of the scalar.\n Current choice includes Composition PDF, Velocity PDF and Micro-mixing models'), - # blocCPdf = BLOC(condition = "(ChoiceOfDescription == 'Composition PDF') or (ChoiceOfDescription == 'Velocity PDF')", - # blocConsigne = BLOC(condition = "(ChoiceOfDescription == 'Composition PDF') or (ChoiceOfDescription == 'Velocity PDF')", - # Consigne = SIMP(statut="o", homo="information", typ="TXM", defaut='Not implemented yet.'), - # ), # fin blocCPdf - # blocVPdf = BLOC(condition = "ChoiceOfDescription == 'Velocity PDF'", - # ), # fin blocVPdf - blocMMMPdf = BLOC(condition = "ChoiceOfDescription == 'Micro-mixing models'", - ChoiceOfModel = SIMP(typ='TXM', statut='o', into=['IEM/CIEM','Curl model','Mapping','EMST'],ang='Choose the type of Micro-mixing model for the turbulent transport of the scalar.\n Current choice includes IEM/CIEM (Interaction by exchange with the mean), Curl model, Mapping and EMST (Euclidean minimum spanning tree).'), - ), # fin blocMMMdf - ), # fin bloc_one_point_pdf - -# --------------- Fully resolved (DNS) ------------------ - # blocNoModel = BLOC(condition = "TurbulenceModellingType == 'Fully resolved (DNS)'", - # ChoiceOfApproach = SIMP(statut='o', typ='TXM', into=['Field_based (DNS)', 'Particle_based']), - # blocField = BLOC(condition = "ChoiceOfApproach == 'Field_based (DNS)'", - # NumericalMethod = SIMP(statut='o', typ='TXM', into=['FV', 'Spectral Method'], - # intoXML=['FV', 'Spectral Method','SPH', 'Vortex Method']), - # ),# fin bloc_Field - # blocNParticle = BLOC(condition = "ChoiceOfApproach == 'Particle_based'", - # NumericalMethod = SIMP(statut='o', typ='TXM', into=['SPH', 'Vortex Method'], - # intoXML=['FV', 'Spectral Method','SPH', 'Vortex Method']), - # ),# fin bloc_N_particle - # ), # fin bloc_no_model - ) # fin du return de la fonction factTurbulence - - -#-------------------- -def prepareBlocCPS(): -#-------------------- - return BLOC(condition = 'SystemType == "Classical particle system"', - Particles = prepareParticles(), - -# ----------------------------- AmbiantMediaInteraction ---------------------------------- - AmbiantMediaInteraction = FACT(statut='o', ang='Define particle-ambient media interactions (when necessary)', - MomentumExchange = FACT(statut='o', - withMomentumExchange = SIMP(statut='o', typ=bool, defaut=False,ang='Activate if the ambient media interacts with particles via momentum exchange'), - blocMomentum = BLOC(condition = 'withMomentumExchange == True', - MomentumFieldType = SIMP(statut='o', typ='TXM', into=['Gravitational','Electric','Magnetic', 'Hydrodynamic'], max='**', homo='SansOrdreNiDoublon',position='reCalculeEtape'), - blocElectric = prepareBlocAmbiantMediaField('MomentumFieldType != None and "Electric" in MomentumFieldType', 'DefineElectricForce', 'E','Provide information on the ambient electric field','Define the value of the electric field') , - blocMagnetic = prepareBlocAmbiantMediaField('MomentumFieldType != None and "Magnetic" in MomentumFieldType', 'DefineMagneticForce', 'B','Provide information on the ambient magnetic field','Define the value of the magnetic field') , - blocGravite = BLOC(condition = 'MomentumFieldType != None and "Gravitational" in MomentumFieldType', - DefineGravityForce = FACT (statut='o', - InitialisationType = SIMP(statut='o', into =['ByValue', 'ByFile' ], typ ='TXM', defaut='ByValue',ang='Choose how the gravity field is initialized'), - blocInitValue= BLOC(condition = 'InitialisationType == "ByValue"', - G = SIMP(statut='o', typ='R', defaut=9.81,ang='Value of the gravitational acceleration (in m/s^2)'), - Direction = FACT (statut ='o', - GX = SIMP(statut='o', typ='R', ), - GY = SIMP(statut='o', typ='R', ), - GZ = SIMP(statut='o', typ='R', ), - ), - ), # fin blocInitValue - #PN : a completer pour fichier - FieldAppliesOnAllSpecies = SIMP(statut='o', typ=bool, defaut=True,ang='Precise if the field applies on all species (i.e. all types of particles defined in this Classical-Particle-System component)'), - blocPorteEspece = BLOC(condition = 'FieldAppliesOnAllSpecies == False ', - AppliesToSpecies = SIMP(statut='o', typ=userParticle, max= '**', homo='SansOrdreNiDoublon'), # faire un typ = "espece" - ), - ), # Fact Gravite - ), # bloc Gravite - blocHydro = BLOC(condition = 'MomentumFieldType != None and "Hydrodynamic" in MomentumFieldType', - DefineForceOnParticle = FACT (statut='o', ang='Define how the ambient media acts on the particle', - TypeOfHydroDynamicForce = SIMP(statut='o', max='**', typ='TXM', into=['Drag', 'Lift', 'Fluid Pressure Gradient', 'ThermoPhoresis', 'Brownian Motion'], homo='SansOrdreNiDoublon', position='global',ang='Choose the type of hydrodynamic force acting on a particle. \n Current choice includes Drag force, Lift force, Fluid Pressure Gradient, Thermophoresis and Brownian motion.'), - - FieldAppliesOnAllSpecies = SIMP(statut='o', typ=bool, defaut=True,ang='Precise if the field applies on all species (i.e. all types of particles defined in this Classical-Particle-System component)'), - blocPorteEspece = BLOC(condition = 'FieldAppliesOnAllSpecies == False ', - AppliesToSpecies = SIMP(statut='o', typ=userParticle, max= '**', homo='SansOrdreNiDoublon'), # faire un typ = "espece" - ), - NatureOfFluidFlow = prepareFactTurbulenceForParticule() - ), - ), - ), # fin blocMomentum - ), # fin MomentumExchange - MassExchange = FACT(statut='o', - withMassExchange = SIMP(statut='o', typ=bool, defaut=False,ang='Activate if the ambient media interacts with particles via mass exchange',), - blocMassExchange = BLOC(condition = 'withMassExchange == True', - MassExchangeFieldType = SIMP(statut='o', typ='TXM', into=['Evaporation','Condensation','Precipitation'], max='**', homo='SansOrdreNiDoublon',ang='Choose the type of mass exchange interaction with the particle. \n Current choice includes Evaporation, Condensation and Precipitation.'), - ), # fin blocMassExchange - ), # fin MassExchange - EnergyExchange = FACT(statut='o', - withEnergyExchange = SIMP(statut='o', typ=bool, defaut=False,ang='Activate if the ambient media interacts with particles via energy exchange'), - blocEnergyExchange = BLOC(condition = 'withEnergyExchange == True', - EnergyExchangeFieldType = SIMP(statut='o', typ='TXM', into=['HeatTransfer','Radiation','Combustion'], max='**', homo='SansOrdreNiDoublon',ang='Choose the type of energy exchange interaction with the particle. \n Current choice includes Heat Transfer, Radiation and Combustion.'), - ), # fin blocMassExchange - ), # fin EnergyExchange - AmbientInducedProcesses = FACT(statut='o', - withAmbientInducedProcesses = SIMP(statut='o', typ=bool, defaut=False,ang='Activate if the ambient media interacts with particles via specific induced processes'), - blocAmbientInducedProcesses = BLOC(condition = 'withAmbientInducedProcesses == True', - AmbientInducedProcessesType= SIMP(statut='o', typ='TXM', into=['Fragmentation',], max='**', homo='SansOrdreNiDoublon',ang='Choose the type of ambient induced processes acting on the particle. \n Current choice include Fragmentation.'), - bAmbientInducedProcessesType = BLOC(condition = '(AmbientInducedProcessesType != None) and ("Fragmentation" in AmbientInducedProcessesType)', - #PN : pb dans les locaux et l operateur in - LevelOfDescription= SIMP(statut='o', typ='TXM', into=['Fully-resolved','Mean-field approaches'],ang='Choose the level of description for the fragmentation of particles. \n Current choice includes Fully-resolved approaches (direct simulations of aggregates fragmentation) and Mean-field approaches (Population Balance Equation)'), - bMeanField = BLOC(condition = "LevelOfDescription == 'Mean-field approaches'", - FragmentationRate = SIMP(statut='o', typ='R',ang='Define the fragmentation rate (for PBE models)'), - DaughterSizeDistribution = SIMP(statut='o', typ='R',ang='Define the daughter size distribution (for PBE models)'), - ), - ), - ), # fin AmbientInducedProcesses - ), # fin EnergyExchange - AdditionalSamplingOfAmbientMedia = FACT(statut='o', - withAdditionalSamplingOfAmbientMedia = SIMP(statut='o', typ=bool, defaut=False,ang='Activate if additional sampling of the ambient media by particles'), - blocAdditionalSamplingOfAmbientMedia = BLOC(condition = 'withAdditionalSamplingOfAmbientMedia == True', - FluidProperties = FACT(statut='o', - VelocityGradient = SIMP(statut='o', typ = bool, defaut=False,ang='Activate sampling of the velocity gradient along particle trajectories'), - PressureGradient = SIMP(statut='o', typ = bool, defaut=False,ang='Activate sampling of the pressure gradient along particle trajectories'), - ), - ), # fin blocblocAdditionalSamplingOfAmbientMedia - ), # fin AdditionalSamplingOfAmbientMedia - ), # fin AmbiantMediaInteraction - - ParticleParticleInteraction = FACT(statut='o', max = "**",ang='Define particle-particle interactions (when necessary)', - # -------------------------------------------------------# - BondedInteractions = prepareBondedInteractions(), - ActionsAtDistance = prepareActionsAtDistance(), - ContactPhenomena = prepareContactPhenomena(), - ), # fin ParticleParticleInteraction - - ParticleWallInteraction = FACT(statut='o', max = "**",ang='Define particle-wall interactions (when necessary)', - withParticleWallInteraction = SIMP(statut='o', typ =bool, defaut=False,ang='Activate particle-wall interactions'), - bwithParticleWallInteraction = BLOC (condition = 'withParticleWallInteraction == True', - ParticleWallInteractionId= SIMP(typ=(wallInteractionId,'createObject'), statut='o',ang='Define a name for the type of particle-wall interaction (to be used within the CDM)'), - TypeOfWall = FACT(statut='o', - Dynamics = SIMP(statut='o', typ='TXM', into = ('Fixed position','Moving wall'),ang='Choose the type of wall dynamics.\n Current choice includes a Fixed wall and a Moving wall.'), - LevelOfDescription = SIMP(statut='o', typ='TXM', into = ('Discretized particles','Continuum'),ang='Choose the level of description of the wall.\n Current choice includes Discretized particles (i.e. microscopic description) and Continuum level (i.e. macroscopic description).'), - bContinuum = BLOC(condition = 'LevelOfDescription == "Continuum"', - SurfaceTexture = SIMP(statut='o', typ='TXM', into = ('Smooth','Rough'),ang='Choose the type of surface texture.\n Current choice includes a Smooth or a Rough wall.'), - ), - bDiscretized = BLOC(condition = 'LevelOfDescription == "Discretized particles"', - BondedInteractions = prepareBondedInteractions(True), - ), - ), - ActionsAtDistance = prepareActionsAtDistanceForWall(), - ContactPhenomena = prepareContactPhenomenaWall(), - ), - ),# fin ParticleWallInteraction - - ConstraintsAndReducedStatisticalDescription = FACT(statut='o', - Constraint= FACT(statut='o', - TypeOfConstraint = SIMP( typ='TXM', statut='o', into=['Quasi static methods','Brownian dynamics','Presumed transport','Time marching equilibrium','Time marching non equilibrium'],defaut=['Time marching non equilibrium',], max ='**', position='reCalculeEtape', homo='SansOrdreNiDoublon',ang='Choose the type of constraints on the classical particle system.\n Current choice includes Quasi-static methods (e.g. Geometric optimisation or Monte-Carlo equilibrium), Brownian Dynamics (overdamped limit), Presumed Transport (i.e. particle motion are known), Time-marching equilibrium (e.g. canonical distribution) and Time-marching non-equilibrium (e.g. unsteady particle-tracking in time).'), - ), - ), - -# transparents 163 et 164 -# si brownian Diameter mass et position -# Presumed transport -# No particle transport --> -# givencenter-of-mass transport __> position sera presente mais given transport - - StateVector = FACT(statut ='o',ang='Define the state vector for the particle (i.e. the variables attached to the particles).', - ParticleDiameter = FACT(statut ='o',ang='Activate the particle diameter in the State Vector', - Diameter = SIMP(typ=(dynamicVariable,'createObject'), statut='o', defaut ='Diameter', homo='constant'), - ToSimulate = SIMP(typ=bool, statut ='o', defaut = True,ang='Choose to track the evolution of the particle diameter'), - blocSimulatedDiameter = prepareBlocInitialisationParticle(condition = 'ToSimulate == True', termeSource=True), - ), - ParticleMass = FACT(statut ='o',ang='Activate the particle mass in the State Vector', - Mass = SIMP(typ=(dynamicVariable,'createObject'), statut='o', defaut ='Mass', homo='constant'), - ToSimulate = SIMP(typ=bool, statut ='o', defaut = True,ang='Choose to track the evolution of the particle mass'), - blocSimulatedMass = prepareBlocInitialisationParticle(condition = 'ToSimulate == True', termeSource=True), - ), - blocNonAggreateDescription = BLOC(condition = 'ParticleNature != "Discrete Particle" or (ParticleNature == "Discrete Particle" and TypeOfDiscreteParticle != "Solid") or (ParticleNature == "Discrete Particle" and TypeOfDiscreteParticle == "Solid" and PrimaryOrAggregate != "Assemblage / Aggregate")' , - ParticlePosition = FACT(statut ='o',ang='Activate the particle position in the State Vector', - Position = SIMP(typ=(dynamicVariable,'createObject'), statut='o', defaut ='Position', homo='constant'), - ToSimulate = SIMP(typ=bool, statut ='o', defaut = True,ang='Choose to track the evolution of the particle position'), - blocSimulatedPosition = prepareBlocInitialisationParticle(condition = 'ToSimulate == True', termeSource=False), - blocNoSimulatedPosition = prepareBlocOrigine(condition = 'ToSimulate == False') - ), - blocNoBrownianDynamics = BLOC(condition = '(TypeOfConstraint != None) and not("Brownian dynamics" in TypeOfConstraint)', - ParticleVelocity = FACT(statut ='o',ang='Activate the particle velocity in the State Vector', - Velocity = SIMP(typ=(dynamicVariable,'createObject'), statut='o', defaut ='Velocity', homo='constant'), - ToSimulate = SIMP(typ=bool, statut ='o', defaut = True,ang='Choose to track the evolution of the particle velocity'), - blocSimulatedVelocity = prepareBlocInitialisationParticle(condition = 'ToSimulate == True', termeSource=True), - blocNotSimulatedVelocity = prepareBlocOrigine(condition = 'ToSimulate == False',), - ), #fin VelocityDefinition - #blocHydrodynamic = BLOC(condition = '"Hydrodynamic" in MomentumFieldType and TurbulenceModellingType !="Fully resolved (DNS)"', - # FluidVelocitySeenByParticles = FACT(statut ='o',ang='Activate the fluid velocity seen in the State Vector', - # FluidSeenVelocity = SIMP(typ=(dynamicVariable,'createObject'), statut='o', defaut ='FluidSeenVelocity', homo='constant'), - # ToSimulate = SIMP(typ=bool, statut ='o', defaut = True,ang='Choose to track the evolution of the fluid velocity seen'), - # blocHydrodynamicVelocity = prepareBlocInitialisationParticle(condition = 'ToSimulate == True', termeSource=True), - #) , - #) , - ), #blocNoBrownianDynamics - ),# blocNotAgregateDescription - blocCoarseGrainedAgregateDescription = BLOC(condition = ' AgregateDescription == "Coarse Grained"', - AggregatePosition = FACT(statut ='o',ang='Activate the particle position in the State Vector', - Position = SIMP(typ=(dynamicVariable,'createObject'), statut='o', defaut ='Position', homo='constant'), - ToSimulate = SIMP(typ=bool, statut ='o', defaut = True,ang='Choose to track the evolution of the particle position'), - blocSimulatedPosition = prepareBlocInitialisationParticle(condition = 'ToSimulate == True', termeSource=False), - blocNoSimulatedPosition = prepareBlocOrigine(condition = 'ToSimulate == False') - ), - blocNoBrownianDynamics = BLOC(condition = '(TypeOfConstraint != None) and not("Brownian dynamics" in TypeOfConstraint)', - AggregateVelocity = FACT(statut ='o',ang='Activate the particle velocity in the State Vector', - Velocity = SIMP(typ=(dynamicVariable,'createObject'), statut='o', defaut ='Velocity', homo='constant'), - ToSimulate = SIMP(typ=bool, statut ='o', defaut = True,ang='Choose to track the evolution of the particle velocity'), - blocSimulatedVelocity = prepareBlocInitialisationParticle(condition = 'ToSimulate == True', termeSource=True), - blocNotSimulatedVelocity = prepareBlocOrigine(condition = 'ToSimulate == False',), - ), #fin VelocityDefinition - #blocHydrodynamic = BLOC(condition = '"Hydrodynamic" in MomentumFieldType and TurbulenceModellingType !="Fully resolved (DNS)"', - # FluidVelocitySeenByParticles = FACT(statut ='o',ang='Activate the fluid velocity seen in the State Vector', - # FluidSeenVelocity = SIMP(typ=(dynamicVariable,'createObject'), statut='o', defaut ='FluidSeenVelocity', homo='constant'), - # ToSimulate = SIMP(typ=bool, statut ='o', defaut = True,ang='Choose to track the evolution of the fluid velocity seen'), - # blocHydrodynamicVelocity = prepareBlocInitialisationParticle(condition = 'ToSimulate == True', termeSource=True), - # ) , - #) , - ), #blocNoBrownianDynamics - Morphologie = FACT(statut ='o',ang='Activate the particle velocity in the State Vector', - AggregateMorphology = SIMP(typ=(dynamicVariable,'createObject'), statut='o', defaut ='Velocity', homo='constant'), - ToSimulate = SIMP(typ=bool, statut ='o', defaut = True,ang='Choose to track the evolution of the particle velocity'), - blocSimulatedVelocity = prepareBlocInitialisationParticle(condition = 'ToSimulate == True', termeSource=True), - blocNotSimulatedVelocity = prepareBlocOrigine(condition = 'ToSimulate == False',), - ) , - ),# blocCOarseAgregateDescription - blocFineGrainedAgregateDescription = BLOC(condition = 'AgregateDescription == "Fine Grained"', - PrimaryParticlePosition = FACT(statut ='o',ang='Activate the particle position in the State Vector', - Position = SIMP(typ=(dynamicVariable,'createObject'), statut='o', defaut ='Position', homo='constant'), - ToSimulate = SIMP(typ=bool, statut ='o', defaut = True,ang='Choose to track the evolution of the particle position'), - blocSimulatedPosition = prepareBlocInitialisationParticle(condition = 'ToSimulate == True', termeSource=False), - blocNoSimulatedPosition = prepareBlocOrigine(condition = 'ToSimulate == False') - ), - blocNoBrownianDynamics = BLOC(condition = '(TypeOfConstraint != None) and not("Brownian dynamics" in TypeOfConstraint)', - PrimaryParticleVelocity = FACT(statut ='o',ang='Activate the particle velocity in the State Vector', - Velocity = SIMP(typ=(dynamicVariable,'createObject'), statut='o', defaut ='Velocity', homo='constant'), - ToSimulate = SIMP(typ=bool, statut ='o', defaut = True,ang='Choose to track the evolution of the particle velocity'), - blocSimulatedVelocity = prepareBlocInitialisationParticle(condition = 'ToSimulate == True', termeSource=True), - blocNotSimulatedVelocity = prepareBlocOrigine(condition = 'ToSimulate == False',), - ), #fin VelocityDefinition - #blocHydrodynamic = BLOC(condition = '"Hydrodynamic" in MomentumFieldType and TurbulenceModellingType !="Fully resolved (DNS)"', - # FluidVelocitySeenByParticles = FACT(statut ='o',ang='Activate the fluid velocity seen in the State Vector', - # FluidSeenVelocity = SIMP(typ=(dynamicVariable,'createObject'), statut='o', defaut ='FluidSeenVelocity', homo='constant'), - # ToSimulate = SIMP(typ=bool, statut ='o', defaut = True,ang='Choose to track the evolution of the fluid velocity seen'), - # blocHydrodynamicVelocity = prepareBlocInitialisationParticle(condition = 'ToSimulate == True', termeSource=True), - # ) , - # ) , - ), #blocNoBrownianDynamics - PrimaryParticleConnectivity = FACT(statut ='o',ang='Activate the particle velocity in the State Vector', - ParticleConnectivity = SIMP(typ=(dynamicVariable,'createObject'), statut='o', defaut ='Velocity', homo='constant'), - ToSimulate = SIMP(typ=bool, statut ='o', defaut = True,ang='Choose to track the evolution of the particle velocity'), - blocSimulatedVelocity = prepareBlocInitialisationParticle(condition = 'ToSimulate == True', termeSource=True), - blocNotSimulatedVelocity = prepareBlocOrigine(condition = 'ToSimulate == False',), - ) , - ),# blocNotAgregateDescription - # hydro - blocHydroCondition1erNiveau = BLOC(condition = '( ParticleNature != "Discrete Particle" '\ - ' or (ParticleNature == "Discrete Particle" and TypeOfDiscreteParticle != "Solid")'\ - ' or (ParticleNature == "Discrete Particle" and TypeOfDiscreteParticle == "Solid" and PrimaryOrAggregate != "Assemblage / Aggregate"))'\ - 'or (AgregateDescription == "Coarse Grained") or (AgregateDescription == "Fine Grained")', - blocNoBrownianDynamics2 = BLOC(condition = '(TypeOfConstraint != None) and not("Brownian dynamics" in TypeOfConstraint)', - blocHydrodynamic = BLOC(condition = '"Hydrodynamic" in MomentumFieldType and TurbulenceModellingType !="Fully resolved (DNS)"', - FluidVelocitySeenByParticles = FACT(statut ='o',ang='Activate the fluid velocity seen in the State Vector', - FluidSeenVelocity = SIMP(typ=(dynamicVariable,'createObject'), statut='o', defaut ='FluidSeenVelocity', homo='constant'), - ToSimulate = SIMP(typ=bool, statut ='o', defaut = True,ang='Choose to track the evolution of the fluid velocity seen'), - blocHydrodynamicVelocity = prepareBlocInitialisationParticle(condition = 'ToSimulate == True', termeSource=True), - ) , - ) , - ), - ), - ), #fin StateVector - )# fin du prepareBlocCps - -#---------------------- -def prepareParticles(): -#---------------------- - return FACT(statut='o', max='**', - ParticleNature = SIMP(statut='o', typ='TXM', position = 'reCalculeEtape', ang='Choose the nature of the particle.\n Current choice includes Atom, Molecule, Dissipative Particle (for DPD), Fluid particle, Discrete Particle (e.g. solid, bubble, droplet).', - into=['Atom', 'Molecule', 'Dissipative Particle', 'Fluid Particle', 'Discrete Particle']), - blocAtomName = BLOC(condition='ParticleNature == "Atom"', - ParticleName = SIMP(statut='o', typ=(userAtom,'createObject'), ang='Define the name of the atom (to be used for CDM).' ), - InitialNumberOfParticles = SIMP(statut='o', typ='I', val_min=0,ang='Define the number of atoms initially in the system'), - ), - - blocMoleculeName = BLOC(condition='ParticleNature == "Molecule"', - ParticleName = SIMP(statut='o', typ=(userMolecule,'createObject'),ang='Define the name of the molecule (used in the CDM).'), - InitialNumberOfParticles = SIMP(statut='o', typ='I', val_min=0,ang='Define the number of molecules initially in the system'), - ), - - blocDissipativeName = BLOC(condition='ParticleNature == "Dissipative Particle"', - ParticleName = SIMP(statut='o', typ=(userDPD,'createObject'),ang='Define the name of the DPD particle (used in the CDM).'), - InitialNumberOfParticles = SIMP(statut='o', typ='I', val_min=0,ang='Define the number of DPD initially in the system'), - ), - - blocDiscreteName = BLOC(condition='ParticleNature == "Discrete Particle"', - ParticleName = SIMP(statut='o', typ=(userDiscrete,'createObject'),ang='Define the name of the discrete particle (used in the CDM).'), - InitialNumberOfParticles = SIMP(statut='o', typ='I', val_min=0,ang='Define the number of discrete particle initially in the system'), - ), - - blocAtom = BLOC(condition='ParticleNature == "Atom"', - ChemicalSpecies = SIMP(statut='o', typ='TXM',ang='Define the type of the chemical atom'), - ElectricCharge = SIMP(statut='f', typ='R',ang='Define the electric charge of the atom (in Coulomb).'), - MagneticMoment = SIMP(statut='f', typ='R',ang='Define the magnetic moment of the atom (in A.m^2)'), - Radius = SIMP(statut='f', typ='R',ang='Define the radius of the atom (in m)'), # relevant ? - # ),# Atom - ), # fin b_Atom -# --------------- Molecules ------------------ - blocMolecule = BLOC(condition='ParticleNature == "Molecule"', - Shape = SIMP(statut='o', typ='TXM', into=['Linear', 'Trigonal Planar', 'Angular', 'Tetrahedral', 'Octahedral', 'Trigonal pyramid', 'Other'],ang='Choose the shape of the molecule.\n Current choice includes Linear, Trigonal Planar, Angular, Tetrahedral, Octahedral, Trigonal Pyramid or Other.'), - ElectricCharge = SIMP(statut='f', typ='R',ang='Define the electric charge of the molecule (in Coulomb)'), - MagneticMoment = SIMP(statut='f', typ='R',ang='Define the magnetic moment of the molecule (in A.m^2)'), - Radius = SIMP(statut='f', typ='R',ang='Define the radius of the molecule (in m)'), # relevant ? - ), #fin b_Molecule -# --------------- Dissipative ------------------ - blocDissipative = BLOC(condition='ParticleNature == "Dissipative Particle"', - BondedParticles = SIMP(statut="o", typ=bool, defaut=False,ang='Define the particles that are bonded together'), - ), # b_Dissipative - -# --------------- Discrete Particle ------------------ - blocDiscrete = BLOC(condition='ParticleNature == "Discrete Particle"', - TypeOfDiscreteParticle = SIMP(statut='o', typ='TXM', position = 'reCalculeEtape', into=['Solid', 'Droplets', 'Bubbles','Bio Organism'],ang='Choose the type of discrete particles.\n Current choice includes Solid particles (e.g. colloids, aerosols or dust), Droplets, Bubbles and Bio-organisms (e.g. bacteria).'), - blocTypeDPSolid = BLOC(condition ='TypeOfDiscreteParticle == "Solid"', - PrimaryOrAggregate = SIMP(statut='o', position='reCalculeEtape', typ='TXM', into=['Primary Particle', 'Assemblage / Aggregate'], ang='Choose the type of solid particle. \n Current choice includes Primary particles (i.e. indivisible objects) and Assemblage/Aggregate (i.e. objects that can break into smaller elements).'), - b_SolidAggregate = BLOC(condition='PrimaryOrAggregate == "Assemblage / Aggregate"', - AgregateDescription = SIMP(statut='o', typ='TXM', into=['Coarse Grained', 'Fine Grained'], position = 'reCalculeEtape'), - blocAgregateFineGrainedDescription = BLOC(condition='AgregateDescription == "Fine Grained"', - ParticulePrimaryProperties = FACT (statut ='o', - Geometry = SIMP(statut='o', typ='TXM', into=['Sphere', 'Ellipsoids', 'Other Shape'], ang='Choose the shape of particles. \n Current choice includes Sphere, Ellipsoids and Other Shapes.'), - b_geom_Sphere = BLOC(condition = 'Geometry == "Sphere"', - ReferenceParticleRadius = SIMP(statut='o', typ ='R', val_min = 0, ang='Define a reference particle radius (in m).'), - ), - Weight = FACT(statut = 'o',ang='Define the weight of particles (either through a mass or a density). ', - Consigne = SIMP(statut="o", homo="information", typ="TXM", defaut='Choose between Mass or Density'), - Mass = SIMP(statut='f', typ ='R', val_min = 0,ang='Define the mass of the particle (in kg).'), - Density = SIMP(statut='f', typ ='R', val_min = 0, ang='Define the density of the particle (in kg/m^3).'), - ), - - ), # ParticulePrimaryProperties - ), # blocAgregateFineGrainedDescription - blocAgregateCoarseGrainedDescription = BLOC(condition='AgregateDescription == "Coarse Grained"', - AgregateProperties = FACT (statut ='o', - Consigne = SIMP(statut="o", homo="information", typ="TXM", defaut='Choose between GyrationRadius, HydrodynamicRadius, EnclosedSphereRadius'), - GyrationRadius = SIMP(statut='f', typ ='R', val_min = 0), - EnclosedSphereRadius = SIMP(statut='f', typ ='R', val_min = 0), - HydrodynamicRadius = SIMP(statut='f', typ ='R', val_min = 0), - Weight = FACT(statut = 'o',#ang='Define the weight of particles (either through a mass or a density) ', - Consigne = SIMP(statut="o", homo="information", typ="TXM", defaut='Choose between Mass or Density'), - Mass = SIMP(statut='f', typ ='R', val_min = 0,ang='Define the mass of the particle (in kg).'), - Density = SIMP(statut='f', typ ='R', val_min = 0, ang='Define the density of the particle (in kg/m^3).'), - ), - Morphology = FACT(statut='o', - Consigne = SIMP(statut="o", homo="information", typ="TXM", defaut='Choose between CoordinationNumber, FractalDimension or Porosity'), - FractalDimension = SIMP(statut='f', typ='R', ang='Define the number of primary particles within an aggregate'), - Porosity = SIMP(statut='f', typ='R', ang='Define the porosity of the aggregate'), - CoordinationNumber = SIMP(statut='f', typ='R', ang='Define the CoordinationNumber of the aggregate'), - ), - Cohesion = FACT(statut='o', - Consigne = SIMP(statut="o", homo="information", typ="TXM", defaut='Choose between Force and PotentialEnergy'), - Force = SIMP(statut='f', typ='R', ang='Define the porosity of the aggregate'), - PotentialEnergy = SIMP(statut='f', typ='R', ang='Define the CoordinationNumber of the aggregate'), - ), - ), - Consigne = SIMP(statut="o", homo="information", typ="TXM", defaut='Describe contituent particles if needed'), - ParticleCOnstituentProperties=FACT( statut='f', max='**', - name = SIMP(statut='o', typ='TXM'), - numberOfPrimaryParticle = SIMP(statut='o', typ='I'), - Weight = FACT(statut = 'o',ang='Define the weight of particles (either through a mass or a density). ', - Consigne = SIMP(statut="o", homo="information", typ="TXM", defaut='Choose between Mass or Density'), - Mass = SIMP(statut='f', typ ='R', val_min = 0,ang='Define the mass of the particle (in kg).'), - Density = SIMP(statut='f', typ ='R', val_min = 0, ang='Define the density of the particle (in kg/m^3).'), - ), - ), - ), # blocAgregateCoarseGrainedDescription - - - #Consigne = SIMP(statut="o", homo="information", typ="TXM", defaut='Choose optional properties'), - #NumberOfPrimaryParticle = SIMP(statut ='f',typ='I', ang='Define the fractal dimension of the aggregate'), - #EquivalentRadius = SIMP(statut='f', typ='R', ang='Define the equivalent radius of the aggregate (in m)'), - ), # b_SolidAggregate - ), # blocTypeDPSolid -# --------------- Bio Organism ------------------ - blocTypeBioSolid = BLOC(condition='TypeOfDiscreteParticle == "Bio Organism"', - TypeOfOrganism = SIMP(statut='o', typ='TXM', into=['Unicellular', 'Multicellular'], ang='Choose the type of bio-organism. \n Current choice includes Unicellular (i.e. indivisible elements) or Multicellular (i.e. composed of several elements) organisms.'), - blocUnicellular = BLOC(condition ='TypeOfOrganism=="Unicellular"', - Unicellular = SIMP(statut='o', typ='TXM', into=["Bacteria"], defaut='Bacteria', ang='Choose the type of unicellular organism.\n Current choice includes Bacteria.') - ), - b_Multicellular = BLOC(condition ='TypeOfOrganism=="Multicellular"', - Multicellular = SIMP(statut='o', typ='TXM', into=["Animal","Fungus","Plant"], ang='Choose the type of multicellular organism.\n Current choice includes Animal, Fungus and Plant.') - ), - ), # b_TypeBio_Solid - - blocNonAggreaat = BLOC(condition ='TypeOfDiscreteParticle != "Solid" or PrimaryOrAggregate != "Assemblage / Aggregate"' , -# --------------- Particule Properties ------------------ - Properties = FACT(statut ='o', ang='Define the properties of particles', - Geometry = SIMP(statut='o', typ='TXM', into=['Sphere', 'Ellipsoids', 'Other Shape'], ang='Choose the shape of particles. \n Current choice includes Sphere, Ellipsoids and Other Shapes.'), - b_geom_Sphere = BLOC(condition = 'Geometry == "Sphere"', - ReferenceParticleRadius = SIMP(statut='o', typ ='R', val_min = 0, ang='Define a reference particle radius (in m).'), - ), - Weight = FACT(statut = 'o',ang='Define the weight of particles (either through a mass or a density). ', - Consigne = SIMP(statut="o", homo="information", typ="TXM", defaut='Choose between Mass or Density'), - Mass = SIMP(statut='f', typ ='R', val_min = 0,ang='Define the mass of the particle (in kg).'), - Density = SIMP(statut='f', typ ='R', val_min = 0, ang='Define the density of the particle (in kg/m^3).'), - ), - Mechanical = SIMP(statut='o', typ='TXM', into=['Rigid', 'Flexible', 'Deformable'],ang='Choose the type of mechanical properties for particles. \n Current choice includes Rigid, Flexible and Deformable bodies.'), - ElectroMagnetic = FACT(statut = 'f', - ElectricCharge = SIMP(statut='o', typ='R', ang='Define the electric charge of the aggregate (in Coulomb).'), - MagneticMoment = SIMP(statut='o', typ='R', ang='Define the magnetic moment of the aggregate (in A.m^2)'), - ), - ), # Properties - ),# fin b_NonAgregate - ), # b_Discrete - ) # fin Particle - -#--------------------------------- -def prepareContactPhenomena(): -#--------------------------------- - return FACT(statut='o', max= "**", - withContactPhenomena = SIMP(statut='o', typ=bool, defaut=False, ang='Activate contact forces between particles (i.e. inter-particle collision).'), - bwithContact = BLOC(condition = 'withContactPhenomena == True', - LevelOfDescription = SIMP(statut='o', typ='TXM', into=[ 'Microscopic', 'Macroscopic'], ang='Choose the level of description of contact forces between particles. \n Current choice includes Microscopic descriptions (with precise contact forces) and Macroscopic descriptions (at the continuum level).'), - bMicroscopic = BLOC(condition = 'LevelOfDescription == "Microscopic"', - DescriptionOfContact = SIMP(statut='o', typ='TXM', into=[ 'Contact distance (cutoff)', 'Adhesion theories'], ang='Choose how contact forces are described. \n Current choice includes Contact distance (i.e. force calculated with a cutoff distance) or Adhesion theories (e.g. JKR or DMT theories).'), - ), - bMacroscopic = BLOC(condition = 'LevelOfDescription == "Macroscopic"', - OutcomeOfContact = SIMP(statut='o', typ='TXM', into=[ 'Sticky collision','Elastic collision','Inelastic collision', 'Mixed collisional event'], ang='Choose the macroscopic model for inter-particle contact. \n Current choice includes Sticky collisions (i.e. particles are stuck), Elastic collisions (i.e. rebound) or Inelastic collisions (i.e. rebound without energy conservation) or Mixed collisional events.'), - ), - TreatmentOfCollisions = SIMP(statut='o', typ='TXM', into=[ 'No collision', 'Binary/multiple particle collisions', 'Collision-induced fragmentation'], fenetreIhm = 'menuDeroulant', defaut = 'No collision', ang='Choose the treatment for the inter-particle collision. \n Current choice includes No collision (i.e. particles do not see each other), Binary/Multiple collision (i.e. with two or more particles) or Collision-induced fragmentation (i.e. breakup of the particle)'), - ), #bwithActions - )#FACT - -#--------------------------------- -def prepareContactPhenomenaWall(): -#--------------------------------- - return FACT(statut='o', max= "**", - withContactPhenomena = SIMP(statut='o', typ=bool, defaut=False, ang='Activate contact forces between particle and wall (i.e. collision with a surface).'), - bwithContact = BLOC(condition = 'withContactPhenomena == True', - LevelOfDescription = SIMP(statut='o', typ='TXM', into=[ 'Microscopic', 'Macroscopic'], ang='Choose the level of description of contact forces between particles and surfaces. \n Current choice includes Microscopic descriptions (with precise contact forces) and Macroscopic descriptions (at the continuum level).'), - bMicroscopic = BLOC(condition = 'LevelOfDescription == "Microscopic"', - DescriptionOfContact = SIMP(statut='o', typ='TXM', into=[ 'Contact distance (cutoff)', 'Adhesion theories'], ang='Choose how particle-surface contact forces are described. \n Current choice includes Contact distance (i.e. force calculated with a cutoff distance) or Adhesion theories (e.g. JKR or DMT theories).'), - ), - bMacroscopic = BLOC(condition = 'LevelOfDescription == "Macroscopic"', - OutcomeOfContact = SIMP(statut='o', typ='TXM', into=[ 'Sticky collision','Elastic collision','Inelastic collision', 'Mixed collisional event'], ang='Choose the macroscopic model for particle-surface contact. \n Current choice includes Sticky collisions (i.e. particle stick/deposit on surfaces), Elastic collisions (i.e. rebound) or Inelastic collisions (i.e. rebound without energy conservation) or Mixed collisional events.'), - ), - ), #bwithActions - )#FACT - -#--------------------------------- -def prepareActionsAtDistance(): -#--------------------------------- - return FACT(statut='o', max= "**", - withActionsAtDistance = SIMP(statut='o', typ=bool, defaut=False, ang='Activate short- and long- range inter-particle forces.'), - bwithActions = BLOC(condition = 'withActionsAtDistance == True', - TypeOfActionAtDistance = SIMP(statut='o', typ='TXM', into=[ 'electro_magnetic', 'Inter-surface forces', 'Fluid-like forces','Fluid-mediated forces', 'Biological forces','Radiative Effects'], position='global',fenetreIhm='menuDeroulant', ang='Choose the type of short- or long-range inter-particle force. \n Current choice includes Electro-Magnetic forces, Inter-surface forces (e.g. van der Waals or Lennard-Jones forces), Fluid-like forces (for fluid particles only), Fluid-mediated forces (e.g. capillary forces, hydrophilic/hydrophobic, electrostatic double-layer forces), Biological forces, Radiative effects.'), - - blocElec = BLOC(condition = 'TypeOfActionAtDistance == "electro_magnetic"', - Permittivity = SIMP(statut='o', typ='R', ang='Define the particle relative permittivity'), - Magnetic = SIMP(statut='o', typ=bool, defaut=False, ang='Activate magnetic forces'), - blocMagnetic = BLOC(condition = 'Magnetic == True', - Permeability = SIMP(statut='o', typ='R', ang='Define the particle permeability (in H/m)'), - ), # bloc_magnetic - Consigne = SIMP(statut="o", homo="information", typ="TXM", defaut='Enter ElectricCharge for Particle'), - # Creation PN activation ElectricCharge - ),# fin bloc_elec - - blocInterSurface = BLOC(condition = 'TypeOfActionAtDistance == "Inter-surface forces"', - TypeInterSurfaceForce = SIMP(statut='o', typ='TXM', into = [ 'Lennard_Jones', 'Steric', 'Soft_Potential','van der Waals'], ang='Choose the type of inter-surface forces between particles. \n Current choice includes Lennard-Jones, Steric, van der Waals or Soft-potential forces.'), - blocvanderWaals = BLOC(condition = "TypeInterSurfaceForce == 'van der Waals'", - HamakerConstant = SIMP(statut='o', typ='R', val_min=0, ang='Define the Hamaker constant between bodies (in J).'), - ParticlesPairs = SIMP(statut='o', max=2, typ=userParticle, ang='Choose the pair of particles involved.\n Requires at least one particle in the Classical Particle System.'), - ), - blocLennard = BLOC(condition = "TypeInterSurfaceForce == 'Lennard_Jones'", - LennardJonesRadius = SIMP(statut='o', typ='R', val_min=0, ang='Define the Lennard-Jones cut-off radius (in m).'), - DepthOfThePotentialWell = SIMP(statut='o', typ='R', val_min=0, ang='Define the Lennard-Jones potential well (in J).'), - ParticlesPairs = SIMP(statut='o', max=2, typ=userParticle, ang='Choose the pair of particles involved.\n Requires at least one particle in the Classical Particle System.'), - ), # fin b_Lennard - - blocParamSoftPotentiel = BLOC(condition = "TypeOfActionAtDistance == 'Soft_Potentiel'", - GrootWarrenRepulsion = SIMP(statut='o', typ='R', defaut=25.0, val_min=0), - GrootWarrenCutoff = SIMP(statut='o', typ='R', defaut=1.0, val_min=0), - DragCoefficient = SIMP(statut='o', typ='R'), # les 2 valent 0 pour MD - DragForceCutoff = SIMP(statut='o', typ='R', val_min=0), - ParticlesPairs = SIMP(statut='o', max=2, typ=userParticle), - ), # b_Param_Soft_Potentiel - ), # bloc_VdW - - ) # fin bloc - ) # fin prepareActionsAtADistance - -#--------------------------------- -def prepareActionsAtDistanceForWall(): -#--------------------------------- - return FACT(statut='o', max= "**", - withActionsAtDistance = SIMP(statut='o', typ=bool, defaut=False, ang='Activate short- and long- range particle-wall forces.'), - bwithActions = BLOC(condition = 'withActionsAtDistance == True', - TypeOfActionAtDistance = SIMP(statut='o', typ='TXM', into=[ 'electro_magnetic', 'Inter-surface forces', 'Fluid-like forces','Fluid-mediated forces', 'Biological forces','Radiative Effects'], position='global',fenetreIhm='menuDeroulant', ang='Choose the type of short- or long-range particle-wall force. \n Current choice includes Electro-Magnetic forces, Inter-surface forces (e.g. van der Waals or Lennard-Jones forces), Fluid-like forces (for fluid particles only), Fluid-mediated forces (e.g. capillary forces, hydrophilic/hydrophobic, electrostatic double-layer forces), Biological forces, Radiative effects.'), - - blocElec = BLOC(condition = 'TypeOfActionAtDistance == "electro_magnetic"', - Permittivity = SIMP(statut='o', typ='R', ang='Define the particle relative permittivity'), - Magnetic = SIMP(statut='o', typ=bool, defaut=False, ang='Activate magnetic forces'), - blocMagnetic = BLOC(condition = 'Magnetic == True', - Permeability = SIMP(statut='o', typ='R', ang='Define the particle permeability (in H/m)'), - ), # bloc_magnetic - # Creation PN activation ElectricCharge - ),# fin bloc_elec - - blocInterSurface = BLOC(condition = 'TypeOfActionAtDistance == "Inter-surface forces"', - TypeInterSurfaceForce = SIMP(statut='o', typ='TXM', into = [ 'Lennard_Jones', 'Steric', 'Soft_Potential','van der Waals'], ang='Choose the type of inter-surface forces between particles and walls. \n Current choice includes Lennard-Jones, Steric, van der Waals or Soft-potential forces.'), - blocvanderWaals = BLOC(condition = "TypeInterSurfaceForce == 'van der Waals'", - HamakerConstant = SIMP(statut='o', typ='R', val_min=0, ang='Define the Hamaker constant between bodies (in J).'), - ), - blocLennard = BLOC(condition = "TypeInterSurfaceForce == 'Lennard_Jones'", - LennardJonesRadius = SIMP(statut='o', typ='R', val_min=0, ang='Define the Lennard-Jones cut-off radius (in m).'), - DepthOfThePotentialWell = SIMP(statut='o', typ='R', val_min=0, ang='Define the Lennard-Jones potential well (in J).'), - ), # fin b_Lennard - - blocParamSoftPotentiel = BLOC(condition = "TypeOfActionAtDistance == 'Soft_Potentiel'", - GrootWarrenRepulsion = SIMP(statut='o', typ='R', defaut=25.0, val_min=0), - GrootWarrenCutoff = SIMP(statut='o', typ='R', defaut=1.0, val_min=0), - DragCoefficient = SIMP(statut='o', typ='R'), # les 2 valent 0 pour MD - DragForceCutoff = SIMP(statut='o', typ='R', val_min=0), - ), # b_Param_Soft_Potentiel - ), # bloc_VdW - - blocActionChoisie = BLOC (condition = 'TypeOfActionAtDistance !=None ', - LevelOfDescriptionNearWalls= SIMP(statut='o', typ='TXM', into =('Full force-distance curve', 'Simplified treatment'),ang='CH1Stcomment\ntest\t espace'), - blocSimplifed = BLOC (condition = 'LevelOfDescriptionNearWalls == "Simplified treatment" ', - TypeOfSimplifiedTreatment =SIMP(statut='o', typ='TXM', into =('Energy-based Wall Model',) - ), - ), - ) # fin blocActionChoisie - ) # fin bloc - ) # fin prepareActionsAtADistanceForWall - -#-------------------------------------------- -def prepareBondedInteractions(fromWall=False): -#--------------------------------- - intoHorsWall=[ 'Bond stretching', 'Angle bending', 'Torsional motion', 'Frozen or collective motion',] - intoWall=[ 'Bond stretching', 'Angle bending', 'Torsional motion', 'Frozen or collective motion','Contact mechanics'] - if fromWall : - mesInto=intoWall - #monBondedParticles = SIMP(statut='o', typ='TXM', defaut='True', into=['True',]) #PNPN - monBondedParticles = SIMP(statut='o', typ=bool, defaut=1, ang='Activate bonded interactions between particles and walls.') - else : - mesInto=intoHorsWall - monBondedParticles = SIMP(statut='o', typ=bool, defaut=False, ang='Activate bonded interactions between particles.') - - return FACT(statut='o', max = "**", - BondedParticles = monBondedParticles, - blocBonded = BLOC(condition = 'BondedParticles == True', - DescribedWithTopologyFile = SIMP(statut='o', typ=bool, defaut=False, ang='Activate description with a topology file (otherwise, user-defined in the CDM).'), - blocTopologyFile = BLOC (condition = 'DescribedWithTopologyFile == True', - TopologyFile =SIMP(statut='o', typ=('Fichier', " Files (*.pdb );;All Files (*)",'Sauvegarde')), - ), - blocNoTopologyFile = BLOC (condition = 'DescribedWithTopologyFile == False', - BondedInteraction = FACT (statut ='o', max ='**', - NatureOfBondedInteraction = SIMP(statut='o', typ='TXM', into= mesInto, intoXML = intoWall,ang='Choose the nature of bonded-interactions. \n Current choice includes bond-stretching, angle bending, torsional motion and frozen/collective motion.'), - bBondStretching = BLOC ( condition = 'NatureOfBondedInteraction == "Bond stretching"', - TypeOfBondStretching = SIMP(statut='o', typ='TXM', into=[ 'Bond harmonic potential', 'FENE',],ang='Choose the type of bond stretching force. \n Current choice includes Bond harmonic potential or FENE model (Finitely-Extensible Non-linear Elastic).'), -# ------------ FENE ------------------ - blocFENE = BLOC(condition = 'TypeOfBondStretching == "FENE"', - FENEParameters = FACT(statut='o', max="**", - SpringConstant_H = SIMP(statut='o', typ='R', val_min=0, ang='Define the value of the spring constant for the FENE model.'), - LMax = SIMP(statut='o', typ='R', val_min=0, ang='Define the value of the maximal extension for the FENE model.'), - ListOfBondedParticles = SIMP(statut='o', max='**', typ = Tuple(2), validators=VerifTypeTuple(('I','I'),),ang='Define the list of bonded particles (loop on particle pairs).'), - ), # fin FENE_Parameters - ), # fin blocFENE -# ------------ Harmonic potential Parameters ------------------ - blocharmonic = BLOC(condition = 'TypeOfBondStretching == "Bond harmonic potential"', - BondHarmonicParameters = FACT(statut='o', max="**", - ListOfBondedParticles = SIMP(statut='o', max='**', typ = Tuple(2), validators=VerifTypeTuple(('I','I'),),ang='Define the list of bonded particles (loop on particle pairs).'), - ), # fin BondHarmonicParameters - ), # fin blocharmonic - ), # fin bBondStretching - #TypeOfBondedInteraction = SIMP(statut='o', typ='TXM', into=[ 'Covalent Bond Length', 'FENE', 'Covalent Bond Angle', 'Dihedral Angles', 'Improper Dihedral ou Torsonial Motion ?', 'Frozen Motion', 'Angle bending' ], defaut='NoOne'), - - #PNPN 114 - #La saisie de l'ensemble des liaisons d'un meme type peut se faire ds le meme bloc (soit ds un fichier, soit manuelle) - #Une seule valeur de distante? est a saisir pour l'ensemble - -# ------------ Covalent Bond Length ------------------ - # blocCovalentLength = BLOC(condition = 'TypeOfBondedInteraction == "Covalent Bond Length"', - # InteractionLengthParameters = FACT(statut='o', max="**", - # SpringStifness = SIMP(statut='o', typ='R', val_min=0), - # MeanBondLength = SIMP(statut='o', typ='R', val_min=0), - # ListOfBondedParticles = SIMP(statut='o', max='**', typ = Tuple(2), validators=VerifTypeTuple(('I','I'),)), - # ), # fin Interation_Length_Parameters - # ), # fin BondLengthParameters - -# ------------ Covalent Bond Angle ------------------ - # blocCovalentAngle = BLOC(condition = 'TypeOfBondedInteraction == "Covalent Bond Angle"', - # InteractionAnglesParameters = FACT(statut='o', max="**", - # ApplyToBondedParticles = SIMP(statut='o', max='**', typ='TXM'), - # SpringStifness = SIMP(statut='o', typ='R', val_min=0), - # MeanBondAngle = SIMP(statut='o', typ='R', val_min=0), - # ListOfBondedParticles = SIMP(statut='o', max='**', typ = Tuple(2), validators=VerifTypeTuple(('I','I'),)), - # ), # fin Interation_Angles_Parameters - # ), # fin bloccovalentlengthand_angle - - - -# ------------ Dihedral Angles ------------------ - # blocDihedral = BLOC(condition = 'TypeOfBondedInteraction == "Dihedral Angles"', - # DihedralAnglesQueDemandeTon = SIMP(statut='o', typ='TXM'), - # ), - -# ------------ Improper Dihedral ------------------ - # blocImproperDihedral = BLOC(condition = 'TypeOfBondedInteraction == "Improper Dihedral"', - # ImproperDihedralQueDemandeTon = SIMP(statut='o', typ='TXM'), - # ), - # blocFrozen = BLOC(condition = 'TypeOfBondedInteraction == "Frozen Motion"', - # FrozenQueDemandeTon = SIMP(statut='o', typ='TXM'), - # ), - )# fin bondedInteraction - ), # blocNoTopology - ), # blocBondedInteractop, - ) # fin Bonded_Interaction - -#--------------------------------- -def prepareBlocOrigine(condition): -#--------------------------------- - return BLOC(condition = condition, - Origin = FACT(statut ='o', - OriginType = SIMP(statut='o', into =['ByValue', 'ByFile', 'ByInteraction'], typ ='TXM', defaut='ByValue',ang='Choose the origin of the variable. \n Current choice includes by Value (user-given), by File or by Interaction (i.e. with another component).'), - blocByFile = creeBlocPourLesFichiers('OrigineType == "ByFile"', '', ListeFormats = listeFormatGenerique, FieldName='FieldName'), - blocByInteraction = BLOC(condition = 'InitialisationType == "ByInteraction"', - InteractionName = SIMP(typ=interaction,statut='o'), - Consigne = SIMP(statut="o", homo="information", typ="TXM", defaut='Create and choose suitable interaction'), - ), - blocByValue = BLOC(condition = 'OriginType == "ByValue"', - ConstantValue = SIMP (statut ='o', typ='R',ang='Define the value of the variable.'), - ), - ), - ) -#---------------------------------------- -def prepareBlocInitialisation(condition): -#---------------------------------------- - monIntoType = ['ByValue', 'ByFile', 'ByInteraction'] - return BLOC(condition = condition, - Initialisation = FACT(statut ='o', - InitialisationType = SIMP(statut='o', into = monIntoType, typ ='TXM', defaut='ByValue',ang='Choose the type of initialization of the variable. \n Current choice includes by Value (user-given).'), - blocByFile = creeBlocPourLesFichiers('InitialisationType == "ByFile"', '', ListeFormats = listeFormatGenerique, FieldName='FieldName'), - blocByInteraction = BLOC(condition = 'InitialisationType == "ByInteraction"', - InteractionName = SIMP(typ=interaction,statut='o'), - Consigne = SIMP(statut="o", homo="information", typ="TXM", defaut='Create and choose suitable interaction'), - ), - blocByValue = BLOC(condition = 'InitialisationType == "ByValue"', - Value = SIMP (statut ='o', typ='R',ang='Define the initial value of the variable.'), - ), - ), - SourceTerm = SIMP(typ=bool, statut='o', defaut=False), - blocSourceTerm = prepareTermeSource('SourceTerm==True'), - ) #blocSimulatedPressure - -#----------------------------------------------------------------- -def prepareBlocInitialisationParticle(condition, termeSource=True): -#----------------------------------------------------------------- - monIntoType = ['ByValue', 'ByFile', 'ByInteraction','Not needed' ] - #dicoTermeSource = {} - #if termeSource : - # dicoTermeSource['SourceTerm'] = SIMP(typ=bool, statut='o', defaut=False), - # dicoTermeSource['blocSourceTerm'] = prepareTermeSourceParticle('SourceTerm==True') - - if termeSource : - return BLOC(condition = condition, - Initialisation = FACT(statut ='o',ang='Define how the state variable is initialized', - InitialisationType = SIMP(statut='o', into =monIntoType, typ ='TXM', defaut='ByValue',ang='Choose the type of initialization. \n Current choice includes by Value (provided by the user), by File, by Interaction (with another component) or Not needed.'), - blocNotNeeded = BLOC(condition = 'InitialisationType != "Not needed"', - ParticleIdentifier=SIMP(statut='o', typ = userParticle,ang='Choose on which types of particles the initialization applies.\n Requires the definition of particles in the Classical Particle System.'), - ), - blocByFile = creeBlocPourLesFichiers('InitialisationType == "ByFile"', '', ListeFormats = listeFormatGenerique, FieldName='FieldName'), - blocByInteraction = BLOC(condition = 'InitialisationType == "ByInteraction"', - InteractionName = SIMP(typ=interaction,statut='o',ang='Choose the component for the interaction.\n Requires another component in the CDM.'), - Consigne = SIMP(statut="o", homo="information", typ="TXM", defaut='Create and choose suitable interaction'), - ), - blocByValue = BLOC(condition = 'InitialisationType == "ByValue"', - Value = SIMP (statut ='o', typ='R',ang='Define the initial value'), - ), - SourceTerm = SIMP(typ=bool, statut='o', defaut=False,ang='Activate a source term for the variable.'), - blocSourceTerm = prepareTermeSourceParticle('SourceTerm==True') - ), - ) # - else: - return BLOC(condition = condition, - Initialisation = FACT(statut ='o',ang='Define how the state variable is initialized', - InitialisationType = SIMP(statut='o', into =monIntoType, typ ='TXM', defaut='ByValue',ang='Choose the type of initialization. \n Current choice includes by Value (provided by the user), by File, by Interaction (with another component) or Not needed.'), - blocNotNeeded = BLOC(condition = 'InitialisationType != "Not needed"', - ParticleIdentifier=SIMP(statut='o', typ = userParticle,ang='Choose on which types of particles the initialization applies.\n Requires the definition of particles in the Classical Particle System.'), - ), - blocByFile = creeBlocPourLesFichiers('InitialisationType == "ByFile"', '', ListeFormats = listeFormatGenerique, FieldName='FieldName'), - blocByInteraction = BLOC(condition = 'InitialisationType == "ByInteraction"', - InteractionName = SIMP(typ=interaction,statut='o',ang='Choose the component for the interaction.\n Requires another component in the CDM.'), - Consigne = SIMP(statut="o", homo="information", typ="TXM", defaut='Create and choose suitable interaction'), - ), - blocByValue = BLOC(condition = 'InitialisationType == "ByValue"', - Value = SIMP (statut ='o', typ='R',ang='Define the initial value'), - ), - ), - ) # - -#--------------------------- -def prepareBlocFluideMacro(): -#--------------------------- - return BLOC(condition = 'SystemType == "Continuum system"', - ComplexFluid = SIMP(typ=bool, statut='o', defaut = False, position='global',ang='Activate the description of complex fluids (e.g. polymeric fluid, emulsions).'), - FlowNature = SIMP(typ='TXM', statut='o', into =['Laminar', 'Turbulent'], position='global',ang='Choose the nature of the flow. \n Current choice includes Laminar or Turbulent flow.'), - -# --------------------------- Density ------------- - DensityInitialisation = FACT(statut ='o',ang='Initialize the fluid density properties', - DensityValueType = SIMP(typ='TXM', statut ='o', into = ['Value', 'Field'], defaut ='Value',ang='Choose the type of initialization for the fluid density. \n Current choice includes by Value of by Field.'), - blocDensityValue = BLOC(condition = 'DensityValueType == "Value"', - Density = SIMP(typ='R', statut ='o',ang='Define the value of the initial fluid density (in kg/m^3).'), - ), - blocDensField= creeBlocPourLesFichiers('DensityValueType == "Field"', 'Density', ListeFormats=listeFormatGenerique, FieldName='DensityFieldName'), - ),# DensityInitialisation - -# --------------------------- Viscosity ------------- - ViscosityInitialisation = FACT(statut ='o',ang='Initialize the fluid viscosity properties', - ViscosityValueType = SIMP(typ='TXM', statut ='o', into = ['Value', 'Field'], defaut ='Value',ang='Choose the type of initialization for the fluid viscosity. \n Current choice includes by Value of by Field.'), - blocViscosityValue = BLOC(condition = 'ViscosityValueType == "Value"', - Viscosity = SIMP(typ='R', statut ='o',ang='Define the value of the initial fluid dynamic viscosity (in m^2/s).'), - ), - blocViscosityField = creeBlocPourLesFichiers('ViscosityValueType == "Field"', 'Viscosity', ListeFormats=listeFormatGenerique, FieldName='ViscosityFieldName'), - ), #fin ViscosityityInitialisation - -# --------------------------- Turbulent ------------- - blocFlowNatureTurbulent = BLOC(condition = ' FlowNature == "Turbulent"', - TurbulenceForFlowDynamics = prepareFactTurbulence('o',position='global',positionChoice='reCalculeEtape'), - ), #fin bloc_FlowNature_Turbulent - - DynamicalVariables = FACT(statut ='o',ang='Define the dynamical variables inherent to the component (e.g. pressure, velocity and other turbulent variables).', - VariablesSimulation = SIMP(statut='o', typ =bool, position='global',ang='Activate the simulation of dynamic variables.'), - blocVariablesSimulation = BLOC(condition = 'VariablesSimulation == False', - OriginOfDynamicalVariables = SIMP(statut='o', into =['Given', 'Interaction'], typ ='TXM', position='global'), - blocGivenOrInteraction = BLOC(condition = 'OriginOfDynamicalVariables in ["Given", "Interaction",]', - SteadyState = SIMP(typ=bool, statut ='o', defaut = True, position = 'global'), - # blocNotSteady = BLOC(condition = 'SteadyState == False', - # blocConsigne = BLOC(condition = 'SteadyState == False', - # Consigne = SIMP(statut="o", homo="information", typ="TXM", defaut='Not implemented yet. Will ask for a range of calculation steps.'), - # ), #blocNotSteady - blocSteady = BLOC(condition = 'SteadyState == True', - blocGiven = BLOC(condition = 'OriginOfDynamicalVariables == "Given"', - InSameFile = SIMP(typ=bool, statut ='o', defaut = True, position = 'reCalculeEtape'), - blocSameFile = creeBlocPourLesFichiers('InSameFile == True', 'DynamicalVariables', ('Med', 'cgns' ), None), - ), #blocGiven - ), #blocSteady - ), #blocGivenOrInteraction - ), - PressureDefinition = FACT(statut ='o',ang='Define the fluid pressure (initialization and source term)', - Pressure = SIMP(typ=(dynamicVariable,'createObject'), statut='o', defaut ='Pressure', homo='constant'), - blocSteadyState = BLOC(condition = 'SteadyState == True', - blocFluidInSame = creeBlocPourLesFichiers('InSameFile == False', 'Pressure', ('Med', 'cgns' ), None), - blocGivenPressure = BLOC(condition = 'OriginOfDynamicalVariables == "Given"', - PressureFieldName = SIMP(typ='TXM',statut='o'), - ), - blocInteractionPressure = BLOC(condition = 'OriginOfDynamicalVariables == "Interaction"', - InteractionName = SIMP(typ=interaction,statut='o'), - Consigne = SIMP(statut="o", homo="information", typ="TXM", defaut='Create and choose suitable interaction'), - ), - ), - blocSimulatedPressure = prepareBlocInitialisation(condition = 'VariablesSimulation == True'), - ), - VelocityDefinition = FACT(statut ='o',ang='Define the fluid velocity (initialization and source term)', - blocFlowNatureTurbulent = BLOC(condition = 'FlowNature == "Turbulent"', - #sousBlocFlowNatureTurbulent = BLOC(condition = 'TurbulenceModellingType != "Fully resolved (DNS)"', - AverageVelocity = SIMP(typ=(dynamicVariable,'createObject'), statut='o', defaut ='Average_Velocity', homo='constant'), - blocSteadyGivenVelocity1 = BLOC(condition = 'OriginOfDynamicalVariables == "Given" and SteadyState == True ', - AverageVelocityValue = SIMP(typ='R', statut='o' ), - ), - #), - ), - #blocFlowNatureLaminar = BLOC(condition = ' FlowNature == "Laminar" or TurbulenceModellingType == "Fully resolved (DNS)"', - blocFlowNatureLaminar = BLOC(condition = 'FlowNature == "Laminar"', - FluidVelocity = SIMP(typ=(dynamicVariable,'createObject'), statut='o', defaut ='Fluid_Velocity', homo='constant'), - blocSteady = BLOC(condition = 'SteadyState == True', - blocVelocityInSame = creeBlocPourLesFichiers('InSameFile == False', 'Velocity', ('Med', 'cgns' ), None), - blocSteadyGivenVelocity2 = BLOC(condition = 'OriginOfDynamicalVariables == "Given"', - VelocityFieldName = SIMP(typ='TXM',statut='o'), - ), - ), - ), - blocSteady = BLOC(condition = 'SteadyState == True', - blocInteractionVelocity = BLOC(condition = 'OriginOfDynamicalVariables == "Interaction"', - InteractionName = SIMP(typ=interaction,statut='o'), - Consigne = SIMP(statut="o", homo="information", typ="TXM", defaut='Create and choose suitable interaction'), - ), - ), - blocSimulatedVelocity = prepareBlocInitialisation(condition = 'VariablesSimulation == True'), - ), - BFlowNatureTurbulent = BLOC(condition ='FlowNature == "Turbulent"', - # K-epislon ou k-omega - blocTurbulenceTWMChoice1 = BLOC(condition = 'TVMChoice == "K-Epsilon" or TVMChoice == "K-Omega"', - KDefinition = FACT(statut ='o',ang='Define the fluid turbulent kinetic energy "k" (initialization and source term)', - Name = SIMP(typ=(scalar,'createObject'), statut='o', defaut ='K', homo='constant'), - blocSteady = BLOC(condition = 'SteadyState == True', - blocKInSame = creeBlocPourLesFichiers('InSameFile == False', 'K', ('Med', 'cgns' ), None), - blocKGiven = BLOC(condition = 'OriginOfDynamicalVariables == "Given"', - KFieldName = SIMP(typ='TXM',statut='o', defaut='K'), - ), - blocKInteraction = BLOC(condition = 'OriginOfDynamicalVariables == "Interaction"', - InteractionName = SIMP(typ=interaction,statut='o'), - Consigne = SIMP(statut="o", homo="information", typ="TXM", defaut='Create and choose suitable interaction'), - ), - ), - blocSimulatedKDefinition = prepareBlocInitialisation(condition = 'VariablesSimulation == True'), - ), # KDefinition - ),# fin blocTurbulenceTWMChoice1 - - # REM : L'existence des mc TVMChoice et RSMChoice est exclusive, du coup une évaluation de condition - # qui contient les deux renvoie forcément une exception, le bloc n'est alors pas evalué - # sauf si le mc de la première condition existe (ordre évaluation du or) - # blocTurbulenceTWMChoice2 = BLOC(condition = 'TVMChoice == "K-Epsilon" or RSMChoice != None', - # blocTurbulenceTWMChoice2 = BLOC(condition = '(RSMChoice != None) or (TVMChoice == "K-Epsilon")', - # blocTurbulenceTWMChoice2 = BLOC(condition = 'TVMChoice == "K-Epsilon"', - blocTurbulenceTWMChoice2 = BLOC(condition = 'RANSModel == "Reynolds Stress Model (RSM)" or TVMChoice == "K-Epsilon"', - EpsilonDefinition = FACT(statut ='o',ang='Define the fluid turbulent kinetic energy "Epsilon" (initialization and source term)', - Name = SIMP(typ=(scalar,'createObject'), statut='o', defaut ='Epsilon', homo='constant'), - blocSteady = BLOC(condition = 'SteadyState == True', - blocEpsilonInSame = creeBlocPourLesFichiers('InSameFile == False', 'Epsilon', ('Med', 'cgns' ), None), - blocEpsilonGiven = BLOC(condition = 'OriginOfDynamicalVariables == "Given"', - EpsilonFieldName = SIMP(typ='TXM',statut='o'), - ), - blocEpsilonInteraction = BLOC(condition = 'OriginOfDynamicalVariables == "Interaction"', - InteractionName = SIMP(typ=interaction,statut='o'), - Consigne = SIMP(statut="o", homo="information", typ="TXM", defaut='Create and choose suitable interaction'), - ), - ), - blocSimulatedEpsilonDefinition = prepareBlocInitialisation(condition = 'VariablesSimulation == True'), - ), #EpsilonDefinition - ), # bloc_Turbulence_TWMChoice2 - - blocTurbulenceTWMChoice3 = BLOC(condition = 'TVMChoice == "K-Omega"', - OmegaDefinition = FACT(statut ='o',ang='Define the fluid specific rate of dissipation "Omega" (initialization and source term)', - Name = SIMP(typ=(scalar,'createObject'), statut='o', defaut ='Omega', homo='constant'), - blocSteady = BLOC(condition = 'SteadyState == True', - blocOmegaInSame = creeBlocPourLesFichiers('InSameFile == False', 'Omega', ('Med', 'cgns' ), None), - blocOmegaGiven = BLOC(condition = 'OriginOfDynamicalVariables == "Given"', - OmegaFieldName = SIMP(typ='TXM',statut='o'), - ), - blocOmegaInteraction = BLOC(condition = 'OriginOfDynamicalVariables == "Interaction"', - InteractionName = SIMP(typ=interaction,statut='o'), - Consigne = SIMP(statut="o", homo="information", typ="TXM", defaut='Create and choose suitable interaction'), - ), - ), - blocSimulatedOmegaDefinition = prepareBlocInitialisation(condition = 'VariablesSimulation == True'), - ), - ), # blocTurbulenceTWMChoice3 - - # blocTurbulenceRSMChoice1 = BLOC(condition = "(RANSModel == 'Reynolds Stress Model (RSM)') and (RSMChoice !=None)", - blocTurbulenceRSMChoice1 = BLOC(condition = "RSMChoice !=None", - RijDefinition = FACT(statut ='o',ang='Define the fluid Reynolds Stresses "Rij" (initialization and source term)', - Name = SIMP(typ=(scalar,'createObject'), statut='o', defaut ='Rij', homo='constant'), - blocSteady = BLOC(condition = 'SteadyState == True', - blocRijInSame = creeBlocPourLesFichiers('InSameFile == False', 'Rij', ('Med', 'cgns' ), None), - blocRijGiven = BLOC(condition = 'OriginOfDynamicalVariables == "Given"', - RijFieldName = SIMP(typ='TXM',statut='o'), - ), - blocRijInteraction = BLOC(condition = 'OriginOfDynamicalVariables == "Interaction"', - InteractionName = SIMP(typ=interaction,statut='o'), - Consigne = SIMP(statut="o", homo="information", typ="TXM", defaut='Create and choose suitable interaction'), - ), - ), - blocSimulatedRijDefinition = prepareBlocInitialisation(condition = 'VariablesSimulation == True'), - ), - ), # blocTurbulenceRSMChoice1 - ), #BFlowNatureTurbulent - ), # DynamicalVariables - -# ---------------------- Effets thermiques - Thermal = FACT(statut ='o',ang='Define the thermal properties of the component', - ThermalEffects = SIMP(typ='TXM', statut='o', into =['Non thermal', 'Thermal'] , defaut='Thermal', position='global' ,ang='Activate thermal effects on the component.'), - blocNonThermalEffects = BLOC(condition = 'ThermalEffects == "Non thermal"', - ReferenceTemperature = SIMP(typ='R', statut='o', val_min=0, ang='Define the reference temperature (in K)',), - ), # fin bloc_NonThermal - bloc_ThermalEffects_ = BLOC(condition = 'ThermalEffects == "Thermal"', - ConductivityValueType = SIMP(typ='TXM', statut ='o', into = ['Value', 'Field'], defaut ='Value',ang='Choose the type for conductivity. \n Current choice includes by Value or by Field.'), - blocCondValue = BLOC (condition = 'ConductivityValueType == "Value"', - Conductivity = SIMP(typ='R', statut ='o',ang='Define the value of the conductivity (in kg.m^3/s^3/A^2)'), - ), - blocCondField = creeBlocPourLesFichiers('ConductivityValueType == "Field"', 'Conductivity', ListeFormats=listeFormatGenerique, FieldName='conductivityFieldName'), - #ActiveOnFlowEffect = ActiveOnFlowEffect(), - ), - ),# fin Fact Thermal - -# ---------------------- Scalaires - - blocScalarFluidTurbulentOrLaminar = BLOC(condition = "(ComplexFluid == False and FlowNature == 'Turbulent') or (ComplexFluid == False and FlowNature == 'Laminar')", - Scalars = FACT(statut = 'o',ang='Define the scalars within the component (i.e. chemical species, temperature).', - withScalars = SIMP(statut='o', typ=bool, defaut=False,ang='Activate scalar within the component.'), - blocwithScalars = BLOC(condition = 'withScalars == True', - blocFlowNatureTurbulentForScalars = BLOC(condition = ' FlowNature == "Turbulent"', - AsTurbulenceForFlowDynamics = SIMP(statut='o', typ=bool, defaut=True,ang='Choose if the dynamics of scalars is the same as the dynamics of the turbulent flow (if not, define the turbulent dynamics for scalars).'), - blocAsTFFD = BLOC(condition = "AsTurbulenceForFlowDynamics == False", - ScalarsTurbulenceModelling = prepareFactTurbulenceScalaire('o',), - ), - ), - blocThermalEffectsOn = BLOC(condition = ' ThermalEffects == "Thermal"', - TemperatureScalar = FACT(statut ='o',ang='Define scalar for temperature', - #Name = SIMP(typ=(scalar,'createObject'), statut='o', defaut ='Temperature', homo='constant', position='reCalculeEtape'), - Name = SIMP(typ=(scalar,'createObject'), statut='o', defaut ='Temperature', homo='constant'), - SourceTerm = SIMP(typ=bool, statut='o', defaut=False,ang='Activate source term for temperature scalar.'), - blocSourceTerm = prepareTermeSource('SourceTerm==True'), - TemperatureInitialisation = FACT(statut ='o', - OriginOfThermalFluxField = SIMP(statut='o', into =['Given', 'Interaction', 'to be simulated'], typ ='TXM',ang='Choose the origin of the thermal flux field. \n Current choice includes Given (by the user), by Interaction (with another component), or To be simulated (i.e. calculated by the component).'), - blocGiven = creeBlocPourLesFichiers('OriginOfThermalFluxField == "Given"', 'Temperature', ('Med', 'cgns' ), FieldName='FieldName'), - ),# fin TemperatureInitialisation - ),# TemperatureScalar - ), # fin bloc_ThermalEffects_On - Scalar = FACT(statut = 'o', max ='**',ang='Define scalar for the component', - Name = SIMP(typ=(scalar,'createObject'), statut='o',), - DiffusivityValueType = SIMP(typ='TXM', statut ='o', into = ['Value', 'Field'], defaut ='Value',ang='Choose the type for diffusivity. \n Current choice includes by Value or by Field.'), - blocDiffValue = BLOC(condition = 'DiffusivityValueType == "Value"', - Diffusivity = SIMP(typ='R', statut ='o',ang='Define the value for the diffusivity (in m^2/s).'), - ), - blocDiffField = creeBlocPourLesFichiers('DiffusivityValueType == "Field"', 'Diffusivity', ListeFormats=listeFormatGenerique, FieldName='DiffusivityFieldName'), - OriginOfScalar = SIMP(statut='o', into =['Given', 'Interaction', 'to be simulated'], typ ='TXM', defaut='to be simulated',ang='Choose the origin of the diffusivity field. \n Current choice includes Given (by the user), by Interaction (with another component), or To be simulated (i.e. calculated by the component).'), - blocSimulatedScalar = BLOC(condition = 'OriginOfScalar == "to be simulated"', - SourceTerm = SIMP(typ=bool, statut='o', defaut=False,ang='Activate source terms for scalars.'), - blocSourceTerm = prepareTermeSource('SourceTerm==True'), - Initialisation = FACT(statut ='o',ang='Define the initialization for scalars', - InitialisationOfScalar = SIMP(statut='o', into =['ValueInit', 'FileInit', 'InteractionInit'], typ ='TXM', defaut='ValueInit',ang='Choose the initialization of scalars. \n Current choice includes by Value (i.e. by the user), by File or by Interaction (i.e. with another component).'), - blocFileInit = creeBlocPourLesFichiers('InitialisationOfScalar == "FileInit"', 'ScalarInit', ListeFormats = listeFormatGenerique, FieldName='ScalarInitField'), - blocInteractionInit = BLOC(condition = 'InitialisationOfScalar == "InteractionInit"', - InteractionName = SIMP(typ=interaction,statut='o'), - Consigne = SIMP(statut="o", homo="information", typ="TXM", defaut='Create and choose suitable interaction'), - ), - blocValueInit = BLOC(condition = 'InitialisationOfScalar == "ValueInit"', - ValueInit = SIMP (statut ='o', typ='R',ang='Define the initial value of the scalar'), - ), - ), #Initialisation - ), #blocSimulatedScalar - blocInteractionScalar = BLOC(condition = 'OriginOfScalar == "Interaction"', - InteractionName = SIMP(typ=interaction,statut='o'), - Consigne = SIMP(statut="o", homo="information", typ="TXM", defaut='Create and choose suitable interaction'), - ), - blocGivenScalar = creeBlocPourLesFichiers('OriginOfScalar == "Given"', 'Scalar', ListeFormats = listeFormatGenerique, FieldName='ScalarField'), - EffectOnFlowDynamic = SIMP(typ='TXM', statut='o', into=[ 'Passive', 'Active'], defaut='Passive', ), - blocScalarActiveOnFlowDynamic = BLOC(condition = ' EffectOnFlowDynamic == "Active"', - ActiveOnFlowEffect = ActiveOnFlowEffect(), - ), - blocScalarFluidTurbulentAndNonComplexe = BLOC (condition = "FlowNature == 'Turbulent'", - ScalarFluxModel = prepareFactTurbulenceScalaire('f'), - ), # bloc_scalar_FluidTurbulentandNonComplexe - ),# Scalar - ),# blocwWithScalars - ),# Scalars - ), # fin FluidTurbulentandNonComplexe - # il faut une validation de coherence entre l existence de tous les turbulencesModelling - )# fin bloc_FluideMacro - -#----------------------------------------- -def ActiveOnFlowEffect(inTemperature=True): -#----------------------------------------- - return FACT(statut = 'o', max='**',ang='Define if the variable has an effect on the flow (e.g. Newtonian fluid).', - RelationType = SIMP(statut = 'o', into =['Equation Of State', 'Force-Flux Relation'], typ ='TXM',ang='Choose the type of relation for the effect of the variable on the flow. \n Current choice includes Equation of State (EoS) and Force-Flux relation (FFR).'), - bloc_EOS = BLOC(condition = 'RelationType == "Equation Of State"', - TypeOfEquationOfState = SIMP(statut='o', into =['variable density', 'compressible'], typ ='TXM',ang='Choose the type of Equation of State. \n Current choice includes Variable density or Compressible.'), - ), - bloc_NonEOSAndSimple=BLOC(condition = 'RelationType == "Force-Flux Relation" and ComplexFluid == False', - TypeOfForceFluxRelation = SIMP(statut='o', into =['Viscosity', 'Diffusivity', 'Thermal Conductivity'], intoXML=['Viscosity', 'Diffusivity', 'Thermal Conductivity','Shear-stress closure', 'Scalar flux'], typ ='TXM', ang='Choose the type of Force-Flux Relation. \n Current choice includes Viscosity (e.g. viscous laws), Diffusivity or Thermal Conductivity.'), - blocViscosity=BLOC(condition = 'TypeOfForceFluxRelation == "Viscosity" ', - ViscosityLaw=SIMP(typ='TXM', statut = 'o', into=['law1', 'law2']), - ), - blocDiffusivity=BLOC(condition = 'TypeOfForceFluxRelation == "Diffusivity"', - DiffusivityLaw=SIMP(typ='TXM', statut = 'o', into=['law1', 'law2']), - ), - blocConductivity=BLOC(condition = 'TypeOfForceFluxRelation == "Thermal Conductivity"', - ConductivityLaw=SIMP(typ='TXM', statut = 'o', into=['law1', 'law2']), - ), - ), -) - -#------------------------------# -def prepareBoundaryCondition(): -#------------------------------# -# on en fait 1 bloc seul pour CS and CPS -# pour pas de souci dans la projection XSD - return FACT(statut='o',max = '**', # max = nb de facette de bord - TypeOfBoundaryCondition = SIMP(statut='o', typ='TXM', into=['Inlet', 'Outlet', 'Symmetry','Periodicity', 'Wall', 'Free Surface'], ang='Pick each type of boundary condition needed.\n Current choice includes Inlet, Outlet, Symmetry, Periodicity, Wall and Free surface.'), - - blocDesigneMesh = BLOC(condition = "SystemType == 'Continuum system'", - ApplyOnGroups = SIMP(statut ='o', typ=meshGroup, max='**', homo='SansOrdreNiDoublon', ang='Choose the surface elements (groups) on which the boundary condition applies. \n Requires the definition of boundary groups in SpatialAspects.', - filtre=( '(set(MeshIdentifiers).intersection( set(self.getParentsWithId().getListeUserASSD("MeshId")) ) != set()) ', - ( ('MeshIdentifiers', 'self.etape.getChild("blocModeleNumeriqueContinuum").getChild("NumericalModel")'), ) - ), - ), - ), - blocDesigne_Shape = BLOC(condition = "SystemType == 'Classical particle system'", - #ApplyOnGroups = SIMP (statut ='o', typ=spatialRegion, max='**') - ApplyOnGroups = SIMP (statut ='o', typ=meshGroup, max='**', homo='SansOrdreNiDoublon', ang='Choose the surface elements (groups) on which the boundary condition applies. \n Requires the definition of boundary groups in SpatialAspects.', - filtre=( '(set(MeshIdentifiers).intersection( set(self.getParentsWithId().getListeUserASSD("MeshId")) ) != set()) ', - ( ('MeshIdentifiers', 'self.etape.getChild("blocModeleNumeriqueClassical").getChild("NumericalModel")'), ) - ), - ), - ), - - - blocOnStateVariable = BLOC(condition = "(TypeOfBoundaryCondition in ['Inlet', 'Symmetry','Periodicity', 'Free Surface'] and SystemType == 'Continuum system') or (SystemType == 'Classical particle system' and TypeOfBoundaryCondition not in ['Outlet','Inlet'])" , - ApplyOnStateVariable = SIMP (statut ='o', typ=stateVariable, max='**', homo='SansOrdreNiDoublon', ang='Pick each State variable on which the boundary condition applies. \n Requires the definition of State variables for the component.', - filtre=( 'etape in set(self.getEtapes()) ', (('etape', None),), ), #Il ne faut pas proposer les variables d'état des autres composants. - ), #PNPN A FAIRE : fenetreIhm='menuDeroulant' - ), - - blocPeriodique = BLOC(condition = "TypeOfBoundaryCondition == 'Periodicity'", - Direction = SIMP(statut='o', typ='TXM', into=['X','Y','Z', 'XYZ'],ang='Choose the direction for the periodic boundary condition. \n Current choice includes along X-direction, Y-direction, Z-direction or all directions (XYZ).'), - ), # b_periodique - - blocInlet1 = BLOC(condition = "TypeOfBoundaryCondition == 'Inlet' and SystemType == 'Continuum system'", - FormulationOfBoundary= SIMP(statut='o', typ='TXM', into=['Dirichlet','Neumann','Cauchy'], ang='Choose the type of inlet condition for the continuum system. \n Current choice includes Dirichlet (value of the variable at the boundary), Neumann (value of the normal derivative of the variable at the boundary) or Cauchy (values of the variable and its normal derivative at the boundary).',), - blocDirichlet = BLOC(condition = 'FormulationOfBoundary == "Dirichlet"', - regles=(AU_MOINS_UN('InletProfile','IntegratedValue','IntegratedVectorValue',), - EXCLUS ('InletProfile','IntegratedValue','IntegratedVectorValue',), ), - Consigne = SIMP(statut ="o", homo="information", typ="TXM", defaut = "Choose between InletProfile,IntegratedValue,IntegratedVectorValue "), - InletProfile = SIMP (statut ='f', typ='TXM',ang='Define the inlet profile for the variable'), - IntegratedValue = SIMP (statut='f', typ='R',ang='Define the integrated value over the inlet for the variable'), - IntegratedVectorValue = FACT(statut='f', - U = SIMP (statut ='o', typ='R',ang='Define the integrated value for the variable along the X-direction (in m/s).'), - V = SIMP (statut ='o', typ='R',ang='Define the integrated value for the variable along the Y-direction (in m/s).'), - W = SIMP (statut ='o', typ='R',ang='Define the integrated value for the variable along the Z-direction (in m/s).'), - ), - ),# fin Dirichlet - blocNeumann = BLOC(condition = 'FormulationOfBoundary == "Neumann"', - FluxFile = SIMP (statut ='o', typ=('Fichier', " ;;All Files (*)"),) - ), - blocCauchy = BLOC(condition = 'FormulationOfBoundary == "Cauchy"', - ImposedFlux = SIMP (statut ='o', typ='TXM'), - _IntegratedValue = SIMP (statut='o', typ='R'), - ), - ), # b_inlet1 - blocWall = BLOC(condition = "TypeOfBoundaryCondition == 'Wall' and SystemType == 'Continuum system'", - VelocityAtBoundary = FACT(statut='o',ang='Define the velocity at the boundary (including the slip velocity and translational motion)', - SlipVelocity = SIMP(statut='o', typ='R', defaut= 0.0,ang='Define the value of the slip velocity at the boundary (in m/s).'), - WallMotion = FACT(statut='o',ang='Define the translational motion of the wall (if necessary)', - U = SIMP (statut ='o', typ='R',ang='Define the value of the translational wall motion along the X-direction (in m/s).'), - V = SIMP (statut ='o', typ='R',ang='Define the value of the translational wall motion along the Y-direction (in m/s).'), - W = SIMP (statut ='o', typ='R',ang='Define the value of the translational wall motion along the Z-direction (in m/s).'), - ), - ), - LevelOfDescription = FACT(statut='o', - blocWallInside = BLOC(condition = "FlowNature == 'Turbulent'", ##JP+CH TODO : Choix des lois en fct du type du TurbulenceModelingType - WallFunction = SIMP(statut ='o', typ='TXM',ang='Choose the model for the turbulent wall function at the boundary. \n Current choice includes No wall function (i.e. no model as in DNS) or log-law models (1-scale, 2-scale or scalable 2-scale models).', - into=['No wall function','1-scale model (Log law)', - '2-scale model (Log law)','Scalable 2-scale model (Log law)', - ], defaut='No wall function', fenetreIhm='menuDeroulant'), - ), - ), - ), # b_Wall - - blocWall2 = BLOC(condition = "TypeOfBoundaryCondition == 'Wall' and SystemType == 'Classical particle system'", - ChoiceOfParticleWallInteraction = SIMP(statut='o', typ = wallInteractionId) - ), # b_Wall - - blocInlet2 = BLOC(condition = "TypeOfBoundaryCondition == 'Inlet' and SystemType == 'Classical particle system'", - TypeOfParticleInjected = SIMP(statut='o', typ = userParticle,ang='Pick the type of particles injected. \n Requires the definition of at least one type of particles in the Classical-Particle system.'), - NumberOfParticleInjected = SIMP(statut='o', typ = 'I', val_min = 1,ang='Define the number of particles injected.'), - InjectionEveryNTimeSteps = SIMP(statut='o', typ = 'I', val_min = 0,ang='Define the frequency of injection of particles.'), - DiameterOfParticleInjected = SIMP(statut='o', typ = 'R', val_min = 0,ang='Define the diameter of the particles injected (in m).'), - MassOfParticleInjected = SIMP(statut='o', typ = 'R', val_min = 0,ang='Define the mass of the particles injected.'), - - PositionOfParticleInjected = FACT(statut='o', - InitialisationMode = SIMP(statut='o', into =['ByValue', 'ByFile', 'ByFormula' ], typ ='TXM', defaut='ByValue',ang='Choose the way the initial particle position is defined. \n Current choice includes by Value (i.e. user given), by File or by Formula.'), - # A Rafiner - ), - blocNoBrownianDynamics = BLOC(condition = '(TypeOfConstraint != None) and not("Brownian dynamics" in TypeOfConstraint)', - ParticleVelocity = FACT(statut ='o', - InitialisationMode = SIMP(statut='o', into =['ByValue', 'ByFile', 'ByFormula' ], typ ='TXM', defaut='ByValue',ang='Choose the way the initial particle velocity is defined. \n Current choice includes by Value (i.e. user given), by File or by Formula.'), - ), #fin VelocityDefinition - blocHydrodynamic = BLOC(condition = '"Hydrodynamic" in MomentumFieldType', - FluidVelocitySeenByParticles = FACT(statut ='o', - InitialisationMode = SIMP(statut='o', into =['ByValue', 'ByFile', 'ByFormula' ], typ ='TXM', defaut='ByValue',ang='Choose the way the initial particle velocity is defined. \n Current choice includes by Value (i.e. user given), by File or by Formula.'), - ), - ), - ),# blocNoBrownianDynamics - ), # bInlet2 - - blocApplyOnParticle = BLOC(condition = "SystemType == 'Classical particle system' and TypeOfBoundaryCondition != 'Inlet'" , - ApplyOnAllsParticle = SIMP(typ=bool, statut ='o', defaut = True,ang='Precise if the field applies on all species (i.e. all types of particles defined in this Classical-Particle-System component)'), - blocSpecifyParticle = BLOC(condition = "ApplyOnAllsParticle == False" , - ApplyOnParticles = SIMP(statut ='o',max="**", typ = userParticle, homo='SansOrdreNiDoublon'), - ), - ), - - ) # Boundary_Conditions - - - -JdC = JDC_CATA ( - #PN : TODO : regles = (AU_PLUS_UN('DataTransfer_Aspects',),), - code = 'Vimmp', - # faire un validateur qui verifie que si on active reactions chimiques il faut que les masses molaires soient rentrees -) - -Component = OPER(nom='Component', sd_prod=composant, - SystemType = SIMP(typ='TXM', into=['Quantum system', 'Classical particle system', 'Continuum system'], statut='o',position='global',ang='Choose the type of system to be simulated. \n Current choice includes Quantum system, Classical-Particle system and Continuum system.'), - PhysicalDescription = FACT(statut = 'o',ang='Describe the physical system to be simulated.', - blocFluideMacro = prepareBlocFluideMacro(), - blocCPS = prepareBlocCPS(), - ), - blocModeleNumeriqueQuantum = prepareBlocSystemType('Quantum system'), - blocModeleNumeriqueClassical = prepareBlocSystemType('Classical particle system'), - blocModeleNumeriqueContinuum = prepareBlocSystemType('Continuum system'), - - # Exemple de reecriture d'un BLOC_XOR pour eviter la generation d'un type xsd double - # BCFluide = BLOC ( condition = 'SystemType == "Continuum system"', - # BoundaryConditions = FACT(statut = 'o', - # BoundaryCondition = prepareBoundaryCondition(), - # ), - # ), - # BCParticle = BLOC ( condition = 'SystemType == "Classical particle system"', - # BoundaryConditions = FACT(statut = 'o', - # BoundaryCondition = prepareBoundaryConditionParticle(), - # ), - # ), - BoundaryConditions = FACT(statut = 'o', - BoundaryCondition = prepareBoundaryCondition(), - ), -) - -Interpolator = OPER (nom= 'Interpolator',sd_prod=interpolator, - InterpolatorType=SIMP(statut='o', typ='TXM', into = list(dictInterpolatorFormat.keys()),ang='Define the type of interpolation operator.'), - blocMedCoupling= BLOC(condition="InterpolatorType == 'Med Coupling'", - TargetMeshIdentifier = SIMP(statut ='o', typ = meshIdentifier,ang='Define the target mesh. \n Requires at least one mesh defined in SpatialAspects.'), - InterpolationType = SIMP(statut ='o', typ='TXM', into=['P0P0','P0P1','P1P1','P1P0'],ang='Choose the type of interpolator used. \n Current choice includes P0P0, P0P1, P1P1 or P1P0 (i.e. the order of the interpolation used).'), - DefaultValueForUnmatchedMeshTargetEntity = SIMP(statut='o', typ ='R', defaut=-1), - ), -) -Converter = OPER (nom= 'Converter',sd_prod=converter) - -Interactions = PROC(nom='Interactions', - - IOAspects = FACT(statut='o',ang='Define the inputs/outputs for the interaction.', - #WorkingDirectory = SIMP(statut='o', typ='Repertoire', defaut='/tmp'), - FileTransfer = FACT(statut='f', max='**', - TransferId = SIMP(statut='o', typ=(fileId,'createObject'),), - monBlocFormat = creeBlocPourLesFichiers('1', '', listeFormatGenerique, FieldName=None ), - ), - MemoryTransfer = FACT(statut='f', max='**', - TransferId = SIMP(statut='o', typ=(memoryId,'createObject'),), - ), - CorbaTransfer = FACT(statut='f', max='**', - TransferId = SIMP(statut='o', typ=(corbaId,'createObject'),), - ), - ), - - Interaction = FACT(max = '**',ang='Define the type of interaction.', - InteractionName = SIMP(statut='o', typ=(interaction,'createObject'),), - From = SIMP(typ=modeleNumDuCompo, statut='o',ang='Choose the source for the interaction among existing components. \n Requires at least one component in the system.'), - To = SIMP(typ=modeleNumDuCompo, statut='o',ang='Choose the target for the interaction among existing components. \n Requires at least one component in the system.'), - # ApplyOnStateVariable = SIMP(statut ='o', typ=stateVariable), #PNPN A FAIRE : fenetreIhm='menuDeroulant' - InvolvedStateVariable = SIMP(statut ='o', typ=stateVariable,ang='Choose the State variable involved in the interaction. \n Requires at least one State Variable in the component.'), #PNPN A FAIRE : Seulement du composant d'origine From - InteractionConfiguration = FACT(statut='o',ang='Configure the type of interaction.', - - OutputId = SIMP(statut='o',typ=(transferId,),), - FieldName=SIMP(typ='TXM', statut='o'), - CouplingMode = SIMP(typ='TXM', statut='o', into =['Direct', 'DataProcessing'],ang='Choose the type of coupling. \n Current choice includes Direct (i.e. direct transfer of data) or DataProcessing (i.e. transfer of data that are processed).'), - - monBlocDataProcessing = BLOC (condition = "CouplingMode=='DataProcessing'", - DataProcessingNode = FACT(min=1, max='**', statut ='o',ang='Define the type of data-processing used in the interaction.', - Tool = SIMP(typ=mapper, statut ='o'), - OutputId = SIMP(statut='o',typ=(transferId,),), - FieldName = SIMP(typ='TXM', statut='o'), - monBlocInterpolator = BLOC (condition = "(Tool != None) and (isinstance(Tool,interpolator))", - FieldNature = SIMP(typ='TXM', statut='o', into=['ExtensiveMaximum', 'IntensiveMaximum', - 'ExtensiveConservation', 'IntensiveConservation']), #PN: DICO pour le into avec key==Tool - ), - ), - ), #fin monBlocDataProcessing - ), #fin InteractionConfiguration - ), -) - -EnvironementAspects = PROC(nom ="EnvironementAspects", - WorkflowName = SIMP(statut='o', typ='TXM', defaut='MyStudyCasename', ang='Define the name of the workflow simulated.'), #PN: -> path - WorkingDirectory = SIMP(statut='o', typ='Repertoire', defaut='/tmp', ang='Define the working directory for the simulation.'), -) - - -TemporalAspects = PROC(nom ="TemporalAspects", - Simulated_Time_Laps = FACT(statut='o', max='**', ang='Define the system temporal characteristics.', - name = SIMP(statut='o', typ=(simulatedTime,'createObject'), ang='Define the name of the temporal characteristics.',), - initialTime = SIMP(statut='o', typ='R', ang='Define the value of the initial time.'), - finalTime = SIMP(statut='o', typ='R', ang='Define the value of the final time.'), - timeDiscretization = SIMP(statut ='o', typ = 'TXM', into = ['Constant Time Step', 'Varying Time Step'], ang='Choose the temporal discretization (i.e. time step).\n Current choice includes Constant time step or Varying time step.'), - bloc_Constant = BLOC (condition = 'timeDiscretization == "Constant Time Step"', - constantTimeStep = SIMP (statut ='o', typ = 'R', ang='Define the value of the time step (in s).'), - ), - bloc_Varying = BLOC (condition = 'timeDiscretization == "Varying Time Step"', - CFLNumberCriteria = SIMP (statut ='o', typ = 'R', ang='Define the value of the CFL criteria for the time step.'), - FourierNumberCriteria = SIMP (statut ='o', typ = 'R', ang='Define the value of the Fourier criteria for the time step.'), - ), - ), -) - -# -# ----------------------------------------- -SpatialAspects = PROC(nom='SpatialAspects', -# ----------------------------------------- - regles = (AU_MOINS_UN('SystemGeometry', 'SpatialDiscretization'),), - - SystemGeometry = FACT(statut='f', max='**', ang='Define the system geometry.', - SystemGeometryName = SIMP(statut='o', typ=(systemGeometry, 'createObject'),ang='Define the name of the system geometry (used for CDM).'), - Shape = FACT(statut ='o', max='**', ang='Define the shape of the system.', - ShapeIdentifier = SIMP(statut='o', typ=(cadShape,'createObject'),max='**',), - ShapeNature = SIMP(statut='o', typ='TXM', into=['Typical Geometry', 'CAD'], ang='Choose the nature of the system shape. \n Current choice includes Typical geometry (e.g. cube, cylinder) or CAD defined.'), - - blocShape = BLOC(condition = 'ShapeNature == "Typical Geometry"', - Box = SIMP(statut='o', typ='TXM', into=['Cube', 'Sphere','Cylinder'], ang='Choose the typical geometry for the system. \n Current choice includes Cube, Sphere, Cylinder.' ), - blocCube = BLOC(condition = 'Box == "Cube"', - #Taille_Box_Englobante = SIMP(statut='o', typ='R', max=3, min =3) - # derait etre un Tuple(3) mais a faire apres la projection - #Size_Of_Bounding_Box = SIMP(statut='o', typ=Tuple(3), validators=VerifTypeTuple(('R','R','R'),),) - Size_Of_Bounding_Box = SIMP(statut='o', typ='R', max=3, min=3, ), - ), # fin blocCube - blocBoule = BLOC(condition = 'Box == "Sphere"', - Center = SIMP(statut='o', typ='R', max=3, min =3), - ),# fin b_Boule - blocCylinder = BLOC(condition = 'Box == "Cylinder"', - Heigth = SIMP(statut="o", typ='R', val_min=0.0, ang='Nanotube length [m]'), - ),# fin blocCylinder - blocBouleOuCylinder = BLOC(condition = 'Box == "Sphere" or Box == "Cylinder"', - Radius = SIMP(statut='o', typ='R', val_min=0.0, ang='radius length [m]') , - ),# fin blocBouleOuCylinder - ), # fin blocShape - blocCAO = creeBlocPourLesFichiers("Shape_Nature == 'CAD'",'Domain', ['txt','I-deas', 'Gmsh', 'top',],None), - ), # fin Shape - ),# SystemGeometry - - SpatialDiscretization = FACT(statut='f', max="**", ang='Define the spatial discretization for the system (i.e. mesh).', - MeshId = SIMP(statut='o', typ=(meshIdentifier,'createObject'), ang='Define the id of the mesh (used in the CDM)'), - MeshName = SIMP(statut='o', typ='TXM', ang='Define the name of the mesh (used in the CDM)'), - blocMeshFile = creeBlocPourLesFichiers("1 == 1",'Mesh',listeFormatGenerique,None), - GroupIdentifier = SIMP(statut='o', typ=(meshGroup,'createObject'),max='**',), - ),# SpatialDiscretization - - BoundaryConstraints = FACT(statut = 'f', ang='Define the boundary constraints for the system.', - Motion = FACT(statut='f', - MotionNature = SIMP(statut='o', typ='TXM', into=['Fixed boudary', 'Translational motion', 'Rotational motion', 'Scaling'], ang='Choose the type of motion for the boundary. \n Current choice includes Fixed boundary, Translational motion, Rotational motion and Scaling'), - - blocTranslationalMotion = BLOC(condition = 'MotionNature == "Translational motion"', - TranslationVelocity = SIMP(statut='o', typ='R', ang='Define the value of the translational velocity for the boundary.'), - boundaries = SIMP(statut='o', typ=spatialRegion,max='**', homo='SansOrdreNiDoublon' ), - ), - blocRotationalMotion = BLOC(condition = 'MotionNature == "Rotational motion"', - RotationRate = SIMP(statut='o', typ='R', ang='Define the value of the rotation rate for the boundary.'), - boundaries = SIMP(statut='o', typ=spatialRegion,max='**', homo='SansOrdreNiDoublon' ), - ), - blocFixed = BLOC(condition = 'MotionNature == "Fixed boudary"', - boundaries = SIMP(statut='o', typ=spatialRegion,max='**', homo='SansOrdreNiDoublon'), - ), - ), -#PN decrire page 28 - Mapping = FACT(statut='f', - ), - ), # Boundary_Constraints -) # fin Geometric_Domain - -#Le dictionnaire dict_condition est un dictionnaire utilisé par eficas -# pour les position='global_jdc' et position='inGetAttribut' -dict_condition={ - 'ChoiceOfApproach': ('Interactions', 'Component'), - 'Interactions' : ( 'Component'), -} - -#TEXTE_NEW_JDC = " " diff --git a/Vimmp/cata_CSAndCPS_v18_test_driver_1.comm b/Vimmp/cata_CSAndCPS_v18_test_driver_1.comm deleted file mode 100644 index 8eb0907d..00000000 --- a/Vimmp/cata_CSAndCPS_v18_test_driver_1.comm +++ /dev/null @@ -1,267 +0,0 @@ -Pressure=dynamicVariable() -Temperature=scalar() -Time1=simulatedTime() -CS_Num1=modeleNumDuCompo() -CS_Num2=modeleNumDuCompo() -Group_From_Mesh1=meshGroup() -Group_From_Mesh2=meshGroup() -Average_Velocity=dynamicVariable() -Epsilon=scalar() -outlet=meshGroup() -symmetry=meshGroup() -wall=meshGroup() -inlet1=meshGroup() -inlet2=meshGroup() -fluidfile=fileId() -CS_Num1__CS_Num2_Velocity=interaction() -CS_Num1__CS_Num2_Epsilon=interaction() -CS_Num1__CS_Num2_Pressure=interaction() -Time2=simulatedTime() -half_pipe_21_60=meshIdentifier() -half_pipe_15_40=meshIdentifier() -Interpolated_Pressure_File=fileId() -Interpolated_Rij_File=fileId() -Interpolated_Epsilon_File=fileId() -interpolated_Velocity_File=fileId() -Position=dynamicVariable() -Rij=scalar() -Colloids=userDiscrete() -Diameter=dynamicVariable() -Mass=dynamicVariable() -WallReboundCondition=wallInteractionId() -CS_Num1__CS_Num2_Rij=interaction() - -EnvironementAspects(WorkflowName='Inria', - WorkingDirectory='/tmp',); - -SpatialAspects(SpatialDiscretization=(_F(MeshId=half_pipe_21_60, - MeshName='half_pipe_generation_2inlet', - MeshFileFormat='Med', - MeshFileName=\ - '/home/eric/VIMMP/vimmptraining/app/fluide+mapper+particule/datafiles/half_pipe_21_60_2inlet.med', - GroupIdentifier=(inlet1,inlet2,outlet,symmetry,wall,Group_From_Mesh1,),), - _F(MeshId=half_pipe_15_40, - MeshName='half_pipe_generation_2inlet', - MeshFileFormat='Med', - MeshFileName=\ - '/home/eric/VIMMP/vimmptraining/app/fluide+mapper+particule/datafiles/half_pipe_15_40_2inlet.med', - GroupIdentifier=(inlet1,inlet2,outlet,symmetry,wall,Group_From_Mesh2,),),),); - -TemporalAspects(Simulated_Time_Laps=(_F(name=Time1, - initialTime=0.0, - finalTime=10.0, - timeDiscretization='Constant Time Step', - constantTimeStep=0.1,), - _F(name=Time2, - initialTime=10.0, - finalTime=15.0, - timeDiscretization='Constant Time Step', - constantTimeStep=0.01,),),); - -FluidComponent=Component(SystemType='Continuum system', - PhysicalDescription=_F(ComplexFluid=False, - FlowNature='Turbulent', - DensityInitialisation=_F(DensityValueType='Value', - Density=1.17862,), - ViscosityInitialisation=_F(ViscosityValueType='Value', - Viscosity=0.0183,), - TurbulenceForFlowDynamics=_F(TurbulenceModellingType='One-point moment', - RANSModel='Reynolds Stress Model (RSM)', - RSMChoice='Rotta',), - DynamicalVariables=_F(VariablesSimulation=True, - PressureDefinition=_F(Pressure=Pressure, - Initialisation=_F(InitialisationType=\ - 'ByValue', - Value=0.0,), - SourceTerm=False,), - VelocityDefinition=_F(AverageVelocity=Average_Velocity, - Initialisation=_F(InitialisationType=\ - 'ByValue', - Value=0.0,), - SourceTerm=False,), - EpsilonDefinition=_F(Name=Epsilon, - Initialisation=_F(InitialisationType=\ - 'ByValue', - Value=1.3e-06,), - SourceTerm=False,), - RijDefinition=_F(Name=Rij, - Initialisation=_F(InitialisationType=\ - 'ByValue', - Value=0.0004,), - SourceTerm=False,),), - Thermal=_F(ThermalEffects='Non thermal', - ReferenceTemperature=293.15,), - Scalars=_F(withScalars=False,),), - NumericalModel=_F(Identifier=CS_Num1, - SimulatedTimeLapse=Time1, - ChoiceOfApproach='Field_based', - NumericalMethod='FV', - Solver='Code_Saturne', - MeshIdentifiers=(half_pipe_21_60,),), - BoundaryConditions=_F(BoundaryCondition=(_F(TypeOfBoundaryCondition='Inlet', - ApplyOnGroups=(inlet1,inlet2,), - ApplyOnStateVariable=(Average_Velocity,), - FormulationOfBoundary='Dirichlet', - Consigne=\ - 'Choose between InletProfile,IntegratedValue,IntegratedVectorValue ', - IntegratedVectorValue=_F(U=1.0, - V=0.0, - W=0.0,),), - _F(TypeOfBoundaryCondition='Outlet', - ApplyOnGroups=(outlet,),), - _F(TypeOfBoundaryCondition='Wall', - ApplyOnGroups=(wall,), - VelocityAtBoundary=_F(SlipVelocity=0.0, - WallMotion=_F(U=0.0, - V=0.0, - W=0.0,),), - LevelOfDescription=_F(WallFunction='2-scale model (Log law)',),), - _F(TypeOfBoundaryCondition='Symmetry', - ApplyOnGroups=(symmetry,), - ApplyOnStateVariable=(Pressure,Average_Velocity,Epsilon,Rij,),),),),); - -PartComponent=Component(SystemType='Classical particle system', - PhysicalDescription=_F(Particles=_F(ParticleNature='Discrete Particle', - ParticleName=Colloids, - InitialNumberOfParticles=0, - TypeOfDiscreteParticle='Solid', - PrimaryOrAggregate='Primary Particle', - Properties=_F(Geometry='Sphere', - ReferenceParticleRadius=1e-05, - Weight=_F(Density=1000.0,), - Mechanical='Rigid',),), - AmbiantMediaInteraction=_F(MomentumExchange=_F(withMomentumExchange=True, - MomentumFieldType=('Hydrodynamic',), - DefineForceOnParticle=_F( - TypeOfHydroDynamicForce=('Drag',), - FieldAppliesOnAllSpecies=True, - NatureOfFluidFlow=_F( - NatureOfFlow='Turbulent', - TurbulenceModellingType='One-point moment', - RANSModel='Reynolds Stress Model (RSM)', - TurbulenceModelDispersion='Langevin', - InitialisationType='ByInteraction', - Consigne='Create and choose suitable interactions', - InteractionNameForPressure=CS_Num1__CS_Num2_Pressure, - InteractionNameForVelocity=CS_Num1__CS_Num2_Velocity, - InteractionNameForEpsilon=CS_Num1__CS_Num2_Epsilon, - InteractionNameForRij=CS_Num1__CS_Num2_Rij,),),), - MassExchange=_F(withMassExchange=False,), - EnergyExchange=_F(withEnergyExchange=False,), - AmbientInducedProcesses=_F(withAmbientInducedProcesses=\ - False,), - AdditionalSamplingOfAmbientMedia=_F( - withAdditionalSamplingOfAmbientMedia=False,),), - ParticleParticleInteraction=_F(BondedInteractions=_F(BondedParticles=False,), - ActionsAtDistance=_F(withActionsAtDistance=False,), - ContactPhenomena=_F(withContactPhenomena=False,),), - ParticleWallInteraction=_F(withParticleWallInteraction=True, - ParticleWallInteractionId=WallReboundCondition, - TypeOfWall=_F(Dynamics='Fixed position', - LevelOfDescription='Continuum', - SurfaceTexture='Smooth',), - ActionsAtDistance=_F(withActionsAtDistance=False,), - ContactPhenomena=_F(withContactPhenomena=True, - LevelOfDescription='Macroscopic', - OutcomeOfContact='Elastic collision',),), - ConstraintsAndReducedStatisticalDescription=_F(Constraint=_F(TypeOfConstraint=('Brownian dynamics',),),), - StateVector=_F(ParticleDiameter=_F(Diameter=Diameter, - ToSimulate=False,), - ParticleMass=_F(Mass=Mass, - ToSimulate=False,), - ParticlePosition=_F(Position=Position, - ToSimulate=True, - Initialisation=_F(InitialisationType='Not needed',),),),), - NumericalModel=_F(Identifier=CS_Num2, - SimulatedTimeLapse=Time2, - ChoiceOfApproach='Particle_based', - NumericalMethod='CFD_Discrete_Particle_based', - Solver='Code_Saturne', - MeshIdentifiers=(half_pipe_15_40,),), - BoundaryConditions=_F(BoundaryCondition=(_F(TypeOfBoundaryCondition='Inlet', - ApplyOnGroups=(inlet2,), - TypeOfParticleInjected=Colloids, - NumberOfParticleInjected=100, - InjectionEveryNTimeSteps=1, - DiameterOfParticleInjected=1e-05, - MassOfParticleInjected=4.2e-12, - PositionOfParticleInjected=_F(InitialisationMode='ByFormula',),), - _F(TypeOfBoundaryCondition='Outlet', - ApplyOnGroups=(outlet,inlet1,), - ApplyOnAllsParticle=True,), - _F(TypeOfBoundaryCondition='Symmetry', - ApplyOnGroups=(symmetry,), - ApplyOnStateVariable=(Position,Diameter,Mass,), - ApplyOnAllsParticle=True,), - _F(TypeOfBoundaryCondition='Wall', - ApplyOnGroups=(wall,), - ApplyOnStateVariable=(Position,), - ChoiceOfParticleWallInteraction=WallReboundCondition, - ApplyOnAllsParticle=True,),),),); - -MedCouplingComponent=Interpolator(InterpolatorType='Med Coupling', - TargetMeshIdentifier=half_pipe_15_40, - InterpolationType='P0P0', - DefaultValueForUnmatchedMeshTargetEntity=-1.0,); - -Interactions(IOAspects=_F(FileTransfer=(_F(TransferId=fluidfile, - FileFormat='Med', - FileName='results_Fluid_domain.med',), - _F(TransferId=interpolated_Velocity_File, - FileFormat='Med', - FileName='results_Fluid_Interpolated_Velocity.med',), - _F(TransferId=Interpolated_Rij_File, - FileFormat='Med', - FileName='results_Fluid_Interpolated_Rij.med',), - _F(TransferId=Interpolated_Epsilon_File, - FileFormat='Med', - FileName='results_Fluid_Interpolated_Epsilon.med',), - _F(TransferId=Interpolated_Pressure_File, - FileFormat='Med', - FileName='results_Fluid_Interpolated_Pressure.med',),),), - Interaction=(_F(InteractionName=CS_Num1__CS_Num2_Velocity, - From=CS_Num1, - To=CS_Num2, - InvolvedStateVariable=Average_Velocity, - InteractionConfiguration=_F(OutputId=fluidfile, - FieldName='Velocity', - CouplingMode='DataProcessing', - DataProcessingNode=_F(Tool=MedCouplingComponent, - OutputId=interpolated_Velocity_File, - FieldName='Velocity', - FieldNature='IntensiveMaximum',),),), - _F(InteractionName=CS_Num1__CS_Num2_Epsilon, - From=CS_Num1, - To=CS_Num2, - InvolvedStateVariable=Epsilon, - InteractionConfiguration=_F(OutputId=fluidfile, - FieldName='epsilon', - CouplingMode='DataProcessing', - DataProcessingNode=_F(Tool=MedCouplingComponent, - OutputId=Interpolated_Epsilon_File, - FieldName='epsilon', - FieldNature='IntensiveMaximum',),),), - _F(InteractionName=CS_Num1__CS_Num2_Pressure, - From=CS_Num1, - To=CS_Num2, - InvolvedStateVariable=Pressure, - InteractionConfiguration=_F(OutputId=fluidfile, - FieldName='Pressure', - CouplingMode='DataProcessing', - DataProcessingNode=_F(Tool=MedCouplingComponent, - OutputId=Interpolated_Pressure_File, - FieldName='Pressure', - FieldNature='IntensiveMaximum',),),), - _F(InteractionName=CS_Num1__CS_Num2_Rij, - From=CS_Num1, - To=CS_Num2, - InvolvedStateVariable=Rij, - InteractionConfiguration=_F(OutputId=fluidfile, - FieldName='Rij', - CouplingMode='DataProcessing', - DataProcessingNode=_F(Tool=MedCouplingComponent, - OutputId=Interpolated_Rij_File, - FieldName='Rij', - FieldNature='IntensiveMaximum',),),),),); -#VERSION_CATALOGUE:VimmpV16:FIN VERSION_CATALOGUE -#CHECKSUM:1a56e77d4b86096b3f2c539f0063fcc3 -:FIN CHECKSUM \ No newline at end of file diff --git a/Vimmp/cata_CSAndCPS_v18k.py b/Vimmp/cata_CSAndCPS_v18k.py deleted file mode 100644 index 926bd353..00000000 --- a/Vimmp/cata_CSAndCPS_v18k.py +++ /dev/null @@ -1,1643 +0,0 @@ -from Accas import * -VERSION_CATALOGUE='VimmpV16' - -class composant(ASSD):pass -class mapper(ASSD):pass -class converter(mapper):pass -class interpolator(mapper):pass -class modeleNumDuCompo(UserASSD):pass -class especeChimique(UserASSD):pass -class userParticle(UserASSDMultiple) :pass -class userAtom(userParticle) :pass -class userMolecule(userParticle) :pass -class userDiscrete(userParticle) :pass -class userDPD(userParticle) :pass - -class spatialRegion(UserASSD):pass -class cadShape(spatialRegion):pass -#class meshGroup(spatialRegion,UserASSDMultiple):pass -class meshGroup(UserASSDMultiple):pass -class meshIdentifier(spatialRegion):pass -class systemGeometry(UserASSD):pass -class simulatedTime(UserASSD):pass -class constitutiveRelation(UserASSD):pass -class interaction(UserASSD):pass -class transferId(UserASSD):pass -class fileId(transferId):pass -class memoryId(transferId):pass -class corbaId(transferId):pass - -class stateVariable(UserASSDMultiple) : pass -class scalar(stateVariable):pass -class dynamicVariable(stateVariable):pass -class dynamicVariableParticle(stateVariable):pass -class wallInteractionId(UserASSD):pass - - -dictTypModNumModNum = { - ('Continuum system','Particle_based') : ('SPH' , 'Lagrangian one-fluid-particle pdf'), #TODO 'Particle_based --> Particle_based - ('Continuum system','Field_based') : ('FV' , 'FEM', 'Spectral method'), - ('Classical particle system','Particle_based') : ('MD' , 'DPD', 'SDPD','SPH','CFD_Discrete_Particle_based'), - ('Classical particle system','Field_based') : ('LBM' ,), - ('Quantum system','Particle_based') : ('Particle method',), - ('Quantum system','Field_based') : ('Wave',), -} - -dictCodeModeleNumerique = { - 'Code_Saturne' : ('Lagrangian one-fluid-particle pdf', 'FV', 'CFD_Discrete_Particle_based',), - 'Fluent' : ('FV',), - 'Culgi Package': (), - 'DEM_SD' : ('Lagrangian one-fluid-particle pdf', 'FV', 'CFD_Discrete_Particle_based',), - 'DFTB+' : ('density functional tight binding method',), - 'DL_MESO_DPD' : ('Lagrangian one-fluid-particle pdf', 'FV', 'CFD_Discrete_Particle_based',), - 'DL_MESO_LBE' : ('Lagrangian one-fluid-particle pdf', 'FV', 'CFD_Discrete_Particle_based',), - 'DL_POLY_4' : ('Lagrangian one-fluid-particle pdf', 'FV', 'CFD_Discrete_Particle_based',), - 'GROMACS' : ('Lagrangian one-fluid-particle pdf', 'FV', 'CFD_Discrete_Particle_based',), - 'GROMACS_LS' : ('Lagrangian one-fluid-particle pdf', 'FV', 'CFD_Discrete_Particle_based',), - 'LAMMPS' : ('Lagrangian one-fluid-particle pdf', 'FV', 'CFD_Discrete_Particle_based', 'DPD',), - 'NWChem' : ('Lagrangian one-fluid-particle pdf', 'FV', 'CFD_Discrete_Particle_based',), - 'OpenFOAM' : ('Lagrangian one-fluid-particle pdf', 'FV', 'CFD_Discrete_Particle_based',), - 'Quantum EXPRESSO' : ('Particle method', 'Wave',), - 'RHEO_AGGRATE' : ('Particle method', 'Wave',), - 'RHEO_DROP' : ('Particle method', 'Wave',), - 'STAR_CCM+' : ('FV', 'Particles',), - 'Code Nill' : ('Spectral method', ), -} -# Le Code Nill est ajouté en dur au Solver - -dictCodeFormat = { - 'Code_Saturne' : ('Med', 'cgns', 'msh', 'des', 'unv', ), - 'Culgi Package': ('cof',), - 'DEM_SD' : ('geo', 'ascii'), - 'DFTB+' : ('geo', 'ascii'), - 'Fluent' : ('FluentFormat', ), - 'OpenFOAM' : ('OpenFoamFormat', 'Med', ), -} - -listeFormatGenerique =['Med', 'Cgns', 'msh','geo', 'ascii' ] - -dictInterpolatorFormat = { - 'Med Coupling' : ('Med',), -} -dictConvertorFormat = { - 'Gmsh' : ('Med', 'OpenFoamFormat'), -} - -dictTermeLE = { - ('Fields','Particles') : ('Fluid_Velocity_Field', - 'Fluid_Temperature_Field', - 'Fluid_Species_Mass_Fraction_Fluid',), - ('Particles','Fields') : ('Fluid_Particle_Momentum_Exchange_Field', - 'Fluid_Particle_Thermal_Exchange_Field', - 'Lagrangian one-particle pdfFluid_Particle_Mass_Source_Field', - 'Particle_Volumetric_Concentration_Modified_Fluid_Viscosity', - 'Particle_Extra_Stress_Tensor'), - ('Particles','Particles') : ('Pas encore fait'), - ('Fields','Fields') : ('Pas encore fait'), -} - -dictCodeConvertisseur = { - ('Saturne', 'OpenFOAM') : ('gmsh', 'Saturne2CDM and CDM2OpenFoam'), - ('Saturne', 'Fluent') : ('Saturne2CDM and CDM2Fluent'), - ('Fluent', 'OpenFOAM') : ('Fluent2CDM and CDM2OpenFoam'), -} - -listeFormatGenerique =['Med', 'Cgns', 'Gmsh', ] - -#---------------------------------------- -def prepareBlocSystemType(systemType) : -#---------------------------------------- - condition = "SystemType == '" + systemType + "'" - Identifier = SIMP(statut='o', typ=(modeleNumDuCompo,'createObject'),ang='Provide a name to identify the numerical model within the CDM') - SimulatedTimeLapse = SIMP(statut ='o', typ = simulatedTime,ang='Define the timelapse to be simulated. \n Requires TemporalAspects to be defined in order to choose one.') - ChoiceOfApproach = SIMP(statut='o', typ='TXM', into=['Field_based', 'Particle_based'], position='inGetAttribut',ang='Choose the approach to be used.\n Current choice includes Field-based and Particle-based approaches.') - - dicoArgs={} - dicoComment_NumericalMethod={} - dicoComment_NumericalMethod['Field_based'] = 'Choose the type of Field-Based approach. \nCurrent choice includes Lattice-Boltzmann Method (LBM)' - dicoComment_NumericalMethod['Particle_based'] = 'Choose the type of Particle-Based approach. \nCurrent choice includes Molecular Dynamics (MD), (Smoothed) Dissipative Particle Dynamics (DPD or SDPD), Smoothed Particle Hydrodynamics (SPH), CFD particle tracking.' - - for typeMod in ('Field_based', 'Particle_based'): - conditionType = "ChoiceOfApproach == '" + typeMod + "'" - NumericalMethod = SIMP(statut='o',typ='TXM', into=dictTypModNumModNum[systemType, typeMod], - position='global', intoXML=allValueInDict(dictTypModNumModNum),ang=dicoComment_NumericalMethod[typeMod]) - dicoBloc = {} - for modeleNumerique in list(dictTypModNumModNum[systemType,typeMod]): - conditionNum = "NumericalMethod == '" + modeleNumerique + "'" - setCode = set() - for code in dictCodeModeleNumerique.keys(): - if modeleNumerique in dictCodeModeleNumerique[code]: setCode.add(code) - # print('------------- conditionType -------->',conditionType) - if setCode ==set(): setCode.add('Code Nill') - Solver = SIMP(statut='o', typ='TXM', into=list(setCode), intoXML=list(dictCodeModeleNumerique.keys()), ang='Choose the solver to be used (among the list)') - monNomBloc = 'bloc_ModelName_' + modeleNumerique.replace(' ','_') #les noms de blocs ne peuvent pas avoir de blanc ! - if setCode !=set(): dicoBloc[monNomBloc]=BLOC(condition=conditionNum, nomXML='b_ModelName',Solver=Solver) - dicoArgs['blocModelType'+typeMod] = BLOC(condition=conditionType, NumericalMethod=NumericalMethod, **dicoBloc) - - blocMeshRef = BLOC(condition = '( (ChoiceOfApproach == "Field_based") and (NumericalMethod == "FV") ) or ' - '( (ChoiceOfApproach == "Particle_based") and (NumericalMethod == "CFD_Discrete_Particle_based") )', - MeshIdentifiers = SIMP(statut ='o', max ='**', typ = meshIdentifier, ang='Choose the mesh to be used.\n Requires at least one spatial discrezisation defined in SpatialAspects.', - metAJour=(('ApplyOnGroups', - 'self.etape.getChild("BoundaryConditions").getChild("BoundaryCondition")'),), - ),) - dicoArgs['blocMeshRef'] = blocMeshRef - NumericalModel = FACT(statut='o', max= '**', Identifier=Identifier, ChoiceOfApproach=ChoiceOfApproach, ang='Define the numerical model for the component', - SimulatedTimeLapse=SimulatedTimeLapse, **dicoArgs) - return BLOC(condition=condition, nomXML='b_systemType', NumericalModel=NumericalModel) - - -#----------------------------------- -def calculCommun(key1, key2, dico): -#----------------------------------- -# retourne la liste des valeurs communes a dico[key1] et dico[key2] - monSet=set() - if not key1 in dico: return () - if not key2 in dico: return () - for val in dico[key1]: - if val in dico[key2]: - monSet.add(val) - if monSet == set() : monSet.add ('No common format') - return list(monSet) - -#------------------------- -def allValueInDict(dico): -#------------------------- -# retourne la liste de toutes les valeurs possibles dans dico - monSet=set() - for clef in dico : - for val in dico[clef] : monSet.add(val) - return monSet - -#-------------------------------------------------------------------------------------------------- -def creeBlocPourLesFichiers(laCondition, Prefixe='Empty', ListeFormats=[], FieldName=None): -#--------------------------------------------------------------------------------------------------- -# il faut reflechir pour parametrer NomDuFichier -# et le type (existing... du fichier) -# et utiliser le creeBlocPourLesFichiers - SIMPFormatFichier = SIMP(statut='o', typ = 'TXM', into = tuple(ListeFormats) + ('All',), defaut='All' ,ang='Provide the file format') - dicoDesBlocs = {} - NomDuFichier = Prefixe+'FileName' - formatName = Prefixe+'FileFormat' - dicoDesBlocs[formatName] = SIMPFormatFichier - ListeFormatsboucle = tuple(ListeFormats) + ('All',) - for formatFich in ListeFormatsboucle : - dicoArgs={} - nomBloc = 'blocFormatFichier' + str(formatFich) - typeDesFichiers = ('Fichier', formatFich + " Files (*." + formatFich + ");;All Files (*)",'Sauvegarde') - blocCondition = formatName + " == '" + formatFich + "'" - dicoArgs[NomDuFichier] = SIMP(statut='o', typ = typeDesFichiers, nomXML=NomDuFichier ,ang='Provide the file name') - dicoDesBlocs[nomBloc] = BLOC(condition = blocCondition, **dicoArgs) - if FieldName: - SIMPFieldName = SIMP(statut='o', typ = 'TXM',) - dicoDesBlocs[FieldName] = SIMPFieldName - return BLOC(condition=laCondition, **dicoDesBlocs) - -#--------------------------------------------------------------------- -def prepareBlocAmbiantMediaField(condition, nomDuFact, nomDelaContante, FactComment, FieldComment) : -#--------------------------------------------------------------------- - dicoDesBlocs = {} - dicoDuFact = {} - dicoDuFact[nomDelaContante] = SIMP(typ='TXM', statut='o', defaut = nomDelaContante, homo='constant', ang=FieldComment) - monFact = FACT ( statut ='o', ang=FactComment, - **dicoDuFact, - SteadyState = SIMP(typ=bool, statut ='o', defaut = True,ang='Precise if the ambient field is a steady state'), - blocSteadyState = BLOC(condition = 'SteadyState == True', - FieldOrigin = SIMP(statut='o', into =['File', 'Value','Interaction'], typ ='TXM',ang='Define the origin of the field.\n Current choice includes an external File, a given Value or an Interaction (with a component)'), - blocValue = BLOC(condition = 'FieldOrigin == "Value"', - ConstantValue = SIMP(statut ='o', typ='R',ang='Give the value of the field'), - ), - blocFile = creeBlocPourLesFichiers('FieldOrigin == "File"', 'Position', ('Med', 'cgns' ), ''), - blocInteraction = BLOC(condition = 'FieldOrigin == "Interaction"', - InteractionName = SIMP(typ=interaction,statut='o',ang='Choose the component in interaction.\n Requires at least another component.'), - Consigne = SIMP(statut="o", homo="information", typ="TXM", defaut='Create and choose suitable interaction'), - ), - ), - blocConsigne = BLOC(condition = 'SteadyState == False', - Consigne = SIMP(statut="o", homo="information", typ="TXM", defaut='Not implemented yet. Will ask for a range of calculation steps.'), - ), #BlocNotSteady - FieldAppliesOnAllSpecies = SIMP(statut='o', typ=bool, defaut=True,ang='Precise if the field applies on all species (i.e. all types of particles defined in this Classical-Particle-System component)'), - blocPorteEspece = BLOC(condition = 'FieldAppliesOnAllSpecies == False ', - AppliesToSpecies = SIMP(statut='o', typ=userParticle, max= '**', homo='SansOrdreNiDoublon'), # faire un typ = "espece" - ), - ) - dicoDesBlocs[nomDuFact] = monFact - return BLOC(condition=condition,**dicoDesBlocs) - -#------------------------------ -def prepareTermeSource(condition): -#------------------------------ - return BLOC (condition=condition, - OriginOfSourceTerm = SIMP(statut='o', typ='TXM',into=['Interaction', 'Chemical Reaction', 'Other Scalar'],ang='Choose the origin of the source term. \n Current choice includes Interaction (i.e. with another component), Chemical Reaction, Other Scalars'), - blocOriginOfSourceTermInteraction = BLOC(condition = 'OriginOfSourceTerm == "Interaction"', - SourceTermInteraction = SIMP(typ=interaction,statut='o'), - Consigne = SIMP(statut="o", homo="information", typ="TXM", defaut='Create and choose suitable interaction'), - ), - blocOriginOfSourceTermOtherScalar = BLOC(condition = 'OriginOfSourceTerm == "Other Scalar"', - TakenFrom = SIMP (statut ='o', typ=scalar, ), #PNPN A FAIRE : fenetreIhm='menuDeroulant' - ), - ) - -#---------------------------------------- -def prepareTermeSourceParticle(condition): -#--------------------------------------- -# les differences avec prepareTermeSource sont -# le type de TakenFrom -# le into -# il est possible de factoriser les 2 fonctions en utilisant un intoXML mais cela -# affaiblit la possibilite de controle du XSD - - return BLOC (condition=condition, - OriginOfSourceTerm = SIMP(statut='o', typ='TXM',into=['Interaction', 'Other Particle'],ang='Choose the origin of the source term. \n Current choice includes Interaction (i.e. with another component), Other Particle (i.e. with another particle within this Classical-Particle-System component).'), - blocOriginOfSourceTermInteraction = BLOC(condition = 'OriginOfSourceTerm == "Interaction"', - SourceTermInteraction = SIMP(typ=interaction,statut='o'), - Consigne = SIMP(statut="o", homo="information", typ="TXM", defaut='Create and choose suitable interaction'), - ), - blocOriginOfSourceTermOtherScalar = BLOC(condition = 'OriginOfSourceTerm == "Other Particle"', - TakenFrom = SIMP (statut ='o', typ=userParticle, ), #PNPN A FAIRE : fenetreIhm='menuDeroulant' - ), - ) - -#--------------------------------------------------------------------------------- -def prepareFactTurbulence(statut, ajout=None , position=None, positionChoice=None): -#--------------------------------------------------------------------------------- - listInto = ['Fully resolved (DNS)', 'Spatial filtering (LES)', 'One-point moment', 'One-point PDF'] - if ajout != None : listInto.append(ajout) - return FACT(statut=statut, ang='Define how turbulence is simulated.', - TurbulenceModellingType = SIMP(typ='TXM', statut='o', into =listInto, position=position ,ang='Choose the model used for turbulence.\n Current choice includes DNS (Direct Numerical Simulation), LES (Large-Eddy Simulation), One-point moment and One-point PDF'), - -# --------------- One-point moment ------------------ - blocOnePoint = BLOC(condition= "TurbulenceModellingType == 'One-point moment'", - RANSModel = SIMP(statut="o", typ="TXM", position='global', - into=['Turbulent-Viscosity Model (TVM)', 'Reynolds Stress Model (RSM)'],ang='Choose the type of One-point moment model for turbulence.\n Current choice includes Turbulent-Viscosity Model and Reynolds-Stress Model'), - blocTVM = BLOC(condition= "RANSModel == 'Turbulent-Viscosity Model (TVM)'", - TVMChoice = SIMP(typ='TXM', statut='o', into=['K-Epsilon', 'K-Omega'] , position=positionChoice, ang='Choose the type of Turbulent-Viscosity model for turbulence.\n Current choice includes K-Epsilon and K-Omega models.'), ##PN PN : parametre vs reCalculeEtape - ), # fin blocTVM - blocRSM = BLOC(condition = "RANSModel == 'Reynolds Stress Model (RSM)'", - RSMChoice = SIMP(typ='TXM', statut='o', into=['Rotta', 'LRR-IP','LRR-QI','SSG'], position=positionChoice,ang='Choose the type of Reynolds-Stress model for turbulence.\n Current choice includes Rotta, LRR-IP, LRR-IQ and SSG models.'), - ), # fin blocRSM - ), # fin bloc_one_point - -# --------------- Spatial filtering (LES) ------------------ - blocSpatialFiltering = BLOC(condition = "TurbulenceModellingType == 'Spatial filtering (LES)'", - ChoiceOfDescription = SIMP(typ='TXM', statut='o', into=['One-point filtered variables', 'Filtered Density Function (FDF)'],ang='Choose the type of LES model for turbulence.\n Current choice includes One-point filtered variables models and Filtered-Density Function (FDF) models.'), - blocOnePoint = BLOC(condition = "ChoiceOfDescription == 'One-point filtered variables'", - SubgridScaleModel = SIMP(typ='TXM', statut='o', into=['No SGS', 'Smagorinsky','Dynamical model', 'SGS Transport Equations'],ang='Choose the type of One-point filtered variables model for turbulence.\n Current choice includes No SGS (Sub-Grid Scale), Smagorinsky, Dynamical model or SGS Transport Equations.'), - ),# fin bloc_OnePoint - blocFDF = BLOC(condition = "ChoiceOfDescription == 'Filtered Density Function (FDF)'", - SubgridScaleModel = SIMP(typ='TXM', statut='o', into=['SLM model for SGS', 'Viscous SLM model for SGS'],ang='Choose the type of FDF model for turbulence.\n Current choice includes SLM model for SGS (Simple Langevin Model) and Viscous SLM model for SGS'), - ),# fin bloc_FDF - ), # fin bloc_one_spatial - -# --------------- One-point PDF ------------------ - blocOnePointPdf = BLOC(condition = "TurbulenceModellingType == 'One-point PDF'", - ChoiceOfDescription = SIMP(typ='TXM', statut='o', into=['Velocity PDF', 'Velocity frequency PDF'],ang='Choose the type of One-point PDF model for turbulence.\n Current choice includes Velocity PDF and Velocity Frequency PDF'), - blocVPdf = BLOC(condition = "ChoiceOfDescription == 'Velocity PDF'", - StochasticModel = SIMP(typ='TXM', statut='o', into=['SLM','GLM'], defaut='SLM',ang='Choose the type of Velocity PDF model for turbulence.\n Current choice includes SLM (Standard Langevin Model) and GLM (Generalized Langevin Model)'), - ), # fin blocVPdf - blocVFPdf = BLOC(condition = "ChoiceOfDescription == 'Velocity frequency PDF'", - StochasticModel = SIMP(typ='TXM', statut='o', into=['Log-normal model','Gamma model','User-defined form'], defaut='SLM',ang='Choose the type of Velocity-Frequency PDF model for turbulence.\n Current choice includes Log-normal model, Gamma model and User-defined forms.'), - ), # fin blocVFPdf - ), # fin bloc_one_point_pdf - -# --------------- Fully resolved (DNS) ------------------ - # blocNoModel = BLOC(condition = "TurbulenceModellingType == 'Fully resolved (DNS)'", - # ChoiceOfApproach = SIMP(statut='o', typ='TXM', into=['Field_based (DNS)', 'Particle_based']), - # blocField = BLOC(condition = "ChoiceOfApproach == 'Field_based (DNS)'", - # NumericalMethod = SIMP(statut='o', typ='TXM', into=['FV', 'Spectral Method'], - # intoXML=['FV', 'Spectral Method','SPH', 'Vortex Method']), - # ),# fin bloc_Field - # blocNParticle = BLOC(condition = "ChoiceOfApproach == 'Particle_based'", - # NumericalMethod = SIMP(statut='o', typ='TXM', into=['SPH', 'Vortex Method'], - # intoXML=['FV', 'Spectral Method','SPH', 'Vortex Method']), - # ),# fin bloc_N_particle - # ), # fin bloc_no_model - ) # fin du return de la fonction factTurbulence - -#-------------------------------------- -def prepareFactTurbulenceForParticule(): -#-------------------------------------- - listInto = ['Fully resolved (DNS)', 'Spatial filtering (LES)', 'One-point moment', 'One-point PDF'] - return FACT(statut='o', - NatureOfFlow = SIMP(typ='TXM', statut='o', into =['Laminar', 'Turbulent'], position='global',ang='Choose the type of flow.\n Current choice includes laminar or turbulent.'), - blocTurbulent = BLOC( condition = 'NatureOfFlow == "Turbulent"', - TurbulenceModellingType = SIMP(typ='TXM', statut='o', into =listInto, position ='global', ang='Choose the model used for the turbulent flow.\n Current choice includes DNS (Direct Numerical Simulation), LES (Large-Eddy Simulation), One-point moment and One-point PDF'), -# --------------- One-point moment ------------------ - blocOnePoint = BLOC(condition= "TurbulenceModellingType == 'One-point moment'", - RANSModel = SIMP(statut="o", typ="TXM", into=['Turbulent-Viscosity Model (TVM)', 'Reynolds Stress Model (RSM)'],ang='Choose the type of One-point moment model for the turbulent flow.\n Current choice includes Turbulent-Viscosity Model and Reynolds-Stress Model'), - ), # fin bloc_one_point - -# --------------- Spatial filtering (LES) ------------------ - blocOneSpatial = BLOC(condition = "TurbulenceModellingType == 'Spatial filtering (LES)'", - ChoiceOfDescription = SIMP(typ='TXM', statut='o', into=['One-point filtered variables', 'Filtered Density Function (FDF)'],ang='Choose the type of LES model for the turbulent flow.\n Current choice includes One-point filtered variables models and Filtered-Density Function (FDF) models.'), - ), # fin bloc_one_spatial - -# --------------- One-point PDF ------------------ - blocOnePointPdf = BLOC(condition = "TurbulenceModellingType == 'One-point PDF'", - ChoiceOfDescription = SIMP(typ='TXM', statut='o', into=['Velocity PDF', 'Velocity frequency PDF'],ang='Choose the type of One-point PDF model for the turbulent flow.\n Current choice includes Velocity PDF and Velocity Frequency PDF'), - ), # fin bloc_one_point_pdf - #TypeOfHydroDynamicForce - blocTMD = BLOC(condition ='NatureOfFlow == "Turbulent" and TypeOfHydroDynamicForce != None and "Drag" in TypeOfHydroDynamicForce', - TurbulenceModelDispersion = SIMP (statut ='o', typ='TXM', into = ['Langevin'],ang='Choose the type of model for particle turbulent dispersion.\n Current choice includes Langevin model.'), - BlocInitialisationLangevin = BLOC(condition ='TurbulenceModelDispersion == "Langevin"', - InitialisationType = SIMP(statut='o', into =['ByInteraction', 'ByFile' ], typ ='TXM', ang='Choose how the turbulent field is initialized.\n Current choice includes by Interaction (with another component) or by File.'), - blocByFile = creeBlocPourLesFichiers('OrigineType == "ByFile"', '', ListeFormats = 'all', FieldName=None), - blocByInteraction = BLOC(condition = 'InitialisationType == "ByInteraction"', - Consigne = SIMP(statut="o", homo="information", typ="TXM", defaut='Create and choose suitable interactions'), - InteractionNameForPressure = SIMP(typ=interaction,statut='o', ang='Choose the origin of the pressure field.\n Requires another continuum component.', - filtre=( '(set(("Pressure",)).intersection(set(self.getEficasAttribut("InvolvedStateVariable"))) != set())', - ()), # Pressure en dur - ), - InteractionNameForVelocity = SIMP(typ=interaction,statut='o', ang='Choose the origin of the velocity field. \n Requires another continuum component.'), - InteractionNameForEpsilon = SIMP(typ=interaction,statut='o', ang='Choose the origin of the turbulent dissipation field. \n Requires another continuum component.'), - InteractionNameForRij = SIMP(typ=interaction,statut='o', ang='Choose the origin of the Reynolds Stress field. \n Requires another continuum component.'), - ), - ), - ), - ),# fin bloc Turbulent - ) # fin du return de la fonction factTurbulence - -#-------------------------------------------------------- -def prepareFactTurbulenceScalaire(statut, position=None): -#------------------------------------------------------- - listInto = ['Fully resolved (DNS)', 'Spatial filtering (LES)', 'One-point moment', 'One-point PDF'] - return FACT(statut=statut, - TurbulenceModellingType = SIMP(typ='TXM', statut='o', into =listInto, position=position, ang='Choose the model used for the turbulent transport of the scalar.\n Current choice includes DNS (Direct Numerical Simulation), LES (Large-Eddy Simulation), One-point moment and One-point PDF'), - -# --------------- One-point moment ------------------ - blocOnePoint = BLOC(condition= "TurbulenceModellingType == 'One-point moment'", - RANSModel = SIMP(statut="o", typ="TXM", ang='Choose the type of One-point moment model for the turbulent transport of the scalar.\n Current choice includes Algebraic flux models, Turbulent diffusivity models and Scalar-flux transport equations', - into=['Algebraic flux models','Turbulent diffusivity models', 'Scalar-flux transport equations']), - # Ce bloc consigne ne passe pas dans la projection XSD - # blocAlgebraic = BLOC(condition= "RANSModel == 'Algebraic flux models'", - blocConsigne = BLOC(condition= "RANSModel == 'Algebraic flux models'", - Consigne = SIMP(statut="o", homo="information", typ="TXM", defaut='Not implemented yet'), - ), # fin blocAlgebraic - blocTDM = BLOC(condition = "RANSModel == 'Turbulent diffusivity models'", - TDMChoice = SIMP(typ='TXM', statut='o', into=['SGDH', 'GGDH',],ang='Choose the type of turbulent-diffusivity models for the scalar.\n Current choice includes SGDH (standard gradient diffusion hypothesis) and GGDH (generalized gradient diffusion hypothesis)'), - ), # fin blocTDM - blocSFTE = BLOC(condition = "RANSModel == 'Scalar-flux transport equations'", - SFTEChoice = SIMP(typ='TXM', statut='o', into=['Pressure-scrambling model', 'EB-DFM',]), - ), # fin blocSFTE - ), # fin bloc_one_point - -# --------------- Spatial filtering (LES) ------------------ - blocOneSpatial = BLOC(condition = "TurbulenceModellingType == 'Spatial filtering (LES)'", - ChoiceOfDescription = SIMP(typ='TXM', statut='o', into=['One-point filtered variables', 'Filtered Density Function (FDF)'],ang='Choose the type of LES model for the turbulent transport of the scalar.\n Current choice includes One-point filtered variables, Filtered Density Function (FDF)'), - blocOnePoint = BLOC(condition = "ChoiceOfDescription == 'One-point filtered variables'", - SubgridScaleModel = SIMP(typ='TXM', statut='o', into=['No SGS model', 'SGS diffusivity', 'Transport eqs. for SGS scalar fluxes'],ang='Choose the type of One-point filtered variables model for the turbulent transport of the scalar.\n Current choice includes No SGS (Sub-Grid Scale), Smagorinsky, Dynamical model or SGS Transport Equations.'), - ),# fin bloc_OnePoint - blocFDF = BLOC(condition = "ChoiceOfDescription == 'Filtered Density Function (FDF)'", - SubgridScaleModel = SIMP(typ='TXM', statut='o', into=['Composition FDF', 'Scalar-velocity FDF', 'Micro-mixing model'],ang='Choose the type of FDF model for the turbulent transport of the scalar.\n Current choice includes Composition FDF, Scalar-velocity FDF and Micro-mixig models'), - ),# fin bloc_FDF - ), # fin bloc_one_spatial - -# --------------- One-point PDF ------------------ - blocOnePointPdf = BLOC(condition = "TurbulenceModellingType == 'One-point PDF'", - ChoiceOfDescription = SIMP(typ='TXM', statut='o', into=['Composition PDF','Velocity PDF', 'Micro-mixing models'],ang='Choose the type of One-point PDF model for the turbulent transport of the scalar.\n Current choice includes Composition PDF, Velocity PDF and Micro-mixing models'), - # blocCPdf = BLOC(condition = "(ChoiceOfDescription == 'Composition PDF') or (ChoiceOfDescription == 'Velocity PDF')", - # blocConsigne = BLOC(condition = "(ChoiceOfDescription == 'Composition PDF') or (ChoiceOfDescription == 'Velocity PDF')", - # Consigne = SIMP(statut="o", homo="information", typ="TXM", defaut='Not implemented yet.'), - # ), # fin blocCPdf - # blocVPdf = BLOC(condition = "ChoiceOfDescription == 'Velocity PDF'", - # ), # fin blocVPdf - blocMMMPdf = BLOC(condition = "ChoiceOfDescription == 'Micro-mixing models'", - ChoiceOfModel = SIMP(typ='TXM', statut='o', into=['IEM/CIEM','Curl model','Mapping','EMST'],ang='Choose the type of Micro-mixing model for the turbulent transport of the scalar.\n Current choice includes IEM/CIEM (Interaction by exchange with the mean), Curl model, Mapping and EMST (Euclidean minimum spanning tree).'), - ), # fin blocMMMdf - ), # fin bloc_one_point_pdf - -# --------------- Fully resolved (DNS) ------------------ - # blocNoModel = BLOC(condition = "TurbulenceModellingType == 'Fully resolved (DNS)'", - # ChoiceOfApproach = SIMP(statut='o', typ='TXM', into=['Field_based (DNS)', 'Particle_based']), - # blocField = BLOC(condition = "ChoiceOfApproach == 'Field_based (DNS)'", - # NumericalMethod = SIMP(statut='o', typ='TXM', into=['FV', 'Spectral Method'], - # intoXML=['FV', 'Spectral Method','SPH', 'Vortex Method']), - # ),# fin bloc_Field - # blocNParticle = BLOC(condition = "ChoiceOfApproach == 'Particle_based'", - # NumericalMethod = SIMP(statut='o', typ='TXM', into=['SPH', 'Vortex Method'], - # intoXML=['FV', 'Spectral Method','SPH', 'Vortex Method']), - # ),# fin bloc_N_particle - # ), # fin bloc_no_model - ) # fin du return de la fonction factTurbulence - - -#-------------------- -def prepareBlocCPS(): -#-------------------- - return BLOC(condition = 'SystemType == "Classical particle system"', - Particles = prepareParticles(), - -# ----------------------------- AmbiantMediaInteraction ---------------------------------- - AmbiantMediaInteraction = FACT(statut='o', ang='Define particle-ambient media interactions (when necessary)', - MomentumExchange = FACT(statut='o', - withMomentumExchange = SIMP(statut='o', typ=bool, defaut=False,ang='Activate if the ambient media interacts with particles via momentum exchange'), - blocMomentum = BLOC(condition = 'withMomentumExchange == True', - MomentumFieldType = SIMP(statut='o', typ='TXM', into=['Gravitational','Electric','Magnetic', 'Hydrodynamic'], max='**', homo='SansOrdreNiDoublon',position='reCalculeEtape'), - blocElectric = prepareBlocAmbiantMediaField('MomentumFieldType != None and "Electric" in MomentumFieldType', 'DefineElectricForce', 'E','Provide information on the ambient electric field','Define the value of the electric field') , - blocMagnetic = prepareBlocAmbiantMediaField('MomentumFieldType != None and "Magnetic" in MomentumFieldType', 'DefineMagneticForce', 'B','Provide information on the ambient magnetic field','Define the value of the magnetic field') , - blocGravite = BLOC(condition = 'MomentumFieldType != None and "Gravitational" in MomentumFieldType', - DefineGravityForce = FACT (statut='o', - InitialisationType = SIMP(statut='o', into =['ByValue', 'ByFile' ], typ ='TXM', defaut='ByValue',ang='Choose how the gravity field is initialized'), - blocInitValue= BLOC(condition = 'InitialisationType == "ByValue"', - G = SIMP(statut='o', typ='R', defaut=9.81,ang='Value of the gravitational acceleration (in m/s^2)'), - Direction = FACT (statut ='o', - GX = SIMP(statut='o', typ='R', ), - GY = SIMP(statut='o', typ='R', ), - GZ = SIMP(statut='o', typ='R', ), - ), - ), # fin blocInitValue - #PN : a completer pour fichier - FieldAppliesOnAllSpecies = SIMP(statut='o', typ=bool, defaut=True,ang='Precise if the field applies on all species (i.e. all types of particles defined in this Classical-Particle-System component)'), - blocPorteEspece = BLOC(condition = 'FieldAppliesOnAllSpecies == False ', - AppliesToSpecies = SIMP(statut='o', typ=userParticle, max= '**', homo='SansOrdreNiDoublon'), # faire un typ = "espece" - ), - ), # Fact Gravite - ), # bloc Gravite - blocHydro = BLOC(condition = 'MomentumFieldType != None and "Hydrodynamic" in MomentumFieldType', - DefineForceOnParticle = FACT (statut='o', ang='Define how the ambient media acts on the particle', - TypeOfHydroDynamicForce = SIMP(statut='o', max='**', typ='TXM', into=['Drag', 'Lift', 'Fluid Pressure Gradient', 'ThermoPhoresis', 'Brownian Motion'], homo='SansOrdreNiDoublon', position='global',ang='Choose the type of hydrodynamic force acting on a particle. \n Current choice includes Drag force, Lift force, Fluid Pressure Gradient, Thermophoresis and Brownian motion.'), - - FieldAppliesOnAllSpecies = SIMP(statut='o', typ=bool, defaut=True,ang='Precise if the field applies on all species (i.e. all types of particles defined in this Classical-Particle-System component)'), - blocPorteEspece = BLOC(condition = 'FieldAppliesOnAllSpecies == False ', - AppliesToSpecies = SIMP(statut='o', typ=userParticle, max= '**', homo='SansOrdreNiDoublon'), # faire un typ = "espece" - ), - NatureOfFluidFlow = prepareFactTurbulenceForParticule() - ), - ), - ), # fin blocMomentum - ), # fin MomentumExchange - MassExchange = FACT(statut='o', - withMassExchange = SIMP(statut='o', typ=bool, defaut=False,ang='Activate if the ambient media interacts with particles via mass exchange',), - blocMassExchange = BLOC(condition = 'withMassExchange == True', - MassExchangeFieldType = SIMP(statut='o', typ='TXM', into=['Evaporation','Condensation','Precipitation'], max='**', homo='SansOrdreNiDoublon',ang='Choose the type of mass exchange interaction with the particle. \n Current choice includes Evaporation, Condensation and Precipitation.'), - ), # fin blocMassExchange - ), # fin MassExchange - EnergyExchange = FACT(statut='o', - withEnergyExchange = SIMP(statut='o', typ=bool, defaut=False,ang='Activate if the ambient media interacts with particles via energy exchange'), - blocEnergyExchange = BLOC(condition = 'withEnergyExchange == True', - EnergyExchangeFieldType = SIMP(statut='o', typ='TXM', into=['HeatTransfer','Radiation','Combustion'], max='**', homo='SansOrdreNiDoublon',ang='Choose the type of energy exchange interaction with the particle. \n Current choice includes Heat Transfer, Radiation and Combustion.'), - ), # fin blocMassExchange - ), # fin EnergyExchange - AmbientInducedProcesses = FACT(statut='o', - withAmbientInducedProcesses = SIMP(statut='o', typ=bool, defaut=False,ang='Activate if the ambient media interacts with particles via specific induced processes'), - blocAmbientInducedProcesses = BLOC(condition = 'withAmbientInducedProcesses == True', - AmbientInducedProcessesType= SIMP(statut='o', typ='TXM', into=['Fragmentation',], max='**', homo='SansOrdreNiDoublon',ang='Choose the type of ambient induced processes acting on the particle. \n Current choice include Fragmentation.'), - bAmbientInducedProcessesType = BLOC(condition = '(AmbientInducedProcessesType != None) and ("Fragmentation" in AmbientInducedProcessesType)', - #PN : pb dans les locaux et l operateur in - LevelOfDescription= SIMP(statut='o', typ='TXM', into=['Fully-resolved','Mean-field approaches'],ang='Choose the level of description for the fragmentation of particles. \n Current choice includes Fully-resolved approaches (direct simulations of aggregates fragmentation) and Mean-field approaches (Population Balance Equation)'), - bMeanField = BLOC(condition = "LevelOfDescription == 'Mean-field approaches'", - FragmentationRate = SIMP(statut='o', typ='R',ang='Define the fragmentation rate (for PBE models)'), - DaughterSizeDistribution = SIMP(statut='o', typ='R',ang='Define the daughter size distribution (for PBE models)'), - ), - ), - ), # fin AmbientInducedProcesses - ), # fin EnergyExchange - AdditionalSamplingOfAmbientMedia = FACT(statut='o', - withAdditionalSamplingOfAmbientMedia = SIMP(statut='o', typ=bool, defaut=False,ang='Activate if additional sampling of the ambient media by particles'), - blocAdditionalSamplingOfAmbientMedia = BLOC(condition = 'withAdditionalSamplingOfAmbientMedia == True', - FluidProperties = FACT(statut='o', - VelocityGradient = SIMP(statut='o', typ = bool, defaut=False,ang='Activate sampling of the velocity gradient along particle trajectories'), - PressureGradient = SIMP(statut='o', typ = bool, defaut=False,ang='Activate sampling of the pressure gradient along particle trajectories'), - ), - ), # fin blocblocAdditionalSamplingOfAmbientMedia - ), # fin AdditionalSamplingOfAmbientMedia - ), # fin AmbiantMediaInteraction - - ParticleParticleInteraction = FACT(statut='o', max = "**",ang='Define particle-particle interactions (when necessary)', - # -------------------------------------------------------# - BondedInteractions = prepareBondedInteractions(), - ActionsAtDistance = prepareActionsAtDistance(), - ContactPhenomena = prepareContactPhenomena(), - ), # fin ParticleParticleInteraction - - ParticleWallInteraction = FACT(statut='o', max = "**",ang='Define particle-wall interactions (when necessary)', - withParticleWallInteraction = SIMP(statut='o', typ =bool, defaut=False,ang='Activate particle-wall interactions'), - bwithParticleWallInteraction = BLOC (condition = 'withParticleWallInteraction == True', - ParticleWallInteractionId= SIMP(typ=(wallInteractionId,'createObject'), statut='o',ang='Define a name for the type of particle-wall interaction (to be used within the CDM)'), - TypeOfWall = FACT(statut='o', - Dynamics = SIMP(statut='o', typ='TXM', into = ('Fixed position','Moving wall'),ang='Choose the type of wall dynamics.\n Current choice includes a Fixed wall and a Moving wall.'), - LevelOfDescription = SIMP(statut='o', typ='TXM', into = ('Discretized particles','Continuum'),ang='Choose the level of description of the wall.\n Current choice includes Discretized particles (i.e. microscopic description) and Continuum level (i.e. macroscopic description).'), - bContinuum = BLOC(condition = 'LevelOfDescription == "Continuum"', - SurfaceTexture = SIMP(statut='o', typ='TXM', into = ('Smooth','Rough'),ang='Choose the type of surface texture.\n Current choice includes a Smooth or a Rough wall.'), - ), - bDiscretized = BLOC(condition = 'LevelOfDescription == "Discretized particles"', - BondedInteractions = prepareBondedInteractions(True), - ), - ), - ActionsAtDistance = prepareActionsAtDistanceForWall(), - ContactPhenomena = prepareContactPhenomenaWall(), - ), - ),# fin ParticleWallInteraction - - ConstraintsAndReducedStatisticalDescription = FACT(statut='o', - Constraint= FACT(statut='o', - TypeOfConstraint = SIMP( typ='TXM', statut='o', into=['Quasi static methods','Brownian dynamics','Presumed transport','Time marching equilibrium','Time marching non equilibrium'],defaut=['Time marching non equilibrium',], max ='**', position='reCalculeEtape', homo='SansOrdreNiDoublon',ang='Choose the type of constraints on the classical particle system.\n Current choice includes Quasi-static methods (e.g. Geometric optimisation or Monte-Carlo equilibrium), Brownian Dynamics (overdamped limit), Presumed Transport (i.e. particle motion are known), Time-marching equilibrium (e.g. canonical distribution) and Time-marching non-equilibrium (e.g. unsteady particle-tracking in time).'), - ), - ), - -# transparents 163 et 164 -# si brownian Diameter mass et position -# Presumed transport -# No particle transport --> -# givencenter-of-mass transport __> position sera presente mais given transport - - StateVector = FACT(statut ='o',ang='Define the state vector for the particle (i.e. the variables attached to the particles).', - ParticleDiameter = FACT(statut ='o',ang='Activate the particle diameter in the State Vector', - Diameter = SIMP(typ=(dynamicVariable,'createObject'), statut='o', defaut ='Diameter', homo='constant'), - ToSimulate = SIMP(typ=bool, statut ='o', defaut = True,ang='Choose to track the evolution of the particle diameter'), - blocSimulatedDiameter = prepareBlocInitialisationParticle(condition = 'ToSimulate == True', termeSource=True), - ), - ParticleMass = FACT(statut ='o',ang='Activate the particle mass in the State Vector', - Mass = SIMP(typ=(dynamicVariable,'createObject'), statut='o', defaut ='Mass', homo='constant'), - ToSimulate = SIMP(typ=bool, statut ='o', defaut = True,ang='Choose to track the evolution of the particle mass'), - blocSimulatedMass = prepareBlocInitialisationParticle(condition = 'ToSimulate == True', termeSource=True), - ), - blocNonAggreateDescription = BLOC(condition = 'ParticleNature != "Discrete Particle" or (ParticleNature == "Discrete Particle" and TypeOfDiscreteParticle != "Solid") or (ParticleNature == "Discrete Particle" and TypeOfDiscreteParticle == "Solid" and PrimaryOrAggregate != "Assemblage / Aggregate")' , - ParticlePosition = FACT(statut ='o',ang='Activate the particle position in the State Vector', - Position = SIMP(typ=(dynamicVariable,'createObject'), statut='o', defaut ='Position', homo='constant'), - ToSimulate = SIMP(typ=bool, statut ='o', defaut = True,ang='Choose to track the evolution of the particle position'), - blocSimulatedPosition = prepareBlocInitialisationParticle(condition = 'ToSimulate == True', termeSource=False), - blocNoSimulatedPosition = prepareBlocOrigine(condition = 'ToSimulate == False') - ), - blocNoBrownianDynamics = BLOC(condition = '(TypeOfConstraint != None) and not("Brownian dynamics" in TypeOfConstraint)', - ParticleVelocity = FACT(statut ='o',ang='Activate the particle velocity in the State Vector', - Velocity = SIMP(typ=(dynamicVariable,'createObject'), statut='o', defaut ='Velocity', homo='constant'), - ToSimulate = SIMP(typ=bool, statut ='o', defaut = True,ang='Choose to track the evolution of the particle velocity'), - blocSimulatedVelocity = prepareBlocInitialisationParticle(condition = 'ToSimulate == True', termeSource=True), - blocNotSimulatedVelocity = prepareBlocOrigine(condition = 'ToSimulate == False',), - ), #fin VelocityDefinition - #blocHydrodynamic = BLOC(condition = '"Hydrodynamic" in MomentumFieldType and TurbulenceModellingType !="Fully resolved (DNS)"', - # FluidVelocitySeenByParticles = FACT(statut ='o',ang='Activate the fluid velocity seen in the State Vector', - # FluidSeenVelocity = SIMP(typ=(dynamicVariable,'createObject'), statut='o', defaut ='FluidSeenVelocity', homo='constant'), - # ToSimulate = SIMP(typ=bool, statut ='o', defaut = True,ang='Choose to track the evolution of the fluid velocity seen'), - # blocHydrodynamicVelocity = prepareBlocInitialisationParticle(condition = 'ToSimulate == True', termeSource=True), - #) , - #) , - ), #blocNoBrownianDynamics - ),# blocNotAgregateDescription - blocCoarseGrainedAgregateDescription = BLOC(condition = ' AgregateDescription == "Coarse Grained"', - AggregatePosition = FACT(statut ='o',ang='Activate the particle position in the State Vector', - Position = SIMP(typ=(dynamicVariable,'createObject'), statut='o', defaut ='Position', homo='constant'), - ToSimulate = SIMP(typ=bool, statut ='o', defaut = True,ang='Choose to track the evolution of the particle position'), - blocSimulatedPosition = prepareBlocInitialisationParticle(condition = 'ToSimulate == True', termeSource=False), - blocNoSimulatedPosition = prepareBlocOrigine(condition = 'ToSimulate == False') - ), - blocNoBrownianDynamics = BLOC(condition = '(TypeOfConstraint != None) and not("Brownian dynamics" in TypeOfConstraint)', - AggregateVelocity = FACT(statut ='o',ang='Activate the particle velocity in the State Vector', - Velocity = SIMP(typ=(dynamicVariable,'createObject'), statut='o', defaut ='Velocity', homo='constant'), - ToSimulate = SIMP(typ=bool, statut ='o', defaut = True,ang='Choose to track the evolution of the particle velocity'), - blocSimulatedVelocity = prepareBlocInitialisationParticle(condition = 'ToSimulate == True', termeSource=True), - blocNotSimulatedVelocity = prepareBlocOrigine(condition = 'ToSimulate == False',), - ), #fin VelocityDefinition - #blocHydrodynamic = BLOC(condition = '"Hydrodynamic" in MomentumFieldType and TurbulenceModellingType !="Fully resolved (DNS)"', - # FluidVelocitySeenByParticles = FACT(statut ='o',ang='Activate the fluid velocity seen in the State Vector', - # FluidSeenVelocity = SIMP(typ=(dynamicVariable,'createObject'), statut='o', defaut ='FluidSeenVelocity', homo='constant'), - # ToSimulate = SIMP(typ=bool, statut ='o', defaut = True,ang='Choose to track the evolution of the fluid velocity seen'), - # blocHydrodynamicVelocity = prepareBlocInitialisationParticle(condition = 'ToSimulate == True', termeSource=True), - # ) , - #) , - ), #blocNoBrownianDynamics - Morphologie = FACT(statut ='o',ang='Activate the particle velocity in the State Vector', - AggregateMorphology = SIMP(typ=(dynamicVariable,'createObject'), statut='o', defaut ='Velocity', homo='constant'), - ToSimulate = SIMP(typ=bool, statut ='o', defaut = True,ang='Choose to track the evolution of the particle velocity'), - blocSimulatedVelocity = prepareBlocInitialisationParticle(condition = 'ToSimulate == True', termeSource=True), - blocNotSimulatedVelocity = prepareBlocOrigine(condition = 'ToSimulate == False',), - ) , - ),# blocCOarseAgregateDescription - blocFineGrainedAgregateDescription = BLOC(condition = 'AgregateDescription == "Fine Grained"', - PrimaryParticlePosition = FACT(statut ='o',ang='Activate the particle position in the State Vector', - Position = SIMP(typ=(dynamicVariable,'createObject'), statut='o', defaut ='Position', homo='constant'), - ToSimulate = SIMP(typ=bool, statut ='o', defaut = True,ang='Choose to track the evolution of the particle position'), - blocSimulatedPosition = prepareBlocInitialisationParticle(condition = 'ToSimulate == True', termeSource=False), - blocNoSimulatedPosition = prepareBlocOrigine(condition = 'ToSimulate == False') - ), - blocNoBrownianDynamics = BLOC(condition = '(TypeOfConstraint != None) and not("Brownian dynamics" in TypeOfConstraint)', - PrimaryParticleVelocity = FACT(statut ='o',ang='Activate the particle velocity in the State Vector', - Velocity = SIMP(typ=(dynamicVariable,'createObject'), statut='o', defaut ='Velocity', homo='constant'), - ToSimulate = SIMP(typ=bool, statut ='o', defaut = True,ang='Choose to track the evolution of the particle velocity'), - blocSimulatedVelocity = prepareBlocInitialisationParticle(condition = 'ToSimulate == True', termeSource=True), - blocNotSimulatedVelocity = prepareBlocOrigine(condition = 'ToSimulate == False',), - ), #fin VelocityDefinition - #blocHydrodynamic = BLOC(condition = '"Hydrodynamic" in MomentumFieldType and TurbulenceModellingType !="Fully resolved (DNS)"', - # FluidVelocitySeenByParticles = FACT(statut ='o',ang='Activate the fluid velocity seen in the State Vector', - # FluidSeenVelocity = SIMP(typ=(dynamicVariable,'createObject'), statut='o', defaut ='FluidSeenVelocity', homo='constant'), - # ToSimulate = SIMP(typ=bool, statut ='o', defaut = True,ang='Choose to track the evolution of the fluid velocity seen'), - # blocHydrodynamicVelocity = prepareBlocInitialisationParticle(condition = 'ToSimulate == True', termeSource=True), - # ) , - # ) , - ), #blocNoBrownianDynamics - PrimaryParticleConnectivity = FACT(statut ='o',ang='Activate the particle velocity in the State Vector', - ParticleConnectivity = SIMP(typ=(dynamicVariable,'createObject'), statut='o', defaut ='Velocity', homo='constant'), - ToSimulate = SIMP(typ=bool, statut ='o', defaut = True,ang='Choose to track the evolution of the particle velocity'), - blocSimulatedVelocity = prepareBlocInitialisationParticle(condition = 'ToSimulate == True', termeSource=True), - blocNotSimulatedVelocity = prepareBlocOrigine(condition = 'ToSimulate == False',), - ) , - ),# blocNotAgregateDescription - # hydro - blocHydroCondition1erNiveau = BLOC(condition = '( ParticleNature != "Discrete Particle" '\ - ' or (ParticleNature == "Discrete Particle" and TypeOfDiscreteParticle != "Solid")'\ - ' or (ParticleNature == "Discrete Particle" and TypeOfDiscreteParticle == "Solid" and PrimaryOrAggregate != "Assemblage / Aggregate"))'\ - 'or (AgregateDescription == "Coarse Grained") or (AgregateDescription == "Fine Grained")', - blocNoBrownianDynamics2 = BLOC(condition = '(TypeOfConstraint != None) and not("Brownian dynamics" in TypeOfConstraint)', - blocHydrodynamic = BLOC(condition = '"Hydrodynamic" in MomentumFieldType and TurbulenceModellingType !="Fully resolved (DNS)"', - FluidVelocitySeenByParticles = FACT(statut ='o',ang='Activate the fluid velocity seen in the State Vector', - FluidSeenVelocity = SIMP(typ=(dynamicVariable,'createObject'), statut='o', defaut ='FluidSeenVelocity', homo='constant'), - ToSimulate = SIMP(typ=bool, statut ='o', defaut = True,ang='Choose to track the evolution of the fluid velocity seen'), - blocHydrodynamicVelocity = prepareBlocInitialisationParticle(condition = 'ToSimulate == True', termeSource=True), - ) , - ) , - ), - ), - ), #fin StateVector - )# fin du prepareBlocCps - -#---------------------- -def prepareParticles(): -#---------------------- - return FACT(statut='o', max='**', - ParticleNature = SIMP(statut='o', typ='TXM', position = 'reCalculeEtape', ang='Choose the nature of the particle.\n Current choice includes Atom, Molecule, Dissipative Particle (for DPD), Fluid particle, Discrete Particle (e.g. solid, bubble, droplet).', - into=['Atom', 'Molecule', 'Dissipative Particle', 'Fluid Particle', 'Discrete Particle']), - blocAtomName = BLOC(condition='ParticleNature == "Atom"', - ParticleName = SIMP(statut='o', typ=(userAtom,'createObject'), ang='Define the name of the atom (to be used for CDM).' ), - InitialNumberOfParticles = SIMP(statut='o', typ='I', val_min=0,ang='Define the number of atoms initially in the system'), - ), - - blocMoleculeName = BLOC(condition='ParticleNature == "Molecule"', - ParticleName = SIMP(statut='o', typ=(userMolecule,'createObject'),ang='Define the name of the molecule (used in the CDM).'), - InitialNumberOfParticles = SIMP(statut='o', typ='I', val_min=0,ang='Define the number of molecules initially in the system'), - ), - - blocDissipativeName = BLOC(condition='ParticleNature == "Dissipative Particle"', - ParticleName = SIMP(statut='o', typ=(userDPD,'createObject'),ang='Define the name of the DPD particle (used in the CDM).'), - InitialNumberOfParticles = SIMP(statut='o', typ='I', val_min=0,ang='Define the number of DPD initially in the system'), - ), - - blocDiscreteName = BLOC(condition='ParticleNature == "Discrete Particle"', - ParticleName = SIMP(statut='o', typ=(userDiscrete,'createObject'),ang='Define the name of the discrete particle (used in the CDM).'), - InitialNumberOfParticles = SIMP(statut='o', typ='I', val_min=0,ang='Define the number of discrete particle initially in the system'), - ), - - blocAtom = BLOC(condition='ParticleNature == "Atom"', - ChemicalSpecies = SIMP(statut='o', typ='TXM',ang='Define the type of the chemical atom'), - ElectricCharge = SIMP(statut='f', typ='R',ang='Define the electric charge of the atom (in Coulomb).'), - MagneticMoment = SIMP(statut='f', typ='R',ang='Define the magnetic moment of the atom (in A.m^2)'), - Radius = SIMP(statut='f', typ='R',ang='Define the radius of the atom (in m)'), # relevant ? - # ),# Atom - ), # fin b_Atom -# --------------- Molecules ------------------ - blocMolecule = BLOC(condition='ParticleNature == "Molecule"', - Shape = SIMP(statut='o', typ='TXM', into=['Linear', 'Trigonal Planar', 'Angular', 'Tetrahedral', 'Octahedral', 'Trigonal pyramid', 'Other'],ang='Choose the shape of the molecule.\n Current choice includes Linear, Trigonal Planar, Angular, Tetrahedral, Octahedral, Trigonal Pyramid or Other.'), - ElectricCharge = SIMP(statut='f', typ='R',ang='Define the electric charge of the molecule (in Coulomb)'), - MagneticMoment = SIMP(statut='f', typ='R',ang='Define the magnetic moment of the molecule (in A.m^2)'), - Radius = SIMP(statut='f', typ='R',ang='Define the radius of the molecule (in m)'), # relevant ? - ), #fin b_Molecule -# --------------- Dissipative ------------------ - blocDissipative = BLOC(condition='ParticleNature == "Dissipative Particle"', - BondedParticles = SIMP(statut="o", typ=bool, defaut=False,ang='Define the particles that are bonded together'), - ), # b_Dissipative - -# --------------- Discrete Particle ------------------ - blocDiscrete = BLOC(condition='ParticleNature == "Discrete Particle"', - TypeOfDiscreteParticle = SIMP(statut='o', typ='TXM', position = 'reCalculeEtape', into=['Solid', 'Droplets', 'Bubbles','Bio Organism'],ang='Choose the type of discrete particles.\n Current choice includes Solid particles (e.g. colloids, aerosols or dust), Droplets, Bubbles and Bio-organisms (e.g. bacteria).'), - blocTypeDPSolid = BLOC(condition ='TypeOfDiscreteParticle == "Solid"', - PrimaryOrAggregate = SIMP(statut='o', position='reCalculeEtape', typ='TXM', into=['Primary Particle', 'Assemblage / Aggregate'], ang='Choose the type of solid particle. \n Current choice includes Primary particles (i.e. indivisible objects) and Assemblage/Aggregate (i.e. objects that can break into smaller elements).'), - b_SolidAggregate = BLOC(condition='PrimaryOrAggregate == "Assemblage / Aggregate"', - AgregateDescription = SIMP(statut='o', typ='TXM', into=['Coarse Grained', 'Fine Grained'], position = 'reCalculeEtape'), - blocAgregateFineGrainedDescription = BLOC(condition='AgregateDescription == "Fine Grained"', - ParticulePrimaryProperties = FACT (statut ='o', - Geometry = SIMP(statut='o', typ='TXM', into=['Sphere', 'Ellipsoids', 'Other Shape'], ang='Choose the shape of particles. \n Current choice includes Sphere, Ellipsoids and Other Shapes.'), - b_geom_Sphere = BLOC(condition = 'Geometry == "Sphere"', - ReferenceParticleRadius = SIMP(statut='o', typ ='R', val_min = 0, ang='Define a reference particle radius (in m).'), - ), - Weight = FACT(statut = 'o',ang='Define the weight of particles (either through a mass or a density). ', - Consigne = SIMP(statut="o", homo="information", typ="TXM", defaut='Choose between Mass or Density'), - Mass = SIMP(statut='f', typ ='R', val_min = 0,ang='Define the mass of the particle (in kg).'), - Density = SIMP(statut='f', typ ='R', val_min = 0, ang='Define the density of the particle (in kg/m^3).'), - ), - - ), # ParticulePrimaryProperties - ), # blocAgregateFineGrainedDescription - blocAgregateCoarseGrainedDescription = BLOC(condition='AgregateDescription == "Coarse Grained"', - AgregateProperties = FACT (statut ='o', - Consigne = SIMP(statut="o", homo="information", typ="TXM", defaut='Choose between GyrationRadius, HydrodynamicRadius, EnclosedSphereRadius'), - GyrationRadius = SIMP(statut='f', typ ='R', val_min = 0), - EnclosedSphereRadius = SIMP(statut='f', typ ='R', val_min = 0), - HydrodynamicRadius = SIMP(statut='f', typ ='R', val_min = 0), - Weight = FACT(statut = 'o',#ang='Define the weight of particles (either through a mass or a density) ', - Consigne = SIMP(statut="o", homo="information", typ="TXM", defaut='Choose between Mass or Density'), - Mass = SIMP(statut='f', typ ='R', val_min = 0,ang='Define the mass of the particle (in kg).'), - Density = SIMP(statut='f', typ ='R', val_min = 0, ang='Define the density of the particle (in kg/m^3).'), - ), - Morphology = FACT(statut='o', - Consigne = SIMP(statut="o", homo="information", typ="TXM", defaut='Choose between CoordinationNumber, FractalDimension or Porosity'), - FractalDimension = SIMP(statut='f', typ='R', ang='Define the number of primary particles within an aggregate'), - Porosity = SIMP(statut='f', typ='R', ang='Define the porosity of the aggregate'), - CoordinationNumber = SIMP(statut='f', typ='R', ang='Define the CoordinationNumber of the aggregate'), - ), - Cohesion = FACT(statut='o', - Consigne = SIMP(statut="o", homo="information", typ="TXM", defaut='Choose between Force and PotentialEnergy'), - Force = SIMP(statut='f', typ='R', ang='Define the porosity of the aggregate'), - PotentialEnergy = SIMP(statut='f', typ='R', ang='Define the CoordinationNumber of the aggregate'), - ), - ), - Consigne = SIMP(statut="o", homo="information", typ="TXM", defaut='Describe contituent particles if needed'), - ParticleCOnstituentProperties=FACT( statut='f', max='**', - name = SIMP(statut='o', typ='TXM'), - numberOfPrimaryParticle = SIMP(statut='o', typ='I'), - Weight = FACT(statut = 'o',ang='Define the weight of particles (either through a mass or a density). ', - Consigne = SIMP(statut="o", homo="information", typ="TXM", defaut='Choose between Mass or Density'), - Mass = SIMP(statut='f', typ ='R', val_min = 0,ang='Define the mass of the particle (in kg).'), - Density = SIMP(statut='f', typ ='R', val_min = 0, ang='Define the density of the particle (in kg/m^3).'), - ), - ), - ), # blocAgregateCoarseGrainedDescription - - - #Consigne = SIMP(statut="o", homo="information", typ="TXM", defaut='Choose optional properties'), - #NumberOfPrimaryParticle = SIMP(statut ='f',typ='I', ang='Define the fractal dimension of the aggregate'), - #EquivalentRadius = SIMP(statut='f', typ='R', ang='Define the equivalent radius of the aggregate (in m)'), - ), # b_SolidAggregate - ), # blocTypeDPSolid -# --------------- Bio Organism ------------------ - blocTypeBioSolid = BLOC(condition='TypeOfDiscreteParticle == "Bio Organism"', - TypeOfOrganism = SIMP(statut='o', typ='TXM', into=['Unicellular', 'Multicellular'], ang='Choose the type of bio-organism. \n Current choice includes Unicellular (i.e. indivisible elements) or Multicellular (i.e. composed of several elements) organisms.'), - blocUnicellular = BLOC(condition ='TypeOfOrganism=="Unicellular"', - Unicellular = SIMP(statut='o', typ='TXM', into=["Bacteria"], defaut='Bacteria', ang='Choose the type of unicellular organism.\n Current choice includes Bacteria.') - ), - b_Multicellular = BLOC(condition ='TypeOfOrganism=="Multicellular"', - Multicellular = SIMP(statut='o', typ='TXM', into=["Animal","Fungus","Plant"], ang='Choose the type of multicellular organism.\n Current choice includes Animal, Fungus and Plant.') - ), - ), # b_TypeBio_Solid - - blocNonAggreaat = BLOC(condition ='TypeOfDiscreteParticle != "Solid" or PrimaryOrAggregate != "Assemblage / Aggregate"' , -# --------------- Particule Properties ------------------ - Properties = FACT(statut ='o', ang='Define the properties of particles', - Geometry = SIMP(statut='o', typ='TXM', into=['Sphere', 'Ellipsoids', 'Other Shape'], ang='Choose the shape of particles. \n Current choice includes Sphere, Ellipsoids and Other Shapes.'), - b_geom_Sphere = BLOC(condition = 'Geometry == "Sphere"', - ReferenceParticleRadius = SIMP(statut='o', typ ='R', val_min = 0, ang='Define a reference particle radius (in m).'), - ), - Weight = FACT(statut = 'o',ang='Define the weight of particles (either through a mass or a density). ', - Consigne = SIMP(statut="o", homo="information", typ="TXM", defaut='Choose between Mass or Density'), - Mass = SIMP(statut='f', typ ='R', val_min = 0,ang='Define the mass of the particle (in kg).'), - Density = SIMP(statut='f', typ ='R', val_min = 0, ang='Define the density of the particle (in kg/m^3).'), - ), - Mechanical = SIMP(statut='o', typ='TXM', into=['Rigid', 'Flexible', 'Deformable'],ang='Choose the type of mechanical properties for particles. \n Current choice includes Rigid, Flexible and Deformable bodies.'), - ElectroMagnetic = FACT(statut = 'f', - ElectricCharge = SIMP(statut='o', typ='R', ang='Define the electric charge of the aggregate (in Coulomb).'), - MagneticMoment = SIMP(statut='o', typ='R', ang='Define the magnetic moment of the aggregate (in A.m^2)'), - ), - ), # Properties - ),# fin b_NonAgregate - ), # b_Discrete - ) # fin Particle - -#--------------------------------- -def prepareContactPhenomena(): -#--------------------------------- - return FACT(statut='o', max= "**", - withContactPhenomena = SIMP(statut='o', typ=bool, defaut=False, ang='Activate contact forces between particles (i.e. inter-particle collision).'), - bwithContact = BLOC(condition = 'withContactPhenomena == True', - LevelOfDescription = SIMP(statut='o', typ='TXM', into=[ 'Microscopic', 'Macroscopic'], ang='Choose the level of description of contact forces between particles. \n Current choice includes Microscopic descriptions (with precise contact forces) and Macroscopic descriptions (at the continuum level).'), - bMicroscopic = BLOC(condition = 'LevelOfDescription == "Microscopic"', - DescriptionOfContact = SIMP(statut='o', typ='TXM', into=[ 'Contact distance (cutoff)', 'Adhesion theories'], ang='Choose how contact forces are described. \n Current choice includes Contact distance (i.e. force calculated with a cutoff distance) or Adhesion theories (e.g. JKR or DMT theories).'), - ), - bMacroscopic = BLOC(condition = 'LevelOfDescription == "Macroscopic"', - OutcomeOfContact = SIMP(statut='o', typ='TXM', into=[ 'Sticky collision','Elastic collision','Inelastic collision', 'Mixed collisional event'], ang='Choose the macroscopic model for inter-particle contact. \n Current choice includes Sticky collisions (i.e. particles are stuck), Elastic collisions (i.e. rebound) or Inelastic collisions (i.e. rebound without energy conservation) or Mixed collisional events.'), - ), - TreatmentOfCollisions = SIMP(statut='o', typ='TXM', into=[ 'No collision', 'Binary/multiple particle collisions', 'Collision-induced fragmentation'], fenetreIhm = 'menuDeroulant', defaut = 'No collision', ang='Choose the treatment for the inter-particle collision. \n Current choice includes No collision (i.e. particles do not see each other), Binary/Multiple collision (i.e. with two or more particles) or Collision-induced fragmentation (i.e. breakup of the particle)'), - ), #bwithActions - )#FACT - -#--------------------------------- -def prepareContactPhenomenaWall(): -#--------------------------------- - return FACT(statut='o', max= "**", - withContactPhenomena = SIMP(statut='o', typ=bool, defaut=False, ang='Activate contact forces between particle and wall (i.e. collision with a surface).'), - bwithContact = BLOC(condition = 'withContactPhenomena == True', - LevelOfDescription = SIMP(statut='o', typ='TXM', into=[ 'Microscopic', 'Macroscopic'], ang='Choose the level of description of contact forces between particles and surfaces. \n Current choice includes Microscopic descriptions (with precise contact forces) and Macroscopic descriptions (at the continuum level).'), - bMicroscopic = BLOC(condition = 'LevelOfDescription == "Microscopic"', - DescriptionOfContact = SIMP(statut='o', typ='TXM', into=[ 'Contact distance (cutoff)', 'Adhesion theories'], ang='Choose how particle-surface contact forces are described. \n Current choice includes Contact distance (i.e. force calculated with a cutoff distance) or Adhesion theories (e.g. JKR or DMT theories).'), - ), - bMacroscopic = BLOC(condition = 'LevelOfDescription == "Macroscopic"', - OutcomeOfContact = SIMP(statut='o', typ='TXM', into=[ 'Sticky collision','Elastic collision','Inelastic collision', 'Mixed collisional event'], ang='Choose the macroscopic model for particle-surface contact. \n Current choice includes Sticky collisions (i.e. particle stick/deposit on surfaces), Elastic collisions (i.e. rebound) or Inelastic collisions (i.e. rebound without energy conservation) or Mixed collisional events.'), - ), - ), #bwithActions - )#FACT - -#--------------------------------- -def prepareActionsAtDistance(): -#--------------------------------- - return FACT(statut='o', max= "**", - withActionsAtDistance = SIMP(statut='o', typ=bool, defaut=False, ang='Activate short- and long- range inter-particle forces.'), - bwithActions = BLOC(condition = 'withActionsAtDistance == True', - TypeOfActionAtDistance = SIMP(statut='o', typ='TXM', into=[ 'electro_magnetic', 'Inter-surface forces', 'Fluid-like forces','Fluid-mediated forces', 'Biological forces','Radiative Effects'], position='global',fenetreIhm='menuDeroulant', ang='Choose the type of short- or long-range inter-particle force. \n Current choice includes Electro-Magnetic forces, Inter-surface forces (e.g. van der Waals or Lennard-Jones forces), Fluid-like forces (for fluid particles only), Fluid-mediated forces (e.g. capillary forces, hydrophilic/hydrophobic, electrostatic double-layer forces), Biological forces, Radiative effects.'), - - blocElec = BLOC(condition = 'TypeOfActionAtDistance == "electro_magnetic"', - Permittivity = SIMP(statut='o', typ='R', ang='Define the particle relative permittivity'), - Magnetic = SIMP(statut='o', typ=bool, defaut=False, ang='Activate magnetic forces'), - blocMagnetic = BLOC(condition = 'Magnetic == True', - Permeability = SIMP(statut='o', typ='R', ang='Define the particle permeability (in H/m)'), - ), # bloc_magnetic - Consigne = SIMP(statut="o", homo="information", typ="TXM", defaut='Enter ElectricCharge for Particle'), - # Creation PN activation ElectricCharge - ),# fin bloc_elec - - blocInterSurface = BLOC(condition = 'TypeOfActionAtDistance == "Inter-surface forces"', - TypeInterSurfaceForce = SIMP(statut='o', typ='TXM', into = [ 'Lennard_Jones', 'Steric', 'Soft_Potential','van der Waals'], ang='Choose the type of inter-surface forces between particles. \n Current choice includes Lennard-Jones, Steric, van der Waals or Soft-potential forces.'), - blocvanderWaals = BLOC(condition = "TypeInterSurfaceForce == 'van der Waals'", - HamakerConstant = SIMP(statut='o', typ='R', val_min=0, ang='Define the Hamaker constant between bodies (in J).'), - ), - blocLennard = BLOC(condition = "TypeInterSurfaceForce == 'Lennard_Jones'", - LennardJonesRadius = SIMP(statut='o', typ='R', val_min=0, ang='Define the Lennard-Jones cut-off radius (in m).'), - DepthOfThePotentialWell = SIMP(statut='o', typ='R', val_min=0, ang='Define the Lennard-Jones potential well (in J).'), - ), # fin b_Lennard - - blocParamSoftPotential = BLOC(condition = "TypeInterSurfaceForce == 'Soft_Potential'", - GrootWarrenRepulsion = SIMP(statut='o', typ='R', defaut=25.0, val_min=0, ang='Define the maximum repulsion.'), - GrootWarrenCutoff = SIMP(statut='o', typ='R', defaut=1.0, val_min=0, ang='Define the cut-off distance fro repulsion.'), - DragCoefficient = SIMP(statut='o', typ='R', defaut=4.5, val_min=0, ang='Define the drag coefficient in the dissipative force.'), - DragForceCutoff = SIMP(statut='o', typ='R', defaut=1.0, val_min=0, ang='Define cut-off distance for the dissipative and random forces.'), - ), # b_Param_Soft_Potential - # blocParamSoftPotentialOrLennard = BLOC(condition = "TypeInterSurfaceForce == 'Soft_Potential' or TypeInterSurfaceForce == 'Lennard_Jones'", - # ParticlesPairs = SIMP(statut='o', max=2, typ=userParticle, ang='Choose the pair of particles involved.\n Requires at least one particle in the Classical Particle System.'), - # ), # b_Param_Soft_PotentialOrLennard - ParticlesPairs = SIMP(statut='o', max=2, typ=userParticle, ang='Choose the pair of particles involved.\n Requires at least one particle in the Classical Particle System.'), - ), # bloc_VdW - - ) # fin bloc - ) # fin prepareActionsAtADistance - -#--------------------------------- -def prepareActionsAtDistanceForWall(): -#--------------------------------- - return FACT(statut='o', max= "**", - withActionsAtDistance = SIMP(statut='o', typ=bool, defaut=False, ang='Activate short- and long- range particle-wall forces.'), - bwithActions = BLOC(condition = 'withActionsAtDistance == True', - TypeOfActionAtDistance = SIMP(statut='o', typ='TXM', into=[ 'electro_magnetic', 'Inter-surface forces', 'Fluid-like forces','Fluid-mediated forces', 'Biological forces','Radiative Effects'], position='global',fenetreIhm='menuDeroulant', ang='Choose the type of short- or long-range particle-wall force. \n Current choice includes Electro-Magnetic forces, Inter-surface forces (e.g. van der Waals or Lennard-Jones forces), Fluid-like forces (for fluid particles only), Fluid-mediated forces (e.g. capillary forces, hydrophilic/hydrophobic, electrostatic double-layer forces), Biological forces, Radiative effects.'), - - blocElec = BLOC(condition = 'TypeOfActionAtDistance == "electro_magnetic"', - Permittivity = SIMP(statut='o', typ='R', ang='Define the particle relative permittivity'), - Magnetic = SIMP(statut='o', typ=bool, defaut=False, ang='Activate magnetic forces'), - blocMagnetic = BLOC(condition = 'Magnetic == True', - Permeability = SIMP(statut='o', typ='R', ang='Define the particle permeability (in H/m)'), - ), # bloc_magnetic - # Creation PN activation ElectricCharge - ),# fin bloc_elec - - blocInterSurface = BLOC(condition = 'TypeOfActionAtDistance == "Inter-surface forces"', - TypeInterSurfaceForce = SIMP(statut='o', typ='TXM', into = [ 'Lennard_Jones', 'Steric', 'Soft_Potential','van der Waals'], ang='Choose the type of inter-surface forces between particles and walls. \n Current choice includes Lennard-Jones, Steric, van der Waals or Soft-potential forces.'), - blocvanderWaals = BLOC(condition = "TypeInterSurfaceForce == 'van der Waals'", - HamakerConstant = SIMP(statut='o', typ='R', val_min=0, ang='Define the Hamaker constant between bodies (in J).'), - ), - blocLennard = BLOC(condition = "TypeInterSurfaceForce == 'Lennard_Jones'", - LennardJonesRadius = SIMP(statut='o', typ='R', val_min=0, ang='Define the Lennard-Jones cut-off radius (in m).'), - DepthOfThePotentialWell = SIMP(statut='o', typ='R', val_min=0, ang='Define the Lennard-Jones potential well (in J).'), - ), # fin b_Lennard - - blocParamSoftPotential = BLOC(condition = "TypeInterSurfaceForce == 'Soft_Potential'", - GrootWarrenRepulsion = SIMP(statut='o', typ='R', defaut=25.0, val_min=0, ang='Define the maximum repulsion.'), - GrootWarrenCutoff = SIMP(statut='o', typ='R', defaut=1.0, val_min=0, ang='Define the cut-off distance fro repulsion.'), - DragCoefficient = SIMP(statut='o', typ='R', defaut=4.5, val_min=0, ang='Define the drag coefficient in the dissipative force.'), - DragForceCutoff = SIMP(statut='o', typ='R', defaut=1.0, val_min=0, ang='Define cut-off distance for the dissipative and random forces.'), - ), # b_Param_Soft_Potential - ), # bloc_VdW - - blocActionChoisie = BLOC (condition = 'TypeOfActionAtDistance !=None ', - LevelOfDescriptionNearWalls= SIMP(statut='o', typ='TXM', into =('Full force-distance curve', 'Simplified treatment'),ang='CH1Stcomment\ntest\t espace'), - blocSimplifed = BLOC (condition = 'LevelOfDescriptionNearWalls == "Simplified treatment" ', - TypeOfSimplifiedTreatment =SIMP(statut='o', typ='TXM', into =('Energy-based Wall Model',) - ), - ), - ) # fin blocActionChoisie - ) # fin bloc - ) # fin prepareActionsAtADistanceForWall - -#-------------------------------------------- -def prepareBondedInteractions(fromWall=False): -#--------------------------------- - intoHorsWall=[ 'Bond stretching', 'Angle bending', 'Torsional motion', 'Frozen or collective motion',] - intoWall=[ 'Bond stretching', 'Angle bending', 'Torsional motion', 'Frozen or collective motion','Contact mechanics'] - if fromWall : - mesInto=intoWall - #monBondedParticles = SIMP(statut='o', typ='TXM', defaut='True', into=['True',]) #PNPN - monBondedParticles = SIMP(statut='o', typ=bool, defaut=1, ang='Activate bonded interactions between particles and walls.') - else : - mesInto=intoHorsWall - monBondedParticles = SIMP(statut='o', typ=bool, defaut=False, ang='Activate bonded interactions between particles.') - - return FACT(statut='o', max = "**", - BondedParticles = monBondedParticles, - blocBonded = BLOC(condition = 'BondedParticles == True', - DescribedWithTopologyFile = SIMP(statut='o', typ=bool, defaut=False, ang='Activate description with a topology file (otherwise, user-defined in the CDM).'), - blocTopologyFile = BLOC (condition = 'DescribedWithTopologyFile == True', - TopologyFile =SIMP(statut='o', typ=('Fichier', " Files (*.pdb );;All Files (*)",'Sauvegarde')), - ), - blocNoTopologyFile = BLOC (condition = 'DescribedWithTopologyFile == False', - BondedInteraction = FACT (statut ='o', max ='**', - NatureOfBondedInteraction = SIMP(statut='o', typ='TXM', into= mesInto, intoXML = intoWall,ang='Choose the nature of bonded-interactions. \n Current choice includes bond-stretching, angle bending, torsional motion and frozen/collective motion.'), - bBondStretching = BLOC ( condition = 'NatureOfBondedInteraction == "Bond stretching"', - TypeOfBondStretching = SIMP(statut='o', typ='TXM', into=[ 'Bond harmonic potential', 'FENE',],ang='Choose the type of bond stretching force. \n Current choice includes Bond harmonic potential or FENE model (Finitely-Extensible Non-linear Elastic).'), -# ------------ FENE ------------------ - blocFENE = BLOC(condition = 'TypeOfBondStretching == "FENE"', - FENEParameters = FACT(statut='o', max="**", - SpringConstant_H = SIMP(statut='o', typ='R', val_min=0, ang='Define the value of the spring constant for the FENE model.'), - LMax = SIMP(statut='o', typ='R', val_min=0, ang='Define the value of the maximal extension for the FENE model.'), - ListOfBondedParticles = SIMP(statut='o', max='**', typ = Tuple(2), validators=VerifTypeTuple(('I','I'),),ang='Define the list of bonded particles (loop on particle pairs).'), - ), # fin FENE_Parameters - ), # fin blocFENE -# ------------ Harmonic potential Parameters ------------------ - blocharmonic = BLOC(condition = 'TypeOfBondStretching == "Bond harmonic potential"', - BondHarmonicParameters = FACT(statut='o', max="**", - ListOfBondedParticles = SIMP(statut='o', max='**', typ = Tuple(2), validators=VerifTypeTuple(('I','I'),),ang='Define the list of bonded particles (loop on particle pairs).'), - ), # fin BondHarmonicParameters - ), # fin blocharmonic - ), # fin bBondStretching - #TypeOfBondedInteraction = SIMP(statut='o', typ='TXM', into=[ 'Covalent Bond Length', 'FENE', 'Covalent Bond Angle', 'Dihedral Angles', 'Improper Dihedral ou Torsonial Motion ?', 'Frozen Motion', 'Angle bending' ], defaut='NoOne'), - - #PNPN 114 - #La saisie de l'ensemble des liaisons d'un meme type peut se faire ds le meme bloc (soit ds un fichier, soit manuelle) - #Une seule valeur de distante? est a saisir pour l'ensemble - -# ------------ Covalent Bond Length ------------------ - # blocCovalentLength = BLOC(condition = 'TypeOfBondedInteraction == "Covalent Bond Length"', - # InteractionLengthParameters = FACT(statut='o', max="**", - # SpringStifness = SIMP(statut='o', typ='R', val_min=0), - # MeanBondLength = SIMP(statut='o', typ='R', val_min=0), - # ListOfBondedParticles = SIMP(statut='o', max='**', typ = Tuple(2), validators=VerifTypeTuple(('I','I'),)), - # ), # fin Interation_Length_Parameters - # ), # fin BondLengthParameters - -# ------------ Covalent Bond Angle ------------------ - # blocCovalentAngle = BLOC(condition = 'TypeOfBondedInteraction == "Covalent Bond Angle"', - # InteractionAnglesParameters = FACT(statut='o', max="**", - # ApplyToBondedParticles = SIMP(statut='o', max='**', typ='TXM'), - # SpringStifness = SIMP(statut='o', typ='R', val_min=0), - # MeanBondAngle = SIMP(statut='o', typ='R', val_min=0), - # ListOfBondedParticles = SIMP(statut='o', max='**', typ = Tuple(2), validators=VerifTypeTuple(('I','I'),)), - # ), # fin Interation_Angles_Parameters - # ), # fin bloccovalentlengthand_angle - - - -# ------------ Dihedral Angles ------------------ - # blocDihedral = BLOC(condition = 'TypeOfBondedInteraction == "Dihedral Angles"', - # DihedralAnglesQueDemandeTon = SIMP(statut='o', typ='TXM'), - # ), - -# ------------ Improper Dihedral ------------------ - # blocImproperDihedral = BLOC(condition = 'TypeOfBondedInteraction == "Improper Dihedral"', - # ImproperDihedralQueDemandeTon = SIMP(statut='o', typ='TXM'), - # ), - # blocFrozen = BLOC(condition = 'TypeOfBondedInteraction == "Frozen Motion"', - # FrozenQueDemandeTon = SIMP(statut='o', typ='TXM'), - # ), - )# fin bondedInteraction - ), # blocNoTopology - ), # blocBondedInteractop, - ) # fin Bonded_Interaction - -#--------------------------------- -def prepareBlocOrigine(condition): -#--------------------------------- - return BLOC(condition = condition, - Origin = FACT(statut ='o', - OriginType = SIMP(statut='o', into =['ByValue', 'ByFile', 'ByInteraction'], typ ='TXM', defaut='ByValue',ang='Choose the origin of the variable. \n Current choice includes by Value (user-given), by File or by Interaction (i.e. with another component).'), - blocByFile = creeBlocPourLesFichiers('OrigineType == "ByFile"', '', ListeFormats = listeFormatGenerique, FieldName='FieldName'), - blocByInteraction = BLOC(condition = 'InitialisationType == "ByInteraction"', - InteractionName = SIMP(typ=interaction,statut='o'), - Consigne = SIMP(statut="o", homo="information", typ="TXM", defaut='Create and choose suitable interaction'), - ), - blocByValue = BLOC(condition = 'OriginType == "ByValue"', - ConstantValue = SIMP (statut ='o', typ='R',ang='Define the value of the variable.'), - ), - ), - ) -#---------------------------------------- -def prepareBlocInitialisation(condition): -#---------------------------------------- - monIntoType = ['ByValue', 'ByFile', 'ByInteraction'] - return BLOC(condition = condition, - Initialisation = FACT(statut ='o', - InitialisationType = SIMP(statut='o', into = monIntoType, typ ='TXM', defaut='ByValue',ang='Choose the type of initialization of the variable. \n Current choice includes by Value (user-given).'), - blocByFile = creeBlocPourLesFichiers('InitialisationType == "ByFile"', '', ListeFormats = listeFormatGenerique, FieldName='FieldName'), - blocByInteraction = BLOC(condition = 'InitialisationType == "ByInteraction"', - InteractionName = SIMP(typ=interaction,statut='o'), - Consigne = SIMP(statut="o", homo="information", typ="TXM", defaut='Create and choose suitable interaction'), - ), - blocByValue = BLOC(condition = 'InitialisationType == "ByValue"', - Value = SIMP (statut ='o', typ='R',ang='Define the initial value of the variable.'), - ), - ), - SourceTerm = SIMP(typ=bool, statut='o', defaut=False), - blocSourceTerm = prepareTermeSource('SourceTerm==True'), - ) #blocSimulatedPressure - -#----------------------------------------------------------------- -def prepareBlocInitialisationParticle(condition, termeSource=True): -#----------------------------------------------------------------- - monIntoType = ['ByValue', 'ByFile', 'ByInteraction','Not needed' ] - #dicoTermeSource = {} - #if termeSource : - # dicoTermeSource['SourceTerm'] = SIMP(typ=bool, statut='o', defaut=False), - # dicoTermeSource['blocSourceTerm'] = prepareTermeSourceParticle('SourceTerm==True') - - if termeSource : - return BLOC(condition = condition, - Initialisation = FACT(statut ='o',ang='Define how the state variable is initialized', - InitialisationType = SIMP(statut='o', into =monIntoType, typ ='TXM', defaut='ByValue',ang='Choose the type of initialization. \n Current choice includes by Value (provided by the user), by File, by Interaction (with another component) or Not needed.'), - blocNotNeeded = BLOC(condition = 'InitialisationType != "Not needed"', - ParticleIdentifier=SIMP(statut='o', typ = userParticle,ang='Choose on which types of particles the initialization applies.\n Requires the definition of particles in the Classical Particle System.'), - ), - blocByFile = creeBlocPourLesFichiers('InitialisationType == "ByFile"', '', ListeFormats = listeFormatGenerique, FieldName='FieldName'), - blocByInteraction = BLOC(condition = 'InitialisationType == "ByInteraction"', - InteractionName = SIMP(typ=interaction,statut='o',ang='Choose the component for the interaction.\n Requires another component in the CDM.'), - Consigne = SIMP(statut="o", homo="information", typ="TXM", defaut='Create and choose suitable interaction'), - ), - blocByValue = BLOC(condition = 'InitialisationType == "ByValue"', - Value = SIMP (statut ='o', typ='R',ang='Define the initial value'), - ), - SourceTerm = SIMP(typ=bool, statut='o', defaut=False,ang='Activate a source term for the variable.'), - blocSourceTerm = prepareTermeSourceParticle('SourceTerm==True') - ), - ) # - else: - return BLOC(condition = condition, - Initialisation = FACT(statut ='o',ang='Define how the state variable is initialized', - InitialisationType = SIMP(statut='o', into =monIntoType, typ ='TXM', defaut='ByValue',ang='Choose the type of initialization. \n Current choice includes by Value (provided by the user), by File, by Interaction (with another component) or Not needed.'), - blocNotNeeded = BLOC(condition = 'InitialisationType != "Not needed"', - ParticleIdentifier=SIMP(statut='o', typ = userParticle,ang='Choose on which types of particles the initialization applies.\n Requires the definition of particles in the Classical Particle System.'), - ), - blocByFile = creeBlocPourLesFichiers('InitialisationType == "ByFile"', '', ListeFormats = listeFormatGenerique, FieldName='FieldName'), - blocByInteraction = BLOC(condition = 'InitialisationType == "ByInteraction"', - InteractionName = SIMP(typ=interaction,statut='o',ang='Choose the component for the interaction.\n Requires another component in the CDM.'), - Consigne = SIMP(statut="o", homo="information", typ="TXM", defaut='Create and choose suitable interaction'), - ), - blocByValue = BLOC(condition = 'InitialisationType == "ByValue"', - Value = SIMP (statut ='o', typ='R',ang='Define the initial value'), - ), - ), - ) # - -#--------------------------- -def prepareBlocFluideMacro(): -#--------------------------- - return BLOC(condition = 'SystemType == "Continuum system"', - ComplexFluid = SIMP(typ=bool, statut='o', defaut = False, position='global',ang='Activate the description of complex fluids (e.g. polymeric fluid, emulsions).'), - FlowNature = SIMP(typ='TXM', statut='o', into =['Laminar', 'Turbulent'], position='global',ang='Choose the nature of the flow. \n Current choice includes Laminar or Turbulent flow.'), - -# --------------------------- Density ------------- - DensityInitialisation = FACT(statut ='o',ang='Initialize the fluid density properties', - DensityValueType = SIMP(typ='TXM', statut ='o', into = ['Value', 'Field'], defaut ='Value',ang='Choose the type of initialization for the fluid density. \n Current choice includes by Value of by Field.'), - blocDensityValue = BLOC(condition = 'DensityValueType == "Value"', - Density = SIMP(typ='R', statut ='o',ang='Define the value of the initial fluid density (in kg/m^3).'), - ), - blocDensField= creeBlocPourLesFichiers('DensityValueType == "Field"', 'Density', ListeFormats=listeFormatGenerique, FieldName='DensityFieldName'), - ),# DensityInitialisation - -# --------------------------- Viscosity ------------- - ViscosityInitialisation = FACT(statut ='o',ang='Initialize the fluid viscosity properties', - ViscosityValueType = SIMP(typ='TXM', statut ='o', into = ['Value', 'Field'], defaut ='Value',ang='Choose the type of initialization for the fluid viscosity. \n Current choice includes by Value of by Field.'), - blocViscosityValue = BLOC(condition = 'ViscosityValueType == "Value"', - Viscosity = SIMP(typ='R', statut ='o',ang='Define the value of the initial fluid dynamic viscosity (in m^2/s).'), - ), - blocViscosityField = creeBlocPourLesFichiers('ViscosityValueType == "Field"', 'Viscosity', ListeFormats=listeFormatGenerique, FieldName='ViscosityFieldName'), - ), #fin ViscosityityInitialisation - -# --------------------------- Turbulent ------------- - blocFlowNatureTurbulent = BLOC(condition = ' FlowNature == "Turbulent"', - TurbulenceForFlowDynamics = prepareFactTurbulence('o',position='global',positionChoice='reCalculeEtape'), - ), #fin bloc_FlowNature_Turbulent - - DynamicalVariables = FACT(statut ='o',ang='Define the dynamical variables inherent to the component (e.g. pressure, velocity and other turbulent variables).', - VariablesSimulation = SIMP(statut='o', typ =bool, position='global',ang='Activate the simulation of dynamic variables.'), - blocVariablesSimulation = BLOC(condition = 'VariablesSimulation == False', - OriginOfDynamicalVariables = SIMP(statut='o', into =['Given', 'Interaction'], typ ='TXM', position='global'), - blocGivenOrInteraction = BLOC(condition = 'OriginOfDynamicalVariables in ["Given", "Interaction",]', - SteadyState = SIMP(typ=bool, statut ='o', defaut = True, position = 'global'), - # blocNotSteady = BLOC(condition = 'SteadyState == False', - # blocConsigne = BLOC(condition = 'SteadyState == False', - # Consigne = SIMP(statut="o", homo="information", typ="TXM", defaut='Not implemented yet. Will ask for a range of calculation steps.'), - # ), #blocNotSteady - blocSteady = BLOC(condition = 'SteadyState == True', - blocGiven = BLOC(condition = 'OriginOfDynamicalVariables == "Given"', - InSameFile = SIMP(typ=bool, statut ='o', defaut = True, position = 'reCalculeEtape'), - blocSameFile = creeBlocPourLesFichiers('InSameFile == True', 'DynamicalVariables', ('Med', 'cgns' ), None), - ), #blocGiven - ), #blocSteady - ), #blocGivenOrInteraction - ), - PressureDefinition = FACT(statut ='o',ang='Define the fluid pressure (initialization and source term)', - Pressure = SIMP(typ=(dynamicVariable,'createObject'), statut='o', defaut ='Pressure', homo='constant'), - blocSteadyState = BLOC(condition = 'SteadyState == True', - blocFluidInSame = creeBlocPourLesFichiers('InSameFile == False', 'Pressure', ('Med', 'cgns' ), None), - blocGivenPressure = BLOC(condition = 'OriginOfDynamicalVariables == "Given"', - PressureFieldName = SIMP(typ='TXM',statut='o'), - ), - blocInteractionPressure = BLOC(condition = 'OriginOfDynamicalVariables == "Interaction"', - InteractionName = SIMP(typ=interaction,statut='o'), - Consigne = SIMP(statut="o", homo="information", typ="TXM", defaut='Create and choose suitable interaction'), - ), - ), - blocSimulatedPressure = prepareBlocInitialisation(condition = 'VariablesSimulation == True'), - ), - VelocityDefinition = FACT(statut ='o',ang='Define the fluid velocity (initialization and source term)', - blocFlowNatureTurbulent = BLOC(condition = 'FlowNature == "Turbulent"', - #sousBlocFlowNatureTurbulent = BLOC(condition = 'TurbulenceModellingType != "Fully resolved (DNS)"', - AverageVelocity = SIMP(typ=(dynamicVariable,'createObject'), statut='o', defaut ='Average_Velocity', homo='constant'), - blocSteadyGivenVelocity1 = BLOC(condition = 'OriginOfDynamicalVariables == "Given" and SteadyState == True ', - AverageVelocityValue = SIMP(typ='R', statut='o' ), - ), - #), - ), - #blocFlowNatureLaminar = BLOC(condition = ' FlowNature == "Laminar" or TurbulenceModellingType == "Fully resolved (DNS)"', - blocFlowNatureLaminar = BLOC(condition = 'FlowNature == "Laminar"', - FluidVelocity = SIMP(typ=(dynamicVariable,'createObject'), statut='o', defaut ='Fluid_Velocity', homo='constant'), - blocSteady = BLOC(condition = 'SteadyState == True', - blocVelocityInSame = creeBlocPourLesFichiers('InSameFile == False', 'Velocity', ('Med', 'cgns' ), None), - blocSteadyGivenVelocity2 = BLOC(condition = 'OriginOfDynamicalVariables == "Given"', - VelocityFieldName = SIMP(typ='TXM',statut='o'), - ), - ), - ), - blocSteady = BLOC(condition = 'SteadyState == True', - blocInteractionVelocity = BLOC(condition = 'OriginOfDynamicalVariables == "Interaction"', - InteractionName = SIMP(typ=interaction,statut='o'), - Consigne = SIMP(statut="o", homo="information", typ="TXM", defaut='Create and choose suitable interaction'), - ), - ), - blocSimulatedVelocity = prepareBlocInitialisation(condition = 'VariablesSimulation == True'), - ), - BFlowNatureTurbulent = BLOC(condition ='FlowNature == "Turbulent"', - # K-epislon ou k-omega - blocTurbulenceTWMChoice1 = BLOC(condition = 'TVMChoice == "K-Epsilon" or TVMChoice == "K-Omega"', - KDefinition = FACT(statut ='o',ang='Define the fluid turbulent kinetic energy "k" (initialization and source term)', - Name = SIMP(typ=(scalar,'createObject'), statut='o', defaut ='K', homo='constant'), - blocSteady = BLOC(condition = 'SteadyState == True', - blocKInSame = creeBlocPourLesFichiers('InSameFile == False', 'K', ('Med', 'cgns' ), None), - blocKGiven = BLOC(condition = 'OriginOfDynamicalVariables == "Given"', - KFieldName = SIMP(typ='TXM',statut='o', defaut='K'), - ), - blocKInteraction = BLOC(condition = 'OriginOfDynamicalVariables == "Interaction"', - InteractionName = SIMP(typ=interaction,statut='o'), - Consigne = SIMP(statut="o", homo="information", typ="TXM", defaut='Create and choose suitable interaction'), - ), - ), - blocSimulatedKDefinition = prepareBlocInitialisation(condition = 'VariablesSimulation == True'), - ), # KDefinition - ),# fin blocTurbulenceTWMChoice1 - - # REM : L'existence des mc TVMChoice et RSMChoice est exclusive, du coup une évaluation de condition - # qui contient les deux renvoie forcément une exception, le bloc n'est alors pas evalué - # sauf si le mc de la première condition existe (ordre évaluation du or) - # blocTurbulenceTWMChoice2 = BLOC(condition = 'TVMChoice == "K-Epsilon" or RSMChoice != None', - # blocTurbulenceTWMChoice2 = BLOC(condition = '(RSMChoice != None) or (TVMChoice == "K-Epsilon")', - # blocTurbulenceTWMChoice2 = BLOC(condition = 'TVMChoice == "K-Epsilon"', - blocTurbulenceTWMChoice2 = BLOC(condition = 'RANSModel == "Reynolds Stress Model (RSM)" or TVMChoice == "K-Epsilon"', - EpsilonDefinition = FACT(statut ='o',ang='Define the fluid turbulent kinetic energy "Epsilon" (initialization and source term)', - Name = SIMP(typ=(scalar,'createObject'), statut='o', defaut ='Epsilon', homo='constant'), - blocSteady = BLOC(condition = 'SteadyState == True', - blocEpsilonInSame = creeBlocPourLesFichiers('InSameFile == False', 'Epsilon', ('Med', 'cgns' ), None), - blocEpsilonGiven = BLOC(condition = 'OriginOfDynamicalVariables == "Given"', - EpsilonFieldName = SIMP(typ='TXM',statut='o'), - ), - blocEpsilonInteraction = BLOC(condition = 'OriginOfDynamicalVariables == "Interaction"', - InteractionName = SIMP(typ=interaction,statut='o'), - Consigne = SIMP(statut="o", homo="information", typ="TXM", defaut='Create and choose suitable interaction'), - ), - ), - blocSimulatedEpsilonDefinition = prepareBlocInitialisation(condition = 'VariablesSimulation == True'), - ), #EpsilonDefinition - ), # bloc_Turbulence_TWMChoice2 - - blocTurbulenceTWMChoice3 = BLOC(condition = 'TVMChoice == "K-Omega"', - OmegaDefinition = FACT(statut ='o',ang='Define the fluid specific rate of dissipation "Omega" (initialization and source term)', - Name = SIMP(typ=(scalar,'createObject'), statut='o', defaut ='Omega', homo='constant'), - blocSteady = BLOC(condition = 'SteadyState == True', - blocOmegaInSame = creeBlocPourLesFichiers('InSameFile == False', 'Omega', ('Med', 'cgns' ), None), - blocOmegaGiven = BLOC(condition = 'OriginOfDynamicalVariables == "Given"', - OmegaFieldName = SIMP(typ='TXM',statut='o'), - ), - blocOmegaInteraction = BLOC(condition = 'OriginOfDynamicalVariables == "Interaction"', - InteractionName = SIMP(typ=interaction,statut='o'), - Consigne = SIMP(statut="o", homo="information", typ="TXM", defaut='Create and choose suitable interaction'), - ), - ), - blocSimulatedOmegaDefinition = prepareBlocInitialisation(condition = 'VariablesSimulation == True'), - ), - ), # blocTurbulenceTWMChoice3 - - # blocTurbulenceRSMChoice1 = BLOC(condition = "(RANSModel == 'Reynolds Stress Model (RSM)') and (RSMChoice !=None)", - blocTurbulenceRSMChoice1 = BLOC(condition = "RSMChoice !=None", - RijDefinition = FACT(statut ='o',ang='Define the fluid Reynolds Stresses "Rij" (initialization and source term)', - Name = SIMP(typ=(scalar,'createObject'), statut='o', defaut ='Rij', homo='constant'), - blocSteady = BLOC(condition = 'SteadyState == True', - blocRijInSame = creeBlocPourLesFichiers('InSameFile == False', 'Rij', ('Med', 'cgns' ), None), - blocRijGiven = BLOC(condition = 'OriginOfDynamicalVariables == "Given"', - RijFieldName = SIMP(typ='TXM',statut='o'), - ), - blocRijInteraction = BLOC(condition = 'OriginOfDynamicalVariables == "Interaction"', - InteractionName = SIMP(typ=interaction,statut='o'), - Consigne = SIMP(statut="o", homo="information", typ="TXM", defaut='Create and choose suitable interaction'), - ), - ), - blocSimulatedRijDefinition = prepareBlocInitialisation(condition = 'VariablesSimulation == True'), - ), - ), # blocTurbulenceRSMChoice1 - ), #BFlowNatureTurbulent - ), # DynamicalVariables - -# ---------------------- Effets thermiques - Thermal = FACT(statut ='o',ang='Define the thermal properties of the component', - ThermalEffects = SIMP(typ='TXM', statut='o', into =['Non thermal', 'Thermal'] , defaut='Thermal', position='global' ,ang='Activate thermal effects on the component.'), - blocNonThermalEffects = BLOC(condition = 'ThermalEffects == "Non thermal"', - ReferenceTemperature = SIMP(typ='R', statut='o', val_min=0, ang='Define the reference temperature (in K)',), - ), # fin bloc_NonThermal - bloc_ThermalEffects_ = BLOC(condition = 'ThermalEffects == "Thermal"', - ConductivityValueType = SIMP(typ='TXM', statut ='o', into = ['Value', 'Field'], defaut ='Value',ang='Choose the type for conductivity. \n Current choice includes by Value or by Field.'), - blocCondValue = BLOC (condition = 'ConductivityValueType == "Value"', - Conductivity = SIMP(typ='R', statut ='o',ang='Define the value of the conductivity (in kg.m^3/s^3/A^2)'), - ), - blocCondField = creeBlocPourLesFichiers('ConductivityValueType == "Field"', 'Conductivity', ListeFormats=listeFormatGenerique, FieldName='conductivityFieldName'), - #ActiveOnFlowEffect = ActiveOnFlowEffect(), - ), - ),# fin Fact Thermal - -# ---------------------- Scalaires - - blocScalarFluidTurbulentOrLaminar = BLOC(condition = "(ComplexFluid == False and FlowNature == 'Turbulent') or (ComplexFluid == False and FlowNature == 'Laminar')", - Scalars = FACT(statut = 'o',ang='Define the scalars within the component (i.e. chemical species, temperature).', - withScalars = SIMP(statut='o', typ=bool, defaut=False,ang='Activate scalar within the component.'), - blocwithScalars = BLOC(condition = 'withScalars == True', - blocFlowNatureTurbulentForScalars = BLOC(condition = ' FlowNature == "Turbulent"', - AsTurbulenceForFlowDynamics = SIMP(statut='o', typ=bool, defaut=True,ang='Choose if the dynamics of scalars is the same as the dynamics of the turbulent flow (if not, define the turbulent dynamics for scalars).'), - blocAsTFFD = BLOC(condition = "AsTurbulenceForFlowDynamics == False", - ScalarsTurbulenceModelling = prepareFactTurbulenceScalaire('o',), - ), - ), - blocThermalEffectsOn = BLOC(condition = ' ThermalEffects == "Thermal"', - TemperatureScalar = FACT(statut ='o',ang='Define scalar for temperature', - #Name = SIMP(typ=(scalar,'createObject'), statut='o', defaut ='Temperature', homo='constant', position='reCalculeEtape'), - Name = SIMP(typ=(scalar,'createObject'), statut='o', defaut ='Temperature', homo='constant'), - SourceTerm = SIMP(typ=bool, statut='o', defaut=False,ang='Activate source term for temperature scalar.'), - blocSourceTerm = prepareTermeSource('SourceTerm==True'), - TemperatureInitialisation = FACT(statut ='o', - OriginOfThermalFluxField = SIMP(statut='o', into =['Given', 'Interaction', 'to be simulated'], typ ='TXM',ang='Choose the origin of the thermal flux field. \n Current choice includes Given (by the user), by Interaction (with another component), or To be simulated (i.e. calculated by the component).'), - blocGiven = creeBlocPourLesFichiers('OriginOfThermalFluxField == "Given"', 'Temperature', ('Med', 'cgns' ), FieldName='FieldName'), - ),# fin TemperatureInitialisation - ),# TemperatureScalar - ), # fin bloc_ThermalEffects_On - Scalar = FACT(statut = 'o', max ='**',ang='Define scalar for the component', - Name = SIMP(typ=(scalar,'createObject'), statut='o',), - DiffusivityValueType = SIMP(typ='TXM', statut ='o', into = ['Value', 'Field'], defaut ='Value',ang='Choose the type for diffusivity. \n Current choice includes by Value or by Field.'), - blocDiffValue = BLOC(condition = 'DiffusivityValueType == "Value"', - Diffusivity = SIMP(typ='R', statut ='o',ang='Define the value for the diffusivity (in m^2/s).'), - ), - blocDiffField = creeBlocPourLesFichiers('DiffusivityValueType == "Field"', 'Diffusivity', ListeFormats=listeFormatGenerique, FieldName='DiffusivityFieldName'), - OriginOfScalar = SIMP(statut='o', into =['Given', 'Interaction', 'to be simulated'], typ ='TXM', defaut='to be simulated',ang='Choose the origin of the diffusivity field. \n Current choice includes Given (by the user), by Interaction (with another component), or To be simulated (i.e. calculated by the component).'), - blocSimulatedScalar = BLOC(condition = 'OriginOfScalar == "to be simulated"', - SourceTerm = SIMP(typ=bool, statut='o', defaut=False,ang='Activate source terms for scalars.'), - blocSourceTerm = prepareTermeSource('SourceTerm==True'), - Initialisation = FACT(statut ='o',ang='Define the initialization for scalars', - InitialisationOfScalar = SIMP(statut='o', into =['ValueInit', 'FileInit', 'InteractionInit'], typ ='TXM', defaut='ValueInit',ang='Choose the initialization of scalars. \n Current choice includes by Value (i.e. by the user), by File or by Interaction (i.e. with another component).'), - blocFileInit = creeBlocPourLesFichiers('InitialisationOfScalar == "FileInit"', 'ScalarInit', ListeFormats = listeFormatGenerique, FieldName='ScalarInitField'), - blocInteractionInit = BLOC(condition = 'InitialisationOfScalar == "InteractionInit"', - InteractionName = SIMP(typ=interaction,statut='o'), - Consigne = SIMP(statut="o", homo="information", typ="TXM", defaut='Create and choose suitable interaction'), - ), - blocValueInit = BLOC(condition = 'InitialisationOfScalar == "ValueInit"', - ValueInit = SIMP (statut ='o', typ='R',ang='Define the initial value of the scalar'), - ), - ), #Initialisation - ), #blocSimulatedScalar - blocInteractionScalar = BLOC(condition = 'OriginOfScalar == "Interaction"', - InteractionName = SIMP(typ=interaction,statut='o'), - Consigne = SIMP(statut="o", homo="information", typ="TXM", defaut='Create and choose suitable interaction'), - ), - blocGivenScalar = creeBlocPourLesFichiers('OriginOfScalar == "Given"', 'Scalar', ListeFormats = listeFormatGenerique, FieldName='ScalarField'), - EffectOnFlowDynamic = SIMP(typ='TXM', statut='o', into=[ 'Passive', 'Active'], defaut='Passive', ), - blocScalarActiveOnFlowDynamic = BLOC(condition = ' EffectOnFlowDynamic == "Active"', - ActiveOnFlowEffect = ActiveOnFlowEffect(), - ), - blocScalarFluidTurbulentAndNonComplexe = BLOC (condition = "FlowNature == 'Turbulent'", - ScalarFluxModel = prepareFactTurbulenceScalaire('f'), - ), # bloc_scalar_FluidTurbulentandNonComplexe - ),# Scalar - ),# blocwWithScalars - ),# Scalars - ), # fin FluidTurbulentandNonComplexe - # il faut une validation de coherence entre l existence de tous les turbulencesModelling - )# fin bloc_FluideMacro - -#----------------------------------------- -def ActiveOnFlowEffect(inTemperature=True): -#----------------------------------------- - return FACT(statut = 'o', max='**',ang='Define if the variable has an effect on the flow (e.g. Newtonian fluid).', - RelationType = SIMP(statut = 'o', into =['Equation Of State', 'Force-Flux Relation'], typ ='TXM',ang='Choose the type of relation for the effect of the variable on the flow. \n Current choice includes Equation of State (EoS) and Force-Flux relation (FFR).'), - bloc_EOS = BLOC(condition = 'RelationType == "Equation Of State"', - TypeOfEquationOfState = SIMP(statut='o', into =['variable density', 'compressible'], typ ='TXM',ang='Choose the type of Equation of State. \n Current choice includes Variable density or Compressible.'), - ), - bloc_NonEOSAndSimple=BLOC(condition = 'RelationType == "Force-Flux Relation" and ComplexFluid == False', - TypeOfForceFluxRelation = SIMP(statut='o', into =['Viscosity', 'Diffusivity', 'Thermal Conductivity'], intoXML=['Viscosity', 'Diffusivity', 'Thermal Conductivity','Shear-stress closure', 'Scalar flux'], typ ='TXM', ang='Choose the type of Force-Flux Relation. \n Current choice includes Viscosity (e.g. viscous laws), Diffusivity or Thermal Conductivity.'), - blocViscosity=BLOC(condition = 'TypeOfForceFluxRelation == "Viscosity" ', - ViscosityLaw=SIMP(typ='TXM', statut = 'o', into=['law1', 'law2']), - ), - blocDiffusivity=BLOC(condition = 'TypeOfForceFluxRelation == "Diffusivity"', - DiffusivityLaw=SIMP(typ='TXM', statut = 'o', into=['law1', 'law2']), - ), - blocConductivity=BLOC(condition = 'TypeOfForceFluxRelation == "Thermal Conductivity"', - ConductivityLaw=SIMP(typ='TXM', statut = 'o', into=['law1', 'law2']), - ), - ), -) - -#------------------------------# -def prepareBoundaryCondition(): -#------------------------------# -# on en fait 1 bloc seul pour CS and CPS -# pour pas de souci dans la projection XSD - return FACT(statut='o',max = '**', # max = nb de facette de bord - TypeOfBoundaryCondition = SIMP(statut='o', typ='TXM', into=['Inlet', 'Outlet', 'Symmetry','Periodicity', 'Wall', 'Free Surface'], ang='Pick each type of boundary condition needed.\n Current choice includes Inlet, Outlet, Symmetry, Periodicity, Wall and Free surface.'), - - blocDesigneMesh = BLOC(condition = "SystemType == 'Continuum system'", - ApplyOnGroups = SIMP(statut ='o', typ=meshGroup, max='**', homo='SansOrdreNiDoublon', ang='Choose the surface elements (groups) on which the boundary condition applies. \n Requires the definition of boundary groups in SpatialAspects.', - filtre=( '(set(MeshIdentifiers).intersection( set(self.getParentsWithId().getListeUserASSD("MeshId")) ) != set()) ', - ( ('MeshIdentifiers', 'self.etape.getChild("blocModeleNumeriqueContinuum").getChild("NumericalModel")'), ) - ), - ), - ), - blocDesigne_Shape = BLOC(condition = "SystemType == 'Classical particle system'", - ApplyOnShape = SIMP (statut ='o', typ=spatialRegion, max='**') -# ApplyOnGroups = SIMP (statut ='o', typ=meshGroup, max='**', homo='SansOrdreNiDoublon', ang='Choose the surface elements (groups) on which the boundary condition applies. \n Requires the definition of boundary groups in SpatialAspects.', -# filtre=( '(set(MeshIdentifiers).intersection( set(self.getParentsWithId().getListeUserASSD("MeshId")) ) != set()) ', -# ( ('MeshIdentifiers', 'self.etape.getChild("blocModeleNumeriqueClassical").getChild("NumericalModel")'), ) -# ), -# ), - ), - - - blocOnStateVariable = BLOC(condition = "(TypeOfBoundaryCondition in ['Inlet', 'Symmetry','Periodicity', 'Free Surface'] and SystemType == 'Continuum system') or (SystemType == 'Classical particle system' and TypeOfBoundaryCondition not in ['Outlet','Inlet'])" , - ApplyOnStateVariable = SIMP (statut ='o', typ=stateVariable, max='**', homo='SansOrdreNiDoublon', ang='Pick each State variable on which the boundary condition applies. \n Requires the definition of State variables for the component.', - filtre=( 'etape in set(self.getEtapes()) ', (('etape', None),), ), #Il ne faut pas proposer les variables d'état des autres composants. - ), #PNPN A FAIRE : fenetreIhm='menuDeroulant' - ), - - blocPeriodique = BLOC(condition = "TypeOfBoundaryCondition == 'Periodicity'", - Direction = SIMP(statut='o', typ='TXM', into=['X','Y','Z', 'XY', 'YZ', 'XZ', 'XYZ'],ang='Choose the direction for the periodic boundary condition. \n Current choice includes along X-direction, Y-direction, Z-direction or any combination of directions.'), - ), # b_periodique - - blocInlet1 = BLOC(condition = "TypeOfBoundaryCondition == 'Inlet' and SystemType == 'Continuum system'", - FormulationOfBoundary= SIMP(statut='o', typ='TXM', into=['Dirichlet','Neumann','Cauchy'], ang='Choose the type of inlet condition for the continuum system. \n Current choice includes Dirichlet (value of the variable at the boundary), Neumann (value of the normal derivative of the variable at the boundary) or Cauchy (values of the variable and its normal derivative at the boundary).',), - blocDirichlet = BLOC(condition = 'FormulationOfBoundary == "Dirichlet"', - regles=(AU_MOINS_UN('InletProfile','IntegratedValue','IntegratedVectorValue',), - EXCLUS ('InletProfile','IntegratedValue','IntegratedVectorValue',), ), - Consigne = SIMP(statut ="o", homo="information", typ="TXM", defaut = "Choose between InletProfile,IntegratedValue,IntegratedVectorValue "), - InletProfile = SIMP (statut ='f', typ='TXM',ang='Define the inlet profile for the variable'), - IntegratedValue = SIMP (statut='f', typ='R',ang='Define the integrated value over the inlet for the variable'), - IntegratedVectorValue = FACT(statut='f', - U = SIMP (statut ='o', typ='R',ang='Define the integrated value for the variable along the X-direction (in m/s).'), - V = SIMP (statut ='o', typ='R',ang='Define the integrated value for the variable along the Y-direction (in m/s).'), - W = SIMP (statut ='o', typ='R',ang='Define the integrated value for the variable along the Z-direction (in m/s).'), - ), - ),# fin Dirichlet - blocNeumann = BLOC(condition = 'FormulationOfBoundary == "Neumann"', - FluxFile = SIMP (statut ='o', typ=('Fichier', " ;;All Files (*)"),) - ), - blocCauchy = BLOC(condition = 'FormulationOfBoundary == "Cauchy"', - ImposedFlux = SIMP (statut ='o', typ='TXM'), - _IntegratedValue = SIMP (statut='o', typ='R'), - ), - ), # b_inlet1 - blocWall = BLOC(condition = "TypeOfBoundaryCondition == 'Wall' and SystemType == 'Continuum system'", - VelocityAtBoundary = FACT(statut='o',ang='Define the velocity at the boundary (including the slip velocity and translational motion)', - SlipVelocity = SIMP(statut='o', typ='R', defaut= 0.0,ang='Define the value of the slip velocity at the boundary (in m/s).'), - WallMotion = FACT(statut='o',ang='Define the translational motion of the wall (if necessary)', - U = SIMP (statut ='o', typ='R',ang='Define the value of the translational wall motion along the X-direction (in m/s).'), - V = SIMP (statut ='o', typ='R',ang='Define the value of the translational wall motion along the Y-direction (in m/s).'), - W = SIMP (statut ='o', typ='R',ang='Define the value of the translational wall motion along the Z-direction (in m/s).'), - ), - ), - LevelOfDescription = FACT(statut='o', - blocWallInside = BLOC(condition = "FlowNature == 'Turbulent'", ##JP+CH TODO : Choix des lois en fct du type du TurbulenceModelingType - WallFunction = SIMP(statut ='o', typ='TXM',ang='Choose the model for the turbulent wall function at the boundary. \n Current choice includes No wall function (i.e. no model as in DNS) or log-law models (1-scale, 2-scale or scalable 2-scale models).', - into=['No wall function','1-scale model (Log law)', - '2-scale model (Log law)','Scalable 2-scale model (Log law)', - ], defaut='No wall function', fenetreIhm='menuDeroulant'), - ), - ), - ), # b_Wall - - blocWall2 = BLOC(condition = "TypeOfBoundaryCondition == 'Wall' and SystemType == 'Classical particle system'", - ChoiceOfParticleWallInteraction = SIMP(statut='o', typ = wallInteractionId) - ), # b_Wall - - blocInlet2 = BLOC(condition = "TypeOfBoundaryCondition == 'Inlet' and SystemType == 'Classical particle system'", - TypeOfParticleInjected = SIMP(statut='o', typ = userParticle,ang='Pick the type of particles injected. \n Requires the definition of at least one type of particles in the Classical-Particle system.'), - NumberOfParticleInjected = SIMP(statut='o', typ = 'I', val_min = 1,ang='Define the number of particles injected.'), - InjectionEveryNTimeSteps = SIMP(statut='o', typ = 'I', val_min = 0,ang='Define the frequency of injection of particles.'), - DiameterOfParticleInjected = SIMP(statut='o', typ = 'R', val_min = 0,ang='Define the diameter of the particles injected (in m).'), - MassOfParticleInjected = SIMP(statut='o', typ = 'R', val_min = 0,ang='Define the mass of the particles injected.'), - - PositionOfParticleInjected = FACT(statut='o', - InitialisationMode = SIMP(statut='o', into =['ByValue', 'ByFile', 'ByFormula' ], typ ='TXM', defaut='ByValue',ang='Choose the way the initial particle position is defined. \n Current choice includes by Value (i.e. user given), by File or by Formula.'), - # A Rafiner - ), - blocNoBrownianDynamics = BLOC(condition = '(TypeOfConstraint != None) and not("Brownian dynamics" in TypeOfConstraint)', - ParticleVelocity = FACT(statut ='o', - InitialisationMode = SIMP(statut='o', into =['ByValue', 'ByFile', 'ByFormula' ], typ ='TXM', defaut='ByValue',ang='Choose the way the initial particle velocity is defined. \n Current choice includes by Value (i.e. user given), by File or by Formula.'), - ), #fin VelocityDefinition - blocHydrodynamic = BLOC(condition = '"Hydrodynamic" in MomentumFieldType', - FluidVelocitySeenByParticles = FACT(statut ='o', - InitialisationMode = SIMP(statut='o', into =['ByValue', 'ByFile', 'ByFormula' ], typ ='TXM', defaut='ByValue',ang='Choose the way the initial particle velocity is defined. \n Current choice includes by Value (i.e. user given), by File or by Formula.'), - ), - ), - ),# blocNoBrownianDynamics - ), # bInlet2 - - blocApplyOnParticle = BLOC(condition = "SystemType == 'Classical particle system' and TypeOfBoundaryCondition != 'Inlet'" , - ApplyOnAllsParticle = SIMP(typ=bool, statut ='o', defaut = True,ang='Precise if the field applies on all species (i.e. all types of particles defined in this Classical-Particle-System component)'), - blocSpecifyParticle = BLOC(condition = "ApplyOnAllsParticle == False" , - ApplyOnParticles = SIMP(statut ='o',max="**", typ = userParticle, homo='SansOrdreNiDoublon'), - ), - ), - - ) # Boundary_Conditions - - - -JdC = JDC_CATA ( - #PN : TODO : regles = (AU_PLUS_UN('DataTransfer_Aspects',),), - code = 'Vimmp', - # faire un validateur qui verifie que si on active reactions chimiques il faut que les masses molaires soient rentrees -) - -Component = OPER(nom='Component', sd_prod=composant, - SystemType = SIMP(typ='TXM', into=['Quantum system', 'Classical particle system', 'Continuum system'], statut='o',position='global',ang='Choose the type of system to be simulated. \n Current choice includes Quantum system, Classical-Particle system and Continuum system.'), - PhysicalDescription = FACT(statut = 'o',ang='Describe the physical system to be simulated.', - blocFluideMacro = prepareBlocFluideMacro(), - blocCPS = prepareBlocCPS(), - ), - blocModeleNumeriqueQuantum = prepareBlocSystemType('Quantum system'), - blocModeleNumeriqueClassical = prepareBlocSystemType('Classical particle system'), - blocModeleNumeriqueContinuum = prepareBlocSystemType('Continuum system'), - - # Exemple de reecriture d'un BLOC_XOR pour eviter la generation d'un type xsd double - # BCFluide = BLOC ( condition = 'SystemType == "Continuum system"', - # BoundaryConditions = FACT(statut = 'o', - # BoundaryCondition = prepareBoundaryCondition(), - # ), - # ), - # BCParticle = BLOC ( condition = 'SystemType == "Classical particle system"', - # BoundaryConditions = FACT(statut = 'o', - # BoundaryCondition = prepareBoundaryConditionParticle(), - # ), - # ), - BoundaryConditions = FACT(statut = 'o', - BoundaryCondition = prepareBoundaryCondition(), - ), -) - -Interpolator = OPER (nom= 'Interpolator',sd_prod=interpolator, - InterpolatorType=SIMP(statut='o', typ='TXM', into = list(dictInterpolatorFormat.keys()),ang='Define the type of interpolation operator.'), - blocMedCoupling= BLOC(condition="InterpolatorType == 'Med Coupling'", - TargetMeshIdentifier = SIMP(statut ='o', typ = meshIdentifier,ang='Define the target mesh. \n Requires at least one mesh defined in SpatialAspects.'), - InterpolationType = SIMP(statut ='o', typ='TXM', into=['P0P0','P0P1','P1P1','P1P0'],ang='Choose the type of interpolator used. \n Current choice includes P0P0, P0P1, P1P1 or P1P0 (i.e. the order of the interpolation used).'), - DefaultValueForUnmatchedMeshTargetEntity = SIMP(statut='o', typ ='R', defaut=-1), - ), -) -Converter = OPER (nom= 'Converter',sd_prod=converter) - -Interactions = PROC(nom='Interactions', - - IOAspects = FACT(statut='o',ang='Define the inputs/outputs for the interaction.', - #WorkingDirectory = SIMP(statut='o', typ='Repertoire', defaut='/tmp'), - FileTransfer = FACT(statut='f', max='**', - TransferId = SIMP(statut='o', typ=(fileId,'createObject'),), - monBlocFormat = creeBlocPourLesFichiers('1', '', listeFormatGenerique, FieldName=None ), - ), - MemoryTransfer = FACT(statut='f', max='**', - TransferId = SIMP(statut='o', typ=(memoryId,'createObject'),), - ), - CorbaTransfer = FACT(statut='f', max='**', - TransferId = SIMP(statut='o', typ=(corbaId,'createObject'),), - ), - ), - - Interaction = FACT(max = '**',ang='Define the type of interaction.', - InteractionName = SIMP(statut='o', typ=(interaction,'createObject'),), - From = SIMP(typ=modeleNumDuCompo, statut='o',ang='Choose the source for the interaction among existing components. \n Requires at least one component in the system.'), - To = SIMP(typ=modeleNumDuCompo, statut='o',ang='Choose the target for the interaction among existing components. \n Requires at least one component in the system.'), - # ApplyOnStateVariable = SIMP(statut ='o', typ=stateVariable), #PNPN A FAIRE : fenetreIhm='menuDeroulant' - InvolvedStateVariable = SIMP(statut ='o', typ=stateVariable,ang='Choose the State variable involved in the interaction. \n Requires at least one State Variable in the component.'), #PNPN A FAIRE : Seulement du composant d'origine From - InteractionConfiguration = FACT(statut='o',ang='Configure the type of interaction.', - - OutputId = SIMP(statut='o',typ=(transferId,),), - FieldName=SIMP(typ='TXM', statut='o'), - CouplingMode = SIMP(typ='TXM', statut='o', into =['Direct', 'DataProcessing'],ang='Choose the type of coupling. \n Current choice includes Direct (i.e. direct transfer of data) or DataProcessing (i.e. transfer of data that are processed).'), - - monBlocDataProcessing = BLOC (condition = "CouplingMode=='DataProcessing'", - DataProcessingNode = FACT(min=1, max='**', statut ='o',ang='Define the type of data-processing used in the interaction.', - Tool = SIMP(typ=mapper, statut ='o'), - OutputId = SIMP(statut='o',typ=(transferId,),), - FieldName = SIMP(typ='TXM', statut='o'), - monBlocInterpolator = BLOC (condition = "(Tool != None) and (isinstance(Tool,interpolator))", - FieldNature = SIMP(typ='TXM', statut='o', into=['ExtensiveMaximum', 'IntensiveMaximum', - 'ExtensiveConservation', 'IntensiveConservation']), #PN: DICO pour le into avec key==Tool - ), - ), - ), #fin monBlocDataProcessing - ), #fin InteractionConfiguration - ), -) - -EnvironementAspects = PROC(nom ="EnvironementAspects", - WorkflowName = SIMP(statut='o', typ='TXM', defaut='MyStudyCasename', ang='Define the name of the workflow simulated.'), #PN: -> path - WorkingDirectory = SIMP(statut='o', typ='Repertoire', defaut='/tmp', ang='Define the working directory for the simulation.'), -) - - -TemporalAspects = PROC(nom ="TemporalAspects", - Simulated_Time_Laps = FACT(statut='o', max='**', ang='Define the system temporal characteristics.', - name = SIMP(statut='o', typ=(simulatedTime,'createObject'), ang='Define the name of the temporal characteristics.',), - initialTime = SIMP(statut='o', typ='R', ang='Define the value of the initial time.'), - finalTime = SIMP(statut='o', typ='R', ang='Define the value of the final time.'), - timeDiscretization = SIMP(statut ='o', typ = 'TXM', into = ['Constant Time Step', 'Varying Time Step'], ang='Choose the temporal discretization (i.e. time step).\n Current choice includes Constant time step or Varying time step.'), - bloc_Constant = BLOC (condition = 'timeDiscretization == "Constant Time Step"', - constantTimeStep = SIMP (statut ='o', typ = 'R', ang='Define the value of the time step (in s).'), - ), - bloc_Varying = BLOC (condition = 'timeDiscretization == "Varying Time Step"', - CFLNumberCriteria = SIMP (statut ='o', typ = 'R', ang='Define the value of the CFL criteria for the time step.'), - FourierNumberCriteria = SIMP (statut ='o', typ = 'R', ang='Define the value of the Fourier criteria for the time step.'), - ), - ), -) - -# -# ----------------------------------------- -SpatialAspects = PROC(nom='SpatialAspects', -# ----------------------------------------- - regles = (AU_MOINS_UN('SystemGeometry', 'SpatialDiscretization'),), - - SystemGeometry = FACT(statut='f', max='**', ang='Define the system geometry.', - SystemGeometryName = SIMP(statut='o', typ=(systemGeometry, 'createObject'),ang='Define the name of the system geometry (used for CDM).'), - Shape = FACT(statut ='o', max='**', ang='Define the shape of the system.', - ShapeIdentifier = SIMP(statut='o', typ=(cadShape,'createObject'),max='**',), - ShapeNature = SIMP(statut='o', typ='TXM', into=['Typical Geometry', 'CAD'], ang='Choose the nature of the system shape. \n Current choice includes Typical geometry (e.g. cube, cylinder) or CAD defined.'), - - blocShape = BLOC(condition = 'ShapeNature == "Typical Geometry"', - Box = SIMP(statut='o', typ='TXM', into=['Cube', 'Sphere','Cylinder'], ang='Choose the typical geometry for the system. \n Current choice includes Cube, Sphere, Cylinder.' ), - blocCube = BLOC(condition = 'Box == "Cube"', - #Taille_Box_Englobante = SIMP(statut='o', typ='R', max=3, min =3) - # derait etre un Tuple(3) mais a faire apres la projection - #Size_Of_Bounding_Box = SIMP(statut='o', typ=Tuple(3), validators=VerifTypeTuple(('R','R','R'),),) - Size_Of_Bounding_Box = SIMP(statut='o', typ='R', max=3, min=3, ), - ), # fin blocCube - blocBoule = BLOC(condition = 'Box == "Sphere"', - Center = SIMP(statut='o', typ='R', max=3, min =3), - ),# fin b_Boule - blocCylinder = BLOC(condition = 'Box == "Cylinder"', - Heigth = SIMP(statut="o", typ='R', val_min=0.0, ang='Nanotube length [m]'), - ),# fin blocCylinder - blocBouleOuCylinder = BLOC(condition = 'Box == "Sphere" or Box == "Cylinder"', - Radius = SIMP(statut='o', typ='R', val_min=0.0, ang='radius length [m]') , - ),# fin blocBouleOuCylinder - ), # fin blocShape - blocCAO = creeBlocPourLesFichiers("Shape_Nature == 'CAD'",'Domain', ['txt','I-deas', 'Gmsh', 'top',],None), - ), # fin Shape - ),# SystemGeometry - - SpatialDiscretization = FACT(statut='f', max="**", ang='Define the spatial discretization for the system (i.e. mesh).', - MeshId = SIMP(statut='o', typ=(meshIdentifier,'createObject'), ang='Define the id of the mesh (used in the CDM)'), - MeshName = SIMP(statut='o', typ='TXM', ang='Define the name of the mesh (used in the CDM)'), - blocMeshFile = creeBlocPourLesFichiers("1 == 1",'Mesh',listeFormatGenerique,None), - GroupIdentifier = SIMP(statut='o', typ=(meshGroup,'createObject'),max='**',), - ),# SpatialDiscretization - - BoundaryConstraints = FACT(statut = 'f', ang='Define the boundary constraints for the system.', - Motion = FACT(statut='f', - MotionNature = SIMP(statut='o', typ='TXM', into=['Fixed boudary', 'Translational motion', 'Rotational motion', 'Scaling'], ang='Choose the type of motion for the boundary. \n Current choice includes Fixed boundary, Translational motion, Rotational motion and Scaling'), - - blocTranslationalMotion = BLOC(condition = 'MotionNature == "Translational motion"', - TranslationVelocity = SIMP(statut='o', typ='R', ang='Define the value of the translational velocity for the boundary.'), - boundaries = SIMP(statut='o', typ=spatialRegion,max='**', homo='SansOrdreNiDoublon' ), - ), - blocRotationalMotion = BLOC(condition = 'MotionNature == "Rotational motion"', - RotationRate = SIMP(statut='o', typ='R', ang='Define the value of the rotation rate for the boundary.'), - boundaries = SIMP(statut='o', typ=spatialRegion,max='**', homo='SansOrdreNiDoublon' ), - ), - blocFixed = BLOC(condition = 'MotionNature == "Fixed boudary"', - boundaries = SIMP(statut='o', typ=spatialRegion,max='**', homo='SansOrdreNiDoublon'), - ), - ), -#PN decrire page 28 - Mapping = FACT(statut='f', - ), - ), # Boundary_Constraints -) # fin Geometric_Domain - -#Le dictionnaire dict_condition est un dictionnaire utilisé par eficas -# pour les position='global_jdc' et position='inGetAttribut' -dict_condition={ - 'ChoiceOfApproach': ('Interactions', 'Component'), - 'Interactions' : ( 'Component'), -} - -#TEXTE_NEW_JDC = " " diff --git a/Vimmp/cata_CSAndCPS_v18k_test_driver_1.comm b/Vimmp/cata_CSAndCPS_v18k_test_driver_1.comm deleted file mode 120000 index d65dcf59..00000000 --- a/Vimmp/cata_CSAndCPS_v18k_test_driver_1.comm +++ /dev/null @@ -1 +0,0 @@ -test-karel.comm \ No newline at end of file diff --git a/Vimmp/cata_Vimmp.py b/Vimmp/cata_Vimmp.py deleted file mode 100644 index dfc68ca6..00000000 --- a/Vimmp/cata_Vimmp.py +++ /dev/null @@ -1,408 +0,0 @@ -# coding: utf-8 -*- -# - -import os -import types -monFile=os.path.abspath(__file__) - -# ------------------------------------------------- Definition fonction utilisateur -from Accas import * -class Elementary_Surface(UserASSD): pass -class CDM_SD(ASSD) : pass -# class CodeSpecific(ASSD) : pass -class SPM_SD(ASSD) : pass -class Specie(UserASSD) : pass -class BondedParticle(UserASSD) : pass - - -# ------------------------------------------------- Definition fonction du catalogue ou macro - -def champ(nomDelaContante, labels ,nbReels ) : -# ajouter les extensions pour le fichier et les blocs associes -# certains champs ne seront jamais uniformes - #Input_Mode = SIMP( statut='o', typ='TXM', into=('uniform value','values directly assigned','values read in file','analytical function', 'call to a service')), -#PNPN : Passer le nom du champ pour le label du vecteur - dicoBloc = {} - dicoBloc[nomDelaContante] = SIMP( statut='o', typ='R') - return FACT( statut='o', - Input_Mode = SIMP( statut='o', typ='TXM', into=('uniform value','values directly assigned','values read in file','analytical function',)), - b_uniforme = BLOC( condition = "Input_Mode == 'uniform value'", **dicoBloc), - b_vsaisies = BLOC( condition = "Input_Mode == 'values directly assigned'", - Field = SIMP( typ='R', statut='o', max ='**'), - #Vecteur = SIMP( fenetreIhm='Tableau', homo = labels, - # statut='o', min=2, max='**', - # typ=Tuple(nbReels), - # validators=VerifTypeTuple(("'R',"*nbReels),),) # end particle - ), #b_vsaisie - b_vdsfich = BLOC( condition = "Input_Mode == 'values read in file'", - Format = SIMP( statut='o', typ='TXM', into=['txt','Med',], position='global' ), - td_txt = BLOC(condition = 'Format == "txt"', - File = SIMP( statut='o', typ=('Fichier','Text Files(*.txt);All Files (*)'),), - ), - td_med_1 = BLOC( condition = 'Format == "Med"', - File = SIMP( statut='o', typ=('Fichier','Med Files(*.med);All Files (*)'),), - ), - td_med_2 = BLOC( condition = 'Format == "Med"', - FieldName = SIMP( statut='o', typ='TXM',), - ), - ), - b_vfct = BLOC( condition = "Input_Mode == 'analytical function'", - Function = SIMP( statut='o', typ='TXM',), - ), - #b_vserc = BLOC( condition = "Input_Mode == 'call to a service'", - # Service = SIMP( statut='o', typ='TXM',), - #), - ) - - -def BlocPourLesFichiers (laCondition, NomDuFichier, ListeFormats): - SIMPFormatFichier = SIMP(statut='o', typ = 'TXM', into = tuple(ListeFormats) + ('others',), ) - dicoDesBlocs = {} - for formatFich in ListeFormats : - nomBloc = 'b_format_fichier' + str(formatFich) - typeDesFichiers = ('Fichier', formatFich + " Files (*." + formatFich + ");;All Files (*)",) - blocCondition ="FileFormat == '" + formatFich + "'" - dicoDesBlocs[nomBloc] = BLOC ( condition = blocCondition, FileName = SIMP(statut='o', typ = typeDesFichiers ),) - dicoDesBlocs['b_format_fichier_others'] = BLOC (condition="FileFormat == 'others'", FileName = SIMP(statut='o', typ = ('Fichier','All Files (*)'),),) - return BLOC(condition=laCondition, FileFormat = SIMPFormatFichier, **dicoDesBlocs) - - -# ____________________________________________________________________________________________ # - -JdC = JDC_CATA(code='Vimmp',fichierSource=monFile) - -importedBy=('Gromacs',) - -CDM = OPER(nom = 'CDM', sd_prod = CDM_SD, - Title = SIMP( statut='o', typ='TXM'), - Simulated_Time_Lapse = FACT( statut='o', - Initial_Time = SIMP( statut='o', typ='R'), - Duration = SIMP( statut='o', typ='R'), - ), -# - Geometric_Domain= FACT( statut='o', - Shape = SIMP( statut='o', typ='TXM', into=['Simplified Shape', 'CAD or Mesh']), - b_Shape = BLOC( condition = 'Shape == "Simplified Shape"', - Box = SIMP( statut='o', typ='TXM', into=['Cube', 'Sphere','Cylinder'] ), - b_Cube = BLOC( condition = 'Box == "Cube"', - #Taille_Box_Englobante = SIMP( statut='o', typ='R', max=3, min =3) - # derait etre un Tuple(3) mais a faire apres la projection - Size_Of_Bounding_Box = SIMP( statut='o', typ=Tuple(3), validators=VerifTypeTuple(('R','R','R'),),) - ), # fin b_Cube - b_Boule = BLOC( condition = 'Box == "Sphere"', - Center = SIMP( statut='o', typ='R', max=3, min =3), - # devrait etre un Tuple(3) mais a faire apres la projection - ),# fin b_Boule - b_Cylinder = BLOC( condition = 'Box == "Cylinder"', - Heigth = SIMP( statut="o", typ='R', val_min=0.0, ang='Nanotube length [m]'), - ),# fin b_Tube - b_Boule_ou_Cylinder = BLOC( condition = 'Box == "Sphere" or Box == "Cylinder"', - Radius = SIMP( statut='o', typ='R', val_min=0.0, ang='radius length [m]') , - ),# fin b_Boule_ouCylinder - ), # fin b_Shape -# - b_CAO = BlocPourLesFichiers( "Shape == 'CAD or Mesh'",'Domain_File', ['txt','med','I-deas', 'Gmsh', 'top',]), - Surface=SIMP( statut='o',typ=( Elementary_Surface, 'createObject'),max='**',), - ), # fin Geometric_Domain - - -# ----------------------------------------------------------------- System_Component ---------------------------------------------------------------------------# - System_Component= FACT( statut='o', max = "**", - - General_Level_Of_Description = SIMP( statut='o', typ='TXM', into=['Microscopic','Mesoscopic', 'Macroscopic'] ), - Component = SIMP( statut='o', typ='TXM', into=['Quantum System','Classical_Particle System', 'Continuum Sytem'] ), - #Component = SIMP( statut='o', typ='TXM', into=['Particle', 'Fluid','Solid ',], position='global'), - - b_component_particle = BLOC( condition = "Component == 'Classical_Particle System'", - #-----------------------------------------------------# - Physical_Description_Particle = FACT( statut='o', - #-----------------------------------------------------# - - List_Of_Species = FACT( statut='o', - # ------------------------------# - Number_Of_Species = SIMP( statut='o', typ='I', defaut=1, position='global_jdc'), - Specie = FACT( statut='o', max ="**", - Name_Of_Specie = SIMP( statut='o', typ=(Specie, 'createObject'),), - Mass_Molaire = SIMP( statut='o', typ='R',), - Mass_Fraction = SIMP( statut='f', typ='R',), - Number_of_Particle = SIMP( statut='f', typ='I', val_min = 1), - b_Electrostatique = BLOC( condition = "Permittivity != None", - Charge = SIMP( statut='o', typ='R'), - ), # fin b_Electrostatic - ), # fin Specie - ), # fin List_Of_Species - - List_Of_Bonded_Particles = FACT( statut='f', - # -------------------------------------------# - Bonded_Particles = FACT( statut='o', max = "**", - Name_Of_Bonded_Particles = SIMP( statut='o', typ=(BondedParticle,'createObject' ),), - Species_in_Particle = SIMP( statut='o', min=2, typ=Specie , max = "**"), - ), # Bonded_Particles - ), # List_Of_Bonded_Particles - - List_Of_Interactions = FACT( statut='o', max = "**", - # --------------------------------------------------# - - Bonded_Interactions = FACT( statut='o', max = "**", - - #Type_Of_Bonded_Interaction = SIMP( statut='o', typ='TXM', into=['No', 'Covalent Bond Length', 'FENE', 'Covalent Bond Angle', 'Dihedral Angles', 'Improper Dihedral', 'Frozen Motion' ], defaut='No', position='global'), - Type_Of_Bonded_Interaction = SIMP( statut='o', typ='TXM', into=['No', 'Covalent Bond Length', 'FENE', 'Covalent Bond Angle', 'Dihedral Angles', 'Improper Dihedral', 'Frozen Motion' ], defaut='No'), - - #La saisie de l'ensemble des liaisons d'un meme type peut se faire ds le meme bloc (soit ds un fichier, soit manuelle) - #Une seule valeur de distante? est a saisir pour l'ensemble - # bloc_covalent_1 = BLOC( condition = 'Type_Of_Bonded_Interaction in ("Covalent Bond Length","FENE")', - # Name_of_Bonded_Particle = SIMP( statut='o', typ=BondedParticle), - # ), # fin bloc_covalent_1 - bloc_covalent_length = BLOC( condition = 'Type_Of_Bonded_Interaction == "Covalent Bond Length"', - Interaction_Length_Parameters = FACT( statut='o', max="**", - Apply_To_Bonded_Particles = SIMP( statut='o', max='**', typ=BondedParticle), - Spring_Stifness = SIMP( statut='o', typ='R', val_min=0), - Mean_Bond_Length = SIMP( statut='o', typ='R', val_min=0), - ), # fin Interation_Length_Parameters - ), # fin Bond_Length_Parameters - bloc_covalent_angle = BLOC( condition = 'Type_Of_Bonded_Interaction == "Covalent Bond Angle"', - Interaction_Angles_Parameters = FACT( statut='o', max="**", - Apply_To_Bonded_Particles = SIMP( statut='o', max='**', typ=BondedParticle), - Spring_Stifness = SIMP( statut='o', typ='R', val_min=0), - Mean_Bond_Angle = SIMP( statut='o', typ='R', val_min=0), - ), # fin Interation_Angles_Parameters - ), # fin bloc_covalent_length_and_angle - - #bloc_covalent_length_and_angle = BLOC( condition = 'Type_Of_Bonded_Interaction == "Covalent Bond Length" or Type_Of_Bonded_Interaction == "Covalent Bond Angle"', - # Bond_Parameters = FACT( statut='o', max="**", - # Apply_To_Bonded_Particles = SIMP( statut='o', max='**', typ=BondedParticle), - # Spring_Stifness = SIMP( statut='o', typ='R', val_min=0), - # bloc_covalent_length = BLOC( condition = 'Type_Of_Bonded_Interaction == "Covalent Bond Length"', - # Mean_Bond_Length = SIMP( statut='o', typ='R', val_min=0), - # ), # fin Bond_Length_Parameters - # bloc_covalent_angle = BLOC( condition = 'Type_Of_Bonded_Interaction == "Covalent Bond Angle"', - # Mean_Bond_Angle = SIMP( statut='o', typ='R', val_min=0), - # ), # fin Bond_Length_Parameters - # ), # fin Bond_Length_Parameters - #), # fin bloc_covalent_length_and_angle - - bloc_FENE = BLOC( condition = 'Type_Of_Bonded_Interaction == "FENE"', - Applies_To_All_Particles = SIMP( statut='o', typ=bool, defaut=True), - bloc_not_on_all = BLOC( condition = 'Applies_To_All_Particles == False', - FENE_Parameters = FACT( statut='o', max="**", - Species_Pair = SIMP( statut='o', max=2, typ=Specie), - Spring_Constant_H = SIMP( statut='o', typ='R', val_min=0), - LMax = SIMP( statut='o', typ='R', val_min=0), - ), # fin FENE_Parameters - ), # fin bloc_not_on_all - bloc_on_all = BLOC( condition = 'Applies_To_All_Particles == True', - Spring_Constant_H = SIMP( statut='o', typ='R', val_min=0), - LMax = SIMP( statut='o', typ='R', val_min=0), - ), # fin bloc_on_all - ), # fin bloc_FENE - - bloc_le_reste = BLOC( condition = 'Type_Of_Bonded_Interaction in ("Dihedral Angles", "Improper Dihedral", "Frozen Motion")', - Particle_Name = SIMP( statut="f", typ='TXM'), - #Consigne = SIMP( statut="o", homo="information", typ="TXM", defaut='Not Implemented Yet'), - - ), - ), # fin Bonded_Interaction - - # ------------------------------- # - - Unbonded_Interactions = FACT( statut='o', max= "**", - - Type_Of_Unbonded_Interaction = SIMP( statut='o', typ='TXM', into=['No', 'electro_magnetic', 'Repulsion_and_VdW', 'Soft_Potentiel', ], defaut='No', position='global',fenetreIhm='menuDeroulant'), - - bloc_elec = BLOC( condition = 'Type_Of_Unbonded_Interaction == "electro_magnetic"', - Permittivity = SIMP( statut='o', typ='R', position='global'), - Magnetic = SIMP( statut='o', typ=bool, defaut=False,), - bloc_magnetic = BLOC( condition = 'Magnetic == True', - Permability = SIMP( statut='o', typ='R'), - ), # bloc_magnetic - ),# fin bloc_elec - - bloc_VdW = BLOC( condition = 'Type_Of_Unbonded_Interaction == "Repulsion_and_VdW"', - Species_Pair_Parameters = FACT( statut='o', max="**", - Type_Repulsion_and_VdW = SIMP( statut='o', typ='TXM', into = [ 'Lennard_Jones', 'Hard_sphere_model']), - Species_Pair = SIMP( statut='o', max=2, typ=Specie), - VdW_Radius = SIMP( statut='o', typ='R', val_min=0), - b_Lennard = BLOC( condition = "Type_Repulsion_and_VdW == 'Lennard_Jones'", - Depth_Of_The_Potential_Well = SIMP( statut='o', typ='R', val_min=0), - ), # fin b_Lennard - ), # fin Species_Pair_Parameters - ), # bloc_VdW - - b_Param_Soft_Potentiel = BLOC( condition = "Type_Of_Unbonded_Interaction == 'Soft_Potentiel'", - Groot_Warren_Repulsion = SIMP( statut='o', typ='R', defaut=25.0, val_min=0), - Groot_Warren_Cutoff = SIMP( statut='o', typ='R', defaut=1.0, val_min=0), - Drag_Coefficient = SIMP( statut='o', typ='R'), # les 2 valent 0 pour MD - Drag_Force_Cutoff = SIMP( statut='o', typ='R', val_min=0), - ), # b_Param_Soft_Potentiel - - ), # fin UnBonded_Interactions - - # ------------------------------- # - - External_Field_Interaction = FACT( statut='o', max= "**", - Type_Of_Interaction_With_An_External_Field = SIMP( statut='o', typ='TXM', into=['No','gravitational field','electric field','magnetic field', 'Hydrodynamic_Field'], fenetreIhm='menuDeroulant', defaut ='No'), - b_gravite = BLOC( condition = 'Type_Of_Interaction_With_An_External_Field=="gravitational field"', - G = SIMP( statut='o', typ='R', defaut=9.81), - ), - b_elect = BLOC( condition = 'Type_Of_Interaction_With_An_External_Field=="electric field"', - Electric_Field = champ('E', ('E',), 1), - ), - b_magnetic = BLOC( condition = 'Type_Of_Interaction_With_An_External_Field=="magnetic field"', - Magnetic_Field = champ('B', ('B',), 1), - ), - b_hydrodynamic = BLOC( condition = 'Type_Of_Interaction_With_An_External_Field=="hydrodynamic field"', - Hydrodynamic_Field = champ('U', ('U',), 1), - ), - b_External_Field_Interaction = BLOC( condition = 'Type_Of_Interaction_With_An_External_Field != "No"', - Field_Applies_On_All_Species = SIMP( statut='o', typ=bool, defaut=True), - b_porte_espece = BLOC( condition = 'Field_Applies_On_All_Species == False ', - Species_List = SIMP( statut='o', typ='TXM', max= '**'), # faire un typ = "espece" - ), - ), # fin b_External_Field_Interaction - ), # fin Interaction_External_Field - - ), # fin List_Of_Interactions - - Statistical_Physics = FACT( statut='o', - #-----------------------------------------------------# - Type_Of_Statistical_Physics = SIMP( statut='o', typ='TXM', into=['No','Equilibrium', 'Non_Equilibrium'], defaut ='No'), - - b_Statistical_Physics_Equilibrium = BLOC( condition = "Type_Of_Statistical_Physics == 'Equilibrium'", - Distribution = SIMP( statut='o', typ='TXM', into=['nvt','nve']), - b_nvt = BLOC( condition = "Distribution == 'nvt'", - Target_Temperature = SIMP( statut='o', typ='R') - ), # fin b_nvt - - b_nve = BLOC( condition = "Distribution == 'nve'", - Target_Energie = SIMP( statut='o', typ='R') - ), # fin b_nve - ), # b_Physique_statstique_equilibre - - b_Statistical_Physics_Equilibrium_false = BLOC( condition = "Type_Of_Statistical_Physics == 'Non_Equilibrium'", - Non_Equilibrium_Driving_Force = SIMP( statut='o', typ='TXM', into=[ 'Temperature',],), - Imposed_non_isothermal = FACT ( statut = 'o', min=2, max="**", - Imposed_Temperature = SIMP( statut='o', typ='R'), - Applied_On_Surface = SIMP( statut='o', typ= Elementary_Surface), - ), - ), # b_Physique_statstique_equilibre - - ), # fin Statistical_Physics - - ), # fin Physical_Description_particle - - #-----------------------------------------------# - Particle_Representation = FACT( min=1, max=2, statut='o', - #------------------------------------------------# - #EFEFEF : La description choisie donne la liste des modèles numériques disponibles pour cette description - # attention Lattice Bolzman - - Representation_Type = SIMP( statut='o', typ='TXM', into=['Particle_Representation', 'Field_Representation'],), - Type_Of_Entity = SIMP( statut='o', typ='TXM', into=['Electron', 'Atom', 'Grain', 'CVE']), - b_repr_particle = BLOC( condition = 'Representation_Type == "Particle_Representation"', - Numerical_Particle_Model = FACT( statut='o', max ='**', - Type_Of_State_Vector = SIMP( statut='o', typ='TXM', into=['Position', 'Kinetic', 'Extended_Kinetic'], position='global'), - b_Extended_Kinetic = BLOC( condition = ' Type_Of_State_Vector == "Extended_Kinetic" ', - Angular_Velocity = SIMP( statut='o', typ= bool, defaut = True) - ), # fin b_Extended_Kinetic - ), # Particle_Model - Definition_Numerical_Model = FACT( statut='o', - b_State_Vector_Kinetic = BLOC (condition = "Type_Of_State_Vector == 'Kinetic'", - Numerical_Model = SIMP( statut='o', typ='TXM', into=['MD', 'DPD']), - ), - b_State_Vector_Extanded_Kinetic = BLOC (condition = "Type_Of_State_Vector == 'Extented_Kinetic'", - Numerical_Model_DPD = SIMP( statut='o', typ='TXM', into=['DPD']), - ), - Structure_Of_The_Evolution_Law = SIMP( statut='o', typ='TXM', into=['Newton equations'], defaut='Newton equations'), - ), # Definition_Numerical_Model - ), # b_repr_particle - - ), # Particle_Representation - ), # fin b_component_particle - - ), # System_Component - - #-----------------------------------------------------# - Boundary_Conditions = FACT( statut='f',max = '**', # max = nb de facette de bord - #-----------------------------------------------------# - Type_Of_Boundary_Condition = SIMP( statut='o', typ='TXM', into=['Inlet', 'Outlet', 'Symmetry','Periodic', 'Wall'], position='global'), - b_periodique = BLOC( condition = "Type_Of_Boundary_Condition == 'Periodic'", - Direction = SIMP( statut='o', typ='TXM', into=['X','Y','Z', 'XYZ']), - ), # b_periodique - - b_non_periodique = BLOC( condition = "Type_Of_Boundary_Condition != 'Periodic'", - Boundary_Face = SIMP( statut='o', typ= Elementary_Surface), - Apply_to_Wich_Quantity = SIMP( statut='o', typ='TXM', into=['Mass FLux', 'Velocity', 'Temperature']), - Formulation_of_Boundary= SIMP( statut='o', typ='TXM', into=['Dirichlet','Neumann']), - b_Formulation_of_Boundary_dirichlet = BLOC( condition = 'Formulation_of_Boundary == "Dirichlet"', - Value = SIMP ( statut='o', typ='R'), - ), - ), # b_non_periodique - ), # Boundary_Conditions - - #-----------------------------------------------------# - Initials_Conditions = FACT( statut='f', max='**', # 1 possible par valeur du vecteur d etat - #-----------------------------------------------------# - Applies_To_The_Complete_State_Vector = SIMP( statut='o', typ=bool, position ='global'), - #b_Variable_CI = BLOC( condition = "Applies_To_The_Complete_State_Vector == False ", - # Initial_Condition_For_Each_Variable = FACT( max = "**", statut='o', - Initial_Condition = FACT( statut='o', - b_Variable_CI = BLOC( condition = "Applies_To_The_Complete_State_Vector == False ", - State_Vector_Variable = SIMP( statut='o', typ='TXM'), - ), # b_Variable - Type_Initials_Conditions = SIMP( statut='o', typ='TXM', into=['Initial distribution of the state vector', 'Initial values of the state vector variables'], position='global'), - b_distrib = BLOC( condition = "Type_Initials_Conditions == 'Initial distribution of the state vector'", - State_Vector_Initial_Distribution = SIMP( statut='o', typ='TXM', into=['MaxWell', 'Uniform', 'Auto']), - Injection_Subdomain = SIMP( statut='f', typ='TXM'), - ),# b_distrib - b_initials = BLOC( condition = "Type_Initials_Conditions == 'Initial values of the state vector variables'", - File_Vecteur_Etat_Initial = SIMP( statut='o', typ=('Fichier','All Files (*)'),), - Format_File_Vecteur_Etat_Initial = SIMP( statut='o', typ='TXM', into=['txt', 'a definir avec Eric']), - ),# b_initials - ),# Initial_Condition - # ), # b_Variable - #b_Globale = BLOC( condition = "Applies_To_The_Complete_State_Vector == True ", - # reflechir avec Eric - # Initial_Condition = FACT( statut='o', - # Type_Initials_Conditions = SIMP( statut='o', typ='TXM', into=['Initial distribution of the state vector', 'Initial values of the state vector variables'], position='global'), - # b_distrib = BLOC( condition = "Type_Initials_Conditions == 'Initial distribution of the state vector'", - # State_Vector_Initial_Distribution = SIMP( statut='o', typ='TXM', into=['MaxWell', 'Uniform', 'File']), - # Injection_Subdomain = SIMP( statut='f', typ='TXM'), - # ),# b_distrib - # b_initials = BLOC( condition = "Type_Initials_Conditions == 'Initial values of the state vector variables'", - # File_Vecteur_Etat_Initial= SIMP( statut='o', typ=('Fichier','All Files (*)'),), - # Format_File_Vecteur_Etat_Initial = SIMP( statut='o', typ='TXM', into=['txt', 'a definir avec Eric']), - # ),# b_initials - # ),# Initial_Condition_For_Each_Variable - # ), # b_Globale - ), # Initials_Conditions -) # CDM - - - -# a refaire en reprenant - - # # lennard_jones si MD et groot_warren DPD - # b_MD = BLOC( condition = 'Numerical_Model == "MD"', - # Potential_Type_MD = SIMP( statut='o', typ='TXM', into=['lennard_jones'], defaut='lennard_jones'), - # ), - # b_DPD = BLOC( condition = 'Numerical_Model == "DPD"', - # Potential_Type_DPD = SIMP( statut='o', typ='TXM', into=['groot_warren'], defaut='groot_warren'), - # ), - # b_DPD_and_MD_2 = BLOC( condition = 'Numerical_Model == "DPD" or Numerical_Model == "MD"' , - # Species_Pair_Parameters = FACT( statut='o', max="**", - # Pair_Interaction = SIMP( statut='o', max=2, typ='TXM'), - # b_Parameters_Potential_Type_Groot_Warren = BLOC( condition = "Numerical_Model == 'DPD'", - # Groot_Warren_Repulsion = SIMP( statut='o', typ='R', defaut=25.0, val_min=0), - # Groot_Warren_Cutoff = SIMP( statut='o', typ='R', defaut=1.0, val_min=0), - # ), # b_parameters_potential_type_groot_warren - # b_Parameters_Potential_Type_Lennard_Jones = BLOC( condition = "Numerical_Model == 'MD'", - # Radius = SIMP( statut='o', typ='R', val_min=0), - # Depth_Of_The_Potential_Well = SIMP( statut='o', typ='R', val_min=0), - # ), # b_parameters_potential_type_groot_warren - # ), # species_pair_parameters - # ),# fin b_DPD_and_MD_2 - # b_DPD_Coef = BLOC( condition = 'Numerical_Model == "DPD"' , - # Drag_Coefficient = SIMP( statut='o', typ='R'), # les 2 valent 0 pour MD - # Drag_Force_Cutoff = SIMP( statut='o', typ='R', val_min=0,), - # ), - diff --git a/Vimmp/cata_cps.py b/Vimmp/cata_cps.py deleted file mode 100644 index 9af83779..00000000 --- a/Vimmp/cata_cps.py +++ /dev/null @@ -1,83 +0,0 @@ -from cata_Vimmp import * -#autonome=False -autonome=True -if autonome : - from Accas import * - JdC = JDC_CATA ( - code = 'CSP', - ) - importedBy=[] -else : - from cata_Vimmp import * - implement='CSP:Vimmp' - importedBy=[] - -class userParticle(UserASSD) :pass -class userAtom(userParticle) :pass -class userMolecule(userParticle) :pass -class userDiscrete(userParticle) :pass -class userDPD(userParticle) :pass - -Particle=PROC(nom='Particle', - UIinfo={"groupes":("CPS",)}, - ParticleNature = SIMP( statut='o', typ='TXM', into=['Atoms', 'Molecules', 'Dissipative', 'Fluid Particle', 'Discrete Particle']), - b_Atom = BLOC( condition='ParticleNature == "Atoms"', - AtomsName = SIMP( statut='o', typ=(userAtom,'createObject'),), - Atom = FACT (statut ='o', max= '**', - ChemicalSpecie = SIMP( statut='o', typ='TXM'), - Number = SIMP (statut ='o', typ = 'I'), - ElectricCharge = SIMP( statut='o', typ='R'), - MagneticMoment = SIMP( statut='o', typ='R'), - Size = SIMP( statut='f', typ='R'), # relevant ? - ), - ), - b_Molecule = BLOC( condition='ParticleNature == "Molecule"', - MoleculeName = SIMP( statut='o', typ=(userParticle,'createObject'),), - ChemicalSpecie = FACT ( max='**', statut='o', - ChemicalSpecieName = SIMP( statut='o', typ=userAtom), - Proportion = SIMP( statut='o', typ='R', val_max =1), - ), - ElectricCharge = SIMP( statut='o', typ='R'), - MagneticMoment = SIMP( statut='o', typ='R'), - Shape = SIMP( statut='f', typ='TXM', into=['Linear', 'Trigonal Planar', 'Angular', 'Tetrahedral', 'Octahedral', 'Trigonal pyramid', 'Other']), - ), - b_Dissipative = BLOC( condition='ParticleNature == "Dissipative"', - DPDName = SIMP( statut='o', typ=(userDPD,'createObject'),), - BondedParticles = SIMP(statut="o", typ=bool, defaut='False'), - ), - b_Discrete = BLOC( condition='ParticleNature == "Discrete Particle"', - DiscreteParticleName = SIMP(statut='o', typ=(userDiscrete,'createObject'),), - TypeOfDiscreteParticle = SIMP( statut='o', typ='TXM', into=['Solid', 'Droplets', 'Bubbles','Bio Organism'],), - b_TypeDP_Solid = BLOC( condition ='TypeOfDiscreteParticle == "Solid"', - TypeOfSolid = SIMP( statut='o', typ='TXM', into=['Primary Particle', 'Aggregate'], position = 'global_jdc'), - b_SolidPrimary = BLOC( condition='TypeOfSolid == "Primary Particle"', - ), - b_SolidAggregate = BLOC( condition='TypeOfSolid == "Aggregate"', - ), - ), - b_TypeBio_Solid = BLOC( condition='TypeOfDiscreteParticle == "Bio Organism"', - TypeOfOrganism = SIMP( statut='o', typ='TXM', into=['Unicellular', 'Multicellar']), - b_Unicellular = BLOC( condition ='TypeOfOrganism=="Unicellular"', - Unicellular = SIMP( statut='o', typ='TXM', into=["Bacteria"], defaut='Bacteria') - ), - b_Multicellular = BLOC( condition ='TypeOfOrganism=="Multicellular"', - Multicellular = SIMP( statut='o', typ='TXM', into=["Animal","Fongus","Plant"]) - ), - ), # b_TypeBio_Solid - Properties = FACT ( statut ='o', - Geometry = SIMP( statut='o', typ='TXM', into=['Sphere', 'Ellopsoids', 'Other Shape']), - Mechanical = SIMP( statut='o', typ='TXM', into=['Rigid', 'Flexible', 'Deformable']), - b_SolidAggregate = BLOC( condition='TypeOfSolid == "Aggregate"', - Morphological = FACT (statut = 'o', - Consigne = SIMP(statut="o", homo="information", typ="TXM", defaut='Choose optional properties'), - FractalDimension = SIMP( statut='f', typ='R'), - PrimaryParticlesNumber = SIMP (statut ='f',typ='I'), - EquivalentSize = SIMP( statut='f', typ='R'), - Porosoty = SIMP( statut='f', typ='R'), - ), # Morphological - ), # b_SolidAggregate - ), # Properties - ), # b_Discrete -) -dict_condition={'TypeOfSolid' : ('Particle',) } - diff --git a/Vimmp/cata_cps_test_driver_0.comm b/Vimmp/cata_cps_test_driver_0.comm deleted file mode 100644 index 22eb85fc..00000000 --- a/Vimmp/cata_cps_test_driver_0.comm +++ /dev/null @@ -1,13 +0,0 @@ -P1=userDiscrete() - -Particle(ParticleNature='Discrete Particle', - DiscreteParticleName=P1, - TypeOfDiscreteParticle='Solid', - TypeOfSolid='Aggregate', - Properties=_F(Geometry='Ellopsoids', - Mechanical='Rigid', - Morphological=_F(FractalDimension=1.0, - PrimaryParticlesNumber=2, - EquivalentSize=3.0, - Porosoty=4.0,),),); -#CHECKSUM:4079b159b7833673bc9ecfabe8493d78 -:FIN CHECKSUM \ No newline at end of file diff --git a/Vimmp/cata_fluid.py b/Vimmp/cata_fluid.py deleted file mode 100755 index 72487927..00000000 --- a/Vimmp/cata_fluid.py +++ /dev/null @@ -1,300 +0,0 @@ - -from Accas import * - -class composant(ASSD):pass -class geometricDomain(ASSD):pass -class modeleNumDuCompo(UserASSD):pass -class especeChimique(UserASSD):pass - -dictSystemTypeModeleNumerique = { 'Quantum system' : (), - 'Classical partical system' : ('MD', 'DPD', 'LBM', 'SDPD','SPH','CFD_Discrete_Particles'), - 'Continuum system' :('Fluid_Fields','Fluid_Particles', 'SPH','Lagrangian one-particle pdf'), - } - -# PN a faire --> ajouter un MC modeleNumerique ( apres avoir renomme le modeleNumerique actuel en classe de modele numerique) et le dictionnaire d apres -dictTypModNumModNum = { - ('Continuum system','Particles') : ('SPH','Lagrangian one-fluid-particle pdf'), - ('Continuum system','Fields') : ('FV','FEM', 'Spectral method'), - ('Classical partical system','Particles') : ('MD', 'DPD', 'SDPD','SPH','CFD_Discrete_Particles'), - ('Classical partical system','Fields') : ('LBM',), - ('Quantum system','Particles') : ('Particle method',), - ('Quantum system','Fields') : ('Wave',), -} - -dictCodeModeleNumerique = { - - 'Code_Saturne' : ('Lagrangian one-fluid-particle pdf', 'FV', 'CFD_Discrete_Particles',), - 'Culgi Package': (), - 'DEM_SD' : ('Lagrangian one-fluid-particle pdf', 'FV', 'CFD_Discrete_Particles',), - 'DFTB+' : ('density functional tight binding method',), - 'DL_MESO_DPD' : ('Lagrangian one-fluid-particle pdf', 'FV', 'CFD_Discrete_Particles',), - 'DL_MESO_LBE' : ('Lagrangian one-fluid-particle pdf', 'FV', 'CFD_Discrete_Particles',), - 'DL_POLY_4' : ('Lagrangian one-fluid-particle pdf', 'FV', 'CFD_Discrete_Particles',), - 'GROMACS' : ('Lagrangian one-fluid-particle pdf', 'FV', 'CFD_Discrete_Particles',), - 'GROMACS_LS' : ('Lagrangian one-fluid-particle pdf', 'FV', 'CFD_Discrete_Particles',), - 'LAMMPS' : ('Lagrangian one-fluid-particle pdf', 'FV', 'CFD_Discrete_Particles',), - 'NWChem' : ('Lagrangian one-fluid-particle pdf', 'FV', 'CFD_Discrete_Particles',), - 'OpenFOAM' : ('Lagrangian one-fluid-particle pdf', 'FV', 'CFD_Discrete_Particles',), - 'Quantum EXPRESSO' : ('Particle method', 'Wave',), - 'RHEO_AGGRATE' : ('Particle method', 'Wave',), - 'RHEO_DROP' : ('Particle method', 'Wave',), - 'STAR_CCM+' : ('FV', 'Particles',), - 'Code Nill' : ('Spectral method', ), -} - -dictCodeFormat = { - 'Code_Saturne' : ('med', 'cgns', 'msh', 'des', 'unv ', 'Use converter'), - 'Culgi Package': ('cof',), - 'DEM_SD' : ('geo', 'ascii'), - 'DFTB+' : ('geo', 'ascii'), - 'Fluent' : ('FluentFormat', 'Use converter'), - 'OpenFOAM' : ('OpenFoamFormat', 'Med', 'Use converter'), -} - -dictTermeLE = { - ('Fields','Particles') : ('Fluid_Velocity_Field', - 'Fluid_Temperature_Field', - 'Fluid_Species_Mass_Fraction_Fluid',), - ('Particles','Fields') : ('Fluid_Particle_Momentum_Exchange_Field', - 'Fluid_Particle_Thermal_Exchange_Field', - 'Lagrangian one-particle pdfFluid_Particle_Mass_Source_Field', - 'Particle_Volumetric_Concentration_Modified_Fluid_Viscosity', - 'Particle_Extra_Stress_Tensor'), -} - -dictCodeConvertisseur = { - ('Saturne', 'OpenFOAM') : ('gmsh', 'Saturne2CDM and CDM2OpenFoam'), - ('Saturne', 'Fluent') : ( 'Saturne2CDM and CDM2Fluent'), - ('Fluent', 'OpenFOAM') : ('Fluent2CDM and CDM2OpenFoam'), - } - -def prepareBlocSystemType(systemType) : - condition = "SystemType == '" + systemType + "'" - Identifier = SIMP(statut='o', typ=(modeleNumDuCompo,'createObject'),) - ModelType = SIMP(statut='o', typ='TXM', into = ('Particles', 'Fields')) - dicoArgs={} - for typeMod in ('Particles', 'Fields'): - conditionType = "ModelType == '" + typeMod + "'" - NumericalMethod = SIMP(statut='o',typ='TXM', into=dictTypModNumModNum[systemType, typeMod], - position='global_jdc', intoXML=allValueInDict(dictTypModNumModNum)) - dicoBloc = {} - for modeleNumerique in list(dictTypModNumModNum[systemType,typeMod]): - conditionNum = "NumericalMethod == '" + modeleNumerique + "'" - setCode = set() - for code in dictCodeModeleNumerique.keys(): - if modeleNumerique in dictCodeModeleNumerique[code]: setCode.add(code) - Solver = SIMP(statut='o', typ='TXM', into=list(setCode), intoXML=allValueInDict(dictCodeModeleNumerique)) - monNomBloc='b_ModelName_' + modeleNumerique.replace(' ','_') - if setCode !=set(): dicoBloc[monNomBloc]=BLOC(condition=conditionNum, nomXML='b_ModelName',Solver=Solver) - dicoArgs['b_modelType'+typeMod] = BLOC(condition=conditionType, NumericalMethod=NumericalMethod,**dicoBloc) - NumericalModel = FACT(statut='o', max= '**', Identifier=Identifier, ModelType=ModelType, **dicoArgs) - return BLOC(condition=condition, nomXML='b_systemType', NumericalModel=NumericalModel) - -def calculCommun( key1, key2, dico): - monSet=set() - if not key1 in dico: return () - if not key2 in dico: return () - for val in dico[key1]: - if val in dico[key2]: - monSet.add(val) - if monSet == set() : monSet.add ('No common format') - return list(monSet) - -def allValueInDict( dico): - monSet=set() - for clef in dico : - for val in dico[clef] : monSet.add(val) - return monSet - -def creeBlocPourLesFichiers (laCondition, NomDuFichier, ListeFormats): - SIMPFormatFichier = SIMP(statut='o', typ = 'TXM', into = tuple(ListeFormats) + ('others',), ) - dicoDesBlocs = {} - for formatFich in ListeFormats : - nomBloc = 'b_format_fichier' + str(formatFich) - typeDesFichiers = ('Fichier', formatFich + " Files (*." + formatFich + ");;All Files (*)",) - blocCondition ="FileFormat == '" + formatFich + "'" - dicoDesBlocs[nomBloc] = BLOC( condition = blocCondition, FileName = SIMP(statut='o', typ = typeDesFichiers ),) - dicoDesBlocs['b_format_fichier_others'] = BLOC(condition="FileFormat == 'others'", FileName = SIMP(statut='o', typ = ('Fichier','All Files (*)'),),) - return BLOC(condition=laCondition, FileFormat = SIMPFormatFichier, **dicoDesBlocs) - - - -def FactTurbulence(statut): - return FACT (statut=statut, - TurbulenceModellingType = SIMP(typ='TXM', statut='o', into =['No Model (DNS)', - 'Spatial filtering (LES)', 'One-point moment', 'One-point PDF']) , - bloc_one_point = BLOC(condition= "TurbulenceModellingType == 'One-point moment'", - RANSModel = SIMP(statut="o", typ="TXM", into=['Turbulent-Viscosity Model(TVM)', 'Reynolds Stress Model (RSM)']), - bloc_TVM = BLOC(condition= "RANSModel == 'Turbulent-Viscosity Model(TVM)'", - TVMChoice = SIMP(typ='TXM', statut='o', into=['k-epsilon', 'k-omega']), - ), # fin bloc_TVM - bloc_RSM = BLOC(condition = "RANSModel == 'Reynolds Stress Model (RSM)'", - RSMChoice = SIMP(typ='TXM', statut='o', into=['Rotta', 'LRR-IP','LRR-QI','SSG']), - ), # fin bloc_RSM - ), # fin bloc_one_point - bloc_one_spatial = BLOC(condition = "TurbulenceModellingType == 'Spatial filtering (LES)'", - ChoiceOfApproach = SIMP(typ='TXM', statut='o', into=['Field-based LES', 'Filtered Density Function (FDF)']), - SubgridScaleModel = SIMP(typ='TXM', statut='o', into=['No SGS', 'Smagorinsky','Dynamical model', 'SGS Transport Equations']), - ), # fin bloc_one_spatial - bloc_one_point_pdf = BLOC(condition = "TurbulenceModellingType == 'One-point PDF'", - ChoiceOfApproach = SIMP(typ='TXM', statut='o', into=['One-point Eulerian PDF', 'One-particle Lagrangian PDF']), - bloc_lagrangian_pdf=BLOC(condition = "ChoiceOfApproach == 'One-particle Lagrangian PDF'", - StochasticModel = SIMP(typ='TXM', statut='o', into=['Langevin','Other'], defaut='Langevin'), - )# fin lagrangian - ), # fin bloc_one_point_pdf - bloc_no_model = BLOC(condition = "TurbulenceModellingType == 'No Model (DNS)'", - ChoiceOfApproach = SIMP(statut='o', typ='TXM', into=['Field-based DNS', 'N-Particle Method']), - bloc_Field = BLOC(condition = "ChoiceOfApproach == 'Field-based DNS'", - NumericalMethod=SIMP(statut='o', typ='TXM', into=['FV', 'Spectral Method']), - ),# fin bloc_Field - bloc_N_particle = BLOC(condition = "ChoiceOfApproach == 'N-Particle Method'", - NumericalMethod=SIMP(statut='o', typ='TXM', into=['SPH', 'Vortex Method']), - ),# fin bloc_N_particle - ), # fin bloc_no_model -)# fin du bloc return de la fonction factTurbulence - -JdC = JDC_CATA ( - code = 'Vimmp', - # faire un validateur qui verifie que si on active reactions chimiques il faut que les masses molaires soient rentrees -) - -Component = OPER(nom='Component', sd_prod=composant, - SystemType = SIMP(typ='TXM', into=['Quantum system', 'Classical partical system', 'Continuum system'], statut='o'), - b_quantum = prepareBlocSystemType('Quantum system'), - b_classical = prepareBlocSystemType('Classical partical system'), - b_continuum = prepareBlocSystemType('Continuum system'), -) - -Species = PROC(nom='Species', - Specie = FACT( statut='o', max ="**", - Name = SIMP( statut='o', typ=(especeChimique,'createObject') ), - masse_molaire = SIMP( statut='f', typ='R',), - ) -) - -Physical_Description = PROC(nom='Physical_Description', - Component = SIMP(typ=composant, statut ='o',), -# bloc_FluideMacro = BLOC(condition = 'systemType == "Continuum system"',) -# faire un validateur qui verifie que si on active reactions chimiques il faut que les masses molaires soient rentrees - -# ------------------------------------ Bloc FluidMacro ---------------------------------- - bloc_FluideMacro = BLOC(condition = 'getEficasAttribut(Component,"SystemType") == "Continuum system"', - #bloc_FluideMacro = BLOC(condition = '"Fields" in getEficasListOfAttributs(Component,["NumericalModel","ModelType"])' , - # n est ce pas plutot un des modelNumrerique vaut Field ? ou faut-il les 2 - FluidComplexe = SIMP(typ=bool, statut='o', defaut = False), - - FlowNature = SIMP(typ='TXM', statut='o', into =['Laminar', 'Turbulent'], position='global'), -# ----------- FlowNature Turbulent - bloc_FlowNature_Turbulent = BLOC(condition = ' FlowNature == "Turbulent"', - TurbulenceForFlowDynamics = FactTurbulence('o'), -## PNPN a faire -# # controle de coherence entre les modeles de turbulences et les modeles numeriques choisis ), -# # Consigne = SIMP(statut ="o", homo="information", typ="TXM",defaut ='Incoherence') -# # il faut verifier la coherence entre le model de turbulence et le model type ), -# - ), #------ fin bloc_FlowNature_Turbulent - - -# ---------------------- Effets thermiques - - Thermal = FACT (statut ='o', - ThermalEffects = SIMP(typ='TXM', statut='o', into =['Non thermal', - 'No effect on flow dynamics', 'Effect on flow dynamics'], defaut='Non thermal'), - - bloc_NonThermalEffects = BLOC(condition = ' ThermalEffects == "Non thermal" or ThermalEffects == "No effect on flow dynamics"', - DensityEquationOfState = SIMP(typ='TXM', statut='o', into =['Constant density'], defaut = 'Constant density'), - ), # fin bloc_NonThermalEffects - - bloc_ThermalEffects_Active = BLOC(condition = ' ThermalEffects == "Effect on flow dynamics"', - DensityEquationOfState = SIMP(typ='TXM', statut='o', into =['Variable density', 'Compressible']), -# PNJPM est ce suffisant ? - ), # fin bloc_ThermalEffects_Active - bloc_ThermalEffects = BLOC(condition = ' ThermalEffects == "Effect on flow dynamics" or ThermalEffects == "No effect on flow dynamics"', - bloc_scalar_thermal_flux = BLOC (condition = "FlowNature == 'Turbulent'", - ThermalFluxModel = FactTurbulence('f'), - ),# fin bloc_scalar_thermal_flux - WithChemicalReactions = SIMP(typ=bool, statut ='o', defaut = False), - ), # fin bloc_ThermalEffects - ),# fin Fact Thermal - -# ---------------------- Scalaire additional - bloc_scalar_FluidTurbulentandNonComplexe = BLOC(condition = "FluidComplexe == False and FlowNature == 'Turbulent'", - AdditionalScalars = FACT(statut = 'o', - Scalar = FACT(statut = 'f', max ='**', - Name = SIMP(typ='TXM', statut='o',), - ScalarFluxModel = FactTurbulence('f'), - ),# Scalar - ),# AdditionalScalars - ), # fin FluidTurbulentandNonComplexe - bloc_scalar_FluidLaminaireandNonComplexe = BLOC (condition = "FluidComplexe == False and FlowNature == 'Laminar'", - AdditionalScalars = FACT (statut = 'o', - Scalar = FACT ( statut = 'f', max ='**', - Name = SIMP(typ='TXM', statut='o',), - ),# Scalar - ),# AdditionalScalars - ), # fin FluidLaminaireandNonComplexe - bloc_FlowNature_Turbulent_For_Scalars = BLOC(condition = ' FlowNature == "Turbulent"', - ScalarTurbulenceModelling = FactTurbulence('f'), - ), - # il faut une validation de coherence entre l existence de tous les turbulencesModelling - ),# fin bloc_FluideMacro -) - -Interactions = PROC(nom='Interactions', - InteractionComposant = FACT( max = '**', - origine = SIMP(typ=modeleNumDuCompo, statut='o'), - destination = SIMP(typ=modeleNumDuCompo, statut='o'), -# PN a derouler avec une fonction - monBloc_FFDP = BLOC ( - condition = 'getEficasAttribut(origine,"ModelType") == "Fields" and getEficasAttribut(destination,"ModelType") == "Particles"' , - termeLE = SIMP(typ='TXM', statut='o', into = dictTermeLE['Fields','Particles'],fenetreIhm='menuDeroulant'), - ), - monBloc_DPFF = BLOC ( - condition = 'getEficasAttribut(origine,"ModelType") == "Particles" and getEficasAttribut(destination,"ModelType") == "Fields"' , - termeLE = SIMP(typ='TXM', statut='o', into = dictTermeLE['Particles','Fields'],fenetreIhm='menuDeroulant'), - ), - monBloc_Saturne_Fluent = BLOC ( - condition = 'getEficasAttribut(origine,"Solver") == "Saturne" and getEficasAttribut(destination,"Solver") == "Fluent"' , - Format = SIMP(typ='TXM', statut='o', into = calculCommun( "Saturne", "Fluent",dictCodeFormat) ), - ), - monBloc_Saturne_OpenFoam = BLOC ( - condition = 'getEficasAttribut(origine,"Solver") == "Code_Saturne" and getEficasAttribut(destination,"Solver") == "OpenFOAM"' , - Format = SIMP(typ='TXM', statut='o', into = calculCommun( "Code_Saturne", "OpenFOAM",dictCodeFormat) ), - monBloc_conversion = BLOC (condition = 'Format == "Use converter"', - converter = SIMP(typ='TXM', statut='o', into = dictCodeConvertisseur['Saturne', 'OpenFOAM']), - ), - ), - ), -) -dict_condition={'NumericalMethod' : ('Interactions', 'Component') } -Simulated_Time_Lapse = PROC( nom ="Simulated_Time_Lapse", - Initial_Time = SIMP( statut='o', typ='R'), - Duration = SIMP( statut='o', typ='R'), -) -# -Geometric_Domain= OPER( nom='Geometric_Domain', sd_prod=geometricDomain, - Shape = SIMP( statut='o', typ='TXM', into=['Simplified Shape', 'CAD or Mesh']), - b_Shape = BLOC( condition = 'Shape == "Simplified Shape"', - Box = SIMP( statut='o', typ='TXM', into=['Cube', 'Sphere','Cylinder'] ), - b_Cube = BLOC( condition = 'Box == "Cube"', - #Taille_Box_Englobante = SIMP( statut='o', typ='R', max=3, min =3) - # derait etre un Tuple(3) mais a faire apres la projection - Size_Of_Bounding_Box = SIMP( statut='o', typ=Tuple(3), validators=VerifTypeTuple(('R','R','R'),),) - ), # fin b_Cube - b_Boule = BLOC( condition = 'Box == "Sphere"', - Center = SIMP( statut='o', typ='R', max=3, min =3), - # devrait etre un Tuple(3) mais a faire apres la projection - ),# fin b_Boule - b_Cylinder = BLOC( condition = 'Box == "Cylinder"', - Heigth = SIMP( statut="o", typ='R', val_min=0.0, ang='Nanotube length [m]'), - ),# fin b_Tube - b_Boule_ou_Cylinder = BLOC( condition = 'Box == "Sphere" or Box == "Cylinder"', - Radius = SIMP( statut='o', typ='R', val_min=0.0, ang='radius length [m]') , - ),# fin b_Boule_ouCylinder - ), # fin b_Shape -# - b_CAO = creeBlocPourLesFichiers( "Shape == 'CAD or Mesh'",'Domain_File', ['txt','med','I-deas', 'Gmsh', 'top',]), - - Surface=SIMP( statut='o', typ='TXM',max='**',), -) # fin Geometric_Domain - diff --git a/Vimmp/cata_gromacs.py b/Vimmp/cata_gromacs.py deleted file mode 100644 index 3a843993..00000000 --- a/Vimmp/cata_gromacs.py +++ /dev/null @@ -1,137 +0,0 @@ -from cata_Vimmp import * -autonome=False -if autonome : - from Accas import * - JdC = JDC_CATA ( - code = 'Gromacs', - ) - importedBy=[] -else : - from cata_Vimmp import * - implement='Gromacs:Vimmp' - importedBy=[] - - -#CodeSpecific=OPER(nom='CodeSpecific', sd_prod = SPM_SD, -CodeSpecific=PROC(nom='CodeSpecific', - # Gromacs_Physical_Description = FACT(statut='o', - - - Gromacs_Physical_Constraints = FACT(statut = 'o', - # pour Gromacs, rien = linear - Remove_Center_Of_Mass_Motion = SIMP(statut='o', typ ='TXM', into =['Linear', 'Angular', 'Non Activ'], defaut = 'Non Activ'), - b_recalage_cgt = BLOC (condition = "Remove_Center_Of_Mass_Motion != 'Non Activ'", - nstcomm = SIMP ( statut ='o', typ= 'I', defaut = 100, val_min=0, ang="frequency for center of mass motion removal"), - Apply_On_The_Complete_System = SIMP ( statut ='o', typ = bool, defaut = True), - b_porte_sur_tout_le_system = BLOC( condition = 'Apply_On_The_Complete_System == False ', - List_Of_Groups = SIMP ( statut ='o', typ = 'TXM', max= '**'), - ), # b_porte_sur_tout_le_system - ),# b_recalage_cgt - - Bond_Constraints = FACT(statut = 'o', - Bond_Constraint_Type = SIMP(statut='o', typ ='TXM', into =['BC_none', 'h-bonds', 'all-bonds', 'h-angles', 'all-angles'], defaut = 'BC_none'), - # We decided not to use < defaut = 'LINCS' > to avoid displaying the conditional block whithout - # displaying the value of Bond_Constraint_Algorithm - Bond_Constraint_Algorithm = SIMP(statut='f', typ ='TXM', into =['LINCS', 'SHAKE'], sug = 'LINCS'), - b_bond_constraint_algorithm_lincs = BLOC (condition = "Bond_Constraint_Algorithm == 'LINCS'", - #TODO : Use an optional xmlname='lincs-order' parameter to get the dash in xsd which is forbidden in python - lincs_order = SIMP ( statut ='o', typ= 'I', defaut = 4, ang="Highest order in the expansion of the constraint coupling matrix.\n When constraints form triangles, an additional expansion of the same order is applied on top of the normal expansion only for the couplings within such triangles.\n For 'normal' MD simulations an order of 4 usually suffices, 6 is needed for large time-steps with virtual sites or BD.\n For accurate energy minimization an order of 8 or more might be required.\n With domain decomposition, the cell size is limited by the distance spanned by lincs-order+1 constraints.\n When one wants to scale further than this limit, one can decrease lincs-order and increase lincs-iter, since the accuracy does not deteriorate when (1+lincs-iter)*lincs-order remains constant."), - #TODO : Use an optional xmlname='lincs-iter' parameter to get the dash in xsd which is forbidden in python - #Si Statistical_Physics_Equilibrium.Distribution == 'nve' we might propose a default to lincs_iter == 2 - lincs_iter = SIMP ( statut ='o', typ= 'I', defaut = 1,ang="Number of iterations to correct for rotational lengthening in LINCS.\n For normal runs a single step is sufficient, but for NVE runs where you want to conserve energy accurately or for accurate energy minimization you might want to increase it to 2."), - #TODO : Use an optional xmlname='lincs-warnangle' parameter to get the dash in xsd which is forbidden in python - lincs_warnangle = SIMP ( statut ='o', typ= 'I', defaut = 30, val_max=359, val_min=0, ang="[degrees] maximum angle that a bond can rotate before LINCS will complain"), - ),# b_bond_constraint_algorithm_lincs - - b_bond_constraint_algorithm_shake = BLOC (condition = "Bond_Constraint_Algorithm == 'SHAKE'", - #TODO : Use an optional xmlname='shake-tol' parameter to get the dash in xsd which is forbidden in python - shake_tol = SIMP ( statut ='o', typ= 'R', defaut = 0.0001, ang="relative tolerance for SHAKE"), - ),# b_bond_constraint_algorithm_shake - Morse = SIMP(statut='f', typ ='TXM', into =['no', 'yes'], defaut = 'no'), - - ), # Bond_Constraints - - Temperature_Coupling = FACT(statut = 'o', - tcoupl = SIMP(statut='o', typ ='TXM',into =['Non Activ', 'Berendsen','Nos-Hoover','Andersen','Andersen-Massive','V-Rescale'],position='global', defaut = 'Non Activ'), - b_t_coupling = BLOC(condition = "tcoupl != 'Non Activ'", - Groups_Separatly_Coupled = SIMP(statut='o', typ = bool, defaut = False), - b_groups_separatly_coupled = BLOC(condition = "Groups_Separatly_Coupled == True", - #TODO : Use an translate name xmlname='tc-grps' parameter to get the dash in xsd which is forbidden in python and better name for users - # TC_Group_Param = FACT(statut='o', max ='**', - TC_Group_Param = FACT(statut='o', max ='**', - Name_Of_Group = SIMP(statut='o', typ ='TXM'), - tau_t = SIMP(statut='o', typ ='R',ang="time constant for coupling (one for each group in tc-grps), -1 means no temperature coupling",nomXML='tau_t'), #Corriger pour que nomXML='tau-t' soit possible - b_tau_t = BLOC(condition = "tau_t != -1", - ref_t = SIMP(statut='o', typ ='R',ang="reference temperature for coupling (one for each group in tc-grps)"), - ), # b_tau_t - ), # tc_group_param - ),#b_groups_separatly_coupled - ), # b_t_coupling - ), # Temperature_Coupling - - ), # Gromacs_Physical_Constraints - - # ), # Gromacs_Physical_Description - - - - Gromacs_Numerical_Description = FACT(statut='o', - Integrator = SIMP(statut='o',typ='TXM', into=['steep','md'] ), - b_steep = BLOC(condition = " Integrator == 'steep'", - emtol = SIMP(statut='o', typ='R', ang="(10.0) [kJ mol-1 nm-1] the minimization is converged when the maximum force is smaller than this value",defaut = 10.0), - emstep=SIMP(statut='o', typ='R', ang="(0.01) [nm] initial step-size",defaut=0.001), - nstcgsteep=SIMP(statut='f', typ='I', ang="(1000) [steps] frequency of performing 1 steepest descent step while doing conjugate gradient energy minimization.",defaut=1000), - nbfgscorr=SIMP(statut='f', typ='I', ang="(10) [steps] Number of correction steps to use for L-BFGS minimization. A higher number is (at least theoretically) more accurate, but slower.",defaut=10), - ), - # Consigne = SIMP(statut ="o", homo="information", typ="TXM", defaut=''), - # cf nb de step modele commun --> a decider - Nb_Of_Steps = SIMP(statut='o', typ ='I', val_min = 1), - #EXO: Remonter ce parametre dans le FACT Temperature_Coupling - #TODO : Lier la valeur par defaut de nsttcouple a la valeur de nstlist pour la projection xsd - b_t_coupling_num = BLOC(condition = "tcoupl != 'Non Activ'", - nsttcouple = SIMP(statut ='o', typ='I', defaut=-1), - ), - ), - Gromacs_Neighbor_Searching = FACT(statut = 'o', - cutoff_scheme = SIMP(statut='o', typ ='TXM', into = ['verlet','group'],), - #TODO : Analyser plus en details les valeurs par defaut possibles pour ce parametre - nstlist = SIMP(statut ='o', typ='I', defaut=10), - nst_type = SIMP(statut ='o', typ='TXM', into=['grid','simple'], defaut='grid'), - Consigne = SIMP(statut='o',typ='TXM',homo='information',defaut='pbc parameter comes from the common data model'), - #TODO : la relation a pbc n'est pas clair ds la doc - periodic_molecules = SIMP(statut ='o', typ=bool), - b_rlist = BLOC(condition = "cutoff_scheme == 'group'", - rlist = SIMP(statut ='o', typ='I', defaut=-1,ang="[nm]"), - ), - rcoulomb = SIMP(statut ='o', typ='R', defaut=1, val_min=0,ang="[nm] distance for the Coulomb cut-off"), - rvdw = SIMP(statut ='o', typ='R', defaut=1, val_min=0,ang="[nm] distance for the LJ or Buckingham cut-off"), - ), - - Gromacs_Initial_Conditions = FACT(statut='f', - gen_vel = SIMP(statut='o', typ = 'TXM', into=['yes','no'], defaut = 'yes'), - b_Velocity_Generation = BLOC(condition = "gen_vel == 'yes'", - gen_temp = SIMP(statut='o', typ='R', ang='temperature for Maxwell distribution'), - gen_seed = SIMP(statut='o', typ='I', ang='used to initialize random generator,when -1 a pseudo random seed is used', defaut = 1993), - ), - ), # Gromacs_Initial_Conditions - - Gromacs_Run_Options = FACT(statut='o', - UserDef=SIMP(statut='f', typ='TXM', into=['-DFLEX_SRC',]), - Files = FACT(statut='o', - #If FichierNoAbs : file may not exist ! - MDP_Initial_Input_File = SIMP(statut='f', typ = ('Fichier' ,'mdp Files (*.mdp);;All Files (*)')), - Gromos_File = SIMP(statut='o', typ = ('Fichier' ,'gro Files (*.gro);;All Files (*)')), - # en entree de grompp et de mdrun option -c - Gromacs_Topology_File = SIMP(statut='o', typ = ('Fichier' ,'top Files (*.top);;All Files (*)')), - Gromacs_Index_File = SIMP(statut='f', typ = ('Fichier' ,'ndx Files (*.ndx);;All Files (*)')), - MDP_Generated_File = SIMP(statut='f', typ = ('FichierNoAbs' ,'mdp Files (*.mdp);;All Files (*)')), - # le MD_Output_File (-o pour grommp devient le -s de de mdrun) - Run_Generated_File = SIMP(statut='f', typ = ('Fichier' ,'tpr Files (*.tpr);;All Files (*)','Sauvegarde')), - log_File = SIMP(statut='f', defaut ='/tmp/EM.log' , typ=('FichierNoAbs','log Files (*.log);;All Files (*)')), - Energie_Output_File = SIMP(statut='f', typ = ('Fichier' ,'edr Files (*.edr);;All Files (*)','Sauvegarde')), - Trajectory_Output_File = SIMP(statut='f', typ = ('Fichier' ,'trr Files (*.trr);;All Files (*)','Sauvegarde')), - ), # Files_Energy_Minimization - ), # Gromacs_Run_Options - -) - diff --git a/Vimmp/cata_gromacs_test_driver_0.comm b/Vimmp/cata_gromacs_test_driver_0.comm deleted file mode 120000 index ab70cf61..00000000 --- a/Vimmp/cata_gromacs_test_driver_0.comm +++ /dev/null @@ -1 +0,0 @@ -CNT53_12x057.comm \ No newline at end of file diff --git a/Vimmp/create_em.mdp.py b/Vimmp/create_em.mdp.py deleted file mode 100644 index 11837ae6..00000000 --- a/Vimmp/create_em.mdp.py +++ /dev/null @@ -1,48 +0,0 @@ -#! /usr/bin/env python -# -*- coding:utf-8 -*- - -import cata_gromacs_driver as mdm -import pyxb - -#mdm.pyxb.GlobalValidationConfig._setContentInfluencesGeneration(mdm.pyxb.GlobalValidationConfig.NEVER) -mdm.pyxb.GlobalValidationConfig._setContentInfluencesGeneration(mdm.pyxb.GlobalValidationConfig.ALWAYS) -mdm.pyxb.GlobalValidationConfig._setInvalidElementInContent(mdm.pyxb.GlobalValidationConfig.RAISE_EXCEPTION) -mdm.pyxb.GlobalValidationConfig._setOrphanElementInContent(mdm.pyxb.GlobalValidationConfig.RAISE_EXCEPTION) - -jdd = mdm.CreateFromDocument(open('gromacs_em+nvt_v1.xml').read()) -print jdd.toDOM().toprettyxml() - -#em_mdc=jdd.CDM[0] -em_mdc=jdd.step_Vimmp[0] -if not(type(em_mdc) == mdm.T_CDM): raise Exception("ClassType mismatch: Expecting a mdm.T_CDM class type.") -#em_spc=jdd.Code_Specific[0] -em_spc=jdd.step_Vimmp[1] -if not(type(em_spc) == mdm.T_CodeSpecific): raise Exception("ClassType mismatch: Expecting a mdm.T_CodeSpecific class type.") -file_input_mdp_name=em_spc.Gromacs_Run_Options.Files_Energy_Minimization.MDP_Initial_Input_File -if os.access(file_input_mdp_name,os.R_OK) : txt=open(file_input_md_name).read() -else: txt="" - -txt+="define = "+str(em_spc.Gromacs_Run_Options.UserDef)+"\n" -txt+="integrator = "+str(em_spc.Gromacs_Numerical_Description.Integrator)+"\n" -txt+="nsteps = "+str(em_spc.Gromacs_Numerical_Description.Nb_Of_Steps)+"\n" -txt+="emtol = "+str(em_spc.Gromacs_Numerical_Description.emtol)+"\n" -txt+="emstep = "+str(em_spc.Gromacs_Numerical_Description.emstep)+"\n" -txt+="constraints = "+str((em_spc.Gromacs_Physical_Constraints.Bond_Constraints.Bond_Constraint_Type == 'BC_none') and 'none' or em_spc.Gromacs_Physical_Constraints.Bond_Constraints.Bond_Constraint_Type)+"\n" -txt+="cutoff-scheme = "+str(em_spc.Gromacs_Neighbor_Searching.cutoff_scheme)+"\n" -txt+="nstlist = "+str(em_spc.Gromacs_Neighbor_Searching.nstlist)+"\n" -txt+="ns_type = "+str(em_spc.Gromacs_Neighbor_Searching.nst_type)+"\n" -assert(em_mdc.Boundary_Conditions[0].Type_Of_Boundary_Condition == u'Periodic') - -txt+="pbc = "+str(em_mdc.Boundary_Conditions[0].Direction.lower())+"\n" -txt+="periodic_molecules = "+str(em_spc.Gromacs_Neighbor_Searching.periodic_molecules and 'yes' or 'no')+"\n" -txt+="rlist = "+str(em_spc.Gromacs_Neighbor_Searching.rlist)+"\n" -txt+="rcoulomb = "+str(em_spc.Gromacs_Neighbor_Searching.rcoulomb)+"\n" -txt+="rvdw = "+str(em_spc.Gromacs_Neighbor_Searching.rvdw)+"\n" - -file_output_mdp_name=em_spc.Gromacs_Run_Options.Files_Energy_Minimization.MDP_File -file_output_mdp = open( file_output_mdp_name, 'w') -file_output_mdp.write(txt) -file_output_mdp.close() - - - diff --git a/Vimmp/fluid+mapper+particle.comm b/Vimmp/fluid+mapper+particle.comm deleted file mode 120000 index a0a509af..00000000 --- a/Vimmp/fluid+mapper+particle.comm +++ /dev/null @@ -1 +0,0 @@ -cata_CSAndCPS_v11_test_driver_1.comm \ No newline at end of file diff --git a/Vimmp/fluid+mapper+particle.xml b/Vimmp/fluid+mapper+particle.xml deleted file mode 120000 index d547b537..00000000 --- a/Vimmp/fluid+mapper+particle.xml +++ /dev/null @@ -1 +0,0 @@ -cata_CSAndCPS_v11_test_driver_1.xml \ No newline at end of file diff --git a/Vimmp/fluid+particle.comm b/Vimmp/fluid+particle.comm deleted file mode 120000 index b62f18e9..00000000 --- a/Vimmp/fluid+particle.comm +++ /dev/null @@ -1 +0,0 @@ -cata_CSAndCPS_test_driver_0.comm \ No newline at end of file diff --git a/Vimmp/fluid+particle.xml b/Vimmp/fluid+particle.xml deleted file mode 120000 index b58bb32c..00000000 --- a/Vimmp/fluid+particle.xml +++ /dev/null @@ -1 +0,0 @@ -cata_CSAndCPS_test_driver_0.xml \ No newline at end of file diff --git a/Vimmp/gromacs_em+nvt_v1.comm b/Vimmp/gromacs_em+nvt_v1.comm deleted file mode 100644 index 90cdb777..00000000 --- a/Vimmp/gromacs_em+nvt_v1.comm +++ /dev/null @@ -1,161 +0,0 @@ - -NanoTube12_EM=CDM(Title='(NanoTubeC53) Energy minimization ', - Simulated_Time_Lapse=_F(Initial_Time=0.0, - Duration=100.0,), - Geometric_Domain=_F(Shape='Simplified Shape', - Box='Cube', - Size_Of_Bounding_Box=(16.0,16.0,16.0), - Surface=('INT1','INT52',),), - System_Component=_F(General_Level_Of_Description='Mesoscopic', - Component='Classical_Particle System', - Physical_Description_Particle=_F(List_Of_Species=_F(Number_Of_Species=1, - Specie=_F(Name_Of_Specie='C', - Mass_Molaire=12.011, - Number_of_Particle=784,),), - List_Of_Bonded_Particles=_F(Bonded_Particles=(_F( - Name_Of_Bonded_Particles='C1', - Species_in_Particle=('C','C',),), - _F( - Name_Of_Bonded_Particles='C2', - Species_in_Particle=('C','C','C',),), - _F( - Name_Of_Bonded_Particles='C3', - Species_in_Particle=('C','C','C','C',),),),), - List_Of_Interactions=_F(Bonded_Interactions=(_F( - Type_Of_Bonded_Interaction='Covalent Bond Angle', - Interaction_Angles_Parameters=_F( - Apply_To_Bonded_Particles=('C3','C3',), - Spring_Stifness=1.0, - Mean_Bond_Angle=2.0,),), - _F( - Type_Of_Bonded_Interaction='Covalent Bond Length', - Interaction_Length_Parameters=_F( - Apply_To_Bonded_Particles=('C2',), - Spring_Stifness=3.0, - Mean_Bond_Length=4.0,),),), - Unbonded_Interactions=_F( - Type_Of_Unbonded_Interaction='Repulsion_and_VdW', - Species_Pair_Parameters=_F( - Type_Repulsion_and_VdW='Lennard_Jones', - Species_Pair=('C','C',), - VdW_Radius=0.0355, - Depth_Of_The_Potential_Well=0.292288,),), - External_Field_Interaction=_F( - Type_Of_Interaction_With_An_External_Field='No',),), - Statistical_Physics=_F(Type_Of_Statistical_Physics='No',),), - Particle_Representation=_F(Representation_Type='Particle_Representation', - Type_Of_Entity='Atom', - Numerical_Particle_Model=_F(Type_Of_State_Vector='Kinetic',), - Definition_Numerical_Model=_F(Numerical_Model='MD', - Structure_Of_The_Evolution_Law=\ - 'Newton equations',),),), - Boundary_Conditions=_F(Type_Of_Boundary_Condition='Periodic', - Direction='XYZ',),); - -NanoTube12_TE=CDM(Title='(NanoTubeC53) Thermal Equilibrium', - Simulated_Time_Lapse=_F(Initial_Time=0.0, - Duration=100.0,), - Geometric_Domain=_F(Shape='Simplified Shape', - Box='Cube', - Size_Of_Bounding_Box=(16.0,16.0,16.0), - Surface=('INT1','INT52',),), - System_Component=_F(General_Level_Of_Description='Mesoscopic', - Component='Classical_Particle System', - Physical_Description_Particle=_F(List_Of_Species=_F(Number_Of_Species=1, - Specie=_F(Name_Of_Specie='C', - Mass_Molaire=12.011, - Number_of_Particle=784,),), - List_Of_Bonded_Particles=_F(Bonded_Particles=(_F( - Name_Of_Bonded_Particles='C1', - Species_in_Particle=('C','C',),), - _F( - Name_Of_Bonded_Particles='C2', - Species_in_Particle=('C','C','C',),), - _F( - Name_Of_Bonded_Particles='C3', - Species_in_Particle=('C','C','C','C',),),),), - List_Of_Interactions=_F(Bonded_Interactions=(_F( - Type_Of_Bonded_Interaction='Covalent Bond Angle', - Interaction_Angles_Parameters=_F( - Apply_To_Bonded_Particles=('C3','C3',), - Spring_Stifness=1.0, - Mean_Bond_Angle=2.0,),), - _F( - Type_Of_Bonded_Interaction='Covalent Bond Length', - Interaction_Length_Parameters=_F( - Apply_To_Bonded_Particles=('C2',), - Spring_Stifness=3.0, - Mean_Bond_Length=4.0,),),), - Unbonded_Interactions=_F( - Type_Of_Unbonded_Interaction='Repulsion_and_VdW', - Species_Pair_Parameters=_F( - Type_Repulsion_and_VdW='Lennard_Jones', - Species_Pair=('C','C',), - VdW_Radius=0.0355, - Depth_Of_The_Potential_Well=0.292288,),), - External_Field_Interaction=_F( - Type_Of_Interaction_With_An_External_Field='No',),), - Statistical_Physics=_F(Type_Of_Statistical_Physics=\ - 'Equilibrium', - Distribution='nvt', - Target_Temperature=300.0,),), - Particle_Representation=_F(Representation_Type='Particle_Representation', - Type_Of_Entity='Grain', - Numerical_Particle_Model=_F(Type_Of_State_Vector='Kinetic',), - Definition_Numerical_Model=_F(Numerical_Model='MD', - Structure_Of_The_Evolution_Law=\ - 'Newton equations',),),), - Boundary_Conditions=_F(Type_Of_Boundary_Condition='Periodic', - Direction='XYZ',),); - -CodeSpecific(Gromacs_Physical_Constraints=_F(Remove_Center_Of_Mass_Motion='Non Activ', - Bond_Constraints=_F(Bond_Constraint_Type='BC_none',), - Temperature_Coupling=_F(tcoupl='Non Activ',),), - Gromacs_Numerical_Description=_F(Integrator='steep', - emtol=10.0, - emstep=0.001, - Nb_Of_Steps=5000,), - Gromacs_Neighbor_Searching=_F(cutoff_scheme='group', - nstlist=10, - nst_type='grid', - periodic_molecules=True, - rlist=-1, - rcoulomb=1.0, - rvdw=1.0,), - Gromacs_Run_Options=_F(UserDef='-DFLEX_SRC', - Files=_F(Gromos_File=\ - '/home/C65845/VIMMP/vimmp.training/app/gromacs/gromax.testdata/CNT53_12x057.gro', - Gromacs_Topology_File=\ - '/home/C65845/VIMMP/Salome_POLITO_gromacs/GROMACS/CNTconductivity_files/1-EM/TEST/CNT53_12x057.top', - MDP_File='em.mdp', - Run_Input_File='CNT53_12x057_em.trr', - log_File='/tmp/EM.log', - MDP_Initial_Input_File='/tmp/pp',),),); - -CodeSpecific(Gromacs_Physical_Constraints=_F(Remove_Center_Of_Mass_Motion='Linear', - Apply_On_The_Complete_System=True, - Bond_Constraints=_F(Bond_Constraint_Type='BC_none',), - Temperature_Coupling=_F(tcoupl='Non Activ',),), - Gromacs_Numerical_Description=_F(Integrator='md', - Nb_Of_Steps=100000, - nstcomm=1,), - Gromacs_Neighbor_Searching=_F(cutoff_scheme='verlet', - nstlist=10, - nst_type='grid', - periodic_molecules=True, - rlist=1, - rcoulomb=1.0, - rvdw=1.0,), - Gromacs_Initial_Conditions=_F(gen_vel='yes', - gen_temp=300.0, - gen_seed=-1.0,), - Gromacs_Run_Options=_F(Files=_F(Gromos_File=\ - '/home/C65845/VIMMP/vimmp.training/app/gromacs/gromax.testdata/CNT53_12x057.gro', - Gromacs_Topology_File=\ - '/home/C65845/VIMMP/Salome_POLITO_gromacs/GROMACS/CNTconductivity_files/1-EM/TEST/CNT53_12x057.top', - MDP_File='nvt.mdp', - Run_Input_File='CNT53_12x057_nvt.trr', - log_File='/tmp/nvt.log', - MDP_Initial_Input_File=\ - '/home/C65845/VIMMP/vimmp.training/app/session10/datafiles/nvt_initial.mdp',),),); -#CHECKSUM:b39984f8d550e349da6b357927ed35f6 -:FIN CHECKSUM \ No newline at end of file diff --git a/Vimmp/prefs.py b/Vimmp/prefs.py deleted file mode 100644 index 8567802b..00000000 --- a/Vimmp/prefs.py +++ /dev/null @@ -1,22 +0,0 @@ -# Copyright (C) 2007-2012 EDF R&D -# -# 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 -# -code="Vimmp" -import sys, os -if os.path.dirname(os.path.abspath(__file__)) not in sys.path : - sys.path.insert(0,os.path.dirname(os.path.abspath(__file__))) diff --git a/Vimmp/prefs_Vimmp.py b/Vimmp/prefs_Vimmp.py deleted file mode 100644 index 31b2ca68..00000000 --- a/Vimmp/prefs_Vimmp.py +++ /dev/null @@ -1,52 +0,0 @@ -# -*- coding: utf-8 -*- -# maConfiguration MANAGEMENT OF EDF VERSION -# ====================================================================== -# COPYRIGHT (C) 1991 - 2002 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# -# -# ====================================================================== - -import os,sys -# repIni sert a localiser le fichier editeur.ini -# Obligatoire -repIni=os.path.dirname(os.path.abspath(__file__)) -INSTALLDIR=os.path.join(repIni,'..') -sys.path[:0]=[INSTALLDIR] - - -# lang indique la langue utilisee pour les chaines d'aide : fr ou ang -lang='fr' - -# Codage des strings qui accepte les accents (en remplacement de 'ascii') -encoding='iso-8859-1' - -# -#typeDeCata='XML' -catalogues=( - ('Vimmp','cps',os.path.join(repIni,'cata_cps.py'),'python','python'), - ('Vimmp','gromacs',os.path.join(repIni,'cata_gromacs.py'),'python','python'), - ('Vimmp','Vimmp',os.path.join(repIni,'cata_Vimmp.py'),'python','python'), -) -#nombreDeBoutonParLigne=4 -simpleClic=True -#closeFrameRechercheCommande=True -boutonDsMenuBar=False -#closeArbre=True -afficheListesPliees=False -#withXSD=True -afficheCommandesPliees = False -#dumpXSD=True -#afficheIhm=False diff --git a/Vimmp/qtEficasVimmp.py b/Vimmp/qtEficasVimmp.py deleted file mode 100755 index 38a990ba..00000000 --- a/Vimmp/qtEficasVimmp.py +++ /dev/null @@ -1,36 +0,0 @@ -#!/usr/bin/env python -# -*- coding: utf-8 -*- -# Copyright (C) 2007-2013 EDF R&D -# -# 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 -# -""" - Ce module sert a lancer EFICAS configure pour Meteo -""" -# Modules Python -# Modules Eficas -import prefs -name='prefs_'+prefs.code -__import__(name) - -import sys -import os -sys.path.append(os.path.join(os.path.abspath(os.path.dirname(__file__)),'../..')) - -import prefs -from InterfaceQT4 import eficas_go -eficas_go.lanceEficas(code=prefs.code) diff --git a/Vimmp/redefinitStep.py b/Vimmp/redefinitStep.py deleted file mode 100644 index 9093038d..00000000 --- a/Vimmp/redefinitStep.py +++ /dev/null @@ -1,17 +0,0 @@ -def newGetattr(self,name): - listeRetour=[] - for step in self.step_Vimmp: - if step.__class__.__name__.find('T_'+name) == 0 : - listeRetour.append (step) - if len(listeRetour) > 0 : return listeRetour - raise AttributeError("%r object has no attribute %r" % (self.__class__.__name__, name)) - -#def activeSurcharge(monType): -# - - -if __name__ == "__main__": - import cata_CSAndCPS_v18_karel_driver as m - m.T_Vimmp.__getattr__ = newGetattr - jdd = m.CreateFromDocument(open('test-karel.xml').read()) - print (jdd.Component[0]) diff --git a/Vimmp/test-karel.comm b/Vimmp/test-karel.comm deleted file mode 100644 index 10dcb8d9..00000000 --- a/Vimmp/test-karel.comm +++ /dev/null @@ -1,77 +0,0 @@ -Diameter=dynamicVariable() -Mass=dynamicVariable() -Position=dynamicVariable() -Velocity=dynamicVariable() -A=userDPD() -num=modeleNumDuCompo() -time=simulatedTime() -geom=systemGeometry() -cube=cadShape() - -SpatialAspects(SystemGeometry=_F(SystemGeometryName=geom, - Shape=_F(ShapeIdentifier=(cube,), - ShapeNature='Typical Geometry', - Box='Cube', - Size_Of_Bounding_Box=(10.0,10.0,10.0,),),),); - -TemporalAspects(Simulated_Time_Laps=_F(name=time, - initialTime=0.0, - finalTime=1.0, - timeDiscretization='Constant Time Step', - constantTimeStep=0.01,),); - -test=Component(SystemType='Classical particle system', - PhysicalDescription=_F(Particles=_F(ParticleNature='Dissipative Particle', - ParticleName=A, - InitialNumberOfParticles=3000, - BondedParticles=False,), - AmbiantMediaInteraction=_F(MomentumExchange=_F(withMomentumExchange=False,), - MassExchange=_F(withMassExchange=False,), - EnergyExchange=_F(withEnergyExchange=False,), - AmbientInducedProcesses=_F(withAmbientInducedProcesses=False,), - AdditionalSamplingOfAmbientMedia=_F( - withAdditionalSamplingOfAmbientMedia=False,),), - ParticleParticleInteraction=_F(BondedInteractions=_F(BondedParticles=False,), - ActionsAtDistance=_F(withActionsAtDistance=True, - TypeOfActionAtDistance=\ - 'Inter-surface forces', - TypeInterSurfaceForce='Soft_Potential', - GrootWarrenRepulsion=25.0, - GrootWarrenCutoff=1.0, - DragCoefficient=4.5, - DragForceCutoff=1.0, - ParticlesPairs=(A,A,),), - ContactPhenomena=_F(withContactPhenomena=False,),), - ParticleWallInteraction=_F(withParticleWallInteraction=False,), - ConstraintsAndReducedStatisticalDescription=_F(Constraint=_F(TypeOfConstraint=('Time marching equilibrium',),),), - StateVector=_F(ParticleDiameter=_F(Diameter=Diameter, - ToSimulate=True, - Initialisation=_F(InitialisationType='ByValue', - ParticleIdentifier=A, - Value=1.0, - SourceTerm=False,),), - ParticleMass=_F(Mass=Mass, - ToSimulate=True, - Initialisation=_F(InitialisationType='ByValue', - ParticleIdentifier=A, - Value=1.0, - SourceTerm=False,),), - ParticlePosition=_F(Position=Position, - ToSimulate=True, - Initialisation=_F(InitialisationType='Not needed',),), - ParticleVelocity=_F(Velocity=Velocity, - ToSimulate=True, - Initialisation=_F(InitialisationType='Not needed', - SourceTerm=False,),),),), - NumericalModel=_F(Identifier=num, - SimulatedTimeLapse=time, - ChoiceOfApproach='Particle_based', - NumericalMethod='DPD', - Solver='LAMMPS',), - BoundaryConditions=_F(BoundaryCondition=_F(TypeOfBoundaryCondition='Periodicity', - ApplyOnShape=(cube,), - ApplyOnStateVariable=(Position,Velocity,), - Direction='XYZ', - ApplyOnAllsParticle=True,),),); -#VERSION_CATALOGUE:VimmpV16:FIN VERSION_CATALOGUE -#CHECKSUM:4f753d1cd737c2cc28dc4cb37cbc94b7 -:FIN CHECKSUM diff --git a/Vimmp/test_cata_gromacs_driver.xml b/Vimmp/test_cata_gromacs_driver.xml deleted file mode 100644 index 8be85e7b..00000000 --- a/Vimmp/test_cata_gromacs_driver.xml +++ /dev/null @@ -1,294 +0,0 @@ - - - - - String - - 3.141590118408203125 - 3.141590118408203125 - - - Simplified Shape - Cube - 3.141590118408203125 - 3.141590118408203125 3.141590118408203125 3.141590118408203125 - 0 - 0 - med - String - String - - - Microscopic - Continuum Sytem - - - 1 - - String - 3.141590118408203125 - 3.141590118408203125 - 1 - 3.141590118408203125 - - - - - String - String String - - - - - Covalent Bond Angle - - String - 0 - 0 - - - String - 0 - 0 - - true - - String String - 0 - 0 - - 0 - 0 - String - - - Repulsion_and_VdW - 3.141590118408203125 - true - 3.141590118408203125 - - Hard_sphere_model - String String - 0 - 0 - - 25 - 1 - 3.141590118408203125 - 0 - - - Hydrodynamic_Field - 9.81000041961669921875 - - values read in file - 3.141590118408203125 - 3.141590118408203125 - txt - String - String - String - - - values directly assigned - 3.141590118408203125 - 3.141590118408203125 - txt - String - String - String - - - uniform value - 3.141590118408203125 - 3.141590118408203125 - Med - String - String - String - - true - String - - - - Non_Equilibrium - nve - 3.141590118408203125 - 3.141590118408203125 - Temperature - - 3.141590118408203125 - String - - - 3.141590118408203125 - String - - - - - Field_Representation - Atom - - Position - true - - - DPD - DPD - Newton equations - - - - - Periodic - XYZ - String - Mass FLux - Neumann - 3.141590118408203125 - - - true - - String - Initial distribution of the state vector - Auto - String - String - a definir avec Eric - - - - - - - Non Activ - 100 - true - String - - BC_none - LINCS - 4 - 1 - 30 - 0.0000999999974737875163555 - no - - - Nos-Hoover - true - - String - 3.141590118408203125 - 3.141590118408203125 - - - - - steep - 10 - 0.0010000000474974513053894 - 1000 - 10 - 1 - -1 - - - verlet - 10 - simple - true - -1 - 1 - 1 - - - no - 3.141590118408203125 - -1 - - - -DFLEX_SRC - - String - String - String - String - String - String - /tmp/EM.log - String - String - - - - - - - - Angular - 100 - true - String - - BC_none - SHAKE - 4 - 1 - 30 - 0.0000999999974737875163555 - yes - - - Non Activ - true - - String - 3.141590118408203125 - 3.141590118408203125 - - - - - steep - 10 - 0.0010000000474974513053894 - 1000 - 10 - 1 - -1 - - - group - 10 - simple - true - -1 - 1 - 1 - - - no - 3.141590118408203125 - -1 - - - -DFLEX_SRC - - String - String - String - String - String - String - /tmp/EM.log - String - String - - - - - diff --git a/VirtualPolymer/VP b/VirtualPolymer/VP deleted file mode 100644 index 983ed055..00000000 --- a/VirtualPolymer/VP +++ /dev/null @@ -1,5 +0,0 @@ -[c_pre_polymer_data_management] -gui = True -data_base = local/ -backup = False -folder_output = /tmp diff --git a/VirtualPolymer/VP_Cata.py b/VirtualPolymer/VP_Cata.py deleted file mode 100644 index a7e29d80..00000000 --- a/VirtualPolymer/VP_Cata.py +++ /dev/null @@ -1,500 +0,0 @@ -# -*- coding: utf-8 -*- -import os, sys -import types -from Accas import * - -MAP_DIRECTORY=os.getenv('MAP_DIRECTORY') -if MAP_DIRECTORY == None : print ('sourcer l environnement Map SVP'); exit() -sys.path.append(MAP_DIRECTORY) -sys.path.append(os.path.join(MAP_DIRECTORY,'lib/python2.7/site-packages/mapy/virtual_polymer_common')) -sys.path.append(os.path.join(MAP_DIRECTORY,'lib/python2.7/site-packages')) - -import types -class Tuple: - def __init__(self,ntuple): - self.ntuple=ntuple - - def __convert__(self,valeur): - if type(valeur) == types.StringType: return None - if len(valeur) != self.ntuple: return None - return valeur - - def info(self): - return "Tuple de %s elements" % self.ntuple - -from for_eficace import filtre_calculation_mechanistic -from for_eficace import filtre_calculation_analitic -from for_eficace import filtre_data_model - -database = os.path.join(MAP_DIRECTORY,'share/map/tests/components/c_pre_polymer_data_management/local/') -database="/home/A96028/MAPVp/my_map_installdir/share/map/tests/components/c_pre_polymer_data_management/local/" -#database = "/home/A96028/MAPVp/my_map_installdir/lib/python2.7/site-packages/mapy/virtual_polymer_common" - -dicoInfoGenerales= { - 'Type_D_Equation' : ('initiation', 'propagation', 'termination', 'stabilization'), - 'Modele_TechnicalUse' : ('cable', 'coating', 'pipes'), - 'Aging_Factor' : { 'predefinedSimulationTime' : ('40years BR top', '40years BR bottom')}, - 'Boundary_Conditions' : ('flux_volume','flux_surface','constant_constration','convection_flux'), - 'posttraitement_Typ' : ('chimique','mecanique','physique'), - } - - -dicoTechnicalUse = {} -dicoEquations = {} -dicoConstantesArrhenius = {} -dicoConstantesNonArrhenius = {} -dicoEquationsParTechnicalUseParModelePartypeDEquation={} -for technicalUse in dicoInfoGenerales['Modele_TechnicalUse'] : - dicoTechnicalUse[technicalUse] = filtre_calculation_mechanistic(database, technicalUse) - dicoEquations[technicalUse] = filtre_data_model(database, 'mechanistic_models',technicalUse) -#print ('dicoEquations', 'cable', dicoEquations['cable']['radio_oxydation_PE_tetra_stabilization']['equa_diff']['stabilization_PO2_POOBAH2__POO2AH2'].keys()) - -import pprint -#pprint.pprint (dicoEquations) -#print (1,dicoTechnicalUse) -#print (dicoEquations.keys()) -#print (dicoEquations['pipes']) -#pprint.pprint (dicoEquations['cable']['base']['initiation']) -#print (dicoTechnicalUse.keys()) - -# --------------------------- blocPourCalculationForMechanisticSelonModeleTechnicalUse ------------ - -def calculGeneralInformations(technicalUse, modelName): -# la class contient l objet modele - monObj = dicoEquations[technicalUse][modelName]['class'] - Material = SIMP(statut='o', typ ='TXM', homo = 'constant', defaut = monObj.materiaux[2:-2]) - stabilized = SIMP(statut='o', typ ='TXM', homo = 'constant', defaut = monObj.stabilise) - EDF_developpement = SIMP(statut='o', typ ='TXM', homo = 'constant', defaut = monObj.dvt_EDF) - Documentation_report = SIMP(statut='o', typ ='TXM', homo = 'constant', defaut = monObj.reference) - Thickness = SIMP(statut='o', typ ='TXM', homo = 'constant', defaut = monObj.thickness) - Aging_conditions = SIMP(statut='o', typ ='TXM', homo = 'constant', defaut = monObj.type_vieil[1:-1]) - Diffusion = SIMP(statut='o', typ = bool, homo = 'constant', defaut = monObj.diffusion) - Evaporation = SIMP(statut='o', typ = bool, homo = 'constant', defaut = monObj.evaporation) - Model_takes_into_account = FACT(statut ='o', Diffusion=Diffusion, Evaporation=Evaporation) - return FACT(statut = 'o',Material=Material,stabilized=stabilized,EDF_developpement=EDF_developpement,Documentation_report=Documentation_report,Thickness=Thickness,Aging_conditions=Aging_conditions,Model_takes_into_account=Model_takes_into_account) - - - -def calculAnalyticalEquations(technicalUse,modelName): -# PN il faut ameliorer l algo - dicoArgs={} - dicoListeEquation={} - Consigne = SIMP(statut ="o", homo="information", typ="TXM", defaut = 'Les equations ne sont pas modifiables') - - for debutEquation in dicoInfoGenerales['Type_D_Equation']: - liste=[] - for nomEquation in dicoEquations[technicalUse][modelName]['equations'].keys(): - if nomEquation.find(debutEquation) != -1 : - liste.append(dicoEquations[technicalUse][modelName]['equations'][nomEquation] ) - dicoListeEquation[debutEquation]=liste - for debutEquation in dicoInfoGenerales['Type_D_Equation']: - dicoArgsDuFact={} - for chaineEquation in dicoListeEquation[debutEquation]: - nom,params=chaineEquation.split("\t\t") - dicoArgsDuFact[nom]=SIMP(statut = 'o', typ ='TXM', defaut = params, homo= 'constant') - dicoArgs[debutEquation]=FACT(statut = 'o',**dicoArgsDuFact) - Equations = FACT(statut = 'o',Consigne = Consigne,**dicoArgs) - - # on le garde pour pouvoir l utiliser plus tard dans DataBase - dicoEquationsParTechnicalUseParModelePartypeDEquation[technicalUse][modelName]=dicoListeEquation - - dicoArgs={} - dicoArgsArrhenius={} - - # Attention coef est une liste - for constante in dicoEquations[technicalUse][modelName]['class'].coef[0].keys(): - v=dicoEquations[technicalUse][modelName]['class'].coef[0][constante] - if len(v) == 2 : - dicoArgsArrhenius [constante] = SIMP(statut ="o",typ=Tuple(2),validators = VerifTypeTuple(('R','R')),defaut =v ) - dicoConstantesArrhenius[constante ] =v - else : - dicoArgs [constante] = SIMP(statut ="o",typ='R',defaut =v[0] ) - dicoConstantesNonArrhenius[constante ] =v[0] - ConstantesNonArrhenius = FACT(statut = 'o',**dicoArgs) - ConstantesArrhenius = FACT(statut = 'o',**dicoArgsArrhenius) - Constantes = FACT(statut = 'o',ConstantesNonArrhenius = ConstantesNonArrhenius, ConstantesArrhenius=ConstantesArrhenius) - - - return FACT(statut = 'o',Equations = Equations, Constantes=Constantes) - -def calculAgingParameters(): - Time = SIMP(statut='o',typ='R') - Temperature = SIMP(statut='o',typ='R') - DoseRate = SIMP(statut='o',typ='R') - Thickness = SIMP(statut='o',typ='R') - return FACT(statut='o', Time=Time, Temperature=Temperature,DoseRate=DoseRate,Thickness=Thickness) - #dicoArgs['Dicretization'] = SIMP(statut='o',typ='R',) - -def calculInitialParameters(technicalUse,modelName): -# Attention les parametres initiaux sont renvoyes sous forme de liste alors que la valeur attendue est un reel - dicoArgs={} - for (k,v) in dicoTechnicalUse[technicalUse][modelName]['initial_parameter'].items(): - dicoArgs[k]= SIMP(statut='o',typ='R', defaut=v[0]) - return FACT(statut='o',**dicoArgs) - - - -def blocPourCalculationForMechanisticSelonModeleTechnicalUse(technicalUse): -# technicalUse = ['pipes', 'coating', 'cable'] - dicoArgs={} - dicoEquationsParTechnicalUseParModelePartypeDEquation[technicalUse]={} - - condition = "TechnicalUse == '" + technicalUse + "'" - ModelName = SIMP(statut='o',typ='TXM', into = dicoTechnicalUse[technicalUse].keys(),) - SimulationName = SIMP(statut='o',typ='TXM' ) - OutPutFolder = SIMP(statut='o',typ = "Repertoire", defaut ='/tmp') - - for modeleName in dicoTechnicalUse[technicalUse].keys() : - # modeleName est le modele par exmple radio_oxydation_PE_tetra_stabilization - dicoBloc = {} - dicoBloc['condition' ] = "ModelName == '" + modeleName + "'" - dicoBloc['GeneralInformations'] = calculGeneralInformations(technicalUse,modeleName) - dicoBloc['AnalyticalEquation'] = calculAnalyticalEquations(technicalUse,modeleName) - dicoBloc['AgingParameters'] = calculAgingParameters() - dicoBloc['InitialParameters'] = calculInitialParameters(technicalUse,modeleName) - if dicoBloc != None : dicoArgs['b_ModelName_' + modeleName] = BLOC(**dicoBloc) - return BLOC(condition=condition, ModelName = ModelName,SimulationName=SimulationName,OutPutFolder=OutPutFolder,**dicoArgs) - - - -JdC = JDC_CATA ( code='VP', - execmodul=None, - ) - - -# --------------------------------------------------------------------------------- -Calculation_for_Mechanistic = PROC (nom="Calculation_for_Mechanistic", op=None, -# --------------------------------------------------------------------------------- - TechnicalUse= SIMP(statut= 'o',typ= 'TXM',into=dicoInfoGenerales['Modele_TechnicalUse'], defaut = 'cable'), - b_cable = blocPourCalculationForMechanisticSelonModeleTechnicalUse('cable'), - b_pipes = blocPourCalculationForMechanisticSelonModeleTechnicalUse('pipes'), - b_coating = blocPourCalculationForMechanisticSelonModeleTechnicalUse('coating'), - -) - - - -from mapy.virtual_polymer_common import class_data -monMechanisticModel=class_data.Modele() -monMechanisticEquation=class_data.Equation() -if monMechanisticEquation.comment == "" : monMechanisticEquation.comment = ' ' - - - -def chercheConstituant(laClasse): - lesArgs={} - lesArgs['statut']='o' - for constituant in laClasse.constituants : - monIndex=laClasse.constituants.index(constituant) - valdefaut=laClasse.equation[monIndex] - #monSimp=SIMP(statut = 'o', typ = bool, defaut=True) - #lesArgs[constituant]=monSimp - - #lesArgsBloc={} - #nomEquation = ' differentiel_'+constituant - #monSimp2 = SIMP(statut= 'o',typ= 'TXM', defaut = valdefaut) - #laCondition= constituant+' == True' - #lesArgsBloc['condition']=laCondition - #lesArgsBloc[nomEquation]=monSimp2 - #nomBloc = 'b_'+constituant - #leBloc = BLOC(**lesArgsBloc) - #lesArgs[nomBloc]=BLOC(**lesArgsBloc) - #return FACT(**lesArgs) -chercheConstituant(monMechanisticEquation) - -def chercheConstantes(laClasse): - lesArgs={} - lesArgs['statut']='o' - for constante in laClasse.const_cine_nom : - monSimp=SIMP(statut = 'o', typ = bool, defaut=True) - lesArgs[constante]=monSimp - return FACT(**lesArgs) - -def calculBlocAnalyticalEquationsForModification(): - typeReaction = SIMP (statut='o', typ='TXM', into = dicoInfoGenerales['Type_D_Equation']) - monDicoEquation = filtre_data_model(database,'mechanistic_models', 'cable')['base'] - dicoEquation = {} - for typeDeLaReaction in dicoInfoGenerales['Type_D_Equation']: - dicoEquationParReaction = {} - laCondition = "typeReaction == '" + typeDeLaReaction + "'" - dicoParUse = monDicoEquation[typeDeLaReaction] - # duplication pour ordre - listeAModifier = [] - for equationComplete in dicoParUse.keys(): - nom,params = dicoParUse[equationComplete].split("\t\t") - listeAModifier.append(nom) - toModify = SIMP (statut='o', typ='TXM', homo = 'SansOrdreNiDoublon', into=listeAModifier) - - for equationComplete in dicoParUse.keys(): - nom, params = dicoParUse[equationComplete].split("\t\t") - laConditionEquation = "ToModify == '" + nom + "'" - name = SIMP(statut='o', typ='TXM',defaut=nom) - params = params[1:-1] - lesParams = params.split(',') - dicoArgsPourCst = {} - for p in lesParams : - p1 = p[1:-1] - while p1[0] in ("'"," ") : p1=p1[1:] - nomConstante = SIMP(statut ="o", typ ='TXM', defaut = p1) - if p1 in dicoConstantesArrhenius.keys() : dejaArrhenius = True - else : dejaArrhenius = False - arrhenius = SIMP(statut ="o", typ =bool, defaut = dejaArrhenius) - if p1 in dicoConstantesArrhenius.keys() : - monBlocArrhenius=BLOC(condition = "arrhenius == True", value = SIMP(statut ="o",typ=Tuple(2),validators = VerifTypeTuple(('R','R')),defaut = dicoConstantesArrhenius[p1] )) - monBlocNonArrhenius=BLOC(condition = "arrhenius == False", value = SIMP(statut ="o",typ='R' )) - elif p1 in dicoConstantesNonArrhenius.keys() : - monBlocArrhenius=BLOC(condition = "arrhenius == True", value = SIMP(statut ="o",typ=Tuple(2),validators = VerifTypeTuple(('R','R')))) - monBlocNonArrhenius=BLOC(condition = "arrhenius == False", value = SIMP(statut ="o",typ='R',defaut = dicoConstantesNonArrhenius[p1] )) - else : - dicoArgsPourCst[p1]=FACT(statut ='o', nomConstante = nomConstante, arrhenius=arrhenius, b_arrhenus=monBlocArrhenius,b_nonArrhenius=monBlocNonArrhenius) - - dicoEquationParReaction[nom]=BLOC(condition=laConditionEquation, name=name,**dicoArgsPourCst) - dicoEquation['b_'+typeDeLaReaction]=BLOC(condition=laCondition, ToModify=toModify, **dicoEquationParReaction) - return FACT(statut='o', typeReaction = typeReaction, **dicoEquation) - - -def OldcalculBlocAnalyticalEquationsForModification(): -# PN refaire l algo -# print (dicoEquations['cable']['base']['initiation']) - #for technicalUse in dicoInfoGenerales['Modele_TechnicalUse']: - #condition = "TechnicalUse == '" + technicalUse + "'" - for technicalUse in ('cable',): - dicoArgs={} - typeReaction = SIMP (statut='o', typ='TXM', into = dicoInfoGenerales['Type_D_Equation']) - for typeDeLaReaction in dicoInfoGenerales['Type_D_Equation']: - lesArgsBloc={} - laCondition= "typeReaction == '" + typeDeLaReaction + "'" - dicoListeEquation=dicoEquations[technicalUse]['base'][typeDeLaReaction] - ListeEquation = dicoListeEquation.keys() - equationsAModifier=SIMP (statut='o', typ='TXM', max="**", homo = 'SansOrdreNiDoublon', into=ListeEquation) - #print (equationsAModifier) - dicoArgs['b_'+typeDeLaReaction]=BLOC(condition=laCondition, equationsAModifier=equationsAModifier) - return FACT(statut='o', typeReaction = typeReaction, **dicoArgs) - - #for debutEquation in dicoInfoGenerales['Type_D_Equation']: - # dicoArgsDuFact={} - # for chaineEquation in dicoListeEquation[debutEquation]: - # nom,params=chaineEquation.split("\t\t") - # dicoArgsDuFact[nom]=SIMP(statut = 'o', typ ='TXM', defaut = params, homo= 'constant') - # dicoArgs[debutEquation]=FACT(statut = 'o',**dicoArgsDuFact) - #Equations = FACT(statut = 'o',Consigne = Consigne,**dicoArgs) - - #dicoArgs={} - #dicoArgsArrhenius={} - - # Attention coef est une liste - #for constante in dicoEquation[technicalUse]['class'].coef[0].keys(): - # v=dicoEquation[technicalUse]['class'].coef[0][constante] - # if len(v) == 2 : - # dicoArgsArrhenius [constante] = SIMP(statut ="o",typ=Tuple(2),validators = VerifTypeTuple(('R','R')),defaut =v ) - # else : - # dicoArgs [constante] = SIMP(statut ="o",typ='R',defaut =v[0] ) - #ConstantesNonArrhenius = FACT(statut = 'o',**dicoArgs) - #ConstantesArrhenius = FACT(statut = 'o',**dicoArgsArrhenius) - #Constantes = FACT(statut = 'o',ConstantesNonArrhenius = ConstantesNonArrhenius, ConstantesArrhenius=ConstantesArrhenius) - - return FACT(statut = 'o',Equations = Equations, Constantes=Constantes) - - -def blocCreationEquation(): - Aging_Type = SIMP(statut= 'o',typ= 'TXM', min=1,max=1, into=('All', 'thermo', 'radio'), ) - typeReaction = SIMP (statut='o', typ='TXM', into = dicoInfoGenerales['Type_D_Equation']) - lesArgsBloc={} - - for typeDeLaReaction in dicoInfoGenerales['Type_D_Equation']: - laConditionBloc = "TypeReaction == '" + typeDeLaReaction + "'" - dicoListeEquation=dicoEquations['cable']['base'][typeDeLaReaction] - ListeEquation = [] - for l in dicoListeEquation.keys() : ListeEquation.append(l.split('_')[1]) - equationsAModifier=SIMP (statut='o', typ='TXM', max="**", homo = 'SansOrdreNiDoublon', into=ListeEquation) - lesArgsBloc['b_create_'+typeDeLaReaction]=BLOC(condition=laConditionBloc, equationsAModifier=equationsAModifier) - #print (lesArgsBloc) - - return FACT(statut = 'o', Aging_Type=Aging_Type, TypeReaction=typeReaction, **lesArgsBloc) - - -#import pprint -#pprint.pprint (filtre_data_model(database,'mechanistic_models', 'cable')) - - - -# ------------------------------------------ -Database = PROC (nom="Database", op=None, -# ------------------------------------------ - - -# ------------------------------------------------------------------------ - Manage_Database = SIMP (statut= 'o',typ= 'TXM',into=('modify equation', 'create equation', 'modify model', 'create model'),), - - b_creation_equation = BLOC (condition = 'Manage_Database == "create equation"', - Creation_Equation = FACT ( statut = 'o', - Aging_Type = SIMP(statut= 'o',typ= 'TXM', min=1,max=1, into=('All', 'thermo', 'radio'),), - typeReaction = SIMP (statut='o', typ='TXM', into = dicoInfoGenerales['Type_D_Equation']), - ChemicalFormulation = SIMP(statut='o', typ='TXM', ), - Constante = FACT (statut ='o', min=1, max = "**", - Name = SIMP (statut = 'o', typ = 'TXM'), - Arrhenius = SIMP (statut = 'o', typ = bool), - b_Arrhenius = BLOC (condition = 'Arrhenius == True', - A = SIMP (statut = 'o', typ = 'R'), - EA = SIMP (statut = 'o', typ = 'R'), - ), - b_Non_Arrhenius = BLOC (condition = 'Arrhenius == False', - k = SIMP (statut = 'o', typ = 'R'), - ), - ), - ), - ), # fin b_create_equation - b_modify_equation = BLOC (condition = 'Manage_Database == "modify equation"', - Modification = calculBlocAnalyticalEquationsForModification(), - #Constantes = FACT ( statut = 'o', # self.const_cine_nom - # New = SIMP (statut = 'o', typ = bool, defaut=False), - # b_new = BLOC(condition = " New == True" , - # Constante = FACT ( statut = 'o', min=1, max='**', - # Name = SIMP (statut = 'o', typ = 'TXM'), - # ), # fin constante - # ), #fin b_new - # ), # fin constantes - ), # fin b_modify_equation - - - b_create_model = BLOC (condition = 'Type_chgt == "create model"', -# Filtre getMechanisticTechnicalUse(Filtre_TechnicalUse) -# dictionnaire key : nom du modele / valeur classe instancies liste de nom modele -# la classe par defaut getDefaultMechanistic -# renvoie un obj instancie - # toutes les valeurs sont par defaut class_data.Equation - # generer le catalogue avec un fact - Creation = FACT (statut='o', - ID=FACT (statut='o', - Name =SIMP(statut='o',typ='TXM'), # obj.nom - Material=SIMP(statut='o',typ='TXM',),# obj.materiaux[0] - TechnicalUse = SIMP(statut= 'o',typ= 'TXM',into=dicoInfoGenerales['Modele_TechnicalUse']),#defaut=obj.technical_use - Reference=SIMP(statut='o',typ='TXM',), # defaut=monModele.reference, momModele = obj par la suite - Model_Developed_For_EDF = SIMP(typ = bool, statut = 'o'), #defaut = monModele.dvt_EDF[0] - Aging_Type=SIMP(statut= 'o',typ= 'TXM', min=1,max=1, into=('all', 'thermo', 'radio'),), # defaut = monModele.type_vieil -# attention c est une liste --> a reflechir - Stabilizer = SIMP(typ = bool, statut = 'o'), #,defaut = monModele.stabilise - material_thickness = SIMP(typ = 'TXM', statut = 'o', into = ['thin','thick']), # monModele.thickness - Diffusion = SIMP(typ = bool, statut = 'o'),# defaut = monModele.diffusion ,siValide = lienDB.prepareDiffusion - Evaporation = SIMP(typ = bool, statut = 'o'), # defaut monModele.evaporation - Comment = SIMP(statut= 'o',typ= 'TXM',), # classe.comment - ), #fin id - Equations = FACT (statut = 'o', -# remplir avec getEquation sur modele -# dictionnaire avec comme clef 'base' puis initiation ... - Liste=SIMP(statut= 'o',typ='TXM', min=1,max='**', homo='SansOrdreNiDoublon',into =['POOH -> 2P [k]' , 'A [K5,Y5]', 'B', 'C']), -# quand coche je recupere le nom entre crochet + split sur , attention sans blanc -# et on cree le SIMP apres pour recuperer la valeur - K5=SIMP (statut = 'o', typ = 'R' ), - New = SIMP (statut = 'o', typ = bool, defaut=False), -# - b_new = BLOC(condition = " New == True" , - Add=FACT(statut = 'o',max='**', - Filtre = SIMP(statut= 'o',typ= 'TXM',into=dicoInfoGenerales['Type_D_Equation']), - Equations=SIMP(statut= 'o',typ='TXM', min=1,max='**', homo='SansOrdreNiDoublon',into =['POOH -> 2P' , 'A', 'B', 'C']) - ) - ), # b new - ) # fin equations - ), #fin creation - ), # fin create model - - b_modify_model = BLOC (condition = 'Type_chgt == "modify model"', -# Filtre getMechanisticTechnicalUse(Filtre_TechnicalUse) -# dictionnaire key : nom du modele / valeur classe instancies liste de nom modele -# la classe par defaut getDefaultMechanistic -# renvoie un obj instancie - Filtre = FACT (statut='o', - TechnicalUse=SIMP(statut= 'o',typ= 'TXM', min=1,into=dicoInfoGenerales['Modele_TechnicalUse'],), -# si valide - ModeleName=SIMP(statut='o',typ='TXM',into=['A','B']), # a choisir dans la liste des clefs - ), - Modification = FACT (statut='o', - ID=FACT (statut='o', - Name =SIMP(statut='o',typ='TXM'), # obj.nom - Material=SIMP(statut='o',typ='TXM',),# obj.materiaux[0] - TechnicalUse = SIMP(statut= 'o',typ= 'TXM',into=dicoInfoGenerales['Modele_TechnicalUse']),#defaut=obj.technical_use - Reference=SIMP(statut='o',typ='TXM',), # defaut=monModele.reference, momModele = obj par la suite - Model_Developed_For_EDF = SIMP(typ = bool, statut = 'o'), #defaut = monModele.dvt_EDF[0] - Aging_Type=SIMP(statut= 'o',typ= 'TXM', min=1,max=1, into=('all', 'thermo', 'radio'),), # defaut = monModele.type_vieil -# attention c est une liste --> a reflechir - Stabilizer = SIMP(typ = bool, statut = 'o'), #,defaut = monModele.stabilise - material_thickness = SIMP(typ = 'TXM', statut = 'o', into = ['thin','thick']), # monModele.thickness - Diffusion = SIMP(typ = bool, statut = 'o'),# defaut = monModele.diffusion ,siValide = lienDB.prepareDiffusion - Evaporation = SIMP(typ = bool, statut = 'o'), # defaut monModele.evaporation - Comment = SIMP(statut= 'o',typ= 'TXM',), # classe.comment - ), #fin id - Equations = FACT (statut = 'o', -# remplir avec getEquation sur modele -# dictionnaire avec comme clef 'base' puis initiation ... - Liste=SIMP(statut= 'o',typ='TXM', min=1,max='**', homo='SansOrdreNiDoublon',into =['POOH -> 2P [k]' , 'A [K5,Y5]', 'B', 'C']), -# quand coche je recupere le nom entre crochet + split sur , attention sans blanc -# et on cree le SIMP apres pour recuperer la valeur - K5=SIMP (statut = 'o', typ = 'R' ), - New = SIMP (statut = 'o', typ = bool, defaut=False), -# - b_new = BLOC(condition = " New == True" , - Add=FACT(statut = 'o',max='**', - Filtre = SIMP(statut= 'o',typ= 'TXM',into=dicoInfoGenerales['Type_D_Equation']), - Equations=SIMP(statut= 'o',typ='TXM', min=1,max='**', homo='SansOrdreNiDoublon',into =['POOH -> 2P' , 'A', 'B', 'C']) - ) - ), # b new - ) # fin equations - ), #fin modification - ), # fin modify model - -# ------------------------------------------------------------------------ -# b_Model_Analytic = BLOC(condition = "Model_Type == 'analytic model'", -# Type_chgt = SIMP (statut= 'o',typ= 'TXM',into=('modify equation', 'create equation', 'modify model', 'create model') ), -# -# b_creation_equation = BLOC (condition = 'Type_chgt == "create equation"', -# Creation = FACT(statut = 'o', -# Name=SIMP(statut= 'o',typ= 'TXM',), # defaut o.nom -# Equation_Type = SIMP(statut= 'o',typ= 'TXM',into=dicoInfoGenerales['posttraitement_Typ']), # defaut o.type_equa -# PostProcessing = SIMP (statut = 'o', typ = bool,),# o.post_processing -# Calculation_Result = SIMP(statut= 'o',typ= 'TXM'), # defaut o.calculation_result -## dans o.parameters on a une liste -# Parameters=SIMP(statut= 'o',typ='TXM', min=1,max='**', homo='SansOrdreNiDoublon',into =['A', 'Ea', 'C']), -# New = SIMP (statut = 'o', typ = bool, defaut=False), -# b_new = BLOC(condition = " New == True" , -# Param = FACT(statut = 'o', max='**', -# Name=SIMP(statut= 'o',typ= 'TXM',), -# ), #param -# ), # b_new -# Equation = SIMP(statut= 'o',typ= 'TXM'), # defaut o.equation -# Universal_Constants=SIMP(statut= 'o',typ='TXM', min=1,max='**', homo='SansOrdreNiDoublon',into =['A', 'B', 'C']), -# Results_Unit = SIMP(statut= 'o',typ= 'TXM'), # defaut o.results_unit -# Integrate = SIMP (statut = 'o', typ = bool),# defaut o.integrate -# Comment = SIMP(statut= 'o',typ= 'TXM'), # defaut o.comment -# ),# Fact creation -# ), #bloc b_creation_equation - -# b_modification_equation = BLOC (condition = 'Type_chgt == "modify equation"', -# Filtre = FACT(statut = 'o', -# Equation_Type = SIMP(statut= 'o',typ= 'TXM',into=dicoInfoGenerales['posttraitement_Typ']), # defaut o.type_equa -# Equation_Choice = SIMP(statut= 'o',typ= 'TXM',into=['A','B','C']), -# ), -# Modification = FACT(statut = 'o', -# Name=SIMP(statut= 'o',typ= 'TXM',), # defaut o.nom -# Equation_Type = SIMP(statut= 'o',typ= 'TXM',into=dicoInfoGenerales['posttraitement_Typ']), # defaut o.type_equa -# PostProcessing = SIMP (statut = 'o', typ = bool,),# o.post_processing -# Calculation_Result = SIMP(statut= 'o',typ= 'TXM'), # defaut o.calculation_result # dans o.parameters on a une liste -# Parameters=SIMP(statut= 'o',typ='TXM', min=1,max='**', homo='SansOrdreNiDoublon',into =['A', 'Ea', 'C']), -# New = SIMP (statut = 'o', typ = bool, defaut=False), -# b_new = BLOC(condition = " New == True" , -# Param = FACT(statut = 'o', max='**', -# Name=SIMP(statut= 'o',typ= 'TXM',), -# ), #param -# ), # b_new -# Equation = SIMP(statut= 'o',typ= 'TXM'), # defaut o.equation -# Universal_Constants=SIMP(statut= 'o',typ='TXM', min=1,max='**', homo='SansOrdreNiDoublon',into =['A', 'B', 'C']), -# Results_Unit = SIMP(statut= 'o',typ= 'TXM'), # defaut o.results_unit -# Integrate = SIMP (statut = 'o', typ = bool),# defaut o.integrate -# Comment = SIMP(statut= 'o',typ= 'TXM'), # defaut o.comment -# ),# Fact Modification - -# ), #bloc b_modification_equation -# ), # Fin model analytic -# ------------------------------------------------------------------------ -# --------------------------------------------------------------------------- - -) diff --git a/VirtualPolymer/VP_Cata_Calculation.py b/VirtualPolymer/VP_Cata_Calculation.py deleted file mode 100644 index 2d6cb12c..00000000 --- a/VirtualPolymer/VP_Cata_Calculation.py +++ /dev/null @@ -1,152 +0,0 @@ -# -*- coding: utf-8 -*- -import os, sys -import types -from Accas import * - -MAP_DIRECTORY=os.getenv('MAP_DIRECTORY') -if MAP_DIRECTORY == None : print ('sourcer l environnement Map SVP'); exit() -sys.path.append(MAP_DIRECTORY) -sys.path.append(os.path.join(MAP_DIRECTORY,'lib/python2.7/site-packages/mapy/virtual_polymer_common')) -sys.path.append(os.path.join(MAP_DIRECTORY,'lib/python2.7/site-packages')) - -import types -class Tuple: - def __init__(self,ntuple): - self.ntuple=ntuple - - def __convert__(self,valeur): - if type(valeur) == types.StringType: return None - if len(valeur) != self.ntuple: return None - return valeur - - def info(self): - return "Tuple de %s elements" % self.ntuple - -from for_eficace import filtre_calculation_mechanistic -from for_eficace import filtre_calculation_analitic -from for_eficace import filtre_data_model -#print filtre_calculation_analitic - -database = os.path.join(MAP_DIRECTORY,'share/map/tests/components/c_pre_polymer_data_management/local/') -database="/home/A96028/MAPVp/my_map_installdir/share/map/tests/components/c_pre_polymer_data_management/local/" -#database = "/home/A96028/MAPVp/my_map_installdir/lib/python2.7/site-packages/mapy/virtual_polymer_common" -dicoInfoGenerales= { - 'Equation_Liste' : ('initiation', 'propagation', 'termination', 'stabilization'), - 'Modele_TechnicalUse' : ('cable', 'coating', 'pipes'), - 'Aging_Factor' : { 'predefinedSimulationTime' : ('40years BR top', '40years BR bottom')}, - 'Boundary_Conditions' : ('flux_volume','flux_surface','constant_constration','convection_flux'), - 'posttraitement_Typ' : ('chimique','mecanique','physique'), - } - - -dicoTechnicalUse = {} -dicoEquations = {} -for technicalUse in dicoInfoGenerales['Modele_TechnicalUse'] : - dicoTechnicalUse[technicalUse] = filtre_calculation_mechanistic(database, technicalUse) - dicoEquations[technicalUse] = filtre_data_model(database, 'mechanistic_models',technicalUse) - - -# --------------------------- blocPourCalculationForMechanisticSelonModeleTechnicalUse ------------ - -def calculGeneralInformations(dicoEquation,technicalUse): - monObj= dicoEquation[technicalUse]['class'] - Material = SIMP(statut='o', typ ='TXM', homo = 'constant', defaut = monObj.materiaux[2:-2]) - stabilized = SIMP(statut='o', typ ='TXM', homo = 'constant', defaut = monObj.stabilise) - EDF_developpement = SIMP(statut='o', typ ='TXM', homo = 'constant', defaut = monObj.dvt_EDF) - Documentation_report = SIMP(statut='o', typ ='TXM', homo = 'constant', defaut = monObj.reference) - Thickness = SIMP(statut='o', typ ='TXM', homo = 'constant', defaut = monObj.thickness) - Aging_conditions = SIMP(statut='o', typ ='TXM', homo = 'constant', defaut = monObj.type_vieil[1:-1]) - Diffusion = SIMP(statut='o', typ = bool, homo= 'constant', defaut = monObj.diffusion) - Evaporation = SIMP(statut='o', typ = bool, homo= 'constant', defaut = monObj.evaporation) - Model_takes_into_account = FACT(statut ='o', Diffusion=Diffusion, Evaporation=Evaporation) - return FACT(statut = 'o',Material=Material,stabilized=stabilized,EDF_developpement=EDF_developpement,Documentation_report=Documentation_report,Thickness=Thickness,Aging_conditions=Aging_conditions,Model_takes_into_account=Model_takes_into_account) - - - -def calculAnalyticalEquations(dicoEquation,technicalUse): -# PN refaire l algo - dicoArgs={} - dicoListeEquation={} - Consigne = SIMP(statut ="o", homo="information", typ="TXM", defaut = 'Les equations ne sont pas modifiables') - for debutEquation in dicoInfoGenerales['Equation_Liste']: - liste=[] - for nomEquation in dicoEquation[technicalUse]['equations'].keys(): - if nomEquation.find(debutEquation) != -1 : - liste.append(dicoEquation[technicalUse]['equations'][nomEquation] ) - dicoListeEquation[debutEquation]=liste - for debutEquation in dicoInfoGenerales['Equation_Liste']: - dicoArgsDuFact={} - for chaineEquation in dicoListeEquation[debutEquation]: - nom,params=chaineEquation.split("\t\t") - dicoArgsDuFact[nom]=SIMP(statut = 'o', typ ='TXM', defaut = params, homo= 'constant') - dicoArgs[debutEquation]=FACT(statut = 'o',**dicoArgsDuFact) - Equations = FACT(statut = 'o',Consigne = Consigne,**dicoArgs) - - dicoArgs={} - dicoArgsArrhenius={} - - # Attention coef est une liste - for constante in dicoEquation[technicalUse]['class'].coef[0].keys(): - v=dicoEquation[technicalUse]['class'].coef[0][constante] - if len(v) == 2 : - dicoArgsArrhenius [constante] = SIMP(statut ="o",typ=Tuple(2),validators = VerifTypeTuple(('R','R')),defaut =v ) - else : - dicoArgs [constante] = SIMP(statut ="o",typ='R',defaut =v[0] ) - ConstantesNonArrhenius = FACT(statut = 'o',**dicoArgs) - ConstantesArrhenius = FACT(statut = 'o',**dicoArgsArrhenius) - Constantes = FACT(statut = 'o',ConstantesNonArrhenius = ConstantesNonArrhenius, ConstantesArrhenius=ConstantesArrhenius) - - - return FACT(statut = 'o',Equations = Equations, Constantes=Constantes) - -def calculAgingParameters(): - Time = SIMP(statut='o',typ='R',) - Temperature = SIMP(statut='o',typ='R',) - DoseRate = SIMP(statut='o',typ='R',) - Thickness = SIMP(statut='o',typ='R',) - return FACT(statut='o', Time=Time, Temperature=Temperature,DoseRate=DoseRate,Thickness=Thickness) - #dicoArgs['Dicretization'] = SIMP(statut='o',typ='R',) - -def calculInitialParameters(dico,modelName): -# Attention les parametres initiaux sont renvoyes sous forme de liste alors que la valeur attendue est un reel - dicoArgs={} - for (k,v) in dico['initial_parameter'].items(): - dicoArgs[k]= SIMP(statut='o',typ='R', defaut=v[0]) - return FACT(statut='o',**dicoArgs) - - - -def blocPourCalculationForMechanisticSelonModeleTechnicalUse(technicalUse): - print ('traitement ', technicalUse) - dicoArgs={} - condition = "TechnicalUse == '" + technicalUse + "'" - ModelName = SIMP(statut='o',typ='TXM', into = dicoTechnicalUse[technicalUse].keys(),) - SimulationName = SIMP(statut='o',typ='TXM') - for k in dicoTechnicalUse[technicalUse].keys() : - # la clef est le modele - dicoBloc = {} - dicoBloc['condition' ] = "ModelName == '" + k + "'" - dicoBloc['GeneralInformations'] = calculGeneralInformations(dicoEquations[technicalUse],k) - dicoBloc['AnalyticalEquation'] = calculAnalyticalEquations(dicoEquations[technicalUse],k) - dicoBloc['AgingParameters'] = calculAgingParameters() - dicoBloc['InitialParameters'] = calculInitialParameters(dicoTechnicalUse[technicalUse][k],k) - if dicoBloc != None : dicoArgs['b_ModelName_' + k] = BLOC(**dicoBloc) - return BLOC(condition=condition, ModelName = ModelName,SimulationName=SimulationName,**dicoArgs) - - - -JdC = JDC_CATA ( code='VP', - execmodul=None, - ) - - -# ---------------------------------------------- -Calculation_for_Mechanistic = PROC (nom="Calculation_for_Mechanistic", op=None, -# ---------------------------------------------- - TechnicalUse= SIMP(statut= 'o',typ= 'TXM',into=dicoInfoGenerales['Modele_TechnicalUse'], defaut = 'cable'), - b_cable = blocPourCalculationForMechanisticSelonModeleTechnicalUse('cable'), - #b_pipes = blocPourCalculationForMechanisticSelonModeleTechnicalUse('pipes'), - #b_coating = blocPourCalculationForMechanisticSelonModeleTechnicalUse('coating'), - -) - diff --git a/VirtualPolymer/VP_Cata_Database.py b/VirtualPolymer/VP_Cata_Database.py deleted file mode 100644 index fa98b5c5..00000000 --- a/VirtualPolymer/VP_Cata_Database.py +++ /dev/null @@ -1,481 +0,0 @@ -# -*- coding: utf-8 -*- -import os, sys -import types -from Accas import * - -MAP_DIRECTORY=os.getenv('MAP_DIRECTORY') -if MAP_DIRECTORY == None : print ('sourcer l environnement Map SVP'); exit() -sys.path.append(MAP_DIRECTORY) -sys.path.append(os.path.join(MAP_DIRECTORY,'lib/python2.7/site-packages/mapy/virtual_polymer_common')) -sys.path.append(os.path.join(MAP_DIRECTORY,'lib/python2.7/site-packages')) - -import types -class Tuple: - def __init__(self,ntuple): - self.ntuple=ntuple - - def __convert__(self,valeur): - if type(valeur) == types.StringType: return None - if len(valeur) != self.ntuple: return None - return valeur - - def info(self): - return "Tuple de %s elements" % self.ntuple - -from for_eficace import filtre_calculation_mechanistic -from for_eficace import filtre_calculation_analitic -from for_eficace import filtre_data_model -#print filtre_calculation_analitic - -database = os.path.join(MAP_DIRECTORY,'share/map/tests/components/c_pre_polymer_data_management/local/') -database="/home/A96028/MAPVp/my_map_installdir/share/map/tests/components/c_pre_polymer_data_management/local/" -#database = "/home/A96028/MAPVp/my_map_installdir/lib/python2.7/site-packages/mapy/virtual_polymer_common" - -dicoInfoGenerales= { - 'Type_D_Equation' : ('initiation', 'propagation', 'termination', 'stabilization'), - 'Modele_TechnicalUse' : ('cable', 'coating', 'pipes'), - 'Aging_Factor' : { 'predefinedSimulationTime' : ('40years BR top', '40years BR bottom')}, - 'Boundary_Conditions' : ('flux_volume','flux_surface','constant_constration','convection_flux'), - 'posttraitement_Typ' : ('chimique','mecanique','physique'), - } - - -dicoTechnicalUse = {} -dicoEquations = {} -dicoEquationsParTechnicalUseParModelePartypeDEquation={} -for technicalUse in dicoInfoGenerales['Modele_TechnicalUse'] : - dicoTechnicalUse[technicalUse] = filtre_calculation_mechanistic(database, technicalUse) - dicoEquations[technicalUse] = filtre_data_model(database, 'mechanistic_models',technicalUse) - -#print (dicoEquations) -#print (1,dicoTechnicalUse) -print (dicoEquations.keys()) -#print (dicoEquations['pipes']) -#print (dicoEquations['cable']['base']['initiation']) -#print (dicoTechnicalUse.keys()) - -# --------------------------- blocPourCalculationForMechanisticSelonModeleTechnicalUse ------------ - -def calculGeneralInformations(technicalUse, modelName): -# la class contient l objet modele - monObj = dicoEquations[technicalUse][modelName]['class'] - Material = SIMP(statut='o', typ ='TXM', homo = 'constant', defaut = monObj.materiaux[2:-2]) - stabilized = SIMP(statut='o', typ ='TXM', homo = 'constant', defaut = monObj.stabilise) - EDF_developpement = SIMP(statut='o', typ ='TXM', homo = 'constant', defaut = monObj.dvt_EDF) - Documentation_report = SIMP(statut='o', typ ='TXM', homo = 'constant', defaut = monObj.reference) - Thickness = SIMP(statut='o', typ ='TXM', homo = 'constant', defaut = monObj.thickness) - Aging_conditions = SIMP(statut='o', typ ='TXM', homo = 'constant', defaut = monObj.type_vieil[1:-1]) - Diffusion = SIMP(statut='o', typ = bool, homo = 'constant', defaut = monObj.diffusion) - Evaporation = SIMP(statut='o', typ = bool, homo = 'constant', defaut = monObj.evaporation) - Model_takes_into_account = FACT(statut ='o', Diffusion=Diffusion, Evaporation=Evaporation) - return FACT(statut = 'o',Material=Material,stabilized=stabilized,EDF_developpement=EDF_developpement,Documentation_report=Documentation_report,Thickness=Thickness,Aging_conditions=Aging_conditions,Model_takes_into_account=Model_takes_into_account) - - - -def calculAnalyticalEquations(technicalUse,modelName): -# PN il faut ameliorer l algo - dicoArgs={} - dicoListeEquation={} - Consigne = SIMP(statut ="o", homo="information", typ="TXM", defaut = 'Les equations ne sont pas modifiables') - - for debutEquation in dicoInfoGenerales['Type_D_Equation']: - liste=[] - for nomEquation in dicoEquations[technicalUse][modelName]['equations'].keys(): - if nomEquation.find(debutEquation) != -1 : - liste.append(dicoEquations[technicalUse][modelName]['equations'][nomEquation] ) - dicoListeEquation[debutEquation]=liste - for debutEquation in dicoInfoGenerales['Type_D_Equation']: - dicoArgsDuFact={} - for chaineEquation in dicoListeEquation[debutEquation]: - nom,params=chaineEquation.split("\t\t") - dicoArgsDuFact[nom]=SIMP(statut = 'o', typ ='TXM', defaut = params, homo= 'constant') - dicoArgs[debutEquation]=FACT(statut = 'o',**dicoArgsDuFact) - Equations = FACT(statut = 'o',Consigne = Consigne,**dicoArgs) - - # on le garde pour pouvoir l utiliser plus tard dans DataBase - dicoEquationsParTechnicalUseParModelePartypeDEquation[technicalUse][modelName]=dicoListeEquation - - dicoArgs={} - dicoArgsArrhenius={} - - # Attention coef est une liste - for constante in dicoEquations[technicalUse][modelName]['class'].coef[0].keys(): - v=dicoEquations[technicalUse][modelName]['class'].coef[0][constante] - if len(v) == 2 : - dicoArgsArrhenius [constante] = SIMP(statut ="o",typ=Tuple(2),validators = VerifTypeTuple(('R','R')),defaut =v ) - else : - dicoArgs [constante] = SIMP(statut ="o",typ='R',defaut =v[0] ) - ConstantesNonArrhenius = FACT(statut = 'o',**dicoArgs) - ConstantesArrhenius = FACT(statut = 'o',**dicoArgsArrhenius) - Constantes = FACT(statut = 'o',ConstantesNonArrhenius = ConstantesNonArrhenius, ConstantesArrhenius=ConstantesArrhenius) - - - return FACT(statut = 'o',Equations = Equations, Constantes=Constantes) - -def calculAgingParameters(): - Time = SIMP(statut='o',typ='R',) - Temperature = SIMP(statut='o',typ='R',) - DoseRate = SIMP(statut='o',typ='R',) - Thickness = SIMP(statut='o',typ='R',) - return FACT(statut='o', Time=Time, Temperature=Temperature,DoseRate=DoseRate,Thickness=Thickness) - #dicoArgs['Dicretization'] = SIMP(statut='o',typ='R',) - -def calculInitialParameters(technicalUse,modelName): -# Attention les parametres initiaux sont renvoyes sous forme de liste alors que la valeur attendue est un reel - dicoArgs={} - for (k,v) in dicoTechnicalUse[technicalUse][modelName]['initial_parameter'].items(): - dicoArgs[k]= SIMP(statut='o',typ='R', defaut=v[0]) - return FACT(statut='o',**dicoArgs) - - - -def blocPourCalculationForMechanisticSelonModeleTechnicalUse(technicalUse): -# technicalUse = ['pipes', 'coating', 'cable'] - dicoArgs={} - dicoEquationsParTechnicalUseParModelePartypeDEquation[technicalUse]={} - - condition = "TechnicalUse == '" + technicalUse + "'" - ModelName = SIMP(statut='o',typ='TXM', into = dicoTechnicalUse[technicalUse].keys(),) - SimulationName = SIMP(statut='o',typ='TXM') - - for modeleName in dicoTechnicalUse[technicalUse].keys() : - # modeleName est le modele par exmple radio_oxydation_PE_tetra_stabilization - dicoBloc = {} - dicoBloc['condition' ] = "ModelName == '" + modeleName + "'" - dicoBloc['GeneralInformations'] = calculGeneralInformations(technicalUse,modeleName) - dicoBloc['AnalyticalEquation'] = calculAnalyticalEquations(technicalUse,modeleName) - dicoBloc['AgingParameters'] = calculAgingParameters() - dicoBloc['InitialParameters'] = calculInitialParameters(technicalUse,modeleName) - if dicoBloc != None : dicoArgs['b_ModelName_' + modeleName] = BLOC(**dicoBloc) - return BLOC(condition=condition, ModelName = ModelName,SimulationName=SimulationName,**dicoArgs) - - - -JdC = JDC_CATA ( code='VP', - execmodul=None, - ) - - -# --------------------------------------------------------------------------------- -Calculation_for_Mechanistic = PROC (nom="Calculation_for_Mechanistic", op=None, -# --------------------------------------------------------------------------------- - TechnicalUse= SIMP(statut= 'o',typ= 'TXM',into=dicoInfoGenerales['Modele_TechnicalUse'], defaut = 'cable'), - b_cable = blocPourCalculationForMechanisticSelonModeleTechnicalUse('cable'), - b_pipes = blocPourCalculationForMechanisticSelonModeleTechnicalUse('pipes'), - b_coating = blocPourCalculationForMechanisticSelonModeleTechnicalUse('coating'), - -) - - - -from mapy.virtual_polymer_common import class_data -monMechanisticModel=class_data.Modele() -monMechanisticEquation=class_data.Equation() -if monMechanisticEquation.comment == "" : monMechanisticEquation.comment = ' ' - - - -def chercheConstituant(laClasse): - lesArgs={} - lesArgs['statut']='o' - for constituant in laClasse.constituants : - monIndex=laClasse.constituants.index(constituant) - valdefaut=laClasse.equation[monIndex] - monSimp=SIMP(statut = 'o', typ = bool, defaut=True) - lesArgs[constituant]=monSimp - - lesArgsBloc={} - nomEquation = ' differentiel_'+constituant - monSimp2 = SIMP(statut= 'o',typ= 'TXM', defaut = valdefaut) - laCondition= constituant+' == True' - lesArgsBloc['condition']=laCondition - lesArgsBloc[nomEquation]=monSimp2 - nomBloc = 'b_'+constituant - leBloc = BLOC(**lesArgsBloc) - lesArgs[nomBloc]=BLOC(**lesArgsBloc) - return FACT(**lesArgs) - -def chercheConstantes(laClasse): - lesArgs={} - lesArgs['statut']='o' - for constante in laClasse.const_cine_nom : - monSimp=SIMP(statut = 'o', typ = bool, defaut=True) - lesArgs[constante]=monSimp - return FACT(**lesArgs) - - -def calculBlocAnalyticalEquationsForModification(): -# PN refaire l algo -#print (dicoEquations['cable']['base']['initiation']) - #for technicalUse in dicoInfoGenerales['Modele_TechnicalUse']: - #condition = "TechnicalUse == '" + technicalUse + "'" - for technicalUse in ('cable',): - dicoArgs={} - typeReaction = SIMP (statut='o', typ='TXM', into = dicoInfoGenerales['Type_D_Equation']) - for typeDeLaReaction in dicoInfoGenerales['Type_D_Equation']: - lesArgsBloc={} - laCondition= "typeReaction == '" + typeDeLaReaction + "'" - dicoListeEquation=dicoEquations[technicalUse]['base'][typeDeLaReaction] - ListeEquation = dicoListeEquation.keys() - equationsAModifier=SIMP (statut='o', typ='TXM', max="**", homo = 'SansOrdreNiDoublon', into=ListeEquation) - #print (equationsAModifier) - dicoArgs['b_'+typeDeLaReaction]=BLOC(condition=laCondition, equationsAModifier=equationsAModifier) - return FACT(statut='o', typeReaction = typeReaction, **dicoArgs) - - #for debutEquation in dicoInfoGenerales['Type_D_Equation']: - # dicoArgsDuFact={} - # for chaineEquation in dicoListeEquation[debutEquation]: - # nom,params=chaineEquation.split("\t\t") - # dicoArgsDuFact[nom]=SIMP(statut = 'o', typ ='TXM', defaut = params, homo= 'constant') - # dicoArgs[debutEquation]=FACT(statut = 'o',**dicoArgsDuFact) - #Equations = FACT(statut = 'o',Consigne = Consigne,**dicoArgs) - - #dicoArgs={} - #dicoArgsArrhenius={} - - # Attention coef est une liste - #for constante in dicoEquation[technicalUse]['class'].coef[0].keys(): - # v=dicoEquation[technicalUse]['class'].coef[0][constante] - # if len(v) == 2 : - # dicoArgsArrhenius [constante] = SIMP(statut ="o",typ=Tuple(2),validators = VerifTypeTuple(('R','R')),defaut =v ) - # else : - # dicoArgs [constante] = SIMP(statut ="o",typ='R',defaut =v[0] ) - #ConstantesNonArrhenius = FACT(statut = 'o',**dicoArgs) - #ConstantesArrhenius = FACT(statut = 'o',**dicoArgsArrhenius) - #Constantes = FACT(statut = 'o',ConstantesNonArrhenius = ConstantesNonArrhenius, ConstantesArrhenius=ConstantesArrhenius) - - return FACT(statut = 'o',Equations = Equations, Constantes=Constantes) - - - - -# ------------------------------------------ -Database = PROC (nom="Database", op=None, -# ------------------------------------------ - - -# ------------------------------------------------------------------------ - Type_chgt = SIMP (statut= 'o',typ= 'TXM',into=('modify equation', 'create equation', 'modify model', 'create model'),), - - b_creation_equation = BLOC (condition = 'Type_chgt == "create equation"', - # toutes les valeurs sont par defaut class_data.Equation - # generer le catalogue avec un fact - # Aging_Type type_vieil, - Creation = FACT ( statut = 'o', - ChemicalFormulation = SIMP(statut='o', typ='TXM', defaut = monMechanisticEquation.representation ), - Aging_Type = SIMP(statut= 'o',typ= 'TXM', min=1,max=1, into=('All', 'thermo', 'radio'), defaut = monMechanisticEquation.type_vieil[0]), - Reaction_Type = SIMP(statut= 'o',typ= 'TXM', min=1,max=1, into=dicoInfoGenerales['Type_D_Equation'], defaut = monMechanisticEquation.type_react), - Constituants = chercheConstituant(monMechanisticEquation), - New = SIMP (statut = 'o', typ = bool, defaut=False), - b_new = BLOC(condition = " New == True" , - Constituant = FACT ( statut = 'o', min=1, max='**', - Name = SIMP(statut= 'o',typ= 'TXM'), - Differential_Equation = SIMP(statut= 'o',typ= 'TXM'), - ), - ), # b new - - Constantes = chercheConstantes(monMechanisticEquation), - New_Cst = SIMP (statut = 'o', typ = bool, defaut=False), - b_new_cst = BLOC(condition = " New_Cst == True" , - Constante = FACT ( statut = 'o', min=1, max='**', - Name = SIMP (statut = 'o', typ = 'TXM'), - ), # fin constante - ), #fin b_new - - Arrhenius = SIMP (statut = 'o', typ = bool, defaut=monMechanisticEquation.arrhenius), - Comment = SIMP(statut= 'o',typ= 'TXM', defaut = monMechanisticEquation.comment), - ), # fin creation mechanistic model - ), # fin b_create_equation - - b_modify_equation = BLOC (condition = 'Type_chgt == "modify equation"', -# les valeurs par defaut seront lues dans la base de données - Filtre = calculBlocAnalyticalEquationsForModification(), - #Filtre = FACT (statut='o', - # #Reaction_Type=SIMP(statut= 'o',typ= 'TXM', min=1,into=dicoInfoGenerales['Type_D_Equation'], siValide=lienDB.remplitMechanisticModifyEquationListeEquation), - # Reaction_Type=SIMP(statut= 'o',typ= 'TXM', min=1,into=dicoInfoGenerales['Type_D_Equation'],),# siValide=lienDB.remplitMechanisticModifyEquationListeEquation), -# Filtre getMechanisticEquation(Reaction_Type) -# diictionnaire key : nom de l equation / valeur classe instancies liste de nom d'equation - # Equation_List=SIMP(statut= 'o',typ= 'TXM'), #siValide=lienDB.remplitModificationEquation), - # ), - # lorsque le choix est fait on peut recuperer les valeurs par defaut - - #ChemicalFormulation = SIMP(statut='o', typ='TXM', defaut = 'POOH -> 2P'), - Modification = FACT (statut='o', - ChemicalFormulation = SIMP(statut='o', typ='TXM', ), # classe.representation - Reaction_Type=SIMP(statut= 'o',typ= 'TXM', min=1,into=dicoInfoGenerales['Type_D_Equation']), # classe.type_react - Aging_Type=SIMP(statut= 'o',typ= 'TXM', min=1,max=1, into=('All', 'thermo', 'radio'),), # classe.type_vieil - - Constituants = FACT ( statut = 'o', # classe.constituants --> liste de nom. les equations sont dans le meme ordre self.equation - POOH = SIMP (statut = 'o', typ = bool, defaut=False), - b_pooh = BLOC(condition = " POOH == True" , - Differential_Equation_POOH = SIMP(statut= 'o',typ= 'TXM', defaut = '-ku1*POOH'), - ), # Fin b_pooh - PO = SIMP (statut = 'o', typ = bool, defaut=False), - b_po = BLOC(condition = " PO == True" , - Differential_Equation_PO = SIMP(statut= 'o',typ= 'TXM', defaut = '-ku1*POOH'), - ), # Fin b_po - New = SIMP (statut = 'o', typ = bool, defaut=False), - b_new = BLOC(condition = " New == True" , - Constituant = FACT ( statut = 'o', min=1, max='**', - Name = SIMP (statut = 'o', typ = 'TXM'), - Differential_Equation = SIMP(statut= 'o',typ= 'TXM'), - ), # Fin Constituant - ), # Fin b_new - ),# Fin Constituants - - Constantes = FACT ( statut = 'o', # self.const_cine_nom - KU1 = SIMP (statut = 'o', typ = bool, defaut=False), - New = SIMP (statut = 'o', typ = bool, defaut=False), - b_new = BLOC(condition = " New == True" , - Constante = FACT ( statut = 'o', min=1, max='**', - Name = SIMP (statut = 'o', typ = 'TXM'), - ), # fin constante - ), #fin b_new - ), # fin constantes - Arrhenius = SIMP (statut = 'o', typ = bool, ), # classe.arrhenius[0] - Comment = SIMP(statut= 'o',typ= 'TXM',), # classe.comment - ), # fin modification - ), # fin b_modify_equation - - - b_create_model = BLOC (condition = 'Type_chgt == "create model"', -# Filtre getMechanisticTechnicalUse(Filtre_TechnicalUse) -# dictionnaire key : nom du modele / valeur classe instancies liste de nom modele -# la classe par defaut getDefaultMechanistic -# renvoie un obj instancie - # toutes les valeurs sont par defaut class_data.Equation - # generer le catalogue avec un fact - Creation = FACT (statut='o', - ID=FACT (statut='o', - Name =SIMP(statut='o',typ='TXM'), # obj.nom - Material=SIMP(statut='o',typ='TXM',),# obj.materiaux[0] - TechnicalUse = SIMP(statut= 'o',typ= 'TXM',into=dicoInfoGenerales['Modele_TechnicalUse']),#defaut=obj.technical_use - Reference=SIMP(statut='o',typ='TXM',), # defaut=monModele.reference, momModele = obj par la suite - Model_Developed_For_EDF = SIMP(typ = bool, statut = 'o'), #defaut = monModele.dvt_EDF[0] - Aging_Type=SIMP(statut= 'o',typ= 'TXM', min=1,max=1, into=('all', 'thermo', 'radio'),), # defaut = monModele.type_vieil -# attention c est une liste --> a reflechir - Stabilizer = SIMP(typ = bool, statut = 'o'), #,defaut = monModele.stabilise - material_thickness = SIMP(typ = 'TXM', statut = 'o', into = ['thin','thick']), # monModele.thickness - Diffusion = SIMP(typ = bool, statut = 'o'),# defaut = monModele.diffusion ,siValide = lienDB.prepareDiffusion - Evaporation = SIMP(typ = bool, statut = 'o'), # defaut monModele.evaporation - Comment = SIMP(statut= 'o',typ= 'TXM',), # classe.comment - ), #fin id - Equations = FACT (statut = 'o', -# remplir avec getEquation sur modele -# dictionnaire avec comme clef 'base' puis initiation ... - Liste=SIMP(statut= 'o',typ='TXM', min=1,max='**', homo='SansOrdreNiDoublon',into =['POOH -> 2P [k]' , 'A [K5,Y5]', 'B', 'C']), -# quand coche je recupere le nom entre crochet + split sur , attention sans blanc -# et on cree le SIMP apres pour recuperer la valeur - K5=SIMP (statut = 'o', typ = 'R' ), - New = SIMP (statut = 'o', typ = bool, defaut=False), -# - b_new = BLOC(condition = " New == True" , - Add=FACT(statut = 'o',max='**', - Filtre = SIMP(statut= 'o',typ= 'TXM',into=dicoInfoGenerales['Type_D_Equation']), - Equations=SIMP(statut= 'o',typ='TXM', min=1,max='**', homo='SansOrdreNiDoublon',into =['POOH -> 2P' , 'A', 'B', 'C']) - ) - ), # b new - ) # fin equations - ), #fin creation - ), # fin create model - - b_modify_model = BLOC (condition = 'Type_chgt == "modify model"', -# Filtre getMechanisticTechnicalUse(Filtre_TechnicalUse) -# dictionnaire key : nom du modele / valeur classe instancies liste de nom modele -# la classe par defaut getDefaultMechanistic -# renvoie un obj instancie - Filtre = FACT (statut='o', - TechnicalUse=SIMP(statut= 'o',typ= 'TXM', min=1,into=dicoInfoGenerales['Modele_TechnicalUse'],), -# si valide - ModeleName=SIMP(statut='o',typ='TXM',into=['A','B']), # a choisir dans la liste des clefs - ), - Modification = FACT (statut='o', - ID=FACT (statut='o', - Name =SIMP(statut='o',typ='TXM'), # obj.nom - Material=SIMP(statut='o',typ='TXM',),# obj.materiaux[0] - TechnicalUse = SIMP(statut= 'o',typ= 'TXM',into=dicoInfoGenerales['Modele_TechnicalUse']),#defaut=obj.technical_use - Reference=SIMP(statut='o',typ='TXM',), # defaut=monModele.reference, momModele = obj par la suite - Model_Developed_For_EDF = SIMP(typ = bool, statut = 'o'), #defaut = monModele.dvt_EDF[0] - Aging_Type=SIMP(statut= 'o',typ= 'TXM', min=1,max=1, into=('all', 'thermo', 'radio'),), # defaut = monModele.type_vieil -# attention c est une liste --> a reflechir - Stabilizer = SIMP(typ = bool, statut = 'o'), #,defaut = monModele.stabilise - material_thickness = SIMP(typ = 'TXM', statut = 'o', into = ['thin','thick']), # monModele.thickness - Diffusion = SIMP(typ = bool, statut = 'o'),# defaut = monModele.diffusion ,siValide = lienDB.prepareDiffusion - Evaporation = SIMP(typ = bool, statut = 'o'), # defaut monModele.evaporation - Comment = SIMP(statut= 'o',typ= 'TXM',), # classe.comment - ), #fin id - Equations = FACT (statut = 'o', -# remplir avec getEquation sur modele -# dictionnaire avec comme clef 'base' puis initiation ... - Liste=SIMP(statut= 'o',typ='TXM', min=1,max='**', homo='SansOrdreNiDoublon',into =['POOH -> 2P [k]' , 'A [K5,Y5]', 'B', 'C']), -# quand coche je recupere le nom entre crochet + split sur , attention sans blanc -# et on cree le SIMP apres pour recuperer la valeur - K5=SIMP (statut = 'o', typ = 'R' ), - New = SIMP (statut = 'o', typ = bool, defaut=False), -# - b_new = BLOC(condition = " New == True" , - Add=FACT(statut = 'o',max='**', - Filtre = SIMP(statut= 'o',typ= 'TXM',into=dicoInfoGenerales['Type_D_Equation']), - Equations=SIMP(statut= 'o',typ='TXM', min=1,max='**', homo='SansOrdreNiDoublon',into =['POOH -> 2P' , 'A', 'B', 'C']) - ) - ), # b new - ) # fin equations - ), #fin modification - ), # fin modify model - -# ------------------------------------------------------------------------ -# b_Model_Analytic = BLOC(condition = "Model_Type == 'analytic model'", -# Type_chgt = SIMP (statut= 'o',typ= 'TXM',into=('modify equation', 'create equation', 'modify model', 'create model') ), -# -# b_creation_equation = BLOC (condition = 'Type_chgt == "create equation"', -# Creation = FACT(statut = 'o', -# Name=SIMP(statut= 'o',typ= 'TXM',), # defaut o.nom -# Equation_Type = SIMP(statut= 'o',typ= 'TXM',into=dicoInfoGenerales['posttraitement_Typ']), # defaut o.type_equa -# PostProcessing = SIMP (statut = 'o', typ = bool,),# o.post_processing -# Calculation_Result = SIMP(statut= 'o',typ= 'TXM'), # defaut o.calculation_result -## dans o.parameters on a une liste -# Parameters=SIMP(statut= 'o',typ='TXM', min=1,max='**', homo='SansOrdreNiDoublon',into =['A', 'Ea', 'C']), -# New = SIMP (statut = 'o', typ = bool, defaut=False), -# b_new = BLOC(condition = " New == True" , -# Param = FACT(statut = 'o', max='**', -# Name=SIMP(statut= 'o',typ= 'TXM',), -# ), #param -# ), # b_new -# Equation = SIMP(statut= 'o',typ= 'TXM'), # defaut o.equation -# Universal_Constants=SIMP(statut= 'o',typ='TXM', min=1,max='**', homo='SansOrdreNiDoublon',into =['A', 'B', 'C']), -# Results_Unit = SIMP(statut= 'o',typ= 'TXM'), # defaut o.results_unit -# Integrate = SIMP (statut = 'o', typ = bool),# defaut o.integrate -# Comment = SIMP(statut= 'o',typ= 'TXM'), # defaut o.comment -# ),# Fact creation -# ), #bloc b_creation_equation - -# b_modification_equation = BLOC (condition = 'Type_chgt == "modify equation"', -# Filtre = FACT(statut = 'o', -# Equation_Type = SIMP(statut= 'o',typ= 'TXM',into=dicoInfoGenerales['posttraitement_Typ']), # defaut o.type_equa -# Equation_Choice = SIMP(statut= 'o',typ= 'TXM',into=['A','B','C']), -# ), -# Modification = FACT(statut = 'o', -# Name=SIMP(statut= 'o',typ= 'TXM',), # defaut o.nom -# Equation_Type = SIMP(statut= 'o',typ= 'TXM',into=dicoInfoGenerales['posttraitement_Typ']), # defaut o.type_equa -# PostProcessing = SIMP (statut = 'o', typ = bool,),# o.post_processing -# Calculation_Result = SIMP(statut= 'o',typ= 'TXM'), # defaut o.calculation_result # dans o.parameters on a une liste -# Parameters=SIMP(statut= 'o',typ='TXM', min=1,max='**', homo='SansOrdreNiDoublon',into =['A', 'Ea', 'C']), -# New = SIMP (statut = 'o', typ = bool, defaut=False), -# b_new = BLOC(condition = " New == True" , -# Param = FACT(statut = 'o', max='**', -# Name=SIMP(statut= 'o',typ= 'TXM',), -# ), #param -# ), # b_new -# Equation = SIMP(statut= 'o',typ= 'TXM'), # defaut o.equation -# Universal_Constants=SIMP(statut= 'o',typ='TXM', min=1,max='**', homo='SansOrdreNiDoublon',into =['A', 'B', 'C']), -# Results_Unit = SIMP(statut= 'o',typ= 'TXM'), # defaut o.results_unit -# Integrate = SIMP (statut = 'o', typ = bool),# defaut o.integrate -# Comment = SIMP(statut= 'o',typ= 'TXM'), # defaut o.comment -# ),# Fact Modification - -# ), #bloc b_modification_equation -# ), # Fin model analytic -# ------------------------------------------------------------------------ -# --------------------------------------------------------------------------- - -) diff --git a/VirtualPolymer/VP_Cata_V1.py b/VirtualPolymer/VP_Cata_V1.py deleted file mode 100644 index f51e5ed6..00000000 --- a/VirtualPolymer/VP_Cata_V1.py +++ /dev/null @@ -1,413 +0,0 @@ -# coding: utf-8 -import types -from Accas import * -import sys,os -sys.path.append('/home/A96028/opt/MAP/map-2016.1/lib/python2.7/site-packages/mapy/components/c_pre_polymer_data_management') -sys.path.append('/home/A96028/opt/MAP/map-2016.1/lib/python2.7/site-packages/mapy/virtual_polymer_common') -sys.path.append('/home/A96028/opt/MAP/map-2016.1/lib/python2.7/site-packages/') -import pckdb, class_data, instruction, equation_part, utils - - -monDico= { 'Equation_Liste' : ('initiation', 'propagation', 'termination', 'stabilization'), - 'Modele_TechnicalUse' : ('cable', 'coating', 'pipes'), - } - -class Tuple: - def __init__(self,ntuple): - self.ntuple=ntuple - - def __convert__(self,valeur): - if type(valeur) == types.StringType: return None - if len(valeur) != self.ntuple: return None - return valeur - - def info(self): - return "Tuple de %s elements" % self.ntuple - - __repr__=info - __str__=info - -#class ObjetUtilisateur(ASSD): pass - -class classeVisuEquation : - def __init__(self,dicoListeAffiche, listEquation, listModele,listPosttraitement): - self.dicoListeAffiche=dicoListeAffiche - self.listEquation=listEquation - self.listModele=listModele - self.listPosttraitement=listPosttraitement - - -def maFunc(): - return ('a1','a2','a3') - -def maFuncWithArg(monMC): - if hasattr(monMC,'dsMaFunct') and monMC.dsMaFunct== True : return - monMC.dsMaFunct = True - - editor=monMC.jdc.editor - if monMC.valeur == 'POOH->P' : monInto=('a1','a2','a3') - else : monInto=('b1','b2','b3') - - change=editor.changeIntoDefMC('AGING', ('Equation', 'b_approved','b_type_creation','Equation_Modification','Type2'), monInto ) - if change : - print ('j ai change le into') - editor.reCalculeValiditeMCApresChgtInto('AGING', 'Type2', ('Equation', 'b_approved','b_type_creation','Equation_Modification')) - if editor.fenetreCentraleAffichee : editor.fenetreCentraleAffichee.node.affichePanneau() - - monMC.dsMaFunct = False - -def recupereDicoGenerique(monMC): - if hasattr(monMC,'dsMaFunct') and monMC.dsMaFunct== True : return - print ('je passe dans la recuperation') - editor=monMC.jdc.editor - valeurDB=editor.getValeur('Equation','Equation_DB',()) - if valeurDB == None : valeurDB=editor.getValeur('Modele','Modele_DB',()) - correspond=pckdb.DBRENAME - if valeurDB != None : - listEquation, listModele,listPosttraitement=pckdb.read_pckdb(correspond[valeurDB]) - monMC.dsMaFunct = False - return listEquation, listModele,listPosttraitement - -def recupereDicoEquation(monMC): - if hasattr(monMC,'dsMaFunct') and monMC.dsMaFunct== True : return - listEquation, listModele,listePosttraitement=recupereDicoGenerique(monMC) - editor=monMC.jdc.editor - - valeurEquationListe=editor.getValeur('Equation','Equation_Liste',('b_type_show',)) - valeurAgingType=editor.getValeur('Equation','Equation_reaction',('b_type_show','b_reaction_type',)) - if valeurAgingType == None : - valeurAgingType=editor.getValeur('Equation','Equation_reaction',('b_type_show','b_aging_type',)) - if valeurAgingType == None : monMC.dsMaFunct = False; return - - listeEquationPourIhm = [] - listeReprEquationPourIhm = [] - dicoListeAffiche={} - for equation in listEquation : - if valeurEquationListe == 'aging_type' : - if equation.type_vieil == valeurAgingType : - listeEquationPourIhm.append(equation) - listeReprEquationPourIhm.append(equation.representation) - dicoListeAffiche[equation.representation]=equation - else: - if equation.type_react == valeurAgingType : - listeEquationPourIhm.append(equation) - listeReprEquationPourIhm.append(equation.representation) - dicoListeAffiche[equation.representation]=equation - change=editor.changeIntoDefMC('Equation', ('b_type_show','ListeEquation'), listeReprEquationPourIhm ) - if change : - editor.reCalculeValiditeMCApresChgtInto('Equation', 'listeEquation', ('b_type_show',)) - if editor.fenetreCentraleAffichee : editor.fenetreCentraleAffichee.node.affichePanneau() - editor.maClasseVisuEquation = classeVisuEquation(dicoListeAffiche,listEquation, listModele,listPosttraitement) - monMC.dsMaFunct = False - -def afficheValeurEquation(monMC): - if hasattr(monMC,'dsMaFunct') and monMC.dsMaFunct== True : return - editor=monMC.jdc.editor - valeur=monMC.valeur - if valeur == None : - monMC.dsMaFunct = False - return - editor.maClasseVisuEquation.valeurEquationChoisie=valeur - monMC.dsMaFunct = False - - -def instancieChemicalFormulation(monMC): - if hasattr(monMC,'dsMaFunct') and monMC.dsMaFunct== True : return - if monMC.valeur == False : return - - editor=monMC.jdc.editor - if hasattr(editor,'dsMaFunct') and editor.dsMaFunct== True : return - editor.dsMaFunct = True - - print ('ds instancie') - v=editor.maClasseVisuEquation.valeurEquationChoisie - monEquation=editor.maClasseVisuEquation.dicoListeAffiche[v] - type_react=monEquation.type_react - type_vieil=monEquation.type_vieil - print (v, type_react, type_vieil) - #editor.changeIntoMCandSet('Equation', ('b_type_show','b_modification','b_modif','ChemicalFormulation'),( v,),v ) - change=editor.changeDefautDefMC('Equation', ('b_type_show','b_modification','b_modif','Reaction_Type'),type_react ) - change=editor.changeDefautDefMC('Equation', ('b_type_show','b_modification','b_modif','Aging_Type'), type_vieil ) - - for index,valeurConstituant in enumerate(monEquation.constituants): - valeurEquation=monEquation.equation[index] - editor.ajoutMC(monMC.etape,'OptionnelConstituant',None,('b_type_show','b_modification','b_modif',)) - print (index,valeurConstituant,valeurEquation) - - #OptionnelConstituant = FACT ( statut = 'f',max = '**', - # Constituant = SIMP (statut = 'o', typ = 'TXM'), - # Differential_Equation = SIMP(statut= 'o',typ= 'TXM'), - for index,valeurConstituant in enumerate(monEquation.const_cine_nom): - valeurArrhe=monEquation.arrhenius[index] - if valeurArrhe : valeurConstanteType='Arrhenius type' - else : valeurConstanteType='non Arrhenius type' - - print (index,valeurConstituant,valeurConstanteType) - #OptionnelleConstante = FACT (statut = 'f', max = '**', - # ConstanteName= SIMP (statut = 'o', typ = 'TXM',), - # ConstanteType = SIMP(statut= 'o',typ= 'TXM', min=1,into=('Arrhenius type','non Arrhenius type'),defaut='Arrhenius type'), - change=editor.changeDefautDefMC('Equation', ('b_type_show','b_modification','b_modif','Commentaire'),monEquation.comment ) - print (monEquation.comment ) - #if change : - if editor.fenetreCentraleAffichee : editor.fenetreCentraleAffichee.node.affichePanneau() - monMC.dsMaFunct = False - editor.dsMaFunct = False - -# TEMPORAIRE -# TODO TODO TODO -# PNPNPNPNPN - - -maClasseDeModele=class_data.Modele() - -def recupereDicoModele(monMC): - if monMC.valeur == None: return - if hasattr(monMC,'dsMaFunct') and monMC.dsMaFunct== True : return - print ('je passe dans recupereDicoModele') - listEquation, listModele,listPosttraitement=recupereDicoGenerique(monMC) - editor=monMC.jdc.editor - editor.maClasseVisuEquation = classeVisuEquation({},listEquation, listModele,listPosttraitement) - monMC.dsMaFunct = False - - -def creeListeEquation(monMC): - if monMC.valeur == None: return - if hasattr(monMC,'dsMaFunct') and monMC.dsMaFunct== True : return - - editor=monMC.jdc.editor -# TEMPORAIRE -# TODO TODO TODO - listeEquationsAAfficher=[] - listeConstantesAAfficher=[] - for index,equation in enumerate( editor.maClasseVisuEquation.listEquation): - if index in maClasseDeModele.equa: - listeEquationsAAfficher.append(equation.representation) - listeConstantesAAfficher.append(equation.const_cine_nom) - - monMC.dsMaFunct = False - - # listeEquation_stabilization=SIMP(statut='o', homo='SansOrdreNiDoublon', max='**', min=0 ), - -def recupereModeleEquation(monMC): - if hasattr(monMC,'dsMaFunct') and monMC.dsMaFunct== True : return - if monMC.valeur==False : return - editor=monMC.jdc.editor - if hasattr(editor,'dsMaFunct') and editor.dsMaFunct== True : return - - editor.dsMaFunct = True - dicoListeEquationAAfficher={} - - for valeurReactionType in monDico['Equation_Liste']: - dicoListeEquationAAfficher[valeurReactionType] = [] - for index,equation in enumerate( editor.maClasseVisuEquation.listEquation): - if equation.type_react==valeurReactionType : - dicoListeEquationAAfficher[valeurReactionType].append(equation.representation) - print (dicoListeEquationAAfficher) - - change=editor.changeIntoDefMC('Modele', ('b_type_creation','b_ajout_equation','listeEquation_initiation'),dicoListeEquationAAfficher['initiation'] ) - change=editor.changeIntoDefMC('Modele', ('b_type_creation','b_ajout_equation','listeEquation_propagation'),dicoListeEquationAAfficher['propagation'] ) - change=editor.changeIntoDefMC('Modele', ('b_type_creation','b_ajout_equation','listeEquation_termination'),dicoListeEquationAAfficher['termination'] ) - change=editor.changeIntoDefMC('Modele', ('b_type_creation','b_ajout_equation','listeEquation_stabilization'),dicoListeEquationAAfficher['stabilization'] ) - if editor.fenetreCentraleAffichee : editor.fenetreCentraleAffichee.node.affichePanneau() - editor.dsMaFunct = False - -def prepareDiffusion(monMC): - print ('je suis dans prepareDiffusion') - if monMC.valeur==False : return - if hasattr(monMC,'dsMaFunct') and monMC.dsMaFunct== True : return - monMC.dsMaFunct=True - editor=monMC.jdc.editor - if hasattr(editor,'dsMaFunct') and editor.dsMaFunct== True : return - editor.dsMaFunct = True - editor.dicoCoefS={} - editor.dicoCoefD={} - for c in maClasseDeModele.coef[0].keys() : - if c[0]=='S': - clef=c[1:] - valeur= maClasseDeModele.coef[0][c] - editor.dicoCoefS[clef]=valeur - if c[0]=='D': - clef=c[1:] - valeur= maClasseDeModele.coef[0][c] - editor.dicoCoefD[clef]=valeur - print (editor.dicoCoefS,editor.dicoCoefD) - monMC.dsMaFunct=False - editor.dsMaFunct = False - - -def ajouteDiffusion(monMC): - print ('je suis dans ajouteDiffusion') - if monMC.valeur == None : return - print (monMC.valeur) - if hasattr(monMC,'dsMaFunct') and monMC.dsMaFunct== True : return - monMC.dsMaFunct=True - editor=monMC.jdc.editor - if hasattr(editor,'dsMaFunct') and editor.dsMaFunct== True : return - editor.dsMaFunct = True - - - for v in monMC.valeur : - print (v) - mesValeurs=editor.dicoCoefS[v] - print (editor.dicoCoefS) - print (mesValeurs) - MCFils='S'+v - for e in monMC.jdc.etapes: - if e.nom == Modele :break - - print (e) - editor.ajoutDefinitionMC(e,('b_type_creation','b_diffusion'),MCFils,typ='TXM',statut='o' ) - print ('ggggg') - editor.ajoutMC(e,MCFils,mesValeurs,('b_type_creation','b_diffusion',)) - print ('______') - if editor.fenetreCentraleAffichee : editor.fenetreCentraleAffichee.node.affichePanneau() - monMC.dsMaFunct=False - editor.dsMaFunct = False - -JdC = JDC_CATA(code='VP', - execmodul=None, - ) - - - -#--------------------------------- -Equation = PROC (nom="Equation", - op=None, -#--------------------------------- - Equation_DB=SIMP(statut= 'o',typ= 'TXM', into=("Approved data base", "My data base") ), - Equation_Type = SIMP(statut= 'o',typ= 'TXM', into=("Show equation database", "Equation creation"),), - - -# --------------------------------------------------------------------------- - b_type_show = BLOC(condition = " Equation_Type == 'Show equation database'", -# --------------------------------------------------------------------------- - Equation_Liste=SIMP(statut= 'o',typ= 'TXM', into=('reaction_type','aging_type')), - - b_reaction_type = BLOC(condition = " Equation_Liste == 'reaction_type'", - Equation_reaction=SIMP(statut= 'o',typ= 'TXM', into=monDico['Equation_Liste'],siValide=recupereDicoEquation), - ), # Fin b_reaction_type - - b_aging_type = BLOC(condition = " Equation_Liste == 'aging_type'", - Equation_reaction=SIMP(statut= 'o',typ= 'TXM', into=('All', 'thermo', 'radio'),siValide=recupereDicoEquation), - ), # Fin b_reaction_type - - ListeEquation = SIMP(statut='o', typ='TXM', homo='SansOrdreNiDoublon',siValide=afficheValeurEquation), - b_modification = BLOC(condition = " ListeEquation != None ", - modification = SIMP(typ = bool, statut = 'o',defaut = False, fr='toto', ang='toto en anglais', siValide=instancieChemicalFormulation), - - b_modif = BLOC(condition = "modification == True", - Reaction_Type=SIMP(statut= 'o',typ= 'TXM', min=1,into=monDico['Equation_Liste'],), - Aging_Type=SIMP(statut= 'o',typ= 'TXM', min=1,max='**', homo='SansOrdreNiDoublon', into=('All', 'thermo', 'radio'),), - - OptionnelConstituant = FACT ( statut = 'f',max = '**', - Constituant = SIMP (statut = 'o', typ = 'TXM'), - Differential_Equation = SIMP(statut= 'o',typ= 'TXM'), - ), # fin Const_Equa - OptionnelleConstante = FACT (statut = 'f', max = '**', - ConstanteName= SIMP (statut = 'o', typ = 'TXM',), - ConstanteType = SIMP(statut= 'o',typ= 'TXM', min=1,into=('Arrhenius type','non Arrhenius type'),defaut='Arrhenius type'), - ),# fin ConstanteOptionnelle - Commentaire = SIMP (statut = 'f', typ = 'TXM', defaut = ' '), - - ),# fin b_modif - - ), # fin b_modification - ), # Fin b_type_show - - -# --------------------------------------------------------------------------- - b_type_creation = BLOC(condition = " Equation_Type == 'Equation creation'", -# --------------------------------------------------------------------------- - Equation_Modification = FACT ( statut = 'o', - - ChemicalFormulation = SIMP(statut='o', typ='TXM', defaut = 'POOH -> 2P'), - - Reaction_Type=SIMP(statut= 'o',typ= 'TXM', min=1,into=monDico['Equation_Liste'],), - Aging_Type=SIMP(statut= 'o',typ= 'TXM', min=1,max='**', homo='SansOrdreNiDoublon', into=('All', 'thermo', 'radio'),), - - Constituants = FACT ( statut = 'o', - ConstituantPOOH = SIMP (statut = 'f', typ = 'TXM', into = ('POOH',), defaut= 'POOH'), - b_pooh = BLOC(condition = " ConstituantPOOH == 'POOH'" , - Differential_Equation_POOH = SIMP(statut= 'o',typ= 'TXM', defaut = '-ku1*POOH'), - ), # Fin b_pooh - ConstituantP = SIMP (statut = 'f', typ = 'TXM', into = ('P',),defaut='P'), - b_p = BLOC(condition = " ConstituantP == 'P'" , - Differential_Equation_P = SIMP(statut= 'o',typ= 'TXM', defaut = '2*ku1*POOH'), - ), # Fin b_p - OptionnelConstituant = FACT ( statut = 'f',max = '**', - Constituant = SIMP (statut = 'o', typ = 'TXM'), - Differential_Equation = SIMP(statut= 'o',typ= 'TXM'), - ), # fin Const_Equa - ),# Fin Constituants - - Constante = FACT ( statut = 'o', - Constanteku1 = SIMP (statut = 'f', typ = 'TXM', into = ('ku1',), defaut= 'ku1'), - b_cku1 = BLOC(condition = "Constanteku1 == 'ku1'" , - ConstanteType = SIMP(statut= 'o',typ= 'TXM', into=('Arrhenius type','non Arrhenius type'),defaut='Arrhenius type'), - ), - OptionnelleConstante = FACT (statut = 'f', max = '**', - ConstanteName= SIMP (statut = 'o', typ = 'TXM',), - ConstanteType = SIMP(statut= 'o',typ= 'TXM', min=1,into=('Arrhenius type','non Arrhenius type'),defaut='Arrhenius type'), - ),# fin ConstanteOptionnelle - ), # fin constante - Commentaire = SIMP (statut = 'f', typ = 'TXM', defaut = ' '), - - ), # Fin Equation_Modification - - #Chemical_Formulation = SIMP(statut= 'o',typ= 'TXM', defaut = 'POOH->P',siValide=maFuncWithArg), - #Type1 = SIMP(statut='o', typ = 'TXM', into=maFunc), - #Type2 = SIMP(statut='o', typ = 'TXM'), - - ), # fin b_type_creation - - -) # Fin Equation - -#--------------------------------- -Modele = PROC (nom="Modele", - op=None, - Modele_DB=SIMP(statut= 'o',typ= 'TXM', into=("Approved data base", "My data base"),siValide=recupereDicoModele ), - Modele_Type = SIMP(statut= 'o',typ= 'TXM', into=("Show modele database", "Modele creation"),siValide=creeListeEquation), -# --------------------------------------------------------------------------- - b_type_creation = BLOC(condition = " Modele_Type == 'Modele creation'", -# --------------------------------------------------------------------------- - technicalUse= SIMP(statut= 'o',typ= 'TXM',into=monDico['Modele_TechnicalUse'],defaut=maClasseDeModele.technical_use ), - modeleName=SIMP(statut='o',typ='TXM',defaut=maClasseDeModele.nom,), - material=SIMP(statut='o',typ='TXM',defaut=maClasseDeModele.materiaux[0],), - stabilizer = SIMP(typ = bool, statut = 'o',defaut = maClasseDeModele.stabilise), - model_developed_by_for_EDF = SIMP(typ = bool, statut = 'o',defaut = maClasseDeModele.dvt_EDF[0]), - documentation=SIMP(statut='o',typ='TXM',defaut=maClasseDeModele.reference,), - - # ajouter la liste des equations et le remove (il faut garder ceux qu on a enlever) - - - AjoutEquation=SIMP(statut= 'o',typ= bool, defaut=False, siValide=recupereModeleEquation), - b_ajout_equation = BLOC(condition = " AjoutEquation == True", - listeEquation_initiation=SIMP(statut='o', typ='TXM',homo='SansOrdreNiDoublon', max='**', min=0, defaut=[] ), - listeEquation_propagation=SIMP(statut='o', typ='TXM',homo='SansOrdreNiDoublon', max='**', min=0, defaut=[] ), - listeEquation_termination=SIMP(statut='o', typ='TXM',homo='SansOrdreNiDoublon', max='**', min=0, defaut=[] ), - listeEquation_stabilization=SIMP(statut='o',typ='TXM', homo='SansOrdreNiDoublon', max='**', min=0, defaut=[] ), - ),# fin b_ajout_equation - - # coefficients maClasseDeModele.coef = liste de dictionnaire mais il faut prendre que le 0 - # on enleve ceux qui commence par D, S et B(casse imprtante) - # la clef est le coef, puis les valeurs - - Aging_Type=SIMP(statut= 'o',typ='TXM', min=1,max='**', homo='SansOrdreNiDoublon', into=('All', 'thermo', 'radio'), defaut=maClasseDeModele.type_vieil), - Diffusion = SIMP(typ = bool, statut = 'o',defaut = maClasseDeModele.diffusion,siValide = prepareDiffusion), - - b_diffusion = BLOC(condition = " Diffusion == True", - #coefficients maClasseDeModele.coef = liste de dictionnaire mais il faut prendre que le 0 - # on met ceux qui commence par D, S et pas les B ni les aitres( casse imprtante) - listeProduitPourLaDiffusion=SIMP(statut='o', typ='TXM', max='**', min=1,homo='SansOrdreNiDoublon', into = maClasseDeModele.param_ini.keys(),siValide=ajouteDiffusion), - ), # fin b_diffusion - - ), # fin b_type_creation - - - #AjoutEquation=Fact(statut='f', - # Reaction_Type=SIMP(statut= 'o',typ= 'TXM', min=1,into=monDico['Equation_Liste'],siValide=recupereModeleEquation), - #), # fin AjoutEquation - - Commentaire = SIMP (statut = 'f', typ = 'TXM'), -) # Fin Modele diff --git a/VirtualPolymer/VP_Cata_V2.py b/VirtualPolymer/VP_Cata_V2.py deleted file mode 100644 index 4c575ebc..00000000 --- a/VirtualPolymer/VP_Cata_V2.py +++ /dev/null @@ -1,535 +0,0 @@ -# -*- coding: utf-8 -*- -import types -from Accas import * - -import lienDB -import listesDB - -monDico= { 'Equation_Liste' : ('initiation', 'propagation', 'termination', 'stabilization'), - 'Modele_TechnicalUse' : ('cable', 'coating', 'pipes'), - 'Aging_Factor' : { 'predefinedSimulationTime' : ('40years BR top', '40years BR bottom')}, - 'Boundary_Conditions' : ('flux_volume','flux_surface','constant_constration','convection_flux'), - 'posttraitement_Typ' : ('chimique','mecanique','physique'), - } - -monModele=listesDB.sModele().monModele -monPost=listesDB.sModele().monPost - -import types -class Tuple: - def __init__(self,ntuple): - self.ntuple=ntuple - - def __convert__(self,valeur): - if type(valeur) == types.StringType: - return None - if len(valeur) != self.ntuple: - return None - return valeur - - def info(self): - return "Tuple de %s elements" % self.ntuple - - -JdC = JDC_CATA(code='VP', - execmodul=None, - ) - -# ------------------------------------------ -Database = PROC (nom="Database", op=None, -# ------------------------------------------ - Database_Type = SIMP(statut= 'o',typ= 'TXM', into=("Local database", "Standard database"),), - Model_Type = SIMP(statut= 'o',typ= 'TXM', into=("master model", "analytic model" ,"mechanistic model") ), - - AA= FACT(statut = 'o', max='**', - ChemicalFormulation = SIMP(statut='o', typ='TXM', defaut = 'POOH -> 2P'), - ), - -# ------------------------------------------------------------------------ - b_Model_Mechanistic = BLOC(condition = "Model_Type == 'mechanistic model'", -# ------------------------------------------------------------------------ - Type_chgt = SIMP (statut= 'o',typ= 'TXM',into=('modify equation', 'create equation', 'modify model', 'create model') ), - b_creation_equation = BLOC (condition = 'Type_chgt == "create equation"', - Creation = FACT ( statut = 'o', - ChemicalFormulation = SIMP(statut='o', typ='TXM', defaut = 'POOH -> 2P'), - Aging_Type=SIMP(statut= 'o',typ= 'TXM', min=1,max=1, into=('All', 'thermo', 'radio'),), - - Constituants = FACT ( statut = 'o', - POOH = SIMP (statut = 'o', typ = bool, defaut=False), - b_pooh = BLOC(condition = " POOH == True" , - Differential_Equation_POOH = SIMP(statut= 'o',typ= 'TXM', defaut = '-ku1*POOH'), - ), # Fin b_pooh - PO = SIMP (statut = 'o', typ = bool, defaut=False), - b_po = BLOC(condition = " PO == True" , - Differential_Equation_PO = SIMP(statut= 'o',typ= 'TXM', defaut = '-ku1*POOH'), - ), # Fin b_po - New = SIMP (statut = 'o', typ = bool, defaut=False), - b_new = BLOC(condition = " New == True" , - Constituant = FACT ( statut = 'o', min=1, max='**', - Name = SIMP(statut= 'o',typ= 'TXM'), - Differential_Equation = SIMP(statut= 'o',typ= 'TXM'), - ), - ), # b new - ), # fin constituants - - Constantes = FACT ( statut = 'o', # self.const_cine_nom - KU1 = SIMP (statut = 'o', typ = bool, defaut=False), - New = SIMP (statut = 'o', typ = bool, defaut=False), - b_new = BLOC(condition = " New == True" , - Constante = FACT ( statut = 'o', min=1, max='**', - Name = SIMP (statut = 'o', typ = 'TXM'), - ), # fin constante - ), #fin b_new - ), # fin constantes - - Arrhenius = SIMP (statut = 'o', typ = bool, defaut=False), - Comment = SIMP(statut= 'o',typ= 'TXM', defaut = ' '), - ), # fin creation mechanistic model - ), # fin b_create_equation - - b_modify_equation = BLOC (condition = 'Type_chgt == "modify equation"', -# les valeurs par defaut seront lues dans la base de données - Filtre = FACT (statut='o', - Reaction_Type=SIMP(statut= 'o',typ= 'TXM', min=1,into=monDico['Equation_Liste'],), -# Filtre getMechanisticEquation(Reaction_Type) -# diictionnaire key : nom de l equation / valeur classe instancies liste de nom d'equation - Equation_List=SIMP(statut= 'o',typ= 'TXM', min=1,into=['E','quation_Liste'],), - ), - # lorsque le choix est fait on peut recuperer les valeurs par defaut - #ChemicalFormulation = SIMP(statut='o', typ='TXM', defaut = 'POOH -> 2P'), - Modification = FACT (statut='o', - ChemicalFormulation = SIMP(statut='o', typ='TXM', ), # classe.representation - Reaction_Type=SIMP(statut= 'o',typ= 'TXM', min=1,into=monDico['Equation_Liste']), # classe.type_react - Aging_Type=SIMP(statut= 'o',typ= 'TXM', min=1,max=1, into=('All', 'thermo', 'radio'),), # classe.type_vieil - - Constituants = FACT ( statut = 'o', # classe.constituants --> liste de nom. les equations sont dans le meme ordre self.equation - POOH = SIMP (statut = 'o', typ = bool, defaut=False), - b_pooh = BLOC(condition = " POOH == True" , - Differential_Equation_POOH = SIMP(statut= 'o',typ= 'TXM', defaut = '-ku1*POOH'), - ), # Fin b_pooh - PO = SIMP (statut = 'o', typ = bool, defaut=False), - b_po = BLOC(condition = " PO == True" , - Differential_Equation_PO = SIMP(statut= 'o',typ= 'TXM', defaut = '-ku1*POOH'), - ), # Fin b_po - New = SIMP (statut = 'o', typ = bool, defaut=False), - b_new = BLOC(condition = " New == True" , - Constituant = FACT ( statut = 'o', min=1, max='**', - Name = SIMP (statut = 'o', typ = 'TXM'), - Differential_Equation = SIMP(statut= 'o',typ= 'TXM'), - ), # Fin Constituant - ), # Fin b_new - ),# Fin Constituants - - Constantes = FACT ( statut = 'o', # self.const_cine_nom - KU1 = SIMP (statut = 'o', typ = bool, defaut=False), - New = SIMP (statut = 'o', typ = bool, defaut=False), - b_new = BLOC(condition = " New == True" , - Constante = FACT ( statut = 'o', min=1, max='**', - Name = SIMP (statut = 'o', typ = 'TXM'), - ), # fin constante - ), #fin b_new - ), # fin constantes - Arrhenius = SIMP (statut = 'o', typ = bool, ), # classe.arrhenius[0] - Comment = SIMP(statut= 'o',typ= 'TXM',), # classe.comment - ), # fin modification - ), # fin b_modify_equation - - - b_create_model = BLOC (condition = 'Type_chgt == "create model"', -# Filtre getMechanisticTechnicalUse(Filtre_TechnicalUse) -# dictionnaire key : nom du modele / valeur classe instancies liste de nom modele -# la classe par defaut getDefaultMechanistic -# renvoie un obj instancie - Creation = FACT (statut='o', - ID=FACT (statut='o', - Name =SIMP(statut='o',typ='TXM'), # obj.nom - Material=SIMP(statut='o',typ='TXM',),# obj.materiaux[0] - TechnicalUse = SIMP(statut= 'o',typ= 'TXM',into=monDico['Modele_TechnicalUse']),#defaut=obj.technical_use - Reference=SIMP(statut='o',typ='TXM',), # defaut=monModele.reference, momModele = obj par la suite - Model_Developed_For_EDF = SIMP(typ = bool, statut = 'o'), #defaut = monModele.dvt_EDF[0] - Aging_Type=SIMP(statut= 'o',typ= 'TXM', min=1,max=1, into=('all', 'thermo', 'radio'),), # defaut = monModele.type_vieil -# attention c est une liste --> a reflechir - Stabilizer = SIMP(typ = bool, statut = 'o'), #,defaut = monModele.stabilise - material_thickness = SIMP(typ = 'TXM', statut = 'o', into = ['thin','thick']), # monModele.thickness - Diffusion = SIMP(typ = bool, statut = 'o'),# defaut = monModele.diffusion ,siValide = lienDB.prepareDiffusion - Evaporation = SIMP(typ = bool, statut = 'o'), # defaut monModele.evaporation - Comment = SIMP(statut= 'o',typ= 'TXM',), # classe.comment - ), #fin id - Equations = FACT (statut = 'o', -# remplir avec getEquation sur modele -# dictionnaire avec comme clef 'base' puis initiation ... - Liste=SIMP(statut= 'o',typ='TXM', min=1,max='**', homo='SansOrdreNiDoublon',into =['POOH -> 2P [k]' , 'A [K5,Y5]', 'B', 'C']), -# quand coche je recupere le nom entre crochet + split sur , attention sans blanc -# et on cree le SIMP apres pour recuperer la valeur - K5=SIMP (statut = 'o', typ = 'R' ), - New = SIMP (statut = 'o', typ = bool, defaut=False), -# - b_new = BLOC(condition = " New == True" , - Add=FACT(statut = 'o',max='**', - Filtre = SIMP(statut= 'o',typ= 'TXM',into=monDico['Equation_Liste']), - Equations=SIMP(statut= 'o',typ='TXM', min=1,max='**', homo='SansOrdreNiDoublon',into =['POOH -> 2P' , 'A', 'B', 'C']) - ) - ), # b new - ) # fin equations - ), #fin creation - ), # fin create model - - b_modify_model = BLOC (condition = 'Type_chgt == "modify model"', -# Filtre getMechanisticTechnicalUse(Filtre_TechnicalUse) -# dictionnaire key : nom du modele / valeur classe instancies liste de nom modele -# la classe par defaut getDefaultMechanistic -# renvoie un obj instancie - Filtre = FACT (statut='o', - TechnicalUse=SIMP(statut= 'o',typ= 'TXM', min=1,into=monDico['Modele_TechnicalUse'],), -# si valide - ModeleName=SIMP(statut='o',typ='TXM',into=['A','B']), # a choisir dans la liste des clefs - ), - Modification = FACT (statut='o', - ID=FACT (statut='o', - Name =SIMP(statut='o',typ='TXM'), # obj.nom - Material=SIMP(statut='o',typ='TXM',),# obj.materiaux[0] - TechnicalUse = SIMP(statut= 'o',typ= 'TXM',into=monDico['Modele_TechnicalUse']),#defaut=obj.technical_use - Reference=SIMP(statut='o',typ='TXM',), # defaut=monModele.reference, momModele = obj par la suite - Model_Developed_For_EDF = SIMP(typ = bool, statut = 'o'), #defaut = monModele.dvt_EDF[0] - Aging_Type=SIMP(statut= 'o',typ= 'TXM', min=1,max=1, into=('all', 'thermo', 'radio'),), # defaut = monModele.type_vieil -# attention c est une liste --> a reflechir - Stabilizer = SIMP(typ = bool, statut = 'o'), #,defaut = monModele.stabilise - material_thickness = SIMP(typ = 'TXM', statut = 'o', into = ['thin','thick']), # monModele.thickness - Diffusion = SIMP(typ = bool, statut = 'o'),# defaut = monModele.diffusion ,siValide = lienDB.prepareDiffusion - Evaporation = SIMP(typ = bool, statut = 'o'), # defaut monModele.evaporation - Comment = SIMP(statut= 'o',typ= 'TXM',), # classe.comment - ), #fin id - Equations = FACT (statut = 'o', -# remplir avec getEquation sur modele -# dictionnaire avec comme clef 'base' puis initiation ... - Liste=SIMP(statut= 'o',typ='TXM', min=1,max='**', homo='SansOrdreNiDoublon',into =['POOH -> 2P [k]' , 'A [K5,Y5]', 'B', 'C']), -# quand coche je recupere le nom entre crochet + split sur , attention sans blanc -# et on cree le SIMP apres pour recuperer la valeur - K5=SIMP (statut = 'o', typ = 'R' ), - New = SIMP (statut = 'o', typ = bool, defaut=False), -# - b_new = BLOC(condition = " New == True" , - Add=FACT(statut = 'o',max='**', - Filtre = SIMP(statut= 'o',typ= 'TXM',into=monDico['Equation_Liste']), - Equations=SIMP(statut= 'o',typ='TXM', min=1,max='**', homo='SansOrdreNiDoublon',into =['POOH -> 2P' , 'A', 'B', 'C']) - ) - ), # b new - ) # fin equations - ), #fin modification - ), # fin modify model - - ), # Fin mechanistic -# ------------------------------------------------------------------------ - b_Model_Analytic = BLOC(condition = "Model_Type == 'analytic model'", - Type_chgt = SIMP (statut= 'o',typ= 'TXM',into=('modify equation', 'create equation', 'modify model', 'create model') ), - - b_creation_equation = BLOC (condition = 'Type_chgt == "create equation"', - Creation = FACT(statut = 'o', - Name=SIMP(statut= 'o',typ= 'TXM',), # defaut o.nom - Equation_Type = SIMP(statut= 'o',typ= 'TXM',into=monDico['posttraitement_Typ']), # defaut o.type_equa - PostProcessing = SIMP (statut = 'o', typ = bool,),# o.post_processing - Calculation_Result = SIMP(statut= 'o',typ= 'TXM'), # defaut o.calculation_result -# dans o.parameters on a une liste - Parameters=SIMP(statut= 'o',typ='TXM', min=1,max='**', homo='SansOrdreNiDoublon',into =['A', 'Ea', 'C']), - New = SIMP (statut = 'o', typ = bool, defaut=False), - b_new = BLOC(condition = " New == True" , - Param = FACT(statut = 'o', max='**', - Name=SIMP(statut= 'o',typ= 'TXM',), - ), #param - ), # b_new - Equation = SIMP(statut= 'o',typ= 'TXM'), # defaut o.equation - Universal_Constants=SIMP(statut= 'o',typ='TXM', min=1,max='**', homo='SansOrdreNiDoublon',into =['A', 'B', 'C']), - Results_Unit = SIMP(statut= 'o',typ= 'TXM'), # defaut o.results_unit - Integrate = SIMP (statut = 'o', typ = bool),# defaut o.integrate - Comment = SIMP(statut= 'o',typ= 'TXM'), # defaut o.comment - ),# Fact creation - ), #bloc b_creation_equation - - b_modification_equation = BLOC (condition = 'Type_chgt == "modify equation"', - Filtre = FACT(statut = 'o', - Equation_Type = SIMP(statut= 'o',typ= 'TXM',into=monDico['posttraitement_Typ']), # defaut o.type_equa - Equation_Choice = SIMP(statut= 'o',typ= 'TXM',into=['A','B','C']), - ), - Modification = FACT(statut = 'o', - Name=SIMP(statut= 'o',typ= 'TXM',), # defaut o.nom - Equation_Type = SIMP(statut= 'o',typ= 'TXM',into=monDico['posttraitement_Typ']), # defaut o.type_equa - PostProcessing = SIMP (statut = 'o', typ = bool,),# o.post_processing - Calculation_Result = SIMP(statut= 'o',typ= 'TXM'), # defaut o.calculation_result -# dans o.parameters on a une liste - Parameters=SIMP(statut= 'o',typ='TXM', min=1,max='**', homo='SansOrdreNiDoublon',into =['A', 'Ea', 'C']), - New = SIMP (statut = 'o', typ = bool, defaut=False), - b_new = BLOC(condition = " New == True" , - Param = FACT(statut = 'o', max='**', - Name=SIMP(statut= 'o',typ= 'TXM',), - ), #param - ), # b_new - Equation = SIMP(statut= 'o',typ= 'TXM'), # defaut o.equation - Universal_Constants=SIMP(statut= 'o',typ='TXM', min=1,max='**', homo='SansOrdreNiDoublon',into =['A', 'B', 'C']), - Results_Unit = SIMP(statut= 'o',typ= 'TXM'), # defaut o.results_unit - Integrate = SIMP (statut = 'o', typ = bool),# defaut o.integrate - Comment = SIMP(statut= 'o',typ= 'TXM'), # defaut o.comment - ),# Fact Modification - - ), #bloc b_modification_equation - ), # Fin model analytic -# ------------------------------------------------------------------------ -# --------------------------------------------------------------------------- - - b_model_master=BLOC(condition = 'Model_Type == "master model"', - Type_chgt = SIMP (statut= 'o',typ= 'TXM',into=('modify model', 'create model') ), - ), -) -## --------------------------------------------------------------------------- -## Est- un Bloc ? -# Equation_Modification = FACT ( statut = 'f', -# -# ChemicalFormulation = SIMP(statut='o', typ='TXM', defaut = 'POOH -> 2P'), -# #Reaction_Type=SIMP(statut= 'o',typ= 'TXM', min=1,into=monDico['Equation_Liste'],), -# #Aging_Type=SIMP(statut= 'o',typ= 'TXM', min=1,max='**', homo='SansOrdreNiDoublon', into=('All', 'thermo', 'radio'),), -# Aging_Type=SIMP(statut= 'o',typ= 'TXM', min=1,max=1, into=('All', 'thermo', 'radio'),), -# -## Si un constituant ou une constante est a false il faut faire une liste d elements supprimes en sortie -# Constituants = FACT ( statut = 'o', -# POOH = SIMP (statut = 'o', typ = bool, defaut=False), -# b_pooh = BLOC(condition = " POOH == True" , -# Differential_Equation_POOH = SIMP(statut= 'o',typ= 'TXM', defaut = '-ku1*POOH'), -# ), # Fin b_pooh -# PO = SIMP (statut = 'o', typ = bool, defaut=False), -# b_po = BLOC(condition = " PO == True" , -# Differential_Equation_PO = SIMP(statut= 'o',typ= 'TXM', defaut = '-ku1*POOH'), -# ), # Fin b_po -# New = SIMP (statut = 'o', typ = bool, defaut=False), -# b_new = BLOC(condition = " New == True" , -# Constituant = FACT ( statut = 'o', min=1, max='**', -# Name = SIMP (statut = 'o', typ = 'TXM'), -# Differential_Equation = SIMP(statut= 'o',typ= 'TXM'), -# ), # Fin Constituant -# ), # Fin b_new -# ),# Fin Constituants -# -# -# -# Constantes = FACT ( statut = 'o', -# KU1 = SIMP (statut = 'o', typ = bool, defaut=False), -# New = SIMP (statut = 'o', typ = bool, defaut=False), -# b_new = BLOC(condition = " New == True" , -# Constante = FACT ( statut = 'o', min=1, max='**', -# Name = SIMP (statut = 'o', typ = 'TXM'), -# ), # fin constante -# ), #fin b_new -# ), # fin constantes -# -# Arrhenius = SIMP (statut = 'o', typ = bool, defaut=False), -# Comment = SIMP(statut= 'o',typ= 'TXM', defaut = ' '), -# ), # Fin Equation_Modification -# -# -# -## _____________________________________________ -# -# Equation_Modification2 = FACT ( statut = 'f', -# Name = SIMP (statut = 'o', typ = 'TXM', defaut = 'Arrhenuis'), -# PostProcessing = SIMP (statut = 'o', typ = bool, defaut=False), -# Parameters = FACT ( statut = 'o', -# POOH = SIMP (statut = 'o', typ = bool, defaut=False), -# PO = SIMP (statut = 'o', typ = bool, defaut=False), -# New = SIMP (statut = 'o', typ = bool, defaut=False), -# b_new = BLOC(condition = " New == True" , -# Parametre = FACT ( statut = 'o', min=1, max='**', -# Name = SIMP (statut = 'o', typ = 'TXM'), -# ), -# ), -# ), -# Universal_Constantes = FACT ( statut = 'o', -# R = SIMP (statut = 'o', typ = bool, defaut=False), -# New = SIMP (statut = 'o', typ = bool, defaut=False), -# b_new = BLOC(condition = " New == True" , -# Equation = FACT ( statut = 'o', min=1, max='**', -# Name = SIMP (statut = 'o', typ = 'TXM'), -# Equation = SIMP (statut = 'o', typ = 'TXM'), -# Unit = SIMP (statut = 'o', typ = 'TXM', defaut = "mol.l-1"), -# Integrate = SIMP (statut = 'o', typ = bool, defaut=True), -# ), -# ), -# ), -# -# Comment = SIMP(statut= 'o',typ= 'TXM', defaut = ' '), -# Reference = SIMP(statut= 'o',typ= 'TXM', defaut = ' '), -# ), # Fin Modification 2 -# -## ---------------------------------------------------------------------------- -## b_type_mechanistic_a = BLOC(condition = " Model_Type == 'mechanistic model'", -## -------------------------------------------------------------------------- -## Model_Mechanistic = FACT ( statut = 'f', -# ModeleName=SIMP(statut='o',typ='TXM',defaut=monModele.nom,), -# Material=SIMP(statut='o',typ='TXM',defaut=monModele.materiaux[0],), -# TechnicalUse = SIMP(statut= 'o',typ= 'TXM',into=monDico['Modele_TechnicalUse'],defaut=monModele.technical_use ), -# Documentation=SIMP(statut='o',typ='TXM',defaut=monModele.reference,), -# Model_Developed_For_EDF = SIMP(typ = bool, statut = 'o',defaut = monModele.dvt_EDF[0]), -# #Aging_Type=SIMP(statut= 'o',typ='TXM', min=1,max='**', homo='SansOrdreNiDoublon', into=('All', 'thermo', 'radio'), defaut=monModele.type_vieil), -# Aging_Type=SIMP(statut= 'o',typ= 'TXM', min=1,max=1, into=('both', 'thermo', 'radio'),), -# Stabilizer = SIMP(typ = bool, statut = 'o',defaut = monModele.stabilise), -# Diffusion = SIMP(typ = bool, statut = 'o',defaut = False ,siValide = lienDB.prepareDiffusion), -# b_diffusion = BLOC(condition = " Diffusion == True", -# ForDiffusion=SIMP(statut='o', typ='TXM', max='**', min=1,homo='SansOrdreNiDoublon', into = [],siValide=lienDB.ajouteDiffusion), -# ), # fin b_diffusion -# -# Evaporation = SIMP(typ = bool, statut = 'o',defaut = False ,siValide = lienDB.prepareDiffusion), -# b_evaporation = BLOC(condition = " Evaporation == True", -# ForEvaporation=SIMP(statut='o', typ='TXM', max='**', min=1,homo='SansOrdreNiDoublon', into = [],siValide=lienDB.ajouteEvaporation), -# ), # fin b_evaporation -# ), - -# ), # fin bloc b_type_mechanistic - - -# ---------------------------------------------- -Calculation = PROC (nom="Calculation", op=None, -# ---------------------------------------------- - Database=SIMP(statut= 'o',typ= 'TXM', into=("local database", "standard database") ), - Model=SIMP(statut= 'o',typ= 'TXM', into=("master model", "analytic model" ,"mechanistic model") ), - b_Model_Name = BLOC(condition = 'Model in ("master model","mechanistic model")', - TechnicalUse= SIMP(statut= 'o',typ= 'TXM',into=monDico['Modele_TechnicalUse'],defaut=monModele.technical_use ), - ModeleName=SIMP(statut='o',typ='TXM',defaut=monModele.nom,), -# filtre_calculation_mechanistic - > 3 dictionnaires -# la clef du 1er niveau est le modele qui remplit SimulationName - ), - - -# MASTER MODEL - b_simulation_modele = BLOC(condition = 'Model == "master model"', - Analytical_Equations = FACT(statut= 'o', max='**', - Consigne = SIMP(statut ="o", homo="information", typ="TXM", defaut = "Equation A"), - Clef1=SIMP(statut='o',typ='R'), - Clef2=SIMP(statut='o',typ='R'), - ), - ChemicalKinetics = FACT ( statut = 'o', - SimulationName=SIMP(statut='o',typ='TXM'), - OutputFolder = SIMP(statut="o", typ="Repertoire"), - Time=SIMP(statut='o',typ='R',), - Temperature=SIMP(statut='o',typ='R',), - DebitOfDose=SIMP(statut='o',typ='R',), - Thickness=SIMP(statut='o',typ='R',), - Dicretization= SIMP(statut='o',typ='R',), -# remplir les equations - InitialValue = SIMP(statut ='o', typ=Tuple(2),validators = VerifTypeTuple(('TXM','R')),max='**'), - - Boundary_Conditions = FACT(statut='o', - Product=FACT(statut='o', max='**', -# a remplir avec le filtre une liste des boundary -# ----------------------------------- - Consigne = SIMP(statut ="o", homo="information", typ="TXM", defaut = "Diffusion Product"), - Node_0 = FACT (statut='o', - Boundary_Condition_Type = SIMP(statut='o',typ='TXM',into=monDico['Boundary_Conditions']), - Value=SIMP(statut='o',typ='R',defaut=0), - ), - Node_N = FACT (statut='o', - Boundary_Condition_Type = SIMP(statut='o',typ='TXM',into=monDico['Boundary_Conditions']), - Value=SIMP(statut='o',typ='R',defaut=0), - ), - ), - ), - ),# fin ChemicalKinetics - Analytical_Equations_PostTreatment = FACT(statut= 'o', max='**', - Consigne = SIMP(statut ="o", homo="information", typ="TXM", defaut = "Equation A"), - Clef1=SIMP(statut='o',typ='R'), - Clef2=SIMP(statut='o',typ='R'), - ), - ), # fin bloc b_simulation_modele - - - - - -# MECHANISTIC MODEL -# filtre_calculation_mechanistic - > 3 dictionnaires -# la clef du 1er niveau est le modele qui remplit SimulationName -# - b_mechanistic = BLOC(condition = 'Model == "mechanistic model"', - ChimicalKinetics = FACT ( statut = 'o', - SimulationName=SIMP(statut='o',typ='TXM'), - OutputFolder = SIMP(statut="o", typ="Repertoire"), - Time=SIMP(statut='o',typ='R',), - Temperature=SIMP(statut='o',typ='R',), -# si dans le dictionnaire debit_of_dose = True je rentre la ligne suivante - DebitOfDose=SIMP(statut='o',typ='R',), - Thickness=SIMP(statut='o',typ='R',), - Dicretization= SIMP(statut='o',typ='R',), -# initial_parameter pour remplir cela - InitialValue = SIMP(statut ='o', typ=Tuple(2),validators = VerifTypeTuple(('TXM','R')),max='**'), - ), - -# si la liste est vide pas de Boundary_Conditions_Param sinon on cree les products - Boundary_Conditions_Param = FACT(statut='o', - Product=FACT(statut='o', max='**', -# a remplir avec le filtre une liste des boundary -# ----------------------------------- - Consigne = SIMP(statut ="o", homo="information", typ="TXM", defaut = "Diffusion Product"), - Node_0 = FACT (statut='o', - Boundary_Condition_Type = SIMP(statut='o',typ='TXM',into=monDico['Boundary_Conditions']), - Value=SIMP(statut='o',typ='R',defaut=0), - ), - Node_N = FACT (statut='o', - Boundary_Condition_Type = SIMP(statut='o',typ='TXM',into=monDico['Boundary_Conditions']), - Value=SIMP(statut='o',typ='R',defaut=0), - ), - ), - ), - ), # fin bloc b_simulation_modele - -# ANALYTIC MODEL - b_analytic_model = BLOC(condition = 'Model == "analytic model"', - Equation_Ty = SIMP(statut= 'o',typ= 'TXM',into=monDico['Equation_Liste']), - ModeleName=SIMP(statut='o',typ='TXM',defaut=monModele.nom,), - ChimicalKinetics = FACT ( statut = 'o', - SimulationName=SIMP(statut='o',typ='TXM'), - OutputFolder = SIMP(statut="o", typ="Repertoire"), -# remplir les equations - Equation = FACT(statut= 'o', max='**', - Consigne = SIMP(statut ="o", homo="information", typ="TXM", defaut = "Equation A"), -# dictionnaire cief de filtre_calculation_analitic avec clef = clef1, clef2... et valeur = coef[cle1] - Clef1=SIMP(statut='o',typ='R'), - Clef2=SIMP(statut='o',typ='R'), - ), - ), - ), # fin bloc b_analytic_model - -) - -# diffusionSpecies=SIMP(statut='o',typ='TXM',defaut='O2', into=['O2',]), -# nodeNumber = SIMP(statut='o',typ='I',defaut=1, into=[1]), # tjours1 -# BC_Value_Espece_1=SIMP(statut='o',typ='R'), -# nodeNumber_Espece_4 = SIMP(statut='o',typ='I',defaut=4, into=[4]), # numberOfNodes+1 -# Boundary_Conditions_Espece_4 = SIMP(statut='o',typ='TXM',into=monDico['Boundary_Conditions']), -# BC_Value_Espece_4=SIMP(statut='o',typ='R'), - - - -##--------------------------------- -#Equation = PROC (nom="Equation", -# op=None, -##--------------------------------- -# Equation_DB=SIMP(statut= 'o',typ= 'TXM', into=("Approved data base", "My data base") ), -# #b_suite = BLOC(condition = "Equation_DB == 'My data base' ", -# Equation_Type = SIMP(statut= 'o',typ= 'TXM', into=("Show equation database", "Equation creation"),), -# #), -# #b_suite_2 = BLOC(condition = "Equation_DB == 'Approved data base' ", -# #Equation_Type = SIMP(statut= 'o',typ= 'TXM', into=("Show equation database", ),), -# #), -# -## --------------------------------------------------------------------------- -# b_type_show = BLOC(condition = " Equation_Type == 'Show equation database'", -## --------------------------------------------------------------------------- -# Equation_Liste=SIMP(statut= 'o',typ= 'TXM', into=('reaction_type','aging_type')), -# -# b_reaction_type = BLOC(condition = " Equation_Liste == 'reaction_type'", -# Equation_reaction=SIMP(statut= 'o',typ= 'TXM', into=monDico['Equation_Liste'],siValide=lienDB.recupereDicoEquation), -# ), # Fin b_reaction_type -# -# b_aging_type = BLOC(condition = " Equation_Liste == 'aging_type'", -# Equation_reaction=SIMP(statut= 'o',typ= 'TXM', into=('All', 'thermo', 'radio'),siValide=lienDB.recupereDicoEquation), -# ), # Fin b_reaction_type -# -# ListeEquation = SIMP(statut='o', typ='TXM', homo='SansOrdreNiDoublon',siValide=lienDB.afficheValeurEquation), -# #ListeEquation = SIMP(statut='o', typ='TXM', homo='SansOrdreNiDoublon'), -# b_modification = BLOC(condition = " ListeEquation != None ", diff --git a/VirtualPolymer/configuration_VP.py b/VirtualPolymer/configuration_VP.py deleted file mode 100644 index b4a61c31..00000000 --- a/VirtualPolymer/configuration_VP.py +++ /dev/null @@ -1,43 +0,0 @@ -# -*- coding: utf-8 -*- -# maConfiguration MANAGEMENT OF EDF VERSION -# ====================================================================== -# COPYRIGHT (C) 1991 - 2002 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# -# -# ====================================================================== -""" - Ce module sert pour charger les paramètres de configuration d'EFICAS -""" -# Modules Python -from InterfaceQT4 import configuration -import os - - -class CONFIG(configuration.configBase): - - #----------------------------------- - def __init__(self,appli,repIni): - #----------------------------------- - - self.labels_user=['catalogues','lang'] - self.labels_eficas=['lang','rep_cata','catalogues'] - - configuration.configBase.__init__(self,appli,repIni) - - -def make_config(appli,rep): - return CONFIG(appli,rep) - diff --git a/VirtualPolymer/editor.py.ssVP b/VirtualPolymer/editor.py.ssVP deleted file mode 100755 index 5ad0154e..00000000 --- a/VirtualPolymer/editor.py.ssVP +++ /dev/null @@ -1,1879 +0,0 @@ -# -*- coding: utf-8 -*- -# Copyright (C) 2007-2013 EDF R&D -# -# 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 -# -from __future__ import absolute_import -from __future__ import print_function -try : - from builtins import str - from builtins import range -except : pass - -import types,sys,os, re -import subprocess -import traceback - -import six -from six.moves import range -from PyQt5.QtWidgets import QWidget, QMessageBox, QFileDialog, QApplication, QSplitter -from PyQt5.QtGui import QPalette -from PyQt5.QtCore import QProcess, QFileInfo, QTimer, Qt, QDir, QSize -import time -import pdb -from datetime import date -from Extensions.i18n import tr - -import traceback - -# Modules Eficas - -import convert, generator -from Editeur import session -from Editeur import comploader -from Editeur import Objecttreeitem -from desBaseWidget import Ui_baseWidget -from InterfaceQT4.monViewTexte import ViewText -from monWidgetCreeParam import MonWidgetCreeParam -from . import browser -from . import readercata - -DictExtensions= {"MAP" : ".map", "TELEMAC" : '.comm'} - - - - -class JDCEditor(Ui_baseWidget,QWidget): -# ----------------------------------------- # - """ - Editeur de jdc - """ - - def __init__ (self,appli,fichier = None, jdc = None, QWParent=None, units = None, include=0 , vm=None): - #----------------------------------------------------------------------------------------------------------# - - QWidget.__init__(self,None) - self.i=0 - self.setupUi(self) - self.inhibeSplitter=0 - self.widgetOptionnel=None - self.fenetreCentraleAffichee=None - self.dejaDansPlieTout=False - self.afficheCommandesPliees = True - self.listeDesListesOuvertes=set() - self.appliEficas = appli - self.appli = appli #---- attendu par IHM - self.vm = vm - self.fichier = fichier - self.jdc = jdc - self.first = True - self.QWParent = QWParent - self.couleur = Qt.black - self.nodeEnCours=None - - if appli != None : - self.salome = self.appliEficas.salome - else : - self.salome=0 - print ("dans JDC pas d appli ????????") - - # ces attributs sont mis a jour par definitCode appelee par newEditor - self.code = self.appliEficas.CONFIGURATION.code - self.initSplitterSizes() - - #self.afficheListesPliees=False - self.afficheListesPliees=True - if self.code == "ASTER" or self.code == "monCode" : self.afficheListesPliees =True - if self.code == 'PSEN_N1' : self.afficheListesPliees = False - - self.mode_nouv_commande=self.appliEficas.CONFIGURATION.mode_nouv_commande - self.closeAutreCommande=self.appliEficas.CONFIGURATION.closeAutreCommande - self.closeFrameRechercheCommande=self.appliEficas.CONFIGURATION.closeFrameRechercheCommande - self.closeArbre=self.appliEficas.CONFIGURATION.closeArbre - self.affiche=self.appliEficas.CONFIGURATION.affiche - self.afficheOptionnelVide=self.appliEficas.CONFIGURATION.afficheOptionnelVide - self.nombreDeBoutonParLigne = self.appliEficas.CONFIGURATION.nombreDeBoutonParLigne - self.dicoImages = self.appliEficas.CONFIGURATION.dicoImages - self.simpleClic = self.appliEficas.CONFIGURATION.simpleClic - #self.taille = self.appliEficas.taille - - #if self.code in ['MAP','CARMELCND','PSEN'] : self.afficheCommandesPliees=False - if self.code in ['MAP','CARMELCND'] : self.afficheCommandesPliees=False - if self.code in ['MAP',]: - self.widgetTree.close() - self.widgetTree=None - if self.closeArbre: self.fermeArbre() - - self.version_code = session.d_env.cata - - - if not hasattr ( self.appliEficas, 'readercata') or self.appliEficas.multi==True: - self.readercata = readercata.READERCATA( self, self.appliEficas ) - self.appliEficas.readercata=self.readercata - self.appliEficas.code=self.code - else : - self.readercata=self.appliEficas.readercata - if self.readercata.fic_cata == None : return #Sortie Salome - self.titre=self.readercata.titre - self.Ordre_Des_Commandes=self.readercata.Ordre_Des_Commandes - self.Classement_Commandes_Ds_Arbre=self.readercata.Classement_Commandes_Ds_Arbre - - self.format = self.appliEficas.format_fichier - - self.dict_reels={} - self.liste_simp_reel=[] - self.ihm="QT" - self.dicoNouveauxMC={} - self.dicoNouveauxFact={} - - nameConf='configuration_'+self.code - configuration=__import__(nameConf) - self.CONFIGURATION = self.appliEficas.CONFIGURATION - self.CONFIGStyle = self.appliEficas.CONFIGStyle - - try: - self.CONFIGURATION.generator_module - _module = __import__(self.CONFIGURATION.generator_module) - info = _module.entryPoint() - generator.plugins.addEntryPoint(info) - except: - pass - - try: - self.CONFIGURATION.convert_module - #print self.CONFIGURATION.convert_module - _module = __import__(self.CONFIGURATION.convert_module) - info = _module.entryPoint() - convert.plugins.addEntryPoint(info) - except : - pass - - self.sb = None - if hasattr(self.appliEficas,"statusBar"): - self.sb = self.appliEficas.statusBar() - - self.fileInfo = None - self.lastModified = 0 - - self.modified = False - self.isReadOnly = False - self.node_selected = [] - self.deplier = True - self.message='' - if self.code in ['Adao','ADAO','MAP'] : self.afficheApresInsert=True - else : self.afficheApresInsert=False - if self.code in ['TELEMAC',] : self.enteteQTree='premier' - else : self.enteteQTree='complet' - if self.code in ['Adao','ADAO','TELEMAC'] : self.affichePlie=True - else : self.affichePlie=False - - self.Commandes_Ordre_Catalogue =self.readercata.Commandes_Ordre_Catalogue - - #------- construction du jdc -------------- - - jdc_item = None - - self.nouveau=0 - if self.fichier is not None: # fichier jdc fourni - self.fileInfo = QFileInfo(self.fichier) - self.fileInfo.setCaching(0) - if jdc==None : - try : - self.jdc = self.readFile(self.fichier) - except : - print ("mauvaise lecture") - else : - self.jdc=jdc - if self.jdc is not None and units is not None: - self.jdc.recorded_units=units - self.jdc.old_recorded_units=units - else: - if not self.jdc: # nouveau jdc - if not include : - self.jdc = self._newJDC(units=units) - else : - self.jdc = self._newJDCInclude(units=units) - self.nouveau=1 - - if self.jdc: - self.jdc.appli = self # a resorber - self.jdc.editor = self - self.jdc.lang = self.appli.langue - self.jdc.aReafficher=False - txt_exception = None - if not jdc: - self.jdc.analyse() - txt_exception = self.jdc.cr.get_mess_exception() - if txt_exception: - self.jdc = None - QApplication.restoreOverrideCursor() - self.affiche_infos(tr("Erreur fatale au chargement de %s",str(fichier)),Qt.red) - if (self.appliEficas.ssIhm == False) : QMessageBox.critical( self, tr("Erreur fatale au chargement d'un fichier"), txt_exception) - else: - comploader.charger_composants("QT") - jdc_item=Objecttreeitem.make_objecttreeitem( self, "nom", self.jdc ) - if (not self.jdc.isvalid()) and (not self.nouveau) and (self.appliEficas.ssIhm == False): - self.viewJdcRapport() - - - - if jdc_item and self.appliEficas.ssIhm==False: - self.tree = browser.JDCTree( jdc_item, self ) - self.appliEficas.construitMenu() - - - ############# - self.adjustSize() - - - #-------------------# Pour execution avec output et error dans le bash - def runPSEN(self): - #-------------------# - - #if self.modified or self.fichier==None : self.saveFile() - self.saveFile() - - #lancement avec le .bat - path1 = os.path.abspath(os.path.join(os.path.abspath(__file__), '../','../','PSEN_Eficas','PSEN')) - WrapperFilePath = os.path.join(path1, 'PSSEWrapper.py') - import subprocess - p = subprocess.Popen(['python',WrapperFilePath]) - (out,err)=p.communicate() - print (out) - print (err) - - #-------------------# Pour execution avec output et error dans le bash - def runPSEN_N1(self): - #-------------------# - - - self.saveFile() - path1 = os.path.abspath(os.path.join(os.path.abspath(__file__), '../','../','ProcessOutputs_Eficas','TreatOutputs')) - sys.path.append(path1) - - if not(self.jdc.isvalid()): - QMessageBox.information( self, tr( "Unvalid JDC"),tr("incorrect keywords will be ignored")) - if 'dicoImbrique' in generator.plugins: - self.generator=generator.plugins['dicoImbrique']() - jdc_formate=self.generator.gener(self.jdc) - dico=self.generator.Dico - - ###to delete - #fileDico = r'C:\Logiciels DER\PSEN_V16\Code\ProcessOutputs_Eficas\TreatOutputs\dicoN1.py' - fileDico = os.path.join(path1, 'dicoN1.py') #r'C:\Logiciels DER\PSEN_V16\Code\ProcessOutputs_Eficas\TreatOutputs\dicoN1.py' - f = open( str(fileDico), 'w') - f.write("Dico =" + str(dico) ) - f.close() - ### - - - #print ('in runPSEN_N1', dico) - from Run import run - run(dico) - #res,txt_exception=run(dico) - #if res : QMessageBox.information( self, tr("fin de script run"), txt_exception) - #else : QMessageBox.critical( self, tr("Erreur fatale script run"), txt_exception) - - #-------------------# Pour execution avec output et error dans le bash - def process_N1(self): - #-------------------# - - path1 = os.path.abspath(os.path.join(os.path.abspath(__file__), '../','../','ProcessOutputs_Eficas','TreatOutputs')) - sys.path.append(path1) - - - if 'dicoImbrique' in generator.plugins: - self.generator=generator.plugins['dicoImbrique']() - jdc_formate=self.generator.gener(self.jdc) - dico=self.get_Dico() #generator.Dico - - - for k in dico['CONTINGENCY_PROCESSING']: - #print (k) - if k[0:19] == 'Component_List_For_' or k[0:21] =='Contingency_List_For_' : - newK=k.replace('___',' ') - l="'"+str(newK)+"'" - dico['CONTINGENCY_PROCESSING'][l]=dico['CONTINGENCY_PROCESSING'][k] - del dico['CONTINGENCY_PROCESSING'][k] - - ###to delete - fileDico = os.path.join(path1, 'dicoN1_process.py') - f = open( str(fileDico), 'w') - f.write("Dico =" + str(dico) ) - f.close() - ### - return dico - - #return self.get_Dico() - - #-------------------# Pour execution avec output et error dans le bash - def process_VP(self): - #-------------------# - if 'dicoImbrique' in generator.plugins: - self.generator=generator.plugins['dicoImbrique']() - jdc_formate=self.generator.gener(self.jdc) - dico=self.get_Dico() #generator.Dico - return dico - - - #--------------------------------# - def ajoutCommentaire(self): - #--------------------------------# - if self.tree.selectedItems()==[] : - QMessageBox.warning( self, tr("Pas de noeud selectionne"),tr("Selectionnez un Noeud \nLe commentaire sera place apres le noeud selectionne")) - return - noeudAvantCommentaire=self.tree.selectedItems()[0] - if noeudAvantCommentaire ==self.tree.racine : - self.tree.racine.append_child("COMMENTAIRE",pos=0) - return - noeudAvantCommentaire.addComment(True) - - - - #--------------------------------# - def _newJDC( self ,units = None): - #--------------------------------# - """ - Initialise un nouveau JDC vierge - """ - self.modified=1 - CONTEXT.unset_current_step() - - texte="" - if self.code == "CARMELCND" : texte=self._newJDCCND() - if self.code == "ZCRACKS" : texte=self._newZCRACKS() - if self.code == "TELEMAC" : texte=self._newTELEMAC() - if self.code == "PSEN" : texte = self._newPSEN() - if self.code == "PSEN_N1" : texte = self._newPSEN_N1() - - if hasattr(self.readercata.cata[0],'TEXTE_NEW_JDC') : texte=self.readercata.cata[0].TEXTE_NEW_JDC - - #if self.code == "CF" : texte = self._new_CF() - # texte=self.newTexteCND - - jdc=self.readercata.cata[0].JdC( procedure =texte, - appli=self, - cata=self.readercata.cata, - cata_ord_dico=self.readercata.cata_ordonne_dico, - rep_mat=self.CONFIGURATION.rep_mat - ) - jdc.lang = self.appli.langue - if units is not None: - jdc.recorded_units=units - jdc.old_recorded_units=units - ## PNPN est ce que la ligne suivante est bien utile ? - if texte == "" :jdc.analyse() - return jdc - - #--------------------------------# - def _newJDCInclude( self ,units = None): - #--------------------------------# - """ - Initialise un nouveau JDC vierge - """ - import Extensions.jdc_include - JdC_aux=Extensions.jdc_include.JdC_include - CONTEXT.unset_current_step() - - jaux=self.readercata.cata[0].JdC( procedure="", - appli=self, - cata=self.readercata.cata, - cata_ord_dico=self.readercata.cata_ordonne_dico, - rep_mat=self.CONFIGURATION.rep_mat, - ) - jaux.analyse() - - J=JdC_aux( procedure="", - appli=self, - cata=self.readercata.cata, - cata_ord_dico=self.readercata.cata_ordonne_dico, - jdc_pere=jaux, - rep_mat=self.CONFIGURATION.rep_mat, - ) - J.analyse() - if units is not None: - J.recorded_units=units - J.old_recorded_units=units - return J - - - #-------------------------------# - def readFile(self, fn): - #--------------------------------# - """ - Public slot to read the text from a file. - @param fn filename to read from (string or QString) - """ - fn = six.text_type(fn) - - # ------------------------------------------------------------------------------------ - # charge le JDC - # ------------------------------------------------------------------------------------ - - jdcName=os.path.basename(fn) - # Il faut convertir le contenu du fichier en fonction du format - if self.appliEficas.format_fichier_in in convert.plugins: - # Le convertisseur existe on l'utilise - #appli = self - p=convert.plugins[self.appliEficas.format_fichier_in]() - p.readfile(fn) - if p.text=="" : self.nouveau=1 - pareil,texteNew=self.verifieCHECKSUM(p.text) - #if texteNew == "" - if pareil == False and (self.appliEficas.ssIhm == False) : - QMessageBox.warning( self, tr("fichier modifie"),tr("Attention! fichier change hors EFICAS")) - p.text=texteNew - memeVersion,texteNew=self.verifieVersionCataDuJDC(p.text) - if memeVersion == 0 : texteNew=self.traduitCatalogue(texteNew) - p.text=texteNew - text=p.convert('exec',self.appliEficas) - if not p.cr.estvide(): - self.affiche_infos("Erreur a la conversion",Qt.red) - else : - self.affiche_infos("Type de fichier non reconnu",Qt.red) - if self.appliEficas.ssIhm == False: - QMessageBox.critical( self, tr("Type de fichier non reconnu"), - tr("EFICAS ne sait pas ouvrir le type de fichier %s" ,self.appliEficas.format_fichier_in)) - return None - - CONTEXT.unset_current_step() - jdc=self.readercata.cata[0].JdC(procedure=text, - appli=self, - cata=self.readercata.cata, - cata_ord_dico=self.readercata.cata_ordonne_dico, - nom=jdcName, - rep_mat=self.CONFIGURATION.rep_mat - ) - # ---------------------------------------------------- - # charge le JDC fin - # ---------------------------------------------------- - self.modified = False - -# qApp.restoreOverrideCursor() - if self.fileInfo!= None : - self.lastModified = self.fileInfo.lastModified() - else : - self.lastModified = 1 - nouveauTitre=self.titre+" "+str(os.path.basename(self.fichier)) - self.appliEficas.setWindowTitle(nouveauTitre) - return jdc - - - #-----------------------# - def get_source(self,file): - #-----------------------# - - # Il faut convertir le contenu du fichier en fonction du format - if self.format in convert.plugins : - # Le convertisseur existe on l'utilise - p=convert.plugins[self.format]() - p.readfile(file) - text=p.convert('execnoparseur') - if not p.cr.estvide(): - self.affiche_infos("Erreur a la conversion",Qt.red) - return text - else: - # Il n'existe pas c'est une erreur - self.affiche_infos("Type de fichier non reconnu",Qt.red) - QMessageBox.critical( self, tr("Type de fichier non reconnu"),tr("EFICAS ne sait pas ouvrir ce type de fichier")) - return None - - #-----------------------------------------------------------------------# - def _viewText(self, txt, caption = "FILE_VIEWER",largeur=1200,hauteur=600): - #--------------------------------------------------------------------# - w = ViewText( self.QWParent,self ,caption,txt,largeur,hauteur) - w.show() - # - - #----------------------------------------------# - def __generateTempFilename(self, prefix, suffix): - #----------------------------------------------# - import tempfile - (fd, filename) = tempfile.mkstemp(prefix=prefix, suffix=suffix) - os.close(fd) - return filename - # - - - #----------------------------------------------# - def _viewTextExecute(self, txt, prefix, suffix): - #----------------------------------------------# - self.w = ViewText( self.QWParent ) - self.w.setWindowTitle( "execution" ) - self.monExe=QProcess(self.w) - pid=self.monExe.pid() - nomFichier = self.__generateTempFilename(prefix, suffix = ".sh") - f=open(nomFichier,'w') - f.write(txt) - f.close() - self.monExe.readyReadStandardOutput.connect( self.readFromStdOut) - self.monExe.readyReadStandardError.connect( self.readFromStdErr) - exe='sh ' + nomFichier - self.monExe.start(exe) - self.monExe.closeWriteChannel() - self.w.exec_() - try: - commande="rm "+ nomFichier - os.system(commande) - except : - pass - - def readFromStdErr(self): - a=self.monExe.readAllStandardError() - self.w.view.append(str(a.data())) - - def readFromStdOut(self) : - a=self.monExe.readAllStandardOutput() - self.w.view.append(str(a.data())) - - def readFromStdErrQT4(self): - a=self.monExe.readAllStandardError() - self.w.view.append(QString.fromUtf8(a.data(),len(a))) ; - - def readFromStdOutQT4(self) : - a=self.monExe.readAllStandardOutput() - self.w.view.append(QString.fromUtf8(a.data(),len(a))) ; - - #-----------------------# - def generDico(self): - #-----------------------# - if 'dico' in generator.plugins: - self.generator=generator.plugins['dico']() - jdc_formate=self.generator.gener(self.jdc) - dico=self.generator.Dico - return dico - - #-----------------------# - def gestionParam(self): - #-----------------------# - w = MonWidgetCreeParam( self) - w.show() - - #-----------------------# - def viewJdcSource(self): - #-----------------------# - if self.fichier == None : return - f=open(self.fichier,'r') - texteSource=f.read() - f.close() - self._viewText(texteSource, "JDC_SOURCE") - - #-----------------------# - def viewJdcPy(self): - #-----------------------# - strSource = str( self.get_text_JDC(self.format) ) - self._viewText(strSource, "JDC_RESULTAT") - - #-----------------------# - def viewJdcRapport(self): - #-----------------------# - strRapport = six.text_type( self.jdc.report() ) - # on ajoute les regles - - self._viewText(strRapport, "JDC_RAPPORT") - - #-----------------------# - def viewJdcRegles(self): - #-----------------------# - if self.tree :self.tree.AppelleBuildLBRegles() - - - #----------------# - def closeIt(self): - #----------------# - """ - Public method called by the viewmanager to finally get rid of us. - """ - if self.jdc: - self.jdc.supprime() - self.close() - - #----------------------------------------------# - def affiche_infos(self,message,couleur=Qt.black): - #----------------------------------------------# - if self.sb: - mapalette=self.sb.palette() - mapalette.setColor( QPalette.WindowText, couleur ) - self.sb.setPalette( mapalette ); - self.sb.showMessage(message,4000) - self.couleur=couleur - - #------------------------------# - def affiche_alerte(self,titre,message): - #------------------------------# - # appele par I_MACRO_ETAPE - QMessageBox.information( self, titre, message) - - #-----------------------------------# - def affiche_commentaire(self,message): - #-----------------------------------# - self.labelCommentaire.setText(message) - QTimer.singleShot(6000, self.rendInvisible) - - #----------------------# - def rendInvisible(self): - #----------------------# - self.labelCommentaire.setText("") - - #-------------------# - def init_modif(self): - #-------------------# - """ - Met l'attribut modified a 'o' : utilise par Eficas pour savoir - si un JDC doit etre sauvegarde avant destruction ou non - """ - self.modified = True - - #---------------------------------------# - def chercheNoeudSelectionne(self,copie=1): - #---------------------------------------# - """ - appele par Cut et Copy pour positionner self.node_selected - """ - self.node_selected=[] - if len(self.tree.selectedItems()) == 0 : return - self.node_selected=self.tree.selectedItems() - - - #---------------------# - def handleSupprimer(self): - #---------------------# - self.chercheNoeudSelectionne() - if len(self.node_selected) == 0 : return - self.QWParent.noeud_a_editer = [] - if self.node_selected[0]==self.tree.racine: return - if len(self.node_selected) == 1 : self.node_selected[0].delete() - else : self.node_selected[0].deleteMultiple(self.node_selected) - - #---------------------# - def handleRechercher(self): - #---------------------# - from .monRecherche import DRecherche - monRechercheDialg=DRecherche(parent=self,fl=0) - monRechercheDialg.show() - - - #--------------------------------# - def handleRechercherDsCatalogue(self): - #-----------------------------# - from .monRechercheCatalogue import DRechercheCatalogue - monRechercheDialg=DRechercheCatalogue(self.QWParent,self) - monRechercheDialg.show() - - #---------------------# - def handleDeplier(self): - #---------------------# - if self.tree == None : return - #self.tree.collapseAll() - if self.deplier : - #print "je plie" - self.tree.expandItem(self.tree.topLevelItem(0)) - self.deplier = False - if self.fenetreCentraleAffichee != None : - if hasattr(self.fenetreCentraleAffichee.node,'plieToutEtReaffiche'): - self.fenetreCentraleAffichee.node.plieToutEtReaffiche() - else: - #print "je deplie" - self.tree.expandItem(self.tree.topLevelItem(0)) - self.deplier = True - if self.fenetreCentraleAffichee != None : - if hasattr(self.fenetreCentraleAffichee.node,'deplieToutEtReaffiche'): - self.fenetreCentraleAffichee.node.deplieToutEtReaffiche() - - #---------------------# - def handleEditCut(self): - #---------------------# - """ - Stocke dans Eficas.noeud_a_editer le noeud a couper - """ - #print "handleEditCut" - self.chercheNoeudSelectionne() - self.QWParent.edit="couper" - self.QWParent.noeud_a_editer = self.node_selected - - #-----------------------# - def handleEditCopy(self): - #-----------------------# - """ - Stocke dans Eficas.noeud_a_editer le noeud a copier - """ - self.chercheNoeudSelectionne() - if len(self.node_selected) == 0 : return - if len(self.node_selected) == 1 : self.node_selected[0].update_node_label_in_blue() - else : self.node_selected[0].update_plusieurs_node_label_in_blue(self.node_selected) - self.QWParent.edit="copier" - self.QWParent.noeud_a_editer = self.node_selected - - #------------------------# - def handleEditPaste(self): - #------------------------# - """ - Lance la copie de l'objet place dans self.QWParent.noeud_a_editer - Ne permet que la copie d'objets de type Commande ou MCF - """ - self.chercheNoeudSelectionne() - if (not(hasattr(self.QWParent,'noeud_a_editer'))) or len(self.QWParent.noeud_a_editer)==0: - QMessageBox.information( self, - tr("Copie impossible"), - tr("Veuillez selectionner un objet a copier")) - return - if len(self.node_selected) != 1 : - QMessageBox.information( self, - tr("Copie impossible"), - tr("Veuillez selectionner un seul objet : la copie se fera apres le noeud selectionne")) - return - noeudOuColler=self.node_selected[0] - - if len(self.QWParent.noeud_a_editer)!=1: - #self.handleEditPasteMultiple() - QMessageBox.information( self, tr("Copie impossible"), tr("Aucun Objet n a ete copie ou coupe")) - return - - noeudACopier=self.QWParent.noeud_a_editer[0] - - if (self.QWParent.edit != "couper"): - #print (noeudOuColler.item.parent.get_child(noeudOuColler.item.nom)) - try: - if noeudOuColler == self.tree.racine : - child=noeudOuColler.doPastePremier(noeudACopier) - else : - child=noeudACopier.doPaste(noeudOuColler,'after') - - if child==None or child==0: - QMessageBox.critical( self,tr( "Copie refusee"),tr('Eficas n a pas reussi a copier l objet')) - self.message = '' - self.affiche_infos("Copie refusee",Qt.red) - if noeudACopier.treeParent.editor != noeudOuColler.treeParent.editor: - try : - nom=noeudACopier.item.sd.nom - child.item.nomme_sd(nom) - except : - pass - return - self.init_modif() - child.select() - except : - traceback.print_exc() - QMessageBox.critical( self,tr( "Copie refusee"),tr('Copie refusee pour ce type d objet')) - self.message = '' - self.affiche_infos("Copie refusee",Qt.red) - return - - # il faut declarer le JDCDisplay_courant modifie - # suppression eventuelle du noeud selectionne - # si possible on renomme l objet comme le noeud couper - - if (self.QWParent.edit == "couper"): - print ('je pass la') - if noeudACopier.treeParent.editor != noeudOuColler.treeParent.editor: - QMessageBox.critical( self, tr("Deplacement refuse"),tr('Deplacement refuse entre 2 fichiers. Seule la copie est autorisee ')) - - #if 1: - try : - # indexNoeudACopier=noeudACopier.treeParent.children.index(noeudACopier) - indexNoeudACopier=self.getTreeIndex(noeudACopier) - noeudACopier.treeParent.item.deplaceEntite(indexNoeudACopier,indexNoeudOuColler,pos) - noeudACopier.treeParent.build_children() - - #else: - except: - pass - self.QWParent.noeud_a_editer=[] - - # on rend la copie a nouveau possible en liberant le flag edit - self.QWParent.edit="copier" - noeudACopier.select() - - #----------------------------------# - def handleDeplaceMultiple(self): - #----------------------------------# - pass - - #----------------------------------# - def handleEditPasteMultiple(self): - #----------------------------------# - - # On ne garde que les niveaux "Etape" - # On insere dans l'ordre du JDC - listeNoeudsACouper=[] - listeIndex=[] - listeChild=[] - listeItem=[] - from InterfaceQT4 import compojdc - noeudOuColler=self.node_selected[0] - if not (isinstance(noeudOuColler.treeParent, compojdc.Node)): - QMessageBox.information( self, - tr("Copie impossible a cet endroit",), - tr("Veuillez selectionner une commande, un parametre, un commentaire ou une macro")) - return - indexNoeudOuColler=noeudOuColler.treeParent.children.index(noeudOuColler) - - for noeud in self.QWParent.noeud_a_editer : - if not (isinstance(noeud.treeParent, compojdc.Node)): continue - indexInTree=noeud.treeParent.children.index(noeud) - indice = 0 - for index in listeIndex: - if index < indexInTree : indice = indice +1 - listeIndex.insert(indice, indexInTree) - listeNoeudsACouper.insert(indice, noeud) - - noeudJdc=noeudOuColler.treeParent - dejaCrees=0 - # on les cree a l'envers parcequ'on ajoute a NoeudOuColler - listeIndex.reverse() - for index in listeIndex: - indexTravail=index - if indexNoeudOuColler < index: - indexTravail=indexTravail+dejaCrees - noeudOuColler=noeudJdc.children[indexNoeudOuColler] - noeud=noeudJdc.children[indexTravail] - child=noeud.doPaste(noeudOuColler) - listeChild.append(child) - dejaCrees=dejaCrees+1 - - self.QWParent.noeud_a_editer = [] - for i in range(len(listeIndex)): - noeud=noeudJdc.children[indexNoeudOuColler+1+i] - self.QWParent.noeud_a_editer.append(noeud) - - listeASupprimer=[] - if self.QWParent.edit !="couper" : return - - for index in listeIndex: - indexTravail=index - if indexNoeudOuColler < index: - indexTravail=indexTravail+(len(listeIndex)) - noeud=noeudJdc.children[indexTravail] - - listeItem.append(noeud.item) - listeASupprimer.append(noeud) - - for i in range(len(listeChild)): - self.tree.item.suppitem(listeItem[i]) - listeChild[i].item.update(listeItem[i]) - - self.QWParent.noeud_a_editer = [] - - - #---------------------# - def getFileName(self): - #---------------------# - return self.fichier - - #---------------------------# - def get_file_variable(self) : - #---------------------------# - titre = tr("Choix d'un fichier XML") - texte = tr("Le fichier contient une commande MODEL\n") - texte = texte+tr('Donnez le nom du fichier XML qui contient la description des variables') - QMessageBox.information( self, titre,tr(texte)) - - fichier = QFileDialog.getOpenFileName(self.appliEficas, - tr('Ouvrir Fichier'), - self.appliEficas.CONFIGURATION.savedir, - tr('Wrapper Files (*.xml);;''All Files (*)')) - return fichier - - #--------------------------------------------------# - def writeFile(self, fn, txt = None,formatLigne="beautifie"): - #--------------------------------------------------# - """ - Public slot to write the text to a file. - - @param fn filename to write to string - @return flag indicating success - """ - - fn = six.text_type(fn) - - if txt == None : - txt = self.get_text_JDC(self.format,formatLigne=formatLigne) - eol = '\n' - if len(txt) >= len(eol): - if txt[-len(eol):] != eol: - txt += eol - else: - txt += eol - txt=self.ajoutVersionCataDsJDC(txt) - checksum=self.get_checksum(txt) - txt=txt+checksum - if self.code=="TELEMAC" : return 1 - try: - f = open(fn, 'w') - f.write(txt) - f.close() - return 1 - except IOError as why: - if (self.appliEficas.ssIhm == False): - QMessageBox.critical(self, tr('Sauvegarde du Fichier'), - tr('Le fichier')+str(fn) + tr('n a pas pu etre sauvegarde : ') + str(why)) - else : - print (why) - return 0 - - #-----------------------------------------------------------# - def get_text_JDC(self,format,pourRun=0,formatLigne="beautifie"): - #-----------------------------------------------------------# - if self.code == "MAP" and not(format in generator.plugins): format = "MAP" - if format in generator.plugins: - - # Le generateur existe on l'utilise - self.generator=generator.plugins[format]() - try : - jdc_formate=self.generator.gener(self.jdc,format=formatLigne,config=self.appliEficas.CONFIGURATION,appli=self.appliEficas) - if pourRun : jdc_formate=self.generator.textePourRun - if self.code == 'TELEMAC' : jdc_formate=self.generator.texteDico - except ValueError as e: - QMessageBox.critical(self, tr("Erreur a la generation"),str(e)) - return - - if not self.generator.cr.estvide(): - self.affiche_infos(tr("Erreur a la generation"),Qt.red) - QMessageBox.critical( self, tr("Erreur a la generation"),tr("EFICAS ne sait pas convertir ce JDC")) - return "" - else: - return jdc_formate - else: - # Il n'existe pas c'est une erreur - self.affiche_infos(tr("Format %s non reconnu" , self.format),Qt.red) - QMessageBox.critical( self, "Format non reconnu" ,tr("EFICAS ne sait pas convertir le JDC selon le format "+ self.format)) - return "" - - #----------------------# - def get_Dico(self): - #---------------------# - if 'dicoImbrique' in generator.plugins: - self.generator=generator.plugins['dicoImbrique']() - jdc_formate=self.generator.gener(self.jdc) - dico=self.generator.Dico - return dico - else : - self.affiche_infos(tr("Format %s non reconnu" , self.format),Qt.red) - QMessageBox.critical( self, "Format non reconnu" ,tr("EFICAS ne sait pas convertir le JDC selon le format "+ self.format)) - return "" - - - #------------# - def run(self): - #------------# - fonction="run"+self.code - #print fonction - if fonction in JDCEditor.__dict__: JDCEditor.__dict__[fonction],(self,) - - #------------# - def saveRun(self): - #------------# - fonction="saveRun"+self.code - if fonction in JDCEditor.__dict__: JDCEditor.__dict__[fonction],(self,) - - #---------------# - def runMAP(self): - #---------------# - - if not(self.jdc.isvalid()): - QMessageBox.critical( self, tr( "Execution impossible "),tr("le JDC doit etre valide pour une execution MAP")) - return - if len(self.jdc.etapes) != 1 : - QMessageBox.critical( self, tr("Execution impossible "),tr("le JDC doit contenir un et un seul composant")) - return - if self.modified or self.fichier==None : - self.fichierMapInput = self.__generateTempFilename(prefix = "map_run", suffix = ".map") - texte=self.get_text_JDC("MAP") - self.writeFile( self.fichierMapInput, txt = texte) - else : - self.fichierMapInput=self.fichier - composant=self.jdc.etapes[0].nom.lower()[0:-5] - - - # :TRICKY: to determine if a component requires SALOME, loads the component from Eficas catalog - # then instantiate corresponding class and call getUseSalome() method - try: - from mapengine.spec import factory - mapComponent = factory.new(composant)[0] - - command = "map" - if mapComponent.getUseSalome(): - command += " -r sappli" - textePython=(command + " run -n "+composant +" -i "+self.fichierMapInput) - - #textePython="ls -l" - self._viewTextExecute( textePython,"map_run",".sh") - #try: - # commande="rm "+self.fichierMapInput - # os.system(commande) - #except : - # pass - except Exception as e: - print((traceback.print_exc())) - - #-------------------# - def runZCRACKS(self): - #-------------------# - if not(self.jdc.isvalid()): - QMessageBox.critical( self, tr( "Execution impossible "),tr("le JDC doit etre valide pour une execution ")) - return - if self.modified or self.fichier==None : - #if 1: - self.fichierZcracksInput = self.__generateTempFilename(prefix = "zcracks_run", suffix = ".z7p") - texte=self.get_text_JDC("ZCRACKS",pourRun=1) - self.writeFile( self.fichierZcracksInput, txt = texte) - else : - self.fichierZcracksInput=self.fichier - try : - #commande ="Zrun -zp " - commande="more " - textePython=(commande + self.fichierZcracksInput) - self._viewTextExecute( textePython,"run_zcracks",".sh") - except Exception as e: - print((traceback.print_exc())) - - #-------------------# - def runCARMELCND(self): - #-------------------# - #if not(self.jdc.isvalid()): - # QMessageBox.critical( self, tr( "Execution impossible "),tr("le JDC doit etre valide pour une execution ")) - # return - if self.modified or self.fichier==None : - QMessageBox.critical( self, tr( "Execution impossible "),tr("Sauvegarder SVP avant l'execution ")) - return - if not hasattr(self,'generator'): texte=self.get_text_JDC(self.format) - from PrepareRunCarmel import prepareRunCarmel - fichierGenerique=os.path.basename(self.fichier).split(".")[0] - repMed=os.path.dirname(self.fichier) - repExeCarmel=self.generator.get_repExeCarmel() - textePython=prepareRunCarmel(repExeCarmel,repMed,fichierGenerique) - nomFichier = self.__generateTempFilename("carmel_run", suffix = ".sh") - f=open(nomFichier,'w') - f.write(textePython) - f.close() - commande="xterm -e sh "+nomFichier +"\n" - os.system(commande) - - #-------------------# - def runCarmelCS(self): - #-------------------# - try : - commande="runSession pilotyacsCS.py" - os.system(commande) - except Exception as e: - print((traceback.print_exc())) - - #-----------------------------------------------------# - def determineNomFichier(self,path,extension): - #-----------------------------------------------------# - if self.appli.code in DictExtensions: - chaine1="JDC (*"+DictExtensions[self.appli.code]+");;" - extensions= tr(chaine1+ "All Files (*)") - else : - extensions= tr("JDC (*.comm);;" "All Files (*)") - - if self.appli.code == "MAP" : - extensions = extensions + ";; Run (*.input);;" - - fn = QFileDialog.getSaveFileName( self, - tr("sauvegarde"), path, - extensions,None, - QFileDialog.DontConfirmOverwrite) - if fn == None : return (0, None) - fn=fn[0] - if fn=='': return (0, None) - - ext = QFileInfo(fn).suffix() - if ext == '': fn+=extension - - if QFileInfo(fn).exists(): - msgBox = QMessageBox(self) - msgBox.setWindowTitle(tr("Sauvegarde du Fichier")) - msgBox.setText(tr("Le fichier %s existe deja.", six.text_type(fn))) - msgBox.addButton(tr("&Ecraser"),0) - msgBox.addButton(tr("&Abandonner"),1) - abort=msgBox.exec_() - if abort == 1 : return (0, "") - return (1,fn) - - #-----------------# - def saveRunMAP(self): - #-----------------# - extension=".input" - if not(self.jdc.isvalid()): - QMessageBox.critical( self, tr( "Sauvegarde de l'input impossible "), - tr("Un JdC valide est necessaire pour creer un .input") - ) - return - try : - composant=self.jdc.etapes[0].nom.lower()[0:-5] - except : - QMessageBox.critical( self, tr( "Sauvegarde de l'input impossible "), - tr("Choix du composant obligatoire") - ) - return - if hasattr(self.CONFIGURATION, "savedir"): path=self.CONFIGURATION.savedir - else : path='C:/' - - monNomFichier="" - if self.fichier is not None and self.fichier != "" : - maBase=str(QFileInfo(self.fichier).baseName())+".input" - monPath=str(QFileInfo(self.fichier).absolutePath()) - monNomFichier=os.path.join(monPath,maBase) - elif hasattr(self,'monNomFichierInput'): - monNomFichier=self.monNomFichierInput - - - monDialog=QFileDialog(self.appliEficas) - monDialog.setDirectory (path) - monDialog.setWindowTitle ("Save") - - for c in monDialog.children(): - if isinstance(c,QDialogButtonBox): - for b in c.children(): - if isinstance(b,QPushButton): - avant=b.text() - if avant=="&Open": b.setText("Save") - mesFiltres= "input Map (*.input);;All Files (*)" - monDialog.setNameFilters(mesFiltres) - if monNomFichier!="" : monDialog.selectFile(monNomFichier) - BOk=monDialog.exec_() - if BOk==0: return - fn=str(monDialog.selectedFiles()[0]) - if fn == "" or fn == None : return - if not fn.endswith(".input"): - fn += ".input" - self.monNomFichierInput=fn - - if not hasattr(self, 'fichierMapInput') or not self.fichierMapInput or not os.path.exists(self.fichierMapInput): - self.fichierMapInput = self.__generateTempFilename(prefix = "map_run", suffix = ".map") - texte=self.get_text_JDC("MAP") - self.writeFile( self.fichierMapInput, txt = texte) - - cmd = ("map gen -t dat -n " + composant + " -i " + self.fichierMapInput + " -o " + fn) - p = subprocess.Popen(cmd, shell=True, stdout=subprocess.PIPE) - (output, err) = p.communicate() - - - #-----------------# - def saveRunPSEN(self): - #-----------------# - #print ("saveRunPSEN") - self.saveFile() - - - #-----------------------------------------# - def cherche_Groupes(self): - #-----------------------------------------# - listeMA,listeNO=self.get_text_JDC("GroupMA") - return listeMA,listeNO - - #-----------------------------------------# - def cherche_Dico(self): - #-----------------------------------------# - dicoCourant={} - format = self.appliEficas.format_fichier - if format in generator.plugins: - # Le generateur existe on l'utilise - self.generator=generator.plugins[format]() - jdc_formate=self.generator.gener(self.jdc,format='beautifie',config=self.appliEficas.CONFIGURATION) - dicoCourant=self.generator.dico - return dicoCourant - - - - #-----------------------------------------# - def handleAjoutGroup(self,listeGroup): - #-----------------------------------------# - try : - #if 1: - from ajoutGroupe import handleAjoutGroupFiltre - #print listeGroup - handleAjoutGroupFiltre(self,listeGroup) - #print "apres handleAjoutGroupFiltre" - except : - #else : - pass - - #-----------------------------------------------------------------# - def saveFileLeger(self, path = None, saveas= 0,formatLigne="beautifie"): - #-----------------------------------------------------------------# - extension='.casR' - fn = self.fichier - #saveas=True # Pour forcer le nom - self.generator=generator.plugins[self.format]() - if self.fichier is None or saveas: - if path is None: path=self.CONFIGURATION.savedir - bOK, fn=self.determineNomFichier(path,extension) - if bOK == 0 : return (0, None) - if fn == None : return (0, None) - if fn== '' : return (0, None) - - ulfile = os.path.abspath(six.text_type(fn)) - self.appliEficas.CONFIGURATION.savedir=os.path.split(ulfile)[0] - fn = six.text_type(QDir.toNativeSeparators(fn)) - - self.fichier = os.path.splitext(fn)[0]+extension - - if hasattr(self.generator, "writeLeger"): - self.generator.writeLeger(self.fichier,self.jdc,config=self.appliEficas.CONFIGURATION,appli=self.appliEficas) - - if self.salome : self.appliEficas.addJdcInSalome( self.fichier) - - self.modified = 0 - nouveauTitre=self.titre+" "+str(os.path.basename(self.fichier)) - self.appliEficas.setWindowTitle(nouveauTitre) - return (1, self.fichier) - - #-----------------------------------------------------------------# - def saveFile(self, path = None, saveas= 0,formatLigne="beautifie"): - #-----------------------------------------------------------------# - """ - Public slot to save the text to a file. - - @param path directory to save the file in (string or QString) - @return tuple of two values (boolean, string) giving a success indicator and - the name of the saved file - """ - - self.modified=1 - if not self.modified and not saveas: - return (0, None) # do nothing if text wasn't changed - - if self.appli.code in DictExtensions : - extension=DictExtensions[self.appli.code] - else : - extension='.comm' - - newName = None - fn = self.fichier - if self.fichier is None or saveas: - if path is None: path=self.CONFIGURATION.savedir - bOK, fn=self.determineNomFichier(path,extension) - if bOK == 0 : return (0, None) - if fn == None : return (0, None) - if fn== '' : return (0, None) - - ulfile = os.path.abspath(six.text_type(fn)) - self.appliEficas.CONFIGURATION.savedir=os.path.split(ulfile)[0] - fn = six.text_type(QDir.toNativeSeparators(fn)) - newName = fn - - - if not (self.writeFile(fn,formatLigne=formatLigne)): return (0, None) - self.fichier = fn - self.modified = False - if self.fileInfo is None or saveas: - self.fileInfo = QFileInfo(self.fichier) - self.fileInfo.setCaching(0) - self.lastModified = self.fileInfo.lastModified() - if newName is not None: - self.appliEficas.addToRecentList(newName) - self.tree.racine.item.getObject().nom=os.path.basename(newName) - self.tree.racine.update_node_label() - - if self.jdc.isvalid() != 0 and hasattr(self.generator, "writeDefault"): - self.generator.writeDefault(fn) - elif self.code=="TELEMAC" and hasattr(self.generator, "writeDefault"): - self.generator.writeDefault(fn) - - if self.salome : - self.appliEficas.addJdcInSalome( self.fichier) - self.modified = 0 - nouveauTitre=self.titre+" "+str(os.path.basename(self.fichier)) - self.appliEficas.setWindowTitle(nouveauTitre) - - return (1, self.fichier) -# - - #----------------------------------------------# - def sauveLigneFile(self): - #----------------------------------------------# - self.modified=1 - return self.saveFile(formatLigne="Ligne") - - - #----------------------------------------------# - def saveFileAs(self, path = None,fileName=None): - #----------------------------------------------# - """ - Public slot to save a file with a new name. - - @param path directory to save the file in (string or QString) - @return tuple of two values (boolean, string) giving a success indicator and - the name of the saved file - """ - if fileName != None : - self.fichier = fileName - return self.saveFile() - return self.saveFile(path,1,"beautifie") - - - - #---------------------------------------------# - def get_file(self,unite=None,fic_origine = ''): - #---------------------------------------------# - # appele par I_JDC - ulfile = None - jdcText = "" - - titre = "" - - if unite : - titre = tr("Choix unite %d ", unite) - texte = tr("Le fichier %s contient une commande INCLUDE \n", str(fic_origine)) +"\n" - texte = texte+ tr("Donnez le nom du fichier correspondant a l unite logique ") + repr(unite) - labeltexte = tr('Fichier pour unite ') + repr( unite) - else: - titre = tr("Choix d'un fichier de poursuite") - texte = tr("Le fichier %s contient une commande POURSUITE\n", fic_origine) - texte = texte+tr('Donnez le nom du fichier dont vous \n voulez faire une poursuite') - - QMessageBox.information( self, titre,texte) - fn = QFileDialog.getOpenFileName(self.appliEficas, - titre, - self.appliEficas.CONFIGURATION.savedir) - - # ce retour est impose par le get_file d'I_JDC - if fn== '' : return None," " - if not fn : return (0, " ") - fn=fn[0] - - ulfile = os.path.abspath(six.text_type(fn)) - self.appliEficas.CONFIGURATION.savedir=os.path.split(ulfile)[0] - - # On utilise le convertisseur defini par format_fichier - source=self.get_source(ulfile) - if source: - # On a reussia convertir le fichier self.ulfile - jdcText = source - else: - # Une erreur a ete rencontree - jdcText = '' - return ulfile, jdcText - - #-------------------------------# - def updateJdc(self, itemApres,texte): - #--------------------------------# - monItem=itemApres - etape=monItem.item.object - - CONTEXT.set_current_step(etape) - etape.build_includeInclude(texte) - self.tree.racine.build_children() - - #-------------------------------------# - def deleteEtape(self,etape): - #-------------------------------------# - self.jdc.suppentite(etape) - - #-------------------------------------# - def deleteMC(self,etape,MCFils,listeAvant=()): - #-------------------------------------# - ouChercher=etape - for mot in listeAvant : - ouChercher=ouChercher.get_child(mot,restreint="oui") - monMC=ouChercher.get_child(MCFils,restreint="oui") - if monMC != None : ouChercher.suppentite(monMC) - ouChercher.state='changed' - ouChercher.isvalid() - - #-------------------------------------# - def ajoutMC(self,etape,MCFils,valeurs,listeAvant=()): - #-------------------------------------# - ouChercher=etape - for mot in listeAvant : - ouChercher=ouChercher.get_child(mot,restreint="oui") - monMC=etape.get_child(ouChercher,restreint="oui") - if monMC== None : monMC= ouChercher.addentite(MCFils) - monMC.valeur=valeurs - monMC.val=valeurs - monMC.state='changed' - monMC.isvalid() - - #-------------------------------------# - def getValeur(self,nomEtape,MCFils,listeAvant=()): - #-------------------------------------# - - ouChercher=None - for e in self.jdc.etapes: - if e.nom == nomEtape : ouChercher=e; break - if ouChercher==None : return None - for mot in listeAvant : - ouChercher=ouChercher.get_child(mot,restreint="oui") - if ouChercher==None : return None - monMC=ouChercher.get_child(MCFils,restreint="oui") - if monMC== None : return None - return monMC.valeur - - #-----------------------------------------------------------# - def changeIntoMC(self,etape,MCFils,valeurs, listeAvant=()): - #-----------------------------------------------------------# - ouChercher=etape - if isinstance (etape, str): - ouChercher=None - for e in self.jdc.etapes: - if e.nom == etape : ouChercher=e; break - if ouChercher==None : return - - for mot in listeAvant : - ouChercher=ouChercher.get_child(mot,restreint="oui") - if ouChercher==None : return - monMC=ouChercher.get_child(MCFils,restreint="oui") - if monMC== None : monMC= ouChercher.addentite(MCFils) - - monMC.definition.into=valeurs - from Noyau.N_VALIDATOR import IntoProtocol - monMC.definition.intoProto = IntoProtocol("into", into=monMC.definition.into, val_min=monMC.definition.val_min, val_max=monMC.definition.val_max) - monMC.state='changed' - monMC.isvalid() - - #-------------------------------------------------------------------# - def reCalculeValiditeMCApresChgtInto(self,nomEtape,MCFils,listeAvant=()): - #-------------------------------------------------------------------# - for e in self.jdc.etapes: - if e.nom == nomEtape : ouChercher=e; break - - for mot in listeAvant : - try : - ouChercher=ouChercher.get_child(mot,restreint="oui") - # Le mot clef n est pas la - except : return 0 - try : - monMC=ouChercher.get_child(MCFils,restreint="oui") - # Le mot clef n est pas la - except : return 0 - if monMC == None : return 0 - - if hasattr(monMC.definition,'into') : - if type(monMC.definition.into) ==types.FunctionType : maListeDeValeur=monMC.definition.into() - else : maListeDeValeur=monMC.definition.into - else : - return 0 - - monMC.state='changed' - return 1 - - #-------------------------------------# - def changeDefautDefMC(self,nomEtape,listeMC,valeurs): - #-------------------------------------# - - #if isinstance (etape, str): - # for e in self.jdc.etapes: - # if e.nom == etape : etape=e; break - #if etape == None : return - definitionEtape=getattr(self.jdc.cata[0],nomEtape) - ouChercher=definitionEtape - if len(listeMC) > 1 : - - for mc in listeMC[0:-1]: - mcfact=ouChercher.entites[mc] - ouChercher=mcfact - - mcAccas=ouChercher.entites[listeMC[-1]] - mcAccas.defaut=valeurs - return 1 - - #------------------------------------------------# - def changeIntoDefMC(self,nomEtape,listeMC,valeurs): - #------------------------------------------------# - definitionEtape=getattr(self.jdc.cata[0],nomEtape) - ouChercher=definitionEtape - - if len(listeMC) > 1 : - for mc in listeMC[0:-1]: - mcfact=ouChercher.entites[mc] - ouChercher=mcfact - mcAccas=ouChercher.entites[listeMC[-1]] - - if hasattr(mcAccas,'into') : oldValeurs=mcAccas.into - else : oldValeurs=None - if oldValeurs==valeurs : return 0 - - mcAccas.into=valeurs - from Noyau.N_VALIDATOR import IntoProtocol - mcAccas.intoProto = IntoProtocol("into", into=valeurs, val_min=mcAccas.val_min, val_max=mcAccas.val_max) - return 1 - - #-------------------------------------------------------------# - def deleteDefinitionMC(self,etape,listeAvant,nomDuMC): - #-------------------------------------------------------------# - #print 'in deleteDefinitionMC', etape,listeAvant,nomDuMC - if isinstance (etape, str): - for e in self.jdc.etapes: - if e.nom == etape : etape=e; break - if etape == None : return - definitionEtape=getattr(self.jdc.cata[0],etape) - ouChercher=definitionEtape - for k in listeAvant : - ouChercher=ouChercher.entites[k] - MCADetruire=ouChercher.entites[nomDuMC] - ouChercher.ordre_mc.remove(nomDuMC) - del ouChercher.entites[nomDuMC] - del self.dicoNouveauxMC[nomDuMC] - - - #-------------------------------------------------------------# - def ajoutDefinitionMC(self,nomEtape,listeAvant,nomDuMC,typ,**args): - #-------------------------------------------------------------# - definitionEtape=getattr(self.jdc.cata[0],nomEtape) - ouChercher=definitionEtape - for k in listeAvant : - ouChercher=ouChercher.entites[k] - from Accas import A_SIMP - Nouveau=A_SIMP.SIMP(typ,**args) - Nouveau.pere=ouChercher - Nouveau.nom=nomDuMC - #Nouveau.ordre_mc=[] - ouChercher.entites[nomDuMC]=Nouveau - ouChercher.ordre_mc.append(nomDuMC) - self.dicoNouveauxMC[nomDuMC]=('ajoutDefinitionMC',nomEtape,listeAvant,nomDuMC,typ,args) - #print self.dicoNouveauxMC - - #---------------------------------------------------------------------# - def ajoutDefinitionMCFact(self,nomEtape,listeAvant,nomDuMC,listeMC,**args): - #---------------------------------------------------------------------# - print ('ajoutDefinitionMCFact', nomDuMC) - definitionEtape=getattr(self.jdc.cata[0],nomEtape) - ouChercher=definitionEtape - for k in listeAvant : - ouChercher=ouChercher.entites[k] - from Accas import A_SIMP - for mc in listeMC : - nomMC=mc[0] - typMC=mc[1] - argsMC=mc[2] - nouveauMC=A_SIMP.SIMP(typMC,**argsMC) - nouveauMC.nom=nomMC - args[nomMC]=nouveauMC - from Accas import A_FACT - nouveauFact=A_FACT.FACT(**args) - nouveauFact.pere=ouChercher - nouveauFact.nom=nomDuMC - from Editeur.autre_analyse_cata import traite_entite - traite_entite(nouveauFact,[]) - ouChercher.entites[nomDuMC]=nouveauFact - ouChercher.ordre_mc.append(nomDuMC) - self.dicoNouveauxFact[nomDuMC]=('ajoutDefinitionMC',nomEtape,listeAvant,nomDuMC,listeMC,args) - #print self.dicoNouveauxMC - - #----------------------------------------------------# - - #----------------------------------------------------# - def changeIntoMCandSet(self,etape,listeMC,into,valeurs): - #----------------------------------------------------# - - self.changeIntoDefMC(etape,listeMC,into) - - if isinstance (etape, str): - for e in self.jdc.etapes: - if e.nom == etape : etape=e; break - if etape == None : return - - ouChercher = etape - for mot in listeMC[:-1] : - ouChercher=ouChercher.get_child(mot,restreint="oui") - if ouChercher==None : return - MCFils=listeMC[-1] - print (MCFils) - monMC=ouChercher.get_child(MCFils,restreint="oui") - if monMC== None : monMC= etape.addentite(MCFils) - print (monMC) - - monMC.definition.into=into - monMC.valeur=valeurs - monMC.val=valeurs - monMC.state='changed' - monMC.isvalid() - - #-------------------------------------# - def ajoutVersionCataDsJDC(self,txt): - #-------------------------------------# - if not hasattr(self.readercata.cata[0],'VERSION_CATALOGUE'): return txt - ligneVersion="#VERSION_CATALOGUE:"+self.readercata.cata[0].VERSION_CATALOGUE+":FIN VERSION_CATALOGUE\n" - texte=txt+ligneVersion - return texte - - #-------------------------------------# - def verifieVersionCataDuJDC(self,text): - #-------------------------------------# - memeVersion=False - indexDeb=text.find("#VERSION_CATALOGUE:") - indexFin=text.find(":FIN VERSION_CATALOGUE") - if indexDeb < 0 : - self.versionCataDuJDC="sans" - textJDC=text - else : - self.versionCataDuJDC=text[indexDeb+19:indexFin] - textJDC=text[0:indexDeb]+text[indexFin+23:-1] - - self.versionCata="sans" - if hasattr(self.readercata.cata[0],'VERSION_CATALOGUE'): self.versionCata=self.readercata.cata[0].VERSION_CATALOGUE - - if self.versionCata==self.versionCataDuJDC : memeVersion=True - return memeVersion,textJDC - - #-------------------------------# - def traduitCatalogue(self,texte): - #-------------------------------# - nomTraducteur="traduit"+self.readercata.code+self.versionCataDuJDC+"To"+self.versionCata - sys.path.append(os.path.abspath(os.path.join(os.path.dirname(os.path.abspath(__file__)),"../Traducteur"))) - try : - traducteur=__import__(nomTraducteur) - monTraducteur=traducteur.MonTraducteur(texte) - nouveauTexte=monTraducteur.traduit() - return nouveauTexte - except : - return texte - - - #------------------------------# - def verifieCHECKSUM(self,text): - #------------------------------# - indexDeb=text.find("#CHECKSUM:") - if indexDeb < 0 : - return 1, text - indexFin=text.find(":FIN CHECKSUM") - checkAvant=text[indexDeb:indexFin+13] - textJDC=text[0:indexDeb]+text[indexFin+13:-1] - checksum=self.get_checksum(textJDC) - pareil=(checkAvant==checksum) - return pareil, textJDC - - #---------------------------# - def get_checksum(self,texte): - #---------------------------# - newtexte=texte.replace('"','\\"') - commande='echo "'+newtexte+'"|md5sum' - a=os.popen(commande) - checksum=a.read() - a.close() - ligne="#CHECKSUM:"+checksum[0:-1]+":FIN CHECKSUM" - return ligne - - - #---------------------------# - def _new_CF(self): - #---------------------------# - texte="CONDUITE_FORCEE();" - return texte - - - #---------------------------# - def _newTELEMAC(self): - #---------------------------# - #texte="INITIALIZATION();BOUNDARY_CONDITIONS();GENERAL_PARAMETERS();PHYSICAL_PARAMETERS();NUMERICAL_PARAMETERS();" - texte="COMPUTATION_ENVIRONMENT();HYDRO();GENERAL_PARAMETERS();NUMERICAL_PARAMETERS()" - #texte="TRACERS();" - return texte - - #---------------------------# - def _newPSEN(self): - #---------------------------# - texte="DIRECTORY() ; PSSE_PARAMETERS() ; SIMULATION() ; sansnom=DISTRIBUTION() ; sansnom=DISTRIBUTION() ; CORRELATION() ;" - #texte="" - return texte - - #---------------------------# - def _newPSEN_N1(self): - #---------------------------# - texte="CASE_SELECTION();N_PROCESSING_OPTIONS();CONTINGENCY_OPTIONS();CONTINGENCY_SELECTION();\nCONTINGENCY_PROCESSING(); " - texte="CONTINGENCY_SELECTION();\nCONTINGENCY_PROCESSING(); " - return texte - - #---------------------------# - - #---------------------------# - def _newZCRACKS(self): - #---------------------------# - texte="MAILLAGES();REMESHING();" - return texte - - #---------------------------# - def _newJDCCND(self): - #---------------------------# - extensions=tr('Fichiers Med (*.med);;''Tous les Fichiers (*)') - - #if self.salome == 0 : - QMessageBox.information( self, - tr("Fichier Med"), - tr("Veuillez selectionner un fichier Med")) - QSfichier = QFileDialog.getOpenFileName(self.appliEficas, - caption='Fichier Med', - filter=extensions) - QSfichier=QSfichier[0] - self.fichierMED=QSfichier - from acquiertGroupes import getGroupes - erreur,self.listeGroupes,self.nomMaillage,self.dicoCoord=getGroupes(self.fichierMED) - if erreur != "" : print ("a traiter") - texteComm="COMMENTAIRE(u'Cree - fichier : "+self.fichierMED +" - Nom Maillage : "+self.nomMaillage+"');\nPARAMETRES()\n" - texteSources="" - texteCond="" - texteNoCond="" - texteVcut="" - texteZs="" - for groupe in self.listeGroupes : - if groupe[0:8]=='CURRENT_': - texteSources +=groupe[8:]+"=SOURCE(" - texteSources +="VecteurDirecteur=(1.0,2.0,3.0,),);\n" - if groupe[0:5]=='COND_': texteCond +=groupe[5:]+"=CONDUCTEUR();\n" - if groupe[0:7]=='NOCOND_': texteNoCond +=groupe[7:]+"=NOCOND();\n" - if groupe[0:5]=='VCUT_': texteVcut +='V_'+groupe[5:]+"=VCUT();\n" - if groupe[0:3]=='ZS_': texteZs +=groupe[3:]+"=ZS();\n" - texte=texteComm+texteSources+texteCond+texteNoCond+texteVcut+texteZs - self.newTexteCND=texte - self.modified=1 - return texte - - - #---------------------------# - def BoutonFileSelected(self): - #---------------------------# - - QSfichier=self.openfile.selectedFiles()[0] - self.fichierMED=str(QSfichier) - from acquiertGroupes import getGroupes - erreur,self.listeGroupes,self.nomMaillage=getGroupes(self.fichierMED) - if erreur != "" : print ("a traiter") - - #----------------------------- - def BoutonSalomePressed(self): - #---------------------------- - Msg,self.listeGroupes=self.appliEficas.ChercheGrpMailleInSalome() - self.fichierMED="A_partir_de_SMESH" - self.nomMaillage="A_partir_de_SMESH" - self.openfile.close() - - - #----------------------------------------- - def initSplitterSizes(self, nbWidget=3): - #----------------------------------------- - #print ("je passe ds initSplitterSizes", nbWidget) - - if self.code in [ 'Adao', 'ADAO', ] : self.splitterSizes3=[1,1550,150] - elif self.code in [ 'MAP'] : self.splitterSizes3=[700,300] - else : self.splitterSizes3=[150,1000,300] - - if self.code in [ 'Adao', 'ADAO', ] : self.splitterSizes2=[5,1500] - else : self.splitterSizes2=[300,1000] - - - - #----------------------------------------- - def restoreSplitterSizes(self,nbWidget=3): - #---------------------------------------- - - #traceback.print_stack() - #print ("je passe ds restoreSplitterSizes") - if not(hasattr(self,'splitter')) : return - if nbWidget==2 : newSizes=self.splitterSizes2 - if nbWidget==3 : newSizes=self.splitterSizes3 - #self.inhibeSplitter = 1 - self.splitter.setSizes(newSizes) - #self.inhibeSplitter = 0 - QApplication.processEvents() - # seule la fentetre du milieu est necessaire - self.splitter.widget(1).resizeEvent=self.saveSplitterSizes - - #----------------------------------------- - def saveSplitterSizes(self,event): - #----------------------------------------- - #print ("je passe ds saveSplitterSizes") - if self.inhibeSplitter : return - if self.widgetOptionnel == None : self.splitterSizes2 = self.splitter.sizes()[0:2] - else : self.splitterSizes3 = self.splitter.sizes()[0:3] - - #------------------------ - def fermeOptionnel(self): - #------------------------ - if self.widgetOptionnel == None : return - - self.inhibeSplitter=1 - self.widgetOptionnel.setParent(None) - self.widgetOptionnel.close() - self.widgetOptionnel.deleteLater() - self.widgetOptionnel=None - self.inhibeSplitter=0 - self.restoreSplitterSizes(2) - - #------------------------ - def ajoutOptionnel(self): - #------------------------ - #if len(self.splitterSizes) == 2 : self.splitterSizes.append(self.oldSizeWidgetOptionnel) - #else : self.splitterSizes[2] = self.oldSizeWidgetOptionnel # ceinture pour les close bizarres - #self.splitterSizes[1] = self.splitterSizes[1] - self.splitterSizes[2] - - self.restoreSplitterSizes(3) - - - #------------------------ - def fermeArbre(self): - #------------------------ - #print (self.widgetTree) - self.oldWidgetTree=self.widgetTree - self.widgetTree.hide() - #self.widgetTree=None - - #------------------------ - def ouvreArbre(self): - #------------------------ - #print ('je passe la') - #print (self.widgetTree) - #self.widgetTree=self.oldWidgetTree - self.widgetTree.show() - #self.restoreSplitterSizes(3) - - #----------------------------- - def getTreeIndex(self,noeud): - #---------------------------- - indexNoeud=-1 - if noeud in noeud.treeParent.children : - indexNoeud=noeud.treeParent.children.index(noeud) - else : - if hasattr(noeud,'vraiParent') : - noeudVrai = noeud - noeudVraiParent = noeud.vraiParent - while noeudVraiParent != noeud.treeParent and hasattr(noeudVraiParent,'vraiParent') : - noeudVrai = noeudVraiParent - noeudVraiParent = noeudVraiParent.vraiParent - pass - if noeudVraiParent == noeud.treeParent : - indexNoeud=noeud.treeParent.children.index(noeudVrai) - pass - pass - pass - return indexNoeud - -if __name__ == "__main__": - self.code='ASTER' - name='prefs_'+prefs.code - prefsCode=__import__(name) - - - if hasattr(prefsCode,'encoding'): - # Hack pour changer le codage par defaut des strings - import sys - reload(sys) - sys.setdefaultencoding(prefs.encoding) - del sys.setdefaultencoding - # Fin hack - -# code=options.code -# - app = QApplication(sys.argv) - mw = JDCEditor(None,'azAster.comm') - app.setMainWidget(mw) - app.connect(app, SIGNAL("lastWindowClosed()"), app, SLOT("quit()")) - mw.show() - - res = app.exec_loop() - sys.exit(res) diff --git a/VirtualPolymer/lienDB.py b/VirtualPolymer/lienDB.py deleted file mode 100644 index e5ba42f1..00000000 --- a/VirtualPolymer/lienDB.py +++ /dev/null @@ -1,537 +0,0 @@ -# coding: utf-8 - -import types -import sys,os - - -dicoAgingFactor={ '40years BR top' : {'temperature' : 50, 'simulationTime' : 350640}} - -def entoure(func): - def wrapper(*args, **kwargs): - if hasattr(monMC,'dsMaFunct') and monMC.dsMaFunct== True : return - monMC.dsMaFunct = True - retour =func(*args, **kwargs) - monMC.dsMaFunct = False - return retour - return wrapper - - -# -------------------------------------- -# Fonctions appellees depuis le catalogue -# -------------------------------------- - -# -------------------------------------- -# Dans Calculation -# -------------------------------------- - -@entoure -def remplitMasterModel(monMC): - -# from Test import Dico2 - editor=monMC.jdc.editor - print (editor) - -#def recupereDicoEquation(monMC): -# # Equation_reaction (ds 2 blocs) -# # ou dans Equation b_type_show b_reaction_type -# # ou dans Equation b_type_show b_aging_type -# -# if hasattr(monMC,'dsMaFunct') and monMC.dsMaFunct== True : return -# editor=monMC.jdc.editor -# monMC.dsMaFunct = True -# -# valeurDB=editor.getValeur('Equation','Equation_DB',()) -# maClasseDelistesDB.metAJour(valeurDB) -# listEquation=maClasseDelistesDB.getListEquation() -# -# valeurEquationListe=editor.getValeur('Equation','Equation_Liste',('b_type_show',)) -# valeurAgingType=editor.getValeur('Equation','Equation_reaction',('b_type_show','b_reaction_type',)) -# if valeurAgingType == None : -# valeurAgingType=editor.getValeur('Equation','Equation_reaction',('b_type_show','b_aging_type',)) -# if valeurAgingType == None : monMC.dsMaFunct = False; return -# -# listeEquationPourIhm = [] -# listeReprEquationPourIhm = [] -# dicoListAffiche = {} -# -# for equation in listEquation : -# if valeurEquationListe == 'aging_type' : -# if equation.type_vieil == valeurAgingType : -# listeEquationPourIhm.append(equation) -# listeReprEquationPourIhm.append(equation.representation) -# dicoListAffiche[equation.representation]=equation -# else: -# if equation.type_react == valeurAgingType : -# listeEquationPourIhm.append(equation) -# listeReprEquationPourIhm.append(equation.representation) -# dicoListAffiche[equation.representation]=equation -# maClasseDelistesDB.dicoListAffiche = dicoListAffiche -# -# change=editor.changeIntoDefMC('Equation', ('b_type_show','ListeEquation'), listeReprEquationPourIhm ) -# if change : -# editor.reCalculeValiditeMCApresChgtInto('Equation', 'listeEquation', ('b_type_show',)) -# if editor.fenetreCentraleAffichee : editor.fenetreCentraleAffichee.node.affichePanneau() -# monMC.dsMaFunct = False -# -#def afficheValeurEquation(monMC): -# # Equation b_modification modification -# print (monMC) -# if hasattr(monMC,'dsMaFunct') and monMC.dsMaFunct== True : return -# valeur=monMC.valeur -# if valeur == None : return -# maClasseDelistesDB.valeurEquationChoisie=str(valeur) -# monEquation=maClasseDelistesDB.dicoListAffiche[str(valeur)] -# -# aAfficher=str(monEquation) -# editor=monMC.jdc.editor -# editor._viewText(aAfficher, "Id",largeur=80,hauteur=300) -# -# monMC.dsMaFunct = False -# -# -#def instancieChemicalFormulation(monMC): -# print ('instancieChemicalFormulation pour ', monMC.nom) -# if hasattr(monMC,'dsMaFunct') and monMC.dsMaFunct== True : return -# if monMC.valeur == False : return -# -# editor=monMC.jdc.editor -# if hasattr(editor,'dsMaFunct') and editor.dsMaFunct== True : return -# editor.dsMaFunct = True -# -# for e in monMC.jdc.etapes: -# if e.nom == 'Equation' :break -# print ('ds instancie') -# v=maClasseDelistesDB.valeurEquationChoisie -# monEquation=maClasseDelistesDB.dicoListAffiche[v] -# type_react=monEquation.type_react -# type_vieil=monEquation.type_vieil -# -# editor.changeIntoMCandSet('Equation', ('b_type_show','b_modification','b_modif','ChemicalFormulation'),( v,),v ) -# print ("je passe la") -# change=editor.changeDefautDefMC('Equation', ('b_type_show','b_modification','b_modif','Reaction_Type'),type_react ) -# change=editor.changeDefautDefMC('Equation', ('b_type_show','b_modification','b_modif','Aging_Type'), type_vieil ) -# -# for index,valeurConstituant in enumerate(monEquation.constituants): -# valeurEquation=monEquation.equation[index] -# -# #PNPNPN --> decider des noms SVP ave un nom python -# monMcl1=('Constituant','TXM',{'statut':'o','defaut':valeurConstituant}) -# monMcl2=('Differential_Equation','TXM',{'statut':'o','defaut':valeurEquation}) -# listeMC=(monMcl1,monMcl2) -# editor.ajoutDefinitionMCFact ('Equation',('b_type_show','b_modification','b_modif',),valeurConstituant,listeMC,statut='f') -# #editor.ajoutMCFact (e,('b_type_show','b_modification','b_modif',),valeurConstituant) -# print (index,valeurConstituant,valeurEquation) -# -# #OptionnelConstituant = FACT ( statut = 'f',max = '**', -# # Constituant = SIMP (statut = 'o', typ = 'TXM'), -# # Differential_Equation = SIMP(statut= 'o',typ= 'TXM'), -# -# for index,valeurConstituant in enumerate(monEquation.const_cine_nom): -# valeurArrhe=monEquation.arrhenius[index] -# if valeurArrhe : valeurConstanteType='Arrhenius type' -# else : valeurConstanteType='non Arrhenius type' -# monMcl1=('ConstanteName','TXM',{'statut':'o','defaut':valeurConstituant}) -# monMcl2=('ConstanteType','TXM',{'statut':'o','defaut':valeurConstanteType,'into': ('Arrhenius type','non Arrhenius type') }) -# listeMC=(monMcl1,monMcl2) -# editor.ajoutDefinitionMCFact ('Equation',('b_type_show','b_modification','b_modif',),valeurConstituant,listeMC,statut='f') -# #editor.ajoutMC(e,MCFils,mesValeurs,('b_type_creation','b_diffusion',)) -# -# -# change=editor.changeDefautDefMC('Equation', ('b_type_show','b_modification','b_modif','Commentaire'),monEquation.comment ) -# print (monEquation.comment ) -# if editor.fenetreCentraleAffichee : editor.fenetreCentraleAffichee.node.affichePanneau() -# -# monMC.dsMaFunct = False -# editor.dsMaFunct = False -# -# -# -# -#def recupereDicoModele(monMC): -# if monMC.valeur == None: return -# if hasattr(monMC,'dsMaFunct') and monMC.dsMaFunct== True : return -# monMC.dsMaFunct = True -# print ('je passe dans recupereDicoModele') -# -# editor=monMC.jdc.editor -# valeurDB=editor.getValeur('Modele','Modele_DB',()) -# maClasseDelistesDB.metAJour(valeurDB) -# -# print ('fin recupereDicoModele') -# monMC.dsMaFunct = False -# -# -#def creeListeEquation(monMC): -# if monMC.valeur == None: return -# if hasattr(monMC,'dsMaFunct') and monMC.dsMaFunct== True : return -# editor=monMC.jdc.editor -# if hasattr(editor,'dsMaFunct') and editor.dsMaFunct== True : return -# editor.dsMaFunct = True -# print ('debut de creeListeEquation') -# -# listeEquationsAAfficher=[] -# listeConstantesAAfficher=[] -# listeInitialEquations=[] -# -# listEquation=maClasseDelistesDB.getListEquation() -# for index,equation in enumerate( listEquation): -# if index in monModele.equa: -# listeEquationsAAfficher.append(equation.representation) -# listeConstantesAAfficher.append(equation.const_cine_nom) -# t=equation.representation+'\t\t\t\t '+str(equation.const_cine_nom) -# listeInitialEquations.append(t) -# -# change=editor.changeIntoDefMC('Modele', ('b_type_creation','Chemical_Equation','Initial_Equation_List'),listeInitialEquations ) -# maClasseDelistesDB.listeEquationsAAfficher = listeEquationsAAfficher -# maClasseDelistesDB.listeConstantesAAfficher = listeConstantesAAfficher -# monMC.dsMaFunct = False -# print ('fin de creeListeEquation') -# -# editor.dsMaFunct = False -# -# # listeEquation_stabilization=SIMP(statut='o', homo='SansOrdreNiDoublon', max='**', min=0 ), -# -#def recupereModeleEquation(monMC): -# if hasattr(monMC,'dsMaFunct') and monMC.dsMaFunct== True : return -# if monMC.valeur==False : return -# editor=monMC.jdc.editor -# if hasattr(editor,'dsMaFunct') and editor.dsMaFunct== True : return -# editor.dsMaFunct = True -# print ('je suis dans recupereModeleEquation') -# -# editor.dsMaFunct = True -# dicoListeEquationAAfficher={} -# -# from VP_Cata_V2 import monDico -# listEquation=maClasseDelistesDB.getListEquation() -# for valeurReactionType in monDico['Equation_Liste']: -# dicoListeEquationAAfficher[valeurReactionType] = [] -# for index,equation in enumerate( listEquation): -# if equation.type_react==valeurReactionType : -# dicoListeEquationAAfficher[valeurReactionType].append(equation.representation) -# maClasseDelistesDB.dictParametresInitiaux[equation.representation]=equation -# #print (dicoListeEquationAAfficher) -# #print('maClasseDelistesDB.dictParametresInitiaux', maClasseDelistesDB.dictParametresInitiaux) -# prepareDiffusionSansMC(editor,monMC.nom,monMC) -# -# change=editor.changeIntoDefMC('Modele', ('b_type_creation','Chemical_Equation','b_ajout_equation','listeEquation_initiation'),dicoListeEquationAAfficher['initiation']) -# change=editor.changeIntoDefMC('Modele', ('b_type_creation','Chemical_Equation','b_ajout_equation','listeEquation_propagation'),dicoListeEquationAAfficher['propagation'] ) -# change=editor.changeIntoDefMC('Modele', ('b_type_creation','Chemical_Equation','b_ajout_equation','listeEquation_termination'),dicoListeEquationAAfficher['termination'] ) -# change=editor.changeIntoDefMC('Modele', ('b_type_creation','Chemical_Equation','b_ajout_equation','listeEquation_stabilization'),dicoListeEquationAAfficher['stabilization'] ) -# if editor.fenetreCentraleAffichee : editor.fenetreCentraleAffichee.node.affichePanneau() -# -# print ('fin recupereModeleEquation') -# monMC.dsMaFunct = False -# editor.dsMaFunct = False -# -#def ajoutDUneEquation(monMC): -# if hasattr(monMC,'dsMaFunct') and monMC.dsMaFunct== True : return -# if monMC.valeur==False : return -# editor=monMC.jdc.editor -# prepareDiffusionSansMC(editor,monMC) -# if hasattr(editor,'dsMaFunct') and editor.dsMaFunct== True : return -# editor.dsMaFunct = False -# monMC.dsMaFunct = False -# -#def prepareDiffusion(monMC): -# if monMC.valeur==False : return -# if hasattr(monMC,'dsMaFunct') and monMC.dsMaFunct== True : return -# monMC.dsMaFunct=True -# editor=monMC.jdc.editor -# if hasattr(editor,'dsMaFunct') and editor.dsMaFunct== True : return -# editor.dsMaFunct = True -# print ('je suis dans prepareDiffusion', monMC.nom) -# prepareDiffusionSansMC(editor,monMC) -# print ('fin de prepareDiffusion', monMC.nom) -# monMC.dsMaFunct=False -# editor.dsMaFunct = False -# -#def prepareDiffusionSansMC(editor,monMC): -# #lInitialBadCoche=editor.getValeur('Modele', 'Initial_Equation_List',('b_type_creation','Chemical_Equation'),) -# monMCNom = monMC.nom -# monEtape = monMC.getEtape() -# lInitialBadCoche=editor.getValeurDsEtape(monEtape, 'ForDiffusion',('b_type_mechanistic','Model_Mechanistic','b_diffusion'),) -# if lInitialBadCoche == None : lInitialBadCoche=[] -# lInitialCoche=[] -# for equ in lInitialBadCoche: lInitialCoche.append(equ.split('\t')[0]) -# print (lInitialCoche) -# print ('kkkkkkkkkkkkhhhhhhhhhhhhhhhhhhhhhhhhhhh') -# -# #PropagationCoche =editor.getValeur('Modele', 'listeEquation_propagation',('b_type_creation','Chemical_Equation',)) -# #TerminationCoche=editor.getValeur('Modele','listeEquation_termination', ('b_type_creation','Chemical_Equation',)) -# #lStabilizationCoche=editor.getValeur('Modele','listeEquation_stabilization', ('b_type_creation','Chemical_Equation',)) -# -# #print (lInitialCoche,lInititiationCoche,lPropagationCoche,lTerminationCoche,lStabilizationCoche) -# #for liste in (lInitialCoche,lInititiationCoche,lPropagationCoche,lTerminationCoche,lStabilizationCoche): -# for liste in (lInitialCoche,): -# # Il est possible qu'une liste soit vide lors de l initialisation -# if liste == None : continue -# for equation in liste : -# print (equation) -# for const in maClasseDelistesDB.dictParametresInitiaux[equation].constituants : -# if const not in maClasseDelistesDB.listeParametresInitiaux : maClasseDelistesDB.listeParametresInitiaux.append(const) -# #for coef in maClasseDelistesDB.dictParametresInitiaux[equation].const_cine_nom : -# # if coef not in maClasseDelistesDB.listeCoefInitiaux : maClasseDelistesDB.listeCoefInitiaux.append(coef) -# for num,coef in enumerate(maClasseDelistesDB.dictParametresInitiaux[equation].const_cine_nom ): -# maClasseDelistesDB.dicoCoefAffichageArr[coef]=maClasseDelistesDB.dictParametresInitiaux[equation].arrhenius[num] -# if coef not in maClasseDelistesDB.listeCoefInitiaux : maClasseDelistesDB.listeCoefInitiaux.append(coef) -# -# #print('maClasseDelistesDB.dictParametresInitiaux', maClasseDelistesDB.dictParametresInitiaux) -# print (maClasseDelistesDB.listeParametresInitiaux) -# if monMCNom == 'Diffusion' : -# change=editor.changeIntoDefMC('Modele', ('b_type_creation','Transport','b_diffusion','listeProduitPourLaDiffusion'), maClasseDelistesDB.listeParametresInitiaux ) -# if monMCNom == 'Evaporation' : -# change=editor.changeIntoDefMC('Modele', ('b_type_creation','Transport','b_evaporation','listeProduitPourLEvaporation'), maClasseDelistesDB.listeParametresInitiaux ) -# -# if monMCNom in ('Evaporation','Diffusion') : -# for c in list(monModele.coef[0].keys()) : -# if c[0]=='D': -# clef=c[1:] -# if clef in maClasseDelistesDB.listeParametresInitiaux : -# maClasseDelistesDB.listeCoefD.append(clef) -# maClasseDelistesDB.listeCoefInitiaux.append('D'+clef) -# maClasseDelistesDB.listeCoefInitiaux.append('S'+clef) -# else : -# maClasseDelistesDB.listeCoefASupprimer.append('S'+clef) -# maClasseDelistesDB.listeCoefASupprimer.append('D'+clef) -# if c[0]=='B': -# clef=c[1:] -# if clef in maClasseDelistesDB.listeParametresInitiaux : -# maClasseDelistesDB.listeCoefB.append(clef) -# maClasseDelistesDB.listeCoefInitiaux.append(c) -# else : -# maClasseDelistesDB.listeCoefASupprimer.append(c) -# print ('aClasseDelistesDB.listeCoefB',maClasseDelistesDB.listeCoefB) -# print ('aClasseDelistesDB.listeCoefB',maClasseDelistesDB.listeCoefD) -# print ('maClasseDelistesDB.listeCoefInitiaux',maClasseDelistesDB.listeCoefInitiaux) -# print ('maClasseDelistesDB.listeCoefASupprimer',maClasseDelistesDB.listeCoefASupprimer) -# print ('maClasseDelistesDB.listeParametresInitiaux',maClasseDelistesDB.listeParametresInitiaux) -# # au lieu des print il faut mettre a jour le MC Fact Coefficients avec ,maClasseDelistesDB.listeCoefInitiaux et le MC FACT -# # Paraetres_initiaux avec maClasseDelistesDB.listeParametresInitiaux -# # TO DO TO DO PNPN -# # si on arrive avex -# # if monMC.nom = Diffusion -# if monMCNom == 'Diffusion' : -# editor.setValeur('Modele','listeProduitPourLaDiffusion' ,maClasseDelistesDB.listeCoefD, ('b_type_creation','Transport','b_diffusion',)) -# #editor.changeValeur(....,'listeProduitPourLaDiffusion',maClasseDelistesDB.listeCoefD') -# # if monMCNom == 'Evaporation' : -# #editor.changeValeur(....,'listeProduitPourLaDiffusion',maClasseDelistesDB.listeCoefB') -# -# -# -#def ajouteEvaporation(monMC): -# print ('je suis dans ajouteDiffusion') -# if monMC.valeur == None : return -# if hasattr(monMC,'dsMaFunct') and monMC.dsMaFunct== True : return -# editor=monMC.jdc.editor -# if hasattr(editor,'dsMaFunct') and editor.dsMaFunct== True : return -# -# monMC.dsMaFunct=True -# for v in monMC.valeur : -# clef='B'+v -# if clef not in maClasseDelistesDB.listeCoefInitiaux : -# maClasseDelistesDB.listeCoefInitiaux.append(clef) -# -# print ('sortie de ajouteDiffusion' , maClasseDelistesDB.listeCoefInitiaux) -# monMC.dsMaFunct=False -# editor.dsMaFunct = False -# -#def ajouteDiffusion(monMC): -# print ('je suis dans ajouteDiffusion') -# if monMC.valeur == None : return -# if hasattr(monMC,'dsMaFunct') and monMC.dsMaFunct== True : return -# editor=monMC.jdc.editor -# if hasattr(editor,'dsMaFunct') and editor.dsMaFunct== True : return -# -# monMC.dsMaFunct=True -# for v in monMC.valeur : -# clef='D'+v -# if clef not in maClasseDelistesDB.listeCoefInitiaux : -# maClasseDelistesDB.listeCoefInitiaux.append(clef) -# maClasseDelistesDB.listeCoefInitiaux.append('S'+v) -# maClasseDelistesDB.dicoCoefAffichageArr[clef] = True -# maClasseDelistesDB.dicoCoefAffichageArr['S'+v] = False -# #maClasseDelistesDB.dicoCoefAffichageArr['B'+v] = True -# -# # on affiche dans l interface un mot clef avec clef comme nom et -# # 2 reels si ce commence par D soit iniitialise a 0 si pas de valeur -# # soit avec comme deifaut nomCoef in monModele.coef[0].keys() -# print ('sortie de ajouteDiffusion' , maClasseDelistesDB.listeCoefInitiaux) -# -# for nomCoef in maClasseDelistesDB.listeCoefInitiaux: -# #A jout Ds Coef d'un MC -# nomMC='Coef_'+nomCoef -# if maClasseDelistesDB.dicoCoefAffichageArr[nomCoef] == True: -# print ('2 r'), -# if nomCoef in monModele.coef[0].keys() : -# print (monModele.coef[0][nomCoef]) -# else : -# print ((0,0)) -# else : -# print ('1 r') -# if nomCoef in monModele.coef[0].keys() : -# print (monModele.coef[0][nomCoef]) -# else : -# print (0) -# -# print ('______________________') -# #for v in monMC.valeur : -# # print (v) -# # mesValeurs=editor.dicoCoefS[v] -# # MCFils='S'+v -# # for e in monMC.jdc.etapes: -# # if e.nom == 'Modele' :break -# # editor.ajoutDefinitionMC(e,('b_type_creation','b_diffusion'),MCFils,typ='TXM',statut='o' ) -# # editor.ajoutMC(e,MCFils,mesValeurs,('b_type_creation','b_diffusion',)) -# # print ('______') -# #if editor.fenetreCentraleAffichee : editor.fenetreCentraleAffichee.node.affichePanneau() -# monMC.dsMaFunct=False -# editor.dsMaFunct = False -# -# -## -------------------------------------------------------------------------------------------- -## pour les modeles en modification ou en utilisation -## -------------------------------------------------------------------------------------------- -#def creeListeMateriauxSelonModele(monMC): -# if monMC.valeur == None : return -# if hasattr(monMC,'dsMaFunct') and monMC.dsMaFunct== True : return -# editor=monMC.jdc.editor -# if hasattr(editor,'dsMaFunct') and editor.dsMaFunct== True : return -# -# valeurDB=editor.getValeur('Modele','Modele_DB',()) -# maClasseDelistesDB.metAJour(valeurDB) -# listModele=maClasseDelistesDB.getListModele() -# listModeleFiltre=[] -# listMateriauxFiltre=[] -# for modele in listModele : -# if modele.technical_use == monMC.valeur : -# maClasseDelistesDB.dicoModeleFiltre[modele.nom]=modele -# listModeleFiltre.append(modele.nom) -# if type(modele.materiaux) not in (list, tuple): modeleATraiter= modele.materiaux -# else : modeleATraiter= modele.materiaux[0] -# if modeleATraiter not in listMateriauxFiltre : -# listMateriauxFiltre.append(modeleATraiter) -# maClasseDelistesDB.dicoMateriauxFiltre[modeleATraiter]=[modele.nom,] -# else : -# maClasseDelistesDB.dicoMateriauxFiltre[modeleATraiter].append(modele.nom) -# -# -# -# change=editor.changeIntoDefMC('Modele', ('b_type_modification','b_technicalUse','material'),listMateriauxFiltre ) -# -# monMC.dsMaFunct=False -# editor.dsMaFunct = False -# -#def creeListeModelesPossibles(monMC): -# if monMC.valeur == None : return -# if hasattr(monMC,'dsMaFunct') and monMC.dsMaFunct== True : return -# editor=monMC.jdc.editor -# if hasattr(editor,'dsMaFunct') and editor.dsMaFunct== True : return -# change=editor.changeIntoDefMC('Modele', ('b_type_modification','b_technicalUse','modele'),maClasseDelistesDB.dicoMateriauxFiltre[monMC.valeur] ) -# -# monMC.dsMaFunct=False -# editor.dsMaFunct = False -# -#def choisitModele(monMC): -# # Equation b_modification modification -# if hasattr(monMC,'dsMaFunct') and monMC.dsMaFunct== True : return -# valeur=monMC.valeur -# if valeur == None : return -# modele=maClasseDelistesDB.dicoModeleFiltre[monMC.valeur] -# maClasseDelistesDB.monModele=modele -# monMC.dsMaFunct = False -# -#def choisitActionModele(monMC): -# if monMC.valeur == 'display' : afficheModele(monMC) -# if monMC.valeur == 'modify' : changeValeurDefautModele(monMC) -# -#def afficheModele(monMC): -# if hasattr(monMC,'dsMaFunct') and monMC.dsMaFunct== True : return -# valeur=monMC.valeur -# aAfficher=str(maClasseDelistesDB.monModele) -# editor=monMC.jdc.editor -# editor._viewText(aAfficher, "Id",largeur=700,hauteur=500) -# -# monMC.dsMaFunct = False -# -#def changeValeurDefautModele(monMC): -# if hasattr(monMC,'dsMaFunct') and monMC.dsMaFunct== True : return -# monMC.dsMaFunct = True -# editor=monMC.jdc.editor -# change=editor.changeIntoMCandSet('Modele', ('b_type_modification','b_technicalUse','b_modele','b_type_modify','ID','modeleName'),(maClasseDelistesDB.monModele.nom,),maClasseDelistesDB.monModele.nom, ) -# editor.setValeur('Modele','technicalUse',maClasseDelistesDB.monModele.technical_use, ('b_type_modification','b_technicalUse','b_modele','b_type_modify','ID')) -# -# editor.setValeur('Modele','material',maClasseDelistesDB.monModele.materiaux, ('b_type_modification','b_technicalUse','b_modele','b_type_modify','ID')) -# editor.setValeur('Modele','agingType',maClasseDelistesDB.monModele.type_vieil, ('b_type_modification','b_technicalUse','b_modele','b_type_modify','ID')) -# -# if maClasseDelistesDB.monModele.stabilise == 'True' : monBool = True -# else : monBool = False -# editor.setValeur('Modele','stabilizer',monBool, ('b_type_modification','b_technicalUse','b_modele','b_type_modify','ID')) -# editor.setValeur('Modele','material_thickness',maClasseDelistesDB.monModele.thickness, ('b_type_modification','b_technicalUse','b_modele','b_type_modify','ID')) -# -# if maClasseDelistesDB.monModele.dvt_EDF == 'True' : monBool = True -# else : monBool = False -# editor.setValeur('Modele','model_developed_by_for_EDF',monBool, ('b_type_modification','b_technicalUse','b_modele','b_type_modify','ID')) -# editor.setValeur('Modele','documentation',maClasseDelistesDB.monModele.reference, ('b_type_modification','b_technicalUse','b_modele','b_type_modify','ID')) -# if editor.fenetreCentraleAffichee : editor.fenetreCentraleAffichee.node.affichePanneau() -# monMC.dsMaFunct = False -# -# -# -#def creeCoefAModifier(monMC): -# if hasattr(monMC,'dsMaFunct') and monMC.dsMaFunct== True : return -# if monMC.valeur == None : return -# monMC.dsMaFunct = True -# editor=monMC.jdc.editor -# dicoArr={} -# dicoNonArr={} -# for coef in maClasseDelistesDB.monModele.coef[0] : -# if len (maClasseDelistesDB.monModele.coef[0][coef]) == 1 : -# dicoNonArr[coef]=maClasseDelistesDB.monModele.coef[0][coef][0] -# else : -# dicoArr[coef]=maClasseDelistesDB.monModele.coef[0][coef] -# if coef[0] == 'D' : maClasseDelistesDB.listeDiffusion.append(coef[1:]) -# print (dicoNonArr) -# print (dicoArr) -# if 'ri' in dicoNonArr : -# print ('ajoutDefinitionMC debitOfDose') -# editor.ajoutDefinitionMC('Modele', ('b_type_modification','b_technicalUse','b_modele','b_type_use2','Aging_Factor'), 'debitOfDose',typ='R',statut='o' ) -# -# for coef in dicoNonArr : -# print (coef) -# # attention, notation scientifique -# editor.ajoutDefinitionMC('Modele',('b_type_modification','b_technicalUse','b_modele','b_type_use',),coef, 'R', statut='o',defaut=dicoNonArr[coef]) -# # a faire marcher -# # pour les Arr il faut un tuple(2) -# -# # il fait creer un fact Boundary_Conditions_Param pour chacque espece de listeDiffusion -# -# if editor.fenetreCentraleAffichee : editor.fenetreCentraleAffichee.node.affichePanneau() -# -# monMC.dsMaFunct = False -# -# -#def remplirAgingFactor(monMC): -# if hasattr(monMC,'dsMaFunct') and monMC.dsMaFunct== True : return -# if monMC.valeur == None : return -# monMC.dsMaFunct = True -# editor=monMC.jdc.editor -# if monMC.valeur in dicoAgingFactor: -# print (monMC.valeur, 'trouve') -# for MC in dicoAgingFactor[monMC.valeur]: -# print (MC) -# print (dicoAgingFactor[monMC.valeur][MC]), -# editor.setValeur('Modele',MC,dicoAgingFactor[monMC.valeur][MC],('b_type_modification','b_technicalUse','b_modele','b_type_use2','Aging_Factor')) -# monMC.dsMaFunct = False -# -# -#def creeInitialParameter(monMC): -# print ('je passe dans creeInitialParameter') -# if hasattr(monMC,'dsMaFunct') and monMC.dsMaFunct== True : return -# if monMC.valeur == None : return -# monMC.dsMaFunct = True -# editor=monMC.jdc.editor -# for coef in maClasseDelistesDB.monModele.param_ini: -# editor.ajoutDefinitionMC('Modele',('b_type_modification','b_technicalUse','b_modele','b_type_use2','Initial_Parameter'),coef, 'R', statut='o',defaut=maClasseDelistesDB.monModele.param_ini[coef][0]) -# monMC.dsMaFunct = False -# # creer nbdenode = monMC.valeur Initial_Parameter diff --git a/VirtualPolymer/listesDB.py b/VirtualPolymer/listesDB.py deleted file mode 100644 index e5f92809..00000000 --- a/VirtualPolymer/listesDB.py +++ /dev/null @@ -1,80 +0,0 @@ -# coding: utf-8 -import types -import sys,os -sys.path.append('/home/A96028/opt/MAP/map-2016.1/lib/python2.7/site-packages/mapy/components/c_pre_polymer_data_management') -sys.path.append('/home/A96028/opt/MAP/map-2016.1/lib/python2.7/site-packages/mapy/virtual_polymer_common') -sys.path.append('/home/A96028/opt/MAP/map-2016.1/lib/python2.7/site-packages/') -import pckdb, class_data, instruction, equation_part, utils - -# -------------------------------------- -class sModele : -# -------------------------------------- - - _instance = None - - def __new__(cls, *args, **kwargs): - if not cls._instance: - cls._instance = super(sModele, cls).__new__( - cls, *args, **kwargs) - - return cls._instance - - def __init__ (self): - self.monModele=class_data.Modele() - self.monPost=class_data.Post_traitement() - - -# -------------------------------------- -class classeListesDB : -# -------------------------------------- - - _instance = None - - def __new__(cls, *args, **kwargs): - if not cls._instance: - cls._instance = super(listesDB, cls).__new__( - cls, *args, **kwargs) - - return cls._instance - - def __init__ (self): - self.listEquation = None - self.listModele = None - self.listPosttraitement = None - self.dicoListAffiche = {} - self.valeurEquationChoisie = None - self.listeConstantesAAfficher = [] - self.listeEquationsAAfficher = [] - self.listeCoefD = [] - self.listeCoefB = [] - self.dictParametresInitiaux = {} - self.listeParametresInitiaux= [] - self.listeCoefInitiaux= [] - self.listeCoefASupprimer= [] - self.dicoCoefAffichageArr = {} - self.dicoModeleFiltre = {} - self.dicoMateriauxFiltre = {} - self.monModele = None - self.listeDiffusion = [] - - def metAJour(self,valeur): - print ('metAJour') - if valeur == None : return - correspond=pckdb.DBRENAME - self.listEquation, self.listModele,self.listPosttraitement=pckdb.read_pckdb(correspond[valeur]) - self.dicoListeEquation = {} - for equation in self.listEquation : - self.dicoListeEquation[equation.representation]=equation - - def getListEquation(self): - return self.listEquation - - def getListModele(self): - return self.listModele - - def getListPosttraitement(self): - return self.listPosttraitement - - def getdicoListAffiche(self): - return self.dicoListAffiche - diff --git a/VirtualPolymer/prefs.py b/VirtualPolymer/prefs.py deleted file mode 100644 index 6554d133..00000000 --- a/VirtualPolymer/prefs.py +++ /dev/null @@ -1,22 +0,0 @@ -# Copyright (C) 2007-2012 EDF R&D -# -# 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 -# -code="VP" -import sys, os -if os.path.dirname(os.path.abspath(__file__)) not in sys.path : - sys.path.insert(0,os.path.dirname(os.path.abspath(__file__))) diff --git a/VirtualPolymer/prefs_VP.py b/VirtualPolymer/prefs_VP.py deleted file mode 100644 index e5c54d9d..00000000 --- a/VirtualPolymer/prefs_VP.py +++ /dev/null @@ -1,58 +0,0 @@ -# -*- coding: utf-8 -*- -# maConfiguration MANAGEMENT OF EDF VERSION -# ====================================================================== -# COPYRIGHT (C) 1991 - 2002 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# -# -# ====================================================================== - -import os,sys -# repIni sert a localiser le fichier editeur.ini -# Obligatoire -repIni=os.path.dirname(os.path.abspath(__file__)) -INSTALLDIR=os.path.join(repIni,'..') -sys.path[:0]=[INSTALLDIR] - - -# lang indique la langue utilisee pour les chaines d'aide : fr ou ang -lang='fr' - -# Codage des strings qui accepte les accents (en remplacement de 'ascii') -encoding='iso-8859-1' - -# -catalogues=( - #('VPCalcul','VCalcul',os.path.join(repIni,'VP_Cata_Calculation.py'),'MAPVp','python'), - ('VPCalcul','VCalcul',os.path.join(repIni,'VP_Cata.py'),'MAPVp','python'), -# ('VPDabase','VDatabase',os.path.join(repIni,'VP_Cata_Database.py'),'python','python'), -) -nombreDeBoutonParLigne=2 -closeFrameRechercheCommande = True -closeEntete = True -closeArbre = True -closeOptionnel=True -afficheOptionnelVide=False -afficheListesPliees=True -afficheCommandesPliees=True -afficheFirstPlies = True -enleverActionStructures=True -enleverParametres=True -enleverSupprimer=True -enleverPoubellePourCommande=True -ajoutExecution=True - - -#### il faut afficher les listes pliees diff --git a/VirtualPolymer/properties.py b/VirtualPolymer/properties.py deleted file mode 100644 index 1d328a46..00000000 --- a/VirtualPolymer/properties.py +++ /dev/null @@ -1,24 +0,0 @@ -#@ MODIF properties Accas DATE 11/06/2008 AUTEUR aster M.ADMINISTRATEUR -# RESPONSABLE D6BHHHH J-P.LEFEBVRE -# ====================================================================== -# COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# IDENTIFICATION DU GESTIONNAIRE DE COMMANDE ACCAS A PARTIR -# DE LA VERSION DU CODE_ASTER ASSOCIE -#---------------------------------------------------------------------- -version = "1.2" -date = "25/05/2010" -exploit = False diff --git a/VirtualPolymer/qtEficasVP.py b/VirtualPolymer/qtEficasVP.py deleted file mode 100755 index cdf60a13..00000000 --- a/VirtualPolymer/qtEficasVP.py +++ /dev/null @@ -1,39 +0,0 @@ -#!/usr/bin/env python -# -*- coding: utf-8 -*- -# Copyright (C) 2007-2013 EDF R&D -# -# 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 -# -""" - Ce module sert a lancer EFICAS configure pour MAP -""" -# Modules Python -# Modules Eficas -import prefs -name='prefs_'+prefs.code -__import__(name) - -import sys -reload(sys) -sys.setdefaultencoding('latin1') - -import os -sys.path.append(os.path.join(os.path.abspath(os.path.dirname(__file__)),'..')) - -import prefs -from InterfaceQT4 import eficas_go -eficas_go.lanceEficas(code=prefs.code) diff --git a/boundary_conditions/CMakeLists.txt b/boundary_conditions/CMakeLists.txt deleted file mode 100644 index 9d5d3202..00000000 --- a/boundary_conditions/CMakeLists.txt +++ /dev/null @@ -1,32 +0,0 @@ -# Copyright (C) 2012-2013 EDF -# -# This file is part of SALOME HYDRO module. -# -# SALOME HYDRO module is free software: you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation, either version 3 of the License, or -# (at your option) any later version. -# -# SALOME HYDRO module 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 General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with SALOME HYDRO module. If not, see . - -# --- Python files --- - -SET(PYFILES - __init__.py - configuration_boundary_conditions.py - prefs_boundary_conditions.py - prefs.py - boundary_conditions_cata.py - appli.py - generator_boundary_conditions.py -) - -# --- rules --- - -SALOME_INSTALL_SCRIPTS("${PYFILES}" ${SALOME_INSTALL_PYTHON}/salome/hydro/boundary_conditions/eficas) diff --git a/boundary_conditions/__init__.py b/boundary_conditions/__init__.py deleted file mode 100644 index e69de29b..00000000 diff --git a/boundary_conditions/appli.py b/boundary_conditions/appli.py deleted file mode 100644 index b3783292..00000000 --- a/boundary_conditions/appli.py +++ /dev/null @@ -1,45 +0,0 @@ -# Copyright (C) 2012-2013 EDF -# -# This file is part of SALOME HYDRO module. -# -# SALOME HYDRO module is free software: you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation, either version 3 of the License, or -# (at your option) any later version. -# -# SALOME HYDRO module 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 General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with SALOME HYDRO module. If not, see . - -import os -import sys - -import SalomePyQt -sgPyQt = SalomePyQt.SalomePyQt() - -import eficasSalome - -class EficasForBoundaryConditionsAppli(eficasSalome.MyEficas): - """ - This class launches Eficas with "boundary_conditions" catalog. - """ - def __init__(self, fichier = None, version = None): - self.codedir = os.path.dirname(__file__) - sys.path[:0] = [self.codedir] - eficasSalome.MyEficas.__init__(self, sgPyQt.getDesktop(), "boundary_conditions", - fichier, version = version) - - def addJdcInSalome(self, jdcPath): - """ - Those files are not added in Salome study tree for now. - """ - pass - - def closeEvent(self, event): - while self.codedir in sys.path: - sys.path.remove(self.codedir) - eficasSalome.MyEficas.closeEvent(self, event) diff --git a/boundary_conditions/boundary_conditions_cata.py b/boundary_conditions/boundary_conditions_cata.py deleted file mode 100644 index f41671c3..00000000 --- a/boundary_conditions/boundary_conditions_cata.py +++ /dev/null @@ -1,59 +0,0 @@ -# -*- coding: utf-8 -*- -# -# Copyright (C) 2012-2013 EDF -# -# This file is part of SALOME HYDRO module. -# -# SALOME HYDRO module is free software: you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation, either version 3 of the License, or -# (at your option) any later version. -# -# SALOME HYDRO module 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 General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with SALOME HYDRO module. If not, see . - -from Accas import * - -class grma(GEOM): - """ - Class used to define the group on which the boundary condition is defined. - Method __convert__ is redefined to skip the test on the string length. - """ - def __convert__(cls, valeur): - if isinstance(valeur, (str, unicode)): - return valeur.strip() - raise ValueError('A string is expected') - - __convert__ = classmethod(__convert__) - - -JdC = JDC_CATA(regles = (AU_MOINS_UN('BOUNDARY_CONDITION',)), - ) - -BOUNDARY_CONDITION = PROC( - nom = "BOUNDARY_CONDITION", op = None, - fr = u"Définition d'une condition limite pour Telemac2D", - ang = u"Definition of a boundary condition for Telemac2D", - - GROUP = SIMP(statut = "o", typ = grma, - fr = u"Groupe sur lequel la condition limite est définie", - ang = u"Group on which the boundary condition is defined", - ), - LIHBOR = SIMP(statut = "o", typ = "I", - fr = u"Type de condition limite pour la hauteur d'eau", - ang = u"Boundary condition type for the water height", - ), - LIUBOR = SIMP(statut = "o", typ = "I", - fr = u"Type de condition limite pour la composante U de la vitesse", - ang = u"Boundary condition type for the U component of the water velocity", - ), - LIVBOR = SIMP(statut = "o", typ = "I", - fr = u"Type de condition limite pour la composante V de la vitesse", - ang = u"Boundary condition type for the V component of the water velocity", - ), -) diff --git a/boundary_conditions/configuration_boundary_conditions.py b/boundary_conditions/configuration_boundary_conditions.py deleted file mode 100644 index f3bb0e6e..00000000 --- a/boundary_conditions/configuration_boundary_conditions.py +++ /dev/null @@ -1,48 +0,0 @@ -# -*- coding: utf-8 -*- -# -# Copyright (C) 2012-2013 EDF -# -# This file is part of SALOME HYDRO module. -# -# SALOME HYDRO module is free software: you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation, either version 3 of the License, or -# (at your option) any later version. -# -# SALOME HYDRO module 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 General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with SALOME HYDRO module. If not, see . - -import os - -from Editeur.catadesc import CatalogDescription -from InterfaceQT4.configuration import configBase - -class CONFIG(configBase): - - def __init__(self, appli, repIni): - """ - This class stores the configuration parameters for Eficas - """ - configBase.__init__(self, appli, repIni) - - # Configuration parameters - self.savedir = os.getenv("HOME") - self.catalogues = (CatalogDescription("boundary_conditions", - os.path.join(repIni, "boundary_conditions_cata.py"), - file_format = "boundary_conditions"),) - self.lang = 'fr' - self.generator_module = "generator_boundary_conditions" - - def saveParams(self): - pass - -def make_config(appli, rep): - return CONFIG(appli, rep) - -def make_config_style(appli, rep): - return None diff --git a/boundary_conditions/generator_boundary_conditions.py b/boundary_conditions/generator_boundary_conditions.py deleted file mode 100644 index ea7235dd..00000000 --- a/boundary_conditions/generator_boundary_conditions.py +++ /dev/null @@ -1,57 +0,0 @@ -# Copyright (C) 2012-2013 EDF -# -# This file is part of SALOME HYDRO module. -# -# SALOME HYDRO module is free software: you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation, either version 3 of the License, or -# (at your option) any later version. -# -# SALOME HYDRO module 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 General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with SALOME HYDRO module. If not, see . - -import os -from generator.generator_python import PythonGenerator - -def entryPoint(): - return {'name': 'boundary_conditions', - 'factory': BoundaryConditionsGenerator} - -class BoundaryConditionsGenerator(PythonGenerator): - """ - This generator creates files containing associations between groups and - boundary conditions (.bcd files, for Boundary Conditions Definition). - Those files contain one line per group, each line containing four fields - separated by spaces: LIHBOR LIUBOR LIVBOR GROUP. - LIHBOR, LIUBOR and LIVBOR are integer values, GROUP is a string (the name of - the group). - - Example: - - - """ - - def gener(self, obj, format = 'brut', config = None): - self.group_list = [] - self.text = PythonGenerator.gener(self, obj, format) - return self.text - - def generPROC_ETAPE(self, obj): - group_dict = {} - for keyword in obj.mc_liste: - group_dict[keyword.nom] = keyword.valeur - self.group_list.append(group_dict) - return PythonGenerator.generPROC_ETAPE(self, obj) - - def writeDefault(self, basefilename): - output_filename = os.path.splitext(basefilename)[0] + ".bcd" - f = open(output_filename, 'w') - f.write("%d\n" % len(self.group_list)) - for group_dict in self.group_list: - f.write("%(LIHBOR)d %(LIUBOR)d %(LIVBOR)d %(GROUP)s\n" % group_dict) - f.close() diff --git a/boundary_conditions/prefs.py b/boundary_conditions/prefs.py deleted file mode 100644 index 8f7d046d..00000000 --- a/boundary_conditions/prefs.py +++ /dev/null @@ -1,18 +0,0 @@ -# Copyright (C) 2012-2013 EDF -# -# This file is part of SALOME HYDRO module. -# -# SALOME HYDRO module is free software: you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation, either version 3 of the License, or -# (at your option) any later version. -# -# SALOME HYDRO module 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 General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with SALOME HYDRO module. If not, see . - -code = "boundary_conditions" diff --git a/boundary_conditions/prefs_boundary_conditions.py b/boundary_conditions/prefs_boundary_conditions.py deleted file mode 100644 index bcf1ef2d..00000000 --- a/boundary_conditions/prefs_boundary_conditions.py +++ /dev/null @@ -1,21 +0,0 @@ -# Copyright (C) 2012-2013 EDF -# -# This file is part of SALOME HYDRO module. -# -# SALOME HYDRO module is free software: you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation, either version 3 of the License, or -# (at your option) any later version. -# -# SALOME HYDRO module 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 General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with SALOME HYDRO module. If not, see . - -import os - -repIni = os.path.dirname(__file__) -INSTALLDIR = os.getenv("EFICAS_ROOT") diff --git a/config/GNUmakefile.env b/config/GNUmakefile.env deleted file mode 100644 index 5a3f8eff..00000000 --- a/config/GNUmakefile.env +++ /dev/null @@ -1,67 +0,0 @@ -############# ENVIRONEMENT DE CONSTRUCTION VIMMP Traning ################ - -ifndef SHELL -SHELL=bash -endif - -ifndef confdir -$(error "La variable confdir doit être définie pour utiliser GNUmakefile.env" -endif -ifndef tooldir -$(error "La variable confdir doit être définie pour utiliser GNUmakefile.env" -endif - -# " pour emacs beautifying -define _SCRIPT_ENV -cat < $1 -$(QTDEF) -export PYTHONPATH=${PYTHONPATH}:\$${PYTHONPATH} -export LD_LIBRARY_PATH=${LD_LIBRARY_PATH}:\$${LD_LIBRARY_PATH} -export PATH=${PYXB_ROOT_DIR}/bin:${PATH}:\$${PATH} -\$$* -EOF -endef -export SCRIPT_ENV = $(call _SCRIPT_ENV,environ.sh) - -## Création d'un fichier avec l'environement minimal utilisé au moment de la construction pour lancer ./qtEficas -# Ce fichier peut être utilisé pour lancer un binaire ds le même environement -# sans charger l'ensemble des pre-requis SALOME -define _SCRIPT_EXEC -cat < $1 -$(QTDEF) -export PYTHONPATH=${PYTHONPATH} -export LD_LIBRARY_PATH=${LD_LIBRARY_PATH} -export PATH=${PYXB_ROOT_DIR}/bin:${PATH} -\$$* -EOF -endef -#export SCRIPT_EXEC = $(value _SCRIPT_EXEC) -#On veut l'évaluation des variables ds le shell pour avoir le contenu identique à la construction. -export SCRIPT_EXEC = $(call _SCRIPT_EXEC,exec.sh) - -define _SCRIPT_EFI -cat < $1 -DIR="\$$( cd "\$$( dirname "\$$0" )" && pwd )" - -\$${DIR}/exec.sh $(realpath $(tooldir))/qtEficasGui.py \$$* - -#./exec.sh $(realpath $(tooldir))/qtEficasGui.py \$$* -EOF -endef -export SCRIPT_EFI = $(call _SCRIPT_EFI,qtEficas.sh) - -exec.sh: $(confdir)/GNUmakefile.env $(confdir)/GNUmakefile.mdm - @eval "$$SCRIPT_EXEC" && chmod +x $@ - @echo "You may use source exec.sh to launch a command using the minimal prerequisites without modifying your environement, thanks." -# @echo "-----------------> $(QTDEF)" | cat -A - - -environ.sh: $(confdir)/GNUmakefile.env $(confdir)/GNUmakefile.mdm - @eval "$$SCRIPT_ENV" && chmod +x $@ - @echo "You may use source environ.sh to get the minimal prerequisites in your environement, thanks." - -qtEficas.sh: $(confdir)/GNUmakefile.env $(confdir)/GNUmakefile.mdm $(confdir)/../UiQT5/eficas_en.qm $(confdir)/../UiQT5/eficas_fr.qm - @eval "$$SCRIPT_EFI" && chmod +x $@ - @echo "You may use qtEficas.sh -c /abs/path/to/your/catalog to launch Eficas GUI from your current directory, thanks." - -$(confdir)/../UiQT5/eficas_en.qm $(confdir)/../UiQT5/eficas_fr.qm: - make -C $(confdir)/../UiQT5 diff --git a/config/GNUmakefile.mdm b/config/GNUmakefile.mdm deleted file mode 100644 index 0bca9134..00000000 --- a/config/GNUmakefile.mdm +++ /dev/null @@ -1,62 +0,0 @@ -############# ENVIRONEMENT DE CONSTRUCTION VIMMP Traning ################ - -ifndef SHELL -SHELL=bash -endif - -#ifeq ($(origin PRODUCTS_DIR), undefined) -# PRODUCTS_DIR=${HOME}/products -#endif -PRODUCTS_DIR ?=${HOME}/products -SALOME_ROOT_DIR ?=${HOME}/salome/Salome-V9_3_0-x86_64 -PREREQUISITES_ROOT_DIR ?=$(shell . ${SALOME_ROOT_DIR}/salome_prerequisites_root.sh; echo $${PREREQUISITES_ROOT_DIR}) -TOOLS_ROOT_DIR ?=$(shell . ${SALOME_ROOT_DIR}/salome_prerequisites_root.sh; echo $${TOOLS_ROOT_DIR}) -# PREREQUISITES_ROOT_DIR ?=${SALOME_ROOT_DIR}/prerequisites - -## PYTHON ET LE MODULE Six DE L'ENV SALOME: -# Le mécanisme suivant définit des export Gmake/env qui sont utilisés par les sous-shells de toutes les règles de construction du makefile. -# Le mécanisme joue sur le fait que export existe aussi bien en shell qu'en GMakefile -# On ne prend que les variables d'environement qui concernent python ds l'environement Salome.. -# En bash : saved_IFS=${IFS};IFS=',';for i in `grep 'PYTHONHOME' ${SALOME_ROOT_DIR}/salome_prerequisites.sh | tr -s '\n' ','`; do eval $i; done;IFS=${saved_IFS}; -# En GMake, la ligne suivante ne fonctionne pas car le résultat du shell est multi-lignes (malgré les ;) : $(eval $(shell grep 'PYTHONHOME' ${SALOME_ROOT_DIR}/salome_prerequisites.sh | tr -s '\n' ';')) -# En GMake, la ligne suivante ne fonctionne pas pour les variables de salome qui s'auto-référence : export PATH=${PYTHON_HOME}/bin:${PATH} -# $(foreach exp, $(shell grep 'PYTHONHOME' ${SALOME_ROOT_DIR}/salome_prerequisites.sh), $(eval $(exp)) ) -# Le script salome_prerequisites utilise parfois $PATH sans {} et utilise aussi des " -# Le script salome_prerequisites utilise parfois $LD_LIBRARY_PATH sans {} -# Il faut donc substituer les = en := (simple expansion GMake), supprimer les " et ajouter les {} si necessaire -# Rem : Les retours charriots sont des blancs pour un GMakefile. -# $(foreach exp, $(subst ",,$(subst =,:=,$(shell grep -e 'PYTHONHOME' -e 'Six' ${SALOME_ROOT_DIR}/salome_prerequisites.sh))), $(info $(exp)) ) -$(foreach exp, $(subst ",,$(subst =,:=,$(subst $$PATH,$${PATH}, $(subst $$LD_LIBRARY_PATH,$${LD_LIBRARY_PATH}, $(shell grep -e 'PYTHONHOME' -e 'Six' ${SALOME_ROOT_DIR}/salome_prerequisites.sh))))), $(eval $(exp)) ) - - -## QT ET PYQT DE L'ENV SALOME (la libpng neccessaire à QT vient du prerequis debianforsalome): -# En bash : saved_IFS=${IFS};IFS=',';for i in `grep 'QT' ${SALOME_ROOT_DIR}/salome_prerequisites.sh | tr -s '\n' ','`; do eval $i; done;IFS=${saved_IFS}; -#$(foreach exp, $(subst ",,$(subst =,:=, $(subst $$PATH,$${PATH}, $(shell grep -e 'QT' ${SALOME_ROOT_DIR}/salome_prerequisites.sh)))), $(info $(exp)) ) -$(foreach exp, $(subst ",,$(subst =,:=, $(subst $$PATH,$${PATH}, $(subst $$LD_LIBRARY_PATH,$${LD_LIBRARY_PATH}, $(shell grep -e 'GCC' -e 'MPFR' -e 'DEBIAN' -e 'SIP_ROOT' -e 'QT' ${SALOME_ROOT_DIR}/salome_prerequisites.sh))))), $(eval $(exp)) ) - -# Les modules MEDCOUPLING et MED sont considérés comme devant être disponibles de façon générale pour VIMMP -$(foreach exp, $(subst ",,$(subst =,:=,$(subst $$PATH,$${PATH}, $(subst $$LD_LIBRARY_PATH,$${LD_LIBRARY_PATH}, $(shell grep -e 'MEDCOUPLING' -e 'NUMPY' -e 'MED3' -e 'HDF5' ${SALOME_ROOT_DIR}/salome_prerequisites.sh))))), $(eval $(exp)) ) - -## BUG de construction de python dans la version Salome-V9_3_0-univ_withOT.run, python dépend de tk ! -## Un commentaire final gène pour le parsing -#$(foreach exp, $(subst ",,$(subst =,:=, $(subst $$PATH,$${PATH}, $(subst $$LD_LIBRARY_PATH,$${LD_LIBRARY_PATH}, $(shell sed 's,#.*,,g' ${SALOME_ROOT_DIR}/salome_prerequisites.sh | grep -e 'TKDIR' ))))), $(info $(exp)) ) -$(foreach exp, $(subst ",,$(subst =,:=, $(subst $$PATH,$${PATH}, $(subst $$LD_LIBRARY_PATH,$${LD_LIBRARY_PATH}, $(shell sed 's,#.*,,g' ${SALOME_ROOT_DIR}/salome_prerequisites.sh | grep -e 'TKDIR' ))))), $(eval $(exp)) ) - - -## " PYXB -PYXB_ROOT_DIR ?=${PRODUCTS_DIR}/pyxb/install -PYXB ?=${PYXB_ROOT_DIR}/bin/pyxbgen -PYXB_PYTHONPATH ?=${PYXB_ROOT_DIR}/lib/python3.6/site-packages -export PYTHONPATH:=${PYXB_PYTHONPATH}:${PYTHONPATH} - - -# La variable QT_PLUGIN_PATH est necessaire : l'ensemble des variables QT sont incluses pour l'instant -# comma:= , -# empty:= -# space:= $(empty) $(empty) -QTDEF= -define ADD_2_QTDEF = -$(if $(findstring export,$(1)),,QTDEF+=export$(1);) -endef -$(foreach exp, $(subst ",,$(subst $$PATH,$${PATH},$(shell grep -e 'QT_PLUGIN_PATH' ${SALOME_ROOT_DIR}/salome_prerequisites.sh))), $(eval $(call ADD_2_QTDEF, $(exp))) ) - diff --git a/config/XMLSchema11_local.xsd b/config/XMLSchema11_local.xsd deleted file mode 100644 index baa31a09..00000000 --- a/config/XMLSchema11_local.xsd +++ /dev/null @@ -1,1950 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ]> - - - - - Part 1 version: structures.xsd (rec-20120405) - Part 2 version: datatypes.xsd (rec-20120405) - - - - - - The schema corresponding to this document is normative, - with respect to the syntactic constraints it expresses in the - XML Schema Definition Language. The documentation (within 'documentation' elements) - below, is not normative, but rather highlights important aspects of - the W3C Recommendation of which this is a part. - - See below (at the bottom of this document) for information about - the revision and namespace-versioning policy governing this - schema document. - - - - - - The simpleType element and all of its members are defined - towards the end of this schema document. - - - - - Get access to the xml: attribute groups for xml:lang - as declared on 'schema' and 'documentation' below - - - - - - - This type is extended by almost all schema types - to allow attributes from other namespaces to be - added to user schemas. - - - - - - - - - - - - This type is extended by all types which allow annotation - other than <schema> itself - - - - - - - - - - - - - - - - - - - - - - - - This group is for the - elements which occur freely at the top level of schemas. - All of their types are based on the "annotated" type by extension. - - - - - - - - - - - - This group is for the - elements which can self-redefine (see <redefine> below). - - - - - - - - - - - - A utility type, not for public use - - - - - - - - - - A utility type, not for public use - - - - - - - - - - A utility type, not for public use - - #all or (possibly empty) subset of {extension, restriction} - - - - - - - - - - - - - - - - A utility type, not for public use - - - - - - - - - - - - A utility type, not for public use - - #all or (possibly empty) subset of {extension, restriction, list, union} - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - for maxOccurs - - - - - - - - - - - - - for all particles - - - - - - - - for element, group and attributeGroup, - which both define and reference - - - - - - - - 'complexType' uses this - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - This branch is short for - <complexContent> - <restriction base="xs:anyType"> - ... - </restriction> - </complexContent> - - - - - - - - - - - - - - - - Will be restricted to required or prohibited - - - - - - Not allowed if simpleContent child is chosen. - May be overridden by setting on complexContent child. - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - This choice is added simply to - make this a valid restriction per the REC - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Overrides any setting on complexType parent. - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - This choice is added simply to - make this a valid restriction per the REC - - - - - - - - - - - - - - - - - No typeDefParticle group reference - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - A utility type, not for public use - - #all or (possibly empty) subset of {substitution, extension, - restriction} - - - - - - - - - - - - - - - - - - - - - - - - The element element can be used either - at the top level to define an element-type binding globally, - or within a content model to either reference a globally-defined - element or type or declare an element-type binding locally. - The ref form is not allowed at the top level. - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - This type is used for 'alternative' elements. - - - - - - - - - - - - - - - - - - group type for explicit groups, named top-level groups and - group references - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - group type for the three kinds of group - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - This choice with min/max is here to - avoid a pblm with the Elt:All/Choice/Seq - Particle derivation constraint - - - - - - - - - - - - - - - - - - - - - - - Only elements allowed inside - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - simple type for the value of the 'namespace' attr of - 'any' and 'anyAttribute' - - - - Value is - ##any - - any non-conflicting WFXML/attribute at all - - ##other - - any non-conflicting WFXML/attribute from - namespace other than targetNS - - ##local - - any unqualified non-conflicting WFXML/attribute - - one or - - any non-conflicting WFXML/attribute from - more URI the listed namespaces - references - (space separated) - - ##targetNamespace or ##local may appear in the above list, to - refer to the targetNamespace of the enclosing - schema or an absent targetNamespace respectively - - - - - A utility type, not for public use - - - - - - - - A utility type, not for public use - - - - - - - - - - - - - - - - - - A utility type, not for public use - - - - - - - - - - A utility type, not for public use - - - - - - - - - - - - - - - - - - - A utility type, not for public use - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - A subset of XPath expressions for use -in selectors - A utility type, not for public -use - - - - - - - - - - - - - - - - - - - - - A subset of XPath expressions for use -in fields - A utility type, not for public -use - - - - - - - - - - - - - - - - - - - - - - - - - The three kinds of identity constraints, all with - type of or derived from 'keybase'. - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - A utility type, not for public use - - A public identifier, per ISO 8879 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - notations for use within schema documents - - - - - - - Not the real urType, but as close an approximation as we can - get in the XML representation - - - - - - - - - - In keeping with the XML Schema WG's standard versioning policy, - the material in this schema document will persist at the URI - http://www.w3.org/2012/04/XMLSchema.xsd. - - At the date of issue it can also be found at the URI - http://www.w3.org/2009/XMLSchema/XMLSchema.xsd. - - The schema document at that URI may however change in the future, - in order to remain compatible with the latest version of XSD - and its namespace. In other words, if XSD or the XML Schema - namespace change, the version of this document at - http://www.w3.org/2009/XMLSchema/XMLSchema.xsd will change accordingly; - the version at http://www.w3.org/2012/04/XMLSchema.xsd will not change. - - Previous dated (and unchanging) versions of this schema document - include: - - http://www.w3.org/2012/01/XMLSchema.xsd - (XSD 1.1 Proposed Recommendation) - - http://www.w3.org/2011/07/XMLSchema.xsd - (XSD 1.1 Candidate Recommendation) - - http://www.w3.org/2009/04/XMLSchema.xsd - (XSD 1.1 Candidate Recommendation) - - http://www.w3.org/2004/10/XMLSchema.xsd - (XSD 1.0 Recommendation, Second Edition) - - http://www.w3.org/2001/05/XMLSchema.xsd - (XSD 1.0 Recommendation, First Edition) - - - - - - - - - - - - A utility type, not for public use - - - - - - - - - - - - - - - - - - - - #all or (possibly empty) subset of {restriction, extension, union, list} - - - A utility type, not for public use - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Can be restricted to required or forbidden - - - - - - - - - - - - - - - - - Required at the top level - - - - - - - - - - - - - - - - - - Forbidden when nested - - - - - - - - - - - - - - - - - An abstract element, representing facets in general. - The facets defined by this spec are substitutable for - this element, and implementation-defined facets should - also name this as a substitution-group head. - - - - - - - - - - - - - - - - - base attribute and simpleType child are mutually - exclusive, but one or other is required - - - - - - - - - - - - - - - itemType attribute and simpleType child are mutually - exclusive, but one or other is required - - - - - - - - - - - - - - - - - memberTypes attribute must be non-empty or there must be - at least one simpleType child - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - In keeping with the XML Schema WG's standard versioning policy, - this schema document will persist at the URI - http://www.w3.org/2012/04/datatypes.xsd. - - At the date of issue it can also be found at the URI - http://www.w3.org/2009/XMLSchema/datatypes.xsd. - - The schema document at that URI may however change in the future, - in order to remain compatible with the latest version of XSD - and its namespace. In other words, if XSD or the XML Schema - namespace change, the version of this document at - http://www.w3.org/2009/XMLSchema/datatypes.xsd will change accordingly; - the version at http://www.w3.org/2012/04/datatypes.xsd will not change. - - Previous dated (and unchanging) versions of this schema document - include: - - http://www.w3.org/2012/01/datatypes.xsd - (XSD 1.1 Proposed Recommendation) - - http://www.w3.org/2011/07/datatypes.xsd - (XSD 1.1 Candidate Recommendation) - - http://www.w3.org/2009/04/datatypes.xsd - (XSD 1.1 Candidate Recommendation) - - http://www.w3.org/2004/10/datatypes.xsd - (XSD 1.0 Recommendation, Second Edition) - - http://www.w3.org/2001/05/datatypes.xsd - (XSD 1.0 Recommendation, First Edition) - - - - - - - diff --git a/config/test_driver_subst.py b/config/test_driver_subst.py deleted file mode 100755 index e494f2af..00000000 --- a/config/test_driver_subst.py +++ /dev/null @@ -1,18 +0,0 @@ -#! /usr/bin/env python -# -*- coding:utf-8 -*- -import sys - -#print(sys.argv[:]) - -import @module@ as mdm -import pyxb - -#THESE CONFIGURATION LINES ARE FOR ADVANCED INTERNAL TEST ONLY, YOU DON'T NEED TO CONFIGURE PYXB LIKE THIS -#mdm.pyxb.GlobalValidationConfig._setContentInfluencesGeneration(mdm.pyxb.GlobalValidationConfig.NEVER) -mdm.pyxb.GlobalValidationConfig._setContentInfluencesGeneration(mdm.pyxb.GlobalValidationConfig.ALWAYS) -mdm.pyxb.GlobalValidationConfig._setInvalidElementInContent(mdm.pyxb.GlobalValidationConfig.RAISE_EXCEPTION) -mdm.pyxb.GlobalValidationConfig._setOrphanElementInContent(mdm.pyxb.GlobalValidationConfig.RAISE_EXCEPTION) - -o1 = mdm.CreateFromDocument(open('@file@').read()) -print(o1.toDOM().toprettyxml()) - diff --git a/config/xml.xsd b/config/xml.xsd deleted file mode 100644 index bd291f3d..00000000 --- a/config/xml.xsd +++ /dev/null @@ -1,286 +0,0 @@ - - - - - - -
        -

        About the XML namespace

        - -
        -

        - This schema document describes the XML namespace, in a form - suitable for import by other schema documents. -

        -

        - See - http://www.w3.org/XML/1998/namespace.html and - - http://www.w3.org/TR/REC-xml for information - about this namespace. -

        -

        - Note that local names in this namespace are intended to be - defined only by the World Wide Web Consortium or its subgroups. - The names currently defined in this namespace are listed below. - They should not be used with conflicting semantics by any Working - Group, specification, or document instance. -

        -

        - See further below in this document for more information about how to refer to this schema document from your own - XSD schema documents and about the - namespace-versioning policy governing this schema document. -

        -
        -
        -
        -
        - - - - -
        - -

        lang (as an attribute name)

        -

        - denotes an attribute whose value - is a language code for the natural language of the content of - any element; its value is inherited. This name is reserved - by virtue of its definition in the XML specification.

        - -
        -
        -

        Notes

        -

        - Attempting to install the relevant ISO 2- and 3-letter - codes as the enumerated possible values is probably never - going to be a realistic possibility. -

        -

        - See BCP 47 at - http://www.rfc-editor.org/rfc/bcp/bcp47.txt - and the IANA language subtag registry at - - http://www.iana.org/assignments/language-subtag-registry - for further information. -

        -

        - The union allows for the 'un-declaration' of xml:lang with - the empty string. -

        -
        -
        -
        - - - - - - - - - -
        - - - - -
        - -

        space (as an attribute name)

        -

        - denotes an attribute whose - value is a keyword indicating what whitespace processing - discipline is intended for the content of the element; its - value is inherited. This name is reserved by virtue of its - definition in the XML specification.

        - -
        -
        -
        - - - - - - -
        - - - -
        - -

        base (as an attribute name)

        -

        - denotes an attribute whose value - provides a URI to be used as the base for interpreting any - relative URIs in the scope of the element on which it - appears; its value is inherited. This name is reserved - by virtue of its definition in the XML Base specification.

        - -

        - See http://www.w3.org/TR/xmlbase/ - for information about this attribute. -

        -
        -
        -
        -
        - - - - -
        - -

        id (as an attribute name)

        -

        - denotes an attribute whose value - should be interpreted as if declared to be of type ID. - This name is reserved by virtue of its definition in the - xml:id specification.

        - -

        - See http://www.w3.org/TR/xml-id/ - for information about this attribute. -

        -
        -
        -
        -
        - - - - - - - - - - -
        - -

        Father (in any context at all)

        - -
        -

        - denotes Jon Bosak, the chair of - the original XML Working Group. This name is reserved by - the following decision of the W3C XML Plenary and - XML Coordination groups: -

        -
        -

        - In appreciation for his vision, leadership and - dedication the W3C XML Plenary on this 10th day of - February, 2000, reserves for Jon Bosak in perpetuity - the XML name "xml:Father". -

        -
        -
        -
        -
        -
        - - - -
        -

        About this schema document

        - -
        -

        - This schema defines attributes and an attribute group suitable - for use by schemas wishing to allow xml:base, - xml:lang, xml:space or - xml:id attributes on elements they define. -

        -

        - To enable this, such a schema must import this schema for - the XML namespace, e.g. as follows: -

        -
        -          <schema . . .>
        -           . . .
        -           <import namespace="http://www.w3.org/XML/1998/namespace"
        -                      schemaLocation="http://www.w3.org/2001/xml.xsd"/>
        -     
        -

        - or -

        -
        -           <import namespace="http://www.w3.org/XML/1998/namespace"
        -                      schemaLocation="http://www.w3.org/2009/01/xml.xsd"/>
        -     
        -

        - Subsequently, qualified reference to any of the attributes or the - group defined below will have the desired effect, e.g. -

        -
        -          <type . . .>
        -           . . .
        -           <attributeGroup ref="xml:specialAttrs"/>
        -     
        -

        - will define a type which will schema-validate an instance element - with any of those attributes. -

        -
        -
        -
        -
        - - - -
        -

        Versioning policy for this schema document

        -
        -

        - In keeping with the XML Schema WG's standard versioning - policy, this schema document will persist at - - http://www.w3.org/2009/01/xml.xsd. -

        -

        - At the date of issue it can also be found at - - http://www.w3.org/2001/xml.xsd. -

        -

        - The schema document at that URI may however change in the future, - in order to remain compatible with the latest version of XML - Schema itself, or with the XML namespace itself. In other words, - if the XML Schema or XML namespaces change, the version of this - document at - http://www.w3.org/2001/xml.xsd - - will change accordingly; the version at - - http://www.w3.org/2009/01/xml.xsd - - will not change. -

        -

        - Previous dated (and unchanging) versions of this schema - document are at: -

        - -
        -
        -
        -
        - -
        diff --git a/docCataWriter/.oper_and_proc.rst.swp b/docCataWriter/.oper_and_proc.rst.swp deleted file mode 100644 index 10cedadf..00000000 Binary files a/docCataWriter/.oper_and_proc.rst.swp and /dev/null differ diff --git a/docCataWriter/.structure_rules.rst.swp b/docCataWriter/.structure_rules.rst.swp deleted file mode 100644 index 07058dfb..00000000 Binary files a/docCataWriter/.structure_rules.rst.swp and /dev/null differ diff --git a/docCataWriter/CoursEficas.pptx b/docCataWriter/CoursEficas.pptx deleted file mode 100644 index a70f0919..00000000 Binary files a/docCataWriter/CoursEficas.pptx and /dev/null differ diff --git a/docCataWriter/Makefile b/docCataWriter/Makefile deleted file mode 100644 index 1fdd2f0c..00000000 --- a/docCataWriter/Makefile +++ /dev/null @@ -1,153 +0,0 @@ -# Makefile for Sphinx documentation -# - -# You can set these variables from the command line. -SPHINXOPTS = -SPHINXBUILD = sphinx-build -PAPER = -BUILDDIR = _build - -# Internal variables. -PAPEROPT_a4 = -D latex_paper_size=a4 -PAPEROPT_letter = -D latex_paper_size=letter -ALLSPHINXOPTS = -d $(BUILDDIR)/doctrees $(PAPEROPT_$(PAPER)) $(SPHINXOPTS) . -# the i18n builder cannot share the environment and doctrees with the others -I18NSPHINXOPTS = $(PAPEROPT_$(PAPER)) $(SPHINXOPTS) . - -.PHONY: help clean html dirhtml singlehtml pickle json htmlhelp qthelp devhelp epub latex latexpdf text man changes linkcheck doctest gettext - -help: - @echo "Please use \`make ' where is one of" - @echo " html to make standalone HTML files" - @echo " dirhtml to make HTML files named index.html in directories" - @echo " singlehtml to make a single large HTML file" - @echo " pickle to make pickle files" - @echo " json to make JSON files" - @echo " htmlhelp to make HTML files and a HTML help project" - @echo " qthelp to make HTML files and a qthelp project" - @echo " devhelp to make HTML files and a Devhelp project" - @echo " epub to make an epub" - @echo " latex to make LaTeX files, you can set PAPER=a4 or PAPER=letter" - @echo " latexpdf to make LaTeX files and run them through pdflatex" - @echo " text to make text files" - @echo " man to make manual pages" - @echo " texinfo to make Texinfo files" - @echo " info to make Texinfo files and run them through makeinfo" - @echo " gettext to make PO message catalogs" - @echo " changes to make an overview of all changed/added/deprecated items" - @echo " linkcheck to check all external links for integrity" - @echo " doctest to run all doctests embedded in the documentation (if enabled)" - -clean: - -rm -rf $(BUILDDIR)/* - -html: - $(SPHINXBUILD) -b html $(ALLSPHINXOPTS) $(BUILDDIR)/html - @echo - @echo "Build finished. The HTML pages are in $(BUILDDIR)/html." - -dirhtml: - $(SPHINXBUILD) -b dirhtml $(ALLSPHINXOPTS) $(BUILDDIR)/dirhtml - @echo - @echo "Build finished. The HTML pages are in $(BUILDDIR)/dirhtml." - -singlehtml: - $(SPHINXBUILD) -b singlehtml $(ALLSPHINXOPTS) $(BUILDDIR)/singlehtml - @echo - @echo "Build finished. The HTML page is in $(BUILDDIR)/singlehtml." - -pickle: - $(SPHINXBUILD) -b pickle $(ALLSPHINXOPTS) $(BUILDDIR)/pickle - @echo - @echo "Build finished; now you can process the pickle files." - -json: - $(SPHINXBUILD) -b json $(ALLSPHINXOPTS) $(BUILDDIR)/json - @echo - @echo "Build finished; now you can process the JSON files." - -htmlhelp: - $(SPHINXBUILD) -b htmlhelp $(ALLSPHINXOPTS) $(BUILDDIR)/htmlhelp - @echo - @echo "Build finished; now you can run HTML Help Workshop with the" \ - ".hhp project file in $(BUILDDIR)/htmlhelp." - -qthelp: - $(SPHINXBUILD) -b qthelp $(ALLSPHINXOPTS) $(BUILDDIR)/qthelp - @echo - @echo "Build finished; now you can run "qcollectiongenerator" with the" \ - ".qhcp project file in $(BUILDDIR)/qthelp, like this:" - @echo "# qcollectiongenerator $(BUILDDIR)/qthelp/MDMdoc.qhcp" - @echo "To view the help file:" - @echo "# assistant -collectionFile $(BUILDDIR)/qthelp/MDMdoc.qhc" - -devhelp: - $(SPHINXBUILD) -b devhelp $(ALLSPHINXOPTS) $(BUILDDIR)/devhelp - @echo - @echo "Build finished." - @echo "To view the help file:" - @echo "# mkdir -p $$HOME/.local/share/devhelp/MDMdoc" - @echo "# ln -s $(BUILDDIR)/devhelp $$HOME/.local/share/devhelp/MDMdoc" - @echo "# devhelp" - -epub: - $(SPHINXBUILD) -b epub $(ALLSPHINXOPTS) $(BUILDDIR)/epub - @echo - @echo "Build finished. The epub file is in $(BUILDDIR)/epub." - -latex: - $(SPHINXBUILD) -b latex $(ALLSPHINXOPTS) $(BUILDDIR)/latex - @echo - @echo "Build finished; the LaTeX files are in $(BUILDDIR)/latex." - @echo "Run \`make' in that directory to run these through (pdf)latex" \ - "(use \`make latexpdf' here to do that automatically)." - -latexpdf: - $(SPHINXBUILD) -b latex $(ALLSPHINXOPTS) $(BUILDDIR)/latex - @echo "Running LaTeX files through pdflatex..." - $(MAKE) -C $(BUILDDIR)/latex all-pdf - @echo "pdflatex finished; the PDF files are in $(BUILDDIR)/latex." - -text: - $(SPHINXBUILD) -b text $(ALLSPHINXOPTS) $(BUILDDIR)/text - @echo - @echo "Build finished. The text files are in $(BUILDDIR)/text." - -man: - $(SPHINXBUILD) -b man $(ALLSPHINXOPTS) $(BUILDDIR)/man - @echo - @echo "Build finished. The manual pages are in $(BUILDDIR)/man." - -texinfo: - $(SPHINXBUILD) -b texinfo $(ALLSPHINXOPTS) $(BUILDDIR)/texinfo - @echo - @echo "Build finished. The Texinfo files are in $(BUILDDIR)/texinfo." - @echo "Run \`make' in that directory to run these through makeinfo" \ - "(use \`make info' here to do that automatically)." - -info: - $(SPHINXBUILD) -b texinfo $(ALLSPHINXOPTS) $(BUILDDIR)/texinfo - @echo "Running Texinfo files through makeinfo..." - make -C $(BUILDDIR)/texinfo info - @echo "makeinfo finished; the Info files are in $(BUILDDIR)/texinfo." - -gettext: - $(SPHINXBUILD) -b gettext $(I18NSPHINXOPTS) $(BUILDDIR)/locale - @echo - @echo "Build finished. The message catalogs are in $(BUILDDIR)/locale." - -changes: - $(SPHINXBUILD) -b changes $(ALLSPHINXOPTS) $(BUILDDIR)/changes - @echo - @echo "The overview file is in $(BUILDDIR)/changes." - -linkcheck: - $(SPHINXBUILD) -b linkcheck $(ALLSPHINXOPTS) $(BUILDDIR)/linkcheck - @echo - @echo "Link check complete; look for any errors in the above output " \ - "or in $(BUILDDIR)/linkcheck/output.txt." - -doctest: - $(SPHINXBUILD) -b doctest $(ALLSPHINXOPTS) $(BUILDDIR)/doctest - @echo "Testing of doctests in the sources finished, look at the " \ - "results in $(BUILDDIR)/doctest/output.txt." diff --git a/docCataWriter/PresentationEficas.pptx b/docCataWriter/PresentationEficas.pptx deleted file mode 100644 index f4c18bac..00000000 Binary files a/docCataWriter/PresentationEficas.pptx and /dev/null differ diff --git a/docCataWriter/bloc.rst b/docCataWriter/bloc.rst deleted file mode 100644 index de14073e..00000000 --- a/docCataWriter/bloc.rst +++ /dev/null @@ -1,69 +0,0 @@ -.. _bloc-label: - - -Defining a conditional Group -============================= - -Definition and Usage -____________________ - -| In a user dataset, a conditional group will exist (or not) depending on the evaluation of a python condition which often takes the form parameter == value). This python condition is dynamically evaluated. -| Apart from its cardinality, a conditional group has the same syntax as non-conditional group. - -Syntax -______ - -General syntax -~~~~~~~~~~~~~~ - -Syntax is : -:: - - myConditionalGroup = BLOC( condition= " python statement", - ... #included SIMP or others FACT/BLOC - ) - -BLOC can be seen as an 'if' statement. -Python statement contains often <, >, == but it can be any expression returning True or False. - - -.. literalinclude:: ../Tests/MappingAccasXsd/cata_1.py - :language: python - :start-after: Test_proc_5 - :end-before: #Test_proc_5 - -This means : - * if frequency_every == 'every', particule_printed (only one) is requested - * else step_to_be_printed (list) is required. - - -Don't forget that catalogs are python code. All "keywords" are arguments and in python, arguments are separated by comma "," and must be enclosed in parenthesis. Note that conditions are statements but also python strings. Use single quotes within double quotes if needed. - - - -Cardinality -~~~~~~~~~~~ -- A BLOC appears based on the evaluation of the conditional statement. it has no mandatory or optional status -- Also, a BLOC has no cardinality. It cannot be repeated. On the other hand, the FACT or SIMPs that make it up may have multiple cardinality and may appear several times. -- if keywords within a BLOC have a status,it is applied within the BLOC. - -.. literalinclude:: ../Tests/MappingAccasXsd/cata_1.py - :language: python - :start-after: Test_proc_6 - :end-before: #Test_proc_6 - -This means : - * if wind_speed > 0.5, wind_direction is needed and rain_speed can be added - - - - -Other useful attributes -~~~~~~~~~~~~~~~~~~~~~~~ - +-------------+-------------------------------------------------+-----------+ - |*attribute* |*Description* |*default* | - +=============+=================================================+===========+ - |ang |short documentation | | - +-------------+-------------------------------------------------+-----------+ - - diff --git a/docCataWriter/cata_terms.rst b/docCataWriter/cata_terms.rst deleted file mode 100644 index 83ffc4ec..00000000 --- a/docCataWriter/cata_terms.rst +++ /dev/null @@ -1,21 +0,0 @@ -EFICAS terms -============ - -Apart of a root node (named JDC_CATA), catalogs contain different types of entities : - - - terminal_symbol : SIMP (SIMPle type) or SIMP_keyword - - group_of_eficas_keyword : FACT (shorcut for FACTOR) or BLOC (conditionnal FACT): - - Content elements are terminal_symbol or group_of_eficas_keyword - - The grouping of these keywords is important from a data modelling perpective. - - The group_of_eficas_keyword can be conditional and only becomes necessary if another parameter meets a condition (ie wind_direction is only necssary if wind_speed is not nul) - - eficas_keyword : terminal_symbol or group_of_eficas_keyword - - commands : PROC (shortcut for procedure) or OPER (shortcut for operator). - - they constitute the second level of the hierachical tree (after root node). - - PROC and OPER both contain other keywords (group or terminal_symbol). - - an OPER returns a user class, unlike PROC which returns nothing. - - this objet has a type and a name. - - rules : defines the structure of the dataset (if element A is present, element B has to be present also) or order of the commands (ie : element START is defined before END) - - - concept : is a user defined class declaration. It can be used as a type for a parameter. Nothing is pre-judged about this class implementation. The actual definition/implementation can be found in the context of code project. - -Catalogs have a python syntax :ref:`python-label` diff --git a/docCataWriter/conf.py b/docCataWriter/conf.py deleted file mode 100644 index 8992be2e..00000000 --- a/docCataWriter/conf.py +++ /dev/null @@ -1,251 +0,0 @@ -# -*- coding: utf-8 -*- -# -# MDM documentation build configuration file, created by -# sphinx-quickstart on Thu Oct 1 10:55:47 2018. -# -# This file is execfile()d with the current directory set to its containing dir. -# -# Note that not all possible configuration values are present in this -# autogenerated file. -# -# All configuration values have a default; values that are commented out -# serve to show the default. - -import sys, os - -# If extensions (or modules to document with autodoc) are in another directory, -# add these directories to sys.path here. If the directory is relative to the -# documentation root, use os.path.abspath to make it absolute, like shown here. -#sys.path.insert(0, os.path.abspath('.')) - -# -- General configuration ----------------------------------------------------- - -# If your documentation needs a minimal Sphinx version, state it here. -#needs_sphinx = '1.0' - -# Add any Sphinx extension module names here, as strings. They can be extensions -# coming with Sphinx (named 'sphinx.ext.*') or your custom ones. -extensions = ['sphinx.ext.todo'] -#extensions = [] - -# Add any paths that contain templates here, relative to this directory. -templates_path = ['_templates'] - -# The suffix of source filenames. -source_suffix = '.rst' - -# The encoding of source files. -#source_encoding = 'utf-8-sig' - -# The master toctree document. -master_doc = 'index' - -# General information about the project. -project = u'MDM' -copyright = u'2019, Pascale Noyret - Eric Fayolle' - -# The version info for the project you're documenting, acts as replacement for -# |version| and |release|, also used in various other places throughout the -# built documents. -# -# The short X.Y version. -version = '0.0' -# The full version, including alpha/beta/rc tags. -release = '0.0.alpha' - -# The language for content autogenerated by Sphinx. Refer to documentation -# for a list of supported languages. -#language = None - -# There are two options for replacing |today|: either, you set today to some -# non-false value, then it is used: -#today = '' -# Else, today_fmt is used as the format for a strftime call. -#today_fmt = '%B %d, %Y' - -# List of patterns, relative to source directory, that match files and -# directories to ignore when looking for source files. -exclude_patterns = ['_build'] - -# The reST default role (used for this markup: `text`) to use for all documents. -#default_role = None - -# If true, '()' will be appended to :func: etc. cross-reference text. -#add_function_parentheses = True - -# If true, the current module name will be prepended to all description -# unit titles (such as .. function::). -#add_module_names = True - -# If true, sectionauthor and moduleauthor directives will be shown in the -# output. They are ignored by default. -#show_authors = False - -# The name of the Pygments (syntax highlighting) style to use. -pygments_style = 'sphinx' - -# A list of ignored prefixes for module index sorting. -#modindex_common_prefix = [] - - -# -- Options for HTML output --------------------------------------------------- - -# The theme to use for HTML and HTML Help pages. See the documentation for -# a list of builtin themes. -html_theme = 'default' - -# Theme options are theme-specific and customize the look and feel of a theme -# further. For a list of options available for each theme, see the -# documentation. -#html_theme_options = {} - -# Add any paths that contain custom themes here, relative to this directory. -#html_theme_path = [] - -# The name for this set of Sphinx documents. If None, it defaults to -# " v documentation". -#html_title = None - -# A shorter title for the navigation bar. Default is the same as html_title. -#html_short_title = None - -# The name of an image file (relative to this directory) to place at the top -# of the sidebar. -#html_logo = None - -# The name of an image file (within the static path) to use as favicon of the -# docs. This file should be a Windows icon file (.ico) being 16x16 or 32x32 -# pixels large. -#html_favicon = None - -# Add any paths that contain custom static files (such as style sheets) here, -# relative to this directory. They are copied after the builtin static files, -# so a file named "default.css" will overwrite the builtin "default.css". -html_static_path = ['_static'] - -# If not '', a 'Last updated on:' timestamp is inserted at every page bottom, -# using the given strftime format. -#html_last_updated_fmt = '%b %d, %Y' - -# If true, SmartyPants will be used to convert quotes and dashes to -# typographically correct entities. -#html_use_smartypants = True - -# Custom sidebar templates, maps document names to template names. -#html_sidebars = {} - -# Additional templates that should be rendered to pages, maps page names to -# template names. -#html_additional_pages = {} - -# If false, no module index is generated. -#html_domain_indices = True - -# If false, no index is generated. -#html_use_index = True - -# If true, the index is split into individual pages for each letter. -#html_split_index = False - -# If true, links to the reST sources are added to the pages. -#html_show_sourcelink = True - -# If true, "Created using Sphinx" is shown in the HTML footer. Default is True. -#html_show_sphinx = True - -# If true, "(C) Copyright ..." is shown in the HTML footer. Default is True. -#html_show_copyright = True - -# If true, an OpenSearch description file will be output, and all pages will -# contain a tag referring to it. The value of this option must be the -# base URL from which the finished HTML is served. -#html_use_opensearch = '' - -# This is the file name suffix for HTML files (e.g. ".xhtml"). -#html_file_suffix = None - -# Output file base name for HTML help builder. -htmlhelp_basename = 'MDMDoc' - - -# -- Options for LaTeX output -------------------------------------------------- - -latex_elements = { -# The paper size ('letterpaper' or 'a4paper'). -#'papersize': 'letterpaper', - -# The font size ('10pt', '11pt' or '12pt'). -#'pointsize': '10pt', - # get rid off blank pages - 'classoptions': ',openany,oneside', - 'babel' : '\\usepackage[english]{babel}', - - - -# Additional stuff for the LaTeX preamble. -#'preamble': '', -} - -# Grouping the document tree into LaTeX files. List of tuples -# (source start file, target name, title, author, documentclass [howto/manual]). -latex_documents = [ - ('index', 'MDM.tex', u'MDM Documentation', - u'Pascale Noyret - Eric Fayolle', 'manual'), -] - -# The name of an image file (relative to this directory) to place at the top of -# the title page. -#latex_logo = None - -# For "manual" documents, if this is true, then toplevel headings are parts, -# not chapters. -#latex_use_parts = False - -# If true, show page references after internal links. -#latex_show_pagerefs = False - -# If true, show URL addresses after external links. -#latex_show_urls = False - -# Documents to append as an appendix to all manuals. -#latex_appendices = [] - -# If false, no module index is generated. -#latex_domain_indices = True - - -# -- Options for manual page output -------------------------------------------- - -# One entry per manual page. List of tuples -# (source start file, name, description, authors, manual section). -man_pages = [ - ('index', 'MDMdoc', u'MDM Documentation', - [u'Pascale Noyret - Eric Fayolle'], 1) -] - -# If true, show URL addresses after external links. -#man_show_urls = False - - -# -- Options for Texinfo output ------------------------------------------------ - -# Grouping the document tree into Texinfo files. List of tuples -# (source start file, target name, title, author, -# dir menu entry, description, category) -texinfo_documents = [ - ('index', 'MDM', u'MDM Documentation', - u'Pascale Noyret - Eric Fayolle', 'MDM', 'One line description of project.', - 'Miscellaneous'), -] - -# Documents to append as an appendix to all manuals. -#texinfo_appendices = [] - -# If false, no module index is generated. -#texinfo_domain_indices = True - -# How to display URL addresses: 'footnote', 'no', or 'inline'. -#texinfo_show_urls = 'footnote' - -#TODO extension option : -todo_include_todos=True diff --git a/docCataWriter/fact.rst b/docCataWriter/fact.rst deleted file mode 100644 index d3d8ebb4..00000000 --- a/docCataWriter/fact.rst +++ /dev/null @@ -1,65 +0,0 @@ -.. _fact-label: - -Defining a Group of Keywords -============================= - -Definition and Usage -____________________ - -| A group is a set of elements. Grouping these elements is meaningfull from a business data modeling perspective. These elements are either keywords or groups themselves. -| A group has a parent : It is located in a command (in a PROC or OPER at the second level of the tree) or inside a group (BLOC or FACT). - -Syntax -______ - -General syntax -~~~~~~~~~~~~~~ - -Syntax is : -:: - - myGroup = FACT ( - ... #included SIMP or others FACT/BLOC - ) - -"myGroup" is a python label. A group can not have the same name as its brothers. -It contains simple elements or groups. There is no recursivity depth limit. - -.. literalinclude:: ../Tests/MappingAccasXsd/cata_1.py - :language: python - :start-at: job_properties - :end-at: #job_properties - -Definition of FACT including an other FACT : - -.. literalinclude:: ../Tests/MappingAccasXsd/cata_1.py - :language: python - :start-at: ThresholdExceedence - :end-at: #ThresholdExceedence - - -Cardinality -~~~~~~~~~~~ -It is possible to constrain the number of instances (cardinality) of a FACT. The cardinality is specified using the min and max attributes which specifies the minimum/maximum number of repetitions : - - If min=max=1 (default), the FACT appears only once in a valid dataset. - - If min=max=n the FACT appears n times in a valid dataset. - - If max > 1, the group of parameters can appear more than once. - - "**" means there is no upper limit for the maximal cardinality. - -.. literalinclude:: ../Tests/MappingAccasXsd/cata_1.py - :language: python - :start-at: species_parameters - :end-at: #species_parameters - -Note that a group status can be mandatory or optional. Regardless of its status, The group contains optional and mandatory elements. In the previous example, species_parameters has to be defined at least one time (in a valid dataset). Within this group, species_is_frozen is not mandatory. For each instance of species_parameters, species_is_frozen can appear or not. - -Other useful attributes -~~~~~~~~~~~~~~~~~~~~~~~ - +-------------+-------------------------------------------------+-----------+ - |*attribute* |*Description* |*default* | - +=============+=================================================+===========+ - | statut |status 'o' if mandatory and 'f' if not | f | - +-------------+-------------------------------------------------+-----------+ - |ang |short documentation | | - +-------------+-------------------------------------------------+-----------+ - diff --git a/docCataWriter/first_notions.rst b/docCataWriter/first_notions.rst deleted file mode 100644 index 292ce7fb..00000000 --- a/docCataWriter/first_notions.rst +++ /dev/null @@ -1,34 +0,0 @@ -First notions of Catalogs -========================== - -Catalog -------- - -Catalogs are a simple way to express a data model. -They organize the elements and specify the relationships between them. - -A Catalog defines the rules of parameters validity but also, and above all, the rules of consistency of a dataset, of its structure. -For example, this means : - - - the type and cardinality of elements, - - how to order the elements in their relationship to each other, - - the simultaneous (or exclusive) existence of certain parameters/groups of parameters. - -These rules ensure that a dataset is a consistent entity. - -Once the catalog is well-defined, EFICAS generates automatically an XSD file. -These are two views of the same data model. - -The python user dataset and/or xml file(s) is/are validated and compliant(s) with the catalog and/or XSD file. -The generated python/xml parameter files can be seen : - - 1. as hierarchical data ordered in a tree. - - 2. as an organized way of calling data object contructors with their parameters. - - 3. as a set of computational steps (commands) with their arguments (very close to python code) - -| The data/commands roots are called steps. -| A VIMMP user data/commands set is a collection of 'steps'. -| Each step is a consistent process/part of the complete workflow/dataflow. This makes it possible to understand the complete workflow/dataflow schema. - diff --git a/docCataWriter/index.rst b/docCataWriter/index.rst deleted file mode 100644 index bd0840aa..00000000 --- a/docCataWriter/index.rst +++ /dev/null @@ -1,26 +0,0 @@ -.. MDM documentation master file, created by sphinx-quickstart on Wed Sep 14 11:40:32 2011. - You can adapt this file completely to your liking, but it should at least - contain the root `toctree` directive. - -Welcome to MDM's documentation! -================================== - -This documentation explains how you can create a data model with MDM and how you can use it to set or validate data. -It is intended for developers to help them write data models, not an end-user documentation. - - - -Contents: - -.. toctree:: - :maxdepth: 1 - - mdm_presentation - first_notions - simp.rst - fact.rst - bloc.rst - oper_and_proc.rst - structure_rules.rst - python_rules - xsd_mapping.rst diff --git a/docCataWriter/mdm_presentation.rst b/docCataWriter/mdm_presentation.rst deleted file mode 100644 index 95c34780..00000000 --- a/docCataWriter/mdm_presentation.rst +++ /dev/null @@ -1,43 +0,0 @@ -MDM Tool -=========== - -MDM DataModels Usage -____________________ - -MDM is designed to help code developpers. It allows to: - - * simplify the writing of data models thanks to MDM definition specific langage (DSL) in python. - * automatically generate a corresponding unambiguous XSD description. - * offer dynamic validation which allows to take into account the value of certain parameters to activate specific parts of the model. - * maintain consistency between the version of the model expressed in the MDM grammar and the corresponding XSD version. - * validate datasets against these data models (one of them or both) - * use directly the produced XSDs (thanks to their unambiguity) in automatic driver generation tools (such as pyxb) and thus easely generate XML drivers (in C++ and Python) for input/output parameters. - * automatically generate an GUI which allows end users to write a specific code parameter file / dataset in xml or python format. This GUI frees the user from syntax and semantic issues and guarantees data integrity - * provide help to define the calculation scheme / calculation workflows in Salome environment. - -The dataset format is either python or XML, or both. -A valid dataset conforms to the structure and the rules of the data model against both XSD and DSL python format. -MDM is developped in python. For Gui Part, QT5 is needed. - -General Behaviour -_________________ - - * Models - Most automatic driver generation tools require an XSD definition of the data model. However, writing a data model directly into XSD is often painful and time consuming. - the MDM grammar is used to express a data model faster in a python-like format (called catalog). MDM provides an .xsd mapping able to transcribe level of validation made in MDM. Translation from this grammar to XSD is done automatically. Resulting XSD are unambiguous and can also be used easely with automatic drivers generating tools. MDM allows to manages dynamic validation rules (a simple way to activate part of the XSD description according to the values of certain parameters,). It also provides a graphical (model-compliant) interface to create valid sets of documents / user data. In addition, this generated graphical representation allows a virtuous cycle between the design of the model and the visual representation. - - An MDM catalog can contain other MDM catalogs. This means that others catalogs can be used to supplement the structure of another catalog through inclusion/import mechanisms. - - * Data Sets - The available commands are defined in the data model. - In order to create a new valid data set, the end user can use the GUI and choose parameters/commands (parts of the XSD schema) from those available. He defines valid values for mandatory parameters (cardinality, type...) and adds optional parameters if necessary. - - Data sets can be built/modified/validated by command line (TUI). - -refaire la phrase - The python/XML duality of the dataset expression allows on the one hand to execute the dataset in a proper python context, and/or, on the other hand to use it as a set of input parameters for code. - - * Workflows - Workflows managed by an orchestrator such as the YACS module of the SALOME project manipulate the parameters to launch codes. - Some parameters are common to several workflows. With MDM, it is possible to define a common data model for launching workflows and to enrich it with specific data models for each code in each workflow node. - diff --git a/docCataWriter/oper_and_proc.rst b/docCataWriter/oper_and_proc.rst deleted file mode 100644 index 03fc8848..00000000 --- a/docCataWriter/oper_and_proc.rst +++ /dev/null @@ -1,95 +0,0 @@ -.. _Defining-steps-in-a-catalog: - -Defining steps in a catalog -=========================== - - -Step nodes -__________ - - -General syntax -~~~~~~~~~~~~~~ -A step can be : - * PROC : a simple procedure - * OPER : a command returning a concept/user type - -A PROC definition aggregates hierarchical data to express a consistent part of your modeling. - -:: - - MonPROC = PROC (nom = 'MonPROC', .. - ); - MonOPER = OPER (nom = 'MonOPER', sd_prod= myUserClass, - ); - -To describe a PROC, the attribute "name" is mandatory and must be the stringfield lvalue. Note that the variable name must begin with an **upper character**. Once a PROC or an OPER is defined you can add elements FACT, BLOC or SIMP inside . - -:: - - Solver_Input = PROC(nom = 'Solver_Input', - simulation_title = SIMP(statut='o', typ='TXM', defaut='Simple test'), - time_step = SIMP(statut='o', typ='R' , defaut=0.01 , val_min=0), - number_of_steps = SIMP(statut='o', typ='I' , defaut=10000, val_min=1), - number_of_equilibration_steps = SIMP(statut='o', typ='I' , defaut=1000 , val_min=1), - job_properties= FACT(statut='o', - job_duration = SIMP(statut='o', typ='R' , defaut=1000, val_min=0), - stack_size = SIMP(statut='f', typ='R' , defaut=1000, val_min=0), - print_frequency = SIMP(statut='f', typ='TXM', defaut='every', into=['every','never','sometimes']), - close_time = SIMP(statut='f', typ='R' , defaut=1000, val_min=0), - ), - ); - -.. _Defining-a-concept-type-user: - -Defining a concept type / user type -~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - -An OPER definition agregates hierarchical data in order to express a coherent part of your modelisation. -Despite a PROC, an OPER produces a new data(object) that you can reuse in further defintion. -An oper can be considered as a function call with many parameters more or less complex and which returns a new one. - -To describe an OPER , you have first to describe a user-defined concept type. -Declarations appear at the beginning of the catalogs. User classes inherits from ASSD. Most of the time the pass statement is all you need to write. - -:: - - from Accas import * - class myInteger(ASSD) : pass - class mesh(ASSD) : pass - class meshEntity(ASSD) : pass - class meshNode(meshEntity) : pass - class meshEdges(meshEntity): pass - class field(ASSD) : pass - -OPERs return value. The return_type is a user-defined data type. - -:: - - class mesh(ASSD) : pass - ReadMesh = OPER (nom = 'ReadMesh', sd_prod = mesh, - MyFile= (typ=’Fichier’, statut ='o'), - ); - CalculateField = OPER( nom = 'CalculateField', sd_prod=field, - is_on_mesh=SIMP(typ=mesh, statut='o'), - calculFunction = FACT(...), - ); - - -:: - - mymesh = ReadMesh(MyFile="/tmp/vimmp.mesh"); - myField = CalculateField(is_on_mesh=mymesh, calculFunction=...); - -The end user can define a mesh with ReadMesh OPER (This mesh will be named) and then use this mesh in order to defined a Field.... - -Other useful attributes -~~~~~~~~~~~~~~~~~~~~~~~ - +-------------+-------------------------------------------------+-----------+ - |*attribute* |*Description* |*default* | - +=============+=================================================+===========+ - | statut |status 'o' if mandatory and 'f' if not | f | - +-------------+-------------------------------------------------+-----------+ - |ang |short documentation | | - +-------------+-------------------------------------------------+-----------+ - diff --git a/docCataWriter/python_rules.rst b/docCataWriter/python_rules.rst deleted file mode 100644 index 9761ee91..00000000 --- a/docCataWriter/python_rules.rst +++ /dev/null @@ -1,50 +0,0 @@ -.. _python-label: - -=============================== -Rules for python syntax -=============================== - -Variable names and identifiers are similar to those in many other languages : ------------------------------------------------------------------------------ - -* They start with a letter (A_Z or a-z) or an underscore "_"". -* They are followed by letters, numbers or underscores. -* They are case-sensitive. -* A string is a sequence of caracters enclosed by a pair of matching single or double quotation marks. - - - -Some identifiers are reserved words : -------------------------------------- - -* You cannot use words of the python language as identifiers. -* Some identifiers are reserved words. For example, you cannot use the following words, even if they sound like interesting names: - - ASSD, BLOC, EXCLUS, - - ENTITE, ETAPE, EVAL, , JDC - - OPER, PROC, - - REGLE, VALIDATOR - - -Catalogs are executable python files: -------------------------------------- -Keep in mind that : - -* The simplest form of assignement is : variable = value -* The hash character (#) starts a comment -* Tuples are enclosed in square brackets. -* Lists are enclosed in parentheses. -* Brackets have to be closed. -* To create a list, elements must be separated by ','. Do not forget this ',' even if the list contains only one element. -* If necessary, classes or functions must be defined. -* Arguments are separated with ',' - -:: - - #code python : - time_step = SIMP(statut='o', typ='R',) - -This is a instantiation operation. It creates an object of type SIMP. the SIMP __init__() is called with two arguments statut and typ. - -You must respect the python syntax and remember that the commands (OPER and PROC) must begin with a capital letter. - - diff --git a/docCataWriter/simp.rst b/docCataWriter/simp.rst deleted file mode 100644 index 66c4d0e6..00000000 --- a/docCataWriter/simp.rst +++ /dev/null @@ -1,160 +0,0 @@ -Defining a Keyword -=================== - -Definition and Usage -____________________ - -A model keyword defines an input parameter. It specifies the information (ie name, type) and some of the constraints on the parameter value. -A model keyword has a parent : it is located in a command (in a PROC or OPER at the second level of the tree) or within a group (BLOC or FACT). - -Syntax -______ - - -General syntax -~~~~~~~~~~~~~~ - -Source line code is : -:: - - myKeyword = SIMP (typ = 'R') - -| The *typ* attribute precises the type of keyword (in this case, float) -| "myKeyword" is the name of the keyword. It is a python label. A keyword can not have the same name as its brothers. -| The *typ* attribute is mandatory. The other SIMP attributes (see below) have a default value and are optional. - - -Typ -~~~ - -The *typ* attribute can take the following values : - - - A simple type : - * boolean (bool) - * integer (I) - * float (R) - * complex (C) - * text (TXM) - - Examples : - - :: - - number_of_species = SIMP( typ='I' ), - YoungModulus = SIMP( typ='R' ), - electrostatics_is_on = SIMP( typ=bool, ), - - - * Valid values for number_of_species : 1, -6, 128 - * Valid values for YoungModulus : 1, 110.3, -6., 14.5×10−3 - * Valid values for electrostatics_is_on : True, False , 0, 1 - | - - - A tuple of N elements (Tuple(3)). - - * Within each tuple, each model element has a specified type. - - :: - - pair_identification = SIMP(statut ='o', typ=Tuple(2), validators=VerifTypeTuple(('TXM','TXM' )),), - simulation_box_sizes = SIMP(statut ='o', typ=Tuple(3), validators=VerifTypeTuple(('R' ,'R', 'R')),), - length = SIMP(statut ='o', typ=Tuple(2), validators=VerifTypeTuple(('R' ,'TXM' )),), - - - means that pair_identification is a tuple of two strings, simulation_box_sizes a tuple of three floats and length a tuple whose first parameter is a float and second one a string. - - * Valid values for pair_identification : ('A', 'A'), ('A','B') - * Valid values for simulation_box_sizes : (1,1.,0), (2.,-2.5, 10+3) - * Valid values for length : (1,'m'), (2., 'cm') but also (and badly) (-500, 'Fahr') or (32, 'fareneit') - - .. note:: A tuple element is not seen as a list but as ONE element. (it is possible to define list of tuple -see the paragraph 'cardinality' ) - - - - A directory or a file (existing or not) - - +-------------------------------------+-----------------------------------------------------+ - | parameter is : | catalog's description is : | - +=====================================+=====================================================+ - |an existing file | typ='Fichier' | - +-------------------------------------+-----------------------------------------------------+ - |a directory | typ='Repertoire' | - +-------------------------------------+-----------------------------------------------------+ - |an existing file with specific suffix| typ=('Fichier','JDC Files (*.comm);;All Files (*)') | - +-------------------------------------+-----------------------------------------------------+ - |a non-existing file | typ=('Fichier',"",'Sauvegarde'), | - +-------------------------------------+-----------------------------------------------------+ - |a file (existing or not) | typ='FichierNoAbs' | - +-------------------------------------+-----------------------------------------------------+ - |a file or a directory | typ='FichierOuRepertoire' | - +-------------------------------------+-----------------------------------------------------+ - - .. note:: To filter filenames, you have to set the *typ* attribute with a python tuple : - - * The first element is a fixed string value : *'Fichier'* , *'Repertoire'* , *'FichierNoAbs'* , *'FichierOuRepertoire'* - * The second element is a Qt filter string as defined by QT. This string is only used by the graphical interface. The filter is inactive for *typ* *'Repertoire'* . - * The third element is only used with the value *'Sauvegarde'* in the triple *('Fichier',"",'Sauvegarde')* to activate the non-existing file usecase. - - - Or previously user defined type in the catalog (a mesh for example) - - A user-defined class inherits from the class ASSD - - :: - - class mesh (ASSD) : pass - myMesh=SIMP(typ = 'mesh') - - In this case, myMesh is a keyword waiting for a mesh instance. This instance has to be created with an OPER command. - (todo label) - - -Cardinality -~~~~~~~~~~~ -It is possible to constrain the number of occurences (cardinality) of a keyword. The cardinality is set using the min and max attributes. -If min=max=1 (default), the keyword is only one (unique) value. if max > 1, parameter is a list. min/max specify the minimum/maximum number of occurences in the list. 'max= "**"' does not set an upper limit for the maximum cardinality, but allows you to enter as many values as needed. - -.. code-block:: python - - scalar = SIMP(typ = 'R') - list_of_scalars = SIMP(typ = 'R',max="**") - list_of_3_to_5_scalars= SIMP(typ = 'R',max=5, min=3) - - -* Valid values for scalar : 1., 2., -* Valid values for list_of_scalars : (1.,1.,0), (2.,5., 7.,8,.,... 999.), (1.,) -* Valid values for list_of_3_to_5_scalars : (1.,1.,1), (1.,1.,1.,1.),(1.,1.,1.) - -Note that a list may be mandatory or optional. - - -Other useful attributes -~~~~~~~~~~~~~~~~~~~~~~~ - +-------------+-------------------------------------------------+-----------+ - |*attribute* |*Description* |*default* | - +=============+=================================================+===========+ - | statut |status 'o' if mandatory and 'f' if not | f | - +-------------+-------------------------------------------------+-----------+ - |into |finite set of value | None | - +-------------+-------------------------------------------------+-----------+ - |val_min |minimal value |float(-inf)| - +-------------+-------------------------------------------------+-----------+ - |val_max |maximal value |float(inf) | - +-------------+-------------------------------------------------+-----------+ - |ang |short documentation | None | - +-------------+-------------------------------------------------+-----------+ - |defaut |default value | None | - +-------------+-------------------------------------------------+-----------+ - - And some examples : - -.. code-block:: python - - print_frequency = SIMP(statut='f', typ='TXM', defaut='every', into=['every','never','10 steps']) - close_time = SIMP(statut='f', typ='R' , defaut=1000, val_min=0) - number_of_steps = SIMP(statut='f', typ='I' , defaut=100 , val_min=0, val_max=1000) - - -* Valid values for print_frequency : 'every','never','10 steps' and nothing else -* Valid values for close_time : positive float (not nul) -* Valid values for number_of_steps : integer between 1 and 999 - - diff --git a/docCataWriter/structure_rules.rst b/docCataWriter/structure_rules.rst deleted file mode 100644 index 4f7254e0..00000000 --- a/docCataWriter/structure_rules.rst +++ /dev/null @@ -1,145 +0,0 @@ -.. _rules-label: - -Defining rules -============== - -Definition and Usage -____________________ - -Sometimes the user wants his data to comply with certain construction rules. -These rules affect the structure of the user's data set (not the value). -They can be applied to any entity (OPER, PROC, JDC, BLOC or MYCONCEPT). - -Syntax -______ - -General syntax -~~~~~~~~~~~~~~ - -Syntax is : -:: - - regles = (..list of rules), - - -AU_MOINS_UN ------------ -AU_MOINS_UN rule requires to create at least one eficas_keyword from the list. More than one can be created. -:: - - Structure = FACT ( statut ='f', - regles = (AU_MOINS_UN( 'Beam', 'Bar', 'Grid'),) - Beam = FACT (...), - Bar = FACT (...), - Grid = FACT (...), - ); - -If 'Structure' is defined, one of the keyword 'Beam', 'Bar', 'Grid' is also defined. - * If none of these keywords is present, the structure is invalid. - * If only the word "Beam" is present, the structure is valid. - * If both keywords "Beam" and "Bar" are present, the structure is valid. - -UN_PARMI --------- -UN_PARMI rule forces the end user to create one and only one eficas_keyword from the list. -:: - - FOR_DPD = BLOC(condition = "code=='DPD'", - regles=(UN_PARMI('Initialisation', 'Solver_Input'), - ), - ...), - -The end user must select 'Initialisation' or (exclusive or) 'Solver_Input'. - - * If the user does not select any of these keywords, the dataset is invalid. - * If he selects only 'Solver_Input', the dataset is valid. - * If he selects only 'Initialisation', the dataset is valid. - * If he selects both, the dataset is invalid. (Ihm will not proposed the keyword 'Initialisation' if 'Solver_Input' already exists.) - - -EXCLUS ------- -EXCLUS means that, if one of the eficas_keyword is created, the others will not be allowed. -:: - - JOB_DURATION = FACT(statut='o', - regles=( EXCLUS('duration','number_of_time_step','end_at'), - ), - ...), - - -Only one or none of the keyword are allowed. - * If the user does not select any of these keywords, JOB_DURATION is valid. - * If he only selects 'duration', JOB_DURATION is valid. - * If he only selects 'number_of_time_step', JOB_DURATION is valid. - * If he only selects 'end_at', JOB_DURATION is valid. - * Otherwise, JOB_DURATION is invalid - -ENSEMBLE --------- -The rule means that if one eficas_keyword is selected, the others must be selected as well. -:: - - GRILLE = FACT(statut='f', - regles=( ENSEMBLE('ORIG_AXE','AXE'), - ), - ...), - -if GRILLE is used in the dataset - * If the user does not select any of these keywords, GRILLE is valid. - * If he selects only 'ORIG_AXE', GRILLE is invalid. - * If he selects both 'ORIG_AXE' and 'AXE', GRILLE is valid. - - -PRESENT_PRESENT ---------------- -The rule means that if the FIRST eficas_keyword is selected, the others must be selected as well. -:: - - FREQUENCE = FACT(statut='f', - regles=( PRESENT_PRESENT('FREQ_MIN','FREQ_MAX','FREQ_PAS') - ), - ...), - -That means : - - * If the user does not select any of these keywords, 'FREQUENCE' is valid. - * If he selects only 'FREQ_MAX', 'FREQUENCE' is valid. - * If he selects only 'FREQ_MIN', 'FREQUENCE' is invalid. - * If he selects both 'FREQ_MIN', 'FREQ_MAX' and 'FREQ_PAS', 'FREQUENCE' is valid. - - -PRESENT_ABSENT --------------- -The rule means that if the FIRST eficas_keyword is selected, the others are not allowed. -:: - - GRID = FACT(statut='f', - regles=( PRESENT_ABSENT('GroupOfNodes','GroupOfFaces','GroupOfEdges'), - ), - ...), - -This means : - - * If the user does not select any of these keywords, 'GRID' is valid. - * If he selects only 'GroupOfNodes', 'GRID' is valid. - * If he selects both 'GroupOfFaces' and 'GroupOfNodes', 'GRID' is invalid. - - -All rules can be combinated, which creates more complicated rules. - -:: - - GRID = FACT(statut='f', - regles=( PRESENT_ABSENT('GroupOfNodes','GroupOfFaces','GroupOfEdges'), - ENSEMBLE('GroupOfFaces','GroupOfEdges'), - ), - ...), - - -That means : - - * If the user select 'GroupOfNodes', GRID is valid. - * If the user select 'GroupOfFaces' and 'GroupOfEdges', GRID is valid. - * If he selects none of these keywords GRID is valid. - * Otherwise 'GRID' is invalid diff --git a/docCataWriter/vimp_presentation.rst b/docCataWriter/vimp_presentation.rst deleted file mode 100644 index 93853c52..00000000 --- a/docCataWriter/vimp_presentation.rst +++ /dev/null @@ -1,42 +0,0 @@ -VIMMP DataModel -=============== - -Definition and Usage -____________________ - -The VIMMP data model is designed to help code developers: - * Automatically generate XML drivers for input / output parameters - * Allow users to write a specific code parameter file in xml or python format. It deals with syntax and semantics issues ensuring the integrity of the file. - * Provide help to define the calculation scheme - -The generated python input parameter files can also be seen as a way to supervise a set of computational steps (commands) with their arguments. -The available commands are defined by the data model (also called catalog). -Building a new user data set that conforms to a data model consists of choosing the desired commands from the available commands. -Each selected command has its specific parameters that the user must define. Some are required, some require multiple occurrences, others require the user to name the returned concept. - - -General Behaviour -_________________ - -Xml driver generation requires an XML schema definition describing the data model. -You may be writing your data model in XSD, but it will be painful and time consuming. -In addition, there are several ways to describe the same model in XSD. -Eficas tool is useful to describe quickly your data model in a catalog and will provides you an .xsd mapping involving easy to use generated drivers. -Eficas manages dynamic validation rules and also provides a graphical (model-compliant) interface for creating valid sets of documents / user data. - - -Common Data Model -_________________ - -The set of VIMMP usecases are converted into executable workflows managed by an orchestrator as YACS module of the SALOME project. -These workflows manipulate parameters to launch the different codes. -Some parameters are common to multiple workflows and define the VIMMP common data model for launching the workflows. - -Specific Data Model -___________________ - -Some parameters are specific to a workflow/a code and is useless to the others. -However they are needed to launch the workflow then you will have to define the VIMMP specific data model for being able to launch the workflows. - - - diff --git a/docCataWriter/xsd_mapping.rst b/docCataWriter/xsd_mapping.rst deleted file mode 100644 index 3db517f5..00000000 --- a/docCataWriter/xsd_mapping.rst +++ /dev/null @@ -1,957 +0,0 @@ -.. _mapping-label: - -.. - Le TEST_ROOT n'est pas évalué dans le literalinclude -.. |TEST_ROOT| replace:: ../Tests/MappingAccasXsd/ -.. |cata_1.py| replace:: :download:`cata_1.py <../Tests/MappingAccasXsd/cata_1.py>` -.. |cata_1.xsd| replace:: :download:`cata_1.xsd <../Tests/MappingAccasXsd/cata_1.xsd>` -.. |cata_1_test1.xml| replace:: :download:`cata_1_test_1.xml <../Tests/MappingAccasXsd/cata_1_test_1.xml>` - -Generating the XSD file from the catalog file -============================================= - -generateXSD command -____________________ - -To obtain the |cata_1.xsd| file corresponding to the |cata_1.py| file just enter :: - - python ./generateXSD.py -c ./cata_1.py - - -Here is the interesting part of |cata_1.py| content. - -.. literalinclude:: ../Tests/MappingAccasXsd/cata_1.py - :language: python - :start-after: beginJdC - :end-before: endJdC - - -The generateXSD command has created the |cata_1.xsd| file. - -.. literalinclude:: ../Tests/MappingAccasXsd/cata_1.xsd - :language: xml - -You may check it with xmllint command. -You may visualize it with xsddiagram command. - -Using PyXB to generate drivers -______________________________ - -Using the XSD model file to get an XML generated driver is as simple as typing :: - - pyxbgen -m cata_1_genere -u cata_1.xsd --write-for-customization - -It will create an raw/ directory containing various classes imported from the ./cata_1_genere.py file. - - -Using PyXB generated drivers -_____________________________ - -You can use the driver to load an xml file like |cata_1_test1.xml| conforming to the |cata_1.xsd| file. - -.. literalinclude:: ../Tests/MappingAccasXsd/cata_1_test_1.py - :end-before: CONFIGURATION - -Once the .xml file is loaded you can display it in a pretty xml format. - -.. literalinclude:: ../Tests/MappingAccasXsd/cata_1_test_1.py - :start-after: _setOrphanElementInContent - -Understanding the XSD mapping for SIMP -______________________________________ - -SIMP for type simple type {'I','R', bool, 'TXM'} -~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - -Declaring an SIMP with a *type* attribute -^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - -The *SIMP* is mapped to an xsd global type and an xsd element. -The xsd element is defined locally and may appear multiple times depending on the use the catalog does of it. - -If we look at the test_simp_2 in |cata_1.py| content, we get an example of an *SIMP* of *type* 'I' (int type). - -.. todo:: - Give the possibility of customizing the xsd type used by an eficas type - -.. literalinclude:: ../Tests/MappingAccasXsd/cata_1.py - :language: python - :dedent: 8 - :start-at: test_simp_2 - :end-at: test_simp_2 - -Here is the corresponding mapped XSD type : - -.. literalinclude:: ../Tests/MappingAccasXsd/cata_1.xsd - :language: xml - :start-at: name="T_test_simp_2" - :end-at: /xs:simpleType - -An XSD element local declaration using this type is obviously defined since we declare it in the catalog : - -.. literalinclude:: ../Tests/MappingAccasXsd/cata_1.xsd - :language: xml - :dedent: 2 - :start-at: name="test_simp_2" - :end-at: name="test_simp_2" - -You may notice that the XSD elements attributes **minOccurs** and **maxOccurs** are defined by default to 1 since the *statut* attribute is obligatory *'o'*. -The XSD attribute **default** value is set to 2 conforming to the catalog *defaut* attribute. - -.. note:: - * The xsd **minOccurs** attribute value of an element declaration that comes from an *SIMP* is either 0 or 1. - * The xsd **maxOccurs** attribute value of an element declaration that comes from an *SIMP* will alway be 1. - -If we look at the test_simp_4 in |cata_1.py| content, we get an example of an *SIMP* of *type* bool (boolean type). - -.. literalinclude:: ../Tests/MappingAccasXsd/cata_1.py - :language: python - :dedent: 8 - :start-at: test_simp_4 - :end-at: test_simp_4 - -Here is the corresponding mapped XSD type : - -.. literalinclude:: ../Tests/MappingAccasXsd/cata_1.xsd - :language: xml - :start-at: name="T_test_simp_4" - :end-at: /xs:simpleType - -And the XSD element local declaration : - -.. literalinclude:: ../Tests/MappingAccasXsd/cata_1.xsd - :language: xml - :dedent: 2 - :start-at: name="test_simp_4" - :end-at: name="test_simp_4" - -.. note:: Notice that the eficas *defaut* attribute is set to the python value True and the **default** xsd attribute is set to the xsd value true - -.. note:: If two *SIMP* have the same name (so, not sibling *SIMP* ) and different *type* attributes, there will be two local element declarations with the same name and two global xsd **type** with two different typenames - - -Defining how many times a *SIMP* may appear -^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - -If we look at the test_simp_2_3 in |cata_1.py| content, we get an example of an *SIMP* of type 'I' using *min* and *max* attributes. - -.. literalinclude:: ../Tests/MappingAccasXsd/cata_1.py - :language: python - :dedent: 8 - :start-at: test_simp_2_3 - :end-at: test_simp_2_3 - -Here is the corresponding mapped XSD type : - -.. literalinclude:: ../Tests/MappingAccasXsd/cata_1.xsd - :language: xml - :start-at: name="T_test_simp_2_3" - :end-before: T_test_simp_2_4 - -.. - ATTENTION, JE N'AI PAS TROUVE UNE MEILLEURE BALISE DE FIN que le nom du test suivant : T_test_simp_2_4. - -You may notice that the XSD type is very different from the **T_test_simp_2** one. -This is because the XSD list type is used for multiple occurrences of a *SIMP* and the XSD list must be derived by restriction to get our own list type. - -An XSD element declaration using this type is also defined as for test_simp2 : - -.. literalinclude:: ../Tests/MappingAccasXsd/cata_1.xsd - :language: xml - :dedent: 2 - :start-at: name="test_simp_2_3" - :end-at: name="test_simp_2_3" - -You may notice that the minimum and maximum sizes of an XSD list are defined in the type definition thanks to a facet : - -.. code-block:: xml - - - - -Remind that in XSD, if there is no **maxLength** facet definition, the size of the list is considered unlimited. -If a *max* eficas attribute is set to a number instead of '**' you get a additional **maxLength** xsd attribute as for type *test_simp_2_4* : - -.. literalinclude:: ../Tests/MappingAccasXsd/cata_1.py - :language: python - :dedent: 8 - :start-at: test_simp_2_4 - :end-at: test_simp_2_4 - -Here is the corresponding mapped XSD type : - -.. literalinclude:: ../Tests/MappingAccasXsd/cata_1.xsd - :language: xml - :start-at: name="T_test_simp_2_4" - :end-before: T_test_simp_2_5 - -The XSD elements attributes **minOccurs** and **maxOccurs** are also defined to 1 conforming to the *statut* value *'o'*. - -Defining an *SIMP* default value -^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - -The *defaut* eficas attribute provide a way to give a default value to an *SIMP* if it isn't defined by the user : - -.. literalinclude:: ../Tests/MappingAccasXsd/cata_1.py - :language: python - :dedent: 8 - :start-at: test_simp_2_5 - :end-at: test_simp_2_5 - -The *defaut* eficas attribute take into account the *min* and *max* eficas attribute. The number of values given in the *defaut* must be in the inclusive [ *min*, *max* ] range. - -If we look at the XSD element declaration, you can see the **default** xsd attribute which is set to a list of 4 numbers. - -.. literalinclude:: ../Tests/MappingAccasXsd/cata_1.xsd - :language: xml - :dedent: 2 - :start-at: name="test_simp_2_5" - :end-at: name="test_simp_2_5" - -.. - ATTENTION, si un type T_test_simp_2_6 est défini, il faut modifier la balise de fin à cette valeur - -We observe that : - * the value of the XSD attribute **default** is set to a list conforming to the catalog *defaut* attribute - * the XSD elements attributes **minOccurs** is set to 0 conforming to the *statut* value *'f'*. - -.. note:: As you may have already noticed, some eficas *attribute* may be mapped to the **xsd type** and others to the **element declaration**. - -Constraining the range of possible values -^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ -Thanks to *val_min*, *val_max*, and *into* eficas attributes you may constraint the range of values allowed for the elements. -Here is an example of produced **xsd type** for *val_min*, *val_max* usage : - -When we define the fololwing eficas keyword with *val_min*, *val_max* attributes - -.. literalinclude:: ../Tests/MappingAccasXsd/cata_1.py - :language: python - :dedent: 8 - :start-at: test_simp_2_1 - :end-at: test_simp_2_1 - -The corresponding generated XSD type is : - -.. literalinclude:: ../Tests/MappingAccasXsd/cata_1.xsd - :language: xml - :start-at: name="T_test_simp_2_1" - :end-before: T_test_simp_2_2 - -When we define the following eficas keyword with *into* attribute : - -.. literalinclude:: ../Tests/MappingAccasXsd/cata_1.py - :language: python - :dedent: 8 - :start-at: test_simp_2_2 - :end-at: test_simp_2_2 - -The corresponding mapped XSD type is : - -.. literalinclude:: ../Tests/MappingAccasXsd/cata_1.xsd - :language: xml - :start-at: name="T_test_simp_2_2" - :end-before: T_test_simp_2_3 - -The use of the *into* attribute implies a xsd type definition using **xsd enumeration**. - -.. note:: Hence it's possible to define an *into* attribute with an *SIMP* of *type* 'R', it is generaly not very useful - -Declaring an SIMP with a *type* 'TXM' with an occurence of 1 -^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - -The use of 'TXM' type is quite the same as 'I' or 'R' types. -Here is an example for a SIMP with type 'TXM' : - -The *SIMP* declaration is : - -.. literalinclude:: ../Tests/MappingAccasXsd/cata_1.py - :language: python - :dedent: 8 - :start-at: test_simp_1_1 - :end-at: test_simp_1_1 - -You get the xsd type : - -.. literalinclude:: ../Tests/MappingAccasXsd/cata_1.xsd - :language: xml - :start-at: name="T_test_simp_1_1" - :end-at: /xs:simpleType - -And the element declaration : - -.. literalinclude:: ../Tests/MappingAccasXsd/cata_1.xsd - :language: xml - :dedent: 2 - :start-at: name="test_simp_1_1" - :end-at: name="test_simp_1_1" - - -Declaring an SIMP with a *type* 'TXM' with an occurence > 1 -^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ -Here is an example for a SIMP with type 'TXM' with multiple ocurrences : - -The *SIMP* declaration is : - -.. literalinclude:: ../Tests/MappingAccasXsd/cata_1.py - :language: python - :dedent: 8 - :start-at: test_simp_1_3 - :end-before: test_simp_2 -.. - ATTENTION, si un type T_test_simp_1_4 est défini, il faut modifier la balise de fin à cette valeur - -You get the xsd type : - -.. literalinclude:: ../Tests/MappingAccasXsd/cata_1.xsd - :language: xml - :start-at: name="T_test_simp_1_3" - :end-before: T_test_simp_2 -.. - ATTENTION, si un type T_test_simp_1_4 est défini, il faut modifier la balise de fin à cette valeur - -And the element declaration : - -.. literalinclude:: ../Tests/MappingAccasXsd/cata_1.xsd - :language: xml - :dedent: 2 - :start-at: name="test_simp_1_3" - :end-at: name="test_simp_1_3" - -.. note:: - * The use of eficas *attributes* *val_min* and *val_max* for *type* == 'TXM' may be used to enforce values to be between the *val_min* , *val_max* strings in alphabetical order. The use of eficas *validator* keyword is a better way to check regexp for string values - * The use of eficas *attributes* *into* is often very convenient to enforce the only predefined possible strings - -.. note:: - * Since the xsd type used to map the eficas attribute *max* when it is >1 is a **list** and since the xsd **list** separator is a space character then you can't use a space character in your strings - * The xsd type **list** used to map eficas attribute *max* when it is >1 is a choice of mapping which avoid the use of an xml element for each value in the .xml dataset file. Even if you can't express the direct access to an element of the list in the xpath language, it's not an issue in the PyxB generated driver because you get a Python list with its classic acessors - -SIMP with type { 'Fichier', 'Repertoire', 'FichierOuRepertoire', 'FichierNoAbs' } -~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - -Whatever the *typ* is for managing file or directory, by now the xsd mapping is a simple string. -There are possible improvements such as managing xsd regexp expression. - -Here is an example for a SIMP with type 'Fichier' with a filename filter : - -The *SIMP* declaration is : - -.. literalinclude:: ../Tests/MappingAccasXsd/cata_1.py - :language: python - :dedent: 8 - :start-at: test_simp_7_4 - :end-at: test_simp_7_4 - -You get the xsd type : - -.. literalinclude:: ../Tests/MappingAccasXsd/cata_1.xsd - :language: xml - :start-at: name="T_test_simp_7_4" - :end-at: /xs:simpleType - -And the element declaration : - -.. literalinclude:: ../Tests/MappingAccasXsd/cata_1.xsd - :language: xml - :dedent: 2 - :start-at: name="test_simp_7_4" - :end-at: name="test_simp_7_4" - -.. note:: It could be useful to define a specic xsd type for using a well-known type for managing files and directories. - - -SIMP of UserASSD type -~~~~~~~~~~~~~~~~~~~~~~ -An SIMP may have a user defined type. -Depending on the way you declare the SIMP, you can either create a new data or refer to a previoulsy created one. - -Declaration of an UserASSD type SIMP -^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ -Here is a declaration example for a SIMP with user type *User_Data* : - -The *SIMP* declaration is : - -.. literalinclude:: ../Tests/MappingAccasXsd/cata_1.py - :language: python - :start-at: class User_Data - :end-at: class User_Data - -.. literalinclude:: ../Tests/MappingAccasXsd/cata_1.py - :language: python - :dedent: 8 - :start-at: test_simp_8_1 - :end-at: test_simp_8_1 - -The *UserASSD* class declared this way is quite the same notion as using an *ASSD* class in an *OPER* command (:ref:`Defining a concept type `). The *UserASSD* differs from an ASSD by : - * the *UserASSD* *SIMP* can be declared where ever you like in the catalog (not just at first level like for an *OPER*) - * the generated python code (.comm) will call the object constructor of the *UserASSD* type with no parameter - -.. todo:: Expliciter le mécanisme en oeuvre au niveau python. - -You get the xsd type : - -.. literalinclude:: ../Tests/MappingAccasXsd/cata_1.xsd - :language: xml - :start-at: name="T_test_simp_8_1" - :end-at: /xs:simpleType - -And the element declaration : - -.. literalinclude:: ../Tests/MappingAccasXsd/cata_1.xsd - :language: xml - :dedent: 2 - :start-at: name="test_simp_8_1" - :end-at: name="test_simp_8_1" - -Referencing a UserASSD type SIMP -^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - -The *SIMP* reference is done this way: - -.. literalinclude:: ../Tests/MappingAccasXsd/cata_1.py - :language: python - :dedent: 8 - :start-at: test_simp_8_2 - :end-at: test_simp_8_2 - -Note the User_Data type given to the *typ* attribute. - -You get the xsd type : - -.. literalinclude:: ../Tests/MappingAccasXsd/cata_1.xsd - :language: xml - :start-at: name="T_test_simp_8_2" - :end-at: /xs:simpleType - -And the element declaration : - -.. literalinclude:: ../Tests/MappingAccasXsd/cata_1.xsd - :language: xml - :dedent: 2 - :start-at: name="test_simp_8_2" - :end-at: name="test_simp_8_2" - -SIMP for complex type {'C'} -~~~~~~~~~~~~~~~~~~~~~~~~~~~ - -Not yet implemented ! - -SIMP for type {Tuple} -~~~~~~~~~~~~~~~~~~~~~ - -Not yet implemented ! - - -Understanding the XSD mapping for JdC, OPER and PROC -____________________________________________________ - -The JdC root level -~~~~~~~~~~~~~~~~~~ - -As explained in section :ref:`Defining steps in a catalog` OPER and PROC commands are the very first keywords that appears under the root node. They both provide a way to agregate data. - - -The *OPER* command returns a user type while a *PROC* doesn't and just agregate a first level coherent set of data. - -If we have a look to a JdC definition : - -.. literalinclude:: ../Tests/MappingAccasXsd/cata_1.py - :language: python - :start-at: JDC_CATA - :end-at: JDC_CATA - -We notice that the *code* parameter declares the name of the code for which the catalog is written. -The xsd mapping is : - -.. literalinclude:: ../Tests/MappingAccasXsd/cata_1.xsd - :language: xml - :start-at: name="T_Test1" - :end-at: /xs:complexType - -The **xsd:choice** with a **maxOccurs=unbounded** is used because the user may choose how many *PROC* / *OPER* he/she wants and in the order he/she decided. - -The root element declaration is : - -.. literalinclude:: ../Tests/MappingAccasXsd/cata_1.xsd - :language: xml - :start-at: name="Test1" - :end-at: name="Test1" - -The name of the element comes from the *code* parameter previously defined. -You find all the element declarations that come from all the *PROC* / *OPER* declared in the catalog. - -.. note:: For generate drivers with PyXB, it's a really bad idea to define xsd **element** with **maxOccurs** > 1 in a **xs:choice** with a **maxOccurs** == 'unbounded'. Despite the generate code is correct, it produce a python class unusable since the PyXB Finite Automate with Counter can't decide from which schema component two elements of the same type comes from. This ambighuity interrupt the xml production from your python object. - -.. note:: TODO : We have to explain the way we use the schema namespaces. - -The OPER command -~~~~~~~~~~~~~~~~ - - -The *OPER* command returns an *ASSD* type (not a *UserASSD*). -An *ASSD* type provides the ability to declare and use a user class in a eficas catalog. - -Producing an *ASSD* : -^^^^^^^^^^^^^^^^^^^^^ - -After having declared the new typename *ASSD* : - -.. literalinclude:: ../Tests/MappingAccasXsd/cata_1.py - :language: python - :start-at: class Mesh - :end-at: class Mesh - -The *OPER* command describes a way to create user type instances : - -.. literalinclude:: ../Tests/MappingAccasXsd/cata_1.py - :language: python - :start-at: ReadMesh - :end-at: ,) - - -You get the xsd type : - -.. literalinclude:: ../Tests/MappingAccasXsd/cata_1.xsd - :language: xml - :start-at: name="T_ReadMesh" - :end-at: /xs:complexType - -.. note:: - * The **attribute** 'name' is used in the xml dataset to hold the name of the user data *Mesh*. - * The two xsd **attribute** 'accasType' and 'typeUtilisateur' are for eficas internal use - -The element declaration is : - -.. literalinclude:: ../Tests/MappingAccasXsd/cata_1.xsd - :language: xml - :dedent: 2 - :start-at: name="ReadMesh" - :end-at: name="ReadMesh" - -Using an already produced *ASSD* object : -^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - -If you want to declare in a catalog that a specific data of the dataset is a reuse of an already produced data by an *OPER*, you have to declare it within an SIMP. This SIMP must have the *typ* attribute equals to the *sd_prod* attribute value of the corresponding *OPER* : - -.. literalinclude:: ../Tests/MappingAccasXsd/cata_1.py - :language: python - :start-at: MyField - :end-at: ,) - -You get the xsd types : - -.. literalinclude:: ../Tests/MappingAccasXsd/cata_1.xsd - :language: xml - :start-at: name="T_MyField" - :end-at: /xs:complexType - -.. todo:: Revisit the statut attribute use, here if you don't set statut='o' you have **minOccurs** == 0 - -and - -.. literalinclude:: ../Tests/MappingAccasXsd/cata_1.xsd - :language: xml - :start-at: name="T_onMesh" - :end-at: /xs:simpleType - - -Concerning the element declaration : - -.. literalinclude:: ../Tests/MappingAccasXsd/cata_1.xsd - :language: xml - :dedent: 2 - :start-at: name="MyField" - :end-at: name="MyField" - -The way we choose to map the *OPER* to xsd allows users to create a cross reference system using name of produced structure in their dataset. - -.. todo:: Generate a schema validation rule to check that a name used as a reference is unique and exists in the corresponding object, we have to add in the root element declaration the following code : - -.. code-block:: xml - - - - - - - - - - - -.. note:: PyXB doesn't care about these rules, it relies on the sax/dom parsers capabilities. By default, using the libxml library, these checks are not performed. Anyway it's always possible to fully validate xml datasets by using a parser which have this kind of capability. - -.. todo:: PyXB doesn't automaticaly create links between the objects using the ref name contract. Either the user have to recrate the links or we have to provide a PyXB extension to do so. - -The PROC command -~~~~~~~~~~~~~~~~ - -The *PROC* command agregates a first level coherent set of data. - -The *PROC* declaration is : - -.. literalinclude:: ../Tests/MappingAccasXsd/cata_1.py - :language: python - :start-at: Test_proc_2 - :end-at: Test_proc_2 - -You get the xsd type : - -.. literalinclude:: ../Tests/MappingAccasXsd/cata_1.xsd - :language: xml - :start-at: name="T_Test_proc_2" - :end-at: /xs:complexType - -And the element declaration : - -.. literalinclude:: ../Tests/MappingAccasXsd/cata_1.xsd - :language: xml - :dedent: 2 - :start-at: name="Test_proc_2" - :end-at: name="Test_proc_2" - -Declaring an SIMP of type UserASSD in a PROC or a FACT : -^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - -Here is a *PROC* declaration using an SIMP UserASSD : - -.. literalinclude:: ../Tests/MappingAccasXsd/cata_1.py - :language: python - :start-at: class MeshU - :end-at: class MeshU - -.. literalinclude:: ../Tests/MappingAccasXsd/cata_1.py - :language: python - :start-at: Meshes - :end-at: #Meshes - -You get the *PROC* xsd type : - -.. literalinclude:: ../Tests/MappingAccasXsd/cata_1.xsd - :language: xml - :start-at: name="T_Meshes" - :end-at: /xs:complexType - -And the associated element declaration : - -.. literalinclude:: ../Tests/MappingAccasXsd/cata_1.xsd - :language: xml - :dedent: 2 - :start-at: name="Meshes" - :end-at: name="Meshes" - -.. todo:: We will have an eficas *xsdattribute* attribute to get the *SIMP* as an xsd attribute instead of an xsd element - -Concerning the *FACT* xsd type, you get : - -.. literalinclude:: ../Tests/MappingAccasXsd/cata_1.xsd - :language: xml - :start-at: name="T_mesh" - :end-at: /xs:complexType - -The *SIMP* of UserASSD type becomes : - -.. literalinclude:: ../Tests/MappingAccasXsd/cata_1.xsd - :language: xml - :start-at: name="T_name" - :end-at: /xs:simpleType - -Using an already defined SIMP of type UserASSD : -^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - -If you want to declare somewhere in a catalog that a specific data is a reuse of an already defined *UserASSD* *SIMP* data, you have to declare it within an SIMP of type *UserASSD* thanks to the *typ* attribute : - -.. literalinclude:: ../Tests/MappingAccasXsd/cata_1.py - :language: python - :start-at: MyFieldBis - :end-at: ,) - -.. note:: Note that this is exactly the same as using an *ASSD* provided by an *OPER*. - -You get the xsd types : - -.. literalinclude:: ../Tests/MappingAccasXsd/cata_1.xsd - :language: xml - :start-at: name="T_MyFieldBis" - :end-at: /xs:complexType - -and - -.. literalinclude:: ../Tests/MappingAccasXsd/cata_1.xsd - :language: xml - :start-at: name="T_onMesh_1" - :end-at: /xs:simpleType - - -Concerning the element declaration, you get : - -.. literalinclude:: ../Tests/MappingAccasXsd/cata_1.xsd - :language: xml - :dedent: 2 - :start-at: name="MyFieldBis" - :end-at: name="MyFieldBis" - -.. note:: The string **onMesh** element value must be a valid name of a **name** element value from a **mesh** element. - -.. todo:: We have to write a rule to check this. - - -Understanding the XSD mapping for FACT -______________________________________ - -As explain in :ref:`fact-label` section, the *FACT* keyword provide a way of grouping elements. It may appear *PROC*, *OPER*, *BLOC* or *FACT*. If we review the following catalog from the :ref:`fact-label` section : - -.. literalinclude:: ../Tests/MappingAccasXsd/cata_1.py - :language: python - :start-at: ThresholdExceedence - :end-at: #ThresholdExceedence - -You get the two xsd complex types using the **** xsd element : - -.. literalinclude:: ../Tests/MappingAccasXsd/cata_1.xsd - :language: xml - :start-at: name="T_ThresholdExceedence" - :end-at: /xs:complexType - -and - -.. literalinclude:: ../Tests/MappingAccasXsd/cata_1.xsd - :language: xml - :start-at: name="T_Event" - :end-at: /xs:complexType - - -The element declaration is : - -.. literalinclude:: ../Tests/MappingAccasXsd/cata_1.xsd - :language: xml - :dedent: 2 - :start-at: name="ThresholdExceedence" - :end-at: name="ThresholdExceedence" - -In order to illustrate the management of the cardinality, we can review the second example from the :ref:`fact-label` section : - - -.. literalinclude:: ../Tests/MappingAccasXsd/cata_1.py - :language: python - :start-at: species_parameters - :end-at: #species_parameters - -You get the xsd complex types using the **** xsd element : - -.. literalinclude:: ../Tests/MappingAccasXsd/cata_1.xsd - :language: xml - :start-at: name="T_species_parameters" - :end-at: /xs:complexType - - -The element declaration is : - -.. literalinclude:: ../Tests/MappingAccasXsd/cata_1.xsd - :language: xml - :dedent: 2 - :start-at: name="species_parameters" - :end-at: name="species_parameters" - -.. note:: The *FACT* cardinality is carry out by the **maxOccurs** attribute of the element declaration. The **minOccurs** attribute deserve the *statut* eficas attribute. - -Understanding the XSD mapping for BLOC -______________________________________ - -As explain in :ref:`bloc-label` section, the *BLOC* keyword provides a conditional way to activate a group of elements. Apart from the *condition* eficas attribute, it's quite the same as the *FACT* keyword. - -If we review the following catalog from the :ref:`fact-label` section : - -.. literalinclude:: ../Tests/MappingAccasXsd/cata_1.py - :language: python - :start-after: Test_proc_5 - :end-before: #Test_proc_5 - -The xsd mapping provides two **** elements : - -.. literalinclude:: ../Tests/MappingAccasXsd/cata_1.xsd - :language: xml - :start-at: name="T_frequency_every" - :end-at: /xs:group - -.. literalinclude:: ../Tests/MappingAccasXsd/cata_1.xsd - :language: xml - :start-at: name="T_frequ_not_every" - :end-at: /xs:group - -The parent xsd type uses **group ref** declarations : - -.. literalinclude:: ../Tests/MappingAccasXsd/cata_1.xsd - :language: xml - :dedent: 2 - :start-after: name="T_Test_proc_5" - :end-before: /xs:complexType - -The content of these groups may appear or not in the parent structure. -Using **group ref** allows the apparition of group content without any additionnal element level. -Considering the *BLOC* semantic, the **minOccurs** attribute is always 0 and **maxOccurs** is always 1. - -.. note:: An ambiguity problem may appear if an element with the same name is present in different group's contents. - -.. todo:: The *BLOC* xsd mapping must be refine. We may use **key**, **keyref** xsd element to restrict the possibility of activating only one branch of the conditional. However, the semantic of the *BLOC* keyword is wide. - -We may have that kind of usescases : - * A conditional E1 python expression for a B1 bloc with content C1 following a not(E1) expression for a B2 bloc with content C2 - * A conditional E1 python expression for a B1 bloc with content C1 following a not(E1) expression for a B2 bloc with content almost C1, the difference being the type of an SIMP with the same name - * A conditional E1 python expression for a B1 bloc with content C1 following a E2 expression for a B2 bloc with content C2 including partially or totally C1 - * .... - - - -Understanding the XSD mapping for included catalogs -___________________________________________________ - -Eficas offers the possibility to include one catalog from an other. There will be a main catalog from which the *JdC* keyword is defined and non-main catalogs from which there is no *JdC* keyword. A catalog may be included mutiple times in different catalogs. Whatever the catalog is (main/non-main), it is mandatory to declare : - * from which the current catalog may be included using the *importedBy* keyword - * the code name for which the data model is implemented by the current catalog. This is done thanks to the *code* keyword in the *JdC* of the main catalog and thanks to the *implement* keyword non-main catalog. - -Here is an exemple with three levels of catalogs. - -First, the main common catalog : -~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - -.. literalinclude:: ../Tests/MappingAccasXsd/MultipleCata/cata_modeleCommun.py - :language: python - -The *JdC* definition declares the main property of this catalog. - - -The given values in the *importedBy* keyword declare middle level/domain specific catalogs that may import this catalog. - -For each catalog declared in the *importedBy* keyword **one global xsd type and one global element declaration** are produced : - -.. literalinclude:: ../Tests/MappingAccasXsd/MultipleCata/cata_modeleCommun.xsd - :language: xml - :start-at: name="T_MDCommun_Abstract" - :end-at: name="T_MDCommun_Abstract" - -.. literalinclude:: ../Tests/MappingAccasXsd/MultipleCata/cata_modeleCommun.xsd - :language: xml - :start-at: name="MDCommun_Abstract" - :end-at: name="MDCommun_Abstract" - -.. literalinclude:: ../Tests/MappingAccasXsd/MultipleCata/cata_modeleCommun.xsd - :language: xml - :start-at: name="T_CFDCommun_Abstract" - :end-at: name="T_CFDCommun_Abstract" - -.. literalinclude:: ../Tests/MappingAccasXsd/MultipleCata/cata_modeleCommun.xsd - :language: xml - :start-at: name="CFDCommun_Abstract" - :end-at: name="CFDCommun_Abstract" - -.. literalinclude:: ../Tests/MappingAccasXsd/MultipleCata/cata_modeleCommun.xsd - :language: xml - :start-at: name="T_DomainSpecific_Abstract" - :end-at: name="T_DomainSpecific_Abstract" - -.. literalinclude:: ../Tests/MappingAccasXsd/MultipleCata/cata_modeleCommun.xsd - :language: xml - :start-at: name="DomainSpecific_Abstract" - :end-at: name="DomainSpecific_Abstract" - -The **abstract="true"** attribute implies that the xsd type have be be derivated in subsequent catalogs to be concretly defined. - -The abstract complex type says nothing about what will be the concrete type. - -.. note:: If *importedBy* keyword is not defined, there will be no generation of xsd abstract types. - -The root xsd is element type is : - -.. literalinclude:: ../Tests/MappingAccasXsd/MultipleCata/cata_modeleCommun.xsd - :language: xml - :start-at: name="T_modeleCommun" - :end-at: /xs:complexType - -.. note:: The three *importedBy* catalogs appear as optional **element ref**. This give the possibility to complete the main root catalog with elements coming from subsequent catalogs knowing nothing about them. - -Second, the intermediate/domain specific catalog : -~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - -This catalog finality is to gather common informations from a class of code. For example, it could be a "domain specific catalog". - -.. literalinclude:: ../Tests/MappingAccasXsd/MultipleCata/cata_MDCommun.py - :language: python - -* Since a catalog is a python script, it is possible to define an *autonome* variable to easily switch between a main/non-main catalog. -* A main catalog must declare a *JdC = JDC_CATA* definition as explained in :ref:`Defining-steps-in-a-catalog` (in our example, if *autonome* is True). -* In this example, the *importedBy* values declare the specific/final catalogs 'MD1', 'MD2' and 'MDSpecific' that may use this catalog. -* The *implement* keyword declares the abstract typename it implements and from which catalog. In this example, it implements the **T_MDCommun_Abstract** type from the *modeleCommun* catalog. - -For each catalog declared in the *importedBy* keyword we get global xsd types and global element declaration production (as for the upper level before) : - - -.. literalinclude:: ../Tests/MappingAccasXsd/MultipleCata/cata_MDCommun.xsd - :language: xml - :start-at: name="T_MD1_Abstract" - :end-at: name="T_MD1_Abstract" - -.. literalinclude:: ../Tests/MappingAccasXsd/MultipleCata/cata_MDCommun.xsd - :language: xml - :start-at: name="MD1_Abstract" - :end-at: name="MD1_Abstract" - -.. literalinclude:: ../Tests/MappingAccasXsd/MultipleCata/cata_MDCommun.xsd - :language: xml - :start-at: name="T_MD2_Abstract" - :end-at: name="T_MD2_Abstract" - -.. literalinclude:: ../Tests/MappingAccasXsd/MultipleCata/cata_MDCommun.xsd - :language: xml - :start-at: name="MD2_Abstract" - :end-at: name="MD2_Abstract" - -.. literalinclude:: ../Tests/MappingAccasXsd/MultipleCata/cata_MDCommun.xsd - :language: xml - :start-at: name="T_MDSpecific_Abstract" - :end-at: name="T_MDSpecific_Abstract" - -.. literalinclude:: ../Tests/MappingAccasXsd/MultipleCata/cata_MDCommun.xsd - :language: xml - :start-at: name="MDSpecific_Abstract" - :end-at: name="MDSpecific_Abstract" - -As in the main catalog, the **abstract="true"** attribute implies that the xsd type must be derivated in subsequent catalogs to be concretly defined. -The abstract complex type still says nothing about what will be the concrete type. - -The root xsd element type is : - -.. literalinclude:: ../Tests/MappingAccasXsd/MultipleCata/cata_MDCommun.xsd - :language: xml - :start-at: name="T_MDCommun" - :end-at: /xs:complexType - -.. note:: Notice the presence of our three *importedBy* catalogs that appear as optional **element ref**. This give the possibility to complete the intermediate root catalog with elements coming from subsequent catalogs. Since the root main common catalog hosts itself intermediate elements, we have a sort of transitivity which allows to produce a unique xsd file combining different levels of description. - -Third, the final/specific catalog : -~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - -In our three level exemple, this level is the final/fully specialized catalog. - - -Nobody includes it since *importedBy* is empty. - -This catalog finality is to describe all the informations that are not in the scope of the common model or domain specific codes but are specfic to a code. -Many code specific catalogs may use the same intermediate catalog or even directly the common catalog. - -.. literalinclude:: ../Tests/MappingAccasXsd/MultipleCata/cata_MD1.py - :language: python - -* The *importedBy* keyword is empty. It could be absent only in standalone catalogs. In this example, if the *importedBy* keyword is omitted, since the catalog imports (in the python way) the intermediate one, *importedBy* keyword would have the value defined in the intermediate catalog. -* The *implement* keyword still declares the abstract typename it implements and from which catalog. In this example, it implements the **T_MD1_Abstract** type from the *MDCommun* catalog. - -Since the *importedBy* keyword is empty, there is no abstract type production. - -.. literalinclude:: ../Tests/MappingAccasXsd/MultipleCata/cata_MD1.xsd - :language: xml - :start-at: name="T_MD1" - :end-at: /xs:complexType - -Understanding the XSD mapping for RULES -_______________________________________ - -.. todo:: Not implemented yet. diff --git a/generator.old/generator_CARMEL3D_frequentiel.py b/generator.old/generator_CARMEL3D_frequentiel.py deleted file mode 100755 index 2bc21cae..00000000 --- a/generator.old/generator_CARMEL3D_frequentiel.py +++ /dev/null @@ -1,1444 +0,0 @@ -# -*- coding: utf-8 -*- -# Copyright (C) 2007-2017 EDF R&D -# -# 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 -# -"""Ce module contient le plugin generateur de fichier au format Code_Carmel3D pour EFICAS. -""" - -import traceback -import types,string,re,os -from Extensions.i18n import tr -from generator_python import PythonGenerator - -# Groupes de mailles dont les types sont definis par des prefixes dans leur nom -usePrefix = False # les noms ont des prefixes (True) ou non (False) -# liste des prefixes des groupes de mailles, sans le caractere _ separant le prefixe du reste du nom -# Ce prefixe (et caractere _) doivent etre supprimes dans le fichier .phys -listePrefixesGroupeMaille = ("DIEL","NOCOND","COND","CURRENT","EPORT","HPORT","TOPO","PB_MOBILE","NILMAT", - "VCUT","VCUTN","EWALL","HWALL","GAMMAJ","PERIODIC","APERIODIC", - "HPROBE","EPROBE","BFLUX","BFLUXN","JFLUX","JFLUXN", - "PORT_OMEGA","POST_PHI","PB_GRID", - "SCUTE","SCUTN","ZS","ZJ","ZT") -# liste des prefixes des groupes de mailles, sans le separateur, par type de bloc du fichier PHYS sous la forme d'un dictionnaire -dictPrefixesGroupeMaille = {'DIELECTRIC':('DIEL','NOCOND'), - 'CONDUCTOR':('COND',), - 'STRANDED_INDUCTOR':('CURRENT', ), - 'EPORT':('EPORT', ), - 'HPORT':('HPORT', ), - 'ZSURFACIC':('ZS', ), - 'ZINSULATOR':('ZJ', ), - 'NILMAT':('NILMAT', )} -# separateur entre le prefixe et le reste du nom du groupe de maille -sepNomGroupeMaille = '_' - - -# types de problemes -HARMONIC = 'HARMONIC' # probleme frequentiel -TIME_DOMAIN = 'TIME_DOMAIN' # probleme temporel - -# nom du plugin, utilisé dans entryPoint et generMACRO_ETAPE() -nomPlugin = 'CARMEL3DFV0' - -def entryPoint(): - """ - Retourne les informations necessaires pour le chargeur de plugins - Ces informations sont retournees dans un dictionnaire - """ - return { - # Le nom du plugin - 'name' : nomPlugin, - # La factory pour creer une instance du plugin - 'factory' : CARMEL3DFV0Generator, - } - - - -class CARMEL3DFV0Generator(PythonGenerator): - """ - Ce generateur parcourt un objet de type JDC et produit - un texte au format eficas et - un texte au format attendu par le code Code_Carmel3D (fichier '.PHYS') - - """ - # Les extensions de fichier permis? - extensions=('.comm',) - -#---------------------------------------------------------------------------------------- - def gener(self,obj,format='brut',config=None): - - self.initDico() - - #self.debug = True - - # Cette instruction genere le contenu du fichier de commandes (persistance) - self.text=PythonGenerator.gener(self,obj,format) - - if self.debug: - print "self.text = %s" % self.text - - # Cette instruction genere le contenu du fichier de parametres pour le code Carmel3D - # si le jdc est valide (sinon cela n a pas de sens) - if obj.isValid() : - try : - # constitution du bloc VERSION du fichier PHYS (existe toujours) - self.generBLOC_VERSION(obj) - # constitution du bloc MATERIALS du fichier PHYS (existe toujours) - self.generBLOC_MATERIALS() - # constitution du bloc SOURCES du fichier PHYS (existe toujours) - self.generBLOC_SOURCES() - - except ValueError, err: - raise ValueError(str(err)) - -# print "texte carmel3d :\n",self.texteCarmel3D -# print "dictMaterDielectric : ",self.dictMaterDielectric - if self.debug: - print "dictMaterDielectric : %s" % repr(self.dictMaterDielectric) - print "dictMaterConductor : %s" % repr(self.dictMaterConductor) - - return self.text - - - - -#---------------------------------------------------------------------------------------- -# initialisations -#---------------------------------------------------------------------------------------- - - def initDico(self) : - self.texteCarmel3D="" - self.texteCarmel3D_PARAM="" - self.texteCarmel3D_PARAM_SOLV="" - self.texteCarmel3D_SH="" - self.texteCarmel3D_INFC="" - self.texteCarmel3D_CMD="" - self.texteCarmel3D_INGEND1="" - self.texteCarmel3D_INGEND2="" - self.texteCarmel3D_INGEND3="" - self.texteCarmel3D_INPOST="" - self.debug = True # affichage de messages pour deboguage (.true.) ou non - self.dicoEtapeCourant=None - self.dicoMCFACTCourant=None - self.dicoCourant=None - self.dictGroupes = {'ordreMateriauxJdC':[], 'ordreSourcesJdC':[], 'ordreStrandJdC':[], 'ordreListeJdC':[], 'ordreDomaineJdC':[]} # association des noms de groupes de maillage avec les noms de materiaux ou de sources, en sauvegardant l'ordre du JdC en separant les groupes associes a des materiaux de ceux associes a des sources - self.dictMaterConductor={} - self.dictMaterDielectric={} - self.dictMaterZsurfacic={} - self.dictMaterEmIso={} - self.dictMaterEmAnIso={} - self.dictMaterNilmat={} - self.dictMaterZinsulator={} - self.dictSourceStInd={} - self.dictSourceEport={} - self.dictSourceHport={} - self.dictStrand={} - self.dictDomaine={} - self.dictPort={} - self.cutlineValeur=[] - self.cutplaneValeur=[] - self.visu3dValeur=[] - self.fieldmapValeur=[] - self.fielddumpValeur=[] - self.repertory="" - self.frequency="" - self.domaine="" - self.direction="" - self.section="" - self.forme="" - self.centre="" - self.echelle="" - self.visu=False - self.post_global=False - self.visu_format="" - self.visu_type="" - self.gendof="" - self.fcarmel="" - self.postprocess="" - self.formulation="" - # on force le probleme a etre frequentiel, seul possible en l'etat des choses - self.problem = HARMONIC - self.fichierMaillage = "" # chemin absolu ou relatif du fichier contenant le maillage, défini dans PARAMETERS.Fichier_maillage. - self.nomFichierMaillage = "" # nom du fichier de maillage, sans le chemin - self.projet = "" # nom du projet, utilisé un peu partout, i.e., nom du fichier de maillage sans l'extension - self.materiauxGroupesTousHomogenes = True # Tous les groupes sont associés a priori à des matériaux tous homogènes mais pas forcément isotropes. On le vérifie ou modifie ci-dessous. - self.materiauxGroupesTousIsotropes = True # Tous les groupes sont associés a priori à des matériaux tous isotropes mais pas forcément homogènes. On le vérifie ou modifie ci-dessous. - -#---------------------------------------------------------------------------------------- -# ecriture -#---------------------------------------------------------------------------------------- - - def writeDefault(self,fn) : - """Ecrit les fichiers de parametres et le fichier d'execution pour le code Carmel3D""" - - # fn est le chemin complet du fichier de l'étude, e.g., /home/toto/foo.comm - #file = fn[:fn.rfind(".")] # chemin complet du fichier de l'étude sans l'extension, e.g., /home/toto/foo - repertory=os.path.dirname(fn) # répertoire de l'étude, e.g., /home/toto/ - file = os.path.join(repertory, self.projet) # on crée le chemin complet des fichiers de configuration sans extension, à partir du nom du projet. - namefile=os.path.basename(file) # nom du projet e.g., foo - - - if self.debug: - print "ecriture du fichier de parametres (PHYS)" - filePHYS = file + '.phys' - typeBloc = 'PHYS_FILES' - f = open( str(filePHYS), 'w') - f.write( self.texteCarmel3D) - f.close() - - - if self.debug: - print "ecriture du fichier de parametres (PARAM)" - filePARAM = file + '.param' - f = open( str(filePARAM), 'w') - f.write('[VERSION \n' - ' NUM 1\n' - ' FILETYPE PARAM\n]\n' - '[PROBLEM\n' - ' NAME HARMONIC\n]\n' - ) - typeBloc = 'CAR_FILES' - self.texteCarmel3D_PARAM+="["+typeBloc+"\n" # debut de bloc - self.texteCarmel3D_PARAM+=" NAME "+self.projet+".car" - self.texteCarmel3D_PARAM+="\n]\n" # fin de bloc - typeBloc = 'PHYS_FILES' - self.texteCarmel3D_PARAM+="["+typeBloc+"\n" # debut de bloc - self.texteCarmel3D_PARAM+=" NAME "+self.projet+".phys" - self.texteCarmel3D_PARAM+="\n]\n" # fin de bloc - self.texteCarmel3D_PARAM+="[FREQUENCY\n" - self.texteCarmel3D_PARAM+=" SINGLE %g \n" % (self.frequency ) - self.texteCarmel3D_PARAM+="] \n" - f.write( self.texteCarmel3D_PARAM) - f.write(self.texteCarmel3D_PARAM_SOLV) - f.close() - - # ecriture du fichier de commandes du post-traitement (.cmd), à partir du texte self.textCarmel3D défini dans la routine generPOST_COMMANDS - if self.debug: - print "ecriture du fichier de parametres (CMD)" - fileCMD =file + '.cmd' - f = open( str(fileCMD), 'w') - f.write(self.texteCarmel3D_CMD) - f.close() - - - if self.debug: - print "ecriture du fichier de parametres (INGENDOF)" - fileINGEND = file + '.ingendof' - f = open(fileINGEND, 'w') - self.texteCarmel3D_INGEND1+=""+self.nomFichierMaillage # nom du fichier de maillage (chemin relatif) - - nomsGroupes = self.dictGroupes['ordreStrandJdC'][:] - nomsGroupes.sort() - - #if self.dictDomaine !={}: - try: - self.creaBLOC_STRANDED_INDUCTOR_GEOMETRY(nomsGroupes) - except ValueError, err: - raise ValueError(str(err)) - if self.dictPort != {} : - self.creaBLOC_PORTS_GEOMETRY(nomsGroupes) - if self.formulation=="APHI": self.texteCarmel3D_INGEND3+="\n1" - if self.formulation=="TOMEGA": self.texteCarmel3D_INGEND3+="\n2" - f.write(self.texteCarmel3D_INGEND1) - f.write(self.texteCarmel3D_INGEND2) - f.write(self.texteCarmel3D_INGEND3) - f.close() - - if self.debug: - print "ecriture du fichier de parametres (INFCARMEL) " - fileINFC = file + '.infcarmel' - f = open(fileINFC, 'w') - self.texteCarmel3D_INFC+= self.projet+".param" - f.write(self.texteCarmel3D_INFC) - f.close() - - if self.debug: - print "ecriture du fichier de parametres (INPOSTPROCESS) " - fileINPOST = file + '.inpostprocess' - f = open(fileINPOST, 'w') - self.texteCarmel3D_INPOST+= self.projet+".param" - self.texteCarmel3D_INPOST+="\n"+self.projet+".xmat" - self.texteCarmel3D_INPOST+="\n"+self.projet+".cmd" - f.write(self.texteCarmel3D_INPOST) - f.close() - - print "dictionnaire complet=%s" %self.dictGroupes - print "dictionnaire des ports =%s" %self.dictPort - if self.debug: - print "ecriture du fichier d'execution (SH)" - print"LISTE DES DOMAINES=%s" %(self.dictGroupes['ordreDomaineJdC']) - RepCarmel= os.path.join(repertory,"lancer.sh") - f = open( str(RepCarmel), 'wb') - self.texteCarmel3D_SH+='cd ' + repertory + ' \n' - if self.gendof=="TRUE": - self.texteCarmel3D_SH+='echo "Debut execution gendof" \n' - if self.echelle=="Millimetre": - self.texteCarmel3D_SH+=self.repertory+"/gendof.exe -scale 0.001 < " + self.projet + ".ingendof\n" - else: - self.texteCarmel3D_SH+=self.repertory+"/gendof.exe < " + self.projet + ".ingendof\n" - if self.fcarmel=="TRUE": - self.texteCarmel3D_SH+='echo "Debut execution fcarmel" \n' - self.texteCarmel3D_SH+=self.repertory+"/fcarmel.exe < " + self.projet + ".infcarmel\n" - if self.postprocess=="TRUE": - self.texteCarmel3D_SH+= 'echo "Debut execution postprocess" \n' - self.texteCarmel3D_SH+= self.repertory+"/postprocess.exe < " + self.projet + ".inpostprocess\n" - f.write(self.texteCarmel3D_SH) - f.close() - -#---------------------------------------------------------------------------------------- -# analyse de chaque noeud de l'arbre -#---------------------------------------------------------------------------------------- - - def generMCSIMP(self,obj) : - """recuperation de l objet MCSIMP""" - if self.debug: - print "MCSIMP %(v_1)s %(v_2)s" % {'v_1': obj.nom, "v_2": obj.valeur} - s=PythonGenerator.generMCSIMP(self,obj) - try: - self.dicoCourant[obj.nom]=obj.valeurFormatee - except: - print "Oubli des messages texte homo='information'" - return s - - -#---------------------------------------------------------------------------------------- - def generMCFACT(self,obj) : - """recuperation de l objet MCFACT""" - if self.debug: - print "MCFACT debut %(v_1)s %(v_2)s" % {'v_1': unicode(obj.nom), "v_2": unicode(obj.valeur)} - dico={} - self.dicoMCFACTCourant=dico - self.dicoCourant=self.dicoMCFACTCourant - s=PythonGenerator.generMCFACT(self,obj) - # sauvegarde, dans self.dicoEtapeCourant, de la valeur du FACT courant, pour utilisation ultérieure dans generETAPE et generPROC_ETAPE - # traitement des FACT CUTLINE et CUTPLANE multiples (max='**' dans le catalogue) - # Ce traitement spécial est nécessaire pour le moment car le générateur bogue sinon au niveau des matériaux (non-linéaires ?) - if obj.nom in ('FIELDDUMP','CUTLINE', 'CUTPLANE', 'FIELDMAP', 'VISU3D' ): - # Remplissage se self.dicoEtapeCourant pour le nom du FACT courant - # Il ne contient qu'une seule valeur (un dictionnaire) par défaut lorsque le FACT est unique (max=1 dans le catalogue), - # mais il peut aussi contenir plusieurs valeurs (tableau) dans le cas contraire, e.g., max='**' dans le catalogue - if self.dicoEtapeCourant.has_key(obj.nom): # plusieurs valeurs - print "self.dicoEtapeCourant= %s"%self.dicoEtapeCourant - if type(self.dicoEtapeCourant[obj.nom]) == types.DictType: # une seule valeur entrée jusqu'à présent - dicoMCFACTprecedent = self.dicoEtapeCourant[obj.nom] # sauvegarde de la valeur précédente - print "dicoMCFACTpreceden= %s self.dicoEtapeCourant= %s"%(dicoMCFACTprecedent,self.dicoEtapeCourant) - self.dicoEtapeCourant[obj.nom] = [ dicoMCFACTprecedent, self.dicoMCFACTCourant ] # restructuration en liste et insertion de la valeur précédente et de la valeur courant - print "self.dicoEtapeCourant[obj.nom]= %s"%self.dicoEtapeCourant[obj.nom] - else: # plusieurs valeurs entrées jusqu'à présent, sous la forme d'une liste de dictionnaires - self.dicoEtapeCourant[obj.nom].append(self.dicoMCFACTCourant) # extension de la liste avec cette valeur, placée en dernier - else: # une seule valeur ou première valeur - self.dicoEtapeCourant[obj.nom]=self.dicoMCFACTCourant - else: # traitement usuel des FACT uniques, pour ignorer le bogue décrit plus haut - self.dicoEtapeCourant[obj.nom]=self.dicoMCFACTCourant - self.dicoMCFACTCourant=None - self.dicoCourant=self.dicoEtapeCourant - if self.debug: - print "MCFACT fin %(v_1)s %(v_2)s" % {'v_1': unicode(obj.nom), "v_2": unicode(obj.valeur)} - return s - - -#---------------------------------------------------------------------------------------- - def generPROC_ETAPE(self,obj): - """analyse des PROC du catalogue ( VERSION )""" - if self.debug: - print "PROC_ETAPE initial: %(v_1)s %(v_2)s" % {'v_1': unicode(obj.nom), "v_2": unicode(obj.valeur)} - dico={} - self.dicoEtapeCourant=dico - self.dicoCourant=self.dicoEtapeCourant - s=PythonGenerator.generPROC_ETAPE(self,obj) - obj.valeur=self.dicoEtapeCourant # on passe à obj la bonne structure générée par PythonGenerator.generPROC_ETAPE, pour le traitement de chaque partie ci-dessous - if self.debug: - print "PROC_ETAPE mis a jour: %(v_1)s %(v_2)s" % {'v_1': unicode(obj.nom), "v_2": unicode(obj.valeur)} - if obj.nom=="PARAMETERS" : self.generBLOC_PARAMETERS(obj) - if obj.nom=="SOLVEUR" : self.generSOLVEUR(obj) - if obj.nom=="POST_COMMANDS" : self.generPOST_COMMANDS(obj) - s=PythonGenerator.generPROC_ETAPE(self,obj) # obj.valeur a été modifiée pour le traitement ci-dessus, alors il faut tout remettre en ordre en appelant de nouveau PythonGenerator.generPROC_ETAPE - return s - - - -#---------------------------------------------------------------------------------------- - def generETAPE(self,obj): - """analyse des OPER du catalogue""" - if self.debug: - print "ETAPE mis a jour: obj.nom = %(v_1)s , obj.valeur= %(v_2)s" % {'v_1': obj.nom, 'v_2': obj.valeur} - dico={} - self.dicoEtapeCourant=dico - self.dicoCourant=self.dicoEtapeCourant - s=PythonGenerator.generETAPE(self,obj) - obj.valeur=self.dicoEtapeCourant # cf. generPROC_ETAPE - if self.debug: - print "ETAPE mis a jour: obj.nom = %(v_1)s , obj.valeur= %(v_2)s" % {'v_1': obj.nom, 'v_2': obj.valeur} - if obj.nom=="MESHGROUP" : self.generMESHGROUP(obj) - if obj.nom=="MATERIAL" : self.generMATERIAL(obj) - if obj.nom=="SOURCE" : self.generSOURCE(obj) - if obj.nom=="STRANDED_INDUCTOR_GEOMETRY" : self.generSTRANDED_INDUCTOR_GEOMETRY(obj) - if obj.nom=="MACRO_GROUPE": self.generMACRO_GROUPE(obj) - s=PythonGenerator.generETAPE(self,obj) # cf. generPROC_ETAPE - return s - -#---------------------------------------------------------------------------------------- - def generMACRO_ETAPE(self,obj): - dico={} - self.dicoEtapeCourant=dico - self.dicoCourant=self.dicoEtapeCourant - import generator - monGenerateur=generator.plugins[nomPlugin]() - jdc_aux_texte=monGenerateur.gener(obj.jdc_aux) - if self.debug: - print "jdc_aux_texte : %s" % jdc_aux_texte - - for cle in monGenerateur.dictMaterConductor: - self.dictMaterConductor[cle] = monGenerateur.dictMaterConductor[cle] - for cle in monGenerateur.dictMaterDielectric: - self.dictMaterDielectric[cle] = monGenerateur.dictMaterDielectric[cle] - for cle in monGenerateur.dictMaterZsurfacic: - self.dictMaterZsurfacic[cle] = monGenerateur.dictMaterZsurfacic[cle] - for cle in monGenerateur.dictMaterEmIso: - self.dictMaterEmIso[cle] = monGenerateur.dictMaterEmIso[cle] - for cle in monGenerateur.dictMaterEmAnIso: - self.dictMaterEmAnIso[cle] = monGenerateur.dictMaterEmAnIso[cle] - for cle in monGenerateur.dictMaterNilmat: - self.dictMaterNilMat[cle] = monGenerateur.dictMaterNilMat[cle] - for cle in monGenerateur.dictMaterZinsulator: - self.dictMaterZinsulator[cle] = monGenerateur.dictMaterZinsulator[cle] - - print "________FIN MACRO______________________________________" - s=PythonGenerator.generMACRO_ETAPE(self,obj) - return s - -#---------------------------------------------------------------------------------------- -#---------------------------------------------------------------------------------------- - def generMESHGROUP(self,obj): - """preparation de la ligne NAME referencant le groupe de mailles - associe le groupe de mailles au materiau ou a la source utilisateur - on sauvegarde aussi les noms des groupes de maillage - """ - try: - if usePrefix: - nomGroupe = self.nomReelGroupe(obj.getSdname()) # nom du groupe de maillage, i.e. nom du concept, avec prefixes enleves - print "liste des noms sans prefixes %s" %(nomGroupe) - else: - nomGroupe = obj.getSdname() # nom du groupe de maillage, i.e. nom du concept - print "liste des noms sans prefixes %s" %(nomGroupe) - - # test: un et un seul nom de materiau ou source doit etre associe a ce groupe de maillage, via les cles MATERIAL et SOURCE, respectivement. - # test sur un seul attribut, non pertinent car il peut y en avoir plusieurs. - #assert len(obj.valeur.keys())==1,"Un et un seul nom de materiau ou source doit etre associe a ce groupe du maillage :"+nomGroupe - # - # on utilise le fait que obj.valeur est un dictionnaire - self.dictGroupes[nomGroupe] = {} -# nomGroupe={'SOURCE':[], 'MATERIAL':[], 'LISTE':[], 'STRAND':[], } - if self.debug: - print "obj.valeur.keys()= %s" % obj.valeur.keys() - if 'MATERIAL' in obj.valeur.keys() and 'SOURCE' in obj.valeur.keys(): # test d'erreur lors de presence de materiau et source a la fois - raise ValueError, nomGroupe + tr(" : ce groupe de maillage ne peut pas etre associe a un materiau et une source a la fois.") - # association a un materiau - if 'MATERIAL' in obj.valeur.keys(): - self.dictGroupes[nomGroupe]['MATERIAL'] = obj.valeur['MATERIAL'].nom # sauvegarde de l'association entre ce groupe de maillage et un materiau ou source, par son nom, i.e. nom du concept du materiau ou de la source - self.dictGroupes['ordreMateriauxJdC'].append(nomGroupe) # sauvegarde du nom du groupe de maillage associe a un materiau, dans l'ordre du JdC - # association a une source - if 'SOURCE' in obj.valeur.keys(): - self.dictGroupes[nomGroupe]['SOURCE'] = obj.valeur['SOURCE'].nom # sauvegarde de l'association entre ce groupe de maillage et un materiau ou source, par son nom, i.e. nom du concept du materiau ou de la source - self.dictGroupes['ordreSourcesJdC'].append(nomGroupe) # sauvegarde du nom du groupe de maillage associe a une source, dans l'ordre du JdC - # erreur ni materiau ni source associee - if 'STRANDED_INDUCTOR_GEOMETRY' in obj.valeur.keys(): - self.dictGroupes[nomGroupe]['STRAND'] = obj.valeur['STRANDED_INDUCTOR_GEOMETRY'].nom # sauvegarde de l'association entre ce groupe de maillage et un materiau ou source, par son nom, i.e. nom du concept du materiau ou de la source - self.dictGroupes['ordreStrandJdC'].append(nomGroupe) # sauvegarde du nom du groupe de maillage associe a une source, dans l'ordre du JdC - if 'Domaine' in obj.valeur.keys(): - self.dictGroupes[nomGroupe]['DOMAINE'] = obj.valeur['Domaine'] - self.dictGroupes['ordreDomaineJdC'].append(nomGroupe) - texte="" - texte+="%s"%(obj.valeur['Domaine']) - print"le texte=%s" %(texte) - self.dictDomaine[obj.getSdname()]=texte - print "liste des domaines =%s" %(self.dictGroupes[nomGroupe]['DOMAINE']) - -# else: -# raise ValueError, tr("ce groupe de maillage %s n'est associe a aucun materiau, source ou stranded_inductor_geometry." % nomGroupe) - if self.debug: - print "self.dictGroupes= %s" % repr(self.dictGroupes) - except ValueError, err: - raise ValueError, str(err) - - def generMACRO_GROUPE(self, obj): - """preparation de la ligne NAME referencant le groupe de mailles - associe le groupe de mailles au materiau ou a la source utilisateur - on sauvegarde aussi les noms des macros groupes - """ - try: - #nomGroupe={'SOURCE':[], 'MATERIAL':[], 'LISTE':[], 'STRAND':[], } - if usePrefix: - nomGroupe = self.nomReelGroupe(obj.getSdname()) # nom du groupe de maillage, i.e. nom du concept, avec prefixes enleves - print "liste des noms sans prefixes %s" %(nomGroupe) - else: - nomGroupe = obj.getSdname() # nom du macro groupe - print "liste des noms sans prefixes %s" %(nomGroupe) - self.dictGroupes[nomGroupe] = {} - - # test: un et un seul nom de materiau ou source doit etre associe a ce groupe de maillage, via les cles MATERIAL et SOURCE, respectivement. - # test sur un seul attribut, non pertinent car il peut y en avoir plusieurs. - #assert len(obj.valeur.keys())==1,"Un et un seul nom de materiau ou source doit etre associe a ce groupe du maillage :"+nomGroupe - # - # on utilise le fait que obj.valeur est un dictionnaire - if self.debug: - print "obj.valeur.keys()= %s" % obj.valeur.keys() - if 'MATERIAL' in obj.valeur.keys() and 'SOURCE' in obj.valeur.keys(): # test d'erreur lors de presence de materiau et source a la fois - raise ValueError, nomgroupe + tr(" : ce MACRO_GROUPE ne peut pas contenir a la fois un MATERIAL et une SOURCE.") - # association a une source - if 'SOURCE' in obj.valeur.keys(): - self.dictGroupes[nomGroupe]['SOURCE'] = obj.valeur['SOURCE'].nom # sauvegarde de l'association entre ce macro groupe et un materiau ou source, par son nom, i.e. nom du concept du materiau ou de la source - self.dictGroupes['ordreSourcesJdC'].append(nomGroupe) # sauvegarde du nom du groupe de maillage associe a une source, dans l'ordre du JdC - # erreur ni materiau ni source associee - if 'LISTE_MESHGROUP' in obj.valeur.keys(): - listeStrandedInductorGeometry = True # indicateur du fait que tous les groupes de la liste sont des inducteurs bobinés ou topologiques, en morceaux ou entier (True), ou non (False). Utilisé pour savoir si le Domaine est nécessaire ou non. - listeGroupesMauvaisFormat = obj.valeur['LISTE_MESHGROUP'] # sauvegarde de l'association entre ce macro groupe et un materiau ou source, par son nom, i.e. nom du concept du materiau ou de la source - self.dictGroupes[nomGroupe]['LISTE'] = [] # sauvegarde de l'association entre ce macro groupe et un materiau ou source, par son nom, i.e. nom du concept du materiau ou de la source - for groupe in listeGroupesMauvaisFormat: # sauvegarde de la liste au format correct - groupe = groupe.replace("'", "") # suppression des guillement simpes - groupe = groupe.replace('"', "") # suppression des guillement doubles - self.dictGroupes[nomGroupe]['LISTE'].append(groupe) # sauvegarde du nom au formatage correct - if not self.dictGroupes[groupe].has_key('STRAND'): listeStrandedInductorGeometry = False # au moins un groupe de la liste n'est pas un inducteur bobiné ou topologique (morceau ou entier). - self.dictGroupes['ordreListeJdC'].append(nomGroupe) # sauvegarde du nom du macro groupe associe a une source, dans l'ordre du JdC - if not listeStrandedInductorGeometry: # Erreur en cas de liste ne définissant pas que des inducteurs bobinés ou topologiques en morceaux - raise ValueError, nomGroupe + tr(" : ce MACRO_GROUPE ne doit contenir, dans LISTE_MESHGROUP, que des morceaux d'inducteurs bobines ou topologiques.") - # test de présence du domaine pour les cas appropriés d'inducteur bobiné ou topologique en morceau. - if 'Domaine' in obj.valeur.keys(): - if listeStrandedInductorGeometry: # Domaine seulement en cas de liste définissant des inducteurs bobinés ou topologiques en morceaux - self.dictGroupes[nomGroupe]['DOMAINE'] = obj.valeur['Domaine'] - self.dictGroupes['ordreDomaineJdC'].append(nomGroupe) - texte="" - texte+="%s"%(obj.valeur['Domaine']) - print"le texte=%s" %(texte) - self.dictDomaine[obj.getSdname()]=texte - else: # Erreur si Domaine et macro-groupe pas complètement inducteur - raise ValueError, nomGroupe + tr(" : ce MACRO_GROUPE ne doit pas contenir de Domaine car il contient, dans LISTE_MESHGROUP, des groupes qui ne sont pas que des morceaux d'inducteurs bobines ou topologiques.") - else: # Domaine manquant - if listeStrandedInductorGeometry: # Erreur en cas de liste définissant des inducteurs bobinés ou topologiques en morceaux - raise ValueError, nomGroupe + tr(" : ce MACRO_GROUPE de morceaux d'inducteurs bobines ou topologiques doit contenir aussi un Domaine.") - else: - raise ValueError, nomGroupe + tr(" : ce MACRO_GROUPE doit contenir une liste de groupes LISTE_MESHGROUP.") - if self.debug: - print "self.dictGroupes= %s" % repr(self.dictGroupes) - print "self.dictDomaine=%s" %(self.dictDomaine) - except ValueError, err: - raise ValueError, str(err) - - - def generSOLVEUR(self, obj): - if self.debug: - print "generation material obj.valeur = %s" % obj.valeur - try : - nature = obj.valeur['Type'] - if nature == "Solveur_lineaire" : self.generSOLVEUR_LINEAIRE(obj) - except ValueError, err: - raise ValueError, str(err) - - def generSOLVEUR_LINEAIRE(self, obj): - if self.debug: - print "generation material obj.valeur = %s" % obj.valeur - try : - nature = obj.valeur['Methode_lineaire'] - if nature =="Methode iterative BICGCR" : self.generMETHODE_ITERATIVE_BICGCR(obj) - if nature =="Methode directe MUMPS" : self.generMETHODE_DIRECTE_MUMPS(obj) - except ValueError, err: - raise ValueError, str(err) - - def generMETHODE_ITERATIVE_BICGCR(self, obj): - texte="" - if self.debug: - print "_____________iter_____________" - - self.texteCarmel3D_PARAM_SOLV+="[SOLVER \n" - self.texteCarmel3D_PARAM_SOLV+=" NAME BICGCR\n" - self.texteCarmel3D_PARAM_SOLV+=" [ITERATIVE_PARAM \n" - self.texteCarmel3D_PARAM_SOLV+=" NITERMAX "+str(obj.valeur["Nombre_iterations_max"])+"\n" - self.texteCarmel3D_PARAM_SOLV+=" EPSILON "+str(obj.valeur["Precision"])+"\n" - self.texteCarmel3D_PARAM_SOLV+=" ]\n] \n" - if self.debug: - print "texte = %s", texte - - - def generMETHODE_DIRECTE_MUMPS(self, obj): - texte="" - if self.debug: - print "_____________directe_____________" - - self.texteCarmel3D_PARAM_SOLV+="[SOLVER \n" - self.texteCarmel3D_PARAM_SOLV+=" NAME MUMPS\n" - self.texteCarmel3D_PARAM_SOLV+=" [MUMPS_PARAMETER \n" - self.texteCarmel3D_PARAM_SOLV+=" SYM "+str(obj.valeur["Type_de_matrice"])+"\n" - self.texteCarmel3D_PARAM_SOLV+=" ICNTL "+str(obj.valeur["ICNTL_Control_Parameters"])+" "+str(obj.valeur["CNTL_Control_Parameters"])+"\n" - self.texteCarmel3D_PARAM_SOLV+=" ]\n] \n" - if self.debug: - print "texte = %s", texte - - - - def generMATERIAL(self,obj): - """preparation du bloc correspondant a un materiau du fichier PHYS""" - texte="" - if self.debug: - print "generation material obj.valeur = %s" % obj.valeur - try : - nature = obj.valeur['TYPE'] # la nature est le parametre TYPE du MATERIAL - if nature=="CONDUCTOR" : self.generMATERIAL_CONDUCTOR(obj) - if nature=="DIELECTRIC" : self.generMATERIAL_DIELECTRIC(obj) - if nature=="ZSURFACIC" : self.generMATERIAL_ZSURFACIC(obj) - if nature=="EM_ISOTROPIC" : self.generMATERIAL_EMISO(obj) - if nature=="EM_ANISOTROPIC" : self.generMATERIAL_EMANISO(obj) - if nature=="NILMAT" : self.generMATERIAL_NILMAT(obj) - if nature=="ZINSULATOR" : self.generMATERIAL_ZINSULATOR(obj) - except ValueError, err: - raise ValueError, str(err) - - def generMATERIAL_CONDUCTOR(self,obj): - """preparation du sous bloc CONDUCTOR""" - texte="" - if self.debug: - print "_____________cond_____________" - # verification des proprietes du sous bloc CONDUCTOR (PERMEABILITY, CONDUCTIVITY) - if 'PERMEABILITY' not in obj.valeur or 'CONDUCTIVITY' not in obj.valeur: - print "ERREUR! Le matériau conducteur (CONDUCTOR) de nom %s doit contenir les propriétés PERMEABILITY et CONDUCTIVITY." % obj.getSdname() - raise ValueError, obj.getSdname() + tr(" : ce materiau conducteur (CONDUCTOR) doit contenir les proprietes PERMEABILITY et CONDUCTIVITY.") - else: - # parcours des proprietes du sous bloc CONDUCTOR (PERMEABILITY, CONDUCTIVITY) - for keyN1 in ('PERMEABILITY','CONDUCTIVITY') : - # debut du sous bloc de propriete du DIELECTRIC - texte+=" ["+keyN1+"\n" - texte+=" HOMOGENEOUS "+str(obj.valeur[keyN1]["HOMOGENEOUS"])+"\n" - texte+=" ISOTROPIC "+str(obj.valeur[keyN1]["ISOTROPIC"])+"\n" - # Ecriture des valeurs seulement pour un materiau homogene et isotrope, - # car sinon ces valeurs sont definies dans des fichiers annexes - homogeneous = str(obj.valeur[keyN1]["HOMOGENEOUS"]) == 'TRUE' - isotropic = str(obj.valeur[keyN1]["ISOTROPIC"]) == 'TRUE' - if homogeneous and isotropic: - # loi (lineaire ou non) - texte+=" LAW "+str(obj.valeur[keyN1]["LAW"])+"\n" - # valeur de la loi lineaire - texte+=" VALUE "+self.formateCOMPLEX(obj.valeur[keyN1]["VALUE"])+"\n" - # loi non lineaire de nature spline, Marrocco ou Marrocco et Saturation - # seuls les reels sont pris en compte - if obj.valeur[keyN1]['LAW']=='NONLINEAR' : - texte+=" [NONLINEAR \n" - texte+=" ISOTROPY TRUE\n" - texte+=" NATURE "+str(obj.valeur[keyN1]['NATURE'])+"\n" - # ajout des autres parametres autres que ISOTROPY, NATURE, VALUE, LAW, HOMOGENEOUS, ISOTROPIC - for keyN2 in obj.valeur[keyN1] : - if keyN2 not in ('ISOTROPY','NATURE','VALUE','LAW','HOMOGENEOUS','ISOTROPIC') : - texte+=" "+keyN2+" "+str(obj.valeur[keyN1][keyN2])+"\n" - # fin du sous-bloc NONLINEAR - texte+=" ]"+"\n" - # fin du sous bloc de propriete - texte+=" ]"+"\n" - if self.debug: - print "texte = %s", texte - self.dictMaterConductor[obj.getSdname()]={'texte': texte, 'valeur': obj.valeur} # sauvegarde du texte pour ce bloc, ainsi que de toutes les valeurs pour analyse ultérieure - - def generMATERIAL_DIELECTRIC(self,obj): - """preparation du sous bloc DIELECTRIC""" - texte="" - if self.debug: - print "______________nocond_____________" - # verification des proprietes du sous bloc DIELECTRIC (PERMEABILITY, PERMITTIVITY) - if 'PERMITTIVITY' not in obj.valeur: - print "obj.valeur=%s" %obj.valeur - obj.valeur["PERMITTIVITY"]={'HOMOGENEOUS': 'TRUE', 'LAW': 'LINEAR', 'ISOTROPIC': 'TRUE', 'VALUE': 1} - - # parcours des proprietes du sous bloc DIELECTRIC (PERMEABILITY, PERMITTIVITY) - for keyN1 in ('PERMEABILITY','PERMITTIVITY') : - # debut du sous bloc de propriete du DIELECTRIC - texte+=" ["+keyN1+"\n" - texte+=" HOMOGENEOUS "+str(obj.valeur[keyN1]["HOMOGENEOUS"])+"\n" - texte+=" ISOTROPIC "+str(obj.valeur[keyN1]["ISOTROPIC"])+"\n" - # Ecriture des valeurs seulement pour un materiau homogene et isotrope, - # car sinon ces valeurs sont definies dans des fichiers annexes - homogeneous = str(obj.valeur[keyN1]["HOMOGENEOUS"]) == 'TRUE' - isotropic = str(obj.valeur[keyN1]["ISOTROPIC"]) == 'TRUE' - if homogeneous and isotropic: - # loi (lineaire ou non) - texte+=" LAW "+str(obj.valeur[keyN1]["LAW"])+"\n" - # valeur de la loi lineaire - texte+=" VALUE "+self.formateCOMPLEX(obj.valeur[keyN1]["VALUE"])+"\n" - # loi non lineaire de nature spline, Marrocco ou Marrocco et Saturation - # seuls les reels sont pris en compte - if obj.valeur[keyN1]['LAW']=='NONLINEAR' : - texte+=" [NONLINEAR \n" - texte+=" ISOTROPY TRUE\n" - texte+=" NATURE "+str(obj.valeur[keyN1]['NATURE'])+"\n" - # ajout des autres parametres autres que ISOTROPY, NATURE, VALUE, LAW, HOMOGENEOUS, ISOTROPIC - for keyN2 in obj.valeur[keyN1] : - if keyN2 not in ('ISOTROPY','NATURE','VALUE','LAW','HOMOGENEOUS','ISOTROPIC') : - texte+=" "+keyN2+" "+str(obj.valeur[keyN1][keyN2])+"\n" - # fin du sous-bloc NONLINEAR - texte+=" ]"+"\n" - # fin du sous bloc de propriete - texte+=" ]"+"\n" - if self.debug: - print "texte = %s" % texte - self.dictMaterDielectric[obj.getSdname()]={'texte': texte, 'valeur': obj.valeur} # sauvegarde du texte pour ce bloc, ainsi que de toutes les valeurs pour analyse ultérieure - - def generMATERIAL_ZSURFACIC(self,obj): - """preparation du sous bloc ZSURFACIC""" - texte="" - if self.debug: - print "______________zsurf_____________" - # verification des proprietes du sous bloc ZSURFACIC (PERMEABILITY, CONDUCTIVITY) - if 'PERMEABILITY' not in obj.valeur or 'CONDUCTIVITY' not in obj.valeur: - print "ERREUR! Le matériau impedance de surface (ZSURFACIC) de nom %s doit contenir les propriétés PERMEABILITY et CONDUCTIVITY." % obj.getSdname() - raise ValueError, obj.getSdname() + tr(" : ce materiau impedance de surface (ZSURFACIC) doit contenir les proprietes PERMEABILITY et CONDUCTIVITY.") - else: - # parcours des proprietes du sous bloc ZSURFACIC (PERMEABILITY, CONDUCTIVITY) - for keyN1 in obj.valeur : - if keyN1=='TYPE': continue - # print "type loi = ", obj.valeur[keyN1]['LAW'] - # debut du sous bloc de propriete du DIELECTRIC - texte+=" ["+keyN1+"\n" - texte+=" HOMOGENEOUS "+str(obj.valeur[keyN1]["HOMOGENEOUS"])+"\n" - texte+=" ISOTROPIC "+str(obj.valeur[keyN1]["ISOTROPIC"])+"\n" - # Ecriture des valeurs seulement pour un materiau homogene et isotrope, - # car sinon ces valeurs sont definies dans des fichiers annexes - homogeneous = str(obj.valeur[keyN1]["HOMOGENEOUS"]) == 'TRUE' - isotropic = str(obj.valeur[keyN1]["ISOTROPIC"]) == 'TRUE' - if homogeneous and isotropic: - # loi (lineaire ou non) - texte+=" LAW "+str(obj.valeur[keyN1]["LAW"])+"\n" - # valeur de la loi lineaire - texte+=" VALUE "+self.formateCOMPLEX(obj.valeur[keyN1]["VALUE"])+"\n" - # fin du sous bloc de propriete - texte+=" ]"+"\n" - if self.debug: - print "texte = %s", texte - self.dictMaterZsurfacic[obj.getSdname()]=texte # sauvegarde du texte pour ce bloc - - def generMATERIAL_EMISO(self,obj): - """preparation du sous bloc EM_ISOTROPIC_FILES. - Les fichiers sont indiques par le chemin absolu, i.e. le nom complet du JdC, - ce qui permet de deplacer les dossiers contenant le modele complet puisque le JdC permet les chemins relatifs. - """ - if "CONDUCTIVITY_File" in obj.valeur: - texte =" CONDUCTIVITY MED "+str(obj.valeur["CONDUCTIVITY_File"])+"\n" - if "PERMEABILITY_File" in obj.valeur: - texte+=" PERMEABILITY MED "+str(obj.valeur["PERMEABILITY_File"])+"\n" - # Possibilite de forcer le chemin relatif (nom de fichier seulement) plutot que le chemin absolu par defaut - #from os.path import basename - #texte =" CONDUCTIVITY MED "+basename(str(obj.valeur["CONDUCTIVITY_File"]))+"\n" - #texte+=" PERMEABILITY MED "+basename(str(obj.valeur["PERMEABILITY_File"]))+"\n" - # print "obj get sdname= ", obj.getSdname() - # if obj.getSdname() in self.dictMaterEmIso.keys() : - # self.dictMaterEmIso[obj.getSdname()].append(texte) - # else : - self.dictMaterEmIso[obj.getSdname()]=texte - - def generMATERIAL_EMANISO(self,obj): - """preparation du sous bloc EM_ANISOTROPIC_FILES. - Les fichiers sont indiques par le chemin absolu, i.e. le nom complet du JdC, - ce qui permet de deplacer les dossiers contenant le modele complet puisque le JdC permet les chemins relatifs. - """ - if "CONDUCTIVITY_File" in obj.valeur: - texte =" CONDUCTIVITY MATER "+str(obj.valeur["CONDUCTIVITY_File"])+"\n" - if "PERMEABILITY_File" in obj.valeur: - texte+=" PERMEABILITY MATER "+str(obj.valeur["PERMEABILITY_File"])+"\n" - # print "obj get sdname= ", obj.getSdname() - # if obj.getSdname() in self.dictMaterEmAnIso.keys() : - # self.dictMaterEmAnIso[obj.getSdname()].append(texte) - # else : - self.dictMaterEmAnIso[obj.getSdname()]=texte - - def generMATERIAL_NILMAT(self,obj): - """preparation du sous bloc NILMAT""" - texte="" - self.dictMaterNilmat[obj.getSdname()]=texte - - def generMATERIAL_ZINSULATOR(self,obj): - """"preparation du sous bloc ZINSULATOR""" - texte="" - self.dictMaterZinsulator[obj.getSdname()]=texte - -#------------------------------------------------------------------- - - def generSOURCE(self,obj): - """preparation du bloc correspondant a une source du fichier PHYS""" - if self.debug: - print "generation source obj valeur = %s" % obj.valeur - texte="" - try : - # test de la presence des types de sources reconnus - # commes ces sources sont des mot-cles facteurs, i.e. une cle de dictionnaire, - # la source ne peut contenir au plus qu'un type de source. - if "STRANDED_INDUCTOR" in obj.valeur: - self.generSOURCE_STRANDED_INDUCTOR(obj) - elif "HPORT" in obj.valeur: - self.generSOURCE_HPORT(obj) - elif "EPORT" in obj.valeur: - self.generSOURCE_EPORT(obj) - else: - print "ERREUR! Une source du type STRANDED_INDUCTOR, HPORT ou EPORT est attendue." - except ValueError, err: - raise ValueError, str(err) - - def generSOURCE_STRANDED_INDUCTOR(self,obj): - """preparation du sous bloc STRANDED_INDUCTOR""" - texte="" - sdict = obj.valeur['STRANDED_INDUCTOR'] # dictionnaire contenant les parametres de la source, outre la forme de la source - try : - texte+=" NTURNS %s\n" % str(sdict['NTURNS']) - self.nturns=sdict['NTURNS'] - # test de la presence d'une forme de source reconnue - # commes ces formes sont des mot-cles facteurs, i.e. une cle de dictionnaire, - # la source ne peut contenir au plus qu'un type de source. - if "WAVEFORM_CONSTANT" in obj.valeur: - wdict = obj.valeur['WAVEFORM_CONSTANT'] # dictionnaire contenant les parametres de la forme de la source - if self.problem == HARMONIC: - texte+=" CURJ POLAR %s 0\n" % str(wdict['AMPLITUDE']) - elif "WAVEFORM_SINUS" in obj.valeur: - wdict = obj.valeur['WAVEFORM_SINUS'] # dictionnaire contenant les parametres de la forme de la source - if self.problem == HARMONIC: - texte+=" CURJ POLAR %(ampli)s %(phase)s\n" \ - % {'ampli': str(wdict['AMPLITUDE']), 'phase': str(wdict['PHASE'])} - self.dictSourceStInd[obj.getSdname()]=texte - if self.debug: - print texte - except ValueError, err: - raise ValueError, str(err) - - def generSOURCE_HPORT(self,obj): - """preparation du sous bloc HPORT""" - texte="" - sdict = obj.valeur['HPORT'] # dictionnaire contenant les parametres de la source, outre la forme de la source - nomPort = obj.getSdname() - self.dictPort[nomPort] = {} - self.dictPort[nomPort]['HPORT']=str(sdict['TYPE']) - try : - texte+=" TYPE %s\n" % str(sdict['TYPE']) - # test de la presence d'une forme de source reconnue - # commes ces formes sont des mot-cles facteurs, i.e. une cle de dictionnaire, - # la source ne peut contenir au plus qu'un type de source. - if "WAVEFORM_CONSTANT" in obj.valeur: - wdict = obj.valeur['WAVEFORM_CONSTANT'] # dictionnaire contenant les parametres de la forme de la source - if self.problem == HARMONIC: - texte+=" AMP POLAR %s 0\n" % str(wdict['AMPLITUDE']) - elif "WAVEFORM_SINUS" in obj.valeur: - wdict = obj.valeur['WAVEFORM_SINUS'] # dictionnaire contenant les parametres de la forme de la source - if self.problem == HARMONIC: - texte+=" AMP POLAR %(ampli)s %(phase)s\n" \ - % {'ampli': str(wdict['AMPLITUDE']), 'phase': str(wdict['PHASE'])} - self.dictSourceHport[obj.getSdname()]=texte - if self.debug: - print texte - except ValueError, err: - raise ValueError, str(err) - - def generSOURCE_EPORT(self,obj): - - - """preparation du sous bloc EPORT""" - texte="" - sdict = obj.valeur['EPORT'] # dictionnaire contenant les parametres de la source, outre la forme de la source - nomPort = obj.getSdname() - self.dictPort[nomPort] = {} - self.dictPort[nomPort]['EPORT']=str(sdict['TYPE']) - print "sdict=%s" %(sdict) - try : - texte+=" TYPE %s\n" % str(sdict['TYPE']) - # test de la presence d'une forme de source reconnue - # commes ces formes sont des mot-cles facteurs, i.e. une cle de dictionnaire, - # la source ne peut contenir au plus qu'un type de source. - if "WAVEFORM_CONSTANT" in obj.valeur: - wdict = obj.valeur['WAVEFORM_CONSTANT'] # dictionnaire contenant les parametres de la forme de la source - if self.problem == HARMONIC: - texte+=" AMP POLAR %s 0\n" % str(wdict['AMPLITUDE']) - elif "WAVEFORM_SINUS" in obj.valeur: - wdict = obj.valeur['WAVEFORM_SINUS'] # dictionnaire contenant les parametres de la forme de la source - if self.problem == HARMONIC: - texte+=" AMP POLAR %(ampli)s %(phase)s\n" \ - % {'ampli': str(wdict['AMPLITUDE']), 'phase': str(wdict['PHASE'])} - self.dictSourceEport[obj.getSdname()]=texte - if self.debug: - print texte - except ValueError, err: - raise ValueError, str(err) - -# - def generPARAM_CIRCULAIRE(self, obj): - if self.debug: - print "generation stranded inductor geometry obj.valeur = %s" % obj.valeur - self.centre=obj.valeur["Centre"] - - def generPOST_COMMANDS(self, obj): - """Création du texte de commandes de post-traitement toto.cmd""" - if self.debug: - print "generation POST_COMMANDS obj.valeur = %s" % obj.valeur - - if obj.valeur.has_key('GLOBAL'): - self.texteCarmel3D_CMD+="[\nGLOBAL\n]\n" - - if obj.valeur.has_key('DUMP'): - champsFieldkind={'total':'TOTAL', 'reaction':'REACTION', 'diffracted':'DIFFRACTED'} - self.texteCarmel3D_CMD+="[\nDUMP" - self.texteCarmel3D_CMD+="\n"+self.projet + '_postgroups.txt' - self.texteCarmel3D_CMD+="\n"+champsFieldkind[obj.valeur["DUMP"]["fieldkind"]]+"\n]\n" - - if obj.valeur.has_key('FIELDDUMP'): - champs = {'T':'TFIELD','H':'HFIELD', 'B':'BFIELD', 'J':'JFIELD', 'E':'EFIELD', 'pertesJoule':'OHMLOSS_DENSITY', 'champSource':'SOURCEFIELD', 'A':'AFIELD', 'Phi':'PHIFIELD', 'Omega':'OMEGAFIELD'} - champsFieldkind={'total':'TOTAL', 'reaction':'REACTION', 'diffracted':'DIFFRACTED'} - self.texteCarmel3D_CMD+="[\nFIELDDUMP" - if type(obj.valeur["FIELDDUMP"]) == types.DictType: # correspondance sur une 'Fielddump' - self.fielddumpValeur.append(obj.valeur["FIELDDUMP"]) - else: - self.fielddumpValeur=obj.valeur["FIELDDUMP"] # correspondance sur plusieurs 'Fielddump' - for indexFielddump in self.fielddumpValeur: - self.texteCarmel3D_CMD+="\n [\n" +" "+ champs[indexFielddump["field"]] - self.texteCarmel3D_CMD+="\n" + " " + champsFieldkind[indexFielddump["fieldkind"]] + "\n ]" - self.texteCarmel3D_CMD+="\n]\n" - - - if obj.valeur.has_key('VISU'): - self.texteCarmel3D_CMD+="[\nVISU" - # test de fichier de maillage bien lu - if self.fichierMaillage == "": raise ValueError, tr("Le fichier de maillage n'existe pas. Le bloc PARAMETERS doit etre defini au-dessus du bloc POST_COMMANDS.") - self.texteCarmel3D_CMD+="\n"+self.projet+"\n" - self.texteCarmel3D_CMD+=obj.valeur["VISU"]["visu_format"]+"\n" - self.texteCarmel3D_CMD+=obj.valeur["VISU"]["visu_type"]+"\n]\n" - - if obj.valeur.has_key('VISU3D'): - champsField = {'T':'TFIELD','H':'HFIELD', 'B':'BFIELD', 'J':'JFIELD', 'E':'EFIELD', 'pertesJoule':'OHMLOSS_DENSITY', 'champSource':'SOURCEFIELD', 'A':'AFIELD', 'Phi':'PHIFIELD', 'Omega':'OMEGAFIELD'} # correspondance sur le nom du champ entre le catalogue (clé) et le fichier de configuration de Code_Carmel3D (valeur) - champsFieldkind={'total':'TOTAL', 'reaction':'REACTION', 'diffracted':'DIFFRACTED'} - if type(obj.valeur["VISU3D"])==types.DictType: # correspondance sur une 'VISU3D' - self.visu3dValeur.append(obj.valeur["VISU3D"]) - else: - self.visu3dValeur=obj.valeur["VISU3D"] # correspondance sur plusieurs 'VISU3D' - self.texteCarmel3D_CMD+="[\nVISU3D" - if self.fichierMaillage == "": raise ValueError, tr("Le fichier de maillage n'existe pas. Le bloc PARAMETERS doit etre defini au-dessus du bloc POST_COMMANDS.") - self.texteCarmel3D_CMD+="\n"+ self.projet - self.texteCarmel3D_CMD+="\n" + self.visu3dValeur[0]["visu_format"] - for indexVisu3d in self.visu3dValeur: - if indexVisu3d["visu_format"]!=self.visu3dValeur[0]["visu_format"]: - print "ERREUR! Dans les multiples VISU3D du bloc POST_COMMANDS, le parametre visu_format doit prendre la meme valeur." - raise ValueError, tr("Dans les multiples VISU3D du bloc POST_COMMANDS, le parametre visu_format doit prendre la meme valeur.") - self.texteCarmel3D_CMD+="\n [\n " + champsField[indexVisu3d["field"]] - self.texteCarmel3D_CMD+="\n "+ champsFieldkind[indexVisu3d["fieldkind"]] - self.texteCarmel3D_CMD+="\n "+ indexVisu3d["visu_type"]+"\n ]" - self.texteCarmel3D_CMD+="\n]\n" - - if obj.valeur.has_key('ASTER_RMS_LOSSES'): - self.texteCarmel3D_CMD+="[\nASTER_RMS_LOSSES" - if self.fichierMaillage == "": raise ValueError, tr("Le fichier de maillage n'existe pas. Le bloc PARAMETERS doit etre defini au-dessus du bloc POST_COMMANDS.") - self.texteCarmel3D_CMD+="\n"+self.projet+"\n" - self.texteCarmel3D_CMD+= obj.valeur["ASTER_RMS_LOSSES"]["rms_losses_format"] +"\n]\n" - - if obj.valeur.has_key('CUTLINE'): - # création du champ, renommé par rapport à l'interface - champsField = {'H':'HFIELD', 'B':'BFIELD', 'J':'JFIELD', 'E':'EFIELD', 'pertesJoule':'OHMLOSS_DENSITY', 'champSource':'SOURCEFIELD', 'A':'AFIELD', 'Phi':'PHIFIELD', 'Omega':'OMEGAFIELD', 'T':'TFIELD'} # correspondance sur le nom du champ entre le catalogue (clé) et le fichier de configuration de Code_Carmel3D (valeur) - champsFieldkind={'total':'TOTAL', 'reaction':'REACTION', 'diffracted':'DIFFRACTED'} - champsOutput={'xgraphic':'XGRAPHIC', 'gnuplot':'GNUPLOT', 'gmsh':'GMSH'} - champsLissage={'aucun':'NONE', 'un seul point par element':'1PTELT'} - if type(obj.valeur["CUTLINE"]) == types.DictType: # correspondance sur une 'Cutline' - self.cutlineValeur.append(obj.valeur["CUTLINE"]) # transfert d'une dictionnaire à une liste - else: - self.cutlineValeur=obj.valeur["CUTLINE"] # correspondance sur plusieurs 'Cutline' - for indexCutline in self.cutlineValeur: - self.texteCarmel3D_CMD+="[\nCUTLINE" - self.texteCarmel3D_CMD+="\n%s" % ' '.join(map(str,indexCutline["first_point"]), ) - self.texteCarmel3D_CMD+="\n%s" % ' '.join(map(str,indexCutline["last_point"]), ) - self.texteCarmel3D_CMD+="\n%d" % (indexCutline["number_of_points"], ) - self.texteCarmel3D_CMD+="\n" +indexCutline["name"] - self.texteCarmel3D_CMD+="\n" + champsField[indexCutline["field"]] - if indexCutline.has_key('fieldkind'): - self.texteCarmel3D_CMD+="\nFIELDKIND " + champsFieldkind[indexCutline["fieldkind"]] - if indexCutline.has_key('output'): - self.texteCarmel3D_CMD+="\nOUTPUT " +champsOutput[indexCutline["output"]] - if indexCutline.has_key('lissage'): - self.texteCarmel3D_CMD+="\nSMOOTHLEVEL " +champsLissage[indexCutline["lissage"]] - self.texteCarmel3D_CMD+="\n]\n" - - if obj.valeur.has_key('CUTPLANE'): - champs = {'T':'TFIELD','H':'HFIELD', 'B':'BFIELD', 'J':'JFIELD', 'E':'EFIELD','pertesJoule':'OHMLOSS_DENSITY', 'champSource':'SOURCEFIELD', 'A':'AFIELD', 'Phi':'PHIFIELD', 'Omega':'OMEGAFIELD'} # correspondance sur le nom du champ entre le catalogue (clé) et le fichier de configuration de Code_Carmel3D (valeur) - champsFieldkind= {'total':'TOTAL', 'reaction':'REACTION', 'diffracted':'DIFFRACTED'} - champsOutput={'xgraphic':'XGRAPHIC', 'gnuplot':'GNUPLOT', 'gmsh':'GMSH'} - champsLissage={'aucun':'NONE', 'un seul point par element':'1PTELT'} - axes = {'Ox':1, 'Oy':2, 'Oz':3} # correspondance de l'axe normal entre le catalogue (clé) et le fichier de configuration Code_Carmel3D (valeur) - if type(obj.valeur["CUTPLANE"]) == types.DictType: - self.cutplaneValeur.append(obj.valeur["CUTPLANE"]) # correspondance sur une 'Cutplane' - else: - self.cutplaneValeur=obj.valeur["CUTPLANE"] # correspondance sur plusieurs 'Cutplane' - for indexCutplane in self.cutplaneValeur: - self.texteCarmel3D_CMD+="[\nCUTPLANE" - self.texteCarmel3D_CMD+="\n%d" % (axes[indexCutplane["normal_vector"]], ) - self.texteCarmel3D_CMD+="\n%f" % (indexCutplane["plane_position"], ) - self.texteCarmel3D_CMD+="\n%s" % ' '.join(map(str,indexCutplane["number_of_points"])) - self.texteCarmel3D_CMD+="\n" + indexCutplane["name"] - self.texteCarmel3D_CMD+="\n" + champs[indexCutplane["field"]] - if indexCutplane.has_key('fieldkind'): - self.texteCarmel3D_CMD+="\nFIELDKIND " + champsFieldkind[indexCutplane["fieldkind"]] - if indexCutplane.has_key('output'): - self.texteCarmel3D_CMD+="\nOUTPUT " +champsOutput[indexCutplane["output"]] - if indexCutplane.has_key('lissage'): - self.texteCarmel3D_CMD+="\nSMOOTHLEVEL " +champsLissage[indexCutplane["lissage"]] - self.texteCarmel3D_CMD+="\n]\n" - - if obj.valeur.has_key('FIELDMAP'): - champs = {'T':'TFIELD','H':'HFIELD', 'B':'BFIELD', 'J':'JFIELD', 'E':'EFIELD','pertesJoule':'OHMLOSS_DENSITY', 'champSource':'SOURCEFIELD', 'A':'AFIELD', 'Phi':'PHIFIELD', 'Omega':'OMEGAFIELD'} # correspondance sur le nom du champ entre le catalogue (clé) et le fichier de configuration de Code_Carmel3D (valeur) - champsFieldkind= {'total':'TOTAL', 'reaction':'REACTION', 'diffracted':'DIFFRACTED'} - champsOutput={'xgraphic':'XGRAPHIC', 'gnuplot':'GNUPLOT', 'gmsh':'GMSH'} - champsFieldmap_type={'equation':'EQUATION', 'fichier':'FILE'} - champsType={'plane':'PLANE', 'line':'LINE'} - axes = {'Ox':1, 'Oy':2, 'Oz':3} # correspondance de l'axe normal entre le catalogue (clé) et le fichier de configuration Code_Carmel3D (valeur) - if type(obj.valeur["FIELDMAP"]) == types.DictType: - self.fieldmapValeur.append(obj.valeur["FIELDMAP"]) # correspondance sur une 'Fieldmap' - else: - self.fieldmapValeur=obj.valeur["FIELDMAP"]# correspondance sur plusieurs 'Fieldmap' - for indexFieldmap in self.fieldmapValeur: - self.texteCarmel3D_CMD+="[\nFIELDMAP" - self.texteCarmel3D_CMD+="\n" + champsFieldmap_type[indexFieldmap["fieldmap_type"]] - if indexFieldmap["fieldmap_type"]=="equation": - self.texteCarmel3D_CMD+="\n" + champsType[indexFieldmap["type"]] - if indexFieldmap["type"]=="line": - self.texteCarmel3D_CMD+="\n%s" % ' '.join(map(str,indexFieldmap["first_point"]), ) - self.texteCarmel3D_CMD+="\n%s" % ' '.join(map(str,indexFieldmap["last_point"]), ) - self.texteCarmel3D_CMD+="\n%d" % (indexFieldmap["number_of_points"], ) - if indexFieldmap["type"]=="plane": - self.texteCarmel3D_CMD+="\n%d" % (axes[indexFieldmap["normal_vector"]], ) - self.texteCarmel3D_CMD+="\n%f" % (indexFieldmap["plane_position"], ) - self.texteCarmel3D_CMD+="\n%s" % ' '.join(map(str,indexFieldmap["number_of_points"])) - if indexFieldmap["fieldmap_type"]=="fichier": - self.fichierFieldmap=indexFieldmap["filename"] - self.nomFichierFieldmap = os.path.basename(self.fichierFieldmap) # nom du fichier de fieldmap, sans le chemin - self.texteCarmel3D_CMD+="\n" + self.nomFichierFieldmap - self.texteCarmel3D_CMD+="\n" + champs[indexFieldmap["field"]] - self.texteCarmel3D_CMD+="\n" + champsFieldkind[indexFieldmap["fieldkind"]] - self.texteCarmel3D_CMD+="\n" +indexFieldmap["name"] # nom systématique, quel que soit le fieldmap_type, placé entre fieldkind et output - self.texteCarmel3D_CMD+="\n" +champsOutput[indexFieldmap["output"]] - self.texteCarmel3D_CMD+="\n]\n" - - - - -#--------------------------------------------------------------------------------------- -# traitement fichier PHYS -#--------------------------------------------------------------------------------------- - def generBLOC_VERSION(self,obj) : - # constitution du bloc VERSION du fichier PHYS - # creation d une entite VERSION ; elle sera du type PROC car decrit ainsi - # dans le du catalogue - version=obj.addEntite('VERSION',pos=None) - self.generPROC_ETAPE(obj.etapes[0]) - self.texteCarmel3D+="["+obj.etapes[0].nom+"\n" - for cle in obj.etapes[0].valeur : - self.texteCarmel3D+=" "+cle+" "+str(obj.etapes[0].valeur[cle])+"\n" - self.texteCarmel3D+="]\n" - # destruction de l entite creee - obj.suppEntite(version) - #print 'ERREUR : test erreur boite graphique BLOC_VERSION' - #raise ValueError, 'test erreur boite graphique BLOC_VERSION' - - - def generBLOC_PARAMETERS(self,obj): - if self.debug: - print "generation parameters obj.valeur = %s" % obj.valeur - - self.frequency=obj.valeur["FREQUENCY"] - self.repertory=obj.valeur["RepCarmel"] - self.fichierMaillage=obj.valeur["Fichier_maillage"] - self.nomFichierMaillage = os.path.basename(self.fichierMaillage) # nom du fichier de maillage, sans le chemin - self.projet = self.nomFichierMaillage.split(".")[0] # nom du projet, utilisé un peu partout, équivalent au nom du fichier de maillage sans l'extension - self.echelle=obj.valeur["Echelle_du_maillage"] - self.gendof=obj.valeur["Realiser_topologie_gendof"] - self.fcarmel=obj.valeur["Resoudre_probleme"] - self.postprocess=obj.valeur["Realiser_post_traitement_aposteriori"] - self.formulation=obj.valeur["Formulation"] -#---------------------------------------------------------------------------------------- - def generBLOC_MATERIALS(self) : - """Prepare une partie du contenu du fichier de parametres (PHYS) pour le code Carmel3D (bloc MATERIALS). - Le bloc MATERIALS existe toujours ! - """ - if self.debug: - print "cle dictionnaire materconductor : %s" % self.dictMaterConductor.keys() - print "cle dictionnaire materdielectric : %s" % self.dictMaterDielectric.keys() - # constitution du bloc MATERIALS du fichier PHYS - self.texteCarmel3D+="[MATERIALS\n" - # tri alphabetique de tous les groupes de maillage associes a des sources (plus necessaire Code_Carmel3D V_2_3_1 et +, mais avant oui) - nomsGroupes = self.dictGroupes['ordreMateriauxJdC'][:] # copie de l'original, qui est une liste - nomsGroupes.sort() # tri alphabetique, avec les prefixes eventuels - if self.debug: - print "noms groupes de mailles associes a des materiaux \ - (ordre JdC puis tri)= %(v_1)s %(v_2)s" % \ - {'v_1': self.dictGroupes['ordreMateriauxJdC'], \ - 'v_2': nomsGroupes} - try: # mise à jour du fichier .phys selon les matériaux trouvés - # constitution du bloc CONDUCTOR du fichier PHYS si existe - if self.dictMaterConductor != {} : self.creaBLOC_CONDUCTOR(nomsGroupes) - # constitution du bloc DIELECTRIC du fichier PHYS si exixte - if self.dictMaterDielectric != {} : self.creaBLOC_DIELECTRIC(nomsGroupes) - # constitution du bloc ZSURFACIC du fichier PHYS si exixte - if self.dictMaterZsurfacic != {} : self.creaBLOC_ZSURFACIC(nomsGroupes) - # constitution du bloc NILMAT du fichier PHYS si exixte - if self.dictMaterNilmat != {} : self.creaBLOC_NILMAT(nomsGroupes) - # constitution du bloc ZINSULATOR du fichier PHYS si exixte - if self.dictMaterZinsulator != {} : self.creaBLOC_ZINSULATOR(nomsGroupes) - # Les blocs EM_ISOTROPIC_FILES et EM_ANISOTROPIC_FILES sont places en dernier dans le fichier PHYS - # constitution du bloc EM_ISOTROPIC_FILES du fichier PHYS si exixte - if self.dictMaterEmIso != {} and self.materiauxGroupesTousIsotropes and not self.materiauxGroupesTousHomogenes : self.creaBLOC_EMISO() # bloc isotrope si au moins un matériau isotrope et non homogene - # constitution du bloc EM_ANISOTROPIC_FILES du fichier PHYS si exixte - if self.dictMaterEmAnIso != {} and not self.materiauxGroupesTousIsotropes : self.creaBLOC_EMANISO() # bloc non isotrope si au moins un matériau non isotrope - except ValueError, err: - raise ValueError(str(err)) - - - # fin du bloc MATERIALS du fichier PHYS - self.texteCarmel3D+="]\n" - - - - def creaBLOC_CONDUCTOR(self, nomsGroupes) : - """Constitution du bloc CONDUCTOR du fichier PHYS""" - typeBloc = 'CONDUCTOR' # initialisation du type de bloc - dictProprietes = self.dictMaterConductor # initialisation du dictionnaire des proprietes du bloc - if self.debug: - print 'cles materiaux de type %(type_bloc)s = %(cle_bloc)s' % {'type_bloc': typeBloc, 'cle_bloc': dictProprietes.keys()} - for nom in nomsGroupes: # parcours des noms des groupes de maillage - if self.dictGroupes[nom]['MATERIAL'][:] in dictProprietes.keys(): # test si le nom du materiau associe est du bon type - if dictProprietes[self.dictGroupes[nom]['MATERIAL'][:]]['valeur']['PERMEABILITY']['LAW'] == 'NONLINEAR': # Erreur si ce matériau est non-linéaire - print u"ERREUR! Le matériau de nom %s associé au groupe %s doit avoir sa perméabilité (PERMEABILITY) linéaire (LINEAR) seulement." % (self.dictGroupes[nom]['MATERIAL'][:], nom) - raise ValueError, self.dictGroupes[nom]['MATERIAL'][:] + ',' + nom + tr(" : ce materiau (nom, groupe associe) doit avoir sa permeabilite (PERMEABILITY) lineaire (LINEAR) seulement.") - if dictProprietes[self.dictGroupes[nom]['MATERIAL'][:]]['valeur']['PERMEABILITY']['HOMOGENEOUS'] == 'FALSE' \ - or dictProprietes[self.dictGroupes[nom]['MATERIAL'][:]]['valeur']['CONDUCTIVITY']['HOMOGENEOUS'] == 'FALSE': # recherche si matériau non-homogène - self.materiauxGroupesTousHomogenes = False # alors tous les matériaux ne sont pas homogènes - if dictProprietes[self.dictGroupes[nom]['MATERIAL'][:]]['valeur']['PERMEABILITY']['ISOTROPIC'] == 'FALSE' \ - or dictProprietes[self.dictGroupes[nom]['MATERIAL'][:]]['valeur']['CONDUCTIVITY']['ISOTROPIC'] == 'FALSE': # recherche si matériau non-homogène - self.materiauxGroupesTousIsotropes = False # alors tous les matériaux ne sont pas isotropes - # ecriture du bloc complet - self.texteCarmel3D+=" ["+typeBloc+"\n" # debut de bloc - if usePrefix: - nomReel = self.nomReelGroupe(nom, typeBloc) - else: - nomReel = nom - self.texteCarmel3D+=" NAME "+nomReel+"\n" # ecriture du nom (reel) du groupe du maillage - self.texteCarmel3D+= dictProprietes[self.dictGroupes[nom]['MATERIAL'][:]]['texte'] # ecriture des proprietes du type associe - self.texteCarmel3D+=" ]\n" # fin de bloc - - def creaBLOC_DIELECTRIC(self, nomsGroupes) : - """Constitution du bloc DIELECTRIC du fichier PHYS""" - typeBloc = 'DIELECTRIC' # initialisation du type de bloc - dictProprietes = self.dictMaterDielectric # initialisation du dictionnaire des proprietes du bloc - if self.debug: - print 'cles materiaux de type %(type_bloc)s=%(cle_bloc)s' % {'type_bloc': typeBloc, 'cle_bloc': dictProprietes.keys()} - for nom in nomsGroupes: # parcours des noms des groupes de maillage - print "jdc materiaux= %s" %(self.dictGroupes['ordreMateriauxJdC']) - if self.dictGroupes[nom]['MATERIAL'][:] in dictProprietes.keys(): # test si le nom du materiau associe est du bon type - if dictProprietes[self.dictGroupes[nom]['MATERIAL'][:]]['valeur']['PERMEABILITY']['LAW'] == 'NONLINEAR': # Erreur si ce matériau est non-linéaire - print u"ERREUR! Le matériau de nom %s associé au groupe %s doit avoir sa perméabilité (PERMEABILITY) linéaire (LINEAR) seulement." % (self.dictGroupes[nom]['MATERIAL'][:], nom) - raise ValueError, self.dictGroupes[nom]['MATERIAL'][:] + ',' + nom + tr(" : ce materiau (nom, groupe associe) doit avoir sa permeabilite (PERMEABILITY) lineaire (LINEAR) seulement.") - if dictProprietes[self.dictGroupes[nom]['MATERIAL'][:]]['valeur']['PERMEABILITY']['HOMOGENEOUS'] == 'FALSE': # recherche si matériau non-homogène - self.materiauxGroupesTousHomogenes = False # alors tous les matériaux ne sont pas homogènes - if dictProprietes[self.dictGroupes[nom]['MATERIAL'][:]]['valeur']['PERMEABILITY']['ISOTROPIC'] == 'FALSE': # recherche si matériau non-homogène - self.materiauxGroupesTousIsotropes = False # alors tous les matériaux ne sont pas isotropes - # ecriture du bloc complet - self.texteCarmel3D+=" ["+typeBloc+"\n" # debut de bloc - self.texteCarmel3D+=" NAME "+nom+"\n" # ecriture du nom (reel) du groupe du maillage - self.texteCarmel3D+= dictProprietes[self.dictGroupes[nom]['MATERIAL'][:]]['texte'] # ecriture des proprietes du type associe - self.texteCarmel3D+=" ]\n" # fin de bloc - - def creaBLOC_ZSURFACIC(self, nomsGroupes) : - """Constitution du bloc ZSURFACIC du fichier PHYS""" - typeBloc = 'ZSURFACIC' # initialisation du type de bloc - dictProprietes = self.dictMaterZsurfacic # initialisation du dictionnaire des proprietes du bloc - if self.debug: - print 'cles materiaux de type %(type_bloc)s=%(cle_bloc)s' % {'type_bloc': typeBloc, 'cle_bloc': dictProprietes.keys()} - for nom in nomsGroupes: # parcours des noms des groupes de maillage - if self.dictGroupes[nom]['MATERIAL'][:] in dictProprietes.keys(): # test si le nom du materiau associe est du bon type - # ecriture du bloc complet - self.texteCarmel3D+=" ["+typeBloc+"\n" # debut de bloc - if usePrefix: - nomReel = self.nomReelGroupe(nom, typeBloc) - else: - nomReel = nom - self.texteCarmel3D+=" NAME "+nomReel+"\n" # ecriture du nom (reel) du groupe du maillage - self.texteCarmel3D+= dictProprietes[self.dictGroupes[nom]['MATERIAL'][:] ] # ecriture des proprietes du type associe - self.texteCarmel3D+=" ]\n" # fin de bloc - - def creaBLOC_EMISO(self) : - """constitution du bloc EM_ISOTROPIC_FILES du fichier PHYS""" - for cle in self.dictMaterEmIso.keys(): - self.texteCarmel3D+=" [EM_ISOTROPIC_FILES\n" - self.texteCarmel3D+= self.dictMaterEmIso[cle] - self.texteCarmel3D+=" ]\n" - - def creaBLOC_EMANISO(self) : - """constitution du bloc EM_ANISOTROPIC_FILES du fichier PHYS""" - for cle in self.dictMaterEmAnIso.keys(): - self.texteCarmel3D+=" [EM_ANISOTROPIC_FILES\n" - self.texteCarmel3D+= self.dictMaterEmAnIso[cle] - self.texteCarmel3D+=" ]\n" - - def creaBLOC_ZINSULATOR(self, nomsGroupes) : - """Constitution du bloc ZINSULATOR du fichier PHYS""" - typeBloc = 'ZINSULATOR' # initialisation du type de bloc - dictProprietes = self.dictMaterZinsulator # initialisation du dictionnaire des proprietes du bloc - if self.debug: print 'cles materiaux de type '+typeBloc+'=', dictProprietes.keys() - for nom in nomsGroupes: # parcours des noms des groupes de maillage - if self.dictGroupes[nom]['MATERIAL'][:] in dictProprietes.keys(): # test si le nom du materiau associe est du bon type - # ecriture du bloc complet - self.texteCarmel3D+=" ["+typeBloc+"\n" # debut de bloc - if usePrefix: - nomReel = self.nomReelGroupe(nom, typeBloc) - else: - nomReel = nom - self.texteCarmel3D+=" NAME "+nomReel+"\n" # ecriture du nom (reel) du groupe du maillage - self.texteCarmel3D+= dictProprietes[self.dictGroupes[nom]['MATERIAL'][:] ] # ecriture des proprietes du type associe - self.texteCarmel3D+=" ]\n" # fin de bloc - - def creaBLOC_NILMAT(self, nomsGroupes) : - """Constitution du bloc NILMAT du fichier PHYS""" - typeBloc = 'NILMAT' # initialisation du type de bloc - dictProprietes = self.dictMaterNilmat # initialisation du dictionnaire des proprietes du bloc - if self.debug: - print 'cles materiaux de type %(type_bloc)s=%(cle_bloc)s' % {'type_bloc': typeBloc, 'cle_bloc': dictProprietes.keys()} - for nom in nomsGroupes: # parcours des noms des groupes de maillage - if self.dictGroupes[nom]['MATERIAL'][:] in dictProprietes.keys(): # test si le nom du materiau associe est du bon type - # ecriture du bloc complet - self.texteCarmel3D+=" ["+typeBloc+"\n" # debut de bloc - if usePrefix: - nomReel = self.nomReelGroupe(nom, typeBloc) - else: - nomReel = nom - self.texteCarmel3D+=" NAME "+nomReel+"\n" # ecriture du nom (reel) du groupe du maillage - self.texteCarmel3D+= dictProprietes[self.dictGroupes[nom]['MATERIAL'][:]] # ecriture des proprietes du type associe - self.texteCarmel3D+=" ]\n" # fin de bloc - -#---------------------------------------------------------------------------------------- - def generBLOC_SOURCES(self): - """constitution du bloc SOURCES du fichier PHYS""" - self.texteCarmel3D+="[SOURCES\n" -# # tri alphabetique de tous les groupes de maillage associes a des sources - nomsGroupes = self.dictGroupes['ordreSourcesJdC'][:] - nomsGroupes.sort() - # print "RESULTAT APRES FUSION self.dictGroupes= %s" %(self.dictGroupesnomsGroupes) - - if self.debug: - print 'noms groupes de mailles associes a des sources \ - (ordre JdC puis tri)=%(g_maillage_orig)s %(g_maillage_trie)s' % \ - {'g_maillage_orig': self.dictGroupes['ordreSourcesJdC'], \ - 'g_maillage_trie': nomsGroupes} - if self.dictSourceStInd != {}: self.creaBLOC_STRANDED_INDUCTOR(nomsGroupes) - if self.dictSourceEport != {}: self.creaBLOC_EPORT(nomsGroupes) - if self.dictSourceHport != {}: self.creaBLOC_HPORT(nomsGroupes) - # fin du bloc SOURCES du fichier PHYS - self.texteCarmel3D+="]\n" - - - def creaBLOC_STRANDED_INDUCTOR(self, nomsGroupes) : - """constitution du bloc STRANDED_INDUCTOR du fichier PHYS""" - if self.debug: - print 'cles sources STRANDED_INDUCTOR= %s' % self.dictSourceStInd.keys() - typeBloc = 'STRANDED_INDUCTOR' -# print "liste des NOM=%s" %(nom) - for nom in nomsGroupes: # parcours des noms des groupes de maillage - if self.dictGroupes[nom]['SOURCE'][:] in self.dictSourceStInd.keys(): # test si le nom de la source associee est un inducteur bobine - # ecriture du bloc de l'inducteur bobine - self.texteCarmel3D+=" [STRANDED_INDUCTOR\n" # debut de bloc - self.texteCarmel3D+=" NAME "+nom+"\n" # ecriture du nom (reel) du groupe du maillage - self.texteCarmel3D+= self.dictSourceStInd[self.dictGroupes[nom]['SOURCE'][:] ] # ecriture des proprietes de l'inducteur bobine - self.texteCarmel3D+=" ]\n" # fin de bloc - - def creaBLOC_EPORT(self, nomsGroupes) : - """constitution du bloc EPORT du fichier PHYS""" - if self.debug: - print 'cles sources EPORT= %s' % self.dictSourceEport.keys() - typeBloc = 'EPORT' - for nom in nomsGroupes: # parcours des noms des groupes de maillage - if self.dictGroupes[nom]['SOURCE'][:] in self.dictSourceEport.keys(): # test si le nom de la source associee est un port electrique - # ecriture du bloc du port electrique - self.texteCarmel3D+=" [EPORT\n" # debut de bloc - if usePrefix: - nomReel = self.nomReelGroupe(nom, typeBloc) - else: - nomReel = nom - self.texteCarmel3D+=" NAME "+nomReel+"\n" # ecriture du nom (reel) du groupe du maillage - self.texteCarmel3D+= self.dictSourceEport[self.dictGroupes[nom]['SOURCE'][:] ] # ecriture des proprietes du port electrique - self.texteCarmel3D+=" ]\n" # fin de bloc - - def creaBLOC_HPORT(self, nomsGroupes) : - """constitution du bloc HPORT du fichier PHYS""" - if self.debug: - print 'cles sources HPORT= %s' % self.dictSourceHport.keys() - typeBloc = 'HPORT' - for nom in nomsGroupes: # parcours des noms des groupes de maillage - if self.dictGroupes[nom]['SOURCE'][:] in self.dictSourceHport.keys(): # test si le nom de la source associee est un port magnetique - # ecriture du bloc du port magnetique - self.texteCarmel3D+=" [HPORT\n" # debut de bloc - if usePrefix: - nomReel = self.nomReelGroupe(nom, typeBloc) - else: - nomReel = nom - self.texteCarmel3D+=" NAME "+nomReel+"\n" # ecriture du nom (reel) du groupe du maillage - self.texteCarmel3D+= self.dictSourceHport[self.dictGroupes[nom]['SOURCE'][:]] # ecriture des proprietes du port magnetique - self.texteCarmel3D+=" ]\n" # fin de bloc - - def generSTRANDED_INDUCTOR_GEOMETRY(self, obj): - """preparation du bloc STRANDED_INDUCTOR_GEOMETRY""" - - texte="" - self.direction=obj.valeur["Direction"] - self.section=obj.valeur["Section"] - self.forme=obj.valeur["Forme"] -# texte+="\n%s" %(self.domaine) - - if self.forme=="Circulaire" : self.generCIRCULAR_STRANDED_INDUCTOR_GEOMETRY(obj) - else: - texte+="\n1" - texte+="\n%s" % ' '.join(map(str, self.direction)) - texte+="\n%g" % (self.section) - self.dictStrand[obj.getSdname()]=texte - if self.debug: - print texte - - def generCIRCULAR_STRANDED_INDUCTOR_GEOMETRY(self, obj): - texte="" - self.centre=obj.valeur["Centre"] - texte+="\n2" - texte+="\n%s" % ' '.join(map(str,self.direction)) - texte+="\n%s" % ' '.join(map(str, self.centre)) - texte+="\n%g" % (self.section) - self.dictStrand[obj.getSdname()]=texte - if self.debug: - print texte - - - def creaBLOC_STRANDED_INDUCTOR_GEOMETRY(self, nomsGroupes): - """Ecriture de chaque inducteur bobiné dans le in.gendof. Gestion des inducteurs en un ou plusieurs morceaux, avec le domaine. - Attention! L'argument nomSGroupes n'est pas utile ici. A supprimer. Routine à renommer aussi. - """ - if self.debug: - print 'dictGroupes=', self.dictGroupes - print 'cles sources STRANDED_INDUCTOR_GEOMETRY= %s' % self.dictStrand.keys() - print "nomsGroupes=%s" %(nomsGroupes) - nomsSources=self.dictGroupes['ordreDomaineJdC'] - nomsSources.sort() # tri alphabétique des inducteurs, réclamé par gendof.exe - if self.debug: print"nomsSources=%s" %nomsSources - for nom in nomsSources: - if self.debug: print "nomSource courant=",nom - if self.dictGroupes[nom].has_key('SOURCE'): - if self.dictGroupes[nom]['SOURCE'] not in self.dictPort : - if not self.dictGroupes[nom].has_key('DOMAINE'): raise ValueError, nom + tr(" : il manque un Domaine a cet inducteur.") - self.texteCarmel3D_INGEND2+="\n%s" %(self.dictGroupes[nom]['DOMAINE']) # écriture du nom de domaine - else: - if not self.dictGroupes[nom].has_key('DOMAINE'): raise ValueError, nom + tr(" : il manque un Domaine a cet inducteur.") - self.texteCarmel3D_INGEND2+="\n%s" %(self.dictGroupes[nom]['DOMAINE']) # écriture du nom de domaine - if self.dictGroupes[nom].has_key('STRAND'): # inducteur en un seul morceau - if not self.dictGroupes[nom].has_key('DOMAINE'): raise ValueError, nom + tr(" : il manque un Domaine a cet inducteur.") - strand = self.dictGroupes[nom]['STRAND'] - if self.debug: print "un seul morceau : nomStrand courant=", strand - self.texteCarmel3D_INGEND2+= self.dictStrand[strand] - if self.dictGroupes[nom].has_key('LISTE'): # inducteur en plusieurs morceaux - listeStrand = self.dictGroupes[nom]['LISTE'] # liste des groupes de maillage composant l'inducteur, ou groupe tout seul si inducteur en un seul morceau - for strand in listeStrand: - #strand = strand.replace("'", "") # suppression des guillemets simples - if self.debug: print "plusieurs morceaux : nomStrand courant=",strand - if self.debug: print "self.dictGroupes[strand]=", self.dictGroupes[strand] - self.texteCarmel3D_INGEND2+= self.dictStrand[self.dictGroupes[strand]['STRAND'] ] - - def creaBLOC_PORTS_GEOMETRY(self, nomsGroupes): - if self.debug: - print "self.dictSourceEport=", self.dictSourceEport - print "self.dictSourceHport=", self.dictSourceHport - nomsSources=self.dictGroupes['ordreDomaineJdC'] - nomsSources.sort() # tri alphabétique des inducteurs, réclamé par gendof.exe - - for nom in nomsSources: - port=self.dictGroupes[nom]['SOURCE'] - if self.dictGroupes[nom]['SOURCE'] in self.dictPort : - self.texteCarmel3D_INGEND2+="\n%s" %(self.dictGroupes[nom]['DOMAINE']) # écriture du nom de domaine - port=self.dictGroupes[nom]['SOURCE'] - - if self.dictPort[port].has_key('EPORT'):# inducteur en un seul morceau - if self.dictPort[port]['EPORT']=="VOLTAGE": - self.texteCarmel3D_INGEND2+= "\n1" - else: - self.texteCarmel3D_INGEND2+= "\n2" - if self.dictPort[port].has_key('HPORT'):# inducteur en un seul morceau - if self.dictPort[port]['HPORT']=="VOLTAGE": - self.texteCarmel3D_INGEND2+= "\n1" - else: - self.texteCarmel3D_INGEND2+= "\n2" - -#------------------------------------- -# Methodes utilitaires -# ------------------------------------ - def formateCOMPLEX(self,nbC): - """prise en compte des differentes formes de description d un nombre complexe - 3 formats possibles : 2 listes (anciennement tuples?) et 1 nombre complexe - """ - if self.debug: - print "formatage" - print "type : %(type_nb_c)s pour %(nb_c)s" % {'type_nb_c': type(nbC), 'nb_c': nbC} - nbformate ="" - if isinstance(nbC,(tuple,list)): - if nbC[0] == "'RI'" : - nbformate = "COMPLEX " + str(nbC[1])+" "+str(nbC[2]) - if nbC[0] == "'MP'" : - nbformate = "POLAR " + str(nbC[1])+" "+str(nbC[2]) - else: - nbformate = "COMPLEX " + str(nbC.real)+" "+str(nbC.imag) - if self.debug: - print "nbformate : %s" % nbformate - return nbformate - - def nomReelGroupe(self, nom, typeBloc=None): - """Calcule et retourne le nom reel du groupe de maillage donne en entree, - en tenant compte de l'utilisation de prefixes ou pas, et cela pour le type - de bloc du fichier PHYS specifie. - Cette routine verifie aussi, en cas d'utilisation de prefixes, si le prefixe est en adequation avec le type du bloc. - """ - from string import join - if self.debug: - print "nom groupe original : %(nom)s avec usePrefix=%(use_prefix)s devient...", \ - {'nom': nom, 'use_prefix': str(usePrefix)} - nomReel= None # nom affiche dans le fichier PHYS, sans prefixe a priori - if usePrefix: - # suppression du prefixe si present - partiesNom = nom.split(sepNomGroupeMaille) # separation du nom du groupe en parties - # les tests suivants ne generent une erreur que si le prefixe est obligatoire - if len(partiesNom) < 2: # test d'erreur, pas de separateur donc nom incorrect, i.e. sans prefixe c'est sur - print "ERREUR! ce groupe de maille (%s) n'a pas de prefixe \ - indiquant le type de materiau ou de source associee" % (nom, ) - elif partiesNom[0] not in listePrefixesGroupeMaille: # prefixe non defini - print "ERREUR! ce groupe de maille (%s) n'a pas de prefixe valable" % (nom, ) - else: - # verification de l'adequation du prefixe avec le type de bloc demande, si fourni - if typeBloc is not None: - if typeBloc not in dictPrefixesGroupeMaille: # test validite de typeBloc, devant etre une cle du dictionnaire - print "ERREUR! ce type de bloc (%s) n'est pas valable" % (str(typeBloc), ) - elif partiesNom[0] not in dictPrefixesGroupeMaille[typeBloc]: # pas de prefixe correct pour ce type de bloc - print "ERREUR! ce groupe de maille (%(nom)s) n'a pas \ - le prefixe correct pour etre associe a un type %(type_bloc)s", \ - {'nom': nom, 'type_bloc': str(typeBloc)} - else: # c'est bon - nomReel = join(partiesNom[1:], sepNomGroupeMaille) # reconstruction du nom du groupe sans prefixe complet - if self.debug: - print "ce groupe de maille (%(nom)s) a un prefixe qui \ - est supprime automatiquement pour devenir : %(nom_reel)s", \ - {'nom': nom, 'nom_reel': nomReel} - else: # c'est bon - nomReel = join(partiesNom[1:], sepNomGroupeMaille) # reconstruction du nom du groupe sans prefixe complet - if self.debug: - print "ce groupe de maille (%(nom)s) a un prefixe qui \ - est supprime automatiquement pour devenir : %(nom_reel)s", \ - {'nom': nom, 'nom_reel': nomReel} - if self.debug: - print "... %s", nomReel - return nomReel diff --git a/generator.old/generator_CARMEL3D_temporel.py b/generator.old/generator_CARMEL3D_temporel.py deleted file mode 100644 index 05a3d85f..00000000 --- a/generator.old/generator_CARMEL3D_temporel.py +++ /dev/null @@ -1,877 +0,0 @@ -# -*- coding: utf-8 -*- -# Copyright (C) 2007-2017 EDF R&D -# -# 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 -# -"""Ce module contient le plugin generateur de fichier au format Code_Carmel3D pour EFICAS. -""" - -import xml.etree.cElementTree as ET -import traceback -import types,string,re,os -from Extensions.i18n import tr -from generator_python import PythonGenerator - -# types de problemes -HARMONIC = 'HARMONIC' # probleme frequentiel -TIME_DOMAIN = 'TIME_DOMAIN' # probleme temporel - -# nom du plugin, utilisé dans entryPoint et generMACRO_ETAPE() -nomPlugin = 'CARMEL3DTV0' - -def entryPoint(): - """ - Retourne les informations necessaires pour le chargeur de plugins - Ces informations sont retournees dans un dictionnaire - """ - return { - # Le nom du plugin - 'name' : nomPlugin, - # La factory pour creer une instance du plugin - 'factory' : CARMEL3DTV0Generator, - } - - - -class CARMEL3DTV0Generator(PythonGenerator): - """ - Ce generateur parcourt un objet de type JDC et produit - un texte au format eficas et - un texte au format attendu par le code Code_Carmel3D (fichier '.PHYS') - - """ - # Les extensions de fichier permis? - extensions=('.comm',) - -#---------------------------------------------------------------------------------------- - def gener(self,obj,format='brut',config=None): - - self.initDico() - - #self.debug = True - - # Cette instruction genere le contenu du fichier de commandes (persistance) - self.text=PythonGenerator.gener(self,obj,format) - - if self.debug: - print "self.text = %s" % self.text - - # Cette instruction genere le contenu du fichier de parametres pour le code Carmel3D - # si le jdc est valide (sinon cela n a pas de sens) - if obj.isValid() : - try : - # constitution du bloc VERSION du fichier PHYS (existe toujours) - self.generBLOC_VERSION(obj) - - except ValueError, err: - raise ValueError(str(err)) - - return self.text - - - - -#---------------------------------------------------------------------------------------- -# initialisations -#---------------------------------------------------------------------------------------- - - def initDico(self) : - self.texteCarmel3D="" - self.texteCarmel3D_SH="" - self.debug = True # affichage de messages pour deboguage (.true.) ou non - self.dicoEtapeCourant=None - self.dicoMCFACTCourant=None - self.dicoCourant=None - self.dictGroupes = {} # association des noms de groupes de maillage avec les noms de materiaux ou de sources, en sauvegardant l'ordre du JdC en separant les groupes associes a des materiaux de ceux associes a des sources - self.dictMacroGroupes = {} # macro-groupe et leurs propriétés - self.listSymetrie=[] - self.dictMouvement= {'ordre':[]} # dictionnaire contenant les mouvements, avec liste incluse pour l'ordre - self.nombreMouvements = 0 # nombre de mouvements définis, servant de compteur aussi - self.dictMaterial={} - self.dictSource={} - self.dictStrand={} - self.dictGroupeMilieux={"ordreSource":[], "ordreId":[]} - self.dictDomaine={} - # Parametre du maillage - self.identification = "" - self.fichierMaillage = "" - self.echelleMaillage = "" - # Parametre de Precision - self.precond="" - self.precisionLineaire="" - self.kEpsilonDistance="" - self.kdistanceRef="" - self.nbIterationMax="" - self.methodeNonLineaire = "" - self.kEpsilonNonLinearite="" - self.kCoefficientRelaxation="" - self.jauge="" - self.NBoucleTemps="" - self.dt="" - # Paramètres divers - self.typeSolveur = "" # type de solveur, linéaire (Solveur_lineaire) ou non-linéaire (Solveur_non_lineaire) - #Post traitement - self.carteChamp="" # liste des pas de temps demandés lors du post-traitement des cartes de champ - self.carteCourantInduit="" # liste des pas de temps demandés lors du post-traitement des cartes de courants induits - self.carteForce="" # liste des pas de temps demandés lors du post-traitement des cartes de force - self.post_global = [] # liste des grandeurs globales demandées lors du post-traitement - - # on force le probleme a etre frequentiel, seul possible en l'etat des choses - self.problem = HARMONIC - - def indent(self, elem, level=0, more_sibs=False, espace=4*' '): - """Transformation du XML créé par le module interne xml.etree.ElementTree afin d'écrire les indentations et retours à la ligne corrects. - D'après un script original de Fredrik Lundh en 2004 (http://effbot.org/zone/element-lib.htm#prettyprint), - modifié par Joshua Richardson en 2012 (http://stackoverflow.com/questions/749796/pretty-printing-xml-in-python) - et par Loic Chevallier en 2014 (ajout du reglage de l'indentation). - L'indentation est de 4 espaces par défaut (cf. argument optionel : espace) - Utilisation : self.indent(root), avant écriture dans un fichier de root = ET.Element("configuration") ou de tree = ET.ElementTree(root) - où ET = xml.etree.ElementTree - """ - i = "\n" - if level: - i += (level-1) * espace - num_kids = len(elem) - if num_kids: - if not elem.text or not elem.text.strip(): - elem.text = i + espace - if level: - elem.text += espace - count = 0 - for kid in elem: - self.indent(kid, level+1, count < num_kids - 1) - count += 1 - if not elem.tail or not elem.tail.strip(): - elem.tail = i - if more_sibs: - elem.tail += espace - else: - if level and (not elem.tail or not elem.tail.strip()): - elem.tail = i - if more_sibs: - elem.tail += espace - -#---------------------------------------------------------------------------------------- -# ecriture -#---------------------------------------------------------------------------------------- - - def writeDefault(self,fn) : - """Ecrit les fichiers de parametres et le fichier d'execution pour le code Carmel3D""" - - file = fn[:fn.rfind(".")] # emplacement du ficher .comm (chemin complet) - namefile=os.path.basename(file) # nom du fichier.comm - repertory=os.path.dirname(file) # répertoire contenant le fichier .comm (emplacement absolu) - - # correspondances globales - correspondance_booleen = {'oui':'true', 'non':'false'} - - fileXML = os.path.join(repertory, 'configuration.xml') # nom du fichier de configuration XML (chemin complet) - if self.debug: - print "\necriture du fichier XML : ", fileXML - print "self.dictMaterial = ",self.dictMaterial - print "self.dictSource = ",self.dictSource - print "self.dictGroupes = ",self.dictGroupes - print "self.dictMacroGroupes = ",self.dictMacroGroupes - - root = ET.Element("configuration") - - #Bloc - Maillage = ET.SubElement(root, "Maillage") - identification = ET.SubElement(Maillage, "identification") - identification.text = self.identification - fichierMaillage = ET.SubElement(Maillage, "fichierMaillage") - fichierMaillage.text = self.fichierMaillage - echelleMaillage = ET.SubElement(Maillage, "echelleMaillage") - correspondance_echelleMaillage = {"Metre":1.0, "Millimetre":1.0e-3} - echelleMaillage.text = "%f" % (correspondance_echelleMaillage[self.echelleMaillage], ) - - #Bloc - ParametrePrecision = ET.SubElement(root, "ParametrePrecision") - TypeSolveurLineaire = ET.SubElement(ParametrePrecision, "TypeSolveurLineaire") - if self.precond=="Crout": - TypeSolveurLineaire.text = "1" - if self.precond=="Jacobi": - TypeSolveurLineaire.text = "2" - if self.precond=="MUMPS": - TypeSolveurLineaire.text = "3" - kEpsilonGCP = ET.SubElement(ParametrePrecision, "kEpsilonGCP") - kEpsilonGCP.text = "%s" %(self.kEpsilonGCP) - nbIterationMax = ET.SubElement(ParametrePrecision, "nbIterationMax") - nbIterationMax.text = "%s" %(self.nbIterationMax) - if self.typeSolveur == 'Solveur_non_lineaire': # écriture des paramètres du solveur non-linéaire seulement si défini dans l'étude - methodeNonLineaire = ET.SubElement(ParametrePrecision, "methodeNonLineaire") - methodeNonLineaire.text = "%s" %(self.methodeNonLineaire) - kEpsilonNonLinearite = ET.SubElement(ParametrePrecision, "kEpsilonNonLinearite") - kEpsilonNonLinearite.text = "%s" %(self.kEpsilonNonLinearite) - kCoefficientRelaxation = ET.SubElement(ParametrePrecision, "kCoefficientRelaxation") - kCoefficientRelaxation.text = "%s" %(self.kCoefficientRelaxation) - kEpsilonDistance = ET.SubElement(ParametrePrecision, "kEpsilonDistance") - kEpsilonDistance.text = "%s" %(self.kEpsilonDistance) - kdistanceRef = ET.SubElement(ParametrePrecision, "kdistanceRef") - kdistanceRef.text = "%s" %(self.kdistanceRef) - jauge = ET.SubElement(ParametrePrecision, "jauge") - jauge.text = "%s" %(correspondance_booleen[self.jauge], ) - NBoucleTemps = ET.SubElement(ParametrePrecision, "NBoucleTemps") - NBoucleTemps.text = "%s" %(self.NBoucleTemps) - dt = ET.SubElement(ParametrePrecision, "dt") - dt.text = "%s" %(self.dt) - - #Bloc - i=0 - j=0 - p=0 - k=0 - listeMilieux = [] # liste des milieux, dans l'ordre de création - Milieux=ET.SubElement(root, "Milieux") # création du bloc ... - for nom in self.dictGroupes: # on parcoure tous les groupes MESHGROUP - if self.dictGroupes[nom].has_key('MATERIAL') \ - or self.dictGroupes[nom].has_key('SOURCE') \ - or self.dictGroupes[nom].has_key('AIMANT') \ - or self.dictGroupes[nom].has_key('STRANDED_INDUCTOR_GEOMETRY') : # si MESHGROUP ou MACRO_GROUPE associé à au moins un matériau, source ou géométrie d'inducteur bobiné, c'est un milieu - milieu=ET.SubElement(Milieux,"milieu" ) # création d'un nouveau milieu - listeMilieux.append(nom) # mise à jour de la liste des milieux - i = i+1 # incrément du numéro de milieu - self.dictGroupes[nom]['idMilieu'] = i # affectation de l'id à ce groupe - milieu.set("id", "%g" % (i, ) ) # ajout de l'attribut id, inutilisé - milieu.set("name", "%s" % (nom, ) ) # ajout de l'attribut name, inutilisé - nomGroupeMaillage = ET.SubElement(milieu, "nomGroupeMaillage") # nom du groupe de maillage - nomGroupeMaillage.text = nom - if self.dictGroupes[nom].has_key('MATERIAL'): # matériau trouvé pour ce milieu - material = self.dictGroupes[nom]['MATERIAL'] # on récupère le nom de la propriété du matériau, clé de self.dictMaterial - permeabiliteLineaire=ET.SubElement(milieu, "permeabiliteLineaire") - permeabiliteLineaire.text="%s"%(self.dictMaterial[material]["PERMEABILITY"]["VALUE"]) - if self.dictMaterial[material]["PERMEABILITY"]["LAW"]=="NONLINEAR": - coefficientsMarrocco=ET.SubElement(milieu, "coefficientsMarrocco") - epsilon = self.dictMaterial[material]["PERMEABILITY"]["EPSILON"] - c = self.dictMaterial[material]["PERMEABILITY"]["C"] - alpha = self.dictMaterial[material]["PERMEABILITY"]["ALPHA"] - tau = self.dictMaterial[material]["PERMEABILITY"]["TAU"] - coefficientsMarrocco.text = '%g, %g, %g, %g' % (epsilon, c, alpha, tau) - if self.dictMaterial[material].has_key('CONDUCTIVITY'): - conductivite=ET.SubElement(milieu, "conductivite") - conductivite.text="%s" %(self.dictMaterial[material]["CONDUCTIVITY"]["VALUE"]) - if self.dictMaterial[material].has_key('AIMANT'): - norme=ET.SubElement(milieu, "norme") - norme.text="%s" %(self.dictMaterial[material]["AIMANT"]["VALUE"]) - if self.dictGroupes[nom].has_key('STRANDED_INDUCTOR_GEOMETRY'): # géométrie d'inducteur bobiné trouvée pour ce milieu - strand=self.dictGroupes[nom]['STRANDED_INDUCTOR_GEOMETRY'] # on récupère le nom de la géométrie d'inducteur bobiné, clé de self.dictStrand - axe = ET.SubElement(milieu, "axe") - axe.text= "%s" % ','.join(map(str,self.dictStrand[strand]["Direction"])) - if self.dictStrand[strand]["Forme"]=="Circulaire": - coordonneesPolaires=ET.SubElement(milieu, "coordonneesPolaires") - coordonneesPolaires.text="true" - origineReperePolaire=ET.SubElement(milieu, "origineReperePolaire") - origineReperePolaire.text= "%s" % ','.join(map(str,self.dictStrand[strand]["Centre"])) - section=ET.SubElement(milieu, "section") - section.text="%g" %(self.dictStrand[strand]["Section"], ) - if self.dictGroupes[nom].has_key('SOURCE'): # source trouvée pour ce milieu - Source = self.dictGroupes[nom]['SOURCE'] # on récupère le nom de la source, clé de self.dictSource - self.dictSource[Source]['milieux'].append(nom) # ajout du nom du groupe à cette source - if self.dictSource[Source].has_key('STRANDED_INDUCTOR'): - nbSpires=ET.SubElement(milieu, "nbSpires") - nbSpires.text="%g" %(self.dictSource[Source]["STRANDED_INDUCTOR"]["NTURNS"]) - - #Bloc ... - ConditionsLimitesChamps = ET.SubElement(root, "ConditionsLimitesChamps") - for nomCondition in self.dictGroupes: - if self.dictGroupes[nomCondition].has_key('CONDITION_LIMITE'): # condition aux limites associée à ce groupe, hors symétrie et mouvement - if self.dictGroupes[nomCondition].has_key('LISTE'): # MACRO_GROUPE - for i in range(len(self.dictGroupes[nomCondition]['LISTE'])): - conditionLimite = ET.SubElement(ConditionsLimitesChamps, "conditionLimitesChamps") - Type=ET.SubElement(conditionLimite,"type" ) - Type.text=self.dictGroupes[nomCondition]["CONDITION_LIMITE"] - GroupeNoeud=ET.SubElement(conditionLimite, "groupeNoeud") - GroupeNoeud.text="%s" %(self.dictGroupes[nomCondition]['LISTE'][i]) - else: # MESHGROUP - conditionLimite = ET.SubElement(ConditionsLimitesChamps, "conditionLimitesChamps") - Type=ET.SubElement(conditionLimite,"type" ) - Type.text=self.dictGroupes[nomCondition]["CONDITION_LIMITE"] - GroupeNoeud=ET.SubElement(conditionLimite, "groupeNoeud") - GroupeNoeud.text="%s" %(nomCondition) - - for i in range(len(self.listSymetrie)): # symétries, définies dans le bloc des conditions aux limites - conditionLimite = ET.SubElement(ConditionsLimitesChamps, "conditionLimitesChamp") - Type=ET.SubElement(conditionLimite,"type" ) - Type.text="%s" %(self.listSymetrie[i]["Type"]) - GroupeNoeud=ET.SubElement(conditionLimite, "groupeNoeud") - GroupeNoeud.text="%s" %(self.listSymetrie[i]["Face1"]) - if 'Face2' in self.listSymetrie[i] : - GroupeNoeud2=ET.SubElement(conditionLimite, "groupeNoeud2") - GroupeNoeud2.text="%s" %(self.listSymetrie[i]["Face2"]) - if 'Mouvement_associe' in self.listSymetrie[i]: - MouvementAssocie=ET.SubElement(conditionLimite, "mouvementAssocie") - nomMouvementAssocie = self.listSymetrie[i]['Mouvement_associe'].nom # on récupère le nom du mouvement associé, car on a stocké le concept tout entier - MouvementAssocie.text="%i"%(self.dictMouvement[nomMouvementAssocie]['ordre'], ) - if 'Groupe_Points' in self.listSymetrie[i] : - GroupePoints=ET.SubElement(conditionLimite, "groupePoints") - GroupePoints.text="%s" %(self.listSymetrie[i]['Groupe_Points']) - - #Bloc ... - TermeSourceElectrique=ET.SubElement(root, "TermeSourceElectrique") - i=0 # ? - if self.debug: print 'self.dictSource = ', self.dictSource - for source in self.dictSource.keys(): # parcours des sources - if len(self.dictSource[source]['milieux']) > 0: # on continue si au moins un groupe de maillage, i.e., milieux est associé à cette source - if self.dictSource[source].has_key('STRANDED_INDUCTOR'): # inducteur bobiné - inducteur=ET.SubElement(TermeSourceElectrique, "inducteur") - listeMilieux=ET.SubElement(inducteur, "listeMilieux") # création de la liste des milieux - idListeMilieux = [] # indices des milieux concernés - for milieu in self.dictSource[source]['milieux']: # construction de la liste des milieux - idListeMilieux.append(self.dictGroupes[milieu]['idMilieu']) - listeMilieux.text = "%s" % ','.join(map(str,idListeMilieux)) - if self.dictSource[source]["STRANDED_INDUCTOR"]["TYPE"]=="CURRENT": # source de type courant imposé - couplageTension=ET.SubElement(inducteur, "couplageTension") - couplageTension.text = "false" - courant=ET.SubElement(inducteur, "courant") - if self.dictSource[source]["Signal"]=="WAVEFORM_CONSTANT": - courant.text="%g" %(self.dictSource[source]["WAVEFORM_CONSTANT"]["AMPLITUDE"]) - if self.dictSource[source]["Signal"]=="WAVEFORM_SINUS": # écriture des 3 paramètres avec attribut spécial - amplitude = self.dictSource[source]["WAVEFORM_SINUS"]["AMPLITUDE"] - frequence = self.dictSource[source]["WAVEFORM_SINUS"]["FREQUENCY"] - phase = self.dictSource[source]["WAVEFORM_SINUS"]["PHASE"] - courant.text="%g, %g, %g" % (amplitude, frequence, phase) - courant.set('forme', 'sinus') # attribut forme="sinus" - if self.dictSource[source]["STRANDED_INDUCTOR"]["TYPE"]=="VOLTAGE": # source de type tension imposée - couplageTension=ET.SubElement(inducteur, "couplageTension") - couplageTension.text = "true" - tension=ET.SubElement(inducteur, "tension") - if self.dictSource[source]["Signal"]=="WAVEFORM_CONSTANT": - tension.text="%g" %(self.dictSource[source]["WAVEFORM_CONSTANT"]["AMPLITUDE"]) - if self.dictSource[source]["Signal"]=="WAVEFORM_SINUS": # écriture des 3 paramètres avec attribut spécial - amplitude = self.dictSource[source]["WAVEFORM_SINUS"]["AMPLITUDE"] - frequence = self.dictSource[source]["WAVEFORM_SINUS"]["FREQUENCY"] - phase = self.dictSource[source]["WAVEFORM_SINUS"]["PHASE"] - tension.text="%g, %g, %g" % (amplitude, frequence, phase) - tension.set('forme', 'sinus') # attribut forme="sinus" - if self.dictSource[source]["STRANDED_INDUCTOR"].has_key('Resistance'): - resistance=ET.SubElement(inducteur, "resistance") - resistance.text="%g" %(self.dictSource[source]["STRANDED_INDUCTOR"]['Resistance']) - - #definir Terme Source Magnetique - #definirTermeSourceMagnetique=ET.SubElement(root, "definirTermeSourceMagnetique") - #nombreTermeSourceMagnetique=ET.SubElement(definirTermeSourceMagnetique, "nombreTermeSourceMagnetique") - #nombreTermeSourceMagnetique.text="0" - - #definir Aimants - #definirAimants=ET.SubElement(root, "definirAimants") - #nombreAimants=ET.SubElement(definirAimants, "nombreAimants") - #nombreAimants.text="0" - - #Bloc ... - i = 0 - Mouvements=ET.SubElement(root, "Mouvements") - for nom in self.dictMouvement['ordre']: # parcours de la liste des noms de mouvement définis, dans l'ordre - i = i+1 - mouvement = ET.SubElement(Mouvements, "mouvement") # création de ce mouvement - mouvement.set("id", "%g" % (i, ) ) # ajout de l'attribut id, inutilisé - mouvement.set("name", nom ) # ajout de l'attribut name, inutilisé - milieuGlissement = ET.SubElement(mouvement, "milieuGlissement") - nomMilieuGlissement = self.dictMouvement[nom]['valeurs']['Milieu_glissement'].nom # concept stocké -> nom du concept - milieuGlissement.text="%i" % (self.dictGroupes[nomMilieuGlissement]['idMilieu'], ) # numéro du milieu défini par son nom, selon tableaux remplis précédemment - surfaceGlissement = ET.SubElement(mouvement, "surfaceGlissement") - surfaceGlissement.text= self.dictMouvement[nom]['valeurs']['Surface_glissement'].nom # concept stocké -> nom du concept - deltaMaillage = ET.SubElement(mouvement, "deltaMaillage") - deltaMaillage.text="%g" % (self.dictMouvement[nom]['valeurs']['Delta_maillage'], ) - nbPermutPas = ET.SubElement(mouvement, "nbPermutPas") - nbPermutPas.text="%i" % (self.dictMouvement[nom]['valeurs']['Nombre_pas_permutation'], ) - axeRotation = ET.SubElement(mouvement, "axeRotation") - axeRotation.text= self.dictMouvement[nom]['valeurs']['Axe_rotation'] - - #definir Force Couple - #definirForceCouple=ET.SubElement(root, "definirForceCouple") - #nombreForceCouple=ET.SubElement(definirForceCouple, "nombreForceCouple") - #nombreForceCouple.text="0" - - #bloc - i = 0 # compteur de spires - spiresExploratrices = False # pas de spires exploratrices a priori - for nom in self.dictGroupes.keys(): # recherche des spires exploratrices définies dans les MESHGROUP - if self.dictGroupes[nom].has_key('Spire_Exploratrice'): - spiresExploratrices = True - if spiresExploratrices: # on a trouvé au moins une spire exploratrice - SpiresExploratrices=ET.SubElement(root, "SpiresExploratrices") # création du bloc XML adéquat - for nom in self.dictGroupes.keys(): # recherche des spires exploratrices définies dans les MESHGROUP - if self.dictGroupes[nom].has_key('Spire_Exploratrice'): - spire = ET.SubElement(SpiresExploratrices, "spireExploratrice") # création du bloc XML pour cette spire - spire.text = nom # le nom du groupe de noeud est directement écrit - i = i+1 # incrément du numéro de spire - spire.set("id", "%g" % (i, ) ) # ajout de l'attribut id, inutilisé - spire.set("name", "%s" % (nom, ) ) # ajout de l'attribut name, inutilisé - - #bloc - i = 0 # compteur de potentiels flottants - potentielsFlottants = False # pas de potentiel flottant a priori - for nom in self.dictGroupes.keys(): # recherche des potentiels flottants définis dans les MESHGROUP - if self.dictGroupes[nom].has_key('Potentiel_Flottant'): - potentielsFlottants = True - if potentielsFlottants: # on a trouvé au moins un potentiel flottant - PotentielsFlottants=ET.SubElement(root, "PotentielsFlottants") # création du bloc XML adéquat - for nom in self.dictGroupes.keys(): # recherche des potentiels flottants définis dans les MESHGROUP - if self.dictGroupes[nom].has_key('Potentiel_Flottant'): - potentielFlottant = ET.SubElement(PotentielsFlottants, "potentielFlottant") # création du bloc XML pour ce potentiel flottant - potentielFlottant.text = nom # le nom du groupe de noeud est directement écrit - i = i+1 # incrément du numéro de spire - potentielFlottant.set("id", "%g" % (i, ) ) # ajout de l'attribut id, inutilisé - potentielFlottant.set("name", "%s" % (nom, ) ) # ajout de l'attribut name, inutilisé - - - #Definir Post traitement - postraitement=ET.SubElement(root, "postraitement") - # Ecriture des cartes de champ - carteChamp=ET.SubElement(postraitement, "carteChamp") - if type(self.carteChamp)==float: - carteChamp.text="%s" %(self.carteChamp) - else: - carteChamp.text="%s" % ','.join(map(str,self.carteChamp)) - # Ecriture des cartes de courants induits - carteCourantInduit=ET.SubElement(postraitement, "carteCourantInduit") - if type(self.carteCourantInduit)==float: - carteCourantInduit.text="%s" %(self.carteCourantInduit) - else: - carteCourantInduit.text="%s" % ','.join(map(str,self.carteCourantInduit)) - # Ecriture des cartes de force - carteForce=ET.SubElement(postraitement, "carteForce") - if type(self.carteForce)==float: - carteForce.text="%s" %(self.carteForce) - else: - carteForce.text="%s" % ','.join(map(str,self.carteForce)) - # Sortie des grandeurs globales, enregistrées dans self.post_global - # liste de correspondance entre la valeur du catalogue et le nom de la balise XML - # sous forme ordonnée (nomXML, valeur catalogue) - correspondance_global = (('energie', "Energie"),\ - ('perteJoule', "Pertes Joules"),\ - ('fluxInducteur', "Flux par inducteur"),\ - ('courantInducteur', "Courants par inducteur"),\ - ('tensionInducteur', "Tensions par inducteur"), \ - ('forceCouple', "Force et couple"),\ - ('fluxSpire', "Flux par spire exploratrice"),\ - ('fluxGroupe', "Flux par groupe"),\ - ('ddpElect', "Tensions electriques"),\ - ('ddpMagn', "DDP magnetiques"), \ - ('fluxMagn', "Flux magnetiques"),\ - ('fluxJinduitTotal', "Flux J induit"),\ - ('potFlottant', "Potentiel flottant")) - # Sortie des grandeurs demandées seulement (true) - for table in correspondance_global: - if table[1] in self.post_global: - post_global_item=ET.SubElement(postraitement, table[0]) - post_global_item.text = "true" -# # Sortie de toutes les grandeurs possibles, avec la valeur true pour celles demandées et false sinon -# for table in correspondance_global: -# post_global_item=ET.SubElement(postraitement, table[0]) -# if table[1] in self.post_global: -# post_global_item.text = "true" -# else: -# post_global_item.text = "false" - - self.indent(root) # indentations et retours à la ligne, à l'aide d'une fonction maison, car xml.etree.ElementTree ne sait pas faire et le module lxml n'est pas disponible dans Salomé - - tree = ET.ElementTree(root) - - tree.write(fileXML, encoding="UTF-8") - - # print "le dico complet=%s" %(self.dictGroupes) - - if self.debug: - print "ecriture du fichier d'execution (SH)" - RepCarmel=os.path.join(repertory,"lancer.sh") - f = open( RepCarmel, 'wb') - self.texteCarmel3D_SH+='cd ' + repertory + ' \n' - self.texteCarmel3D_SH+='./carmel << FIN\n' - correspondance_resolution = {"(T-)Omega seulement":"1\n","A(-Phi) seulement":"2\n", "(T-)Omega puis A(-Phi)":"1\n2\n", "A(-Phi) puis (T-)Omega":"2\n1\n"} - self.texteCarmel3D_SH+= correspondance_resolution[self.formulation] - self.texteCarmel3D_SH+='0\nFIN\n' - f.write(self.texteCarmel3D_SH) - f.close() - - -#---------------------------------------------------------------------------------------- -# analyse de chaque noeud de l'arbre -#---------------------------------------------------------------------------------------- - - def generMCSIMP(self,obj) : - """recuperation de l objet MCSIMP""" - if self.debug: - print "MCSIMP %(v_1)s %(v_2)s" % {'v_1': obj.nom, "v_2": obj.valeur} - s=PythonGenerator.generMCSIMP(self,obj) - try: - self.dicoCourant[obj.nom]=obj.valeurFormatee - except: - print "Oubli des messages texte homo='information'" - return s - - -#---------------------------------------------------------------------------------------- - def generMCFACT(self,obj) : - """recuperation de l objet MCFACT""" - dico={} - self.dicoMCFACTCourant=dico - self.dicoCourant=self.dicoMCFACTCourant - s=PythonGenerator.generMCFACT(self,obj) - self.dicoEtapeCourant[obj.nom]=self.dicoMCFACTCourant - self.dicoMCFACTCourant=None - self.dicoCourant=self.dicoEtapeCourant - return s - - -#---------------------------------------------------------------------------------------- - def generPROC_ETAPE(self,obj): - """analyse des PROC du catalogue ( VERSION )""" - dico={} - self.dicoEtapeCourant=dico - self.dicoCourant=self.dicoEtapeCourant - s=PythonGenerator.generPROC_ETAPE(self,obj) - obj.valeur=self.dicoEtapeCourant - - if self.debug: - print "PROC_ETAPE %(v_1)s %(v_2)s" % {'v_1': unicode(obj.nom), "v_2": unicode(obj.valeur)} - s=PythonGenerator.generPROC_ETAPE(self,obj) - if obj.nom=="PARAMETERS" : self.generBLOC_PARAMETERS(obj) - if obj.nom=="SOLVEUR" : self.generSOLVEUR(obj) - if obj.nom=="SYMETRIE" : self.generBLOC_SYMETRIE(obj) - if obj.nom=="POST_TRAITEMENT" : self.generPOST_TRAITEMENT(obj) - return s - - - -#---------------------------------------------------------------------------------------- - def generETAPE(self,obj): - """analyse des OPER du catalogue""" - dico={} - self.dicoEtapeCourant=dico - self.dicoCourant=self.dicoEtapeCourant - s=PythonGenerator.generETAPE(self,obj) - obj.valeur=self.dicoEtapeCourant - if self.debug: - print "ETAPE : obj.nom = %(v_1)s , obj.valeur= %(v_2)s" % {'v_1': obj.nom, 'v_2': obj.valeur} - if obj.nom=="MESHGROUP" : self.generMESHGROUP(obj) - if obj.nom=="MATERIAL" : self.generMATERIAL(obj) - if obj.nom=="SOURCE" : self.generSOURCE(obj) - if obj.nom=="STRANDED_INDUCTOR_GEOMETRY" : self.generSTRANDED_INDUCTOR_GEOMETRY(obj) - if obj.nom=="MACRO_GROUPE": self.generMACRO_GROUPE(obj) - if obj.nom=="MOUVEMENT" : self.generMOUVEMENT(obj) - s=PythonGenerator.generETAPE(self,obj) - return s - -#---------------------------------------------------------------------------------------- - def generMACRO_ETAPE(self,obj): - """Utilisé par INCLUDE""" - dico={} - self.dicoEtapeCourant=dico - self.dicoCourant=self.dicoEtapeCourant - import generator - monGenerateur=generator.plugins[nomPlugin]() - jdc_aux_texte=monGenerateur.gener(obj.jdc_aux) - if self.debug: - print "jdc_aux_texte : %s" % jdc_aux_texte - - # sauvegarde de tous les matériaux trouvés dans les bibliothèques INCLUDE - for cle in monGenerateur.dictMaterial: - self.dictMaterial[cle] = monGenerateur.dictMaterial[cle] - # sauvegarde de toutes les sources trouvées dans les bibliothèques INCLUDE - for cle in monGenerateur.dictSource: - self.dictSource[cle] = monGenerateur.dictSource[cle] - - print "________FIN MACRO______________________________________" - s=PythonGenerator.generMACRO_ETAPE(self,obj) - return s - -#---------------------------------------------------------------------------------------- -#---------------------------------------------------------------------------------------- - def generMESHGROUP(self,obj): - """preparation de la ligne NAME referencant le groupe de mailles - associe le groupe de mailles au materiau ou a la source utilisateur - on sauvegarde aussi les noms des groupes de maillage - """ - try: - nomGroupe = obj.getSdname() # nom du groupe de maillage, i.e. nom du concept - print "liste des noms sans prefixes %s" %(nomGroupe) - - # test: un et un seul nom de materiau ou source doit etre associe a ce groupe de maillage, via les cles MATERIAL et SOURCE, respectivement. - # test sur un seul attribut, non pertinent car il peut y en avoir plusieurs. - #assert len(obj.valeur.keys())==1,"Un et un seul nom de materiau ou source doit etre associe a ce groupe du maillage :"+nomGroupe - - # on utilise le fait que obj.valeur est un dictionnaire - self.dictGroupes[nomGroupe] = {} - if self.debug: - print "obj.valeur.keys()= %s" % obj.valeur.keys() - #if 'MATERIAL' in obj.valeur.keys() and 'SOURCE' in obj.valeur.keys(): # test d'erreur lors de presence de materiau et source a la fois - # raise ValueError,tr(" ce groupe de maillage %s est associe a au moins un materiau et au moins une source." % nomGroupe) - # association a un materiau - if 'MATERIAL' in obj.valeur.keys(): - self.dictGroupes[nomGroupe]['MATERIAL'] = obj.valeur['MATERIAL'].nom # sauvegarde de l'association entre ce groupe de maillage et un materiau ou source, par son nom, i.e. nom du concept du materiau ou de la source - # self.dictGroupes['ordreMateriauxJdC'].append(nomGroupe) # sauvegarde du nom du groupe de maillage associe a un materiau, dans l'ordre du JdC - # association a une source - if 'SOURCE' in obj.valeur.keys(): - self.dictGroupes[nomGroupe]['SOURCE'] = obj.valeur['SOURCE'].nom # sauvegarde de l'association entre ce groupe de maillage et un materiau ou source, par son nom, i.e. nom du concept du materiau ou de la source - # self.dictGroupes['ordreSourcesJdC'].append(nomGroupe) # sauvegarde du nom du groupe de maillage associe a une source, dans l'ordre du JdC - # erreur ni materiau ni source associee - if 'STRANDED_INDUCTOR_GEOMETRY' in obj.valeur.keys(): - self.dictGroupes[nomGroupe]['STRANDED_INDUCTOR_GEOMETRY'] = obj.valeur['STRANDED_INDUCTOR_GEOMETRY'].nom # sauvegarde de l'association entre ce groupe de maillage et un materiau ou source, par son nom, i.e. nom du concept du materiau ou de la source - # self.dictGroupes['ordreStrandJdC'].append(nomGroupe) # sauvegarde du nom du groupe de maillage associe a une source, dans l'ordre du JdC - if 'CONDITION_LIMITE' in obj.valeur.keys(): - self.dictGroupes[nomGroupe]['CONDITION_LIMITE'] = obj.valeur['CONDITION_LIMITE'] - # self.dictGroupes['ordreConditionJdC'].append(nomGroupe) - if 'Domaine' in obj.valeur.keys(): - self.dictGroupes[nomGroupe]['DOMAINE'] = obj.valeur['Domaine'] - # self.dictGroupes['ordreDomaineJdC'].append(nomGroupe) - texte="" - texte+="%s"%(obj.valeur['Domaine']) - print"le texte=%s" %(texte) - self.dictDomaine[obj.getSdname()]=texte - print "liste des domaines =%s" %(self.dictGroupes[nomGroupe]['DOMAINE']) - if 'Potentiel_Flottant' in obj.valeur.keys(): - self.dictGroupes[nomGroupe]['Potentiel_Flottant'] = True - if 'Spire_Exploratrice' in obj.valeur.keys(): - self.dictGroupes[nomGroupe]['Spire_Exploratrice'] = True - -# else: -# raise ValueError, tr("ce groupe de maillage %s n'est associe a aucun materiau, source ou stranded_inductor_geometry." % nomGroupe) - if self.debug: - print "self.dictGroupes= %s" % repr(self.dictGroupes) - except ValueError, err: - raise ValueError, str(err) - - def generMACRO_GROUPE(self, obj): - """preparation de la ligne NAME referencant le groupe de mailles - associe le groupe de mailles au materiau ou a la source utilisateur - on sauvegarde aussi les noms des macros groupes - """ - try: - nomMacroGroupe = obj.getSdname() # nom du macro groupe - print "liste des noms sans prefixes %s" %(nomMacroGroupe) - self.dictMacroGroupes[nomMacroGroupe] = obj.valeur # sauvegarde des propriétés du macro-groupe - - if self.debug: - print "obj.valeur.keys()= %s" % obj.valeur.keys() - # association a une source - if 'LISTE_MESHGROUP' in obj.valeur.keys(): # test de liste définie dans la macro-groupe, sinon erreur - listeGroupesMauvaisFormat = obj.valeur['LISTE_MESHGROUP'] # sauvegarde de l'association entre ce macro groupe et un materiau ou source, par son nom, i.e. nom du concept du materiau ou de la source - self.dictMacroGroupes[nomMacroGroupe]['LISTE'] = [] # sauvegarde de l'association entre ce macro groupe et un materiau ou source, par son nom, i.e. nom du concept du materiau ou de la source - for groupe in listeGroupesMauvaisFormat: # sauvegarde de la liste au format correct - groupe = groupe.replace("'", "") # suppression des guillement simples - groupe = groupe.replace('"', "") # suppression des guillement doubles - self.dictMacroGroupes[nomMacroGroupe]['LISTE'].append(groupe) # sauvegarde du nom au formatage correct - else: - raise ValueError, nomMacroGroupe + tr(" : ce MACRO_GROUPE doit contenir une liste de groupes LISTE_MESHGROUP.") - - for nomGroupe in self.dictMacroGroupes[nomMacroGroupe]['LISTE']: # liste des groupes MESHGROUP de ce macro-groupe. On leur associe les propriétés du MACRO_GROUPE - for propriete in ('SOURCE', 'MATERIAL', 'STRANDED_INDUCTOR_GEOMETRY'): # liste des propriétés automatiques à copier du MACRO_GROUPE à chaque MESHGROUP de la liste - if propriete in obj.valeur.keys(): # ce macro-groupe est associé à cette propriété - if self.dictGroupes[nomGroupe].has_key(propriete) and self.dictGroupes[nomGroupe][propriete] != self.dictGroupes[nomGroupe][propriete].nom: # erreur, ce meshgroup a déjà une telle propriéte définie, différente - print u"ERREUR! Conflit entre la %s : %s du MACRO_GROUPE %s et celle : %s du MESHGROUP %s associé à ce macro-groupe." % \ - ( propriete, obj.valeur[propriete].nom, nomMacroGroupe, self.dictGroupes[nomGroupe][propriete], nomGroupe ) - raise ValueError, propriete + ',' + obj.valeur[propriete].nom + ',' + nomMacroGroupe + ',' + self.dictGroupes[nomGroupe][propriete] + ',' + nomGroupe\ - + tr(" : conflit entre la propriete (#1:#2) du MACRO_GROUPE (de nom #3) et celle (#4) du MESHGROUP (#5) associe a ce macro-groupe.") - else : # pas de conflit de cette propriété, alors copie, meme si les propriétés sont les memes pour simplifier - self.dictGroupes[nomGroupe][propriete] = obj.valeur[propriete].nom # sauvegarde du nom de la propriété du macro-groupe dans le meshgroup - for propriete in ('CONDITION_LIMITE', ): # liste des propriétés définies à l'avance automatiques à copier du MACRO_GROUPE à chaque MESHGROUP de la liste - if propriete in obj.valeur.keys(): # ce macro-groupe est associé à cette propriété - if self.dictGroupes[nomGroupe].has_key(propriete) and self.dictGroupes[nomGroupe][propriete] != self.dictGroupes[nomGroupe][propriete]: # erreur, ce meshgroup a déjà une telle propriéte définie, différente - print u"ERREUR! Conflit entre la %s : %s du MACRO_GROUPE %s et celle : %s du MESHGROUP %s associé à ce macro-groupe." % \ - ( propriete, obj.valeur[propriete], nomMacroGroupe, self.dictGroupes[nomGroupe][propriete], nomGroupe ) - raise ValueError, propriete + ',' + obj.valeur[propriete].nom + ',' + nomMacroGroupe + ',' + self.dictGroupes[nomGroupe][propriete] + ',' + nomGroupe\ - + tr(" : conflit entre la propriete (#1:#2) du MACRO_GROUPE (de nom #3) et celle (#4) du MESHGROUP (#5) associe a ce macro-groupe.") - else : # pas de conflit de cette propriété, alors copie, meme si les propriétés sont les memes pour simplifier - self.dictGroupes[nomGroupe][propriete] = obj.valeur[propriete] # sauvegarde du nom de la propriété du macro-groupe dans le meshgroup - except ValueError, err: - raise ValueError, str(err) - - - def generSOLVEUR(self, obj): - if self.debug: - print "generation solveur obj.valeur = %s" % obj.valeur - try : - self.typeSolveur = obj.valeur['Type'] - if self.typeSolveur == "Solveur_lineaire" : self.generSOLVEUR_LINEAIRE(obj) - if self.typeSolveur == "Solveur_non_lineaire" : - self.generSOLVEUR_LINEAIRE(obj) - self.generSOLVEUR_NON_LINEAIRE(obj) - except ValueError, err: - raise ValueError, str(err) - - def generSOLVEUR_LINEAIRE(self, obj): - if self.debug: - print "generation material obj.valeur = %s" % obj.valeur - try : - nature = obj.valeur['Methode_lineaire'] - if nature =="Methode iterative BICGCR" : self.generMETHODE_ITERATIVE_BICGCR(obj) - if nature =="Methode directe MUMPS" : self.generMETHODE_DIRECTE_MUMPS(obj) - except ValueError, err: - raise ValueError, str(err) - - def generMETHODE_ITERATIVE_BICGCR(self, obj): - if self.debug: - print "generation methode iterative BICGCR obj.valeur = %s" % obj.valeur - self.kEpsilonGCP = obj.valeur["Precision"] - self.precond=obj.valeur["Preconditionneur"] - self.nbIterationMax=obj.valeur["Nombre_iterations_max"] - - - def generMETHODE_DIRECTE_MUMPS(self, obj): - texte="" - if self.debug: - print "_____________directe_____________" - - def generSOLVEUR_NON_LINEAIRE(self, obj): - if self.debug: - print "generation solveur_non_lineaire obj.valeur = %s" % obj.valeur - correspondance_methodeNonLineaire = {"Methode de Newton":2,"Methode de substitution":1} # correspondance sur la méthode non-linéaire entre le catalogue et le XML - self.methodeNonLineaire = correspondance_methodeNonLineaire[obj.valeur["Methode_non_lineaire"]] - self.kEpsilonNonLinearite=obj.valeur["PrecisionNonLineaire"] - self.kCoefficientRelaxation=obj.valeur["Coefficient_de_Relaxation"] - - def generMATERIAL(self,obj): - """preparation du bloc correspondant a un materiau du fichier PHYS""" - texte="" - if self.debug: - print "generation material obj.valeur = %s" % obj.valeur - try : - nomMaterial = obj.getSdname() - self.dictMaterial[nomMaterial]=obj.valeur - print"self.dictMaterial=%s" %(self.dictMaterial) - except ValueError, err: - raise ValueError, str(err) -#------------------------------------------------------------------- - - def generSOURCE(self,obj): - """preparation du bloc correspondant a une source du fichier PHYS""" - if self.debug: - print "generation source obj valeur = %s" % obj.valeur - texte="" - try : - nomSource = obj.getSdname() - self.dictSource[nomSource]=obj.valeur # dictionnaire - self.dictSource[nomSource]['milieux'] = [] # liste ordonnée des groupes associés à cette source - print"mon dico des sources=%s" %(self.dictSource) - except ValueError, err: - raise ValueError, str(err) - -#--------------------------------------------------------------------------------------- -# traitement fichier PHYS -#--------------------------------------------------------------------------------------- - def generBLOC_VERSION(self,obj) : - # constitution du bloc VERSION du fichier PHYS - # creation d une entite VERSION ; elle sera du type PROC car decrit ainsi - # dans le du catalogue - version=obj.addEntite('VERSION',pos=None) - self.generPROC_ETAPE(obj.etapes[0]) - self.texteCarmel3D+="["+obj.etapes[0].nom+"\n" - for cle in obj.etapes[0].valeur : - self.texteCarmel3D+=" "+cle+" "+str(obj.etapes[0].valeur[cle])+"\n" - self.texteCarmel3D+="]\n" - # destruction de l entite creee - obj.suppEntite(version) - #print 'ERREUR : test erreur boite graphique BLOC_VERSION' - #raise ValueError, 'test erreur boite graphique BLOC_VERSION' - - - def generBLOC_PARAMETERS(self,obj): - if self.debug: - print "generation parameters obj.valeur = %s" % obj.valeur - - self.identification = obj.valeur["Identification_du_Modele"] - self.fichierMaillage = obj.valeur["Fichier_maillage"] - self.echelleMaillage = obj.valeur["Echelle_du_maillage"] - - self.kEpsilonDistance=obj.valeur["kEpsilonDistance"] - self.kdistanceRef=obj.valeur["kdistanceRef"] - self.jauge=obj.valeur["Jauge"] - self.NBoucleTemps=obj.valeur["Nb_pas_de_temps"] - self.dt=obj.valeur["Pas_de_temps"] - - self.repertory=obj.valeur["RepCarmel"] - self.fcarmel=obj.valeur["Resoudre_probleme"] - self.postprocess=obj.valeur["Realiser_post_traitement_aposteriori"] - self.formulation=obj.valeur["Formulation"] - - def generBLOC_SYMETRIE(self, obj): - if self.debug: - print "generation de la symetrie obj.valeur = %s" % obj.valeur - - try: - self.listSymetrie.append(obj.valeur) - print"ma liste symetrie =%s" %(self.listSymetrie) - except ValueError, err: - raise ValueError, str(err) -#---------------------------------------------------------------------------------------- - - def generMOUVEMENT(self, obj): - if self.debug: - print "generation du mouvement obj.valeur = %s" % obj.valeur - - try: - nom = obj.getSdname() - self.nombreMouvements = self.nombreMouvements+1 - self.dictMouvement[nom] = {'ordre': self.nombreMouvements, 'valeurs': obj.valeur} - self.dictMouvement['ordre'].append(nom) - if self.debug: - print "self.dictMouvement =%s" %(self.dictMouvement) - print "self.nombreMouvements =%i" %(self.nombreMouvements) - except ValueError, err: - raise valueError, str(err) -#---------------------------------------------------------------------------------------- - def generSTRANDED_INDUCTOR_GEOMETRY(self, obj): - """preparation du bloc STRANDED_INDUCTOR_GEOMETRY""" - if self.debug: - print "generation strand obj valeur = %s" % obj.valeur - try : - nomStrand = obj.getSdname() - self.dictStrand[nomStrand]=obj.valeur - print"mon dico des stranded inductor geometry=%s" %(self.dictStrand) - - except ValueError, err: - raise ValueError, str(err) - - def generPOST_TRAITEMENT(self, obj): - if self.debug: - print "generation post traitement obj.valeur = %s" % obj.valeur - self.carteChamp=obj.valeur["Cartes_des_champs"] - self.carteCourantInduit=obj.valeur["Cartes_des_courants_induits"] - self.carteForce=obj.valeur["Cartes_des_forces"] - if obj.valeur.has_key('GLOBAL'): - self.post_global = obj.valeur['GLOBAL'] - # sauvegarde de la liste au format correct, en supprimant les guillemets simples et doubles extra générés par Eficas - # car Eficas génère une liste ["'Energie'","'Flux par inducteur'","'Force et couple'"] enrichie - # à partir de l'instruction .comm correctement formatée : GLOBAL=('Energie','Flux par inducteur','Force et couple',) - for i in range(len(self.post_global)): - self.post_global[i] = self.post_global[i].replace("'", "") # suppression des guillement simples - self.post_global[i] = self.post_global[i].replace('"', "") # suppression des guillement doubles - -#------------------------------------- -# Methodes utilitaires -# ------------------------------------ - def formateCOMPLEX(self,nbC): - """prise en compte des differentes formes de description d un nombre complexe - 3 formats possibles : 2 listes (anciennement tuples?) et 1 nombre complexe - """ - if self.debug: - print "formatage" - print "type : %(type_nb_c)s pour %(nb_c)s" % {'type_nb_c': type(nbC), 'nb_c': nbC} - nbformate ="" - if isinstance(nbC,(tuple,list)): - if nbC[0] == "'RI'" : - nbformate = "COMPLEX " + str(nbC[1])+" "+str(nbC[2]) - if nbC[0] == "'MP'" : - nbformate = "POLAR " + str(nbC[1])+" "+str(nbC[2]) - else: - nbformate = "COMPLEX " + str(nbC.real)+" "+str(nbC.imag) - if self.debug: - print "nbformate : %s" % nbformate - return nbformate - - diff --git a/mascaret/CMakeLists.txt b/mascaret/CMakeLists.txt deleted file mode 100644 index deb3c655..00000000 --- a/mascaret/CMakeLists.txt +++ /dev/null @@ -1,31 +0,0 @@ -# Copyright (C) 2012-2013 EDF -# -# This file is part of SALOME HYDRO module. -# -# SALOME HYDRO module is free software: you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation, either version 3 of the License, or -# (at your option) any later version. -# -# SALOME HYDRO module 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 General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with SALOME HYDRO module. If not, see . - -# --- Python files --- - -SET(PYFILES - __init__.py - appli.py - configuration_mascaret.py - prefs_mascaret.py - prefs.py - mascaret_V7_cata.py -) - -# --- rules --- - -SALOME_INSTALL_SCRIPTS("${PYFILES}" ${SALOME_INSTALL_PYTHON}/salome/hydro/mascaret/eficas) diff --git a/mascaret/XMLs/mascaret_exp.xcas b/mascaret/XMLs/mascaret_exp.xcas deleted file mode 100644 index 58510867..00000000 --- a/mascaret/XMLs/mascaret_exp.xcas +++ /dev/null @@ -1,211 +0,0 @@ - - - - - - 3 - 3 - mascaret_exp.xcas - dico.txt - princi.f - false - mascaret_exp.tmp - false - 1 - false - - mascaretV5P1.a damoV3P0.a - - - - false - 1 - false - 0.05 - false - - false - false - - - - false - 1000.0 - false - 0.005 - false - false - false - false - 0 - false - - - 1.0 - 0.0 - 2 - 2000 - 1.0 - true - 0.8 - 0.0 - 0.0 - 1 - - - - geometrie - 2 - true - - - 1 - 1 - 0.0 - 10000.0 - 1 - 2 - - - 0 - - - - 2 - 1 2 - 1 2 - - limite1 - limite2 - - 1 2 - 1 2 - - - - 0 - - - - 5 - - 101 - 1 - 1.0 - 1 - 2 - - - 2 - false - - 0 - 1 - 1 - 2 - 100.0 - 0 - - - - - 0 - - - - - 1 - 1 - 1 - 0.0 - 10000.0 - 30.6 - 30.6 - - - 0 - -0 - -0 - -0 - - - - 2 - - - loi_1_hydrogramme - 1 - - 1 - hydrogramme.loi - -0 - -0 - -0 - - - - loi_2_limnigramme - 2 - - 1 - limnigramme.loi - -0 - -0 - -0 - - - - - - - false - - - true - 1 - init.lig - 2 - -0 - - - - Etude hydraulique1d - - false - false - false - false - false - false - - - 1 - 200 - 1000 - - - mascaret_exp_ecr.opt - 2 - - - mascaret_exp.lis - - - mascaret_exp_ecr.rep - - - 1.0 - - - - 0 - - - - false false false false false false false false false false false false false false false - - - true false false false false true true true false false false false false false false false false false false true false false true false false false false false false false false false false false false false false false false false false false - - - \ No newline at end of file diff --git a/mascaret/XMLs/mascaret_exp_(xsd).xcas b/mascaret/XMLs/mascaret_exp_(xsd).xcas deleted file mode 100755 index ee4c90fa..00000000 --- a/mascaret/XMLs/mascaret_exp_(xsd).xcas +++ /dev/null @@ -1,210 +0,0 @@ - - - - - 3 - 3 - mascaret_exp.xcas - dico.txt - princi.f - false - mascaret_exp.tmp - false - 1 - false - - mascaretV5P1.a damoV3P0.a - - - - false - 1 - false - 0.05 - false - - false - false - - - - false - 1000.0 - false - 0.005 - false - false - false - false - 0 - false - - - 1.0 - 0.0 - 2 - 2000 - 1.0 - true - 0.8 - 0.0 - 0.0 - 1 - - - - geometrie - 2 - true - - - 1 - 1 - 0.0 - 10000.0 - 1 - 2 - - - 0 - - - - 2 - 1 2 - 1 2 - - limite1 - limite2 - - 1 2 - 1 2 - - - - 0 - - - - 5 - - 101 - 1 - 1.0 - 1 - 2 - - - 2 - false - - 0 - 1 - 1 - 2 - 100.0 - 0 - - - - - 0 - - - - - 1 - 1 - 1 - 0.0 - 10000.0 - 30.6 - 30.6 - - - 0 - -0 - -0 - -0 - - - - 2 - - - loi_1_hydrogramme - 1 - - 1 - hydrogramme.loi - -0 - -0 - -0 - - - - loi_2_limnigramme - 2 - - 1 - limnigramme.loi - -0 - -0 - -0 - - - - - - - false - - - true - 1 - init.lig - 2 - -0 - - - - Etude hydraulique1d - - false - false - false - false - false - false - - - 1 - 200 - 1000 - - - mascaret_exp_ecr.opt - 2 - - - mascaret_exp.lis - - - mascaret_exp_ecr.rep - - - 1.0 - - - - 0 - - - - false false false false false false false false false false false false false false false - - - true false false false false true true true false false false false false false false false false false false true false false true false false false false false false false false false false false false false false false false false false false - - - diff --git a/mascaret/XMLs/mascaret_imp.xcas b/mascaret/XMLs/mascaret_imp.xcas deleted file mode 100644 index 68be3f6e..00000000 --- a/mascaret/XMLs/mascaret_imp.xcas +++ /dev/null @@ -1,211 +0,0 @@ - - - - - - 3 - 3 - mascaret_imp.xcas - dico.txt - princi.f - false - mascaret_imp.tmp - false - 1 - false - - mascaretV5P1.a damoV3P0.a - - - - false - 1 - false - 0.05 - false - - false - false - - - - false - 1000.0 - false - 0.005 - true - false - false - false - 0 - false - - - 1.0 - 0.0 - 2 - 2000 - 1.0 - true - 2.0 - 0.0 - 0.0 - 1 - - - - geometrie - 2 - true - - - 1 - 1 - 0.0 - 10000.0 - 1 - 2 - - - 0 - - - - 2 - 1 2 - 1 2 - - limite1 - limite2 - - 1 2 - 1 2 - - - - 0 - - - - 5 - - 101 - 1 - 1.0 - 1 - 2 - - - 2 - false - - 0 - 1 - 1 - 2 - 100.0 - 0 - - - - - 0 - - - - - 1 - 1 - 1 - 0.0 - 10000.0 - 30.6 - 30.6 - - - 0 - -0 - -0 - -0 - - - - 2 - - - loi_1_hydrogramme - 1 - - 1 - hydrogramme.loi - -0 - -0 - -0 - - - - loi_2_limnigramme - 2 - - 1 - limnigramme.loi - -0 - -0 - -0 - - - - - - - false - - - true - 1 - init.lig - 2 - -0 - - - - Etude hydraulique1d - - false - false - false - false - false - false - - - 1 - 200 - 1000 - - - mascaret_imp_ecr.opt - 2 - - - mascaret_imp.lis - - - mascaret_imp_ecr.rep - - - 1.0 - - - - 0 - - - - false false false false false false false false false false false false false false false - - - true false false false false true true true false false false false false false false false false false false true false false true false false false false false false false false false false false false false false false false false false false - - - \ No newline at end of file diff --git a/mascaret/XMLs/mascaret_imp_(xsd).xcas b/mascaret/XMLs/mascaret_imp_(xsd).xcas deleted file mode 100755 index 0050b84c..00000000 --- a/mascaret/XMLs/mascaret_imp_(xsd).xcas +++ /dev/null @@ -1,210 +0,0 @@ - - - - - 3 - 3 - mascaret_imp.xcas - dico.txt - princi.f - false - mascaret_imp.tmp - false - 1 - false - - mascaretV5P1.a damoV3P0.a - - - - false - 1 - false - 0.05 - false - - false - false - - - - false - 1000.0 - false - 0.005 - true - false - false - false - 0 - false - - - 1.0 - 0.0 - 2 - 2000 - 1.0 - true - 2.0 - 0.0 - 0.0 - 1 - - - - geometrie - 2 - true - - - 1 - 1 - 0.0 - 10000.0 - 1 - 2 - - - 0 - - - - 2 - 1 2 - 1 2 - - limite1 - limite2 - - 1 2 - 1 2 - - - - 0 - - - - 5 - - 101 - 1 - 1.0 - 1 - 2 - - - 2 - false - - 0 - 1 - 1 - 2 - 100.0 - 0 - - - - - 0 - - - - - 1 - 1 - 1 - 0.0 - 10000.0 - 30.6 - 30.6 - - - 0 - -0 - -0 - -0 - - - - 2 - - - loi_1_hydrogramme - 1 - - 1 - hydrogramme.loi - -0 - -0 - -0 - - - - loi_2_limnigramme - 2 - - 1 - limnigramme.loi - -0 - -0 - -0 - - - - - - - false - - - true - 1 - init.lig - 2 - -0 - - - - Etude hydraulique1d - - false - false - false - false - false - false - - - 1 - 200 - 1000 - - - mascaret_imp_ecr.opt - 2 - - - mascaret_imp.lis - - - mascaret_imp_ecr.rep - - - 1.0 - - - - 0 - - - - false false false false false false false false false false false false false false false - - - true false false false false true true true false false false false false false false false false false false true false false true false false false false false false false false false false false false false false false false false false false - - - diff --git a/mascaret/XMLs/sarap.xcas b/mascaret/XMLs/sarap.xcas deleted file mode 100644 index 6cee2656..00000000 --- a/mascaret/XMLs/sarap.xcas +++ /dev/null @@ -1,214 +0,0 @@ - - - - - - 3 - 1 - sarap.xcas - dico.txt - princi.f - false - sarap.tmp - false - 1 - false - - mascaretV5P1.a damoV3P0.a - - - - false - 1 - false - 0.05 - false - - false - false - - - - false - 1000.0 - false - 0.005 - false - false - false - false - 0 - false - - - 1.0 - 0.0 - 2 - 2 - 1.0 - false - 0.8 - 0.0 - 0.0 - 1 - - - - geometrie - 2 - true - - - 1 - 1 - 0.0 - 10000.0 - 1 - 2 - - - 0 - - - - 2 - 1 2 - 1 2 - - limite1 - limite2 - - 1 2 - 1 2 - - - - 0 - - - - 5 - - 101 - 1 - 1.0 - 1 - 2 - - - 2 - false - - 0 - 1 - 1 - 2 - 100.0 - 0 - - - - - 0 - - - - - 1 - 1 - 1 - 0.0 - 10000.0 - 30.6 - 30.6 - - - 0 - -0 - -0 - -0 - - - - 2 - - - loi_1_hydrogramme - 1 - - 1 - hydrogramme.loi - -0 - -0 - -0 - - - - loi_2_limnigramme - 2 - - 1 - limnigramme.loi - -0 - -0 - -0 - - - - - - - false - - - false - 2 - 1 - 0 - -0 - -0 - -0 - -0 - - - - Etude hydraulique1d - - false - false - false - false - false - false - - - 1 - 1 - 1 - - - sarap_ecr.opt - 2 - - - sarap.lis - - - sarap_ecr.rep - - - 1.0 - - - - 0 - - - - false false false false false false false false false false false false false false false - - - true false false false false true true true false false false false false false false false false false false true false false true false false false false false false false false false false false false false false false false false false false - - - \ No newline at end of file diff --git a/mascaret/XMLs/sarap_(xsd).xcas b/mascaret/XMLs/sarap_(xsd).xcas deleted file mode 100755 index 46240502..00000000 --- a/mascaret/XMLs/sarap_(xsd).xcas +++ /dev/null @@ -1,213 +0,0 @@ - - - - - 3 - 1 - sarap.xcas - dico.txt - princi.f - false - sarap.tmp - false - 1 - false - - mascaretV5P1.a damoV3P0.a - - - - false - 1 - false - 0.05 - false - - false - false - - - - false - 1000.0 - false - 0.005 - false - false - false - false - 0 - false - - - 1.0 - 0.0 - 2 - 2 - 1.0 - false - 0.8 - 0.0 - 0.0 - 1 - - - - geometrie - 2 - true - - - 1 - 1 - 0.0 - 10000.0 - 1 - 2 - - - 0 - - - - 2 - 1 2 - 1 2 - - limite1 - limite2 - - 1 2 - 1 2 - - - - 0 - - - - 5 - - 101 - 1 - 1.0 - 1 - 2 - - - 2 - false - - 0 - 1 - 1 - 2 - 100.0 - 0 - - - - - 0 - - - - - 1 - 1 - 1 - 0.0 - 10000.0 - 30.6 - 30.6 - - - 0 - -0 - -0 - -0 - - - - 2 - - - loi_1_hydrogramme - 1 - - 1 - hydrogramme.loi - -0 - -0 - -0 - - - - loi_2_limnigramme - 2 - - 1 - limnigramme.loi - -0 - -0 - -0 - - - - - - - false - - - false - 2 - 1 - 0 - -0 - -0 - -0 - -0 - - - - Etude hydraulique1d - - false - false - false - false - false - false - - - 1 - 1 - 1 - - - sarap_ecr.opt - 2 - - - sarap.lis - - - sarap_ecr.rep - - - 1.0 - - - - 0 - - - - false false false false false false false false false false false false false false false - - - true false false false false true true true false false false false false false false false false false false true false false true false false false false false false false false false false false false false false false false false false false - - - diff --git a/mascaret/__init__.py b/mascaret/__init__.py deleted file mode 100644 index e69de29b..00000000 diff --git a/mascaret/appli.py b/mascaret/appli.py deleted file mode 100644 index 1fd13263..00000000 --- a/mascaret/appli.py +++ /dev/null @@ -1,76 +0,0 @@ -# -*- coding: utf-8 -*- -# -# Copyright (C) 2012-2013 EDF -# -# This file is part of SALOME HYDRO module. -# -# SALOME HYDRO module is free software: you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation, either version 3 of the License, or -# (at your option) any later version. -# -# SALOME HYDRO module 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 General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with SALOME HYDRO module. If not, see . - -import os -import sys -import re - -from PyQt5.QtWidgets import QMessageBox - - -import salome -import SalomePyQt -sgPyQt = SalomePyQt.SalomePyQt() - -from salome.kernel.logger import Logger -from salome.kernel import termcolor -logger = Logger("salome.hydro.mascaret.eficas.appli", - color = termcolor.GREEN_FG) - -import eficasSalome - -from salome.hydro.study import HydroStudyEditor - -class EficasForMascaretAppli(eficasSalome.MyEficas): - """ - This class launches Eficas and adds entries for the created files in - MASCARET component in the study tree. The messages in this class are in - french because they are displayed in Eficas interface. - - :type fichier: string - :param fichier: path of an Eficas file to open - - """ - def __init__(self, fichier = None, version = None): - self.ed = HydroStudyEditor() - self.codedir = os.path.dirname(__file__) - sys.path[:0] = [self.codedir] - eficasSalome.MyEficas.__init__(self, sgPyQt.getDesktop(), - "mascaret", - fichier, version = version) - sgPyQt.createView("Eficas Mascaret", self) - - def addJdcInSalome(self, jdcPath): - """ - Add the newly created file in Salome study - """ - try: - self.ed.find_or_create_mascaret_case(jdcPath) - except Exception, exc: - msgError = "Can't add file to Salome study tree" - logger.exception(msgError) - QMessageBox.warning(self, self.tr("Warning"), - self.tr("%s. Reason:\n%s\n\nSee logs for " - "more details." % (msgError, exc))) - salome.sg.updateObjBrowser(0) - - def closeEvent(self, event): - while self.codedir in sys.path: - sys.path.remove(self.codedir) - eficasSalome.MyEficas.closeEvent(self, event) diff --git a/mascaret/cata-mascaret-1.0.xml b/mascaret/cata-mascaret-1.0.xml deleted file mode 100755 index 11f52e59..00000000 --- a/mascaret/cata-mascaret-1.0.xml +++ /dev/null @@ -1,133 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/mascaret/cata-mascaret-assim-v1.0.xml b/mascaret/cata-mascaret-assim-v1.0.xml deleted file mode 100755 index 1def4baa..00000000 --- a/mascaret/cata-mascaret-assim-v1.0.xml +++ /dev/null @@ -1,334 +0,0 @@ - - - - - - - - false - - bool - - - - true - - bool - - - - true - - bool - - - - true - - bool - - - - true - - bool - - - - - - - Z - - - - Z Q - - - TXM - - - 1 - R - - - 1 - R - - - 20000 - R - - - false - bool - - - R - - - - - R - - - R - - - R - - - R - - - - - - - - bool - - - R - - - R - - - R - - - - - bool - - - R - - - R - - - R - - - - - - TXM - - - - - - - - - Z - ZQ - TXM - - - - R - R - R - - - - R - R - R - - - - R - R - R - - - - R - - - - bool - - - - I - - - - - R - R - R - I - - - - TXM - - - bool - - - R - - - - - bool - - - R - - - - - bool - - - R - - - - - - - TXM - - - - R - R - bool - - - - - - - Z - ZQ - TXM - - R - bool - - - - - - R - - - R - - - R - - - - - - - - - - TXM - - - - - R - R - - - - R - R - - - - R - R - - - - R - R - - - - R - R - R - - - - - - - - - - - Repertoire - R - R - - - - - - - TXM - - TXM - I - R - R - - R - R - R - R - - - - - - - R - Repertoire - - - - - - - - - TXM - - TXM - I - R - R - I - - - - I - I - I - I - Fichier - - - - - - diff --git a/mascaret/configuration_mascaret.py b/mascaret/configuration_mascaret.py deleted file mode 100644 index a38d1691..00000000 --- a/mascaret/configuration_mascaret.py +++ /dev/null @@ -1,43 +0,0 @@ -# -*- coding: utf-8 -*- -# maConfiguration MANAGEMENT OF EDF VERSION -# ====================================================================== -# COPYRIGHT (C) 1991 - 2002 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# -# -# ====================================================================== -""" - Ce module sert pour charger les paramètres de configuration d'EFICAS -""" -# Modules Python -from InterfaceQT4 import configuration -import os - - -class CONFIG(configuration.configBase): - - #----------------------------------- - def __init__(self,appli,repIni): - #----------------------------------- - - self.labels_user=['catalogues','lang','force_langue'] - self.labels_eficas=['lang','rep_cata','catalogues'] - - configuration.configBase.__init__(self,appli,'.Eficas_monCode') - - -def make_config(appli,rep): - return CONFIG(appli,rep) - diff --git a/mascaret/mascaret-1.0.dtd b/mascaret/mascaret-1.0.dtd deleted file mode 100644 index 2a75b4e1..00000000 --- a/mascaret/mascaret-1.0.dtd +++ /dev/null @@ -1,753 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/mascaret/mascaret-1.0.xsd b/mascaret/mascaret-1.0.xsd deleted file mode 100755 index f8518399..00000000 --- a/mascaret/mascaret-1.0.xsd +++ /dev/null @@ -1,1239 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/mascaret/mascaret-assim-1.0.dtd b/mascaret/mascaret-assim-1.0.dtd deleted file mode 100755 index 92dc6941..00000000 --- a/mascaret/mascaret-assim-1.0.dtd +++ /dev/null @@ -1,467 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/mascaret/mascaret-assim-1.0.xsd b/mascaret/mascaret-assim-1.0.xsd deleted file mode 100755 index 896a584a..00000000 --- a/mascaret/mascaret-assim-1.0.xsd +++ /dev/null @@ -1,1882 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -]> - - - - - - - - - - - - - - - - - - - - - - - - Paramètres généraux de l'assimilation de données.
        -Plus d'info sur la page redmine du projet Mascaret-Assimilation
        - - - -
        - - - - - Activation du contrôle des coefficients de Strickler. -Valeurs : true ou false. -(Ce paramètre est modifié par le pilote) - Activate the Strickler coefficients control - - - - - - Activation du contrôle des conditions limites (Lois). -Valeurs : true ou false. -(Ce paramètre est modifié par le pilote) - - - - - - - - Activation du contrôle de la ligne d'eau. -Valeurs : true ou false. -(Ce paramètre est modifié par le pilote) -Ceci ne fonctionne pas lorsqu’il y a une île sur le secteur influencé par le contrôle de la ligne d'eau. - - - - - - - - Activation de la sauvegarde de la ligne d'eau. -La sauvegarde de la ligne d'eau est utile pour l'initialisation des runs suivants. -Valeurs : true ou false. -(Ce paramètre est modifié par le pilote) - - - - - - - - Activation de l'impression des résultats. -Valeurs : true ou false. - - - - - - - -
        - - - Paramètres du contrôle des coefficients de Strickler Ks. - - - - - - - - - - - - - - - - - - Le contrôle des coefficients de Strickler Ks permet de modifier les Ks en lit mineur et/ou majeur pour améliorer les résultats à certaines stations d'observation.
        -On aura autant de runs perturbés que de valeurs de Ks à caler (pour chaque zone et lit mineur et/ou majeur). Avec une machine multiprocesseur, certains de ces runs peuvent se faire en parallèle.
        - - - -
        - - - - - Grandeur des observations à assimiler pour le contrôle Ks. -Valeurs : Z ou Q. - - - - - - - - Perturbation des Ks du lit mineur (exemple -2 points de Strikler)
        -Il faut perturber chaque coefficient à caler pour évaluer ses conséquences supposées localement linéaires sur les résultats aux stations d’observation.
        Il faut donc faire une perturbation significative qui ait une conséquence, mais en même temps pas trop forte pour que l’hypothèse de linéarité ne soit pas trop fausse.
        - - - -
        -
        - - - Perturbation des Ks du lit majeur (exemple -2 points de Strikler)
        -Il faut perturber chaque coefficient à caler pour évaluer ses conséquences supposées localement linéaires sur les résultats aux stations d’observation.
        - Il faut donc faire une perturbation significative qui ait une conséquence, mais en même temps pas trop forte pour que l’hypothèse de linéarité ne soit pas trop fausse.
        - - - -
        -
        - - - Les observations trop éloignées (x * écart type d'erreur d'ébauche en Z (ou en Q) à la station) de l’ébauche ne seront pas utilisées pour corriger les Ks. - - - - - - - - Activation de l'impression Ks. Utile au post traitement graphique. - - - - - - - - Nombre d'itération pour le contrôle Ks - - - - - -
        -
        -
        - - - Fenetre temporelle et pas de temps des observations à prendre en compte pour le contrôle Ks. - - - - - - - - - Début de la plage temporelle des observations utilisées pour le contrôle Ks (relatif au debut de la simulation).
        -Valeur en seconde.
        -(Ce paramètre est modifié par le pilote)
        - - - -
        -
        - - - Fin de la plage temporelle des observations utilisées pour le contrôle Ks (relatif au debut de la simulation). -Valeur en seconde. -(Ce paramètre est modifié par le pilote) - - - - - - - - Pas de temps des observations à utiliser pour le contrôle Ks.
        -Valeur en seconde.
        -Fréquence à laquelle on prend en compte les observations aux stations d'observation pour la correction des Ks par assimilation de données. Plus le pas de temps est fin, plus cela donne d’importance aux observations par rapport au run d’ébauche.
        - - - -
        -
        - - - Durée de la plage temporelle des observations utilisées pour le contrôle Ks. -Valeur en seconde. - - - - - -
        -
        -
        - - - Zones Ks à contrôler à partir des observations à certaines stations d'observation. - - - - - - - - - - - - - - Zone Ks à contrôler par assimilation de données - - - - - - - - - Contrôle des Ks du lit mineur - - - - - - - - Contrôle des Ks du lit majeur - - - - - - - - Sites/stations d'observation utilisées pour le contrôle Ks.
        -Il ne s’agit pas des conditions limites, mais de sites à l’intérieur du domaine modélisé.
        - - - -
        -
        -
        - -
        -
        - - - Paramètres du contrôle des lois. - - - - - - - - - - - - - - - - - - Le contrôle paramétrique des lois permet de modifier les paramètres a, b et/ou c des conditions limites
        -(débit amont, hauteur aval, débit linéique d'apport diffus) pour améliorer les résultats à certaines stations d'observation.
        -Dans le cas d'une loi i en débit : Qi(modifié)=ai*Qi(t-ci)+bi -
        - - - -
        - - - - - Grandeur des observations à assimiler pour le contrôle des lois.
        -Valeurs : Z ou Q.
        - - - -
        -
        - - - - - Les observations trop éloignées (x * écart type d'erreur d'ébauche en Z (ou en Q) à la station) de l’ébauche ne seront pas utilisées pour corriger les lois. - - - - - - - - Activation de l'impression Lois. Utile au post traitement graphique. - - - - - - - - Nombre d'itération pour le contrôle des lois. - - - - - -
        -
        -
        - - - Perturbation des Lois.
        -Il faut perturber chaque coefficient à caler pour évaluer ses conséquences supposées localement linéaires sur les résultats aux stations d’observation.
        Il faut donc faire une perturbation significative qui ait une conséquence, mais en même temps pas trop forte pour que l’hypothèse de linéarité ne soit pas trop fausse.
        -Il y aura autant de runs perturbés que de paramètres ai, bi, ci à caler pour chaque loi.
        Avec une machine multiprocesseur, certains de ces runs peuvent se faire en parallèle. -
        - - - -
        - - - - - Perturbation des lois en hauteurs (limnigrammes ou marégrammes). - - - - - - - - Perturbation des lois en débit (hydrogrammes). - - - - - - - - Perturbation des lois en débit linéique (hydrogrammes en m2/s appliqués sur un linéaire d'apport diffus). - - - - - - - -
        - - - - - Perturbation du paramètre multiplicatif a.
        -Valeur adimensionnelle.
        - - - -
        -
        - - - Perturbation du paramètre additif b.
        -Valeur en m, m3/s ou m2/s selon le type de perturbation (Cote, Débit ou DébitLinéique).
        - - - -
        -
        - - - Perturbation du paramètre de translation temporelle c.
        -Valeur en seconde.
        - - - -
        -
        -
        -
        - - - Fenetre temporelle et pas de temps des observations à prendre en compte pour le contrôle des lois. - - - - - - - - - Début de la plage temporelle des observations utilisées pour le contrôle des lois (relatif au debut de la simulation).
        -Valeur en seconde.
        -(Ce paramètre est modifié par le pilote)
        - - - -
        -
        - - - Fin de la plage temporelle des observations utilisées pour le contrôle des lois (relatif au debut de la simulation).
        -Valeur en seconde.
        -(Ce paramètre est modifié par le pilote)
        - - - -
        -
        - - - Pas de temps des observations à utiliser pour le contrôle des lois.
        -Valeur en seconde.
        -Fréquence à laquelle on prend en compte les observations aux stations d'observation pour la correction des lois par assimilation de données.
        Plus le pas de temps est fin, plus cela donne d’importance aux observations par rapport au run d’ébauche.
        - - - -
        -
        - - - Durée de la plage temporelle des observations utilisées pour le contrôle des lois. -Valeur en seconde. - - - - - -
        -
        -
        - - - Lois à contrôler à partir des observations à certaines stations d'observation. - - - - - - - - - - - - - - Loi à contrôler à partir des observations à certaines stations d'observation. - - - - - - - - - Contrôle du paramètre multiplicatif a. - - - - - - - - Contrôle du paramètre additif b. - - - - - - - - Contrôle du paramètre de translation temporelle c. - - - - - - - - Sites/stations d'observation utilisées pour le contrôle des lois.
        -Il ne s’agit pas des conditions limites, mais de sites à l’intérieur du domaine modélisé.
        - - - -
        -
        - - - Valeurs minimale de la loi contrôlée à l'issue de l'assimilation de données (pour cause de plantage ou de comportement non-physique).
        -Valeur en m, m3/s, m2/s selon le type de loi (Cote, Débit ou DébitLinéique).
        - - - -
        -
        - - - Valeurs maximale de la loi contrôlée à l'issue de l'assimilation de données (pour cause de plantage ou de comportement non-physique).
        -Valeur en m, m3/s, m2/s selon le type de loi (Cote, Débit ou DébitLinéique).
        - - - -
        -
        - - - Avec DAMP, en mode rejeu pas à pas, les conditions limites peuvent être tronquées et prolongée de manière constante au-delà du temps de base (valeur : true), en particulier pour les débits amont (constante égale au dernier débit observé).
        -Dans les cas maritime, on conserve habituellement en condition limite aval les hauteurs observées au-delà du temps de base (valeur : false). On utilise le signal de hauteurs observées en prévision.
        -Dans ces deux cas, il serait judicieux de remplacer les observations au-delà du temps de base par des prévisions (maritimes et hydrologiques).
        - - - -
        -
        -
        - -
        -
        - - - Paramètres du contrôle de la ligne d'eau. - - - - - - - - - - - - - - - - - - - - Le contrôle de la ligne d'eau permet d'améliorer les résultats à certaines stations d'observation, en modifiant la grandeur contrôlée au voisinage des points d'observation,
        -ainsi que la grandeur associée (Q ou Z et Z ou Q) au moyen d'une transformation via une courbe de tarage.
        -Ce type d'assimilation ne nécessite pas de lancement de runs supplémentaires.
        -Il peut être effectué à la suite d'une autre méthode d'assimilation de données. -
        - - - -
        - - - - - Grandeur des observations à assimiler pour le contrôle de la ligne d'eau. -Valeurs : Z ou Q. - - - - - - - - Les observations trop éloignées (x * écart type d'erreur d'ébauche en Z (ou en Q) à la station) de l’ébauche ne seront pas utilisées pour corriger la ligne d'eau. - - - - - - - - TODO - - - - - - - -
        - - - Fenetre temporelle et pas de temps des observations à prendre en compte pour le contrôle de la ligne d'eau. - - - - - - - - - Début de la plage temporelle des observations utilisées pour le contrôle de la ligne d'eau (relatif au debut de la simulation).
        -Valeur en seconde.
        -(Ce paramètre est modifié par le pilote)
        - - - -
        -
        - - - Fin de la plage temporelle des observations utilisées pour le contrôle de la ligne d'eau (relatif au debut de la simulation).
        -Valeur en seconde.
        -(Ce paramètre est modifié par le pilote)
        - - - -
        -
        - - - Pas de temps des observations à utiliser pour le contrôle de la ligne d'eau.
        -Valeur en seconde.
        -Fréquence à laquelle on prend en compte les observations aux stations d'observation pour la correction de la ligne d’eau par assimilation de données.
        Plus le pas de temps est fin, plus cela donne d’importance aux observations par rapport au run d’ébauche.
        - - - -
        -
        - - - Durée de la plage temporelle des observations utilisées pour le contrôle de la ligne d'eau.
        -Valeur en seconde.
        -Cette durée est en principe de l’ordre de grandeur de la durée de propagation entre les stations d'observation et la condition limite aval pour que le modèle bénéficie de la correction sur le maximum de linéaire. Il est cependant nécessaire de « caler » cette durée.
        Pour coller surtout aux dernières observations, on peut raccourcir cette durée.
        - - - -
        -
        -
        -
        -
        - - - TODO - - - - - - - - - TODO. L'idée est peut-etre d'ouvrir la possibilité de faire persister le contrôle de la ligne d'eau au-delà du temps de base ? - - - - - - - - Fréquence à laquelle la ligne d'eau est modifiée. -Valeur en seconde. - - - - - - - - TODO - - - - - - - - - - - Description d'un tronçon de rivière (au voisinage d'une station) sur lesquels s'applique le contrôle de la ligne d'eau (emprise géographique, courbes de tarage...). - - - - - - - - - - - - - - Description des tronçons de rivière (au voisinage de stations) sur lesquels s'applique le contrôle de la ligne d'eau (emprise géographique, courbes de tarage...). - - - - - - - - - - Stations dont les observations sont utilisées pour le contrôle de la ligne d'eau. -Il ne s’agit pas des conditions limites, mais de sites à l’intérieur du domaine modélisé. - - - - - - - - Ecart type de l'erreur d'ébauche à la station d'observation (sans assimilation de données).
        -Valeur en m ou en m3/s.
        -Moyenne des erreurs de modélisation : précision du modèle au niveau de chaque station d’observation.
        - - - -
        -
        - - - Ecart type de l'erreur d'ébauche à la station d'observation après contrôle Ks et/ou Lois (dans le cas ou l'on enchainement le contrôle de la ligne d'eau après un contrôle Ks et/ou Lois).
        -Valeur en m ou en m3/s.
        -Moyenne des erreurs de modélisation : précision du modèle au niveau de chaque station d’observation après contrôle Ks et/ou Lois.
        - - - -
        -
        - - - Eloignement maximum de l’influence en hauteur de la correction faite par le contrôle de la linge d'eau à une station.
        -La longueur de portée à l’aval est en général 10 fois inférieure à celle de l’amont.
        -Valeur en mètres.
        - - - -
        -
        - - - Eloignement maximum de l’influence en débit de la correction faite par le contrôle de la linge d'eau à une station.
        -La longueur de portée à l’aval est en général 10 fois inférieure à celle de l’amont.
        -En cas de confluence, longueur de portée de la correction en débit doit être raccourcie.
        -Valeur en mètres.
        - - - -
        -
        - - -
        -
        -
        - - - - - Ecart type en hauteur de l'erreur d'ébauche à la station d'observation.
        -Valeur en mètres.
        -Moyenne des erreurs de modélisation : précision du modèle au niveau de chaque station d’observation.
        - - - -
        -
        - - - Ecart type en débit de l'erreur d'ébauche à la station d'observation.
        -Valeur en m3/s.
        -Moyenne des erreurs de modélisation : précision du modèle au niveau de chaque station d’observation.
        - - - -
        -
        -
        -
        - - - - - Eloignement maximum de l’influence à l'amont de la correction faite par le contrôle de la linge d'eau à une station. -Valeur en mètres. - - - - - - - - Eloignement maximum de l’influence à l'aval de la correction faite par le contrôle de la linge d'eau à une station.
        -Valeur en mètres.
        - - - -
        -
        -
        -
        - - - Courbe de tarage Q=A*Z^R+B à la station d'observation.
        -Le contrôle de la ligne d’eau se fait à partir de la grandeur sélectionnée pour les observations. Par souci de cohérence hydraulique, la ligne d’eau est également corrigée dans l’autre grandeur en utilisant les courbes de tarage Q=A*Z^R+B définies par stations d'observation.
        - Pour les cas maritimes où la courbe de tarage n’existe pas réellement, on peut prendre A=1, R=1 et B=0.
        - - - -
        - - - - - Coefficient A de la courbe de tarage Q=A*Z^R+B à la station d'observation. - - - - - - - - Coefficient R de la courbe de tarage Q=A*Z^R+B à la station d'observation. - - - - - - - - Coefficient B de la courbe de tarage Q=A*Z^R+B à la station d'observation. - - - - - - - -
        - - - Paramètres de observations. - - - - - - - - - - - - - - - - Paramètres généraux des stations d'observation. - - - - - - - - - Préfixe du fichier contenant la chronique d’observations.
        -Exemple : ../../Observations/station_
        - - - -
        -
        - - - Pas de temps effectif des données du fichier d'observation.
        -Valeur de secondes.
        -On peut ensuite choisir de les utiliser sur un pas de temps plus lâche : frequenceObsCtlKS, frequenceObsCtlLois, frequenceObsCtlWaterline.
        - - - -
        -
        - - - Taille de la fenetre temporelle pour le lissage des données observées (moyenne glissante).
        -Valeur en secondes.
        -Si les observations sont trop bruitées, par exemple pour des pas de temps 5 min, il est préférable de les lisser pour éviter des comportements erratiques de l’assimilation de données.
        - - - -
        -
        -
        -
        -
        - - - Stations d'observations disponibles pour l'assimilation de données.
        -Il ne s’agit pas des conditions limites, mais de sites à l’intérieur du domaine modélisé. -
        - - - -
        - - - - - - -
        - - - Informations sur la station d'observation. - - - - - - - - - - - Ecart type de l'erreur d'observation de hauteur.
        -Valeur en mètres.
        -Moyenne des erreurs d’observation en hauteur : précision de la mesure, erreur de représentativité, embacle ou autre perturbation.
        - - - -
        -
        - - - Ecart type de l'erreur d'observation de débit.
        -Valeur en m3/s.
        -Moyenne des erreurs d’observation en débit : précision de la mesure, erreur de représentativité, embacle ou autre perturbation, incertitudes de la courbe de tarage.
        - - - -
        -
        - - - Seuil minimum de rejet des observations en hauteur.
        -Valeur en mètres.
        -Les observations en-dessous de ce seuil ne seront pas utilisées pour corriger la ligne d'eau.
        - - - -
        -
        - - - Seuil minimum de rejet des observations en débit.
        -Valeur en m3/s.
        -Les observations en-dessous de ce seuil ne seront pas utilisées pour corriger la ligne d'eau.
        - - - -
        -
        -
        -
        -
        -
        -
        - - - Code du site hydrométrique (pour les débits) ou de la station hydrométrique (pour les hauteurs) d'observation.
        -Il s'agit idéalement du code Hydro3 (référentiel hydrométrique national français), mais il set possible d'utiliser d'autres codes.
        - - - -
        -
        - - - - - - - - - La sauvegarde de la ligne d'eau est utile pour l'initialisation des runs suivants.
        (Ce paramètre est modifié par le pilote)
        - - - -
        - - - - - Temps de sauvegarde de la ligne d'eau (relatif au debut de la simulation).
        -Valeur en secondes.
        -(Ce paramètre est modifié par le pilote)
        -La sauvegarde de la ligne d'eau est utile pour l'initialisation des runs suivants.
        - - - -
        -
        - - - Chemin de sauvegarde de la ligne d'eau. - - - - - -
        -
        -
        - - - Paramètres d'impression des résultats. - - - - - - - - - - - Nombre maximal d'échéances de prévision aux stations résultat. - - - - - - - - - - Echéance passée. -Valeur en heures. -Cela permet de disposer des prévisions sur la partie analyse (antérieure au temps de base au-delà duquel on effectue des prévisions). - - - - - - - - TODO - - - - - - - - Chemin et nom du fichier (.opt) des incréments de ligne d'eau effectués dans le cadre du contrôle de la ligne d'eau. - - - - - - - - - - - Stations résultat.
        - Description des points de sortie pour les hauteurs et les débits prévus.
        - - - -
        - - - - - - -
        - - - Station résultat. - Description d'un point de sortie pour les hauteurs et les débits prévus. - - - - - - - - - - - Numéro de section de calcul Mascaret (= numérotation maillage 1D) correspondant à la station résultat.
        -C'est utile pour extraire les résultats du fichier opt produit par Mascaret.
        - - - -
        -
        -
        -
        -
        -
        -
        - - - Echéance de prévision aux stations résultat. -Valeur en heures. - - - - - - - - - - - - - - - - Libellé (complet ou usuel) du site hydrométrique (pour les débits) ou de la station hydrométrique (pour les hauteurs) d'observation.
        -Il s'agit idéalement du libellé Hydro3 (référentiel hydrométrique national français), mais il set possible d'utiliser d'autres noms.
        - - - -
        -
        - - - Branche du modèle Mascaret sur laquelle est positionnée la section de calcul correspondant à la station résultat. - - - - - - - - Abscisse (= point kilométrique) de la station résultat sur le modèle Mascaret.
        -Valeur en km.
        - - - -
        -
        - - - Décalage de l'origine des observations par rapport à la cote de référence du modèle (a priori NGF).
        -Valeur en mètres.
        -Cela permet de comparer les hauteurs observées et simulées dans le même référentiel altimétrique.
        - - - -
        -
        -
        - -
        - - - - - Activation du contrôle par assimilation de données.
        -Valeur : true ou false.
        -(Ce paramètre est modifié par le pilote)
        - - - -
        -
        - - - Ecart type du paramètre à contrôler.
        -Cela correspond à la moyenne des erreurs sur l'évaluation de ce paramètre.
        - - - -
        -
        -
        -
        - - - - - - - Valeur minimum du coefficient de Strickler Ks (pour la zone et le lit concerné).
        -Le contrôle Ks ne pourra pas aboutir à une valeur inférieure à cette valeur.
        - - - -
        -
        - - - Valeur maximale du coefficient de Strickler Ks (pour la zone et le lit concerné).
        -Le contrôle Ks ne pourra pas aboutir à une valeur supérieure à cette valeur.
        - - - -
        -
        -
        -
        -
        -
        -
        diff --git a/mascaret/mascaret_V7_cata.py b/mascaret/mascaret_V7_cata.py deleted file mode 100644 index c3a97a34..00000000 --- a/mascaret/mascaret_V7_cata.py +++ /dev/null @@ -1,107 +0,0 @@ -# -*- coding: utf-8 -*- -# -# Copyright (C) 2012-2013 EDF -# -# This file is part of SALOME HYDRO module. -# -# SALOME HYDRO module is free software: you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation, either version 3 of the License, or -# (at your option) any later version. -# -# SALOME HYDRO module 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 General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with SALOME HYDRO module. If not, see . - -from Accas import * - -JdC = JDC_CATA(regles = (UN_PARMI('MASCARET',)), - ) - -MASCARET = PROC( - nom = "MASCARET", op = None, - fr = u"Définition d'un cas d'étude Mascaret", - ang = u"Definition of a Mascaret study case", - FICHIER_DICO = SIMP(statut = "o", typ = 'Fichier', - fr = u"Fichier Dictionnaire", - ang = u"Dictionary file"), - FICHIER_MOT_CLE = SIMP(statut = "o", - typ = ('Fichier', 'Fichiers CAS (*.cas);;Tous les fichiers (*)',), - fr = u"Fichier Mot Clé", - ang = u"Keyword file"), - FICHIER_GEOMETRIE = SIMP(statut = "f", - typ = ('Fichier', 'Fichiers GEO (*.geo);;Tous les fichiers (*)',), - fr = u"Fichier de géométrie", - ang = u"Geometry file"), - FICHIER_LOI = FACT(statut = 'f', max = '**', - NOM = SIMP(statut = "o", - typ = ('Fichier', 'Fichiers LOI (*.loi);;Tous les fichiers (*)',), - fr = u"Fichier de lois", - ang = u"Laws file"), - ), - FICHIER_ABAQUES = SIMP(statut = "f", - typ = ('Fichier', 'Tous les fichiers (*)',), - fr = u"Fichier abaques", - ang = u"Abacus file"), - FICHIER_CASIER = SIMP(statut = "f", - typ = ('Fichier', 'Tous les fichiers (*)',), - fr = u"Fichier casier", - ang = u"Compartment file"), - FICHIER_DAMOCLE = SIMP(statut = "f", - typ = ('Fichier', 'Tous les fichiers (*)',), - fr = u"Fichier damocle", - ang = u"Damocle file"), - FICHIER_LIG = SIMP(statut = "o", - typ = ('Fichier', 'Fichiers LIG (*.lig);;Tous les fichiers (*)',), - fr = u"Fichier LIG", - ang = u"LIG file"), - LISTING = SIMP(statut = "f", - typ = ('Fichier', 'Tous les fichiers (*)', "Sauvegarde"), - fr = u"Fichier de listing", - ang = u"Listing file"), - LISTING_CASIER = SIMP(statut = "f", - typ = ('Fichier', 'Tous les fichiers (*)', "Sauvegarde"), - fr = u"Fichier de listing casier", - ang = u"Compartment listing file"), - LISTING_LIAISON = SIMP(statut = "f", - typ = ('Fichier', 'Tous les fichiers (*)', "Sauvegarde"), - fr = u"Fichier de listing liaison", - ang = u"Link listing file"), - RESULTAT = SIMP(statut = "f", - typ = ('Fichier', 'Tous les fichiers (*)', "Sauvegarde"), - fr = u"Fichier de résultat", - ang = u"Result file"), - RESULTAT_CASIER = SIMP(statut = "f", - typ = ('Fichier', 'Tous les fichiers (*)', "Sauvegarde"), - fr = u"Fichier de résultat casier", - ang = u"Compartment result file"), - RESULTAT_LIAISON = SIMP(statut = "f", - typ = ('Fichier', 'Tous les fichiers (*)', "Sauvegarde"), - fr = u"Fichier de résultat liaison", - ang = u"Link result file"), - VARIABLE_SORTIE = FACT(statut = 'f', max = '**', - fr = u"Variable de sortie du calcul", - ang = u"Computation output variable", - NOM = SIMP(statut = "o", typ = 'TXM', - fr = u"Nom de la variable", - ang = u"Variable name"), - VARIABLE_MASCARET = SIMP(statut = "o", typ = 'TXM', - fr = u'Variable Mascaret (ex : "Etat.Z(1,0,0)")', - ang = u'Mascaret variable (ex : "Etat.Z(1,0,0)")'), - ), - VARIABLE_ENTREE = FACT(statut = 'f', max = '**', - fr = u"Variable d'entrée du calcul", - ang = u"Computation input variable", - NOM = SIMP(statut = "o", typ = 'TXM', - fr = u"Nom de la variable", - ang = u"Variable name"), - VARIABLE_MASCARET = SIMP(statut = "o", typ = 'TXM', - fr = u'Variable Mascaret (ex : "Modele.Lois.Debit(1,1-2,0)")', - ang = u'Mascaret variable (ex : "Modele.Lois.Debit(1,1-2,0)")'), - ), -) -TEXTE_NEW_JDC="MASCARET()" diff --git a/mascaret/prefs.py b/mascaret/prefs.py deleted file mode 100644 index d0e8113c..00000000 --- a/mascaret/prefs.py +++ /dev/null @@ -1,18 +0,0 @@ -# Copyright (C) 2012-2013 EDF -# -# This file is part of SALOME HYDRO module. -# -# SALOME HYDRO module is free software: you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation, either version 3 of the License, or -# (at your option) any later version. -# -# SALOME HYDRO module 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 General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with SALOME HYDRO module. If not, see . - -code = "mascaret" diff --git a/mascaret/prefs_mascaret.py b/mascaret/prefs_mascaret.py deleted file mode 100644 index c90e011c..00000000 --- a/mascaret/prefs_mascaret.py +++ /dev/null @@ -1,31 +0,0 @@ -# Copyright (C) 2012-2013 EDF -# -# This file is part of SALOME HYDRO module. -# -# SALOME HYDRO module is free software: you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation, either version 3 of the License, or -# (at your option) any later version. -# -# SALOME HYDRO module 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 General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with SALOME HYDRO module. If not, see . - -import os -import sys - -repIni = os.path.dirname(__file__) -INSTALLDIR = os.getenv("EFICAS_ROOT") -closeAutreCommande=True -closeFrameRechercheCommande=True -closeArbre=True -closeCopier=True - -typeDeCata='XML' -catalogues=( - ('mascaret','mascaret',os.path.join(repIni,'cata-mascaret-v1.0.xml'),'python','python'), -) diff --git a/mascaret/qtEficas_mascaret.py b/mascaret/qtEficas_mascaret.py deleted file mode 100755 index c140518c..00000000 --- a/mascaret/qtEficas_mascaret.py +++ /dev/null @@ -1,33 +0,0 @@ -#!/usr/bin/env python -# -*- coding: utf-8 -*- -# Copyright (C) 2007-2012 EDF R&D -# -# 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 -# -""" - Ce module sert a lancer EFICAS configure pour Code_Aster -""" -# Modules Python -# Modules Eficas - -from __future__ import absolute_import -import sys,os -sys.path.append(os.path.join(os.path.abspath(os.path.dirname(__file__)),'..')) - -import prefs -from InterfaceQT4 import eficas_go -eficas_go.lanceEficas(code=prefs.code) diff --git a/silvia/.cata_DPD.py.swp b/silvia/.cata_DPD.py.swp deleted file mode 100644 index 588a5d2f..00000000 Binary files a/silvia/.cata_DPD.py.swp and /dev/null differ diff --git a/silvia/DPD_en.qm b/silvia/DPD_en.qm deleted file mode 100644 index 49481815..00000000 Binary files a/silvia/DPD_en.qm and /dev/null differ diff --git a/silvia/DPD_en.ts b/silvia/DPD_en.ts deleted file mode 100644 index 183e163b..00000000 --- a/silvia/DPD_en.ts +++ /dev/null @@ -1,155 +0,0 @@ - - - - @default - - Solver_Input - Generic Solver Parameters - - - simulation_title - Simulation Title - - - number_of_equilibration_steps - Number of Equilibration Steps - - - number_of_steps - Number of Steps - - - time_step - Time Step - - - DPD_Input - Input Parameters for DPD - - - integrator_type - Integrator Type - - - ensemble - Ensemble - - - electrostatics_is_on - Activate Electrostatism - - - target_temperature - Target Temperature - - - ensemble_nvt - Ensemble Nvt Parameters - - - thermostat_type - Thermostat Type - - - thermostat_type_dpd - DPD Thermostat Parameters - - - dpd_thermostat_drag_coefficient - DPD Thermostat drag coefficient - - - number_of_species_pairs - Number of Species Pairs - - - simulation_box_sizes - Simulation Box Sizes - - - number_of_species - Number of Species - - - species_parameters - Species Parameters - - - species_name - Name - - - species_mass - Mass - - - species_electric_charge - Electric Charge - - - species_is_frozen - is frozen - - - pair_identification - Pair Identification - - - species_pair_parameters - Species Pair Parameter - - - species_pair_parameters_potential_type - Potential Type - - - groot_warren_repulsion - Groot_Warren Repulsion - - - Groot_warren_cut_off - Groot_Warren Cut_off - - - trajectory_output_setting - Trajectory Output Setting - - - trajectory_first_name - Trajectory First Name - - - number_of_steps_between_thermodynamics_samplings - Number Of Steps Between Thermodynamics Samplings - - - thermodynamic_sampling - Thermodynamics Samplings - - - computational_boundary_conditions - Computational Boundary Conditions - - - job_properties - Job Properties - - - job_duration - Job Duration - - - stack_size - Stack Size - - - print_frequency - Print Frequency - - - close_time - Close Time - - - - diff --git a/silvia/Doc/CONTROL b/silvia/Doc/CONTROL deleted file mode 100644 index b4fa8752..00000000 --- a/silvia/Doc/CONTROL +++ /dev/null @@ -1,20 +0,0 @@ -Simple test - -volume 4.0 4.0 4.0 - -ensemble nvt mdvv -temperature 1.0 - -timestep 0.01 -steps 10000 -equilibration steps 1000 -traj 1 100 0 -stats every 200 - -stack size 100 -print every 500 - -job time 100.0 -#close time 10.0 - -finish diff --git a/silvia/Doc/CORREL b/silvia/Doc/CORREL deleted file mode 100644 index b1d4f53f..00000000 --- a/silvia/Doc/CORREL +++ /dev/null @@ -1,47 +0,0 @@ - time en-total pe-total pressure s_xx s_xy s_xz s_yx s_yy s_yz s_zx s_zy s_zz temperature - 0.000000E+00 5.925476E+00 4.543901E+00 2.483716E+01 2.424601E+01 -4.131037E-02 -2.419518E-01 -4.131037E-02 2.495722E+01 1.736961E-01 -2.419518E-01 1.736961E-01 2.530824E+01 9.210500E-01 - 2.000000E+00 5.799655E+00 4.452661E+00 2.258386E+01 2.326233E+01 -9.438677E-01 -5.686493E-01 -9.438677E-01 2.326674E+01 -6.948554E-01 -5.686493E-01 -6.948554E-01 2.122251E+01 8.979962E-01 - 4.000000E+00 6.053263E+00 4.486961E+00 2.443895E+01 2.540537E+01 7.667433E-01 -1.566425E-01 7.667433E-01 2.398260E+01 -2.829271E-01 -1.566425E-01 -2.829271E-01 2.392889E+01 1.044201E+00 - 6.000000E+00 5.940805E+00 4.470034E+00 2.417225E+01 2.409119E+01 -1.544594E+00 -6.071424E-01 -1.544594E+00 2.441209E+01 -7.484984E-01 -6.071424E-01 -7.484984E-01 2.401346E+01 9.805144E-01 - 8.000000E+00 6.071082E+00 4.589181E+00 2.436358E+01 2.466926E+01 -1.216766E-02 4.426919E-02 -1.216766E-02 2.329530E+01 -7.959649E-02 4.426919E-02 -7.959649E-02 2.512617E+01 9.879344E-01 - 1.000000E+01 6.156960E+00 4.571103E+00 2.305503E+01 2.202375E+01 2.177117E-01 -6.384791E-01 2.177117E-01 2.491569E+01 -6.092154E-01 -6.384791E-01 -6.092154E-01 2.222564E+01 1.057238E+00 - 1.200000E+01 5.881313E+00 4.468195E+00 2.386485E+01 2.354060E+01 -1.357827E-01 9.150883E-01 -1.357827E-01 2.251871E+01 -1.128305E+00 9.150883E-01 -1.128305E+00 2.553524E+01 9.420787E-01 - 1.400000E+01 6.161246E+00 4.555527E+00 2.417960E+01 2.430714E+01 7.031299E-01 1.519738E+00 7.031299E-01 2.342948E+01 1.221012E-01 1.519738E+00 1.221012E-01 2.480218E+01 1.070479E+00 - 1.600000E+01 6.029531E+00 4.551715E+00 2.393566E+01 2.452167E+01 -1.822540E-01 -9.540224E-01 -1.822540E-01 2.471614E+01 1.679213E+00 -9.540224E-01 1.679213E+00 2.256917E+01 9.852105E-01 - 1.800000E+01 5.940488E+00 4.559144E+00 2.449647E+01 2.447213E+01 -1.799919E-01 9.506976E-01 -1.799919E-01 2.416905E+01 -1.432005E-01 9.506976E-01 -1.432005E-01 2.484822E+01 9.208960E-01 - 2.000000E+01 5.967888E+00 4.463919E+00 2.267441E+01 2.301111E+01 1.318016E-01 1.685796E-01 1.318016E-01 2.267224E+01 2.023718E-01 1.685796E-01 2.023718E-01 2.233986E+01 1.002646E+00 - 2.200000E+01 6.115024E+00 4.508617E+00 2.348910E+01 2.352892E+01 -1.932023E+00 -3.824729E-01 -1.932023E+00 2.409678E+01 -4.664900E-01 -3.824729E-01 -4.664900E-01 2.284160E+01 1.070938E+00 - 2.400000E+01 6.115544E+00 4.618963E+00 2.217186E+01 2.140698E+01 -2.323926E-01 -1.013147E+00 -2.323926E-01 2.241590E+01 8.737622E-01 -1.013147E+00 8.737622E-01 2.269270E+01 9.977209E-01 - 2.600000E+01 5.921165E+00 4.498558E+00 2.318181E+01 2.214806E+01 -1.124074E-01 -8.348852E-01 -1.124074E-01 2.514831E+01 4.415885E-01 -8.348852E-01 4.415885E-01 2.224905E+01 9.484042E-01 - 2.800000E+01 6.097930E+00 4.592508E+00 2.506094E+01 2.525839E+01 -2.683980E-01 1.547254E-01 -2.683980E-01 2.602398E+01 -4.706095E-01 1.547254E-01 -4.706095E-01 2.390045E+01 1.003615E+00 - 3.000000E+01 5.959333E+00 4.454330E+00 2.247985E+01 2.302147E+01 -5.921643E-01 1.623407E-01 -5.921643E-01 2.263971E+01 7.371829E-01 1.623407E-01 7.371829E-01 2.177838E+01 1.003335E+00 - 3.200000E+01 5.960638E+00 4.479261E+00 2.313568E+01 2.348380E+01 7.694421E-01 -2.121855E-01 7.694421E-01 2.310841E+01 -2.350728E-01 -2.121855E-01 -2.350728E-01 2.281483E+01 9.875845E-01 - 3.400000E+01 6.164330E+00 4.523835E+00 2.482420E+01 2.602455E+01 -1.774382E-01 -4.373421E-01 -1.774382E-01 2.420578E+01 -4.283596E-01 -4.373421E-01 -4.283596E-01 2.424227E+01 1.093664E+00 - 3.600000E+01 6.117862E+00 4.511960E+00 2.259417E+01 2.411199E+01 -8.282126E-01 3.790519E-01 -8.282126E-01 2.184853E+01 -1.876515E-01 3.790519E-01 -1.876515E-01 2.182197E+01 1.070601E+00 - 3.800000E+01 6.204874E+00 4.603588E+00 2.418951E+01 2.520604E+01 -1.112045E+00 1.639251E+00 -1.112045E+00 2.376271E+01 -1.443518E-01 1.639251E+00 -1.443518E-01 2.359979E+01 1.067524E+00 - 4.000000E+01 6.111015E+00 4.490325E+00 2.259501E+01 2.253448E+01 1.687449E-02 6.007997E-01 1.687449E-02 2.155212E+01 1.784004E-01 6.007997E-01 1.784004E-01 2.369843E+01 1.080460E+00 - 4.200000E+01 6.050421E+00 4.634619E+00 2.269730E+01 2.223807E+01 -1.291977E-01 1.239613E-01 -1.291977E-01 2.247529E+01 -2.063624E+00 1.239613E-01 -2.063624E+00 2.337854E+01 9.438676E-01 - 4.400000E+01 6.227524E+00 4.632738E+00 2.431681E+01 2.438023E+01 3.940360E-02 4.701746E-01 3.940360E-02 2.414540E+01 1.438900E+00 4.701746E-01 1.438900E+00 2.442479E+01 1.063191E+00 - 4.600000E+01 6.014157E+00 4.479026E+00 2.437506E+01 2.379844E+01 -5.086670E-01 1.391374E+00 -5.086670E-01 2.388800E+01 9.300614E-01 1.391374E+00 9.300614E-01 2.543873E+01 1.023421E+00 - 4.800000E+01 6.190058E+00 4.643384E+00 2.262773E+01 2.140351E+01 -4.081050E-01 -6.822267E-02 -4.081050E-01 2.251564E+01 7.977080E-01 -6.822267E-02 7.977080E-01 2.396406E+01 1.031116E+00 - 5.000000E+01 6.050312E+00 4.561689E+00 2.276145E+01 2.270969E+01 1.945745E+00 7.182137E-01 1.945745E+00 2.256747E+01 -8.014799E-02 7.182137E-01 -8.014799E-02 2.300720E+01 9.924155E-01 - 5.200000E+01 6.058320E+00 4.596084E+00 2.396151E+01 2.465548E+01 4.027359E-01 4.241328E-01 4.027359E-01 2.377022E+01 -2.175836E-01 4.241328E-01 -2.175836E-01 2.345884E+01 9.748240E-01 - 5.400000E+01 5.811851E+00 4.497924E+00 2.361564E+01 2.432943E+01 3.601869E-01 -2.175576E-01 3.601869E-01 2.430082E+01 -5.040954E-01 -2.175576E-01 -5.040954E-01 2.221668E+01 8.759516E-01 - 5.600000E+01 6.128532E+00 4.597272E+00 2.343074E+01 2.260895E+01 -1.377578E-01 1.513235E-01 -1.377578E-01 2.344507E+01 9.297741E-01 1.513235E-01 9.297741E-01 2.423819E+01 1.020840E+00 - 5.800000E+01 6.168224E+00 4.637639E+00 2.389206E+01 2.449544E+01 -4.915214E-01 -4.400038E-01 -4.915214E-01 2.245938E+01 2.345031E-01 -4.400038E-01 2.345031E-01 2.472135E+01 1.020390E+00 - 6.000000E+01 5.915771E+00 4.537322E+00 2.251589E+01 2.285992E+01 -1.167712E+00 -4.014148E-01 -1.167712E+00 2.266524E+01 -6.841790E-01 -4.014148E-01 -6.841790E-01 2.202252E+01 9.189659E-01 - 6.200000E+01 6.134798E+00 4.698072E+00 2.207825E+01 2.120377E+01 -7.367727E-01 1.848829E+00 -7.367727E-01 2.280276E+01 -4.748972E-01 1.848829E+00 -4.748972E-01 2.222823E+01 9.578171E-01 - 6.400000E+01 6.076860E+00 4.563292E+00 2.590121E+01 2.740218E+01 1.156325E+00 -1.184614E-01 1.156325E+00 2.568977E+01 1.465388E+00 -1.184614E-01 1.465388E+00 2.461167E+01 1.009045E+00 - 6.600000E+01 6.080366E+00 4.571443E+00 2.375377E+01 2.478938E+01 -5.087813E-01 1.240471E+00 -5.087813E-01 2.489488E+01 3.371527E-01 1.240471E+00 3.371527E-01 2.157706E+01 1.005948E+00 - 6.800000E+01 5.954478E+00 4.529768E+00 2.287844E+01 2.222927E+01 -1.420854E+00 2.807446E-01 -1.420854E+00 2.357794E+01 -8.558183E-01 2.807446E-01 -8.558183E-01 2.282810E+01 9.498066E-01 - 7.000000E+01 6.157413E+00 4.619224E+00 2.446773E+01 2.599290E+01 3.999668E-01 6.878979E-01 3.999668E-01 2.323952E+01 1.185428E-01 6.878979E-01 1.185428E-01 2.417078E+01 1.025459E+00 - 7.200000E+01 6.094443E+00 4.625996E+00 2.277181E+01 2.092237E+01 -1.227468E-02 1.801203E-01 -1.227468E-02 2.356900E+01 -1.614963E-01 1.801203E-01 -1.614963E-01 2.382406E+01 9.789647E-01 - 7.400000E+01 5.938594E+00 4.534084E+00 2.350136E+01 2.307533E+01 -5.038709E-01 5.791226E-01 -5.038709E-01 2.366048E+01 5.127083E-01 5.791226E-01 5.127083E-01 2.376829E+01 9.363400E-01 - 7.600000E+01 6.003787E+00 4.530850E+00 2.353442E+01 2.223453E+01 -6.639333E-01 7.153741E-02 -6.639333E-01 2.409167E+01 -4.855924E-01 7.153741E-02 -4.855924E-01 2.427706E+01 9.819579E-01 - 7.800000E+01 6.071441E+00 4.590654E+00 2.351034E+01 2.386587E+01 -4.201054E-01 6.536402E-01 -4.201054E-01 2.275174E+01 2.064866E-01 6.536402E-01 2.064866E-01 2.391340E+01 9.871913E-01 - 8.000000E+01 6.215567E+00 4.633100E+00 2.418733E+01 2.603468E+01 2.050324E-01 -7.574265E-01 2.050324E-01 2.449534E+01 -2.256599E-01 -7.574265E-01 -2.256599E-01 2.203196E+01 1.054978E+00 - 8.200000E+01 5.817649E+00 4.446922E+00 2.236446E+01 2.094628E+01 2.407914E-02 -9.055949E-01 2.407914E-02 2.234194E+01 1.373387E-01 -9.055949E-01 1.373387E-01 2.380516E+01 9.138176E-01 - 8.400000E+01 6.245892E+00 4.457667E+00 2.336210E+01 2.369585E+01 2.705746E-01 -7.344251E-01 2.705746E-01 2.361317E+01 1.363211E+00 -7.344251E-01 1.363211E+00 2.277727E+01 1.192150E+00 - 8.600000E+01 6.089238E+00 4.467073E+00 2.459875E+01 2.415305E+01 -1.246060E+00 1.025800E+00 -1.246060E+00 2.448307E+01 1.793919E-01 1.025800E+00 1.793919E-01 2.516014E+01 1.081444E+00 - 8.800000E+01 6.051164E+00 4.545972E+00 2.493907E+01 2.408839E+01 2.292027E-01 -7.113388E-01 2.292027E-01 2.469087E+01 6.866747E-01 -7.113388E-01 6.866747E-01 2.603795E+01 1.003461E+00 - 9.000000E+01 5.809749E+00 4.411326E+00 2.483036E+01 2.621518E+01 1.213985E+00 8.158177E-01 1.213985E+00 2.427016E+01 9.519274E-01 8.158177E-01 9.519274E-01 2.400573E+01 9.322818E-01 diff --git a/silvia/Doc/FIELD b/silvia/Doc/FIELD deleted file mode 100644 index cec11793..00000000 --- a/silvia/Doc/FIELD +++ /dev/null @@ -1,9 +0,0 @@ -Simple test - -SPECIES 1 -A 1.0 0.0 192 0 - -INTERACTIONS 1 -A A dpd 25.0 1.0 4.5 - -CLOSE diff --git a/silvia/Doc/INPUT_MD_DPD.txt b/silvia/Doc/INPUT_MD_DPD.txt deleted file mode 100644 index 0d625d6b..00000000 --- a/silvia/Doc/INPUT_MD_DPD.txt +++ /dev/null @@ -1,214 +0,0 @@ -In this file I list the keywords needed for a simple MD/DPD simulation, -and put in square parenthesis [=...] the value they take in the "Simple -example" prepared for DL_MESO_DPD. - -An array of size N is indicated as A(N). - -If given explicitly, a 3-dimensional array is written as (A1, A2, A3). - -NOTE: For some quantities I define arrays to organize the input, BUT it is -not necessary, we can think of this. For example: for each particle -species, a set of properties is needed (mass, charge, etc). Since in general -we have multiple species, we can 1) store these properties in an array of size -"number_of_species", or 2) just have a number ("number_of_species") of bocks with this info. -These would be *items* of the same type, and the number of their *occurrences* is given. -The same issue appears for two-body interactions (whose number is number_of_species_pairs). -We should see what is better, also in view of the wrappers. What do you think? - -Here DPD units are used, except for the job_time, which -is in seconds. Later on, the units (dimensional factorization and -specific choice, see .pdf in the OSTHUS WIKI) will have to be added to each variable. - -When I say min_value = 2, I mean x >= 2. If I require x > 2, I tell it explicitly. - -The properties I give for the keywords are: - -- types: string, integer, float, boolean -- scalar, array -- constraints (>= min, <=max, >lower_bound, 0 -mandatory within the IF - -END IF - -END IF - - -"simulation_box_sizes" [= (4.0, 4.0, 4.0)] -PROPERTIES: double, array(3), requires value > 0 for each component -mandatory - -"number_of_species" [= 1] -PROPERTIES: integer, scalar, min_value = 1 -mandatory - -For each species, in the FIELD file we have a line with: -name, mass, electric_charge, is_frozen, (unbonded) population -We use these to build arrays of size "number_of_species". In the simple example, there is just one species. - -"species_name" [= (A)] -PROPERTIES: string, array("number_of_species") -mandatory - -"species_mass" [= (1.0)] -PROPERTIES: double, array("number_of_species") -mandatory - -IF (electrostatics_is_on == TRUE) THEN we need - -"species_electric_charge" [= (0.0)] -PROPERTIES: double, array("number_of_species") -mandatory within the if (or should we make it always mandatory?) - -END IF - -"species_is_frozen" [= False] -PROPERTIES: boolean, array("number_of_species") -optional - -"species_population" [= (192)] -PROPERTIES: integer, array("number_of_species"), each component has min_value=0, their sum -(which we can call "total_number_of_particles") must have min_value=1. -mandatory - -Pair interactions need to be defined for each possible species pair (symmetry -is used). It's maybe convenient to define this quantity: -"number_of_species_pairs" = number_of_species * (number_of_species + 1)/2 - -The following quantities are defined for each possible pair of species (which -in the example is just one, the A-A interaction): - -"potential_type" [= (groot_warren)] -PROPERTIES: string, array ("number_of_species_pairs"), takes value in a finite set -(say, {groot_warren, lennard_jones}) - -IF (potential_type == groot_warren) THEN we need - -"groot_warren_repulsion" [= (25.0)] -PROPERTIES: float, array ("number_of_species_pairs"), min_value=0 -mandatory within the IF - -"groot_warren_cut_off" [= (1.0)] -PROPERTIES: float, array ("number_of_species_pairs"), must be >0 -mandatory within the IF - -END IF - - -Solver and some processing parameters: - -"simulation_title" [="Simple test"] -PROPERTIES: string, scalar -optional (NB: in DL_MESO_DPD the first line of the input files is assumed to contain a title) - -"time_step" [= 0.01] -PROPERTIES: float, scalar, must be >0 -mandatory - -"number_of_steps" [= 10000] -PROPERTIES: integer, scalar, min_value = 1 -mandatory - -"number_of_equilibration_steps" [= 1000] # affects the setting of the time origin. Time is measured from when equilibration finishes (t=0.00). -PROPERTIES: integer, scalar, min_value = 0 -optional - -Settings for the raw output (trajectory) and on-fly processing. - -Trajectory output settings: first, step, level of configuration - -"trajectory_is_output" [ = True, via the keyword "traj"] -PROPERTIES: boolean, scalar -mandatory - -IF (trajectory_is_output == True) THEN we need - -"trajectory_first_frame" [=1] -PROPERTIES: integer, scalar, min_value = 1 -mandatory within the IF - -"number_of_steps_between_trajectory_samplings" [=100] # call it "trajectory_step"? -PROPERTIES: integer, scalar, min_value = 1 -mandatory within the IF - -"trajectory_level" [= "r"] (appears as "0" in the CONTROL file) -PROPERTIES: string, scalar, takes values in "r", "rv", "rvf" -mandatory within the IF - -END IF - -Thermodynamic sampling (calculation of energy etc) on the fly: - -"thermodynamics_is_output" [ = True, via the keyword "stat"] -PROPERTIES: boolean, scalar -mandatory - -IF ("thermodynamics_is_output" == True) THEN we need - -"number_of_steps_between_thermodynamics_samplings" [= 200] -PROPERTIES: integer, scalar, min_value = 1 -mandatory within the IF - -END IF - -"computational_boundary_conditions" [= ("periodic,periodic,periodic"), is like -this by default in DL_MESO_DPD] -PROPERTIES: string, array(3), takes values in a finite set (say, {"periodic, -reflective, ...}) - -Run specifications: -"job_time" [=1000] -PROPERTIES: float, scalar, must be >0 -mandatory - -DL_MESO_DPD remaining parameters, at the moment we put them by hand: - -stack size -print every -close time ------------------------------------------------------------------------------------ - -Finally, a general QUESTION I have is: should we name each specific parameter, as I -have done above, or should we group them into lists where possible, and refer to -another documentation for the mapping? For example: the trajectory output -requires two integers: first, step. At the moment there are two keywords, -but we could combine them into an array/list with two entries. -PROS: reducing the number of keywords and names -CONTRA: the schema is less self-contained and self-explanatory diff --git a/silvia/Doc/OUTPUT b/silvia/Doc/OUTPUT deleted file mode 100644 index 10016941..00000000 --- a/silvia/Doc/OUTPUT +++ /dev/null @@ -1,242 +0,0 @@ - *********************** stfc/ccp5 program library package - stfc daresbury laboratory dissipative particle - D L _ M E S O _ D P D dynamics program - authors: w. smith & m. a. seaton - *********************** dl_meso version 2.6, november 2015 - copyright (c) 2015 stfc daresbury laboratory - - ************************************************************************ - ********************* RUNNING ON ONE PROCESSOR ******************* - ********************* (LITTLE ENDIAN) ******************* - ************************************************************************ - -Simple test - - physical specification - - system volume = 6.400000E+01 - simulation cell dimensions = 4.000000E+00 4.000000E+00 4.000000E+00 - specified temperature = 1.000000E+00 - simulation timestep = 1.000000E-02 - - simulation controls - - - new simulation - - system size (particles) = 192 - number of frozen particles = 0 - max. no. particles/node = 1286 - init. no. buffer particles = 184 - init. max. interactions/node = 13696 - - number of timesteps = 10000 - restart file interval = 1000 - printing interval = 500 - data saving option = T - data saving starting step = 1 - data saving interval = 100 - data saving information key = 0 - data stacking interval = 100 - temperature scaling option = F - temperature scaling interval = 0 - equilibration period = 1000 - - maximum cutoff radius = 1.000000E+00 - - thermostat cutoff radius = 1.000000E+00 - domain boundary halo size = 1.000000E+00 - - integrator/thermostat type: md velocity verlet - - ensemble type: NVT (constant volume/temperature) - barostat type: none - - species data - - population mass charge frozen - A 192 1.000000E+00 0.000000E+00 F - - energy parameters: absolute values - - interaction potential parameters - - energy parameters - - A A dpd 2.500000E+01 - - interaction lengths - - A A 1.000000E+00 - - dissipative parameters - - viscosity random force - A A 4.500000E+00 3.000000E+01 - - electrostatic parameters - - implementation: none - - link cell details - number of cells per domain (npx,npy,npz)= 4 4 4 - - initial particle positions and velocities - - 1 A 4.000000E-01 4.000000E-01 2.500000E-01 9.227667E-01 9.338275E-01 -1.158086E+00 - 10 A 3.600000E+00 1.200000E+00 2.500000E-01 -3.111209E-02 -1.374412E+00 -1.146228E+00 - 19 A 2.800000E+00 2.800000E+00 2.500000E-01 1.631702E+00 1.283501E+00 3.354475E-01 - 28 A 2.000000E+00 4.000000E-01 7.500000E-01 7.769409E-01 -7.217391E-01 -5.917896E-01 - 37 A 1.200000E+00 2.000000E+00 7.500000E-01 2.265556E-01 5.681135E-01 3.591857E-01 - 46 A 4.000000E-01 3.600000E+00 7.500000E-01 -9.161112E-01 -1.420836E+00 5.036427E-01 - 55 A 3.600000E+00 4.000000E-01 1.250000E+00 -4.280016E-01 -1.536948E+00 3.014094E-01 - 64 A 2.800000E+00 2.000000E+00 1.250000E+00 7.665276E-01 -3.010296E-01 -7.241759E-01 - 73 A 2.000000E+00 3.600000E+00 1.250000E+00 -7.918951E-01 -1.023899E-01 5.828728E-01 - 82 A 1.200000E+00 1.200000E+00 1.750000E+00 1.668166E+00 4.549546E-03 1.131582E-03 - 91 A 4.000000E-01 2.800000E+00 1.750000E+00 -1.015936E+00 3.653215E-01 -7.335234E-01 - 100 A 3.600000E+00 3.600000E+00 1.750000E+00 9.793484E-01 5.300017E-01 -3.861329E-01 - 109 A 2.800000E+00 1.200000E+00 2.250000E+00 -6.166944E-01 6.960985E-01 -3.325815E-01 - 118 A 2.000000E+00 2.800000E+00 2.250000E+00 1.203914E+00 -1.271127E+00 6.782992E-02 - 127 A 1.200000E+00 4.000000E-01 2.750000E+00 2.987795E-01 1.156095E+00 1.326935E+00 - 136 A 4.000000E-01 2.000000E+00 2.750000E+00 5.250216E-01 4.921866E-01 -1.327082E-01 - 145 A 3.600000E+00 2.800000E+00 2.750000E+00 -7.422542E-01 -1.134256E+00 -1.607890E+00 - 154 A 2.800000E+00 4.000000E-01 3.250000E+00 -1.006846E+00 -2.648107E-03 7.742043E-01 - 163 A 2.000000E+00 2.000000E+00 3.250000E+00 -1.353339E+00 2.283742E-01 -4.485519E-01 - 172 A 1.200000E+00 3.600000E+00 3.250000E+00 -5.999866E-02 -1.704008E+00 -1.500096E+00 - 181 A 4.000000E-01 1.200000E+00 3.750000E+00 -1.318148E+00 -1.043643E+00 1.127351E+00 - 190 A 3.600000E+00 2.000000E+00 3.750000E+00 -8.099716E-01 1.001522E+00 5.112877E-01 - - time elapsed since job start = 0.00300000 seconds - - - ----------------------------------------------------------------------------------------------- - step en-total pe-total vir-total ke-total pressure temperature - ----------------------------------------------------------------------------------------------- - 1 5.627963E+00 4.136661E+00 -1.957151E+01 1.491302E+00 2.255411E+01 9.942014E-01 - 0.003 5.627963E+00 4.136661E+00 -1.957151E+01 1.491302E+00 2.255411E+01 9.942014E-01 - ----------------------------------------------------------------------------------------------- - 500 6.004320E+00 4.482937E+00 -1.971385E+01 1.521383E+00 2.275661E+01 1.014255E+00 - 0.076 5.904388E+00 4.489099E+00 -2.069359E+01 1.415289E+00 2.352417E+01 9.435259E-01 - ----------------------------------------------------------------------------------------------- - 1000 5.925476E+00 4.543901E+00 -2.207401E+01 1.381575E+00 2.483716E+01 9.210500E-01 - 0.142 5.990985E+00 4.531911E+00 -2.062958E+01 1.459073E+00 2.354772E+01 9.727155E-01 - ----------------------------------------------------------------------------------------------- - - equilibration period ended at step 1000 - - ----------------------------------------------------------------------------------------------- - 1500 5.854214E+00 4.469076E+00 -1.970019E+01 1.385139E+00 2.247047E+01 9.234257E-01 - 0.210 5.949614E+00 4.497726E+00 -2.061710E+01 1.451888E+00 2.352088E+01 9.679252E-01 - ----------------------------------------------------------------------------------------------- - 2000 6.156960E+00 4.571103E+00 -1.988331E+01 1.585857E+00 2.305503E+01 1.057238E+00 - 0.277 6.099602E+00 4.534961E+00 -2.090352E+01 1.564641E+00 2.403280E+01 1.043094E+00 - ----------------------------------------------------------------------------------------------- - 2500 6.116960E+00 4.580125E+00 -1.941611E+01 1.536835E+00 2.248978E+01 1.024557E+00 - 0.344 6.131753E+00 4.573668E+00 -2.064516E+01 1.558085E+00 2.376133E+01 1.038723E+00 - ----------------------------------------------------------------------------------------------- - 3000 5.967888E+00 4.463919E+00 -1.966647E+01 1.503969E+00 2.267441E+01 1.002646E+00 - 0.411 6.014431E+00 4.534885E+00 -2.061722E+01 1.479546E+00 2.357631E+01 9.863638E-01 - ----------------------------------------------------------------------------------------------- - 3500 6.091063E+00 4.518043E+00 -1.979839E+01 1.573020E+00 2.294443E+01 1.048680E+00 - 0.478 6.072761E+00 4.549995E+00 -2.081372E+01 1.522766E+00 2.385925E+01 1.015178E+00 - ----------------------------------------------------------------------------------------------- - 4000 5.959333E+00 4.454330E+00 -1.946985E+01 1.505003E+00 2.247985E+01 1.003335E+00 - 0.545 5.942603E+00 4.487982E+00 -2.068887E+01 1.454620E+00 2.359811E+01 9.697468E-01 - ----------------------------------------------------------------------------------------------- - 4500 6.119219E+00 4.636826E+00 -2.116308E+01 1.482394E+00 2.412787E+01 9.882625E-01 - 0.613 6.093736E+00 4.552396E+00 -2.052224E+01 1.541339E+00 2.360492E+01 1.027560E+00 - ----------------------------------------------------------------------------------------------- - 5000 6.111015E+00 4.490325E+00 -1.935363E+01 1.620691E+00 2.259501E+01 1.080460E+00 - 0.680 6.167153E+00 4.590887E+00 -2.041057E+01 1.576267E+00 2.356310E+01 1.050844E+00 - ----------------------------------------------------------------------------------------------- - 5500 6.065764E+00 4.583002E+00 -2.160986E+01 1.482762E+00 2.457539E+01 9.885077E-01 - 0.748 6.080192E+00 4.544037E+00 -2.070352E+01 1.536155E+00 2.377583E+01 1.024103E+00 - ----------------------------------------------------------------------------------------------- - 6000 6.050312E+00 4.561689E+00 -1.978420E+01 1.488623E+00 2.276145E+01 9.924155E-01 - 0.815 5.972303E+00 4.522172E+00 -2.082831E+01 1.450131E+00 2.372857E+01 9.667538E-01 - ----------------------------------------------------------------------------------------------- - 6500 6.055506E+00 4.498567E+00 -1.967542E+01 1.556939E+00 2.278930E+01 1.037959E+00 - 0.882 5.881394E+00 4.527041E+00 -2.043729E+01 1.354353E+00 2.314599E+01 9.029023E-01 - ----------------------------------------------------------------------------------------------- - 7000 5.915771E+00 4.537322E+00 -1.975899E+01 1.378449E+00 2.251589E+01 9.189659E-01 - 0.949 5.925954E+00 4.539189E+00 -2.056443E+01 1.386765E+00 2.333796E+01 9.245097E-01 - ----------------------------------------------------------------------------------------------- - 7500 6.190211E+00 4.586982E+00 -2.079175E+01 1.603229E+00 2.399821E+01 1.068820E+00 - 1.016 6.113813E+00 4.595606E+00 -2.049574E+01 1.518207E+00 2.353216E+01 1.012138E+00 - ----------------------------------------------------------------------------------------------- - 8000 6.157413E+00 4.619224E+00 -2.139135E+01 1.538189E+00 2.446773E+01 1.025459E+00 - 1.085 5.968939E+00 4.543568E+00 -2.068719E+01 1.425371E+00 2.353793E+01 9.502473E-01 - ----------------------------------------------------------------------------------------------- - 8500 5.813601E+00 4.434628E+00 -1.968284E+01 1.378972E+00 2.244079E+01 9.193148E-01 - 1.152 5.923150E+00 4.501354E+00 -2.057197E+01 1.421796E+00 2.341556E+01 9.478638E-01 - ----------------------------------------------------------------------------------------------- - 9000 6.215567E+00 4.633100E+00 -2.102239E+01 1.582467E+00 2.418733E+01 1.054978E+00 - 1.220 6.094225E+00 4.588458E+00 -2.069578E+01 1.505767E+00 2.370731E+01 1.003845E+00 - ----------------------------------------------------------------------------------------------- - 9500 6.142155E+00 4.669823E+00 -2.078261E+01 1.472332E+00 2.372728E+01 9.815545E-01 - 1.287 6.229064E+00 4.603951E+00 -2.071802E+01 1.625113E+00 2.396824E+01 1.083409E+00 - ----------------------------------------------------------------------------------------------- - 10000 5.809749E+00 4.411326E+00 -2.203351E+01 1.398423E+00 2.483036E+01 9.322818E-01 - 1.354 5.940671E+00 4.508589E+00 -2.084285E+01 1.432082E+00 2.370702E+01 9.547215E-01 - ----------------------------------------------------------------------------------------------- - - run terminating. elapsed cpu time = 1.35, job time = 100.00, close time = 0.00 - - - run closing at step 10000 final averages and fluctuations over 9000 steps - - - ----------------------------------------------------------------------------------------------- - en-total pe-total vir-total ke-total pressure temperature - ----------------------------------------------------------------------------------------------- - 6.048554E+00 4.544777E+00 -2.065684E+01 1.503778E+00 2.366440E+01 1.002518E+00 - 1.085799E-01 6.069649E-02 8.556768E-01 9.027294E-02 8.715013E-01 6.018196E-02 - ----------------------------------------------------------------------------------------------- - - average cpu time (forces) = 0.00013 (s) - average cpu time (cycle) = 0.00013 (s) - - final no. buffer particles = 184 - final max. interactions/node = 13696 - - final particle positions and velocities - - 1 A 2.596456E+00 3.426947E+00 2.441112E+00 1.232498E+00 7.677283E-01 3.533188E-01 - 10 A 4.484597E-01 1.526531E+00 2.846970E+00 9.571331E-01 5.372865E-01 1.879655E+00 - 19 A 2.670861E+00 2.053189E+00 2.563712E+00 5.439613E-01 5.857050E-01 -2.283059E-01 - 28 A 1.462694E+00 2.591120E-01 2.048400E-01 -1.783941E+00 -1.072711E+00 1.198877E+00 - 37 A 1.099563E+00 2.703297E+00 1.742742E+00 1.358418E-01 -1.532167E+00 5.782626E-01 - 46 A 1.043828E+00 3.281274E+00 2.997321E+00 8.050431E-01 -8.290785E-01 2.961291E-01 - 55 A 1.669856E+00 6.659551E-01 1.433485E+00 -2.220188E-01 -7.595829E-01 1.386513E-01 - 64 A 3.224213E+00 8.379278E-01 1.247004E+00 5.848527E-01 3.163588E-01 7.486331E-01 - 73 A 3.361841E+00 3.160245E+00 1.372822E+00 3.879532E-01 6.741322E-01 -1.027257E+00 - 82 A 2.221033E+00 3.906452E-01 2.870016E+00 8.691853E-01 -8.944886E-01 -1.210170E-02 - 91 A 2.328110E+00 2.202868E+00 3.620694E+00 -1.075472E+00 1.040116E+00 8.451807E-02 - 100 A 3.538258E+00 3.835697E+00 3.356399E+00 2.705906E-03 -9.856108E-01 4.293994E-01 - 109 A 1.075073E+00 1.218227E-01 3.830762E+00 1.423845E+00 -8.083116E-01 5.620244E-01 - 118 A 3.598687E+00 3.641846E+00 1.797066E-01 9.091245E-01 -3.722467E-01 -2.947127E-01 - 127 A 3.578700E+00 1.988381E+00 2.992891E+00 -2.913370E-01 -1.714098E+00 -6.371316E-01 - 136 A 1.738740E+00 2.469074E+00 1.882559E+00 1.653556E+00 -1.901196E-01 3.001950E-01 - 145 A 2.089865E-02 3.512721E-01 3.652403E+00 6.255045E-01 -2.123226E+00 -5.336127E-01 - 154 A 2.656629E+00 3.779212E+00 4.505827E-01 -4.706635E-01 2.549968E-01 1.439021E+00 - 163 A 2.489676E+00 5.902230E-01 4.377082E-01 1.058744E+00 -1.300172E+00 1.552036E+00 - 172 A 6.087398E-01 3.129960E+00 1.348292E+00 -1.571785E-01 2.054056E-01 7.571058E-01 - 181 A 2.165831E-02 1.153258E+00 2.287190E+00 1.773688E+00 4.594364E-01 1.313003E+00 - 190 A 2.268496E+00 2.631654E+00 1.151952E-01 -1.463944E+00 4.152844E-01 3.191287E-01 - - time elapsed since job start = 1.35500000 seconds - - - ************************************************************************ - * Many thanks for using DL_MESO_DPD for your work. Please acknowledge * - * our efforts by including one of the following references when * - * publishing data obtained using DL_MESO_DPD: * - * * - * M. A. Seaton, R. L. Anderson, S. Metz and W. Smith, "DL_MESO: * - * highly scalable mesoscale simulations", Mol. Sim. 39 (10), 796-821 * - * (2013), doi:10.1080/08927022.2013.772297 * - * * - * M. A. Seaton, "The DL_MESO Mesoscale Simulation Package", STFC * - * Scientific Computing Department (2012), www.ccp5.ac.uk/DL_MESO * - ************************************************************************ - diff --git a/silvia/Doc/bad/4369B8C0.tmp:Zone.Identifier:$DATA b/silvia/Doc/bad/4369B8C0.tmp:Zone.Identifier:$DATA deleted file mode 100644 index a45e1ac4..00000000 --- a/silvia/Doc/bad/4369B8C0.tmp:Zone.Identifier:$DATA +++ /dev/null @@ -1,2 +0,0 @@ -[ZoneTransfer] -ZoneId=3 diff --git a/silvia/Doc/bad/4C0D0143.tmp:Zone.Identifier:$DATA b/silvia/Doc/bad/4C0D0143.tmp:Zone.Identifier:$DATA deleted file mode 100644 index a45e1ac4..00000000 --- a/silvia/Doc/bad/4C0D0143.tmp:Zone.Identifier:$DATA +++ /dev/null @@ -1,2 +0,0 @@ -[ZoneTransfer] -ZoneId=3 diff --git a/silvia/Doc/bad/60B1CB6.tmp:Zone.Identifier:$DATA b/silvia/Doc/bad/60B1CB6.tmp:Zone.Identifier:$DATA deleted file mode 100644 index a45e1ac4..00000000 --- a/silvia/Doc/bad/60B1CB6.tmp:Zone.Identifier:$DATA +++ /dev/null @@ -1,2 +0,0 @@ -[ZoneTransfer] -ZoneId=3 diff --git a/silvia/Doc/bad/63D1CA77.tmp:Zone.Identifier:$DATA b/silvia/Doc/bad/63D1CA77.tmp:Zone.Identifier:$DATA deleted file mode 100644 index a45e1ac4..00000000 --- a/silvia/Doc/bad/63D1CA77.tmp:Zone.Identifier:$DATA +++ /dev/null @@ -1,2 +0,0 @@ -[ZoneTransfer] -ZoneId=3 diff --git a/silvia/Doc/bad/A4CE94A5.tmp:Zone.Identifier:$DATA b/silvia/Doc/bad/A4CE94A5.tmp:Zone.Identifier:$DATA deleted file mode 100644 index a45e1ac4..00000000 --- a/silvia/Doc/bad/A4CE94A5.tmp:Zone.Identifier:$DATA +++ /dev/null @@ -1,2 +0,0 @@ -[ZoneTransfer] -ZoneId=3 diff --git a/silvia/__init__.py b/silvia/__init__.py deleted file mode 100644 index e69de29b..00000000 diff --git a/silvia/cata_DPD.py b/silvia/cata_DPD.py deleted file mode 100644 index ac78c07a..00000000 --- a/silvia/cata_DPD.py +++ /dev/null @@ -1,122 +0,0 @@ -# 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, re -import Accas -from Accas import * - -import types -class Tuple: - def __init__(self,ntuple): - self.ntuple=ntuple - - def __convert__(self,valeur): - if type(valeur) == types.StringType: - return None - if len(valeur) != self.ntuple: - return None - return valeur - - def info(self): - return "Tuple de %s elements" % self.ntuple - - -JdC = JDC_CATA ( - code = 'DPD', - ) -VERSION_CATALOGUE='V_0' - -Solver_Input = PROC(nom = 'Solver_Input', - simulation_title = SIMP(statut='o', typ='TXM', defaut='Simple test'), - time_step = SIMP(statut='o', typ='R', defaut=0.01, val_min=0), - number_of_steps = SIMP(statut='o', typ='I', defaut=10000, val_min=1), - number_of_equilibration_steps = SIMP(statut='o', typ='I', defaut=1000, val_min=1), - job_properties= FACT(statut='o', - job_duration = SIMP(statut='o', typ='R', defaut=1000, val_min=0), - stack_size = SIMP(statut='f', typ='R', defaut=1000, val_min=0), - print_frequency = SIMP(statut='f', typ='TXM', defaut='every', into=['every','never','sometimes']), - close_time = SIMP(statut='f', typ='R', defaut=1000, val_min=0), - ), -) - -DPD_Input = PROC(nom = 'DPD_Input', - - ensemble = SIMP(statut='o', typ='TXM', defaut='nvt', into=['nvt','nve']), - integrator_type = SIMP(statut='o', typ='TXM', defaut='mdvv', into=['mdvv','others to be define']), - #simulation_box_sizes= SIMP(statut ='o', typ=Tuple(3),validators=VerifTypeTuple(('R','R','R')),), - computational_boundary_conditions = SIMP(statut='o',typ='TXM',min=3,max=3, into=['periodic','reflective'],), - number_of_species = SIMP(statut='o', typ='I', defaut=1, val_min=1), - number_of_species_pairs = SIMP(statut='o', typ='I', defaut=1, val_min=1), - # to do : calcluer number_of_species_pairs - b_ensemble_nvt = BLOC(condition= "ensemble == 'nvt'", - ensemble_nvt = FACT(statut='o', - target_temperature = SIMP (statut='o', typ='R',val_min=0, defaut=1), - thermostat_type = SIMP (statut='o', typ='TXM', defaut='dpd', into=['dpd','others to be define']), - b_thermostat_type_dpd = BLOC(condition= "thermostat_type == 'dpd'", - thermostat_type_dpd = FACT(statut='o', - # We add number_of_species_pairs --> silvia has to say if this is a good idea - Consigne = SIMP(statut ="o", homo="information", typ="TXM", defaut = "dpd_thermostat_drag_coefficient and dpd_thermostat_cutoff arrays size has to equal number of species pairs "), - dpd_thermostat_drag_coefficient = SIMP(statut='o', typ='R',max='**', defaut=[4.5,],), - dpd_thermostat_cutoff = SIMP(statut='o', typ='R',max='**', val_min=0, defaut=[1.0,],), - ),# fin du fact thermostat_type_dpd - ), # fin du bloc b_thermostat_type_dpd - ), # fin du fact ensemble_nvt - ), # fin du bloc b_ensemble_nvt - # todoEric --> verificateur de tuple positif - # todoPascale -> essayer de faire un sivalide pour positionner max - species_parameters = FACT(statut='o', max="**", - species_name=SIMP(statut='o',typ='TXM'), - species_mass=SIMP(statut='o',typ='R',defaut=1.0), - # todoPascale -> essayer de faire un global - electrostatics_is_on = SIMP(statut='o', typ=bool, defaut=False), - b_electrostatics_is_on = BLOC( condition= "electrostatics_is_on == True", - species_electric_charge=SIMP(statut='o',typ='R',defaut=0.0), - ), # fin du bloc b_electrostatics_is_on - species_is_frozen = SIMP(statut='f', typ=bool,), - species_population = SIMP(statut='o', typ='R', val_min=0.0), - # todo --> verificateur de PROC : la somme des species_population doit etre au minimun 1 - ),# fin du fact species_parameters - species_pair_parameters = FACT(statut='o', max="**", - #pair_identification= SIMP(statut ='o', typ=Tuple(2),validators=VerifTypeTuple(('TXM','TXM')),), - pair_identification= SIMP(statut ='o', max=2, typ = 'TXM'), - species_pair_parameters_potential_type=SIMP(statut='o', typ='TXM',into=['groot_warren','lennard_jones']), - b_parameters_potential_type_groot_warren= BLOC(condition= "species_pair_parameters_potential_type == 'groot_warren'", - groot_warren_repulsion=SIMP(statut='o',typ='R',defaut=25.0,val_min=0), - groot_warren_cutoff=SIMP(statut='o',typ='R',defaut=1.0,val_min=0), - ), - ),# fin du fact species_pair_parameters -) - -Trajectory_output_setting = PROC(nom = 'Trajectory_output_setting', - trajectory_output = SIMP(statut='o', typ=bool, defaut=False), - b_trajectory_output_true= BLOC(condition= "trajectory_output == True", - trajectory_first_name=SIMP(statut='o',typ='I', val_min=1), - number_of_steps_between_trajectory_sampling=SIMP(statut='o',typ='I',defaut=100,val_min=1), - trajectory_level=SIMP(statut='o',typ='TXM', into=['r','rv','rvf']), - ),# fin du bloc b_trajectory_output_true - -) -Thermodynamic_sampling = PROC(nom = 'Thermodynamic_sampling', - number_of_steps_between_thermodynamics_samplings=SIMP(statut='f',typ='I',defaut=200,val_min=1), -) - - -#TEXTE_NEW_JDC = 'Solver_Input();DPD_Input();trajectory_output_setting()' - - diff --git a/silvia/cata_DPD_genere.xsd b/silvia/cata_DPD_genere.xsd deleted file mode 100644 index 2e5a1ede..00000000 --- a/silvia/cata_DPD_genere.xsd +++ /dev/null @@ -1,264 +0,0 @@ -translatorFichier : /home/A96028/QT5GitEficasTravail/eficas/silvia/DPD -/home/A96028/QT5GitEficasTravail/eficas/silvia/DPD_en loaded -True -translatorFichier : /home/A96028/QT5GitEficasTravail/eficas/silvia/DPD -/home/A96028/QT5GitEficasTravail/eficas/silvia/DPD_en loaded -True -translatorFichier : /home/A96028/QT5GitEficasTravail/eficas/silvia/DPD -/home/A96028/QT5GitEficasTravail/eficas/silvia/DPD_en loaded -True -TXM -R -I -I -R -R -TXM -R -TXM -TXM - -TXM -I -I -R -TXM -TXM -R -R -TXM -R -R - -R -TXM -R -R - -I -I -TXM -I - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/silvia/cata_DPD_ref.py b/silvia/cata_DPD_ref.py deleted file mode 100644 index de7dbdde..00000000 --- a/silvia/cata_DPD_ref.py +++ /dev/null @@ -1,123 +0,0 @@ -# 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, re -import Accas -from Accas import * - -import types -class Tuple: - def __init__(self,ntuple): - self.ntuple=ntuple - - def __convert__(self,valeur): - if type(valeur) == types.StringType: - return None - if len(valeur) != self.ntuple: - return None - return valeur - - def info(self): - return "Tuple de %s elements" % self.ntuple - - -JdC = JDC_CATA ( - code = 'DPD', - ) -VERSION_CATALOGUE='V_0' - -Solver_Input = PROC(nom = 'Solver_Input', - simulation_title = SIMP(statut='o', typ='TXM', defaut='Simple test'), - time_step = SIMP(statut='o', typ='R', defaut=0.01, val_min=0), - number_of_steps = SIMP(statut='o', typ='I', defaut=10000, val_min=1), - number_of_equilibration_steps = SIMP(statut='o', typ='I', defaut=1000, val_min=1), - job_properties= FACT(statut='o', - job_duration = SIMP(statut='o', typ='R', defaut=1000, val_min=0), - stack_size = SIMP(statut='f', typ='R', defaut=1000, val_min=0), - print_frequency = SIMP(statut='f', typ='TXM', defaut='every', into=['every','never','sometimes']), - close_time = SIMP(statut='f', typ='R', defaut=1000, val_min=0), - ), -) - -DPD_Input = PROC(nom = 'DPD_Input', - - ensemble = SIMP(statut='o', typ='TXM', defaut='nvt', into=['nvt','nve']), - integrator_type = SIMP(statut='o', typ='TXM', defaut='mdvv', into=['mdvv','others to be define']), - electrostatics_is_on = SIMP(statut='o', typ=bool, defaut=False), - simulation_box_sizes= SIMP(statut ='o', typ=Tuple(3),validators=VerifTypeTuple(('R','R','R')),), - computational_boundary_conditions = SIMP(statut='o',typ='TXM',min=3,max=3, into=['periodic','reflective'],), - number_of_species = SIMP(statut='o', typ='I', defaut=1, val_min=1), - number_of_species_pairs = SIMP(statut='o', typ='I', defaut=1, val_min=1), - # to do : calcluer number_of_species_pairs - b_ensemble_nvt = BLOC(condition= "ensemble == 'nvt'", - ensemble_nvt = FACT(statut='o', - target_temperature = SIMP (statut='o', typ='R',val_min=0, defaut=1), - thermostat_type = SIMP (statut='o', typ='TXM', defaut='dpd', into=['dpd','others to be define']), - b_thermostat_type_dpd = BLOC(condition= "thermostat_type == 'dpd'", - thermostat_type_dpd = FACT(statut='o', - # We add number_of_species_pairs --> silvia has to say if this is a good idea - Consigne = SIMP(statut ="o", homo="information", typ="TXM", defaut = "dpd_thermostat_drag_coefficient and dpd_thermostat_cutoff arrays size has to equal number of species pairs "), - dpd_thermostat_drag_coefficient = SIMP(statut='o', typ='R',max='**', defaut=[4.5,],), - dpd_thermostat_cutoff = SIMP(statut='o', typ='R',max='**', val_min=0, defaut=[1.0,],), - ),# fin du fact thermostat_type_dpd - ), # fin du bloc b_thermostat_type_dpd - ), # fin du fact ensemble_nvt - ), # fin du bloc b_ensemble_nvt - # todoEric --> verificateur de tuple positif - # todoPascale -> essayer de faire un sivalide pour positionner max - species_parameters = FACT(statut='o', max="**", - species_name=SIMP(statut='o',typ='TXM'), - species_mass=SIMP(statut='o',typ='R',defaut=1.0), - # todoPascale -> essayer de faire un global - #b_electrostatics_is_on = BLOC( condition= "electrostatics_is_on == True", - # species_electric_charge=SIMP(statut='o',typ='R',defaut=0.0), - #), # fin du bloc b_electrostatics_is_on - species_electric_charge=SIMP(statut='o',typ='R',defaut=0.0), - species_is_frozen = SIMP(statut='f', typ=bool,), - species_population = SIMP(statut='o', typ='R', val_min=0.0), - # todo --> verificateur de PROC : la somme des species_population doit etre au minimun 1 - ),# fin du fact species_parameters - species_pair_parameters = FACT(statut='o', max="**", - pair_identification= SIMP(statut ='o', typ=Tuple(2),validators=VerifTypeTuple(('TXM','TXM')),), - species_pair_parameters_potential_type=SIMP(statut='o', typ='TXM',into=['groot_warren','lennard_jones']), - b_parameters_potential_type_groot_warren= BLOC(condition= "species_pair_parameters_potential_type == 'groot_warren'", - groot_warren_repulsion=SIMP(statut='o',typ='R',defaut=25.0,val_min=0), - groot_warren_cutoff=SIMP(statut='o',typ='R',defaut=1.0,val_min=0), - ), - ),# fin du fact species_pair_parameters -) - -trajectory_output_setting = PROC(nom = 'trajectory_output_setting', - trajectory_output = SIMP(statut='o', typ=bool, defaut=False), - b_trajectory_output_true= BLOC(condition= "trajectory_output == True", - trajectory_first_name=SIMP(statut='o',typ='I', val_min=1), - number_of_steps_between_trajectory_sampling=SIMP(statut='o',typ='I',defaut=100,val_min=1), - trajectory_level=SIMP(statut='o',typ='TXM', into=['r','rv','rvf']), - ),# fin du bloc b_trajectory_output_true - -) -thermodynamic_sampling = PROC(nom = 'thermodynamic_sampling', - number_of_steps_between_thermodynamics_samplings=SIMP(statut='o',typ='I',defaut=200,val_min=1), -) - - -TEXTE_NEW_JDC = 'Solver_Input();DPD_Input();trajectory_output_setting()' - - - diff --git a/silvia/configuration_DPD.py b/silvia/configuration_DPD.py deleted file mode 100644 index 10269e71..00000000 --- a/silvia/configuration_DPD.py +++ /dev/null @@ -1,43 +0,0 @@ -# -*- coding: utf-8 -*- -# maConfiguration MANAGEMENT OF EDF VERSION -# ====================================================================== -# COPYRIGHT (C) 1991 - 2002 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# -# -# ====================================================================== -""" - Ce module sert pour charger les paramètres de configuration d'EFICAS -""" -# Modules Python -from InterfaceQT4 import configuration -import os - - -class CONFIG(configuration.configBase): - - #----------------------------------- - def __init__(self,appli,repIni): - #----------------------------------- - - self.labels_user=['catalogues','lang'] - self.labels_eficas=['lang','rep_cata','catalogues','utilParExtensions'] - self.afficheOptionnelVide=True - configuration.configBase.__init__(self,appli,repIni) - - -def make_config(appli,rep): - return CONFIG(appli,rep) - diff --git a/silvia/linguist b/silvia/linguist deleted file mode 100644 index f9abe742..00000000 --- a/silvia/linguist +++ /dev/null @@ -1,3 +0,0 @@ -#linguist-qt5 eficas_en.ts -lrelease DPD_en.ts -qm DPD_en.qm - diff --git a/silvia/prefs.py b/silvia/prefs.py deleted file mode 100644 index 48e983cf..00000000 --- a/silvia/prefs.py +++ /dev/null @@ -1,24 +0,0 @@ -# Copyright (C) 2007-2012 EDF R&D -# -# 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 -# -# Voici mon commentaire - -code="DPD" -import sys, os -if os.path.dirname(os.path.abspath(__file__)) not in sys.path : - sys.path.insert(0,os.path.dirname(os.path.abspath(__file__))) diff --git a/silvia/prefs_DPD.py b/silvia/prefs_DPD.py deleted file mode 100644 index dd21d300..00000000 --- a/silvia/prefs_DPD.py +++ /dev/null @@ -1,51 +0,0 @@ -# -*- coding: utf-8 -*- -# maConfiguration MANAGEMENT OF EDF VERSION -# ====================================================================== -# COPYRIGHT (C) 1991 - 2002 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM 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 -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# -# -# ====================================================================== - -import os,sys -# repIni sert a localiser le fichier editeur.ini -# Obligatoire -repIni=os.path.dirname(os.path.abspath(__file__)) -INSTALLDIR=os.path.join(repIni,'..') -sys.path[:0]=[INSTALLDIR] - - -# lang indique la langue utilisee pour les chaines d'aide : fr ou ang -lang='ang' - -# Pour specifier quels logiciels utiliser pour quels suffixes -utilParExtensions = { 'xml' : 'gedit' } - - -# -#typeDeCata='XML' -catalogues=( - ('DPD','DPD input',os.path.join(repIni,'cata_DPD.py'),'python','python'), - -) -simpleClic=True -#closeFrameRechercheCommande=True -boutonDsMenuBar=False -#closeArbre=True -afficheListesPliees=False -afficheCommandesPliees = False -dumpXSD=True -afficheIhm=False -translatorFichier = os.path.join(repIni,'DPD') diff --git a/silvia/qtEficasDPD.py b/silvia/qtEficasDPD.py deleted file mode 100755 index 49a3f538..00000000 --- a/silvia/qtEficasDPD.py +++ /dev/null @@ -1,36 +0,0 @@ -#!/usr/bin/env python -# -*- coding: utf-8 -*- -# Copyright (C) 2007-2013 EDF R&D -# -# 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 -# -""" - Ce module sert a lancer EFICAS configure pour MAP -""" -# Modules Python -# Modules Eficas -import prefs -name='prefs_'+prefs.code -__import__(name) - -import sys -import os -sys.path.append(os.path.join(os.path.abspath(os.path.dirname(__file__)),'..')) - -import prefs -from InterfaceQT4 import eficas_go -eficas_go.lanceEficas(code=prefs.code)